diff --git a/packages/@aws-cdk-testing/framework-integ/.gitignore b/packages/@aws-cdk-testing/framework-integ/.gitignore index c1e8301b569dd..684d8b82b34e1 100644 --- a/packages/@aws-cdk-testing/framework-integ/.gitignore +++ b/packages/@aws-cdk-testing/framework-integ/.gitignore @@ -10,6 +10,8 @@ coverage nyc.config.js !test/aws-synthetics/test/canaries/**/* +!test/aws-lambda/test/webfunction-handler/**/* +!test/aws-lambda/test/webfunction-staged-code/**/* !**/*.snapshot/**/asset.*/*.js diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorStack.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorStack.assets.json new file mode 100644 index 0000000000000..124afe0f4dc36 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorStack.assets.json @@ -0,0 +1,34 @@ +{ + "version": "54.0.0", + "files": { + "bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92": { + "displayName": "NetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider Code", + "source": { + "path": "asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region-fea3f0e7": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "8d7f9f098c99d12992c6bf1bd743dc32b9e5d3d6be1bab14091d7316da3b1911": { + "displayName": "NetworkConnectorStack Template", + "source": { + "path": "NetworkConnectorStack.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region-d02d73bc": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "8d7f9f098c99d12992c6bf1bd743dc32b9e5d3d6be1bab14091d7316da3b1911.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorStack.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorStack.metadata.json new file mode 100644 index 0000000000000..9160f875811c4 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorStack.metadata.json @@ -0,0 +1,170 @@ +{ + "/NetworkConnectorStack": [ + { + "type": "aws:cdk:acknowledged-rules", + "data": { + "CloudFormation-Validate::W3010": "Literal AZs in template are the result of accessing stack.availabilityZones, this is expected and safe" + }, + "trace": [ + " at Validations.acknowledge (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk-private/packages/aws-cdk-lib/core/lib/validation/validations.js:104:18)", + " at Stack._silenceLiteralAzWarning (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk-private/packages/aws-cdk-lib/core/lib/stack.js:1348:47)", + " at get availabilityZones (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk-private/packages/aws-cdk-lib/core/lib/stack.js:756:18)", + " at new Vpc (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk-private/packages/aws-cdk-lib/aws-ec2/lib/vpc.js:788:48)", + " at (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk-private/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js:44:13)", + " ...node internals..." + ] + } + ], + "/NetworkConnectorStack/Vpc": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/NetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider": [ + { + "type": "aws:cdk:is-custom-resource-handler-customResourceProvider", + "data": true + } + ], + "/NetworkConnectorStack/ConnectorSecurityGroup": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/NetworkConnectorStack/Connector": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/NetworkConnectorStack/ConnectorArn": [ + { + "type": "aws:cdk:logicalId", + "data": "ConnectorArn" + } + ], + "/NetworkConnectorStack/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/NetworkConnectorStack/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ], + "/NetworkConnectorStack/Vpc/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "Vpc8378EB38" + } + ], + "/NetworkConnectorStack/Vpc/isolatedSubnet1": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/NetworkConnectorStack/Vpc/isolatedSubnet2": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/NetworkConnectorStack/Vpc/RestrictDefaultSecurityGroupCustomResource": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/NetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0" + } + ], + "/NetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E" + } + ], + "/NetworkConnectorStack/ConnectorSecurityGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ConnectorSecurityGroup5AD7DC86" + } + ], + "/NetworkConnectorStack/Connector/OperatorRole": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/NetworkConnectorStack/Connector/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ConnectorC537A2FB" + } + ], + "/NetworkConnectorStack/Vpc/isolatedSubnet1/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcisolatedSubnet1SubnetE62B1B9B" + } + ], + "/NetworkConnectorStack/Vpc/isolatedSubnet1/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcisolatedSubnet1RouteTableE442650B" + } + ], + "/NetworkConnectorStack/Vpc/isolatedSubnet1/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcisolatedSubnet1RouteTableAssociationD259E31A" + } + ], + "/NetworkConnectorStack/Vpc/isolatedSubnet2/Subnet": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcisolatedSubnet2Subnet39217055" + } + ], + "/NetworkConnectorStack/Vpc/isolatedSubnet2/RouteTable": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcisolatedSubnet2RouteTable334F9764" + } + ], + "/NetworkConnectorStack/Vpc/isolatedSubnet2/RouteTableAssociation": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcisolatedSubnet2RouteTableAssociation25A4716F" + } + ], + "/NetworkConnectorStack/Vpc/RestrictDefaultSecurityGroupCustomResource/Default": [ + { + "type": "aws:cdk:logicalId", + "data": "VpcRestrictDefaultSecurityGroupCustomResourceC73DA2BE" + } + ], + "/NetworkConnectorStack/Connector/OperatorRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "ConnectorOperatorRoleC4EE1CDE" + } + ] +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorStack.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorStack.template.json new file mode 100644 index 0000000000000..7c67582eff3f1 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorStack.template.json @@ -0,0 +1,375 @@ +{ + "Resources": { + "Vpc8378EB38": { + "Type": "AWS::EC2::VPC", + "Properties": { + "CidrBlock": "10.0.0.0/16", + "EnableDnsHostnames": true, + "EnableDnsSupport": true, + "InstanceTenancy": "default", + "Tags": [ + { + "Key": "Name", + "Value": "NetworkConnectorStack/Vpc" + } + ] + } + }, + "VpcisolatedSubnet1SubnetE62B1B9B": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 0, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.0.0/17", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "isolated" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Isolated" + }, + { + "Key": "Name", + "Value": "NetworkConnectorStack/Vpc/isolatedSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcisolatedSubnet1RouteTableE442650B": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "NetworkConnectorStack/Vpc/isolatedSubnet1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcisolatedSubnet1RouteTableAssociationD259E31A": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcisolatedSubnet1RouteTableE442650B" + }, + "SubnetId": { + "Ref": "VpcisolatedSubnet1SubnetE62B1B9B" + } + } + }, + "VpcisolatedSubnet2Subnet39217055": { + "Type": "AWS::EC2::Subnet", + "Properties": { + "AvailabilityZone": { + "Fn::Select": [ + 1, + { + "Fn::GetAZs": "" + } + ] + }, + "CidrBlock": "10.0.128.0/17", + "MapPublicIpOnLaunch": false, + "Tags": [ + { + "Key": "aws-cdk:subnet-name", + "Value": "isolated" + }, + { + "Key": "aws-cdk:subnet-type", + "Value": "Isolated" + }, + { + "Key": "Name", + "Value": "NetworkConnectorStack/Vpc/isolatedSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcisolatedSubnet2RouteTable334F9764": { + "Type": "AWS::EC2::RouteTable", + "Properties": { + "Tags": [ + { + "Key": "Name", + "Value": "NetworkConnectorStack/Vpc/isolatedSubnet2" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "VpcisolatedSubnet2RouteTableAssociation25A4716F": { + "Type": "AWS::EC2::SubnetRouteTableAssociation", + "Properties": { + "RouteTableId": { + "Ref": "VpcisolatedSubnet2RouteTable334F9764" + }, + "SubnetId": { + "Ref": "VpcisolatedSubnet2Subnet39217055" + } + } + }, + "VpcRestrictDefaultSecurityGroupCustomResourceC73DA2BE": { + "Type": "Custom::VpcRestrictDefaultSG", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E", + "Arn" + ] + }, + "DefaultSecurityGroupId": { + "Fn::GetAtt": [ + "Vpc8378EB38", + "DefaultSecurityGroup" + ] + }, + "Account": { + "Ref": "AWS::AccountId" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Version": "2012-10-17", + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ] + }, + "ManagedPolicyArns": [ + { + "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + } + ], + "Policies": [ + { + "PolicyName": "Inline", + "PolicyDocument": { + "Version": "2012-10-17", + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "ec2:AuthorizeSecurityGroupIngress", + "ec2:AuthorizeSecurityGroupEgress", + "ec2:RevokeSecurityGroupIngress", + "ec2:RevokeSecurityGroupEgress" + ], + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":ec2:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":security-group/", + { + "Fn::GetAtt": [ + "Vpc8378EB38", + "DefaultSecurityGroup" + ] + } + ] + ] + } + ] + } + ] + } + } + ] + } + }, + "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92.zip" + }, + "Timeout": 900, + "MemorySize": 128, + "Handler": "__entrypoint__.handler", + "Role": { + "Fn::GetAtt": [ + "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0", + "Arn" + ] + }, + "Runtime": "nodejs24.x", + "Description": "Lambda function for removing all inbound/outbound rules from the VPC default security group" + }, + "DependsOn": [ + "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0" + ] + }, + "ConnectorSecurityGroup5AD7DC86": { + "Type": "AWS::EC2::SecurityGroup", + "Properties": { + "GroupDescription": "NetworkConnectorStack/ConnectorSecurityGroup", + "SecurityGroupEgress": [ + { + "CidrIp": "0.0.0.0/0", + "Description": "Allow all outbound traffic by default", + "IpProtocol": "-1" + } + ], + "VpcId": { + "Ref": "Vpc8378EB38" + } + } + }, + "ConnectorOperatorRoleC4EE1CDE": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/AWSLambdaNetworkConnectorOperatorPolicy" + ] + ] + } + ] + } + }, + "ConnectorC537A2FB": { + "Type": "AWS::Lambda::NetworkConnector", + "Properties": { + "Configuration": { + "VpcEgressConfiguration": { + "AssociatedComputeResourceTypes": [ + "MicroVm" + ], + "NetworkProtocol": "IPv4", + "SecurityGroupIds": [ + { + "Fn::GetAtt": [ + "ConnectorSecurityGroup5AD7DC86", + "GroupId" + ] + } + ], + "SubnetIds": [ + { + "Ref": "VpcisolatedSubnet1SubnetE62B1B9B" + }, + { + "Ref": "VpcisolatedSubnet2Subnet39217055" + } + ] + } + }, + "OperatorRole": { + "Fn::GetAtt": [ + "ConnectorOperatorRoleC4EE1CDE", + "Arn" + ] + } + } + } + }, + "Outputs": { + "ConnectorArn": { + "Value": { + "Fn::GetAtt": [ + "ConnectorC537A2FB", + "Arn" + ] + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorTestDefaultTestDeployAssert76691D30.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorTestDefaultTestDeployAssert76691D30.assets.json new file mode 100644 index 0000000000000..6728be50b6c0c --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorTestDefaultTestDeployAssert76691D30.assets.json @@ -0,0 +1,20 @@ +{ + "version": "54.0.0", + "files": { + "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": { + "displayName": "NetworkConnectorTestDefaultTestDeployAssert76691D30 Template", + "source": { + "path": "NetworkConnectorTestDefaultTestDeployAssert76691D30.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region-d8d86b35": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorTestDefaultTestDeployAssert76691D30.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorTestDefaultTestDeployAssert76691D30.metadata.json new file mode 100644 index 0000000000000..ec3765614d764 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorTestDefaultTestDeployAssert76691D30.metadata.json @@ -0,0 +1,14 @@ +{ + "/NetworkConnectorTest/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/NetworkConnectorTest/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ] +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorTestDefaultTestDeployAssert76691D30.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorTestDefaultTestDeployAssert76691D30.template.json new file mode 100644 index 0000000000000..ad9d0fb73d1dd --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/NetworkConnectorTestDefaultTestDeployAssert76691D30.template.json @@ -0,0 +1,36 @@ +{ + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/__entrypoint__.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/__entrypoint__.js new file mode 100644 index 0000000000000..3fb51ba2a51e2 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/__entrypoint__.js @@ -0,0 +1,187 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || (function () { + var ownKeys = function(o) { + ownKeys = Object.getOwnPropertyNames || function (o) { + var ar = []; + for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; + return ar; + }; + return ownKeys(o); + }; + return function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); + __setModuleDefault(result, mod); + return result; + }; +})(); +Object.defineProperty(exports, "__esModule", { value: true }); +exports.external = void 0; +exports.handler = handler; +exports.withRetries = withRetries; +const https = __importStar(require("https")); +const url = __importStar(require("url")); +// for unit tests +exports.external = { + sendHttpRequest: defaultSendHttpRequest, + log: defaultLog, + includeStackTraces: true, + userHandlerIndex: './index', +}; +const CREATE_FAILED_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::CREATE_FAILED'; +const MISSING_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID'; +async function handler(event, context) { + const sanitizedEvent = { ...event, ResponseURL: '...' }; + exports.external.log(JSON.stringify(sanitizedEvent, undefined, 2)); + // ignore DELETE event when the physical resource ID is the marker that + // indicates that this DELETE is a subsequent DELETE to a failed CREATE + // operation. + if (event.RequestType === 'Delete' && event.PhysicalResourceId === CREATE_FAILED_PHYSICAL_ID_MARKER) { + exports.external.log('ignoring DELETE event caused by a failed CREATE event'); + await submitResponse('SUCCESS', event); + return; + } + try { + // invoke the user handler. this is intentionally inside the try-catch to + // ensure that if there is an error it's reported as a failure to + // cloudformation (otherwise cfn waits). + // eslint-disable-next-line @typescript-eslint/no-require-imports + const userHandler = require(exports.external.userHandlerIndex).handler; + const result = await userHandler(sanitizedEvent, context); + // validate user response and create the combined event + const responseEvent = renderResponse(event, result); + // submit to cfn as success + await submitResponse('SUCCESS', responseEvent); + } + catch (e) { + const resp = { + ...event, + Reason: exports.external.includeStackTraces ? e.stack : e.message, + }; + if (!resp.PhysicalResourceId) { + // special case: if CREATE fails, which usually implies, we usually don't + // have a physical resource id. in this case, the subsequent DELETE + // operation does not have any meaning, and will likely fail as well. to + // address this, we use a marker so the provider framework can simply + // ignore the subsequent DELETE. + if (event.RequestType === 'Create') { + exports.external.log('CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored'); + resp.PhysicalResourceId = CREATE_FAILED_PHYSICAL_ID_MARKER; + } + else { + // otherwise, if PhysicalResourceId is not specified, something is + // terribly wrong because all other events should have an ID. + exports.external.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(event)}`); + } + } + // this is an actual error, fail the activity altogether and exist. + await submitResponse('FAILED', resp); + } +} +function renderResponse(cfnRequest, handlerResponse = {}) { + // if physical ID is not returned, we have some defaults for you based + // on the request type. + const physicalResourceId = handlerResponse.PhysicalResourceId ?? cfnRequest.PhysicalResourceId ?? cfnRequest.RequestId; + // if we are in DELETE and physical ID was changed, it's an error. + if (cfnRequest.RequestType === 'Delete' && physicalResourceId !== cfnRequest.PhysicalResourceId) { + throw new Error(`DELETE: cannot change the physical resource ID from "${cfnRequest.PhysicalResourceId}" to "${handlerResponse.PhysicalResourceId}" during deletion`); + } + // merge request event and result event (result prevails). + return { + ...cfnRequest, + ...handlerResponse, + PhysicalResourceId: physicalResourceId, + }; +} +async function submitResponse(status, event) { + const json = { + Status: status, + Reason: event.Reason ?? status, + StackId: event.StackId, + RequestId: event.RequestId, + PhysicalResourceId: event.PhysicalResourceId || MISSING_PHYSICAL_ID_MARKER, + LogicalResourceId: event.LogicalResourceId, + NoEcho: event.NoEcho, + Data: event.Data, + }; + const parsedUrl = url.parse(event.ResponseURL); + const loggingSafeUrl = `${parsedUrl.protocol}//${parsedUrl.hostname}/${parsedUrl.pathname}?***`; + exports.external.log('submit response to cloudformation', loggingSafeUrl, json); + const responseBody = JSON.stringify(json); + const req = { + hostname: parsedUrl.hostname, + path: parsedUrl.path, + method: 'PUT', + headers: { + 'content-type': '', + 'content-length': Buffer.byteLength(responseBody, 'utf8'), + }, + }; + const retryOptions = { + attempts: 5, + sleep: 1000, + }; + await withRetries(retryOptions, exports.external.sendHttpRequest)(req, responseBody); +} +async function defaultSendHttpRequest(options, requestBody) { + return new Promise((resolve, reject) => { + try { + const request = https.request(options, (response) => { + response.resume(); // Consume the response but don't care about it + if (!response.statusCode || response.statusCode >= 400) { + reject(new Error(`Unsuccessful HTTP response: ${response.statusCode}`)); + } + else { + resolve(); + } + }); + request.on('error', reject); + request.write(requestBody); + request.end(); + } + catch (e) { + reject(e); + } + }); +} +function defaultLog(fmt, ...params) { + console.log(fmt, ...params); +} +function withRetries(options, fn) { + return async (...xs) => { + let attempts = options.attempts; + let ms = options.sleep; + while (true) { + try { + return await fn(...xs); + } + catch (e) { + if (attempts-- <= 0) { + throw e; + } + await sleep(Math.floor(Math.random() * ms)); + ms *= 2; + } + } + }; +} +async function sleep(ms) { + return new Promise((ok) => setTimeout(ok, ms)); +} diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/index.js new file mode 100644 index 0000000000000..013bcaffd8fe5 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/index.js @@ -0,0 +1 @@ +"use strict";var I=Object.create;var t=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;var G=(r,e)=>{for(var o in e)t(r,o,{get:e[o],enumerable:!0})},n=(r,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of P(e))!l.call(r,s)&&s!==o&&t(r,s,{get:()=>e[s],enumerable:!(i=y(e,s))||i.enumerable});return r};var R=(r,e,o)=>(o=r!=null?I(g(r)):{},n(e||!r||!r.__esModule?t(o,"default",{value:r,enumerable:!0}):o,r)),S=r=>n(t({},"__esModule",{value:!0}),r);var k={};G(k,{handler:()=>f});module.exports=S(k);var a=R(require("@aws-sdk/client-ec2")),u=new a.EC2({});function c(r,e){return{GroupId:r,IpPermissions:[{UserIdGroupPairs:[{GroupId:r,UserId:e}],IpProtocol:"-1"}]}}function d(r){return{GroupId:r,IpPermissions:[{IpRanges:[{CidrIp:"0.0.0.0/0"}],IpProtocol:"-1"}]}}async function f(r){let e=r.ResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.Account;switch(r.RequestType){case"Create":return p(e,o);case"Update":return h(r);case"Delete":return m(e,o)}}async function h(r){let e=r.OldResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.DefaultSecurityGroupId;e!==o&&(await m(e,r.ResourceProperties.Account),await p(o,r.ResourceProperties.Account))}async function p(r,e){try{await u.revokeSecurityGroupEgress(d(r))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}try{await u.revokeSecurityGroupIngress(c(r,e))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}}async function m(r,e){await u.authorizeSecurityGroupIngress(c(r,e)),await u.authorizeSecurityGroupEgress(d(r))}0&&(module.exports={handler}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/cdk.out new file mode 100644 index 0000000000000..433ef06634165 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/cdk.out @@ -0,0 +1 @@ +{"version":"54.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/integ.json new file mode 100644 index 0000000000000..61aa6cd3c94be --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/integ.json @@ -0,0 +1,15 @@ +{ + "version": "54.0.0", + "testCases": { + "NetworkConnectorTest/DefaultTest": { + "stacks": [ + "NetworkConnectorStack" + ], + "diffAssets": false, + "assertionStack": "NetworkConnectorTest/DefaultTest/DeployAssert", + "assertionStackName": "NetworkConnectorTestDefaultTestDeployAssert76691D30" + } + }, + "enableLookups": true, + "minimumCliVersion": "2.1131.0" +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/manifest.json new file mode 100644 index 0000000000000..d8e56696320e7 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/manifest.json @@ -0,0 +1,620 @@ +{ + "version": "54.0.0", + "artifacts": { + "NetworkConnectorStack.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "NetworkConnectorStack.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "NetworkConnectorStack": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "NetworkConnectorStack.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/8d7f9f098c99d12992c6bf1bd743dc32b9e5d3d6be1bab14091d7316da3b1911.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "NetworkConnectorStack.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "NetworkConnectorStack.assets" + ], + "additionalMetadataFile": "NetworkConnectorStack.metadata.json", + "displayName": "NetworkConnectorStack" + }, + "NetworkConnectorTestDefaultTestDeployAssert76691D30.assets": { + "type": "cdk:asset-manifest", + "properties": { + "file": "NetworkConnectorTestDefaultTestDeployAssert76691D30.assets.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "NetworkConnectorTestDefaultTestDeployAssert76691D30": { + "type": "aws:cloudformation:stack", + "environment": "aws://unknown-account/unknown-region", + "properties": { + "templateFile": "NetworkConnectorTestDefaultTestDeployAssert76691D30.template.json", + "terminationProtection": false, + "validateOnSynth": false, + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", + "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json", + "requiresBootstrapStackVersion": 6, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", + "additionalDependencies": [ + "NetworkConnectorTestDefaultTestDeployAssert76691D30.assets" + ], + "lookupRole": { + "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}", + "requiresBootstrapStackVersion": 8, + "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version" + } + }, + "dependencies": [ + "NetworkConnectorTestDefaultTestDeployAssert76691D30.assets" + ], + "additionalMetadataFile": "NetworkConnectorTestDefaultTestDeployAssert76691D30.metadata.json", + "displayName": "NetworkConnectorTest/DefaultTest/DeployAssert" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } + }, + "aws-cdk-lib/feature-flag-report": { + "type": "cdk:feature-flag-report", + "properties": { + "module": "aws-cdk-lib", + "flags": { + "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": { + "userValue": true, + "recommendedValue": true, + "explanation": "Pass signingProfileName to CfnSigningProfile" + }, + "@aws-cdk/core:newStyleStackSynthesis": { + "recommendedValue": true, + "explanation": "Switch to new stack synthesis method which enables CI/CD", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:stackRelativeExports": { + "recommendedValue": true, + "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": { + "userValue": true, + "recommendedValue": true, + "explanation": "Disable implicit openListener when custom security groups are provided" + }, + "@aws-cdk/aws-rds:lowercaseDbIdentifier": { + "recommendedValue": true, + "explanation": "Force lowercasing of RDS Cluster names in CDK", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": { + "recommendedValue": true, + "explanation": "Allow adding/removing multiple UsagePlanKeys independently", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-lambda:recognizeVersionProps": { + "recommendedValue": true, + "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-lambda:recognizeLayerVersion": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`." + }, + "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": { + "recommendedValue": true, + "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:checkSecretUsage": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations" + }, + "@aws-cdk/core:target-partitions": { + "recommendedValue": [ + "aws", + "aws-cn" + ], + "explanation": "What regions to include in lookup tables of environment agnostic stacks" + }, + "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": { + "userValue": true, + "recommendedValue": true, + "explanation": "ECS extensions will automatically add an `awslogs` driver if no logging is specified" + }, + "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names." + }, + "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": { + "userValue": true, + "recommendedValue": true, + "explanation": "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID." + }, + "@aws-cdk/aws-iam:minimizePolicies": { + "userValue": true, + "recommendedValue": true, + "explanation": "Minimize IAM policies by combining Statements" + }, + "@aws-cdk/core:validateSnapshotRemovalPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Error on snapshot removal policies on resources that do not support it." + }, + "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate key aliases that include the stack name" + }, + "@aws-cdk/aws-s3:createDefaultLoggingPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist." + }, + "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": { + "userValue": true, + "recommendedValue": true, + "explanation": "Restrict KMS key policy for encrypted Queues a bit more" + }, + "@aws-cdk/aws-apigateway:disableCloudWatchRole": { + "userValue": true, + "recommendedValue": true, + "explanation": "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment" + }, + "@aws-cdk/core:enablePartitionLiterals": { + "userValue": true, + "recommendedValue": true, + "explanation": "Make ARNs concrete if AWS partition is known" + }, + "@aws-cdk/aws-events:eventsTargetQueueSameAccount": { + "userValue": true, + "recommendedValue": true, + "explanation": "Event Rules may only push to encrypted SQS queues in the same account" + }, + "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": { + "userValue": true, + "recommendedValue": true, + "explanation": "Avoid setting the \"ECS\" deployment controller when adding a circuit breaker" + }, + "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in." + }, + "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use S3 Bucket Policy instead of ACLs for Server Access Logging" + }, + "@aws-cdk/aws-route53-patters:useCertificate": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use the official `Certificate` resource instead of `DnsValidatedCertificate`" + }, + "@aws-cdk/customresources:installLatestAwsSdkDefault": { + "userValue": false, + "recommendedValue": false, + "explanation": "Whether to install the latest SDK by default in AwsCustomResource" + }, + "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use unique resource name for Database Proxy" + }, + "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "Remove CloudWatch alarms from deployment group" + }, + "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Include authorizer configuration in the calculation of the API deployment logical ID." + }, + "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": { + "userValue": true, + "recommendedValue": true, + "explanation": "Define user data for a launch template by default when a machine image is provided." + }, + "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": { + "userValue": true, + "recommendedValue": true, + "explanation": "SecretTargetAttachments uses the ResourcePolicy of the attached Secret." + }, + "@aws-cdk/aws-redshift:columnId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Whether to use an ID to track Redshift column changes" + }, + "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable AmazonEMRServicePolicy_v2 managed policies" + }, + "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "Restrict access to the VPC default security group" + }, + "@aws-cdk/aws-apigateway:requestValidatorUniqueId": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate a unique id for each RequestValidator added to a method" + }, + "@aws-cdk/aws-kms:aliasNameRef": { + "userValue": true, + "recommendedValue": true, + "explanation": "KMS Alias name and keyArn will have implicit reference to KMS Key" + }, + "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition" + }, + "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": { + "userValue": true, + "recommendedValue": true, + "explanation": "Generate a launch template when creating an AutoScalingGroup" + }, + "@aws-cdk/core:includePrefixInUniqueNameGeneration": { + "userValue": true, + "recommendedValue": true, + "explanation": "Include the stack prefix in the stack name generation process" + }, + "@aws-cdk/aws-efs:denyAnonymousAccess": { + "userValue": true, + "recommendedValue": true, + "explanation": "EFS denies anonymous clients accesses" + }, + "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables support for Multi-AZ with Standby deployment for opensearch domains" + }, + "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default" + }, + "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet." + }, + "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change." + }, + "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id." + }, + "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials." + }, + "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the CodeCommit source action is using the default branch name 'main'." + }, + "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID." + }, + "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables Pipeline to set the default value for crossAccountKeys to false." + }, + "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "Enables Pipeline to set the default pipeline type to V2." + }, + "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only." + }, + "@aws-cdk/pipelines:reduceAssetRoleTrustScope": { + "recommendedValue": true, + "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-eks:nodegroupNameAttribute": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix." + }, + "@aws-cdk/aws-eks:useNativeOidcProvider": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider)." + }, + "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default volume type of the EBS volume will be GP3" + }, + "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, remove default deployment alarm settings" + }, + "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": { + "userValue": false, + "recommendedValue": false, + "explanation": "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default" + }, + "@aws-cdk/aws-s3:keepNotificationInImportedBucket": { + "userValue": false, + "recommendedValue": false, + "explanation": "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack." + }, + "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": { + "recommendedValue": true, + "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/core:explicitStackTags": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, stack tags need to be assigned explicitly on a Stack." + }, + "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration" + }, + "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas" + }, + "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together." + }, + "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn." + }, + "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`" + }, + "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values." + }, + "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications." + }, + "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN." + }, + "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2." + }, + "@aws-cdk/core:aspectStabilization": { + "recommendedValue": true, + "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource." + }, + "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere" + }, + "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the default behaviour of OIDC provider will reject unauthorized connections" + }, + "@aws-cdk/core:enableAdditionalMetadataCollection": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues." + }, + "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy": { + "userValue": false, + "recommendedValue": false, + "explanation": "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement" + }, + "@aws-cdk/aws-s3:setUniqueReplicationRoleName": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication." + }, + "@aws-cdk/pipelines:reduceStageRoleTrustScope": { + "recommendedValue": true, + "explanation": "Remove the root account principal from Stage addActions trust policy", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-events:requireEventBusPolicySid": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals." + }, + "@aws-cdk/core:aspectPrioritiesMutating": { + "userValue": true, + "recommendedValue": true, + "explanation": "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING." + }, + "@aws-cdk/aws-dynamodb:retainTableReplica": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, table replica will be default to the removal policy of source table unless specified otherwise." + }, + "@aws-cdk/cognito:logUserPoolClientSecretValue": { + "recommendedValue": false, + "explanation": "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs." + }, + "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": { + "recommendedValue": true, + "explanation": "When enabled, scopes down the trust policy for the cross-account action role", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter" + }, + "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": { + "userValue": true, + "recommendedValue": true, + "explanation": "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions." + }, + "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC." + }, + "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration": { + "recommendedValue": false, + "explanation": "When enabled, use resource IDs for VPC V2 migration" + }, + "@aws-cdk/aws-s3:publicAccessBlockedByDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined." + }, + "@aws-cdk/aws-lambda:useCdkManagedLogGroup": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, CDK creates and manages loggroup for the lambda function" + }, + "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, Network Load Balancer will be created with a security group by default." + }, + "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": { + "recommendedValue": true, + "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement" + }, + "@aws-cdk/aws-route53-patterns:useDistribution": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use the `Distribution` resource instead of `CloudFrontWebDistribution`" + }, + "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions" + }, + "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy": { + "userValue": true, + "recommendedValue": true, + "explanation": "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default" + }, + "@aws-cdk/core:automaticL1Traits": { + "recommendedValue": true, + "explanation": "Automatically use the default L1 traits for L1 constructs`", + "unconfiguredBehavesLike": { + "v2": true + } + }, + "@aws-cdk/aws-batch:defaultToAL2023": { + "userValue": true, + "recommendedValue": true, + "explanation": "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2" + }, + "@aws-cdk/aws-eks:defaultToAL2023": { + "recommendedValue": true, + "explanation": "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2" + }, + "@aws-cdk/core:annotationsInValidationReport": { + "recommendedValue": true, + "explanation": "Include construct annotations (warnings and errors) in the policy validation report" + }, + "@aws-cdk/core:defaultCrossStackReferences": { + "recommendedValue": "weak", + "explanation": "Controls whether cross-stack references are strong, weak, or both", + "unconfiguredBehavesLike": { + "v2": "strong" + } + }, + "@aws-cdk/core:validateAgainstDefaultRules": { + "recommendedValue": true, + "explanation": "Treat CloudFormation Validate findings as errors" + } + } + } + } + }, + "minimumCliVersion": "2.1131.0" +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/tree.json new file mode 100644 index 0000000000000..b84b383c02588 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/tree.json @@ -0,0 +1 @@ +{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"NetworkConnectorStack":{"id":"NetworkConnectorStack","path":"NetworkConnectorStack","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"Vpc":{"id":"Vpc","path":"NetworkConnectorStack/Vpc","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"Resource":{"id":"Resource","path":"NetworkConnectorStack/Vpc/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:logicalId":"Vpc8378EB38","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"NetworkConnectorStack/Vpc"}]}}},"isolatedSubnet1":{"id":"isolatedSubnet1","path":"NetworkConnectorStack/Vpc/isolatedSubnet1","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"Subnet":{"id":"Subnet","path":"NetworkConnectorStack/Vpc/isolatedSubnet1/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet1SubnetE62B1B9B","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.0.0/17","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"NetworkConnectorStack/Vpc/isolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"NetworkConnectorStack/Vpc/isolatedSubnet1/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}},"RouteTable":{"id":"RouteTable","path":"NetworkConnectorStack/Vpc/isolatedSubnet1/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet1RouteTableE442650B","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"NetworkConnectorStack/Vpc/isolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"NetworkConnectorStack/Vpc/isolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet1RouteTableAssociationD259E31A","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcisolatedSubnet1RouteTableE442650B"},"subnetId":{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"}}}}}},"isolatedSubnet2":{"id":"isolatedSubnet2","path":"NetworkConnectorStack/Vpc/isolatedSubnet2","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"Subnet":{"id":"Subnet","path":"NetworkConnectorStack/Vpc/isolatedSubnet2/Subnet","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet2Subnet39217055","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/17","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"NetworkConnectorStack/Vpc/isolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"NetworkConnectorStack/Vpc/isolatedSubnet2/Acl","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}},"RouteTable":{"id":"RouteTable","path":"NetworkConnectorStack/Vpc/isolatedSubnet2/RouteTable","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet2RouteTable334F9764","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"NetworkConnectorStack/Vpc/isolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"NetworkConnectorStack/Vpc/isolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet2RouteTableAssociation25A4716F","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcisolatedSubnet2RouteTable334F9764"},"subnetId":{"Ref":"VpcisolatedSubnet2Subnet39217055"}}}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"NetworkConnectorStack/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"Default":{"id":"Default","path":"NetworkConnectorStack/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"NetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"Staging":{"id":"Staging","path":"NetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}},"Role":{"id":"Role","path":"NetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}},"Handler":{"id":"Handler","path":"NetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}}}},"ConnectorSecurityGroup":{"id":"ConnectorSecurityGroup","path":"NetworkConnectorStack/ConnectorSecurityGroup","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"Resource":{"id":"Resource","path":"NetworkConnectorStack/ConnectorSecurityGroup/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:logicalId":"ConnectorSecurityGroup5AD7DC86","aws:cdk:cloudformation:props":{"groupDescription":"NetworkConnectorStack/ConnectorSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Connector":{"id":"Connector","path":"NetworkConnectorStack/Connector","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"OperatorRole":{"id":"OperatorRole","path":"NetworkConnectorStack/Connector/OperatorRole","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"Resource":{"id":"Resource","path":"NetworkConnectorStack/Connector/OperatorRole/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"ConnectorOperatorRoleC4EE1CDE","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AWSLambdaNetworkConnectorOperatorPolicy"]]}]}}}}},"Resource":{"id":"Resource","path":"NetworkConnectorStack/Connector/Resource","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::NetworkConnector","aws:cdk:cloudformation:logicalId":"ConnectorC537A2FB","aws:cdk:cloudformation:props":{"configuration":{"vpcEgressConfiguration":{"subnetIds":[{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"},{"Ref":"VpcisolatedSubnet2Subnet39217055"}],"securityGroupIds":[{"Fn::GetAtt":["ConnectorSecurityGroup5AD7DC86","GroupId"]}],"networkProtocol":"IPv4","associatedComputeResourceTypes":["MicroVm"]}},"operatorRole":{"Fn::GetAtt":["ConnectorOperatorRoleC4EE1CDE","Arn"]}}}}}},"ConnectorArn":{"id":"ConnectorArn","path":"NetworkConnectorStack/ConnectorArn","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}},"BootstrapVersion":{"id":"BootstrapVersion","path":"NetworkConnectorStack/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"NetworkConnectorStack/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}}}},"NetworkConnectorTest":{"id":"NetworkConnectorTest","path":"NetworkConnectorTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"NetworkConnectorTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"NetworkConnectorTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}},"DeployAssert":{"id":"DeployAssert","path":"NetworkConnectorTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"},"children":{"BootstrapVersion":{"id":"BootstrapVersion","path":"NetworkConnectorTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"NetworkConnectorTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.6.0"}}}}} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/validation-report.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/validation-report.json new file mode 100644 index 0000000000000..9a4c5d20a35af --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.js.snapshot/validation-report.json @@ -0,0 +1,28 @@ +{ + "version": "54.0.0", + "title": "Validation Report", + "pluginReports": [ + { + "pluginName": "CloudFormation Validate", + "pluginVersion": "1.8.0", + "conclusion": "success", + "violations": [ + { + "ruleName": "F0001", + "description": "Resources section must exist and be non-empty", + "severity": "warning", + "ruleMetadata": { + "category": "Structure" + }, + "violatingConstructs": [ + { + "constructPath": "NetworkConnectorTest/DefaultTest/DeployAssert", + "constructFqn": "constructs.Construct", + "libraryVersion": "10.6.0" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.ts new file mode 100644 index 0000000000000..f21327b0337d4 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.network-connector.ts @@ -0,0 +1,43 @@ +import * as cdk from 'aws-cdk-lib/core'; +import * as ec2 from 'aws-cdk-lib/aws-ec2'; +import * as integ from '@aws-cdk/integ-tests-alpha'; +import { + NetworkConnector, + NetworkConnectorComputeType, + NetworkConnectorConfiguration, +} from 'aws-cdk-lib/aws-lambda'; + +const app = new cdk.App({ analyticsReporting: false }); +const stack = new cdk.Stack(app, 'NetworkConnectorStack'); + +// Isolated subnets: the connector provisions ENIs into them, and the test needs no +// egress of its own — no NAT gateways or internet gateway to slow the stack down. +const vpc = new ec2.Vpc(stack, 'Vpc', { + maxAzs: 2, + natGateways: 0, + subnetConfiguration: [ + { name: 'isolated', subnetType: ec2.SubnetType.PRIVATE_ISOLATED }, + ], +}); + +const securityGroup = new ec2.SecurityGroup(stack, 'ConnectorSecurityGroup', { + vpc, + allowAllOutbound: true, +}); + +// MicroVm: integ.webfunction-network-connector deploys a WebFunction connector, so this is +// the only test that deploys the other compute type. +const connector = new NetworkConnector(stack, 'Connector', { + configuration: NetworkConnectorConfiguration.vpcEgress({ + computeType: NetworkConnectorComputeType.MICRO_VM, + vpc, + securityGroups: [securityGroup], + }), +}); + +new cdk.CfnOutput(stack, 'ConnectorArn', { value: connector.networkConnectorArn }); + +new integ.IntegTest(app, 'NetworkConnectorTest', { + testCases: [stack], + diffAssets: false, +}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsStack.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsStack.assets.json new file mode 100644 index 0000000000000..7c177335dedf1 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsStack.assets.json @@ -0,0 +1,76 @@ +{ + "version": "55.0.0", + "files": { + "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61": { + "displayName": "WebFunctionAllFieldsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider Code", + "source": { + "path": "asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region-094cbf39": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec": { + "displayName": "DeployCode/AwsCliLayer/Code", + "source": { + "path": "asset.98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip", + "packaging": "file" + }, + "destinations": { + "current_account-current_region-b4dd16f5": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0": { + "displayName": "Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code", + "source": { + "path": "asset.35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region-8e526f6a": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0": { + "displayName": "DeployCode/Asset1", + "source": { + "path": "asset.3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region-0a89c7eb": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "49419c20fdfc89f89773fd9af170b01ec559ed84998fa2ab4a345331eb239ab0": { + "displayName": "WebFunctionAllFieldsStack Template", + "source": { + "path": "WebFunctionAllFieldsStack.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region-9cb903cc": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "49419c20fdfc89f89773fd9af170b01ec559ed84998fa2ab4a345331eb239ab0.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsStack.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsStack.metadata.json new file mode 100644 index 0000000000000..ff729848bcb9e --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsStack.metadata.json @@ -0,0 +1,471 @@ +{ + "/WebFunctionAllFieldsStack": [ + { + "type": "aws:cdk:templateFile", + "data": "WebFunctionAllFieldsStack.template.json" + } + ], + "/WebFunctionAllFieldsStack/CodeBucketKey": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "removalPolicy": "destroy" + } + } + ], + "/WebFunctionAllFieldsStack/CodeBucket": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "versioned": true, + "encryption": "KMS", + "encryptionKey": "*", + "removalPolicy": "destroy", + "autoDeleteObjects": true + } + } + ], + "/WebFunctionAllFieldsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider": [ + { + "type": "aws:cdk:is-custom-resource-handler-customResourceProvider", + "data": true + } + ], + "/WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "architecture": "*", + "layers": [ + "*" + ], + "environment": "*", + "timeout": "*", + "role": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "vpc": "*", + "vpcSubnets": "*", + "securityGroups": "*", + "filesystem": "*", + "logGroup": "*", + "code": "*", + "handler": "*", + "runtime": "*" + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addEnvironment": [ + "*", + "*" + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addLayers": [ + "*" + ] + } + }, + { + "type": "aws:cdk:is-custom-resource-handler-singleton", + "data": true + }, + { + "type": "aws:cdk:is-custom-resource-handler-runtime-family", + "data": 2 + } + ], + "/WebFunctionAllFieldsStack/LogGroup": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "removalPolicy": "destroy" + } + } + ], + "/WebFunctionAllFieldsStack/CustomRole": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "assumedBy": { + "principalAccount": "*", + "assumeRoleAction": "*" + }, + "managedPolicies": [ + { + "managedPolicyArn": "*" + } + ] + } + } + ], + "/WebFunctionAllFieldsStack/EnvVarKey": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "removalPolicy": "destroy" + } + } + ], + "/WebFunctionAllFieldsStack/AllFields": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/WebFunctionAllFieldsStack/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/WebFunctionAllFieldsStack/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ], + "/WebFunctionAllFieldsStack/CodeBucketKey/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "CodeBucketKeyA1A5CA2B" + } + ], + "/WebFunctionAllFieldsStack/CodeBucket/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "CodeBucketFF4C7AD6" + }, + { + "type": "aws:cdk:analytics:mixin", + "data": { + "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects" + } + } + ], + "/WebFunctionAllFieldsStack/CodeBucket/Policy": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "bucket": "*" + } + } + ], + "/WebFunctionAllFieldsStack/CodeBucket/AutoDeleteObjectsCustomResource": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/WebFunctionAllFieldsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092" + } + ], + "/WebFunctionAllFieldsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F" + } + ], + "/WebFunctionAllFieldsStack/DeployCode/AwsCliLayer": [ + { + "type": "aws:cdk:analytics:construct", + "data": {} + } + ], + "/WebFunctionAllFieldsStack/DeployCode/CustomResourceHandler": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "uuid": "*", + "architecture": "*", + "layers": [ + "*" + ], + "environment": "*", + "lambdaPurpose": "*", + "timeout": "*", + "role": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "vpc": "*", + "vpcSubnets": "*", + "securityGroups": "*", + "filesystem": "*", + "logGroup": "*", + "code": "*", + "handler": "*", + "runtime": "*" + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addMetadata": [ + "*", + true + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addMetadata": [ + "*", + "*" + ] + } + } + ], + "/WebFunctionAllFieldsStack/DeployCode/CustomResource": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + } + ], + "/WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "assumedBy": { + "principalAccount": "*", + "assumeRoleAction": "*" + }, + "managedPolicies": [ + { + "managedPolicyArn": "*" + } + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addToPrincipalPolicy": [ + {} + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "attachInlinePolicy": [ + "*" + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "attachInlinePolicy": [ + "*" + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addToPrincipalPolicy": [ + {} + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addToPrincipalPolicy": [ + {} + ] + } + } + ], + "/WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536" + } + ], + "/WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/LogGroup": [ + { + "type": "aws:cdk:analytics:construct", + "data": { + "logGroupName": "*" + } + } + ], + "/WebFunctionAllFieldsStack/LogGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "LogGroupF5B46931" + } + ], + "/WebFunctionAllFieldsStack/CustomRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomRole6D8E6809" + } + ], + "/WebFunctionAllFieldsStack/EnvVarKey/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "EnvVarKey14620289" + } + ], + "/WebFunctionAllFieldsStack/AllFields/Function": [ + { + "type": "aws:cdk:logicalId", + "data": "AllFieldsFunctionCF5EDC3E" + } + ], + "/WebFunctionAllFieldsStack/AllFields/Revision": [ + { + "type": "aws:cdk:logicalId", + "data": "AllFieldsRevision510C45E9" + } + ], + "/WebFunctionAllFieldsStack/AllFields/Endpoint": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/WebFunctionAllFieldsStack/Exports/Output{\"Fn::GetAtt\":[\"AllFieldsEndpoint1B3E2E37\",\"DomainName\"]}": [ + { + "type": "aws:cdk:logicalId", + "data": "ExportsOutputFnGetAttAllFieldsEndpoint1B3E2E37DomainNameC46AE0C9" + } + ], + "/WebFunctionAllFieldsStack/CodeBucket/Policy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "CodeBucketPolicy637E7C14" + }, + { + "type": "aws:cdk:analytics:mixin", + "data": { + "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements" + } + } + ], + "/WebFunctionAllFieldsStack/CodeBucket/AutoDeleteObjectsCustomResource/Default": [ + { + "type": "aws:cdk:logicalId", + "data": "CodeBucketAutoDeleteObjectsCustomResourceA4EDF0CF" + } + ], + "/WebFunctionAllFieldsStack/DeployCode/AwsCliLayer/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "DeployCodeAwsCliLayerB38BC350" + } + ], + "/WebFunctionAllFieldsStack/DeployCode/Asset1/AssetBucket": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/WebFunctionAllFieldsStack/DeployCode/CustomResource/Default": [ + { + "type": "aws:cdk:logicalId", + "data": "DeployCodeCustomResource46A14DA0" + } + ], + "/WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265" + } + ], + "/WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/DefaultPolicy": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "attachToRole": [ + "*" + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "attachToRole": [ + "*" + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addStatements": [ + {} + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addStatements": [ + {} + ] + } + }, + { + "type": "aws:cdk:analytics:method", + "data": { + "addStatements": [ + {} + ] + } + } + ], + "/WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code/AssetBucket": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/LogGroup/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CLogGroup817B64E9" + } + ], + "/WebFunctionAllFieldsStack/AllFields/Endpoint/Default": [ + { + "type": "aws:cdk:logicalId", + "data": "AllFieldsEndpoint1B3E2E37" + } + ], + "/WebFunctionAllFieldsStack/DeployCode/AwsCliLayer/Code/AssetBucket": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + } + ], + "/WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/DefaultPolicy/Resource": [ + { + "type": "aws:cdk:logicalId", + "data": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF" + } + ] +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsStack.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsStack.template.json new file mode 100644 index 0000000000000..dbbde28750cab --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsStack.template.json @@ -0,0 +1,836 @@ +{ + "Resources": { + "CodeBucketKeyA1A5CA2B": { + "Type": "AWS::KMS::Key", + "Properties": { + "KeyPolicy": { + "Statement": [ + { + "Action": "kms:*", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + }, + "Resource": "*" + }, + { + "Action": "kms:Decrypt", + "Condition": { + "StringEquals": { + "aws:SourceAccount": { + "Ref": "AWS::AccountId" + } + }, + "ArnLike": { + "aws:SourceArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":lambda:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":web-function/*/revision/*" + ] + ] + } + } + }, + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + }, + "Resource": "*" + } + ], + "Version": "2012-10-17" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "CodeBucketFF4C7AD6": { + "Type": "AWS::S3::Bucket", + "Properties": { + "BucketEncryption": { + "ServerSideEncryptionConfiguration": [ + { + "ServerSideEncryptionByDefault": { + "KMSMasterKeyID": { + "Fn::GetAtt": [ + "CodeBucketKeyA1A5CA2B", + "Arn" + ] + }, + "SSEAlgorithm": "aws:kms" + } + } + ] + }, + "Tags": [ + { + "Key": "aws-cdk:auto-delete-objects", + "Value": "true" + }, + { + "Key": "aws-cdk:cr-owned:db9b53a0", + "Value": "true" + } + ], + "VersioningConfiguration": { + "Status": "Enabled" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "CodeBucketPolicy637E7C14": { + "Type": "AWS::S3::BucketPolicy", + "Properties": { + "Bucket": { + "Ref": "CodeBucketFF4C7AD6" + }, + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "s3:DeleteObject*", + "s3:GetBucket*", + "s3:List*", + "s3:PutBucketPolicy" + ], + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::GetAtt": [ + "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092", + "Arn" + ] + } + }, + "Resource": [ + { + "Fn::GetAtt": [ + "CodeBucketFF4C7AD6", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "CodeBucketFF4C7AD6", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + }, + { + "Action": [ + "s3:GetObject", + "s3:GetObjectVersion" + ], + "Condition": { + "StringEquals": { + "aws:SourceAccount": { + "Ref": "AWS::AccountId" + } + }, + "ArnLike": { + "aws:SourceArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":lambda:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":web-function/WebFunctionAllFidsStackAllFields390CE3C2/revision/*" + ] + ] + } + } + }, + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + }, + "Resource": { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "CodeBucketFF4C7AD6", + "Arn" + ] + }, + "/", + { + "Fn::Select": [ + 0, + { + "Fn::GetAtt": [ + "DeployCodeCustomResource46A14DA0", + "SourceObjectKeys" + ] + } + ] + } + ] + ] + } + } + ], + "Version": "2012-10-17" + } + } + }, + "CodeBucketAutoDeleteObjectsCustomResourceA4EDF0CF": { + "Type": "Custom::S3AutoDeleteObjects", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F", + "Arn" + ] + }, + "BucketName": { + "Ref": "CodeBucketFF4C7AD6" + } + }, + "DependsOn": [ + "CodeBucketPolicy637E7C14" + ], + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Version": "2012-10-17", + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ] + }, + "ManagedPolicyArns": [ + { + "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + } + ] + } + }, + "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip" + }, + "Timeout": 900, + "MemorySize": 128, + "Handler": "index.handler", + "Role": { + "Fn::GetAtt": [ + "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092", + "Arn" + ] + }, + "Runtime": "nodejs24.x", + "Description": { + "Fn::Join": [ + "", + [ + "Lambda function for auto-deleting objects in ", + { + "Ref": "CodeBucketFF4C7AD6" + }, + " S3 bucket." + ] + ] + } + }, + "DependsOn": [ + "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092" + ] + }, + "DeployCodeAwsCliLayerB38BC350": { + "Type": "AWS::Lambda::LayerVersion", + "Properties": { + "Content": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip" + }, + "Description": "/opt/awscli/aws" + } + }, + "DeployCodeCustomResource46A14DA0": { + "Type": "Custom::CDKBucketDeployment", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536", + "Arn" + ] + }, + "SourceBucketNames": [ + { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + } + ], + "SourceObjectKeys": [ + "3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0.zip" + ], + "DestinationBucketName": { + "Ref": "CodeBucketFF4C7AD6" + }, + "WaitForDistributionInvalidation": true, + "Extract": false, + "Prune": true, + "OutputObjectKeys": true, + "OutputObjectVersionIds": true + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF": { + "Type": "AWS::IAM::Policy", + "Properties": { + "PolicyDocument": { + "Statement": [ + { + "Action": [ + "s3:GetBucket*", + "s3:GetObject*", + "s3:List*" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":s3:::", + { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "/*" + ] + ] + }, + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":s3:::", + { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + } + ] + ] + } + ] + }, + { + "Action": [ + "s3:Abort*", + "s3:DeleteObject*", + "s3:GetBucket*", + "s3:GetObject*", + "s3:List*", + "s3:PutObject", + "s3:PutObjectLegalHold", + "s3:PutObjectRetention", + "s3:PutObjectTagging", + "s3:PutObjectVersionTagging" + ], + "Effect": "Allow", + "Resource": [ + { + "Fn::GetAtt": [ + "CodeBucketFF4C7AD6", + "Arn" + ] + }, + { + "Fn::Join": [ + "", + [ + { + "Fn::GetAtt": [ + "CodeBucketFF4C7AD6", + "Arn" + ] + }, + "/*" + ] + ] + } + ] + }, + { + "Action": [ + "kms:Decrypt", + "kms:DescribeKey", + "kms:Encrypt", + "kms:GenerateDataKey*", + "kms:ReEncrypt*" + ], + "Effect": "Allow", + "Resource": { + "Fn::GetAtt": [ + "CodeBucketKeyA1A5CA2B", + "Arn" + ] + } + } + ], + "Version": "2012-10-17" + }, + "PolicyName": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF", + "Roles": [ + { + "Ref": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265" + } + ] + } + }, + "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Architectures": [ + "arm64" + ], + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0.zip" + }, + "Environment": { + "Variables": { + "AWS_CA_BUNDLE": "/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem" + } + }, + "Handler": "index.handler", + "Layers": [ + { + "Ref": "DeployCodeAwsCliLayerB38BC350" + } + ], + "MemorySize": 1024, + "Role": { + "Fn::GetAtt": [ + "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265", + "Arn" + ] + }, + "Runtime": "python3.13", + "Timeout": 900 + }, + "DependsOn": [ + "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF", + "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265" + ] + }, + "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CLogGroup817B64E9": { + "Type": "AWS::Logs::LogGroup", + "Properties": { + "LogGroupName": { + "Fn::Join": [ + "", + [ + "/aws/lambda/", + { + "Ref": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536" + } + ] + ] + }, + "RetentionInDays": 731 + }, + "UpdateReplacePolicy": "Retain", + "DeletionPolicy": "Retain" + }, + "LogGroupF5B46931": { + "Type": "AWS::Logs::LogGroup", + "Properties": { + "RetentionInDays": 731 + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "CustomRole6D8E6809": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ], + "Version": "2012-10-17" + }, + "ManagedPolicyArns": [ + { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + ] + ] + } + ] + } + }, + "EnvVarKey14620289": { + "Type": "AWS::KMS::Key", + "Properties": { + "KeyPolicy": { + "Statement": [ + { + "Action": "kms:*", + "Effect": "Allow", + "Principal": { + "AWS": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":iam::", + { + "Ref": "AWS::AccountId" + }, + ":root" + ] + ] + } + }, + "Resource": "*" + }, + { + "Action": [ + "kms:Decrypt", + "kms:DescribeKey", + "kms:GenerateDataKey" + ], + "Condition": { + "StringEquals": { + "aws:SourceAccount": { + "Ref": "AWS::AccountId" + } + }, + "ArnLike": { + "aws:SourceArn": { + "Fn::Join": [ + "", + [ + "arn:", + { + "Ref": "AWS::Partition" + }, + ":lambda:", + { + "Ref": "AWS::Region" + }, + ":", + { + "Ref": "AWS::AccountId" + }, + ":web-function/*/revision/*" + ] + ] + } + } + }, + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + }, + "Resource": "*" + } + ], + "Version": "2012-10-17" + } + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "AllFieldsFunctionCF5EDC3E": { + "Type": "AWS::Lambda::WebFunction", + "Properties": { + "FunctionName": "WebFunctionAllFidsStackAllFields390CE3C2", + "Tags": [ + { + "Key": "Environment", + "Value": "integ-test" + }, + { + "Key": "Team", + "Value": "cdk" + } + ] + }, + "DependsOn": [ + "CodeBucketPolicy637E7C14" + ] + }, + "AllFieldsRevision510C45E9": { + "Type": "AWS::Lambda::WebFunctionRevision", + "Properties": { + "BuildConfig": { + "CodeConfig": { + "S3Object": { + "Bucket": { + "Ref": "CodeBucketFF4C7AD6" + }, + "Key": { + "Fn::Select": [ + 0, + { + "Fn::GetAtt": [ + "DeployCodeCustomResource46A14DA0", + "SourceObjectKeys" + ] + } + ] + }, + "VersionId": { + "Fn::Select": [ + 0, + { + "Fn::GetAtt": [ + "DeployCodeCustomResource46A14DA0", + "SourceObjectVersionIds" + ] + } + ] + } + } + }, + "RuntimeConfig": { + "Runtime": "nodejs24.x" + } + }, + "Description": "Integration test with all fields", + "FunctionName": { + "Ref": "AllFieldsFunctionCF5EDC3E" + }, + "KmsKeyArn": { + "Fn::GetAtt": [ + "EnvVarKey14620289", + "Arn" + ] + }, + "ServiceConfig": { + "EnvironmentVariables": { + "MY_VAR": "my-value" + }, + "ExecutionRoleArn": { + "Fn::GetAtt": [ + "CustomRole6D8E6809", + "Arn" + ] + }, + "MaxConcurrencyPerEnvironment": 32, + "TelemetryConfig": { + "LoggingConfig": { + "ApplicationLogLevel": "INFO", + "LogGroup": { + "Ref": "LogGroupF5B46931" + }, + "SystemLogLevel": "WARN" + } + }, + "TimeoutSeconds": 120 + } + }, + "DependsOn": [ + "AllFieldsFunctionCF5EDC3E", + "CodeBucketPolicy637E7C14" + ] + }, + "AllFieldsEndpoint1B3E2E37": { + "Type": "AWS::Lambda::WebFunctionEndpoint", + "Properties": { + "AuthType": "IamAuth", + "Description": "Integration test endpoint", + "EndpointName": "live", + "EndpointType": "HomeRegion", + "FunctionName": { + "Fn::GetAtt": [ + "AllFieldsFunctionCF5EDC3E", + "FunctionArn" + ] + }, + "RevisionWeights": [ + { + "RevisionId": { + "Fn::GetAtt": [ + "AllFieldsRevision510C45E9", + "RevisionId" + ] + }, + "Weight": 100 + } + ], + "ScalingConfig": { + "MaxEnvironments": 10 + }, + "ThrottleConfig": { + "RateLimit": 100 + } + }, + "DependsOn": [ + "AllFieldsFunctionCF5EDC3E", + "AllFieldsRevision510C45E9", + "CodeBucketPolicy637E7C14" + ] + } + }, + "Outputs": { + "ExportsOutputFnGetAttAllFieldsEndpoint1B3E2E37DomainNameC46AE0C9": { + "Value": { + "Fn::GetAtt": [ + "AllFieldsEndpoint1B3E2E37", + "DomainName" + ] + }, + "Export": { + "Name": "WebFunctionAllFieldsStack:ExportsOutputFnGetAttAllFieldsEndpoint1B3E2E37DomainNameC46AE0C9" + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.assets.json new file mode 100644 index 0000000000000..6bcac8ce24840 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.assets.json @@ -0,0 +1,33 @@ +{ + "version": "55.0.0", + "files": { + "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57": { + "source": { + "path": "asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region-d3646850": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, + "3e407a47e4a482e117957fdaa6d61da90d4c562aed01ce6e72d0a495ebf36a8b": { + "displayName": "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB Template", + "source": { + "path": "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.template.json", + "packaging": "file" + }, + "destinations": { + "current_account-current_region-c7a30d35": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "3e407a47e4a482e117957fdaa6d61da90d4c562aed01ce6e72d0a495ebf36a8b.json", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + } + }, + "dockerImages": {} +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.metadata.json new file mode 100644 index 0000000000000..e42d3e3a72373 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.metadata.json @@ -0,0 +1,76 @@ +{ + "/WebFunctionAllFieldsTest/DefaultTest/DeployAssert": [ + { + "type": "aws:cdk:warning", + "data": "No cross-stack-reference strength configured, defaulting to \"strong\". We recommend you set feature flag \"@aws-cdk/core:defaultCrossStackReferences\" to \"both\", then deploy everywhere, then set it to \"weak\". Alternatively, set it to \"strong\" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength) [ack: @aws-cdk/core:crossStackReferencesDefaultStrong]", + "trace": [ + "Annotations.addMessage (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:244:29)", + "Annotations.addWarningV2 (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:113:18)", + "resolveValue (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:215:54)", + "resolveReferencesInElements (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:139:30)", + "resolveReferences (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:124:5)", + "prepareApp (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/prepare-app.js:35:36)", + "synthesize (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/synthesis.js:72:36)", + "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/stage.js:230:96)", + "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:231:27)", + "process. (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:178:51)", + "Object.onceWrapper (node:events:634:26)", + "process.emit (node:events:519:28)" + ] + }, + { + "type": "aws:cdk:templateFile", + "data": "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.template.json" + } + ], + "/WebFunctionAllFieldsTest/DefaultTest/DeployAssert/BootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "BootstrapVersion" + } + ], + "/WebFunctionAllFieldsTest/DefaultTest/DeployAssert/CheckBootstrapVersion": [ + { + "type": "aws:cdk:logicalId", + "data": "CheckBootstrapVersion" + } + ], + "/WebFunctionAllFieldsTest/DefaultTest/DeployAssert/HttpApiCallaece1707756e3a03681d8f07e62646ee/Default": [ + { + "type": "aws:cdk:analytics:construct", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + }, + { + "type": "aws:cdk:analytics:method", + "data": "*" + } + ], + "/WebFunctionAllFieldsTest/DefaultTest/DeployAssert/HttpApiCallaece1707756e3a03681d8f07e62646ee/AssertionResults": [ + { + "type": "aws:cdk:logicalId", + "data": "AssertionResultsHttpApiCallaece1707756e3a03681d8f07e62646ee" + } + ], + "/WebFunctionAllFieldsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role": [ + { + "type": "aws:cdk:logicalId", + "data": "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73" + } + ], + "/WebFunctionAllFieldsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler": [ + { + "type": "aws:cdk:logicalId", + "data": "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F" + } + ], + "/WebFunctionAllFieldsTest/DefaultTest/DeployAssert/HttpApiCallaece1707756e3a03681d8f07e62646ee/Default/Default": [ + { + "type": "aws:cdk:logicalId", + "data": "HttpApiCallaece1707756e3a03681d8f07e62646ee" + } + ] +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.template.json new file mode 100644 index 0000000000000..0715201792744 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.template.json @@ -0,0 +1,124 @@ +{ + "Resources": { + "HttpApiCallaece1707756e3a03681d8f07e62646ee": { + "Type": "Custom::DeployAssert@HttpCall", + "Properties": { + "ServiceToken": { + "Fn::GetAtt": [ + "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F", + "Arn" + ] + }, + "parameters": { + "url": { + "Fn::Join": [ + "", + [ + "https://", + { + "Fn::ImportValue": "WebFunctionAllFieldsStack:ExportsOutputFnGetAttAllFieldsEndpoint1B3E2E37DomainNameC46AE0C9" + }, + "/" + ] + ] + } + }, + "expected": "{\"$ObjectLike\":{\"status\":403}}", + "flattenResponse": "false", + "salt": "1793224786419" + }, + "UpdateReplacePolicy": "Delete", + "DeletionPolicy": "Delete" + }, + "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73": { + "Type": "AWS::IAM::Role", + "Properties": { + "AssumeRolePolicyDocument": { + "Version": "2012-10-17", + "Statement": [ + { + "Action": "sts:AssumeRole", + "Effect": "Allow", + "Principal": { + "Service": "lambda.amazonaws.com" + } + } + ] + }, + "ManagedPolicyArns": [ + { + "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" + } + ] + } + }, + "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F": { + "Type": "AWS::Lambda::Function", + "Properties": { + "Runtime": "nodejs24.x", + "Code": { + "S3Bucket": { + "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" + }, + "S3Key": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip" + }, + "Timeout": 120, + "Handler": "index.handler", + "Role": { + "Fn::GetAtt": [ + "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73", + "Arn" + ] + }, + "LoggingConfig": { + "LogFormat": "JSON", + "ApplicationLogLevel": "FATAL" + } + } + } + }, + "Outputs": { + "AssertionResultsHttpApiCallaece1707756e3a03681d8f07e62646ee": { + "Value": { + "Fn::GetAtt": [ + "HttpApiCallaece1707756e3a03681d8f07e62646ee", + "assertion" + ] + } + } + }, + "Parameters": { + "BootstrapVersion": { + "Type": "AWS::SSM::Parameter::Value", + "Default": "/cdk-bootstrap/hnb659fds/version", + "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]" + } + }, + "Rules": { + "CheckBootstrapVersion": { + "Assertions": [ + { + "Assert": { + "Fn::Not": [ + { + "Fn::Contains": [ + [ + "1", + "2", + "3", + "4", + "5" + ], + { + "Ref": "BootstrapVersion" + } + ] + } + ] + }, + "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI." + } + ] + } + } +} \ No newline at end of file diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0/index.js new file mode 100644 index 0000000000000..089e0b243c16b --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0/index.js @@ -0,0 +1,7 @@ +// A WebFunction runs this file as a long-lived server process: it must listen on PORT. +const http = require('http'); + +http.createServer((req, res) => { + res.writeHead(200, { 'Content-Type': 'application/json' }); + res.end(JSON.stringify({ status: 'ok' })); +}).listen(process.env.PORT || 3000); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0/index.py b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0/index.py new file mode 100644 index 0000000000000..2c67e1f71116e --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0/index.py @@ -0,0 +1,453 @@ +import contextlib +import json +import logging +import os +import shutil +import subprocess +import tempfile +import urllib.parse +from urllib.request import Request, urlopen +from uuid import uuid4 +from zipfile import ZipFile + +import boto3 +from botocore.config import Config +from botocore.exceptions import ClientError, WaiterError + +logger = logging.getLogger() +logger.setLevel(logging.INFO) + +cloudfront = boto3.client('cloudfront', config=Config( + retries = { + 'max_attempts': 10, + 'mode': 'standard', + } +)) +s3 = boto3.client('s3') + +CFN_SUCCESS = "SUCCESS" +CFN_FAILED = "FAILED" +ENV_KEY_MOUNT_PATH = "MOUNT_PATH" +ENV_KEY_SKIP_CLEANUP = "SKIP_CLEANUP" + +AWS_CLI_CONFIG_FILE = "/tmp/aws_cli_config" +CUSTOM_RESOURCE_OWNER_TAG = "aws-cdk:cr-owned" + +os.putenv('AWS_CONFIG_FILE', AWS_CLI_CONFIG_FILE) + +def handler(event, context): + + def cfn_error(message=None): + if message: + logger.error("| cfn_error: %s" % sanitize_message(message)) + cfn_send(event, context, CFN_FAILED, reason=message, physicalResourceId=event.get('PhysicalResourceId', None)) + + + try: + # We are not logging ResponseURL as this is a pre-signed S3 URL, and could be used to tamper + # with the response CloudFormation sees from this Custom Resource execution. + logger.info(sanitize_message({ key:value for (key, value) in event.items() if key != 'ResponseURL'})) + + # cloudformation request type (create/update/delete) + request_type = event['RequestType'] + + # extract resource properties + props = event['ResourceProperties'] + old_props = event.get('OldResourceProperties', {}) + physical_id = event.get('PhysicalResourceId', None) + + try: + source_bucket_names = props['SourceBucketNames'] + source_object_keys = props['SourceObjectKeys'] + source_markers = props.get('SourceMarkers', None) + source_markers_config = props.get('SourceMarkersConfig', None) + dest_bucket_name = props['DestinationBucketName'] + dest_bucket_prefix = props.get('DestinationBucketKeyPrefix', '') + extract = props.get('Extract', 'true') == 'true' + retain_on_delete = props.get('RetainOnDelete', "true") == "true" + distribution_id = props.get('DistributionId', '') + wait_for_distribution_invalidation = props.get('WaitForDistributionInvalidation', True) + user_metadata = props.get('UserMetadata', {}) + system_metadata = props.get('SystemMetadata', {}) + prune = props.get('Prune', 'true').lower() == 'true' + exclude = props.get('Exclude', []) + include = props.get('Include', []) + sign_content = props.get('SignContent', 'false').lower() == 'true' + output_object_keys = props.get('OutputObjectKeys', 'true') == 'true' + output_object_version_ids = props.get('OutputObjectVersionIds', 'false') == 'true' + + # backwards compatibility - if "SourceMarkers" is not specified, + # assume all sources have an empty market map + if source_markers is None: + source_markers = [{} for i in range(len(source_bucket_names))] + if source_markers_config is None: + source_markers_config = [{} for i in range(len(source_bucket_names))] + + default_distribution_path = dest_bucket_prefix + if not default_distribution_path.endswith("/"): + default_distribution_path += "/" + if not default_distribution_path.startswith("/"): + default_distribution_path = "/" + default_distribution_path + default_distribution_path += "*" + + distribution_paths = props.get('DistributionPaths', [default_distribution_path]) + except KeyError as e: + cfn_error("missing request resource property %s. props: %s" % (str(e), props)) + return + + # configure aws cli options after resetting back to the defaults for each request + if os.path.exists(AWS_CLI_CONFIG_FILE): + os.remove(AWS_CLI_CONFIG_FILE) + if sign_content: + aws_command("configure", "set", "default.s3.payload_signing_enabled", "true") + + # treat "/" as if no prefix was specified + if dest_bucket_prefix == "/": + dest_bucket_prefix = "" + + s3_source_zips = list(map(lambda name, key: "s3://%s/%s" % (name, key), source_bucket_names, source_object_keys)) + s3_dest = "s3://%s/%s" % (dest_bucket_name, dest_bucket_prefix) + old_s3_dest = "s3://%s/%s" % (old_props.get("DestinationBucketName", ""), old_props.get("DestinationBucketKeyPrefix", "")) + + + # obviously this is not + if old_s3_dest == "s3:///": + old_s3_dest = None + + logger.info("| s3_dest: %s" % sanitize_message(s3_dest)) + logger.info("| old_s3_dest: %s" % sanitize_message(old_s3_dest)) + + # if we are creating a new resource, allocate a physical id for it + # otherwise, we expect physical id to be relayed by cloudformation + if request_type == "Create": + physical_id = "aws.cdk.s3deployment.%s" % str(uuid4()) + else: + if not physical_id: + cfn_error("invalid request: request type is '%s' but 'PhysicalResourceId' is not defined" % request_type) + return + + # delete or create/update (only if "retain_on_delete" is false) + if request_type == "Delete" and not retain_on_delete: + if not bucket_owned(dest_bucket_name, dest_bucket_prefix): + aws_command("s3", "rm", s3_dest, "--recursive") + + # if we are updating without retention and the destination changed, delete first + if request_type == "Update" and not retain_on_delete and old_s3_dest != s3_dest: + if not old_s3_dest: + logger.warn("cannot delete old resource without old resource properties") + return + + aws_command("s3", "rm", old_s3_dest, "--recursive") + + if request_type == "Update" or request_type == "Create": + s3_deploy(s3_source_zips, s3_dest, user_metadata, system_metadata, prune, exclude, include, source_markers, extract, source_markers_config) + + # after the sync has run, optionally look up the S3 version IDs of the deployed objects. + # only performed when the consumer opted in by reading `objectVersionIds` (extract=false). + object_version_ids = [] + if output_object_version_ids and (request_type == "Update" or request_type == "Create"): + object_version_ids = get_object_version_ids(dest_bucket_name, dest_bucket_prefix, source_object_keys) + + if distribution_id: + cloudfront_invalidate(distribution_id, distribution_paths, wait_for_distribution_invalidation) + + cfn_send(event, context, CFN_SUCCESS, physicalResourceId=physical_id, responseData={ + # Passing through the ARN sequences dependencees on the deployment + 'DestinationBucketArn': props.get('DestinationBucketArn'), + **({'SourceObjectKeys': props.get('SourceObjectKeys')} if output_object_keys else {'SourceObjectKeys': []}), + # When requested, always include the key (even on delete/no-op, where the list is empty) + # so Fn::GetAtt on SourceObjectVersionIds never fails. Omitted entirely when not requested. + **({'SourceObjectVersionIds': object_version_ids} if output_object_version_ids else {}) + }) + except KeyError as e: + cfn_error("invalid request. Missing key %s" % str(e)) + except Exception as e: + logger.exception("| unhandled error: %s" % sanitize_message(str(e))) + cfn_error(str(e)) + +#--------------------------------------------------------------------------------------------------- +# Sanitize the message to mitigate CWE-117 and CWE-93 vulnerabilities +def sanitize_message(message): + if not message: + return message + + # Convert non-string types to string for sanitization + if not isinstance(message, str): + message = str(message) + + # Sanitize the message to prevent log injection and HTTP response splitting + sanitized_message = message.replace('\n', '').replace('\r', '') + + # Encode the message to handle special characters + encoded_message = urllib.parse.quote(sanitized_message) + + return encoded_message + +#--------------------------------------------------------------------------------------------------- +# populate all files from s3_source_zips to a destination bucket +def s3_deploy(s3_source_zips, s3_dest, user_metadata, system_metadata, prune, exclude, include, source_markers, extract, source_markers_config): + # list lengths are equal + if len(s3_source_zips) != len(source_markers): + raise Exception("'source_markers' and 's3_source_zips' must be the same length") + + # create a temporary working directory in /tmp or if enabled an attached efs volume + if ENV_KEY_MOUNT_PATH in os.environ: + workdir = os.getenv(ENV_KEY_MOUNT_PATH) + "/" + str(uuid4()) + os.mkdir(workdir) + else: + workdir = tempfile.mkdtemp() + + logger.info("| workdir: %s" % workdir) + + # create a directory into which we extract the contents of the zip file + contents_dir=os.path.join(workdir, 'contents') + os.mkdir(contents_dir) + + try: + # download the archive from the source and extract to "contents" + for i in range(len(s3_source_zips)): + s3_source_zip = s3_source_zips[i] + markers = source_markers[i] + markers_config = source_markers_config[i] + + if extract: + archive=os.path.join(workdir, str(uuid4())) + logger.info("archive: %s" % archive) + aws_command("s3", "cp", s3_source_zip, archive) + logger.info("| extracting archive to: %s\n" % contents_dir) + logger.info("| markers: %s" % sanitize_message(markers)) + extract_and_replace_markers(archive, contents_dir, markers, markers_config) + else: + logger.info("| copying archive to: %s\n" % contents_dir) + aws_command("s3", "cp", s3_source_zip, contents_dir) + + # sync from "contents" to destination + + s3_command = ["s3", "sync"] + + if prune: + s3_command.append("--delete") + + if exclude: + for filter in exclude: + s3_command.extend(["--exclude", filter]) + + if include: + for filter in include: + s3_command.extend(["--include", filter]) + + s3_command.extend([contents_dir, s3_dest]) + s3_command.extend(create_metadata_args(user_metadata, system_metadata)) + aws_command(*s3_command) + finally: + if not os.getenv(ENV_KEY_SKIP_CLEANUP): + shutil.rmtree(workdir) + +#--------------------------------------------------------------------------------------------------- +# look up the S3 version IDs of the deployed objects. +# +# for extract=false each source zip is copied through unchanged, so the destination key is +# "" (aws s3 cp preserves the basename and +# aws s3 sync mirrors the working directory). the returned list positionally matches +# source_object_keys. head_object on an unversioned bucket returns no VersionId, in which case +# an empty string is returned for that entry. +def get_object_version_ids(dest_bucket_name, dest_bucket_prefix, source_object_keys): + # Normalize the prefix the same way `aws s3 sync` does: syncing a directory to + # "s3://bucket/" writes objects at "/" even when has no + # trailing slash, so join with a single "/" to match the key that was actually written. + prefix = dest_bucket_prefix + if prefix and not prefix.endswith("/"): + prefix += "/" + version_ids = [] + for key in source_object_keys: + dest_key = prefix + os.path.basename(key) + try: + resp = s3.head_object(Bucket=dest_bucket_name, Key=dest_key) + version_ids.append(resp.get('VersionId', '')) + except ClientError as e: + # The object may legitimately be absent at this point (for example when an + # include/exclude filter skipped it during the sync). Return an empty version id for it + # rather than failing the whole deployment, and log the key so an unexpected miss is + # still diagnosable in CloudWatch. + if e.response.get('Error', {}).get('Code') in ('404', 'NoSuchKey', 'NotFound'): + logger.info("| no object found at s3://%s/%s; returning empty version id" % (sanitize_message(dest_bucket_name), sanitize_message(dest_key))) + version_ids.append('') + else: + raise + return version_ids + +#--------------------------------------------------------------------------------------------------- +# invalidate files in the CloudFront distribution edge caches +def cloudfront_invalidate(distribution_id, distribution_paths, wait_for_invalidation): + invalidation_resp = cloudfront.create_invalidation( + DistributionId=distribution_id, + InvalidationBatch={ + 'Paths': { + 'Quantity': len(distribution_paths), + 'Items': distribution_paths + }, + 'CallerReference': str(uuid4()), + }) + if wait_for_invalidation: + try: + # Wait for a maximum of 13 minutes for invalidation to complete. + cloudfront.get_waiter('invalidation_completed').wait( + DistributionId=distribution_id, + Id=invalidation_resp['Invalidation']['Id'], + WaiterConfig={ + 'Delay': 20, + 'MaxAttempts': (13*60)//20, + } + ) + except WaiterError as e: + raise RuntimeError(f"Unable to confirm that cache invalidation was successful. This may be a CloudFront regression as reported in https://github.com/aws/aws-cdk/issues/15891") from e + + +#--------------------------------------------------------------------------------------------------- +# set metadata +def create_metadata_args(raw_user_metadata, raw_system_metadata): + if len(raw_user_metadata) == 0 and len(raw_system_metadata) == 0: + return [] + + format_system_metadata_key = lambda k: k.lower() + format_user_metadata_key = lambda k: k.lower() + + system_metadata = { format_system_metadata_key(k): v for k, v in raw_system_metadata.items() } + user_metadata = { format_user_metadata_key(k): v for k, v in raw_user_metadata.items() } + + flatten = lambda l: [item for sublist in l for item in sublist] + system_args = flatten([[f"--{k}", v] for k, v in system_metadata.items()]) + user_args = ["--metadata", json.dumps(user_metadata, separators=(',', ':'))] if len(user_metadata) > 0 else [] + + return system_args + user_args + ["--metadata-directive", "REPLACE"] + +#--------------------------------------------------------------------------------------------------- +# executes an "aws" cli command +def aws_command(*args): + aws="/opt/awscli/aws" # from AwsCliLayer + logger.info("| aws %s" % sanitize_message(' '.join(args))) + subprocess.check_call([aws] + list(args)) + +#--------------------------------------------------------------------------------------------------- +# sends a response to cloudformation +def cfn_send(event, context, responseStatus, responseData={}, physicalResourceId=None, noEcho=False, reason=None): + + responseUrl = event['ResponseURL'] + + responseBody = {} + responseBody['Status'] = responseStatus + responseBody['Reason'] = reason or ('See the details in CloudWatch Log Stream: ' + context.log_stream_name) + responseBody['PhysicalResourceId'] = physicalResourceId or context.log_stream_name + responseBody['StackId'] = event['StackId'] + responseBody['RequestId'] = event['RequestId'] + responseBody['LogicalResourceId'] = event['LogicalResourceId'] + responseBody['NoEcho'] = noEcho + responseBody['Data'] = responseData + + body = json.dumps(responseBody) + logger.info("| response body: " + sanitize_message(body)) + + headers = { + 'content-type' : '', + 'content-length' : str(len(body)) + } + + try: + request = Request(responseUrl, method='PUT', data=bytes(body.encode('utf-8')), headers=headers) + with contextlib.closing(urlopen(request)) as response: + logger.info("| status code: " + response.reason) + except Exception as e: + logger.error("| unable to send response to CloudFormation") + logger.exception("| unable to send response: %s" % sanitize_message(str(e))) + + +#--------------------------------------------------------------------------------------------------- +# check if bucket is owned by a custom resource +# if it is then we don't want to delete content +def bucket_owned(bucketName, keyPrefix): + tag = CUSTOM_RESOURCE_OWNER_TAG + if keyPrefix != "": + tag = tag + ':' + keyPrefix + try: + request = s3.get_bucket_tagging( + Bucket=bucketName, + ) + return any((x["Key"].startswith(tag)) for x in request["TagSet"]) + except Exception as e: + logger.info("| error getting tags from bucket") + logger.exception("| error getting tags: %s" % sanitize_message(str(e))) + return False + +# extract archive and replace markers in output files +def extract_and_replace_markers(archive, contents_dir, markers, markers_config): + with ZipFile(archive, "r") as zip: + zip.extractall(contents_dir) + + # replace markers for this source + for file in zip.namelist(): + file_path = os.path.join(contents_dir, file) + if os.path.isdir(file_path): continue + replace_markers(file_path, markers, markers_config) + +def prepare_json_safe_markers(markers): + """Pre-process markers to ensure JSON-safe values""" + safe_markers = {} + for key, value in markers.items(): + # Serialize the value as JSON to handle escaping if the value is a string + serialized = json.dumps(value) + if serialized.startswith('"') and serialized.endswith('"'): + json_safe_value = json.dumps(value)[1:-1] # Remove surrounding quotes + else: + json_safe_value = serialized + safe_markers[key.encode('utf-8')] = json_safe_value.encode('utf-8') + return safe_markers + +def replace_markers(filename, markers, markers_config): + """Replace markers in a file, with special handling for JSON files.""" + # if there are no markers, skip + if not markers: + return + + outfile = filename + '.new' + json_escape = markers_config.get('jsonEscape', 'false').lower() + if json_escape == 'true': + replace_tokens = prepare_json_safe_markers(markers) + else: + replace_tokens = dict([(k.encode('utf-8'), v.encode('utf-8')) for k, v in markers.items()]) + + # Handle content with line-by-line binary replacement + with open(filename, 'rb') as fi, open(outfile, 'wb') as fo: + # Process line by line to handle large files + for line in fi: + for token, replacement in replace_tokens.items(): + line = line.replace(token, replacement) + fo.write(line) + + # Delete the original file and rename the new one to the original + os.remove(filename) + os.rename(outfile, filename) + +def replace_markers_in_json(json_object, replace_tokens): + """Replace markers in JSON content with proper escaping.""" + try: + def replace_in_structure(obj): + if isinstance(obj, str): + # Convert string to bytes for consistent replacement + result = obj.encode('utf-8') + for token, replacement in replace_tokens.items(): + result = result.replace(token, replacement) + # Convert back to string + return result.decode('utf-8') + elif isinstance(obj, dict): + return {k: replace_in_structure(v) for k, v in obj.items()} + elif isinstance(obj, list): + return [replace_in_structure(item) for item in obj] + return obj + + # Process the whole structure + processed = replace_in_structure(json_object) + return json.dumps(processed) + except Exception as e: + logger.error("| error processing JSON: %s" % sanitize_message(str(e))) + logger.exception("| error processing JSON: %s" % sanitize_message(str(e))) + return json_object diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js new file mode 100644 index 0000000000000..1002ba018e9fb --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js @@ -0,0 +1 @@ +"use strict";var f=Object.create;var i=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var A=(t,e)=>{for(var o in e)i(t,o,{get:e[o],enumerable:!0})},d=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of C(e))!P.call(t,s)&&s!==o&&i(t,s,{get:()=>e[s],enumerable:!(r=I(e,s))||r.enumerable});return t};var l=(t,e,o)=>(o=t!=null?f(w(t)):{},d(e||!t||!t.__esModule?i(o,"default",{value:t,enumerable:!0}):o,t)),B=t=>d(i({},"__esModule",{value:!0}),t);var q={};A(q,{autoDeleteHandler:()=>S,handler:()=>H});module.exports=B(q);var h=require("@aws-sdk/client-s3");var y=l(require("https")),m=l(require("url")),a={sendHttpRequest:D,log:T,includeStackTraces:!0,userHandlerIndex:"./index"},p="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",L="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function R(t){return async(e,o)=>{let r={...e,ResponseURL:"..."};if(a.log(JSON.stringify(r,void 0,2)),e.RequestType==="Delete"&&e.PhysicalResourceId===p){a.log("ignoring DELETE event caused by a failed CREATE event"),await u("SUCCESS",e);return}try{let s=await t(r,o),n=k(e,s);await u("SUCCESS",n)}catch(s){let n={...e,Reason:a.includeStackTraces?s.stack:s.message};n.PhysicalResourceId||(e.RequestType==="Create"?(a.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),n.PhysicalResourceId=p):a.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(e)}`)),await u("FAILED",n)}}}function k(t,e={}){let o=e.PhysicalResourceId??t.PhysicalResourceId??t.RequestId;if(t.RequestType==="Delete"&&o!==t.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${t.PhysicalResourceId}" to "${e.PhysicalResourceId}" during deletion`);return{...t,...e,PhysicalResourceId:o}}async function u(t,e){let o={Status:t,Reason:e.Reason??t,StackId:e.StackId,RequestId:e.RequestId,PhysicalResourceId:e.PhysicalResourceId||L,LogicalResourceId:e.LogicalResourceId,NoEcho:e.NoEcho,Data:e.Data},r=m.parse(e.ResponseURL),s=`${r.protocol}//${r.hostname}/${r.pathname}?***`;a.log("submit response to cloudformation",s,o);let n=JSON.stringify(o),E={hostname:r.hostname,path:r.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(n,"utf8")}};await O({attempts:5,sleep:1e3},a.sendHttpRequest)(E,n)}async function D(t,e){return new Promise((o,r)=>{try{let s=y.request(t,n=>{n.resume(),!n.statusCode||n.statusCode>=400?r(new Error(`Unsuccessful HTTP response: ${n.statusCode}`)):o()});s.on("error",r),s.write(e),s.end()}catch(s){r(s)}})}function T(t,...e){console.log(t,...e)}function O(t,e){return async(...o)=>{let r=t.attempts,s=t.sleep;for(;;)try{return await e(...o)}catch(n){if(r--<=0)throw n;await b(Math.floor(Math.random()*s)),s*=2}}}async function b(t){return new Promise(e=>setTimeout(e,t))}var g="aws-cdk:auto-delete-objects",x=JSON.stringify({Version:"2012-10-17",Statement:[]}),c=new h.S3({}),H=R(S);async function S(t){switch(t.RequestType){case"Create":return;case"Update":return{PhysicalResourceId:(await F(t)).PhysicalResourceId};case"Delete":return N(t.ResourceProperties?.BucketName)}}async function F(t){let e=t,o=e.OldResourceProperties?.BucketName;return{PhysicalResourceId:e.ResourceProperties?.BucketName??o}}async function _(t){try{let e=(await c.getBucketPolicy({Bucket:t}))?.Policy??x,o=JSON.parse(e);o.Statement.push({Principal:"*",Effect:"Deny",Action:["s3:PutObject"],Resource:[`arn:aws:s3:::${t}/*`]}),await c.putBucketPolicy({Bucket:t,Policy:JSON.stringify(o)})}catch(e){if(e.name==="NoSuchBucket")throw e;console.log(`Could not set new object deny policy on bucket '${t}' prior to deletion.`)}}async function U(t){let e;do{e=await c.listObjectVersions({Bucket:t});let o=[...e.Versions??[],...e.DeleteMarkers??[]];if(o.length===0)return;let r=o.map(s=>({Key:s.Key,VersionId:s.VersionId}));await c.deleteObjects({Bucket:t,Delete:{Objects:r}})}while(e?.IsTruncated)}async function N(t){if(!t)throw new Error("No BucketName was provided.");try{if(!await W(t)){console.log(`Bucket does not have '${g}' tag, skipping cleaning.`);return}await _(t),await U(t)}catch(e){if(e.name==="NoSuchBucket"){console.log(`Bucket '${t}' does not exist.`);return}throw e}}async function W(t){return(await c.getBucketTagging({Bucket:t})).TagSet?.some(o=>o.Key===g&&o.Value==="true")}0&&(module.exports={autoDeleteHandler,handler}); diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js new file mode 100644 index 0000000000000..44fb7e8727ea5 --- /dev/null +++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js @@ -0,0 +1,117765 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name); +var __typeError = (msg) => { + throw TypeError(msg); +}; +var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); +var __esm = (fn, res, err) => function __init() { + if (err) throw err[0]; + try { + return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; + } catch (e) { + throw err = [e], e; + } +}; +var __commonJS = (cb, mod) => function __require() { + try { + return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; + } catch (e) { + throw mod = 0, e; + } +}; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default")); +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var __decoratorStart = (base) => [, , , __create(base?.[__knownSymbol("metadata")] ?? null)]; +var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"]; +var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn; +var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null)) }); +var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]); +var __runInitializers = (array, flags, self2, value) => { + for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self2) : value = fns[i].call(self2, value); + return value; +}; +var __decorateElement = (array, flags, name, decorators, target, extra) => { + var fn, it, done, ctx, access, k = flags & 7, s = !!(flags & 8), p = !!(flags & 16); + var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0, key = __decoratorStrings[k + 5]; + var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []); + var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [name]() { + return __privateGet(this, extra); + }, set [name](x) { + return __privateSet(this, extra, x); + } }, name)); + k ? p && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name(target, name); + for (var i = decorators.length - 1; i >= 0; i--) { + ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers); + if (k) { + ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) => name in x }; + if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name]; + if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y; + } + it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1; + if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it); + else if (typeof it !== "object" || it === null) __typeError("Object expected"); + else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn); + } + return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target; +}; +var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); +var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg); +var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the "in" operator on this value') : member.has(obj); +var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj)); +var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value); +var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method); +var __using = (stack, value, async) => { + if (value != null) { + if (typeof value !== "object" && typeof value !== "function") __typeError("Object expected"); + var dispose, inner; + if (async) dispose = value[__knownSymbol("asyncDispose")]; + if (dispose === void 0) { + dispose = value[__knownSymbol("dispose")]; + if (async) inner = dispose; + } + if (typeof dispose !== "function") __typeError("Object not disposable"); + if (inner) dispose = function() { + try { + inner.call(this); + } catch (e) { + return Promise.reject(e); + } + }; + stack.push([async, dispose, value]); + } else if (async) { + stack.push([async]); + } + return value; +}; +var __callDispose = (stack, error, hasError) => { + var E = typeof SuppressedError === "function" ? SuppressedError : function(e, s, m, _) { + return _ = Error(m), _.name = "SuppressedError", _.error = e, _.suppressed = s, _; + }; + var fail = (e) => error = hasError ? new E(e, error, "An error was suppressed during disposal") : (hasError = true, e); + var next = (it) => { + while (it = stack.pop()) { + try { + var result = it[1] && it[1].call(it[2]); + if (it[0]) return Promise.resolve(result).then(next, (e) => (fail(e), next())); + } catch (e) { + fail(e); + } + } + if (hasError) throw error; + }; + return next(); +}; + +// ../../aws-cdk-lib/assertions/lib/matcher.ts +var matcher_exports = {}; +__export(matcher_exports, { + MatchResult: () => MatchResult, + Matcher: () => Matcher +}); +function* range(n) { + for (let i = 0; i < n; i++) { + yield i; + } +} +function* enumFirst(xs) { + let first = true; + for (const x of xs) { + yield [first, x]; + first = false; + } +} +var Matcher, MatchResult; +var init_matcher = __esm({ + "../../aws-cdk-lib/assertions/lib/matcher.ts"() { + "use strict"; + Matcher = class _Matcher { + /** + * Check whether the provided object is a subtype of the `IMatcher`. + */ + static isMatcher(x) { + return x && x instanceof _Matcher; + } + }; + MatchResult = class { + /** + * The target for which this result was generated. + */ + target; + failuresHere = /* @__PURE__ */ new Map(); + captures = /* @__PURE__ */ new Map(); + finalized = false; + innerMatchFailures = /* @__PURE__ */ new Map(); + _hasFailed = false; + _failCount = 0; + _cost = 0; + constructor(target) { + this.target = target; + } + /** + * DEPRECATED + * @deprecated use recordFailure() + */ + push(matcher, path23, message) { + return this.recordFailure({ matcher, path: path23, message }); + } + /** + * Record a new failure into this result at a specific path. + */ + recordFailure(failure) { + const failKey = failure.path.join("."); + let list = this.failuresHere.get(failKey); + if (!list) { + list = []; + this.failuresHere.set(failKey, list); + } + this._failCount += 1; + this._cost += failure.cost ?? 1; + list.push(failure); + this._hasFailed = true; + return this; + } + /** Whether the match is a success */ + get isSuccess() { + return !this._hasFailed; + } + /** Does the result contain any failures. If not, the result is a success */ + hasFailed() { + return this._hasFailed; + } + /** The number of failures */ + get failCount() { + return this._failCount; + } + /** The cost of the failures so far */ + get failCost() { + return this._cost; + } + /** + * Compose the results of a previous match as a subtree. + * @param id the id of the parent tree. + */ + compose(id, inner) { + if (inner.hasFailed()) { + this._hasFailed = true; + this._failCount += inner.failCount; + this._cost += inner._cost; + this.innerMatchFailures.set(id, inner); + } + inner.captures.forEach((vals, capture) => { + vals.forEach((value) => this.recordCapture({ capture, value })); + }); + return this; + } + /** + * Prepare the result to be analyzed. + * This API *must* be called prior to analyzing these results. + */ + finished() { + if (this.finalized) { + return this; + } + if (this.failCount === 0) { + this.captures.forEach((vals, cap) => cap._captured.push(...vals)); + } + this.finalized = true; + return this; + } + /** + * Render the failed match in a presentable way + * + * Prefer using `renderMismatch` over this method. It is left for backwards + * compatibility for test suites that expect it, but `renderMismatch()` will + * produce better output. + */ + toHumanStrings() { + const failures = new Array(); + recurse(this, []); + return failures.map((r) => { + const loc = r.path.length === 0 ? "" : ` at /${r.path.join("/")}`; + return "" + r.message + loc + ` (using ${r.matcher.name} matcher)`; + }); + function recurse(x, prefix) { + for (const fail of Array.from(x.failuresHere.values()).flat()) { + failures.push({ + matcher: fail.matcher, + message: fail.message, + path: [...prefix, ...fail.path] + }); + } + for (const [key, inner] of x.innerMatchFailures.entries()) { + recurse(inner, [...prefix, key]); + } + } + } + /** + * Do a deep render of the match result, showing the structure mismatches in context + */ + renderMismatch() { + if (!this.hasFailed()) { + return ""; + } + const parts = new Array(); + const indents = new Array(); + emitFailures(this, ""); + recurse(this); + return moveMarkersToFront(parts.join("").trimEnd()); + function emit(x) { + if (x === void 0) { + debugger; + } + parts.push(x.replace(/\n/g, ` +${indents.join("")}`)); + } + function emitFailures(r, path23, scrapSet) { + for (const fail of r.failuresHere.get(path23) ?? []) { + emit(`!! ${fail.message} +`); + } + scrapSet?.delete(path23); + } + function recurse(r) { + const remainingFailures = new Set(Array.from(r.failuresHere.keys()).filter((x) => x !== "")); + if (Array.isArray(r.target)) { + indents.push(" "); + emit("[\n"); + for (const [first, i] of enumFirst(range(r.target.length))) { + if (!first) { + emit(",\n"); + } + emitFailures(r, `${i}`, remainingFailures); + const innerMatcher = r.innerMatchFailures.get(`${i}`); + if (innerMatcher) { + emitFailures(innerMatcher, ""); + recurseComparingValues(innerMatcher, r.target[i]); + } else { + emit(renderAbridged(r.target[i])); + } + } + emitRemaining(); + indents.pop(); + emit("\n]"); + return; + } + if (r.target && typeof r.target === "object") { + indents.push(" "); + emit("{\n"); + const keys = Array.from(/* @__PURE__ */ new Set([ + ...Object.keys(r.target), + ...Array.from(remainingFailures) + ])).sort(); + for (const [first, key] of enumFirst(keys)) { + if (!first) { + emit(",\n"); + } + emitFailures(r, key, remainingFailures); + const innerMatcher = r.innerMatchFailures.get(key); + if (innerMatcher) { + emitFailures(innerMatcher, ""); + emit(`${jsonify(key)}: `); + recurseComparingValues(innerMatcher, r.target[key]); + } else { + emit(`${jsonify(key)}: `); + emit(renderAbridged(r.target[key])); + } + } + emitRemaining(); + indents.pop(); + emit("\n}"); + return; + } + emitRemaining(); + emit(jsonify(r.target)); + function emitRemaining() { + if (remainingFailures.size > 0) { + emit("\n"); + } + for (const key of remainingFailures) { + emitFailures(r, key); + } + } + } + function recurseComparingValues(inner, actualValue) { + if (inner.target === actualValue) { + return recurse(inner); + } + emit(renderAbridged(actualValue)); + emit(" <*> "); + recurse(inner); + } + function renderAbridged(x) { + if (Array.isArray(x)) { + switch (x.length) { + case 0: + return "[]"; + case 1: + return `[ ${renderAbridged(x[0])} ]`; + case 2: + if (x.every((e) => ["number", "boolean", "string"].includes(typeof e))) { + return `[ ${x.map(renderAbridged).join(", ")} ]`; + } + return "[ ... ]"; + default: + return "[ ... ]"; + } + } + if (x && typeof x === "object") { + const keys = Object.keys(x); + switch (keys.length) { + case 0: + return "{}"; + case 1: + return `{ ${JSON.stringify(keys[0])}: ${renderAbridged(x[keys[0]])} }`; + default: + return "{ ... }"; + } + } + return jsonify(x); + } + function jsonify(x) { + return JSON.stringify(x) ?? "undefined"; + } + function moveMarkersToFront(x) { + const re = /^(\s+)!!/gm; + return x.replace(re, (_, spaces) => `!!${spaces.substring(0, spaces.length - 2)}`); + } + } + /** + * Record a capture against in this match result. + */ + recordCapture(options) { + let values = this.captures.get(options.capture); + if (values === void 0) { + values = []; + } + values.push(options.value); + this.captures.set(options.capture, values); + } + }; + } +}); + +// ../../aws-cdk-lib/assertions/lib/private/error.ts +var ASSERTION_ERROR_SYMBOL, AssertionError; +var init_error = __esm({ + "../../aws-cdk-lib/assertions/lib/private/error.ts"() { + "use strict"; + ASSERTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/assertions.AssertionError"); + AssertionError = class _AssertionError extends Error { + #time; + /** + * The time the error was thrown. + */ + get time() { + return this.#time; + } + get type() { + return "assertion"; + } + constructor(msg) { + super(msg); + Object.setPrototypeOf(this, _AssertionError.prototype); + Object.defineProperty(this, ASSERTION_ERROR_SYMBOL, { value: true }); + this.name = new.target.name; + this.#time = (/* @__PURE__ */ new Date()).toISOString(); + } + }; + } +}); + +// ../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts +var AbsentMatch; +var init_absent = __esm({ + "../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts"() { + "use strict"; + init_matcher(); + AbsentMatch = class extends Matcher { + constructor(name) { + super(); + this.name = name; + } + name; + test(actual) { + const result = new MatchResult(actual); + if (actual !== void 0) { + result.recordFailure({ + matcher: this, + path: [], + message: `Received ${actual}, but key should be absent` + }); + } + return result; + } + }; + } +}); + +// ../../aws-cdk-lib/assertions/lib/private/sorting.ts +function sortKeyComparator(keyFn) { + return (a, b) => { + const ak = keyFn(a); + const bk = keyFn(b); + for (let i = 0; i < ak.length && i < bk.length; i++) { + const av = ak[i]; + const bv = bk[i]; + let diff = 0; + if (typeof av === "number" && typeof bv === "number") { + diff = av - bv; + } else if (typeof av === "string" && typeof bv === "string") { + diff = av.localeCompare(bv); + } + if (diff !== 0) { + return diff; + } + } + return bk.length - ak.length; + }; +} +var init_sorting = __esm({ + "../../aws-cdk-lib/assertions/lib/private/sorting.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts +var SparseMatrix; +var init_sparse_matrix = __esm({ + "../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts"() { + "use strict"; + SparseMatrix = class { + matrix = /* @__PURE__ */ new Map(); + get(row, col) { + return this.matrix.get(row)?.get(col); + } + row(row) { + return Array.from(this.matrix.get(row)?.entries() ?? []); + } + set(row, col, value) { + let r = this.matrix.get(row); + if (!r) { + r = /* @__PURE__ */ new Map(); + this.matrix.set(row, r); + } + r.set(col, value); + } + }; + } +}); + +// ../../aws-cdk-lib/assertions/lib/private/type.ts +function getType(obj) { + return Array.isArray(obj) ? "array" : typeof obj; +} +var init_type = __esm({ + "../../aws-cdk-lib/assertions/lib/private/type.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/assertions/lib/match.ts +var match_exports = {}; +__export(match_exports, { + Match: () => Match +}); +var Match, LiteralMatch, ArrayMatch, ObjectMatch, SerializedJson, NotMatch, AnyMatch, StringLikeRegexpMatch; +var init_match = __esm({ + "../../aws-cdk-lib/assertions/lib/match.ts"() { + "use strict"; + init_matcher(); + init_error(); + init_absent(); + init_sorting(); + init_sparse_matrix(); + init_type(); + Match = class { + /** + * Use this matcher in the place of a field's value, if the field must not be present. + */ + static absent() { + return new AbsentMatch("absent"); + } + /** + * Matches the specified pattern with the array found in the same relative path of the target. + * The set of elements (or matchers) must be in the same order as would be found. + * @param pattern the pattern to match + */ + static arrayWith(pattern) { + return new ArrayMatch("arrayWith", pattern); + } + /** + * Matches the specified pattern with the array found in the same relative path of the target. + * The set of elements (or matchers) must match exactly and in order. + * @param pattern the pattern to match + */ + static arrayEquals(pattern) { + return new ArrayMatch("arrayEquals", pattern, { subsequence: false }); + } + /** + * Deep exact matching of the specified pattern to the target. + * @param pattern the pattern to match + */ + static exact(pattern) { + return new LiteralMatch("exact", pattern, { partialObjects: false }); + } + /** + * Matches the specified pattern to an object found in the same relative path of the target. + * The keys and their values (or matchers) must be present in the target but the target can be a superset. + * @param pattern the pattern to match + */ + static objectLike(pattern) { + return new ObjectMatch("objectLike", pattern); + } + /** + * Matches the specified pattern to an object found in the same relative path of the target. + * The keys and their values (or matchers) must match exactly with the target. + * @param pattern the pattern to match + */ + static objectEquals(pattern) { + return new ObjectMatch("objectEquals", pattern, { partial: false }); + } + /** + * Matches any target which does NOT follow the specified pattern. + * @param pattern the pattern to NOT match + */ + static not(pattern) { + return new NotMatch("not", pattern); + } + /** + * Matches any string-encoded JSON and applies the specified pattern after parsing it. + * @param pattern the pattern to match after parsing the encoded JSON. + */ + static serializedJson(pattern) { + return new SerializedJson("serializedJson", pattern); + } + /** + * Matches any non-null value at the target. + */ + static anyValue() { + return new AnyMatch("anyValue"); + } + /** + * Matches targets according to a regular expression + */ + static stringLikeRegexp(pattern) { + return new StringLikeRegexpMatch("stringLikeRegexp", pattern); + } + }; + LiteralMatch = class extends Matcher { + constructor(name, pattern, options = {}) { + super(); + this.name = name; + this.pattern = pattern; + this.partialObjects = options.partialObjects ?? false; + if (Matcher.isMatcher(this.pattern)) { + throw new AssertionError("LiteralMatch cannot directly contain another matcher. Remove the top-level matcher or nest it more deeply."); + } + } + name; + pattern; + partialObjects; + test(actual) { + if (Array.isArray(this.pattern)) { + return new ArrayMatch(this.name, this.pattern, { subsequence: false, partialObjects: this.partialObjects }).test(actual); + } + if (typeof this.pattern === "object") { + return new ObjectMatch(this.name, this.pattern, { partial: this.partialObjects }).test(actual); + } + const result = new MatchResult(actual); + if (typeof this.pattern !== typeof actual) { + result.recordFailure({ + matcher: this, + path: [], + message: `Expected type ${typeof this.pattern} but received ${getType(actual)}` + }); + return result; + } + if (actual !== this.pattern) { + result.recordFailure({ + matcher: this, + path: [], + message: `Expected ${this.pattern} but received ${actual}` + }); + } + return result; + } + }; + ArrayMatch = class extends Matcher { + constructor(name, pattern, options = {}) { + super(); + this.name = name; + this.pattern = pattern; + this.subsequence = options.subsequence ?? true; + this.partialObjects = options.partialObjects ?? false; + } + name; + pattern; + subsequence; + partialObjects; + test(actual) { + if (!Array.isArray(actual)) { + return new MatchResult(actual).recordFailure({ + matcher: this, + path: [], + message: `Expected type array but received ${getType(actual)}` + }); + } + return this.subsequence ? this.testSubsequence(actual) : this.testFullArray(actual); + } + testFullArray(actual) { + const result = new MatchResult(actual); + let i = 0; + for (; i < this.pattern.length && i < actual.length; i++) { + const patternElement = this.pattern[i]; + const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects }); + const innerResult = matcher.test(actual[i]); + result.compose(`${i}`, innerResult); + } + if (i < this.pattern.length) { + result.recordFailure({ + matcher: this, + message: `Not enough elements in array (expecting ${this.pattern.length}, got ${actual.length})`, + path: [`${i}`] + }); + } + if (i < actual.length) { + result.recordFailure({ + matcher: this, + message: `Too many elements in array (expecting ${this.pattern.length}, got ${actual.length})`, + path: [`${i}`] + }); + } + return result; + } + testSubsequence(actual) { + const result = new MatchResult(actual); + let patternIdx = 0; + let actualIdx = 0; + const matches = new SparseMatrix(); + while (patternIdx < this.pattern.length && actualIdx < actual.length) { + const patternElement = this.pattern[patternIdx]; + const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects }); + const matcherName = matcher.name; + if (matcherName == "absent" || matcherName == "anyValue") { + throw new AssertionError(`The Matcher ${matcherName}() cannot be nested within arrayWith()`); + } + const innerResult = matcher.test(actual[actualIdx]); + matches.set(patternIdx, actualIdx, innerResult); + actualIdx++; + if (innerResult.isSuccess) { + result.compose(`${actualIdx}`, innerResult); + patternIdx++; + } + } + if (patternIdx < this.pattern.length) { + for (let spi = 0; spi < patternIdx; spi++) { + const foundMatch = matches.row(spi).find(([, r]) => r.isSuccess); + if (!foundMatch) { + continue; + } + const [index] = foundMatch; + result.compose(`${index}`, new MatchResult(actual[index]).recordFailure({ + matcher: this, + message: `arrayWith pattern ${spi} matched here`, + path: [], + cost: 0 + // This is an informational message so it would be unfair to assign it cost + })); + } + const failedMatches = matches.row(patternIdx); + failedMatches.sort(sortKeyComparator(([i, r]) => [r.failCost, i])); + if (failedMatches.length > 0) { + const [index, innerResult] = failedMatches[0]; + result.recordFailure({ + matcher: this, + message: `Could not match arrayWith pattern ${patternIdx}. This is the closest match`, + path: [`${index}`], + cost: 0 + // Informational message + }); + result.compose(`${index}`, innerResult); + } else { + result.recordFailure({ + matcher: this, + message: `Could not match arrayWith pattern ${patternIdx}. No more elements to try`, + path: [`${actual.length}`] + }); + } + } + return result; + } + }; + ObjectMatch = class extends Matcher { + constructor(name, pattern, options = {}) { + super(); + this.name = name; + this.pattern = pattern; + this.partial = options.partial ?? true; + } + name; + pattern; + partial; + test(actual) { + if (typeof actual !== "object" || Array.isArray(actual)) { + return new MatchResult(actual).recordFailure({ + matcher: this, + path: [], + message: `Expected type object but received ${getType(actual)}` + }); + } + const result = new MatchResult(actual); + if (!this.partial) { + for (const a of Object.keys(actual)) { + if (!(a in this.pattern)) { + result.recordFailure({ + matcher: this, + path: [a], + message: `Unexpected key ${a}` + }); + } + } + } + for (const [patternKey, patternVal] of Object.entries(this.pattern)) { + if (!(patternKey in actual) && !(patternVal instanceof AbsentMatch)) { + result.recordFailure({ + matcher: this, + path: [patternKey], + message: `Missing key '${patternKey}'` + }); + continue; + } + const matcher = Matcher.isMatcher(patternVal) ? patternVal : new LiteralMatch(this.name, patternVal, { partialObjects: this.partial }); + const inner = matcher.test(actual[patternKey]); + result.compose(patternKey, inner); + } + return result; + } + }; + SerializedJson = class extends Matcher { + constructor(name, pattern) { + super(); + this.name = name; + this.pattern = pattern; + } + name; + pattern; + test(actual) { + if (getType(actual) !== "string") { + return new MatchResult(actual).recordFailure({ + matcher: this, + path: [], + message: `Expected JSON as a string but found ${getType(actual)}` + }); + } + let parsed; + try { + parsed = JSON.parse(actual); + } catch (err) { + if (err instanceof SyntaxError) { + return new MatchResult(actual).recordFailure({ + matcher: this, + path: [], + message: `Invalid JSON string: ${actual}` + }); + } else { + throw err; + } + } + const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern); + const innerResult = matcher.test(parsed); + if (innerResult.hasFailed()) { + innerResult.recordFailure({ + matcher: this, + path: [], + message: "Encoded JSON value does not match" + }); + } + return innerResult; + } + }; + NotMatch = class extends Matcher { + constructor(name, pattern) { + super(); + this.name = name; + this.pattern = pattern; + } + name; + pattern; + test(actual) { + const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern); + const innerResult = matcher.test(actual); + const result = new MatchResult(actual); + if (innerResult.failCount === 0) { + result.recordFailure({ + matcher: this, + path: [], + message: `Found unexpected match: ${JSON.stringify(actual, void 0, 2)}` + }); + } + return result; + } + }; + AnyMatch = class extends Matcher { + constructor(name) { + super(); + this.name = name; + } + name; + test(actual) { + const result = new MatchResult(actual); + if (actual == null) { + result.recordFailure({ + matcher: this, + path: [], + message: "Expected a value but found none" + }); + } + return result; + } + }; + StringLikeRegexpMatch = class extends Matcher { + constructor(name, pattern) { + super(); + this.name = name; + this.pattern = pattern; + } + name; + pattern; + test(actual) { + const result = new MatchResult(actual); + const regex = new RegExp(this.pattern, "gm"); + if (typeof actual !== "string") { + result.recordFailure({ + matcher: this, + path: [], + message: `Expected a string, but got '${typeof actual}'` + }); + } + if (!regex.test(actual)) { + result.recordFailure({ + matcher: this, + path: [], + message: `String '${actual}' did not match pattern '${this.pattern}'` + }); + } + return result; + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/private/literal-string.ts +function lit(x) { + if (x.length !== 1) { + throw new AssumptionError("NotLiteral", `String literal may not contain any variables, got \`${x.join("${...}")}\``); + } + return x[0]; +} +var init_literal_string = __esm({ + "../../aws-cdk-lib/core/lib/private/literal-string.ts"() { + "use strict"; + init_errors(); + } +}); + +// ../../aws-cdk-lib/core/lib/private/runtime-info.ts +function constructInfoFromConstruct(construct) { + const jsiiRuntimeInfo = Object.getPrototypeOf(construct).constructor[JSII_RUNTIME_SYMBOL]; + if (typeof jsiiRuntimeInfo === "object" && jsiiRuntimeInfo !== null && typeof jsiiRuntimeInfo.fqn === "string" && typeof jsiiRuntimeInfo.version === "string") { + return { + fqn: jsiiRuntimeInfo.fqn, + version: jsiiRuntimeInfo.version + }; + } else if (jsiiRuntimeInfo) { + throw new AssumptionError(lit`MalformedJsiiRuntimeInfo`, `malformed jsii runtime info for construct: '${construct.node.path}'`); + } + return void 0; +} +var JSII_RUNTIME_SYMBOL; +var init_runtime_info = __esm({ + "../../aws-cdk-lib/core/lib/private/runtime-info.ts"() { + "use strict"; + init_errors(); + init_literal_string(); + JSII_RUNTIME_SYMBOL = /* @__PURE__ */ Symbol.for("jsii.rtti"); + } +}); + +// ../../aws-cdk-lib/core/lib/private/stack-trace.ts +function captureStackTrace(below = captureStackTrace, limit = void 0) { + if (!limit) { + return enhancedStackTrace(below, false); + } + const previousLimit = Error.stackTraceLimit; + try { + Error.stackTraceLimit = limit; + return enhancedStackTrace(below, false); + } finally { + Error.stackTraceLimit = previousLimit; + } +} +function enhancedStackTrace(upTo, indent = true) { + return withExternalTrace(renderCallStackJustMyCode(captureCallStack(upTo), indent)); +} +function withExternalTrace(internal) { + const hostTrace = global[/* @__PURE__ */ Symbol.for("jsii.context.hostStackTrace")]; + if (hostTrace != null) { + return internal.concat(hostTrace.slice(1).map(formatExternalFrame)); + } + return internal; +} +function captureCallStack(upTo) { + const obj = {}; + Error.captureStackTrace(obj, upTo); + let trace = parseErrorStack(obj.stack); + if (trace.length === 0) { + Error.captureStackTrace(obj); + trace = parseErrorStack(obj.stack); + } + return trace; +} +function formatExternalFrame(trace) { + const [filename, line, column, name] = trace; + return `${name} (${filename}:${line}${column > 0 ? ":" + column : ""})`; +} +function parseErrorStack(stack) { + const lines = stack.split("\n"); + const framePrefix = " at "; + return lines.filter((line) => line.startsWith(framePrefix)).map((line) => { + line = line.slice(framePrefix.length); + const frame = parseStackFrame(line); + if (frame.functionName === "Object.") { + frame.functionName = ""; + } + return frame; + }); +} +function parseStackFrame(frame) { + let fileName; + let functionName; + let sourceLocation; + const paren = frame.indexOf("("); + if (paren) { + functionName = frame.slice(0, paren - 1); + frame = frame.slice(paren + 1, -1); + } else { + functionName = ""; + } + let asI = functionName.indexOf(" [as "); + if (asI > -1) { + const endOfAlias = functionName.indexOf("]", asI); + const lastPeriod = functionName.lastIndexOf(".", asI); + functionName = functionName.slice(0, lastPeriod + 1) + functionName.slice(asI + 5, endOfAlias); + } + const m = frame.match(/(:[0-9]+){0,2}$/); + fileName = m ? frame.slice(0, -m[0].length) : frame; + sourceLocation = m ? m[0].slice(1) : ""; + return { + fileName, + functionName, + sourceLocation + }; +} +function renderCallStackJustMyCode(stack, indent = true) { + const lines = []; + let skipped = new Array(); + let sawMyCode = false; + let i = 0; + while (i < stack.length) { + const frame = stack[i++]; + if (frame.fileName.match(DECORATOR_RE)) { + continue; + } + const pat = frame.fileName.match(MODULE_RE); + if (pat) { + while (i < stack.length && stack[i].fileName.includes(pat[0])) { + i++; + } + skip({ functionName: stack[i - 1].functionName, fileName: pat[3] }); + } else if (frame.fileName.includes("node:")) { + skip({ fileName: "node internals" }); + while (i < stack.length && stack[i].fileName.includes("node:")) { + i++; + } + } else if (isHostInternalFrame(frame)) { + skip({ fileName: "jsii runtime" }); + while (i < stack.length && isHostInternalFrame(stack[i])) { + i++; + } + } else { + reportSkipped(true); + const prefix = indent ? " at " : ""; + lines.push(`${prefix}${frame.functionName} (${frame.fileName}:${frame.sourceLocation})`); + sawMyCode = true; + } + } + reportSkipped(false); + if (!sawMyCode) { + lines.push(`${indent ? " " : ""}(no user code in ${Error.stackTraceLimit} frames, use --stack-trace-limit to capture more)`); + } + return lines; + function skip(what) { + if (!skipped.find((x) => x.fileName === what.fileName && x.functionName === what.functionName)) { + skipped.push(what); + } + } + function reportSkipped(includeFunction) { + if (skipped.length > 0) { + const rendered = skipped.map((s, j) => ( + // Only render the function name of the last frame before user code + j === skipped.length - 1 && s.functionName && includeFunction ? `${s.functionName} in ${s.fileName}` : s.fileName + )); + const prefix = indent ? " " : ""; + lines.push(`${prefix}...${rendered.join(", ")}...`); + } + skipped = []; + } +} +function topUserFrame(stackTrace, frameFinder) { + for (const frame of stackTrace) { + if (frameFinder.isUserCodeFrame(frame)) { + return parseStackFrame(frame); + } + } + return void 0; +} +function isHostInternalFrame(frame) { + const hostDirName = global[/* @__PURE__ */ Symbol.for("jsii.context.hostDirName")]; + return frame.fileName.includes(hostDirName); +} +var MODULE_RE, DECORATOR_RE, DEFAULT_STACK_FRAME_FINDER; +var init_stack_trace = __esm({ + "../../aws-cdk-lib/core/lib/private/stack-trace.ts"() { + "use strict"; + MODULE_RE = /(\/|\\)node_modules(\/|\\)(@[^/\\]+[/\\][^/\\]+|[^@][^/\\]*)/; + DECORATOR_RE = /(\/|\\)(prop-injectable|no-box-stack-traces)\./; + DEFAULT_STACK_FRAME_FINDER = { + isUserCodeFrame(frame) { + return frame.includes(" (") && frame.endsWith(")"); + } + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js +var require_vpc = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VpcSubnetGroupType = void 0; + var VpcSubnetGroupType; + (function(VpcSubnetGroupType2) { + VpcSubnetGroupType2["PUBLIC"] = "Public"; + VpcSubnetGroupType2["PRIVATE"] = "Private"; + VpcSubnetGroupType2["ISOLATED"] = "Isolated"; + })(VpcSubnetGroupType || (exports2.VpcSubnetGroupType = VpcSubnetGroupType = {})); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js +var require_ami = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js +var require_load_balancer = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LoadBalancerIpAddressType = void 0; + var LoadBalancerIpAddressType; + (function(LoadBalancerIpAddressType2) { + LoadBalancerIpAddressType2["IPV4"] = "ipv4"; + LoadBalancerIpAddressType2["DUAL_STACK"] = "dualstack"; + LoadBalancerIpAddressType2["DUAL_STACK_WITHOUT_PUBLIC_IPV4"] = "dualstack-without-public-ipv4"; + })(LoadBalancerIpAddressType || (exports2.LoadBalancerIpAddressType = LoadBalancerIpAddressType = {})); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js +var require_availability_zones = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = void 0; + exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = "aws:cdk:availability-zones:fallback"; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js +var require_endpoint_service_availability_zones = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = void 0; + exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = "endpoint-service-availability-zones"; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js +var require_security_group = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js +var require_key = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js +var require_generic = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.PROVIDER_ERROR_KEY = void 0; + exports2.PROVIDER_ERROR_KEY = "$providerError"; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js +var require_schema = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ArtifactType = void 0; + var ArtifactType5; + (function(ArtifactType6) { + ArtifactType6["NONE"] = "none"; + ArtifactType6["AWS_CLOUDFORMATION_STACK"] = "aws:cloudformation:stack"; + ArtifactType6["CDK_TREE"] = "cdk:tree"; + ArtifactType6["ASSET_MANIFEST"] = "cdk:asset-manifest"; + ArtifactType6["NESTED_CLOUD_ASSEMBLY"] = "cdk:cloud-assembly"; + ArtifactType6["FEATURE_FLAG_REPORT"] = "cdk:feature-flag-report"; + })(ArtifactType5 || (exports2.ArtifactType = ArtifactType5 = {})); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js +var require_metadata_schema = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = exports2.ArtifactMetadataEntryType = void 0; + var ArtifactMetadataEntryType9; + (function(ArtifactMetadataEntryType10) { + ArtifactMetadataEntryType10["ASSET"] = "aws:cdk:asset"; + ArtifactMetadataEntryType10["INFO"] = "aws:cdk:info"; + ArtifactMetadataEntryType10["WARN"] = "aws:cdk:warning"; + ArtifactMetadataEntryType10["ERROR"] = "aws:cdk:error"; + ArtifactMetadataEntryType10["LOGICAL_ID"] = "aws:cdk:logicalId"; + ArtifactMetadataEntryType10["STACK_TAGS"] = "aws:cdk:stack-tags"; + ArtifactMetadataEntryType10["DO_NOT_REFACTOR"] = "aws:cdk:do-not-refactor"; + ArtifactMetadataEntryType10["CREATION_STACK"] = "aws:cdk:creationStack"; + ArtifactMetadataEntryType10["PROPERTY_ASSIGNMENT"] = "aws:cdk:propertyAssignment"; + })(ArtifactMetadataEntryType9 || (exports2.ArtifactMetadataEntryType = ArtifactMetadataEntryType9 = {})); + exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = "aws:cdk:cloudformation:type"; + exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = "aws:cdk:cloudformation:props"; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js +var require_artifact_schema = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js +var require_context_queries = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LoadBalancerListenerProtocol = exports2.LoadBalancerType = exports2.ContextProvider = void 0; + var ContextProvider3; + (function(ContextProvider4) { + ContextProvider4["AMI_PROVIDER"] = "ami"; + ContextProvider4["AVAILABILITY_ZONE_PROVIDER"] = "availability-zones"; + ContextProvider4["HOSTED_ZONE_PROVIDER"] = "hosted-zone"; + ContextProvider4["SSM_PARAMETER_PROVIDER"] = "ssm"; + ContextProvider4["VPC_PROVIDER"] = "vpc-provider"; + ContextProvider4["ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER"] = "endpoint-service-availability-zones"; + ContextProvider4["LOAD_BALANCER_PROVIDER"] = "load-balancer"; + ContextProvider4["LOAD_BALANCER_LISTENER_PROVIDER"] = "load-balancer-listener"; + ContextProvider4["SECURITY_GROUP_PROVIDER"] = "security-group"; + ContextProvider4["KEY_PROVIDER"] = "key-provider"; + ContextProvider4["CC_API_PROVIDER"] = "cc-api-provider"; + ContextProvider4["PLUGIN"] = "plugin"; + })(ContextProvider3 || (exports2.ContextProvider = ContextProvider3 = {})); + var LoadBalancerType; + (function(LoadBalancerType2) { + LoadBalancerType2["NETWORK"] = "network"; + LoadBalancerType2["APPLICATION"] = "application"; + })(LoadBalancerType || (exports2.LoadBalancerType = LoadBalancerType = {})); + var LoadBalancerListenerProtocol; + (function(LoadBalancerListenerProtocol2) { + LoadBalancerListenerProtocol2["HTTP"] = "HTTP"; + LoadBalancerListenerProtocol2["HTTPS"] = "HTTPS"; + LoadBalancerListenerProtocol2["TCP"] = "TCP"; + LoadBalancerListenerProtocol2["TLS"] = "TLS"; + LoadBalancerListenerProtocol2["UDP"] = "UDP"; + LoadBalancerListenerProtocol2["TCP_UDP"] = "TCP_UDP"; + })(LoadBalancerListenerProtocol || (exports2.LoadBalancerListenerProtocol = LoadBalancerListenerProtocol = {})); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js +var require_interfaces = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js +var require_validation_report_schema = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js +var require_cloud_assembly = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js"(exports2) { + "use strict"; + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar2(require_schema(), exports2); + __exportStar2(require_metadata_schema(), exports2); + __exportStar2(require_artifact_schema(), exports2); + __exportStar2(require_context_queries(), exports2); + __exportStar2(require_interfaces(), exports2); + __exportStar2(require_validation_report_schema(), exports2); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js +var require_schema2 = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js +var require_docker_image_asset = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js +var require_file_asset = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.FileAssetPackaging = void 0; + var FileAssetPackaging2; + (function(FileAssetPackaging3) { + FileAssetPackaging3["FILE"] = "file"; + FileAssetPackaging3["ZIP_DIRECTORY"] = "zip"; + })(FileAssetPackaging2 || (exports2.FileAssetPackaging = FileAssetPackaging2 = {})); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js +var require_aws_destination = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js +var require_assets = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js"(exports2) { + "use strict"; + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar2(require_schema2(), exports2); + __exportStar2(require_docker_image_asset(), exports2); + __exportStar2(require_file_asset(), exports2); + __exportStar2(require_aws_destination(), exports2); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js +var require_helpers = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js"(exports2, module2) { + "use strict"; + var ValidationError2 = exports2.ValidationError = function ValidationError3(message, instance, schema, path23, name, argument) { + if (Array.isArray(path23)) { + this.path = path23; + this.property = path23.reduce(function(sum, item) { + return sum + makeSuffix(item); + }, "instance"); + } else if (path23 !== void 0) { + this.property = path23; + } + if (message) { + this.message = message; + } + if (schema) { + var id = schema.$id || schema.id; + this.schema = id || schema; + } + if (instance !== void 0) { + this.instance = instance; + } + this.name = name; + this.argument = argument; + this.stack = this.toString(); + }; + ValidationError2.prototype.toString = function toString2() { + return this.property + " " + this.message; + }; + var ValidatorResult = exports2.ValidatorResult = function ValidatorResult2(instance, schema, options, ctx) { + this.instance = instance; + this.schema = schema; + this.options = options; + this.path = ctx.path; + this.propertyPath = ctx.propertyPath; + this.errors = []; + this.throwError = options && options.throwError; + this.throwFirst = options && options.throwFirst; + this.throwAll = options && options.throwAll; + this.disableFormat = options && options.disableFormat === true; + }; + ValidatorResult.prototype.addError = function addError(detail) { + var err; + if (typeof detail == "string") { + err = new ValidationError2(detail, this.instance, this.schema, this.path); + } else { + if (!detail) throw new Error("Missing error detail"); + if (!detail.message) throw new Error("Missing error message"); + if (!detail.name) throw new Error("Missing validator type"); + err = new ValidationError2(detail.message, this.instance, this.schema, this.path, detail.name, detail.argument); + } + this.errors.push(err); + if (this.throwFirst) { + throw new ValidatorResultError(this); + } else if (this.throwError) { + throw err; + } + return err; + }; + ValidatorResult.prototype.importErrors = function importErrors(res) { + if (typeof res == "string" || res && res.validatorType) { + this.addError(res); + } else if (res && res.errors) { + this.errors = this.errors.concat(res.errors); + } + }; + function stringizer(v, i) { + return i + ": " + v.toString() + "\n"; + } + ValidatorResult.prototype.toString = function toString2(res) { + return this.errors.map(stringizer).join(""); + }; + Object.defineProperty(ValidatorResult.prototype, "valid", { get: function() { + return !this.errors.length; + } }); + module2.exports.ValidatorResultError = ValidatorResultError; + function ValidatorResultError(result) { + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, ValidatorResultError); + } + this.instance = result.instance; + this.schema = result.schema; + this.options = result.options; + this.errors = result.errors; + } + ValidatorResultError.prototype = new Error(); + ValidatorResultError.prototype.constructor = ValidatorResultError; + ValidatorResultError.prototype.name = "Validation Error"; + var SchemaError = exports2.SchemaError = function SchemaError2(msg, schema) { + this.message = msg; + this.schema = schema; + Error.call(this, msg); + if (typeof Error.captureStackTrace === "function") { + Error.captureStackTrace(this, SchemaError2); + } + }; + SchemaError.prototype = Object.create( + Error.prototype, + { + constructor: { value: SchemaError, enumerable: false }, + name: { value: "SchemaError", enumerable: false } + } + ); + var SchemaContext = exports2.SchemaContext = function SchemaContext2(schema, options, path23, base, schemas) { + this.schema = schema; + this.options = options; + if (Array.isArray(path23)) { + this.path = path23; + this.propertyPath = path23.reduce(function(sum, item) { + return sum + makeSuffix(item); + }, "instance"); + } else { + this.propertyPath = path23; + } + this.base = base; + this.schemas = schemas; + }; + SchemaContext.prototype.resolve = function resolve6(target) { + return (() => resolveUrl(this.base, target))(); + }; + SchemaContext.prototype.makeChild = function makeChild(schema, propertyName) { + var path23 = propertyName === void 0 ? this.path : this.path.concat([propertyName]); + var id = schema.$id || schema.id; + let base = (() => resolveUrl(this.base, id || ""))(); + var ctx = new SchemaContext(schema, this.options, path23, base, Object.create(this.schemas)); + if (id && !ctx.schemas[base]) { + ctx.schemas[base] = schema; + } + return ctx; + }; + var FORMAT_REGEXPS = exports2.FORMAT_REGEXPS = { + // 7.3.1. Dates, Times, and Duration + "date-time": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])[tT ](2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])(\.\d+)?([zZ]|[+-]([0-5][0-9]):(60|[0-5][0-9]))$/, + "date": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])$/, + "time": /^(2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])$/, + "duration": /P(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S)|\d+(D|M(\d+D)?|Y(\d+M(\d+D)?)?)(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S))?|\d+W)/i, + // 7.3.2. Email Addresses + // TODO: fix the email production + "email": /^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/, + "idn-email": /^("(?:[!#-\[\]-\u{10FFFF}]|\\[\t -\u{10FFFF}])*"|[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*)@([!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*|\[[!-Z\^-\u{10FFFF}]*\])$/u, + // 7.3.3. Hostnames + // 7.3.4. IP Addresses + "ip-address": /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/, + // FIXME whitespace is invalid + "ipv6": /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/, + // 7.3.5. Resource Identifiers + // TODO: A more accurate regular expression for "uri" goes: + // [A-Za-z][+\-.0-9A-Za-z]*:((/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?)?#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])|/?%[0-9A-Fa-f]{2}|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*(#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?)? + "uri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/, + "uri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/, + "iri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/, + "iri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~-\u{10FFFF}]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~-\u{10FFFF}])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/u, + "uuid": /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i, + // 7.3.6. uri-template + "uri-template": /(%[0-9a-f]{2}|[!#$&(-;=?@\[\]_a-z~]|\{[!#&+,./;=?@|]?(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?(,(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?)*\})*/iu, + // 7.3.7. JSON Pointers + "json-pointer": /^(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*$/iu, + "relative-json-pointer": /^\d+(#|(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*)$/iu, + // hostname regex from: http://stackoverflow.com/a/1420225/5628 + "hostname": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/, + "host-name": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/, + "utc-millisec": function(input) { + return typeof input === "string" && parseFloat(input) === parseInt(input, 10) && !isNaN(input); + }, + // 7.3.8. regex + "regex": function(input) { + var result = true; + try { + new RegExp(input); + } catch (e) { + result = false; + } + return result; + }, + // Other definitions + // "style" was removed from JSON Schema in draft-4 and is deprecated + "style": /[\r\n\t ]*[^\r\n\t ][^:]*:[\r\n\t ]*[^\r\n\t ;]*[\r\n\t ]*;?/, + // "color" was removed from JSON Schema in draft-4 and is deprecated + "color": /^(#?([0-9A-Fa-f]{3}){1,2}\b|aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|(rgb\(\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*\))|(rgb\(\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*\)))$/, + "phone": /^\+(?:[0-9] ?){6,14}[0-9]$/, + "alpha": /^[a-zA-Z]+$/, + "alphanumeric": /^[a-zA-Z0-9]+$/ + }; + FORMAT_REGEXPS.regexp = FORMAT_REGEXPS.regex; + FORMAT_REGEXPS.pattern = FORMAT_REGEXPS.regex; + FORMAT_REGEXPS.ipv4 = FORMAT_REGEXPS["ip-address"]; + exports2.isFormat = function isFormat(input, format, validator) { + if (typeof input === "string" && FORMAT_REGEXPS[format] !== void 0) { + if (FORMAT_REGEXPS[format] instanceof RegExp) { + return FORMAT_REGEXPS[format].test(input); + } + if (typeof FORMAT_REGEXPS[format] === "function") { + return FORMAT_REGEXPS[format](input); + } + } else if (validator && validator.customFormats && typeof validator.customFormats[format] === "function") { + return validator.customFormats[format](input); + } + return true; + }; + var makeSuffix = exports2.makeSuffix = function makeSuffix2(key) { + key = key.toString(); + if (!key.match(/[.\s\[\]]/) && !key.match(/^[\d]/)) { + return "." + key; + } + if (key.match(/^\d+$/)) { + return "[" + key + "]"; + } + return "[" + JSON.stringify(key) + "]"; + }; + exports2.deepCompareStrict = function deepCompareStrict(a, b) { + if (typeof a !== typeof b) { + return false; + } + if (Array.isArray(a)) { + if (!Array.isArray(b)) { + return false; + } + if (a.length !== b.length) { + return false; + } + return a.every(function(v, i) { + return deepCompareStrict(a[i], b[i]); + }); + } + if (typeof a === "object") { + if (!a || !b) { + return a === b; + } + var aKeys = Object.keys(a); + var bKeys = Object.keys(b); + if (aKeys.length !== bKeys.length) { + return false; + } + return aKeys.every(function(v) { + return deepCompareStrict(a[v], b[v]); + }); + } + return a === b; + }; + function deepMerger(target, dst, e, i) { + if (typeof e === "object") { + dst[i] = deepMerge2(target[i], e); + } else { + if (target.indexOf(e) === -1) { + dst.push(e); + } + } + } + function copyist(src, dst, key) { + dst[key] = src[key]; + } + function copyistWithDeepMerge(target, src, dst, key) { + if (typeof src[key] !== "object" || !src[key]) { + dst[key] = src[key]; + } else { + if (!target[key]) { + dst[key] = src[key]; + } else { + dst[key] = deepMerge2(target[key], src[key]); + } + } + } + function deepMerge2(target, src) { + var array = Array.isArray(src); + var dst = array && [] || {}; + if (array) { + target = target || []; + dst = dst.concat(target); + src.forEach(deepMerger.bind(null, target, dst)); + } else { + if (target && typeof target === "object") { + Object.keys(target).forEach(copyist.bind(null, target, dst)); + } + Object.keys(src).forEach(copyistWithDeepMerge.bind(null, target, src, dst)); + } + return dst; + } + module2.exports.deepMerge = deepMerge2; + exports2.objectGetPath = function objectGetPath(o, s) { + var parts = s.split("/").slice(1); + var k; + while (typeof (k = parts.shift()) == "string") { + var n = decodeURIComponent(k.replace(/~0/, "~").replace(/~1/g, "/")); + if (!(n in o)) return; + o = o[n]; + } + return o; + }; + function pathEncoder(v) { + return "/" + encodeURIComponent(v).replace(/~/g, "%7E"); + } + exports2.encodePath = function encodePointer(a) { + return a.map(pathEncoder).join(""); + }; + exports2.getDecimalPlaces = function getDecimalPlaces(number) { + var decimalPlaces = 0; + if (isNaN(number)) return decimalPlaces; + if (typeof number !== "number") { + number = Number(number); + } + var parts = number.toString().split("e"); + if (parts.length === 2) { + if (parts[1][0] !== "-") { + return decimalPlaces; + } else { + decimalPlaces = Number(parts[1].slice(1)); + } + } + var decimalParts = parts[0].split("."); + if (decimalParts.length === 2) { + decimalPlaces += decimalParts[1].length; + } + return decimalPlaces; + }; + exports2.isSchema = function isSchema(val2) { + return typeof val2 === "object" && val2 || typeof val2 === "boolean"; + }; + var resolveUrl = exports2.resolveUrl = function resolveUrl2(from, to) { + const resolvedUrl = new URL(to, new URL(from, "resolve://")); + if (resolvedUrl.protocol === "resolve:") { + const { pathname, search, hash } = resolvedUrl; + return pathname + search + hash; + } + return resolvedUrl.toString(); + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js +var require_attribute = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js"(exports2, module2) { + "use strict"; + var helpers = require_helpers(); + var ValidatorResult = helpers.ValidatorResult; + var SchemaError = helpers.SchemaError; + var attribute = {}; + attribute.ignoreProperties = { + // informative properties + "id": true, + "default": true, + "description": true, + "title": true, + // arguments to other properties + "additionalItems": true, + "then": true, + "else": true, + // special-handled properties + "$schema": true, + "$ref": true, + "extends": true + }; + var validators = attribute.validators = {}; + validators.type = function validateType(instance, schema, options, ctx) { + if (instance === void 0) { + return null; + } + var result = new ValidatorResult(instance, schema, options, ctx); + var types2 = Array.isArray(schema.type) ? schema.type : [schema.type]; + if (!types2.some(this.testType.bind(this, instance, schema, options, ctx))) { + var list = types2.map(function(v) { + if (!v) return; + var id = v.$id || v.id; + return id ? "<" + id + ">" : v + ""; + }); + result.addError({ + name: "type", + argument: list, + message: "is not of a type(s) " + list + }); + } + return result; + }; + function testSchemaNoThrow(instance, options, ctx, callback, schema) { + var throwError = options.throwError; + var throwAll = options.throwAll; + options.throwError = false; + options.throwAll = false; + var res = this.validateSchema(instance, schema, options, ctx); + options.throwError = throwError; + options.throwAll = throwAll; + if (!res.valid && callback instanceof Function) { + callback(res); + } + return res.valid; + } + validators.anyOf = function validateAnyOf(instance, schema, options, ctx) { + if (instance === void 0) { + return null; + } + var result = new ValidatorResult(instance, schema, options, ctx); + var inner = new ValidatorResult(instance, schema, options, ctx); + if (!Array.isArray(schema.anyOf)) { + throw new SchemaError("anyOf must be an array"); + } + if (!schema.anyOf.some( + testSchemaNoThrow.bind( + this, + instance, + options, + ctx, + function(res) { + inner.importErrors(res); + } + ) + )) { + var list = schema.anyOf.map(function(v, i) { + var id = v.$id || v.id; + if (id) return "<" + id + ">"; + return v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]"; + }); + if (options.nestedErrors) { + result.importErrors(inner); + } + result.addError({ + name: "anyOf", + argument: list, + message: "is not any of " + list.join(",") + }); + } + return result; + }; + validators.allOf = function validateAllOf(instance, schema, options, ctx) { + if (instance === void 0) { + return null; + } + if (!Array.isArray(schema.allOf)) { + throw new SchemaError("allOf must be an array"); + } + var result = new ValidatorResult(instance, schema, options, ctx); + var self2 = this; + schema.allOf.forEach(function(v, i) { + var valid = self2.validateSchema(instance, v, options, ctx); + if (!valid.valid) { + var id = v.$id || v.id; + var msg = id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]"; + result.addError({ + name: "allOf", + argument: { id: msg, length: valid.errors.length, valid }, + message: "does not match allOf schema " + msg + " with " + valid.errors.length + " error[s]:" + }); + result.importErrors(valid); + } + }); + return result; + }; + validators.oneOf = function validateOneOf(instance, schema, options, ctx) { + if (instance === void 0) { + return null; + } + if (!Array.isArray(schema.oneOf)) { + throw new SchemaError("oneOf must be an array"); + } + var result = new ValidatorResult(instance, schema, options, ctx); + var inner = new ValidatorResult(instance, schema, options, ctx); + var count2 = schema.oneOf.filter( + testSchemaNoThrow.bind( + this, + instance, + options, + ctx, + function(res) { + inner.importErrors(res); + } + ) + ).length; + var list = schema.oneOf.map(function(v, i) { + var id = v.$id || v.id; + return id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]"; + }); + if (count2 !== 1) { + if (options.nestedErrors) { + result.importErrors(inner); + } + result.addError({ + name: "oneOf", + argument: list, + message: "is not exactly one from " + list.join(",") + }); + } + return result; + }; + validators.if = function validateIf(instance, schema, options, ctx) { + if (instance === void 0) return null; + if (!helpers.isSchema(schema.if)) throw new Error('Expected "if" keyword to be a schema'); + var ifValid = testSchemaNoThrow.call(this, instance, options, ctx, null, schema.if); + var result = new ValidatorResult(instance, schema, options, ctx); + var res; + if (ifValid) { + if (schema.then === void 0) return; + if (!helpers.isSchema(schema.then)) throw new Error('Expected "then" keyword to be a schema'); + res = this.validateSchema(instance, schema.then, options, ctx.makeChild(schema.then)); + result.importErrors(res); + } else { + if (schema.else === void 0) return; + if (!helpers.isSchema(schema.else)) throw new Error('Expected "else" keyword to be a schema'); + res = this.validateSchema(instance, schema.else, options, ctx.makeChild(schema.else)); + result.importErrors(res); + } + return result; + }; + function getEnumerableProperty(object, key) { + if (Object.hasOwnProperty.call(object, key)) return object[key]; + if (!(key in object)) return; + while (object = Object.getPrototypeOf(object)) { + if (Object.propertyIsEnumerable.call(object, key)) return object[key]; + } + } + validators.propertyNames = function validatePropertyNames(instance, schema, options, ctx) { + if (!this.types.object(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var subschema = schema.propertyNames !== void 0 ? schema.propertyNames : {}; + if (!helpers.isSchema(subschema)) throw new SchemaError('Expected "propertyNames" to be a schema (object or boolean)'); + for (var property in instance) { + if (getEnumerableProperty(instance, property) !== void 0) { + var res = this.validateSchema(property, subschema, options, ctx.makeChild(subschema)); + result.importErrors(res); + } + } + return result; + }; + validators.properties = function validateProperties(instance, schema, options, ctx) { + if (!this.types.object(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var properties = schema.properties || {}; + for (var property in properties) { + var subschema = properties[property]; + if (subschema === void 0) { + continue; + } else if (subschema === null) { + throw new SchemaError('Unexpected null, expected schema in "properties"'); + } + if (typeof options.preValidateProperty == "function") { + options.preValidateProperty(instance, property, subschema, options, ctx); + } + var prop = getEnumerableProperty(instance, property); + var res = this.validateSchema(prop, subschema, options, ctx.makeChild(subschema, property)); + if (res.instance !== result.instance[property]) result.instance[property] = res.instance; + result.importErrors(res); + } + return result; + }; + function testAdditionalProperty(instance, schema, options, ctx, property, result) { + if (!this.types.object(instance)) return; + if (schema.properties && schema.properties[property] !== void 0) { + return; + } + if (schema.additionalProperties === false) { + result.addError({ + name: "additionalProperties", + argument: property, + message: "is not allowed to have the additional property " + JSON.stringify(property) + }); + } else { + var additionalProperties = schema.additionalProperties || {}; + if (typeof options.preValidateProperty == "function") { + options.preValidateProperty(instance, property, additionalProperties, options, ctx); + } + var res = this.validateSchema(instance[property], additionalProperties, options, ctx.makeChild(additionalProperties, property)); + if (res.instance !== result.instance[property]) result.instance[property] = res.instance; + result.importErrors(res); + } + } + validators.patternProperties = function validatePatternProperties(instance, schema, options, ctx) { + if (!this.types.object(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var patternProperties = schema.patternProperties || {}; + for (var property in instance) { + var test = true; + for (var pattern in patternProperties) { + var subschema = patternProperties[pattern]; + if (subschema === void 0) { + continue; + } else if (subschema === null) { + throw new SchemaError('Unexpected null, expected schema in "patternProperties"'); + } + try { + var regexp = new RegExp(pattern, "u"); + } catch (_e) { + regexp = new RegExp(pattern); + } + if (!regexp.test(property)) { + continue; + } + test = false; + if (typeof options.preValidateProperty == "function") { + options.preValidateProperty(instance, property, subschema, options, ctx); + } + var res = this.validateSchema(instance[property], subschema, options, ctx.makeChild(subschema, property)); + if (res.instance !== result.instance[property]) result.instance[property] = res.instance; + result.importErrors(res); + } + if (test) { + testAdditionalProperty.call(this, instance, schema, options, ctx, property, result); + } + } + return result; + }; + validators.additionalProperties = function validateAdditionalProperties(instance, schema, options, ctx) { + if (!this.types.object(instance)) return; + if (schema.patternProperties) { + return null; + } + var result = new ValidatorResult(instance, schema, options, ctx); + for (var property in instance) { + testAdditionalProperty.call(this, instance, schema, options, ctx, property, result); + } + return result; + }; + validators.minProperties = function validateMinProperties(instance, schema, options, ctx) { + if (!this.types.object(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var keys = Object.keys(instance); + if (!(keys.length >= schema.minProperties)) { + result.addError({ + name: "minProperties", + argument: schema.minProperties, + message: "does not meet minimum property length of " + schema.minProperties + }); + } + return result; + }; + validators.maxProperties = function validateMaxProperties(instance, schema, options, ctx) { + if (!this.types.object(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var keys = Object.keys(instance); + if (!(keys.length <= schema.maxProperties)) { + result.addError({ + name: "maxProperties", + argument: schema.maxProperties, + message: "does not meet maximum property length of " + schema.maxProperties + }); + } + return result; + }; + validators.items = function validateItems(instance, schema, options, ctx) { + var self2 = this; + if (!this.types.array(instance)) return; + if (schema.items === void 0) return; + var result = new ValidatorResult(instance, schema, options, ctx); + instance.every(function(value, i) { + if (Array.isArray(schema.items)) { + var items = schema.items[i] === void 0 ? schema.additionalItems : schema.items[i]; + } else { + var items = schema.items; + } + if (items === void 0) { + return true; + } + if (items === false) { + result.addError({ + name: "items", + message: "additionalItems not permitted" + }); + return false; + } + var res = self2.validateSchema(value, items, options, ctx.makeChild(items, i)); + if (res.instance !== result.instance[i]) result.instance[i] = res.instance; + result.importErrors(res); + return true; + }); + return result; + }; + validators.contains = function validateContains(instance, schema, options, ctx) { + var self2 = this; + if (!this.types.array(instance)) return; + if (schema.contains === void 0) return; + if (!helpers.isSchema(schema.contains)) throw new Error('Expected "contains" keyword to be a schema'); + var result = new ValidatorResult(instance, schema, options, ctx); + var count2 = instance.some(function(value, i) { + var res = self2.validateSchema(value, schema.contains, options, ctx.makeChild(schema.contains, i)); + return res.errors.length === 0; + }); + if (count2 === false) { + result.addError({ + name: "contains", + argument: schema.contains, + message: "must contain an item matching given schema" + }); + } + return result; + }; + validators.minimum = function validateMinimum(instance, schema, options, ctx) { + if (!this.types.number(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + if (schema.exclusiveMinimum && schema.exclusiveMinimum === true) { + if (!(instance > schema.minimum)) { + result.addError({ + name: "minimum", + argument: schema.minimum, + message: "must be greater than " + schema.minimum + }); + } + } else { + if (!(instance >= schema.minimum)) { + result.addError({ + name: "minimum", + argument: schema.minimum, + message: "must be greater than or equal to " + schema.minimum + }); + } + } + return result; + }; + validators.maximum = function validateMaximum(instance, schema, options, ctx) { + if (!this.types.number(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + if (schema.exclusiveMaximum && schema.exclusiveMaximum === true) { + if (!(instance < schema.maximum)) { + result.addError({ + name: "maximum", + argument: schema.maximum, + message: "must be less than " + schema.maximum + }); + } + } else { + if (!(instance <= schema.maximum)) { + result.addError({ + name: "maximum", + argument: schema.maximum, + message: "must be less than or equal to " + schema.maximum + }); + } + } + return result; + }; + validators.exclusiveMinimum = function validateExclusiveMinimum(instance, schema, options, ctx) { + if (typeof schema.exclusiveMinimum === "boolean") return; + if (!this.types.number(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var valid = instance > schema.exclusiveMinimum; + if (!valid) { + result.addError({ + name: "exclusiveMinimum", + argument: schema.exclusiveMinimum, + message: "must be strictly greater than " + schema.exclusiveMinimum + }); + } + return result; + }; + validators.exclusiveMaximum = function validateExclusiveMaximum(instance, schema, options, ctx) { + if (typeof schema.exclusiveMaximum === "boolean") return; + if (!this.types.number(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var valid = instance < schema.exclusiveMaximum; + if (!valid) { + result.addError({ + name: "exclusiveMaximum", + argument: schema.exclusiveMaximum, + message: "must be strictly less than " + schema.exclusiveMaximum + }); + } + return result; + }; + var validateMultipleOfOrDivisbleBy = function validateMultipleOfOrDivisbleBy2(instance, schema, options, ctx, validationType, errorMessage) { + if (!this.types.number(instance)) return; + var validationArgument = schema[validationType]; + if (validationArgument == 0) { + throw new SchemaError(validationType + " cannot be zero"); + } + var result = new ValidatorResult(instance, schema, options, ctx); + var instanceDecimals = helpers.getDecimalPlaces(instance); + var divisorDecimals = helpers.getDecimalPlaces(validationArgument); + var maxDecimals = Math.max(instanceDecimals, divisorDecimals); + var multiplier = Math.pow(10, maxDecimals); + if (Math.round(instance * multiplier) % Math.round(validationArgument * multiplier) !== 0) { + result.addError({ + name: validationType, + argument: validationArgument, + message: errorMessage + JSON.stringify(validationArgument) + }); + } + return result; + }; + validators.multipleOf = function validateMultipleOf(instance, schema, options, ctx) { + return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "multipleOf", "is not a multiple of (divisible by) "); + }; + validators.divisibleBy = function validateDivisibleBy(instance, schema, options, ctx) { + return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "divisibleBy", "is not divisible by (multiple of) "); + }; + validators.required = function validateRequired(instance, schema, options, ctx) { + var result = new ValidatorResult(instance, schema, options, ctx); + if (instance === void 0 && schema.required === true) { + result.addError({ + name: "required", + message: "is required" + }); + } else if (this.types.object(instance) && Array.isArray(schema.required)) { + schema.required.forEach(function(n) { + if (getEnumerableProperty(instance, n) === void 0) { + result.addError({ + name: "required", + argument: n, + message: "requires property " + JSON.stringify(n) + }); + } + }); + } + return result; + }; + validators.pattern = function validatePattern(instance, schema, options, ctx) { + if (!this.types.string(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var pattern = schema.pattern; + try { + var regexp = new RegExp(pattern, "u"); + } catch (_e) { + regexp = new RegExp(pattern); + } + if (!instance.match(regexp)) { + result.addError({ + name: "pattern", + argument: schema.pattern, + message: "does not match pattern " + JSON.stringify(schema.pattern.toString()) + }); + } + return result; + }; + validators.format = function validateFormat(instance, schema, options, ctx) { + if (instance === void 0) return; + var result = new ValidatorResult(instance, schema, options, ctx); + if (!result.disableFormat && !helpers.isFormat(instance, schema.format, this)) { + result.addError({ + name: "format", + argument: schema.format, + message: "does not conform to the " + JSON.stringify(schema.format) + " format" + }); + } + return result; + }; + validators.minLength = function validateMinLength(instance, schema, options, ctx) { + if (!this.types.string(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var hsp = instance.match(/[\uDC00-\uDFFF]/g); + var length = instance.length - (hsp ? hsp.length : 0); + if (!(length >= schema.minLength)) { + result.addError({ + name: "minLength", + argument: schema.minLength, + message: "does not meet minimum length of " + schema.minLength + }); + } + return result; + }; + validators.maxLength = function validateMaxLength(instance, schema, options, ctx) { + if (!this.types.string(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + var hsp = instance.match(/[\uDC00-\uDFFF]/g); + var length = instance.length - (hsp ? hsp.length : 0); + if (!(length <= schema.maxLength)) { + result.addError({ + name: "maxLength", + argument: schema.maxLength, + message: "does not meet maximum length of " + schema.maxLength + }); + } + return result; + }; + validators.minItems = function validateMinItems(instance, schema, options, ctx) { + if (!this.types.array(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + if (!(instance.length >= schema.minItems)) { + result.addError({ + name: "minItems", + argument: schema.minItems, + message: "does not meet minimum length of " + schema.minItems + }); + } + return result; + }; + validators.maxItems = function validateMaxItems(instance, schema, options, ctx) { + if (!this.types.array(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + if (!(instance.length <= schema.maxItems)) { + result.addError({ + name: "maxItems", + argument: schema.maxItems, + message: "does not meet maximum length of " + schema.maxItems + }); + } + return result; + }; + function testArrays(v, i, a) { + var j, len = a.length; + for (j = i + 1, len; j < len; j++) { + if (helpers.deepCompareStrict(v, a[j])) { + return false; + } + } + return true; + } + validators.uniqueItems = function validateUniqueItems(instance, schema, options, ctx) { + if (schema.uniqueItems !== true) return; + if (!this.types.array(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + if (!instance.every(testArrays)) { + result.addError({ + name: "uniqueItems", + message: "contains duplicate item" + }); + } + return result; + }; + validators.dependencies = function validateDependencies(instance, schema, options, ctx) { + if (!this.types.object(instance)) return; + var result = new ValidatorResult(instance, schema, options, ctx); + for (var property in schema.dependencies) { + if (instance[property] === void 0) { + continue; + } + var dep = schema.dependencies[property]; + var childContext = ctx.makeChild(dep, property); + if (typeof dep == "string") { + dep = [dep]; + } + if (Array.isArray(dep)) { + dep.forEach(function(prop) { + if (instance[prop] === void 0) { + result.addError({ + // FIXME there's two different "dependencies" errors here with slightly different outputs + // Can we make these the same? Or should we create different error types? + name: "dependencies", + argument: childContext.propertyPath, + message: "property " + prop + " not found, required by " + childContext.propertyPath + }); + } + }); + } else { + var res = this.validateSchema(instance, dep, options, childContext); + if (result.instance !== res.instance) result.instance = res.instance; + if (res && res.errors.length) { + result.addError({ + name: "dependencies", + argument: childContext.propertyPath, + message: "does not meet dependency required by " + childContext.propertyPath + }); + result.importErrors(res); + } + } + } + return result; + }; + validators["enum"] = function validateEnum(instance, schema, options, ctx) { + if (instance === void 0) { + return null; + } + if (!Array.isArray(schema["enum"])) { + throw new SchemaError("enum expects an array", schema); + } + var result = new ValidatorResult(instance, schema, options, ctx); + if (!schema["enum"].some(helpers.deepCompareStrict.bind(null, instance))) { + result.addError({ + name: "enum", + argument: schema["enum"], + message: "is not one of enum values: " + schema["enum"].map(String).join(",") + }); + } + return result; + }; + validators["const"] = function validateEnum(instance, schema, options, ctx) { + if (instance === void 0) { + return null; + } + var result = new ValidatorResult(instance, schema, options, ctx); + if (!helpers.deepCompareStrict(schema["const"], instance)) { + result.addError({ + name: "const", + argument: schema["const"], + message: "does not exactly match expected constant: " + schema["const"] + }); + } + return result; + }; + validators.not = validators.disallow = function validateNot(instance, schema, options, ctx) { + var self2 = this; + if (instance === void 0) return null; + var result = new ValidatorResult(instance, schema, options, ctx); + var notTypes = schema.not || schema.disallow; + if (!notTypes) return null; + if (!Array.isArray(notTypes)) notTypes = [notTypes]; + notTypes.forEach(function(type) { + if (self2.testType(instance, schema, options, ctx, type)) { + var id = type && (type.$id || type.id); + var schemaId = id || type; + result.addError({ + name: "not", + argument: schemaId, + message: "is of prohibited type " + schemaId + }); + } + }); + return result; + }; + module2.exports = attribute; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js +var require_scan = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js"(exports2, module2) { + "use strict"; + var helpers = require_helpers(); + module2.exports.SchemaScanResult = SchemaScanResult; + function SchemaScanResult(found, ref) { + this.id = found; + this.ref = ref; + } + module2.exports.scan = function scan(base, schema) { + function scanSchema(baseuri, schema2) { + if (!schema2 || typeof schema2 != "object") return; + if (schema2.$ref) { + let resolvedUri = helpers.resolveUrl(baseuri, schema2.$ref); + ref[resolvedUri] = ref[resolvedUri] ? ref[resolvedUri] + 1 : 0; + return; + } + var id = schema2.$id || schema2.id; + let resolvedBase = helpers.resolveUrl(baseuri, id); + var ourBase = id ? resolvedBase : baseuri; + if (ourBase) { + if (ourBase.indexOf("#") < 0) ourBase += "#"; + if (found[ourBase]) { + if (!helpers.deepCompareStrict(found[ourBase], schema2)) { + throw new Error("Schema <" + ourBase + "> already exists with different definition"); + } + return found[ourBase]; + } + found[ourBase] = schema2; + if (ourBase[ourBase.length - 1] == "#") { + found[ourBase.substring(0, ourBase.length - 1)] = schema2; + } + } + scanArray(ourBase + "/items", Array.isArray(schema2.items) ? schema2.items : [schema2.items]); + scanArray(ourBase + "/extends", Array.isArray(schema2.extends) ? schema2.extends : [schema2.extends]); + scanSchema(ourBase + "/additionalItems", schema2.additionalItems); + scanObject(ourBase + "/properties", schema2.properties); + scanSchema(ourBase + "/additionalProperties", schema2.additionalProperties); + scanObject(ourBase + "/definitions", schema2.definitions); + scanObject(ourBase + "/patternProperties", schema2.patternProperties); + scanObject(ourBase + "/dependencies", schema2.dependencies); + scanArray(ourBase + "/disallow", schema2.disallow); + scanArray(ourBase + "/allOf", schema2.allOf); + scanArray(ourBase + "/anyOf", schema2.anyOf); + scanArray(ourBase + "/oneOf", schema2.oneOf); + scanSchema(ourBase + "/not", schema2.not); + } + function scanArray(baseuri, schemas) { + if (!Array.isArray(schemas)) return; + for (var i = 0; i < schemas.length; i++) { + scanSchema(baseuri + "/" + i, schemas[i]); + } + } + function scanObject(baseuri, schemas) { + if (!schemas || typeof schemas != "object") return; + for (var p in schemas) { + scanSchema(baseuri + "/" + p, schemas[p]); + } + } + var found = {}; + var ref = {}; + scanSchema(base, schema); + return new SchemaScanResult(found, ref); + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js +var require_validator = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js"(exports2, module2) { + "use strict"; + var attribute = require_attribute(); + var helpers = require_helpers(); + var scanSchema = require_scan().scan; + var ValidatorResult = helpers.ValidatorResult; + var ValidatorResultError = helpers.ValidatorResultError; + var SchemaError = helpers.SchemaError; + var SchemaContext = helpers.SchemaContext; + var anonymousBase = "/"; + var Validator = function Validator2() { + this.customFormats = Object.create(Validator2.prototype.customFormats); + this.schemas = {}; + this.unresolvedRefs = []; + this.types = Object.create(types2); + this.attributes = Object.create(attribute.validators); + }; + Validator.prototype.customFormats = {}; + Validator.prototype.schemas = null; + Validator.prototype.types = null; + Validator.prototype.attributes = null; + Validator.prototype.unresolvedRefs = null; + Validator.prototype.addSchema = function addSchema(schema, base) { + var self2 = this; + if (!schema) { + return null; + } + var scan = scanSchema(base || anonymousBase, schema); + var ourUri = base || schema.$id || schema.id; + for (var uri in scan.id) { + this.schemas[uri] = scan.id[uri]; + } + for (var uri in scan.ref) { + this.unresolvedRefs.push(uri); + } + this.unresolvedRefs = this.unresolvedRefs.filter(function(uri2) { + return typeof self2.schemas[uri2] === "undefined"; + }); + return this.schemas[ourUri]; + }; + Validator.prototype.addSubSchemaArray = function addSubSchemaArray(baseuri, schemas) { + if (!Array.isArray(schemas)) return; + for (var i = 0; i < schemas.length; i++) { + this.addSubSchema(baseuri, schemas[i]); + } + }; + Validator.prototype.addSubSchemaObject = function addSubSchemaArray(baseuri, schemas) { + if (!schemas || typeof schemas != "object") return; + for (var p in schemas) { + this.addSubSchema(baseuri, schemas[p]); + } + }; + Validator.prototype.setSchemas = function setSchemas(schemas) { + this.schemas = schemas; + }; + Validator.prototype.getSchema = function getSchema(urn) { + return this.schemas[urn]; + }; + Validator.prototype.validate = function validate2(instance, schema, options, ctx) { + if (typeof schema !== "boolean" && typeof schema !== "object" || schema === null) { + throw new SchemaError("Expected `schema` to be an object or boolean"); + } + if (!options) { + options = {}; + } + var id = schema.$id || schema.id; + let base = helpers.resolveUrl(options.base, id || ""); + if (!ctx) { + ctx = new SchemaContext(schema, options, [], base, Object.create(this.schemas)); + if (!ctx.schemas[base]) { + ctx.schemas[base] = schema; + } + var found = scanSchema(base, schema); + for (var n in found.id) { + var sch = found.id[n]; + ctx.schemas[n] = sch; + } + } + if (options.required && instance === void 0) { + var result = new ValidatorResult(instance, schema, options, ctx); + result.addError("is required, but is undefined"); + return result; + } + var result = this.validateSchema(instance, schema, options, ctx); + if (!result) { + throw new Error("Result undefined"); + } else if (options.throwAll && result.errors.length) { + throw new ValidatorResultError(result); + } + return result; + }; + function shouldResolve(schema) { + var ref = typeof schema === "string" ? schema : schema.$ref; + if (typeof ref == "string") return ref; + return false; + } + Validator.prototype.validateSchema = function validateSchema(instance, schema, options, ctx) { + var result = new ValidatorResult(instance, schema, options, ctx); + if (typeof schema === "boolean") { + if (schema === true) { + schema = {}; + } else if (schema === false) { + schema = { type: [] }; + } + } else if (!schema) { + throw new Error("schema is undefined"); + } + if (schema["extends"]) { + if (Array.isArray(schema["extends"])) { + var schemaobj = { schema, ctx }; + schema["extends"].forEach(this.schemaTraverser.bind(this, schemaobj)); + schema = schemaobj.schema; + schemaobj.schema = null; + schemaobj.ctx = null; + schemaobj = null; + } else { + schema = helpers.deepMerge(schema, this.superResolve(schema["extends"], ctx)); + } + } + var switchSchema = shouldResolve(schema); + if (switchSchema) { + var resolved = this.resolve(schema, switchSchema, ctx); + var subctx = new SchemaContext(resolved.subschema, options, ctx.path, resolved.switchSchema, ctx.schemas); + return this.validateSchema(instance, resolved.subschema, options, subctx); + } + var skipAttributes = options && options.skipAttributes || []; + for (var key in schema) { + if (!attribute.ignoreProperties[key] && skipAttributes.indexOf(key) < 0) { + var validatorErr = null; + var validator = this.attributes[key]; + if (validator) { + validatorErr = validator.call(this, instance, schema, options, ctx); + } else if (options.allowUnknownAttributes === false) { + throw new SchemaError("Unsupported attribute: " + key, schema); + } + if (validatorErr) { + result.importErrors(validatorErr); + } + } + } + if (typeof options.rewrite == "function") { + var value = options.rewrite.call(this, instance, schema, options, ctx); + result.instance = value; + } + return result; + }; + Validator.prototype.schemaTraverser = function schemaTraverser(schemaobj, s) { + schemaobj.schema = helpers.deepMerge(schemaobj.schema, this.superResolve(s, schemaobj.ctx)); + }; + Validator.prototype.superResolve = function superResolve(schema, ctx) { + var ref = shouldResolve(schema); + if (ref) { + return this.resolve(schema, ref, ctx).subschema; + } + return schema; + }; + Validator.prototype.resolve = function resolve6(schema, switchSchema, ctx) { + switchSchema = ctx.resolve(switchSchema); + if (ctx.schemas[switchSchema]) { + return { subschema: ctx.schemas[switchSchema], switchSchema }; + } + let hashIndex = switchSchema.indexOf("#"); + let fragment = hashIndex === -1 || hashIndex === switchSchema.length - 1 ? "" : switchSchema.substr(hashIndex); + var document = fragment && fragment.length && switchSchema.substr(0, switchSchema.length - fragment.length); + if (!document || !ctx.schemas[document]) { + throw new SchemaError("no such schema <" + switchSchema + ">", schema); + } + var subschema = helpers.objectGetPath(ctx.schemas[document], fragment.substr(1)); + if (subschema === void 0) { + throw new SchemaError("no such schema " + fragment + " located in <" + document + ">", schema); + } + return { subschema, switchSchema }; + }; + Validator.prototype.testType = function validateType(instance, schema, options, ctx, type) { + if (type === void 0) { + return; + } else if (type === null) { + throw new SchemaError('Unexpected null in "type" keyword'); + } + if (typeof this.types[type] == "function") { + return this.types[type].call(this, instance); + } + if (type && typeof type == "object") { + var res = this.validateSchema(instance, type, options, ctx); + return res === void 0 || !(res && res.errors.length); + } + return true; + }; + var types2 = Validator.prototype.types = {}; + types2.string = function testString(instance) { + return typeof instance == "string"; + }; + types2.number = function testNumber(instance) { + return typeof instance == "number" && isFinite(instance); + }; + types2.integer = function testInteger(instance) { + return typeof instance == "number" && instance % 1 === 0; + }; + types2.boolean = function testBoolean(instance) { + return typeof instance == "boolean"; + }; + types2.array = function testArray(instance) { + return Array.isArray(instance); + }; + types2["null"] = function testNull(instance) { + return instance === null; + }; + types2.date = function testDate(instance) { + return instance instanceof Date; + }; + types2.any = function testAny(instance) { + return true; + }; + types2.object = function testObject(instance) { + return instance && typeof instance === "object" && !Array.isArray(instance) && !(instance instanceof Date); + }; + module2.exports = Validator; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js +var require_lib = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js"(exports2, module2) { + "use strict"; + var Validator = module2.exports.Validator = require_validator(); + module2.exports.ValidatorResult = require_helpers().ValidatorResult; + module2.exports.ValidatorResultError = require_helpers().ValidatorResultError; + module2.exports.ValidationError = require_helpers().ValidationError; + module2.exports.SchemaError = require_helpers().SchemaError; + module2.exports.SchemaScanResult = require_scan().SchemaScanResult; + module2.exports.scan = require_scan().scan; + module2.exports.validate = function(instance, schema, options) { + var v = new Validator(); + return v.validate(instance, schema, options); + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js +var require_constants = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js"(exports2, module2) { + "use strict"; + var SEMVER_SPEC_VERSION = "2.0.0"; + var MAX_LENGTH = 256; + var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */ + 9007199254740991; + var MAX_SAFE_COMPONENT_LENGTH = 16; + var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6; + var RELEASE_TYPES = [ + "major", + "premajor", + "minor", + "preminor", + "patch", + "prepatch", + "prerelease" + ]; + module2.exports = { + MAX_LENGTH, + MAX_SAFE_COMPONENT_LENGTH, + MAX_SAFE_BUILD_LENGTH, + MAX_SAFE_INTEGER, + RELEASE_TYPES, + SEMVER_SPEC_VERSION, + FLAG_INCLUDE_PRERELEASE: 1, + FLAG_LOOSE: 2 + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js +var require_debug = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js"(exports2, module2) { + "use strict"; + var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => { + }; + module2.exports = debug; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js +var require_re = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js"(exports2, module2) { + "use strict"; + var { + MAX_SAFE_COMPONENT_LENGTH, + MAX_SAFE_BUILD_LENGTH, + MAX_LENGTH + } = require_constants(); + var debug = require_debug(); + exports2 = module2.exports = {}; + var re = exports2.re = []; + var safeRe = exports2.safeRe = []; + var src = exports2.src = []; + var safeSrc = exports2.safeSrc = []; + var t = exports2.t = {}; + var R = 0; + var LETTERDASHNUMBER = "[a-zA-Z0-9-]"; + var safeRegexReplacements = [ + ["\\s", 1], + ["\\d", MAX_LENGTH], + [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH] + ]; + var makeSafeRegex = (value) => { + for (const [token, max] of safeRegexReplacements) { + value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`); + } + return value; + }; + var createToken = (name, value, isGlobal) => { + const safe = makeSafeRegex(value); + const index = R++; + debug(name, index, value); + t[name] = index; + src[index] = value; + safeSrc[index] = safe; + re[index] = new RegExp(value, isGlobal ? "g" : void 0); + safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0); + }; + createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*"); + createToken("NUMERICIDENTIFIERLOOSE", "\\d+"); + createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`); + createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`); + createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`); + createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIER]})`); + createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIERLOOSE]})`); + createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`); + createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`); + createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`); + createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`); + createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`); + createToken("FULL", `^${src[t.FULLPLAIN]}$`); + createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`); + createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`); + createToken("GTLT", "((?:<|>)?=?)"); + createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`); + createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`); + createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`); + createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`); + createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`); + createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`); + createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`); + createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`); + createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?(?:${src[t.BUILD]})?(?:$|[^\\d])`); + createToken("COERCERTL", src[t.COERCE], true); + createToken("COERCERTLFULL", src[t.COERCEFULL], true); + createToken("LONETILDE", "(?:~>?)"); + createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true); + exports2.tildeTrimReplace = "$1~"; + createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`); + createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`); + createToken("LONECARET", "(?:\\^)"); + createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true); + exports2.caretTrimReplace = "$1^"; + createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`); + createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`); + createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`); + createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`); + createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true); + exports2.comparatorTrimReplace = "$1$2$3"; + createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`); + createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`); + createToken("STAR", "(<|>)?=?\\s*\\*"); + createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$"); + createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$"); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js +var require_parse_options = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js"(exports2, module2) { + "use strict"; + var looseOption = Object.freeze({ loose: true }); + var emptyOpts = Object.freeze({}); + var parseOptions = (options) => { + if (!options) { + return emptyOpts; + } + if (typeof options !== "object") { + return looseOption; + } + return options; + }; + module2.exports = parseOptions; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js +var require_identifiers = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js"(exports2, module2) { + "use strict"; + var numeric = /^[0-9]+$/; + var compareIdentifiers = (a, b) => { + if (typeof a === "number" && typeof b === "number") { + return a === b ? 0 : a < b ? -1 : 1; + } + const anum = numeric.test(a); + const bnum = numeric.test(b); + if (anum && bnum) { + a = +a; + b = +b; + } + return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1; + }; + var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a); + module2.exports = { + compareIdentifiers, + rcompareIdentifiers + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js +var require_semver = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js"(exports2, module2) { + "use strict"; + var debug = require_debug(); + var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants(); + var { safeRe: re, t } = require_re(); + var parseOptions = require_parse_options(); + var { compareIdentifiers } = require_identifiers(); + var isPrereleaseIdentifier = (prerelease, identifier) => { + const identifiers = identifier.split("."); + if (identifiers.length > prerelease.length) { + return false; + } + for (let i = 0; i < identifiers.length; i++) { + if (compareIdentifiers(prerelease[i], identifiers[i]) !== 0) { + return false; + } + } + return true; + }; + var SemVer = class _SemVer { + constructor(version3, options) { + options = parseOptions(options); + if (version3 instanceof _SemVer) { + if (version3.loose === !!options.loose && version3.includePrerelease === !!options.includePrerelease) { + return version3; + } else { + version3 = version3.version; + } + } else if (typeof version3 !== "string") { + throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version3}".`); + } + if (version3.length > MAX_LENGTH) { + throw new TypeError( + `version is longer than ${MAX_LENGTH} characters` + ); + } + debug("SemVer", version3, options); + this.options = options; + this.loose = !!options.loose; + this.includePrerelease = !!options.includePrerelease; + const m = version3.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]); + if (!m) { + throw new TypeError(`Invalid Version: ${version3}`); + } + this.raw = version3; + this.major = +m[1]; + this.minor = +m[2]; + this.patch = +m[3]; + if (this.major > MAX_SAFE_INTEGER || this.major < 0) { + throw new TypeError("Invalid major version"); + } + if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { + throw new TypeError("Invalid minor version"); + } + if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { + throw new TypeError("Invalid patch version"); + } + if (!m[4]) { + this.prerelease = []; + } else { + this.prerelease = m[4].split(".").map((id) => { + if (/^[0-9]+$/.test(id)) { + const num = +id; + if (num >= 0 && num < MAX_SAFE_INTEGER) { + return num; + } + } + return id; + }); + } + this.build = m[5] ? m[5].split(".") : []; + this.format(); + } + format() { + this.version = `${this.major}.${this.minor}.${this.patch}`; + if (this.prerelease.length) { + this.version += `-${this.prerelease.join(".")}`; + } + return this.version; + } + toString() { + return this.version; + } + compare(other) { + debug("SemVer.compare", this.version, this.options, other); + if (!(other instanceof _SemVer)) { + if (typeof other === "string" && other === this.version) { + return 0; + } + other = new _SemVer(other, this.options); + } + if (other.version === this.version) { + return 0; + } + return this.compareMain(other) || this.comparePre(other); + } + compareMain(other) { + if (!(other instanceof _SemVer)) { + other = new _SemVer(other, this.options); + } + if (this.major < other.major) { + return -1; + } + if (this.major > other.major) { + return 1; + } + if (this.minor < other.minor) { + return -1; + } + if (this.minor > other.minor) { + return 1; + } + if (this.patch < other.patch) { + return -1; + } + if (this.patch > other.patch) { + return 1; + } + return 0; + } + comparePre(other) { + if (!(other instanceof _SemVer)) { + other = new _SemVer(other, this.options); + } + if (this.prerelease.length && !other.prerelease.length) { + return -1; + } else if (!this.prerelease.length && other.prerelease.length) { + return 1; + } else if (!this.prerelease.length && !other.prerelease.length) { + return 0; + } + let i = 0; + do { + const a = this.prerelease[i]; + const b = other.prerelease[i]; + debug("prerelease compare", i, a, b); + if (a === void 0 && b === void 0) { + return 0; + } else if (b === void 0) { + return 1; + } else if (a === void 0) { + return -1; + } else if (a === b) { + continue; + } else { + return compareIdentifiers(a, b); + } + } while (++i); + } + compareBuild(other) { + if (!(other instanceof _SemVer)) { + other = new _SemVer(other, this.options); + } + let i = 0; + do { + const a = this.build[i]; + const b = other.build[i]; + debug("build compare", i, a, b); + if (a === void 0 && b === void 0) { + return 0; + } else if (b === void 0) { + return 1; + } else if (a === void 0) { + return -1; + } else if (a === b) { + continue; + } else { + return compareIdentifiers(a, b); + } + } while (++i); + } + // preminor will bump the version up to the next minor release, and immediately + // down to pre-release. premajor and prepatch work the same way. + inc(release, identifier, identifierBase) { + if (release.startsWith("pre")) { + if (!identifier && identifierBase === false) { + throw new Error("invalid increment argument: identifier is empty"); + } + if (identifier) { + const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]); + if (!match || match[1] !== identifier) { + throw new Error(`invalid identifier: ${identifier}`); + } + } + } + switch (release) { + case "premajor": + this.prerelease.length = 0; + this.patch = 0; + this.minor = 0; + this.major++; + this.inc("pre", identifier, identifierBase); + break; + case "preminor": + this.prerelease.length = 0; + this.patch = 0; + this.minor++; + this.inc("pre", identifier, identifierBase); + break; + case "prepatch": + this.prerelease.length = 0; + this.inc("patch", identifier, identifierBase); + this.inc("pre", identifier, identifierBase); + break; + // If the input is a non-prerelease version, this acts the same as + // prepatch. + case "prerelease": + if (this.prerelease.length === 0) { + this.inc("patch", identifier, identifierBase); + } + this.inc("pre", identifier, identifierBase); + break; + case "release": + if (this.prerelease.length === 0) { + throw new Error(`version ${this.raw} is not a prerelease`); + } + this.prerelease.length = 0; + break; + case "major": + if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { + this.major++; + } + this.minor = 0; + this.patch = 0; + this.prerelease = []; + break; + case "minor": + if (this.patch !== 0 || this.prerelease.length === 0) { + this.minor++; + } + this.patch = 0; + this.prerelease = []; + break; + case "patch": + if (this.prerelease.length === 0) { + this.patch++; + } + this.prerelease = []; + break; + // This probably shouldn't be used publicly. + // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction. + case "pre": { + const base = Number(identifierBase) ? 1 : 0; + if (this.prerelease.length === 0) { + this.prerelease = [base]; + } else { + let i = this.prerelease.length; + while (--i >= 0) { + if (typeof this.prerelease[i] === "number") { + this.prerelease[i]++; + i = -2; + } + } + if (i === -1) { + if (identifier === this.prerelease.join(".") && identifierBase === false) { + throw new Error("invalid increment argument: identifier already exists"); + } + this.prerelease.push(base); + } + } + if (identifier) { + let prerelease = [identifier, base]; + if (identifierBase === false) { + prerelease = [identifier]; + } + if (isPrereleaseIdentifier(this.prerelease, identifier)) { + const prereleaseBase = this.prerelease[identifier.split(".").length]; + if (isNaN(prereleaseBase)) { + this.prerelease = prerelease; + } + } else { + this.prerelease = prerelease; + } + } + break; + } + default: + throw new Error(`invalid increment argument: ${release}`); + } + this.raw = this.format(); + if (this.build.length) { + this.raw += `+${this.build.join(".")}`; + } + return this; + } + }; + module2.exports = SemVer; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js +var require_parse = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var parse3 = (version3, options, throwErrors = false) => { + if (version3 instanceof SemVer) { + return version3; + } + try { + return new SemVer(version3, options); + } catch (er) { + if (!throwErrors) { + return null; + } + throw er; + } + }; + module2.exports = parse3; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js +var require_valid = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js"(exports2, module2) { + "use strict"; + var parse3 = require_parse(); + var valid = (version3, options) => { + const v = parse3(version3, options); + return v ? v.version : null; + }; + module2.exports = valid; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js +var require_clean = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js"(exports2, module2) { + "use strict"; + var parse3 = require_parse(); + var clean = (version3, options) => { + const s = parse3(version3.trim().replace(/^[=v]+/, ""), options); + return s ? s.version : null; + }; + module2.exports = clean; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js +var require_inc = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var inc = (version3, release, options, identifier, identifierBase) => { + if (typeof options === "string") { + identifierBase = identifier; + identifier = options; + options = void 0; + } + try { + return new SemVer( + version3 instanceof SemVer ? version3.version : version3, + options + ).inc(release, identifier, identifierBase).version; + } catch (er) { + return null; + } + }; + module2.exports = inc; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js +var require_diff = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js"(exports2, module2) { + "use strict"; + var parse3 = require_parse(); + var diff = (version1, version22) => { + const v12 = parse3(version1, null, true); + const v2 = parse3(version22, null, true); + const comparison = v12.compare(v2); + if (comparison === 0) { + return null; + } + const v1Higher = comparison > 0; + const highVersion = v1Higher ? v12 : v2; + const lowVersion = v1Higher ? v2 : v12; + const highHasPre = !!highVersion.prerelease.length; + const lowHasPre = !!lowVersion.prerelease.length; + if (lowHasPre && !highHasPre) { + if (!lowVersion.patch && !lowVersion.minor) { + return "major"; + } + if (lowVersion.compareMain(highVersion) === 0) { + if (lowVersion.minor && !lowVersion.patch) { + return "minor"; + } + return "patch"; + } + } + const prefix = highHasPre ? "pre" : ""; + if (v12.major !== v2.major) { + return prefix + "major"; + } + if (v12.minor !== v2.minor) { + return prefix + "minor"; + } + if (v12.patch !== v2.patch) { + return prefix + "patch"; + } + return "prerelease"; + }; + module2.exports = diff; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js +var require_major = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var major = (a, loose) => new SemVer(a, loose).major; + module2.exports = major; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js +var require_minor = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var minor = (a, loose) => new SemVer(a, loose).minor; + module2.exports = minor; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js +var require_patch = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var patch = (a, loose) => new SemVer(a, loose).patch; + module2.exports = patch; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js +var require_prerelease = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js"(exports2, module2) { + "use strict"; + var parse3 = require_parse(); + var prerelease = (version3, options) => { + const parsed = parse3(version3, options); + return parsed && parsed.prerelease.length ? parsed.prerelease : null; + }; + module2.exports = prerelease; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js +var require_compare = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose)); + module2.exports = compare; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js +var require_rcompare = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js"(exports2, module2) { + "use strict"; + var compare = require_compare(); + var rcompare = (a, b, loose) => compare(b, a, loose); + module2.exports = rcompare; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js +var require_compare_loose = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js"(exports2, module2) { + "use strict"; + var compare = require_compare(); + var compareLoose = (a, b) => compare(a, b, true); + module2.exports = compareLoose; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js +var require_compare_build = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var compareBuild = (a, b, loose) => { + const versionA = new SemVer(a, loose); + const versionB = new SemVer(b, loose); + return versionA.compare(versionB) || versionA.compareBuild(versionB); + }; + module2.exports = compareBuild; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js +var require_sort = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js"(exports2, module2) { + "use strict"; + var compareBuild = require_compare_build(); + var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose)); + module2.exports = sort; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js +var require_rsort = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js"(exports2, module2) { + "use strict"; + var compareBuild = require_compare_build(); + var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose)); + module2.exports = rsort; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js +var require_gt = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js"(exports2, module2) { + "use strict"; + var compare = require_compare(); + var gt = (a, b, loose) => compare(a, b, loose) > 0; + module2.exports = gt; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js +var require_lt = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js"(exports2, module2) { + "use strict"; + var compare = require_compare(); + var lt = (a, b, loose) => compare(a, b, loose) < 0; + module2.exports = lt; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js +var require_eq = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js"(exports2, module2) { + "use strict"; + var compare = require_compare(); + var eq = (a, b, loose) => compare(a, b, loose) === 0; + module2.exports = eq; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js +var require_neq = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js"(exports2, module2) { + "use strict"; + var compare = require_compare(); + var neq = (a, b, loose) => compare(a, b, loose) !== 0; + module2.exports = neq; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js +var require_gte = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js"(exports2, module2) { + "use strict"; + var compare = require_compare(); + var gte = (a, b, loose) => compare(a, b, loose) >= 0; + module2.exports = gte; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js +var require_lte = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js"(exports2, module2) { + "use strict"; + var compare = require_compare(); + var lte = (a, b, loose) => compare(a, b, loose) <= 0; + module2.exports = lte; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js +var require_cmp = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js"(exports2, module2) { + "use strict"; + var eq = require_eq(); + var neq = require_neq(); + var gt = require_gt(); + var gte = require_gte(); + var lt = require_lt(); + var lte = require_lte(); + var cmp = (a, op, b, loose) => { + switch (op) { + case "===": + if (typeof a === "object") { + a = a.version; + } + if (typeof b === "object") { + b = b.version; + } + return a === b; + case "!==": + if (typeof a === "object") { + a = a.version; + } + if (typeof b === "object") { + b = b.version; + } + return a !== b; + case "": + case "=": + case "==": + return eq(a, b, loose); + case "!=": + return neq(a, b, loose); + case ">": + return gt(a, b, loose); + case ">=": + return gte(a, b, loose); + case "<": + return lt(a, b, loose); + case "<=": + return lte(a, b, loose); + default: + throw new TypeError(`Invalid operator: ${op}`); + } + }; + module2.exports = cmp; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js +var require_coerce = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var parse3 = require_parse(); + var { safeRe: re, t } = require_re(); + var coerce = (version3, options) => { + if (version3 instanceof SemVer) { + return version3; + } + if (typeof version3 === "number") { + version3 = String(version3); + } + if (typeof version3 !== "string") { + return null; + } + options = options || {}; + let match = null; + if (!options.rtl) { + match = version3.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]); + } else { + const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL]; + let next; + while ((next = coerceRtlRegex.exec(version3)) && (!match || match.index + match[0].length !== version3.length)) { + if (!match || next.index + next[0].length !== match.index + match[0].length) { + match = next; + } + coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length; + } + coerceRtlRegex.lastIndex = -1; + } + if (match === null) { + return null; + } + const major = match[2]; + const minor = match[3] || "0"; + const patch = match[4] || "0"; + const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : ""; + const build = options.includePrerelease && match[6] ? `+${match[6]}` : ""; + return parse3(`${major}.${minor}.${patch}${prerelease}${build}`, options); + }; + module2.exports = coerce; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js +var require_truncate = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js"(exports2, module2) { + "use strict"; + var parse3 = require_parse(); + var constants2 = require_constants(); + var SemVer = require_semver(); + var truncate = (version3, truncation, options) => { + if (!constants2.RELEASE_TYPES.includes(truncation)) { + return null; + } + const clonedVersion = cloneInputVersion(version3, options); + return clonedVersion && doTruncation(clonedVersion, truncation); + }; + var cloneInputVersion = (version3, options) => { + const versionStringToParse = version3 instanceof SemVer ? version3.version : version3; + return parse3(versionStringToParse, options); + }; + var doTruncation = (version3, truncation) => { + if (isPrerelease(truncation)) { + return version3.version; + } + version3.prerelease = []; + switch (truncation) { + case "major": + version3.minor = 0; + version3.patch = 0; + break; + case "minor": + version3.patch = 0; + break; + } + return version3.format(); + }; + var isPrerelease = (type) => { + return type.startsWith("pre"); + }; + module2.exports = truncate; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js +var require_lrucache = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js"(exports2, module2) { + "use strict"; + var LRUCache = class { + constructor() { + this.max = 1e3; + this.map = /* @__PURE__ */ new Map(); + } + get(key) { + const value = this.map.get(key); + if (value === void 0) { + return void 0; + } else { + this.map.delete(key); + this.map.set(key, value); + return value; + } + } + delete(key) { + return this.map.delete(key); + } + set(key, value) { + const deleted = this.delete(key); + if (!deleted && value !== void 0) { + if (this.map.size >= this.max) { + const firstKey = this.map.keys().next().value; + this.delete(firstKey); + } + this.map.set(key, value); + } + return this; + } + }; + module2.exports = LRUCache; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js +var require_range = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js"(exports2, module2) { + "use strict"; + var SPACE_CHARACTERS = /\s+/g; + var Range = class _Range { + constructor(range4, options) { + options = parseOptions(options); + if (range4 instanceof _Range) { + if (range4.loose === !!options.loose && range4.includePrerelease === !!options.includePrerelease) { + return range4; + } else { + return new _Range(range4.raw, options); + } + } + if (range4 instanceof Comparator) { + this.raw = range4.value; + this.set = [[range4]]; + this.formatted = void 0; + return this; + } + this.options = options; + this.loose = !!options.loose; + this.includePrerelease = !!options.includePrerelease; + this.raw = range4.trim().replace(SPACE_CHARACTERS, " "); + this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length); + if (!this.set.length) { + throw new TypeError(`Invalid SemVer Range: ${this.raw}`); + } + if (this.set.length > 1) { + const first = this.set[0]; + this.set = this.set.filter((c) => !isNullSet(c[0])); + if (this.set.length === 0) { + this.set = [first]; + } else if (this.set.length > 1) { + for (const c of this.set) { + if (c.length === 1 && isAny(c[0])) { + this.set = [c]; + break; + } + } + } + } + this.formatted = void 0; + } + get range() { + if (this.formatted === void 0) { + this.formatted = ""; + for (let i = 0; i < this.set.length; i++) { + if (i > 0) { + this.formatted += "||"; + } + const comps = this.set[i]; + for (let k = 0; k < comps.length; k++) { + if (k > 0) { + this.formatted += " "; + } + this.formatted += comps[k].toString().trim(); + } + } + } + return this.formatted; + } + format() { + return this.range; + } + toString() { + return this.range; + } + parseRange(range4) { + range4 = range4.replace(BUILDSTRIPRE, ""); + const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE); + const memoKey = memoOpts + ":" + range4; + const cached = cache.get(memoKey); + if (cached) { + return cached; + } + const loose = this.options.loose; + const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]; + range4 = range4.replace(hr, hyphenReplace(this.options.includePrerelease)); + debug("hyphen replace", range4); + range4 = range4.replace(re[t.COMPARATORTRIM], comparatorTrimReplace); + debug("comparator trim", range4); + range4 = range4.replace(re[t.TILDETRIM], tildeTrimReplace); + debug("tilde trim", range4); + range4 = range4.replace(re[t.CARETTRIM], caretTrimReplace); + debug("caret trim", range4); + let rangeList = range4.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options)); + if (loose) { + rangeList = rangeList.filter((comp) => { + debug("loose invalid filter", comp, this.options); + return !!comp.match(re[t.COMPARATORLOOSE]); + }); + } + debug("range list", rangeList); + const rangeMap = /* @__PURE__ */ new Map(); + const comparators = rangeList.map((comp) => new Comparator(comp, this.options)); + for (const comp of comparators) { + if (isNullSet(comp)) { + return [comp]; + } + rangeMap.set(comp.value, comp); + } + if (rangeMap.size > 1 && rangeMap.has("")) { + rangeMap.delete(""); + } + const result = [...rangeMap.values()]; + cache.set(memoKey, result); + return result; + } + intersects(range4, options) { + if (!(range4 instanceof _Range)) { + throw new TypeError("a Range is required"); + } + return this.set.some((thisComparators) => { + return isSatisfiable(thisComparators, options) && range4.set.some((rangeComparators) => { + return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => { + return rangeComparators.every((rangeComparator) => { + return thisComparator.intersects(rangeComparator, options); + }); + }); + }); + }); + } + // if ANY of the sets match ALL of its comparators, then pass + test(version3) { + if (!version3) { + return false; + } + if (typeof version3 === "string") { + try { + version3 = new SemVer(version3, this.options); + } catch (er) { + return false; + } + } + for (let i = 0; i < this.set.length; i++) { + if (testSet(this.set[i], version3, this.options)) { + return true; + } + } + return false; + } + }; + module2.exports = Range; + var LRU = require_lrucache(); + var cache = new LRU(); + var parseOptions = require_parse_options(); + var Comparator = require_comparator(); + var debug = require_debug(); + var SemVer = require_semver(); + var { + safeRe: re, + src, + t, + comparatorTrimReplace, + tildeTrimReplace, + caretTrimReplace + } = require_re(); + var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants(); + var BUILDSTRIPRE = new RegExp(src[t.BUILD], "g"); + var isNullSet = (c) => c.value === "<0.0.0-0"; + var isAny = (c) => c.value === ""; + var isSatisfiable = (comparators, options) => { + let result = true; + const remainingComparators = comparators.slice(); + let testComparator = remainingComparators.pop(); + while (result && remainingComparators.length) { + result = remainingComparators.every((otherComparator) => { + return testComparator.intersects(otherComparator, options); + }); + testComparator = remainingComparators.pop(); + } + return result; + }; + var parseComparator = (comp, options) => { + comp = comp.replace(re[t.BUILD], ""); + debug("comp", comp, options); + comp = replaceCarets(comp, options); + debug("caret", comp); + comp = replaceTildes(comp, options); + debug("tildes", comp); + comp = replaceXRanges(comp, options); + debug("xrange", comp); + comp = replaceStars(comp, options); + debug("stars", comp); + return comp; + }; + var isX = (id) => !id || id.toLowerCase() === "x" || id === "*"; + var invalidXRangeOrder = (M, m, p) => isX(M) && !isX(m) || isX(m) && p && !isX(p); + var replaceTildes = (comp, options) => { + return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" "); + }; + var replaceTilde = (comp, options) => { + const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]; + const z = options.includePrerelease ? "-0" : ""; + return comp.replace(r, (_, M, m, p, pr) => { + debug("tilde", comp, _, M, m, p, pr); + let ret; + if (isX(M)) { + ret = ""; + } else if (isX(m)) { + ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`; + } else if (isX(p)) { + ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`; + } else if (pr) { + debug("replaceTilde pr", pr); + ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; + } else { + ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`; + } + debug("tilde return", ret); + return ret; + }); + }; + var replaceCarets = (comp, options) => { + return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" "); + }; + var replaceCaret = (comp, options) => { + debug("caret", comp, options); + const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]; + const z = options.includePrerelease ? "-0" : ""; + return comp.replace(r, (_, M, m, p, pr) => { + debug("caret", comp, _, M, m, p, pr); + let ret; + if (isX(M)) { + ret = ""; + } else if (isX(m)) { + ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`; + } else if (isX(p)) { + if (M === "0") { + ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`; + } else { + ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`; + } + } else if (pr) { + debug("replaceCaret pr", pr); + if (M === "0") { + if (m === "0") { + ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`; + } else { + ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; + } + } else { + ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`; + } + } else { + debug("no pr"); + if (M === "0") { + if (m === "0") { + ret = `>=${M}.${m}.${p} <${M}.${m}.${+p + 1}-0`; + } else { + ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`; + } + } else { + ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`; + } + } + debug("caret return", ret); + return ret; + }); + }; + var replaceXRanges = (comp, options) => { + debug("replaceXRanges", comp, options); + return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" "); + }; + var replaceXRange = (comp, options) => { + comp = comp.trim(); + const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]; + return comp.replace(r, (ret, gtlt, M, m, p, pr) => { + debug("xRange", comp, ret, gtlt, M, m, p, pr); + if (invalidXRangeOrder(M, m, p)) { + return comp; + } + const xM = isX(M); + const xm = xM || isX(m); + const xp = xm || isX(p); + const anyX = xp; + if (gtlt === "=" && anyX) { + gtlt = ""; + } + pr = options.includePrerelease ? "-0" : ""; + if (xM) { + if (gtlt === ">" || gtlt === "<") { + ret = "<0.0.0-0"; + } else { + ret = "*"; + } + } else if (gtlt && anyX) { + if (xm) { + m = 0; + } + p = 0; + if (gtlt === ">") { + gtlt = ">="; + if (xm) { + M = +M + 1; + m = 0; + p = 0; + } else { + m = +m + 1; + p = 0; + } + } else if (gtlt === "<=") { + gtlt = "<"; + if (xm) { + M = +M + 1; + } else { + m = +m + 1; + } + } + if (gtlt === "<") { + pr = "-0"; + } + ret = `${gtlt + M}.${m}.${p}${pr}`; + } else if (xm) { + ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`; + } else if (xp) { + ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`; + } + debug("xRange return", ret); + return ret; + }); + }; + var replaceStars = (comp, options) => { + debug("replaceStars", comp, options); + return comp.trim().replace(re[t.STAR], ""); + }; + var replaceGTE0 = (comp, options) => { + debug("replaceGTE0", comp, options); + return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], ""); + }; + var hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => { + if (isX(fM)) { + from = ""; + } else if (isX(fm)) { + from = `>=${fM}.0.0${incPr ? "-0" : ""}`; + } else if (isX(fp)) { + from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`; + } else if (fpr) { + from = `>=${from}`; + } else { + from = `>=${from}${incPr ? "-0" : ""}`; + } + if (isX(tM)) { + to = ""; + } else if (isX(tm)) { + to = `<${+tM + 1}.0.0-0`; + } else if (isX(tp)) { + to = `<${tM}.${+tm + 1}.0-0`; + } else if (tpr) { + to = `<=${tM}.${tm}.${tp}-${tpr}`; + } else if (incPr) { + to = `<${tM}.${tm}.${+tp + 1}-0`; + } else { + to = `<=${to}`; + } + return `${from} ${to}`.trim(); + }; + var testSet = (set, version3, options) => { + for (let i = 0; i < set.length; i++) { + if (!set[i].test(version3)) { + return false; + } + } + if (version3.prerelease.length && !options.includePrerelease) { + for (let i = 0; i < set.length; i++) { + debug(set[i].semver); + if (set[i].semver === Comparator.ANY) { + continue; + } + if (set[i].semver.prerelease.length > 0) { + const allowed = set[i].semver; + if (allowed.major === version3.major && allowed.minor === version3.minor && allowed.patch === version3.patch) { + return true; + } + } + } + return false; + } + return true; + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js +var require_comparator = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js"(exports2, module2) { + "use strict"; + var ANY = /* @__PURE__ */ Symbol("SemVer ANY"); + var Comparator = class _Comparator { + static get ANY() { + return ANY; + } + constructor(comp, options) { + options = parseOptions(options); + if (comp instanceof _Comparator) { + if (comp.loose === !!options.loose) { + return comp; + } else { + comp = comp.value; + } + } + comp = comp.trim().split(/\s+/).join(" "); + debug("comparator", comp, options); + this.options = options; + this.loose = !!options.loose; + this.parse(comp); + if (this.semver === ANY) { + this.value = ""; + } else { + this.value = this.operator + this.semver.version; + } + debug("comp", this); + } + parse(comp) { + const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]; + const m = comp.match(r); + if (!m) { + throw new TypeError(`Invalid comparator: ${comp}`); + } + this.operator = m[1] !== void 0 ? m[1] : ""; + if (this.operator === "=") { + this.operator = ""; + } + if (!m[2]) { + this.semver = ANY; + } else { + this.semver = new SemVer(m[2], this.options.loose); + } + } + toString() { + return this.value; + } + test(version3) { + debug("Comparator.test", version3, this.options.loose); + if (this.semver === ANY || version3 === ANY) { + return true; + } + if (typeof version3 === "string") { + try { + version3 = new SemVer(version3, this.options); + } catch (er) { + return false; + } + } + return cmp(version3, this.operator, this.semver, this.options); + } + intersects(comp, options) { + if (!(comp instanceof _Comparator)) { + throw new TypeError("a Comparator is required"); + } + if (this.operator === "") { + if (this.value === "") { + return true; + } + return new Range(comp.value, options).test(this.value); + } else if (comp.operator === "") { + if (comp.value === "") { + return true; + } + return new Range(this.value, options).test(comp.semver); + } + options = parseOptions(options); + if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) { + return false; + } + if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) { + return false; + } + if (this.operator.startsWith(">") && comp.operator.startsWith(">")) { + return true; + } + if (this.operator.startsWith("<") && comp.operator.startsWith("<")) { + return true; + } + if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) { + return true; + } + if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) { + return true; + } + if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) { + return true; + } + return false; + } + }; + module2.exports = Comparator; + var parseOptions = require_parse_options(); + var { safeRe: re, t } = require_re(); + var cmp = require_cmp(); + var debug = require_debug(); + var SemVer = require_semver(); + var Range = require_range(); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js +var require_satisfies = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js"(exports2, module2) { + "use strict"; + var Range = require_range(); + var satisfies = (version3, range4, options) => { + try { + range4 = new Range(range4, options); + } catch (er) { + return false; + } + return range4.test(version3); + }; + module2.exports = satisfies; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js +var require_to_comparators = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js"(exports2, module2) { + "use strict"; + var Range = require_range(); + var toComparators = (range4, options) => new Range(range4, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" ")); + module2.exports = toComparators; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js +var require_max_satisfying = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var Range = require_range(); + var maxSatisfying = (versions, range4, options) => { + let max = null; + let maxSV = null; + let rangeObj = null; + try { + rangeObj = new Range(range4, options); + } catch (er) { + return null; + } + versions.forEach((v) => { + if (rangeObj.test(v)) { + if (!max || maxSV.compare(v) === -1) { + max = v; + maxSV = new SemVer(max, options); + } + } + }); + return max; + }; + module2.exports = maxSatisfying; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js +var require_min_satisfying = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var Range = require_range(); + var minSatisfying = (versions, range4, options) => { + let min = null; + let minSV = null; + let rangeObj = null; + try { + rangeObj = new Range(range4, options); + } catch (er) { + return null; + } + versions.forEach((v) => { + if (rangeObj.test(v)) { + if (!min || minSV.compare(v) === 1) { + min = v; + minSV = new SemVer(min, options); + } + } + }); + return min; + }; + module2.exports = minSatisfying; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js +var require_min_version = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var Range = require_range(); + var gt = require_gt(); + var minVersion = (range4, loose) => { + range4 = new Range(range4, loose); + let minver = new SemVer("0.0.0"); + if (range4.test(minver)) { + return minver; + } + minver = new SemVer("0.0.0-0"); + if (range4.test(minver)) { + return minver; + } + minver = null; + for (let i = 0; i < range4.set.length; ++i) { + const comparators = range4.set[i]; + let setMin = null; + comparators.forEach((comparator) => { + const compver = new SemVer(comparator.semver.version); + switch (comparator.operator) { + case ">": + if (compver.prerelease.length === 0) { + compver.patch++; + } else { + compver.prerelease.push(0); + } + compver.raw = compver.format(); + /* fallthrough */ + case "": + case ">=": + if (!setMin || gt(compver, setMin)) { + setMin = compver; + } + break; + case "<": + case "<=": + break; + /* istanbul ignore next */ + default: + throw new Error(`Unexpected operation: ${comparator.operator}`); + } + }); + if (setMin && (!minver || gt(minver, setMin))) { + minver = setMin; + } + } + if (minver && range4.test(minver)) { + return minver; + } + return null; + }; + module2.exports = minVersion; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js +var require_valid2 = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js"(exports2, module2) { + "use strict"; + var Range = require_range(); + var validRange = (range4, options) => { + try { + return new Range(range4, options).range || "*"; + } catch (er) { + return null; + } + }; + module2.exports = validRange; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js +var require_outside = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js"(exports2, module2) { + "use strict"; + var SemVer = require_semver(); + var Comparator = require_comparator(); + var { ANY } = Comparator; + var Range = require_range(); + var satisfies = require_satisfies(); + var gt = require_gt(); + var lt = require_lt(); + var lte = require_lte(); + var gte = require_gte(); + var outside = (version3, range4, hilo, options) => { + version3 = new SemVer(version3, options); + range4 = new Range(range4, options); + let gtfn, ltefn, ltfn, comp, ecomp; + switch (hilo) { + case ">": + gtfn = gt; + ltefn = lte; + ltfn = lt; + comp = ">"; + ecomp = ">="; + break; + case "<": + gtfn = lt; + ltefn = gte; + ltfn = gt; + comp = "<"; + ecomp = "<="; + break; + default: + throw new TypeError('Must provide a hilo val of "<" or ">"'); + } + if (satisfies(version3, range4, options)) { + return false; + } + for (let i = 0; i < range4.set.length; ++i) { + const comparators = range4.set[i]; + let high = null; + let low = null; + comparators.forEach((comparator) => { + if (comparator.semver === ANY) { + comparator = new Comparator(">=0.0.0"); + } + high = high || comparator; + low = low || comparator; + if (gtfn(comparator.semver, high.semver, options)) { + high = comparator; + } else if (ltfn(comparator.semver, low.semver, options)) { + low = comparator; + } + }); + if (high.operator === comp || high.operator === ecomp) { + return false; + } + if ((!low.operator || low.operator === comp) && ltefn(version3, low.semver)) { + return false; + } else if (low.operator === ecomp && ltfn(version3, low.semver)) { + return false; + } + } + return true; + }; + module2.exports = outside; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js +var require_gtr = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js"(exports2, module2) { + "use strict"; + var outside = require_outside(); + var gtr = (version3, range4, options) => outside(version3, range4, ">", options); + module2.exports = gtr; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js +var require_ltr = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js"(exports2, module2) { + "use strict"; + var outside = require_outside(); + var ltr = (version3, range4, options) => outside(version3, range4, "<", options); + module2.exports = ltr; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js +var require_intersects = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js"(exports2, module2) { + "use strict"; + var Range = require_range(); + var intersects = (r1, r2, options) => { + r1 = new Range(r1, options); + r2 = new Range(r2, options); + return r1.intersects(r2, options); + }; + module2.exports = intersects; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js +var require_simplify = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js"(exports2, module2) { + "use strict"; + var satisfies = require_satisfies(); + var compare = require_compare(); + module2.exports = (versions, range4, options) => { + const set = []; + let first = null; + let prev = null; + const v = versions.sort((a, b) => compare(a, b, options)); + for (const version3 of v) { + const included = satisfies(version3, range4, options); + if (included) { + prev = version3; + if (!first) { + first = version3; + } + } else { + if (prev) { + set.push([first, prev]); + } + prev = null; + first = null; + } + } + if (first) { + set.push([first, null]); + } + const ranges = []; + for (const [min, max] of set) { + if (min === max) { + ranges.push(min); + } else if (!max && min === v[0]) { + ranges.push("*"); + } else if (!max) { + ranges.push(`>=${min}`); + } else if (min === v[0]) { + ranges.push(`<=${max}`); + } else { + ranges.push(`${min} - ${max}`); + } + } + const simplified = ranges.join(" || "); + const original = typeof range4.raw === "string" ? range4.raw : String(range4); + return simplified.length < original.length ? simplified : range4; + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js +var require_subset = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js"(exports2, module2) { + "use strict"; + var Range = require_range(); + var Comparator = require_comparator(); + var { ANY } = Comparator; + var satisfies = require_satisfies(); + var compare = require_compare(); + var subset = (sub, dom, options = {}) => { + if (sub === dom) { + return true; + } + sub = new Range(sub, options); + dom = new Range(dom, options); + let sawNonNull = false; + OUTER: for (const simpleSub of sub.set) { + for (const simpleDom of dom.set) { + const isSub = simpleSubset(simpleSub, simpleDom, options); + sawNonNull = sawNonNull || isSub !== null; + if (isSub) { + continue OUTER; + } + } + if (sawNonNull) { + return false; + } + } + return true; + }; + var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")]; + var minimumVersion = [new Comparator(">=0.0.0")]; + var simpleSubset = (sub, dom, options) => { + if (sub === dom) { + return true; + } + if (sub.length === 1 && sub[0].semver === ANY) { + if (dom.length === 1 && dom[0].semver === ANY) { + return true; + } else if (options.includePrerelease) { + sub = minimumVersionWithPreRelease; + } else { + sub = minimumVersion; + } + } + if (dom.length === 1 && dom[0].semver === ANY) { + if (options.includePrerelease) { + return true; + } else { + dom = minimumVersion; + } + } + const eqSet = /* @__PURE__ */ new Set(); + let gt, lt; + for (const c of sub) { + if (c.operator === ">" || c.operator === ">=") { + gt = higherGT(gt, c, options); + } else if (c.operator === "<" || c.operator === "<=") { + lt = lowerLT(lt, c, options); + } else { + eqSet.add(c.semver); + } + } + if (eqSet.size > 1) { + return null; + } + let gtltComp; + if (gt && lt) { + gtltComp = compare(gt.semver, lt.semver, options); + if (gtltComp > 0) { + return null; + } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) { + return null; + } + } + for (const eq of eqSet) { + if (gt && !satisfies(eq, String(gt), options)) { + return null; + } + if (lt && !satisfies(eq, String(lt), options)) { + return null; + } + for (const c of dom) { + if (!satisfies(eq, String(c), options)) { + return false; + } + } + return true; + } + let higher, lower; + let hasDomLT, hasDomGT; + let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false; + let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false; + if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) { + needDomLTPre = false; + } + for (const c of dom) { + hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">="; + hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<="; + if (gt) { + if (needDomGTPre) { + if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) { + needDomGTPre = false; + } + } + if (c.operator === ">" || c.operator === ">=") { + higher = higherGT(gt, c, options); + if (higher === c && higher !== gt) { + return false; + } + } else if (gt.operator === ">=" && !c.test(gt.semver)) { + return false; + } + } + if (lt) { + if (needDomLTPre) { + if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) { + needDomLTPre = false; + } + } + if (c.operator === "<" || c.operator === "<=") { + lower = lowerLT(lt, c, options); + if (lower === c && lower !== lt) { + return false; + } + } else if (lt.operator === "<=" && !c.test(lt.semver)) { + return false; + } + } + if (!c.operator && (lt || gt) && gtltComp !== 0) { + return false; + } + } + if (gt && hasDomLT && !lt && gtltComp !== 0) { + return false; + } + if (lt && hasDomGT && !gt && gtltComp !== 0) { + return false; + } + if (needDomGTPre || needDomLTPre) { + return false; + } + return true; + }; + var higherGT = (a, b, options) => { + if (!a) { + return b; + } + const comp = compare(a.semver, b.semver, options); + return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a; + }; + var lowerLT = (a, b, options) => { + if (!a) { + return b; + } + const comp = compare(a.semver, b.semver, options); + return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a; + }; + module2.exports = subset; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js +var require_semver2 = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js"(exports2, module2) { + "use strict"; + var internalRe = require_re(); + var constants2 = require_constants(); + var SemVer = require_semver(); + var identifiers = require_identifiers(); + var parse3 = require_parse(); + var valid = require_valid(); + var clean = require_clean(); + var inc = require_inc(); + var diff = require_diff(); + var major = require_major(); + var minor = require_minor(); + var patch = require_patch(); + var prerelease = require_prerelease(); + var compare = require_compare(); + var rcompare = require_rcompare(); + var compareLoose = require_compare_loose(); + var compareBuild = require_compare_build(); + var sort = require_sort(); + var rsort = require_rsort(); + var gt = require_gt(); + var lt = require_lt(); + var eq = require_eq(); + var neq = require_neq(); + var gte = require_gte(); + var lte = require_lte(); + var cmp = require_cmp(); + var coerce = require_coerce(); + var truncate = require_truncate(); + var Comparator = require_comparator(); + var Range = require_range(); + var satisfies = require_satisfies(); + var toComparators = require_to_comparators(); + var maxSatisfying = require_max_satisfying(); + var minSatisfying = require_min_satisfying(); + var minVersion = require_min_version(); + var validRange = require_valid2(); + var outside = require_outside(); + var gtr = require_gtr(); + var ltr = require_ltr(); + var intersects = require_intersects(); + var simplifyRange = require_simplify(); + var subset = require_subset(); + module2.exports = { + parse: parse3, + valid, + clean, + inc, + diff, + major, + minor, + patch, + prerelease, + compare, + rcompare, + compareLoose, + compareBuild, + sort, + rsort, + gt, + lt, + eq, + neq, + gte, + lte, + cmp, + coerce, + truncate, + Comparator, + Range, + satisfies, + toComparators, + maxSatisfying, + minSatisfying, + minVersion, + validRange, + outside, + gtr, + ltr, + intersects, + simplifyRange, + subset, + SemVer, + re: internalRe.re, + src: internalRe.src, + tokens: internalRe.t, + SEMVER_SPEC_VERSION: constants2.SEMVER_SPEC_VERSION, + RELEASE_TYPES: constants2.RELEASE_TYPES, + compareIdentifiers: identifiers.compareIdentifiers, + rcompareIdentifiers: identifiers.rcompareIdentifiers + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json +var require_cli_version = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json"(exports2, module2) { + module2.exports = { version: "2.1142.0" }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json +var require_assets_schema = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json"(exports2, module2) { + module2.exports = { + $ref: "#/definitions/AssetManifest", + definitions: { + AssetManifest: { + description: "Definitions for the asset manifest", + type: "object", + properties: { + version: { + description: "Version of the manifest", + type: "string" + }, + files: { + description: "The file assets in this manifest (Default - No files)", + type: "object", + additionalProperties: { + $ref: "#/definitions/FileAsset" + } + }, + dockerImages: { + description: "The Docker image assets in this manifest (Default - No Docker images)", + type: "object", + additionalProperties: { + $ref: "#/definitions/DockerImageAsset" + } + } + }, + required: [ + "version" + ] + }, + FileAsset: { + description: "A file asset", + type: "object", + properties: { + displayName: { + description: "A display name for this asset (Default - The identifier will be used as the display name)", + type: "string" + }, + source: { + $ref: "#/definitions/FileSource", + description: "Source description for file assets" + }, + destinations: { + description: "Destinations for this file asset", + type: "object", + additionalProperties: { + $ref: "#/definitions/FileDestination" + } + } + }, + required: [ + "destinations", + "source" + ] + }, + FileSource: { + description: "Describe the source of a file asset", + type: "object", + properties: { + executable: { + description: "External command which will produce the file asset to upload. (Default - Exactly one of `executable` and `path` is required.)", + type: "array", + items: { + type: "string" + } + }, + path: { + description: "The filesystem object to upload\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `executable` and `path` is required.)", + type: "string" + }, + packaging: { + description: "Packaging method\n\nOnly allowed when `path` is specified. (Default FILE)", + enum: [ + "file", + "zip" + ], + type: "string" + } + } + }, + FileDestination: { + description: "Where in S3 a file asset needs to be published", + type: "object", + properties: { + bucketName: { + description: "The name of the bucket", + type: "string" + }, + objectKey: { + description: "The destination object key", + type: "string" + }, + region: { + description: "The region where this asset will need to be published (Default - Current region)", + type: "string" + }, + assumeRoleArn: { + description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)", + type: "string" + }, + assumeRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "bucketName", + "objectKey" + ] + }, + DockerImageAsset: { + description: "A file asset", + type: "object", + properties: { + displayName: { + description: "A display name for this asset (Default - The identifier will be used as the display name)", + type: "string" + }, + source: { + $ref: "#/definitions/DockerImageSource", + description: "Source description for container assets" + }, + destinations: { + description: "Destinations for this container asset", + type: "object", + additionalProperties: { + $ref: "#/definitions/DockerImageDestination" + } + } + }, + required: [ + "destinations", + "source" + ] + }, + DockerImageSource: { + description: "Properties for how to produce a Docker image from a source", + type: "object", + properties: { + directory: { + description: "The directory containing the Docker image build instructions.\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `directory` and `executable` is required)", + type: "string" + }, + executable: { + description: "A command-line executable that returns the name of a local\nDocker image on stdout after being run. (Default - Exactly one of `directory` and `executable` is required)", + type: "array", + items: { + type: "string" + } + }, + dockerFile: { + description: "The name of the file with build instructions\n\nOnly allowed when `directory` is set. (Default Dockerfile)", + type: "string" + }, + dockerBuildTarget: { + description: "Target build stage in a Dockerfile with multiple build stages\n\nOnly allowed when `directory` is set. (Default - The last stage in the Dockerfile)", + type: "string" + }, + dockerBuildArgs: { + description: "Additional build arguments\n\nOnly allowed when `directory` is set. (Default - No additional build arguments)", + type: "object", + additionalProperties: { + type: "string" + } + }, + dockerBuildContexts: { + description: "Additional build contexts\n\nOnly allowed when `directory` is set. (Default - No additional build contexts)", + type: "object", + additionalProperties: { + type: "string" + } + }, + dockerBuildSsh: { + description: "SSH agent socket or keys\n\nRequires building with docker buildkit. (Default - No ssh flag is set)", + type: "string" + }, + dockerBuildSecrets: { + description: "Additional build secrets\n\nOnly allowed when `directory` is set. (Default - No additional build secrets)", + type: "object", + additionalProperties: { + type: "string" + } + }, + networkMode: { + description: "Networking mode for the RUN commands during build. _Requires Docker Engine API v1.25+_.\n\nSpecify this property to build images on a specific networking mode. (Default - no networking mode specified)", + type: "string" + }, + platform: { + description: "Platform to build for. _Requires Docker Buildx_.\n\nSpecify this property to build images on a specific platform/architecture. (Default - current machine platform)", + type: "string" + }, + dockerOutputs: { + description: "Outputs (Default - no outputs are passed to the build command (default outputs are used))", + type: "array", + items: { + type: "string" + } + }, + cacheFrom: { + description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)", + type: "array", + items: { + $ref: "#/definitions/DockerCacheOption" + } + }, + cacheTo: { + description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)", + $ref: "#/definitions/DockerCacheOption" + }, + cacheDisabled: { + description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)", + type: "boolean" + } + } + }, + DockerCacheOption: { + description: "Options for configuring the Docker cache backend", + type: "object", + properties: { + type: { + description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)", + type: "string" + }, + params: { + description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)", + type: "object", + additionalProperties: { + type: "string" + } + } + }, + required: [ + "type" + ] + }, + DockerImageDestination: { + description: "Where to publish docker images", + type: "object", + properties: { + repositoryName: { + description: "Name of the ECR repository to publish to", + type: "string" + }, + imageTag: { + description: "Tag of the image to publish", + type: "string" + }, + region: { + description: "The region where this asset will need to be published (Default - Current region)", + type: "string" + }, + assumeRoleArn: { + description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)", + type: "string" + }, + assumeRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "imageTag", + "repositoryName" + ] + } + }, + $schema: "http://json-schema.org/draft-07/schema#" + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json +var require_cloud_assembly_schema = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json"(exports2, module2) { + module2.exports = { + $ref: "#/definitions/AssemblyManifest", + definitions: { + AssemblyManifest: { + description: "A manifest which describes the cloud assembly.", + type: "object", + properties: { + version: { + description: "Protocol version", + type: "string" + }, + minimumCliVersion: { + description: "Required CLI version, if available\n\nIf the manifest producer knows, it can put the minimum version of the CLI\nhere that supports reading this assembly.\n\nIf set, it can be used to show a more informative error message to users. (Default - Minimum CLI version unknown)", + type: "string" + }, + artifacts: { + description: "The set of artifacts in this assembly. (Default - no artifacts.)", + type: "object", + additionalProperties: { + $ref: "#/definitions/ArtifactManifest" + } + }, + missing: { + description: "Missing context information. If this field has values, it means that the\ncloud assembly is not complete and should not be deployed. (Default - no missing context.)", + type: "array", + items: { + $ref: "#/definitions/MissingContext" + } + }, + runtime: { + description: "Runtime information. (Default - no info.)", + $ref: "#/definitions/RuntimeInfo" + } + }, + required: [ + "version" + ] + }, + ArtifactManifest: { + description: "A manifest for a single artifact within the cloud assembly.", + type: "object", + properties: { + type: { + $ref: "#/definitions/ArtifactType", + description: "The type of artifact." + }, + environment: { + description: "The environment into which this artifact is deployed. (Default - no envrionment.)", + type: "string" + }, + metadata: { + description: "Associated metadata.\n\nMetadata can be stored directly in the assembly manifest, as well as in a\nseparate file (see `additionalMetadataFile`). It should prefer to be stored\nin the additional file, as that will reduce the size of the assembly\nmanifest in cases of a lot of metdata (which CDK does emit by default). (Default - no metadata.)", + type: "object", + additionalProperties: { + type: "array", + items: { + $ref: "#/definitions/MetadataEntry" + } + } + }, + additionalMetadataFile: { + description: "A file with additional metadata entries.\n\nThe schema of this file is exactly the same as the type of the `metadata` field.\nIn other words, that file contains an object mapping construct paths to arrays\nof metadata entries. (Default - no additional metadata)", + type: "string" + }, + dependencies: { + description: "IDs of artifacts that must be deployed before this artifact. (Default - no dependencies.)", + type: "array", + items: { + type: "string" + } + }, + properties: { + description: "The set of properties for this artifact (depends on type) (Default - no properties.)", + anyOf: [ + { + $ref: "#/definitions/AwsCloudFormationStackProperties" + }, + { + $ref: "#/definitions/AssetManifestProperties" + }, + { + $ref: "#/definitions/TreeArtifactProperties" + }, + { + $ref: "#/definitions/NestedCloudAssemblyProperties" + }, + { + $ref: "#/definitions/FeatureFlagReportProperties" + } + ] + }, + displayName: { + description: `A string that can be shown to a user to uniquely identify this artifact inside a cloud assembly tree + +Is used by the CLI to present a list of stacks to the user in a way that +makes sense to them. Even though the property name "display name" doesn't +imply it, this field is used to select stacks as well, so all stacks should +have a unique display name. (Default - no display name)`, + type: "string" + } + }, + required: [ + "type" + ] + }, + ArtifactType: { + description: "Type of cloud artifact.", + type: "string", + enum: [ + "none", + "aws:cloudformation:stack", + "cdk:tree", + "cdk:asset-manifest", + "cdk:cloud-assembly", + "cdk:feature-flag-report" + ] + }, + MetadataEntry: { + description: "A metadata entry in a cloud assembly artifact.", + type: "object", + properties: { + type: { + description: "The type of the metadata entry.", + type: "string" + }, + data: { + description: "The data. (Default - no data.)", + anyOf: [ + { + $ref: "#/definitions/FileAssetMetadataEntry" + }, + { + $ref: "#/definitions/ContainerImageAssetMetadataEntry" + }, + { + $ref: "#/definitions/PropertyMutationMetadataEntry" + }, + { + type: "array", + items: { + anyOf: [ + { + $ref: "#/definitions/Tag" + }, + { + type: "string" + } + ] + } + }, + { + type: [ + "string", + "number", + "boolean" + ] + }, + { + description: "Free form data." + } + ] + }, + trace: { + description: "A stack trace for when the entry was created. (Default - no trace.)", + type: "array", + items: { + type: "string" + } + } + }, + required: [ + "type" + ] + }, + FileAssetMetadataEntry: { + description: "Metadata Entry spec for files.", + type: "object", + properties: { + packaging: { + description: "Requested packaging style", + enum: [ + "file", + "zip" + ], + type: "string" + }, + s3BucketParameter: { + description: "Name of parameter where S3 bucket should be passed in", + type: "string" + }, + s3KeyParameter: { + description: "Name of parameter where S3 key should be passed in", + type: "string" + }, + artifactHashParameter: { + description: "The name of the parameter where the hash of the bundled asset should be passed in.", + type: "string" + }, + id: { + description: "Logical identifier for the asset", + type: "string" + }, + sourceHash: { + description: "The hash of the asset source.", + type: "string" + }, + path: { + description: "Path on disk to the asset", + type: "string" + } + }, + required: [ + "artifactHashParameter", + "id", + "packaging", + "path", + "s3BucketParameter", + "s3KeyParameter", + "sourceHash" + ] + }, + ContainerImageAssetMetadataEntry: { + description: "Metadata Entry spec for container images.", + type: "object", + properties: { + packaging: { + description: "Type of asset", + type: "string", + const: "container-image" + }, + imageNameParameter: { + description: 'ECR Repository name and repo digest (separated by "@sha256:") where this\nimage is stored. (Default undefined If not specified, `repositoryName` and `imageTag` are\nrequired because otherwise how will the stack know where to find the asset,\nha?)', + type: "string" + }, + repositoryName: { + description: "ECR repository name, if omitted a default name based on the asset's ID is\nused instead. Specify this property if you need to statically address the\nimage, e.g. from a Kubernetes Pod. Note, this is only the repository name,\nwithout the registry and the tag parts. (Default - this parameter is REQUIRED after 1.21.0)", + type: "string" + }, + imageTag: { + description: "The docker image tag to use for tagging pushed images. This field is\nrequired if `imageParameterName` is ommited (otherwise, the app won't be\nable to find the image). (Default - this parameter is REQUIRED after 1.21.0)", + type: "string" + }, + buildArgs: { + description: "Build args to pass to the `docker build` command (Default no build args are passed)", + type: "object", + additionalProperties: { + type: "string" + } + }, + buildContexts: { + description: "Build contexts to pass to the `docker build` command (Default no build contexts are passed)", + type: "object", + additionalProperties: { + type: "string" + } + }, + buildSsh: { + description: "SSH agent socket or keys to pass to the `docker build` command (Default no ssh arg is passed)", + type: "string" + }, + buildSecrets: { + description: "Build secrets to pass to the `docker build` command (Default no build secrets are passed)", + type: "object", + additionalProperties: { + type: "string" + } + }, + target: { + description: "Docker target to build to (Default no build target)", + type: "string" + }, + file: { + description: "Path to the Dockerfile (relative to the directory). (Default - no file is passed)", + type: "string" + }, + networkMode: { + description: "Networking mode for the RUN commands during build. (Default - no networking mode specified)", + type: "string" + }, + platform: { + description: "Platform to build for. _Requires Docker Buildx_. (Default - current machine platform)", + type: "string" + }, + outputs: { + description: "Outputs to pass to the `docker build` command. (Default - no outputs are passed to the build command (default outputs are used))", + type: "array", + items: { + type: "string" + } + }, + cacheFrom: { + description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)", + type: "array", + items: { + $ref: "#/definitions/ContainerImageAssetCacheOption" + } + }, + cacheTo: { + description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)", + $ref: "#/definitions/ContainerImageAssetCacheOption" + }, + cacheDisabled: { + description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)", + type: "boolean" + }, + id: { + description: "Logical identifier for the asset", + type: "string" + }, + sourceHash: { + description: "The hash of the asset source.", + type: "string" + }, + path: { + description: "Path on disk to the asset", + type: "string" + } + }, + required: [ + "id", + "packaging", + "path", + "sourceHash" + ] + }, + ContainerImageAssetCacheOption: { + description: "Options for configuring the Docker cache backend", + type: "object", + properties: { + type: { + description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)", + type: "string" + }, + params: { + description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)", + type: "object", + additionalProperties: { + type: "string" + } + } + }, + required: [ + "type" + ] + }, + PropertyMutationMetadataEntry: { + description: "Metadata type of a PropertyMutation", + type: "object", + properties: { + propertyName: { + description: "Name of the property", + type: "string" + }, + stackTrace: { + description: "Stack trace of the mutation", + type: "array", + items: { + type: "string" + } + } + }, + required: [ + "propertyName", + "stackTrace" + ] + }, + Tag: { + description: "Metadata Entry spec for stack tag.", + type: "object", + properties: { + key: { + description: 'Tag key.\n\n(In the actual file on disk this will be cased as "Key", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)', + type: "string" + }, + value: { + description: 'Tag value.\n\n(In the actual file on disk this will be cased as "Value", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)', + type: "string" + } + }, + required: [ + "key", + "value" + ] + }, + AwsCloudFormationStackProperties: { + description: "Artifact properties for CloudFormation stacks.", + type: "object", + properties: { + templateFile: { + description: "A file relative to the assembly root which contains the CloudFormation template for this stack.", + type: "string" + }, + parameters: { + description: "Values for CloudFormation stack parameters that should be passed when the stack is deployed. (Default - No parameters)", + type: "object", + additionalProperties: { + type: "string" + } + }, + tags: { + description: "Values for CloudFormation stack tags that should be passed when the stack is deployed.\n\nN.B.: Tags are also written to stack metadata, under the path of the Stack\nconstruct. Only in CDK CLI v1 are those tags found in metadata used for\nactual deployments; in all stable versions of CDK only the stack tags\ndirectly found in the `tags` property of `AwsCloudFormationStack` artifact\n(i.e., this property) are used. (Default - No tags)", + type: "object", + additionalProperties: { + type: "string" + } + }, + notificationArns: { + description: "SNS Notification ARNs that should receive CloudFormation Stack Events. (Default - No notification arns)", + type: "array", + items: { + type: "string" + } + }, + stackName: { + description: "The name to use for the CloudFormation stack. (Default - name derived from artifact ID)", + type: "string" + }, + terminationProtection: { + description: "Whether to enable termination protection for this stack.", + default: false, + type: "boolean" + }, + assumeRoleArn: { + description: "The role that needs to be assumed to deploy the stack (Default - No role is assumed (current credentials are used))", + type: "string" + }, + assumeRoleExternalId: { + description: "External ID to use when assuming role for cloudformation deployments (Default - No external ID)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + }, + cloudFormationExecutionRoleArn: { + description: "The role that is passed to CloudFormation to execute the change set (Default - No role is passed (currently assumed role/credentials are used))", + type: "string" + }, + lookupRole: { + description: "The role to use to look up values from the target AWS account (Default - No role is assumed (current credentials are used))", + $ref: "#/definitions/BootstrapRole" + }, + stackTemplateAssetObjectUrl: { + description: "If the stack template has already been included in the asset manifest, its asset URL (Default - Not uploaded yet, upload just before deploying)", + type: "string" + }, + requiresBootstrapStackVersion: { + description: "Version of bootstrap stack required to deploy this stack (Default - No bootstrap stack required)", + type: "number" + }, + bootstrapStackVersionSsmParameter: { + description: "SSM parameter where the bootstrap stack version number can be found\n\nOnly used if `requiresBootstrapStackVersion` is set.\n\n- If this value is not set, the bootstrap stack name must be known at\n deployment time so the stack version can be looked up from the stack\n outputs.\n- If this value is set, the bootstrap stack can have any name because\n we won't need to look it up. (Default - Bootstrap stack version number looked up)", + type: "string" + }, + validateOnSynth: { + description: "Whether this stack should be validated by the CLI after synthesis (Default - false)", + type: "boolean" + } + }, + required: [ + "templateFile" + ] + }, + BootstrapRole: { + description: "Information needed to access an IAM role created\nas part of the bootstrap process", + type: "object", + properties: { + arn: { + description: "The ARN of the IAM role created as part of bootrapping\ne.g. lookupRoleArn", + type: "string" + }, + assumeRoleExternalId: { + description: "External ID to use when assuming the bootstrap role (Default - No external ID)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `arn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + }, + requiresBootstrapStackVersion: { + description: "Version of bootstrap stack required to use this role (Default - No bootstrap stack required)", + type: "number" + }, + bootstrapStackVersionSsmParameter: { + description: "Name of SSM parameter with bootstrap stack version (Default - Discover SSM parameter by reading stack)", + type: "string" + } + }, + required: [ + "arn" + ] + }, + AssetManifestProperties: { + description: "Artifact properties for the Asset Manifest", + type: "object", + properties: { + file: { + description: "Filename of the asset manifest", + type: "string" + }, + requiresBootstrapStackVersion: { + description: "Version of bootstrap stack required to deploy this stack (Default - Version 1 (basic modern bootstrap stack))", + type: "number" + }, + bootstrapStackVersionSsmParameter: { + description: "SSM parameter where the bootstrap stack version number can be found\n\n- If this value is not set, the bootstrap stack name must be known at\n deployment time so the stack version can be looked up from the stack\n outputs.\n- If this value is set, the bootstrap stack can have any name because\n we won't need to look it up. (Default - Bootstrap stack version number looked up)", + type: "string" + } + }, + required: [ + "file" + ] + }, + TreeArtifactProperties: { + description: "Artifact properties for the Construct Tree Artifact", + type: "object", + properties: { + file: { + description: "Filename of the tree artifact", + type: "string" + } + }, + required: [ + "file" + ] + }, + NestedCloudAssemblyProperties: { + description: "Artifact properties for nested cloud assemblies", + type: "object", + properties: { + directoryName: { + description: "Relative path to the nested cloud assembly", + type: "string" + }, + displayName: { + description: "Display name for the cloud assembly (Default - The artifact ID)", + type: "string" + } + }, + required: [ + "directoryName" + ] + }, + FeatureFlagReportProperties: { + description: "Artifact properties for a feature flag report\n\nA feature flag report is small enough that all the properties can be inlined\nhere, and doesn't need an additional file.", + type: "object", + properties: { + module: { + description: "The library that this feature flag report applies to.", + type: "string" + }, + flags: { + description: "Information about every feature flag supported by this library.", + type: "object", + additionalProperties: { + $ref: "#/definitions/FeatureFlag" + } + } + }, + required: [ + "flags", + "module" + ] + }, + FeatureFlag: { + description: "A single feature flag", + type: "object", + properties: { + recommendedValue: { + description: "The library-recommended value for this flag, if any\n\nIt is possible that there is no recommended value. (Default - No recommended value.)" + }, + userValue: { + description: "The value configured by the user\n\nThis is the value configured at the root of the tree. Users may also have\nconfigured values at specific locations in the tree; we don't report on\nthose. (Default - Not configured by the user)" + }, + explanation: { + description: "Explanation about the purpose of this flag that can be shown to the user. (Default - No description)", + type: "string" + }, + unconfiguredBehavesLike: { + description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nThe structure of this field is a historical accident. The type of this field\nshould have been boolean, which should have contained the default value for\nthe flag appropriate for the *current* version of the CDK library. We are\nnot rectifying this accident because doing so\n\nInstead, the canonical way to access this value is by evaluating\n`unconfiguredBehavesLike?.v2 ?? false`.", + default: false, + $ref: "#/definitions/UnconfiguredBehavesLike" + } + } + }, + UnconfiguredBehavesLike: { + type: "object", + properties: { + v1: { + description: "Historical accident, don't use.\n\nThis value may be present, but it should never be used. The actual value is\nin the `v2` field, regardless of the version of the CDK library. (Default - ignore)" + }, + v2: { + description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nEven though it is called 'v2', this is the official name of this field. In\nany future versions of CDK (v3, v4, ...), this field will still be called 'v2'.\n\nThe structure of this field is a historical accident. See the comment on\n`unconfiguredBehavesLike` for more information.", + default: false + } + } + }, + MissingContext: { + description: "Represents a missing piece of context.", + type: "object", + properties: { + key: { + description: "The missing context key.", + type: "string" + }, + provider: { + $ref: "#/definitions/ContextProvider", + description: "The provider from which we expect this context key to be obtained." + }, + props: { + $ref: "#/definitions/ContextQueryProperties", + description: "A set of provider-specific options." + } + }, + required: [ + "key", + "props", + "provider" + ] + }, + ContextProvider: { + description: "Identifier for the context provider", + type: "string", + enum: [ + "ami", + "availability-zones", + "hosted-zone", + "ssm", + "vpc-provider", + "endpoint-service-availability-zones", + "load-balancer", + "load-balancer-listener", + "security-group", + "key-provider", + "cc-api-provider", + "plugin" + ] + }, + ContextQueryProperties: { + anyOf: [ + { + $ref: "#/definitions/AmiContextQuery" + }, + { + $ref: "#/definitions/AvailabilityZonesContextQuery" + }, + { + $ref: "#/definitions/HostedZoneContextQuery" + }, + { + $ref: "#/definitions/SSMParameterContextQuery" + }, + { + $ref: "#/definitions/VpcContextQuery" + }, + { + $ref: "#/definitions/EndpointServiceAvailabilityZonesContextQuery" + }, + { + $ref: "#/definitions/LoadBalancerContextQuery" + }, + { + $ref: "#/definitions/LoadBalancerListenerContextQuery" + }, + { + $ref: "#/definitions/SecurityGroupContextQuery" + }, + { + $ref: "#/definitions/KeyContextQuery" + }, + { + $ref: "#/definitions/CcApiContextQuery" + }, + { + $ref: "#/definitions/PluginContextQuery" + } + ] + }, + AmiContextQuery: { + description: "Query to AMI context provider", + type: "object", + properties: { + owners: { + description: "Owners to DescribeImages call (Default - All owners)", + type: "array", + items: { + type: "string" + } + }, + filters: { + description: "Filters to DescribeImages call", + type: "object", + additionalProperties: { + type: "array", + items: { + type: "string" + } + } + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "filters", + "region" + ] + }, + AvailabilityZonesContextQuery: { + description: "Query to availability zone context provider", + type: "object", + properties: { + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "region" + ] + }, + HostedZoneContextQuery: { + description: "Query to hosted zone context provider", + type: "object", + properties: { + domainName: { + description: "The domain name e.g. example.com to lookup", + type: "string" + }, + privateZone: { + description: "True if the zone you want to find is a private hosted zone", + default: false, + type: "boolean" + }, + vpcId: { + description: "The VPC ID to that the private zone must be associated with\n\nIf you provide VPC ID and privateZone is false, this will return no results\nand raise an error. (Default - Required if privateZone=true)", + type: "string" + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "domainName", + "region" + ] + }, + SSMParameterContextQuery: { + description: "Query to SSM Parameter Context Provider", + type: "object", + properties: { + parameterName: { + description: "Parameter name to query", + type: "string" + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "parameterName", + "region" + ] + }, + VpcContextQuery: { + description: "Query input for looking up a VPC", + type: "object", + properties: { + filter: { + description: "Filters to apply to the VPC\n\nFilter parameters are the same as passed to DescribeVpcs.", + type: "object", + additionalProperties: { + type: "string" + } + }, + returnAsymmetricSubnets: { + description: "Whether to populate the subnetGroups field of the `VpcContextResponse`,\nwhich contains potentially asymmetric subnet groups.", + default: false, + type: "boolean" + }, + subnetGroupNameTag: { + description: "Optional tag for subnet group name.\nIf not provided, we'll look at the aws-cdk:subnet-name tag.\nIf the subnet does not have the specified tag,\nwe'll use its type as the name. (Default 'aws-cdk:subnet-name')", + type: "string" + }, + returnVpnGateways: { + description: "Whether to populate the `vpnGatewayId` field of the `VpcContextResponse`,\nwhich contains the VPN Gateway ID, if one exists. You can explicitly\ndisable this in order to avoid the lookup if you know the VPC does not have\na VPN Gatway attached. (Default true)", + type: "boolean" + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "filter", + "region" + ] + }, + EndpointServiceAvailabilityZonesContextQuery: { + description: "Query to endpoint service context provider", + type: "object", + properties: { + serviceName: { + description: "Query service name", + type: "string" + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "region", + "serviceName" + ] + }, + LoadBalancerContextQuery: { + description: "Query input for looking up a load balancer", + type: "object", + properties: { + loadBalancerType: { + $ref: "#/definitions/LoadBalancerType", + description: "Filter load balancers by their type" + }, + loadBalancerArn: { + description: "Find by load balancer's ARN (Default - does not search by load balancer arn)", + type: "string" + }, + loadBalancerTags: { + description: "Match load balancer tags (Default - does not match load balancers by tags)", + type: "array", + items: { + $ref: "#/definitions/Tag" + } + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "loadBalancerType", + "region" + ] + }, + LoadBalancerType: { + description: "Type of load balancer", + type: "string", + enum: [ + "network", + "application" + ] + }, + LoadBalancerListenerContextQuery: { + description: "Query input for looking up a load balancer listener", + type: "object", + properties: { + listenerArn: { + description: "Find by listener's arn (Default - does not find by listener arn)", + type: "string" + }, + listenerProtocol: { + description: "Filter by listener protocol (Default - does not filter by listener protocol)", + enum: [ + "HTTP", + "HTTPS", + "TCP", + "TCP_UDP", + "TLS", + "UDP" + ], + type: "string" + }, + listenerPort: { + description: "Filter listeners by listener port (Default - does not filter by a listener port)", + type: "number" + }, + loadBalancerType: { + $ref: "#/definitions/LoadBalancerType", + description: "Filter load balancers by their type" + }, + loadBalancerArn: { + description: "Find by load balancer's ARN (Default - does not search by load balancer arn)", + type: "string" + }, + loadBalancerTags: { + description: "Match load balancer tags (Default - does not match load balancers by tags)", + type: "array", + items: { + $ref: "#/definitions/Tag" + } + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "loadBalancerType", + "region" + ] + }, + SecurityGroupContextQuery: { + description: "Query input for looking up a security group", + type: "object", + properties: { + securityGroupId: { + description: "Security group id (Default - None)", + type: "string" + }, + securityGroupName: { + description: "Security group name (Default - None)", + type: "string" + }, + vpcId: { + description: "VPC ID (Default - None)", + type: "string" + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "region" + ] + }, + KeyContextQuery: { + description: "Query input for looking up a KMS Key", + type: "object", + properties: { + aliasName: { + description: "Alias name used to search the Key", + type: "string" + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "aliasName", + "region" + ] + }, + CcApiContextQuery: { + description: "Query input for lookup up CloudFormation resources using CC API\n\nThe example below is required to successfully compile CDK (otherwise,\nthe CDK build will generate a synthetic example for the below, but it\ndoesn't have enough type information about the literal string union\nto generate a validly compiling example).", + type: "object", + properties: { + typeName: { + description: "The CloudFormation resource type.\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/supported-resources.html", + type: "string" + }, + exactIdentifier: { + description: "Identifier of the resource to look up using `GetResource`.\n\nSpecifying exactIdentifier will return exactly one result, or throw an error\nunless `ignoreErrorOnMissingContext` is set. (Default - Either exactIdentifier or propertyMatch should be specified.)", + type: "string" + }, + resourceModel: { + description: "The resource model to use to select the resources, using `ListResources`..\n\nThis is needed for sub-resources where the parent Arn is required.\n\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-list.html#resource-operations-list-containers (Default - no resource Model is provided)", + $ref: "#/definitions/Record%3Cstring%2Cunknown%3E" + }, + propertyMatch: { + description: "Returns any resources matching these properties, using `ListResources`.\n\nBy default, specifying propertyMatch will successfully return 0 or more\nresults. To throw an error if the number of results is unexpected (and\nprevent the query results from being committed to context), specify\n`expectedMatchCount`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe resources that `propertyMatch` matches against will *only ever* be the\nproperties returned by the `ListResources` call. (Default - Either exactIdentifier or propertyMatch should be specified.)", + $ref: "#/definitions/Record%3Cstring%2Cunknown%3E" + }, + propertiesToReturn: { + description: "This is a set of properties returned from CC API that we want to return from ContextQuery.\n\nIf any properties listed here are absent from the target resource, an error will be thrown.\n\nThe returned object will always include the key `Identifier` with the CC-API returned\nfield `Identifier`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe returned properties here are *currently* selected from the response\nobject that CloudControl API returns to the CDK CLI.\n\nHowever, if we find there is need to do so, we may decide to change this\nbehavior in the future: we might change it to perform an additional\n`GetResource` call for resources matched by `propertyMatch`.", + type: "array", + items: { + type: "string" + } + }, + expectedMatchCount: { + description: "Expected count of results if `propertyMatch` is specified.\n\nIf the expected result count does not match the actual count,\nby default an error is produced and the result is not committed to cached\ncontext, and the user can correct the situation and try again without\nhaving to manually clear out the context key using `cdk context --remove`\n\nIf the value of * `ignoreErrorOnMissingContext` is `true`, the value of\n`expectedMatchCount` is `at-least-one | exactly-one` and the number\nof found resources is 0, `dummyValue` is returned and committed to context\ninstead. (Default 'any')", + enum: [ + "any", + "at-least-one", + "at-most-one", + "exactly-one" + ], + type: "string" + }, + dummyValue: { + description: "The value to return if the resource was not found and `ignoreErrorOnMissingContext` is true.\n\nIf supplied, `dummyValue` should be an array of objects.\n\n`dummyValue` does not have to have elements, and it may have objects with\ndifferent properties than the properties in `propertiesToReturn`, but it\nwill be easiest for downstream code if the `dummyValue` conforms to\nthe expected response shape. (Default - No dummy value available)" + }, + ignoreErrorOnMissingContext: { + description: "Ignore an error and return the `dummyValue` instead if the resource was not found.\n\n- In case of an `exactIdentifier` lookup, return the `dummyValue` if the resource with\n that identifier was not found.\n- In case of a `propertyMatch` lookup, return the `dummyValue` if `expectedMatchCount`\n is `at-least-one | exactly-one` and the number of resources found was 0.\n\nif `ignoreErrorOnMissingContext` is set, `dummyValue` should be set and be an array.", + default: false, + type: "boolean" + }, + account: { + description: "Query account", + type: "string" + }, + region: { + description: "Query region", + type: "string" + }, + lookupRoleArn: { + description: "The ARN of the role that should be used to look up the missing values (Default - None)", + type: "string" + }, + lookupRoleExternalId: { + description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)", + type: "string" + }, + assumeRoleAdditionalOptions: { + description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)", + type: "object", + additionalProperties: {} + } + }, + required: [ + "account", + "propertiesToReturn", + "region", + "typeName" + ] + }, + "Record": { + type: "object" + }, + PluginContextQuery: { + description: "Query input for plugins\n\nThis alternate branch is necessary because it needs to be able to escape all type checking\nwe do on on the cloud assembly -- we cannot know the properties that will be used a priori.", + type: "object", + additionalProperties: {}, + properties: { + pluginName: { + description: "The name of the plugin", + type: "string" + } + }, + required: [ + "pluginName" + ] + }, + RuntimeInfo: { + description: "Information about the application's runtime components.", + type: "object", + properties: { + libraries: { + description: "The list of libraries loaded in the application, associated with their versions.", + type: "object", + additionalProperties: { + type: "string" + } + } + }, + required: [ + "libraries" + ] + } + }, + $schema: "http://json-schema.org/draft-07/schema#" + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json +var require_integ_schema = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json"(exports2, module2) { + module2.exports = { + $ref: "#/definitions/IntegManifest", + definitions: { + IntegManifest: { + description: "Definitions for the integration testing manifest", + type: "object", + properties: { + version: { + description: "Version of the manifest", + type: "string" + }, + enableLookups: { + description: "Enable lookups for this test. If lookups are enabled\nthen `stackUpdateWorkflow` must be set to false.\nLookups should only be enabled when you are explicitly testing\nlookups.", + default: false, + type: "boolean" + }, + synthContext: { + description: "Additional context to use when performing\na synth. Any context provided here will override\nany default context (Default - no additional context)", + type: "object", + additionalProperties: { + type: "string" + } + }, + testCases: { + description: "test cases", + type: "object", + additionalProperties: { + $ref: "#/definitions/TestCase" + } + } + }, + required: [ + "testCases", + "version" + ] + }, + TestCase: { + description: "Represents an integration test case", + type: "object", + properties: { + stacks: { + description: "Stacks that should be tested as part of this test case\nThe stackNames will be passed as args to the cdk commands\nso dependent stacks will be automatically deployed unless\n`exclusively` is passed", + type: "array", + items: { + type: "string" + } + }, + assertionStack: { + description: "The node id of the stack that contains assertions.\nThis is the value that can be used to deploy the stack with the CDK CLI (Default - no assertion stack)", + type: "string" + }, + assertionStackName: { + description: "The name of the stack that contains assertions (Default - no assertion stack)", + type: "string" + }, + stackUpdateWorkflow: { + description: "Run update workflow on this test case\nThis should only be set to false to test scenarios\nthat are not possible to test as part of the update workflow (Default true)", + type: "boolean" + }, + cdkCommandOptions: { + description: "Additional options to use for each CDK command (Default - runner default options)", + $ref: "#/definitions/CdkCommands" + }, + hooks: { + description: "Additional commands to run at predefined points in the test workflow\n\ne.g. { postDeploy: ['yarn', 'test'] } (Default - no hooks)", + $ref: "#/definitions/Hooks" + }, + allowDeleteFailures: { + description: "Whether to allow resources that fail to delete during a stack update.\n\nWhen false, the test will fail if CloudFormation skips deleting a resource\nduring a stack update. When true, only a warning is printed.", + default: false, + type: "boolean" + }, + diffAssets: { + description: "Whether or not to include asset hashes in the diff\nAsset hashes can introduces a lot of unneccessary noise into tests,\nbut there are some cases where asset hashes _should_ be included. For example\nany tests involving custom resources or bundling", + default: false, + type: "boolean" + }, + allowDestroy: { + description: "List of CloudFormation resource types in this stack that can\nbe destroyed as part of an update without failing the test.\n\nThis list should only include resources that for this specific\nintegration test we are sure will not cause errors or an outage if\ndestroyed. For example, maybe we know that a new resource will be created\nfirst before the old resource is destroyed which prevents any outage.\n\ne.g. ['AWS::IAM::Role'] (Default - do not allow destruction of any resources on update)", + type: "array", + items: { + type: "string" + } + }, + regions: { + description: "Limit deployment to these regions (Default - can run in any region)", + type: "array", + items: { + type: "string" + } + } + }, + required: [ + "stacks" + ] + }, + CdkCommands: { + description: "Options for specific cdk commands that are run\nas part of the integration test workflow", + type: "object", + properties: { + deploy: { + description: "Options to for the cdk deploy command (Default - default deploy options)", + $ref: "#/definitions/DeployCommand" + }, + destroy: { + description: "Options to for the cdk destroy command (Default - default destroy options)", + $ref: "#/definitions/DestroyCommand" + } + } + }, + DeployCommand: { + description: "Represents a cdk deploy command", + type: "object", + properties: { + args: { + description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)", + $ref: "#/definitions/DeployOptions" + }, + enabled: { + description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)", + type: "boolean" + }, + expectError: { + description: "If the runner should expect this command to fail", + default: false, + type: "boolean" + }, + expectedMessage: { + description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)", + type: "string" + } + } + }, + DeployOptions: { + description: "Options to use with cdk deploy", + type: "object", + properties: { + exclusively: { + description: "Only perform action on the given stack", + default: false, + type: "boolean" + }, + toolkitStackName: { + description: "Name of the toolkit stack to use/deploy (Default CDKToolkit)", + type: "string" + }, + reuseAssets: { + description: "Reuse the assets with the given asset IDs (Default - do not reuse assets)", + type: "array", + items: { + type: "string" + } + }, + changeSetName: { + description: "Optional name to use for the CloudFormation change set.\nIf not provided, a name will be generated automatically. (Default - auto generate a name)", + type: "string" + }, + force: { + description: "Always deploy, even if templates are identical.", + default: false, + type: "boolean" + }, + rollback: { + description: "Rollback failed deployments (Default true)", + type: "boolean" + }, + notificationArns: { + description: "ARNs of SNS topics that CloudFormation will notify with stack related events (Default - no notifications)", + type: "array", + items: { + type: "string" + } + }, + requireApproval: { + description: "What kind of security changes require approval (Default RequireApproval.NEVER)", + enum: [ + "any-change", + "broadening", + "never" + ], + type: "string" + }, + execute: { + description: "Whether to execute the ChangeSet\nNot providing `execute` parameter will result in execution of ChangeSet (Default true)", + type: "boolean" + }, + parameters: { + description: "Additional parameters for CloudFormation at deploy time (Default [object Object])", + type: "object", + additionalProperties: { + type: "string" + } + }, + usePreviousParameters: { + description: "Use previous values for unspecified parameters\n\nIf not set, all parameters must be specified for every deployment. (Default true)", + type: "boolean" + }, + outputsFile: { + description: "Path to file where stack outputs will be written after a successful deploy as JSON (Default - Outputs are not written to any file)", + type: "string" + }, + ci: { + description: "Whether we are on a CI system", + default: false, + type: "boolean" + }, + concurrency: { + description: "Deploy multiple stacks in parallel (Default 1)", + type: "number" + }, + stacks: { + description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])", + type: "array", + items: { + type: "string" + } + }, + all: { + description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)", + type: "boolean" + }, + app: { + description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)', + type: "string" + }, + roleArn: { + description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)", + type: "string" + }, + context: { + description: "Additional context (Default - no additional context)", + type: "object", + additionalProperties: { + type: "string" + } + }, + trace: { + description: "Print trace for stack warnings", + default: false, + type: "boolean" + }, + strict: { + description: "Do not construct stacks with warnings", + default: false, + type: "boolean" + }, + lookups: { + description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)", + type: "boolean" + }, + ignoreErrors: { + description: "Ignores synthesis errors, which will likely produce an invalid output", + default: false, + type: "boolean" + }, + json: { + description: "Use JSON output instead of YAML when templates are printed\nto STDOUT", + default: false, + type: "boolean" + }, + verbose: { + description: "show debug logs", + default: false, + type: "boolean" + }, + debug: { + description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens", + default: false, + type: "boolean" + }, + profile: { + description: "Use the indicated AWS profile as the default environment (Default - no profile is used)", + type: "string" + }, + proxy: { + description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)", + type: "string" + }, + caBundlePath: { + description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)", + type: "string" + }, + ec2Creds: { + description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)", + type: "boolean" + }, + versionReporting: { + description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)', + type: "boolean" + }, + pathMetadata: { + description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)', + type: "boolean" + }, + assetMetadata: { + description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)', + type: "boolean" + }, + staging: { + description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI", + default: false, + type: "boolean" + }, + output: { + description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)", + type: "string" + }, + notices: { + description: "Show relevant notices (Default true)", + type: "boolean" + }, + color: { + description: "Show colors and other style from console output (Default true)", + type: "boolean" + } + } + }, + DestroyCommand: { + description: "Represents a cdk destroy command", + type: "object", + properties: { + args: { + description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)", + $ref: "#/definitions/DestroyOptions" + }, + enabled: { + description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)", + type: "boolean" + }, + expectError: { + description: "If the runner should expect this command to fail", + default: false, + type: "boolean" + }, + expectedMessage: { + description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)", + type: "string" + } + } + }, + DestroyOptions: { + description: "Options to use with cdk destroy", + type: "object", + properties: { + force: { + description: "Do not ask for permission before destroying stacks", + default: false, + type: "boolean" + }, + exclusively: { + description: "Only destroy the given stack", + default: false, + type: "boolean" + }, + stacks: { + description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])", + type: "array", + items: { + type: "string" + } + }, + all: { + description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)", + type: "boolean" + }, + app: { + description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)', + type: "string" + }, + roleArn: { + description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)", + type: "string" + }, + context: { + description: "Additional context (Default - no additional context)", + type: "object", + additionalProperties: { + type: "string" + } + }, + trace: { + description: "Print trace for stack warnings", + default: false, + type: "boolean" + }, + strict: { + description: "Do not construct stacks with warnings", + default: false, + type: "boolean" + }, + lookups: { + description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)", + type: "boolean" + }, + ignoreErrors: { + description: "Ignores synthesis errors, which will likely produce an invalid output", + default: false, + type: "boolean" + }, + json: { + description: "Use JSON output instead of YAML when templates are printed\nto STDOUT", + default: false, + type: "boolean" + }, + verbose: { + description: "show debug logs", + default: false, + type: "boolean" + }, + debug: { + description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens", + default: false, + type: "boolean" + }, + profile: { + description: "Use the indicated AWS profile as the default environment (Default - no profile is used)", + type: "string" + }, + proxy: { + description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)", + type: "string" + }, + caBundlePath: { + description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)", + type: "string" + }, + ec2Creds: { + description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)", + type: "boolean" + }, + versionReporting: { + description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)', + type: "boolean" + }, + pathMetadata: { + description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)', + type: "boolean" + }, + assetMetadata: { + description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)', + type: "boolean" + }, + staging: { + description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI", + default: false, + type: "boolean" + }, + output: { + description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)", + type: "string" + }, + notices: { + description: "Show relevant notices (Default true)", + type: "boolean" + }, + color: { + description: "Show colors and other style from console output (Default true)", + type: "boolean" + } + } + }, + Hooks: { + description: "Commands to run at predefined points during the\nintegration test workflow", + type: "object", + properties: { + preDeploy: { + description: "Commands to run prior to deploying the cdk stacks\nin the integration test (Default - no commands)", + type: "array", + items: { + type: "string" + } + }, + postDeploy: { + description: "Commands to run prior after deploying the cdk stacks\nin the integration test (Default - no commands)", + type: "array", + items: { + type: "string" + } + }, + preDestroy: { + description: "Commands to run prior to destroying the cdk stacks\nin the integration test (Default - no commands)", + type: "array", + items: { + type: "string" + } + }, + postDestroy: { + description: "Commands to run after destroying the cdk stacks\nin the integration test (Default - no commands)", + type: "array", + items: { + type: "string" + } + } + } + } + }, + $schema: "http://json-schema.org/draft-07/schema#" + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json +var require_validation_report_schema2 = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json"(exports2, module2) { + module2.exports = { + $ref: "#/definitions/PolicyValidationReportJson", + definitions: { + PolicyValidationReportJson: { + description: "The top-level structure of the policy validation report file.", + type: "object", + properties: { + version: { + description: "Protocol version", + type: "string" + }, + title: { + description: "Report title, if present.", + type: "string" + }, + pluginReports: { + description: "Reports from all validation plugins that ran during synthesis.", + type: "array", + items: { + $ref: "#/definitions/PluginReportJson" + } + } + }, + required: ["version", "pluginReports"] + }, + PluginReportJson: { + description: "A report from a single validation plugin.", + type: "object", + properties: { + pluginName: { + description: "The name of the plugin that produced this report.", + type: "string" + }, + pluginVersion: { + description: "Version of the plugin that produced this report.", + type: "string" + }, + conclusion: { + description: "Whether the plugin's validation passed or failed.", + $ref: "#/definitions/PolicyValidationReportConclusion" + }, + metadata: { + description: "Additional plugin-specific metadata.", + type: "object", + additionalProperties: { + type: "string" + } + }, + violations: { + description: "Violations found by this plugin.", + type: "array", + items: { + $ref: "#/definitions/PolicyViolationJson" + } + }, + suppressedViolations: { + description: "Violations that were suppressed via acknowledgement.", + type: "array", + items: { + $ref: "#/definitions/SuppressedViolationJson" + } + } + }, + required: ["pluginName", "conclusion", "violations"] + }, + PolicyValidationReportConclusion: { + description: "The final conclusion of a validation report.", + type: "string", + enum: ["success", "failure"] + }, + PolicyViolationJson: { + description: "A single policy violation found by a validation plugin.", + type: "object", + properties: { + ruleName: { + description: "The name of the rule that was violated.", + type: "string" + }, + description: { + description: "A description of the violation.", + type: "string" + }, + suggestedFix: { + description: "How to fix the violation.", + type: "string" + }, + severity: { + description: "The severity of the violation.", + $ref: "#/definitions/PolicyViolationSeverity" + }, + customSeverity: { + description: "If the plugin wants to report using a non-standard severity, put it here.", + type: "string" + }, + ruleMetadata: { + description: "Additional rule-specific metadata.", + type: "object", + additionalProperties: { + type: "string" + } + }, + violatingConstructs: { + description: "Constructs that violated the rule.", + type: "array", + items: { + $ref: "#/definitions/ViolatingConstructJson" + } + } + }, + required: ["ruleName", "description", "severity", "violatingConstructs"] + }, + PolicyViolationSeverity: { + description: "The severity of a policy violation.", + type: "string", + enum: ["fatal", "error", "warning", "info", "custom"] + }, + SuppressedViolationJson: { + description: "A violation that was acknowledged/suppressed and excluded from the active violation set.", + type: "object", + properties: { + ruleName: { + description: "The name of the rule that was violated.", + type: "string" + }, + description: { + description: "A description of the violation.", + type: "string" + }, + suggestedFix: { + description: "How to fix the violation.", + type: "string" + }, + severity: { + description: "The severity of the violation.", + $ref: "#/definitions/PolicyViolationSeverity" + }, + customSeverity: { + description: "If the plugin wants to report using a non-standard severity, put it here.", + type: "string" + }, + ruleMetadata: { + description: "Additional rule-specific metadata.", + type: "object", + additionalProperties: { + type: "string" + } + }, + violatingConstructs: { + description: "Constructs that violated the rule.", + type: "array", + items: { + $ref: "#/definitions/ViolatingConstructJson" + } + }, + acknowledgedId: { + description: "The acknowledgement ID that caused this violation to be suppressed.", + type: "string" + }, + reason: { + description: "The reason given for the acknowledgement, if provided.", + type: "string" + }, + acknowledgedAt: { + description: "The construct path where the acknowledgement was declared.", + type: "string" + }, + acknowledgedStackTrace: { + description: "Stack trace showing where the acknowledgement was declared.", + type: "string" + } + }, + required: ["ruleName", "description", "severity", "violatingConstructs", "acknowledgedId"] + }, + ViolatingConstructJson: { + description: "A construct that violated a policy rule.", + type: "object", + properties: { + constructPath: { + description: "The construct path as defined in the application.", + type: "string" + }, + constructFqn: { + description: "The fully qualified name of the construct class (includes the library name).", + type: "string" + }, + libraryVersion: { + description: "The version of the library that contains this construct.", + type: "string" + }, + cloudFormationResource: { + description: "If this construct violation regards a CloudFormation resource, a reference to the resource details.", + $ref: "#/definitions/CloudFormationResourceJson" + }, + stackTraces: { + description: "Stack traces associated with this violation.", + type: "array", + items: { + type: "string" + } + } + }, + required: ["constructPath"] + }, + CloudFormationResourceJson: { + description: "CloudFormation resource details for a violating construct.", + type: "object", + properties: { + templatePath: { + description: "The path to the CloudFormation template containing this resource.", + type: "string" + }, + logicalId: { + description: "The logical ID of the resource in the CloudFormation template.", + type: "string" + }, + propertyPaths: { + description: "Properties within the construct where the violation was detected.", + type: "array", + items: { + type: "string" + } + } + }, + required: ["templatePath", "logicalId"] + } + } + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json +var require_version = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json"(exports2, module2) { + module2.exports = { + schemaHash: "095859ad1d3d89d3bc4f9cbe9393d219798972dbd2389287bcc66b49f323cef1", + $comment: "Do not hold back the version on additions: jsonschema validation of the manifest by the consumer will trigger errors on unexpected fields.", + revision: 54 + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js +var require_manifest = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js"(exports2) { + "use strict"; + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + }) : function(o, v) { + o["default"] = v; + }); + var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() { + var ownKeys2 = function(o) { + ownKeys2 = Object.getOwnPropertyNames || function(o2) { + var ar = []; + for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k; + return ar; + }; + return ownKeys2(o); + }; + return function(mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) { + for (var k = ownKeys2(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding2(result, mod, k[i]); + } + __setModuleDefault2(result, mod); + return result; + }; + })(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Manifest = exports2.VALIDATION_REPORT_FILE = exports2.VERSION_MISMATCH = void 0; + var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti"); + var fs19 = __importStar2(require("fs")); + var jsonschema = __importStar2(require_lib()); + var semver = __importStar2(require_semver2()); + var assembly = __importStar2(require_cloud_assembly()); + exports2.VERSION_MISMATCH = "Cloud assembly schema version mismatch"; + exports2.VALIDATION_REPORT_FILE = "validation-report.json"; + var CLI_VERSION = require_cli_version(); + var ASSETS_SCHEMA = require_assets_schema(); + var ASSEMBLY_SCHEMA = require_cloud_assembly_schema(); + var INTEG_SCHEMA = require_integ_schema(); + var VALIDATION_REPORT_SCHEMA = require_validation_report_schema2(); + var SCHEMA_VERSION = require_version(); + var Manifest2 = class _Manifest { + static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/cloud-assembly-schema.Manifest", version: "54.24.0" }; + /** + * Validates and saves the cloud assembly manifest to file. + * + * @param manifest - manifest. + * @param filePath - output file path. + */ + static saveAssemblyManifest(manifest, filePath) { + _Manifest.saveManifest(manifest, filePath, ASSEMBLY_SCHEMA); + } + /** + * Load and validates the cloud assembly manifest from file. + * + * @param filePath - path to the manifest file. + */ + static loadAssemblyManifest(filePath, options) { + return _Manifest.loadManifest(filePath, ASSEMBLY_SCHEMA, _Manifest.patchStackTagsOnRead, options); + } + /** + * Validates and saves the asset manifest to file. + * + * @param manifest - manifest. + * @param filePath - output file path. + */ + static saveAssetManifest(manifest, filePath) { + _Manifest.saveManifest(manifest, filePath, ASSETS_SCHEMA); + } + /** + * Load and validates the asset manifest from file. + * + * @param filePath - path to the manifest file. + */ + static loadAssetManifest(filePath) { + return _Manifest.loadManifest(filePath, ASSETS_SCHEMA); + } + /** + * Validates and saves the integ manifest to file. + * + * @param manifest - manifest. + * @param filePath - output file path. + */ + static saveIntegManifest(manifest, filePath) { + _Manifest.saveManifest(manifest, filePath, INTEG_SCHEMA); + } + /** + * Load and validates the integ manifest from file. + * + * @param filePath - path to the manifest file. + */ + static loadIntegManifest(filePath) { + const manifest = this.loadManifest(filePath, INTEG_SCHEMA); + return { + ...manifest, + testCases: manifest.testCases ?? [] + }; + } + /** + * Load and validate the policy validation report from file. + * + * @param filePath - path to the validation report file. + */ + static loadValidationReport(filePath) { + return _Manifest.loadManifest(filePath, VALIDATION_REPORT_SCHEMA); + } + /** + * Fetch the current schema version number. + */ + static version() { + return `${SCHEMA_VERSION.revision}.0.0`; + } + /** + * Return the CLI version that supports this Cloud Assembly Schema version + */ + static cliVersion() { + const version3 = CLI_VERSION.version; + return version3 ? version3 : void 0; + } + /** + * Deprecated + * @deprecated use `saveAssemblyManifest()` + */ + static save(manifest, filePath) { + return this.saveAssemblyManifest(manifest, filePath); + } + /** + * Deprecated + * @deprecated use `loadAssemblyManifest()` + */ + static load(filePath) { + return this.loadAssemblyManifest(filePath); + } + static validate(manifest, schema, options) { + function parseVersion(version3) { + const ver = semver.valid(version3); + if (!ver) { + throw new Error(`Invalid semver string: "${version3}"`); + } + return ver; + } + const maxSupported = semver.major(parseVersion(_Manifest.version())); + const actual = parseVersion(manifest.version); + if (maxSupported < semver.major(actual) && !options?.skipVersionCheck) { + const cliVersion = manifest.minimumCliVersion; + let cliWarning = ""; + if (cliVersion) { + cliWarning = `. You need at least CLI version ${cliVersion} to read this manifest.`; + } + throw new Error(`${exports2.VERSION_MISMATCH}: Maximum schema version supported is ${maxSupported}.x.x, but found ${actual}${cliWarning}`); + } + if (options?.validateSchema ?? process.env.TESTING_CDK === "1") { + const validator = new jsonschema.Validator(); + const result = validator.validate(manifest, schema, { + nestedErrors: true, + allowUnknownAttributes: false, + preValidateProperty: _Manifest.validateAssumeRoleAdditionalOptions + }); + let errors = result.errors; + if (options?.skipEnumCheck) { + errors = stripEnumErrors(errors); + } + if (errors.length > 0) { + throw new Error(`Invalid assembly manifest: +${errors.map((e) => e.stack).join("\n")}`); + } + } + } + static saveManifest(manifest, filePath, schema, preprocess) { + let withVersion = { + ...manifest, + version: _Manifest.version(), + minimumCliVersion: _Manifest.cliVersion() + }; + _Manifest.validate(withVersion, schema); + if (preprocess) { + withVersion = preprocess(withVersion); + } + fs19.writeFileSync(filePath, JSON.stringify(withVersion, void 0, 2)); + } + static loadManifest(filePath, schema, preprocess, options) { + const contents = fs19.readFileSync(filePath, { encoding: "utf-8" }); + let obj; + try { + obj = JSON.parse(contents); + } catch (e) { + throw new Error(`${e.message}, while parsing ${JSON.stringify(contents)}`); + } + if (preprocess) { + obj = preprocess(obj); + } + _Manifest.validate(obj, schema, options); + return obj; + } + /** + * Fix the casing of stack tags entries + * + * At the very beginning of the CDK we used to emit stack tags as an object with + * `{ Key, Value }` keys; this had the "advantage" that we could stick those + * tags directly into the `CreateChangeSet` call. + * + * Then we later on used jsii on the assembly schema and we were forced to type + * the in-memory objects as `{ key, value }` with lowercase letters. Now the + * objects have a different on-disk and in-memory format, and we need to convert + * between them. + * + * For backwards compatibility reasons, we used to convert lowercase in-memory + * to uppercase on-disk variant until very recently. This is now unnecessary, + * since no officially supported CDK tools read the stack tags from the + * metadata; the CLI and toolkit library read stack tags from the artifact + * properties. + * + * So although we don't emit uppercase stack tag objects anymore, we might still read + * manifests that have them. Because the manifest we read must pass JSON Schema + * validation (which expects lowercase tag objects), we have to fix the casing + * of these objects after reading from disk and before validating. + * + * That's what this function does. + */ + static patchStackTagsOnRead(manifest) { + const artifacts = Object.values(manifest.artifacts ?? {}).filter((artifact) => artifact.type === assembly.ArtifactType.AWS_CLOUDFORMATION_STACK); + for (const artifact of artifacts) { + const tagMetadata = Object.values(artifact.metadata ?? {}).flatMap((x) => x).filter((entry) => entry.type === assembly.ArtifactMetadataEntryType.STACK_TAGS); + for (const entry of tagMetadata) { + const tags = entry.data; + for (const tag of tags ?? []) { + const t = tag; + if ("Key" in t) { + t.key = t.Key; + delete t.Key; + } + if ("Value" in t) { + t.value = t.Value; + delete t.Value; + } + } + } + } + return manifest; + } + /** + * Validates that `assumeRoleAdditionalOptions` doesn't contain nor `ExternalId` neither `RoleArn`, as they + * should have dedicated properties preceding this (e.g `assumeRoleArn` and `assumeRoleExternalId`). + */ + static validateAssumeRoleAdditionalOptions(instance, key, _schema, _options, _ctx) { + if (key !== "assumeRoleAdditionalOptions") { + return; + } + const assumeRoleOptions = instance[key]; + if (assumeRoleOptions?.RoleArn) { + throw new Error(`RoleArn is not allowed inside '${key}'`); + } + if (assumeRoleOptions?.ExternalId) { + throw new Error(`ExternalId is not allowed inside '${key}'`); + } + } + }; + exports2.Manifest = Manifest2; + function stripEnumErrors(errors) { + return errors.filter((e) => typeof e.schema === "string" || !("enum" in e.schema)); + } + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js +var require_schema3 = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js +var require_common = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RequireApproval = void 0; + var RequireApproval; + (function(RequireApproval2) { + RequireApproval2["NEVER"] = "never"; + RequireApproval2["ANYCHANGE"] = "any-change"; + RequireApproval2["BROADENING"] = "broadening"; + })(RequireApproval || (exports2.RequireApproval = RequireApproval = {})); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js +var require_deploy = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js +var require_destroy = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js +var require_commands = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js"(exports2) { + "use strict"; + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar2(require_common(), exports2); + __exportStar2(require_deploy(), exports2); + __exportStar2(require_destroy(), exports2); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js +var require_test_case = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js +var require_integ_tests = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js"(exports2) { + "use strict"; + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar2(require_schema3(), exports2); + __exportStar2(require_commands(), exports2); + __exportStar2(require_test_case(), exports2); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js +var require_lib2 = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js"(exports2) { + "use strict"; + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar2(require_cloud_assembly(), exports2); + __exportStar2(require_assets(), exports2); + __exportStar2(require_manifest(), exports2); + __exportStar2(require_integ_tests(), exports2); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js +var require_metadata = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SynthesisMessageLevel = exports2.PATH_METADATA_KEY = void 0; + exports2.PATH_METADATA_KEY = "aws:cdk:path"; + var SynthesisMessageLevel; + (function(SynthesisMessageLevel2) { + SynthesisMessageLevel2["INFO"] = "info"; + SynthesisMessageLevel2["WARNING"] = "warning"; + SynthesisMessageLevel2["ERROR"] = "error"; + })(SynthesisMessageLevel || (exports2.SynthesisMessageLevel = SynthesisMessageLevel = {})); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js +var require_error = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js"(exports2) { + "use strict"; + var __classPrivateFieldGet2 = exports2 && exports2.__classPrivateFieldGet || function(receiver, state, kind, f) { + if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); + return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); + }; + var __classPrivateFieldSet2 = exports2 && exports2.__classPrivateFieldSet || function(receiver, state, value, kind, f) { + if (kind === "m") throw new TypeError("Private method is not writable"); + if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); + return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value; + }; + var _CloudAssemblyError_time; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CloudAssemblyError = void 0; + var ASSEMBLY_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssemblyError"); + var CloudAssemblyError = class _CloudAssemblyError extends Error { + /** + * The time the error was thrown. + */ + get time() { + return __classPrivateFieldGet2(this, _CloudAssemblyError_time, "f"); + } + get type() { + return "assembly"; + } + constructor(msg) { + super(msg); + _CloudAssemblyError_time.set(this, void 0); + Object.setPrototypeOf(this, _CloudAssemblyError.prototype); + Object.defineProperty(this, ASSEMBLY_ERROR_SYMBOL, { value: true }); + this.name = new.target.name; + __classPrivateFieldSet2(this, _CloudAssemblyError_time, (/* @__PURE__ */ new Date()).toISOString(), "f"); + } + }; + exports2.CloudAssemblyError = CloudAssemblyError; + _CloudAssemblyError_time = /* @__PURE__ */ new WeakMap(); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js +var require_cloud_artifact = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CloudArtifact = void 0; + var fs19 = require("fs"); + var path23 = require("path"); + var cxschema2 = require_lib2(); + var metadata_1 = require_metadata(); + var error_1 = require_error(); + var CloudArtifact = class _CloudArtifact { + /** + * Read the metadata for the given artifact + * + * HISTORICAL OR PRIVATE USE ONLY + * + * This is publicly exposed as a static function for downstream libraries that + * don't use the `CloudAssembly`/`CloudArtifact` API, yet still need to read + * an artifact's metadata. + * + * 99% of consumers should just access `artifact.metadata`. + */ + static readMetadata(assemblyDirectory, x) { + const ret = {}; + if (x.additionalMetadataFile) { + Object.assign(ret, JSON.parse(fs19.readFileSync(path23.join(assemblyDirectory, x.additionalMetadataFile), "utf-8"))); + } + for (const [p, entries] of Object.entries(x.metadata ?? {})) { + if (ret[p]) { + ret[p].push(...entries); + } else { + ret[p] = entries; + } + } + return ret; + } + /** + * Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest. + * + * @param assembly - The cloud assembly from which to load the artifact + * @param id - The artifact ID + * @param artifact - The artifact manifest + * @returns the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module. + */ + static fromManifest(assembly, id, artifact) { + void assembly, void id, void artifact; + throw new error_1.CloudAssemblyError("Implementation not overridden yet"); + } + constructor(assembly, id, manifest) { + this.assembly = assembly; + this.id = id; + this.manifest = manifest; + this.messages = this.renderMessages(); + this._dependencyIDs = manifest.dependencies || []; + } + /** + * Returns the metadata associated with this Cloud Artifact + */ + get metadata() { + return _CloudArtifact.readMetadata(this.assembly.directory, this.manifest); + } + /** + * Returns all the artifacts that this artifact depends on. + */ + get dependencies() { + if (this._deps) { + return this._deps; + } + this._deps = this._dependencyIDs.map((id) => { + const dep = this.assembly.tryGetArtifact(id); + if (!dep) { + throw new error_1.CloudAssemblyError(`Artifact ${this.id} depends on non-existing artifact ${id}`); + } + return dep; + }); + return this._deps; + } + /** + * @returns all the metadata entries of a specific type in this artifact. + */ + findMetadataByType(type) { + const metadata = this.metadata; + const result = new Array(); + for (const p of Object.keys(metadata || {})) { + for (const entry of (metadata || {})[p]) { + if (entry.type === type) { + result.push({ path: p, ...entry }); + } + } + } + return result; + } + renderMessages() { + const messages = new Array(); + for (const [id, metadata] of Object.entries(this.metadata || {})) { + for (const entry of metadata) { + let level; + switch (entry.type) { + case cxschema2.ArtifactMetadataEntryType.WARN: + level = metadata_1.SynthesisMessageLevel.WARNING; + break; + case cxschema2.ArtifactMetadataEntryType.ERROR: + level = metadata_1.SynthesisMessageLevel.ERROR; + break; + case cxschema2.ArtifactMetadataEntryType.INFO: + level = metadata_1.SynthesisMessageLevel.INFO; + break; + default: + continue; + } + messages.push({ level, entry, id }); + } + } + return messages; + } + /** + * An identifier that shows where this artifact is located in the tree + * of nested assemblies, based on their manifests. Defaults to the normal + * id. Should only be used in user interfaces. + */ + get hierarchicalId() { + return this.manifest.displayName ?? this.id; + } + }; + exports2.CloudArtifact = CloudArtifact; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js +var require_asset_manifest_artifact = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AssetManifestArtifact = void 0; + var fs19 = require("fs"); + var path23 = require("path"); + var cloud_artifact_1 = require_cloud_artifact(); + var error_1 = require_error(); + var ASSET_MANIFEST_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.AssetManifestArtifact"); + var AssetManifestArtifact = class extends cloud_artifact_1.CloudArtifact { + /** + * Checks if `art` is an instance of this class. + * + * Use this method instead of `instanceof` to properly detect `AssetManifestArtifact` + * instances, even when the construct library is symlinked. + * + * Explanation: in JavaScript, multiple copies of the `cx-api` library on + * disk are seen as independent, completely different libraries. As a + * consequence, the class `AssetManifestArtifact` in each copy of the `cx-api` library + * is seen as a different class, and an instance of one class will not test as + * `instanceof` the other class. `npm install` will not create installations + * like this, but users may manually symlink construct libraries together or + * use a monorepo tool: in those cases, multiple copies of the `cx-api` + * library can be accidentally installed, and `instanceof` will behave + * unpredictably. It is safest to avoid using `instanceof`, and using + * this type-testing method instead. + */ + static isAssetManifestArtifact(art) { + return art && typeof art === "object" && art[ASSET_MANIFEST_ARTIFACT_SYM]; + } + constructor(assembly, name, artifact) { + super(assembly, name, artifact); + const properties = this.manifest.properties || {}; + if (!properties.file) { + throw new error_1.CloudAssemblyError('Invalid AssetManifestArtifact. Missing "file" property'); + } + this.file = path23.resolve(this.assembly.directory, properties.file); + this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion; + this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter; + } + /** + * The Asset Manifest contents + */ + get contents() { + if (this._contents !== void 0) { + return this._contents; + } + const contents = this._contents = JSON.parse(fs19.readFileSync(this.file, "utf-8")); + return contents; + } + }; + exports2.AssetManifestArtifact = AssetManifestArtifact; + Object.defineProperty(AssetManifestArtifact.prototype, ASSET_MANIFEST_ARTIFACT_SYM, { + value: true, + enumerable: false, + writable: false + }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js +var require_environment = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EnvironmentUtils = exports2.UNKNOWN_REGION = exports2.UNKNOWN_ACCOUNT = void 0; + var error_1 = require_error(); + var AWS_ENV_REGEX = /aws\:\/\/([a-z0-9A-Z\-\@\.\_]+)\/([a-z\-0-9]+)/; + exports2.UNKNOWN_ACCOUNT = "unknown-account"; + exports2.UNKNOWN_REGION = "unknown-region"; + var EnvironmentUtils2 = class { + static parse(environment) { + const env2 = AWS_ENV_REGEX.exec(environment); + if (!env2) { + throw new error_1.CloudAssemblyError(`Unable to parse environment specification "${environment}". Expected format: aws://account/region`); + } + const [, account, region] = env2; + if (!account || !region) { + throw new error_1.CloudAssemblyError(`Invalid environment specification: ${environment}`); + } + return { account, region, name: environment }; + } + /** + * Build an environment object from an account and region + */ + static make(account, region) { + return { account, region, name: this.format(account, region) }; + } + /** + * Format an environment string from an account and region + */ + static format(account, region) { + return `aws://${account}/${region}`; + } + }; + exports2.EnvironmentUtils = EnvironmentUtils2; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js +var require_cloudformation_artifact = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CloudFormationStackArtifact = void 0; + var fs19 = require("fs"); + var path23 = require("path"); + var cxschema2 = require_lib2(); + var cloud_artifact_1 = require_cloud_artifact(); + var environment_1 = require_environment(); + var error_1 = require_error(); + var CLOUDFORMATION_STACK_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudFormationStackArtifact"); + var CloudFormationStackArtifact = class extends cloud_artifact_1.CloudArtifact { + /** + * Checks if `art` is an instance of this class. + * + * Use this method instead of `instanceof` to properly detect `CloudFormationStackArtifact` + * instances, even when the construct library is symlinked. + * + * Explanation: in JavaScript, multiple copies of the `cx-api` library on + * disk are seen as independent, completely different libraries. As a + * consequence, the class `CloudFormationStackArtifact` in each copy of the `cx-api` library + * is seen as a different class, and an instance of one class will not test as + * `instanceof` the other class. `npm install` will not create installations + * like this, but users may manually symlink construct libraries together or + * use a monorepo tool: in those cases, multiple copies of the `cx-api` + * library can be accidentally installed, and `instanceof` will behave + * unpredictably. It is safest to avoid using `instanceof`, and using + * this type-testing method instead. + */ + static isCloudFormationStackArtifact(art) { + return art && typeof art === "object" && CLOUDFORMATION_STACK_ARTIFACT_SYM in art; + } + constructor(assembly, artifactId, artifact) { + super(assembly, artifactId, artifact); + const properties = this.manifest.properties || {}; + if (!properties.templateFile) { + throw new error_1.CloudAssemblyError('Invalid CloudFormation stack artifact. Missing "templateFile" property in cloud assembly manifest'); + } + if (!artifact.environment) { + throw new error_1.CloudAssemblyError("Invalid CloudFormation stack artifact. Missing environment"); + } + this.environment = environment_1.EnvironmentUtils.parse(artifact.environment); + this.templateFile = properties.templateFile; + this.parameters = properties.parameters ?? {}; + this.tags = properties.tags ?? {}; + this.notificationArns = properties.notificationArns; + this.assumeRoleArn = properties.assumeRoleArn; + this.assumeRoleExternalId = properties.assumeRoleExternalId; + this.assumeRoleAdditionalOptions = properties.assumeRoleAdditionalOptions; + this.cloudFormationExecutionRoleArn = properties.cloudFormationExecutionRoleArn; + this.stackTemplateAssetObjectUrl = properties.stackTemplateAssetObjectUrl; + this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion; + this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter; + this.terminationProtection = properties.terminationProtection; + this.validateOnSynth = properties.validateOnSynth; + this.lookupRole = properties.lookupRole; + this.stackName = properties.stackName || artifactId; + this.assets = this.findMetadataByType(cxschema2.ArtifactMetadataEntryType.ASSET).map((e) => e.data); + this.displayName = this.stackName === artifactId ? this.hierarchicalId : `${this.hierarchicalId} (${this.stackName})`; + this.name = this.stackName; + this.originalName = this.stackName; + } + /** + * Full path to the template file + */ + get templateFullPath() { + return path23.join(this.assembly.directory, this.templateFile); + } + /** + * The CloudFormation template for this stack. + */ + get template() { + if (this._template === void 0) { + this._template = JSON.parse(fs19.readFileSync(this.templateFullPath, "utf-8")); + } + return this._template; + } + }; + exports2.CloudFormationStackArtifact = CloudFormationStackArtifact; + Object.defineProperty(CloudFormationStackArtifact.prototype, CLOUDFORMATION_STACK_ARTIFACT_SYM, { + value: true, + enumerable: false, + writable: false + }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js +var require_nested_cloud_assembly_artifact = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NestedCloudAssemblyArtifact = void 0; + var path23 = require("path"); + var cloud_artifact_1 = require_cloud_artifact(); + var NESTED_CLOUD_ASSEMBLY_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.NestedCloudAssemblyArtifact"); + var NestedCloudAssemblyArtifact = class extends cloud_artifact_1.CloudArtifact { + /** + * Checks if `art` is an instance of this class. + * + * Use this method instead of `instanceof` to properly detect `NestedCloudAssemblyArtifact` + * instances, even when the construct library is symlinked. + * + * Explanation: in JavaScript, multiple copies of the `cx-api` library on + * disk are seen as independent, completely different libraries. As a + * consequence, the class `NestedCloudAssemblyArtifact` in each copy of the `cx-api` library + * is seen as a different class, and an instance of one class will not test as + * `instanceof` the other class. `npm install` will not create installations + * like this, but users may manually symlink construct libraries together or + * use a monorepo tool: in those cases, multiple copies of the `cx-api` + * library can be accidentally installed, and `instanceof` will behave + * unpredictably. It is safest to avoid using `instanceof`, and using + * this type-testing method instead. + */ + static isNestedCloudAssemblyArtifact(art) { + return art && typeof art === "object" && NESTED_CLOUD_ASSEMBLY_SYM in art; + } + constructor(assembly, name, artifact) { + super(assembly, name, artifact); + const properties = this.manifest.properties || {}; + this.directoryName = properties.directoryName; + this.displayName = properties.displayName ?? name; + } + /** + * Full path to the nested assembly directory + */ + get fullPath() { + return path23.join(this.assembly.directory, this.directoryName); + } + }; + exports2.NestedCloudAssemblyArtifact = NestedCloudAssemblyArtifact; + Object.defineProperty(NestedCloudAssemblyArtifact.prototype, NESTED_CLOUD_ASSEMBLY_SYM, { + value: true, + enumerable: false, + writable: false + }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js +var require_tree_cloud_artifact = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TreeCloudArtifact = void 0; + var cloud_artifact_1 = require_cloud_artifact(); + var error_1 = require_error(); + var TREE_CLOUD_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.TreeCloudArtifact"); + var TreeCloudArtifact = class extends cloud_artifact_1.CloudArtifact { + /** + * Checks if `art` is an instance of this class. + * + * Use this method instead of `instanceof` to properly detect `TreeCloudArtifact` + * instances, even when the construct library is symlinked. + * + * Explanation: in JavaScript, multiple copies of the `cx-api` library on + * disk are seen as independent, completely different libraries. As a + * consequence, the class `TreeCloudArtifact` in each copy of the `cx-api` library + * is seen as a different class, and an instance of one class will not test as + * `instanceof` the other class. `npm install` will not create installations + * like this, but users may manually symlink construct libraries together or + * use a monorepo tool: in those cases, multiple copies of the `cx-api` + * library can be accidentally installed, and `instanceof` will behave + * unpredictably. It is safest to avoid using `instanceof`, and using + * this type-testing method instead. + */ + static isTreeCloudArtifact(art) { + return art && typeof art === "object" && TREE_CLOUD_ARTIFACT_SYM in art; + } + constructor(assembly, name, artifact) { + super(assembly, name, artifact); + const properties = this.manifest.properties || {}; + if (!properties.file) { + throw new error_1.CloudAssemblyError('Invalid TreeCloudArtifact. Missing "file" property'); + } + this.file = properties.file; + } + }; + exports2.TreeCloudArtifact = TreeCloudArtifact; + Object.defineProperty(TreeCloudArtifact.prototype, TREE_CLOUD_ARTIFACT_SYM, { + value: true, + enumerable: false, + writable: false + }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js +var require_cloud_artifact_aug = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var cxschema2 = require_lib2(); + var asset_manifest_artifact_1 = require_asset_manifest_artifact(); + var cloudformation_artifact_1 = require_cloudformation_artifact(); + var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact(); + var tree_cloud_artifact_1 = require_tree_cloud_artifact(); + var cloud_artifact_1 = require_cloud_artifact(); + cloud_artifact_1.CloudArtifact.fromManifest = function fromManifest(assembly, id, artifact) { + switch (artifact.type) { + case cxschema2.ArtifactType.AWS_CLOUDFORMATION_STACK: + return new cloudformation_artifact_1.CloudFormationStackArtifact(assembly, id, artifact); + case cxschema2.ArtifactType.CDK_TREE: + return new tree_cloud_artifact_1.TreeCloudArtifact(assembly, id, artifact); + case cxschema2.ArtifactType.ASSET_MANIFEST: + return new asset_manifest_artifact_1.AssetManifestArtifact(assembly, id, artifact); + case cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY: + return new nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact(assembly, id, artifact); + default: + return void 0; + } + }; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js +var require_toposort = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.topologicalSort = topologicalSort; + var error_1 = require_error(); + function topologicalSort(xs, keyFn, depFn) { + const remaining = /* @__PURE__ */ new Map(); + for (const element of xs) { + const key = keyFn(element); + remaining.set(key, { key, element, dependencies: depFn(element) }); + } + const ret = new Array(); + while (remaining.size > 0) { + const selectable = Array.from(remaining.values()).filter((e) => e.dependencies.every((d) => !remaining.has(d))); + selectable.sort((a, b) => a.key < b.key ? -1 : b.key < a.key ? 1 : 0); + for (const selected of selectable) { + ret.push(selected.element); + remaining.delete(selected.key); + } + if (selectable.length === 0) { + throw new error_1.CloudAssemblyError(`Could not determine ordering between: ${Array.from(remaining.keys()).join(", ")}`); + } + } + return ret; + } + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js +var require_cloud_assembly2 = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CloudAssemblyBuilder = exports2.CloudAssembly = void 0; + var fs19 = require("fs"); + var os4 = require("os"); + var path23 = require("path"); + var cxschema2 = require_lib2(); + var cloudformation_artifact_1 = require_cloudformation_artifact(); + var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact(); + var tree_cloud_artifact_1 = require_tree_cloud_artifact(); + var cloud_artifact_1 = require_cloud_artifact(); + var error_1 = require_error(); + var toposort_1 = require_toposort(); + var CLOUD_ASSEMBLY_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssembly"); + var MANIFEST_FILE = "manifest.json"; + var CloudAssembly = class { + /** + * Return whether the given object is a CloudAssembly. + * + * We do attribute detection since we can't reliably use 'instanceof'. + */ + static isCloudAssembly(x) { + return x !== null && typeof x === "object" && CLOUD_ASSEMBLY_SYMBOL in x; + } + /** + * Cleans up any temporary assembly directories that got created in this process + * + * If a Cloud Assembly is emitted to a temporary directory, its directory gets + * added to a list. This function iterates over that list and deletes each + * directory in it, to free up disk space. + * + * This function will normally be called automatically during Node process + * exit and so you don't need to call this. However, some test environments do + * not properly trigger Node's `exit` event. Notably: Jest does not trigger + * the `exit` event (). + * + * ## Cleaning up temporary directories in jest + * + * For Jest, you have to make sure this function is called at the end of the + * test suite instead: + * + * ```js + * import { CloudAssembly } from 'aws-cdk-lib/cx-api'; + * + * afterAll(CloudAssembly.cleanupTemporaryDirectories); + * ``` + * + * Alternatively, you can use the `setupFilesAfterEnv` feature and use a + * provided helper script to automatically inject the above into every + * test file, so you don't have to do it by hand. + * + * ``` + * $ npx jest --setupFilesAfterEnv aws-cdk-lib/testhelpers/jest-autoclean + * ``` + * + * Or put the following into `jest.config.js`: + * + * ```js + * module.exports = { + * // ... + * setupFilesAfterEnv: ['aws-cdk-lib/testhelpers/jest-cleanup'], + * }; + * ``` + */ + static cleanupTemporaryDirectories() { + for (const dir of TEMPORARY_ASSEMBLY_DIRS) { + fs19.rmSync(dir, { recursive: true, force: true }); + } + TEMPORARY_ASSEMBLY_DIRS.splice(0, TEMPORARY_ASSEMBLY_DIRS.length); + } + /** + * Reads a cloud assembly from the specified directory. + * @param directory - The root directory of the assembly. + */ + constructor(directory, loadOptions) { + this.directory = directory; + this.loadOptions = loadOptions; + this.manifest = cxschema2.Manifest.loadAssemblyManifest(path23.join(directory, MANIFEST_FILE), this.loadOptions); + this.version = this.manifest.version; + this.artifacts = this.renderArtifacts(this.loadOptions?.topoSort ?? true); + this.runtime = this.manifest.runtime || { libraries: {} }; + Object.defineProperty(this, CLOUD_ASSEMBLY_SYMBOL, { value: true }); + this.validateDeps(); + } + /** + * Attempts to find an artifact with a specific identity. + * @returns A `CloudArtifact` object or `undefined` if the artifact does not exist in this assembly. + * @param id - The artifact ID + */ + tryGetArtifact(id) { + return this.artifacts.find((a) => a.id === id); + } + /** + * Returns a CloudFormation stack artifact from this assembly. + * + * Will only search the current assembly. + * + * @param stackName - the name of the CloudFormation stack. + * @throws if there is no stack artifact by that name + * @throws if there is more than one stack with the same stack name. You can + * use `getStackArtifact(stack.artifactId)` instead. + * @returns a `CloudFormationStackArtifact` object. + */ + getStackByName(stackName) { + const artifacts = this.artifacts.filter((a) => a instanceof cloudformation_artifact_1.CloudFormationStackArtifact && a.stackName === stackName); + if (!artifacts || artifacts.length === 0) { + throw new error_1.CloudAssemblyError(`Unable to find stack with stack name "${stackName}"`); + } + if (artifacts.length > 1) { + throw new error_1.CloudAssemblyError(`There are multiple stacks with the stack name "${stackName}" (${artifacts.map((a) => a.id).join(",")}). Use "getStackArtifact(id)" instead`); + } + return artifacts[0]; + } + /** + * Returns a CloudFormation stack artifact by name from this assembly. + * @deprecated renamed to `getStackByName` (or `getStackArtifact(id)`) + */ + getStack(stackName) { + return this.getStackByName(stackName); + } + /** + * Returns a CloudFormation stack artifact from this assembly. + * + * @param artifactId - the artifact id of the stack (can be obtained through `stack.artifactId`). + * @throws if there is no stack artifact with that id + * @returns a `CloudFormationStackArtifact` object. + */ + getStackArtifact(artifactId) { + const artifact = this.tryGetArtifactRecursively(artifactId); + if (!artifact) { + throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`); + } + if (!(artifact instanceof cloudformation_artifact_1.CloudFormationStackArtifact)) { + throw new error_1.CloudAssemblyError(`Artifact ${artifactId} is not a CloudFormation stack`); + } + return artifact; + } + tryGetArtifactRecursively(artifactId) { + return this.stacksRecursively.find((a) => a.id === artifactId); + } + /** + * Returns all the stacks, including the ones in nested assemblies + */ + get stacksRecursively() { + function search(stackArtifacts, assemblies) { + if (assemblies.length === 0) { + return stackArtifacts; + } + const [head, ...tail] = assemblies; + const nestedAssemblies = head.nestedAssemblies.map((asm) => asm.nestedAssembly); + return search(stackArtifacts.concat(head.stacks), tail.concat(nestedAssemblies)); + } + return search([], [this]); + } + /** + * Returns a nested assembly artifact. + * + * @param artifactId - The artifact ID of the nested assembly + */ + getNestedAssemblyArtifact(artifactId) { + const artifact = this.tryGetArtifact(artifactId); + if (!artifact) { + throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`); + } + if (!(artifact instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact)) { + throw new error_1.CloudAssemblyError(`Found artifact '${artifactId}' but it's not a nested cloud assembly`); + } + return artifact; + } + /** + * Returns a nested assembly. + * + * @param artifactId - The artifact ID of the nested assembly + */ + getNestedAssembly(artifactId) { + return this.getNestedAssemblyArtifact(artifactId).nestedAssembly; + } + /** + * Returns the tree metadata artifact from this assembly. + * @throws if there is no metadata artifact by that name + * @returns a `TreeCloudArtifact` object if there is one defined in the manifest, `undefined` otherwise. + */ + tree() { + const trees = this.artifacts.filter((a) => a.manifest.type === cxschema2.ArtifactType.CDK_TREE); + if (trees.length === 0) { + return void 0; + } else if (trees.length > 1) { + throw new error_1.CloudAssemblyError(`Multiple artifacts of type ${cxschema2.ArtifactType.CDK_TREE} found in manifest`); + } + const tree = trees[0]; + if (!(tree instanceof tree_cloud_artifact_1.TreeCloudArtifact)) { + throw new error_1.CloudAssemblyError('"Tree" artifact is not of expected type'); + } + return tree; + } + /** + * @returns all the CloudFormation stack artifacts that are included in this assembly. + */ + get stacks() { + return this.artifacts.filter(isCloudFormationStackArtifact); + function isCloudFormationStackArtifact(x) { + return x instanceof cloudformation_artifact_1.CloudFormationStackArtifact; + } + } + /** + * The nested assembly artifacts in this assembly + */ + get nestedAssemblies() { + return this.artifacts.filter(isNestedCloudAssemblyArtifact); + function isNestedCloudAssemblyArtifact(x) { + return x instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact; + } + } + validateDeps() { + for (const artifact of this.artifacts) { + ignore(artifact.dependencies); + } + } + renderArtifacts(topoSort) { + const result = new Array(); + for (const [name, artifact] of Object.entries(this.manifest.artifacts || {})) { + const cloudartifact = cloud_artifact_1.CloudArtifact.fromManifest(this, name, artifact); + if (cloudartifact) { + result.push(cloudartifact); + } + } + return topoSort ? (0, toposort_1.topologicalSort)(result, (x) => x.id, (x) => x._dependencyIDs) : result; + } + }; + exports2.CloudAssembly = CloudAssembly; + var CloudAssemblyBuilder3 = class _CloudAssemblyBuilder { + /** + * Initializes a cloud assembly builder. + * @param outdir - The output directory, uses temporary directory if undefined + */ + constructor(outdir, props = {}) { + this.artifacts = {}; + this.missing = new Array(); + this.outdir = determineOutputDirectory(outdir); + this.assetOutdir = props.assetOutdir ?? this.outdir; + this.parentBuilder = props.parentBuilder; + ensureDirSync2(this.outdir); + } + /** + * Adds an artifact into the cloud assembly. + * @param id - The ID of the artifact. + * @param manifest - The artifact manifest + */ + addArtifact(id, manifest) { + this.artifacts[id] = filterUndefined2(manifest); + } + /** + * Reports that some context is missing in order for this cloud assembly to be fully synthesized. + * @param missing - Missing context information. + */ + addMissing(missing) { + if (this.missing.every((m) => m.key !== missing.key)) { + this.missing.push(missing); + } + this.parentBuilder?.addMissing(missing); + } + /** + * Finalizes the cloud assembly into the output directory returns a + * `CloudAssembly` object that can be used to inspect the assembly. + */ + buildAssembly(options = {}) { + let manifest = { + version: cxschema2.Manifest.version(), + artifacts: this.artifacts, + runtime: options.runtimeInfo, + missing: this.missing.length > 0 ? this.missing : void 0 + }; + manifest = filterUndefined2(manifest); + const manifestFilePath = path23.join(this.outdir, MANIFEST_FILE); + cxschema2.Manifest.saveAssemblyManifest(manifest, manifestFilePath); + fs19.writeFileSync(path23.join(this.outdir, "cdk.out"), JSON.stringify({ version: manifest.version })); + return new CloudAssembly(this.outdir); + } + /** + * Creates a nested cloud assembly + */ + createNestedAssembly(artifactId, displayName) { + const directoryName = artifactId; + const innerAsmDir = path23.join(this.outdir, directoryName); + this.addArtifact(artifactId, { + type: cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY, + properties: { + directoryName, + displayName + } + }); + return new _CloudAssemblyBuilder(innerAsmDir, { + // Reuse the same asset output directory as the current Casm builder + assetOutdir: this.assetOutdir, + parentBuilder: this + }); + } + /** + * Delete the cloud assembly directory + */ + delete() { + fs19.rmSync(this.outdir, { recursive: true, force: true }); + } + }; + exports2.CloudAssemblyBuilder = CloudAssemblyBuilder3; + function filterUndefined2(obj) { + if (Array.isArray(obj)) { + return obj.filter((x) => x !== void 0).map((x) => filterUndefined2(x)); + } + if (typeof obj === "object") { + const ret = {}; + for (const [key, value] of Object.entries(obj)) { + if (value === void 0) { + continue; + } + ret[key] = filterUndefined2(value); + } + return ret; + } + return obj; + } + function ignore(_x) { + return; + } + function determineOutputDirectory(outdir) { + if (outdir) { + return outdir; + } + const tmpDir = fs19.mkdtempSync(path23.join(fs19.realpathSync(os4.tmpdir()), "cdk.out")); + TEMPORARY_ASSEMBLY_DIRS.push(tmpDir); + return outdir ?? tmpDir; + } + function ensureDirSync2(dir) { + if (fs19.existsSync(dir)) { + if (!fs19.statSync(dir).isDirectory()) { + throw new error_1.CloudAssemblyError(`${dir} must be a directory`); + } + } else { + fs19.mkdirSync(dir, { recursive: true }); + } + } + var TEMPORARY_ASSEMBLY_DIRS = []; + process.on("exit", () => CloudAssembly.cleanupTemporaryDirectories()); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js +var require_nested_cloud_assembly_artifact_aug = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact(); + var cloud_assembly_1 = require_cloud_assembly2(); + var cacheSym = /* @__PURE__ */ Symbol(); + Object.defineProperty(nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact.prototype, "nestedAssembly", { + get() { + if (!this[cacheSym]) { + this[cacheSym] = new cloud_assembly_1.CloudAssembly(this.fullPath, this.assembly.loadOptions); + } + return this[cacheSym]; + } + }); + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js +var require_assets2 = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ASSET_PREFIX_SEPARATOR = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = void 0; + exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = "aws:cdk:enable-asset-metadata"; + exports2.ASSET_RESOURCE_METADATA_PATH_KEY = "aws:asset:path"; + exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = "aws:asset:dockerfile-path"; + exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = "aws:asset:docker-build-args"; + exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = "aws:asset:docker-build-contexts"; + exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = "aws:asset:docker-build-secrets"; + exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = "aws:asset:docker-build-ssh"; + exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = "aws:asset:docker-build-target"; + exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = "aws:asset:property"; + exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = "aws:asset:is-bundled"; + exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = "aws:asset:docker-outputs"; + exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = "aws:asset:docker-cache-from"; + exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = "aws:asset:docker-cache-to"; + exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = "aws:asset:docker-cache-disabled"; + exports2.ASSET_PREFIX_SEPARATOR = "||"; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js +var require_placeholders = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EnvironmentPlaceholders = void 0; + var EnvironmentPlaceholders4 = class _EnvironmentPlaceholders { + /** + * Replace the environment placeholders in all strings found in a complex object. + * + * Duplicated between cdk-assets and aws-cdk CLI because we don't have a good single place to put it + * (they're nominally independent tools). + */ + static replace(object, values) { + return this.recurse(object, (value) => { + value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, values.region); + value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, values.accountId); + value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, values.partition); + return value; + }); + } + /** + * Like 'replace', but asynchronous + */ + static async replaceAsync(object, provider) { + let needRegion = false; + let needAccountId = false; + let needPartition = false; + this.recurse(object, (value) => { + if (value.indexOf(_EnvironmentPlaceholders.CURRENT_REGION) > 1) { + needRegion = true; + } + if (value.indexOf(_EnvironmentPlaceholders.CURRENT_ACCOUNT) > 1) { + needAccountId = true; + } + if (value.indexOf(_EnvironmentPlaceholders.CURRENT_PARTITION) > 1) { + needPartition = true; + } + return value; + }); + const region = needRegion ? await provider.region() : void 0; + const accountId = needAccountId ? await provider.accountId() : void 0; + const partition = needPartition ? await provider.partition() : void 0; + return this.recurse(object, (value) => { + value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, region ?? "WONTHAPPEN"); + value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, accountId ?? "WONTHAPPEN"); + value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, partition ?? "WONTHAPPEN"); + return value; + }); + } + static recurse(value, cb) { + if (typeof value === "string") { + return cb(value); + } + if (typeof value !== "object" || value === null) { + return value; + } + if (Array.isArray(value)) { + return value.map((x) => this.recurse(x, cb)); + } + const ret = {}; + for (const [key, inner] of Object.entries(value)) { + ret[key] = this.recurse(inner, cb); + } + return ret; + } + }; + exports2.EnvironmentPlaceholders = EnvironmentPlaceholders4; + EnvironmentPlaceholders4.CURRENT_REGION = "${AWS::Region}"; + EnvironmentPlaceholders4.CURRENT_ACCOUNT = "${AWS::AccountId}"; + EnvironmentPlaceholders4.CURRENT_PARTITION = "${AWS::Partition}"; + function replaceAll3(s, search, replace) { + return s.split(search).join(replace); + } + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js +var require_bootstrap = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SSMPARAM_NO_INVALIDATE = void 0; + exports2.SSMPARAM_NO_INVALIDATE = "[cdk:skip]"; + } +}); + +// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js +var require_lib3 = __commonJS({ + "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js"(exports2) { + "use strict"; + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar2(require_vpc(), exports2); + __exportStar2(require_ami(), exports2); + __exportStar2(require_load_balancer(), exports2); + __exportStar2(require_availability_zones(), exports2); + __exportStar2(require_endpoint_service_availability_zones(), exports2); + __exportStar2(require_security_group(), exports2); + __exportStar2(require_key(), exports2); + __exportStar2(require_generic(), exports2); + __exportStar2(require_cloud_artifact(), exports2); + require_cloud_artifact_aug(); + __exportStar2(require_asset_manifest_artifact(), exports2); + __exportStar2(require_cloudformation_artifact(), exports2); + __exportStar2(require_tree_cloud_artifact(), exports2); + __exportStar2(require_nested_cloud_assembly_artifact(), exports2); + require_nested_cloud_assembly_artifact_aug(); + __exportStar2(require_cloud_assembly2(), exports2); + __exportStar2(require_assets2(), exports2); + __exportStar2(require_metadata(), exports2); + __exportStar2(require_placeholders(), exports2); + __exportStar2(require_environment(), exports2); + __exportStar2(require_bootstrap(), exports2); + } +}); + +// ../../aws-cdk-lib/cx-api/lib/legacy-moved.ts +function _convertCloudAssembly(x) { + return x; +} +function _convertCloudAssemblyBuilder(x) { + return x; +} +var import_cloud_assembly_api; +var init_legacy_moved = __esm({ + "../../aws-cdk-lib/cx-api/lib/legacy-moved.ts"() { + "use strict"; + import_cloud_assembly_api = __toESM(require_lib3()); + exports.CloudAssembly = import_cloud_assembly_api.CloudAssembly; + exports.CloudArtifact = import_cloud_assembly_api.CloudArtifact; + exports.CloudFormationStackArtifact = import_cloud_assembly_api.CloudFormationStackArtifact; + exports.AssetManifestArtifact = import_cloud_assembly_api.AssetManifestArtifact; + exports.NestedCloudAssemblyArtifact = import_cloud_assembly_api.NestedCloudAssemblyArtifact; + exports.TreeCloudArtifact = import_cloud_assembly_api.TreeCloudArtifact; + exports.CloudAssemblyBuilder = import_cloud_assembly_api.CloudAssemblyBuilder; + exports.EnvironmentPlaceholders = import_cloud_assembly_api.EnvironmentPlaceholders; + exports.EnvironmentUtils = import_cloud_assembly_api.EnvironmentUtils; + } +}); + +// ../../aws-cdk-lib/cx-api/lib/cxapi.ts +var OUTDIR_ENV, CONTEXT_ENV, ERRORFILE_ENV, PERF_COUNTERS_FILE_ENV, CONTEXT_OVERFLOW_LOCATION_ENV, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, VALIDATION_REPORT_FILE, VALIDATION_REPORT_JSON_CONTEXT, STRICT_CFN_VALIDATE_ERRORS, CDK_APP_MODE_ENV, CDK_APP_MODE_CONTEXT, CDK_TEMPLATE_FILE_KEY; +var init_cxapi = __esm({ + "../../aws-cdk-lib/cx-api/lib/cxapi.ts"() { + "use strict"; + OUTDIR_ENV = "CDK_OUTDIR"; + CONTEXT_ENV = "CDK_CONTEXT_JSON"; + ERRORFILE_ENV = "CDK_ERROR_FILE"; + PERF_COUNTERS_FILE_ENV = "CDK_PERF_COUNTERS_FILE"; + CONTEXT_OVERFLOW_LOCATION_ENV = "CONTEXT_OVERFLOW_LOCATION_ENV"; + FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT = "@aws-cdk/core:failSynthOnValidationErrors"; + VALIDATION_REPORT_FILE = "validation-report.json"; + VALIDATION_REPORT_JSON_CONTEXT = "@aws-cdk/core:validationReportJson"; + STRICT_CFN_VALIDATE_ERRORS = "@aws-cdk/core:strictCfnValidateErrors"; + CDK_APP_MODE_ENV = "CDK_APP_MODE"; + CDK_APP_MODE_CONTEXT = "@aws-cdk/core:appMode"; + CDK_TEMPLATE_FILE_KEY = "aws:cdk:templateFile"; + } +}); + +// ../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts +var init_flag_modeling = __esm({ + "../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/cx-api/lib/features.ts +function futureFlagDefault(flag) { + const value = CURRENT_VERSION_FLAG_DEFAULTS[flag] ?? false; + if (typeof value !== "boolean") { + throw new Error(`futureFlagDefault: default type of flag '${flag}' should be boolean, got '${typeof value}'`); + } + return value; +} +var ENABLE_STACK_NAME_DUPLICATES_CONTEXT, ENABLE_DIFF_NO_FAIL_CONTEXT, NEW_STYLE_STACK_SYNTHESIS_CONTEXT, STACK_RELATIVE_EXPORTS_CONTEXT, DOCKER_IGNORE_SUPPORT, SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME, KMS_DEFAULT_KEY_POLICIES, S3_GRANT_WRITE_WITHOUT_ACL, ECS_REMOVE_DEFAULT_DESIRED_COUNT, RDS_LOWERCASE_DB_IDENTIFIER, APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID, EFS_DEFAULT_ENCRYPTION_AT_REST, LAMBDA_RECOGNIZE_VERSION_PROPS, LAMBDA_RECOGNIZE_LAYER_VERSION, CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021, CHECK_SECRET_USAGE, TARGET_PARTITIONS, ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER, EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME, ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME, IAM_MINIMIZE_POLICIES, IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME, VALIDATE_SNAPSHOT_REMOVAL_POLICY, CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME, S3_CREATE_DEFAULT_LOGGING_POLICY, SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY, APIGATEWAY_DISABLE_CLOUDWATCH_ROLE, ENABLE_PARTITION_LITERALS, EVENTS_TARGET_QUEUE_SAME_ACCOUNT, ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER, ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER, S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY, ROUTE53_PATTERNS_USE_CERTIFICATE, ROUTE53_PATTERNS_USE_DISTRIBUTION, AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT, DATABASE_PROXY_UNIQUE_RESOURCE_NAME, CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP, APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID, EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA, SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY, REDSHIFT_COLUMN_ID, ENABLE_EMR_SERVICE_POLICY_V2, EC2_RESTRICT_DEFAULT_SECURITY_GROUP, APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID, APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD, INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION, KMS_ALIAS_NAME_REF, KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL, EFS_DENY_ANONYMOUS_ACCESS, EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID, AUTOSCALING_GENERATE_LAUNCH_TEMPLATE, ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY, LAMBDA_NODEJS_USE_LATEST_RUNTIME, RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS, AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS, APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION, CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME, LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION, CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE, CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2, KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE, PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE, EKS_NODEGROUP_NAME, EKS_USE_NATIVE_OIDC_PROVIDER, ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID, EBS_DEFAULT_GP3, ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM, LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT, S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET, USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK, EXPLICIT_STACK_TAGS, REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS, DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA, EC2_SUM_TIMEOUT_ENABLED, APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION, USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY, CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS, LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES, STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY, STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2, BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT, ASPECT_STABILIZATION, SIGNER_PROFILE_NAME_PASSED_TO_CFN, USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE, ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT, IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS, ENABLE_ADDITIONAL_METADATA_COLLECTION, LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY, SET_UNIQUE_REPLICATION_ROLE_NAME, PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE, EVENTBUS_POLICY_SID_REQUIRED, ASPECT_PRIORITIES_MUTATING, DYNAMODB_TABLE_RETAIN_TABLE_REPLICA, LOG_USER_POOL_CLIENT_SECRET_VALUE, PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE, S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS, EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY, USE_RESOURCEID_FOR_VPCV2_MIGRATION, S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT, USE_CDK_MANAGED_LAMBDA_LOGGROUP, NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT, STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT, CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0, ELB_USE_POST_QUANTUM_TLS_POLICY, AUTOMATIC_L1_TRAITS, BATCH_DEFAULT_AL2023, EKS_DEFAULT_AL2023, ANNOTATIONS_IN_VALIDATION_REPORT, DEFAULT_CROSS_STACK_REFERENCES, VALIDATE_AGAINST_DEFAULT_RULES, ECS_REMOVE_EMPTY_LOAD_BALANCERS, CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS, FLAGS, CURRENT_MV, CURRENT_VERSION_EXPIRED_FLAGS, CURRENTLY_RECOMMENDED_FLAGS, CURRENT_VERSION_FLAG_DEFAULTS, FUTURE_FLAGS, NEW_PROJECT_DEFAULT_CONTEXT; +var init_features = __esm({ + "../../aws-cdk-lib/cx-api/lib/features.ts"() { + "use strict"; + init_flag_modeling(); + ENABLE_STACK_NAME_DUPLICATES_CONTEXT = "@aws-cdk/core:enableStackNameDuplicates"; + ENABLE_DIFF_NO_FAIL_CONTEXT = "aws-cdk:enableDiffNoFail"; + NEW_STYLE_STACK_SYNTHESIS_CONTEXT = "@aws-cdk/core:newStyleStackSynthesis"; + STACK_RELATIVE_EXPORTS_CONTEXT = "@aws-cdk/core:stackRelativeExports"; + DOCKER_IGNORE_SUPPORT = "@aws-cdk/aws-ecr-assets:dockerIgnoreSupport"; + SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME = "@aws-cdk/aws-secretsmanager:parseOwnedSecretName"; + KMS_DEFAULT_KEY_POLICIES = "@aws-cdk/aws-kms:defaultKeyPolicies"; + S3_GRANT_WRITE_WITHOUT_ACL = "@aws-cdk/aws-s3:grantWriteWithoutAcl"; + ECS_REMOVE_DEFAULT_DESIRED_COUNT = "@aws-cdk/aws-ecs-patterns:removeDefaultDesiredCount"; + RDS_LOWERCASE_DB_IDENTIFIER = "@aws-cdk/aws-rds:lowercaseDbIdentifier"; + APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID = "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId"; + EFS_DEFAULT_ENCRYPTION_AT_REST = "@aws-cdk/aws-efs:defaultEncryptionAtRest"; + LAMBDA_RECOGNIZE_VERSION_PROPS = "@aws-cdk/aws-lambda:recognizeVersionProps"; + LAMBDA_RECOGNIZE_LAYER_VERSION = "@aws-cdk/aws-lambda:recognizeLayerVersion"; + CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021 = "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021"; + CHECK_SECRET_USAGE = "@aws-cdk/core:checkSecretUsage"; + TARGET_PARTITIONS = "@aws-cdk/core:target-partitions"; + ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER = "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver"; + EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME = "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName"; + ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME = "@aws-cdk/aws-ecs:arnFormatIncludesClusterName"; + IAM_MINIMIZE_POLICIES = "@aws-cdk/aws-iam:minimizePolicies"; + IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME = "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName"; + VALIDATE_SNAPSHOT_REMOVAL_POLICY = "@aws-cdk/core:validateSnapshotRemovalPolicy"; + CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME = "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName"; + S3_CREATE_DEFAULT_LOGGING_POLICY = "@aws-cdk/aws-s3:createDefaultLoggingPolicy"; + SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY = "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption"; + APIGATEWAY_DISABLE_CLOUDWATCH_ROLE = "@aws-cdk/aws-apigateway:disableCloudWatchRole"; + ENABLE_PARTITION_LITERALS = "@aws-cdk/core:enablePartitionLiterals"; + EVENTS_TARGET_QUEUE_SAME_ACCOUNT = "@aws-cdk/aws-events:eventsTargetQueueSameAccount"; + ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER = "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker"; + ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER = "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener"; + S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY = "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy"; + ROUTE53_PATTERNS_USE_CERTIFICATE = "@aws-cdk/aws-route53-patters:useCertificate"; + ROUTE53_PATTERNS_USE_DISTRIBUTION = "@aws-cdk/aws-route53-patterns:useDistribution"; + AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT = "@aws-cdk/customresources:installLatestAwsSdkDefault"; + DATABASE_PROXY_UNIQUE_RESOURCE_NAME = "@aws-cdk/aws-rds:databaseProxyUniqueResourceName"; + CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP = "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup"; + APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID = "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId"; + EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA = "@aws-cdk/aws-ec2:launchTemplateDefaultUserData"; + SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY = "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments"; + REDSHIFT_COLUMN_ID = "@aws-cdk/aws-redshift:columnId"; + ENABLE_EMR_SERVICE_POLICY_V2 = "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2"; + EC2_RESTRICT_DEFAULT_SECURITY_GROUP = "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup"; + APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID = "@aws-cdk/aws-apigateway:requestValidatorUniqueId"; + APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD = "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard"; + INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION = "@aws-cdk/core:includePrefixInUniqueNameGeneration"; + KMS_ALIAS_NAME_REF = "@aws-cdk/aws-kms:aliasNameRef"; + KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL = "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal"; + EFS_DENY_ANONYMOUS_ACCESS = "@aws-cdk/aws-efs:denyAnonymousAccess"; + EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID = "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId"; + AUTOSCALING_GENERATE_LAUNCH_TEMPLATE = "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig"; + ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY = "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby"; + LAMBDA_NODEJS_USE_LATEST_RUNTIME = "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion"; + RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS = "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials"; + AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS = "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters"; + APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION = "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier"; + CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME = "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource"; + LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION = "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction"; + CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE = "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse"; + CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2 = "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2"; + KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE = "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope"; + PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceAssetRoleTrustScope"; + EKS_NODEGROUP_NAME = "@aws-cdk/aws-eks:nodegroupNameAttribute"; + EKS_USE_NATIVE_OIDC_PROVIDER = "@aws-cdk/aws-eks:useNativeOidcProvider"; + ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID = "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId"; + EBS_DEFAULT_GP3 = "@aws-cdk/aws-ec2:ebsDefaultGp3Volume"; + ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM = "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm"; + LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT = "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault"; + S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET = "@aws-cdk/aws-s3:keepNotificationInImportedBucket"; + USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK = "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask"; + EXPLICIT_STACK_TAGS = "@aws-cdk/core:explicitStackTags"; + REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS = "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions"; + DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA = "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica"; + EC2_SUM_TIMEOUT_ENABLED = "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled"; + APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION = "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission"; + USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY = "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId"; + CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS = "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics"; + LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES = "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages"; + STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY = "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy"; + STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2 = "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2"; + BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT = "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault"; + ASPECT_STABILIZATION = "@aws-cdk/core:aspectStabilization"; + SIGNER_PROFILE_NAME_PASSED_TO_CFN = "@aws-cdk/aws-signer:signingProfileNamePassedToCfn"; + USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE = "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource"; + ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT = "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault"; + IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS = "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections"; + ENABLE_ADDITIONAL_METADATA_COLLECTION = "@aws-cdk/core:enableAdditionalMetadataCollection"; + LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY = "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy"; + SET_UNIQUE_REPLICATION_ROLE_NAME = "@aws-cdk/aws-s3:setUniqueReplicationRoleName"; + PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceStageRoleTrustScope"; + EVENTBUS_POLICY_SID_REQUIRED = "@aws-cdk/aws-events:requireEventBusPolicySid"; + ASPECT_PRIORITIES_MUTATING = "@aws-cdk/core:aspectPrioritiesMutating"; + DYNAMODB_TABLE_RETAIN_TABLE_REPLICA = "@aws-cdk/aws-dynamodb:retainTableReplica"; + LOG_USER_POOL_CLIENT_SECRET_VALUE = "@aws-cdk/cognito:logUserPoolClientSecretValue"; + PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope"; + S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS = "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions"; + EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY = "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway"; + USE_RESOURCEID_FOR_VPCV2_MIGRATION = "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration"; + S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT = "@aws-cdk/aws-s3:publicAccessBlockedByDefault"; + USE_CDK_MANAGED_LAMBDA_LOGGROUP = "@aws-cdk/aws-lambda:useCdkManagedLogGroup"; + NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT = "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault"; + STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT = "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint"; + CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0 = "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0"; + ELB_USE_POST_QUANTUM_TLS_POLICY = "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy"; + AUTOMATIC_L1_TRAITS = "@aws-cdk/core:automaticL1Traits"; + BATCH_DEFAULT_AL2023 = "@aws-cdk/aws-batch:defaultToAL2023"; + EKS_DEFAULT_AL2023 = "@aws-cdk/aws-eks:defaultToAL2023"; + ANNOTATIONS_IN_VALIDATION_REPORT = "@aws-cdk/core:annotationsInValidationReport"; + DEFAULT_CROSS_STACK_REFERENCES = "@aws-cdk/core:defaultCrossStackReferences"; + VALIDATE_AGAINST_DEFAULT_RULES = "@aws-cdk/core:validateAgainstDefaultRules"; + ECS_REMOVE_EMPTY_LOAD_BALANCERS = "@aws-cdk/aws-ecs:removeEmptyLoadBalancers"; + CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS = "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps"; + FLAGS = { + ////////////////////////////////////////////////////////////////////// + [SIGNER_PROFILE_NAME_PASSED_TO_CFN]: { + type: 1 /* BugFix */, + summary: "Pass signingProfileName to CfnSigningProfile", + detailsMd: ` + When enabled, the \`signingProfileName\` property is passed to the L1 \`CfnSigningProfile\` construct, + which ensures that the AWS Signer profile is created with the specified name. + + When disabled, the \`signingProfileName\` is not passed to CloudFormation, maintaining backward + compatibility with existing deployments where CloudFormation auto-generated profile names. + + This feature flag is needed because enabling it can cause existing signing profiles to be + replaced during deployment if a \`signingProfileName\` was specified but not previously used + in the CloudFormation template.`, + introducedIn: { v2: "2.212.0" }, + recommendedValue: true, + unconfiguredBehavesLike: { v2: false } + }, + ////////////////////////////////////////////////////////////////////// + [ENABLE_STACK_NAME_DUPLICATES_CONTEXT]: { + type: 0 /* ApiDefault */, + summary: "Allow multiple stacks with the same name", + detailsMd: ` + If this is set, multiple stacks can use the same stack name (e.g. deployed to + different environments). This means that the name of the synthesized template + file will be based on the construct path and not on the defined \`stackName\` + of the stack.`, + recommendedValue: true, + introducedIn: { v1: "1.16.0" }, + unconfiguredBehavesLike: { v2: true }, + compatibilityWithOldBehaviorMd: "Pass stack identifiers to the CLI instead of stack names." + }, + ////////////////////////////////////////////////////////////////////// + [ENABLE_DIFF_NO_FAIL_CONTEXT]: { + type: 0 /* ApiDefault */, + summary: "Make `cdk diff` not fail when there are differences", + detailsMd: ` + Determines what status code \`cdk diff\` should return when the specified stack + differs from the deployed stack or the local CloudFormation template: + + * \`aws-cdk:enableDiffNoFail=true\` => status code == 0 + * \`aws-cdk:enableDiffNoFail=false\` => status code == 1 + + You can override this behavior with the --fail flag: + + * \`--fail\` => status code == 1 + * \`--no-fail\` => status code == 0`, + introducedIn: { v1: "1.19.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Specify `--fail` to the CLI." + }, + ////////////////////////////////////////////////////////////////////// + [NEW_STYLE_STACK_SYNTHESIS_CONTEXT]: { + type: 1 /* BugFix */, + summary: "Switch to new stack synthesis method which enables CI/CD", + detailsMd: ` + If this flag is specified, all \`Stack\`s will use the \`DefaultStackSynthesizer\` by + default. If it is not set, they will use the \`LegacyStackSynthesizer\`.`, + introducedIn: { v1: "1.39.0", v2: "2.0.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [STACK_RELATIVE_EXPORTS_CONTEXT]: { + type: 1 /* BugFix */, + summary: "Name exports based on the construct paths relative to the stack, rather than the global construct path", + detailsMd: ` + Combined with the stack name this relative construct path is good enough to + ensure uniqueness, and makes the export names robust against refactoring + the location of the stack in the construct tree (specifically, moving the Stack + into a Stage).`, + introducedIn: { v1: "1.58.0", v2: "2.0.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [DOCKER_IGNORE_SUPPORT]: { + type: 0 /* ApiDefault */, + summary: "DockerImageAsset properly supports `.dockerignore` files by default", + detailsMd: ` + If this flag is not set, the default behavior for \`DockerImageAsset\` is to use + glob semantics for \`.dockerignore\` files. If this flag is set, the default behavior + is standard Docker ignore semantics. + + This is a feature flag as the old behavior was technically incorrect but + users may have come to depend on it.`, + introducedIn: { v1: "1.73.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Update your `.dockerignore` file to match standard Docker ignore rules, if necessary." + }, + ////////////////////////////////////////////////////////////////////// + [SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME]: { + type: 0 /* ApiDefault */, + summary: "Fix the referencing of SecretsManager names from ARNs", + detailsMd: ` + Secret.secretName for an "owned" secret will attempt to parse the secretName from the ARN, + rather than the default full resource name, which includes the SecretsManager suffix. + + If this flag is not set, Secret.secretName will include the SecretsManager suffix, which cannot be directly + used by SecretsManager.DescribeSecret, and must be parsed by the user first (e.g., Fn:Join, Fn:Select, Fn:Split).`, + introducedIn: { v1: "1.77.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Use `parseArn(secret.secretName).resourceName` to emulate the incorrect old parsing." + }, + ////////////////////////////////////////////////////////////////////// + [KMS_DEFAULT_KEY_POLICIES]: { + type: 0 /* ApiDefault */, + summary: "Tighten default KMS key policies", + detailsMd: ` + KMS Keys start with a default key policy that grants the account access to administer the key, + mirroring the behavior of the KMS SDK/CLI/Console experience. Users may override the default key + policy by specifying their own. + + If this flag is not set, the default key policy depends on the setting of the \`trustAccountIdentities\` + flag. If false (the default, for backwards-compatibility reasons), the default key policy somewhat + resembles the default admin key policy, but with the addition of 'GenerateDataKey' permissions. If + true, the policy matches what happens when this feature flag is set. + + Additionally, if this flag is not set and the user supplies a custom key policy, this will be appended + to the key's default policy (rather than replacing it).`, + introducedIn: { v1: "1.78.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Pass `trustAccountIdentities: false` to `Key` construct to restore the old behavior." + }, + ////////////////////////////////////////////////////////////////////// + [S3_GRANT_WRITE_WITHOUT_ACL]: { + type: 0 /* ApiDefault */, + summary: "Remove `PutObjectAcl` from Bucket.grantWrite", + detailsMd: ` + Change the old 's3:PutObject*' permission to 's3:PutObject' on Bucket, + as the former includes 's3:PutObjectAcl', + which could be used to grant read/write object access to IAM principals in other accounts. + Use a feature flag to make sure existing customers who might be relying + on the overly-broad permissions are not broken.`, + introducedIn: { v1: "1.85.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Call `bucket.grantPutAcl()` in addition to `bucket.grantWrite()` to grant ACL permissions." + }, + ////////////////////////////////////////////////////////////////////// + [ECS_REMOVE_DEFAULT_DESIRED_COUNT]: { + type: 0 /* ApiDefault */, + summary: "Do not specify a default DesiredCount for ECS services", + detailsMd: ` + ApplicationLoadBalancedServiceBase, ApplicationMultipleTargetGroupServiceBase, + NetworkLoadBalancedServiceBase, NetworkMultipleTargetGroupServiceBase, and + QueueProcessingServiceBase currently determine a default value for the desired count of + a CfnService if a desiredCount is not provided. The result of this is that on every + deployment, the service count is reset to the fixed value, even if it was autoscaled. + + If this flag is not set, the default behaviour for CfnService.desiredCount is to set a + desiredCount of 1, if one is not provided. If true, a default will not be defined for + CfnService.desiredCount and as such desiredCount will be undefined, if one is not provided.`, + introducedIn: { v1: "1.92.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "You can pass `desiredCount: 1` explicitly, but you should never need this." + }, + [ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER]: { + type: 0 /* ApiDefault */, + summary: "Disable implicit openListener when custom security groups are provided", + detailsMd: ` + ApplicationLoadBalancedServiceBase currently defaults openListener to true, which creates + security group rules allowing ingress from 0.0.0.0/0. This can be a security risk when + users provide custom security groups on their load balancer, expecting those to be the + only ingress rules. + + If this flag is not set, openListener will always default to true for backward compatibility. + If true, openListener will default to false when custom security groups are detected on the + load balancer, and true otherwise. Users can still explicitly set openListener: true to + override this behavior.`, + introducedIn: { v2: "2.214.0" }, + unconfiguredBehavesLike: { v2: false }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "You can pass `openListener: true` explicitly to maintain the old behavior." + }, + ////////////////////////////////////////////////////////////////////// + [RDS_LOWERCASE_DB_IDENTIFIER]: { + type: 1 /* BugFix */, + summary: "Force lowercasing of RDS Cluster names in CDK", + detailsMd: ` + Cluster names must be lowercase, and the service will lowercase the name when the cluster + is created. However, CDK did not use to know about this, and would use the user-provided name + referencing the cluster, which would fail if it happened to be mixed-case. + + With this flag, lowercase the name in CDK so we can reference it properly. + + Must be behind a permanent flag because changing a name from mixed case to lowercase between deployments + would lead CloudFormation to think the name was changed and would trigger a cluster replacement + (losing data!).`, + introducedIn: { v1: "1.97.0", v2: "2.0.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID]: { + type: 1 /* BugFix */, + summary: "Allow adding/removing multiple UsagePlanKeys independently", + detailsMd: ` + The UsagePlanKey resource connects an ApiKey with a UsagePlan. API Gateway does not allow more than one UsagePlanKey + for any given UsagePlan and ApiKey combination. For this reason, CloudFormation cannot replace this resource without + either the UsagePlan or ApiKey changing. + + The feature addition to support multiple UsagePlanKey resources - 142bd0e2 - recognized this and attempted to keep + existing UsagePlanKey logical ids unchanged. + However, this intentionally caused the logical id of the UsagePlanKey to be sensitive to order. That is, when + the 'first' UsagePlanKey resource is removed, the logical id of the 'second' assumes what was originally the 'first', + which again is disallowed. + + In effect, there is no way to get out of this mess in a backwards compatible way, while supporting existing stacks. + This flag changes the logical id layout of UsagePlanKey to not be sensitive to order.`, + introducedIn: { v1: "1.98.0", v2: "2.0.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [EFS_DEFAULT_ENCRYPTION_AT_REST]: { + type: 0 /* ApiDefault */, + summary: "Enable this feature flag to have elastic file systems encrypted at rest by default.", + detailsMd: ` + Encryption can also be configured explicitly using the \`encrypted\` property. + `, + introducedIn: { v1: "1.98.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Pass the `encrypted: false` property to the `FileSystem` construct to disable encryption." + }, + ////////////////////////////////////////////////////////////////////// + [LAMBDA_RECOGNIZE_VERSION_PROPS]: { + type: 1 /* BugFix */, + summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.", + detailsMd: ` + The previous calculation incorrectly considered properties of the \`AWS::Lambda::Function\` resource that did + not constitute creating a new Version. + + See 'currentVersion' section in the aws-lambda module's README for more details.`, + introducedIn: { v1: "1.106.0", v2: "2.0.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [LAMBDA_RECOGNIZE_LAYER_VERSION]: { + type: 1 /* BugFix */, + summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.", + detailsMd: ` + This flag correct incorporates Lambda Layer properties into the Lambda Function Version. + + See 'currentVersion' section in the aws-lambda module's README for more details.`, + introducedIn: { v1: "1.159.0", v2: "2.27.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021]: { + type: 1 /* BugFix */, + summary: "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.", + detailsMd: ` + The security policy can also be configured explicitly using the \`minimumProtocolVersion\` property.`, + introducedIn: { v1: "1.117.0", v2: "2.0.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [CHECK_SECRET_USAGE]: { + type: 2 /* VisibleContext */, + summary: "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations", + detailsMd: ` + With this flag enabled, \`SecretValue\` instances can only be passed to + constructs that accept \`SecretValue\`s; otherwise, \`unsafeUnwrap()\` must be + called to use it as a regular string.`, + introducedIn: { v1: "1.153.0", v2: "2.21.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [TARGET_PARTITIONS]: { + type: 2 /* VisibleContext */, + summary: "What regions to include in lookup tables of environment agnostic stacks", + detailsMd: ` + Has no effect on stacks that have a defined region, but will limit the amount + of unnecessary regions included in stacks without a known region. + + The type of this value should be a list of strings.`, + introducedIn: { v1: "1.137.0", v2: "2.4.0" }, + recommendedValue: ["aws", "aws-cn"] + }, + ////////////////////////////////////////////////////////////////////// + [ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER]: { + type: 0 /* ApiDefault */, + summary: "ECS extensions will automatically add an `awslogs` driver if no logging is specified", + detailsMd: ` + Enable this feature flag to configure default logging behavior for the ECS Service Extensions. This will enable the + \`awslogs\` log driver for the application container of the service to send the container logs to CloudWatch Logs. + + This is a feature flag as the new behavior provides a better default experience for the users.`, + introducedIn: { v1: "1.140.0", v2: "2.8.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Specify a log driver explicitly." + }, + ////////////////////////////////////////////////////////////////////// + [EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME]: { + type: 1 /* BugFix */, + summary: "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names.", + detailsMd: ` + Previously, the generated Launch Template names were only unique within a stack because they were based only on the + \`Instance\` construct ID. If another stack that has an \`Instance\` with the same construct ID is deployed in the same + account and region, the deployments would always fail as the generated Launch Template names were the same. + + The new implementation addresses this issue by generating the Launch Template name with the \`Names.uniqueId\` method.`, + introducedIn: { v1: "1.140.0", v2: "2.8.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME]: { + type: 1 /* BugFix */, + summary: "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID.", + detailsMd: ` + If this flag is not set, the old ARN format (without cluster name) for ECS is used. + If this flag is set, the new ARN format (with cluster name) for ECS is used. + + This is a feature flag as the old format is still valid for existing ECS clusters. + + See https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#ecs-resource-ids + `, + introducedIn: { v2: "2.35.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [IAM_MINIMIZE_POLICIES]: { + type: 2 /* VisibleContext */, + summary: "Minimize IAM policies by combining Statements", + detailsMd: ` + Minimize IAM policies by combining Principals, Actions and Resources of two + Statements in the policies, as long as it doesn't change the meaning of the + policy.`, + introducedIn: { v1: "1.150.0", v2: "2.18.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [VALIDATE_SNAPSHOT_REMOVAL_POLICY]: { + type: 0 /* ApiDefault */, + summary: "Error on snapshot removal policies on resources that do not support it.", + detailsMd: ` + Makes sure we do not allow snapshot removal policy on resources that do not support it. + If supplied on an unsupported resource, CloudFormation ignores the policy altogether. + This flag will reduce confusion and unexpected loss of data when erroneously supplying + the snapshot removal policy.`, + introducedIn: { v2: "2.28.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "The old behavior was incorrect. Update your source to not specify SNAPSHOT policies on resources that do not support it." + }, + ////////////////////////////////////////////////////////////////////// + [CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME]: { + type: 1 /* BugFix */, + summary: "Generate key aliases that include the stack name", + detailsMd: ` + Enable this feature flag to have CodePipeline generate a unique cross account key alias name using the stack name. + + Previously, when creating multiple pipelines with similar naming conventions and when crossAccountKeys is true, + the KMS key alias name created for these pipelines may be the same due to how the uniqueId is generated. + + This new implementation creates a stack safe resource name for the alias using the stack name instead of the stack ID. + `, + introducedIn: { v2: "2.29.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [S3_CREATE_DEFAULT_LOGGING_POLICY]: { + type: 1 /* BugFix */, + summary: "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist.", + detailsMd: ` + For example, in order to send VPC flow logs to an S3 bucket, there is a specific Bucket Policy + that needs to be attached to the bucket. If you create the bucket without a policy and then add the + bucket as the flow log destination, the service will automatically create the bucket policy with the + necessary permissions. If you were to then try and add your own bucket policy CloudFormation will throw + and error indicating that a bucket policy already exists. + + In cases where we know what the required policy is we can go ahead and create the policy so we can + remain in control of it. + + @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-S3 + `, + introducedIn: { v2: "2.31.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY]: { + type: 1 /* BugFix */, + summary: "Restrict KMS key policy for encrypted Queues a bit more", + detailsMd: ` + Enable this feature flag to restrict the decryption of a SQS queue, which is subscribed to a SNS topic, to + only the topic which it is subscribed to and not the whole SNS service of an account. + + Previously the decryption was only restricted to the SNS service principal. To make the SQS subscription more + secure, it is a good practice to restrict the decryption further and only allow the connected SNS topic to decryption + the subscribed queue.`, + introducedIn: { v2: "2.32.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [APIGATEWAY_DISABLE_CLOUDWATCH_ROLE]: { + type: 1 /* BugFix */, + summary: "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment", + detailsMd: ` + Enable this feature flag to change the default behavior for aws-apigateway.RestApi and aws-apigateway.SpecRestApi + to _not_ create a CloudWatch role and Account. There is only a single ApiGateway account per AWS + environment which means that each time you create a RestApi in your account the ApiGateway account + is overwritten. If at some point the newest RestApi is deleted, the ApiGateway Account and CloudWatch + role will also be deleted, breaking any existing ApiGateways that were depending on them. + + When this flag is enabled you should either create the ApiGateway account and CloudWatch role + separately _or_ only enable the cloudWatchRole on a single RestApi. + `, + introducedIn: { v2: "2.38.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [ENABLE_PARTITION_LITERALS]: { + type: 1 /* BugFix */, + summary: "Make ARNs concrete if AWS partition is known", + // eslint-disable-next-line @cdklabs/no-literal-partition + detailsMd: ` + Enable this feature flag to get partition names as string literals in Stacks with known regions defined in + their environment, such as "aws" or "aws-cn". Previously the CloudFormation intrinsic function + "Ref: AWS::Partition" was used. For example: + + \`\`\`yaml + Principal: + AWS: + Fn::Join: + - "" + - - "arn:" + - Ref: AWS::Partition + - :iam::123456789876:root + \`\`\` + + becomes: + + \`\`\`yaml + Principal: + AWS: "arn:aws:iam::123456789876:root" + \`\`\` + + The intrinsic function will still be used in Stacks where no region is defined or the region's partition + is unknown. + `, + introducedIn: { v2: "2.38.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [EVENTS_TARGET_QUEUE_SAME_ACCOUNT]: { + type: 1 /* BugFix */, + summary: "Event Rules may only push to encrypted SQS queues in the same account", + detailsMd: ` + This flag applies to SQS Queues that are used as the target of event Rules. When enabled, only principals + from the same account as the Rule can send messages. If a queue is unencrypted, this restriction will + always apply, regardless of the value of this flag. + `, + introducedIn: { v2: "2.51.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER]: { + type: 1 /* BugFix */, + summary: 'Avoid setting the "ECS" deployment controller when adding a circuit breaker', + detailsMd: ` + Enable this feature flag to avoid setting the "ECS" deployment controller when adding a circuit breaker to an + ECS Service, as this will trigger a full replacement which fails to deploy when using set service names. + This does not change any behaviour as the default deployment controller when it is not defined is ECS. + + This is a feature flag as the new behavior provides a better default experience for the users. + `, + introducedIn: { v2: "2.51.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME]: { + type: 1 /* BugFix */, + summary: "Enable this feature to create default policy names for imported roles that depend on the stack the role is in.", + detailsMd: ` + Without this, importing the same role in multiple places could lead to the permissions given for one version of the imported role + to overwrite permissions given to the role at a different place where it was imported. This was due to all imported instances + of a role using the same default policy name. + + This new implementation creates default policy names based on the constructs node path in their stack. + `, + introducedIn: { v2: "2.60.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY]: { + type: 1 /* BugFix */, + summary: "Use S3 Bucket Policy instead of ACLs for Server Access Logging", + detailsMd: ` + Enable this feature flag to use S3 Bucket Policy for granting permission for Server Access Logging + rather than using the canned \`LogDeliveryWrite\` ACL. ACLs do not work when Object Ownership is + enabled on the bucket. + + This flag uses a Bucket Policy statement to allow Server Access Log delivery, following best + practices for S3. + + @see https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html + `, + introducedIn: { v2: "2.60.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [ROUTE53_PATTERNS_USE_CERTIFICATE]: { + type: 0 /* ApiDefault */, + summary: "Use the official `Certificate` resource instead of `DnsValidatedCertificate`", + detailsMd: ` + Enable this feature flag to use the official CloudFormation supported \`Certificate\` resource instead + of the deprecated \`DnsValidatedCertificate\` construct. If this flag is enabled and you are creating + the stack in a region other than us-east-1 then you must also set \`crossRegionReferences=true\` on the + stack. + `, + introducedIn: { v2: "2.61.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Define a `DnsValidatedCertificate` explicitly and pass in the `certificate` property" + }, + ////////////////////////////////////////////////////////////////////// + [AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT]: { + type: 0 /* ApiDefault */, + summary: "Whether to install the latest SDK by default in AwsCustomResource", + detailsMd: ` + This was originally introduced and enabled by default to not be limited by the SDK version + that's installed on AWS Lambda. However, it creates issues for Lambdas bound to VPCs that + do not have internet access, or in environments where 'npmjs.com' is not available. + + The recommended setting is to disable the default installation behavior, and pass the + flag on a resource-by-resource basis to enable it if necessary. + `, + compatibilityWithOldBehaviorMd: "Set installLatestAwsSdk: true on all resources that need it.", + introducedIn: { v2: "2.60.0" }, + recommendedValue: false + }, + ////////////////////////////////////////////////////////////////////// + [DATABASE_PROXY_UNIQUE_RESOURCE_NAME]: { + type: 1 /* BugFix */, + summary: "Use unique resource name for Database Proxy", + detailsMd: ` + If this flag is not set, the default behavior for \`DatabaseProxy\` is + to use \`id\` of the constructor for \`dbProxyName\` when it's not specified in the argument. + In this case, users can't deploy \`DatabaseProxy\`s that have the same \`id\` in the same region. + + If this flag is set, the default behavior is to use unique resource names for each \`DatabaseProxy\`. + + This is a feature flag as the old behavior was technically incorrect, but users may have come to depend on it. + `, + introducedIn: { v2: "2.65.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP]: { + type: 1 /* BugFix */, + summary: "Remove CloudWatch alarms from deployment group", + detailsMd: ` + Enable this flag to be able to remove all CloudWatch alarms from a deployment group by removing + the alarms from the construct. If this flag is not set, removing all alarms from the construct + will still leave the alarms configured for the deployment group. + `, + introducedIn: { v2: "2.65.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID]: { + type: 1 /* BugFix */, + summary: "Include authorizer configuration in the calculation of the API deployment logical ID.", + detailsMd: ` + The logical ID of the AWS::ApiGateway::Deployment resource is calculated by hashing + the API configuration, including methods, and resources, etc. Enable this feature flag + to also include the configuration of any authorizer attached to the API in the + calculation, so any changes made to an authorizer will create a new deployment. + `, + introducedIn: { v2: "2.66.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA]: { + type: 1 /* BugFix */, + summary: "Define user data for a launch template by default when a machine image is provided.", + detailsMd: ` + The ec2.LaunchTemplate construct did not define user data when a machine image is + provided despite the document. If this is set, a user data is automatically defined + according to the OS of the machine image. + `, + recommendedValue: true, + introducedIn: { v2: "2.67.0" } + }, + ////////////////////////////////////////////////////////////////////// + [SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY]: { + type: 1 /* BugFix */, + summary: "SecretTargetAttachments uses the ResourcePolicy of the attached Secret.", + detailsMd: ` + Enable this feature flag to make SecretTargetAttachments use the ResourcePolicy of the attached Secret. + SecretTargetAttachments are created to connect a Secret to a target resource. + In CDK code, they behave like regular Secret and can be used as a stand-in in most situations. + Previously, adding to the ResourcePolicy of a SecretTargetAttachment did attempt to create a separate ResourcePolicy for the same Secret. + However Secrets can only have a single ResourcePolicy, causing the CloudFormation deployment to fail. + + When enabling this feature flag for an existing Stack, ResourcePolicies created via a SecretTargetAttachment will need replacement. + This won't be possible without intervention due to limitation outlined above. + First remove all permissions granted to the Secret and deploy without the ResourcePolicies. + Then you can re-add the permissions and deploy again. + `, + recommendedValue: true, + introducedIn: { v2: "2.67.0" } + }, + ////////////////////////////////////////////////////////////////////// + [REDSHIFT_COLUMN_ID]: { + type: 1 /* BugFix */, + summary: "Whether to use an ID to track Redshift column changes", + detailsMd: ` + Redshift columns are identified by their \`name\`. If a column is renamed, the old column + will be dropped and a new column will be created. This can cause data loss. + + This flag enables the use of an \`id\` attribute for Redshift columns. If this flag is enabled, the + internal CDK architecture will track changes of Redshift columns through their \`id\`, rather + than their \`name\`. This will prevent data loss when columns are renamed. + + **NOTE** - Enabling this flag comes at a **risk**. When enabled, update the \`id\`s of all columns, + **however** do not change the \`names\`s of the columns. If the \`name\`s of the columns are changed during + initial deployment, the columns will be dropped and recreated, causing data loss. After the initial deployment + of the \`id\`s, the \`name\`s of the columns can be changed without data loss. + `, + introducedIn: { v2: "2.68.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [ENABLE_EMR_SERVICE_POLICY_V2]: { + type: 1 /* BugFix */, + summary: "Enable AmazonEMRServicePolicy_v2 managed policies", + detailsMd: ` + If this flag is not set, the default behavior for \`EmrCreateCluster\` is + to use \`AmazonElasticMapReduceRole\` managed policies. + + If this flag is set, the default behavior is to use the new \`AmazonEMRServicePolicy_v2\` + managed policies. + + This is a feature flag as the old behavior will be deprecated, but some resources may require manual + intervention since they might not have the appropriate tags propagated automatically. + `, + introducedIn: { v2: "2.72.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [EC2_RESTRICT_DEFAULT_SECURITY_GROUP]: { + type: 0 /* ApiDefault */, + summary: "Restrict access to the VPC default security group", + detailsMd: ` + Enable this feature flag to remove the default ingress/egress rules from the + VPC default security group. + + When a VPC is created, a default security group is created as well and this cannot + be deleted. The default security group is created with ingress/egress rules that allow + _all_ traffic. [AWS Security best practices recommend](https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-2) + removing these ingress/egress rules in order to restrict access to the default security group. + `, + introducedIn: { v2: "2.78.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: ` + To allow all ingress/egress traffic to the VPC default security group you + can set the \`restrictDefaultSecurityGroup: false\`. + ` + }, + ////////////////////////////////////////////////////////////////////// + [APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID]: { + type: 1 /* BugFix */, + summary: "Generate a unique id for each RequestValidator added to a method", + detailsMd: ` + This flag allows multiple RequestValidators to be added to a RestApi when + providing the \`RequestValidatorOptions\` in the \`addMethod()\` method. + + If the flag is not set then only a single RequestValidator can be added in this way. + Any additional RequestValidators have to be created directly with \`new RequestValidator\`. + `, + introducedIn: { v2: "2.78.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [KMS_ALIAS_NAME_REF]: { + type: 1 /* BugFix */, + summary: "KMS Alias name and keyArn will have implicit reference to KMS Key", + detailsMd: ` + This flag allows an implicit dependency to be created between KMS Alias and KMS Key + when referencing key.aliasName or key.keyArn. + + If the flag is not set then a raw string is passed as the Alias name and no + implicit dependencies will be set. + `, + introducedIn: { v2: "2.83.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL]: { + type: 1 /* BugFix */, + summary: "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition", + detailsMd: ` + This flag enables the grant methods (grant, grantDecrypt, grantEncrypt, etc.) on Aliases imported + by name to grant permissions based on the 'kms:ResourceAliases' condition rather than no-op grants. + When disabled, grant calls on imported aliases will be dropped (no-op) to maintain compatibility. + `, + introducedIn: { v2: "2.202.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Remove calls to the grant* methods on the aliases referenced by name" + }, + ////////////////////////////////////////////////////////////////////// + [AUTOSCALING_GENERATE_LAUNCH_TEMPLATE]: { + type: 1 /* BugFix */, + summary: "Generate a launch template when creating an AutoScalingGroup", + detailsMd: ` + Enable this flag to allow AutoScalingGroups to generate a launch template when being created. + Launch configurations have been deprecated and cannot be created in AWS Accounts created after + December 31, 2023. Existing 'AutoScalingGroup' properties used for creating a launch configuration + will now create an equivalent 'launchTemplate'. Alternatively, users can provide an explicit + 'launchTemplate' or 'mixedInstancesPolicy'. When this flag is enabled a 'launchTemplate' will + attempt to set user data according to the OS of the machine image if explicit user data is not + provided. + `, + introducedIn: { v2: "2.88.0" }, + compatibilityWithOldBehaviorMd: ` + If backwards compatibility needs to be maintained due to an existing autoscaling group + using a launch config, set this flag to false. + `, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION]: { + type: 1 /* BugFix */, + summary: "Include the stack prefix in the stack name generation process", + detailsMd: ` + This flag prevents the prefix of a stack from making the stack's name longer than the 128 character limit. + + If the flag is set, the prefix is included in the stack name generation process. + If the flag is not set, then the prefix of the stack is prepended to the generated stack name. + + **NOTE** - Enabling this flag comes at a **risk**. If you have already deployed stacks, changing the status of this + feature flag can lead to a change in stacks' name. Changing a stack name mean recreating the whole stack, which + is not viable in some productive setups. + `, + introducedIn: { v2: "2.84.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [EFS_DENY_ANONYMOUS_ACCESS]: { + type: 0 /* ApiDefault */, + summary: "EFS denies anonymous clients accesses", + detailsMd: ` + This flag adds the file system policy that denies anonymous clients + access to \`efs.FileSystem\`. + + If this flag is not set, \`efs.FileSystem\` will allow all anonymous clients + that can access over the network.`, + introducedIn: { v2: "2.93.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "You can pass `allowAnonymousAccess: true` so allow anonymous clients access." + }, + ////////////////////////////////////////////////////////////////////// + [ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY]: { + type: 0 /* ApiDefault */, + summary: "Enables support for Multi-AZ with Standby deployment for opensearch domains", + detailsMd: ` + If this is set, an opensearch domain will automatically be created with + multi-az with standby enabled. + `, + introducedIn: { v2: "2.88.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Pass `capacity.multiAzWithStandbyEnabled: false` to `Domain` construct to restore the old behavior." + }, + ////////////////////////////////////////////////////////////////////// + [LAMBDA_NODEJS_USE_LATEST_RUNTIME]: { + type: 0 /* ApiDefault */, + summary: "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default", + detailsMd: ` + If this is set, and a \`runtime\` prop is not passed to, Lambda NodeJs + functions will use the latest version of the runtime provided by the Lambda + service. Do not use this if you your lambda function is reliant on dependencies + shipped as part of the runtime environment. + `, + introducedIn: { v2: "2.93.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Pass `runtime: lambda.Runtime.NODEJS_16_X` to `Function` construct to restore the previous behavior." + }, + ////////////////////////////////////////////////////////////////////// + [EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID]: { + type: 1 /* BugFix */, + summary: "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet.", + detailsMd: ` + When this feature flag is enabled, each mount target will have a stable + logicalId that is linked to the associated subnet. If the flag is set to + false then the logicalIds of the mount targets can change if the number of + subnets changes. + + Set this flag to false for existing mount targets. + `, + introducedIn: { v2: "2.93.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS]: { + type: 1 /* BugFix */, + summary: "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change.", + detailsMd: ` + When this feature flag is enabled, a scope of \`InstanceParameterGroup\` for + \`AuroraClusterInstance\` with each parameters will change to AuroraClusterInstance + from AuroraCluster. + + If the flag is set to false then it can only make one \`AuroraClusterInstance\` + with each \`InstanceParameterGroup\` in the AuroraCluster. + `, + introducedIn: { v2: "2.97.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION]: { + type: 1 /* BugFix */, + summary: "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id.", + detailsMd: ` + When this feature flag is enabled, we use the IGraphqlApi ARN rather than ID when creating or updating CfnSourceApiAssociation in + the GraphqlApi construct. Using the ARN allows the association to support an association with a source api or merged api in another account. + Note that for existing source api associations created with this flag disabled, enabling the flag will lead to a resource replacement. + `, + introducedIn: { v2: "2.97.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS]: { + type: 1 /* BugFix */, + summary: "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials.", + detailsMd: ` + The \`credentials\` property on the \`DatabaseClusterFromSnapshotProps\` + interface was deprecated with the new \`snapshotCredentials\` property being + recommended. Before deprecating \`credentials\`, a secret would be generated + while rendering credentials if the \`credentials\` property was undefined or + if a secret wasn't provided via the \`credentials\` property. This behavior + is replicated with the new \`snapshotCredentials\` property, but the original + \`credentials\` secret can still be created resulting in an extra database + secret. + + Set this flag to prevent rendering deprecated \`credentials\` and creating an + extra database secret when only using \`snapshotCredentials\` to create an RDS + database cluster from a snapshot. + `, + introducedIn: { v2: "2.98.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME]: { + type: 1 /* BugFix */, + summary: "When enabled, the CodeCommit source action is using the default branch name 'main'.", + detailsMd: ` + When setting up a CodeCommit source action for the source stage of a pipeline, please note that the + default branch is 'master'. + However, with the activation of this feature flag, the default branch is updated to 'main'. + `, + introducedIn: { v2: "2.103.1" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION]: { + type: 1 /* BugFix */, + summary: "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID.", + detailsMd: ` + When this feature flag is enabled, a logical ID of \`LambdaPermission\` for a + \`LambdaAction\` will include an alarm ID. Therefore multiple alarms for the same Lambda + can be created with \`LambdaAction\`. + + If the flag is set to false then it can only make one alarm for the Lambda with + \`LambdaAction\`. + `, + introducedIn: { v2: "2.124.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE]: { + type: 0 /* ApiDefault */, + summary: "Enables Pipeline to set the default value for crossAccountKeys to false.", + detailsMd: ` + When this feature flag is enabled, and the \`crossAccountKeys\` property is not provided in a \`Pipeline\` + construct, the construct automatically defaults the value of this property to false. + `, + introducedIn: { v2: "2.127.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Pass `crossAccountKeys: true` to `Pipeline` construct to restore the previous behavior." + }, + ////////////////////////////////////////////////////////////////////// + [CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2]: { + type: 0 /* ApiDefault */, + summary: "Enables Pipeline to set the default pipeline type to V2.", + detailsMd: ` + When this feature flag is enabled, and the \`pipelineType\` property is not provided in a \`Pipeline\` + construct, the construct automatically defaults the value of this property to \`PipelineType.V2\`. + `, + introducedIn: { v2: "2.133.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Pass `pipelineType: PipelineType.V1` to `Pipeline` construct to restore the previous behavior." + }, + ////////////////////////////////////////////////////////////////////// + [KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE]: { + type: 1 /* BugFix */, + summary: "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only.", + detailsMd: ` + When this feature flag is enabled and calling KMS key grant method, the created IAM policy will reduce the resource scope from + '*' to this specific granting KMS key. + `, + introducedIn: { v2: "2.134.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: { + type: 0 /* ApiDefault */, + summary: "Remove the root account principal from PipelineAssetsFileRole trust policy", + detailsMd: ` + When this feature flag is enabled, the root account principal will not be added to the trust policy of asset role. + When this feature flag is disabled, it will keep the root account principal in the trust policy. + `, + introducedIn: { v2: "2.141.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back" + }, + ////////////////////////////////////////////////////////////////////// + [EKS_NODEGROUP_NAME]: { + type: 1 /* BugFix */, + summary: "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix.", + detailsMd: ` + When this feature flag is enabled, the nodegroupName attribute will be exactly the name of the nodegroup without + any prefix. + `, + introducedIn: { v2: "2.139.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [EKS_USE_NATIVE_OIDC_PROVIDER]: { + type: 1 /* BugFix */, + summary: "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider).", + detailsMd: ` + When this feature flag is enabled, EKS clusters will use the native AWS::IAM::OIDCProvider + CloudFormation resource instead of the custom resource provider for creating OIDC providers. + + WARNING: Enabling this flag on a cluster with an existing OIDC provider created by the custom resource (iam.OpenIDConnectProvider) + will cause the OIDC provider to be replaced with the native resource, which may lead to disruption. + + To migrate in place without disruption, follow the guide at: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/aws-eks/README.md#migrating-from-the-deprecated-eksopenidconnectprovider-to-eksoidcprovidernative + `, + introducedIn: { v2: "2.237.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to use the custom resource provider." + }, + ////////////////////////////////////////////////////////////////////// + [EBS_DEFAULT_GP3]: { + type: 0 /* ApiDefault */, + summary: "When enabled, the default volume type of the EBS volume will be GP3", + detailsMd: ` + When this featuer flag is enabled, the default volume type of the EBS volume will be \`EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3\`. + `, + introducedIn: { v2: "2.140.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Pass `volumeType: EbsDeviceVolumeType.GENERAL_PURPOSE_SSD` to `Volume` construct to restore the previous behavior." + }, + ////////////////////////////////////////////////////////////////////// + [ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM]: { + type: 0 /* ApiDefault */, + summary: "When enabled, remove default deployment alarm settings", + detailsMd: ` + When this feature flag is enabled, remove the default deployment alarm settings when creating a AWS ECS service. + `, + introducedIn: { v2: "2.143.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Set AWS::ECS::Service 'DeploymentAlarms' manually to restore the previous behavior." + }, + ////////////////////////////////////////////////////////////////////// + [LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT]: { + type: 1 /* BugFix */, + summary: "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default", + detailsMd: ` + This results in 'logApiResponseData' being passed as true to the custom resource provider. This will cause the custom resource handler to receive an 'Update' event. If you don't + have an SDK call configured for the 'Update' event and you're dependent on specific SDK call response data, you will see this error from CFN: + + CustomResource attribute error: Vendor response doesn't contain attribute in object. See https://github.com/aws/aws-cdk/issues/29949) for more details. + + Unlike most feature flags, we don't recommend setting this feature flag to true. However, if you're using the 'AwsCustomResource' construct with 'logApiResponseData' as true in + the event object, then setting this feature flag will keep this behavior. Otherwise, setting this feature flag to false will trigger an 'Update' event by removing the 'logApiResponseData' + property from the event object. + `, + introducedIn: { v2: "2.145.0" }, + recommendedValue: false + }, + ////////////////////////////////////////////////////////////////////// + [S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET]: { + type: 1 /* BugFix */, + summary: "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack.", + detailsMd: ` + Currently, adding notifications to a bucket where it was created by ourselves will override notification added where it is imported. + + When this feature flag is enabled, adding notifications to a bucket in the current stack will only update notification defined in this stack. + Other notifications that are not managed by this stack will be kept. + `, + introducedIn: { v2: "2.155.0" }, + recommendedValue: false + }, + ////////////////////////////////////////////////////////////////////// + [USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK]: { + type: 1 /* BugFix */, + summary: "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.", + detailsMd: ` + Currently, 'inputPath' and 'outputPath' from the TaskStateBase Props is being used under BedrockInvokeModelProps to define S3URI under 'input' and 'output' fields + of State Machine Task definition. + + When this feature flag is enabled, specify newly introduced props 's3InputUri' and + 's3OutputUri' to populate S3 uri under input and output fields in state machine task definition for Bedrock invoke model. + + `, + introducedIn: { v2: "2.156.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to use input and output path fields for s3 URI" + }, + ////////////////////////////////////////////////////////////////////// + [EXPLICIT_STACK_TAGS]: { + type: 0 /* ApiDefault */, + summary: "When enabled, stack tags need to be assigned explicitly on a Stack.", + detailsMd: ` + Without this feature flag enabled, if tags are added to a Stack using + \`Tags.of(scope).add(...)\`, they will be added to both the stack and all resources + in the stack template. + + That leads to the tags being applied twice: once in the template, and once + again automatically by CloudFormation, which will apply all stack tags to + all resources in the stack. This leads to loss of control, as the + \`excludeResourceTypes\` option of the Tags API will not have any effect. + + With this flag enabled, tags added to a stack using \`Tags.of(...)\` are ignored, + and Stack tags must be configured explicitly on the Stack object. + `, + introducedIn: { v2: "2.205.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Configure stack-level tags using `new Stack(..., { tags: { ... } })`." + }, + ////////////////////////////////////////////////////////////////////// + [REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS]: { + type: 1 /* BugFix */, + summary: "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration", + detailsMd: ` + Currently, we automatically add a number of cloudwatch permissions to the task role when no cloudwatch log group is + specified as logConfiguration and it will grant 'Resources': ['*'] to the task role. + + When this feature flag is enabled, we will only grant the necessary permissions when users specify cloudwatch log group. + `, + introducedIn: { v2: "2.159.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to continue grant permissions to log group when no log group is specified" + }, + ////////////////////////////////////////////////////////////////////// + [DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA]: { + type: 1 /* BugFix */, + summary: "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas", + detailsMd: ` + If this flag is not set, the default behavior for \`TableV2\` is to use a different \`resourcePolicy\` for each replica. + + If this flag is set to false, the behavior is that each replica shares the same \`resourcePolicy\` as the source table. + This will prevent you from creating a new table which has an additional replica and a resource policy. + + This is a feature flag as the old behavior was technically incorrect but users may have come to depend on it.`, + introducedIn: { v2: "2.164.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [EC2_SUM_TIMEOUT_ENABLED]: { + type: 1 /* BugFix */, + summary: "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together.", + detailsMd: ` + Currently is both initOptions.timeout and resourceSignalTimeout are both specified in the options for creating an EC2 Instance, + only the value from 'resourceSignalTimeout' will be used. + + When this feature flag is enabled, if both initOptions.timeout and resourceSignalTimeout are specified, the values will to be summed together. + `, + recommendedValue: true, + introducedIn: { v2: "2.160.0" } + }, + ////////////////////////////////////////////////////////////////////// + [APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION]: { + type: 1 /* BugFix */, + summary: "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn.", + detailsMd: ` + Currently, when using a Lambda authorizer with an AppSync GraphQL API, the AWS CDK automatically generates the necessary AWS::Lambda::Permission + to allow the AppSync API to invoke the Lambda authorizer. This permission is overly permissive because it lacks a SourceArn, meaning + it allows invocations from any source. + + When this feature flag is enabled, the AWS::Lambda::Permission will be properly scoped with the SourceArn corresponding to the + specific AppSync GraphQL API. + `, + recommendedValue: true, + introducedIn: { v2: "2.161.0" } + }, + ////////////////////////////////////////////////////////////////////// + [USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY]: { + type: 1 /* BugFix */, + summary: "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`", + detailsMd: ` + Currently, the value of the property 'instanceResourceId' in construct 'DatabaseInstanceReadReplica' is not correct, and set to 'DbInstanceArn' which is not correct when it is used to create the IAM Policy in the grantConnect method. + + When this feature flag is enabled, the value of that property will be as expected set to 'DbiResourceId' attribute, and that will fix the grantConnect method. + `, + introducedIn: { v2: "2.161.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to use `DbInstanceArn` as value for property `instanceResourceId`" + }, + ////////////////////////////////////////////////////////////////////// + [CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS]: { + type: 1 /* BugFix */, + summary: "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values.", + detailsMd: ` + Without enabling this feature flag, \`cfn-include\` will silently drop resource update or create policies that contain CFN Intrinsics if they include non-primitive values. + + Enabling this feature flag will make \`cfn-include\` throw on these templates, unless you specify the logical ID of the resource in the 'unhydratedResources' property. + `, + recommendedValue: true, + introducedIn: { v2: "2.161.0" } + }, + ////////////////////////////////////////////////////////////////////// + [LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES]: { + type: 1 /* BugFix */, + summary: "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications.", + detailsMd: ` + Currently, when bundling Lambda functions with the non-latest runtime that supports AWS SDK JavaScript (v3), only the '@aws-sdk/*' packages are excluded by default. + However, this can cause version mismatches between the '@aws-sdk/*' and '@smithy/*' packages, as they are tightly coupled dependencies in AWS SDK v3. + + When this feature flag is enabled, both '@aws-sdk/*' and '@smithy/*' packages will be excluded during the bundling process. This ensures that no mismatches + occur between these tightly coupled dependencies when using the AWS SDK v3 in Lambda functions. + `, + introducedIn: { v2: "2.161.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY]: { + type: 1 /* BugFix */, + summary: "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN.", + detailsMd: ` + Currently, in the IAM Run Ecs policy generated by SFN EcsRunTask(), CDK will construct the ARN with wildcard attached at the end. + The revision number at the end will be replaced with a wildcard which it shouldn't. + + When this feature flag is enabled, if the task definition is created in the stack, the 'Resource' section will 'Ref' the taskDefinition. + `, + introducedIn: { v2: "2.163.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT]: { + type: 0 /* ApiDefault */, + summary: "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2.", + detailsMd: ` + Currently, if the machineImage property of the BastionHost construct defaults to using the latest Amazon Linux 2 + AMI. Amazon Linux 2 hits end-of-life in June 2025, so using Amazon Linux 2023 by default is a more future-proof + and secure option. + + When this feature flag is enabled, if you do not pass the machineImage property to the BastionHost construct, + the latest Amazon Linux 2023 version will be used instead of Amazon Linux 2. + `, + introducedIn: { v2: "2.172.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag or explicitly pass an Amazon Linux 2 machine image to the BastionHost construct." + }, + ////////////////////////////////////////////////////////////////////// + [ASPECT_STABILIZATION]: { + type: 2 /* VisibleContext */, + summary: "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.", + detailsMd: ` + Previously, Aspects were invoked in a single pass of the construct tree. + This meant that Aspects which created other Aspects were not run, and Aspects that created new nodes in the tree sometimes did not inherit their parent Aspects. + + When this feature flag is enabled, a stabilization loop is run to recurse the construct tree multiple times when invoking Aspects. + `, + unconfiguredBehavesLike: { v2: true }, + introducedIn: { v2: "2.172.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE]: { + type: 1 /* BugFix */, + summary: "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource.", + detailsMd: ` + When this feature flag is enabled, a new method will be used to get the DNS Name of the user pool domain target. The old method + creates a custom resource internally, but the new method doesn't need a custom resource. + + If the flag is set to false then a custom resource will be created when using \`UserPoolDomainTarget\`. + `, + introducedIn: { v2: "2.174.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT]: { + type: 1 /* BugFix */, + summary: "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere", + detailsMd: ` + For internet facing ALBs with 'dualstack-without-public-ipv4' IP address type, the default security group rules + will allow IPv6 ingress from anywhere (::/0). Previously, the default security group rules would only allow IPv4 ingress. + + Using a feature flag to make sure existing customers who might be relying + on the overly restrictive permissions are not broken.`, + introducedIn: { v2: "2.176.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to only allow IPv4 ingress in the default security group rules." + }, + ////////////////////////////////////////////////////////////////////// + [IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS]: { + type: 1 /* BugFix */, + summary: "When enabled, the default behaviour of OIDC provider will reject unauthorized connections", + detailsMd: ` + When this feature flag is enabled, the default behaviour of OIDC Provider's custom resource handler will + default to reject unauthorized connections when downloading CA Certificates. + + When this feature flag is disabled, the behaviour will be the same as current and will allow downloading + thumbprints from unsecure connections.`, + introducedIn: { v2: "2.177.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to allow unsecure OIDC connection." + }, + ////////////////////////////////////////////////////////////////////// + [ENABLE_ADDITIONAL_METADATA_COLLECTION]: { + type: 2 /* VisibleContext */, + summary: "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues.", + detailsMd: ` + When this feature flag is enabled, CDK expands the scope of usage data collection to include the following: + * L2 construct property keys - Collect which property keys you use from the L2 constructs in your app. This includes property keys nested in dictionary objects. + * L2 construct property values of BOOL and ENUM types - Collect property key values of only BOOL and ENUM types. All other types, such as string values or construct references will be redacted. + * L2 construct method usage - Collection method name, parameter keys and parameter values of BOOL and ENUM type. + `, + introducedIn: { v2: "2.178.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY]: { + type: 1 /* BugFix */, + summary: "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement", + detailsMd: ` + [Deprecated default feature] When this feature flag is enabled, Lambda will create new inline policies with AddToRolePolicy. + The purpose of this is to prevent lambda from creating a dependency on the Default Policy Statement. + This solves an issue where a circular dependency could occur if adding lambda to something like a Cognito Trigger, then adding the User Pool to the lambda execution role permissions. + However in the current implementation, we have removed a dependency of the lambda function on the policy. In addition to this, a Role will be attached to the Policy instead of an inline policy being attached to the role. + This will create a data race condition in the CloudFormation template because the creation of the Lambda function no longer waits for the policy to be created. Having said that, we are not deprecating the feature (we are defaulting the feature flag to false for new stacks) since this feature can still be used to get around the circular dependency issue (issue-7016) particularly in cases where the lambda resource creation doesnt need to depend on the policy resource creation. + We recommend to unset the feature flag if already set which will restore the original behavior. + `, + introducedIn: { v2: "2.180.0" }, + recommendedValue: false + }, + ////////////////////////////////////////////////////////////////////// + [SET_UNIQUE_REPLICATION_ROLE_NAME]: { + type: 1 /* BugFix */, + summary: "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication.", + detailsMd: ` + When performing cross-account S3 replication, we need to explicitly specify a role name for the replication execution role. + When this feature flag is enabled, a unique role name is specified only when performing cross-account replication. + When disabled, 'CDKReplicationRole' is always specified. + `, + introducedIn: { v2: "2.182.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE]: { + type: 0 /* ApiDefault */, + summary: "Remove the root account principal from Stage addActions trust policy", + detailsMd: ` + When this feature flag is enabled, the root account principal will not be added to the trust policy of stage role. + When this feature flag is disabled, it will keep the root account principal in the trust policy. + + For cross-account cases, when this feature flag is enabled the trust policy will be scoped to the role only. + If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED. + `, + introducedIn: { v2: "2.184.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back" + }, + ////////////////////////////////////////////////////////////////////// + [EVENTBUS_POLICY_SID_REQUIRED]: { + type: 1 /* BugFix */, + summary: "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals.", + detailsMd: ` + Currently, when granting permissions to service principals using grantPutEventsTo(), the operation silently fails + because service principals require resource policies with Statement IDs. + + When this flag is enabled: + - Resource policies will be created with Statement IDs for service principals + - The operation will succeed as expected + + When this flag is disabled: + - A warning will be emitted + - The grant operation will be dropped + - No permissions will be added + + This fixes the issue where permissions were silently not being added for service principals. + `, + introducedIn: { v2: "2.186.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [ASPECT_PRIORITIES_MUTATING]: { + type: 0 /* ApiDefault */, + summary: "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING.", + detailsMd: ` + Custom Aspects you add have a priority of DEFAULT (500) if you don't + assign a more specific priority, which is higher than MUTATING (200). This + is relevant if a custom Aspect you add and an Aspect added by CDK try to + configure the same value. + + If this flag is set to false (old behavior), Aspects added by CDK are also + added with a priority of DEFAULT; because their priorities are equal, the + Aspects that is closest to the target construct executes last (either + yours or the Aspect added by the CDK). + + If this flag is set to true (recommended behavior), Aspects added by CDK are added + with a priority of MUTATING, and custom Aspects you add with DEFAULT + priority will always execute last and "win" the write. If you need Aspects + added by CDK to run after yours, your Aspect needs to have a priority of + MUTATING or lower. + + This setting only applies to Aspects that were already being added for you + before version 2.172.0. Aspects introduced since that version will always + be added with a priority of MUTATING, independent of this feature flag. + `, + introducedIn: { v2: "2.189.1" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: ` + To add mutating Aspects controlling construct values that can be overridden + by Aspects added by CDK, give them MUTATING priority: + + \`\`\` + Aspects.of(stack).add(new MyCustomAspect(), { + priority: AspectPriority.MUTATING, + }); + \`\`\` + ` + }, + [DYNAMODB_TABLE_RETAIN_TABLE_REPLICA]: { + type: 1 /* BugFix */, + summary: "When enabled, table replica will be default to the removal policy of source table unless specified otherwise.", + detailsMd: ` + Currently, table replica will always be deleted when stack deletes regardless of source table's deletion policy. + When enabled, table replica will be default to the removal policy of source table unless specified otherwise. + `, + introducedIn: { v2: "2.187.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [LOG_USER_POOL_CLIENT_SECRET_VALUE]: { + type: 0 /* ApiDefault */, + summary: "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs.", + detailsMd: ` + When this feature flag is enabled, the SDK API call response to describe user pool client values will be logged in the custom + resource lambda function logs. + + When this feature flag is disabled, the SDK API call response to describe user pool client values will not be logged in the custom + resource lambda function logs. + `, + introducedIn: { v2: "2.187.0" }, + unconfiguredBehavesLike: { v2: false }, + recommendedValue: false, + compatibilityWithOldBehaviorMd: "Enable the feature flag to keep the old behavior and log the client secret values" + }, + ////////////////////////////////////////////////////////////////////// + [PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE]: { + type: 0 /* ApiDefault */, + summary: "When enabled, scopes down the trust policy for the cross-account action role", + detailsMd: ` + When this feature flag is enabled, the trust policy of the cross-account action role will be scoped to the pipeline role. + If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED. + When this feature flag is disabled, it will keep the root account principal in the trust policy. + `, + introducedIn: { v2: "2.189.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back" + }, + ////////////////////////////////////////////////////////////////////// + [STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2]: { + type: 0 /* ApiDefault */, + summary: "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter", + detailsMd: ` + When this feature flag is enabled, the resultWriterV2 property is used instead of resultWriter in DistributedMap class. + resultWriterV2 uses ResultWriterV2 class in StepFunctions ASL and can have either Bucket/Prefix or WriterConfig or both. + `, + introducedIn: { v2: "2.188.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag and set resultWriter in DistributedMap" + }, + ////////////////////////////////////////////////////////////////////// + [S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS]: { + type: 1 /* BugFix */, + summary: "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions.", + detailsMd: ` + When this feature flag is enabled, a S3 trust policy will be added to the KMS key resource policy for encrypted SNS subscriptions. + `, + introducedIn: { v2: "2.195.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY]: { + type: 1 /* BugFix */, + summary: "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC.", + detailsMd: ` + When this feature flag is enabled, EgressOnlyGateway resource will not be created when you create a vpc with only public subnets. + `, + introducedIn: { v2: "2.196.0" }, + recommendedValue: true + }, + /// /////////////////////////////////////////////////////////////////// + [USE_RESOURCEID_FOR_VPCV2_MIGRATION]: { + type: 0 /* ApiDefault */, + summary: "When enabled, use resource IDs for VPC V2 migration", + detailsMd: ` + When this feature flag is enabled, the VPC V2 migration will use resource IDs instead of getAtt references + for migrating resources from VPC V1 to VPC V2. This helps ensure a smoother migration path between + the two versions. + `, + introducedIn: { v2: "2.196.0" }, + recommendedValue: false, + unconfiguredBehavesLike: { v2: false }, + compatibilityWithOldBehaviorMd: "Disable the feature flag to use getAtt references for VPC V2 migration" + }, + ////////////////////////////////////////////////////////////////////// + [S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT]: { + type: 1 /* BugFix */, + summary: "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined.", + detailsMd: ` + When BlockPublicAccess is not set at all, s3's default behavior will be to set all options to true in aws console. + The previous behavior in cdk before this feature was; if only some of the BlockPublicAccessOptions were set (not all 4), then the ones undefined would default to false. + This is counter intuitive to the console behavior where the options would start in true state and a user would uncheck the boxes as needed. + The new behavior from this feature will allow a user, for example, to set 1 of the 4 BlockPublicAccessOpsions to false, and on deployment the other 3 will remain true. + `, + introducedIn: { v2: "2.196.0" }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [USE_CDK_MANAGED_LAMBDA_LOGGROUP]: { + type: 0 /* ApiDefault */, + summary: "When enabled, CDK creates and manages loggroup for the lambda function", + detailsMd: ` + When this feature flag is enabled, CDK will create a loggroup for lambda function with default properties + which supports CDK features Tag propagation, Property Injectors, Aspects + if the cdk app doesnt pass a 'logRetention' or 'logGroup' explicitly. + LogGroups created via 'logRetention' do not support Tag propagation, Property Injectors, Aspects. + LogGroups created via 'logGroup' created in CDK support Tag propagation, Property Injectors, Aspects. + + When this feature flag is disabled, a loggroup is created by Lambda service on first invocation + of the function (existing behavior). + LogGroups created in this way do not support Tag propagation, Property Injectors, Aspects. + + DO NOT ENABLE: If you have an existing app defining a lambda function and + have not supplied a logGroup or logRetention prop and your lambda function has + executed at least once, the logGroup has been already created with the same name + so your deployment will start failing. + Refer aws-lambda/README.md for more details on Customizing Log Group creation. + `, + introducedIn: { v2: "2.200.0" }, + unconfiguredBehavesLike: { v2: false }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to let lambda service create logGroup or specify logGroup or logRetention" + }, + ////////////////////////////////////////////////////////////////////// + [NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT]: { + type: 0 /* ApiDefault */, + summary: "When enabled, Network Load Balancer will be created with a security group by default.", + detailsMd: ` + When this feature flag is enabled, Network Load Balancer will be created with a security group by default. + `, + introducedIn: { v2: "2.222.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable the feature flag to create Network Load Balancer without a security group by default." + }, + ////////////////////////////////////////////////////////////////////// + [STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT]: { + type: 1 /* BugFix */, + summary: "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.", + detailsMd: ` + When this feature flag is enabled, the JSONPath apiEndpoint value will be resolved dynamically at runtime, while slightly increasing the size of the state machine definition. + When disabled, the JSONPath apiEndpoint property will only support a static string value. + `, + introducedIn: { v2: "2.221.0" }, + unconfiguredBehavesLike: { v2: true }, + recommendedValue: true + }, + ////////////////////////////////////////////////////////////////////// + [ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID]: { + type: 1 /* BugFix */, + summary: "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement", + detailsMd: ` + When this feature flag is enabled, ECS patterns will generate unique target group IDs that include + both the load balancer type (public/private) and load balancer name. This prevents CloudFormation + conflicts when switching between public and private load balancers or when changing load balancer names. + + Without this flag, target groups use generic IDs like 'ECS' which can cause conflicts when the + underlying load balancer is replaced due to changes in internetFacing or loadBalancerName properties. + + This is a breaking change as it will cause target group replacement when the flag is enabled. + `, + introducedIn: { v2: "2.221.0" }, + recommendedValue: true + }, + [ROUTE53_PATTERNS_USE_DISTRIBUTION]: { + type: 0 /* ApiDefault */, + summary: "Use the `Distribution` resource instead of `CloudFrontWebDistribution`", + detailsMd: ` + Enable this feature flag to use the new \`Distribution\` resource instead + of the deprecated \`CloudFrontWebDistribution\` construct. + `, + introducedIn: { v2: "2.233.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Define a `CloudFrontWebDistribution` explicitly" + }, + ////////////////////////////////////////////////////////////////////// + [CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0]: { + type: 0 /* ApiDefault */, + summary: "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions", + detailsMd: ` + When enabled, CloudFront Functions will use cloudfront-js-2.0 runtime by default instead of cloudfront-js-1.0. + The runtime can still be configured explicitly using the \`runtime\` property. + + If \`keyValueStore\` is specified, the runtime will always be cloudfront-js-2.0 regardless of this flag.`, + introducedIn: { v2: "2.245.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Set `runtime: FunctionRuntime.JS_1_0` explicitly to use the v1.0 runtime." + }, + ////////////////////////////////////////////////////////////////////// + [ELB_USE_POST_QUANTUM_TLS_POLICY]: { + type: 0 /* ApiDefault */, + summary: "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default", + detailsMd: ` + When this feature flag is enabled, HTTPS and TLS listeners that do not have an explicit + \`sslPolicy\` will use the post-quantum cryptography policy + \`ELBSecurityPolicy-TLS13-1-2-PQ-2025-09\` by default. + + This policy uses the non-restricted variant (without -Res-) to maintain AES-CBC cipher support + for TLS 1.2 clients, ensuring nearly 100% backward compatibility with the previous CDK default. + Post-quantum policies provide protection against "Harvest Now, Decrypt Later" attacks using + hybrid ML-KEM key exchange. + + When disabled (default), no explicit SSL policy is set, preserving the existing CDK behavior + where \`RECOMMENDED_TLS\` (\`ELBSecurityPolicy-TLS13-1-2-2021-06\`) is used. + `, + introducedIn: { v2: "2.245.0" }, + recommendedValue: true, + compatibilityWithOldBehaviorMd: "Disable this feature flag to preserve existing behavior where no explicit SSL policy is set." + }, + [AUTOMATIC_L1_TRAITS]: { + type: 0 /* ApiDefault */, + summary: "Automatically use the default L1 traits for L1 constructs`", + detailsMd: ` + When enabled, the construct library will apply default L1 traits for types that + have no traits defined yet. Traits regulate behaviors such as how to create + resource policies, or how to find an encryption key for a given L1 construct. + `, + introducedIn: { v2: "2.239.0" }, + recommendedValue: true, + unconfiguredBehavesLike: { v2: true }, + compatibilityWithOldBehaviorMd: "Register traits explicitly for each resource type" + }, + ////////////////////////////////////////////////////////////////////// + [BATCH_DEFAULT_AL2023]: { + type: 0 /* ApiDefault */, + summary: "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2", + detailsMd: ` + When enabled, EC2 Batch compute environments (both ECS and EKS) that do not specify an \`imageType\` + will default to \`ECS_AL2023\` or \`EKS_AL2023\` instead of the deprecated \`ECS_AL2\` or \`EKS_AL2\` + (Amazon Linux 2, reaching EOL June 2026 for ECS; already EOL for EKS). + + For EKS compute environments with a launch template, \`userdataType\` will automatically be set + to \`EKS_NODEADM\` when an AL2023 image type is used, as required by the AWS Batch API. + + When disabled, the default \`imageType\` remains \`ECS_AL2\` / \`EKS_AL2\` for backward compatibility.`, + introducedIn: { v2: "2.249.0" }, + recommendedValue: true, + unconfiguredBehavesLike: { v2: false }, + compatibilityWithOldBehaviorMd: `Explicitly set \`imageType\` to \`ECS_AL2\` or \`EKS_AL2\` in your compute environment images configuration. + +**Warning**: Enabling this flag on existing stacks may cause compute environment replacement, which terminates running jobs. To migrate safely, first pin existing environments to their current imageType explicitly, then enable the flag.` + }, + ////////////////////////////////////////////////////////////////////// + [EKS_DEFAULT_AL2023]: { + type: 0 /* ApiDefault */, + summary: "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2", + detailsMd: ` + When enabled, EKS managed node groups that do not specify an \`amiType\` will default to + AL2023 AMI types (AL2023_x86_64_STANDARD, AL2023_ARM_64_STANDARD) instead of the deprecated + AL2 types (AL2_x86_64, AL2_ARM_64). + + This only affects non-GPU instance types. GPU instances continue to default to AL2_x86_64_GPU + because AL2023 splits GPU support into separate NVIDIA and Neuron AMI variants. + + Amazon Linux 2 reached end of support on November 26, 2025. AL2023 is the AWS-recommended default. + + When disabled, the default AMI types remain AL2 for backward compatibility.`, + introducedIn: { v2: "2.259.0" }, + recommendedValue: true, + unconfiguredBehavesLike: { v2: false }, + compatibilityWithOldBehaviorMd: `Explicitly set \`amiType\` to the desired AL2 type (e.g., \`NodegroupAmiType.AL2_X86_64\`) in your nodegroup configuration. + +**Warning**: Enabling this flag on existing stacks will cause node group replacement, which terminates running pods. To migrate safely, first pin existing node groups to their current amiType explicitly, then enable the flag for new node groups.` + }, + ////////////////////////////////////////////////////////////////////// + [ANNOTATIONS_IN_VALIDATION_REPORT]: { + type: 2 /* VisibleContext */, + summary: "Include construct annotations (warnings and errors) in the policy validation report", + detailsMd: ` + When enabled, construct annotations added via \`Annotations.of()\` or \`Validations.of()\` + are collected post-synthesis and included in the policy validation report alongside + plugin violations. Annotations appear under a "Construct Annotations" source entry. + + When disabled, annotations are only displayed through the CLI's standard metadata + output (e.g. \`[Warning at /path] message\`) and do not appear in the validation report. + + Note: enabling this flag may cause annotations to appear twice \u2014 once in the CLI's + standard output and once in the validation report \u2014 until the CLI is updated to + consolidate both displays.`, + introducedIn: { v2: "2.253.0" }, + recommendedValue: true, + unconfiguredBehavesLike: { v2: false } + }, + ////////////////////////////////////////////////////////////////////// + [DEFAULT_CROSS_STACK_REFERENCES]: { + type: 2 /* VisibleContext */, + summary: "Controls whether cross-stack references are strong, weak, or both", + detailsMd: ` + Controls the default type of cross-stack references. Accepted values are + \`"strong"\`, \`"weak"\`, and \`"both"\`. + + The flag is read from the **consumer** stack's context, not the producer's. + + - \`"strong"\` (default): Uses ExportWriter/ExportReader custom resources that + write values to SSM Parameters in the consuming region. This prevents the + producing stack from being deleted while consumers exist. + - \`"weak"\`: Uses Fn::GetStackOutput to read an output directly from the + producing stack. Simpler (no extra infrastructure), but the producing stack + can be deleted independently of consumers. + - \`"both"\`: A transitional state for migrating from strong to weak. The producer + keeps the ExportWriter (continues writing to SSM) and also adds an Output. The + consumer switches to Fn::GetStackOutput. This allows removing the ExportReader + without breaking anything. + + **Migration from strong to weak**: set to \`"both"\` and deploy, then set to + \`"weak"\` and deploy again. + + **Migration from weak to strong**: set directly to \`"strong"\` (single deployment).`, + introducedIn: { v2: "2.254.0" }, + recommendedValue: "weak", + unconfiguredBehavesLike: { v2: "strong" } + }, + ////////////////////////////////////////////////////////////////////// + [VALIDATE_AGAINST_DEFAULT_RULES]: { + type: 2 /* VisibleContext */, + summary: "Treat CloudFormation Validate findings as errors", + detailsMd: ` + The CDK always validates synthesized templates against a default set of CloudFormation + rules during synthesis. These rules include schema validation, best-practice linting, + and common misconfiguration detection. + + When this flag is explicitly set to \`true\`, violations are treated as errors and will + fail synthesis. When unconfigured, violations are reported as warnings only.`, + introducedIn: { v2: "2.262.0" }, + recommendedValue: true, + unconfiguredBehavesLike: { v2: false } + }, + ////////////////////////////////////////////////////////////////////// + [ECS_REMOVE_EMPTY_LOAD_BALANCERS]: { + type: 1 /* BugFix */, + summary: "Render an empty `LoadBalancers` array on an ECS service that has no target groups", + detailsMd: ` + CloudFormation distinguishes between an absent \`LoadBalancers\` property, which leaves the live + service configuration untouched, and an empty array, which removes the existing load balancer + registrations. Without this flag the CDK omits the property when a service has no target groups, + so removing the last target group from a service never reaches the deployed service: it keeps + serving traffic from the target groups it was registered in, and a later deployment can fail with + \`The target group with targetGroupArn ... does not have an associated load balancer\`. + + When this flag is enabled, a service with no target groups renders \`LoadBalancers: []\` and + CloudFormation removes the registrations. + + Enabling this adds \`LoadBalancers: []\` to every ECS service that has no target groups, including + services that never had any. Amazon ECS starts a new deployment when a load balancer configuration + is added, updated or removed, so expect a one-time deployment of those services.`, + introducedIn: { v2: "2.269.0" }, + recommendedValue: true, + unconfiguredBehavesLike: { v2: false }, + compatibilityWithOldBehaviorMd: "Set this flag to `false` to keep omitting the property, and remove the registrations with `aws ecs update-service --load-balancers '[]'` instead." + }, + ////////////////////////////////////////////////////////////////////// + [CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS]: { + type: 0 /* ApiDefault */, + summary: "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS", + detailsMd: ` + When enabled, cache behaviors on a \`Distribution\` that do not specify an explicit + \`viewerProtocolPolicy\` default to \`ViewerProtocolPolicy.REDIRECT_TO_HTTPS\` instead of + \`ViewerProtocolPolicy.ALLOW_ALL\`, so viewers are redirected from HTTP to HTTPS rather + than being served over plaintext HTTP. + + This applies to the default behavior, to \`additionalBehaviors\`, and to behaviors added + later with \`addBehavior()\`. An explicitly specified \`viewerProtocolPolicy\` always wins, + regardless of this flag. + + Note that \`REDIRECT_TO_HTTPS\` answers an HTTP request with an HTTP 301 redirect, which the + viewer then follows with a second request. That additional request is billable.`, + introducedIn: { v2: "2.273.0" }, + recommendedValue: true, + unconfiguredBehavesLike: { v2: false }, + compatibilityWithOldBehaviorMd: "Set `viewerProtocolPolicy: ViewerProtocolPolicy.ALLOW_ALL` explicitly on each behavior to keep the old default." + }, + ////////////////////////////////////////////////////////////////////// + [APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD]: { + type: 1 /* BugFix */, + summary: "Render the API Gateway access log destination ARN without the trailing `:*`", + detailsMd: ` + API Gateway stores the access log destination ARN without the trailing \`:*\` that + \`LogGroup.logGroupArn\` carries. When the CDK renders the log group \`Arn\` attribute, + CloudFormation drift detection reports the stage as \`MODIFIED\` on every run, even + though the access logging configuration has not changed. + + When this flag is enabled, \`LogGroupLogDestination\` rebuilds the ARN from the log + group name, so the synthesized template matches the value stored by the service and + drift detection reports the stage as \`IN_SYNC\`. + + When disabled, the destination ARN keeps using the log group \`Arn\` attribute. + `, + introducedIn: { v2: "V2NEXT" }, + recommendedValue: true, + unconfiguredBehavesLike: { v2: false }, + compatibilityWithOldBehaviorMd: "Disable this flag to keep using the log group `Arn` attribute as the destination ARN." + } + }; + CURRENT_MV = "v2"; + CURRENT_VERSION_EXPIRED_FLAGS = Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] === void 0).map(([name, _]) => name).sort(); + CURRENTLY_RECOMMENDED_FLAGS = Object.fromEntries( + Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] !== void 0).filter(([_, flag]) => flag.recommendedValue !== flag.unconfiguredBehavesLike?.[CURRENT_MV]).map(([name, flag]) => [name, flag.recommendedValue]) + ); + CURRENT_VERSION_FLAG_DEFAULTS = Object.fromEntries(Object.entries(FLAGS).filter(([_, flag]) => flag.unconfiguredBehavesLike?.[CURRENT_MV] !== void 0).map(([name, flag]) => [name, flag.unconfiguredBehavesLike?.[CURRENT_MV]])); + FUTURE_FLAGS = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v === "boolean")); + NEW_PROJECT_DEFAULT_CONTEXT = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v !== "boolean")); + } +}); + +// ../../aws-cdk-lib/cx-api/lib/app.ts +var PATH_METADATA_ENABLE_CONTEXT, ANALYTICS_REPORTING_ENABLED_CONTEXT, PERFORMANCE_REPORTING_ENABLED_CONTEXT, DISABLE_ASSET_STAGING_CONTEXT, DISABLE_METADATA_STACK_TRACE, DISABLE_LOGICAL_ID_METADATA, DISABLE_CREATION_STACK_TRACES, BUNDLING_STACKS; +var init_app = __esm({ + "../../aws-cdk-lib/cx-api/lib/app.ts"() { + "use strict"; + PATH_METADATA_ENABLE_CONTEXT = "aws:cdk:enable-path-metadata"; + ANALYTICS_REPORTING_ENABLED_CONTEXT = "aws:cdk:version-reporting"; + PERFORMANCE_REPORTING_ENABLED_CONTEXT = "aws:cdk:performance-reporting"; + DISABLE_ASSET_STAGING_CONTEXT = "aws:cdk:disable-asset-staging"; + DISABLE_METADATA_STACK_TRACE = "aws:cdk:disable-stack-trace"; + DISABLE_LOGICAL_ID_METADATA = "aws:cdk:disable-logicalId-metadata"; + DISABLE_CREATION_STACK_TRACES = "aws:cdk:disable-creation-stack-traces"; + BUNDLING_STACKS = "aws:cdk:bundling-stacks"; + } +}); + +// ../../aws-cdk-lib/cx-api/lib/index.ts +var init_lib = __esm({ + "../../aws-cdk-lib/cx-api/lib/index.ts"() { + "use strict"; + init_legacy_moved(); + init_cxapi(); + init_features(); + init_app(); + } +}); + +// ../../aws-cdk-lib/cx-api/index.ts +var init_cx_api = __esm({ + "../../aws-cdk-lib/cx-api/index.ts"() { + "use strict"; + init_lib(); + } +}); + +// ../../aws-cdk-lib/core/lib/errors.ts +function renderConstructRootPath(construct) { + const rootPath = []; + let cur = construct; + while (cur !== void 0) { + rootPath.push(cur); + cur = cur.node.scope; + } + rootPath.reverse(); + const ret = new Array(); + for (let i = 0; i < rootPath.length; i++) { + const constructId = rootPath[i].node.id || "<.>"; + let suffix = ""; + try { + const constructInfo = constructInfoFromConstruct(rootPath[i]); + suffix = ` (${constructInfo?.fqn})`; + } catch (_) { + } + const branch = " \u2514\u2500 "; + const indent = i > 0 ? " ".repeat(branch.length * (i - 1)) + branch : ""; + ret.push(` ${indent}${constructId}${suffix}`); + } + return ret.join("\n"); +} +function maybeWriteErrorCode(errorCode) { + const file = process.env[ERRORFILE_ENV]; + if (!file) { + return; + } + fs.writeFileSync(file, errorCode, "utf-8"); +} +var fs, CONSTRUCT_ERROR_SYMBOL, VALIDATION_ERROR_SYMBOL, ASSUMPTION_ERROR_SYMBOL, EXECUTION_ERROR_SYMBOL, ConstructError, ValidationError, UnscopedValidationError, AssumptionError, ExecutionError; +var init_errors = __esm({ + "../../aws-cdk-lib/core/lib/errors.ts"() { + "use strict"; + fs = __toESM(require("fs")); + init_runtime_info(); + init_stack_trace(); + init_cx_api(); + CONSTRUCT_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError"); + VALIDATION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ValidationError"); + ASSUMPTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.AssumptionError"); + EXECUTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ExecutionError"); + ConstructError = class _ConstructError extends Error { + #time; + #constructPath; + #constructInfo; + /** + * The time the error was thrown. + */ + get time() { + return this.#time; + } + /** + * The level. Always `'error'`. + */ + get level() { + return "error"; + } + /** + * The path of the construct this error is thrown from, if available. + */ + get constructPath() { + return this.#constructPath; + } + /** + * Information on the construct this error is thrown from, if available. + */ + get constructInfo() { + return this.#constructInfo; + } + constructor(msg, scope, name) { + super(msg); + const ctr = this.constructor; + Object.setPrototypeOf(this, _ConstructError.prototype); + Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL, { value: true }); + this.name = name ?? ctr.name; + this.#time = (/* @__PURE__ */ new Date()).toISOString(); + this.#constructPath = scope?.node.path; + if (scope) { + try { + this.#constructInfo = constructInfoFromConstruct(scope); + } catch (_) { + } + } + this.stack = `\xAB${this.name}\xBB ${msg} +${enhancedStackTrace(ctr).join("\n")}`; + if (scope) { + this.stack += ` +Relates to construct: +${renderConstructRootPath(scope)}`; + } + maybeWriteErrorCode(this.name); + } + }; + ValidationError = class _ValidationError extends ConstructError { + get type() { + return "validation"; + } + constructor(name, msg, scope) { + super(msg, scope, name); + Object.setPrototypeOf(this, _ValidationError.prototype); + Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true }); + } + }; + UnscopedValidationError = class _UnscopedValidationError extends ConstructError { + get type() { + return "validation"; + } + constructor(name, msg) { + super(msg, void 0, name); + Object.setPrototypeOf(this, _UnscopedValidationError.prototype); + Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true }); + } + }; + AssumptionError = class _AssumptionError extends ConstructError { + get type() { + return "assumption"; + } + constructor(name, msg) { + super(msg, void 0, name); + Object.setPrototypeOf(this, _AssumptionError.prototype); + Object.defineProperty(this, ASSUMPTION_ERROR_SYMBOL, { value: true }); + } + }; + ExecutionError = class _ExecutionError extends ConstructError { + get type() { + return "exec"; + } + constructor(name, msg) { + super(msg, void 0, name); + Object.setPrototypeOf(this, _ExecutionError.prototype); + Object.defineProperty(this, EXECUTION_ERROR_SYMBOL, { value: true }); + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/aspect.ts +function bumpAspectTreeRevision(construct) { + const root = construct.node.root; + const rev = root[TREE_REVISION_SYM] ?? 0; + root[TREE_REVISION_SYM] = rev + 1; +} +function _aspectTreeRevisionReader(construct) { + const root = construct.node.root; + return () => root[TREE_REVISION_SYM] ?? 0; +} +var ASPECTS_SYMBOL, AspectPriority, Aspects, AspectApplication, TREE_REVISION_SYM; +var init_aspect = __esm({ + "../../aws-cdk-lib/core/lib/aspect.ts"() { + "use strict"; + init_errors(); + init_literal_string(); + ASPECTS_SYMBOL = /* @__PURE__ */ Symbol.for("cdk-aspects"); + AspectPriority = class { + /** + * Suggested priority for Aspects that mutate the construct tree. + */ + static MUTATING = 200; + /** + * Suggested priority for Aspects that only read the construct tree. + */ + static READONLY = 1e3; + /** + * Default priority for Aspects that are applied without a priority. + */ + static DEFAULT = 500; + }; + Aspects = class _Aspects { + /** + * Returns the `Aspects` object associated with a construct scope. + * @param scope The scope for which these aspects will apply. + */ + static of(scope) { + let aspects = scope[ASPECTS_SYMBOL]; + if (!aspects) { + aspects = new _Aspects(scope); + Object.defineProperty(scope, ASPECTS_SYMBOL, { + value: aspects, + configurable: false, + enumerable: false + }); + } + return aspects; + } + _scope; + _appliedAspects; + constructor(scope) { + this._appliedAspects = []; + this._scope = scope; + } + /** + * Adds an aspect to apply this scope before synthesis. + * @param aspect The aspect to add. + * @param options Options to apply on this aspect. + */ + add(aspect, options) { + const newApplication = new AspectApplication(this._scope, aspect, options?.priority ?? AspectPriority.DEFAULT); + if (this._appliedAspects.some((a) => a.aspect === newApplication.aspect && a.priority === newApplication.priority)) { + return; + } + this._appliedAspects.push(newApplication); + bumpAspectTreeRevision(this._scope); + } + /** + * The list of aspects which were directly applied on this scope. + */ + get all() { + return this._appliedAspects.map((application) => application.aspect); + } + /** + * The list of aspects with priority which were directly applied on this scope. + * + * Also returns inherited Aspects of this node. + */ + get applied() { + return [...this._appliedAspects]; + } + }; + AspectApplication = class { + /** + * The construct that the Aspect was applied to. + */ + construct; + /** + * The Aspect that was applied. + */ + aspect; + /** + * The priority value of this Aspect. Must be non-negative integer. + */ + _priority; + /** + * Initializes AspectApplication object + */ + constructor(construct, aspect, priority) { + this.construct = construct; + this.aspect = aspect; + this._priority = priority; + } + /** + * Gets the priority value. + */ + get priority() { + return this._priority; + } + /** + * Sets the priority value. + */ + set priority(priority) { + if (priority < 0) { + throw new ValidationError(lit`PriorityNonNegativeNumber`, "Priority must be a non-negative number", this.construct); + } + this._priority = priority; + bumpAspectTreeRevision(this.construct); + } + }; + TREE_REVISION_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Aspects.treeRevision"); + } +}); + +// ../../aws-cdk-lib/cloud-assembly-schema/index.ts +var cloud_assembly_schema_exports = {}; +var init_cloud_assembly_schema = __esm({ + "../../aws-cdk-lib/cloud-assembly-schema/index.ts"() { + "use strict"; + __reExport(cloud_assembly_schema_exports, __toESM(require_lib2())); + } +}); + +// ../../aws-cdk-lib/core/lib/private/core-construct-finders.ts +function stackOf(construct) { + const cache = construct[MY_STACK_CACHE]; + if (cache) { + return cache; + } else { + const value = _lookup(construct); + Object.defineProperty(construct, MY_STACK_CACHE, { + enumerable: false, + writable: false, + configurable: false, + value + }); + return value; + } + function _lookup(c) { + if (STACK_TYPE.isMarked(c)) { + return c; + } + const _scope = c.node.scope; + if (STAGE_TYPE.isMarked(c) || !_scope) { + throw new ValidationError(lit`ShouldBeCreatedInStackScope`, `${construct.constructor?.name ?? "Construct"} at '${construct.node.path}' should be created in the scope of a Stack, but no Stack found`, c); + } + return _lookup(_scope); + } +} +function stageOf(construct) { + return construct.node.scopes.reverse().slice(1).find(STAGE_TYPE.isMarked.bind(STAGE_TYPE)); +} +function appOf(construct) { + const root = construct.node.root; + return APP_TYPE.isMarked(root) ? root : void 0; +} +function isCfnResource(x) { + return x !== null && typeof x === "object" && x.cfnResourceType !== void 0; +} +var ConstructType, APP_TYPE, STACK_TYPE, STAGE_TYPE, NESTED_STACK_TYPE, MY_STACK_CACHE; +var init_core_construct_finders = __esm({ + "../../aws-cdk-lib/core/lib/private/core-construct-finders.ts"() { + "use strict"; + init_errors(); + init_literal_string(); + ConstructType = class { + constructor(sym) { + this.sym = sym; + } + sym; + mark(x) { + Object.defineProperty(x, this.sym, { value: true }); + } + isMarked(x) { + return x !== null && typeof x === "object" && this.sym in x; + } + }; + APP_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.App")); + STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack")); + STAGE_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stage")); + NESTED_STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.NestedStack")); + MY_STACK_CACHE = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack.myStack"); + } +}); + +// ../../aws-cdk-lib/core/lib/annotations.ts +function removeWarningDeep(construct, id) { + const stack = [construct]; + while (stack.length > 0) { + const next = stack.pop(); + removeWarning(next, id); + stack.push(...next.node.children); + } +} +function removeWarning(construct, id) { + const meta = construct.node._metadata; + if (!meta) { + return; + } + let i = 0; + while (i < meta.length) { + const m = meta[i]; + if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && m.data.includes(ackTag(id))) { + meta.splice(i, 1); + } else { + i += 1; + } + } +} +function removeInfoDeep(construct, id) { + const stack = [construct]; + while (stack.length > 0) { + const next = stack.pop(); + removeInfo(next, id); + stack.push(...next.node.children); + } +} +function removeInfo(construct, id) { + const meta = construct.node._metadata; + if (!meta) { + return; + } + let i = 0; + while (i < meta.length) { + const m = meta[i]; + if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO && m.data.includes(ackTag(id))) { + meta.splice(i, 1); + } else { + i += 1; + } + } +} +function ackTag(id) { + return `[ack: ${id}]`; +} +var Annotations, Acknowledgements; +var init_annotations = __esm({ + "../../aws-cdk-lib/core/lib/annotations.ts"() { + "use strict"; + init_errors(); + init_cloud_assembly_schema(); + init_cx_api(); + init_core_construct_finders(); + init_literal_string(); + Annotations = class _Annotations { + constructor(scope) { + this.scope = scope; + const disableTrace = scope.node.tryGetContext(DISABLE_METADATA_STACK_TRACE) || process.env.CDK_DISABLE_STACK_TRACE; + this.stackTraces = !disableTrace; + } + scope; + /** + * Returns the annotations API for a construct scope. + * @param scope The scope + */ + static of(scope) { + return new _Annotations(scope); + } + stackTraces; + /** + * Acknowledge a warning. When a warning is acknowledged for a scope + * all warnings that match the id will be ignored. + * + * The acknowledgement will apply to all child scopes + * + * @example + * declare const myConstruct: Construct; + * Annotations.of(myConstruct).acknowledgeWarning('SomeWarningId', 'This warning can be ignored because...'); + * + * @param id - the id of the warning message to acknowledge + * @param message optional message to explain the reason for acknowledgement + */ + acknowledgeWarning(id, message) { + Acknowledgements.of(this.scope).add(this.scope, id); + void message; + removeWarningDeep(this.scope, id); + } + /** + * Adds an acknowledgeable warning metadata entry to this construct. + * + * The CLI will display the warning when an app is synthesized, or fail if run + * in `--strict` mode. + * + * If the warning is acknowledged using `acknowledgeWarning()`, it will not be shown by + * the CLI, and will not cause `--strict` mode to fail synthesis. + * + * Prefer using `Validations.of(scope).addWarning()` instead. + * + * @example + * declare const myConstruct: Construct; + * Annotations.of(myConstruct).addWarningV2('my-library:Construct.someWarning', 'Some message explaining the warning'); + * + * @param id the unique identifier for the warning. This can be used to acknowledge the warning + * @param message The warning message. + */ + addWarningV2(id, message) { + if (!Acknowledgements.of(this.scope).has(this.scope, id)) { + this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, `${message} ${ackTag(id)}`); + } + } + /** + * Adds a warning metadata entry to this construct. Prefer using `Validations.of(scope).addWarning()`. + * + * The CLI will display the warning when an app is synthesized, or fail if run + * in `--strict` mode. + * + * Warnings added by this call cannot be acknowledged. This will block users from + * running in `--strict` mode until the deal with the warning, which makes it + * effectively not very different from `addError`. Prefer using `addWarningV2` instead. + * + * @param message The warning message. + */ + addWarning(message) { + this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, message); + } + /** + * Acknowledge a info. When a info is acknowledged for a scope + * all infos that match the id will be ignored. + * + * The acknowledgement will apply to all child scopes + * + * @example + * declare const myConstruct: Construct; + * Annotations.of(myConstruct).acknowledgeInfo('SomeInfoId', 'This info can be ignored because...'); + * + * @param id - the id of the info message to acknowledge + * @param message optional message to explain the reason for acknowledgement + */ + acknowledgeInfo(id, message) { + Acknowledgements.of(this.scope).add(this.scope, id); + void message; + removeInfoDeep(this.scope, id); + } + /** + * Adds an acknowledgeable info metadata entry to this construct. + * + * The CLI will display the info when an app is synthesized. + * + * If the info is acknowledged using `acknowledgeInfo()`, it will not be shown by the CLI. + * + * @example + * declare const myConstruct: Construct; + * Annotations.of(myConstruct).addInfoV2('my-library:Construct.someInfo', 'Some message explaining the info'); + * + * @param id the unique identifier for the info. This can be used to acknowledge the info + * @param message The info message. + */ + addInfoV2(id, message) { + if (!Acknowledgements.of(this.scope).has(this.scope, id)) { + this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, `${message} ${ackTag(id)}`); + } + } + /** + * Adds an info metadata entry to this construct. + * + * The CLI will display the info message when apps are synthesized. + * + * @param message The info message. + */ + addInfo(message) { + this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, message); + } + /** + * Adds an { "error": } metadata entry to this construct. + * The toolkit will fail deployment of any stack that has errors reported against it. + * Prefer using `Validations.of(scope).addError()` instead. + * @param message The error message. + */ + addError(message) { + this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR, message); + } + /** + * Add an error annotation to this construct, along with a tracking ID + * + * The toolkit will fail deployment of any stack that has errors reported against it. + * + * The error code will be tracked by telemetry; this method should only be used + * by CDK source code. + * + * @param id The error ID. + * @param message The error message. + * @internal + */ + _addTrackableError(id, message) { + this.addError(message); + const type = "aws:cdk:error-code"; + const isNew = !this.scope.node.metadata.find((x) => x.type === type && x.data === id); + if (isNew) { + this.scope.node.addMetadata(type, id); + } + } + /** + * Adds a deprecation warning for a specific API. + * + * Deprecations will be added only once per construct as a warning and will be + * deduplicated based on the `api`. + * + * If the environment variable `CDK_BLOCK_DEPRECATIONS` is set, this method + * will throw an error instead with the deprecation message. + * + * @param api The API being deprecated in the format `module.Class.property` + * (e.g. `@aws-cdk/core.Construct.node`). + * @param message The deprecation message to display, with information about + * alternatives. + */ + addDeprecation(api, message) { + const text = `The API ${api} is deprecated: ${message}. This API will be removed in the next major release`; + if (process.env.CDK_BLOCK_DEPRECATIONS) { + throw new UnscopedValidationError(lit`ValidationError`, `${this.scope.node.path}: ${text}`); + } + this.addWarningV2(`Deprecated:${api}`, text); + } + /** + * Adds a message metadata entry to the construct node, to be displayed by the CDK CLI. + * + * Records the message once per construct. + * @param level The message level + * @param message The message itself + */ + addMessage(level, message) { + const isNew = !this.scope.node.metadata.find((x) => x.data === message); + if (isNew) { + let normalizedMessage = typeof message === "string" ? message : JSON.stringify(message); + this.scope.node.addMetadata(level, normalizedMessage, { stackTrace: this.stackTraces }); + } + } + }; + Acknowledgements = class _Acknowledgements { + static of(scope) { + const app = appOf(scope); + if (!app) { + return new _Acknowledgements(); + } + const existing = app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM]; + if (existing) { + return existing; + } + const fresh = new _Acknowledgements(); + app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM] = fresh; + return fresh; + } + static ACKNOWLEDGEMENTS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Acknowledgements"); + acks = /* @__PURE__ */ new Map(); + constructor() { + } + add(node, ack) { + const nodePath = this.nodePath(node); + let arr = this.acks.get(nodePath); + if (!arr) { + arr = /* @__PURE__ */ new Set(); + this.acks.set(nodePath, arr); + } + arr.add(ack); + } + has(node, ack) { + for (const candidate of this.searchPaths(this.nodePath(node))) { + if (this.acks.get(candidate)?.has(ack)) { + return true; + } + } + return false; + } + nodePath(node) { + return (typeof node === "string" ? node : node.node.path).replace(/^\//, ""); + } + /** + * Given 'a/b/c', return ['a/b/c', 'a/b', 'a'] + */ + searchPaths(path23) { + const ret = new Array(); + let start = 0; + while (start < path23.length) { + let i = path23.indexOf("/", start); + if (i !== -1) { + ret.push(path23.substring(0, i)); + start = i + 1; + } else { + start = path23.length; + } + } + ret.push(path23); + return ret.reverse(); + } + }; + } +}); + +// ../../../node_modules/constructs/lib/dependency.js +var require_dependency = __commonJS({ + "../../../node_modules/constructs/lib/dependency.js"(exports2) { + "use strict"; + var _a7; + var _b; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Dependable = exports2.DependencyGroup = void 0; + var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti"); + var DependencyGroup = class { + constructor(...deps) { + this._deps = new Array(); + const self2 = this; + Dependable2.implement(this, { + get dependencyRoots() { + const result = new Array(); + for (const d of self2._deps) { + result.push(...Dependable2.of(d).dependencyRoots); + } + return result; + } + }); + this.add(...deps); + } + /** + * Add a construct to the dependency roots + */ + add(...scopes) { + this._deps.push(...scopes); + } + }; + exports2.DependencyGroup = DependencyGroup; + _a7 = JSII_RTTI_SYMBOL_1; + DependencyGroup[_a7] = { fqn: "constructs.DependencyGroup", version: "10.6.0" }; + var DEPENDABLE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.DependableTrait"); + var Dependable2 = class { + /** + * Turn any object into an IDependable. + */ + static implement(instance, trait) { + instance[DEPENDABLE_SYMBOL] = trait; + } + /** + * Return the matching Dependable for the given class instance. + */ + static of(instance) { + const ret = instance[DEPENDABLE_SYMBOL]; + if (!ret) { + throw new Error(`${instance} does not implement IDependable. Use "Dependable.implement()" to implement`); + } + return ret; + } + /** + * Return the matching Dependable for the given class instance. + * @deprecated use `of` + */ + static get(instance) { + return this.of(instance); + } + }; + exports2.Dependable = Dependable2; + _b = JSII_RTTI_SYMBOL_1; + Dependable2[_b] = { fqn: "constructs.Dependable", version: "10.6.0" }; + } +}); + +// ../../../node_modules/constructs/lib/private/stack-trace.js +var require_stack_trace = __commonJS({ + "../../../node_modules/constructs/lib/private/stack-trace.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.captureStackTrace = captureStackTrace2; + function captureStackTrace2(below) { + below = below || captureStackTrace2; + const object = { stack: "" }; + const previousLimit = Error.stackTraceLimit; + try { + Error.stackTraceLimit = Number.MAX_SAFE_INTEGER; + Error.captureStackTrace(object, below); + } finally { + Error.stackTraceLimit = previousLimit; + } + if (!object.stack) { + return []; + } + return object.stack.split("\n").slice(1).map((s) => s.replace(/^\s*at\s+/, "")); + } + } +}); + +// ../../../node_modules/constructs/lib/private/uniqueid.js +var require_uniqueid = __commonJS({ + "../../../node_modules/constructs/lib/private/uniqueid.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addressOf = addressOf; + var crypto13 = require("crypto"); + var HIDDEN_ID3 = "Default"; + function addressOf(components) { + const hash = crypto13.createHash("sha1"); + for (const c of components) { + if (c === HIDDEN_ID3) { + continue; + } + hash.update(c); + hash.update("\n"); + } + return "c8" + hash.digest("hex"); + } + } +}); + +// ../../../node_modules/constructs/lib/construct.js +var require_construct = __commonJS({ + "../../../node_modules/constructs/lib/construct.js"(exports2) { + "use strict"; + var _a7; + var _b; + var _c; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RootConstruct = exports2.ConstructOrder = exports2.Construct = exports2.Node = void 0; + var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti"); + var dependency_1 = require_dependency(); + var stack_trace_1 = require_stack_trace(); + var uniqueid_1 = require_uniqueid(); + var CONSTRUCT_SYM = /* @__PURE__ */ Symbol.for("constructs.Construct"); + var Node11 = class _Node { + /** + * Returns the node associated with a construct. + * @param construct the construct + * + * @deprecated use `construct.node` instead + */ + static of(construct) { + return construct.node; + } + constructor(host, scope, id) { + this.host = host; + this._locked = false; + id = id ?? ""; + this.id = sanitizeId(id); + this.scope = scope; + if (scope && !this.id) { + throw new Error("Only root constructs may have an empty ID"); + } + scope?.node.addChild(host, this.id); + } + /** + * The full, absolute path of this construct in the tree. + * + * Components are separated by '/'. + */ + get path() { + const components = []; + for (const scope of this.scopes) { + if (scope.node.id) { + components.push(scope.node.id); + } + } + return components.join(_Node.PATH_SEP); + } + /** + * Returns an opaque tree-unique address for this construct. + * + * Addresses are 42 characters hexadecimal strings. They begin with "c8" + * followed by 40 lowercase hexadecimal characters (0-9a-f). + * + * Addresses are calculated using a SHA-1 of the components of the construct + * path. + * + * To enable refactoring of construct trees, constructs with the ID `Default` + * will be excluded from the calculation. In those cases constructs in the + * same tree may have the same address. + * + * @example c83a2846e506bcc5f10682b564084bca2d275709ee + */ + get addr() { + if (!this._addr) { + this._addr = (0, uniqueid_1.addressOf)(this.scopes.map((c) => c.node.id)); + } + return this._addr; + } + /** + * Return a direct child by id, or undefined + * + * @param id Identifier of direct child + * @returns the child if found, or undefined + */ + tryFindChild(id) { + return this._children?.[sanitizeId(id)]; + } + /** + * Return a direct child by id + * + * Throws an error if the child is not found. + * + * @param id Identifier of direct child + * @returns Child with the given id. + */ + findChild(id) { + const ret = this.tryFindChild(id); + if (!ret) { + throw new Error(`No child with id: '${id}'`); + } + return ret; + } + /** + * Returns the child construct that has the id `Default` or `Resource`. + * This is usually the construct that provides the bulk of the underlying functionality. + * Useful for modifications of the underlying construct that are not available at the higher levels. + * + * @throws if there is more than one child + * @returns a construct or undefined if there is no default child + */ + get defaultChild() { + if (this._defaultChild !== void 0) { + return this._defaultChild; + } + const resourceChild = this.tryFindChild("Resource"); + const defaultChild = this.tryFindChild("Default"); + if (resourceChild && defaultChild) { + throw new Error(`Cannot determine default child for ${this.path}. There is both a child with id "Resource" and id "Default"`); + } + return defaultChild || resourceChild; + } + /** + * Override the defaultChild property. + * + * This should only be used in the cases where the correct + * default child is not named 'Resource' or 'Default' as it + * should be. + * + * If you set this to undefined, the default behavior of finding + * the child named 'Resource' or 'Default' will be used. + */ + set defaultChild(value) { + this._defaultChild = value; + } + /** + * All direct children of this construct. + */ + get children() { + return Object.values(this._children ?? {}); + } + /** + * Return this construct and all of its children in the given order + */ + findAll(order = ConstructOrder.PREORDER) { + const ret = new Array(); + visit2(this.host); + return ret; + function visit2(c) { + if (order === ConstructOrder.PREORDER) { + ret.push(c); + } + for (const child of c.node.children) { + visit2(child); + } + if (order === ConstructOrder.POSTORDER) { + ret.push(c); + } + } + } + /** + * This can be used to set contextual values. + * Context must be set before any children are added, since children may consult context info during construction. + * If the key already exists, it will be overridden. + * @param key The context key + * @param value The context value + */ + setContext(key, value) { + if (this.children.length > 0) { + const names = this.children.map((c) => c.node.id); + throw new Error("Cannot set context after children have been added: " + names.join(",")); + } + if (!this._context) { + this._context = {}; + } + this._context[key] = value; + } + /** + * Retrieves a value from tree context if present. Otherwise, would throw an error. + * + * Context is usually initialized at the root, but can be overridden at any point in the tree. + * + * @param key The context key + * @returns The context value or throws error if there is no context value for this key + */ + getContext(key) { + const value = this._context?.[key]; + if (value !== void 0) { + return value; + } + if (value === void 0 && !this.scope?.node) { + throw new Error(`No context value present for ${key} key`); + } + return this.scope && this.scope.node.getContext(key); + } + /** + * Retrieves the all context of a node from tree context. + * + * Context is usually initialized at the root, but can be overridden at any point in the tree. + * + * @param defaults Any keys to override the retrieved context + * @returns The context object or an empty object if there is discovered context + */ + getAllContext(defaults) { + return this.scopes.reverse().reduce((a, s) => ({ ...s.node._context, ...a }), { ...defaults }); + } + /** + * Retrieves a value from tree context. + * + * Context is usually initialized at the root, but can be overridden at any point in the tree. + * + * @param key The context key + * @returns The context value or `undefined` if there is no context value for this key. + */ + tryGetContext(key) { + const value = this._context?.[key]; + if (value !== void 0) { + return value; + } + return this.scope && this.scope.node.tryGetContext(key); + } + /** + * An immutable array of metadata objects associated with this construct. + * This can be used, for example, to implement support for deprecation notices, source mapping, etc. + */ + get metadata() { + return [...this._metadata ?? []]; + } + /** + * Adds a metadata entry to this construct. + * Entries are arbitrary values and will also include a stack trace to allow tracing back to + * the code location for when the entry was added. It can be used, for example, to include source + * mapping in CloudFormation templates to improve diagnostics. + * Note that construct metadata is not the same as CloudFormation resource metadata and is never written to the CloudFormation template. + * The metadata entries are written to the Cloud Assembly Manifest if the `treeMetadata` property is specified in the props of the App that contains this Construct. + * + * @param type a string denoting the type of metadata + * @param data the value of the metadata (can be a Token). If null/undefined, metadata will not be added. + * @param options options + */ + addMetadata(type, data, options = {}) { + if (data == null) { + return; + } + const node = this; + function getTrace() { + if (options.stackTraceOverride && options.stackTraceOverride.length > 0) { + return options.stackTraceOverride; + } + const shouldTrace = options.stackTrace ?? false; + return shouldTrace ? (0, stack_trace_1.captureStackTrace)(options.traceFromFunction ?? node.addMetadata) : void 0; + } + if (!this._metadata) { + this._metadata = []; + } + this._metadata.push({ type, data, trace: getTrace() }); + } + /** + * All parent scopes of this construct. + * + * @returns a list of parent scopes. The last element in the list will always + * be the current construct and the first element will be the root of the + * tree. + */ + get scopes() { + const ret = new Array(); + let curr = this.host; + while (curr) { + ret.unshift(curr); + curr = curr.node.scope; + } + return ret; + } + /** + * Returns the root of the construct tree. + * @returns The root of the construct tree. + */ + get root() { + return this.scopes[0]; + } + /** + * Returns true if this construct or the scopes in which it is defined are + * locked. + */ + get locked() { + if (this._locked) { + return true; + } + if (this.scope && this.scope.node.locked) { + return true; + } + return false; + } + /** + * Add an ordering dependency on another construct. + * + * An `IDependable` + */ + addDependency(...deps) { + if (!this._dependencies) { + this._dependencies = /* @__PURE__ */ new Set(); + } + for (const d of deps) { + this._dependencies.add(d); + } + } + /** + * Return all dependencies registered on this node (non-recursive). + */ + get dependencies() { + const result = new Array(); + if (this._dependencies) { + for (const dep of this._dependencies) { + for (const root of dependency_1.Dependable.of(dep).dependencyRoots) { + result.push(root); + } + } + } + return result; + } + /** + * Remove the child with the given name, if present. + * + * @returns Whether a child with the given name was deleted. + */ + tryRemoveChild(childName) { + if (!this._children || !(childName in this._children)) { + return false; + } + delete this._children[childName]; + return true; + } + /** + * Adds a validation to this construct. + * + * When `node.validate()` is called, the `validate()` method will be called on + * all validations and all errors will be returned. + * + * @param validation The validation object + */ + addValidation(validation) { + if (!this._validations) { + this._validations = []; + } + this._validations.push(validation); + } + /** + * Validates this construct. + * + * Invokes the `validate()` method on all validations added through + * `addValidation()`. + * + * @returns an array of validation error messages associated with this + * construct. + */ + validate() { + return (this._validations ?? []).flatMap((v) => v.validate()); + } + /** + * Locks this construct from allowing more children to be added. After this + * call, no more children can be added to this construct or to any children. + */ + lock() { + this._locked = true; + } + /** + * Applies one or more mixins to this construct. + * + * Mixins are applied in order. The list of constructs is captured at the + * start of the call, so constructs added by a mixin will not be visited. + * Use multiple `with()` calls if subsequent mixins should apply to added + * constructs. + * + * @param mixins The mixins to apply + * @returns This construct for chaining + */ + with(...mixins) { + const allConstructs = this.findAll(); + for (const mixin of mixins) { + for (const construct of allConstructs) { + if (mixin.supports(construct)) { + mixin.applyTo(construct); + } + } + } + return this.host; + } + /** + * Adds a child construct to this node. + * + * @param child The child construct + * @param childName The type name of the child construct. + * @returns The resolved path part name of the child + */ + addChild(child, childName) { + if (this.locked) { + if (!this.path) { + throw new Error("Cannot add children during synthesis"); + } + throw new Error(`Cannot add children to "${this.path}" during synthesis`); + } + if (!this._children) { + this._children = {}; + } + if (this._children[childName]) { + const name = this.id ?? ""; + const typeName = this.host.constructor.name; + throw new Error(`There is already a Construct with name '${childName}' in ${typeName}${name.length > 0 ? " [" + name + "]" : ""}`); + } + this._children[childName] = child; + } + }; + exports2.Node = Node11; + _a7 = JSII_RTTI_SYMBOL_1; + Node11[_a7] = { fqn: "constructs.Node", version: "10.6.0" }; + Node11.PATH_SEP = "/"; + var Construct19 = class { + /** + * Checks if `x` is a construct. + * + * Use this method instead of `instanceof` to properly detect `Construct` + * instances, even when the construct library is symlinked. + * + * Explanation: in JavaScript, multiple copies of the `constructs` library on + * disk are seen as independent, completely different libraries. As a + * consequence, the class `Construct` in each copy of the `constructs` library + * is seen as a different class, and an instance of one class will not test as + * `instanceof` the other class. `npm install` will not create installations + * like this, but users may manually symlink construct libraries together or + * use a monorepo tool: in those cases, multiple copies of the `constructs` + * library can be accidentally installed, and `instanceof` will behave + * unpredictably. It is safest to avoid using `instanceof`, and using + * this type-testing method instead. + * + * @returns true if `x` is an object created from a class which extends `Construct`. + * @param x Any object + */ + static isConstruct(x) { + return x && typeof x === "object" && x[CONSTRUCT_SYM]; + } + /** + * Creates a new construct node. + * + * @param scope The scope in which to define this construct + * @param id The scoped construct ID. Must be unique amongst siblings. If + * the ID includes a path separator (`/`), then it will be replaced by double + * dash `--`. + */ + constructor(scope, id) { + this.node = new Node11(this, scope, id); + dependency_1.Dependable.implement(this, { + dependencyRoots: [this] + }); + } + /** + * Applies one or more mixins to this construct. + * + * Mixins are applied in order. The list of constructs is captured at the + * start of the call, so constructs added by a mixin will not be visited. + * Use multiple `with()` calls if subsequent mixins should apply to added + * constructs. + * + * @param mixins The mixins to apply + * @returns This construct for chaining + */ + with(...mixins) { + return this.node.with(...mixins); + } + /** + * Returns a string representation of this construct. + */ + toString() { + return this.node.path || ""; + } + }; + exports2.Construct = Construct19; + _b = JSII_RTTI_SYMBOL_1; + Construct19[_b] = { fqn: "constructs.Construct", version: "10.6.0" }; + var ConstructOrder; + (function(ConstructOrder2) { + ConstructOrder2[ConstructOrder2["PREORDER"] = 0] = "PREORDER"; + ConstructOrder2[ConstructOrder2["POSTORDER"] = 1] = "POSTORDER"; + })(ConstructOrder || (exports2.ConstructOrder = ConstructOrder = {})); + var PATH_SEP_REGEX = new RegExp(`${Node11.PATH_SEP}`, "g"); + function sanitizeId(id) { + return id.replace(PATH_SEP_REGEX, "--"); + } + Object.defineProperty(Construct19.prototype, CONSTRUCT_SYM, { + value: true, + enumerable: false, + writable: false + }); + var RootConstruct = class extends Construct19 { + /** + * Creates a new root construct node. + * + * @param id The scoped construct ID. Must be unique amongst siblings. If + * the ID includes a path separator (`/`), then it will be replaced by double + * dash `--`. + */ + constructor(id) { + super(void 0, id ?? ""); + } + }; + exports2.RootConstruct = RootConstruct; + _c = JSII_RTTI_SYMBOL_1; + RootConstruct[_c] = { fqn: "constructs.RootConstruct", version: "10.6.0" }; + } +}); + +// ../../../node_modules/constructs/lib/index.js +var require_lib4 = __commonJS({ + "../../../node_modules/constructs/lib/index.js"(exports2) { + "use strict"; + var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + }) : (function(o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + })); + var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar2(require_construct(), exports2); + __exportStar2(require_dependency(), exports2); + } +}); + +// ../../aws-cdk-lib/core/lib/feature-flags.ts +var import_constructs, FeatureFlags; +var init_feature_flags = __esm({ + "../../aws-cdk-lib/core/lib/feature-flags.ts"() { + "use strict"; + import_constructs = __toESM(require_lib4()); + init_errors(); + init_cx_api(); + init_literal_string(); + FeatureFlags = class _FeatureFlags { + constructor(construct) { + this.construct = construct; + } + construct; + /** + * Inspect feature flags on the construct node's context. + */ + static of(scope) { + return new _FeatureFlags(scope); + } + /** + * Check whether a feature flag is enabled. If configured, the flag is present in + * the construct node context. Falls back to the defaults defined in the `cx-api` + * module. + */ + isEnabled(featureFlag) { + const context = import_constructs.Node.of(this.construct).tryGetContext(featureFlag); + if (CURRENT_VERSION_EXPIRED_FLAGS.includes(featureFlag)) { + if (context !== void 0) { + throw new UnscopedValidationError(lit`UnsupportedFeatureFlag`, `Unsupported feature flag '${featureFlag}'. This flag existed on CDKv1 but has been removed in CDKv2. CDK will now behave as the same as when the flag is enabled.`); + } + return true; + } + return context !== void 0 ? Boolean(context) : futureFlagDefault(featureFlag); + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/private/aspect-prio.ts +function mutatingAspectPrio32333(scope) { + return FeatureFlags.of(scope).isEnabled(ASPECT_PRIORITIES_MUTATING) ? AspectPriority.MUTATING : void 0; +} +var init_aspect_prio = __esm({ + "../../aws-cdk-lib/core/lib/private/aspect-prio.ts"() { + "use strict"; + init_cx_api(); + init_aspect(); + init_feature_flags(); + } +}); + +// ../../aws-cdk-lib/core/lib/debug.ts +function debugModeEnabled() { + return isTruthy(import_process.env[CDK_DEBUG]); +} +function isTruthy(value) { + if (!value) { + return false; + } + return TRUTHY_VALUES.has(value.toLowerCase()); +} +var import_process, CDK_DEBUG, TRUTHY_VALUES; +var init_debug = __esm({ + "../../aws-cdk-lib/core/lib/debug.ts"() { + "use strict"; + import_process = require("process"); + CDK_DEBUG = "CDK_DEBUG"; + TRUTHY_VALUES = /* @__PURE__ */ new Set(["1", "on", "true"]); + } +}); + +// ../../aws-cdk-lib/core/lib/helpers-internal/box.ts +var BOX_SYM, stackTraceCollectionEnabled, globalSeq, Box, BaseReadableBox, Combined, Computed, ReadonlyState, State, ArrayState, MapState, SetState; +var init_box = __esm({ + "../../aws-cdk-lib/core/lib/helpers-internal/box.ts"() { + "use strict"; + init_debug(); + init_stack_trace(); + BOX_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Box"); + stackTraceCollectionEnabled = true; + globalSeq = 0; + Box = class { + /** + * Creates a mutable box holding a single value. + * + * @param value the initial value. + * @param options.equals optional equality function used to skip no-op `set` calls. + * Defaults to reference equality (`===`). + * @returns a new `Box`. + */ + static fromValue(value, options) { + return new State(value, options); + } + /** + * Creates a read-only box that combines multiple source boxes through a function. + * + * The resulting box collects stack traces from all source boxes, sorted by + * the global mutation order. This is useful when a single CloudFormation + * property depends on multiple pieces of L2 state. + * + * @param boxes a record of named source boxes. + * @param fn a pure function that receives the unwrapped values and produces the result. + * @returns a new read-only `IReadableBox`. + * @example + * const a = Boxes.fromValue(10); + * const b = Boxes.fromValue(20); + * const result = Boxes.combine({ a, b }, (x) => x.a + x.b).derive((x) => x * 2); + * result.get(); // 60 + */ + static combine(boxes, fn) { + return new Combined(boxes, fn); + } + /** + * Type guard that checks whether a value is a box. + * + * Used internally by `PropertyAssignmentMetadataWriter` to decide whether a + * resolved token should contribute `aws:cdk:propertyAssignment` metadata. + */ + static isBox(x) { + return typeof x === "object" && x && BOX_SYM in x; + } + /** + * Creates a mutable array box. + * + * @param as the initial array contents. + * @param options.omitEmpty if true (the default), the box resolves to `undefined` when the + * array is empty. This behavior propagates through `map`, `derive`, and + * `reduce`, so derived boxes also resolve to `undefined` when the source + * array is empty. Set to `false` to resolve to an empty array instead. + * @returns a new `ArrayBox`. + */ + static fromArray(as = [], options) { + return new ArrayState(as, options?.omitEmpty ?? true); + } + /** + * Creates a mutable map box. + * + * @param map the initial map contents. + * @returns a new `MapBox`. + */ + static fromMap(map = /* @__PURE__ */ new Map()) { + return new MapState(map); + } + /** + * Creates a mutable set box. + * + * @param set the initial set contents. + * @returns a new `SetBox`. + */ + static fromSet(set = /* @__PURE__ */ new Set()) { + return new SetState(set); + } + /** + * Globally disables stack trace collection for all box mutations. + * + * Called by the `@noBoxStackTraces` decorator before entering an L2 + * constructor, so that default/initial values set during construction + * do not produce misleading stack traces. + */ + static disableStackTraceCollection() { + stackTraceCollectionEnabled = false; + } + /** + * Re-enables stack trace collection for all box mutations. + * + * Called by the `@noBoxStackTraces` decorator after the L2 constructor + * returns, so that subsequent mutations (from user code) are tracked. + */ + static enableStackTraceCollection() { + stackTraceCollectionEnabled = true; + } + }; + BaseReadableBox = class { + creationStack = []; + constructor() { + Object.defineProperty(this, BOX_SYM, { value: true }); + } + derive(fn) { + return new Computed(this, fn); + } + resolve(_) { + return this.get(); + } + }; + Combined = class extends BaseReadableBox { + constructor(boxes, fn) { + super(); + this.boxes = boxes; + this.fn = fn; + } + boxes; + fn; + get() { + const values = Object.fromEntries( + Object.entries(this.boxes).map(([k, b]) => [k, b.get()]) + ); + return this.fn(values); + } + getMutable() { + return this.get(); + } + getStackTraces() { + const all = Object.values(this.boxes).flatMap((b) => b.getOrderedStackTraces?.() ?? []); + all.sort((a, b) => a.seq - b.seq); + return all.map((t) => t.trace); + } + }; + Computed = class extends BaseReadableBox { + constructor(source, fn) { + super(); + this.source = source; + this.fn = fn; + } + source; + fn; + get() { + return this.fn(this.source.get()); + } + getMutable() { + return this.get(); + } + resolve(context) { + const sourceResolved = this.source.resolve(context); + if (sourceResolved === void 0) { + return void 0; + } + return this.fn(sourceResolved); + } + getStackTraces() { + return this.source.getStackTraces(); + } + getOrderedStackTraces() { + return this.source.getOrderedStackTraces?.() ?? []; + } + }; + ReadonlyState = class extends BaseReadableBox { + constructor(value) { + super(); + this.value = value; + if (debugModeEnabled() && stackTraceCollectionEnabled) { + this.orderedTraces = [{ trace: captureStackTrace(this.constructor), seq: globalSeq++ }]; + } + } + value; + orderedTraces = []; + get() { + return this.value; + } + getMutable() { + return this.value; + } + getStackTraces() { + return this.orderedTraces.map((t) => t.trace); + } + getOrderedStackTraces() { + return this.orderedTraces; + } + }; + State = class _State extends ReadonlyState { + equals; + constructor(value, options) { + super(value); + this.equals = options?.equals ?? ((a, b) => a === b); + } + set(value) { + if (this.equals(this.value, value)) { + return; + } + if (debugModeEnabled() && stackTraceCollectionEnabled) { + this.orderedTraces = [{ trace: captureStackTrace(_State.prototype.set), seq: globalSeq++ }]; + } + this.value = value; + } + update(fn) { + this.set(fn(this.value)); + } + }; + ArrayState = class _ArrayState extends State { + constructor(array, omitEmptyFlag) { + super(array); + this.array = array; + this.omitEmptyFlag = omitEmptyFlag; + } + array; + omitEmptyFlag; + resolve(_) { + if (this.omitEmptyFlag && this.array.length === 0) { + return void 0; + } + return this.get(); + } + set(value) { + super.set(value); + this.array = value; + } + push(...items) { + this.array.push(...items); + this.appendTrace(() => captureStackTrace(_ArrayState.prototype.push)); + } + pop() { + const result = this.array.pop(); + this.appendTrace(() => captureStackTrace(_ArrayState.prototype.pop)); + return result; + } + findIndex(predicate) { + return this.array.findIndex(predicate); + } + find(predicate) { + return this.array.find(predicate); + } + get length() { + return this.array.length; + } + splice(start, deleteCount, ...items) { + const result = this.array.splice(start, deleteCount, ...items); + this.appendTrace(() => captureStackTrace(_ArrayState.prototype.splice)); + return result; + } + appendTrace(deferredTrace) { + if (debugModeEnabled() && stackTraceCollectionEnabled) { + this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ }); + } + } + some(predicate) { + return this.array.some(predicate); + } + includes(searchElement) { + return this.array.includes(searchElement); + } + map(fn) { + return this.derive((arr) => arr.map(fn)); + } + filter(fn) { + return this.derive((arr) => arr.filter(fn)); + } + [Symbol.iterator]() { + return this.array[Symbol.iterator](); + } + }; + MapState = class _MapState extends State { + constructor(map) { + super(map); + this.map = map; + } + map; + set(value) { + super.set(value); + this.map = value; + } + get size() { + return this.map.size; + } + put(key, value) { + this.map.set(key, value); + this.appendTrace(() => captureStackTrace(_MapState.prototype.put)); + } + delete(key) { + const result = this.map.delete(key); + this.appendTrace(() => captureStackTrace(_MapState.prototype.delete)); + return result; + } + has(key) { + return this.map.has(key); + } + getEntry(key) { + return this.map.get(key); + } + keys() { + return this.map.keys(); + } + values() { + return this.map.values(); + } + entries() { + return this.map.entries(); + } + forEach(callbackfn) { + this.map.forEach(callbackfn); + } + appendTrace(deferredTrace) { + if (debugModeEnabled() && stackTraceCollectionEnabled) { + this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ }); + } + } + [Symbol.iterator]() { + return this.map[Symbol.iterator](); + } + }; + SetState = class _SetState extends State { + constructor(_set) { + super(_set); + this._set = _set; + } + _set; + set(value) { + super.set(value); + this._set = value; + } + get size() { + return this._set.size; + } + add(value) { + this._set.add(value); + this.appendTrace(() => captureStackTrace(_SetState.prototype.add)); + } + delete(value) { + const result = this._set.delete(value); + this.appendTrace(() => captureStackTrace(_SetState.prototype.delete)); + return result; + } + has(value) { + return this._set.has(value); + } + values() { + return this._set.values(); + } + entries() { + return this._set.entries(); + } + forEach(callbackfn) { + this._set.forEach(callbackfn); + } + appendTrace(deferredTrace) { + if (debugModeEnabled() && stackTraceCollectionEnabled) { + this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ }); + } + } + [Symbol.iterator]() { + return this._set[Symbol.iterator](); + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/string-fragments.ts +function fragmentValue(fragment) { + switch (fragment.type) { + case "literal": + return fragment.lit; + case "token": + return fragment.token.toString(); + case "intrinsic": + return fragment.value; + } +} +var TokenizedStringFragments; +var init_string_fragments = __esm({ + "../../aws-cdk-lib/core/lib/string-fragments.ts"() { + "use strict"; + init_token(); + TokenizedStringFragments = class _TokenizedStringFragments { + fragments = new Array(); + get firstToken() { + const first = this.fragments[0]; + if (first.type === "token") { + return first.token; + } + return void 0; + } + get firstValue() { + return fragmentValue(this.fragments[0]); + } + get length() { + return this.fragments.length; + } + addLiteral(lit2) { + this.fragments.push({ type: "literal", lit: lit2 }); + } + addToken(token) { + this.fragments.push({ type: "token", token }); + } + addIntrinsic(value) { + this.fragments.push({ type: "intrinsic", value }); + } + /** + * Return all Tokens from this string + */ + get tokens() { + const ret = new Array(); + for (const f of this.fragments) { + if (f.type === "token") { + ret.push(f.token); + } + } + return ret; + } + /** + * Apply a transformation function to all tokens in the string + */ + mapTokens(mapper) { + const ret = new _TokenizedStringFragments(); + for (const f of this.fragments) { + switch (f.type) { + case "literal": + ret.addLiteral(f.lit); + break; + case "token": + const mapped = mapper.mapToken(f.token); + if (isResolvableObject(mapped)) { + ret.addToken(mapped); + } else if (Token.isUnresolved(mapped)) { + ret.addIntrinsic(mapped); + } else { + ret.addLiteral(mapped); + } + break; + case "intrinsic": + ret.addIntrinsic(f.value); + break; + } + } + return ret; + } + /** + * Combine the string fragments using the given joiner. + * + * If there are any + */ + join(concat) { + if (this.fragments.length === 0) { + return concat.join(void 0, void 0); + } + if (this.fragments.length === 1) { + return this.firstValue; + } + const values = this.fragments.map(fragmentValue); + while (values.length > 1) { + const prefix = values.splice(0, 2); + values.splice(0, 0, concat.join(prefix[0], prefix[1])); + } + return values[0]; + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/private/encoding.ts +function regexQuote(s) { + return s.replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&"); +} +function unresolved(obj) { + if (typeof obj === "string") { + return obj.includes(ANY_TOKEN_MARKER) && TokenString.forString(obj).test(); + } else if (typeof obj === "number") { + return extractTokenDouble(obj) !== void 0; + } else if (Array.isArray(obj) && obj.length === 1) { + return typeof obj[0] === "string" && TokenString.forListToken(obj[0]).test(); + } else { + return isResolvableObject(obj); + } +} +function createTokenDouble(x) { + if (Math.floor(x) !== x || x < 0) { + throw new UnscopedValidationError(lit`OnlyEncodePositiveIntegers`, "Can only encode positive integers"); + } + if (x > MAX_ENCODABLE_INTEGER) { + throw new UnscopedValidationError(lit`IndexLargeEncode`, `Got an index too large to encode: ${x}`); + } + const buf = new ArrayBuffer(8); + const ints = new Uint32Array(buf); + ints[0] = x & 4294967295; + ints[1] = shr32(x) & 65535 | DOUBLE_TOKEN_MARKER_BITS; + return new Float64Array(buf)[0]; +} +function shr32(x) { + return Math.floor(x / BITS32); +} +function shl32(x) { + return x * BITS32; +} +function extractTokenDouble(encoded) { + const buf = new ArrayBuffer(8); + new Float64Array(buf)[0] = encoded; + const ints = new Uint32Array(buf); + if ((ints[1] & 4294901760) !== DOUBLE_TOKEN_MARKER_BITS) { + return void 0; + } + return ints[0] + shl32(ints[1] & 65535); +} +var ANY_TOKEN_MARKER, BEGIN_STRING_TOKEN_MARKER, BEGIN_LIST_TOKEN_MARKER, END_TOKEN_MARKER, VALID_KEY_CHARS, QUOTED_BEGIN_STRING_TOKEN_MARKER, QUOTED_BEGIN_LIST_TOKEN_MARKER, QUOTED_END_TOKEN_MARKER, STRINGIFIED_NUMBER_PATTERN, STRING_TOKEN_REGEX, LIST_TOKEN_REGEX, TokenString, DOUBLE_TOKEN_MARKER_BITS, MAX_ENCODABLE_INTEGER, BITS32, STRINGIFIED_NUMBER_REGEX; +var init_encoding = __esm({ + "../../aws-cdk-lib/core/lib/private/encoding.ts"() { + "use strict"; + init_errors(); + init_string_fragments(); + init_token(); + init_literal_string(); + ANY_TOKEN_MARKER = "Token["; + BEGIN_STRING_TOKEN_MARKER = "${Token["; + BEGIN_LIST_TOKEN_MARKER = "#{Token["; + END_TOKEN_MARKER = "]}"; + VALID_KEY_CHARS = "a-zA-Z0-9:._-"; + QUOTED_BEGIN_STRING_TOKEN_MARKER = regexQuote(BEGIN_STRING_TOKEN_MARKER); + QUOTED_BEGIN_LIST_TOKEN_MARKER = regexQuote(BEGIN_LIST_TOKEN_MARKER); + QUOTED_END_TOKEN_MARKER = regexQuote(END_TOKEN_MARKER); + STRINGIFIED_NUMBER_PATTERN = "-1\\.\\d{10,16}e\\+289"; + STRING_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_STRING_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}|(${STRINGIFIED_NUMBER_PATTERN})`, "g"); + LIST_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_LIST_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}`, "g"); + TokenString = class _TokenString { + constructor(str, re) { + this.str = str; + this.re = re; + } + str; + re; + /** + * Returns a `TokenString` for this string. + */ + static forString(s) { + return new _TokenString(s, STRING_TOKEN_REGEX); + } + /** + * Returns a `TokenString` for this string (must be the first string element of the list) + */ + static forListToken(s) { + return new _TokenString(s, LIST_TOKEN_REGEX); + } + /** + * Split string on markers, substituting markers with Tokens + */ + split(lookup) { + const ret = new TokenizedStringFragments(); + let rest = 0; + this.re.lastIndex = 0; + let m = this.re.exec(this.str); + while (m) { + if (m.index > rest) { + ret.addLiteral(this.str.substring(rest, m.index)); + } + ret.addToken(lookup(m[1] ?? m[2])); + rest = this.re.lastIndex; + m = this.re.exec(this.str); + } + if (rest < (this.str ?? "").length) { + ret.addLiteral(this.str.substring(rest)); + } + return ret; + } + /** + * Indicates if this string includes tokens. + */ + test() { + this.re.lastIndex = 0; + return this.re.test(this.str); + } + }; + DOUBLE_TOKEN_MARKER_BITS = 64511 << 16; + MAX_ENCODABLE_INTEGER = Math.pow(2, 48) - 1; + BITS32 = Math.pow(2, 32); + STRINGIFIED_NUMBER_REGEX = new RegExp(STRINGIFIED_NUMBER_PATTERN); + } +}); + +// ../../aws-cdk-lib/core/lib/type-hints.ts +var init_type_hints = __esm({ + "../../aws-cdk-lib/core/lib/type-hints.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/core/lib/private/intrinsic.ts +function isFunction(x) { + return typeof x === "function"; +} +var Intrinsic; +var init_intrinsic = __esm({ + "../../aws-cdk-lib/core/lib/private/intrinsic.ts"() { + "use strict"; + init_errors(); + init_token(); + init_type_hints(); + init_literal_string(); + Intrinsic = class { + /** + * The captured stack trace which represents the location in which this token was created. + */ + creationStack; + /** + * Type that the Intrinsic is expected to evaluate to. + */ + typeHint; + value; + constructor(value, options = {}) { + if (isFunction(value)) { + throw new UnscopedValidationError(lit`MustBeArgumentIntrinsicPlain`, `Argument to Intrinsic must be a plain value object, got ${value}`); + } + this.value = value; + this.typeHint = options.typeHint ?? "string" /* STRING */; + } + resolve(_context) { + return this.value; + } + /** + * Convert an instance of this Token to a string + * + * This method will be called implicitly by language runtimes if the object + * is embedded into a string. We treat it the same as an explicit + * stringification. + */ + toString() { + return Token.asString(this); + } + /** + * Convert an instance of this Token to a string list + * + * This method will be called implicitly by language runtimes if the object + * is embedded into a list. We treat it the same as an explicit + * stringification. + */ + toStringList() { + return Token.asList(this); + } + /** + * Turn this Token into JSON + * + * Called automatically when JSON.stringify() is called on a Token. + */ + toJSON() { + return ""; + } + /** + * Creates a throwable Error object that contains the token creation stack trace. + * @param message Error message + */ + newError(message) { + return new Error(`${message} +Token created: + at ${this.creationStack.join("\n at ")} +Error thrown:`); + } + }; + Intrinsic.prototype.creationStack = ["Token stack traces are no longer captured"]; + } +}); + +// ../../aws-cdk-lib/core/lib/private/token-map.ts +function cachedValue(x, sym, prod) { + let cached = x[sym]; + if (cached === void 0) { + cached = prod(); + Object.defineProperty(x, sym, { value: cached }); + } + return cached; +} +var glob, STRING_SYMBOL, LIST_SYMBOL, NUMBER_SYMBOL, TokenMap; +var init_token_map = __esm({ + "../../aws-cdk-lib/core/lib/private/token-map.ts"() { + "use strict"; + init_encoding(); + init_errors(); + init_token(); + init_literal_string(); + glob = global; + STRING_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.STRING"); + LIST_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.LIST"); + NUMBER_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.NUMBER"); + TokenMap = class _TokenMap { + /** + * Singleton instance of the token string map + */ + static instance() { + if (!glob.__cdkTokenMap) { + glob.__cdkTokenMap = new _TokenMap(); + } + return glob.__cdkTokenMap; + } + stringTokenMap = /* @__PURE__ */ new Map(); + numberTokenMap = /* @__PURE__ */ new Map(); + /** + * Counter to assign unique IDs to tokens + * + * Start at a random number to prevent people from accidentally taking + * dependencies on token values between runs. + * + * This is most prominent in tests, where people will write: + * + * ```ts + * sha256(JSON.stringify({ ...some structure that can contain tokens ... })) + * ``` + * + * This should have been: + * + * ```ts + * sha256(JSON.stringify(stack.resolve({ ...some structure that can contain tokens ... }))) + * ``` + * + * The hash value is hard to inspect for correctness. It will LOOK consistent + * during testing, but will break as soon as someone stringifies another + * token before the run. + * + * By changing the starting number for tokens, we ensure that the hash is almost + * guaranteed to be different during a few test runs, so the hashing of unresolved + * tokens can be detected. + */ + tokenCounter = Math.floor(Math.random() * 10); + /** + * Generate a unique string for this Token, returning a key + * + * Every call for the same Token will produce a new unique string, no + * attempt is made to deduplicate. Token objects should cache the + * value themselves, if required. + * + * The token can choose (part of) its own representation string with a + * hint. This may be used to produce aesthetically pleasing and + * recognizable token representations for humans. + */ + registerString(token, displayHint) { + return cachedValue(token, STRING_SYMBOL, () => { + const key = this.registerStringKey(token, displayHint); + return `${BEGIN_STRING_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`; + }); + } + /** + * Generate a unique string for this Token, returning a key + */ + registerList(token, displayHint) { + return cachedValue(token, LIST_SYMBOL, () => { + const key = this.registerStringKey(token, displayHint); + return [`${BEGIN_LIST_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`]; + }); + } + /** + * Create a unique number representation for this Token and return it + */ + registerNumber(token) { + return cachedValue(token, NUMBER_SYMBOL, () => { + return this.registerNumberKey(token); + }); + } + /** + * Lookup a token from an encoded value + */ + tokenFromEncoding(x) { + if (isResolvableObject(x)) { + return x; + } + if (typeof x === "string") { + return this.lookupString(x); + } + if (Array.isArray(x)) { + return this.lookupList(x); + } + if (Token.isUnresolved(x)) { + return x; + } + return void 0; + } + /** + * Reverse a string representation into a Token object + */ + lookupString(s) { + const fragments = this.splitString(s); + if (fragments.tokens.length > 0 && fragments.length === 1) { + return fragments.firstToken; + } + return void 0; + } + /** + * Reverse a string representation into a Token object + */ + lookupList(xs) { + if (xs.length !== 1) { + return void 0; + } + const str = TokenString.forListToken(xs[0]); + const fragments = str.split(this.lookupToken.bind(this)); + if (fragments.length === 1) { + return fragments.firstToken; + } + return void 0; + } + /** + * Split a string into literals and Tokens + */ + splitString(s) { + const str = TokenString.forString(s); + return str.split(this.lookupToken.bind(this)); + } + /** + * Reverse a number encoding into a Token, or undefined if the number wasn't a Token + */ + lookupNumberToken(x) { + const tokenIndex = extractTokenDouble(x); + if (tokenIndex === void 0) { + return void 0; + } + const t = this.numberTokenMap.get(tokenIndex); + if (t === void 0) { + throw new UnscopedValidationError(lit`EncodedRepresentationUnknownNumber`, "Encoded representation of unknown number Token found"); + } + return t; + } + /** + * Find a Token by key. + * + * This excludes the token markers. + */ + lookupToken(key) { + const token = this.stringTokenMap.get(key); + if (!token) { + throw new UnscopedValidationError(lit`UnrecognizedTokenKey`, `Unrecognized token key: ${key}`); + } + return token; + } + registerStringKey(token, displayHint) { + const counter = this.tokenCounter++; + const representation = (displayHint || "TOKEN").replace(new RegExp(`[^${VALID_KEY_CHARS}]`, "g"), "."); + const key = `${representation}.${counter}`; + this.stringTokenMap.set(key, token); + return key; + } + registerNumberKey(token) { + const counter = this.tokenCounter++; + const dbl = createTokenDouble(counter); + this.numberTokenMap.set(counter, token); + this.stringTokenMap.set(`${dbl}`, token); + return dbl; + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/resolvable.ts +var StringConcat, DefaultTokenResolver; +var init_resolvable = __esm({ + "../../aws-cdk-lib/core/lib/resolvable.ts"() { + "use strict"; + init_errors(); + init_encoding(); + init_literal_string(); + init_token_map(); + StringConcat = class { + join(left, right) { + if (left === void 0) { + return right !== void 0 ? `${right}` : void 0; + } + if (right === void 0) { + return `${left}`; + } + return `${left}${right}`; + } + }; + DefaultTokenResolver = class { + constructor(concat) { + this.concat = concat; + } + concat; + /** + * Default Token resolution + * + * Resolve the Token, recurse into whatever it returns, + * then finally post-process it. + */ + resolveToken(t, context, postProcessor) { + try { + let resolved = t.resolve(context); + resolved = context.resolve(resolved); + resolved = postProcessor.postProcess(resolved, context); + return resolved; + } catch (e) { + let message = `Resolution error: ${e.message}.`; + e.message = message; + throw e; + } + } + /** + * Resolve string fragments to Tokens + */ + resolveString(fragments, context) { + return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).join(this.concat); + } + resolveList(xs, context) { + if (xs.length !== 1) { + throw new UnscopedValidationError(lit`CannotAddElementsListToken`, `Cannot add elements to list token, got: ${xs}`); + } + const str = TokenString.forListToken(xs[0]); + const tokenMap2 = TokenMap.instance(); + const fragments = str.split(tokenMap2.lookupToken.bind(tokenMap2)); + if (fragments.length !== 1) { + throw new UnscopedValidationError(lit`CannotConcatenateStringsTokenizedString`, `Cannot concatenate strings in a tokenized string array, got: ${xs[0]}`); + } + return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).firstValue; + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/private/resolve.ts +function couldContainToken(s) { + return s.includes(ANY_TOKEN_MARKER) || s.length >= MIN_NUMBER_TOKEN_LENGTH && s.includes("e+289"); +} +function hasListTokenMarker(s) { + return s.includes(BEGIN_LIST_TOKEN_MARKER); +} +function resolve(obj, options) { + const prefix = options.prefix || []; + const leaveEmpty = options.removeEmpty === false; + return _resolve(obj, options, prefix, leaveEmpty); +} +function _resolve(obj, options, prefix, leaveEmpty) { + const t = typeof obj; + if (t === "string") { + const hasTokenBracket = obj.includes("Token["); + if (!hasTokenBracket && !(obj.length >= MIN_NUMBER_TOKEN_LENGTH && obj.includes("e+289"))) { + return obj; + } + if (hasTokenBracket && obj.includes(BEGIN_LIST_TOKEN_MARKER)) { + if (TokenString.forListToken(obj).test()) { + throw new UnscopedValidationError(lit`EncodedListTokenInScalarContext`, "Found an encoded list token string in a scalar string context. Use 'Fn.select(0, list)' (not 'list[0]') to extract elements from token lists."); + } + } + const str = TokenString.forString(obj); + if (str.test()) { + const fragments = str.split(lookupToken); + return tagResolvedValue(options.resolver.resolveString(fragments, makeContext(options, prefix)), "string" /* STRING */); + } + return obj; + } + if (obj === void 0) { + return void 0; + } + if (obj === null) { + return null; + } + if (t === "number") { + if (obj > -1e287 && obj < 1e287) { + return obj; + } + return tagResolvedValue(resolveNumberToken(obj, makeContext(options, prefix)), "number" /* NUMBER */); + } + if (t === "boolean") { + return obj; + } + if (t === "function") { + throw new UnscopedValidationError(lit`TryingToResolveNonDataObject`, `Trying to resolve a non-data object. Only token are supported for lazy evaluation. Path: /${prefix.join("/")}. Object: ${obj}`); + } + if (obj instanceof Date) { + return obj; + } + if (prefix.length > 200) { + throw new UnscopedValidationError(lit`CircularReferenceDetected`, "Unable to resolve object tree with circular reference. Path: /" + prefix.join("/")); + } + if (Array.isArray(obj)) { + return resolveArray(obj, options, prefix, leaveEmpty); + } + if (t === "object" && obj.resolve !== void 0 && typeof obj.resolve === "function") { + const context = makeContext(options, prefix); + const postProcessor = makePostProcessor(context); + return tagResolvedValue(options.resolver.resolveToken(obj, context, postProcessor), "string" /* STRING */); + } + if (obj._children !== void 0 && obj._metadata !== void 0) { + throw new UnscopedValidationError(lit`TryingToResolveConstruct`, "Trying to resolve() a Construct at /" + prefix.join("/")); + } + return resolveObject(obj, options, prefix, leaveEmpty); +} +function resolveArray(obj, options, prefix, leaveEmpty) { + for (let i = 0; i < obj.length; i++) { + const x = obj[i]; + if (typeof x === "string" && hasListTokenMarker(x) && TokenString.forListToken(x).test()) { + return tagResolvedValue(options.resolver.resolveList(obj, makeContext(options, prefix)), "string-list" /* STRING_LIST */); + } + } + const len = obj.length; + const arr = []; + for (let i = 0; i < len; i++) { + prefix.push(String(i)); + const value = _resolve(obj[i], options, prefix, leaveEmpty); + prefix.pop(); + if (value === void 0 && !leaveEmpty) { + continue; + } + arr.push(value); + } + return arr; +} +function resolveObject(obj, options, prefix, leaveEmpty) { + const keys = Object.keys(obj); + const result = {}; + let intrinsicKeyCtr = 0; + for (let ki = 0; ki < keys.length; ki++) { + const key = keys[ki]; + const raw = obj[key]; + let value; + const rawType = typeof raw; + if (rawType === "string") { + value = couldContainToken(raw) ? _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) : raw; + } else if (raw === void 0) { + value = void 0; + } else if (raw === null) { + value = null; + } else if (rawType === "number") { + value = raw > -1e287 && raw < 1e287 ? raw : _resolveWithPrefix(raw, options, prefix, leaveEmpty, key); + } else if (rawType === "boolean") { + value = raw; + } else { + value = _resolveWithPrefix(raw, options, prefix, leaveEmpty, key); + } + if (value === void 0) { + if (leaveEmpty) { + result[key] = void 0; + } + continue; + } + if (key.length < 5 || !couldContainToken(key)) { + result[key] = value; + continue; + } + if (!unresolved(key)) { + result[key] = value; + continue; + } + const resolvedKey = makeContext(options, prefix).resolve(key); + if (typeof resolvedKey === "string") { + result[resolvedKey] = value; + } else { + if (!options.allowIntrinsicKeys) { + throw new UnscopedValidationError(lit`KeyMustResolveToString`, `"${String(key)}" is used as the key in a map so must resolve to a string, but it resolves to: ${JSON.stringify(resolvedKey)}. Consider using "CfnJson" to delay resolution to deployment-time`); + } + result[`${INTRINSIC_KEY_PREFIX}${intrinsicKeyCtr++}`] = [resolvedKey, value]; + } + } + const previousTypeHint = resolvedTypeHint(obj); + return previousTypeHint ? tagResolvedValue(result, previousTypeHint) : result; +} +function _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) { + prefix.push(key); + const value = _resolve(raw, options, prefix, leaveEmpty); + prefix.pop(); + return value; +} +function makeContext(options, prefix) { + const documentPath = prefix.slice(); + const context = { + preparing: options.preparing, + scope: options.scope, + documentPath, + registerPostProcessor(pp) { + context._postProcessor = pp; + }, + resolve(x, changeOptions) { + const newOptions = changeOptions ? { ...options, ...changeOptions, prefix: documentPath } : { ...options, prefix: documentPath }; + return resolve(x, newOptions); + } + }; + return context; +} +function makePostProcessor(context) { + return { + postProcess(x) { + const pp = context._postProcessor; + return pp ? pp.postProcess(x, context) : x; + } + }; +} +function findTokens(scope, fn) { + const resolver = new RememberingTokenResolver(new StringConcat()); + resolve(fn(), { scope, prefix: [], resolver, preparing: true }); + return resolver.tokens; +} +function writePropertyAssignmentMetadataForConstruct(scope, fn, lookupTable) { + const resolver = new PropertyAssignmentMetadataWriter(new StringConcat(), lookupTable); + resolve(fn(), { scope, prefix: [], resolver, preparing: true }); +} +function resolveNumberToken(x, context) { + const token = tokenMap.lookupNumberToken(x); + if (token === void 0) { + return x; + } + return context.resolve(token); +} +function tagResolvedValue(value, typeHint) { + if (typeof value !== "object" || value == null) { + return value; + } + Object.defineProperty(value, RESOLUTION_TYPEHINT_SYM, { + value: typeHint, + configurable: true + }); + return value; +} +function resolvedTypeHint(value) { + if (typeof value !== "object" || value == null) { + return void 0; + } + return value[RESOLUTION_TYPEHINT_SYM]; +} +var tokenMap, lookupToken, MIN_NUMBER_TOKEN_LENGTH, RESOLUTION_TYPEHINT_SYM, INTRINSIC_KEY_PREFIX, PropertyAssignmentMetadataWriter, RememberingTokenResolver; +var init_resolve = __esm({ + "../../aws-cdk-lib/core/lib/private/resolve.ts"() { + "use strict"; + init_encoding(); + init_token_map(); + init_errors(); + init_resolvable(); + init_type_hints(); + init_literal_string(); + init_box(); + tokenMap = TokenMap.instance(); + lookupToken = tokenMap.lookupToken.bind(tokenMap); + MIN_NUMBER_TOKEN_LENGTH = 16; + RESOLUTION_TYPEHINT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.resolvedTypeHint"); + INTRINSIC_KEY_PREFIX = "$IntrinsicKey$"; + PropertyAssignmentMetadataWriter = class extends DefaultTokenResolver { + lookupTable; + seenDocumentPaths = /* @__PURE__ */ new Set(); + constructor(concat, lookupTable) { + super(concat); + this.lookupTable = lookupTable; + } + resolveToken(t, context, postProcessor) { + const result = super.resolveToken(t, context, postProcessor); + const lookupTable = this.lookupTable; + function propertyNameFromContext(ctx) { + const documentPath = ctx.documentPath; + if (documentPath.length < 4 || documentPath[0] !== "Resources" || documentPath[2] !== "Properties") { + return void 0; + } + return lookupTable.cfnPropertyName(documentPath[3]); + } + const propertyName = propertyNameFromContext(context); + const documentPathKey = context.documentPath.join("/"); + if (Box.isBox(t) && propertyName && !this.seenDocumentPaths.has(documentPathKey)) { + for (let stackTrace of t.getStackTraces()) { + context.scope.node.addMetadata("aws:cdk:propertyAssignment", { + propertyName, + stackTrace + }); + this.seenDocumentPaths.add(documentPathKey); + } + } + return result; + } + }; + RememberingTokenResolver = class extends DefaultTokenResolver { + tokensSeen = /* @__PURE__ */ new Set(); + resolveToken(t, context, postProcessor) { + this.tokensSeen.add(t); + return super.resolveToken(t, context, postProcessor); + } + resolveString(s, context) { + const ret = super.resolveString(s, context); + return ret; + } + get tokens() { + return Array.from(this.tokensSeen); + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/token.ts +function isResolvableObject(x) { + return typeof x === "object" && x !== null && typeof x.resolve === "function"; +} +var TokenComparison, Token, Tokenization, JsonNull; +var init_token = __esm({ + "../../aws-cdk-lib/core/lib/token.ts"() { + "use strict"; + init_errors(); + init_lazy(); + init_encoding(); + init_intrinsic(); + init_literal_string(); + init_resolve(); + init_token_map(); + TokenComparison = class _TokenComparison { + /** + * This means we're certain the two components are NOT + * Tokens, and identical. + */ + static SAME = new _TokenComparison(); + /** + * This means we're certain the two components are NOT + * Tokens, and different. + */ + static DIFFERENT = new _TokenComparison(); + /** This means exactly one of the components is a Token. */ + static ONE_UNRESOLVED = new _TokenComparison(); + /** This means both components are Tokens. */ + static BOTH_UNRESOLVED = new _TokenComparison(); + constructor() { + } + }; + Token = class _Token { + /** + * Returns true if obj represents an unresolved value + * + * One of these must be true: + * + * - `obj` is an IResolvable + * - `obj` is a string containing at least one encoded `IResolvable` + * - `obj` is either an encoded number or list + * + * This does NOT recurse into lists or objects to see if they + * contain resolvables. + * + * @param obj The object to test. + */ + static isUnresolved(obj) { + return unresolved(obj); + } + /** + * The negation of `Token.isUnresolved()`. In TypeScript, narrows the type + * to exclude `IResolvable`. + * @param obj The object to test. + */ + static isResolved(obj) { + return !_Token.isUnresolved(obj); + } + /** + * Return a reversible string representation of this token + * + * If the Token is initialized with a literal, the stringified value of the + * literal is returned. Otherwise, a special quoted string representation + * of the Token is returned that can be embedded into other strings. + * + * Strings with quoted Tokens in them can be restored back into + * complex values with the Tokens restored by calling `resolve()` + * on the string. + */ + static asString(value, options = {}) { + if (typeof value === "string") { + return value; + } + return TokenMap.instance().registerString(_Token.asAny(value), options.displayHint); + } + /** + * Return a reversible number representation of this token + */ + static asNumber(value) { + if (typeof value === "number") { + return value; + } + return TokenMap.instance().registerNumber(_Token.asAny(value)); + } + /** + * Return a reversible list representation of this token + */ + static asList(value, options = {}) { + if (Array.isArray(value) && value.every((x) => typeof x === "string")) { + return value; + } + return TokenMap.instance().registerList(_Token.asAny(value), options.displayHint); + } + /** + * Return a resolvable representation of the given value + */ + static asAny(value) { + value = Tokenization.reverse(value) ?? value; + return isResolvableObject(value) ? value : new Intrinsic(value); + } + /** Compare two strings that might contain Tokens with each other. */ + static compareStrings(possibleToken1, possibleToken2) { + const firstIsUnresolved = _Token.isUnresolved(possibleToken1); + const secondIsUnresolved = _Token.isUnresolved(possibleToken2); + if (firstIsUnresolved && secondIsUnresolved) { + return TokenComparison.BOTH_UNRESOLVED; + } + if (firstIsUnresolved || secondIsUnresolved) { + return TokenComparison.ONE_UNRESOLVED; + } + return possibleToken1 === possibleToken2 ? TokenComparison.SAME : TokenComparison.DIFFERENT; + } + constructor() { + } + }; + Tokenization = class _Tokenization { + /** + * Un-encode a string potentially containing encoded tokens + */ + static reverseString(s) { + return TokenMap.instance().splitString(s); + } + /** + * Un-encode a string which is either a complete encoded token, or doesn't contain tokens at all + * + * It's illegal for the string to be a concatenation of an encoded token and something else. + */ + static reverseCompleteString(s) { + const fragments = _Tokenization.reverseString(s); + if (fragments.length !== 1) { + throw new UnscopedValidationError(lit`TokenzationReverseCompleteStringArgument`, `Tokenzation.reverseCompleteString: argument must not be a concatenation, got '${s}'`); + } + return fragments.firstToken; + } + /** + * Un-encode a Tokenized value from a number + */ + static reverseNumber(n) { + return TokenMap.instance().lookupNumberToken(n); + } + /** + * Un-encode a Tokenized value from a list + */ + static reverseList(l) { + return TokenMap.instance().lookupList(l); + } + /** + * Reverse any value into a Resolvable, if possible + * + * In case of a string, the string must not be a concatenation. + */ + static reverse(x, options = {}) { + if (_Tokenization.isResolvable(x)) { + return x; + } + if (typeof x === "string") { + if (options.failConcat === false) { + const fragments = _Tokenization.reverseString(x); + return fragments.length === 1 ? fragments.firstToken : void 0; + } + return _Tokenization.reverseCompleteString(x); + } + if (Array.isArray(x)) { + return _Tokenization.reverseList(x); + } + if (typeof x === "number") { + return _Tokenization.reverseNumber(x); + } + return void 0; + } + /** + * Resolves an object by evaluating all tokens and removing any undefined or empty objects or arrays. + * Values can only be primitives, arrays or tokens. Other objects (i.e. with methods) will be rejected. + * + * @param obj The object to resolve. + * @param options Prefix key path components for diagnostics. + */ + static resolve(obj, options) { + return resolve(obj, { + scope: options.scope, + resolver: options.resolver, + preparing: options.preparing ?? false, + removeEmpty: options.removeEmpty + }); + } + /** + * Return whether the given object is an IResolvable object + * + * This is different from Token.isUnresolved() which will also check for + * encoded Tokens, whereas this method will only do a type check on the given + * object. + */ + static isResolvable(obj) { + return isResolvableObject(obj); + } + /** + * Stringify a number directly or lazily if it's a Token. If it is an object (i.e., { Ref: 'SomeLogicalId' }), return it as-is. + */ + static stringifyNumber(x) { + if (Token.isUnresolved(x)) { + return Lazy.uncachedString({ + produce: (context) => { + const resolved = context.resolve(x); + return typeof resolved !== "number" ? resolved : `${resolved}`; + } + }); + } else { + return typeof x !== "number" ? x : `${x}`; + } + } + constructor() { + } + }; + JsonNull = class _JsonNull { + /** The canonical instance of `JsonNull`. */ + static INSTANCE = new _JsonNull(); + creationStack = ["Token stack traces are no longer captured"]; + constructor() { + } + resolve(_ctx) { + return null; + } + /** Obtains the JSON representation of this object (`null`) */ + toJSON() { + return null; + } + /** Obtains the string representation of this object (`'null'`) */ + toString() { + return "null"; + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/lazy.ts +var Lazy, LazyBase, LazyBox, LazyString, LazyNumber, LazyList, LazyAny; +var init_lazy = __esm({ + "../../aws-cdk-lib/core/lib/lazy.ts"() { + "use strict"; + init_box(); + init_token(); + Lazy = class { + /** + * Defer the calculation of a string value to synthesis time + * + * Use this if you want to render a string to a template whose actual value depends on + * some state mutation that may happen after the construct has been created. + * + * If you are simply looking to force a value to a `string` type and don't need + * the calculation to be deferred, use `Token.asString()` instead. + * + * @deprecated Use `Lazy.string()` or `Lazy.uncachedString()` instead. + */ + static stringValue(producer, options = {}) { + return Token.asString(new LazyString(producer, false), options); + } + /** + * Defer the one-time calculation of a string value to synthesis time + * + * Use this if you want to render a string to a template whose actual value depends on + * some state mutation that may happen after the construct has been created. + * + * If you are simply looking to force a value to a `string` type and don't need + * the calculation to be deferred, use `Token.asString()` instead. + * + * The inner function will only be invoked once, and the resolved value + * cannot depend on the Stack the Token is used in. + */ + static string(producer, options = {}) { + return Token.asString(new LazyBox(new LazyString(producer, true)), options); + } + /** + * Defer the calculation of a string value to synthesis time + * + * Use of this function is not recommended; unless you know you need it for sure, you + * probably don't. Use `Lazy.string()` instead. + * + * The inner function may be invoked multiple times during synthesis. You + * should only use this method if the returned value depends on variables + * that may change during the Aspect application phase of synthesis, or if + * the value depends on the Stack the value is being used in. Both of these + * cases are rare, and only ever occur for AWS Construct Library authors. + */ + static uncachedString(producer, options = {}) { + return Token.asString(new LazyString(producer, false), options); + } + /** + * Defer the one-time calculation of a number value to synthesis time + * + * Use this if you want to render a number to a template whose actual value depends on + * some state mutation that may happen after the construct has been created. + * + * If you are simply looking to force a value to a `number` type and don't need + * the calculation to be deferred, use `Token.asNumber()` instead. + * + * @deprecated Use `Lazy.number()` or `Lazy.uncachedNumber()` instead. + */ + static numberValue(producer) { + return Token.asNumber(new LazyNumber(producer, false)); + } + /** + * Defer the one-time calculation of a number value to synthesis time + * + * Use this if you want to render a number to a template whose actual value depends on + * some state mutation that may happen after the construct has been created. + * + * If you are simply looking to force a value to a `number` type and don't need + * the calculation to be deferred, use `Token.asNumber()` instead. + * + * The inner function will only be invoked once, and the resolved value + * cannot depend on the Stack the Token is used in. + */ + static number(producer) { + return Token.asNumber(new LazyBox(new LazyNumber(producer, true))); + } + /** + * Defer the calculation of a number value to synthesis time + * + * Use of this function is not recommended; unless you know you need it for sure, you + * probably don't. Use `Lazy.number()` instead. + * + * The inner function may be invoked multiple times during synthesis. You + * should only use this method if the returned value depends on variables + * that may change during the Aspect application phase of synthesis, or if + * the value depends on the Stack the value is being used in. Both of these + * cases are rare, and only ever occur for AWS Construct Library authors. + */ + static uncachedNumber(producer) { + return Token.asNumber(new LazyNumber(producer, false)); + } + /** + * Defer the one-time calculation of a list value to synthesis time + * + * Use this if you want to render a list to a template whose actual value depends on + * some state mutation that may happen after the construct has been created. + * + * If you are simply looking to force a value to a `string[]` type and don't need + * the calculation to be deferred, use `Token.asList()` instead. + * + * @deprecated Use `Lazy.list()` or `Lazy.uncachedList()` instead. + */ + static listValue(producer, options = {}) { + return Token.asList(new LazyList(producer, false, options), options); + } + /** + * Defer the calculation of a list value to synthesis time + * + * Use of this function is not recommended; unless you know you need it for sure, you + * probably don't. Use `Lazy.list()` instead. + * + * The inner function may be invoked multiple times during synthesis. You + * should only use this method if the returned value depends on variables + * that may change during the Aspect application phase of synthesis, or if + * the value depends on the Stack the value is being used in. Both of these + * cases are rare, and only ever occur for AWS Construct Library authors. + */ + static uncachedList(producer, options = {}) { + return Token.asList(new LazyList(producer, false, options), options); + } + /** + * Defer the one-time calculation of a list value to synthesis time + * + * Use this if you want to render a list to a template whose actual value depends on + * some state mutation that may happen after the construct has been created. + * + * If you are simply looking to force a value to a `string[]` type and don't need + * the calculation to be deferred, use `Token.asList()` instead. + * + * The inner function will only be invoked once, and the resolved value + * cannot depend on the Stack the Token is used in. + */ + static list(producer, options = {}) { + return Token.asList(new LazyBox(new LazyList(producer, true, options)), options); + } + /** + * Defer the one-time calculation of an arbitrarily typed value to synthesis time + * + * Use this if you want to render an object to a template whose actual value depends on + * some state mutation that may happen after the construct has been created. + * + * @deprecated Use `Lazy.any()` or `Lazy.uncachedAny()` instead. + */ + static anyValue(producer, options = {}) { + return new LazyAny(producer, false, options); + } + /** + * Defer the one-time calculation of an arbitrarily typed value to synthesis time + * + * Use this if you want to render an object to a template whose actual value depends on + * some state mutation that may happen after the construct has been created. + * + * The inner function will only be invoked one time and cannot depend on + * resolution context. + */ + static any(producer, options = {}) { + return new LazyBox(new LazyAny(producer, true, options)); + } + /** + * Defer the calculation of an untyped value to synthesis time + * + * Use of this function is not recommended; unless you know you need it for sure, you + * probably don't. Use `Lazy.any()` instead. + * + * The inner function may be invoked multiple times during synthesis. You + * should only use this method if the returned value depends on variables + * that may change during the Aspect application phase of synthesis, or if + * the value depends on the Stack the value is being used in. Both of these + * cases are rare, and only ever occur for AWS Construct Library authors. + */ + static uncachedAny(producer, options = {}) { + return new LazyAny(producer, false, options); + } + constructor() { + } + }; + LazyBase = class { + constructor(producer, cache) { + this.producer = producer; + this.cache = cache; + } + producer; + cache; + creationStack; + _cached; + resolve(context) { + if (this.cache) { + return this._cached ?? (this._cached = this.producer.produce(context)); + } else { + return this.producer.produce(context); + } + } + toString() { + return Token.asString(this); + } + /** + * Turn this Token into JSON + * + * Called automatically when JSON.stringify() is called on a Token. + */ + toJSON() { + return ""; + } + }; + LazyBase.prototype.creationStack = ["Token stack traces are no longer captured"]; + LazyBox = class extends ReadonlyState { + inner; + constructor(inner) { + super(void 0); + this.inner = inner; + } + get() { + return this.inner.resolve(void 0); + } + toString() { + return Token.asString(this); + } + toJSON() { + return ""; + } + }; + LazyString = class extends LazyBase { + }; + LazyNumber = class extends LazyBase { + }; + LazyList = class extends LazyBase { + constructor(producer, cache, options = {}) { + super(producer, cache); + this.options = options; + } + options; + resolve(context) { + const resolved = super.resolve(context); + if (resolved?.length === 0 && this.options.omitEmpty) { + return void 0; + } + return resolved; + } + }; + LazyAny = class extends LazyBase { + constructor(producer, cache, options = {}) { + super(producer, cache); + this.options = options; + } + options; + resolve(context) { + const resolved = super.resolve(context); + if (Array.isArray(resolved) && resolved.length === 0 && this.options.omitEmptyArray) { + return void 0; + } + return resolved; + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/reference.ts +var REFERENCE_SYMBOL, Reference; +var init_reference = __esm({ + "../../aws-cdk-lib/core/lib/reference.ts"() { + "use strict"; + init_intrinsic(); + REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Reference"); + Reference = class extends Intrinsic { + /** + * Check whether this is actually a Reference + */ + static isReference(x) { + return typeof x === "object" && x !== null && REFERENCE_SYMBOL in x; + } + target; + displayName; + constructor(value, target, displayName, typeHint) { + super(value, { typeHint }); + Object.defineProperty(this, REFERENCE_SYMBOL, { value: true }); + this.target = target; + this.displayName = displayName || "Reference"; + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/private/cfn-reference.ts +var CFN_REFERENCE_SYMBOL, CfnReference; +var init_cfn_reference = __esm({ + "../../aws-cdk-lib/core/lib/private/cfn-reference.ts"() { + "use strict"; + init_reference(); + init_token(); + init_errors(); + init_literal_string(); + init_core_construct_finders(); + CFN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnReference"); + CfnReference = class _CfnReference extends Reference { + constructor(value, displayName, target, typeHint) { + super(value, target, displayName, typeHint); + this.target = target; + this.replacementTokens = /* @__PURE__ */ new Map(); + this.targetStack = stackOf(target); + Object.defineProperty(this, CFN_REFERENCE_SYMBOL, { value: true }); + } + target; + /** + * Check whether this is actually a Reference + */ + static isCfnReference(x) { + return CFN_REFERENCE_SYMBOL in x; + } + /** + * Return the CfnReference for the indicated target + * + * Will make sure that multiple invocations for the same target and intrinsic + * return the same CfnReference. Because CfnReferences accumulate state in + * the prepare() phase (for the purpose of cross-stack references), it's + * important that the state isn't lost if it's lazily created, like so: + * + * Lazy.string({ produce: () => new CfnReference(...) }) + * + */ + static for(target, attribute, refRender, typeHint) { + return _CfnReference.singletonReference(target, attribute, refRender, () => { + const cfnIntrinsic = refRender === 0 /* FN_SUB */ ? "${" + target.logicalId + (attribute === "Ref" ? "" : `.${attribute}`) + "}" : attribute === "Ref" ? { Ref: target.logicalId } : { + "Fn::GetAtt": refRender === 1 /* GET_ATT_STRING */ ? `${target.logicalId}.${attribute}` : [target.logicalId, attribute] + }; + return new _CfnReference(cfnIntrinsic, attribute, target, typeHint); + }); + } + /** + * Return a CfnReference that references a pseudo referenced + */ + static forPseudo(pseudoName, scope) { + return _CfnReference.singletonReference(scope, `Pseudo:${pseudoName}`, void 0, () => { + const cfnIntrinsic = { Ref: pseudoName }; + return new _CfnReference(cfnIntrinsic, pseudoName, scope); + }); + } + /** + * Static table where we keep singleton CfnReference instances + */ + static referenceTable = /* @__PURE__ */ new Map(); + /** + * Get or create the table. + * Passing fnSub = true allows cloudformation-include to correctly handle Fn::Sub. + */ + static singletonReference(target, attribKey, refRender, fresh) { + let attribs = _CfnReference.referenceTable.get(target); + if (!attribs) { + attribs = /* @__PURE__ */ new Map(); + _CfnReference.referenceTable.set(target, attribs); + } + let cacheKey = attribKey; + switch (refRender) { + case 0 /* FN_SUB */: + cacheKey += "Fn::Sub"; + break; + case 1 /* GET_ATT_STRING */: + cacheKey += "Fn::GetAtt::String"; + break; + } + let ref = attribs.get(cacheKey); + if (!ref) { + ref = fresh(); + attribs.set(cacheKey, ref); + } + return ref; + } + /** + * The Tokens that should be returned for each consuming stack (as decided by the producing Stack) + */ + replacementTokens; + targetStack; + resolve(context) { + const consumingStack = stackOf(context.scope); + const token = this.replacementTokens.get(consumingStack); + if (token) { + return token.resolve(context); + } else { + return super.resolve(context); + } + } + hasValueForStack(stack) { + if (stack === this.targetStack) { + return true; + } + return this.replacementTokens.has(stack); + } + assignValueForStack(stack, value) { + if (stack === this.targetStack) { + throw new UnscopedValidationError(lit`CannotAssignValueStack`, "cannot assign a value for the same stack"); + } + if (this.hasValueForStack(stack)) { + throw new UnscopedValidationError(lit`CannotAssignReferenceValueTwice`, "Cannot assign a reference value twice to the same stack. Use hasValueForStack to check first"); + } + this.replacementTokens.set(stack, value); + } + /** + * Implementation of toString() that will use the display name + */ + toString() { + return Token.asString(this, { + displayHint: `${this.target.node.id}.${this.displayName}` + }); + } + }; + } +}); + +// ../../aws-cdk-lib/node_modules/universalify/index.js +var require_universalify = __commonJS({ + "../../aws-cdk-lib/node_modules/universalify/index.js"(exports2) { + "use strict"; + exports2.fromCallback = function(fn) { + return Object.defineProperty(function(...args) { + if (typeof args[args.length - 1] === "function") fn.apply(this, args); + else { + return new Promise((resolve6, reject) => { + args.push((err, res) => err != null ? reject(err) : resolve6(res)); + fn.apply(this, args); + }); + } + }, "name", { value: fn.name }); + }; + exports2.fromPromise = function(fn) { + return Object.defineProperty(function(...args) { + const cb = args[args.length - 1]; + if (typeof cb !== "function") return fn.apply(this, args); + else { + args.pop(); + fn.apply(this, args).then((r) => cb(null, r), cb); + } + }, "name", { value: fn.name }); + }; + } +}); + +// ../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js +var require_polyfills = __commonJS({ + "../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js"(exports2, module2) { + var constants2 = require("constants"); + var origCwd = process.cwd; + var cwd = null; + var platform = process.env.GRACEFUL_FS_PLATFORM || process.platform; + process.cwd = function() { + if (!cwd) + cwd = origCwd.call(process); + return cwd; + }; + try { + process.cwd(); + } catch (er) { + } + if (typeof process.chdir === "function") { + chdir = process.chdir; + process.chdir = function(d) { + cwd = null; + chdir.call(process, d); + }; + if (Object.setPrototypeOf) Object.setPrototypeOf(process.chdir, chdir); + } + var chdir; + module2.exports = patch; + function patch(fs19) { + if (constants2.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) { + patchLchmod(fs19); + } + if (!fs19.lutimes) { + patchLutimes(fs19); + } + fs19.chown = chownFix(fs19.chown); + fs19.fchown = chownFix(fs19.fchown); + fs19.lchown = chownFix(fs19.lchown); + fs19.chmod = chmodFix(fs19.chmod); + fs19.fchmod = chmodFix(fs19.fchmod); + fs19.lchmod = chmodFix(fs19.lchmod); + fs19.chownSync = chownFixSync(fs19.chownSync); + fs19.fchownSync = chownFixSync(fs19.fchownSync); + fs19.lchownSync = chownFixSync(fs19.lchownSync); + fs19.chmodSync = chmodFixSync(fs19.chmodSync); + fs19.fchmodSync = chmodFixSync(fs19.fchmodSync); + fs19.lchmodSync = chmodFixSync(fs19.lchmodSync); + fs19.stat = statFix(fs19.stat); + fs19.fstat = statFix(fs19.fstat); + fs19.lstat = statFix(fs19.lstat); + fs19.statSync = statFixSync(fs19.statSync); + fs19.fstatSync = statFixSync(fs19.fstatSync); + fs19.lstatSync = statFixSync(fs19.lstatSync); + if (fs19.chmod && !fs19.lchmod) { + fs19.lchmod = function(path23, mode, cb) { + if (cb) process.nextTick(cb); + }; + fs19.lchmodSync = function() { + }; + } + if (fs19.chown && !fs19.lchown) { + fs19.lchown = function(path23, uid, gid, cb) { + if (cb) process.nextTick(cb); + }; + fs19.lchownSync = function() { + }; + } + if (platform === "win32") { + fs19.rename = typeof fs19.rename !== "function" ? fs19.rename : (function(fs$rename) { + function rename(from, to, cb) { + var start = Date.now(); + var backoff = 0; + fs$rename(from, to, function CB(er) { + if (er && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") && Date.now() - start < 6e4) { + setTimeout(function() { + fs19.stat(to, function(stater, st) { + if (stater && stater.code === "ENOENT") + fs$rename(from, to, CB); + else + cb(er); + }); + }, backoff); + if (backoff < 100) + backoff += 10; + return; + } + if (cb) cb(er); + }); + } + if (Object.setPrototypeOf) Object.setPrototypeOf(rename, fs$rename); + return rename; + })(fs19.rename); + } + fs19.read = typeof fs19.read !== "function" ? fs19.read : (function(fs$read) { + function read(fd, buffer, offset, length, position, callback_) { + var callback; + if (callback_ && typeof callback_ === "function") { + var eagCounter = 0; + callback = function(er, _, __) { + if (er && er.code === "EAGAIN" && eagCounter < 10) { + eagCounter++; + return fs$read.call(fs19, fd, buffer, offset, length, position, callback); + } + callback_.apply(this, arguments); + }; + } + return fs$read.call(fs19, fd, buffer, offset, length, position, callback); + } + if (Object.setPrototypeOf) Object.setPrototypeOf(read, fs$read); + return read; + })(fs19.read); + fs19.readSync = typeof fs19.readSync !== "function" ? fs19.readSync : /* @__PURE__ */ (function(fs$readSync) { + return function(fd, buffer, offset, length, position) { + var eagCounter = 0; + while (true) { + try { + return fs$readSync.call(fs19, fd, buffer, offset, length, position); + } catch (er) { + if (er.code === "EAGAIN" && eagCounter < 10) { + eagCounter++; + continue; + } + throw er; + } + } + }; + })(fs19.readSync); + function patchLchmod(fs20) { + fs20.lchmod = function(path23, mode, callback) { + fs20.open( + path23, + constants2.O_WRONLY | constants2.O_SYMLINK, + mode, + function(err, fd) { + if (err) { + if (callback) callback(err); + return; + } + fs20.fchmod(fd, mode, function(err2) { + fs20.close(fd, function(err22) { + if (callback) callback(err2 || err22); + }); + }); + } + ); + }; + fs20.lchmodSync = function(path23, mode) { + var fd = fs20.openSync(path23, constants2.O_WRONLY | constants2.O_SYMLINK, mode); + var threw = true; + var ret; + try { + ret = fs20.fchmodSync(fd, mode); + threw = false; + } finally { + if (threw) { + try { + fs20.closeSync(fd); + } catch (er) { + } + } else { + fs20.closeSync(fd); + } + } + return ret; + }; + } + function patchLutimes(fs20) { + if (constants2.hasOwnProperty("O_SYMLINK") && fs20.futimes) { + fs20.lutimes = function(path23, at, mt, cb) { + fs20.open(path23, constants2.O_SYMLINK, function(er, fd) { + if (er) { + if (cb) cb(er); + return; + } + fs20.futimes(fd, at, mt, function(er2) { + fs20.close(fd, function(er22) { + if (cb) cb(er2 || er22); + }); + }); + }); + }; + fs20.lutimesSync = function(path23, at, mt) { + var fd = fs20.openSync(path23, constants2.O_SYMLINK); + var ret; + var threw = true; + try { + ret = fs20.futimesSync(fd, at, mt); + threw = false; + } finally { + if (threw) { + try { + fs20.closeSync(fd); + } catch (er) { + } + } else { + fs20.closeSync(fd); + } + } + return ret; + }; + } else if (fs20.futimes) { + fs20.lutimes = function(_a7, _b, _c, cb) { + if (cb) process.nextTick(cb); + }; + fs20.lutimesSync = function() { + }; + } + } + function chmodFix(orig) { + if (!orig) return orig; + return function(target, mode, cb) { + return orig.call(fs19, target, mode, function(er) { + if (chownErOk(er)) er = null; + if (cb) cb.apply(this, arguments); + }); + }; + } + function chmodFixSync(orig) { + if (!orig) return orig; + return function(target, mode) { + try { + return orig.call(fs19, target, mode); + } catch (er) { + if (!chownErOk(er)) throw er; + } + }; + } + function chownFix(orig) { + if (!orig) return orig; + return function(target, uid, gid, cb) { + return orig.call(fs19, target, uid, gid, function(er) { + if (chownErOk(er)) er = null; + if (cb) cb.apply(this, arguments); + }); + }; + } + function chownFixSync(orig) { + if (!orig) return orig; + return function(target, uid, gid) { + try { + return orig.call(fs19, target, uid, gid); + } catch (er) { + if (!chownErOk(er)) throw er; + } + }; + } + function statFix(orig) { + if (!orig) return orig; + return function(target, options, cb) { + if (typeof options === "function") { + cb = options; + options = null; + } + function callback(er, stats) { + if (stats) { + if (stats.uid < 0) stats.uid += 4294967296; + if (stats.gid < 0) stats.gid += 4294967296; + } + if (cb) cb.apply(this, arguments); + } + return options ? orig.call(fs19, target, options, callback) : orig.call(fs19, target, callback); + }; + } + function statFixSync(orig) { + if (!orig) return orig; + return function(target, options) { + var stats = options ? orig.call(fs19, target, options) : orig.call(fs19, target); + if (stats) { + if (stats.uid < 0) stats.uid += 4294967296; + if (stats.gid < 0) stats.gid += 4294967296; + } + return stats; + }; + } + function chownErOk(er) { + if (!er) + return true; + if (er.code === "ENOSYS") + return true; + var nonroot = !process.getuid || process.getuid() !== 0; + if (nonroot) { + if (er.code === "EINVAL" || er.code === "EPERM") + return true; + } + return false; + } + } + } +}); + +// ../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js +var require_legacy_streams = __commonJS({ + "../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) { + var Stream = require("stream").Stream; + module2.exports = legacy; + function legacy(fs19) { + return { + ReadStream, + WriteStream + }; + function ReadStream(path23, options) { + if (!(this instanceof ReadStream)) return new ReadStream(path23, options); + Stream.call(this); + var self2 = this; + this.path = path23; + this.fd = null; + this.readable = true; + this.paused = false; + this.flags = "r"; + this.mode = 438; + this.bufferSize = 64 * 1024; + options = options || {}; + var keys = Object.keys(options); + for (var index = 0, length = keys.length; index < length; index++) { + var key = keys[index]; + this[key] = options[key]; + } + if (this.encoding) this.setEncoding(this.encoding); + if (this.start !== void 0) { + if ("number" !== typeof this.start) { + throw TypeError("start must be a Number"); + } + if (this.end === void 0) { + this.end = Infinity; + } else if ("number" !== typeof this.end) { + throw TypeError("end must be a Number"); + } + if (this.start > this.end) { + throw new Error("start must be <= end"); + } + this.pos = this.start; + } + if (this.fd !== null) { + process.nextTick(function() { + self2._read(); + }); + return; + } + fs19.open(this.path, this.flags, this.mode, function(err, fd) { + if (err) { + self2.emit("error", err); + self2.readable = false; + return; + } + self2.fd = fd; + self2.emit("open", fd); + self2._read(); + }); + } + function WriteStream(path23, options) { + if (!(this instanceof WriteStream)) return new WriteStream(path23, options); + Stream.call(this); + this.path = path23; + this.fd = null; + this.writable = true; + this.flags = "w"; + this.encoding = "binary"; + this.mode = 438; + this.bytesWritten = 0; + options = options || {}; + var keys = Object.keys(options); + for (var index = 0, length = keys.length; index < length; index++) { + var key = keys[index]; + this[key] = options[key]; + } + if (this.start !== void 0) { + if ("number" !== typeof this.start) { + throw TypeError("start must be a Number"); + } + if (this.start < 0) { + throw new Error("start must be >= zero"); + } + this.pos = this.start; + } + this.busy = false; + this._queue = []; + if (this.fd === null) { + this._open = fs19.open; + this._queue.push([this._open, this.path, this.flags, this.mode, void 0]); + this.flush(); + } + } + } + } +}); + +// ../../aws-cdk-lib/node_modules/graceful-fs/clone.js +var require_clone = __commonJS({ + "../../aws-cdk-lib/node_modules/graceful-fs/clone.js"(exports2, module2) { + "use strict"; + module2.exports = clone; + var getPrototypeOf = Object.getPrototypeOf || function(obj) { + return obj.__proto__; + }; + function clone(obj) { + if (obj === null || typeof obj !== "object") + return obj; + if (obj instanceof Object) + var copy = { __proto__: getPrototypeOf(obj) }; + else + var copy = /* @__PURE__ */ Object.create(null); + Object.getOwnPropertyNames(obj).forEach(function(key) { + Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key)); + }); + return copy; + } + } +}); + +// ../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js +var require_graceful_fs = __commonJS({ + "../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) { + var fs19 = require("fs"); + var polyfills = require_polyfills(); + var legacy = require_legacy_streams(); + var clone = require_clone(); + var util = require("util"); + var gracefulQueue; + var previousSymbol; + if (typeof Symbol === "function" && typeof Symbol.for === "function") { + gracefulQueue = /* @__PURE__ */ Symbol.for("graceful-fs.queue"); + previousSymbol = /* @__PURE__ */ Symbol.for("graceful-fs.previous"); + } else { + gracefulQueue = "___graceful-fs.queue"; + previousSymbol = "___graceful-fs.previous"; + } + function noop() { + } + function publishQueue(context, queue2) { + Object.defineProperty(context, gracefulQueue, { + get: function() { + return queue2; + } + }); + } + var debug = noop; + if (util.debuglog) + debug = util.debuglog("gfs4"); + else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) + debug = function() { + var m = util.format.apply(util, arguments); + m = "GFS4: " + m.split(/\n/).join("\nGFS4: "); + console.error(m); + }; + if (!fs19[gracefulQueue]) { + queue = global[gracefulQueue] || []; + publishQueue(fs19, queue); + fs19.close = (function(fs$close) { + function close(fd, cb) { + return fs$close.call(fs19, fd, function(err) { + if (!err) { + resetQueue(); + } + if (typeof cb === "function") + cb.apply(this, arguments); + }); + } + Object.defineProperty(close, previousSymbol, { + value: fs$close + }); + return close; + })(fs19.close); + fs19.closeSync = (function(fs$closeSync) { + function closeSync3(fd) { + fs$closeSync.apply(fs19, arguments); + resetQueue(); + } + Object.defineProperty(closeSync3, previousSymbol, { + value: fs$closeSync + }); + return closeSync3; + })(fs19.closeSync); + if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) { + process.on("exit", function() { + debug(fs19[gracefulQueue]); + require("assert").equal(fs19[gracefulQueue].length, 0); + }); + } + } + var queue; + if (!global[gracefulQueue]) { + publishQueue(global, fs19[gracefulQueue]); + } + module2.exports = patch(clone(fs19)); + if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs19.__patched) { + module2.exports = patch(fs19); + fs19.__patched = true; + } + function patch(fs20) { + polyfills(fs20); + fs20.gracefulify = patch; + fs20.createReadStream = createReadStream; + fs20.createWriteStream = createWriteStream; + var fs$readFile = fs20.readFile; + fs20.readFile = readFile; + function readFile(path23, options, cb) { + if (typeof options === "function") + cb = options, options = null; + return go$readFile(path23, options, cb); + function go$readFile(path24, options2, cb2, startTime) { + return fs$readFile(path24, options2, function(err) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$readFile, [path24, options2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$writeFile = fs20.writeFile; + fs20.writeFile = writeFile; + function writeFile(path23, data, options, cb) { + if (typeof options === "function") + cb = options, options = null; + return go$writeFile(path23, data, options, cb); + function go$writeFile(path24, data2, options2, cb2, startTime) { + return fs$writeFile(path24, data2, options2, function(err) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$writeFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$appendFile = fs20.appendFile; + if (fs$appendFile) + fs20.appendFile = appendFile; + function appendFile(path23, data, options, cb) { + if (typeof options === "function") + cb = options, options = null; + return go$appendFile(path23, data, options, cb); + function go$appendFile(path24, data2, options2, cb2, startTime) { + return fs$appendFile(path24, data2, options2, function(err) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$appendFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$copyFile = fs20.copyFile; + if (fs$copyFile) + fs20.copyFile = copyFile; + function copyFile(src, dest, flags, cb) { + if (typeof flags === "function") { + cb = flags; + flags = 0; + } + return go$copyFile(src, dest, flags, cb); + function go$copyFile(src2, dest2, flags2, cb2, startTime) { + return fs$copyFile(src2, dest2, flags2, function(err) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$copyFile, [src2, dest2, flags2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$readdir = fs20.readdir; + fs20.readdir = readdir; + var noReaddirOptionVersions = /^v[0-5]\./; + function readdir(path23, options, cb) { + if (typeof options === "function") + cb = options, options = null; + var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path24, options2, cb2, startTime) { + return fs$readdir(path24, fs$readdirCallback( + path24, + options2, + cb2, + startTime + )); + } : function go$readdir2(path24, options2, cb2, startTime) { + return fs$readdir(path24, options2, fs$readdirCallback( + path24, + options2, + cb2, + startTime + )); + }; + return go$readdir(path23, options, cb); + function fs$readdirCallback(path24, options2, cb2, startTime) { + return function(err, files) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([ + go$readdir, + [path24, options2, cb2], + err, + startTime || Date.now(), + Date.now() + ]); + else { + if (files && files.sort) + files.sort(); + if (typeof cb2 === "function") + cb2.call(this, err, files); + } + }; + } + } + if (process.version.substr(0, 4) === "v0.8") { + var legStreams = legacy(fs20); + ReadStream = legStreams.ReadStream; + WriteStream = legStreams.WriteStream; + } + var fs$ReadStream = fs20.ReadStream; + if (fs$ReadStream) { + ReadStream.prototype = Object.create(fs$ReadStream.prototype); + ReadStream.prototype.open = ReadStream$open; + } + var fs$WriteStream = fs20.WriteStream; + if (fs$WriteStream) { + WriteStream.prototype = Object.create(fs$WriteStream.prototype); + WriteStream.prototype.open = WriteStream$open; + } + Object.defineProperty(fs20, "ReadStream", { + get: function() { + return ReadStream; + }, + set: function(val2) { + ReadStream = val2; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(fs20, "WriteStream", { + get: function() { + return WriteStream; + }, + set: function(val2) { + WriteStream = val2; + }, + enumerable: true, + configurable: true + }); + var FileReadStream = ReadStream; + Object.defineProperty(fs20, "FileReadStream", { + get: function() { + return FileReadStream; + }, + set: function(val2) { + FileReadStream = val2; + }, + enumerable: true, + configurable: true + }); + var FileWriteStream = WriteStream; + Object.defineProperty(fs20, "FileWriteStream", { + get: function() { + return FileWriteStream; + }, + set: function(val2) { + FileWriteStream = val2; + }, + enumerable: true, + configurable: true + }); + function ReadStream(path23, options) { + if (this instanceof ReadStream) + return fs$ReadStream.apply(this, arguments), this; + else + return ReadStream.apply(Object.create(ReadStream.prototype), arguments); + } + function ReadStream$open() { + var that = this; + open(that.path, that.flags, that.mode, function(err, fd) { + if (err) { + if (that.autoClose) + that.destroy(); + that.emit("error", err); + } else { + that.fd = fd; + that.emit("open", fd); + that.read(); + } + }); + } + function WriteStream(path23, options) { + if (this instanceof WriteStream) + return fs$WriteStream.apply(this, arguments), this; + else + return WriteStream.apply(Object.create(WriteStream.prototype), arguments); + } + function WriteStream$open() { + var that = this; + open(that.path, that.flags, that.mode, function(err, fd) { + if (err) { + that.destroy(); + that.emit("error", err); + } else { + that.fd = fd; + that.emit("open", fd); + } + }); + } + function createReadStream(path23, options) { + return new fs20.ReadStream(path23, options); + } + function createWriteStream(path23, options) { + return new fs20.WriteStream(path23, options); + } + var fs$open = fs20.open; + fs20.open = open; + function open(path23, flags, mode, cb) { + if (typeof mode === "function") + cb = mode, mode = null; + return go$open(path23, flags, mode, cb); + function go$open(path24, flags2, mode2, cb2, startTime) { + return fs$open(path24, flags2, mode2, function(err, fd) { + if (err && (err.code === "EMFILE" || err.code === "ENFILE")) + enqueue([go$open, [path24, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + return fs20; + } + function enqueue(elem) { + debug("ENQUEUE", elem[0].name, elem[1]); + fs19[gracefulQueue].push(elem); + retry(); + } + var retryTimer; + function resetQueue() { + var now = Date.now(); + for (var i = 0; i < fs19[gracefulQueue].length; ++i) { + if (fs19[gracefulQueue][i].length > 2) { + fs19[gracefulQueue][i][3] = now; + fs19[gracefulQueue][i][4] = now; + } + } + retry(); + } + function retry() { + clearTimeout(retryTimer); + retryTimer = void 0; + if (fs19[gracefulQueue].length === 0) + return; + var elem = fs19[gracefulQueue].shift(); + var fn = elem[0]; + var args = elem[1]; + var err = elem[2]; + var startTime = elem[3]; + var lastTime = elem[4]; + if (startTime === void 0) { + debug("RETRY", fn.name, args); + fn.apply(null, args); + } else if (Date.now() - startTime >= 6e4) { + debug("TIMEOUT", fn.name, args); + var cb = args.pop(); + if (typeof cb === "function") + cb.call(null, err); + } else { + var sinceAttempt = Date.now() - lastTime; + var sinceStart = Math.max(lastTime - startTime, 1); + var desiredDelay = Math.min(sinceStart * 1.2, 100); + if (sinceAttempt >= desiredDelay) { + debug("RETRY", fn.name, args); + fn.apply(null, args.concat([startTime])); + } else { + fs19[gracefulQueue].push(elem); + } + } + if (retryTimer === void 0) { + retryTimer = setTimeout(retry, 0); + } + } + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js +var require_fs = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js"(exports2) { + "use strict"; + var u = require_universalify().fromCallback; + var fs19 = require_graceful_fs(); + var api = [ + "access", + "appendFile", + "chmod", + "chown", + "close", + "copyFile", + "cp", + "fchmod", + "fchown", + "fdatasync", + "fstat", + "fsync", + "ftruncate", + "futimes", + "glob", + "lchmod", + "lchown", + "lutimes", + "link", + "lstat", + "mkdir", + "mkdtemp", + "open", + "opendir", + "readdir", + "readFile", + "readlink", + "realpath", + "rename", + "rm", + "rmdir", + "stat", + "statfs", + "symlink", + "truncate", + "unlink", + "utimes", + "writeFile" + ].filter((key) => { + return typeof fs19[key] === "function"; + }); + Object.assign(exports2, fs19); + api.forEach((method) => { + exports2[method] = u(fs19[method]); + }); + exports2.exists = function(filename, callback) { + if (typeof callback === "function") { + return fs19.exists(filename, callback); + } + return new Promise((resolve6) => { + return fs19.exists(filename, resolve6); + }); + }; + exports2.read = function(fd, buffer, offset, length, position, callback) { + if (typeof callback === "function") { + return fs19.read(fd, buffer, offset, length, position, callback); + } + return new Promise((resolve6, reject) => { + fs19.read(fd, buffer, offset, length, position, (err, bytesRead, buffer2) => { + if (err) return reject(err); + resolve6({ bytesRead, buffer: buffer2 }); + }); + }); + }; + exports2.write = function(fd, buffer, ...args) { + if (typeof args[args.length - 1] === "function") { + return fs19.write(fd, buffer, ...args); + } + return new Promise((resolve6, reject) => { + fs19.write(fd, buffer, ...args, (err, bytesWritten, buffer2) => { + if (err) return reject(err); + resolve6({ bytesWritten, buffer: buffer2 }); + }); + }); + }; + exports2.readv = function(fd, buffers, ...args) { + if (typeof args[args.length - 1] === "function") { + return fs19.readv(fd, buffers, ...args); + } + return new Promise((resolve6, reject) => { + fs19.readv(fd, buffers, ...args, (err, bytesRead, buffers2) => { + if (err) return reject(err); + resolve6({ bytesRead, buffers: buffers2 }); + }); + }); + }; + exports2.writev = function(fd, buffers, ...args) { + if (typeof args[args.length - 1] === "function") { + return fs19.writev(fd, buffers, ...args); + } + return new Promise((resolve6, reject) => { + fs19.writev(fd, buffers, ...args, (err, bytesWritten, buffers2) => { + if (err) return reject(err); + resolve6({ bytesWritten, buffers: buffers2 }); + }); + }); + }; + if (typeof fs19.realpath.native === "function") { + exports2.realpath.native = u(fs19.realpath.native); + } else { + process.emitWarning( + "fs.realpath.native is not a function. Is fs being monkey-patched?", + "Warning", + "fs-extra-WARN0003" + ); + } + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js +var require_utils = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) { + "use strict"; + var path23 = require("path"); + module2.exports.checkPath = function checkPath(pth) { + if (process.platform === "win32") { + const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path23.parse(pth).root, "")); + if (pathHasInvalidWinCharacters) { + const error = new Error(`Path contains invalid characters: ${pth}`); + error.code = "EINVAL"; + throw error; + } + } + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js +var require_make_dir = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) { + "use strict"; + var fs19 = require_fs(); + var { checkPath } = require_utils(); + var getMode = (options) => { + const defaults = { mode: 511 }; + if (typeof options === "number") return options; + return { ...defaults, ...options }.mode; + }; + module2.exports.makeDir = async (dir, options) => { + checkPath(dir); + return fs19.mkdir(dir, { + mode: getMode(options), + recursive: true + }); + }; + module2.exports.makeDirSync = (dir, options) => { + checkPath(dir); + return fs19.mkdirSync(dir, { + mode: getMode(options), + recursive: true + }); + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js +var require_mkdirs = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var { makeDir: _makeDir, makeDirSync } = require_make_dir(); + var makeDir = u(_makeDir); + module2.exports = { + mkdirs: makeDir, + mkdirsSync: makeDirSync, + // alias + mkdirp: makeDir, + mkdirpSync: makeDirSync, + ensureDir: makeDir, + ensureDirSync: makeDirSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js +var require_path_exists = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var fs19 = require_fs(); + function pathExists(path23) { + return fs19.access(path23).then(() => true).catch(() => false); + } + module2.exports = { + pathExists: u(pathExists), + pathExistsSync: fs19.existsSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js +var require_utimes = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) { + "use strict"; + var fs19 = require_fs(); + var u = require_universalify().fromPromise; + async function utimesMillis(path23, atime, mtime) { + const fd = await fs19.open(path23, "r+"); + let error = null; + try { + await fs19.futimes(fd, atime, mtime); + } catch (futimesErr) { + error = futimesErr; + } finally { + try { + await fs19.close(fd); + } catch (closeErr) { + if (!error) error = closeErr; + } + } + if (error) { + throw error; + } + } + function utimesMillisSync(path23, atime, mtime) { + const fd = fs19.openSync(path23, "r+"); + let error = null; + try { + fs19.futimesSync(fd, atime, mtime); + } catch (futimesErr) { + error = futimesErr; + } finally { + try { + fs19.closeSync(fd); + } catch (closeErr) { + if (!error) error = closeErr; + } + } + if (error) { + throw error; + } + } + module2.exports = { + utimesMillis: u(utimesMillis), + utimesMillisSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js +var require_stat = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) { + "use strict"; + var fs19 = require_fs(); + var path23 = require("path"); + var u = require_universalify().fromPromise; + function getStats(src, dest, opts) { + const statFunc = opts.dereference ? (file) => fs19.stat(file, { bigint: true }) : (file) => fs19.lstat(file, { bigint: true }); + return Promise.all([ + statFunc(src), + statFunc(dest).catch((err) => { + if (err.code === "ENOENT") return null; + throw err; + }) + ]).then(([srcStat, destStat]) => ({ srcStat, destStat })); + } + function getStatsSync(src, dest, opts) { + let destStat; + const statFunc = opts.dereference ? (file) => fs19.statSync(file, { bigint: true }) : (file) => fs19.lstatSync(file, { bigint: true }); + const srcStat = statFunc(src); + try { + destStat = statFunc(dest); + } catch (err) { + if (err.code === "ENOENT") return { srcStat, destStat: null }; + throw err; + } + return { srcStat, destStat }; + } + async function checkPaths(src, dest, funcName, opts) { + const { srcStat, destStat } = await getStats(src, dest, opts); + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path23.basename(src); + const destBaseName = path23.basename(dest); + if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return { srcStat, destStat, isChangingCase: true }; + } + throw new Error("Source and destination must not be the same."); + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`); + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`); + } + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(errMsg(src, dest, funcName)); + } + return { srcStat, destStat }; + } + function checkPathsSync(src, dest, funcName, opts) { + const { srcStat, destStat } = getStatsSync(src, dest, opts); + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path23.basename(src); + const destBaseName = path23.basename(dest); + if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return { srcStat, destStat, isChangingCase: true }; + } + throw new Error("Source and destination must not be the same."); + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`); + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`); + } + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(errMsg(src, dest, funcName)); + } + return { srcStat, destStat }; + } + async function checkParentPaths(src, srcStat, dest, funcName) { + const srcParent = path23.resolve(path23.dirname(src)); + const destParent = path23.resolve(path23.dirname(dest)); + if (destParent === srcParent || destParent === path23.parse(destParent).root) return; + let destStat; + try { + destStat = await fs19.stat(destParent, { bigint: true }); + } catch (err) { + if (err.code === "ENOENT") return checkParentPaths(src, srcStat, destParent, funcName); + throw err; + } + if (areIdentical(srcStat, destStat)) { + throw new Error(errMsg(src, dest, funcName)); + } + return checkParentPaths(src, srcStat, destParent, funcName); + } + function checkParentPathsSync(src, srcStat, dest, funcName) { + const srcParent = path23.resolve(path23.dirname(src)); + const destParent = path23.resolve(path23.dirname(dest)); + if (destParent === srcParent || destParent === path23.parse(destParent).root) return; + let destStat; + try { + destStat = fs19.statSync(destParent, { bigint: true }); + } catch (err) { + if (err.code === "ENOENT") return checkParentPathsSync(src, srcStat, destParent, funcName); + throw err; + } + if (areIdentical(srcStat, destStat)) { + throw new Error(errMsg(src, dest, funcName)); + } + return checkParentPathsSync(src, srcStat, destParent, funcName); + } + function areIdentical(srcStat, destStat) { + return destStat.ino !== void 0 && destStat.dev !== void 0 && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev; + } + function isSrcSubdir(src, dest) { + const srcArr = path23.resolve(src).split(path23.sep).filter((i) => i); + const destArr = path23.resolve(dest).split(path23.sep).filter((i) => i); + return srcArr.every((cur, i) => destArr[i] === cur); + } + function errMsg(src, dest, funcName) { + return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.`; + } + module2.exports = { + // checkPaths + checkPaths: u(checkPaths), + checkPathsSync, + // checkParent + checkParentPaths: u(checkParentPaths), + checkParentPathsSync, + // Misc + isSrcSubdir, + areIdentical + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js +var require_async = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js"(exports2, module2) { + "use strict"; + async function asyncIteratorConcurrentProcess(iterator, fn) { + const promises = []; + for await (const item of iterator) { + promises.push( + fn(item).then( + () => null, + (err) => err ?? new Error("unknown error") + ) + ); + } + await Promise.all( + promises.map( + (promise) => promise.then((possibleErr) => { + if (possibleErr !== null) throw possibleErr; + }) + ) + ); + } + module2.exports = { + asyncIteratorConcurrentProcess + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js +var require_copy = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) { + "use strict"; + var fs19 = require_fs(); + var path23 = require("path"); + var { mkdirs } = require_mkdirs(); + var { pathExists } = require_path_exists(); + var { utimesMillis } = require_utimes(); + var stat = require_stat(); + var { asyncIteratorConcurrentProcess } = require_async(); + async function copy(src, dest, opts = {}) { + if (typeof opts === "function") { + opts = { filter: opts }; + } + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + process.emitWarning( + "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269", + "Warning", + "fs-extra-WARN0001" + ); + } + const { srcStat, destStat } = await stat.checkPaths(src, dest, "copy", opts); + await stat.checkParentPaths(src, srcStat, dest, "copy"); + const include = await runFilter(src, dest, opts); + if (!include) return; + const destParent = path23.dirname(dest); + const dirExists = await pathExists(destParent); + if (!dirExists) { + await mkdirs(destParent); + } + await getStatsAndPerformCopy(destStat, src, dest, opts); + } + async function runFilter(src, dest, opts) { + if (!opts.filter) return true; + return opts.filter(src, dest); + } + async function getStatsAndPerformCopy(destStat, src, dest, opts) { + const statFn = opts.dereference ? fs19.stat : fs19.lstat; + const srcStat = await statFn(src); + if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts); + if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts); + if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts); + if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`); + if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`); + throw new Error(`Unknown file: ${src}`); + } + async function onFile(srcStat, destStat, src, dest, opts) { + if (!destStat) return copyFile(srcStat, src, dest, opts); + if (opts.overwrite) { + await fs19.unlink(dest); + return copyFile(srcStat, src, dest, opts); + } + if (opts.errorOnExist) { + throw new Error(`'${dest}' already exists`); + } + } + async function copyFile(srcStat, src, dest, opts) { + await fs19.copyFile(src, dest); + if (opts.preserveTimestamps) { + if (fileIsNotWritable(srcStat.mode)) { + await makeFileWritable(dest, srcStat.mode); + } + const updatedSrcStat = await fs19.stat(src); + await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime); + } + return fs19.chmod(dest, srcStat.mode); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode) { + return fs19.chmod(dest, srcMode | 128); + } + async function onDir(srcStat, destStat, src, dest, opts) { + if (!destStat) { + await fs19.mkdir(dest); + } + await asyncIteratorConcurrentProcess(await fs19.opendir(src), async (item) => { + const srcItem = path23.join(src, item.name); + const destItem = path23.join(dest, item.name); + const include = await runFilter(srcItem, destItem, opts); + if (include) { + const { destStat: destStat2 } = await stat.checkPaths(srcItem, destItem, "copy", opts); + await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts); + } + }); + if (!destStat) { + await fs19.chmod(dest, srcStat.mode); + } + } + async function onLink(destStat, src, dest, opts) { + let resolvedSrc = await fs19.readlink(src); + if (opts.dereference) { + resolvedSrc = path23.resolve(process.cwd(), resolvedSrc); + } + if (!destStat) { + return fs19.symlink(resolvedSrc, dest); + } + let resolvedDest = null; + try { + resolvedDest = await fs19.readlink(dest); + } catch (e) { + if (e.code === "EINVAL" || e.code === "UNKNOWN") return fs19.symlink(resolvedSrc, dest); + throw e; + } + if (opts.dereference) { + resolvedDest = path23.resolve(process.cwd(), resolvedDest); + } + if (resolvedSrc !== resolvedDest) { + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`); + } + if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`); + } + } + await fs19.unlink(dest); + return fs19.symlink(resolvedSrc, dest); + } + module2.exports = copy; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js +var require_copy_sync = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) { + "use strict"; + var fs19 = require_graceful_fs(); + var path23 = require("path"); + var mkdirsSync = require_mkdirs().mkdirsSync; + var utimesMillisSync = require_utimes().utimesMillisSync; + var stat = require_stat(); + function copySync2(src, dest, opts) { + if (typeof opts === "function") { + opts = { filter: opts }; + } + opts = opts || {}; + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + process.emitWarning( + "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269", + "Warning", + "fs-extra-WARN0002" + ); + } + const { srcStat, destStat } = stat.checkPathsSync(src, dest, "copy", opts); + stat.checkParentPathsSync(src, srcStat, dest, "copy"); + if (opts.filter && !opts.filter(src, dest)) return; + const destParent = path23.dirname(dest); + if (!fs19.existsSync(destParent)) mkdirsSync(destParent); + return getStats(destStat, src, dest, opts); + } + function getStats(destStat, src, dest, opts) { + const statSync6 = opts.dereference ? fs19.statSync : fs19.lstatSync; + const srcStat = statSync6(src); + if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts); + else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts); + else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts); + else if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`); + else if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`); + throw new Error(`Unknown file: ${src}`); + } + function onFile(srcStat, destStat, src, dest, opts) { + if (!destStat) return copyFile(srcStat, src, dest, opts); + return mayCopyFile(srcStat, src, dest, opts); + } + function mayCopyFile(srcStat, src, dest, opts) { + if (opts.overwrite) { + fs19.unlinkSync(dest); + return copyFile(srcStat, src, dest, opts); + } else if (opts.errorOnExist) { + throw new Error(`'${dest}' already exists`); + } + } + function copyFile(srcStat, src, dest, opts) { + fs19.copyFileSync(src, dest); + if (opts.preserveTimestamps) handleTimestamps(srcStat.mode, src, dest); + return setDestMode(dest, srcStat.mode); + } + function handleTimestamps(srcMode, src, dest) { + if (fileIsNotWritable(srcMode)) makeFileWritable(dest, srcMode); + return setDestTimestamps(src, dest); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode) { + return setDestMode(dest, srcMode | 128); + } + function setDestMode(dest, srcMode) { + return fs19.chmodSync(dest, srcMode); + } + function setDestTimestamps(src, dest) { + const updatedSrcStat = fs19.statSync(src); + return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime); + } + function onDir(srcStat, destStat, src, dest, opts) { + if (!destStat) return mkDirAndCopy(srcStat.mode, src, dest, opts); + return copyDir(src, dest, opts); + } + function mkDirAndCopy(srcMode, src, dest, opts) { + fs19.mkdirSync(dest); + copyDir(src, dest, opts); + return setDestMode(dest, srcMode); + } + function copyDir(src, dest, opts) { + const dir = fs19.opendirSync(src); + try { + let dirent; + while ((dirent = dir.readSync()) !== null) { + copyDirItem(dirent.name, src, dest, opts); + } + } finally { + dir.closeSync(); + } + } + function copyDirItem(item, src, dest, opts) { + const srcItem = path23.join(src, item); + const destItem = path23.join(dest, item); + if (opts.filter && !opts.filter(srcItem, destItem)) return; + const { destStat } = stat.checkPathsSync(srcItem, destItem, "copy", opts); + return getStats(destStat, srcItem, destItem, opts); + } + function onLink(destStat, src, dest, opts) { + let resolvedSrc = fs19.readlinkSync(src); + if (opts.dereference) { + resolvedSrc = path23.resolve(process.cwd(), resolvedSrc); + } + if (!destStat) { + return fs19.symlinkSync(resolvedSrc, dest); + } else { + let resolvedDest; + try { + resolvedDest = fs19.readlinkSync(dest); + } catch (err) { + if (err.code === "EINVAL" || err.code === "UNKNOWN") return fs19.symlinkSync(resolvedSrc, dest); + throw err; + } + if (opts.dereference) { + resolvedDest = path23.resolve(process.cwd(), resolvedDest); + } + if (resolvedSrc !== resolvedDest) { + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`); + } + if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`); + } + } + return copyLink(resolvedSrc, dest); + } + } + function copyLink(resolvedSrc, dest) { + fs19.unlinkSync(dest); + return fs19.symlinkSync(resolvedSrc, dest); + } + module2.exports = copySync2; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js +var require_copy2 = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + module2.exports = { + copy: u(require_copy()), + copySync: require_copy_sync() + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js +var require_remove = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) { + "use strict"; + var fs19 = require_graceful_fs(); + var u = require_universalify().fromCallback; + function remove(path23, callback) { + fs19.rm(path23, { recursive: true, force: true }, callback); + } + function removeSync2(path23) { + fs19.rmSync(path23, { recursive: true, force: true }); + } + module2.exports = { + remove: u(remove), + removeSync: removeSync2 + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js +var require_empty = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var fs19 = require_fs(); + var path23 = require("path"); + var mkdir = require_mkdirs(); + var remove = require_remove(); + var emptyDir = u(async function emptyDir2(dir) { + let items; + try { + items = await fs19.readdir(dir); + } catch { + return mkdir.mkdirs(dir); + } + return Promise.all(items.map((item) => remove.remove(path23.join(dir, item)))); + }); + function emptyDirSync(dir) { + let items; + try { + items = fs19.readdirSync(dir); + } catch { + return mkdir.mkdirsSync(dir); + } + items.forEach((item) => { + item = path23.join(dir, item); + remove.removeSync(item); + }); + } + module2.exports = { + emptyDirSync, + emptydirSync: emptyDirSync, + emptyDir, + emptydir: emptyDir + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js +var require_file = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var path23 = require("path"); + var fs19 = require_fs(); + var mkdir = require_mkdirs(); + async function createFile(file) { + let stats; + try { + stats = await fs19.stat(file); + } catch { + } + if (stats && stats.isFile()) return; + const dir = path23.dirname(file); + let dirStats = null; + try { + dirStats = await fs19.stat(dir); + } catch (err) { + if (err.code === "ENOENT") { + await mkdir.mkdirs(dir); + await fs19.writeFile(file, ""); + return; + } else { + throw err; + } + } + if (dirStats.isDirectory()) { + await fs19.writeFile(file, ""); + } else { + await fs19.readdir(dir); + } + } + function createFileSync(file) { + let stats; + try { + stats = fs19.statSync(file); + } catch { + } + if (stats && stats.isFile()) return; + const dir = path23.dirname(file); + try { + if (!fs19.statSync(dir).isDirectory()) { + fs19.readdirSync(dir); + } + } catch (err) { + if (err && err.code === "ENOENT") mkdir.mkdirsSync(dir); + else throw err; + } + fs19.writeFileSync(file, ""); + } + module2.exports = { + createFile: u(createFile), + createFileSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js +var require_link = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var path23 = require("path"); + var fs19 = require_fs(); + var mkdir = require_mkdirs(); + var { pathExists } = require_path_exists(); + var { areIdentical } = require_stat(); + async function createLink(srcpath, dstpath) { + let dstStat; + try { + dstStat = await fs19.lstat(dstpath, { bigint: true }); + } catch { + } + let srcStat; + try { + srcStat = await fs19.lstat(srcpath, { bigint: true }); + } catch (err) { + err.message = err.message.replace("lstat", "ensureLink"); + throw err; + } + if (dstStat && areIdentical(srcStat, dstStat)) return; + const dir = path23.dirname(dstpath); + const dirExists = await pathExists(dir); + if (!dirExists) { + await mkdir.mkdirs(dir); + } + await fs19.link(srcpath, dstpath); + } + function createLinkSync(srcpath, dstpath) { + let dstStat; + try { + dstStat = fs19.lstatSync(dstpath, { bigint: true }); + } catch { + } + try { + const srcStat = fs19.lstatSync(srcpath, { bigint: true }); + if (dstStat && areIdentical(srcStat, dstStat)) return; + } catch (err) { + err.message = err.message.replace("lstat", "ensureLink"); + throw err; + } + const dir = path23.dirname(dstpath); + const dirExists = fs19.existsSync(dir); + if (dirExists) return fs19.linkSync(srcpath, dstpath); + mkdir.mkdirsSync(dir); + return fs19.linkSync(srcpath, dstpath); + } + module2.exports = { + createLink: u(createLink), + createLinkSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js +var require_symlink_paths = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) { + "use strict"; + var path23 = require("path"); + var fs19 = require_fs(); + var { pathExists } = require_path_exists(); + var u = require_universalify().fromPromise; + async function symlinkPaths(srcpath, dstpath) { + if (path23.isAbsolute(srcpath)) { + try { + await fs19.lstat(srcpath); + } catch (err) { + err.message = err.message.replace("lstat", "ensureSymlink"); + throw err; + } + return { + toCwd: srcpath, + toDst: srcpath + }; + } + const dstdir = path23.dirname(dstpath); + const relativeToDst = path23.join(dstdir, srcpath); + const exists = await pathExists(relativeToDst); + if (exists) { + return { + toCwd: relativeToDst, + toDst: srcpath + }; + } + try { + await fs19.lstat(srcpath); + } catch (err) { + err.message = err.message.replace("lstat", "ensureSymlink"); + throw err; + } + return { + toCwd: srcpath, + toDst: path23.relative(dstdir, srcpath) + }; + } + function symlinkPathsSync(srcpath, dstpath) { + if (path23.isAbsolute(srcpath)) { + const exists2 = fs19.existsSync(srcpath); + if (!exists2) throw new Error("absolute srcpath does not exist"); + return { + toCwd: srcpath, + toDst: srcpath + }; + } + const dstdir = path23.dirname(dstpath); + const relativeToDst = path23.join(dstdir, srcpath); + const exists = fs19.existsSync(relativeToDst); + if (exists) { + return { + toCwd: relativeToDst, + toDst: srcpath + }; + } + const srcExists = fs19.existsSync(srcpath); + if (!srcExists) throw new Error("relative srcpath does not exist"); + return { + toCwd: srcpath, + toDst: path23.relative(dstdir, srcpath) + }; + } + module2.exports = { + symlinkPaths: u(symlinkPaths), + symlinkPathsSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js +var require_symlink_type = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) { + "use strict"; + var fs19 = require_fs(); + var u = require_universalify().fromPromise; + async function symlinkType(srcpath, type) { + if (type) return type; + let stats; + try { + stats = await fs19.lstat(srcpath); + } catch { + return "file"; + } + return stats && stats.isDirectory() ? "dir" : "file"; + } + function symlinkTypeSync(srcpath, type) { + if (type) return type; + let stats; + try { + stats = fs19.lstatSync(srcpath); + } catch { + return "file"; + } + return stats && stats.isDirectory() ? "dir" : "file"; + } + module2.exports = { + symlinkType: u(symlinkType), + symlinkTypeSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js +var require_symlink = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var path23 = require("path"); + var fs19 = require_fs(); + var { mkdirs, mkdirsSync } = require_mkdirs(); + var { symlinkPaths, symlinkPathsSync } = require_symlink_paths(); + var { symlinkType, symlinkTypeSync } = require_symlink_type(); + var { pathExists } = require_path_exists(); + var { areIdentical } = require_stat(); + async function createSymlink(srcpath, dstpath, type) { + let stats; + try { + stats = await fs19.lstat(dstpath); + } catch { + } + if (stats && stats.isSymbolicLink()) { + let srcStat; + if (path23.isAbsolute(srcpath)) { + srcStat = await fs19.stat(srcpath, { bigint: true }); + } else { + const dstdir = path23.dirname(dstpath); + const relativeToDst = path23.join(dstdir, srcpath); + try { + srcStat = await fs19.stat(relativeToDst, { bigint: true }); + } catch { + srcStat = await fs19.stat(srcpath, { bigint: true }); + } + } + const dstStat = await fs19.stat(dstpath, { bigint: true }); + if (areIdentical(srcStat, dstStat)) return; + } + const relative7 = await symlinkPaths(srcpath, dstpath); + srcpath = relative7.toDst; + const toType = await symlinkType(relative7.toCwd, type); + const dir = path23.dirname(dstpath); + if (!await pathExists(dir)) { + await mkdirs(dir); + } + return fs19.symlink(srcpath, dstpath, toType); + } + function createSymlinkSync(srcpath, dstpath, type) { + let stats; + try { + stats = fs19.lstatSync(dstpath); + } catch { + } + if (stats && stats.isSymbolicLink()) { + let srcStat; + if (path23.isAbsolute(srcpath)) { + srcStat = fs19.statSync(srcpath, { bigint: true }); + } else { + const dstdir = path23.dirname(dstpath); + const relativeToDst = path23.join(dstdir, srcpath); + try { + srcStat = fs19.statSync(relativeToDst, { bigint: true }); + } catch { + srcStat = fs19.statSync(srcpath, { bigint: true }); + } + } + const dstStat = fs19.statSync(dstpath, { bigint: true }); + if (areIdentical(srcStat, dstStat)) return; + } + const relative7 = symlinkPathsSync(srcpath, dstpath); + srcpath = relative7.toDst; + type = symlinkTypeSync(relative7.toCwd, type); + const dir = path23.dirname(dstpath); + const exists = fs19.existsSync(dir); + if (exists) return fs19.symlinkSync(srcpath, dstpath, type); + mkdirsSync(dir); + return fs19.symlinkSync(srcpath, dstpath, type); + } + module2.exports = { + createSymlink: u(createSymlink), + createSymlinkSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js +var require_ensure = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) { + "use strict"; + var { createFile, createFileSync } = require_file(); + var { createLink, createLinkSync } = require_link(); + var { createSymlink, createSymlinkSync } = require_symlink(); + module2.exports = { + // file + createFile, + createFileSync, + ensureFile: createFile, + ensureFileSync: createFileSync, + // link + createLink, + createLinkSync, + ensureLink: createLink, + ensureLinkSync: createLinkSync, + // symlink + createSymlink, + createSymlinkSync, + ensureSymlink: createSymlink, + ensureSymlinkSync: createSymlinkSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/jsonfile/utils.js +var require_utils2 = __commonJS({ + "../../aws-cdk-lib/node_modules/jsonfile/utils.js"(exports2, module2) { + function stringify3(obj, { EOL = "\n", finalEOL = true, replacer = null, spaces } = {}) { + const EOF = finalEOL ? EOL : ""; + const str = JSON.stringify(obj, replacer, spaces); + if (str === void 0) { + throw new TypeError(`Converting ${typeof obj} value to JSON is not supported`); + } + return str.replace(/\n/g, EOL) + EOF; + } + function stripBom(content) { + if (Buffer.isBuffer(content)) content = content.toString("utf8"); + return content.replace(/^\uFEFF/, ""); + } + module2.exports = { stringify: stringify3, stripBom }; + } +}); + +// ../../aws-cdk-lib/node_modules/jsonfile/index.js +var require_jsonfile = __commonJS({ + "../../aws-cdk-lib/node_modules/jsonfile/index.js"(exports2, module2) { + var _fs; + try { + _fs = require_graceful_fs(); + } catch (_) { + _fs = require("fs"); + } + var universalify = require_universalify(); + var { stringify: stringify3, stripBom } = require_utils2(); + async function _readFile(file, options = {}) { + if (typeof options === "string") { + options = { encoding: options }; + } + const fs19 = options.fs || _fs; + const shouldThrow = "throws" in options ? options.throws : true; + let data = await universalify.fromCallback(fs19.readFile)(file, options); + data = stripBom(data); + let obj; + try { + obj = JSON.parse(data, options ? options.reviver : null); + } catch (err) { + if (shouldThrow) { + err.message = `${file}: ${err.message}`; + throw err; + } else { + return null; + } + } + return obj; + } + var readFile = universalify.fromPromise(_readFile); + function readFileSync7(file, options = {}) { + if (typeof options === "string") { + options = { encoding: options }; + } + const fs19 = options.fs || _fs; + const shouldThrow = "throws" in options ? options.throws : true; + try { + let content = fs19.readFileSync(file, options); + content = stripBom(content); + return JSON.parse(content, options.reviver); + } catch (err) { + if (shouldThrow) { + err.message = `${file}: ${err.message}`; + throw err; + } else { + return null; + } + } + } + async function _writeFile(file, obj, options = {}) { + const fs19 = options.fs || _fs; + const str = stringify3(obj, options); + await universalify.fromCallback(fs19.writeFile)(file, str, options); + } + var writeFile = universalify.fromPromise(_writeFile); + function writeFileSync10(file, obj, options = {}) { + const fs19 = options.fs || _fs; + const str = stringify3(obj, options); + return fs19.writeFileSync(file, str, options); + } + module2.exports = { + readFile, + readFileSync: readFileSync7, + writeFile, + writeFileSync: writeFileSync10 + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js +var require_jsonfile2 = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) { + "use strict"; + var jsonFile = require_jsonfile(); + module2.exports = { + // jsonfile exports + readJson: jsonFile.readFile, + readJsonSync: jsonFile.readFileSync, + writeJson: jsonFile.writeFile, + writeJsonSync: jsonFile.writeFileSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js +var require_output_file = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var fs19 = require_fs(); + var path23 = require("path"); + var mkdir = require_mkdirs(); + var pathExists = require_path_exists().pathExists; + async function outputFile(file, data, encoding = "utf-8") { + const dir = path23.dirname(file); + if (!await pathExists(dir)) { + await mkdir.mkdirs(dir); + } + return fs19.writeFile(file, data, encoding); + } + function outputFileSync(file, ...args) { + const dir = path23.dirname(file); + if (!fs19.existsSync(dir)) { + mkdir.mkdirsSync(dir); + } + fs19.writeFileSync(file, ...args); + } + module2.exports = { + outputFile: u(outputFile), + outputFileSync + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js +var require_output_json = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) { + "use strict"; + var { stringify: stringify3 } = require_utils2(); + var { outputFile } = require_output_file(); + async function outputJson(file, data, options = {}) { + const str = stringify3(data, options); + await outputFile(file, str, options); + } + module2.exports = outputJson; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js +var require_output_json_sync = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) { + "use strict"; + var { stringify: stringify3 } = require_utils2(); + var { outputFileSync } = require_output_file(); + function outputJsonSync(file, data, options) { + const str = stringify3(data, options); + outputFileSync(file, str, options); + } + module2.exports = outputJsonSync; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js +var require_json = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var jsonFile = require_jsonfile2(); + jsonFile.outputJson = u(require_output_json()); + jsonFile.outputJsonSync = require_output_json_sync(); + jsonFile.outputJSON = jsonFile.outputJson; + jsonFile.outputJSONSync = jsonFile.outputJsonSync; + jsonFile.writeJSON = jsonFile.writeJson; + jsonFile.writeJSONSync = jsonFile.writeJsonSync; + jsonFile.readJSON = jsonFile.readJson; + jsonFile.readJSONSync = jsonFile.readJsonSync; + module2.exports = jsonFile; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js +var require_move = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js"(exports2, module2) { + "use strict"; + var fs19 = require_fs(); + var path23 = require("path"); + var { copy } = require_copy2(); + var { remove } = require_remove(); + var { mkdirp } = require_mkdirs(); + var { pathExists } = require_path_exists(); + var stat = require_stat(); + async function move(src, dest, opts = {}) { + const overwrite = opts.overwrite || opts.clobber || false; + const { srcStat, isChangingCase = false } = await stat.checkPaths(src, dest, "move", opts); + await stat.checkParentPaths(src, srcStat, dest, "move"); + const destParent = path23.dirname(dest); + const parsedParentPath = path23.parse(destParent); + if (parsedParentPath.root !== destParent) { + await mkdirp(destParent); + } + return doRename(src, dest, overwrite, isChangingCase); + } + async function doRename(src, dest, overwrite, isChangingCase) { + if (!isChangingCase) { + if (overwrite) { + await remove(dest); + } else if (await pathExists(dest)) { + throw new Error("dest already exists."); + } + } + try { + await fs19.rename(src, dest); + } catch (err) { + if (err.code !== "EXDEV") { + throw err; + } + await moveAcrossDevice(src, dest, overwrite); + } + } + async function moveAcrossDevice(src, dest, overwrite) { + const opts = { + overwrite, + errorOnExist: true, + preserveTimestamps: true + }; + await copy(src, dest, opts); + return remove(src); + } + module2.exports = move; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js +var require_move_sync = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) { + "use strict"; + var fs19 = require_graceful_fs(); + var path23 = require("path"); + var copySync2 = require_copy2().copySync; + var removeSync2 = require_remove().removeSync; + var mkdirpSync = require_mkdirs().mkdirpSync; + var stat = require_stat(); + function moveSync(src, dest, opts) { + opts = opts || {}; + const overwrite = opts.overwrite || opts.clobber || false; + const { srcStat, isChangingCase = false } = stat.checkPathsSync(src, dest, "move", opts); + stat.checkParentPathsSync(src, srcStat, dest, "move"); + if (!isParentRoot(dest)) mkdirpSync(path23.dirname(dest)); + return doRename(src, dest, overwrite, isChangingCase); + } + function isParentRoot(dest) { + const parent = path23.dirname(dest); + const parsedPath = path23.parse(parent); + return parsedPath.root === parent; + } + function doRename(src, dest, overwrite, isChangingCase) { + if (isChangingCase) return rename(src, dest, overwrite); + if (overwrite) { + removeSync2(dest); + return rename(src, dest, overwrite); + } + if (fs19.existsSync(dest)) throw new Error("dest already exists."); + return rename(src, dest, overwrite); + } + function rename(src, dest, overwrite) { + try { + fs19.renameSync(src, dest); + } catch (err) { + if (err.code !== "EXDEV") throw err; + return moveAcrossDevice(src, dest, overwrite); + } + } + function moveAcrossDevice(src, dest, overwrite) { + const opts = { + overwrite, + errorOnExist: true, + preserveTimestamps: true + }; + copySync2(src, dest, opts); + return removeSync2(src); + } + module2.exports = moveSync; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js +var require_move2 = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + module2.exports = { + move: u(require_move()), + moveSync: require_move_sync() + }; + } +}); + +// ../../aws-cdk-lib/node_modules/fs-extra/lib/index.js +var require_lib5 = __commonJS({ + "../../aws-cdk-lib/node_modules/fs-extra/lib/index.js"(exports2, module2) { + "use strict"; + module2.exports = { + // Export promiseified graceful-fs: + ...require_fs(), + // Export extra methods: + ...require_copy2(), + ...require_empty(), + ...require_ensure(), + ...require_json(), + ...require_mkdirs(), + ...require_move2(), + ...require_output_file(), + ...require_path_exists(), + ...require_remove() + }; + } +}); + +// ../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts +var AWS_CDK_CONSTRUCTOR_PROPS; +var init_classes = __esm({ + "../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts"() { + "use strict"; + AWS_CDK_CONSTRUCTOR_PROPS = { + "@aws-cdk.aws-amplify-alpha": { + "App": { + "appName": "*", + "sourceCodeProvider": "*", + "autoBranchCreation": { + "patterns": "*", + "basicAuth": "*", + "buildSpec": "*", + "autoBuild": "boolean", + "pullRequestPreview": "boolean", + "environmentVariables": "*", + "pullRequestEnvironmentName": "*", + "stage": "*" + }, + "autoBranchDeletion": "boolean", + "basicAuth": "*", + "buildSpec": "*", + "customResponseHeaders": { + "appRoot": "*", + "pattern": "*", + "headers": "*" + }, + "customRules": "*", + "description": "*", + "environmentVariables": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "platform": "Platform", + "cacheConfigType": "CacheConfigType", + "computeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "buildComputeType": "BuildComputeType", + "addCustomRule": [ + "*" + ], + "addEnvironment": [ + "*", + "*" + ], + "addAutoBranchEnvironment": [ + "*", + "*" + ], + "addBranch": [ + "*", + { + "basicAuth": "*", + "branchName": "*", + "buildSpec": "*", + "description": "*", + "autoBuild": "boolean", + "pullRequestPreview": "boolean", + "environmentVariables": "*", + "pullRequestEnvironmentName": "*", + "stage": "*", + "asset": "*", + "performanceMode": "boolean", + "skewProtection": "boolean", + "computeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + ], + "addDomain": [ + "*", + { + "domainName": "*", + "subDomains": { + "branch": { + "branchName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "prefix": "*" + }, + "enableAutoSubdomain": "boolean", + "autoSubdomainCreationPatterns": "*", + "customCertificate": { + "certificateArn": "*" + } + } + ] + }, + "Branch": { + "app": { + "appId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "basicAuth": "*", + "branchName": "*", + "buildSpec": "*", + "description": "*", + "autoBuild": "boolean", + "pullRequestPreview": "boolean", + "environmentVariables": "*", + "pullRequestEnvironmentName": "*", + "stage": "*", + "asset": "*", + "performanceMode": "boolean", + "skewProtection": "boolean", + "computeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "addEnvironment": [ + "*", + "*" + ] + }, + "Domain": { + "app": { + "appId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "autoSubDomainIamRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "domainName": "*", + "subDomains": { + "branch": { + "branchName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "prefix": "*" + }, + "enableAutoSubdomain": "boolean", + "autoSubdomainCreationPatterns": "*", + "customCertificate": { + "certificateArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "mapSubDomain": [ + { + "branchName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "*" + ], + "mapRoot": [ + { + "branchName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + } + }, + "@aws-cdk.aws-apprunner-alpha": { + "AutoScalingConfiguration": { + "autoScalingConfigurationName": "*", + "maxConcurrency": "*", + "maxSize": "*", + "minSize": "*" + }, + "ObservabilityConfiguration": { + "observabilityConfigurationName": "*", + "traceConfigurationVendor": "TraceConfigurationVendor" + }, + "Service": { + "source": "*", + "autoDeploymentsEnabled": "boolean", + "autoScalingConfiguration": { + "autoScalingConfigurationArn": "*", + "autoScalingConfigurationName": "*", + "autoScalingConfigurationRevision": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cpu": "*", + "memory": "*", + "accessRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "instanceRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "serviceName": "*", + "vpcConnector": { + "vpcConnectorName": "*", + "vpcConnectorArn": "*", + "vpcConnectorRevision": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "connections": "*" + }, + "isPubliclyAccessible": "boolean", + "healthCheck": "*", + "kmsKey": "*", + "ipAddressType": "IpAddressType", + "observabilityConfiguration": { + "observabilityConfigurationName": "*", + "observabilityConfigurationArn": "*", + "observabilityConfigurationRevision": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "addToRolePolicy": [ + "*" + ], + "addEnvironmentVariable": [ + "*", + "*" + ], + "addSecret": [ + "*", + "*" + ] + }, + "VpcConnector": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcConnectorName": "*" + }, + "VpcIngressConnection": { + "vpcIngressConnectionName": "*", + "service": { + "serviceName": "*", + "serviceArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "interfaceVpcEndpoint": { + "vpcEndpointId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "connections": "*" + } + } + }, + "@aws-cdk.aws-cloud9-alpha": { + "Ec2Environment": { + "owner": "*", + "instanceType": "*", + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ec2EnvironmentName": "*", + "description": "*", + "clonedRepositories": "*", + "connectionType": "ConnectionType", + "imageId": "ImageId", + "automaticStop": "*" + } + }, + "@aws-cdk.aws-codestar-alpha": { + "GitHubRepository": { + "owner": "*", + "repositoryName": "*", + "accessToken": "*", + "contentsBucket": "*", + "contentsKey": "*", + "contentsS3Version": "*", + "enableIssues": "boolean", + "visibility": "RepositoryVisibility", + "description": "*" + } + }, + "@aws-cdk.aws-dsql-alpha": { + "Cluster": {} + }, + "@aws-cdk.aws-ec2-alpha": { + "IpamPool": { + "ipamScopeId": "*", + "addressFamily": "AddressFamily", + "ipv4ProvisionedCidrs": "*", + "locale": "*", + "publicIpSource": "IpamPoolPublicIpSource", + "awsService": "AwsServiceName", + "ipamPoolName": "*", + "provisionCidr": [ + "*", + { + "netmaskLength": "*", + "cidr": "*" + } + ] + }, + "IpamScope": { + "ipamId": "*", + "ipamOperatingRegions": "*", + "ipamScopeId": "*", + "ipamScopeName": "*" + }, + "Ipam": { + "addScope": [ + "*", + "*", + { + "ipamScopeName": "*" + } + ] + }, + "EgressOnlyInternetGateway": { + "vpc": { + "secondaryCidrBlock": { + "amazonProvidedIpv6CidrBlock": "boolean", + "cidrBlock": "*", + "ipv6IpamPoolId": "*", + "ipv4IpamPoolId": "*", + "ipv6CidrBlock": "*", + "ipv6Pool": "*" + }, + "ipv4CidrBlock": "*", + "region": "*", + "ownerAccountId": "*", + "ipv4IpamProvisionedCidrs": "*", + "vpcName": "*", + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "egressOnlyInternetGatewayName": "*" + }, + "InternetGateway": { + "vpc": { + "secondaryCidrBlock": { + "amazonProvidedIpv6CidrBlock": "boolean", + "cidrBlock": "*", + "ipv6IpamPoolId": "*", + "ipv4IpamPoolId": "*", + "ipv6CidrBlock": "*", + "ipv6Pool": "*" + }, + "ipv4CidrBlock": "*", + "region": "*", + "ownerAccountId": "*", + "ipv4IpamProvisionedCidrs": "*", + "vpcName": "*", + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "internetGatewayName": "*" + }, + "VPNGatewayV2": { + "vpc": { + "secondaryCidrBlock": { + "amazonProvidedIpv6CidrBlock": "boolean", + "cidrBlock": "*", + "ipv6IpamPoolId": "*", + "ipv4IpamPoolId": "*", + "ipv6CidrBlock": "*", + "ipv6Pool": "*" + }, + "ipv4CidrBlock": "*", + "region": "*", + "ownerAccountId": "*", + "ipv4IpamProvisionedCidrs": "*", + "vpcName": "*", + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "type": "VpnConnectionType", + "amazonSideAsn": "*", + "vpnGatewayName": "*", + "vpnRoutePropagation": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "NatGateway": { + "vpc": { + "secondaryCidrBlock": { + "amazonProvidedIpv6CidrBlock": "boolean", + "cidrBlock": "*", + "ipv6IpamPoolId": "*", + "ipv4IpamPoolId": "*", + "ipv6CidrBlock": "*", + "ipv6Pool": "*" + }, + "ipv4CidrBlock": "*", + "region": "*", + "ownerAccountId": "*", + "ipv4IpamProvisionedCidrs": "*", + "vpcName": "*", + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnet": { + "ipv6CidrBlock": "*", + "subnetType": "SubnetType", + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "allocationId": "*", + "connectivityType": "NatConnectivityType", + "maxDrainDuration": "*", + "privateIpAddress": "*", + "secondaryAllocationIds": "*", + "secondaryPrivateIpAddressCount": "*", + "secondaryPrivateIpAddresses": "*", + "natGatewayName": "*" + }, + "VPCPeeringConnection": { + "requestorVpc": { + "secondaryCidrBlock": { + "amazonProvidedIpv6CidrBlock": "boolean", + "cidrBlock": "*", + "ipv6IpamPoolId": "*", + "ipv4IpamPoolId": "*", + "ipv6CidrBlock": "*", + "ipv6Pool": "*" + }, + "ipv4CidrBlock": "*", + "region": "*", + "ownerAccountId": "*", + "ipv4IpamProvisionedCidrs": "*", + "vpcName": "*", + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "acceptorVpc": { + "secondaryCidrBlock": { + "amazonProvidedIpv6CidrBlock": "boolean", + "cidrBlock": "*", + "ipv6IpamPoolId": "*", + "ipv4IpamPoolId": "*", + "ipv6CidrBlock": "*", + "ipv6Pool": "*" + }, + "ipv4CidrBlock": "*", + "region": "*", + "ownerAccountId": "*", + "ipv4IpamProvisionedCidrs": "*", + "vpcName": "*", + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "peerRoleArn": "*", + "vpcPeeringConnectionName": "*" + }, + "Route": { + "routeTable": { + "routeTableId": "*" + }, + "destination": "*", + "target": "*", + "routeName": "*" + }, + "RouteTable": { + "vpc": { + "secondaryCidrBlock": { + "amazonProvidedIpv6CidrBlock": "boolean", + "cidrBlock": "*", + "ipv6IpamPoolId": "*", + "ipv4IpamPoolId": "*", + "ipv6CidrBlock": "*", + "ipv6Pool": "*" + }, + "ipv4CidrBlock": "*", + "region": "*", + "ownerAccountId": "*", + "ipv4IpamProvisionedCidrs": "*", + "vpcName": "*", + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "routeTableName": "*", + "addRoute": [ + "*", + "*", + "*", + "*" + ] + }, + "SubnetV2": { + "vpc": { + "secondaryCidrBlock": { + "amazonProvidedIpv6CidrBlock": "boolean", + "cidrBlock": "*", + "ipv6IpamPoolId": "*", + "ipv4IpamPoolId": "*", + "ipv6CidrBlock": "*", + "ipv6Pool": "*" + }, + "ipv4CidrBlock": "*", + "region": "*", + "ownerAccountId": "*", + "ipv4IpamProvisionedCidrs": "*", + "vpcName": "*", + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipv4CidrBlock": "*", + "ipv6CidrBlock": "*", + "availabilityZone": "*", + "routeTable": { + "routeTableId": "*" + }, + "defaultRouteTableName": "*", + "subnetType": "SubnetType", + "subnetName": "*", + "assignIpv6AddressOnCreation": "boolean", + "mapPublicIpOnLaunch": "boolean", + "associateNetworkAcl": [ + "*", + { + "networkAclId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + }, + "TransitGatewayRouteTableAssociation": { + "transitGatewayVpcAttachment": { + "transitGatewayAttachmentId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "transitGatewayRouteTable": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "routeTableId": "*" + }, + "transitGatewayRouteTableAssociationName": "*" + }, + "TransitGatewayRouteTablePropagation": { + "transitGatewayVpcAttachment": { + "transitGatewayAttachmentId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "transitGatewayRouteTable": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "routeTableId": "*" + }, + "transitGatewayRouteTablePropagationName": "*" + }, + "TransitGatewayRouteTable": { + "transitGateway": { + "transitGatewayId": "*", + "transitGatewayArn": "*", + "defaultRouteTable": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "routeTableId": "*" + }, + "defaultRouteTableAssociation": "boolean", + "defaultRouteTablePropagation": "boolean", + "dnsSupport": "boolean", + "securityGroupReferencingSupport": "boolean", + "routerType": "RouterType", + "routerTargetId": "*" + }, + "transitGatewayRouteTableName": "*" + }, + "TransitGatewayRoute": { + "transitGatewayAttachment": { + "transitGatewayAttachmentId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "destinationCidrBlock": "*", + "transitGatewayRouteTable": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "routeTableId": "*" + }, + "transitGatewayRouteName": "*" + }, + "TransitGatewayBlackholeRoute": { + "destinationCidrBlock": "*", + "transitGatewayRouteTable": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "routeTableId": "*" + }, + "transitGatewayRouteName": "*" + }, + "TransitGatewayVpcAttachment": { + "transitGateway": { + "transitGatewayId": "*", + "transitGatewayArn": "*", + "defaultRouteTable": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "routeTableId": "*" + }, + "defaultRouteTableAssociation": "boolean", + "defaultRouteTablePropagation": "boolean", + "dnsSupport": "boolean", + "securityGroupReferencingSupport": "boolean", + "routerType": "RouterType", + "routerTargetId": "*" + }, + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcAttachmentOptions": { + "applianceModeSupport": "boolean", + "dnsSupport": "boolean", + "ipv6Support": "boolean", + "securityGroupReferencingSupport": "boolean" + }, + "transitGatewayAttachmentName": "*" + }, + "TransitGateway": { + "transitGatewayName": "*", + "amazonSideAsn": "*", + "autoAcceptSharedAttachments": "boolean", + "defaultRouteTableAssociation": "boolean", + "defaultRouteTablePropagation": "boolean", + "description": "*", + "dnsSupport": "boolean", + "securityGroupReferencingSupport": "boolean", + "transitGatewayCidrBlocks": "*" + }, + "VpcV2": { + "primaryAddressBlock": "*", + "secondaryAddressBlocks": "*", + "enableDnsHostnames": "boolean", + "enableDnsSupport": "boolean", + "defaultInstanceTenancy": "DefaultInstanceTenancy", + "vpcName": "*" + }, + "VPCCidrBlock": { + "vpcId": "*", + "amazonProvidedIpv6CidrBlock": "boolean", + "cidrBlock": "*", + "cidrBlockName": "*", + "ipv6NetmaskLength": "*", + "ipv4NetmaskLength": "*", + "ipv6IpamPoolId": "*", + "ipv4IpamPoolId": "*", + "ipv4IpamProvisionedCidrs": "*", + "ipv6CidrBlock": "*", + "ipv6Pool": "*" + } + }, + "@aws-cdk.aws-elasticache-alpha": { + "IamUser": { + "userName": "*", + "engine": "*", + "userId": "*", + "accessControl": "*", + "grantConnect": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grant": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ] + }, + "NoPasswordUser": { + "userName": "*", + "engine": "*", + "userId": "*", + "accessControl": "*" + }, + "PasswordUser": { + "userName": "*", + "passwords": "*", + "engine": "*", + "userId": "*", + "accessControl": "*" + }, + "ServerlessCache": { + "engine": "*", + "serverlessCacheName": "*", + "description": "*", + "cacheUsageLimits": { + "dataStorageMinimumSize": "*", + "requestRateLimitMinimum": "*", + "requestRateLimitMaximum": "*" + }, + "backup": { + "backupTime": "*", + "backupRetentionLimit": "*", + "backupNameBeforeDeletion": "*", + "backupArnsToRestore": "*" + }, + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "userGroup": { + "userGroupName": "*", + "engine": "*", + "users": { + "userId": "*", + "userName": "*", + "userArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "userGroupArn": "*" + } + }, + "UserGroup": { + "userGroupName": "*", + "engine": "*", + "users": { + "userId": "*", + "engine": "*", + "userName": "*", + "userArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "addUser": [ + { + "userId": "*", + "engine": "*", + "userName": "*", + "userArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + } + }, + "@aws-cdk.aws-gamelift-alpha": { + "Alias": { + "aliasName": "*", + "description": "*", + "fleet": { + "fleetId": "*", + "fleetArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "resourceArnForDestination": "*" + }, + "terminalMessage": "*" + }, + "BuildFleet": { + "content": { + "buildId": "*", + "buildArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "ingressRules": { + "port": "*", + "source": { + "uniqueId": "*" + } + }, + "fleetName": "*", + "description": "*", + "useSpot": "boolean", + "useCertificate": "boolean", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "peerVpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "metricGroup": "*", + "instanceType": "*", + "desiredCapacity": "*", + "minSize": "*", + "maxSize": "*", + "protectNewGameSession": "boolean", + "runtimeConfiguration": { + "gameSessionActivationTimeout": "*", + "maxConcurrentGameSessionActivations": "*", + "serverProcesses": { + "concurrentExecutions": "*", + "launchPath": "*", + "parameters": "*" + } + }, + "locations": { + "region": "*", + "capacity": { + "desiredCapacity": "*", + "maxSize": "*", + "minSize": "*" + } + }, + "resourceCreationLimitPolicy": { + "newGameSessionsPerCreator": "*", + "policyPeriod": "*" + }, + "addIngressRule": [ + { + "uniqueId": "*" + }, + "*" + ] + }, + "Build": { + "buildName": "*", + "buildVersion": "*", + "operatingSystem": "OperatingSystem", + "content": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "serverSdkVersion": "*" + }, + "GameServerGroup": { + "gameServerGroupName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "minSize": "*", + "maxSize": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "instanceDefinitions": { + "instanceType": "*", + "weight": "*" + }, + "launchTemplate": { + "versionNumber": "*", + "launchTemplateId": "*", + "launchTemplateName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "protectGameServer": "boolean", + "autoScalingPolicy": { + "estimatedInstanceWarmup": "*", + "targetTrackingConfiguration": "*" + }, + "deleteOption": "DeleteOption", + "balancingStrategy": "BalancingStrategy" + }, + "GameSessionQueue": { + "gameSessionQueueName": "*", + "customEventData": "*", + "allowedLocations": "*", + "notificationTarget": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "playerLatencyPolicies": { + "maximumIndividualPlayerLatency": "*" + }, + "priorityConfiguration": { + "locationOrder": "*", + "priorityOrder": "PriorityType" + }, + "timeout": "*", + "destinations": { + "resourceArnForDestination": "*" + }, + "addDestination": [ + { + "resourceArnForDestination": "*" + } + ] + }, + "MatchmakingRuleSet": { + "matchmakingRuleSetName": "*", + "content": "*" + }, + "QueuedMatchmakingConfiguration": { + "additionalPlayerCount": "*", + "manualBackfillMode": "boolean", + "gameProperties": { + "key": "*", + "value": "*" + }, + "gameSessionData": "*", + "gameSessionQueues": { + "gameSessionQueueName": "*", + "gameSessionQueueArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "matchmakingConfigurationName": "*", + "description": "*", + "requireAcceptance": "boolean", + "acceptanceTimeout": "*", + "customEventData": "*", + "notificationTarget": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "requestTimeout": "*", + "ruleSet": { + "matchmakingRuleSetName": "*", + "matchmakingRuleSetArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "addGameSessionQueue": [ + { + "gameSessionQueueName": "*", + "gameSessionQueueArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + }, + "Script": { + "scriptName": "*", + "scriptVersion": "*", + "content": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "StandaloneMatchmakingConfiguration": { + "matchmakingConfigurationName": "*", + "description": "*", + "requireAcceptance": "boolean", + "acceptanceTimeout": "*", + "customEventData": "*", + "notificationTarget": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "requestTimeout": "*", + "ruleSet": { + "matchmakingRuleSetName": "*", + "matchmakingRuleSetArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "@aws-cdk.aws-glue-alpha": { + "Catalog": { + "catalogName": "*", + "description": "*", + "encryptionAtRest": "*", + "connectionPasswordEncryption": { + "kmsKey": "*", + "returnConnectionPasswordEncrypted": "boolean" + } + }, + "AccountCatalog": { + "encryptionAtRest": "*", + "connectionPasswordEncryption": { + "kmsKey": "*", + "returnConnectionPasswordEncrypted": "boolean" + } + }, + "ImportedCatalog": {}, + "Connection": { + "type": "*", + "connectionName": "*", + "description": "*", + "properties": "*", + "secret": "*", + "matchCriteria": "*", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "network": "*", + "addProperty": [ + "*", + "*" + ] + }, + "DataQualityRuleset": { + "rulesetName": "*", + "description": "*", + "dqdl": "*", + "tags": "*", + "targetTable": "*", + "removalPolicy": "RemovalPolicy" + }, + "Database": { + "databaseName": "*", + "locationUri": "*", + "description": "*", + "catalog": { + "catalogId": "*", + "catalogArn": "*", + "encryptionKey": "*", + "connectionPasswordKey": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "removalPolicy": "RemovalPolicy" + }, + "ExternalTable": { + "connection": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "externalDataLocation": "*", + "tableName": "*", + "description": "*", + "database": { + "catalog": { + "catalogId": "*", + "catalogArn": "*", + "encryptionKey": "*", + "connectionPasswordKey": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "databaseArn": "*", + "databaseName": "*" + }, + "columns": { + "name": "*", + "type": "*", + "comment": "*" + }, + "partitionKeys": { + "name": "*", + "type": "*", + "comment": "*" + }, + "partitionIndexes": { + "indexName": "*", + "keyNames": "*" + }, + "dataFormat": "*", + "compressed": "boolean", + "storedAsSubDirectories": "boolean", + "enablePartitionFiltering": "boolean", + "storageParameters": "*", + "parameters": "*", + "hasEncryptedData": "boolean", + "partitionProjection": "*", + "grantRead": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantWrite": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantReadWrite": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "S3Table": { + "storage": "*", + "s3Prefix": "*", + "clientSideEncryption": "*", + "tableName": "*", + "description": "*", + "database": { + "catalog": { + "catalogId": "*", + "catalogArn": "*", + "encryptionKey": "*", + "connectionPasswordKey": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "databaseArn": "*", + "databaseName": "*" + }, + "columns": { + "name": "*", + "type": "*", + "comment": "*" + }, + "partitionKeys": { + "name": "*", + "type": "*", + "comment": "*" + }, + "partitionIndexes": { + "indexName": "*", + "keyNames": "*" + }, + "dataFormat": "*", + "compressed": "boolean", + "storedAsSubDirectories": "boolean", + "enablePartitionFiltering": "boolean", + "storageParameters": "*", + "parameters": "*", + "hasEncryptedData": "boolean", + "partitionProjection": "*", + "grantRead": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantWrite": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantReadWrite": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "SecurityConfiguration": { + "securityConfigurationName": "*", + "cloudWatchEncryption": "*", + "jobBookmarksEncryption": "*", + "s3Encryption": "*", + "removalPolicy": "RemovalPolicy" + } + }, + "@aws-cdk.aws-imagebuilder-alpha": { + "Component": { + "data": "*", + "platform": "Platform", + "componentName": "*", + "componentVersion": "*", + "description": "*", + "changeDescription": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "supportedOsVersions": "*", + "tags": "*" + }, + "ContainerRecipe": { + "baseImage": "*", + "targetRepository": "*", + "containerRecipeName": "*", + "containerRecipeVersion": "*", + "description": "*", + "dockerfile": "*", + "components": { + "component": { + "componentArn": "*", + "componentName": "*", + "componentVersion": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "parameters": "*" + }, + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "workingDirectory": "*", + "osVersion": "*", + "instanceBlockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "instanceImage": "*", + "tags": "*", + "addInstanceBlockDevice": [ + { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + } + ] + }, + "DistributionConfiguration": { + "amiDistributions": { + "region": "*", + "amiTags": "*", + "amiDescription": "*", + "amiKmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "amiLaunchPermission": { + "organizationalUnitArns": "*", + "organizationArns": "*", + "isPublicUserGroup": "boolean", + "accountIds": "*" + }, + "amiName": "*", + "amiTargetAccountIds": "*", + "ssmParameters": { + "amiAccount": "*", + "dataType": "ParameterDataType", + "parameter": { + "stringValue": "*", + "parameterArn": "*", + "parameterName": "*", + "parameterType": "*" + } + }, + "launchTemplates": { + "launchTemplate": { + "versionNumber": "*", + "launchTemplateId": "*", + "launchTemplateName": "*" + }, + "accountId": "*", + "setDefaultVersion": "boolean" + }, + "fastLaunchConfigurations": { + "enabled": "boolean", + "maxParallelLaunches": "*", + "targetSnapshotCount": "*" + }, + "licenseConfigurationArns": "*" + }, + "containerDistributions": { + "region": "*", + "containerRepository": "*", + "containerDescription": "*", + "containerTags": "*" + }, + "distributionConfigurationName": "*", + "description": "*", + "tags": "*", + "addAmiDistributions": [ + { + "region": "*", + "amiTags": "*", + "amiDescription": "*", + "amiKmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "amiLaunchPermission": { + "organizationalUnitArns": "*", + "organizationArns": "*", + "isPublicUserGroup": "boolean", + "accountIds": "*" + }, + "amiName": "*", + "amiTargetAccountIds": "*", + "ssmParameters": { + "amiAccount": "*", + "dataType": "ParameterDataType", + "parameter": { + "stringValue": "*", + "parameterArn": "*", + "parameterName": "*", + "parameterType": "*" + } + }, + "launchTemplates": { + "launchTemplate": { + "versionNumber": "*", + "launchTemplateId": "*", + "launchTemplateName": "*" + }, + "accountId": "*", + "setDefaultVersion": "boolean" + }, + "fastLaunchConfigurations": { + "enabled": "boolean", + "maxParallelLaunches": "*", + "targetSnapshotCount": "*" + }, + "licenseConfigurationArns": "*" + } + ], + "addContainerDistributions": [ + { + "region": "*", + "containerRepository": "*", + "containerDescription": "*", + "containerTags": "*" + } + ] + }, + "ImagePipeline": { + "recipe": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "imagePipelineName": "*", + "description": "*", + "schedule": { + "expression": "*", + "autoDisableFailureCount": "*", + "startCondition": "ScheduleStartCondition" + }, + "status": "ImagePipelineStatus", + "infrastructureConfiguration": { + "infrastructureConfigurationArn": "*", + "infrastructureConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "distributionConfiguration": { + "distributionConfigurationArn": "*", + "distributionConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "workflows": { + "workflow": { + "workflowArn": "*", + "workflowName": "*", + "workflowType": "*", + "workflowVersion": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "onFailure": "WorkflowOnFailure", + "parallelGroup": "*", + "parameters": "*" + }, + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "imagePipelineLogGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "imageLogGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "imageScanningEnabled": "boolean", + "imageScanningEcrRepository": { + "repositoryName": "*", + "repositoryArn": "*", + "repositoryUri": "*", + "registryUri": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "imageScanningEcrTags": "*", + "enhancedImageMetadataEnabled": "boolean", + "imageTestsEnabled": "boolean", + "tags": "*", + "grantDefaultExecutionRolePermissions": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "ImageRecipe": { + "baseImage": "*", + "imageRecipeName": "*", + "imageRecipeVersion": "*", + "description": "*", + "components": { + "component": { + "componentArn": "*", + "componentName": "*", + "componentVersion": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "parameters": "*" + }, + "amiTags": "*", + "blockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "workingDirectory": "*", + "uninstallSsmAgentAfterBuild": "boolean", + "userDataOverride": "*", + "tags": "*", + "addBlockDevice": [ + { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + } + ] + }, + "Image": { + "recipe": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "infrastructureConfiguration": { + "infrastructureConfigurationArn": "*", + "infrastructureConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "distributionConfiguration": { + "distributionConfigurationArn": "*", + "distributionConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "workflows": { + "workflow": { + "workflowArn": "*", + "workflowName": "*", + "workflowType": "*", + "workflowVersion": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "onFailure": "WorkflowOnFailure", + "parallelGroup": "*", + "parameters": "*" + }, + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "imageScanningEnabled": "boolean", + "imageScanningEcrRepository": { + "repositoryName": "*", + "repositoryArn": "*", + "repositoryUri": "*", + "registryUri": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "imageScanningEcrTags": "*", + "enhancedImageMetadataEnabled": "boolean", + "imageTestsEnabled": "boolean", + "deletionExecutionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "grantDefaultExecutionRolePermissions": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "InfrastructureConfiguration": { + "infrastructureConfigurationName": "*", + "description": "*", + "instanceTypes": "*", + "instanceProfile": { + "instanceProfileName": "*", + "instanceProfileArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "keyPair": { + "keyPairName": "*", + "type": "KeyPairType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "terminateInstanceOnFailure": "boolean", + "httpPutResponseHopLimit": "*", + "httpTokens": "HttpTokens", + "notificationTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "logging": { + "s3Bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "s3KeyPrefix": "*" + }, + "ec2InstanceAvailabilityZone": "*", + "ec2InstanceHostId": "*", + "ec2InstanceHostResourceGroupArn": "*", + "ec2InstanceTenancy": "Tenancy", + "resourceTags": "*", + "tags": "*", + "_bind": [ + { + "isContainerBuild": "boolean" + } + ] + }, + "LifecyclePolicy": { + "resourceType": "LifecyclePolicyResourceType", + "details": { + "action": { + "type": "LifecyclePolicyActionType", + "includeAmis": "boolean", + "includeContainers": "boolean", + "includeSnapshots": "boolean" + }, + "filter": { + "ageFilter": { + "age": "*", + "retainAtLeast": "*" + }, + "countFilter": { + "count": "*" + } + }, + "exclusionRules": { + "imageExclusionRules": { + "tags": "*" + }, + "amiExclusionRules": { + "isPublic": "boolean", + "regions": "*", + "sharedAccounts": "*", + "tags": "*" + } + } + }, + "resourceSelection": { + "recipes": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*" + }, + "lifecyclePolicyName": "*", + "description": "*", + "status": "LifecyclePolicyStatus", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*" + }, + "Workflow": { + "data": "*", + "workflowType": "WorkflowType", + "workflowName": "*", + "workflowVersion": "*", + "description": "*", + "changeDescription": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*" + } + }, + "@aws-cdk.aws-iot-alpha": { + "AccountAuditConfiguration": {}, + "Logging": {}, + "ScheduledAudit": { + "auditChecks": "AuditCheck", + "accountAuditConfiguration": { + "accountId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "dayOfWeek": "DayOfWeek", + "dayOfMonth": "*", + "frequency": "Frequency", + "scheduledAuditName": "*" + }, + "TopicRule": { + "topicRuleName": "*", + "actions": "*", + "description": "*", + "errorAction": "*", + "enabled": "boolean", + "sql": "*", + "addAction": [ + "*" + ] + } + }, + "@aws-cdk.aws-iotevents-alpha": { + "DetectorModel": { + "detectorModelName": "*", + "description": "*", + "evaluationMethod": "EventEvaluation", + "detectorKey": "*", + "initialState": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "Input": { + "inputName": "*", + "attributeJsonPaths": "*" + } + }, + "@aws-cdk.aws-ivs-alpha": { + "Channel": { + "authorized": "boolean", + "containerFormat": "ContainerFormat", + "insecureIngest": "boolean", + "latencyMode": "LatencyMode", + "channelName": "*", + "multitrackInputConfiguration": { + "maximumResolution": "MaximumResolution", + "policy": "Policy" + }, + "type": "ChannelType", + "preset": "Preset", + "recordingConfiguration": { + "recordingConfigurationId": "*", + "recordingConfigurationArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "PlaybackKeyPair": { + "publicKeyMaterial": "*", + "playbackKeyPairName": "*" + }, + "RecordingConfiguration": { + "bucket": "*", + "recordingConfigurationName": "*", + "recordingReconnectWindow": "*", + "renditionConfiguration": "*", + "thumbnailConfiguration": "*" + }, + "StreamKey": { + "channel": { + "channelArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "@aws-cdk.aws-kinesisanalytics-flink-alpha": { + "Import": { + "applicationArn": "*", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + }, + "Application": { + "applicationName": "*", + "runtime": "*", + "code": "*", + "checkpointingEnabled": "boolean", + "checkpointInterval": "*", + "minPauseBetweenCheckpoints": "*", + "logLevel": "LogLevel", + "metricsLevel": "MetricsLevel", + "autoScalingEnabled": "boolean", + "parallelism": "*", + "parallelismPerKpu": "*", + "snapshotsEnabled": "boolean", + "propertyGroups": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "removalPolicy": "RemovalPolicy", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + } + }, + "@aws-cdk.aws-lambda-go-alpha": { + "GoFunction": { + "entry": "*", + "runtime": "*", + "moduleDir": "*", + "bundling": { + "forcedDockerBundling": "boolean", + "dockerImage": "*", + "goBuildFlags": "*", + "buildArgs": "*", + "assetHashType": "AssetHashType", + "assetHash": "*", + "commandHooks": "*", + "cgoEnabled": "boolean", + "goProxies": "*", + "bundlingFileAccess": "BundlingFileAccess", + "entrypoint": "*", + "command": "*", + "volumes": { + "hostPath": "*", + "containerPath": "*", + "consistency": "DockerVolumeConsistency" + }, + "volumesFrom": "*", + "environment": "*", + "workingDirectory": "*", + "user": "*", + "securityOpt": "*", + "network": "*", + "platform": "*" + }, + "description": "*", + "timeout": "*", + "environment": "*", + "functionName": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "initialPolicy": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipv6AllowedForDualStack": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "deadLetterQueueEnabled": "boolean", + "deadLetterQueue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "deadLetterTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "tracing": "Tracing", + "snapStart": "*", + "profiling": "boolean", + "profilingGroup": { + "profilingGroupName": "*", + "profilingGroupArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "insightsVersion": "*", + "adotInstrumentation": { + "layerVersion": "*", + "execWrapper": "AdotLambdaExecWrapper" + }, + "paramsAndSecrets": "*", + "layers": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "reservedConcurrentExecutions": "*", + "events": "*", + "logRetention": "RetentionDays", + "logRemovalPolicy": "RemovalPolicy", + "logRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logRetentionRetryOptions": { + "maxRetries": "*", + "base": "*" + }, + "currentVersionOptions": { + "codeSha256": "*", + "description": "*", + "provisionedConcurrentExecutions": "*", + "removalPolicy": "RemovalPolicy", + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "filesystem": "*", + "allowPublicSubnet": "boolean", + "environmentEncryption": "*", + "codeSigningConfig": "*", + "architectures": "*", + "architecture": "*", + "runtimeManagementMode": "*", + "tenancyConfig": "*", + "durableConfig": { + "executionTimeout": "*" + }, + "logGroup": "*", + "logFormat": "*", + "loggingFormat": "LoggingFormat", + "recursiveLoop": "RecursiveLoop", + "applicationLogLevel": "*", + "applicationLogLevelV2": "ApplicationLogLevel", + "systemLogLevel": "*", + "systemLogLevelV2": "SystemLogLevel", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*" + } + }, + "@aws-cdk.aws-lambda-python-alpha": { + "PythonFunction": { + "entry": "*", + "runtime": "*", + "index": "*", + "handler": "*", + "bundling": { + "poetryIncludeHashes": "boolean", + "poetryWithoutUrls": "boolean", + "assetExcludes": "*", + "outputPathSuffix": "*", + "image": "*", + "buildArgs": "*", + "assetHashType": "AssetHashType", + "assetHash": "*", + "commandHooks": "*", + "bundlingFileAccess": "BundlingFileAccess", + "entrypoint": "*", + "command": "*", + "volumes": { + "hostPath": "*", + "containerPath": "*", + "consistency": "DockerVolumeConsistency" + }, + "volumesFrom": "*", + "environment": "*", + "workingDirectory": "*", + "user": "*", + "securityOpt": "*", + "network": "*", + "platform": "*" + }, + "description": "*", + "timeout": "*", + "environment": "*", + "functionName": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "initialPolicy": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipv6AllowedForDualStack": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "deadLetterQueueEnabled": "boolean", + "deadLetterQueue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "deadLetterTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "tracing": "Tracing", + "snapStart": "*", + "profiling": "boolean", + "profilingGroup": { + "profilingGroupName": "*", + "profilingGroupArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "insightsVersion": "*", + "adotInstrumentation": { + "layerVersion": "*", + "execWrapper": "AdotLambdaExecWrapper" + }, + "paramsAndSecrets": "*", + "layers": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "reservedConcurrentExecutions": "*", + "events": "*", + "logRetention": "RetentionDays", + "logRemovalPolicy": "RemovalPolicy", + "logRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logRetentionRetryOptions": { + "maxRetries": "*", + "base": "*" + }, + "currentVersionOptions": { + "codeSha256": "*", + "description": "*", + "provisionedConcurrentExecutions": "*", + "removalPolicy": "RemovalPolicy", + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "filesystem": "*", + "allowPublicSubnet": "boolean", + "environmentEncryption": "*", + "codeSigningConfig": "*", + "architectures": "*", + "architecture": "*", + "runtimeManagementMode": "*", + "tenancyConfig": "*", + "durableConfig": { + "executionTimeout": "*" + }, + "logGroup": "*", + "logFormat": "*", + "loggingFormat": "LoggingFormat", + "recursiveLoop": "RecursiveLoop", + "applicationLogLevel": "*", + "applicationLogLevelV2": "ApplicationLogLevel", + "systemLogLevel": "*", + "systemLogLevelV2": "SystemLogLevel", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "PythonLayerVersion": { + "entry": "*", + "compatibleRuntimes": "*", + "compatibleArchitectures": "*", + "bundling": { + "poetryIncludeHashes": "boolean", + "poetryWithoutUrls": "boolean", + "assetExcludes": "*", + "outputPathSuffix": "*", + "image": "*", + "buildArgs": "*", + "assetHashType": "AssetHashType", + "assetHash": "*", + "commandHooks": "*", + "bundlingFileAccess": "BundlingFileAccess", + "entrypoint": "*", + "command": "*", + "volumes": { + "hostPath": "*", + "containerPath": "*", + "consistency": "DockerVolumeConsistency" + }, + "volumesFrom": "*", + "environment": "*", + "workingDirectory": "*", + "user": "*", + "securityOpt": "*", + "network": "*", + "platform": "*" + }, + "description": "*", + "license": "*", + "layerVersionName": "*", + "removalPolicy": "RemovalPolicy" + } + }, + "@aws-cdk.aws-location-alpha": { + "ApiKey": { + "apiKeyName": "*", + "description": "*", + "expireTime": "*", + "forceDelete": "boolean", + "forceUpdate": "boolean", + "noExpiry": "boolean", + "allowMapsActions": "AllowMapsAction", + "allowPlacesActions": "AllowPlacesAction", + "allowRoutesActions": "AllowRoutesAction", + "allowReferers": "*" + }, + "GeofenceCollection": { + "geofenceCollectionName": "*", + "description": "*", + "kmsKey": "*", + "grant": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ], + "grantRead": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "Map": { + "mapName": "*", + "description": "*", + "style": "Style", + "customLayers": "CustomLayer", + "politicalView": "PoliticalView", + "grant": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ], + "grantRendering": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "PlaceIndex": { + "placeIndexName": "*", + "dataSource": "DataSource", + "intendedUse": "IntendedUse", + "description": "*", + "grant": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ], + "grantSearch": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "RouteCalculator": { + "routeCalculatorName": "*", + "dataSource": "DataSource", + "description": "*", + "grant": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ], + "grantRead": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "Tracker": { + "trackerName": "*", + "description": "*", + "eventBridgeEnabled": "boolean", + "kmsKey": "*", + "kmsKeyEnableGeospatialQueries": "boolean", + "positionFiltering": "PositionFiltering", + "geofenceCollections": { + "geofenceCollectionName": "*", + "geofenceCollectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "addGeofenceCollections": [ + { + "geofenceCollectionName": "*", + "geofenceCollectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ], + "grant": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ], + "grantUpdateDevicePositions": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantRead": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + } + }, + "@aws-cdk.aws-mediaconnect-alpha": { + "BridgeOutput": { + "bridgeOutputName": "*", + "bridge": { + "bridgeArn": "*", + "bridgeName": "*", + "bridgeType": "*", + "bridgeState": "*", + "isFailoverEnabled": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "output": "*" + }, + "BridgeSource": { + "bridgeSourceName": "*", + "bridge": { + "bridgeArn": "*", + "bridgeName": "*", + "bridgeType": "*", + "bridgeState": "*", + "isFailoverEnabled": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "source": "*" + }, + "Bridge": { + "bridgeName": "*", + "config": "*", + "gateway": { + "gatewayArn": "*", + "gatewayState": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "sourceFailoverConfig": "*" + }, + "FlowEntitlement": { + "flowEntitlementName": "*", + "dataTransferSubscriberFeePercent": "*", + "description": "*", + "encryption": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*" + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "algorithm": "*" + }, + "flow": { + "flowArn": "*", + "sourceArn": "*", + "egressIp": "*", + "sourceIngestIp": "*", + "sourceIngestPort": "*", + "sourceIngestUrl": "*", + "flowAvailabilityZone": "*", + "isFailoverEnabled": "boolean", + "grants": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "subscribers": "*", + "entitlementStatus": "EntitlementStatus" + }, + "FlowOutput": { + "flowOutputName": "*", + "description": "*", + "outputStatus": "State", + "flow": { + "flowArn": "*", + "sourceArn": "*", + "egressIp": "*", + "sourceIngestIp": "*", + "sourceIngestPort": "*", + "sourceIngestUrl": "*", + "flowAvailabilityZone": "*", + "isFailoverEnabled": "boolean", + "grants": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "output": "*" + }, + "FlowSource": { + "source": "*", + "flow": { + "flowArn": "*", + "sourceArn": "*", + "egressIp": "*", + "sourceIngestIp": "*", + "sourceIngestPort": "*", + "sourceIngestUrl": "*", + "flowAvailabilityZone": "*", + "isFailoverEnabled": "boolean", + "grants": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "Flow": { + "flowName": "*", + "availabilityZone": "*", + "flowSize": "*", + "maintenanceConfiguration": { + "day": "MaintenanceDay", + "time": "*" + }, + "mediaStreams": "*", + "ndiConfig": { + "machineName": "*", + "ndiDiscoveryServers": { + "discoveryServerAddress": "*", + "discoveryServerPort": "*", + "vpcInterface": { + "name": "*", + "networkInterfaceIds": "*", + "networkInterfaceType": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "subnet": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + } + } + }, + "ndiState": "State" + }, + "encodingConfig": { + "encodingProfile": "EncodingProfile", + "videoMaxBitrate": "*" + }, + "source": "*", + "sourceFailoverConfig": "*", + "sourceMonitoringConfig": { + "contentQualityAnalysisState": "State", + "thumbnailState": "State", + "silentAudio": { + "state": "State", + "threshold": "*" + } + }, + "vpcInterfaces": { + "name": "*", + "networkInterfaceIds": "*", + "networkInterfaceType": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "subnet": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + } + }, + "addVpcInterface": [ + { + "name": "*", + "networkInterfaceIds": "*", + "networkInterfaceType": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "subnet": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + } + } + ] + }, + "Gateway": { + "gatewayName": "*", + "egressCidrBlocks": "*", + "networks": "*", + "addNetwork": [ + "*" + ] + }, + "RouterInput": { + "routerInputName": "*", + "maximumBitrate": "*", + "routingScope": "*", + "tier": "*", + "configuration": "*", + "maintenanceConfiguration": { + "day": "MaintenanceDay", + "time": "*" + }, + "regionName": "*", + "tags": "*", + "transitEncryption": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*" + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + } + } + }, + "RouterNetworkInterface": { + "routerNetworkInterfaceName": "*", + "configuration": "*", + "regionName": "*", + "tags": "*" + }, + "RouterOutput": { + "routerOutputName": "*", + "maximumBitrate": "*", + "routingScope": "*", + "tier": "*", + "configuration": "*", + "maintenanceConfiguration": { + "day": "MaintenanceDay", + "time": "*" + }, + "regionName": "*", + "tags": "*" + } + }, + "@aws-cdk.aws-medialive-alpha": { + "ChannelPlacementGroup": { + "channelPlacementGroupName": "*", + "cluster": "*", + "nodes": "*", + "tags": "*" + }, + "Channel": { + "channelName": "*", + "channelClass": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "inputs": { + "input": { + "inputArn": "*", + "inputId": "*", + "inputClass": "*", + "inputType": "*", + "inputDestinations": "*", + "inputSources": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "inputAttachmentName": "*", + "sourceEndBehavior": "*", + "inputFilter": "*", + "filterStrength": "*", + "deblockFilter": "boolean", + "denoiseFilter": "boolean", + "smpte2038DataPreference": "*", + "audioSelectors": "*", + "captionSelectors": "*", + "scte35Pid": "*", + "videoSelector": { + "colorSpace": "*", + "colorSpaceUsage": "*", + "hdr10": { + "maxContentLightLevel": "*", + "maxFrameAverageLightLevel": "*" + }, + "selectBy": "*" + }, + "networkInputSettings": { + "serverValidation": "*", + "hlsInputSettings": { + "bandwidth": "*", + "bufferSegments": "*", + "retries": "*", + "retryInterval": "*", + "scte35Source": "*" + }, + "multicastSourceIp": "*" + }, + "logicalInterfaceNames": "*", + "automaticInputFailover": { + "failoverConditions": "*", + "inputPreference": "*" + } + }, + "outputGroups": "*", + "logLevel": "*", + "inputSpecification": "*", + "globalConfiguration": { + "initialAudioGain": "*", + "inputEndAction": "*", + "outputTimingSource": "*", + "supportLowFramerateInputs": "boolean", + "inputLossBehavior": { + "blackFrame": "*", + "imageType": "*", + "imageColor": "*", + "imageSlate": "*" + }, + "outputLocking": "*" + }, + "tags": "*", + "maintenance": { + "day": "*", + "time": "*" + }, + "timecodeConfig": { + "source": "*", + "syncThreshold": "*" + }, + "vpc": { + "subnets": "*", + "securityGroups": "*", + "publicAddressAllocationIds": "*" + }, + "availBlanking": { + "state": "*", + "image": "*" + }, + "availSettings": "*", + "scte35SegmentationScope": "*", + "featureActivations": { + "inputPrepareScheduleActions": "*" + }, + "motionGraphicsConfiguration": { + "motionGraphicsInsertion": "*" + }, + "nielsenConfiguration": { + "distributorId": "*", + "nielsenPcmToId3Tagging": "*" + }, + "thumbnailConfiguration": { + "state": "*" + }, + "blackoutSlate": { + "state": "*", + "image": "*", + "networkEndBlackout": "*", + "networkId": "*" + }, + "colorCorrections": { + "inputColorSpace": "*", + "lut": "*" + }, + "anywhereSettings": { + "cluster": "*", + "channelPlacementGroup": "*" + }, + "channelEngineVersion": "*", + "linkedChannelSettings": "*", + "channelSecurityGroups": "*", + "inferenceFeedArn": "*", + "addInput": [ + { + "input": { + "inputArn": "*", + "inputId": "*", + "inputClass": "*", + "inputType": "*", + "inputDestinations": "*", + "inputSources": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "inputAttachmentName": "*", + "sourceEndBehavior": "*", + "inputFilter": "*", + "filterStrength": "*", + "deblockFilter": "boolean", + "denoiseFilter": "boolean", + "smpte2038DataPreference": "*", + "audioSelectors": "*", + "captionSelectors": "*", + "scte35Pid": "*", + "videoSelector": { + "colorSpace": "*", + "colorSpaceUsage": "*", + "hdr10": { + "maxContentLightLevel": "*", + "maxFrameAverageLightLevel": "*" + }, + "selectBy": "*" + }, + "networkInputSettings": { + "serverValidation": "*", + "hlsInputSettings": { + "bandwidth": "*", + "bufferSegments": "*", + "retries": "*", + "retryInterval": "*", + "scte35Source": "*" + }, + "multicastSourceIp": "*" + }, + "logicalInterfaceNames": "*", + "automaticInputFailover": { + "failoverConditions": "*", + "inputPreference": "*" + } + } + ], + "addOutputGroup": [ + "*" + ] + }, + "Cluster": { + "clusterName": "*", + "clusterType": "*", + "instanceRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "networkSettings": { + "defaultRoute": "*", + "interfaceMappings": { + "logicalInterfaceName": "*", + "networkId": "*" + } + }, + "tags": "*" + }, + "InputSecurityGroup": { + "allowlistRules": "*", + "tags": "*" + }, + "Input": { + "inputName": "*", + "input": "*", + "inputNetworkLocation": "*", + "tags": "*", + "_grantPermissions": [ + { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + }, + "Network": { + "networkName": "*", + "ipPools": "*", + "routes": { + "cidr": "*", + "gateway": "*" + }, + "tags": "*" + }, + "SdiSource": { + "sdiSourceName": "*", + "type": "*", + "mode": "*", + "tags": "*" + } + }, + "@aws-cdk.aws-mediapackagev2-alpha": { + "ChannelPolicy": { + "channel": { + "channelGroupName": "*", + "channelName": "*", + "channelArn": "*", + "createdAt": "*", + "modifiedAt": "*", + "ingestEndpointUrls": "*", + "channelGroup": { + "channelGroupName": "*", + "channelGroupArn": "*", + "egressDomain": "*", + "createdAt": "*", + "modifiedAt": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "region": "*", + "grants": "*" + }, + "policyDocument": "*" + }, + "Channel": { + "channelGroup": { + "channelGroupName": "*", + "channelGroupArn": "*", + "egressDomain": "*", + "createdAt": "*", + "modifiedAt": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "channelName": "*", + "input": "*", + "description": "*", + "tags": "*", + "removalPolicy": "RemovalPolicy" + }, + "OriginEndpoint": { + "channel": { + "channelGroupName": "*", + "channelName": "*", + "channelArn": "*", + "createdAt": "*", + "modifiedAt": "*", + "ingestEndpointUrls": "*", + "channelGroup": { + "channelGroupName": "*", + "channelGroupArn": "*", + "egressDomain": "*", + "createdAt": "*", + "modifiedAt": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "region": "*", + "grants": "*" + }, + "originEndpointName": "*", + "description": "*", + "tags": "*", + "manifests": "*", + "startoverWindow": "*", + "segment": { + "containerType": "ContainerType", + "includeIframeOnlyStreams": "boolean", + "scteFilter": "ScteMessageType", + "scteInSegments": "ScteInSegments", + "segmentDuration": "*", + "segmentName": "*", + "tsIncludeDvbSubtitles": "boolean", + "tsUseAudioRenditionGroup": "boolean", + "encryption": "*" + }, + "forceEndpointConfigurationConditions": "EndpointErrorConfiguration", + "cdnAuth": { + "secrets": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + } + }, + "removalPolicy": "RemovalPolicy" + }, + "ChannelGroup": {}, + "OriginEndpointPolicy": { + "originEndpoint": { + "channelGroupName": "*", + "channelName": "*", + "originEndpointName": "*", + "originEndpointArn": "*", + "createdAt": "*", + "modifiedAt": "*", + "hlsManifestUrls": "*", + "lowLatencyHlsManifestUrls": "*", + "dashManifestUrls": "*", + "mssManifestUrls": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policyDocument": "*", + "cdnAuth": { + "secrets": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + } + } + } + }, + "@aws-cdk.aws-msk-alpha": { + "Cluster": { + "clusterName": "*", + "kafkaVersion": "*", + "numberOfBrokerNodes": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "instanceType": "*", + "brokerType": "BrokerType", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "ebsStorageInfo": { + "volumeSize": "*", + "encryptionKey": "*" + }, + "storageMode": "StorageMode", + "configurationInfo": { + "arn": "*", + "revision": "*" + }, + "monitoring": { + "clusterMonitoringLevel": "ClusterMonitoringLevel", + "enablePrometheusJmxExporter": "boolean", + "enablePrometheusNodeExporter": "boolean" + }, + "logging": { + "firehoseDeliveryStreamName": "*", + "cloudwatchLogGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "s3": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*" + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + } + }, + "encryptionInTransit": { + "clientBroker": "ClientBrokerEncryption", + "enableInCluster": "boolean" + }, + "clientAuthentication": "*", + "removalPolicy": "RemovalPolicy", + "addUser": [ + "*" + ] + }, + "ServerlessCluster": { + "clusterName": "*", + "vpcConfigs": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + } + } + }, + "@aws-cdk.aws-neptune-alpha": { + "DatabaseCluster": { + "engineVersion": "*", + "backupRetention": "*", + "preferredBackupWindow": "*", + "kmsKey": "*", + "storageEncrypted": "boolean", + "instances": "*", + "dbClusterName": "*", + "iamAuthentication": "boolean", + "instanceIdentifierBase": "*", + "instanceType": "*", + "associatedRoles": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "deletionProtection": "boolean", + "preferredMaintenanceWindow": "*", + "clusterParameterGroup": { + "clusterParameterGroupName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "parameterGroup": { + "parameterGroupName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "subnetGroup": { + "subnetGroupName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "removalPolicy": "RemovalPolicy", + "autoMinorVersionUpgrade": "boolean", + "cloudwatchLogsExports": "*", + "cloudwatchLogsRetention": "RetentionDays", + "cloudwatchLogsRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "serverlessScalingConfiguration": { + "minCapacity": "*", + "maxCapacity": "*" + }, + "copyTagsToSnapshot": "boolean", + "port": "*" + }, + "DatabaseInstance": { + "cluster": { + "clusterIdentifier": "*", + "clusterResourceIdentifier": "*", + "clusterEndpoint": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "connections": "*" + }, + "instanceType": "*", + "availabilityZone": "*", + "dbInstanceName": "*", + "parameterGroup": { + "parameterGroupName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "removalPolicy": "RemovalPolicy", + "autoMinorVersionUpgrade": "boolean" + }, + "ClusterParameterGroup": { + "clusterParameterGroupName": "*", + "description": "*", + "parameters": "*", + "family": "*" + }, + "ParameterGroup": { + "parameterGroupName": "*", + "description": "*", + "parameters": "*", + "family": "*" + }, + "SubnetGroup": { + "description": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetGroupName": "*", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "removalPolicy": "RemovalPolicy" + } + }, + "@aws-cdk.aws-pipes-alpha": { + "ImportedPipe": {}, + "Pipe": { + "source": { + "sourceArn": "*" + }, + "filter": { + "filters": { + "pattern": "*" + } + }, + "enrichment": { + "enrichmentArn": "*" + }, + "target": { + "targetArn": "*" + }, + "pipeName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logDestinations": "*", + "logLevel": "LogLevel", + "logIncludeExecutionData": "IncludeExecutionData", + "description": "*", + "desiredState": "DesiredState", + "tags": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "@aws-cdk.aws-redshift-alpha": { + "Cluster": { + "clusterName": "*", + "parameterGroup": { + "clusterParameterGroupName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "numberOfNodes": "*", + "nodeType": "NodeType", + "clusterType": "ClusterType", + "port": "*", + "encrypted": "boolean", + "encryptionKey": "*", + "preferredMaintenanceWindow": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "subnetGroup": { + "clusterSubnetGroupName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "masterUser": { + "masterUsername": "*", + "masterPassword": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "excludeCharacters": "*" + }, + "roles": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "defaultRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "defaultDatabaseName": "*", + "logging": "*", + "removalPolicy": "RemovalPolicy", + "publiclyAccessible": "boolean", + "classicResizing": "boolean", + "elasticIp": "*", + "rebootForParameterChanges": "boolean", + "enhancedVpcRouting": "boolean", + "multiAz": "boolean", + "resourceAction": "ResourceAction", + "availabilityZoneRelocation": "boolean", + "maintenanceTrackName": "MaintenanceTrackName", + "addRotationSingleUser": [ + "*" + ], + "addRotationMultiUser": [ + "*", + { + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "automaticallyAfter": "*" + } + ], + "addToParameterGroup": [ + "*", + "*" + ], + "enableRebootForParameterChanges": [], + "addDefaultIamRole": [ + { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ], + "addIamRole": [ + { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + }, + "DatabaseSecret": { + "username": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "excludeCharacters": "*" + }, + "ClusterParameterGroup": { + "description": "*", + "parameters": "*", + "addParameter": [ + "*", + "*" + ] + }, + "ClusterSubnetGroup": { + "description": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "removalPolicy": "RemovalPolicy" + } + }, + "@aws-cdk.aws-route53resolver-alpha": { + "FirewallDomainList": { + "name": "*", + "domains": "*" + }, + "FirewallRuleGroupAssociation": { + "firewallRuleGroup": { + "firewallRuleGroupId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "mutationProtection": "boolean", + "name": "*", + "priority": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + } + }, + "FirewallRuleGroup": { + "name": "*", + "rules": { + "action": "*", + "firewallDomainList": { + "firewallDomainListId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "priority": "*" + }, + "addRule": [ + { + "action": "*", + "firewallDomainList": { + "firewallDomainListId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "priority": "*" + } + ], + "associate": [ + "*", + { + "mutationProtection": "boolean", + "name": "*", + "priority": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + } + } + ] + } + }, + "@aws-cdk.aws-s3objectlambda-alpha": { + "AccessPoint": { + "bucket": "*", + "handler": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "accessPointName": "*", + "cloudWatchMetricsEnabled": "boolean", + "supportsGetObjectRange": "boolean", + "supportsGetObjectPartNumber": "boolean", + "payload": "*" + } + }, + "@aws-cdk.aws-s3tables-alpha": { + "Namespace": { + "namespaceName": "*", + "tableBucket": { + "tableBucketArn": "*", + "tableBucketName": "*", + "account": "*", + "region": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "removalPolicy": "RemovalPolicy" + }, + "TableBucketPolicy": { + "tableBucket": { + "tableBucketArn": "*", + "tableBucketName": "*", + "account": "*", + "region": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "resourcePolicy": "*", + "removalPolicy": "RemovalPolicy" + }, + "TableBucket": { + "tableBucketName": "*", + "unreferencedFileRemoval": { + "noncurrentDays": "*", + "status": "UnreferencedFileRemovalStatus", + "unreferencedDays": "*" + }, + "region": "*", + "account": "*", + "encryption": "TableBucketEncryption", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "removalPolicy": "RemovalPolicy", + "requestMetricsStatus": "RequestMetricsStatus", + "storageClass": "StorageClass" + }, + "TablePolicy": { + "table": { + "tableArn": "*", + "tableName": "*", + "account": "*", + "region": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "resourcePolicy": "*", + "removalPolicy": "RemovalPolicy" + }, + "Table": { + "tableName": "*", + "namespace": { + "namespaceName": "*", + "tableBucket": { + "tableBucketArn": "*", + "tableBucketName": "*", + "account": "*", + "region": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "openTableFormat": "OpenTableFormat", + "compaction": { + "status": "Status", + "targetFileSizeMb": "*" + }, + "icebergMetadata": { + "icebergSchema": { + "schemaFieldList": { + "id": "*", + "name": "*", + "required": "boolean", + "type": "*" + } + }, + "icebergPartitionSpec": { + "fields": { + "sourceId": "*", + "transform": "*", + "name": "*", + "fieldId": "*" + }, + "specId": "*" + }, + "icebergSortOrder": { + "fields": { + "sourceId": "*", + "direction": "SortDirection", + "nullOrder": "NullOrder" + }, + "orderId": "*" + }, + "tableProperties": { + "key": "*", + "value": "*" + } + }, + "snapshotManagement": { + "maxSnapshotAgeHours": "*", + "minSnapshotsToKeep": "*", + "status": "Status" + }, + "removalPolicy": "RemovalPolicy", + "withoutMetadata": "boolean", + "storageClass": "StorageClass" + } + }, + "@aws-cdk.aws-sagemaker-alpha": { + "EndpointConfig": { + "endpointConfigName": "*", + "encryptionKey": "*", + "instanceProductionVariants": { + "acceleratorType": "*", + "initialInstanceCount": "*", + "instanceType": "*", + "containerStartupHealthCheckTimeout": "*", + "initialVariantWeight": "*", + "model": { + "modelArn": "*", + "modelName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "connections": "*" + }, + "variantName": "*" + }, + "serverlessProductionVariant": { + "maxConcurrency": "*", + "memorySizeInMB": "*", + "provisionedConcurrency": "*", + "initialVariantWeight": "*", + "model": { + "modelArn": "*", + "modelName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "connections": "*" + }, + "variantName": "*" + }, + "addInstanceProductionVariant": [ + { + "acceleratorType": "*", + "initialInstanceCount": "*", + "instanceType": "*", + "containerStartupHealthCheckTimeout": "*", + "initialVariantWeight": "*", + "model": { + "modelArn": "*", + "modelName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "connections": "*" + }, + "variantName": "*" + } + ], + "addServerlessProductionVariant": [ + { + "maxConcurrency": "*", + "memorySizeInMB": "*", + "provisionedConcurrency": "*", + "initialVariantWeight": "*", + "model": { + "modelArn": "*", + "modelName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "connections": "*" + }, + "variantName": "*" + } + ], + "_findInstanceProductionVariant": [ + "*" + ] + }, + "Endpoint": { + "endpointName": "*", + "endpointConfig": { + "endpointConfigArn": "*", + "endpointConfigName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "findInstanceProductionVariant": [ + "*" + ] + }, + "Model": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "modelName": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "containers": { + "image": "*", + "environment": "*", + "containerHostname": "*", + "modelData": "*" + }, + "allowAllOutbound": "boolean", + "networkIsolation": "boolean", + "addContainer": [ + { + "image": "*", + "environment": "*", + "containerHostname": "*", + "modelData": "*" + } + ] + }, + "Pipeline": { + "grantStartPipelineExecution": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + } + }, + "@aws-cdk.aws-servicecatalogappregistry-alpha": { + "Application": { + "applicationName": "*", + "description": "*" + }, + "AttributeGroup": { + "attributeGroupName": "*", + "description": "*", + "attributes": "*" + } + }, + "@aws-cdk.example-construct-library": { + "ExampleResource": { + "waitConditionHandleName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "removalPolicy": "RemovalPolicy" + } + }, + "aws-cdk-lib.aws-apigateway": { + "ApiKey": { + "resources": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "stages": { + "stageName": "*", + "restApi": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + } + }, + "customerId": "*", + "enabled": "boolean", + "generateDistinctId": "boolean", + "apiKeyName": "*", + "value": "*", + "description": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + }, + "RateLimitedApiKey": { + "apiStages": { + "api": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "throttle": { + "method": "*", + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + } + } + }, + "quota": { + "limit": "*", + "offset": "*", + "period": "Period" + }, + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + }, + "resources": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "stages": { + "stageName": "*", + "restApi": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + } + }, + "customerId": "*", + "enabled": "boolean", + "generateDistinctId": "boolean", + "apiKeyName": "*", + "value": "*", + "description": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + }, + "BasePathMapping": { + "domainName": "*", + "restApi": "*", + "basePath": "*", + "stage": "*", + "attachToStage": "boolean" + }, + "Deployment": { + "api": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "description": "*", + "retainDeployments": "boolean", + "stageName": "*", + "addToLogicalId": [ + "*" + ], + "_addMethodDependency": [ + "*" + ] + }, + "DomainName": { + "mapping": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "domainName": "*", + "certificate": "*", + "endpointType": "EndpointType", + "securityPolicy": "SecurityPolicy", + "endpointAccessMode": "EndpointAccessMode", + "mtls": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "key": "*", + "version": "*" + }, + "basePath": "*", + "addBasePathMapping": [ + "*", + { + "basePath": "*", + "stage": "*", + "attachToStage": "boolean" + } + ], + "addApiMapping": [ + "*", + { + "basePath": "*" + } + ] + }, + "GatewayResponse": { + "restApi": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "type": "*", + "statusCode": "*", + "responseHeaders": "*", + "templates": "*" + }, + "LambdaRestApi": { + "handler": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "integrationOptions": { + "proxy": "boolean", + "allowTestInvoke": "boolean", + "scopePermissionToMethod": "boolean", + "cacheKeyParameters": "*", + "cacheNamespace": "*", + "contentHandling": "ContentHandling", + "credentialsRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "credentialsPassthrough": "boolean", + "passthroughBehavior": "PassthroughBehavior", + "requestParameters": "*", + "requestTemplates": "*", + "timeout": "*", + "integrationResponses": { + "selectionPattern": "*", + "statusCode": "*", + "contentHandling": "ContentHandling", + "responseParameters": "*", + "responseTemplates": "*" + }, + "connectionType": "ConnectionType", + "vpcLink": { + "vpcLinkId": "*" + }, + "responseTransferMode": "ResponseTransferMode" + }, + "proxy": "boolean", + "options": { + "binaryMediaTypes": "*", + "minimumCompressionSize": "*", + "minCompressionSize": "*", + "cloneFrom": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "apiKeySourceType": "ApiKeySourceType", + "deploy": "boolean", + "deployOptions": { + "stageName": "*", + "accessLogDestination": "*", + "accessLogFormat": "*", + "tracingEnabled": "boolean", + "cacheClusterEnabled": "boolean", + "cacheClusterSize": "*", + "clientCertificateId": "*", + "description": "*", + "documentationVersion": "*", + "variables": "*", + "methodOptions": "*", + "metricsEnabled": "boolean", + "loggingLevel": "MethodLoggingLevel", + "dataTraceEnabled": "boolean", + "throttlingBurstLimit": "*", + "throttlingRateLimit": "*", + "cachingEnabled": "boolean", + "cacheDataEncrypted": "boolean" + }, + "retainDeployments": "boolean", + "restApiName": "*", + "parameters": "*", + "policy": "*", + "failOnWarnings": "boolean", + "domainName": { + "domainName": "*", + "certificate": "*", + "endpointType": "EndpointType", + "securityPolicy": "SecurityPolicy", + "endpointAccessMode": "EndpointAccessMode", + "mtls": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*" + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "key": "*", + "version": "*" + }, + "basePath": "*" + }, + "cloudWatchRole": "boolean", + "cloudWatchRoleRemovalPolicy": "RemovalPolicy", + "endpointExportName": "*", + "endpointTypes": "EndpointType", + "endpointConfiguration": { + "types": "EndpointType", + "vpcEndpoints": { + "vpcEndpointId": "*" + }, + "ipAddressType": "IpAddressType" + }, + "disableExecuteApiEndpoint": "boolean", + "description": "*" + }, + "binaryMediaTypes": "*", + "minimumCompressionSize": "*", + "minCompressionSize": "*", + "cloneFrom": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "apiKeySourceType": "ApiKeySourceType", + "deploy": "boolean", + "deployOptions": { + "stageName": "*", + "accessLogDestination": "*", + "accessLogFormat": "*", + "tracingEnabled": "boolean", + "cacheClusterEnabled": "boolean", + "cacheClusterSize": "*", + "clientCertificateId": "*", + "description": "*", + "documentationVersion": "*", + "variables": "*", + "methodOptions": "*", + "metricsEnabled": "boolean", + "loggingLevel": "MethodLoggingLevel", + "dataTraceEnabled": "boolean", + "throttlingBurstLimit": "*", + "throttlingRateLimit": "*", + "cachingEnabled": "boolean", + "cacheTtl": "*", + "cacheDataEncrypted": "boolean" + }, + "retainDeployments": "boolean", + "restApiName": "*", + "parameters": "*", + "policy": "*", + "failOnWarnings": "boolean", + "domainName": { + "domainName": "*", + "certificate": "*", + "endpointType": "EndpointType", + "securityPolicy": "SecurityPolicy", + "endpointAccessMode": "EndpointAccessMode", + "mtls": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "key": "*", + "version": "*" + }, + "basePath": "*" + }, + "cloudWatchRole": "boolean", + "cloudWatchRoleRemovalPolicy": "RemovalPolicy", + "endpointExportName": "*", + "endpointTypes": "EndpointType", + "endpointConfiguration": { + "types": "EndpointType", + "vpcEndpoints": { + "vpcEndpointId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "ipAddressType": "IpAddressType" + }, + "disableExecuteApiEndpoint": "boolean", + "description": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + }, + "Method": { + "resource": { + "restApi": "*", + "api": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*" + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + }, + "httpMethod": "*", + "integration": "*", + "options": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "addMethodResponse": [ + { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + } + ], + "metric": [ + "*", + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricClientError": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricServerError": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricCacheHitCount": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricCacheMissCount": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricCount": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricIntegrationLatency": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricLatency": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "grantExecute": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "Model": { + "restApi": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "contentType": "*", + "description": "*", + "modelName": "*", + "schema": { + "schema": "JsonSchemaVersion", + "id": "*", + "ref": "*", + "type": "JsonSchemaType", + "title": "*", + "description": "*", + "enum": "*", + "default": "*", + "format": "*", + "definitions": "*", + "multipleOf": "*", + "maximum": "*", + "exclusiveMaximum": "boolean", + "minimum": "*", + "exclusiveMinimum": "boolean", + "maxLength": "*", + "minLength": "*", + "pattern": "*", + "additionalItems": "boolean", + "maxItems": "*", + "minItems": "*", + "uniqueItems": "boolean", + "maxProperties": "*", + "minProperties": "*", + "required": "*", + "properties": "*", + "additionalProperties": "boolean", + "patternProperties": "*", + "dependencies": "*" + } + }, + "RequestValidator": { + "restApi": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + }, + "Resource": { + "parent": { + "restApi": "*", + "api": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*" + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + }, + "pathPart": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + }, + "ProxyResource": { + "parent": { + "restApi": "*", + "api": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*" + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + }, + "anyMethod": "boolean", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + }, + "addMethod": [ + "*", + "*", + { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + } + ] + }, + "SpecRestApi": { + "apiDefinition": "*", + "binaryMediaTypes": "*", + "minCompressionSize": "*", + "mode": "RestApiMode", + "deploy": "boolean", + "deployOptions": { + "stageName": "*", + "accessLogDestination": "*", + "accessLogFormat": "*", + "tracingEnabled": "boolean", + "cacheClusterEnabled": "boolean", + "cacheClusterSize": "*", + "clientCertificateId": "*", + "description": "*", + "documentationVersion": "*", + "variables": "*", + "methodOptions": "*", + "metricsEnabled": "boolean", + "loggingLevel": "MethodLoggingLevel", + "dataTraceEnabled": "boolean", + "throttlingBurstLimit": "*", + "throttlingRateLimit": "*", + "cachingEnabled": "boolean", + "cacheTtl": "*", + "cacheDataEncrypted": "boolean" + }, + "retainDeployments": "boolean", + "restApiName": "*", + "parameters": "*", + "policy": "*", + "failOnWarnings": "boolean", + "domainName": { + "domainName": "*", + "certificate": "*", + "endpointType": "EndpointType", + "securityPolicy": "SecurityPolicy", + "endpointAccessMode": "EndpointAccessMode", + "mtls": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "key": "*", + "version": "*" + }, + "basePath": "*" + }, + "cloudWatchRole": "boolean", + "cloudWatchRoleRemovalPolicy": "RemovalPolicy", + "endpointExportName": "*", + "endpointTypes": "EndpointType", + "endpointConfiguration": { + "types": "EndpointType", + "vpcEndpoints": { + "vpcEndpointId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "ipAddressType": "IpAddressType" + }, + "disableExecuteApiEndpoint": "boolean", + "description": "*", + "addToResourcePolicy": [ + "*" + ] + }, + "RestApi": { + "binaryMediaTypes": "*", + "minimumCompressionSize": "*", + "minCompressionSize": "*", + "cloneFrom": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "apiKeySourceType": "ApiKeySourceType", + "deploy": "boolean", + "deployOptions": { + "stageName": "*", + "accessLogDestination": "*", + "accessLogFormat": "*", + "tracingEnabled": "boolean", + "cacheClusterEnabled": "boolean", + "cacheClusterSize": "*", + "clientCertificateId": "*", + "description": "*", + "documentationVersion": "*", + "variables": "*", + "methodOptions": "*", + "metricsEnabled": "boolean", + "loggingLevel": "MethodLoggingLevel", + "dataTraceEnabled": "boolean", + "throttlingBurstLimit": "*", + "throttlingRateLimit": "*", + "cachingEnabled": "boolean", + "cacheTtl": "*", + "cacheDataEncrypted": "boolean" + }, + "retainDeployments": "boolean", + "restApiName": "*", + "parameters": "*", + "policy": "*", + "failOnWarnings": "boolean", + "domainName": { + "domainName": "*", + "certificate": "*", + "endpointType": "EndpointType", + "securityPolicy": "SecurityPolicy", + "endpointAccessMode": "EndpointAccessMode", + "mtls": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "key": "*", + "version": "*" + }, + "basePath": "*" + }, + "cloudWatchRole": "boolean", + "cloudWatchRoleRemovalPolicy": "RemovalPolicy", + "endpointExportName": "*", + "endpointTypes": "EndpointType", + "endpointConfiguration": { + "types": "EndpointType", + "vpcEndpoints": { + "vpcEndpointId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "ipAddressType": "IpAddressType" + }, + "disableExecuteApiEndpoint": "boolean", + "description": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + }, + "addToResourcePolicy": [ + "*" + ], + "addModel": [ + "*", + { + "contentType": "*", + "description": "*", + "modelName": "*", + "schema": { + "schema": "JsonSchemaVersion", + "id": "*", + "ref": "*", + "type": "JsonSchemaType", + "title": "*", + "description": "*", + "enum": "*", + "default": "*", + "format": "*", + "definitions": "*", + "multipleOf": "*", + "maximum": "*", + "exclusiveMaximum": "boolean", + "minimum": "*", + "exclusiveMinimum": "boolean", + "maxLength": "*", + "minLength": "*", + "pattern": "*", + "additionalItems": "boolean", + "maxItems": "*", + "minItems": "*", + "uniqueItems": "boolean", + "maxProperties": "*", + "minProperties": "*", + "required": "*", + "properties": "*", + "additionalProperties": "boolean", + "patternProperties": "*", + "dependencies": "*" + } + } + ], + "addRequestValidator": [ + "*", + { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + ], + "_attachMethod": [ + "*" + ], + "_attachDeployment": [ + "*" + ] + }, + "RootResource": {}, + "Stage": { + "deployment": "*", + "stageName": "*", + "accessLogDestination": "*", + "accessLogFormat": "*", + "tracingEnabled": "boolean", + "cacheClusterEnabled": "boolean", + "cacheClusterSize": "*", + "clientCertificateId": "*", + "description": "*", + "documentationVersion": "*", + "variables": "*", + "methodOptions": "*", + "metricsEnabled": "boolean", + "loggingLevel": "MethodLoggingLevel", + "dataTraceEnabled": "boolean", + "throttlingBurstLimit": "*", + "throttlingRateLimit": "*", + "cachingEnabled": "boolean", + "cacheTtl": "*", + "cacheDataEncrypted": "boolean" + }, + "StepFunctionsRestApi": { + "stateMachine": { + "stateMachineArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "requestContext": { + "accountId": "boolean", + "apiId": "boolean", + "apiKey": "boolean", + "authorizerPrincipalId": "boolean", + "caller": "boolean", + "cognitoAuthenticationProvider": "boolean", + "cognitoAuthenticationType": "boolean", + "cognitoIdentityId": "boolean", + "cognitoIdentityPoolId": "boolean", + "httpMethod": "boolean", + "stage": "boolean", + "sourceIp": "boolean", + "user": "boolean", + "userAgent": "boolean", + "userArn": "boolean", + "requestId": "boolean", + "resourceId": "boolean", + "resourcePath": "boolean" + }, + "querystring": "boolean", + "path": "boolean", + "headers": "boolean", + "authorizer": "boolean", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "useDefaultMethodResponses": "boolean", + "binaryMediaTypes": "*", + "minimumCompressionSize": "*", + "minCompressionSize": "*", + "cloneFrom": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "apiKeySourceType": "ApiKeySourceType", + "deploy": "boolean", + "deployOptions": { + "stageName": "*", + "accessLogDestination": "*", + "accessLogFormat": "*", + "tracingEnabled": "boolean", + "cacheClusterEnabled": "boolean", + "cacheClusterSize": "*", + "clientCertificateId": "*", + "description": "*", + "documentationVersion": "*", + "variables": "*", + "methodOptions": "*", + "metricsEnabled": "boolean", + "loggingLevel": "MethodLoggingLevel", + "dataTraceEnabled": "boolean", + "throttlingBurstLimit": "*", + "throttlingRateLimit": "*", + "cachingEnabled": "boolean", + "cacheTtl": "*", + "cacheDataEncrypted": "boolean" + }, + "retainDeployments": "boolean", + "restApiName": "*", + "parameters": "*", + "policy": "*", + "failOnWarnings": "boolean", + "domainName": { + "domainName": "*", + "certificate": "*", + "endpointType": "EndpointType", + "securityPolicy": "SecurityPolicy", + "endpointAccessMode": "EndpointAccessMode", + "mtls": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "key": "*", + "version": "*" + }, + "basePath": "*" + }, + "cloudWatchRole": "boolean", + "cloudWatchRoleRemovalPolicy": "RemovalPolicy", + "endpointExportName": "*", + "endpointTypes": "EndpointType", + "endpointConfiguration": { + "types": "EndpointType", + "vpcEndpoints": { + "vpcEndpointId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "ipAddressType": "IpAddressType" + }, + "disableExecuteApiEndpoint": "boolean", + "description": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + }, + "UsagePlan": { + "apiStages": { + "api": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "throttle": { + "method": "*", + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + } + } + }, + "description": "*", + "quota": { + "limit": "*", + "offset": "*", + "period": "Period" + }, + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + }, + "name": "*", + "apiKey": { + "keyId": "*", + "keyArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "addApiStage": [ + { + "api": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "throttle": { + "method": "*", + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + } + } + } + ] + }, + "VpcLink": { + "vpcLinkName": "*", + "description": "*", + "targets": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "metrics": "*", + "securityGroups": "*", + "ipAddressType": "IpAddressType", + "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*", + "loadBalancerCanonicalHostedZoneId": "*", + "loadBalancerDnsName": "*", + "loadBalancerArn": "*", + "connections": "*" + }, + "addTargets": [ + { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "metrics": "*", + "securityGroups": "*", + "ipAddressType": "IpAddressType", + "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*", + "loadBalancerCanonicalHostedZoneId": "*", + "loadBalancerDnsName": "*", + "loadBalancerArn": "*", + "connections": "*" + } + ] + } + }, + "aws-cdk-lib.aws-appconfig": { + "Application": { + "applicationName": "*", + "description": "*" + }, + "DeploymentStrategy": { + "rolloutStrategy": "*", + "deploymentStrategyName": "*", + "description": "*" + }, + "Environment": { + "application": { + "description": "*", + "name": "*", + "applicationId": "*", + "applicationArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "environmentName": "*", + "description": "*", + "monitors": "*", + "deletionProtectionCheck": "DeletionProtectionCheck" + }, + "Extension": { + "actions": "*", + "extensionName": "*", + "description": "*", + "latestVersionNumber": "*", + "parameters": "*" + } + }, + "aws-cdk-lib.aws-applicationautoscaling": { + "ScalableTarget": { + "minCapacity": "*", + "maxCapacity": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "resourceId": "*", + "scalableDimension": "*", + "serviceNamespace": "ServiceNamespace", + "addToRolePolicy": [ + "*" + ], + "scaleOnSchedule": [ + "*", + { + "schedule": "*", + "startTime": "*", + "minCapacity": "*", + "maxCapacity": "*", + "timeZone": "*" + } + ], + "scaleOnMetric": [ + "*", + { + "metric": { + "warnings": "*", + "warningsV2": "*" + }, + "scalingSteps": { + "lower": "*", + "upper": "*", + "change": "*" + }, + "adjustmentType": "AdjustmentType", + "cooldown": "*", + "minAdjustmentMagnitude": "*", + "evaluationPeriods": "*", + "datapointsToAlarm": "*", + "metricAggregationType": "MetricAggregationType" + } + ], + "scaleToTrackMetric": [ + "*", + { + "targetValue": "*", + "predefinedMetric": "PredefinedMetric", + "resourceLabel": "*", + "customMetric": { + "warnings": "*", + "warningsV2": "*" + }, + "policyName": "*", + "disableScaleIn": "boolean", + "scaleInCooldown": "*" + } + ] + } + }, + "aws-cdk-lib.aws-appmesh": { + "GatewayRoute": { + "virtualGateway": { + "virtualGatewayName": "*", + "virtualGatewayArn": "*", + "mesh": { + "meshName": "*", + "meshArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "gatewayRouteName": "*", + "routeSpec": "*" + }, + "Mesh": { + "meshName": "*", + "egressFilter": "MeshFilterType", + "serviceDiscovery": { + "ipPreference": "IpPreference" + } + }, + "Route": { + "mesh": { + "meshName": "*", + "meshArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "virtualRouter": { + "virtualRouterName": "*", + "virtualRouterArn": "*", + "mesh": { + "meshName": "*", + "meshArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "routeName": "*", + "routeSpec": "*" + }, + "VirtualGateway": { + "mesh": { + "meshName": "*", + "meshArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "virtualGatewayName": "*", + "listeners": "*", + "accessLog": "*", + "backendDefaults": { + "tlsClientPolicy": { + "enforce": "boolean", + "ports": "*", + "validation": { + "trust": "*", + "subjectAlternativeNames": "*" + }, + "mutualTlsCertificate": "*" + } + } + }, + "VirtualNode": { + "mesh": { + "meshName": "*", + "meshArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "virtualNodeName": "*", + "serviceDiscovery": "*", + "backends": "*", + "listeners": "*", + "accessLog": "*", + "backendDefaults": { + "tlsClientPolicy": { + "enforce": "boolean", + "ports": "*", + "validation": { + "trust": "*", + "subjectAlternativeNames": "*" + }, + "mutualTlsCertificate": "*" + } + }, + "addListener": [ + "*" + ], + "addBackend": [ + "*" + ] + }, + "VirtualRouter": { + "mesh": { + "meshName": "*", + "meshArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "listeners": "*", + "virtualRouterName": "*" + }, + "VirtualService": { + "virtualServiceName": "*", + "virtualServiceProvider": "*" + } + }, + "aws-cdk-lib.aws-appsync": { + "AppsyncFunction": { + "api": { + "apiId": "*", + "arn": "*", + "graphQLEndpointArn": "*", + "visibility": "Visibility", + "modes": "AuthorizationType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "dataSource": "*", + "name": "*", + "description": "*", + "requestMappingTemplate": "*", + "responseMappingTemplate": "*", + "runtime": "*", + "code": "*", + "maxBatchSize": "*" + }, + "ChannelNamespace": { + "api": { + "authProviderTypes": "AppSyncAuthorizationType", + "httpDns": "*", + "realtimeDns": "*", + "apiId": "*", + "apiArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "channelNamespaceName": "*", + "code": "*", + "publishHandlerConfig": { + "direct": "boolean", + "dataSource": "*", + "lambdaInvokeType": "LambdaInvokeType" + }, + "subscribeHandlerConfig": { + "direct": "boolean", + "dataSource": "*", + "lambdaInvokeType": "LambdaInvokeType" + }, + "authorizationConfig": { + "publishAuthModeTypes": "AppSyncAuthorizationType", + "subscribeAuthModeTypes": "AppSyncAuthorizationType" + }, + "grantSubscribe": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantPublish": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantPublishAndSubscribe": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "EventApi": { + "apiName": "*", + "authorizationConfig": { + "authProviders": { + "authorizationType": "AppSyncAuthorizationType", + "cognitoConfig": { + "userPool": { + "userPoolId": "*", + "userPoolArn": "*", + "userPoolProviderName": "*", + "identityProviders": { + "providerName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "appIdClientRegex": "*" + }, + "apiKeyConfig": { + "name": "*", + "description": "*", + "expires": "*" + }, + "openIdConnectConfig": { + "tokenExpiryFromAuth": "*", + "tokenExpiryFromIssue": "*", + "clientId": "*", + "oidcProvider": "*" + }, + "lambdaAuthorizerConfig": { + "handler": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "resultsCacheTtl": "*", + "validationRegex": "*" + } + }, + "connectionAuthModeTypes": "AppSyncAuthorizationType", + "defaultPublishAuthModeTypes": "AppSyncAuthorizationType", + "defaultSubscribeAuthModeTypes": "AppSyncAuthorizationType" + }, + "logConfig": { + "excludeVerboseContent": "boolean", + "fieldLogLevel": "AppSyncFieldLogLevel", + "role": "*", + "retention": "RetentionDays" + }, + "ownerContact": "*", + "domainName": { + "certificate": "*", + "domainName": "*" + } + }, + "GraphqlApi": { + "name": "*", + "authorizationConfig": { + "defaultAuthorization": { + "authorizationType": "AuthorizationType", + "userPoolConfig": { + "userPool": { + "userPoolId": "*", + "userPoolArn": "*", + "userPoolProviderName": "*", + "identityProviders": { + "providerName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "appIdClientRegex": "*", + "defaultAction": "UserPoolDefaultAction" + }, + "apiKeyConfig": { + "name": "*", + "description": "*", + "expires": "*" + }, + "openIdConnectConfig": { + "tokenExpiryFromAuth": "*", + "tokenExpiryFromIssue": "*", + "clientId": "*", + "oidcProvider": "*" + }, + "lambdaAuthorizerConfig": { + "handler": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "resultsCacheTtl": "*", + "validationRegex": "*" + } + } + }, + "logConfig": { + "excludeVerboseContent": "boolean", + "fieldLogLevel": "FieldLogLevel", + "role": "*", + "retention": "RetentionDays" + }, + "definition": "*", + "schema": "*", + "xrayEnabled": "boolean", + "visibility": "Visibility", + "domainName": { + "certificate": "*", + "domainName": "*" + }, + "introspectionConfig": "IntrospectionConfig", + "queryDepthLimit": "*", + "resolverCountLimit": "*", + "environmentVariables": "*", + "ownerContact": "*", + "enhancedMetricsConfig": { + "dataSourceLevelMetricsBehavior": "DataSourceLevelMetricsBehavior", + "operationLevelMetricsConfig": "OperationLevelMetricsConfig", + "resolverLevelMetricsBehavior": "ResolverLevelMetricsBehavior" + }, + "addSchemaDependency": [ + "*" + ], + "addEnvironmentVariable": [ + "*", + "*" + ] + }, + "SourceApiAssociation": { + "sourceApi": { + "apiId": "*", + "arn": "*", + "graphQLEndpointArn": "*", + "visibility": "Visibility", + "modes": "AuthorizationType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "mergedApi": { + "apiId": "*", + "arn": "*", + "graphQLEndpointArn": "*", + "visibility": "Visibility", + "modes": "AuthorizationType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "mergedApiExecutionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "mergeType": "MergeType", + "description": "*" + } + }, + "aws-cdk-lib.aws-autoscaling": { + "AutoScalingGroup": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "launchTemplate": { + "versionNumber": "*", + "launchTemplateId": "*", + "launchTemplateName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "migrateToLaunchTemplate": "boolean", + "mixedInstancesPolicy": { + "instancesDistribution": { + "onDemandAllocationStrategy": "OnDemandAllocationStrategy", + "onDemandBaseCapacity": "*", + "onDemandPercentageAboveBaseCapacity": "*", + "spotAllocationStrategy": "SpotAllocationStrategy", + "spotInstancePools": "*", + "spotMaxPrice": "*" + }, + "launchTemplate": { + "versionNumber": "*", + "launchTemplateId": "*", + "launchTemplateName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "launchTemplateOverrides": { + "instanceRequirements": "*", + "instanceType": "*", + "weightedCapacity": "*" + } + }, + "instanceType": "*", + "machineImage": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "userData": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "init": "*", + "initOptions": { + "configSets": "*", + "embedFingerprint": "boolean", + "printLog": "boolean", + "ignoreFailures": "boolean", + "includeUrl": "boolean", + "includeRole": "boolean" + }, + "requireImdsv2": "boolean", + "maxHealthyPercentage": "*", + "minHealthyPercentage": "*", + "minCapacity": "*", + "maxCapacity": "*", + "desiredCapacity": "*", + "keyName": "*", + "keyPair": { + "keyPairName": "*", + "type": "KeyPairType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "notificationsTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "notifications": { + "topic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "scalingEvents": "*" + }, + "allowAllOutbound": "boolean", + "updateType": "UpdateType", + "rollingUpdateConfiguration": { + "maxBatchSize": "*", + "minInstancesInService": "*", + "minSuccessfulInstancesPercent": "*", + "pauseTime": "*", + "waitOnResourceSignals": "boolean", + "suspendProcesses": "ScalingProcess" + }, + "replacingUpdateMinSuccessfulInstancesPercent": "*", + "ignoreUnmodifiedSizeProperties": "boolean", + "resourceSignalCount": "*", + "resourceSignalTimeout": "*", + "cooldown": "*", + "associatePublicIpAddress": "boolean", + "spotPrice": "*", + "healthCheck": "*", + "healthChecks": "*", + "blockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "maxInstanceLifetime": "*", + "instanceMonitoring": "Monitoring", + "groupMetrics": "*", + "signals": "*", + "updatePolicy": "*", + "newInstancesProtectedFromScaleIn": "boolean", + "autoScalingGroupName": "*", + "terminationPolicies": "TerminationPolicy", + "terminationPolicyCustomLambdaFunctionArn": "*", + "defaultInstanceWarmup": "*", + "capacityRebalance": "boolean", + "ssmSessionPermissions": "boolean", + "azCapacityDistributionStrategy": "CapacityDistributionStrategy", + "deletionProtection": "DeletionProtection", + "instanceLifecyclePolicy": { + "retentionTriggers": { + "terminateHookAbandon": "TerminateHookAbandonAction" + } + }, + "addSecurityGroup": [ + { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + ], + "attachToClassicLB": [ + "*" + ], + "attachToApplicationTargetGroup": [ + { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*" + } + ], + "attachToNetworkTargetGroup": [ + { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*", + "isNetworkTargetGroup": "boolean" + } + ], + "addUserData": [ + "*" + ], + "addToRolePolicy": [ + "*" + ], + "applyCloudFormationInit": [ + "*", + { + "configSets": "*", + "embedFingerprint": "boolean", + "printLog": "boolean", + "ignoreFailures": "boolean", + "includeUrl": "boolean", + "includeRole": "boolean" + } + ], + "protectNewInstancesFromScaleIn": [], + "areNewInstancesProtectedFromScaleIn": [] + }, + "LifecycleHook": { + "autoScalingGroup": "*", + "lifecycleHookName": "*", + "defaultResult": "DefaultResult", + "heartbeatTimeout": "*", + "lifecycleTransition": "LifecycleTransition", + "notificationMetadata": "*", + "notificationTarget": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "ScheduledAction": { + "autoScalingGroup": "*", + "timeZone": "*", + "schedule": "*", + "startTime": "*", + "endTime": "*", + "minCapacity": "*", + "maxCapacity": "*", + "desiredCapacity": "*" + }, + "WarmPool": { + "autoScalingGroup": "*", + "reuseOnScaleIn": "boolean", + "maxGroupPreparedCapacity": "*", + "minSize": "*", + "poolState": "PoolState" + } + }, + "aws-cdk-lib.aws-backup": { + "BackupPlan": { + "backupPlanName": "*", + "backupVault": "*", + "backupPlanRules": "*", + "windowsVss": "boolean", + "addRule": [ + "*" + ], + "addSelection": [ + "*", + { + "resources": "*", + "backupSelectionName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "disableDefaultBackupPolicy": "boolean", + "allowRestores": "boolean" + } + ] + }, + "BackupSelection": { + "backupPlan": "*", + "resources": "*", + "backupSelectionName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "disableDefaultBackupPolicy": "boolean", + "allowRestores": "boolean" + }, + "BackupVault": { + "backupVaultName": "*", + "accessPolicy": "*", + "encryptionKey": "*", + "notificationTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "notificationEvents": "BackupVaultEvents", + "removalPolicy": "RemovalPolicy", + "blockRecoveryPointDeletion": [], + "lockConfiguration": { + "minRetention": "*" + }, + "addToAccessPolicy": [ + "*" + ] + } + }, + "aws-cdk-lib.aws-batch": { + "ConsumableResource": { + "consumableResourceName": "*", + "resourceType": "ConsumableResourceType", + "totalQuantity": "*", + "tags": "*" + }, + "EcsJobDefinition": { + "container": { + "image": "*", + "cpu": "*", + "memory": "*", + "command": "*", + "environment": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "linuxParameters": "*", + "logDriverConfig": { + "logDriver": "*", + "options": "*", + "secretOptions": "*" + }, + "readonlyRootFilesystem": "boolean", + "secrets": "*", + "user": "*", + "volumes": "*", + "enableExecuteCommand": "boolean" + }, + "propagateTags": "boolean", + "jobDefinitionName": "*", + "parameters": "*", + "retryAttempts": "*", + "retryStrategies": "*", + "schedulingPriority": "*", + "timeout": "*", + "skipDeregisterOnUpdate": "boolean", + "grantSubmitJob": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ] + }, + "EksJobDefinition": { + "container": "*", + "dnsPolicy": "DnsPolicy", + "useHostNetwork": "boolean", + "serviceAccount": "*", + "jobDefinitionName": "*", + "parameters": "*", + "retryAttempts": "*", + "retryStrategies": "*", + "schedulingPriority": "*", + "timeout": "*", + "skipDeregisterOnUpdate": "boolean" + }, + "JobQueue": {}, + "ManagedEc2EcsComputeEnvironment": { + "defaultInstanceClasses": "DefaultInstanceClass", + "useOptimalInstanceClasses": "boolean", + "images": { + "imageType": "EcsMachineImageType", + "image": "*" + }, + "allocationStrategy": "AllocationStrategy", + "spotBidPercentage": "*", + "spotFleetRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "instanceRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "launchTemplate": { + "versionNumber": "*", + "launchTemplateId": "*", + "launchTemplateName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "minvCpus": "*", + "placementGroup": "*", + "instanceTypes": "*", + "instanceClasses": "InstanceClass", + "maxvCpus": "*", + "replaceComputeEnvironment": "boolean", + "spot": "boolean", + "updateTimeout": "*", + "terminateOnUpdate": "boolean", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "updateToLatestImageVersion": "boolean", + "computeEnvironmentName": "*", + "serviceRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enabled": "boolean" + }, + "ManagedEc2EksComputeEnvironment": { + "kubernetesNamespace": "*", + "eksCluster": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clusterName": "*", + "clusterArn": "*", + "clusterEndpoint": "*", + "clusterCertificateAuthorityData": "*", + "clusterSecurityGroupId": "*", + "clusterSecurityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "clusterEncryptionConfigKeyArn": "*", + "openIdConnectProvider": { + "openIdConnectProviderArn": "*", + "openIdConnectProviderIssuer": "*" + }, + "eksPodIdentityAgent": { + "addonName": "*", + "addonArn": "*" + }, + "kubectlRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "kubectlEnvironment": "*", + "kubectlLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "ipFamily": "IpFamily", + "kubectlProvider": { + "serviceToken": "*", + "roleArn": "*" + }, + "kubectlMemory": "*", + "prune": "boolean", + "authenticationMode": "AuthenticationMode" + }, + "defaultInstanceClasses": "DefaultInstanceClass", + "useOptimalInstanceClasses": "boolean", + "images": { + "imageType": "EksMachineImageType", + "image": "*" + }, + "allocationStrategy": "AllocationStrategy", + "spotBidPercentage": "*", + "instanceRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "launchTemplate": { + "versionNumber": "*", + "launchTemplateId": "*", + "launchTemplateName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "minvCpus": "*", + "placementGroup": "*", + "instanceTypes": "*", + "instanceClasses": "InstanceClass", + "maxvCpus": "*", + "replaceComputeEnvironment": "boolean", + "spot": "boolean", + "updateTimeout": "*", + "terminateOnUpdate": "boolean", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "updateToLatestImageVersion": "boolean", + "computeEnvironmentName": "*", + "serviceRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enabled": "boolean" + }, + "FargateComputeEnvironment": { + "maxvCpus": "*", + "replaceComputeEnvironment": "boolean", + "spot": "boolean", + "updateTimeout": "*", + "terminateOnUpdate": "boolean", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "updateToLatestImageVersion": "boolean", + "computeEnvironmentName": "*", + "serviceRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enabled": "boolean" + }, + "MultiNodeJobDefinition": { + "addContainer": [ + { + "startNode": "*", + "endNode": "*", + "container": { + "image": "*", + "cpu": "*", + "memory": "*", + "command": "*", + "environment": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "linuxParameters": "*", + "logDriverConfig": { + "logDriver": "*", + "options": "*", + "secretOptions": "*" + }, + "readonlyRootFilesystem": "boolean", + "secrets": "*", + "user": "*", + "volumes": "*", + "enableExecuteCommand": "boolean" + } + } + ] + }, + "FairshareSchedulingPolicy": { + "addShare": [ + { + "shareIdentifier": "*", + "weightFactor": "*" + } + ] + }, + "UnmanagedComputeEnvironment": {} + }, + "aws-cdk-lib.aws-certificatemanager": { + "Certificate": { + "domainName": "*", + "subjectAlternativeNames": "*", + "validationDomains": "*", + "validationMethod": "ValidationMethod", + "validation": "*", + "allowExport": "boolean", + "transparencyLoggingEnabled": "boolean", + "certificateName": "*", + "keyAlgorithm": "*" + }, + "DnsValidatedCertificate": { + "hostedZone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "region": "*", + "route53Endpoint": "*", + "customResourceRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cleanupRoute53Records": "boolean", + "domainName": "*", + "subjectAlternativeNames": "*", + "validationDomains": "*", + "validationMethod": "ValidationMethod", + "validation": "*", + "allowExport": "boolean", + "transparencyLoggingEnabled": "boolean", + "certificateName": "*", + "keyAlgorithm": "*", + "applyRemovalPolicy": [ + "RemovalPolicy" + ] + }, + "PrivateCertificate": { + "domainName": "*", + "subjectAlternativeNames": "*", + "certificateAuthority": "*", + "keyAlgorithm": "*", + "allowExport": "boolean" + } + }, + "aws-cdk-lib.aws-chatbot": { + "SlackChannelConfiguration": { + "slackChannelConfigurationName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "slackWorkspaceId": "*", + "slackChannelId": "*", + "notificationTopics": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "loggingLevel": "LoggingLevel", + "logRetention": "RetentionDays", + "logRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logRetentionRetryOptions": { + "maxRetries": "*", + "base": "*" + }, + "guardrailPolicies": { + "managedPolicyArn": "*" + }, + "userRoleRequired": "boolean", + "addNotificationTopic": [ + { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + } + ] + } + }, + "aws-cdk-lib.aws-cloudformation": { + "CustomResource": { + "provider": "*", + "properties": "*", + "resourceType": "*", + "removalPolicy": "RemovalPolicy" + } + }, + "aws-cdk-lib.aws-cloudfront": { + "CachePolicy": { + "cachePolicyName": "*", + "comment": "*", + "defaultTtl": "*", + "minTtl": "*", + "maxTtl": "*", + "cookieBehavior": "*", + "headerBehavior": "*", + "queryStringBehavior": "*", + "enableAcceptEncodingGzip": "boolean", + "enableAcceptEncodingBrotli": "boolean" + }, + "Distribution": { + "defaultBehavior": { + "origin": "*", + "allowedMethods": "*", + "cachedMethods": "*", + "cachePolicy": "*", + "compress": "boolean", + "originRequestPolicy": "*", + "realtimeLogConfig": "*", + "responseHeadersPolicy": "*", + "smoothStreaming": "boolean", + "viewerProtocolPolicy": "ViewerProtocolPolicy", + "functionAssociations": { + "function": "*", + "eventType": "FunctionEventType" + }, + "edgeLambdas": { + "functionVersion": { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + }, + "eventType": "LambdaEdgeEventType", + "includeBody": "boolean" + }, + "trustedKeyGroups": "*", + "enableGrpc": "boolean" + }, + "additionalBehaviors": "*", + "certificate": "*", + "comment": "*", + "defaultRootObject": "*", + "domainNames": "*", + "enabled": "boolean", + "enableIpv6": "boolean", + "enableLogging": "boolean", + "geoRestriction": "*", + "httpVersion": "HttpVersion", + "logBucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "logIncludesCookies": "boolean", + "logFilePrefix": "*", + "priceClass": "PriceClass", + "webAclId": "*", + "errorResponses": { + "ttl": "*", + "httpStatus": "*", + "responseHttpStatus": "*", + "responsePagePath": "*" + }, + "minimumProtocolVersion": "SecurityPolicyProtocol", + "sslSupportMethod": "SSLMethod", + "publishAdditionalMetrics": "boolean", + "metric": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricRequests": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricBytesUploaded": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricBytesDownloaded": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricTotalErrorRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metric4xxErrorRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metric5xxErrorRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricOriginLatency": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricCacheHitRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metric401ErrorRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metric403ErrorRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metric404ErrorRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metric502ErrorRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metric503ErrorRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metric504ErrorRate": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "addBehavior": [ + "*", + "*", + { + "allowedMethods": "*", + "cachedMethods": "*", + "cachePolicy": "*", + "compress": "boolean", + "originRequestPolicy": "*", + "realtimeLogConfig": "*", + "responseHeadersPolicy": "*", + "smoothStreaming": "boolean", + "viewerProtocolPolicy": "ViewerProtocolPolicy", + "functionAssociations": { + "function": "*", + "eventType": "FunctionEventType" + }, + "edgeLambdas": { + "functionVersion": { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + }, + "eventType": "LambdaEdgeEventType", + "includeBody": "boolean" + }, + "trustedKeyGroups": "*", + "enableGrpc": "boolean" + } + ], + "grant": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ], + "grantCreateInvalidation": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "attachWebAclId": [ + "*" + ] + }, + "Function": { + "functionName": "*", + "comment": "*", + "code": "*", + "runtime": "*", + "keyValueStore": "*", + "autoPublish": "boolean" + }, + "KeyGroup": { + "keyGroupName": "*", + "comment": "*", + "items": "*" + }, + "KeyValueStore": {}, + "S3OriginAccessControl": { + "description": "*", + "originAccessControlName": "*", + "signing": "*" + }, + "FunctionUrlOriginAccessControl": { + "description": "*", + "originAccessControlName": "*", + "signing": "*" + }, + "MediaPackageV2OriginAccessControl": { + "description": "*", + "originAccessControlName": "*", + "signing": "*" + }, + "OriginAccessIdentity": {}, + "OriginRequestPolicy": { + "originRequestPolicyName": "*", + "comment": "*", + "cookieBehavior": "*", + "headerBehavior": "*", + "queryStringBehavior": "*" + }, + "PublicKey": { + "publicKeyName": "*", + "comment": "*", + "encodedKey": "*" + }, + "RealtimeLogConfig": { + "realtimeLogConfigName": "*", + "fields": "*", + "samplingRate": "*", + "endPoints": "*" + }, + "ResponseHeadersPolicy": { + "responseHeadersPolicyName": "*", + "comment": "*", + "corsBehavior": { + "accessControlAllowCredentials": "boolean", + "accessControlAllowHeaders": "*", + "accessControlAllowMethods": "*", + "accessControlAllowOrigins": "*", + "accessControlExposeHeaders": "*", + "accessControlMaxAge": "*", + "originOverride": "boolean" + }, + "customHeadersBehavior": { + "customHeaders": { + "header": "*", + "override": "boolean", + "value": "*" + } + }, + "securityHeadersBehavior": { + "contentSecurityPolicy": { + "contentSecurityPolicy": "*", + "override": "boolean" + }, + "contentTypeOptions": { + "override": "boolean" + }, + "frameOptions": { + "frameOption": "HeadersFrameOption", + "override": "boolean" + }, + "referrerPolicy": { + "referrerPolicy": "HeadersReferrerPolicy", + "override": "boolean" + }, + "strictTransportSecurity": { + "accessControlMaxAge": "*", + "includeSubdomains": "boolean", + "override": "boolean", + "preload": "boolean" + }, + "xssProtection": { + "modeBlock": "boolean", + "override": "boolean", + "protection": "boolean", + "reportUri": "*" + } + }, + "removeHeaders": "*", + "serverTimingSamplingRate": "*" + }, + "VpcOrigin": { + "endpoint": "*", + "httpPort": "*", + "httpsPort": "*", + "vpcOriginName": "*", + "protocolPolicy": "OriginProtocolPolicy", + "originSslProtocols": "OriginSslPolicy" + }, + "CloudFrontWebDistribution": { + "aliasConfiguration": { + "acmCertRef": "*", + "names": "*", + "sslMethod": "SSLMethod", + "securityPolicy": "SecurityPolicyProtocol" + }, + "comment": "*", + "enabled": "boolean", + "defaultRootObject": "*", + "enableIpV6": "boolean", + "httpVersion": "HttpVersion", + "priceClass": "PriceClass", + "viewerProtocolPolicy": "ViewerProtocolPolicy", + "originConfigs": { + "connectionAttempts": "*", + "connectionTimeout": "*", + "s3OriginSource": { + "s3BucketSource": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "originAccessIdentity": "*", + "originPath": "*", + "originHeaders": "*", + "originShieldRegion": "*" + }, + "customOriginSource": { + "domainName": "*", + "httpPort": "*", + "httpsPort": "*", + "originProtocolPolicy": "OriginProtocolPolicy", + "allowedOriginSSLVersions": "OriginSslPolicy", + "originPath": "*", + "originHeaders": "*", + "originShieldRegion": "*" + }, + "failoverCriteriaStatusCodes": "FailoverStatusCode", + "behaviors": { + "compress": "boolean", + "isDefaultBehavior": "boolean", + "trustedSigners": "*", + "trustedKeyGroups": "*", + "allowedMethods": "CloudFrontAllowedMethods", + "pathPattern": "*", + "cachedMethods": "CloudFrontAllowedCachedMethods", + "forwardedValues": "*", + "lambdaFunctionAssociations": { + "eventType": "LambdaEdgeEventType", + "lambdaFunction": { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + }, + "includeBody": "boolean" + }, + "functionAssociations": { + "function": "*", + "eventType": "FunctionEventType" + }, + "viewerProtocolPolicy": "ViewerProtocolPolicy" + }, + "originPath": "*", + "originHeaders": "*", + "originShieldRegion": "*" + }, + "loggingConfig": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "includeCookies": "boolean", + "prefix": "*" + }, + "errorConfigurations": "*", + "webACLId": "*", + "viewerCertificate": "*", + "geoRestriction": "*", + "grant": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ] + } + }, + "aws-cdk-lib.aws-cloudtrail": { + "Trail": { + "includeGlobalServiceEvents": "boolean", + "isMultiRegionTrail": "boolean", + "managementEvents": "ReadWriteType", + "enableFileValidation": "boolean", + "sendToCloudWatchLogs": "boolean", + "cloudWatchLogsRetention": "RetentionDays", + "cloudWatchLogGroup": "*", + "kmsKey": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "snsTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "trailName": "*", + "s3KeyPrefix": "*", + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "isOrganizationTrail": "boolean", + "orgId": "*", + "insightTypes": "*", + "addEventSelector": [ + "DataResourceType", + "*", + { + "readWriteType": "ReadWriteType", + "includeManagementEvents": "boolean", + "excludeManagementEventSources": "ManagementEventSources" + } + ], + "addLambdaEventSelector": [ + { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + { + "readWriteType": "ReadWriteType", + "includeManagementEvents": "boolean", + "excludeManagementEventSources": "ManagementEventSources" + } + ], + "logAllLambdaDataEvents": [ + { + "readWriteType": "ReadWriteType", + "includeManagementEvents": "boolean", + "excludeManagementEventSources": "ManagementEventSources" + } + ], + "addS3EventSelector": [ + { + "bucket": "*", + "objectPrefix": "*" + }, + { + "readWriteType": "ReadWriteType", + "includeManagementEvents": "boolean", + "excludeManagementEventSources": "ManagementEventSources" + } + ], + "logAllS3DataEvents": [ + { + "readWriteType": "ReadWriteType", + "includeManagementEvents": "boolean", + "excludeManagementEventSources": "ManagementEventSources" + } + ], + "onCloudTrailEvent": [ + "*", + { + "target": "*", + "description": "*", + "ruleName": "*", + "eventPattern": { + "version": "*", + "id": "*", + "detailType": "*", + "source": "*", + "account": "*", + "time": "*", + "region": "*", + "resources": "*", + "detail": "*" + }, + "crossStackScope": "*" + } + ] + } + }, + "aws-cdk-lib.aws-cloudwatch": { + "AlarmMuteRule": { + "alarms": "*", + "alarmMuteRuleName": "*", + "description": "*", + "schedule": "*", + "duration": "*", + "start": { + "year": "*", + "month": "*", + "day": "*", + "hour": "*", + "minute": "*" + }, + "expire": { + "year": "*", + "month": "*", + "day": "*", + "hour": "*", + "minute": "*" + }, + "tags": "*", + "addAlarm": [ + "*" + ] + }, + "Alarm": { + "metric": { + "warnings": "*", + "warningsV2": "*" + }, + "comparisonOperator": "ComparisonOperator", + "threshold": "*", + "period": "*", + "statistic": "*", + "alarmName": "*", + "alarmDescription": "*", + "evaluationPeriods": "*", + "evaluateLowSampleCountPercentile": "*", + "treatMissingData": "TreatMissingData", + "actionsEnabled": "boolean", + "datapointsToAlarm": "*", + "toAnnotation": [], + "addAlarmAction": [ + "*" + ] + }, + "AnomalyDetectionAlarm": { + "metric": { + "warnings": "*", + "warningsV2": "*" + }, + "stdDevs": "*", + "comparisonOperator": "ComparisonOperator", + "period": "*", + "statistic": "*", + "alarmName": "*", + "alarmDescription": "*", + "evaluationPeriods": "*", + "evaluateLowSampleCountPercentile": "*", + "treatMissingData": "TreatMissingData", + "actionsEnabled": "boolean", + "datapointsToAlarm": "*" + }, + "CompositeAlarm": { + "actionsEnabled": "boolean", + "alarmDescription": "*", + "compositeAlarmName": "*", + "alarmRule": "*", + "actionsSuppressor": "*", + "actionsSuppressorExtensionPeriod": "*", + "actionsSuppressorWaitPeriod": "*" + }, + "Dashboard": { + "dashboardName": "*", + "defaultInterval": "*", + "start": "*", + "end": "*", + "periodOverride": "PeriodOverride", + "widgets": { + "width": "*", + "height": "*", + "warnings": "*", + "warningsV2": "*" + }, + "variables": "*", + "addWidgets": [ + { + "width": "*", + "height": "*", + "warnings": "*", + "warningsV2": "*" + } + ], + "addVariable": [ + "*" + ] + }, + "PromQLAlarm": { + "alarmName": "*", + "alarmDescription": "*", + "pendingPeriod": "*", + "recoveryPeriod": "*", + "query": "*", + "evaluationInterval": "*", + "actionsEnabled": "boolean" + } + }, + "aws-cdk-lib.aws-codebuild": { + "Fleet": { + "fleetName": "*", + "baseCapacity": "*", + "computeType": "FleetComputeType", + "environmentType": "EnvironmentType", + "computeConfiguration": { + "disk": "*", + "machineType": "MachineType", + "vCpu": "*", + "instanceType": "*" + }, + "overflowBehavior": "FleetOverflowBehavior", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + }, + "PipelineProject": {}, + "Project": { + "source": { + "identifier": "*", + "type": "*", + "badgeSupported": "boolean" + }, + "artifacts": { + "identifier": "*", + "type": "*" + }, + "secondarySources": { + "identifier": "*", + "type": "*", + "badgeSupported": "boolean" + }, + "secondaryArtifacts": { + "identifier": "*", + "type": "*" + }, + "description": "*", + "buildSpec": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cache": "*", + "environment": { + "buildImage": { + "type": "*", + "imageId": "*", + "defaultComputeType": "ComputeType", + "imagePullPrincipalType": "ImagePullPrincipalType", + "secretsManagerCredentials": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "repository": { + "repositoryName": "*", + "repositoryArn": "*", + "repositoryUri": "*", + "registryUri": "*" + } + }, + "computeType": "ComputeType", + "dockerServer": { + "computeType": "DockerServerComputeType", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + }, + "fleet": { + "fleetArn": "*", + "fleetName": "*", + "computeType": "FleetComputeType", + "environmentType": "EnvironmentType", + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "hostKernel": "HostKernel", + "privileged": "boolean", + "certificate": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "policy": "*", + "replicationRoleArn": "*" + }, + "objectKey": "*" + }, + "environmentVariables": "*" + }, + "badge": "boolean", + "timeout": "*", + "environmentVariables": "*", + "checkSecretsInPlainTextEnvVariables": "boolean", + "projectName": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "allowAllOutbound": "boolean", + "fileSystemLocations": "*", + "grantReportGroupPermissions": "boolean", + "logging": { + "s3": { + "encrypted": "boolean", + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*", + "enabled": "boolean" + }, + "cloudWatch": { + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*" + }, + "prefix": "*", + "enabled": "boolean" + } + }, + "queuedTimeout": "*", + "concurrentBuildLimit": "*", + "ssmSessionPermissions": "boolean", + "visibility": "ProjectVisibility", + "autoRetryLimit": "*", + "enableBatchBuilds": [], + "addSecondarySource": [ + { + "identifier": "*", + "type": "*", + "badgeSupported": "boolean" + } + ], + "addFileSystemLocation": [ + "*" + ], + "addSecondaryArtifact": [ + { + "identifier": "*", + "type": "*" + } + ], + "bindToCodePipeline": [ + "*", + { + "artifactBucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + } + } + ] + }, + "ReportGroup": { + "reportGroupName": "*", + "exportBucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "zipExport": "boolean", + "removalPolicy": "RemovalPolicy", + "type": "ReportGroupType", + "deleteReports": "boolean" + }, + "GitHubSourceCredentials": { + "accessToken": "*" + }, + "GitHubEnterpriseSourceCredentials": { + "accessToken": "*" + }, + "BitBucketSourceCredentials": { + "username": "*", + "password": "*" + }, + "UntrustedCodeBoundaryPolicy": { + "managedPolicyName": "*", + "additionalStatements": "*" + } + }, + "aws-cdk-lib.aws-codecommit": { + "Repository": { + "repositoryName": "*", + "description": "*", + "code": "*", + "kmsKey": "*", + "notify": [ + "*", + { + "name": "*", + "events": "RepositoryEventTrigger", + "branches": "*", + "customData": "*" + } + ] + } + }, + "aws-cdk-lib.aws-codeguruprofiler": { + "ProfilingGroup": { + "profilingGroupName": "*", + "computePlatform": "ComputePlatform" + } + }, + "aws-cdk-lib.aws-codepipeline": { + "Pipeline": { + "artifactBucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "restartExecutionOnUpdate": "boolean", + "pipelineName": "*", + "crossRegionReplicationBuckets": "*", + "stages": { + "stageName": "*", + "actions": { + "actionProperties": { + "actionName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "region": "*", + "account": "*", + "resource": "*", + "category": "ActionCategory", + "provider": "*", + "owner": "*", + "version": "*", + "runOrder": "*", + "artifactBounds": { + "minInputs": "*", + "maxInputs": "*", + "minOutputs": "*", + "maxOutputs": "*" + }, + "inputs": "*", + "variablesNamespace": "*", + "commands": "*", + "outputVariables": "*", + "timeout": "*" + } + }, + "transitionToEnabled": "boolean", + "transitionDisabledReason": "*", + "beforeEntry": { + "conditions": { + "rules": "*", + "result": "Result" + } + }, + "onFailure": { + "result": "Result", + "retryMode": "RetryMode" + } + }, + "crossAccountKeys": "boolean", + "enableKeyRotation": "boolean", + "reuseCrossRegionSupportStacks": "boolean", + "pipelineType": "PipelineType", + "variables": "*", + "triggers": { + "providerType": "ProviderType", + "gitConfiguration": { + "sourceAction": { + "actionProperties": { + "actionName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "region": "*", + "account": "*", + "resource": "*", + "category": "ActionCategory", + "provider": "*", + "owner": "*", + "version": "*", + "runOrder": "*", + "artifactBounds": { + "minInputs": "*", + "maxInputs": "*", + "minOutputs": "*", + "maxOutputs": "*" + }, + "inputs": "*", + "variablesNamespace": "*", + "commands": "*", + "outputVariables": "*", + "timeout": "*" + } + }, + "pushFilter": { + "tagsExcludes": "*", + "tagsIncludes": "*", + "branchesExcludes": "*", + "branchesIncludes": "*", + "filePathsExcludes": "*", + "filePathsIncludes": "*" + }, + "pullRequestFilter": { + "events": "GitPullRequestEvent", + "branchesExcludes": "*", + "branchesIncludes": "*", + "filePathsExcludes": "*", + "filePathsIncludes": "*" + } + } + }, + "executionMode": "ExecutionMode", + "usePipelineRoleForActions": "boolean", + "addStage": [ + { + "placement": { + "rightBefore": { + "stageName": "*", + "pipeline": { + "pipelineName": "*", + "pipelineArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "actions": { + "actionProperties": { + "actionName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "region": "*", + "account": "*", + "resource": "*", + "category": "ActionCategory", + "provider": "*", + "owner": "*", + "version": "*", + "runOrder": "*", + "artifactBounds": { + "minInputs": "*", + "maxInputs": "*", + "minOutputs": "*", + "maxOutputs": "*" + }, + "inputs": "*", + "variablesNamespace": "*", + "commands": "*", + "outputVariables": "*", + "timeout": "*" + } + } + } + }, + "stageName": "*", + "transitionToEnabled": "boolean", + "transitionDisabledReason": "*", + "beforeEntry": { + "conditions": { + "rules": "*", + "result": "Result" + } + }, + "onFailure": { + "result": "Result", + "retryMode": "RetryMode" + } + } + ], + "addToRolePolicy": [ + "*" + ], + "addVariable": [ + "*" + ], + "addTrigger": [ + { + "providerType": "ProviderType", + "gitConfiguration": { + "sourceAction": { + "actionProperties": { + "actionName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "region": "*", + "account": "*", + "resource": "*", + "category": "ActionCategory", + "provider": "*", + "owner": "*", + "version": "*", + "runOrder": "*", + "artifactBounds": { + "minInputs": "*", + "maxInputs": "*", + "minOutputs": "*", + "maxOutputs": "*" + }, + "inputs": "*", + "variablesNamespace": "*", + "commands": "*", + "outputVariables": "*", + "timeout": "*" + } + }, + "pushFilter": { + "tagsExcludes": "*", + "tagsIncludes": "*", + "branchesExcludes": "*", + "branchesIncludes": "*", + "filePathsExcludes": "*", + "filePathsIncludes": "*" + }, + "pullRequestFilter": { + "events": "GitPullRequestEvent", + "branchesExcludes": "*", + "branchesIncludes": "*", + "filePathsExcludes": "*", + "filePathsIncludes": "*" + } + } + } + ], + "stage": [ + "*" + ], + "_attachActionToPipeline": [ + "*", + { + "actionProperties": { + "actionName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "region": "*", + "account": "*", + "resource": "*", + "category": "ActionCategory", + "provider": "*", + "owner": "*", + "version": "*", + "runOrder": "*", + "artifactBounds": { + "minInputs": "*", + "maxInputs": "*", + "minOutputs": "*", + "maxOutputs": "*" + }, + "inputs": "*", + "variablesNamespace": "*", + "commands": "*", + "outputVariables": "*", + "timeout": "*" + } + }, + "*" + ] + } + }, + "aws-cdk-lib.aws-codestarnotifications": { + "NotificationRule": { + "events": "*", + "source": "*", + "targets": "*", + "notificationRuleName": "*", + "enabled": "boolean", + "detailType": "DetailType", + "createdBy": "*", + "addTarget": [ + "*" + ] + } + }, + "aws-cdk-lib.aws-cognito": { + "UserPoolClient": { + "userPool": "*", + "userPoolClientName": "*", + "generateSecret": "boolean", + "authFlows": { + "adminUserPassword": "boolean", + "custom": "boolean", + "userPassword": "boolean", + "userSrp": "boolean", + "user": "boolean" + }, + "disableOAuth": "boolean", + "oAuth": { + "flows": { + "authorizationCodeGrant": "boolean", + "implicitCodeGrant": "boolean", + "clientCredentials": "boolean" + }, + "callbackUrls": "*", + "logoutUrls": "*", + "scopes": "*", + "defaultRedirectUri": "*" + }, + "authSessionValidity": "*", + "preventUserExistenceErrors": "boolean", + "supportedIdentityProviders": "*", + "idTokenValidity": "*", + "refreshTokenValidity": "*", + "accessTokenValidity": "*", + "refreshTokenRotationGracePeriod": "*", + "readAttributes": "*", + "writeAttributes": "*", + "enableTokenRevocation": "boolean", + "enablePropagateAdditionalUserContextData": "boolean", + "analytics": { + "application": "*", + "applicationId": "*", + "externalId": "*", + "role": "*", + "shareUserData": "boolean" + } + }, + "UserPoolDomain": { + "userPool": "*", + "customDomain": { + "domainName": "*", + "certificate": "*" + }, + "cognitoDomain": { + "domainPrefix": "*" + }, + "managedLoginVersion": "ManagedLoginVersion", + "baseUrl": [ + { + "fips": "boolean" + } + ], + "signInUrl": [ + "*", + { + "redirectUri": "*", + "signInPath": "*", + "fips": "boolean" + } + ] + }, + "UserPoolGroup": { + "userPool": "*", + "description": "*", + "groupName": "*", + "precedence": "*", + "role": "*" + }, + "UserPoolResourceServer": { + "userPool": "*", + "identifier": "*", + "userPoolResourceServerName": "*", + "scopes": "*" + }, + "UserPool": { + "userPoolName": "*", + "selfSignUpEnabled": "boolean", + "userVerification": { + "emailSubject": "*", + "emailBody": "*", + "emailStyle": "VerificationEmailStyle", + "smsMessage": "*" + }, + "userInvitation": { + "emailSubject": "*", + "emailBody": "*", + "smsMessage": "*" + }, + "smsRole": "*", + "smsRoleExternalId": "*", + "snsRegion": "*", + "enableSmsRole": "boolean", + "signInAliases": { + "username": "boolean", + "email": "boolean", + "phone": "boolean", + "preferredUsername": "boolean" + }, + "autoVerify": { + "email": "boolean", + "phone": "boolean" + }, + "keepOriginal": { + "email": "boolean", + "phone": "boolean" + }, + "standardAttributes": { + "address": { + "mutable": "boolean", + "required": "boolean" + } + }, + "customAttributes": "*", + "mfa": "Mfa", + "mfaMessage": "*", + "mfaSecondFactor": { + "sms": "boolean", + "otp": "boolean", + "email": "boolean" + }, + "passwordPolicy": { + "tempPasswordValidity": "*", + "minLength": "*", + "requireLowercase": "boolean", + "requireUppercase": "boolean", + "requireDigits": "boolean", + "requireSymbols": "boolean", + "passwordHistorySize": "*" + }, + "signInPolicy": { + "allowedFirstAuthFactors": { + "password": "boolean", + "emailOtp": "boolean", + "smsOtp": "boolean", + "passkey": "boolean" + } + }, + "passkeyRelyingPartyId": "*", + "passkeyUserVerification": "PasskeyUserVerification", + "emailSettings": { + "from": "*", + "replyTo": "*" + }, + "email": "*", + "lambdaTriggers": { + "createAuthChallenge": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + } + }, + "signInCaseSensitive": "boolean", + "accountRecovery": "AccountRecovery", + "removalPolicy": "RemovalPolicy", + "deletionProtection": "boolean", + "deviceTracking": { + "challengeRequiredOnNewDevice": "boolean", + "deviceOnlyRememberedOnUserPrompt": "boolean" + }, + "customSenderKmsKey": "*", + "advancedSecurityMode": "AdvancedSecurityMode", + "featurePlan": "FeaturePlan", + "standardThreatProtectionMode": "StandardThreatProtectionMode", + "customThreatProtectionMode": "CustomThreatProtectionMode", + "addTrigger": [ + "*", + { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "LambdaVersion" + ] + } + }, + "aws-cdk-lib.aws-cognito-identitypool": { + "IdentityPool": { + "identityPoolName": "*", + "authenticatedRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "unauthenticatedRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "allowUnauthenticatedIdentities": "boolean", + "roleMappings": { + "providerUrl": "*", + "mappingKey": "*", + "useToken": "boolean", + "resolveAmbiguousRoles": "boolean", + "rules": { + "claim": "*", + "mappedRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "claimValue": "*", + "matchType": "RoleMappingMatchType" + } + }, + "allowClassicFlow": "boolean", + "authenticationProviders": { + "facebook": { + "appId": "*" + }, + "google": { + "clientId": "*" + }, + "amazon": { + "appId": "*" + }, + "apple": { + "servicesId": "*" + }, + "twitter": { + "consumerKey": "*", + "consumerSecret": "*" + }, + "userPools": "*", + "openIdConnectProviders": "*", + "samlProviders": "*", + "customProvider": "*" + }, + "addUserPoolAuthentication": [ + "*" + ] + }, + "IdentityPoolRoleAttachment": { + "identityPool": { + "identityPoolId": "*", + "identityPoolArn": "*", + "identityPoolName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authenticatedRole": "*", + "unauthenticatedRole": "*", + "roleMappings": { + "providerUrl": "*", + "mappingKey": "*", + "useToken": "boolean", + "resolveAmbiguousRoles": "boolean", + "rules": { + "claim": "*", + "mappedRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "claimValue": "*", + "matchType": "RoleMappingMatchType" + } + } + } + }, + "aws-cdk-lib.aws-config": { + "AccessKeysRotated": { + "maxAge": "*", + "configRuleName": "*", + "description": "*", + "inputParameters": "*", + "maximumExecutionFrequency": "MaximumExecutionFrequency", + "ruleScope": "*", + "evaluationModes": "*" + }, + "CloudFormationStackDriftDetectionCheck": { + "ownStackOnly": "boolean", + "role": "*", + "configRuleName": "*", + "description": "*", + "inputParameters": "*", + "maximumExecutionFrequency": "MaximumExecutionFrequency", + "ruleScope": "*", + "evaluationModes": "*" + }, + "CloudFormationStackNotificationCheck": { + "topics": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "configRuleName": "*", + "description": "*", + "inputParameters": "*", + "maximumExecutionFrequency": "MaximumExecutionFrequency", + "ruleScope": "*", + "evaluationModes": "*" + }, + "ManagedRule": { + "identifier": "*", + "configRuleName": "*", + "description": "*", + "inputParameters": "*", + "maximumExecutionFrequency": "MaximumExecutionFrequency", + "ruleScope": "*", + "evaluationModes": "*" + }, + "CustomRule": { + "lambdaFunction": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "configurationChanges": "boolean", + "periodic": "boolean", + "configRuleName": "*", + "description": "*", + "inputParameters": "*", + "maximumExecutionFrequency": "MaximumExecutionFrequency", + "ruleScope": "*", + "evaluationModes": "*" + }, + "CustomPolicy": { + "policyText": "*", + "enableDebugLog": "boolean", + "configRuleName": "*", + "description": "*", + "inputParameters": "*", + "maximumExecutionFrequency": "MaximumExecutionFrequency", + "ruleScope": "*", + "evaluationModes": "*" + } + }, + "aws-cdk-lib.aws-docdb": { + "DatabaseCluster": { + "engineVersion": "*", + "port": "*", + "masterUser": { + "username": "*", + "password": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "excludeCharacters": "*", + "secretName": "*" + }, + "backup": { + "retention": "*", + "preferredWindow": "*" + }, + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "storageEncrypted": "boolean", + "dbClusterName": "*", + "instanceIdentifierBase": "*", + "instanceType": "*", + "instances": "*", + "serverlessV2ScalingConfiguration": { + "minCapacity": "*", + "maxCapacity": "*" + }, + "caCertificate": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "parameterGroup": "*", + "preferredMaintenanceWindow": "*", + "instanceMaintenanceWindow": "*", + "removalPolicy": "RemovalPolicy", + "deletionProtection": "boolean", + "exportProfilerLogsToCloudWatch": "boolean", + "exportAuditLogsToCloudWatch": "boolean", + "cloudWatchLogsRetention": "RetentionDays", + "cloudWatchLogsRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enablePerformanceInsights": "boolean", + "instanceRemovalPolicy": "RemovalPolicy", + "securityGroupRemovalPolicy": "RemovalPolicy", + "copyTagsToSnapshot": "boolean", + "storageType": "StorageType", + "manageMasterUserPassword": "boolean", + "masterUserSecretKmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "addRotationSingleUser": [ + "*" + ], + "addRotationMultiUser": [ + "*", + { + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "automaticallyAfter": "*" + } + ], + "addSecurityGroups": [ + { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + ] + }, + "DatabaseSecret": { + "username": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretName": "*", + "masterSecret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "excludeCharacters": "*" + }, + "DatabaseInstance": { + "cluster": "*", + "instanceType": "*", + "availabilityZone": "*", + "dbInstanceName": "*", + "autoMinorVersionUpgrade": "boolean", + "preferredMaintenanceWindow": "*", + "removalPolicy": "RemovalPolicy", + "enablePerformanceInsights": "boolean", + "caCertificate": "*" + }, + "ClusterParameterGroup": { + "description": "*", + "family": "*", + "dbClusterParameterGroupName": "*", + "parameters": "*" + } + }, + "aws-cdk-lib.aws-dynamodb": { + "TableV2": { + "partitionKey": { + "name": "*", + "type": "AttributeType" + }, + "sortKey": { + "name": "*", + "type": "AttributeType" + }, + "tableName": "*", + "timeToLiveAttribute": "*", + "dynamoStream": "StreamViewType", + "removalPolicy": "RemovalPolicy", + "billing": "*", + "replicas": { + "region": "*", + "readCapacity": "*", + "maxReadRequestUnits": "*", + "globalSecondaryIndexOptions": "*", + "contributorInsights": "boolean", + "contributorInsightsSpecification": { + "enabled": "boolean", + "mode": "ContributorInsightsMode" + }, + "deletionProtection": "boolean", + "pointInTimeRecovery": "boolean", + "pointInTimeRecoverySpecification": { + "pointInTimeRecoveryEnabled": "boolean", + "recoveryPeriodInDays": "*" + }, + "tableClass": "TableClass", + "kinesisStream": { + "streamArn": "*", + "streamName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "tags": { + "key": "*", + "value": "*" + }, + "resourcePolicy": "*" + }, + "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode", + "witnessRegion": "*", + "multiRegionConsistency": "MultiRegionConsistency", + "globalSecondaryIndexes": { + "partitionKey": { + "name": "*", + "type": "AttributeType" + }, + "readCapacity": "*", + "maxReadRequestUnits": "*", + "maxWriteRequestUnits": "*", + "warmThroughput": { + "readUnitsPerSecond": "*", + "writeUnitsPerSecond": "*" + }, + "indexName": "*", + "projectionType": "ProjectionType", + "nonKeyAttributes": "*" + }, + "localSecondaryIndexes": { + "sortKey": { + "name": "*", + "type": "AttributeType" + }, + "indexName": "*", + "projectionType": "ProjectionType", + "nonKeyAttributes": "*" + }, + "encryption": "*", + "warmThroughput": { + "readUnitsPerSecond": "*", + "writeUnitsPerSecond": "*" + }, + "contributorInsights": "boolean", + "contributorInsightsSpecification": { + "enabled": "boolean", + "mode": "ContributorInsightsMode" + }, + "deletionProtection": "boolean", + "pointInTimeRecovery": "boolean", + "pointInTimeRecoverySpecification": { + "pointInTimeRecoveryEnabled": "boolean", + "recoveryPeriodInDays": "*" + }, + "tableClass": "TableClass", + "kinesisStream": { + "streamArn": "*", + "streamName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "tags": { + "key": "*", + "value": "*" + }, + "resourcePolicy": "*", + "streamResourcePolicy": "*", + "addToResourcePolicy": [ + "*" + ], + "addToStreamResourcePolicy": [ + "*" + ], + "addReplica": [ + { + "region": "*", + "readCapacity": "*", + "maxReadRequestUnits": "*", + "globalSecondaryIndexOptions": "*", + "contributorInsights": "boolean", + "contributorInsightsSpecification": { + "enabled": "boolean", + "mode": "ContributorInsightsMode" + }, + "deletionProtection": "boolean", + "pointInTimeRecovery": "boolean", + "pointInTimeRecoverySpecification": { + "pointInTimeRecoveryEnabled": "boolean", + "recoveryPeriodInDays": "*" + }, + "tableClass": "TableClass", + "kinesisStream": { + "streamArn": "*", + "streamName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "tags": { + "key": "*", + "value": "*" + }, + "resourcePolicy": "*" + } + ], + "addGlobalSecondaryIndex": [ + { + "partitionKey": { + "name": "*", + "type": "AttributeType" + }, + "readCapacity": "*", + "maxReadRequestUnits": "*", + "maxWriteRequestUnits": "*", + "warmThroughput": { + "readUnitsPerSecond": "*", + "writeUnitsPerSecond": "*" + }, + "indexName": "*", + "projectionType": "ProjectionType", + "nonKeyAttributes": "*" + } + ], + "addLocalSecondaryIndex": [ + { + "sortKey": { + "name": "*", + "type": "AttributeType" + }, + "indexName": "*", + "projectionType": "ProjectionType", + "nonKeyAttributes": "*" + } + ], + "replica": [ + "*" + ] + }, + "TableV2MultiAccountReplica": { + "replicaSourceTable": { + "tableId": "*", + "grants": "*", + "tableArn": "*", + "tableName": "*", + "tableStreamArn": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "tableName": "*", + "encryption": "*", + "removalPolicy": "RemovalPolicy", + "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode", + "grantIndexPermissions": "boolean", + "contributorInsights": "boolean", + "contributorInsightsSpecification": { + "enabled": "boolean", + "mode": "ContributorInsightsMode" + }, + "deletionProtection": "boolean", + "pointInTimeRecovery": "boolean", + "pointInTimeRecoverySpecification": { + "pointInTimeRecoveryEnabled": "boolean", + "recoveryPeriodInDays": "*" + }, + "tableClass": "TableClass", + "kinesisStream": { + "streamArn": "*", + "streamName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "tags": { + "key": "*", + "value": "*" + }, + "resourcePolicy": "*", + "streamResourcePolicy": "*", + "addToResourcePolicy": [ + "*" + ], + "addToStreamResourcePolicy": [ + "*" + ] + }, + "Table": { + "tableName": "*", + "kinesisStream": { + "streamArn": "*", + "streamName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "kinesisPrecisionTimestamp": "ApproximateCreationDateTimePrecision", + "readCapacity": "*", + "writeCapacity": "*", + "maxReadRequestUnits": "*", + "maxWriteRequestUnits": "*", + "billingMode": "BillingMode", + "warmThroughput": { + "readUnitsPerSecond": "*", + "writeUnitsPerSecond": "*" + }, + "pointInTimeRecovery": "boolean", + "pointInTimeRecoverySpecification": { + "pointInTimeRecoveryEnabled": "boolean", + "recoveryPeriodInDays": "*" + }, + "serverSideEncryption": "boolean", + "tableClass": "TableClass", + "encryption": "TableEncryption", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "timeToLiveAttribute": "*", + "stream": "StreamViewType", + "removalPolicy": "RemovalPolicy", + "replicaRemovalPolicy": "RemovalPolicy", + "replicationRegions": "*", + "replicationTimeout": "*", + "waitForReplicationToFinish": "boolean", + "contributorInsightsEnabled": "boolean", + "contributorInsightsSpecification": { + "enabled": "boolean", + "mode": "ContributorInsightsMode" + }, + "deletionProtection": "boolean", + "importSource": { + "compressionType": "InputCompressionType", + "inputFormat": "*", + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "bucketOwner": "*", + "keyPrefix": "*" + }, + "resourcePolicy": "*", + "partitionKey": { + "name": "*", + "type": "AttributeType" + }, + "sortKey": { + "name": "*", + "type": "AttributeType" + }, + "addToResourcePolicy": [ + "*" + ], + "addGlobalSecondaryIndex": [ + { + "partitionKeys": { + "name": "*", + "type": "AttributeType" + }, + "readCapacity": "*", + "writeCapacity": "*", + "maxReadRequestUnits": "*", + "maxWriteRequestUnits": "*", + "warmThroughput": { + "readUnitsPerSecond": "*", + "writeUnitsPerSecond": "*" + }, + "contributorInsightsEnabled": "boolean", + "contributorInsightsSpecification": { + "enabled": "boolean", + "mode": "ContributorInsightsMode" + }, + "indexName": "*", + "projectionType": "ProjectionType", + "nonKeyAttributes": "*" + } + ], + "addLocalSecondaryIndex": [ + { + "sortKey": { + "name": "*", + "type": "AttributeType" + }, + "indexName": "*", + "projectionType": "ProjectionType", + "nonKeyAttributes": "*" + } + ], + "autoScaleReadCapacity": [ + { + "minCapacity": "*", + "maxCapacity": "*" + } + ], + "autoScaleWriteCapacity": [ + { + "minCapacity": "*", + "maxCapacity": "*" + } + ], + "autoScaleGlobalSecondaryIndexReadCapacity": [ + "*", + { + "minCapacity": "*", + "maxCapacity": "*" + } + ], + "autoScaleGlobalSecondaryIndexWriteCapacity": [ + "*", + { + "minCapacity": "*", + "maxCapacity": "*" + } + ], + "schema": [ + "*" + ], + "schemaV2": [ + "*" + ] + } + }, + "aws-cdk-lib.aws-ec2": { + "BastionHostLinux": { + "availabilityZone": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "instanceName": "*", + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "instanceType": "*", + "machineImage": "*", + "blockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "init": "*", + "initOptions": { + "configSets": "*", + "timeout": "*", + "embedFingerprint": "boolean", + "printLog": "boolean", + "ignoreFailures": "boolean", + "includeUrl": "boolean", + "includeRole": "boolean" + }, + "requireImdsv2": "boolean", + "userDataCausesReplacement": "boolean", + "allowSshAccessFrom": [ + { + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + ] + }, + "ClientVpnAuthorizationRule": { + "clientVpnEndpoint": "*", + "clientVpnEndoint": "*", + "cidr": "*", + "groupId": "*", + "description": "*" + }, + "ClientVpnEndpoint": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "cidr": "*", + "clientCertificateArn": "*", + "userBasedAuthentication": "*", + "logging": "boolean", + "logGroup": "*", + "logStream": "*", + "clientConnectionHandler": { + "functionName": "*", + "functionArn": "*" + }, + "description": "*", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "selfServicePortal": "boolean", + "serverCertificateArn": "*", + "splitTunnel": "boolean", + "transportProtocol": "TransportProtocol", + "port": "VpnPort", + "dnsServers": "*", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "authorizeAllUsersToVpcCidr": "boolean", + "sessionTimeout": "ClientVpnSessionTimeout", + "disconnectOnSessionTimeout": "boolean", + "clientLoginBanner": "*", + "clientRouteEnforcementOptions": { + "enforced": "boolean" + }, + "addAuthorizationRule": [ + "*", + { + "cidr": "*", + "groupId": "*", + "description": "*" + } + ], + "addRoute": [ + "*", + { + "cidr": "*", + "description": "*", + "target": "*" + } + ] + }, + "ClientVpnRoute": { + "clientVpnEndpoint": { + "endpointId": "*", + "targetNetworksAssociated": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "connections": "*" + }, + "clientVpnEndoint": { + "endpointId": "*", + "targetNetworksAssociated": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "connections": "*" + }, + "cidr": "*", + "description": "*", + "target": "*" + }, + "Instance": { + "keyName": "*", + "keyPair": { + "keyPairName": "*", + "type": "KeyPairType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "availabilityZone": "*", + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "resourceSignalTimeout": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "instanceType": "*", + "machineImage": "*", + "userData": "*", + "userDataCausesReplacement": "boolean", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "instanceProfile": { + "instanceProfileName": "*", + "instanceProfileArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "instanceName": "*", + "sourceDestCheck": "boolean", + "blockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "privateIpAddress": "*", + "propagateTagsToVolumeOnCreation": "boolean", + "init": "*", + "initOptions": { + "configSets": "*", + "timeout": "*", + "embedFingerprint": "boolean", + "printLog": "boolean", + "ignoreFailures": "boolean", + "includeUrl": "boolean", + "includeRole": "boolean" + }, + "requireImdsv2": "boolean", + "httpEndpoint": "boolean", + "httpProtocolIpv6": "boolean", + "httpPutResponseHopLimit": "*", + "httpTokens": "HttpTokens", + "instanceMetadataTags": "boolean", + "detailedMonitoring": "boolean", + "ssmSessionPermissions": "boolean", + "associatePublicIpAddress": "boolean", + "creditSpecification": "CpuCredits", + "ebsOptimized": "boolean", + "disableApiTermination": "boolean", + "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior", + "placementGroup": "*", + "enclaveEnabled": "boolean", + "hibernationEnabled": "boolean", + "ipv6AddressCount": "*", + "addSecurityGroup": [ + { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + ], + "addUserData": [ + "*" + ], + "addToRolePolicy": [ + "*" + ], + "applyCloudFormationInit": [ + "*", + { + "configSets": "*", + "timeout": "*", + "embedFingerprint": "boolean", + "printLog": "boolean", + "ignoreFailures": "boolean", + "includeUrl": "boolean", + "includeRole": "boolean" + } + ] + }, + "KeyPair": { + "_isOsCompatible": [ + "OperatingSystemType" + ] + }, + "LaunchTemplate": { + "launchTemplateName": "*", + "versionDescription": "*", + "instanceType": "*", + "machineImage": "*", + "userData": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "blockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "cpuCredits": "CpuCredits", + "cpuOptions": { + "amdSevSnp": "boolean", + "coreCount": "*", + "nestedVirtualization": "boolean", + "threadsPerCore": "*" + }, + "disableApiTermination": "boolean", + "ebsOptimized": "boolean", + "nitroEnclaveEnabled": "boolean", + "hibernationConfigured": "boolean", + "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior", + "spotOptions": { + "blockDuration": "*", + "interruptionBehavior": "SpotInstanceInterruption", + "maxPrice": "*", + "requestType": "SpotRequestType", + "validUntil": "*" + }, + "keyName": "*", + "keyPair": { + "keyPairName": "*", + "type": "KeyPairType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "detailedMonitoring": "boolean", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "requireImdsv2": "boolean", + "httpEndpoint": "boolean", + "httpProtocolIpv6": "boolean", + "httpPutResponseHopLimit": "*", + "httpTokens": "LaunchTemplateHttpTokens", + "instanceMetadataTags": "boolean", + "associatePublicIpAddress": "boolean", + "instanceProfile": { + "instanceProfileName": "*", + "instanceProfileArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "placementGroup": "*", + "addSecurityGroup": [ + { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + ] + }, + "NetworkAcl": { + "networkAclName": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "associateWithSubnet": [ + "*", + { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + ] + }, + "NetworkAclEntry": { + "networkAcl": { + "networkAclId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "networkAclEntryName": "*", + "cidr": "*", + "traffic": "*", + "direction": "TrafficDirection", + "ruleAction": "Action", + "ruleNumber": "*" + }, + "SubnetNetworkAclAssociation": { + "subnetNetworkAclAssociationName": "*", + "networkAcl": "*", + "subnet": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "PlacementGroup": {}, + "PrefixList": {}, + "SecurityGroup": { + "securityGroupName": "*", + "description": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "disableInlineRules": "boolean", + "addIngressRule": [ + { + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "*", + "*", + "boolean" + ], + "addEgressRule": [ + { + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "*", + "*", + "boolean" + ] + }, + "Volume": { + "volumeName": "*", + "availabilityZone": "*", + "size": "*", + "snapshotId": "*", + "enableMultiAttach": "boolean", + "encrypted": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "autoEnableIo": "boolean", + "volumeType": "EbsDeviceVolumeType", + "iops": "*", + "removalPolicy": "RemovalPolicy", + "throughput": "*", + "volumeInitializationRate": "*" + }, + "VpcEndpointService": { + "vpcEndpointServiceName": "*", + "vpcEndpointServiceLoadBalancers": { + "loadBalancerArn": "*" + }, + "acceptanceRequired": "boolean", + "contributorInsights": "boolean", + "whitelistedPrincipals": "*", + "allowedPrincipals": "*", + "supportedIpAddressTypes": "IpAddressType", + "allowedRegions": "*" + }, + "GatewayVpcEndpoint": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "service": { + "name": "*" + }, + "subnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "ipAddressType": "VpcEndpointIpAddressType", + "dnsRecordIpType": "VpcEndpointDnsRecordIpType" + }, + "InterfaceVpcEndpoint": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "service": { + "name": "*", + "port": "*", + "privateDnsDefault": "boolean" + }, + "privateDnsEnabled": "boolean", + "subnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "open": "boolean", + "lookupSupportedAzs": "boolean", + "ipAddressType": "VpcEndpointIpAddressType", + "dnsRecordIpType": "VpcEndpointDnsRecordIpType", + "privateDnsOnlyForInboundResolverEndpoint": "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint", + "serviceRegion": "*" + }, + "FlowLog": { + "flowLogName": "*", + "resourceType": "*", + "trafficType": "FlowLogTrafficType", + "destination": "*", + "logFormat": "*", + "maxAggregationInterval": "FlowLogMaxAggregationInterval" + }, + "Vpc": { + "ipProtocol": "IpProtocol", + "ipAddresses": "*", + "cidr": "*", + "enableDnsHostnames": "boolean", + "enableDnsSupport": "boolean", + "defaultInstanceTenancy": "DefaultInstanceTenancy", + "maxAzs": "*", + "reservedAzs": "*", + "availabilityZones": "*", + "natGateways": "*", + "natGatewaySubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "natGatewayProvider": "*", + "subnetConfiguration": { + "cidrMask": "*", + "subnetType": "SubnetType", + "name": "*", + "reserved": "boolean", + "mapPublicIpOnLaunch": "boolean", + "ipv6AssignAddressOnCreation": "boolean" + }, + "vpnGateway": "boolean", + "vpnGatewayAsn": "*", + "vpnConnections": "*", + "vpnRoutePropagation": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "gatewayEndpoints": "*", + "flowLogs": "*", + "vpcName": "*", + "restrictDefaultSecurityGroup": "boolean", + "createInternetGateway": "boolean", + "ipv6Addresses": { + "amazonProvided": "boolean" + }, + "addS3Endpoint": [ + "*", + { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + ], + "addDynamoDbEndpoint": [ + "*", + { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + ] + }, + "Subnet": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": "boolean", + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "boolean", + "addDefaultInternetRoute": [ + "*", + "*" + ], + "addIpv6DefaultInternetRoute": [ + "*", + "*" + ], + "addIpv6DefaultEgressOnlyInternetRoute": [ + "*" + ], + "addDefaultNatRoute": [ + "*" + ], + "addIpv6Nat64Route": [ + "*" + ], + "addRoute": [ + "*", + { + "destinationCidrBlock": "*", + "destinationIpv6CidrBlock": "*", + "routerType": "RouterType", + "routerId": "*", + "enablesInternetConnectivity": "boolean" + } + ], + "associateNetworkAcl": [ + "*", + { + "networkAclId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + }, + "PublicSubnet": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": "boolean", + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "boolean", + "addNatGateway": [ + "*", + { + "maxDrainDuration": "*" + } + ] + }, + "PrivateSubnet": { + "availabilityZone": "*", + "vpcId": "*", + "cidrBlock": "*", + "mapPublicIpOnLaunch": "boolean", + "ipv6CidrBlock": "*", + "assignIpv6AddressOnCreation": "boolean" + }, + "ImportedVpc": { + "vpcId": "*", + "vpcCidrBlock": "*", + "availabilityZones": "*", + "publicSubnetIds": "*", + "publicSubnetNames": "*", + "publicSubnetRouteTableIds": "*", + "publicSubnetIpv4CidrBlocks": "*", + "privateSubnetIds": "*", + "privateSubnetNames": "*", + "privateSubnetRouteTableIds": "*", + "privateSubnetIpv4CidrBlocks": "*", + "isolatedSubnetIds": "*", + "isolatedSubnetNames": "*", + "isolatedSubnetRouteTableIds": "*", + "isolatedSubnetIpv4CidrBlocks": "*", + "vpnGatewayId": "*", + "region": "*" + }, + "LookedUpVpc": { + "vpcId": "*", + "vpcCidrBlock": "*", + "availabilityZones": "*", + "publicSubnetIds": "*", + "publicSubnetNames": "*", + "publicSubnetRouteTableIds": "*", + "privateSubnetIds": "*", + "privateSubnetNames": "*", + "privateSubnetRouteTableIds": "*", + "isolatedSubnetIds": "*", + "isolatedSubnetNames": "*", + "isolatedSubnetRouteTableIds": "*", + "vpnGatewayId": "*", + "subnetGroups": { + "name": "*", + "type": "VpcSubnetGroupType", + "subnets": { + "subnetId": "*", + "availabilityZone": "*", + "routeTableId": "*", + "cidr": "*" + } + }, + "region": "*", + "ownerAccountId": "*" + }, + "ImportedSubnet": { + "availabilityZone": "*", + "ipv4CidrBlock": "*", + "routeTableId": "*", + "subnetId": "*", + "associateNetworkAcl": [ + "*", + { + "networkAclId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + }, + "VpnGateway": { + "type": "*", + "amazonSideAsn": "*" + }, + "VpnConnection": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ip": "*", + "asn": "*", + "staticRoutes": "*", + "tunnelOptions": { + "preSharedKey": "*", + "preSharedKeySecret": "*", + "tunnelInsideCidr": "*" + } + } + }, + "aws-cdk-lib.aws-ecr": { + "Repository": { + "repositoryName": "*", + "encryption": "*", + "encryptionKey": "*", + "lifecycleRules": { + "rulePriority": "*", + "description": "*", + "tagStatus": "TagStatus", + "tagPrefixList": "*", + "tagPatternList": "*", + "maxImageCount": "*", + "maxImageAge": "*" + }, + "lifecycleRegistryId": "*", + "removalPolicy": "RemovalPolicy", + "imageScanOnPush": "boolean", + "imageTagMutability": "TagMutability", + "imageTagMutabilityExclusionFilters": "*", + "autoDeleteImages": "boolean", + "emptyOnDelete": "boolean", + "addToResourcePolicy": [ + "*" + ], + "addLifecycleRule": [ + { + "rulePriority": "*", + "description": "*", + "tagStatus": "TagStatus", + "tagPrefixList": "*", + "tagPatternList": "*", + "maxImageCount": "*", + "maxImageAge": "*" + } + ] + } + }, + "aws-cdk-lib.aws-ecs": { + "Cluster": { + "clusterName": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "defaultCloudMapNamespace": { + "name": "*", + "type": "NamespaceType", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "useForServiceConnect": "boolean" + }, + "capacity": { + "instanceType": "*", + "machineImage": "*", + "taskDrainTime": "*", + "spotInstanceDraining": "boolean", + "topicEncryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "machineImageType": "MachineImageType", + "minCapacity": "*", + "maxCapacity": "*", + "desiredCapacity": "*", + "keyName": "*", + "keyPair": { + "keyPairName": "*", + "type": "KeyPairType" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + } + }, + "notificationsTopic": { + "topicArn": "*", + "topicName": "*", + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "notifications": { + "scalingEvents": "*" + }, + "allowAllOutbound": "boolean", + "updateType": "UpdateType", + "rollingUpdateConfiguration": { + "maxBatchSize": "*", + "minInstancesInService": "*", + "minSuccessfulInstancesPercent": "*", + "waitOnResourceSignals": "boolean", + "suspendProcesses": "ScalingProcess" + }, + "replacingUpdateMinSuccessfulInstancesPercent": "*", + "ignoreUnmodifiedSizeProperties": "boolean", + "resourceSignalCount": "*", + "associatePublicIpAddress": "boolean", + "spotPrice": "*", + "healthCheck": "*", + "healthChecks": "*", + "blockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "instanceMonitoring": "Monitoring", + "groupMetrics": "*", + "signals": "*", + "updatePolicy": "*", + "newInstancesProtectedFromScaleIn": "boolean", + "autoScalingGroupName": "*", + "terminationPolicies": "TerminationPolicy", + "terminationPolicyCustomLambdaFunctionArn": "*", + "capacityRebalance": "boolean", + "ssmSessionPermissions": "boolean", + "azCapacityDistributionStrategy": "CapacityDistributionStrategy", + "deletionProtection": "DeletionProtection", + "instanceLifecyclePolicy": { + "retentionTriggers": { + "terminateHookAbandon": "TerminateHookAbandonAction" + } + } + }, + "capacityProviders": "*", + "enableFargateCapacityProviders": [], + "containerInsights": "boolean", + "containerInsightsV2": "ContainerInsights", + "executeCommandConfiguration": { + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logConfiguration": { + "cloudWatchEncryptionEnabled": "boolean", + "cloudWatchLogGroup": "*", + "s3Bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "policy": "*", + "replicationRoleArn": "*" + }, + "s3EncryptionEnabled": "boolean", + "s3KeyPrefix": "*" + }, + "logging": "ExecuteCommandLogging" + }, + "managedStorageConfiguration": { + "fargateEphemeralStorageKmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "kmsKey": "*" + }, + "addDefaultCapacityProviderStrategy": [ + { + "capacityProvider": "*", + "base": "*", + "weight": "*" + } + ], + "addDefaultCloudMapNamespace": [ + { + "name": "*", + "type": "NamespaceType", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "useForServiceConnect": "boolean" + } + ], + "addExistingDefaultCloudMapNamespace": [ + { + "namespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "useForServiceConnect": "boolean" + } + ], + "addCapacity": [ + "*", + { + "instanceType": "*", + "machineImage": "*", + "taskDrainTime": "*", + "spotInstanceDraining": "boolean", + "topicEncryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "machineImageType": "MachineImageType", + "minCapacity": "*", + "maxCapacity": "*", + "desiredCapacity": "*", + "keyName": "*", + "keyPair": { + "keyPairName": "*", + "type": "KeyPairType" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + } + }, + "notificationsTopic": { + "topicArn": "*", + "topicName": "*", + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "notifications": { + "scalingEvents": "*" + }, + "allowAllOutbound": "boolean", + "updateType": "UpdateType", + "rollingUpdateConfiguration": { + "maxBatchSize": "*", + "minInstancesInService": "*", + "minSuccessfulInstancesPercent": "*", + "waitOnResourceSignals": "boolean", + "suspendProcesses": "ScalingProcess" + }, + "replacingUpdateMinSuccessfulInstancesPercent": "*", + "ignoreUnmodifiedSizeProperties": "boolean", + "resourceSignalCount": "*", + "associatePublicIpAddress": "boolean", + "spotPrice": "*", + "healthCheck": "*", + "healthChecks": "*", + "blockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "instanceMonitoring": "Monitoring", + "groupMetrics": "*", + "signals": "*", + "updatePolicy": "*", + "newInstancesProtectedFromScaleIn": "boolean", + "autoScalingGroupName": "*", + "terminationPolicies": "TerminationPolicy", + "terminationPolicyCustomLambdaFunctionArn": "*", + "capacityRebalance": "boolean", + "ssmSessionPermissions": "boolean", + "azCapacityDistributionStrategy": "CapacityDistributionStrategy", + "deletionProtection": "DeletionProtection", + "instanceLifecyclePolicy": { + "retentionTriggers": { + "terminateHookAbandon": "TerminateHookAbandonAction" + } + } + } + ], + "addAsgCapacityProvider": [ + "*", + { + "taskDrainTime": "*", + "spotInstanceDraining": "boolean", + "topicEncryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "machineImageType": "MachineImageType" + } + ], + "addManagedInstancesCapacityProvider": [ + "*" + ], + "addAutoScalingGroup": [ + "*", + { + "taskDrainTime": "*", + "spotInstanceDraining": "boolean", + "topicEncryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "machineImageType": "MachineImageType" + } + ], + "addCapacityProvider": [ + "*" + ], + "arnForTasks": [ + "*" + ], + "grantTaskProtection": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "metricCpuReservation": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricCpuUtilization": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricMemoryReservation": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricMemoryUtilization": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metric": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ] + }, + "ImportedCluster": { + "clusterName": "*", + "clusterArn": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "hasEc2Capacity": "boolean", + "defaultCloudMapNamespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "autoscalingGroup": { + "autoScalingGroupName": "*", + "autoScalingGroupArn": "*", + "osType": "OperatingSystemType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "executeCommandConfiguration": { + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logConfiguration": { + "cloudWatchEncryptionEnabled": "boolean", + "cloudWatchLogGroup": "*", + "s3Bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "policy": "*", + "replicationRoleArn": "*" + }, + "s3EncryptionEnabled": "boolean", + "s3KeyPrefix": "*" + }, + "logging": "ExecuteCommandLogging" + } + } + }, + "aws-cdk-lib.aws-efs": { + "AccessPoint": { + "fileSystem": "*", + "createAcl": { + "ownerUid": "*", + "ownerGid": "*", + "permissions": "*" + }, + "path": "*", + "posixUser": { + "uid": "*", + "gid": "*", + "secondaryGids": "*" + }, + "clientToken": "*" + }, + "ImportedAccessPoint": { + "accessPointId": "*", + "accessPointArn": "*", + "fileSystem": "*" + }, + "FileSystem": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "encrypted": "boolean", + "fileSystemName": "*", + "kmsKey": "*", + "lifecyclePolicy": "LifecyclePolicy", + "outOfInfrequentAccessPolicy": "OutOfInfrequentAccessPolicy", + "transitionToArchivePolicy": "LifecyclePolicy", + "performanceMode": "PerformanceMode", + "throughputMode": "ThroughputMode", + "provisionedThroughputPerSecond": "*", + "removalPolicy": "RemovalPolicy", + "enableAutomaticBackups": "boolean", + "fileSystemPolicy": "*", + "allowAnonymousAccess": "boolean", + "oneZone": "boolean", + "replicationOverwriteProtection": "ReplicationOverwriteProtection", + "replicationConfiguration": "*", + "addAccessPoint": [ + "*", + { + "createAcl": { + "ownerUid": "*", + "ownerGid": "*", + "permissions": "*" + }, + "path": "*", + "posixUser": { + "uid": "*", + "gid": "*", + "secondaryGids": "*" + }, + "clientToken": "*" + } + ] + }, + "ImportedFileSystem": { + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "fileSystemId": "*", + "fileSystemArn": "*" + } + }, + "aws-cdk-lib.aws-eks": { + "AccessEntry": { + "accessEntryName": "*", + "accessEntryType": "AccessEntryType", + "cluster": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clusterName": "*", + "clusterArn": "*", + "clusterEndpoint": "*", + "clusterCertificateAuthorityData": "*", + "clusterSecurityGroupId": "*", + "clusterSecurityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "clusterEncryptionConfigKeyArn": "*", + "openIdConnectProvider": { + "openIdConnectProviderArn": "*", + "openIdConnectProviderIssuer": "*" + }, + "eksPodIdentityAgent": { + "addonName": "*", + "addonArn": "*" + }, + "kubectlRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "kubectlEnvironment": "*", + "kubectlLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "ipFamily": "IpFamily", + "kubectlProvider": { + "serviceToken": "*", + "roleArn": "*" + }, + "kubectlMemory": "*", + "prune": "boolean", + "authenticationMode": "AuthenticationMode" + }, + "accessPolicies": { + "accessScope": { + "namespaces": "*", + "type": "AccessScopeType" + }, + "policy": "*" + }, + "principal": "*", + "removalPolicy": "RemovalPolicy", + "addAccessPolicies": [ + { + "accessScope": { + "namespaces": "*", + "type": "AccessScopeType" + }, + "policy": "*" + } + ] + }, + "Addon": { + "addonName": "*", + "addonVersion": "*", + "cluster": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clusterName": "*", + "clusterArn": "*", + "clusterEndpoint": "*", + "clusterCertificateAuthorityData": "*", + "clusterSecurityGroupId": "*", + "clusterSecurityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "clusterEncryptionConfigKeyArn": "*", + "openIdConnectProvider": { + "openIdConnectProviderArn": "*", + "openIdConnectProviderIssuer": "*" + }, + "eksPodIdentityAgent": { + "addonName": "*", + "addonArn": "*" + }, + "kubectlRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "kubectlEnvironment": "*", + "kubectlLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "ipFamily": "IpFamily", + "kubectlProvider": { + "serviceToken": "*", + "roleArn": "*" + }, + "kubectlMemory": "*", + "prune": "boolean", + "authenticationMode": "AuthenticationMode" + }, + "preserveOnDelete": "boolean", + "configurationValues": "*", + "removalPolicy": "RemovalPolicy" + }, + "Cluster": { + "defaultCapacity": "*", + "defaultCapacityInstance": "*", + "defaultCapacityType": "DefaultCapacityType", + "kubectlLambdaRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "bootstrapClusterCreatorAdminPermissions": "boolean", + "bootstrapSelfManagedAddons": "boolean", + "tags": "*", + "mastersRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "coreDnsComputeType": "CoreDnsComputeType", + "outputMastersRoleArn": "boolean", + "endpointAccess": "*", + "kubectlEnvironment": "*", + "kubectlLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "awscliLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "kubectlMemory": "*", + "clusterHandlerEnvironment": "*", + "clusterHandlerSecurityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "onEventLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "prune": "boolean", + "placeClusterHandlerInVpc": "boolean", + "secretsEncryptionKey": "*", + "ipFamily": "IpFamily", + "serviceIpv4Cidr": "*", + "albController": { + "version": "*", + "repository": "*", + "policy": "*", + "additionalHelmChartValues": { + "enableWafv2": "boolean", + "enableWaf": "boolean" + }, + "overwriteServiceAccount": "boolean", + "removalPolicy": "RemovalPolicy" + }, + "clusterLogging": "ClusterLoggingTypes", + "authenticationMode": "AuthenticationMode", + "remoteNodeNetworks": { + "cidrs": "*" + }, + "remotePodNetworks": { + "cidrs": "*" + }, + "removalPolicy": "RemovalPolicy", + "deletionProtection": "boolean", + "controlPlaneScalingTier": "ControlPlaneScalingTier", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "clusterName": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "version": "*", + "outputClusterName": "boolean", + "outputConfigCommand": "boolean", + "grantAccess": [ + "*", + "*", + { + "accessScope": { + "namespaces": "*", + "type": "AccessScopeType" + }, + "policy": "*" + }, + { + "accessEntryType": "AccessEntryType" + } + ], + "getServiceLoadBalancerAddress": [ + "*", + { + "timeout": "*", + "namespace": "*" + } + ], + "getIngressLoadBalancerAddress": [ + "*", + { + "timeout": "*", + "namespace": "*" + } + ], + "addAutoScalingGroupCapacity": [ + "*", + { + "instanceType": "*", + "mapRole": "boolean", + "bootstrapEnabled": "boolean", + "bootstrapOptions": { + "useMaxPods": "boolean", + "enableDockerBridge": "boolean", + "awsApiRetryAttempts": "*", + "dockerConfigJson": "*", + "dnsClusterIp": "*", + "kubeletExtraArgs": "*", + "additionalArgs": "*" + }, + "machineImageType": "MachineImageType", + "spotInterruptHandler": "boolean", + "minCapacity": "*", + "maxCapacity": "*", + "desiredCapacity": "*", + "keyName": "*", + "keyPair": { + "keyPairName": "*", + "type": "KeyPairType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + } + }, + "notificationsTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*" + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "notifications": { + "scalingEvents": "*" + }, + "allowAllOutbound": "boolean", + "updateType": "UpdateType", + "rollingUpdateConfiguration": { + "maxBatchSize": "*", + "minInstancesInService": "*", + "minSuccessfulInstancesPercent": "*", + "pauseTime": "*", + "waitOnResourceSignals": "boolean", + "suspendProcesses": "ScalingProcess" + }, + "replacingUpdateMinSuccessfulInstancesPercent": "*", + "ignoreUnmodifiedSizeProperties": "boolean", + "resourceSignalCount": "*", + "associatePublicIpAddress": "boolean", + "spotPrice": "*", + "healthCheck": "*", + "healthChecks": "*", + "blockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "instanceMonitoring": "Monitoring", + "groupMetrics": "*", + "signals": "*", + "updatePolicy": "*", + "newInstancesProtectedFromScaleIn": "boolean", + "autoScalingGroupName": "*", + "terminationPolicies": "TerminationPolicy", + "terminationPolicyCustomLambdaFunctionArn": "*", + "capacityRebalance": "boolean", + "ssmSessionPermissions": "boolean", + "azCapacityDistributionStrategy": "CapacityDistributionStrategy", + "deletionProtection": "DeletionProtection", + "instanceLifecyclePolicy": { + "retentionTriggers": { + "terminateHookAbandon": "TerminateHookAbandonAction" + } + } + } + ], + "addNodegroupCapacity": [ + "*", + { + "nodegroupName": "*", + "subnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "amiType": "NodegroupAmiType", + "diskSize": "*", + "desiredSize": "*", + "maxSize": "*", + "minSize": "*", + "forceUpdate": "boolean", + "instanceType": "*", + "labels": "*", + "taints": { + "effect": "TaintEffect", + "key": "*", + "value": "*" + }, + "nodeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "releaseVersion": "*", + "remoteAccess": { + "sshKeyName": "*", + "sourceSecurityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + }, + "tags": "*", + "launchTemplateSpec": { + "id": "*", + "version": "*" + }, + "capacityType": "CapacityType", + "maxUnavailable": "*", + "maxUnavailablePercentage": "*", + "enableNodeAutoRepair": "boolean", + "removalPolicy": "RemovalPolicy" + } + ], + "addFargateProfile": [ + "*", + { + "fargateProfileName": "*", + "podExecutionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "selectors": { + "namespace": "*", + "labels": "*" + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*" + }, + "removalPolicy": "RemovalPolicy" + } + ], + "_attachFargateProfile": [ + "*" + ], + "_attachKubectlResourceScope": [ + "*" + ] + }, + "ImportedCluster": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clusterName": "*", + "clusterEndpoint": "*", + "clusterCertificateAuthorityData": "*", + "clusterSecurityGroupId": "*", + "clusterEncryptionConfigKeyArn": "*", + "ipFamily": "IpFamily", + "securityGroupIds": "*", + "kubectlRoleArn": "*", + "kubectlLambdaRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "kubectlEnvironment": "*", + "kubectlSecurityGroupId": "*", + "kubectlPrivateSubnetIds": "*", + "openIdConnectProvider": { + "openIdConnectProviderArn": "*", + "openIdConnectProviderIssuer": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "kubectlLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "awscliLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "kubectlProvider": { + "serviceToken": "*", + "roleArn": "*", + "handlerRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "kubectlMemory": "*", + "clusterHandlerSecurityGroupId": "*", + "onEventLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "prune": "boolean" + }, + "FargateCluster": { + "defaultProfile": { + "fargateProfileName": "*", + "podExecutionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "selectors": { + "namespace": "*", + "labels": "*" + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*" + }, + "removalPolicy": "RemovalPolicy" + }, + "mastersRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "coreDnsComputeType": "CoreDnsComputeType", + "outputMastersRoleArn": "boolean", + "endpointAccess": "*", + "kubectlEnvironment": "*", + "kubectlLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "awscliLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "kubectlMemory": "*", + "clusterHandlerEnvironment": "*", + "clusterHandlerSecurityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "onEventLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "prune": "boolean", + "placeClusterHandlerInVpc": "boolean", + "secretsEncryptionKey": "*", + "ipFamily": "IpFamily", + "serviceIpv4Cidr": "*", + "albController": { + "version": "*", + "repository": "*", + "policy": "*", + "additionalHelmChartValues": { + "enableWafv2": "boolean", + "enableWaf": "boolean" + }, + "overwriteServiceAccount": "boolean", + "removalPolicy": "RemovalPolicy" + }, + "clusterLogging": "ClusterLoggingTypes", + "authenticationMode": "AuthenticationMode", + "remoteNodeNetworks": { + "cidrs": "*" + }, + "remotePodNetworks": { + "cidrs": "*" + }, + "removalPolicy": "RemovalPolicy", + "deletionProtection": "boolean", + "controlPlaneScalingTier": "ControlPlaneScalingTier", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "clusterName": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "version": "*", + "outputClusterName": "boolean", + "outputConfigCommand": "boolean" + }, + "Nodegroup": { + "cluster": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clusterName": "*", + "clusterArn": "*", + "clusterEndpoint": "*", + "clusterCertificateAuthorityData": "*", + "clusterSecurityGroupId": "*", + "clusterSecurityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "clusterEncryptionConfigKeyArn": "*", + "openIdConnectProvider": { + "openIdConnectProviderArn": "*", + "openIdConnectProviderIssuer": "*" + }, + "eksPodIdentityAgent": { + "addonName": "*", + "addonArn": "*" + }, + "kubectlRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "kubectlEnvironment": "*", + "kubectlLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "ipFamily": "IpFamily", + "kubectlProvider": { + "serviceToken": "*", + "roleArn": "*" + }, + "kubectlMemory": "*", + "prune": "boolean", + "authenticationMode": "AuthenticationMode" + }, + "nodegroupName": "*", + "subnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "amiType": "NodegroupAmiType", + "diskSize": "*", + "desiredSize": "*", + "maxSize": "*", + "minSize": "*", + "forceUpdate": "boolean", + "instanceType": "*", + "instanceTypes": "*", + "labels": "*", + "taints": { + "effect": "TaintEffect", + "key": "*", + "value": "*" + }, + "nodeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "releaseVersion": "*", + "remoteAccess": { + "sshKeyName": "*", + "sourceSecurityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + }, + "tags": "*", + "launchTemplateSpec": { + "id": "*", + "version": "*" + }, + "capacityType": "CapacityType", + "maxUnavailable": "*", + "maxUnavailablePercentage": "*", + "enableNodeAutoRepair": "boolean", + "removalPolicy": "RemovalPolicy" + }, + "OpenIdConnectProvider": { + "url": "*", + "removalPolicy": "RemovalPolicy" + }, + "OidcProviderNative": { + "url": "*", + "removalPolicy": "RemovalPolicy" + } + }, + "aws-cdk-lib.aws-eks-v2": { + "AccessEntry": { + "accessEntryName": "*", + "accessEntryType": "AccessEntryType", + "cluster": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clusterName": "*", + "clusterArn": "*", + "clusterEndpoint": "*", + "clusterCertificateAuthorityData": "*", + "clusterSecurityGroupId": "*", + "clusterSecurityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "clusterEncryptionConfigKeyArn": "*", + "openIdConnectProvider": { + "openIdConnectProviderArn": "*", + "openIdConnectProviderIssuer": "*" + }, + "eksPodIdentityAgent": { + "addonName": "*", + "addonArn": "*" + }, + "ipFamily": "IpFamily", + "kubectlProviderOptions": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "awscliLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "environment": "*", + "memory": "*", + "removalPolicy": "RemovalPolicy" + }, + "kubectlProvider": { + "serviceToken": "*" + }, + "prune": "boolean" + }, + "accessPolicies": { + "accessScope": { + "namespaces": "*", + "type": "AccessScopeType" + }, + "policy": "*" + }, + "principal": "*", + "removalPolicy": "RemovalPolicy", + "addAccessPolicies": [ + { + "accessScope": { + "namespaces": "*", + "type": "AccessScopeType" + }, + "policy": "*" + } + ] + }, + "Addon": { + "addonName": "*", + "addonVersion": "*", + "cluster": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clusterName": "*", + "clusterArn": "*", + "clusterEndpoint": "*", + "clusterCertificateAuthorityData": "*", + "clusterSecurityGroupId": "*", + "clusterSecurityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "clusterEncryptionConfigKeyArn": "*", + "openIdConnectProvider": { + "openIdConnectProviderArn": "*", + "openIdConnectProviderIssuer": "*" + }, + "eksPodIdentityAgent": { + "addonName": "*", + "addonArn": "*" + }, + "ipFamily": "IpFamily", + "kubectlProviderOptions": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "awscliLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "environment": "*", + "memory": "*", + "removalPolicy": "RemovalPolicy" + }, + "kubectlProvider": { + "serviceToken": "*" + }, + "prune": "boolean" + }, + "preserveOnDelete": "boolean", + "configurationValues": "*", + "removalPolicy": "RemovalPolicy" + }, + "Cluster": { + "compute": { + "nodePools": "*", + "nodeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "defaultCapacity": "*", + "defaultCapacityInstance": "*", + "defaultCapacityType": "DefaultCapacityType", + "bootstrapClusterCreatorAdminPermissions": "boolean", + "bootstrapSelfManagedAddons": "boolean", + "outputConfigCommand": "boolean", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "clusterName": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "version": "*", + "mastersRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "coreDnsComputeType": "CoreDnsComputeType", + "endpointAccess": "*", + "prune": "boolean", + "secretsEncryptionKey": "*", + "ipFamily": "IpFamily", + "serviceIpv4Cidr": "*", + "albController": { + "version": "*", + "repository": "*", + "policy": "*", + "additionalHelmChartValues": "*", + "overwriteServiceAccount": "boolean", + "removalPolicy": "RemovalPolicy" + }, + "clusterLogging": "ClusterLoggingTypes", + "tags": "*", + "kubectlProviderOptions": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "awscliLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "environment": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "memory": "*", + "privateSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + }, + "removalPolicy": "RemovalPolicy" + }, + "remoteNodeNetworks": { + "cidrs": "*" + }, + "remotePodNetworks": { + "cidrs": "*" + }, + "controlPlaneScalingTier": "*", + "removalPolicy": "RemovalPolicy", + "grantAccess": [ + "*", + "*", + { + "accessScope": { + "namespaces": "*", + "type": "AccessScopeType" + }, + "policy": "*" + }, + { + "accessEntryType": "AccessEntryType" + } + ], + "grantClusterAdmin": [ + "*", + "*" + ], + "getServiceLoadBalancerAddress": [ + "*", + { + "timeout": "*", + "namespace": "*" + } + ], + "getIngressLoadBalancerAddress": [ + "*", + { + "timeout": "*", + "namespace": "*" + } + ], + "addAutoScalingGroupCapacity": [ + "*", + { + "instanceType": "*", + "bootstrapEnabled": "boolean", + "bootstrapOptions": { + "useMaxPods": "boolean", + "enableDockerBridge": "boolean", + "awsApiRetryAttempts": "*", + "dockerConfigJson": "*", + "dnsClusterIp": "*", + "kubeletExtraArgs": "*", + "additionalArgs": "*" + }, + "machineImageType": "MachineImageType", + "minCapacity": "*", + "maxCapacity": "*", + "desiredCapacity": "*", + "keyName": "*", + "keyPair": { + "keyPairName": "*", + "type": "KeyPairType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + } + }, + "notificationsTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*" + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "notifications": { + "scalingEvents": "*" + }, + "allowAllOutbound": "boolean", + "updateType": "UpdateType", + "rollingUpdateConfiguration": { + "maxBatchSize": "*", + "minInstancesInService": "*", + "minSuccessfulInstancesPercent": "*", + "pauseTime": "*", + "waitOnResourceSignals": "boolean", + "suspendProcesses": "ScalingProcess" + }, + "replacingUpdateMinSuccessfulInstancesPercent": "*", + "ignoreUnmodifiedSizeProperties": "boolean", + "resourceSignalCount": "*", + "associatePublicIpAddress": "boolean", + "spotPrice": "*", + "healthCheck": "*", + "healthChecks": "*", + "blockDevices": { + "deviceName": "*", + "volume": "*", + "mappingEnabled": "boolean" + }, + "instanceMonitoring": "Monitoring", + "groupMetrics": "*", + "signals": "*", + "updatePolicy": "*", + "newInstancesProtectedFromScaleIn": "boolean", + "autoScalingGroupName": "*", + "terminationPolicies": "TerminationPolicy", + "terminationPolicyCustomLambdaFunctionArn": "*", + "capacityRebalance": "boolean", + "ssmSessionPermissions": "boolean", + "azCapacityDistributionStrategy": "CapacityDistributionStrategy", + "deletionProtection": "DeletionProtection", + "instanceLifecyclePolicy": { + "retentionTriggers": { + "terminateHookAbandon": "TerminateHookAbandonAction" + } + } + } + ], + "addNodegroupCapacity": [ + "*", + { + "nodegroupName": "*", + "subnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "amiType": "NodegroupAmiType", + "diskSize": "*", + "desiredSize": "*", + "maxSize": "*", + "minSize": "*", + "forceUpdate": "boolean", + "instanceTypes": "*", + "labels": "*", + "taints": { + "effect": "TaintEffect", + "key": "*", + "value": "*" + }, + "nodeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "releaseVersion": "*", + "remoteAccess": { + "sshKeyName": "*", + "sourceSecurityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + }, + "tags": "*", + "launchTemplateSpec": { + "id": "*", + "version": "*" + }, + "capacityType": "CapacityType", + "maxUnavailable": "*", + "maxUnavailablePercentage": "*", + "enableNodeAutoRepair": "boolean", + "removalPolicy": "RemovalPolicy" + } + ], + "addFargateProfile": [ + "*", + { + "fargateProfileName": "*", + "podExecutionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "selectors": { + "namespace": "*", + "labels": "*" + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*" + }, + "removalPolicy": "RemovalPolicy" + } + ], + "_attachFargateProfile": [ + "*" + ], + "_dependOnKubectlBarrier": [ + "*" + ] + }, + "ImportedCluster": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clusterName": "*", + "clusterEndpoint": "*", + "clusterCertificateAuthorityData": "*", + "clusterSecurityGroupId": "*", + "clusterEncryptionConfigKeyArn": "*", + "ipFamily": "IpFamily", + "securityGroupIds": "*", + "openIdConnectProvider": { + "openIdConnectProviderArn": "*", + "openIdConnectProviderIssuer": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "kubectlProvider": { + "serviceToken": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "kubectlProviderOptions": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "awscliLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "environment": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "memory": "*", + "privateSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + }, + "removalPolicy": "RemovalPolicy" + }, + "prune": "boolean" + }, + "FargateCluster": { + "defaultProfile": { + "fargateProfileName": "*", + "podExecutionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "selectors": { + "namespace": "*", + "labels": "*" + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*" + }, + "removalPolicy": "RemovalPolicy" + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "clusterName": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "version": "*", + "mastersRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "coreDnsComputeType": "CoreDnsComputeType", + "endpointAccess": "*", + "prune": "boolean", + "secretsEncryptionKey": "*", + "ipFamily": "IpFamily", + "serviceIpv4Cidr": "*", + "albController": { + "version": "*", + "repository": "*", + "policy": "*", + "additionalHelmChartValues": "*", + "overwriteServiceAccount": "boolean", + "removalPolicy": "RemovalPolicy" + }, + "clusterLogging": "ClusterLoggingTypes", + "tags": "*", + "kubectlProviderOptions": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "awscliLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "environment": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "memory": "*", + "privateSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + }, + "removalPolicy": "RemovalPolicy" + }, + "remoteNodeNetworks": { + "cidrs": "*" + }, + "remotePodNetworks": { + "cidrs": "*" + }, + "controlPlaneScalingTier": "*", + "removalPolicy": "RemovalPolicy" + }, + "Nodegroup": { + "cluster": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clusterName": "*", + "clusterArn": "*", + "clusterEndpoint": "*", + "clusterCertificateAuthorityData": "*", + "clusterSecurityGroupId": "*", + "clusterSecurityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "clusterEncryptionConfigKeyArn": "*", + "openIdConnectProvider": { + "openIdConnectProviderArn": "*", + "openIdConnectProviderIssuer": "*" + }, + "eksPodIdentityAgent": { + "addonName": "*", + "addonArn": "*" + }, + "ipFamily": "IpFamily", + "kubectlProviderOptions": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + } + }, + "awscliLayer": { + "layerVersionArn": "*", + "compatibleRuntimes": "*" + }, + "environment": "*", + "memory": "*", + "removalPolicy": "RemovalPolicy" + }, + "kubectlProvider": { + "serviceToken": "*" + }, + "prune": "boolean" + }, + "nodegroupName": "*", + "subnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "amiType": "NodegroupAmiType", + "diskSize": "*", + "desiredSize": "*", + "maxSize": "*", + "minSize": "*", + "forceUpdate": "boolean", + "instanceTypes": "*", + "labels": "*", + "taints": { + "effect": "TaintEffect", + "key": "*", + "value": "*" + }, + "nodeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "releaseVersion": "*", + "remoteAccess": { + "sshKeyName": "*", + "sourceSecurityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + }, + "tags": "*", + "launchTemplateSpec": { + "id": "*", + "version": "*" + }, + "capacityType": "CapacityType", + "maxUnavailable": "*", + "maxUnavailablePercentage": "*", + "enableNodeAutoRepair": "boolean", + "removalPolicy": "RemovalPolicy" + }, + "OpenIdConnectProvider": { + "url": "*", + "removalPolicy": "RemovalPolicy" + }, + "OidcProviderNative": { + "url": "*", + "removalPolicy": "RemovalPolicy" + } + }, + "aws-cdk-lib.aws-elasticloadbalancing": { + "LoadBalancer": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "internetFacing": "boolean", + "listeners": { + "externalPort": "*", + "externalProtocol": "LoadBalancingProtocol", + "internalPort": "*", + "internalProtocol": "LoadBalancingProtocol", + "policyNames": "*", + "sslCertificateId": "*", + "sslCertificateArn": "*", + "allowConnectionsFrom": { + "connections": "*" + } + }, + "targets": { + "connections": "*" + }, + "healthCheck": { + "port": "*", + "protocol": "LoadBalancingProtocol", + "path": "*", + "healthyThreshold": "*", + "unhealthyThreshold": "*", + "interval": "*" + }, + "crossZone": "boolean", + "subnetSelection": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "accessLoggingPolicy": "*", + "addListener": [ + { + "externalPort": "*", + "externalProtocol": "LoadBalancingProtocol", + "internalPort": "*", + "internalProtocol": "LoadBalancingProtocol", + "policyNames": "*", + "sslCertificateId": "*", + "sslCertificateArn": "*", + "allowConnectionsFrom": { + "connections": "*" + } + } + ], + "addTarget": [ + { + "connections": "*" + } + ], + "_addInstanceId": [ + "*" + ] + } + }, + "aws-cdk-lib.aws-elasticsearch": { + "Domain": { + "accessPolicies": "*", + "advancedOptions": "*", + "cognitoKibanaAuth": { + "identityPoolId": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "userPoolId": "*" + }, + "domainName": "*", + "ebs": { + "enabled": "boolean", + "iops": "*", + "volumeSize": "*", + "volumeType": "EbsDeviceVolumeType" + }, + "capacity": { + "masterNodes": "*", + "masterNodeInstanceType": "*", + "dataNodes": "*", + "dataNodeInstanceType": "*", + "warmNodes": "*", + "warmInstanceType": "*" + }, + "zoneAwareness": { + "enabled": "boolean", + "availabilityZoneCount": "*" + }, + "version": "*", + "encryptionAtRest": { + "enabled": "boolean", + "kmsKey": "*" + }, + "logging": { + "slowSearchLogEnabled": "boolean", + "slowSearchLogGroup": "*", + "slowIndexLogEnabled": "boolean", + "slowIndexLogGroup": "*", + "appLogEnabled": "boolean", + "appLogGroup": "*", + "auditLogEnabled": "boolean", + "auditLogGroup": "*" + }, + "nodeToNodeEncryption": "boolean", + "automatedSnapshotStartHour": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "enforceHttps": "boolean", + "tlsSecurityPolicy": "TLSSecurityPolicy", + "fineGrainedAccessControl": { + "masterUserArn": "*", + "masterUserName": "*", + "masterUserPassword": "*" + }, + "useUnsignedBasicAuth": "boolean", + "enableVersionUpgrade": "boolean", + "removalPolicy": "RemovalPolicy", + "customEndpoint": { + "domainName": "*", + "certificate": "*", + "hostedZone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + } + }, + "addAccessPolicies": [ + "*" + ] + } + }, + "aws-cdk-lib.aws-events": { + "ApiDestination": { + "apiDestinationName": "*", + "description": "*", + "connection": "*", + "endpoint": "*", + "httpMethod": "HttpMethod", + "rateLimitPerSecond": "*" + }, + "Archive": { + "sourceEventBus": "*", + "archiveName": "*", + "description": "*", + "eventPattern": { + "version": "*", + "id": "*", + "detailType": "*", + "source": "*", + "account": "*", + "time": "*", + "region": "*", + "resources": "*", + "detail": "*" + }, + "retention": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "Connection": { + "connectionName": "*", + "description": "*", + "authorization": "*", + "bodyParameters": "*", + "headerParameters": "*", + "queryStringParameters": "*" + }, + "ImportedConnection": { + "connectionName": "*", + "connectionArn": "*", + "connectionSecretArn": "*" + }, + "EventBus": { + "addToResourcePolicy": [ + "*" + ] + }, + "ImportedEventBus": { + "eventBusName": "*", + "eventBusArn": "*", + "eventBusPolicy": "*", + "eventSourceName": "*", + "addToResourcePolicy": [ + "*" + ] + }, + "EventBusPolicy": { + "eventBus": { + "eventBusName": "*", + "eventBusArn": "*", + "eventBusPolicy": "*", + "eventSourceName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "statement": "*", + "statementId": "*" + }, + "Rule": { + "enabled": "boolean", + "schedule": "*", + "targets": "*", + "eventBus": "*", + "role": "*", + "description": "*", + "ruleName": "*", + "eventPattern": { + "version": "*", + "id": "*", + "detailType": "*", + "source": "*", + "account": "*", + "time": "*", + "region": "*", + "resources": "*", + "detail": "*" + }, + "crossStackScope": "*", + "addTarget": [ + "*" + ], + "addEventPattern": [ + { + "version": "*", + "id": "*", + "detailType": "*", + "source": "*", + "account": "*", + "time": "*", + "region": "*", + "resources": "*", + "detail": "*" + } + ], + "_renderEventPattern": [] + }, + "MirrorRule": { + "enabled": "boolean", + "schedule": "*", + "targets": "*", + "eventBus": "*", + "role": "*", + "description": "*", + "ruleName": "*", + "eventPattern": { + "version": "*", + "id": "*", + "detailType": "*", + "source": "*", + "account": "*", + "time": "*", + "region": "*", + "resources": "*", + "detail": "*" + }, + "crossStackScope": "*", + "_renderEventPattern": [] + } + }, + "aws-cdk-lib.aws-fsx": { + "LustreFileSystem": { + "lustreConfiguration": { + "deploymentType": "LustreDeploymentType", + "exportPath": "*", + "importedFileChunkSizeMiB": "*", + "importPath": "*", + "autoImportPolicy": "LustreAutoImportPolicy", + "dataCompressionType": "LustreDataCompressionType", + "perUnitStorageThroughput": "*", + "weeklyMaintenanceStartTime": "*", + "automaticBackupRetention": "*", + "copyTagsToBackups": "boolean", + "dailyAutomaticBackupStartTime": "*", + "driveCacheType": "DriveCacheType" + }, + "fileSystemTypeVersion": "FileSystemTypeVersion", + "vpcSubnet": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "backupId": "*", + "kmsKey": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "storageCapacityGiB": "*", + "removalPolicy": "RemovalPolicy", + "storageType": "StorageType" + } + }, + "aws-cdk-lib.aws-globalaccelerator": { + "Accelerator": { + "acceleratorName": "*", + "enabled": "boolean", + "ipAddresses": "*", + "ipAddressType": "IpAddressType", + "addListener": [ + "*", + { + "listenerName": "*", + "portRanges": { + "fromPort": "*", + "toPort": "*" + }, + "protocol": "ConnectionProtocol", + "clientAffinity": "ClientAffinity" + } + ] + }, + "EndpointGroup": { + "listener": "*", + "endpointGroupName": "*", + "region": "*", + "healthCheckInterval": "*", + "healthCheckPath": "*", + "healthCheckPort": "*", + "healthCheckProtocol": "HealthCheckProtocol", + "healthCheckThreshold": "*", + "trafficDialPercentage": "*", + "portOverrides": { + "listenerPort": "*", + "endpointPort": "*" + }, + "endpoints": { + "region": "*" + }, + "addEndpoint": [ + { + "region": "*" + } + ], + "connectionsPeer": [ + "*", + { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + } + ] + }, + "Listener": { + "accelerator": "*", + "listenerName": "*", + "portRanges": { + "fromPort": "*", + "toPort": "*" + }, + "protocol": "ConnectionProtocol", + "clientAffinity": "ClientAffinity", + "addEndpointGroup": [ + "*", + { + "endpointGroupName": "*", + "region": "*", + "healthCheckInterval": "*", + "healthCheckPath": "*", + "healthCheckPort": "*", + "healthCheckProtocol": "HealthCheckProtocol", + "healthCheckThreshold": "*", + "trafficDialPercentage": "*", + "portOverrides": { + "listenerPort": "*", + "endpointPort": "*" + }, + "endpoints": { + "region": "*" + } + } + ] + } + }, + "aws-cdk-lib.aws-glue": { + "Catalog": { + "catalogName": "*", + "description": "*", + "encryptionAtRest": "*", + "connectionPasswordEncryption": { + "kmsKey": "*", + "returnConnectionPasswordEncrypted": "boolean" + } + }, + "AccountCatalog": { + "encryptionAtRest": "*", + "connectionPasswordEncryption": { + "kmsKey": "*", + "returnConnectionPasswordEncrypted": "boolean" + } + }, + "ImportedCatalog": {}, + "Connection": { + "type": "*", + "connectionName": "*", + "description": "*", + "properties": "*", + "secret": "*", + "matchCriteria": "*", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "network": "*", + "addProperty": [ + "*", + "*" + ] + }, + "DataQualityRuleset": { + "rulesetName": "*", + "description": "*", + "dqdl": "*", + "tags": "*", + "targetTable": "*", + "removalPolicy": "RemovalPolicy" + }, + "Database": { + "databaseName": "*", + "locationUri": "*", + "description": "*", + "catalog": { + "catalogId": "*", + "catalogArn": "*", + "encryptionKey": "*", + "connectionPasswordKey": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "removalPolicy": "RemovalPolicy" + }, + "ExternalTable": { + "connection": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "externalDataLocation": "*", + "tableName": "*", + "description": "*", + "database": { + "catalog": { + "catalogId": "*", + "catalogArn": "*", + "encryptionKey": "*", + "connectionPasswordKey": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "databaseArn": "*", + "databaseName": "*" + }, + "columns": { + "name": "*", + "type": "*", + "comment": "*" + }, + "partitionKeys": { + "name": "*", + "type": "*", + "comment": "*" + }, + "partitionIndexes": { + "indexName": "*", + "keyNames": "*" + }, + "dataFormat": "*", + "compressed": "boolean", + "storedAsSubDirectories": "boolean", + "enablePartitionFiltering": "boolean", + "storageParameters": "*", + "parameters": "*", + "hasEncryptedData": "boolean", + "partitionProjection": "*", + "grantRead": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantWrite": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantReadWrite": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "S3Table": { + "storage": "*", + "s3Prefix": "*", + "clientSideEncryption": "*", + "tableName": "*", + "description": "*", + "database": { + "catalog": { + "catalogId": "*", + "catalogArn": "*", + "encryptionKey": "*", + "connectionPasswordKey": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "databaseArn": "*", + "databaseName": "*" + }, + "columns": { + "name": "*", + "type": "*", + "comment": "*" + }, + "partitionKeys": { + "name": "*", + "type": "*", + "comment": "*" + }, + "partitionIndexes": { + "indexName": "*", + "keyNames": "*" + }, + "dataFormat": "*", + "compressed": "boolean", + "storedAsSubDirectories": "boolean", + "enablePartitionFiltering": "boolean", + "storageParameters": "*", + "parameters": "*", + "hasEncryptedData": "boolean", + "partitionProjection": "*", + "grantRead": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantWrite": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantReadWrite": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "SecurityConfiguration": { + "securityConfigurationName": "*", + "cloudWatchEncryption": "*", + "jobBookmarksEncryption": "*", + "s3Encryption": "*", + "removalPolicy": "RemovalPolicy" + } + }, + "aws-cdk-lib.aws-iam": { + "AccessKey": { + "serial": "*", + "status": "AccessKeyStatus", + "user": { + "userName": "*", + "userArn": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "Group": { + "groupName": "*", + "managedPolicies": { + "managedPolicyArn": "*" + }, + "path": "*", + "addManagedPolicy": [ + { + "managedPolicyArn": "*" + } + ] + }, + "InstanceProfile": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "instanceProfileName": "*", + "path": "*" + }, + "LazyRole": { + "assumedBy": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "externalId": "*", + "externalIds": "*", + "managedPolicies": { + "managedPolicyArn": "*" + }, + "inlinePolicies": "*", + "path": "*", + "permissionsBoundary": { + "managedPolicyArn": "*" + }, + "roleName": "*", + "maxSessionDuration": "*", + "description": "*", + "addToPrincipalPolicy": [ + "*" + ], + "addToPolicy": [ + "*" + ], + "attachInlinePolicy": [ + "*" + ], + "addManagedPolicy": [ + { + "managedPolicyArn": "*" + } + ], + "grant": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "*" + ], + "grantPassRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ], + "grantAssumeRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ] + }, + "ManagedPolicy": { + "managedPolicyName": "*", + "description": "*", + "path": "*", + "users": { + "userName": "*", + "userArn": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "roles": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "groups": "*", + "statements": "*", + "document": "*", + "addStatements": [ + "*" + ], + "attachToUser": [ + "*" + ], + "attachToRole": [ + { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ], + "attachToGroup": [ + "*" + ] + }, + "OidcProviderNative": { + "oidcProviderName": "*", + "url": "*", + "clientIds": "*", + "thumbprints": "*", + "removalPolicy": "RemovalPolicy" + }, + "OpenIdConnectProvider": { + "url": "*", + "clientIds": "*", + "thumbprints": "*", + "removalPolicy": "RemovalPolicy" + }, + "Policy": { + "policyName": "*", + "users": { + "userName": "*", + "userArn": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "roles": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "groups": { + "groupName": "*", + "groupArn": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "statements": "*", + "force": "boolean", + "document": "*", + "addStatements": [ + "*" + ], + "attachToUser": [ + { + "userName": "*", + "userArn": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ], + "attachToRole": [ + { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ], + "attachToGroup": [ + { + "groupName": "*", + "groupArn": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + }, + "Role": { + "assumedBy": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "externalId": "*", + "externalIds": "*", + "managedPolicies": { + "managedPolicyArn": "*" + }, + "inlinePolicies": "*", + "path": "*", + "permissionsBoundary": { + "managedPolicyArn": "*" + }, + "roleName": "*", + "maxSessionDuration": "*", + "description": "*", + "addToPrincipalPolicy": [ + "*" + ], + "addToPolicy": [ + "*" + ], + "addManagedPolicy": [ + { + "managedPolicyArn": "*" + } + ], + "attachInlinePolicy": [ + "*" + ], + "grant": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "*" + ], + "grantPassRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ], + "grantAssumeRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ], + "withoutPolicyUpdates": [ + { + "addGrantsToResources": "boolean" + } + ], + "applyRemovalPolicy": [ + "RemovalPolicy" + ] + }, + "SamlProvider": { + "name": "*", + "metadataDocument": "*" + }, + "User": { + "groups": { + "groupName": "*", + "groupArn": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "managedPolicies": { + "managedPolicyArn": "*" + }, + "path": "*", + "permissionsBoundary": { + "managedPolicyArn": "*" + }, + "userName": "*", + "password": "*", + "passwordResetRequired": "boolean", + "addToGroup": [ + { + "groupName": "*", + "groupArn": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ], + "addManagedPolicy": [ + { + "managedPolicyArn": "*" + } + ], + "attachInlinePolicy": [ + "*" + ], + "addToPrincipalPolicy": [ + "*" + ], + "addToPolicy": [ + "*" + ] + } + }, + "aws-cdk-lib.aws-inspector": { + "AssessmentTemplate": {} + }, + "aws-cdk-lib.aws-kinesis": { + "ResourcePolicy": { + "stream": { + "streamArn": "*", + "streamName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "streamConsumer": { + "streamConsumerArn": "*", + "streamConsumerName": "*", + "stream": { + "streamArn": "*", + "streamName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "policyDocument": "*" + }, + "StreamConsumer": { + "streamConsumerName": "*", + "stream": { + "streamArn": "*", + "streamName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "Stream": { + "streamName": "*", + "retentionPeriod": "*", + "shardCount": "*", + "encryption": "StreamEncryption", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "streamMode": "StreamMode", + "removalPolicy": "RemovalPolicy", + "shardLevelMetrics": "ShardLevelMetrics" + } + }, + "aws-cdk-lib.aws-kinesisfirehose": { + "DeliveryStream": { + "destination": "*", + "deliveryStreamName": "*", + "source": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "encryption": "*" + } + }, + "aws-cdk-lib.aws-kms": { + "Alias": { + "aliasName": "*", + "targetKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "removalPolicy": "RemovalPolicy" + }, + "Key": { + "description": "*", + "alias": "*", + "enableKeyRotation": "boolean", + "rotationPeriod": "*", + "enabled": "boolean", + "keySpec": "KeySpec", + "keyUsage": "KeyUsage", + "multiRegion": "boolean", + "policy": "*", + "admins": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "removalPolicy": "RemovalPolicy", + "trustAccountIdentities": "boolean", + "pendingWindow": "*", + "grantAdmin": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "ReferencedKey": { + "environmentFromArn": "*", + "keyArn": "*", + "keyId": "*", + "policy": "*", + "trustAccountIdentities": "boolean" + } + }, + "aws-cdk-lib.aws-lambda": { + "Alias": { + "aliasName": "*", + "version": { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + }, + "description": "*", + "additionalVersions": { + "version": { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + }, + "weight": "*" + }, + "provisionedConcurrentExecutions": "*", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*", + "metric": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "addAutoScaling": [ + { + "minCapacity": "*", + "maxCapacity": "*" + } + ] + }, + "CapacityProvider": { + "capacityProviderName": "*", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "operatorRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "architectures": "*", + "instanceTypeFilter": "*", + "maxVCpuCount": "*", + "scalingOptions": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "propagateTags": "*", + "logGroup": "*", + "systemLogLevel": "SystemLogLevel", + "addFunction": [ + { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + { + "perExecutionEnvironmentMaxConcurrency": "*", + "executionEnvironmentMemoryGiBPerVCpu": "*", + "publishToLatestPublished": "boolean", + "latestPublishedScalingConfig": { + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*" + } + } + ] + }, + "CodeSigningConfig": { + "signingProfiles": { + "signingProfileArn": "*", + "signingProfileName": "*", + "signingProfileVersion": "*", + "signingProfileVersionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "untrustedArtifactOnDeployment": "UntrustedArtifactOnDeployment", + "description": "*" + }, + "EventInvokeConfig": { + "function": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "qualifier": "*", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "EventSourceMapping": { + "target": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "eventSourceArn": "*", + "batchSize": "*", + "bisectBatchOnError": "boolean", + "onFailure": "*", + "enabled": "boolean", + "startingPosition": "StartingPosition", + "startingPositionTimestamp": "*", + "reportBatchItemFailures": "boolean", + "maxBatchingWindow": "*", + "maxConcurrency": "*", + "maxRecordAge": "*", + "retryAttempts": "*", + "parallelizationFactor": "*", + "kafkaTopic": "*", + "tumblingWindow": "*", + "kafkaBootstrapServers": "*", + "kafkaConsumerGroupId": "*", + "sourceAccessConfigurations": { + "type": "*", + "uri": "*" + }, + "filters": "*", + "filterEncryption": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "supportS3OnFailureDestination": "boolean", + "provisionedPollerConfig": { + "minimumPollers": "*", + "maximumPollers": "*", + "pollerGroupName": "*" + }, + "metricsConfig": { + "metrics": "MetricType" + }, + "logLevel": "EventSourceMappingLogLevel", + "schemaRegistryConfig": "*" + }, + "LatestVersion": { + "addAlias": [ + "*", + { + "description": "*", + "additionalVersions": { + "version": { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + }, + "weight": "*" + }, + "provisionedConcurrentExecutions": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + } + ] + }, + "FunctionUrl": { + "function": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "authType": "FunctionUrlAuthType", + "cors": { + "allowCredentials": "boolean", + "allowedHeaders": "*", + "allowedMethods": "HttpMethod", + "allowedOrigins": "*", + "exposedHeaders": "*", + "maxAge": "*" + }, + "invokeMode": "InvokeMode", + "grantInvokeUrl": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "Function": { + "runtime": "*", + "code": "*", + "handler": "*", + "description": "*", + "timeout": "*", + "environment": "*", + "functionName": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "initialPolicy": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipv6AllowedForDualStack": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "deadLetterQueueEnabled": "boolean", + "deadLetterQueue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "deadLetterTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "tracing": "Tracing", + "snapStart": "*", + "profiling": "boolean", + "profilingGroup": { + "profilingGroupName": "*", + "profilingGroupArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "insightsVersion": "*", + "adotInstrumentation": { + "layerVersion": "*", + "execWrapper": "AdotLambdaExecWrapper" + }, + "paramsAndSecrets": "*", + "layers": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "reservedConcurrentExecutions": "*", + "events": "*", + "logRetention": "RetentionDays", + "logRemovalPolicy": "RemovalPolicy", + "logRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logRetentionRetryOptions": { + "maxRetries": "*", + "base": "*" + }, + "currentVersionOptions": { + "codeSha256": "*", + "description": "*", + "provisionedConcurrentExecutions": "*", + "removalPolicy": "RemovalPolicy", + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "filesystem": "*", + "allowPublicSubnet": "boolean", + "environmentEncryption": "*", + "codeSigningConfig": "*", + "architectures": "*", + "architecture": "*", + "runtimeManagementMode": "*", + "tenancyConfig": "*", + "durableConfig": { + "executionTimeout": "*" + }, + "logGroup": "*", + "logFormat": "*", + "loggingFormat": "LoggingFormat", + "recursiveLoop": "RecursiveLoop", + "applicationLogLevel": "*", + "applicationLogLevelV2": "ApplicationLogLevel", + "systemLogLevel": "*", + "systemLogLevelV2": "SystemLogLevel", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*", + "addEnvironment": [ + "*", + "*", + { + "removeInEdge": "boolean" + } + ], + "invalidateVersionBasedOn": [ + "*" + ], + "addLayers": [ + { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ], + "addVersion": [ + "*", + "*", + "*", + "*", + { + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + } + ], + "addAlias": [ + "*", + { + "description": "*", + "additionalVersions": { + "version": { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + }, + "weight": "*" + }, + "provisionedConcurrentExecutions": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + } + ], + "_checkEdgeCompatibility": [] + }, + "DockerImageFunction": { + "code": "*", + "description": "*", + "timeout": "*", + "environment": "*", + "functionName": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "initialPolicy": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipv6AllowedForDualStack": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "deadLetterQueueEnabled": "boolean", + "deadLetterQueue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "deadLetterTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "tracing": "Tracing", + "snapStart": "*", + "profiling": "boolean", + "profilingGroup": { + "profilingGroupName": "*", + "profilingGroupArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "insightsVersion": "*", + "adotInstrumentation": { + "layerVersion": "*", + "execWrapper": "AdotLambdaExecWrapper" + }, + "paramsAndSecrets": "*", + "layers": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "reservedConcurrentExecutions": "*", + "events": "*", + "logRetention": "RetentionDays", + "logRemovalPolicy": "RemovalPolicy", + "logRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logRetentionRetryOptions": { + "maxRetries": "*", + "base": "*" + }, + "currentVersionOptions": { + "codeSha256": "*", + "description": "*", + "provisionedConcurrentExecutions": "*", + "removalPolicy": "RemovalPolicy", + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "filesystem": "*", + "allowPublicSubnet": "boolean", + "environmentEncryption": "*", + "codeSigningConfig": "*", + "architectures": "*", + "architecture": "*", + "runtimeManagementMode": "*", + "tenancyConfig": "*", + "durableConfig": { + "executionTimeout": "*" + }, + "logGroup": "*", + "logFormat": "*", + "loggingFormat": "LoggingFormat", + "recursiveLoop": "RecursiveLoop", + "applicationLogLevel": "*", + "applicationLogLevelV2": "ApplicationLogLevel", + "systemLogLevel": "*", + "systemLogLevelV2": "SystemLogLevel", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "Version": { + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "codeSha256": "*", + "description": "*", + "provisionedConcurrentExecutions": "*", + "removalPolicy": "RemovalPolicy", + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*", + "metric": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "addAlias": [ + "*", + { + "description": "*", + "additionalVersions": { + "version": { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + }, + "weight": "*" + }, + "provisionedConcurrentExecutions": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + } + ] + }, + "LayerVersion": { + "compatibleRuntimes": "*", + "compatibleArchitectures": "*", + "code": "*", + "description": "*", + "license": "*", + "layerVersionName": "*", + "removalPolicy": "RemovalPolicy" + }, + "SingletonFunction": { + "uuid": "*", + "lambdaPurpose": "*", + "runtime": "*", + "code": "*", + "handler": "*", + "description": "*", + "timeout": "*", + "environment": "*", + "functionName": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "initialPolicy": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipv6AllowedForDualStack": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "deadLetterQueueEnabled": "boolean", + "deadLetterQueue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "deadLetterTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "tracing": "Tracing", + "snapStart": "*", + "profiling": "boolean", + "profilingGroup": { + "profilingGroupName": "*", + "profilingGroupArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "insightsVersion": "*", + "adotInstrumentation": { + "layerVersion": "*", + "execWrapper": "AdotLambdaExecWrapper" + }, + "paramsAndSecrets": "*", + "layers": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "reservedConcurrentExecutions": "*", + "events": "*", + "logRetention": "RetentionDays", + "logRemovalPolicy": "RemovalPolicy", + "logRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logRetentionRetryOptions": { + "maxRetries": "*", + "base": "*" + }, + "currentVersionOptions": { + "codeSha256": "*", + "description": "*", + "provisionedConcurrentExecutions": "*", + "removalPolicy": "RemovalPolicy", + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "filesystem": "*", + "allowPublicSubnet": "boolean", + "environmentEncryption": "*", + "codeSigningConfig": "*", + "architectures": "*", + "architecture": "*", + "runtimeManagementMode": "*", + "tenancyConfig": "*", + "durableConfig": { + "executionTimeout": "*" + }, + "logGroup": "*", + "logFormat": "*", + "loggingFormat": "LoggingFormat", + "recursiveLoop": "RecursiveLoop", + "applicationLogLevel": "*", + "applicationLogLevelV2": "ApplicationLogLevel", + "systemLogLevel": "*", + "systemLogLevelV2": "SystemLogLevel", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*", + "addEnvironment": [ + "*", + "*", + { + "removeInEdge": "boolean" + } + ], + "addLayers": [ + { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ], + "addPermission": [ + "*", + { + "action": "*", + "eventSourceToken": "*", + "principal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "scope": "*", + "sourceAccount": "*", + "sourceArn": "*", + "organizationId": "*", + "functionUrlAuthType": "FunctionUrlAuthType", + "invokedViaFunctionUrl": "boolean" + } + ], + "addDependency": [ + "*" + ], + "addMetadata": [ + "*", + "*", + { + "stackTrace": "boolean", + "traceFromFunction": "*", + "stackTraceOverride": "*" + } + ], + "dependOn": [ + { + "node": "*" + } + ], + "_checkEdgeCompatibility": [] + } + }, + "aws-cdk-lib.aws-lambda-nodejs": { + "NodejsFunction": { + "entry": "*", + "handler": "*", + "runtime": "*", + "awsSdkConnectionReuse": "boolean", + "depsLockFilePath": "*", + "bundling": { + "minify": "boolean", + "sourceMap": "boolean", + "sourceMapMode": "SourceMapMode", + "sourcesContent": "boolean", + "target": "*", + "loader": "*", + "logLevel": "LogLevel", + "keepNames": "boolean", + "tsconfig": "*", + "metafile": "boolean", + "banner": "*", + "footer": "*", + "charset": "Charset", + "define": "*", + "externalModules": "*", + "bundleAwsSDK": "boolean", + "nodeModules": "*", + "esbuildVersion": "*", + "esbuildArgs": "*", + "buildArgs": "*", + "forceDockerBundling": "boolean", + "preCompilation": "boolean", + "dockerImage": "*", + "commandHooks": "*", + "assetHash": "*", + "format": "OutputFormat", + "mainFields": "*", + "inject": "*", + "bundlingFileAccess": "BundlingFileAccess", + "entrypoint": "*", + "command": "*", + "volumes": { + "hostPath": "*", + "containerPath": "*", + "consistency": "DockerVolumeConsistency" + }, + "volumesFrom": "*", + "environment": "*", + "workingDirectory": "*", + "user": "*", + "securityOpt": "*", + "network": "*", + "platform": "*" + }, + "projectRoot": "*", + "code": "*", + "description": "*", + "timeout": "*", + "environment": "*", + "functionName": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "initialPolicy": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipv6AllowedForDualStack": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "deadLetterQueueEnabled": "boolean", + "deadLetterQueue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "deadLetterTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "tracing": "Tracing", + "snapStart": "*", + "profiling": "boolean", + "profilingGroup": { + "profilingGroupName": "*", + "profilingGroupArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "insightsVersion": "*", + "adotInstrumentation": { + "layerVersion": "*", + "execWrapper": "AdotLambdaExecWrapper" + }, + "paramsAndSecrets": "*", + "layers": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "reservedConcurrentExecutions": "*", + "events": "*", + "logRetention": "RetentionDays", + "logRemovalPolicy": "RemovalPolicy", + "logRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logRetentionRetryOptions": { + "maxRetries": "*", + "base": "*" + }, + "currentVersionOptions": { + "codeSha256": "*", + "description": "*", + "provisionedConcurrentExecutions": "*", + "removalPolicy": "RemovalPolicy", + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "filesystem": "*", + "allowPublicSubnet": "boolean", + "environmentEncryption": "*", + "codeSigningConfig": "*", + "architectures": "*", + "architecture": "*", + "runtimeManagementMode": "*", + "tenancyConfig": "*", + "durableConfig": { + "executionTimeout": "*" + }, + "logGroup": "*", + "logFormat": "*", + "loggingFormat": "LoggingFormat", + "recursiveLoop": "RecursiveLoop", + "applicationLogLevel": "*", + "applicationLogLevelV2": "ApplicationLogLevel", + "systemLogLevel": "*", + "systemLogLevelV2": "SystemLogLevel", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*" + } + }, + "aws-cdk-lib.aws-logs": { + "CrossAccountDestination": { + "destinationName": "*", + "role": "*", + "targetArn": "*", + "addToPolicy": [ + "*" + ], + "bind": [ + "*", + "*" + ] + }, + "LogGroup": { + "encryptionKey": "*", + "logGroupName": "*", + "dataProtectionPolicy": "*", + "deletionProtectionEnabled": "boolean", + "fieldIndexPolicies": "*", + "retention": "RetentionDays", + "logGroupClass": "LogGroupClass", + "removalPolicy": "RemovalPolicy" + }, + "LogStream": { + "logGroup": "*", + "logStreamName": "*", + "removalPolicy": "RemovalPolicy" + }, + "MetricFilter": { + "logGroup": "*", + "filterPattern": { + "logPatternString": "*" + }, + "metricNamespace": "*", + "metricName": "*", + "metricValue": "*", + "defaultValue": "*", + "dimensions": "*", + "unit": "Unit", + "filterName": "*", + "applyOnTransformedLogs": "boolean", + "metric": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ] + }, + "ResourcePolicy": {}, + "QueryDefinition": { + "queryDefinitionName": "*", + "queryString": "*", + "logGroups": "*" + }, + "SubscriptionFilter": { + "logGroup": "*", + "destination": "*", + "filterPattern": { + "logPatternString": "*" + }, + "filterName": "*", + "distribution": "Distribution" + }, + "Transformer": { + "transformerName": "*", + "logGroup": "*", + "transformerConfig": "*" + } + }, + "aws-cdk-lib.aws-opensearchservice": { + "Domain": { + "accessPolicies": "*", + "advancedOptions": "*", + "cognitoDashboardsAuth": { + "identityPoolId": "*", + "role": "*", + "userPoolId": "*" + }, + "domainName": "*", + "ebs": { + "enabled": "boolean", + "iops": "*", + "throughput": "*", + "volumeSize": "*", + "volumeType": "EbsDeviceVolumeType" + }, + "capacity": { + "masterNodes": "*", + "masterNodeInstanceType": "*", + "dataNodes": "*", + "dataNodeInstanceType": "*", + "warmNodes": "*", + "warmInstanceType": "*", + "multiAzWithStandbyEnabled": "boolean", + "nodeOptions": { + "nodeType": "NodeType", + "nodeConfig": { + "enabled": "boolean", + "type": "*", + "count": "*" + } + } + }, + "zoneAwareness": { + "enabled": "boolean", + "availabilityZoneCount": "*" + }, + "version": "*", + "encryptionAtRest": { + "enabled": "boolean", + "kmsKey": "*" + }, + "logging": { + "slowSearchLogEnabled": "boolean", + "slowSearchLogGroup": "*", + "slowIndexLogEnabled": "boolean", + "slowIndexLogGroup": "*", + "appLogEnabled": "boolean", + "appLogGroup": "*", + "auditLogEnabled": "boolean", + "auditLogGroup": "*" + }, + "nodeToNodeEncryption": "boolean", + "automatedSnapshotStartHour": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "enforceHttps": "boolean", + "tlsSecurityPolicy": "TLSSecurityPolicy", + "fineGrainedAccessControl": { + "masterUserArn": "*", + "masterUserName": "*", + "masterUserPassword": "*", + "samlAuthenticationEnabled": "boolean", + "samlAuthenticationOptions": { + "idpEntityId": "*", + "idpMetadataContent": "*", + "masterUserName": "*", + "masterBackendRole": "*", + "rolesKey": "*", + "subjectKey": "*", + "sessionTimeoutMinutes": "*" + } + }, + "useUnsignedBasicAuth": "boolean", + "enableVersionUpgrade": "boolean", + "removalPolicy": "RemovalPolicy", + "customEndpoint": { + "domainName": "*", + "certificate": "*", + "hostedZone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + } + }, + "offPeakWindowEnabled": "boolean", + "offPeakWindowStart": { + "hours": "*", + "minutes": "*" + }, + "enableAutoSoftwareUpdate": "boolean", + "useLatestServiceSoftwareForBlueGreen": "boolean", + "ipAddressType": "IpAddressType", + "suppressLogsResourcePolicy": "boolean", + "coldStorageEnabled": "boolean", + "s3VectorsEngineEnabled": "boolean", + "addAccessPolicies": [ + "*" + ] + } + }, + "aws-cdk-lib.aws-rds": { + "AuroraClusterInstance": { + "cluster": { + "clusterIdentifier": "*", + "clusterResourceIdentifier": "*", + "instanceIdentifiers": "*", + "clusterEndpoint": "*", + "engine": { + "singleUserRotationApplication": "*", + "supportedLogTypes": "*", + "combineImportAndExportRoles": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "clusterArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "connections": "*" + }, + "instanceType": "*", + "promotionTier": "*", + "instanceIdentifier": "*", + "autoMinorVersionUpgrade": "boolean", + "enablePerformanceInsights": "boolean", + "performanceInsightRetention": "PerformanceInsightRetention", + "performanceInsightEncryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "publiclyAccessible": "boolean", + "availabilityZone": "*", + "preferredMaintenanceWindow": "*", + "parameters": "*", + "allowMajorVersionUpgrade": "boolean", + "parameterGroup": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isFromLegacyInstanceProps": "boolean", + "caCertificate": "*", + "applyImmediately": "boolean", + "monitoringInterval": "*", + "monitoringRole": "*", + "removalPolicy": "RemovalPolicy", + "subnetGroup": "*" + }, + "ImportedDatabaseCluster": { + "clusterIdentifier": "*", + "clusterResourceIdentifier": "*", + "port": "*", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "instanceIdentifiers": "*", + "clusterEndpointAddress": "*", + "readerEndpointAddress": "*", + "instanceEndpointAddresses": "*", + "engine": { + "singleUserRotationApplication": "*", + "supportedLogTypes": "*", + "combineImportAndExportRoles": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "dataApiEnabled": "boolean" + }, + "DatabaseCluster": { + "credentials": "*", + "replicationSourceIdentifier": "*", + "manageMasterUserPassword": "boolean", + "engine": { + "singleUserRotationApplication": "*", + "supportedLogTypes": "*", + "combineImportAndExportRoles": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "instances": "*", + "instanceProps": { + "instanceType": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "parameterGroup": "*", + "parameters": "*", + "enablePerformanceInsights": "boolean", + "performanceInsightRetention": "PerformanceInsightRetention", + "performanceInsightEncryptionKey": { + "keyArn": "*", + "keyId": "*" + }, + "autoMinorVersionUpgrade": "boolean", + "allowMajorVersionUpgrade": "boolean", + "deleteAutomatedBackups": "boolean", + "publiclyAccessible": "boolean", + "preferredMaintenanceWindow": "*" + }, + "writer": "*", + "readers": "*", + "serverlessV2MaxCapacity": "*", + "serverlessV2MinCapacity": "*", + "serverlessV2AutoPauseDuration": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "instanceUpdateBehaviour": "InstanceUpdateBehaviour", + "backtrackWindow": "*", + "backup": { + "retention": "*", + "preferredWindow": "*" + }, + "port": "*", + "clusterIdentifier": "*", + "instanceIdentifierBase": "*", + "defaultDatabaseName": "*", + "deletionProtection": "boolean", + "preferredMaintenanceWindow": "*", + "parameterGroup": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "parameters": "*", + "removalPolicy": "RemovalPolicy", + "cloudwatchLogsExports": "*", + "cloudwatchLogsRetention": "RetentionDays", + "cloudwatchLogsRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "monitoringInterval": "*", + "monitoringRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enableClusterLevelEnhancedMonitoring": "boolean", + "s3ImportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ImportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "s3ExportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ExportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "subnetGroup": "*", + "iamAuthentication": "boolean", + "storageEncrypted": "boolean", + "storageEncryptionKey": "*", + "storageType": "DBClusterStorageType", + "copyTagsToSnapshot": "boolean", + "networkType": "NetworkType", + "domain": "*", + "domainRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enableDataApi": "boolean", + "enableLocalWriteForwarding": "boolean", + "enablePerformanceInsights": "boolean", + "performanceInsightRetention": "PerformanceInsightRetention", + "performanceInsightEncryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "databaseInsightsMode": "DatabaseInsightsMode", + "autoMinorVersionUpgrade": "boolean", + "clusterScalabilityType": "ClusterScalabilityType", + "clusterScailabilityType": "ClusterScailabilityType", + "engineLifecycleSupport": "EngineLifecycleSupport", + "deleteAutomatedBackups": "boolean" + }, + "DatabaseClusterFromSnapshot": { + "snapshotIdentifier": "*", + "credentials": "*", + "snapshotCredentials": "*", + "manageMasterUserPassword": "boolean", + "engine": { + "singleUserRotationApplication": "*", + "supportedLogTypes": "*", + "combineImportAndExportRoles": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "instances": "*", + "instanceProps": { + "instanceType": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "parameterGroup": "*", + "parameters": "*", + "enablePerformanceInsights": "boolean", + "performanceInsightRetention": "PerformanceInsightRetention", + "performanceInsightEncryptionKey": { + "keyArn": "*", + "keyId": "*" + }, + "autoMinorVersionUpgrade": "boolean", + "allowMajorVersionUpgrade": "boolean", + "deleteAutomatedBackups": "boolean", + "publiclyAccessible": "boolean", + "preferredMaintenanceWindow": "*" + }, + "writer": "*", + "readers": "*", + "serverlessV2MaxCapacity": "*", + "serverlessV2MinCapacity": "*", + "serverlessV2AutoPauseDuration": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "instanceUpdateBehaviour": "InstanceUpdateBehaviour", + "backtrackWindow": "*", + "backup": { + "retention": "*", + "preferredWindow": "*" + }, + "port": "*", + "clusterIdentifier": "*", + "instanceIdentifierBase": "*", + "defaultDatabaseName": "*", + "deletionProtection": "boolean", + "preferredMaintenanceWindow": "*", + "parameterGroup": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "parameters": "*", + "removalPolicy": "RemovalPolicy", + "cloudwatchLogsExports": "*", + "cloudwatchLogsRetention": "RetentionDays", + "cloudwatchLogsRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "monitoringInterval": "*", + "monitoringRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enableClusterLevelEnhancedMonitoring": "boolean", + "s3ImportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ImportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "s3ExportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ExportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "subnetGroup": "*", + "iamAuthentication": "boolean", + "storageEncrypted": "boolean", + "storageEncryptionKey": "*", + "storageType": "DBClusterStorageType", + "copyTagsToSnapshot": "boolean", + "networkType": "NetworkType", + "domain": "*", + "domainRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enableDataApi": "boolean", + "enableLocalWriteForwarding": "boolean", + "enablePerformanceInsights": "boolean", + "performanceInsightRetention": "PerformanceInsightRetention", + "performanceInsightEncryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "databaseInsightsMode": "DatabaseInsightsMode", + "autoMinorVersionUpgrade": "boolean", + "clusterScalabilityType": "ClusterScalabilityType", + "clusterScailabilityType": "ClusterScailabilityType", + "engineLifecycleSupport": "EngineLifecycleSupport", + "deleteAutomatedBackups": "boolean" + }, + "DatabaseSecret": { + "username": "*", + "dbname": "*", + "secretName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "masterSecret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "excludeCharacters": "*", + "replaceOnPasswordCriteriaChanges": "boolean", + "replicaRegions": { + "region": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "DatabaseInstance": { + "credentials": "*", + "manageMasterUserPassword": "boolean", + "characterSetName": "*", + "storageEncrypted": "boolean", + "storageEncryptionKey": "*", + "engine": { + "singleUserRotationApplication": "*", + "supportsReadReplicaBackups": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "instanceType": "*", + "licenseModel": "LicenseModel", + "allowMajorVersionUpgrade": "boolean", + "timezone": "*", + "allocatedStorage": "*", + "databaseName": "*", + "parameters": "*", + "multiAz": "boolean", + "availabilityZone": "*", + "storageType": "StorageType", + "storageThroughput": "*", + "iops": "*", + "processorFeatures": { + "coreCount": "*", + "threadsPerCore": "*" + }, + "instanceIdentifier": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcPlacement": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "port": "*", + "parameterGroup": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "optionGroup": { + "optionGroupName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "iamAuthentication": "boolean", + "backupRetention": "*", + "preferredBackupWindow": "*", + "copyTagsToSnapshot": "boolean", + "deleteAutomatedBackups": "boolean", + "monitoringInterval": "*", + "monitoringRole": "*", + "enablePerformanceInsights": "boolean", + "performanceInsightRetention": "PerformanceInsightRetention", + "performanceInsightEncryptionKey": "*", + "databaseInsightsMode": "DatabaseInsightsMode", + "cloudwatchLogsExports": "*", + "cloudwatchLogsRetention": "RetentionDays", + "cloudwatchLogsRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "autoMinorVersionUpgrade": "boolean", + "preferredMaintenanceWindow": "*", + "deletionProtection": "boolean", + "removalPolicy": "RemovalPolicy", + "maxAllocatedStorage": "*", + "domain": "*", + "domainRole": "*", + "subnetGroup": "*", + "s3ImportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ImportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "s3ExportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ExportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "publiclyAccessible": "boolean", + "networkType": "NetworkType", + "caCertificate": "*", + "applyImmediately": "boolean", + "engineLifecycleSupport": "EngineLifecycleSupport" + }, + "DatabaseInstanceFromSnapshot": { + "snapshotIdentifier": "*", + "clusterSnapshotIdentifier": "*", + "credentials": "*", + "engine": { + "singleUserRotationApplication": "*", + "supportsReadReplicaBackups": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "instanceType": "*", + "licenseModel": "LicenseModel", + "allowMajorVersionUpgrade": "boolean", + "timezone": "*", + "allocatedStorage": "*", + "databaseName": "*", + "parameters": "*", + "multiAz": "boolean", + "availabilityZone": "*", + "storageType": "StorageType", + "storageThroughput": "*", + "iops": "*", + "processorFeatures": { + "coreCount": "*", + "threadsPerCore": "*" + }, + "instanceIdentifier": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcPlacement": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "port": "*", + "parameterGroup": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "optionGroup": { + "optionGroupName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "iamAuthentication": "boolean", + "backupRetention": "*", + "preferredBackupWindow": "*", + "copyTagsToSnapshot": "boolean", + "deleteAutomatedBackups": "boolean", + "monitoringInterval": "*", + "monitoringRole": "*", + "enablePerformanceInsights": "boolean", + "performanceInsightRetention": "PerformanceInsightRetention", + "performanceInsightEncryptionKey": "*", + "databaseInsightsMode": "DatabaseInsightsMode", + "cloudwatchLogsExports": "*", + "cloudwatchLogsRetention": "RetentionDays", + "cloudwatchLogsRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "autoMinorVersionUpgrade": "boolean", + "preferredMaintenanceWindow": "*", + "deletionProtection": "boolean", + "removalPolicy": "RemovalPolicy", + "maxAllocatedStorage": "*", + "domain": "*", + "domainRole": "*", + "subnetGroup": "*", + "s3ImportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ImportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "s3ExportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ExportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "publiclyAccessible": "boolean", + "networkType": "NetworkType", + "caCertificate": "*", + "applyImmediately": "boolean", + "engineLifecycleSupport": "EngineLifecycleSupport" + }, + "DatabaseInstanceReadReplica": { + "instanceType": "*", + "sourceDatabaseInstance": { + "instanceIdentifier": "*", + "instanceArn": "*", + "dbInstanceEndpointAddress": "*", + "dbInstanceEndpointPort": "*", + "instanceResourceId": "*", + "instanceEndpoint": "*", + "engine": { + "singleUserRotationApplication": "*", + "supportsReadReplicaBackups": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "connections": "*" + }, + "storageEncrypted": "boolean", + "storageEncryptionKey": "*", + "allocatedStorage": "*", + "multiAz": "boolean", + "availabilityZone": "*", + "storageType": "StorageType", + "storageThroughput": "*", + "iops": "*", + "processorFeatures": { + "coreCount": "*", + "threadsPerCore": "*" + }, + "instanceIdentifier": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcPlacement": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "port": "*", + "parameterGroup": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "optionGroup": { + "optionGroupName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "iamAuthentication": "boolean", + "backupRetention": "*", + "preferredBackupWindow": "*", + "copyTagsToSnapshot": "boolean", + "deleteAutomatedBackups": "boolean", + "monitoringInterval": "*", + "monitoringRole": "*", + "enablePerformanceInsights": "boolean", + "performanceInsightRetention": "PerformanceInsightRetention", + "performanceInsightEncryptionKey": "*", + "databaseInsightsMode": "DatabaseInsightsMode", + "cloudwatchLogsExports": "*", + "cloudwatchLogsRetention": "RetentionDays", + "cloudwatchLogsRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "autoMinorVersionUpgrade": "boolean", + "preferredMaintenanceWindow": "*", + "deletionProtection": "boolean", + "removalPolicy": "RemovalPolicy", + "maxAllocatedStorage": "*", + "domain": "*", + "domainRole": "*", + "subnetGroup": "*", + "s3ImportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ImportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "s3ExportRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "s3ExportBuckets": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "publiclyAccessible": "boolean", + "networkType": "NetworkType", + "caCertificate": "*", + "applyImmediately": "boolean", + "engineLifecycleSupport": "EngineLifecycleSupport" + }, + "OptionGroup": { + "engine": { + "singleUserRotationApplication": "*", + "supportsReadReplicaBackups": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "description": "*", + "configurations": { + "name": "*", + "settings": "*", + "version": "*", + "port": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + }, + "optionGroupName": "*", + "addConfiguration": [ + { + "name": "*", + "settings": "*", + "version": "*", + "port": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + } + ] + }, + "ParameterGroup": { + "engine": { + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "name": "*", + "description": "*", + "parameters": "*", + "removalPolicy": "RemovalPolicy", + "bindToCluster": [ + "*" + ], + "bindToInstance": [ + "*" + ], + "addParameter": [ + "*", + "*" + ] + }, + "DatabaseProxyEndpoint": { + "dbProxy": "*", + "dbProxyEndpointName": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "targetRole": "ProxyEndpointTargetRole" + }, + "DatabaseProxy": { + "proxyTarget": "*", + "dbProxyName": "*", + "borrowTimeout": "*", + "initQuery": "*", + "maxConnectionsPercent": "*", + "maxIdleConnectionsPercent": "*", + "sessionPinningFilters": "*", + "debugLogging": "boolean", + "iamAuth": "boolean", + "idleClientTimeout": "*", + "requireTLS": "boolean", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secrets": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "clientPasswordAuthType": "ClientPasswordAuthType", + "defaultAuthScheme": "DefaultAuthScheme", + "addEndpoint": [ + "*", + { + "dbProxyEndpointName": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*" + }, + "targetRole": "ProxyEndpointTargetRole" + } + ], + "asSecretAttachmentTarget": [], + "grantConnect": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ] + }, + "ServerlessCluster": { + "credentials": "*", + "storageEncryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "engine": { + "singleUserRotationApplication": "*", + "supportedLogTypes": "*", + "combineImportAndExportRoles": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "clusterIdentifier": "*", + "backupRetention": "*", + "defaultDatabaseName": "*", + "deletionProtection": "boolean", + "enableDataApi": "boolean", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "scaling": { + "minCapacity": "AuroraCapacityUnit", + "maxCapacity": "AuroraCapacityUnit", + "autoPause": "*", + "timeoutAction": "TimeoutAction" + }, + "removalPolicy": "RemovalPolicy", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "parameterGroup": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "subnetGroup": "*", + "copyTagsToSnapshot": "boolean", + "addRotationSingleUser": [ + { + "automaticallyAfter": "*", + "excludeCharacters": "*", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "endpoint": { + "vpcEndpointId": "*", + "connections": "*" + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*" + }, + "rotateImmediatelyOnUpdate": "boolean" + } + ], + "addRotationMultiUser": [ + "*", + { + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "automaticallyAfter": "*", + "excludeCharacters": "*", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + } + } + }, + "endpoint": { + "vpcEndpointId": "*", + "connections": "*" + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "canInlineRule": "boolean", + "uniqueId": "*" + }, + "rotateImmediatelyOnUpdate": "boolean" + } + ] + }, + "ImportedServerlessCluster": { + "clusterIdentifier": "*", + "port": "*", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "clusterEndpointAddress": "*", + "readerEndpointAddress": "*", + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + } + }, + "ServerlessClusterFromSnapshot": { + "snapshotIdentifier": "*", + "credentials": "*", + "engine": { + "singleUserRotationApplication": "*", + "supportedLogTypes": "*", + "combineImportAndExportRoles": "boolean", + "engineType": "*", + "engineVersion": { + "fullVersion": "*", + "majorVersion": "*" + }, + "parameterGroupFamily": "*", + "engineFamily": "*", + "defaultUsername": "*" + }, + "clusterIdentifier": "*", + "backupRetention": "*", + "defaultDatabaseName": "*", + "deletionProtection": "boolean", + "enableDataApi": "boolean", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "scaling": { + "minCapacity": "AuroraCapacityUnit", + "maxCapacity": "AuroraCapacityUnit", + "autoPause": "*", + "timeoutAction": "TimeoutAction" + }, + "removalPolicy": "RemovalPolicy", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "parameterGroup": { + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "subnetGroup": "*", + "copyTagsToSnapshot": "boolean" + }, + "SubnetGroup": { + "description": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "subnetGroupName": "*", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "removalPolicy": "RemovalPolicy" + } + }, + "aws-cdk-lib.aws-route53": { + "HealthCheck": { + "type": "HealthCheckType", + "alarmIdentifier": { + "region": "*", + "name": "*" + }, + "childHealthChecks": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enableSNI": "boolean", + "failureThreshold": "*", + "fqdn": "*", + "healthThreshold": "*", + "insufficientDataHealthStatus": "InsufficientDataHealthStatusEnum", + "inverted": "boolean", + "ipAddress": "*", + "measureLatency": "boolean", + "port": "*", + "regions": "*", + "requestInterval": "*", + "resourcePath": "*", + "routingControl": "*", + "searchString": "*" + }, + "HostedZone": { + "vpcs": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "zoneName": "*", + "addTrailingDot": "boolean", + "comment": "*", + "queryLogsLogGroupArn": "*", + "addVpc": [ + { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + } + ], + "grantDelegation": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + { + "delegatedZoneNames": "*" + } + ], + "enableDnssec": [ + { + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "keySigningKeyName": "*" + } + ] + }, + "PublicHostedZone": { + "caaAmazon": "boolean", + "acceleratedRecoveryEnabled": "boolean", + "crossAccountZoneDelegationPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "crossAccountZoneDelegationRoleName": "*", + "zoneName": "*", + "addTrailingDot": "boolean", + "comment": "*", + "queryLogsLogGroupArn": "*", + "addVpc": [ + { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + } + ], + "addDelegation": [ + { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + { + "comment": "*", + "ttl": "*" + } + ] + }, + "PrivateHostedZone": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "zoneName": "*", + "addTrailingDot": "boolean", + "comment": "*", + "queryLogsLogGroupArn": "*" + }, + "KeySigningKey": { + "hostedZone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "keySigningKeyName": "*", + "status": "KeySigningKeyStatus" + }, + "RecordSet": { + "recordType": "RecordType", + "target": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "ARecord": { + "target": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "AaaaRecord": { + "target": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "CnameRecord": { + "domainName": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "TxtRecord": { + "values": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "SrvRecord": { + "values": { + "priority": "*", + "weight": "*", + "port": "*", + "hostName": "*" + }, + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "CaaRecord": { + "values": { + "flag": "*", + "tag": "CaaTag", + "value": "*" + }, + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "CaaAmazonRecord": { + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "MxRecord": { + "values": { + "priority": "*", + "hostName": "*" + }, + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "NsRecord": { + "values": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "DsRecord": { + "values": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "SvcbRecord": { + "values": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "HttpsRecord": { + "values": "*", + "target": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + }, + "ZoneDelegationRecord": { + "nameServers": "*", + "zone": { + "hostedZoneId": "*", + "zoneName": "*", + "hostedZoneArn": "*", + "hostedZoneNameServers": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "name": "*" + }, + "geoLocation": "*", + "recordName": "*", + "ttl": "*", + "comment": "*", + "deleteExisting": "boolean", + "weight": "*", + "region": "*", + "multiValueAnswer": "boolean", + "setIdentifier": "*", + "healthCheck": { + "healthCheckId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "cidrRoutingConfig": "*", + "failover": "Failover" + } + }, + "aws-cdk-lib.aws-s3": { + "BucketPolicy": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "removalPolicy": "RemovalPolicy", + "document": "*", + "applyRemovalPolicy": [ + "RemovalPolicy" + ] + }, + "Bucket": { + "encryption": "BucketEncryption", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "blockedEncryptionTypes": "*", + "enforceSSL": "boolean", + "bucketKeyEnabled": "boolean", + "bucketName": "*", + "bucketNamePrefix": "*", + "bucketNamespace": "BucketNamespace", + "removalPolicy": "RemovalPolicy", + "autoDeleteObjects": "boolean", + "versioned": "boolean", + "objectLockEnabled": "boolean", + "abacStatus": "boolean", + "objectLockDefaultRetention": "*", + "eventBridgeEnabled": "boolean", + "lifecycleRules": { + "id": "*", + "enabled": "boolean", + "abortIncompleteMultipartUploadAfter": "*", + "expirationDate": "*", + "noncurrentVersionsToRetain": "*", + "noncurrentVersionTransitions": { + "storageClass": "*", + "noncurrentVersionsToRetain": "*" + }, + "transitions": "*", + "prefix": "*", + "tagFilters": "*", + "expiredObjectDeleteMarker": "boolean", + "objectSizeLessThan": "*", + "objectSizeGreaterThan": "*" + }, + "transitionDefaultMinimumObjectSize": "TransitionDefaultMinimumObjectSize", + "websiteIndexDocument": "*", + "websiteErrorDocument": "*", + "websiteRedirect": { + "hostName": "*", + "protocol": "RedirectProtocol" + }, + "websiteRoutingRules": { + "hostName": "*", + "httpRedirectCode": "*", + "protocol": "RedirectProtocol", + "replaceKey": "*", + "condition": { + "httpErrorCodeReturnedEquals": "*", + "keyPrefixEquals": "*" + } + }, + "accessControl": "BucketAccessControl", + "publicReadAccess": "boolean", + "blockPublicAccess": "*", + "metrics": { + "id": "*", + "prefix": "*", + "tagFilters": "*" + }, + "cors": { + "id": "*", + "maxAge": "*", + "allowedHeaders": "*", + "allowedMethods": "HttpMethods", + "allowedOrigins": "*", + "exposedHeaders": "*" + }, + "serverAccessLogsBucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "serverAccessLogsPrefix": "*", + "targetObjectKeyFormat": "*", + "inventories": { + "destination": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*", + "bucketOwner": "*" + }, + "objectsPrefix": "*", + "format": "InventoryFormat", + "enabled": "boolean", + "inventoryId": "*", + "frequency": "InventoryFrequency", + "includeObjectVersions": "InventoryObjectVersion", + "optionalFields": "*" + }, + "objectOwnership": "ObjectOwnership", + "transferAcceleration": "boolean", + "notificationsHandlerRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "notificationsSkipDestinationValidation": "boolean", + "intelligentTieringConfigurations": { + "name": "*", + "prefix": "*", + "tags": { + "key": "*", + "value": "*" + }, + "archiveAccessTierTime": "*" + }, + "minimumTLSVersion": "*", + "replicationRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "replicationRules": { + "destination": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "accessControlTransition": "boolean", + "replicationTimeControl": "*", + "storageClass": "*", + "sseKmsEncryptedObjects": "boolean", + "replicaModifications": "boolean", + "priority": "*", + "deleteMarkerReplication": "boolean", + "id": "*", + "filter": { + "prefix": "*", + "tags": { + "key": "*", + "value": "*" + } + } + }, + "addLifecycleRule": [ + { + "id": "*", + "enabled": "boolean", + "abortIncompleteMultipartUploadAfter": "*", + "expirationDate": "*", + "noncurrentVersionsToRetain": "*", + "noncurrentVersionTransitions": { + "storageClass": "*", + "noncurrentVersionsToRetain": "*" + }, + "transitions": "*", + "prefix": "*", + "tagFilters": "*", + "expiredObjectDeleteMarker": "boolean", + "objectSizeLessThan": "*", + "objectSizeGreaterThan": "*" + } + ], + "addMetric": [ + { + "id": "*", + "prefix": "*", + "tagFilters": "*" + } + ], + "addCorsRule": [ + { + "id": "*", + "maxAge": "*", + "allowedHeaders": "*", + "allowedMethods": "HttpMethods", + "allowedOrigins": "*", + "exposedHeaders": "*" + } + ], + "addInventory": [ + { + "destination": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*", + "bucketOwner": "*" + }, + "objectsPrefix": "*", + "format": "InventoryFormat", + "enabled": "boolean", + "inventoryId": "*", + "frequency": "InventoryFrequency", + "includeObjectVersions": "InventoryObjectVersion", + "optionalFields": "*" + } + ] + }, + "ReferencedBucket": { + "account": "*", + "region": "*", + "bucketArn": "*", + "bucketName": "*", + "bucketDomainName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketRegionalDomainName": "*", + "bucketDualStackDomainName": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isWebsite": "boolean", + "policy": "*", + "replicationRoleArn": "*", + "autoCreatePolicy": "boolean", + "disallowPublicAccess": "boolean", + "notificationsHandlerRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "aws-cdk-lib.aws-scheduler": { + "ScheduleGroup": {}, + "Schedule": { + "schedule": "*", + "target": "*", + "scheduleName": "*", + "description": "*", + "scheduleGroup": { + "scheduleGroupName": "*", + "scheduleGroupArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "enabled": "boolean", + "key": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "timeWindow": "*", + "start": "*", + "end": "*" + } + }, + "aws-cdk-lib.aws-secretsmanager": { + "ResourcePolicy": { + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + } + }, + "RotationSchedule": { + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "rotationLambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "hostedRotation": "*", + "automaticallyAfter": "*", + "rotateImmediatelyOnUpdate": "boolean" + }, + "Secret": { + "description": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "generateSecretString": { + "excludeUppercase": "boolean", + "requireEachIncludedType": "boolean", + "includeSpace": "boolean", + "excludeCharacters": "*", + "passwordLength": "*", + "excludePunctuation": "boolean", + "excludeLowercase": "boolean", + "excludeNumbers": "boolean", + "secretStringTemplate": "*", + "generateStringKey": "*" + }, + "secretName": "*", + "secretStringBeta1": "*", + "secretStringValue": "*", + "secretObjectValue": "*", + "removalPolicy": "RemovalPolicy", + "replicaRegions": { + "region": "*", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "addTargetAttachment": [ + "*", + { + "target": "*" + } + ], + "addReplicaRegion": [ + "*", + "*" + ] + }, + "SecretTargetAttachment": { + "secret": { + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "secretArn": "*", + "secretFullArn": "*", + "secretName": "*", + "secretValue": "*" + }, + "target": "*", + "addToResourcePolicy": [ + "*" + ] + } + }, + "aws-cdk-lib.aws-servicecatalog": { + "Portfolio": { + "displayName": "*", + "providerName": "*", + "messageLanguage": "MessageLanguage", + "description": "*", + "tagOptions": "*" + }, + "CloudFormationProduct": { + "owner": "*", + "productName": "*", + "productVersions": { + "description": "*", + "validateTemplate": "boolean", + "cloudFormationTemplate": "*", + "productVersionName": "*" + }, + "messageLanguage": "MessageLanguage", + "description": "*", + "distributor": "*", + "replaceProductVersionIds": "boolean", + "supportDescription": "*", + "supportEmail": "*", + "supportUrl": "*", + "tagOptions": "*" + }, + "TagOptions": { + "allowedValuesForTags": "*" + } + }, + "aws-cdk-lib.aws-servicediscovery": { + "AliasTargetInstance": { + "dnsName": "*", + "service": { + "serviceName": "*", + "namespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "serviceId": "*", + "serviceArn": "*", + "dnsRecordType": "DnsRecordType", + "routingPolicy": "RoutingPolicy", + "discoveryType": "DiscoveryType" + }, + "instanceId": "*", + "customAttributes": "*" + }, + "CnameInstance": { + "service": { + "serviceName": "*", + "namespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "serviceId": "*", + "serviceArn": "*", + "dnsRecordType": "DnsRecordType", + "routingPolicy": "RoutingPolicy", + "discoveryType": "DiscoveryType" + }, + "instanceCname": "*", + "instanceId": "*", + "customAttributes": "*" + }, + "HttpNamespace": { + "name": "*", + "description": "*", + "createService": [ + "*", + { + "name": "*", + "description": "*", + "healthCheck": { + "type": "HealthCheckType", + "resourcePath": "*", + "failureThreshold": "*" + }, + "customHealthCheck": { + "failureThreshold": "*" + } + } + ] + }, + "IpInstance": { + "service": { + "serviceName": "*", + "namespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "serviceId": "*", + "serviceArn": "*", + "dnsRecordType": "DnsRecordType", + "routingPolicy": "RoutingPolicy", + "discoveryType": "DiscoveryType" + }, + "port": "*", + "ipv4": "*", + "ipv6": "*", + "instanceId": "*", + "customAttributes": "*" + }, + "NonIpInstance": { + "service": { + "serviceName": "*", + "namespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "serviceId": "*", + "serviceArn": "*", + "dnsRecordType": "DnsRecordType", + "routingPolicy": "RoutingPolicy", + "discoveryType": "DiscoveryType" + }, + "instanceId": "*", + "customAttributes": "*" + }, + "PrivateDnsNamespace": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "name": "*", + "description": "*", + "createService": [ + "*", + { + "discoveryType": "DiscoveryType", + "dnsRecordType": "DnsRecordType", + "dnsTtl": "*", + "routingPolicy": "RoutingPolicy", + "loadBalancer": "boolean", + "name": "*", + "description": "*", + "healthCheck": { + "type": "HealthCheckType", + "resourcePath": "*", + "failureThreshold": "*" + }, + "customHealthCheck": { + "failureThreshold": "*" + } + } + ] + }, + "PublicDnsNamespace": { + "name": "*", + "description": "*", + "createService": [ + "*", + { + "discoveryType": "DiscoveryType", + "dnsRecordType": "DnsRecordType", + "dnsTtl": "*", + "routingPolicy": "RoutingPolicy", + "loadBalancer": "boolean", + "name": "*", + "description": "*", + "healthCheck": { + "type": "HealthCheckType", + "resourcePath": "*", + "failureThreshold": "*" + }, + "customHealthCheck": { + "failureThreshold": "*" + } + } + ] + }, + "Service": { + "namespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "discoveryType": "DiscoveryType", + "dnsRecordType": "DnsRecordType", + "dnsTtl": "*", + "routingPolicy": "RoutingPolicy", + "loadBalancer": "boolean", + "name": "*", + "description": "*", + "healthCheck": { + "type": "HealthCheckType", + "resourcePath": "*", + "failureThreshold": "*" + }, + "customHealthCheck": { + "failureThreshold": "*" + }, + "registerLoadBalancer": [ + "*", + { + "loadBalancerCanonicalHostedZoneId": "*", + "loadBalancerDnsName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "*" + ], + "registerNonIpInstance": [ + "*", + { + "instanceId": "*", + "customAttributes": "*" + } + ], + "registerIpInstance": [ + "*", + { + "port": "*", + "ipv4": "*", + "ipv6": "*", + "instanceId": "*", + "customAttributes": "*" + } + ], + "registerCnameInstance": [ + "*", + { + "instanceCname": "*", + "instanceId": "*", + "customAttributes": "*" + } + ] + } + }, + "aws-cdk-lib.aws-ses": { + "ConfigurationSetEventDestination": { + "configurationSet": "*", + "configurationSetEventDestinationName": "*", + "enabled": "boolean", + "destination": "*", + "events": "EmailSendingEvent" + }, + "ConfigurationSet": { + "configurationSetName": "*", + "dedicatedIpPool": "*", + "tlsPolicy": "ConfigurationSetTlsPolicy", + "reputationMetrics": "boolean", + "sendingEnabled": "boolean", + "suppressionReasons": "SuppressionReasons", + "disableSuppressionList": "boolean", + "autoValidationThreshold": "AutoValidationThreshold", + "disableAutoValidation": "boolean", + "customTrackingRedirectDomain": "*", + "customTrackingHttpsPolicy": "HttpsPolicy", + "vdmOptions": { + "engagementMetrics": "boolean", + "optimizedSharedDelivery": "boolean" + }, + "maxDeliveryDuration": "*", + "addEventDestination": [ + "*", + { + "configurationSetEventDestinationName": "*", + "enabled": "boolean", + "destination": "*", + "events": "EmailSendingEvent" + } + ] + }, + "DedicatedIpPool": { + "dedicatedIpPoolName": "*", + "scalingMode": "ScalingMode" + }, + "EmailIdentity": { + "identity": "*", + "configurationSet": "*", + "dkimSigning": "boolean", + "dkimIdentity": "*", + "feedbackForwarding": "boolean", + "mailFromDomain": "*", + "mailFromBehaviorOnMxFailure": "MailFromBehaviorOnMxFailure" + }, + "ReceiptFilter": { + "receiptFilterName": "*", + "ip": "*", + "policy": "ReceiptFilterPolicy" + }, + "ReceiptRuleSet": { + "receiptRuleSetName": "*", + "rules": { + "actions": "*", + "after": "*", + "enabled": "boolean", + "receiptRuleName": "*", + "recipients": "*", + "scanEnabled": "boolean", + "tlsPolicy": "TlsPolicy" + }, + "dropSpam": "boolean" + }, + "ReceiptRule": { + "ruleSet": "*", + "actions": "*", + "after": "*", + "enabled": "boolean", + "receiptRuleName": "*", + "recipients": "*", + "scanEnabled": "boolean", + "tlsPolicy": "TlsPolicy", + "addAction": [ + "*" + ] + }, + "VdmAttributes": { + "engagementMetrics": "boolean", + "optimizedSharedDelivery": "boolean" + } + }, + "aws-cdk-lib.aws-signer": { + "SigningProfile": { + "platform": "*", + "signatureValidity": "*", + "signingProfileName": "*" + } + }, + "aws-cdk-lib.aws-sns": { + "TopicPolicy": { + "topics": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "policyDocument": "*", + "enforceSSL": "boolean" + }, + "Subscription": { + "topic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "protocol": "SubscriptionProtocol", + "endpoint": "*", + "rawMessageDelivery": "boolean", + "filterPolicy": "*", + "filterPolicyWithMessageBody": "*", + "region": "*", + "deadLetterQueue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "subscriptionRoleArn": "*", + "deliveryPolicy": { + "healthyRetryPolicy": { + "minDelayTarget": "*", + "numRetries": "*", + "numNoDelayRetries": "*", + "numMinDelayRetries": "*", + "numMaxDelayRetries": "*", + "backoffFunction": "BackoffFunction" + }, + "throttlePolicy": { + "maxReceivesPerSecond": "*" + }, + "requestPolicy": { + "headerContentType": "*" + } + } + }, + "Topic": { + "displayName": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean", + "loggingConfigs": { + "protocol": "LoggingProtocol", + "failureFeedbackRole": "*", + "successFeedbackRole": "*", + "successFeedbackSampleRate": "*" + }, + "messageRetentionPeriodInDays": "*", + "enforceSSL": "boolean", + "signatureVersion": "*", + "tracingConfig": "TracingConfig", + "fifoThroughputScope": "FifoThroughputScope", + "addLoggingConfig": [ + { + "protocol": "LoggingProtocol", + "failureFeedbackRole": "*", + "successFeedbackRole": "*", + "successFeedbackSampleRate": "*" + } + ] + } + }, + "aws-cdk-lib.aws-sqs": { + "QueuePolicy": { + "queues": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + } + }, + "Queue": { + "queueName": "*", + "retentionPeriod": "*", + "deliveryDelay": "*", + "maxMessageSizeBytes": "*", + "receiveMessageWaitTime": "*", + "visibilityTimeout": "*", + "deadLetterQueue": { + "queue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "maxReceiveCount": "*" + }, + "encryption": "QueueEncryption", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "dataKeyReuse": "*", + "fifo": "boolean", + "contentBasedDeduplication": "boolean", + "deduplicationScope": "DeduplicationScope", + "fifoThroughputLimit": "FifoThroughputLimit", + "removalPolicy": "RemovalPolicy", + "enforceSSL": "boolean", + "redriveAllowPolicy": { + "redrivePermission": "RedrivePermission", + "sourceQueues": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + } + } + } + }, + "aws-cdk-lib.aws-ssm": { + "StringParameter": { + "stringValue": "*", + "type": "ParameterType", + "dataType": "ParameterDataType", + "allowedPattern": "*", + "description": "*", + "parameterName": "*", + "simpleName": "boolean", + "tier": "ParameterTier" + }, + "StringListParameter": { + "stringListValue": "*", + "allowedPattern": "*", + "description": "*", + "parameterName": "*", + "simpleName": "boolean", + "tier": "ParameterTier" + } + }, + "aws-cdk-lib.aws-stepfunctions": { + "Activity": { + "activityName": "*", + "encryptionConfiguration": "*", + "grant": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "*" + ], + "metric": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricRunTime": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricScheduleTime": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricTime": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricScheduled": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricTimedOut": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricStarted": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricSucceeded": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricFailed": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricHeartbeatTimedOut": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ] + }, + "StateMachine": { + "stateMachineName": "*", + "definition": { + "id": "*", + "startState": "*", + "endStates": "*" + }, + "definitionBody": "*", + "definitionSubstitutions": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "timeout": "*", + "comment": "*", + "queryLanguage": "QueryLanguage", + "stateMachineType": "StateMachineType", + "logs": { + "destination": "*", + "includeExecutionData": "boolean", + "level": "LogLevel" + }, + "tracingEnabled": "boolean", + "removalPolicy": "RemovalPolicy", + "encryptionConfiguration": "*", + "addToRolePolicy": [ + "*" + ] + } + }, + "aws-cdk-lib.aws-synthetics": { + "Canary": { + "artifactsBucketLocation": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "timeToLive": "*", + "schedule": "*", + "maxRetries": "*", + "startAfterCreation": "boolean", + "successRetentionPeriod": "*", + "failureRetentionPeriod": "*", + "canaryName": "*", + "runtime": "*", + "test": "*", + "activeTracing": "boolean", + "environmentVariables": "*", + "memory": "*", + "timeout": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "cleanup": "Cleanup", + "provisionedResourceCleanup": "boolean", + "artifactsBucketLifecycleRules": { + "id": "*", + "enabled": "boolean", + "abortIncompleteMultipartUploadAfter": "*", + "expirationDate": "*", + "noncurrentVersionsToRetain": "*", + "noncurrentVersionTransitions": { + "storageClass": "*", + "noncurrentVersionsToRetain": "*" + }, + "transitions": "*", + "prefix": "*", + "tagFilters": "*", + "expiredObjectDeleteMarker": "boolean", + "objectSizeLessThan": "*", + "objectSizeGreaterThan": "*" + }, + "artifactS3EncryptionMode": "ArtifactsEncryptionMode", + "artifactS3KmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "environmentEncryption": "*", + "dryRunAndUpdate": "boolean", + "resourcesToReplicateTags": "ResourceToReplicateTags", + "browserConfigs": "BrowserType", + "metricDuration": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricSuccessPercent": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricFailed": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ] + }, + "Group": { + "groupName": "*", + "canaries": { + "canaryId": "*", + "canaryName": "*", + "canaryArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "addCanary": [ + { + "canaryId": "*", + "canaryName": "*", + "canaryArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + ] + } + }, + "aws-cdk-lib.core": { + "CustomResource": { + "serviceToken": "*", + "serviceTimeout": "*", + "properties": "*", + "resourceType": "*", + "removalPolicy": "RemovalPolicy", + "pascalCaseProperties": "boolean", + "getAtt": [ + "*" + ], + "getAttString": [ + "*" + ] + } + }, + "aws-cdk-lib.lambda-layer-awscli": { + "AwsCliLayer": {} + }, + "aws-cdk-lib.lambda-layer-node-proxy-agent": { + "NodeProxyAgentLayer": {} + }, + "aws-cdk-lib.triggers": { + "TriggerFunction": { + "runtime": "*", + "code": "*", + "handler": "*", + "description": "*", + "timeout": "*", + "environment": "*", + "functionName": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "initialPolicy": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipv6AllowedForDualStack": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "deadLetterQueueEnabled": "boolean", + "deadLetterQueue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "deadLetterTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "tracing": "Tracing", + "snapStart": "*", + "profiling": "boolean", + "profilingGroup": { + "profilingGroupName": "*", + "profilingGroupArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "insightsVersion": "*", + "adotInstrumentation": { + "layerVersion": "*", + "execWrapper": "AdotLambdaExecWrapper" + }, + "paramsAndSecrets": "*", + "layers": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "reservedConcurrentExecutions": "*", + "events": "*", + "logRetention": "RetentionDays", + "logRemovalPolicy": "RemovalPolicy", + "logRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logRetentionRetryOptions": { + "maxRetries": "*", + "base": "*" + }, + "currentVersionOptions": { + "codeSha256": "*", + "description": "*", + "provisionedConcurrentExecutions": "*", + "removalPolicy": "RemovalPolicy", + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "filesystem": "*", + "allowPublicSubnet": "boolean", + "environmentEncryption": "*", + "codeSigningConfig": "*", + "architectures": "*", + "architecture": "*", + "runtimeManagementMode": "*", + "tenancyConfig": "*", + "durableConfig": { + "executionTimeout": "*" + }, + "logGroup": "*", + "logFormat": "*", + "loggingFormat": "LoggingFormat", + "recursiveLoop": "RecursiveLoop", + "applicationLogLevel": "*", + "applicationLogLevelV2": "ApplicationLogLevel", + "systemLogLevel": "*", + "systemLogLevelV2": "SystemLogLevel", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*", + "executeAfter": [ + "*" + ], + "executeBefore": [ + "*" + ], + "executeOnHandlerChange": "boolean" + } + }, + "aws-bedrock-agentcore-alpha.lib": { + "Evaluator": { + "evaluatorName": "*", + "evaluatorConfig": "*", + "level": "*", + "description": "*", + "tags": "*" + }, + "OnlineEvaluationConfig": { + "evaluators": "*", + "dataSource": "*", + "tags": "*", + "onlineEvaluationConfigName": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "description": "*", + "samplingPercentage": "*", + "filters": { + "key": "*", + "operator": "*", + "value": "*" + }, + "sessionTimeout": "*", + "executionStatus": "*" + }, + "Gateway": { + "gatewayName": "*", + "description": "*", + "protocolConfiguration": { + "protocolType": "*" + }, + "authorizerConfiguration": { + "authorizerType": "GatewayAuthorizerType" + }, + "exceptionLevel": "GatewayExceptionLevel", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "interceptorConfigurations": { + "interceptionPoint": "InterceptionPoint" + }, + "policyEngineConfiguration": { + "policyEngine": { + "policyEngineArn": "*", + "policyEngineId": "*", + "policyEngineName": "*", + "description": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "mode": "*" + }, + "addLambdaTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "lambdaFunction": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "toolSchema": "*", + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + } + } + ], + "addOpenApiTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "apiSchema": "*", + "validateOpenApiSchema": "boolean", + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + } + } + ], + "addSmithyTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "smithyModel": "*", + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + } + } + ], + "addMcpServerTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "endpoint": "*", + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + } + } + ], + "addApiGatewayTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "restApi": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "stage": "*", + "apiGatewayToolConfiguration": { + "toolFilters": { + "filterPath": "*", + "methods": "ApiGatewayHttpMethod" + }, + "toolOverrides": { + "path": "*", + "method": "ApiGatewayHttpMethod", + "name": "*", + "description": "*" + } + }, + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + }, + "metadataConfiguration": { + "allowedQueryParameters": "*", + "allowedRequestHeaders": "*", + "allowedResponseHeaders": "*" + } + } + ], + "addInterceptor": [ + { + "interceptionPoint": "InterceptionPoint" + } + ] + }, + "ApiKeyCredentialProvider": { + "apiKeyCredentialProviderName": "*", + "apiKey": "*", + "tags": "*", + "bindForGatewayApiKeyTarget": [] + }, + "OAuth2CredentialProvider": { + "oAuth2CredentialProviderName": "*", + "credentialProviderVendor": "*", + "oauth2ProviderConfigInput": "*", + "tags": "*", + "bindForGatewayOAuthTarget": [ + "*", + "*" + ] + }, + "WorkloadIdentity": { + "workloadIdentityName": "*", + "allowedResourceOauth2ReturnUrls": "*", + "tags": "*" + }, + "Memory": { + "memoryName": "*", + "expirationDuration": "*", + "description": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "memoryStrategies": { + "name": "*", + "description": "*", + "strategyType": "MemoryStrategyType" + }, + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "addMemoryStrategy": [ + { + "name": "*", + "description": "*", + "strategyType": "MemoryStrategyType" + } + ] + }, + "PolicyEngine": { + "policyEngineName": "*", + "description": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "addPolicy": [ + "*", + { + "definition": "*", + "statement": "*", + "policyName": "*", + "description": "*", + "validationMode": "*" + } + ] + }, + "Policy": { + "policyName": "*", + "policyEngine": { + "policyEngineArn": "*", + "policyEngineId": "*", + "policyEngineName": "*", + "description": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "definition": "*", + "statement": "*", + "description": "*", + "validationMode": "*" + }, + "RuntimeEndpoint": { + "endpointName": "*", + "agentRuntimeId": "*", + "agentRuntimeVersion": "*", + "description": "*", + "tags": "*" + }, + "Runtime": { + "runtimeName": "*", + "agentRuntimeArtifact": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "networkConfiguration": "*", + "description": "*", + "protocolConfiguration": "ProtocolType", + "environmentVariables": "*", + "authorizerConfiguration": "*", + "tags": "*", + "requestHeaderConfiguration": { + "allowlistedHeaders": "*" + }, + "lifecycleConfiguration": { + "idleRuntimeSessionTimeout": "*" + }, + "tracingEnabled": "boolean", + "loggingConfigs": { + "logType": "*", + "destination": "*" + }, + "addEndpoint": [ + "*", + { + "description": "*", + "version": "*" + } + ] + }, + "BrowserCustom": { + "browserCustomName": "*", + "description": "*", + "networkConfiguration": "*", + "recordingConfig": { + "enabled": "boolean", + "s3Location": { + "bucketName": "*", + "objectKey": "*", + "objectVersion": "*" + } + }, + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "browserSigning": "BrowserSigning" + }, + "CodeInterpreterCustom": { + "codeInterpreterCustomName": "*", + "description": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "networkConfiguration": "*", + "tags": "*" + } + }, + "aws-bedrock-alpha.bedrock": { + "AgentAlias": { + "agentAliasName": "*", + "agentVersion": "*", + "agent": { + "agentArn": "*", + "agentId": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "kmsKey": { + "keyArn": "*", + "keyId": "*" + }, + "lastUpdated": "*" + }, + "description": "*" + }, + "Agent": { + "agentName": "*", + "instruction": "*", + "foundationModel": { + "invokableArn": "*" + }, + "existingRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "shouldPrepareAgent": "boolean", + "idleSessionTTL": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "description": "*", + "actionGroups": "*", + "guardrail": { + "guardrailArn": "*", + "guardrailId": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "lastUpdated": "*", + "guardrailVersion": "*" + }, + "promptOverrideConfiguration": "*", + "userInputEnabled": "boolean", + "codeInterpreterEnabled": "boolean", + "forceDelete": "boolean", + "memory": "*", + "agentCollaboration": "*", + "customOrchestrationExecutor": "*", + "addGuardrail": [ + { + "guardrailArn": "*", + "guardrailId": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "lastUpdated": "*", + "guardrailVersion": "*" + } + ], + "addActionGroup": [ + "*" + ], + "addActionGroups": [ + "*" + ] + }, + "GuardrailVersion": { + "guardrail": { + "guardrailArn": "*", + "guardrailId": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "lastUpdated": "*", + "guardrailVersion": "*" + }, + "description": "*" + }, + "Guardrail": { + "guardrailName": "*", + "description": "*", + "blockedInputMessaging": "*", + "blockedOutputsMessaging": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentFilters": { + "type": "ContentFilterType", + "inputStrength": "ContentFilterStrength", + "outputStrength": "ContentFilterStrength", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean", + "inputModalities": "ModalityType", + "outputModalities": "ModalityType" + }, + "contentFiltersTierConfig": "TierConfig", + "deniedTopics": "*", + "topicsTierConfig": "TierConfig", + "wordFilters": { + "text": "*", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean" + }, + "managedWordListFilters": { + "type": "ManagedWordFilterType", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean" + }, + "piiFilters": { + "type": "*", + "action": "GuardrailAction", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean" + }, + "regexFilters": { + "name": "*", + "description": "*", + "action": "GuardrailAction", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean", + "pattern": "*" + }, + "contextualGroundingFilters": { + "type": "ContextualGroundingFilterType", + "action": "GuardrailAction", + "enabled": "boolean", + "threshold": "*" + }, + "crossRegionConfig": { + "guardrailProfileArn": "*" + }, + "addContentFilter": [ + { + "type": "ContentFilterType", + "inputStrength": "ContentFilterStrength", + "outputStrength": "ContentFilterStrength", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean", + "inputModalities": "ModalityType", + "outputModalities": "ModalityType" + } + ], + "addPIIFilter": [ + { + "type": "*", + "action": "GuardrailAction", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean" + } + ], + "addRegexFilter": [ + { + "name": "*", + "description": "*", + "action": "GuardrailAction", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean", + "pattern": "*" + } + ], + "addDeniedTopicFilter": [ + "*" + ], + "addContextualGroundingFilter": [ + { + "type": "ContextualGroundingFilterType", + "action": "GuardrailAction", + "enabled": "boolean", + "threshold": "*" + } + ], + "addWordFilter": [ + { + "text": "*", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean" + } + ], + "addWordFilterFromFile": [ + "*", + "GuardrailAction", + "GuardrailAction", + "boolean", + "boolean" + ], + "addManagedWordListFilter": [ + { + "type": "ManagedWordFilterType", + "inputAction": "GuardrailAction", + "inputEnabled": "boolean", + "outputAction": "GuardrailAction", + "outputEnabled": "boolean" + } + ], + "createVersion": [ + "*" + ] + }, + "ApplicationInferenceProfile": { + "applicationInferenceProfileName": "*", + "description": "*", + "modelSource": { + "invokableArn": "*" + }, + "tags": "*", + "grantInvoke": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantProfileUsage": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "Prompt": { + "promptName": "*", + "description": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "defaultVariant": { + "name": "*", + "templateType": "PromptTemplateType", + "inferenceConfiguration": "*", + "modelId": "*", + "templateConfiguration": "*", + "genAiResource": "*" + }, + "variants": { + "name": "*", + "templateType": "PromptTemplateType", + "inferenceConfiguration": "*", + "modelId": "*", + "templateConfiguration": "*", + "genAiResource": "*" + }, + "tags": "*", + "createVersion": [ + "*" + ], + "addVariant": [ + { + "name": "*", + "templateType": "PromptTemplateType", + "inferenceConfiguration": "*", + "modelId": "*", + "templateConfiguration": "*", + "genAiResource": "*" + } + ] + } + }, + "aws-glue-alpha.lib": { + "PySparkEtlJob": { + "notifyDelayAfter": "*", + "extraPythonFiles": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "jobRunQueuingEnabled": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "PySparkFlexEtlJob": { + "notifyDelayAfter": "*", + "extraPythonFiles": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "PySparkStreamingJob": { + "extraPythonFiles": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "jobRunQueuingEnabled": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "PythonShellJob": { + "pythonVersion": "PythonVersion", + "maxCapacity": "MaxCapacity", + "librarySet": "LibrarySet", + "extraPythonFiles": "*", + "jobRunQueuingEnabled": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "RayJob": { + "runtime": "Runtime", + "numberOfWorkers": "*", + "jobRunQueuingEnabled": "boolean", + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "ScalaSparkEtlJob": { + "className": "*", + "notifyDelayAfter": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "jobRunQueuingEnabled": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "ScalaSparkFlexEtlJob": { + "notifyDelayAfter": "*", + "className": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "ScalaSparkStreamingJob": { + "className": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "jobRunQueuingEnabled": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "Workflow": {} + }, + "aws-apigateway.lib": { + "CognitoUserPoolsAuthorizer": { + "authorizerName": "*", + "cognitoUserPools": { + "userPoolId": "*", + "userPoolArn": "*", + "userPoolProviderName": "*", + "identityProviders": { + "providerName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "resultsCacheTtl": "*", + "identitySource": "*", + "_attachToApi": [ + { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + } + ] + }, + "TokenAuthorizer": { + "validationRegex": "*", + "identitySource": "*", + "authorizerName": "*", + "handler": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "resultsCacheTtl": "*", + "assumeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "RequestAuthorizer": { + "identitySources": "*", + "authorizerName": "*", + "handler": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "resultsCacheTtl": "*", + "assumeRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "aws-apigatewayv2.lib": { + "ApiMapping": { + "apiMappingKey": "*", + "api": "*", + "domainName": "*", + "stage": { + "stageName": "*", + "url": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "DomainName": { + "domainName": "*", + "mtls": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "key": "*", + "version": "*" + }, + "certificate": "*", + "certificateName": "*", + "endpointType": "EndpointType", + "securityPolicy": "SecurityPolicy", + "ownershipCertificate": "*", + "ipAddressType": "IpAddressType", + "addEndpoint": [ + { + "certificate": "*", + "certificateName": "*", + "endpointType": "EndpointType", + "securityPolicy": "SecurityPolicy", + "ownershipCertificate": "*", + "ipAddressType": "IpAddressType" + } + ] + }, + "HttpApi": { + "addStage": [ + "*", + { + "stageName": "*", + "autoDeploy": "boolean", + "domainMapping": { + "domainName": "*", + "mappingKey": "*" + }, + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + }, + "description": "*", + "detailedMetricsEnabled": "boolean", + "accessLogSettings": { + "destination": "*", + "format": "*" + }, + "stageVariables": "*" + } + ], + "addRoutes": [ + { + "path": "*", + "methods": "HttpMethod", + "authorizer": "*", + "authorizationScopes": "*", + "integration": "*" + } + ] + }, + "HttpAuthorizer": { + "authorizerName": "*", + "httpApi": { + "isHttpApi": "boolean" + }, + "type": "HttpAuthorizerType", + "identitySource": "*", + "jwtAudience": "*", + "jwtIssuer": "*", + "enableSimpleResponses": "boolean", + "payloadFormatVersion": "AuthorizerPayloadVersion", + "authorizerUri": "*", + "resultsCacheTtl": "*", + "role": "*" + }, + "HttpIntegration": { + "httpApi": { + "isHttpApi": "boolean" + }, + "integrationType": "HttpIntegrationType", + "integrationSubtype": "HttpIntegrationSubtype", + "integrationUri": "*", + "method": "HttpMethod", + "connectionId": "*", + "connectionType": "HttpConnectionType", + "payloadFormatVersion": "*", + "secureServerName": "*", + "timeout": "*", + "parameterMapping": "*", + "credentials": "*" + }, + "HttpRoute": { + "httpApi": { + "isHttpApi": "boolean" + }, + "routeKey": "*", + "authorizer": "*", + "authorizationScopes": "*", + "integration": "*", + "grantInvoke": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + { + "httpMethods": "HttpMethod" + } + ] + }, + "HttpStage": { + "httpApi": { + "isHttpApi": "boolean" + }, + "stageName": "*", + "autoDeploy": "boolean", + "domainMapping": { + "domainName": "*", + "mappingKey": "*" + }, + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + }, + "description": "*", + "detailedMetricsEnabled": "boolean", + "accessLogSettings": { + "destination": "*", + "format": "*" + }, + "stageVariables": "*" + }, + "VpcLink": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "vpcLinkName": "*", + "subnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroups": "*", + "addSubnets": [ + "*" + ], + "addSecurityGroups": [ + "*" + ] + }, + "ApiKey": { + "customerId": "*", + "enabled": "boolean", + "generateDistinctId": "boolean", + "apiKeyName": "*", + "value": "*", + "description": "*" + }, + "RateLimitedApiKey": { + "apiStages": { + "api": { + "apiId": "*", + "apiEndpoint": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "isWebsocketApi": "boolean" + }, + "stage": { + "callbackUrl": "*", + "stageName": "*", + "url": "*" + } + }, + "quota": { + "limit": "*", + "offset": "*", + "period": "Period" + }, + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + }, + "customerId": "*", + "enabled": "boolean", + "generateDistinctId": "boolean", + "apiKeyName": "*", + "value": "*", + "description": "*" + }, + "WebSocketApi": { + "addRoute": [ + "*", + { + "integration": "*", + "authorizer": "*", + "returnResponse": "boolean" + } + ], + "grantManageConnections": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "arnForExecuteApi": [ + "*", + "*", + "*" + ], + "arnForExecuteApiV2": [ + "*", + "*" + ] + }, + "WebSocketAuthorizer": { + "authorizerName": "*", + "webSocketApi": { + "apiId": "*", + "apiEndpoint": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "isWebsocketApi": "boolean" + }, + "type": "WebSocketAuthorizerType", + "identitySource": "*", + "authorizerUri": "*" + }, + "WebSocketIntegration": { + "webSocketApi": { + "isWebsocketApi": "boolean" + }, + "integrationType": "WebSocketIntegrationType", + "integrationUri": "*", + "integrationMethod": "*", + "contentHandling": "ContentHandling", + "credentialsRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "requestParameters": "*", + "requestTemplates": "*", + "templateSelectionExpression": "*", + "timeout": "*", + "passthroughBehavior": "PassthroughBehavior" + }, + "WebSocketRoute": { + "webSocketApi": { + "apiId": "*", + "apiEndpoint": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "isWebsocketApi": "boolean" + }, + "routeKey": "*", + "apiKeyRequired": "boolean", + "integration": "*", + "authorizer": "*", + "returnResponse": "boolean" + }, + "WebSocketStage": { + "webSocketApi": { + "apiId": "*", + "apiEndpoint": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "isWebsocketApi": "boolean" + }, + "stageName": "*", + "autoDeploy": "boolean", + "domainMapping": { + "domainName": "*", + "mappingKey": "*" + }, + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + }, + "description": "*", + "detailedMetricsEnabled": "boolean", + "accessLogSettings": { + "destination": "*", + "format": "*" + }, + "stageVariables": "*", + "grantManagementApiAccess": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "UsagePlan": { + "apiStages": { + "api": { + "apiId": "*", + "apiEndpoint": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "isWebsocketApi": "boolean" + }, + "stage": { + "callbackUrl": "*", + "stageName": "*", + "url": "*" + } + }, + "description": "*", + "quota": { + "limit": "*", + "offset": "*", + "period": "Period" + }, + "throttle": { + "rateLimit": "*", + "burstLimit": "*" + }, + "usagePlanName": "*", + "addApiStage": [ + { + "api": { + "apiId": "*", + "apiEndpoint": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "isWebsocketApi": "boolean" + }, + "stage": { + "callbackUrl": "*", + "stageName": "*", + "url": "*" + } + } + ] + } + }, + "aws-bedrockagentcore.lib": { + "Evaluator": { + "evaluatorName": "*", + "evaluatorConfig": "*", + "level": "*", + "description": "*", + "tags": "*" + }, + "OnlineEvaluationConfig": { + "evaluators": "*", + "dataSource": "*", + "tags": "*", + "onlineEvaluationConfigName": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "description": "*", + "samplingPercentage": "*", + "filters": { + "key": "*", + "operator": "*", + "value": "*" + }, + "sessionTimeout": "*", + "executionStatus": "*" + }, + "Gateway": { + "gatewayName": "*", + "description": "*", + "protocolConfiguration": { + "protocolType": "*" + }, + "authorizerConfiguration": { + "authorizerType": "GatewayAuthorizerType" + }, + "exceptionLevel": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "interceptorConfigurations": { + "interceptionPoint": "InterceptionPoint" + }, + "policyEngineConfiguration": { + "policyEngine": { + "policyEngineArn": "*", + "policyEngineId": "*", + "policyEngineName": "*", + "description": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "mode": "*" + }, + "addLambdaTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "lambdaFunction": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "toolSchema": "*", + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + } + } + ], + "addOpenApiTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "apiSchema": "*", + "validateOpenApiSchema": "boolean", + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + } + } + ], + "addSmithyTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "smithyModel": "*", + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + } + } + ], + "addMcpServerTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "endpoint": "*", + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + } + } + ], + "addApiGatewayTarget": [ + "*", + { + "gatewayTargetName": "*", + "description": "*", + "restApi": { + "restApiId": "*", + "restApiName": "*", + "restApiRootResourceId": "*", + "latestDeployment": "*", + "deploymentStage": "*", + "root": { + "restApi": "*", + "resourceId": "*", + "path": "*", + "defaultIntegration": "*", + "defaultMethodOptions": { + "operationName": "*", + "authorizationType": "AuthorizationType", + "authorizer": { + "authorizerId": "*", + "authorizationType": "AuthorizationType" + }, + "apiKeyRequired": "boolean", + "methodResponses": { + "statusCode": "*", + "responseParameters": "*", + "responseModels": "*" + }, + "requestParameters": "*", + "requestModels": "*", + "requestValidator": { + "requestValidatorId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "authorizationScopes": "*", + "requestValidatorOptions": { + "requestValidatorName": "*", + "validateRequestBody": "boolean", + "validateRequestParameters": "boolean" + } + }, + "defaultCorsPreflightOptions": { + "statusCode": "*", + "allowOrigins": "*", + "allowHeaders": "*", + "allowMethods": "*", + "allowCredentials": "boolean", + "maxAge": "*", + "disableCache": "boolean", + "exposeHeaders": "*" + } + } + }, + "stage": "*", + "apiGatewayToolConfiguration": { + "toolFilters": { + "filterPath": "*", + "methods": "*" + }, + "toolOverrides": { + "path": "*", + "name": "*", + "description": "*" + } + }, + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + }, + "metadataConfiguration": { + "allowedQueryParameters": "*", + "allowedRequestHeaders": "*", + "allowedResponseHeaders": "*" + } + } + ], + "addInterceptor": [ + { + "interceptionPoint": "InterceptionPoint" + } + ] + }, + "ApiKeyCredentialProvider": { + "apiKeyCredentialProviderName": "*", + "apiKey": "*", + "tags": "*", + "bindForGatewayApiKeyTarget": [] + }, + "OAuth2CredentialProvider": { + "oAuth2CredentialProviderName": "*", + "credentialProviderVendor": "*", + "oauth2ProviderConfigInput": "*", + "tags": "*", + "bindForGatewayOAuthTarget": [ + "*", + "*" + ] + }, + "WorkloadIdentity": { + "workloadIdentityName": "*", + "allowedResourceOauth2ReturnUrls": "*", + "tags": "*" + }, + "Memory": { + "memoryName": "*", + "expirationDuration": "*", + "description": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "memoryStrategies": { + "strategyName": "*", + "description": "*", + "strategyType": "MemoryStrategyType" + }, + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "streamDeliveryResources": "*", + "addMemoryStrategy": [ + { + "strategyName": "*", + "description": "*", + "strategyType": "MemoryStrategyType" + } + ], + "addStreamDeliveryResource": [ + "*" + ] + }, + "PolicyEngine": { + "policyEngineName": "*", + "description": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "addPolicy": [ + "*", + { + "statement": "*", + "policyName": "*", + "description": "*", + "validationMode": "*" + } + ] + }, + "Policy": { + "policyName": "*", + "policyEngine": { + "policyEngineArn": "*", + "policyEngineId": "*", + "policyEngineName": "*", + "description": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "statement": "*", + "description": "*", + "validationMode": "*" + }, + "RuntimeEndpoint": { + "endpointName": "*", + "agentRuntimeId": "*", + "agentRuntimeVersion": "*", + "description": "*", + "tags": "*" + }, + "Runtime": { + "runtimeName": "*", + "agentRuntimeArtifact": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "networkConfiguration": "*", + "description": "*", + "protocolConfiguration": "*", + "platformVersion": "*", + "environmentVariables": "*", + "authorizerConfiguration": "*", + "tags": "*", + "requestHeaderConfiguration": { + "allowlistedHeaders": "*" + }, + "lifecycleConfiguration": { + "idleRuntimeSessionTimeout": "*" + }, + "tracingEnabled": "boolean", + "loggingConfigs": { + "logType": "*", + "destination": "*" + }, + "manageDeliveryResourcePolicy": "boolean", + "addEndpoint": [ + "*", + { + "description": "*", + "version": "*" + } + ] + }, + "BrowserCustom": { + "browserCustomName": "*", + "description": "*", + "networkConfiguration": "*", + "recordingConfig": { + "enabled": "boolean", + "s3Location": { + "bucketName": "*", + "objectKey": "*", + "objectVersion": "*" + } + }, + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "browserSigning": "BrowserSigning" + }, + "CodeInterpreterCustom": { + "codeInterpreterCustomName": "*", + "description": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "networkConfiguration": "*", + "tags": "*" + } + }, + "aws-cloudfront.lib": { + "EdgeFunction": { + "stackId": "*", + "runtime": "*", + "code": "*", + "handler": "*", + "description": "*", + "timeout": "*", + "environment": "*", + "functionName": "*", + "memorySize": "*", + "ephemeralStorageSize": "*", + "initialPolicy": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipv6AllowedForDualStack": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "allowAllOutbound": "boolean", + "allowAllIpv6Outbound": "boolean", + "deadLetterQueueEnabled": "boolean", + "deadLetterQueue": { + "queueArn": "*", + "queueUrl": "*", + "queueName": "*", + "encryptionMasterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "fifo": "boolean", + "encryptionType": "QueueEncryption" + }, + "deadLetterTopic": { + "topicArn": "*", + "topicName": "*", + "masterKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "contentBasedDeduplication": "boolean", + "fifo": "boolean" + }, + "tracing": "Tracing", + "snapStart": "*", + "profiling": "boolean", + "profilingGroup": { + "profilingGroupName": "*", + "profilingGroupArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "insightsVersion": "*", + "adotInstrumentation": { + "layerVersion": "*", + "execWrapper": "AdotLambdaExecWrapper" + }, + "paramsAndSecrets": "*", + "layers": { + "layerVersionArn": "*", + "compatibleRuntimes": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "reservedConcurrentExecutions": "*", + "events": "*", + "logRetention": "RetentionDays", + "logRemovalPolicy": "RemovalPolicy", + "logRetentionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "logRetentionRetryOptions": { + "maxRetries": "*", + "base": "*" + }, + "currentVersionOptions": { + "codeSha256": "*", + "description": "*", + "provisionedConcurrentExecutions": "*", + "removalPolicy": "RemovalPolicy", + "minExecutionEnvironments": "*", + "maxExecutionEnvironments": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + }, + "filesystem": "*", + "allowPublicSubnet": "boolean", + "environmentEncryption": "*", + "codeSigningConfig": "*", + "architectures": "*", + "architecture": "*", + "runtimeManagementMode": "*", + "tenancyConfig": "*", + "durableConfig": { + "executionTimeout": "*" + }, + "logGroup": "*", + "logFormat": "*", + "loggingFormat": "LoggingFormat", + "recursiveLoop": "RecursiveLoop", + "applicationLogLevel": "*", + "applicationLogLevelV2": "ApplicationLogLevel", + "systemLogLevel": "*", + "systemLogLevelV2": "SystemLogLevel", + "onFailure": "*", + "onSuccess": "*", + "maxEventAge": "*", + "retryAttempts": "*", + "addAlias": [ + "*", + { + "description": "*", + "additionalVersions": { + "version": { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + }, + "weight": "*" + }, + "provisionedConcurrentExecutions": "*", + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + } + ], + "addEventSourceMapping": [ + "*", + { + "eventSourceArn": "*", + "batchSize": "*", + "bisectBatchOnError": "boolean", + "onFailure": "*", + "enabled": "boolean", + "startingPosition": "StartingPosition", + "startingPositionTimestamp": "*", + "reportBatchItemFailures": "boolean", + "maxBatchingWindow": "*", + "maxConcurrency": "*", + "retryAttempts": "*", + "parallelizationFactor": "*", + "kafkaTopic": "*", + "kafkaBootstrapServers": "*", + "kafkaConsumerGroupId": "*", + "sourceAccessConfigurations": { + "type": "*", + "uri": "*" + }, + "filters": "*", + "filterEncryption": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "supportS3OnFailureDestination": "boolean", + "provisionedPollerConfig": { + "minimumPollers": "*", + "maximumPollers": "*", + "pollerGroupName": "*" + }, + "metricsConfig": { + "metrics": "MetricType" + }, + "logLevel": "EventSourceMappingLogLevel", + "schemaRegistryConfig": "*" + } + ], + "addPermission": [ + "*", + { + "action": "*", + "eventSourceToken": "*", + "principal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "scope": "*", + "sourceAccount": "*", + "sourceArn": "*", + "organizationId": "*", + "functionUrlAuthType": "FunctionUrlAuthType", + "invokedViaFunctionUrl": "boolean" + } + ], + "addToRolePolicy": [ + "*" + ], + "grantInvoke": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantInvokeLatestVersion": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantInvokeVersion": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + { + "version": "*", + "lambda": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "resourceArnsForGrantInvoke": "*" + } + ], + "grantInvokeUrl": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "grantInvokeCompositePrincipal": [ + "*" + ], + "metric": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricDuration": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricErrors": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricInvocations": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricThrottles": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "addEventSource": [ + "*" + ], + "configureAsyncInvoke": [ + { + "onFailure": "*", + "maxEventAge": "*", + "retryAttempts": "*" + } + ], + "addFunctionUrl": [ + { + "authType": "FunctionUrlAuthType", + "cors": { + "allowCredentials": "boolean", + "allowedHeaders": "*", + "allowedMethods": "HttpMethod", + "allowedOrigins": "*", + "exposedHeaders": "*", + "maxAge": "*" + }, + "invokeMode": "InvokeMode" + } + ] + } + }, + "aws-codedeploy.lib": { + "EcsApplication": { + "applicationName": "*" + }, + "EcsDeploymentConfig": {}, + "EcsDeploymentGroup": { + "application": "*", + "deploymentGroupName": "*", + "deploymentConfig": "*", + "alarms": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "service": { + "cluster": { + "clusterName": "*", + "clusterArn": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "connections": "*", + "hasEc2Capacity": "boolean", + "defaultCloudMapNamespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType" + }, + "autoscalingGroup": { + "autoScalingGroupName": "*", + "autoScalingGroupArn": "*", + "osType": "OperatingSystemType", + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "executeCommandConfiguration": { + "kmsKey": { + "keyArn": "*", + "keyId": "*" + }, + "logConfiguration": { + "cloudWatchEncryptionEnabled": "boolean", + "cloudWatchLogGroup": "*", + "s3Bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "policy": "*", + "replicationRoleArn": "*" + }, + "s3EncryptionEnabled": "boolean", + "s3KeyPrefix": "*" + }, + "logging": "ExecuteCommandLogging" + } + }, + "serviceArn": "*", + "serviceName": "*" + }, + "blueGreenDeploymentConfig": { + "blueTargetGroup": { + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*" + }, + "listener": "*", + "testListener": "*", + "deploymentApprovalWaitTime": "*" + }, + "ignorePollAlarmsFailure": "boolean", + "autoRollback": { + "failedDeployment": "boolean", + "stoppedDeployment": "boolean", + "deploymentInAlarm": "boolean" + }, + "ignoreAlarmConfiguration": "boolean", + "addAlarm": [ + "*" + ] + }, + "ImportedEcsDeploymentGroup": { + "application": "*", + "deploymentGroupName": "*", + "deploymentConfig": "*" + }, + "LambdaApplication": { + "applicationName": "*" + }, + "CustomLambdaDeploymentConfig": { + "type": "CustomLambdaDeploymentConfigType", + "percentage": "*", + "interval": "*", + "deploymentConfigName": "*", + "bindEnvironment": [ + "*" + ] + }, + "LambdaDeploymentConfig": {}, + "LambdaDeploymentGroup": { + "application": { + "applicationArn": "*", + "applicationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "deploymentGroupName": "*", + "deploymentConfig": { + "deploymentConfigName": "*", + "deploymentConfigArn": "*" + }, + "alarms": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "alias": "*", + "preHook": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "postHook": { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + }, + "ignorePollAlarmsFailure": "boolean", + "autoRollback": { + "failedDeployment": "boolean", + "stoppedDeployment": "boolean", + "deploymentInAlarm": "boolean" + }, + "ignoreAlarmConfiguration": "boolean", + "addAlarm": [ + "*" + ], + "addPreHook": [ + { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + } + ], + "addPostHook": [ + { + "functionName": "*", + "functionArn": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "isBoundToVpc": "boolean", + "latestVersion": { + "version": "*", + "edgeArn": "*", + "functionName": "*", + "functionArn": "*", + "isBoundToVpc": "boolean", + "tenancyConfig": "*", + "architecture": "*", + "resourceArnsForGrantInvoke": "*", + "connections": "*" + }, + "resourceArnsForGrantInvoke": "*" + } + ], + "grantPutLifecycleEventHookExecutionStatus": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + }, + "ImportedLambdaDeploymentGroup": { + "application": { + "applicationArn": "*", + "applicationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "deploymentGroupName": "*", + "deploymentConfig": { + "deploymentConfigName": "*", + "deploymentConfigArn": "*" + } + }, + "ImportedDeploymentGroupBase": { + "application": "*", + "deploymentGroupName": "*" + }, + "DeploymentGroupBase": { + "deploymentGroupName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "roleConstructId": "*" + }, + "ServerApplication": { + "applicationName": "*" + }, + "ServerDeploymentConfig": { + "minimumHealthyHosts": "*", + "zonalConfig": { + "monitorDuration": "*", + "minimumHealthyHostsPerZone": "*" + }, + "deploymentConfigName": "*" + }, + "ImportedServerDeploymentGroup": { + "application": "*", + "deploymentGroupName": "*", + "deploymentConfig": "*" + }, + "ServerDeploymentGroup": { + "application": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "deploymentGroupName": "*", + "deploymentConfig": "*", + "autoScalingGroups": { + "autoScalingGroupName": "*", + "autoScalingGroupArn": "*", + "osType": "OperatingSystemType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "installAgent": "boolean", + "loadBalancer": "*", + "loadBalancers": "*", + "ec2InstanceTags": "*", + "onPremiseInstanceTags": "*", + "alarms": "*", + "ignorePollAlarmsFailure": "boolean", + "autoRollback": { + "failedDeployment": "boolean", + "stoppedDeployment": "boolean", + "deploymentInAlarm": "boolean" + }, + "ignoreAlarmConfiguration": "boolean", + "terminationHook": "boolean", + "addAutoScalingGroup": [ + "*" + ], + "addAlarm": [ + "*" + ] + } + }, + "aws-codepipeline.lib": { + "AliasWithShorterGeneratedName": {} + }, + "aws-cognito.lib": { + "UserPoolIdentityProviderAmazon": { + "clientId": "*", + "clientSecret": "*", + "scopes": "*", + "userPool": { + "userPoolId": "*", + "userPoolArn": "*", + "userPoolProviderName": "*", + "identityProviders": { + "providerName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "attributeMapping": { + "address": "*", + "custom": "*" + } + }, + "UserPoolIdentityProviderApple": { + "clientId": "*", + "teamId": "*", + "keyId": "*", + "privateKey": "*", + "privateKeyValue": "*", + "scopes": "*", + "userPool": { + "userPoolId": "*", + "userPoolArn": "*", + "userPoolProviderName": "*", + "identityProviders": { + "providerName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "attributeMapping": { + "address": "*", + "custom": "*" + } + }, + "UserPoolIdentityProviderFacebook": { + "clientId": "*", + "clientSecret": "*", + "scopes": "*", + "apiVersion": "*", + "userPool": { + "userPoolId": "*", + "userPoolArn": "*", + "userPoolProviderName": "*", + "identityProviders": { + "providerName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "attributeMapping": { + "address": "*", + "custom": "*" + } + }, + "UserPoolIdentityProviderGoogle": { + "clientId": "*", + "clientSecret": "*", + "clientSecretValue": "*", + "scopes": "*", + "userPool": { + "userPoolId": "*", + "userPoolArn": "*", + "userPoolProviderName": "*", + "identityProviders": { + "providerName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "attributeMapping": { + "address": "*", + "custom": "*" + } + }, + "UserPoolIdentityProviderOidc": { + "clientId": "*", + "clientSecret": "*", + "issuerUrl": "*", + "name": "*", + "scopes": "*", + "identifiers": "*", + "attributeRequestMethod": "OidcAttributeRequestMethod", + "endpoints": { + "authorization": "*", + "token": "*", + "userInfo": "*", + "jwksUri": "*" + }, + "userPool": { + "userPoolId": "*", + "userPoolArn": "*", + "userPoolProviderName": "*", + "identityProviders": { + "providerName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "attributeMapping": { + "address": "*", + "custom": "*" + } + }, + "UserPoolIdentityProviderSaml": { + "name": "*", + "identifiers": "*", + "metadata": "*", + "idpSignout": "boolean", + "encryptedResponses": "boolean", + "requestSigningAlgorithm": "SigningAlgorithm", + "idpInitiated": "boolean", + "userPool": { + "userPoolId": "*", + "userPoolArn": "*", + "userPoolProviderName": "*", + "identityProviders": { + "providerName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "attributeMapping": { + "address": "*", + "custom": "*" + } + } + }, + "aws-ecs.lib": { + "ImportedTaskDefinition": { + "taskDefinitionArn": "*", + "compatibility": "Compatibility", + "networkMode": "NetworkMode", + "taskRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "TaskDefinition": { + "networkMode": "NetworkMode", + "placementConstraints": "*", + "compatibility": "Compatibility", + "cpu": "*", + "memoryMiB": "*", + "ipcMode": "IpcMode", + "pidMode": "PidMode", + "inferenceAccelerators": { + "deviceName": "*", + "deviceType": "*" + }, + "ephemeralStorageGiB": "*", + "runtimePlatform": { + "cpuArchitecture": "*", + "operatingSystemFamily": "*" + }, + "family": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "taskRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "proxyConfiguration": "*", + "volumes": { + "host": { + "sourcePath": "*" + }, + "name": "*", + "configuredAtLaunch": "boolean", + "dockerVolumeConfiguration": { + "autoprovision": "boolean", + "driver": "*", + "driverOpts": "*", + "labels": "*", + "scope": "Scope" + }, + "efsVolumeConfiguration": { + "fileSystemId": "*", + "rootDirectory": "*", + "transitEncryption": "*", + "transitEncryptionPort": "*", + "authorizationConfig": { + "accessPointId": "*", + "iam": "*" + } + } + }, + "enableFaultInjection": "boolean", + "_validateTarget": [ + { + "containerName": "*", + "containerPort": "*", + "protocol": "Protocol", + "alternateTarget": "*" + } + ], + "_portRangeFromPortMapping": [ + { + "containerPort": "*", + "containerPortRange": "*", + "hostPort": "*", + "protocol": "Protocol", + "name": "*", + "appProtocol": "*" + } + ], + "addToTaskRolePolicy": [ + "*" + ], + "addToExecutionRolePolicy": [ + "*" + ], + "addContainer": [ + "*", + { + "image": "*", + "containerName": "*", + "command": "*", + "credentialSpecs": "*", + "cpu": "*", + "disableNetworking": "boolean", + "dnsSearchDomains": "*", + "dnsServers": "*", + "dockerLabels": "*", + "dockerSecurityOptions": "*", + "entryPoint": "*", + "environment": "*", + "environmentFiles": "*", + "secrets": "*", + "startTimeout": "*", + "essential": "boolean", + "extraHosts": "*", + "healthCheck": { + "command": "*", + "retries": "*" + }, + "hostname": "*", + "interactive": "boolean", + "memoryLimitMiB": "*", + "memoryReservationMiB": "*", + "privileged": "boolean", + "readonlyRootFilesystem": "boolean", + "user": "*", + "versionConsistency": "VersionConsistency", + "workingDirectory": "*", + "logging": "*", + "linuxParameters": "*", + "gpuCount": "*", + "portMappings": { + "containerPort": "*", + "containerPortRange": "*", + "hostPort": "*", + "protocol": "Protocol", + "name": "*", + "appProtocol": "*" + }, + "inferenceAcceleratorResources": "*", + "systemControls": { + "namespace": "*", + "value": "*" + }, + "pseudoTerminal": "boolean", + "ulimits": { + "name": "UlimitName", + "softLimit": "*", + "hardLimit": "*" + }, + "enableRestartPolicy": "boolean", + "restartIgnoredExitCodes": "*" + } + ], + "addFirelensLogRouter": [ + "*", + { + "firelensConfig": { + "type": "FirelensLogRouterType", + "options": { + "enableECSLogMetadata": "boolean", + "configFileType": "FirelensConfigFileType", + "configFileValue": "*" + } + }, + "image": "*", + "containerName": "*", + "command": "*", + "credentialSpecs": "*", + "cpu": "*", + "disableNetworking": "boolean", + "dnsSearchDomains": "*", + "dnsServers": "*", + "dockerLabels": "*", + "dockerSecurityOptions": "*", + "entryPoint": "*", + "environment": "*", + "environmentFiles": "*", + "secrets": "*", + "startTimeout": "*", + "essential": "boolean", + "extraHosts": "*", + "healthCheck": { + "command": "*", + "retries": "*" + }, + "hostname": "*", + "interactive": "boolean", + "memoryLimitMiB": "*", + "memoryReservationMiB": "*", + "privileged": "boolean", + "readonlyRootFilesystem": "boolean", + "user": "*", + "versionConsistency": "VersionConsistency", + "workingDirectory": "*", + "logging": "*", + "linuxParameters": "*", + "gpuCount": "*", + "portMappings": { + "containerPort": "*", + "containerPortRange": "*", + "hostPort": "*", + "protocol": "Protocol", + "name": "*", + "appProtocol": "*" + }, + "inferenceAcceleratorResources": "*", + "systemControls": { + "namespace": "*", + "value": "*" + }, + "pseudoTerminal": "boolean", + "ulimits": { + "name": "UlimitName", + "softLimit": "*", + "hardLimit": "*" + }, + "enableRestartPolicy": "boolean", + "restartIgnoredExitCodes": "*" + } + ], + "_linkContainer": [ + "*" + ], + "addVolume": [ + { + "host": { + "sourcePath": "*" + }, + "name": "*", + "configuredAtLaunch": "boolean", + "dockerVolumeConfiguration": { + "autoprovision": "boolean", + "driver": "*", + "driverOpts": "*", + "labels": "*", + "scope": "Scope" + }, + "efsVolumeConfiguration": { + "fileSystemId": "*", + "rootDirectory": "*", + "transitEncryption": "*", + "transitEncryptionPort": "*", + "authorizationConfig": { + "accessPointId": "*", + "iam": "*" + } + } + } + ], + "addPlacementConstraint": [ + "*" + ], + "addExtension": [ + "*" + ], + "addInferenceAccelerator": [ + { + "deviceName": "*", + "deviceType": "*" + } + ], + "grantRun": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ], + "obtainExecutionRole": [], + "findPortMappingByName": [ + "*" + ], + "findContainer": [ + "*" + ] + }, + "Ec2Service": { + "taskDefinition": "*", + "assignPublicIp": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "placementConstraints": "*", + "placementStrategies": "*", + "daemon": "boolean", + "availabilityZoneRebalancing": "AvailabilityZoneRebalancing", + "cluster": { + "clusterName": "*", + "clusterArn": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "connections": "*", + "hasEc2Capacity": "boolean", + "defaultCloudMapNamespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType" + }, + "autoscalingGroup": { + "autoScalingGroupName": "*", + "autoScalingGroupArn": "*", + "osType": "OperatingSystemType", + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "executeCommandConfiguration": { + "kmsKey": { + "keyArn": "*", + "keyId": "*" + }, + "logConfiguration": { + "cloudWatchEncryptionEnabled": "boolean", + "cloudWatchLogGroup": "*", + "s3Bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "policy": "*", + "replicationRoleArn": "*" + }, + "s3EncryptionEnabled": "boolean", + "s3KeyPrefix": "*" + }, + "logging": "ExecuteCommandLogging" + } + }, + "desiredCount": "*", + "serviceName": "*", + "maxHealthyPercent": "*", + "minHealthyPercent": "*", + "healthCheckGracePeriod": "*", + "cloudMapOptions": { + "name": "*", + "cloudMapNamespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "dnsRecordType": "DnsRecordType", + "dnsTtl": "*", + "failureThreshold": "*", + "container": "*", + "containerPort": "*" + }, + "propagateTags": "PropagatedTagSource", + "propagateTaskTagsFrom": "PropagatedTagSource", + "enableECSManagedTags": "boolean", + "deploymentController": { + "type": "DeploymentControllerType" + }, + "circuitBreaker": { + "enable": "boolean", + "rollback": "boolean" + }, + "deploymentAlarms": { + "alarmNames": "*", + "behavior": "AlarmBehavior" + }, + "capacityProviderStrategies": { + "capacityProvider": "*", + "base": "*", + "weight": "*" + }, + "enableExecuteCommand": "boolean", + "serviceConnectConfiguration": { + "namespace": "*", + "services": { + "portMappingName": "*", + "discoveryName": "*", + "dnsName": "*", + "port": "*", + "ingressPortOverride": "*", + "idleTimeout": "*", + "tls": { + "awsPcaAuthorityArn": "*", + "kmsKey": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "logDriver": "*", + "accessLogConfiguration": { + "format": "ServiceConnectAccessLogFormat", + "includeQueryParameters": "boolean" + } + }, + "taskDefinitionRevision": "*", + "volumeConfigurations": "*", + "deploymentStrategy": "DeploymentStrategy", + "bakeTime": "*", + "lifecycleHooks": "*", + "linearConfiguration": { + "stepPercent": "*", + "stepBakeTime": "*" + }, + "canaryConfiguration": { + "stepPercent": "*", + "stepBakeTime": "*" + }, + "forceNewDeployment": { + "enabled": "boolean", + "nonce": "*" + }, + "addPlacementStrategies": [ + "*" + ], + "addPlacementConstraints": [ + "*" + ], + "attachToClassicLB": [ + "*" + ] + }, + "Ec2TaskDefinition": { + "networkMode": "NetworkMode", + "placementConstraints": "*", + "ipcMode": "IpcMode", + "pidMode": "PidMode", + "inferenceAccelerators": { + "deviceName": "*", + "deviceType": "*" + }, + "family": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "taskRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "proxyConfiguration": "*", + "volumes": { + "host": { + "sourcePath": "*" + }, + "name": "*", + "configuredAtLaunch": "boolean", + "dockerVolumeConfiguration": { + "autoprovision": "boolean", + "driver": "*", + "driverOpts": "*", + "labels": "*", + "scope": "Scope" + }, + "efsVolumeConfiguration": { + "fileSystemId": "*", + "rootDirectory": "*", + "transitEncryption": "*", + "transitEncryptionPort": "*", + "authorizationConfig": { + "accessPointId": "*", + "iam": "*" + } + } + }, + "enableFaultInjection": "boolean" + }, + "ExternalService": { + "taskDefinition": "*", + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "daemon": "boolean", + "cluster": { + "clusterName": "*", + "clusterArn": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "connections": "*", + "hasEc2Capacity": "boolean", + "defaultCloudMapNamespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType" + }, + "autoscalingGroup": { + "autoScalingGroupName": "*", + "autoScalingGroupArn": "*", + "osType": "OperatingSystemType", + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "executeCommandConfiguration": { + "kmsKey": { + "keyArn": "*", + "keyId": "*" + }, + "logConfiguration": { + "cloudWatchEncryptionEnabled": "boolean", + "cloudWatchLogGroup": "*", + "s3Bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "policy": "*", + "replicationRoleArn": "*" + }, + "s3EncryptionEnabled": "boolean", + "s3KeyPrefix": "*" + }, + "logging": "ExecuteCommandLogging" + } + }, + "desiredCount": "*", + "serviceName": "*", + "maxHealthyPercent": "*", + "minHealthyPercent": "*", + "healthCheckGracePeriod": "*", + "cloudMapOptions": { + "name": "*", + "cloudMapNamespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "dnsRecordType": "DnsRecordType", + "dnsTtl": "*", + "failureThreshold": "*", + "container": "*", + "containerPort": "*" + }, + "propagateTags": "PropagatedTagSource", + "propagateTaskTagsFrom": "PropagatedTagSource", + "enableECSManagedTags": "boolean", + "deploymentController": { + "type": "DeploymentControllerType" + }, + "circuitBreaker": { + "enable": "boolean", + "rollback": "boolean" + }, + "deploymentAlarms": { + "alarmNames": "*", + "behavior": "AlarmBehavior" + }, + "capacityProviderStrategies": { + "capacityProvider": "*", + "base": "*", + "weight": "*" + }, + "enableExecuteCommand": "boolean", + "serviceConnectConfiguration": { + "namespace": "*", + "services": { + "portMappingName": "*", + "discoveryName": "*", + "dnsName": "*", + "port": "*", + "ingressPortOverride": "*", + "idleTimeout": "*", + "tls": { + "awsPcaAuthorityArn": "*", + "kmsKey": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "logDriver": "*", + "accessLogConfiguration": { + "format": "ServiceConnectAccessLogFormat", + "includeQueryParameters": "boolean" + } + }, + "taskDefinitionRevision": "*", + "volumeConfigurations": "*", + "deploymentStrategy": "DeploymentStrategy", + "bakeTime": "*", + "lifecycleHooks": "*", + "linearConfiguration": { + "stepPercent": "*", + "stepBakeTime": "*" + }, + "canaryConfiguration": { + "stepPercent": "*", + "stepBakeTime": "*" + }, + "forceNewDeployment": { + "enabled": "boolean", + "nonce": "*" + }, + "attachToApplicationTargetGroup": [ + { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*" + } + ], + "loadBalancerTarget": [ + { + "containerName": "*", + "containerPort": "*", + "protocol": "Protocol", + "alternateTarget": "*" + } + ], + "registerLoadBalancerTargets": [ + { + "containerName": "*", + "containerPort": "*", + "protocol": "Protocol", + "newTargetGroupId": "*", + "listener": "*" + } + ], + "autoScaleTaskCount": [ + { + "minCapacity": "*", + "maxCapacity": "*" + } + ], + "enableCloudMap": [ + { + "name": "*", + "cloudMapNamespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "dnsRecordType": "DnsRecordType", + "dnsTtl": "*", + "failureThreshold": "*", + "container": "*", + "containerPort": "*" + } + ], + "associateCloudMapService": [ + { + "service": { + "serviceName": "*", + "namespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "serviceId": "*", + "serviceArn": "*", + "dnsRecordType": "DnsRecordType", + "routingPolicy": "RoutingPolicy", + "discoveryType": "DiscoveryType" + }, + "container": "*", + "containerPort": "*" + } + ] + }, + "ExternalTaskDefinition": { + "networkMode": "NetworkMode", + "family": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "taskRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "proxyConfiguration": "*", + "volumes": { + "host": { + "sourcePath": "*" + }, + "name": "*", + "configuredAtLaunch": "boolean", + "dockerVolumeConfiguration": { + "autoprovision": "boolean", + "driver": "*", + "driverOpts": "*", + "labels": "*", + "scope": "Scope" + }, + "efsVolumeConfiguration": { + "fileSystemId": "*", + "rootDirectory": "*", + "transitEncryption": "*", + "transitEncryptionPort": "*", + "authorizationConfig": { + "accessPointId": "*", + "iam": "*" + } + } + }, + "enableFaultInjection": "boolean", + "addInferenceAccelerator": [ + { + "deviceName": "*", + "deviceType": "*" + } + ] + }, + "FargateService": { + "taskDefinition": "*", + "assignPublicIp": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "platformVersion": "FargatePlatformVersion", + "availabilityZoneRebalancing": "AvailabilityZoneRebalancing", + "cluster": { + "clusterName": "*", + "clusterArn": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "connections": "*", + "hasEc2Capacity": "boolean", + "defaultCloudMapNamespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType" + }, + "autoscalingGroup": { + "autoScalingGroupName": "*", + "autoScalingGroupArn": "*", + "osType": "OperatingSystemType", + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + }, + "executeCommandConfiguration": { + "kmsKey": { + "keyArn": "*", + "keyId": "*" + }, + "logConfiguration": { + "cloudWatchEncryptionEnabled": "boolean", + "cloudWatchLogGroup": "*", + "s3Bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "policy": "*", + "replicationRoleArn": "*" + }, + "s3EncryptionEnabled": "boolean", + "s3KeyPrefix": "*" + }, + "logging": "ExecuteCommandLogging" + } + }, + "desiredCount": "*", + "serviceName": "*", + "maxHealthyPercent": "*", + "minHealthyPercent": "*", + "healthCheckGracePeriod": "*", + "cloudMapOptions": { + "name": "*", + "cloudMapNamespace": { + "namespaceName": "*", + "namespaceId": "*", + "namespaceArn": "*", + "type": "NamespaceType", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "dnsRecordType": "DnsRecordType", + "dnsTtl": "*", + "failureThreshold": "*", + "container": "*", + "containerPort": "*" + }, + "propagateTags": "PropagatedTagSource", + "propagateTaskTagsFrom": "PropagatedTagSource", + "enableECSManagedTags": "boolean", + "deploymentController": { + "type": "DeploymentControllerType" + }, + "circuitBreaker": { + "enable": "boolean", + "rollback": "boolean" + }, + "deploymentAlarms": { + "alarmNames": "*", + "behavior": "AlarmBehavior" + }, + "capacityProviderStrategies": { + "capacityProvider": "*", + "base": "*", + "weight": "*" + }, + "enableExecuteCommand": "boolean", + "serviceConnectConfiguration": { + "namespace": "*", + "services": { + "portMappingName": "*", + "discoveryName": "*", + "dnsName": "*", + "port": "*", + "ingressPortOverride": "*", + "idleTimeout": "*", + "tls": { + "awsPcaAuthorityArn": "*", + "kmsKey": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + } + }, + "logDriver": "*", + "accessLogConfiguration": { + "format": "ServiceConnectAccessLogFormat", + "includeQueryParameters": "boolean" + } + }, + "taskDefinitionRevision": "*", + "volumeConfigurations": "*", + "deploymentStrategy": "DeploymentStrategy", + "bakeTime": "*", + "lifecycleHooks": "*", + "linearConfiguration": { + "stepPercent": "*", + "stepBakeTime": "*" + }, + "canaryConfiguration": { + "stepPercent": "*", + "stepBakeTime": "*" + }, + "forceNewDeployment": { + "enabled": "boolean", + "nonce": "*" + }, + "attachToClassicLB": [ + "*" + ] + }, + "FargateTaskDefinition": { + "cpu": "*", + "memoryLimitMiB": "*", + "ephemeralStorageGiB": "*", + "runtimePlatform": { + "cpuArchitecture": "*", + "operatingSystemFamily": "*" + }, + "pidMode": "PidMode", + "family": "*", + "executionRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "taskRole": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "proxyConfiguration": "*", + "volumes": { + "host": { + "sourcePath": "*" + }, + "name": "*", + "configuredAtLaunch": "boolean", + "dockerVolumeConfiguration": { + "autoprovision": "boolean", + "driver": "*", + "driverOpts": "*", + "labels": "*", + "scope": "Scope" + }, + "efsVolumeConfiguration": { + "fileSystemId": "*", + "rootDirectory": "*", + "transitEncryption": "*", + "transitEncryptionPort": "*", + "authorizationConfig": { + "accessPointId": "*", + "iam": "*" + } + } + }, + "enableFaultInjection": "boolean" + } + }, + "aws-elasticloadbalancingv2.lib": { + "ApplicationListener": { + "loadBalancer": { + "loadBalancerArn": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "ipAddressType": "IpAddressType", + "listeners": "*", + "metrics": "*", + "loadBalancerCanonicalHostedZoneId": "*", + "loadBalancerDnsName": "*", + "connections": "*", + "isApplicationLoadBalancer": "boolean" + }, + "protocol": "ApplicationProtocol", + "port": "*", + "certificateArns": "*", + "certificates": { + "certificateArn": "*" + }, + "sslPolicy": "SslPolicy", + "defaultTargetGroups": { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*" + }, + "defaultAction": "*", + "open": "boolean", + "mutualAuthentication": { + "mutualAuthenticationMode": "MutualAuthenticationMode", + "trustStore": "*", + "ignoreClientCertificateExpiry": "boolean", + "advertiseTrustStoreCaNames": "boolean" + }, + "addCertificateArns": [ + "*", + "*" + ], + "addCertificates": [ + "*", + { + "certificateArn": "*" + } + ], + "addAction": [ + "*", + { + "action": "*", + "removeSuffix": "boolean", + "priority": "*", + "conditions": "*", + "hostHeader": "*", + "pathPattern": "*", + "pathPatterns": "*" + } + ], + "addTargetGroups": [ + "*", + { + "targetGroups": { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*" + }, + "priority": "*", + "conditions": "*", + "hostHeader": "*", + "pathPattern": "*", + "pathPatterns": "*" + } + ], + "addTargets": [ + "*", + { + "protocol": "ApplicationProtocol", + "protocolVersion": "ApplicationProtocolVersion", + "port": "*", + "slowStart": "*", + "stickinessCookieName": "*", + "targets": "*", + "targetGroupName": "*", + "healthCheck": { + "enabled": "boolean", + "path": "*", + "port": "*", + "protocol": "Protocol", + "healthyThresholdCount": "*", + "unhealthyThresholdCount": "*", + "healthyGrpcCodes": "*", + "healthyHttpCodes": "*" + }, + "loadBalancingAlgorithmType": "TargetGroupLoadBalancingAlgorithmType", + "enableAnomalyMitigation": "boolean", + "priority": "*", + "conditions": "*", + "hostHeader": "*", + "pathPattern": "*", + "pathPatterns": "*" + } + ], + "addFixedResponse": [ + "*", + { + "priority": "*", + "conditions": "*", + "hostHeader": "*", + "pathPattern": "*", + "pathPatterns": "*", + "statusCode": "*", + "contentType": "ContentType", + "messageBody": "*" + } + ], + "addRedirectResponse": [ + "*", + { + "priority": "*", + "conditions": "*", + "hostHeader": "*", + "pathPattern": "*", + "pathPatterns": "*", + "host": "*", + "path": "*", + "port": "*", + "protocol": "*", + "query": "*", + "statusCode": "*" + } + ], + "registerConnectable": [ + { + "connections": "*" + }, + "*" + ] + }, + "ImportedApplicationListener": { + "listenerArn": "*", + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "defaultPort": "*", + "securityGroupAllowsAllOutbound": "boolean" + }, + "LookedUpApplicationListener": { + "listenerArn": "*", + "listenerPort": "*", + "securityGroupIds": "*" + }, + "ApplicationLoadBalancer": { + "securityGroup": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "ipAddressType": "IpAddressType", + "http2Enabled": "boolean", + "idleTimeout": "*", + "dropInvalidHeaderFields": "boolean", + "desyncMitigationMode": "DesyncMitigationMode", + "clientKeepAlive": "*", + "preserveHostHeader": "boolean", + "xAmznTlsVersionAndCipherSuiteHeaders": "boolean", + "preserveXffClientPort": "boolean", + "xffHeaderProcessingMode": "XffHeaderProcessingMode", + "wafFailOpen": "boolean", + "loadBalancerName": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "internetFacing": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "deletionProtection": "boolean", + "crossZoneEnabled": "boolean", + "denyAllIgwTraffic": "boolean", + "minimumCapacityUnit": "*", + "addListener": [ + "*", + { + "protocol": "ApplicationProtocol", + "port": "*", + "certificateArns": "*", + "certificates": { + "certificateArn": "*" + }, + "sslPolicy": "SslPolicy", + "defaultTargetGroups": { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*" + }, + "defaultAction": "*", + "open": "boolean", + "mutualAuthentication": { + "mutualAuthenticationMode": "MutualAuthenticationMode", + "trustStore": "*", + "ignoreClientCertificateExpiry": "boolean", + "advertiseTrustStoreCaNames": "boolean" + } + } + ], + "addRedirect": [ + { + "sourceProtocol": "ApplicationProtocol", + "sourcePort": "*", + "targetProtocol": "ApplicationProtocol", + "targetPort": "*", + "open": "boolean" + } + ], + "logAccessLogs": [ + { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "*" + ], + "logConnectionLogs": [ + { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "*" + ], + "addSecurityGroup": [ + { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + ], + "metric": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricActiveConnectionCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricClientTlsNegotiationErrorCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricConsumedLCUs": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricHttpFixedResponseCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricHttpRedirectCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricHttpRedirectUrlLimitExceededCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricHttpCodeElb": [ + "HttpCodeElb", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricHttpCodeTarget": [ + "HttpCodeTarget", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricIpv6ProcessedBytes": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricIpv6RequestCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricNewConnectionCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricProcessedBytes": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricRejectedConnectionCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricRequestCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricRuleEvaluations": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricTargetConnectionErrorCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricTargetResponseTime": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricTargetTLSNegotiationErrorCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricElbAuthError": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricElbAuthFailure": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricElbAuthLatency": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricElbAuthSuccess": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ] + }, + "ImportedApplicationLoadBalancer": { + "loadBalancerArn": "*", + "securityGroupId": "*", + "loadBalancerCanonicalHostedZoneId": "*", + "loadBalancerDnsName": "*", + "securityGroupAllowsAllOutbound": "boolean", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "addListener": [ + "*", + { + "protocol": "ApplicationProtocol", + "port": "*", + "certificateArns": "*", + "certificates": { + "certificateArn": "*" + }, + "sslPolicy": "SslPolicy", + "defaultTargetGroups": { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*" + }, + "defaultAction": "*", + "open": "boolean", + "mutualAuthentication": { + "mutualAuthenticationMode": "MutualAuthenticationMode", + "trustStore": "*", + "ignoreClientCertificateExpiry": "boolean", + "advertiseTrustStoreCaNames": "boolean" + } + } + ] + }, + "LookedUpApplicationLoadBalancer": { + "loadBalancerArn": "*", + "loadBalancerCanonicalHostedZoneId": "*", + "loadBalancerDnsName": "*", + "ipAddressType": "LoadBalancerIpAddressType", + "securityGroupIds": "*", + "vpcId": "*", + "addListener": [ + "*", + { + "protocol": "ApplicationProtocol", + "port": "*", + "certificateArns": "*", + "certificates": { + "certificateArn": "*" + }, + "sslPolicy": "SslPolicy", + "defaultTargetGroups": { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*" + }, + "defaultAction": "*", + "open": "boolean", + "mutualAuthentication": { + "mutualAuthenticationMode": "MutualAuthenticationMode", + "trustStore": "*", + "ignoreClientCertificateExpiry": "boolean", + "advertiseTrustStoreCaNames": "boolean" + } + } + ] + }, + "TrustStoreRevocation": { + "trustStore": "*", + "revocationContents": { + "revocationType": "RevocationType", + "bucket": "*", + "key": "*", + "version": "*" + } + }, + "TrustStore": { + "trustStoreName": "*", + "bucket": "*", + "key": "*", + "version": "*" + }, + "NetworkListener": { + "loadBalancer": { + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "metrics": "*", + "securityGroups": "*", + "ipAddressType": "IpAddressType", + "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*", + "loadBalancerCanonicalHostedZoneId": "*", + "loadBalancerDnsName": "*", + "loadBalancerArn": "*", + "connections": "*" + }, + "port": "*", + "defaultTargetGroups": { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*", + "isNetworkTargetGroup": "boolean" + }, + "defaultAction": "*", + "protocol": "Protocol", + "certificates": { + "certificateArn": "*" + }, + "sslPolicy": "SslPolicy", + "alpnPolicy": "AlpnPolicy", + "tcpIdleTimeout": "*", + "addCertificates": [ + "*", + { + "certificateArn": "*" + } + ], + "addTargetGroups": [ + "*", + { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*", + "isNetworkTargetGroup": "boolean" + } + ], + "addAction": [ + "*", + { + "action": "*" + } + ], + "addTargets": [ + "*", + { + "port": "*", + "protocol": "Protocol", + "targets": "*", + "targetGroupName": "*", + "deregistrationDelay": "*", + "proxyProtocolV2": "boolean", + "preserveClientIp": "boolean", + "healthCheck": { + "enabled": "boolean", + "path": "*", + "port": "*", + "protocol": "Protocol", + "healthyThresholdCount": "*", + "unhealthyThresholdCount": "*", + "healthyGrpcCodes": "*", + "healthyHttpCodes": "*" + } + } + ] + }, + "NetworkLoadBalancer": { + "securityGroups": { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + }, + "ipAddressType": "IpAddressType", + "clientRoutingPolicy": "ClientRoutingPolicy", + "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "boolean", + "zonalShift": "boolean", + "enablePrefixForIpv6SourceNat": "boolean", + "subnetMappings": { + "subnet": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "allocationId": "*", + "ipv6Address": "*", + "privateIpv4Address": "*", + "sourceNatIpv6Prefix": "*" + }, + "disableSecurityGroups": "boolean", + "loadBalancerName": "*", + "vpc": { + "vpcId": "*", + "vpcArn": "*", + "vpcCidrBlock": "*", + "publicSubnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "availabilityZones": "*", + "vpnGatewayId": "*" + }, + "internetFacing": "boolean", + "vpcSubnets": { + "subnetType": "SubnetType", + "availabilityZones": "*", + "subnetGroupName": "*", + "subnetName": "*", + "onePerAz": "boolean", + "subnetFilters": "*", + "subnets": { + "availabilityZone": "*", + "subnetId": "*", + "internetConnectivityEstablished": "*", + "ipv4CidrBlock": "*", + "routeTable": { + "routeTableId": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + } + }, + "deletionProtection": "boolean", + "crossZoneEnabled": "boolean", + "denyAllIgwTraffic": "boolean", + "minimumCapacityUnit": "*", + "addListener": [ + "*", + { + "port": "*", + "defaultTargetGroups": { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*", + "isNetworkTargetGroup": "boolean" + }, + "defaultAction": "*", + "protocol": "Protocol", + "certificates": { + "certificateArn": "*" + }, + "sslPolicy": "SslPolicy", + "alpnPolicy": "AlpnPolicy", + "tcpIdleTimeout": "*" + } + ], + "addSecurityGroup": [ + { + "securityGroupId": "*", + "allowAllOutbound": "boolean", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + }, + "canInlineRule": "boolean", + "uniqueId": "*", + "connections": "*" + } + ], + "metric": [ + "*", + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricActiveFlowCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricConsumedLCUs": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricHealthyHostCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricUnHealthyHostCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricNewFlowCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricProcessedBytes": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricTcpClientResetCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricTcpElbResetCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ], + "metricTcpTargetResetCount": [ + { + "period": "*", + "statistic": "*", + "dimensions": "*", + "dimensionsMap": "*", + "unit": "Unit", + "label": "*", + "color": "*", + "id": "*", + "visible": "boolean", + "account": "*", + "region": "*", + "stackAccount": "*", + "stackRegion": "*" + } + ] + }, + "LookedUpNetworkLoadBalancer": { + "loadBalancerArn": "*", + "loadBalancerCanonicalHostedZoneId": "*", + "loadBalancerDnsName": "*", + "ipAddressType": "LoadBalancerIpAddressType", + "securityGroupIds": "*", + "vpcId": "*", + "addListener": [ + "*", + { + "port": "*", + "defaultTargetGroups": { + "metrics": "*", + "targetGroupName": "*", + "targetGroupArn": "*", + "loadBalancerArns": "*", + "loadBalancerAttached": "*", + "node": "*", + "isNetworkTargetGroup": "boolean" + }, + "defaultAction": "*", + "protocol": "Protocol", + "certificates": { + "certificateArn": "*" + }, + "sslPolicy": "SslPolicy", + "alpnPolicy": "AlpnPolicy", + "tcpIdleTimeout": "*" + } + ] + } + }, + "aws-glue.lib": { + "PySparkEtlJob": { + "notifyDelayAfter": "*", + "extraPythonFiles": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "jobRunQueuingEnabled": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "PySparkFlexEtlJob": { + "notifyDelayAfter": "*", + "extraPythonFiles": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "PySparkStreamingJob": { + "extraPythonFiles": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "jobRunQueuingEnabled": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "PythonShellJob": { + "pythonVersion": "PythonVersion", + "maxCapacity": "MaxCapacity", + "librarySet": "LibrarySet", + "extraPythonFiles": "*", + "jobRunQueuingEnabled": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "ScalaSparkEtlJob": { + "className": "*", + "notifyDelayAfter": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "jobRunQueuingEnabled": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "ScalaSparkFlexEtlJob": { + "notifyDelayAfter": "*", + "className": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "ScalaSparkStreamingJob": { + "className": "*", + "extraFiles": "*", + "extraJars": "*", + "extraJarsFirst": "boolean", + "jobRunQueuingEnabled": "boolean", + "workerConfiguration": { + "workerType": "WorkerType", + "numberOfWorkers": "*" + }, + "sparkUI": { + "bucket": { + "bucketArn": "*", + "bucketName": "*", + "bucketWebsiteUrl": "*", + "bucketWebsiteDomainName": "*", + "bucketDomainName": "*", + "bucketDualStackDomainName": "*", + "bucketRegionalDomainName": "*", + "isWebsite": "boolean", + "encryptionKey": { + "keyArn": "*", + "keyId": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "policy": "*", + "replicationRoleArn": "*" + }, + "prefix": "*" + }, + "enableMetrics": "boolean", + "enableObservabilityMetrics": "boolean", + "script": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "jobName": "*", + "description": "*", + "maxConcurrentRuns": "*", + "defaultArguments": "*", + "connections": { + "connectionName": "*", + "connectionArn": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "maxRetries": "*", + "timeout": "*", + "securityConfiguration": { + "securityConfigurationName": "*", + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "tags": "*", + "glueVersion": "GlueVersion", + "continuousLogging": { + "enabled": "boolean", + "logGroup": { + "logGroupArn": "*", + "logGroupName": "*", + "env": { + "account": "*", + "region": "*" + }, + "stack": "*", + "node": "*" + }, + "logStreamPrefix": "*", + "quiet": "boolean", + "conversionPattern": "*" + } + }, + "Workflow": {} + }, + "aws-iam.lib": { + "ImmutableRole": { + "roleArn": "*", + "roleName": "*", + "grant": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "*" + ], + "grantPassRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ], + "grantAssumeRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ], + "attachInlinePolicy": [ + "*" + ], + "addManagedPolicy": [ + { + "managedPolicyArn": "*" + } + ], + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "addToPolicy": [ + "*" + ], + "addToPrincipalPolicy": [ + "*" + ], + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "stack": "*", + "applyRemovalPolicy": "*", + "node": "*", + "with": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "ImportedRole": { + "roleArn": "*", + "roleName": "*", + "account": "*", + "mutable": "boolean", + "addGrantsToResources": "boolean", + "defaultPolicyName": "*", + "addToPolicy": [ + "*" + ], + "addToPrincipalPolicy": [ + "*" + ], + "attachInlinePolicy": [ + "*" + ], + "addManagedPolicy": [ + { + "managedPolicyArn": "*" + } + ], + "grantPassRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ], + "grantAssumeRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ], + "grant": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "*" + ], + "dedupeString": [] + }, + "PrecreatedRole": { + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "assumeRolePolicy": "*", + "missing": "boolean", + "rolePath": "*", + "attachInlinePolicy": [ + "*" + ], + "addManagedPolicy": [ + { + "managedPolicyArn": "*" + } + ], + "addToPolicy": [ + "*" + ], + "addToPrincipalPolicy": [ + "*" + ], + "grant": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "*" + ], + "grantPassRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ], + "grantAssumeRole": [ + { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + ] + } + }, + "pipelines.lib": { + "AssetSingletonRole": { + "assumedBy": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + }, + "externalId": "*", + "externalIds": "*", + "managedPolicies": { + "managedPolicyArn": "*" + }, + "inlinePolicies": "*", + "path": "*", + "permissionsBoundary": { + "managedPolicyArn": "*" + }, + "roleName": "*", + "maxSessionDuration": "*", + "description": "*", + "addToPrincipalPolicy": [ + "*" + ], + "addAssumeRole": [ + "*" + ] + } + }, + "lib.gateway": { + "GatewayTarget": { + "gateway": { + "gatewayArn": "*", + "gatewayId": "*", + "gatewayName": "*", + "role": { + "roleArn": "*", + "roleName": "*", + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*", + "grantPrincipal": { + "assumeRoleAction": "*", + "principalAccount": "*" + }, + "stack": "*", + "node": "*", + "env": { + "account": "*", + "region": "*" + } + }, + "description": "*", + "protocolConfiguration": { + "protocolType": "*" + }, + "authorizerConfiguration": { + "authorizerType": "GatewayAuthorizerType" + }, + "exceptionLevel": "*", + "kmsKey": { + "keyArn": "*", + "keyId": "*" + }, + "gatewayUrl": "*", + "status": "*", + "statusReason": "*", + "createdAt": "*", + "updatedAt": "*" + }, + "targetConfiguration": { + "targetType": "McpTargetType" + }, + "credentialProviderConfigurations": { + "credentialProviderType": "CredentialProviderType" + }, + "gatewayTargetName": "*", + "description": "*", + "grantSync": [ + { + "grantPrincipal": { + "assumeRoleAction": "*", + "policyFragment": "*", + "principalAccount": "*" + } + } + ] + } + }, + "lib.services": { + "ResourcePolicy": {} + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts +var AWS_CDK_ENUMS; +var init_enums = __esm({ + "../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts"() { + "use strict"; + AWS_CDK_ENUMS = { + "AcceleratorManufacturer": [ + "amazon-web-services", + "amd", + "nvidia", + "xilinx", + "habana" + ], + "AcceleratorName": [ + "a100", + "k80", + "m60", + "radeon-pro-v520", + "t4", + "v100", + "vu9p", + "a10g", + "h100", + "inferentia", + "k520", + "t4g", + "l40s", + "l4", + "gaudi-hl-205", + "inferentia2", + "trainium", + "trainium2", + "u30" + ], + "AcceleratorType": [ + "gpu", + "fpga", + "inference", + "media" + ], + "AccessEntryType": [ + "STANDARD", + "FARGATE_LINUX", + "EC2_LINUX", + "EC2_WINDOWS", + "EC2", + "HYBRID_LINUX", + "HYPERPOD_LINUX" + ], + "AccessKeyStatus": [ + "Active", + "Inactive", + "Expired" + ], + "AccessLevel": [ + "READ", + "READ_VERSIONED", + "LIST", + "WRITE", + "DELETE" + ], + "AccessScopeType": [ + "namespace", + "cluster" + ], + "AccountRecovery": [ + 0, + 1, + 2, + 3, + 4, + 5 + ], + "Action": [ + "allow", + "deny" + ], + "ActionAfterCompletion": [ + "NONE", + "DELETE" + ], + "ActionCategory": [ + "Source", + "Build", + "Test", + "Approval", + "Deploy", + "Invoke", + "Compute" + ], + "ActionOnFailure": [ + "TERMINATE_CLUSTER", + "CANCEL_AND_WAIT", + "CONTINUE" + ], + "ActionPoint": [ + "PRE_CREATE_HOSTED_CONFIGURATION_VERSION", + "PRE_START_DEPLOYMENT", + "ON_DEPLOYMENT_START", + "ON_DEPLOYMENT_STEP", + "ON_DEPLOYMENT_BAKING", + "ON_DEPLOYMENT_COMPLETE", + "ON_DEPLOYMENT_ROLLED_BACK", + "AT_DEPLOYMENT_TICK" + ], + "ActionScope": [ + "all", + "specific" + ], + "AdMarkerDash": [ + "BINARY", + "XML" + ], + "AdMarkerHls": [ + "DATERANGE", + "SCTE35_ENHANCED" + ], + "AdditionalHealthCheckType": [ + "ELB", + "EBS", + "VPC_LATTICE" + ], + "AddressFamily": [ + "IPv4", + "IPv6" + ], + "AdjustmentType": [ + "ChangeInCapacity", + "PercentChangeInCapacity", + "ExactCapacity" + ], + "AdotLambdaExecWrapper": [ + "/opt/otel-handler", + "/opt/otel-proxy-handler", + "/opt/otel-stream-handler", + "/opt/otel-instrument", + "/opt/otel-sqs-handler" + ], + "AdotLambdaLayerType": [ + "JAVA_SDK", + "JAVA_AUTO_INSTRUMENTATION", + "JAVASCRIPT_SDK", + "PYTHON_SDK", + "GENERIC" + ], + "AdvancedSecurityMode": [ + "ENFORCED", + "AUDIT", + "OFF" + ], + "AgentCollaboratorType": [ + "SUPERVISOR", + "DISABLED", + "SUPERVISOR_ROUTER" + ], + "AgentCoreRuntime": [ + "PYTHON_3_10", + "PYTHON_3_11", + "PYTHON_3_12", + "PYTHON_3_13", + "PYTHON_3_14", + "NODE_22" + ], + "AgentStepType": [ + "PRE_PROCESSING", + "ORCHESTRATION", + "POST_PROCESSING", + "ROUTING_CLASSIFIER", + "MEMORY_SUMMARIZATION", + "KNOWLEDGE_BASE_RESPONSE_GENERATION" + ], + "AlarmBehavior": [ + "ROLLBACK_ON_ALARM", + "FAIL_ON_ALARM" + ], + "AlarmState": [ + "ALARM", + "OK", + "INSUFFICIENT_DATA" + ], + "AlarmStatusWidgetSortBy": [ + "default", + "stateUpdatedTimestamp", + "timestamp" + ], + "AlbScheme": [ + "internal", + "internet-facing" + ], + "AllocationStrategy": [ + "BEST_FIT", + "BEST_FIT_PROGRESSIVE", + "SPOT_CAPACITY_OPTIMIZED", + "SPOT_PRICE_CAPACITY_OPTIMIZED" + ], + "AllowMapsAction": [ + "geo-maps:GetStaticMap", + "geo-maps:GetTile", + "geo-maps:*" + ], + "AllowPlacesAction": [ + "geo-places:Autocomplete", + "geo-places:Geocode", + "geo-places:GetPlace", + "geo-places:ReverseGeocode", + "geo-places:SearchNearby", + "geo-places:SearchText", + "geo-places:Suggest", + "geo-places:*" + ], + "AllowRoutesAction": [ + "geo-routes:CalculateIsolines", + "geo-routes:CalculateRoutes", + "geo-routes:CalculateRouteMatrix", + "geo-routes:OptimizeWaypoints", + "geo-routes:SnapToRoads", + "geo-routes:*" + ], + "AlpnPolicy": [ + "HTTP1Only", + "HTTP2Only", + "HTTP2Optional", + "HTTP2Preferred", + "None" + ], + "AmazonLinuxCpuType": [ + "arm64", + "x86_64" + ], + "AmazonLinuxEdition": [ + "standard", + "minimal" + ], + "AmazonLinuxGeneration": [ + "amzn", + "amzn2", + "al2022", + "al2023" + ], + "AmazonLinuxKernel": [ + "kernel-5.10", + "kernel-6.1" + ], + "AmazonLinuxStorage": [ + "ebs", + "s3", + "gp2" + ], + "AmazonLinuxVirt": [ + "hvm", + "pv" + ], + "AmiHardwareType": [ + "Standard", + "GPU", + "ARM64", + "Neuron" + ], + "ApiGatewayHttpMethod": [ + "GET", + "POST", + "PUT", + "DELETE", + "PATCH", + "HEAD", + "OPTIONS" + ], + "ApiKeyCredentialLocationType": [ + "HEADER", + "QUERY_PARAMETER" + ], + "ApiKeySourceType": [ + "HEADER", + "AUTHORIZER" + ], + "AppSyncAuthorizationType": [ + "API_KEY", + "AWS_IAM", + "AMAZON_COGNITO_USER_POOLS", + "OPENID_CONNECT", + "AWS_LAMBDA" + ], + "AppSyncDataSourceType": [ + "AWS_LAMBDA", + "AMAZON_DYNAMODB", + "AMAZON_EVENTBRIDGE", + "AMAZON_OPENSEARCH_SERVICE", + "HTTP", + "RELATIONAL_DATABASE", + "AMAZON_BEDROCK_RUNTIME", + "AMAZON_ELASTICSEARCH" + ], + "AppSyncFieldLogLevel": [ + "NONE", + "ERROR", + "INFO", + "DEBUG", + "ALL" + ], + "ApplicationLoadBalancedServiceRecordType": [ + 0, + 1, + 2 + ], + "ApplicationLogLevel": [ + "INFO", + "DEBUG", + "WARN", + "TRACE", + "ERROR", + "FATAL" + ], + "ApplicationProtocol": [ + "HTTP", + "HTTPS" + ], + "ApplicationProtocolVersion": [ + "GRPC", + "HTTP1", + "HTTP2" + ], + "ApproximateCreationDateTimePrecision": [ + "MILLISECOND", + "MICROSECOND" + ], + "ArnFormat": [ + "arn:aws:service:region:account:resource", + "arn:aws:service:region:account:resource:resourceName", + "arn:aws:service:region:account:resource/resourceName", + "arn:aws:service:region:account:/resource/resourceName" + ], + "ArtifactsEncryptionMode": [ + "SSE_S3", + "SSE_KMS" + ], + "AssembleWith": [ + "None", + "Line" + ], + "AssertionType": [ + "equals", + "objectLike", + "arrayWith" + ], + "AssetHashType": [ + "source", + "bundle", + "output", + "custom" + ], + "AssetType": [ + "file", + "docker-image" + ], + "AttachmentTargetType": [ + "AWS::RDS::DBInstance", + "deprecated_AWS::RDS::DBInstance", + "AWS::RDS::DBCluster", + "deprecated_AWS::RDS::DBCluster", + "AWS::RDS::DBProxy", + "AWS::Redshift::Cluster", + "AWS::DocDB::DBInstance", + "AWS::DocDB::DBCluster" + ], + "AttributeType": [ + "B", + "N", + "S" + ], + "AudioCodec": [ + "AACL", + "AACH", + "AC-3", + "EC-3" + ], + "AudioCodecType": [ + "AAC", + "AC3", + "EAC3", + "EAC3_ATMOS", + "MP2", + "WAV", + "PASSTHROUGH" + ], + "AuditCheck": [ + "AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK", + "CA_CERTIFICATE_EXPIRING_CHECK", + "CA_CERTIFICATE_KEY_QUALITY_CHECK", + "CONFLICTING_CLIENT_IDS_CHECK", + "DEVICE_CERTIFICATE_EXPIRING_CHECK", + "DEVICE_CERTIFICATE_KEY_QUALITY_CHECK", + "DEVICE_CERTIFICATE_SHARED_CHECK", + "IOT_POLICY_OVERLY_PERMISSIVE_CHECK", + "IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK", + "IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK", + "LOGGING_DISABLED_CHECK", + "REVOKED_CA_CERTIFICATE_STILL_ACTIVE_CHECK", + "REVOKED_DEVICE_CERTIFICATE_STILL_ACTIVE_CHECK", + "UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK" + ], + "AuroraCapacityUnit": [ + 1, + 2, + 4, + 8, + 16, + 32, + 64, + 128, + 192, + 256, + 384 + ], + "AuthType": [ + "NO_AUTH", + "IAM_ROLE", + "RESOURCE_POLICY" + ], + "AuthenticationMethod": [ + "SASL_SCRAM_512_AUTH", + "SASL_SCRAM_256_AUTH", + "BASIC_AUTH", + "CLIENT_CERTIFICATE_TLS_AUTH" + ], + "AuthenticationMode": [ + "CONFIG_MAP", + "API_AND_CONFIG_MAP", + "API" + ], + "AuthorizationType": [ + "API_KEY", + "BASIC", + "OAUTH_CLIENT_CREDENTIALS" + ], + "AuthorizerPayloadVersion": [ + "1.0", + "2.0" + ], + "AutoRollbackEvent": [ + "DEPLOYMENT_FAILURE", + "DEPLOYMENT_STOP_ON_ALARM", + "DEPLOYMENT_STOP_ON_REQUEST" + ], + "AutoValidationThreshold": [ + "MEDIUM", + "HIGH", + "MANAGED" + ], + "AvailabilityZoneRebalancing": [ + "ENABLED", + "DISABLED" + ], + "AwsLogDriverMode": [ + "blocking", + "non-blocking" + ], + "AwsServiceName": [ + "ec2" + ], + "BackoffFunction": [ + "ARITHMETIC", + "EXPONENTIAL", + "GEOMETRIC", + "LINEAR" + ], + "BackupMode": [ + 0, + 1 + ], + "BackupVaultEvents": [ + "BACKUP_JOB_STARTED", + "BACKUP_JOB_COMPLETED", + "BACKUP_JOB_SUCCESSFUL", + "BACKUP_JOB_FAILED", + "BACKUP_JOB_EXPIRED", + "RESTORE_JOB_STARTED", + "RESTORE_JOB_COMPLETED", + "RESTORE_JOB_SUCCESSFUL", + "RESTORE_JOB_FAILED", + "COPY_JOB_STARTED", + "COPY_JOB_SUCCESSFUL", + "COPY_JOB_FAILED", + "RECOVERY_POINT_MODIFIED", + "BACKUP_PLAN_CREATED", + "BACKUP_PLAN_MODIFIED", + "S3_BACKUP_OBJECT_FAILED", + "S3_RESTORE_OBJECT_FAILED" + ], + "BalancingStrategy": [ + "SPOT_ONLY", + "SPOT_PREFERRED", + "ON_DEMAND_ONLY" + ], + "BareMetal": [ + "included", + "required", + "excluded" + ], + "BatchStrategy": [ + "MultiRecord", + "SingleRecord" + ], + "BillingMode": [ + "PAY_PER_REQUEST", + "PROVISIONED" + ], + "BinPackResource": [ + "CPU", + "MEMORY" + ], + "BitrateFilterKey": [ + "audio_bitrate", + "video_bitrate" + ], + "BottlerocketEcsVariant": [ + "aws-ecs-1", + "aws-ecs-1-nvidia", + "aws-ecs-2", + "aws-ecs-2-nvidia" + ], + "BrokerType": [ + "STANDARD", + "EXPRESS" + ], + "BrowserSigning": [ + "ENABLED", + "DISABLED" + ], + "BrowserType": [ + "CHROME", + "FIREFOX" + ], + "BucketAccessControl": [ + "Private", + "PublicRead", + "PublicReadWrite", + "AuthenticatedRead", + "LogDeliveryWrite", + "BucketOwnerRead", + "BucketOwnerFullControl", + "AwsExecRead" + ], + "BucketEncryption": [ + "UNENCRYPTED", + "KMS_MANAGED", + "S3_MANAGED", + "KMS", + "DSSE_MANAGED", + "DSSE" + ], + "BucketNamespace": [ + "global", + "account-regional" + ], + "BucketNotificationDestinationType": [ + 0, + 1, + 2 + ], + "BuildComputeType": [ + "STANDARD_8GB", + "LARGE_16GB", + "XLARGE_72GB" + ], + "BuildEnvironmentVariableType": [ + "PLAINTEXT", + "PARAMETER_STORE", + "SECRETS_MANAGER" + ], + "BundlingFileAccess": [ + "VOLUME_COPY", + "BIND_MOUNT" + ], + "BundlingOutput": [ + "archived", + "not-archived", + "auto-discover", + "single-file" + ], + "BurstablePerformance": [ + "included", + "required", + "excluded" + ], + "CaaTag": [ + "issue", + "issuewild", + "iodef" + ], + "CacheConfigType": [ + "AMPLIFY_MANAGED", + "AMPLIFY_MANAGED_NO_COOKIES" + ], + "Capability": [ + "ALL", + "AUDIT_CONTROL", + "AUDIT_WRITE", + "BLOCK_SUSPEND", + "CHOWN", + "DAC_OVERRIDE", + "DAC_READ_SEARCH", + "FOWNER", + "FSETID", + "IPC_LOCK", + "IPC_OWNER", + "KILL", + "LEASE", + "LINUX_IMMUTABLE", + "MAC_ADMIN", + "MAC_OVERRIDE", + "MKNOD", + "NET_ADMIN", + "NET_BIND_SERVICE", + "NET_BROADCAST", + "NET_RAW", + "SETFCAP", + "SETGID", + "SETPCAP", + "SETUID", + "SYS_ADMIN", + "SYS_BOOT", + "SYS_CHROOT", + "SYS_MODULE", + "SYS_NICE", + "SYS_PACCT", + "SYS_PTRACE", + "SYS_RAWIO", + "SYS_RESOURCE", + "SYS_TIME", + "SYS_TTY_CONFIG", + "SYSLOG", + "WAKE_ALARM" + ], + "CapacityDistributionStrategy": [ + "balanced-only", + "balanced-best-effort" + ], + "CapacityMode": [ + "FIXED", + "AUTOSCALED" + ], + "CapacityOptionType": [ + "ON_DEMAND", + "SPOT" + ], + "CapacityType": [ + "SPOT", + "ON_DEMAND", + "CAPACITY_BLOCK" + ], + "CatalogEncryptionMode": [ + "DISABLED", + "SSE-KMS", + "SSE-KMS-WITH-SERVICE-ROLE" + ], + "CfnCapabilities": [ + "", + "CAPABILITY_IAM", + "CAPABILITY_NAMED_IAM", + "CAPABILITY_AUTO_EXPAND" + ], + "CfnDeletionPolicy": [ + "Delete", + "Retain", + "RetainExceptOnCreate", + "Snapshot" + ], + "CfnDynamicReferenceService": [ + "ssm", + "ssm-secure", + "secretsmanager" + ], + "CfnParsingContext": [ + 0, + 1 + ], + "CfnTrafficRoutingType": [ + "AllAtOnce", + "TimeBasedCanary", + "TimeBasedLinear" + ], + "CfnUtilsResourceType": [ + "Custom::AWSCDKCfnJson", + "Custom::AWSCDKCfnJsonStringify" + ], + "ChannelType": [ + "STANDARD", + "BASIC", + "ADVANCED_SD", + "ADVANCED_HD" + ], + "Charset": [ + "ascii", + "utf8" + ], + "ChatMessageRole": [ + "user", + "assistant" + ], + "Cleanup": [ + "nothing", + "lambda" + ], + "ClientAction": [ + "elasticfilesystem:ClientMount", + "elasticfilesystem:ClientWrite", + "elasticfilesystem:ClientRootAccess" + ], + "ClientAffinity": [ + "NONE", + "SOURCE_IP" + ], + "ClientBrokerEncryption": [ + "TLS", + "TLS_PLAINTEXT", + "PLAINTEXT" + ], + "ClientPasswordAuthType": [ + "MYSQL_NATIVE_PASSWORD", + "POSTGRES_SCRAM_SHA_256", + "POSTGRES_MD5", + "SQL_SERVER_AUTHENTICATION", + "MYSQL_CACHING_SHA2_PASSWORD" + ], + "ClientRoutingPolicy": [ + "availability_zone_affinity", + "partial_availability_zone_affinity", + "any_availability_zone" + ], + "ClientVpnSessionTimeout": [ + 8, + 10, + 12, + 24 + ], + "CloudFormationCapabilities": [ + "", + "CAPABILITY_IAM", + "CAPABILITY_NAMED_IAM", + "CAPABILITY_AUTO_EXPAND" + ], + "CloudFrontAllowedCachedMethods": [ + "GH", + "GHO" + ], + "CloudFrontAllowedMethods": [ + "GH", + "GHO", + "ALL" + ], + "CloudWatchDimensionSource": [ + "emailHeader", + "linkTag", + "messageTag" + ], + "ClusterLoggingTypes": [ + "api", + "audit", + "authenticator", + "controllerManager", + "scheduler" + ], + "ClusterMonitoringLevel": [ + "DEFAULT", + "PER_BROKER", + "PER_TOPIC_PER_BROKER", + "PER_TOPIC_PER_PARTITION" + ], + "ClusterScailabilityType": [ + "standard", + "limitless" + ], + "ClusterScalabilityType": [ + "standard", + "limitless" + ], + "ClusterType": [ + "single-node", + "multi-node" + ], + "CmafDrmSystem": [ + "FAIRPLAY", + "PLAYREADY", + "WIDEVINE", + "IRDETO" + ], + "CmafEncryptionMethod": [ + "CENC", + "CBCS" + ], + "CodeBuildActionType": [ + 0, + 1 + ], + "CodeBuildProjectType": [ + "SYNTH", + "ASSETS", + "SELF_MUTATE", + "STEP" + ], + "CodeCommitTrigger": [ + "None", + "Poll", + "Events" + ], + "ColumnCountMismatchHandlingAction": [ + "DISABLED", + "FAIL", + "SET_TO_NULL", + "DROP_ROW" + ], + "ColumnEncoding": [ + "AUTO", + "RAW", + "AZ64", + "BYTEDICT", + "DELTA", + "DELTA32K", + "LZO", + "MOSTLY8", + "MOSTLY16", + "MOSTLY32", + "RUNLENGTH", + "TEXT255", + "TEXT32K", + "ZSTD" + ], + "ComparisonOperator": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ], + "Compatibility": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ], + "ComponentAction": [ + "AppendFile", + "Assert", + "CopyFile", + "CopyFolder", + "CreateFile", + "CreateFolder", + "CreateSymlink", + "DeleteFile", + "DeleteFolder", + "ExecuteBash", + "ExecuteBinary", + "ExecuteDocument", + "ExecutePowerShell", + "InstallMSI", + "ListFiles", + "MoveFile", + "MoveFolder", + "ReadFile", + "Reboot", + "SetFileEncoding", + "SetFileOwner", + "SetFolderOwner", + "SetFilePermissions", + "SetFolderPermissions", + "SetRegistry", + "S3Download", + "S3Upload", + "UninstallMSI", + "UpdateOS", + "WebDownload" + ], + "ComponentOnFailure": [ + "Abort", + "Continue", + "Ignore" + ], + "ComponentParameterType": [ + "string" + ], + "ComponentPhaseName": [ + "build", + "container-host-test", + "test", + "validate" + ], + "ComponentSchemaVersion": [ + "1.0" + ], + "ComponentType": [ + "Function", + "SingletonFunction", + "CustomResourceProvider", + "NoOp" + ], + "CompoundOperator": [ + 0, + 1 + ], + "CompressionType": [ + "None", + "Gzip" + ], + "ComputePlatform": [ + "AWSLambda", + "Default" + ], + "ComputeType": [ + "BUILD_GENERAL1_SMALL", + "BUILD_GENERAL1_MEDIUM", + "BUILD_GENERAL1_LARGE", + "BUILD_GENERAL1_XLARGE", + "BUILD_GENERAL1_2XLARGE", + "BUILD_LAMBDA_1GB", + "BUILD_LAMBDA_2GB", + "BUILD_LAMBDA_4GB", + "BUILD_LAMBDA_8GB", + "BUILD_LAMBDA_10GB", + "ATTRIBUTE_BASED_COMPUTE", + "CUSTOM_INSTANCE_TYPE" + ], + "ConditionLogicalOperator": [ + "EQUALS" + ], + "ConfigurationSetTlsPolicy": [ + "REQUIRE", + "OPTIONAL" + ], + "ConfigurationSourceType": [ + "S3", + "SECRETS_MANAGER", + "SSM_PARAMETER", + "SSM_DOCUMENT", + "CODE_PIPELINE" + ], + "ConfigurationType": [ + "AWS.Freeform", + "AWS.AppConfig.FeatureFlags" + ], + "ConnectionProtocol": [ + "TCP", + "UDP" + ], + "ConnectionType": [ + "INTERNET", + "VPC_LINK" + ], + "ConsumableResourceType": [ + "REPLENISHABLE", + "NON_REPLENISHABLE" + ], + "ContainerDependencyCondition": [ + "START", + "COMPLETE", + "SUCCESS", + "HEALTHY" + ], + "ContainerFormat": [ + "TS", + "FRAGMENTED_MP4" + ], + "ContainerInsights": [ + "enabled", + "disabled", + "enhanced" + ], + "ContainerProviderTypes": [ + "EKS" + ], + "ContainerType": [ + "TS", + "CMAF", + "ISM" + ], + "ContentFilterStrength": [ + "NONE", + "LOW", + "MEDIUM", + "HIGH" + ], + "ContentFilterType": [ + "SEXUAL", + "VIOLENCE", + "HATE", + "INSULTS", + "MISCONDUCT", + "PROMPT_ATTACK" + ], + "ContentHandling": [ + "CONVERT_TO_BINARY", + "CONVERT_TO_TEXT" + ], + "ContentType": [ + "text/plain", + "text/css", + "text/html", + "application/javascript", + "application/json" + ], + "ContextualGroundingFilterType": [ + "GROUNDING", + "RELEVANCE" + ], + "Continent": [ + "AF", + "AN", + "AS", + "EU", + "OC", + "NA", + "SA" + ], + "ContributorInsightsMode": [ + "ACCESSED_AND_THROTTLED_KEYS", + "THROTTLED_KEYS" + ], + "ControlPlaneScalingTier": [ + "standard", + "tier-xl", + "tier-2xl", + "tier-4xl", + "tier-8xl" + ], + "CoreDnsComputeType": [ + "ec2", + "fargate" + ], + "CorsHttpMethod": [ + "*", + "DELETE", + "GET", + "HEAD", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "CountType": [ + "imageCountMoreThan", + "sinceImagePushed" + ], + "CpuArch": [ + "arm64", + "x86_64" + ], + "CpuCredits": [ + "standard", + "unlimited" + ], + "CpuManufacturer": [ + "intel", + "amd", + "amazon-web-services", + "apple" + ], + "CrawlerState": [ + "RUNNING", + "CANCELLING", + "CANCELLED", + "SUCCEEDED", + "FAILED", + "ERROR" + ], + "CredentialProviderType": [ + "API_KEY", + "OAUTH", + "GATEWAY_IAM_ROLE" + ], + "CrossRegionInferenceProfileRegion": [ + "global", + "eu", + "us", + "us-gov", + "apac", + "jp", + "au" + ], + "CsvDelimiter": [ + "COMMA", + "PIPE", + "SEMICOLON", + "SPACE", + "TAB" + ], + "CsvHeaderLocation": [ + "FIRST_ROW", + "GIVEN" + ], + "CustomClaimOperator": [ + "EQUALS", + "CONTAINS", + "CONTAINS_ANY" + ], + "CustomClaimValueType": [ + "STRING", + "STRING_ARRAY" + ], + "CustomControl": [ + "RETURN_CONTROL" + ], + "CustomLambdaDeploymentConfigType": [ + "Canary", + "Linear" + ], + "CustomLayer": [ + "POI" + ], + "CustomResourceProviderRuntime": [ + "nodejs12.x", + "deprecated_nodejs12.x", + "nodejs14.x", + "nodejs16.x", + "nodejs18.x", + "nodejs20.x", + "nodejs22.x", + "nodejs24.x" + ], + "CustomThreatProtectionMode": [ + "ENFORCED", + "AUDIT" + ], + "CustomizationType": [ + "FINE_TUNING", + "CONTINUED_PRE_TRAINING", + "DISTILLATION" + ], + "DBClusterStorageType": [ + "aurora", + "aurora-iopt1" + ], + "DashManifestCompactness": [ + "STANDARD", + "NONE" + ], + "DashPeriodTriggers": [ + "AVAILS", + "DRM_KEY_ROTATION", + "SOURCE_CHANGES", + "SOURCE_DISRUPTIONS", + "NONE" + ], + "DashUtcTimingMode": [ + "HTTP_HEAD", + "HTTP_ISO", + "HTTP_XSDATE", + "UTC_DIRECT" + ], + "DataConverterType": [ + 0, + 1 + ], + "DataResourceType": [ + "AWS::Lambda::Function", + "AWS::S3::Object" + ], + "DataSource": [ + "Esri", + "Grab", + "Here" + ], + "DataSourceLevelMetricsBehavior": [ + "FULL_REQUEST_DATA_SOURCE_METRICS", + "PER_DATA_SOURCE_METRICS" + ], + "DataSourceMetricsConfig": [ + "ENABLED", + "DISABLED" + ], + "DataStorageUnit": [ + "GB" + ], + "DatabaseInsightsMode": [ + "standard", + "advanced" + ], + "DateIntervalUnit": [ + "YEARS", + "MONTHS", + "WEEKS", + "DAYS", + "HOURS", + "MINUTES", + "SECONDS" + ], + "DateTimeFormat": [ + "yyyy-MM-dd'T'HH:mm:ss'Z'", + "epoch", + "custom" + ], + "DayOfWeek": [ + "SUN", + "MON", + "TUE", + "WED", + "THU", + "FRI", + "SAT", + "UNSET_VALUE" + ], + "DeduplicationScope": [ + "messageGroup", + "queue" + ], + "DefaultAuthScheme": [ + "IAM_AUTH", + "NONE" + ], + "DefaultCapacityType": [ + 0, + 1, + 2 + ], + "DefaultInstanceClass": [ + "default_x86_64", + "default_arm64" + ], + "DefaultInstanceTenancy": [ + "default", + "dedicated", + "host" + ], + "DefaultResult": [ + "CONTINUE", + "ABANDON" + ], + "DeleteOption": [ + "SAFE_DELETE", + "FORCE_DELETE", + "RETAIN" + ], + "DeletionProtection": [ + "none", + "prevent-force-deletion", + "prevent-all-deletion" + ], + "DeletionProtectionCheck": [ + "ACCOUNT_DEFAULT", + "APPLY", + "BYPASS" + ], + "DelimiterCharacter": [ + ",", + " ", + " ", + ";", + "|" + ], + "DependenciesFile": [ + "requirements.txt", + "poetry.lock", + "Pipfile.lock", + "uv.lock", + "" + ], + "DeploymentControllerType": [ + "ECS", + "CODE_DEPLOY", + "EXTERNAL" + ], + "DeploymentLifecycleStage": [ + "RECONCILE_SERVICE", + "PRE_SCALE_UP", + "POST_SCALE_UP", + "TEST_TRAFFIC_SHIFT", + "POST_TEST_TRAFFIC_SHIFT", + "PRODUCTION_TRAFFIC_SHIFT", + "POST_PRODUCTION_TRAFFIC_SHIFT" + ], + "DeploymentStrategy": [ + "ROLLING", + "BLUE_GREEN", + "LINEAR", + "CANARY" + ], + "DesiredState": [ + "RUNNING", + "STOPPED" + ], + "DestinationType": [ + "Failure", + "Success" + ], + "DesyncMitigationMode": [ + "monitor", + "defensive", + "strictest" + ], + "DetailType": [ + "BASIC", + "FULL" + ], + "DevicePermission": [ + "read", + "write", + "mknod" + ], + "DiscoveryType": [ + "API", + "DNS_AND_API" + ], + "Distribution": [ + "ByLogStream", + "Random" + ], + "DnsPolicy": [ + "Default", + "ClusterFirst", + "ClusterFirstWithHostNet" + ], + "DnsRecordType": [ + "A", + "AAAA", + "A, AAAA", + "SRV", + "CNAME" + ], + "DnsResponseType": [ + "LOADBALANCER", + "ENDPOINTS" + ], + "DockerCredentialUsage": [ + "SYNTH", + "SELF_UPDATE", + "ASSET_PUBLISHING" + ], + "DockerServerComputeType": [ + "BUILD_GENERAL1_SMALL", + "BUILD_GENERAL1_MEDIUM", + "BUILD_GENERAL1_LARGE", + "BUILD_GENERAL1_XLARGE", + "BUILD_GENERAL1_2XLARGE", + "ATTRIBUTE_BASED_COMPUTE", + "BUILD_LAMBDA_10GB", + "BUILD_LAMBDA_1GB", + "BUILD_LAMBDA_2GB", + "BUILD_LAMBDA_4GB", + "BUILD_LAMBDA_8GB", + "CUSTOM_INSTANCE_TYPE" + ], + "DockerVolumeConsistency": [ + "consistent", + "delegated", + "cached" + ], + "DriveCacheType": [ + "NONE", + "READ" + ], + "DrmSettingsKey": [ + "exclude_session_keys" + ], + "DrmSignalling": [ + "INDIVIDUAL", + "REFERENCED" + ], + "DynamoConsumedCapacity": [ + "INDEXES", + "TOTAL", + "NONE" + ], + "DynamoDBStartingPosition": [ + "TRIM_HORIZON", + "LATEST" + ], + "DynamoItemCollectionMetrics": [ + "SIZE", + "NONE" + ], + "DynamoMethod": [ + "Get", + "Put", + "Delete", + "Update" + ], + "DynamoReturnValues": [ + "NONE", + "ALL_OLD", + "UPDATED_OLD", + "ALL_NEW", + "UPDATED_NEW" + ], + "EasyDkimSigningKeyLength": [ + "RSA_1024_BIT", + "RSA_2048_BIT" + ], + "EbsDeviceVolumeType": [ + "standard", + "io1", + "io2", + "gp2", + "gp3", + "st1", + "sc1", + "gp2", + "gp3", + "io1", + "io2", + "st1", + "sc1", + "standard" + ], + "EbsPropagatedTagSource": [ + "SERVICE", + "TASK_DEFINITION" + ], + "Ec2InstanceAction": [ + "stop", + "terminate", + "recover", + "reboot" + ], + "Ec2InstanceType": [ + "EC2", + "SSM_MANAGED_NODE" + ], + "EcsMachineImageType": [ + "ECS_AL2", + "ECS_AL2023", + "ECS_AL2_NVIDIA", + "ECS_AL2023_NVIDIA" + ], + "Effect": [ + "Allow", + "Deny" + ], + "EksMachineImageType": [ + "EKS_AL2", + "EKS_AL2_NVIDIA", + "EKS_AL2023", + "EKS_AL2023_NVIDIA" + ], + "EmailEncoding": [ + "Base64", + "UTF-8" + ], + "EmailSendingEvent": [ + "send", + "reject", + "bounce", + "complaint", + "delivery", + "open", + "click", + "renderingFailure", + "deliveryDelay", + "subscription" + ], + "EmptyDirMediumType": [ + "", + "Memory" + ], + "EncodingProfile": [ + "CONTRIBUTION_H264_DEFAULT", + "DISTRIBUTION_H264_DEFAULT" + ], + "EncryptionKeyType": [ + "SECRETS_MANAGER", + "AUTOMATIC" + ], + "EncryptionOption": [ + "SSE_S3", + "SSE_KMS", + "CSE_KMS" + ], + "EndpointAccessMode": [ + "STRICT", + "BASIC" + ], + "EndpointErrorConfiguration": [ + "STALE_MANIFEST", + "INCOMPLETE_MANIFEST", + "MISSING_DRM_KEY", + "SLATE_INPUT" + ], + "EndpointType": [ + "EDGE", + "REGIONAL" + ], + "EngineLifecycleSupport": [ + "open-source-rds-extended-support", + "open-source-rds-extended-support-disabled" + ], + "EntitlementStatus": [ + "ENABLED", + "DISABLED" + ], + "EnvironmentFileType": [ + "s3" + ], + "EnvironmentType": [ + "ARM_CONTAINER", + "LINUX_CONTAINER", + "LINUX_GPU_CONTAINER", + "WINDOWS_SERVER_2019_CONTAINER", + "WINDOWS_SERVER_2022_CONTAINER", + "MAC_ARM", + "LINUX_EC2", + "ARM_EC2", + "WINDOWS_EC2" + ], + "EventAction": [ + "PUSH", + "PULL_REQUEST_CREATED", + "PULL_REQUEST_UPDATED", + "PULL_REQUEST_CLOSED", + "PULL_REQUEST_MERGED", + "PULL_REQUEST_REOPENED", + "RELEASED", + "PRERELEASED", + "WORKFLOW_JOB_QUEUED" + ], + "EventEvaluation": [ + "BATCH", + "SERIAL" + ], + "EventSource": [ + "aws.config" + ], + "EventSourceMappingLogLevel": [ + "INFO", + "DEBUG", + "WARN" + ], + "EventType": [ + "s3:ObjectCreated:*", + "s3:ObjectCreated:Put", + "s3:ObjectCreated:Post", + "s3:ObjectCreated:Copy", + "s3:ObjectCreated:CompleteMultipartUpload", + "s3:ObjectRemoved:*", + "s3:ObjectRemoved:Delete", + "s3:ObjectRemoved:DeleteMarkerCreated", + "s3:ObjectRestore:Post", + "s3:ObjectRestore:Completed", + "s3:ObjectRestore:Delete", + "s3:ReducedRedundancyLostObject", + "s3:Replication:OperationFailedReplication", + "s3:Replication:OperationMissedThreshold", + "s3:Replication:OperationReplicatedAfterThreshold", + "s3:Replication:OperationNotTracked", + "s3:LifecycleExpiration:*", + "s3:LifecycleExpiration:Delete", + "s3:LifecycleExpiration:DeleteMarkerCreated", + "s3:LifecycleTransition", + "s3:IntelligentTiering", + "s3:ObjectTagging:*", + "s3:ObjectTagging:Put", + "s3:ObjectTagging:Delete", + "s3:ObjectAcl:Put", + "s3:ObjectRestore:*", + "s3:Replication:*" + ], + "ExecuteCommandLogging": [ + "NONE", + "DEFAULT", + "OVERRIDE" + ], + "ExecutionClass": [ + "FLEX", + "STANDARD" + ], + "ExecutionMode": [ + "QUEUED", + "SUPERSEDED", + "PARALLEL" + ], + "Failover": [ + "PRIMARY", + "SECONDARY" + ], + "FailoverStatusCode": [ + 403, + 404, + 500, + 502, + 503, + 504 + ], + "FargatePlatformVersion": [ + "LATEST", + "1.4.0", + "1.3.0", + "1.2.0", + "1.1.0", + "1.0.0" + ], + "FeaturePlan": [ + "LITE", + "ESSENTIALS", + "PLUS" + ], + "FieldLogLevel": [ + "NONE", + "ERROR", + "INFO", + "DEBUG", + "ALL" + ], + "FifoThroughputLimit": [ + "perQueue", + "perMessageGroupId" + ], + "FifoThroughputScope": [ + "Topic", + "MessageGroup" + ], + "FileAssetPackaging": [ + "zip", + "file" + ], + "FileSystemType": [ + "ext3", + "ext4", + "xfs", + "ntfs" + ], + "FileSystemTypeVersion": [ + "2.10", + "2.12", + "2.15" + ], + "FilterOrPolicyType": [ + 0, + 1 + ], + "FirehoseRecordSeparator": [ + "\n", + " ", + "\r\n", + "," + ], + "FirelensConfigFileType": [ + "s3", + "file" + ], + "FirelensLogRouterType": [ + "fluentbit", + "fluentd" + ], + "FlagType": [ + 0, + 1, + 2, + 3 + ], + "FleetComputeType": [ + "BUILD_GENERAL1_SMALL", + "BUILD_GENERAL1_MEDIUM", + "BUILD_GENERAL1_LARGE", + "BUILD_GENERAL1_XLARGE", + "BUILD_GENERAL1_2XLARGE", + "ATTRIBUTE_BASED_COMPUTE", + "CUSTOM_INSTANCE_TYPE" + ], + "FleetOverflowBehavior": [ + "QUEUE", + "ON_DEMAND" + ], + "FlowLogDestinationType": [ + "cloud-watch-logs", + "s3", + "kinesis-data-firehose" + ], + "FlowLogFileFormat": [ + "plain-text", + "parquet" + ], + "FlowLogMaxAggregationInterval": [ + 60, + 600 + ], + "FlowLogTrafficType": [ + "ACCEPT", + "ALL", + "REJECT" + ], + "FlowOutputProtocol": [ + "zixi-push", + "rtp-fec", + "rtp", + "zixi-pull", + "rist", + "srt-listener", + "srt-caller", + "ndi-speed-hq" + ], + "FollowMode": [ + "never", + "always", + "external", + "internal-only" + ], + "ForwardErrorCorrection": [ + "ENABLED", + "DISABLED" + ], + "Frequency": [ + "DAILY", + "WEEKLY", + "BIWEEKLY", + "MONTHLY" + ], + "FunctionEventType": [ + "viewer-request", + "viewer-response" + ], + "FunctionRuntimeFamily": [ + "APPSYNC_JS" + ], + "FunctionUrlAuthType": [ + "AWS_IAM", + "NONE" + ], + "GatewayAuthorizerType": [ + "CUSTOM_JWT", + "AWS_IAM", + "NONE" + ], + "GatewayExceptionLevel": [ + "DEBUG" + ], + "GatewayProtocolType": [ + "MCP" + ], + "GatewayTargetProtocolType": [ + "MCP" + ], + "GelfCompressionType": [ + "gzip", + "zlib", + "none" + ], + "GitHubTrigger": [ + "None", + "Poll", + "WebHook" + ], + "GitPullRequestEvent": [ + "OPEN", + "UPDATED", + "CLOSED" + ], + "GlobalTableSettingsReplicationMode": [ + "ENABLED" + ], + "GlueVersion": [ + "0.9", + "1.0", + "2.0", + "3.0", + "4.0", + "5.0", + "5.1", + "6.0" + ], + "GraphWidgetView": [ + "timeSeries", + "bar", + "pie" + ], + "GrowthType": [ + "LINEAR", + "EXPONENTIAL" + ], + "GrpcRetryEvent": [ + "cancelled", + "deadline-exceeded", + "internal", + "resource-exhausted", + "unavailable" + ], + "GuardrailAction": [ + "BLOCK", + "ANONYMIZE", + "NONE" + ], + "HandlerBehavior": [ + "CODE", + "DIRECT" + ], + "HandlerName": [ + "user", + "table", + "user-table-privileges" + ], + "HeadersFrameOption": [ + "DENY", + "SAMEORIGIN" + ], + "HeadersReferrerPolicy": [ + "no-referrer", + "no-referrer-when-downgrade", + "origin", + "origin-when-cross-origin", + "same-origin", + "strict-origin", + "strict-origin-when-cross-origin", + "unsafe-url" + ], + "HealthCheckProtocol": [ + "TCP", + "HTTP", + "HTTPS" + ], + "HealthCheckProtocolType": [ + "HTTP", + "TCP" + ], + "HealthCheckType": [ + "HTTP", + "HTTPS", + "TCP" + ], + "HostKernel": [ + "LINUX_KERNEL_4", + "LINUX_KERNEL_6", + "LINUX_KERNEL_LATEST" + ], + "HttpAuthorizerType": [ + "AWS_IAM", + "JWT", + "REQUEST" + ], + "HttpBackupMode": [ + "FailedDataOnly", + "AllData" + ], + "HttpCodeElb": [ + "HTTPCode_ELB_3XX_Count", + "HTTPCode_ELB_4XX_Count", + "HTTPCode_ELB_5XX_Count", + "HTTPCode_ELB_500_Count", + "HTTPCode_ELB_502_Count", + "HTTPCode_ELB_503_Count", + "HTTPCode_ELB_504_Count" + ], + "HttpCodeTarget": [ + "HTTPCode_Target_2XX_Count", + "HTTPCode_Target_3XX_Count", + "HTTPCode_Target_4XX_Count", + "HTTPCode_Target_5XX_Count" + ], + "HttpCompression": [ + "GZIP", + "NONE" + ], + "HttpConnectionType": [ + "VPC_LINK", + "INTERNET" + ], + "HttpIntegrationSubtype": [ + "EventBridge-PutEvents", + "SQS-SendMessage", + "SQS-ReceiveMessage", + "SQS-DeleteMessage", + "SQS-PurgeQueue", + "AppConfig-GetConfiguration", + "Kinesis-PutRecord", + "StepFunctions-StartExecution", + "StepFunctions-StartSyncExecution", + "StepFunctions-StopExecution" + ], + "HttpIntegrationType": [ + "HTTP_PROXY", + "AWS_PROXY" + ], + "HttpLambdaResponseType": [ + 0, + 1 + ], + "HttpMethod": [ + "GET", + "POST", + "PUT", + "DELETE", + "PATCH", + "HEAD", + "OPTIONS" + ], + "HttpMethods": [ + "GET", + "POST", + "PUT", + "DELETE", + "PATCH", + "HEAD" + ], + "HttpRetryEvent": [ + "server-error", + "gateway-error", + "client-error", + "stream-error" + ], + "HttpRouteAuthorizationType": [ + "AWS_IAM", + "JWT", + "CUSTOM", + "NONE" + ], + "HttpRouteMethod": [ + "GET", + "HEAD", + "POST", + "PUT", + "DELETE", + "CONNECT", + "OPTIONS", + "TRACE", + "PATCH" + ], + "HttpRouteProtocol": [ + "http", + "https" + ], + "HttpTokens": [ + "optional", + "required" + ], + "HttpVersion": [ + "http1.1", + "http2", + "http2and3", + "http3" + ], + "HttpsPolicy": [ + "REQUIRE", + "REQUIRE_OPEN_ONLY", + "OPTIONAL" + ], + "IdentityPoolProviderType": [ + "Facebook", + "Google", + "Amazon", + "Apple", + "Twitter", + "OpenId", + "Saml", + "UserPool", + "Custom" + ], + "IdentityType": [ + "IRSA", + "POD_IDENTITY" + ], + "IgnoreMode": [ + "glob", + "git", + "docker" + ], + "ImageArchitecture": [ + "arm64", + "x86_64" + ], + "ImageId": [ + "amazonlinux-2-x86_64", + "amazonlinux-2023-x86_64", + "ubuntu-18.04-x86_64", + "ubuntu-22.04-x86_64" + ], + "ImagePipelineStatus": [ + "ENABLED", + "DISABLED" + ], + "ImagePullPolicy": [ + "Always", + "IfNotPresent", + "Never" + ], + "ImagePullPrincipalType": [ + "CODEBUILD", + "SERVICE_ROLE" + ], + "ImageRepositoryType": [ + "ECR_PUBLIC", + "ECR" + ], + "ImageType": [ + "AMI", + "DOCKER" + ], + "IncludeDetail": [ + "FULL", + "NONE" + ], + "IncludeExecutionData": [ + "ALL" + ], + "InferenceProfileType": [ + "SYSTEM_DEFINED", + "APPLICATION" + ], + "IngestEndpoint": [ + 1, + 2 + ], + "InitElementType": [ + "PACKAGE", + "GROUP", + "USER", + "SOURCE", + "FILE", + "COMMAND", + "SERVICE" + ], + "InitPlatform": [ + "WINDOWS", + "LINUX" + ], + "InputCompressionType": [ + "GZIP", + "ZSTD", + "NONE" + ], + "InputMode": [ + "Pipe", + "File", + "FastFile" + ], + "InputType": [ + 0, + 1 + ], + "InstanceArchitecture": [ + "arm64", + "x86_64" + ], + "InstanceClass": [ + "standard3", + "m3", + "standard4", + "m4", + "standard5", + "m5", + "standard5-nvme-drive", + "m5d", + "standard5-amd", + "m5a", + "standard5-amd-nvme-drive", + "m5ad", + "standard5-high-performance", + "m5n", + "standard5-nvme-drive-high-performance", + "m5dn", + "standard5-high-compute", + "m5zn", + "memory3", + "r3", + "memory4", + "r4", + "memory5", + "r5", + "memory6-amd", + "r6a", + "memory6-intel", + "r6i", + "memory6-intel-nvme-drive", + "r6id", + "memory6-intel-high-performance", + "r6in", + "memory6-intel-nvme-drive-high-performance", + "r6idn", + "memory5-high-performance", + "r5n", + "memory5-nvme-drive", + "r5d", + "memory5-nvme-drive-high-performance", + "r5dn", + "memory5-amd", + "r5a", + "memory5-amd-nvme-drive", + "r5ad", + "high-memory-3tb-1", + "u-3tb1", + "high-memory-6tb-1", + "u-6tb1", + "high-memory-9tb-1", + "u-9tb1", + "high-memory-12tb-1", + "u-12tb1", + "high-memory-18tb-1", + "u-18tb1", + "high-memory-24tb-1", + "u-24tb1", + "high-memory-6tb-7", + "u7i-6tb", + "high-memory-8tb-7", + "u7i-8tb", + "high-memory-12tb-7", + "u7i-12tb", + "high-memory-high-network-16tb-7", + "u7in-16tb", + "high-memory-high-network-24tb-7", + "u7in-24tb", + "high-memory-high-network-32tb-7", + "u7in-32tb", + "high-memory-high-network-hpe-32tb-7", + "u7inh-32tb", + "memory5-ebs-optimized", + "r5b", + "memory6-graviton", + "r6g", + "memory6-graviton2-nvme-drive", + "r6gd", + "memory7-graviton", + "r7g", + "memory7-graviton3-nvme-drive", + "r7gd", + "memory7-intel-base", + "r7i", + "memory7-intel", + "r7iz", + "memory8-intel-base", + "r8i", + "memory8-intel-flex", + "r8i-flex", + "memory7-amd", + "r7a", + "memory8-amd", + "r8a", + "memory8-graviton", + "r8g", + "memory8-graviton4-nvme-drive", + "r8gd", + "memory8-graviton4-high-network-bandwidth", + "r8gn", + "memory8-graviton4-ebs-optimized", + "r8gb", + "compute3", + "c3", + "compute4", + "c4", + "compute5", + "c5", + "compute5-nvme-drive", + "c5d", + "compute5-amd", + "c5a", + "compute5-amd-nvme-drive", + "c5ad", + "compute5-high-performance", + "c5n", + "compute6-intel", + "c6i", + "compute6-intel-nvme-drive", + "c6id", + "compute6-intel-high-performance", + "c6in", + "compute6-amd", + "c6a", + "compute6-graviton2", + "c6g", + "compute7-graviton3", + "c7g", + "compute8-graviton4", + "c8g", + "compute6-graviton2-nvme-drive", + "c6gd", + "compute7-graviton3-nvme-drive", + "c7gd", + "compute8-graviton4-nvme-drive", + "c8gd", + "compute6-graviton2-high-network-bandwidth", + "c6gn", + "compute7-graviton3-high-network-bandwidth", + "c7gn", + "compute8-graviton4-high-network-bandwidth", + "c8gn", + "compute7-intel", + "c7i", + "compute7-intel-flex", + "c7i-flex", + "compute8-intel", + "c8i", + "compute8-intel-flex", + "c8i-flex", + "compute7-amd", + "c7a", + "compute8-amd", + "c8a", + "storage2", + "d2", + "storage3", + "d3", + "storage3-enhanced-network", + "d3en", + "storage-compute-1", + "h1", + "training-accelerator1", + "trn1", + "training-accelerator1-enhanced-network", + "trn1n", + "training-accelerator2", + "trn2", + "training-accelerator2-ultraserver", + "trn2u", + "io3", + "i3", + "io3-dense-nvme-drive", + "i3en", + "io4_intel", + "i4i", + "storage4_graviton", + "i4g", + "storage4-graviton-network-optimized", + "im4gn", + "storage4-graviton-network-storage-optimized", + "is4gen", + "storage7-intel-storage-optimized", + "i7ie", + "io7_intel", + "i7i", + "storage8-graviton", + "i8g", + "storage8-graviton-storage-optimized", + "i8ge", + "burstable2", + "t2", + "burstable3", + "t3", + "burstable3-amd", + "t3a", + "burstable4-graviton", + "t4g", + "memory-intensive-1", + "x1", + "memory-intensive-1-extended", + "x1e", + "memory-intensive-2-graviton2", + "x2g", + "memory-intensive-2-graviton2-nvme-drive", + "x2gd", + "memory_intensive_2_xt_intel", + "x2iedn", + "memory_intensive_2_intel", + "x2idn", + "memory_intensive_2_xtz_intel", + "x2iezn", + "memory-intensive-8-graviton", + "x8g", + "fpga1", + "f1", + "fpga2", + "f2", + "graphics3-small", + "g3s", + "graphics3", + "g3", + "graphics4-nvme-drive-high-performance", + "g4dn", + "graphics4-amd-nvme-drive", + "g4ad", + "graphics5", + "g5", + "graphics5-graviton2", + "g5g", + "graphics6", + "g6", + "graphics6-efficient", + "g6e", + "graphics7-efficient", + "g7e", + "graphics-ram-6", + "gr6", + "parallel2", + "p2", + "parallel3", + "p3", + "parallel3-nvme-drive-high-performance", + "p3dn", + "parallel4-nvme-drive-extended", + "p4de", + "parallel4", + "p4d", + "parallel5", + "p5", + "parallel5-extended", + "p5e", + "parallel5-extended-network", + "p5en", + "arm1", + "a1", + "standard6-graviton", + "m6g", + "standard6-intel", + "m6i", + "standard6-intel-nvme-drive", + "m6id", + "standard6-intel-high-performance", + "m6in", + "standard6-intel-nvme-drive-high-performance", + "m6idn", + "standard6-amd", + "m6a", + "standard6-graviton2-nvme-drive", + "m6gd", + "standard7-graviton", + "m7g", + "standard8-graviton", + "m8g", + "standard7-graviton3-nvme-drive", + "m7gd", + "standard8-graviton4-nvme-drive", + "m8gd", + "standard8-intel", + "m8i", + "standard8-intel-flex", + "m8i-flex", + "standard7-intel", + "m7i", + "standard7-intel-flex", + "m7i-flex", + "standard7-amd", + "m7a", + "standard8-amd", + "m8a", + "standard9-graviton", + "m9g", + "high-compute-memory1", + "z1d", + "inference1", + "inf1", + "inference2", + "inf2", + "macintosh1-intel", + "mac1", + "macintosh2-m1", + "mac2", + "macintosh2-m2", + "mac2-m2", + "macintosh2-m2-pro", + "mac2-m2pro", + "macintosh2-m1-ultra", + "mac2-m1ultra", + "video-transcoding1", + "vt1", + "high-performance-computing6-amd", + "hpc6a", + "high-performance-computing6-intel-nvme-drive", + "hpc6id", + "high-performance-computing7-amd", + "hpc7a", + "high-performance-computing7-graviton", + "hpc7g", + "deep-learning1", + "dl1", + "deep-learning2-qualcomm", + "dl2q" + ], + "InstanceGeneration": [ + "current", + "previous" + ], + "InstanceInitiatedShutdownBehavior": [ + "stop", + "terminate" + ], + "InstanceMonitoring": [ + "BASIC", + "DETAILED" + ], + "InstanceRefreshStrategy": [ + "Rolling", + "ReplaceRootVolume" + ], + "InstanceSize": [ + "nano", + "micro", + "small", + "medium", + "large", + "xlarge", + "2xlarge", + "3xlarge", + "4xlarge", + "6xlarge", + "8xlarge", + "9xlarge", + "10xlarge", + "12xlarge", + "16xlarge", + "18xlarge", + "24xlarge", + "32xlarge", + "48xlarge", + "56xlarge", + "96xlarge", + "112xlarge", + "224xlarge", + "480xlarge", + "metal", + "metal-16xl", + "metal-24xl", + "metal-32xl", + "metal-48xl" + ], + "InstanceType": [ + "PROVISIONED", + "SERVERLESS_V2" + ], + "InstanceUpdateBehaviour": [ + "BULK", + "ROLLING" + ], + "InsufficientDataHealthStatusEnum": [ + "Healthy", + "Unhealthy", + "LastKnownStatus" + ], + "IntegrationPattern": [ + "REQUEST_RESPONSE", + "RUN_JOB", + "WAIT_FOR_TASK_TOKEN" + ], + "IntegrationType": [ + "AWS", + "AWS_PROXY", + "HTTP", + "HTTP_PROXY", + "MOCK" + ], + "IntendedUse": [ + "SingleUse", + "Storage" + ], + "InterceptionPoint": [ + "REQUEST", + "RESPONSE" + ], + "IntrospectionConfig": [ + "ENABLED", + "DISABLED" + ], + "InvalidCharHandlingAction": [ + "DISABLED", + "FAIL", + "SET_TO_NULL", + "DROP_ROW", + "REPLACE" + ], + "InventoryFormat": [ + "CSV", + "Parquet", + "ORC" + ], + "InventoryFrequency": [ + "Daily", + "Weekly" + ], + "InventoryObjectVersion": [ + "All", + "Current" + ], + "InvocationHttpResponseCode": [ + "Invocation4XXErrors", + "Invocation5XXErrors" + ], + "InvocationType": [ + "RequestResponse", + "Event", + "DryRun" + ], + "InvokeMode": [ + "BUFFERED", + "RESPONSE_STREAM" + ], + "IpAddressType": [ + "ipv4", + "dualstack", + "dualstack-without-public-ipv4" + ], + "IpFamily": [ + "ipv4", + "ipv6" + ], + "IpPreference": [ + "IPv4_ONLY", + "IPv4_PREFERRED", + "IPv6_ONLY", + "IPv6_PREFERRED" + ], + "IpProtocol": [ + "Ipv4_Only", + "Dual_Stack" + ], + "IpamPoolPublicIpSource": [ + "byoip", + "amazon" + ], + "IpamScopeType": [ + "default", + "custom" + ], + "IpcMode": [ + "none", + "host", + "task" + ], + "IsmDrmSystem": [ + "PLAYREADY" + ], + "JenkinsActionType": [ + 0, + 1 + ], + "JitterType": [ + "FULL", + "NONE" + ], + "JobLanguage": [ + "scala", + "python" + ], + "JobState": [ + "SUCCEEDED", + "FAILED", + "TIMEOUT", + "STARTING", + "RUNNING", + "STOPPING", + "STOPPED" + ], + "JobStateTimeLimitActionsAction": [ + "CANCEL", + "TERMINATE" + ], + "JobStateTimeLimitActionsReason": [ + "CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY", + "MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE", + "MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT" + ], + "JobStateTimeLimitActionsState": [ + "RUNNABLE" + ], + "JobType": [ + "glueetl", + "gluestreaming", + "pythonshell" + ], + "JsonMutatorType": [ + 0, + 1, + 2, + 3, + 4, + 5 + ], + "JsonSchemaType": [ + "null", + "boolean", + "object", + "array", + "number", + "integer", + "string" + ], + "JsonSchemaVersion": [ + "http://json-schema.org/draft-04/schema#", + "http://json-schema.org/draft-07/schema#" + ], + "KeyPairFormat": [ + "ppk", + "pem" + ], + "KeyPairType": [ + "rsa", + "ed25519" + ], + "KeySigningKeyStatus": [ + "ACTIVE", + "INACTIVE" + ], + "KeySpec": [ + "SYMMETRIC_DEFAULT", + "RSA_2048", + "RSA_3072", + "RSA_4096", + "ECC_NIST_P256", + "ECC_NIST_P384", + "ECC_NIST_P521", + "ECC_SECG_P256K1", + "HMAC_224", + "HMAC_256", + "HMAC_384", + "HMAC_512", + "SM2", + "ML_DSA_44", + "ML_DSA_65", + "ML_DSA_87", + "ECC_NIST_EDWARDS25519" + ], + "KeyUsage": [ + "ENCRYPT_DECRYPT", + "SIGN_VERIFY", + "GENERATE_VERIFY_MAC", + "KEY_AGREEMENT" + ], + "KeyValueDelimiter": [ + "=", + ":" + ], + "KeyValuePairDelimiter": [ + "&", + ";", + " ", + "\n" + ], + "KinesisStartingPosition": [ + "TRIM_HORIZON", + "LATEST", + "AT_TIMESTAMP" + ], + "LambdaEdgeEventType": [ + "origin-request", + "origin-response", + "viewer-request", + "viewer-response" + ], + "LambdaFunctionInvocationType": [ + "FIRE_AND_FORGET", + "REQUEST_RESPONSE" + ], + "LambdaInvocationType": [ + "RequestResponse", + "Event", + "DryRun" + ], + "LambdaInvokeType": [ + "EVENT", + "REQUEST_RESPONSE" + ], + "LambdaVersion": [ + "V1_0", + "V2_0", + "V3_0" + ], + "LatencyMode": [ + "LOW", + "NORMAL" + ], + "LaunchTemplateHttpTokens": [ + "optional", + "required" + ], + "LaunchType": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "LegendPosition": [ + "bottom", + "right", + "hidden" + ], + "Level": [ + "INFO", + "ERROR", + "TRACE", + "OFF" + ], + "LibrarySet": [ + "analytics", + "none" + ], + "LicenseModel": [ + "license-included", + "bring-your-own-license", + "general-public-license" + ], + "LifecycleLabel": [ + "OnDemand", + "Ec2Spot" + ], + "LifecyclePolicy": [ + "AFTER_1_DAY", + "AFTER_7_DAYS", + "AFTER_14_DAYS", + "AFTER_30_DAYS", + "AFTER_60_DAYS", + "AFTER_90_DAYS", + "AFTER_180_DAYS", + "AFTER_270_DAYS", + "AFTER_365_DAYS" + ], + "LifecyclePolicyActionType": [ + "DELETE", + "DEPRECATE", + "DISABLE" + ], + "LifecyclePolicyResourceType": [ + "AMI_IMAGE", + "CONTAINER_IMAGE" + ], + "LifecyclePolicyStatus": [ + "ENABLED", + "DISABLED" + ], + "LifecycleTransition": [ + "autoscaling:EC2_INSTANCE_LAUNCHING", + "autoscaling:EC2_INSTANCE_TERMINATING" + ], + "LinkedChannelType": [ + "PRIMARY_CHANNEL", + "FOLLOWING_CHANNEL" + ], + "LoadBalancerGeneration": [ + 0, + 1 + ], + "LoadBalancerIpAddressType": [ + "ipv4", + "dualstack", + "dualstack-without-public-ipv4" + ], + "LoadBalancingProtocol": [ + "tcp", + "ssl", + "http", + "https" + ], + "LocalCacheMode": [ + "LOCAL_SOURCE_CACHE", + "LOCAL_DOCKER_LAYER_CACHE", + "LOCAL_CUSTOM_CACHE" + ], + "LocalStorage": [ + "included", + "required", + "excluded" + ], + "LocalStorageType": [ + "hdd", + "ssd" + ], + "LockFile": [ + "package-lock.json", + "yarn.lock", + "bun.lockb", + "bun.lock", + "pnpm-lock.yaml" + ], + "LogDestinationType": [ + "s3", + "cloudwatch" + ], + "LogExport": [ + "connectionlog", + "useractivitylog", + "userlog" + ], + "LogFormat": [ + "Text", + "JSON" + ], + "LogGroupClass": [ + "STANDARD", + "INFREQUENT_ACCESS", + "DELIVERY" + ], + "LogLevel": [ + "OFF", + "ALL", + "ERROR", + "FATAL" + ], + "LogQueryLanguage": [ + "Logs", + "SQL", + "PPL" + ], + "LogQueryVisualizationType": [ + "table", + "line", + "stackedarea", + "bar", + "pie" + ], + "LogType": [ + "None", + "Tail" + ], + "LoggingFormat": [ + "Text", + "JSON" + ], + "LoggingLevel": [ + "ERROR", + "INFO", + "NONE" + ], + "LoggingProtocol": [ + "http/s", + "sqs", + "lambda", + "firehose", + "application" + ], + "LustreAutoImportPolicy": [ + "NONE", + "NEW", + "NEW_CHANGED", + "NEW_CHANGED_DELETED" + ], + "LustreDataCompressionType": [ + "NONE", + "LZ4" + ], + "LustreDeploymentType": [ + "SCRATCH_1", + "SCRATCH_2", + "PERSISTENT_1", + "PERSISTENT_2" + ], + "MCPProtocolVersion": [ + "2025-06-18", + "2025-03-26" + ], + "MachineImageType": [ + 0, + 1 + ], + "MachineType": [ + "GENERAL", + "NVME" + ], + "MailFromBehaviorOnMxFailure": [ + "USE_DEFAULT_VALUE", + "REJECT_MESSAGE" + ], + "MaintenanceDay": [ + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "MaintenanceTrackName": [ + "current", + "trailing" + ], + "ManagedLoginVersion": [ + 1, + 2 + ], + "ManagedWordFilterType": [ + "PROFANITY" + ], + "ManagementEventSources": [ + "kms.amazonaws.com", + "rdsdata.amazonaws.com" + ], + "MaxCapacity": [ + 0.0625, + 1 + ], + "MaximumExecutionFrequency": [ + "One_Hour", + "Three_Hours", + "Six_Hours", + "Twelve_Hours", + "TwentyFour_Hours" + ], + "MaximumResolution": [ + "FULL_HD", + "HD", + "SD" + ], + "McpGatewaySearchType": [ + "SEMANTIC" + ], + "McpTargetType": [ + "OPENAPI_SCHEMA", + "SMITHY_MODEL", + "LAMBDA", + "MCP_SERVER", + "API_GATEWAY" + ], + "MediaLivePipeline": [ + "PIPELINE_0", + "PIPELINE_1" + ], + "MediaStreamType": [ + "video", + "audio", + "ancillary-data" + ], + "MemoryStrategyType": [ + "SUMMARIZATION", + "SEMANTIC", + "USER_PREFERENCE", + "EPISODIC", + "CUSTOM" + ], + "MemoryType": [ + "SESSION_SUMMARY" + ], + "MergeType": [ + "MANUAL_MERGE", + "AUTO_MERGE" + ], + "MeshFilterType": [ + "ALLOW_ALL", + "DROP_ALL" + ], + "MessageAttributeDataType": [ + "String", + "String.Array", + "Number", + "Binary" + ], + "MessageLanguage": [ + "en", + "jp", + "zh" + ], + "MessageType": [ + "ConfigurationItemChangeNotification", + "OversizedConfigurationItemChangeNotification", + "ScheduledNotification", + "ConfigurationSnapshotDeliveryCompleted" + ], + "MetadataType": [ + "aws:cdk:analytics:construct", + "aws:cdk:analytics:method", + "aws:cdk:analytics:featureflag", + "aws:cdk:analytics:mixin" + ], + "MethodLoggingLevel": [ + "OFF", + "ERROR", + "INFO" + ], + "MetricAggregationType": [ + "Average", + "Minimum", + "Maximum" + ], + "MetricType": [ + "EventCount", + "ErrorCount", + "KafkaMetrics" + ], + "MetricsLevel": [ + "APPLICATION", + "TASK", + "OPERATOR", + "PARALLELISM" + ], + "Mfa": [ + "OFF", + "OPTIONAL", + "ON" + ], + "ModalityType": [ + "TEXT", + "IMAGE" + ], + "Mode": [ + "SingleModel", + "MultiModel" + ], + "MonitorType": [ + 0, + 1 + ], + "Monitoring": [ + 0, + 1 + ], + "MqttQualityOfService": [ + 0, + 1 + ], + "MssManifestLayout": [ + "FULL", + "COMPACT" + ], + "MultiRegionConsistency": [ + "EVENTUAL", + "STRONG" + ], + "MutualAuthenticationMode": [ + "off", + "passthrough", + "verify" + ], + "NamespaceType": [ + "HTTP", + "DNS_PRIVATE", + "DNS_PUBLIC" + ], + "NatConnectivityType": [ + "public", + "private" + ], + "NatTrafficDirection": [ + "OUTBOUND_ONLY", + "INBOUND_AND_OUTBOUND", + "NONE" + ], + "NetworkLoadBalancedServiceRecordType": [ + 0, + 1, + 2 + ], + "NetworkMode": [ + "none", + "bridge", + "awsvpc", + "host", + "nat" + ], + "NetworkType": [ + "IPV4", + "DUAL", + "IPV6" + ], + "NodeType": [ + "coordinator" + ], + "NodegroupAmiType": [ + "AL2_x86_64", + "AL2_x86_64_GPU", + "AL2_ARM_64", + "BOTTLEROCKET_ARM_64", + "BOTTLEROCKET_x86_64", + "BOTTLEROCKET_ARM_64_NVIDIA", + "BOTTLEROCKET_x86_64_NVIDIA", + "BOTTLEROCKET_ARM_64_FIPS", + "BOTTLEROCKET_x86_64_FIPS", + "WINDOWS_CORE_2019_x86_64", + "WINDOWS_CORE_2022_x86_64", + "WINDOWS_FULL_2019_x86_64", + "WINDOWS_FULL_2022_x86_64", + "AL2023_x86_64_STANDARD", + "AL2023_x86_64_NEURON", + "AL2023_x86_64_NVIDIA", + "AL2023_ARM_64_NVIDIA", + "AL2023_ARM_64_STANDARD" + ], + "NullOrder": [ + "nulls-first", + "nulls-last" + ], + "NumericFilterKey": [ + "audio_channels", + "audio_sample_rate", + "trickplay_height", + "video_framerate", + "video_height" + ], + "NumericOverflowHandlingAction": [ + "DISABLED", + "FAIL", + "SET_TO_NULL", + "DROP_ROW" + ], + "OAuth2CredentialProviderVendor": [ + "GoogleOauth2", + "GithubOauth2", + "SlackOauth2", + "SalesforceOauth2", + "MicrosoftOauth2", + "CustomOauth2", + "AtlassianOauth2", + "LinkedinOauth2", + "XOauth2", + "OktaOauth2", + "OneLoginOauth2", + "PingOneOauth2", + "FacebookOauth2", + "YandexOauth2", + "RedditOauth2", + "ZoomOauth2", + "TwitchOauth2", + "SpotifyOauth2", + "DropboxOauth2", + "NotionOauth2", + "HubspotOauth2", + "CyberArkOauth2", + "FusionAuthOauth2", + "Auth0Oauth2", + "CognitoOauth2" + ], + "OCSFSourceType": [ + "CloudTrail", + "Route53Resolver", + "VPCFlow", + "EKSAudit", + "AWSWAF" + ], + "OCSFVersion": [ + "V1.1" + ], + "ObjectLockMode": [ + "GOVERNANCE", + "COMPLIANCE" + ], + "ObjectOwnership": [ + "BucketOwnerEnforced", + "BucketOwnerPreferred", + "ObjectWriter" + ], + "OidcAttributeRequestMethod": [ + "GET", + "POST" + ], + "OnDemandAllocationStrategy": [ + "prioritized", + "lowest-price" + ], + "OnPartialBatchItemFailure": [ + "AUTOMATIC_BISECT" + ], + "OpenTableFormat": [ + "ICEBERG" + ], + "OperatingSystem": [ + "AMAZON_LINUX", + "AMAZON_LINUX_2", + "AMAZON_LINUX_2023", + "WINDOWS_2012", + "WINDOWS_2016" + ], + "OperatingSystemType": [ + 0, + 1, + 2 + ], + "Operation": [ + "GetItem", + "BatchGetItem", + "Scan", + "Query", + "GetRecords", + "PutItem", + "DeleteItem", + "UpdateItem", + "BatchWriteItem", + "TransactWriteItems", + "TransactGetItems", + "ExecuteTransaction", + "BatchExecuteStatement", + "ExecuteStatement" + ], + "OperationLevelMetricsConfig": [ + "ENABLED", + "DISABLED" + ], + "Operator": [ + "AND", + "OR", + "NOT" + ], + "OpsItemCategory": [ + "Availability", + "Cost", + "Performance", + "Recovery", + "Security" + ], + "OpsItemSeverity": [ + "1", + "2", + "3", + "4" + ], + "OrcColumnMappingType": [ + "name", + "position" + ], + "OrcFormatVersion": [ + "V0_11", + "V0_12" + ], + "OrchestrationType": [ + "DEFAULT", + "CUSTOM_ORCHESTRATION" + ], + "OriginAccessControlOriginType": [ + "s3", + "lambda", + "mediastore", + "mediapackagev2" + ], + "OriginIpAddressType": [ + "ipv4", + "ipv6", + "dualstack" + ], + "OriginProtocolPolicy": [ + "http-only", + "match-viewer", + "https-only" + ], + "OriginSelectionCriteria": [ + "default", + "media-quality-based" + ], + "OriginSslPolicy": [ + "SSLv3", + "TLSv1", + "TLSv1.1", + "TLSv1.2" + ], + "OutOfInfrequentAccessPolicy": [ + "AFTER_1_ACCESS" + ], + "OutputFormat": [ + "cjs", + "esm" + ], + "OutputLockingMode": [ + "PIPELINE_LOCKING", + "EPOCH_LOCKING" + ], + "OutputType": [ + "JSON", + "JSONL" + ], + "ParameterDataType": [ + "text", + "aws:ec2:image" + ], + "ParameterTier": [ + "Advanced", + "Intelligent-Tiering", + "Standard" + ], + "ParameterType": [ + "string", + "number", + "integer", + "boolean", + "array", + "object" + ], + "ParameterValueType": [ + "String", + "AWS::EC2::AvailabilityZone::Name", + "AWS::EC2::Image::Id", + "AWS::EC2::Instance::Id", + "AWS::EC2::KeyPair::KeyName", + "AWS::EC2::SecurityGroup::GroupName", + "AWS::EC2::SecurityGroup::Id", + "AWS::EC2::Subnet::Id", + "AWS::EC2::Volume::Id", + "AWS::EC2::VPC::Id", + "AWS::Route53::HostedZone::Id" + ], + "ParamsAndSecretsLogLevel": [ + "debug", + "info", + "warn", + "error", + "none" + ], + "ParamsAndSecretsVersions": [ + "1.0.103" + ], + "ParquetWriterVersion": [ + "V1", + "V2" + ], + "ParserProcessorType": [ + 0, + 1, + 2, + 3, + 4 + ], + "Partition": [ + "aws", + "aws-cn", + "aws-us-gov", + "aws-iso", + "aws-iso-b", + "aws-iso-f", + "aws-iso-e", + "aws-eusc" + ], + "PartitionDateSource": [ + "EventTime", + "DeliveryTime" + ], + "PartitionProjectionType": [ + "integer", + "date", + "enum", + "injected" + ], + "PasskeyUserVerification": [ + "preferred", + "required" + ], + "PassthroughBehavior": [ + "WHEN_NO_MATCH", + "NEVER", + "WHEN_NO_TEMPLATES" + ], + "PatchType": [ + "json", + "merge", + "strategic" + ], + "PerformanceInsightRetention": [ + 7, + 31, + 62, + 93, + 124, + 155, + 186, + 217, + 248, + 279, + 310, + 341, + 372, + 403, + 434, + 465, + 496, + 527, + 558, + 589, + 620, + 651, + 682, + 713, + 731 + ], + "PerformanceMode": [ + "generalPurpose", + "maxIO" + ], + "Period": [ + "DAY", + "WEEK", + "MONTH" + ], + "PeriodOverride": [ + "auto", + "inherit" + ], + "PidMode": [ + "host", + "task" + ], + "PipeVariable": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "PipelineNotificationEvents": [ + "codepipeline-pipeline-pipeline-execution-failed", + "codepipeline-pipeline-pipeline-execution-canceled", + "codepipeline-pipeline-pipeline-execution-started", + "codepipeline-pipeline-pipeline-execution-resumed", + "codepipeline-pipeline-pipeline-execution-succeeded", + "codepipeline-pipeline-pipeline-execution-superseded", + "codepipeline-pipeline-stage-execution-started", + "codepipeline-pipeline-stage-execution-succeeded", + "codepipeline-pipeline-stage-execution-resumed", + "codepipeline-pipeline-stage-execution-canceled", + "codepipeline-pipeline-stage-execution-failed", + "codepipeline-pipeline-action-execution-succeeded", + "codepipeline-pipeline-action-execution-failed", + "codepipeline-pipeline-action-execution-canceled", + "codepipeline-pipeline-action-execution-started", + "codepipeline-pipeline-manual-approval-failed", + "codepipeline-pipeline-manual-approval-needed", + "codepipeline-pipeline-manual-approval-succeeded" + ], + "PipelineType": [ + "V1", + "V2" + ], + "PlacementGroupSpreadLevel": [ + "host", + "rack" + ], + "PlacementGroupStrategy": [ + "cluster", + "partition", + "spread" + ], + "Platform": [ + "x86-64", + "ARM64" + ], + "Policy": [ + "ALLOW", + "REQUIRE" + ], + "PolicyEffect": [ + "permit", + "forbid" + ], + "PolicyValidationReportStatus": [ + "success", + "failure" + ], + "PolicyValidationReportStatusBeta1": [ + "success", + "failure" + ], + "PoliticalView": [ + "IND" + ], + "PoolState": [ + "Hibernated", + "Running", + "Stopped" + ], + "PositionFiltering": [ + "TimeBased", + "DistanceBased", + "AccuracyBased" + ], + "PredefinedMetric": [ + "ASGAverageCPUUtilization", + "ASGAverageNetworkIn", + "ASGAverageNetworkOut", + "ALBRequestCountPerTarget" + ], + "PredicateLogical": [ + "AND", + "ANY" + ], + "Preset": [ + "CONSTRAINED_BANDWIDTH_DELIVERY", + "HIGHER_BANDWIDTH_DELIVERY" + ], + "PresetSpeke20Audio": [ + "PRESET_AUDIO_1", + "PRESET_AUDIO_2", + "PRESET_AUDIO_3", + "SHARED", + "UNENCRYPTED" + ], + "PresetSpeke20Video": [ + "PRESET_VIDEO_1", + "PRESET_VIDEO_2", + "PRESET_VIDEO_3", + "PRESET_VIDEO_4", + "PRESET_VIDEO_5", + "PRESET_VIDEO_6", + "PRESET_VIDEO_7", + "PRESET_VIDEO_8", + "SHARED", + "UNENCRYPTED" + ], + "PriceClass": [ + "PriceClass_100", + "PriceClass_200", + "PriceClass_All" + ], + "PrimarySource": [ + 0, + 1 + ], + "PrincipalScope": [ + "all", + "specific" + ], + "PriorityType": [ + "LATENCY", + "COST", + "DESTINATION", + "LOCATION" + ], + "ProcessorMode": [ + "INLINE", + "DISTRIBUTED" + ], + "ProcessorType": [ + "STANDARD", + "EXPRESS" + ], + "ProjectNotificationEvents": [ + "codebuild-project-build-state-failed", + "codebuild-project-build-state-succeeded", + "codebuild-project-build-state-in-progress", + "codebuild-project-build-state-stopped", + "codebuild-project-build-phase-failure", + "codebuild-project-build-phase-success" + ], + "ProjectVisibility": [ + "PUBLIC_READ", + "PRIVATE" + ], + "ProjectionType": [ + "KEYS_ONLY", + "INCLUDE", + "ALL" + ], + "PromptTemplateType": [ + "TEXT", + "CHAT" + ], + "PropagateManagedInstancesTags": [ + "CAPACITY_PROVIDER", + "NONE" + ], + "PropagatedTagSource": [ + "SERVICE", + "TASK_DEFINITION", + "NONE" + ], + "Protocol": [ + "HTTP", + "HTTPS", + "TCP", + "TLS", + "UDP", + "TCP_UDP" + ], + "ProtocolConfigType": [ + "failover", + "merge" + ], + "ProtocolType": [ + "MCP", + "HTTP", + "A2A", + "AGUI" + ], + "ProviderType": [ + "CodeStarSourceConnection" + ], + "ProxyEndpointTargetRole": [ + "READ_WRITE", + "READ_ONLY" + ], + "PythonVersion": [ + "2", + "3", + "3.9" + ], + "QueryLanguage": [ + "JSONPath", + "JSONata" + ], + "QueueEncryption": [ + "NONE", + "KMS_MANAGED", + "KMS", + "SQS_MANAGED" + ], + "QuoteCharacter": [ + '"', + "'" + ], + "ReadWriteType": [ + "ReadOnly", + "WriteOnly", + "All", + "None" + ], + "ReceiptFilterPolicy": [ + "Allow", + "Block" + ], + "RecordType": [ + "A", + "AAAA", + "CAA", + "CNAME", + "DS", + "HTTPS", + "MX", + "NAPTR", + "NS", + "PTR", + "SOA", + "SPF", + "SRV", + "SSHFP", + "SVCB", + "TLSA", + "TXT" + ], + "RecordWrapperType": [ + "None", + "RecordIO" + ], + "RecordingMode": [ + "INTERVAL", + "DISABLED" + ], + "RecursiveLoop": [ + "Allow", + "Terminate" + ], + "RedirectProtocol": [ + "http", + "https" + ], + "RedirectStatus": [ + "200", + "301", + "302", + "404", + "404-200" + ], + "RedrivePermission": [ + "allowAll", + "denyAll", + "byQueue" + ], + "ReferenceRendering": [ + 0, + 1 + ], + "ReferenceStrength": [ + "strong", + "weak", + "both" + ], + "RegistryType": [ + "private", + "public" + ], + "RelayConversationHistoryType": [ + "TO_COLLABORATOR", + "DISABLED" + ], + "RemovalPolicy": [ + "destroy", + "retain", + "snapshot", + "retain-on-update-or-delete" + ], + "RenditionSelection": [ + "ALL", + "NONE", + "CUSTOM" + ], + "ReplicationOverwriteProtection": [ + "ENABLED", + "DISABLED" + ], + "ReportGroupType": [ + "TEST", + "CODE_COVERAGE" + ], + "RepositoryEventTrigger": [ + "all", + "updateReference", + "createReference", + "deleteReference" + ], + "RepositoryNotificationEvents": [ + "codecommit-repository-comments-on-commits", + "codecommit-repository-comments-on-pull-requests", + "codecommit-repository-approvals-status-changed", + "codecommit-repository-approvals-rule-override", + "codecommit-repository-pull-request-created", + "codecommit-repository-pull-request-source-updated", + "codecommit-repository-pull-request-status-changed", + "codecommit-repository-pull-request-merged", + "codecommit-repository-branches-and-tags-created", + "codecommit-repository-branches-and-tags-deleted", + "codecommit-repository-branches-and-tags-updated" + ], + "RepositoryService": [ + "ECR" + ], + "RepositoryVisibility": [ + 0, + 1 + ], + "RequestMetricsStatus": [ + "Enabled", + "Disabled" + ], + "RequireConfirmation": [ + "ENABLED", + "DISABLED" + ], + "Resolution": [ + "FULL_HD", + "HD", + "SD", + "LOWEST_RESOLUTION" + ], + "ResolutionTypeHint": [ + "string", + "number", + "string-list" + ], + "ResolverLevelMetricsBehavior": [ + "FULL_REQUEST_RESOLVER_METRICS", + "PER_RESOLVER_METRICS" + ], + "ResolverMetricsConfig": [ + "ENABLED", + "DISABLED" + ], + "ResourceAction": [ + "pause-cluster", + "resume-cluster", + "failover-primary-compute" + ], + "ResourceScope": [ + "all", + "type", + "specific" + ], + "ResourceToReplicateTags": [ + "lambda-function" + ], + "ResponseTransferMode": [ + "BUFFERED", + "STREAM" + ], + "RestApiMode": [ + "overwrite", + "merge" + ], + "Result": [ + "ROLLBACK", + "FAIL", + "RETRY", + "SKIP" + ], + "RetentionDays": [ + 1, + 3, + 5, + 7, + 14, + 30, + 60, + 90, + 120, + 150, + 180, + 365, + 400, + 545, + 731, + 1096, + 1827, + 2192, + 2557, + 2922, + 3288, + 3653, + 9999 + ], + "RetryMode": [ + "ALL_ACTIONS", + "FAILED_ACTIONS" + ], + "RevisionType": [ + "COMMIT_ID", + "IMAGE_DIGEST", + "S3_OBJECT_VERSION_ID", + "S3_OBJECT_KEY" + ], + "RevocationType": [ + "CRL" + ], + "RoleMappingMatchType": [ + "Equals", + "Contains", + "StartsWith", + "NotEqual" + ], + "RouterType": [ + "CarrierGateway", + "EgressOnlyInternetGateway", + "Gateway", + "Instance", + "LocalGateway", + "NatGateway", + "NetworkInterface", + "TransitGateway", + "VpcPeeringConnection", + "VpcEndpoint", + "CoreNetwork" + ], + "RoutingPolicy": [ + "WEIGHTED", + "MULTIVALUE" + ], + "Runtime": [ + "nodejs20.x", + "python3.9", + "python3.10", + "python3.11", + "python3.13", + "python3.13" + ], + "RuntimeFamily": [ + 0, + 1, + 2 + ], + "S3DataDistributionType": [ + "FullyReplicated", + "ShardedByS3Key" + ], + "S3DataType": [ + "ManifestFile", + "S3Prefix", + "AugmentedManifestFile" + ], + "S3EncryptionMode": [ + "SSE-S3", + "SSE-KMS" + ], + "S3LogsDeliveryPermissionsVersion": [ + "V1", + "V2" + ], + "S3ObjectStorageMode": [ + "COPY", + "REFERENCE" + ], + "S3OutputFormat": [ + "plain", + "json", + "w3c" + ], + "S3Trigger": [ + "None", + "Poll", + "Events" + ], + "SSLMethod": [ + "sni-only", + "vip", + "static-ip" + ], + "ScaleInProtectedInstances": [ + "Refresh", + "Ignore", + "Wait" + ], + "ScalingEvent": [ + "autoscaling:EC2_INSTANCE_LAUNCH", + "autoscaling:EC2_INSTANCE_TERMINATE", + "autoscaling:EC2_INSTANCE_TERMINATE_ERROR", + "autoscaling:EC2_INSTANCE_LAUNCH_ERROR", + "autoscaling:TEST_NOTIFICATION" + ], + "ScalingMode": [ + "STANDARD", + "MANAGED" + ], + "ScalingProcess": [ + "Launch", + "Terminate", + "HealthCheck", + "ReplaceUnhealthy", + "AZRebalance", + "AlarmNotification", + "ScheduledActions", + "AddToLoadBalancer", + "InstanceRefresh" + ], + "ScheduleStartCondition": [ + "EXPRESSION_MATCH_ONLY", + "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE" + ], + "SchemaDefinitionType": [ + "string", + "number", + "object", + "array", + "boolean", + "integer" + ], + "Scope": [ + "task", + "shared" + ], + "ScteInSegments": [ + "NONE", + "ALL" + ], + "ScteMessageType": [ + "SPLICE_INSERT", + "BREAK", + "PROVIDER_ADVERTISEMENT", + "DISTRIBUTOR_ADVERTISEMENT", + "PROVIDER_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_PLACEMENT_OPPORTUNITY", + "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY", + "PROGRAM" + ], + "SecurityPolicy": [ + "TLS_1_0", + "TLS_1_2" + ], + "SecurityPolicyProtocol": [ + "SSLv3", + "TLSv1", + "TLSv1_2016", + "TLSv1.1_2016", + "TLSv1.2_2018", + "TLSv1.2_2019", + "TLSv1.2_2021", + "TLSv1.2_2025", + "TLSv1.3_2025" + ], + "SegmentLengthUnits": [ + "MILLISECONDS", + "SECONDS" + ], + "SegmentTemplateFormat": [ + "NUMBER_WITH_TIMELINE" + ], + "ServerSideEncryption": [ + "AES256", + "aws:kms", + "aws:kms:dsse" + ], + "ServiceConnectAccessLogFormat": [ + "TEXT", + "JSON" + ], + "ServiceIntegrationPattern": [ + "FIRE_AND_FORGET", + "SYNC", + "WAIT_FOR_TASK_TOKEN" + ], + "ServiceManager": [ + 0, + 1, + 2 + ], + "ServiceNamespace": [ + "ecs", + "elasticmapreduce", + "ec2", + "appstream", + "dynamodb", + "rds", + "sagemaker", + "custom-resource", + "lambda", + "comprehend", + "kafka", + "elasticache", + "neptune", + "cassandra", + "workspaces" + ], + "Shading": [ + "none", + "above", + "below" + ], + "ShardLevelMetrics": [ + "IncomingBytes", + "IncomingRecords", + "IteratorAgeMilliseconds", + "OutgoingBytes", + "OutgoingRecords", + "ReadProvisionedThroughputExceeded", + "WriteProvisionedThroughputExceeded", + "ALL" + ], + "SharePermission": [ + 0, + 1 + ], + "SigningAlgorithm": [ + "rsa-sha256" + ], + "SigningBehavior": [ + "always", + "never", + "no-override" + ], + "SigningProtocol": [ + "sigv4" + ], + "SizeRoundingBehavior": [ + 0, + 1, + 2 + ], + "SnsActionMessageFormat": [ + "RAW", + "JSON" + ], + "SortDirection": [ + "asc", + "desc" + ], + "SourceMapMode": [ + "default", + "external", + "inline", + "both" + ], + "SourcePriorityMode": [ + "NO_PRIORITY", + "PRIMARY_SECONDARY" + ], + "SourceType": [ + "lambda", + "sqs", + "sns", + "events" + ], + "SplitType": [ + "None", + "Line", + "RecordIO", + "TFRecord" + ], + "SplunkLogFormat": [ + "inline", + "json", + "raw" + ], + "SpotAllocationStrategy": [ + "lowest-price", + "capacity-optimized", + "capacity-optimized-prioritized", + "price-capacity-optimized" + ], + "SpotInstanceInterruption": [ + "stop", + "terminate", + "hibernate" + ], + "SpotRequestType": [ + "one-time", + "persistent" + ], + "SslPolicy": [ + "ELBSecurityPolicy-TLS13-1-2-2021-06", + "ELBSecurityPolicy-TLS13-1-2-PQ-2025-09", + "ELBSecurityPolicy-2016-08", + "ELBSecurityPolicy-TLS13-1-2-Res-2021-06", + "ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06", + "ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06", + "ELBSecurityPolicy-TLS13-1-0-2021-06", + "ELBSecurityPolicy-TLS13-1-1-2021-06", + "ELBSecurityPolicy-TLS13-1-3-2021-06", + "ELBSecurityPolicy-TLS13-1-3-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-2-Res-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-2-Ext1-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-2-Ext2-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-0-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-3-FIPS-2023-04", + "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-2023-04", + "ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04", + "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-2023-04", + "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-2023-04", + "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-2023-04", + "ELBSecurityPolicy-TLS13-1-1-FIPS-2023-04", + "ELBSecurityPolicy-TLS13-1-0-FIPS-2023-04", + "ELBSecurityPolicy-TLS13-1-3-FIPS-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-2-FIPS-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-PQ-2025-09", + "ELBSecurityPolicy-TLS13-1-0-FIPS-PQ-2025-09", + "ELBSecurityPolicy-FS-1-2-Res-2020-10", + "ELBSecurityPolicy-FS-1-2-Res-2019-08", + "ELBSecurityPolicy-FS-1-2-2019-08", + "ELBSecurityPolicy-FS-1-1-2019-08", + "ELBSecurityPolicy-FS-2018-06", + "ELBSecurityPolicy-TLS-1-2-2017-01", + "ELBSecurityPolicy-TLS-1-2-Ext-2018-06", + "ELBSecurityPolicy-TLS-1-1-2017-01", + "ELBSecurityPolicy-TLS-1-0-2015-04" + ], + "StackSetOrganizationsAutoDeployment": [ + "Enabled", + "Disabled", + "EnabledWithStackRetention" + ], + "StandardThreatProtectionMode": [ + "ENFORCED", + "AUDIT", + "OFF" + ], + "StandbyInstances": [ + "Terminate", + "Ignore", + "Wait" + ], + "StartingPosition": [ + "TRIM_HORIZON", + "LATEST", + "AT_TIMESTAMP" + ], + "State": [ + "ENABLED", + "DISABLED" + ], + "StateMachineInvocationType": [ + "FIRE_AND_FORGET", + "REQUEST_RESPONSE" + ], + "StateMachineType": [ + "EXPRESS", + "STANDARD" + ], + "StateType": [ + "Pass", + "Task", + "Choice", + "Wait", + "Succeed", + "Fail", + "Parallel", + "Map" + ], + "Statistic": [ + "SampleCount", + "Average", + "Sum", + "Minimum", + "Maximum" + ], + "Status": [ + "pass", + "fail" + ], + "Storage": [ + "SEQUENTIAL", + "LATEST" + ], + "StorageClass": [ + "STANDARD", + "REDUCED_REDUNDANCY", + "STANDARD_IA", + "ONEZONE_IA", + "INTELLIGENT_TIERING", + "GLACIER", + "DEEP_ARCHIVE" + ], + "StorageMode": [ + "LOCAL", + "TIERED" + ], + "StorageParameters": [ + "skip.header.line.count", + "data_cleansing_enabled", + "compression_type", + "invalid_char_handling", + "replacement_char", + "numeric_overflow_handling", + "surplus_bytes_handling", + "surplus_char_handling", + "column_count_mismatch_handling", + "num_rows", + "serialization.null.format", + "orc.schema.resolution", + "write.parallel", + "write.maxfilesize.mb", + "write.kms.key.id" + ], + "StorageType": [ + "standard", + "gp2", + "gp3", + "io1", + "io2" + ], + "StreamDeliveryContentLevel": [ + "METADATA_ONLY", + "FULL_CONTENT" + ], + "StreamDeliveryContentType": [ + "MEMORY_RECORDS" + ], + "StreamEncryption": [ + "NONE", + "KMS", + "MANAGED" + ], + "StreamEncryptionType": [ + 0, + 1, + 2 + ], + "StreamMode": [ + "PROVISIONED", + "ON_DEMAND" + ], + "StreamViewType": [ + "NEW_IMAGE", + "OLD_IMAGE", + "NEW_AND_OLD_IMAGES", + "KEYS_ONLY" + ], + "StringMutatorType": [ + 0, + 1, + 2, + 3, + 4 + ], + "Style": [ + "VectorEsriNavigation", + "RasterEsriImagery", + "VectorEsriLightGrayCanvas", + "VectorEsriTopographic", + "VectorEsriStreets", + "VectorEsriDarkGrayCanvas", + "VectorHereExplore", + "RasterHereExploreSatellite", + "HybridHereExploreSatellite", + "VectorHereContrast", + "VectorHereExploreTruck", + "VectorGrabStandardLight", + "VectorGrabStandardDark", + "VectorOpenDataStandardLight", + "VectorOpenDataStandardDark", + "VectorOpenDataVisualizationLight", + "VectorOpenDataVisualizationDark" + ], + "SubRecordType": [ + "JSON", + "DELIMITED" + ], + "SubnetType": [ + "Isolated", + "Deprecated_Isolated", + "Private", + "Deprecated_Private_NAT", + "Deprecated_Private", + "Public" + ], + "SubscriptionProtocol": [ + "http", + "https", + "email", + "email-json", + "sms", + "sqs", + "application", + "lambda", + "firehose" + ], + "SuppressionReasons": [ + "BOUNCES_AND_COMPLAINTS", + "BOUNCES_ONLY", + "COMPLAINTS_ONLY" + ], + "SurplusBytesHandlingAction": [ + "SET_TO_NULL", + "DISABLED", + "FAIL", + "DROP_ROW", + "TRUNCATE" + ], + "SurplusCharHandlingAction": [ + "SET_TO_NULL", + "DISABLED", + "FAIL", + "DROP_ROW", + "TRUNCATE" + ], + "SymlinkFollowMode": [ + "never", + "always", + "external", + "internal-only" + ], + "SynthesisMessageLevel": [ + "info", + "warning", + "error" + ], + "SystemLogLevel": [ + "INFO", + "DEBUG", + "WARN" + ], + "TLSSecurityPolicy": [ + "Policy-Min-TLS-1-0-2019-07", + "Policy-Min-TLS-1-2-2019-07", + "Policy-Min-TLS-1-2-PFS-2023-10" + ], + "TableAction": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "TableBucketEncryption": [ + "aws:kms", + "AES256" + ], + "TableClass": [ + "STANDARD", + "STANDARD_INFREQUENT_ACCESS" + ], + "TableDistStyle": [ + "AUTO", + "EVEN", + "KEY", + "ALL" + ], + "TableEncryption": [ + "AWS_OWNED", + "CUSTOMER_MANAGED", + "AWS_MANAGED" + ], + "TableLayout": [ + "horizontal", + "vertical" + ], + "TableSortStyle": [ + "AUTO", + "COMPOUND", + "INTERLEAVED" + ], + "TableSummaryColumn": [ + "MIN", + "MAX", + "SUM", + "AVG" + ], + "TagMutability": [ + "MUTABLE", + "IMMUTABLE", + "IMMUTABLE_WITH_EXCLUSION", + "MUTABLE_WITH_EXCLUSION" + ], + "TagOperation": [ + "STRINGEQUALS", + "dummy" + ], + "TagStatus": [ + "any", + "tagged", + "untagged" + ], + "TagType": [ + "StandardTag", + "AutoScalingGroupTag", + "StringToStringMap", + "KeyValue", + "NotTaggable" + ], + "TaintEffect": [ + "NO_SCHEDULE", + "PREFER_NO_SCHEDULE", + "NO_EXECUTE" + ], + "TargetGroupIpAddressType": [ + "ipv4", + "ipv6" + ], + "TargetGroupLoadBalancingAlgorithmType": [ + "round_robin", + "least_outstanding_requests", + "weighted_random" + ], + "TargetType": [ + "instance", + "ip", + "lambda", + "alb" + ], + "TcpRetryEvent": [ + "connection-error" + ], + "TemplateType": [ + "Text", + "Object" + ], + "Tenancy": [ + "default", + "dedicated", + "host" + ], + "TerminateHookAbandonAction": [ + "retain", + "terminate" + ], + "TerminationPolicy": [ + "AllocationStrategy", + "ClosestToNextInstanceHour", + "Default", + "NewestInstance", + "OldestInstance", + "OldestLaunchConfiguration", + "OldestLaunchTemplate", + "CustomLambdaFunction" + ], + "TextFilterKey": [ + "audio_language", + "subtitle_language" + ], + "TextWidgetBackground": [ + "solid", + "transparent" + ], + "ThroughputMode": [ + "bursting", + "provisioned", + "elastic" + ], + "TierConfig": [ + "CLASSIC", + "STANDARD" + ], + "TimeoutAction": [ + "ForceApplyCapacityChange", + "RollbackCapacityChange" + ], + "TlsMode": [ + "STRICT", + "PERMISSIVE", + "DISABLED" + ], + "TlsPolicy": [ + "Optional", + "Require" + ], + "TmpfsMountOption": [ + "defaults", + "ro", + "rw", + "suid", + "nosuid", + "dev", + "nodev", + "exec", + "noexec", + "sync", + "async", + "dirsync", + "remount", + "mand", + "nomand", + "atime", + "noatime", + "diratime", + "nodiratime", + "bind", + "rbind", + "unbindable", + "runbindable", + "private", + "rprivate", + "shared", + "rshared", + "slave", + "rslave", + "relatime", + "norelatime", + "strictatime", + "nostrictatime", + "mode", + "uid", + "gid", + "nr_inodes", + "nr_blocks", + "mpol" + ], + "TraceConfigurationVendor": [ + "AWSXRAY" + ], + "Tracing": [ + "Active", + "PassThrough", + "Disabled" + ], + "TracingConfig": [ + "PassThrough", + "Active" + ], + "TrafficDirection": [ + 0, + 1 + ], + "Transformation": [ + "NONE", + "COMPACT", + "FLATTEN" + ], + "TransitGatewayFeatureStatus": [ + "enable", + "disable" + ], + "TransitionDefaultMinimumObjectSize": [ + "all_storage_classes_128K", + "varies_by_storage_class" + ], + "TransportProtocol": [ + "tcp", + "udp" + ], + "TreatMissingData": [ + "breaching", + "notBreaching", + "ignore", + "missing" + ], + "TrickplayType": [ + "iframe", + "image", + "none" + ], + "TriggerInvalidation": [ + "WHEN_FUNCTION_CHANGES" + ], + "TsDrmSystem": [ + "FAIRPLAY", + "CLEAR_KEY_AES_128" + ], + "TsEncryptionMethod": [ + "AES_128", + "SAMPLE_AES" + ], + "TtmlProfile": [ + "IMSC_1", + "EBU_TT_D_101" + ], + "TypeConverterType": [ + "boolean", + "integer", + "double", + "string" + ], + "URLEncodingFormat": [ + "BRACKETS", + "COMMAS", + "DEFAULT", + "INDICES", + "NONE", + "REPEAT" + ], + "UlimitName": [ + "core", + "cpu", + "data", + "fsize", + "locks", + "memlock", + "msgqueue", + "nice", + "nofile", + "nproc", + "rss", + "rtprio", + "rttime", + "sigpending", + "stack" + ], + "UnauthenticatedAction": [ + "deny", + "allow", + "authenticate" + ], + "Unit": [ + "Seconds", + "Microseconds", + "Milliseconds", + "Bytes", + "Kilobytes", + "Megabytes", + "Gigabytes", + "Terabytes", + "Bits", + "Kilobits", + "Megabits", + "Gigabits", + "Terabits", + "Percent", + "Count", + "Bytes/Second", + "Kilobytes/Second", + "Megabytes/Second", + "Gigabytes/Second", + "Terabytes/Second", + "Bits/Second", + "Kilobits/Second", + "Megabits/Second", + "Gigabits/Second", + "Terabits/Second", + "Count/Second", + "None" + ], + "UnreferencedFileRemovalStatus": [ + "Enabled", + "Disabled" + ], + "UntrustedArtifactOnDeployment": [ + "Enforce", + "Warn" + ], + "UpdateType": [ + "None", + "Replace", + "RollingUpdate" + ], + "UsagePlanKeyType": [ + "API_KEY" + ], + "UserPoolDefaultAction": [ + "ALLOW", + "DENY" + ], + "UserPoolIdentityProviderSamlMetadataType": [ + "url", + "file" + ], + "ValidationMethod": [ + "EMAIL", + "DNS" + ], + "ValidatorType": [ + "JSON_SCHEMA", + "LAMBDA" + ], + "VariableInputType": [ + "input", + "radio", + "select" + ], + "VariableType": [ + "property", + "pattern" + ], + "VectorType": [ + "FLOAT32", + "BINARY" + ], + "VendedLogType": [ + 0, + 1, + 2, + 3, + 4 + ], + "VerificationEmailStyle": [ + "CONFIRM_WITH_CODE", + "CONFIRM_WITH_LINK" + ], + "VersionConsistency": [ + "enabled", + "disabled" + ], + "VerticalShading": [ + "none", + "before", + "after" + ], + "VideoCodec": [ + "H264", + "H265", + "AV1" + ], + "VideoCodecType": [ + "H264", + "H265", + "AV1", + "FRAME_CAPTURE" + ], + "VideoDynamicRange": [ + "dv", + "hdr10", + "hlg", + "sdr" + ], + "ViewerProtocolPolicy": [ + "https-only", + "redirect-to-https", + "allow-all" + ], + "Visibility": [ + "GLOBAL", + "PRIVATE" + ], + "VpcEndpointDnsRecordIpType": [ + "ipv4", + "ipv6", + "dualstack", + "service-defined" + ], + "VpcEndpointIpAddressType": [ + "ipv4", + "ipv6", + "dualstack" + ], + "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint": [ + "AllResolvers", + "OnlyInboundResolver" + ], + "VpcEndpointType": [ + "Interface", + "Gateway", + "GatewayLoadBalancer", + "ServiceNetwork", + "Resource" + ], + "VpcSubnetGroupType": [ + "Public", + "Private", + "Isolated" + ], + "VpnConnectionType": [ + "ipsec.1", + "dummy" + ], + "VpnPort": [ + 443, + 1194 + ], + "WebSocketAuthorizerType": [ + "REQUEST", + "AWS_IAM" + ], + "WebSocketIntegrationType": [ + "AWS_PROXY", + "MOCK", + "AWS" + ], + "WebhookFilterTypes": [ + "FILE_PATH", + "COMMIT_MESSAGE", + "HEAD_REF", + "ACTOR_ACCOUNT_ID", + "BASE_REF", + "REPOSITORY_NAME" + ], + "Weekday": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7" + ], + "WindowsImageType": [ + "WINDOWS_CONTAINER", + "WINDOWS_SERVER_2019_CONTAINER", + "WINDOWS_SERVER_2022_CONTAINER" + ], + "WindowsOptimizedVersion": [ + "2025", + "2022", + "2019", + "2016" + ], + "WindowsVersion": [ + "Windows_Server-2019-English-Core-EKS_Optimized-1.22", + "Windows_Server-2019-English-Full-EKS_Optimized-1.22", + "Windows_Server-2019-English-Core-EKS_Optimized-1.23", + "Windows_Server-2019-English-Full-EKS_Optimized-1.23", + "Windows_Server-2019-English-Core-EKS_Optimized-1.24", + "Windows_Server-2019-English-Full-EKS_Optimized-1.24", + "Windows_Server-2019-English-Core-EKS_Optimized-1.25", + "Windows_Server-2019-English-Full-EKS_Optimized-1.25", + "Windows_Server-2019-English-Core-EKS_Optimized-1.26", + "Windows_Server-2019-English-Full-EKS_Optimized-1.26", + "Windows_Server-2019-English-Core-EKS_Optimized-1.27", + "Windows_Server-2019-English-Full-EKS_Optimized-1.27", + "Windows_Server-2019-English-Core-EKS_Optimized-1.28", + "Windows_Server-2019-English-Full-EKS_Optimized-1.28", + "Windows_Server-2022-English-Core-EKS_Optimized-1.23", + "Windows_Server-2022-English-Full-EKS_Optimized-1.23", + "Windows_Server-2022-English-Core-EKS_Optimized-1.24", + "Windows_Server-2022-English-Full-EKS_Optimized-1.24", + "Windows_Server-2022-English-Core-EKS_Optimized-1.25", + "Windows_Server-2022-English-Full-EKS_Optimized-1.25", + "Windows_Server-2022-English-Core-EKS_Optimized-1.26", + "Windows_Server-2022-English-Full-EKS_Optimized-1.26", + "Windows_Server-2022-English-Core-EKS_Optimized-1.27", + "Windows_Server-2022-English-Full-EKS_Optimized-1.27", + "Windows_Server-2022-English-Core-EKS_Optimized-1.28", + "Windows_Server-2022-English-Full-EKS_Optimized-1.28", + "Windows_Server-1709-English-Core-ContainersLatest", + "Windows_Server-1709-English-Core-Base", + "Windows_Server-1803-English-Core-Base", + "Windows_Server-1803-English-Core-ContainersLatest", + "Windows_Server-1809-English-Core-Base", + "Windows_Server-1809-English-Core-ContainersLatest", + "Windows_Server-2003-R2_SP2-Language_Packs-32Bit-Base", + "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Express", + "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Standard", + "Windows_Server-2003-R2_SP2-English-32Bit-Base", + "Windows_Server-2003-R2_SP2-English-64Bit-Base", + "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Express", + "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Standard", + "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-Base", + "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-Base", + "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Express", + "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Web", + "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Express", + "Windows_Server-2008-R2_SP1-Korean-64Bit-Base", + "Windows_Server-2008-R2_SP1-Chinese_Hong_Kong_SAR-64Bit-Base", + "Windows_Server-2008-R2_SP1-Chinese_PRC-64Bit-Base", + "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Express", + "Windows_Server-2008-SP2-English-32Bit-Base", + "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Web", + "Windows_Server-2008-R2_SP1-Japanese-64Bit-Base", + "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Standard", + "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Express", + "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Web", + "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Standard", + "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Standard", + "Windows_Server-2008-SP2-English-64Bit-Base", + "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Enterprise", + "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Express", + "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Base", + "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Base", + "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Standard", + "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_RTM_SP2_Enterprise", + "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Standard", + "Windows_Server-2008-SP2-Portuguese_Brazil-32Bit-Base", + "Windows_Server-2008-SP2-Portugese_Brazil-32Bit-Base", + "Windows_Server-2008-R2_SP1-English-64Bit-Base", + "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Express", + "Windows_Server-2008-R2_SP1-English-64Bit-Core_SQL_2012_SP4_Standard", + "Windows_Server-2008-R2_SP1-English-64Bit-Core", + "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Standard", + "Windows_Server-2008-R2_SP1-English-64Bit-SharePoint_2010_SP2_Foundation", + "Windows_Server-2012-R2_RTM-Chinese_Simplified-64Bit-Base", + "Windows_Server-2012-R2_RTM-Chinese_Traditional-64Bit-Base", + "Windows_Server-2012-R2_RTM-Dutch-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Enterprise", + "Windows_Server-2012-R2_RTM-Hungarian-64Bit-Base", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-Base", + "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Express", + "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Core", + "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Core", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Standard", + "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Express", + "Windows_Server-2012-RTM-Italian-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Express", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Web", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Standard", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Express", + "Windows_Server-2012-R2_RTM-English-Deep-Learning", + "Windows_Server-2012-R2_RTM-German-64Bit-Base", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Express", + "Windows_Server-2012-R2_RTM-Russian-64Bit-Base", + "Windows_Server-2012-RTM-Chinese_Traditional_Hong_Kong_SAR-64Bit-Base", + "Windows_Server-2012-RTM-Hungarian-64Bit-Base", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Standard", + "Windows_Server-2012-RTM-French-64Bit-Base", + "Windows_Server-2012-R2_RTM-French-64Bit-Base", + "Windows_Server-2012-R2_RTM-Polish-64Bit-Base", + "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Express", + "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Standard", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Standard", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Express", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Web", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Web", + "Windows_Server-2012-R2_RTM-English-64Bit-Core", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Web", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Enterprise", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Standard", + "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Web", + "Windows_Server-2012-RTM-Swedish-64Bit-Base", + "Windows_Server-2012-R2_RTM-Portuguese_Brazil-64Bit-Base", + "Windows_Server-2012-R2_RTM-Portugese_Brazil-64Bit-Base", + "Windows_Server-2012-R2_RTM-Portuguese_Portugal-64Bit-Base", + "Windows_Server-2012-R2_RTM-Portugese_Portugal-64Bit-Base", + "Windows_Server-2012-R2_RTM-Swedish-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2012_SP4_Enterprise", + "Windows_Server-2012-RTM-Chinese_Traditional-64Bit-Base", + "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Standard", + "Windows_Server-2012-RTM-Czech-64Bit-Base", + "Windows_Server-2012-RTM-Turkish-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-HyperV", + "Windows_Server-2012-RTM-Korean-64Bit-Base", + "Windows_Server-2012-RTM-Russian-64Bit-Base", + "Windows_Server-2012_R2_RTM-English-Full-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Standard", + "Windows_Server-2012-R2_RTM-Italian-64Bit-Base", + "Windows_Server-2012-RTM-English-64Bit-Base", + "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Standard", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Standard", + "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Web", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Web", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Express", + "Windows_Server-2012-R2_RTM-Czech-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Standard", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Express", + "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Standard", + "Windows_Server-2008-SP2-Portuguese_Brazil-64Bit-Base", + "Windows_Server-2008-SP2-Portugese_Brazil-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Web", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Express", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Enterprise", + "Windows_Server-2012-RTM-Japanese-64Bit-Base", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Enterprise", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Express", + "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Express", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Standard", + "Windows_Server-2012_RTM-English-Full-Base", + "Windows_Server-2012-R2-English-STIG-Full", + "Windows_Server-2012-RTM-Portuguese_Portugal-64Bit-Base", + "Windows_Server-2012-RTM-Portugese_Portugal-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Enterprise", + "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Web", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Express", + "Windows_Server-2012-R2_RTM-English-64Bit-Base", + "Windows_Server-2012-RTM-Portuguese_Brazil-64Bit-Base", + "Windows_Server-2012-RTM-Portugese_Brazil-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-P3", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Standard", + "Windows_Server-2012-R2_RTM-Spanish-64Bit-Base", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Express", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Standard", + "Windows_Server-2012-R2-English-STIG-Core", + "Windows_Server-2012-R2_RTM-Turkish-64Bit-Base", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Web", + "Windows_Server-2012-RTM-Polish-64Bit-Base", + "Windows_Server-2012-RTM-Spanish-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Web", + "Windows_Server-2012-R2_RTM-Korean-64Bit-Base", + "Windows_Server-2012-RTM-Dutch-64Bit-Base", + "Windows_Server-2012-R2_RTM-Chinese_Traditional_Hong_Kong-64Bit-Base", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Express", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Enterprise", + "Windows_Server-2012-RTM-Chinese_Simplified-64Bit-Base", + "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Web", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Web", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Express", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Web", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Standard", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Express", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Web", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Standard", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Express", + "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Enterprise", + "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Enterprise", + "Windows_Server-2016-English-Core-Containers", + "Windows_Server-2016-English-Core-SQL_2016_SP1_Web", + "Windows_Server-2016-German-Full-Base", + "Windows_Server-2016-Germal-Full-Base", + "Windows_Server-2016-English-Core-SQL_2016_SP1_Express", + "Windows_Server-2016-English-Deep-Learning", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Web", + "Windows_Server-2016-Korean-Full-Base", + "Windows_Server-2016-Korean-Full-SQL_2016_SP2_Standard", + "Windows_Server-2016-Polish-Full-Base", + "Windows_Server-2016-English-Full-Containers", + "Windows_Server-2016-English-Full-SQL_2016_SP1_Standard", + "Windows_Server-2016-Russian-Full-Base", + "Windows_Server-2016-English-Core-SQL_2016_SP2_Enterprise", + "Windows_Server-2016-English-Full-SQL_2016_SP1_Express", + "Windows_Server-2016-Italian-Full-Base", + "Windows_Server-2016-Spanish-Full-Base", + "Windows_Server-2012-RTM-German-64Bit-Base", + "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Standard", + "Windows_Server-2016-English-Full-SQL_2016_SP2_Standard", + "Windows_Server-2016-English-Full-SQL_2016_SP2_Enterprise", + "Windows_Server-2016-English-Full-HyperV", + "Windows_Server-2016-English-Core-ContainersLatest", + "Windows_Server-2016-Dutch-Full-Base", + "Windows_Server-2016-English-Full-SQL_2016_SP2_Express", + "Windows_Server-2016-English-Full-SQL_2017_Enterprise", + "Windows_Server-2016-Hungarian-Full-Base", + "Windows_Server-2016-Korean-Full-SQL_2016_SP1_Standard", + "Windows_Server-2016-English-Core-Base", + "Windows_Server-2016-English-Full-Base", + "Windows_Server-2016-English-Full-SQL_2017_Web", + "Windows_Server-2016-English-Core-SQL_2016_SP1_Enterprise", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Web", + "Windows_Server-2016-Swedish-Full-Base", + "Windows_Server-2016-Turkish-Full-Base", + "Windows_Server-2016-Portuguese_Brazil-Full-Base", + "Windows_Server-2016-Portugese_Brazil-Full-Base", + "Windows_Server-2016-English-Full-SQL_2019_Standard", + "Windows_Server-2016-English-Full-SQL_2014_SP3_Standard", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Enterprise", + "Windows_Server-2016-English-64Bit-SQL_2012_SP4_Enterprise", + "Windows_Server-2016-English-Core-SQL_2016_SP1_Standard", + "Windows_Server-2016-English-Core-SQL_2016_SP2_Express", + "Windows_Server-2016-English-Core-SQL_2016_SP2_Web", + "Windows_Server-2016-English-Full-SQL_2017_Standard", + "Windows_Server-2016-Portuguese_Portugal-Full-Base", + "Windows_Server-2016-Portugese_Portugal-Full-Base", + "Windows_Server-2016-English-Full-SQL_2014_SP3_Enterprise", + "Windows_Server-2016-English-Full-SQL_2019_Enterprise", + "Windows_Server-2016-Japanese-Full-SQL_2017_Standard", + "Windows_Server-2016-English-Full-SQL_2019_Express", + "Windows_Server-2016-Japanese-Full-SQL_2017_Web", + "Windows_Server-2016-English-Core-SQL_2016_SP3_Web", + "Windows_Server-2016-English-Full-SQL_2016_SP3_Enterprise", + "Windows_Server-2016-English-STIG-Core", + "Windows_Server-2016-Korean-Full-SQL_2016_SP3_Standard", + "Windows_Server-2016-English-Full-ECS_Optimized", + "Windows_Server-2016-English-Full-SQL_2016_SP3_Standard", + "Windows_Server-2016-Japanese-Full-SQL_2017_Enterprise", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Express", + "Windows_Server-2016-Japanese-Full-SQL_2019_Web", + "Windows_Server-2016-English-Full-SQL_2016_SP3_Web", + "Windows_Server-2016-English-Full-SQL_2016_SP1_Web", + "Windows_Server-2016-English-P3", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Enterprise", + "Windows_Server-2016-Japanese-Full-Base", + "Windows_Server-2016-Chinese_Simplified-Full-Base", + "Windows_Server-2016-French-Full-Base", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Enterprise", + "Windows_Server-2016-Czech-Full-Base", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Standard", + "Windows_Server-2016-English-Core-SQL_2016_SP2_Standard", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Standard", + "Windows_Server-2016-Chinese_Traditional-Full-Base", + "Windows_Server-2016-English-Full-SQL_2016_SP2_Web", + "Windows_Server-2016-English-Full-SQL_2017_Express", + "Windows_Server-2016-English-Full-SQL_2019_Web", + "Windows_Server-2016-English-Core-SQL_2016_SP3_Express", + "Windows_Server-2016-Japanese-Full-SQL_2019_Standard", + "Windows_Server-2016-English-Tesla", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Express", + "Windows_Server-2016-English-STIG-Full", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Standard", + "Windows_Server-2016-Japanese-Full-SQL_2019_Enterprise", + "Windows_Server-2016-English-Core-SQL_2016_SP3_Enterprise", + "Windows_Server-2016-English-Full-SQL_2016_SP3_Express", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Web", + "Windows_Server-2016-English-Core-SQL_2016_SP3_Standard", + "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Express", + "Windows_Server-2016-English-Full-SQL_2016_SP1_Enterprise", + "Windows_Server-2019-English-Full-SQL_2017_Web", + "Windows_Server-2019-French-Full-Base", + "Windows_Server-2019-Korean-Full-Base", + "Windows_Server-2019-Italian-Full-Base", + "Windows_Server-2019-Chinese_Simplified-Full-Base", + "Windows_Server-2019-English-Full-SQL_2016_SP2_Web", + "Windows_Server-2019-English-Full-HyperV", + "Windows_Server-2019-English-Full-SQL_2016_SP2_Standard", + "Windows_Server-2019-Hungarian-Full-Base", + "Windows_Server-2019-English-Full-SQL_2016_SP2_Express", + "Windows_Server-2019-Turkish-Full-Base", + "Windows_Server-2019-English-Full-SQL_2019_Standard", + "Windows_Server-2019-English-Full-SQL_2017_Standard", + "Windows_Server-2019-English-Core-ContainersLatest", + "Windows_Server-2019-English-Full-SQL_2017_Express", + "Windows_Server-2019-Japanese-Full-Base", + "Windows_Server-2019-Russian-Full-Base", + "Windows_Server-2019-Chinese_Traditional-Full-Base", + "Windows_Server-2019-English-Core-Base", + "Windows_Server-2019-English-Full-Base", + "Windows_Server-2019-Japanese-Full-SQL_2022_Standard", + "Windows_Server-2019-Japanese-Full-SQL_2022_Enterprise", + "Windows_Server-2019-English-Tesla", + "Windows_Server-2019-English-Full-SQL_2019_Enterprise", + "Windows_Server-2019-Spanish-Full-Base", + "Windows_Server-2019-English-Full-SQL_2022_Enterprise", + "Windows_Server-2019-English-STIG-Full", + "Windows_Server-2019-English-Full-SQL_2016_SP3_Web", + "Windows_Server-2019-English-Full-SQL_2016_SP3_Standard", + "Windows_Server-2019-Japanese-Full-SQL_2017_Enterprise", + "Windows_Server-2019-English-Full-SQL_2016_SP2_Enterprise", + "Windows_Server-2019-Portuguese_Portugal-Full-Base", + "Windows_Server-2019-Portugese_Portugal-Full-Base", + "Windows_Server-2019-Swedish-Full-Base", + "Windows_Server-2019-English-Full-SQL_2022_Express", + "Windows_Server-2019-Japanese-Full-SQL_2022_Web", + "Windows_Server-2019-English-Full-SQL_2016_SP3_Enterprise", + "Windows_Server-2019-English-Full-SQL_2022_Web", + "Windows_Server-2019-English-Full-SQL_2019_Web", + "Windows_Server-2019-Portuguese_Brazil-Full-Base", + "Windows_Server-2019-Portugese_Brazil-Full-Base", + "Windows_Server-2019-English-Full-ContainersLatest", + "Windows_Server-2019-English-Full-SQL_2017_Enterprise", + "Windows_Server-2019-Japanese-Full-SQL_2019_Enterprise", + "Windows_Server-2019-English-Full-SQL_2019_Express", + "Windows_Server-2019-Japanese-Full-SQL_2017_Web", + "Windows_Server-2019-English-Full-SQL_2016_SP3_Express", + "Windows_Server-2019-English-STIG-Core", + "Windows_Server-2019-English-Core-ECS_Optimized", + "Windows_Server-2019-English-Full-SQL_2022_Standard", + "Windows_Server-2019-Japanese-Full-SQL_2017_Standard", + "Windows_Server-2019-Japanese-Full-SQL_2019_Web", + "Windows_Server-2019-English-Full-ECS_Optimized", + "Windows_Server-2019-English-Deep-Learning", + "Windows_Server-2019-Japanese-Full-SQL_2019_Standard", + "Windows_Server-2019-Czech-Full-Base", + "Windows_Server-2019-Polish-Full-Base", + "Windows_Server-2019-German-Full-Base", + "Windows_Server-2019-Dutch-Full-Base", + "Windows_Server-2022-English-STIG-Full", + "Windows_Server-2022-Japanese-Full-SQL_2022_Web", + "Windows_Server-2022-English-Full-SQL_2022_Web", + "Windows_Server-2022-English-STIG-Core", + "Windows_Server-2022-Japanese-Full-SQL_2019_Enterprise", + "Windows_Server-2022-Portuguese_Brazil-Full-Base", + "Windows_Server-2022-Italian-Full-Base", + "Windows_Server-2022-English-Full-ContainersLatest", + "Windows_Server-2022-Russian-Full-Base", + "Windows_Server-2022-English-Full-SQL_2019_Express", + "Windows_Server-2022-Polish-Full-Base", + "Windows_Server-2022-English-Core-Base", + "Windows_Server-2022-Hungarian-Full-Base", + "Windows_Server-2022-English-Full-SQL_2017_Express", + "Windows_Server-2022-German-Full-Base", + "Windows_Server-2022-English-Core-ContainersLatest", + "Windows_Server-2022-English-Full-SQL_2019_Standard", + "Windows_Server-2022-Japanese-Full-SQL_2017_Web", + "Windows_Server-2022-English-Full-SQL_2017_Web", + "Windows_Server-2022-Japanese-Full-Base", + "Windows_Server-2022-Korean-Full-Base", + "Windows_Server-2022-Japanese-Full-SQL_2017_Enterprise", + "Windows_Server-2022-Japanese-Full-SQL_2019_Standard", + "Windows_Server-2022-Chinese_Simplified-Full-Base", + "Windows_Server-2022-English-Full-SQL_2019_Web", + "Windows_Server-2022-Spanish-Full-Base", + "Windows_Server-2022-English-Core-ECS_Optimized", + "Windows_Server-2022-English-Full-SQL_2017_Standard", + "Windows_Server-2022-Chinese_Traditional-Full-Base", + "Windows_Server-2022-English-Full-SQL_2019_Enterprise", + "Windows_Server-2022-French-Full-Base", + "Windows_Server-2022-Japanese-Full-SQL_2017_Standard", + "Windows_Server-2022-English-Full-Base", + "Windows_Server-2022-Japanese-Full-SQL_2019_Web", + "Windows_Server-2022-Turkish-Full-Base", + "Windows_Server-2022-English-Full-SQL_2017_Enterprise", + "Windows_Server-2022-Portuguese_Portugal-Full-Base", + "Windows_Server-2022-Czech-Full-Base", + "Windows_Server-2022-English-Full-ECS_Optimized", + "Windows_Server-2022-Dutch-Full-Base", + "Windows_Server-2022-Swedish-Full-Base", + "Windows_Server-2022-English-Full-SQL_2022_Enterprise", + "Windows_Server-2022-English-Full-SQL_2022_Express", + "Windows_Server-2022-English-Full-SQL_2022_Standard", + "Windows_Server-2022-Japanese-Full-SQL_2022_Standard", + "Windows_Server-2022-Japanese-Full-SQL_2022_Enterprise", + "Windows_Server-2025-Chinese_Simplified-Full-Base", + "Windows_Server-2025-Chinese_Traditional-Full-Base", + "Windows_Server-2025-English-Core-Base", + "Windows_Server-2025-English-Full-Base", + "Windows_Server-2025-English-Full-SQL_2022_Enterprise", + "Windows_Server-2025-English-Full-SQL_2022_Express", + "Windows_Server-2025-English-Full-SQL_2022_Standard", + "Windows_Server-2025-English-Full-SQL_2022_Web", + "Windows_Server-2025-Japanese-Full-Base", + "Windows_Server-2025-Korean-Full-Base" + ], + "WorkerType": [ + "Standard", + "G.025X", + "G.1X", + "G.2X", + "G.4X", + "G.8X", + "Z.2X" + ], + "WorkflowAction": [ + "ApplyImageConfigurations", + "BootstrapInstanceForContainer", + "CollectImageMetadata", + "CollectImageScanFindings", + "CreateImage", + "DistributeImage", + "ExecuteComponents", + "ExecuteStateMachine", + "LaunchInstance", + "ModifyImageAttributes", + "RunCommand", + "RegisterImage", + "RunSysPrep", + "SanitizeInstance", + "TerminateInstance", + "WaitForAction", + "WaitForSSMAgent" + ], + "WorkflowOnFailure": [ + "Abort", + "Continue" + ], + "WorkflowParameterType": [ + "boolean", + "integer", + "string", + "stringList" + ], + "WorkflowSchemaVersion": [ + "1.0" + ], + "WorkflowType": [ + "BUILD", + "TEST", + "DISTRIBUTION" + ], + "WriteParallel": [ + "on", + "off" + ], + "XffHeaderProcessingMode": [ + "append", + "preserve", + "remove" + ] + }; + } +}); + +// ../../aws-cdk-lib/core/lib/constants.ts +var RESOURCE_SYMBOL, JSII_RUNTIME_SYMBOL2; +var init_constants = __esm({ + "../../aws-cdk-lib/core/lib/constants.ts"() { + "use strict"; + RESOURCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Resource"); + JSII_RUNTIME_SYMBOL2 = /* @__PURE__ */ Symbol.for("jsii.rtti"); + } +}); + +// ../../aws-cdk-lib/core/lib/metadata-type.ts +var init_metadata_type = __esm({ + "../../aws-cdk-lib/core/lib/metadata-type.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/core/lib/metadata-resource.ts +function addConstructMetadata(construct, props) { + try { + addPropsAsMetadata(construct, "aws:cdk:analytics:construct" /* CONSTRUCT */, props); + } catch (e) { + Annotations.of(construct).addWarningV2("@aws-cdk/core:addConstructMetadataFailed", `Failed to add construct metadata for node [${construct.node.id}]. Reason: ${e}`); + } +} +function addMethodMetadata(scope, methodName, props) { + try { + addPropsAsMetadata(scope, "aws:cdk:analytics:method" /* METHOD */, { + [methodName]: props + }); + } catch (e) { + Annotations.of(scope).addWarningV2("@aws-cdk/core:addMethodMetadataFailed", `Failed to add method metadata for node [${scope.node.id}], method name ${methodName}. Reason: ${e}`); + } +} +function MethodMetadata() { + return function(originalMethod, context) { + if (typeof originalMethod !== "function") { + return originalMethod; + } + return function(...args) { + if (this instanceof import_constructs2.Construct) { + addMethodMetadata(this, context.name.toString(), args); + } + return originalMethod.apply(this, args); + }; + }; +} +function addPropsAsMetadata(construct, type, props) { + const telemetryEnabled = FeatureFlags.of(construct).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false; + if (!telemetryEnabled) { + return; + } + const fqn = construct.constructor[JSII_RUNTIME_SYMBOL2].fqn; + construct.node.addMetadata(type, redactMetadata(fqn, props)); +} +function redactMetadata(fqn, data) { + const fqnParts = fqn.replace(/[-_]/g, "-").split("."); + if (fqnParts.length !== 3) { + return "*"; + } + const module2 = fqnParts.slice(0, 2).join("."); + const name = fqnParts[2]; + if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS).includes(module2)) { + return "*"; + } + if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS[module2]).includes(name)) { + return "*"; + } + const allowedKeys = AWS_CDK_CONSTRUCTOR_PROPS[module2][name]; + return redactTelemetryDataHelper(allowedKeys, data); +} +function redactTelemetryDataHelper(allowedKeys, data) { + if (allowedKeys === void 0) { + return "*"; + } + if (typeof data === "boolean") { + return data; + } + if (isEnumValue(allowedKeys, data)) { + return data; + } + if (typeof data === "string" || typeof data === "number") { + return "*"; + } + if (data && Token.isUnresolved(data)) { + return "*"; + } + if (Array.isArray(data)) { + return data.map((item, index) => { + if (Array.isArray(allowedKeys)) { + return redactTelemetryDataHelper(allowedKeys[index], item); + } + return redactTelemetryDataHelper(allowedKeys, item); + }); + } + if (data && Object.keys(data).length > 0 && typeof data === "object") { + if (import_constructs2.Construct.isConstruct(data)) { + return "*"; + } + const redactedResult = {}; + for (const [key, value] of Object.entries(data)) { + if (key && Token.isUnresolved(key)) { + continue; + } + if (allowedKeys && typeof allowedKeys === "object") { + if (!Object.keys(allowedKeys).includes(key)) { + continue; + } + const allowedValue = allowedKeys[key]; + if (allowedValue === "*") { + redactedResult[key] = "*"; + continue; + } + redactedResult[key] = redactTelemetryDataHelper(allowedKeys[key], value); + } + } + return redactedResult; + } + return "*"; +} +function isEnumValue(allowedKeys, value) { + if (typeof allowedKeys !== "string" || allowedKeys === "*") { + return false; + } + if (!Object.keys(AWS_CDK_ENUMS).includes(allowedKeys)) { + return false; + } + return AWS_CDK_ENUMS[allowedKeys].includes(value); +} +var import_constructs2; +var init_metadata_resource = __esm({ + "../../aws-cdk-lib/core/lib/metadata-resource.ts"() { + "use strict"; + import_constructs2 = __toESM(require_lib4()); + init_classes(); + init_enums(); + init_annotations(); + init_constants(); + init_feature_flags(); + init_metadata_type(); + init_token(); + init_cx_api(); + } +}); + +// ../../aws-cdk-lib/core/lib/no-box-stack-traces.ts +function noBoxStackTraces(constructor) { + const NoBoxStackTraces = class extends constructor { + constructor(...args) { + Box.disableStackTraceCollection(); + try { + super(...args); + } finally { + Box.enableStackTraceCollection(); + } + } + }; + Object.defineProperty(NoBoxStackTraces, "name", { + value: constructor.name, + writable: false + }); + return NoBoxStackTraces; +} +var init_no_box_stack_traces = __esm({ + "../../aws-cdk-lib/core/lib/no-box-stack-traces.ts"() { + "use strict"; + init_box(); + } +}); + +// ../../aws-cdk-lib/core/lib/prop-injectors.ts +var PropertyInjectors; +var init_prop_injectors = __esm({ + "../../aws-cdk-lib/core/lib/prop-injectors.ts"() { + "use strict"; + init_prop_injectors_helpers(); + PropertyInjectors = class _PropertyInjectors { + /** + * Return whether the given object has a PropertyInjectors property. + * + * We do attribute detection since we can't reliably use 'instanceof'. + */ + static hasPropertyInjectors(x) { + return x !== null && typeof x === "object" && PROPERTY_INJECTORS_SYMBOL in x; + } + /** + * Returns the `PropertyInjectors` object associated with a construct scope. + * If `PropertyInjectors` object doesn't exist on this scope, then it creates one and attaches it to scope. + * @param scope The scope for which these PropertyInjectors will apply. + */ + static of(scope) { + let propInjectors = scope[PROPERTY_INJECTORS_SYMBOL]; + if (!propInjectors) { + propInjectors = new _PropertyInjectors(scope); + Object.defineProperty(scope, PROPERTY_INJECTORS_SYMBOL, { + value: propInjectors, + configurable: false, + enumerable: false + }); + } + return propInjectors; + } + /** + * The scope attached to Injectors. + */ + scope; + _injectors; + constructor(scope) { + this._injectors = /* @__PURE__ */ new Map(); + this.scope = scope; + } + /** + * Add a list of IPropertyInjectors to this collection of PropertyInjectors. + * @param propsInjectors - a list of IPropertyInjector + */ + add(...propsInjectors) { + for (const pi of propsInjectors) { + this._injectors.set(pi.constructUniqueId, pi); + } + } + /** + * Get the PropertyInjector that is registered to the Construct's uniqueId. + * @param uniqueId - the construct uniqueId + * @returns - the IPropertyInjector for that construct uniqueId + */ + for(uniqueId) { + return this._injectors.get(uniqueId); + } + /** + * This returns a list of the Constructs that are supporting by this PropertyInjectors. + * @returns a list of string showing the supported Constructs. + */ + supportedClasses() { + return Array.from(this._injectors.keys()); + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts +function applyInjectors(uniqueId, originalProps, context) { + const injector = findInjectorFromConstruct(context.scope, uniqueId); + if (injector === void 0) { + return originalProps; + } + return injector.inject(originalProps, { + scope: context.scope, + id: context.id + }); +} +function findInjectorFromConstruct(scope, uniqueId) { + const result = _lookup(scope); + if (result === void 0) { + return void 0; + } + const injectors = _getInjectorsFromConstruct(result); + const propsInjector = injectors.for(uniqueId); + if (!propsInjector) { + const parent = import_constructs3.Node.of(scope).scope; + if (parent) { + return findInjectorFromConstruct(parent, uniqueId); + } + } + return propsInjector; + function _getInjectorsFromConstruct(c) { + const k = PROPERTY_INJECTORS_SYMBOL; + return c[k]; + } + function _lookup(c) { + if (PropertyInjectors.hasPropertyInjectors(c)) { + return c; + } + const n = import_constructs3.Node.of(c); + if (n === void 0) { + return void 0; + } + const _scope = n.scope; + if (!_scope) { + return void 0; + } + return _lookup(_scope); + } +} +var import_constructs3, PROPERTY_INJECTORS_SYMBOL; +var init_prop_injectors_helpers = __esm({ + "../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts"() { + "use strict"; + import_constructs3 = __toESM(require_lib4()); + init_prop_injectors(); + PROPERTY_INJECTORS_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.PropertyInjectors"); + } +}); + +// ../../aws-cdk-lib/core/lib/prop-injectable.ts +function propertyInjectable(constructor) { + const PropertyInjectable = class extends constructor { + constructor(scope, id, props, ...args) { + const uniqueId = constructor.PROPERTY_INJECTION_ID; + if (uniqueId === void 0) { + throw new AssumptionError(lit`ConstructStaticPropertyInjectionIdProperty`, "Construct must have a static PROPERTY_INJECTION_ID property"); + } + props = applyInjectors(uniqueId, props, { + scope, + id + }); + super(scope, id, props, ...args); + } + }; + Object.defineProperty(PropertyInjectable, "name", { + value: constructor.name, + writable: false + }); + return PropertyInjectable; +} +var init_prop_injectable = __esm({ + "../../aws-cdk-lib/core/lib/prop-injectable.ts"() { + "use strict"; + init_errors(); + init_literal_string(); + init_prop_injectors_helpers(); + } +}); + +// ../../aws-cdk-lib/core/lib/removal-policy.ts +var init_removal_policy = __esm({ + "../../aws-cdk-lib/core/lib/removal-policy.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/core/lib/util.ts +function capitalizePropertyNames(construct, obj) { + const stack = stackOf(construct); + obj = stack.resolve(obj); + if (typeof obj !== "object") { + return obj; + } + if (Array.isArray(obj)) { + return obj.map((x) => capitalizePropertyNames(construct, x)); + } + const newObj = {}; + for (const key of Object.keys(obj)) { + const value = obj[key]; + const first = key.charAt(0).toUpperCase(); + const newKey = first + key.slice(1); + newObj[newKey] = capitalizePropertyNames(construct, value); + } + return newObj; +} +function ignoreEmpty(obj) { + return new PostResolveToken(obj, (o) => { + if (o == null) { + return o; + } + if (Array.isArray(o) && o.length === 0) { + return void 0; + } + if (typeof o === "object" && Object.keys(o).length === 0) { + return void 0; + } + return o; + }); +} +function filterUndefined(obj) { + if (Array.isArray(obj)) { + return obj.filter((x) => x != null).map((x) => filterUndefined(x)); + } + if (typeof obj === "object") { + const ret = {}; + for (const [key, value] of Object.entries(obj)) { + if (value == null) { + continue; + } + ret[key] = filterUndefined(value); + } + return ret; + } + return obj; +} +var PostResolveToken; +var init_util = __esm({ + "../../aws-cdk-lib/core/lib/util.ts"() { + "use strict"; + init_core_construct_finders(); + init_intrinsic(); + PostResolveToken = class extends Intrinsic { + constructor(value, processor) { + super(value, { stackTrace: false }); + this.processor = processor; + } + processor; + resolve(context) { + context.registerPostProcessor(this); + return super.resolve(context); + } + postProcess(o, context) { + return this.processor(o, context); + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/arn.ts +function parseTokenArn(arnToken, arnFormat) { + const components = Fn.split(":", arnToken); + const partition = Fn.select(1, components).toString(); + const service = Fn.select(2, components).toString(); + const region = Fn.select(3, components).toString(); + const account = Fn.select(4, components).toString(); + let resource; + let resourceName; + let sep3; + if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */ || arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) { + resource = Fn.select(5, components); + if (arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) { + resourceName = Fn.select(6, components); + sep3 = ":"; + } else { + resourceName = void 0; + sep3 = void 0; + } + } else { + const lastComponents = Fn.split("/", Fn.select(5, components)); + if (arnFormat === "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */) { + resource = Fn.select(0, lastComponents); + resourceName = Fn.select(1, lastComponents); + } else { + resource = Fn.select(1, lastComponents); + resourceName = Fn.select(2, lastComponents); + } + sep3 = "/"; + } + return { partition, service, region, account, resource, resourceName, sep: sep3, arnFormat }; +} +function parseArnShape(arn) { + const looksLikeArn = arn.startsWith("arn:"); + if (!looksLikeArn) { + if (Token.isUnresolved(arn)) { + return "token"; + } else { + throw new UnscopedValidationError(lit`ArnsMustStartWithArn`, `ARNs must start with "arn:" and have at least 6 components: ${arn}`); + } + } + const components = arn.split(":"); + const partition = components.length > 1 ? components[1] : void 0; + if (!partition) { + throw new UnscopedValidationError(lit`ArnPartitionRequired`, "The `partition` component (2nd component) of an ARN is required: " + arn); + } + const service = components.length > 2 ? components[2] : void 0; + if (!service) { + throw new UnscopedValidationError(lit`ArnServiceRequired`, "The `service` component (3rd component) of an ARN is required: " + arn); + } + const resource = components.length > 5 ? components[5] : void 0; + if (!resource) { + throw new UnscopedValidationError(lit`ArnResourceRequired`, "The `resource` component (6th component) of an ARN is required: " + arn); + } + return components; +} +var Arn; +var init_arn = __esm({ + "../../aws-cdk-lib/core/lib/arn.ts"() { + "use strict"; + init_cfn_fn(); + init_errors(); + init_literal_string(); + init_token(); + init_util(); + Arn = class _Arn { + /** + * Creates an ARN from components. + * + * If `partition`, `region` or `account` are not specified, the stack's + * partition, region and account will be used. + * + * If any component is the empty string, an empty string will be inserted + * into the generated ARN at the location that component corresponds to. + * + * The ARN will be formatted as follows: + * + * arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name} + * + * The required ARN pieces that are omitted will be taken from the stack that + * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope + * can be 'undefined'. + */ + static format(components, stack) { + const partition = components.partition ?? stack?.partition; + const region = components.region ?? stack?.region; + const account = components.account ?? stack?.account; + if (partition == null || region == null || account == null) { + throw new UnscopedValidationError(lit`ArnFormatMissingStackInfo`, `Arn.format: partition (${partition}), region (${region}), and account (${account}) must all be passed if stack is not passed.`); + } + const sep3 = components.sep ?? (components.arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */ ? ":" : "/"); + const values = [ + "arn", + ":", + partition, + ":", + components.service, + ":", + region, + ":", + account, + ":", + ...components.arnFormat === "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */ ? ["/"] : [], + components.resource + ]; + if (sep3 !== "/" && sep3 !== ":" && sep3 !== "") { + throw new UnscopedValidationError(lit`InvalidResourcePathSeparator`, 'resourcePathSep may only be ":", "/" or an empty string'); + } + if (components.resourceName != null) { + values.push(sep3); + values.push(components.resourceName); + } + return values.join(""); + } + /** + * Given an ARN, parses it and returns components. + * + * IF THE ARN IS A CONCRETE STRING... + * + * ...it will be parsed and validated. The separator (`sep`) will be set to '/' + * if the 6th component includes a '/', in which case, `resource` will be set + * to the value before the '/' and `resourceName` will be the rest. In case + * there is no '/', `resource` will be set to the 6th components and + * `resourceName` will be set to the rest of the string. + * + * IF THE ARN IS A TOKEN... + * + * ...it cannot be validated, since we don't have the actual value yet at the + * time of this function call. You will have to supply `sepIfToken` and + * whether or not ARNs of the expected format usually have resource names + * in order to parse it properly. The resulting `ArnComponents` object will + * contain tokens for the subexpressions of the ARN, not string literals. + * + * If the resource name could possibly contain the separator char, the actual + * resource name cannot be properly parsed. This only occurs if the separator + * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs, + * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a + * Tokenized ARN, you must know the resource type and call + * `Arn.extractResourceName`. + * + * @param arn The ARN to parse + * @param sepIfToken The separator used to separate resource from resourceName + * @param hasName Whether there is a name component in the ARN at all. For + * example, SNS Topics ARNs have the 'resource' component contain the topic + * name, and no 'resourceName' component. + * + * @returns an ArnComponents object which allows access to the various + * components of the ARN. + * + * @returns an ArnComponents object which allows access to the various + * components of the ARN. + * + * @deprecated use split instead + */ + static parse(arn, sepIfToken = "/", hasName = true) { + let arnFormat; + if (!hasName) { + arnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */; + } else { + arnFormat = sepIfToken === "/" ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */; + } + return this.split(arn, arnFormat); + } + /** + * Splits the provided ARN into its components. + * Works both if 'arn' is a string like 'arn:aws:s3:::bucket', + * and a Token representing a dynamic CloudFormation expression + * (in which case the returned components will also be dynamic CloudFormation expressions, + * encoded as Tokens). + * + * @param arn the ARN to split into its components + * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses + */ + static split(arn, arnFormat) { + const components = parseArnShape(arn); + if (components === "token") { + return parseTokenArn(arn, arnFormat); + } + const [, partition, service, region, account, resourceTypeOrName, ...rest] = components; + let resource; + let resourceName; + let sep3; + let resourcePartStartIndex = 0; + let detectedArnFormat; + let slashIndex = resourceTypeOrName.indexOf("/"); + if (slashIndex === 0) { + slashIndex = resourceTypeOrName.indexOf("/", 1); + resourcePartStartIndex = 1; + detectedArnFormat = "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */; + } + if (slashIndex !== -1) { + if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */) { + sep3 = void 0; + slashIndex = -1; + detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */; + } else { + sep3 = "/"; + detectedArnFormat = resourcePartStartIndex === 0 ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */; + } + } else if (rest.length > 0) { + sep3 = ":"; + slashIndex = -1; + detectedArnFormat = "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */; + } else { + sep3 = void 0; + detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */; + } + if (slashIndex !== -1) { + resource = resourceTypeOrName.substring(resourcePartStartIndex, slashIndex); + resourceName = resourceTypeOrName.substring(slashIndex + 1); + } else { + resource = resourceTypeOrName; + } + if (rest.length > 0) { + if (!resourceName) { + resourceName = ""; + } else { + resourceName += ":"; + } + resourceName += rest.join(":"); + } + return filterUndefined({ + service: service || void 0, + resource: resource || void 0, + partition: partition || void 0, + region, + account, + resourceName, + sep: sep3, + arnFormat: detectedArnFormat + }); + } + /** + * Extract the full resource name from an ARN + * + * Necessary for resource names (paths) that may contain the separator, like + * `arn:aws:iam::111111111111:role/path/to/role/name`. + * + * Only works if we statically know the expected `resourceType` beforehand, since we're going + * to use that to split the string on ':/' (and take the right-hand side). + * + * We can't extract the 'resourceType' from the ARN at hand, because CloudFormation Expressions + * only allow literals in the 'separator' argument to `{ Fn::Split }`, and so it can't be + * `{ Fn::Select: [5, { Fn::Split: [':', ARN] }}`. + * + * Only necessary for ARN formats for which the type-name separator is `/`. + */ + static extractResourceName(arn, resourceType) { + const components = parseArnShape(arn); + if (components === "token") { + return Fn.select(1, Fn.split(`:${resourceType}/`, arn)); + } + const parsed = _Arn.split(arn, "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */); + if (!Token.isUnresolved(parsed.resource) && parsed.resource !== resourceType) { + throw new UnscopedValidationError(lit`ExpectedResourceType`, `Expected resource type '${resourceType}' in ARN, got '${parsed.resource}' in '${arn}'`); + } + if (!parsed.resourceName) { + throw new UnscopedValidationError(lit`ExpectedResourceName`, `Expected resource name in ARN, didn't find one: '${arn}'`); + } + return parsed.resourceName; + } + constructor() { + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts +function memoizedGetter(target, _context) { + let m; + function replacementMethod() { + if (!m) { + m = /* @__PURE__ */ new WeakMap(); + } + if (m.has(this)) { + return m.get(this); + } + const ret = target.call(this); + m.set(this, ret); + return ret; + } + return replacementMethod; +} +var init_memoize = __esm({ + "../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/core/lib/private/md5.ts +function md5hash(x) { + if (!_impl) { + try { + crypto.createHash("md5"); + _impl = cryptoMd5; + } catch { + _impl = jsMd5; + } + } + return _impl(x); +} +function cryptoMd5(x) { + const hash = crypto.createHash("md5"); + hash.update(x); + return hash.digest("hex"); +} +function jsMd5(s) { + return hex(md5Buffer(Buffer.from(s, "utf-8"))); +} +function md5Round(x, k) { + let a = x[0], b = x[1], c = x[2], d = x[3]; + a = F(a, b, c, d, k[0], 7, -680876936); + d = F(d, a, b, c, k[1], 12, -389564586); + c = F(c, d, a, b, k[2], 17, 606105819); + b = F(b, c, d, a, k[3], 22, -1044525330); + a = F(a, b, c, d, k[4], 7, -176418897); + d = F(d, a, b, c, k[5], 12, 1200080426); + c = F(c, d, a, b, k[6], 17, -1473231341); + b = F(b, c, d, a, k[7], 22, -45705983); + a = F(a, b, c, d, k[8], 7, 1770035416); + d = F(d, a, b, c, k[9], 12, -1958414417); + c = F(c, d, a, b, k[10], 17, -42063); + b = F(b, c, d, a, k[11], 22, -1990404162); + a = F(a, b, c, d, k[12], 7, 1804603682); + d = F(d, a, b, c, k[13], 12, -40341101); + c = F(c, d, a, b, k[14], 17, -1502002290); + b = F(b, c, d, a, k[15], 22, 1236535329); + a = G(a, b, c, d, k[1], 5, -165796510); + d = G(d, a, b, c, k[6], 9, -1069501632); + c = G(c, d, a, b, k[11], 14, 643717713); + b = G(b, c, d, a, k[0], 20, -373897302); + a = G(a, b, c, d, k[5], 5, -701558691); + d = G(d, a, b, c, k[10], 9, 38016083); + c = G(c, d, a, b, k[15], 14, -660478335); + b = G(b, c, d, a, k[4], 20, -405537848); + a = G(a, b, c, d, k[9], 5, 568446438); + d = G(d, a, b, c, k[14], 9, -1019803690); + c = G(c, d, a, b, k[3], 14, -187363961); + b = G(b, c, d, a, k[8], 20, 1163531501); + a = G(a, b, c, d, k[13], 5, -1444681467); + d = G(d, a, b, c, k[2], 9, -51403784); + c = G(c, d, a, b, k[7], 14, 1735328473); + b = G(b, c, d, a, k[12], 20, -1926607734); + a = H(a, b, c, d, k[5], 4, -378558); + d = H(d, a, b, c, k[8], 11, -2022574463); + c = H(c, d, a, b, k[11], 16, 1839030562); + b = H(b, c, d, a, k[14], 23, -35309556); + a = H(a, b, c, d, k[1], 4, -1530992060); + d = H(d, a, b, c, k[4], 11, 1272893353); + c = H(c, d, a, b, k[7], 16, -155497632); + b = H(b, c, d, a, k[10], 23, -1094730640); + a = H(a, b, c, d, k[13], 4, 681279174); + d = H(d, a, b, c, k[0], 11, -358537222); + c = H(c, d, a, b, k[3], 16, -722521979); + b = H(b, c, d, a, k[6], 23, 76029189); + a = H(a, b, c, d, k[9], 4, -640364487); + d = H(d, a, b, c, k[12], 11, -421815835); + c = H(c, d, a, b, k[15], 16, 530742520); + b = H(b, c, d, a, k[2], 23, -995338651); + a = I(a, b, c, d, k[0], 6, -198630844); + d = I(d, a, b, c, k[7], 10, 1126891415); + c = I(c, d, a, b, k[14], 15, -1416354905); + b = I(b, c, d, a, k[5], 21, -57434055); + a = I(a, b, c, d, k[12], 6, 1700485571); + d = I(d, a, b, c, k[3], 10, -1894986606); + c = I(c, d, a, b, k[10], 15, -1051523); + b = I(b, c, d, a, k[1], 21, -2054922799); + a = I(a, b, c, d, k[8], 6, 1873313359); + d = I(d, a, b, c, k[15], 10, -30611744); + c = I(c, d, a, b, k[6], 15, -1560198380); + b = I(b, c, d, a, k[13], 21, 1309151649); + a = I(a, b, c, d, k[4], 6, -145523070); + d = I(d, a, b, c, k[11], 10, -1120210379); + c = I(c, d, a, b, k[2], 15, 718787259); + b = I(b, c, d, a, k[9], 21, -343485551); + x[0] = add32(a, x[0]); + x[1] = add32(b, x[1]); + x[2] = add32(c, x[2]); + x[3] = add32(d, x[3]); +} +function cmn(q, a, b, x, s, t) { + a = add32(add32(a, q), add32(x, t)); + return add32(a << s | a >>> 32 - s, b); +} +function F(a, b, c, d, x, s, t) { + return cmn(b & c | ~b & d, a, b, x, s, t); +} +function G(a, b, c, d, x, s, t) { + return cmn(b & d | c & ~d, a, b, x, s, t); +} +function H(a, b, c, d, x, s, t) { + return cmn(b ^ c ^ d, a, b, x, s, t); +} +function I(a, b, c, d, x, s, t) { + return cmn(c ^ (b | ~d), a, b, x, s, t); +} +function md5Buffer(buf) { + let n = buf.length, state = [1732584193, -271733879, -1732584194, 271733878], i = 0; + for (; i + 64 <= n; i += 64) { + md5Round(state, bytesToWordsBuf(buf, i)); + } + const remainingBytes = n - i; + const padding = Buffer.alloc(64 - remainingBytes < 9 ? 128 : 64); + buf.copy(padding, 0, i); + padding.writeUint8(128, remainingBytes); + const bitLength = n * 8; + padding.writeUint32LE(n << 3, padding.length - 8); + if (bitLength >= 4294967295) { + padding.writeUint32LE(Math.floor(bitLength / 4294967295), padding.length - 4); + } + md5Round(state, bytesToWordsBuf(padding, 0)); + if (padding.length > 64) { + md5Round(state, bytesToWordsBuf(padding, 64)); + } + return state; +} +function bytesToWordsBuf(buf, byteOffset) { + const ret = new Array(16); + let i = 0, j = byteOffset; + for (; i < 16; i++, j += 4) { + ret[i] = buf.readUint32LE(j); + } + return ret; +} +function hexify(n) { + const s = new Array(); + for (let j = 0; j < 4; j++) { + s.push(hex_chr[n >>> j * 8 + 4 & 15] + hex_chr[n >>> j * 8 & 15]); + } + return s.join(""); +} +function hex(x) { + const ret = new Array(x.length); + for (let i = 0; i < x.length; i++) ret[i] = hexify(x[i]); + return ret.join(""); +} +function add32(a, b) { + return a + b & 4294967295; +} +var crypto, _impl, hex_chr; +var init_md5 = __esm({ + "../../aws-cdk-lib/core/lib/private/md5.ts"() { + "use strict"; + crypto = __toESM(require("crypto")); + hex_chr = "0123456789abcdef".split(""); + } +}); + +// ../../aws-cdk-lib/core/lib/private/unique-resource-name.ts +function makeUniqueResourceName(components, options) { + const maxLength = options.maxLength ?? 256; + const separator = options.separator ?? ""; + const prefix = options.prefix ?? ""; + components = components.filter((x) => x !== HIDDEN_ID); + if (components.length === 0) { + throw new UnscopedValidationError(lit`UnableToUnableCalculateUnique`, "Unable to calculate a unique resource name for an empty set of components"); + } + if (components.length === 1) { + const topLevelResource = prefix + removeNonAllowedSpecialCharacters(components[0], separator, options.allowedSpecialCharacters); + if (topLevelResource.length <= maxLength) { + return topLevelResource; + } + } + const hash = pathHash(components); + const human = prefix + removeDupes(components).filter((pathElement) => pathElement !== HIDDEN_FROM_HUMAN_ID).map((pathElement) => removeNonAllowedSpecialCharacters(pathElement, separator, options.allowedSpecialCharacters)).filter((pathElement) => pathElement).join(separator).concat(separator); + const maxhumanLength = maxLength - HASH_LEN; + return human.length > maxhumanLength ? `${splitInMiddle(human, maxhumanLength)}${hash}` : `${human}${hash}`; +} +function pathHash(path23) { + const md52 = md5hash(path23.join(PATH_SEP)); + return md52.slice(0, HASH_LEN).toUpperCase(); +} +function removeNonAllowedSpecialCharacters(s, _separator, allowedSpecialCharacters) { + const pattern = allowedSpecialCharacters ? `[^A-Za-z0-9${allowedSpecialCharacters}]` : "[^A-Za-z0-9]"; + const regex = new RegExp(pattern, "g"); + return s.replace(regex, ""); +} +function removeDupes(path23) { + const ret = new Array(); + for (const component of path23) { + if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) { + ret.push(component); + } + } + return ret; +} +function splitInMiddle(s, maxLength = MAX_LEN - HASH_LEN) { + const half = maxLength / 2; + return s.slice(0, half) + s.slice(-half); +} +var HIDDEN_FROM_HUMAN_ID, HIDDEN_ID, PATH_SEP, MAX_LEN, HASH_LEN; +var init_unique_resource_name = __esm({ + "../../aws-cdk-lib/core/lib/private/unique-resource-name.ts"() { + "use strict"; + init_errors(); + init_literal_string(); + init_md5(); + HIDDEN_FROM_HUMAN_ID = "Resource"; + HIDDEN_ID = "Default"; + PATH_SEP = "/"; + MAX_LEN = 256; + HASH_LEN = 8; + } +}); + +// ../../aws-cdk-lib/core/lib/private/uniqueid.ts +function makeUniqueId(components) { + components = components.filter((x) => x !== HIDDEN_ID2); + if (components.length === 0) { + throw new UnscopedValidationError(lit`UnableToCalculateUniqueId`, "Unable to calculate a unique id for an empty set of components"); + } + const unresolvedTokens = components.filter((c) => unresolved(c)); + if (unresolvedTokens.length > 0) { + throw new UnscopedValidationError(lit`ComponentsContainUnresolvedTokens`, `ID components may not include unresolved tokens: ${unresolvedTokens.join(",")}`); + } + if (components.length === 1) { + const candidate = removeNonAlphanumeric(components[0]); + if (candidate.length <= MAX_ID_LEN) { + return candidate; + } + } + const hash = pathHash2(components); + const human = removeDupes2(components).filter((x) => x !== HIDDEN_FROM_HUMAN_ID2).map(removeNonAlphanumeric).join("").slice(0, MAX_HUMAN_LEN); + return human + hash; +} +function pathHash2(path23) { + const md52 = md5hash(path23.join(PATH_SEP2)); + return md52.slice(0, HASH_LEN2).toUpperCase(); +} +function removeNonAlphanumeric(s) { + return s.replace(/[^A-Za-z0-9]/g, ""); +} +function removeDupes2(path23) { + const ret = new Array(); + for (const component of path23) { + if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) { + ret.push(component); + } + } + return ret; +} +var HIDDEN_FROM_HUMAN_ID2, HIDDEN_ID2, PATH_SEP2, HASH_LEN2, MAX_HUMAN_LEN, MAX_ID_LEN; +var init_uniqueid = __esm({ + "../../aws-cdk-lib/core/lib/private/uniqueid.ts"() { + "use strict"; + init_errors(); + init_encoding(); + init_literal_string(); + init_md5(); + HIDDEN_FROM_HUMAN_ID2 = "Resource"; + HIDDEN_ID2 = "Default"; + PATH_SEP2 = "/"; + HASH_LEN2 = 8; + MAX_HUMAN_LEN = 240; + MAX_ID_LEN = 255; + } +}); + +// ../../aws-cdk-lib/core/lib/names.ts +function isTopLevelStack(x) { + return STACK_TYPE.isMarked(x) && !unresolved(x.stackName); +} +function findLastIndex(xs, pred) { + for (let i = xs.length - 1; i >= 0; i--) { + if (pred(xs[i])) { + return i; + } + } + return -1; +} +var import_constructs4, Names; +var init_names = __esm({ + "../../aws-cdk-lib/core/lib/names.ts"() { + "use strict"; + import_constructs4 = __toESM(require_lib4()); + init_core_construct_finders(); + init_encoding(); + init_unique_resource_name(); + init_uniqueid(); + Names = class { + /** + * Returns a CloudFormation-compatible unique identifier for a construct based + * on its path. The identifier includes a human readable portion rendered + * from the path components and a hash suffix. uniqueId is not unique if multiple + * copies of the stack are deployed. Prefer using uniqueResourceName(). + * + * @param construct The construct + * @returns a unique id based on the construct path + */ + static uniqueId(construct) { + const node = import_constructs4.Node.of(construct); + const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id); + return components.length > 0 ? makeUniqueId(components) : ""; + } + /** + * Returns a CloudFormation-compatible unique identifier for a construct based + * on its path. The identifier includes a human readable portion rendered + * from the path components and a hash suffix. + * + * TODO (v2): replace with API to use `constructs.Node`. + * + * @param node The construct node + * @returns a unique id based on the construct path + */ + static nodeUniqueId(node) { + const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id); + return components.length > 0 ? makeUniqueId(components) : ""; + } + /** + * Returns a CloudFormation-compatible unique identifier for a construct based + * on its path. This function finds the stackName of the parent stack (non-nested) + * to the construct, and the ids of the components in the construct path. + * + * The user can define allowed special characters, a separator between the elements, + * and the maximum length of the resource name. The name includes a human readable portion rendered + * from the path components, with or without user defined separators, and a hash suffix. + * If the resource name is longer than the maximum length, it is trimmed in the middle. + * + * @param construct The construct + * @param options Options for defining the unique resource name + * @returns a unique resource name based on the construct path + */ + static uniqueResourceName(construct, options) { + const node = import_constructs4.Node.of(construct); + const scopes = node.scopes; + const isStack = scopes.map(isTopLevelStack); + const lastStackIndex = Math.max(findLastIndex(isStack, (x) => x), 0); + const componentsPath = node.scopes.slice(lastStackIndex).map((component) => isTopLevelStack(component) ? component.stackName : import_constructs4.Node.of(component).id); + return makeUniqueResourceName(componentsPath, options); + } + /** + * Return the construct path of the given construct, starting at the nearest enclosing Stack + * + * Skips over Nested Stacks, in other words Nested Stacks are included in the construct + * paths. + */ + static stackRelativeConstructPath(construct) { + const scopes = construct.node.scopes; + const isStack = scopes.map(isTopLevelStack); + const lastStackIndex = findLastIndex(isStack, (x) => x); + return scopes.slice(lastStackIndex + 1).map((x) => x.node.id).join("/"); + } + constructor() { + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/private/physical-name-generator.ts +function generatePhysicalName(resource) { + const stack = stackOf(resource); + const stackPart = new PrefixNamePart(stack.stackName, 25); + const idPart = new SuffixNamePart(Names.nodeUniqueId(resource.node), 24); + const region = stack.region; + if (Token.isUnresolved(region) || !region) { + throw new ValidationError(lit`CannotGeneratePhysicalNameRegionUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the region is un-resolved or missing`, resource); + } + const account = stack.account; + if (Token.isUnresolved(account) || !account) { + throw new ValidationError(lit`CannotGeneratePhysicalNameAccountUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the account is un-resolved or missing`, resource); + } + const parts = [stackPart, idPart].map((part) => part.generate()); + const hashLength = 12; + const sha256 = crypto2.createHash("sha256").update(stackPart.bareStr).update(idPart.bareStr).update(region).update(account); + const hash = sha256.digest("hex").slice(0, hashLength); + const ret = [...parts, hash].join(""); + return ret.toLowerCase(); +} +function isGeneratedWhenNeededMarker(val2) { + const token = TokenMap.instance().lookupString(val2); + return !!token && GENERATE_IF_NEEDED_SYMBOL in token; +} +var crypto2, import_constructs5, NamePart, PrefixNamePart, SuffixNamePart, GENERATE_IF_NEEDED_SYMBOL, GeneratedWhenNeededMarker; +var init_physical_name_generator = __esm({ + "../../aws-cdk-lib/core/lib/private/physical-name-generator.ts"() { + "use strict"; + crypto2 = __toESM(require("crypto")); + import_constructs5 = __toESM(require_lib4()); + init_token_map(); + init_errors(); + init_names(); + init_token(); + init_core_construct_finders(); + init_literal_string(); + NamePart = class { + bareStr; + constructor(bareStr) { + this.bareStr = bareStr; + } + }; + PrefixNamePart = class extends NamePart { + constructor(bareStr, prefixLength) { + super(bareStr); + this.prefixLength = prefixLength; + } + prefixLength; + generate() { + return this.bareStr.slice(0, this.prefixLength); + } + }; + SuffixNamePart = class extends NamePart { + constructor(str, suffixLength) { + super(str); + this.suffixLength = suffixLength; + } + suffixLength; + generate() { + const strLen = this.bareStr.length; + const startIndex = Math.max(strLen - this.suffixLength, 0); + return this.bareStr.slice(startIndex, strLen); + } + }; + GENERATE_IF_NEEDED_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core..GenerateIfNeeded"); + GeneratedWhenNeededMarker = class { + creationStack = ["Token stack traces are no longer captured"]; + constructor() { + Object.defineProperty(this, GENERATE_IF_NEEDED_SYMBOL, { value: true }); + } + resolve(_ctx) { + throw new UnscopedValidationError(lit`InvalidPhysicalNameMarker`, 'Invalid physical name passed to CloudFormation. Use "this.physicalName" instead'); + } + toString() { + return "PhysicalName.GENERATE_IF_NEEDED"; + } + }; + } +}); + +// ../../aws-cdk-lib/core/lib/private/constants.ts +var ALLOWED_FQN_PREFIXES; +var init_constants2 = __esm({ + "../../aws-cdk-lib/core/lib/private/constants.ts"() { + "use strict"; + ALLOWED_FQN_PREFIXES = [ + // SCOPES + "@aws-cdk/", + "@aws-cdk-containers/", + "@aws-solutions-konstruk/", + "@aws-solutions-constructs/", + "@amzn/", + "@cdklabs/", + // PACKAGES + "aws-rfdk.", + "aws-cdk-lib.", + "cdk8s." + ]; + } +}); + +// ../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts +function addMetadata(construct, mixin) { + let reportedValue = "*"; + const fqn = Object.getPrototypeOf(mixin).constructor[JSII_RUNTIME_SYMBOL2]?.fqn; + if (fqn && ALLOWED_FQN_PREFIXES.find((prefix) => fqn.startsWith(prefix))) { + reportedValue = fqn; + } + construct.node.addMetadata(MIXIN_METADATA_KEY, { mixin: reportedValue }); +} +function applyMixin(construct, mixin) { + addMetadata(construct, mixin); + mixin.applyTo(construct); +} +function withMixins(target, ...mixins) { + const allConstructs = target.node.findAll(); + for (const mixin of mixins) { + for (const construct of allConstructs) { + if (mixin.supports(construct)) { + applyMixin(construct, mixin); + } + } + } + return target; +} +var MIXIN_METADATA_KEY; +var init_mixin_metadata = __esm({ + "../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts"() { + "use strict"; + init_constants(); + init_constants2(); + MIXIN_METADATA_KEY = "aws:cdk:analytics:mixin"; + } +}); + +// ../../aws-cdk-lib/core/lib/resource.ts +function mimicReference(refSource, producer) { + const reference = Tokenization.reverse(refSource, { + // If this is an ARN concatenation, just fail to extract a reference. + failConcat: false + }); + if (!Reference.isReference(reference)) { + return Lazy.uncachedString(producer); + } + return Token.asString(new class extends Reference { + resolve(context) { + return producer.produce(context); + } + }(reference, reference.target, reference.displayName)); +} +var import_constructs6, _physicalName_dec, _env_dec, _stack_dec, _a, _init, Resource; +var init_resource = __esm({ + "../../aws-cdk-lib/core/lib/resource.ts"() { + "use strict"; + import_constructs6 = __toESM(require_lib4()); + init_arn(); + init_cfn_resource(); + init_constants(); + init_errors(); + init_helpers_internal(); + init_memoize(); + init_lazy(); + init_core_construct_finders(); + init_physical_name_generator(); + init_reference(); + init_token(); + init_mixin_metadata(); + init_literal_string(); + Resource = class extends (_a = import_constructs6.Construct, _stack_dec = [memoizedGetter], _env_dec = [memoizedGetter], _physicalName_dec = [memoizedGetter], _a) { + constructor(scope, id, props = {}) { + super(scope, id); + __runInitializers(_init, 5, this); + __publicField(this, "_allowCrossEnvironment"); + /** Account given in the constructor, if any. Will be same as Stack if not supplied. */ + __publicField(this, "_customAccount"); + /** Account given in the constructor, if any. Will be same as Stack if not supplied.*/ + __publicField(this, "_customRegion"); + /** What we are doing for the physical name */ + __publicField(this, "_physicalNameMode"); + /** The physicalName supplied into the constructor */ + __publicField(this, "_givenPhysicalName"); + /** The generated physical name, in case of cross-env access */ + __publicField(this, "_generatedPhysicalName", Box.fromValue(void 0)); + if ((props.account !== void 0 || props.region !== void 0) && props.environmentFromArn !== void 0) { + throw new ValidationError(lit`ConflictingEnvironmentOptions`, `Supply at most one of 'account'/'region' (${props.account}/${props.region}) and 'environmentFromArn' (${props.environmentFromArn})`, this); + } + Object.defineProperty(this, RESOURCE_SYMBOL, { value: true }); + const parsedArn = props.environmentFromArn ? ( + // Since we only want the region and account, NO_RESOURCE_NAME is good enough + Arn.split(props.environmentFromArn, "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */) + ) : void 0; + this._customAccount = props.account ?? parsedArn?.account; + this._customRegion = props.region ?? parsedArn?.region; + this._givenPhysicalName = props.physicalName; + if (props.physicalName && isGeneratedWhenNeededMarker(props.physicalName)) { + this._physicalNameMode = "generate"; + this._allowCrossEnvironment = true; + } else if (props.physicalName && !Token.isUnresolved(props.physicalName)) { + this._physicalNameMode = "given-resolved"; + this._allowCrossEnvironment = true; + } else { + this._physicalNameMode = "deploy-time"; + this._allowCrossEnvironment = false; + } + } + /** + * Check whether the given construct is a Resource + */ + static isResource(construct) { + return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct; + } + /** + * Returns true if the construct was created by CDK, and false otherwise + */ + static isOwnedResource(construct) { + return construct.node.defaultChild ? CfnResource.isCfnResource(construct.node.defaultChild) : false; + } + get stack() { + return stackOf(this); + } + get env() { + return { + account: this._customAccount ?? this.stack.account, + region: this._customRegion ?? this.stack.region + }; + } + with(...mixins) { + return withMixins(this, ...mixins); + } + get physicalName() { + switch (this._physicalNameMode) { + case "generate": + return Token.asString(this._generatedPhysicalName); + case "given-resolved": + return this._givenPhysicalName; + case "deploy-time": + return this._givenPhysicalName ?? Token.asString(void 0); + } + } + /** + * Called when this resource is referenced across environments + * (account/region) to order to request that a physical name will be generated + * for this resource during synthesis, so the resource can be referenced + * through its absolute name/arn. + * + * @internal + */ + _enableCrossEnvironment() { + if (!this._allowCrossEnvironment) { + throw new ValidationError(lit`CannotUseCrossEnvironment`, `Cannot use resource '${this.node.path}' in a cross-environment fashion, the resource's physical name must be explicit set or use \`PhysicalName.GENERATE_IF_NEEDED\``, this); + } + this._generatedPhysicalName.update( + (name) => this._physicalNameMode === "generate" && !name ? this.generatePhysicalName() : name + ); + } + /** + * Apply the given removal policy to this resource + * + * The Removal Policy controls what happens to this resource when it stops + * being managed by CloudFormation, either because you've removed it from the + * CDK application or because you've made a change that requires the resource + * to be replaced. + * + * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS + * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). + */ + applyRemovalPolicy(policy) { + const child = this.node.defaultChild; + if (!child || !CfnResource.isCfnResource(child)) { + throw new ValidationError(lit`CannotApplyRemovalPolicy`, "Cannot apply RemovalPolicy: no child or not a CfnResource. Apply the removal policy on the CfnResource directly.", this); + } + child.applyRemovalPolicy(policy); + } + /** + * Override the cross-stack reference strength for this resource. + * + * When set, any cross-stack reference to this resource will use the specified + * mechanism instead of the global default determined by the + * `@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for + * selectively weakening specific references to avoid the "deadly embrace" problem + * without changing the app-wide default. + * + * @param strength - The reference strength to use for this resource. + */ + applyCrossStackReferenceStrength(strength) { + const child = this.node.defaultChild; + if (!child || !CfnResource.isCfnResource(child)) { + throw new ValidationError(lit`CannotApplyCrossStackReferenceStrength`, "Cannot apply CrossStackReferenceStrength: no child or not a CfnResource. Apply the override on the CfnResource directly.", this); + } + child.applyCrossStackReferenceStrength(strength); + } + generatePhysicalName() { + return generatePhysicalName(this); + } + /** + * Returns an environment-sensitive token that should be used for the + * resource's "name" attribute (e.g. `bucket.bucketName`). + * + * Normally, this token will resolve to `nameAttr`, but if the resource is + * referenced across environments, it will be resolved to `this.physicalName`, + * which will be a concrete name. + * + * @param nameAttr The CFN attribute which resolves to the resource's name. + * Commonly this is the resource's `ref`. + */ + getResourceNameAttribute(nameAttr) { + return mimicReference(nameAttr, { + produce: (context) => { + const consumingStack = stackOf(context.scope); + if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) { + this._enableCrossEnvironment(); + return this.physicalName; + } else { + return nameAttr; + } + } + }); + } + /** + * Returns an environment-sensitive token that should be used for the + * resource's "ARN" attribute (e.g. `bucket.bucketArn`). + * + * Normally, this token will resolve to `arnAttr`, but if the resource is + * referenced across environments, `arnComponents` will be used to synthesize + * a concrete ARN with the resource's physical name. Make sure to reference + * `this.physicalName` in `arnComponents`. + * + * @param arnAttr The CFN attribute which resolves to the ARN of the resource. + * Commonly it will be called "Arn" (e.g. `resource.attrArn`), but sometimes + * it's the CFN resource's `ref`. + * @param arnComponents The format of the ARN of this resource. You must + * reference `this.physicalName` somewhere within the ARN in order for + * cross-environment references to work. + * + */ + getResourceArnAttribute(arnAttr, arnComponents) { + return mimicReference(arnAttr, { + produce: (context) => { + const consumingStack = stackOf(context.scope); + if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) { + this._enableCrossEnvironment(); + return this.stack.formatArn(arnComponents); + } else { + return arnAttr; + } + } + }); + } + }; + _init = __decoratorStart(_a); + __decorateElement(_init, 2, "stack", _stack_dec, Resource); + __decorateElement(_init, 2, "env", _env_dec, Resource); + __decorateElement(_init, 2, "physicalName", _physicalName_dec, Resource); + __decoratorMetadata(_init, Resource); + } +}); + +// ../../aws-cdk-lib/core/lib/custom-resource.ts +function uppercaseProperties(props) { + const ret = {}; + Object.keys(props).forEach((key) => { + const upper = key.slice(0, 1).toUpperCase() + key.slice(1); + ret[upper] = props[key]; + }); + return ret; +} +function renderResourceType(scope, resourceType) { + if (!resourceType) { + return "AWS::CloudFormation::CustomResource"; + } + if (!resourceType.startsWith("Custom::")) { + throw new ValidationError(lit`MustBeCustomResourceType`, `Custom resource type must begin with "Custom::" (${resourceType})`, scope); + } + if (resourceType.length > 60) { + throw new ValidationError(lit`CustomResourceTypeLength`, `Custom resource type length > 60 (${resourceType})`, scope); + } + const typeName = resourceType.slice(resourceType.indexOf("::") + 2); + if (!/^[a-z0-9_@-]+$/i.test(typeName)) { + throw new ValidationError(lit`CustomResourceTypeNameInclude`, `Custom resource type name can only include alphanumeric characters and _@- (${typeName})`, scope); + } + return resourceType; +} +var _getAttString_dec, _getAtt_dec, _a2, _CustomResource_decorators, _init2, CustomResource; +var init_custom_resource = __esm({ + "../../aws-cdk-lib/core/lib/custom-resource.ts"() { + "use strict"; + init_annotations(); + init_cfn_resource(); + init_errors(); + init_metadata_resource(); + init_no_box_stack_traces(); + init_literal_string(); + init_prop_injectable(); + init_removal_policy(); + init_resource(); + init_token(); + _CustomResource_decorators = [noBoxStackTraces, propertyInjectable]; + CustomResource = class extends (_a2 = Resource, _getAtt_dec = [MethodMetadata()], _getAttString_dec = [MethodMetadata()], _a2) { + constructor(scope, id, props) { + super(scope, id); + __runInitializers(_init2, 5, this); + __publicField(this, "resource"); + addConstructMetadata(this, props); + const type = renderResourceType(this, props.resourceType); + const pascalCaseProperties = props.pascalCaseProperties ?? false; + const properties = pascalCaseProperties ? uppercaseProperties(props.properties || {}) : props.properties || {}; + if (props.serviceTimeout !== void 0 && !props.serviceTimeout.isUnresolved()) { + const serviceTimeoutSeconds = props.serviceTimeout.toSeconds(); + if (serviceTimeoutSeconds < 1 || serviceTimeoutSeconds > 3600) { + throw new ValidationError(lit`ServiceTimeoutSeconds`, `serviceTimeout must either be between 1 and 3600 seconds, got ${serviceTimeoutSeconds}`, this); + } + } + const constructPropertiesPassed = { + ServiceToken: props.serviceToken, + ServiceTimeout: props.serviceTimeout?.toSeconds().toString() + }; + const hasCommonKeys = Object.keys(properties).some((key) => key in constructPropertiesPassed); + if (hasCommonKeys) { + Annotations.of(this).addWarningV2("@aws-cdk/core:customResourcePropConflict", `The following keys will be overwritten as they exist in the 'properties' prop. Keys found: ${Object.keys(properties).filter((key) => key in constructPropertiesPassed)}`); + } + this.resource = new CfnResource(this, "Default", { + type, + properties: { + ...constructPropertiesPassed, + ...properties + } + }); + this.resource.applyRemovalPolicy(props.removalPolicy, { + default: "destroy" /* DESTROY */ + }); + } + /** + * The physical name of this custom resource. + */ + get ref() { + return this.resource.ref; + } + getAtt(attributeName) { + return this.resource.getAtt(attributeName); + } + getAttString(attributeName) { + return Token.asString(this.getAtt(attributeName)); + } + }; + _init2 = __decoratorStart(_a2); + __decorateElement(_init2, 1, "getAtt", _getAtt_dec, CustomResource); + __decorateElement(_init2, 1, "getAttString", _getAttString_dec, CustomResource); + CustomResource = __decorateElement(_init2, 0, "CustomResource", _CustomResource_decorators, CustomResource); + /** Uniquely identifies this class. */ + __publicField(CustomResource, "PROPERTY_INJECTION_ID", "aws-cdk-lib.core.CustomResource"); + __runInitializers(_init2, 1, CustomResource); + } +}); + +// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts +var init_consts = __esm({ + "../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts +var INLINE_CUSTOM_RESOURCE_CONTEXT; +var init_shared = __esm({ + "../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts"() { + "use strict"; + INLINE_CUSTOM_RESOURCE_CONTEXT = "@aws-cdk/core:inlineCustomResourceIfPossible"; + } +}); + +// ../../aws-cdk-lib/core/lib/assets.ts +var init_assets = __esm({ + "../../aws-cdk-lib/core/lib/assets.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js +var require_ignore = __commonJS({ + "../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js"(exports2, module2) { + "use strict"; + var path23 = require("path"); + var factory = (options) => new IgnoreBase(options); + factory.default = factory; + module2.exports = factory; + function make_array(subject) { + return Array.isArray(subject) ? subject : [subject]; + } + var REGEX_TRAILING_SLASH = /(?<=.)\/$/; + var REGEX_TRAILING_BACKSLASH = /(?<=.)\\$/; + var REGEX_TRAILING_PATH_SEP = path23.sep === "\\" ? REGEX_TRAILING_BACKSLASH : REGEX_TRAILING_SLASH; + var KEY_IGNORE = typeof Symbol !== "undefined" ? /* @__PURE__ */ Symbol.for("dockerignore") : "dockerignore"; + function cleanPath(file) { + return path23.normalize(file).replace(REGEX_TRAILING_PATH_SEP, ""); + } + function toSlash(file) { + if (path23.sep === "/") { + return file; + } + return file.replace(/\\/g, "/"); + } + function fromSlash(file) { + if (path23.sep === "/") { + return file; + } + return file.replace(/\//g, path23.sep); + } + var IgnoreBase = class { + constructor({ + // https://github.com/kaelzhang/node-ignore/blob/5.1.4/index.js#L372 + ignorecase = true + } = {}) { + this._rules = []; + this._ignorecase = ignorecase; + this[KEY_IGNORE] = true; + this._initCache(); + } + _initCache() { + this._cache = {}; + } + // @param {Array.|string|Ignore} pattern + add(pattern) { + this._added = false; + if (typeof pattern === "string") { + pattern = pattern.split(/\r?\n/g); + } + make_array(pattern).forEach(this._addPattern, this); + if (this._added) { + this._initCache(); + } + return this; + } + // legacy + addPattern(pattern) { + return this.add(pattern); + } + _addPattern(pattern) { + if (pattern && pattern[KEY_IGNORE]) { + this._rules = this._rules.concat(pattern._rules); + this._added = true; + return; + } + if (this._checkPattern(pattern)) { + const rule = this._createRule(pattern.trim()); + if (rule !== null) { + this._added = true; + this._rules.push(rule); + } + } + } + _checkPattern(pattern) { + return pattern && typeof pattern === "string" && pattern.indexOf("#") !== 0 && pattern.trim() !== ""; + } + filter(paths) { + return make_array(paths).filter((path24) => this._filter(path24)); + } + createFilter() { + return (path24) => this._filter(path24); + } + ignores(path24) { + return !this._filter(path24); + } + // https://github.com/moby/moby/blob/v19.03.8/builder/dockerignore/dockerignore.go#L41-L53 + // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L29-L55 + _createRule(pattern) { + const origin = pattern; + let negative = false; + if (pattern[0] === "!") { + negative = true; + pattern = pattern.substring(1).trim(); + } + if (pattern.length > 0) { + pattern = cleanPath(pattern); + pattern = toSlash(pattern); + if (pattern.length > 1 && pattern[0] === "/") { + pattern = pattern.slice(1); + } + } + if (negative) { + pattern = "!" + pattern; + } + pattern = pattern.trim(); + if (pattern === "") { + return null; + } + pattern = cleanPath(pattern); + if (pattern[0] === "!") { + if (pattern.length === 1) { + return null; + } + negative = true; + pattern = pattern.substring(1); + } else { + negative = false; + } + return { + origin, + pattern, + // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L54 + dirs: pattern.split(path23.sep), + negative + }; + } + // @returns `Boolean` true if the `path` is NOT ignored + _filter(path24) { + if (!path24) { + return false; + } + if (path24 in this._cache) { + return this._cache[path24]; + } + return this._cache[path24] = this._test(path24); + } + // @returns {Boolean} true if a file is NOT ignored + // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L62 + _test(file) { + file = fromSlash(file); + const parentPath = cleanPath(path23.dirname(file)); + const parentPathDirs = parentPath.split(path23.sep); + let matched = false; + this._rules.forEach((rule) => { + let match = this._match(file, rule); + if (!match && parentPath !== ".") { + if (rule.dirs.includes("**")) { + for (let i = rule.dirs.filter((x) => x !== "**").length; i <= parentPathDirs.length; i++) { + match = match || this._match(parentPathDirs.slice(0, i).join(path23.sep), rule); + } + } else if (rule.dirs.length <= parentPathDirs.length) { + match = this._match(parentPathDirs.slice(0, rule.dirs.length).join(path23.sep), rule); + } + } + if (match) { + matched = !rule.negative; + } + }); + return !matched; + } + // @returns {Boolean} true if a file is matched by a rule + _match(file, rule) { + return this._compile(rule).regexp.test(file); + } + // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L139 + _compile(rule) { + if (rule.regexp) { + return rule; + } + let regStr = "^"; + let escapedSlash = path23.sep === "\\" ? "\\\\" : path23.sep; + for (let i = 0; i < rule.pattern.length; i++) { + const ch = rule.pattern[i]; + if (ch === "*") { + if (rule.pattern[i + 1] === "*") { + i++; + if (rule.pattern[i + 1] === path23.sep) { + i++; + } + if (rule.pattern[i + 1] === void 0) { + regStr += ".*"; + } else { + regStr += `(.*${escapedSlash})?`; + } + } else { + regStr += `[^${escapedSlash}]*`; + } + } else if (ch === "?") { + regStr += `[^${escapedSlash}]`; + } else if (ch === "." || ch === "$") { + regStr += `\\${ch}`; + } else if (ch === "\\") { + if (path23.sep === "\\") { + regStr += escapedSlash; + continue; + } + if (rule.pattern[i + 1] !== void 0) { + regStr += "\\" + rule.pattern[i + 1]; + i++; + } else { + regStr += "\\"; + } + } else { + regStr += ch; + } + } + regStr += "$"; + rule.regexp = new RegExp(regStr, this._ignorecase ? "i" : ""); + return rule; + } + }; + } +}); + +// ../../aws-cdk-lib/node_modules/ignore/index.js +var require_ignore2 = __commonJS({ + "../../aws-cdk-lib/node_modules/ignore/index.js"(exports2, module2) { + function makeArray(subject) { + return Array.isArray(subject) ? subject : [subject]; + } + var EMPTY = ""; + var SPACE = " "; + var ESCAPE = "\\"; + var REGEX_TEST_BLANK_LINE = /^\s+$/; + var REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/; + var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/; + var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/; + var REGEX_SPLITALL_CRLF = /\r?\n/g; + var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/; + var SLASH = "/"; + var TMP_KEY_IGNORE = "node-ignore"; + if (typeof Symbol !== "undefined") { + TMP_KEY_IGNORE = /* @__PURE__ */ Symbol.for("node-ignore"); + } + var KEY_IGNORE = TMP_KEY_IGNORE; + var define = (object, key, value) => Object.defineProperty(object, key, { value }); + var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g; + var RETURN_FALSE = () => false; + var sanitizeRange = (range4) => range4.replace( + REGEX_REGEXP_RANGE, + (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) ? match : EMPTY + ); + var cleanRangeBackSlash = (slashes) => { + const { length } = slashes; + return slashes.slice(0, length - length % 2); + }; + var REPLACERS = [ + [ + // remove BOM + // TODO: + // Other similar zero-width characters? + /^\uFEFF/, + () => EMPTY + ], + // > Trailing spaces are ignored unless they are quoted with backslash ("\") + [ + // (a\ ) -> (a ) + // (a ) -> (a) + // (a ) -> (a) + // (a \ ) -> (a ) + /((?:\\\\)*?)(\\?\s+)$/, + (_, m1, m2) => m1 + (m2.indexOf("\\") === 0 ? SPACE : EMPTY) + ], + // replace (\ ) with ' ' + // (\ ) -> ' ' + // (\\ ) -> '\\ ' + // (\\\ ) -> '\\ ' + [ + /(\\+?)\s/g, + (_, m1) => { + const { length } = m1; + return m1.slice(0, length - length % 2) + SPACE; + } + ], + // Escape metacharacters + // which is written down by users but means special for regular expressions. + // > There are 12 characters with special meanings: + // > - the backslash \, + // > - the caret ^, + // > - the dollar sign $, + // > - the period or dot ., + // > - the vertical bar or pipe symbol |, + // > - the question mark ?, + // > - the asterisk or star *, + // > - the plus sign +, + // > - the opening parenthesis (, + // > - the closing parenthesis ), + // > - and the opening square bracket [, + // > - the opening curly brace {, + // > These special characters are often called "metacharacters". + [ + /[\\$.|*+(){^]/g, + (match) => `\\${match}` + ], + [ + // > a question mark (?) matches a single character + /(?!\\)\?/g, + () => "[^/]" + ], + // leading slash + [ + // > A leading slash matches the beginning of the pathname. + // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c". + // A leading slash matches the beginning of the pathname + /^\//, + () => "^" + ], + // replace special metacharacter slash after the leading slash + [ + /\//g, + () => "\\/" + ], + [ + // > A leading "**" followed by a slash means match in all directories. + // > For example, "**/foo" matches file or directory "foo" anywhere, + // > the same as pattern "foo". + // > "**/foo/bar" matches file or directory "bar" anywhere that is directly + // > under directory "foo". + // Notice that the '*'s have been replaced as '\\*' + /^\^*\\\*\\\*\\\//, + // '**/foo' <-> 'foo' + () => "^(?:.*\\/)?" + ], + // starting + [ + // there will be no leading '/' + // (which has been replaced by section "leading slash") + // If starts with '**', adding a '^' to the regular expression also works + /^(?=[^^])/, + function startingReplacer() { + return !/\/(?!$)/.test(this) ? "(?:^|\\/)" : "^"; + } + ], + // two globstars + [ + // Use lookahead assertions so that we could match more than one `'/**'` + /\\\/\\\*\\\*(?=\\\/|$)/g, + // Zero, one or several directories + // should not use '*', or it will be replaced by the next replacer + // Check if it is not the last `'/**'` + (_, index, str) => index + 6 < str.length ? "(?:\\/[^\\/]+)*" : "\\/.+" + ], + // normal intermediate wildcards + [ + // Never replace escaped '*' + // ignore rule '\*' will match the path '*' + // 'abc.*/' -> go + // 'abc.*' -> skip this rule, + // coz trailing single wildcard will be handed by [trailing wildcard] + /(^|[^\\]+)(\\\*)+(?=.+)/g, + // '*.js' matches '.js' + // '*.js' doesn't match 'abc' + (_, p1, p2) => { + const unescaped = p2.replace(/\\\*/g, "[^\\/]*"); + return p1 + unescaped; + } + ], + [ + // unescape, revert step 3 except for back slash + // For example, if a user escape a '\\*', + // after step 3, the result will be '\\\\\\*' + /\\\\\\(?=[$.|*+(){^])/g, + () => ESCAPE + ], + [ + // '\\\\' -> '\\' + /\\\\/g, + () => ESCAPE + ], + [ + // > The range notation, e.g. [a-zA-Z], + // > can be used to match one of the characters in a range. + // `\` is escaped by step 3 + /(\\)?\[([^\]/]*?)(\\*)($|\])/g, + (match, leadEscape, range4, endEscape, close) => leadEscape === ESCAPE ? `\\[${range4}${cleanRangeBackSlash(endEscape)}${close}` : close === "]" ? endEscape.length % 2 === 0 ? `[${sanitizeRange(range4)}${endEscape}]` : "[]" : "[]" + ], + // ending + [ + // 'js' will not match 'js.' + // 'ab' will not match 'abc' + /(?:[^*])$/, + // WTF! + // https://git-scm.com/docs/gitignore + // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1) + // which re-fixes #24, #38 + // > If there is a separator at the end of the pattern then the pattern + // > will only match directories, otherwise the pattern can match both + // > files and directories. + // 'js*' will not match 'a.js' + // 'js/' will not match 'a.js' + // 'js' will match 'a.js' and 'a.js/' + (match) => /\/$/.test(match) ? `${match}$` : `${match}(?=$|\\/$)` + ], + // trailing wildcard + [ + /(\^|\\\/)?\\\*$/, + (_, p1) => { + const prefix = p1 ? `${p1}[^/]+` : "[^/]*"; + return `${prefix}(?=$|\\/$)`; + } + ] + ]; + var regexCache = /* @__PURE__ */ Object.create(null); + var makeRegex = (pattern, ignoreCase) => { + let source = regexCache[pattern]; + if (!source) { + source = REPLACERS.reduce( + (prev, [matcher, replacer]) => prev.replace(matcher, replacer.bind(pattern)), + pattern + ); + regexCache[pattern] = source; + } + return ignoreCase ? new RegExp(source, "i") : new RegExp(source); + }; + var isString = (subject) => typeof subject === "string"; + var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) && pattern.indexOf("#") !== 0; + var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF); + var IgnoreRule = class { + constructor(origin, pattern, negative, regex) { + this.origin = origin; + this.pattern = pattern; + this.negative = negative; + this.regex = regex; + } + }; + var createRule = (pattern, ignoreCase) => { + const origin = pattern; + let negative = false; + if (pattern.indexOf("!") === 0) { + negative = true; + pattern = pattern.substr(1); + } + pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#"); + const regex = makeRegex(pattern, ignoreCase); + return new IgnoreRule( + origin, + pattern, + negative, + regex + ); + }; + var throwError = (message, Ctor) => { + throw new Ctor(message); + }; + var checkPath = (path23, originalPath, doThrow) => { + if (!isString(path23)) { + return doThrow( + `path must be a string, but got \`${originalPath}\``, + TypeError + ); + } + if (!path23) { + return doThrow(`path must not be empty`, TypeError); + } + if (checkPath.isNotRelative(path23)) { + const r = "`path.relative()`d"; + return doThrow( + `path should be a ${r} string, but got "${originalPath}"`, + RangeError + ); + } + return true; + }; + var isNotRelative = (path23) => REGEX_TEST_INVALID_PATH.test(path23); + checkPath.isNotRelative = isNotRelative; + checkPath.convert = (p) => p; + var Ignore = class { + constructor({ + ignorecase = true, + ignoreCase = ignorecase, + allowRelativePaths = false + } = {}) { + define(this, KEY_IGNORE, true); + this._rules = []; + this._ignoreCase = ignoreCase; + this._allowRelativePaths = allowRelativePaths; + this._initCache(); + } + _initCache() { + this._ignoreCache = /* @__PURE__ */ Object.create(null); + this._testCache = /* @__PURE__ */ Object.create(null); + } + _addPattern(pattern) { + if (pattern && pattern[KEY_IGNORE]) { + this._rules = this._rules.concat(pattern._rules); + this._added = true; + return; + } + if (checkPattern(pattern)) { + const rule = createRule(pattern, this._ignoreCase); + this._added = true; + this._rules.push(rule); + } + } + // @param {Array | string | Ignore} pattern + add(pattern) { + this._added = false; + makeArray( + isString(pattern) ? splitPattern(pattern) : pattern + ).forEach(this._addPattern, this); + if (this._added) { + this._initCache(); + } + return this; + } + // legacy + addPattern(pattern) { + return this.add(pattern); + } + // | ignored : unignored + // negative | 0:0 | 0:1 | 1:0 | 1:1 + // -------- | ------- | ------- | ------- | -------- + // 0 | TEST | TEST | SKIP | X + // 1 | TESTIF | SKIP | TEST | X + // - SKIP: always skip + // - TEST: always test + // - TESTIF: only test if checkUnignored + // - X: that never happen + // @param {boolean} whether should check if the path is unignored, + // setting `checkUnignored` to `false` could reduce additional + // path matching. + // @returns {TestResult} true if a file is ignored + _testOne(path23, checkUnignored) { + let ignored = false; + let unignored = false; + this._rules.forEach((rule) => { + const { negative } = rule; + if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) { + return; + } + const matched = rule.regex.test(path23); + if (matched) { + ignored = !negative; + unignored = negative; + } + }); + return { + ignored, + unignored + }; + } + // @returns {TestResult} + _test(originalPath, cache, checkUnignored, slices) { + const path23 = originalPath && checkPath.convert(originalPath); + checkPath( + path23, + originalPath, + this._allowRelativePaths ? RETURN_FALSE : throwError + ); + return this._t(path23, cache, checkUnignored, slices); + } + _t(path23, cache, checkUnignored, slices) { + if (path23 in cache) { + return cache[path23]; + } + if (!slices) { + slices = path23.split(SLASH); + } + slices.pop(); + if (!slices.length) { + return cache[path23] = this._testOne(path23, checkUnignored); + } + const parent = this._t( + slices.join(SLASH) + SLASH, + cache, + checkUnignored, + slices + ); + return cache[path23] = parent.ignored ? parent : this._testOne(path23, checkUnignored); + } + ignores(path23) { + return this._test(path23, this._ignoreCache, false).ignored; + } + createFilter() { + return (path23) => !this.ignores(path23); + } + filter(paths) { + return makeArray(paths).filter(this.createFilter()); + } + // @returns {TestResult} + test(path23) { + return this._test(path23, this._testCache, true); + } + }; + var factory = (options) => new Ignore(options); + var isPathValid = (path23) => checkPath(path23 && checkPath.convert(path23), path23, RETURN_FALSE); + factory.isPathValid = isPathValid; + factory.default = factory; + module2.exports = factory; + if ( + // Detect `process` so that it can run in browsers. + typeof process !== "undefined" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32") + ) { + const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/"); + checkPath.convert = makePosix; + const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i; + checkPath.isNotRelative = (path23) => REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path23) || isNotRelative(path23); + } + } +}); + +// ../../aws-cdk-lib/core/lib/fs/options.ts +var init_options = __esm({ + "../../aws-cdk-lib/core/lib/fs/options.ts"() { + "use strict"; + } +}); + +// ../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js +var require_commonjs = __commonJS({ + "../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.range = exports2.balanced = void 0; + var balanced = (a, b, str) => { + const ma = a instanceof RegExp ? maybeMatch(a, str) : a; + const mb = b instanceof RegExp ? maybeMatch(b, str) : b; + const r = ma !== null && mb != null && (0, exports2.range)(ma, mb, str); + return r && { + start: r[0], + end: r[1], + pre: str.slice(0, r[0]), + body: str.slice(r[0] + ma.length, r[1]), + post: str.slice(r[1] + mb.length) + }; + }; + exports2.balanced = balanced; + var maybeMatch = (reg, str) => { + const m = str.match(reg); + return m ? m[0] : null; + }; + var range4 = (a, b, str) => { + let begs, beg, left, right = void 0, result; + let ai = str.indexOf(a); + let bi = str.indexOf(b, ai + 1); + let i = ai; + if (ai >= 0 && bi > 0) { + if (a === b) { + return [ai, bi]; + } + begs = []; + left = str.length; + while (i >= 0 && !result) { + if (i === ai) { + begs.push(i); + ai = str.indexOf(a, i + 1); + } else if (begs.length === 1) { + const r = begs.pop(); + if (r !== void 0) + result = [r, bi]; + } else { + beg = begs.pop(); + if (beg !== void 0 && beg < left) { + left = beg; + right = bi; + } + bi = str.indexOf(b, i + 1); + } + i = ai < bi && ai >= 0 ? ai : bi; + } + if (begs.length && right !== void 0) { + result = [left, right]; + } + } + return result; + }; + exports2.range = range4; + } +}); + +// ../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js +var require_commonjs2 = __commonJS({ + "../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EXPANSION_MAX_REWRITES = exports2.EXPANSION_MAX_DEPTH = exports2.EXPANSION_MAX_LENGTH = exports2.EXPANSION_MAX = void 0; + exports2.expand = expand; + var balanced_match_1 = require_commonjs(); + var escSlash = "\0SLASH" + Math.random() + "\0"; + var escOpen = "\0OPEN" + Math.random() + "\0"; + var escClose = "\0CLOSE" + Math.random() + "\0"; + var escComma = "\0COMMA" + Math.random() + "\0"; + var escPeriod = "\0PERIOD" + Math.random() + "\0"; + var escSlashPattern = new RegExp(escSlash, "g"); + var escOpenPattern = new RegExp(escOpen, "g"); + var escClosePattern = new RegExp(escClose, "g"); + var escCommaPattern = new RegExp(escComma, "g"); + var escPeriodPattern = new RegExp(escPeriod, "g"); + var slashPattern = /\\\\/g; + var openPattern = /\\{/g; + var closePattern = /\\}/g; + var commaPattern = /\\,/g; + var periodPattern = /\\\./g; + exports2.EXPANSION_MAX = 1e5; + exports2.EXPANSION_MAX_LENGTH = 4e6; + exports2.EXPANSION_MAX_DEPTH = 1e3; + exports2.EXPANSION_MAX_REWRITES = 1e3; + function numeric(str) { + return !isNaN(str) ? parseInt(str, 10) : str.charCodeAt(0); + } + function escapeBraces(str) { + return str.replace(slashPattern, escSlash).replace(openPattern, escOpen).replace(closePattern, escClose).replace(commaPattern, escComma).replace(periodPattern, escPeriod); + } + function unescapeBraces(str) { + return str.replace(escSlashPattern, "\\").replace(escOpenPattern, "{").replace(escClosePattern, "}").replace(escCommaPattern, ",").replace(escPeriodPattern, "."); + } + function pushAll(target, items) { + for (let i = 0; i < items.length; i++) { + target.push(items[i]); + } + } + function parseCommaParts(str) { + const parts = []; + let carry = ""; + for (; ; ) { + const m = (0, balanced_match_1.balanced)("{", "}", str); + if (!m) { + const tail = str.split(","); + tail[0] = carry + tail[0]; + pushAll(parts, tail); + return parts; + } + const { pre, body, post } = m; + const p = pre.split(","); + p[0] = carry + p[0]; + p[p.length - 1] += "{" + body + "}"; + if (!post.length) { + pushAll(parts, p); + return parts; + } + carry = p.pop(); + pushAll(parts, p); + str = post; + } + } + function expand(str, options = {}) { + if (!str) { + return []; + } + const { max = exports2.EXPANSION_MAX, maxLength = exports2.EXPANSION_MAX_LENGTH, maxDepth = exports2.EXPANSION_MAX_DEPTH, maxRewrites = exports2.EXPANSION_MAX_REWRITES } = options; + if (str.slice(0, 2) === "{}") { + str = "\\{\\}" + str.slice(2); + } + return expand_(escapeBraces(str), max, maxLength, maxDepth, 0, maxRewrites, true).map(unescapeBraces); + } + function embrace(str) { + return "{" + str + "}"; + } + function isPadded(el) { + return /^-?0\d/.test(el); + } + function lte(i, y) { + return i <= y; + } + function gte(i, y) { + return i >= y; + } + function combine(acc, pre, values, max, maxLength, dropEmpties) { + const out = []; + let length = 0; + for (let a = 0; a < acc.length; a++) { + for (let v = 0; v < values.length; v++) { + if (out.length >= max) + return out; + const expansion = acc[a] + pre + values[v]; + if (dropEmpties && !expansion) + continue; + if (length + expansion.length > maxLength) + return out; + out.push(expansion); + length += expansion.length; + } + } + return out; + } + function expandSequence(body, isAlphaSequence, max, maxLength) { + const n = body.split(/\.\./); + const N = []; + if (n[0] === void 0 || n[1] === void 0) { + return N; + } + const x = numeric(n[0]); + const y = numeric(n[1]); + const width = Math.max(n[0].length, n[1].length); + let incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric(n[2])), 1) : 1; + let test = lte; + const reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + const pad = n.some(isPadded); + let length = 0; + for (let i = x; test(i, y) && N.length < max; i += incr) { + let c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === "\\") { + c = ""; + } + } else { + c = String(i); + if (pad) { + const need = width - c.length; + if (need > 0) { + const z = new Array(need + 1).join("0"); + if (i < 0) { + c = "-" + z + c.slice(1); + } else { + c = z + c; + } + } + } + } + if (length + c.length > maxLength) + break; + N.push(c); + length += c.length; + } + return N; + } + function expand_(str, max, maxLength, maxDepth, depth, maxRewrites, isTop) { + if (depth > maxDepth) { + return [str]; + } + let acc = [""]; + let rewrites = 0; + let dropEmpties = false; + let firstGroup = true; + for (; ; ) { + const m = (0, balanced_match_1.balanced)("{", "}", str); + if (!m) { + return combine(acc, str, [""], max, maxLength, dropEmpties); + } + const pre = m.pre; + if (/\$$/.test(pre)) { + acc = combine(acc, pre + "{" + m.body + "}", [""], max, maxLength, dropEmpties && !m.post.length); + firstGroup = false; + if (!m.post.length) + break; + str = m.post; + continue; + } + const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + const isSequence = isNumericSequence || isAlphaSequence; + const isOptions = m.body.indexOf(",") >= 0; + if (!isSequence && !isOptions) { + if (rewrites < maxRewrites && m.post.match(/,(?!,).*\}/)) { + rewrites++; + str = m.pre + "{" + m.body + escClose + m.post; + isTop = true; + continue; + } + return combine(acc, pre + "{" + m.body + "}" + m.post, [""], max, maxLength, dropEmpties); + } + if (firstGroup) { + dropEmpties = isTop && !isSequence; + firstGroup = false; + } + let values; + if (isSequence) { + values = expandSequence(m.body, isAlphaSequence, max, maxLength); + } else { + let n = parseCommaParts(m.body); + if (n.length === 1 && n[0] !== void 0) { + n = expand_(n[0], max, maxLength, maxDepth, depth + 1, maxRewrites, false).map(embrace); + if (n.length === 1) { + acc = combine(acc, pre + n[0], [""], max, maxLength, dropEmpties && !m.post.length); + if (!m.post.length) + break; + str = m.post; + continue; + } + } + let dropsEmpties = dropEmpties && !m.post.length && !pre; + for (let d = 0; dropsEmpties && d < acc.length; d++) { + if (acc[d]) { + dropsEmpties = false; + } + } + values = []; + let valuesLength = 0; + outer: for (let j = 0; j < n.length; j++) { + const expanded = expand_(n[j], max, maxLength, maxDepth, depth + 1, maxRewrites, false); + for (let k = 0; k < expanded.length; k++) { + const v = expanded[k]; + if (dropsEmpties && !v) + continue; + if (values.length >= max || valuesLength + v.length > maxLength) { + break outer; + } + values.push(v); + valuesLength += v.length; + } + } + } + acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length); + if (!m.post.length) + break; + str = m.post; + } + return acc; + } + } +}); + +// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +var require_assert_valid_pattern = __commonJS({ + "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.assertValidPattern = void 0; + var MAX_PATTERN_LENGTH = 1024 * 64; + var assertValidPattern = (pattern) => { + if (typeof pattern !== "string") { + throw new TypeError("invalid pattern"); + } + if (pattern.length > MAX_PATTERN_LENGTH) { + throw new TypeError("pattern is too long"); + } + }; + exports2.assertValidPattern = assertValidPattern; + } +}); + +// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js +var require_brace_expressions = __commonJS({ + "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseClass = void 0; + var posixClasses = { + "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true], + "[:alpha:]": ["\\p{L}\\p{Nl}", true], + "[:ascii:]": ["\\x00-\\x7f", false], + "[:blank:]": ["\\p{Zs}\\t", true], + "[:cntrl:]": ["\\p{Cc}", true], + "[:digit:]": ["\\p{Nd}", true], + "[:graph:]": ["\\p{Z}\\p{C}", true, true], + "[:lower:]": ["\\p{Ll}", true], + "[:print:]": ["\\p{C}", true], + "[:punct:]": ["\\p{P}", true], + "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true], + "[:upper:]": ["\\p{Lu}", true], + "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true], + "[:xdigit:]": ["A-Fa-f0-9", false] + }; + var braceEscape = (s) => s.replace(/[[\]\\-]/g, "\\$&"); + var regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); + var rangesToString = (ranges) => ranges.join(""); + var parseClass = (glob2, position) => { + const pos = position; + if (glob2.charAt(pos) !== "[") { + throw new Error("not in a brace expression"); + } + const ranges = []; + const negs = []; + let i = pos + 1; + let sawStart = false; + let uflag = false; + let escaping = false; + let negate = false; + let endPos = pos; + let rangeStart = ""; + WHILE: while (i < glob2.length) { + const c = glob2.charAt(i); + if ((c === "!" || c === "^") && i === pos + 1) { + negate = true; + i++; + continue; + } + if (c === "]" && sawStart && !escaping) { + endPos = i + 1; + break; + } + sawStart = true; + if (c === "\\") { + if (!escaping) { + escaping = true; + i++; + continue; + } + } + if (c === "[" && !escaping) { + for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) { + if (glob2.startsWith(cls, i)) { + if (rangeStart) { + return ["$.", false, glob2.length - pos, true]; + } + i += cls.length; + if (neg) + negs.push(unip); + else + ranges.push(unip); + uflag = uflag || u; + continue WHILE; + } + } + } + escaping = false; + if (rangeStart) { + if (c > rangeStart) { + ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c)); + } else if (c === rangeStart) { + ranges.push(braceEscape(c)); + } + rangeStart = ""; + i++; + continue; + } + if (glob2.startsWith("-]", i + 1)) { + ranges.push(braceEscape(c + "-")); + i += 2; + continue; + } + if (glob2.startsWith("-", i + 1)) { + rangeStart = c; + i += 2; + continue; + } + ranges.push(braceEscape(c)); + i++; + } + if (endPos < i) { + return ["", false, 0, false]; + } + if (!ranges.length && !negs.length) { + return ["$.", false, glob2.length - pos, true]; + } + if (negs.length === 0 && ranges.length === 1 && /^\\?.$/.test(ranges[0]) && !negate) { + const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0]; + return [regexpEscape(r), false, endPos - pos, false]; + } + const sranges = "[" + (negate ? "^" : "") + rangesToString(ranges) + "]"; + const snegs = "[" + (negate ? "" : "^") + rangesToString(negs) + "]"; + const comb = ranges.length && negs.length ? "(" + sranges + "|" + snegs + ")" : ranges.length ? sranges : snegs; + return [comb, uflag, endPos - pos, true]; + }; + exports2.parseClass = parseClass; + } +}); + +// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js +var require_unescape = __commonJS({ + "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.unescape = void 0; + var unescape2 = (s, { windowsPathsNoEscape = false, magicalBraces = true } = {}) => { + if (magicalBraces) { + return windowsPathsNoEscape ? s.replace(/\[([^/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\])\]/g, "$1$2").replace(/\\([^/])/g, "$1"); + } + return windowsPathsNoEscape ? s.replace(/\[([^/\\{}])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\{}])\]/g, "$1$2").replace(/\\([^/{}])/g, "$1"); + }; + exports2.unescape = unescape2; + } +}); + +// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js +var require_ast = __commonJS({ + "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js"(exports2) { + "use strict"; + var _a7; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AST = void 0; + var brace_expressions_js_1 = require_brace_expressions(); + var unescape_js_1 = require_unescape(); + var types2 = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]); + var isExtglobType = (c) => types2.has(c); + var isExtglobAST = (c) => isExtglobType(c.type); + var adoptionMap = /* @__PURE__ */ new Map([ + ["!", ["@"]], + ["?", ["?", "@"]], + ["@", ["@"]], + ["*", ["*", "+", "?", "@"]], + ["+", ["+", "@"]] + ]); + var adoptionWithSpaceMap = /* @__PURE__ */ new Map([ + ["!", ["?"]], + ["@", ["?"]], + ["+", ["?", "*"]] + ]); + var adoptionAnyMap = /* @__PURE__ */ new Map([ + ["!", ["?", "@"]], + ["?", ["?", "@"]], + ["@", ["?", "@"]], + ["*", ["*", "+", "?", "@"]], + ["+", ["+", "@", "?", "*"]] + ]); + var usurpMap = /* @__PURE__ */ new Map([ + ["!", /* @__PURE__ */ new Map([["!", "@"]])], + [ + "?", + /* @__PURE__ */ new Map([ + ["*", "*"], + ["+", "*"] + ]) + ], + [ + "@", + /* @__PURE__ */ new Map([ + ["!", "!"], + ["?", "?"], + ["@", "@"], + ["*", "*"], + ["+", "+"] + ]) + ], + [ + "+", + /* @__PURE__ */ new Map([ + ["?", "*"], + ["*", "*"] + ]) + ] + ]); + var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))"; + var startNoDot = "(?!\\.)"; + var addPatternStart = /* @__PURE__ */ new Set(["[", "."]); + var justDots = /* @__PURE__ */ new Set(["..", "."]); + var reSpecials = new Set("().*{}+?[]^$\\!"); + var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); + var qmark = "[^/]"; + var star = qmark + "*?"; + var starNoEmpty = qmark + "+?"; + var ID = 0; + var AST = class { + type; + #root; + #hasMagic; + #uflag = false; + #parts = []; + #parent; + #parentIndex; + #negs; + #filledNegs = false; + #options; + #toString; + // set to true if it's an extglob with no children + // (which really means one child of '') + #emptyExt = false; + id = ++ID; + get depth() { + return (this.#parent?.depth ?? -1) + 1; + } + [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")]() { + return { + "@@type": "AST", + id: this.id, + type: this.type, + root: this.#root.id, + parent: this.#parent?.id, + depth: this.depth, + partsLength: this.#parts.length, + parts: this.#parts + }; + } + constructor(type, parent, options = {}) { + this.type = type; + if (type) + this.#hasMagic = true; + this.#parent = parent; + this.#root = this.#parent ? this.#parent.#root : this; + this.#options = this.#root === this ? options : this.#root.#options; + this.#negs = this.#root === this ? [] : this.#root.#negs; + if (type === "!" && !this.#root.#filledNegs) + this.#negs.push(this); + this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0; + } + get hasMagic() { + if (this.#hasMagic !== void 0) + return this.#hasMagic; + for (const p of this.#parts) { + if (typeof p === "string") + continue; + if (p.type || p.hasMagic) + return this.#hasMagic = true; + } + return this.#hasMagic; + } + // reconstructs the pattern + toString() { + return this.#toString !== void 0 ? this.#toString : !this.type ? this.#toString = this.#parts.map((p) => String(p)).join("") : this.#toString = this.type + "(" + this.#parts.map((p) => String(p)).join("|") + ")"; + } + #fillNegs() { + if (this !== this.#root) + throw new Error("should only call on root"); + if (this.#filledNegs) + return this; + this.toString(); + this.#filledNegs = true; + let n; + while (n = this.#negs.pop()) { + if (n.type !== "!") + continue; + let p = n; + let pp = p.#parent; + while (pp) { + for (let i = p.#parentIndex + 1; !pp.type && i < pp.#parts.length; i++) { + for (const part of n.#parts) { + if (typeof part === "string") { + throw new Error("string part in extglob AST??"); + } + part.copyIn(pp.#parts[i]); + } + } + p = pp; + pp = p.#parent; + } + } + return this; + } + push(...parts) { + for (const p of parts) { + if (p === "") + continue; + if (typeof p !== "string" && !(p instanceof _a7 && p.#parent === this)) { + throw new Error("invalid part: " + p); + } + this.#parts.push(p); + } + } + toJSON() { + const ret = this.type === null ? this.#parts.slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...this.#parts.map((p) => p.toJSON())]; + if (this.isStart() && !this.type) + ret.unshift([]); + if (this.isEnd() && (this === this.#root || this.#root.#filledNegs && this.#parent?.type === "!")) { + ret.push({}); + } + return ret; + } + isStart() { + if (this.#root === this) + return true; + if (!this.#parent?.isStart()) + return false; + if (this.#parentIndex === 0) + return true; + const p = this.#parent; + for (let i = 0; i < this.#parentIndex; i++) { + const pp = p.#parts[i]; + if (!(pp instanceof _a7 && pp.type === "!")) { + return false; + } + } + return true; + } + isEnd() { + if (this.#root === this) + return true; + if (this.#parent?.type === "!") + return true; + if (!this.#parent?.isEnd()) + return false; + if (!this.type) + return this.#parent?.isEnd(); + const pl = this.#parent ? this.#parent.#parts.length : 0; + return this.#parentIndex === pl - 1; + } + copyIn(part) { + if (typeof part === "string") + this.push(part); + else + this.push(part.clone(this)); + } + clone(parent) { + const c = new _a7(this.type, parent); + for (const p of this.#parts) { + c.copyIn(p); + } + return c; + } + static #parseAST(str, ast, pos, opt, extDepth) { + const maxDepth = opt.maxExtglobRecursion ?? 2; + let escaping = false; + let inBrace = false; + let braceStart = -1; + let braceNeg = false; + if (ast.type === null) { + let i2 = pos; + let acc2 = ""; + while (i2 < str.length) { + const c = str.charAt(i2++); + if (escaping || c === "\\") { + escaping = !escaping; + acc2 += c; + continue; + } + if (inBrace) { + if (i2 === braceStart + 1) { + if (c === "^" || c === "!") { + braceNeg = true; + } + } else if (c === "]" && !(i2 === braceStart + 2 && braceNeg)) { + inBrace = false; + } + acc2 += c; + continue; + } else if (c === "[") { + inBrace = true; + braceStart = i2; + braceNeg = false; + acc2 += c; + continue; + } + const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i2) === "(" && extDepth <= maxDepth; + if (doRecurse) { + ast.push(acc2); + acc2 = ""; + const ext = new _a7(c, ast); + i2 = _a7.#parseAST(str, ext, i2, opt, extDepth + 1); + ast.push(ext); + continue; + } + acc2 += c; + } + ast.push(acc2); + return i2; + } + let i = pos + 1; + let part = new _a7(null, ast); + const parts = []; + let acc = ""; + while (i < str.length) { + const c = str.charAt(i++); + if (escaping || c === "\\") { + escaping = !escaping; + acc += c; + continue; + } + if (inBrace) { + if (i === braceStart + 1) { + if (c === "^" || c === "!") { + braceNeg = true; + } + } else if (c === "]" && !(i === braceStart + 2 && braceNeg)) { + inBrace = false; + } + acc += c; + continue; + } else if (c === "[") { + inBrace = true; + braceStart = i; + braceNeg = false; + acc += c; + continue; + } + const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i) === "(" && /* c8 ignore start - the maxDepth is sufficient here */ + (extDepth <= maxDepth || ast && ast.#canAdoptType(c)); + if (doRecurse) { + const depthAdd = ast && ast.#canAdoptType(c) ? 0 : 1; + part.push(acc); + acc = ""; + const ext = new _a7(c, part); + part.push(ext); + i = _a7.#parseAST(str, ext, i, opt, extDepth + depthAdd); + continue; + } + if (c === "|") { + part.push(acc); + acc = ""; + parts.push(part); + part = new _a7(null, ast); + continue; + } + if (c === ")") { + if (acc === "" && ast.#parts.length === 0) { + ast.#emptyExt = true; + } + part.push(acc); + acc = ""; + ast.push(...parts, part); + return i; + } + acc += c; + } + ast.type = null; + ast.#hasMagic = void 0; + ast.#parts = [str.substring(pos - 1)]; + return i; + } + #canAdoptWithSpace(child) { + return this.#canAdopt(child, adoptionWithSpaceMap); + } + #canAdopt(child, map = adoptionMap) { + if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null) { + return false; + } + const gc = child.#parts[0]; + if (!gc || typeof gc !== "object" || gc.type === null) { + return false; + } + return this.#canAdoptType(gc.type, map); + } + #canAdoptType(c, map = adoptionAnyMap) { + return !!map.get(this.type)?.includes(c); + } + #adoptWithSpace(child, index) { + const gc = child.#parts[0]; + const blank = new _a7(null, gc, this.options); + blank.#parts.push(""); + gc.push(blank); + this.#adopt(child, index); + } + #adopt(child, index) { + const gc = child.#parts[0]; + this.#parts.splice(index, 1, ...gc.#parts); + for (const p of gc.#parts) { + if (typeof p === "object") + p.#parent = this; + } + this.#toString = void 0; + } + #canUsurpType(c) { + const m = usurpMap.get(this.type); + return !!m?.has(c); + } + #canUsurp(child) { + if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null || this.#parts.length !== 1) { + return false; + } + const gc = child.#parts[0]; + if (!gc || typeof gc !== "object" || gc.type === null) { + return false; + } + return this.#canUsurpType(gc.type); + } + #usurp(child) { + const m = usurpMap.get(this.type); + const gc = child.#parts[0]; + const nt = m?.get(gc.type); + if (!nt) + return false; + this.#parts = gc.#parts; + for (const p of this.#parts) { + if (typeof p === "object") { + p.#parent = this; + } + } + this.type = nt; + this.#toString = void 0; + this.#emptyExt = false; + } + static fromGlob(pattern, options = {}) { + const ast = new _a7(null, void 0, options); + _a7.#parseAST(pattern, ast, 0, options, 0); + return ast; + } + // returns the regular expression if there's magic, or the unescaped + // string if not. + toMMPattern() { + if (this !== this.#root) + return this.#root.toMMPattern(); + const glob2 = this.toString(); + const [re, body, hasMagic, uflag] = this.toRegExpSource(); + const anyMagic = hasMagic || this.#hasMagic || this.#options.nocase && !this.#options.nocaseMagicOnly && glob2.toUpperCase() !== glob2.toLowerCase(); + if (!anyMagic) { + return body; + } + const flags = (this.#options.nocase ? "i" : "") + (uflag ? "u" : ""); + return Object.assign(new RegExp(`^${re}$`, flags), { + _src: re, + _glob: glob2 + }); + } + get options() { + return this.#options; + } + // returns the string match, the regexp source, whether there's magic + // in the regexp (so a regular expression is required) and whether or + // not the uflag is needed for the regular expression (for posix classes) + // TODO: instead of injecting the start/end at this point, just return + // the BODY of the regexp, along with the start/end portions suitable + // for binding the start/end in either a joined full-path makeRe context + // (where we bind to (^|/), or a standalone matchPart context (where + // we bind to ^, and not /). Otherwise slashes get duped! + // + // In part-matching mode, the start is: + // - if not isStart: nothing + // - if traversal possible, but not allowed: ^(?!\.\.?$) + // - if dots allowed or not possible: ^ + // - if dots possible and not allowed: ^(?!\.) + // end is: + // - if not isEnd(): nothing + // - else: $ + // + // In full-path matching mode, we put the slash at the START of the + // pattern, so start is: + // - if first pattern: same as part-matching mode + // - if not isStart(): nothing + // - if traversal possible, but not allowed: /(?!\.\.?(?:$|/)) + // - if dots allowed or not possible: / + // - if dots possible and not allowed: /(?!\.) + // end is: + // - if last pattern, same as part-matching mode + // - else nothing + // + // Always put the (?:$|/) on negated tails, though, because that has to be + // there to bind the end of the negated pattern portion, and it's easier to + // just stick it in now rather than try to inject it later in the middle of + // the pattern. + // + // We can just always return the same end, and leave it up to the caller + // to know whether it's going to be used joined or in parts. + // And, if the start is adjusted slightly, can do the same there: + // - if not isStart: nothing + // - if traversal possible, but not allowed: (?:/|^)(?!\.\.?$) + // - if dots allowed or not possible: (?:/|^) + // - if dots possible and not allowed: (?:/|^)(?!\.) + // + // But it's better to have a simpler binding without a conditional, for + // performance, so probably better to return both start options. + // + // Then the caller just ignores the end if it's not the first pattern, + // and the start always gets applied. + // + // But that's always going to be $ if it's the ending pattern, or nothing, + // so the caller can just attach $ at the end of the pattern when building. + // + // So the todo is: + // - better detect what kind of start is needed + // - return both flavors of starting pattern + // - attach $ at the end of the pattern when creating the actual RegExp + // + // Ah, but wait, no, that all only applies to the root when the first pattern + // is not an extglob. If the first pattern IS an extglob, then we need all + // that dot prevention biz to live in the extglob portions, because eg + // +(*|.x*) can match .xy but not .yx. + // + // So, return the two flavors if it's #root and the first child is not an + // AST, otherwise leave it to the child AST to handle it, and there, + // use the (?:^|/) style of start binding. + // + // Even simplified further: + // - Since the start for a join is eg /(?!\.) and the start for a part + // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root + // or start or whatever) and prepend ^ or / at the Regexp construction. + toRegExpSource(allowDot) { + const dot = allowDot ?? !!this.#options.dot; + if (this.#root === this) { + this.#flatten(); + this.#fillNegs(); + } + if (!isExtglobAST(this)) { + const noEmpty = this.isStart() && this.isEnd() && !this.#parts.some((s) => typeof s !== "string"); + const src = this.#parts.map((p) => { + const [re, _, hasMagic, uflag] = typeof p === "string" ? _a7.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot); + this.#hasMagic = this.#hasMagic || hasMagic; + this.#uflag = this.#uflag || uflag; + return re; + }).join(""); + let start2 = ""; + if (this.isStart()) { + if (typeof this.#parts[0] === "string") { + const dotTravAllowed = this.#parts.length === 1 && justDots.has(this.#parts[0]); + if (!dotTravAllowed) { + const aps = addPatternStart; + const needNoTrav = ( + // dots are allowed, and the pattern starts with [ or . + dot && aps.has(src.charAt(0)) || // the pattern starts with \., and then [ or . + src.startsWith("\\.") && aps.has(src.charAt(2)) || // the pattern starts with \.\., and then [ or . + src.startsWith("\\.\\.") && aps.has(src.charAt(4)) + ); + const needNoDot = !dot && !allowDot && aps.has(src.charAt(0)); + start2 = needNoTrav ? startNoTraversal : needNoDot ? startNoDot : ""; + } + } + } + let end = ""; + if (this.isEnd() && this.#root.#filledNegs && this.#parent?.type === "!") { + end = "(?:$|\\/)"; + } + const final2 = start2 + src + end; + return [ + final2, + (0, unescape_js_1.unescape)(src), + this.#hasMagic = !!this.#hasMagic, + this.#uflag + ]; + } + const repeated = this.type === "*" || this.type === "+"; + const start = this.type === "!" ? "(?:(?!(?:" : "(?:"; + let body = this.#partsToRegExp(dot); + if (this.isStart() && this.isEnd() && !body && this.type !== "!") { + const s = this.toString(); + const me = this; + me.#parts = [s]; + me.type = null; + me.#hasMagic = void 0; + return [s, (0, unescape_js_1.unescape)(this.toString()), false, false]; + } + let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : this.#partsToRegExp(true); + if (bodyDotAllowed === body) { + bodyDotAllowed = ""; + } + if (bodyDotAllowed) { + body = `(?:${body})(?:${bodyDotAllowed})*?`; + } + let final = ""; + if (this.type === "!" && this.#emptyExt) { + final = (this.isStart() && !dot ? startNoDot : "") + starNoEmpty; + } else { + const close = this.type === "!" ? ( + // !() must match something,but !(x) can match '' + "))" + (this.isStart() && !dot && !allowDot ? startNoDot : "") + star + ")" + ) : this.type === "@" ? ")" : this.type === "?" ? ")?" : this.type === "+" && bodyDotAllowed ? ")" : this.type === "*" && bodyDotAllowed ? `)?` : `)${this.type}`; + final = start + body + close; + } + return [ + final, + (0, unescape_js_1.unescape)(body), + this.#hasMagic = !!this.#hasMagic, + this.#uflag + ]; + } + #flatten() { + if (!isExtglobAST(this)) { + for (const p of this.#parts) { + if (typeof p === "object") { + p.#flatten(); + } + } + } else { + let iterations = 0; + let done = false; + do { + done = true; + for (let i = 0; i < this.#parts.length; i++) { + const c = this.#parts[i]; + if (typeof c === "object") { + c.#flatten(); + if (this.#canAdopt(c)) { + done = false; + this.#adopt(c, i); + } else if (this.#canAdoptWithSpace(c)) { + done = false; + this.#adoptWithSpace(c, i); + } else if (this.#canUsurp(c)) { + done = false; + this.#usurp(c); + } + } + } + } while (!done && ++iterations < 10); + } + this.#toString = void 0; + } + #partsToRegExp(dot) { + return this.#parts.map((p) => { + if (typeof p === "string") { + throw new Error("string type in extglob ast??"); + } + const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot); + this.#uflag = this.#uflag || uflag; + return re; + }).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|"); + } + static #parseGlob(glob2, hasMagic, noEmpty = false) { + let escaping = false; + let re = ""; + let uflag = false; + let inStar = false; + for (let i = 0; i < glob2.length; i++) { + const c = glob2.charAt(i); + if (escaping) { + escaping = false; + re += (reSpecials.has(c) ? "\\" : "") + c; + continue; + } + if (c === "*") { + if (inStar) + continue; + inStar = true; + re += noEmpty && /^[*]+$/.test(glob2) ? starNoEmpty : star; + hasMagic = true; + continue; + } else { + inStar = false; + } + if (c === "\\") { + if (i === glob2.length - 1) { + re += "\\\\"; + } else { + escaping = true; + } + continue; + } + if (c === "[") { + const [src, needUflag, consumed, magic] = (0, brace_expressions_js_1.parseClass)(glob2, i); + if (consumed) { + re += src; + uflag = uflag || needUflag; + i += consumed - 1; + hasMagic = hasMagic || magic; + continue; + } + } + if (c === "?") { + re += qmark; + hasMagic = true; + continue; + } + re += regExpEscape(c); + } + return [re, (0, unescape_js_1.unescape)(glob2), !!hasMagic, uflag]; + } + }; + exports2.AST = AST; + _a7 = AST; + } +}); + +// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js +var require_escape = __commonJS({ + "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.escape = void 0; + var escape = (s, { windowsPathsNoEscape = false, magicalBraces = false } = {}) => { + if (magicalBraces) { + return windowsPathsNoEscape ? s.replace(/[?*()[\]{}]/g, "[$&]") : s.replace(/[?*()[\]\\{}]/g, "\\$&"); + } + return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&"); + }; + exports2.escape = escape; + } +}); + +// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js +var require_commonjs3 = __commonJS({ + "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.unescape = exports2.escape = exports2.AST = exports2.Minimatch = exports2.match = exports2.makeRe = exports2.braceExpand = exports2.defaults = exports2.filter = exports2.GLOBSTAR = exports2.sep = exports2.minimatch = void 0; + var brace_expansion_1 = require_commonjs2(); + var assert_valid_pattern_js_1 = require_assert_valid_pattern(); + var ast_js_1 = require_ast(); + var escape_js_1 = require_escape(); + var unescape_js_1 = require_unescape(); + var minimatch4 = (p, pattern, options = {}) => { + (0, assert_valid_pattern_js_1.assertValidPattern)(pattern); + if (!options.nocomment && pattern.charAt(0) === "#") { + return false; + } + return new Minimatch(pattern, options).match(p); + }; + exports2.minimatch = minimatch4; + var starDotExtRE = /^\*+([^+@!?*[(]*)$/; + var starDotExtTest = (ext2) => (f) => !f.startsWith(".") && f.endsWith(ext2); + var starDotExtTestDot = (ext2) => (f) => f.endsWith(ext2); + var starDotExtTestNocase = (ext2) => { + ext2 = ext2.toLowerCase(); + return (f) => !f.startsWith(".") && f.toLowerCase().endsWith(ext2); + }; + var starDotExtTestNocaseDot = (ext2) => { + ext2 = ext2.toLowerCase(); + return (f) => f.toLowerCase().endsWith(ext2); + }; + var starDotStarRE = /^\*+\.\*+$/; + var starDotStarTest = (f) => !f.startsWith(".") && f.includes("."); + var starDotStarTestDot = (f) => f !== "." && f !== ".." && f.includes("."); + var dotStarRE = /^\.\*+$/; + var dotStarTest = (f) => f !== "." && f !== ".." && f.startsWith("."); + var starRE = /^\*+$/; + var starTest = (f) => f.length !== 0 && !f.startsWith("."); + var starTestDot = (f) => f.length !== 0 && f !== "." && f !== ".."; + var qmarksRE = /^\?+([^+@!?*[(]*)?$/; + var qmarksTestNocase = ([$0, ext2 = ""]) => { + const noext = qmarksTestNoExt([$0]); + if (!ext2) + return noext; + ext2 = ext2.toLowerCase(); + return (f) => noext(f) && f.toLowerCase().endsWith(ext2); + }; + var qmarksTestNocaseDot = ([$0, ext2 = ""]) => { + const noext = qmarksTestNoExtDot([$0]); + if (!ext2) + return noext; + ext2 = ext2.toLowerCase(); + return (f) => noext(f) && f.toLowerCase().endsWith(ext2); + }; + var qmarksTestDot = ([$0, ext2 = ""]) => { + const noext = qmarksTestNoExtDot([$0]); + return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2); + }; + var qmarksTest = ([$0, ext2 = ""]) => { + const noext = qmarksTestNoExt([$0]); + return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2); + }; + var qmarksTestNoExt = ([$0]) => { + const len = $0.length; + return (f) => f.length === len && !f.startsWith("."); + }; + var qmarksTestNoExtDot = ([$0]) => { + const len = $0.length; + return (f) => f.length === len && f !== "." && f !== ".."; + }; + var defaultPlatform = typeof process === "object" && process ? typeof process.env === "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; + var path23 = { + win32: { sep: "\\" }, + posix: { sep: "/" } + }; + exports2.sep = defaultPlatform === "win32" ? path23.win32.sep : path23.posix.sep; + exports2.minimatch.sep = exports2.sep; + exports2.GLOBSTAR = /* @__PURE__ */ Symbol("globstar **"); + exports2.minimatch.GLOBSTAR = exports2.GLOBSTAR; + var qmark = "[^/]"; + var star = qmark + "*?"; + var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; + var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; + var filter = (pattern, options = {}) => (p) => (0, exports2.minimatch)(p, pattern, options); + exports2.filter = filter; + exports2.minimatch.filter = exports2.filter; + var ext = (a, b = {}) => Object.assign({}, a, b); + var defaults = (def) => { + if (!def || typeof def !== "object" || !Object.keys(def).length) { + return exports2.minimatch; + } + const orig = exports2.minimatch; + const m = (p, pattern, options = {}) => orig(p, pattern, ext(def, options)); + return Object.assign(m, { + Minimatch: class Minimatch extends orig.Minimatch { + constructor(pattern, options = {}) { + super(pattern, ext(def, options)); + } + static defaults(options) { + return orig.defaults(ext(def, options)).Minimatch; + } + }, + AST: class AST extends orig.AST { + /* c8 ignore start */ + constructor(type, parent, options = {}) { + super(type, parent, ext(def, options)); + } + /* c8 ignore stop */ + static fromGlob(pattern, options = {}) { + return orig.AST.fromGlob(pattern, ext(def, options)); + } + }, + unescape: (s, options = {}) => orig.unescape(s, ext(def, options)), + escape: (s, options = {}) => orig.escape(s, ext(def, options)), + filter: (pattern, options = {}) => orig.filter(pattern, ext(def, options)), + defaults: (options) => orig.defaults(ext(def, options)), + makeRe: (pattern, options = {}) => orig.makeRe(pattern, ext(def, options)), + braceExpand: (pattern, options = {}) => orig.braceExpand(pattern, ext(def, options)), + match: (list, pattern, options = {}) => orig.match(list, pattern, ext(def, options)), + sep: orig.sep, + GLOBSTAR: exports2.GLOBSTAR + }); + }; + exports2.defaults = defaults; + exports2.minimatch.defaults = exports2.defaults; + var braceExpand = (pattern, options = {}) => { + (0, assert_valid_pattern_js_1.assertValidPattern)(pattern); + if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) { + return [pattern]; + } + return (0, brace_expansion_1.expand)(pattern, { max: options.braceExpandMax }); + }; + exports2.braceExpand = braceExpand; + exports2.minimatch.braceExpand = exports2.braceExpand; + var makeRe = (pattern, options = {}) => new Minimatch(pattern, options).makeRe(); + exports2.makeRe = makeRe; + exports2.minimatch.makeRe = exports2.makeRe; + var match = (list, pattern, options = {}) => { + const mm = new Minimatch(pattern, options); + list = list.filter((f) => mm.match(f)); + if (mm.options.nonull && !list.length) { + list.push(pattern); + } + return list; + }; + exports2.match = match; + exports2.minimatch.match = exports2.match; + var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/; + var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); + var Minimatch = class { + options; + set; + pattern; + windowsPathsNoEscape; + nonegate; + negate; + comment; + empty; + preserveMultipleSlashes; + partial; + globSet; + globParts; + nocase; + isWindows; + platform; + windowsNoMagicRoot; + maxGlobstarRecursion; + regexp; + constructor(pattern, options = {}) { + (0, assert_valid_pattern_js_1.assertValidPattern)(pattern); + options = options || {}; + this.options = options; + this.maxGlobstarRecursion = options.maxGlobstarRecursion ?? 200; + this.pattern = pattern; + this.platform = options.platform || defaultPlatform; + this.isWindows = this.platform === "win32"; + const awe = "allowWindowsEscape"; + this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options[awe] === false; + if (this.windowsPathsNoEscape) { + this.pattern = this.pattern.replace(/\\/g, "/"); + } + this.preserveMultipleSlashes = !!options.preserveMultipleSlashes; + this.regexp = null; + this.negate = false; + this.nonegate = !!options.nonegate; + this.comment = false; + this.empty = false; + this.partial = !!options.partial; + this.nocase = !!this.options.nocase; + this.windowsNoMagicRoot = options.windowsNoMagicRoot !== void 0 ? options.windowsNoMagicRoot : !!(this.isWindows && this.nocase); + this.globSet = []; + this.globParts = []; + this.set = []; + this.make(); + } + hasMagic() { + if (this.options.magicalBraces && this.set.length > 1) { + return true; + } + for (const pattern of this.set) { + for (const part of pattern) { + if (typeof part !== "string") + return true; + } + } + return false; + } + debug(..._) { + } + make() { + const pattern = this.pattern; + const options = this.options; + if (!options.nocomment && pattern.charAt(0) === "#") { + this.comment = true; + return; + } + if (!pattern) { + this.empty = true; + return; + } + this.parseNegate(); + this.globSet = [...new Set(this.braceExpand())]; + if (options.debug) { + this.debug = (...args) => console.error(...args); + } + this.debug(this.pattern, this.globSet); + const rawGlobParts = this.globSet.map((s) => this.slashSplit(s)); + this.globParts = this.preprocess(rawGlobParts); + this.debug(this.pattern, this.globParts); + let set = this.globParts.map((s, _, __) => { + if (this.isWindows && this.windowsNoMagicRoot) { + const isUNC = s[0] === "" && s[1] === "" && (s[2] === "?" || !globMagic.test(s[2])) && !globMagic.test(s[3]); + const isDrive = /^[a-z]:/i.test(s[0]); + if (isUNC) { + return [ + ...s.slice(0, 4), + ...s.slice(4).map((ss) => this.parse(ss)) + ]; + } else if (isDrive) { + return [s[0], ...s.slice(1).map((ss) => this.parse(ss))]; + } + } + return s.map((ss) => this.parse(ss)); + }); + this.debug(this.pattern, set); + this.set = set.filter((s) => s.indexOf(false) === -1); + if (this.isWindows) { + for (let i = 0; i < this.set.length; i++) { + const p = this.set[i]; + if (p[0] === "" && p[1] === "" && this.globParts[i][2] === "?" && typeof p[3] === "string" && /^[a-z]:$/i.test(p[3])) { + p[2] = "?"; + } + } + } + this.debug(this.pattern, this.set); + } + // various transforms to equivalent pattern sets that are + // faster to process in a filesystem walk. The goal is to + // eliminate what we can, and push all ** patterns as far + // to the right as possible, even if it increases the number + // of patterns that we have to process. + preprocess(globParts) { + if (this.options.noglobstar) { + for (const partset of globParts) { + for (let j = 0; j < partset.length; j++) { + if (partset[j] === "**") { + partset[j] = "*"; + } + } + } + } + const { optimizationLevel = 1 } = this.options; + if (optimizationLevel >= 2) { + globParts = this.firstPhasePreProcess(globParts); + globParts = this.secondPhasePreProcess(globParts); + } else if (optimizationLevel >= 1) { + globParts = this.levelOneOptimize(globParts); + } else { + globParts = this.adjascentGlobstarOptimize(globParts); + } + return globParts; + } + // just get rid of adjascent ** portions + adjascentGlobstarOptimize(globParts) { + return globParts.map((parts) => { + let gs = -1; + while (-1 !== (gs = parts.indexOf("**", gs + 1))) { + let i = gs; + while (parts[i + 1] === "**") { + i++; + } + if (i !== gs) { + parts.splice(gs, i - gs); + } + } + return parts; + }); + } + // get rid of adjascent ** and resolve .. portions + levelOneOptimize(globParts) { + return globParts.map((parts) => { + parts = parts.reduce((set, part) => { + const prev = set[set.length - 1]; + if (part === "**" && prev === "**") { + return set; + } + if (part === "..") { + if (prev && prev !== ".." && prev !== "." && prev !== "**") { + set.pop(); + return set; + } + } + set.push(part); + return set; + }, []); + return parts.length === 0 ? [""] : parts; + }); + } + levelTwoFileOptimize(parts) { + if (!Array.isArray(parts)) { + parts = this.slashSplit(parts); + } + let didSomething = false; + do { + didSomething = false; + if (!this.preserveMultipleSlashes) { + for (let i = 1; i < parts.length - 1; i++) { + const p = parts[i]; + if (i === 1 && p === "" && parts[0] === "") + continue; + if (p === "." || p === "") { + didSomething = true; + parts.splice(i, 1); + i--; + } + } + if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) { + didSomething = true; + parts.pop(); + } + } + let dd = 0; + while (-1 !== (dd = parts.indexOf("..", dd + 1))) { + const p = parts[dd - 1]; + if (p && p !== "." && p !== ".." && p !== "**" && !(this.isWindows && /^[a-z]:$/i.test(p))) { + didSomething = true; + parts.splice(dd - 1, 2); + dd -= 2; + } + } + } while (didSomething); + return parts.length === 0 ? [""] : parts; + } + // First phase: single-pattern processing + //
 is 1 or more portions
+      //  is 1 or more portions
+      // 

is any portion other than ., .., '', or ** + // is . or '' + // + // **/.. is *brutal* for filesystem walking performance, because + // it effectively resets the recursive walk each time it occurs, + // and ** cannot be reduced out by a .. pattern part like a regexp + // or most strings (other than .., ., and '') can be. + // + //

/**/../

/

/ -> {

/../

/

/,

/**/

/

/} + //

// -> 
/
+      // 
/

/../ ->

/
+      // **/**/ -> **/
+      //
+      // **/*/ -> */**/ <== not valid because ** doesn't follow
+      // this WOULD be allowed if ** did follow symlinks, or * didn't
+      firstPhasePreProcess(globParts) {
+        let didSomething = false;
+        do {
+          didSomething = false;
+          for (let parts of globParts) {
+            let gs = -1;
+            while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+              let gss = gs;
+              while (parts[gss + 1] === "**") {
+                gss++;
+              }
+              if (gss > gs) {
+                parts.splice(gs + 1, gss - gs);
+              }
+              let next = parts[gs + 1];
+              const p = parts[gs + 2];
+              const p2 = parts[gs + 3];
+              if (next !== "..")
+                continue;
+              if (!p || p === "." || p === ".." || !p2 || p2 === "." || p2 === "..") {
+                continue;
+              }
+              didSomething = true;
+              parts.splice(gs, 1);
+              const other = parts.slice(0);
+              other[gs] = "**";
+              globParts.push(other);
+              gs--;
+            }
+            if (!this.preserveMultipleSlashes) {
+              for (let i = 1; i < parts.length - 1; i++) {
+                const p = parts[i];
+                if (i === 1 && p === "" && parts[0] === "")
+                  continue;
+                if (p === "." || p === "") {
+                  didSomething = true;
+                  parts.splice(i, 1);
+                  i--;
+                }
+              }
+              if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+                didSomething = true;
+                parts.pop();
+              }
+            }
+            let dd = 0;
+            while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+              const p = parts[dd - 1];
+              if (p && p !== "." && p !== ".." && p !== "**") {
+                didSomething = true;
+                const needDot = dd === 1 && parts[dd + 1] === "**";
+                const splin = needDot ? ["."] : [];
+                parts.splice(dd - 1, 2, ...splin);
+                if (parts.length === 0)
+                  parts.push("");
+                dd -= 2;
+              }
+            }
+          }
+        } while (didSomething);
+        return globParts;
+      }
+      // second phase: multi-pattern dedupes
+      // {
/*/,
/

/} ->

/*/
+      // {
/,
/} -> 
/
+      // {
/**/,
/} -> 
/**/
+      //
+      // {
/**/,
/**/

/} ->

/**/
+      // ^-- not valid because ** doens't follow symlinks
+      secondPhasePreProcess(globParts) {
+        for (let i = 0; i < globParts.length - 1; i++) {
+          for (let j = i + 1; j < globParts.length; j++) {
+            const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
+            if (matched) {
+              globParts[i] = [];
+              globParts[j] = matched;
+              break;
+            }
+          }
+        }
+        return globParts.filter((gs) => gs.length);
+      }
+      partsMatch(a, b, emptyGSMatch = false) {
+        let ai = 0;
+        let bi = 0;
+        let result = [];
+        let which = "";
+        while (ai < a.length && bi < b.length) {
+          if (a[ai] === b[bi]) {
+            result.push(which === "b" ? b[bi] : a[ai]);
+            ai++;
+            bi++;
+          } else if (emptyGSMatch && a[ai] === "**" && b[bi] === a[ai + 1]) {
+            result.push(a[ai]);
+            ai++;
+          } else if (emptyGSMatch && b[bi] === "**" && a[ai] === b[bi + 1]) {
+            result.push(b[bi]);
+            bi++;
+          } else if (a[ai] === "*" && b[bi] && (this.options.dot || !b[bi].startsWith(".")) && b[bi] !== "**") {
+            if (which === "b")
+              return false;
+            which = "a";
+            result.push(a[ai]);
+            ai++;
+            bi++;
+          } else if (b[bi] === "*" && a[ai] && (this.options.dot || !a[ai].startsWith(".")) && a[ai] !== "**") {
+            if (which === "a")
+              return false;
+            which = "b";
+            result.push(b[bi]);
+            ai++;
+            bi++;
+          } else {
+            return false;
+          }
+        }
+        return a.length === b.length && result;
+      }
+      parseNegate() {
+        if (this.nonegate)
+          return;
+        const pattern = this.pattern;
+        let negate = false;
+        let negateOffset = 0;
+        for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) {
+          negate = !negate;
+          negateOffset++;
+        }
+        if (negateOffset)
+          this.pattern = pattern.slice(negateOffset);
+        this.negate = negate;
+      }
+      // set partial to true to test if, for example,
+      // "/a/b" matches the start of "/*/b/*/d"
+      // Partial means, if you run out of file before you run
+      // out of pattern, then that's fine, as long as all
+      // the parts match.
+      matchOne(file, pattern, partial = false) {
+        let fileStartIndex = 0;
+        let patternStartIndex = 0;
+        if (this.isWindows) {
+          const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
+          const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
+          const patternDrive = typeof pattern[0] === "string" && /^[a-z]:$/i.test(pattern[0]);
+          const patternUNC = !patternDrive && pattern[0] === "" && pattern[1] === "" && pattern[2] === "?" && typeof pattern[3] === "string" && /^[a-z]:$/i.test(pattern[3]);
+          const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
+          const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
+          if (typeof fdi === "number" && typeof pdi === "number") {
+            const [fd, pd] = [
+              file[fdi],
+              pattern[pdi]
+            ];
+            if (fd.toLowerCase() === pd.toLowerCase()) {
+              pattern[pdi] = fd;
+              patternStartIndex = pdi;
+              fileStartIndex = fdi;
+            }
+          }
+        }
+        const { optimizationLevel = 1 } = this.options;
+        if (optimizationLevel >= 2) {
+          file = this.levelTwoFileOptimize(file);
+        }
+        if (pattern.includes(exports2.GLOBSTAR)) {
+          return this.#matchGlobstar(file, pattern, partial, fileStartIndex, patternStartIndex);
+        }
+        return this.#matchOne(file, pattern, partial, fileStartIndex, patternStartIndex);
+      }
+      #matchGlobstar(file, pattern, partial, fileIndex, patternIndex) {
+        const firstgs = pattern.indexOf(exports2.GLOBSTAR, patternIndex);
+        const lastgs = pattern.lastIndexOf(exports2.GLOBSTAR);
+        const [head, body, tail] = partial ? [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1),
+          []
+        ] : [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1, lastgs),
+          pattern.slice(lastgs + 1)
+        ];
+        if (head.length) {
+          const fileHead = file.slice(fileIndex, fileIndex + head.length);
+          if (!this.#matchOne(fileHead, head, partial, 0, 0)) {
+            return false;
+          }
+          fileIndex += head.length;
+          patternIndex += head.length;
+        }
+        let fileTailMatch = 0;
+        if (tail.length) {
+          if (tail.length + fileIndex > file.length)
+            return false;
+          let tailStart = file.length - tail.length;
+          if (this.#matchOne(file, tail, partial, tailStart, 0)) {
+            fileTailMatch = tail.length;
+          } else {
+            if (file[file.length - 1] !== "" || fileIndex + tail.length === file.length) {
+              return false;
+            }
+            tailStart--;
+            if (!this.#matchOne(file, tail, partial, tailStart, 0)) {
+              return false;
+            }
+            fileTailMatch = tail.length + 1;
+          }
+        }
+        if (!body.length) {
+          let sawSome = !!fileTailMatch;
+          for (let i2 = fileIndex; i2 < file.length - fileTailMatch; i2++) {
+            const f = String(file[i2]);
+            sawSome = true;
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return partial || sawSome;
+        }
+        const bodySegments = [[[], 0]];
+        let currentBody = bodySegments[0];
+        let nonGsParts = 0;
+        const nonGsPartsSums = [0];
+        for (const b of body) {
+          if (b === exports2.GLOBSTAR) {
+            nonGsPartsSums.push(nonGsParts);
+            currentBody = [[], 0];
+            bodySegments.push(currentBody);
+          } else {
+            currentBody[0].push(b);
+            nonGsParts++;
+          }
+        }
+        let i = bodySegments.length - 1;
+        const fileLength = file.length - fileTailMatch;
+        for (const b of bodySegments) {
+          b[1] = fileLength - (nonGsPartsSums[i--] + b[0].length);
+        }
+        return !!this.#matchGlobStarBodySections(file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
+      }
+      // return false for "nope, not matching"
+      // return null for "not matching, cannot keep trying"
+      #matchGlobStarBodySections(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
+        const bs = bodySegments[bodyIndex];
+        if (!bs) {
+          for (let i = fileIndex; i < file.length; i++) {
+            sawTail = true;
+            const f = file[i];
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return sawTail;
+        }
+        const [body, after] = bs;
+        while (fileIndex <= after) {
+          const m = this.#matchOne(file.slice(0, fileIndex + body.length), body, partial, fileIndex, 0);
+          if (m && globStarDepth < this.maxGlobstarRecursion) {
+            const sub = this.#matchGlobStarBodySections(file, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
+            if (sub !== false) {
+              return sub;
+            }
+          }
+          const f = file[fileIndex];
+          if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+            return false;
+          }
+          fileIndex++;
+        }
+        return partial || null;
+      }
+      #matchOne(file, pattern, partial, fileIndex, patternIndex) {
+        let fi;
+        let pi;
+        let pl;
+        let fl;
+        for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
+          this.debug("matchOne loop");
+          let p = pattern[pi];
+          let f = file[fi];
+          this.debug(pattern, p, f);
+          if (p === false || p === exports2.GLOBSTAR) {
+            return false;
+          }
+          let hit;
+          if (typeof p === "string") {
+            hit = f === p;
+            this.debug("string match", p, f, hit);
+          } else {
+            hit = p.test(f);
+            this.debug("pattern match", p, f, hit);
+          }
+          if (!hit)
+            return false;
+        }
+        if (fi === fl && pi === pl) {
+          return true;
+        } else if (fi === fl) {
+          return partial;
+        } else if (pi === pl) {
+          return fi === fl - 1 && file[fi] === "";
+        } else {
+          throw new Error("wtf?");
+        }
+      }
+      braceExpand() {
+        return (0, exports2.braceExpand)(this.pattern, this.options);
+      }
+      parse(pattern) {
+        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+        const options = this.options;
+        if (pattern === "**")
+          return exports2.GLOBSTAR;
+        if (pattern === "")
+          return "";
+        let m;
+        let fastTest = null;
+        if (m = pattern.match(starRE)) {
+          fastTest = options.dot ? starTestDot : starTest;
+        } else if (m = pattern.match(starDotExtRE)) {
+          fastTest = (options.nocase ? options.dot ? starDotExtTestNocaseDot : starDotExtTestNocase : options.dot ? starDotExtTestDot : starDotExtTest)(m[1]);
+        } else if (m = pattern.match(qmarksRE)) {
+          fastTest = (options.nocase ? options.dot ? qmarksTestNocaseDot : qmarksTestNocase : options.dot ? qmarksTestDot : qmarksTest)(m);
+        } else if (m = pattern.match(starDotStarRE)) {
+          fastTest = options.dot ? starDotStarTestDot : starDotStarTest;
+        } else if (m = pattern.match(dotStarRE)) {
+          fastTest = dotStarTest;
+        }
+        const re = ast_js_1.AST.fromGlob(pattern, this.options).toMMPattern();
+        if (fastTest && typeof re === "object") {
+          Reflect.defineProperty(re, "test", { value: fastTest });
+        }
+        return re;
+      }
+      makeRe() {
+        if (this.regexp || this.regexp === false)
+          return this.regexp;
+        const set = this.set;
+        if (!set.length) {
+          this.regexp = false;
+          return this.regexp;
+        }
+        const options = this.options;
+        const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
+        const flags = new Set(options.nocase ? ["i"] : []);
+        let re = set.map((pattern) => {
+          const pp = pattern.map((p) => {
+            if (p instanceof RegExp) {
+              for (const f of p.flags.split(""))
+                flags.add(f);
+            }
+            return typeof p === "string" ? regExpEscape(p) : p === exports2.GLOBSTAR ? exports2.GLOBSTAR : p._src;
+          });
+          pp.forEach((p, i) => {
+            const next = pp[i + 1];
+            const prev = pp[i - 1];
+            if (p !== exports2.GLOBSTAR || prev === exports2.GLOBSTAR) {
+              return;
+            }
+            if (prev === void 0) {
+              if (next !== void 0 && next !== exports2.GLOBSTAR) {
+                pp[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + next;
+              } else {
+                pp[i] = twoStar;
+              }
+            } else if (next === void 0) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + ")?";
+            } else if (next !== exports2.GLOBSTAR) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next;
+              pp[i + 1] = exports2.GLOBSTAR;
+            }
+          });
+          const filtered = pp.filter((p) => p !== exports2.GLOBSTAR);
+          if (this.partial && filtered.length >= 1) {
+            const prefixes = [];
+            for (let i = 1; i <= filtered.length; i++) {
+              prefixes.push(filtered.slice(0, i).join("/"));
+            }
+            return "(?:" + prefixes.join("|") + ")";
+          }
+          return filtered.join("/");
+        }).join("|");
+        const [open, close] = set.length > 1 ? ["(?:", ")"] : ["", ""];
+        re = "^" + open + re + close + "$";
+        if (this.partial) {
+          re = "^(?:\\/|" + open + re.slice(1, -1) + close + ")$";
+        }
+        if (this.negate)
+          re = "^(?!" + re + ").+$";
+        try {
+          this.regexp = new RegExp(re, [...flags].join(""));
+        } catch {
+          this.regexp = false;
+        }
+        return this.regexp;
+      }
+      slashSplit(p) {
+        if (this.preserveMultipleSlashes) {
+          return p.split("/");
+        } else if (this.isWindows && /^\/\/[^/]+/.test(p)) {
+          return ["", ...p.split(/\/+/)];
+        } else {
+          return p.split(/\/+/);
+        }
+      }
+      match(f, partial = this.partial) {
+        this.debug("match", f, this.pattern);
+        if (this.comment) {
+          return false;
+        }
+        if (this.empty) {
+          return f === "";
+        }
+        if (f === "/" && partial) {
+          return true;
+        }
+        const options = this.options;
+        if (this.isWindows) {
+          f = f.split("\\").join("/");
+        }
+        const ff = this.slashSplit(f);
+        this.debug(this.pattern, "split", ff);
+        const set = this.set;
+        this.debug(this.pattern, "set", set);
+        let filename = ff[ff.length - 1];
+        if (!filename) {
+          for (let i = ff.length - 2; !filename && i >= 0; i--) {
+            filename = ff[i];
+          }
+        }
+        for (const pattern of set) {
+          let file = ff;
+          if (options.matchBase && pattern.length === 1) {
+            file = [filename];
+          }
+          const hit = this.matchOne(file, pattern, partial);
+          if (hit) {
+            if (options.flipNegate) {
+              return true;
+            }
+            return !this.negate;
+          }
+        }
+        if (options.flipNegate) {
+          return false;
+        }
+        return this.negate;
+      }
+      static defaults(def) {
+        return exports2.minimatch.defaults(def).Minimatch;
+      }
+    };
+    exports2.Minimatch = Minimatch;
+    var ast_js_2 = require_ast();
+    Object.defineProperty(exports2, "AST", { enumerable: true, get: function() {
+      return ast_js_2.AST;
+    } });
+    var escape_js_2 = require_escape();
+    Object.defineProperty(exports2, "escape", { enumerable: true, get: function() {
+      return escape_js_2.escape;
+    } });
+    var unescape_js_2 = require_unescape();
+    Object.defineProperty(exports2, "unescape", { enumerable: true, get: function() {
+      return unescape_js_2.unescape;
+    } });
+    exports2.minimatch.AST = ast_js_1.AST;
+    exports2.minimatch.Minimatch = Minimatch;
+    exports2.minimatch.escape = escape_js_1.escape;
+    exports2.minimatch.unescape = unescape_js_1.unescape;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/ignore.ts
+var path, import_dockerignore, import_ignore, minimatch, IgnoreStrategy, GlobIgnoreStrategy, GitIgnoreStrategy, DockerIgnoreStrategy;
+var init_ignore = __esm({
+  "../../aws-cdk-lib/core/lib/fs/ignore.ts"() {
+    "use strict";
+    path = __toESM(require("path"));
+    import_dockerignore = __toESM(require_ignore());
+    import_ignore = __toESM(require_ignore2());
+    init_options();
+    init_errors();
+    init_literal_string();
+    ({ minimatch } = require_commonjs3());
+    IgnoreStrategy = class {
+      /**
+       * Ignores file paths based on simple glob patterns.
+       *
+       * @returns `GlobIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static glob(absoluteRootPath, patterns) {
+        return new GlobIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.gitignore specification`](https://git-scm.com/docs/gitignore).
+       *
+       * @returns `GitIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static git(absoluteRootPath, patterns) {
+        return new GitIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.dockerignore specification`](https://docs.docker.com/engine/reference/builder/#dockerignore-file).
+       *
+       * @returns `DockerIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static docker(absoluteRootPath, patterns) {
+        return new DockerIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Creates an IgnoreStrategy based on the `ignoreMode` and `exclude` in a `CopyOptions`.
+       *
+       * @returns `IgnoreStrategy` based on the `CopyOptions`
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       * @param options the `CopyOptions` to create the `IgnoreStrategy` from
+       */
+      static fromCopyOptions(options, absoluteRootPath) {
+        const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+        const exclude = options.exclude || [];
+        switch (ignoreMode) {
+          case "glob" /* GLOB */:
+            return this.glob(absoluteRootPath, exclude);
+          case "git" /* GIT */:
+            return this.git(absoluteRootPath, exclude);
+          case "docker" /* DOCKER */:
+            return this.docker(absoluteRootPath, exclude);
+        }
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        return this.ignores(absoluteDirectoryPath);
+      }
+    };
+    GlobIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      patterns;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyExpectsAbsolute`, "GlobIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.patterns = patterns;
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.patterns.push(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyIgnoresExpects`, "GlobIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        let excludeOutput = false;
+        for (const pattern of this.patterns) {
+          const negate = pattern.startsWith("!");
+          const match = minimatch(relativePath, pattern, { matchBase: true, flipNegate: true });
+          if (!negate && match) {
+            excludeOutput = true;
+          }
+          if (negate && match) {
+            excludeOutput = false;
+          }
+        }
+        return excludeOutput;
+      }
+    };
+    GitIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyExpectsAbsolute`, "GitIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.ignore = (0, import_ignore.default)().add(patterns);
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyIgnoresExpects`, "GitIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        return this.ignore.ignores(relativePath);
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        if (!path.isAbsolute(absoluteDirectoryPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyCompletelyIgnores`, "GitIgnoreStrategy.completelyIgnores() expects an absolute path");
+        }
+        const relativePath = path.relative(this.absoluteRootPath, absoluteDirectoryPath);
+        const relativePathWithSep = relativePath.endsWith(path.sep) ? relativePath : relativePath + path.sep;
+        return this.ignore.ignores(relativePathWithSep);
+      }
+    };
+    DockerIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      completeIgnore;
+      // Follows negation rules as describe in @balena/dockerignore
+      // See https://www.npmjs.com/package/@balena/dockerignore#exclusion-patterns
+      negativeIgnoreRegex = /^\s*(\!|\/\!)(.*)/;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyExpectsAbsolute`, "DockerIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.completeIgnore = (0, import_dockerignore.default)();
+        this.ignore = (0, import_dockerignore.default)();
+        for (const pattern of patterns) {
+          this.add(pattern);
+        }
+      }
+      /**
+       * Adds the pattern to completeIgnore. If its an exclude pattern, it also adds an entry for each parent directory.
+       * This is useful in detecting folders that are ignored, but that could have children files which are not ignored.
+       *
+       * @param pattern pattern to add
+       */
+      completelyAdd(pattern) {
+        this.completeIgnore.add(pattern);
+        const negativeMatch = pattern.match(this.negativeIgnoreRegex);
+        if (negativeMatch !== null) {
+          let dirname6 = negativeMatch[2];
+          while (true) {
+            dirname6 = path.dirname(dirname6);
+            if (dirname6 === "/" || dirname6 === ".") {
+              break;
+            }
+            this.completeIgnore.add(negativeMatch[1] + dirname6);
+          }
+        }
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+        this.completelyAdd(pattern);
+      }
+      getRelativePath(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyIgnoresExpects`, "DockerIgnoreStrategy.ignores() expects an absolute path");
+        }
+        return path.relative(this.absoluteRootPath, absoluteFilePath);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        return this.ignore.ignores(this.getRelativePath(absoluteFilePath));
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        const relativePath = this.getRelativePath(absoluteDirectoryPath);
+        return this.ignore.ignores(relativePath) && this.completeIgnore.ignores(relativePath);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/utils.ts
+function isInternalPath(rootPath, targetPath) {
+  return rootPath === targetPath || targetPath.startsWith(rootPath + path2.sep);
+}
+function resolveLinkTarget(realPath, linkTarget) {
+  return path2.isAbsolute(linkTarget) ? path2.resolve(linkTarget) : path2.resolve(path2.dirname(realPath), linkTarget);
+}
+function walkDirectory(directory, options, visitor) {
+  const { follow, ignoreStrategy } = options;
+  const canonicalRoot = realPathOrSelf(options.root ?? directory);
+  const ancestors = /* @__PURE__ */ new Set();
+  walk(directory, directory, realPathOrSelf(directory));
+  function walk(symbolicPath, realPath, canonicalPath) {
+    if (ancestors.has(canonicalPath)) {
+      return;
+    }
+    ancestors.add(canonicalPath);
+    const entries = fs2.readdirSync(realPath, { withFileTypes: true });
+    entries.sort((a, b) => a.name < b.name ? -1 : a.name > b.name ? 1 : 0);
+    for (const entry of entries) {
+      const childPath = path2.join(symbolicPath, entry.name);
+      const childRealPath = path2.join(realPath, entry.name);
+      if (entry.isSymbolicLink()) {
+        visitSymlink(childPath, childRealPath);
+      } else if (entry.isDirectory()) {
+        visitDirectory(childPath, childRealPath, path2.join(canonicalPath, entry.name));
+      } else if (entry.isFile()) {
+        visitFile({ path: childPath, realPath: childRealPath });
+      }
+    }
+    ancestors.delete(canonicalPath);
+  }
+  function visitDirectory(symbolicPath, realPath, canonicalPath) {
+    if (ignoreStrategy.completelyIgnores(symbolicPath)) {
+      return;
+    }
+    if (visitor.onDirectory) {
+      visitor.onDirectory({ path: symbolicPath, realPath, ignored: ignoreStrategy.ignores(symbolicPath) });
+    }
+    walk(symbolicPath, realPath, canonicalPath);
+  }
+  function visitFile(entry) {
+    if (!ignoreStrategy.ignores(entry.path)) {
+      visitor.onFile?.(entry);
+    }
+  }
+  function visitSymlink(symbolicPath, realPath) {
+    const linkTarget = fs2.readlinkSync(realPath);
+    const resolvedLinkTarget = canonicalLinkTarget(resolveLinkTarget(realPath, linkTarget));
+    const internal = isInternalPath(canonicalRoot, resolvedLinkTarget);
+    const targetStats = shouldFollow(internal) ? tryStat(resolvedLinkTarget) : void 0;
+    if (!targetStats) {
+      if (!ignoreStrategy.ignores(symbolicPath)) {
+        visitor.onSymlink?.({ path: symbolicPath, realPath, linkTarget, resolvedLinkTarget, internal });
+      }
+      return;
+    }
+    if (targetStats.isDirectory()) {
+      visitDirectory(symbolicPath, resolvedLinkTarget, realPathOrSelf(resolvedLinkTarget));
+    } else if (targetStats.isFile()) {
+      visitFile({ path: symbolicPath, realPath: resolvedLinkTarget, stats: targetStats });
+    } else if (!ignoreStrategy.ignores(symbolicPath)) {
+      visitor.onUnsupported?.({ path: symbolicPath, realPath: resolvedLinkTarget });
+    }
+  }
+  function shouldFollow(internal) {
+    switch (follow) {
+      case "always" /* ALWAYS */:
+        return true;
+      case "external" /* EXTERNAL */:
+        return !internal;
+      case "internal-only" /* BLOCK_EXTERNAL */:
+        return internal;
+      case "never" /* NEVER */:
+      default:
+        return false;
+    }
+  }
+}
+function canonicalLinkTarget(target) {
+  return path2.join(realPathOrSelf(path2.dirname(target)), path2.basename(target));
+}
+function realPathOrSelf(target) {
+  try {
+    return fs2.realpathSync(target);
+  } catch {
+    return target;
+  }
+}
+function tryStat(target) {
+  try {
+    return fs2.statSync(target, { bigint: true });
+  } catch {
+    return void 0;
+  }
+}
+var fs2, path2;
+var init_utils = __esm({
+  "../../aws-cdk-lib/core/lib/fs/utils.ts"() {
+    "use strict";
+    fs2 = __toESM(require("fs"));
+    path2 = __toESM(require("path"));
+    init_options();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/copy.ts
+function copyDirectory(srcDir, destDir, options = {}, rootDir) {
+  const follow = options.follow ?? "external" /* EXTERNAL */;
+  const root = rootDir || srcDir;
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  if (!fs3.statSync(srcDir).isDirectory()) {
+    throw new UnscopedValidationError(lit`Directory`, `${srcDir} is not a directory`);
+  }
+  const canonicalSrcDir = fs3.realpathSync(srcDir);
+  walkDirectory(srcDir, { follow, ignoreStrategy, root }, {
+    onDirectory: (entry) => {
+      if (!entry.ignored) {
+        fs3.mkdirSync(destinationOf(entry.path), { recursive: true });
+      }
+    },
+    onFile: (entry) => {
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.copyFileSync(entry.realPath, destination);
+    },
+    onSymlink: (entry) => {
+      if (follow === "internal-only" /* BLOCK_EXTERNAL */ && !entry.internal) {
+        throw new UnscopedValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${follow}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`
+        );
+      }
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.symlinkSync(linkTextFor(entry, destination), destination);
+    }
+  });
+  function destinationOf(sourcePath) {
+    return path3.join(destDir, path3.relative(srcDir, sourcePath));
+  }
+  function linkTextFor(entry, destination) {
+    if (!isInternalPath(canonicalSrcDir, entry.resolvedLinkTarget)) {
+      return entry.linkTarget;
+    }
+    const copiedTarget = path3.join(destDir, path3.relative(canonicalSrcDir, entry.resolvedLinkTarget));
+    return path3.relative(path3.dirname(destination), copiedTarget) || ".";
+  }
+}
+var fs3, path3;
+var init_copy = __esm({
+  "../../aws-cdk-lib/core/lib/fs/copy.ts"() {
+    "use strict";
+    fs3 = __toESM(require("fs"));
+    path3 = __toESM(require("path"));
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts
+var crypto3, fs4, os, path4, CACHE_DIR, MAX_ENTRIES, MAX_CACHE_FILES, FingerprintDiskCache;
+var init_fingerprint_disk_cache = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts"() {
+    "use strict";
+    crypto3 = __toESM(require("crypto"));
+    fs4 = __toESM(require("fs"));
+    os = __toESM(require("os"));
+    path4 = __toESM(require("path"));
+    CACHE_DIR = path4.join(os.homedir(), ".cdk", "cache", "fingerprints");
+    MAX_ENTRIES = 1e5;
+    MAX_CACHE_FILES = 50;
+    FingerprintDiskCache = class {
+      cache;
+      dirty = false;
+      cacheFile;
+      /**
+       * Create a FingerprintDiskCache
+       *
+       * The `directoryPath` argument is expected to be pre-resolved to an absolute path.
+       */
+      constructor(directoryPath) {
+        const dirHash = crypto3.createHash("sha256").update(directoryPath).digest("hex").slice(0, 16);
+        this.cacheFile = path4.join(CACHE_DIR, `${dirHash}.json`);
+      }
+      /**
+       * Look up a cached fingerprint or compute it.
+       */
+      obtain(cacheKey, calcFn) {
+        const map = this._load();
+        const existing = map.get(cacheKey);
+        if (existing !== void 0) {
+          return existing;
+        }
+        const value = calcFn();
+        map.set(cacheKey, value);
+        this.dirty = true;
+        return value;
+      }
+      /**
+       * Persist the cache to disk.
+       */
+      save() {
+        if (!this.dirty || !this.cache) {
+          return;
+        }
+        this._evict();
+        try {
+          fs4.mkdirSync(CACHE_DIR, { recursive: true });
+          const entries = Array.from(this.cache.entries());
+          let tempFile = `${this.cacheFile}.${Date.now()}.${Math.random()}`;
+          try {
+            fs4.writeFileSync(tempFile, JSON.stringify(entries));
+            fs4.renameSync(tempFile, this.cacheFile);
+            tempFile = void 0;
+            this.dirty = false;
+            this._evictCacheDir();
+          } finally {
+            if (tempFile) {
+              fs4.rmSync(tempFile, { force: true });
+            }
+          }
+        } catch {
+        }
+      }
+      _load() {
+        if (this.cache) {
+          return this.cache;
+        }
+        this.cache = /* @__PURE__ */ new Map();
+        try {
+          const data = fs4.readFileSync(this.cacheFile, "utf-8");
+          const entries = JSON.parse(data);
+          if (Array.isArray(entries)) {
+            for (const [k, v] of entries) {
+              this.cache.set(k, v);
+            }
+          }
+        } catch {
+        }
+        return this.cache;
+      }
+      _evict() {
+        if (!this.cache || this.cache.size <= MAX_ENTRIES) {
+          return;
+        }
+        const entries = Array.from(this.cache.entries());
+        this.cache = new Map(entries.slice(entries.length - MAX_ENTRIES));
+      }
+      /** Remove oldest cache files if the directory exceeds MAX_CACHE_FILES */
+      _evictCacheDir() {
+        try {
+          const files = fs4.readdirSync(CACHE_DIR).filter((f) => f.endsWith(".json")).map((f) => ({ name: f, mtime: fs4.statSync(path4.join(CACHE_DIR, f)).mtimeMs }));
+          if (files.length <= MAX_CACHE_FILES) return;
+          files.sort((a, b) => a.mtime - b.mtime);
+          const toDelete = files.slice(0, files.length - MAX_CACHE_FILES);
+          for (const f of toDelete) {
+            fs4.unlinkSync(path4.join(CACHE_DIR, f.name));
+          }
+        } catch {
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint.ts
+function clearLargeFileFingerprintCache() {
+}
+function fingerprint(fileOrDirectory, options = {}) {
+  const hash = crypto4.createHash("sha256");
+  _hashField(hash, "options.extra", options.extraHash || "");
+  const follow = options.follow || "external" /* EXTERNAL */;
+  _hashField(hash, "options.follow", follow);
+  const root = fs5.realpathSync(fileOrDirectory);
+  const isDir = fs5.statSync(root).isDirectory();
+  const rootDirectory = isDir ? root : path5.dirname(root);
+  const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+  if (ignoreMode != "glob" /* GLOB */) {
+    _hashField(hash, "options.ignoreMode", ignoreMode);
+  }
+  const resolvedRoot = path5.resolve(rootDirectory);
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  const cache = new FingerprintDiskCache(resolvedRoot);
+  if (isDir) {
+    walkDirectory(root, { follow, ignoreStrategy }, {
+      onFile: (entry) => hashFileContent(entry.path, entry.stats ? contentFingerprintWithStats(entry.realPath, entry.stats, cache) : contentFingerprintOf(entry.realPath)),
+      onSymlink: (entry) => hashLinkTarget(entry),
+      onUnsupported: (entry) => {
+        throw new UnscopedValidationError(
+          lit`UnableToUnableHashNeither`,
+          `Unable to hash ${entry.path}: it is neither a file nor a directory`
+        );
+      }
+    });
+  } else {
+    hashFileContent(root, contentFingerprintOf(root));
+  }
+  cache.save();
+  return hash.digest("hex");
+  function hashKey(symbolicPath) {
+    return path5.relative(root, symbolicPath).replace(/\\/g, "/");
+  }
+  function hashFileContent(symbolicPath, contentHash2) {
+    _hashField(hash, `file:${hashKey(symbolicPath)}`, contentHash2);
+  }
+  function hashLinkTarget(entry) {
+    const target = entry.internal && path5.isAbsolute(entry.linkTarget) ? hashKey(entry.resolvedLinkTarget) : entry.linkTarget;
+    _hashField(hash, `link:${hashKey(entry.path)}`, target);
+  }
+  function contentFingerprintOf(file) {
+    return contentFingerprintWithStats(file, fs5.statSync(file, { bigint: true }), cache);
+  }
+}
+function contentFingerprintWithStats(file, stats, cache) {
+  const cacheKey = `${stats.ino}|${stats.mtimeMs}|${stats.size}`;
+  return cache?.obtain(cacheKey, () => contentFingerprintMiss(file)) ?? contentFingerprintMiss(file);
+}
+function contentFingerprintMiss(file) {
+  const hash = crypto4.createHash("sha256");
+  const buffer = Buffer.alloc(BUFFER_SIZE);
+  const fd = fs5.openSync(file, fs5.constants.O_RDONLY);
+  let size = 0;
+  let isBinary = false;
+  let lastStr = "";
+  let read = 0;
+  try {
+    while ((read = fs5.readSync(fd, buffer, 0, BUFFER_SIZE, null)) !== 0) {
+      const slicedBuffer = buffer.subarray(0, read);
+      if (size === 0) {
+        isBinary = slicedBuffer.indexOf(0) !== -1;
+      }
+      if (isBinary) {
+        size += read;
+        hash.update(slicedBuffer);
+      } else {
+        const str = slicedBuffer.toString();
+        if (TRAILING_CR_RE.test(str)) {
+          lastStr += str;
+          continue;
+        }
+        const data = lastStr + str;
+        lastStr = "";
+        const normalizedData = data.replace(CRLF_RE, "\n");
+        const dataBuffer = Buffer.from(normalizedData);
+        size += dataBuffer.length;
+        hash.update(dataBuffer);
+      }
+    }
+    if (lastStr) {
+      hash.update(Buffer.from(lastStr));
+    }
+  } finally {
+    fs5.closeSync(fd);
+  }
+  return `${size}:${hash.digest("hex")}`;
+}
+function _hashField(hash, header, value) {
+  hash.update(CTRL_SOH).update(header).update(CTRL_SOT).update(value).update(CTRL_ETX);
+}
+var crypto4, fs5, path5, CTRL_SOH, CTRL_SOT, CTRL_ETX, CRLF_RE, TRAILING_CR_RE, BUFFER_SIZE;
+var init_fingerprint = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint.ts"() {
+    "use strict";
+    crypto4 = __toESM(require("crypto"));
+    fs5 = __toESM(require("fs"));
+    path5 = __toESM(require("path"));
+    init_fingerprint_disk_cache();
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+    CTRL_SOH = "";
+    CTRL_SOT = "";
+    CTRL_ETX = "";
+    CRLF_RE = /\r\n/g;
+    TRAILING_CR_RE = /\r$/;
+    BUFFER_SIZE = 8 * 1024;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts
+var init_dispose_polyfill = __esm({
+  "../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts"() {
+    "use strict";
+    Symbol.dispose ??= /* @__PURE__ */ Symbol("Symbol.dispose");
+    Symbol.asyncDispose ??= /* @__PURE__ */ Symbol("Symbol.asyncDispose");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/perf.ts
+function profileFn(key, options) {
+  return function(fn) {
+    const ret = function() {
+      STATE.nesting++;
+      const start = import_perf_hooks.performance.now();
+      try {
+        return fn.apply(this, arguments);
+      } finally {
+        const end = import_perf_hooks.performance.now();
+        STATE.nesting--;
+        if (STATE.nesting === 0) {
+          recordPerformanceEntry(key, {
+            durationMs: end - start,
+            count: options?.skipCount ? 0 : 1,
+            telemetry: !!options?.telemetry
+          });
+        }
+      }
+    };
+    Object.defineProperties(ret, Object.getOwnPropertyDescriptors(fn));
+    return ret;
+  };
+}
+function profileSpan(key, options) {
+  const start = import_perf_hooks.performance.now();
+  return {
+    [Symbol.dispose]() {
+      recordPerformanceEntry(key, {
+        durationMs: import_perf_hooks.performance.now() - start,
+        count: options?.skipCount ? 0 : 1,
+        telemetry: !!options?.telemetry
+      });
+    }
+  };
+}
+function recordPerformanceEntry(key, options) {
+  bumpPerfCounter(STATE.allCounters, key, options?.durationMs, options?.count);
+  if (options?.telemetry) {
+    bumpPerfCounter(STATE.telemetryCounters, key, options?.durationMs, options?.count);
+  }
+}
+function resetCounters() {
+  STATE.allCounters = {};
+  STATE.telemetryCounters = {};
+}
+function bumpPerfCounter(counters, key, durationMs, count2) {
+  const ctr = counters[key];
+  if (ctr) {
+    ctr.count += count2 ?? 1;
+    ctr.total += durationMs ?? 0;
+  } else {
+    counters[key] = {
+      count: count2 ?? 1,
+      total: durationMs ?? 0
+    };
+  }
+}
+function profileObj(objName, options) {
+  return function(obj) {
+    for (const [name, { value }] of Object.entries(Object.getOwnPropertyDescriptors(obj))) {
+      if (typeof value === "function") {
+        const key = `${objName}.${name}`;
+        obj[name] = profileFn(key, options)(value);
+      }
+    }
+    return obj;
+  };
+}
+function readPerfCounters(options) {
+  const counters = options?.telemetry ? STATE.telemetryCounters : STATE.allCounters;
+  let ret = Object.entries(counters).map(([key, { count: count2, total }]) => [key, { count: count2, total: Math.floor(total) }]).sort((a, b) => b[1].total - a[1].total);
+  if (options?.n !== void 0) {
+    ret = ret.slice(0, options.n);
+  }
+  return Object.fromEntries(ret);
+}
+function initializeBuiltinProfiling() {
+  const envYes = ["1", "yes", "true"];
+  if (STATE.builtinsHooked || process.env.NODE_ENV === "test" || envYes.includes(process.env.CDK_NO_PERF_BUILTINS)) {
+    return;
+  }
+  STATE.builtinsHooked = true;
+  profileObj("fs", { telemetry: true })(require("fs"));
+  profileObj("child_process", { telemetry: true })(require("child_process"));
+}
+var import_perf_hooks, STATE;
+var init_perf = __esm({
+  "../../aws-cdk-lib/core/lib/private/perf.ts"() {
+    "use strict";
+    import_perf_hooks = require("perf_hooks");
+    init_dispose_polyfill();
+    STATE = globalThis[/* @__PURE__ */ Symbol.for("@aws-cdk/core:performanceProfilingState")] ??= {
+      builtinsHooked: false,
+      nesting: 0,
+      telemetryCounters: {},
+      allCounters: {}
+    };
+    initializeBuiltinProfiling();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/index.ts
+var fs6, os2, path6, _FileSystem_decorators, _init3, _FileSystem, FileSystem;
+var init_fs = __esm({
+  "../../aws-cdk-lib/core/lib/fs/index.ts"() {
+    "use strict";
+    fs6 = __toESM(require("fs"));
+    os2 = __toESM(require("os"));
+    path6 = __toESM(require("path"));
+    init_copy();
+    init_fingerprint();
+    init_perf();
+    init_ignore();
+    init_options();
+    _FileSystem_decorators = [profileObj("FileSystem", { telemetry: true })];
+    _FileSystem = class _FileSystem {
+      /**
+       * Copies an entire directory structure.
+       * @param srcDir Source directory
+       * @param destDir Destination directory
+       * @param options options
+       * @param rootDir Root directory to calculate exclusions from
+       */
+      static copyDirectory(srcDir, destDir, options = {}, rootDir) {
+        return copyDirectory(srcDir, destDir, options, rootDir);
+      }
+      /**
+       * Produces fingerprint based on the contents of a single file or an entire directory tree.
+       *
+       * Line endings are converted from CRLF to LF.
+       *
+       * The fingerprint will also include:
+       * 1. An extra string if defined in `options.extra`.
+       * 2. The symlink follow mode value.
+       *
+       * @param fileOrDirectory The directory or file to fingerprint
+       * @param options Fingerprinting options
+       */
+      static fingerprint(fileOrDirectory, options = {}) {
+        return fingerprint(fileOrDirectory, options);
+      }
+      /**
+       * Checks whether a directory is empty
+       *
+       * @param dir The directory to check
+       */
+      static isEmpty(dir) {
+        return fs6.readdirSync(dir).length === 0;
+      }
+      /**
+       * The real path of the system temp directory
+       */
+      static get tmpdir() {
+        if (_FileSystem._tmpdir) {
+          return _FileSystem._tmpdir;
+        }
+        _FileSystem._tmpdir = fs6.realpathSync(os2.tmpdir());
+        return _FileSystem._tmpdir;
+      }
+      /**
+       * Creates a unique temporary directory in the **system temp directory**.
+       *
+       * @param prefix A prefix for the directory name. Six random characters
+       * will be generated and appended behind this prefix.
+       */
+      static mkdtemp(prefix) {
+        return fs6.mkdtempSync(path6.join(_FileSystem.tmpdir, prefix));
+      }
+      /**
+       * Deletes a directory
+       */
+      static rmrf(dirname6) {
+        fs6.rmSync(dirname6, { force: true, recursive: true });
+      }
+      static _tmpdir;
+    };
+    _init3 = __decoratorStart(null);
+    _FileSystem = __decorateElement(_init3, 0, "FileSystem", _FileSystem_decorators, _FileSystem);
+    __runInitializers(_init3, 1, _FileSystem);
+    FileSystem = _FileSystem;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-staging.ts
+function dockerExec(args, options) {
+  const prog = process.env.CDK_DOCKER ?? "docker";
+  const proc = (0, import_child_process.spawnSync)(prog, args, options ?? {
+    encoding: "utf-8",
+    stdio: [
+      // show Docker output
+      "ignore",
+      // ignore stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    throw proc.error;
+  }
+  if (proc.status !== 0) {
+    let prependLines2 = function(firstLine, text) {
+      if (!text || text.length === 0) {
+        return [];
+      }
+      const padding = " ".repeat(firstLine.length);
+      return text.toString("utf-8").split("\n").map((line, idx) => `${idx === 0 ? firstLine : padding}${line}`);
+    };
+    var prependLines = prependLines2;
+    const reason = proc.signal != null ? `signal ${proc.signal}` : `status ${proc.status}`;
+    const command = [prog, ...args.map((arg) => /[^a-z0-9_-]/i.test(arg) ? JSON.stringify(arg) : arg)].join(" ");
+    throw new ExecutionError(lit`CommandExecutionFailed`, [
+      `${prog} exited with ${reason}`,
+      ...prependLines2("--> STDOUT:  ", proc.stdout) ?? [],
+      ...prependLines2("--> STDERR:  ", proc.stderr) ?? [],
+      `--> Command: ${command}`
+    ].join("\n"));
+  }
+  return proc;
+}
+var import_child_process, crypto5, os3, AssetBundlingBase, _run_dec, _a3, _init4, AssetBundlingBindMount, _run_dec2, _a4, _init5, AssetBundlingVolumeCopy;
+var init_asset_staging = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-staging.ts"() {
+    "use strict";
+    import_child_process = require("child_process");
+    crypto5 = __toESM(require("crypto"));
+    os3 = __toESM(require("os"));
+    init_asset_staging2();
+    init_errors();
+    init_literal_string();
+    init_perf();
+    AssetBundlingBase = class {
+      options;
+      constructor(options) {
+        this.options = options;
+      }
+      /**
+       * Determines a useful default user if not given otherwise
+       */
+      determineUser() {
+        let user;
+        if (this.options.user) {
+          user = this.options.user;
+        } else {
+          const userInfo2 = os3.userInfo();
+          user = userInfo2.uid !== -1 ? `${userInfo2.uid}:${userInfo2.gid}` : "1000:1000";
+        }
+        return user;
+      }
+    };
+    AssetBundlingBindMount = class extends (_a3 = AssetBundlingBase, _run_dec = [profileFn("AssetBundlingBindMount.run", { telemetry: true })], _a3) {
+      constructor() {
+        super(...arguments);
+        __runInitializers(_init4, 5, this);
+      }
+      run() {
+        this.options.image.run({
+          command: this.options.command,
+          user: this.determineUser(),
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumesFrom: this.options.volumesFrom,
+          volumes: [
+            {
+              hostPath: this.options.sourcePath,
+              containerPath: AssetStaging.BUNDLING_INPUT_DIR
+            },
+            {
+              hostPath: this.options.bundleDir,
+              containerPath: AssetStaging.BUNDLING_OUTPUT_DIR
+            },
+            ...this.options.volumes ?? []
+          ],
+          network: this.options.network,
+          platform: this.options.platform
+        });
+      }
+    };
+    _init4 = __decoratorStart(_a3);
+    __decorateElement(_init4, 1, "run", _run_dec, AssetBundlingBindMount);
+    __decoratorMetadata(_init4, AssetBundlingBindMount);
+    AssetBundlingVolumeCopy = class extends (_a4 = AssetBundlingBase, _run_dec2 = [profileFn("AssetBundlingVolumeCopy.run", { telemetry: true })], _a4) {
+      constructor(options) {
+        super(options);
+        __runInitializers(_init5, 5, this);
+        /**
+         * Name of the Docker volume that is used for the asset input
+         */
+        __publicField(this, "inputVolumeName");
+        /**
+         * Name of the Docker volume that is used for the asset output
+         */
+        __publicField(this, "outputVolumeName");
+        /**
+         * Name of the Docker helper container to copy files into the volume
+         */
+        __publicField(this, "copyContainerName");
+        const copySuffix = crypto5.randomBytes(12).toString("hex");
+        this.inputVolumeName = `assetInput${copySuffix}`;
+        this.outputVolumeName = `assetOutput${copySuffix}`;
+        this.copyContainerName = `copyContainer${copySuffix}`;
+      }
+      /**
+       * Creates volumes for asset input and output
+       */
+      prepareVolumes() {
+        dockerExec(["volume", "create", this.inputVolumeName]);
+        dockerExec(["volume", "create", this.outputVolumeName]);
+      }
+      /**
+       * Removes volumes for asset input and output
+       */
+      cleanVolumes() {
+        dockerExec(["volume", "rm", this.inputVolumeName]);
+        dockerExec(["volume", "rm", this.outputVolumeName]);
+      }
+      /**
+       * runs a helper container that holds volumes and does some preparation tasks
+       * @param user The user that will later access these files and needs permissions to do so
+       */
+      startHelperContainer(user) {
+        dockerExec([
+          "run",
+          "--name",
+          this.copyContainerName,
+          "-v",
+          `${this.inputVolumeName}:${AssetStaging.BUNDLING_INPUT_DIR}`,
+          "-v",
+          `${this.outputVolumeName}:${AssetStaging.BUNDLING_OUTPUT_DIR}`,
+          "public.ecr.aws/docker/library/alpine",
+          "sh",
+          "-c",
+          `mkdir -p ${AssetStaging.BUNDLING_INPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_OUTPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * removes the Docker helper container
+       */
+      cleanHelperContainer() {
+        dockerExec(["rm", this.copyContainerName]);
+      }
+      /**
+       * copy files from the host where this is executed into the input volume
+       * @param sourcePath - path to folder where files should be copied from - without trailing slash
+       */
+      copyInputFrom(sourcePath) {
+        dockerExec([
+          "cp",
+          `${sourcePath}/.`,
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * copy files from the output volume to the host where this is executed
+       * @param outputPath - path to folder where files should be copied to - without trailing slash
+       */
+      copyOutputTo(outputPath) {
+        dockerExec([
+          "cp",
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_OUTPUT_DIR}/.`,
+          outputPath
+        ]);
+      }
+      run() {
+        const user = this.determineUser();
+        this.prepareVolumes();
+        this.startHelperContainer(user);
+        this.copyInputFrom(this.options.sourcePath);
+        this.options.image.run({
+          command: this.options.command,
+          user,
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumes: this.options.volumes,
+          volumesFrom: [
+            this.copyContainerName,
+            ...this.options.volumesFrom ?? []
+          ],
+          platform: this.options.platform
+        });
+        this.copyOutputTo(this.options.bundleDir);
+        this.cleanHelperContainer();
+        this.cleanVolumes();
+      }
+    };
+    _init5 = __decoratorStart(_a4);
+    __decorateElement(_init5, 1, "run", _run_dec2, AssetBundlingVolumeCopy);
+    __decoratorMetadata(_init5, AssetBundlingVolumeCopy);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts
+function quiet() {
+  const deprecated = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  return deprecated;
+}
+function reset(deprecated) {
+  if (deprecated === void 0) {
+    delete process.env.JSII_DEPRECATED;
+  } else {
+    process.env.JSII_DEPRECATED = deprecated;
+  }
+}
+var init_jsii_deprecated = __esm({
+  "../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bundling.ts
+function flatten(x) {
+  return Array.prototype.concat([], ...x);
+}
+function isSeLinux() {
+  if (process.platform != "linux") {
+    return false;
+  }
+  const prog = "selinuxenabled";
+  const proc = (0, import_child_process2.spawnSync)(prog, [], {
+    stdio: [
+      // show selinux status output
+      "pipe",
+      // get value of stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    return false;
+  }
+  if (proc.status == 0) {
+    return true;
+  } else {
+    return false;
+  }
+}
+var import_child_process2, import_path, _cp_dec, _run_dec3, _init6, BundlingDockerImage, _fromBuild_dec, _a5, _init7, _DockerImage, DockerImage, PERF_BUNDLING_SRC_SYM;
+var init_bundling = __esm({
+  "../../aws-cdk-lib/core/lib/bundling.ts"() {
+    "use strict";
+    import_child_process2 = require("child_process");
+    import_path = require("path");
+    init_errors();
+    init_fs();
+    init_asset_staging();
+    init_jsii_deprecated();
+    init_literal_string();
+    init_perf();
+    _run_dec3 = [profileFn("BundlingDockerImage.run", { telemetry: true })], _cp_dec = [profileFn("BundlingDockerImage.cp", { telemetry: true })];
+    BundlingDockerImage = class {
+      /** @param image The Docker image */
+      constructor(image, _imageHash) {
+        this.image = image;
+        this._imageHash = _imageHash;
+        __runInitializers(_init6, 5, this);
+      }
+      image;
+      _imageHash;
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new DockerImage(image);
+      }
+      /**
+       * Reference an image that's built directly from sources on disk.
+       *
+       * @param path The path to the directory containing the Docker file
+       * @param options Docker build options
+       *
+       * @deprecated use DockerImage.fromBuild()
+       */
+      static fromAsset(path23, options = {}) {
+        return DockerImage.fromBuild(path23, options);
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        return this._imageHash ?? this.image;
+      }
+      run(options = {}) {
+        const volumes = options.volumes || [];
+        const environment = options.environment || {};
+        const entrypoint = options.entrypoint?.[0] || null;
+        const command = [
+          ...options.entrypoint?.[1] ? [...options.entrypoint.slice(1)] : [],
+          ...options.command ? [...options.command] : []
+        ];
+        const dockerArgs = [
+          "run",
+          "--rm",
+          ...options.securityOpt ? ["--security-opt", options.securityOpt] : [],
+          ...options.network ? ["--network", options.network] : [],
+          ...options.platform ? ["--platform", options.platform] : [],
+          ...options.user ? ["-u", options.user] : [],
+          ...options.volumesFrom ? flatten(options.volumesFrom.map((v) => ["--volumes-from", v])) : [],
+          ...flatten(volumes.map((v) => ["-v", `${v.hostPath}:${v.containerPath}:${isSeLinux() ? "z," : ""}${v.consistency ?? "delegated" /* DELEGATED */}`])),
+          ...flatten(Object.entries(environment).map(([k, v]) => ["--env", `${k}=${v}`])),
+          ...options.workingDirectory ? ["-w", options.workingDirectory] : [],
+          ...entrypoint ? ["--entrypoint", entrypoint] : [],
+          this.image,
+          ...command
+        ];
+        dockerExec(dockerArgs);
+      }
+      cp(imagePath, outputPath) {
+        const { stdout } = dockerExec(["create", this.image], {});
+        const match = stdout.toString().match(/([0-9a-f]{16,})/);
+        if (!match) {
+          throw new ExecutionError(lit`FailedToFailedExtractContainer`, "Failed to extract container ID from Docker create output");
+        }
+        const containerId = match[1];
+        const containerPath = `${containerId}:${imagePath}`;
+        const destPath = outputPath ?? FileSystem.mkdtemp("cdk-docker-cp-");
+        try {
+          dockerExec(["cp", containerPath, destPath]);
+          return destPath;
+        } catch (err) {
+          throw new ExecutionError(lit`FailedToFailedCopyFiles`, `Failed to copy files from ${containerPath} to ${destPath}: ${err}`);
+        } finally {
+          dockerExec(["rm", "-v", containerId]);
+        }
+      }
+    };
+    _init6 = __decoratorStart(null);
+    __decorateElement(_init6, 1, "run", _run_dec3, BundlingDockerImage);
+    __decorateElement(_init6, 1, "cp", _cp_dec, BundlingDockerImage);
+    __decoratorMetadata(_init6, BundlingDockerImage);
+    _DockerImage = class _DockerImage extends (_a5 = BundlingDockerImage, _fromBuild_dec = [profileFn("DockerImage.fromBuild", { telemetry: true })], _a5) {
+      constructor(image, _imageHash) {
+        const deprecated = quiet();
+        super(image, _imageHash);
+        /** The Docker image */
+        __publicField(this, "image");
+        reset(deprecated);
+        this.image = image;
+      }
+      static fromBuild(path23, options = {}) {
+        const buildArgs = options.buildArgs || {};
+        if (options.file && (0, import_path.isAbsolute)(options.file)) {
+          throw new UnscopedValidationError(lit`MustBeFileRelativeDocker`, `"file" must be relative to the docker build directory. Got ${options.file}`);
+        }
+        const hash = FileSystem.fingerprint(path23, { extraHash: JSON.stringify(options) });
+        const tag = `cdk-${hash}`;
+        const usingBuildContexts = Object.keys(options.buildContexts ?? {}).length > 0;
+        if (usingBuildContexts || !this.imageAlreadyExists(tag)) {
+          const dockerArgs = [
+            "build",
+            "-t",
+            tag,
+            ...options.file ? ["-f", (0, import_path.join)(path23, options.file)] : [],
+            ...options.platform ? ["--platform", options.platform] : [],
+            ...options.network ? ["--network", options.network] : [],
+            ...options.targetStage ? ["--target", options.targetStage] : [],
+            ...options.cacheFrom ? [...options.cacheFrom.map((cacheFrom) => ["--cache-from", this.cacheOptionToFlag(cacheFrom)]).flat()] : [],
+            ...options.cacheTo ? ["--cache-to", this.cacheOptionToFlag(options.cacheTo)] : [],
+            ...options.cacheDisabled ? ["--no-cache"] : [],
+            ...flatten(Object.entries(buildArgs).map(([k, v]) => ["--build-arg", `${k}=${v}`])),
+            ...flatten(Object.entries(options.buildContexts || {}).map(([k, v]) => ["--build-context", `${k}=${v}`])),
+            path23
+          ];
+          dockerExec(dockerArgs);
+        }
+        return new _DockerImage(tag, hash);
+      }
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new _DockerImage(image);
+      }
+      static imageAlreadyExists(tag) {
+        const prog = process.env.CDK_DOCKER ?? "docker";
+        const proc = (0, import_child_process2.spawnSync)(prog, ["image", "inspect", tag], {
+          stdio: "ignore"
+        });
+        return proc.status === 0;
+      }
+      static cacheOptionToFlag(option) {
+        let flag = `type=${option.type}`;
+        if (option.params) {
+          flag += "," + Object.entries(option.params).map(([k, v]) => `${k}=${v}`).join(",");
+        }
+        return flag;
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        const deprecated = quiet();
+        const json = super.toJSON();
+        reset(deprecated);
+        return json;
+      }
+      /**
+       * Runs a Docker image
+       */
+      run(options = {}) {
+        const deprecated = quiet();
+        const result = super.run(options);
+        reset(deprecated);
+        return result;
+      }
+      /**
+       * Copies a file or directory out of the Docker image to the local filesystem.
+       *
+       * If `outputPath` is omitted the destination path is a temporary directory.
+       *
+       * @param imagePath the path in the Docker image
+       * @param outputPath the destination path for the copy operation
+       * @returns the destination path
+       */
+      cp(imagePath, outputPath) {
+        const deprecated = quiet();
+        const result = super.cp(imagePath, outputPath);
+        reset(deprecated);
+        return result;
+      }
+    };
+    _init7 = __decoratorStart(_a5);
+    __decorateElement(_init7, 9, "fromBuild", _fromBuild_dec, _DockerImage);
+    __decoratorMetadata(_init7, _DockerImage);
+    __runInitializers(_init7, 3, _DockerImage);
+    DockerImage = _DockerImage;
+    PERF_BUNDLING_SRC_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.bundlingSource");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cache.ts
+var Cache;
+var init_cache = __esm({
+  "../../aws-cdk-lib/core/lib/private/cache.ts"() {
+    "use strict";
+    Cache = class {
+      cache = /* @__PURE__ */ new Map();
+      /**
+       * Clears the cache
+       */
+      clear() {
+        this.cache.clear();
+      }
+      /**
+       * Get a value from the cache or calculate it
+       */
+      obtain(cacheKey, calcFn) {
+        let value = this.cache.get(cacheKey);
+        if (value) {
+          return value;
+        }
+        value = calcFn();
+        this.cache.set(cacheKey, value);
+        return value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/asset-staging.ts
+function renderAssetFilename(assetHash, extension = "") {
+  return `asset.${assetHash}${extension}`;
+}
+function determineHashType(scope, assetHashType, customSourceFingerprint) {
+  const hashType = customSourceFingerprint ? assetHashType ?? "custom" /* CUSTOM */ : assetHashType ?? "source" /* SOURCE */;
+  if (customSourceFingerprint && hashType !== "custom" /* CUSTOM */) {
+    throw new ValidationError(lit`CannotSpecifyAssetHashTypeWithAssetHash`, `Cannot specify \`${assetHashType}\` for \`assetHashType\` when \`assetHash\` is specified. Use \`CUSTOM\` or leave \`undefined\`.`, scope);
+  }
+  if (hashType === "custom" /* CUSTOM */ && !customSourceFingerprint) {
+    throw new ValidationError(lit`MustBeSpecified`, "`assetHash` must be specified when `assetHashType` is set to `AssetHashType.CUSTOM`.", scope);
+  }
+  return hashType;
+}
+function validateInternalSymlinks(root, scope, followMode, ignoreStrat) {
+  walkDirectory(root, { follow: followMode, ignoreStrategy: ignoreStrat }, {
+    onSymlink: (entry) => {
+      if (!entry.internal) {
+        throw new ValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${followMode}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`,
+          scope
+        );
+      }
+    }
+  });
+}
+function calculateCacheKey(props) {
+  return crypto6.createHash("sha256").update(JSON.stringify(sortObject(props), sanitizeHashValue)).digest("hex");
+}
+function sortObject(object) {
+  if (typeof object !== "object" || object instanceof Array) {
+    return object;
+  }
+  const ret = {};
+  for (const key of Object.keys(object).sort()) {
+    ret[key] = sortObject(object[key]);
+  }
+  return ret;
+}
+function sanitizeHashValue(key, value) {
+  if (key === "PIP_INDEX_URL" || key === "PIP_EXTRA_INDEX_URL") {
+    try {
+      let url2 = new URL(value);
+      if (url2.password) {
+        url2.password = "";
+        return url2.toString();
+      }
+    } catch (e) {
+      if (e.name === "TypeError") {
+        throw new AssumptionError(lit`MustBeValid`, `${key} must be a valid URL, got ${value}.`);
+      }
+      throw e;
+    }
+  }
+  return value;
+}
+function findSingleFile(scope, directory, archiveOnly) {
+  if (!fs7.existsSync(directory)) {
+    throw new ValidationError(lit`DirectoryDoesNotExist`, `Directory ${directory} does not exist.`, scope);
+  }
+  if (!fs7.statSync(directory).isDirectory()) {
+    throw new ValidationError(lit`PathIsNotDirectory`, `${directory} is not a directory.`, scope);
+  }
+  const content = fs7.readdirSync(directory);
+  if (content.length === 1) {
+    const file = path7.join(directory, content[0]);
+    const extension = getExtension(content[0]).toLowerCase();
+    if (fs7.statSync(file).isFile() && (!archiveOnly || ARCHIVE_EXTENSIONS.includes(extension))) {
+      return file;
+    }
+  }
+  return void 0;
+}
+function determineBundledAsset(scope, bundleDir, outputType, ignore, followMode) {
+  const archiveFile = findSingleFile(scope, bundleDir, outputType !== "single-file" /* SINGLE_FILE */);
+  if (outputType === "auto-discover" /* AUTO_DISCOVER */) {
+    outputType = archiveFile ? "archived" /* ARCHIVED */ : "not-archived" /* NOT_ARCHIVED */;
+  }
+  switch (outputType) {
+    case "not-archived" /* NOT_ARCHIVED */:
+      if (followMode == "internal-only" /* BLOCK_EXTERNAL */) {
+        validateInternalSymlinks(bundleDir, scope, followMode, ignore);
+      }
+      return { path: bundleDir, packaging: "zip" /* ZIP_DIRECTORY */ };
+    case "archived" /* ARCHIVED */:
+    case "single-file" /* SINGLE_FILE */:
+      if (!archiveFile) {
+        throw new ValidationError(lit`BundlingOutputDirectoryExpectedSingleFile`, "Bundling output directory is expected to include only a single file when `output` is set to `ARCHIVED` or `SINGLE_FILE`", scope);
+      } else if (fs7.lstatSync(archiveFile).isSymbolicLink()) {
+        throw new ValidationError(lit`SymlinkInBundlingOutput`, "The output from bundling is not allowed to be a symlink.", scope);
+      }
+      return { path: archiveFile, packaging: "file" /* FILE */, extension: getExtension(archiveFile) };
+  }
+}
+function getExtension(source) {
+  for (const ext of ARCHIVE_EXTENSIONS) {
+    if (source.toLowerCase().endsWith(ext)) {
+      return ext;
+    }
+  }
+  return path7.extname(source);
+}
+function timerSpanFromOptions(x) {
+  const src = bundlingSourceFromOptions(x);
+  return src ? profileSpan(`bundle:${src}`, { telemetry: true }) : void 0;
+}
+function bundlingSourceFromOptions(x) {
+  const value = x[PERF_BUNDLING_SRC_SYM];
+  return typeof value === "string" ? value : void 0;
+}
+var crypto6, path7, import_constructs7, fs7, ARCHIVE_EXTENSIONS, ASSET_SALT_CONTEXT_KEY, AssetStaging;
+var init_asset_staging2 = __esm({
+  "../../aws-cdk-lib/core/lib/asset-staging.ts"() {
+    "use strict";
+    crypto6 = __toESM(require("crypto"));
+    path7 = __toESM(require("path"));
+    import_constructs7 = __toESM(require_lib4());
+    fs7 = __toESM(require_lib5());
+    init_assets();
+    init_bundling();
+    init_errors();
+    init_fs();
+    init_fingerprint();
+    init_names();
+    init_asset_staging();
+    init_cache();
+    init_core_construct_finders();
+    init_literal_string();
+    init_perf();
+    init_cx_api();
+    init_utils();
+    ARCHIVE_EXTENSIONS = [".tar.gz", ".zip", ".jar", ".tar", ".tgz"];
+    ASSET_SALT_CONTEXT_KEY = "@aws-cdk/core:assetHashSalt";
+    AssetStaging = class _AssetStaging extends import_constructs7.Construct {
+      /**
+       * The directory inside the bundling container into which the asset sources will be mounted.
+       */
+      static BUNDLING_INPUT_DIR = "/asset-input";
+      /**
+       * The directory inside the bundling container into which the bundled output should be written.
+       */
+      static BUNDLING_OUTPUT_DIR = "/asset-output";
+      /**
+       * Clears the asset hash cache
+       */
+      static clearAssetHashCache() {
+        this.assetCache.clear();
+        clearLargeFileFingerprintCache();
+      }
+      /**
+       * Cache of asset hashes based on asset configuration to avoid repeated file
+       * system and bundling operations.
+       */
+      static assetCache = new Cache();
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       *
+       * @deprecated - Use `absoluteStagedPath` instead.
+       */
+      stagedPath;
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       */
+      absoluteStagedPath;
+      /**
+       * The absolute path of the asset as it was referenced by the user.
+       */
+      sourcePath;
+      /**
+       * A cryptographic hash of the asset.
+       */
+      assetHash;
+      /**
+       * How this asset should be packaged.
+       */
+      packaging;
+      /**
+       * Whether this asset is an archive (zip or jar).
+       */
+      isArchive;
+      fingerprintOptions;
+      hashType;
+      assetOutdir;
+      /**
+       * A custom source fingerprint given by the user
+       *
+       * Will not be used literally, always hashed later on.
+       */
+      customSourceFingerprint;
+      cacheKey;
+      _sourceStats;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const salt = this.node.tryGetContext(ASSET_SALT_CONTEXT_KEY);
+        this.sourcePath = path7.resolve(props.sourcePath);
+        this.fingerprintOptions = {
+          ...props,
+          exclude: [".is_custom_resource", ...props.exclude ?? []],
+          extraHash: props.extraHash || salt ? `${props.extraHash ?? ""}${salt ?? ""}` : void 0
+        };
+        if (!fs7.existsSync(this.sourcePath)) {
+          throw new ValidationError(lit`CannotFindAsset`, `Cannot find asset at ${this.sourcePath}`, this);
+        }
+        const ignoreStrategy = IgnoreStrategy.fromCopyOptions(props, this.sourcePath);
+        if (props.follow == "internal-only" /* BLOCK_EXTERNAL */ && fs7.statSync(this.sourcePath).isDirectory()) {
+          validateInternalSymlinks(this.sourcePath, scope, props.follow, ignoreStrategy);
+        }
+        this._sourceStats = fs7.statSync(this.sourcePath);
+        const outdir = stageOf(this)?.assetOutdir;
+        if (!outdir) {
+          throw new ValidationError(lit`UnableToDetermineCloudAssembly`, 'unable to determine cloud assembly asset output directory. Assets must be defined indirectly within a "Stage" or an "App" scope', this);
+        }
+        this.assetOutdir = outdir;
+        this.customSourceFingerprint = props.assetHash;
+        this.hashType = determineHashType(this, props.assetHashType, this.customSourceFingerprint);
+        let stageThisAsset;
+        let skip = false;
+        if (props.bundling) {
+          skip = !stackOf(this).bundlingRequired;
+          const bundling = props.bundling;
+          stageThisAsset = () => this.stageByBundling(bundling, skip, props);
+        } else {
+          stageThisAsset = () => this.stageByCopying();
+        }
+        this.cacheKey = calculateCacheKey({
+          outdir: this.assetOutdir,
+          sourcePath: path7.resolve(props.sourcePath),
+          bundling: props.bundling,
+          assetHashType: this.hashType,
+          customFingerprint: this.customSourceFingerprint,
+          extraHash: props.extraHash,
+          exclude: props.exclude,
+          ignoreMode: props.ignoreMode,
+          skip
+        });
+        const staged = _AssetStaging.assetCache.obtain(this.cacheKey, stageThisAsset);
+        this.stagedPath = staged.stagedPath;
+        this.absoluteStagedPath = staged.stagedPath;
+        this.assetHash = staged.assetHash;
+        this.packaging = staged.packaging;
+        this.isArchive = staged.isArchive;
+        this._sourceStats = void 0;
+      }
+      get sourceStats() {
+        if (!this._sourceStats) {
+          throw new AssumptionError(lit`SourceStatusUnset`, "_sourceStats has been unset");
+        }
+        return this._sourceStats;
+      }
+      /**
+       * A cryptographic hash of the asset.
+       *
+       * @deprecated see `assetHash`.
+       */
+      get sourceHash() {
+        return this.assetHash;
+      }
+      /**
+       * Return the path to the staged asset, relative to the Cloud Assembly (manifest) directory of the given stack
+       *
+       * Only returns a relative path if the asset was staged, returns an absolute path if
+       * it was not staged.
+       *
+       * A bundled asset might end up in the outDir and still not count as
+       * "staged"; if asset staging is disabled we're technically expected to
+       * reference source directories, but we don't have a source directory for the
+       * bundled outputs (as the bundle output is written to a temporary
+       * directory). Nevertheless, we will still return an absolute path.
+       *
+       * A non-obvious directory layout may look like this:
+       *
+       * ```
+       *   CLOUD ASSEMBLY ROOT
+       *     +-- asset.12345abcdef/
+       *     +-- assembly-Stage
+       *           +-- MyStack.template.json
+       *           +-- MyStack.assets.json <- will contain { "path": "../asset.12345abcdef" }
+       * ```
+       */
+      relativeStagedPath(stack) {
+        const asmManifestDir = stageOf(stack)?.outdir;
+        if (!asmManifestDir) {
+          return this.stagedPath;
+        }
+        const isOutsideAssetDir = path7.relative(this.assetOutdir, this.stagedPath).startsWith("..");
+        if (isOutsideAssetDir || this.stagingDisabled) {
+          return this.stagedPath;
+        }
+        return path7.relative(asmManifestDir, this.stagedPath);
+      }
+      /**
+       * Stage the source to the target by copying
+       *
+       * Optionally skip if staging is disabled, in which case we pretend we did something but we don't really.
+       */
+      stageByCopying() {
+        const assetHash = this.calculateHash(this.hashType);
+        const targetPath = this.stagingDisabled ? this.sourcePath : path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, getExtension(this.sourcePath)));
+        const stagedPath = this.renderStagedPath(this.sourcePath, targetPath);
+        if (!this.sourceStats.isDirectory() && !this.sourceStats.isFile()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryOrFile`, `Asset ${this.sourcePath} is expected to be either a directory or a regular file`, this);
+        }
+        this.stageAsset(this.sourcePath, stagedPath, "copy");
+        return {
+          assetHash,
+          stagedPath,
+          packaging: this.sourceStats.isDirectory() ? "zip" /* ZIP_DIRECTORY */ : "file" /* FILE */,
+          isArchive: this.sourceStats.isDirectory() || ARCHIVE_EXTENSIONS.includes(getExtension(this.sourcePath).toLowerCase())
+        };
+      }
+      /**
+       * Stage the source to the target by bundling
+       *
+       * Optionally skip, in which case we pretend we did something but we don't really.
+       */
+      stageByBundling(bundling, skip, props) {
+        if (!this.sourceStats.isDirectory()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryForBundling`, `Asset ${this.sourcePath} is expected to be a directory when bundling`, this);
+        }
+        if (skip) {
+          let hashType = this.hashType;
+          if (hashType === "output" /* OUTPUT */ || hashType === "bundle" /* BUNDLE */) {
+            this.customSourceFingerprint = Names.uniqueId(this);
+            hashType = "custom" /* CUSTOM */;
+          }
+          return {
+            assetHash: this.calculateHash(hashType, bundling),
+            stagedPath: this.sourcePath,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            isArchive: true
+          };
+        }
+        let assetHash = this.hashType === "source" /* SOURCE */ || this.hashType === "custom" /* CUSTOM */ ? this.calculateHash(this.hashType, bundling) : void 0;
+        const bundleDir = this.determineBundleDir(this.assetOutdir, assetHash);
+        this.bundle(bundling, bundleDir);
+        const bundlingOutputType = bundling.outputType ?? "auto-discover" /* AUTO_DISCOVER */;
+        const ignore = IgnoreStrategy.fromCopyOptions(props, bundleDir);
+        const bundledAsset = determineBundledAsset(this, bundleDir, bundlingOutputType, ignore, props.follow);
+        assetHash = assetHash ?? this.calculateHash(this.hashType, bundling, bundledAsset.path);
+        const stagedPath = this.renderStagedPath(
+          bundledAsset.path,
+          path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, bundledAsset.extension))
+        );
+        this.stageAsset(bundledAsset.path, stagedPath, "move");
+        if (bundledAsset.packaging === "file" /* FILE */) {
+          if (this.hashType === "output" /* OUTPUT */ || this.hashType === "bundle" /* BUNDLE */) {
+            fs7.removeSync(path7.dirname(bundledAsset.path));
+          } else {
+            fs7.closeSync(fs7.openSync(bundledAsset.path, "w"));
+          }
+        }
+        return {
+          assetHash,
+          stagedPath,
+          packaging: bundledAsset.packaging,
+          isArchive: bundlingOutputType !== "single-file" /* SINGLE_FILE */
+        };
+      }
+      /**
+       * Whether staging has been disabled
+       */
+      get stagingDisabled() {
+        return !!this.node.tryGetContext(DISABLE_ASSET_STAGING_CONTEXT);
+      }
+      /**
+       * Copies or moves the files from sourcePath to targetPath.
+       *
+       * Moving implies the source directory is temporary and can be trashed.
+       *
+       * Will not do anything if source and target are the same.
+       */
+      stageAsset(sourcePath, targetPath, style) {
+        const isAlreadyStaged = fs7.existsSync(targetPath);
+        if (isAlreadyStaged) {
+          if (style === "move" && sourcePath !== targetPath) {
+            fs7.removeSync(sourcePath);
+          }
+          return;
+        }
+        if (style === "move") {
+          fs7.renameSync(sourcePath, targetPath);
+          return;
+        }
+        if (this.sourceStats.isFile()) {
+          fs7.copyFileSync(sourcePath, targetPath);
+        } else if (this.sourceStats.isDirectory()) {
+          fs7.mkdirSync(targetPath);
+          FileSystem.copyDirectory(sourcePath, targetPath, this.fingerprintOptions);
+        } else {
+          throw new ValidationError(lit`UnknownFileType`, `Unknown file type: ${sourcePath}`, this);
+        }
+      }
+      /**
+       * Determine the directory where we're going to write the bundling output
+       *
+       * This is the target directory where we're going to write the staged output
+       * files if we can (if the hash is fully known), or a temporary directory
+       * otherwise.
+       */
+      determineBundleDir(outdir, sourceHash) {
+        if (sourceHash) {
+          return path7.resolve(outdir, renderAssetFilename(sourceHash));
+        }
+        return path7.resolve(outdir, `bundling-temp-${this.cacheKey}`);
+      }
+      /**
+       * Bundles an asset to the given directory
+       *
+       * If the given directory already exists, assume that everything's already
+       * in order and don't do anything.
+       *
+       * @param options Bundling options
+       * @param bundleDir Where to create the bundle directory
+       * @returns The fully resolved bundle output directory.
+       */
+      bundle(options, bundleDir) {
+        if (fs7.existsSync(bundleDir)) {
+          return;
+        }
+        const tempDir = `${bundleDir}-building`;
+        fs7.rmSync(tempDir, { recursive: true, force: true });
+        fs7.ensureDirSync(tempDir);
+        fs7.chmodSync(tempDir, 511);
+        let localBundling;
+        try {
+          var _stack = [];
+          try {
+            process.stderr.write(`Bundling asset ${this.node.path}...
+`);
+            const _span = __using(_stack, timerSpanFromOptions(options));
+            localBundling = options.local?.tryBundle(tempDir, options);
+            if (!localBundling) {
+              const assetStagingOptions = {
+                sourcePath: this.sourcePath,
+                bundleDir: tempDir,
+                ...options
+              };
+              switch (options.bundlingFileAccess) {
+                case "VOLUME_COPY" /* VOLUME_COPY */:
+                  new AssetBundlingVolumeCopy(assetStagingOptions).run();
+                  break;
+                case "BIND_MOUNT" /* BIND_MOUNT */:
+                default:
+                  new AssetBundlingBindMount(assetStagingOptions).run();
+                  break;
+              }
+            }
+            fs7.renameSync(tempDir, bundleDir);
+          } catch (_) {
+            var _error = _, _hasError = true;
+          } finally {
+            __callDispose(_stack, _error, _hasError);
+          }
+        } catch (err) {
+          throw new ValidationError(lit`FailedToBundleAsset`, `Failed to bundle asset ${this.node.path}, bundle output is located at ${tempDir}: ${err}`, this);
+        }
+        if (FileSystem.isEmpty(bundleDir)) {
+          const outputDir = localBundling ? bundleDir : _AssetStaging.BUNDLING_OUTPUT_DIR;
+          throw new ValidationError(lit`BundlingProducedNoOutput`, `Bundling did not produce any output. Check that content is written to ${outputDir}.`, this);
+        }
+      }
+      calculateHash(hashType, bundling, outputDir) {
+        if (hashType == "custom" /* CUSTOM */ || hashType == "source" /* SOURCE */ && bundling) {
+          const hash = crypto6.createHash("sha256");
+          hash.update(this.customSourceFingerprint ?? FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions));
+          if (bundling) {
+            hash.update(JSON.stringify(bundling, sanitizeHashValue));
+          }
+          return hash.digest("hex");
+        }
+        switch (hashType) {
+          case "source" /* SOURCE */:
+            return FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions);
+          case "bundle" /* BUNDLE */:
+          case "output" /* OUTPUT */:
+            if (!outputDir) {
+              throw new ValidationError(lit`CannotUseHashTypeWithoutBundling`, `Cannot use \`${hashType}\` hash type when \`bundling\` is not specified.`, this);
+            }
+            return FileSystem.fingerprint(outputDir, this.fingerprintOptions);
+          default:
+            throw new ValidationError(lit`UnknownAssetHashType`, "Unknown asset hash type.", this);
+        }
+      }
+      renderStagedPath(sourcePath, targetPath) {
+        if (this.hashType !== "output" /* OUTPUT */ && path7.dirname(sourcePath) === targetPath) {
+          targetPath = targetPath + "_noext";
+        }
+        return targetPath;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/duration.ts
+function convert(amount, fromUnit, toUnit, { integral = true }) {
+  if (fromUnit.inMillis === toUnit.inMillis) {
+    if (integral && !Token.isUnresolved(amount) && !Number.isInteger(amount)) {
+      throw new UnscopedValidationError(lit`MustBeWholeNumber`, `${amount} must be a whole number of ${toUnit}.`);
+    }
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeDurationSpecifiedDuration`, `Duration must be specified as 'Duration.${toUnit}()' here since its value comes from a token and cannot be converted (got Duration.${fromUnit})`);
+  }
+  const value = amount * fromUnit.inMillis / toUnit.inMillis;
+  if (!Number.isInteger(value) && integral) {
+    throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+  }
+  return value;
+}
+function finestUnit(a, b) {
+  return a.inMillis < b.inMillis ? a : b;
+}
+var Duration, TimeUnit;
+var init_duration = __esm({
+  "../../aws-cdk-lib/core/lib/duration.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Duration = class _Duration {
+      /**
+       * Create a Duration representing an amount of milliseconds
+       *
+       * @param amount the amount of Milliseconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` ms.
+       */
+      static millis(amount) {
+        return new _Duration(amount, TimeUnit.Milliseconds);
+      }
+      /**
+       * Create a Duration representing an amount of seconds
+       *
+       * @param amount the amount of Seconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Seconds.
+       */
+      static seconds(amount) {
+        return new _Duration(amount, TimeUnit.Seconds);
+      }
+      /**
+       * Create a Duration representing an amount of minutes
+       *
+       * @param amount the amount of Minutes the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Minutes.
+       */
+      static minutes(amount) {
+        return new _Duration(amount, TimeUnit.Minutes);
+      }
+      /**
+       * Create a Duration representing an amount of hours
+       *
+       * @param amount the amount of Hours the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Hours.
+       */
+      static hours(amount) {
+        return new _Duration(amount, TimeUnit.Hours);
+      }
+      /**
+       * Create a Duration representing an amount of days
+       *
+       * @param amount the amount of Days the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Days.
+       */
+      static days(amount) {
+        return new _Duration(amount, TimeUnit.Days);
+      }
+      /**
+       * Parse a period formatted according to the ISO 8601 standard
+       *
+       * Days are the largest ISO duration supported, i.e.,
+       * weeks, months, and years are not supported.
+       *
+       * @example
+       * // This represents 1 day, 2 hours, 3 minutes, 4 seconds, and 567 milliseconds.
+       * 'P1DT2H3M4.567S'
+       *
+       * @see https://www.iso.org/standard/70907.html
+       * @param duration an ISO-formatted duration to be parsed.
+       * @returns the parsed `Duration`.
+       */
+      static parse(duration) {
+        const matches = duration.match(/^P(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)\.?(\d{1,3})?S)?)?$/);
+        if (!matches) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const [, days, hours, minutes, seconds, milliseconds] = matches;
+        if (!days && !hours && !minutes && !seconds && !milliseconds) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const millis = milliseconds ? milliseconds.padEnd(3, "0") : "";
+        return _Duration.millis(
+          _toInt(millis) + _toInt(seconds) * TimeUnit.Seconds.inMillis + _toInt(minutes) * TimeUnit.Minutes.inMillis + _toInt(hours) * TimeUnit.Hours.inMillis + _toInt(days) * TimeUnit.Days.inMillis
+        );
+        function _toInt(str) {
+          if (!str) {
+            return 0;
+          }
+          return Number(str);
+        }
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`DurationAmountsCannotNegative`, `Duration amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Add two Durations together
+       */
+      plus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) + convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Substract two Durations together
+       */
+      minus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) - convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Return the total number of milliseconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Milliseconds.
+       */
+      toMilliseconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Milliseconds, opts);
+      }
+      /**
+       * Return the total number of seconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Seconds.
+       */
+      toSeconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Seconds, opts);
+      }
+      /**
+       * Return the total number of minutes in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Minutes.
+       */
+      toMinutes(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Minutes, opts);
+      }
+      /**
+       * Return the total number of hours in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Hours.
+       */
+      toHours(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Hours, opts);
+      }
+      /**
+       * Return the total number of days in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Days.
+       */
+      toDays(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Days, opts);
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       */
+      toIsoString() {
+        if (this.amount === 0) {
+          return "PT0S";
+        }
+        const ret = ["P"];
+        let tee = false;
+        for (const [amount, unit] of this.components(true)) {
+          if ([TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours].includes(unit) && !tee) {
+            ret.push("T");
+            tee = true;
+          }
+          ret.push(`${amount}${unit.isoLabel}`);
+        }
+        return ret.join("");
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       * @deprecated Use `toIsoString()` instead.
+       */
+      toISOString() {
+        return this.toIsoString();
+      }
+      /**
+       * Turn this duration into a human-readable string
+       */
+      toHumanString() {
+        if (this.amount === 0) {
+          return fmtUnit(0, this.unit);
+        }
+        if (Token.isUnresolved(this.amount)) {
+          return ` ${this.unit.label}`;
+        }
+        return this.components(false).slice(0, 2).map(([amount, unit]) => fmtUnit(amount, unit)).join(" ");
+        function fmtUnit(amount, unit) {
+          if (amount === 1) {
+            return `${amount} ${unit.label.substring(0, unit.label.length - 1)}`;
+          }
+          return `${amount} ${unit.label}`;
+        }
+      }
+      /**
+       * Returns a string representation of this `Duration`
+       *
+       * This is never the right function to use when you want to use the `Duration`
+       * object in a template. Use `toSeconds()`, `toMinutes()`, `toDays()`, etc. instead.
+       */
+      toString() {
+        return `Duration.${this.unit.label}(${this.amount})`;
+      }
+      /**
+       * Return the duration in a set of whole numbered time components, ordered from largest to smallest
+       *
+       * Only components != 0 will be returned.
+       *
+       * Can combine millis and seconds together for the benefit of toIsoString,
+       * makes the logic in there simpler.
+       */
+      components(combineMillisWithSeconds) {
+        const ret = new Array();
+        let millis = convert(this.amount, this.unit, TimeUnit.Milliseconds, { integral: false });
+        for (const unit of [TimeUnit.Days, TimeUnit.Hours, TimeUnit.Minutes, TimeUnit.Seconds]) {
+          const count2 = convert(millis, TimeUnit.Milliseconds, unit, { integral: false });
+          const wholeCount = unit === TimeUnit.Seconds && combineMillisWithSeconds ? count2 : Math.floor(count2);
+          if (wholeCount > 0) {
+            ret.push([wholeCount, unit]);
+            millis -= wholeCount * unit.inMillis;
+          }
+        }
+        if (millis > 1e-4) {
+          ret.push([millis, TimeUnit.Milliseconds]);
+        }
+        return ret;
+      }
+      /**
+       * Checks if duration is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Returns unit of the duration
+       */
+      unitLabel() {
+        return this.unit.label;
+      }
+      /**
+       * Returns stringified number of duration
+       */
+      formatTokenToNumber() {
+        const number = Tokenization.stringifyNumber(this.amount);
+        return `${number} ${this.unit.label}`;
+      }
+    };
+    TimeUnit = class _TimeUnit {
+      constructor(label, isoLabel, inMillis) {
+        this.label = label;
+        this.isoLabel = isoLabel;
+        this.inMillis = inMillis;
+      }
+      label;
+      isoLabel;
+      inMillis;
+      static Milliseconds = new _TimeUnit("millis", "", 1);
+      static Seconds = new _TimeUnit("seconds", "S", 1e3);
+      static Minutes = new _TimeUnit("minutes", "M", 6e4);
+      static Hours = new _TimeUnit("hours", "H", 36e5);
+      static Days = new _TimeUnit("days", "D", 864e5);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/size.ts
+function allStorageUnits() {
+  return [
+    StorageUnit.Pebibytes,
+    StorageUnit.Tebibytes,
+    StorageUnit.Gibibytes,
+    StorageUnit.Mebibytes,
+    StorageUnit.Kibibytes,
+    StorageUnit.Bytes
+  ];
+}
+function convert2(amount, fromUnit, toUnit, options = {}) {
+  const rounding = options.rounding ?? 0 /* FAIL */;
+  if (fromUnit.inBytes === toUnit.inBytes) {
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeSizeSpecifiedSize`, `Size must be specified as 'Size.${toUnit}()' here since its value comes from a token and cannot be converted (got Size.${fromUnit})`);
+  }
+  const multiplier = fromUnit.inBytes / toUnit.inBytes;
+  const value = amount * multiplier;
+  switch (rounding) {
+    case 2 /* NONE */:
+      return value;
+    case 1 /* FLOOR */:
+      return Math.floor(value);
+    default:
+    case 0 /* FAIL */:
+      if (!Number.isInteger(value)) {
+        throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+      }
+      return value;
+  }
+}
+var Size, StorageUnit;
+var init_size = __esm({
+  "../../aws-cdk-lib/core/lib/size.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Size = class _Size {
+      /**
+       * Create a Storage representing an amount bytes.
+       *
+       * @param amount the amount of bytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static bytes(amount) {
+        return new _Size(amount, StorageUnit.Bytes);
+      }
+      /**
+       * Create a Storage representing an amount kibibytes.
+       * 1 KiB = 1024 bytes
+       *
+       * @param amount the amount of kibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static kibibytes(amount) {
+        return new _Size(amount, StorageUnit.Kibibytes);
+      }
+      /**
+       * Create a Storage representing an amount mebibytes.
+       * 1 MiB = 1024 KiB
+       *
+       * @param amount the amount of mebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static mebibytes(amount) {
+        return new _Size(amount, StorageUnit.Mebibytes);
+      }
+      /**
+       * Create a Storage representing an amount gibibytes.
+       * 1 GiB = 1024 MiB
+       *
+       * @param amount the amount of gibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static gibibytes(amount) {
+        return new _Size(amount, StorageUnit.Gibibytes);
+      }
+      /**
+       * Create a Storage representing an amount tebibytes.
+       * 1 TiB = 1024 GiB
+       *
+       * @param amount the amount of tebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static tebibytes(amount) {
+        return new _Size(amount, StorageUnit.Tebibytes);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @deprecated use `pebibytes` instead
+       */
+      static pebibyte(amount) {
+        return _Size.pebibytes(amount);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @param amount the amount of pebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static pebibytes(amount) {
+        return new _Size(amount, StorageUnit.Pebibytes);
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`StorageAmountsCannotNegative`, `Storage amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Return this storage as a total number of bytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity expressed in bytes
+       */
+      toBytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Bytes, opts);
+      }
+      /**
+       * Return this storage as a total number of kibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in kibibytes
+       */
+      toKibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Kibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of mebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in mebibytes
+       */
+      toMebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Mebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of gibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in gibibytes
+       */
+      toGibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Gibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of tebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in tebibytes
+       */
+      toTebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Tebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of pebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in pebibytes
+       */
+      toPebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Pebibytes, opts);
+      }
+      /**
+       * Checks if size is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Convert this Size object to the most appropriate readable number.
+       */
+      toHumanString() {
+        if (this.isUnresolved()) {
+          return `${Token.asString(this.amount)} ${this.unit.shortLabel}`;
+        }
+        const bytes = this.toBytes();
+        for (const unit of allStorageUnits()) {
+          if (bytes >= unit.inBytes) {
+            const am = convert2(bytes, StorageUnit.Bytes, unit, { rounding: 2 /* NONE */ });
+            return `${am.toFixed(2).replace(/\.?0+$/, "")} ${unit.shortLabel}`;
+          }
+        }
+        return `${bytes} bytes`;
+      }
+      /**
+       * Convert this Size object to its constructor form
+       */
+      toString() {
+        return `Size.${this.unit.label}(${this.amount})`;
+      }
+    };
+    StorageUnit = class _StorageUnit {
+      constructor(label, shortLabel, inBytes) {
+        this.label = label;
+        this.shortLabel = shortLabel;
+        this.inBytes = inBytes;
+      }
+      label;
+      shortLabel;
+      inBytes;
+      static Bytes = new _StorageUnit("bytes", "bytes", 1);
+      static Kibibytes = new _StorageUnit("kibibytes", "KiB", 1024);
+      static Mebibytes = new _StorageUnit("mebibytes", "MiB", 1024 * 1024);
+      static Gibibytes = new _StorageUnit("gibibytes", "GiB", 1024 * 1024 * 1024);
+      static Tebibytes = new _StorageUnit("tebibytes", "TiB", 1024 * 1024 * 1024 * 1024);
+      static Pebibytes = new _StorageUnit("pebibytes", "PiB", 1024 * 1024 * 1024 * 1024 * 1024);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts
+var path8, import_constructs8, fs8, ENTRYPOINT_FILENAME, ENTRYPOINT_NODEJS_SOURCE, CustomResourceProviderBase;
+var init_custom_resource_provider_base = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts"() {
+    "use strict";
+    path8 = __toESM(require("path"));
+    import_constructs8 = __toESM(require_lib4());
+    fs8 = __toESM(require_lib5());
+    init_shared();
+    init_cx_api();
+    init_asset_staging2();
+    init_assets();
+    init_cfn_resource();
+    init_duration();
+    init_errors();
+    init_fs();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_literal_string();
+    init_size();
+    init_token();
+    ENTRYPOINT_FILENAME = "__entrypoint__";
+    ENTRYPOINT_NODEJS_SOURCE = path8.join(__dirname, "..", "..", "..", "custom-resource-handlers", "dist", "core", "nodejs-entrypoint-handler", "index.js");
+    CustomResourceProviderBase = class extends import_constructs8.Construct {
+      /**
+       * The hash of the lambda code backing this provider. Can be used to trigger updates
+       * on code changes, even when the properties of a custom resource remain unchanged.
+       */
+      get codeHash() {
+        if (!this._codeHash) {
+          throw new ValidationError(lit`CustomResourceUsesInlineCode`, "This custom resource uses inlineCode: true and does not have a codeHash", this);
+        }
+        return this._codeHash;
+      }
+      _codeHash;
+      policyStatements = Box.fromArray();
+      role;
+      handler;
+      /**
+       * The ARN of the provider's AWS Lambda function which should be used as the `serviceToken` when defining a custom
+       * resource.
+       */
+      get serviceToken() {
+        return Token.asString(this.handler.getAtt("Arn"));
+      }
+      _roleArn = "";
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(scope);
+        if (!fs8.existsSync(path8.join(props.codeDirectory, "index.js"))) {
+          throw new ValidationError(lit`CannotFind`, `cannot find ${props.codeDirectory}/index.js`, this);
+        }
+        if (props.policyStatements) {
+          for (const statement of props.policyStatements) {
+            this.addToRolePolicy(statement);
+          }
+        }
+        const { code, codeHandler, metadata } = this.createCodePropAndMetadata(props, stack);
+        const config = getPrecreatedRoleConfig(this, `${this.node.path}/Role`);
+        const assumeRolePolicyDoc = [{ Action: "sts:AssumeRole", Effect: "Allow", Principal: { Service: "lambda.amazonaws.com" } }];
+        const managedPolicyArn = "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole";
+        if (config.enabled) {
+          this.node.addValidation({
+            validate: () => {
+              PolicySynthesizer.getOrCreate(this).addRole(`${this.node.path}/Role`, {
+                missing: !config.precreatedRoleName,
+                roleName: config.precreatedRoleName ?? id + "Role",
+                managedPolicies: [{ managedPolicyArn }],
+                policyStatements: [...this.policyStatements.get()],
+                assumeRolePolicy: assumeRolePolicyDoc
+              });
+              return [];
+            }
+          });
+          this._roleArn = stackOf(this).formatArn({
+            region: "",
+            service: "iam",
+            resource: "role",
+            resourceName: config.precreatedRoleName
+          });
+        }
+        if (!config.preventSynthesis) {
+          this.role = new CfnResource(this, "Role", {
+            type: "AWS::IAM::Role",
+            properties: {
+              AssumeRolePolicyDocument: {
+                Version: "2012-10-17",
+                Statement: assumeRolePolicyDoc
+              },
+              ManagedPolicyArns: [
+                { "Fn::Sub": managedPolicyArn }
+              ],
+              Policies: this.policyStatements.derive((stmts) => stmts.length === 0 ? void 0 : [{
+                PolicyName: "Inline",
+                PolicyDocument: {
+                  Version: "2012-10-17",
+                  Statement: stmts
+                }
+              }])
+            }
+          });
+        }
+        const timeout = props.timeout ?? Duration.minutes(15);
+        const memory = props.memorySize ?? Size.mebibytes(128);
+        this.handler = new CfnResource(this, "Handler", {
+          type: "AWS::Lambda::Function",
+          properties: {
+            Code: code,
+            Timeout: timeout.toSeconds(),
+            MemorySize: memory.toMebibytes(),
+            Handler: codeHandler,
+            Role: this.roleArn,
+            Runtime: props.runtimeName,
+            Environment: this.renderEnvironmentVariables(props.environment),
+            Description: props.description ?? void 0
+          }
+        });
+        if (this.role) {
+          this.handler.addResourceDependency(this.role);
+        }
+        if (metadata) {
+          Object.entries(metadata).forEach(([k, v]) => this.handler.addMetadata(k, v));
+        }
+      }
+      /**
+       * The ARN of the provider's AWS Lambda function role.
+       */
+      get roleArn() {
+        if (this.role) {
+          return Token.asString(this.role.getAtt("Arn"));
+        }
+        return this._roleArn;
+      }
+      /**
+       * Add an IAM policy statement to the inline policy of the
+       * provider's lambda function's role.
+       *
+       * **Please note**: this is a direct IAM JSON policy blob, *not* a `iam.PolicyStatement`
+       * object like you will see in the rest of the CDK.
+       *
+       *
+       * @example
+       * declare const myProvider: CustomResourceProvider;
+       *
+       * myProvider.addToRolePolicy({
+       *   Effect: 'Allow',
+       *   Action: 's3:GetObject',
+       *   Resource: '*',
+       * });
+       */
+      addToRolePolicy(statement) {
+        this.policyStatements.push(statement);
+      }
+      renderEnvironmentVariables(env2) {
+        if (!env2 || Object.keys(env2).length === 0) {
+          return void 0;
+        }
+        env2 = { ...env2 };
+        env2.AWS_STS_REGIONAL_ENDPOINTS = "regional";
+        const variables = {};
+        const keys = Object.keys(env2).sort();
+        for (const key of keys) {
+          variables[key] = env2[key];
+        }
+        return { Variables: variables };
+      }
+      /**
+       * Returns the code property for the custom resource as well as any metadata.
+       * If the code is to be uploaded as an asset, the asset gets created in this function.
+       */
+      createCodePropAndMetadata(props, stack) {
+        let codeHandler = "index.handler";
+        const inlineCode = this.node.tryGetContext(INLINE_CUSTOM_RESOURCE_CONTEXT);
+        if (!inlineCode) {
+          const stagingDirectory = FileSystem.mkdtemp("cdk-custom-resource");
+          fs8.copySync(props.codeDirectory, stagingDirectory, { filter: (src, _dest) => !src.endsWith(".ts") });
+          if (props.useCfnResponseWrapper ?? true) {
+            fs8.copyFileSync(ENTRYPOINT_NODEJS_SOURCE, path8.join(stagingDirectory, `${ENTRYPOINT_FILENAME}.js`));
+            codeHandler = `${ENTRYPOINT_FILENAME}.handler`;
+          }
+          const staging = new AssetStaging(this, "Staging", {
+            sourcePath: stagingDirectory
+          });
+          const assetFileName = staging.relativeStagedPath(stack);
+          const asset = stack.synthesizer.addFileAsset({
+            fileName: assetFileName,
+            sourceHash: staging.assetHash,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            displayName: `${this.node.path} Code`
+          });
+          this._codeHash = staging.assetHash;
+          fs8.rmSync(stagingDirectory, { recursive: true, force: true });
+          return {
+            code: {
+              S3Bucket: asset.bucketName,
+              S3Key: asset.objectKey
+            },
+            codeHandler,
+            metadata: this.node.tryGetContext(import_cloud_assembly_api.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT) ? {
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PATH_KEY]: assetFileName,
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PROPERTY_KEY]: "Code"
+            } : void 0
+          };
+        }
+        return {
+          code: {
+            ZipFile: fs8.readFileSync(path8.join(props.codeDirectory, "index.js"), "utf-8")
+          },
+          codeHandler
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/default.ts
+var init_default = __esm({
+  "../../aws-cdk-lib/region-info/lib/default.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/aws-entities.ts
+function partitionInformation(region) {
+  for (const [prefix, info] of Object.entries(PARTITION_MAP)) {
+    if (region.startsWith(prefix)) {
+      return info;
+    }
+  }
+  return PARTITION_MAP.default;
+}
+var RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN, RULE_CLASSIC_PARTITION_BECOMES_OPT_IN, AWS_REGIONS_AND_RULES, AWS_REGIONS, PARTITION_MAP;
+var init_aws_entities = __esm({
+  "../../aws-cdk-lib/region-info/lib/aws-entities.ts"() {
+    "use strict";
+    RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN = /* @__PURE__ */ Symbol("S3_WEBSITE_REGIONAL_SUBDOMAIN");
+    RULE_CLASSIC_PARTITION_BECOMES_OPT_IN = /* @__PURE__ */ Symbol("CLASSIC_PARTITION_BECOMES_OPT_IN");
+    AWS_REGIONS_AND_RULES = [
+      "us-east-1",
+      // US East (N. Virginia)
+      "eu-west-1",
+      // Europe (Ireland)
+      "us-west-1",
+      // US West (N. California)
+      "ap-southeast-1",
+      // Asia Pacific (Singapore)
+      "ap-northeast-1",
+      // Asia Pacific (Tokyo)
+      "us-gov-west-1",
+      // AWS GovCloud (US-West)
+      "us-west-2",
+      // US West (Oregon)
+      "sa-east-1",
+      // South America (São Paulo)
+      "ap-southeast-2",
+      // Asia Pacific (Sydney)
+      RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN,
+      "cn-north-1",
+      // China (Beijing)
+      "us-iso-east-1",
+      // AWS ISO
+      "eu-central-1",
+      // Europe (Frankfurt)
+      "ap-northeast-2",
+      // Asia Pacific (Seoul)
+      "ap-south-1",
+      // Asia Pacific (Mumbai)
+      "us-east-2",
+      // US East (Ohio)
+      "ca-central-1",
+      // Canada (Central)
+      "eu-west-2",
+      // Europe (London)
+      "us-isob-east-1",
+      // AWS ISO-B
+      "cn-northwest-1",
+      // China (Ningxia)
+      "eu-west-3",
+      // Europe (Paris)
+      "ap-northeast-3",
+      // Asia Pacific (Osaka)
+      "us-gov-east-1",
+      // AWS GovCloud (US-East)
+      "eu-north-1",
+      // Europe (Stockholm)
+      RULE_CLASSIC_PARTITION_BECOMES_OPT_IN,
+      "ap-east-1",
+      // Asia Pacific (Hong Kong)
+      "me-south-1",
+      // Middle East (Bahrain)
+      "af-south-1",
+      // Africa (Cape Town)
+      "eu-south-1",
+      // Europe (Milan)
+      "us-iso-west-1",
+      // US ISO West
+      "ap-southeast-3",
+      // Asia Pacific (Jakarta)
+      "me-central-1",
+      // Middle East (UAE)
+      "eu-central-2",
+      // Europe (Zurich)
+      "eu-south-2",
+      // Europe (Spain)
+      "ap-south-2",
+      // Asia Pacific (Hyderabad)
+      "ap-southeast-4",
+      // Asia Pacific (Melbourne)
+      "il-central-1",
+      // Israel (Tel Aviv)
+      "ca-west-1",
+      // Canada West (Calgary)
+      "ap-southeast-5",
+      // Asia Pacific (Malaysia)
+      "ap-southeast-7",
+      // Asia Pacific (Thailand)
+      "mx-central-1",
+      // Mexico (Central)
+      "eu-isoe-west-1",
+      // EU ISO-E West
+      "us-isob-west-1",
+      // US ISOB West
+      "ap-east-2",
+      // Asia Pacific (Taipei)
+      "eusc-de-east-1",
+      // EU (Germany)
+      "ap-southeast-6",
+      // Asia Pacific (New Zealand)
+      "us-isof-south-1",
+      // US ISOF SOUTH
+      "us-isof-east-1"
+      // US ISOF EAST
+    ];
+    AWS_REGIONS = AWS_REGIONS_AND_RULES.filter((x) => typeof x === "string").sort();
+    PARTITION_MAP = {
+      "default": { partition: "aws", domainSuffix: "amazonaws.com" },
+      "cn-": { partition: "aws-cn", domainSuffix: "amazonaws.com.cn" },
+      "us-gov-": { partition: "aws-us-gov", domainSuffix: "amazonaws.com" },
+      "us-iso-": { partition: "aws-iso", domainSuffix: "c2s.ic.gov" },
+      "us-isob-": { partition: "aws-iso-b", domainSuffix: "sc2s.sgov.gov" },
+      "us-isof-": { partition: "aws-iso-f", domainSuffix: "csp.hci.ic.gov" },
+      "eu-isoe-": { partition: "aws-iso-e", domainSuffix: "cloud.adc-e.uk" },
+      "eusc-de-": { partition: "aws-eusc", domainSuffix: "amazonaws.eu" }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/fact.ts
+var CONSTRUCT_ERROR_SYMBOL2, RegionFactError, Fact, FactName;
+var init_fact = __esm({
+  "../../aws-cdk-lib/region-info/lib/fact.ts"() {
+    "use strict";
+    init_aws_entities();
+    CONSTRUCT_ERROR_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError");
+    RegionFactError = class _RegionFactError extends Error {
+      constructor(msg) {
+        super(msg);
+        Object.setPrototypeOf(this, _RegionFactError.prototype);
+        Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL2, { value: true });
+        this.name = "RegionFactError";
+      }
+    };
+    Fact = class {
+      /**
+       * @returns the list of names of AWS Regions for which there is at least one registered fact. This
+       *          includes Regions defined in AWS_REGIONS plus custom defined regions.
+       */
+      static get regions() {
+        return [.../* @__PURE__ */ new Set([...AWS_REGIONS, ...Object.keys(this.database)])];
+      }
+      /**
+       * Returns the list of names of registered facts.
+       *
+       * All facts will be present in at least one region.
+       */
+      static get names() {
+        return [...new Set(Object.values(this.database).flatMap((regionFacts) => Object.keys(regionFacts)))];
+      }
+      /**
+       * Return all pairs of (region, factName) that are defined
+       */
+      static definedFacts() {
+        return Object.entries(this.database).flatMap(([regionName, regionFacts]) => Object.keys(regionFacts).map((factName) => [regionName, factName]));
+      }
+      /**
+       * Retrieves a fact from this Fact database.
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name   the name of the fact being looked up (see the `FactName` class for details)
+       *
+       * @returns the fact value if it is known, and `undefined` otherwise.
+       */
+      static find(region, name) {
+        const regionFacts = this.database[region];
+        return regionFacts && regionFacts[name];
+      }
+      /**
+       * Retrieve a fact from the Fact database. (retrieval will fail if the specified region or
+       * fact name does not exist.)
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name the name of the fact being looked up (see the `FactName` class for details)
+       */
+      static requireFact(region, name) {
+        const foundFact = this.find(region, name);
+        if (!foundFact) {
+          throw new RegionFactError(`No fact ${name} could be found for region: ${region} and name: ${name}.`);
+        }
+        return foundFact;
+      }
+      /**
+       * Registers a new fact in this Fact database.
+       *
+       * @param fact           the new fact to be registered.
+       * @param allowReplacing whether new facts can replace existing facts or not.
+       */
+      static register(fact, allowReplacing = false) {
+        const regionFacts = this.database[fact.region] || (this.database[fact.region] = /* @__PURE__ */ Object.create(null));
+        if (fact.name in regionFacts && regionFacts[fact.name] !== fact.value && !allowReplacing) {
+          throw new RegionFactError(`Region ${fact.region} already has a fact ${fact.name}, with value ${regionFacts[fact.name]}`);
+        }
+        if (fact.value !== void 0) {
+          regionFacts[fact.name] = fact.value;
+        }
+      }
+      /**
+       * Removes a fact from the database.
+       * @param region the region for which the fact is to be removed.
+       * @param name   the name of the fact to remove.
+       * @param value  the value that should be removed (removal will fail if the value is specified, but does not match the
+       *               current stored value).
+       */
+      static unregister(region, name, value) {
+        const regionFacts = this.database[region] || /* @__PURE__ */ Object.create(null);
+        if (name in regionFacts && value && regionFacts[name] !== value) {
+          throw new RegionFactError(`Attempted to remove ${name} from ${region} with value ${value}, but the fact's value is ${regionFacts[name]}`);
+        }
+        delete regionFacts[name];
+      }
+      static database = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      constructor() {
+        throw new Error("Use the static methods of Fact instead!");
+      }
+    };
+    FactName = class {
+      /**
+       * The name of the partition for a region (e.g: 'aws', 'aws-cn', ...)
+       */
+      static PARTITION = "partition";
+      /**
+       * The domain suffix for a region (e.g: 'amazonaws.com`)
+       */
+      static DOMAIN_SUFFIX = "domainSuffix";
+      /**
+       * Whether the AWS::CDK::Metadata CloudFormation Resource is available in-region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static CDK_METADATA_RESOURCE_AVAILABLE = "cdk:metadata-resource:available";
+      /**
+       * Whether the given region is an opt-in region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static IS_OPT_IN_REGION = "aws:is-opt-in-region";
+      /**
+       * The endpoint used for hosting S3 static websites
+       */
+      static S3_STATIC_WEBSITE_ENDPOINT = "s3-static-website:endpoint";
+      /**
+       * The endpoint used for aliasing S3 static websites in Route 53
+       */
+      static S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID = "s3-static-website:route-53-hosted-zone-id";
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      static EBS_ENV_ENDPOINT_HOSTED_ZONE_ID = "ebs-environment:route-53-hosted-zone-id";
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      static VPC_ENDPOINT_SERVICE_NAME_PREFIX = "vpcEndpointServiceNamePrefix";
+      /**
+       * The account for ELBv2 in this region
+       */
+      static ELBV2_ACCOUNT = "elbv2Account";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS Deep Learning Containers images in a given region.
+       */
+      static DLC_REPOSITORY_ACCOUNT = "dlcRepositoryAccount";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      static APPMESH_ECR_ACCOUNT = "appMeshRepositoryAccount";
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      static FIREHOSE_CIDR_BLOCK = "firehoseCidrBlock";
+      /**
+       * The SAML Sign On URL for partition used by IAM SAML Principal
+       */
+      static SAML_SIGN_ON_URL = "samlSignOnUrl";
+      /**
+       * The latest Lambda NodeJS runtime available in a given region.
+       */
+      static LATEST_NODE_RUNTIME = "latestNodeRuntime";
+      /**
+       * The ARN of CloudWatch Lambda Insights for a version (e.g. 1.0.98.0)
+       */
+      static cloudwatchLambdaInsightsVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `cloudwatch-lambda-insights-version:${suffix}`;
+      }
+      /**
+       * The ARN of AppConfig Lambda Layer for a given version (e.g. 2.0.181)
+       * @param version The layer version.
+       * @param arch The architecture (optional), defaults to x86_64.
+       */
+      static appConfigLambdaLayerVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `appconfig-lambda-layer:${suffix}`;
+      }
+      /**
+       * The name of the regional service principal for a given service.
+       *
+       * @param service the service name, either simple (e.g: `s3`, `codedeploy`) or qualified (e.g: `s3.amazonaws.com`).
+       *                The `.amazonaws.com` and `.amazonaws.com.cn` domains are stripped from service names, so they are
+       *                canonicalized in that respect.
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      static servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The ARN of Amazon Distro for OpenTelemetry (ADOT) Lambda layer for a given lambda type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static adotLambdaLayer(type, version3, architecture) {
+        const suffix = type + "_" + version3.split(".").join("_") + "_" + architecture;
+        return `adot-lambda-layer:${suffix}`;
+      }
+      /**
+       * The ARN of Parameters and Secrets Lambda layer for a given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static paramsAndSecretsLambdaLayer(version3, architecture) {
+        const suffix = version3.split(".").join("_") + `_${architecture}`;
+        return `params-and-secrets-layer:${suffix}`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/region-info.ts
+var RegionInfo;
+var init_region_info = __esm({
+  "../../aws-cdk-lib/region-info/lib/region-info.ts"() {
+    "use strict";
+    init_aws_entities();
+    init_fact();
+    RegionInfo = class _RegionInfo {
+      constructor(name) {
+        this.name = name;
+      }
+      name;
+      /**
+       * @returns the list of names of AWS regions for which there is at least one registered fact. This
+       *          may not be an exaustive list of all available AWS regions.
+       */
+      static get regions() {
+        return Fact.regions.map((x) => _RegionInfo.get(x));
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions that fact is defined in.
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static regionMap(factName) {
+        const ret = {};
+        for (const regionInfo of _RegionInfo.regions) {
+          const fact = Fact.find(regionInfo.name, factName);
+          if (fact) {
+            ret[regionInfo.name] = fact;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions, limited to some partitions
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @param partitions list of partitions to retrieve facts for. Defaults
+       *   to `['aws', 'aws-cn']`.
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static limitedRegionMap(factName, partitions) {
+        const ret = {};
+        for (const [region, value] of Object.entries(_RegionInfo.regionMap(factName))) {
+          if (partitions.includes(partitionInformation(region).partition)) {
+            ret[region] = value;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Obtain region info for a given region name.
+       *
+       * @param name the name of the region (e.g: us-east-1)
+       */
+      static get(name) {
+        return new _RegionInfo(name);
+      }
+      /**
+       * Whether the `AWS::CDK::Metadata` CloudFormation Resource is available in this region or not.
+       */
+      get cdkMetadataResourceAvailable() {
+        return Fact.find(this.name, FactName.CDK_METADATA_RESOURCE_AVAILABLE) === "YES";
+      }
+      /**
+       * Whether the given region is an opt-in region
+       */
+      get isOptInRegion() {
+        return Fact.find(this.name, FactName.IS_OPT_IN_REGION) === "YES";
+      }
+      /**
+       * The domain name suffix (e.g: amazonaws.com) for this region.
+       */
+      get domainSuffix() {
+        return Fact.find(this.name, FactName.DOMAIN_SUFFIX);
+      }
+      /**
+       * The name of the ARN partition for this region (e.g: aws).
+       */
+      get partition() {
+        return Fact.find(this.name, FactName.PARTITION);
+      }
+      /**
+       * The endpoint used by S3 static website hosting in this region (e.g: s3-static-website-us-east-1.amazonaws.com)
+       */
+      get s3StaticWebsiteEndpoint() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ENDPOINT);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a S3 static website in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get s3StaticWebsiteHostedZoneId() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get ebsEnvEndpointHostedZoneId() {
+        return Fact.find(this.name, FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID);
+      }
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      get vpcEndpointServiceNamePrefix() {
+        return Fact.find(this.name, FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX);
+      }
+      /**
+       * The name of the service principal for a given service in this region.
+       * @param service the service name (e.g: s3.amazonaws.com)
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The account ID for ELBv2 in this region
+       */
+      get elbv2Account() {
+        return Fact.find(this.name, FactName.ELBV2_ACCOUNT);
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository containing the
+       * AWS Deep Learning Containers images in this region.
+       */
+      get dlcRepositoryAccount() {
+        return Fact.find(this.name, FactName.DLC_REPOSITORY_ACCOUNT);
+      }
+      /**
+       * The ARN of the CloudWatch Lambda Insights extension, for the given version.
+       * @param insightsVersion the version (e.g. 1.0.98.0)
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      cloudwatchLambdaInsightsArn(insightsVersion, architecture) {
+        return Fact.find(this.name, FactName.cloudwatchLambdaInsightsVersion(insightsVersion, architecture));
+      }
+      /**
+       * The ARN of the AppConfig Lambda Layer, for the given version.
+       * @param layerVersion The layer version (e.g. 2.0.181)
+       * @param architecture The Lambda Function architecture (e.g. 'x86_64' or 'arm64'), defaults to x86_64
+       */
+      appConfigLambdaArn(layerVersion, architecture) {
+        return Fact.find(this.name, FactName.appConfigLambdaLayerVersion(layerVersion, architecture));
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      get appMeshRepositoryAccount() {
+        return Fact.find(this.name, FactName.APPMESH_ECR_ACCOUNT);
+      }
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      get firehoseCidrBlock() {
+        return Fact.find(this.name, FactName.FIREHOSE_CIDR_BLOCK);
+      }
+      /**
+       * The ARN of the ADOT Lambda layer, for the given layer type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      adotLambdaLayerArn(type, version3, architecture) {
+        return Fact.find(this.name, FactName.adotLambdaLayer(type, version3, architecture));
+      }
+      /**
+       * The ARN of the Parameters and Secrets Lambda layer for the given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      paramsAndSecretsLambdaLayerArn(version3, architecture) {
+        return Fact.find(this.name, FactName.paramsAndSecretsLambdaLayer(version3, architecture));
+      }
+      /**
+       * SAML Sign On URL used by IAM SAML Principals.
+       */
+      get samlSignOnUrl() {
+        return Fact.find(this.name, FactName.SAML_SIGN_ON_URL);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/built-ins.generated.ts
+var BuiltIns;
+var init_built_ins_generated = __esm({
+  "../../aws-cdk-lib/region-info/lib/built-ins.generated.ts"() {
+    "use strict";
+    init_fact();
+    BuiltIns = class {
+      /**
+       * Registers all the built in regional data in the RegionInfo database.
+       */
+      static register() {
+        Fact.register({ region: "af-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "af-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.af-south-1.amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11KHD8FBVPUYU" });
+        Fact.register({ region: "af-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1EI3BVKMKK4AM" });
+        Fact.register({ region: "af-south-1", name: FactName.ELBV2_ACCOUNT, value: "098369216593" });
+        Fact.register({ region: "af-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "924023996002" });
+        Fact.register({ region: "af-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "af-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "af-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.244.121.224/27" });
+        Fact.register({ region: "af-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:456" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-1.amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "ZNB98KWMFR0R6" });
+        Fact.register({ region: "ap-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZPWYUBWRU171A" });
+        Fact.register({ region: "ap-east-1", name: FactName.ELBV2_ACCOUNT, value: "754344448648" });
+        Fact.register({ region: "ap-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "871362719292" });
+        Fact.register({ region: "ap-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "856666278305" });
+        Fact.register({ region: "ap-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.162.221.32/27" });
+        Fact.register({ region: "ap-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-east-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-2.amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z064739330DAH7WJVOO93" });
+        Fact.register({ region: "ap-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-east-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "975050140332" });
+        Fact.register({ region: "ap-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "058264503299" });
+        Fact.register({ region: "ap-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.212.53.160/27" });
+        Fact.register({ region: "ap-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-2:145023102084:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-northeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2M4EHUR26P7ZW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.ELBV2_ACCOUNT, value: "582318560864" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.113.196.224/27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:87" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:34" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:83" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:33" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:31" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:80" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:30" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:79" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:29" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:78" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:76" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:72" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:37" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:35" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:62" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3W03O7B5YMIYP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z3JE5OI70TWKCP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.ELBV2_ACCOUNT, value: "600734575887" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.209.1.64/27" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2YQB5RD63NC85" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZNE5GEY1TIAGY" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.ELBV2_ACCOUNT, value: "383597477331" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.208.177.192/27" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:13" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:42" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:576959938190:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-1.amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11RGJOFQNVJUP" });
+        Fact.register({ region: "ap-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z18NTBI3Y7N9TZ" });
+        Fact.register({ region: "ap-south-1", name: FactName.ELBV2_ACCOUNT, value: "718504428378" });
+        Fact.register({ region: "ap-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.232.67.32/27" });
+        Fact.register({ region: "ap-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:58" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:94" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:92" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:55" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-2.amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z02976202B4EZMXIPMXF7" });
+        Fact.register({ region: "ap-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10223522IBWPBF2C2FJS" });
+        Fact.register({ region: "ap-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "772153158452" });
+        Fact.register({ region: "ap-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.60.192.128/27" });
+        Fact.register({ region: "ap-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:22" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-2:070087711984:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3O0J2DXBE1FTB" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z16FZ9L249IFLT" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.ELBV2_ACCOUNT, value: "114774131450" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.228.64.192/27" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:41" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1WCIGYICN2BYD" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2PCDNR3VC2G1N" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.ELBV2_ACCOUNT, value: "783225319266" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.210.67.224/27" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z01846753K324LI26A3VV" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z05913172VM7EAZB40TA8" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.ELBV2_ACCOUNT, value: "589379963580" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "907027046896" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "909464085924" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "108.136.221.64/27" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:37" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:24" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:13" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-4.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0312387243XT5FE14WFO" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z0666869LC74UHAO5YE4" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "457447274322" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.50.161.128/27" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-4:605207715842:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:5" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:307021474294:layer:AWS-AppConfig-Extension:2" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-5.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z08660063OXLMA7F1FJHU" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01812971H0QCYWSL7WOH" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.216.58.0/27" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-6.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01144401H1NECCLJDD4D" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "633930458069" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.APPMESH_ECR_ACCOUNT, value: "637423513210" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-6:727646510379:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-7.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0031014GXUMRZG6I14G" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.208.112.96/27" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-central-1.amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1QDHH18159H29" });
+        Fact.register({ region: "ca-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZJFCZL7SSZB5I" });
+        Fact.register({ region: "ca-central-1", name: FactName.ELBV2_ACCOUNT, value: "985666609251" });
+        Fact.register({ region: "ca-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ca-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ca-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.183.92.128/27" });
+        Fact.register({ region: "ca-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ca-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-west-1.amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03565811Z33SLEZTHOUL" });
+        Fact.register({ region: "ca-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1021028356Y0CYS11DQI" });
+        Fact.register({ region: "ca-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "40.176.98.192/27" });
+        Fact.register({ region: "ca-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-west-1:761377655185:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:15" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-north-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z5CN8UMXT92WN" });
+        Fact.register({ region: "cn-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-north-1", name: FactName.ELBV2_ACCOUNT, value: "638102146993" });
+        Fact.register({ region: "cn-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919366029133" });
+        Fact.register({ region: "cn-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.81.151.32/27" });
+        Fact.register({ region: "cn-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:287114880934:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-northwest-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z282HJ1KT0DH03" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.ELBV2_ACCOUNT, value: "037604701340" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919830735681" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "161.189.23.64/27" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:287310001119:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-1.amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z21DNDUVLTQW6Q" });
+        Fact.register({ region: "eu-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1FRNW7UH4DEZJ" });
+        Fact.register({ region: "eu-central-1", name: FactName.ELBV2_ACCOUNT, value: "054676820928" });
+        Fact.register({ region: "eu-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.158.127.160/27" });
+        Fact.register({ region: "eu-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-central-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-2.amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z030506016YDQGETNASS" });
+        Fact.register({ region: "eu-central-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z00227012FSHBMZNNSJJI" });
+        Fact.register({ region: "eu-central-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "380420809688" });
+        Fact.register({ region: "eu-central-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.62.183.32/27" });
+        Fact.register({ region: "eu-central-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:7" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-2:772501565639:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.PARTITION, value: "aws-iso-e" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DOMAIN_SUFFIX, value: "cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-isoe-west-1.cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "uk.adc-e.cloud.vpce" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-north-1.amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BAZG2TWCNX0D" });
+        Fact.register({ region: "eu-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-north-1", name: FactName.ELBV2_ACCOUNT, value: "897822967062" });
+        Fact.register({ region: "eu-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.53.63.224/27" });
+        Fact.register({ region: "eu-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:57" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:142" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:139" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:111" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:98" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:97" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-1.amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3IXVV8C73GIO3" });
+        Fact.register({ region: "eu-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10VDYYOA2JFKM" });
+        Fact.register({ region: "eu-south-1", name: FactName.ELBV2_ACCOUNT, value: "635631232127" });
+        Fact.register({ region: "eu-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "692866216735" });
+        Fact.register({ region: "eu-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "422531588944" });
+        Fact.register({ region: "eu-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.161.135.128/27" });
+        Fact.register({ region: "eu-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-2.amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0081959F7139GRJC19J" });
+        Fact.register({ region: "eu-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "503227376785" });
+        Fact.register({ region: "eu-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.100.71.96/27" });
+        Fact.register({ region: "eu-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-2:524103009944:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-eu-west-1.amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1BKCTXD74EZPE" });
+        Fact.register({ region: "eu-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2NYPWQ7DFZAZH" });
+        Fact.register({ region: "eu-west-1", name: FactName.ELBV2_ACCOUNT, value: "156460612806" });
+        Fact.register({ region: "eu-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.19.239.192/27" });
+        Fact.register({ region: "eu-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:108" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:7" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:6" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-2.amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3GKZC51ZF0DB4" });
+        Fact.register({ region: "eu-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1GKAAAUGATPF1" });
+        Fact.register({ region: "eu-west-2", name: FactName.ELBV2_ACCOUNT, value: "652711504416" });
+        Fact.register({ region: "eu-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.130.1.96/27" });
+        Fact.register({ region: "eu-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-3.amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3R1K369G5AVDG" });
+        Fact.register({ region: "eu-west-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z5WN6GAYWG5OB" });
+        Fact.register({ region: "eu-west-3", name: FactName.ELBV2_ACCOUNT, value: "009996457667" });
+        Fact.register({ region: "eu-west-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.180.1.96/27" });
+        Fact.register({ region: "eu-west-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:80" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.PARTITION, value: "aws-eusc" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eusc-de-east-1.amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "204133271717" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "eu.amazonaws.vpce" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "il-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.il-central-1.amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z09640613K4A3MN55U7GU" });
+        Fact.register({ region: "il-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z02941091PERNCB1MI5H7" });
+        Fact.register({ region: "il-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "564877687649" });
+        Fact.register({ region: "il-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "il-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "il-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "51.16.102.0/27" });
+        Fact.register({ region: "il-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:il-central-1:066549572091:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-central-1.amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z06143092I8HRXZRUZROF" });
+        Fact.register({ region: "me-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "me-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "914824155844" });
+        Fact.register({ region: "me-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "3.28.159.32/27" });
+        Fact.register({ region: "me-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:34" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:31" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-central-1:858974508948:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-south-1.amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1MPMWCPA7YB62" });
+        Fact.register({ region: "me-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2BBTEKR2I36N2" });
+        Fact.register({ region: "me-south-1", name: FactName.ELBV2_ACCOUNT, value: "076674570225" });
+        Fact.register({ region: "me-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "217643126080" });
+        Fact.register({ region: "me-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "772975370895" });
+        Fact.register({ region: "me-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.185.91.0/27" });
+        Fact.register({ region: "me-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "mx-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "mx-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "mx-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.mx-central-1.amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "mx-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "mx-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "sa-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "sa-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-sa-east-1.amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z7KQH4QJS55SO" });
+        Fact.register({ region: "sa-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10X7K2B4QSOFV" });
+        Fact.register({ region: "sa-east-1", name: FactName.ELBV2_ACCOUNT, value: "507241528517" });
+        Fact.register({ region: "sa-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "sa-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "sa-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "sa-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "sa-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.228.1.128/27" });
+        Fact.register({ region: "sa-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-east-1.amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3AQBSTGFYJSTF" });
+        Fact.register({ region: "us-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z117KPS5GTRQ2G" });
+        Fact.register({ region: "us-east-1", name: FactName.ELBV2_ACCOUNT, value: "127311923021" });
+        Fact.register({ region: "us-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.70.63.192/27" });
+        Fact.register({ region: "us-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-east-2.amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2O1EMRO9K5GLX" });
+        Fact.register({ region: "us-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z14LCN19Q5QHIC" });
+        Fact.register({ region: "us-east-2", name: FactName.ELBV2_ACCOUNT, value: "033677994240" });
+        Fact.register({ region: "us-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.58.135.96/27" });
+        Fact.register({ region: "us-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-gov-east-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2NIFVYYW2VKV1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z35TSARG0EJ4VU" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.ELBV2_ACCOUNT, value: "190560391635" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.253.138.96/27" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:129776340158:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-gov-west-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z31GFT0UA1I2HV" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z4KAURWC4UUUG" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.ELBV2_ACCOUNT, value: "048591011584" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.61.204.160/27" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:127562683043:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-east-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.ELBV2_ACCOUNT, value: "770363063475" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-west-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.ELBV2_ACCOUNT, value: "121062877647" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-east-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.ELBV2_ACCOUNT, value: "740734521339" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-west-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-east-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03373031FTGQH4MNG6ST" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.ELBV2_ACCOUNT, value: "091100254016" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "303241398832" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-south-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03376072I8GXC2DXUFXI" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.ELBV2_ACCOUNT, value: "412137745753" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "454834333376" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-1.amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2F56UZL2M1ACD" });
+        Fact.register({ region: "us-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1LQECGX5PH1X" });
+        Fact.register({ region: "us-west-1", name: FactName.ELBV2_ACCOUNT, value: "027434742980" });
+        Fact.register({ region: "us-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.57.135.192/27" });
+        Fact.register({ region: "us-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:124" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:121" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:78" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:77" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-2.amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BJ6K6RIION7M" });
+        Fact.register({ region: "us-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z38NKT9BP95V3O" });
+        Fact.register({ region: "us-west-2", name: FactName.ELBV2_ACCOUNT, value: "797873946194" });
+        Fact.register({ region: "us-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.89.255.224/27" });
+        Fact.register({ region: "us-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:146" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:45" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:143" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:114" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:101" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:100" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/index.ts
+var init_lib2 = __esm({
+  "../../aws-cdk-lib/region-info/lib/index.ts"() {
+    "use strict";
+    init_default();
+    init_fact();
+    init_region_info();
+    init_built_ins_generated();
+    BuiltIns.register();
+  }
+});
+
+// ../../aws-cdk-lib/region-info/index.ts
+var init_region_info2 = __esm({
+  "../../aws-cdk-lib/region-info/index.ts"() {
+    "use strict";
+    init_lib2();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts
+function determineLatestNodeRuntimeName(scope) {
+  return stackOf(scope).regionalFact(FactName.LATEST_NODE_RUNTIME, "nodejs24.x");
+}
+var init_custom_resource_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_region_info2();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts
+var init_custom_resource_provider2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_custom_resource_provider();
+    init_shared();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts
+var path9, CfnUtilsProvider;
+var init_cfn_utils_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts"() {
+    "use strict";
+    path9 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CfnUtilsProvider = class _CfnUtilsProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CfnUtilsProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path9.join(__dirname, "cfn-utils-provider"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts
+var import_constructs9, CfnUtilsProvider2, CfnUtils;
+var init_cfn_utils_provider = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts"() {
+    "use strict";
+    import_constructs9 = __toESM(require_lib4());
+    init_custom_resource();
+    init_consts();
+    init_cfn_utils_provider_generated();
+    CfnUtilsProvider2 = class extends import_constructs9.Construct {
+      static getOrCreate(scope) {
+        return CfnUtilsProvider.getOrCreate(scope, "AWSCDKCfnUtilsProvider");
+      }
+    };
+    CfnUtils = class {
+      /**
+       * Encode a structure to JSON at CloudFormation deployment time
+       *
+       * This would have been suitable for the JSON-encoding of arbitrary structures, however:
+       *
+       * - It uses a custom resource to do the encoding, and we'd rather not use a custom
+       *   resource if we can avoid it.
+       * - It cannot be used to encode objects where the keys of the objects can contain
+       *   tokens--because those cannot be represented in the JSON encoding that CloudFormation
+       *   templates use.
+       *
+       * This helper is used by `CloudFormationLang.toJSON()` if and only if it encounters
+       * objects that cannot be stringified any other way.
+       */
+      static stringify(scope, id, value) {
+        const resource = new CustomResource(scope, id, {
+          serviceToken: CfnUtilsProvider2.getOrCreate(scope),
+          resourceType: "Custom::AWSCDKCfnJsonStringify" /* CFN_JSON_STRINGIFY */,
+          properties: {
+            Value: value
+          }
+        });
+        return resource.getAttString("Value");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js
+var require_PlainValue_516d5bc2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js"(exports2) {
+    "use strict";
+    var Char = {
+      ANCHOR: "&",
+      COMMENT: "#",
+      TAG: "!",
+      DIRECTIVES_END: "-",
+      DOCUMENT_END: "."
+    };
+    var Type = {
+      ALIAS: "ALIAS",
+      BLANK_LINE: "BLANK_LINE",
+      BLOCK_FOLDED: "BLOCK_FOLDED",
+      BLOCK_LITERAL: "BLOCK_LITERAL",
+      COMMENT: "COMMENT",
+      DIRECTIVE: "DIRECTIVE",
+      DOCUMENT: "DOCUMENT",
+      FLOW_MAP: "FLOW_MAP",
+      FLOW_SEQ: "FLOW_SEQ",
+      MAP: "MAP",
+      MAP_KEY: "MAP_KEY",
+      MAP_VALUE: "MAP_VALUE",
+      PLAIN: "PLAIN",
+      QUOTE_DOUBLE: "QUOTE_DOUBLE",
+      QUOTE_SINGLE: "QUOTE_SINGLE",
+      SEQ: "SEQ",
+      SEQ_ITEM: "SEQ_ITEM"
+    };
+    var defaultTagPrefix = "tag:yaml.org,2002:";
+    var defaultTags = {
+      MAP: "tag:yaml.org,2002:map",
+      SEQ: "tag:yaml.org,2002:seq",
+      STR: "tag:yaml.org,2002:str"
+    };
+    function findLineStarts(src) {
+      const ls = [0];
+      let offset = src.indexOf("\n");
+      while (offset !== -1) {
+        offset += 1;
+        ls.push(offset);
+        offset = src.indexOf("\n", offset);
+      }
+      return ls;
+    }
+    function getSrcInfo(cst) {
+      let lineStarts, src;
+      if (typeof cst === "string") {
+        lineStarts = findLineStarts(cst);
+        src = cst;
+      } else {
+        if (Array.isArray(cst)) cst = cst[0];
+        if (cst && cst.context) {
+          if (!cst.lineStarts) cst.lineStarts = findLineStarts(cst.context.src);
+          lineStarts = cst.lineStarts;
+          src = cst.context.src;
+        }
+      }
+      return {
+        lineStarts,
+        src
+      };
+    }
+    function getLinePos(offset, cst) {
+      if (typeof offset !== "number" || offset < 0) return null;
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !src || offset > src.length) return null;
+      for (let i = 0; i < lineStarts.length; ++i) {
+        const start = lineStarts[i];
+        if (offset < start) {
+          return {
+            line: i,
+            col: offset - lineStarts[i - 1] + 1
+          };
+        }
+        if (offset === start) return {
+          line: i + 1,
+          col: 1
+        };
+      }
+      const line = lineStarts.length;
+      return {
+        line,
+        col: offset - lineStarts[line - 1] + 1
+      };
+    }
+    function getLine(line, cst) {
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !(line >= 1) || line > lineStarts.length) return null;
+      const start = lineStarts[line - 1];
+      let end = lineStarts[line];
+      while (end && end > start && src[end - 1] === "\n") --end;
+      return src.slice(start, end);
+    }
+    function getPrettyContext({
+      start,
+      end
+    }, cst, maxWidth = 80) {
+      let src = getLine(start.line, cst);
+      if (!src) return null;
+      let {
+        col
+      } = start;
+      if (src.length > maxWidth) {
+        if (col <= maxWidth - 10) {
+          src = src.substr(0, maxWidth - 1) + "\u2026";
+        } else {
+          const halfWidth = Math.round(maxWidth / 2);
+          if (src.length > col + halfWidth) src = src.substr(0, col + halfWidth - 1) + "\u2026";
+          col -= src.length - maxWidth;
+          src = "\u2026" + src.substr(1 - maxWidth);
+        }
+      }
+      let errLen = 1;
+      let errEnd = "";
+      if (end) {
+        if (end.line === start.line && col + (end.col - start.col) <= maxWidth + 1) {
+          errLen = end.col - start.col;
+        } else {
+          errLen = Math.min(src.length + 1, maxWidth) - col;
+          errEnd = "\u2026";
+        }
+      }
+      const offset = col > 1 ? " ".repeat(col - 1) : "";
+      const err = "^".repeat(errLen);
+      return `${src}
+${offset}${err}${errEnd}`;
+    }
+    var Range = class _Range {
+      static copy(orig) {
+        return new _Range(orig.start, orig.end);
+      }
+      constructor(start, end) {
+        this.start = start;
+        this.end = end || start;
+      }
+      isEmpty() {
+        return typeof this.start !== "number" || !this.end || this.end <= this.start;
+      }
+      /**
+       * Set `origStart` and `origEnd` to point to the original source range for
+       * this node, which may differ due to dropped CR characters.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRange(cr, offset) {
+        const {
+          start,
+          end
+        } = this;
+        if (cr.length === 0 || end <= cr[0]) {
+          this.origStart = start;
+          this.origEnd = end;
+          return offset;
+        }
+        let i = offset;
+        while (i < cr.length) {
+          if (cr[i] > start) break;
+          else ++i;
+        }
+        this.origStart = start + i;
+        const nextOffset = i;
+        while (i < cr.length) {
+          if (cr[i] >= end) break;
+          else ++i;
+        }
+        this.origEnd = end + i;
+        return nextOffset;
+      }
+    };
+    var Node11 = class _Node {
+      static addStringTerminator(src, offset, str) {
+        if (str[str.length - 1] === "\n") return str;
+        const next = _Node.endOfWhiteSpace(src, offset);
+        return next >= src.length || src[next] === "\n" ? str + "\n" : str;
+      }
+      // ^(---|...)
+      static atDocumentBoundary(src, offset, sep3) {
+        const ch0 = src[offset];
+        if (!ch0) return true;
+        const prev = src[offset - 1];
+        if (prev && prev !== "\n") return false;
+        if (sep3) {
+          if (ch0 !== sep3) return false;
+        } else {
+          if (ch0 !== Char.DIRECTIVES_END && ch0 !== Char.DOCUMENT_END) return false;
+        }
+        const ch1 = src[offset + 1];
+        const ch2 = src[offset + 2];
+        if (ch1 !== ch0 || ch2 !== ch0) return false;
+        const ch3 = src[offset + 3];
+        return !ch3 || ch3 === "\n" || ch3 === "	" || ch3 === " ";
+      }
+      static endOfIdentifier(src, offset) {
+        let ch = src[offset];
+        const isVerbatim = ch === "<";
+        const notOk = isVerbatim ? ["\n", "	", " ", ">"] : ["\n", "	", " ", "[", "]", "{", "}", ","];
+        while (ch && notOk.indexOf(ch) === -1) ch = src[offset += 1];
+        if (isVerbatim && ch === ">") offset += 1;
+        return offset;
+      }
+      static endOfIndent(src, offset) {
+        let ch = src[offset];
+        while (ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfLine(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== "\n") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfWhiteSpace(src, offset) {
+        let ch = src[offset];
+        while (ch === "	" || ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static startOfLine(src, offset) {
+        let ch = src[offset - 1];
+        if (ch === "\n") return offset;
+        while (ch && ch !== "\n") ch = src[offset -= 1];
+        return offset + 1;
+      }
+      /**
+       * End of indentation, or null if the line's indent level is not more
+       * than `indent`
+       *
+       * @param {string} src
+       * @param {number} indent
+       * @param {number} lineStart
+       * @returns {?number}
+       */
+      static endOfBlockIndent(src, indent, lineStart) {
+        const inEnd = _Node.endOfIndent(src, lineStart);
+        if (inEnd > lineStart + indent) {
+          return inEnd;
+        } else {
+          const wsEnd = _Node.endOfWhiteSpace(src, inEnd);
+          const ch = src[wsEnd];
+          if (!ch || ch === "\n") return wsEnd;
+        }
+        return null;
+      }
+      static atBlank(src, offset, endAsBlank) {
+        const ch = src[offset];
+        return ch === "\n" || ch === "	" || ch === " " || endAsBlank && !ch;
+      }
+      static nextNodeIsIndented(ch, indentDiff, indicatorAsIndent) {
+        if (!ch || indentDiff < 0) return false;
+        if (indentDiff > 0) return true;
+        return indicatorAsIndent && ch === "-";
+      }
+      // should be at line or string end, or at next non-whitespace char
+      static normalizeOffset(src, offset) {
+        const ch = src[offset];
+        return !ch ? offset : ch !== "\n" && src[offset - 1] === "\n" ? offset - 1 : _Node.endOfWhiteSpace(src, offset);
+      }
+      // fold single newline into space, multiple newlines to N - 1 newlines
+      // presumes src[offset] === '\n'
+      static foldNewline(src, offset, indent) {
+        let inCount = 0;
+        let error = false;
+        let fold = "";
+        let ch = src[offset + 1];
+        while (ch === " " || ch === "	" || ch === "\n") {
+          switch (ch) {
+            case "\n":
+              inCount = 0;
+              offset += 1;
+              fold += "\n";
+              break;
+            case "	":
+              if (inCount <= indent) error = true;
+              offset = _Node.endOfWhiteSpace(src, offset + 2) - 1;
+              break;
+            case " ":
+              inCount += 1;
+              offset += 1;
+              break;
+          }
+          ch = src[offset + 1];
+        }
+        if (!fold) fold = " ";
+        if (ch && inCount <= indent) error = true;
+        return {
+          fold,
+          offset,
+          error
+        };
+      }
+      constructor(type, props, context) {
+        Object.defineProperty(this, "context", {
+          value: context || null,
+          writable: true
+        });
+        this.error = null;
+        this.range = null;
+        this.valueRange = null;
+        this.props = props || [];
+        this.type = type;
+        this.value = null;
+      }
+      getPropValue(idx, key, skipKey) {
+        if (!this.context) return null;
+        const {
+          src
+        } = this.context;
+        const prop = this.props[idx];
+        return prop && src[prop.start] === key ? src.slice(prop.start + (skipKey ? 1 : 0), prop.end) : null;
+      }
+      get anchor() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const anchor = this.getPropValue(i, Char.ANCHOR, true);
+          if (anchor != null) return anchor;
+        }
+        return null;
+      }
+      get comment() {
+        const comments = [];
+        for (let i = 0; i < this.props.length; ++i) {
+          const comment = this.getPropValue(i, Char.COMMENT, true);
+          if (comment != null) comments.push(comment);
+        }
+        return comments.length > 0 ? comments.join("\n") : null;
+      }
+      commentHasRequiredWhitespace(start) {
+        const {
+          src
+        } = this.context;
+        if (this.header && start === this.header.end) return false;
+        if (!this.valueRange) return false;
+        const {
+          end
+        } = this.valueRange;
+        return start !== end || _Node.atBlank(src, end - 1);
+      }
+      get hasComment() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] === Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get hasProps() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] !== Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get includesTrailingLines() {
+        return false;
+      }
+      get jsonLike() {
+        const jsonLikeTypes = [Type.FLOW_MAP, Type.FLOW_SEQ, Type.QUOTE_DOUBLE, Type.QUOTE_SINGLE];
+        return jsonLikeTypes.indexOf(this.type) !== -1;
+      }
+      get rangeAsLinePos() {
+        if (!this.range || !this.context) return void 0;
+        const start = getLinePos(this.range.start, this.context.root);
+        if (!start) return void 0;
+        const end = getLinePos(this.range.end, this.context.root);
+        return {
+          start,
+          end
+        };
+      }
+      get rawValue() {
+        if (!this.valueRange || !this.context) return null;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        return this.context.src.slice(start, end);
+      }
+      get tag() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const tag = this.getPropValue(i, Char.TAG, false);
+          if (tag != null) {
+            if (tag[1] === "<") {
+              return {
+                verbatim: tag.slice(2, -1)
+              };
+            } else {
+              const [_, handle, suffix] = tag.match(/^(.*!)([^!]*)$/);
+              return {
+                handle,
+                suffix
+              };
+            }
+          }
+        }
+        return null;
+      }
+      get valueRangeContainsNewline() {
+        if (!this.valueRange || !this.context) return false;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        for (let i = start; i < end; ++i) {
+          if (src[i] === "\n") return true;
+        }
+        return false;
+      }
+      parseComment(start) {
+        const {
+          src
+        } = this.context;
+        if (src[start] === Char.COMMENT) {
+          const end = _Node.endOfLine(src, start + 1);
+          const commentRange = new Range(start, end);
+          this.props.push(commentRange);
+          return end;
+        }
+        return start;
+      }
+      /**
+       * Populates the `origStart` and `origEnd` values of all ranges for this
+       * node. Extended by child classes to handle descendant nodes.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRanges(cr, offset) {
+        if (this.range) offset = this.range.setOrigRange(cr, offset);
+        if (this.valueRange) this.valueRange.setOrigRange(cr, offset);
+        this.props.forEach((prop) => prop.setOrigRange(cr, offset));
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = src.slice(range4.start, range4.end);
+        return _Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var YAMLError = class extends Error {
+      constructor(name, source, message) {
+        if (!message || !(source instanceof Node11)) throw new Error(`Invalid arguments for new ${name}`);
+        super();
+        this.name = name;
+        this.message = message;
+        this.source = source;
+      }
+      makePretty() {
+        if (!this.source) return;
+        this.nodeType = this.source.type;
+        const cst = this.source.context && this.source.context.root;
+        if (typeof this.offset === "number") {
+          this.range = new Range(this.offset, this.offset + 1);
+          const start = cst && getLinePos(this.offset, cst);
+          if (start) {
+            const end = {
+              line: start.line,
+              col: start.col + 1
+            };
+            this.linePos = {
+              start,
+              end
+            };
+          }
+          delete this.offset;
+        } else {
+          this.range = this.source.range;
+          this.linePos = this.source.rangeAsLinePos;
+        }
+        if (this.linePos) {
+          const {
+            line,
+            col
+          } = this.linePos.start;
+          this.message += ` at line ${line}, column ${col}`;
+          const ctx = cst && getPrettyContext(this.linePos, cst);
+          if (ctx) this.message += `:
+
+${ctx}
+`;
+        }
+        delete this.source;
+      }
+    };
+    var YAMLReferenceError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLReferenceError", source, message);
+      }
+    };
+    var YAMLSemanticError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSemanticError", source, message);
+      }
+    };
+    var YAMLSyntaxError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSyntaxError", source, message);
+      }
+    };
+    var YAMLWarning = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLWarning", source, message);
+      }
+    };
+    function _defineProperty(e, r, t) {
+      return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
+        value: t,
+        enumerable: true,
+        configurable: true,
+        writable: true
+      }) : e[r] = t, e;
+    }
+    function _toPrimitive(t, r) {
+      if ("object" != typeof t || !t) return t;
+      var e = t[Symbol.toPrimitive];
+      if (void 0 !== e) {
+        var i = e.call(t, r || "default");
+        if ("object" != typeof i) return i;
+        throw new TypeError("@@toPrimitive must return a primitive value.");
+      }
+      return ("string" === r ? String : Number)(t);
+    }
+    function _toPropertyKey(t) {
+      var i = _toPrimitive(t, "string");
+      return "symbol" == typeof i ? i : i + "";
+    }
+    var PlainValue = class _PlainValue extends Node11 {
+      static endOfLine(src, start, inFlow) {
+        let ch = src[start];
+        let offset = start;
+        while (ch && ch !== "\n") {
+          if (inFlow && (ch === "[" || ch === "]" || ch === "{" || ch === "}" || ch === ",")) break;
+          const next = src[offset + 1];
+          if (ch === ":" && (!next || next === "\n" || next === "	" || next === " " || inFlow && next === ",")) break;
+          if ((ch === " " || ch === "	") && next === "#") break;
+          offset += 1;
+          ch = next;
+        }
+        return offset;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        let ch = src[end - 1];
+        while (start < end && (ch === "\n" || ch === "	" || ch === " ")) ch = src[--end - 1];
+        let str = "";
+        for (let i = start; i < end; ++i) {
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            const {
+              fold,
+              offset
+            } = Node11.foldNewline(src, i, -1);
+            str += fold;
+            i = offset;
+          } else if (ch2 === " " || ch2 === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (i < end && (next === " " || next === "	")) {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch2;
+          } else {
+            str += ch2;
+          }
+        }
+        const ch0 = src[start];
+        switch (ch0) {
+          case "	": {
+            const msg = "Plain value cannot start with a tab character";
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          case "@":
+          case "`": {
+            const msg = `Plain value cannot start with reserved character ${ch0}`;
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          default:
+            return str;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          inFlow,
+          src
+        } = this.context;
+        let offset = start;
+        let valueEnd = start;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          if (Node11.atDocumentBoundary(src, offset + 1)) break;
+          const end = Node11.endOfBlockIndent(src, indent, offset + 1);
+          if (end === null || src[end] === "#") break;
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            valueEnd = _PlainValue.endOfLine(src, end, inFlow);
+            offset = valueEnd;
+          }
+        }
+        if (this.valueRange.isEmpty()) this.valueRange.start = start;
+        this.valueRange.end = valueEnd;
+        return valueEnd;
+      }
+      /**
+       * Parses a plain value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * #comment
+       *
+       * first line
+       *
+       * first line #comment
+       *
+       * first line
+       * block
+       * lines
+       *
+       * #comment
+       * block
+       * lines
+       * ```
+       * where block lines are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar, may be `\n`
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          inFlow,
+          src
+        } = context;
+        let offset = start;
+        const ch = src[offset];
+        if (ch && ch !== "#" && ch !== "\n") {
+          offset = _PlainValue.endOfLine(src, start, inFlow);
+        }
+        this.valueRange = new Range(start, offset);
+        offset = Node11.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        if (!this.hasComment || this.valueRange.isEmpty()) {
+          offset = this.parseBlockValue(offset);
+        }
+        return offset;
+      }
+    };
+    exports2.Char = Char;
+    exports2.Node = Node11;
+    exports2.PlainValue = PlainValue;
+    exports2.Range = Range;
+    exports2.Type = Type;
+    exports2.YAMLError = YAMLError;
+    exports2.YAMLReferenceError = YAMLReferenceError;
+    exports2.YAMLSemanticError = YAMLSemanticError;
+    exports2.YAMLSyntaxError = YAMLSyntaxError;
+    exports2.YAMLWarning = YAMLWarning;
+    exports2._defineProperty = _defineProperty;
+    exports2.defaultTagPrefix = defaultTagPrefix;
+    exports2.defaultTags = defaultTags;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js
+var require_parse_cst = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var BlankLine = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.BLANK_LINE);
+      }
+      /* istanbul ignore next */
+      get includesTrailingLines() {
+        return true;
+      }
+      /**
+       * Parses a blank line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first \n character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        this.range = new PlainValue.Range(start, start + 1);
+        return start + 1;
+      }
+    };
+    var CollectionItem = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.node = null;
+      }
+      get includesTrailingLines() {
+        return !!this.node && this.node.includesTrailingLines;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          atLineStart,
+          lineStart
+        } = context;
+        if (!atLineStart && this.type === PlainValue.Type.SEQ_ITEM) this.error = new PlainValue.YAMLSemanticError(this, "Sequence items must not have preceding content on the same line");
+        const indent = atLineStart ? start - lineStart : context.indent;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        let ch = src[offset];
+        const inlineComment = ch === "#";
+        const comments = [];
+        let blankLine = null;
+        while (ch === "\n" || ch === "#") {
+          if (ch === "#") {
+            const end2 = PlainValue.Node.endOfLine(src, offset + 1);
+            comments.push(new PlainValue.Range(offset, end2));
+            offset = end2;
+          } else {
+            atLineStart = true;
+            lineStart = offset + 1;
+            const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+            if (src[wsEnd] === "\n" && comments.length === 0) {
+              blankLine = new BlankLine();
+              lineStart = blankLine.parse({
+                src
+              }, lineStart);
+            }
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+          }
+          ch = src[offset];
+        }
+        if (PlainValue.Node.nextNodeIsIndented(ch, offset - (lineStart + indent), this.type !== PlainValue.Type.SEQ_ITEM)) {
+          this.node = parseNode({
+            atLineStart,
+            inCollection: false,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+        } else if (ch && lineStart > start + 1) {
+          offset = lineStart - 1;
+        }
+        if (this.node) {
+          if (blankLine) {
+            const items = context.parent.items || context.parent.contents;
+            if (items) items.push(blankLine);
+          }
+          if (comments.length) Array.prototype.push.apply(this.props, comments);
+          offset = this.node.range.end;
+        } else {
+          if (inlineComment) {
+            const c = comments[0];
+            this.props.push(c);
+            offset = c.end;
+          } else {
+            offset = PlainValue.Node.endOfLine(src, start + 1);
+          }
+        }
+        const end = this.node ? this.node.valueRange.end : offset;
+        this.valueRange = new PlainValue.Range(start, end);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.node ? this.node.setOrigRanges(cr, offset) : offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          node,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = node ? src.slice(range4.start, node.range.start) + String(node) : src.slice(range4.start, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Comment = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.COMMENT);
+      }
+      /**
+       * Parses a comment line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const offset = this.parseComment(start);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    function grabCollectionEndComments(node) {
+      let cnode = node;
+      while (cnode instanceof CollectionItem) cnode = cnode.node;
+      if (!(cnode instanceof Collection2)) return null;
+      const len = cnode.items.length;
+      let ci = -1;
+      for (let i = len - 1; i >= 0; --i) {
+        const n = cnode.items[i];
+        if (n.type === PlainValue.Type.COMMENT) {
+          const {
+            indent,
+            lineStart
+          } = n.context;
+          if (indent > 0 && n.range.start >= lineStart + indent) break;
+          ci = i;
+        } else if (n.type === PlainValue.Type.BLANK_LINE) ci = i;
+        else break;
+      }
+      if (ci === -1) return null;
+      const ca = cnode.items.splice(ci, len - ci);
+      const prevEnd = ca[0].range.start;
+      while (true) {
+        cnode.range.end = prevEnd;
+        if (cnode.valueRange && cnode.valueRange.end > prevEnd) cnode.valueRange.end = prevEnd;
+        if (cnode === node) break;
+        cnode = cnode.context.parent;
+      }
+      return ca;
+    }
+    var Collection2 = class _Collection extends PlainValue.Node {
+      static nextContentHasIndent(src, offset, indent) {
+        const lineStart = PlainValue.Node.endOfLine(src, offset) + 1;
+        offset = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+        const ch = src[offset];
+        if (!ch) return false;
+        if (offset >= lineStart + indent) return true;
+        if (ch !== "#" && ch !== "\n") return false;
+        return _Collection.nextContentHasIndent(src, offset, indent);
+      }
+      constructor(firstItem) {
+        super(firstItem.type === PlainValue.Type.SEQ_ITEM ? PlainValue.Type.SEQ : PlainValue.Type.MAP);
+        for (let i = firstItem.props.length - 1; i >= 0; --i) {
+          if (firstItem.props[i].start < firstItem.context.lineStart) {
+            this.props = firstItem.props.slice(0, i + 1);
+            firstItem.props = firstItem.props.slice(i + 1);
+            const itemRange = firstItem.props[0] || firstItem.valueRange;
+            firstItem.range.start = itemRange.start;
+            break;
+          }
+        }
+        this.items = [firstItem];
+        const ec = grabCollectionEndComments(firstItem);
+        if (ec) Array.prototype.push.apply(this.items, ec);
+      }
+      get includesTrailingLines() {
+        return this.items.length > 0;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let lineStart = PlainValue.Node.startOfLine(src, start);
+        const firstItem = this.items[0];
+        firstItem.context.parent = this;
+        this.valueRange = PlainValue.Range.copy(firstItem.valueRange);
+        const indent = firstItem.range.start - firstItem.context.lineStart;
+        let offset = start;
+        offset = PlainValue.Node.normalizeOffset(src, offset);
+        let ch = src[offset];
+        let atLineStart = PlainValue.Node.endOfWhiteSpace(src, lineStart) === offset;
+        let prevIncludesTrailingLines = false;
+        while (ch) {
+          while (ch === "\n" || ch === "#") {
+            if (atLineStart && ch === "\n" && !prevIncludesTrailingLines) {
+              const blankLine = new BlankLine();
+              offset = blankLine.parse({
+                src
+              }, offset);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+              this.items.push(blankLine);
+              offset -= 1;
+            } else if (ch === "#") {
+              if (offset < lineStart + indent && !_Collection.nextContentHasIndent(src, offset, indent)) {
+                return offset;
+              }
+              const comment = new Comment();
+              offset = comment.parse({
+                indent,
+                lineStart,
+                src
+              }, offset);
+              this.items.push(comment);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+            }
+            lineStart = offset + 1;
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+            if (PlainValue.Node.atBlank(src, offset)) {
+              const wsEnd = PlainValue.Node.endOfWhiteSpace(src, offset);
+              const next = src[wsEnd];
+              if (!next || next === "\n" || next === "#") {
+                offset = wsEnd;
+              }
+            }
+            ch = src[offset];
+            atLineStart = true;
+          }
+          if (!ch) {
+            break;
+          }
+          if (offset !== lineStart + indent && (atLineStart || ch !== ":")) {
+            if (offset < lineStart + indent) {
+              if (lineStart > start) offset = lineStart;
+              break;
+            } else if (!this.error) {
+              const msg = "All collection items must start at the same column";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          if (firstItem.type === PlainValue.Type.SEQ_ITEM) {
+            if (ch !== "-") {
+              if (lineStart > start) offset = lineStart;
+              break;
+            }
+          } else if (ch === "-" && !this.error) {
+            const next = src[offset + 1];
+            if (!next || next === "\n" || next === "	" || next === " ") {
+              const msg = "A collection cannot be both a mapping and a sequence";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          const node = parseNode({
+            atLineStart,
+            inCollection: true,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+          if (!node) return offset;
+          this.items.push(node);
+          this.valueRange.end = node.valueRange.end;
+          offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+          ch = src[offset];
+          atLineStart = false;
+          prevIncludesTrailingLines = node.includesTrailingLines;
+          if (ch) {
+            let ls = offset - 1;
+            let prev = src[ls];
+            while (prev === " " || prev === "	") prev = src[--ls];
+            if (prev === "\n") {
+              lineStart = ls + 1;
+              atLineStart = true;
+            }
+          }
+          const ec = grabCollectionEndComments(node);
+          if (ec) Array.prototype.push.apply(this.items, ec);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = src.slice(range4.start, items[0].range.start) + String(items[0]);
+        for (let i = 1; i < items.length; ++i) {
+          const item = items[i];
+          const {
+            atLineStart,
+            indent
+          } = item.context;
+          if (atLineStart) for (let i2 = 0; i2 < indent; ++i2) str += " ";
+          str += String(item);
+        }
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Directive = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.DIRECTIVE);
+        this.name = null;
+      }
+      get parameters() {
+        const raw = this.rawValue;
+        return raw ? raw.trim().split(/[ \t]+/) : [];
+      }
+      parseName(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "	" && ch !== " ") ch = src[offset += 1];
+        this.name = src.slice(start, offset);
+        return offset;
+      }
+      parseParameters(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "#") ch = src[offset += 1];
+        this.valueRange = new PlainValue.Range(start, offset);
+        return offset;
+      }
+      parse(context, start) {
+        this.context = context;
+        let offset = this.parseName(start + 1);
+        offset = this.parseParameters(offset);
+        offset = this.parseComment(offset);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    var Document = class _Document extends PlainValue.Node {
+      static startCommentOrEndBlankLine(src, start) {
+        const offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        const ch = src[offset];
+        return ch === "#" || ch === "\n" ? offset : start;
+      }
+      constructor() {
+        super(PlainValue.Type.DOCUMENT);
+        this.directives = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.documentEndMarker = null;
+      }
+      parseDirectives(start) {
+        const {
+          src
+        } = this.context;
+        this.directives = [];
+        let atLineStart = true;
+        let hasDirectives = false;
+        let offset = start;
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DIRECTIVES_END)) {
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.directives.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.directives.push(comment);
+                atLineStart = false;
+              }
+              break;
+            case "%":
+              {
+                const directive = new Directive();
+                offset = directive.parse({
+                  parent: this,
+                  src
+                }, offset);
+                this.directives.push(directive);
+                hasDirectives = true;
+                atLineStart = false;
+              }
+              break;
+            default:
+              if (hasDirectives) {
+                this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+              } else if (this.directives.length > 0) {
+                this.contents = this.directives;
+                this.directives = [];
+              }
+              return offset;
+          }
+        }
+        if (src[offset]) {
+          this.directivesEndMarker = new PlainValue.Range(offset, offset + 3);
+          return offset + 3;
+        }
+        if (hasDirectives) {
+          this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+        } else if (this.directives.length > 0) {
+          this.contents = this.directives;
+          this.directives = [];
+        }
+        return offset;
+      }
+      parseContents(start) {
+        const {
+          parseNode,
+          src
+        } = this.context;
+        if (!this.contents) this.contents = [];
+        let lineStart = start;
+        while (src[lineStart - 1] === "-") lineStart -= 1;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        let atLineStart = lineStart === start;
+        this.valueRange = new PlainValue.Range(offset);
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DOCUMENT_END)) {
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.contents.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              lineStart = offset;
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.contents.push(comment);
+                atLineStart = false;
+              }
+              break;
+            default: {
+              const iEnd = PlainValue.Node.endOfIndent(src, offset);
+              const context = {
+                atLineStart,
+                indent: -1,
+                inFlow: false,
+                inCollection: false,
+                lineStart,
+                parent: this
+              };
+              const node = parseNode(context, iEnd);
+              if (!node) return this.valueRange.end = iEnd;
+              this.contents.push(node);
+              offset = node.range.end;
+              atLineStart = false;
+              const ec = grabCollectionEndComments(node);
+              if (ec) Array.prototype.push.apply(this.contents, ec);
+            }
+          }
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+        }
+        this.valueRange.end = offset;
+        if (src[offset]) {
+          this.documentEndMarker = new PlainValue.Range(offset, offset + 3);
+          offset += 3;
+          if (src[offset]) {
+            offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+            if (src[offset] === "#") {
+              const comment = new Comment();
+              offset = comment.parse({
+                src
+              }, offset);
+              this.contents.push(comment);
+            }
+            switch (src[offset]) {
+              case "\n":
+                offset += 1;
+                break;
+              case void 0:
+                break;
+              default:
+                this.error = new PlainValue.YAMLSyntaxError(this, "Document end marker line cannot have a non-comment suffix");
+            }
+          }
+        }
+        return offset;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        context.root = this;
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = src.charCodeAt(start) === 65279 ? start + 1 : start;
+        offset = this.parseDirectives(offset);
+        offset = this.parseContents(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.directives.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.directivesEndMarker) offset = this.directivesEndMarker.setOrigRange(cr, offset);
+        this.contents.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.documentEndMarker) offset = this.documentEndMarker.setOrigRange(cr, offset);
+        return offset;
+      }
+      toString() {
+        const {
+          contents,
+          directives,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = directives.join("");
+        if (contents.length > 0) {
+          if (directives.length > 0 || contents[0].type === PlainValue.Type.COMMENT) str += "---\n";
+          str += contents.join("");
+        }
+        if (str[str.length - 1] !== "\n") str += "\n";
+        return str;
+      }
+    };
+    var Alias2 = class extends PlainValue.Node {
+      /**
+       * Parses an *alias from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = PlainValue.Node.endOfIdentifier(src, start + 1);
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var Chomp = {
+      CLIP: "CLIP",
+      KEEP: "KEEP",
+      STRIP: "STRIP"
+    };
+    var BlockValue = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.blockIndent = null;
+        this.chomping = Chomp.CLIP;
+        this.header = null;
+      }
+      get includesTrailingLines() {
+        return this.chomping === Chomp.KEEP;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (this.valueRange.isEmpty()) return "";
+        let lastNewLine = null;
+        let ch = src[end - 1];
+        while (ch === "\n" || ch === "	" || ch === " ") {
+          end -= 1;
+          if (end <= start) {
+            if (this.chomping === Chomp.KEEP) break;
+            else return "";
+          }
+          if (ch === "\n") lastNewLine = end;
+          ch = src[end - 1];
+        }
+        let keepStart = end + 1;
+        if (lastNewLine) {
+          if (this.chomping === Chomp.KEEP) {
+            keepStart = lastNewLine;
+            end = this.valueRange.end;
+          } else {
+            end = lastNewLine;
+          }
+        }
+        const bi = indent + this.blockIndent;
+        const folded = this.type === PlainValue.Type.BLOCK_FOLDED;
+        let atStart = true;
+        let str = "";
+        let sep3 = "";
+        let prevMoreIndented = false;
+        for (let i = start; i < end; ++i) {
+          for (let j = 0; j < bi; ++j) {
+            if (src[i] !== " ") break;
+            i += 1;
+          }
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            if (sep3 === "\n") str += "\n";
+            else sep3 = "\n";
+          } else {
+            const lineEnd = PlainValue.Node.endOfLine(src, i);
+            const line = src.slice(i, lineEnd);
+            i = lineEnd;
+            if (folded && (ch2 === " " || ch2 === "	") && i < keepStart) {
+              if (sep3 === " ") sep3 = "\n";
+              else if (!prevMoreIndented && !atStart && sep3 === "\n") sep3 = "\n\n";
+              str += sep3 + line;
+              sep3 = lineEnd < end && src[lineEnd] || "";
+              prevMoreIndented = true;
+            } else {
+              str += sep3 + line;
+              sep3 = folded && i < keepStart ? " " : "\n";
+              prevMoreIndented = false;
+            }
+            if (atStart && line !== "") atStart = false;
+          }
+        }
+        return this.chomping === Chomp.STRIP ? str : str + "\n";
+      }
+      parseBlockHeader(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start + 1;
+        let bi = "";
+        while (true) {
+          const ch = src[offset];
+          switch (ch) {
+            case "-":
+              this.chomping = Chomp.STRIP;
+              break;
+            case "+":
+              this.chomping = Chomp.KEEP;
+              break;
+            case "0":
+            case "1":
+            case "2":
+            case "3":
+            case "4":
+            case "5":
+            case "6":
+            case "7":
+            case "8":
+            case "9":
+              bi += ch;
+              break;
+            default:
+              this.blockIndent = Number(bi) || null;
+              this.header = new PlainValue.Range(start, offset);
+              return offset;
+          }
+          offset += 1;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          src
+        } = this.context;
+        const explicit = !!this.blockIndent;
+        let offset = start;
+        let valueEnd = start;
+        let minBlockIndent = 1;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          offset += 1;
+          if (PlainValue.Node.atDocumentBoundary(src, offset)) break;
+          const end = PlainValue.Node.endOfBlockIndent(src, indent, offset);
+          if (end === null) break;
+          const ch2 = src[end];
+          const lineIndent = end - (offset + indent);
+          if (!this.blockIndent) {
+            if (src[end] !== "\n") {
+              if (lineIndent < minBlockIndent) {
+                const msg = "Block scalars with more-indented leading empty lines must use an explicit indentation indicator";
+                this.error = new PlainValue.YAMLSemanticError(this, msg);
+              }
+              this.blockIndent = lineIndent;
+            } else if (lineIndent > minBlockIndent) {
+              minBlockIndent = lineIndent;
+            }
+          } else if (ch2 && ch2 !== "\n" && lineIndent < this.blockIndent) {
+            if (src[end] === "#") break;
+            if (!this.error) {
+              const src2 = explicit ? "explicit indentation indicator" : "first line";
+              const msg = `Block scalars must not be less indented than their ${src2}`;
+              this.error = new PlainValue.YAMLSemanticError(this, msg);
+            }
+          }
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            offset = valueEnd = PlainValue.Node.endOfLine(src, end);
+          }
+        }
+        if (this.chomping !== Chomp.KEEP) {
+          offset = src[valueEnd] ? valueEnd + 1 : valueEnd;
+        }
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        return offset;
+      }
+      /**
+       * Parses a block value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * BS
+       * block
+       * lines
+       *
+       * BS #comment
+       * block
+       * lines
+       * ```
+       * where the block style BS matches the regexp `[|>][-+1-9]*` and block lines
+       * are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this block
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = this.parseBlockHeader(start);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        offset = this.parseBlockValue(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.header ? this.header.setOrigRange(cr, offset) : offset;
+      }
+    };
+    var FlowCollection = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.items = null;
+      }
+      prevNodeIsJsonLike(idx = this.items.length) {
+        const node = this.items[idx - 1];
+        return !!node && (node.jsonLike || node.type === PlainValue.Type.COMMENT && this.prevNodeIsJsonLike(idx - 1));
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          indent,
+          lineStart
+        } = context;
+        let char = src[start];
+        this.items = [{
+          char,
+          offset: start
+        }];
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        char = src[offset];
+        while (char && char !== "]" && char !== "}") {
+          switch (char) {
+            case "\n":
+              {
+                lineStart = offset + 1;
+                const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+                if (src[wsEnd] === "\n") {
+                  const blankLine = new BlankLine();
+                  lineStart = blankLine.parse({
+                    src
+                  }, lineStart);
+                  this.items.push(blankLine);
+                }
+                offset = PlainValue.Node.endOfIndent(src, lineStart);
+                if (offset <= lineStart + indent) {
+                  char = src[offset];
+                  if (offset < lineStart + indent || char !== "]" && char !== "}") {
+                    const msg = "Insufficient indentation in flow collection";
+                    this.error = new PlainValue.YAMLSemanticError(this, msg);
+                  }
+                }
+              }
+              break;
+            case ",":
+              {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.items.push(comment);
+              }
+              break;
+            case "?":
+            case ":": {
+              const next = src[offset + 1];
+              if (next === "\n" || next === "	" || next === " " || next === "," || // in-flow : after JSON-like key does not need to be followed by whitespace
+              char === ":" && this.prevNodeIsJsonLike()) {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+                break;
+              }
+            }
+            // fallthrough
+            default: {
+              const node = parseNode({
+                atLineStart: false,
+                inCollection: false,
+                inFlow: true,
+                indent: -1,
+                lineStart,
+                parent: this
+              }, offset);
+              if (!node) {
+                this.valueRange = new PlainValue.Range(start, offset);
+                return offset;
+              }
+              this.items.push(node);
+              offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+            }
+          }
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+          char = src[offset];
+        }
+        this.valueRange = new PlainValue.Range(start, offset + 1);
+        if (char) {
+          this.items.push({
+            char,
+            offset
+          });
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset + 1);
+          offset = this.parseComment(offset);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          if (node instanceof PlainValue.Node) {
+            offset = node.setOrigRanges(cr, offset);
+          } else if (cr.length === 0) {
+            node.origOffset = node.offset;
+          } else {
+            let i = offset;
+            while (i < cr.length) {
+              if (cr[i] > node.offset) break;
+              else ++i;
+            }
+            node.origOffset = node.offset + i;
+            offset = i;
+          }
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const nodes = items.filter((item) => item instanceof PlainValue.Node);
+        let str = "";
+        let prevEnd = range4.start;
+        nodes.forEach((node) => {
+          const prefix = src.slice(prevEnd, node.range.start);
+          prevEnd = node.range.end;
+          str += prefix + String(node);
+          if (str[str.length - 1] === "\n" && src[prevEnd - 1] !== "\n" && src[prevEnd] === "\n") {
+            prevEnd += 1;
+          }
+        });
+        str += src.slice(prevEnd, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var QuoteDouble = class _QuoteDouble extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== '"') {
+          offset += ch === "\\" ? 2 : 1;
+          ch = src[offset];
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== '"') errors.push(new PlainValue.YAMLSyntaxError(this, 'Missing closing "quote'));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line double-quoted string needs to be sufficiently indented"));
+          } else if (ch === "\\") {
+            i += 1;
+            switch (src[i]) {
+              case "0":
+                str += "\0";
+                break;
+              // null character
+              case "a":
+                str += "\x07";
+                break;
+              // bell character
+              case "b":
+                str += "\b";
+                break;
+              // backspace
+              case "e":
+                str += "\x1B";
+                break;
+              // escape character
+              case "f":
+                str += "\f";
+                break;
+              // form feed
+              case "n":
+                str += "\n";
+                break;
+              // line feed
+              case "r":
+                str += "\r";
+                break;
+              // carriage return
+              case "t":
+                str += "	";
+                break;
+              // horizontal tab
+              case "v":
+                str += "\v";
+                break;
+              // vertical tab
+              case "N":
+                str += "\x85";
+                break;
+              // Unicode next line
+              case "_":
+                str += "\xA0";
+                break;
+              // Unicode non-breaking space
+              case "L":
+                str += "\u2028";
+                break;
+              // Unicode line separator
+              case "P":
+                str += "\u2029";
+                break;
+              // Unicode paragraph separator
+              case " ":
+                str += " ";
+                break;
+              case '"':
+                str += '"';
+                break;
+              case "/":
+                str += "/";
+                break;
+              case "\\":
+                str += "\\";
+                break;
+              case "	":
+                str += "	";
+                break;
+              case "x":
+                str += this.parseCharCode(i + 1, 2, errors);
+                i += 2;
+                break;
+              case "u":
+                str += this.parseCharCode(i + 1, 4, errors);
+                i += 4;
+                break;
+              case "U":
+                str += this.parseCharCode(i + 1, 8, errors);
+                i += 8;
+                break;
+              case "\n":
+                while (src[i + 1] === " " || src[i + 1] === "	") i += 1;
+                break;
+              default:
+                errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(i - 1, 2)}`));
+                str += "\\" + src[i];
+            }
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      parseCharCode(offset, length, errors) {
+        const {
+          src
+        } = this.context;
+        const cc = src.substr(offset, length);
+        const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc);
+        const code = ok ? parseInt(cc, 16) : NaN;
+        if (isNaN(code)) {
+          errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(offset - 2, length + 2)}`));
+          return src.substr(offset - 2, length + 2);
+        }
+        return String.fromCodePoint(code);
+      }
+      /**
+       * Parses a "double quoted" value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteDouble.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var QuoteSingle = class _QuoteSingle extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch) {
+          if (ch === "'") {
+            if (src[offset + 1] !== "'") break;
+            ch = src[offset += 2];
+          } else {
+            ch = src[offset += 1];
+          }
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Missing closing 'quote"));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line single-quoted string needs to be sufficiently indented"));
+          } else if (ch === "'") {
+            str += ch;
+            i += 1;
+            if (src[i] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Unescaped single quote? This should not happen."));
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      /**
+       * Parses a 'single quoted' value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteSingle.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    function createNewNode(type, props) {
+      switch (type) {
+        case PlainValue.Type.ALIAS:
+          return new Alias2(type, props);
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+          return new BlockValue(type, props);
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.FLOW_SEQ:
+          return new FlowCollection(type, props);
+        case PlainValue.Type.MAP_KEY:
+        case PlainValue.Type.MAP_VALUE:
+        case PlainValue.Type.SEQ_ITEM:
+          return new CollectionItem(type, props);
+        case PlainValue.Type.COMMENT:
+        case PlainValue.Type.PLAIN:
+          return new PlainValue.PlainValue(type, props);
+        case PlainValue.Type.QUOTE_DOUBLE:
+          return new QuoteDouble(type, props);
+        case PlainValue.Type.QUOTE_SINGLE:
+          return new QuoteSingle(type, props);
+        /* istanbul ignore next */
+        default:
+          return null;
+      }
+    }
+    var ParseContext = class _ParseContext {
+      static parseType(src, offset, inFlow) {
+        switch (src[offset]) {
+          case "*":
+            return PlainValue.Type.ALIAS;
+          case ">":
+            return PlainValue.Type.BLOCK_FOLDED;
+          case "|":
+            return PlainValue.Type.BLOCK_LITERAL;
+          case "{":
+            return PlainValue.Type.FLOW_MAP;
+          case "[":
+            return PlainValue.Type.FLOW_SEQ;
+          case "?":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_KEY : PlainValue.Type.PLAIN;
+          case ":":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_VALUE : PlainValue.Type.PLAIN;
+          case "-":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.SEQ_ITEM : PlainValue.Type.PLAIN;
+          case '"':
+            return PlainValue.Type.QUOTE_DOUBLE;
+          case "'":
+            return PlainValue.Type.QUOTE_SINGLE;
+          default:
+            return PlainValue.Type.PLAIN;
+        }
+      }
+      constructor(orig = {}, {
+        atLineStart,
+        inCollection,
+        inFlow,
+        indent,
+        lineStart,
+        parent
+      } = {}) {
+        PlainValue._defineProperty(this, "parseNode", (overlay, start) => {
+          if (PlainValue.Node.atDocumentBoundary(this.src, start)) return null;
+          const context = new _ParseContext(this, overlay);
+          const {
+            props,
+            type,
+            valueStart
+          } = context.parseProps(start);
+          const node = createNewNode(type, props);
+          let offset = start;
+          try {
+            offset = node.parse(context, valueStart);
+          } catch (error) {
+            const msg = error instanceof Error ? error.message : String(error);
+            if (!node.error) node.error = new PlainValue.YAMLSyntaxError(node, msg);
+          }
+          node.range = new PlainValue.Range(start, offset);
+          if (offset <= start) {
+            if (!node.error) node.error = new Error(`Node#parse consumed no characters`);
+            node.error.parseEnd = offset;
+            node.error.source = node;
+            node.range.end = start + 1;
+          }
+          if (context.nodeStartsCollection(node)) {
+            if (!node.error && !context.atLineStart && context.parent.type === PlainValue.Type.DOCUMENT) {
+              node.error = new PlainValue.YAMLSyntaxError(node, "Block collection must not have preceding content here (e.g. directives-end indicator)");
+            }
+            const collection = new Collection2(node);
+            offset = collection.parse(new _ParseContext(context), offset);
+            collection.range = new PlainValue.Range(start, offset);
+            return collection;
+          }
+          return node;
+        });
+        this.atLineStart = atLineStart != null ? atLineStart : orig.atLineStart || false;
+        this.inCollection = inCollection != null ? inCollection : orig.inCollection || false;
+        this.inFlow = inFlow != null ? inFlow : orig.inFlow || false;
+        this.indent = indent != null ? indent : orig.indent;
+        this.lineStart = lineStart != null ? lineStart : orig.lineStart;
+        this.parent = parent != null ? parent : orig.parent || {};
+        this.root = orig.root;
+        this.src = orig.src;
+      }
+      nodeStartsCollection(node) {
+        const {
+          inCollection,
+          inFlow,
+          src
+        } = this;
+        if (inCollection || inFlow) return false;
+        if (node instanceof CollectionItem) return true;
+        let offset = node.range.end;
+        if (src[offset] === "\n" || src[offset - 1] === "\n") return false;
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        return src[offset] === ":";
+      }
+      // Anchor and tag are before type, which determines the node implementation
+      // class; hence this intermediate step.
+      parseProps(offset) {
+        const {
+          inFlow,
+          parent,
+          src
+        } = this;
+        const props = [];
+        let lineHasProps = false;
+        offset = this.atLineStart ? PlainValue.Node.endOfIndent(src, offset) : PlainValue.Node.endOfWhiteSpace(src, offset);
+        let ch = src[offset];
+        while (ch === PlainValue.Char.ANCHOR || ch === PlainValue.Char.COMMENT || ch === PlainValue.Char.TAG || ch === "\n") {
+          if (ch === "\n") {
+            let inEnd = offset;
+            let lineStart;
+            do {
+              lineStart = inEnd + 1;
+              inEnd = PlainValue.Node.endOfIndent(src, lineStart);
+            } while (src[inEnd] === "\n");
+            const indentDiff = inEnd - (lineStart + this.indent);
+            const noIndicatorAsIndent = parent.type === PlainValue.Type.SEQ_ITEM && parent.context.atLineStart;
+            if (src[inEnd] !== "#" && !PlainValue.Node.nextNodeIsIndented(src[inEnd], indentDiff, !noIndicatorAsIndent)) break;
+            this.atLineStart = true;
+            this.lineStart = lineStart;
+            lineHasProps = false;
+            offset = inEnd;
+          } else if (ch === PlainValue.Char.COMMENT) {
+            const end = PlainValue.Node.endOfLine(src, offset + 1);
+            props.push(new PlainValue.Range(offset, end));
+            offset = end;
+          } else {
+            let end = PlainValue.Node.endOfIdentifier(src, offset + 1);
+            if (ch === PlainValue.Char.TAG && src[end] === "," && /^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(src.slice(offset + 1, end + 13))) {
+              end = PlainValue.Node.endOfIdentifier(src, end + 5);
+            }
+            props.push(new PlainValue.Range(offset, end));
+            lineHasProps = true;
+            offset = PlainValue.Node.endOfWhiteSpace(src, end);
+          }
+          ch = src[offset];
+        }
+        if (lineHasProps && ch === ":" && PlainValue.Node.atBlank(src, offset + 1, true)) offset -= 1;
+        const type = _ParseContext.parseType(src, offset, inFlow);
+        return {
+          props,
+          type,
+          valueStart: offset
+        };
+      }
+    };
+    function parse3(src) {
+      const cr = [];
+      if (src.indexOf("\r") !== -1) {
+        src = src.replace(/\r\n?/g, (match, offset2) => {
+          if (match.length > 1) cr.push(offset2);
+          return "\n";
+        });
+      }
+      const documents = [];
+      let offset = 0;
+      do {
+        const doc = new Document();
+        const context = new ParseContext({
+          src
+        });
+        offset = doc.parse(context, offset);
+        documents.push(doc);
+      } while (offset < src.length);
+      documents.setOrigRanges = () => {
+        if (cr.length === 0) return false;
+        for (let i = 1; i < cr.length; ++i) cr[i] -= i;
+        let crOffset = 0;
+        for (let i = 0; i < documents.length; ++i) {
+          crOffset = documents[i].setOrigRanges(cr, crOffset);
+        }
+        cr.splice(0, cr.length);
+        return true;
+      };
+      documents.toString = () => documents.join("...\n");
+      return documents;
+    }
+    exports2.parse = parse3;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js
+var require_resolveSeq_95613e94 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    function addCommentBefore(str, indent, comment) {
+      if (!comment) return str;
+      const cc = comment.replace(/[\s\S]^/gm, `$&${indent}#`);
+      return `#${cc}
+${indent}${str}`;
+    }
+    function addComment(str, indent, comment) {
+      return !comment ? str : comment.indexOf("\n") === -1 ? `${str} #${comment}` : `${str}
+` + comment.replace(/^/gm, `${indent || ""}#`);
+    }
+    var Node11 = class {
+    };
+    function toJSON(value, arg, ctx) {
+      if (Array.isArray(value)) return value.map((v, i) => toJSON(v, String(i), ctx));
+      if (value && typeof value.toJSON === "function") {
+        const anchor = ctx && ctx.anchors && ctx.anchors.get(value);
+        if (anchor) ctx.onCreate = (res2) => {
+          anchor.res = res2;
+          delete ctx.onCreate;
+        };
+        const res = value.toJSON(arg, ctx);
+        if (anchor && ctx.onCreate) ctx.onCreate(res);
+        return res;
+      }
+      if ((!ctx || !ctx.keep) && typeof value === "bigint") return Number(value);
+      return value;
+    }
+    var Scalar2 = class extends Node11 {
+      constructor(value) {
+        super();
+        this.value = value;
+      }
+      toJSON(arg, ctx) {
+        return ctx && ctx.keep ? this.value : toJSON(this.value, arg, ctx);
+      }
+      toString() {
+        return String(this.value);
+      }
+    };
+    function collectionFromPath(schema, path23, value) {
+      let v = value;
+      for (let i = path23.length - 1; i >= 0; --i) {
+        const k = path23[i];
+        if (Number.isInteger(k) && k >= 0) {
+          const a = [];
+          a[k] = v;
+          v = a;
+        } else {
+          const o = {};
+          Object.defineProperty(o, k, {
+            value: v,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          v = o;
+        }
+      }
+      return schema.createNode(v, false);
+    }
+    var isEmptyPath = (path23) => path23 == null || typeof path23 === "object" && path23[Symbol.iterator]().next().done;
+    var Collection2 = class _Collection extends Node11 {
+      constructor(schema) {
+        super();
+        PlainValue._defineProperty(this, "items", []);
+        this.schema = schema;
+      }
+      addIn(path23, value) {
+        if (isEmptyPath(path23)) this.add(value);
+        else {
+          const [key, ...rest] = path23;
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.addIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      deleteIn([key, ...rest]) {
+        if (rest.length === 0) return this.delete(key);
+        const node = this.get(key, true);
+        if (node instanceof _Collection) return node.deleteIn(rest);
+        else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+      }
+      getIn([key, ...rest], keepScalar) {
+        const node = this.get(key, true);
+        if (rest.length === 0) return !keepScalar && node instanceof Scalar2 ? node.value : node;
+        else return node instanceof _Collection ? node.getIn(rest, keepScalar) : void 0;
+      }
+      hasAllNullValues() {
+        return this.items.every((node) => {
+          if (!node || node.type !== "PAIR") return false;
+          const n = node.value;
+          return n == null || n instanceof Scalar2 && n.value == null && !n.commentBefore && !n.comment && !n.tag;
+        });
+      }
+      hasIn([key, ...rest]) {
+        if (rest.length === 0) return this.has(key);
+        const node = this.get(key, true);
+        return node instanceof _Collection ? node.hasIn(rest) : false;
+      }
+      setIn([key, ...rest], value) {
+        if (rest.length === 0) {
+          this.set(key, value);
+        } else {
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.setIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      // overridden in implementations
+      /* istanbul ignore next */
+      toJSON() {
+        return null;
+      }
+      toString(ctx, {
+        blockItem,
+        flowChars,
+        isMap,
+        itemIndent
+      }, onComment, onChompKeep) {
+        const {
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        const inFlow = this.type === PlainValue.Type.FLOW_MAP || this.type === PlainValue.Type.FLOW_SEQ || ctx.inFlow;
+        if (inFlow) itemIndent += indentStep;
+        const allNullValues = isMap && this.hasAllNullValues();
+        ctx = Object.assign({}, ctx, {
+          allNullValues,
+          indent: itemIndent,
+          inFlow,
+          type: null
+        });
+        let chompKeep = false;
+        let hasItemWithNewLine = false;
+        const nodes = this.items.reduce((nodes2, item, i) => {
+          let comment;
+          if (item) {
+            if (!chompKeep && item.spaceBefore) nodes2.push({
+              type: "comment",
+              str: ""
+            });
+            if (item.commentBefore) item.commentBefore.match(/^.*$/gm).forEach((line) => {
+              nodes2.push({
+                type: "comment",
+                str: `#${line}`
+              });
+            });
+            if (item.comment) comment = item.comment;
+            if (inFlow && (!chompKeep && item.spaceBefore || item.commentBefore || item.comment || item.key && (item.key.commentBefore || item.key.comment) || item.value && (item.value.commentBefore || item.value.comment))) hasItemWithNewLine = true;
+          }
+          chompKeep = false;
+          let str2 = stringify3(item, ctx, () => comment = null, () => chompKeep = true);
+          if (inFlow && !hasItemWithNewLine && str2.includes("\n")) hasItemWithNewLine = true;
+          if (inFlow && i < this.items.length - 1) str2 += ",";
+          str2 = addComment(str2, itemIndent, comment);
+          if (chompKeep && (comment || inFlow)) chompKeep = false;
+          nodes2.push({
+            type: "item",
+            str: str2
+          });
+          return nodes2;
+        }, []);
+        let str;
+        if (nodes.length === 0) {
+          str = flowChars.start + flowChars.end;
+        } else if (inFlow) {
+          const {
+            start,
+            end
+          } = flowChars;
+          const strings = nodes.map((n) => n.str);
+          if (hasItemWithNewLine || strings.reduce((sum, str2) => sum + str2.length + 2, 2) > _Collection.maxFlowStringSingleLineLength) {
+            str = start;
+            for (const s of strings) {
+              str += s ? `
+${indentStep}${indent}${s}` : "\n";
+            }
+            str += `
+${indent}${end}`;
+          } else {
+            str = `${start} ${strings.join(" ")} ${end}`;
+          }
+        } else {
+          const strings = nodes.map(blockItem);
+          str = strings.shift();
+          for (const s of strings) str += s ? `
+${indent}${s}` : "\n";
+        }
+        if (this.comment) {
+          str += "\n" + this.comment.replace(/^/gm, `${indent}#`);
+          if (onComment) onComment();
+        } else if (chompKeep && onChompKeep) onChompKeep();
+        return str;
+      }
+    };
+    PlainValue._defineProperty(Collection2, "maxFlowStringSingleLineLength", 60);
+    function asItemIndex(key) {
+      let idx = key instanceof Scalar2 ? key.value : key;
+      if (idx && typeof idx === "string") idx = Number(idx);
+      return Number.isInteger(idx) && idx >= 0 ? idx : null;
+    }
+    var YAMLSeq2 = class extends Collection2 {
+      add(value) {
+        this.items.push(value);
+      }
+      delete(key) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return false;
+        const del = this.items.splice(idx, 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return void 0;
+        const it = this.items[idx];
+        return !keepScalar && it instanceof Scalar2 ? it.value : it;
+      }
+      has(key) {
+        const idx = asItemIndex(key);
+        return typeof idx === "number" && idx < this.items.length;
+      }
+      set(key, value) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") throw new Error(`Expected a valid index, not ${key}.`);
+        this.items[idx] = value;
+      }
+      toJSON(_, ctx) {
+        const seq = [];
+        if (ctx && ctx.onCreate) ctx.onCreate(seq);
+        let i = 0;
+        for (const item of this.items) seq.push(toJSON(item, String(i++), ctx));
+        return seq;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        return super.toString(ctx, {
+          blockItem: (n) => n.type === "comment" ? n.str : `- ${n.str}`,
+          flowChars: {
+            start: "[",
+            end: "]"
+          },
+          isMap: false,
+          itemIndent: (ctx.indent || "") + "  "
+        }, onComment, onChompKeep);
+      }
+    };
+    var stringifyKey = (key, jsKey, ctx) => {
+      if (jsKey === null) return "";
+      if (typeof jsKey !== "object") return String(jsKey);
+      if (key instanceof Node11 && ctx && ctx.doc) return key.toString({
+        anchors: /* @__PURE__ */ Object.create(null),
+        doc: ctx.doc,
+        indent: "",
+        indentStep: ctx.indentStep,
+        inFlow: true,
+        inStringifyKey: true,
+        stringify: ctx.stringify
+      });
+      return JSON.stringify(jsKey);
+    };
+    var Pair2 = class _Pair extends Node11 {
+      constructor(key, value = null) {
+        super();
+        this.key = key;
+        this.value = value;
+        this.type = _Pair.Type.PAIR;
+      }
+      get commentBefore() {
+        return this.key instanceof Node11 ? this.key.commentBefore : void 0;
+      }
+      set commentBefore(cb) {
+        if (this.key == null) this.key = new Scalar2(null);
+        if (this.key instanceof Node11) this.key.commentBefore = cb;
+        else {
+          const msg = "Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";
+          throw new Error(msg);
+        }
+      }
+      addToJSMap(ctx, map) {
+        const key = toJSON(this.key, "", ctx);
+        if (map instanceof Map) {
+          const value = toJSON(this.value, key, ctx);
+          map.set(key, value);
+        } else if (map instanceof Set) {
+          map.add(key);
+        } else {
+          const stringKey = stringifyKey(this.key, key, ctx);
+          const value = toJSON(this.value, stringKey, ctx);
+          if (stringKey in map) Object.defineProperty(map, stringKey, {
+            value,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          else map[stringKey] = value;
+        }
+        return map;
+      }
+      toJSON(_, ctx) {
+        const pair = ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        return this.addToJSMap(ctx, pair);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx || !ctx.doc) return JSON.stringify(this);
+        const {
+          indent: indentSize,
+          indentSeq,
+          simpleKeys
+        } = ctx.doc.options;
+        let {
+          key,
+          value
+        } = this;
+        let keyComment = key instanceof Node11 && key.comment;
+        if (simpleKeys) {
+          if (keyComment) {
+            throw new Error("With simple keys, key nodes cannot have comments");
+          }
+          if (key instanceof Collection2) {
+            const msg = "With simple keys, collection cannot be used as a key value";
+            throw new Error(msg);
+          }
+        }
+        let explicitKey = !simpleKeys && (!key || keyComment || (key instanceof Node11 ? key instanceof Collection2 || key.type === PlainValue.Type.BLOCK_FOLDED || key.type === PlainValue.Type.BLOCK_LITERAL : typeof key === "object"));
+        const {
+          doc,
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        ctx = Object.assign({}, ctx, {
+          implicitKey: !explicitKey,
+          indent: indent + indentStep
+        });
+        let chompKeep = false;
+        let str = stringify3(key, ctx, () => keyComment = null, () => chompKeep = true);
+        str = addComment(str, ctx.indent, keyComment);
+        if (!explicitKey && str.length > 1024) {
+          if (simpleKeys) throw new Error("With simple keys, single line scalar must not span more than 1024 characters");
+          explicitKey = true;
+        }
+        if (ctx.allNullValues && !simpleKeys) {
+          if (this.comment) {
+            str = addComment(str, ctx.indent, this.comment);
+            if (onComment) onComment();
+          } else if (chompKeep && !keyComment && onChompKeep) onChompKeep();
+          return ctx.inFlow && !explicitKey ? str : `? ${str}`;
+        }
+        str = explicitKey ? `? ${str}
+${indent}:` : `${str}:`;
+        if (this.comment) {
+          str = addComment(str, ctx.indent, this.comment);
+          if (onComment) onComment();
+        }
+        let vcb = "";
+        let valueComment = null;
+        if (value instanceof Node11) {
+          if (value.spaceBefore) vcb = "\n";
+          if (value.commentBefore) {
+            const cs = value.commentBefore.replace(/^/gm, `${ctx.indent}#`);
+            vcb += `
+${cs}`;
+          }
+          valueComment = value.comment;
+        } else if (value && typeof value === "object") {
+          value = doc.schema.createNode(value, true);
+        }
+        ctx.implicitKey = false;
+        if (!explicitKey && !this.comment && value instanceof Scalar2) ctx.indentAtStart = str.length + 1;
+        chompKeep = false;
+        if (!indentSeq && indentSize >= 2 && !ctx.inFlow && !explicitKey && value instanceof YAMLSeq2 && value.type !== PlainValue.Type.FLOW_SEQ && !value.tag && !doc.anchors.getName(value)) {
+          ctx.indent = ctx.indent.substr(2);
+        }
+        const valueStr = stringify3(value, ctx, () => valueComment = null, () => chompKeep = true);
+        let ws = " ";
+        if (vcb || this.comment) {
+          ws = `${vcb}
+${ctx.indent}`;
+        } else if (!explicitKey && value instanceof Collection2) {
+          const flow = valueStr[0] === "[" || valueStr[0] === "{";
+          if (!flow || valueStr.includes("\n")) ws = `
+${ctx.indent}`;
+        } else if (valueStr[0] === "\n") ws = "";
+        if (chompKeep && !valueComment && onChompKeep) onChompKeep();
+        return addComment(str + ws + valueStr, ctx.indent, valueComment);
+      }
+    };
+    PlainValue._defineProperty(Pair2, "Type", {
+      PAIR: "PAIR",
+      MERGE_PAIR: "MERGE_PAIR"
+    });
+    var getAliasCount = (node, anchors) => {
+      if (node instanceof Alias2) {
+        const anchor = anchors.get(node.source);
+        return anchor.count * anchor.aliasCount;
+      } else if (node instanceof Collection2) {
+        let count2 = 0;
+        for (const item of node.items) {
+          const c = getAliasCount(item, anchors);
+          if (c > count2) count2 = c;
+        }
+        return count2;
+      } else if (node instanceof Pair2) {
+        const kc = getAliasCount(node.key, anchors);
+        const vc = getAliasCount(node.value, anchors);
+        return Math.max(kc, vc);
+      }
+      return 1;
+    };
+    var Alias2 = class _Alias extends Node11 {
+      static stringify({
+        range: range4,
+        source
+      }, {
+        anchors,
+        doc,
+        implicitKey,
+        inStringifyKey
+      }) {
+        let anchor = Object.keys(anchors).find((a) => anchors[a] === source);
+        if (!anchor && inStringifyKey) anchor = doc.anchors.getName(source) || doc.anchors.newName();
+        if (anchor) return `*${anchor}${implicitKey ? " " : ""}`;
+        const msg = doc.anchors.getName(source) ? "Alias node must be after source node" : "Source node not found for alias node";
+        throw new Error(`${msg} [${range4}]`);
+      }
+      constructor(source) {
+        super();
+        this.source = source;
+        this.type = PlainValue.Type.ALIAS;
+      }
+      set tag(t) {
+        throw new Error("Alias nodes cannot have tags");
+      }
+      toJSON(arg, ctx) {
+        if (!ctx) return toJSON(this.source, arg, ctx);
+        const {
+          anchors,
+          maxAliasCount
+        } = ctx;
+        const anchor = anchors.get(this.source);
+        if (!anchor || anchor.res === void 0) {
+          const msg = "This should not happen: Alias anchor was not resolved?";
+          if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+          else throw new ReferenceError(msg);
+        }
+        if (maxAliasCount >= 0) {
+          anchor.count += 1;
+          if (anchor.aliasCount === 0) anchor.aliasCount = getAliasCount(this.source, anchors);
+          if (anchor.count * anchor.aliasCount > maxAliasCount) {
+            const msg = "Excessive alias count indicates a resource exhaustion attack";
+            if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+            else throw new ReferenceError(msg);
+          }
+        }
+        return anchor.res;
+      }
+      // Only called when stringifying an alias mapping key while constructing
+      // Object output.
+      toString(ctx) {
+        return _Alias.stringify(this, ctx);
+      }
+    };
+    PlainValue._defineProperty(Alias2, "default", true);
+    function findPair(items, key) {
+      const k = key instanceof Scalar2 ? key.value : key;
+      for (const it of items) {
+        if (it instanceof Pair2) {
+          if (it.key === key || it.key === k) return it;
+          if (it.key && it.key.value === k) return it;
+        }
+      }
+      return void 0;
+    }
+    var YAMLMap2 = class extends Collection2 {
+      add(pair, overwrite) {
+        if (!pair) pair = new Pair2(pair);
+        else if (!(pair instanceof Pair2)) pair = new Pair2(pair.key || pair, pair.value);
+        const prev = findPair(this.items, pair.key);
+        const sortEntries = this.schema && this.schema.sortMapEntries;
+        if (prev) {
+          if (overwrite) prev.value = pair.value;
+          else throw new Error(`Key ${pair.key} already set`);
+        } else if (sortEntries) {
+          const i = this.items.findIndex((item) => sortEntries(pair, item) < 0);
+          if (i === -1) this.items.push(pair);
+          else this.items.splice(i, 0, pair);
+        } else {
+          this.items.push(pair);
+        }
+      }
+      delete(key) {
+        const it = findPair(this.items, key);
+        if (!it) return false;
+        const del = this.items.splice(this.items.indexOf(it), 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const it = findPair(this.items, key);
+        const node = it && it.value;
+        return !keepScalar && node instanceof Scalar2 ? node.value : node;
+      }
+      has(key) {
+        return !!findPair(this.items, key);
+      }
+      set(key, value) {
+        this.add(new Pair2(key, value), true);
+      }
+      /**
+       * @param {*} arg ignored
+       * @param {*} ctx Conversion context, originally set in Document#toJSON()
+       * @param {Class} Type If set, forces the returned collection type
+       * @returns {*} Instance of Type, Map, or Object
+       */
+      toJSON(_, ctx, Type) {
+        const map = Type ? new Type() : ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const item of this.items) item.addToJSMap(ctx, map);
+        return map;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        for (const item of this.items) {
+          if (!(item instanceof Pair2)) throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`);
+        }
+        return super.toString(ctx, {
+          blockItem: (n) => n.str,
+          flowChars: {
+            start: "{",
+            end: "}"
+          },
+          isMap: true,
+          itemIndent: ctx.indent || ""
+        }, onComment, onChompKeep);
+      }
+    };
+    var MERGE_KEY = "<<";
+    var Merge2 = class extends Pair2 {
+      constructor(pair) {
+        if (pair instanceof Pair2) {
+          let seq = pair.value;
+          if (!(seq instanceof YAMLSeq2)) {
+            seq = new YAMLSeq2();
+            seq.items.push(pair.value);
+            seq.range = pair.value.range;
+          }
+          super(pair.key, seq);
+          this.range = pair.range;
+        } else {
+          super(new Scalar2(MERGE_KEY), new YAMLSeq2());
+        }
+        this.type = Pair2.Type.MERGE_PAIR;
+      }
+      // If the value associated with a merge key is a single mapping node, each of
+      // its key/value pairs is inserted into the current mapping, unless the key
+      // already exists in it. If the value associated with the merge key is a
+      // sequence, then this sequence is expected to contain mapping nodes and each
+      // of these nodes is merged in turn according to its order in the sequence.
+      // Keys in mapping nodes earlier in the sequence override keys specified in
+      // later mapping nodes. -- http://yaml.org/type/merge.html
+      addToJSMap(ctx, map) {
+        for (const {
+          source
+        } of this.value.items) {
+          if (!(source instanceof YAMLMap2)) throw new Error("Merge sources must be maps");
+          const srcMap = source.toJSON(null, ctx, Map);
+          for (const [key, value] of srcMap) {
+            if (map instanceof Map) {
+              if (!map.has(key)) map.set(key, value);
+            } else if (map instanceof Set) {
+              map.add(key);
+            } else if (!Object.prototype.hasOwnProperty.call(map, key)) {
+              Object.defineProperty(map, key, {
+                value,
+                writable: true,
+                enumerable: true,
+                configurable: true
+              });
+            }
+          }
+        }
+        return map;
+      }
+      toString(ctx, onComment) {
+        const seq = this.value;
+        if (seq.items.length > 1) return super.toString(ctx, onComment);
+        this.value = seq.items[0];
+        const str = super.toString(ctx, onComment);
+        this.value = seq;
+        return str;
+      }
+    };
+    var binaryOptions2 = {
+      defaultType: PlainValue.Type.BLOCK_LITERAL,
+      lineWidth: 76
+    };
+    var boolOptions2 = {
+      trueStr: "true",
+      falseStr: "false"
+    };
+    var intOptions2 = {
+      asBigInt: false
+    };
+    var nullOptions2 = {
+      nullStr: "null"
+    };
+    var strOptions2 = {
+      defaultType: PlainValue.Type.PLAIN,
+      doubleQuoted: {
+        jsonEncoding: false,
+        minMultiLineLength: 40
+      },
+      fold: {
+        lineWidth: 80,
+        minContentWidth: 20
+      }
+    };
+    function resolveScalar(str, tags, scalarFallback) {
+      for (const {
+        format,
+        test,
+        resolve: resolve6
+      } of tags) {
+        if (test) {
+          const match = str.match(test);
+          if (match) {
+            let res = resolve6.apply(null, match);
+            if (!(res instanceof Scalar2)) res = new Scalar2(res);
+            if (format) res.format = format;
+            return res;
+          }
+        }
+      }
+      if (scalarFallback) str = scalarFallback(str);
+      return new Scalar2(str);
+    }
+    var FOLD_FLOW = "flow";
+    var FOLD_BLOCK = "block";
+    var FOLD_QUOTED = "quoted";
+    var consumeMoreIndentedLines = (text, i) => {
+      let ch = text[i + 1];
+      while (ch === " " || ch === "	") {
+        do {
+          ch = text[i += 1];
+        } while (ch && ch !== "\n");
+        ch = text[i + 1];
+      }
+      return i;
+    };
+    function foldFlowLines(text, indent, mode, {
+      indentAtStart,
+      lineWidth = 80,
+      minContentWidth = 20,
+      onFold,
+      onOverflow
+    }) {
+      if (!lineWidth || lineWidth < 0) return text;
+      const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length);
+      if (text.length <= endStep) return text;
+      const folds = [];
+      const escapedFolds = {};
+      let end = lineWidth - indent.length;
+      if (typeof indentAtStart === "number") {
+        if (indentAtStart > lineWidth - Math.max(2, minContentWidth)) folds.push(0);
+        else end = lineWidth - indentAtStart;
+      }
+      let split = void 0;
+      let prev = void 0;
+      let overflow = false;
+      let i = -1;
+      let escStart = -1;
+      let escEnd = -1;
+      if (mode === FOLD_BLOCK) {
+        i = consumeMoreIndentedLines(text, i);
+        if (i !== -1) end = i + endStep;
+      }
+      for (let ch; ch = text[i += 1]; ) {
+        if (mode === FOLD_QUOTED && ch === "\\") {
+          escStart = i;
+          switch (text[i + 1]) {
+            case "x":
+              i += 3;
+              break;
+            case "u":
+              i += 5;
+              break;
+            case "U":
+              i += 9;
+              break;
+            default:
+              i += 1;
+          }
+          escEnd = i;
+        }
+        if (ch === "\n") {
+          if (mode === FOLD_BLOCK) i = consumeMoreIndentedLines(text, i);
+          end = i + endStep;
+          split = void 0;
+        } else {
+          if (ch === " " && prev && prev !== " " && prev !== "\n" && prev !== "	") {
+            const next = text[i + 1];
+            if (next && next !== " " && next !== "\n" && next !== "	") split = i;
+          }
+          if (i >= end) {
+            if (split) {
+              folds.push(split);
+              end = split + endStep;
+              split = void 0;
+            } else if (mode === FOLD_QUOTED) {
+              while (prev === " " || prev === "	") {
+                prev = ch;
+                ch = text[i += 1];
+                overflow = true;
+              }
+              const j = i > escEnd + 1 ? i - 2 : escStart - 1;
+              if (escapedFolds[j]) return text;
+              folds.push(j);
+              escapedFolds[j] = true;
+              end = j + endStep;
+              split = void 0;
+            } else {
+              overflow = true;
+            }
+          }
+        }
+        prev = ch;
+      }
+      if (overflow && onOverflow) onOverflow();
+      if (folds.length === 0) return text;
+      if (onFold) onFold();
+      let res = text.slice(0, folds[0]);
+      for (let i2 = 0; i2 < folds.length; ++i2) {
+        const fold = folds[i2];
+        const end2 = folds[i2 + 1] || text.length;
+        if (fold === 0) res = `
+${indent}${text.slice(0, end2)}`;
+        else {
+          if (mode === FOLD_QUOTED && escapedFolds[fold]) res += `${text[fold]}\\`;
+          res += `
+${indent}${text.slice(fold + 1, end2)}`;
+        }
+      }
+      return res;
+    }
+    var getFoldOptions = ({
+      indentAtStart
+    }) => indentAtStart ? Object.assign({
+      indentAtStart
+    }, strOptions2.fold) : strOptions2.fold;
+    var containsDocumentMarker = (str) => /^(%|---|\.\.\.)/m.test(str);
+    function lineLengthOverLimit(str, lineWidth, indentLength) {
+      if (!lineWidth || lineWidth < 0) return false;
+      const limit = lineWidth - indentLength;
+      const strLen = str.length;
+      if (strLen <= limit) return false;
+      for (let i = 0, start = 0; i < strLen; ++i) {
+        if (str[i] === "\n") {
+          if (i - start > limit) return true;
+          start = i + 1;
+          if (strLen - start <= limit) return false;
+        }
+      }
+      return true;
+    }
+    function doubleQuotedString(value, ctx) {
+      const {
+        implicitKey
+      } = ctx;
+      const {
+        jsonEncoding,
+        minMultiLineLength
+      } = strOptions2.doubleQuoted;
+      const json = JSON.stringify(value);
+      if (jsonEncoding) return json;
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      let str = "";
+      let start = 0;
+      for (let i = 0, ch = json[i]; ch; ch = json[++i]) {
+        if (ch === " " && json[i + 1] === "\\" && json[i + 2] === "n") {
+          str += json.slice(start, i) + "\\ ";
+          i += 1;
+          start = i;
+          ch = "\\";
+        }
+        if (ch === "\\") switch (json[i + 1]) {
+          case "u":
+            {
+              str += json.slice(start, i);
+              const code = json.substr(i + 2, 4);
+              switch (code) {
+                case "0000":
+                  str += "\\0";
+                  break;
+                case "0007":
+                  str += "\\a";
+                  break;
+                case "000b":
+                  str += "\\v";
+                  break;
+                case "001b":
+                  str += "\\e";
+                  break;
+                case "0085":
+                  str += "\\N";
+                  break;
+                case "00a0":
+                  str += "\\_";
+                  break;
+                case "2028":
+                  str += "\\L";
+                  break;
+                case "2029":
+                  str += "\\P";
+                  break;
+                default:
+                  if (code.substr(0, 2) === "00") str += "\\x" + code.substr(2);
+                  else str += json.substr(i, 6);
+              }
+              i += 5;
+              start = i + 1;
+            }
+            break;
+          case "n":
+            if (implicitKey || json[i + 2] === '"' || json.length < minMultiLineLength) {
+              i += 1;
+            } else {
+              str += json.slice(start, i) + "\n\n";
+              while (json[i + 2] === "\\" && json[i + 3] === "n" && json[i + 4] !== '"') {
+                str += "\n";
+                i += 2;
+              }
+              str += indent;
+              if (json[i + 2] === " ") str += "\\";
+              i += 1;
+              start = i + 1;
+            }
+            break;
+          default:
+            i += 1;
+        }
+      }
+      str = start ? str + json.slice(start) : json;
+      return implicitKey ? str : foldFlowLines(str, indent, FOLD_QUOTED, getFoldOptions(ctx));
+    }
+    function singleQuotedString(value, ctx) {
+      if (ctx.implicitKey) {
+        if (/\n/.test(value)) return doubleQuotedString(value, ctx);
+      } else {
+        if (/[ \t]\n|\n[ \t]/.test(value)) return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$&
+${indent}`) + "'";
+      return ctx.implicitKey ? res : foldFlowLines(res, indent, FOLD_FLOW, getFoldOptions(ctx));
+    }
+    function blockString({
+      comment,
+      type,
+      value
+    }, ctx, onComment, onChompKeep) {
+      if (/\n[\t ]+$/.test(value) || /^\s*$/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (ctx.forceBlockIndent || containsDocumentMarker(value) ? "  " : "");
+      const indentSize = indent ? "2" : "1";
+      const literal = type === PlainValue.Type.BLOCK_FOLDED ? false : type === PlainValue.Type.BLOCK_LITERAL ? true : !lineLengthOverLimit(value, strOptions2.fold.lineWidth, indent.length);
+      let header = literal ? "|" : ">";
+      if (!value) return header + "\n";
+      let wsStart = "";
+      let wsEnd = "";
+      value = value.replace(/[\n\t ]*$/, (ws) => {
+        const n = ws.indexOf("\n");
+        if (n === -1) {
+          header += "-";
+        } else if (value === ws || n !== ws.length - 1) {
+          header += "+";
+          if (onChompKeep) onChompKeep();
+        }
+        wsEnd = ws.replace(/\n$/, "");
+        return "";
+      }).replace(/^[\n ]*/, (ws) => {
+        if (ws.indexOf(" ") !== -1) header += indentSize;
+        const m = ws.match(/ +$/);
+        if (m) {
+          wsStart = ws.slice(0, -m[0].length);
+          return m[0];
+        } else {
+          wsStart = ws;
+          return "";
+        }
+      });
+      if (wsEnd) wsEnd = wsEnd.replace(/\n+(?!\n|$)/g, `$&${indent}`);
+      if (wsStart) wsStart = wsStart.replace(/\n+/g, `$&${indent}`);
+      if (comment) {
+        header += " #" + comment.replace(/ ?[\r\n]+/g, " ");
+        if (onComment) onComment();
+      }
+      if (!value) return `${header}${indentSize}
+${indent}${wsEnd}`;
+      if (literal) {
+        value = value.replace(/\n+/g, `$&${indent}`);
+        return `${header}
+${indent}${wsStart}${value}${wsEnd}`;
+      }
+      value = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`);
+      const body = foldFlowLines(`${wsStart}${value}${wsEnd}`, indent, FOLD_BLOCK, strOptions2.fold);
+      return `${header}
+${indent}${body}`;
+    }
+    function plainString(item, ctx, onComment, onChompKeep) {
+      const {
+        comment,
+        type,
+        value
+      } = item;
+      const {
+        actualString,
+        implicitKey,
+        indent,
+        inFlow
+      } = ctx;
+      if (implicitKey && /[\n[\]{},]/.test(value) || inFlow && /[[\]{},]/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      if (!value || /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
+        return implicitKey || inFlow || value.indexOf("\n") === -1 ? value.indexOf('"') !== -1 && value.indexOf("'") === -1 ? singleQuotedString(value, ctx) : doubleQuotedString(value, ctx) : blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (!implicitKey && !inFlow && type !== PlainValue.Type.PLAIN && value.indexOf("\n") !== -1) {
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (indent === "" && containsDocumentMarker(value)) {
+        ctx.forceBlockIndent = true;
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      const str = value.replace(/\n+/g, `$&
+${indent}`);
+      if (actualString) {
+        const {
+          tags
+        } = ctx.doc.schema;
+        const resolved = resolveScalar(str, tags, tags.scalarFallback).value;
+        if (typeof resolved !== "string") return doubleQuotedString(value, ctx);
+      }
+      const body = implicitKey ? str : foldFlowLines(str, indent, FOLD_FLOW, getFoldOptions(ctx));
+      if (comment && !inFlow && (body.indexOf("\n") !== -1 || comment.indexOf("\n") !== -1)) {
+        if (onComment) onComment();
+        return addCommentBefore(body, indent, comment);
+      }
+      return body;
+    }
+    function stringifyString(item, ctx, onComment, onChompKeep) {
+      const {
+        defaultType
+      } = strOptions2;
+      const {
+        implicitKey,
+        inFlow
+      } = ctx;
+      let {
+        type,
+        value
+      } = item;
+      if (typeof value !== "string") {
+        value = String(value);
+        item = Object.assign({}, item, {
+          value
+        });
+      }
+      const _stringify = (_type) => {
+        switch (_type) {
+          case PlainValue.Type.BLOCK_FOLDED:
+          case PlainValue.Type.BLOCK_LITERAL:
+            return blockString(item, ctx, onComment, onChompKeep);
+          case PlainValue.Type.QUOTE_DOUBLE:
+            return doubleQuotedString(value, ctx);
+          case PlainValue.Type.QUOTE_SINGLE:
+            return singleQuotedString(value, ctx);
+          case PlainValue.Type.PLAIN:
+            return plainString(item, ctx, onComment, onChompKeep);
+          default:
+            return null;
+        }
+      };
+      if (type !== PlainValue.Type.QUOTE_DOUBLE && /[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(value)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      } else if ((implicitKey || inFlow) && (type === PlainValue.Type.BLOCK_FOLDED || type === PlainValue.Type.BLOCK_LITERAL)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      }
+      let res = _stringify(type);
+      if (res === null) {
+        res = _stringify(defaultType);
+        if (res === null) throw new Error(`Unsupported default string type ${defaultType}`);
+      }
+      return res;
+    }
+    function stringifyNumber({
+      format,
+      minFractionDigits,
+      tag,
+      value
+    }) {
+      if (typeof value === "bigint") return String(value);
+      if (!isFinite(value)) return isNaN(value) ? ".nan" : value < 0 ? "-.inf" : ".inf";
+      let n = JSON.stringify(value);
+      if (!format && minFractionDigits && (!tag || tag === "tag:yaml.org,2002:float") && /^\d/.test(n)) {
+        let i = n.indexOf(".");
+        if (i < 0) {
+          i = n.length;
+          n += ".";
+        }
+        let d = minFractionDigits - (n.length - i - 1);
+        while (d-- > 0) n += "0";
+      }
+      return n;
+    }
+    function checkFlowCollectionEnd(errors, cst) {
+      let char, name;
+      switch (cst.type) {
+        case PlainValue.Type.FLOW_MAP:
+          char = "}";
+          name = "flow map";
+          break;
+        case PlainValue.Type.FLOW_SEQ:
+          char = "]";
+          name = "flow sequence";
+          break;
+        default:
+          errors.push(new PlainValue.YAMLSemanticError(cst, "Not a flow collection!?"));
+          return;
+      }
+      let lastItem;
+      for (let i = cst.items.length - 1; i >= 0; --i) {
+        const item = cst.items[i];
+        if (!item || item.type !== PlainValue.Type.COMMENT) {
+          lastItem = item;
+          break;
+        }
+      }
+      if (lastItem && lastItem.char !== char) {
+        const msg = `Expected ${name} to end with ${char}`;
+        let err;
+        if (typeof lastItem.offset === "number") {
+          err = new PlainValue.YAMLSemanticError(cst, msg);
+          err.offset = lastItem.offset + 1;
+        } else {
+          err = new PlainValue.YAMLSemanticError(lastItem, msg);
+          if (lastItem.range && lastItem.range.end) err.offset = lastItem.range.end - lastItem.range.start;
+        }
+        errors.push(err);
+      }
+    }
+    function checkFlowCommentSpace(errors, comment) {
+      const prev = comment.context.src[comment.range.start - 1];
+      if (prev !== "\n" && prev !== "	" && prev !== " ") {
+        const msg = "Comments must be separated from other tokens by white space characters";
+        errors.push(new PlainValue.YAMLSemanticError(comment, msg));
+      }
+    }
+    function getLongKeyError(source, key) {
+      const sk = String(key);
+      const k = sk.substr(0, 8) + "..." + sk.substr(-8);
+      return new PlainValue.YAMLSemanticError(source, `The "${k}" key is too long`);
+    }
+    function resolveComments(collection, comments) {
+      for (const {
+        afterKey,
+        before,
+        comment
+      } of comments) {
+        let item = collection.items[before];
+        if (!item) {
+          if (comment !== void 0) {
+            if (collection.comment) collection.comment += "\n" + comment;
+            else collection.comment = comment;
+          }
+        } else {
+          if (afterKey && item.value) item = item.value;
+          if (comment === void 0) {
+            if (afterKey || !item.commentBefore) item.spaceBefore = true;
+          } else {
+            if (item.commentBefore) item.commentBefore += "\n" + comment;
+            else item.commentBefore = comment;
+          }
+        }
+      }
+    }
+    function resolveString(doc, node) {
+      const res = node.strValue;
+      if (!res) return "";
+      if (typeof res === "string") return res;
+      res.errors.forEach((error) => {
+        if (!error.source) error.source = node;
+        doc.errors.push(error);
+      });
+      return res.str;
+    }
+    function resolveTagHandle(doc, node) {
+      const {
+        handle,
+        suffix
+      } = node.tag;
+      let prefix = doc.tagPrefixes.find((p) => p.handle === handle);
+      if (!prefix) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        if (dtp) prefix = dtp.find((p) => p.handle === handle);
+        if (!prefix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag handle is non-default and was not declared.`);
+      }
+      if (!suffix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag has no suffix.`);
+      if (handle === "!" && (doc.version || doc.options.version) === "1.0") {
+        if (suffix[0] === "^") {
+          doc.warnings.push(new PlainValue.YAMLWarning(node, "YAML 1.0 ^ tag expansion is not supported"));
+          return suffix;
+        }
+        if (/[:/]/.test(suffix)) {
+          const vocab = suffix.match(/^([a-z0-9-]+)\/(.*)/i);
+          return vocab ? `tag:${vocab[1]}.yaml.org,2002:${vocab[2]}` : `tag:${suffix}`;
+        }
+      }
+      return prefix.prefix + decodeURIComponent(suffix);
+    }
+    function resolveTagName(doc, node) {
+      const {
+        tag,
+        type
+      } = node;
+      let nonSpecific = false;
+      if (tag) {
+        const {
+          handle,
+          suffix,
+          verbatim
+        } = tag;
+        if (verbatim) {
+          if (verbatim !== "!" && verbatim !== "!!") return verbatim;
+          const msg = `Verbatim tags aren't resolved, so ${verbatim} is invalid.`;
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        } else if (handle === "!" && !suffix) {
+          nonSpecific = true;
+        } else {
+          try {
+            return resolveTagHandle(doc, node);
+          } catch (error) {
+            doc.errors.push(error);
+          }
+        }
+      }
+      switch (type) {
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+        case PlainValue.Type.QUOTE_DOUBLE:
+        case PlainValue.Type.QUOTE_SINGLE:
+          return PlainValue.defaultTags.STR;
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        case PlainValue.Type.PLAIN:
+          return nonSpecific ? PlainValue.defaultTags.STR : null;
+        default:
+          return null;
+      }
+    }
+    function resolveByTagName(doc, node, tagName) {
+      const {
+        tags
+      } = doc.schema;
+      const matchWithTest = [];
+      for (const tag of tags) {
+        if (tag.tag === tagName) {
+          if (tag.test) matchWithTest.push(tag);
+          else {
+            const res = tag.resolve(doc, node);
+            return res instanceof Collection2 ? res : new Scalar2(res);
+          }
+        }
+      }
+      const str = resolveString(doc, node);
+      if (typeof str === "string" && matchWithTest.length > 0) return resolveScalar(str, matchWithTest, tags.scalarFallback);
+      return null;
+    }
+    function getFallbackTagName({
+      type
+    }) {
+      switch (type) {
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        default:
+          return PlainValue.defaultTags.STR;
+      }
+    }
+    function resolveTag(doc, node, tagName) {
+      try {
+        const res = resolveByTagName(doc, node, tagName);
+        if (res) {
+          if (tagName && node.tag) res.tag = tagName;
+          return res;
+        }
+      } catch (error) {
+        if (error instanceof PlainValue.YAMLError) {
+          if (!error.source) error.source = node;
+          doc.errors.push(error);
+        } else {
+          const msg = error instanceof Error ? error.message : String(error);
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        }
+        return null;
+      }
+      try {
+        const fallback = getFallbackTagName(node);
+        if (!fallback) throw new Error(`The tag ${tagName} is unavailable`);
+        const msg = `The tag ${tagName} is unavailable, falling back to ${fallback}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(node, msg));
+        const res = resolveByTagName(doc, node, fallback);
+        res.tag = tagName;
+        return res;
+      } catch (error) {
+        const refError = new PlainValue.YAMLReferenceError(node, error.message);
+        refError.stack = error.stack;
+        doc.errors.push(refError);
+        return null;
+      }
+    }
+    var isCollectionItem = (node) => {
+      if (!node) return false;
+      const {
+        type
+      } = node;
+      return type === PlainValue.Type.MAP_KEY || type === PlainValue.Type.MAP_VALUE || type === PlainValue.Type.SEQ_ITEM;
+    };
+    function resolveNodeProps(errors, node) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let hasAnchor = false;
+      let hasTag = false;
+      const props = isCollectionItem(node.context.parent) ? node.context.parent.props.concat(node.props) : node.props;
+      for (const {
+        start,
+        end
+      } of props) {
+        switch (node.context.src[start]) {
+          case PlainValue.Char.COMMENT: {
+            if (!node.commentHasRequiredWhitespace(start)) {
+              const msg = "Comments must be separated from other tokens by white space characters";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            const {
+              header,
+              valueRange
+            } = node;
+            const cc = valueRange && (start > valueRange.start || header && start > header.start) ? comments.after : comments.before;
+            cc.push(node.context.src.slice(start + 1, end));
+            break;
+          }
+          // Actual anchor & tag resolution is handled by schema, here we just complain
+          case PlainValue.Char.ANCHOR:
+            if (hasAnchor) {
+              const msg = "A node can have at most one anchor";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasAnchor = true;
+            break;
+          case PlainValue.Char.TAG:
+            if (hasTag) {
+              const msg = "A node can have at most one tag";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasTag = true;
+            break;
+        }
+      }
+      return {
+        comments,
+        hasAnchor,
+        hasTag
+      };
+    }
+    function resolveNodeValue(doc, node) {
+      const {
+        anchors,
+        errors,
+        schema
+      } = doc;
+      if (node.type === PlainValue.Type.ALIAS) {
+        const name = node.rawValue;
+        const src = anchors.getNode(name);
+        if (!src) {
+          const msg = `Aliased anchor not found: ${name}`;
+          errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+        const res = new Alias2(src);
+        anchors._cstAliases.push(res);
+        return res;
+      }
+      const tagName = resolveTagName(doc, node);
+      if (tagName) return resolveTag(doc, node, tagName);
+      if (node.type !== PlainValue.Type.PLAIN) {
+        const msg = `Failed to resolve ${node.type} node here`;
+        errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+        return null;
+      }
+      try {
+        const str = resolveString(doc, node);
+        return resolveScalar(str, schema.tags, schema.tags.scalarFallback);
+      } catch (error) {
+        if (!error.source) error.source = node;
+        errors.push(error);
+        return null;
+      }
+    }
+    function resolveNode(doc, node) {
+      if (!node) return null;
+      if (node.error) doc.errors.push(node.error);
+      const {
+        comments,
+        hasAnchor,
+        hasTag
+      } = resolveNodeProps(doc.errors, node);
+      if (hasAnchor) {
+        const {
+          anchors
+        } = doc;
+        const name = node.anchor;
+        const prev = anchors.getNode(name);
+        if (prev) anchors.map[anchors.newName(name)] = prev;
+        anchors.map[name] = node;
+      }
+      if (node.type === PlainValue.Type.ALIAS && (hasAnchor || hasTag)) {
+        const msg = "An alias node must not specify any properties";
+        doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+      }
+      const res = resolveNodeValue(doc, node);
+      if (res) {
+        res.range = [node.range.start, node.range.end];
+        if (doc.options.keepCstNodes) res.cstNode = node;
+        if (doc.options.keepNodeTypes) res.type = node.type;
+        const cb = comments.before.join("\n");
+        if (cb) {
+          res.commentBefore = res.commentBefore ? `${res.commentBefore}
+${cb}` : cb;
+        }
+        const ca = comments.after.join("\n");
+        if (ca) res.comment = res.comment ? `${res.comment}
+${ca}` : ca;
+      }
+      return node.resolved = res;
+    }
+    function resolveMap(doc, cst) {
+      if (cst.type !== PlainValue.Type.MAP && cst.type !== PlainValue.Type.FLOW_MAP) {
+        const msg = `A ${cst.type} node cannot be resolved as a mapping`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_MAP ? resolveFlowMapItems(doc, cst) : resolveBlockMapItems(doc, cst);
+      const map = new YAMLMap2();
+      map.items = items;
+      resolveComments(map, comments);
+      let hasCollectionKey = false;
+      for (let i = 0; i < items.length; ++i) {
+        const {
+          key: iKey
+        } = items[i];
+        if (iKey instanceof Collection2) hasCollectionKey = true;
+        if (doc.schema.merge && iKey && iKey.value === MERGE_KEY) {
+          items[i] = new Merge2(items[i]);
+          const sources = items[i].value.items;
+          let error = null;
+          sources.some((node) => {
+            if (node instanceof Alias2) {
+              const {
+                type
+              } = node.source;
+              if (type === PlainValue.Type.MAP || type === PlainValue.Type.FLOW_MAP) return false;
+              return error = "Merge nodes aliases can only point to maps";
+            }
+            return error = "Merge nodes can only have Alias nodes as values";
+          });
+          if (error) doc.errors.push(new PlainValue.YAMLSemanticError(cst, error));
+        } else {
+          for (let j = i + 1; j < items.length; ++j) {
+            const {
+              key: jKey
+            } = items[j];
+            if (iKey === jKey || iKey && jKey && Object.prototype.hasOwnProperty.call(iKey, "value") && iKey.value === jKey.value) {
+              const msg = `Map keys must be unique; "${iKey}" is repeated`;
+              doc.errors.push(new PlainValue.YAMLSemanticError(cst, msg));
+              break;
+            }
+          }
+        }
+      }
+      if (hasCollectionKey && !doc.options.mapAsMap) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = map;
+      return map;
+    }
+    var valueHasPairComment = ({
+      context: {
+        lineStart,
+        node,
+        src
+      },
+      props
+    }) => {
+      if (props.length === 0) return false;
+      const {
+        start
+      } = props[0];
+      if (node && start > node.valueRange.start) return false;
+      if (src[start] !== PlainValue.Char.COMMENT) return false;
+      for (let i = lineStart; i < start; ++i) if (src[i] === "\n") return false;
+      return true;
+    };
+    function resolvePairComment(item, pair) {
+      if (!valueHasPairComment(item)) return;
+      const comment = item.getPropValue(0, PlainValue.Char.COMMENT, true);
+      let found = false;
+      const cb = pair.value.commentBefore;
+      if (cb && cb.startsWith(comment)) {
+        pair.value.commentBefore = cb.substr(comment.length + 1);
+        found = true;
+      } else {
+        const cc = pair.value.comment;
+        if (!item.node && cc && cc.startsWith(comment)) {
+          pair.value.comment = cc.substr(comment.length + 1);
+          found = true;
+        }
+      }
+      if (found) pair.comment = comment;
+    }
+    function resolveBlockMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let keyStart = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              afterKey: !!key,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              afterKey: !!key,
+              before: items.length,
+              comment: item.comment
+            });
+            break;
+          case PlainValue.Type.MAP_KEY:
+            if (key !== void 0) items.push(new Pair2(key));
+            if (item.error) doc.errors.push(item.error);
+            key = resolveNode(doc, item.node);
+            keyStart = null;
+            break;
+          case PlainValue.Type.MAP_VALUE:
+            {
+              if (key === void 0) key = null;
+              if (item.error) doc.errors.push(item.error);
+              if (!item.context.atLineStart && item.node && item.node.type === PlainValue.Type.MAP && !item.node.context.atLineStart) {
+                const msg = "Nested mappings are not allowed in compact mappings";
+                doc.errors.push(new PlainValue.YAMLSemanticError(item.node, msg));
+              }
+              let valueNode = item.node;
+              if (!valueNode && item.props.length > 0) {
+                valueNode = new PlainValue.PlainValue(PlainValue.Type.PLAIN, []);
+                valueNode.context = {
+                  parent: item,
+                  src: item.context.src
+                };
+                const pos = item.range.start + 1;
+                valueNode.range = {
+                  start: pos,
+                  end: pos
+                };
+                valueNode.valueRange = {
+                  start: pos,
+                  end: pos
+                };
+                if (typeof item.range.origStart === "number") {
+                  const origPos = item.range.origStart + 1;
+                  valueNode.range.origStart = valueNode.range.origEnd = origPos;
+                  valueNode.valueRange.origStart = valueNode.valueRange.origEnd = origPos;
+                }
+              }
+              const pair = new Pair2(key, resolveNode(doc, valueNode));
+              resolvePairComment(item, pair);
+              items.push(pair);
+              if (key && typeof keyStart === "number") {
+                if (item.range.start > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+              }
+              key = void 0;
+              keyStart = null;
+            }
+            break;
+          default:
+            if (key !== void 0) items.push(new Pair2(key));
+            key = resolveNode(doc, item);
+            keyStart = item.range.start;
+            if (item.error) doc.errors.push(item.error);
+            next: for (let j = i + 1; ; ++j) {
+              const nextItem = cst.items[j];
+              switch (nextItem && nextItem.type) {
+                case PlainValue.Type.BLANK_LINE:
+                case PlainValue.Type.COMMENT:
+                  continue next;
+                case PlainValue.Type.MAP_VALUE:
+                  break next;
+                default: {
+                  const msg = "Implicit map keys need to be followed by map values";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+                  break next;
+                }
+              }
+            }
+            if (item.valueRangeContainsNewline) {
+              const msg = "Implicit map keys need to be on a single line";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+        }
+      }
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let explicitKey = false;
+      let next = "{";
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char === "?" && key === void 0 && !explicitKey) {
+            explicitKey = true;
+            next = ":";
+            continue;
+          }
+          if (char === ":") {
+            if (key === void 0) key = null;
+            if (next === ":") {
+              next = ",";
+              continue;
+            }
+          } else {
+            if (explicitKey) {
+              if (key === void 0 && char !== ",") key = null;
+              explicitKey = false;
+            }
+            if (key !== void 0) {
+              items.push(new Pair2(key));
+              key = void 0;
+              if (char === ",") {
+                next = ":";
+                continue;
+              }
+            }
+          }
+          if (char === "}") {
+            if (i === cst.items.length - 1) continue;
+          } else if (char === next) {
+            next = ":";
+            continue;
+          }
+          const msg = `Flow map contains an unexpected ${char}`;
+          const err = new PlainValue.YAMLSyntaxError(cst, msg);
+          err.offset = offset;
+          doc.errors.push(err);
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            afterKey: !!key,
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            afterKey: !!key,
+            before: items.length,
+            comment: item.comment
+          });
+        } else if (key === void 0) {
+          if (next === ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Separator , missing in flow map"));
+          key = resolveNode(doc, item);
+        } else {
+          if (next !== ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Indicator : missing in flow map entry"));
+          items.push(new Pair2(key, resolveNode(doc, item)));
+          key = void 0;
+          explicitKey = false;
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveSeq(doc, cst) {
+      if (cst.type !== PlainValue.Type.SEQ && cst.type !== PlainValue.Type.FLOW_SEQ) {
+        const msg = `A ${cst.type} node cannot be resolved as a sequence`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_SEQ ? resolveFlowSeqItems(doc, cst) : resolveBlockSeqItems(doc, cst);
+      const seq = new YAMLSeq2();
+      seq.items = items;
+      resolveComments(seq, comments);
+      if (!doc.options.mapAsMap && items.some((it) => it instanceof Pair2 && it.key instanceof Collection2)) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = seq;
+      return seq;
+    }
+    function resolveBlockSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              comment: item.comment,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.SEQ_ITEM:
+            if (item.error) doc.errors.push(item.error);
+            items.push(resolveNode(doc, item.node));
+            if (item.hasProps) {
+              const msg = "Sequence items cannot have tags or anchors before the - indicator";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+            break;
+          default:
+            if (item.error) doc.errors.push(item.error);
+            doc.errors.push(new PlainValue.YAMLSyntaxError(item, `Unexpected ${item.type} node in sequence`));
+        }
+      }
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let explicitKey = false;
+      let key = void 0;
+      let keyStart = null;
+      let next = "[";
+      let prevItem = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char !== ":" && (explicitKey || key !== void 0)) {
+            if (explicitKey && key === void 0) key = next ? items.pop() : null;
+            items.push(new Pair2(key));
+            explicitKey = false;
+            key = void 0;
+            keyStart = null;
+          }
+          if (char === next) {
+            next = null;
+          } else if (!next && char === "?") {
+            explicitKey = true;
+          } else if (next !== "[" && char === ":" && key === void 0) {
+            if (next === ",") {
+              key = items.pop();
+              if (key instanceof Pair2) {
+                const msg = "Chaining flow sequence pairs is invalid";
+                const err = new PlainValue.YAMLSemanticError(cst, msg);
+                err.offset = offset;
+                doc.errors.push(err);
+              }
+              if (!explicitKey && typeof keyStart === "number") {
+                const keyEnd = item.range ? item.range.start : item.offset;
+                if (keyEnd > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+                const {
+                  src
+                } = prevItem.context;
+                for (let i2 = keyStart; i2 < keyEnd; ++i2) if (src[i2] === "\n") {
+                  const msg = "Implicit keys of flow sequence pairs need to be on a single line";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(prevItem, msg));
+                  break;
+                }
+              }
+            } else {
+              key = null;
+            }
+            keyStart = null;
+            explicitKey = false;
+            next = null;
+          } else if (next === "[" || char !== "]" || i < cst.items.length - 1) {
+            const msg = `Flow sequence contains an unexpected ${char}`;
+            const err = new PlainValue.YAMLSyntaxError(cst, msg);
+            err.offset = offset;
+            doc.errors.push(err);
+          }
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            comment: item.comment,
+            before: items.length
+          });
+        } else {
+          if (next) {
+            const msg = `Expected a ${next} in flow sequence`;
+            doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+          }
+          const value = resolveNode(doc, item);
+          if (key === void 0) {
+            items.push(value);
+            prevItem = item;
+          } else {
+            items.push(new Pair2(key, value));
+            key = void 0;
+          }
+          keyStart = item.range.start;
+          next = ",";
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    exports2.Alias = Alias2;
+    exports2.Collection = Collection2;
+    exports2.Merge = Merge2;
+    exports2.Node = Node11;
+    exports2.Pair = Pair2;
+    exports2.Scalar = Scalar2;
+    exports2.YAMLMap = YAMLMap2;
+    exports2.YAMLSeq = YAMLSeq2;
+    exports2.addComment = addComment;
+    exports2.binaryOptions = binaryOptions2;
+    exports2.boolOptions = boolOptions2;
+    exports2.findPair = findPair;
+    exports2.intOptions = intOptions2;
+    exports2.isEmptyPath = isEmptyPath;
+    exports2.nullOptions = nullOptions2;
+    exports2.resolveMap = resolveMap;
+    exports2.resolveNode = resolveNode;
+    exports2.resolveSeq = resolveSeq;
+    exports2.resolveString = resolveString;
+    exports2.strOptions = strOptions2;
+    exports2.stringifyNumber = stringifyNumber;
+    exports2.stringifyString = stringifyString;
+    exports2.toJSON = toJSON;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js
+var require_warnings_793925ce = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var binary = {
+      identify: (value) => value instanceof Uint8Array,
+      // Buffer inherits from Uint8Array
+      default: false,
+      tag: "tag:yaml.org,2002:binary",
+      /**
+       * Returns a Buffer in node and an Uint8Array in browsers
+       *
+       * To use the resulting buffer as an image, you'll want to do something like:
+       *
+       *   const blob = new Blob([buffer], { type: 'image/jpeg' })
+       *   document.querySelector('#photo').src = URL.createObjectURL(blob)
+       */
+      resolve: (doc, node) => {
+        const src = resolveSeq.resolveString(doc, node);
+        if (typeof Buffer === "function") {
+          return Buffer.from(src, "base64");
+        } else if (typeof atob === "function") {
+          const str = atob(src.replace(/[\n\r]/g, ""));
+          const buffer = new Uint8Array(str.length);
+          for (let i = 0; i < str.length; ++i) buffer[i] = str.charCodeAt(i);
+          return buffer;
+        } else {
+          const msg = "This environment does not support reading binary tags; either Buffer or atob is required";
+          doc.errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+      },
+      options: resolveSeq.binaryOptions,
+      stringify: ({
+        comment,
+        type,
+        value
+      }, ctx, onComment, onChompKeep) => {
+        let src;
+        if (typeof Buffer === "function") {
+          src = value instanceof Buffer ? value.toString("base64") : Buffer.from(value.buffer).toString("base64");
+        } else if (typeof btoa === "function") {
+          let s = "";
+          for (let i = 0; i < value.length; ++i) s += String.fromCharCode(value[i]);
+          src = btoa(s);
+        } else {
+          throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");
+        }
+        if (!type) type = resolveSeq.binaryOptions.defaultType;
+        if (type === PlainValue.Type.QUOTE_DOUBLE) {
+          value = src;
+        } else {
+          const {
+            lineWidth
+          } = resolveSeq.binaryOptions;
+          const n = Math.ceil(src.length / lineWidth);
+          const lines = new Array(n);
+          for (let i = 0, o = 0; i < n; ++i, o += lineWidth) {
+            lines[i] = src.substr(o, lineWidth);
+          }
+          value = lines.join(type === PlainValue.Type.BLOCK_LITERAL ? "\n" : " ");
+        }
+        return resolveSeq.stringifyString({
+          comment,
+          type,
+          value
+        }, ctx, onComment, onChompKeep);
+      }
+    };
+    function parsePairs(doc, cst) {
+      const seq = resolveSeq.resolveSeq(doc, cst);
+      for (let i = 0; i < seq.items.length; ++i) {
+        let item = seq.items[i];
+        if (item instanceof resolveSeq.Pair) continue;
+        else if (item instanceof resolveSeq.YAMLMap) {
+          if (item.items.length > 1) {
+            const msg = "Each pair must have its own sequence indicator";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          }
+          const pair = item.items[0] || new resolveSeq.Pair();
+          if (item.commentBefore) pair.commentBefore = pair.commentBefore ? `${item.commentBefore}
+${pair.commentBefore}` : item.commentBefore;
+          if (item.comment) pair.comment = pair.comment ? `${item.comment}
+${pair.comment}` : item.comment;
+          item = pair;
+        }
+        seq.items[i] = item instanceof resolveSeq.Pair ? item : new resolveSeq.Pair(item);
+      }
+      return seq;
+    }
+    function createPairs(schema, iterable, ctx) {
+      const pairs2 = new resolveSeq.YAMLSeq(schema);
+      pairs2.tag = "tag:yaml.org,2002:pairs";
+      for (const it of iterable) {
+        let key, value;
+        if (Array.isArray(it)) {
+          if (it.length === 2) {
+            key = it[0];
+            value = it[1];
+          } else throw new TypeError(`Expected [key, value] tuple: ${it}`);
+        } else if (it && it instanceof Object) {
+          const keys = Object.keys(it);
+          if (keys.length === 1) {
+            key = keys[0];
+            value = it[key];
+          } else throw new TypeError(`Expected { key: value } tuple: ${it}`);
+        } else {
+          key = it;
+        }
+        const pair = schema.createPair(key, value, ctx);
+        pairs2.items.push(pair);
+      }
+      return pairs2;
+    }
+    var pairs = {
+      default: false,
+      tag: "tag:yaml.org,2002:pairs",
+      resolve: parsePairs,
+      createNode: createPairs
+    };
+    var YAMLOMap = class _YAMLOMap extends resolveSeq.YAMLSeq {
+      constructor() {
+        super();
+        PlainValue._defineProperty(this, "add", resolveSeq.YAMLMap.prototype.add.bind(this));
+        PlainValue._defineProperty(this, "delete", resolveSeq.YAMLMap.prototype.delete.bind(this));
+        PlainValue._defineProperty(this, "get", resolveSeq.YAMLMap.prototype.get.bind(this));
+        PlainValue._defineProperty(this, "has", resolveSeq.YAMLMap.prototype.has.bind(this));
+        PlainValue._defineProperty(this, "set", resolveSeq.YAMLMap.prototype.set.bind(this));
+        this.tag = _YAMLOMap.tag;
+      }
+      toJSON(_, ctx) {
+        const map = /* @__PURE__ */ new Map();
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const pair of this.items) {
+          let key, value;
+          if (pair instanceof resolveSeq.Pair) {
+            key = resolveSeq.toJSON(pair.key, "", ctx);
+            value = resolveSeq.toJSON(pair.value, key, ctx);
+          } else {
+            key = resolveSeq.toJSON(pair, "", ctx);
+          }
+          if (map.has(key)) throw new Error("Ordered maps must not include duplicate keys");
+          map.set(key, value);
+        }
+        return map;
+      }
+    };
+    PlainValue._defineProperty(YAMLOMap, "tag", "tag:yaml.org,2002:omap");
+    function parseOMap(doc, cst) {
+      const pairs2 = parsePairs(doc, cst);
+      const seenKeys = [];
+      for (const {
+        key
+      } of pairs2.items) {
+        if (key instanceof resolveSeq.Scalar) {
+          if (seenKeys.includes(key.value)) {
+            const msg = "Ordered maps must not include duplicate keys";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          } else {
+            seenKeys.push(key.value);
+          }
+        }
+      }
+      return Object.assign(new YAMLOMap(), pairs2);
+    }
+    function createOMap(schema, iterable, ctx) {
+      const pairs2 = createPairs(schema, iterable, ctx);
+      const omap2 = new YAMLOMap();
+      omap2.items = pairs2.items;
+      return omap2;
+    }
+    var omap = {
+      identify: (value) => value instanceof Map,
+      nodeClass: YAMLOMap,
+      default: false,
+      tag: "tag:yaml.org,2002:omap",
+      resolve: parseOMap,
+      createNode: createOMap
+    };
+    var YAMLSet = class _YAMLSet extends resolveSeq.YAMLMap {
+      constructor() {
+        super();
+        this.tag = _YAMLSet.tag;
+      }
+      add(key) {
+        const pair = key instanceof resolveSeq.Pair ? key : new resolveSeq.Pair(key);
+        const prev = resolveSeq.findPair(this.items, pair.key);
+        if (!prev) this.items.push(pair);
+      }
+      get(key, keepPair) {
+        const pair = resolveSeq.findPair(this.items, key);
+        return !keepPair && pair instanceof resolveSeq.Pair ? pair.key instanceof resolveSeq.Scalar ? pair.key.value : pair.key : pair;
+      }
+      set(key, value) {
+        if (typeof value !== "boolean") throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`);
+        const prev = resolveSeq.findPair(this.items, key);
+        if (prev && !value) {
+          this.items.splice(this.items.indexOf(prev), 1);
+        } else if (!prev && value) {
+          this.items.push(new resolveSeq.Pair(key));
+        }
+      }
+      toJSON(_, ctx) {
+        return super.toJSON(_, ctx, Set);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        if (this.hasAllNullValues()) return super.toString(ctx, onComment, onChompKeep);
+        else throw new Error("Set items must all have null values");
+      }
+    };
+    PlainValue._defineProperty(YAMLSet, "tag", "tag:yaml.org,2002:set");
+    function parseSet(doc, cst) {
+      const map = resolveSeq.resolveMap(doc, cst);
+      if (!map.hasAllNullValues()) throw new PlainValue.YAMLSemanticError(cst, "Set items must all have null values");
+      return Object.assign(new YAMLSet(), map);
+    }
+    function createSet(schema, iterable, ctx) {
+      const set2 = new YAMLSet();
+      for (const value of iterable) set2.items.push(schema.createPair(value, null, ctx));
+      return set2;
+    }
+    var set = {
+      identify: (value) => value instanceof Set,
+      nodeClass: YAMLSet,
+      default: false,
+      tag: "tag:yaml.org,2002:set",
+      resolve: parseSet,
+      createNode: createSet
+    };
+    var parseSexagesimal = (sign, parts) => {
+      const n = parts.split(":").reduce((n2, p) => n2 * 60 + Number(p), 0);
+      return sign === "-" ? -n : n;
+    };
+    var stringifySexagesimal = ({
+      value
+    }) => {
+      if (isNaN(value) || !isFinite(value)) return resolveSeq.stringifyNumber(value);
+      let sign = "";
+      if (value < 0) {
+        sign = "-";
+        value = Math.abs(value);
+      }
+      const parts = [value % 60];
+      if (value < 60) {
+        parts.unshift(0);
+      } else {
+        value = Math.round((value - parts[0]) / 60);
+        parts.unshift(value % 60);
+        if (value >= 60) {
+          value = Math.round((value - parts[0]) / 60);
+          parts.unshift(value);
+        }
+      }
+      return sign + parts.map((n) => n < 10 ? "0" + String(n) : String(n)).join(":").replace(/000000\d*$/, "");
+    };
+    var intTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var floatTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var timestamp = {
+      identify: (value) => value instanceof Date,
+      default: true,
+      tag: "tag:yaml.org,2002:timestamp",
+      // If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part
+      // may be omitted altogether, resulting in a date format. In such a case, the time part is
+      // assumed to be 00:00:00Z (start of day, UTC).
+      test: RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),
+      resolve: (str, year, month, day, hour, minute, second, millisec, tz) => {
+        if (millisec) millisec = (millisec + "00").substr(1, 3);
+        let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec || 0);
+        if (tz && tz !== "Z") {
+          let d = parseSexagesimal(tz[0], tz.slice(1));
+          if (Math.abs(d) < 30) d *= 60;
+          date -= 6e4 * d;
+        }
+        return new Date(date);
+      },
+      stringify: ({
+        value
+      }) => value.toISOString().replace(/((T00:00)?:00)?\.000Z$/, "")
+    };
+    function shouldWarn(deprecation) {
+      const env2 = typeof process !== "undefined" && process.env || {};
+      if (deprecation) {
+        if (typeof YAML_SILENCE_DEPRECATION_WARNINGS !== "undefined") return !YAML_SILENCE_DEPRECATION_WARNINGS;
+        return !env2.YAML_SILENCE_DEPRECATION_WARNINGS;
+      }
+      if (typeof YAML_SILENCE_WARNINGS !== "undefined") return !YAML_SILENCE_WARNINGS;
+      return !env2.YAML_SILENCE_WARNINGS;
+    }
+    function warn(warning, type) {
+      if (shouldWarn(false)) {
+        const emit = typeof process !== "undefined" && process.emitWarning;
+        if (emit) emit(warning, type);
+        else {
+          console.warn(type ? `${type}: ${warning}` : warning);
+        }
+      }
+    }
+    function warnFileDeprecation(filename) {
+      if (shouldWarn(true)) {
+        const path23 = filename.replace(/.*yaml[/\\]/i, "").replace(/\.js$/, "").replace(/\\/g, "/");
+        warn(`The endpoint 'yaml/${path23}' will be removed in a future release.`, "DeprecationWarning");
+      }
+    }
+    var warned = {};
+    function warnOptionDeprecation(name, alternative) {
+      if (!warned[name] && shouldWarn(true)) {
+        warned[name] = true;
+        let msg = `The option '${name}' will be removed in a future release`;
+        msg += alternative ? `, use '${alternative}' instead.` : ".";
+        warn(msg, "DeprecationWarning");
+      }
+    }
+    exports2.binary = binary;
+    exports2.floatTime = floatTime;
+    exports2.intTime = intTime;
+    exports2.omap = omap;
+    exports2.pairs = pairs;
+    exports2.set = set;
+    exports2.timestamp = timestamp;
+    exports2.warn = warn;
+    exports2.warnFileDeprecation = warnFileDeprecation;
+    exports2.warnOptionDeprecation = warnOptionDeprecation;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js
+var require_Schema_bcc6c2d7 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var warnings = require_warnings_793925ce();
+    function createMap(schema, obj, ctx) {
+      const map2 = new resolveSeq.YAMLMap(schema);
+      if (obj instanceof Map) {
+        for (const [key, value] of obj) map2.items.push(schema.createPair(key, value, ctx));
+      } else if (obj && typeof obj === "object") {
+        for (const key of Object.keys(obj)) map2.items.push(schema.createPair(key, obj[key], ctx));
+      }
+      if (typeof schema.sortMapEntries === "function") {
+        map2.items.sort(schema.sortMapEntries);
+      }
+      return map2;
+    }
+    var map = {
+      createNode: createMap,
+      default: true,
+      nodeClass: resolveSeq.YAMLMap,
+      tag: "tag:yaml.org,2002:map",
+      resolve: resolveSeq.resolveMap
+    };
+    function createSeq(schema, obj, ctx) {
+      const seq2 = new resolveSeq.YAMLSeq(schema);
+      if (obj && obj[Symbol.iterator]) {
+        for (const it of obj) {
+          const v = schema.createNode(it, ctx.wrapScalars, null, ctx);
+          seq2.items.push(v);
+        }
+      }
+      return seq2;
+    }
+    var seq = {
+      createNode: createSeq,
+      default: true,
+      nodeClass: resolveSeq.YAMLSeq,
+      tag: "tag:yaml.org,2002:seq",
+      resolve: resolveSeq.resolveSeq
+    };
+    var string = {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify(item, ctx, onComment, onChompKeep) {
+        ctx = Object.assign({
+          actualString: true
+        }, ctx);
+        return resolveSeq.stringifyString(item, ctx, onComment, onChompKeep);
+      },
+      options: resolveSeq.strOptions
+    };
+    var failsafe = [map, seq, string];
+    var intIdentify$2 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var intResolve$1 = (src, part, radix) => resolveSeq.intOptions.asBigInt ? BigInt(src) : parseInt(part, radix);
+    function intStringify$1(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify$2(value) && value >= 0) return prefix + value.toString(radix);
+      return resolveSeq.stringifyNumber(node);
+    }
+    var nullObj = {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    };
+    var boolObj = {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,
+      resolve: (str) => str[0] === "t" || str[0] === "T",
+      options: resolveSeq.boolOptions,
+      stringify: ({
+        value
+      }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr
+    };
+    var octObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^0o([0-7]+)$/,
+      resolve: (str, oct) => intResolve$1(str, oct, 8),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 8, "0o")
+    };
+    var intObj = {
+      identify: intIdentify$2,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^[-+]?[0-9]+$/,
+      resolve: (str) => intResolve$1(str, str, 10),
+      options: resolveSeq.intOptions,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var hexObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^0x([0-9a-fA-F]+)$/,
+      resolve: (str, hex2) => intResolve$1(str, hex2, 16),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 16, "0x")
+    };
+    var nanObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var expObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    };
+    var floatObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,
+      resolve(str, frac1, frac2) {
+        const frac = frac1 || frac2;
+        const node = new resolveSeq.Scalar(parseFloat(str));
+        if (frac && frac[frac.length - 1] === "0") node.minFractionDigits = frac.length;
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    };
+    var core = failsafe.concat([nullObj, boolObj, octObj, intObj, hexObj, nanObj, expObj, floatObj]);
+    var intIdentify$1 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var stringifyJSON = ({
+      value
+    }) => JSON.stringify(value);
+    var json = [map, seq, {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^null$/,
+      resolve: () => null,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^true|false$/,
+      resolve: (str) => str === "true",
+      stringify: stringifyJSON
+    }, {
+      identify: intIdentify$1,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^-?(?:0|[1-9][0-9]*)$/,
+      resolve: (str) => resolveSeq.intOptions.asBigInt ? BigInt(str) : parseInt(str, 10),
+      stringify: ({
+        value
+      }) => intIdentify$1(value) ? value.toString() : JSON.stringify(value)
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,
+      resolve: (str) => parseFloat(str),
+      stringify: stringifyJSON
+    }];
+    json.scalarFallback = (str) => {
+      throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(str)}`);
+    };
+    var boolStringify = ({
+      value
+    }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr;
+    var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
+    function intResolve(sign, src, radix) {
+      let str = src.replace(/_/g, "");
+      if (resolveSeq.intOptions.asBigInt) {
+        switch (radix) {
+          case 2:
+            str = `0b${str}`;
+            break;
+          case 8:
+            str = `0o${str}`;
+            break;
+          case 16:
+            str = `0x${str}`;
+            break;
+        }
+        const n2 = BigInt(str);
+        return sign === "-" ? BigInt(-1) * n2 : n2;
+      }
+      const n = parseInt(str, radix);
+      return sign === "-" ? -1 * n : n;
+    }
+    function intStringify(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify(value)) {
+        const str = value.toString(radix);
+        return value < 0 ? "-" + prefix + str.substr(1) : prefix + str;
+      }
+      return resolveSeq.stringifyNumber(node);
+    }
+    var yaml11 = failsafe.concat([{
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,
+      resolve: () => true,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,
+      resolve: () => false,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "BIN",
+      test: /^([-+]?)0b([0-1_]+)$/,
+      resolve: (str, sign, bin) => intResolve(sign, bin, 2),
+      stringify: (node) => intStringify(node, 2, "0b")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^([-+]?)0([0-7_]+)$/,
+      resolve: (str, sign, oct) => intResolve(sign, oct, 8),
+      stringify: (node) => intStringify(node, 8, "0")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^([-+]?)([0-9][0-9_]*)$/,
+      resolve: (str, sign, abs) => intResolve(sign, abs, 10),
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^([-+]?)0x([0-9a-fA-F_]+)$/,
+      resolve: (str, sign, hex2) => intResolve(sign, hex2, 16),
+      stringify: (node) => intStringify(node, 16, "0x")
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str.replace(/_/g, "")),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,
+      resolve(str, frac) {
+        const node = new resolveSeq.Scalar(parseFloat(str.replace(/_/g, "")));
+        if (frac) {
+          const f = frac.replace(/_/g, "");
+          if (f[f.length - 1] === "0") node.minFractionDigits = f.length;
+        }
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    }], warnings.binary, warnings.omap, warnings.pairs, warnings.set, warnings.intTime, warnings.floatTime, warnings.timestamp);
+    var schemas = {
+      core,
+      failsafe,
+      json,
+      yaml11
+    };
+    var tags = {
+      binary: warnings.binary,
+      bool: boolObj,
+      float: floatObj,
+      floatExp: expObj,
+      floatNaN: nanObj,
+      floatTime: warnings.floatTime,
+      int: intObj,
+      intHex: hexObj,
+      intOct: octObj,
+      intTime: warnings.intTime,
+      map,
+      null: nullObj,
+      omap: warnings.omap,
+      pairs: warnings.pairs,
+      seq,
+      set: warnings.set,
+      timestamp: warnings.timestamp
+    };
+    function findTagObject(value, tagName, tags2) {
+      if (tagName) {
+        const match = tags2.filter((t) => t.tag === tagName);
+        const tagObj = match.find((t) => !t.format) || match[0];
+        if (!tagObj) throw new Error(`Tag ${tagName} not found`);
+        return tagObj;
+      }
+      return tags2.find((t) => (t.identify && t.identify(value) || t.class && value instanceof t.class) && !t.format);
+    }
+    function createNode(value, tagName, ctx) {
+      if (value instanceof resolveSeq.Node) return value;
+      const {
+        defaultPrefix,
+        onTagObj,
+        prevObjects,
+        schema,
+        wrapScalars
+      } = ctx;
+      if (tagName && tagName.startsWith("!!")) tagName = defaultPrefix + tagName.slice(2);
+      let tagObj = findTagObject(value, tagName, schema.tags);
+      if (!tagObj) {
+        if (typeof value.toJSON === "function") value = value.toJSON();
+        if (!value || typeof value !== "object") return wrapScalars ? new resolveSeq.Scalar(value) : value;
+        tagObj = value instanceof Map ? map : value[Symbol.iterator] ? seq : map;
+      }
+      if (onTagObj) {
+        onTagObj(tagObj);
+        delete ctx.onTagObj;
+      }
+      const obj = {
+        value: void 0,
+        node: void 0
+      };
+      if (value && typeof value === "object" && prevObjects) {
+        const prev = prevObjects.get(value);
+        if (prev) {
+          const alias = new resolveSeq.Alias(prev);
+          ctx.aliasNodes.push(alias);
+          return alias;
+        }
+        obj.value = value;
+        prevObjects.set(value, obj);
+      }
+      obj.node = tagObj.createNode ? tagObj.createNode(ctx.schema, value, ctx) : wrapScalars ? new resolveSeq.Scalar(value) : value;
+      if (tagName && obj.node instanceof resolveSeq.Node) obj.node.tag = tagName;
+      return obj.node;
+    }
+    function getSchemaTags(schemas2, knownTags, customTags, schemaId) {
+      let tags2 = schemas2[schemaId.replace(/\W/g, "")];
+      if (!tags2) {
+        const keys = Object.keys(schemas2).map((key) => JSON.stringify(key)).join(", ");
+        throw new Error(`Unknown schema "${schemaId}"; use one of ${keys}`);
+      }
+      if (Array.isArray(customTags)) {
+        for (const tag of customTags) tags2 = tags2.concat(tag);
+      } else if (typeof customTags === "function") {
+        tags2 = customTags(tags2.slice());
+      }
+      for (let i = 0; i < tags2.length; ++i) {
+        const tag = tags2[i];
+        if (typeof tag === "string") {
+          const tagObj = knownTags[tag];
+          if (!tagObj) {
+            const keys = Object.keys(knownTags).map((key) => JSON.stringify(key)).join(", ");
+            throw new Error(`Unknown custom tag "${tag}"; use one of ${keys}`);
+          }
+          tags2[i] = tagObj;
+        }
+      }
+      return tags2;
+    }
+    var sortMapEntriesByKey = (a, b) => a.key < b.key ? -1 : a.key > b.key ? 1 : 0;
+    var Schema2 = class _Schema {
+      // TODO: remove in v2
+      constructor({
+        customTags,
+        merge: merge2,
+        schema,
+        sortMapEntries,
+        tags: deprecatedCustomTags
+      }) {
+        this.merge = !!merge2;
+        this.name = schema;
+        this.sortMapEntries = sortMapEntries === true ? sortMapEntriesByKey : sortMapEntries || null;
+        if (!customTags && deprecatedCustomTags) warnings.warnOptionDeprecation("tags", "customTags");
+        this.tags = getSchemaTags(schemas, tags, customTags || deprecatedCustomTags, schema);
+      }
+      createNode(value, wrapScalars, tagName, ctx) {
+        const baseCtx = {
+          defaultPrefix: _Schema.defaultPrefix,
+          schema: this,
+          wrapScalars
+        };
+        const createCtx = ctx ? Object.assign(ctx, baseCtx) : baseCtx;
+        return createNode(value, tagName, createCtx);
+      }
+      createPair(key, value, ctx) {
+        if (!ctx) ctx = {
+          wrapScalars: true
+        };
+        const k = this.createNode(key, ctx.wrapScalars, null, ctx);
+        const v = this.createNode(value, ctx.wrapScalars, null, ctx);
+        return new resolveSeq.Pair(k, v);
+      }
+    };
+    PlainValue._defineProperty(Schema2, "defaultPrefix", PlainValue.defaultTagPrefix);
+    PlainValue._defineProperty(Schema2, "defaultTags", PlainValue.defaultTags);
+    exports2.Schema = Schema2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js
+var require_Document_a8d0fbf9 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var defaultOptions = {
+      anchorPrefix: "a",
+      customTags: null,
+      indent: 2,
+      indentSeq: true,
+      keepCstNodes: false,
+      keepNodeTypes: true,
+      keepBlobsInJSON: true,
+      mapAsMap: false,
+      maxAliasCount: 100,
+      prettyErrors: false,
+      // TODO Set true in v2
+      simpleKeys: false,
+      version: "1.2"
+    };
+    var scalarOptions = {
+      get binary() {
+        return resolveSeq.binaryOptions;
+      },
+      set binary(opt) {
+        Object.assign(resolveSeq.binaryOptions, opt);
+      },
+      get bool() {
+        return resolveSeq.boolOptions;
+      },
+      set bool(opt) {
+        Object.assign(resolveSeq.boolOptions, opt);
+      },
+      get int() {
+        return resolveSeq.intOptions;
+      },
+      set int(opt) {
+        Object.assign(resolveSeq.intOptions, opt);
+      },
+      get null() {
+        return resolveSeq.nullOptions;
+      },
+      set null(opt) {
+        Object.assign(resolveSeq.nullOptions, opt);
+      },
+      get str() {
+        return resolveSeq.strOptions;
+      },
+      set str(opt) {
+        Object.assign(resolveSeq.strOptions, opt);
+      }
+    };
+    var documentOptions = {
+      "1.0": {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: PlainValue.defaultTagPrefix
+        }, {
+          handle: "!!",
+          prefix: "tag:private.yaml.org,2002:"
+        }]
+      },
+      1.1: {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      },
+      1.2: {
+        schema: "core",
+        merge: false,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      }
+    };
+    function stringifyTag(doc, tag) {
+      if ((doc.version || doc.options.version) === "1.0") {
+        const priv = tag.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);
+        if (priv) return "!" + priv[1];
+        const vocab = tag.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);
+        return vocab ? `!${vocab[1]}/${vocab[2]}` : `!${tag.replace(/^tag:/, "")}`;
+      }
+      let p = doc.tagPrefixes.find((p2) => tag.indexOf(p2.prefix) === 0);
+      if (!p) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        p = dtp && dtp.find((p2) => tag.indexOf(p2.prefix) === 0);
+      }
+      if (!p) return tag[0] === "!" ? tag : `!<${tag}>`;
+      const suffix = tag.substr(p.prefix.length).replace(/[!,[\]{}]/g, (ch) => ({
+        "!": "%21",
+        ",": "%2C",
+        "[": "%5B",
+        "]": "%5D",
+        "{": "%7B",
+        "}": "%7D"
+      })[ch]);
+      return p.handle + suffix;
+    }
+    function getTagObject(tags, item) {
+      if (item instanceof resolveSeq.Alias) return resolveSeq.Alias;
+      if (item.tag) {
+        const match = tags.filter((t) => t.tag === item.tag);
+        if (match.length > 0) return match.find((t) => t.format === item.format) || match[0];
+      }
+      let tagObj, obj;
+      if (item instanceof resolveSeq.Scalar) {
+        obj = item.value;
+        const match = tags.filter((t) => t.identify && t.identify(obj) || t.class && obj instanceof t.class);
+        tagObj = match.find((t) => t.format === item.format) || match.find((t) => !t.format);
+      } else {
+        obj = item;
+        tagObj = tags.find((t) => t.nodeClass && obj instanceof t.nodeClass);
+      }
+      if (!tagObj) {
+        const name = obj && obj.constructor ? obj.constructor.name : typeof obj;
+        throw new Error(`Tag not resolved for ${name} value`);
+      }
+      return tagObj;
+    }
+    function stringifyProps(node, tagObj, {
+      anchors,
+      doc
+    }) {
+      const props = [];
+      const anchor = doc.anchors.getName(node);
+      if (anchor) {
+        anchors[anchor] = node;
+        props.push(`&${anchor}`);
+      }
+      if (node.tag) {
+        props.push(stringifyTag(doc, node.tag));
+      } else if (!tagObj.default) {
+        props.push(stringifyTag(doc, tagObj.tag));
+      }
+      return props.join(" ");
+    }
+    function stringify3(item, ctx, onComment, onChompKeep) {
+      const {
+        anchors,
+        schema
+      } = ctx.doc;
+      let tagObj;
+      if (!(item instanceof resolveSeq.Node)) {
+        const createCtx = {
+          aliasNodes: [],
+          onTagObj: (o) => tagObj = o,
+          prevObjects: /* @__PURE__ */ new Map()
+        };
+        item = schema.createNode(item, true, null, createCtx);
+        for (const alias of createCtx.aliasNodes) {
+          alias.source = alias.source.node;
+          let name = anchors.getName(alias.source);
+          if (!name) {
+            name = anchors.newName();
+            anchors.map[name] = alias.source;
+          }
+        }
+      }
+      if (item instanceof resolveSeq.Pair) return item.toString(ctx, onComment, onChompKeep);
+      if (!tagObj) tagObj = getTagObject(schema.tags, item);
+      const props = stringifyProps(item, tagObj, ctx);
+      if (props.length > 0) ctx.indentAtStart = (ctx.indentAtStart || 0) + props.length + 1;
+      const str = typeof tagObj.stringify === "function" ? tagObj.stringify(item, ctx, onComment, onChompKeep) : item instanceof resolveSeq.Scalar ? resolveSeq.stringifyString(item, ctx, onComment, onChompKeep) : item.toString(ctx, onComment, onChompKeep);
+      if (!props) return str;
+      return item instanceof resolveSeq.Scalar || str[0] === "{" || str[0] === "[" ? `${props} ${str}` : `${props}
+${ctx.indent}${str}`;
+    }
+    var Anchors = class _Anchors {
+      static validAnchorNode(node) {
+        return node instanceof resolveSeq.Scalar || node instanceof resolveSeq.YAMLSeq || node instanceof resolveSeq.YAMLMap;
+      }
+      constructor(prefix) {
+        PlainValue._defineProperty(this, "map", /* @__PURE__ */ Object.create(null));
+        this.prefix = prefix;
+      }
+      createAlias(node, name) {
+        this.setAnchor(node, name);
+        return new resolveSeq.Alias(node);
+      }
+      createMergePair(...sources) {
+        const merge2 = new resolveSeq.Merge();
+        merge2.value.items = sources.map((s) => {
+          if (s instanceof resolveSeq.Alias) {
+            if (s.source instanceof resolveSeq.YAMLMap) return s;
+          } else if (s instanceof resolveSeq.YAMLMap) {
+            return this.createAlias(s);
+          }
+          throw new Error("Merge sources must be Map nodes or their Aliases");
+        });
+        return merge2;
+      }
+      getName(node) {
+        const {
+          map
+        } = this;
+        return Object.keys(map).find((a) => map[a] === node);
+      }
+      getNames() {
+        return Object.keys(this.map);
+      }
+      getNode(name) {
+        return this.map[name];
+      }
+      newName(prefix) {
+        if (!prefix) prefix = this.prefix;
+        const names = Object.keys(this.map);
+        for (let i = 1; true; ++i) {
+          const name = `${prefix}${i}`;
+          if (!names.includes(name)) return name;
+        }
+      }
+      // During parsing, map & aliases contain CST nodes
+      resolveNodes() {
+        const {
+          map,
+          _cstAliases
+        } = this;
+        Object.keys(map).forEach((a) => {
+          map[a] = map[a].resolved;
+        });
+        _cstAliases.forEach((a) => {
+          a.source = a.source.resolved;
+        });
+        delete this._cstAliases;
+      }
+      setAnchor(node, name) {
+        if (node != null && !_Anchors.validAnchorNode(node)) {
+          throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");
+        }
+        if (name && /[\x00-\x19\s,[\]{}]/.test(name)) {
+          throw new Error("Anchor names must not contain whitespace or control characters");
+        }
+        const {
+          map
+        } = this;
+        const prev = node && Object.keys(map).find((a) => map[a] === node);
+        if (prev) {
+          if (!name) {
+            return prev;
+          } else if (prev !== name) {
+            delete map[prev];
+            map[name] = node;
+          }
+        } else {
+          if (!name) {
+            if (!node) return null;
+            name = this.newName();
+          }
+          map[name] = node;
+        }
+        return name;
+      }
+    };
+    var visit2 = (node, tags) => {
+      if (node && typeof node === "object") {
+        const {
+          tag
+        } = node;
+        if (node instanceof resolveSeq.Collection) {
+          if (tag) tags[tag] = true;
+          node.items.forEach((n) => visit2(n, tags));
+        } else if (node instanceof resolveSeq.Pair) {
+          visit2(node.key, tags);
+          visit2(node.value, tags);
+        } else if (node instanceof resolveSeq.Scalar) {
+          if (tag) tags[tag] = true;
+        }
+      }
+      return tags;
+    };
+    var listTagNames = (node) => Object.keys(visit2(node, {}));
+    function parseContents(doc, contents) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let body = void 0;
+      let spaceBefore = false;
+      for (const node of contents) {
+        if (node.valueRange) {
+          if (body !== void 0) {
+            const msg = "Document contains trailing content not separated by a ... or --- line";
+            doc.errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+            break;
+          }
+          const res = resolveSeq.resolveNode(doc, node);
+          if (spaceBefore) {
+            res.spaceBefore = true;
+            spaceBefore = false;
+          }
+          body = res;
+        } else if (node.comment !== null) {
+          const cc = body === void 0 ? comments.before : comments.after;
+          cc.push(node.comment);
+        } else if (node.type === PlainValue.Type.BLANK_LINE) {
+          spaceBefore = true;
+          if (body === void 0 && comments.before.length > 0 && !doc.commentBefore) {
+            doc.commentBefore = comments.before.join("\n");
+            comments.before = [];
+          }
+        }
+      }
+      doc.contents = body || null;
+      if (!body) {
+        doc.comment = comments.before.concat(comments.after).join("\n") || null;
+      } else {
+        const cb = comments.before.join("\n");
+        if (cb) {
+          const cbNode = body instanceof resolveSeq.Collection && body.items[0] ? body.items[0] : body;
+          cbNode.commentBefore = cbNode.commentBefore ? `${cb}
+${cbNode.commentBefore}` : cb;
+        }
+        doc.comment = comments.after.join("\n") || null;
+      }
+    }
+    function resolveTagDirective({
+      tagPrefixes
+    }, directive) {
+      const [handle, prefix] = directive.parameters;
+      if (!handle || !prefix) {
+        const msg = "Insufficient parameters given for %TAG directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (tagPrefixes.some((p) => p.handle === handle)) {
+        const msg = "The %TAG directive must only be given at most once per handle in the same document.";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      return {
+        handle,
+        prefix
+      };
+    }
+    function resolveYamlDirective(doc, directive) {
+      let [version3] = directive.parameters;
+      if (directive.name === "YAML:1.0") version3 = "1.0";
+      if (!version3) {
+        const msg = "Insufficient parameters given for %YAML directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (!documentOptions[version3]) {
+        const v0 = doc.version || doc.options.version;
+        const msg = `Document will be parsed as YAML ${v0} rather than YAML ${version3}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+      }
+      return version3;
+    }
+    function parseDirectives(doc, directives, prevDoc) {
+      const directiveComments = [];
+      let hasDirectives = false;
+      for (const directive of directives) {
+        const {
+          comment,
+          name
+        } = directive;
+        switch (name) {
+          case "TAG":
+            try {
+              doc.tagPrefixes.push(resolveTagDirective(doc, directive));
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          case "YAML":
+          case "YAML:1.0":
+            if (doc.version) {
+              const msg = "The %YAML directive must only be given at most once per document.";
+              doc.errors.push(new PlainValue.YAMLSemanticError(directive, msg));
+            }
+            try {
+              doc.version = resolveYamlDirective(doc, directive);
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          default:
+            if (name) {
+              const msg = `YAML only supports %TAG and %YAML directives, and not %${name}`;
+              doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+            }
+        }
+        if (comment) directiveComments.push(comment);
+      }
+      if (prevDoc && !hasDirectives && "1.1" === (doc.version || prevDoc.version || doc.options.version)) {
+        const copyTagPrefix = ({
+          handle,
+          prefix
+        }) => ({
+          handle,
+          prefix
+        });
+        doc.tagPrefixes = prevDoc.tagPrefixes.map(copyTagPrefix);
+        doc.version = prevDoc.version;
+      }
+      doc.commentBefore = directiveComments.join("\n") || null;
+    }
+    function assertCollection(contents) {
+      if (contents instanceof resolveSeq.Collection) return true;
+      throw new Error("Expected a YAML collection as document contents");
+    }
+    var Document = class _Document {
+      constructor(options) {
+        this.anchors = new Anchors(options.anchorPrefix);
+        this.commentBefore = null;
+        this.comment = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.errors = [];
+        this.options = options;
+        this.schema = null;
+        this.tagPrefixes = [];
+        this.version = null;
+        this.warnings = [];
+      }
+      add(value) {
+        assertCollection(this.contents);
+        return this.contents.add(value);
+      }
+      addIn(path23, value) {
+        assertCollection(this.contents);
+        this.contents.addIn(path23, value);
+      }
+      delete(key) {
+        assertCollection(this.contents);
+        return this.contents.delete(key);
+      }
+      deleteIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) {
+          if (this.contents == null) return false;
+          this.contents = null;
+          return true;
+        }
+        assertCollection(this.contents);
+        return this.contents.deleteIn(path23);
+      }
+      getDefaults() {
+        return _Document.defaults[this.version] || _Document.defaults[this.options.version] || {};
+      }
+      get(key, keepScalar) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.get(key, keepScalar) : void 0;
+      }
+      getIn(path23, keepScalar) {
+        if (resolveSeq.isEmptyPath(path23)) return !keepScalar && this.contents instanceof resolveSeq.Scalar ? this.contents.value : this.contents;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.getIn(path23, keepScalar) : void 0;
+      }
+      has(key) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.has(key) : false;
+      }
+      hasIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) return this.contents !== void 0;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.hasIn(path23) : false;
+      }
+      set(key, value) {
+        assertCollection(this.contents);
+        this.contents.set(key, value);
+      }
+      setIn(path23, value) {
+        if (resolveSeq.isEmptyPath(path23)) this.contents = value;
+        else {
+          assertCollection(this.contents);
+          this.contents.setIn(path23, value);
+        }
+      }
+      setSchema(id, customTags) {
+        if (!id && !customTags && this.schema) return;
+        if (typeof id === "number") id = id.toFixed(1);
+        if (id === "1.0" || id === "1.1" || id === "1.2") {
+          if (this.version) this.version = id;
+          else this.options.version = id;
+          delete this.options.schema;
+        } else if (id && typeof id === "string") {
+          this.options.schema = id;
+        }
+        if (Array.isArray(customTags)) this.options.customTags = customTags;
+        const opt = Object.assign({}, this.getDefaults(), this.options);
+        this.schema = new Schema2.Schema(opt);
+      }
+      parse(node, prevDoc) {
+        if (this.options.keepCstNodes) this.cstNode = node;
+        if (this.options.keepNodeTypes) this.type = "DOCUMENT";
+        const {
+          directives = [],
+          contents = [],
+          directivesEndMarker,
+          error,
+          valueRange
+        } = node;
+        if (error) {
+          if (!error.source) error.source = this;
+          this.errors.push(error);
+        }
+        parseDirectives(this, directives, prevDoc);
+        if (directivesEndMarker) this.directivesEndMarker = true;
+        this.range = valueRange ? [valueRange.start, valueRange.end] : null;
+        this.setSchema();
+        this.anchors._cstAliases = [];
+        parseContents(this, contents);
+        this.anchors.resolveNodes();
+        if (this.options.prettyErrors) {
+          for (const error2 of this.errors) if (error2 instanceof PlainValue.YAMLError) error2.makePretty();
+          for (const warn of this.warnings) if (warn instanceof PlainValue.YAMLError) warn.makePretty();
+        }
+        return this;
+      }
+      listNonDefaultTags() {
+        return listTagNames(this.contents).filter((t) => t.indexOf(Schema2.Schema.defaultPrefix) !== 0);
+      }
+      setTagPrefix(handle, prefix) {
+        if (handle[0] !== "!" || handle[handle.length - 1] !== "!") throw new Error("Handle must start and end with !");
+        if (prefix) {
+          const prev = this.tagPrefixes.find((p) => p.handle === handle);
+          if (prev) prev.prefix = prefix;
+          else this.tagPrefixes.push({
+            handle,
+            prefix
+          });
+        } else {
+          this.tagPrefixes = this.tagPrefixes.filter((p) => p.handle !== handle);
+        }
+      }
+      toJSON(arg, onAnchor) {
+        const {
+          keepBlobsInJSON,
+          mapAsMap,
+          maxAliasCount
+        } = this.options;
+        const keep = keepBlobsInJSON && (typeof arg !== "string" || !(this.contents instanceof resolveSeq.Scalar));
+        const ctx = {
+          doc: this,
+          indentStep: "  ",
+          keep,
+          mapAsMap: keep && !!mapAsMap,
+          maxAliasCount,
+          stringify: stringify3
+          // Requiring directly in Pair would create circular dependencies
+        };
+        const anchorNames = Object.keys(this.anchors.map);
+        if (anchorNames.length > 0) ctx.anchors = new Map(anchorNames.map((name) => [this.anchors.map[name], {
+          alias: [],
+          aliasCount: 0,
+          count: 1
+        }]));
+        const res = resolveSeq.toJSON(this.contents, arg, ctx);
+        if (typeof onAnchor === "function" && ctx.anchors) for (const {
+          count: count2,
+          res: res2
+        } of ctx.anchors.values()) onAnchor(res2, count2);
+        return res;
+      }
+      toString() {
+        if (this.errors.length > 0) throw new Error("Document with errors cannot be stringified");
+        const indentSize = this.options.indent;
+        if (!Number.isInteger(indentSize) || indentSize <= 0) {
+          const s = JSON.stringify(indentSize);
+          throw new Error(`"indent" option must be a positive integer, not ${s}`);
+        }
+        this.setSchema();
+        const lines = [];
+        let hasDirectives = false;
+        if (this.version) {
+          let vd = "%YAML 1.2";
+          if (this.schema.name === "yaml-1.1") {
+            if (this.version === "1.0") vd = "%YAML:1.0";
+            else if (this.version === "1.1") vd = "%YAML 1.1";
+          }
+          lines.push(vd);
+          hasDirectives = true;
+        }
+        const tagNames = this.listNonDefaultTags();
+        this.tagPrefixes.forEach(({
+          handle,
+          prefix
+        }) => {
+          if (tagNames.some((t) => t.indexOf(prefix) === 0)) {
+            lines.push(`%TAG ${handle} ${prefix}`);
+            hasDirectives = true;
+          }
+        });
+        if (hasDirectives || this.directivesEndMarker) lines.push("---");
+        if (this.commentBefore) {
+          if (hasDirectives || !this.directivesEndMarker) lines.unshift("");
+          lines.unshift(this.commentBefore.replace(/^/gm, "#"));
+        }
+        const ctx = {
+          anchors: /* @__PURE__ */ Object.create(null),
+          doc: this,
+          indent: "",
+          indentStep: " ".repeat(indentSize),
+          stringify: stringify3
+          // Requiring directly in nodes would create circular dependencies
+        };
+        let chompKeep = false;
+        let contentComment = null;
+        if (this.contents) {
+          if (this.contents instanceof resolveSeq.Node) {
+            if (this.contents.spaceBefore && (hasDirectives || this.directivesEndMarker)) lines.push("");
+            if (this.contents.commentBefore) lines.push(this.contents.commentBefore.replace(/^/gm, "#"));
+            ctx.forceBlockIndent = !!this.comment;
+            contentComment = this.contents.comment;
+          }
+          const onChompKeep = contentComment ? null : () => chompKeep = true;
+          const body = stringify3(this.contents, ctx, () => contentComment = null, onChompKeep);
+          lines.push(resolveSeq.addComment(body, "", contentComment));
+        } else if (this.contents !== void 0) {
+          lines.push(stringify3(this.contents, ctx));
+        }
+        if (this.comment) {
+          if ((!chompKeep || contentComment) && lines[lines.length - 1] !== "") lines.push("");
+          lines.push(this.comment.replace(/^/gm, "#"));
+        }
+        return lines.join("\n") + "\n";
+      }
+    };
+    PlainValue._defineProperty(Document, "defaults", documentOptions);
+    exports2.Document = Document;
+    exports2.defaultOptions = defaultOptions;
+    exports2.scalarOptions = scalarOptions;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/index.js
+var require_dist = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/index.js"(exports2) {
+    "use strict";
+    var parseCst = require_parse_cst();
+    var Document$1 = require_Document_a8d0fbf9();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var PlainValue = require_PlainValue_516d5bc2();
+    var warnings = require_warnings_793925ce();
+    require_resolveSeq_95613e94();
+    function createNode(value, wrapScalars = true, tag) {
+      if (tag === void 0 && typeof wrapScalars === "string") {
+        tag = wrapScalars;
+        wrapScalars = true;
+      }
+      const options = Object.assign({}, Document$1.Document.defaults[Document$1.defaultOptions.version], Document$1.defaultOptions);
+      const schema = new Schema2.Schema(options);
+      return schema.createNode(value, wrapScalars, tag);
+    }
+    var Document = class extends Document$1.Document {
+      constructor(options) {
+        super(Object.assign({}, Document$1.defaultOptions, options));
+      }
+    };
+    function parseAllDocuments(src, options) {
+      const stream = [];
+      let prev;
+      for (const cstDoc of parseCst.parse(src)) {
+        const doc = new Document(options);
+        doc.parse(cstDoc, prev);
+        stream.push(doc);
+        prev = doc;
+      }
+      return stream;
+    }
+    function parseDocument(src, options) {
+      const cst = parseCst.parse(src);
+      const doc = new Document(options).parse(cst[0]);
+      if (cst.length > 1) {
+        const errMsg = "Source contains multiple documents; please use YAML.parseAllDocuments()";
+        doc.errors.unshift(new PlainValue.YAMLSemanticError(cst[1], errMsg));
+      }
+      return doc;
+    }
+    function parse3(src, options) {
+      const doc = parseDocument(src, options);
+      doc.warnings.forEach((warning) => warnings.warn(warning));
+      if (doc.errors.length > 0) throw doc.errors[0];
+      return doc.toJSON();
+    }
+    function stringify3(value, options) {
+      const doc = new Document(options);
+      doc.contents = value;
+      return String(doc);
+    }
+    var YAML = {
+      createNode,
+      defaultOptions: Document$1.defaultOptions,
+      Document,
+      parse: parse3,
+      parseAllDocuments,
+      parseCST: parseCst.parse,
+      parseDocument,
+      scalarOptions: Document$1.scalarOptions,
+      stringify: stringify3
+    };
+    exports2.YAML = YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/index.js
+var require_yaml = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/index.js"(exports2, module2) {
+    module2.exports = require_dist().YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/types.js
+var require_types = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/types.js"(exports2) {
+    "use strict";
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    require_PlainValue_516d5bc2();
+    require_warnings_793925ce();
+    exports2.Alias = resolveSeq.Alias;
+    exports2.Collection = resolveSeq.Collection;
+    exports2.Merge = resolveSeq.Merge;
+    exports2.Node = resolveSeq.Node;
+    exports2.Pair = resolveSeq.Pair;
+    exports2.Scalar = resolveSeq.Scalar;
+    exports2.YAMLMap = resolveSeq.YAMLMap;
+    exports2.YAMLSeq = resolveSeq.YAMLSeq;
+    exports2.binaryOptions = resolveSeq.binaryOptions;
+    exports2.boolOptions = resolveSeq.boolOptions;
+    exports2.intOptions = resolveSeq.intOptions;
+    exports2.nullOptions = resolveSeq.nullOptions;
+    exports2.strOptions = resolveSeq.strOptions;
+    exports2.Schema = Schema2.Schema;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/types.mjs
+var import_types, binaryOptions, boolOptions, intOptions, nullOptions, strOptions, Schema, Alias, Collection, Merge, Node5, Pair, Scalar, YAMLMap, YAMLSeq;
+var init_types = __esm({
+  "../../aws-cdk-lib/node_modules/yaml/types.mjs"() {
+    import_types = __toESM(require_types(), 1);
+    binaryOptions = import_types.default.binaryOptions;
+    boolOptions = import_types.default.boolOptions;
+    intOptions = import_types.default.intOptions;
+    nullOptions = import_types.default.nullOptions;
+    strOptions = import_types.default.strOptions;
+    Schema = import_types.default.Schema;
+    Alias = import_types.default.Alias;
+    Collection = import_types.default.Collection;
+    Merge = import_types.default.Merge;
+    Node5 = import_types.default.Node;
+    Pair = import_types.default.Pair;
+    Scalar = import_types.default.Scalar;
+    YAMLMap = import_types.default.YAMLMap;
+    YAMLSeq = import_types.default.YAMLSeq;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/yaml-cfn.ts
+function serialize(obj) {
+  const oldFold = strOptions.fold.lineWidth;
+  try {
+    strOptions.fold.lineWidth = 0;
+    return yaml.stringify(obj, { schema: "yaml-1.1" });
+  } finally {
+    strOptions.fold.lineWidth = oldFold;
+  }
+}
+var yaml;
+var init_yaml_cfn = __esm({
+  "../../aws-cdk-lib/core/lib/private/yaml-cfn.ts"() {
+    "use strict";
+    yaml = __toESM(require_yaml());
+    init_types();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts
+function fnJoinConcat(parts) {
+  return { "Fn::Join": ["", minimalCloudFormationJoin("", parts)] };
+}
+function tokenAwareStringify(root, space, ctx) {
+  let indent = 0;
+  const ret = new Array();
+  recurse(ctx.resolve(root, { allowIntrinsicKeys: true }));
+  switch (ret.length) {
+    case 0:
+      return void 0;
+    case 1:
+      return renderSegment(ret[0]);
+    default:
+      return fnJoinConcat(ret.map(renderSegment));
+  }
+  function recurse(obj) {
+    if (obj === void 0) {
+      return;
+    }
+    if (Token.isUnresolved(obj)) {
+      throw new UnscopedValidationError(lit`ShouldNotHappenAnymore`, "This shouldn't happen anymore");
+    }
+    if (Array.isArray(obj)) {
+      return renderCollection("[", "]", obj, recurse);
+    }
+    if (typeof obj === "object" && obj != null && !(obj instanceof Date)) {
+      if (isIntrinsic(obj) && resolvedTypeHint(obj)) {
+        renderIntrinsic(obj);
+        return;
+      }
+      return renderCollection("{", "}", definedEntries(obj), ([key, value]) => {
+        if (key.startsWith(INTRINSIC_KEY_PREFIX)) {
+          [key, value] = value;
+        }
+        recurse(key);
+        pushLiteral(prettyPunctuation(":"));
+        recurse(value);
+      });
+    }
+    pushLiteral(JSON.stringify(obj));
+  }
+  function renderCollection(pre, post, xs, each) {
+    pushLiteral(pre);
+    indent += space;
+    let atLeastOne = false;
+    for (const [comma, item] of sepIter(xs)) {
+      if (comma) {
+        pushLiteral(",");
+      }
+      pushLineBreak();
+      each(item);
+      atLeastOne = true;
+    }
+    indent -= space;
+    if (atLeastOne) {
+      pushLineBreak();
+    }
+    pushLiteral(post);
+  }
+  function renderIntrinsic(intrinsic) {
+    switch (resolvedTypeHint(intrinsic)) {
+      case "string" /* STRING */:
+        pushLiteral('"');
+        pushIntrinsic(deepQuoteStringLiterals(intrinsic));
+        pushLiteral('"');
+        return;
+      case "string-list" /* STRING_LIST */:
+        const stack = stackOf(ctx.scope);
+        const stringifyResponse = stringifyCache.obtain(stack, JSON.stringify(intrinsic), () => {
+          const id = makeUniqueId(["CdkJsonStringify", JSON.stringify(intrinsic)]);
+          return CfnUtils.stringify(stack, id, intrinsic);
+        });
+        pushIntrinsic(stringifyResponse);
+        return;
+      case "number" /* NUMBER */:
+        pushIntrinsic(intrinsic);
+        return;
+    }
+    throw new UnscopedValidationError(lit`UnexpectedTypeHint`, `Unexpected type hint: ${resolvedTypeHint(intrinsic)}`);
+  }
+  function pushLiteral(literal) {
+    let last2 = ret[ret.length - 1];
+    if (last2?.type !== "literal") {
+      last2 = { type: "literal", parts: [] };
+      ret.push(last2);
+    }
+    last2.parts.push(literal);
+  }
+  function pushIntrinsic(intrinsic) {
+    ret.push({ type: "intrinsic", intrinsic });
+  }
+  function pushLineBreak() {
+    if (space > 0) {
+      pushLiteral(`
+${" ".repeat(indent)}`);
+    }
+  }
+  function prettyPunctuation(punc) {
+    return space > 0 ? `${punc} ` : punc;
+  }
+}
+function renderSegment(s) {
+  switch (s.type) {
+    case "literal":
+      return s.parts.join("");
+    case "intrinsic":
+      return s.intrinsic;
+  }
+}
+function minimalCloudFormationJoin(delimiter, values) {
+  let i = 0;
+  while (i < values.length) {
+    const el = values[i];
+    if (isSplicableFnJoinIntrinsic(el)) {
+      values.splice(i, 1, ...el["Fn::Join"][1]);
+    } else if (i > 0 && isConcatable(values[i - 1]) && isConcatable(values[i])) {
+      values[i - 1] = `${values[i - 1]}${delimiter}${values[i]}`;
+      values.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+  return values;
+  function isSplicableFnJoinIntrinsic(obj) {
+    if (!isIntrinsic(obj)) {
+      return false;
+    }
+    if (Object.keys(obj)[0] !== "Fn::Join") {
+      return false;
+    }
+    const [delim, list] = obj["Fn::Join"];
+    if (delim !== delimiter) {
+      return false;
+    }
+    if (Token.isUnresolved(list)) {
+      return false;
+    }
+    if (!Array.isArray(list)) {
+      return false;
+    }
+    return true;
+  }
+}
+function isConcatable(obj) {
+  return ["string", "number"].includes(typeof obj) && !Token.isUnresolved(obj);
+}
+function isIntrinsic(x) {
+  if (Array.isArray(x) || x === null || typeof x !== "object") {
+    return false;
+  }
+  const keys = Object.keys(x);
+  if (keys.length !== 1) {
+    return false;
+  }
+  return keys[0] === "Ref" || isNameOfCloudFormationIntrinsic(keys[0]);
+}
+function isNameOfCloudFormationIntrinsic(name) {
+  if (!name.startsWith("Fn::")) {
+    return false;
+  }
+  return name !== "Fn::GetArtifactAtt" && name !== "Fn::GetParam";
+}
+function* sepIter(xs) {
+  let comma = false;
+  for (const item of xs) {
+    yield [comma, item];
+    comma = true;
+  }
+}
+function* definedEntries(xs) {
+  for (const [key, value] of Object.entries(xs)) {
+    if (value !== void 0) {
+      yield [key, value];
+    }
+  }
+}
+function deepQuoteStringLiterals(x) {
+  if (Array.isArray(x)) {
+    return x.map(deepQuoteStringLiterals);
+  }
+  if (typeof x === "object" && x != null) {
+    const ret = {};
+    for (const [key, value] of Object.entries(x)) {
+      ret[deepQuoteStringLiterals(key)] = deepQuoteStringLiterals(value);
+    }
+    return ret;
+  }
+  if (typeof x === "string") {
+    return quoteString(x);
+  }
+  return x;
+}
+function quoteString(s) {
+  s = JSON.stringify(s);
+  return s.substring(1, s.length - 1);
+}
+var CloudFormationLang, CLOUDFORMATION_CONCAT, CLOUDFORMATION_TOKEN_RESOLVER, ScopedCache, stringifyCache;
+var init_cloudformation_lang = __esm({
+  "../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts"() {
+    "use strict";
+    init_cfn_utils_provider();
+    init_resolve();
+    init_yaml_cfn();
+    init_lazy();
+    init_resolvable();
+    init_token();
+    init_type_hints();
+    init_uniqueid();
+    init_errors();
+    init_literal_string();
+    init_helpers_internal();
+    init_core_construct_finders();
+    CloudFormationLang = class {
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a JSON string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the JSON representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       * @param space Indentation to use (default: no pretty-printing)
+       */
+      static toJSON(obj, space) {
+        return Lazy.uncachedString({
+          // We used to do this by hooking into `JSON.stringify()` by adding in objects
+          // with custom `toJSON()` functions, but it's ultimately simpler just to
+          // reimplement the `stringify()` function from scratch.
+          produce: (ctx) => tokenAwareStringify(obj, space ?? 0, ctx)
+        });
+      }
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a YAML string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the YAML representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       */
+      static toYAML(obj) {
+        return Token.asString(Box.fromValue(obj).derive((data) => serialize(data)));
+      }
+      /**
+       * Produce a CloudFormation expression to concat two arbitrary expressions when resolving
+       */
+      static concat(left, right) {
+        if (left === void 0 && right === void 0) {
+          return "";
+        }
+        const parts = new Array();
+        if (left !== void 0) {
+          parts.push(left);
+        }
+        if (right !== void 0) {
+          parts.push(right);
+        }
+        if (parts.length === 1) {
+          return parts[0];
+        }
+        if (parts.length === 2 && isConcatable(parts[0]) && isConcatable(parts[1])) {
+          return `${parts[0]}${parts[1]}`;
+        }
+        return fnJoinConcat(parts);
+      }
+    };
+    CLOUDFORMATION_CONCAT = {
+      join(left, right) {
+        return CloudFormationLang.concat(left, right);
+      }
+    };
+    CLOUDFORMATION_TOKEN_RESOLVER = new DefaultTokenResolver(CLOUDFORMATION_CONCAT);
+    ScopedCache = class {
+      cache = /* @__PURE__ */ new WeakMap();
+      obtain(object, key, init) {
+        let kvMap = this.cache.get(object);
+        if (!kvMap) {
+          kvMap = /* @__PURE__ */ new Map();
+          this.cache.set(object, kvMap);
+        }
+        let ret = kvMap.get(key);
+        if (ret === void 0) {
+          ret = init();
+          kvMap.set(key, ret);
+        }
+        return ret;
+      }
+    };
+    stringifyCache = new ScopedCache();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-fn.ts
+function _inGroupsOf(array, maxGroup) {
+  const result = new Array();
+  for (let i = 0; i < array.length; i += maxGroup) {
+    result.push(array.slice(i, i + maxGroup));
+  }
+  return result;
+}
+function range2(n) {
+  const ret = [];
+  for (let i = 0; i < n; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+var Fn, FN_BASE_SYMBOL, FnBase, FnRef, FnFindInMap, FnTransform, FnGetAtt, FnGetAZs, FnImportValue, FnGetStackOutput, FnSelect, FnSplit, FnSub, FnBase64, FnCidr, FnConditionBase, FnAnd, FnEquals, FnIf, FnNot, FnOr, FnContains, FnEachMemberEquals, FnEachMemberIn, FnRefAll, FnValueOf, FnValueOfAll, FnJoin, FnToJsonString, FnLength;
+var init_cfn_fn = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-fn.ts"() {
+    "use strict";
+    init_errors();
+    init_cloudformation_lang();
+    init_core_construct_finders();
+    init_intrinsic();
+    init_literal_string();
+    init_reference();
+    init_token();
+    Fn = class _Fn {
+      /**
+       * The ``Ref`` intrinsic function returns the value of the specified parameter or resource.
+       * Note that it doesn't validate the logicalName, it mainly serves parameter/resource reference defined in a ``CfnInclude`` template.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      static ref(logicalName) {
+        return new FnRef(logicalName).toString();
+      }
+      /**
+       * The ``Fn::GetAtt`` intrinsic function returns the value of an attribute
+       * from a resource in the template.
+       * @param logicalNameOfResource The logical name (also called logical ID) of
+       * the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose
+       * value you want. See the resource's reference page for details about the
+       * attributes available for that resource type.
+       * @returns an IResolvable object
+       */
+      static getAtt(logicalNameOfResource, attributeName) {
+        return new FnGetAtt(logicalNameOfResource, attributeName);
+      }
+      /**
+       * The intrinsic function ``Fn::Join`` appends a set of values into a single
+       * value, separated by the specified delimiter. If a delimiter is the empty
+       * string, the set of values are concatenated with no delimiter.
+       * @param delimiter The value you want to occur between fragments. The
+       * delimiter will occur between fragments only. It will not terminate the
+       * final value.
+       * @param listOfValues The list of values you want combined.
+       * @returns a token represented as a string
+       */
+      static join(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        return new FnJoin(delimiter, listOfValues).toString();
+      }
+      /**
+       * Split a string token into a token list of string values.
+       *
+       * Specify the location of splits with a delimiter such as ',' (a comma).
+       * Renders to the `Fn::Split` intrinsic function.
+       *
+       * Lists with unknown lengths (default)
+       * -------------------------------------
+       *
+       * Since this function is used to work with deploy-time values, if `assumedLength`
+       * is not given the CDK cannot know the length of the resulting list at synthesis time.
+       * This brings the following restrictions:
+       *
+       * - You must use `Fn.select(i, list)` to pick elements out of the list (you must not use
+       *   `list[i]`).
+       * - You cannot add elements to the list, remove elements from the list,
+       *   combine two such lists together, or take a slice of the list.
+       * - You cannot pass the list to constructs that do any of the above.
+       *
+       * The only valid operation with such a tokenized list is to pass it unmodified to a
+       * CloudFormation Resource construct.
+       *
+       * Lists with assumed lengths
+       * --------------------------
+       *
+       * Pass `assumedLength` if you know the length of the list that will be
+       * produced by splitting. The actual list length at deploy time may be
+       * *longer* than the number you pass, but not *shorter*.
+       *
+       * The returned list will look like:
+       *
+       * ```
+       * [Fn.select(0, split), Fn.select(1, split), Fn.select(2, split), ...]
+       * ```
+       *
+       * The restrictions from the section "Lists with unknown lengths" will now be lifted,
+       * at the expense of having to know and fix the length of the list.
+       *
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       * @param assumedLength The length of the list that will be produced by splitting
+       * @returns a token represented as a string array
+       */
+      static split(delimiter, source, assumedLength) {
+        if (!Token.isUnresolved(source)) {
+          return source.split(delimiter);
+        }
+        if (Token.isUnresolved(delimiter)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'delimiter' may not be a token value");
+        }
+        const split = Token.asList(new FnSplit(delimiter, source));
+        if (assumedLength === void 0) {
+          return split;
+        }
+        if (Token.isUnresolved(assumedLength)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'assumedLength' may not be a token value");
+        }
+        return range2(assumedLength).map((i) => _Fn.select(i, split));
+      }
+      /**
+       * The intrinsic function ``Fn::Select`` returns a single object from a list of objects by index.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       * @returns a token represented as a string
+       */
+      static select(index, array) {
+        if (!Token.isUnresolved(index) && !Token.isUnresolved(array) && !array.some(Token.isUnresolved)) {
+          return array[index];
+        }
+        return new FnSelect(index, array).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Sub`` substitutes variables in an input string
+       * with values that you specify. In your templates, you can use this function
+       * to construct commands or outputs that include values that aren't available
+       * until you create or update a stack.
+       * @param body A string with variables that AWS CloudFormation substitutes
+       * with their associated values at runtime. Write variables as ${MyVarName}.
+       * Variables can be template parameter names, resource logical IDs, resource
+       * attributes, or a variable in a key-value map. If you specify only template
+       * parameter names, resource logical IDs, and resource attributes, don't
+       * specify a key-value map.
+       * @param variables The name of a variable that you included in the String
+       * parameter. The value that AWS CloudFormation substitutes for the associated
+       * variable name at runtime.
+       * @returns a token represented as a string
+       */
+      static sub(body, variables) {
+        return new FnSub(body, variables).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Base64`` returns the Base64 representation of
+       * the input string. This function is typically used to pass encoded data to
+       * Amazon EC2 instances by way of the UserData property.
+       * @param data The string value you want to convert to Base64.
+       * @returns a token represented as a string
+       */
+      static base64(data) {
+        return new FnBase64(data).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Cidr`` returns the specified Cidr address block.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       * @returns a token represented as a string
+       */
+      static cidr(ipBlock, count2, sizeMask) {
+        return Token.asList(new FnCidr(ipBlock, count2, sizeMask));
+      }
+      /**
+       * Given an url, parse the domain name
+       * @param url the url to parse
+       */
+      static parseDomainName(url2) {
+        const noHttps = _Fn.select(1, _Fn.split("//", url2));
+        return _Fn.select(0, _Fn.split("/", noHttps));
+      }
+      /**
+       * The intrinsic function ``Fn::GetAZs`` returns an array that lists
+       * Availability Zones for a specified region. Because customers have access to
+       * different Availability Zones, the intrinsic function ``Fn::GetAZs`` enables
+       * template authors to write templates that adapt to the calling user's
+       * access. That way you don't have to hard-code a full list of Availability
+       * Zones for a specified region.
+       * @param region The name of the region for which you want to get the
+       * Availability Zones. You can use the AWS::Region pseudo parameter to specify
+       * the region in which the stack is created. Specifying an empty string is
+       * equivalent to specifying AWS::Region.
+       * @returns a token represented as a string array
+       */
+      static getAzs(region) {
+        return Token.asList(new FnGetAZs(region));
+      }
+      /**
+       * The intrinsic function ``Fn::ImportValue`` returns the value of an output
+       * exported by another stack. You typically use this function to create
+       * cross-stack references. In the following example template snippets, Stack A
+       * exports VPC security group values and Stack B imports them.
+       * @param sharedValueToImport The stack output value that you want to import.
+       * @returns a token represented as a string
+       */
+      static importValue(sharedValueToImport) {
+        return new FnImportValue(sharedValueToImport).toString();
+      }
+      /**
+       * The intrinsic function `Fn::GetStackOutput` returns the value of an output
+       * from another stack. This is similar to `Fn::ImportValue`, but it can reference
+       * a normal output, without the need to export anything. As with `Fn::ImportValue`,
+       * you typically use this function to create cross-stack references.
+       * @param stackName The name of the producer stack.
+       * @param outputName The name of the output to get the value from.
+       * @param region The region where the producer stack is deployed. If not provided,
+       * it will default to the same region as the consumer stack.
+       * @param roleArn The role to be used when describing the producer stack. If not
+       * provided, it will default to the role used to create the producer stack.
+       */
+      static getStackOutput(stackName, outputName, region, roleArn) {
+        return new FnGetStackOutput(stackName, outputName, region, roleArn).toString();
+      }
+      /**
+       * Like `Fn.importValue`, but import a list with a known length
+       *
+       * If you explicitly want a list with an unknown length, call `Fn.split(',',
+       * Fn.importValue(exportName))`. See the documentation of `Fn.split` to read
+       * more about the limitations of using lists of unknown length.
+       *
+       * `Fn.importListValue(exportName, assumedLength)` is the same as
+       * `Fn.split(',', Fn.importValue(exportName), assumedLength)`,
+       * but easier to read and impossible to forget to pass `assumedLength`.
+       */
+      static importListValue(sharedValueToImport, assumedLength, delimiter = ",") {
+        return _Fn.split(delimiter, _Fn.importValue(sharedValueToImport), assumedLength);
+      }
+      /**
+       * The intrinsic function ``Fn::FindInMap`` returns the value corresponding to
+       * keys in a two-level map that is declared in the Mappings section.
+       * Warning: do not use with lazy mappings as this function will not guarantee a lazy mapping to render in the template.
+       * Prefer to use `CfnMapping.findInMap` in general.
+       * @returns a token represented as a string
+       */
+      static findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return _Fn._findInMap(mapName, topLevelKey, secondLevelKey, defaultValue).toString();
+      }
+      /**
+       * An additional function used in CfnParser,
+       * as Fn::FindInMap does not always return a string.
+       *
+       * @internal
+       */
+      static _findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return new FnFindInMap(mapName, topLevelKey, secondLevelKey, defaultValue);
+      }
+      /**
+       * Creates a token representing the ``Fn::Transform`` expression
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-transform.html
+       * @param macroName The name of the macro to perform the processing
+       * @param parameters The parameters to be passed to the macro
+       * @returns a token representing the transform expression
+       */
+      static transform(macroName, parameters) {
+        return new FnTransform(macroName, parameters);
+      }
+      /**
+       * Returns true if all the specified conditions evaluate to true, or returns
+       * false if any one of the conditions evaluates to false. ``Fn::And`` acts as
+       * an AND operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions to AND
+       * @returns an FnCondition token
+       */
+      static conditionAnd(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionAnd() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnAnd(...conditions);
+        }
+        return _Fn.conditionAnd(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionAnd(...group)));
+      }
+      /**
+       * Compares if two values are equal. Returns true if the two values are equal
+       * or false if they aren't.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       * @returns an FnCondition token
+       */
+      static conditionEquals(lhs, rhs) {
+        return new FnEquals(lhs, rhs);
+      }
+      /**
+       * Returns one value if the specified condition evaluates to true and another
+       * value if the specified condition evaluates to false. Currently, AWS
+       * CloudFormation supports the ``Fn::If`` intrinsic function in the metadata
+       * attribute, update policy attribute, and property values in the Resources
+       * section and Outputs sections of a template. You can use the AWS::NoValue
+       * pseudo parameter as a return value to remove the corresponding property.
+       * @param conditionId A reference to a condition in the Conditions section. Use
+       * the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition
+       * evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition
+       * evaluates to false.
+       * @returns an FnCondition token
+       */
+      static conditionIf(conditionId, valueIfTrue, valueIfFalse) {
+        return new FnIf(conditionId, valueIfTrue, valueIfFalse);
+      }
+      /**
+       * Returns true for a condition that evaluates to false or returns false for a
+       * condition that evaluates to true. ``Fn::Not`` acts as a NOT operator.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true
+       * or false.
+       * @returns an FnCondition token
+       */
+      static conditionNot(condition) {
+        return new FnNot(condition);
+      }
+      /**
+       * Returns true if any one of the specified conditions evaluate to true, or
+       * returns false if all of the conditions evaluates to false. ``Fn::Or`` acts
+       * as an OR operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions that evaluates to true or false.
+       * @returns an FnCondition token
+       */
+      static conditionOr(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionOr() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnOr(...conditions);
+        }
+        return _Fn.conditionOr(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionOr(...group)));
+      }
+      /**
+       * Returns true if a specified string matches at least one value in a list of
+       * strings.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       * @returns an FnCondition token
+       */
+      static conditionContains(listOfStrings, value) {
+        return new FnContains(listOfStrings, value);
+      }
+      /**
+       * Returns true if a specified string matches all values in a list.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list
+       * of strings.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberEquals(listOfStrings, value) {
+        return new FnEachMemberEquals(listOfStrings, value);
+      }
+      /**
+       * Returns true if each member in a list of strings matches at least one value
+       * in a second list of strings.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS
+       * CloudFormation checks whether each member in the strings_to_check parameter
+       * is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member
+       * in the strings_to_match parameter is compared against the members of the
+       * strings_to_check parameter.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberIn(stringsToCheck, stringsToMatch) {
+        return new FnEachMemberIn(stringsToCheck, stringsToMatch);
+      }
+      /**
+       * Returns all values for a specified parameter type.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @returns a token represented as a string array
+       */
+      static refAll(parameterType) {
+        return Token.asList(new FnRefAll(parameterType));
+      }
+      /**
+       * Returns an attribute value or list of values for a specific parameter and
+       * attribute.
+       * @param parameterOrLogicalId The name of a parameter for which you want to
+       * retrieve attribute values. The parameter must be declared in the Parameters
+       * section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value.
+       * @returns a token represented as a string
+       */
+      static valueOf(parameterOrLogicalId, attribute) {
+        return new FnValueOf(parameterOrLogicalId, attribute).toString();
+      }
+      /**
+       * Returns a list of all attribute values for a given parameter type and
+       * attribute.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value. For more information about attributes, see Supported Attributes.
+       * @returns a token represented as a string array
+       */
+      static valueOfAll(parameterType, attribute) {
+        return Token.asList(new FnValueOfAll(parameterType, attribute));
+      }
+      /**
+       * The `Fn::ToJsonString` intrinsic function converts an object or array to its
+       * corresponding JSON string.
+       *
+       * @param object The object or array to stringify
+       */
+      static toJsonString(object) {
+        if (!Token.isUnresolved(object)) {
+          return JSON.stringify(object);
+        }
+        return new FnToJsonString(object).toString();
+      }
+      /**
+       * The intrinsic function `Fn::Length` returns the number of elements within an array
+       * or an intrinsic function that returns an array.
+       *
+       * @param array The array you want to return the number of elements from
+       */
+      static len(array) {
+        if (!Token.isUnresolved(array)) {
+          if (!Array.isArray(array)) {
+            throw new UnscopedValidationError(lit`ValidationError`, "Fn.length() needs an array");
+          }
+          return array.length;
+        }
+        return Token.asNumber(new FnLength(array));
+      }
+      /**
+       * Test whether the given object extends FnBase class.
+       *
+       * @internal
+       */
+      static _isFnBase(x) {
+        return x !== null && typeof x === "object" && FN_BASE_SYMBOL in x;
+      }
+      constructor() {
+      }
+    };
+    FN_BASE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnFnBase");
+    FnBase = class extends Intrinsic {
+      constructor(name, value) {
+        super({ [name]: value });
+        Object.defineProperty(this, FN_BASE_SYMBOL, { value: true });
+      }
+    };
+    FnRef = class extends FnBase {
+      /**
+       * Creates an ``Ref`` function.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      constructor(logicalName) {
+        super("Ref", logicalName);
+      }
+    };
+    FnFindInMap = class extends FnBase {
+      /**
+       * Creates an ``Fn::FindInMap`` function.
+       * @param mapName The logical name of a mapping declared in the Mappings section that contains the keys and values.
+       * @param topLevelKey The top-level key name. Its value is a list of key-value pairs.
+       * @param secondLevelKey The second-level key name, which is set to one of the keys from the list assigned to TopLevelKey.
+       * @param defaultValue The value of the default value returned if either the key is not found in the map
+       */
+      mapName;
+      topLevelKey;
+      secondLevelKey;
+      defaultValue;
+      constructor(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        super("Fn::FindInMap", [mapName, topLevelKey, secondLevelKey, defaultValue !== void 0 ? { DefaultValue: defaultValue } : void 0]);
+        this.mapName = mapName;
+        this.topLevelKey = topLevelKey;
+        this.secondLevelKey = secondLevelKey;
+        this.defaultValue = defaultValue;
+      }
+      resolve(context) {
+        if (this.defaultValue !== void 0) {
+          stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        }
+        return { "Fn::FindInMap": [this.mapName, this.topLevelKey, this.secondLevelKey, this.defaultValue !== void 0 ? { DefaultValue: this.defaultValue } : void 0] };
+      }
+    };
+    FnTransform = class extends FnBase {
+      /**
+       * creates an ``Fn::Transform`` function.
+       * @param macroName The name of the macro to be invoked
+       * @param parameters the parameters to pass to it
+       */
+      constructor(macroName, parameters) {
+        super("Fn::Transform", { Name: macroName, Parameters: parameters });
+      }
+    };
+    FnGetAtt = class extends FnBase {
+      /**
+       * Creates a ``Fn::GetAtt`` function.
+       * @param logicalNameOfResource The logical name (also called logical ID) of the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose value you want. See the resource's reference page for details about the attributes available for that resource type.
+       */
+      constructor(logicalNameOfResource, attributeName) {
+        super("Fn::GetAtt", [logicalNameOfResource, attributeName]);
+      }
+    };
+    FnGetAZs = class extends FnBase {
+      /**
+       * Creates an ``Fn::GetAZs`` function.
+       * @param region The name of the region for which you want to get the Availability Zones.
+       *         You can use the AWS::Region pseudo parameter to specify the region in
+       *         which the stack is created. Specifying an empty string is equivalent to
+       *         specifying AWS::Region.
+       */
+      constructor(region) {
+        super("Fn::GetAZs", region || "");
+      }
+    };
+    FnImportValue = class extends FnBase {
+      /**
+       * Creates an ``Fn::ImportValue`` function.
+       * @param sharedValueToImport The stack output value that you want to import.
+       */
+      constructor(sharedValueToImport) {
+        super("Fn::ImportValue", sharedValueToImport);
+      }
+    };
+    FnGetStackOutput = class extends FnBase {
+      constructor(stackName, outputName, region, roleArn) {
+        super("Fn::GetStackOutput", {
+          StackName: stackName,
+          Region: region,
+          RoleArn: roleArn,
+          OutputName: outputName
+        });
+      }
+    };
+    FnSelect = class extends FnBase {
+      /**
+       * Creates an ``Fn::Select`` function.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       */
+      constructor(index, array) {
+        super("Fn::Select", [index, array]);
+      }
+    };
+    FnSplit = class extends FnBase {
+      /**
+       * Create an ``Fn::Split`` function.
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       */
+      constructor(delimiter, source) {
+        super("Fn::Split", [delimiter, source]);
+      }
+    };
+    FnSub = class extends FnBase {
+      /**
+       * Creates an ``Fn::Sub`` function.
+       * @param body A string with variables that AWS CloudFormation substitutes with their
+       *       associated values at runtime. Write variables as ${MyVarName}. Variables
+       *       can be template parameter names, resource logical IDs, resource attributes,
+       *       or a variable in a key-value map. If you specify only template parameter names,
+       *       resource logical IDs, and resource attributes, don't specify a key-value map.
+       * @param variables The name of a variable that you included in the String parameter.
+       *          The value that AWS CloudFormation substitutes for the associated variable name at runtime.
+       */
+      constructor(body, variables) {
+        super("Fn::Sub", variables ? [body, variables] : body);
+      }
+    };
+    FnBase64 = class extends FnBase {
+      /**
+       * Creates an ``Fn::Base64`` function.
+       * @param data The string value you want to convert to Base64.
+       */
+      constructor(data) {
+        super("Fn::Base64", data);
+      }
+    };
+    FnCidr = class extends FnBase {
+      /**
+       * Creates an ``Fn::Cidr`` function.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       */
+      constructor(ipBlock, count2, sizeMask) {
+        if (count2 < 1 || count2 > 256) {
+          throw new UnscopedValidationError(lit`MustBeFnCidrSCountAttribute`, `Fn::Cidr's count attribute must be between 1 and 256, ${count2} was provided.`);
+        }
+        super("Fn::Cidr", [ipBlock, count2, sizeMask]);
+      }
+    };
+    FnConditionBase = class extends Intrinsic {
+      disambiguator = true;
+      constructor(type, value) {
+        super({ [type]: value });
+      }
+    };
+    FnAnd = class extends FnConditionBase {
+      constructor(...condition) {
+        super("Fn::And", condition);
+      }
+    };
+    FnEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Equals`` condition function.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       */
+      constructor(lhs, rhs) {
+        super("Fn::Equals", [lhs, rhs]);
+      }
+    };
+    FnIf = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::If`` condition function.
+       * @param condition A reference to a condition in the Conditions section. Use the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition evaluates to false.
+       */
+      constructor(condition, valueIfTrue, valueIfFalse) {
+        super("Fn::If", [condition, valueIfTrue, valueIfFalse]);
+      }
+    };
+    FnNot = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Not`` condition function.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true or false.
+       */
+      constructor(condition) {
+        super("Fn::Not", [condition]);
+      }
+    };
+    FnOr = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Or`` condition function.
+       * @param condition A condition that evaluates to true or false.
+       */
+      constructor(...condition) {
+        super("Fn::Or", condition);
+      }
+    };
+    FnContains = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Contains`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::Contains", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberEquals`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::EachMemberEquals", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberIn = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberIn`` function.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS CloudFormation checks whether each member in the strings_to_check parameter is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member in the strings_to_match parameter is compared against the members of the strings_to_check parameter.
+       */
+      constructor(stringsToCheck, stringsToMatch) {
+        super("Fn::EachMemberIn", [stringsToCheck, stringsToMatch]);
+      }
+    };
+    FnRefAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::RefAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or
+       *            AWS::EC2::VPC::Id. For more information, see Parameters in the AWS
+       *            CloudFormation User Guide.
+       */
+      constructor(parameterType) {
+        super("Fn::RefAll", parameterType);
+      }
+    };
+    FnValueOf = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOf`` function.
+       * @param parameterOrLogicalId The name of a parameter for which you want to retrieve attribute values. The parameter must be declared in the Parameters section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a value.
+       */
+      constructor(parameterOrLogicalId, attribute) {
+        super("Fn::ValueOf", [parameterOrLogicalId, attribute]);
+      }
+    };
+    FnValueOfAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOfAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a value. For more information about attributes, see Supported Attributes.
+       */
+      constructor(parameterType, attribute) {
+        super("Fn::ValueOfAll", [parameterType, attribute]);
+      }
+    };
+    FnJoin = class {
+      creationStack;
+      delimiter;
+      listOfValues;
+      /**
+       * Creates an ``Fn::Join`` function.
+       * @param delimiter The value you want to occur between fragments. The delimiter will occur between fragments only.
+       *          It will not terminate the final value.
+       * @param listOfValues The list of values you want combined.
+       */
+      constructor(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        this.delimiter = delimiter;
+        this.listOfValues = listOfValues;
+      }
+      resolve(context) {
+        if (Token.isUnresolved(this.listOfValues)) {
+          return { "Fn::Join": [this.delimiter, this.listOfValues] };
+        }
+        const resolved = this.resolveValues(context);
+        if (resolved.length === 1) {
+          return resolved[0];
+        }
+        return { "Fn::Join": [this.delimiter, resolved] };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Join" });
+      }
+      toJSON() {
+        return "";
+      }
+      /**
+       * Optimization: if a Fn::Join is nested in another one and they share the same delimiter, then flatten it up. Also,
+       * if two concatenated elements are literal strings (not tokens), then pre-concatenate them with the delimiter, to
+       * generate shorter output.
+       */
+      resolveValues(context) {
+        const resolvedValues = this.listOfValues.map((x) => Reference.isReference(x) ? x : context.resolve(x));
+        return minimalCloudFormationJoin(this.delimiter, resolvedValues);
+      }
+    };
+    FnJoin.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnToJsonString = class {
+      creationStack;
+      object;
+      constructor(object) {
+        this.object = object;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::ToJsonString": this.object };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::ToJsonString" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnToJsonString.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnLength = class {
+      creationStack;
+      array;
+      constructor(array) {
+        this.array = array;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::Length": this.array };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Length" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnLength.prototype.creationStack = ["Token stack traces are no longer captured"];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-pseudo.ts
+function pseudoString(name) {
+  return Token.asString({ Ref: name }, { displayHint: name.replace("::", ".") });
+}
+var AWS_ACCOUNTID, AWS_URLSUFFIX, AWS_NOTIFICATIONARNS, AWS_PARTITION, AWS_REGION, AWS_STACKID, AWS_STACKNAME, AWS_NOVALUE, Aws, ScopedAws;
+var init_cfn_pseudo = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-pseudo.ts"() {
+    "use strict";
+    init_cfn_reference();
+    init_token();
+    AWS_ACCOUNTID = "AWS::AccountId";
+    AWS_URLSUFFIX = "AWS::URLSuffix";
+    AWS_NOTIFICATIONARNS = "AWS::NotificationARNs";
+    AWS_PARTITION = "AWS::Partition";
+    AWS_REGION = "AWS::Region";
+    AWS_STACKID = "AWS::StackId";
+    AWS_STACKNAME = "AWS::StackName";
+    AWS_NOVALUE = "AWS::NoValue";
+    Aws = class {
+      static ACCOUNT_ID = pseudoString(AWS_ACCOUNTID);
+      static URL_SUFFIX = pseudoString(AWS_URLSUFFIX);
+      static NOTIFICATION_ARNS = Token.asList({ Ref: AWS_NOTIFICATIONARNS }, { displayHint: AWS_NOTIFICATIONARNS });
+      static PARTITION = pseudoString(AWS_PARTITION);
+      static REGION = pseudoString(AWS_REGION);
+      static STACK_ID = pseudoString(AWS_STACKID);
+      static STACK_NAME = pseudoString(AWS_STACKNAME);
+      static NO_VALUE = pseudoString(AWS_NOVALUE);
+      constructor() {
+      }
+    };
+    ScopedAws = class {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      get accountId() {
+        return this.asString(AWS_ACCOUNTID);
+      }
+      get urlSuffix() {
+        return this.asString(AWS_URLSUFFIX);
+      }
+      get notificationArns() {
+        return Token.asList(CfnReference.forPseudo(AWS_NOTIFICATIONARNS, this.scope), {
+          displayHint: AWS_NOTIFICATIONARNS
+        });
+      }
+      get partition() {
+        return this.asString(AWS_PARTITION);
+      }
+      get region() {
+        return this.asString(AWS_REGION);
+      }
+      get stackId() {
+        return this.asString(AWS_STACKID);
+      }
+      get stackName() {
+        return this.asString(AWS_STACKNAME);
+      }
+      asString(name) {
+        return Token.asString(CfnReference.forPseudo(name, this.scope), { displayHint: name });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource-policy.ts
+var init_cfn_resource_policy = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource-policy.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts
+var init_cfn_parse = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource_policy();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_cfn_reference();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts
+function getPrecreatedRoleConfig(scope, rolePath) {
+  const precreatedRolePath = rolePath ?? scope.node.path;
+  const customizeRolesContext = scope.node.tryGetContext(CUSTOMIZE_ROLES_CONTEXT_KEY);
+  if (customizeRolesContext !== void 0) {
+    const customizeRoles = customizeRolesContext;
+    if (customizeRoles.preventSynthesis === false) {
+      return {
+        preventSynthesis: false,
+        enabled: true
+      };
+    }
+    if (customizeRoles.usePrecreatedRoles?.hasOwnProperty(precreatedRolePath)) {
+      if (Token.isUnresolved(customizeRoles.usePrecreatedRoles[precreatedRolePath])) {
+        Annotations.of(scope)._addTrackableError(
+          lit`UnresolvablePrecreatedRoleName`,
+          `Cannot resolve precreated role name at path "${precreatedRolePath}". The value may be a token.`
+        );
+      } else {
+        return {
+          enabled: true,
+          preventSynthesis: true,
+          precreatedRoleName: customizeRoles.usePrecreatedRoles[precreatedRolePath]
+        };
+      }
+    } else {
+      Annotations.of(scope)._addTrackableError(
+        lit`MissingPrecreatedRoleName`,
+        `IAM Role is being created at path "${precreatedRolePath}" and customizeRoles.preventSynthesis is enabled. You must provide a precreated role name in customizeRoles.precreatedRoles`
+      );
+    }
+    return {
+      enabled: true,
+      preventSynthesis: true
+    };
+  }
+  return { enabled: false };
+}
+var fs9, path10, import_constructs10, POLICY_SYNTHESIZER_ID, PolicySynthesizerTokenResolver, PolicySynthesizer, CUSTOMIZE_ROLES_CONTEXT_KEY;
+var init_customize_roles = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts"() {
+    "use strict";
+    fs9 = __toESM(require("fs"));
+    path10 = __toESM(require("path"));
+    import_constructs10 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_errors();
+    init_literal_string();
+    init_reference();
+    init_resolvable();
+    init_token();
+    POLICY_SYNTHESIZER_ID = "PolicySynthesizer";
+    PolicySynthesizerTokenResolver = class extends DefaultTokenResolver {
+      constructor(concat) {
+        super(concat);
+      }
+      /**
+       * PolicySynthesizer Token resolution
+       *
+       * Resolve the Token until the token can be resolved into
+       * "(Path/To/SomeResource.Arn)" format. Otherwise, recurse
+       * into whatever it returns,
+       */
+      resolveToken(t, context, postProcessor) {
+        try {
+          let resolved = t.resolve(context);
+          const resolvable = Tokenization.reverseString(resolved);
+          if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+            return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+          }
+          resolved = context.resolve(resolved);
+          resolved = postProcessor.postProcess(resolved, context);
+          return resolved;
+        } catch (e) {
+          let message = `Resolution error: ${e.message}.`;
+          if (t.creationStack && t.creationStack.length > 0) {
+            message += `
+Object creation stack:
+  at ${t.creationStack.join("\n  at ")}`;
+          }
+          e.message = message;
+          throw e;
+        }
+      }
+    };
+    PolicySynthesizer = class _PolicySynthesizer extends import_constructs10.Construct {
+      static getOrCreate(scope) {
+        const synthesizer = scope.node.root.node.tryFindChild(POLICY_SYNTHESIZER_ID);
+        if (synthesizer) {
+          return synthesizer;
+        }
+        return new _PolicySynthesizer(scope);
+      }
+      _scope;
+      roleReport = {};
+      managedPolicyReport = {};
+      constructor(scope) {
+        super(scope.node.root, POLICY_SYNTHESIZER_ID);
+        this._scope = scope;
+        attachCustomSynthesis(this, {
+          onSynthesize: (session) => {
+            const report = this.createJsonReport();
+            if (report.roles?.length > 0) {
+              const filePath = path10.join(session.outdir, "iam-policy-report");
+              fs9.writeFileSync(filePath + ".txt", this.createHumanReport(report));
+              fs9.writeFileSync(filePath + ".json", JSON.stringify(report, void 0, 2));
+            }
+          }
+        });
+      }
+      createJsonReport() {
+        return Object.entries(this.roleReport).reduce((acc, [key, value]) => {
+          const { policyArns, policyStatements } = this.renderManagedPoliciesForRole(key, value.managedPolicies);
+          acc = {
+            roles: [
+              ...acc.roles ?? [],
+              {
+                roleConstructPath: key,
+                roleName: value.missing ? "missing role" : value.roleName,
+                missing: value.missing,
+                assumeRolePolicy: this.resolveReferences(value.assumeRolePolicy),
+                managedPolicyArns: this.resolveReferences(policyArns),
+                managedPolicyStatements: this.resolveReferences(policyStatements),
+                identityPolicyStatements: this.resolveReferences(value.policyStatements)
+              }
+            ]
+          };
+          return acc;
+        }, {});
+      }
+      createHumanReport(report) {
+        return report.roles.map((role) => [
+          `<${role.missing ? "missing role" : role.roleName}> (${role.roleConstructPath})`,
+          "",
+          "AssumeRole Policy:",
+          ...this.toJsonString(role.assumeRolePolicy),
+          "",
+          "Managed Policy ARNs:",
+          ...this.toJsonString(role.managedPolicyArns),
+          "",
+          "Managed Policies Statements:",
+          this.toJsonString(role.managedPolicyStatements),
+          "",
+          "Identity Policy Statements:",
+          this.toJsonString(role.identityPolicyStatements)
+        ].join("\n")).join("\n\n");
+      }
+      /**
+       * Takes a value and returns a formatted JSON string
+       */
+      toJsonString(value) {
+        if (Array.isArray(value) && value.length === 0 || !value) {
+          return ["NONE"];
+        }
+        return [JSON.stringify({ values: value }.values, void 0, 2)];
+      }
+      /**
+       * IAM managed policies can be attached to a role using a couple different methods.
+       *
+       * 1. You can use an existing managed policy, i.e. ManagedPolicy.fromManagedPolicyName()
+       * 2. You can create a managed policy and attach the role, i.e.
+       *   new ManagedPolicy(scope, 'ManagedPolicy', { roles: [myRole] });
+       * 3. You can create a managed policy and attach it to the role, i.e.
+       *   const role = new Role(...);
+       *   role.addManagedPolicy(new ManagedPolicy(...));
+       *
+       * For 1, CDK is not creating the managed policy so we just need to report the ARN
+       * of the policy that needs to be attached to the role.
+       *
+       * For 2 & 3, CDK _is_ creating the managed policy so instead of reporting the name or ARN of the
+       * policy (that we prevented being created) we should instead report the policy statements
+       * that are part of that document. It doesn't really matter if the admins creating the roles then
+       * decide to use managed policies or inline policies, etc.
+       *
+       * There could be managed policies that are created and _not_ attached to any roles, in that case
+       * we do not report anything. That managed policy is not being created automatically by our constructs.
+       */
+      renderManagedPoliciesForRole(rolePath, managedPolicies) {
+        const policyStatements = [];
+        Object.values(this.managedPolicyReport).forEach((value) => {
+          if (value.roles?.includes(rolePath)) {
+            policyStatements.push(...value.policyStatements);
+          }
+        });
+        const policyArns = [];
+        managedPolicies.forEach((policy) => {
+          if (import_constructs10.Construct.isConstruct(policy)) {
+            if (this.managedPolicyReport.hasOwnProperty(policy.node.path)) {
+              policyStatements.push(...this.managedPolicyReport[policy.node.path].policyStatements);
+            } else {
+              policyArns.push(policy.managedPolicyArn);
+            }
+          } else {
+            policyArns.push(policy.managedPolicyArn);
+          }
+        });
+        return {
+          policyArns,
+          policyStatements
+        };
+      }
+      /**
+       * Resolve any references and replace with a more user friendly value. This is the value
+       * that will appear in the report, so instead of getting something like this (not very useful):
+       *
+       *     "Resource": {
+       *       "Fn::Join": [
+       *         "",
+       *         [
+       *           "arn:",
+       *           {
+       *             "Ref": "AWS::Partition"
+       *           },
+       *           ":iam::",
+       *           {
+       *             "Ref": "AWS::AccountId"
+       *           },
+       *           ":role/Role"
+       *         ]
+       *       ]
+       *     }
+       *
+       * We will instead get:
+       *
+       *     "Resource": "arn:(PARTITION):iam::(ACCOUNT):role/Role"
+       *
+       * Or if referencing a resource attribute
+       *
+       *     "Resource": {
+       *       "Fn::GetAtt": [
+       *         "SomeResource",
+       *         "Arn"
+       *       ]
+       *     }
+       *
+       * Becomes
+       *
+       *     "(Path/To/SomeResource.Arn)"
+       */
+      resolveReferences(ref) {
+        if (Array.isArray(ref) && ref.length === 0 || !ref) {
+          return [];
+        }
+        if (Array.isArray(ref)) {
+          return ref.map((r) => this.resolveReferences(r));
+        } else if (typeof ref === "object") {
+          return this.resolveJsonObject(ref);
+        }
+        const resolvable = Tokenization.reverseString(ref);
+        if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+          return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+        } else {
+          const resolvedTokens = resolvable.mapTokens({
+            mapToken: (r) => {
+              if (Reference.isReference(r)) {
+                return `(${r.target.node.path}.${r.displayName})`;
+              }
+              const resolved = Tokenization.resolve(r, {
+                scope: this._scope,
+                resolver: new PolicySynthesizerTokenResolver(new StringConcat())
+              });
+              if (typeof resolved === "object" && resolved.hasOwnProperty("Ref")) {
+                switch (resolved.Ref) {
+                  case "AWS::AccountId":
+                    return "(ACCOUNT)";
+                  case "AWS::Partition":
+                    return "(PARTITION)";
+                  case "AWS::Region":
+                    return "(REGION)";
+                  case "AWS::NoValue":
+                    return "(NOVALUE)";
+                  default:
+                    return r;
+                }
+              }
+              if (Token.isUnresolved(r) && typeof resolved === "string" && resolved) {
+                return resolved;
+              }
+              return r;
+            }
+          });
+          return resolvedTokens.join(new StringConcat());
+        }
+      }
+      resolveJsonObject(statement) {
+        const newStatement = statement;
+        for (const [key, value] of Object.entries(statement)) {
+          newStatement[key] = this.resolveReferences(value);
+        }
+        return newStatement;
+      }
+      /**
+       * Add an IAM role to the report
+       *
+       * @param rolePath the construct path of the role
+       * @param options the values associated with the role
+       */
+      addRole(rolePath, options) {
+        if (this.roleReport.hasOwnProperty(rolePath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryRole`, `IAM Policy Report already has an entry for role: ${rolePath}`, this);
+        }
+        this.roleReport[rolePath] = options;
+      }
+      /**
+       * Add an IAM Managed Policy to the report
+       *
+       * @param policyPath the construct path of the managed policy
+       * @param options the values associated with the managed policy
+       */
+      addManagedPolicy(policyPath, options) {
+        if (this.managedPolicyReport.hasOwnProperty(policyPath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryManaged`, `IAM Policy Report already has an entry for managed policy: ${policyPath}`, this);
+        }
+        this.managedPolicyReport[policyPath] = options;
+      }
+    };
+    CUSTOMIZE_ROLES_CONTEXT_KEY = "@aws-cdk/iam:customizeRoles";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts
+function replaceAll(s, search, replace) {
+  return s.split(search).join(replace);
+}
+function resolvedOr(x, def) {
+  return Token.isUnresolved(x) ? def : x;
+}
+var StringSpecializer, CFN_TOKENS;
+var init_string_specializer = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+    init_token();
+    StringSpecializer = class _StringSpecializer {
+      constructor(stack, qualifier) {
+        this.stack = stack;
+        this.qualifier = qualifier;
+      }
+      stack;
+      qualifier;
+      /**
+       * Validate that the given string does not contain tokens
+       */
+      static validateNoTokens(s, what) {
+        if (Token.isUnresolved(s)) {
+          throw new UnscopedValidationError(lit`TokensNotAllowed`, `${what} may not contain tokens; only the following literal placeholder strings are allowed: ` + [
+            "${Qualifier}",
+            (void 0).CURRENT_REGION,
+            (void 0).CURRENT_ACCOUNT,
+            (void 0).CURRENT_PARTITION
+          ].join(", ") + `. Got: ${s}`);
+        }
+      }
+      /**
+       * Function to replace placeholders in the input string as much as possible
+       *
+       * We replace:
+       * - ${Qualifier}: always
+       * - ${AWS::AccountId}, ${AWS::Region}: only if we have the actual values available
+       * - ${AWS::Partition}: never, since we never have the actual partition value.
+       */
+      specialize(s) {
+        s = replaceAll(s, "${Qualifier}", this.qualifier);
+        return (void 0).replace(s, {
+          region: resolvedOr(this.stack.region, (void 0).CURRENT_REGION),
+          accountId: resolvedOr(this.stack.account, (void 0).CURRENT_ACCOUNT),
+          partition: (void 0).CURRENT_PARTITION
+        });
+      }
+      /**
+       * Specialize the given string, make sure it doesn't contain tokens
+       */
+      specializeNoTokens(s, what) {
+        _StringSpecializer.validateNoTokens(s, what);
+        return this.specialize(s);
+      }
+      /**
+       * Specialize only the qualifier
+       */
+      qualifierOnly(s) {
+        return replaceAll(s, "${Qualifier}", this.qualifier);
+      }
+    };
+    CFN_TOKENS = [Aws.PARTITION, Aws.REGION, Aws.ACCOUNT_ID];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts
+var init_validate_all_props = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/strings.ts
+var init_strings = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/strings.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/feature-flag-report.ts
+function parseFeatureFlagInfo(flagName, info, root) {
+  const userValue = root.node.tryGetContext(flagName) ?? void 0;
+  let parsedFlag = {
+    userValue,
+    recommendedValue: info.recommendedValue,
+    explanation: info.summary,
+    // This is a historical accident. We used to copy all `unconfiguredBehavesLike` data
+    // into the feature flag report, but we only needed to copy the behavior of the current library version.
+    // In order to not break existing reports, we keep the same structure, but we baptize the 'v2' field as
+    // the canonical name of the "current version" field, even for v3, v4, etc.
+    // It looks weird, but it's safe & backwards compatible.
+    unconfiguredBehavesLike: info.unconfiguredBehavesLike?.[CURRENT_MV] ? {
+      v2: info.unconfiguredBehavesLike?.[CURRENT_MV]
+    } : void 0
+  };
+  return parsedFlag;
+}
+function generateFeatureFlagReport(builder, root) {
+  const featureFlags = {};
+  for (const [flagName, flagInfo] of Object.entries(FLAGS)) {
+    if (CURRENT_VERSION_EXPIRED_FLAGS.includes(flagName)) {
+      continue;
+    }
+    featureFlags[flagName] = parseFeatureFlagInfo(flagName, flagInfo, root);
+  }
+  builder.addArtifact("aws-cdk-lib/feature-flag-report", {
+    type: import_cloud_assembly_schema.ArtifactType.FEATURE_FLAG_REPORT,
+    properties: {
+      module: "aws-cdk-lib",
+      flags: featureFlags
+    }
+  });
+}
+var import_cloud_assembly_schema;
+var init_feature_flag_report = __esm({
+  "../../aws-cdk-lib/core/lib/private/feature-flag-report.ts"() {
+    "use strict";
+    import_cloud_assembly_schema = __toESM(require_lib2());
+    init_features();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-condition.ts
+var CfnCondition;
+var init_cfn_condition = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-condition.ts"() {
+    "use strict";
+    init_cfn_element();
+    CfnCondition = class extends CfnElement {
+      /**
+       * The condition statement.
+       */
+      expression;
+      /**
+       * Build a new condition. The condition must be constructed with a condition token,
+       * that the condition is based on.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.expression = props && props.expression;
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.expression) {
+          return {};
+        }
+        return {
+          Conditions: {
+            [this.logicalId]: this.expression
+          }
+        };
+      }
+      /**
+       * Synthesizes the condition.
+       */
+      resolve(_context) {
+        return { Condition: this.logicalId };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/metadata-resource.ts
+function filteredConstructAnalyticsFromStack(scope) {
+  const includeAdditionalTelemetry = FeatureFlags.of(scope).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false;
+  const constructAnalytics = constructAnalyticsFromScope(scope);
+  if (includeAdditionalTelemetry) {
+    return constructAnalytics;
+  }
+  return constructAnalytics.map(retainAlwaysReportedAnalytics);
+  function retainAlwaysReportedAnalytics(analytics) {
+    return {
+      fqn: analytics.fqn,
+      version: analytics.version,
+      metadata: analytics.metadata
+    };
+  }
+}
+function makeCdkMetadataAvailableCondition() {
+  return Fn.conditionOr(...RegionInfo.regions.filter((ri) => ri.cdkMetadataResourceAvailable).map((ri) => Fn.conditionEquals(Aws.REGION, ri.name)));
+}
+function formatAnalytics(infos) {
+  const trie = new Trie();
+  infos.forEach((info) => insertFqnInTrie(`${info.version}!${info.fqn}`, trie, [info.metadata, info.additionalTelemetry].flatMap((a) => a ?? [])));
+  const plaintextEncodedConstructs = prefixEncodeTrie(trie);
+  const compressedConstructsBuffer = zlib.gzipSync(Buffer.from(plaintextEncodedConstructs));
+  setGzipOperatingSystemToUnknown(compressedConstructsBuffer);
+  const compressedConstructs = compressedConstructsBuffer.toString("base64");
+  const analyticsString = `v2:deflate64:${compressedConstructs}`;
+  if (process.env.CDK_CONTEXT_JSON && JSON.parse(process.env.CDK_CONTEXT_JSON)["cdk-migrate"]) {
+    const compressedAppInfoBuffer = zlib.gzipSync(Buffer.from("cdk-migrate"));
+    const compressedAppInfo = compressedAppInfoBuffer.toString("base64");
+    analyticsString.concat(":", compressedAppInfo);
+  }
+  return analyticsString;
+}
+function insertFqnInTrie(fqn, trie, metadata) {
+  for (const fqnPart of fqn.replace(/[^a-z0-9]/gi, "$& ").split(" ")) {
+    const nextLevelTreeRef = trie.get(fqnPart) ?? new Trie();
+    trie.set(fqnPart, nextLevelTreeRef);
+    trie = nextLevelTreeRef;
+  }
+  if (metadata?.length) {
+    trie.set(JSON.stringify(metadata), new Trie());
+  }
+  return trie;
+}
+function prefixEncodeTrie(trie) {
+  let prefixEncoded = "";
+  let isFirstEntryAtLevel = true;
+  [...trie.entries()].forEach(([key, value]) => {
+    if (!isFirstEntryAtLevel) {
+      prefixEncoded += ",";
+    }
+    isFirstEntryAtLevel = false;
+    prefixEncoded += key;
+    if (value.size > 1) {
+      prefixEncoded += "{";
+      prefixEncoded += prefixEncodeTrie(value);
+      prefixEncoded += "}";
+    } else {
+      prefixEncoded += prefixEncodeTrie(value);
+    }
+  });
+  return prefixEncoded;
+}
+function setGzipOperatingSystemToUnknown(gzipBuffer) {
+  if (gzipBuffer[0] !== 31 || gzipBuffer[1] !== 139) {
+    throw new AssumptionError(lit`ExpectingGzipBufferMust`, "Expecting a gzip buffer (must start with 0x1f8b)");
+  }
+  gzipBuffer[9] = 255;
+}
+var zlib, import_constructs11, MetadataResource, Trie;
+var init_metadata_resource2 = __esm({
+  "../../aws-cdk-lib/core/lib/private/metadata-resource.ts"() {
+    "use strict";
+    zlib = __toESM(require("zlib"));
+    import_constructs11 = __toESM(require_lib4());
+    init_cx_api();
+    init_region_info2();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_token();
+    init_literal_string();
+    init_stack_metadata();
+    MetadataResource = class extends import_constructs11.Construct {
+      constructor(scope, id) {
+        super(scope, id);
+        const metadataServiceExists = Token.isUnresolved(scope.region) || RegionInfo.get(scope.region).cdkMetadataResourceAvailable;
+        if (metadataServiceExists) {
+          const constructAnalytics = filteredConstructAnalyticsFromStack(scope);
+          const resource = new CfnResource(this, "Default", {
+            type: "AWS::CDK::Metadata",
+            properties: {
+              Analytics: Lazy.string({ produce: () => formatAnalytics(constructAnalytics) })
+            }
+          });
+          if (Token.isUnresolved(scope.region)) {
+            const condition = new CfnCondition(this, "Condition", {
+              expression: makeCdkMetadataAvailableCondition()
+            });
+            condition.overrideLogicalId("CDKMetadataAvailable");
+            resource.cfnOptions.condition = condition;
+          }
+        }
+      }
+    };
+    Trie = class extends Map {
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-output.ts
+var CfnOutput;
+var init_cfn_output = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-output.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_cfn_fn();
+    init_lazy();
+    init_token();
+    init_errors();
+    init_literal_string();
+    init_core_construct_finders();
+    CfnOutput = class extends CfnElement {
+      _description;
+      _condition;
+      _key;
+      _value;
+      _exportName;
+      /**
+       * Creates a CfnOutput value for this stack.
+       * @param scope The parent construct.
+       * @param props CfnOutput properties.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (props.value === void 0) {
+          throw new ValidationError(lit`MissingValueCloudFormationOutput`, `Missing value for CloudFormation output at path "${this.node.path}"`, this);
+        } else if (Array.isArray(props.value)) {
+          throw new ValidationError(lit`CloudformationOutputGivenString`, `CloudFormation output was given a string list instead of a string at path "${this.node.path}"`, this);
+        }
+        this._description = props.description;
+        this._key = props.key;
+        this._value = props.value;
+        this._condition = props.condition;
+        this._exportName = props.exportName;
+        this.node.addValidation({ validate: () => this.validateOutput() });
+      }
+      /**
+       * A String type that describes the output value.
+       * The description can be a maximum of 4 K in length.
+       *
+       * @default - No description.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(description) {
+        this._description = description;
+      }
+      /**
+       * The value of the property returned by the aws cloudformation describe-stacks command.
+       * The value of an output can include literals, parameter references, pseudo-parameters,
+       * a mapping value, or intrinsic functions.
+       */
+      get value() {
+        return this._value;
+      }
+      set value(value) {
+        this._value = value;
+      }
+      /**
+       * A condition to associate with this output value. If the condition evaluates
+       * to `false`, this output value will not be included in the stack.
+       *
+       * @default - No condition is associated with the output.
+       */
+      get condition() {
+        return this._condition;
+      }
+      set condition(condition) {
+        this._condition = condition;
+      }
+      /**
+       * The name used to export the value of this output across stacks.
+       *
+       * To use the value in another stack, pass the value of
+       * `output.importValue` to it.
+       *
+       * @default - the output is not exported
+       */
+      get exportName() {
+        return this._exportName;
+      }
+      set exportName(exportName) {
+        this._exportName = exportName;
+      }
+      /**
+       * Return the `Fn.importValue` expression to import this value into another stack
+       *
+       * The returned value should not be used in the same stack, but in a
+       * different one. It must be deployed to the same environment, as
+       * CloudFormation exports can only be imported in the same Region and
+       * account.
+       *
+       * The is no automatic registration of dependencies between stacks when using
+       * this mechanism, so you should make sure to deploy them in the right order
+       * yourself.
+       *
+       * You can use this mechanism to share values across Stacks in different
+       * Stages. If you intend to share the value to another Stack inside the same
+       * Stage, the automatic cross-stack referencing mechanism is more convenient.
+       */
+      get importValue() {
+        return Fn.importValue(Lazy.uncachedString({
+          produce: (ctx) => {
+            if (stackOf(ctx.scope) === this.stack) {
+              throw new ValidationError(lit`ImportvaluePropertyShouldOnly`, `'importValue' property of '${this.node.path}' should only be used in a different Stack`, this);
+            }
+            if (!this._exportName) {
+              throw new ValidationError(lit`ExportnameCfnoutputOrderOutput`, `Add an exportName to the CfnOutput at '${this.node.path}' in order to use 'output.importValue'`, this);
+            }
+            return this._exportName;
+          }
+        }));
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Outputs: {
+            [this._key ?? this.logicalId]: {
+              Description: this._description,
+              Value: this._value,
+              Export: this._exportName != null ? { Name: this._exportName } : void 0,
+              Condition: this._condition ? this._condition.logicalId : void 0
+            }
+          }
+        };
+      }
+      validateOutput() {
+        const errors = [];
+        if (this._exportName !== void 0 && !Token.isUnresolved(this._exportName)) {
+          if (this._exportName.length === 0) {
+            errors.push("Export name cannot be empty");
+          }
+          if (this._exportName.length > 255) {
+            errors.push(`Export name cannot exceed 255 characters (got ${this._exportName.length} characters)`);
+          }
+          if (!/^[A-Za-z0-9-:]*$/.test(this._exportName)) {
+            errors.push(`Export name must only include alphanumeric characters, colons, or hyphens (got '${this._exportName}')`);
+          }
+        }
+        return errors;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-parameter.ts
+function isListType(type) {
+  return type.indexOf("List<") >= 0 || type.indexOf("CommaDelimitedList") >= 0;
+}
+function isNumberType(type) {
+  return type === "Number";
+}
+function isStringType(type) {
+  return !isListType(type) && !isNumberType(type);
+}
+function typeToTypeHint(type) {
+  if (isListType(type)) {
+    return "string-list" /* STRING_LIST */;
+  } else if (isNumberType(type)) {
+    return "number" /* NUMBER */;
+  }
+  return "string" /* STRING */;
+}
+var CfnParameter;
+var init_cfn_parameter = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-parameter.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_errors();
+    init_cfn_reference();
+    init_literal_string();
+    init_token();
+    init_type_hints();
+    CfnParameter = class extends CfnElement {
+      _type;
+      _default;
+      _allowedPattern;
+      _allowedValues;
+      _constraintDescription;
+      _description;
+      _maxLength;
+      _maxValue;
+      _minLength;
+      _minValue;
+      _noEcho;
+      typeHint;
+      /**
+       * Creates a parameter construct.
+       * Note that the name (logical ID) of the parameter will derive from its `coname` and location
+       * within the stack. Therefore, it is recommended that parameters are defined at the stack level.
+       *
+       * @param scope The parent construct.
+       * @param props The parameter properties.
+       */
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this._type = props.type || "String";
+        this._default = props.default;
+        this._allowedPattern = props.allowedPattern;
+        this._allowedValues = props.allowedValues;
+        this._constraintDescription = props.constraintDescription;
+        this._description = props.description;
+        this._maxLength = props.maxLength;
+        this._maxValue = props.maxValue;
+        this._minLength = props.minLength;
+        this._minValue = props.minValue;
+        this._noEcho = props.noEcho;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * The data type for the parameter (DataType).
+       *
+       * @default String
+       */
+      get type() {
+        return this._type;
+      }
+      set type(type) {
+        this._type = type;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * A value of the appropriate type for the template to use if no value is specified
+       * when a stack is created. If you define constraints for the parameter, you must specify
+       * a value that adheres to those constraints.
+       *
+       * @default - No default value for parameter.
+       */
+      get default() {
+        return this._default;
+      }
+      set default(value) {
+        this._default = value;
+      }
+      /**
+       * A regular expression that represents the patterns to allow for String types.
+       *
+       * @default - No constraints on patterns allowed for parameter.
+       */
+      get allowedPattern() {
+        return this._allowedPattern;
+      }
+      set allowedPattern(pattern) {
+        this._allowedPattern = pattern;
+      }
+      /**
+       * An array containing the list of values allowed for the parameter.
+       *
+       * @default - No constraints on values allowed for parameter.
+       */
+      get allowedValues() {
+        return this._allowedValues;
+      }
+      set allowedValues(values) {
+        this._allowedValues = values;
+      }
+      /**
+       * A string that explains a constraint when the constraint is violated.
+       * For example, without a constraint description, a parameter that has an allowed
+       * pattern of [A-Za-z0-9]+ displays the following error message when the user specifies
+       * an invalid value:
+       *
+       * @default - No description with customized error message when user specifies invalid values.
+       */
+      get constraintDescription() {
+        return this._constraintDescription;
+      }
+      set constraintDescription(desc) {
+        this._constraintDescription = desc;
+      }
+      /**
+       * A string of up to 4000 characters that describes the parameter.
+       *
+       * @default - No description for the parameter.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(desc) {
+        this._description = desc;
+      }
+      /**
+       * An integer value that determines the largest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get maxLength() {
+        return this._maxLength;
+      }
+      set maxLength(len) {
+        this._maxLength = len;
+      }
+      /**
+       * An integer value that determines the smallest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get minLength() {
+        return this._minLength;
+      }
+      set minLength(len) {
+        this._minLength = len;
+      }
+      /**
+       * A numeric value that determines the largest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get maxValue() {
+        return this._maxValue;
+      }
+      set maxValue(len) {
+        this._maxValue = len;
+      }
+      /**
+       * A numeric value that determines the smallest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get minValue() {
+        return this._minValue;
+      }
+      set minValue(len) {
+        this._minValue = len;
+      }
+      /**
+       * Indicates if this parameter is configured with "NoEcho" enabled.
+       */
+      get noEcho() {
+        return !!this._noEcho;
+      }
+      set noEcho(echo) {
+        this._noEcho = echo;
+      }
+      /**
+       * The parameter value as a Token
+       */
+      get value() {
+        return CfnReference.for(this, "Ref", void 0, this.typeHint);
+      }
+      /**
+       * The parameter value, if it represents a string.
+       */
+      get valueAsString() {
+        if (!isStringType(this.type) && !isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string or number type`, this);
+        }
+        return Token.asString(this.value);
+      }
+      /**
+       * The parameter value, if it represents a string list.
+       */
+      get valueAsList() {
+        if (!isListType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string list type`, this);
+        }
+        return Token.asList(this.value);
+      }
+      /**
+       * The parameter value, if it represents a number.
+       */
+      get valueAsNumber() {
+        if (!isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a number type`, this);
+        }
+        return Token.asNumber(this.value);
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Parameters: {
+            [this.logicalId]: {
+              Type: this.type,
+              Default: this.default,
+              AllowedPattern: this.allowedPattern,
+              AllowedValues: this.allowedValues,
+              ConstraintDescription: this.constraintDescription,
+              Description: this.description,
+              MaxLength: this.maxLength,
+              MaxValue: this.maxValue,
+              MinLength: this.minLength,
+              MinValue: this.minValue,
+              NoEcho: this._noEcho
+            }
+          }
+        };
+      }
+      resolve(_context) {
+        return this.value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts
+var SSM_EXPORT_PATH_PREFIX;
+var init_types2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts"() {
+    "use strict";
+    SSM_EXPORT_PATH_PREFIX = "cdk/exports/";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts
+var path11, CrossRegionSsmReaderProvider;
+var init_cross_region_ssm_reader_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts"() {
+    "use strict";
+    path11 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmReaderProvider = class _CrossRegionSsmReaderProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmReaderProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path11.join(__dirname, "cross-region-ssm-reader-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts
+var import_constructs12, ExportReader;
+var init_export_reader_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts"() {
+    "use strict";
+    import_constructs12 = __toESM(require_lib4());
+    init_types2();
+    init_cfn_resource();
+    init_custom_resource();
+    init_cross_region_ssm_reader_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    ExportReader = class _ExportReader extends import_constructs12.Construct {
+      static getOrCreate(scope, uniqueId, _props = {}) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportReader(stack, uniqueId);
+      }
+      importParameters = Box.fromMap();
+      customResource;
+      constructor(scope, id, _props = {}) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const resourceType = "Custom::CrossRegionExportReader";
+        const serviceToken = CrossRegionSsmReaderProvider.getOrCreate(this, resourceType, {
+          policyStatements: [{
+            Effect: "Allow",
+            Resource: stack.formatArn({
+              service: "ssm",
+              resource: "parameter",
+              resourceName: `${SSM_EXPORT_PATH_PREFIX}${stack.stackName}/*`
+            }),
+            Action: [
+              "ssm:AddTagsToResource",
+              "ssm:RemoveTagsFromResource",
+              "ssm:GetParameters"
+            ]
+          }]
+        });
+        const properties = {
+          region: stack.region,
+          prefix: stack.stackName,
+          imports: this.importParameters.derive((m) => Object.fromEntries(m))
+        };
+        this.customResource = new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken,
+          properties: {
+            ReaderProps: properties
+          }
+        });
+      }
+      /**
+       * This is the only way to add a dependency on a custom resource currently
+       */
+      addDependency(resource) {
+        const customResource = this.customResource.node.tryFindChild("Default");
+        if (customResource && CfnResource.isCfnResource(customResource)) {
+          customResource.addDependsOn(resource);
+        }
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exports map of unique name associated with the export to SSM Dynamic reference
+       */
+      importValue(name, value) {
+        this.importParameters.put(name, value.toString());
+        return this.customResource.getAtt(name);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts
+var CfnDynamicReference;
+var init_cfn_dynamic_reference = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts"() {
+    "use strict";
+    init_intrinsic();
+    CfnDynamicReference = class extends Intrinsic {
+      constructor(service, key) {
+        super("{{resolve:" + service + ":" + key + "}}");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts
+var path12, CrossRegionSsmWriterProvider;
+var init_cross_region_ssm_writer_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts"() {
+    "use strict";
+    path12 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmWriterProvider = class _CrossRegionSsmWriterProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmWriterProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path12.join(__dirname, "cross-region-ssm-writer-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts
+var import_constructs13, CRProvider, ExportWriter;
+var init_export_writer_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts"() {
+    "use strict";
+    import_constructs13 = __toESM(require_lib4());
+    init_export_reader_provider();
+    init_types2();
+    init_cfn_dynamic_reference();
+    init_custom_resource();
+    init_cross_region_ssm_writer_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_uniqueid();
+    init_token();
+    CRProvider = class _CRProvider extends CrossRegionSsmWriterProvider {
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = stackOf(scope);
+        const provider = stack.node.tryFindChild(id) ?? new _CRProvider(stack, id, props);
+        return provider;
+      }
+      resourceArns = Box.fromSet();
+      constructor(scope, id, props) {
+        super(scope, id, props);
+        this.addToRolePolicy({
+          Effect: "Allow",
+          Resource: this.resourceArns.derive(Array.from),
+          Action: [
+            "ssm:DeleteParameters",
+            "ssm:ListTagsForResource",
+            "ssm:GetParameters",
+            "ssm:PutParameter"
+          ]
+        });
+      }
+      /**
+       * Add a resource ARN to the existing policy statement
+       */
+      addResourceArn(arn) {
+        this.resourceArns.add(arn);
+      }
+    };
+    ExportWriter = class _ExportWriter extends import_constructs13.Construct {
+      static getOrCreate(scope, uniqueId, props) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportWriter(stack, uniqueId, {
+          region: props.region
+        });
+      }
+      _references = Box.fromMap();
+      provider;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const region = props.region ?? stack.region;
+        const resourceType = "Custom::CrossRegionExportWriter";
+        this.provider = CRProvider.getOrCreateProvider(this, resourceType);
+        this.addRegionToPolicy(region);
+        const properties = {
+          region,
+          exports: this._references.derive((m) => Object.fromEntries(m))
+        };
+        new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken: this.provider.serviceToken,
+          properties: {
+            WriterProps: properties
+          }
+        });
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exportName the unique name associated with the export
+       * @param reference the value that will be exported
+       * @returns a reference to the reader custom resource
+       */
+      exportValue(exportName, reference, importStack) {
+        const parameterName = this.registerExport(exportName, reference, importStack);
+        const ref = new CfnDynamicReference("ssm" /* SSM */, parameterName);
+        return this.addToExportReader(parameterName, ref, importStack);
+      }
+      /**
+       * Register a reference with the writer without creating an ExportReader in the consumer stack.
+       * Used during the "both" transitional state where the producer still writes to SSM
+       * but the consumer reads via Fn::GetStackOutput instead of the ExportReader.
+       */
+      exportValueWriteOnly(exportName, reference, importStack) {
+        this.registerExport(exportName, reference, importStack);
+      }
+      registerExport(exportName, reference, importStack) {
+        const stack = stackOf(this);
+        const parameterName = `/${SSM_EXPORT_PATH_PREFIX}${exportName}`;
+        this._references.put(parameterName, stack.resolve(reference.toString()));
+        this.addRegionToPolicy(importStack.region);
+        return parameterName;
+      }
+      /**
+       * Add a resource arn for the consuming stack region
+       * Each writer could be writing to multiple regions and needs
+       * permissions to each region.
+       *
+       * If the region is not resolved then do not add anything.
+       */
+      addRegionToPolicy(region) {
+        if (!Token.isUnresolved(region)) {
+          this.provider.addResourceArn(stackOf(this).formatArn({
+            service: "ssm",
+            resource: "parameter",
+            region,
+            resourceName: `${SSM_EXPORT_PATH_PREFIX}*`
+          }));
+        }
+      }
+      /**
+       * Add the export to the export reader which is created in the importing stack
+       */
+      addToExportReader(exportName, exportValueRef, importStack) {
+        const readerConstructName = makeUniqueId(["ExportsReader"]);
+        const exportReader = ExportReader.getOrCreate(importStack.nestedStackParent ?? importStack, readerConstructName);
+        this.addRegionToPolicy(importStack.region);
+        return exportReader.importValue(exportName, exportValueRef);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/linked-queue.ts
+var LinkedQueue;
+var init_linked_queue = __esm({
+  "../../aws-cdk-lib/core/lib/private/linked-queue.ts"() {
+    "use strict";
+    LinkedQueue = class {
+      head;
+      last;
+      constructor(items) {
+        if (items) {
+          for (const x of items) {
+            this.push(x);
+          }
+        }
+      }
+      push(value) {
+        const node = { value };
+        if (this.head && this.last) {
+          this.last.next = node;
+          this.last = node;
+        } else {
+          this.head = node;
+          this.last = node;
+        }
+      }
+      shift() {
+        if (!this.head) {
+          return void 0;
+        }
+        const ret = this.head.value;
+        this.head = this.head.next;
+        if (!this.head) {
+          this.last = void 0;
+        }
+        return ret;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/construct-iteration.ts
+function* iterateDfsPreorder(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    stack.push(...next.node.children.reverse());
+    yield next;
+    next = stack.pop();
+  }
+}
+function* iterateTemplateCfnResources(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    if (NESTED_STACK_TYPE.isMarked(next)) {
+      if (next.nestedStackResource) {
+        yield next.nestedStackResource;
+      }
+    } else if (STACK_TYPE.isMarked(next) || STAGE_TYPE.isMarked(next)) {
+    } else {
+      if (isCfnResource(next)) {
+        yield next;
+      }
+      stack.push(...next.node.children.reverse());
+    }
+    next = stack.pop();
+  }
+}
+function* iterateDfsPostorder(root) {
+  const stack = [{ visit: root }];
+  let next = stack.pop();
+  while (next) {
+    if ("yield" in next) {
+      yield next.yield;
+    } else {
+      stack.push({ yield: next.visit });
+      stack.push(...next.visit.node.children.reverse().map((visit2) => ({ visit: visit2 })));
+    }
+    next = stack.pop();
+  }
+}
+function* iterateBfs(root) {
+  const queue = new LinkedQueue([{ construct: root, parent: void 0 }]);
+  let next = queue.shift();
+  while (next) {
+    for (const child of next.construct.node.children) {
+      queue.push({ construct: child, parent: next.construct });
+    }
+    yield next;
+    next = queue.shift();
+  }
+}
+var init_construct_iteration = __esm({
+  "../../aws-cdk-lib/core/lib/private/construct-iteration.ts"() {
+    "use strict";
+    init_core_construct_finders();
+    init_linked_queue();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts
+var ReferenceStrength;
+var init_cross_stack_reference_strength = __esm({
+  "../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_cx_api();
+    init_literal_string();
+    ReferenceStrength = /* @__PURE__ */ ((ReferenceStrength2) => {
+      ReferenceStrength2["STRONG"] = "strong";
+      ReferenceStrength2["WEAK"] = "weak";
+      ReferenceStrength2["BOTH"] = "both";
+      return ReferenceStrength2;
+    })(ReferenceStrength || {});
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/refs.ts
+function crossStackReferenceStrength(scope) {
+  const value = scope.node.tryGetContext(DEFAULT_CROSS_STACK_REFERENCES);
+  if (value === void 0 || value === null) {
+    return void 0;
+  }
+  if (Object.values(ReferenceStrength).includes(value)) {
+    return value;
+  }
+  throw new UnscopedValidationError(
+    lit`InvalidReferenceStrength`,
+    `Invalid value for ${DEFAULT_CROSS_STACK_REFERENCES}: "${value}". Must be "strong", "weak", or "both".`
+  );
+}
+function resolveReferences(scope) {
+  resolveReferencesInElements(iterateDfsPreorder(scope));
+}
+function resolveReferencesInElements(elements) {
+  const { refs, overrides } = findAllReferences(elements);
+  for (const { source, value } of refs) {
+    const consumer = stackOf(source);
+    if (!value.hasValueForStack(consumer)) {
+      const resolved = resolveValue(consumer, value);
+      value.assignValueForStack(consumer, resolved);
+    }
+  }
+  for (const { source, override } of overrides) {
+    const consumer = stackOf(source);
+    const resolved = resolveValue(consumer, override.reference, override.strength);
+    override.assignValue(resolved);
+  }
+}
+function resolveValue(consumer, reference, strengthOverride) {
+  const producer = stackOf(reference.target);
+  const producerAccount = !Token.isUnresolved(producer.account) ? producer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const producerRegion = !Token.isUnresolved(producer.region) ? producer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const consumerAccount = !Token.isUnresolved(consumer.account) ? consumer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const consumerRegion = !Token.isUnresolved(consumer.region) ? consumer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const resourceStrength = CfnResource.isCfnResource(reference.target) ? reference.target._crossStackReferenceStrengthOverride : void 0;
+  const strength = strengthOverride ?? resourceStrength ?? crossStackReferenceStrength(consumer) ?? "strong";
+  if (producer === consumer) {
+    return reference;
+  }
+  if (producer.node.root !== consumer.node.root) {
+    throw new UnscopedValidationError(lit`CannotReferenceAcrossApps`, "Cannot reference across apps. Consuming and producing stacks must be defined within the same CDK app.");
+  }
+  if (consumer.nestedStackParent && isNested(consumer, producer)) {
+    const parameterValue = resolveValue(consumer.nestedStackParent, reference);
+    return createNestedStackParameter(consumer, reference, parameterValue);
+  }
+  if (producer.nested) {
+    const outputValue = createNestedStackOutput(producer, reference);
+    const resolvedValue = resolveValue(consumer, outputValue);
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(resolvedValue)));
+    } else {
+      return resolvedValue;
+    }
+  }
+  const appRoot = consumer.node.root;
+  if (!appRoot[WEAK_REFS_WARNING_EMITTED]) {
+    const contextStrength = crossStackReferenceStrength(consumer);
+    if (contextStrength === void 0) {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesDefaultStrong",
+        `No cross-stack-reference strength configured, defaulting to "strong". We recommend you set feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" to "both", then deploy everywhere, then set it to "weak". Alternatively, set it to "strong" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    } else if (contextStrength === "both") {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesBothTransitional",
+        `Feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" currently set to "both". This is a transitory state. After you have finished deploying this application everywhere, set it to "weak". (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    }
+  }
+  if (producerAccount !== consumerAccount) {
+    if (strength === "strong") {
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossAccountRefsAreAlwaysWeak",
+        `Strong references requested, but cross-account references can only be weak. Acknowledge this warning or set "${DEFAULT_CROSS_STACK_REFERENCES}" to "weak" to remove this message.`
+      );
+    }
+    if (consumer.synthesizer.cloudFormationExecutionRole == null) {
+      throw new UnscopedValidationError(
+        lit`NoCfnExecutionRoleForCrossAccountRefs`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Could not find a CloudFormation execution role for the consumer stack. Use a stack synthesizer that provides a CloudFormation execution role, such as DefaultStackSynthesizer (that uses the role from the bootstrap stack), or one that you can customize, such as BootstraplessSynthesizer.`
+      );
+    }
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    const producerStackArn = stackOf(reference.target).formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      consumerRoleArn: consumer.synthesizer.cloudFormationExecutionRole,
+      producerAccount,
+      producerRegion,
+      producerStackArn
+    });
+  }
+  if (producerRegion !== consumerRegion) {
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    consumer.addStackDependency(
+      producer,
+      `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+    );
+    if (strength === "strong") {
+      return createCrossRegionImportValue(reference, consumer);
+    }
+    if (strength === "both") {
+      createCrossRegionExportOnly(reference, consumer);
+    }
+    const producerStackArn = producer.formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      producerStackArn
+    });
+  }
+  consumer.addStackDependency(
+    producer,
+    `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+  );
+  if (strength === "strong") {
+    return createImportValue(reference);
+  }
+  if (strength === "both") {
+    createImportValue(reference);
+  }
+  return createGetStackOutput(reference, {});
+}
+function renderReference(ref) {
+  return `{${ref.target.node.path}[${ref.displayName}]}`;
+}
+function findAllReferences(elements) {
+  const refs = new Array();
+  const overrides = new Array();
+  for (const consumer of elements) {
+    if (!CfnElement.isCfnElement(consumer)) {
+      continue;
+    }
+    try {
+      const tokens = findTokens(consumer, () => consumer._toCloudFormation());
+      for (const token of tokens) {
+        if (CustomCoupledReference.isCustomCoupledReference(token)) {
+          overrides.push({ source: consumer, override: token });
+        } else if (CfnReference.isCfnReference(token)) {
+          refs.push({ source: consumer, value: token });
+        }
+      }
+    } catch (e) {
+      if (e.type === "CfnSynthesisError") {
+        continue;
+      }
+      throw e;
+    }
+  }
+  return { refs, overrides };
+}
+function createImportValue(reference) {
+  const exportingStack = stackOf(reference.target);
+  let importExpr;
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    importExpr = exportingStack.exportStringListValue(reference);
+    return Tokenization.reverseList(importExpr);
+  }
+  importExpr = exportingStack.exportValue(reference);
+  return Tokenization.reverseCompleteString(importExpr);
+}
+function getOrCreateExportWriter(reference, importStack) {
+  const referenceStack = stackOf(reference.target);
+  const exportingStack = referenceStack.nestedStackParent ?? referenceStack;
+  const exportable = getExportable(exportingStack, reference);
+  const id = JSON.stringify(exportingStack.resolve(exportable));
+  const exportName = generateExportName(importStack, reference, id);
+  if (Token.isUnresolved(exportName)) {
+    throw new UnscopedValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(exportingStack.resolve(exportName))}`);
+  }
+  const writerConstructName = makeUniqueId(["ExportsWriter", importStack.region]);
+  const exportWriter = ExportWriter.getOrCreate(exportingStack, writerConstructName, {
+    region: importStack.region
+  });
+  return { exportWriter, exportName };
+}
+function createCrossRegionImportValue(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  const exported = exportWriter.exportValue(exportName, reference, importStack);
+  if (importStack.nestedStackParent) {
+    return createNestedStackParameter(importStack, exported, exported);
+  }
+  return exported;
+}
+function createCrossRegionExportOnly(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  exportWriter.exportValueWriteOnly(exportName, reference, importStack);
+}
+function generateExportName(importStack, reference, id) {
+  const referenceStack = stackOf(reference.target);
+  const components = [
+    referenceStack.stackName ?? "",
+    referenceStack.region,
+    id
+  ];
+  const prefix = `${importStack.nestedStackParent?.stackName ?? importStack.stackName}/`;
+  const localPart = makeUniqueId(components);
+  const maxLength = 900;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function createGetStackOutputRole(scope, id, props) {
+  const consumers = /* @__PURE__ */ new Set([props.consumerRoleArn]);
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Role",
+    properties: {
+      AssumeRolePolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Principal: {
+              AWS: Lazy.any({
+                produce: () => {
+                  const arns = [...consumers].map((arn) => ({ "Fn::Sub": arn }));
+                  return arns.length === 1 ? arns[0] : arns;
+                }
+              })
+            },
+            Action: [
+              "sts:AssumeRole"
+            ]
+          }
+        ]
+      }
+    }
+  });
+  ROLE_CONSUMERS.set(resource, consumers);
+  const roleName = Names.uniqueResourceName(resource, {
+    maxLength: 64
+  });
+  resource.addPropertyOverride("RoleName", roleName);
+  const roleArn = stackOf(scope).formatArn({
+    service: "iam",
+    resource: "role",
+    resourceName: roleName,
+    account: props.producerAccount,
+    arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+    region: ""
+  });
+  return { resource, roleRef: { roleArn, roleName } };
+}
+function addConsumerToRole(roleResource, consumerRoleArn) {
+  const consumers = ROLE_CONSUMERS.get(roleResource);
+  if (consumers) {
+    consumers.add(consumerRoleArn);
+  }
+}
+function createGetStackOutputPolicy(scope, id, props) {
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Policy",
+    properties: {
+      Roles: [Fn.ref(props.role.logicalId)],
+      PolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Action: "cloudformation:DescribeStacks",
+            Resource: props.producerStackArn
+          }
+        ]
+      }
+    }
+  });
+  const policyName = Names.uniqueResourceName(resource, {
+    maxLength: 128
+  });
+  resource.addPropertyOverride("PolicyName", policyName);
+  return { resource, policyRef: { policyId: policyName } };
+}
+function createGetStackOutput(reference, options = {}) {
+  const exportingStack = stackOf(reference.target);
+  const resolved = JSON.stringify(exportingStack.resolve(reference));
+  const outputId = "Output" + resolved;
+  const roleId = "GetStackOutputRole";
+  const policyId = "GetStackOutputPolicy";
+  function createScope(stack) {
+    const scopeName = "Publish";
+    let scope2 = stack.node.tryFindChild(scopeName);
+    if (scope2 === void 0) {
+      scope2 = new import_constructs14.Construct(stack, scopeName);
+    }
+    return scope2;
+  }
+  const scope = createScope(exportingStack);
+  let output = scope.node.tryFindChild(outputId);
+  if (output == null) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(scope, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(scope, outputId, {
+        value: Token.asString(reference)
+      });
+    }
+  }
+  let roleArn = void 0;
+  if (options.consumerRoleArn) {
+    let roleResource = scope.node.tryFindChild(roleId);
+    if (roleResource == null) {
+      const { resource, roleRef } = createGetStackOutputRole(scope, roleId, {
+        consumerRoleArn: options.consumerRoleArn,
+        producerAccount: options.producerAccount
+      });
+      roleResource = resource;
+      roleArn = roleRef.roleArn;
+    } else {
+      addConsumerToRole(roleResource, options.consumerRoleArn);
+      const roleName = Names.uniqueResourceName(roleResource, { maxLength: 64 });
+      roleArn = exportingStack.formatArn({
+        service: "iam",
+        resource: "role",
+        resourceName: roleName,
+        account: options.producerAccount,
+        arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+        region: ""
+      });
+    }
+    let policy = scope.node.tryFindChild(policyId);
+    if (policy == null) {
+      createGetStackOutputPolicy(scope, policyId, {
+        role: roleResource,
+        producerStackArn: options.producerStackArn
+      });
+    }
+  }
+  const getStackOutput = Fn.getStackOutput(exportingStack.stackName, output.logicalId, exportingStack.region, roleArn);
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, getStackOutput));
+  }
+  return Tokenization.reverseCompleteString(getStackOutput);
+}
+function getExportable(stack, reference) {
+  if (CfnElement.isCfnElement(reference.target)) {
+    reference.target._lockLogicalId();
+  }
+  return referenceNestedStackValueInParent(reference, stack);
+}
+function createNestedStackParameter(nested, reference, value) {
+  const paramId = generateUniqueId(nested, reference, "reference-to-");
+  let param = nested.node.tryFindChild(paramId);
+  if (!param) {
+    param = new CfnParameter(nested, paramId, { type: "String" });
+    if (!("setParameter" in nested)) {
+      throw new UnscopedValidationError(lit`NestedStackMustHaveSetParameter`, 'assertion failed: nested stack should have a "setParameter" method');
+    }
+    nested.setParameter(param.logicalId, Token.asString(value));
+  }
+  return param.value;
+}
+function createNestedStackOutput(producer, reference) {
+  const outputId = generateUniqueId(producer, reference);
+  let output = producer.node.tryFindChild(outputId);
+  if (!output) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(producer, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(producer, outputId, { value: Token.asString(reference) });
+    }
+  }
+  if (!producer.nestedStackResource) {
+    throw new AssumptionError(lit`AssertionFailed`, "assertion failed");
+  }
+  return producer.nestedStackResource.getAtt(`Outputs.${output.logicalId}`);
+}
+function referenceNestedStackValueInParent(reference, targetStack) {
+  let currentStack = stackOf(reference.target);
+  if (currentStack !== targetStack && !isNested(currentStack, targetStack)) {
+    throw new UnscopedValidationError(lit`ReferencedResourceMustBeInTargetStack`, `Referenced resource must be in stack '${targetStack.node.path}', got '${reference.target.node.path}'`);
+  }
+  const isNestedListReference = currentStack !== targetStack && reference.typeHint === "string-list" /* STRING_LIST */;
+  while (currentStack !== targetStack) {
+    reference = createNestedStackOutput(stackOf(reference.target), reference);
+    currentStack = stackOf(reference.target);
+  }
+  if (isNestedListReference) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(reference)));
+  }
+  return reference;
+}
+function isNested(nested, parent) {
+  if (nested.nestedStackParent === parent) {
+    return true;
+  }
+  if (!nested.nestedStackParent) {
+    return false;
+  }
+  return isNested(nested.nestedStackParent, parent);
+}
+function generateUniqueId(stack, ref, prefix = "") {
+  return stack.resolve(`${prefix}${Names.nodeUniqueId(ref.target.node)}${ref.displayName}`);
+}
+var import_constructs14, STRING_LIST_REFERENCE_DELIMITER, WEAK_REFS_WARNING_EMITTED, OVERRIDDEN_REFERENCE_SYMBOL, CustomCoupledReference, ROLE_CONSUMERS;
+var init_refs = __esm({
+  "../../aws-cdk-lib/core/lib/private/refs.ts"() {
+    "use strict";
+    import_constructs14 = __toESM(require_lib4());
+    init_cfn_reference();
+    init_intrinsic();
+    init_resolve();
+    init_uniqueid();
+    init_cx_api();
+    init_annotations();
+    init_arn();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_export_writer_provider();
+    init_errors();
+    init_lazy();
+    init_names();
+    init_token();
+    init_type_hints();
+    init_construct_iteration();
+    init_cfn_resource();
+    init_literal_string();
+    init_cross_stack_reference_strength();
+    init_core_construct_finders();
+    STRING_LIST_REFERENCE_DELIMITER = "||";
+    WEAK_REFS_WARNING_EMITTED = /* @__PURE__ */ Symbol.for("@aws-cdk/core.WeakRefsWarningEmitted");
+    OVERRIDDEN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CustomCoupledReference");
+    CustomCoupledReference = class extends Intrinsic {
+      static isCustomCoupledReference(x) {
+        return OVERRIDDEN_REFERENCE_SYMBOL in x;
+      }
+      reference;
+      strength;
+      resolvedValue;
+      constructor(reference, strength) {
+        super(reference, { typeHint: reference.typeHint });
+        this.reference = reference;
+        this.strength = strength;
+        Object.defineProperty(this, OVERRIDDEN_REFERENCE_SYMBOL, { value: true });
+      }
+      assignValue(value) {
+        this.resolvedValue = value;
+      }
+      resolve(context) {
+        if (this.resolvedValue) {
+          return this.resolvedValue.resolve(context);
+        }
+        return this.reference.resolve(context);
+      }
+    };
+    ROLE_CONSUMERS = /* @__PURE__ */ new WeakMap();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deps.ts
+function reifyConstructDependencies(root) {
+  for (const dependency of registeredConstructDependencies(root)) {
+    dispatchDependencyOperation(dependency);
+  }
+}
+function dispatchDependencyOperation(op) {
+  if (op.source === op.target) {
+    return;
+  }
+  if (process.env.CDK_DEBUG_DEPS) {
+    if (op.kind === "add") {
+      console.error(`[CDK_DEBUG_DEPS] applying dependency ${op.reason}`);
+    } else {
+      console.error(`[CDK_DEBUG_DEPS] removing construct dependency ${op.source.node.path} -> ${op.target.node.path}`);
+    }
+  }
+  const sourcePath = dependencyContainerPath(op.source);
+  const targetPath = dependencyContainerPath(op.target);
+  const parentI = sharedDependencyContainerIndex(sourcePath, targetPath);
+  validateNoStagesCrossed(sourcePath, targetPath, op);
+  validateNoParentChildDependency(sourcePath, targetPath, parentI, op);
+  if (parentI < sourcePath.length - 1 && parentI < targetPath.length - 1) {
+    doDispatch(sourcePath[parentI + 1], targetPath[parentI + 1], op);
+  }
+}
+function validateNoStagesCrossed(sourcePath, targetPath, op) {
+  const sourceStage = last(sourcePath.filter((c) => c.type === "stage"))?.construct;
+  const targetStage = last(targetPath.filter((c) => c.type === "stage"))?.construct;
+  if (sourceStage !== targetStage) {
+    throw new UnscopedValidationError(lit`NoCrossStageDependency`, `You cannot have a dependency from '${op.source.node.path}' (in ${describeStage(sourceStage)}) to '${op.target.node.path}' (in ${describeStage(targetStage)}): dependency cannot cross stage boundaries`);
+  }
+}
+function validateNoParentChildDependency(sourcePath, targetPath, parentI, op) {
+  if (parentI === targetPath.length - 1) {
+    throw new UnscopedValidationError(lit`CannotDependOnParent`, `'${op.source.node.path}' cannot depend on parent ${targetPath[parentI].type} '${op.target.node.path}'`);
+  }
+  void sourcePath;
+}
+function doDispatch(source, target, op) {
+  switch (source.type) {
+    case "stage":
+      break;
+    case "stack":
+      if (target.type === "stack") {
+        if (op.kind === "add") {
+          source.construct._addStackDependency(target.construct, op);
+        } else {
+          source.construct._removeStackDependency(target.construct, op);
+        }
+      }
+      break;
+    case "nested-stack":
+    case "construct":
+      for (const sourceResource of dependingResourcesFor(source)) {
+        for (const targetResource of dependingResourcesFor(target)) {
+          if (sourceResource === targetResource) {
+            continue;
+          }
+          if (op.kind === "add") {
+            sourceResource._addResourceDependency(targetResource);
+          } else {
+            sourceResource._removeResourceDependency(targetResource);
+          }
+        }
+      }
+      break;
+  }
+}
+function* dependingResourcesFor(construct) {
+  if (construct.type === "nested-stack" && construct.construct.nestedStackResource) {
+    yield construct.construct.nestedStackResource;
+  }
+  if (construct.type === "construct") {
+    yield* iterateTemplateCfnResources(construct.construct);
+  }
+}
+function dependencyContainerPath(start) {
+  const ret = [];
+  let construct = start;
+  while (construct) {
+    let candidate;
+    if (STAGE_TYPE.isMarked(construct)) {
+      candidate = { type: "stage", construct };
+    } else if (NESTED_STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "nested-stack", construct };
+    } else if (STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "stack", construct };
+    } else {
+      if (ret.length === 0) {
+        candidate = { type: "construct", construct };
+      }
+    }
+    if (candidate && (ret.length === 0 || contains(candidate, ret[ret.length - 1]))) {
+      ret.push(candidate);
+    }
+    construct = construct.node.scope;
+  }
+  return ret.reverse();
+  function contains(container, child) {
+    switch (child.type) {
+      case "stage":
+        return container.type == "stage";
+      case "nested-stack":
+        return container.type == "nested-stack" || container.type == "stack";
+      case "stack":
+        return container.type == "stage";
+      case "construct":
+        return true;
+    }
+  }
+}
+function sharedDependencyContainerIndex(as, bs) {
+  const minLength = Math.min(as.length, bs.length);
+  for (let i = minLength - 1; i >= 0; i--) {
+    if (as[i].construct === bs[i].construct) {
+      return i;
+    }
+  }
+  return -1;
+}
+function* registeredConstructDependencies(root) {
+  const found = /* @__PURE__ */ new Map();
+  for (const source of iterateDfsPreorder(root)) {
+    for (const dependable of source.node.dependencies) {
+      for (const target of import_constructs15.Dependable.of(dependable).dependencyRoots) {
+        if (source === target) {
+          continue;
+        }
+        let foundTargets = found.get(source);
+        if (!foundTargets) {
+          found.set(source, foundTargets = /* @__PURE__ */ new Set());
+        }
+        if (!foundTargets.has(target)) {
+          yield { kind: "add", source, target, reason: `<${source.node.path}>.node.addDependency(<${target.node.path}>)` };
+          foundTargets.add(target);
+        }
+      }
+    }
+  }
+}
+function describeStage(assembly) {
+  if (!assembly) {
+    return "an unrooted construct tree";
+  }
+  if (!assembly.parentStage) {
+    return "the App";
+  }
+  return `Stage '${assembly.node.path}'`;
+}
+function last(xs) {
+  return xs[xs.length - 1];
+}
+var import_constructs15;
+var init_deps = __esm({
+  "../../aws-cdk-lib/core/lib/private/deps.ts"() {
+    "use strict";
+    import_constructs15 = __toESM(require_lib4());
+    init_errors();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/prepare-app.ts
+function writePropertyAssignmentMetadata(root) {
+  if (!debugModeEnabled()) return;
+  const lookupTableFor = (c) => ({
+    cfnPropertyName: (cdkPropertyName) => c.cfnPropertyName(cdkPropertyName)
+  });
+  for (const consumer of iterateDfsPreorder(root)) {
+    if (CfnResource.isCfnResource(consumer)) {
+      writePropertyAssignmentMetadataForConstruct(consumer, () => consumer._toCloudFormation(), lookupTableFor(consumer));
+    }
+  }
+}
+function prepareApp(root) {
+  reifyConstructDependencies(root);
+  resolveReferences(root);
+  writePropertyAssignmentMetadata(root);
+  const nestedStacks = findAllNestedStacks(root);
+  if (nestedStacks.length > 0) {
+    for (const nested of nestedStacks) {
+      defineNestedStackAsset(nested);
+    }
+    resolveReferencesInElements(nestedStacks.map((s) => s.nestedStackResource));
+  }
+}
+function defineNestedStackAsset(nestedStack) {
+  const nested = nestedStack;
+  nested._prepareTemplateAsset();
+}
+function findAllNestedStacks(root) {
+  const result = new Array();
+  const includeStack = (stack) => {
+    if (!STACK_TYPE.isMarked(stack)) {
+      return false;
+    }
+    if (!stack.nested) {
+      return false;
+    }
+    if (!stageOf(stack)) {
+      return true;
+    }
+    return stageOf(stack) === root;
+  };
+  for (const node of iterateDfsPostorder(root)) {
+    if (includeStack(node)) {
+      result.push(node);
+    }
+  }
+  return result;
+}
+var init_prepare_app = __esm({
+  "../../aws-cdk-lib/core/lib/private/prepare-app.ts"() {
+    "use strict";
+    init_refs();
+    init_cfn_resource();
+    init_debug();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_deps();
+    init_resolve();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/validation-id.ts
+function parseValidationId(id) {
+  let nsSeparator = void 0;
+  const braceStack = [];
+  for (let i = 0; i < id.length; i++) {
+    const c = id[i];
+    if (c === ":" && id[i + 1] === ":" && braceStack.length === 0) {
+      if (nsSeparator !== void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. The '::' delimiter is reserved for separating the prefix from the rule name (e.g. 'prefix::RuleName').`);
+      }
+      nsSeparator = i;
+      i += 1;
+    } else if (["]", ")", "}"].includes(c)) {
+      const lastBrace = braceStack.pop();
+      if (lastBrace === void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Unmatched closing brace '${c}' at position ${i}.`);
+      }
+      if (lastBrace === "(" && c !== ")" || lastBrace === "[" && c !== "]" || lastBrace === "{" && c !== "}") {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Mismatched closing brace '${c}' at position ${i}. Expected '${lastBrace === "(" ? ")" : lastBrace === "[" ? "]" : "}"}'.`);
+      }
+    } else if (["[", "(", "{"].includes(c)) {
+      braceStack.push(c);
+    }
+  }
+  if (nsSeparator === void 0) {
+    return { ruleId: id };
+  }
+  if (nsSeparator === 0) {
+    throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Missing plugin name before '::'.`);
+  }
+  const namespace = id.substring(0, nsSeparator);
+  const ruleId = id.substring(nsSeparator + 2);
+  return { namespace, ruleId };
+}
+function normalizeValidationId(id, defaultNamespace) {
+  const p = typeof id === "string" ? parseValidationId(id) : id;
+  const parsed = {
+    namespace: p.namespace?.replaceAll(/ /g, "-"),
+    ruleId: p.ruleId.replaceAll(/ /g, "-")
+  };
+  if (parsed.namespace && ["annotation", "Construct-Annotations"].includes(parsed.namespace)) {
+    return `${ANNOTATION_PLUGIN_NAMESPACE}::${parsed.ruleId}`;
+  }
+  return `${parsed.namespace ?? defaultNamespace}::${parsed.ruleId}`;
+}
+function normalizeValidationIdForAnnotations(id) {
+  return normalizeValidationId(id, ANNOTATION_PLUGIN_NAMESPACE);
+}
+function namespaceFromPluginName(pluginName) {
+  if (pluginName === ANNOTATION_PLUGIN_NAME) {
+    return ANNOTATION_PLUGIN_NAMESPACE;
+  }
+  return pluginName.replace(/ /g, "-");
+}
+function pluginNameFromNamespace(namespace) {
+  return namespace.replace(/-/g, " ");
+}
+var ANNOTATION_PLUGIN_NAME, ANNOTATION_PLUGIN_NAMESPACE;
+var init_validation_id = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/validation-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ANNOTATION_PLUGIN_NAME = "Construct Annotations";
+    ANNOTATION_PLUGIN_NAMESPACE = namespaceFromPluginName("Annotation");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/annotation-plugin.ts
+function collectAnnotationReport(root) {
+  const myNamespace = namespaceFromPluginName(AnnotationPlugin.NAME);
+  const violationMap = /* @__PURE__ */ new Map();
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR) {
+        continue;
+      }
+      const severity = entry.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR ? "error" : "warning";
+      let { message, ruleName } = splitDescriptionAndId(String(entry.data));
+      if (ruleName && !ruleName.includes("::")) {
+        ruleName = `${myNamespace}::${ruleName}`;
+      }
+      let templatePath;
+      try {
+        templatePath = path13.join(stageOf(construct)?.outdir ?? ".", stackOf(construct).templateFile);
+      } catch (e) {
+      }
+      const resourceLogicalId = CfnResource.isCfnResource(construct) ? stackOf(construct).resolve(construct.logicalId) : void 0;
+      const violatingResource = {
+        constructPath: construct.node.path,
+        resourceLogicalId,
+        templatePath,
+        locations: []
+      };
+      const key = `${ruleName}|${severity}|${message}`;
+      const existing = violationMap.get(key);
+      if (existing) {
+        existing.violatingResources.push(violatingResource);
+      } else {
+        violationMap.set(key, {
+          ruleName: ruleName ?? `${myNamespace}::${severity}-annotation`,
+          description: message,
+          severity,
+          violatingResources: [violatingResource],
+          ruleMetadata: {
+            "cdk:annotation": "true"
+          }
+        });
+      }
+    }
+  }
+  const violations = Array.from(violationMap.values());
+  if (violations.length === 0) {
+    return void 0;
+  }
+  const hasErrors = violations.some((v) => v.severity === "error");
+  return new AnnotationPlugin({
+    pluginName: AnnotationPlugin.NAME,
+    success: !hasErrors,
+    violations,
+    metadata: {
+      "cdk:annotations": "true"
+    }
+  });
+}
+function splitDescriptionAndId(message) {
+  const ackMatch = message.match(/\[ack: ([^\]]+)\]/);
+  if (ackMatch) {
+    return { message: message.replace(ackMatch[0], "").trim(), ruleName: ackMatch[1] };
+  }
+  const idMatch = message.match(/\(([^()]+::[^()]+)\)$/);
+  if (idMatch) {
+    return { message: message.replace(idMatch[0], "").trim(), ruleName: idMatch[1] };
+  }
+  return { message };
+}
+var path13, AnnotationPlugin;
+var init_annotation_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/private/annotation-plugin.ts"() {
+    "use strict";
+    path13 = __toESM(require("path"));
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_cloud_assembly_schema();
+    init_cfn_resource();
+    init_validation_id();
+    AnnotationPlugin = class _AnnotationPlugin {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      static NAME = "Construct Annotations";
+      name = _AnnotationPlugin.NAME;
+      validate(_context) {
+        return this.report;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts
+function collectAcknowledgedRules(root) {
+  const rules = {};
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type === "aws:cdk:acknowledged-rules" && entry.data) {
+        for (const [id, reason] of Object.entries(entry.data)) {
+          const rule = { reason, acknowledgedId: id, acknowledgedAt: construct.node.path, acknowledgedStackTrace: entry.trace?.join("\n") };
+          const pathMap = rules[id] ??= {};
+          pathMap[rule.acknowledgedAt] = rule;
+        }
+      }
+    }
+  }
+  return rules;
+}
+var init_collect_acknowledged_rule_ids = __esm({
+  "../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts"() {
+    "use strict";
+    init_construct_iteration();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js
+var require_bindings_wasm = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js"(exports2) {
+    var WasmCelEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCelEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcelengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcelengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcelengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcelengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCelEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcelengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcelengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCelEngine.prototype[Symbol.dispose] = WasmCelEngine.prototype.free;
+    exports2.WasmCelEngine = WasmCelEngine;
+    var WasmCompositeEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCompositeEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcompositeengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcompositeengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcompositeengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {CompositeEngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcompositeengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCompositeEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcompositeengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcompositeengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCompositeEngine.prototype[Symbol.dispose] = WasmCompositeEngine.prototype.free;
+    exports2.WasmCompositeEngine = WasmCompositeEngine;
+    var WasmRegoEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmRegoEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmregoengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmregoengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmregoengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmregoengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmRegoEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmregoengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmregoengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmRegoEngine.prototype[Symbol.dispose] = WasmRegoEngine.prototype.free;
+    exports2.WasmRegoEngine = WasmRegoEngine;
+    var WasmSchemaValidator = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSchemaValidatorFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmschemavalidator_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmschemavalidator_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {SchemaValidatorConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmschemavalidator_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmSchemaValidatorFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @returns {number}
+       */
+      schemaCount() {
+        const ret = wasm.wasmschemavalidator_schemaCount(this.__wbg_ptr);
+        return ret >>> 0;
+      }
+      /**
+       * @param {WasmSemanticModel} model
+       * @param {string | null} [region]
+       * @returns {any}
+       */
+      validate(model, region) {
+        _assertClass(model, WasmSemanticModel);
+        var ptr0 = isLikeNone(region) ? 0 : passStringToWasm0(region, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        var len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmschemavalidator_validate(this.__wbg_ptr, model.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSchemaValidator.prototype[Symbol.dispose] = WasmSchemaValidator.prototype.free;
+    exports2.WasmSchemaValidator = WasmSchemaValidator;
+    var WasmSemanticModel = class _WasmSemanticModel {
+      static __wrap(ptr) {
+        const obj = Object.create(_WasmSemanticModel.prototype);
+        obj.__wbg_ptr = ptr;
+        WasmSemanticModelFinalization.register(obj, obj.__wbg_ptr, obj);
+        return obj;
+      }
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSemanticModelFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmsemanticmodel_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      conditions() {
+        const ret = wasm.wasmsemanticmodel_conditions(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      description() {
+        const ret = wasm.wasmsemanticmodel_description(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      formatVersion() {
+        const ret = wasm.wasmsemanticmodel_formatVersion(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {any}
+       */
+      outputs() {
+        const ret = wasm.wasmsemanticmodel_outputs(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      parameters() {
+        const ret = wasm.wasmsemanticmodel_parameters(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @returns {WasmSemanticModel}
+       */
+      static parse(template) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_parse(ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return _WasmSemanticModel.__wrap(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      resources() {
+        const ret = wasm.wasmsemanticmodel_resources(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {string} path
+       * @returns {any}
+       */
+      sourceLocation(path23) {
+        const ptr0 = passStringToWasm0(path23, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_sourceLocation(this.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      toDiagnosticModel() {
+        const ret = wasm.wasmsemanticmodel_toDiagnosticModel(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      transforms() {
+        const ret = wasm.wasmsemanticmodel_transforms(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSemanticModel.prototype[Symbol.dispose] = WasmSemanticModel.prototype.free;
+    exports2.WasmSemanticModel = WasmSemanticModel;
+    function init() {
+      wasm.init();
+    }
+    exports2.init = init;
+    function version3() {
+      let deferred1_0;
+      let deferred1_1;
+      try {
+        const ret = wasm.version();
+        deferred1_0 = ret[0];
+        deferred1_1 = ret[1];
+        return getStringFromWasm0(ret[0], ret[1]);
+      } finally {
+        wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+      }
+    }
+    exports2.version = version3;
+    function __wbg_get_imports() {
+      const import0 = {
+        __proto__: null,
+        __wbg_Error_92b29b0548f8b746: function(arg0, arg1) {
+          const ret = Error(getStringFromWasm0(arg0, arg1));
+          return ret;
+        },
+        __wbg_Number_9a4e0ecb0fa16705: function(arg0) {
+          const ret = Number(arg0);
+          return ret;
+        },
+        __wbg_String_8564e559799eccda: function(arg0, arg1) {
+          const ret = String(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_bigint_get_as_i64_d968e41184ae354f: function(arg0, arg1) {
+          const v = arg1;
+          const ret = typeof v === "bigint" ? v : void 0;
+          getDataViewMemory0().setBigInt64(arg0 + 8 * 1, isLikeNone(ret) ? BigInt(0) : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_boolean_get_fa956cfa2d1bd751: function(arg0) {
+          const v = arg0;
+          const ret = typeof v === "boolean" ? v : void 0;
+          return isLikeNone(ret) ? 16777215 : ret ? 1 : 0;
+        },
+        __wbg___wbindgen_debug_string_c25d447a39f5578f: function(arg0, arg1) {
+          const ret = debugString(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_in_aca499c5de7ff5e5: function(arg0, arg1) {
+          const ret = arg0 in arg1;
+          return ret;
+        },
+        __wbg___wbindgen_is_bigint_2f76dc55065b4273: function(arg0) {
+          const ret = typeof arg0 === "bigint";
+          return ret;
+        },
+        __wbg___wbindgen_is_function_1ff95bcc5517c252: function(arg0) {
+          const ret = typeof arg0 === "function";
+          return ret;
+        },
+        __wbg___wbindgen_is_object_a27215656b807791: function(arg0) {
+          const val2 = arg0;
+          const ret = typeof val2 === "object" && val2 !== null;
+          return ret;
+        },
+        __wbg___wbindgen_is_string_ea5e6cc2e4141dfe: function(arg0) {
+          const ret = typeof arg0 === "string";
+          return ret;
+        },
+        __wbg___wbindgen_is_undefined_c05833b95a3cf397: function(arg0) {
+          const ret = arg0 === void 0;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_eq_e659fcf7b0e32763: function(arg0, arg1) {
+          const ret = arg0 === arg1;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_loose_eq_db4c3b15f63fc170: function(arg0, arg1) {
+          const ret = arg0 == arg1;
+          return ret;
+        },
+        __wbg___wbindgen_number_get_394265ed1e1b84ee: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "number" ? obj : void 0;
+          getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_string_get_b0ca35b86a603356: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "string" ? obj : void 0;
+          var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          var len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_throw_344f42d3211c4765: function(arg0, arg1) {
+          throw new Error(getStringFromWasm0(arg0, arg1));
+        },
+        __wbg_call_8a2dd23819f8a60a: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = arg0.call(arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_done_89b2b13e91a60321: function(arg0) {
+          const ret = arg0.done;
+          return ret;
+        },
+        __wbg_entries_015dc610cd81ede0: function(arg0) {
+          const ret = Object.entries(arg0);
+          return ret;
+        },
+        __wbg_error_a6fa202b58aa1cd3: function(arg0, arg1) {
+          let deferred0_0;
+          let deferred0_1;
+          try {
+            deferred0_0 = arg0;
+            deferred0_1 = arg1;
+            console.error(getStringFromWasm0(arg0, arg1));
+          } finally {
+            wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
+          }
+        },
+        __wbg_getRandomValues_3f44b700395062e5: function() {
+          return handleError(function(arg0, arg1) {
+            globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
+          }, arguments);
+        },
+        __wbg_getTime_d6f070c088c9b5ed: function(arg0) {
+          const ret = arg0.getTime();
+          return ret;
+        },
+        __wbg_get_507a50627bffa49b: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_c7eb1f358a7654df: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = Reflect.get(arg0, arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_get_unchecked_6e0ad6d2a41b06f6: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_with_ref_key_6412cf3094599694: function(arg0, arg1) {
+          const ret = arg0[arg1];
+          return ret;
+        },
+        __wbg_instanceof_ArrayBuffer_4480b9e0068a8adb: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof ArrayBuffer;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Map_e5b5e3db98422fcc: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Map;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Uint8Array_309b927aaf7a3fc7: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Uint8Array;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_isArray_0677c962b281d01a: function(arg0) {
+          const ret = Array.isArray(arg0);
+          return ret;
+        },
+        __wbg_isSafeInteger_04f36e4056f1b851: function(arg0) {
+          const ret = Number.isSafeInteger(arg0);
+          return ret;
+        },
+        __wbg_iterator_6f722e4a93058b71: function() {
+          const ret = Symbol.iterator;
+          return ret;
+        },
+        __wbg_length_1f0964f4a5e2c6d8: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_length_370319915dc99107: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_new_0_3da9e97f24fc69be: function() {
+          const ret = /* @__PURE__ */ new Date();
+          return ret;
+        },
+        __wbg_new_227d7c05414eb861: function() {
+          const ret = new Error();
+          return ret;
+        },
+        __wbg_new_32b398fb48b6d94a: function() {
+          const ret = new Array();
+          return ret;
+        },
+        __wbg_new_7796ffc7ed656783: function() {
+          const ret = /* @__PURE__ */ new Map();
+          return ret;
+        },
+        __wbg_new_cd45aabdf6073e84: function(arg0) {
+          const ret = new Uint8Array(arg0);
+          return ret;
+        },
+        __wbg_new_da52cf8fe3429cb2: function() {
+          const ret = new Object();
+          return ret;
+        },
+        __wbg_next_6dbf2c0ac8cde20f: function(arg0) {
+          const ret = arg0.next;
+          return ret;
+        },
+        __wbg_next_71f2aa1cb3d1e37e: function() {
+          return handleError(function(arg0) {
+            const ret = arg0.next();
+            return ret;
+          }, arguments);
+        },
+        __wbg_now_e7c6795a7f81e10f: function(arg0) {
+          const ret = arg0.now();
+          return ret;
+        },
+        __wbg_performance_3fcf6e32a7e1ed0a: function(arg0) {
+          const ret = arg0.performance;
+          return ret;
+        },
+        __wbg_prototypesetcall_4770620bbe4688a0: function(arg0, arg1, arg2) {
+          Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), arg2);
+        },
+        __wbg_set_575dd786d51585f8: function(arg0, arg1, arg2) {
+          const ret = arg0.set(arg1, arg2);
+          return ret;
+        },
+        __wbg_set_6be42768c690e380: function(arg0, arg1, arg2) {
+          arg0[arg1] = arg2;
+        },
+        __wbg_set_8a16b38e4805b298: function(arg0, arg1, arg2) {
+          arg0[arg1 >>> 0] = arg2;
+        },
+        __wbg_stack_3b0d974bbf31e44f: function(arg0, arg1) {
+          const ret = arg1.stack;
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg_static_accessor_GLOBAL_4ef717fb391d88b7: function() {
+          const ret = typeof global === "undefined" ? null : global;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_GLOBAL_THIS_8d1badc68b5a74f4: function() {
+          const ret = typeof globalThis === "undefined" ? null : globalThis;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_SELF_146583524fe1469b: function() {
+          const ret = typeof self === "undefined" ? null : self;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_WINDOW_f2829a2234d7819e: function() {
+          const ret = typeof window === "undefined" ? null : window;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_value_a5d5488a9589444a: function(arg0) {
+          const ret = arg0.value;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000001: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000002: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000003: function(arg0, arg1) {
+          const ret = getStringFromWasm0(arg0, arg1);
+          return ret;
+        },
+        __wbindgen_cast_0000000000000004: function(arg0) {
+          const ret = BigInt.asUintN(64, arg0);
+          return ret;
+        },
+        __wbindgen_init_externref_table: function() {
+          const table = wasm.__wbindgen_externrefs;
+          const offset = table.grow(4);
+          table.set(0, void 0);
+          table.set(offset + 0, void 0);
+          table.set(offset + 1, null);
+          table.set(offset + 2, true);
+          table.set(offset + 3, false);
+        }
+      };
+      return {
+        __proto__: null,
+        "./bindings_wasm_bg.js": import0
+      };
+    }
+    var WasmCelEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcelengine_free(ptr, 1));
+    var WasmCompositeEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcompositeengine_free(ptr, 1));
+    var WasmRegoEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmregoengine_free(ptr, 1));
+    var WasmSchemaValidatorFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmschemavalidator_free(ptr, 1));
+    var WasmSemanticModelFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmsemanticmodel_free(ptr, 1));
+    function addToExternrefTable0(obj) {
+      const idx = wasm.__externref_table_alloc();
+      wasm.__wbindgen_externrefs.set(idx, obj);
+      return idx;
+    }
+    function _assertClass(instance, klass) {
+      if (!(instance instanceof klass)) {
+        throw new Error(`expected instance of ${klass.name}`);
+      }
+    }
+    function debugString(val2) {
+      const type = typeof val2;
+      if (type == "number" || type == "boolean" || val2 == null) {
+        return `${val2}`;
+      }
+      if (type == "string") {
+        return `"${val2}"`;
+      }
+      if (type == "symbol") {
+        const description = val2.description;
+        if (description == null) {
+          return "Symbol";
+        } else {
+          return `Symbol(${description})`;
+        }
+      }
+      if (type == "function") {
+        const name = val2.name;
+        if (typeof name == "string" && name.length > 0) {
+          return `Function(${name})`;
+        } else {
+          return "Function";
+        }
+      }
+      if (Array.isArray(val2)) {
+        const length = val2.length;
+        let debug = "[";
+        if (length > 0) {
+          debug += debugString(val2[0]);
+        }
+        for (let i = 1; i < length; i++) {
+          debug += ", " + debugString(val2[i]);
+        }
+        debug += "]";
+        return debug;
+      }
+      const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val2));
+      let className;
+      if (builtInMatches && builtInMatches.length > 1) {
+        className = builtInMatches[1];
+      } else {
+        return toString.call(val2);
+      }
+      if (className == "Object") {
+        try {
+          return "Object(" + JSON.stringify(val2) + ")";
+        } catch (_) {
+          return "Object";
+        }
+      }
+      if (val2 instanceof Error) {
+        return `${val2.name}: ${val2.message}
+${val2.stack}`;
+      }
+      return className;
+    }
+    function getArrayU8FromWasm0(ptr, len) {
+      ptr = ptr >>> 0;
+      return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
+    }
+    var cachedDataViewMemory0 = null;
+    function getDataViewMemory0() {
+      if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || cachedDataViewMemory0.buffer.detached === void 0 && cachedDataViewMemory0.buffer !== wasm.memory.buffer) {
+        cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
+      }
+      return cachedDataViewMemory0;
+    }
+    function getStringFromWasm0(ptr, len) {
+      return decodeText(ptr >>> 0, len);
+    }
+    var cachedUint8ArrayMemory0 = null;
+    function getUint8ArrayMemory0() {
+      if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
+        cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
+      }
+      return cachedUint8ArrayMemory0;
+    }
+    function handleError(f, args) {
+      try {
+        return f.apply(this, args);
+      } catch (e) {
+        const idx = addToExternrefTable0(e);
+        wasm.__wbindgen_exn_store(idx);
+      }
+    }
+    function isLikeNone(x) {
+      return x === void 0 || x === null;
+    }
+    function passArray8ToWasm0(arg, malloc) {
+      const ptr = malloc(arg.length * 1, 1) >>> 0;
+      getUint8ArrayMemory0().set(arg, ptr / 1);
+      WASM_VECTOR_LEN = arg.length;
+      return ptr;
+    }
+    function passStringToWasm0(arg, malloc, realloc) {
+      if (realloc === void 0) {
+        const buf = cachedTextEncoder.encode(arg);
+        const ptr2 = malloc(buf.length, 1) >>> 0;
+        getUint8ArrayMemory0().subarray(ptr2, ptr2 + buf.length).set(buf);
+        WASM_VECTOR_LEN = buf.length;
+        return ptr2;
+      }
+      let len = arg.length;
+      let ptr = malloc(len, 1) >>> 0;
+      const mem = getUint8ArrayMemory0();
+      let offset = 0;
+      for (; offset < len; offset++) {
+        const code = arg.charCodeAt(offset);
+        if (code > 127) break;
+        mem[ptr + offset] = code;
+      }
+      if (offset !== len) {
+        if (offset !== 0) {
+          arg = arg.slice(offset);
+        }
+        ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
+        const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
+        const ret = cachedTextEncoder.encodeInto(arg, view);
+        offset += ret.written;
+        ptr = realloc(ptr, len, offset, 1) >>> 0;
+      }
+      WASM_VECTOR_LEN = offset;
+      return ptr;
+    }
+    function takeFromExternrefTable0(idx) {
+      const value = wasm.__wbindgen_externrefs.get(idx);
+      wasm.__externref_table_dealloc(idx);
+      return value;
+    }
+    var cachedTextDecoder = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true });
+    cachedTextDecoder.decode();
+    function decodeText(ptr, len) {
+      return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
+    }
+    var cachedTextEncoder = new TextEncoder();
+    if (!("encodeInto" in cachedTextEncoder)) {
+      cachedTextEncoder.encodeInto = function(arg, view) {
+        const buf = cachedTextEncoder.encode(arg);
+        view.set(buf);
+        return {
+          read: arg.length,
+          written: buf.length
+        };
+      };
+    }
+    var WASM_VECTOR_LEN = 0;
+    var wasmPath = `${__dirname}/bindings_wasm_bg.wasm`;
+    var wasmBytes = require("fs").readFileSync(wasmPath);
+    var wasmModule = new WebAssembly.Module(wasmBytes);
+    var wasmInstance = new WebAssembly.Instance(wasmModule, __wbg_get_imports());
+    var wasm = wasmInstance.exports;
+    wasm.__wbindgen_start();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js
+var require_cloudformation_validate = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CompositeEngine = exports2.CelEngine = exports2.RegoEngine = exports2.SchemaValidator = exports2.TemplateModel = exports2.SchemaFile = exports2.RuleFile = exports2.TemplateContent = exports2.TemplateFile = exports2.DEFAULT_TEMPLATE_NAME = exports2.AwsCliCommand = void 0;
+    exports2.version = version3;
+    var fs_1 = require("fs");
+    var AwsCliCommand = class {
+      constructor(serviceName, operationName, parameters, options = {}) {
+        this.serviceName = serviceName;
+        this.operationName = operationName;
+        if (!isPlainRecord(parameters)) {
+          throw new TypeError("parameters must be a plain object with string keys");
+        }
+        const copiedParameters = /* @__PURE__ */ Object.create(null);
+        for (const key of Reflect.ownKeys(parameters)) {
+          if (typeof key !== "string") {
+            throw new TypeError("request parameter names must be strings");
+          }
+          const descriptor = Object.getOwnPropertyDescriptor(parameters, key);
+          if (descriptor === void 0 || !("value" in descriptor)) {
+            throw new TypeError(`request parameter ${JSON.stringify(key)} must be a value property`);
+          }
+          copiedParameters[key] = descriptor.value;
+        }
+        this.parameters = copiedParameters;
+        this.servicePrefix = options.servicePrefix;
+        this.httpMethod = options.httpMethod;
+        this.isReadOnly = options.isReadOnly;
+      }
+    };
+    exports2.AwsCliCommand = AwsCliCommand;
+    var MIN_SIGNED_64 = -(1n << 63n);
+    var MAX_SIGNED_64 = (1n << 63n) - 1n;
+    var MAX_UNSIGNED_64 = (1n << 64n) - 1n;
+    var MAX_REQUEST_VALUE_DEPTH = 64;
+    var DATE_GET_TIME = Date.prototype.getTime;
+    var DATE_TO_ISO_STRING = Date.prototype.toISOString;
+    var UINT8_ARRAY_FOR_EACH = Uint8Array.prototype.forEach;
+    function isPlainRecord(value) {
+      if (value === null || typeof value !== "object" || Array.isArray(value)) {
+        return false;
+      }
+      const prototype = Object.getPrototypeOf(value);
+      return prototype === Object.prototype || prototype === null;
+    }
+    function unsupportedValue(typeName) {
+      return { type: "UNSUPPORTED", type_name: typeName };
+    }
+    function encodeAwsCliValue(value, depth = 0, ancestors = /* @__PURE__ */ new Set()) {
+      if (depth > MAX_REQUEST_VALUE_DEPTH) {
+        return unsupportedValue("recursion depth exceeded");
+      }
+      if (value === null) {
+        return { type: "NULL" };
+      }
+      if (typeof value === "boolean") {
+        return { type: "BOOLEAN", value };
+      }
+      if (typeof value === "number") {
+        if (!Number.isFinite(value)) {
+          return unsupportedValue("non-finite floating-point number");
+        }
+        if (Number.isInteger(value)) {
+          return Number.isSafeInteger(value) ? { type: "INTEGER", value } : unsupportedValue("integer outside the JavaScript safe range");
+        }
+        return { type: "NUMBER", value };
+      }
+      if (typeof value === "bigint") {
+        if (value >= MIN_SIGNED_64 && value <= MAX_SIGNED_64) {
+          return { type: "INTEGER", value };
+        }
+        if (value >= 0n && value <= MAX_UNSIGNED_64) {
+          return { type: "UNSIGNED_INTEGER", value };
+        }
+        return unsupportedValue("integer outside the 64-bit request range");
+      }
+      if (typeof value === "string") {
+        return { type: "STRING", value };
+      }
+      if (value instanceof Uint8Array) {
+        const bytes = [];
+        try {
+          UINT8_ARRAY_FOR_EACH.call(value, (byte) => {
+            bytes.push(byte);
+          });
+        } catch {
+          return unsupportedValue("invalid Uint8Array");
+        }
+        return { type: "BYTES", value: bytes };
+      }
+      if (value instanceof Date) {
+        try {
+          const timestamp = DATE_GET_TIME.call(value);
+          return Number.isFinite(timestamp) ? { type: "STRING", value: DATE_TO_ISO_STRING.call(value) } : unsupportedValue("invalid Date");
+        } catch {
+          return unsupportedValue("invalid Date");
+        }
+      }
+      if (Array.isArray(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic array");
+        }
+        ancestors.add(value);
+        try {
+          const lengthDescriptor = Object.getOwnPropertyDescriptor(value, "length");
+          if (lengthDescriptor === void 0 || !("value" in lengthDescriptor) || !Number.isSafeInteger(lengthDescriptor.value) || lengthDescriptor.value < 0) {
+            return unsupportedValue("array with invalid length");
+          }
+          const items = [];
+          for (let index = 0; index < lengthDescriptor.value; index += 1) {
+            const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
+            if (descriptor === void 0) {
+              return unsupportedValue("sparse array");
+            }
+            if (!("value" in descriptor)) {
+              return unsupportedValue("array with accessor elements");
+            }
+            items.push(encodeAwsCliValue(descriptor.value, depth + 1, ancestors));
+          }
+          return { type: "ARRAY", items };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      if (isPlainRecord(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic object");
+        }
+        ancestors.add(value);
+        try {
+          const entries = /* @__PURE__ */ Object.create(null);
+          for (const key of Reflect.ownKeys(value)) {
+            if (typeof key !== "string") {
+              return unsupportedValue("mapping with non-string keys");
+            }
+            const descriptor = Object.getOwnPropertyDescriptor(value, key);
+            if (descriptor === void 0 || !("value" in descriptor)) {
+              return unsupportedValue("mapping with accessor properties");
+            }
+            entries[key] = encodeAwsCliValue(descriptor.value, depth + 1, ancestors);
+          }
+          return { type: "OBJECT", entries };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      return unsupportedValue(typeof value);
+    }
+    function toWireAwsCliCommand(request2) {
+      const parameters = /* @__PURE__ */ Object.create(null);
+      for (const [name, value] of Object.entries(request2.parameters)) {
+        try {
+          parameters[name] = encodeAwsCliValue(value);
+        } catch {
+          parameters[name] = unsupportedValue("request value inspection failed");
+        }
+      }
+      return {
+        serviceName: request2.serviceName,
+        operationName: request2.operationName,
+        parameters,
+        ...request2.servicePrefix === void 0 ? {} : { servicePrefix: request2.servicePrefix },
+        ...request2.httpMethod === void 0 ? {} : { httpMethod: request2.httpMethod },
+        ...request2.isReadOnly === void 0 ? {} : { isReadOnly: request2.isReadOnly }
+      };
+    }
+    function fromWireAwsCliCommandValidation(validation) {
+      const template = validation.template;
+      return {
+        ...validation,
+        templateSource: validation.templateSource ?? null,
+        report: validation.report ?? null,
+        template: template == null ? null : Uint8Array.from(template)
+      };
+    }
+    var bridge = require_bindings_wasm();
+    exports2.DEFAULT_TEMPLATE_NAME = "template";
+    var TemplateFile2 = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readBytes() {
+        return (0, fs_1.readFileSync)(this.path);
+      }
+    };
+    exports2.TemplateFile = TemplateFile2;
+    var TemplateContent = class {
+      constructor(content, name = exports2.DEFAULT_TEMPLATE_NAME) {
+        this.content = content;
+        this.name = name;
+        if (typeof content !== "string" && !(content instanceof Uint8Array)) {
+          throw new TypeError("template content must be a string or a Uint8Array");
+        }
+      }
+      readBytes() {
+        return typeof this.content === "string" ? new TextEncoder().encode(this.content) : this.content;
+      }
+    };
+    exports2.TemplateContent = TemplateContent;
+    function templateLabel(template) {
+      return template instanceof TemplateContent ? template.name : template.path;
+    }
+    var RuleFile = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.RuleFile = RuleFile;
+    var SchemaFile = class {
+      constructor(path23, typeName) {
+        this.path = path23;
+        this.typeName = typeName;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.SchemaFile = SchemaFile;
+    function toExternalRuleSources(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof RuleFile ? { name: source.path, content: source.readContent() } : source
+      );
+    }
+    function toAdditionalSchemas(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof SchemaFile ? { typeName: source.typeName, schema: source.readContent() } : source
+      );
+    }
+    function toWasmEngineConfig(config) {
+      return {
+        customRules: toExternalRuleSources(config?.customRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmCompositeEngineConfig(config) {
+      return {
+        regoRules: toExternalRuleSources(config?.regoRules),
+        celRules: toExternalRuleSources(config?.celRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmSchemaValidatorConfig(config) {
+      return {
+        additionalSchemas: toAdditionalSchemas(config?.additionalSchemas)
+      };
+    }
+    var TemplateModel = class {
+      constructor(template) {
+        this.inner = bridge.WasmSemanticModel.parse(template.readBytes());
+      }
+      resources() {
+        return this.inner.resources();
+      }
+      parameters() {
+        return this.inner.parameters();
+      }
+      outputs() {
+        return this.inner.outputs();
+      }
+      conditions() {
+        return this.inner.conditions();
+      }
+      transforms() {
+        return this.inner.transforms();
+      }
+      formatVersion() {
+        return this.inner.formatVersion();
+      }
+      description() {
+        return this.inner.description();
+      }
+      toDiagnosticModel() {
+        return this.inner.toDiagnosticModel();
+      }
+      sourceLocation(path23) {
+        return this.inner.sourceLocation(path23);
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.TemplateModel = TemplateModel;
+    var SchemaValidator = class {
+      constructor(config) {
+        this.inner = new bridge.WasmSchemaValidator(toWasmSchemaValidatorConfig(config));
+      }
+      listRules() {
+        return this.inner.listRules();
+      }
+      schemaCount() {
+        return this.inner.schemaCount();
+      }
+      validate(template, region) {
+        const model = bridge.WasmSemanticModel.parse(template.readBytes());
+        try {
+          return this.inner.validate(model, region).diagnostics;
+        } finally {
+          model.free();
+        }
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.SchemaValidator = SchemaValidator;
+    function createEngineClass(WasmClass, toWasmConfig) {
+      return class {
+        constructor(config) {
+          this.inner = new WasmClass(toWasmConfig(config));
+        }
+        validateTemplate(template, config) {
+          return this.inner.validateTemplate(template.readBytes(), config ?? {}, templateLabel(template));
+        }
+        validateStandard(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "STANDARD" });
+        }
+        validateDetailed(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "DETAILED" });
+        }
+        validateAwsCliCommand(request2) {
+          if (!(request2 instanceof AwsCliCommand)) {
+            throw new TypeError("request must be an AwsCliCommand");
+          }
+          return fromWireAwsCliCommandValidation(this.inner.validateAwsCliCommand(toWireAwsCliCommand(request2)));
+        }
+        listRules() {
+          return this.inner.listRules();
+        }
+        engineName() {
+          return this.inner.engineName();
+        }
+        free() {
+          this.inner.free();
+        }
+      };
+    }
+    exports2.RegoEngine = createEngineClass(bridge.WasmRegoEngine, toWasmEngineConfig);
+    exports2.CelEngine = createEngineClass(bridge.WasmCelEngine, toWasmEngineConfig);
+    exports2.CompositeEngine = createEngineClass(bridge.WasmCompositeEngine, toWasmCompositeEngineConfig);
+    function version3() {
+      return bridge.version();
+    }
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts
+function mapSeverity(severity) {
+  switch (severity) {
+    // FIXME: Temporarily map FATAL to ERROR; FATALs are not suppressible but there are still a lot
+    // of false positives in the engine, and we cannot afford to accidentally present a customer with
+    // an accidentally unsupressible fatal.
+    case "FATAL":
+      return "error";
+    case "ERROR":
+      return "error";
+    case "WARN":
+      return "warning";
+    case "INFO":
+      return "informational";
+    case "DEBUG":
+      return "debug";
+    default:
+      return "warning";
+  }
+}
+function defaultRegoRules() {
+  const rulesDir = path14.join(__dirname, "rules");
+  return fs10.readdirSync(rulesDir).filter((f) => f.endsWith(".rego")).sort().map((f) => ({
+    name: f,
+    content: fs10.readFileSync(path14.join(rulesDir, f), "utf-8")
+  }));
+}
+function isContainedWithin(root, child) {
+  const rel = path14.relative(root, child);
+  return !rel.startsWith("..") && !path14.isAbsolute(rel);
+}
+function loadSchemasFromDirectory(dir) {
+  const schemas = [];
+  if (!fs10.existsSync(dir)) {
+    return schemas;
+  }
+  const rootReal = fs10.realpathSync(dir);
+  function walk(currentDir, depth) {
+    if (depth > MAX_SCHEMA_DIRECTORY_DEPTH) {
+      throw new UnscopedValidationError(
+        lit`SchemaLoadError`,
+        `[CloudFormation Validate] Schema directory exceeds maximum depth of ${MAX_SCHEMA_DIRECTORY_DEPTH}: ${currentDir}`
+      );
+    }
+    const entries = fs10.readdirSync(currentDir, { withFileTypes: true });
+    for (const entry of entries) {
+      const fullPath = path14.join(currentDir, entry.name);
+      if (entry.isSymbolicLink()) {
+        throw new UnscopedValidationError(
+          lit`SchemaLoadError`,
+          `[CloudFormation Validate] Symbolic link found in schema directory (not allowed): ${fullPath}`
+        );
+      }
+      if (entry.isDirectory()) {
+        const resolved = fs10.realpathSync(fullPath);
+        if (!isContainedWithin(rootReal, resolved)) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Path escapes schema root directory: ${fullPath} resolves to ${resolved}`
+          );
+        }
+        walk(fullPath, depth + 1);
+      } else if (entry.isFile() && entry.name.endsWith(".json")) {
+        const content = fs10.readFileSync(fullPath, "utf-8");
+        let parsed;
+        try {
+          parsed = JSON.parse(content);
+        } catch (e) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Invalid JSON in schema file: ${fullPath}: ${e}`
+          );
+        }
+        if (!parsed.typeName) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Schema file missing required "typeName" field: ${fullPath}`
+          );
+        }
+        schemas.push({
+          typeName: parsed.typeName,
+          schema: content
+        });
+      }
+    }
+  }
+  walk(rootReal, 0);
+  if (schemas.length > 0) {
+    const typeNames = schemas.map((s) => s.typeName).join(", ");
+    process.stderr.write(`[CloudFormation Validate] Loaded ${schemas.length} schema overlay(s): ${typeNames}
+`);
+  }
+  return schemas;
+}
+var fs10, path14, import_cloudformation_validate, VALIDATE_METRIC, DIAGNOSTICS_METRIC, CloudFormationValidatePlugin, IGNORE_RULES, MAX_SCHEMA_DIRECTORY_DEPTH;
+var init_cloudformation_validate_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts"() {
+    "use strict";
+    fs10 = __toESM(require("fs"));
+    path14 = __toESM(require("path"));
+    import_cloudformation_validate = __toESM(require_cloudformation_validate());
+    init_errors();
+    init_literal_string();
+    init_perf();
+    VALIDATE_METRIC = "CloudFormationValidate.validate";
+    DIAGNOSTICS_METRIC = "CloudFormationValidate.diagnostics";
+    CloudFormationValidatePlugin = class _CloudFormationValidatePlugin {
+      /**
+       * The default name of this plugin
+       */
+      static PLUGIN_NAME = "CloudFormation Validate";
+      /**
+       * Return a global singleton instance of this plugin.
+       *
+       * This is used because initializing the engine is somewhat expensive, which makes
+       * a noticeable difference in tests.
+       *
+       * @internal
+       */
+      static _singletonInstance() {
+        if (!_CloudFormationValidatePlugin._instance) {
+          _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin();
+        }
+        return _CloudFormationValidatePlugin._instance;
+      }
+      /**
+       * Pre-configure the singleton with specific props before first access.
+       * Used by test infrastructure to inject schema overlays without per-App registration.
+       *
+       * Must be called before any App synthesis triggers `_singletonInstance()`.
+       * Calling this when a singleton already exists replaces it.
+       *
+       * @internal
+       */
+      static _configureSingleton(props) {
+        _CloudFormationValidatePlugin._disposeSingleton();
+        _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin(props);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory and forget the instance
+       *
+       * @internal
+       */
+      static _disposeSingleton() {
+        _CloudFormationValidatePlugin._instance?._dispose();
+        _CloudFormationValidatePlugin._instance = void 0;
+      }
+      static _instance;
+      name = _CloudFormationValidatePlugin.PLUGIN_NAME;
+      engine;
+      disposed = false;
+      constructor(props = {}) {
+        const config = {};
+        const regoRules = [
+          ...props.includeDefaultRules ?? true ? defaultRegoRules() : [],
+          ...props.regoRules ?? []
+        ];
+        if (regoRules.length > 0) {
+          config.regoRules = regoRules;
+        }
+        if (props.guardRules) {
+          config.guardRules = props.guardRules;
+        }
+        if (props._additionalSchemasDirectory) {
+          config.schemaValidatorConfig = {
+            additionalSchemas: loadSchemasFromDirectory(props._additionalSchemasDirectory)
+          };
+        }
+        this.engine = new import_cloudformation_validate.CompositeEngine(config);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory
+       *
+       * @internal
+       */
+      _dispose() {
+        if (this.disposed) {
+          return;
+        }
+        this.disposed = true;
+        this.engine.free();
+      }
+      get version() {
+        return (0, import_cloudformation_validate.version)();
+      }
+      get ruleIds() {
+        return this.engine.listRules().filter((r) => !IGNORE_RULES.has(r.id) && r.severity !== "INFO" && r.severity !== "DEBUG").map((r) => r.id);
+      }
+      validate(context) {
+        const violations = [];
+        for (const { stackConstructPath, templatePath, accountId, region } of context.stackTemplates) {
+          const templateFile = new import_cloudformation_validate.TemplateFile(templatePath);
+          const report = (() => {
+            var _stack = [];
+            try {
+              const _span = __using(_stack, profileSpan(VALIDATE_METRIC, { telemetry: true }));
+              return this.engine.validateTemplate(templateFile, {
+                detailLevel: "STANDARD",
+                pseudoParameterOverrides: {
+                  accountId,
+                  region
+                },
+                exclude: {
+                  ids: [...IGNORE_RULES],
+                  services: [{
+                    // CDK still synthesizes AWS::AutoScaling::LaunchConfiguration for applications using
+                    // the legacy launch-configuration behavior. Auto Scaling remains deployable despite
+                    // its maintenance-mode classification, so suppress only its W3697 lifecycle warning
+                    // rather than hiding lifecycle findings for every service.
+                    // 
+                    ruleId: "W3697",
+                    service: "AWS::AutoScaling"
+                  }]
+                },
+                severityLevel: "WARN"
+              });
+            } catch (_) {
+              var _error = _, _hasError = true;
+            } finally {
+              __callDispose(_stack, _error, _hasError);
+            }
+          })();
+          recordPerformanceEntry(DIAGNOSTICS_METRIC, {
+            count: report.diagnostics.length,
+            telemetry: true
+          });
+          const diagnosticsBySeverity = /* @__PURE__ */ new Map();
+          for (const diagnostic of report.diagnostics) {
+            diagnosticsBySeverity.set(diagnostic.severity, (diagnosticsBySeverity.get(diagnostic.severity) ?? 0) + 1);
+          }
+          for (const [severity, count2] of diagnosticsBySeverity) {
+            recordPerformanceEntry(`${DIAGNOSTICS_METRIC}.${severity}`, {
+              count: count2,
+              telemetry: true
+            });
+          }
+          for (const diagnostic of report.diagnostics) {
+            const severity = mapSeverity(diagnostic.severity);
+            const resourceLogicalId = diagnostic.entity?.entityType === "Resource" ? diagnostic.entity.logicalId : void 0;
+            const violatingResource = {
+              resourceLogicalId,
+              // If this is not about any resources, best we can do is point it to the stack
+              constructPath: !resourceLogicalId ? stackConstructPath : void 0,
+              templatePath,
+              locations: diagnostic.propertyPath ? [diagnostic.propertyPath] : []
+            };
+            const propertyPathPefix = diagnostic.propertyPath ? `${diagnostic.propertyPath.replace(/^Properties\./, "")}: ` : "";
+            const description = `${propertyPathPefix}${diagnostic.message}`;
+            const existing = violations.find(
+              (v) => v.ruleName === diagnostic.ruleId && v.severity === severity && v.description === description
+            );
+            if (existing) {
+              existing.violatingResources.push(violatingResource);
+            } else {
+              violations.push({
+                ruleName: diagnostic.ruleId,
+                description,
+                severity,
+                fix: diagnostic.suggestedFix,
+                violatingResources: [violatingResource],
+                ruleMetadata: diagnostic.category ? { category: diagnostic.category } : void 0
+              });
+            }
+          }
+        }
+        return {
+          success: violations.every((v) => v.severity !== "error" && v.severity !== "fatal"),
+          violations
+        };
+      }
+    };
+    IGNORE_RULES = /* @__PURE__ */ new Set([
+      // WHAT: 'DependsOn' already implied by a 'GetAtt', remove the DependsOn.
+      // WHY: CDK adds both. It doesn't hurt to have both, and it's more effort to remove them.
+      // Will be silenced forever.
+      "W3005",
+      // WHAT: Optimize the format string of Fn::Sub
+      // WHY: CDK is generating these, humans are not authoring them.
+      // Will be silenced forever.
+      "W1020",
+      // WHAT: Fn::GetStackOutput is not an allowed direct source for Fn::Split.
+      // WHY: CDK generates this nesting when deserializing weak string-list cross-stack references,
+      // and customers cannot control the generated expression.
+      // https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-split.html
+      "E1018",
+      // WHAT: Hardcoded ARNs
+      // WHY: Hardcoding an ARN is part of the behavior of some constructs (e.g., setting up multi-account DynamoDB table replicas)
+      "W9002",
+      // WHAT: Hardcoded account IDs in ARNs
+      // WHY: Hardcoding an account ID in ARNs is commonly done in CDK when we are setting up large applications that
+      // span accounts.
+      "W9013",
+      // WHAT: built-in function not recognized
+      // WHY: there are intrinsic functions that the plugin doesn't know about that are nevertheless valid.
+      // This diagnostic is intended to protect against typos in templates, but since the intrinsics
+      // are generated by CDK the chances of mistyping them is tiny, and so this diagnostic is more verbose
+      // than it's worth.
+      "W1103"
+    ]);
+    MAX_SCHEMA_DIRECTORY_DEPTH = 5;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts
+function propertyAssignmentMatchesPropertyPath(meta, propertyPath) {
+  return propertyPath === `Properties.${meta.data.propertyName}` || propertyPath.startsWith(`Properties.${meta.data.propertyName}.`);
+}
+function isPropertyMutationMetadataEntry(entry) {
+  return entry.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT;
+}
+var import_cloud_assembly_schema2, ConstructTree, STACK_TRACE_HINT;
+var init_construct_tree = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts"() {
+    "use strict";
+    import_cloud_assembly_schema2 = __toESM(require_lib2());
+    init_app2();
+    init_cfn_resource();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_runtime_info();
+    ConstructTree = class {
+      /**
+       * A cache of the ConstructTrace by node.path. Each construct
+       */
+      _constructByPath = /* @__PURE__ */ new Map();
+      _constructByTemplatePathAndLogicalId = /* @__PURE__ */ new Map();
+      root;
+      constructor(root) {
+        this.root = App.of(root) ?? root;
+        this._constructByPath.set(this.root.node.path, root);
+        for (const child of iterateDfsPreorder(this.root)) {
+          this._constructByPath.set(child.node.path, child);
+          const defaultChild = child.node.defaultChild;
+          if (defaultChild && CfnResource.isCfnResource(defaultChild)) {
+            const stack = stackOf(defaultChild);
+            const logicalId = stack.resolve(defaultChild.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+        for (const child of iterateDfsPreorder(this.root)) {
+          if (CfnResource.isCfnResource(child)) {
+            const stack = stackOf(child);
+            const logicalId = stackOf(child).resolve(child.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+      }
+      setLogicalId(stack, logicalId, child) {
+        if (!this._constructByTemplatePathAndLogicalId.has(stack.templateFile)) {
+          this._constructByTemplatePathAndLogicalId.set(stack.templateFile, /* @__PURE__ */ new Map([[logicalId, child]]));
+        } else {
+          this._constructByTemplatePathAndLogicalId.get(stack.templateFile)?.set(logicalId, child);
+        }
+      }
+      /**
+       * Turn a construct path into a trace
+       *
+       * The trace contains all constructs from the root to the construct indicated
+       * by the given path. It does not include the root itself.
+       */
+      traceFromPath(constructPath) {
+        const components = constructPath.replace(/^\//, "").split("/");
+        const rootPath = [];
+        const stackTraces = [];
+        let node = this.root;
+        while (node) {
+          rootPath.push(this.constructTraceLevelFromTreeNode(node));
+          stackTraces.push(this.creationTrace(node)?.split("\n"));
+          const component = components.shift();
+          node = component !== void 0 ? node.node.tryFindChild(component) : void 0;
+        }
+        rootPath.shift();
+        stackTraces.shift();
+        let ret = {
+          ...rootPath[rootPath.length - 1],
+          location: stackLocationAt(rootPath.length - 1)
+        };
+        for (let i = rootPath.length - 2; i >= 0; i--) {
+          ret = {
+            ...rootPath[i],
+            child: ret,
+            location: stackLocationAt(i)
+          };
+        }
+        return ret;
+        function stackLocationAt(i) {
+          let j = i;
+          while (j < rootPath.length && !stackTraces[j]) {
+            j++;
+          }
+          if (j === rootPath.length) {
+            return STACK_TRACE_HINT;
+          }
+          return stackTraces[j]?.[0 + j - i] ?? STACK_TRACE_HINT;
+        }
+      }
+      constructTraceLevelFromConstructPath(constructPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return void 0;
+        }
+        return this.constructTraceLevelFromTreeNode(construct);
+      }
+      /**
+       * Convert a Tree Metadata Node into a ConstructTrace object, except its child and stack trace info
+       *
+       * FIXME: This could probably use the construct tree directly.
+       */
+      constructTraceLevelFromTreeNode(node) {
+        const constructInfo = constructInfoFromConstruct(node);
+        return {
+          id: node.node.id,
+          path: node.node.path,
+          construct: constructInfo?.fqn,
+          libraryVersion: constructInfo?.version
+        };
+      }
+      creationTraceByPath(path23) {
+        const construct = this.getConstructByPath(path23);
+        if (!construct) {
+          return void 0;
+        }
+        return this.creationTrace(construct);
+      }
+      /**
+       * Return the stack trace for a given construct path
+       *
+       * Returns a stack trace if stack trace information is found, or `undefined` if not.
+       */
+      creationTrace(construct) {
+        return construct?.node.metadata.find((meta) => meta.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.CREATION_STACK)?.data?.join("\n");
+      }
+      mutationTracesByPath(constructPath, propertyPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return [];
+        }
+        return this.mutationTraces(construct, propertyPath);
+      }
+      /**
+       * Return mutation traces for the given construct and property path
+       *
+       * The `propertyPath` must start with `Properties.`, and can contain nested properties, e.g. `Properties.MyProperty.NestedProperty`.
+       * We will report the best information that we have.
+       */
+      mutationTraces(construct, propertyPath) {
+        return construct?.node.metadata.filter(isPropertyMutationMetadataEntry).filter((meta) => propertyAssignmentMatchesPropertyPath(meta, propertyPath)).map((meta) => meta.data.stackTrace.join("\n"));
+      }
+      /**
+       * Get a specific Construct by the node.addr
+       *
+       * @param path the node.addr of the construct
+       * @returns the Construct
+       */
+      getConstructByPath(path23) {
+        return this._constructByPath.get(path23);
+      }
+      /**
+       * Get a specific Construct by the CfnResource logical ID. This will
+       * be the construct.node.defaultChild with the given ID
+       *
+       * @param logicalId the ID of the CfnResource
+       * @returns the Construct
+       */
+      getConstructByLogicalId(templateFile, logicalId) {
+        return this._constructByTemplatePathAndLogicalId.get(templateFile)?.get(logicalId);
+      }
+    };
+    STACK_TRACE_HINT = "Run with '--debug' to include location info";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/color.ts
+var Col, Colorize;
+var init_color = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/color.ts"() {
+    "use strict";
+    Col = class {
+      static RED = "31";
+      static ORANGE = "38;5;208";
+      static YELLOW = "33";
+      static BLUE = "34";
+      static BOLD = "1";
+      static UNDERLINE = "4";
+      static GREY = "90";
+    };
+    Colorize = class _Colorize {
+      static red(str) {
+        return _Colorize.colorize(Col.RED, str);
+      }
+      static orange(str) {
+        return _Colorize.colorize(Col.ORANGE, str);
+      }
+      static yellow(str) {
+        return _Colorize.colorize(Col.YELLOW, str);
+      }
+      static blue(str) {
+        return _Colorize.colorize(Col.BLUE, str);
+      }
+      static grey(str) {
+        return _Colorize.colorize(Col.GREY, str);
+      }
+      static bold(str) {
+        return _Colorize.colorize(Col.BOLD, str);
+      }
+      static underline(str) {
+        return _Colorize.colorize(Col.UNDERLINE, str);
+      }
+      static colorize(col, str) {
+        if (process.env.FORCE_COLOR === "0" || process.env.NO_COLOR || !process.stdout.isTTY || !process.stderr.isTTY) {
+          return str;
+        }
+        return `\x1B[${col}m${str}\x1B[0m`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/trace.ts
+var STARTER_LINE, VERTICAL_LINE, ReportTrace;
+var init_trace = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/trace.ts"() {
+    "use strict";
+    STARTER_LINE = "\u2514\u2500\u2500 ";
+    VERTICAL_LINE = "\u2502";
+    ReportTrace = class {
+      constructor(tree) {
+        this.tree = tree;
+      }
+      tree;
+      /**
+       * Return a JSON representation of the construct trace
+       */
+      formatJson(constructPath) {
+        return this.tree.traceFromPath(constructPath);
+      }
+      /**
+       * This will render something like this:
+       *
+       *   Creation Stack:
+       *     └──  MyStack (MyStack)
+       *          │ Library: aws-cdk-lib.Stack
+       *          │ Library Version: 2.50.0
+       *          │ Location: Object. (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:25:20)
+       *          └──  MyCustomL3Construct (MyStack/MyCustomL3Construct)
+       *               │ Library: N/A - (Local Construct)
+       *               │ Library Version: N/A
+       *               │ Location: new MyStack (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:15:20)
+       *               └──  Bucket (MyStack/MyCustomL3Construct/Bucket)
+       *                    │ Library: aws-cdk-lib/aws-s3.Bucket
+       *                    │ Library Version: 2.50.0
+       *                    │ Location: new MyCustomL3Construct (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:9:20)/
+       */
+      formatPrettyPrinted(constructPath) {
+        const trace = constructPath ? this.formatJson(constructPath) : void 0;
+        return this.renderPrettyPrintedTraceInfo(trace);
+      }
+      renderPrettyPrintedTraceInfo(info, indent, start = STARTER_LINE) {
+        const notAvailableMessage = "	Construct trace not available. Rerun with `--debug` to see trace information";
+        if (info) {
+          const indentation = indent ?? " ".repeat(STARTER_LINE.length + 1);
+          const result = [
+            `${start} ${info?.id} (${info?.path})`,
+            `${indentation}${VERTICAL_LINE} Construct: ${info?.construct}`,
+            `${indentation}${VERTICAL_LINE} Library Version: ${info?.libraryVersion}`,
+            `${indentation}${VERTICAL_LINE} Location: ${info?.location}`,
+            ...info?.child ? [this.renderPrettyPrintedTraceInfo(info?.child, " ".repeat(indentation.length + STARTER_LINE.length + 1), indentation + STARTER_LINE)] : []
+          ];
+          return result.join("\n	");
+        }
+        return notAvailableMessage;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/report.ts
+var init_report = __esm({
+  "../../aws-cdk-lib/core/lib/validation/report.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/report.ts
+function normalizeSeverity(severity) {
+  if (!severity) {
+    return { severity: "error" };
+  }
+  const lower = severity.toLowerCase();
+  if (KNOWN_SEVERITIES.has(lower)) {
+    return { severity: lower };
+  }
+  return { severity: "custom", customSeverity: severity };
+}
+function mkPluginFailure(plugin, e) {
+  return {
+    success: false,
+    pluginName: plugin.name,
+    pluginVersion: plugin.version,
+    violations: [],
+    metadata: {
+      error: `Validation plugin '${plugin.name}' failed: ${e.message}`
+    }
+  };
+}
+function isSuppressibleViolation(violation) {
+  const isFatal = violation.severity?.toLowerCase() === "fatal";
+  const isErrorAnnotation = violation.ruleMetadata?.["cdk:annotation"] && violation.severity?.toLowerCase() === "error";
+  return !isFatal && !isErrorAnnotation;
+}
+var PolicyValidationReportFormatter, KNOWN_SEVERITIES, ExtraObjectData;
+var init_report2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/report.ts"() {
+    "use strict";
+    init_trace();
+    init_report();
+    PolicyValidationReportFormatter = class {
+      constructor(tree) {
+        this.tree = tree;
+        this.reportTrace = new ReportTrace(tree);
+      }
+      tree;
+      reportTrace;
+      formatLegacyJson(reps) {
+        return {
+          title: "Validation Report",
+          pluginReports: reps.filter((rep) => !rep.success || rep.violations.length > 0).map((rep) => ({
+            version: rep.pluginVersion,
+            summary: {
+              pluginName: rep.pluginName,
+              status: rep.success ? "success" /* SUCCESS */ : "failure" /* FAILURE */,
+              metadata: rep.metadata
+            },
+            violations: rep.violations.map((violation) => ({
+              ruleName: violation.ruleName,
+              description: violation.description,
+              fix: violation.fix,
+              ruleMetadata: violation.ruleMetadata,
+              severity: violation.severity,
+              violatingResources: violation.violatingResources,
+              violatingConstructs: violation.violatingResources.map((resource) => {
+                const constructPath = resource.constructPath;
+                return {
+                  constructStack: constructPath ? this.reportTrace.formatJson(constructPath) : void 0,
+                  constructPath,
+                  locations: resource.locations,
+                  resourceLogicalId: resource.resourceLogicalId ?? "N/A",
+                  templatePath: resource.templatePath ?? "N/A"
+                };
+              })
+            }))
+          }))
+        };
+      }
+      formatJson(reps, schemaVersion, stackTraces, suppressedByReport) {
+        return {
+          version: schemaVersion,
+          title: "Validation Report",
+          pluginReports: this.buildPluginReports(reps, stackTraces, suppressedByReport)
+        };
+      }
+      buildPluginReports(reps, stackTraces, suppressedByReport) {
+        const results = [];
+        for (let idx = 0; idx < reps.length; idx++) {
+          const rep = reps[idx];
+          const suppressed = suppressedByReport?.get(idx);
+          if (rep.success && rep.violations.length === 0 && !suppressed) continue;
+          results.push({
+            pluginName: rep.pluginName,
+            pluginVersion: rep.pluginVersion,
+            conclusion: rep.success ? "success" : "failure",
+            metadata: rep.metadata,
+            violations: rep.violations.map((violation) => this.formatViolationJson(violation, stackTraces)),
+            suppressedViolations: suppressed ? suppressed.map((sv) => this.formatSuppressedViolationJson(sv, stackTraces)) : void 0
+          });
+        }
+        return results;
+      }
+      formatViolationJson(violation, stackTraces) {
+        const severity = normalizeSeverity(violation.severity);
+        return {
+          ruleName: violation.ruleName,
+          description: violation.description,
+          suggestedFix: violation.fix,
+          severity: severity.severity,
+          customSeverity: severity.customSeverity,
+          ruleMetadata: violation.ruleMetadata,
+          violatingConstructs: violation.violatingResources.map((resource) => {
+            let constructPath = resource.constructPath;
+            const constructInfo = constructPath ? this.tree.constructTraceLevelFromConstructPath(constructPath) : void 0;
+            const result = {
+              // The constructPath is not optional in the output JSON, so put an empty string here if we don't have it.
+              constructPath: constructPath ?? "",
+              constructFqn: constructInfo?.construct,
+              libraryVersion: constructInfo?.libraryVersion,
+              cloudFormationResource: resource.resourceLogicalId && resource.templatePath ? {
+                templatePath: resource.templatePath,
+                logicalId: resource.resourceLogicalId,
+                propertyPaths: resource.locations.length > 0 ? resource.locations : void 0
+              } : void 0,
+              stackTraces: stackTraces.get(resource)
+            };
+            return result;
+          })
+        };
+      }
+      formatSuppressedViolationJson(sv, stackTraces) {
+        const base = this.formatViolationJson(sv, stackTraces);
+        return {
+          ...base,
+          acknowledgedId: sv.acknowledgedId,
+          reason: sv.reason || void 0,
+          acknowledgedAt: sv.acknowledgedAt || void 0,
+          acknowledgedStackTrace: sv.acknowledgedStackTrace || void 0
+        };
+      }
+    };
+    KNOWN_SEVERITIES = /* @__PURE__ */ new Set(["fatal", "error", "warning", "info"]);
+    ExtraObjectData = class {
+      extra = /* @__PURE__ */ new WeakMap();
+      constructor() {
+      }
+      attach(obj, data) {
+        this.extra.set(obj, data);
+      }
+      get(obj) {
+        return this.extra.get(obj);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts
+function formatValidationReports(fileRoot, reports, frameFinder) {
+  const successfullyExecutedPlugins = reports.filter((r) => isPluginFailure(r) === void 0);
+  const pluginFailures = reports.map(isPluginFailure).filter((e) => e !== void 0);
+  const violations = flattenViolations(successfullyExecutedPlugins);
+  violations.sort((a, b) => {
+    const aOrder = SEVERITY_ORDER[a.severity.toLowerCase()] ?? 4;
+    const bOrder = SEVERITY_ORDER[b.severity.toLowerCase()] ?? 4;
+    return aOrder - bOrder;
+  });
+  return [
+    ...pluginFailures.map(formatPluginFailure),
+    ...violations.map((v) => formatViolationBlock(fileRoot, v, frameFinder))
+  ];
+}
+function flattenViolations(reports) {
+  return reports.flatMap((report) => {
+    const pluginName = report.pluginName;
+    return report.violations.flatMap((violation) => {
+      return violation.violatingConstructs.map((construct) => ({
+        severity: normalizeSeverity2(violation.severity),
+        description: violation.description,
+        ruleName: violation.ruleName,
+        pluginName,
+        construct,
+        suggestedFix: violation.suggestedFix,
+        ruleMetadata: violation.ruleMetadata
+      }));
+    });
+  });
+}
+function normalizeSeverity2(severity) {
+  switch (severity?.toLowerCase()) {
+    case "fatal":
+      return "FATAL";
+    case "error":
+      return "ERROR";
+    case "warning":
+      return "WARNING";
+    case "info":
+      return "INFO";
+  }
+  if (!severity) return "WARNING";
+  return sanitize(severity);
+}
+function formatViolationBlock(fileRoot, v, frameFinder) {
+  const lines = [];
+  const locations = sourceLocations(fileRoot, v.construct.stackTraces, frameFinder);
+  const maxTraces = 5;
+  let additional = false;
+  for (const location of locations.slice(0, maxTraces)) {
+    lines.push(`${additional ? "or " : ""}${Colorize.underline(sanitize(location))}`);
+    additional = true;
+  }
+  if (locations.length > maxTraces) {
+    lines.push(Colorize.grey(`(and ${locations.length - maxTraces} more...)`));
+  }
+  const pluginNs = namespaceFromPluginName(v.pluginName);
+  const parsed = parseValidationId(v.ruleName);
+  lines.push([
+    Colorize.bold(getSeverityColor(v.severity)(sanitize(v.severity))),
+    Colorize.bold(stripAckTag(sanitize(v.description))),
+    Colorize.grey(`(${sanitize(parsed.namespace ? pluginNameFromNamespace(parsed.namespace) : v.pluginName)})`)
+  ].join(" "));
+  const constructInfo = formatConstructInfo(fileRoot, v.construct);
+  lines.push(`   ${constructInfo}`);
+  if (v.suggestedFix) {
+    lines.push(`   Suggested fix: ${sanitize(v.suggestedFix).replace(/\n/g, "\n   ")}`);
+  }
+  const ackId = normalizeValidationId(v.ruleName, pluginNs);
+  if (isSuppressibleViolation(v)) {
+    lines.push(`   ${Colorize.grey(`Acknowledge with '${sanitize(ackId)}'`)}`);
+  } else {
+    lines.push(`   ${Colorize.grey(`Rule ${sanitize(ackId)}`)}`);
+  }
+  return lines.join("\n");
+}
+function getSeverityColor(severity) {
+  switch (severity.toLowerCase()) {
+    case "fatal":
+      return Colorize.red;
+    case "error":
+      return Colorize.orange;
+    case "warning":
+      return Colorize.yellow;
+    default:
+      return Colorize.blue;
+  }
+}
+function formatConstructInfo(fileRoot, construct) {
+  const parts = [];
+  const logicalId = sanitize(construct.cloudFormationResource?.logicalId);
+  if (construct.constructPath) {
+    const cPath = sanitize(construct.constructPath);
+    parts.push(logicalId ? `${Colorize.bold(cPath)} (${logicalId})` : Colorize.bold(cPath));
+  } else {
+    if (construct.cloudFormationResource?.templatePath) {
+      parts.push(humanFriendlyFilename(fileRoot, sanitize(construct.cloudFormationResource.templatePath)));
+    }
+    if (logicalId) {
+      parts.push(Colorize.bold(logicalId));
+    }
+  }
+  if (construct.constructFqn) {
+    parts.push(Colorize.grey(sanitize(construct.constructFqn)));
+  }
+  return parts.join(" ");
+}
+function stripAckTag(description) {
+  return description.replace(/\s*\[ack:\s*[^\]]+\]\s*/g, "").trim();
+}
+function sourceLocations(fileRoot, stackTraces, frameFinder) {
+  const ret = [];
+  for (const trace of stackTraces ?? []) {
+    const frame = topUserFrame(trace.split("\n"), frameFinder);
+    if (frame && frame.fileName) {
+      const candidate = `${humanFriendlyFilename(fileRoot, frame.fileName)}:${frame.sourceLocation}`;
+      if (!ret.includes(candidate)) {
+        ret.push(candidate);
+      }
+    }
+  }
+  return ret;
+}
+function formatPluginFailure(f) {
+  return `${Colorize.orange("ERROR")} ${sanitize(f.error)}`;
+}
+function sanitize(s) {
+  return (s ?? "").replace(CONTROL_CHARS, "\uFFFD");
+}
+function humanFriendlyFilename(root, filename) {
+  const absPath = filename;
+  const relPath = import_path2.default.relative(root, filename);
+  return relPath.length < absPath.length ? relPath : absPath;
+}
+function isPluginFailure(r) {
+  if (r.conclusion === "success" || r.violations.length > 0 || !r.metadata?.error) {
+    return void 0;
+  }
+  return { error: r.metadata.error };
+}
+function stripAnsi(x) {
+  const pattern = [
+    "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
+    "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
+  ].join("|");
+  const re = new RegExp(pattern, "g");
+  return x.replaceAll(re, "");
+}
+var import_path2, CONTROL_CHARS, SEVERITY_ORDER;
+var init_modern_formatter = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts"() {
+    "use strict";
+    import_path2 = __toESM(require("path"));
+    init_color();
+    init_report2();
+    init_validation_id();
+    init_stack_trace();
+    CONTROL_CHARS = /[\x00-\x08\x0B-\x1F\x7F\x9B]/g;
+    SEVERITY_ORDER = {
+      fatal: 0,
+      error: 1,
+      warning: 2,
+      info: 3
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis-validation.ts
+function validateTemplates(root, outdir, assembly) {
+  var _stack = [];
+  try {
+    if (!App.isApp(root)) return;
+    const _span = __using(_stack, profileSpan("validateTemplates", { telemetry: true }));
+    const assemblies = getAssemblies(root, assembly);
+    const stacksByPlugin = /* @__PURE__ */ new Map();
+    visitAssemblies(root, "post", (construct) => {
+      if (STAGE_TYPE.isMarked(construct)) {
+        const stageAssembly = assemblies.get(construct.artifactId);
+        if (!stageAssembly) throw new AssumptionError(lit`ValidationFailed`, `Validation failed, cannot find cloud assembly for stage ${construct.stageName}`);
+        const plugins = pluginsToEvaluate(root, construct);
+        for (const plugin of plugins) {
+          if (!stacksByPlugin.has(plugin)) {
+            stacksByPlugin.set(plugin, /* @__PURE__ */ new Set());
+          }
+          for (const stack of stageAssembly.stacksRecursively) {
+            stacksByPlugin.get(plugin).add(stack);
+          }
+        }
+      }
+    });
+    if (stacksByPlugin.size === 0) return;
+    const reports = doInvokeValidationPlugins(outdir, Array.from(stacksByPlugin), root);
+    const validateFlagExplicitlyEnabled = getBooleanContext(root, VALIDATE_AGAINST_DEFAULT_RULES, false);
+    let warningifiedAnyErrors = false;
+    if (!validateFlagExplicitlyEnabled) {
+      warningifiedAnyErrors = downgradeCfnValidateErrorsToWarnings(reports);
+    }
+    const tree = new ConstructTree(root);
+    inferConstructPathsFromLogicalIds(reports, tree);
+    const stackTraces = collectViolationStackTraces(reports, tree);
+    const suppressedByReport = collectSuppressions(root, reports);
+    const formatter = new PolicyValidationReportFormatter(new ConstructTree(root));
+    const reportJson = formatter.formatJson(reports, assembly.version, stackTraces, suppressedByReport);
+    const reportFile = path16.join(assembly.directory, VALIDATION_REPORT_FILE);
+    fs11.writeFileSync(reportFile, JSON.stringify(reportJson, void 0, 2));
+    if (getBooleanContext(root, VALIDATION_REPORT_JSON_CONTEXT, false)) {
+      fs11.writeFileSync(
+        path16.join(assembly.directory, LEGACY_POLICY_VALIDATION_FILE_PATH),
+        JSON.stringify(formatter.formatLegacyJson(reports), void 0, 2)
+      );
+    }
+    const cdkAppHandlesValidationReporting = getBooleanContext(root, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true);
+    const appMode = cdkAppMode(root);
+    const constructLibStrictMode = getBooleanContext(root, STRICT_CFN_VALIDATE_ERRORS, false);
+    const validationFails = reports.some((r) => !r.success) || constructLibStrictMode && reports.some((r) => r.violations.some((v) => v.severity === "warning"));
+    const reportText = formatValidationReports(process.cwd(), reportJson.pluginReports, DEFAULT_STACK_FRAME_FINDER);
+    const reportPath = humanFriendlyFilename(process.cwd(), reportFile);
+    let preamble = "";
+    if (warningifiedAnyErrors) {
+      if (constructLibStrictMode) {
+        preamble = "[Warning] Template validation found issues in your templates. Construct library strict mode considers these errors.";
+      } else {
+        preamble = `[Warning] Template validation found issues in your templates (reported as warnings).
+Set feature flag "${VALIDATE_AGAINST_DEFAULT_RULES}" to true to turn these into errors.`;
+      }
+    }
+    if (reportText.length === 0) {
+      return;
+    }
+    if (cdkAppHandlesValidationReporting) {
+      const throwException = validationFails && (appMode === "inmemory" || appMode === "unknown");
+      const exceptionContainsReport = appMode === "inmemory";
+      const fullMessage = [];
+      if (preamble) {
+        fullMessage.push(preamble);
+      }
+      fullMessage.push(...reportText);
+      fullMessage.push(`A copy of this report can be found in: ${reportPath}`);
+      if (throwException && exceptionContainsReport) {
+        throw new UnscopedValidationError(lit`ValidationFailed`, stripAnsi(fullMessage.join("\n\n")));
+      } else if (throwException && !exceptionContainsReport) {
+        console.error([
+          ...preamble ? [preamble] : [],
+          ...reportText
+        ].join("\n\n"));
+        throw new UnscopedValidationError(lit`ValidationFailed`, `Validation failed. A copy of this report can be found in: ${reportPath}`);
+      } else {
+        console.error(fullMessage.join("\n\n"));
+        if (validationFails) {
+          process.exitCode = 1;
+        }
+      }
+    } else {
+      if (preamble) {
+        console.error(preamble);
+      }
+    }
+  } catch (_) {
+    var _error = _, _hasError = true;
+  } finally {
+    __callDispose(_stack, _error, _hasError);
+  }
+}
+function getAssemblies(root, rootAssembly) {
+  const assemblies = /* @__PURE__ */ new Map();
+  assemblies.set(root.artifactId, rootAssembly);
+  visitAssemblies(root, "pre", (construct) => {
+    const stage = construct;
+    if (stage.parentStage && assemblies.has(stage.parentStage.artifactId)) {
+      assemblies.set(
+        stage.artifactId,
+        assemblies.get(stage.parentStage.artifactId).getNestedAssembly(stage.artifactId)
+      );
+    }
+  });
+  return assemblies;
+}
+function pluginsToEvaluate(root, stage) {
+  const ret = [];
+  ret.push(...stage._validationPlugins);
+  if (defaultValidationEnabled() && !hasUserRegisteredCloudFormationValidatePlugin(root)) {
+    ret.push(CloudFormationValidatePlugin._singletonInstance());
+  }
+  if (stage === root && FeatureFlags.of(root).isEnabled(ANNOTATIONS_IN_VALIDATION_REPORT)) {
+    const annotationsPlugin = collectAnnotationReport(stage);
+    if (annotationsPlugin) {
+      ret.push(annotationsPlugin);
+    }
+  }
+  return ret;
+}
+function defaultValidationEnabled() {
+  return process.env.CDK_VALIDATION !== "false";
+}
+function downgradeCfnValidateErrorsToWarnings(reports) {
+  let warningifiedAnyErrors = false;
+  for (const report of reports) {
+    if (report.pluginName !== CloudFormationValidatePlugin.PLUGIN_NAME) {
+      continue;
+    }
+    for (const v of report.violations) {
+      if (v.severity === "error" || v.severity === "fatal") {
+        mutable(v).severity = "warning";
+        warningifiedAnyErrors = true;
+      }
+    }
+    mutable(report).success = true;
+  }
+  return warningifiedAnyErrors;
+}
+function inferConstructPathsFromLogicalIds(reports, tree) {
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        if (!resource.constructPath && resource.templatePath && resource.resourceLogicalId) {
+          mutable(resource).constructPath = tree.getConstructByLogicalId(
+            path16.basename(resource.templatePath),
+            resource.resourceLogicalId
+          )?.node.path;
+        }
+      }
+    }
+  }
+}
+function collectSuppressions(root, reports) {
+  const suppressedByReport = /* @__PURE__ */ new Map();
+  const acknowledgedRules = collectAcknowledgedRules(root);
+  if (Object.keys(acknowledgedRules).length > 0) {
+    for (let i = 0; i < reports.length; i++) {
+      const suppressed = suppressInReport(reports[i]);
+      if (suppressed.length > 0) {
+        suppressedByReport.set(i, suppressed);
+        mutable(reports[i]).success = reports[i].violations.every((v) => v.severity !== "error" && v.severity !== "fatal");
+      }
+    }
+  }
+  return suppressedByReport;
+  function suppressInReport(report) {
+    const ruleNamespace = namespaceFromPluginName(report.pluginName);
+    const ret = [];
+    for (let i = 0; i < report.violations.length; i++) {
+      const v = report.violations[i];
+      if (!isSuppressibleViolation(v)) {
+        continue;
+      }
+      const ruleName = normalizeValidationId(v.ruleName, ruleNamespace);
+      const pathBasedSuppressions = acknowledgedRules[ruleName];
+      if (!pathBasedSuppressions) {
+        continue;
+      }
+      const { suppressedGroups, unsuppressed } = groupResourcesBySuppressions(v.violatingResources, pathBasedSuppressions);
+      mutable(v).violatingResources = unsuppressed;
+      for (const suppressedGroup of suppressedGroups) {
+        ret.push({
+          ...v,
+          ...suppressedGroup.acknowledgement,
+          violatingResources: suppressedGroup.resources
+        });
+      }
+      if (v.violatingResources.length === 0) {
+        report.violations.splice(i, 1);
+        i--;
+      }
+    }
+    return ret;
+  }
+}
+function groupResourcesBySuppressions(resources, pathBasedSuppressions) {
+  const unsuppressed = [];
+  const suppressed = {};
+  for (const r of resources) {
+    const ack = findClosestAck(r);
+    if (ack) {
+      suppressed[ack.acknowledgedAt] ??= { acknowledgement: ack, resources: [] };
+      suppressed[ack.acknowledgedAt].resources.push(r);
+    } else {
+      unsuppressed.push(r);
+    }
+  }
+  return {
+    suppressedGroups: Object.values(suppressed),
+    unsuppressed
+  };
+  function findClosestAck(r) {
+    let constructPath = r.constructPath ?? "";
+    let ret = pathBasedSuppressions[constructPath];
+    while (ret === void 0 && constructPath !== "") {
+      const lastDot = constructPath.lastIndexOf("/");
+      if (lastDot === -1) {
+        constructPath = "";
+      } else {
+        constructPath = constructPath.substring(0, lastDot);
+      }
+      ret = pathBasedSuppressions[constructPath];
+    }
+    return ret;
+  }
+}
+function collectViolationStackTraces(reports, tree) {
+  const ret = new ExtraObjectData();
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        const constructPath = resource.constructPath;
+        if (!constructPath) {
+          continue;
+        }
+        const stacks = [];
+        const creationTrace = tree.creationTraceByPath(constructPath);
+        if (creationTrace) {
+          stacks.push(creationTrace);
+        }
+        stacks.push(...resource.locations.flatMap((location) => tree.mutationTracesByPath(constructPath, location)));
+        if (stacks.length > 0) {
+          ret.attach(resource, stacks);
+        }
+      }
+    }
+  }
+  return ret;
+}
+function doInvokeValidationPlugins(outdir, plugins, root) {
+  const untrustedPlugins = new Set(Array.from(plugins.values()).map((p) => p[0]).filter((p) => !isTrustedPlugin(p)));
+  const preExistingFileHashes = untrustedPlugins.size > 0 ? snapshotFileHashes(outdir) : void 0;
+  const ret = plugins.flatMap(([plugin, stacks]) => invokeSinglePlugin(plugin, Array.from(stacks)));
+  if (preExistingFileHashes) {
+    if (hasModifiedPreExistingFiles(preExistingFileHashes)) {
+      const pluginNames = Array.from(untrustedPlugins).map((p) => p.name);
+      throw new AssumptionError(lit`IllegalPluginOperation`, `One of the validation plugins (${pluginNames.join(", ")}) modified the cloud assembly`);
+    }
+  }
+  return ret;
+  function invokeSinglePlugin(plugin, stackArtifacts) {
+    if (stackArtifacts.length === 0) {
+      return [];
+    }
+    const stackTemplates = stackArtifacts.map((s) => ({
+      stackConstructPath: s.hierarchicalId,
+      templatePath: s.templateFullPath,
+      accountId: s.environment.account !== import_cloud_assembly_api.UNKNOWN_ACCOUNT ? s.environment.account : void 0,
+      region: s.environment.region !== import_cloud_assembly_api.UNKNOWN_REGION ? s.environment.region : void 0
+    }));
+    const accountId = stackTemplates.every((s) => s.accountId === stackTemplates[0].accountId) ? stackTemplates[0].accountId : void 0;
+    const region = stackTemplates.every((s) => s.region === stackTemplates[0].region) ? stackTemplates[0].region : void 0;
+    try {
+      const report = makeTemplatePathsRelative(plugin.validate({
+        templatePaths: stackTemplates.map((s) => s.templatePath),
+        stackTemplates,
+        appConstruct: root,
+        accountId,
+        region
+      }));
+      return [{ ...report, pluginName: plugin.name, pluginVersion: plugin.version }];
+    } catch (e) {
+      if (e instanceof AssumptionError && e.name === "IllegalPluginOperation") {
+        throw e;
+      }
+      return [mkPluginFailure(plugin, e)];
+    }
+  }
+  function makeTemplatePathsRelative(report) {
+    for (const v of report.violations) {
+      for (const r of v.violatingResources) {
+        if (r.templatePath) {
+          mutable(r).templatePath = path16.relative(outdir, path16.resolve(r.templatePath));
+        }
+      }
+    }
+    return report;
+  }
+}
+function isTrustedPlugin(x) {
+  return x instanceof CloudFormationValidatePlugin;
+}
+function visitAssemblies(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (!STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visitAssemblies(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+function getBooleanContext(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+function snapshotFileHashes(dir) {
+  const hashes = /* @__PURE__ */ new Map();
+  for (const filePath of collectFilePaths(dir)) {
+    hashes.set(filePath, hashFile(filePath));
+  }
+  return hashes;
+}
+function hasModifiedPreExistingFiles(snapshot) {
+  for (const [filePath, originalHash] of snapshot) {
+    if (!fileOrSymlinkExists(filePath) || hashFile(filePath) !== originalHash) {
+      return true;
+    }
+  }
+  return false;
+}
+function collectFilePaths(dir) {
+  const results = [];
+  function walk(current) {
+    for (const entry of fs11.readdirSync(current, { withFileTypes: true })) {
+      const full = path16.join(current, entry.name);
+      if (entry.isDirectory()) {
+        walk(full);
+      } else if (entry.isFile()) {
+        results.push(full);
+      } else if (entry.isSymbolicLink()) {
+        let st;
+        try {
+          st = fs11.lstatSync(full);
+        } catch {
+          continue;
+        }
+        if (st.isFile() || st.isSymbolicLink()) {
+          results.push(full);
+        }
+      }
+    }
+  }
+  walk(dir);
+  return results;
+}
+function hashFile(filePath) {
+  const content = fs11.lstatSync(filePath).isSymbolicLink() ? Buffer.from(fs11.readlinkSync(filePath)) : fs11.readFileSync(filePath);
+  return crypto7.createHash("sha256").update(content).digest("hex");
+}
+function fileOrSymlinkExists(p) {
+  try {
+    fs11.lstatSync(p);
+    return true;
+  } catch {
+    return false;
+  }
+}
+function hasUserRegisteredCloudFormationValidatePlugin(root) {
+  let count2 = 0;
+  visitAssemblies(root, "post", (construct) => {
+    if (!STAGE_TYPE.isMarked(construct)) return;
+    for (const plugin of construct._validationPlugins) {
+      if (!(plugin instanceof CloudFormationValidatePlugin)) continue;
+      if (construct !== root) {
+        throw new UnscopedValidationError(lit`CloudFormationValidatePluginNotAtApp`, "CloudFormationValidatePlugin can only be registered at the App level, not on a Stage");
+      }
+      count2++;
+    }
+  });
+  if (count2 > 1) {
+    throw new UnscopedValidationError(lit`DuplicateCloudFormationValidatePlugin`, "only one instance of CloudFormationValidatePlugin can be registered");
+  }
+  return count2 === 1;
+}
+function mutable(obj) {
+  return obj;
+}
+function cdkAppMode(root) {
+  const contextMode = root.node.tryGetContext(CDK_APP_MODE_CONTEXT);
+  if (contextMode === "process" || contextMode === "inmemory") {
+    return contextMode;
+  }
+  const envMode = process.env[CDK_APP_MODE_ENV];
+  if (envMode === "process" || envMode === "inmemory") {
+    return envMode;
+  }
+  if (process.env.NODE_ENV === "test" || process.env.PYTEST_VERSION || process.env.PYTEST_CURRENT_TEST) {
+    return "inmemory";
+  }
+  return "unknown";
+}
+var crypto7, fs11, path16, LEGACY_POLICY_VALIDATION_FILE_PATH;
+var init_synthesis_validation = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis-validation.ts"() {
+    "use strict";
+    crypto7 = __toESM(require("crypto"));
+    fs11 = __toESM(require("fs"));
+    path16 = __toESM(require("path"));
+    init_annotation_plugin();
+    init_collect_acknowledged_rule_ids();
+    init_literal_string();
+    init_cx_api();
+    init_app2();
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_perf();
+    init_stack_trace();
+    init_cloudformation_validate_plugin();
+    init_construct_tree();
+    init_modern_formatter();
+    init_report2();
+    init_validation_id();
+    LEGACY_POLICY_VALIDATION_FILE_PATH = "policy-validation-report.json";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tree.ts
+var TreeInspector;
+var init_tree = __esm({
+  "../../aws-cdk-lib/core/lib/tree.ts"() {
+    "use strict";
+    TreeInspector = class {
+      /**
+       * Represents the bag of attributes as key-value pairs.
+       */
+      attributes = {};
+      /**
+       * Adds attribute to bag. Keys should be added by convention to prevent conflicts
+       * i.e. L1 constructs will contain attributes with keys prefixed with aws:cdk:cloudformation
+       *
+       * @param key - key for metadata
+       * @param value - value of metadata.
+       */
+      addAttribute(key, value) {
+        this.attributes[key] = value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/tree-metadata.ts
+function nodeCount(root) {
+  let count2 = 0;
+  const stack = [root];
+  while (stack.length > 0) {
+    const current = stack.pop();
+    count2 += 1;
+    if (current.children) {
+      for (const child of Object.values(current.children)) {
+        stack.push(child);
+      }
+    }
+  }
+  return count2;
+}
+function setChild(parent, node) {
+  if (!parent.children) {
+    parent.children = {};
+  }
+  parent.children[node.id] = node;
+}
+var fs12, path17, import_constructs16, FILE_PATH, TreeMetadata, FragmentedTreeWriter;
+var init_tree_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/tree-metadata.ts"() {
+    "use strict";
+    fs12 = __toESM(require("fs"));
+    path17 = __toESM(require("path"));
+    import_constructs16 = __toESM(require_lib4());
+    init_runtime_info();
+    init_cloud_assembly_schema();
+    init_annotations();
+    init_tree();
+    init_construct_iteration();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    FILE_PATH = "tree.json";
+    TreeMetadata = class extends import_constructs16.Construct {
+      constructor(scope) {
+        super(scope, "Tree");
+      }
+      /**
+       * Create tree.json
+       * @internal
+       */
+      _synthesizeTree(session) {
+        const maxNodesPerTree = this.node.tryGetContext("@aws-cdk/core.TreeMetadata:maxNodes");
+        const builder = session.assembly;
+        const writer = new FragmentedTreeWriter(builder.outdir, FILE_PATH, { maxNodesPerTree });
+        for (const { construct, parent } of iterateBfs(this.node.root)) {
+          const node = {
+            id: construct.node.id || "App",
+            path: construct.node.path,
+            constructInfo: constructInfoFromConstruct(construct)
+          };
+          try {
+            node.attributes = this.synthAttributes(construct);
+          } catch (e) {
+            Annotations.of(this).addWarningV2(`@aws-cdk/core:failedToRenderTreeMetadata-${construct.node.id}`, `Failed to render tree metadata for node [${construct.node.id}]. Reason: ${e}`);
+          }
+          writer.addNode(construct, parent, node);
+        }
+        const rootFilename = writer.writeForest();
+        builder.addArtifact("Tree", {
+          type: cloud_assembly_schema_exports.ArtifactType.CDK_TREE,
+          properties: {
+            file: rootFilename
+          }
+        });
+      }
+      synthAttributes(construct) {
+        function canInspect2(inspectable) {
+          return inspectable.inspect !== void 0;
+        }
+        const inspector = new TreeInspector();
+        if (canInspect2(construct)) {
+          construct.inspect(inspector);
+          return stackOf(construct).resolve(inspector.attributes);
+        }
+        return void 0;
+      }
+    };
+    FragmentedTreeWriter = class {
+      constructor(outdir, rootFilename, options) {
+        this.outdir = outdir;
+        this.rootFilename = rootFilename;
+        this.maxNodes = options?.maxNodesPerTree ?? 5e5;
+      }
+      outdir;
+      rootFilename;
+      /**
+       * We only care about the identify of this object.
+       *
+       * Whatever tree in the forest is "pointed to" by this pointer is the main tree.
+       */
+      mainTreePointer = {
+        fileName: "yyy",
+        id: "id",
+        path: "path"
+      };
+      forest = new Array();
+      /**
+       * Maps a Construct to its respective Node
+       */
+      constructMap = /* @__PURE__ */ new Map();
+      /**
+       * Map a root Node to its containing Tree
+       */
+      subtreeRoots = /* @__PURE__ */ new Map();
+      /**
+       * Map a Node to its parent Node
+       */
+      parent = /* @__PURE__ */ new Map();
+      maxNodes;
+      /**
+       * Write the forest to disk, return the root file name
+       */
+      writeForest() {
+        const forestFiles = this.allocateSubTreesToForestFiles();
+        const mainTree = this.forest.find((t) => t.referencingNode === this.mainTreePointer);
+        if (mainTree) {
+          const treeFile = { version: "tree-0.1", tree: mainTree.root };
+          fs12.writeFileSync(path17.join(this.outdir, this.rootFilename), JSON.stringify(treeFile), { encoding: "utf-8" });
+        }
+        for (const forestFile of forestFiles) {
+          fs12.writeFileSync(path17.join(this.outdir, forestFile.fileName), JSON.stringify(forestFile.file), { encoding: "utf-8" });
+        }
+        return this.rootFilename;
+      }
+      /**
+       * Find all non-main tree and combine them into forest files
+       *
+       * This will mutate the pointing nodes as a side effect.
+       */
+      allocateSubTreesToForestFiles() {
+        const ret = new Array();
+        for (const tree of this.forest) {
+          if (tree.referencingNode === this.mainTreePointer) {
+            continue;
+          }
+          let targetForest;
+          if (ret.length === 0 || ret[ret.length - 1].nodeCount + tree.nodes > this.maxNodes) {
+            targetForest = {
+              fileName: `trees-${ret.length + 1}.json`,
+              file: { version: "forest-0.1", forest: {} },
+              nodeCount: 0,
+              treeCount: 0
+            };
+            ret.push(targetForest);
+          } else {
+            targetForest = ret[ret.length - 1];
+          }
+          const treeId = `t${targetForest.treeCount++}`;
+          targetForest.file.forest[treeId] = tree.root;
+          targetForest.nodeCount += tree.nodes;
+          tree.referencingNode.fileName = targetForest.fileName;
+          tree.referencingNode.treeId = treeId;
+        }
+        return ret;
+      }
+      addNode(construct, parent, node) {
+        if (parent === void 0) {
+          if (this.forest.length > 0) {
+            throw new AssumptionError(lit`OnlyOneNodeWithoutParent`, "Can only add exactly one node without a parent");
+          }
+          this.addNewTree(node, this.mainTreePointer);
+        } else {
+          const parentNode = this.constructMap.get(parent);
+          if (!parentNode) {
+            return;
+          }
+          this.addToExistingTree(node, parentNode);
+        }
+        this.constructMap.set(construct, node);
+      }
+      /**
+       * Add a new tree with the given Node as root
+       */
+      addNewTree(root, referencingNode) {
+        const tree = {
+          root,
+          referencingNode,
+          nodes: nodeCount(root)
+        };
+        this.forest.push(tree);
+        this.subtreeRoots.set(root, tree);
+        return tree;
+      }
+      /**
+       * Add the given node to an existing tree, potentially splitting it
+       */
+      addToExistingTree(node, parent) {
+        let tree = this.treeForNode(parent);
+        if (this.isTreeFull(tree)) {
+          const grandParent = this.parent.get(parent);
+          if (!grandParent) {
+            throw new AssumptionError(lit`CouldNotFindParent`, `Could not find parent of ${JSON.stringify(parent)}`);
+          }
+          const subtreeReference = {
+            id: parent.id,
+            path: parent.path,
+            fileName: "xxx"
+            // Will be replaced later
+          };
+          tree = this.addNewTree(parent, subtreeReference);
+          setChild(grandParent, subtreeReference);
+          this.subtreeRoots.set(parent, tree);
+        }
+        setChild(parent, node);
+        this.parent.set(node, parent);
+        tree.nodes += 1;
+      }
+      /**
+       * Whether the given tree is full
+       */
+      isTreeFull(t) {
+        return t.nodes >= this.maxNodes;
+      }
+      /**
+       * Return the Tree that contains the given Node
+       */
+      treeForNode(node) {
+        const tried = new Array();
+        let cur = node;
+        tried.push(cur.path);
+        let tree = this.subtreeRoots.get(cur);
+        while (!tree && cur) {
+          cur = this.parent.get(cur);
+          tried.push(cur?.path);
+          tree = cur && this.subtreeRoots.get(cur);
+        }
+        if (tree) {
+          return tree;
+        }
+        throw new AssumptionError(lit`CouldNotFindTreeForNode`, `Could not find tree for node: ${JSON.stringify(node)}, tried ${tried}`);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis.ts
+function synthesize(root, options = {}) {
+  injectTreeMetadata(root);
+  synthNestedAssemblies(root, options);
+  if (options.aspectStabilization) {
+    invokeAspectsV2(root);
+  } else {
+    invokeAspects(root);
+  }
+  injectMetadataResources(root);
+  prepareApp(root);
+  if (!options.skipValidation) {
+    validateTree(root);
+  }
+  const builder = STAGE_TYPE.isMarked(root) ? _convertCloudAssemblyBuilder(root._assemblyBuilder) : new private_cxapi.CloudAssemblyBuilder(options.outdir);
+  synthesizeTree(root, builder, options.validateOnSynthesis);
+  generateFeatureFlagReport(builder, root);
+  const assembly = builder.buildAssembly();
+  validateTemplates(root, builder.outdir, assembly);
+  return assembly;
+}
+function addCustomSynthesis(construct, synthesis) {
+  Object.defineProperty(construct, CUSTOM_SYNTHESIS_SYM, {
+    value: synthesis,
+    enumerable: false
+  });
+}
+function getCustomSynthesis(construct) {
+  return construct[CUSTOM_SYNTHESIS_SYM];
+}
+function synthNestedAssemblies(root, options) {
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      child.synth(options);
+    } else {
+      synthNestedAssemblies(child, options);
+    }
+  }
+}
+function invokeAspects(root) {
+  const invokedByPath = {};
+  let nestedAspectWarning = false;
+  recurse(root, []);
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    const aspects = Aspects.of(construct);
+    let localAspects = getAspectApplications(construct);
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, localAspects);
+    const nodeAspectsCount = aspects.all.length;
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath[node.path];
+      if (!invoked) {
+        invoked = invokedByPath[node.path] = [];
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      aspectApplication.aspect.visit(construct);
+      if (!nestedAspectWarning && nodeAspectsCount !== aspects.all.length) {
+        Annotations.of(construct).addWarningV2("@aws-cdk/core:ignoredAspect", "We detected an Aspect was added via another Aspect, and will not be applied");
+        nestedAspectWarning = true;
+      }
+      invoked.push(aspectApplication);
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        recurse(child, allAspectsHere);
+      }
+    }
+  }
+}
+function invokeAspectsV2(root) {
+  const invokedByPath = /* @__PURE__ */ new Map();
+  recurse(root, []);
+  for (let i = 0; i <= 100; i++) {
+    const didAnythingToTree = recurse(root, []);
+    if (didAnythingToTree === "nothing") {
+      return;
+    }
+  }
+  throw new UnscopedValidationError(lit`PossibleInfiniteLoopDetected`, "We have detected a possible infinite loop while invoking Aspects. Please check your Aspects and verify there is no configuration that would cause infinite Aspect or Node creation.");
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    let ret = "nothing";
+    const currentAspectTreeRevision = _aspectTreeRevisionReader(construct);
+    const versionAtStart = currentAspectTreeRevision();
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, getAspectApplications(construct));
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath.get(node.path);
+      if (!invoked) {
+        invokedByPath.set(node.path, invoked = []);
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      const lastInvokedAspect = invoked[invoked.length - 1];
+      if (lastInvokedAspect && lastInvokedAspect.priority > aspectApplication.priority) {
+        throw new UnscopedValidationError(
+          lit`CannotInvokeAspectWithLowerPriority`,
+          `Cannot invoke Aspect ${aspectApplication.aspect.constructor.name} with priority ${aspectApplication.priority} on node ${node.path}: an Aspect ${lastInvokedAspect.aspect.constructor.name} with a lower priority (added at ${lastInvokedAspect.construct.node.path} with priority ${lastInvokedAspect.priority}) was already invoked on this node.`
+        );
+      }
+      aspectApplication.aspect.visit(construct);
+      ret = "invoked";
+      invoked.push(aspectApplication);
+      if (currentAspectTreeRevision() !== versionAtStart) {
+        return "abort-recursion";
+      }
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        const childDidSomething = recurse(child, allAspectsHere);
+        ret = childDidSomething !== "nothing" ? childDidSomething : ret;
+        if (ret === "abort-recursion") {
+          break;
+        }
+      }
+    }
+    return ret;
+  }
+}
+function sortAspectsByPriority(inheritedAspects, localAspects) {
+  const allAspects = [...inheritedAspects, ...localAspects].sort((a, b) => {
+    if (a.priority !== b.priority) {
+      return a.priority - b.priority;
+    }
+    const isAInherited = inheritedAspects.includes(a);
+    const isBInherited = inheritedAspects.includes(b);
+    if (isAInherited && !isBInherited) return -1;
+    if (!isAInherited && isBInherited) return 1;
+    return 0;
+  });
+  return allAspects;
+}
+function getAspectApplications(node) {
+  const aspects = Aspects.of(node);
+  if (aspects.applied !== void 0) {
+    return aspects.applied;
+  }
+  const typedAspects = aspects;
+  return typedAspects.all.map((aspect) => new AspectApplication(node, aspect, AspectPriority.DEFAULT));
+}
+function injectMetadataResources(root) {
+  visit(root, "post", (construct) => {
+    if (!STACK_TYPE.isMarked(construct) || !construct._versionReportingEnabled) {
+      return;
+    }
+    const CDKMetadata = "CDKMetadata";
+    if (construct.node.tryFindChild(CDKMetadata)) {
+      return;
+    }
+    new MetadataResource(construct, CDKMetadata);
+  });
+}
+function injectTreeMetadata(root) {
+  visit(root, "post", (construct) => {
+    if (!App.isApp(construct) || !construct._treeMetadata) return;
+    const CDKTreeMetadata = "Tree";
+    if (construct.node.tryFindChild(CDKTreeMetadata)) return;
+    new TreeMetadata(construct);
+  });
+}
+function synthesizeTree(root, builder, validateOnSynth = false) {
+  visit(root, "post", (construct) => {
+    const session = {
+      outdir: builder.outdir,
+      assembly: _convertCloudAssemblyBuilder(builder),
+      validateOnSynth
+    };
+    if (STACK_TYPE.isMarked(construct)) {
+      construct.synthesizer.synthesize(session);
+    } else if (construct instanceof TreeMetadata) {
+      construct._synthesizeTree(session);
+    } else {
+      const custom = getCustomSynthesis(construct);
+      custom?.onSynthesize(session);
+    }
+  });
+}
+function validateTree(root) {
+  const errors = new Array();
+  visit(root, "pre", (construct) => {
+    for (const message of construct.node.validate()) {
+      errors.push({ message, source: construct });
+    }
+  });
+  if (errors.length > 0) {
+    const errorList = errors.map((e) => `[${e.source.node.path}] ${e.message}`).join("\n  ");
+    throw new UnscopedValidationError(lit`ValidationFailedWithErrors`, `Validation failed with the following errors:
+  ${errorList}`);
+  }
+}
+function visit(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visit(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+var private_cxapi, CUSTOM_SYNTHESIS_SYM;
+var init_synthesis = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis.ts"() {
+    "use strict";
+    private_cxapi = __toESM(require_lib3());
+    init_core_construct_finders();
+    init_feature_flag_report();
+    init_literal_string();
+    init_metadata_resource2();
+    init_prepare_app();
+    init_synthesis_validation();
+    init_tree_metadata();
+    init_legacy_moved();
+    init_annotations();
+    init_app2();
+    init_aspect();
+    init_errors();
+    CUSTOM_SYNTHESIS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core:customSynthesis");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validation.ts
+function _toBeta1Plugin(plugin) {
+  return {
+    name: plugin.name,
+    version: plugin.version,
+    ruleIds: plugin.ruleIds,
+    validate(context) {
+      const report = plugin.validate({
+        ...context,
+        // This is incorrect information -- it doesn't matter, this function shouldn't be used regardless.
+        stackTemplates: [],
+        accountId: void 0,
+        region: void 0
+      });
+      return {
+        success: report.success,
+        pluginVersion: report.pluginVersion,
+        metadata: report.metadata,
+        violations: report.violations.map((v) => ({
+          ruleName: v.ruleName,
+          description: v.description,
+          fix: v.fix,
+          severity: v.severity,
+          ruleMetadata: v.ruleMetadata,
+          violatingResources: v.violatingResources.map((r) => ({
+            resourceLogicalId: r.resourceLogicalId ?? "",
+            templatePath: r.templatePath ?? "",
+            locations: r.locations
+          }))
+        }))
+      };
+    }
+  };
+}
+var init_validation = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validation.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validations.ts
+var Validations;
+var init_validations = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validations.ts"() {
+    "use strict";
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_stack_trace();
+    init_validation_id();
+    Validations = class _Validations {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      /**
+       * Metadata key used to store acknowledged rules on construct nodes.
+       *
+       * Plugin authors can read this metadata to build audit trails from
+       * acknowledgments recorded via `acknowledge()`.
+       */
+      static ACKNOWLEDGED_RULES_METADATA_KEY = "aws:cdk:acknowledged-rules";
+      /**
+       * Returns the Validations for the given construct scope.
+       *
+       * @param scope any construct
+       */
+      static of(scope) {
+        return new _Validations(scope);
+      }
+      /**
+       * Register one or more validation plugins that will be executed during synthesis.
+       *
+       * Plugins can only be registered within a Stage or App scope.
+       * If any plugin reports a violation, synthesis will be interrupted and the
+       * report displayed to the user.
+       *
+       * @param plugins the validation plugins to add
+       */
+      addPlugins(...plugins) {
+        const stage = STAGE_TYPE.isMarked(this.scope) ? this.scope : stageOf(this.scope);
+        if (!stage) {
+          throw new UnscopedValidationError(lit`NoStageForValidationPlugins`, "Cannot add validation plugins on a construct without an enclosing Stage");
+        }
+        stage._addValidationPlugins(...plugins);
+      }
+      /**
+       * Adds a warning metadata entry to this construct that can be acknowledged.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * The ID will be stored with the `annotation` prefix (e.g. `annotation::MyWarning`).
+       * Use this prefixed ID when calling `acknowledge()` to suppress the warning.
+       *
+       * @param id unique identifier for the warning, used for acknowledgement
+       * @param message the warning message
+       */
+      addWarning(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addWarningV2(id, message);
+      }
+      /**
+       * Adds an error metadata entry to this construct.
+       *
+       * Synthesis will be interrupted when errors are reported.
+       *
+       * Note: Annotation errors are not currently acknowledgeable. The ID is
+       * recorded for identification purposes but `acknowledge()` will not
+       * suppress errors added via this method.
+       *
+       * @param id unique identifier for the error
+       * @param message the error message
+       */
+      addError(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addError(`${message} (${id})`);
+      }
+      /**
+       * Acknowledge one or more rules, suppressing them from validation output.
+       *
+       * Acknowledgments are recorded to construct metadata so that downstream
+       * plugins (e.g. CDK Nag) can read them for audit trails.
+       *
+       * Currently only annotation warnings can be suppressed. Annotation errors
+       * are not yet acknowledgeable.
+       *
+       * If an ID has no well-known prefix, it is assumed to be an annotation rule
+       * for backwards compatibility.
+       *
+       * @param rules the rules to acknowledge
+       */
+      acknowledge(...rules) {
+        for (const rule of rules) {
+          const parsed = parseValidationId(rule.id);
+          const qualifiedId = normalizeValidationIdForAnnotations(parsed);
+          this.recordAcknowledgment(qualifiedId, rule.reason);
+          Annotations.of(this.scope).acknowledgeWarning(qualifiedId);
+          if (qualifiedId.startsWith(`${ANNOTATION_PLUGIN_NAMESPACE}::`)) {
+            const annotationId = qualifiedId.substring(`${ANNOTATION_PLUGIN_NAMESPACE}::`.length);
+            Annotations.of(this.scope).acknowledgeWarning(annotationId);
+          }
+        }
+      }
+      recordAcknowledgment(id, reason) {
+        this.scope.node.addMetadata(
+          _Validations.ACKNOWLEDGED_RULES_METADATA_KEY,
+          { [id]: reason },
+          // eslint-disable-next-line @typescript-eslint/unbound-method
+          { stackTraceOverride: enhancedStackTrace(this.recordAcknowledgment) }
+        );
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/index.ts
+var init_validation2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/index.ts"() {
+    "use strict";
+    init_validation();
+    init_validations();
+    init_report();
+    init_cloudformation_validate_plugin();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stage.ts
+function stripInPlace(arr, startIndex, predicate) {
+  for (let i = startIndex; i < arr.length; i++) {
+    if (predicate(arr[i])) {
+      arr.splice(i, 1);
+      i--;
+    }
+  }
+}
+var private_cxapi2, import_constructs17, Stage;
+var init_stage = __esm({
+  "../../aws-cdk-lib/core/lib/stage.ts"() {
+    "use strict";
+    private_cxapi2 = __toESM(require_lib3());
+    import_constructs17 = __toESM(require_lib4());
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_synthesis();
+    init_prop_injectors();
+    init_validation2();
+    init_cx_api();
+    init_cx_api();
+    init_literal_string();
+    Stage = class _Stage extends import_constructs17.Construct {
+      /**
+       * Return the stage this construct is contained with, if available. If called
+       * on a nested stage, returns its parent.
+       *
+       */
+      static of(construct) {
+        return stageOf(construct);
+      }
+      /**
+       * Test whether the given construct is a stage.
+       *
+       */
+      static isStage(x) {
+        return STAGE_TYPE.isMarked(x);
+      }
+      /**
+       * The default region for all resources defined within this stage.
+       *
+       */
+      region;
+      /**
+       * The default account for all resources defined within this stage.
+       *
+       */
+      account;
+      /**
+       * The cloud assembly builder that is being used for this App
+       *
+       * @internal
+       */
+      _assemblyBuilder;
+      /**
+       * The name of the stage. Based on names of the parent stages separated by
+       * hypens.
+       *
+       */
+      stageName;
+      /**
+       * The parent stage or `undefined` if this is the app.
+       * *
+       */
+      parentStage;
+      /**
+       * The cached assembly if it was already built
+       */
+      assembly;
+      /**
+       * The cached set of construct paths. Empty if assembly was not yet built.
+       */
+      constructPathsCache;
+      /**
+       * Validation plugins to run during synthesis. If any plugin reports any violation,
+       * synthesis will be interrupted and the report displayed to the user.
+       *
+       * @default - no validation plugins are used
+       * @deprecated Do not use this function to look up validation plugins. Use `Validations.of(stage).plugins` instead.
+       */
+      get policyValidationBeta1() {
+        return this._policyValidation.map(_toBeta1Plugin);
+      }
+      _policyValidation = [];
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        if (id !== "" && !/^[a-z][a-z0-9\-\_\.]*$/i.test(id)) {
+          throw new ValidationError(lit`InvalidStageName`, `invalid stage name "${id}". Stage name must start with a letter and contain only alphanumeric characters, hypens ('-'), underscores ('_') and periods ('.')`, this);
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        STAGE_TYPE.mark(this);
+        this.constructPathsCache = /* @__PURE__ */ new Set();
+        this.parentStage = _Stage.of(this);
+        this.region = props.env?.region ?? this.parentStage?.region;
+        this.account = props.env?.account ?? this.parentStage?.account;
+        props.permissionsBoundary?._bind(this);
+        this._assemblyBuilder = this.createBuilder(props.outdir);
+        this.stageName = [this.parentStage?.stageName, props.stageName ?? id].filter((x) => x).join("-");
+        if (props.policyValidationBeta1) {
+          this._policyValidation.push(...props.policyValidationBeta1);
+        }
+      }
+      /**
+       * Register a validation plugin on this stage.
+       *
+       * @internal
+       */
+      _addValidationPlugins(...plugins) {
+        this._policyValidation.push(...plugins);
+      }
+      /**
+       * Returns the raw validation plugins without Beta1 wrapping.
+       *
+       * @internal
+       */
+      get _validationPlugins() {
+        return [...this._policyValidation];
+      }
+      /**
+       * The cloud assembly output directory.
+       */
+      get outdir() {
+        return this._assemblyBuilder.outdir;
+      }
+      /**
+       * The cloud assembly asset output directory.
+       */
+      get assetOutdir() {
+        return this._assemblyBuilder.assetOutdir;
+      }
+      /**
+       * Artifact ID of the assembly if it is a nested stage. The root stage (app)
+       * will return an empty string.
+       *
+       * Derived from the construct path.
+       */
+      get artifactId() {
+        if (!this.node.path) {
+          return "";
+        }
+        return `assembly-${this.node.path.replace(/\//g, "-").replace(/^-+|-+$/g, "")}`;
+      }
+      /**
+       * Synthesize this stage into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        let newConstructPaths = this.listAllConstructPaths(this);
+        if (this.constructPathsCache.size == 0 || !this.assembly || options.force) {
+          this.assembly = _convertCloudAssembly(synthesize(this, {
+            skipValidation: options.skipValidation,
+            validateOnSynthesis: options.validateOnSynthesis,
+            aspectStabilization: options.aspectStabilization ?? FeatureFlags.of(this).isEnabled(ASPECT_STABILIZATION) ?? false
+          }));
+          newConstructPaths = this.listAllConstructPaths(this);
+          this.constructPathsCache = newConstructPaths;
+        }
+        if (!this.constructPathSetsAreEqual(this.constructPathsCache, newConstructPaths)) {
+          const diff = this.constructPathSetsDiff(this.constructPathsCache, newConstructPaths).join(", ");
+          const errorMessage = `Synthesis has been called multiple times and the construct tree was modified after the first synthesis (${diff})`;
+          if (options.errorOnDuplicateSynth ?? true) {
+            throw new ValidationError(lit`ConstructTreeModifiedAfterSynth`, errorMessage + " This is not allowed. Remove multple synth() calls and do not modify the construct tree after the first synth().", this);
+          } else {
+            console.error(errorMessage + " Only the results of the first synth() call are used, and modifications done after it are ignored. Avoid construct tree mutations after synth() has been called unless this is intentional.");
+          }
+        }
+        this.constructPathsCache = newConstructPaths;
+        return this.assembly;
+      }
+      // Function that lists all construct paths and returns them as a set
+      listAllConstructPaths(construct) {
+        const paths = /* @__PURE__ */ new Set();
+        function recurse(root) {
+          paths.add(root.node.path);
+          for (const child of root.node.children) {
+            if (!STAGE_TYPE.isMarked(child)) {
+              recurse(child);
+            }
+          }
+        }
+        recurse(construct);
+        return paths;
+      }
+      // Checks if sets of construct paths are equal
+      constructPathSetsAreEqual(set1, set2) {
+        if (set1.size !== set2.size) return false;
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      /**
+       * Returns a list of +/- marked construct paths that have been added or removed between the 2 sets
+       */
+      constructPathSetsDiff(set1, set2) {
+        const ret = [];
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            ret.push(`-${id}`);
+          }
+        }
+        for (const id of set2) {
+          if (!set1.has(id)) {
+            ret.push(`+${id}`);
+          }
+        }
+        ret.sort((a, b) => a.length - b.length);
+        for (let i = 0; i < ret.length; i++) {
+          const prefix = ret[i] + "/";
+          stripInPlace(ret, i + 1, (x) => x.startsWith(prefix));
+        }
+        return ret;
+      }
+      createBuilder(outdir) {
+        if (this.parentStage && outdir) {
+          throw new ValidationError(lit`OutdirCannotBeSpecifiedForNestedStage`, '"outdir" cannot be specified for nested stages', this);
+        }
+        return this.parentStage ? this.parentStage._assemblyBuilder.createNestedAssembly(this.artifactId, this.node.path) : _convertCloudAssemblyBuilder(new private_cxapi2.CloudAssemblyBuilder(outdir));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/stack-metadata.ts
+function constructAnalyticsFromScope(scope) {
+  const isDefined = (value) => value !== void 0;
+  const allConstructInfos = constructsInScope(scope).map((construct) => [construct, constructInfoFromConstruct(construct)]).filter((c) => {
+    const [_, info] = c;
+    return isDefined(info) && ALLOWED_FQN_PREFIXES.find((prefix) => info.fqn.startsWith(prefix)) != null;
+  }).map(([construct, info]) => injectAnalytics(construct, info));
+  allConstructInfos.push({
+    fqn: "jsii-runtime.Runtime",
+    version: getJsiiAgentVersion()
+  });
+  addValidationPluginInfo(scope, allConstructInfos);
+  const uniqueMap = /* @__PURE__ */ new Map();
+  allConstructInfos.forEach((info) => {
+    const key = `${info.fqn}@${info.version}`;
+    if (uniqueMap.has(key)) {
+      const existingInfo = uniqueMap.get(key);
+      if (existingInfo && existingInfo.additionalTelemetry && info.additionalTelemetry) {
+        existingInfo.additionalTelemetry.push(...info.additionalTelemetry);
+      }
+      if (existingInfo && existingInfo.metadata && info.metadata) {
+        existingInfo.metadata.push(...info.metadata);
+      }
+    } else {
+      uniqueMap.set(key, info);
+    }
+  });
+  return Array.from(uniqueMap.values());
+}
+function injectAnalytics(construct, info) {
+  const metadata = new Array();
+  const additionalTelemetry = new Array();
+  for (const entry of construct.node.metadata) {
+    if (isResource(construct) && ADDITIONAL_TELEMETRY_METADATA_TYPES.has(entry.type)) {
+      additionalTelemetry.push(entry.data);
+    } else if (ALLOWED_METADATA_TYPES.has(entry.type)) {
+      metadata.push(entry.data);
+    }
+  }
+  return {
+    ...info,
+    metadata: metadata.length ? metadata : void 0,
+    additionalTelemetry: additionalTelemetry.length ? additionalTelemetry : void 0
+  };
+}
+function constructsInScope(construct) {
+  const constructs = [construct];
+  construct.node.children.filter((child) => !STAGE_TYPE.isMarked(child) && !STACK_TYPE.isMarked(child)).forEach((child) => constructs.push(...constructsInScope(child)));
+  return constructs;
+}
+function getJsiiAgentVersion() {
+  let jsiiAgent = process.env.JSII_AGENT;
+  if (!jsiiAgent) {
+    jsiiAgent = `node.js/${process.version}`;
+  }
+  jsiiAgent = jsiiAgent.replace(/[^a-z0-9.-/=_]/gi, "-");
+  return jsiiAgent;
+}
+function addValidationPluginInfo(scope, allConstructInfos) {
+  let stage = Stage.of(scope);
+  let done = false;
+  do {
+    if (App.isApp(stage)) {
+      done = true;
+    }
+    if (stage) {
+      allConstructInfos.push(...stage._validationPlugins.map(
+        (plugin) => {
+          return {
+            fqn: pluginFqn(plugin),
+            version: plugin.version ?? "0.0.0"
+          };
+        }
+      ));
+      stage = Stage.of(stage);
+    }
+  } while (!done && stage);
+}
+function pluginFqn(plugin) {
+  let components = [
+    "policyValidation",
+    plugin.name,
+    plugin.ruleIds?.join("|")
+  ];
+  return components.filter((x) => x != null).join(".");
+}
+function isResource(construct) {
+  return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct;
+}
+var ALLOWED_METADATA_TYPES, ADDITIONAL_TELEMETRY_METADATA_TYPES;
+var init_stack_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/stack-metadata.ts"() {
+    "use strict";
+    init_runtime_info();
+    init_app2();
+    init_constants();
+    init_metadata_type();
+    init_stage();
+    init_constants2();
+    init_core_construct_finders();
+    ALLOWED_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:mixin" /* MIXIN */
+    ]);
+    ADDITIONAL_TELEMETRY_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:construct" /* CONSTRUCT */,
+      "aws:cdk:analytics:method" /* METHOD */,
+      "aws:cdk:analytics:featureflag" /* FEATURE_FLAG */
+    ]);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts
+var _defaultChildOwner_dec, _init8, _ConstructReflection, ConstructReflection;
+var init_construct_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_memoize();
+    _defaultChildOwner_dec = [memoizedGetter];
+    _ConstructReflection = class _ConstructReflection {
+      constructor(construct) {
+        __runInitializers(_init8, 5, this);
+        __publicField(this, "construct");
+        this.construct = construct;
+      }
+      /**
+       * Create a reflection for the given construct.
+       */
+      static of(construct) {
+        return new _ConstructReflection(construct);
+      }
+      get defaultChildOwner() {
+        if (this.construct.node.scope && (this.construct.node.id === "Resource" || this.construct.node.id === "Default")) {
+          return this.construct.node.scope;
+        }
+        return void 0;
+      }
+      /**
+       * Finds the CfnResource backing this construct.
+       *
+       * Checks in order: the construct itself, its default child, then searches
+       * the broader construct tree for the closest match.
+       */
+      findCfnResource(matcher) {
+        const isCfnType = (c) => {
+          return CfnResource.isCfnResource(c) && c.cfnResourceType === matcher.cfnResourceType;
+        };
+        if (isCfnType(this.construct)) {
+          return this.construct;
+        }
+        if (this.construct.node.defaultChild && isCfnType(this.construct.node.defaultChild)) {
+          return this.construct.node.defaultChild;
+        }
+        return this.findRelatedCfnResource(matcher);
+      }
+      /**
+       * Finds the closest related CfnResource in the construct tree.
+       *
+       * Searches children first (depth-first), then ancestors (breadth-first).
+       */
+      findRelatedCfnResource(matcher) {
+        let closestMatch;
+        let closestDistance = Infinity;
+        const visited = /* @__PURE__ */ new Set();
+        const isMatch = (child) => {
+          return CfnResource.isCfnResource(child) && child.cfnResourceType === matcher.cfnResourceType;
+        };
+        const checkCandidate = (candidate, distance) => {
+          if (isMatch(candidate) && matcher.matches(candidate) && distance < closestDistance) {
+            closestMatch = candidate;
+            closestDistance = distance;
+          }
+        };
+        const searchChildren = (parent, distance) => {
+          if (distance >= closestDistance) {
+            return;
+          }
+          for (const child of parent.node.children) {
+            if (visited.has(child)) {
+              continue;
+            }
+            visited.add(child);
+            checkCandidate(child, distance);
+            searchChildren(child, distance + 1);
+          }
+        };
+        searchChildren(this.construct, 1);
+        let ancestor = this.construct.node.scope;
+        let ancestorDistance = 1;
+        while (ancestor && ancestorDistance < closestDistance) {
+          for (const sibling of ancestor.node.children) {
+            searchChildren(sibling, ancestorDistance);
+          }
+          ancestor = ancestor.node.scope;
+          ancestorDistance++;
+        }
+        return closestMatch;
+      }
+    };
+    _init8 = __decoratorStart(null);
+    __decorateElement(_init8, 2, "defaultChildOwner", _defaultChildOwner_dec, _ConstructReflection);
+    __decoratorMetadata(_init8, _ConstructReflection);
+    ConstructReflection = _ConstructReflection;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts
+var init_property_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts"() {
+    "use strict";
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/traits.ts
+var init_traits = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/traits.ts"() {
+    "use strict";
+    init_cx_api();
+    init_errors();
+    init_feature_flags();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deep-merge.ts
+function deepMerge(target, ...sources) {
+  for (const source of sources) {
+    if (typeof source !== "object" || typeof target !== "object") {
+      throw new AssumptionError(lit`InvalidDeepMergeArguments`, `Invalid usage. Both source (${JSON.stringify(source)}) and target (${JSON.stringify(target)}) must be objects`);
+    }
+    for (const key of Object.keys(source)) {
+      if (key === "__proto__" || key === "constructor" || key === "prototype") {
+        continue;
+      }
+      const value = source[key];
+      if (typeof value === "object" && value != null && !Array.isArray(value)) {
+        if (typeof target[key] !== "object") {
+          target[key] = {};
+        } else if (Object.keys(target[key]).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(target[key])[0])) {
+            target[key] = {};
+          }
+        }
+        if (Object.keys(value).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(value)[0])) {
+            target[key] = {};
+          }
+        }
+        deepMerge(target[key], value);
+        const output = target[key];
+        if (typeof output === "object" && Object.keys(output).length === 0) {
+          delete target[key];
+        }
+      } else if (value === void 0) {
+        delete target[key];
+      } else {
+        target[key] = value;
+      }
+    }
+  }
+  return target;
+}
+var MERGE_EXCLUDE_KEYS;
+var init_deep_merge = __esm({
+  "../../aws-cdk-lib/core/lib/private/deep-merge.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    MERGE_EXCLUDE_KEYS = [
+      "Ref",
+      "Fn::Base64",
+      "Fn::Cidr",
+      "Fn::FindInMap",
+      "Fn::GetAtt",
+      "Fn::GetAZs",
+      "Fn::ImportValue",
+      "Fn::Join",
+      "Fn::Select",
+      "Fn::Split",
+      "Fn::Sub",
+      "Fn::Transform",
+      "Fn::And",
+      "Fn::Equals",
+      "Fn::If",
+      "Fn::Not",
+      "Fn::Or"
+    ];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts
+var init_property_merge_strategy = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts"() {
+    "use strict";
+    init_box();
+    init_deep_merge();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts
+var init_cfn_props_mixin = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_property_merge_strategy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/shell-escape.ts
+var init_shell_escape = __esm({
+  "../../aws-cdk-lib/core/lib/private/shell-escape.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/index.ts
+var init_helpers_internal = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/index.ts"() {
+    "use strict";
+    init_cfn_parse();
+    init_md5();
+    init_customize_roles();
+    init_string_specializer();
+    init_validate_all_props();
+    init_strings();
+    init_runtime_info();
+    init_stack_metadata();
+    init_memoize();
+    init_construct_reflection();
+    init_property_reflection();
+    init_traits();
+    init_cfn_props_mixin();
+    init_literal_string();
+    init_box();
+    init_no_box_stack_traces();
+    init_perf();
+    init_shell_escape();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/private-context.ts
+var PREFIX, PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER;
+var init_private_context = __esm({
+  "../../aws-cdk-lib/core/lib/private/private-context.ts"() {
+    "use strict";
+    PREFIX = `aws-cdk-private:${Math.random()}:`;
+    PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER = `${PREFIX}core/defaultStackSynthesizer`;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/app.ts
+function countConstructs(construct) {
+  let ret = 0;
+  for (const _ of iterateDfsPreorder(construct)) {
+    ret++;
+  }
+  return ret;
+}
+function attachCustomSynthesis(construct, synthesis) {
+  addCustomSynthesis(construct, synthesis);
+}
+function emitPerformanceCountersFile() {
+  const filename = process.env[PERF_COUNTERS_FILE_ENV];
+  if (!filename) {
+    return;
+  }
+  const counters = {};
+  for (const [name, ctr] of Object.entries(readPerfCounters({ telemetry: true }))) {
+    counters[name] = ctr.total;
+    counters[`${name}(cnt)`] = ctr.count;
+  }
+  fs13.writeFileSync(filename, JSON.stringify({ counters }, void 0, 2), "utf-8");
+}
+function parseAsNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  const r = parseInt(`${x}`, 10);
+  return isNaN(r) ? void 0 : r;
+}
+var import_perf_hooks2, fs13, APP_INIT_HOOK_SYMBOL, DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS, SLOW_SYNTH_THRESHOLD_CTX, App, PERF_STATE;
+var init_app2 = __esm({
+  "../../aws-cdk-lib/core/lib/app.ts"() {
+    "use strict";
+    import_perf_hooks2 = require("perf_hooks");
+    fs13 = __toESM(require_lib5());
+    init_helpers_internal();
+    init_construct_iteration();
+    init_private_context();
+    init_synthesis();
+    init_prop_injectors();
+    init_stage();
+    init_cx_api();
+    init_core_construct_finders();
+    APP_INIT_HOOK_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+    DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS = 1e4;
+    SLOW_SYNTH_THRESHOLD_CTX = "@aws-cdk/core.slowSynthThreshold";
+    App = class extends Stage {
+      /**
+       * Return the app that is the root of the construct tree, if available.
+       */
+      static of(construct) {
+        return appOf(construct);
+      }
+      /**
+       * Checks if an object is an instance of the `App` class.
+       * @returns `true` if `obj` is an `App`.
+       * @param obj The object to evaluate
+       */
+      static isApp(obj) {
+        return APP_TYPE.isMarked(obj);
+      }
+      /**
+       * Include construct tree metadata as part of the Cloud Assembly.
+       *
+       * @internal
+       */
+      _treeMetadata;
+      initMark;
+      performanceReporting;
+      alreadySynthed = false;
+      /**
+       * Initializes a CDK application.
+       * @param props initialization properties
+       */
+      constructor(props = {}) {
+        super(void 0, "", {
+          outdir: props.outdir ?? process.env[OUTDIR_ENV]
+        });
+        this.initMark = import_perf_hooks2.performance.now();
+        if (!PERF_STATE.loadTimeMeasured) {
+          recordPerformanceEntry("phase:Load", {
+            durationMs: this.initMark,
+            telemetry: true
+          });
+          PERF_STATE.loadTimeMeasured = true;
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        if (props.policyValidationBeta1) {
+          this._addValidationPlugins(...props.policyValidationBeta1);
+        }
+        APP_TYPE.mark(this);
+        this.loadContext(props.context, props.postCliContext);
+        if (props.stackTraces === false) {
+          this.node.setContext(DISABLE_METADATA_STACK_TRACE, true);
+        }
+        if (props.defaultStackSynthesizer) {
+          this.node.setContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER, props.defaultStackSynthesizer);
+        }
+        const analyticsReporting = props.analyticsReporting ?? props.runtimeInfo;
+        if (analyticsReporting !== void 0) {
+          this.node.setContext(ANALYTICS_REPORTING_ENABLED_CONTEXT, analyticsReporting);
+        }
+        const autoSynth = props.autoSynth ?? OUTDIR_ENV in process.env;
+        if (autoSynth) {
+          process.once("beforeExit", () => this.synth({ errorOnDuplicateSynth: false }));
+        }
+        this._treeMetadata = props.treeMetadata ?? true;
+        this.performanceReporting = props.performanceReporting ?? this.node.tryGetContext(PERFORMANCE_REPORTING_ENABLED_CONTEXT) ?? true;
+        if (globalThis[APP_INIT_HOOK_SYMBOL]) {
+          globalThis[APP_INIT_HOOK_SYMBOL](this);
+        }
+      }
+      loadContext(defaults = {}, final = {}) {
+        for (const [k, v] of Object.entries(defaults)) {
+          this.node.setContext(k, v);
+        }
+        const context = {
+          ...this.readContextFromEnvironment(),
+          ...this.readContextFromTempFile()
+        };
+        for (const [k, v] of Object.entries(context)) {
+          this.node.setContext(k, v);
+        }
+        for (const [k, v] of Object.entries(final)) {
+          this.node.setContext(k, v);
+        }
+      }
+      /**
+       * Synthesize this App into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        if (this.alreadySynthed) {
+          return super.synth(options);
+        }
+        this.alreadySynthed = true;
+        const startSynthMark = import_perf_hooks2.performance.now();
+        recordPerformanceEntry("phase:Construction", {
+          durationMs: startSynthMark - this.initMark,
+          telemetry: true
+        });
+        const ret = super.synth(options);
+        recordPerformanceEntry("phase:Synthesis", {
+          durationMs: import_perf_hooks2.performance.now() - startSynthMark,
+          telemetry: true
+        });
+        const totalAppTimeMs = import_perf_hooks2.performance.now() - this.initMark;
+        const stackCount = ret.stacksRecursively.length;
+        recordPerformanceEntry("count:Constructs", {
+          count: countConstructs(this),
+          durationMs: 0,
+          telemetry: true
+        });
+        if (this.shouldReportSlowSynth(totalAppTimeMs / stackCount)) {
+          emitPerformanceCountersFile();
+        }
+        resetCounters();
+        return ret;
+      }
+      readContextFromTempFile() {
+        const location = process.env[CONTEXT_OVERFLOW_LOCATION_ENV];
+        return location ? fs13.readJSONSync(location) : {};
+      }
+      readContextFromEnvironment() {
+        const contextJson = process.env[CONTEXT_ENV];
+        return contextJson ? JSON.parse(contextJson) : {};
+      }
+      shouldReportSlowSynth(perStackTime) {
+        if (!this.performanceReporting) {
+          return false;
+        }
+        const threshold = parseAsNumber(this.node.tryGetContext(SLOW_SYNTH_THRESHOLD_CTX)) ?? DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS;
+        return perStackTime >= threshold;
+      }
+    };
+    PERF_STATE = global[/* @__PURE__ */ Symbol.for("@aws-cdk/core.AppPerfState")] ??= {
+      loadTimeMeasured: false
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/context-provider.ts
+function extractProviderError(value) {
+  if (typeof value === "object" && value !== null) {
+    return value[import_cloud_assembly_api.PROVIDER_ERROR_KEY];
+  }
+  return void 0;
+}
+function colonQuote(xs) {
+  return xs.replace(/\$/g, "$$").replace(/:/g, "$:");
+}
+function propsToArray(props, keyPrefix = "") {
+  const ret = [];
+  for (const key of Object.keys(props)) {
+    if (props[key] === void 0) {
+      continue;
+    }
+    switch (typeof props[key]) {
+      case "object": {
+        ret.push(...propsToArray(props[key], `${keyPrefix}${key}.`));
+        break;
+      }
+      case "string": {
+        ret.push(`${keyPrefix}${key}=${colonQuote(props[key])}`);
+        break;
+      }
+      default: {
+        ret.push(`${keyPrefix}${key}=${JSON.stringify(props[key])}`);
+        break;
+      }
+    }
+  }
+  ret.sort();
+  return ret;
+}
+var import_constructs18, ContextProvider;
+var init_context_provider = __esm({
+  "../../aws-cdk-lib/core/lib/context-provider.ts"() {
+    "use strict";
+    import_constructs18 = __toESM(require_lib4());
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_cx_api();
+    ContextProvider = class {
+      /**
+       * @returns the context key or undefined if a key cannot be rendered (due to tokens used in any of the props)
+       */
+      static getKey(scope, options) {
+        const stack = stackOf(scope);
+        const props = {
+          ...options.includeEnvironment ?? true ? { account: stack.account, region: stack.region } : {},
+          ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+          ...options.props
+        };
+        if (Object.values(props).find((x) => Token.isUnresolved(x))) {
+          throw new ValidationError(
+            lit`ContextProviderPropsContainTokens`,
+            `Cannot determine scope for context provider ${options.provider}.
+This usually happens when one or more of the provider props have unresolved tokens`,
+            scope
+          );
+        }
+        const propStrings = propsToArray(props);
+        return {
+          key: `${options.provider}:${propStrings.join(":")}`,
+          props
+        };
+      }
+      static getValue(scope, options) {
+        if (options.mustExist !== void 0 && options.ignoreErrorOnMissingContext !== void 0) {
+          throw new ValidationError(lit`ConflictingMustExistOptions`, "Only supply one of 'mustExist' and 'ignoreErrorOnMissingContext'", scope);
+        }
+        const stack = stackOf(scope);
+        if (Token.isUnresolved(stack.account) || Token.isUnresolved(stack.region)) {
+          throw new ValidationError(lit`StackAccountRegionNotSpecified`, `Cannot retrieve value from context provider ${options.provider} since account/region are not specified at the stack level. Configure "env" with an account and region when you define your stack.See https://docs.aws.amazon.com/cdk/latest/guide/environments.html for more details.`, scope);
+        }
+        const { key, props } = this.getKey(scope, options);
+        const value = import_constructs18.Node.of(scope).tryGetContext(key);
+        const providerError = extractProviderError(value);
+        if (value === void 0 || providerError !== void 0) {
+          const ignoreErrorOnMissingContext = options.mustExist !== void 0 || options.ignoreErrorOnMissingContext !== void 0 ? options.mustExist !== void 0 ? !options.mustExist : options.ignoreErrorOnMissingContext : void 0;
+          const extendedProps = {
+            dummyValue: options.dummyValue,
+            // Even though we renamed the user-facing property, the field in the
+            // cloud assembly still has the original name, which is somewhat wrong
+            // because it's not about missing context.
+            ignoreErrorOnMissingContext,
+            ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+            ...props
+          };
+          stack.reportMissingContextKey({
+            key,
+            provider: options.provider,
+            props: extendedProps
+          });
+          if (providerError !== void 0) {
+            Annotations.of(scope)._addTrackableError(lit`ContextProviderError`, providerError);
+          }
+          return { value: options.dummyValue };
+        }
+        return { value };
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/permissions-boundary.ts
+var PERMISSIONS_BOUNDARY_CONTEXT_KEY;
+var init_permissions_boundary = __esm({
+  "../../aws-cdk-lib/core/lib/permissions-boundary.ts"() {
+    "use strict";
+    PERMISSIONS_BOUNDARY_CONTEXT_KEY = "@aws-cdk/core:permissionsBoundary";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/logical-id.ts
+function validateLogicalId(logicalId) {
+  if (!VALID_LOGICALID_REGEX.test(logicalId)) {
+    throw new UnscopedValidationError(lit`LogicalAdhereRegularExpression`, `Logical ID must adhere to the regular expression: ${VALID_LOGICALID_REGEX.toString()}, got '${logicalId}'`);
+  }
+}
+var LogicalIDs, VALID_LOGICALID_REGEX;
+var init_logical_id = __esm({
+  "../../aws-cdk-lib/core/lib/private/logical-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    LogicalIDs = class {
+      /**
+       * The rename table (old to new)
+       */
+      renames = {};
+      /**
+       * All assigned names (new to old, may be identical)
+       *
+       * This is used to ensure that:
+       *
+       * - No 2 resources end up with the same final logical ID, unless they were the same to begin with.
+       * - All renames have been used at the end of renaming.
+       */
+      reverse = {};
+      /**
+       * Rename a logical ID from an old ID to a new ID
+       */
+      addRename(oldId, newId) {
+        if (oldId in this.renames) {
+          throw new UnscopedValidationError(lit`RenameAlreadyRegistered`, `A rename has already been registered for '${oldId}'`);
+        }
+        this.renames[oldId] = newId;
+      }
+      /**
+       * Return the renamed version of an ID or the original ID.
+       */
+      applyRename(oldId) {
+        let newId = oldId;
+        if (oldId in this.renames) {
+          newId = this.renames[oldId];
+        }
+        if (newId in this.reverse && this.reverse[newId] !== oldId) {
+          throw new UnscopedValidationError(lit`ObjectsAssignedSameLogical`, `Two objects have been assigned the same Logical ID: '${this.reverse[newId]}' and '${oldId}' are now both named '${newId}'.`);
+        }
+        this.reverse[newId] = oldId;
+        validateLogicalId(newId);
+        return newId;
+      }
+      /**
+       * Throw an error if not all renames have been used
+       *
+       * This is to assure that users didn't make typos when registering renames.
+       */
+      assertAllRenamesApplied() {
+        const keys = /* @__PURE__ */ new Set();
+        Object.keys(this.renames).forEach(keys.add.bind(keys));
+        Object.keys(this.reverse).map((newId) => {
+          keys.delete(this.reverse[newId]);
+        });
+        if (keys.size !== 0) {
+          const unusedRenames = Array.from(keys.values());
+          throw new UnscopedValidationError(lit`FollowingLogicalWereAttempted`, `The following Logical IDs were attempted to be renamed, but not found: ${unusedRenames.join(", ")}`);
+        }
+      }
+    };
+    VALID_LOGICALID_REGEX = /^[A-Za-z0-9]{1,255}$/;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts
+function isReusableStackSynthesizer(x) {
+  return !!x.reusableBind;
+}
+var init_types3 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts
+function addStackArtifactToAssembly(session, stack, stackProps, additionalStackDependencies) {
+  const stackTags = stack.tags.tagValues();
+  if (Object.entries(stackTags).length > 0) {
+    const resolvedTags = Object.entries(stackTags).filter(([k, v]) => !(Token.isUnresolved(k) || Token.isUnresolved(v)));
+    const unresolvedTags = Object.entries(stackTags).filter(([k, v]) => Token.isUnresolved(k) || Token.isUnresolved(v));
+    if (unresolvedTags.length > 0) {
+      const rendered = unresolvedTags.map(([k, v]) => `${Token.isUnresolved(k) ? "" : k}=${Token.isUnresolved(v) ? "" : v}`).join(", ");
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+        `Ignoring stack tags that contain deploy-time values (found: ${rendered}). Apply tags containing deploy-time values to resources only, avoid tagging stacks (for example using { excludeResourceTypes: ['aws:cdk:stack'] }).`
+      );
+    }
+    if (resolvedTags.length > 0) {
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.STACK_TAGS,
+        resolvedTags.map(([key, value]) => ({ key, value }))
+      );
+    }
+  }
+  const deps = [
+    ...stack.dependencies.map((s) => s.artifactId),
+    ...additionalStackDependencies
+  ];
+  const meta = collectStackMetadata(stack);
+  const stackNameProperty = stack.stackName === stack.artifactId ? {} : { stackName: stack.stackName };
+  const properties = {
+    templateFile: stack.templateFile,
+    terminationProtection: stack.terminationProtection,
+    tags: nonEmptyDict(stackTags),
+    validateOnSynth: session.validateOnSynth,
+    notificationArns: stack._notificationArns,
+    ...stackProps,
+    ...stackNameProperty
+  };
+  const metaFile = `${stack.artifactId}.metadata.json`;
+  const hasMeta = Object.keys(meta).length > 0;
+  if (hasMeta) {
+    fs14.writeFileSync(path18.join(session.assembly.outdir, metaFile), JSON.stringify(meta, void 0, 2), "utf-8");
+  }
+  session.assembly.addArtifact(stack.artifactId, {
+    type: cloud_assembly_schema_exports.ArtifactType.AWS_CLOUDFORMATION_STACK,
+    environment: stack.environment,
+    properties,
+    dependencies: deps.length > 0 ? deps : void 0,
+    additionalMetadataFile: hasMeta ? metaFile : void 0,
+    displayName: stack.node.path
+  });
+}
+function collectStackMetadata(stack) {
+  const output = {};
+  const queue = [stack];
+  let next;
+  while (next = queue.shift()) {
+    if (STACK_TYPE.isMarked(next) && next._isTopLevelStack && next !== stack) {
+      continue;
+    }
+    handleNode(next);
+    queue.push(...next.node.children);
+  }
+  return output;
+  function handleNode(node) {
+    if (node.node.metadata.length > 0) {
+      output[import_constructs19.Node.PATH_SEP + node.node.path] = node.node.metadata.map((md) => {
+        if ([
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO
+        ].includes(md.type)) {
+          return md;
+        }
+        const resolved = stack.resolve(md);
+        return resolved;
+      });
+    }
+  }
+}
+function contentHash(content) {
+  return crypto8.createHash("sha256").update(content).digest("hex");
+}
+function assertBound(x) {
+  if (x === null && x === void 0) {
+    throw new UnscopedValidationError(lit`CallBindstackFirst`, "You must call bindStack() first");
+  }
+}
+function nonEmptyDict(xs) {
+  return Object.keys(xs).length > 0 ? xs : void 0;
+}
+var crypto8, fs14, path18, import_constructs19;
+var init_shared2 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts"() {
+    "use strict";
+    crypto8 = __toESM(require("crypto"));
+    fs14 = __toESM(require("fs"));
+    path18 = __toESM(require("path"));
+    import_constructs19 = __toESM(require_lib4());
+    init_cloud_assembly_schema();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts
+function validateFileAssetSource(asset) {
+  if (!!asset.executable === !!asset.fileName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyFilenameExecutable`, `Exactly one of 'fileName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (!!asset.packaging !== !!asset.fileName) {
+    throw new UnscopedValidationError(lit`PackagingExpectedCombinationFilename`, `'packaging' is expected in combination with 'fileName', got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+}
+function validateDockerImageAssetSource(asset) {
+  if (!!asset.executable === !!asset.directoryName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyDirectorynameExecutable`, `Exactly one of 'directoryName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+  check("dockerBuildArgs");
+  check("dockerBuildContexts");
+  check("dockerBuildTarget");
+  check("dockerOutputs");
+  check("dockerFile");
+  function check(key) {
+    if (asset[key] && !asset.directoryName) {
+      throw new UnscopedValidationError(lit`OnlyAllowedCombinationDirectoryname`, `'${key}' is only allowed in combination with 'directoryName', got: ${JSON.stringify(asset)}`);
+    }
+  }
+}
+var fs15, path19, AssetManifestBuilder;
+var init_asset_manifest_builder = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts"() {
+    "use strict";
+    fs15 = __toESM(require("fs"));
+    path19 = __toESM(require("path"));
+    init_cloud_assembly_schema();
+    init_assets();
+    init_errors();
+    init_string_specializer();
+    init_token();
+    init_shared2();
+    init_literal_string();
+    AssetManifestBuilder = class {
+      files = {};
+      dockerImages = {};
+      /**
+       * Add a file asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, copy the
+       * file extension over, and set the prefix.
+       */
+      defaultAddFileAsset(stack, asset, target, options) {
+        validateFileAssetSource(asset);
+        const extension = asset.fileName != void 0 ? path19.extname(asset.fileName) : "";
+        const objectKey = (target.bucketPrefix ?? "") + asset.sourceHash + (asset.packaging === "zip" /* ZIP_DIRECTORY */ ? ".zip" : extension);
+        return this.addFileAsset(stack, asset.sourceHash, {
+          path: asset.fileName,
+          executable: asset.executable,
+          packaging: asset.packaging
+        }, {
+          bucketName: target.bucketName,
+          objectKey,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a docker image asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, and set the prefix.
+       */
+      defaultAddDockerImageAsset(stack, asset, target, options) {
+        validateDockerImageAssetSource(asset);
+        const imageTag = `${target.dockerTagPrefix ?? ""}${asset.sourceHash}`;
+        const sourceHash = asset.assetName ? `${asset.assetName}-${asset.sourceHash}` : asset.sourceHash;
+        return this.addDockerImageAsset(stack, sourceHash, {
+          executable: asset.executable,
+          directory: asset.directoryName,
+          dockerBuildArgs: asset.dockerBuildArgs,
+          dockerBuildContexts: asset.dockerBuildContexts,
+          dockerBuildSecrets: asset.dockerBuildSecrets,
+          dockerBuildSsh: asset.dockerBuildSsh,
+          dockerBuildTarget: asset.dockerBuildTarget,
+          dockerFile: asset.dockerFile,
+          networkMode: asset.networkMode,
+          platform: asset.platform,
+          dockerOutputs: asset.dockerOutputs,
+          cacheFrom: asset.dockerCacheFrom,
+          cacheTo: asset.dockerCacheTo,
+          cacheDisabled: asset.dockerCacheDisabled
+        }, {
+          repositoryName: target.repositoryName,
+          imageTag,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a file asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addFileAsset(stack, sourceHash, source, dest, options) {
+        if (!this.files[sourceHash]) {
+          this.files[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.files[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Add a docker asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addDockerImageAsset(stack, sourceHash, source, dest, options) {
+        if (!this.dockerImages[sourceHash]) {
+          this.dockerImages[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.dockerImages[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Whether there are any assets registered in the manifest
+       */
+      get hasAssets() {
+        return Object.keys(this.files).length + Object.keys(this.dockerImages).length > 0;
+      }
+      /**
+       * Write the manifest to disk, and add it to the synthesis session
+       *
+       * Return the artifact id, which should be added to the `additionalDependencies`
+       * field of the stack artifact.
+       */
+      emitManifest(stack, session, options = {}, dependencies = []) {
+        const artifactId = `${stack.artifactId}.assets`;
+        const manifestFile = `${artifactId}.json`;
+        const outPath = path19.join(session.assembly.outdir, manifestFile);
+        const manifest = {
+          version: cloud_assembly_schema_exports.Manifest.version(),
+          files: this.files,
+          dockerImages: this.dockerImages
+        };
+        fs15.writeFileSync(outPath, JSON.stringify(manifest, void 0, 2));
+        session.assembly.addArtifact(artifactId, {
+          type: cloud_assembly_schema_exports.ArtifactType.ASSET_MANIFEST,
+          properties: {
+            file: manifestFile,
+            ...options
+          },
+          dependencies: dependencies.length > 0 ? dependencies : void 0
+        });
+        return artifactId;
+      }
+      manifestEnvName(stack) {
+        return [
+          resolvedOr(stack.account, "current_account"),
+          resolvedOr(stack.region, "current_region")
+        ].join("-");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-rule.ts
+var CfnRule;
+var init_cfn_rule = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-rule.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+    CfnRule = class extends CfnRefElement {
+      ruleCondition;
+      assertions;
+      /**
+       * Creates and adds a rule.
+       * @param scope The parent construct.
+       * @param props The rule props.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.ruleCondition = props && props.ruleCondition;
+        this.assertions = props && props.assertions;
+      }
+      /**
+       * Adds an assertion to the rule.
+       * @param condition The expression to evaluation.
+       * @param description The description of the assertion.
+       */
+      addAssertion(condition, description) {
+        if (!this.assertions) {
+          this.assertions = [];
+        }
+        this.assertions.push({
+          assert: condition,
+          assertDescription: description
+        });
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Rules: {
+            [this.logicalId]: {
+              RuleCondition: this.ruleCondition,
+              Assertions: capitalizePropertyNames(this, this.assertions)
+            }
+          }
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts
+function stackTemplateFileAsset(stack, session) {
+  const templatePath = path20.join(session.assembly.outdir, stack.templateFile);
+  if (!fs16.existsSync(templatePath)) {
+    throw new ValidationError(lit`StackTemplate`, `Stack template ${stack.stackName} not written yet: ${templatePath}`, stack);
+  }
+  const template = fs16.readFileSync(templatePath, { encoding: "utf-8" });
+  const sourceHash = contentHash(template);
+  return {
+    fileName: stack.templateFile,
+    packaging: "file" /* FILE */,
+    sourceHash,
+    deployTime: true,
+    displayName: `${stack.stackName} Template`
+  };
+}
+function addBootstrapVersionRule(stack, requiredVersion, bootstrapStackVersionSsmParameter) {
+  if (stack.node.tryFindChild("BootstrapVersion")) {
+    return;
+  }
+  const param = new CfnParameter(stack, "BootstrapVersion", {
+    type: "AWS::SSM::Parameter::Value",
+    description: `Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. ${import_cloud_assembly_api.SSMPARAM_NO_INVALIDATE}`,
+    default: bootstrapStackVersionSsmParameter
+  });
+  const oldVersions = range3(1, requiredVersion).map((n) => `${n}`);
+  new CfnRule(stack, "CheckBootstrapVersion", {
+    assertions: [
+      {
+        assert: Fn.conditionNot(Fn.conditionContains(oldVersions, param.valueAsString)),
+        assertDescription: `CDK bootstrap stack version ${requiredVersion} required. Please run 'cdk bootstrap' with a recent version of the CDK CLI.`
+      }
+    ]
+  });
+}
+function range3(startIncl, endExcl) {
+  const ret = new Array();
+  for (let i = startIncl; i < endExcl; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+function stackLocationOrInstrinsics(stack) {
+  return {
+    account: resolvedOr(stack.account, "${AWS::AccountId}"),
+    region: resolvedOr(stack.region, "${AWS::Region}"),
+    urlSuffix: resolvedOr(stack.urlSuffix, "${AWS::URLSuffix}")
+  };
+}
+function cfnify(s) {
+  return s.indexOf("${") > -1 ? Fn.sub(s) : s;
+}
+var fs16, path20, StackSynthesizer;
+var init_stack_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts"() {
+    "use strict";
+    fs16 = __toESM(require("fs"));
+    path20 = __toESM(require("path"));
+    init_shared2();
+    init_cx_api();
+    init_assets();
+    init_cfn_fn();
+    init_cfn_parameter();
+    init_cfn_rule();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    StackSynthesizer = class {
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return void 0;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return void 0;
+      }
+      get cloudFormationExecutionRole() {
+        return void 0;
+      }
+      _boundStack;
+      /**
+       * Bind to the stack this environment is going to be used on
+       *
+       * Must be called before any of the other methods are called.
+       */
+      bind(stack) {
+        if (this._boundStack !== void 0) {
+          throw new ValidationError(lit`StackSynthesizerOneStackCreate`, "A StackSynthesizer can only be used for one Stack: create a new instance to use with a different Stack", stack);
+        }
+        this._boundStack = stack;
+      }
+      /**
+       * Have the stack write out its template
+       *
+       * @deprecated Use `synthesizeTemplate` instead
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session);
+      }
+      /**
+       * Write the stack template to the given session
+       *
+       * Return a descriptor that represents the stack template as a file asset
+       * source, for adding to an asset manifest (if desired). This can be used to
+       * have the asset manifest system (`cdk-assets`) upload the template to S3
+       * using the appropriate role, so that afterwards only a CloudFormation
+       * deployment is necessary.
+       *
+       * If the template is uploaded as an asset, the `stackTemplateAssetObjectUrl`
+       * property should be set when calling `emitArtifact.`
+       *
+       * If the template is *NOT* uploaded as an asset first and the template turns
+       * out to be >50KB, it will need to be uploaded to S3 anyway. At that point
+       * the credentials will be the same identity that is doing the `UpdateStack`
+       * call, which may not have the right permissions to write to S3.
+       */
+      synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        this.boundStack._synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions);
+        return stackTemplateFileAsset(this.boundStack, session);
+      }
+      /**
+       * Write the stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session.
+       *
+       * @deprecated Use `emitArtifact` instead
+       */
+      emitStackArtifact(stack, session, options = {}) {
+        addStackArtifactToAssembly(session, stack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Write the CloudFormation stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session. The Stack artifact will control the settings for the
+       * CloudFormation deployment.
+       */
+      emitArtifact(session, options = {}) {
+        addStackArtifactToAssembly(session, this.boundStack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Add a CfnRule to the bound stack that checks whether an SSM parameter exceeds a given version
+       *
+       * This will modify the template, so must be called before the stack is synthesized.
+       */
+      addBootstrapVersionRule(requiredVersion, bootstrapStackVersionSsmParameter) {
+        addBootstrapVersionRule(this.boundStack, requiredVersion, bootstrapStackVersionSsmParameter);
+      }
+      /**
+       * Retrieve the bound stack
+       *
+       * Fails if the stack hasn't been bound yet.
+       */
+      get boundStack() {
+        if (!this._boundStack) {
+          throw new UnscopedValidationError(lit`StackSynthesizerBoundStackFirst`, "The StackSynthesizer must be bound to a Stack first before boundStack() can be called");
+        }
+        return this._boundStack;
+      }
+      /**
+       * Turn a file asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromFileAsset(location) {
+        const { region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        const httpUrl = cfnify(
+          `https://s3.${region}.${urlSuffix2}/${location.bucketName}/${location.objectKey}`
+        );
+        const s3ObjectUrlWithPlaceholders = `s3://${location.bucketName}/${location.objectKey}`;
+        return {
+          bucketName: cfnify(location.bucketName),
+          objectKey: cfnify(location.objectKey),
+          httpUrl,
+          s3ObjectUrl: cfnify(s3ObjectUrlWithPlaceholders),
+          s3ObjectUrlWithPlaceholders,
+          s3Url: httpUrl
+        };
+      }
+      /**
+       * Turn a docker asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromDockerImageAsset(dest) {
+        const { account, region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        return {
+          repositoryName: cfnify(dest.repositoryName),
+          imageUri: cfnify(
+            `${account}.dkr.ecr.${region}.${urlSuffix2}/${dest.repositoryName}:${dest.imageTag}`
+          ),
+          imageTag: cfnify(dest.imageTag)
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts
+var BOOTSTRAP_QUALIFIER_CONTEXT, MIN_BOOTSTRAP_STACK_VERSION, MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION, MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION, DefaultStackSynthesizer;
+var init_default_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+    BOOTSTRAP_QUALIFIER_CONTEXT = "@aws-cdk/core:bootstrapQualifier";
+    MIN_BOOTSTRAP_STACK_VERSION = 6;
+    MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION = 8;
+    MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION = 22;
+    DefaultStackSynthesizer = class _DefaultStackSynthesizer extends StackSynthesizer {
+      constructor(props = {}) {
+        super();
+        this.props = props;
+        this.useLookupRoleForStackOperations = props.useLookupRoleForStackOperations ?? true;
+        for (const key in props) {
+          if (props.hasOwnProperty(key)) {
+            validateNoToken(key);
+          }
+        }
+        function validateNoToken(key) {
+          const prop = props[key];
+          if (typeof prop === "string" && Token.isUnresolved(prop)) {
+            throw new UnscopedValidationError(lit`DefaultSynthesizerTokenInProperty`, `DefaultStackSynthesizer property '${key}' cannot contain tokens; only the following placeholder strings are allowed: ` + [
+              "${Qualifier}",
+              (void 0).CURRENT_REGION,
+              (void 0).CURRENT_ACCOUNT,
+              (void 0).CURRENT_PARTITION
+            ].join(", "));
+          }
+        }
+      }
+      props;
+      /**
+       * Default ARN qualifier
+       */
+      static DEFAULT_QUALIFIER = "hnb659fds";
+      /**
+       * Default CloudFormation role ARN.
+       */
+      static DEFAULT_CLOUDFORMATION_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-cfn-exec-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default deploy role ARN.
+       */
+      static DEFAULT_DEPLOY_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-deploy-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for file (S3) assets.
+       */
+      static DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-file-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for image (ECR) assets.
+       */
+      static DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-image-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default lookup role ARN for missing values.
+       */
+      static DEFAULT_LOOKUP_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-lookup-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default image assets repository name
+       */
+      static DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME = "cdk-${Qualifier}-container-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default file assets bucket name
+       */
+      static DEFAULT_FILE_ASSETS_BUCKET_NAME = "cdk-${Qualifier}-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Name of the CloudFormation Export with the asset key name
+       */
+      static DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME = "CdkBootstrap-${Qualifier}-FileAssetKeyArn";
+      /**
+       * Default file asset prefix
+       */
+      static DEFAULT_FILE_ASSET_PREFIX = "";
+      /**
+       * Default Docker asset prefix
+       */
+      static DEFAULT_DOCKER_ASSET_PREFIX = "";
+      /**
+       * Default bootstrap stack version SSM parameter.
+       */
+      static DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER = "/cdk-bootstrap/${Qualifier}/version";
+      bucketName;
+      repositoryName;
+      _deployRoleArn;
+      _cloudFormationExecutionRoleArn;
+      fileAssetPublishingRoleArn;
+      imageAssetPublishingRoleArn;
+      lookupRoleArn;
+      useLookupRoleForStackOperations;
+      qualifier;
+      bucketPrefix;
+      dockerTagPrefix;
+      bootstrapStackVersionSsmParameter;
+      assetManifest = new AssetManifestBuilder();
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return this.qualifier;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return this.lookupRoleArn;
+      }
+      get cloudFormationExecutionRole() {
+        return this._cloudFormationExecutionRoleArn;
+      }
+      bind(stack) {
+        super.bind(stack);
+        const qualifier = this.props.qualifier ?? stack.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? _DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        this.qualifier = qualifier;
+        const spec = new StringSpecializer(stack, qualifier);
+        this.bucketName = spec.specialize(this.props.fileAssetsBucketName ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSETS_BUCKET_NAME);
+        this.repositoryName = spec.specialize(this.props.imageAssetsRepositoryName ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME);
+        this._deployRoleArn = spec.specialize(this.props.deployRoleArn ?? _DefaultStackSynthesizer.DEFAULT_DEPLOY_ROLE_ARN);
+        this._cloudFormationExecutionRoleArn = spec.specialize(this.props.cloudFormationExecutionRole ?? _DefaultStackSynthesizer.DEFAULT_CLOUDFORMATION_ROLE_ARN);
+        this.fileAssetPublishingRoleArn = spec.specialize(this.props.fileAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN);
+        this.imageAssetPublishingRoleArn = spec.specialize(this.props.imageAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN);
+        this.lookupRoleArn = spec.specialize(this.props.lookupRoleArn ?? _DefaultStackSynthesizer.DEFAULT_LOOKUP_ROLE_ARN);
+        this.bucketPrefix = spec.specialize(this.props.bucketPrefix ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PREFIX);
+        this.dockerTagPrefix = spec.specialize(this.props.dockerTagPrefix ?? _DefaultStackSynthesizer.DEFAULT_DOCKER_ASSET_PREFIX);
+        this.bootstrapStackVersionSsmParameter = spec.qualifierOnly(this.props.bootstrapStackVersionSsmParameter ?? _DefaultStackSynthesizer.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER);
+      }
+      addFileAsset(asset) {
+        assertBound(this.bucketName);
+        const location = this.assetManifest.defaultAddFileAsset(this.boundStack, asset, {
+          bucketName: this.bucketName,
+          bucketPrefix: this.bucketPrefix,
+          role: this.fileAssetPublishingRoleArn ? {
+            assumeRoleArn: this.fileAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.fileAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.fileAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromFileAsset(location);
+      }
+      addDockerImageAsset(asset) {
+        assertBound(this.repositoryName);
+        const location = this.assetManifest.defaultAddDockerImageAsset(this.boundStack, asset, {
+          repositoryName: this.repositoryName,
+          dockerTagPrefix: this.dockerTagPrefix,
+          role: this.imageAssetPublishingRoleArn ? {
+            assumeRoleArn: this.imageAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.imageAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.imageAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromDockerImageAsset(location);
+      }
+      /**
+       * Synthesize the stack template to the given session, passing the configured lookup role ARN
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session, this.lookupRoleArn, this.props.lookupRoleExternalId, this.props.lookupRoleAdditionalOptions);
+      }
+      /**
+       * Return the currently bound stack
+       *
+       * @deprecated Use `boundStack` instead.
+       */
+      get stack() {
+        return this.boundStack;
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        assertBound(this.qualifier);
+        if (this.props.generateBootstrapVersionRule ?? true) {
+          this.addBootstrapVersionRule(this._requiredBootstrapVersionForDeployment, this.bootstrapStackVersionSsmParameter);
+        }
+        const templateAssetSource = this.synthesizeTemplate(
+          session,
+          this.lookupRoleArn,
+          this.props.lookupRoleExternalId,
+          this.props.lookupRoleAdditionalOptions
+        );
+        const templateAsset = this.addFileAsset(templateAssetSource);
+        const assetManifestId = this.assetManifest.emitManifest(this.boundStack, session, {
+          requiresBootstrapStackVersion: this._requiredBoostrapVersionForAssets,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+        });
+        this.emitArtifact(session, {
+          assumeRoleExternalId: this.props.deployRoleExternalId,
+          assumeRoleArn: this._deployRoleArn,
+          assumeRoleAdditionalOptions: this.props.deployRoleAdditionalOptions,
+          cloudFormationExecutionRoleArn: this._cloudFormationExecutionRoleArn,
+          stackTemplateAssetObjectUrl: templateAsset.s3ObjectUrlWithPlaceholders,
+          requiresBootstrapStackVersion: this._requiredBootstrapVersionForDeployment,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter,
+          additionalDependencies: [assetManifestId],
+          lookupRole: this.useLookupRoleForStackOperations && this.lookupRoleArn ? {
+            arn: this.lookupRoleArn,
+            assumeRoleExternalId: this.props.lookupRoleExternalId,
+            assumeRoleAdditionalOptions: this.props.lookupRoleAdditionalOptions,
+            requiresBootstrapStackVersion: this._requiredBootstrapVersionForLookup,
+            bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+          } : void 0
+        });
+      }
+      get _requiredBoostrapVersionForAssets() {
+        if (this.props.fileAssetPublishingRoleAdditionalOptions?.Tags || this.props.imageAssetPublishingRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForDeployment() {
+        if (this.props.deployRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForLookup() {
+        if (this.props.lookupRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION;
+      }
+      /**
+       * Returns the ARN of the deploy Role.
+       */
+      get deployRoleArn() {
+        if (!this._deployRoleArn) {
+          throw new UnscopedValidationError(lit`DeployRoleArnGetterOnlyCalled`, "deployRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._deployRoleArn;
+      }
+      /**
+       * Returns the ARN of the CFN execution Role.
+       */
+      get cloudFormationExecutionRoleArn() {
+        if (!this._cloudFormationExecutionRoleArn) {
+          throw new UnscopedValidationError(lit`CloudFormationExecutionRoleArnGetterOnlyCalled`, "cloudFormationExecutionRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._cloudFormationExecutionRoleArn;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-parameters.ts
+var import_constructs20, FileAssetParameters;
+var init_asset_parameters = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-parameters.ts"() {
+    "use strict";
+    import_constructs20 = __toESM(require_lib4());
+    init_cfn_parameter();
+    FileAssetParameters = class extends import_constructs20.Construct {
+      bucketNameParameter;
+      objectKeyParameter;
+      artifactHashParameter;
+      constructor(scope, id) {
+        super(scope, id);
+        this.bucketNameParameter = new CfnParameter(this, "S3Bucket", {
+          type: "String",
+          description: `S3 bucket for asset "${id}"`
+        });
+        this.objectKeyParameter = new CfnParameter(this, "S3VersionKey", {
+          type: "String",
+          description: `S3 key for asset version "${id}"`
+        });
+        this.artifactHashParameter = new CfnParameter(this, "ArtifactHash", {
+          description: `Artifact hash for asset "${id}"`,
+          type: "String"
+        });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts
+function withoutDeprecationWarnings(block) {
+  const orig = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  try {
+    return block();
+  } finally {
+    process.env.JSII_DEPRECATED = orig;
+  }
+}
+var import_constructs21, ASSETS_ECR_REPOSITORY_NAME, ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY, LegacyStackSynthesizer;
+var init_legacy = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts"() {
+    "use strict";
+    import_constructs21 = __toESM(require_lib4());
+    init_shared2();
+    init_stack_synthesizer();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_fn();
+    init_errors();
+    init_asset_parameters();
+    init_literal_string();
+    ASSETS_ECR_REPOSITORY_NAME = "aws-cdk/assets";
+    ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY = "assets-ecr-repository-name";
+    LegacyStackSynthesizer = class extends StackSynthesizer {
+      cycle = false;
+      /**
+       * Includes all parameters synthesized for assets (lazy).
+       */
+      _assetParameters;
+      /**
+       * The image ID of all the docker image assets that were already added to this
+       * stack (to avoid duplication).
+       */
+      addedImageAssets = /* @__PURE__ */ new Set();
+      addFileAsset(asset) {
+        if (this.cycle) {
+          return this.doAddFileAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addFileAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      addDockerImageAsset(asset) {
+        if (this.cycle) {
+          return this.doAddDockerImageAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addDockerImageAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        this.synthesizeTemplate(session);
+        this.emitArtifact(session);
+      }
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      doAddDockerImageAsset(asset) {
+        const repositoryNameOverride = this.boundStack.node.tryGetContext(ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY);
+        const repositoryName = asset.repositoryName ?? repositoryNameOverride ?? ASSETS_ECR_REPOSITORY_NAME;
+        const imageTag = asset.sourceHash;
+        const assetId = asset.sourceHash;
+        if (!this.addedImageAssets.has(assetId)) {
+          if (!asset.directoryName) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            repositoryName,
+            imageTag,
+            id: assetId,
+            packaging: "container-image",
+            path: asset.directoryName,
+            sourceHash: asset.sourceHash,
+            buildArgs: asset.dockerBuildArgs,
+            buildContexts: asset.dockerBuildContexts,
+            buildSecrets: asset.dockerBuildSecrets,
+            buildSsh: asset.dockerBuildSsh,
+            target: asset.dockerBuildTarget,
+            file: asset.dockerFile,
+            networkMode: asset.networkMode,
+            platform: asset.platform,
+            outputs: asset.dockerOutputs,
+            cacheFrom: asset.dockerCacheFrom,
+            cacheTo: asset.dockerCacheTo,
+            cacheDisabled: asset.dockerCacheDisabled
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+          this.addedImageAssets.add(assetId);
+        }
+        return {
+          imageUri: `${this.boundStack.account}.dkr.ecr.${this.boundStack.region}.${this.boundStack.urlSuffix}/${repositoryName}:${imageTag}`,
+          repositoryName
+        };
+      }
+      doAddFileAsset(asset) {
+        let params = this.assetParameters.node.tryFindChild(asset.sourceHash);
+        if (!params) {
+          params = new FileAssetParameters(this.assetParameters, asset.sourceHash);
+          if (!asset.fileName || !asset.packaging) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            path: asset.fileName,
+            id: asset.sourceHash,
+            packaging: asset.packaging,
+            sourceHash: asset.sourceHash,
+            s3BucketParameter: params.bucketNameParameter.logicalId,
+            s3KeyParameter: params.objectKeyParameter.logicalId,
+            artifactHashParameter: params.artifactHashParameter.logicalId
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+        }
+        const bucketName = params.bucketNameParameter.valueAsString;
+        const encodedKey = params.objectKeyParameter.valueAsString;
+        const s3Prefix = Fn.select(0, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const s3Filename = Fn.select(1, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const objectKey = `${s3Prefix}${s3Filename}`;
+        const httpUrl = `https://s3.${this.boundStack.region}.${this.boundStack.urlSuffix}/${bucketName}/${objectKey}`;
+        const s3ObjectUrl = `s3://${bucketName}/${objectKey}`;
+        return { bucketName, objectKey, httpUrl, s3ObjectUrl, s3Url: httpUrl };
+      }
+      get assetParameters() {
+        assertBound(this.boundStack);
+        if (!this._assetParameters) {
+          this._assetParameters = new import_constructs21.Construct(this.boundStack, "AssetParameters");
+        }
+        return this._assetParameters;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts
+var init_bootstrapless_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts"() {
+    "use strict";
+    init_default_synthesizer();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts
+var init_nested = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts"() {
+    "use strict";
+    init_stack_synthesizer();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts
+var init_cli_credentials_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_default_synthesizer();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts
+var init_stack_synthesizers = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts"() {
+    "use strict";
+    init_types3();
+    init_default_synthesizer();
+    init_legacy();
+    init_bootstrapless_synthesizer();
+    init_nested();
+    init_stack_synthesizer();
+    init_cli_credentials_synthesizer();
+    init_asset_manifest_builder();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-mapping.ts
+var CfnMapping, CfnMappingEmbedder;
+var init_cfn_mapping = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-mapping.ts"() {
+    "use strict";
+    init_annotations();
+    init_cfn_element();
+    init_cfn_fn();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    CfnMapping = class extends CfnRefElement {
+      mapping;
+      lazy;
+      lazyRender = false;
+      // prescribes `_toCloudFormation()` to pass nothing if value from map is returned lazily.
+      lazyInformed = false;
+      // keeps track if user has been sent a message informing them of the possibility to use lazy synthesis.
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this.mapping = props.mapping ? this.validateMapping(props.mapping) : {};
+        this.lazy = props.lazy;
+      }
+      /**
+       * Sets a value in the map based on the two keys.
+       */
+      setValue(key1, key2, value) {
+        if ([key1, key2].some((k) => ["__proto__", "constructor"].includes(k))) {
+          throw new ValidationError(lit`CannotProtoConstructorKeys`, "Cannot use '__proto__' or 'constructor' as keys", this);
+        }
+        this.validateAlphanumeric(key2);
+        if (!(key1 in this.mapping)) {
+          this.mapping[key1] = {};
+        }
+        this.mapping[key1][key2] = value;
+      }
+      /**
+       * @returns A reference to a value in the map based on the two keys.
+       *          If mapping is lazy, the value from the map or default value is returned instead of the reference and the mapping is not rendered in the template.
+       */
+      findInMap(key1, key2, defaultValue) {
+        let fullyResolved = false;
+        let notInMap = false;
+        if (!Token.isUnresolved(key1)) {
+          if (!(key1 in this.mapping)) {
+            if (defaultValue === void 0) {
+              throw new ValidationError(lit`MappingDoesnTContainTopLevel`, `Mapping doesn't contain top-level key '${key1}'`, this);
+            } else {
+              notInMap = true;
+            }
+          } else if (!Token.isUnresolved(key2)) {
+            if (!(key2 in this.mapping[key1])) {
+              if (defaultValue === void 0) {
+                throw new ValidationError(lit`MappingDoesnTContainSecondLevel`, `Mapping doesn't contain second-level key '${key2}'`, this);
+              } else {
+                notInMap = true;
+              }
+            }
+            fullyResolved = true;
+          }
+        }
+        if (this.lazy) {
+          if (notInMap && defaultValue !== void 0) {
+            return defaultValue;
+          } else if (fullyResolved) {
+            return this.mapping[key1][key2];
+          }
+        }
+        this.lazyRender = !fullyResolved;
+        return new CfnMappingEmbedder(this, this.mapping, key1, key2, defaultValue).toString();
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (this.lazy === void 0 && !this.lazyRender) {
+          this.informLazyUse();
+        }
+        if (!this.lazy || this.lazy && this.lazyRender) {
+          return {
+            Mappings: {
+              [this.logicalId]: this.mapping
+            }
+          };
+        } else {
+          return {};
+        }
+      }
+      informLazyUse() {
+        if (!this.lazyInformed) {
+          Annotations.of(this).addInfo("Consider making this CfnMapping a lazy mapping by providing `lazy: true`: either no findInMap was called or every findInMap could be immediately resolved without using Fn::FindInMap");
+        }
+        this.lazyInformed = true;
+      }
+      validateMapping(mapping) {
+        Object.keys(mapping).forEach((m) => Object.keys(mapping[m]).forEach(this.validateAlphanumeric));
+        return mapping;
+      }
+      validateAlphanumeric(value) {
+        if (value.match(/[^a-zA-Z0-9]/g)) {
+          throw new UnscopedValidationError(lit`AttributeNameContainOnly`, `Attribute name '${value}' must contain only alphanumeric characters.`);
+        }
+      }
+    };
+    CfnMappingEmbedder = class {
+      constructor(cfnMapping, mapping, key1, key2, defaultValue) {
+        this.cfnMapping = cfnMapping;
+        this.mapping = mapping;
+        this.key1 = key1;
+        this.key2 = key2;
+        this.defaultValue = defaultValue;
+      }
+      cfnMapping;
+      mapping;
+      key1;
+      key2;
+      defaultValue;
+      creationStack = ["Token stack traces are no longer captured"];
+      resolve(context) {
+        const consumingStack = stackOf(context.scope);
+        if (consumingStack === stackOf(this.cfnMapping)) {
+          return Fn.findInMap(this.cfnMapping.logicalId, this.key1, this.key2, this.defaultValue);
+        }
+        const constructScope = consumingStack;
+        const constructId = `MappingCopy-${this.cfnMapping.node.id}-${this.cfnMapping.node.addr}`;
+        let mappingCopy = constructScope.node.tryFindChild(constructId);
+        if (!mappingCopy) {
+          mappingCopy = new CfnMapping(constructScope, constructId, {
+            mapping: this.mapping
+          });
+        }
+        return Fn.findInMap(mappingCopy.logicalId, this.key1, this.key2, this.defaultValue);
+      }
+      toString() {
+        return Token.asString(this);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/region-lookup.ts
+function deployTimeLookup(stack, factName, lookupMap, defaultValue) {
+  if (Object.values(lookupMap).length === 0) {
+    if (defaultValue === void 0) {
+      throw new UnscopedValidationError(lit`RegionInfoDonTInformation`, `region-info: don't have any information for ${factName}. Use 'Fact.register' to provide values, or add partitions to the '${TARGET_PARTITIONS}' context value.`);
+    }
+    return defaultValue;
+  }
+  const pattern = findValuePattern(lookupMap);
+  if (pattern !== void 0) {
+    return pattern;
+  }
+  const [factClass, factParam] = factName.includes(":") ? factName.split(":") : [factName, "value"];
+  const mapId = `${ucfirst(factClass)}Map`;
+  const factKey = factParam.replace(/[^a-zA-Z0-9]/g, "x");
+  let mapping = stack.node.tryFindChild(mapId);
+  if (!mapping) {
+    mapping = new CfnMapping(stack, mapId);
+  }
+  for (const [region, value] of Object.entries(lookupMap)) {
+    mapping.setValue(region, factKey, value);
+  }
+  return mapping.findInMap(Aws.REGION, factKey);
+}
+function ucfirst(x) {
+  return `${x.slice(0, 1).toUpperCase()}${x.slice(1)}`;
+}
+function findValuePattern(regionMap) {
+  const simplified = { ...regionMap };
+  const urlSuffixes = Object.keys(simplified).map(urlSuffix);
+  if (!allSame(urlSuffixes) && Object.entries(simplified).every(([region, value]) => value.includes(urlSuffix(region)))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], urlSuffix(region), Aws.URL_SUFFIX);
+    }
+  }
+  if (Object.entries(simplified).every(([region, value]) => value.includes(region))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], region, Aws.REGION);
+    }
+  }
+  const values = Object.values(simplified);
+  if (allSame(values)) {
+    return values[0];
+  }
+  return void 0;
+}
+function allSame(xs) {
+  return xs.every((x) => x === xs[0]);
+}
+function urlSuffix(region) {
+  return RegionInfo.get(region)?.domainSuffix ?? "amazonaws.com";
+}
+function replaceAll2(x, pat, replacement) {
+  return x.split(pat).join(replacement);
+}
+var init_region_lookup = __esm({
+  "../../aws-cdk-lib/core/lib/private/region-lookup.ts"() {
+    "use strict";
+    init_cx_api();
+    init_region_info2();
+    init_cfn_mapping();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack.ts
+function merge(template, fragment) {
+  for (const section of Object.keys(fragment)) {
+    const src = fragment[section];
+    const dest = template[section];
+    if (!dest) {
+      template[section] = src;
+    } else {
+      template[section] = mergeSection(section, dest, src);
+    }
+  }
+}
+function mergeSection(section, val1, val2) {
+  switch (section) {
+    case "Description":
+      return `${val1}
+${val2}`;
+    case "AWSTemplateFormatVersion":
+      if (val1 != null && val2 != null && val1 !== val2) {
+        throw new AssumptionError(lit`ConflictingCloudformationTemplateVersions`, `Conflicting CloudFormation template versions provided: '${val1}' and '${val2}`);
+      }
+      return val1 ?? val2;
+    case "Transform":
+      return mergeSets(val1, val2);
+    default:
+      return mergeObjectsWithoutDuplicates(section, val1, val2);
+  }
+}
+function mergeSets(val1, val2) {
+  const array1 = val1 == null ? [] : Array.isArray(val1) ? val1 : [val1];
+  const array2 = val2 == null ? [] : Array.isArray(val2) ? val2 : [val2];
+  for (const value of array2) {
+    if (!array1.includes(value)) {
+      array1.push(value);
+    }
+  }
+  return array1.length === 1 ? array1[0] : array1;
+}
+function mergeObjectsWithoutDuplicates(section, dest, src) {
+  if (typeof dest !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(dest)} to be an object`);
+  }
+  if (typeof src !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(src)} to be an object`);
+  }
+  for (const id of Object.keys(src)) {
+    if (id in dest) {
+      throw new AssumptionError(lit`SectionAlreadyContains`, `section '${section}' already contains '${id}'`);
+    }
+    dest[id] = src[id];
+  }
+  return dest;
+}
+function cfnElements(node, into = []) {
+  if (CfnElement.isCfnElement(node)) {
+    into.push(node);
+  }
+  for (const child of import_constructs22.Node.of(node).children) {
+    if (STACK_TYPE.isMarked(child)) {
+      continue;
+    }
+    cfnElements(child, into);
+  }
+  return into;
+}
+function rootPathTo(construct, ancestor) {
+  const scopes = import_constructs22.Node.of(construct).scopes;
+  for (let i = scopes.length - 2; i >= 0; i--) {
+    if (scopes[i] === ancestor) {
+      return scopes.slice(i + 1);
+    }
+  }
+  return scopes;
+}
+function makeStackName(components, prefix = "") {
+  if (components.length === 1) {
+    const stack_name = prefix + components[0];
+    if (stack_name.length <= 128) {
+      return stack_name;
+    }
+  }
+  return makeUniqueResourceName(components, { maxLength: 128, prefix });
+}
+function getCreateExportsScope(stack) {
+  const exportsName = "Exports";
+  let stackExports = stack.node.tryFindChild(exportsName);
+  if (stackExports === void 0) {
+    stackExports = new import_constructs22.Construct(stack, exportsName);
+  }
+  return stackExports;
+}
+function generateExportName2(stackExports, id) {
+  const stackRelativeExports = FeatureFlags.of(stackExports).isEnabled(STACK_RELATIVE_EXPORTS_CONTEXT);
+  const stack = Stack.of(stackExports);
+  const components = [
+    ...stackExports.node.scopes.slice(stackRelativeExports ? stack.node.scopes.length : 2).map((c) => c.node.id),
+    id
+  ];
+  const prefix = stack.stackName ? stack.stackName + ":" : "";
+  const localPart = makeUniqueId(components);
+  const maxLength = 255;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function count(xs) {
+  const ret = {};
+  for (const x of xs) {
+    if (x in ret) {
+      ret[x] += 1;
+    } else {
+      ret[x] = 1;
+    }
+  }
+  return ret;
+}
+function sameReason(a) {
+  return (b) => a.source === b.source && a.target === b.target;
+}
+function makeCustomCoupledReference(value, strength) {
+  const resolvable = Tokenization.reverse(value);
+  if (!resolvable || !CfnReference.isCfnReference(resolvable)) {
+    throw new UnscopedValidationError(
+      lit`ConsumeReferenceRequiresResourceAttribute`,
+      "consumeReference: the value must be a resource attribute reference (like 'bucket.bucketArn')"
+    );
+  }
+  return new CustomCoupledReference(resolvable, strength);
+}
+var fs17, path21, import_constructs22, minimatch2, STACK_RESOURCE_LIMIT_CONTEXT, SUPPRESS_TEMPLATE_INDENTATION_CONTEXT, TEMPLATE_BODY_MAXIMUM_SIZE, VALID_STACK_NAME_REGEX, MAX_RESOURCES, _resolve_dec, _a6, _init9, _Stack, Stack, firstTwoAgnosticAzs;
+var init_stack = __esm({
+  "../../aws-cdk-lib/core/lib/stack.ts"() {
+    "use strict";
+    fs17 = __toESM(require("fs"));
+    path21 = __toESM(require("path"));
+    import_constructs22 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_arn();
+    init_aspect();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_context_provider();
+    init_feature_flags();
+    init_mixin_metadata();
+    init_permissions_boundary();
+    init_cloudformation_lang();
+    init_logical_id();
+    init_resolve();
+    init_uniqueid();
+    init_prop_injectors();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cx_api();
+    init_perf();
+    init_cfn_output();
+    init_cross_stack_reference_strength();
+    init_names();
+    init_reference();
+    init_stack_synthesizers();
+    init_string_specializer();
+    init_stage();
+    init_tag_manager();
+    init_token();
+    init_refs();
+    init_cfn_reference();
+    init_region_info2();
+    init_region_lookup();
+    init_unique_resource_name();
+    init_private_context();
+    init_aspect_prio();
+    init_errors();
+    init_literal_string();
+    init_debug();
+    init_stack_trace();
+    init_core_construct_finders();
+    init_deps();
+    init_validation2();
+    ({ minimatch: minimatch2 } = require_commonjs3());
+    STACK_RESOURCE_LIMIT_CONTEXT = "@aws-cdk/core:stackResourceLimit";
+    SUPPRESS_TEMPLATE_INDENTATION_CONTEXT = "@aws-cdk/core:suppressTemplateIndentation";
+    TEMPLATE_BODY_MAXIMUM_SIZE = 1e6;
+    VALID_STACK_NAME_REGEX = /^[A-Za-z][A-Za-z0-9-]*$/;
+    MAX_RESOURCES = 500;
+    _Stack = class _Stack extends (_a6 = import_constructs22.Construct, _resolve_dec = [profileFn("Stack.resolve", { telemetry: true })], _a6) {
+      /**
+       * Creates a new stack.
+       *
+       * @param scope Parent of this stack, usually an `App` or a `Stage`, but could be any construct.
+       * @param id The construct ID of this stack. If `stackName` is not explicitly
+       * defined, this id (and any parent IDs) will be used to determine the
+       * physical ID of the stack.
+       * @param props Stack properties.
+       */
+      constructor(scope, id, props = {}) {
+        scope = scope ?? new App({
+          autoSynth: false
+        });
+        id = id ?? "Default";
+        super(scope, id);
+        __runInitializers(_init9, 5, this);
+        /**
+         * Tags to be applied to the stack.
+         */
+        __publicField(this, "tags");
+        /**
+         * Options for CloudFormation template (like version, transform, description).
+         */
+        __publicField(this, "templateOptions");
+        /**
+         * The AWS region into which this stack will be deployed (e.g. `us-west-2`).
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.region` when the stack is defined. This can
+         *    either be a concrete region (e.g. `us-west-2`) or the `Aws.REGION`
+         *    token.
+         * 3. `Aws.REGION`, which is represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::Region" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.region)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into a **region-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other region-agnostic behavior.
+         */
+        __publicField(this, "region");
+        /**
+         * The AWS account into which this stack will be deployed.
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.account` when the stack is defined. This can
+         *    either be a concrete account (e.g. `585695031111`) or the
+         *    `Aws.ACCOUNT_ID` token.
+         * 3. `Aws.ACCOUNT_ID`, which represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::AccountId" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.account)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into an **account-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other account-agnostic behavior.
+         */
+        __publicField(this, "account");
+        /**
+         * The environment coordinates in which this stack is deployed. In the form
+         * `aws://account/region`. Use `stack.account` and `stack.region` to obtain
+         * the specific values, no need to parse.
+         *
+         * You can use this value to determine if two stacks are targeting the same
+         * environment.
+         *
+         * If either `stack.account` or `stack.region` are not concrete values (e.g.
+         * `Aws.ACCOUNT_ID` or `Aws.REGION`) the special strings `unknown-account` and/or
+         * `unknown-region` will be used respectively to indicate this stack is
+         * region/account-agnostic.
+         */
+        __publicField(this, "environment");
+        /**
+         * If this is a nested stack, this represents its `AWS::CloudFormation::Stack`
+         * resource. `undefined` for top-level (non-nested) stacks.
+         *
+         */
+        __publicField(this, "nestedStackResource");
+        /**
+         * The name of the CloudFormation template file emitted to the output
+         * directory during synthesis.
+         *
+         * Example value: `MyStack.template.json`
+         */
+        __publicField(this, "templateFile");
+        /**
+         * The ID of the cloud assembly artifact for this stack.
+         */
+        __publicField(this, "artifactId");
+        /**
+         * Synthesis method for this stack
+         *
+         */
+        __publicField(this, "synthesizer");
+        /**
+         * Whether version reporting is enabled for this stack
+         *
+         * Controls whether the CDK Metadata resource is injected
+         *
+         * @internal
+         */
+        __publicField(this, "_versionReportingEnabled");
+        /**
+         * Whether cross region references are enabled for this stack
+         *
+         * @internal
+         */
+        __publicField(this, "_crossRegionReferences");
+        /**
+         * SNS Notification ARNs to receive stack events.
+         *
+         * @internal
+         */
+        __publicField(this, "_notificationArns");
+        /**
+         * Logical ID generation strategy
+         */
+        __publicField(this, "_logicalIds");
+        /**
+         * Other stacks this stack depends on
+         */
+        __publicField(this, "_stackDependencies");
+        /**
+         * Lists all missing contextual information.
+         * This is returned when the stack is synthesized under the 'missing' attribute
+         * and allows tooling to obtain the context and re-synthesize.
+         */
+        __publicField(this, "_missingContext");
+        __publicField(this, "_stackName");
+        /**
+         * Enable this flag to suppress indentation in generated
+         * CloudFormation templates.
+         *
+         * If not specified, the value of the `@aws-cdk/core:suppressTemplateIndentation`
+         * context key will be used. If that is not specified, then the
+         * default value `false` will be used.
+         *
+         * @default - the value of `@aws-cdk/core:suppressTemplateIndentation`, or `false` if that is not set.
+         */
+        __publicField(this, "_suppressTemplateIndentation");
+        __publicField(this, "_terminationProtection");
+        /**
+         * Silencing a specific diagnostic, should only do this once.
+         */
+        __publicField(this, "azLiteralWarningSilenced", false);
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        this._missingContext = new Array();
+        this._stackDependencies = {};
+        this.templateOptions = {};
+        this._crossRegionReferences = !!props.crossRegionReferences;
+        this._suppressTemplateIndentation = props.suppressTemplateIndentation ?? this.node.tryGetContext(SUPPRESS_TEMPLATE_INDENTATION_CONTEXT) ?? false;
+        STACK_TYPE.mark(this);
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+        this._logicalIds = new LogicalIDs();
+        const { account, region, environment } = this.parseEnvironment(props.env);
+        this.account = account;
+        this.region = region;
+        this.environment = environment;
+        this._terminationProtection = props.terminationProtection ?? false;
+        if (props.description !== void 0) {
+          if (props.description.length > 512) {
+            throw new ValidationError(lit`StackDescriptionTooLong`, `Stack description must be <= 1024 bytes. Received description: '${props.description}'`, this);
+          }
+          this.templateOptions.description = props.description;
+        }
+        this._stackName = props.stackName ?? this.generateStackName();
+        if (this._stackName.length > 128) {
+          throw new ValidationError(lit`StackNameTooLong`, `Stack name must be <= 128 characters. Stack name: '${this._stackName}'`, this);
+        }
+        this.tags = new TagManager("KeyValue" /* KEY_VALUE */, "aws:cdk:stack", props.tags);
+        for (const notificationArn of props.notificationArns ?? []) {
+          if (Token.isUnresolved(notificationArn)) {
+            throw new ValidationError(lit`StackNotificationArnsContainTokens`, `Stack '${id}' includes one or more tokens in its notification ARNs: ${props.notificationArns}`, this);
+          }
+        }
+        this._notificationArns = props.notificationArns;
+        if (!VALID_STACK_NAME_REGEX.test(this.stackName)) {
+          throw new ValidationError(lit`StackNameInvalidFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${this.stackName}'`, this);
+        }
+        const featureFlags = FeatureFlags.of(this);
+        const stackNameDupeContext = featureFlags.isEnabled(ENABLE_STACK_NAME_DUPLICATES_CONTEXT);
+        const newStyleSynthesisContext = featureFlags.isEnabled(NEW_STYLE_STACK_SYNTHESIS_CONTEXT);
+        const artifactId = stackNameDupeContext || newStyleSynthesisContext ? this.generateStackArtifactId() : this.stackName;
+        this.artifactId = artifactId.replace(/[^A-Za-z0-9_\-\.]/g, "_");
+        this.templateFile = `${this.artifactId}.template.json`;
+        this._versionReportingEnabled = (props.analyticsReporting ?? this.node.tryGetContext(ANALYTICS_REPORTING_ENABLED_CONTEXT)) && !this.nestedStackParent;
+        const synthesizer = props.synthesizer ?? this.node.tryGetContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER) ?? (newStyleSynthesisContext ? new DefaultStackSynthesizer() : new LegacyStackSynthesizer());
+        if (isReusableStackSynthesizer(synthesizer)) {
+          this.synthesizer = synthesizer.reusableBind(this);
+        } else {
+          this.synthesizer = synthesizer;
+          this.synthesizer.bind(this);
+        }
+        props.permissionsBoundary?._bind(this);
+        this.addPermissionsBoundaryAspect();
+      }
+      /**
+       * Return whether the given object is a Stack.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static isStack(x) {
+        return STACK_TYPE.isMarked(x);
+      }
+      /**
+       * Looks up the first stack scope in which `construct` is defined. Fails if there is no stack up the tree.
+       *
+       * Will return the closest containing `Stack` or `NestedStack`.
+       *
+       * @param construct The construct to start the search from.
+       */
+      static of(construct) {
+        return stackOf(construct);
+      }
+      /**
+       * Override the reference strength for a specific cross-stack reference value.
+       *
+       * Use this to weaken (or strengthen) an individual reference without
+       * affecting other references to the same resource. For example:
+       *
+       * ```ts
+       * // producerStack defines an SNS topic
+       * declare const topic: sns.Topic;
+       *
+       * // consumerStack subscribes to it with a weak reference,
+       * // so the producer can be torn down without blocking on this consumer
+       * const consumerStack = new Stack(app, 'Consumer', {
+       *   env: { account: '123456789012', region: 'us-east-1' },
+       * });
+       * new sns.Subscription(consumerStack, 'Subscription', {
+       *   topic: sns.Topic.fromTopicArn(consumerStack, 'Topic', Stack.consumeReference(topic.topicArn)),
+       *   endpoint: 'https://example.com/webhook',
+       *   protocol: sns.SubscriptionProtocol.HTTPS,
+       * });
+       * ```
+       *
+       * @param value A tokenized string reference (e.g. `bucket.bucketArn`).
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeReference(value, strength = "both" /* BOTH */) {
+        return Token.asString(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Override the reference strength for a specific cross-stack string list reference.
+       *
+       * This is the string list equivalent of `consumeReference`.
+       *
+       * @param value A tokenized string list reference.
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeListReference(value, strength = "both" /* BOTH */) {
+        return Token.asList(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Whether termination protection is enabled for this stack.
+       */
+      get terminationProtection() {
+        return this._terminationProtection;
+      }
+      set terminationProtection(value) {
+        this._terminationProtection = value;
+      }
+      /**
+       * If a permissions boundary has been applied on this scope or any parent scope
+       * then this will return the ARN of the permissions boundary.
+       *
+       * This will return the permissions boundary that has been applied to the most
+       * specific scope.
+       *
+       * For example:
+       *
+       * const stage = new Stage(app, 'stage', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('stage-pb'),
+       * });
+       *
+       * const stack = new Stack(stage, 'Stack', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'),
+       * });
+       *
+       *  Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';
+       *
+       * @param scope the construct scope to retrieve the permissions boundary name from
+       * @returns the name of the permissions boundary or undefined if not set
+       */
+      get permissionsBoundaryArn() {
+        const qualifier = this.synthesizer.bootstrapQualifier ?? this.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        const spec = new StringSpecializer(this, qualifier);
+        const context = this.node.tryGetContext(PERMISSIONS_BOUNDARY_CONTEXT_KEY);
+        let arn;
+        if (context && context.arn) {
+          arn = spec.specialize(context.arn);
+        } else if (context && context.name) {
+          arn = spec.specialize(this.formatArn({
+            service: "iam",
+            resource: "policy",
+            region: "",
+            resourceName: context.name
+          }));
+        }
+        if (arn && (arn.includes("${Qualifier}") || arn.includes("${AWS::AccountId}") || arn.includes("${AWS::Region}") || arn.includes("${AWS::Partition}"))) {
+          throw new ValidationError(lit`PermissionsBoundaryContainsPseudoParameter`, `The permissions boundary ${arn} includes a pseudo parameter, which is not supported for environment agnostic stacks`, this);
+        }
+        return arn;
+      }
+      /**
+       * Adds an aspect to the stack that will apply the permissions boundary.
+       * This will only add the aspect if the permissions boundary has been set
+       */
+      addPermissionsBoundaryAspect() {
+        const permissionsBoundaryArn = this.permissionsBoundaryArn;
+        if (permissionsBoundaryArn) {
+          Aspects.of(this).add({
+            visit(node) {
+              if (CfnResource.isCfnResource(node) && (node.cfnResourceType == "AWS::IAM::Role" || node.cfnResourceType == "AWS::IAM::User")) {
+                node.addPropertyOverride("PermissionsBoundary", permissionsBoundaryArn);
+              }
+            }
+          }, {
+            priority: mutatingAspectPrio32333(this)
+          });
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      resolve(obj) {
+        return resolve(obj, {
+          scope: this,
+          prefix: [],
+          resolver: CLOUDFORMATION_TOKEN_RESOLVER,
+          preparing: false
+        });
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a JSON string
+       */
+      toJsonString(obj, space) {
+        return CloudFormationLang.toJSON(obj, space).toString();
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a YAML string
+       */
+      toYamlString(obj) {
+        return CloudFormationLang.toYAML(obj).toString();
+      }
+      /**
+       * DEPRECATED
+       * @deprecated use `reportMissingContextKey()`
+       */
+      reportMissingContext(report) {
+        if (!Object.values(cloud_assembly_schema_exports.ContextProvider).includes(report.provider)) {
+          throw new ValidationError(lit`UnknownContextProvider`, `Unknown context provider requested in: ${JSON.stringify(report)}`, this);
+        }
+        this.reportMissingContextKey(report);
+      }
+      /**
+       * Indicate that a context key was expected
+       *
+       * Contains instructions which will be emitted into the cloud assembly on how
+       * the key should be supplied.
+       *
+       * @param report The set of parameters needed to obtain the context
+       */
+      reportMissingContextKey(report) {
+        this._missingContext.push(report);
+      }
+      /**
+       * Rename a generated logical identities
+       *
+       * To modify the naming scheme strategy, extend the `Stack` class and
+       * override the `allocateLogicalId` method.
+       */
+      renameLogicalId(oldId, newId) {
+        this._logicalIds.addRename(oldId, newId);
+      }
+      /**
+       * Allocates a stack-unique CloudFormation-compatible logical identity for a
+       * specific resource.
+       *
+       * This method is called when a `CfnElement` is created and used to render the
+       * initial logical identity of resources. Logical ID renames are applied at
+       * this stage.
+       *
+       * This method uses the protected method `allocateLogicalId` to render the
+       * logical ID for an element. To modify the naming scheme, extend the `Stack`
+       * class and override this method.
+       *
+       * @param element The CloudFormation element for which a logical identity is
+       * needed.
+       */
+      getLogicalId(element) {
+        const logicalId = this.allocateLogicalId(element);
+        return this._logicalIds.applyRename(logicalId);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method has been renamed to `addStackDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addStackDependency` instead.
+       */
+      addDependency(target, reason) {
+        this.addStackDependency(target, reason);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method only adds dependencies between stacks. If you are looking
+       * for a generic construct-to-construct dependency mechanism, use
+       * `construct.node.addDependency` instead.
+       */
+      addStackDependency(target, reason) {
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addStackDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Return the stacks this stack depends on
+       */
+      get dependencies() {
+        return Object.values(this._stackDependencies).map((x) => x.stack);
+      }
+      /**
+       * The concrete CloudFormation physical stack name.
+       *
+       * This is either the name defined explicitly in the `stackName` prop or
+       * allocated based on the stack's location in the construct tree. Stacks that
+       * are directly defined under the app use their construct `id` as their stack
+       * name. Stacks that are defined deeper within the tree will use a hashed naming
+       * scheme based on the construct path to ensure uniqueness.
+       *
+       * If you wish to obtain the deploy-time AWS::StackName intrinsic,
+       * you can use `Aws.STACK_NAME` directly.
+       */
+      get stackName() {
+        return this._stackName;
+      }
+      /**
+       * The partition in which this stack is defined
+       */
+      get partition() {
+        if (!FeatureFlags.of(this).isEnabled(ENABLE_PARTITION_LITERALS) || Token.isUnresolved(this.region)) {
+          return Aws.PARTITION;
+        } else {
+          const partition = RegionInfo.get(this.region).partition;
+          return partition ?? Aws.PARTITION;
+        }
+      }
+      /**
+       * The Amazon domain suffix for the region in which this stack is defined
+       */
+      get urlSuffix() {
+        return Aws.URL_SUFFIX;
+      }
+      /**
+       * The ID of the stack
+       *
+       * @example
+       * // After resolving, looks like
+       * 'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123'
+       */
+      get stackId() {
+        return new ScopedAws(this).stackId;
+      }
+      /**
+       * Returns the list of notification Amazon Resource Names (ARNs) for the current stack.
+       */
+      get notificationArns() {
+        return new ScopedAws(this).notificationArns;
+      }
+      /**
+       * Indicates if this is a nested stack, in which case `parentStack` will include a reference to its parent.
+       */
+      get nested() {
+        return this.nestedStackResource !== void 0;
+      }
+      /**
+       * Creates an ARN from components.
+       *
+       * If `partition`, `region` or `account` are not specified, the stack's
+       * partition, region and account will be used.
+       *
+       * If any component is the empty string, an empty string will be inserted
+       * into the generated ARN at the location that component corresponds to.
+       *
+       * The ARN will be formatted as follows:
+       *
+       *   arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}
+       *
+       * The required ARN pieces that are omitted will be taken from the stack that
+       * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope
+       * can be 'undefined'.
+       */
+      formatArn(components) {
+        return Arn.format(components, this);
+      }
+      /**
+       * Given an ARN, parses it and returns components.
+       *
+       * IF THE ARN IS A CONCRETE STRING...
+       *
+       * ...it will be parsed and validated. The separator (`sep`) will be set to '/'
+       * if the 6th component includes a '/', in which case, `resource` will be set
+       * to the value before the '/' and `resourceName` will be the rest. In case
+       * there is no '/', `resource` will be set to the 6th components and
+       * `resourceName` will be set to the rest of the string.
+       *
+       * IF THE ARN IS A TOKEN...
+       *
+       * ...it cannot be validated, since we don't have the actual value yet at the
+       * time of this function call. You will have to supply `sepIfToken` and
+       * whether or not ARNs of the expected format usually have resource names
+       * in order to parse it properly. The resulting `ArnComponents` object will
+       * contain tokens for the subexpressions of the ARN, not string literals.
+       *
+       * If the resource name could possibly contain the separator char, the actual
+       * resource name cannot be properly parsed. This only occurs if the separator
+       * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs,
+       * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a
+       * Tokenized ARN, you must know the resource type and call
+       * `Arn.extractResourceName`.
+       *
+       * @param arn The ARN string to parse
+       * @param sepIfToken The separator used to separate resource from resourceName
+       * @param hasName Whether there is a name component in the ARN at all. For
+       * example, SNS Topics ARNs have the 'resource' component contain the topic
+       * name, and no 'resourceName' component.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       * components of the ARN.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       *      components of the ARN.
+       *
+       * @deprecated use splitArn instead
+       */
+      parseArn(arn, sepIfToken = "/", hasName = true) {
+        return Arn.parse(arn, sepIfToken, hasName);
+      }
+      /**
+       * Splits the provided ARN into its components.
+       * Works both if 'arn' is a string like 'arn:aws:s3:::bucket',
+       * and a Token representing a dynamic CloudFormation expression
+       * (in which case the returned components will also be dynamic CloudFormation expressions,
+       * encoded as Tokens).
+       *
+       * @param arn the ARN to split into its components
+       * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses
+       */
+      splitArn(arn, arnFormat) {
+        return Arn.split(arn, arnFormat);
+      }
+      /**
+       * Returns the list of AZs that are available in the AWS environment
+       * (account/region) associated with this stack.
+       *
+       * If the stack is environment-agnostic (either account and/or region are
+       * tokens), this property will return an array with 2 tokens that will resolve
+       * at deploy-time to the first two availability zones returned from CloudFormation's
+       * `Fn::GetAZs` intrinsic function.
+       *
+       * If they are not available in the context, returns a set of dummy values and
+       * reports them as missing, and let the CLI resolve them by calling EC2
+       * `DescribeAvailabilityZones` on the target environment.
+       *
+       * To specify a different strategy for selecting availability zones override this method.
+       */
+      get availabilityZones() {
+        this._silenceLiteralAzWarning();
+        const agnostic = Token.isUnresolved(this.account) || Token.isUnresolved(this.region);
+        if (agnostic) {
+          return this.node.tryGetContext(import_cloud_assembly_api.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY) || firstTwoAgnosticAzs();
+        }
+        const value = ContextProvider.getValue(this, {
+          provider: cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER,
+          dummyValue: ["dummy1a", "dummy1b", "dummy1c"]
+        }).value;
+        if (!Array.isArray(value)) {
+          throw new ValidationError(lit`ProviderExpectedList`, `Provider ${cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER} expects a list`, this);
+        }
+        return value;
+      }
+      /**
+       * Register a file asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addFileAsset()` if you are calling,
+       * and a different IStackSynthesizer class if you are implementing.
+       */
+      addFileAsset(asset) {
+        return this.synthesizer.addFileAsset(asset);
+      }
+      /**
+       * Register a docker image asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addDockerImageAsset()` if you are calling,
+       * and a different `IStackSynthesizer` class if you are implementing.
+       */
+      addDockerImageAsset(asset) {
+        return this.synthesizer.addDockerImageAsset(asset);
+      }
+      /**
+       * If this is a nested stack, returns its parent stack.
+       */
+      get nestedStackParent() {
+        return this.nestedStackResource && _Stack.of(this.nestedStackResource);
+      }
+      /**
+       * Returns the parent of a nested stack.
+       *
+       * @deprecated use `nestedStackParent`
+       */
+      get parentStack() {
+        return this.nestedStackParent;
+      }
+      /**
+       * Add a Transform to this stack. A Transform is a macro that AWS
+       * CloudFormation uses to process your template.
+       *
+       * Duplicate values are removed when stack is synthesized.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html
+       * @param transform The transform to add
+       *
+       * @example
+       * declare const stack: Stack;
+       *
+       * stack.addTransform('AWS::Serverless-2016-10-31')
+       */
+      addTransform(transform) {
+        if (!this.templateOptions.transforms) {
+          this.templateOptions.transforms = [];
+        }
+        this.templateOptions.transforms.push(transform);
+      }
+      /**
+       * Adds an arbitrary key-value pair, with information you want to record about the stack.
+       * These get translated to the Metadata section of the generated template.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       */
+      addMetadata(key, value) {
+        if (!this.templateOptions.metadata) {
+          this.templateOptions.metadata = {};
+        }
+        this.templateOptions.metadata[key] = value;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two top-level stacks.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addStackDependency(target, reason) {
+        if (!reason.reason) {
+          throw new ValidationError(lit`MissingDependencyReason`, "A stack dependency reason must be provided", this);
+        }
+        const cycle = target.stackDependencyReasons(this);
+        if (cycle !== void 0) {
+          const cycleDescription = cycle.map((cycleReason) => {
+            return cycleReason.reason;
+          }).join(", ");
+          throw new ValidationError(lit`DependencyCycle`, `'${target.node.path}' depends on '${this.node.path}' (${cycleDescription}). Adding this dependency (${reason.reason}) would create a cyclic reference.`, this);
+        }
+        const dep = this._stackDependencies[Names.uniqueId(target)] ?? (this._stackDependencies[Names.uniqueId(target)] = { stack: target, reasons: [] });
+        if (dep.reasons.find(sameReason(reason))) {
+          return;
+        }
+        dep.reasons.push(reason);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] stack "${reason.source.node.path}" depends on "${reason.target.node.path}"`);
+        }
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two top-level stacks.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeStackDependency(target, reason) {
+        let dep = this._stackDependencies[Names.uniqueId(target)];
+        if (!dep) {
+          return;
+        }
+        const matchedReasons = dep.reasons.filter(sameReason(reason));
+        if (matchedReasons.length === 0) {
+          return;
+        }
+        if (matchedReasons.length > 1) {
+          throw new ValidationError(lit`TooManyDependencyReasons`, `There cannot be more than one reason for dependency removal, found: ${matchedReasons}`, this);
+        }
+        let index = dep.reasons.indexOf(matchedReasons[0]);
+        dep.reasons.splice(index, 1);
+        if (dep.reasons.length == 0) {
+          delete this._stackDependencies[Names.uniqueId(target)];
+        }
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.log(`[CDK_DEBUG_DEPS] stack "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Return the stacks dependencies caused by the given construct.
+       *
+       * Returns the target resources that the dependency has been added for.
+       *
+       * I'm not sure this method is useful in any way, but we are keeping it in
+       * to maintain exact behavior as guaranteed by unit tests.
+       *
+       * @internal
+       */
+      _stackDependenciesCausedBy(source) {
+        return Array.from(new Set(Object.values(this._stackDependencies).flatMap((dep) => dep.reasons).filter((reason) => reason.source === source).map((reason) => reason.target)));
+      }
+      /**
+       * Synthesizes the cloudformation template into a cloud assembly.
+       * @internal
+       */
+      _synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        const builder = session.assembly;
+        this.node.addMetadata(CDK_TEMPLATE_FILE_KEY, this.templateFile);
+        const template = this._toCloudFormation();
+        const outPath = path21.join(builder.outdir, this.templateFile);
+        if (this.maxResources > 0) {
+          const resources = template.Resources || {};
+          const numberOfResources = Object.keys(resources).length;
+          if (numberOfResources > this.maxResources) {
+            const counts = Object.entries(count(Object.values(resources).map((r) => `${r?.Type}`))).map(([type, c]) => `${type} (${c})`).join(", ");
+            throw new ValidationError(lit`TooManyResourcesInStack`, `Number of resources in stack '${this.node.path}': ${numberOfResources} is greater than allowed maximum of ${this.maxResources}: ${counts}`, this);
+          } else if (numberOfResources >= this.maxResources * 0.8) {
+            Annotations.of(this).addInfo(`Number of resources: ${numberOfResources} is approaching allowed maximum of ${this.maxResources}`);
+          }
+        }
+        const indent = this._suppressTemplateIndentation ? void 0 : 1;
+        const templateData = JSON.stringify(template, void 0, indent);
+        if (templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE * 0.8) {
+          const verb = templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE ? "exceeds" : "is approaching";
+          const advice = this._suppressTemplateIndentation ? "Split resources into multiple stacks to reduce template size" : "Split resources into multiple stacks or set suppressTemplateIndentation to reduce template size";
+          const message = `Template size ${verb} limit: ${templateData.length}/${TEMPLATE_BODY_MAXIMUM_SIZE}. ${advice}.`;
+          Annotations.of(this).addWarningV2("@aws-cdk/core:Stack.templateSize", message);
+        }
+        fs17.writeFileSync(outPath, templateData);
+        for (const ctx of this._missingContext) {
+          const queryLookupOptions = {
+            lookupRoleArn,
+            lookupRoleExternalId,
+            assumeRoleAdditionalOptions: lookupRoleAdditionalOptions
+          };
+          builder.addMissing({ ...ctx, props: { ...ctx.props, ...queryLookupOptions } });
+        }
+      }
+      /**
+       * Look up a fact value for the given fact for the region of this stack
+       *
+       * Will return a definite value only if the region of the current stack is resolved.
+       * If not, a lookup map will be added to the stack and the lookup will be done at
+       * CDK deployment time.
+       *
+       * What regions will be included in the lookup map is controlled by the
+       * `@aws-cdk/core:target-partitions` context value: it must be set to a list
+       * of partitions, and only regions from the given partitions will be included.
+       * If no such context key is set, all regions will be included.
+       *
+       * This function is intended to be used by construct library authors. Application
+       * builders can rely on the abstractions offered by construct libraries and do
+       * not have to worry about regional facts.
+       *
+       * If `defaultValue` is not given, it is an error if the fact is unknown for
+       * the given region.
+       */
+      regionalFact(factName, defaultValue) {
+        if (!Token.isUnresolved(this.region)) {
+          const ret = Fact.find(this.region, factName) ?? defaultValue;
+          if (ret === void 0) {
+            throw new ValidationError(lit`RegionFactNotFound`, `region-info: don't know ${factName} for region ${this.region}. Use 'Fact.register' to provide this value.`, this);
+          }
+          return ret;
+        }
+        const partitions = import_constructs22.Node.of(this).tryGetContext(TARGET_PARTITIONS);
+        if (partitions !== void 0 && partitions !== "undefined" && !Array.isArray(partitions)) {
+          throw new ValidationError(lit`TargetPartitionsContextValueInvalid`, `Context value '${TARGET_PARTITIONS}' should be a list of strings, got: ${JSON.stringify(partitions)}`, this);
+        }
+        const lookupMap = partitions !== void 0 && partitions !== "undefined" ? RegionInfo.limitedRegionMap(factName, partitions) : RegionInfo.regionMap(factName);
+        return deployTimeLookup(this, factName, lookupMap, defaultValue);
+      }
+      /**
+       * Create a CloudFormation Export for a string value
+       *
+       * Returns a string representing the corresponding `Fn.importValue()`
+       * expression for this Export. You can control the name for the export by
+       * passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * Here is how the process works. Let's say there are two stacks,
+       * `producerStack` and `consumerStack`, and `producerStack` has a bucket
+       * called `bucket`, which is referenced by `consumerStack` (perhaps because
+       * an AWS Lambda Function writes into it, or something like that).
+       *
+       * It is not safe to remove `producerStack.bucket` because as the bucket is being
+       * deleted, `consumerStack` might still be using it.
+       *
+       * Instead, the process takes two deployments:
+       *
+       * **Deployment 1: break the relationship**:
+       *
+       * - Make sure `consumerStack` no longer references `bucket.bucketName` (maybe the consumer
+       *   stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just
+       *   remove the Lambda Function altogether).
+       * - In the `ProducerStack` class, call `this.exportValue(this.bucket.bucketName)`. This
+       *   will make sure the CloudFormation Export continues to exist while the relationship
+       *   between the two stacks is being broken.
+       * - Deploy (this will effectively only change the `consumerStack`, but it's safe to deploy both).
+       *
+       * **Deployment 2: remove the bucket resource**:
+       *
+       * - You are now free to remove the `bucket` resource from `producerStack`.
+       * - Don't forget to remove the `exportValue()` call as well.
+       * - Deploy again (this time only the `producerStack` will be changed -- the bucket will be deleted).
+       */
+      exportValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: exportedValue,
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.importValue(options.name);
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            value: Token.asString(exportable),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.importValue(exportName);
+        if (Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedListValueFromExportValue`, "Attempted to export a list value from `exportValue()`: use `exportStringListValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Create a CloudFormation Export for a string list value
+       *
+       * Returns a string list representing the corresponding `Fn.importValue()`
+       * expression for this Export. The export expression is automatically wrapped with an
+       * `Fn::Join` and the import value with an `Fn::Split`, since CloudFormation can only
+       * export strings. You can control the name for the export by passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * See `exportValue` for an example of this process.
+       */
+      exportStringListValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, exportedValue),
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(options.name));
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            // this is a list so export an Fn::Join expression
+            // and import an Fn::Split expression,
+            // since CloudFormation Outputs can only be strings
+            // (string lists are invalid)
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(exportable)),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(exportName));
+        if (!Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedStringValueFromExportStringListValue`, "Attempted to export a string value from `exportStringListValue()`: use `exportValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Returns `true` if this stack is a top-level stack (i.e., not a nested stack).
+       *
+       * For better or worse, `Stack` is being subclassed by other constructs to mean "template producer".
+       * For example, `NestedStack` is a subclass of `Stack` but is not a top-level stack, and so
+       * is `CloudFormationProduct`.
+       *
+       * This indicates whether the current class represents a top-level stack
+       * (should only be true for instances of the main `Stack` class), or false for
+       * a construct that simply produces a template and happens to reuse `Stack`
+       * for that purpose.
+       *
+       * Here is the class hierarchy we should have had:
+       *
+       * ```
+       * TemplateProducer
+       * ├── Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * Here is the class hierarchy we actually have:
+       *
+       * ```
+       * Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * @internal
+       */
+      get _isTopLevelStack() {
+        return true;
+      }
+      /**
+       * Returns the naming scheme used to allocate logical IDs. By default, uses
+       * the `HashedAddressingScheme` but this method can be overridden to customize
+       * this behavior.
+       *
+       * In order to make sure logical IDs are unique and stable, we hash the resource
+       * construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as
+       * a suffix to the path components joined without a separator (CloudFormation
+       * IDs only allow alphanumeric characters).
+       *
+       * The result will be:
+       *
+       *   
+       *     "human"      "hash"
+       *
+       * If the "human" part of the ID exceeds 240 characters, we simply trim it so
+       * the total ID doesn't exceed CloudFormation's 255 character limit.
+       *
+       * We only take 8 characters from the md5 hash (0.000005 chance of collision).
+       *
+       * Special cases:
+       *
+       * - If the path only contains a single component (i.e. it's a top-level
+       *   resource), we won't add the hash to it. The hash is not needed for
+       *   disambiguation and also, it allows for a more straightforward migration an
+       *   existing CloudFormation template to a CDK stack without logical ID changes
+       *   (or renames).
+       * - For aesthetic reasons, if the last components of the path are the same
+       *   (i.e. `L1/L2/Pipeline/Pipeline`), they will be de-duplicated to make the
+       *   resulting human portion of the ID more pleasing: `L1L2Pipeline`
+       *   instead of `L1L2PipelinePipeline`
+       * - If a component is named "Default" it will be omitted from the path. This
+       *   allows refactoring higher level abstractions around constructs without affecting
+       *   the IDs of already deployed resources.
+       * - If a component is named "Resource" it will be omitted from the user-visible
+       *   path, but included in the hash. This reduces visual noise in the human readable
+       *   part of the identifier.
+       *
+       * @param cfnElement The element for which the logical ID is allocated.
+       */
+      allocateLogicalId(cfnElement) {
+        const scopes = cfnElement.node.scopes;
+        const stackIndex = scopes.indexOf(cfnElement.stack);
+        const pathComponents = scopes.slice(stackIndex + 1).map((x) => x.node.id);
+        return makeUniqueId(pathComponents);
+      }
+      /**
+       * Validate stack name
+       *
+       * CloudFormation stack names can include dashes in addition to the regular identifier
+       * character classes, and we don't allow one of the magic markers.
+       *
+       * @internal
+       */
+      _validateId(name) {
+        if (name && !VALID_STACK_NAME_REGEX.test(name)) {
+          throw new ValidationError(lit`InvalidStackNameFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${name}'`, this);
+        }
+      }
+      /**
+       * Returns the CloudFormation template for this stack by traversing
+       * the tree and invoking _toCloudFormation() on all Entity objects.
+       *
+       * @internal
+       */
+      _toCloudFormation() {
+        let transform;
+        if (this.templateOptions.transform) {
+          Annotations.of(this).addWarningV2("@aws-cdk/core:stackDeprecatedTransform", "This stack is using the deprecated `templateOptions.transform` property. Consider switching to `addTransform()`.");
+          this.addTransform(this.templateOptions.transform);
+        }
+        if (this.templateOptions.transforms) {
+          if (this.templateOptions.transforms.length === 1) {
+            transform = this.templateOptions.transforms[0];
+          } else {
+            transform = Array.from(new Set(this.templateOptions.transforms));
+          }
+        }
+        const template = {
+          Description: this.templateOptions.description,
+          Transform: transform,
+          AWSTemplateFormatVersion: this.templateOptions.templateFormatVersion,
+          Metadata: this.templateOptions.metadata
+        };
+        const elements = cfnElements(this);
+        const fragments = elements.map((e) => this.resolve(e._toCloudFormation()));
+        for (const fragment of fragments) {
+          merge(template, fragment);
+        }
+        const ret = this.resolve(template) || {};
+        this._logicalIds.assertAllRenamesApplied();
+        return ret;
+      }
+      /**
+       * Deprecated.
+       *
+       * @see https://github.com/aws/aws-cdk/pull/7187
+       * @returns reference itself without any change
+       * @deprecated cross reference handling has been moved to `App.prepare()`.
+       */
+      prepareCrossReference(_sourceStack, reference) {
+        return reference;
+      }
+      /**
+       * Determine the various stack environment attributes.
+       *
+       */
+      parseEnvironment(env2 = {}) {
+        const containingAssembly = Stage.of(this);
+        if (env2.account && typeof env2.account !== "string") {
+          throw new ValidationError(lit`AccountIdMustBeString`, `Account id of stack environment must be a 'string' but received '${typeof env2.account}'`, this);
+        }
+        if (env2.region && typeof env2.region !== "string") {
+          throw new ValidationError(lit`RegionMustBeString`, `Region of stack environment must be a 'string' but received '${typeof env2.region}'`, this);
+        }
+        const account = env2.account ?? containingAssembly?.account ?? Aws.ACCOUNT_ID;
+        const region = env2.region ?? containingAssembly?.region ?? Aws.REGION;
+        const envAccount = !Token.isUnresolved(account) ? account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+        const envRegion = !Token.isUnresolved(region) ? region : import_cloud_assembly_api.UNKNOWN_REGION;
+        return {
+          account,
+          region,
+          environment: (void 0).format(envAccount, envRegion)
+        };
+      }
+      /**
+       * Maximum number of resources in the stack
+       *
+       * Set to 0 to mean "unlimited".
+       */
+      get maxResources() {
+        const contextLimit = this.node.tryGetContext(STACK_RESOURCE_LIMIT_CONTEXT);
+        return contextLimit !== void 0 ? parseInt(contextLimit, 10) : MAX_RESOURCES;
+      }
+      /**
+       * Check whether this stack has a (transitive) dependency on another stack
+       *
+       * Returns the list of reasons on the dependency path, or undefined
+       * if there is no dependency.
+       */
+      stackDependencyReasons(other) {
+        if (this === other) {
+          return [];
+        }
+        for (const dep of Object.values(this._stackDependencies)) {
+          const ret = dep.stack.stackDependencyReasons(other);
+          if (ret !== void 0) {
+            return [...dep.reasons, ...ret];
+          }
+        }
+        return void 0;
+      }
+      /**
+       * Calculate the stack name based on the construct path
+       *
+       * The stack name is the name under which we'll deploy the stack,
+       * and incorporates containing Stage names by default.
+       *
+       * Generally this looks a lot like how logical IDs are calculated.
+       * The stack name is calculated based on the construct root path,
+       * as follows:
+       *
+       * - Path is calculated with respect to containing App or Stage (if any)
+       * - If the path is one component long just use that component, otherwise
+       *   combine them with a hash.
+       *
+       * Since the hash is quite ugly and we'd like to avoid it if possible -- but
+       * we can't anymore in the general case since it has been written into legacy
+       * stacks. The introduction of Stages makes it possible to make this nicer however.
+       * When a Stack is nested inside a Stage, we use the path components below the
+       * Stage, and prefix the path components of the Stage before it.
+       */
+      generateStackName() {
+        const assembly = Stage.of(this);
+        const prefix = assembly && assembly.stageName ? `${assembly.stageName}-` : "";
+        if (FeatureFlags.of(this).isEnabled(INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION)) {
+          return `${this.generateStackId(assembly, prefix)}`;
+        } else {
+          return `${prefix}${this.generateStackId(assembly)}`;
+        }
+      }
+      /**
+       * The artifact ID for this stack
+       *
+       * Stack artifact ID is unique within the App's Cloud Assembly.
+       */
+      generateStackArtifactId() {
+        return this.generateStackId(this.node.root);
+      }
+      /**
+       * Generate an ID with respect to the given container construct.
+       */
+      generateStackId(container, prefix = "") {
+        const rootPath = rootPathTo(this, container);
+        const ids = rootPath.map((c) => import_constructs22.Node.of(c).id);
+        if (ids.length === 1 && !ids[0]) {
+          throw new ValidationError(lit`StackIdMustBeDefined`, "unexpected: stack id must always be defined", this);
+        }
+        return makeStackName(ids, prefix);
+      }
+      /**
+       * Silence CloudFormation validate warning W3010 ("literal AZs limit portability")
+       *
+       * This is true! But the Validation Plugin is looking at the template and cannot tell
+       * the difference between a literal AZ in the template because a user typed it in the
+       * CDK code, vs a user using CDK's facilities to reflect on AZs and using those.
+       *
+       * So once a user calls `stack.availabilityZones`, we will take that as a signal
+       * they are "doing the right thing" and silencing this warning for them.
+       *
+       * @internal
+       */
+      _silenceLiteralAzWarning() {
+        if (this.azLiteralWarningSilenced) {
+          return;
+        }
+        this.azLiteralWarningSilenced = true;
+        Validations.of(this).acknowledge({
+          id: "CloudFormation-Validate::W3010",
+          reason: "Literal AZs in template are the result of accessing stack.availabilityZones, this is expected and safe"
+        });
+      }
+      resolveExportedValue(exportedValue) {
+        const resolvable = Tokenization.reverse(exportedValue);
+        if (!resolvable || !Reference.isReference(resolvable)) {
+          throw new ValidationError(lit`ExportValueRequiresNameOrResourceAttribute`, "exportValue: either supply 'name' or make sure to export a resource attribute (like 'bucket.bucketName')", this);
+        }
+        const exportable = getExportable(this, resolvable);
+        const exportsScope = getCreateExportsScope(this);
+        const resolved = this.resolve(exportable);
+        const id = "Output" + JSON.stringify(resolved);
+        const exportName = generateExportName2(exportsScope, id);
+        if (Token.isUnresolved(exportName)) {
+          throw new ValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(this.resolve(exportName))}`, this);
+        }
+        return {
+          exportable,
+          exportsScope,
+          id,
+          exportName
+        };
+      }
+      /**
+       * Indicates whether the stack requires bundling or not
+       */
+      get bundlingRequired() {
+        const bundlingStacks = this.node.tryGetContext(BUNDLING_STACKS) ?? ["**"];
+        return bundlingStacks.some((pattern) => minimatch2(
+          this.node.path,
+          // use the same value for pattern matching as the aws-cdk CLI (displayName / hierarchicalId)
+          pattern
+        ));
+      }
+      /**
+       * Configure a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      addStackTag(tagName, tagValue) {
+        this.tags.setTag(tagName, tagValue);
+      }
+      /**
+       * Remove a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      removeStackTag(tagName) {
+        this.tags.removeTag(tagName, 0);
+      }
+      /**
+       * The environment this Stack deploys to
+       */
+      get env() {
+        return {
+          account: this.account,
+          region: this.region
+        };
+      }
+    };
+    _init9 = __decoratorStart(_a6);
+    __decorateElement(_init9, 1, "resolve", _resolve_dec, _Stack);
+    __decoratorMetadata(_init9, _Stack);
+    Stack = _Stack;
+    firstTwoAgnosticAzs = /* @__PURE__ */ (() => {
+      let cache;
+      return () => {
+        if (!cache) {
+          cache = [
+            Fn.select(0, Fn.getAzs()),
+            Fn.select(1, Fn.getAzs())
+          ];
+        }
+        return cache;
+      };
+    })();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-element.ts
+function notTooLong(x) {
+  if (x.length < 100) {
+    return x;
+  }
+  return x.slice(0, 47) + "..." + x.slice(-47);
+}
+var import_constructs23, CFN_ELEMENT_SYMBOL, CfnElement, CfnRefElement;
+var init_cfn_element = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-element.ts"() {
+    "use strict";
+    import_constructs23 = __toESM(require_lib4());
+    init_lazy();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_reference();
+    init_stack();
+    init_token();
+    init_errors();
+    init_mixin_metadata();
+    init_literal_string();
+    init_stack_trace();
+    init_debug();
+    CFN_ELEMENT_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnElement");
+    CfnElement = class extends import_constructs23.Construct {
+      /**
+       * Returns `true` if a construct is a stack element (i.e. part of the
+       * synthesized cloudformation template).
+       *
+       * Uses duck-typing instead of `instanceof` to allow stack elements from different
+       * versions of this library to be included in the same stack.
+       *
+       * @returns The construct as a stack element or undefined if it is not a stack element.
+       */
+      static isCfnElement(x) {
+        return CFN_ELEMENT_SYMBOL in x;
+      }
+      /**
+       * The logical ID for this CloudFormation stack element. The logical ID of the element
+       * is calculated from the path of the resource node in the construct tree.
+       *
+       * To override this value, use `overrideLogicalId(newLogicalId)`.
+       *
+       * @returns the logical ID as a stringified token. This value will only get
+       * resolved during synthesis.
+       */
+      logicalId;
+      /**
+       * The stack in which this element is defined. CfnElements must be defined within a stack scope (directly or indirectly).
+       */
+      stack;
+      /**
+       * An explicit logical ID provided by `overrideLogicalId`.
+       */
+      _logicalIdOverride;
+      /**
+       * If the logicalId is locked then it can no longer be overridden.
+       * This is needed for cases where the logicalId is consumed prior to synthesis
+       * (i.e. Stack.exportValue).
+       */
+      _logicalIdLocked;
+      /**
+       * Creates an entity and binds it to a tree.
+       * Note that the root of the tree must be a Stack object (not just any Root).
+       *
+       * @param scope The parent construct
+       * @param props Construct properties
+       */
+      constructor(scope, id) {
+        super(scope, id);
+        Object.defineProperty(this, CFN_ELEMENT_SYMBOL, { value: true });
+        this.stack = Stack.of(this);
+        this.logicalId = Lazy.uncachedString({ produce: () => this._synthesizeLogicalId() }, {
+          displayHint: `${notTooLong(import_constructs23.Node.of(this).path)}.LogicalID`
+        });
+        if (!this.node.tryGetContext(DISABLE_LOGICAL_ID_METADATA)) {
+          import_constructs23.Node.of(this).addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.LOGICAL_ID, this.logicalId);
+        }
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      /**
+       * Overrides the auto-generated logical ID with a specific ID.
+       * @param newLogicalId The new logical ID to use for this stack element.
+       */
+      overrideLogicalId(newLogicalId) {
+        if (this._logicalIdLocked) {
+          throw new ValidationError(lit`LogicalIdLocked`, `The logicalId for resource at path ${import_constructs23.Node.of(this).path} has been locked and cannot be overridden
+Make sure you are calling "overrideLogicalId" before Stack.exportValue`, this);
+        } else {
+          this._logicalIdOverride = newLogicalId;
+        }
+      }
+      /**
+       * Lock the logicalId of the element and do not allow
+       * any updates (e.g. via overrideLogicalId)
+       *
+       * This is needed in cases where you are consuming the LogicalID
+       * of an element prior to synthesis and you need to not allow future
+       * changes to the id since doing so would cause the value you just
+       * consumed to differ from the synth time value of the logicalId.
+       *
+       * For example:
+       *
+       * const bucket = new Bucket(stack, 'Bucket');
+       * stack.exportValue(bucket.bucketArn) <--- consuming the logicalId
+       * bucket.overrideLogicalId('NewLogicalId') <--- updating logicalId
+       *
+       * You should most likely never need to use this method, and if
+       * you are implementing a feature that requires this, make sure
+       * you actually require it.
+       *
+       * @internal
+       */
+      _lockLogicalId() {
+        this._logicalIdLocked = true;
+      }
+      /**
+       * @returns the stack trace of the point where this Resource was created from, sourced
+       *      from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
+       *      node +internal+ entries filtered.
+       */
+      get creationStack() {
+        const trace = import_constructs23.Node.of(this).metadata.find((md) => md.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK)?.data;
+        return trace ?? [];
+      }
+      /**
+       * Called during synthesize to render the logical ID of this element. If
+       * `overrideLogicalId` was it will be used, otherwise, we will allocate the
+       * logical ID through the stack.
+       *
+       * @internal
+       */
+      _synthesizeLogicalId() {
+        if (this._logicalIdOverride) {
+          return this._logicalIdOverride;
+        } else {
+          return this.stack.getLogicalId(this);
+        }
+      }
+    };
+    CfnRefElement = class extends CfnElement {
+      /**
+       * Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
+       *
+       * If, by any chance, the intrinsic reference of a resource is not a string, you could
+       * coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
+       */
+      get ref() {
+        return Token.asString(CfnReference.for(this, "Ref"));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource.ts
+function splitOnPeriods(x) {
+  const ret = [""];
+  for (let i = 0; i < x.length; i++) {
+    if (x[i] === "\\" && i + 1 < x.length) {
+      ret[0] += x[i + 1];
+      i++;
+    } else if (x[i] === ".") {
+      ret.unshift("");
+    } else {
+      ret[0] += x[i];
+    }
+  }
+  ret.reverse();
+  return ret;
+}
+function traceProperty(node, propertyName) {
+  if (debugModeEnabled()) {
+    node.addMetadata(cxschema.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT, {
+      propertyName,
+      stackTrace: captureStackTrace(traceProperty)
+    });
+  }
+}
+var cxschema, CfnResource;
+var init_cfn_resource = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource.ts"() {
+    "use strict";
+    cxschema = __toESM(require_lib2());
+    init_annotations();
+    init_cfn_element();
+    init_cfn_resource_policy();
+    init_deps();
+    init_cfn_reference();
+    init_removal_policy();
+    init_debug();
+    init_tag_manager();
+    init_util();
+    init_feature_flags();
+    init_cx_api();
+    init_errors();
+    init_deep_merge();
+    init_literal_string();
+    init_stack_trace();
+    init_stack();
+    init_core_construct_finders();
+    CfnResource = class _CfnResource extends CfnRefElement {
+      /**
+       * Check whether the given object is a CfnResource
+       */
+      static isCfnResource(x) {
+        return isCfnResource(x);
+      }
+      // MAINTAINERS NOTE: this class serves as the base class for the generated L1
+      // ("CFN") resources (such as `s3.CfnBucket`). These resources will have a
+      // property for each CloudFormation property of the resource. This means that
+      // if at some point in the future a property is introduced with a name similar
+      // to one of the properties here, it will be "masked" by the derived class. To
+      // that end, we prefix all properties in this class with `cfnXxx` with the
+      // hope to avoid those conflicts in the future.
+      /**
+       * Options for this resource, such as condition, update policy etc.
+       */
+      cfnOptions = {};
+      /**
+       * AWS resource type.
+       */
+      cfnResourceType;
+      /**
+       * AWS CloudFormation resource properties.
+       *
+       * This object is returned via cfnProperties
+       * @internal
+       */
+      _cfnProperties;
+      /**
+       * An object to be merged on top of the entire resource definition.
+       */
+      rawOverrides = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      /**
+       * Logical IDs of dependencies.
+       *
+       * Is filled during prepare().
+       */
+      dependsOn;
+      _crossStackReferenceStrength;
+      cfnPropertyNames = {};
+      /**
+       * Creates a resource construct.
+       * @param cfnResourceType The CloudFormation type of this resource (e.g. AWS::DynamoDB::Table)
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (!props.type) {
+          throw new ValidationError(lit`IsRequiredPropertyRequired`, "The `type` property is required", this);
+        }
+        this.cfnResourceType = props.type;
+        this._cfnProperties = props.properties || {};
+        if (this.node.tryGetContext(PATH_METADATA_ENABLE_CONTEXT)) {
+          this.addMetadata(import_cloud_assembly_api.PATH_METADATA_KEY, this.node.path);
+        }
+      }
+      get env() {
+        return {
+          account: this.stack.account,
+          region: this.stack.region
+        };
+      }
+      /**
+       * Sets the deletion policy of the resource based on the removal policy specified.
+       *
+       * The Removal Policy controls what happens to this resource when it stops
+       * being managed by CloudFormation, either because you've removed it from the
+       * CDK application or because you've made a change that requires the resource
+       * to be replaced.
+       *
+       * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
+       * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
+       * cases, a snapshot can be taken of the resource prior to deletion
+       * (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
+       * can be found in the following link:
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
+       */
+      applyRemovalPolicy(policy, options = {}) {
+        policy = policy || options.default || "retain" /* RETAIN */;
+        let deletionPolicy;
+        let updateReplacePolicy;
+        switch (policy) {
+          case "destroy" /* DESTROY */:
+            deletionPolicy = "Delete" /* DELETE */;
+            updateReplacePolicy = "Delete" /* DELETE */;
+            break;
+          case "retain" /* RETAIN */:
+            deletionPolicy = "Retain" /* RETAIN */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "retain-on-update-or-delete" /* RETAIN_ON_UPDATE_OR_DELETE */:
+            deletionPolicy = "RetainExceptOnCreate" /* RETAIN_EXCEPT_ON_CREATE */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "snapshot" /* SNAPSHOT */:
+            const snapshottableResourceTypes = [
+              "AWS::DocDB::DBCluster",
+              "AWS::EC2::Volume",
+              "AWS::ElastiCache::CacheCluster",
+              "AWS::ElastiCache::ReplicationGroup",
+              "AWS::Neptune::DBCluster",
+              "AWS::RDS::DBCluster",
+              "AWS::RDS::DBInstance",
+              "AWS::Redshift::Cluster"
+            ];
+            const problematicSnapshotPolicy = !snapshottableResourceTypes.includes(this.cfnResourceType);
+            if (problematicSnapshotPolicy) {
+              if (FeatureFlags.of(this).isEnabled(VALIDATE_SNAPSHOT_REMOVAL_POLICY)) {
+                throw new ValidationError(lit`SnapshotRemovalNotSupported`, `${this.cfnResourceType} does not support snapshot removal policy`, this);
+              } else {
+                Annotations.of(this).addWarningV2(`@aws-cdk/core:${this.cfnResourceType}SnapshotRemovalPolicyIgnored`, `${this.cfnResourceType} does not support snapshot removal policy. This policy will be ignored.`);
+              }
+            }
+            deletionPolicy = "Snapshot" /* SNAPSHOT */;
+            updateReplacePolicy = "Snapshot" /* SNAPSHOT */;
+            break;
+          default:
+            throw new ValidationError(lit`InvalidRemovalPolicy`, `Invalid removal policy: ${policy}`, this);
+        }
+        this.cfnOptions.deletionPolicy = deletionPolicy;
+        if (options.applyToUpdateReplacePolicy !== false) {
+          this.cfnOptions.updateReplacePolicy = updateReplacePolicy;
+        }
+      }
+      /**
+       * Sets the cross-stack reference strength for this resource.
+       *
+       * When set, any cross-stack reference to this resource will use the specified
+       * strength instead of the global default from the consuming stack's context.
+       *
+       * @param strength - The reference strength to use for this resource.
+       */
+      applyCrossStackReferenceStrength(strength) {
+        this._crossStackReferenceStrength = strength;
+      }
+      /**
+       * @internal
+       */
+      get _crossStackReferenceStrengthOverride() {
+        return this._crossStackReferenceStrength;
+      }
+      /**
+       * Returns a token for an runtime attribute of this resource.
+       * Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
+       * in case there is no generated attribute.
+       * @param attributeName The name of the attribute.
+       */
+      getAtt(attributeName, typeHint) {
+        return CfnReference.for(this, attributeName, void 0, typeHint);
+      }
+      /**
+       * Adds an override to the synthesized CloudFormation resource. To add a
+       * property override, either use `addPropertyOverride` or prefix `path` with
+       * "Properties." (i.e. `Properties.TopicName`).
+       *
+       * If the override is nested, separate each nested level using a dot (.) in the path parameter.
+       * If there is an array as part of the nesting, specify the index in the path.
+       *
+       * To include a literal `.` in the property name, prefix with a `\`. In most
+       * programming languages you will need to write this as `"\\."` because the
+       * `\` itself will need to be escaped.
+       *
+       * For example,
+       * ```typescript
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
+       * ```
+       * would add the overrides
+       * ```json
+       * "Properties": {
+       *   "GlobalSecondaryIndexes": [
+       *     {
+       *       "Projection": {
+       *         "NonKeyAttributes": [ "myattribute" ]
+       *         ...
+       *       }
+       *       ...
+       *     },
+       *     {
+       *       "ProjectionType": "INCLUDE"
+       *       ...
+       *     },
+       *   ]
+       *   ...
+       * }
+       * ```
+       *
+       * The `value` argument to `addOverride` will not be processed or translated
+       * in any way. Pass raw JSON values in here with the correct capitalization
+       * for CloudFormation. If you pass CDK classes or structs, they will be
+       * rendered with lowercased key names, and CloudFormation will reject the
+       * template.
+       *
+       * @param path - The path of the property, you can use dot notation to
+       *        override values in complex types. Any intermediate keys
+       *        will be created as needed.
+       * @param value - The value. Could be primitive or complex.
+       */
+      addOverride(path23, value) {
+        const parts = splitOnPeriods(path23);
+        let curr = this.rawOverrides;
+        while (parts.length > 1) {
+          const key = parts.shift();
+          const isObject = curr[key] != null && typeof curr[key] === "object" && !Array.isArray(curr[key]);
+          if (!isObject) {
+            curr[key] = /* @__PURE__ */ Object.create(null);
+          }
+          curr = curr[key];
+        }
+        const lastKey = parts.shift();
+        curr[lastKey] = value;
+      }
+      /**
+       * Syntactic sugar for `addOverride(path, undefined)`.
+       * @param path The path of the value to delete
+       */
+      addDeletionOverride(path23) {
+        this.addOverride(path23, void 0);
+      }
+      /**
+       * Adds an override to a resource property.
+       *
+       * Syntactic sugar for `addOverride("Properties.<...>", value)`.
+       *
+       * @param propertyPath The path of the property
+       * @param value The value
+       */
+      addPropertyOverride(propertyPath, value) {
+        const parts = splitOnPeriods(propertyPath);
+        traceProperty(this.node, parts[0]);
+        this.addOverride(`Properties.${propertyPath}`, value);
+      }
+      /**
+       * Adds an override that deletes the value of a property from the resource definition.
+       * @param propertyPath The path to the property.
+       */
+      addPropertyDeletionOverride(propertyPath) {
+        this.addPropertyOverride(propertyPath, void 0);
+      }
+      cfnPropertyName(cdkPropertyName) {
+        return this.cfnPropertyNames[cdkPropertyName];
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method has been renamed to `addResourceDependency`, which makes it
+       * more clear that this method operates at a different level from the
+       * construct-level `construct.node.addDependency()` mechanism.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependsOn(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method only adds dependencies between L1 resources. If you are
+       * looking for a generic construct-to-construct dependency mechanism that works
+       * for all constructs including L2s, use `construct.node.addDependency` instead.
+       */
+      addResourceDependency(target, reason) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addResourceDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This method has been renamed to `addResourceDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependency(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       */
+      removeResourceDependency(target) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "remove",
+          source: this,
+          target
+        });
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       *
+       * @deprecated Use `removeResourceDependency` instead
+       */
+      removeDependency(target) {
+        return this.removeResourceDependency(target);
+      }
+      /**
+       * Retrieves an array of resources and stacks this resource depends on.
+       *
+       * For resources depended on directly, returns the `CfnResource` object. For
+       * dependencies on other stacks, returns the `Stack` object. The order of the
+       * array is not guaranteed.
+       */
+      obtainDependencies() {
+        const ret = [];
+        ret.push(...this._directResourceDependencies());
+        let stack = Stack.of(this);
+        while (stack) {
+          ret.push(...stack._stackDependenciesCausedBy(this).filter((x) => STACK_TYPE.isMarked(x) || _CfnResource.isCfnResource(x)));
+          stack = stack.nestedStackParent;
+        }
+        return ret;
+      }
+      /**
+       * Replaces one dependency with another.
+       * @param target The dependency to replace
+       * @param newTarget The new dependency to add
+       */
+      replaceDependency(target, newTarget) {
+        if (this.obtainDependencies().includes(target)) {
+          this.removeResourceDependency(target);
+          this.addResourceDependency(newTarget);
+        } else {
+          throw new ValidationError(lit`CannotReplaceDependency`, `"${this.node.path}" does not depend on "${target.node.path}"`, this);
+        }
+      }
+      /**
+       * Add a value to the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      addMetadata(key, value) {
+        if (!this.cfnOptions.metadata) {
+          this.cfnOptions.metadata = {};
+        }
+        this.cfnOptions.metadata[key] = value;
+      }
+      /**
+       * Retrieve a value value from the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      getMetadata(key) {
+        return this.cfnOptions.metadata?.[key];
+      }
+      /**
+       * @returns a string representation of this resource
+       */
+      toString() {
+        return `${super.toString()} [${this.cfnResourceType}]`;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two resources.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addResourceDependency(target) {
+        if (!this.dependsOn) {
+          this.dependsOn = /* @__PURE__ */ new Set();
+        }
+        this.dependsOn.add(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Get a shallow copy of dependencies between this resource and other resources
+       * in the same stack.
+       *
+       * @internal
+       */
+      _directResourceDependencies() {
+        return Array.from(this.dependsOn?.values() ?? []);
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two resources.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeResourceDependency(target) {
+        this.dependsOn?.delete(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Emits CloudFormation for this resource.
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.shouldSynthesize()) {
+          return {};
+        }
+        try {
+          const ret = {
+            Resources: {
+              // Post-Resolve operation since otherwise deepMerge is going to mix values into
+              // the Token objects returned by ignoreEmpty.
+              [this.logicalId]: new PostResolveToken({
+                Type: this.cfnResourceType,
+                Properties: ignoreEmpty(this.cfnProperties),
+                DependsOn: ignoreEmpty(renderDependsOn(this.dependsOn)),
+                CreationPolicy: capitalizePropertyNames(this, renderCreationPolicy(this.cfnOptions.creationPolicy)),
+                UpdatePolicy: capitalizePropertyNames(this, this.cfnOptions.updatePolicy),
+                UpdateReplacePolicy: capitalizePropertyNames(this, this.cfnOptions.updateReplacePolicy),
+                DeletionPolicy: capitalizePropertyNames(this, this.cfnOptions.deletionPolicy),
+                Version: this.cfnOptions.version,
+                Description: this.cfnOptions.description,
+                Metadata: ignoreEmpty(this.cfnOptions.metadata),
+                Condition: this.cfnOptions.condition && this.cfnOptions.condition.logicalId
+              }, (resourceDef, context) => {
+                const renderedProps = this.renderProperties(resourceDef.Properties || {});
+                if (renderedProps) {
+                  const hasDefined = Object.values(renderedProps).find((v) => v !== void 0);
+                  resourceDef.Properties = hasDefined !== void 0 ? renderedProps : void 0;
+                }
+                const resolvedRawOverrides = context.resolve(this.rawOverrides, {
+                  // we need to preserve the empty elements here,
+                  // as that's how removing overrides are represented as
+                  removeEmpty: false
+                });
+                return deepMerge(resourceDef, resolvedRawOverrides);
+              })
+            }
+          };
+          return ret;
+        } catch (e) {
+          e.message = `While synthesizing ${this.node.path}: ${e.message}`;
+          const trace = this.creationStack;
+          if (trace) {
+            const creationStack = ["--- resource created at ---", ...trace].join("\n  at ");
+            const problemTrace = e.stack.slice(e.stack.indexOf(e.message) + e.message.length);
+            e.stack = `${e.message}
+  ${creationStack}
+  --- problem discovered at ---${problemTrace}`;
+          }
+          throw e;
+        }
+        function renderDependsOn(dependsOn) {
+          if (!dependsOn) {
+            return [];
+          }
+          return Array.from(dependsOn).filter((r) => r.shouldSynthesize()).sort((x, y) => x.node.path.localeCompare(y.node.path)).map((r) => r.logicalId);
+        }
+        function renderCreationPolicy(policy) {
+          if (!policy) {
+            return void 0;
+          }
+          const result = { ...policy };
+          if (policy.resourceSignal && policy.resourceSignal.timeout) {
+            result.resourceSignal = policy.resourceSignal;
+          }
+          return result;
+        }
+      }
+      get cfnProperties() {
+        const props = this._cfnProperties || {};
+        const tagMgr = TagManager.of(this);
+        if (tagMgr) {
+          const tagsProp = {};
+          tagsProp[tagMgr.tagPropertyName] = tagMgr.renderTags();
+          return deepMerge(props, tagsProp);
+        }
+        return props;
+      }
+      renderProperties(props) {
+        return props;
+      }
+      /**
+       * Deprecated
+       * @deprecated use `updatedProperties`
+       *
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperites() {
+        return this.updatedProperties;
+      }
+      /**
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperties() {
+        return this._cfnProperties;
+      }
+      validateProperties(_properties) {
+      }
+      /**
+       * Can be overridden by subclasses to determine if this resource will be rendered
+       * into the cloudformation template.
+       *
+       * @returns `true` if the resource should be included or `false` is the resource
+       * should be omitted.
+       */
+      shouldSynthesize() {
+        return true;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-manager.ts
+function TAG_FORMATTERS() {
+  return _tagFormattersCache ?? (_tagFormattersCache = {
+    ["AutoScalingGroupTag" /* AUTOSCALING_GROUP */]: new AsgFormatter(),
+    ["StandardTag" /* STANDARD */]: new StandardFormatter(),
+    ["StringToStringMap" /* MAP */]: new MapFormatter(),
+    ["KeyValue" /* KEY_VALUE */]: new KeyValueFormatter(),
+    ["NotTaggable" /* NOT_TAGGABLE */]: new NoFormat()
+  });
+}
+var TAG_MANAGER_SYM, StandardFormatter, AsgFormatter, MapFormatter, KeyValueFormatter, NoFormat, _tagFormattersCache, TagManager;
+var init_tag_manager = __esm({
+  "../../aws-cdk-lib/core/lib/tag-manager.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_lazy();
+    init_literal_string();
+    init_token();
+    TAG_MANAGER_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TagManager");
+    StandardFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value
+          });
+        }
+        return cfnTags;
+      }
+    };
+    AsgFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value, propagateAtLaunch} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0 || tag.propagateAtLaunch === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority,
+              applyToLaunchedInstances: !!tag.propagateAtLaunch
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value,
+            propagateAtLaunch: tag.applyToLaunchedInstances !== false
+          });
+        }
+        return cfnTags;
+      }
+    };
+    MapFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (Array.isArray(cfnPropertyTags) || typeof cfnPropertyTags !== "object") {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedMap`, `Invalid tag input expected map of {key: value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        for (const [key, value] of Object.entries(cfnPropertyTags)) {
+          tags.push({
+            key,
+            value: `${value}`,
+            priority
+          });
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(tags) {
+        const cfnTags = {};
+        for (const tag of tags) {
+          cfnTags[`${tag.key}`] = `${tag.value}`;
+        }
+        return cfnTags;
+      }
+    };
+    KeyValueFormatter = class {
+      parseTags(keyValueTags, priority) {
+        const tags = [];
+        for (const key in keyValueTags) {
+          if (keyValueTags.hasOwnProperty(key)) {
+            const value = keyValueTags[key];
+            tags.push({
+              key,
+              value,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(unformattedTags) {
+        const tags = [];
+        unformattedTags.forEach((tag) => {
+          tags.push({
+            Key: tag.key,
+            Value: tag.value
+          });
+        });
+        return tags;
+      }
+    };
+    NoFormat = class {
+      parseTags(_cfnPropertyTags) {
+        return { tags: [], dynamicTags: void 0 };
+      }
+      formatTags(_tags) {
+        return void 0;
+      }
+    };
+    TagManager = class _TagManager {
+      /**
+       * Check whether the given construct is Taggable
+       */
+      static isTaggable(construct) {
+        const tags = construct.tags;
+        return tags !== void 0 && tags !== null && typeof tags === "object" && tags[TAG_MANAGER_SYM];
+      }
+      /**
+       * Check whether the given construct is ITaggableV2
+       */
+      static isTaggableV2(construct) {
+        return construct.cdkTagManager !== void 0;
+      }
+      /**
+       * Return the TagManager associated with the given construct, if any
+       */
+      static of(construct) {
+        return _TagManager.isTaggableV2(construct) ? construct.cdkTagManager : _TagManager.isTaggable(construct) ? construct.tags : void 0;
+      }
+      /**
+       * The property name for tag values
+       *
+       * Normally this is `tags` but some resources choose a different name. Cognito
+       * UserPool uses UserPoolTags
+       */
+      tagPropertyName;
+      /**
+       * A lazy value that represents the rendered tags at synthesis time
+       *
+       * If you need to make a custom construct taggable, use the value of this
+       * property to pass to the `tags` property of the underlying construct.
+       */
+      renderedTags;
+      tags = /* @__PURE__ */ new Map();
+      dynamicTags;
+      priorities = /* @__PURE__ */ new Map();
+      tagFormatter;
+      resourceTypeName;
+      externalTagPriority = 50;
+      didHaveInitialTags;
+      constructor(tagType, resourceTypeName, initialTags, options = {}) {
+        this.resourceTypeName = resourceTypeName;
+        this.tagFormatter = TAG_FORMATTERS()[tagType];
+        this.tagPropertyName = options.tagPropertyName || "tags";
+        this.parseExternalTags(initialTags);
+        this.didHaveInitialTags = initialTags !== void 0;
+        this.renderedTags = Lazy.any({ produce: () => this.renderTags() });
+      }
+      /**
+       * Adds the specified tag to the array of tags
+       *
+       */
+      setTag(key, value, priority = 0, applyToLaunchedInstances = true) {
+        this._setTag({ key, value, priority, applyToLaunchedInstances });
+      }
+      /**
+       * Removes the specified tag from the array if it exists
+       *
+       * @param key The tag to remove
+       * @param priority The priority of the remove operation
+       */
+      removeTag(key, priority) {
+        if (priority >= (this.priorities.get(key) || 0)) {
+          this.tags.delete(key);
+          this.priorities.set(key, priority);
+        }
+      }
+      /**
+       * Renders tags into the proper format based on TagType
+       *
+       * This method will eagerly render the tags currently applied. In
+       * most cases, you should be using `tagManager.renderedTags` instead,
+       * which will return a `Lazy` value that will resolve to the correct
+       * tags at synthesis time.
+       */
+      renderTags(combineWithTags) {
+        if (combineWithTags !== void 0 && this.didHaveInitialTags) {
+          throw new UnscopedValidationError(lit`SpecifyExternalTagsEither`, "Specify external tags either during the creation of TagManager, or as a parameter to renderTags(), but not both");
+        }
+        this.parseExternalTags(combineWithTags);
+        const formattedTags = this.tagFormatter.formatTags(this.sortedTags);
+        if (isResolvableObject(this.dynamicTags)) {
+          if (this.tags.size > 0) {
+            throw new UnscopedValidationError(
+              lit`CombineTagsIntrinsicWithLiteral`,
+              "Cannot combine literal tags with a Tags property that is a single unresolved intrinsic (e.g. Fn::If). Remove the literal tags or resolve the intrinsic at the property level."
+            );
+          }
+          return this.dynamicTags;
+        }
+        if (Array.isArray(formattedTags) || Array.isArray(this.dynamicTags)) {
+          const ret = [...formattedTags ?? [], ...this.dynamicTags ?? []];
+          return ret.length > 0 ? ret : void 0;
+        } else {
+          const ret = { ...formattedTags ?? {}, ...this.dynamicTags ?? {} };
+          return Object.keys(ret).length > 0 ? ret : void 0;
+        }
+      }
+      /**
+       * Render the tags in a readable format
+       */
+      tagValues() {
+        const ret = {};
+        for (const tag of this.sortedTags) {
+          ret[tag.key] = tag.value;
+        }
+        return ret;
+      }
+      /**
+       * Determine if the aspect applies here
+       *
+       * Looks at the include and exclude resourceTypeName arrays to determine if
+       * the aspect applies here
+       */
+      applyTagAspectHere(include, exclude) {
+        if (exclude && exclude.length > 0 && exclude.indexOf(this.resourceTypeName) !== -1) {
+          return false;
+        }
+        if (include && include.length > 0 && include.indexOf(this.resourceTypeName) === -1) {
+          return false;
+        }
+        return true;
+      }
+      /**
+       * Returns true if there are any tags defined
+       */
+      hasTags() {
+        return this.tags.size > 0;
+      }
+      _setTag(...tags) {
+        for (const tag of tags) {
+          if (tag.priority >= (this.priorities.get(tag.key) || 0)) {
+            this.tags.set(tag.key, tag);
+            this.priorities.set(tag.key, tag.priority);
+          }
+        }
+      }
+      get sortedTags() {
+        return Array.from(this.tags.values()).sort((a, b) => a.key.localeCompare(b.key));
+      }
+      /**
+       * Parse external tags.
+       *
+       * Set the parseable ones into this tag manager. Save the rest (tokens, lazies) in `this.dynamicTags`.
+       */
+      parseExternalTags(initialTags) {
+        if (initialTags !== void 0) {
+          if (isResolvableObject(initialTags)) {
+            this.dynamicTags = initialTags;
+            return;
+          }
+          const parseTagsResult = this.tagFormatter.parseTags(initialTags, this.externalTagPriority);
+          this.dynamicTags = parseTagsResult.dynamicTags;
+          this._setTag(...parseTagsResult.tags);
+        }
+      }
+    };
+    TagManager.prototype[TAG_MANAGER_SYM] = true;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-aspect.ts
+var init_tag_aspect = __esm({
+  "../../aws-cdk-lib/core/lib/tag-aspect.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_errors();
+    init_feature_flags();
+    init_cx_api();
+    init_aspect_prio();
+    init_literal_string();
+    init_tag_manager();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/selectors.ts
+var ConstructSelector, AllConstructsSelector, CfnResourceSelector, ResourceTypeSelector, minimatch3, IdPatternSelector, OnlyItselfSelector;
+var init_selectors = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/selectors.ts"() {
+    "use strict";
+    init_cfn_resource();
+    ConstructSelector = class {
+      /**
+       * Selects all constructs in the tree.
+       */
+      static all() {
+        return new AllConstructsSelector();
+      }
+      /**
+       * Selects CfnResource constructs or the default CfnResource child.
+       */
+      static cfnResource() {
+        return new CfnResourceSelector();
+      }
+      /**
+       * Selects only the provided construct.
+       */
+      static onlyItself() {
+        return new OnlyItselfSelector();
+      }
+      /**
+       * Selects constructs of a specific type.
+       */
+      static resourcesOfType(...types2) {
+        return new ResourceTypeSelector(types2);
+      }
+      /**
+       * Selects constructs whose construct IDs match a pattern.
+       * Uses glob like matching.
+       */
+      static byId(pattern) {
+        return new IdPatternSelector(pattern, "id");
+      }
+      /**
+       * Selects constructs whose construct paths match a pattern.
+       * Uses glob like matching.
+       */
+      static byPath(pattern) {
+        return new IdPatternSelector(pattern, "path");
+      }
+    };
+    AllConstructsSelector = class {
+      select(scope) {
+        return scope.node.findAll();
+      }
+    };
+    CfnResourceSelector = class {
+      select(scope) {
+        if (CfnResource.isCfnResource(scope)) {
+          return [scope];
+        }
+        const defaultChild = scope.node.defaultChild;
+        if (CfnResource.isCfnResource(defaultChild)) {
+          return [defaultChild];
+        }
+        return [];
+      }
+    };
+    ResourceTypeSelector = class {
+      constructor(types2) {
+        this.types = types2;
+      }
+      types;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (CfnResource.isCfnResource(node) && this.types.includes(node.cfnResourceType)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    ({ minimatch: minimatch3 } = require_commonjs3());
+    IdPatternSelector = class {
+      constructor(pattern, field) {
+        this.pattern = pattern;
+        this.field = field;
+      }
+      pattern;
+      field;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (minimatch3(node.node[this.field], this.pattern)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    OnlyItselfSelector = class {
+      select(scope) {
+        return [scope];
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/applicator.ts
+var _selectedConstructs_dec, _init10, MixinApplicator;
+var init_applicator = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/applicator.ts"() {
+    "use strict";
+    init_errors();
+    init_mixin_metadata();
+    init_selectors();
+    init_helpers_internal();
+    init_literal_string();
+    _selectedConstructs_dec = [memoizedGetter];
+    MixinApplicator = class {
+      constructor(scope, selector = ConstructSelector.all()) {
+        __runInitializers(_init10, 5, this);
+        __publicField(this, "scope");
+        __publicField(this, "selector");
+        __publicField(this, "applications", []);
+        __publicField(this, "expectAll", false);
+        __publicField(this, "expectAny", false);
+        this.scope = scope;
+        this.selector = selector;
+      }
+      get selectedConstructs() {
+        return this.selector.select(this.scope);
+      }
+      /**
+       * Returns the successful mixin applications.
+       */
+      get report() {
+        return this.applications;
+      }
+      /**
+       * Applies a mixin to selected constructs.
+       */
+      apply(...mixins) {
+        const applications = [];
+        const allConstructs = Array.from(this.selectedConstructs);
+        for (const mixin of mixins) {
+          for (const construct of allConstructs) {
+            if (mixin.supports(construct)) {
+              applyMixin(construct, mixin);
+              applications.push({ construct, mixin });
+            } else if (this.expectAll) {
+              throw new ValidationError(lit`Mixin`, `Mixin ${mixin.constructor.name} could not be applied to ${construct.constructor.name} but was required to.`, this.scope);
+            }
+          }
+        }
+        if (this.expectAny && applications.length <= 0) {
+          throw new ValidationError(lit`LeastOneMixinApplicationRequired`, "At least one mixin application was required, but none of the provided mixins could be applied to any selected construct.", this.scope);
+        }
+        this.applications.push(...applications);
+        return this;
+      }
+      /**
+       * Requires all selected constructs to support the applied mixins.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAll()
+       *   .apply(new MyMixin());
+       */
+      requireAll() {
+        this.expectAll = true;
+        return this;
+      }
+      /**
+       * Requires at least one mixin to be successfully applied.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAny()
+       *   .apply(new MyMixin());
+       */
+      requireAny() {
+        this.expectAny = true;
+        return this;
+      }
+    };
+    _init10 = __decoratorStart(null);
+    __decorateElement(_init10, 2, "selectedConstructs", _selectedConstructs_dec, MixinApplicator);
+    __decoratorMetadata(_init10, MixinApplicator);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/mixins.ts
+var init_mixins = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/mixins.ts"() {
+    "use strict";
+    init_applicator();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/shims.ts
+var init_shims = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/shims.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/index.ts
+var init_mixins2 = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/index.ts"() {
+    "use strict";
+    init_mixins();
+    init_selectors();
+    init_applicator();
+    init_property_merge_strategy();
+    init_shims();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-hook.ts
+var init_cfn_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-hook.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts
+var init_cfn_codedeploy_blue_green_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts"() {
+    "use strict";
+    init_cfn_hook();
+    init_errors();
+    init_literal_string();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-include.ts
+var init_cfn_include = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-include.ts"() {
+    "use strict";
+    init_cfn_element();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-tag.ts
+var init_cfn_tag = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-tag.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-json.ts
+var import_constructs24;
+var init_cfn_json = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-json.ts"() {
+    "use strict";
+    import_constructs24 = __toESM(require_lib4());
+    init_custom_resource();
+    init_cfn_utils_provider();
+    init_consts();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/removal-policies.ts
+var init_removal_policies = __esm({
+  "../../aws-cdk-lib/core/lib/removal-policies.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_cfn_resource();
+    init_aspect_prio();
+    init_removal_policy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bitrate.ts
+var BitrateUnit;
+var init_bitrate = __esm({
+  "../../aws-cdk-lib/core/lib/bitrate.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    BitrateUnit = class _BitrateUnit {
+      constructor(label, inBps) {
+        this.label = label;
+        this.inBps = inBps;
+      }
+      label;
+      inBps;
+      static Bps = new _BitrateUnit("bps", 1);
+      static Kbps = new _BitrateUnit("kbps", 1e3);
+      static Mbps = new _BitrateUnit("mbps", 1e6);
+      static Gbps = new _BitrateUnit("gbps", 1e9);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/expiration.ts
+var init_expiration = __esm({
+  "../../aws-cdk-lib/core/lib/expiration.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/environment.ts
+var init_environment = __esm({
+  "../../aws-cdk-lib/core/lib/environment.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/runtime.ts
+var ValidationResult, ValidationResults, VALIDATION_SUCCESS, CfnSynthesisError;
+var init_runtime = __esm({
+  "../../aws-cdk-lib/core/lib/runtime.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    ValidationResult = class _ValidationResult {
+      constructor(errorMessage = "", results = new ValidationResults()) {
+        this.errorMessage = errorMessage;
+        this.results = results;
+      }
+      errorMessage;
+      results;
+      get isSuccess() {
+        return !this.errorMessage && this.results.isSuccess;
+      }
+      /**
+       * Turn a failed validation into an exception
+       */
+      assertSuccess() {
+        if (!this.isSuccess) {
+          let message = this.errorTree();
+          message = message.slice(0, 1).toUpperCase() + message.slice(1);
+          throw new CfnSynthesisError(message);
+        }
+      }
+      /**
+       * Return a string rendering of the tree of validation failures
+       */
+      errorTree() {
+        const childMessages = this.results.errorTreeList();
+        return this.errorMessage + (childMessages.length ? `
+  ${childMessages.replace(/\n/g, "\n  ")}` : "");
+      }
+      /**
+       * Wrap this result with an error message, if it concerns an error
+       */
+      prefix(message) {
+        if (this.isSuccess) {
+          return this;
+        }
+        return new _ValidationResult(`${message}: ${this.errorMessage}`, this.results);
+      }
+    };
+    ValidationResults = class {
+      constructor(results = []) {
+        this.results = results;
+      }
+      results;
+      collect(result) {
+        if (!result.isSuccess) {
+          this.results.push(result);
+        }
+      }
+      get isSuccess() {
+        return this.results.every((x) => x.isSuccess);
+      }
+      errorTreeList() {
+        return this.results.map((child) => child.errorTree()).join("\n");
+      }
+      /**
+       * Wrap up all validation results into a single tree node
+       *
+       * If there are failures in the collection, add a message, otherwise
+       * return a success.
+       */
+      wrap(message) {
+        if (this.isSuccess) {
+          return VALIDATION_SUCCESS;
+        }
+        return new ValidationResult(message, this);
+      }
+    };
+    VALIDATION_SUCCESS = new ValidationResult();
+    CfnSynthesisError = class extends Error {
+      type = "CfnSynthesisError";
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/secret-value.ts
+var SecretValue, SECRET_VALUE_SYM;
+var init_secret_value = __esm({
+  "../../aws-cdk-lib/core/lib/secret-value.ts"() {
+    "use strict";
+    init_cfn_dynamic_reference();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_cfn_reference();
+    init_intrinsic();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+    SecretValue = class _SecretValue extends Intrinsic {
+      /**
+       * Test whether an object is a SecretValue
+       */
+      static isSecretValue(x) {
+        return typeof x === "object" && x && SECRET_VALUE_SYM in x;
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The only reasonable use case for using this method is when you are testing.
+       *
+       * @deprecated Use `unsafePlainText()` instead.
+       */
+      static plainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The primary use case for using this method is when you are testing.
+       *
+       * The other use case where this is appropriate is when constructing a JSON secret.
+       * For example, a JSON secret might have multiple fields where only some are actual
+       * secret values.
+       *
+       * @example
+       * declare const secret: SecretValue;
+       * const jsonSecret = {
+       *   username: SecretValue.unsafePlainText('myUsername'),
+       *   password: secret,
+       * };
+       */
+      static unsafePlainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Creates a `SecretValue` with a value which is dynamically loaded from AWS Secrets Manager.
+       *
+       * If you rotate the value in the Secret, you must also change at least one property
+       * on the resource where you are using the secret, to force CloudFormation to re-read the secret.
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static secretsManager(secretId, options = {}) {
+        const dyref = new CfnDynamicReference("secretsmanager" /* SECRETS_MANAGER */, _SecretValue.cfnDynamicReferenceKey(secretId, options));
+        return this.cfnDynamicReference(dyref);
+      }
+      /**
+       * Returns a key which can be used within an AWS CloudFormation dynamic reference to dynamically load a
+       * secret from AWS Secrets Manager
+       *
+       * @see https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static cfnDynamicReferenceKey(secretId, options = {}) {
+        if (!secretId) {
+          throw new UnscopedValidationError(lit`SecretIdCannotBeEmpty`, "secretId cannot be empty");
+        }
+        if (!Token.isUnresolved(secretId) && !secretId.startsWith("arn:") && secretId.includes(":")) {
+          throw new UnscopedValidationError(lit`SecretIdContainsColon`, `secret id "${secretId}" is not an ARN but contains ":"`);
+        }
+        if (options.versionStage && options.versionId) {
+          throw new UnscopedValidationError(lit`VersionStageAndVersionIdBothProvided`, `versionStage: '${options.versionStage}' and versionId: '${options.versionId}' were both provided but only one is allowed`);
+        }
+        const parts = [
+          secretId,
+          "SecretString",
+          options.jsonField || "",
+          options.versionStage || "",
+          options.versionId || ""
+        ];
+        return parts.join(":");
+      }
+      /**
+       * Use a secret value stored from a Systems Manager (SSM) parameter.
+       *
+       * This secret source in only supported in a limited set of resources and
+       * properties. [Click here for the list of supported
+       * properties](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html#template-parameters-dynamic-patterns-resources).
+       *
+       * @param parameterName The name of the parameter in the Systems Manager
+       * Parameter Store. The parameter name is case-sensitive.
+       *
+       * @param version An integer that specifies the version of the parameter to
+       * use. If you don't specify the exact version, AWS CloudFormation uses the
+       * latest version of the parameter.
+       */
+      static ssmSecure(parameterName, version3) {
+        return this.cfnDynamicReference(
+          new CfnDynamicReference(
+            "ssm-secure" /* SSM_SECURE */,
+            version3 ? `${parameterName}:${version3}` : parameterName
+          )
+        );
+      }
+      /**
+       * Obtain the secret value through a CloudFormation dynamic reference.
+       *
+       * If possible, use `SecretValue.ssmSecure` or `SecretValue.secretsManager` directly.
+       *
+       * @param ref The dynamic reference to use.
+       */
+      static cfnDynamicReference(ref) {
+        return new _SecretValue(ref);
+      }
+      /**
+       * Obtain the secret value through a CloudFormation parameter.
+       *
+       * Generally, this is not a recommended approach. AWS Secrets Manager is the
+       * recommended way to reference secrets.
+       *
+       * @param param The CloudFormation parameter to use.
+       */
+      static cfnParameter(param) {
+        if (!param.noEcho) {
+          throw new UnscopedValidationError(lit`CloudFormationParameterMustHaveNoEcho`, 'CloudFormation parameter must be configured with "NoEcho"');
+        }
+        return new _SecretValue(param.value);
+      }
+      /**
+       * Use a resource's output as secret value
+       */
+      static resourceAttribute(attr) {
+        const resolved = Tokenization.reverseCompleteString(attr);
+        if (!resolved || !CfnReference.isCfnReference(resolved) || !CfnResource.isCfnResource(resolved.target)) {
+          throw new UnscopedValidationError(lit`SecretValueMustUseResourceAttribute`, "SecretValue.resourceAttribute() must be used with a resource attribute");
+        }
+        return new _SecretValue(attr);
+      }
+      rawValue;
+      /**
+       * Construct a SecretValue (do not use!)
+       *
+       * Do not use the constructor directly: use one of the factory functions on the class
+       * instead.
+       */
+      constructor(protectedValue, options) {
+        super(protectedValue, options);
+        this.rawValue = protectedValue;
+      }
+      /**
+       * Disable usage protection on this secret
+       *
+       * Call this to indicate that you want to use the secret value held by this
+       * object in an unchecked way. If you don't call this method, using the secret
+       * value directly in a string context or as a property value somewhere will
+       * produce an error.
+       *
+       * This method has 'unsafe' in the name on purpose! Make sure that the
+       * construct property you are using the returned value in is does not end up
+       * in a place in your AWS infrastructure where it could be read by anyone
+       * unexpected.
+       *
+       * When in doubt, don't call this method and only pass the object to constructs that
+       * accept `SecretValue` parameters.
+       */
+      unsafeUnwrap() {
+        return Token.asString(this.rawValue);
+      }
+      /**
+       * Resolve the secret
+       *
+       * If the feature flag is not set, resolve as normal. Otherwise, throw a descriptive
+       * error that the usage guard is missing.
+       */
+      resolve(context) {
+        if (FeatureFlags.of(context.scope).isEnabled(CHECK_SECRET_USAGE)) {
+          throw new UnscopedValidationError(
+            lit`SecretValueExposureRisk`,
+            `Synthing a secret value to ${context.documentPath.join("/")}. Using a SecretValue here risks exposing your secret. Only pass SecretValues to constructs that accept a SecretValue property, or call AWS Secrets Manager directly in your runtime code. Call 'secretValue.unsafeUnwrap()' if you understand and accept the risks.`
+          );
+        }
+        return super.resolve(context);
+      }
+    };
+    SECRET_VALUE_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SecretValue");
+    Object.defineProperty(SecretValue.prototype, SECRET_VALUE_SYM, {
+      value: true,
+      configurable: false,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/physical-name.ts
+var PhysicalName;
+var init_physical_name = __esm({
+  "../../aws-cdk-lib/core/lib/physical-name.ts"() {
+    "use strict";
+    init_physical_name_generator();
+    init_token();
+    PhysicalName = class {
+      /**
+       * Use this to automatically generate a physical name for an AWS resource only
+       * if the resource is referenced across environments (account/region).
+       * Otherwise, the name will be allocated during deployment by CloudFormation.
+       *
+       * If you are certain that a resource will be referenced across environments,
+       * you may also specify an explicit physical name for it. This option is
+       * mostly designed for reusable constructs which may or may not be referenced
+       * across environments.
+       */
+      static GENERATE_IF_NEEDED = Token.asString(new GeneratedWhenNeededMarker());
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cloudformation.generated.ts
+var init_cloudformation_generated = __esm({
+  "../../aws-cdk-lib/core/lib/cloudformation.generated.ts"() {
+    "use strict";
+    init_lib3();
+    init_helpers_internal();
+    init_errors();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/nested-stack.ts
+var import_constructs25;
+var init_nested_stack = __esm({
+  "../../aws-cdk-lib/core/lib/nested-stack.ts"() {
+    "use strict";
+    import_constructs25 = __toESM(require_lib4());
+    init_assets();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cloudformation_generated();
+    init_errors();
+    init_box();
+    init_lazy();
+    init_names();
+    init_core_construct_finders();
+    init_removal_policy();
+    init_stack();
+    init_stack_synthesizers();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-capabilities.ts
+var init_cfn_capabilities = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-capabilities.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/eventbridge.ts
+var init_eventbridge = __esm({
+  "../../aws-cdk-lib/core/lib/eventbridge.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/grants.ts
+var init_grants = __esm({
+  "../../aws-cdk-lib/core/lib/grants.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/time-zone.ts
+var TimeZone;
+var init_time_zone = __esm({
+  "../../aws-cdk-lib/core/lib/time-zone.ts"() {
+    "use strict";
+    TimeZone = class _TimeZone {
+      /**
+       *
+       * @param timezoneName The name of the timezone
+       */
+      constructor(timezoneName) {
+        this.timezoneName = timezoneName;
+      }
+      timezoneName;
+      /** IANA Time Zone database entry for Africa/Abidjan.  UTC offset +00:00/+00:00. */
+      static AFRICA_ABIDJAN = new _TimeZone("Africa/Abidjan");
+      /** IANA Time Zone database entry for Africa/Algiers.  UTC offset +01:00/+01:00. */
+      static AFRICA_ALGIERS = new _TimeZone("Africa/Algiers");
+      /** IANA Time Zone database entry for Africa/Bissau.  UTC offset +00:00/+00:00. */
+      static AFRICA_BISSAU = new _TimeZone("Africa/Bissau");
+      /** IANA Time Zone database entry for Africa/Cairo.  UTC offset +02:00/+02:00. */
+      static AFRICA_CAIRO = new _TimeZone("Africa/Cairo");
+      /** IANA Time Zone database entry for Africa/Casablanca.  UTC offset +01:00/+00:00. */
+      static AFRICA_CASABLANCA = new _TimeZone("Africa/Casablanca");
+      /** IANA Time Zone database entry for Africa/Ceuta.  UTC offset +01:00/+02:00. */
+      static AFRICA_CEUTA = new _TimeZone("Africa/Ceuta");
+      /** IANA Time Zone database entry for Africa/El_Aaiun.  UTC offset +01:00/+00:00. */
+      static AFRICA_EL_AAIUN = new _TimeZone("Africa/El_Aaiun");
+      /** IANA Time Zone database entry for Africa/Johannesburg.  UTC offset +02:00/+02:00. */
+      static AFRICA_JOHANNESBURG = new _TimeZone("Africa/Johannesburg");
+      /** IANA Time Zone database entry for Africa/Juba.  UTC offset +02:00/+02:00. */
+      static AFRICA_JUBA = new _TimeZone("Africa/Juba");
+      /** IANA Time Zone database entry for Africa/Khartoum.  UTC offset +02:00/+02:00. */
+      static AFRICA_KHARTOUM = new _TimeZone("Africa/Khartoum");
+      /** IANA Time Zone database entry for Africa/Lagos.  UTC offset +01:00/+01:00. */
+      static AFRICA_LAGOS = new _TimeZone("Africa/Lagos");
+      /** IANA Time Zone database entry for Africa/Maputo.  UTC offset +02:00/+02:00. */
+      static AFRICA_MAPUTO = new _TimeZone("Africa/Maputo");
+      /** IANA Time Zone database entry for Africa/Monrovia.  UTC offset +00:00/+00:00. */
+      static AFRICA_MONROVIA = new _TimeZone("Africa/Monrovia");
+      /** IANA Time Zone database entry for Africa/Nairobi.  UTC offset +03:00/+03:00. */
+      static AFRICA_NAIROBI = new _TimeZone("Africa/Nairobi");
+      /** IANA Time Zone database entry for Africa/Ndjamena.  UTC offset +01:00/+01:00. */
+      static AFRICA_NDJAMENA = new _TimeZone("Africa/Ndjamena");
+      /** IANA Time Zone database entry for Africa/Sao_Tome.  UTC offset +00:00/+00:00. */
+      static AFRICA_SAO_TOME = new _TimeZone("Africa/Sao_Tome");
+      /** IANA Time Zone database entry for Africa/Tripoli.  UTC offset +02:00/+02:00. */
+      static AFRICA_TRIPOLI = new _TimeZone("Africa/Tripoli");
+      /** IANA Time Zone database entry for Africa/Tunis.  UTC offset +01:00/+01:00. */
+      static AFRICA_TUNIS = new _TimeZone("Africa/Tunis");
+      /** IANA Time Zone database entry for Africa/Windhoek.  UTC offset +02:00/+02:00. */
+      static AFRICA_WINDHOEK = new _TimeZone("Africa/Windhoek");
+      /** IANA Time Zone database entry for America/Adak.  UTC offset −10:00/−09:00. */
+      static AMERICA_ADAK = new _TimeZone("America/Adak");
+      /** IANA Time Zone database entry for America/Anchorage.  UTC offset −09:00/−08:00. */
+      static AMERICA_ANCHORAGE = new _TimeZone("America/Anchorage");
+      /** IANA Time Zone database entry for America/Araguaina.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARAGUAINA = new _TimeZone("America/Araguaina");
+      /** IANA Time Zone database entry for America/Argentina/Buenos_Aires.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_BUENOS_AIRES = new _TimeZone("America/Argentina/Buenos_Aires");
+      /** IANA Time Zone database entry for America/Argentina/Catamarca.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CATAMARCA = new _TimeZone("America/Argentina/Catamarca");
+      /** IANA Time Zone database entry for America/Argentina/Cordoba.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CORDOBA = new _TimeZone("America/Argentina/Cordoba");
+      /** IANA Time Zone database entry for America/Argentina/Jujuy.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_JUJUY = new _TimeZone("America/Argentina/Jujuy");
+      /** IANA Time Zone database entry for America/Argentina/La_Rioja.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_LA_RIOJA = new _TimeZone("America/Argentina/La_Rioja");
+      /** IANA Time Zone database entry for America/Argentina/Mendoza.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_MENDOZA = new _TimeZone("America/Argentina/Mendoza");
+      /** IANA Time Zone database entry for America/Argentina/Rio_Gallegos.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_RIO_GALLEGOS = new _TimeZone("America/Argentina/Rio_Gallegos");
+      /** IANA Time Zone database entry for America/Argentina/Salta.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SALTA = new _TimeZone("America/Argentina/Salta");
+      /** IANA Time Zone database entry for America/Argentina/San_Juan.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_JUAN = new _TimeZone("America/Argentina/San_Juan");
+      /** IANA Time Zone database entry for America/Argentina/San_Luis.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_LUIS = new _TimeZone("America/Argentina/San_Luis");
+      /** IANA Time Zone database entry for America/Argentina/Tucuman.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_TUCUMAN = new _TimeZone("America/Argentina/Tucuman");
+      /** IANA Time Zone database entry for America/Argentina/Ushuaia.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_USHUAIA = new _TimeZone("America/Argentina/Ushuaia");
+      /** IANA Time Zone database entry for America/Asuncion.  UTC offset −04:00/−03:00. */
+      static AMERICA_ASUNCION = new _TimeZone("America/Asuncion");
+      /** IANA Time Zone database entry for America/Bahia.  UTC offset −03:00/−03:00. */
+      static AMERICA_BAHIA = new _TimeZone("America/Bahia");
+      /** IANA Time Zone database entry for America/Bahia_Banderas.  UTC offset −06:00/−06:00. */
+      static AMERICA_BAHIA_BANDERAS = new _TimeZone("America/Bahia_Banderas");
+      /** IANA Time Zone database entry for America/Barbados.  UTC offset −04:00/−04:00. */
+      static AMERICA_BARBADOS = new _TimeZone("America/Barbados");
+      /** IANA Time Zone database entry for America/Belem.  UTC offset −03:00/−03:00. */
+      static AMERICA_BELEM = new _TimeZone("America/Belem");
+      /** IANA Time Zone database entry for America/Belize.  UTC offset −06:00/−06:00. */
+      static AMERICA_BELIZE = new _TimeZone("America/Belize");
+      /** IANA Time Zone database entry for America/Boa_Vista.  UTC offset −04:00/−04:00. */
+      static AMERICA_BOA_VISTA = new _TimeZone("America/Boa_Vista");
+      /** IANA Time Zone database entry for America/Bogota.  UTC offset −05:00/−05:00. */
+      static AMERICA_BOGOTA = new _TimeZone("America/Bogota");
+      /** IANA Time Zone database entry for America/Boise.  UTC offset −07:00/−06:00. */
+      static AMERICA_BOISE = new _TimeZone("America/Boise");
+      /** IANA Time Zone database entry for America/Cambridge_Bay.  UTC offset −07:00/−06:00. */
+      static AMERICA_CAMBRIDGE_BAY = new _TimeZone("America/Cambridge_Bay");
+      /** IANA Time Zone database entry for America/Campo_Grande.  UTC offset −04:00/−04:00. */
+      static AMERICA_CAMPO_GRANDE = new _TimeZone("America/Campo_Grande");
+      /** IANA Time Zone database entry for America/Cancun.  UTC offset −05:00/−05:00. */
+      static AMERICA_CANCUN = new _TimeZone("America/Cancun");
+      /** IANA Time Zone database entry for America/Caracas.  UTC offset −04:00/−04:00. */
+      static AMERICA_CARACAS = new _TimeZone("America/Caracas");
+      /** IANA Time Zone database entry for America/Cayenne.  UTC offset −03:00/−03:00. */
+      static AMERICA_CAYENNE = new _TimeZone("America/Cayenne");
+      /** IANA Time Zone database entry for America/Chicago.  UTC offset −06:00/−05:00. */
+      static AMERICA_CHICAGO = new _TimeZone("America/Chicago");
+      /** IANA Time Zone database entry for America/Chihuahua.  UTC offset −06:00/−06:00. */
+      static AMERICA_CHIHUAHUA = new _TimeZone("America/Chihuahua");
+      /** IANA Time Zone database entry for America/Ciudad_Juarez.  UTC offset −07:00/−06:00. */
+      static AMERICA_CIUDAD_JUAREZ = new _TimeZone("America/Ciudad_Juarez");
+      /** IANA Time Zone database entry for America/Costa_Rica.  UTC offset −06:00/−06:00. */
+      static AMERICA_COSTA_RICA = new _TimeZone("America/Costa_Rica");
+      /** IANA Time Zone database entry for America/Cuiaba.  UTC offset −04:00/−04:00. */
+      static AMERICA_CUIABA = new _TimeZone("America/Cuiaba");
+      /** IANA Time Zone database entry for America/Danmarkshavn.  UTC offset +00:00/+00:00. */
+      static AMERICA_DANMARKSHAVN = new _TimeZone("America/Danmarkshavn");
+      /** IANA Time Zone database entry for America/Dawson.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON = new _TimeZone("America/Dawson");
+      /** IANA Time Zone database entry for America/Dawson_Creek.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON_CREEK = new _TimeZone("America/Dawson_Creek");
+      /** IANA Time Zone database entry for America/Denver.  UTC offset −07:00/−06:00. */
+      static AMERICA_DENVER = new _TimeZone("America/Denver");
+      /** IANA Time Zone database entry for America/Detroit.  UTC offset −05:00/−04:00. */
+      static AMERICA_DETROIT = new _TimeZone("America/Detroit");
+      /** IANA Time Zone database entry for America/Edmonton.  UTC offset −07:00/−06:00. */
+      static AMERICA_EDMONTON = new _TimeZone("America/Edmonton");
+      /** IANA Time Zone database entry for America/Eirunepe.  UTC offset −05:00/−05:00. */
+      static AMERICA_EIRUNEPE = new _TimeZone("America/Eirunepe");
+      /** IANA Time Zone database entry for America/El_Salvador.  UTC offset −06:00/−06:00. */
+      static AMERICA_EL_SALVADOR = new _TimeZone("America/El_Salvador");
+      /** IANA Time Zone database entry for America/Fort_Nelson.  UTC offset −07:00/−07:00. */
+      static AMERICA_FORT_NELSON = new _TimeZone("America/Fort_Nelson");
+      /** IANA Time Zone database entry for America/Fortaleza.  UTC offset −03:00/−03:00. */
+      static AMERICA_FORTALEZA = new _TimeZone("America/Fortaleza");
+      /** IANA Time Zone database entry for America/Glace_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GLACE_BAY = new _TimeZone("America/Glace_Bay");
+      /** IANA Time Zone database entry for America/Goose_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GOOSE_BAY = new _TimeZone("America/Goose_Bay");
+      /** IANA Time Zone database entry for America/Grand_Turk.  UTC offset −05:00/−04:00. */
+      static AMERICA_GRAND_TURK = new _TimeZone("America/Grand_Turk");
+      /** IANA Time Zone database entry for America/Guatemala.  UTC offset −06:00/−06:00. */
+      static AMERICA_GUATEMALA = new _TimeZone("America/Guatemala");
+      /** IANA Time Zone database entry for America/Guayaquil.  UTC offset −05:00/−05:00. */
+      static AMERICA_GUAYAQUIL = new _TimeZone("America/Guayaquil");
+      /** IANA Time Zone database entry for America/Guyana.  UTC offset −04:00/−04:00. */
+      static AMERICA_GUYANA = new _TimeZone("America/Guyana");
+      /** IANA Time Zone database entry for America/Halifax.  UTC offset −04:00/−03:00. */
+      static AMERICA_HALIFAX = new _TimeZone("America/Halifax");
+      /** IANA Time Zone database entry for America/Havana.  UTC offset −05:00/−04:00. */
+      static AMERICA_HAVANA = new _TimeZone("America/Havana");
+      /** IANA Time Zone database entry for America/Hermosillo.  UTC offset −07:00/−07:00. */
+      static AMERICA_HERMOSILLO = new _TimeZone("America/Hermosillo");
+      /** IANA Time Zone database entry for America/Indiana/Indianapolis.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_INDIANAPOLIS = new _TimeZone("America/Indiana/Indianapolis");
+      /** IANA Time Zone database entry for America/Indiana/Knox.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_KNOX = new _TimeZone("America/Indiana/Knox");
+      /** IANA Time Zone database entry for America/Indiana/Marengo.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_MARENGO = new _TimeZone("America/Indiana/Marengo");
+      /** IANA Time Zone database entry for America/Indiana/Petersburg.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_PETERSBURG = new _TimeZone("America/Indiana/Petersburg");
+      /** IANA Time Zone database entry for America/Indiana/Tell_City.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_TELL_CITY = new _TimeZone("America/Indiana/Tell_City");
+      /** IANA Time Zone database entry for America/Indiana/Vevay.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VEVAY = new _TimeZone("America/Indiana/Vevay");
+      /** IANA Time Zone database entry for America/Indiana/Vincennes.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VINCENNES = new _TimeZone("America/Indiana/Vincennes");
+      /** IANA Time Zone database entry for America/Indiana/Winamac.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_WINAMAC = new _TimeZone("America/Indiana/Winamac");
+      /** IANA Time Zone database entry for America/Inuvik.  UTC offset −07:00/−06:00. */
+      static AMERICA_INUVIK = new _TimeZone("America/Inuvik");
+      /** IANA Time Zone database entry for America/Iqaluit.  UTC offset −05:00/−04:00. */
+      static AMERICA_IQALUIT = new _TimeZone("America/Iqaluit");
+      /** IANA Time Zone database entry for America/Jamaica.  UTC offset −05:00/−05:00. */
+      static AMERICA_JAMAICA = new _TimeZone("America/Jamaica");
+      /** IANA Time Zone database entry for America/Juneau.  UTC offset −09:00/−08:00. */
+      static AMERICA_JUNEAU = new _TimeZone("America/Juneau");
+      /** IANA Time Zone database entry for America/Kentucky/Louisville.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_LOUISVILLE = new _TimeZone("America/Kentucky/Louisville");
+      /** IANA Time Zone database entry for America/Kentucky/Monticello.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_MONTICELLO = new _TimeZone("America/Kentucky/Monticello");
+      /** IANA Time Zone database entry for America/La_Paz.  UTC offset −04:00/−04:00. */
+      static AMERICA_LA_PAZ = new _TimeZone("America/La_Paz");
+      /** IANA Time Zone database entry for America/Lima.  UTC offset −05:00/−05:00. */
+      static AMERICA_LIMA = new _TimeZone("America/Lima");
+      /** IANA Time Zone database entry for America/Los_Angeles.  UTC offset −08:00/−07:00. */
+      static AMERICA_LOS_ANGELES = new _TimeZone("America/Los_Angeles");
+      /** IANA Time Zone database entry for America/Maceio.  UTC offset −03:00/−03:00. */
+      static AMERICA_MACEIO = new _TimeZone("America/Maceio");
+      /** IANA Time Zone database entry for America/Managua.  UTC offset −06:00/−06:00. */
+      static AMERICA_MANAGUA = new _TimeZone("America/Managua");
+      /** IANA Time Zone database entry for America/Manaus.  UTC offset −04:00/−04:00. */
+      static AMERICA_MANAUS = new _TimeZone("America/Manaus");
+      /** IANA Time Zone database entry for America/Martinique.  UTC offset −04:00/−04:00. */
+      static AMERICA_MARTINIQUE = new _TimeZone("America/Martinique");
+      /** IANA Time Zone database entry for America/Matamoros.  UTC offset −06:00/−05:00. */
+      static AMERICA_MATAMOROS = new _TimeZone("America/Matamoros");
+      /** IANA Time Zone database entry for America/Mazatlan.  UTC offset −07:00/−07:00. */
+      static AMERICA_MAZATLAN = new _TimeZone("America/Mazatlan");
+      /** IANA Time Zone database entry for America/Menominee.  UTC offset −06:00/−05:00. */
+      static AMERICA_MENOMINEE = new _TimeZone("America/Menominee");
+      /** IANA Time Zone database entry for America/Merida.  UTC offset −06:00/−06:00. */
+      static AMERICA_MERIDA = new _TimeZone("America/Merida");
+      /** IANA Time Zone database entry for America/Metlakatla.  UTC offset −09:00/−08:00. */
+      static AMERICA_METLAKATLA = new _TimeZone("America/Metlakatla");
+      /** IANA Time Zone database entry for America/Mexico_City.  UTC offset −06:00/−06:00. */
+      static AMERICA_MEXICO_CITY = new _TimeZone("America/Mexico_City");
+      /** IANA Time Zone database entry for America/Miquelon.  UTC offset −03:00/−02:00. */
+      static AMERICA_MIQUELON = new _TimeZone("America/Miquelon");
+      /** IANA Time Zone database entry for America/Moncton.  UTC offset −04:00/−03:00. */
+      static AMERICA_MONCTON = new _TimeZone("America/Moncton");
+      /** IANA Time Zone database entry for America/Monterrey.  UTC offset −06:00/−06:00. */
+      static AMERICA_MONTERREY = new _TimeZone("America/Monterrey");
+      /** IANA Time Zone database entry for America/Montevideo.  UTC offset −03:00/−03:00. */
+      static AMERICA_MONTEVIDEO = new _TimeZone("America/Montevideo");
+      /** IANA Time Zone database entry for America/New_York.  UTC offset −05:00/−04:00. */
+      static AMERICA_NEW_YORK = new _TimeZone("America/New_York");
+      /** IANA Time Zone database entry for America/Nome.  UTC offset −09:00/−08:00. */
+      static AMERICA_NOME = new _TimeZone("America/Nome");
+      /** IANA Time Zone database entry for America/Noronha.  UTC offset −02:00/−02:00. */
+      static AMERICA_NORONHA = new _TimeZone("America/Noronha");
+      /** IANA Time Zone database entry for America/North_Dakota/Beulah.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_BEULAH = new _TimeZone("America/North_Dakota/Beulah");
+      /** IANA Time Zone database entry for America/North_Dakota/Center.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_CENTER = new _TimeZone("America/North_Dakota/Center");
+      /** IANA Time Zone database entry for America/North_Dakota/New_Salem.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_NEW_SALEM = new _TimeZone("America/North_Dakota/New_Salem");
+      /** IANA Time Zone database entry for America/Nuuk.  UTC offset −03:00/−03:00. */
+      static AMERICA_NUUK = new _TimeZone("America/Nuuk");
+      /** IANA Time Zone database entry for America/Ojinaga.  UTC offset −06:00/−05:00. */
+      static AMERICA_OJINAGA = new _TimeZone("America/Ojinaga");
+      /** IANA Time Zone database entry for America/Panama.  UTC offset −05:00/−05:00. */
+      static AMERICA_PANAMA = new _TimeZone("America/Panama");
+      /** IANA Time Zone database entry for America/Paramaribo.  UTC offset −03:00/−03:00. */
+      static AMERICA_PARAMARIBO = new _TimeZone("America/Paramaribo");
+      /** IANA Time Zone database entry for America/Phoenix.  UTC offset −07:00/−07:00. */
+      static AMERICA_PHOENIX = new _TimeZone("America/Phoenix");
+      /** IANA Time Zone database entry for America/Port-au-Prince.  UTC offset −05:00/−04:00. */
+      static AMERICA_PORT_MINUS_AU_MINUS_PRINCE = new _TimeZone("America/Port-au-Prince");
+      /** IANA Time Zone database entry for America/Porto_Velho.  UTC offset −04:00/−04:00. */
+      static AMERICA_PORTO_VELHO = new _TimeZone("America/Porto_Velho");
+      /** IANA Time Zone database entry for America/Puerto_Rico.  UTC offset −04:00/−04:00. */
+      static AMERICA_PUERTO_RICO = new _TimeZone("America/Puerto_Rico");
+      /** IANA Time Zone database entry for America/Punta_Arenas.  UTC offset −03:00/−03:00. */
+      static AMERICA_PUNTA_ARENAS = new _TimeZone("America/Punta_Arenas");
+      /** IANA Time Zone database entry for America/Rankin_Inlet.  UTC offset −06:00/−05:00. */
+      static AMERICA_RANKIN_INLET = new _TimeZone("America/Rankin_Inlet");
+      /** IANA Time Zone database entry for America/Recife.  UTC offset −03:00/−03:00. */
+      static AMERICA_RECIFE = new _TimeZone("America/Recife");
+      /** IANA Time Zone database entry for America/Regina.  UTC offset −06:00/−06:00. */
+      static AMERICA_REGINA = new _TimeZone("America/Regina");
+      /** IANA Time Zone database entry for America/Resolute.  UTC offset −06:00/−05:00. */
+      static AMERICA_RESOLUTE = new _TimeZone("America/Resolute");
+      /** IANA Time Zone database entry for America/Rio_Branco.  UTC offset −05:00/−05:00. */
+      static AMERICA_RIO_BRANCO = new _TimeZone("America/Rio_Branco");
+      /** IANA Time Zone database entry for America/Santarem.  UTC offset −03:00/−03:00. */
+      static AMERICA_SANTAREM = new _TimeZone("America/Santarem");
+      /** IANA Time Zone database entry for America/Santiago.  UTC offset −04:00/−03:00. */
+      static AMERICA_SANTIAGO = new _TimeZone("America/Santiago");
+      /** IANA Time Zone database entry for America/Santo_Domingo.  UTC offset −04:00/−04:00. */
+      static AMERICA_SANTO_DOMINGO = new _TimeZone("America/Santo_Domingo");
+      /** IANA Time Zone database entry for America/Sao_Paulo.  UTC offset −03:00/−03:00. */
+      static AMERICA_SAO_PAULO = new _TimeZone("America/Sao_Paulo");
+      /** IANA Time Zone database entry for America/Scoresbysund.  UTC offset −01:00/+00:00. */
+      static AMERICA_SCORESBYSUND = new _TimeZone("America/Scoresbysund");
+      /** IANA Time Zone database entry for America/Sitka.  UTC offset −09:00/−08:00. */
+      static AMERICA_SITKA = new _TimeZone("America/Sitka");
+      /** IANA Time Zone database entry for America/St_Johns.  UTC offset −03:30/−02:30. */
+      static AMERICA_ST_JOHNS = new _TimeZone("America/St_Johns");
+      /** IANA Time Zone database entry for America/Swift_Current.  UTC offset −06:00/−06:00. */
+      static AMERICA_SWIFT_CURRENT = new _TimeZone("America/Swift_Current");
+      /** IANA Time Zone database entry for America/Tegucigalpa.  UTC offset −06:00/−06:00. */
+      static AMERICA_TEGUCIGALPA = new _TimeZone("America/Tegucigalpa");
+      /** IANA Time Zone database entry for America/Thule.  UTC offset −04:00/−03:00. */
+      static AMERICA_THULE = new _TimeZone("America/Thule");
+      /** IANA Time Zone database entry for America/Tijuana.  UTC offset −08:00/−07:00. */
+      static AMERICA_TIJUANA = new _TimeZone("America/Tijuana");
+      /** IANA Time Zone database entry for America/Toronto.  UTC offset −05:00/−04:00. */
+      static AMERICA_TORONTO = new _TimeZone("America/Toronto");
+      /** IANA Time Zone database entry for America/Vancouver.  UTC offset −08:00/−07:00. */
+      static AMERICA_VANCOUVER = new _TimeZone("America/Vancouver");
+      /** IANA Time Zone database entry for America/Whitehorse.  UTC offset −07:00/−07:00. */
+      static AMERICA_WHITEHORSE = new _TimeZone("America/Whitehorse");
+      /** IANA Time Zone database entry for America/Winnipeg.  UTC offset −06:00/−05:00. */
+      static AMERICA_WINNIPEG = new _TimeZone("America/Winnipeg");
+      /** IANA Time Zone database entry for America/Yakutat.  UTC offset −09:00/−08:00. */
+      static AMERICA_YAKUTAT = new _TimeZone("America/Yakutat");
+      /** IANA Time Zone database entry for America/Yellowknife.  UTC offset −07:00/−06:00. */
+      static AMERICA_YELLOWKNIFE = new _TimeZone("America/Yellowknife");
+      /** IANA Time Zone database entry for Antarctica/Casey.  UTC offset +11:00/+11:00. */
+      static ANTARCTICA_CASEY = new _TimeZone("Antarctica/Casey");
+      /** IANA Time Zone database entry for Antarctica/Davis.  UTC offset +07:00/+07:00. */
+      static ANTARCTICA_DAVIS = new _TimeZone("Antarctica/Davis");
+      /** IANA Time Zone database entry for Antarctica/Macquarie.  UTC offset +10:00/+11:00. */
+      static ANTARCTICA_MACQUARIE = new _TimeZone("Antarctica/Macquarie");
+      /** IANA Time Zone database entry for Antarctica/Mawson.  UTC offset +05:00/+05:00. */
+      static ANTARCTICA_MAWSON = new _TimeZone("Antarctica/Mawson");
+      /** IANA Time Zone database entry for Antarctica/Palmer.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_PALMER = new _TimeZone("Antarctica/Palmer");
+      /** IANA Time Zone database entry for Antarctica/Rothera.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_ROTHERA = new _TimeZone("Antarctica/Rothera");
+      /** IANA Time Zone database entry for Antarctica/Troll.  UTC offset +00:00/+02:00. */
+      static ANTARCTICA_TROLL = new _TimeZone("Antarctica/Troll");
+      /** IANA Time Zone database entry for Asia/Almaty.  UTC offset +06:00/+06:00. */
+      static ASIA_ALMATY = new _TimeZone("Asia/Almaty");
+      /** IANA Time Zone database entry for Asia/Amman.  UTC offset +03:00/+03:00. */
+      static ASIA_AMMAN = new _TimeZone("Asia/Amman");
+      /** IANA Time Zone database entry for Asia/Anadyr.  UTC offset +12:00/+12:00. */
+      static ASIA_ANADYR = new _TimeZone("Asia/Anadyr");
+      /** IANA Time Zone database entry for Asia/Aqtau.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTAU = new _TimeZone("Asia/Aqtau");
+      /** IANA Time Zone database entry for Asia/Aqtobe.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTOBE = new _TimeZone("Asia/Aqtobe");
+      /** IANA Time Zone database entry for Asia/Ashgabat.  UTC offset +05:00/+05:00. */
+      static ASIA_ASHGABAT = new _TimeZone("Asia/Ashgabat");
+      /** IANA Time Zone database entry for Asia/Atyrau.  UTC offset +05:00/+05:00. */
+      static ASIA_ATYRAU = new _TimeZone("Asia/Atyrau");
+      /** IANA Time Zone database entry for Asia/Baghdad.  UTC offset +03:00/+03:00. */
+      static ASIA_BAGHDAD = new _TimeZone("Asia/Baghdad");
+      /** IANA Time Zone database entry for Asia/Baku.  UTC offset +04:00/+04:00. */
+      static ASIA_BAKU = new _TimeZone("Asia/Baku");
+      /** IANA Time Zone database entry for Asia/Bangkok.  UTC offset +07:00/+07:00. */
+      static ASIA_BANGKOK = new _TimeZone("Asia/Bangkok");
+      /** IANA Time Zone database entry for Asia/Barnaul.  UTC offset +07:00/+07:00. */
+      static ASIA_BARNAUL = new _TimeZone("Asia/Barnaul");
+      /** IANA Time Zone database entry for Asia/Beirut.  UTC offset +02:00/+03:00. */
+      static ASIA_BEIRUT = new _TimeZone("Asia/Beirut");
+      /** IANA Time Zone database entry for Asia/Bishkek.  UTC offset +06:00/+06:00. */
+      static ASIA_BISHKEK = new _TimeZone("Asia/Bishkek");
+      /** IANA Time Zone database entry for Asia/Chita.  UTC offset +09:00/+09:00. */
+      static ASIA_CHITA = new _TimeZone("Asia/Chita");
+      /** IANA Time Zone database entry for Asia/Choibalsan.  UTC offset +08:00/+08:00. */
+      static ASIA_CHOIBALSAN = new _TimeZone("Asia/Choibalsan");
+      /** IANA Time Zone database entry for Asia/Colombo.  UTC offset +05:30/+05:30. */
+      static ASIA_COLOMBO = new _TimeZone("Asia/Colombo");
+      /** IANA Time Zone database entry for Asia/Damascus.  UTC offset +03:00/+03:00. */
+      static ASIA_DAMASCUS = new _TimeZone("Asia/Damascus");
+      /** IANA Time Zone database entry for Asia/Dhaka.  UTC offset +06:00/+06:00. */
+      static ASIA_DHAKA = new _TimeZone("Asia/Dhaka");
+      /** IANA Time Zone database entry for Asia/Dili.  UTC offset +09:00/+09:00. */
+      static ASIA_DILI = new _TimeZone("Asia/Dili");
+      /** IANA Time Zone database entry for Asia/Dubai.  UTC offset +04:00/+04:00. */
+      static ASIA_DUBAI = new _TimeZone("Asia/Dubai");
+      /** IANA Time Zone database entry for Asia/Dushanbe.  UTC offset +05:00/+05:00. */
+      static ASIA_DUSHANBE = new _TimeZone("Asia/Dushanbe");
+      /** IANA Time Zone database entry for Asia/Famagusta.  UTC offset +02:00/+03:00. */
+      static ASIA_FAMAGUSTA = new _TimeZone("Asia/Famagusta");
+      /** IANA Time Zone database entry for Asia/Gaza.  UTC offset +02:00/+03:00. */
+      static ASIA_GAZA = new _TimeZone("Asia/Gaza");
+      /** IANA Time Zone database entry for Asia/Hebron.  UTC offset +02:00/+03:00. */
+      static ASIA_HEBRON = new _TimeZone("Asia/Hebron");
+      /** IANA Time Zone database entry for Asia/Ho_Chi_Minh.  UTC offset +07:00/+07:00. */
+      static ASIA_HO_CHI_MINH = new _TimeZone("Asia/Ho_Chi_Minh");
+      /** IANA Time Zone database entry for Asia/Hong_Kong.  UTC offset +08:00/+08:00. */
+      static ASIA_HONG_KONG = new _TimeZone("Asia/Hong_Kong");
+      /** IANA Time Zone database entry for Asia/Hovd.  UTC offset +07:00/+07:00. */
+      static ASIA_HOVD = new _TimeZone("Asia/Hovd");
+      /** IANA Time Zone database entry for Asia/Irkutsk.  UTC offset +08:00/+08:00. */
+      static ASIA_IRKUTSK = new _TimeZone("Asia/Irkutsk");
+      /** IANA Time Zone database entry for Asia/Jakarta.  UTC offset +07:00/+07:00. */
+      static ASIA_JAKARTA = new _TimeZone("Asia/Jakarta");
+      /** IANA Time Zone database entry for Asia/Jayapura.  UTC offset +09:00/+09:00. */
+      static ASIA_JAYAPURA = new _TimeZone("Asia/Jayapura");
+      /** IANA Time Zone database entry for Asia/Jerusalem.  UTC offset +02:00/+03:00. */
+      static ASIA_JERUSALEM = new _TimeZone("Asia/Jerusalem");
+      /** IANA Time Zone database entry for Asia/Kabul.  UTC offset +04:30/+04:30. */
+      static ASIA_KABUL = new _TimeZone("Asia/Kabul");
+      /** IANA Time Zone database entry for Asia/Kamchatka.  UTC offset +12:00/+12:00. */
+      static ASIA_KAMCHATKA = new _TimeZone("Asia/Kamchatka");
+      /** IANA Time Zone database entry for Asia/Karachi.  UTC offset +05:00/+05:00. */
+      static ASIA_KARACHI = new _TimeZone("Asia/Karachi");
+      /** IANA Time Zone database entry for Asia/Kathmandu.  UTC offset +05:45/+05:45. */
+      static ASIA_KATHMANDU = new _TimeZone("Asia/Kathmandu");
+      /** IANA Time Zone database entry for Asia/Khandyga.  UTC offset +09:00/+09:00. */
+      static ASIA_KHANDYGA = new _TimeZone("Asia/Khandyga");
+      /** IANA Time Zone database entry for Asia/Kolkata.  UTC offset +05:30/+05:30. */
+      static ASIA_KOLKATA = new _TimeZone("Asia/Kolkata");
+      /** IANA Time Zone database entry for Asia/Krasnoyarsk.  UTC offset +07:00/+07:00. */
+      static ASIA_KRASNOYARSK = new _TimeZone("Asia/Krasnoyarsk");
+      /** IANA Time Zone database entry for Asia/Kuching.  UTC offset +08:00/+08:00. */
+      static ASIA_KUCHING = new _TimeZone("Asia/Kuching");
+      /** IANA Time Zone database entry for Asia/Macau.  UTC offset +08:00/+08:00. */
+      static ASIA_MACAU = new _TimeZone("Asia/Macau");
+      /** IANA Time Zone database entry for Asia/Magadan.  UTC offset +11:00/+11:00. */
+      static ASIA_MAGADAN = new _TimeZone("Asia/Magadan");
+      /** IANA Time Zone database entry for Asia/Makassar.  UTC offset +08:00/+08:00. */
+      static ASIA_MAKASSAR = new _TimeZone("Asia/Makassar");
+      /** IANA Time Zone database entry for Asia/Manila.  UTC offset +08:00/+08:00. */
+      static ASIA_MANILA = new _TimeZone("Asia/Manila");
+      /** IANA Time Zone database entry for Asia/Nicosia.  UTC offset +02:00/+03:00. */
+      static ASIA_NICOSIA = new _TimeZone("Asia/Nicosia");
+      /** IANA Time Zone database entry for Asia/Novokuznetsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOKUZNETSK = new _TimeZone("Asia/Novokuznetsk");
+      /** IANA Time Zone database entry for Asia/Novosibirsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOSIBIRSK = new _TimeZone("Asia/Novosibirsk");
+      /** IANA Time Zone database entry for Asia/Omsk.  UTC offset +06:00/+06:00. */
+      static ASIA_OMSK = new _TimeZone("Asia/Omsk");
+      /** IANA Time Zone database entry for Asia/Oral.  UTC offset +05:00/+05:00. */
+      static ASIA_ORAL = new _TimeZone("Asia/Oral");
+      /** IANA Time Zone database entry for Asia/Pontianak.  UTC offset +07:00/+07:00. */
+      static ASIA_PONTIANAK = new _TimeZone("Asia/Pontianak");
+      /** IANA Time Zone database entry for Asia/Pyongyang.  UTC offset +09:00/+09:00. */
+      static ASIA_PYONGYANG = new _TimeZone("Asia/Pyongyang");
+      /** IANA Time Zone database entry for Asia/Qatar.  UTC offset +03:00/+03:00. */
+      static ASIA_QATAR = new _TimeZone("Asia/Qatar");
+      /** IANA Time Zone database entry for Asia/Qostanay.  UTC offset +06:00/+06:00. */
+      static ASIA_QOSTANAY = new _TimeZone("Asia/Qostanay");
+      /** IANA Time Zone database entry for Asia/Qyzylorda.  UTC offset +05:00/+05:00. */
+      static ASIA_QYZYLORDA = new _TimeZone("Asia/Qyzylorda");
+      /** IANA Time Zone database entry for Asia/Riyadh.  UTC offset +03:00/+03:00. */
+      static ASIA_RIYADH = new _TimeZone("Asia/Riyadh");
+      /** IANA Time Zone database entry for Asia/Sakhalin.  UTC offset +11:00/+11:00. */
+      static ASIA_SAKHALIN = new _TimeZone("Asia/Sakhalin");
+      /** IANA Time Zone database entry for Asia/Samarkand.  UTC offset +05:00/+05:00. */
+      static ASIA_SAMARKAND = new _TimeZone("Asia/Samarkand");
+      /** IANA Time Zone database entry for Asia/Seoul.  UTC offset +09:00/+09:00. */
+      static ASIA_SEOUL = new _TimeZone("Asia/Seoul");
+      /** IANA Time Zone database entry for Asia/Shanghai.  UTC offset +08:00/+08:00. */
+      static ASIA_SHANGHAI = new _TimeZone("Asia/Shanghai");
+      /** IANA Time Zone database entry for Asia/Singapore.  UTC offset +08:00/+08:00. */
+      static ASIA_SINGAPORE = new _TimeZone("Asia/Singapore");
+      /** IANA Time Zone database entry for Asia/Srednekolymsk.  UTC offset +11:00/+11:00. */
+      static ASIA_SREDNEKOLYMSK = new _TimeZone("Asia/Srednekolymsk");
+      /** IANA Time Zone database entry for Asia/Taipei.  UTC offset +08:00/+08:00. */
+      static ASIA_TAIPEI = new _TimeZone("Asia/Taipei");
+      /** IANA Time Zone database entry for Asia/Tashkent.  UTC offset +05:00/+05:00. */
+      static ASIA_TASHKENT = new _TimeZone("Asia/Tashkent");
+      /** IANA Time Zone database entry for Asia/Tbilisi.  UTC offset +04:00/+04:00. */
+      static ASIA_TBILISI = new _TimeZone("Asia/Tbilisi");
+      /** IANA Time Zone database entry for Asia/Tehran.  UTC offset +03:30/+03:30. */
+      static ASIA_TEHRAN = new _TimeZone("Asia/Tehran");
+      /** IANA Time Zone database entry for Asia/Thimphu.  UTC offset +06:00/+06:00. */
+      static ASIA_THIMPHU = new _TimeZone("Asia/Thimphu");
+      /** IANA Time Zone database entry for Asia/Tokyo.  UTC offset +09:00/+09:00. */
+      static ASIA_TOKYO = new _TimeZone("Asia/Tokyo");
+      /** IANA Time Zone database entry for Asia/Tomsk.  UTC offset +07:00/+07:00. */
+      static ASIA_TOMSK = new _TimeZone("Asia/Tomsk");
+      /** IANA Time Zone database entry for Asia/Ulaanbaatar.  UTC offset +08:00/+08:00. */
+      static ASIA_ULAANBAATAR = new _TimeZone("Asia/Ulaanbaatar");
+      /** IANA Time Zone database entry for Asia/Urumqi.  UTC offset +06:00/+06:00. */
+      static ASIA_URUMQI = new _TimeZone("Asia/Urumqi");
+      /** IANA Time Zone database entry for Asia/Ust-Nera.  UTC offset +10:00/+10:00. */
+      static ASIA_UST_MINUS_NERA = new _TimeZone("Asia/Ust-Nera");
+      /** IANA Time Zone database entry for Asia/Vladivostok.  UTC offset +10:00/+10:00. */
+      static ASIA_VLADIVOSTOK = new _TimeZone("Asia/Vladivostok");
+      /** IANA Time Zone database entry for Asia/Yakutsk.  UTC offset +09:00/+09:00. */
+      static ASIA_YAKUTSK = new _TimeZone("Asia/Yakutsk");
+      /** IANA Time Zone database entry for Asia/Yangon.  UTC offset +06:30/+06:30. */
+      static ASIA_YANGON = new _TimeZone("Asia/Yangon");
+      /** IANA Time Zone database entry for Asia/Yekaterinburg.  UTC offset +05:00/+05:00. */
+      static ASIA_YEKATERINBURG = new _TimeZone("Asia/Yekaterinburg");
+      /** IANA Time Zone database entry for Asia/Yerevan.  UTC offset +04:00/+04:00. */
+      static ASIA_YEREVAN = new _TimeZone("Asia/Yerevan");
+      /** IANA Time Zone database entry for Atlantic/Azores.  UTC offset −01:00/+00:00. */
+      static ATLANTIC_AZORES = new _TimeZone("Atlantic/Azores");
+      /** IANA Time Zone database entry for Atlantic/Bermuda.  UTC offset −04:00/−03:00. */
+      static ATLANTIC_BERMUDA = new _TimeZone("Atlantic/Bermuda");
+      /** IANA Time Zone database entry for Atlantic/Canary.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_CANARY = new _TimeZone("Atlantic/Canary");
+      /** IANA Time Zone database entry for Atlantic/Cape_Verde.  UTC offset −01:00/−01:00. */
+      static ATLANTIC_CAPE_VERDE = new _TimeZone("Atlantic/Cape_Verde");
+      /** IANA Time Zone database entry for Atlantic/Faroe.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_FAROE = new _TimeZone("Atlantic/Faroe");
+      /** IANA Time Zone database entry for Atlantic/Madeira.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_MADEIRA = new _TimeZone("Atlantic/Madeira");
+      /** IANA Time Zone database entry for Atlantic/South_Georgia.  UTC offset −02:00/−02:00. */
+      static ATLANTIC_SOUTH_GEORGIA = new _TimeZone("Atlantic/South_Georgia");
+      /** IANA Time Zone database entry for Atlantic/Stanley.  UTC offset −03:00/−03:00. */
+      static ATLANTIC_STANLEY = new _TimeZone("Atlantic/Stanley");
+      /** IANA Time Zone database entry for Australia/Adelaide.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_ADELAIDE = new _TimeZone("Australia/Adelaide");
+      /** IANA Time Zone database entry for Australia/Brisbane.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_BRISBANE = new _TimeZone("Australia/Brisbane");
+      /** IANA Time Zone database entry for Australia/Broken_Hill.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_BROKEN_HILL = new _TimeZone("Australia/Broken_Hill");
+      /** IANA Time Zone database entry for Australia/Darwin.  UTC offset +09:30/+09:30. */
+      static AUSTRALIA_DARWIN = new _TimeZone("Australia/Darwin");
+      /** IANA Time Zone database entry for Australia/Eucla.  UTC offset +08:45/+08:45. */
+      static AUSTRALIA_EUCLA = new _TimeZone("Australia/Eucla");
+      /** IANA Time Zone database entry for Australia/Hobart.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_HOBART = new _TimeZone("Australia/Hobart");
+      /** IANA Time Zone database entry for Australia/Lindeman.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_LINDEMAN = new _TimeZone("Australia/Lindeman");
+      /** IANA Time Zone database entry for Australia/Lord_Howe.  UTC offset +10:30/+11:00. */
+      static AUSTRALIA_LORD_HOWE = new _TimeZone("Australia/Lord_Howe");
+      /** IANA Time Zone database entry for Australia/Melbourne.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_MELBOURNE = new _TimeZone("Australia/Melbourne");
+      /** IANA Time Zone database entry for Australia/Perth.  UTC offset +08:00/+08:00. */
+      static AUSTRALIA_PERTH = new _TimeZone("Australia/Perth");
+      /** IANA Time Zone database entry for Australia/Sydney.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_SYDNEY = new _TimeZone("Australia/Sydney");
+      /** IANA Time Zone database entry for CET.  UTC offset +01:00/+02:00. */
+      static CET = new _TimeZone("CET");
+      /** IANA Time Zone database entry for CST6CDT.  UTC offset −06:00/−05:00. */
+      static CST6CDT = new _TimeZone("CST6CDT");
+      /** IANA Time Zone database entry for EET.  UTC offset +02:00/+03:00. */
+      static EET = new _TimeZone("EET");
+      /** IANA Time Zone database entry for EST.  UTC offset −05:00/−05:00. */
+      static EST = new _TimeZone("EST");
+      /** IANA Time Zone database entry for EST5EDT.  UTC offset −05:00/−04:00. */
+      static EST5EDT = new _TimeZone("EST5EDT");
+      /** IANA Time Zone database entry for Etc/GMT.  UTC offset +00:00/+00:00. */
+      static ETC_GMT = new _TimeZone("Etc/GMT");
+      /** IANA Time Zone database entry for Etc/GMT+1.  UTC offset −01:00/−01:00. */
+      static ETC_GMT_PLUS_1 = new _TimeZone("Etc/GMT+1");
+      /** IANA Time Zone database entry for Etc/GMT+10.  UTC offset −10:00/−10:00. */
+      static ETC_GMT_PLUS_10 = new _TimeZone("Etc/GMT+10");
+      /** IANA Time Zone database entry for Etc/GMT+11.  UTC offset −11:00/−11:00. */
+      static ETC_GMT_PLUS_11 = new _TimeZone("Etc/GMT+11");
+      /** IANA Time Zone database entry for Etc/GMT+12.  UTC offset −12:00/−12:00. */
+      static ETC_GMT_PLUS_12 = new _TimeZone("Etc/GMT+12");
+      /** IANA Time Zone database entry for Etc/GMT+2.  UTC offset −02:00/−02:00. */
+      static ETC_GMT_PLUS_2 = new _TimeZone("Etc/GMT+2");
+      /** IANA Time Zone database entry for Etc/GMT+3.  UTC offset −03:00/−03:00. */
+      static ETC_GMT_PLUS_3 = new _TimeZone("Etc/GMT+3");
+      /** IANA Time Zone database entry for Etc/GMT+4.  UTC offset −04:00/−04:00. */
+      static ETC_GMT_PLUS_4 = new _TimeZone("Etc/GMT+4");
+      /** IANA Time Zone database entry for Etc/GMT+5.  UTC offset −05:00/−05:00. */
+      static ETC_GMT_PLUS_5 = new _TimeZone("Etc/GMT+5");
+      /** IANA Time Zone database entry for Etc/GMT+6.  UTC offset −06:00/−06:00. */
+      static ETC_GMT_PLUS_6 = new _TimeZone("Etc/GMT+6");
+      /** IANA Time Zone database entry for Etc/GMT+7.  UTC offset −07:00/−07:00. */
+      static ETC_GMT_PLUS_7 = new _TimeZone("Etc/GMT+7");
+      /** IANA Time Zone database entry for Etc/GMT+8.  UTC offset −08:00/−08:00. */
+      static ETC_GMT_PLUS_8 = new _TimeZone("Etc/GMT+8");
+      /** IANA Time Zone database entry for Etc/GMT+9.  UTC offset −09:00/−09:00. */
+      static ETC_GMT_PLUS_9 = new _TimeZone("Etc/GMT+9");
+      /** IANA Time Zone database entry for Etc/GMT-1.  UTC offset +01:00/+01:00. */
+      static ETC_GMT_MINUS_1 = new _TimeZone("Etc/GMT-1");
+      /** IANA Time Zone database entry for Etc/GMT-10.  UTC offset +10:00/+10:00. */
+      static ETC_GMT_MINUS_10 = new _TimeZone("Etc/GMT-10");
+      /** IANA Time Zone database entry for Etc/GMT-11.  UTC offset +11:00/+11:00. */
+      static ETC_GMT_MINUS_11 = new _TimeZone("Etc/GMT-11");
+      /** IANA Time Zone database entry for Etc/GMT-12.  UTC offset +12:00/+12:00. */
+      static ETC_GMT_MINUS_12 = new _TimeZone("Etc/GMT-12");
+      /** IANA Time Zone database entry for Etc/GMT-13.  UTC offset +13:00/+13:00. */
+      static ETC_GMT_MINUS_13 = new _TimeZone("Etc/GMT-13");
+      /** IANA Time Zone database entry for Etc/GMT-14.  UTC offset +14:00/+14:00. */
+      static ETC_GMT_MINUS_14 = new _TimeZone("Etc/GMT-14");
+      /** IANA Time Zone database entry for Etc/GMT-2.  UTC offset +02:00/+02:00. */
+      static ETC_GMT_MINUS_2 = new _TimeZone("Etc/GMT-2");
+      /** IANA Time Zone database entry for Etc/GMT-3.  UTC offset +03:00/+03:00. */
+      static ETC_GMT_MINUS_3 = new _TimeZone("Etc/GMT-3");
+      /** IANA Time Zone database entry for Etc/GMT-4.  UTC offset +04:00/+04:00. */
+      static ETC_GMT_MINUS_4 = new _TimeZone("Etc/GMT-4");
+      /** IANA Time Zone database entry for Etc/GMT-5.  UTC offset +05:00/+05:00. */
+      static ETC_GMT_MINUS_5 = new _TimeZone("Etc/GMT-5");
+      /** IANA Time Zone database entry for Etc/GMT-6.  UTC offset +06:00/+06:00. */
+      static ETC_GMT_MINUS_6 = new _TimeZone("Etc/GMT-6");
+      /** IANA Time Zone database entry for Etc/GMT-7.  UTC offset +07:00/+07:00. */
+      static ETC_GMT_MINUS_7 = new _TimeZone("Etc/GMT-7");
+      /** IANA Time Zone database entry for Etc/GMT-8.  UTC offset +08:00/+08:00. */
+      static ETC_GMT_MINUS_8 = new _TimeZone("Etc/GMT-8");
+      /** IANA Time Zone database entry for Etc/GMT-9.  UTC offset +09:00/+09:00. */
+      static ETC_GMT_MINUS_9 = new _TimeZone("Etc/GMT-9");
+      /** IANA Time Zone database entry for Etc/UTC.  UTC offset +00:00/+00:00. */
+      static ETC_UTC = new _TimeZone("Etc/UTC");
+      /** IANA Time Zone database entry for Europe/Andorra.  UTC offset +01:00/+02:00. */
+      static EUROPE_ANDORRA = new _TimeZone("Europe/Andorra");
+      /** IANA Time Zone database entry for Europe/Astrakhan.  UTC offset +04:00/+04:00. */
+      static EUROPE_ASTRAKHAN = new _TimeZone("Europe/Astrakhan");
+      /** IANA Time Zone database entry for Europe/Athens.  UTC offset +02:00/+03:00. */
+      static EUROPE_ATHENS = new _TimeZone("Europe/Athens");
+      /** IANA Time Zone database entry for Europe/Belgrade.  UTC offset +01:00/+02:00. */
+      static EUROPE_BELGRADE = new _TimeZone("Europe/Belgrade");
+      /** IANA Time Zone database entry for Europe/Berlin.  UTC offset +01:00/+02:00. */
+      static EUROPE_BERLIN = new _TimeZone("Europe/Berlin");
+      /** IANA Time Zone database entry for Europe/Brussels.  UTC offset +01:00/+02:00. */
+      static EUROPE_BRUSSELS = new _TimeZone("Europe/Brussels");
+      /** IANA Time Zone database entry for Europe/Bucharest.  UTC offset +02:00/+03:00. */
+      static EUROPE_BUCHAREST = new _TimeZone("Europe/Bucharest");
+      /** IANA Time Zone database entry for Europe/Budapest.  UTC offset +01:00/+02:00. */
+      static EUROPE_BUDAPEST = new _TimeZone("Europe/Budapest");
+      /** IANA Time Zone database entry for Europe/Chisinau.  UTC offset +02:00/+03:00. */
+      static EUROPE_CHISINAU = new _TimeZone("Europe/Chisinau");
+      /** IANA Time Zone database entry for Europe/Dublin.  UTC offset +01:00/+00:00. */
+      static EUROPE_DUBLIN = new _TimeZone("Europe/Dublin");
+      /** IANA Time Zone database entry for Europe/Gibraltar.  UTC offset +01:00/+02:00. */
+      static EUROPE_GIBRALTAR = new _TimeZone("Europe/Gibraltar");
+      /** IANA Time Zone database entry for Europe/Helsinki.  UTC offset +02:00/+03:00. */
+      static EUROPE_HELSINKI = new _TimeZone("Europe/Helsinki");
+      /** IANA Time Zone database entry for Europe/Istanbul.  UTC offset +03:00/+03:00. */
+      static EUROPE_ISTANBUL = new _TimeZone("Europe/Istanbul");
+      /** IANA Time Zone database entry for Europe/Kaliningrad.  UTC offset +02:00/+02:00. */
+      static EUROPE_KALININGRAD = new _TimeZone("Europe/Kaliningrad");
+      /** IANA Time Zone database entry for Europe/Kirov.  UTC offset +03:00/+03:00. */
+      static EUROPE_KIROV = new _TimeZone("Europe/Kirov");
+      /** IANA Time Zone database entry for Europe/Kyiv.  UTC offset +02:00/+03:00. */
+      static EUROPE_KYIV = new _TimeZone("Europe/Kyiv");
+      /** IANA Time Zone database entry for Europe/Lisbon.  UTC offset +00:00/+01:00. */
+      static EUROPE_LISBON = new _TimeZone("Europe/Lisbon");
+      /** IANA Time Zone database entry for Europe/London.  UTC offset +00:00/+01:00. */
+      static EUROPE_LONDON = new _TimeZone("Europe/London");
+      /** IANA Time Zone database entry for Europe/Madrid.  UTC offset +01:00/+02:00. */
+      static EUROPE_MADRID = new _TimeZone("Europe/Madrid");
+      /** IANA Time Zone database entry for Europe/Malta.  UTC offset +01:00/+02:00. */
+      static EUROPE_MALTA = new _TimeZone("Europe/Malta");
+      /** IANA Time Zone database entry for Europe/Minsk.  UTC offset +03:00/+03:00. */
+      static EUROPE_MINSK = new _TimeZone("Europe/Minsk");
+      /** IANA Time Zone database entry for Europe/Moscow.  UTC offset +03:00/+03:00. */
+      static EUROPE_MOSCOW = new _TimeZone("Europe/Moscow");
+      /** IANA Time Zone database entry for Europe/Paris.  UTC offset +01:00/+02:00. */
+      static EUROPE_PARIS = new _TimeZone("Europe/Paris");
+      /** IANA Time Zone database entry for Europe/Prague.  UTC offset +01:00/+02:00. */
+      static EUROPE_PRAGUE = new _TimeZone("Europe/Prague");
+      /** IANA Time Zone database entry for Europe/Riga.  UTC offset +02:00/+03:00. */
+      static EUROPE_RIGA = new _TimeZone("Europe/Riga");
+      /** IANA Time Zone database entry for Europe/Rome.  UTC offset +01:00/+02:00. */
+      static EUROPE_ROME = new _TimeZone("Europe/Rome");
+      /** IANA Time Zone database entry for Europe/Samara.  UTC offset +04:00/+04:00. */
+      static EUROPE_SAMARA = new _TimeZone("Europe/Samara");
+      /** IANA Time Zone database entry for Europe/Saratov.  UTC offset +04:00/+04:00. */
+      static EUROPE_SARATOV = new _TimeZone("Europe/Saratov");
+      /** IANA Time Zone database entry for Europe/Simferopol.  UTC offset +03:00/+03:00. */
+      static EUROPE_SIMFEROPOL = new _TimeZone("Europe/Simferopol");
+      /** IANA Time Zone database entry for Europe/Sofia.  UTC offset +02:00/+03:00. */
+      static EUROPE_SOFIA = new _TimeZone("Europe/Sofia");
+      /** IANA Time Zone database entry for Europe/Tallinn.  UTC offset +02:00/+03:00. */
+      static EUROPE_TALLINN = new _TimeZone("Europe/Tallinn");
+      /** IANA Time Zone database entry for Europe/Tirane.  UTC offset +01:00/+02:00. */
+      static EUROPE_TIRANE = new _TimeZone("Europe/Tirane");
+      /** IANA Time Zone database entry for Europe/Ulyanovsk.  UTC offset +04:00/+04:00. */
+      static EUROPE_ULYANOVSK = new _TimeZone("Europe/Ulyanovsk");
+      /** IANA Time Zone database entry for Europe/Vienna.  UTC offset +01:00/+02:00. */
+      static EUROPE_VIENNA = new _TimeZone("Europe/Vienna");
+      /** IANA Time Zone database entry for Europe/Vilnius.  UTC offset +02:00/+03:00. */
+      static EUROPE_VILNIUS = new _TimeZone("Europe/Vilnius");
+      /** IANA Time Zone database entry for Europe/Volgograd.  UTC offset +03:00/+03:00. */
+      static EUROPE_VOLGOGRAD = new _TimeZone("Europe/Volgograd");
+      /** IANA Time Zone database entry for Europe/Warsaw.  UTC offset +01:00/+02:00. */
+      static EUROPE_WARSAW = new _TimeZone("Europe/Warsaw");
+      /** IANA Time Zone database entry for Europe/Zurich.  UTC offset +01:00/+02:00. */
+      static EUROPE_ZURICH = new _TimeZone("Europe/Zurich");
+      /** IANA Time Zone database entry for Factory.  UTC offset +00:00/+00:00. */
+      static FACTORY = new _TimeZone("Factory");
+      /** IANA Time Zone database entry for HST.  UTC offset −10:00/−10:00. */
+      static HST = new _TimeZone("HST");
+      /** IANA Time Zone database entry for Indian/Chagos.  UTC offset +06:00/+06:00. */
+      static INDIAN_CHAGOS = new _TimeZone("Indian/Chagos");
+      /** IANA Time Zone database entry for Indian/Maldives.  UTC offset +05:00/+05:00. */
+      static INDIAN_MALDIVES = new _TimeZone("Indian/Maldives");
+      /** IANA Time Zone database entry for Indian/Mauritius.  UTC offset +04:00/+04:00. */
+      static INDIAN_MAURITIUS = new _TimeZone("Indian/Mauritius");
+      /** IANA Time Zone database entry for MET.  UTC offset +01:00/+02:00. */
+      static MET = new _TimeZone("MET");
+      /** IANA Time Zone database entry for MST.  UTC offset −07:00/−07:00. */
+      static MST = new _TimeZone("MST");
+      /** IANA Time Zone database entry for MST7MDT.  UTC offset −07:00/−06:00. */
+      static MST7MDT = new _TimeZone("MST7MDT");
+      /** IANA Time Zone database entry for Pacific/Apia.  UTC offset +13:00/+13:00. */
+      static PACIFIC_APIA = new _TimeZone("Pacific/Apia");
+      /** IANA Time Zone database entry for Pacific/Auckland.  UTC offset +12:00/+13:00. */
+      static PACIFIC_AUCKLAND = new _TimeZone("Pacific/Auckland");
+      /** IANA Time Zone database entry for Pacific/Bougainville.  UTC offset +11:00/+11:00. */
+      static PACIFIC_BOUGAINVILLE = new _TimeZone("Pacific/Bougainville");
+      /** IANA Time Zone database entry for Pacific/Chatham.  UTC offset +12:45/+13:45. */
+      static PACIFIC_CHATHAM = new _TimeZone("Pacific/Chatham");
+      /** IANA Time Zone database entry for Pacific/Easter.  UTC offset −06:00/−05:00. */
+      static PACIFIC_EASTER = new _TimeZone("Pacific/Easter");
+      /** IANA Time Zone database entry for Pacific/Efate.  UTC offset +11:00/+11:00. */
+      static PACIFIC_EFATE = new _TimeZone("Pacific/Efate");
+      /** IANA Time Zone database entry for Pacific/Fakaofo.  UTC offset +13:00/+13:00. */
+      static PACIFIC_FAKAOFO = new _TimeZone("Pacific/Fakaofo");
+      /** IANA Time Zone database entry for Pacific/Fiji.  UTC offset +12:00/+12:00. */
+      static PACIFIC_FIJI = new _TimeZone("Pacific/Fiji");
+      /** IANA Time Zone database entry for Pacific/Galapagos.  UTC offset −06:00/−06:00. */
+      static PACIFIC_GALAPAGOS = new _TimeZone("Pacific/Galapagos");
+      /** IANA Time Zone database entry for Pacific/Gambier.  UTC offset −09:00/−09:00. */
+      static PACIFIC_GAMBIER = new _TimeZone("Pacific/Gambier");
+      /** IANA Time Zone database entry for Pacific/Guadalcanal.  UTC offset +11:00/+11:00. */
+      static PACIFIC_GUADALCANAL = new _TimeZone("Pacific/Guadalcanal");
+      /** IANA Time Zone database entry for Pacific/Guam.  UTC offset +10:00/+10:00. */
+      static PACIFIC_GUAM = new _TimeZone("Pacific/Guam");
+      /** IANA Time Zone database entry for Pacific/Honolulu.  UTC offset −10:00/−10:00. */
+      static PACIFIC_HONOLULU = new _TimeZone("Pacific/Honolulu");
+      /** IANA Time Zone database entry for Pacific/Kanton.  UTC offset +13:00/+13:00. */
+      static PACIFIC_KANTON = new _TimeZone("Pacific/Kanton");
+      /** IANA Time Zone database entry for Pacific/Kiritimati.  UTC offset +14:00/+14:00. */
+      static PACIFIC_KIRITIMATI = new _TimeZone("Pacific/Kiritimati");
+      /** IANA Time Zone database entry for Pacific/Kosrae.  UTC offset +11:00/+11:00. */
+      static PACIFIC_KOSRAE = new _TimeZone("Pacific/Kosrae");
+      /** IANA Time Zone database entry for Pacific/Kwajalein.  UTC offset +12:00/+12:00. */
+      static PACIFIC_KWAJALEIN = new _TimeZone("Pacific/Kwajalein");
+      /** IANA Time Zone database entry for Pacific/Marquesas.  UTC offset −09:30/−09:30. */
+      static PACIFIC_MARQUESAS = new _TimeZone("Pacific/Marquesas");
+      /** IANA Time Zone database entry for Pacific/Nauru.  UTC offset +12:00/+12:00. */
+      static PACIFIC_NAURU = new _TimeZone("Pacific/Nauru");
+      /** IANA Time Zone database entry for Pacific/Niue.  UTC offset −11:00/−11:00. */
+      static PACIFIC_NIUE = new _TimeZone("Pacific/Niue");
+      /** IANA Time Zone database entry for Pacific/Norfolk.  UTC offset +11:00/+12:00. */
+      static PACIFIC_NORFOLK = new _TimeZone("Pacific/Norfolk");
+      /** IANA Time Zone database entry for Pacific/Noumea.  UTC offset +11:00/+11:00. */
+      static PACIFIC_NOUMEA = new _TimeZone("Pacific/Noumea");
+      /** IANA Time Zone database entry for Pacific/Pago_Pago.  UTC offset −11:00/−11:00. */
+      static PACIFIC_PAGO_PAGO = new _TimeZone("Pacific/Pago_Pago");
+      /** IANA Time Zone database entry for Pacific/Palau.  UTC offset +09:00/+09:00. */
+      static PACIFIC_PALAU = new _TimeZone("Pacific/Palau");
+      /** IANA Time Zone database entry for Pacific/Pitcairn.  UTC offset −08:00/−08:00. */
+      static PACIFIC_PITCAIRN = new _TimeZone("Pacific/Pitcairn");
+      /** IANA Time Zone database entry for Pacific/Port_Moresby.  UTC offset +10:00/+10:00. */
+      static PACIFIC_PORT_MORESBY = new _TimeZone("Pacific/Port_Moresby");
+      /** IANA Time Zone database entry for Pacific/Rarotonga.  UTC offset −10:00/−10:00. */
+      static PACIFIC_RAROTONGA = new _TimeZone("Pacific/Rarotonga");
+      /** IANA Time Zone database entry for Pacific/Tahiti.  UTC offset −10:00/−10:00. */
+      static PACIFIC_TAHITI = new _TimeZone("Pacific/Tahiti");
+      /** IANA Time Zone database entry for Pacific/Tarawa.  UTC offset +12:00/+12:00. */
+      static PACIFIC_TARAWA = new _TimeZone("Pacific/Tarawa");
+      /** IANA Time Zone database entry for Pacific/Tongatapu.  UTC offset +13:00/+13:00. */
+      static PACIFIC_TONGATAPU = new _TimeZone("Pacific/Tongatapu");
+      /** IANA Time Zone database entry for PST8PDT.  UTC offset −08:00/−07:00. */
+      static PST8PDT = new _TimeZone("PST8PDT");
+      /** IANA Time Zone database entry for WET.  UTC offset +00:00/+01:00. */
+      static WET = new _TimeZone("WET");
+      /**
+       * Use this to add a timezone not in this class.
+       *
+       * @param timezoneName the name of the timezone
+       * @returns a new Timezone
+       */
+      static of(timezoneName) {
+        return new _TimeZone(timezoneName);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/index.ts
+var init_lib3 = __esm({
+  "../../aws-cdk-lib/core/lib/index.ts"() {
+    "use strict";
+    init_aspect();
+    init_tag_aspect();
+    init_mixins2();
+    init_token();
+    init_resolvable();
+    init_type_hints();
+    init_lazy();
+    init_prop_injectors();
+    init_tag_manager();
+    init_string_fragments();
+    init_stack_synthesizers();
+    init_reference();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_hook();
+    init_cfn_codedeploy_blue_green_hook();
+    init_cfn_include();
+    init_cfn_mapping();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_cfn_resource_policy();
+    init_cfn_rule();
+    init_stack();
+    init_stage();
+    init_cfn_element();
+    init_cfn_dynamic_reference();
+    init_cfn_tag();
+    init_cfn_json();
+    init_removal_policy();
+    init_removal_policies();
+    init_cross_stack_reference_strength();
+    init_arn();
+    init_duration();
+    init_bitrate();
+    init_expiration();
+    init_size();
+    init_errors();
+    init_app2();
+    init_context_provider();
+    init_environment();
+    init_annotations();
+    init_runtime();
+    init_secret_value();
+    init_resource();
+    init_physical_name();
+    init_assets();
+    init_tree();
+    init_asset_staging2();
+    init_bundling();
+    init_fs();
+    init_custom_resource();
+    init_nested_stack();
+    init_custom_resource_provider2();
+    init_cfn_capabilities();
+    init_cloudformation_generated();
+    init_feature_flags();
+    init_permissions_boundary();
+    init_validation2();
+    init_eventbridge();
+    init_grants();
+    init_intrinsic();
+    init_names();
+    init_time_zone();
+  }
+});
+
+// ../../aws-cdk-lib/core/index.ts
+var init_core = __esm({
+  "../../aws-cdk-lib/core/index.ts"() {
+    "use strict";
+    init_lib3();
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts
+var assembly_validation_report_exports = {};
+__export(assembly_validation_report_exports, {
+  AssemblyValidationReport: () => AssemblyValidationReport
+});
+function getBooleanContext2(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+var fs18, path22, AssemblyValidationReport, APP_INIT_HOOK_SYMBOL2;
+var init_assembly_validation_report = __esm({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts"() {
+    "use strict";
+    fs18 = __toESM(require("fs"));
+    path22 = __toESM(require("path"));
+    init_core();
+    init_literal_string();
+    init_cx_api();
+    init_match();
+    init_error();
+    AssemblyValidationReport = class _AssemblyValidationReport {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      /**
+       * During testing, create an App() with this as `postCliContext` in order to be able to use `AssemblyValidationReport.fromApp(app)`.
+       */
+      static APP_CONTEXT = {
+        [FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT]: false,
+        [STRICT_CFN_VALIDATE_ERRORS]: false
+      };
+      /**
+       * Disable the test suppressions that are automatically applied to all tests via the global App init hook (jest-global-app-testhook.ts).
+       *
+       * Returns a function that must be called to restore the global App init hook to its previous state.
+       */
+      static disableTestSuppressions() {
+        const previousAppHook = globalThis[APP_INIT_HOOK_SYMBOL2];
+        globalThis[APP_INIT_HOOK_SYMBOL2] = () => {
+        };
+        return () => {
+          globalThis[APP_INIT_HOOK_SYMBOL2] = previousAppHook;
+        };
+      }
+      /**
+       * Synthesize the given app and return its validation report.
+       */
+      static fromApp(app) {
+        if (getBooleanContext2(app, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true) || getBooleanContext2(app, STRICT_CFN_VALIDATE_ERRORS, false)) {
+          throw new AssumptionError(lit`MissingAppContext`, "In order to assert on validations with AssemblyValidationReport, create your App with { postCliContext: AssemblyValidationReport.APP_CONTEXT }");
+        }
+        const asm = app.synth();
+        const newFile = path22.join(asm.directory, "validation-report.json");
+        const newReport = JSON.parse(fs18.readFileSync(newFile, "utf-8"));
+        return new _AssemblyValidationReport(newReport);
+      }
+      pluginReport(pluginName) {
+        const report = this.report.pluginReports.find((r) => r.pluginName === pluginName);
+        if (!report) {
+          throw new AssertionError(`No report found for plugin ${pluginName}`);
+        }
+        return report;
+      }
+      /**
+       * All violations in all reports
+       */
+      allViolations() {
+        return this.report.pluginReports.flatMap((r) => r.violations);
+      }
+      hasViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (r.hasFailed()) {
+          throw new AssertionError("Expected policy violation not found:\n" + r.renderMismatch());
+        }
+      }
+      hasNoViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (!r.hasFailed()) {
+          throw new AssertionError("Expected no policy violations, but found:\n" + JSON.stringify(this.allViolations(), void 0, 2));
+        }
+      }
+    };
+    APP_INIT_HOOK_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/index.js
+var require_helpers_internal = __commonJS({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m)
+        if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p))
+          __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var _noFold;
+    exports2.Match = void 0;
+    Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, get: () => {
+      var value = (init_match(), __toCommonJS(match_exports)).Match;
+      Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.Matcher = void 0;
+    Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).Matcher;
+      Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.MatchResult = void 0;
+    Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).MatchResult;
+      Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.AssemblyValidationReport = void 0;
+    Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, get: () => {
+      var value = (init_assembly_validation_report(), __toCommonJS(assembly_validation_report_exports)).AssemblyValidationReport;
+      Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+  }
+});
+
+// ../../../node_modules/@smithy/types/dist-cjs/index.js
+var require_dist_cjs = __commonJS({
+  "../../../node_modules/@smithy/types/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AlgorithmId: () => AlgorithmId,
+      EndpointURLScheme: () => EndpointURLScheme,
+      FieldPosition: () => FieldPosition,
+      HttpApiKeyAuthLocation: () => HttpApiKeyAuthLocation2,
+      HttpAuthLocation: () => HttpAuthLocation,
+      IniSectionType: () => IniSectionType,
+      RequestHandlerProtocol: () => RequestHandlerProtocol,
+      SMITHY_CONTEXT_KEY: () => SMITHY_CONTEXT_KEY4,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var HttpAuthLocation = /* @__PURE__ */ ((HttpAuthLocation2) => {
+      HttpAuthLocation2["HEADER"] = "header";
+      HttpAuthLocation2["QUERY"] = "query";
+      return HttpAuthLocation2;
+    })(HttpAuthLocation || {});
+    var HttpApiKeyAuthLocation2 = /* @__PURE__ */ ((HttpApiKeyAuthLocation22) => {
+      HttpApiKeyAuthLocation22["HEADER"] = "header";
+      HttpApiKeyAuthLocation22["QUERY"] = "query";
+      return HttpApiKeyAuthLocation22;
+    })(HttpApiKeyAuthLocation2 || {});
+    var EndpointURLScheme = /* @__PURE__ */ ((EndpointURLScheme2) => {
+      EndpointURLScheme2["HTTP"] = "http";
+      EndpointURLScheme2["HTTPS"] = "https";
+      return EndpointURLScheme2;
+    })(EndpointURLScheme || {});
+    var AlgorithmId = /* @__PURE__ */ ((AlgorithmId2) => {
+      AlgorithmId2["MD5"] = "md5";
+      AlgorithmId2["CRC32"] = "crc32";
+      AlgorithmId2["CRC32C"] = "crc32c";
+      AlgorithmId2["SHA1"] = "sha1";
+      AlgorithmId2["SHA256"] = "sha256";
+      return AlgorithmId2;
+    })(AlgorithmId || {});
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      if (runtimeConfig.sha256 !== void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "sha256",
+          checksumConstructor: () => runtimeConfig.sha256
+        });
+      }
+      if (runtimeConfig.md5 != void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "md5",
+          checksumConstructor: () => runtimeConfig.md5
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getDefaultClientConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig)
+      };
+    }, "getDefaultClientConfiguration");
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var FieldPosition = /* @__PURE__ */ ((FieldPosition2) => {
+      FieldPosition2[FieldPosition2["HEADER"] = 0] = "HEADER";
+      FieldPosition2[FieldPosition2["TRAILER"] = 1] = "TRAILER";
+      return FieldPosition2;
+    })(FieldPosition || {});
+    var SMITHY_CONTEXT_KEY4 = "__smithy_context";
+    var IniSectionType = /* @__PURE__ */ ((IniSectionType2) => {
+      IniSectionType2["PROFILE"] = "profile";
+      IniSectionType2["SSO_SESSION"] = "sso-session";
+      IniSectionType2["SERVICES"] = "services";
+      return IniSectionType2;
+    })(IniSectionType || {});
+    var RequestHandlerProtocol = /* @__PURE__ */ ((RequestHandlerProtocol2) => {
+      RequestHandlerProtocol2["HTTP_0_9"] = "http/0.9";
+      RequestHandlerProtocol2["HTTP_1_0"] = "http/1.0";
+      RequestHandlerProtocol2["TDS_8_0"] = "tds/8.0";
+      return RequestHandlerProtocol2;
+    })(RequestHandlerProtocol || {});
+  }
+});
+
+// ../../../node_modules/@smithy/protocol-http/dist-cjs/index.js
+var require_dist_cjs2 = __commonJS({
+  "../../../node_modules/@smithy/protocol-http/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Field: () => Field,
+      Fields: () => Fields,
+      HttpRequest: () => HttpRequest7,
+      HttpResponse: () => HttpResponse2,
+      IHttpRequest: () => import_types8.HttpRequest,
+      getHttpHandlerExtensionConfiguration: () => getHttpHandlerExtensionConfiguration,
+      isValidHostname: () => isValidHostname,
+      resolveHttpHandlerRuntimeConfig: () => resolveHttpHandlerRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let httpHandler = runtimeConfig.httpHandler;
+      return {
+        setHttpHandler(handler2) {
+          httpHandler = handler2;
+        },
+        httpHandler() {
+          return httpHandler;
+        },
+        updateHttpClientConfig(key, value) {
+          httpHandler.updateHttpClientConfig(key, value);
+        },
+        httpHandlerConfigs() {
+          return httpHandler.httpHandlerConfigs();
+        }
+      };
+    }, "getHttpHandlerExtensionConfiguration");
+    var resolveHttpHandlerRuntimeConfig = /* @__PURE__ */ __name2((httpHandlerExtensionConfiguration) => {
+      return {
+        httpHandler: httpHandlerExtensionConfiguration.httpHandler()
+      };
+    }, "resolveHttpHandlerRuntimeConfig");
+    var import_types8 = require_dist_cjs();
+    var _Field = class _Field {
+      constructor({ name, kind = import_types8.FieldPosition.HEADER, values = [] }) {
+        this.name = name;
+        this.kind = kind;
+        this.values = values;
+      }
+      /**
+       * Appends a value to the field.
+       *
+       * @param value The value to append.
+       */
+      add(value) {
+        this.values.push(value);
+      }
+      /**
+       * Overwrite existing field values.
+       *
+       * @param values The new field values.
+       */
+      set(values) {
+        this.values = values;
+      }
+      /**
+       * Remove all matching entries from list.
+       *
+       * @param value Value to remove.
+       */
+      remove(value) {
+        this.values = this.values.filter((v) => v !== value);
+      }
+      /**
+       * Get comma-delimited string.
+       *
+       * @returns String representation of {@link Field}.
+       */
+      toString() {
+        return this.values.map((v) => v.includes(",") || v.includes(" ") ? `"${v}"` : v).join(", ");
+      }
+      /**
+       * Get string values as a list
+       *
+       * @returns Values in {@link Field} as a list.
+       */
+      get() {
+        return this.values;
+      }
+    };
+    __name2(_Field, "Field");
+    var Field = _Field;
+    var _Fields = class _Fields {
+      constructor({ fields = [], encoding = "utf-8" }) {
+        this.entries = {};
+        fields.forEach(this.setField.bind(this));
+        this.encoding = encoding;
+      }
+      /**
+       * Set entry for a {@link Field} name. The `name`
+       * attribute will be used to key the collection.
+       *
+       * @param field The {@link Field} to set.
+       */
+      setField(field) {
+        this.entries[field.name.toLowerCase()] = field;
+      }
+      /**
+       *  Retrieve {@link Field} entry by name.
+       *
+       * @param name The name of the {@link Field} entry
+       *  to retrieve
+       * @returns The {@link Field} if it exists.
+       */
+      getField(name) {
+        return this.entries[name.toLowerCase()];
+      }
+      /**
+       * Delete entry from collection.
+       *
+       * @param name Name of the entry to delete.
+       */
+      removeField(name) {
+        delete this.entries[name.toLowerCase()];
+      }
+      /**
+       * Helper function for retrieving specific types of fields.
+       * Used to grab all headers or all trailers.
+       *
+       * @param kind {@link FieldPosition} of entries to retrieve.
+       * @returns The {@link Field} entries with the specified
+       *  {@link FieldPosition}.
+       */
+      getByType(kind) {
+        return Object.values(this.entries).filter((field) => field.kind === kind);
+      }
+    };
+    __name2(_Fields, "Fields");
+    var Fields = _Fields;
+    var _HttpRequest = class _HttpRequest2 {
+      constructor(options) {
+        this.method = options.method || "GET";
+        this.hostname = options.hostname || "localhost";
+        this.port = options.port;
+        this.query = options.query || {};
+        this.headers = options.headers || {};
+        this.body = options.body;
+        this.protocol = options.protocol ? options.protocol.slice(-1) !== ":" ? `${options.protocol}:` : options.protocol : "https:";
+        this.path = options.path ? options.path.charAt(0) !== "/" ? `/${options.path}` : options.path : "/";
+        this.username = options.username;
+        this.password = options.password;
+        this.fragment = options.fragment;
+      }
+      /**
+       * Note: this does not deep-clone the body.
+       */
+      static clone(request2) {
+        const cloned = new _HttpRequest2({
+          ...request2,
+          headers: { ...request2.headers }
+        });
+        if (cloned.query) {
+          cloned.query = cloneQuery(cloned.query);
+        }
+        return cloned;
+      }
+      /**
+       * This method only actually asserts that request is the interface {@link IHttpRequest},
+       * and not necessarily this concrete class. Left in place for API stability.
+       *
+       * Do not call instance methods on the input of this function, and
+       * do not assume it has the HttpRequest prototype.
+       */
+      static isInstance(request2) {
+        if (!request2) {
+          return false;
+        }
+        const req = request2;
+        return "method" in req && "protocol" in req && "hostname" in req && "path" in req && typeof req["query"] === "object" && typeof req["headers"] === "object";
+      }
+      /**
+       * @deprecated use static HttpRequest.clone(request) instead. It's not safe to call
+       * this method because {@link HttpRequest.isInstance} incorrectly
+       * asserts that IHttpRequest (interface) objects are of type HttpRequest (class).
+       */
+      clone() {
+        return _HttpRequest2.clone(this);
+      }
+    };
+    __name2(_HttpRequest, "HttpRequest");
+    var HttpRequest7 = _HttpRequest;
+    function cloneQuery(query) {
+      return Object.keys(query).reduce((carry, paramName) => {
+        const param = query[paramName];
+        return {
+          ...carry,
+          [paramName]: Array.isArray(param) ? [...param] : param
+        };
+      }, {});
+    }
+    __name2(cloneQuery, "cloneQuery");
+    var _HttpResponse = class _HttpResponse {
+      constructor(options) {
+        this.statusCode = options.statusCode;
+        this.reason = options.reason;
+        this.headers = options.headers || {};
+        this.body = options.body;
+      }
+      static isInstance(response) {
+        if (!response)
+          return false;
+        const resp = response;
+        return typeof resp.statusCode === "number" && typeof resp.headers === "object";
+      }
+    };
+    __name2(_HttpResponse, "HttpResponse");
+    var HttpResponse2 = _HttpResponse;
+    function isValidHostname(hostname) {
+      const hostPattern = /^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/;
+      return hostPattern.test(hostname);
+    }
+    __name2(isValidHostname, "isValidHostname");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js
+var require_dist_cjs3 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getHostHeaderPlugin: () => getHostHeaderPlugin,
+      hostHeaderMiddleware: () => hostHeaderMiddleware,
+      hostHeaderMiddlewareOptions: () => hostHeaderMiddlewareOptions,
+      resolveHostHeaderConfig: () => resolveHostHeaderConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    function resolveHostHeaderConfig(input) {
+      return input;
+    }
+    __name2(resolveHostHeaderConfig, "resolveHostHeaderConfig");
+    var hostHeaderMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      if (!import_protocol_http8.HttpRequest.isInstance(args.request))
+        return next(args);
+      const { request: request2 } = args;
+      const { handlerProtocol = "" } = options.requestHandler.metadata || {};
+      if (handlerProtocol.indexOf("h2") >= 0 && !request2.headers[":authority"]) {
+        delete request2.headers["host"];
+        request2.headers[":authority"] = request2.hostname + (request2.port ? ":" + request2.port : "");
+      } else if (!request2.headers["host"]) {
+        let host = request2.hostname;
+        if (request2.port != null)
+          host += `:${request2.port}`;
+        request2.headers["host"] = host;
+      }
+      return next(args);
+    }, "hostHeaderMiddleware");
+    var hostHeaderMiddlewareOptions = {
+      name: "hostHeaderMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["HOST"],
+      override: true
+    };
+    var getHostHeaderPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);
+      }
+    }), "getHostHeaderPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js
+var require_dist_cjs4 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getLoggerPlugin: () => getLoggerPlugin,
+      loggerMiddleware: () => loggerMiddleware,
+      loggerMiddlewareOptions: () => loggerMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var loggerMiddleware = /* @__PURE__ */ __name2(() => (next, context) => async (args) => {
+      var _a7, _b;
+      try {
+        const response = await next(args);
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;
+        const { $metadata, ...outputWithoutMetadata } = response.output;
+        (_a7 = logger == null ? void 0 : logger.info) == null ? void 0 : _a7.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          output: outputFilterSensitiveLog(outputWithoutMetadata),
+          metadata: $metadata
+        });
+        return response;
+      } catch (error) {
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        (_b = logger == null ? void 0 : logger.error) == null ? void 0 : _b.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          error,
+          metadata: error.$metadata
+        });
+        throw error;
+      }
+    }, "loggerMiddleware");
+    var loggerMiddlewareOptions = {
+      name: "loggerMiddleware",
+      tags: ["LOGGER"],
+      step: "initialize",
+      override: true
+    };
+    var getLoggerPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);
+      }
+    }), "getLoggerPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js
+var require_dist_cjs5 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      addRecursionDetectionMiddlewareOptions: () => addRecursionDetectionMiddlewareOptions,
+      getRecursionDetectionPlugin: () => getRecursionDetectionPlugin,
+      recursionDetectionMiddleware: () => recursionDetectionMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var TRACE_ID_HEADER_NAME = "X-Amzn-Trace-Id";
+    var ENV_LAMBDA_FUNCTION_NAME = "AWS_LAMBDA_FUNCTION_NAME";
+    var ENV_TRACE_ID = "_X_AMZN_TRACE_ID";
+    var recursionDetectionMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2) || options.runtime !== "node" || request2.headers.hasOwnProperty(TRACE_ID_HEADER_NAME)) {
+        return next(args);
+      }
+      const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];
+      const traceId = process.env[ENV_TRACE_ID];
+      const nonEmptyString = /* @__PURE__ */ __name2((str) => typeof str === "string" && str.length > 0, "nonEmptyString");
+      if (nonEmptyString(functionName) && nonEmptyString(traceId)) {
+        request2.headers[TRACE_ID_HEADER_NAME] = traceId;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "recursionDetectionMiddleware");
+    var addRecursionDetectionMiddlewareOptions = {
+      step: "build",
+      tags: ["RECURSION_DETECTION"],
+      name: "recursionDetectionMiddleware",
+      override: true,
+      priority: "low"
+    };
+    var getRecursionDetectionPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(recursionDetectionMiddleware(options), addRecursionDetectionMiddlewareOptions);
+      }
+    }), "getRecursionDetectionPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js
+var require_dist_cjs6 = __commonJS({
+  "../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      EndpointCache: () => EndpointCache,
+      EndpointError: () => EndpointError2,
+      customEndpointFunctions: () => customEndpointFunctions,
+      isIpAddress: () => isIpAddress2,
+      isValidHostLabel: () => isValidHostLabel,
+      resolveEndpoint: () => resolveEndpoint2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _EndpointCache = class _EndpointCache {
+      /**
+       * @param [size] - desired average maximum capacity. A buffer of 10 additional keys will be allowed
+       *                 before keys are dropped.
+       * @param [params] - list of params to consider as part of the cache key.
+       *
+       * If the params list is not populated, no caching will happen.
+       * This may be out of order depending on how the object is created and arrives to this class.
+       */
+      constructor({ size, params }) {
+        this.data = /* @__PURE__ */ new Map();
+        this.parameters = [];
+        this.capacity = size ?? 50;
+        if (params) {
+          this.parameters = params;
+        }
+      }
+      /**
+       * @param endpointParams - query for endpoint.
+       * @param resolver - provider of the value if not present.
+       * @returns endpoint corresponding to the query.
+       */
+      get(endpointParams, resolver) {
+        const key = this.hash(endpointParams);
+        if (key === false) {
+          return resolver();
+        }
+        if (!this.data.has(key)) {
+          if (this.data.size > this.capacity + 10) {
+            const keys = this.data.keys();
+            let i = 0;
+            while (true) {
+              const { value, done } = keys.next();
+              this.data.delete(value);
+              if (done || ++i > 10) {
+                break;
+              }
+            }
+          }
+          this.data.set(key, resolver());
+        }
+        return this.data.get(key);
+      }
+      size() {
+        return this.data.size;
+      }
+      /**
+       * @returns cache key or false if not cachable.
+       */
+      hash(endpointParams) {
+        let buffer = "";
+        const { parameters } = this;
+        if (parameters.length === 0) {
+          return false;
+        }
+        for (const param of parameters) {
+          const val2 = String(endpointParams[param] ?? "");
+          if (val2.includes("|;")) {
+            return false;
+          }
+          buffer += val2 + "|;";
+        }
+        return buffer;
+      }
+    };
+    __name2(_EndpointCache, "EndpointCache");
+    var EndpointCache = _EndpointCache;
+    var IP_V4_REGEX = new RegExp(
+      `^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$`
+    );
+    var isIpAddress2 = /* @__PURE__ */ __name2((value) => IP_V4_REGEX.test(value) || value.startsWith("[") && value.endsWith("]"), "isIpAddress");
+    var VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);
+    var isValidHostLabel = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (!allowSubDomains) {
+        return VALID_HOST_LABEL_REGEX.test(value);
+      }
+      const labels = value.split(".");
+      for (const label of labels) {
+        if (!isValidHostLabel(label)) {
+          return false;
+        }
+      }
+      return true;
+    }, "isValidHostLabel");
+    var customEndpointFunctions = {};
+    var debugId = "endpoints";
+    function toDebugString(input) {
+      if (typeof input !== "object" || input == null) {
+        return input;
+      }
+      if ("ref" in input) {
+        return `$${toDebugString(input.ref)}`;
+      }
+      if ("fn" in input) {
+        return `${input.fn}(${(input.argv || []).map(toDebugString).join(", ")})`;
+      }
+      return JSON.stringify(input, null, 2);
+    }
+    __name2(toDebugString, "toDebugString");
+    var _EndpointError = class _EndpointError extends Error {
+      constructor(message) {
+        super(message);
+        this.name = "EndpointError";
+      }
+    };
+    __name2(_EndpointError, "EndpointError");
+    var EndpointError2 = _EndpointError;
+    var booleanEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "booleanEquals");
+    var getAttrPathList = /* @__PURE__ */ __name2((path23) => {
+      const parts = path23.split(".");
+      const pathList = [];
+      for (const part of parts) {
+        const squareBracketIndex = part.indexOf("[");
+        if (squareBracketIndex !== -1) {
+          if (part.indexOf("]") !== part.length - 1) {
+            throw new EndpointError2(`Path: '${path23}' does not end with ']'`);
+          }
+          const arrayIndex = part.slice(squareBracketIndex + 1, -1);
+          if (Number.isNaN(parseInt(arrayIndex))) {
+            throw new EndpointError2(`Invalid array index: '${arrayIndex}' in path: '${path23}'`);
+          }
+          if (squareBracketIndex !== 0) {
+            pathList.push(part.slice(0, squareBracketIndex));
+          }
+          pathList.push(arrayIndex);
+        } else {
+          pathList.push(part);
+        }
+      }
+      return pathList;
+    }, "getAttrPathList");
+    var getAttr = /* @__PURE__ */ __name2((value, path23) => getAttrPathList(path23).reduce((acc, index) => {
+      if (typeof acc !== "object") {
+        throw new EndpointError2(`Index '${index}' in '${path23}' not found in '${JSON.stringify(value)}'`);
+      } else if (Array.isArray(acc)) {
+        return acc[parseInt(index)];
+      }
+      return acc[index];
+    }, value), "getAttr");
+    var isSet = /* @__PURE__ */ __name2((value) => value != null, "isSet");
+    var not = /* @__PURE__ */ __name2((value) => !value, "not");
+    var import_types32 = require_dist_cjs();
+    var DEFAULT_PORTS = {
+      [import_types32.EndpointURLScheme.HTTP]: 80,
+      [import_types32.EndpointURLScheme.HTTPS]: 443
+    };
+    var parseURL = /* @__PURE__ */ __name2((value) => {
+      const whatwgURL = (() => {
+        try {
+          if (value instanceof URL) {
+            return value;
+          }
+          if (typeof value === "object" && "hostname" in value) {
+            const { hostname: hostname2, port, protocol: protocol2 = "", path: path23 = "", query = {} } = value;
+            const url2 = new URL(`${protocol2}//${hostname2}${port ? `:${port}` : ""}${path23}`);
+            url2.search = Object.entries(query).map(([k, v]) => `${k}=${v}`).join("&");
+            return url2;
+          }
+          return new URL(value);
+        } catch (error) {
+          return null;
+        }
+      })();
+      if (!whatwgURL) {
+        console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);
+        return null;
+      }
+      const urlString = whatwgURL.href;
+      const { host, hostname, pathname, protocol, search } = whatwgURL;
+      if (search) {
+        return null;
+      }
+      const scheme = protocol.slice(0, -1);
+      if (!Object.values(import_types32.EndpointURLScheme).includes(scheme)) {
+        return null;
+      }
+      const isIp = isIpAddress2(hostname);
+      const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) || typeof value === "string" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`);
+      const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;
+      return {
+        scheme,
+        authority,
+        path: pathname,
+        normalizedPath: pathname.endsWith("/") ? pathname : `${pathname}/`,
+        isIp
+      };
+    }, "parseURL");
+    var stringEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "stringEquals");
+    var substring = /* @__PURE__ */ __name2((input, start, stop, reverse) => {
+      if (start >= stop || input.length < stop) {
+        return null;
+      }
+      if (!reverse) {
+        return input.substring(start, stop);
+      }
+      return input.substring(input.length - stop, input.length - start);
+    }, "substring");
+    var uriEncode = /* @__PURE__ */ __name2((value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`), "uriEncode");
+    var endpointFunctions = {
+      booleanEquals,
+      getAttr,
+      isSet,
+      isValidHostLabel,
+      not,
+      parseURL,
+      stringEquals,
+      substring,
+      uriEncode
+    };
+    var evaluateTemplate = /* @__PURE__ */ __name2((template, options) => {
+      const evaluatedTemplateArr = [];
+      const templateContext = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      let currentIndex = 0;
+      while (currentIndex < template.length) {
+        const openingBraceIndex = template.indexOf("{", currentIndex);
+        if (openingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(currentIndex));
+          break;
+        }
+        evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));
+        const closingBraceIndex = template.indexOf("}", openingBraceIndex);
+        if (closingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex));
+          break;
+        }
+        if (template[openingBraceIndex + 1] === "{" && template[closingBraceIndex + 1] === "}") {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));
+          currentIndex = closingBraceIndex + 2;
+        }
+        const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);
+        if (parameterName.includes("#")) {
+          const [refName, attrName] = parameterName.split("#");
+          evaluatedTemplateArr.push(getAttr(templateContext[refName], attrName));
+        } else {
+          evaluatedTemplateArr.push(templateContext[parameterName]);
+        }
+        currentIndex = closingBraceIndex + 1;
+      }
+      return evaluatedTemplateArr.join("");
+    }, "evaluateTemplate");
+    var getReferenceValue = /* @__PURE__ */ __name2(({ ref }, options) => {
+      const referenceRecord = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      return referenceRecord[ref];
+    }, "getReferenceValue");
+    var evaluateExpression = /* @__PURE__ */ __name2((obj, keyName, options) => {
+      if (typeof obj === "string") {
+        return evaluateTemplate(obj, options);
+      } else if (obj["fn"]) {
+        return callFunction(obj, options);
+      } else if (obj["ref"]) {
+        return getReferenceValue(obj, options);
+      }
+      throw new EndpointError2(`'${keyName}': ${String(obj)} is not a string, function or reference.`);
+    }, "evaluateExpression");
+    var callFunction = /* @__PURE__ */ __name2(({ fn, argv }, options) => {
+      const evaluatedArgs = argv.map(
+        (arg) => ["boolean", "number"].includes(typeof arg) ? arg : evaluateExpression(arg, "arg", options)
+      );
+      const fnSegments = fn.split(".");
+      if (fnSegments[0] in customEndpointFunctions && fnSegments[1] != null) {
+        return customEndpointFunctions[fnSegments[0]][fnSegments[1]](...evaluatedArgs);
+      }
+      return endpointFunctions[fn](...evaluatedArgs);
+    }, "callFunction");
+    var evaluateCondition = /* @__PURE__ */ __name2(({ assign, ...fnArgs }, options) => {
+      var _a7, _b;
+      if (assign && assign in options.referenceRecord) {
+        throw new EndpointError2(`'${assign}' is already defined in Reference Record.`);
+      }
+      const value = callFunction(fnArgs, options);
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} evaluateCondition: ${toDebugString(fnArgs)} = ${toDebugString(value)}`);
+      return {
+        result: value === "" ? true : !!value,
+        ...assign != null && { toAssign: { name: assign, value } }
+      };
+    }, "evaluateCondition");
+    var evaluateConditions = /* @__PURE__ */ __name2((conditions = [], options) => {
+      var _a7, _b;
+      const conditionsReferenceRecord = {};
+      for (const condition of conditions) {
+        const { result, toAssign } = evaluateCondition(condition, {
+          ...options,
+          referenceRecord: {
+            ...options.referenceRecord,
+            ...conditionsReferenceRecord
+          }
+        });
+        if (!result) {
+          return { result };
+        }
+        if (toAssign) {
+          conditionsReferenceRecord[toAssign.name] = toAssign.value;
+          (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);
+        }
+      }
+      return { result: true, referenceRecord: conditionsReferenceRecord };
+    }, "evaluateConditions");
+    var getEndpointHeaders = /* @__PURE__ */ __name2((headers, options) => Object.entries(headers).reduce(
+      (acc, [headerKey, headerVal]) => ({
+        ...acc,
+        [headerKey]: headerVal.map((headerValEntry) => {
+          const processedExpr = evaluateExpression(headerValEntry, "Header value entry", options);
+          if (typeof processedExpr !== "string") {
+            throw new EndpointError2(`Header '${headerKey}' value '${processedExpr}' is not a string`);
+          }
+          return processedExpr;
+        })
+      }),
+      {}
+    ), "getEndpointHeaders");
+    var getEndpointProperty = /* @__PURE__ */ __name2((property, options) => {
+      if (Array.isArray(property)) {
+        return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));
+      }
+      switch (typeof property) {
+        case "string":
+          return evaluateTemplate(property, options);
+        case "object":
+          if (property === null) {
+            throw new EndpointError2(`Unexpected endpoint property: ${property}`);
+          }
+          return getEndpointProperties(property, options);
+        case "boolean":
+          return property;
+        default:
+          throw new EndpointError2(`Unexpected endpoint property type: ${typeof property}`);
+      }
+    }, "getEndpointProperty");
+    var getEndpointProperties = /* @__PURE__ */ __name2((properties, options) => Object.entries(properties).reduce(
+      (acc, [propertyKey, propertyVal]) => ({
+        ...acc,
+        [propertyKey]: getEndpointProperty(propertyVal, options)
+      }),
+      {}
+    ), "getEndpointProperties");
+    var getEndpointUrl = /* @__PURE__ */ __name2((endpointUrl, options) => {
+      const expression = evaluateExpression(endpointUrl, "Endpoint URL", options);
+      if (typeof expression === "string") {
+        try {
+          return new URL(expression);
+        } catch (error) {
+          console.error(`Failed to construct URL with ${expression}`, error);
+          throw error;
+        }
+      }
+      throw new EndpointError2(`Endpoint URL must be a string, got ${typeof expression}`);
+    }, "getEndpointUrl");
+    var evaluateEndpointRule = /* @__PURE__ */ __name2((endpointRule, options) => {
+      var _a7, _b;
+      const { conditions, endpoint } = endpointRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      const endpointRuleOptions = {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      };
+      const { url: url2, properties, headers } = endpoint;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);
+      return {
+        ...headers != void 0 && {
+          headers: getEndpointHeaders(headers, endpointRuleOptions)
+        },
+        ...properties != void 0 && {
+          properties: getEndpointProperties(properties, endpointRuleOptions)
+        },
+        url: getEndpointUrl(url2, endpointRuleOptions)
+      };
+    }, "evaluateEndpointRule");
+    var evaluateErrorRule = /* @__PURE__ */ __name2((errorRule, options) => {
+      const { conditions, error } = errorRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      throw new EndpointError2(
+        evaluateExpression(error, "Error", {
+          ...options,
+          referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+        })
+      );
+    }, "evaluateErrorRule");
+    var evaluateTreeRule = /* @__PURE__ */ __name2((treeRule, options) => {
+      const { conditions, rules } = treeRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      return evaluateRules(rules, {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      });
+    }, "evaluateTreeRule");
+    var evaluateRules = /* @__PURE__ */ __name2((rules, options) => {
+      for (const rule of rules) {
+        if (rule.type === "endpoint") {
+          const endpointOrUndefined = evaluateEndpointRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else if (rule.type === "error") {
+          evaluateErrorRule(rule, options);
+        } else if (rule.type === "tree") {
+          const endpointOrUndefined = evaluateTreeRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else {
+          throw new EndpointError2(`Unknown endpoint rule: ${rule}`);
+        }
+      }
+      throw new EndpointError2(`Rules evaluation failed`);
+    }, "evaluateRules");
+    var resolveEndpoint2 = /* @__PURE__ */ __name2((ruleSetObject, options) => {
+      var _a7, _b, _c, _d;
+      const { endpointParams, logger } = options;
+      const { parameters, rules } = ruleSetObject;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);
+      const paramsWithDefault = Object.entries(parameters).filter(([, v]) => v.default != null).map(([k, v]) => [k, v.default]);
+      if (paramsWithDefault.length > 0) {
+        for (const [paramKey, paramDefaultValue] of paramsWithDefault) {
+          endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;
+        }
+      }
+      const requiredParams = Object.entries(parameters).filter(([, v]) => v.required).map(([k]) => k);
+      for (const requiredParam of requiredParams) {
+        if (endpointParams[requiredParam] == null) {
+          throw new EndpointError2(`Missing required parameter: '${requiredParam}'`);
+        }
+      }
+      const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });
+      (_d = (_c = options.logger) == null ? void 0 : _c.debug) == null ? void 0 : _d.call(_c, `${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);
+      return endpoint;
+    }, "resolveEndpoint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js
+var require_dist_cjs7 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ConditionObject: () => import_util_endpoints.ConditionObject,
+      DeprecatedObject: () => import_util_endpoints.DeprecatedObject,
+      EndpointError: () => import_util_endpoints.EndpointError,
+      EndpointObject: () => import_util_endpoints.EndpointObject,
+      EndpointObjectHeaders: () => import_util_endpoints.EndpointObjectHeaders,
+      EndpointObjectProperties: () => import_util_endpoints.EndpointObjectProperties,
+      EndpointParams: () => import_util_endpoints.EndpointParams,
+      EndpointResolverOptions: () => import_util_endpoints.EndpointResolverOptions,
+      EndpointRuleObject: () => import_util_endpoints.EndpointRuleObject,
+      ErrorRuleObject: () => import_util_endpoints.ErrorRuleObject,
+      EvaluateOptions: () => import_util_endpoints.EvaluateOptions,
+      Expression: () => import_util_endpoints.Expression,
+      FunctionArgv: () => import_util_endpoints.FunctionArgv,
+      FunctionObject: () => import_util_endpoints.FunctionObject,
+      FunctionReturn: () => import_util_endpoints.FunctionReturn,
+      ParameterObject: () => import_util_endpoints.ParameterObject,
+      ReferenceObject: () => import_util_endpoints.ReferenceObject,
+      ReferenceRecord: () => import_util_endpoints.ReferenceRecord,
+      RuleSetObject: () => import_util_endpoints.RuleSetObject,
+      RuleSetRules: () => import_util_endpoints.RuleSetRules,
+      TreeRuleObject: () => import_util_endpoints.TreeRuleObject,
+      awsEndpointFunctions: () => awsEndpointFunctions,
+      getUserAgentPrefix: () => getUserAgentPrefix,
+      isIpAddress: () => import_util_endpoints.isIpAddress,
+      partition: () => partition,
+      resolveEndpoint: () => import_util_endpoints.resolveEndpoint,
+      setPartitionInfo: () => setPartitionInfo,
+      useDefaultPartitionInfo: () => useDefaultPartitionInfo
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_endpoints = require_dist_cjs6();
+    var isVirtualHostableS3Bucket = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (allowSubDomains) {
+        for (const label of value.split(".")) {
+          if (!isVirtualHostableS3Bucket(label)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      if (!(0, import_util_endpoints.isValidHostLabel)(value)) {
+        return false;
+      }
+      if (value.length < 3 || value.length > 63) {
+        return false;
+      }
+      if (value !== value.toLowerCase()) {
+        return false;
+      }
+      if ((0, import_util_endpoints.isIpAddress)(value)) {
+        return false;
+      }
+      return true;
+    }, "isVirtualHostableS3Bucket");
+    var ARN_DELIMITER = ":";
+    var RESOURCE_DELIMITER = "/";
+    var parseArn = /* @__PURE__ */ __name2((value) => {
+      const segments = value.split(ARN_DELIMITER);
+      if (segments.length < 6)
+        return null;
+      const [arn, partition2, service, region, accountId, ...resourcePath] = segments;
+      if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "")
+        return null;
+      const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();
+      return {
+        partition: partition2,
+        service,
+        region,
+        accountId,
+        resourceId
+      };
+    }, "parseArn");
+    var partitions_default = {
+      partitions: [{
+        id: "aws",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-east-1",
+          name: "aws",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$",
+        regions: {
+          "af-south-1": {
+            description: "Africa (Cape Town)"
+          },
+          "ap-east-1": {
+            description: "Asia Pacific (Hong Kong)"
+          },
+          "ap-northeast-1": {
+            description: "Asia Pacific (Tokyo)"
+          },
+          "ap-northeast-2": {
+            description: "Asia Pacific (Seoul)"
+          },
+          "ap-northeast-3": {
+            description: "Asia Pacific (Osaka)"
+          },
+          "ap-south-1": {
+            description: "Asia Pacific (Mumbai)"
+          },
+          "ap-south-2": {
+            description: "Asia Pacific (Hyderabad)"
+          },
+          "ap-southeast-1": {
+            description: "Asia Pacific (Singapore)"
+          },
+          "ap-southeast-2": {
+            description: "Asia Pacific (Sydney)"
+          },
+          "ap-southeast-3": {
+            description: "Asia Pacific (Jakarta)"
+          },
+          "ap-southeast-4": {
+            description: "Asia Pacific (Melbourne)"
+          },
+          "aws-global": {
+            description: "AWS Standard global region"
+          },
+          "ca-central-1": {
+            description: "Canada (Central)"
+          },
+          "ca-west-1": {
+            description: "Canada West (Calgary)"
+          },
+          "eu-central-1": {
+            description: "Europe (Frankfurt)"
+          },
+          "eu-central-2": {
+            description: "Europe (Zurich)"
+          },
+          "eu-north-1": {
+            description: "Europe (Stockholm)"
+          },
+          "eu-south-1": {
+            description: "Europe (Milan)"
+          },
+          "eu-south-2": {
+            description: "Europe (Spain)"
+          },
+          "eu-west-1": {
+            description: "Europe (Ireland)"
+          },
+          "eu-west-2": {
+            description: "Europe (London)"
+          },
+          "eu-west-3": {
+            description: "Europe (Paris)"
+          },
+          "il-central-1": {
+            description: "Israel (Tel Aviv)"
+          },
+          "me-central-1": {
+            description: "Middle East (UAE)"
+          },
+          "me-south-1": {
+            description: "Middle East (Bahrain)"
+          },
+          "sa-east-1": {
+            description: "South America (Sao Paulo)"
+          },
+          "us-east-1": {
+            description: "US East (N. Virginia)"
+          },
+          "us-east-2": {
+            description: "US East (Ohio)"
+          },
+          "us-west-1": {
+            description: "US West (N. California)"
+          },
+          "us-west-2": {
+            description: "US West (Oregon)"
+          }
+        }
+      }, {
+        id: "aws-cn",
+        outputs: {
+          dnsSuffix: "amazonaws.com.cn",
+          dualStackDnsSuffix: "api.amazonwebservices.com.cn",
+          implicitGlobalRegion: "cn-northwest-1",
+          name: "aws-cn",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^cn\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-cn-global": {
+            description: "AWS China global region"
+          },
+          "cn-north-1": {
+            description: "China (Beijing)"
+          },
+          "cn-northwest-1": {
+            description: "China (Ningxia)"
+          }
+        }
+      }, {
+        id: "aws-us-gov",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-gov-west-1",
+          name: "aws-us-gov",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-gov\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-us-gov-global": {
+            description: "AWS GovCloud (US) global region"
+          },
+          "us-gov-east-1": {
+            description: "AWS GovCloud (US-East)"
+          },
+          "us-gov-west-1": {
+            description: "AWS GovCloud (US-West)"
+          }
+        }
+      }, {
+        id: "aws-iso",
+        outputs: {
+          dnsSuffix: "c2s.ic.gov",
+          dualStackDnsSuffix: "c2s.ic.gov",
+          implicitGlobalRegion: "us-iso-east-1",
+          name: "aws-iso",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-iso\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-global": {
+            description: "AWS ISO (US) global region"
+          },
+          "us-iso-east-1": {
+            description: "US ISO East"
+          },
+          "us-iso-west-1": {
+            description: "US ISO WEST"
+          }
+        }
+      }, {
+        id: "aws-iso-b",
+        outputs: {
+          dnsSuffix: "sc2s.sgov.gov",
+          dualStackDnsSuffix: "sc2s.sgov.gov",
+          implicitGlobalRegion: "us-isob-east-1",
+          name: "aws-iso-b",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isob\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-b-global": {
+            description: "AWS ISOB (US) global region"
+          },
+          "us-isob-east-1": {
+            description: "US ISOB East (Ohio)"
+          }
+        }
+      }, {
+        id: "aws-iso-e",
+        outputs: {
+          dnsSuffix: "cloud.adc-e.uk",
+          dualStackDnsSuffix: "cloud.adc-e.uk",
+          implicitGlobalRegion: "eu-isoe-west-1",
+          name: "aws-iso-e",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$",
+        regions: {
+          "eu-isoe-west-1": {
+            description: "EU ISOE West"
+          }
+        }
+      }, {
+        id: "aws-iso-f",
+        outputs: {
+          dnsSuffix: "csp.hci.ic.gov",
+          dualStackDnsSuffix: "csp.hci.ic.gov",
+          implicitGlobalRegion: "us-isof-south-1",
+          name: "aws-iso-f",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isof\\-\\w+\\-\\d+$",
+        regions: {}
+      }],
+      version: "1.1"
+    };
+    var selectedPartitionsInfo = partitions_default;
+    var selectedUserAgentPrefix = "";
+    var partition = /* @__PURE__ */ __name2((value) => {
+      const { partitions } = selectedPartitionsInfo;
+      for (const partition2 of partitions) {
+        const { regions, outputs } = partition2;
+        for (const [region, regionData] of Object.entries(regions)) {
+          if (region === value) {
+            return {
+              ...outputs,
+              ...regionData
+            };
+          }
+        }
+      }
+      for (const partition2 of partitions) {
+        const { regionRegex, outputs } = partition2;
+        if (new RegExp(regionRegex).test(value)) {
+          return {
+            ...outputs
+          };
+        }
+      }
+      const DEFAULT_PARTITION = partitions.find((partition2) => partition2.id === "aws");
+      if (!DEFAULT_PARTITION) {
+        throw new Error(
+          "Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist."
+        );
+      }
+      return {
+        ...DEFAULT_PARTITION.outputs
+      };
+    }, "partition");
+    var setPartitionInfo = /* @__PURE__ */ __name2((partitionsInfo, userAgentPrefix = "") => {
+      selectedPartitionsInfo = partitionsInfo;
+      selectedUserAgentPrefix = userAgentPrefix;
+    }, "setPartitionInfo");
+    var useDefaultPartitionInfo = /* @__PURE__ */ __name2(() => {
+      setPartitionInfo(partitions_default, "");
+    }, "useDefaultPartitionInfo");
+    var getUserAgentPrefix = /* @__PURE__ */ __name2(() => selectedUserAgentPrefix, "getUserAgentPrefix");
+    var awsEndpointFunctions = {
+      isVirtualHostableS3Bucket,
+      parseArn,
+      partition
+    };
+    import_util_endpoints.customEndpointFunctions.aws = awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js
+var require_dist_cjs8 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getUserAgentMiddlewareOptions: () => getUserAgentMiddlewareOptions,
+      getUserAgentPlugin: () => getUserAgentPlugin,
+      resolveUserAgentConfig: () => resolveUserAgentConfig,
+      userAgentMiddleware: () => userAgentMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function resolveUserAgentConfig(input) {
+      return {
+        ...input,
+        customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent
+      };
+    }
+    __name2(resolveUserAgentConfig, "resolveUserAgentConfig");
+    var import_util_endpoints = require_dist_cjs7();
+    var import_protocol_http8 = require_dist_cjs2();
+    var USER_AGENT = "user-agent";
+    var X_AMZ_USER_AGENT = "x-amz-user-agent";
+    var SPACE = " ";
+    var UA_NAME_SEPARATOR = "/";
+    var UA_NAME_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w]/g;
+    var UA_VALUE_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w\#]/g;
+    var UA_ESCAPE_CHAR = "-";
+    var userAgentMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7, _b;
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2))
+        return next(args);
+      const { headers } = request2;
+      const userAgent = ((_a7 = context == null ? void 0 : context.userAgent) == null ? void 0 : _a7.map(escapeUserAgent)) || [];
+      const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);
+      const customUserAgent = ((_b = options == null ? void 0 : options.customUserAgent) == null ? void 0 : _b.map(escapeUserAgent)) || [];
+      const prefix = (0, import_util_endpoints.getUserAgentPrefix)();
+      const sdkUserAgentValue = (prefix ? [prefix] : []).concat([...defaultUserAgent, ...userAgent, ...customUserAgent]).join(SPACE);
+      const normalUAValue = [
+        ...defaultUserAgent.filter((section) => section.startsWith("aws-sdk-")),
+        ...customUserAgent
+      ].join(SPACE);
+      if (options.runtime !== "browser") {
+        if (normalUAValue) {
+          headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT] ? `${headers[USER_AGENT]} ${normalUAValue}` : normalUAValue;
+        }
+        headers[USER_AGENT] = sdkUserAgentValue;
+      } else {
+        headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "userAgentMiddleware");
+    var escapeUserAgent = /* @__PURE__ */ __name2((userAgentPair) => {
+      var _a7;
+      const name = userAgentPair[0].split(UA_NAME_SEPARATOR).map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR)).join(UA_NAME_SEPARATOR);
+      const version3 = (_a7 = userAgentPair[1]) == null ? void 0 : _a7.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);
+      const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);
+      const prefix = name.substring(0, prefixSeparatorIndex);
+      let uaName = name.substring(prefixSeparatorIndex + 1);
+      if (prefix === "api") {
+        uaName = uaName.toLowerCase();
+      }
+      return [prefix, uaName, version3].filter((item) => item && item.length > 0).reduce((acc, item, index) => {
+        switch (index) {
+          case 0:
+            return item;
+          case 1:
+            return `${acc}/${item}`;
+          default:
+            return `${acc}#${item}`;
+        }
+      }, "");
+    }, "escapeUserAgent");
+    var getUserAgentMiddlewareOptions = {
+      name: "getUserAgentMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["SET_USER_AGENT", "USER_AGENT"],
+      override: true
+    };
+    var getUserAgentPlugin = /* @__PURE__ */ __name2((config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);
+      }
+    }), "getUserAgentPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js
+var require_dist_cjs9 = __commonJS({
+  "../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SelectorType: () => SelectorType,
+      booleanSelector: () => booleanSelector,
+      numberSelector: () => numberSelector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var booleanSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      if (obj[key] === "true")
+        return true;
+      if (obj[key] === "false")
+        return false;
+      throw new Error(`Cannot load ${type} "${key}". Expected "true" or "false", got ${obj[key]}.`);
+    }, "booleanSelector");
+    var numberSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      const numberValue = parseInt(obj[key], 10);
+      if (Number.isNaN(numberValue)) {
+        throw new TypeError(`Cannot load ${type} '${key}'. Expected number, got '${obj[key]}'.`);
+      }
+      return numberValue;
+    }, "numberSelector");
+    var SelectorType = /* @__PURE__ */ ((SelectorType2) => {
+      SelectorType2["ENV"] = "env";
+      SelectorType2["CONFIG"] = "shared config entry";
+      return SelectorType2;
+    })(SelectorType || {});
+  }
+});
+
+// ../../../node_modules/@smithy/util-middleware/dist-cjs/index.js
+var require_dist_cjs10 = __commonJS({
+  "../../../node_modules/@smithy/util-middleware/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getSmithyContext: () => getSmithyContext4,
+      normalizeProvider: () => normalizeProvider2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_types8 = require_dist_cjs();
+    var getSmithyContext4 = /* @__PURE__ */ __name2((context) => context[import_types8.SMITHY_CONTEXT_KEY] || (context[import_types8.SMITHY_CONTEXT_KEY] = {}), "getSmithyContext");
+    var normalizeProvider2 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    }, "normalizeProvider");
+  }
+});
+
+// ../../../node_modules/@smithy/config-resolver/dist-cjs/index.js
+var require_dist_cjs11 = __commonJS({
+  "../../../node_modules/@smithy/config-resolver/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_USE_DUALSTACK_ENDPOINT: () => CONFIG_USE_DUALSTACK_ENDPOINT,
+      CONFIG_USE_FIPS_ENDPOINT: () => CONFIG_USE_FIPS_ENDPOINT,
+      DEFAULT_USE_DUALSTACK_ENDPOINT: () => DEFAULT_USE_DUALSTACK_ENDPOINT,
+      DEFAULT_USE_FIPS_ENDPOINT: () => DEFAULT_USE_FIPS_ENDPOINT,
+      ENV_USE_DUALSTACK_ENDPOINT: () => ENV_USE_DUALSTACK_ENDPOINT,
+      ENV_USE_FIPS_ENDPOINT: () => ENV_USE_FIPS_ENDPOINT,
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,
+      NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getRegionInfo: () => getRegionInfo,
+      resolveCustomEndpointsConfig: () => resolveCustomEndpointsConfig,
+      resolveEndpointsConfig: () => resolveEndpointsConfig,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_config_provider = require_dist_cjs9();
+    var ENV_USE_DUALSTACK_ENDPOINT = "AWS_USE_DUALSTACK_ENDPOINT";
+    var CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint";
+    var DEFAULT_USE_DUALSTACK_ENDPOINT = false;
+    var NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var ENV_USE_FIPS_ENDPOINT = "AWS_USE_FIPS_ENDPOINT";
+    var CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint";
+    var DEFAULT_USE_FIPS_ENDPOINT = false;
+    var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var import_util_middleware3 = require_dist_cjs10();
+    var resolveCustomEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const { endpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint),
+        isCustomEndpoint: true,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false)
+      };
+    }, "resolveCustomEndpointsConfig");
+    var getEndpointFromRegion = /* @__PURE__ */ __name2(async (input) => {
+      const { tls = true } = input;
+      const region = await input.region();
+      const dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/);
+      if (!dnsHostRegex.test(region)) {
+        throw new Error("Invalid region in client config");
+      }
+      const useDualstackEndpoint = await input.useDualstackEndpoint();
+      const useFipsEndpoint = await input.useFipsEndpoint();
+      const { hostname } = await input.regionInfoProvider(region, { useDualstackEndpoint, useFipsEndpoint }) ?? {};
+      if (!hostname) {
+        throw new Error("Cannot resolve hostname from client config");
+      }
+      return input.urlParser(`${tls ? "https:" : "http:"}//${hostname}`);
+    }, "getEndpointFromRegion");
+    var resolveEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const useDualstackEndpoint = (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false);
+      const { endpoint, useFipsEndpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: endpoint ? (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint) : () => getEndpointFromRegion({ ...input, useDualstackEndpoint, useFipsEndpoint }),
+        isCustomEndpoint: !!endpoint,
+        useDualstackEndpoint
+      };
+    }, "resolveEndpointsConfig");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+    var getHostnameFromVariants = /* @__PURE__ */ __name2((variants = [], { useFipsEndpoint, useDualstackEndpoint }) => {
+      var _a7;
+      return (_a7 = variants.find(
+        ({ tags }) => useFipsEndpoint === tags.includes("fips") && useDualstackEndpoint === tags.includes("dualstack")
+      )) == null ? void 0 : _a7.hostname;
+    }, "getHostnameFromVariants");
+    var getResolvedHostname = /* @__PURE__ */ __name2((resolvedRegion, { regionHostname, partitionHostname }) => regionHostname ? regionHostname : partitionHostname ? partitionHostname.replace("{region}", resolvedRegion) : void 0, "getResolvedHostname");
+    var getResolvedPartition = /* @__PURE__ */ __name2((region, { partitionHash }) => Object.keys(partitionHash || {}).find((key) => partitionHash[key].regions.includes(region)) ?? "aws", "getResolvedPartition");
+    var getResolvedSigningRegion = /* @__PURE__ */ __name2((hostname, { signingRegion, regionRegex, useFipsEndpoint }) => {
+      if (signingRegion) {
+        return signingRegion;
+      } else if (useFipsEndpoint) {
+        const regionRegexJs = regionRegex.replace("\\\\", "\\").replace(/^\^/g, "\\.").replace(/\$$/g, "\\.");
+        const regionRegexmatchArray = hostname.match(regionRegexJs);
+        if (regionRegexmatchArray) {
+          return regionRegexmatchArray[0].slice(1, -1);
+        }
+      }
+    }, "getResolvedSigningRegion");
+    var getRegionInfo = /* @__PURE__ */ __name2((region, {
+      useFipsEndpoint = false,
+      useDualstackEndpoint = false,
+      signingService,
+      regionHash,
+      partitionHash
+    }) => {
+      var _a7, _b, _c, _d, _e;
+      const partition = getResolvedPartition(region, { partitionHash });
+      const resolvedRegion = region in regionHash ? region : ((_a7 = partitionHash[partition]) == null ? void 0 : _a7.endpoint) ?? region;
+      const hostnameOptions = { useFipsEndpoint, useDualstackEndpoint };
+      const regionHostname = getHostnameFromVariants((_b = regionHash[resolvedRegion]) == null ? void 0 : _b.variants, hostnameOptions);
+      const partitionHostname = getHostnameFromVariants((_c = partitionHash[partition]) == null ? void 0 : _c.variants, hostnameOptions);
+      const hostname = getResolvedHostname(resolvedRegion, { regionHostname, partitionHostname });
+      if (hostname === void 0) {
+        throw new Error(`Endpoint resolution failed for: ${{ resolvedRegion, useFipsEndpoint, useDualstackEndpoint }}`);
+      }
+      const signingRegion = getResolvedSigningRegion(hostname, {
+        signingRegion: (_d = regionHash[resolvedRegion]) == null ? void 0 : _d.signingRegion,
+        regionRegex: partitionHash[partition].regionRegex,
+        useFipsEndpoint
+      });
+      return {
+        partition,
+        signingService,
+        hostname,
+        ...signingRegion && { signingRegion },
+        ...((_e = regionHash[resolvedRegion]) == null ? void 0 : _e.signingService) && {
+          signingService: regionHash[resolvedRegion].signingService
+        }
+      };
+    }, "getRegionInfo");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/getSmithyContext.js
+var import_types4, getSmithyContext;
+var init_getSmithyContext = __esm({
+  "../../../node_modules/@smithy/core/dist-es/getSmithyContext.js"() {
+    import_types4 = __toESM(require_dist_cjs());
+    getSmithyContext = (context) => context[import_types4.SMITHY_CONTEXT_KEY] || (context[import_types4.SMITHY_CONTEXT_KEY] = {});
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js
+function convertHttpAuthSchemesToMap(httpAuthSchemes) {
+  const map = /* @__PURE__ */ new Map();
+  for (const scheme of httpAuthSchemes) {
+    map.set(scheme.schemeId, scheme);
+  }
+  return map;
+}
+var import_types5, import_util_middleware, httpAuthSchemeMiddleware;
+var init_httpAuthSchemeMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js"() {
+    import_types5 = __toESM(require_dist_cjs());
+    import_util_middleware = __toESM(require_dist_cjs10());
+    httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {
+      const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));
+      const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);
+      const smithyContext = (0, import_util_middleware.getSmithyContext)(context);
+      const failureReasons = [];
+      for (const option of options) {
+        const scheme = authSchemes.get(option.schemeId);
+        if (!scheme) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` was not enabled for this service.`);
+          continue;
+        }
+        const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));
+        if (!identityProvider) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` did not have an IdentityProvider configured.`);
+          continue;
+        }
+        const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};
+        option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);
+        option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);
+        smithyContext.selectedHttpAuthScheme = {
+          httpAuthOption: option,
+          identity: await identityProvider(option.identityProperties),
+          signer: scheme.signer
+        };
+        break;
+      }
+      if (!smithyContext.selectedHttpAuthScheme) {
+        throw new Error(failureReasons.join("\n"));
+      }
+      return next(args);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js
+var httpAuthSchemeEndpointRuleSetMiddlewareOptions, getHttpAuthSchemeEndpointRuleSetPlugin;
+var init_getHttpAuthSchemeEndpointRuleSetPlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js"() {
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeEndpointRuleSetMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: "endpointV2Middleware"
+    };
+    getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js
+var require_dist_cjs12 = __commonJS({
+  "../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      deserializerMiddleware: () => deserializerMiddleware,
+      deserializerMiddlewareOption: () => deserializerMiddlewareOption,
+      getSerdePlugin: () => getSerdePlugin,
+      serializerMiddleware: () => serializerMiddleware,
+      serializerMiddlewareOption: () => serializerMiddlewareOption2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var deserializerMiddleware = /* @__PURE__ */ __name2((options, deserializer) => (next) => async (args) => {
+      const { response } = await next(args);
+      try {
+        const parsed = await deserializer(response, options);
+        return {
+          response,
+          output: parsed
+        };
+      } catch (error) {
+        Object.defineProperty(error, "$response", {
+          value: response
+        });
+        if (!("$metadata" in error)) {
+          const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;
+          error.message += "\n  " + hint;
+          if (typeof error.$responseBodyText !== "undefined") {
+            if (error.$response) {
+              error.$response.body = error.$responseBodyText;
+            }
+          }
+        }
+        throw error;
+      }
+    }, "deserializerMiddleware");
+    var serializerMiddleware = /* @__PURE__ */ __name2((options, serializer) => (next, context) => async (args) => {
+      var _a7;
+      const endpoint = ((_a7 = context.endpointV2) == null ? void 0 : _a7.url) && options.urlParser ? async () => options.urlParser(context.endpointV2.url) : options.endpoint;
+      if (!endpoint) {
+        throw new Error("No valid endpoint provider available.");
+      }
+      const request2 = await serializer(args.input, { ...options, endpoint });
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "serializerMiddleware");
+    var deserializerMiddlewareOption = {
+      name: "deserializerMiddleware",
+      step: "deserialize",
+      tags: ["DESERIALIZER"],
+      override: true
+    };
+    var serializerMiddlewareOption2 = {
+      name: "serializerMiddleware",
+      step: "serialize",
+      tags: ["SERIALIZER"],
+      override: true
+    };
+    function getSerdePlugin(config, serializer, deserializer) {
+      return {
+        applyToStack: (commandStack) => {
+          commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);
+          commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption2);
+        }
+      };
+    }
+    __name2(getSerdePlugin, "getSerdePlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js
+var import_middleware_serde, httpAuthSchemeMiddlewareOptions, getHttpAuthSchemePlugin;
+var init_getHttpAuthSchemePlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js"() {
+    import_middleware_serde = __toESM(require_dist_cjs12());
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde.serializerMiddlewareOption.name
+    };
+    getHttpAuthSchemePlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js
+var init_middleware_http_auth_scheme = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js"() {
+    init_httpAuthSchemeMiddleware();
+    init_getHttpAuthSchemeEndpointRuleSetPlugin();
+    init_getHttpAuthSchemePlugin();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js
+var import_protocol_http, import_types6, import_util_middleware2, defaultErrorHandler, defaultSuccessHandler, httpSigningMiddleware;
+var init_httpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js"() {
+    import_protocol_http = __toESM(require_dist_cjs2());
+    import_types6 = __toESM(require_dist_cjs());
+    import_util_middleware2 = __toESM(require_dist_cjs10());
+    defaultErrorHandler = (signingProperties) => (error) => {
+      throw error;
+    };
+    defaultSuccessHandler = (httpResponse, signingProperties) => {
+    };
+    httpSigningMiddleware = (config) => (next, context) => async (args) => {
+      if (!import_protocol_http.HttpRequest.isInstance(args.request)) {
+        return next(args);
+      }
+      const smithyContext = (0, import_util_middleware2.getSmithyContext)(context);
+      const scheme = smithyContext.selectedHttpAuthScheme;
+      if (!scheme) {
+        throw new Error(`No HttpAuthScheme was selected: unable to sign request`);
+      }
+      const { httpAuthOption: { signingProperties = {} }, identity, signer } = scheme;
+      const output = await next({
+        ...args,
+        request: await signer.sign(args.request, identity, signingProperties)
+      }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));
+      (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);
+      return output;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js
+var httpSigningMiddlewareOptions, getHttpSigningPlugin;
+var init_getHttpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js"() {
+    init_httpSigningMiddleware();
+    httpSigningMiddlewareOptions = {
+      step: "finalizeRequest",
+      tags: ["HTTP_SIGNING"],
+      name: "httpSigningMiddleware",
+      aliases: ["apiKeyMiddleware", "tokenMiddleware", "awsAuthMiddleware"],
+      override: true,
+      relation: "after",
+      toMiddleware: "retryMiddleware"
+    };
+    getHttpSigningPlugin = (config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js
+var init_middleware_http_signing = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js"() {
+    init_httpSigningMiddleware();
+    init_getHttpSigningMiddleware();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/normalizeProvider.js
+var normalizeProvider;
+var init_normalizeProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/normalizeProvider.js"() {
+    normalizeProvider = (input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js
+function createPaginator(ClientCtor, CommandCtor, inputTokenName, outputTokenName, pageSizeTokenName) {
+  return async function* paginateOperation(config, input, ...additionalArguments) {
+    let token = config.startingToken || void 0;
+    let hasNext = true;
+    let page;
+    while (hasNext) {
+      input[inputTokenName] = token;
+      if (pageSizeTokenName) {
+        input[pageSizeTokenName] = input[pageSizeTokenName] ?? config.pageSize;
+      }
+      if (config.client instanceof ClientCtor) {
+        page = await makePagedClientRequest(CommandCtor, config.client, input, ...additionalArguments);
+      } else {
+        throw new Error(`Invalid client, expected instance of ${ClientCtor.name}`);
+      }
+      yield page;
+      const prevToken = token;
+      token = get(page, outputTokenName);
+      hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
+    }
+    return void 0;
+  };
+}
+var makePagedClientRequest, get;
+var init_createPaginator = __esm({
+  "../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js"() {
+    makePagedClientRequest = async (CommandCtor, client, input, ...args) => {
+      return await client.send(new CommandCtor(input), ...args);
+    };
+    get = (fromObject, path23) => {
+      let cursor = fromObject;
+      const pathComponents = path23.split(".");
+      for (const step of pathComponents) {
+        if (!cursor || typeof cursor !== "object") {
+          return void 0;
+        }
+        cursor = cursor[step];
+      }
+      return cursor;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js
+var require_dist_cjs13 = __commonJS({
+  "../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isArrayBuffer: () => isArrayBuffer
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isArrayBuffer = /* @__PURE__ */ __name2((arg) => typeof ArrayBuffer === "function" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === "[object ArrayBuffer]", "isArrayBuffer");
+  }
+});
+
+// ../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js
+var require_dist_cjs14 = __commonJS({
+  "../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromArrayBuffer: () => fromArrayBuffer,
+      fromString: () => fromString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_buffer = require("buffer");
+    var fromArrayBuffer = /* @__PURE__ */ __name2((input, offset = 0, length = input.byteLength - offset) => {
+      if (!(0, import_is_array_buffer.isArrayBuffer)(input)) {
+        throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);
+      }
+      return import_buffer.Buffer.from(input, offset, length);
+    }, "fromArrayBuffer");
+    var fromString = /* @__PURE__ */ __name2((input, encoding) => {
+      if (typeof input !== "string") {
+        throw new TypeError(`The "input" argument must be of type string. Received type ${typeof input} (${input})`);
+      }
+      return encoding ? import_buffer.Buffer.from(input, encoding) : import_buffer.Buffer.from(input);
+    }, "fromString");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js
+var require_fromBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;
+    var fromBase642 = (input) => {
+      if (input.length * 3 % 4 !== 0) {
+        throw new TypeError(`Incorrect padding on base64 string.`);
+      }
+      if (!BASE64_REGEX.exec(input)) {
+        throw new TypeError(`Invalid base64 string.`);
+      }
+      const buffer = (0, util_buffer_from_1.fromString)(input, "base64");
+      return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
+    };
+    exports2.fromBase64 = fromBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-utf8/dist-cjs/index.js
+var require_dist_cjs15 = __commonJS({
+  "../../../node_modules/@smithy/util-utf8/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromUtf8: () => fromUtf8,
+      toUint8Array: () => toUint8Array,
+      toUtf8: () => toUtf8
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var fromUtf8 = /* @__PURE__ */ __name2((input) => {
+      const buf = (0, import_util_buffer_from.fromString)(input, "utf8");
+      return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+    }, "fromUtf8");
+    var toUint8Array = /* @__PURE__ */ __name2((data) => {
+      if (typeof data === "string") {
+        return fromUtf8(data);
+      }
+      if (ArrayBuffer.isView(data)) {
+        return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+      }
+      return new Uint8Array(data);
+    }, "toUint8Array");
+    var toUtf8 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "string") {
+        return input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("utf8");
+    }, "toUtf8");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js
+var require_toBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.toBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var util_utf8_1 = require_dist_cjs15();
+    var toBase642 = (_input) => {
+      let input;
+      if (typeof _input === "string") {
+        input = (0, util_utf8_1.fromUtf8)(_input);
+      } else {
+        input = _input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("base64");
+    };
+    exports2.toBase64 = toBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/index.js
+var require_dist_cjs16 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromBase64(), module2.exports);
+    __reExport2(src_exports, require_toBase64(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js
+var require_getAwsChunkedEncodingStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getAwsChunkedEncodingStream = void 0;
+    var stream_1 = require("stream");
+    var getAwsChunkedEncodingStream2 = (readableStream, options) => {
+      const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;
+      const checksumRequired = base64Encoder !== void 0 && checksumAlgorithmFn !== void 0 && checksumLocationName !== void 0 && streamHasher !== void 0;
+      const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : void 0;
+      const awsChunkedEncodingStream = new stream_1.Readable({ read: () => {
+      } });
+      readableStream.on("data", (data) => {
+        const length = bodyLengthChecker(data) || 0;
+        awsChunkedEncodingStream.push(`${length.toString(16)}\r
+`);
+        awsChunkedEncodingStream.push(data);
+        awsChunkedEncodingStream.push("\r\n");
+      });
+      readableStream.on("end", async () => {
+        awsChunkedEncodingStream.push(`0\r
+`);
+        if (checksumRequired) {
+          const checksum = base64Encoder(await digest);
+          awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\r
+`);
+          awsChunkedEncodingStream.push(`\r
+`);
+        }
+        awsChunkedEncodingStream.push(null);
+      });
+      return awsChunkedEncodingStream;
+    };
+    exports2.getAwsChunkedEncodingStream = getAwsChunkedEncodingStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js
+var require_dist_cjs17 = __commonJS({
+  "../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      escapeUri: () => escapeUri,
+      escapeUriPath: () => escapeUriPath
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var escapeUri = /* @__PURE__ */ __name2((uri) => (
+      // AWS percent-encodes some extra non-standard characters in a URI
+      encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode)
+    ), "escapeUri");
+    var hexEncode = /* @__PURE__ */ __name2((c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, "hexEncode");
+    var escapeUriPath = /* @__PURE__ */ __name2((uri) => uri.split("/").map(escapeUri).join("/"), "escapeUriPath");
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js
+var require_dist_cjs18 = __commonJS({
+  "../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      buildQueryString: () => buildQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_uri_escape = require_dist_cjs17();
+    function buildQueryString(query) {
+      const parts = [];
+      for (let key of Object.keys(query).sort()) {
+        const value = query[key];
+        key = (0, import_util_uri_escape.escapeUri)(key);
+        if (Array.isArray(value)) {
+          for (let i = 0, iLen = value.length; i < iLen; i++) {
+            parts.push(`${key}=${(0, import_util_uri_escape.escapeUri)(value[i])}`);
+          }
+        } else {
+          let qsEntry = key;
+          if (value || typeof value === "string") {
+            qsEntry += `=${(0, import_util_uri_escape.escapeUri)(value)}`;
+          }
+          parts.push(qsEntry);
+        }
+      }
+      return parts.join("&");
+    }
+    __name2(buildQueryString, "buildQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js
+var require_dist_cjs19 = __commonJS({
+  "../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_REQUEST_TIMEOUT: () => DEFAULT_REQUEST_TIMEOUT,
+      NodeHttp2Handler: () => NodeHttp2Handler,
+      NodeHttpHandler: () => NodeHttpHandler,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    var import_http2 = require("http");
+    var import_https = require("https");
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "EPIPE", "ETIMEDOUT"];
+    var getTransformedHeaders = /* @__PURE__ */ __name2((headers) => {
+      const transformedHeaders = {};
+      for (const name of Object.keys(headers)) {
+        const headerValues = headers[name];
+        transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(",") : headerValues;
+      }
+      return transformedHeaders;
+    }, "getTransformedHeaders");
+    var timing = {
+      setTimeout: (cb, ms) => setTimeout(cb, ms),
+      clearTimeout: (timeoutId) => clearTimeout(timeoutId)
+    };
+    var DEFER_EVENT_LISTENER_TIME = 1e3;
+    var setConnectionTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      if (!timeoutInMs) {
+        return -1;
+      }
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeoutId = timing.setTimeout(() => {
+          request2.destroy();
+          reject(
+            Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {
+              name: "TimeoutError"
+            })
+          );
+        }, timeoutInMs - offset);
+        const doWithSocket = /* @__PURE__ */ __name2((socket) => {
+          if (socket == null ? void 0 : socket.connecting) {
+            socket.on("connect", () => {
+              timing.clearTimeout(timeoutId);
+            });
+          } else {
+            timing.clearTimeout(timeoutId);
+          }
+        }, "doWithSocket");
+        if (request2.socket) {
+          doWithSocket(request2.socket);
+        } else {
+          request2.on("socket", doWithSocket);
+        }
+      }, "registerTimeout");
+      if (timeoutInMs < 2e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(registerTimeout.bind(null, DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);
+    }, "setConnectionTimeout");
+    var DEFER_EVENT_LISTENER_TIME2 = 3e3;
+    var setSocketKeepAlive = /* @__PURE__ */ __name2((request2, { keepAlive, keepAliveMsecs }, deferTimeMs = DEFER_EVENT_LISTENER_TIME2) => {
+      if (keepAlive !== true) {
+        return -1;
+      }
+      const registerListener = /* @__PURE__ */ __name2(() => {
+        if (request2.socket) {
+          request2.socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+        } else {
+          request2.on("socket", (socket) => {
+            socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+          });
+        }
+      }, "registerListener");
+      if (deferTimeMs === 0) {
+        registerListener();
+        return 0;
+      }
+      return timing.setTimeout(registerListener, deferTimeMs);
+    }, "setSocketKeepAlive");
+    var DEFER_EVENT_LISTENER_TIME3 = 3e3;
+    var setSocketTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeout = timeoutInMs - offset;
+        const onTimeout2 = /* @__PURE__ */ __name2(() => {
+          request2.destroy();
+          reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: "TimeoutError" }));
+        }, "onTimeout");
+        if (request2.socket) {
+          request2.socket.setTimeout(timeout, onTimeout2);
+        } else {
+          request2.setTimeout(timeout, onTimeout2);
+        }
+      }, "registerTimeout");
+      if (0 < timeoutInMs && timeoutInMs < 6e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(
+        registerTimeout.bind(null, timeoutInMs === 0 ? 0 : DEFER_EVENT_LISTENER_TIME3),
+        DEFER_EVENT_LISTENER_TIME3
+      );
+    }, "setSocketTimeout");
+    var import_stream = require("stream");
+    var MIN_WAIT_TIME = 1e3;
+    async function writeRequestBody(httpRequest, request2, maxContinueTimeoutMs = MIN_WAIT_TIME) {
+      const headers = request2.headers ?? {};
+      const expect = headers["Expect"] || headers["expect"];
+      let timeoutId = -1;
+      let sendBody = true;
+      if (expect === "100-continue") {
+        sendBody = await Promise.race([
+          new Promise((resolve6) => {
+            timeoutId = Number(timing.setTimeout(resolve6, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));
+          }),
+          new Promise((resolve6) => {
+            httpRequest.on("continue", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(true);
+            });
+            httpRequest.on("response", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+            httpRequest.on("error", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+          })
+        ]);
+      }
+      if (sendBody) {
+        writeBody(httpRequest, request2.body);
+      }
+    }
+    __name2(writeRequestBody, "writeRequestBody");
+    function writeBody(httpRequest, body) {
+      if (body instanceof import_stream.Readable) {
+        body.pipe(httpRequest);
+        return;
+      }
+      if (body) {
+        if (Buffer.isBuffer(body) || typeof body === "string") {
+          httpRequest.end(body);
+          return;
+        }
+        const uint8 = body;
+        if (typeof uint8 === "object" && uint8.buffer && typeof uint8.byteOffset === "number" && typeof uint8.byteLength === "number") {
+          httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));
+          return;
+        }
+        httpRequest.end(Buffer.from(body));
+        return;
+      }
+      httpRequest.end();
+    }
+    __name2(writeBody, "writeBody");
+    var DEFAULT_REQUEST_TIMEOUT = 0;
+    var _NodeHttpHandler = class _NodeHttpHandler2 {
+      constructor(options) {
+        this.socketWarningTimestamp = 0;
+        this.metadata = { handlerProtocol: "http/1.1" };
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((_options) => {
+              resolve6(this.resolveDefaultConfig(_options));
+            }).catch(reject);
+          } else {
+            resolve6(this.resolveDefaultConfig(options));
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttpHandler2(instanceOrOptions);
+      }
+      /**
+       * @internal
+       *
+       * @param agent - http(s) agent in use by the NodeHttpHandler instance.
+       * @param socketWarningTimestamp - last socket usage check timestamp.
+       * @param logger - channel for the warning.
+       * @returns timestamp of last emitted warning.
+       */
+      static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {
+        var _a7, _b, _c;
+        const { sockets, requests, maxSockets } = agent;
+        if (typeof maxSockets !== "number" || maxSockets === Infinity) {
+          return socketWarningTimestamp;
+        }
+        const interval = 15e3;
+        if (Date.now() - interval < socketWarningTimestamp) {
+          return socketWarningTimestamp;
+        }
+        if (sockets && requests) {
+          for (const origin in sockets) {
+            const socketsInUse = ((_a7 = sockets[origin]) == null ? void 0 : _a7.length) ?? 0;
+            const requestsEnqueued = ((_b = requests[origin]) == null ? void 0 : _b.length) ?? 0;
+            if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {
+              (_c = logger == null ? void 0 : logger.warn) == null ? void 0 : _c.call(
+                logger,
+                `@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.
+See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html
+or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`
+              );
+              return Date.now();
+            }
+          }
+        }
+        return socketWarningTimestamp;
+      }
+      resolveDefaultConfig(options) {
+        const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {};
+        const keepAlive = true;
+        const maxSockets = 50;
+        return {
+          connectionTimeout,
+          requestTimeout: requestTimeout ?? socketTimeout,
+          httpAgent: (() => {
+            if (httpAgent instanceof import_http2.Agent || typeof (httpAgent == null ? void 0 : httpAgent.destroy) === "function") {
+              return httpAgent;
+            }
+            return new import_http2.Agent({ keepAlive, maxSockets, ...httpAgent });
+          })(),
+          httpsAgent: (() => {
+            if (httpsAgent instanceof import_https.Agent || typeof (httpsAgent == null ? void 0 : httpsAgent.destroy) === "function") {
+              return httpsAgent;
+            }
+            return new import_https.Agent({ keepAlive, maxSockets, ...httpsAgent });
+          })(),
+          logger: console
+        };
+      }
+      destroy() {
+        var _a7, _b, _c, _d;
+        (_b = (_a7 = this.config) == null ? void 0 : _a7.httpAgent) == null ? void 0 : _b.destroy();
+        (_d = (_c = this.config) == null ? void 0 : _c.httpsAgent) == null ? void 0 : _d.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        return new Promise((_resolve2, _reject) => {
+          let writeRequestBodyPromise = void 0;
+          const timeouts = [];
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _reject(arg);
+          }, "reject");
+          if (!this.config) {
+            throw new Error("Node HTTP request handler config is not resolved");
+          }
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const isSSL = request2.protocol === "https:";
+          const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;
+          timeouts.push(
+            timing.setTimeout(
+              () => {
+                this.socketWarningTimestamp = _NodeHttpHandler2.checkSocketUsage(
+                  agent,
+                  this.socketWarningTimestamp,
+                  this.config.logger
+                );
+              },
+              this.config.socketAcquisitionWarningTimeout ?? (this.config.requestTimeout ?? 2e3) + (this.config.connectionTimeout ?? 1e3)
+            )
+          );
+          const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+          let auth = void 0;
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}`;
+          }
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          let hostname = request2.hostname ?? "";
+          if (hostname[0] === "[" && hostname.endsWith("]")) {
+            hostname = request2.hostname.slice(1, -1);
+          } else {
+            hostname = request2.hostname;
+          }
+          const nodeHttpsOptions = {
+            headers: request2.headers,
+            host: hostname,
+            method: request2.method,
+            path: path23,
+            port: request2.port,
+            agent,
+            auth
+          };
+          const requestFunc = isSSL ? import_https.request : import_http2.request;
+          const req = requestFunc(nodeHttpsOptions, (res) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: res.statusCode || -1,
+              reason: res.statusMessage,
+              headers: getTransformedHeaders(res.headers),
+              body: res
+            });
+            resolve6({ response: httpResponse });
+          });
+          req.on("error", (err) => {
+            if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) {
+              reject(Object.assign(err, { name: "TimeoutError" }));
+            } else {
+              reject(err);
+            }
+          });
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.destroy();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              reject(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          timeouts.push(setConnectionTimeout(req, reject, this.config.connectionTimeout));
+          timeouts.push(setSocketTimeout(req, reject, this.config.requestTimeout));
+          const httpAgent = nodeHttpsOptions.agent;
+          if (typeof httpAgent === "object" && "keepAlive" in httpAgent) {
+            timeouts.push(
+              setSocketKeepAlive(req, {
+                // @ts-expect-error keepAlive is not public on httpAgent.
+                keepAlive: httpAgent.keepAlive,
+                // @ts-expect-error keepAliveMsecs is not public on httpAgent.
+                keepAliveMsecs: httpAgent.keepAliveMsecs
+              })
+            );
+          }
+          writeRequestBodyPromise = writeRequestBody(req, request2, this.config.requestTimeout).catch((e) => {
+            timeouts.forEach(timing.clearTimeout);
+            return _reject(e);
+          });
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_NodeHttpHandler, "NodeHttpHandler");
+    var NodeHttpHandler = _NodeHttpHandler;
+    var import_http22 = require("http2");
+    var import_http23 = __toESM2(require("http2"));
+    var _NodeHttp2ConnectionPool = class _NodeHttp2ConnectionPool {
+      constructor(sessions) {
+        this.sessions = [];
+        this.sessions = sessions ?? [];
+      }
+      poll() {
+        if (this.sessions.length > 0) {
+          return this.sessions.shift();
+        }
+      }
+      offerLast(session) {
+        this.sessions.push(session);
+      }
+      contains(session) {
+        return this.sessions.includes(session);
+      }
+      remove(session) {
+        this.sessions = this.sessions.filter((s) => s !== session);
+      }
+      [Symbol.iterator]() {
+        return this.sessions[Symbol.iterator]();
+      }
+      destroy(connection) {
+        for (const session of this.sessions) {
+          if (session === connection) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+          }
+        }
+      }
+    };
+    __name2(_NodeHttp2ConnectionPool, "NodeHttp2ConnectionPool");
+    var NodeHttp2ConnectionPool = _NodeHttp2ConnectionPool;
+    var _NodeHttp2ConnectionManager = class _NodeHttp2ConnectionManager {
+      constructor(config) {
+        this.sessionCache = /* @__PURE__ */ new Map();
+        this.config = config;
+        if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {
+          throw new RangeError("maxConcurrency must be greater than zero.");
+        }
+      }
+      lease(requestContext, connectionConfiguration) {
+        const url2 = this.getUrlString(requestContext);
+        const existingPool = this.sessionCache.get(url2);
+        if (existingPool) {
+          const existingSession = existingPool.poll();
+          if (existingSession && !this.config.disableConcurrency) {
+            return existingSession;
+          }
+        }
+        const session = import_http23.default.connect(url2);
+        if (this.config.maxConcurrency) {
+          session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => {
+            if (err) {
+              throw new Error(
+                "Fail to set maxConcurrentStreams to " + this.config.maxConcurrency + "when creating new session for " + requestContext.destination.toString()
+              );
+            }
+          });
+        }
+        session.unref();
+        const destroySessionCb = /* @__PURE__ */ __name2(() => {
+          session.destroy();
+          this.deleteSession(url2, session);
+        }, "destroySessionCb");
+        session.on("goaway", destroySessionCb);
+        session.on("error", destroySessionCb);
+        session.on("frameError", destroySessionCb);
+        session.on("close", () => this.deleteSession(url2, session));
+        if (connectionConfiguration.requestTimeout) {
+          session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb);
+        }
+        const connectionPool = this.sessionCache.get(url2) || new NodeHttp2ConnectionPool();
+        connectionPool.offerLast(session);
+        this.sessionCache.set(url2, connectionPool);
+        return session;
+      }
+      /**
+       * Delete a session from the connection pool.
+       * @param authority The authority of the session to delete.
+       * @param session The session to delete.
+       */
+      deleteSession(authority, session) {
+        const existingConnectionPool = this.sessionCache.get(authority);
+        if (!existingConnectionPool) {
+          return;
+        }
+        if (!existingConnectionPool.contains(session)) {
+          return;
+        }
+        existingConnectionPool.remove(session);
+        this.sessionCache.set(authority, existingConnectionPool);
+      }
+      release(requestContext, session) {
+        var _a7;
+        const cacheKey = this.getUrlString(requestContext);
+        (_a7 = this.sessionCache.get(cacheKey)) == null ? void 0 : _a7.offerLast(session);
+      }
+      destroy() {
+        for (const [key, connectionPool] of this.sessionCache) {
+          for (const session of connectionPool) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+            connectionPool.remove(session);
+          }
+          this.sessionCache.delete(key);
+        }
+      }
+      setMaxConcurrentStreams(maxConcurrentStreams) {
+        if (maxConcurrentStreams && maxConcurrentStreams <= 0) {
+          throw new RangeError("maxConcurrentStreams must be greater than zero.");
+        }
+        this.config.maxConcurrency = maxConcurrentStreams;
+      }
+      setDisableConcurrentStreams(disableConcurrentStreams) {
+        this.config.disableConcurrency = disableConcurrentStreams;
+      }
+      getUrlString(request2) {
+        return request2.destination.toString();
+      }
+    };
+    __name2(_NodeHttp2ConnectionManager, "NodeHttp2ConnectionManager");
+    var NodeHttp2ConnectionManager = _NodeHttp2ConnectionManager;
+    var _NodeHttp2Handler = class _NodeHttp2Handler2 {
+      constructor(options) {
+        this.metadata = { handlerProtocol: "h2" };
+        this.connectionManager = new NodeHttp2ConnectionManager({});
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((opts) => {
+              resolve6(opts || {});
+            }).catch(reject);
+          } else {
+            resolve6(options || {});
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttp2Handler2(instanceOrOptions);
+      }
+      destroy() {
+        this.connectionManager.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+          this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false);
+          if (this.config.maxConcurrentStreams) {
+            this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams);
+          }
+        }
+        const { requestTimeout, disableConcurrentStreams } = this.config;
+        return new Promise((_resolve2, _reject) => {
+          var _a7;
+          let fulfilled = false;
+          let writeRequestBodyPromise = void 0;
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _reject(arg);
+          }, "reject");
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            fulfilled = true;
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const { hostname, method, port, protocol, query } = request2;
+          let auth = "";
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}@`;
+          }
+          const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : ""}`;
+          const requestContext = { destination: new URL(authority) };
+          const session = this.connectionManager.lease(requestContext, {
+            requestTimeout: (_a7 = this.config) == null ? void 0 : _a7.sessionTimeout,
+            disableConcurrentStreams: disableConcurrentStreams || false
+          });
+          const rejectWithDestroy = /* @__PURE__ */ __name2((err) => {
+            if (disableConcurrentStreams) {
+              this.destroySession(session);
+            }
+            fulfilled = true;
+            reject(err);
+          }, "rejectWithDestroy");
+          const queryString = (0, import_querystring_builder.buildQueryString)(query || {});
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          const req = session.request({
+            ...request2.headers,
+            [import_http22.constants.HTTP2_HEADER_PATH]: path23,
+            [import_http22.constants.HTTP2_HEADER_METHOD]: method
+          });
+          session.ref();
+          req.on("response", (headers) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: headers[":status"] || -1,
+              headers: getTransformedHeaders(headers),
+              body: req
+            });
+            fulfilled = true;
+            resolve6({ response: httpResponse });
+            if (disableConcurrentStreams) {
+              session.close();
+              this.connectionManager.deleteSession(authority, session);
+            }
+          });
+          if (requestTimeout) {
+            req.setTimeout(requestTimeout, () => {
+              req.close();
+              const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`);
+              timeoutError.name = "TimeoutError";
+              rejectWithDestroy(timeoutError);
+            });
+          }
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.close();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              rejectWithDestroy(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          req.on("frameError", (type, code, id) => {
+            rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`));
+          });
+          req.on("error", rejectWithDestroy);
+          req.on("aborted", () => {
+            rejectWithDestroy(
+              new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`)
+            );
+          });
+          req.on("close", () => {
+            session.unref();
+            if (disableConcurrentStreams) {
+              session.destroy();
+            }
+            if (!fulfilled) {
+              rejectWithDestroy(new Error("Unexpected error: http2 request did not get a response"));
+            }
+          });
+          writeRequestBodyPromise = writeRequestBody(req, request2, requestTimeout);
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+      /**
+       * Destroys a session.
+       * @param session The session to destroy.
+       */
+      destroySession(session) {
+        if (!session.destroyed) {
+          session.destroy();
+        }
+      }
+    };
+    __name2(_NodeHttp2Handler, "NodeHttp2Handler");
+    var NodeHttp2Handler = _NodeHttp2Handler;
+    var _Collector = class _Collector extends import_stream.Writable {
+      constructor() {
+        super(...arguments);
+        this.bufferedBytes = [];
+      }
+      _write(chunk, encoding, callback) {
+        this.bufferedBytes.push(chunk);
+        callback();
+      }
+    };
+    __name2(_Collector, "Collector");
+    var Collector = _Collector;
+    var streamCollector = /* @__PURE__ */ __name2((stream) => {
+      if (isReadableStreamInstance(stream)) {
+        return collectReadableStream(stream);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));
+          resolve6(bytes);
+        });
+      });
+    }, "streamCollector");
+    var isReadableStreamInstance = /* @__PURE__ */ __name2((stream) => typeof ReadableStream === "function" && stream instanceof ReadableStream, "isReadableStreamInstance");
+    async function collectReadableStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectReadableStream, "collectReadableStream");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js
+var require_dist_cjs20 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      FetchHttpHandler: () => FetchHttpHandler,
+      keepAliveSupport: () => keepAliveSupport,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    function createRequest(url2, requestOptions) {
+      return new Request(url2, requestOptions);
+    }
+    __name2(createRequest, "createRequest");
+    function requestTimeout(timeoutInMs = 0) {
+      return new Promise((resolve6, reject) => {
+        if (timeoutInMs) {
+          setTimeout(() => {
+            const timeoutError = new Error(`Request did not complete within ${timeoutInMs} ms`);
+            timeoutError.name = "TimeoutError";
+            reject(timeoutError);
+          }, timeoutInMs);
+        }
+      });
+    }
+    __name2(requestTimeout, "requestTimeout");
+    var keepAliveSupport = {
+      supported: void 0
+    };
+    var _FetchHttpHandler = class _FetchHttpHandler2 {
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _FetchHttpHandler2(instanceOrOptions);
+      }
+      constructor(options) {
+        if (typeof options === "function") {
+          this.configProvider = options().then((opts) => opts || {});
+        } else {
+          this.config = options ?? {};
+          this.configProvider = Promise.resolve(this.config);
+        }
+        if (keepAliveSupport.supported === void 0) {
+          keepAliveSupport.supported = Boolean(
+            typeof Request !== "undefined" && "keepalive" in createRequest("https://[::1]")
+          );
+        }
+      }
+      destroy() {
+      }
+      async handle(request2, { abortSignal } = {}) {
+        var _a7;
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        const requestTimeoutInMs = this.config.requestTimeout;
+        const keepAlive = this.config.keepAlive === true;
+        const credentials = this.config.credentials;
+        if (abortSignal == null ? void 0 : abortSignal.aborted) {
+          const abortError = new Error("Request aborted");
+          abortError.name = "AbortError";
+          return Promise.reject(abortError);
+        }
+        let path23 = request2.path;
+        const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+        if (queryString) {
+          path23 += `?${queryString}`;
+        }
+        if (request2.fragment) {
+          path23 += `#${request2.fragment}`;
+        }
+        let auth = "";
+        if (request2.username != null || request2.password != null) {
+          const username = request2.username ?? "";
+          const password = request2.password ?? "";
+          auth = `${username}:${password}@`;
+        }
+        const { port, method } = request2;
+        const url2 = `${request2.protocol}//${auth}${request2.hostname}${port ? `:${port}` : ""}${path23}`;
+        const body = method === "GET" || method === "HEAD" ? void 0 : request2.body;
+        const requestOptions = {
+          body,
+          headers: new Headers(request2.headers),
+          method,
+          credentials
+        };
+        if ((_a7 = this.config) == null ? void 0 : _a7.cache) {
+          requestOptions.cache = this.config.cache;
+        }
+        if (body) {
+          requestOptions.duplex = "half";
+        }
+        if (typeof AbortController !== "undefined") {
+          requestOptions.signal = abortSignal;
+        }
+        if (keepAliveSupport.supported) {
+          requestOptions.keepalive = keepAlive;
+        }
+        if (typeof this.config.requestInit === "function") {
+          Object.assign(requestOptions, this.config.requestInit(request2));
+        }
+        let removeSignalEventListener = /* @__PURE__ */ __name2(() => {
+        }, "removeSignalEventListener");
+        const fetchRequest = createRequest(url2, requestOptions);
+        const raceOfPromises = [
+          fetch(fetchRequest).then((response) => {
+            const fetchHeaders = response.headers;
+            const transformedHeaders = {};
+            for (const pair of fetchHeaders.entries()) {
+              transformedHeaders[pair[0]] = pair[1];
+            }
+            const hasReadableStream = response.body != void 0;
+            if (!hasReadableStream) {
+              return response.blob().then((body2) => ({
+                response: new import_protocol_http8.HttpResponse({
+                  headers: transformedHeaders,
+                  reason: response.statusText,
+                  statusCode: response.status,
+                  body: body2
+                })
+              }));
+            }
+            return {
+              response: new import_protocol_http8.HttpResponse({
+                headers: transformedHeaders,
+                reason: response.statusText,
+                statusCode: response.status,
+                body: response.body
+              })
+            };
+          }),
+          requestTimeout(requestTimeoutInMs)
+        ];
+        if (abortSignal) {
+          raceOfPromises.push(
+            new Promise((resolve6, reject) => {
+              const onAbort = /* @__PURE__ */ __name2(() => {
+                const abortError = new Error("Request aborted");
+                abortError.name = "AbortError";
+                reject(abortError);
+              }, "onAbort");
+              if (typeof abortSignal.addEventListener === "function") {
+                const signal = abortSignal;
+                signal.addEventListener("abort", onAbort, { once: true });
+                removeSignalEventListener = /* @__PURE__ */ __name2(() => signal.removeEventListener("abort", onAbort), "removeSignalEventListener");
+              } else {
+                abortSignal.onabort = onAbort;
+              }
+            })
+          );
+        }
+        return Promise.race(raceOfPromises).finally(removeSignalEventListener);
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          config[key] = value;
+          return config;
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_FetchHttpHandler, "FetchHttpHandler");
+    var FetchHttpHandler = _FetchHttpHandler;
+    var import_util_base64 = require_dist_cjs16();
+    var streamCollector = /* @__PURE__ */ __name2(async (stream) => {
+      var _a7;
+      if (typeof Blob === "function" && stream instanceof Blob || ((_a7 = stream.constructor) == null ? void 0 : _a7.name) === "Blob") {
+        if (Blob.prototype.arrayBuffer !== void 0) {
+          return new Uint8Array(await stream.arrayBuffer());
+        }
+        return collectBlob(stream);
+      }
+      return collectStream(stream);
+    }, "streamCollector");
+    async function collectBlob(blob) {
+      const base64 = await readToBase64(blob);
+      const arrayBuffer = (0, import_util_base64.fromBase64)(base64);
+      return new Uint8Array(arrayBuffer);
+    }
+    __name2(collectBlob, "collectBlob");
+    async function collectStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectStream, "collectStream");
+    function readToBase64(blob) {
+      return new Promise((resolve6, reject) => {
+        const reader = new FileReader();
+        reader.onloadend = () => {
+          if (reader.readyState !== 2) {
+            return reject(new Error("Reader aborted too early"));
+          }
+          const result = reader.result ?? "";
+          const commaIndex = result.indexOf(",");
+          const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;
+          resolve6(result.substring(dataOffset));
+        };
+        reader.onabort = () => reject(new Error("Read aborted"));
+        reader.onerror = () => reject(reader.error);
+        reader.readAsDataURL(blob);
+      });
+    }
+    __name2(readToBase64, "readToBase64");
+  }
+});
+
+// ../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js
+var require_dist_cjs21 = __commonJS({
+  "../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromHex: () => fromHex,
+      toHex: () => toHex
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var SHORT_TO_HEX = {};
+    var HEX_TO_SHORT = {};
+    for (let i = 0; i < 256; i++) {
+      let encodedByte = i.toString(16).toLowerCase();
+      if (encodedByte.length === 1) {
+        encodedByte = `0${encodedByte}`;
+      }
+      SHORT_TO_HEX[i] = encodedByte;
+      HEX_TO_SHORT[encodedByte] = i;
+    }
+    function fromHex(encoded) {
+      if (encoded.length % 2 !== 0) {
+        throw new Error("Hex encoded strings must have an even number length");
+      }
+      const out = new Uint8Array(encoded.length / 2);
+      for (let i = 0; i < encoded.length; i += 2) {
+        const encodedByte = encoded.slice(i, i + 2).toLowerCase();
+        if (encodedByte in HEX_TO_SHORT) {
+          out[i / 2] = HEX_TO_SHORT[encodedByte];
+        } else {
+          throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);
+        }
+      }
+      return out;
+    }
+    __name2(fromHex, "fromHex");
+    function toHex(bytes) {
+      let out = "";
+      for (let i = 0; i < bytes.byteLength; i++) {
+        out += SHORT_TO_HEX[bytes[i]];
+      }
+      return out;
+    }
+    __name2(toHex, "toHex");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js
+var require_stream_type_check = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isBlob = exports2.isReadableStream = void 0;
+    var isReadableStream2 = (stream) => {
+      var _a7;
+      return typeof ReadableStream === "function" && (((_a7 = stream === null || stream === void 0 ? void 0 : stream.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === ReadableStream.name || stream instanceof ReadableStream);
+    };
+    exports2.isReadableStream = isReadableStream2;
+    var isBlob2 = (blob) => {
+      var _a7;
+      return typeof Blob === "function" && (((_a7 = blob === null || blob === void 0 ? void 0 : blob.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === Blob.name || blob instanceof Blob);
+    };
+    exports2.isBlob = isBlob2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js
+var require_sdk_stream_mixin_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var fetch_http_handler_1 = require_dist_cjs20();
+    var util_base64_1 = require_dist_cjs16();
+    var util_hex_encoding_1 = require_dist_cjs21();
+    var util_utf8_1 = require_dist_cjs15();
+    var stream_type_check_1 = require_stream_type_check();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!isBlobInstance(stream) && !(0, stream_type_check_1.isReadableStream)(stream)) {
+        const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+        throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, fetch_http_handler_1.streamCollector)(stream);
+      };
+      const blobToWebStream = (blob) => {
+        if (typeof blob.stream !== "function") {
+          throw new Error("Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\nIf you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body");
+        }
+        return blob.stream();
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === "base64") {
+            return (0, util_base64_1.toBase64)(buf);
+          } else if (encoding === "hex") {
+            return (0, util_hex_encoding_1.toHex)(buf);
+          } else if (encoding === void 0 || encoding === "utf8" || encoding === "utf-8") {
+            return (0, util_utf8_1.toUtf8)(buf);
+          } else if (typeof TextDecoder === "function") {
+            return new TextDecoder(encoding).decode(buf);
+          } else {
+            throw new Error("TextDecoder is not available, please make sure polyfill is provided.");
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          transformed = true;
+          if (isBlobInstance(stream)) {
+            return blobToWebStream(stream);
+          } else if ((0, stream_type_check_1.isReadableStream)(stream)) {
+            return stream;
+          } else {
+            throw new Error(`Cannot transform payload to web stream, got ${stream}`);
+          }
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+    var isBlobInstance = (stream) => typeof Blob === "function" && stream instanceof Blob;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js
+var require_sdk_stream_mixin = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_buffer_from_1 = require_dist_cjs14();
+    var stream_1 = require("stream");
+    var sdk_stream_mixin_browser_1 = require_sdk_stream_mixin_browser();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!(stream instanceof stream_1.Readable)) {
+        try {
+          return (0, sdk_stream_mixin_browser_1.sdkStreamMixin)(stream);
+        } catch (e) {
+          const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+          throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);
+        }
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, node_http_handler_1.streamCollector)(stream);
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === void 0 || Buffer.isEncoding(encoding)) {
+            return (0, util_buffer_from_1.fromArrayBuffer)(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);
+          } else {
+            const decoder2 = new TextDecoder(encoding);
+            return decoder2.decode(buf);
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          if (stream.readableFlowing !== null) {
+            throw new Error("The stream has been consumed by other callbacks.");
+          }
+          if (typeof stream_1.Readable.toWeb !== "function") {
+            throw new Error("Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.");
+          }
+          transformed = true;
+          return stream_1.Readable.toWeb(stream);
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js
+var require_splitStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    async function splitStream2(stream) {
+      if (typeof stream.stream === "function") {
+        stream = stream.stream();
+      }
+      const readableStream = stream;
+      return readableStream.tee();
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js
+var require_splitStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    var stream_1 = require("stream");
+    var splitStream_browser_1 = require_splitStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    async function splitStream2(stream) {
+      if ((0, stream_type_check_1.isReadableStream)(stream) || (0, stream_type_check_1.isBlob)(stream)) {
+        return (0, splitStream_browser_1.splitStream)(stream);
+      }
+      const stream1 = new stream_1.PassThrough();
+      const stream2 = new stream_1.PassThrough();
+      stream.pipe(stream1);
+      stream.pipe(stream2);
+      return [stream1, stream2];
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js
+var require_headStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    async function headStream2(stream, bytes) {
+      var _a7;
+      let byteLengthCounter = 0;
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          byteLengthCounter += (_a7 = value === null || value === void 0 ? void 0 : value.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        }
+        if (byteLengthCounter >= bytes) {
+          break;
+        }
+        isDone = done;
+      }
+      reader.releaseLock();
+      const collected = new Uint8Array(Math.min(bytes, byteLengthCounter));
+      let offset = 0;
+      for (const chunk of chunks) {
+        if (chunk.byteLength > collected.byteLength - offset) {
+          collected.set(chunk.subarray(0, collected.byteLength - offset), offset);
+          break;
+        } else {
+          collected.set(chunk, offset);
+        }
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    exports2.headStream = headStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js
+var require_headStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    var stream_1 = require("stream");
+    var headStream_browser_1 = require_headStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    var headStream2 = (stream, bytes) => {
+      if ((0, stream_type_check_1.isReadableStream)(stream)) {
+        return (0, headStream_browser_1.headStream)(stream, bytes);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        collector.limit = bytes;
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes2 = new Uint8Array(Buffer.concat(this.buffers));
+          resolve6(bytes2);
+        });
+      });
+    };
+    exports2.headStream = headStream2;
+    var Collector = class extends stream_1.Writable {
+      constructor() {
+        super(...arguments);
+        this.buffers = [];
+        this.limit = Infinity;
+        this.bytesBuffered = 0;
+      }
+      _write(chunk, encoding, callback) {
+        var _a7;
+        this.buffers.push(chunk);
+        this.bytesBuffered += (_a7 = chunk.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        if (this.bytesBuffered >= this.limit) {
+          const excess = this.bytesBuffered - this.limit;
+          const tailBuffer = this.buffers[this.buffers.length - 1];
+          this.buffers[this.buffers.length - 1] = tailBuffer.subarray(0, tailBuffer.byteLength - excess);
+          this.emit("finish");
+        }
+        callback();
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js
+var require_ChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_1 = require("stream");
+    var ChecksumStream2 = class extends stream_1.Duplex {
+      constructor({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) {
+        var _a7, _b;
+        super();
+        if (typeof source.pipe === "function") {
+          this.source = source;
+        } else {
+          throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+        }
+        this.base64Encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+        this.expectedChecksum = expectedChecksum;
+        this.checksum = checksum;
+        this.checksumSourceLocation = checksumSourceLocation;
+        this.source.pipe(this);
+      }
+      _read(size) {
+      }
+      _write(chunk, encoding, callback) {
+        try {
+          this.checksum.update(chunk);
+          this.push(chunk);
+        } catch (e) {
+          return callback(e);
+        }
+        return callback();
+      }
+      async _final(callback) {
+        try {
+          const digest = await this.checksum.digest();
+          const received = this.base64Encoder(digest);
+          if (this.expectedChecksum !== received) {
+            return callback(new Error(`Checksum mismatch: expected "${this.expectedChecksum}" but received "${received}" in response header "${this.checksumSourceLocation}".`));
+          }
+        } catch (e) {
+          return callback(e);
+        }
+        this.push(null);
+        return callback();
+      }
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js
+var require_ChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var ReadableStreamRef = typeof ReadableStream === "function" ? ReadableStream : function() {
+    };
+    var ChecksumStream2 = class extends ReadableStreamRef {
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js
+var require_createChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_browser_1 = require_ChecksumStream_browser();
+    var createChecksumStream2 = ({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) => {
+      var _a7, _b;
+      if (!(0, stream_type_check_1.isReadableStream)(source)) {
+        throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+      }
+      const encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+      if (typeof TransformStream !== "function") {
+        throw new Error("@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.");
+      }
+      const transform = new TransformStream({
+        start() {
+        },
+        async transform(chunk, controller) {
+          checksum.update(chunk);
+          controller.enqueue(chunk);
+        },
+        async flush(controller) {
+          const digest = await checksum.digest();
+          const received = encoder(digest);
+          if (expectedChecksum !== received) {
+            const error = new Error(`Checksum mismatch: expected "${expectedChecksum}" but received "${received}" in response header "${checksumSourceLocation}".`);
+            controller.error(error);
+          } else {
+            controller.terminate();
+          }
+        }
+      });
+      source.pipeThrough(transform);
+      const readable = transform.readable;
+      Object.setPrototypeOf(readable, ChecksumStream_browser_1.ChecksumStream.prototype);
+      return readable;
+    };
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js
+var require_createChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_1 = require_ChecksumStream();
+    var createChecksumStream_browser_1 = require_createChecksumStream_browser();
+    function createChecksumStream2(init) {
+      if (typeof ReadableStream === "function" && (0, stream_type_check_1.isReadableStream)(init.source)) {
+        return (0, createChecksumStream_browser_1.createChecksumStream)(init);
+      }
+      return new ChecksumStream_1.ChecksumStream(init);
+    }
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/index.js
+var require_dist_cjs22 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Uint8ArrayBlobAdapter: () => Uint8ArrayBlobAdapter2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_base64 = require_dist_cjs16();
+    var import_util_utf8 = require_dist_cjs15();
+    function transformToString(payload, encoding = "utf-8") {
+      if (encoding === "base64") {
+        return (0, import_util_base64.toBase64)(payload);
+      }
+      return (0, import_util_utf8.toUtf8)(payload);
+    }
+    __name2(transformToString, "transformToString");
+    function transformFromString(str, encoding) {
+      if (encoding === "base64") {
+        return Uint8ArrayBlobAdapter2.mutate((0, import_util_base64.fromBase64)(str));
+      }
+      return Uint8ArrayBlobAdapter2.mutate((0, import_util_utf8.fromUtf8)(str));
+    }
+    __name2(transformFromString, "transformFromString");
+    var _Uint8ArrayBlobAdapter = class _Uint8ArrayBlobAdapter2 extends Uint8Array {
+      /**
+       * @param source - such as a string or Stream.
+       * @returns a new Uint8ArrayBlobAdapter extending Uint8Array.
+       */
+      static fromString(source, encoding = "utf-8") {
+        switch (typeof source) {
+          case "string":
+            return transformFromString(source, encoding);
+          default:
+            throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);
+        }
+      }
+      /**
+       * @param source - Uint8Array to be mutated.
+       * @returns the same Uint8Array but with prototype switched to Uint8ArrayBlobAdapter.
+       */
+      static mutate(source) {
+        Object.setPrototypeOf(source, _Uint8ArrayBlobAdapter2.prototype);
+        return source;
+      }
+      /**
+       * @param encoding - default 'utf-8'.
+       * @returns the blob as string.
+       */
+      transformToString(encoding = "utf-8") {
+        return transformToString(this, encoding);
+      }
+    };
+    __name2(_Uint8ArrayBlobAdapter, "Uint8ArrayBlobAdapter");
+    var Uint8ArrayBlobAdapter2 = _Uint8ArrayBlobAdapter;
+    __reExport2(src_exports, require_getAwsChunkedEncodingStream(), module2.exports);
+    __reExport2(src_exports, require_sdk_stream_mixin(), module2.exports);
+    __reExport2(src_exports, require_splitStream(), module2.exports);
+    __reExport2(src_exports, require_headStream(), module2.exports);
+    __reExport2(src_exports, require_stream_type_check(), module2.exports);
+    __reExport2(src_exports, require_createChecksumStream(), module2.exports);
+    __reExport2(src_exports, require_ChecksumStream(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js
+var import_util_stream, collectBody2;
+var init_collect_stream_body = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js"() {
+    import_util_stream = __toESM(require_dist_cjs22());
+    collectBody2 = async (streamBody = new Uint8Array(), context) => {
+      if (streamBody instanceof Uint8Array) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(streamBody);
+      }
+      if (!streamBody) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(new Uint8Array());
+      }
+      const fromContext = context.streamCollector(streamBody);
+      return import_util_stream.Uint8ArrayBlobAdapter.mutate(await fromContext);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js
+function extendedEncodeURIComponent2(str) {
+  return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
+    return "%" + c.charCodeAt(0).toString(16).toUpperCase();
+  });
+}
+var init_extended_encode_uri_component = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js
+var resolvedPath2;
+var init_resolve_path = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js"() {
+    init_extended_encode_uri_component();
+    resolvedPath2 = (resolvedPath3, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => {
+      if (input != null && input[memberName] !== void 0) {
+        const labelValue = labelValueProvider();
+        if (labelValue.length <= 0) {
+          throw new Error("Empty value provided for input HTTP label: " + memberName + ".");
+        }
+        resolvedPath3 = resolvedPath3.replace(uriLabel, isGreedyLabel ? labelValue.split("/").map((segment) => extendedEncodeURIComponent2(segment)).join("/") : extendedEncodeURIComponent2(labelValue));
+      } else {
+        throw new Error("No value provided for input HTTP label: " + memberName + ".");
+      }
+      return resolvedPath3;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js
+function requestBuilder(input, context) {
+  return new RequestBuilder(input, context);
+}
+var import_protocol_http2, RequestBuilder;
+var init_requestBuilder = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js"() {
+    import_protocol_http2 = __toESM(require_dist_cjs2());
+    init_resolve_path();
+    RequestBuilder = class {
+      constructor(input, context) {
+        this.input = input;
+        this.context = context;
+        this.query = {};
+        this.method = "";
+        this.headers = {};
+        this.path = "";
+        this.body = null;
+        this.hostname = "";
+        this.resolvePathStack = [];
+      }
+      async build() {
+        const { hostname, protocol = "https", port, path: basePath } = await this.context.endpoint();
+        this.path = basePath;
+        for (const resolvePath of this.resolvePathStack) {
+          resolvePath(this.path);
+        }
+        return new import_protocol_http2.HttpRequest({
+          protocol,
+          hostname: this.hostname || hostname,
+          port,
+          method: this.method,
+          path: this.path,
+          query: this.query,
+          body: this.body,
+          headers: this.headers
+        });
+      }
+      hn(hostname) {
+        this.hostname = hostname;
+        return this;
+      }
+      bp(uriLabel) {
+        this.resolvePathStack.push((basePath) => {
+          this.path = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + uriLabel;
+        });
+        return this;
+      }
+      p(memberName, labelValueProvider, uriLabel, isGreedyLabel) {
+        this.resolvePathStack.push((path23) => {
+          this.path = resolvedPath2(path23, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);
+        });
+        return this;
+      }
+      h(headers) {
+        this.headers = headers;
+        return this;
+      }
+      q(query) {
+        this.query = query;
+        return this;
+      }
+      b(body) {
+        this.body = body;
+        return this;
+      }
+      m(method) {
+        this.method = method;
+        return this;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js
+var protocols_exports = {};
+__export(protocols_exports, {
+  RequestBuilder: () => RequestBuilder,
+  collectBody: () => collectBody2,
+  extendedEncodeURIComponent: () => extendedEncodeURIComponent2,
+  requestBuilder: () => requestBuilder,
+  resolvedPath: () => resolvedPath2
+});
+var init_protocols = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js"() {
+    init_collect_stream_body();
+    init_extended_encode_uri_component();
+    init_requestBuilder();
+    init_resolve_path();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js
+var init_requestBuilder2 = __esm({
+  "../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js"() {
+    init_protocols();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/setFeature.js
+function setFeature(context, feature, value) {
+  if (!context.__smithy_context) {
+    context.__smithy_context = {
+      features: {}
+    };
+  } else if (!context.__smithy_context.features) {
+    context.__smithy_context.features = {};
+  }
+  context.__smithy_context.features[feature] = value;
+}
+var init_setFeature = __esm({
+  "../../../node_modules/@smithy/core/dist-es/setFeature.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js
+var DefaultIdentityProviderConfig;
+var init_DefaultIdentityProviderConfig = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js"() {
+    DefaultIdentityProviderConfig = class {
+      constructor(config) {
+        this.authSchemes = /* @__PURE__ */ new Map();
+        for (const [key, value] of Object.entries(config)) {
+          if (value !== void 0) {
+            this.authSchemes.set(key, value);
+          }
+        }
+      }
+      getIdentityProvider(schemeId) {
+        return this.authSchemes.get(schemeId);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js
+var import_protocol_http3, import_types7, HttpApiKeyAuthSigner;
+var init_httpApiKeyAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js"() {
+    import_protocol_http3 = __toESM(require_dist_cjs2());
+    import_types7 = __toESM(require_dist_cjs());
+    HttpApiKeyAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!signingProperties) {
+          throw new Error("request could not be signed with `apiKey` since the `name` and `in` signer properties are missing");
+        }
+        if (!signingProperties.name) {
+          throw new Error("request could not be signed with `apiKey` since the `name` signer property is missing");
+        }
+        if (!signingProperties.in) {
+          throw new Error("request could not be signed with `apiKey` since the `in` signer property is missing");
+        }
+        if (!identity.apiKey) {
+          throw new Error("request could not be signed with `apiKey` since the `apiKey` is not defined");
+        }
+        const clonedRequest = import_protocol_http3.HttpRequest.clone(httpRequest);
+        if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.QUERY) {
+          clonedRequest.query[signingProperties.name] = identity.apiKey;
+        } else if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.HEADER) {
+          clonedRequest.headers[signingProperties.name] = signingProperties.scheme ? `${signingProperties.scheme} ${identity.apiKey}` : identity.apiKey;
+        } else {
+          throw new Error("request can only be signed with `apiKey` locations `query` or `header`, but found: `" + signingProperties.in + "`");
+        }
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js
+var import_protocol_http4, HttpBearerAuthSigner;
+var init_httpBearerAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js"() {
+    import_protocol_http4 = __toESM(require_dist_cjs2());
+    HttpBearerAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        const clonedRequest = import_protocol_http4.HttpRequest.clone(httpRequest);
+        if (!identity.token) {
+          throw new Error("request could not be signed with `token` since the `token` is not defined");
+        }
+        clonedRequest.headers["Authorization"] = `Bearer ${identity.token}`;
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js
+var NoAuthSigner;
+var init_noAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js"() {
+    NoAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        return httpRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js
+var init_httpAuthSchemes = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js"() {
+    init_httpApiKeyAuth();
+    init_httpBearerAuth();
+    init_noAuth();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js
+var createIsIdentityExpiredFunction, EXPIRATION_MS, isIdentityExpired, doesIdentityRequireRefresh, memoizeIdentityProvider;
+var init_memoizeIdentityProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js"() {
+    createIsIdentityExpiredFunction = (expirationMs) => (identity) => doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;
+    EXPIRATION_MS = 3e5;
+    isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);
+    doesIdentityRequireRefresh = (identity) => identity.expiration !== void 0;
+    memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {
+      if (provider === void 0) {
+        return void 0;
+      }
+      const normalizedProvider = typeof provider !== "function" ? async () => Promise.resolve(provider) : provider;
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = async (options) => {
+        if (!pending) {
+          pending = normalizedProvider(options);
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      };
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || options?.forceRefresh) {
+            resolved = await coalesceProvider(options);
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || options?.forceRefresh) {
+          resolved = await coalesceProvider(options);
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (!requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider(options);
+          return resolved;
+        }
+        return resolved;
+      };
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js
+var init_util_identity_and_auth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js"() {
+    init_DefaultIdentityProviderConfig();
+    init_httpAuthSchemes();
+    init_memoizeIdentityProvider();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/index.js
+var dist_es_exports = {};
+__export(dist_es_exports, {
+  DefaultIdentityProviderConfig: () => DefaultIdentityProviderConfig,
+  EXPIRATION_MS: () => EXPIRATION_MS,
+  HttpApiKeyAuthSigner: () => HttpApiKeyAuthSigner,
+  HttpBearerAuthSigner: () => HttpBearerAuthSigner,
+  NoAuthSigner: () => NoAuthSigner,
+  createIsIdentityExpiredFunction: () => createIsIdentityExpiredFunction,
+  createPaginator: () => createPaginator,
+  doesIdentityRequireRefresh: () => doesIdentityRequireRefresh,
+  getHttpAuthSchemeEndpointRuleSetPlugin: () => getHttpAuthSchemeEndpointRuleSetPlugin,
+  getHttpAuthSchemePlugin: () => getHttpAuthSchemePlugin,
+  getHttpSigningPlugin: () => getHttpSigningPlugin,
+  getSmithyContext: () => getSmithyContext,
+  httpAuthSchemeEndpointRuleSetMiddlewareOptions: () => httpAuthSchemeEndpointRuleSetMiddlewareOptions,
+  httpAuthSchemeMiddleware: () => httpAuthSchemeMiddleware,
+  httpAuthSchemeMiddlewareOptions: () => httpAuthSchemeMiddlewareOptions,
+  httpSigningMiddleware: () => httpSigningMiddleware,
+  httpSigningMiddlewareOptions: () => httpSigningMiddlewareOptions,
+  isIdentityExpired: () => isIdentityExpired,
+  memoizeIdentityProvider: () => memoizeIdentityProvider,
+  normalizeProvider: () => normalizeProvider,
+  requestBuilder: () => requestBuilder,
+  setFeature: () => setFeature
+});
+var init_dist_es = __esm({
+  "../../../node_modules/@smithy/core/dist-es/index.js"() {
+    init_getSmithyContext();
+    init_middleware_http_auth_scheme();
+    init_middleware_http_signing();
+    init_normalizeProvider();
+    init_createPaginator();
+    init_requestBuilder2();
+    init_setFeature();
+    init_util_identity_and_auth();
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js
+var require_dist_cjs23 = __commonJS({
+  "../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      contentLengthMiddleware: () => contentLengthMiddleware,
+      contentLengthMiddlewareOptions: () => contentLengthMiddlewareOptions,
+      getContentLengthPlugin: () => getContentLengthPlugin
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var CONTENT_LENGTH_HEADER = "content-length";
+    function contentLengthMiddleware(bodyLengthChecker) {
+      return (next) => async (args) => {
+        const request2 = args.request;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          const { body, headers } = request2;
+          if (body && Object.keys(headers).map((str) => str.toLowerCase()).indexOf(CONTENT_LENGTH_HEADER) === -1) {
+            try {
+              const length = bodyLengthChecker(body);
+              request2.headers = {
+                ...request2.headers,
+                [CONTENT_LENGTH_HEADER]: String(length)
+              };
+            } catch (error) {
+            }
+          }
+        }
+        return next({
+          ...args,
+          request: request2
+        });
+      };
+    }
+    __name2(contentLengthMiddleware, "contentLengthMiddleware");
+    var contentLengthMiddlewareOptions = {
+      step: "build",
+      tags: ["SET_CONTENT_LENGTH", "CONTENT_LENGTH"],
+      name: "contentLengthMiddleware",
+      override: true
+    };
+    var getContentLengthPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);
+      }
+    }), "getContentLengthPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/property-provider/dist-cjs/index.js
+var require_dist_cjs24 = __commonJS({
+  "../../../node_modules/@smithy/property-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CredentialsProviderError: () => CredentialsProviderError,
+      ProviderError: () => ProviderError2,
+      TokenProviderError: () => TokenProviderError,
+      chain: () => chain,
+      fromStatic: () => fromStatic,
+      memoize: () => memoize
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _ProviderError = class _ProviderError2 extends Error {
+      constructor(message, options = true) {
+        var _a7;
+        let logger;
+        let tryNextLink = true;
+        if (typeof options === "boolean") {
+          logger = void 0;
+          tryNextLink = options;
+        } else if (options != null && typeof options === "object") {
+          logger = options.logger;
+          tryNextLink = options.tryNextLink ?? true;
+        }
+        super(message);
+        this.name = "ProviderError";
+        this.tryNextLink = tryNextLink;
+        Object.setPrototypeOf(this, _ProviderError2.prototype);
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `@smithy/property-provider ${tryNextLink ? "->" : "(!)"} ${message}`);
+      }
+      /**
+       * @deprecated use new operator.
+       */
+      static from(error, options = true) {
+        return Object.assign(new this(error.message, options), error);
+      }
+    };
+    __name2(_ProviderError, "ProviderError");
+    var ProviderError2 = _ProviderError;
+    var _CredentialsProviderError = class _CredentialsProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "CredentialsProviderError";
+        Object.setPrototypeOf(this, _CredentialsProviderError2.prototype);
+      }
+    };
+    __name2(_CredentialsProviderError, "CredentialsProviderError");
+    var CredentialsProviderError = _CredentialsProviderError;
+    var _TokenProviderError = class _TokenProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "TokenProviderError";
+        Object.setPrototypeOf(this, _TokenProviderError2.prototype);
+      }
+    };
+    __name2(_TokenProviderError, "TokenProviderError");
+    var TokenProviderError = _TokenProviderError;
+    var chain = /* @__PURE__ */ __name2((...providers) => async () => {
+      if (providers.length === 0) {
+        throw new ProviderError2("No providers in chain");
+      }
+      let lastProviderError;
+      for (const provider of providers) {
+        try {
+          const credentials = await provider();
+          return credentials;
+        } catch (err) {
+          lastProviderError = err;
+          if (err == null ? void 0 : err.tryNextLink) {
+            continue;
+          }
+          throw err;
+        }
+      }
+      throw lastProviderError;
+    }, "chain");
+    var fromStatic = /* @__PURE__ */ __name2((staticValue) => () => Promise.resolve(staticValue), "fromStatic");
+    var memoize = /* @__PURE__ */ __name2((provider, isExpired, requiresRefresh) => {
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = /* @__PURE__ */ __name2(async () => {
+        if (!pending) {
+          pending = provider();
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      }, "coalesceProvider");
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+            resolved = await coalesceProvider();
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+          resolved = await coalesceProvider();
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (requiresRefresh && !requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider();
+          return resolved;
+        }
+        return resolved;
+      };
+    }, "memoize");
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js
+var require_getHomeDir = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getHomeDir = void 0;
+    var os_1 = require("os");
+    var path_1 = require("path");
+    var homeDirCache = {};
+    var getHomeDirCacheKey = () => {
+      if (process && process.geteuid) {
+        return `${process.geteuid()}`;
+      }
+      return "DEFAULT";
+    };
+    var getHomeDir2 = () => {
+      const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env;
+      if (HOME)
+        return HOME;
+      if (USERPROFILE)
+        return USERPROFILE;
+      if (HOMEPATH)
+        return `${HOMEDRIVE}${HOMEPATH}`;
+      const homeDirCacheKey = getHomeDirCacheKey();
+      if (!homeDirCache[homeDirCacheKey])
+        homeDirCache[homeDirCacheKey] = (0, os_1.homedir)();
+      return homeDirCache[homeDirCacheKey];
+    };
+    exports2.getHomeDir = getHomeDir2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js
+var require_getSSOTokenFilepath = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFilepath = void 0;
+    var crypto_1 = require("crypto");
+    var path_1 = require("path");
+    var getHomeDir_1 = require_getHomeDir();
+    var getSSOTokenFilepath2 = (id) => {
+      const hasher = (0, crypto_1.createHash)("sha1");
+      const cacheName = hasher.update(id).digest("hex");
+      return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`);
+    };
+    exports2.getSSOTokenFilepath = getSSOTokenFilepath2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js
+var require_getSSOTokenFromFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFromFile = void 0;
+    var fs_1 = require("fs");
+    var getSSOTokenFilepath_1 = require_getSSOTokenFilepath();
+    var { readFile } = fs_1.promises;
+    var getSSOTokenFromFile2 = async (id) => {
+      const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id);
+      const ssoTokenText = await readFile(ssoTokenFilepath, "utf8");
+      return JSON.parse(ssoTokenText);
+    };
+    exports2.getSSOTokenFromFile = getSSOTokenFromFile2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js
+var require_slurpFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.slurpFile = void 0;
+    var fs_1 = require("fs");
+    var { readFile } = fs_1.promises;
+    var filePromisesHash = {};
+    var slurpFile = (path23, options) => {
+      if (!filePromisesHash[path23] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) {
+        filePromisesHash[path23] = readFile(path23, "utf8");
+      }
+      return filePromisesHash[path23];
+    };
+    exports2.slurpFile = slurpFile;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js
+var require_dist_cjs25 = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR,
+      DEFAULT_PROFILE: () => DEFAULT_PROFILE,
+      ENV_PROFILE: () => ENV_PROFILE,
+      getProfileName: () => getProfileName,
+      loadSharedConfigFiles: () => loadSharedConfigFiles,
+      loadSsoSessionData: () => loadSsoSessionData,
+      parseKnownFiles: () => parseKnownFiles
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_getHomeDir(), module2.exports);
+    var ENV_PROFILE = "AWS_PROFILE";
+    var DEFAULT_PROFILE = "default";
+    var getProfileName = /* @__PURE__ */ __name2((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName");
+    __reExport2(src_exports, require_getSSOTokenFilepath(), module2.exports);
+    __reExport2(src_exports, require_getSSOTokenFromFile(), module2.exports);
+    var import_types8 = require_dist_cjs();
+    var getConfigData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => {
+      const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+      if (indexOfSeparator === -1) {
+        return false;
+      }
+      return Object.values(import_types8.IniSectionType).includes(key.substring(0, indexOfSeparator));
+    }).reduce(
+      (acc, [key, value]) => {
+        const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+        const updatedKey = key.substring(0, indexOfSeparator) === import_types8.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;
+        acc[updatedKey] = value;
+        return acc;
+      },
+      {
+        // Populate default profile, if present.
+        ...data.default && { default: data.default }
+      }
+    ), "getConfigData");
+    var import_path3 = require("path");
+    var import_getHomeDir = require_getHomeDir();
+    var ENV_CONFIG_PATH = "AWS_CONFIG_FILE";
+    var getConfigFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CONFIG_PATH] || (0, import_path3.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath");
+    var import_getHomeDir2 = require_getHomeDir();
+    var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE";
+    var getCredentialsFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path3.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath");
+    var import_getHomeDir3 = require_getHomeDir();
+    var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/;
+    var profileNameBlockList = ["__proto__", "profile __proto__"];
+    var parseIni = /* @__PURE__ */ __name2((iniData) => {
+      const map = {};
+      let currentSection;
+      let currentSubSection;
+      for (const iniLine of iniData.split(/\r?\n/)) {
+        const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim();
+        const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]";
+        if (isSection) {
+          currentSection = void 0;
+          currentSubSection = void 0;
+          const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);
+          const matches = prefixKeyRegex.exec(sectionName);
+          if (matches) {
+            const [, prefix, , name] = matches;
+            if (Object.values(import_types8.IniSectionType).includes(prefix)) {
+              currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);
+            }
+          } else {
+            currentSection = sectionName;
+          }
+          if (profileNameBlockList.includes(sectionName)) {
+            throw new Error(`Found invalid profile name "${sectionName}"`);
+          }
+        } else if (currentSection) {
+          const indexOfEqualsSign = trimmedLine.indexOf("=");
+          if (![0, -1].includes(indexOfEqualsSign)) {
+            const [name, value] = [
+              trimmedLine.substring(0, indexOfEqualsSign).trim(),
+              trimmedLine.substring(indexOfEqualsSign + 1).trim()
+            ];
+            if (value === "") {
+              currentSubSection = name;
+            } else {
+              if (currentSubSection && iniLine.trimStart() === iniLine) {
+                currentSubSection = void 0;
+              }
+              map[currentSection] = map[currentSection] || {};
+              const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;
+              map[currentSection][key] = value;
+            }
+          }
+        }
+      }
+      return map;
+    }, "parseIni");
+    var import_slurpFile = require_slurpFile();
+    var swallowError = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var CONFIG_PREFIX_SEPARATOR = ".";
+    var loadSharedConfigFiles = /* @__PURE__ */ __name2(async (init = {}) => {
+      const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;
+      const homeDir = (0, import_getHomeDir3.getHomeDir)();
+      const relativeHomeDirPrefix = "~/";
+      let resolvedFilepath = filepath;
+      if (filepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedFilepath = (0, import_path3.join)(homeDir, filepath.slice(2));
+      }
+      let resolvedConfigFilepath = configFilepath;
+      if (configFilepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedConfigFilepath = (0, import_path3.join)(homeDir, configFilepath.slice(2));
+      }
+      const parsedFiles = await Promise.all([
+        (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).then(getConfigData).catch(swallowError),
+        (0, import_slurpFile.slurpFile)(resolvedFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).catch(swallowError)
+      ]);
+      return {
+        configFile: parsedFiles[0],
+        credentialsFile: parsedFiles[1]
+      };
+    }, "loadSharedConfigFiles");
+    var getSsoSessionData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types8.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData");
+    var import_slurpFile2 = require_slurpFile();
+    var swallowError2 = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var loadSsoSessionData = /* @__PURE__ */ __name2(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData");
+    var mergeConfigFiles = /* @__PURE__ */ __name2((...files) => {
+      const merged = {};
+      for (const file of files) {
+        for (const [key, values] of Object.entries(file)) {
+          if (merged[key] !== void 0) {
+            Object.assign(merged[key], values);
+          } else {
+            merged[key] = values;
+          }
+        }
+      }
+      return merged;
+    }, "mergeConfigFiles");
+    var parseKnownFiles = /* @__PURE__ */ __name2(async (init) => {
+      const parsedFiles = await loadSharedConfigFiles(init);
+      return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);
+    }, "parseKnownFiles");
+  }
+});
+
+// ../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js
+var require_dist_cjs26 = __commonJS({
+  "../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      loadConfig: () => loadConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    function getSelectorName(functionString) {
+      try {
+        const constants2 = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? []));
+        constants2.delete("CONFIG");
+        constants2.delete("CONFIG_PREFIX_SEPARATOR");
+        constants2.delete("ENV");
+        return [...constants2].join(", ");
+      } catch (e) {
+        return functionString;
+      }
+    }
+    __name2(getSelectorName, "getSelectorName");
+    var fromEnv = /* @__PURE__ */ __name2((envVarSelector, logger) => async () => {
+      try {
+        const config = envVarSelector(process.env);
+        if (config === void 0) {
+          throw new Error();
+        }
+        return config;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`,
+          { logger }
+        );
+      }
+    }, "fromEnv");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var fromSharedConfigFiles = /* @__PURE__ */ __name2((configSelector, { preferredFile = "config", ...init } = {}) => async () => {
+      const profile = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init);
+      const profileFromCredentials = credentialsFile[profile] || {};
+      const profileFromConfig = configFile[profile] || {};
+      const mergedProfile = preferredFile === "config" ? { ...profileFromCredentials, ...profileFromConfig } : { ...profileFromConfig, ...profileFromCredentials };
+      try {
+        const cfgFile = preferredFile === "config" ? configFile : credentialsFile;
+        const configValue = configSelector(mergedProfile, cfgFile);
+        if (configValue === void 0) {
+          throw new Error();
+        }
+        return configValue;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`,
+          { logger: init.logger }
+        );
+      }
+    }, "fromSharedConfigFiles");
+    var isFunction2 = /* @__PURE__ */ __name2((func) => typeof func === "function", "isFunction");
+    var fromStatic = /* @__PURE__ */ __name2((defaultValue) => isFunction2(defaultValue) ? async () => await defaultValue() : (0, import_property_provider2.fromStatic)(defaultValue), "fromStatic");
+    var loadConfig = /* @__PURE__ */ __name2(({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        fromEnv(environmentVariableSelector),
+        fromSharedConfigFiles(configFileSelector, configuration),
+        fromStatic(defaultValue)
+      )
+    ), "loadConfig");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js
+var require_getEndpointUrlConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointUrlConfig = void 0;
+    var shared_ini_file_loader_1 = require_dist_cjs25();
+    var ENV_ENDPOINT_URL = "AWS_ENDPOINT_URL";
+    var CONFIG_ENDPOINT_URL = "endpoint_url";
+    var getEndpointUrlConfig = (serviceId) => ({
+      environmentVariableSelector: (env2) => {
+        const serviceSuffixParts = serviceId.split(" ").map((w) => w.toUpperCase());
+        const serviceEndpointUrl = env2[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join("_")];
+        if (serviceEndpointUrl)
+          return serviceEndpointUrl;
+        const endpointUrl = env2[ENV_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      configFileSelector: (profile, config) => {
+        if (config && profile.services) {
+          const servicesSection = config[["services", profile.services].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+          if (servicesSection) {
+            const servicePrefixParts = serviceId.split(" ").map((w) => w.toLowerCase());
+            const endpointUrl2 = servicesSection[[servicePrefixParts.join("_"), CONFIG_ENDPOINT_URL].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+            if (endpointUrl2)
+              return endpointUrl2;
+          }
+        }
+        const endpointUrl = profile[CONFIG_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      default: void 0
+    });
+    exports2.getEndpointUrlConfig = getEndpointUrlConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js
+var require_getEndpointFromConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointFromConfig = void 0;
+    var node_config_provider_1 = require_dist_cjs26();
+    var getEndpointUrlConfig_1 = require_getEndpointUrlConfig();
+    var getEndpointFromConfig = async (serviceId) => (0, node_config_provider_1.loadConfig)((0, getEndpointUrlConfig_1.getEndpointUrlConfig)(serviceId !== null && serviceId !== void 0 ? serviceId : ""))();
+    exports2.getEndpointFromConfig = getEndpointFromConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js
+var require_dist_cjs27 = __commonJS({
+  "../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseQueryString: () => parseQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function parseQueryString(querystring) {
+      const query = {};
+      querystring = querystring.replace(/^\?/, "");
+      if (querystring) {
+        for (const pair of querystring.split("&")) {
+          let [key, value = null] = pair.split("=");
+          key = decodeURIComponent(key);
+          if (value) {
+            value = decodeURIComponent(value);
+          }
+          if (!(key in query)) {
+            query[key] = value;
+          } else if (Array.isArray(query[key])) {
+            query[key].push(value);
+          } else {
+            query[key] = [query[key], value];
+          }
+        }
+      }
+      return query;
+    }
+    __name2(parseQueryString, "parseQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/url-parser/dist-cjs/index.js
+var require_dist_cjs28 = __commonJS({
+  "../../../node_modules/@smithy/url-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseUrl: () => parseUrl
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_querystring_parser = require_dist_cjs27();
+    var parseUrl = /* @__PURE__ */ __name2((url2) => {
+      if (typeof url2 === "string") {
+        return parseUrl(new URL(url2));
+      }
+      const { hostname, pathname, port, protocol, search } = url2;
+      let query;
+      if (search) {
+        query = (0, import_querystring_parser.parseQueryString)(search);
+      }
+      return {
+        hostname,
+        port: port ? parseInt(port) : void 0,
+        protocol,
+        path: pathname,
+        query
+      };
+    }, "parseUrl");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js
+var require_dist_cjs29 = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      endpointMiddleware: () => endpointMiddleware,
+      endpointMiddlewareOptions: () => endpointMiddlewareOptions,
+      getEndpointFromInstructions: () => getEndpointFromInstructions,
+      getEndpointPlugin: () => getEndpointPlugin,
+      resolveEndpointConfig: () => resolveEndpointConfig,
+      resolveParams: () => resolveParams,
+      toEndpointV1: () => toEndpointV1
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var resolveParamsForS3 = /* @__PURE__ */ __name2(async (endpointParams) => {
+      const bucket = (endpointParams == null ? void 0 : endpointParams.Bucket) || "";
+      if (typeof endpointParams.Bucket === "string") {
+        endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent("#")).replace(/\?/g, encodeURIComponent("?"));
+      }
+      if (isArnBucketName(bucket)) {
+        if (endpointParams.ForcePathStyle === true) {
+          throw new Error("Path-style addressing cannot be used with ARN buckets");
+        }
+      } else if (!isDnsCompatibleBucketName(bucket) || bucket.indexOf(".") !== -1 && !String(endpointParams.Endpoint).startsWith("http:") || bucket.toLowerCase() !== bucket || bucket.length < 3) {
+        endpointParams.ForcePathStyle = true;
+      }
+      if (endpointParams.DisableMultiRegionAccessPoints) {
+        endpointParams.disableMultiRegionAccessPoints = true;
+        endpointParams.DisableMRAP = true;
+      }
+      return endpointParams;
+    }, "resolveParamsForS3");
+    var DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/;
+    var IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/;
+    var DOTS_PATTERN = /\.\./;
+    var isDnsCompatibleBucketName = /* @__PURE__ */ __name2((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), "isDnsCompatibleBucketName");
+    var isArnBucketName = /* @__PURE__ */ __name2((bucketName) => {
+      const [arn, partition, service, , , bucket] = bucketName.split(":");
+      const isArn = arn === "arn" && bucketName.split(":").length >= 6;
+      const isValidArn = Boolean(isArn && partition && service && bucket);
+      if (isArn && !isValidArn) {
+        throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);
+      }
+      return isValidArn;
+    }, "isArnBucketName");
+    var createConfigValueProvider = /* @__PURE__ */ __name2((configKey, canonicalEndpointParamKey, config) => {
+      const configProvider = /* @__PURE__ */ __name2(async () => {
+        const configValue = config[configKey] ?? config[canonicalEndpointParamKey];
+        if (typeof configValue === "function") {
+          return configValue();
+        }
+        return configValue;
+      }, "configProvider");
+      if (configKey === "credentialScope" || canonicalEndpointParamKey === "CredentialScope") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.credentialScope) ?? (credentials == null ? void 0 : credentials.CredentialScope);
+          return configValue;
+        };
+      }
+      if (configKey === "accountId" || canonicalEndpointParamKey === "AccountId") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.accountId) ?? (credentials == null ? void 0 : credentials.AccountId);
+          return configValue;
+        };
+      }
+      if (configKey === "endpoint" || canonicalEndpointParamKey === "endpoint") {
+        return async () => {
+          const endpoint = await configProvider();
+          if (endpoint && typeof endpoint === "object") {
+            if ("url" in endpoint) {
+              return endpoint.url.href;
+            }
+            if ("hostname" in endpoint) {
+              const { protocol, hostname, port, path: path23 } = endpoint;
+              return `${protocol}//${hostname}${port ? ":" + port : ""}${path23}`;
+            }
+          }
+          return endpoint;
+        };
+      }
+      return configProvider;
+    }, "createConfigValueProvider");
+    var import_getEndpointFromConfig = require_getEndpointFromConfig();
+    var import_url_parser = require_dist_cjs28();
+    var toEndpointV1 = /* @__PURE__ */ __name2((endpoint) => {
+      if (typeof endpoint === "object") {
+        if ("url" in endpoint) {
+          return (0, import_url_parser.parseUrl)(endpoint.url);
+        }
+        return endpoint;
+      }
+      return (0, import_url_parser.parseUrl)(endpoint);
+    }, "toEndpointV1");
+    var getEndpointFromInstructions = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig, context) => {
+      if (!clientConfig.endpoint) {
+        let endpointFromConfig;
+        if (clientConfig.serviceConfiguredEndpoint) {
+          endpointFromConfig = await clientConfig.serviceConfiguredEndpoint();
+        } else {
+          endpointFromConfig = await (0, import_getEndpointFromConfig.getEndpointFromConfig)(clientConfig.serviceId);
+        }
+        if (endpointFromConfig) {
+          clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));
+        }
+      }
+      const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);
+      if (typeof clientConfig.endpointProvider !== "function") {
+        throw new Error("config.endpointProvider is not set.");
+      }
+      const endpoint = clientConfig.endpointProvider(endpointParams, context);
+      return endpoint;
+    }, "getEndpointFromInstructions");
+    var resolveParams = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig) => {
+      var _a7;
+      const endpointParams = {};
+      const instructions = ((_a7 = instructionsSupplier == null ? void 0 : instructionsSupplier.getEndpointParameterInstructions) == null ? void 0 : _a7.call(instructionsSupplier)) || {};
+      for (const [name, instruction] of Object.entries(instructions)) {
+        switch (instruction.type) {
+          case "staticContextParams":
+            endpointParams[name] = instruction.value;
+            break;
+          case "contextParams":
+            endpointParams[name] = commandInput[instruction.name];
+            break;
+          case "clientContextParams":
+          case "builtInParams":
+            endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();
+            break;
+          case "operationContextParams":
+            endpointParams[name] = instruction.get(commandInput);
+            break;
+          default:
+            throw new Error("Unrecognized endpoint parameter instruction: " + JSON.stringify(instruction));
+        }
+      }
+      if (Object.keys(instructions).length === 0) {
+        Object.assign(endpointParams, clientConfig);
+      }
+      if (String(clientConfig.serviceId).toLowerCase() === "s3") {
+        await resolveParamsForS3(endpointParams);
+      }
+      return endpointParams;
+    }, "resolveParams");
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_util_middleware3 = require_dist_cjs10();
+    var endpointMiddleware = /* @__PURE__ */ __name2(({
+      config,
+      instructions
+    }) => {
+      return (next, context) => async (args) => {
+        var _a7, _b, _c;
+        if (config.endpoint) {
+          (0, import_core4.setFeature)(context, "ENDPOINT_OVERRIDE", "N");
+        }
+        const endpoint = await getEndpointFromInstructions(
+          args.input,
+          {
+            getEndpointParameterInstructions() {
+              return instructions;
+            }
+          },
+          { ...config },
+          context
+        );
+        context.endpointV2 = endpoint;
+        context.authSchemes = (_a7 = endpoint.properties) == null ? void 0 : _a7.authSchemes;
+        const authScheme = (_b = context.authSchemes) == null ? void 0 : _b[0];
+        if (authScheme) {
+          context["signing_region"] = authScheme.signingRegion;
+          context["signing_service"] = authScheme.signingName;
+          const smithyContext = (0, import_util_middleware3.getSmithyContext)(context);
+          const httpAuthOption = (_c = smithyContext == null ? void 0 : smithyContext.selectedHttpAuthScheme) == null ? void 0 : _c.httpAuthOption;
+          if (httpAuthOption) {
+            httpAuthOption.signingProperties = Object.assign(
+              httpAuthOption.signingProperties || {},
+              {
+                signing_region: authScheme.signingRegion,
+                signingRegion: authScheme.signingRegion,
+                signing_service: authScheme.signingName,
+                signingName: authScheme.signingName,
+                signingRegionSet: authScheme.signingRegionSet
+              },
+              authScheme.properties
+            );
+          }
+        }
+        return next({
+          ...args
+        });
+      };
+    }, "endpointMiddleware");
+    var import_middleware_serde2 = require_dist_cjs12();
+    var endpointMiddlewareOptions = {
+      step: "serialize",
+      tags: ["ENDPOINT_PARAMETERS", "ENDPOINT_V2", "ENDPOINT"],
+      name: "endpointV2Middleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde2.serializerMiddlewareOption.name
+    };
+    var getEndpointPlugin = /* @__PURE__ */ __name2((config, instructions) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(
+          endpointMiddleware({
+            config,
+            instructions
+          }),
+          endpointMiddlewareOptions
+        );
+      }
+    }), "getEndpointPlugin");
+    var import_getEndpointFromConfig2 = require_getEndpointFromConfig();
+    var resolveEndpointConfig = /* @__PURE__ */ __name2((input) => {
+      const tls = input.tls ?? true;
+      const { endpoint } = input;
+      const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await (0, import_util_middleware3.normalizeProvider)(endpoint)()) : void 0;
+      const isCustomEndpoint = !!endpoint;
+      const resolvedConfig = {
+        ...input,
+        endpoint: customEndpointProvider,
+        tls,
+        isCustomEndpoint,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false),
+        useFipsEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useFipsEndpoint ?? false)
+      };
+      let configuredEndpointPromise = void 0;
+      resolvedConfig.serviceConfiguredEndpoint = async () => {
+        if (input.serviceId && !configuredEndpointPromise) {
+          configuredEndpointPromise = (0, import_getEndpointFromConfig2.getEndpointFromConfig)(input.serviceId);
+        }
+        return configuredEndpointPromise;
+      };
+      return resolvedConfig;
+    }, "resolveEndpointConfig");
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/rng.js
+function rng() {
+  if (poolPtr > rnds8Pool.length - 16) {
+    import_crypto.default.randomFillSync(rnds8Pool);
+    poolPtr = 0;
+  }
+  return rnds8Pool.slice(poolPtr, poolPtr += 16);
+}
+var import_crypto, rnds8Pool, poolPtr;
+var init_rng = __esm({
+  "../../../node_modules/uuid/dist/esm-node/rng.js"() {
+    import_crypto = __toESM(require("crypto"));
+    rnds8Pool = new Uint8Array(256);
+    poolPtr = rnds8Pool.length;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/regex.js
+var regex_default;
+var init_regex = __esm({
+  "../../../node_modules/uuid/dist/esm-node/regex.js"() {
+    regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/validate.js
+function validate(uuid) {
+  return typeof uuid === "string" && regex_default.test(uuid);
+}
+var validate_default;
+var init_validate = __esm({
+  "../../../node_modules/uuid/dist/esm-node/validate.js"() {
+    init_regex();
+    validate_default = validate;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/stringify.js
+function unsafeStringify(arr, offset = 0) {
+  return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
+}
+function stringify2(arr, offset = 0) {
+  const uuid = unsafeStringify(arr, offset);
+  if (!validate_default(uuid)) {
+    throw TypeError("Stringified UUID is invalid");
+  }
+  return uuid;
+}
+var byteToHex, stringify_default;
+var init_stringify = __esm({
+  "../../../node_modules/uuid/dist/esm-node/stringify.js"() {
+    init_validate();
+    byteToHex = [];
+    for (let i = 0; i < 256; ++i) {
+      byteToHex.push((i + 256).toString(16).slice(1));
+    }
+    stringify_default = stringify2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v1.js
+function v1(options, buf, offset) {
+  let i = buf && offset || 0;
+  const b = buf || new Array(16);
+  options = options || {};
+  let node = options.node || _nodeId;
+  let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq;
+  if (node == null || clockseq == null) {
+    const seedBytes = options.random || (options.rng || rng)();
+    if (node == null) {
+      node = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]];
+    }
+    if (clockseq == null) {
+      clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383;
+    }
+  }
+  let msecs = options.msecs !== void 0 ? options.msecs : Date.now();
+  let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1;
+  const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4;
+  if (dt < 0 && options.clockseq === void 0) {
+    clockseq = clockseq + 1 & 16383;
+  }
+  if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) {
+    nsecs = 0;
+  }
+  if (nsecs >= 1e4) {
+    throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");
+  }
+  _lastMSecs = msecs;
+  _lastNSecs = nsecs;
+  _clockseq = clockseq;
+  msecs += 122192928e5;
+  const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296;
+  b[i++] = tl >>> 24 & 255;
+  b[i++] = tl >>> 16 & 255;
+  b[i++] = tl >>> 8 & 255;
+  b[i++] = tl & 255;
+  const tmh = msecs / 4294967296 * 1e4 & 268435455;
+  b[i++] = tmh >>> 8 & 255;
+  b[i++] = tmh & 255;
+  b[i++] = tmh >>> 24 & 15 | 16;
+  b[i++] = tmh >>> 16 & 255;
+  b[i++] = clockseq >>> 8 | 128;
+  b[i++] = clockseq & 255;
+  for (let n = 0; n < 6; ++n) {
+    b[i + n] = node[n];
+  }
+  return buf || unsafeStringify(b);
+}
+var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default;
+var init_v1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v1.js"() {
+    init_rng();
+    init_stringify();
+    _lastMSecs = 0;
+    _lastNSecs = 0;
+    v1_default = v1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/parse.js
+function parse(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  let v;
+  const arr = new Uint8Array(16);
+  arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;
+  arr[1] = v >>> 16 & 255;
+  arr[2] = v >>> 8 & 255;
+  arr[3] = v & 255;
+  arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8;
+  arr[5] = v & 255;
+  arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8;
+  arr[7] = v & 255;
+  arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8;
+  arr[9] = v & 255;
+  arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255;
+  arr[11] = v / 4294967296 & 255;
+  arr[12] = v >>> 24 & 255;
+  arr[13] = v >>> 16 & 255;
+  arr[14] = v >>> 8 & 255;
+  arr[15] = v & 255;
+  return arr;
+}
+var parse_default;
+var init_parse = __esm({
+  "../../../node_modules/uuid/dist/esm-node/parse.js"() {
+    init_validate();
+    parse_default = parse;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v35.js
+function stringToBytes(str) {
+  str = unescape(encodeURIComponent(str));
+  const bytes = [];
+  for (let i = 0; i < str.length; ++i) {
+    bytes.push(str.charCodeAt(i));
+  }
+  return bytes;
+}
+function v35(name, version3, hashfunc) {
+  function generateUUID(value, namespace, buf, offset) {
+    var _namespace;
+    if (typeof value === "string") {
+      value = stringToBytes(value);
+    }
+    if (typeof namespace === "string") {
+      namespace = parse_default(namespace);
+    }
+    if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) {
+      throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");
+    }
+    let bytes = new Uint8Array(16 + value.length);
+    bytes.set(namespace);
+    bytes.set(value, namespace.length);
+    bytes = hashfunc(bytes);
+    bytes[6] = bytes[6] & 15 | version3;
+    bytes[8] = bytes[8] & 63 | 128;
+    if (buf) {
+      offset = offset || 0;
+      for (let i = 0; i < 16; ++i) {
+        buf[offset + i] = bytes[i];
+      }
+      return buf;
+    }
+    return unsafeStringify(bytes);
+  }
+  try {
+    generateUUID.name = name;
+  } catch (err) {
+  }
+  generateUUID.DNS = DNS;
+  generateUUID.URL = URL2;
+  return generateUUID;
+}
+var DNS, URL2;
+var init_v35 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v35.js"() {
+    init_stringify();
+    init_parse();
+    DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8";
+    URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/md5.js
+function md5(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto2.default.createHash("md5").update(bytes).digest();
+}
+var import_crypto2, md5_default;
+var init_md52 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/md5.js"() {
+    import_crypto2 = __toESM(require("crypto"));
+    md5_default = md5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v3.js
+var v3, v3_default;
+var init_v3 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v3.js"() {
+    init_v35();
+    init_md52();
+    v3 = v35("v3", 48, md5_default);
+    v3_default = v3;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/native.js
+var import_crypto3, native_default;
+var init_native = __esm({
+  "../../../node_modules/uuid/dist/esm-node/native.js"() {
+    import_crypto3 = __toESM(require("crypto"));
+    native_default = {
+      randomUUID: import_crypto3.default.randomUUID
+    };
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v4.js
+function v4(options, buf, offset) {
+  if (native_default.randomUUID && !buf && !options) {
+    return native_default.randomUUID();
+  }
+  options = options || {};
+  const rnds = options.random || (options.rng || rng)();
+  rnds[6] = rnds[6] & 15 | 64;
+  rnds[8] = rnds[8] & 63 | 128;
+  if (buf) {
+    offset = offset || 0;
+    for (let i = 0; i < 16; ++i) {
+      buf[offset + i] = rnds[i];
+    }
+    return buf;
+  }
+  return unsafeStringify(rnds);
+}
+var v4_default;
+var init_v4 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v4.js"() {
+    init_native();
+    init_rng();
+    init_stringify();
+    v4_default = v4;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/sha1.js
+function sha1(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto4.default.createHash("sha1").update(bytes).digest();
+}
+var import_crypto4, sha1_default;
+var init_sha1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/sha1.js"() {
+    import_crypto4 = __toESM(require("crypto"));
+    sha1_default = sha1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v5.js
+var v5, v5_default;
+var init_v5 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v5.js"() {
+    init_v35();
+    init_sha1();
+    v5 = v35("v5", 80, sha1_default);
+    v5_default = v5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/nil.js
+var nil_default;
+var init_nil = __esm({
+  "../../../node_modules/uuid/dist/esm-node/nil.js"() {
+    nil_default = "00000000-0000-0000-0000-000000000000";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/version.js
+function version2(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  return parseInt(uuid.slice(14, 15), 16);
+}
+var version_default;
+var init_version = __esm({
+  "../../../node_modules/uuid/dist/esm-node/version.js"() {
+    init_validate();
+    version_default = version2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/index.js
+var esm_node_exports = {};
+__export(esm_node_exports, {
+  NIL: () => nil_default,
+  parse: () => parse_default,
+  stringify: () => stringify_default,
+  v1: () => v1_default,
+  v3: () => v3_default,
+  v4: () => v4_default,
+  v5: () => v5_default,
+  validate: () => validate_default,
+  version: () => version_default
+});
+var init_esm_node = __esm({
+  "../../../node_modules/uuid/dist/esm-node/index.js"() {
+    init_v1();
+    init_v3();
+    init_v4();
+    init_v5();
+    init_nil();
+    init_version();
+    init_validate();
+    init_stringify();
+    init_parse();
+  }
+});
+
+// ../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js
+var require_dist_cjs30 = __commonJS({
+  "../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isClockSkewCorrectedError: () => isClockSkewCorrectedError,
+      isClockSkewError: () => isClockSkewError,
+      isRetryableByTrait: () => isRetryableByTrait,
+      isServerError: () => isServerError,
+      isThrottlingError: () => isThrottlingError,
+      isTransientError: () => isTransientError
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var CLOCK_SKEW_ERROR_CODES = [
+      "AuthFailure",
+      "InvalidSignatureException",
+      "RequestExpired",
+      "RequestInTheFuture",
+      "RequestTimeTooSkewed",
+      "SignatureDoesNotMatch"
+    ];
+    var THROTTLING_ERROR_CODES = [
+      "BandwidthLimitExceeded",
+      "EC2ThrottledException",
+      "LimitExceededException",
+      "PriorRequestNotComplete",
+      "ProvisionedThroughputExceededException",
+      "RequestLimitExceeded",
+      "RequestThrottled",
+      "RequestThrottledException",
+      "SlowDown",
+      "ThrottledException",
+      "Throttling",
+      "ThrottlingException",
+      "TooManyRequestsException",
+      "TransactionInProgressException"
+      // DynamoDB
+    ];
+    var TRANSIENT_ERROR_CODES = ["TimeoutError", "RequestTimeout", "RequestTimeoutException"];
+    var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"];
+    var isRetryableByTrait = /* @__PURE__ */ __name2((error) => error.$retryable !== void 0, "isRetryableByTrait");
+    var isClockSkewError = /* @__PURE__ */ __name2((error) => CLOCK_SKEW_ERROR_CODES.includes(error.name), "isClockSkewError");
+    var isClockSkewCorrectedError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      return (_a7 = error.$metadata) == null ? void 0 : _a7.clockSkewCorrected;
+    }, "isClockSkewCorrectedError");
+    var isThrottlingError = /* @__PURE__ */ __name2((error) => {
+      var _a7, _b;
+      return ((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) === 429 || THROTTLING_ERROR_CODES.includes(error.name) || ((_b = error.$retryable) == null ? void 0 : _b.throttling) == true;
+    }, "isThrottlingError");
+    var isTransientError = /* @__PURE__ */ __name2((error, depth = 0) => {
+      var _a7;
+      return isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || "") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) || 0) || error.cause !== void 0 && depth <= 10 && isTransientError(error.cause, depth + 1);
+    }, "isTransientError");
+    var isServerError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      if (((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) !== void 0) {
+        const statusCode = error.$metadata.httpStatusCode;
+        if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {
+          return true;
+        }
+        return false;
+      }
+      return false;
+    }, "isServerError");
+  }
+});
+
+// ../../../node_modules/@smithy/util-retry/dist-cjs/index.js
+var require_dist_cjs31 = __commonJS({
+  "../../../node_modules/@smithy/util-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      ConfiguredRetryStrategy: () => ConfiguredRetryStrategy,
+      DEFAULT_MAX_ATTEMPTS: () => DEFAULT_MAX_ATTEMPTS,
+      DEFAULT_RETRY_DELAY_BASE: () => DEFAULT_RETRY_DELAY_BASE,
+      DEFAULT_RETRY_MODE: () => DEFAULT_RETRY_MODE,
+      DefaultRateLimiter: () => DefaultRateLimiter,
+      INITIAL_RETRY_TOKENS: () => INITIAL_RETRY_TOKENS,
+      INVOCATION_ID_HEADER: () => INVOCATION_ID_HEADER,
+      MAXIMUM_RETRY_DELAY: () => MAXIMUM_RETRY_DELAY,
+      NO_RETRY_INCREMENT: () => NO_RETRY_INCREMENT,
+      REQUEST_HEADER: () => REQUEST_HEADER,
+      RETRY_COST: () => RETRY_COST,
+      RETRY_MODES: () => RETRY_MODES,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      THROTTLING_RETRY_DELAY_BASE: () => THROTTLING_RETRY_DELAY_BASE,
+      TIMEOUT_RETRY_COST: () => TIMEOUT_RETRY_COST
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var RETRY_MODES = /* @__PURE__ */ ((RETRY_MODES2) => {
+      RETRY_MODES2["STANDARD"] = "standard";
+      RETRY_MODES2["ADAPTIVE"] = "adaptive";
+      return RETRY_MODES2;
+    })(RETRY_MODES || {});
+    var DEFAULT_MAX_ATTEMPTS = 3;
+    var DEFAULT_RETRY_MODE = "standard";
+    var import_service_error_classification = require_dist_cjs30();
+    var _DefaultRateLimiter = class _DefaultRateLimiter2 {
+      constructor(options) {
+        this.currentCapacity = 0;
+        this.enabled = false;
+        this.lastMaxRate = 0;
+        this.measuredTxRate = 0;
+        this.requestCount = 0;
+        this.lastTimestamp = 0;
+        this.timeWindow = 0;
+        this.beta = (options == null ? void 0 : options.beta) ?? 0.7;
+        this.minCapacity = (options == null ? void 0 : options.minCapacity) ?? 1;
+        this.minFillRate = (options == null ? void 0 : options.minFillRate) ?? 0.5;
+        this.scaleConstant = (options == null ? void 0 : options.scaleConstant) ?? 0.4;
+        this.smooth = (options == null ? void 0 : options.smooth) ?? 0.8;
+        const currentTimeInSeconds = this.getCurrentTimeInSeconds();
+        this.lastThrottleTime = currentTimeInSeconds;
+        this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());
+        this.fillRate = this.minFillRate;
+        this.maxCapacity = this.minCapacity;
+      }
+      getCurrentTimeInSeconds() {
+        return Date.now() / 1e3;
+      }
+      async getSendToken() {
+        return this.acquireTokenBucket(1);
+      }
+      async acquireTokenBucket(amount) {
+        if (!this.enabled) {
+          return;
+        }
+        this.refillTokenBucket();
+        if (amount > this.currentCapacity) {
+          const delay = (amount - this.currentCapacity) / this.fillRate * 1e3;
+          await new Promise((resolve6) => _DefaultRateLimiter2.setTimeoutFn(resolve6, delay));
+        }
+        this.currentCapacity = this.currentCapacity - amount;
+      }
+      refillTokenBucket() {
+        const timestamp = this.getCurrentTimeInSeconds();
+        if (!this.lastTimestamp) {
+          this.lastTimestamp = timestamp;
+          return;
+        }
+        const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;
+        this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);
+        this.lastTimestamp = timestamp;
+      }
+      updateClientSendingRate(response) {
+        let calculatedRate;
+        this.updateMeasuredRate();
+        if ((0, import_service_error_classification.isThrottlingError)(response)) {
+          const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);
+          this.lastMaxRate = rateToUse;
+          this.calculateTimeWindow();
+          this.lastThrottleTime = this.getCurrentTimeInSeconds();
+          calculatedRate = this.cubicThrottle(rateToUse);
+          this.enableTokenBucket();
+        } else {
+          this.calculateTimeWindow();
+          calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());
+        }
+        const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);
+        this.updateTokenBucketRate(newRate);
+      }
+      calculateTimeWindow() {
+        this.timeWindow = this.getPrecise(Math.pow(this.lastMaxRate * (1 - this.beta) / this.scaleConstant, 1 / 3));
+      }
+      cubicThrottle(rateToUse) {
+        return this.getPrecise(rateToUse * this.beta);
+      }
+      cubicSuccess(timestamp) {
+        return this.getPrecise(
+          this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate
+        );
+      }
+      enableTokenBucket() {
+        this.enabled = true;
+      }
+      updateTokenBucketRate(newRate) {
+        this.refillTokenBucket();
+        this.fillRate = Math.max(newRate, this.minFillRate);
+        this.maxCapacity = Math.max(newRate, this.minCapacity);
+        this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);
+      }
+      updateMeasuredRate() {
+        const t = this.getCurrentTimeInSeconds();
+        const timeBucket = Math.floor(t * 2) / 2;
+        this.requestCount++;
+        if (timeBucket > this.lastTxRateBucket) {
+          const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);
+          this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));
+          this.requestCount = 0;
+          this.lastTxRateBucket = timeBucket;
+        }
+      }
+      getPrecise(num) {
+        return parseFloat(num.toFixed(8));
+      }
+    };
+    __name2(_DefaultRateLimiter, "DefaultRateLimiter");
+    _DefaultRateLimiter.setTimeoutFn = setTimeout;
+    var DefaultRateLimiter = _DefaultRateLimiter;
+    var DEFAULT_RETRY_DELAY_BASE = 100;
+    var MAXIMUM_RETRY_DELAY = 20 * 1e3;
+    var THROTTLING_RETRY_DELAY_BASE = 500;
+    var INITIAL_RETRY_TOKENS = 500;
+    var RETRY_COST = 5;
+    var TIMEOUT_RETRY_COST = 10;
+    var NO_RETRY_INCREMENT = 1;
+    var INVOCATION_ID_HEADER = "amz-sdk-invocation-id";
+    var REQUEST_HEADER = "amz-sdk-request";
+    var getDefaultRetryBackoffStrategy = /* @__PURE__ */ __name2(() => {
+      let delayBase = DEFAULT_RETRY_DELAY_BASE;
+      const computeNextBackoffDelay = /* @__PURE__ */ __name2((attempts) => {
+        return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));
+      }, "computeNextBackoffDelay");
+      const setDelayBase = /* @__PURE__ */ __name2((delay) => {
+        delayBase = delay;
+      }, "setDelayBase");
+      return {
+        computeNextBackoffDelay,
+        setDelayBase
+      };
+    }, "getDefaultRetryBackoffStrategy");
+    var createDefaultRetryToken = /* @__PURE__ */ __name2(({
+      retryDelay,
+      retryCount,
+      retryCost
+    }) => {
+      const getRetryCount = /* @__PURE__ */ __name2(() => retryCount, "getRetryCount");
+      const getRetryDelay = /* @__PURE__ */ __name2(() => Math.min(MAXIMUM_RETRY_DELAY, retryDelay), "getRetryDelay");
+      const getRetryCost = /* @__PURE__ */ __name2(() => retryCost, "getRetryCost");
+      return {
+        getRetryCount,
+        getRetryDelay,
+        getRetryCost
+      };
+    }, "createDefaultRetryToken");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttempts) {
+        this.maxAttempts = maxAttempts;
+        this.mode = "standard";
+        this.capacity = INITIAL_RETRY_TOKENS;
+        this.retryBackoffStrategy = getDefaultRetryBackoffStrategy();
+        this.maxAttemptsProvider = typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts;
+      }
+      // eslint-disable-next-line @typescript-eslint/no-unused-vars
+      async acquireInitialRetryToken(retryTokenScope) {
+        return createDefaultRetryToken({
+          retryDelay: DEFAULT_RETRY_DELAY_BASE,
+          retryCount: 0
+        });
+      }
+      async refreshRetryTokenForRetry(token, errorInfo) {
+        const maxAttempts = await this.getMaxAttempts();
+        if (this.shouldRetry(token, errorInfo, maxAttempts)) {
+          const errorType = errorInfo.errorType;
+          this.retryBackoffStrategy.setDelayBase(
+            errorType === "THROTTLING" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE
+          );
+          const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());
+          const retryDelay = errorInfo.retryAfterHint ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType) : delayFromErrorType;
+          const capacityCost = this.getCapacityCost(errorType);
+          this.capacity -= capacityCost;
+          return createDefaultRetryToken({
+            retryDelay,
+            retryCount: token.getRetryCount() + 1,
+            retryCost: capacityCost
+          });
+        }
+        throw new Error("No retry token available");
+      }
+      recordSuccess(token) {
+        this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));
+      }
+      /**
+       * @returns the current available retry capacity.
+       *
+       * This number decreases when retries are executed and refills when requests or retries succeed.
+       */
+      getCapacity() {
+        return this.capacity;
+      }
+      async getMaxAttempts() {
+        try {
+          return await this.maxAttemptsProvider();
+        } catch (error) {
+          console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);
+          return DEFAULT_MAX_ATTEMPTS;
+        }
+      }
+      shouldRetry(tokenToRenew, errorInfo, maxAttempts) {
+        const attempts = tokenToRenew.getRetryCount() + 1;
+        return attempts < maxAttempts && this.capacity >= this.getCapacityCost(errorInfo.errorType) && this.isRetryableError(errorInfo.errorType);
+      }
+      getCapacityCost(errorType) {
+        return errorType === "TRANSIENT" ? TIMEOUT_RETRY_COST : RETRY_COST;
+      }
+      isRetryableError(errorType) {
+        return errorType === "THROTTLING" || errorType === "TRANSIENT";
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = "adaptive";
+        const { rateLimiter } = options ?? {};
+        this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();
+        this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);
+      }
+      async acquireInitialRetryToken(retryTokenScope) {
+        await this.rateLimiter.getSendToken();
+        return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        this.rateLimiter.updateClientSendingRate(errorInfo);
+        return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+      }
+      recordSuccess(token) {
+        this.rateLimiter.updateClientSendingRate({});
+        this.standardRetryStrategy.recordSuccess(token);
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var _ConfiguredRetryStrategy = class _ConfiguredRetryStrategy extends StandardRetryStrategy {
+      /**
+       * @param maxAttempts - the maximum number of retry attempts allowed.
+       *                      e.g., if set to 3, then 4 total requests are possible.
+       * @param computeNextBackoffDelay - a millisecond delay for each retry or a function that takes the retry attempt
+       *                                  and returns the delay.
+       *
+       * @example exponential backoff.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, (attempt) => attempt ** 2)
+       * });
+       * ```
+       * @example constant delay.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, 2000)
+       * });
+       * ```
+       */
+      constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) {
+        super(typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts);
+        if (typeof computeNextBackoffDelay === "number") {
+          this.computeNextBackoffDelay = () => computeNextBackoffDelay;
+        } else {
+          this.computeNextBackoffDelay = computeNextBackoffDelay;
+        }
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+        token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount());
+        return token;
+      }
+    };
+    __name2(_ConfiguredRetryStrategy, "ConfiguredRetryStrategy");
+    var ConfiguredRetryStrategy = _ConfiguredRetryStrategy;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js
+var require_dist_cjs32 = __commonJS({
+  "../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      constructStack: () => constructStack
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAllAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      const _aliases = [];
+      if (name) {
+        _aliases.push(name);
+      }
+      if (aliases) {
+        for (const alias of aliases) {
+          _aliases.push(alias);
+        }
+      }
+      return _aliases;
+    }, "getAllAliases");
+    var getMiddlewareNameWithAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      return `${name || "anonymous"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(",")})` : ""}`;
+    }, "getMiddlewareNameWithAliases");
+    var constructStack = /* @__PURE__ */ __name2(() => {
+      let absoluteEntries = [];
+      let relativeEntries = [];
+      let identifyOnResolve = false;
+      const entriesNameSet = /* @__PURE__ */ new Set();
+      const sort = /* @__PURE__ */ __name2((entries) => entries.sort(
+        (a, b) => stepWeights[b.step] - stepWeights[a.step] || priorityWeights[b.priority || "normal"] - priorityWeights[a.priority || "normal"]
+      ), "sort");
+      const removeByName = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          const aliases = getAllAliases(entry.name, entry.aliases);
+          if (aliases.includes(toRemove)) {
+            isRemoved = true;
+            for (const alias of aliases) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByName");
+      const removeByReference = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          if (entry.middleware === toRemove) {
+            isRemoved = true;
+            for (const alias of getAllAliases(entry.name, entry.aliases)) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByReference");
+      const cloneTo = /* @__PURE__ */ __name2((toStack) => {
+        var _a7;
+        absoluteEntries.forEach((entry) => {
+          toStack.add(entry.middleware, { ...entry });
+        });
+        relativeEntries.forEach((entry) => {
+          toStack.addRelativeTo(entry.middleware, { ...entry });
+        });
+        (_a7 = toStack.identifyOnResolve) == null ? void 0 : _a7.call(toStack, stack.identifyOnResolve());
+        return toStack;
+      }, "cloneTo");
+      const expandRelativeMiddlewareList = /* @__PURE__ */ __name2((from) => {
+        const expandedMiddlewareList = [];
+        from.before.forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        expandedMiddlewareList.push(from);
+        from.after.reverse().forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        return expandedMiddlewareList;
+      }, "expandRelativeMiddlewareList");
+      const getMiddlewareList = /* @__PURE__ */ __name2((debug = false) => {
+        const normalizedAbsoluteEntries = [];
+        const normalizedRelativeEntries = [];
+        const normalizedEntriesNameMap = {};
+        absoluteEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedAbsoluteEntries.push(normalizedEntry);
+        });
+        relativeEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedRelativeEntries.push(normalizedEntry);
+        });
+        normalizedRelativeEntries.forEach((entry) => {
+          if (entry.toMiddleware) {
+            const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];
+            if (toMiddleware === void 0) {
+              if (debug) {
+                return;
+              }
+              throw new Error(
+                `${entry.toMiddleware} is not found when adding ${getMiddlewareNameWithAliases(entry.name, entry.aliases)} middleware ${entry.relation} ${entry.toMiddleware}`
+              );
+            }
+            if (entry.relation === "after") {
+              toMiddleware.after.push(entry);
+            }
+            if (entry.relation === "before") {
+              toMiddleware.before.push(entry);
+            }
+          }
+        });
+        const mainChain = sort(normalizedAbsoluteEntries).map(expandRelativeMiddlewareList).reduce(
+          (wholeList, expandedMiddlewareList) => {
+            wholeList.push(...expandedMiddlewareList);
+            return wholeList;
+          },
+          []
+        );
+        return mainChain;
+      }, "getMiddlewareList");
+      const stack = {
+        add: (middleware, options = {}) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            step: "initialize",
+            priority: "normal",
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = absoluteEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = absoluteEntries[toOverrideIndex];
+                if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware with ${toOverride.priority} priority in ${toOverride.step} step cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware with ${entry.priority} priority in ${entry.step} step.`
+                  );
+                }
+                absoluteEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          absoluteEntries.push(entry);
+        },
+        addRelativeTo: (middleware, options) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = relativeEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = relativeEntries[toOverrideIndex];
+                if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware ${toOverride.relation} "${toOverride.toMiddleware}" middleware cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware ${entry.relation} "${entry.toMiddleware}" middleware.`
+                  );
+                }
+                relativeEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          relativeEntries.push(entry);
+        },
+        clone: () => cloneTo(constructStack()),
+        use: (plugin) => {
+          plugin.applyToStack(stack);
+        },
+        remove: (toRemove) => {
+          if (typeof toRemove === "string")
+            return removeByName(toRemove);
+          else
+            return removeByReference(toRemove);
+        },
+        removeByTag: (toRemove) => {
+          let isRemoved = false;
+          const filterCb = /* @__PURE__ */ __name2((entry) => {
+            const { tags, name, aliases: _aliases } = entry;
+            if (tags && tags.includes(toRemove)) {
+              const aliases = getAllAliases(name, _aliases);
+              for (const alias of aliases) {
+                entriesNameSet.delete(alias);
+              }
+              isRemoved = true;
+              return false;
+            }
+            return true;
+          }, "filterCb");
+          absoluteEntries = absoluteEntries.filter(filterCb);
+          relativeEntries = relativeEntries.filter(filterCb);
+          return isRemoved;
+        },
+        concat: (from) => {
+          var _a7;
+          const cloned = cloneTo(constructStack());
+          cloned.use(from);
+          cloned.identifyOnResolve(
+            identifyOnResolve || cloned.identifyOnResolve() || (((_a7 = from.identifyOnResolve) == null ? void 0 : _a7.call(from)) ?? false)
+          );
+          return cloned;
+        },
+        applyToStack: cloneTo,
+        identify: () => {
+          return getMiddlewareList(true).map((mw) => {
+            const step = mw.step ?? mw.relation + " " + mw.toMiddleware;
+            return getMiddlewareNameWithAliases(mw.name, mw.aliases) + " - " + step;
+          });
+        },
+        identifyOnResolve(toggle) {
+          if (typeof toggle === "boolean")
+            identifyOnResolve = toggle;
+          return identifyOnResolve;
+        },
+        resolve: (handler2, context) => {
+          for (const middleware of getMiddlewareList().map((entry) => entry.middleware).reverse()) {
+            handler2 = middleware(handler2, context);
+          }
+          if (identifyOnResolve) {
+            console.log(stack.identify());
+          }
+          return handler2;
+        }
+      };
+      return stack;
+    }, "constructStack");
+    var stepWeights = {
+      initialize: 5,
+      serialize: 4,
+      build: 3,
+      finalizeRequest: 2,
+      deserialize: 1
+    };
+    var priorityWeights = {
+      high: 3,
+      normal: 2,
+      low: 1
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/smithy-client/dist-cjs/index.js
+var require_dist_cjs33 = __commonJS({
+  "../../../node_modules/@smithy/smithy-client/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Client: () => Client,
+      Command: () => Command,
+      LazyJsonString: () => LazyJsonString,
+      NoOpLogger: () => NoOpLogger,
+      SENSITIVE_STRING: () => SENSITIVE_STRING,
+      ServiceException: () => ServiceException,
+      _json: () => _json,
+      collectBody: () => import_protocols2.collectBody,
+      convertMap: () => convertMap,
+      createAggregatedClient: () => createAggregatedClient,
+      dateToUtcString: () => dateToUtcString,
+      decorateServiceException: () => decorateServiceException,
+      emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion2,
+      expectBoolean: () => expectBoolean,
+      expectByte: () => expectByte,
+      expectFloat32: () => expectFloat32,
+      expectInt: () => expectInt,
+      expectInt32: () => expectInt32,
+      expectLong: () => expectLong,
+      expectNonNull: () => expectNonNull,
+      expectNumber: () => expectNumber,
+      expectObject: () => expectObject,
+      expectShort: () => expectShort,
+      expectString: () => expectString,
+      expectUnion: () => expectUnion2,
+      extendedEncodeURIComponent: () => import_protocols2.extendedEncodeURIComponent,
+      getArrayIfSingleItem: () => getArrayIfSingleItem,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      getDefaultExtensionConfiguration: () => getDefaultExtensionConfiguration,
+      getValueFromTextNode: () => getValueFromTextNode2,
+      handleFloat: () => handleFloat,
+      isSerializableHeaderValue: () => isSerializableHeaderValue,
+      limitedParseDouble: () => limitedParseDouble,
+      limitedParseFloat: () => limitedParseFloat,
+      limitedParseFloat32: () => limitedParseFloat32,
+      loadConfigsForDefaultMode: () => loadConfigsForDefaultMode,
+      logger: () => logger,
+      map: () => map,
+      parseBoolean: () => parseBoolean,
+      parseEpochTimestamp: () => parseEpochTimestamp,
+      parseRfc3339DateTime: () => parseRfc3339DateTime,
+      parseRfc3339DateTimeWithOffset: () => parseRfc3339DateTimeWithOffset,
+      parseRfc7231DateTime: () => parseRfc7231DateTime,
+      quoteHeader: () => quoteHeader,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig,
+      resolvedPath: () => import_protocols2.resolvedPath,
+      serializeDateTime: () => serializeDateTime,
+      serializeFloat: () => serializeFloat,
+      splitEvery: () => splitEvery,
+      splitHeader: () => splitHeader,
+      strictParseByte: () => strictParseByte,
+      strictParseDouble: () => strictParseDouble,
+      strictParseFloat: () => strictParseFloat,
+      strictParseFloat32: () => strictParseFloat32,
+      strictParseInt: () => strictParseInt,
+      strictParseInt32: () => strictParseInt32,
+      strictParseLong: () => strictParseLong,
+      strictParseShort: () => strictParseShort,
+      take: () => take,
+      throwDefaultError: () => throwDefaultError,
+      withBaseException: () => withBaseException
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_stack = require_dist_cjs32();
+    var _Client = class _Client {
+      constructor(config) {
+        this.config = config;
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      send(command, optionsOrCb, cb) {
+        const options = typeof optionsOrCb !== "function" ? optionsOrCb : void 0;
+        const callback = typeof optionsOrCb === "function" ? optionsOrCb : cb;
+        const useHandlerCache = options === void 0 && this.config.cacheMiddleware === true;
+        let handler2;
+        if (useHandlerCache) {
+          if (!this.handlers) {
+            this.handlers = /* @__PURE__ */ new WeakMap();
+          }
+          const handlers = this.handlers;
+          if (handlers.has(command.constructor)) {
+            handler2 = handlers.get(command.constructor);
+          } else {
+            handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+            handlers.set(command.constructor, handler2);
+          }
+        } else {
+          delete this.handlers;
+          handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+        }
+        if (callback) {
+          handler2(command).then(
+            (result) => callback(null, result.output),
+            (err) => callback(err)
+          ).catch(
+            // prevent any errors thrown in the callback from triggering an
+            // unhandled promise rejection
+            () => {
+            }
+          );
+        } else {
+          return handler2(command).then((result) => result.output);
+        }
+      }
+      destroy() {
+        var _a7, _b, _c;
+        (_c = (_b = (_a7 = this.config) == null ? void 0 : _a7.requestHandler) == null ? void 0 : _b.destroy) == null ? void 0 : _c.call(_b);
+        delete this.handlers;
+      }
+    };
+    __name2(_Client, "Client");
+    var Client = _Client;
+    var import_protocols2 = (init_protocols(), __toCommonJS(protocols_exports));
+    var import_types8 = require_dist_cjs();
+    var _Command = class _Command {
+      constructor() {
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      /**
+       * Factory for Command ClassBuilder.
+       * @internal
+       */
+      static classBuilder() {
+        return new ClassBuilder();
+      }
+      /**
+       * @internal
+       */
+      resolveMiddlewareWithContext(clientStack, configuration, options, {
+        middlewareFn,
+        clientName,
+        commandName,
+        inputFilterSensitiveLog,
+        outputFilterSensitiveLog,
+        smithyContext,
+        additionalContext,
+        CommandCtor
+      }) {
+        for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {
+          this.middlewareStack.use(mw);
+        }
+        const stack = clientStack.concat(this.middlewareStack);
+        const { logger: logger2 } = configuration;
+        const handlerExecutionContext = {
+          logger: logger2,
+          clientName,
+          commandName,
+          inputFilterSensitiveLog,
+          outputFilterSensitiveLog,
+          [import_types8.SMITHY_CONTEXT_KEY]: {
+            commandInstance: this,
+            ...smithyContext
+          },
+          ...additionalContext
+        };
+        const { requestHandler } = configuration;
+        return stack.resolve(
+          (request2) => requestHandler.handle(request2.request, options || {}),
+          handlerExecutionContext
+        );
+      }
+    };
+    __name2(_Command, "Command");
+    var Command = _Command;
+    var _ClassBuilder = class _ClassBuilder {
+      constructor() {
+        this._init = () => {
+        };
+        this._ep = {};
+        this._middlewareFn = () => [];
+        this._commandName = "";
+        this._clientName = "";
+        this._additionalContext = {};
+        this._smithyContext = {};
+        this._inputFilterSensitiveLog = (_) => _;
+        this._outputFilterSensitiveLog = (_) => _;
+        this._serializer = null;
+        this._deserializer = null;
+      }
+      /**
+       * Optional init callback.
+       */
+      init(cb) {
+        this._init = cb;
+      }
+      /**
+       * Set the endpoint parameter instructions.
+       */
+      ep(endpointParameterInstructions) {
+        this._ep = endpointParameterInstructions;
+        return this;
+      }
+      /**
+       * Add any number of middleware.
+       */
+      m(middlewareSupplier) {
+        this._middlewareFn = middlewareSupplier;
+        return this;
+      }
+      /**
+       * Set the initial handler execution context Smithy field.
+       */
+      s(service, operation, smithyContext = {}) {
+        this._smithyContext = {
+          service,
+          operation,
+          ...smithyContext
+        };
+        return this;
+      }
+      /**
+       * Set the initial handler execution context.
+       */
+      c(additionalContext = {}) {
+        this._additionalContext = additionalContext;
+        return this;
+      }
+      /**
+       * Set constant string identifiers for the operation.
+       */
+      n(clientName, commandName) {
+        this._clientName = clientName;
+        this._commandName = commandName;
+        return this;
+      }
+      /**
+       * Set the input and output sensistive log filters.
+       */
+      f(inputFilter = (_) => _, outputFilter = (_) => _) {
+        this._inputFilterSensitiveLog = inputFilter;
+        this._outputFilterSensitiveLog = outputFilter;
+        return this;
+      }
+      /**
+       * Sets the serializer.
+       */
+      ser(serializer) {
+        this._serializer = serializer;
+        return this;
+      }
+      /**
+       * Sets the deserializer.
+       */
+      de(deserializer) {
+        this._deserializer = deserializer;
+        return this;
+      }
+      /**
+       * @returns a Command class with the classBuilder properties.
+       */
+      build() {
+        var _a7;
+        const closure = this;
+        let CommandRef;
+        return CommandRef = (_a7 = class extends Command {
+          /**
+           * @public
+           */
+          constructor(...[input]) {
+            super();
+            this.serialize = closure._serializer;
+            this.deserialize = closure._deserializer;
+            this.input = input ?? {};
+            closure._init(this);
+          }
+          /**
+           * @public
+           */
+          static getEndpointParameterInstructions() {
+            return closure._ep;
+          }
+          /**
+           * @internal
+           */
+          resolveMiddleware(stack, configuration, options) {
+            return this.resolveMiddlewareWithContext(stack, configuration, options, {
+              CommandCtor: CommandRef,
+              middlewareFn: closure._middlewareFn,
+              clientName: closure._clientName,
+              commandName: closure._commandName,
+              inputFilterSensitiveLog: closure._inputFilterSensitiveLog,
+              outputFilterSensitiveLog: closure._outputFilterSensitiveLog,
+              smithyContext: closure._smithyContext,
+              additionalContext: closure._additionalContext
+            });
+          }
+        }, __name2(_a7, "CommandRef"), _a7);
+      }
+    };
+    __name2(_ClassBuilder, "ClassBuilder");
+    var ClassBuilder = _ClassBuilder;
+    var SENSITIVE_STRING = "***SensitiveInformation***";
+    var createAggregatedClient = /* @__PURE__ */ __name2((commands, Client2) => {
+      for (const command of Object.keys(commands)) {
+        const CommandCtor = commands[command];
+        const methodImpl = /* @__PURE__ */ __name2(async function(args, optionsOrCb, cb) {
+          const command2 = new CommandCtor(args);
+          if (typeof optionsOrCb === "function") {
+            this.send(command2, optionsOrCb);
+          } else if (typeof cb === "function") {
+            if (typeof optionsOrCb !== "object")
+              throw new Error(`Expected http options but got ${typeof optionsOrCb}`);
+            this.send(command2, optionsOrCb || {}, cb);
+          } else {
+            return this.send(command2, optionsOrCb);
+          }
+        }, "methodImpl");
+        const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
+        Client2.prototype[methodName] = methodImpl;
+      }
+    }, "createAggregatedClient");
+    var parseBoolean = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "true":
+          return true;
+        case "false":
+          return false;
+        default:
+          throw new Error(`Unable to parse boolean value "${value}"`);
+      }
+    }, "parseBoolean");
+    var expectBoolean = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "number") {
+        if (value === 0 || value === 1) {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (value === 0) {
+          return false;
+        }
+        if (value === 1) {
+          return true;
+        }
+      }
+      if (typeof value === "string") {
+        const lower = value.toLowerCase();
+        if (lower === "false" || lower === "true") {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (lower === "false") {
+          return false;
+        }
+        if (lower === "true") {
+          return true;
+        }
+      }
+      if (typeof value === "boolean") {
+        return value;
+      }
+      throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);
+    }, "expectBoolean");
+    var expectNumber = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        const parsed = parseFloat(value);
+        if (!Number.isNaN(parsed)) {
+          if (String(parsed) !== String(value)) {
+            logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));
+          }
+          return parsed;
+        }
+      }
+      if (typeof value === "number") {
+        return value;
+      }
+      throw new TypeError(`Expected number, got ${typeof value}: ${value}`);
+    }, "expectNumber");
+    var MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));
+    var expectFloat32 = /* @__PURE__ */ __name2((value) => {
+      const expected = expectNumber(value);
+      if (expected !== void 0 && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {
+        if (Math.abs(expected) > MAX_FLOAT) {
+          throw new TypeError(`Expected 32-bit float, got ${value}`);
+        }
+      }
+      return expected;
+    }, "expectFloat32");
+    var expectLong = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (Number.isInteger(value) && !Number.isNaN(value)) {
+        return value;
+      }
+      throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);
+    }, "expectLong");
+    var expectInt = expectLong;
+    var expectInt32 = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 32), "expectInt32");
+    var expectShort = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 16), "expectShort");
+    var expectByte = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 8), "expectByte");
+    var expectSizedInt = /* @__PURE__ */ __name2((value, size) => {
+      const expected = expectLong(value);
+      if (expected !== void 0 && castInt(expected, size) !== expected) {
+        throw new TypeError(`Expected ${size}-bit integer, got ${value}`);
+      }
+      return expected;
+    }, "expectSizedInt");
+    var castInt = /* @__PURE__ */ __name2((value, size) => {
+      switch (size) {
+        case 32:
+          return Int32Array.of(value)[0];
+        case 16:
+          return Int16Array.of(value)[0];
+        case 8:
+          return Int8Array.of(value)[0];
+      }
+    }, "castInt");
+    var expectNonNull = /* @__PURE__ */ __name2((value, location) => {
+      if (value === null || value === void 0) {
+        if (location) {
+          throw new TypeError(`Expected a non-null value for ${location}`);
+        }
+        throw new TypeError("Expected a non-null value");
+      }
+      return value;
+    }, "expectNonNull");
+    var expectObject = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "object" && !Array.isArray(value)) {
+        return value;
+      }
+      const receivedType = Array.isArray(value) ? "array" : typeof value;
+      throw new TypeError(`Expected object, got ${receivedType}: ${value}`);
+    }, "expectObject");
+    var expectString = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        return value;
+      }
+      if (["boolean", "number", "bigint"].includes(typeof value)) {
+        logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));
+        return String(value);
+      }
+      throw new TypeError(`Expected string, got ${typeof value}: ${value}`);
+    }, "expectString");
+    var expectUnion2 = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      const asObject = expectObject(value);
+      const setKeys = Object.entries(asObject).filter(([, v]) => v != null).map(([k]) => k);
+      if (setKeys.length === 0) {
+        throw new TypeError(`Unions must have exactly one non-null member. None were found.`);
+      }
+      if (setKeys.length > 1) {
+        throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);
+      }
+      return asObject;
+    }, "expectUnion");
+    var strictParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectNumber(parseNumber(value));
+      }
+      return expectNumber(value);
+    }, "strictParseDouble");
+    var strictParseFloat = strictParseDouble;
+    var strictParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectFloat32(parseNumber(value));
+      }
+      return expectFloat32(value);
+    }, "strictParseFloat32");
+    var NUMBER_REGEX = /(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g;
+    var parseNumber = /* @__PURE__ */ __name2((value) => {
+      const matches = value.match(NUMBER_REGEX);
+      if (matches === null || matches[0].length !== value.length) {
+        throw new TypeError(`Expected real number, got implicit NaN`);
+      }
+      return parseFloat(value);
+    }, "parseNumber");
+    var limitedParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectNumber(value);
+    }, "limitedParseDouble");
+    var handleFloat = limitedParseDouble;
+    var limitedParseFloat = limitedParseDouble;
+    var limitedParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectFloat32(value);
+    }, "limitedParseFloat32");
+    var parseFloatString = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "NaN":
+          return NaN;
+        case "Infinity":
+          return Infinity;
+        case "-Infinity":
+          return -Infinity;
+        default:
+          throw new Error(`Unable to parse float value: ${value}`);
+      }
+    }, "parseFloatString");
+    var strictParseLong = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectLong(parseNumber(value));
+      }
+      return expectLong(value);
+    }, "strictParseLong");
+    var strictParseInt = strictParseLong;
+    var strictParseInt32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectInt32(parseNumber(value));
+      }
+      return expectInt32(value);
+    }, "strictParseInt32");
+    var strictParseShort = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectShort(parseNumber(value));
+      }
+      return expectShort(value);
+    }, "strictParseShort");
+    var strictParseByte = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectByte(parseNumber(value));
+      }
+      return expectByte(value);
+    }, "strictParseByte");
+    var stackTraceWarning = /* @__PURE__ */ __name2((message) => {
+      return String(new TypeError(message).stack || message).split("\n").slice(0, 5).filter((s) => !s.includes("stackTraceWarning")).join("\n");
+    }, "stackTraceWarning");
+    var logger = {
+      warn: console.warn
+    };
+    var DAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
+    var MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
+    function dateToUtcString(date) {
+      const year = date.getUTCFullYear();
+      const month = date.getUTCMonth();
+      const dayOfWeek = date.getUTCDay();
+      const dayOfMonthInt = date.getUTCDate();
+      const hoursInt = date.getUTCHours();
+      const minutesInt = date.getUTCMinutes();
+      const secondsInt = date.getUTCSeconds();
+      const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;
+      const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;
+      const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;
+      const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;
+      return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;
+    }
+    __name2(dateToUtcString, "dateToUtcString");
+    var RFC3339 = new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/);
+    var parseRfc3339DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+    }, "parseRfc3339DateTime");
+    var RFC3339_WITH_OFFSET = new RegExp(
+      /^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/
+    );
+    var parseRfc3339DateTimeWithOffset = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339_WITH_OFFSET.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+      if (offsetStr.toUpperCase() != "Z") {
+        date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));
+      }
+      return date;
+    }, "parseRfc3339DateTimeWithOffset");
+    var IMF_FIXDATE = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var RFC_850_DATE = new RegExp(
+      /^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var ASC_TIME = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/
+    );
+    var parseRfc7231DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-7231 date-times must be expressed as strings");
+      }
+      let match = IMF_FIXDATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr, "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      match = RFC_850_DATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return adjustRfc850Year(
+          buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, "day", 1, 31), {
+            hours,
+            minutes,
+            seconds,
+            fractionalMilliseconds
+          })
+        );
+      }
+      match = ASC_TIME.exec(value);
+      if (match) {
+        const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr.trimLeft(), "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      throw new TypeError("Invalid RFC-7231 date-time value");
+    }, "parseRfc7231DateTime");
+    var parseEpochTimestamp = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      let valueAsDouble;
+      if (typeof value === "number") {
+        valueAsDouble = value;
+      } else if (typeof value === "string") {
+        valueAsDouble = strictParseDouble(value);
+      } else if (typeof value === "object" && value.tag === 1) {
+        valueAsDouble = value.value;
+      } else {
+        throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");
+      }
+      if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {
+        throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");
+      }
+      return new Date(Math.round(valueAsDouble * 1e3));
+    }, "parseEpochTimestamp");
+    var buildDate = /* @__PURE__ */ __name2((year, month, day, time) => {
+      const adjustedMonth = month - 1;
+      validateDayOfMonth(year, adjustedMonth, day);
+      return new Date(
+        Date.UTC(
+          year,
+          adjustedMonth,
+          day,
+          parseDateValue(time.hours, "hour", 0, 23),
+          parseDateValue(time.minutes, "minute", 0, 59),
+          // seconds can go up to 60 for leap seconds
+          parseDateValue(time.seconds, "seconds", 0, 60),
+          parseMilliseconds(time.fractionalMilliseconds)
+        )
+      );
+    }, "buildDate");
+    var parseTwoDigitYear = /* @__PURE__ */ __name2((value) => {
+      const thisYear = (/* @__PURE__ */ new Date()).getUTCFullYear();
+      const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));
+      if (valueInThisCentury < thisYear) {
+        return valueInThisCentury + 100;
+      }
+      return valueInThisCentury;
+    }, "parseTwoDigitYear");
+    var FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1e3;
+    var adjustRfc850Year = /* @__PURE__ */ __name2((input) => {
+      if (input.getTime() - (/* @__PURE__ */ new Date()).getTime() > FIFTY_YEARS_IN_MILLIS) {
+        return new Date(
+          Date.UTC(
+            input.getUTCFullYear() - 100,
+            input.getUTCMonth(),
+            input.getUTCDate(),
+            input.getUTCHours(),
+            input.getUTCMinutes(),
+            input.getUTCSeconds(),
+            input.getUTCMilliseconds()
+          )
+        );
+      }
+      return input;
+    }, "adjustRfc850Year");
+    var parseMonthByShortName = /* @__PURE__ */ __name2((value) => {
+      const monthIdx = MONTHS.indexOf(value);
+      if (monthIdx < 0) {
+        throw new TypeError(`Invalid month: ${value}`);
+      }
+      return monthIdx + 1;
+    }, "parseMonthByShortName");
+    var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+    var validateDayOfMonth = /* @__PURE__ */ __name2((year, month, day) => {
+      let maxDays = DAYS_IN_MONTH[month];
+      if (month === 1 && isLeapYear(year)) {
+        maxDays = 29;
+      }
+      if (day > maxDays) {
+        throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);
+      }
+    }, "validateDayOfMonth");
+    var isLeapYear = /* @__PURE__ */ __name2((year) => {
+      return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
+    }, "isLeapYear");
+    var parseDateValue = /* @__PURE__ */ __name2((value, type, lower, upper) => {
+      const dateVal = strictParseByte(stripLeadingZeroes(value));
+      if (dateVal < lower || dateVal > upper) {
+        throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);
+      }
+      return dateVal;
+    }, "parseDateValue");
+    var parseMilliseconds = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return 0;
+      }
+      return strictParseFloat32("0." + value) * 1e3;
+    }, "parseMilliseconds");
+    var parseOffsetToMilliseconds = /* @__PURE__ */ __name2((value) => {
+      const directionStr = value[0];
+      let direction = 1;
+      if (directionStr == "+") {
+        direction = 1;
+      } else if (directionStr == "-") {
+        direction = -1;
+      } else {
+        throw new TypeError(`Offset direction, ${directionStr}, must be "+" or "-"`);
+      }
+      const hour = Number(value.substring(1, 3));
+      const minute = Number(value.substring(4, 6));
+      return direction * (hour * 60 + minute) * 60 * 1e3;
+    }, "parseOffsetToMilliseconds");
+    var stripLeadingZeroes = /* @__PURE__ */ __name2((value) => {
+      let idx = 0;
+      while (idx < value.length - 1 && value.charAt(idx) === "0") {
+        idx++;
+      }
+      if (idx === 0) {
+        return value;
+      }
+      return value.slice(idx);
+    }, "stripLeadingZeroes");
+    var _ServiceException = class _ServiceException2 extends Error {
+      constructor(options) {
+        super(options.message);
+        Object.setPrototypeOf(this, _ServiceException2.prototype);
+        this.name = options.name;
+        this.$fault = options.$fault;
+        this.$metadata = options.$metadata;
+      }
+      /**
+       * Checks if a value is an instance of ServiceException (duck typed)
+       */
+      static isInstance(value) {
+        if (!value)
+          return false;
+        const candidate = value;
+        return Boolean(candidate.$fault) && Boolean(candidate.$metadata) && (candidate.$fault === "client" || candidate.$fault === "server");
+      }
+    };
+    __name2(_ServiceException, "ServiceException");
+    var ServiceException = _ServiceException;
+    var decorateServiceException = /* @__PURE__ */ __name2((exception, additions = {}) => {
+      Object.entries(additions).filter(([, v]) => v !== void 0).forEach(([k, v]) => {
+        if (exception[k] == void 0 || exception[k] === "") {
+          exception[k] = v;
+        }
+      });
+      const message = exception.message || exception.Message || "UnknownError";
+      exception.message = message;
+      delete exception.Message;
+      return exception;
+    }, "decorateServiceException");
+    var throwDefaultError = /* @__PURE__ */ __name2(({ output, parsedBody, exceptionCtor, errorCode }) => {
+      const $metadata = deserializeMetadata(output);
+      const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + "" : void 0;
+      const response = new exceptionCtor({
+        name: (parsedBody == null ? void 0 : parsedBody.code) || (parsedBody == null ? void 0 : parsedBody.Code) || errorCode || statusCode || "UnknownError",
+        $fault: "client",
+        $metadata
+      });
+      throw decorateServiceException(response, parsedBody);
+    }, "throwDefaultError");
+    var withBaseException = /* @__PURE__ */ __name2((ExceptionCtor) => {
+      return ({ output, parsedBody, errorCode }) => {
+        throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });
+      };
+    }, "withBaseException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var loadConfigsForDefaultMode = /* @__PURE__ */ __name2((mode) => {
+      switch (mode) {
+        case "standard":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "in-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 1100
+          };
+        case "cross-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "mobile":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3e4
+          };
+        default:
+          return {};
+      }
+    }, "loadConfigsForDefaultMode");
+    var warningEmitted2 = false;
+    var emitWarningIfUnsupportedVersion2 = /* @__PURE__ */ __name2((version3) => {
+      if (version3 && !warningEmitted2 && parseInt(version3.substring(1, version3.indexOf("."))) < 16) {
+        warningEmitted2 = true;
+      }
+    }, "emitWarningIfUnsupportedVersion");
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      for (const id in import_types8.AlgorithmId) {
+        const algorithmId = import_types8.AlgorithmId[id];
+        if (runtimeConfig[algorithmId] === void 0) {
+          continue;
+        }
+        checksumAlgorithms.push({
+          algorithmId: () => algorithmId,
+          checksumConstructor: () => runtimeConfig[algorithmId]
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getRetryConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let _retryStrategy = runtimeConfig.retryStrategy;
+      return {
+        setRetryStrategy(retryStrategy) {
+          _retryStrategy = retryStrategy;
+        },
+        retryStrategy() {
+          return _retryStrategy;
+        }
+      };
+    }, "getRetryConfiguration");
+    var resolveRetryRuntimeConfig = /* @__PURE__ */ __name2((retryStrategyConfiguration) => {
+      const runtimeConfig = {};
+      runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();
+      return runtimeConfig;
+    }, "resolveRetryRuntimeConfig");
+    var getDefaultExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig),
+        ...getRetryConfiguration(runtimeConfig)
+      };
+    }, "getDefaultExtensionConfiguration");
+    var getDefaultClientConfiguration = getDefaultExtensionConfiguration;
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config),
+        ...resolveRetryRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var getArrayIfSingleItem = /* @__PURE__ */ __name2((mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray], "getArrayIfSingleItem");
+    var getValueFromTextNode2 = /* @__PURE__ */ __name2((obj) => {
+      const textNodeName = "#text";
+      for (const key in obj) {
+        if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== void 0) {
+          obj[key] = obj[key][textNodeName];
+        } else if (typeof obj[key] === "object" && obj[key] !== null) {
+          obj[key] = getValueFromTextNode2(obj[key]);
+        }
+      }
+      return obj;
+    }, "getValueFromTextNode");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => {
+      return value != null;
+    }, "isSerializableHeaderValue");
+    var LazyJsonString = /* @__PURE__ */ __name2(function LazyJsonString2(val2) {
+      const str = Object.assign(new String(val2), {
+        deserializeJSON() {
+          return JSON.parse(String(val2));
+        },
+        toString() {
+          return String(val2);
+        },
+        toJSON() {
+          return String(val2);
+        }
+      });
+      return str;
+    }, "LazyJsonString");
+    LazyJsonString.from = (object) => {
+      if (object && typeof object === "object" && (object instanceof LazyJsonString || "deserializeJSON" in object)) {
+        return object;
+      } else if (typeof object === "string" || Object.getPrototypeOf(object) === String.prototype) {
+        return LazyJsonString(String(object));
+      }
+      return LazyJsonString(JSON.stringify(object));
+    };
+    LazyJsonString.fromObject = LazyJsonString.from;
+    var _NoOpLogger = class _NoOpLogger {
+      trace() {
+      }
+      debug() {
+      }
+      info() {
+      }
+      warn() {
+      }
+      error() {
+      }
+    };
+    __name2(_NoOpLogger, "NoOpLogger");
+    var NoOpLogger = _NoOpLogger;
+    function map(arg0, arg1, arg2) {
+      let target;
+      let filter;
+      let instructions;
+      if (typeof arg1 === "undefined" && typeof arg2 === "undefined") {
+        target = {};
+        instructions = arg0;
+      } else {
+        target = arg0;
+        if (typeof arg1 === "function") {
+          filter = arg1;
+          instructions = arg2;
+          return mapWithFilter(target, filter, instructions);
+        } else {
+          instructions = arg1;
+        }
+      }
+      for (const key of Object.keys(instructions)) {
+        if (!Array.isArray(instructions[key])) {
+          target[key] = instructions[key];
+          continue;
+        }
+        applyInstruction(target, null, instructions, key);
+      }
+      return target;
+    }
+    __name2(map, "map");
+    var convertMap = /* @__PURE__ */ __name2((target) => {
+      const output = {};
+      for (const [k, v] of Object.entries(target || {})) {
+        output[k] = [, v];
+      }
+      return output;
+    }, "convertMap");
+    var take = /* @__PURE__ */ __name2((source, instructions) => {
+      const out = {};
+      for (const key in instructions) {
+        applyInstruction(out, source, instructions, key);
+      }
+      return out;
+    }, "take");
+    var mapWithFilter = /* @__PURE__ */ __name2((target, filter, instructions) => {
+      return map(
+        target,
+        Object.entries(instructions).reduce(
+          (_instructions, [key, value]) => {
+            if (Array.isArray(value)) {
+              _instructions[key] = value;
+            } else {
+              if (typeof value === "function") {
+                _instructions[key] = [filter, value()];
+              } else {
+                _instructions[key] = [filter, value];
+              }
+            }
+            return _instructions;
+          },
+          {}
+        )
+      );
+    }, "mapWithFilter");
+    var applyInstruction = /* @__PURE__ */ __name2((target, source, instructions, targetKey) => {
+      if (source !== null) {
+        let instruction = instructions[targetKey];
+        if (typeof instruction === "function") {
+          instruction = [, instruction];
+        }
+        const [filter2 = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;
+        if (typeof filter2 === "function" && filter2(source[sourceKey]) || typeof filter2 !== "function" && !!filter2) {
+          target[targetKey] = valueFn(source[sourceKey]);
+        }
+        return;
+      }
+      let [filter, value] = instructions[targetKey];
+      if (typeof value === "function") {
+        let _value;
+        const defaultFilterPassed = filter === void 0 && (_value = value()) != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(void 0) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed) {
+          target[targetKey] = _value;
+        } else if (customFilterPassed) {
+          target[targetKey] = value();
+        }
+      } else {
+        const defaultFilterPassed = filter === void 0 && value != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(value) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed || customFilterPassed) {
+          target[targetKey] = value;
+        }
+      }
+    }, "applyInstruction");
+    var nonNullish = /* @__PURE__ */ __name2((_) => _ != null, "nonNullish");
+    var pass = /* @__PURE__ */ __name2((_) => _, "pass");
+    function quoteHeader(part) {
+      if (part.includes(",") || part.includes('"')) {
+        part = `"${part.replace(/"/g, '\\"')}"`;
+      }
+      return part;
+    }
+    __name2(quoteHeader, "quoteHeader");
+    var serializeFloat = /* @__PURE__ */ __name2((value) => {
+      if (value !== value) {
+        return "NaN";
+      }
+      switch (value) {
+        case Infinity:
+          return "Infinity";
+        case -Infinity:
+          return "-Infinity";
+        default:
+          return value;
+      }
+    }, "serializeFloat");
+    var serializeDateTime = /* @__PURE__ */ __name2((date) => date.toISOString().replace(".000Z", "Z"), "serializeDateTime");
+    var _json = /* @__PURE__ */ __name2((obj) => {
+      if (obj == null) {
+        return {};
+      }
+      if (Array.isArray(obj)) {
+        return obj.filter((_) => _ != null).map(_json);
+      }
+      if (typeof obj === "object") {
+        const target = {};
+        for (const key of Object.keys(obj)) {
+          if (obj[key] == null) {
+            continue;
+          }
+          target[key] = _json(obj[key]);
+        }
+        return target;
+      }
+      return obj;
+    }, "_json");
+    function splitEvery(value, delimiter, numDelimiters) {
+      if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) {
+        throw new Error("Invalid number of delimiters (" + numDelimiters + ") for splitEvery.");
+      }
+      const segments = value.split(delimiter);
+      if (numDelimiters === 1) {
+        return segments;
+      }
+      const compoundSegments = [];
+      let currentSegment = "";
+      for (let i = 0; i < segments.length; i++) {
+        if (currentSegment === "") {
+          currentSegment = segments[i];
+        } else {
+          currentSegment += delimiter + segments[i];
+        }
+        if ((i + 1) % numDelimiters === 0) {
+          compoundSegments.push(currentSegment);
+          currentSegment = "";
+        }
+      }
+      if (currentSegment !== "") {
+        compoundSegments.push(currentSegment);
+      }
+      return compoundSegments;
+    }
+    __name2(splitEvery, "splitEvery");
+    var splitHeader = /* @__PURE__ */ __name2((value) => {
+      const z = value.length;
+      const values = [];
+      let withinQuotes = false;
+      let prevChar = void 0;
+      let anchor = 0;
+      for (let i = 0; i < z; ++i) {
+        const char = value[i];
+        switch (char) {
+          case `"`:
+            if (prevChar !== "\\") {
+              withinQuotes = !withinQuotes;
+            }
+            break;
+          case ",":
+            if (!withinQuotes) {
+              values.push(value.slice(anchor, i));
+              anchor = i + 1;
+            }
+            break;
+          default:
+        }
+        prevChar = char;
+      }
+      values.push(value.slice(anchor));
+      return values.map((v) => {
+        v = v.trim();
+        const z2 = v.length;
+        if (z2 < 2) {
+          return v;
+        }
+        if (v[0] === `"` && v[z2 - 1] === `"`) {
+          v = v.slice(1, z2 - 1);
+        }
+        return v.replace(/\\"/g, '"');
+      });
+    }, "splitHeader");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js
+var require_isStreamingPayload = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isStreamingPayload = void 0;
+    var stream_1 = require("stream");
+    var isStreamingPayload = (request2) => (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof stream_1.Readable || typeof ReadableStream !== "undefined" && (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof ReadableStream;
+    exports2.isStreamingPayload = isStreamingPayload;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js
+var require_dist_cjs34 = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      CONFIG_MAX_ATTEMPTS: () => CONFIG_MAX_ATTEMPTS,
+      CONFIG_RETRY_MODE: () => CONFIG_RETRY_MODE,
+      ENV_MAX_ATTEMPTS: () => ENV_MAX_ATTEMPTS,
+      ENV_RETRY_MODE: () => ENV_RETRY_MODE,
+      NODE_MAX_ATTEMPT_CONFIG_OPTIONS: () => NODE_MAX_ATTEMPT_CONFIG_OPTIONS,
+      NODE_RETRY_MODE_CONFIG_OPTIONS: () => NODE_RETRY_MODE_CONFIG_OPTIONS,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      defaultDelayDecider: () => defaultDelayDecider,
+      defaultRetryDecider: () => defaultRetryDecider,
+      getOmitRetryHeadersPlugin: () => getOmitRetryHeadersPlugin,
+      getRetryAfterHint: () => getRetryAfterHint,
+      getRetryPlugin: () => getRetryPlugin,
+      omitRetryHeadersMiddleware: () => omitRetryHeadersMiddleware,
+      omitRetryHeadersMiddlewareOptions: () => omitRetryHeadersMiddlewareOptions,
+      resolveRetryConfig: () => resolveRetryConfig,
+      retryMiddleware: () => retryMiddleware,
+      retryMiddlewareOptions: () => retryMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var import_util_retry = require_dist_cjs31();
+    var getDefaultRetryQuota = /* @__PURE__ */ __name2((initialRetryTokens, options) => {
+      const MAX_CAPACITY = initialRetryTokens;
+      const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT;
+      const retryCost = (options == null ? void 0 : options.retryCost) ?? import_util_retry.RETRY_COST;
+      const timeoutRetryCost = (options == null ? void 0 : options.timeoutRetryCost) ?? import_util_retry.TIMEOUT_RETRY_COST;
+      let availableCapacity = initialRetryTokens;
+      const getCapacityAmount = /* @__PURE__ */ __name2((error) => error.name === "TimeoutError" ? timeoutRetryCost : retryCost, "getCapacityAmount");
+      const hasRetryTokens = /* @__PURE__ */ __name2((error) => getCapacityAmount(error) <= availableCapacity, "hasRetryTokens");
+      const retrieveRetryTokens = /* @__PURE__ */ __name2((error) => {
+        if (!hasRetryTokens(error)) {
+          throw new Error("No retry token available");
+        }
+        const capacityAmount = getCapacityAmount(error);
+        availableCapacity -= capacityAmount;
+        return capacityAmount;
+      }, "retrieveRetryTokens");
+      const releaseRetryTokens = /* @__PURE__ */ __name2((capacityReleaseAmount) => {
+        availableCapacity += capacityReleaseAmount ?? noRetryIncrement;
+        availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);
+      }, "releaseRetryTokens");
+      return Object.freeze({
+        hasRetryTokens,
+        retrieveRetryTokens,
+        releaseRetryTokens
+      });
+    }, "getDefaultRetryQuota");
+    var defaultDelayDecider = /* @__PURE__ */ __name2((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), "defaultDelayDecider");
+    var import_service_error_classification = require_dist_cjs30();
+    var defaultRetryDecider = /* @__PURE__ */ __name2((error) => {
+      if (!error) {
+        return false;
+      }
+      return (0, import_service_error_classification.isRetryableByTrait)(error) || (0, import_service_error_classification.isClockSkewError)(error) || (0, import_service_error_classification.isThrottlingError)(error) || (0, import_service_error_classification.isTransientError)(error);
+    }, "defaultRetryDecider");
+    var asSdkError = /* @__PURE__ */ __name2((error) => {
+      if (error instanceof Error)
+        return error;
+      if (error instanceof Object)
+        return Object.assign(new Error(), error);
+      if (typeof error === "string")
+        return new Error(error);
+      return new Error(`AWS SDK error wrapper for ${error}`);
+    }, "asSdkError");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = import_util_retry.RETRY_MODES.STANDARD;
+        this.retryDecider = (options == null ? void 0 : options.retryDecider) ?? defaultRetryDecider;
+        this.delayDecider = (options == null ? void 0 : options.delayDecider) ?? defaultDelayDecider;
+        this.retryQuota = (options == null ? void 0 : options.retryQuota) ?? getDefaultRetryQuota(import_util_retry.INITIAL_RETRY_TOKENS);
+      }
+      shouldRetry(error, attempts, maxAttempts) {
+        return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);
+      }
+      async getMaxAttempts() {
+        let maxAttempts;
+        try {
+          maxAttempts = await this.maxAttemptsProvider();
+        } catch (error) {
+          maxAttempts = import_util_retry.DEFAULT_MAX_ATTEMPTS;
+        }
+        return maxAttempts;
+      }
+      async retry(next, args, options) {
+        let retryTokenAmount;
+        let attempts = 0;
+        let totalDelay = 0;
+        const maxAttempts = await this.getMaxAttempts();
+        const { request: request2 } = args;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            if (options == null ? void 0 : options.beforeRequest) {
+              await options.beforeRequest();
+            }
+            const { response, output } = await next(args);
+            if (options == null ? void 0 : options.afterRequest) {
+              options.afterRequest(response);
+            }
+            this.retryQuota.releaseRetryTokens(retryTokenAmount);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalDelay;
+            return { response, output };
+          } catch (e) {
+            const err = asSdkError(e);
+            attempts++;
+            if (this.shouldRetry(err, attempts, maxAttempts)) {
+              retryTokenAmount = this.retryQuota.retrieveRetryTokens(err);
+              const delayFromDecider = this.delayDecider(
+                (0, import_service_error_classification.isThrottlingError)(err) ? import_util_retry.THROTTLING_RETRY_DELAY_BASE : import_util_retry.DEFAULT_RETRY_DELAY_BASE,
+                attempts
+              );
+              const delayFromResponse = getDelayFromRetryAfterHeader(err.$response);
+              const delay = Math.max(delayFromResponse || 0, delayFromDecider);
+              totalDelay += delay;
+              await new Promise((resolve6) => setTimeout(resolve6, delay));
+              continue;
+            }
+            if (!err.$metadata) {
+              err.$metadata = {};
+            }
+            err.$metadata.attempts = attempts;
+            err.$metadata.totalRetryDelay = totalDelay;
+            throw err;
+          }
+        }
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var getDelayFromRetryAfterHeader = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return retryAfterSeconds * 1e3;
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate.getTime() - Date.now();
+    }, "getDelayFromRetryAfterHeader");
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy extends StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        const { rateLimiter, ...superOptions } = options ?? {};
+        super(maxAttemptsProvider, superOptions);
+        this.rateLimiter = rateLimiter ?? new import_util_retry.DefaultRateLimiter();
+        this.mode = import_util_retry.RETRY_MODES.ADAPTIVE;
+      }
+      async retry(next, args) {
+        return super.retry(next, args, {
+          beforeRequest: async () => {
+            return this.rateLimiter.getSendToken();
+          },
+          afterRequest: (response) => {
+            this.rateLimiter.updateClientSendingRate(response);
+          }
+        });
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var import_util_middleware3 = require_dist_cjs10();
+    var ENV_MAX_ATTEMPTS = "AWS_MAX_ATTEMPTS";
+    var CONFIG_MAX_ATTEMPTS = "max_attempts";
+    var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        const value = env2[ENV_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      configFileSelector: (profile) => {
+        const value = profile[CONFIG_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      default: import_util_retry.DEFAULT_MAX_ATTEMPTS
+    };
+    var resolveRetryConfig = /* @__PURE__ */ __name2((input) => {
+      const { retryStrategy } = input;
+      const maxAttempts = (0, import_util_middleware3.normalizeProvider)(input.maxAttempts ?? import_util_retry.DEFAULT_MAX_ATTEMPTS);
+      return {
+        ...input,
+        maxAttempts,
+        retryStrategy: async () => {
+          if (retryStrategy) {
+            return retryStrategy;
+          }
+          const retryMode = await (0, import_util_middleware3.normalizeProvider)(input.retryMode)();
+          if (retryMode === import_util_retry.RETRY_MODES.ADAPTIVE) {
+            return new import_util_retry.AdaptiveRetryStrategy(maxAttempts);
+          }
+          return new import_util_retry.StandardRetryStrategy(maxAttempts);
+        }
+      };
+    }, "resolveRetryConfig");
+    var ENV_RETRY_MODE = "AWS_RETRY_MODE";
+    var CONFIG_RETRY_MODE = "retry_mode";
+    var NODE_RETRY_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_RETRY_MODE],
+      configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],
+      default: import_util_retry.DEFAULT_RETRY_MODE
+    };
+    var omitRetryHeadersMiddleware = /* @__PURE__ */ __name2(() => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+        delete request2.headers[import_util_retry.INVOCATION_ID_HEADER];
+        delete request2.headers[import_util_retry.REQUEST_HEADER];
+      }
+      return next(args);
+    }, "omitRetryHeadersMiddleware");
+    var omitRetryHeadersMiddlewareOptions = {
+      name: "omitRetryHeadersMiddleware",
+      tags: ["RETRY", "HEADERS", "OMIT_RETRY_HEADERS"],
+      relation: "before",
+      toMiddleware: "awsAuthMiddleware",
+      override: true
+    };
+    var getOmitRetryHeadersPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions);
+      }
+    }), "getOmitRetryHeadersPlugin");
+    var import_smithy_client4 = require_dist_cjs33();
+    var import_isStreamingPayload = require_isStreamingPayload();
+    var retryMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7;
+      let retryStrategy = await options.retryStrategy();
+      const maxAttempts = await options.maxAttempts();
+      if (isRetryStrategyV2(retryStrategy)) {
+        retryStrategy = retryStrategy;
+        let retryToken = await retryStrategy.acquireInitialRetryToken(context["partition_id"]);
+        let lastError = new Error();
+        let attempts = 0;
+        let totalRetryDelay = 0;
+        const { request: request2 } = args;
+        const isRequest = import_protocol_http8.HttpRequest.isInstance(request2);
+        if (isRequest) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (isRequest) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            const { response, output } = await next(args);
+            retryStrategy.recordSuccess(retryToken);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalRetryDelay;
+            return { response, output };
+          } catch (e) {
+            const retryErrorInfo = getRetryErrorInfo(e);
+            lastError = asSdkError(e);
+            if (isRequest && (0, import_isStreamingPayload.isStreamingPayload)(request2)) {
+              (_a7 = context.logger instanceof import_smithy_client4.NoOpLogger ? console : context.logger) == null ? void 0 : _a7.warn(
+                "An error was encountered in a non-retryable streaming request."
+              );
+              throw lastError;
+            }
+            try {
+              retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);
+            } catch (refreshError) {
+              if (!lastError.$metadata) {
+                lastError.$metadata = {};
+              }
+              lastError.$metadata.attempts = attempts + 1;
+              lastError.$metadata.totalRetryDelay = totalRetryDelay;
+              throw lastError;
+            }
+            attempts = retryToken.getRetryCount();
+            const delay = retryToken.getRetryDelay();
+            totalRetryDelay += delay;
+            await new Promise((resolve6) => setTimeout(resolve6, delay));
+          }
+        }
+      } else {
+        retryStrategy = retryStrategy;
+        if (retryStrategy == null ? void 0 : retryStrategy.mode)
+          context.userAgent = [...context.userAgent || [], ["cfg/retry-mode", retryStrategy.mode]];
+        return retryStrategy.retry(next, args);
+      }
+    }, "retryMiddleware");
+    var isRetryStrategyV2 = /* @__PURE__ */ __name2((retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== "undefined" && typeof retryStrategy.refreshRetryTokenForRetry !== "undefined" && typeof retryStrategy.recordSuccess !== "undefined", "isRetryStrategyV2");
+    var getRetryErrorInfo = /* @__PURE__ */ __name2((error) => {
+      const errorInfo = {
+        error,
+        errorType: getRetryErrorType(error)
+      };
+      const retryAfterHint = getRetryAfterHint(error.$response);
+      if (retryAfterHint) {
+        errorInfo.retryAfterHint = retryAfterHint;
+      }
+      return errorInfo;
+    }, "getRetryErrorInfo");
+    var getRetryErrorType = /* @__PURE__ */ __name2((error) => {
+      if ((0, import_service_error_classification.isThrottlingError)(error))
+        return "THROTTLING";
+      if ((0, import_service_error_classification.isTransientError)(error))
+        return "TRANSIENT";
+      if ((0, import_service_error_classification.isServerError)(error))
+        return "SERVER_ERROR";
+      return "CLIENT_ERROR";
+    }, "getRetryErrorType");
+    var retryMiddlewareOptions = {
+      name: "retryMiddleware",
+      tags: ["RETRY"],
+      step: "finalizeRequest",
+      priority: "high",
+      override: true
+    };
+    var getRetryPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(retryMiddleware(options), retryMiddlewareOptions);
+      }
+    }), "getRetryPlugin");
+    var getRetryAfterHint = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return new Date(retryAfterSeconds * 1e3);
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate;
+    }, "getRetryAfterHint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js
+var warningEmitted, emitWarningIfUnsupportedVersion;
+var init_emitWarningIfUnsupportedVersion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js"() {
+    warningEmitted = false;
+    emitWarningIfUnsupportedVersion = (version3) => {
+      if (version3 && !warningEmitted && parseInt(version3.substring(1, version3.indexOf("."))) < 18) {
+        warningEmitted = true;
+        process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
+no longer support Node.js 16.x on January 6, 2025.
+
+To continue receiving updates to AWS services, bug fixes, and security
+updates please upgrade to a supported Node.js LTS version.
+
+More information can be found at: https://a.co/74kJMmI`);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js
+var init_client = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js"() {
+    init_emitWarningIfUnsupportedVersion();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js
+var import_protocol_http5, getDateHeader;
+var init_getDateHeader = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js"() {
+    import_protocol_http5 = __toESM(require_dist_cjs2());
+    getDateHeader = (response) => import_protocol_http5.HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : void 0;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js
+var getSkewCorrectedDate;
+var init_getSkewCorrectedDate = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js"() {
+    getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js
+var isClockSkewed;
+var init_isClockSkewed = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js"() {
+    init_getSkewCorrectedDate();
+    isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 3e5;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js
+var getUpdatedSystemClockOffset;
+var init_getUpdatedSystemClockOffset = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js"() {
+    init_isClockSkewed();
+    getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {
+      const clockTimeInMs = Date.parse(clockTime);
+      if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {
+        return clockTimeInMs - Date.now();
+      }
+      return currentSystemClockOffset;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js
+var init_utils2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js"() {
+    init_getDateHeader();
+    init_getSkewCorrectedDate();
+    init_getUpdatedSystemClockOffset();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js
+var import_protocol_http6, throwSigningPropertyError, validateSigningProperties, AwsSdkSigV4Signer, AWSSDKSigV4Signer;
+var init_AwsSdkSigV4Signer = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js"() {
+    import_protocol_http6 = __toESM(require_dist_cjs2());
+    init_utils2();
+    throwSigningPropertyError = (name, property) => {
+      if (!property) {
+        throw new Error(`Property \`${name}\` is not resolved for AWS SDK SigV4Auth`);
+      }
+      return property;
+    };
+    validateSigningProperties = async (signingProperties) => {
+      const context = throwSigningPropertyError("context", signingProperties.context);
+      const config = throwSigningPropertyError("config", signingProperties.config);
+      const authScheme = context.endpointV2?.properties?.authSchemes?.[0];
+      const signerFunction = throwSigningPropertyError("signer", config.signer);
+      const signer = await signerFunction(authScheme);
+      const signingRegion = signingProperties?.signingRegion;
+      const signingRegionSet = signingProperties?.signingRegionSet;
+      const signingName = signingProperties?.signingName;
+      return {
+        config,
+        signer,
+        signingRegion,
+        signingRegionSet,
+        signingName
+      };
+    };
+    AwsSdkSigV4Signer = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http6.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const validatedProps = await validateSigningProperties(signingProperties);
+        const { config, signer } = validatedProps;
+        let { signingRegion, signingName } = validatedProps;
+        const handlerExecutionContext = signingProperties.context;
+        if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {
+          const [first, second] = handlerExecutionContext.authSchemes;
+          if (first?.name === "sigv4a" && second?.name === "sigv4") {
+            signingRegion = second?.signingRegion ?? signingRegion;
+            signingName = second?.signingName ?? signingName;
+          }
+        }
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+      errorHandler(signingProperties) {
+        return (error) => {
+          const serverTime = error.ServerTime ?? getDateHeader(error.$response);
+          if (serverTime) {
+            const config = throwSigningPropertyError("config", signingProperties.config);
+            const initialSystemClockOffset = config.systemClockOffset;
+            config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);
+            const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;
+            if (clockSkewCorrected && error.$metadata) {
+              error.$metadata.clockSkewCorrected = true;
+            }
+          }
+          throw error;
+        };
+      }
+      successHandler(httpResponse, signingProperties) {
+        const dateHeader = getDateHeader(httpResponse);
+        if (dateHeader) {
+          const config = throwSigningPropertyError("config", signingProperties.config);
+          config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);
+        }
+      }
+    };
+    AWSSDKSigV4Signer = AwsSdkSigV4Signer;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js
+var import_protocol_http7, AwsSdkSigV4ASigner;
+var init_AwsSdkSigV4ASigner = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js"() {
+    import_protocol_http7 = __toESM(require_dist_cjs2());
+    init_utils2();
+    init_AwsSdkSigV4Signer();
+    AwsSdkSigV4ASigner = class extends AwsSdkSigV4Signer {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http7.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const { config, signer, signingRegion, signingRegionSet, signingName } = await validateSigningProperties(signingProperties);
+        const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();
+        const multiRegionOverride = (configResolvedSigningRegionSet ?? signingRegionSet ?? [signingRegion]).join(",");
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion: multiRegionOverride,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js
+var import_property_provider, resolveAwsSdkSigV4AConfig, NODE_SIGV4A_CONFIG_OPTIONS;
+var init_resolveAwsSdkSigV4AConfig = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js"() {
+    init_dist_es();
+    import_property_provider = __toESM(require_dist_cjs24());
+    resolveAwsSdkSigV4AConfig = (config) => {
+      config.sigv4aSigningRegionSet = normalizeProvider(config.sigv4aSigningRegionSet);
+      return config;
+    };
+    NODE_SIGV4A_CONFIG_OPTIONS = {
+      environmentVariableSelector(env2) {
+        if (env2.AWS_SIGV4A_SIGNING_REGION_SET) {
+          return env2.AWS_SIGV4A_SIGNING_REGION_SET.split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("AWS_SIGV4A_SIGNING_REGION_SET not set in env.", {
+          tryNextLink: true
+        });
+      },
+      configFileSelector(profile) {
+        if (profile.sigv4a_signing_region_set) {
+          return (profile.sigv4a_signing_region_set ?? "").split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("sigv4a_signing_region_set not set in profile.", {
+          tryNextLink: true
+        });
+      },
+      default: void 0
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/signature-v4/dist-cjs/index.js
+var require_dist_cjs35 = __commonJS({
+  "../../../node_modules/@smithy/signature-v4/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SignatureV4: () => SignatureV42,
+      clearCredentialCache: () => clearCredentialCache,
+      createScope: () => createScope,
+      getCanonicalHeaders: () => getCanonicalHeaders,
+      getCanonicalQuery: () => getCanonicalQuery,
+      getPayloadHash: () => getPayloadHash,
+      getSigningKey: () => getSigningKey,
+      moveHeadersToQuery: () => moveHeadersToQuery,
+      prepareRequest: () => prepareRequest
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_middleware3 = require_dist_cjs10();
+    var import_util_utf84 = require_dist_cjs15();
+    var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm";
+    var CREDENTIAL_QUERY_PARAM = "X-Amz-Credential";
+    var AMZ_DATE_QUERY_PARAM = "X-Amz-Date";
+    var SIGNED_HEADERS_QUERY_PARAM = "X-Amz-SignedHeaders";
+    var EXPIRES_QUERY_PARAM = "X-Amz-Expires";
+    var SIGNATURE_QUERY_PARAM = "X-Amz-Signature";
+    var TOKEN_QUERY_PARAM = "X-Amz-Security-Token";
+    var AUTH_HEADER = "authorization";
+    var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();
+    var DATE_HEADER = "date";
+    var GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];
+    var SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();
+    var SHA256_HEADER = "x-amz-content-sha256";
+    var TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();
+    var ALWAYS_UNSIGNABLE_HEADERS = {
+      authorization: true,
+      "cache-control": true,
+      connection: true,
+      expect: true,
+      from: true,
+      "keep-alive": true,
+      "max-forwards": true,
+      pragma: true,
+      referer: true,
+      te: true,
+      trailer: true,
+      "transfer-encoding": true,
+      upgrade: true,
+      "user-agent": true,
+      "x-amzn-trace-id": true
+    };
+    var PROXY_HEADER_PATTERN = /^proxy-/;
+    var SEC_HEADER_PATTERN = /^sec-/;
+    var ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256";
+    var EVENT_ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256-PAYLOAD";
+    var UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD";
+    var MAX_CACHE_SIZE = 50;
+    var KEY_TYPE_IDENTIFIER = "aws4_request";
+    var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;
+    var import_util_hex_encoding = require_dist_cjs21();
+    var import_util_utf8 = require_dist_cjs15();
+    var signingKeyCache = {};
+    var cacheQueue = [];
+    var createScope = /* @__PURE__ */ __name2((shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`, "createScope");
+    var getSigningKey = /* @__PURE__ */ __name2(async (sha256Constructor, credentials, shortDate, region, service) => {
+      const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);
+      const cacheKey = `${shortDate}:${region}:${service}:${(0, import_util_hex_encoding.toHex)(credsHash)}:${credentials.sessionToken}`;
+      if (cacheKey in signingKeyCache) {
+        return signingKeyCache[cacheKey];
+      }
+      cacheQueue.push(cacheKey);
+      while (cacheQueue.length > MAX_CACHE_SIZE) {
+        delete signingKeyCache[cacheQueue.shift()];
+      }
+      let key = `AWS4${credentials.secretAccessKey}`;
+      for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {
+        key = await hmac(sha256Constructor, key, signable);
+      }
+      return signingKeyCache[cacheKey] = key;
+    }, "getSigningKey");
+    var clearCredentialCache = /* @__PURE__ */ __name2(() => {
+      cacheQueue.length = 0;
+      Object.keys(signingKeyCache).forEach((cacheKey) => {
+        delete signingKeyCache[cacheKey];
+      });
+    }, "clearCredentialCache");
+    var hmac = /* @__PURE__ */ __name2((ctor, secret, data) => {
+      const hash = new ctor(secret);
+      hash.update((0, import_util_utf8.toUint8Array)(data));
+      return hash.digest();
+    }, "hmac");
+    var getCanonicalHeaders = /* @__PURE__ */ __name2(({ headers }, unsignableHeaders, signableHeaders) => {
+      const canonical = {};
+      for (const headerName of Object.keys(headers).sort()) {
+        if (headers[headerName] == void 0) {
+          continue;
+        }
+        const canonicalHeaderName = headerName.toLowerCase();
+        if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS || (unsignableHeaders == null ? void 0 : unsignableHeaders.has(canonicalHeaderName)) || PROXY_HEADER_PATTERN.test(canonicalHeaderName) || SEC_HEADER_PATTERN.test(canonicalHeaderName)) {
+          if (!signableHeaders || signableHeaders && !signableHeaders.has(canonicalHeaderName)) {
+            continue;
+          }
+        }
+        canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\s+/g, " ");
+      }
+      return canonical;
+    }, "getCanonicalHeaders");
+    var import_util_uri_escape = require_dist_cjs17();
+    var getCanonicalQuery = /* @__PURE__ */ __name2(({ query = {} }) => {
+      const keys = [];
+      const serialized = {};
+      for (const key of Object.keys(query)) {
+        if (key.toLowerCase() === SIGNATURE_HEADER) {
+          continue;
+        }
+        const encodedKey = (0, import_util_uri_escape.escapeUri)(key);
+        keys.push(encodedKey);
+        const value = query[key];
+        if (typeof value === "string") {
+          serialized[encodedKey] = `${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value)}`;
+        } else if (Array.isArray(value)) {
+          serialized[encodedKey] = value.slice(0).reduce((encoded, value2) => encoded.concat([`${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value2)}`]), []).sort().join("&");
+        }
+      }
+      return keys.sort().map((key) => serialized[key]).filter((serialized2) => serialized2).join("&");
+    }, "getCanonicalQuery");
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_util_utf82 = require_dist_cjs15();
+    var getPayloadHash = /* @__PURE__ */ __name2(async ({ headers, body }, hashConstructor) => {
+      for (const headerName of Object.keys(headers)) {
+        if (headerName.toLowerCase() === SHA256_HEADER) {
+          return headers[headerName];
+        }
+      }
+      if (body == void 0) {
+        return "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
+      } else if (typeof body === "string" || ArrayBuffer.isView(body) || (0, import_is_array_buffer.isArrayBuffer)(body)) {
+        const hashCtor = new hashConstructor();
+        hashCtor.update((0, import_util_utf82.toUint8Array)(body));
+        return (0, import_util_hex_encoding.toHex)(await hashCtor.digest());
+      }
+      return UNSIGNED_PAYLOAD;
+    }, "getPayloadHash");
+    var import_util_utf83 = require_dist_cjs15();
+    var _HeaderFormatter = class _HeaderFormatter {
+      format(headers) {
+        const chunks = [];
+        for (const headerName of Object.keys(headers)) {
+          const bytes = (0, import_util_utf83.fromUtf8)(headerName);
+          chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));
+        }
+        const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));
+        let position = 0;
+        for (const chunk of chunks) {
+          out.set(chunk, position);
+          position += chunk.byteLength;
+        }
+        return out;
+      }
+      formatHeaderValue(header) {
+        switch (header.type) {
+          case "boolean":
+            return Uint8Array.from([
+              header.value ? 0 : 1
+              /* boolFalse */
+            ]);
+          case "byte":
+            return Uint8Array.from([2, header.value]);
+          case "short":
+            const shortView = new DataView(new ArrayBuffer(3));
+            shortView.setUint8(
+              0,
+              3
+              /* short */
+            );
+            shortView.setInt16(1, header.value, false);
+            return new Uint8Array(shortView.buffer);
+          case "integer":
+            const intView = new DataView(new ArrayBuffer(5));
+            intView.setUint8(
+              0,
+              4
+              /* integer */
+            );
+            intView.setInt32(1, header.value, false);
+            return new Uint8Array(intView.buffer);
+          case "long":
+            const longBytes = new Uint8Array(9);
+            longBytes[0] = 5;
+            longBytes.set(header.value.bytes, 1);
+            return longBytes;
+          case "binary":
+            const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));
+            binView.setUint8(
+              0,
+              6
+              /* byteArray */
+            );
+            binView.setUint16(1, header.value.byteLength, false);
+            const binBytes = new Uint8Array(binView.buffer);
+            binBytes.set(header.value, 3);
+            return binBytes;
+          case "string":
+            const utf8Bytes = (0, import_util_utf83.fromUtf8)(header.value);
+            const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));
+            strView.setUint8(
+              0,
+              7
+              /* string */
+            );
+            strView.setUint16(1, utf8Bytes.byteLength, false);
+            const strBytes = new Uint8Array(strView.buffer);
+            strBytes.set(utf8Bytes, 3);
+            return strBytes;
+          case "timestamp":
+            const tsBytes = new Uint8Array(9);
+            tsBytes[0] = 8;
+            tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);
+            return tsBytes;
+          case "uuid":
+            if (!UUID_PATTERN.test(header.value)) {
+              throw new Error(`Invalid UUID received: ${header.value}`);
+            }
+            const uuidBytes = new Uint8Array(17);
+            uuidBytes[0] = 9;
+            uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1);
+            return uuidBytes;
+        }
+      }
+    };
+    __name2(_HeaderFormatter, "HeaderFormatter");
+    var HeaderFormatter = _HeaderFormatter;
+    var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
+    var _Int64 = class _Int642 {
+      constructor(bytes) {
+        this.bytes = bytes;
+        if (bytes.byteLength !== 8) {
+          throw new Error("Int64 buffers must be exactly 8 bytes");
+        }
+      }
+      static fromNumber(number) {
+        if (number > 9223372036854776e3 || number < -9223372036854776e3) {
+          throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);
+        }
+        const bytes = new Uint8Array(8);
+        for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {
+          bytes[i] = remaining;
+        }
+        if (number < 0) {
+          negate(bytes);
+        }
+        return new _Int642(bytes);
+      }
+      /**
+       * Called implicitly by infix arithmetic operators.
+       */
+      valueOf() {
+        const bytes = this.bytes.slice(0);
+        const negative = bytes[0] & 128;
+        if (negative) {
+          negate(bytes);
+        }
+        return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1);
+      }
+      toString() {
+        return String(this.valueOf());
+      }
+    };
+    __name2(_Int64, "Int64");
+    var Int64 = _Int64;
+    function negate(bytes) {
+      for (let i = 0; i < 8; i++) {
+        bytes[i] ^= 255;
+      }
+      for (let i = 7; i > -1; i--) {
+        bytes[i]++;
+        if (bytes[i] !== 0)
+          break;
+      }
+    }
+    __name2(negate, "negate");
+    var hasHeader = /* @__PURE__ */ __name2((soughtHeader, headers) => {
+      soughtHeader = soughtHeader.toLowerCase();
+      for (const headerName of Object.keys(headers)) {
+        if (soughtHeader === headerName.toLowerCase()) {
+          return true;
+        }
+      }
+      return false;
+    }, "hasHeader");
+    var import_protocol_http8 = require_dist_cjs2();
+    var moveHeadersToQuery = /* @__PURE__ */ __name2((request2, options = {}) => {
+      var _a7, _b;
+      const { headers, query = {} } = import_protocol_http8.HttpRequest.clone(request2);
+      for (const name of Object.keys(headers)) {
+        const lname = name.toLowerCase();
+        if (lname.slice(0, 6) === "x-amz-" && !((_a7 = options.unhoistableHeaders) == null ? void 0 : _a7.has(lname)) || ((_b = options.hoistableHeaders) == null ? void 0 : _b.has(lname))) {
+          query[name] = headers[name];
+          delete headers[name];
+        }
+      }
+      return {
+        ...request2,
+        headers,
+        query
+      };
+    }, "moveHeadersToQuery");
+    var prepareRequest = /* @__PURE__ */ __name2((request2) => {
+      request2 = import_protocol_http8.HttpRequest.clone(request2);
+      for (const headerName of Object.keys(request2.headers)) {
+        if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {
+          delete request2.headers[headerName];
+        }
+      }
+      return request2;
+    }, "prepareRequest");
+    var iso8601 = /* @__PURE__ */ __name2((time) => toDate(time).toISOString().replace(/\.\d{3}Z$/, "Z"), "iso8601");
+    var toDate = /* @__PURE__ */ __name2((time) => {
+      if (typeof time === "number") {
+        return new Date(time * 1e3);
+      }
+      if (typeof time === "string") {
+        if (Number(time)) {
+          return new Date(Number(time) * 1e3);
+        }
+        return new Date(time);
+      }
+      return time;
+    }, "toDate");
+    var _SignatureV4 = class _SignatureV4 {
+      constructor({
+        applyChecksum,
+        credentials,
+        region,
+        service,
+        sha256,
+        uriEscapePath = true
+      }) {
+        this.headerFormatter = new HeaderFormatter();
+        this.service = service;
+        this.sha256 = sha256;
+        this.uriEscapePath = uriEscapePath;
+        this.applyChecksum = typeof applyChecksum === "boolean" ? applyChecksum : true;
+        this.regionProvider = (0, import_util_middleware3.normalizeProvider)(region);
+        this.credentialProvider = (0, import_util_middleware3.normalizeProvider)(credentials);
+      }
+      async presign(originalRequest, options = {}) {
+        const {
+          signingDate = /* @__PURE__ */ new Date(),
+          expiresIn = 3600,
+          unsignableHeaders,
+          unhoistableHeaders,
+          signableHeaders,
+          hoistableHeaders,
+          signingRegion,
+          signingService
+        } = options;
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { longDate, shortDate } = formatDate(signingDate);
+        if (expiresIn > MAX_PRESIGNED_TTL) {
+          return Promise.reject(
+            "Signature version 4 presigned URLs must have an expiration date less than one week in the future"
+          );
+        }
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const request2 = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders, hoistableHeaders });
+        if (credentials.sessionToken) {
+          request2.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;
+        }
+        request2.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;
+        request2.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;
+        request2.query[AMZ_DATE_QUERY_PARAM] = longDate;
+        request2.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        request2.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders);
+        request2.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256))
+        );
+        return request2;
+      }
+      async sign(toSign, options) {
+        if (typeof toSign === "string") {
+          return this.signString(toSign, options);
+        } else if (toSign.headers && toSign.payload) {
+          return this.signEvent(toSign, options);
+        } else if (toSign.message) {
+          return this.signMessage(toSign, options);
+        } else {
+          return this.signRequest(toSign, options);
+        }
+      }
+      async signEvent({ headers, payload }, { signingDate = /* @__PURE__ */ new Date(), priorSignature, signingRegion, signingService }) {
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate, longDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);
+        const hash = new this.sha256();
+        hash.update(headers);
+        const hashedHeaders = (0, import_util_hex_encoding.toHex)(await hash.digest());
+        const stringToSign = [
+          EVENT_ALGORITHM_IDENTIFIER,
+          longDate,
+          scope,
+          priorSignature,
+          hashedHeaders,
+          hashedPayload
+        ].join("\n");
+        return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });
+      }
+      async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) {
+        const promise = this.signEvent(
+          {
+            headers: this.headerFormatter.format(signableMessage.message.headers),
+            payload: signableMessage.message.body
+          },
+          {
+            signingDate,
+            signingRegion,
+            signingService,
+            priorSignature: signableMessage.priorSignature
+          }
+        );
+        return promise.then((signature) => {
+          return { message: signableMessage.message, signature };
+        });
+      }
+      async signString(stringToSign, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate } = formatDate(signingDate);
+        const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      async signRequest(requestToSign, {
+        signingDate = /* @__PURE__ */ new Date(),
+        signableHeaders,
+        unsignableHeaders,
+        signingRegion,
+        signingService
+      } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const request2 = prepareRequest(requestToSign);
+        const { longDate, shortDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        request2.headers[AMZ_DATE_HEADER] = longDate;
+        if (credentials.sessionToken) {
+          request2.headers[TOKEN_HEADER] = credentials.sessionToken;
+        }
+        const payloadHash = await getPayloadHash(request2, this.sha256);
+        if (!hasHeader(SHA256_HEADER, request2.headers) && this.applyChecksum) {
+          request2.headers[SHA256_HEADER] = payloadHash;
+        }
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        const signature = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, payloadHash)
+        );
+        request2.headers[AUTH_HEADER] = `${ALGORITHM_IDENTIFIER} Credential=${credentials.accessKeyId}/${scope}, SignedHeaders=${getCanonicalHeaderList(canonicalHeaders)}, Signature=${signature}`;
+        return request2;
+      }
+      createCanonicalRequest(request2, canonicalHeaders, payloadHash) {
+        const sortedHeaders = Object.keys(canonicalHeaders).sort();
+        return `${request2.method}
+${this.getCanonicalPath(request2)}
+${getCanonicalQuery(request2)}
+${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join("\n")}
+
+${sortedHeaders.join(";")}
+${payloadHash}`;
+      }
+      async createStringToSign(longDate, credentialScope, canonicalRequest) {
+        const hash = new this.sha256();
+        hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest));
+        const hashedRequest = await hash.digest();
+        return `${ALGORITHM_IDENTIFIER}
+${longDate}
+${credentialScope}
+${(0, import_util_hex_encoding.toHex)(hashedRequest)}`;
+      }
+      getCanonicalPath({ path: path23 }) {
+        if (this.uriEscapePath) {
+          const normalizedPathSegments = [];
+          for (const pathSegment of path23.split("/")) {
+            if ((pathSegment == null ? void 0 : pathSegment.length) === 0)
+              continue;
+            if (pathSegment === ".")
+              continue;
+            if (pathSegment === "..") {
+              normalizedPathSegments.pop();
+            } else {
+              normalizedPathSegments.push(pathSegment);
+            }
+          }
+          const normalizedPath = `${(path23 == null ? void 0 : path23.startsWith("/")) ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && (path23 == null ? void 0 : path23.endsWith("/")) ? "/" : ""}`;
+          const doubleEncoded = (0, import_util_uri_escape.escapeUri)(normalizedPath);
+          return doubleEncoded.replace(/%2F/g, "/");
+        }
+        return path23;
+      }
+      async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {
+        const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest);
+        const hash = new this.sha256(await keyPromise);
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      getSigningKey(credentials, region, shortDate, service) {
+        return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);
+      }
+      validateResolvedCredentials(credentials) {
+        if (typeof credentials !== "object" || // @ts-expect-error: Property 'accessKeyId' does not exist on type 'object'.ts(2339)
+        typeof credentials.accessKeyId !== "string" || // @ts-expect-error: Property 'secretAccessKey' does not exist on type 'object'.ts(2339)
+        typeof credentials.secretAccessKey !== "string") {
+          throw new Error("Resolved credential object is not valid");
+        }
+      }
+    };
+    __name2(_SignatureV4, "SignatureV4");
+    var SignatureV42 = _SignatureV4;
+    var formatDate = /* @__PURE__ */ __name2((now) => {
+      const longDate = iso8601(now).replace(/[\-:]/g, "");
+      return {
+        longDate,
+        shortDate: longDate.slice(0, 8)
+      };
+    }, "formatDate");
+    var getCanonicalHeaderList = /* @__PURE__ */ __name2((headers) => Object.keys(headers).sort().join(";"), "getCanonicalHeaderList");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js
+var import_signature_v4, resolveAwsSdkSigV4Config, resolveAWSSDKSigV4Config;
+var init_resolveAwsSdkSigV4Config = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js"() {
+    init_dist_es();
+    import_signature_v4 = __toESM(require_dist_cjs35());
+    resolveAwsSdkSigV4Config = (config) => {
+      let normalizedCreds;
+      if (config.credentials) {
+        normalizedCreds = memoizeIdentityProvider(config.credentials, isIdentityExpired, doesIdentityRequireRefresh);
+      }
+      if (!normalizedCreds) {
+        if (config.credentialDefaultProvider) {
+          normalizedCreds = normalizeProvider(config.credentialDefaultProvider(Object.assign({}, config, {
+            parentClientConfig: config
+          })));
+        } else {
+          normalizedCreds = async () => {
+            throw new Error("`credentials` is missing");
+          };
+        }
+      }
+      const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256 } = config;
+      let signer;
+      if (config.signer) {
+        signer = normalizeProvider(config.signer);
+      } else if (config.regionInfoProvider) {
+        signer = () => normalizeProvider(config.region)().then(async (region) => [
+          await config.regionInfoProvider(region, {
+            useFipsEndpoint: await config.useFipsEndpoint(),
+            useDualstackEndpoint: await config.useDualstackEndpoint()
+          }) || {},
+          region
+        ]).then(([regionInfo, region]) => {
+          const { signingRegion, signingService } = regionInfo;
+          config.signingRegion = config.signingRegion || signingRegion || region;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        });
+      } else {
+        signer = async (authScheme) => {
+          authScheme = Object.assign({}, {
+            name: "sigv4",
+            signingName: config.signingName || config.defaultSigningName,
+            signingRegion: await normalizeProvider(config.region)(),
+            properties: {}
+          }, authScheme);
+          const signingRegion = authScheme.signingRegion;
+          const signingService = authScheme.signingName;
+          config.signingRegion = config.signingRegion || signingRegion;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        };
+      }
+      return {
+        ...config,
+        systemClockOffset,
+        signingEscapePath,
+        credentials: normalizedCreds,
+        signer
+      };
+    };
+    resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js
+var init_aws_sdk = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js"() {
+    init_AwsSdkSigV4Signer();
+    init_AwsSdkSigV4ASigner();
+    init_resolveAwsSdkSigV4AConfig();
+    init_resolveAwsSdkSigV4Config();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js
+var init_httpAuthSchemes2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js"() {
+    init_aws_sdk();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js
+var _toStr, _toBool, _toNum;
+var init_coercing_serializers = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js"() {
+    _toStr = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number" || typeof val2 === "bigint") {
+        const warning = new Error(`Received number ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      if (typeof val2 === "boolean") {
+        const warning = new Error(`Received boolean ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      return val2;
+    };
+    _toBool = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number") {
+      }
+      if (typeof val2 === "string") {
+        const lowercase = val2.toLowerCase();
+        if (val2 !== "" && lowercase !== "false" && lowercase !== "true") {
+          const warning = new Error(`Received string "${val2}" where a boolean was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+        }
+        return val2 !== "" && lowercase !== "false";
+      }
+      return val2;
+    };
+    _toNum = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "boolean") {
+      }
+      if (typeof val2 === "string") {
+        const num = Number(val2);
+        if (num.toString() !== val2) {
+          const warning = new Error(`Received string "${val2}" where a number was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+          return val2;
+        }
+        return num;
+      }
+      return val2;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js
+var import_smithy_client, awsExpectUnion;
+var init_awsExpectUnion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js"() {
+    import_smithy_client = __toESM(require_dist_cjs33());
+    awsExpectUnion = (value) => {
+      if (value == null) {
+        return void 0;
+      }
+      if (typeof value === "object" && "__type" in value) {
+        delete value.__type;
+      }
+      return (0, import_smithy_client.expectUnion)(value);
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js
+var import_smithy_client2, collectBodyString;
+var init_common = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js"() {
+    import_smithy_client2 = __toESM(require_dist_cjs33());
+    collectBodyString = (streamBody, context) => (0, import_smithy_client2.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body));
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js
+var parseJsonBody, parseJsonErrorBody, loadRestJsonErrorCode;
+var init_parseJsonBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js"() {
+    init_common();
+    parseJsonBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        try {
+          return JSON.parse(encoded);
+        } catch (e) {
+          if (e?.name === "SyntaxError") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+      }
+      return {};
+    });
+    parseJsonErrorBody = async (errorBody, context) => {
+      const value = await parseJsonBody(errorBody, context);
+      value.message = value.message ?? value.Message;
+      return value;
+    };
+    loadRestJsonErrorCode = (output, data) => {
+      const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase());
+      const sanitizeErrorCode = (rawValue) => {
+        let cleanValue = rawValue;
+        if (typeof cleanValue === "number") {
+          cleanValue = cleanValue.toString();
+        }
+        if (cleanValue.indexOf(",") >= 0) {
+          cleanValue = cleanValue.split(",")[0];
+        }
+        if (cleanValue.indexOf(":") >= 0) {
+          cleanValue = cleanValue.split(":")[0];
+        }
+        if (cleanValue.indexOf("#") >= 0) {
+          cleanValue = cleanValue.split("#")[1];
+        }
+        return cleanValue;
+      };
+      const headerKey = findKey(output.headers, "x-amzn-errortype");
+      if (headerKey !== void 0) {
+        return sanitizeErrorCode(output.headers[headerKey]);
+      }
+      if (data.code !== void 0) {
+        return sanitizeErrorCode(data.code);
+      }
+      if (data["__type"] !== void 0) {
+        return sanitizeErrorCode(data["__type"]);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/util.js
+var require_util = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/util.js"(exports2) {
+    "use strict";
+    var nameStartChar = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD";
+    var nameChar = nameStartChar + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040";
+    var nameRegexp = "[" + nameStartChar + "][" + nameChar + "]*";
+    var regexName = new RegExp("^" + nameRegexp + "$");
+    var getAllMatches = function(string, regex) {
+      const matches = [];
+      let match = regex.exec(string);
+      while (match) {
+        const allmatches = [];
+        allmatches.startIndex = regex.lastIndex - match[0].length;
+        const len = match.length;
+        for (let index = 0; index < len; index++) {
+          allmatches.push(match[index]);
+        }
+        matches.push(allmatches);
+        match = regex.exec(string);
+      }
+      return matches;
+    };
+    var isName = function(string) {
+      const match = regexName.exec(string);
+      return !(match === null || typeof match === "undefined");
+    };
+    exports2.isExist = function(v) {
+      return typeof v !== "undefined";
+    };
+    exports2.isEmptyObject = function(obj) {
+      return Object.keys(obj).length === 0;
+    };
+    exports2.merge = function(target, a, arrayMode) {
+      if (a) {
+        const keys = Object.keys(a);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          if (arrayMode === "strict") {
+            target[keys[i]] = [a[keys[i]]];
+          } else {
+            target[keys[i]] = a[keys[i]];
+          }
+        }
+      }
+    };
+    exports2.getValue = function(v) {
+      if (exports2.isExist(v)) {
+        return v;
+      } else {
+        return "";
+      }
+    };
+    exports2.isName = isName;
+    exports2.getAllMatches = getAllMatches;
+    exports2.nameRegexp = nameRegexp;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/validator.js
+var require_validator2 = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/validator.js"(exports2) {
+    "use strict";
+    var util = require_util();
+    var defaultOptions = {
+      allowBooleanAttributes: false,
+      //A tag can have attributes without any value
+      unpairedTags: []
+    };
+    exports2.validate = function(xmlData, options) {
+      options = Object.assign({}, defaultOptions, options);
+      const tags = [];
+      let tagFound = false;
+      let reachedRoot = false;
+      if (xmlData[0] === "\uFEFF") {
+        xmlData = xmlData.substr(1);
+      }
+      for (let i = 0; i < xmlData.length; i++) {
+        if (xmlData[i] === "<" && xmlData[i + 1] === "?") {
+          i += 2;
+          i = readPI(xmlData, i);
+          if (i.err) return i;
+        } else if (xmlData[i] === "<") {
+          let tagStartPos = i;
+          i++;
+          if (xmlData[i] === "!") {
+            i = readCommentAndCDATA(xmlData, i);
+            continue;
+          } else {
+            let closingTag = false;
+            if (xmlData[i] === "/") {
+              closingTag = true;
+              i++;
+            }
+            let tagName = "";
+            for (; i < xmlData.length && xmlData[i] !== ">" && xmlData[i] !== " " && xmlData[i] !== "	" && xmlData[i] !== "\n" && xmlData[i] !== "\r"; i++) {
+              tagName += xmlData[i];
+            }
+            tagName = tagName.trim();
+            if (tagName[tagName.length - 1] === "/") {
+              tagName = tagName.substring(0, tagName.length - 1);
+              i--;
+            }
+            if (!validateTagName(tagName)) {
+              let msg;
+              if (tagName.trim().length === 0) {
+                msg = "Invalid space after '<'.";
+              } else {
+                msg = "Tag '" + tagName + "' is an invalid name.";
+              }
+              return getErrorObject("InvalidTag", msg, getLineNumberForPosition(xmlData, i));
+            }
+            const result = readAttributeStr(xmlData, i);
+            if (result === false) {
+              return getErrorObject("InvalidAttr", "Attributes for '" + tagName + "' have open quote.", getLineNumberForPosition(xmlData, i));
+            }
+            let attrStr = result.value;
+            i = result.index;
+            if (attrStr[attrStr.length - 1] === "/") {
+              const attrStrStart = i - attrStr.length;
+              attrStr = attrStr.substring(0, attrStr.length - 1);
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid === true) {
+                tagFound = true;
+              } else {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));
+              }
+            } else if (closingTag) {
+              if (!result.tagClosed) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' doesn't have proper closing.", getLineNumberForPosition(xmlData, i));
+              } else if (attrStr.trim().length > 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' can't have attributes or invalid starting.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else if (tags.length === 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' has not been opened.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else {
+                const otg = tags.pop();
+                if (tagName !== otg.tagName) {
+                  let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);
+                  return getErrorObject(
+                    "InvalidTag",
+                    "Expected closing tag '" + otg.tagName + "' (opened in line " + openPos.line + ", col " + openPos.col + ") instead of closing tag '" + tagName + "'.",
+                    getLineNumberForPosition(xmlData, tagStartPos)
+                  );
+                }
+                if (tags.length == 0) {
+                  reachedRoot = true;
+                }
+              }
+            } else {
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid !== true) {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));
+              }
+              if (reachedRoot === true) {
+                return getErrorObject("InvalidXml", "Multiple possible root nodes found.", getLineNumberForPosition(xmlData, i));
+              } else if (options.unpairedTags.indexOf(tagName) !== -1) {
+              } else {
+                tags.push({ tagName, tagStartPos });
+              }
+              tagFound = true;
+            }
+            for (i++; i < xmlData.length; i++) {
+              if (xmlData[i] === "<") {
+                if (xmlData[i + 1] === "!") {
+                  i++;
+                  i = readCommentAndCDATA(xmlData, i);
+                  continue;
+                } else if (xmlData[i + 1] === "?") {
+                  i = readPI(xmlData, ++i);
+                  if (i.err) return i;
+                } else {
+                  break;
+                }
+              } else if (xmlData[i] === "&") {
+                const afterAmp = validateAmpersand(xmlData, i);
+                if (afterAmp == -1)
+                  return getErrorObject("InvalidChar", "char '&' is not expected.", getLineNumberForPosition(xmlData, i));
+                i = afterAmp;
+              } else {
+                if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {
+                  return getErrorObject("InvalidXml", "Extra text at the end", getLineNumberForPosition(xmlData, i));
+                }
+              }
+            }
+            if (xmlData[i] === "<") {
+              i--;
+            }
+          }
+        } else {
+          if (isWhiteSpace(xmlData[i])) {
+            continue;
+          }
+          return getErrorObject("InvalidChar", "char '" + xmlData[i] + "' is not expected.", getLineNumberForPosition(xmlData, i));
+        }
+      }
+      if (!tagFound) {
+        return getErrorObject("InvalidXml", "Start tag expected.", 1);
+      } else if (tags.length == 1) {
+        return getErrorObject("InvalidTag", "Unclosed tag '" + tags[0].tagName + "'.", getLineNumberForPosition(xmlData, tags[0].tagStartPos));
+      } else if (tags.length > 0) {
+        return getErrorObject("InvalidXml", "Invalid '" + JSON.stringify(tags.map((t) => t.tagName), null, 4).replace(/\r?\n/g, "") + "' found.", { line: 1, col: 1 });
+      }
+      return true;
+    };
+    function isWhiteSpace(char) {
+      return char === " " || char === "	" || char === "\n" || char === "\r";
+    }
+    function readPI(xmlData, i) {
+      const start = i;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] == "?" || xmlData[i] == " ") {
+          const tagname = xmlData.substr(start, i - start);
+          if (i > 5 && tagname === "xml") {
+            return getErrorObject("InvalidXml", "XML declaration allowed only at the start of the document.", getLineNumberForPosition(xmlData, i));
+          } else if (xmlData[i] == "?" && xmlData[i + 1] == ">") {
+            i++;
+            break;
+          } else {
+            continue;
+          }
+        }
+      }
+      return i;
+    }
+    function readCommentAndCDATA(xmlData, i) {
+      if (xmlData.length > i + 5 && xmlData[i + 1] === "-" && xmlData[i + 2] === "-") {
+        for (i += 3; i < xmlData.length; i++) {
+          if (xmlData[i] === "-" && xmlData[i + 1] === "-" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      } else if (xmlData.length > i + 8 && xmlData[i + 1] === "D" && xmlData[i + 2] === "O" && xmlData[i + 3] === "C" && xmlData[i + 4] === "T" && xmlData[i + 5] === "Y" && xmlData[i + 6] === "P" && xmlData[i + 7] === "E") {
+        let angleBracketsCount = 1;
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "<") {
+            angleBracketsCount++;
+          } else if (xmlData[i] === ">") {
+            angleBracketsCount--;
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          }
+        }
+      } else if (xmlData.length > i + 9 && xmlData[i + 1] === "[" && xmlData[i + 2] === "C" && xmlData[i + 3] === "D" && xmlData[i + 4] === "A" && xmlData[i + 5] === "T" && xmlData[i + 6] === "A" && xmlData[i + 7] === "[") {
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "]" && xmlData[i + 1] === "]" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      }
+      return i;
+    }
+    var doubleQuote = '"';
+    var singleQuote = "'";
+    function readAttributeStr(xmlData, i) {
+      let attrStr = "";
+      let startChar = "";
+      let tagClosed = false;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {
+          if (startChar === "") {
+            startChar = xmlData[i];
+          } else if (startChar !== xmlData[i]) {
+          } else {
+            startChar = "";
+          }
+        } else if (xmlData[i] === ">") {
+          if (startChar === "") {
+            tagClosed = true;
+            break;
+          }
+        }
+        attrStr += xmlData[i];
+      }
+      if (startChar !== "") {
+        return false;
+      }
+      return {
+        value: attrStr,
+        index: i,
+        tagClosed
+      };
+    }
+    var validAttrStrRegxp = new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`, "g");
+    function validateAttributeString(attrStr, options) {
+      const matches = util.getAllMatches(attrStr, validAttrStrRegxp);
+      const attrNames = {};
+      for (let i = 0; i < matches.length; i++) {
+        if (matches[i][1].length === 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' has no space in starting.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] !== void 0 && matches[i][4] === void 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' is without value.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] === void 0 && !options.allowBooleanAttributes) {
+          return getErrorObject("InvalidAttr", "boolean attribute '" + matches[i][2] + "' is not allowed.", getPositionFromMatch(matches[i]));
+        }
+        const attrName = matches[i][2];
+        if (!validateAttrName(attrName)) {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is an invalid name.", getPositionFromMatch(matches[i]));
+        }
+        if (!attrNames.hasOwnProperty(attrName)) {
+          attrNames[attrName] = 1;
+        } else {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is repeated.", getPositionFromMatch(matches[i]));
+        }
+      }
+      return true;
+    }
+    function validateNumberAmpersand(xmlData, i) {
+      let re = /\d/;
+      if (xmlData[i] === "x") {
+        i++;
+        re = /[\da-fA-F]/;
+      }
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === ";")
+          return i;
+        if (!xmlData[i].match(re))
+          break;
+      }
+      return -1;
+    }
+    function validateAmpersand(xmlData, i) {
+      i++;
+      if (xmlData[i] === ";")
+        return -1;
+      if (xmlData[i] === "#") {
+        i++;
+        return validateNumberAmpersand(xmlData, i);
+      }
+      let count2 = 0;
+      for (; i < xmlData.length; i++, count2++) {
+        if (xmlData[i].match(/\w/) && count2 < 20)
+          continue;
+        if (xmlData[i] === ";")
+          break;
+        return -1;
+      }
+      return i;
+    }
+    function getErrorObject(code, message, lineNumber) {
+      return {
+        err: {
+          code,
+          msg: message,
+          line: lineNumber.line || lineNumber,
+          col: lineNumber.col
+        }
+      };
+    }
+    function validateAttrName(attrName) {
+      return util.isName(attrName);
+    }
+    function validateTagName(tagname) {
+      return util.isName(tagname);
+    }
+    function getLineNumberForPosition(xmlData, index) {
+      const lines = xmlData.substring(0, index).split(/\r?\n/);
+      return {
+        line: lines.length,
+        // column number is last line's length + 1, because column numbering starts at 1:
+        col: lines[lines.length - 1].length + 1
+      };
+    }
+    function getPositionFromMatch(match) {
+      return match.startIndex + match[1].length;
+    }
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js
+var require_OptionsBuilder = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js"(exports2) {
+    var defaultOptions = {
+      preserveOrder: false,
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      removeNSPrefix: false,
+      // remove NS from tag name or attribute name if true
+      allowBooleanAttributes: false,
+      //a tag can have attributes without any value
+      //ignoreRootElement : false,
+      parseTagValue: true,
+      parseAttributeValue: false,
+      trimValues: true,
+      //Trim string values of tag and attributes
+      cdataPropName: false,
+      numberParseOptions: {
+        hex: true,
+        leadingZeros: true,
+        eNotation: true
+      },
+      tagValueProcessor: function(tagName, val2) {
+        return val2;
+      },
+      attributeValueProcessor: function(attrName, val2) {
+        return val2;
+      },
+      stopNodes: [],
+      //nested tags will not be parsed even for errors
+      alwaysCreateTextNode: false,
+      isArray: () => false,
+      commentPropName: false,
+      unpairedTags: [],
+      processEntities: true,
+      htmlEntities: false,
+      ignoreDeclaration: false,
+      ignorePiTags: false,
+      transformTagName: false,
+      transformAttributeName: false,
+      updateTag: function(tagName, jPath, attrs) {
+        return tagName;
+      }
+      // skipEmptyListItem: false
+    };
+    var buildOptions = function(options) {
+      return Object.assign({}, defaultOptions, options);
+    };
+    exports2.buildOptions = buildOptions;
+    exports2.defaultOptions = defaultOptions;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js
+var require_xmlNode = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js"(exports2, module2) {
+    "use strict";
+    var XmlNode = class {
+      constructor(tagname) {
+        this.tagname = tagname;
+        this.child = [];
+        this[":@"] = {};
+      }
+      add(key, val2) {
+        if (key === "__proto__") key = "#__proto__";
+        this.child.push({ [key]: val2 });
+      }
+      addChild(node) {
+        if (node.tagname === "__proto__") node.tagname = "#__proto__";
+        if (node[":@"] && Object.keys(node[":@"]).length > 0) {
+          this.child.push({ [node.tagname]: node.child, [":@"]: node[":@"] });
+        } else {
+          this.child.push({ [node.tagname]: node.child });
+        }
+      }
+    };
+    module2.exports = XmlNode;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js
+var require_DocTypeReader = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js"(exports2, module2) {
+    var util = require_util();
+    function readDocType(xmlData, i) {
+      const entities = {};
+      if (xmlData[i + 3] === "O" && xmlData[i + 4] === "C" && xmlData[i + 5] === "T" && xmlData[i + 6] === "Y" && xmlData[i + 7] === "P" && xmlData[i + 8] === "E") {
+        i = i + 9;
+        let angleBracketsCount = 1;
+        let hasBody = false, comment = false;
+        let exp = "";
+        for (; i < xmlData.length; i++) {
+          if (xmlData[i] === "<" && !comment) {
+            if (hasBody && isEntity(xmlData, i)) {
+              i += 7;
+              [entityName, val, i] = readEntityExp(xmlData, i + 1);
+              if (val.indexOf("&") === -1)
+                entities[validateEntityName(entityName)] = {
+                  regx: RegExp(`&${entityName};`, "g"),
+                  val
+                };
+            } else if (hasBody && isElement(xmlData, i)) i += 8;
+            else if (hasBody && isAttlist(xmlData, i)) i += 8;
+            else if (hasBody && isNotation(xmlData, i)) i += 9;
+            else if (isComment) comment = true;
+            else throw new Error("Invalid DOCTYPE");
+            angleBracketsCount++;
+            exp = "";
+          } else if (xmlData[i] === ">") {
+            if (comment) {
+              if (xmlData[i - 1] === "-" && xmlData[i - 2] === "-") {
+                comment = false;
+                angleBracketsCount--;
+              }
+            } else {
+              angleBracketsCount--;
+            }
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          } else if (xmlData[i] === "[") {
+            hasBody = true;
+          } else {
+            exp += xmlData[i];
+          }
+        }
+        if (angleBracketsCount !== 0) {
+          throw new Error(`Unclosed DOCTYPE`);
+        }
+      } else {
+        throw new Error(`Invalid Tag instead of DOCTYPE`);
+      }
+      return { entities, i };
+    }
+    function readEntityExp(xmlData, i) {
+      let entityName2 = "";
+      for (; i < xmlData.length && (xmlData[i] !== "'" && xmlData[i] !== '"'); i++) {
+        entityName2 += xmlData[i];
+      }
+      entityName2 = entityName2.trim();
+      if (entityName2.indexOf(" ") !== -1) throw new Error("External entites are not supported");
+      const startChar = xmlData[i++];
+      let val2 = "";
+      for (; i < xmlData.length && xmlData[i] !== startChar; i++) {
+        val2 += xmlData[i];
+      }
+      return [entityName2, val2, i];
+    }
+    function isComment(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "-" && xmlData[i + 3] === "-") return true;
+      return false;
+    }
+    function isEntity(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "N" && xmlData[i + 4] === "T" && xmlData[i + 5] === "I" && xmlData[i + 6] === "T" && xmlData[i + 7] === "Y") return true;
+      return false;
+    }
+    function isElement(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "L" && xmlData[i + 4] === "E" && xmlData[i + 5] === "M" && xmlData[i + 6] === "E" && xmlData[i + 7] === "N" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isAttlist(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "A" && xmlData[i + 3] === "T" && xmlData[i + 4] === "T" && xmlData[i + 5] === "L" && xmlData[i + 6] === "I" && xmlData[i + 7] === "S" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isNotation(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "N" && xmlData[i + 3] === "O" && xmlData[i + 4] === "T" && xmlData[i + 5] === "A" && xmlData[i + 6] === "T" && xmlData[i + 7] === "I" && xmlData[i + 8] === "O" && xmlData[i + 9] === "N") return true;
+      return false;
+    }
+    function validateEntityName(name) {
+      if (util.isName(name))
+        return name;
+      else
+        throw new Error(`Invalid entity name ${name}`);
+    }
+    module2.exports = readDocType;
+  }
+});
+
+// ../../../node_modules/strnum/strnum.js
+var require_strnum = __commonJS({
+  "../../../node_modules/strnum/strnum.js"(exports2, module2) {
+    var hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;
+    var numRegex = /^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/;
+    var consider = {
+      hex: true,
+      // oct: false,
+      leadingZeros: true,
+      decimalPoint: ".",
+      eNotation: true
+      //skipLike: /regex/
+    };
+    function toNumber(str, options = {}) {
+      options = Object.assign({}, consider, options);
+      if (!str || typeof str !== "string") return str;
+      let trimmedStr = str.trim();
+      if (options.skipLike !== void 0 && options.skipLike.test(trimmedStr)) return str;
+      else if (str === "0") return 0;
+      else if (options.hex && hexRegex.test(trimmedStr)) {
+        return parse_int(trimmedStr, 16);
+      } else if (trimmedStr.search(/[eE]/) !== -1) {
+        const notation = trimmedStr.match(/^([-\+])?(0*)([0-9]*(\.[0-9]*)?[eE][-\+]?[0-9]+)$/);
+        if (notation) {
+          if (options.leadingZeros) {
+            trimmedStr = (notation[1] || "") + notation[3];
+          } else {
+            if (notation[2] === "0" && notation[3][0] === ".") {
+            } else {
+              return str;
+            }
+          }
+          return options.eNotation ? Number(trimmedStr) : str;
+        } else {
+          return str;
+        }
+      } else {
+        const match = numRegex.exec(trimmedStr);
+        if (match) {
+          const sign = match[1];
+          const leadingZeros = match[2];
+          let numTrimmedByZeros = trimZeros(match[3]);
+          if (!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== ".") return str;
+          else if (!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== ".") return str;
+          else if (options.leadingZeros && leadingZeros === str) return 0;
+          else {
+            const num = Number(trimmedStr);
+            const numStr = "" + num;
+            if (numStr.search(/[eE]/) !== -1) {
+              if (options.eNotation) return num;
+              else return str;
+            } else if (trimmedStr.indexOf(".") !== -1) {
+              if (numStr === "0" && numTrimmedByZeros === "") return num;
+              else if (numStr === numTrimmedByZeros) return num;
+              else if (sign && numStr === "-" + numTrimmedByZeros) return num;
+              else return str;
+            }
+            if (leadingZeros) {
+              return numTrimmedByZeros === numStr || sign + numTrimmedByZeros === numStr ? num : str;
+            } else {
+              return trimmedStr === numStr || trimmedStr === sign + numStr ? num : str;
+            }
+          }
+        } else {
+          return str;
+        }
+      }
+    }
+    function trimZeros(numStr) {
+      if (numStr && numStr.indexOf(".") !== -1) {
+        numStr = numStr.replace(/0+$/, "");
+        if (numStr === ".") numStr = "0";
+        else if (numStr[0] === ".") numStr = "0" + numStr;
+        else if (numStr[numStr.length - 1] === ".") numStr = numStr.substr(0, numStr.length - 1);
+        return numStr;
+      }
+      return numStr;
+    }
+    function parse_int(numStr, base) {
+      if (parseInt) return parseInt(numStr, base);
+      else if (Number.parseInt) return Number.parseInt(numStr, base);
+      else if (window && window.parseInt) return window.parseInt(numStr, base);
+      else throw new Error("parseInt, Number.parseInt, window.parseInt are not supported");
+    }
+    module2.exports = toNumber;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js
+var require_OrderedObjParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js"(exports2, module2) {
+    "use strict";
+    var util = require_util();
+    var xmlNode = require_xmlNode();
+    var readDocType = require_DocTypeReader();
+    var toNumber = require_strnum();
+    var OrderedObjParser = class {
+      constructor(options) {
+        this.options = options;
+        this.currentNode = null;
+        this.tagsNodeStack = [];
+        this.docTypeEntities = {};
+        this.lastEntities = {
+          "apos": { regex: /&(apos|#39|#x27);/g, val: "'" },
+          "gt": { regex: /&(gt|#62|#x3E);/g, val: ">" },
+          "lt": { regex: /&(lt|#60|#x3C);/g, val: "<" },
+          "quot": { regex: /&(quot|#34|#x22);/g, val: '"' }
+        };
+        this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: "&" };
+        this.htmlEntities = {
+          "space": { regex: /&(nbsp|#160);/g, val: " " },
+          // "lt" : { regex: /&(lt|#60);/g, val: "<" },
+          // "gt" : { regex: /&(gt|#62);/g, val: ">" },
+          // "amp" : { regex: /&(amp|#38);/g, val: "&" },
+          // "quot" : { regex: /&(quot|#34);/g, val: "\"" },
+          // "apos" : { regex: /&(apos|#39);/g, val: "'" },
+          "cent": { regex: /&(cent|#162);/g, val: "\xA2" },
+          "pound": { regex: /&(pound|#163);/g, val: "\xA3" },
+          "yen": { regex: /&(yen|#165);/g, val: "\xA5" },
+          "euro": { regex: /&(euro|#8364);/g, val: "\u20AC" },
+          "copyright": { regex: /&(copy|#169);/g, val: "\xA9" },
+          "reg": { regex: /&(reg|#174);/g, val: "\xAE" },
+          "inr": { regex: /&(inr|#8377);/g, val: "\u20B9" },
+          "num_dec": { regex: /&#([0-9]{1,7});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 10)) },
+          "num_hex": { regex: /&#x([0-9a-fA-F]{1,6});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 16)) }
+        };
+        this.addExternalEntities = addExternalEntities;
+        this.parseXml = parseXml;
+        this.parseTextData = parseTextData;
+        this.resolveNameSpace = resolveNameSpace;
+        this.buildAttributesMap = buildAttributesMap;
+        this.isItStopNode = isItStopNode;
+        this.replaceEntitiesValue = replaceEntitiesValue;
+        this.readStopNodeData = readStopNodeData;
+        this.saveTextToParentTag = saveTextToParentTag;
+        this.addChild = addChild;
+      }
+    };
+    function addExternalEntities(externalEntities) {
+      const entKeys = Object.keys(externalEntities);
+      for (let i = 0; i < entKeys.length; i++) {
+        const ent = entKeys[i];
+        this.lastEntities[ent] = {
+          regex: new RegExp("&" + ent + ";", "g"),
+          val: externalEntities[ent]
+        };
+      }
+    }
+    function parseTextData(val2, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {
+      if (val2 !== void 0) {
+        if (this.options.trimValues && !dontTrim) {
+          val2 = val2.trim();
+        }
+        if (val2.length > 0) {
+          if (!escapeEntities) val2 = this.replaceEntitiesValue(val2);
+          const newval = this.options.tagValueProcessor(tagName, val2, jPath, hasAttributes, isLeafNode);
+          if (newval === null || newval === void 0) {
+            return val2;
+          } else if (typeof newval !== typeof val2 || newval !== val2) {
+            return newval;
+          } else if (this.options.trimValues) {
+            return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+          } else {
+            const trimmedVal = val2.trim();
+            if (trimmedVal === val2) {
+              return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+            } else {
+              return val2;
+            }
+          }
+        }
+      }
+    }
+    function resolveNameSpace(tagname) {
+      if (this.options.removeNSPrefix) {
+        const tags = tagname.split(":");
+        const prefix = tagname.charAt(0) === "/" ? "/" : "";
+        if (tags[0] === "xmlns") {
+          return "";
+        }
+        if (tags.length === 2) {
+          tagname = prefix + tags[1];
+        }
+      }
+      return tagname;
+    }
+    var attrsRegx = new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`, "gm");
+    function buildAttributesMap(attrStr, jPath, tagName) {
+      if (!this.options.ignoreAttributes && typeof attrStr === "string") {
+        const matches = util.getAllMatches(attrStr, attrsRegx);
+        const len = matches.length;
+        const attrs = {};
+        for (let i = 0; i < len; i++) {
+          const attrName = this.resolveNameSpace(matches[i][1]);
+          let oldVal = matches[i][4];
+          let aName = this.options.attributeNamePrefix + attrName;
+          if (attrName.length) {
+            if (this.options.transformAttributeName) {
+              aName = this.options.transformAttributeName(aName);
+            }
+            if (aName === "__proto__") aName = "#__proto__";
+            if (oldVal !== void 0) {
+              if (this.options.trimValues) {
+                oldVal = oldVal.trim();
+              }
+              oldVal = this.replaceEntitiesValue(oldVal);
+              const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);
+              if (newVal === null || newVal === void 0) {
+                attrs[aName] = oldVal;
+              } else if (typeof newVal !== typeof oldVal || newVal !== oldVal) {
+                attrs[aName] = newVal;
+              } else {
+                attrs[aName] = parseValue(
+                  oldVal,
+                  this.options.parseAttributeValue,
+                  this.options.numberParseOptions
+                );
+              }
+            } else if (this.options.allowBooleanAttributes) {
+              attrs[aName] = true;
+            }
+          }
+        }
+        if (!Object.keys(attrs).length) {
+          return;
+        }
+        if (this.options.attributesGroupName) {
+          const attrCollection = {};
+          attrCollection[this.options.attributesGroupName] = attrs;
+          return attrCollection;
+        }
+        return attrs;
+      }
+    }
+    var parseXml = function(xmlData) {
+      xmlData = xmlData.replace(/\r\n?/g, "\n");
+      const xmlObj = new xmlNode("!xml");
+      let currentNode = xmlObj;
+      let textData = "";
+      let jPath = "";
+      for (let i = 0; i < xmlData.length; i++) {
+        const ch = xmlData[i];
+        if (ch === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, "Closing Tag is not closed.");
+            let tagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (this.options.removeNSPrefix) {
+              const colonIndex = tagName.indexOf(":");
+              if (colonIndex !== -1) {
+                tagName = tagName.substr(colonIndex + 1);
+              }
+            }
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode) {
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            }
+            const lastTagName = jPath.substring(jPath.lastIndexOf(".") + 1);
+            if (tagName && this.options.unpairedTags.indexOf(tagName) !== -1) {
+              throw new Error(`Unpaired tag can not be used as closing tag: `);
+            }
+            let propIndex = 0;
+            if (lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1) {
+              propIndex = jPath.lastIndexOf(".", jPath.lastIndexOf(".") - 1);
+              this.tagsNodeStack.pop();
+            } else {
+              propIndex = jPath.lastIndexOf(".");
+            }
+            jPath = jPath.substring(0, propIndex);
+            currentNode = this.tagsNodeStack.pop();
+            textData = "";
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            let tagData = readTagExp(xmlData, i, false, "?>");
+            if (!tagData) throw new Error("Pi Tag is not closed.");
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            if (this.options.ignoreDeclaration && tagData.tagName === "?xml" || this.options.ignorePiTags) {
+            } else {
+              const childNode = new xmlNode(tagData.tagName);
+              childNode.add(this.options.textNodeName, "");
+              if (tagData.tagName !== tagData.tagExp && tagData.attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName);
+              }
+              this.addChild(currentNode, childNode, jPath);
+            }
+            i = tagData.closeIndex + 1;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const endIndex = findClosingIndex(xmlData, "-->", i + 4, "Comment is not closed.");
+            if (this.options.commentPropName) {
+              const comment = xmlData.substring(i + 4, endIndex - 2);
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+              currentNode.add(this.options.commentPropName, [{ [this.options.textNodeName]: comment }]);
+            }
+            i = endIndex;
+          } else if (xmlData.substr(i + 1, 2) === "!D") {
+            const result = readDocType(xmlData, i);
+            this.docTypeEntities = result.entities;
+            i = result.i;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "CDATA is not closed.") - 2;
+            const tagExp = xmlData.substring(i + 9, closeIndex);
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            let val2 = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);
+            if (val2 == void 0) val2 = "";
+            if (this.options.cdataPropName) {
+              currentNode.add(this.options.cdataPropName, [{ [this.options.textNodeName]: tagExp }]);
+            } else {
+              currentNode.add(this.options.textNodeName, val2);
+            }
+            i = closeIndex + 2;
+          } else {
+            let result = readTagExp(xmlData, i, this.options.removeNSPrefix);
+            let tagName = result.tagName;
+            const rawTagName = result.rawTagName;
+            let tagExp = result.tagExp;
+            let attrExpPresent = result.attrExpPresent;
+            let closeIndex = result.closeIndex;
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode && textData) {
+              if (currentNode.tagname !== "!xml") {
+                textData = this.saveTextToParentTag(textData, currentNode, jPath, false);
+              }
+            }
+            const lastTag = currentNode;
+            if (lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1) {
+              currentNode = this.tagsNodeStack.pop();
+              jPath = jPath.substring(0, jPath.lastIndexOf("."));
+            }
+            if (tagName !== xmlObj.tagname) {
+              jPath += jPath ? "." + tagName : tagName;
+            }
+            if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) {
+              let tagContent = "";
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                i = result.closeIndex;
+              } else if (this.options.unpairedTags.indexOf(tagName) !== -1) {
+                i = result.closeIndex;
+              } else {
+                const result2 = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);
+                if (!result2) throw new Error(`Unexpected end of ${rawTagName}`);
+                i = result2.i;
+                tagContent = result2.tagContent;
+              }
+              const childNode = new xmlNode(tagName);
+              if (tagName !== tagExp && attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+              }
+              if (tagContent) {
+                tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);
+              }
+              jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              childNode.add(this.options.textNodeName, tagContent);
+              this.addChild(currentNode, childNode, jPath);
+            } else {
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                if (this.options.transformTagName) {
+                  tagName = this.options.transformTagName(tagName);
+                }
+                const childNode = new xmlNode(tagName);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              } else {
+                const childNode = new xmlNode(tagName);
+                this.tagsNodeStack.push(currentNode);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                currentNode = childNode;
+              }
+              textData = "";
+              i = closeIndex;
+            }
+          }
+        } else {
+          textData += xmlData[i];
+        }
+      }
+      return xmlObj.child;
+    };
+    function addChild(currentNode, childNode, jPath) {
+      const result = this.options.updateTag(childNode.tagname, jPath, childNode[":@"]);
+      if (result === false) {
+      } else if (typeof result === "string") {
+        childNode.tagname = result;
+        currentNode.addChild(childNode);
+      } else {
+        currentNode.addChild(childNode);
+      }
+    }
+    var replaceEntitiesValue = function(val2) {
+      if (this.options.processEntities) {
+        for (let entityName2 in this.docTypeEntities) {
+          const entity = this.docTypeEntities[entityName2];
+          val2 = val2.replace(entity.regx, entity.val);
+        }
+        for (let entityName2 in this.lastEntities) {
+          const entity = this.lastEntities[entityName2];
+          val2 = val2.replace(entity.regex, entity.val);
+        }
+        if (this.options.htmlEntities) {
+          for (let entityName2 in this.htmlEntities) {
+            const entity = this.htmlEntities[entityName2];
+            val2 = val2.replace(entity.regex, entity.val);
+          }
+        }
+        val2 = val2.replace(this.ampEntity.regex, this.ampEntity.val);
+      }
+      return val2;
+    };
+    function saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {
+      if (textData) {
+        if (isLeafNode === void 0) isLeafNode = Object.keys(currentNode.child).length === 0;
+        textData = this.parseTextData(
+          textData,
+          currentNode.tagname,
+          jPath,
+          false,
+          currentNode[":@"] ? Object.keys(currentNode[":@"]).length !== 0 : false,
+          isLeafNode
+        );
+        if (textData !== void 0 && textData !== "")
+          currentNode.add(this.options.textNodeName, textData);
+        textData = "";
+      }
+      return textData;
+    }
+    function isItStopNode(stopNodes, jPath, currentTagName) {
+      const allNodesExp = "*." + currentTagName;
+      for (const stopNodePath in stopNodes) {
+        const stopNodeExp = stopNodes[stopNodePath];
+        if (allNodesExp === stopNodeExp || jPath === stopNodeExp) return true;
+      }
+      return false;
+    }
+    function tagExpWithClosingIndex(xmlData, i, closingChar = ">") {
+      let attrBoundary;
+      let tagExp = "";
+      for (let index = i; index < xmlData.length; index++) {
+        let ch = xmlData[index];
+        if (attrBoundary) {
+          if (ch === attrBoundary) attrBoundary = "";
+        } else if (ch === '"' || ch === "'") {
+          attrBoundary = ch;
+        } else if (ch === closingChar[0]) {
+          if (closingChar[1]) {
+            if (xmlData[index + 1] === closingChar[1]) {
+              return {
+                data: tagExp,
+                index
+              };
+            }
+          } else {
+            return {
+              data: tagExp,
+              index
+            };
+          }
+        } else if (ch === "	") {
+          ch = " ";
+        }
+        tagExp += ch;
+      }
+    }
+    function findClosingIndex(xmlData, str, i, errMsg) {
+      const closingIndex = xmlData.indexOf(str, i);
+      if (closingIndex === -1) {
+        throw new Error(errMsg);
+      } else {
+        return closingIndex + str.length - 1;
+      }
+    }
+    function readTagExp(xmlData, i, removeNSPrefix, closingChar = ">") {
+      const result = tagExpWithClosingIndex(xmlData, i + 1, closingChar);
+      if (!result) return;
+      let tagExp = result.data;
+      const closeIndex = result.index;
+      const separatorIndex = tagExp.search(/\s/);
+      let tagName = tagExp;
+      let attrExpPresent = true;
+      if (separatorIndex !== -1) {
+        tagName = tagExp.substring(0, separatorIndex);
+        tagExp = tagExp.substring(separatorIndex + 1).trimStart();
+      }
+      const rawTagName = tagName;
+      if (removeNSPrefix) {
+        const colonIndex = tagName.indexOf(":");
+        if (colonIndex !== -1) {
+          tagName = tagName.substr(colonIndex + 1);
+          attrExpPresent = tagName !== result.data.substr(colonIndex + 1);
+        }
+      }
+      return {
+        tagName,
+        tagExp,
+        closeIndex,
+        attrExpPresent,
+        rawTagName
+      };
+    }
+    function readStopNodeData(xmlData, tagName, i) {
+      const startIndex = i;
+      let openTagCount = 1;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, `${tagName} is not closed`);
+            let closeTagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (closeTagName === tagName) {
+              openTagCount--;
+              if (openTagCount === 0) {
+                return {
+                  tagContent: xmlData.substring(startIndex, i),
+                  i: closeIndex
+                };
+              }
+            }
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            const closeIndex = findClosingIndex(xmlData, "?>", i + 1, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const closeIndex = findClosingIndex(xmlData, "-->", i + 3, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "StopNode is not closed.") - 2;
+            i = closeIndex;
+          } else {
+            const tagData = readTagExp(xmlData, i, ">");
+            if (tagData) {
+              const openTagName = tagData && tagData.tagName;
+              if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length - 1] !== "/") {
+                openTagCount++;
+              }
+              i = tagData.closeIndex;
+            }
+          }
+        }
+      }
+    }
+    function parseValue(val2, shouldParse, options) {
+      if (shouldParse && typeof val2 === "string") {
+        const newval = val2.trim();
+        if (newval === "true") return true;
+        else if (newval === "false") return false;
+        else return toNumber(val2, options);
+      } else {
+        if (util.isExist(val2)) {
+          return val2;
+        } else {
+          return "";
+        }
+      }
+    }
+    module2.exports = OrderedObjParser;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js
+var require_node2json = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js"(exports2) {
+    "use strict";
+    function prettify(node, options) {
+      return compress(node, options);
+    }
+    function compress(arr, options, jPath) {
+      let text;
+      const compressedObj = {};
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const property = propName(tagObj);
+        let newJpath = "";
+        if (jPath === void 0) newJpath = property;
+        else newJpath = jPath + "." + property;
+        if (property === options.textNodeName) {
+          if (text === void 0) text = tagObj[property];
+          else text += "" + tagObj[property];
+        } else if (property === void 0) {
+          continue;
+        } else if (tagObj[property]) {
+          let val2 = compress(tagObj[property], options, newJpath);
+          const isLeaf = isLeafTag(val2, options);
+          if (tagObj[":@"]) {
+            assignAttributes(val2, tagObj[":@"], newJpath, options);
+          } else if (Object.keys(val2).length === 1 && val2[options.textNodeName] !== void 0 && !options.alwaysCreateTextNode) {
+            val2 = val2[options.textNodeName];
+          } else if (Object.keys(val2).length === 0) {
+            if (options.alwaysCreateTextNode) val2[options.textNodeName] = "";
+            else val2 = "";
+          }
+          if (compressedObj[property] !== void 0 && compressedObj.hasOwnProperty(property)) {
+            if (!Array.isArray(compressedObj[property])) {
+              compressedObj[property] = [compressedObj[property]];
+            }
+            compressedObj[property].push(val2);
+          } else {
+            if (options.isArray(property, newJpath, isLeaf)) {
+              compressedObj[property] = [val2];
+            } else {
+              compressedObj[property] = val2;
+            }
+          }
+        }
+      }
+      if (typeof text === "string") {
+        if (text.length > 0) compressedObj[options.textNodeName] = text;
+      } else if (text !== void 0) compressedObj[options.textNodeName] = text;
+      return compressedObj;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (key !== ":@") return key;
+      }
+    }
+    function assignAttributes(obj, attrMap, jpath, options) {
+      if (attrMap) {
+        const keys = Object.keys(attrMap);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          const atrrName = keys[i];
+          if (options.isArray(atrrName, jpath + "." + atrrName, true, true)) {
+            obj[atrrName] = [attrMap[atrrName]];
+          } else {
+            obj[atrrName] = attrMap[atrrName];
+          }
+        }
+      }
+    }
+    function isLeafTag(obj, options) {
+      const { textNodeName } = options;
+      const propCount = Object.keys(obj).length;
+      if (propCount === 0) {
+        return true;
+      }
+      if (propCount === 1 && (obj[textNodeName] || typeof obj[textNodeName] === "boolean" || obj[textNodeName] === 0)) {
+        return true;
+      }
+      return false;
+    }
+    exports2.prettify = prettify;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js
+var require_XMLParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js"(exports2, module2) {
+    var { buildOptions } = require_OptionsBuilder();
+    var OrderedObjParser = require_OrderedObjParser();
+    var { prettify } = require_node2json();
+    var validator = require_validator2();
+    var XMLParser2 = class {
+      constructor(options) {
+        this.externalEntities = {};
+        this.options = buildOptions(options);
+      }
+      /**
+       * Parse XML dats to JS object 
+       * @param {string|Buffer} xmlData 
+       * @param {boolean|Object} validationOption 
+       */
+      parse(xmlData, validationOption) {
+        if (typeof xmlData === "string") {
+        } else if (xmlData.toString) {
+          xmlData = xmlData.toString();
+        } else {
+          throw new Error("XML data is accepted in String or Bytes[] form.");
+        }
+        if (validationOption) {
+          if (validationOption === true) validationOption = {};
+          const result = validator.validate(xmlData, validationOption);
+          if (result !== true) {
+            throw Error(`${result.err.msg}:${result.err.line}:${result.err.col}`);
+          }
+        }
+        const orderedObjParser = new OrderedObjParser(this.options);
+        orderedObjParser.addExternalEntities(this.externalEntities);
+        const orderedResult = orderedObjParser.parseXml(xmlData);
+        if (this.options.preserveOrder || orderedResult === void 0) return orderedResult;
+        else return prettify(orderedResult, this.options);
+      }
+      /**
+       * Add Entity which is not by default supported by this library
+       * @param {string} key 
+       * @param {string} value 
+       */
+      addEntity(key, value) {
+        if (value.indexOf("&") !== -1) {
+          throw new Error("Entity value can't have '&'");
+        } else if (key.indexOf("&") !== -1 || key.indexOf(";") !== -1) {
+          throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '
'");
+        } else if (value === "&") {
+          throw new Error("An entity with value '&' is not permitted");
+        } else {
+          this.externalEntities[key] = value;
+        }
+      }
+    };
+    module2.exports = XMLParser2;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js
+var require_orderedJs2Xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js"(exports2, module2) {
+    var EOL = "\n";
+    function toXml(jArray, options) {
+      let indentation = "";
+      if (options.format && options.indentBy.length > 0) {
+        indentation = EOL;
+      }
+      return arrToStr(jArray, options, "", indentation);
+    }
+    function arrToStr(arr, options, jPath, indentation) {
+      let xmlStr = "";
+      let isPreviousElementTag = false;
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const tagName = propName(tagObj);
+        if (tagName === void 0) continue;
+        let newJPath = "";
+        if (jPath.length === 0) newJPath = tagName;
+        else newJPath = `${jPath}.${tagName}`;
+        if (tagName === options.textNodeName) {
+          let tagText = tagObj[tagName];
+          if (!isStopNode(newJPath, options)) {
+            tagText = options.tagValueProcessor(tagName, tagText);
+            tagText = replaceEntitiesValue(tagText, options);
+          }
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += tagText;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.cdataPropName) {
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += ``;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.commentPropName) {
+          xmlStr += indentation + ``;
+          isPreviousElementTag = true;
+          continue;
+        } else if (tagName[0] === "?") {
+          const attStr2 = attr_to_str(tagObj[":@"], options);
+          const tempInd = tagName === "?xml" ? "" : indentation;
+          let piTextNodeName = tagObj[tagName][0][options.textNodeName];
+          piTextNodeName = piTextNodeName.length !== 0 ? " " + piTextNodeName : "";
+          xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr2}?>`;
+          isPreviousElementTag = true;
+          continue;
+        }
+        let newIdentation = indentation;
+        if (newIdentation !== "") {
+          newIdentation += options.indentBy;
+        }
+        const attStr = attr_to_str(tagObj[":@"], options);
+        const tagStart = indentation + `<${tagName}${attStr}`;
+        const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);
+        if (options.unpairedTags.indexOf(tagName) !== -1) {
+          if (options.suppressUnpairedNode) xmlStr += tagStart + ">";
+          else xmlStr += tagStart + "/>";
+        } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {
+          xmlStr += tagStart + "/>";
+        } else if (tagValue && tagValue.endsWith(">")) {
+          xmlStr += tagStart + `>${tagValue}${indentation}`;
+        } else {
+          xmlStr += tagStart + ">";
+          if (tagValue && indentation !== "" && (tagValue.includes("/>") || tagValue.includes("`;
+        }
+        isPreviousElementTag = true;
+      }
+      return xmlStr;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (!obj.hasOwnProperty(key)) continue;
+        if (key !== ":@") return key;
+      }
+    }
+    function attr_to_str(attrMap, options) {
+      let attrStr = "";
+      if (attrMap && !options.ignoreAttributes) {
+        for (let attr in attrMap) {
+          if (!attrMap.hasOwnProperty(attr)) continue;
+          let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);
+          attrVal = replaceEntitiesValue(attrVal, options);
+          if (attrVal === true && options.suppressBooleanAttributes) {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;
+          } else {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}="${attrVal}"`;
+          }
+        }
+      }
+      return attrStr;
+    }
+    function isStopNode(jPath, options) {
+      jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);
+      let tagName = jPath.substr(jPath.lastIndexOf(".") + 1);
+      for (let index in options.stopNodes) {
+        if (options.stopNodes[index] === jPath || options.stopNodes[index] === "*." + tagName) return true;
+      }
+      return false;
+    }
+    function replaceEntitiesValue(textValue, options) {
+      if (textValue && textValue.length > 0 && options.processEntities) {
+        for (let i = 0; i < options.entities.length; i++) {
+          const entity = options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    }
+    module2.exports = toXml;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js
+var require_json2xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js"(exports2, module2) {
+    "use strict";
+    var buildFromOrderedJs = require_orderedJs2Xml();
+    var defaultOptions = {
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      cdataPropName: false,
+      format: false,
+      indentBy: "  ",
+      suppressEmptyNode: false,
+      suppressUnpairedNode: true,
+      suppressBooleanAttributes: true,
+      tagValueProcessor: function(key, a) {
+        return a;
+      },
+      attributeValueProcessor: function(attrName, a) {
+        return a;
+      },
+      preserveOrder: false,
+      commentPropName: false,
+      unpairedTags: [],
+      entities: [
+        { regex: new RegExp("&", "g"), val: "&" },
+        //it must be on top
+        { regex: new RegExp(">", "g"), val: ">" },
+        { regex: new RegExp("<", "g"), val: "<" },
+        { regex: new RegExp("'", "g"), val: "'" },
+        { regex: new RegExp('"', "g"), val: """ }
+      ],
+      processEntities: true,
+      stopNodes: [],
+      // transformTagName: false,
+      // transformAttributeName: false,
+      oneListGroup: false
+    };
+    function Builder(options) {
+      this.options = Object.assign({}, defaultOptions, options);
+      if (this.options.ignoreAttributes || this.options.attributesGroupName) {
+        this.isAttribute = function() {
+          return false;
+        };
+      } else {
+        this.attrPrefixLen = this.options.attributeNamePrefix.length;
+        this.isAttribute = isAttribute;
+      }
+      this.processTextOrObjNode = processTextOrObjNode;
+      if (this.options.format) {
+        this.indentate = indentate;
+        this.tagEndChar = ">\n";
+        this.newLine = "\n";
+      } else {
+        this.indentate = function() {
+          return "";
+        };
+        this.tagEndChar = ">";
+        this.newLine = "";
+      }
+    }
+    Builder.prototype.build = function(jObj) {
+      if (this.options.preserveOrder) {
+        return buildFromOrderedJs(jObj, this.options);
+      } else {
+        if (Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1) {
+          jObj = {
+            [this.options.arrayNodeName]: jObj
+          };
+        }
+        return this.j2x(jObj, 0).val;
+      }
+    };
+    Builder.prototype.j2x = function(jObj, level) {
+      let attrStr = "";
+      let val2 = "";
+      for (let key in jObj) {
+        if (!Object.prototype.hasOwnProperty.call(jObj, key)) continue;
+        if (typeof jObj[key] === "undefined") {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          }
+        } else if (jObj[key] === null) {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          } else if (key[0] === "?") {
+            val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+          } else {
+            val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+          }
+        } else if (jObj[key] instanceof Date) {
+          val2 += this.buildTextValNode(jObj[key], key, "", level);
+        } else if (typeof jObj[key] !== "object") {
+          const attr = this.isAttribute(key);
+          if (attr) {
+            attrStr += this.buildAttrPairStr(attr, "" + jObj[key]);
+          } else {
+            if (key === this.options.textNodeName) {
+              let newval = this.options.tagValueProcessor(key, "" + jObj[key]);
+              val2 += this.replaceEntitiesValue(newval);
+            } else {
+              val2 += this.buildTextValNode(jObj[key], key, "", level);
+            }
+          }
+        } else if (Array.isArray(jObj[key])) {
+          const arrLen = jObj[key].length;
+          let listTagVal = "";
+          let listTagAttr = "";
+          for (let j = 0; j < arrLen; j++) {
+            const item = jObj[key][j];
+            if (typeof item === "undefined") {
+            } else if (item === null) {
+              if (key[0] === "?") val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+              else val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+            } else if (typeof item === "object") {
+              if (this.options.oneListGroup) {
+                const result = this.j2x(item, level + 1);
+                listTagVal += result.val;
+                if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {
+                  listTagAttr += result.attrStr;
+                }
+              } else {
+                listTagVal += this.processTextOrObjNode(item, key, level);
+              }
+            } else {
+              if (this.options.oneListGroup) {
+                let textValue = this.options.tagValueProcessor(key, item);
+                textValue = this.replaceEntitiesValue(textValue);
+                listTagVal += textValue;
+              } else {
+                listTagVal += this.buildTextValNode(item, key, "", level);
+              }
+            }
+          }
+          if (this.options.oneListGroup) {
+            listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);
+          }
+          val2 += listTagVal;
+        } else {
+          if (this.options.attributesGroupName && key === this.options.attributesGroupName) {
+            const Ks = Object.keys(jObj[key]);
+            const L = Ks.length;
+            for (let j = 0; j < L; j++) {
+              attrStr += this.buildAttrPairStr(Ks[j], "" + jObj[key][Ks[j]]);
+            }
+          } else {
+            val2 += this.processTextOrObjNode(jObj[key], key, level);
+          }
+        }
+      }
+      return { attrStr, val: val2 };
+    };
+    Builder.prototype.buildAttrPairStr = function(attrName, val2) {
+      val2 = this.options.attributeValueProcessor(attrName, "" + val2);
+      val2 = this.replaceEntitiesValue(val2);
+      if (this.options.suppressBooleanAttributes && val2 === "true") {
+        return " " + attrName;
+      } else return " " + attrName + '="' + val2 + '"';
+    };
+    function processTextOrObjNode(object, key, level) {
+      const result = this.j2x(object, level + 1);
+      if (object[this.options.textNodeName] !== void 0 && Object.keys(object).length === 1) {
+        return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);
+      } else {
+        return this.buildObjectNode(result.val, key, result.attrStr, level);
+      }
+    }
+    Builder.prototype.buildObjectNode = function(val2, key, attrStr, level) {
+      if (val2 === "") {
+        if (key[0] === "?") return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+        else {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        }
+      } else {
+        let tagEndExp = "" + val2 + tagEndExp;
+        } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {
+          return this.indentate(level) + `` + this.newLine;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + piClosingChar + this.tagEndChar + val2 + this.indentate(level) + tagEndExp;
+        }
+      }
+    };
+    Builder.prototype.closeTag = function(key) {
+      let closeTag = "";
+      if (this.options.unpairedTags.indexOf(key) !== -1) {
+        if (!this.options.suppressUnpairedNode) closeTag = "/";
+      } else if (this.options.suppressEmptyNode) {
+        closeTag = "/";
+      } else {
+        closeTag = `>` + this.newLine;
+      } else if (this.options.commentPropName !== false && key === this.options.commentPropName) {
+        return this.indentate(level) + `` + this.newLine;
+      } else if (key[0] === "?") {
+        return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+      } else {
+        let textValue = this.options.tagValueProcessor(key, val2);
+        textValue = this.replaceEntitiesValue(textValue);
+        if (textValue === "") {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + ">" + textValue + " 0 && this.options.processEntities) {
+        for (let i = 0; i < this.options.entities.length; i++) {
+          const entity = this.options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    };
+    function indentate(level) {
+      return this.options.indentBy.repeat(level);
+    }
+    function isAttribute(name) {
+      if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {
+        return name.substr(this.attrPrefixLen);
+      } else {
+        return false;
+      }
+    }
+    module2.exports = Builder;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/fxp.js
+var require_fxp = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/fxp.js"(exports2, module2) {
+    "use strict";
+    var validator = require_validator2();
+    var XMLParser2 = require_XMLParser();
+    var XMLBuilder = require_json2xml();
+    module2.exports = {
+      XMLParser: XMLParser2,
+      XMLValidator: validator,
+      XMLBuilder
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js
+var import_smithy_client3, import_fast_xml_parser, parseXmlBody, parseXmlErrorBody, loadRestXmlErrorCode;
+var init_parseXmlBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js"() {
+    import_smithy_client3 = __toESM(require_dist_cjs33());
+    import_fast_xml_parser = __toESM(require_fxp());
+    init_common();
+    parseXmlBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        const parser = new import_fast_xml_parser.XMLParser({
+          attributeNamePrefix: "",
+          htmlEntities: true,
+          ignoreAttributes: false,
+          ignoreDeclaration: true,
+          parseTagValue: false,
+          trimValues: false,
+          tagValueProcessor: (_, val2) => val2.trim() === "" && val2.includes("\n") ? "" : void 0
+        });
+        parser.addEntity("#xD", "\r");
+        parser.addEntity("#10", "\n");
+        let parsedObj;
+        try {
+          parsedObj = parser.parse(encoded, true);
+        } catch (e) {
+          if (e && typeof e === "object") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+        const textNodeName = "#text";
+        const key = Object.keys(parsedObj)[0];
+        const parsedObjToReturn = parsedObj[key];
+        if (parsedObjToReturn[textNodeName]) {
+          parsedObjToReturn[key] = parsedObjToReturn[textNodeName];
+          delete parsedObjToReturn[textNodeName];
+        }
+        return (0, import_smithy_client3.getValueFromTextNode)(parsedObjToReturn);
+      }
+      return {};
+    });
+    parseXmlErrorBody = async (errorBody, context) => {
+      const value = await parseXmlBody(errorBody, context);
+      if (value.Error) {
+        value.Error.message = value.Error.message ?? value.Error.Message;
+      }
+      return value;
+    };
+    loadRestXmlErrorCode = (output, data) => {
+      if (data?.Error?.Code !== void 0) {
+        return data.Error.Code;
+      }
+      if (data?.Code !== void 0) {
+        return data.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js
+var init_protocols2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js"() {
+    init_coercing_serializers();
+    init_awsExpectUnion();
+    init_parseJsonBody();
+    init_parseXmlBody();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/index.js
+var dist_es_exports2 = {};
+__export(dist_es_exports2, {
+  AWSSDKSigV4Signer: () => AWSSDKSigV4Signer,
+  AwsSdkSigV4ASigner: () => AwsSdkSigV4ASigner,
+  AwsSdkSigV4Signer: () => AwsSdkSigV4Signer,
+  NODE_SIGV4A_CONFIG_OPTIONS: () => NODE_SIGV4A_CONFIG_OPTIONS,
+  _toBool: () => _toBool,
+  _toNum: () => _toNum,
+  _toStr: () => _toStr,
+  awsExpectUnion: () => awsExpectUnion,
+  emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion,
+  loadRestJsonErrorCode: () => loadRestJsonErrorCode,
+  loadRestXmlErrorCode: () => loadRestXmlErrorCode,
+  parseJsonBody: () => parseJsonBody,
+  parseJsonErrorBody: () => parseJsonErrorBody,
+  parseXmlBody: () => parseXmlBody,
+  parseXmlErrorBody: () => parseXmlErrorBody,
+  resolveAWSSDKSigV4Config: () => resolveAWSSDKSigV4Config,
+  resolveAwsSdkSigV4AConfig: () => resolveAwsSdkSigV4AConfig,
+  resolveAwsSdkSigV4Config: () => resolveAwsSdkSigV4Config,
+  validateSigningProperties: () => validateSigningProperties
+});
+var init_dist_es2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/index.js"() {
+    init_client();
+    init_httpAuthSchemes2();
+    init_protocols2();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSFNHttpAuthSchemeProvider = exports2.defaultSFNHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSFNHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSFNHttpAuthSchemeParametersProvider = defaultSFNHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "states",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    var defaultSFNHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSFNHttpAuthSchemeProvider = defaultSFNHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/tslib/tslib.es6.mjs
+var tslib_es6_exports = {};
+__export(tslib_es6_exports, {
+  __addDisposableResource: () => __addDisposableResource,
+  __assign: () => __assign,
+  __asyncDelegator: () => __asyncDelegator,
+  __asyncGenerator: () => __asyncGenerator,
+  __asyncValues: () => __asyncValues,
+  __await: () => __await,
+  __awaiter: () => __awaiter,
+  __classPrivateFieldGet: () => __classPrivateFieldGet,
+  __classPrivateFieldIn: () => __classPrivateFieldIn,
+  __classPrivateFieldSet: () => __classPrivateFieldSet,
+  __createBinding: () => __createBinding,
+  __decorate: () => __decorate,
+  __disposeResources: () => __disposeResources,
+  __esDecorate: () => __esDecorate,
+  __exportStar: () => __exportStar,
+  __extends: () => __extends,
+  __generator: () => __generator,
+  __importDefault: () => __importDefault,
+  __importStar: () => __importStar,
+  __makeTemplateObject: () => __makeTemplateObject,
+  __metadata: () => __metadata,
+  __param: () => __param,
+  __propKey: () => __propKey,
+  __read: () => __read,
+  __rest: () => __rest,
+  __rewriteRelativeImportExtension: () => __rewriteRelativeImportExtension,
+  __runInitializers: () => __runInitializers2,
+  __setFunctionName: () => __setFunctionName,
+  __spread: () => __spread,
+  __spreadArray: () => __spreadArray,
+  __spreadArrays: () => __spreadArrays,
+  __values: () => __values,
+  default: () => tslib_es6_default
+});
+function __extends(d, b) {
+  if (typeof b !== "function" && b !== null)
+    throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+  extendStatics(d, b);
+  function __() {
+    this.constructor = d;
+  }
+  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+}
+function __rest(s, e) {
+  var t = {};
+  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+    t[p] = s[p];
+  if (s != null && typeof Object.getOwnPropertySymbols === "function")
+    for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+      if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+        t[p[i]] = s[p[i]];
+    }
+  return t;
+}
+function __decorate(decorators, target, key, desc) {
+  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+  return c > 3 && r && Object.defineProperty(target, key, r), r;
+}
+function __param(paramIndex, decorator) {
+  return function(target, key) {
+    decorator(target, key, paramIndex);
+  };
+}
+function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
+  function accept(f) {
+    if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected");
+    return f;
+  }
+  var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
+  var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
+  var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
+  var _, done = false;
+  for (var i = decorators.length - 1; i >= 0; i--) {
+    var context = {};
+    for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
+    for (var p in contextIn.access) context.access[p] = contextIn.access[p];
+    context.addInitializer = function(f) {
+      if (done) throw new TypeError("Cannot add initializers after decoration has completed");
+      extraInitializers.push(accept(f || null));
+    };
+    var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
+    if (kind === "accessor") {
+      if (result === void 0) continue;
+      if (result === null || typeof result !== "object") throw new TypeError("Object expected");
+      if (_ = accept(result.get)) descriptor.get = _;
+      if (_ = accept(result.set)) descriptor.set = _;
+      if (_ = accept(result.init)) initializers.unshift(_);
+    } else if (_ = accept(result)) {
+      if (kind === "field") initializers.unshift(_);
+      else descriptor[key] = _;
+    }
+  }
+  if (target) Object.defineProperty(target, contextIn.name, descriptor);
+  done = true;
+}
+function __runInitializers2(thisArg, initializers, value) {
+  var useValue = arguments.length > 2;
+  for (var i = 0; i < initializers.length; i++) {
+    value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
+  }
+  return useValue ? value : void 0;
+}
+function __propKey(x) {
+  return typeof x === "symbol" ? x : "".concat(x);
+}
+function __setFunctionName(f, name, prefix) {
+  if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
+  return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
+}
+function __metadata(metadataKey, metadataValue) {
+  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
+}
+function __awaiter(thisArg, _arguments, P, generator) {
+  function adopt(value) {
+    return value instanceof P ? value : new P(function(resolve6) {
+      resolve6(value);
+    });
+  }
+  return new (P || (P = Promise))(function(resolve6, reject) {
+    function fulfilled(value) {
+      try {
+        step(generator.next(value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function rejected(value) {
+      try {
+        step(generator["throw"](value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function step(result) {
+      result.done ? resolve6(result.value) : adopt(result.value).then(fulfilled, rejected);
+    }
+    step((generator = generator.apply(thisArg, _arguments || [])).next());
+  });
+}
+function __generator(thisArg, body) {
+  var _ = { label: 0, sent: function() {
+    if (t[0] & 1) throw t[1];
+    return t[1];
+  }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
+  return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
+    return this;
+  }), g;
+  function verb(n) {
+    return function(v) {
+      return step([n, v]);
+    };
+  }
+  function step(op) {
+    if (f) throw new TypeError("Generator is already executing.");
+    while (g && (g = 0, op[0] && (_ = 0)), _) try {
+      if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
+      if (y = 0, t) op = [op[0] & 2, t.value];
+      switch (op[0]) {
+        case 0:
+        case 1:
+          t = op;
+          break;
+        case 4:
+          _.label++;
+          return { value: op[1], done: false };
+        case 5:
+          _.label++;
+          y = op[1];
+          op = [0];
+          continue;
+        case 7:
+          op = _.ops.pop();
+          _.trys.pop();
+          continue;
+        default:
+          if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
+            _ = 0;
+            continue;
+          }
+          if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
+            _.label = op[1];
+            break;
+          }
+          if (op[0] === 6 && _.label < t[1]) {
+            _.label = t[1];
+            t = op;
+            break;
+          }
+          if (t && _.label < t[2]) {
+            _.label = t[2];
+            _.ops.push(op);
+            break;
+          }
+          if (t[2]) _.ops.pop();
+          _.trys.pop();
+          continue;
+      }
+      op = body.call(thisArg, _);
+    } catch (e) {
+      op = [6, e];
+      y = 0;
+    } finally {
+      f = t = 0;
+    }
+    if (op[0] & 5) throw op[1];
+    return { value: op[0] ? op[1] : void 0, done: true };
+  }
+}
+function __exportStar(m, o) {
+  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
+}
+function __values(o) {
+  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
+  if (m) return m.call(o);
+  if (o && typeof o.length === "number") return {
+    next: function() {
+      if (o && i >= o.length) o = void 0;
+      return { value: o && o[i++], done: !o };
+    }
+  };
+  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
+}
+function __read(o, n) {
+  var m = typeof Symbol === "function" && o[Symbol.iterator];
+  if (!m) return o;
+  var i = m.call(o), r, ar = [], e;
+  try {
+    while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
+  } catch (error) {
+    e = { error };
+  } finally {
+    try {
+      if (r && !r.done && (m = i["return"])) m.call(i);
+    } finally {
+      if (e) throw e.error;
+    }
+  }
+  return ar;
+}
+function __spread() {
+  for (var ar = [], i = 0; i < arguments.length; i++)
+    ar = ar.concat(__read(arguments[i]));
+  return ar;
+}
+function __spreadArrays() {
+  for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
+  for (var r = Array(s), k = 0, i = 0; i < il; i++)
+    for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
+      r[k] = a[j];
+  return r;
+}
+function __spreadArray(to, from, pack) {
+  if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
+    if (ar || !(i in from)) {
+      if (!ar) ar = Array.prototype.slice.call(from, 0, i);
+      ar[i] = from[i];
+    }
+  }
+  return to.concat(ar || Array.prototype.slice.call(from));
+}
+function __await(v) {
+  return this instanceof __await ? (this.v = v, this) : new __await(v);
+}
+function __asyncGenerator(thisArg, _arguments, generator) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var g = generator.apply(thisArg, _arguments || []), i, q = [];
+  return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i;
+  function awaitReturn(f) {
+    return function(v) {
+      return Promise.resolve(v).then(f, reject);
+    };
+  }
+  function verb(n, f) {
+    if (g[n]) {
+      i[n] = function(v) {
+        return new Promise(function(a, b) {
+          q.push([n, v, a, b]) > 1 || resume(n, v);
+        });
+      };
+      if (f) i[n] = f(i[n]);
+    }
+  }
+  function resume(n, v) {
+    try {
+      step(g[n](v));
+    } catch (e) {
+      settle(q[0][3], e);
+    }
+  }
+  function step(r) {
+    r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r);
+  }
+  function fulfill(value) {
+    resume("next", value);
+  }
+  function reject(value) {
+    resume("throw", value);
+  }
+  function settle(f, v) {
+    if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);
+  }
+}
+function __asyncDelegator(o) {
+  var i, p;
+  return i = {}, verb("next"), verb("throw", function(e) {
+    throw e;
+  }), verb("return"), i[Symbol.iterator] = function() {
+    return this;
+  }, i;
+  function verb(n, f) {
+    i[n] = o[n] ? function(v) {
+      return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v;
+    } : f;
+  }
+}
+function __asyncValues(o) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var m = o[Symbol.asyncIterator], i;
+  return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i);
+  function verb(n) {
+    i[n] = o[n] && function(v) {
+      return new Promise(function(resolve6, reject) {
+        v = o[n](v), settle(resolve6, reject, v.done, v.value);
+      });
+    };
+  }
+  function settle(resolve6, reject, d, v) {
+    Promise.resolve(v).then(function(v2) {
+      resolve6({ value: v2, done: d });
+    }, reject);
+  }
+}
+function __makeTemplateObject(cooked, raw) {
+  if (Object.defineProperty) {
+    Object.defineProperty(cooked, "raw", { value: raw });
+  } else {
+    cooked.raw = raw;
+  }
+  return cooked;
+}
+function __importStar(mod) {
+  if (mod && mod.__esModule) return mod;
+  var result = {};
+  if (mod != null) {
+    for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
+  }
+  __setModuleDefault(result, mod);
+  return result;
+}
+function __importDefault(mod) {
+  return mod && mod.__esModule ? mod : { default: mod };
+}
+function __classPrivateFieldGet(receiver, state, kind, f) {
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+}
+function __classPrivateFieldSet(receiver, state, value, kind, f) {
+  if (kind === "m") throw new TypeError("Private method is not writable");
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+  return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
+}
+function __classPrivateFieldIn(state, receiver) {
+  if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") throw new TypeError("Cannot use 'in' operator on non-object");
+  return typeof state === "function" ? receiver === state : state.has(receiver);
+}
+function __addDisposableResource(env2, value, async) {
+  if (value !== null && value !== void 0) {
+    if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
+    var dispose, inner;
+    if (async) {
+      if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
+      dispose = value[Symbol.asyncDispose];
+    }
+    if (dispose === void 0) {
+      if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
+      dispose = value[Symbol.dispose];
+      if (async) inner = dispose;
+    }
+    if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
+    if (inner) dispose = function() {
+      try {
+        inner.call(this);
+      } catch (e) {
+        return Promise.reject(e);
+      }
+    };
+    env2.stack.push({ value, dispose, async });
+  } else if (async) {
+    env2.stack.push({ async: true });
+  }
+  return value;
+}
+function __disposeResources(env2) {
+  function fail(e) {
+    env2.error = env2.hasError ? new _SuppressedError(e, env2.error, "An error was suppressed during disposal.") : e;
+    env2.hasError = true;
+  }
+  var r, s = 0;
+  function next() {
+    while (r = env2.stack.pop()) {
+      try {
+        if (!r.async && s === 1) return s = 0, env2.stack.push(r), Promise.resolve().then(next);
+        if (r.dispose) {
+          var result = r.dispose.call(r.value);
+          if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
+            fail(e);
+            return next();
+          });
+        } else s |= 1;
+      } catch (e) {
+        fail(e);
+      }
+    }
+    if (s === 1) return env2.hasError ? Promise.reject(env2.error) : Promise.resolve();
+    if (env2.hasError) throw env2.error;
+  }
+  return next();
+}
+function __rewriteRelativeImportExtension(path23, preserveJsx) {
+  if (typeof path23 === "string" && /^\.\.?\//.test(path23)) {
+    return path23.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d, ext, cm) {
+      return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : d + ext + "." + cm.toLowerCase() + "js";
+    });
+  }
+  return path23;
+}
+var extendStatics, __assign, __createBinding, __setModuleDefault, ownKeys, _SuppressedError, tslib_es6_default;
+var init_tslib_es6 = __esm({
+  "../../../node_modules/tslib/tslib.es6.mjs"() {
+    extendStatics = function(d, b) {
+      extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
+        d2.__proto__ = b2;
+      } || function(d2, b2) {
+        for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
+      };
+      return extendStatics(d, b);
+    };
+    __assign = function() {
+      __assign = Object.assign || function __assign2(t) {
+        for (var s, i = 1, n = arguments.length; i < n; i++) {
+          s = arguments[i];
+          for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+        }
+        return t;
+      };
+      return __assign.apply(this, arguments);
+    };
+    __createBinding = Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    });
+    __setModuleDefault = Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    };
+    ownKeys = function(o) {
+      ownKeys = Object.getOwnPropertyNames || function(o2) {
+        var ar = [];
+        for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
+        return ar;
+      };
+      return ownKeys(o);
+    };
+    _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
+      var e = new Error(message);
+      return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
+    };
+    tslib_es6_default = {
+      __extends,
+      __assign,
+      __rest,
+      __decorate,
+      __param,
+      __esDecorate,
+      __runInitializers: __runInitializers2,
+      __propKey,
+      __setFunctionName,
+      __metadata,
+      __awaiter,
+      __generator,
+      __createBinding,
+      __exportStar,
+      __values,
+      __read,
+      __spread,
+      __spreadArrays,
+      __spreadArray,
+      __await,
+      __asyncGenerator,
+      __asyncDelegator,
+      __asyncValues,
+      __makeTemplateObject,
+      __importStar,
+      __importDefault,
+      __classPrivateFieldGet,
+      __classPrivateFieldSet,
+      __classPrivateFieldIn,
+      __addDisposableResource,
+      __disposeResources,
+      __rewriteRelativeImportExtension
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/package.json
+var require_package = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sfn",
+      description: "AWS SDK for JavaScript Sfn Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sfn",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sfn"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/client-sts": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2",
+        uuid: "^9.0.1"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        "@types/uuid": "^9.0.4",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sfn",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sfn"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js
+var require_dist_cjs36 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ENV_ACCOUNT_ID: () => ENV_ACCOUNT_ID,
+      ENV_CREDENTIAL_SCOPE: () => ENV_CREDENTIAL_SCOPE,
+      ENV_EXPIRATION: () => ENV_EXPIRATION,
+      ENV_KEY: () => ENV_KEY,
+      ENV_SECRET: () => ENV_SECRET,
+      ENV_SESSION: () => ENV_SESSION,
+      fromEnv: () => fromEnv
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_KEY = "AWS_ACCESS_KEY_ID";
+    var ENV_SECRET = "AWS_SECRET_ACCESS_KEY";
+    var ENV_SESSION = "AWS_SESSION_TOKEN";
+    var ENV_EXPIRATION = "AWS_CREDENTIAL_EXPIRATION";
+    var ENV_CREDENTIAL_SCOPE = "AWS_CREDENTIAL_SCOPE";
+    var ENV_ACCOUNT_ID = "AWS_ACCOUNT_ID";
+    var fromEnv = /* @__PURE__ */ __name2((init) => async () => {
+      var _a7;
+      (_a7 = init == null ? void 0 : init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-env - fromEnv");
+      const accessKeyId = process.env[ENV_KEY];
+      const secretAccessKey = process.env[ENV_SECRET];
+      const sessionToken = process.env[ENV_SESSION];
+      const expiry = process.env[ENV_EXPIRATION];
+      const credentialScope = process.env[ENV_CREDENTIAL_SCOPE];
+      const accountId = process.env[ENV_ACCOUNT_ID];
+      if (accessKeyId && secretAccessKey) {
+        return {
+          accessKeyId,
+          secretAccessKey,
+          ...sessionToken && { sessionToken },
+          ...expiry && { expiration: new Date(expiry) },
+          ...credentialScope && { credentialScope },
+          ...accountId && { accountId }
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError("Unable to find environment variable credentials.", { logger: init == null ? void 0 : init.logger });
+    }, "fromEnv");
+  }
+});
+
+// ../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js
+var require_dist_cjs37 = __commonJS({
+  "../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_MAX_RETRIES: () => DEFAULT_MAX_RETRIES,
+      DEFAULT_TIMEOUT: () => DEFAULT_TIMEOUT,
+      ENV_CMDS_AUTH_TOKEN: () => ENV_CMDS_AUTH_TOKEN,
+      ENV_CMDS_FULL_URI: () => ENV_CMDS_FULL_URI,
+      ENV_CMDS_RELATIVE_URI: () => ENV_CMDS_RELATIVE_URI,
+      Endpoint: () => Endpoint,
+      fromContainerMetadata: () => fromContainerMetadata,
+      fromInstanceMetadata: () => fromInstanceMetadata,
+      getInstanceMetadataEndpoint: () => getInstanceMetadataEndpoint,
+      httpRequest: () => httpRequest,
+      providerConfigFromInit: () => providerConfigFromInit
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_url = require("url");
+    var import_property_provider2 = require_dist_cjs24();
+    var import_buffer = require("buffer");
+    var import_http2 = require("http");
+    function httpRequest(options) {
+      return new Promise((resolve6, reject) => {
+        var _a7;
+        const req = (0, import_http2.request)({
+          method: "GET",
+          ...options,
+          // Node.js http module doesn't accept hostname with square brackets
+          // Refs: https://github.com/nodejs/node/issues/39738
+          hostname: (_a7 = options.hostname) == null ? void 0 : _a7.replace(/^\[(.+)\]$/, "$1")
+        });
+        req.on("error", (err) => {
+          reject(Object.assign(new import_property_provider2.ProviderError("Unable to connect to instance metadata service"), err));
+          req.destroy();
+        });
+        req.on("timeout", () => {
+          reject(new import_property_provider2.ProviderError("TimeoutError from instance metadata service"));
+          req.destroy();
+        });
+        req.on("response", (res) => {
+          const { statusCode = 400 } = res;
+          if (statusCode < 200 || 300 <= statusCode) {
+            reject(
+              Object.assign(new import_property_provider2.ProviderError("Error response received from instance metadata service"), { statusCode })
+            );
+            req.destroy();
+          }
+          const chunks = [];
+          res.on("data", (chunk) => {
+            chunks.push(chunk);
+          });
+          res.on("end", () => {
+            resolve6(import_buffer.Buffer.concat(chunks));
+            req.destroy();
+          });
+        });
+        req.end();
+      });
+    }
+    __name2(httpRequest, "httpRequest");
+    var isImdsCredentials = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.AccessKeyId === "string" && typeof arg.SecretAccessKey === "string" && typeof arg.Token === "string" && typeof arg.Expiration === "string", "isImdsCredentials");
+    var fromImdsCredentials = /* @__PURE__ */ __name2((creds) => ({
+      accessKeyId: creds.AccessKeyId,
+      secretAccessKey: creds.SecretAccessKey,
+      sessionToken: creds.Token,
+      expiration: new Date(creds.Expiration),
+      ...creds.AccountId && { accountId: creds.AccountId }
+    }), "fromImdsCredentials");
+    var DEFAULT_TIMEOUT = 1e3;
+    var DEFAULT_MAX_RETRIES = 0;
+    var providerConfigFromInit = /* @__PURE__ */ __name2(({
+      maxRetries = DEFAULT_MAX_RETRIES,
+      timeout = DEFAULT_TIMEOUT
+    }) => ({ maxRetries, timeout }), "providerConfigFromInit");
+    var retry = /* @__PURE__ */ __name2((toRetry, maxRetries) => {
+      let promise = toRetry();
+      for (let i = 0; i < maxRetries; i++) {
+        promise = promise.catch(toRetry);
+      }
+      return promise;
+    }, "retry");
+    var ENV_CMDS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var ENV_CMDS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var ENV_CMDS_AUTH_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromContainerMetadata = /* @__PURE__ */ __name2((init = {}) => {
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      return () => retry(async () => {
+        const requestOptions = await getCmdsUri({ logger: init.logger });
+        const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions));
+        if (!isImdsCredentials(credsResponse)) {
+          throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+            logger: init.logger
+          });
+        }
+        return fromImdsCredentials(credsResponse);
+      }, maxRetries);
+    }, "fromContainerMetadata");
+    var requestFromEcsImds = /* @__PURE__ */ __name2(async (timeout, options) => {
+      if (process.env[ENV_CMDS_AUTH_TOKEN]) {
+        options.headers = {
+          ...options.headers,
+          Authorization: process.env[ENV_CMDS_AUTH_TOKEN]
+        };
+      }
+      const buffer = await httpRequest({
+        ...options,
+        timeout
+      });
+      return buffer.toString();
+    }, "requestFromEcsImds");
+    var CMDS_IP = "169.254.170.2";
+    var GREENGRASS_HOSTS = {
+      localhost: true,
+      "127.0.0.1": true
+    };
+    var GREENGRASS_PROTOCOLS = {
+      "http:": true,
+      "https:": true
+    };
+    var getCmdsUri = /* @__PURE__ */ __name2(async ({ logger }) => {
+      if (process.env[ENV_CMDS_RELATIVE_URI]) {
+        return {
+          hostname: CMDS_IP,
+          path: process.env[ENV_CMDS_RELATIVE_URI]
+        };
+      }
+      if (process.env[ENV_CMDS_FULL_URI]) {
+        const parsed = (0, import_url.parse)(process.env[ENV_CMDS_FULL_URI]);
+        if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        return {
+          ...parsed,
+          port: parsed.port ? parseInt(parsed.port, 10) : void 0
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `The container metadata credential provider cannot be used unless the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment variable is set`,
+        {
+          tryNextLink: false,
+          logger
+        }
+      );
+    }, "getCmdsUri");
+    var _InstanceMetadataV1FallbackError = class _InstanceMetadataV1FallbackError2 extends import_property_provider2.CredentialsProviderError {
+      constructor(message, tryNextLink = true) {
+        super(message, tryNextLink);
+        this.tryNextLink = tryNextLink;
+        this.name = "InstanceMetadataV1FallbackError";
+        Object.setPrototypeOf(this, _InstanceMetadataV1FallbackError2.prototype);
+      }
+    };
+    __name2(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError");
+    var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError;
+    var import_node_config_provider = require_dist_cjs26();
+    var import_url_parser = require_dist_cjs28();
+    var Endpoint = /* @__PURE__ */ ((Endpoint2) => {
+      Endpoint2["IPv4"] = "http://169.254.169.254";
+      Endpoint2["IPv6"] = "http://[fd00:ec2::254]";
+      return Endpoint2;
+    })(Endpoint || {});
+    var ENV_ENDPOINT_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT";
+    var CONFIG_ENDPOINT_NAME = "ec2_metadata_service_endpoint";
+    var ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME],
+      default: void 0
+    };
+    var EndpointMode = /* @__PURE__ */ ((EndpointMode2) => {
+      EndpointMode2["IPv4"] = "IPv4";
+      EndpointMode2["IPv6"] = "IPv6";
+      return EndpointMode2;
+    })(EndpointMode || {});
+    var ENV_ENDPOINT_MODE_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE";
+    var CONFIG_ENDPOINT_MODE_NAME = "ec2_metadata_service_endpoint_mode";
+    var ENDPOINT_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_MODE_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME],
+      default: "IPv4"
+      /* IPv4 */
+    };
+    var getInstanceMetadataEndpoint = /* @__PURE__ */ __name2(async () => (0, import_url_parser.parseUrl)(await getFromEndpointConfig() || await getFromEndpointModeConfig()), "getInstanceMetadataEndpoint");
+    var getFromEndpointConfig = /* @__PURE__ */ __name2(async () => (0, import_node_config_provider.loadConfig)(ENDPOINT_CONFIG_OPTIONS)(), "getFromEndpointConfig");
+    var getFromEndpointModeConfig = /* @__PURE__ */ __name2(async () => {
+      const endpointMode = await (0, import_node_config_provider.loadConfig)(ENDPOINT_MODE_CONFIG_OPTIONS)();
+      switch (endpointMode) {
+        case "IPv4":
+          return "http://169.254.169.254";
+        case "IPv6":
+          return "http://[fd00:ec2::254]";
+        default:
+          throw new Error(`Unsupported endpoint mode: ${endpointMode}. Select from ${Object.values(EndpointMode)}`);
+      }
+    }, "getFromEndpointModeConfig");
+    var STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60;
+    var STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60;
+    var STATIC_STABILITY_DOC_URL = "https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html";
+    var getExtendedInstanceMetadataCredentials = /* @__PURE__ */ __name2((credentials, logger) => {
+      const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS + Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS);
+      const newExpiration = new Date(Date.now() + refreshInterval * 1e3);
+      logger.warn(
+        `Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(newExpiration)}.
+For more information, please visit: ` + STATIC_STABILITY_DOC_URL
+      );
+      const originalExpiration = credentials.originalExpiration ?? credentials.expiration;
+      return {
+        ...credentials,
+        ...originalExpiration ? { originalExpiration } : {},
+        expiration: newExpiration
+      };
+    }, "getExtendedInstanceMetadataCredentials");
+    var staticStabilityProvider = /* @__PURE__ */ __name2((provider, options = {}) => {
+      const logger = (options == null ? void 0 : options.logger) || console;
+      let pastCredentials;
+      return async () => {
+        let credentials;
+        try {
+          credentials = await provider();
+          if (credentials.expiration && credentials.expiration.getTime() < Date.now()) {
+            credentials = getExtendedInstanceMetadataCredentials(credentials, logger);
+          }
+        } catch (e) {
+          if (pastCredentials) {
+            logger.warn("Credential renew failed: ", e);
+            credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger);
+          } else {
+            throw e;
+          }
+        }
+        pastCredentials = credentials;
+        return credentials;
+      };
+    }, "staticStabilityProvider");
+    var IMDS_PATH = "/latest/meta-data/iam/security-credentials/";
+    var IMDS_TOKEN_PATH = "/latest/api/token";
+    var AWS_EC2_METADATA_V1_DISABLED = "AWS_EC2_METADATA_V1_DISABLED";
+    var PROFILE_AWS_EC2_METADATA_V1_DISABLED = "ec2_metadata_v1_disabled";
+    var X_AWS_EC2_METADATA_TOKEN = "x-aws-ec2-metadata-token";
+    var fromInstanceMetadata = /* @__PURE__ */ __name2((init = {}) => staticStabilityProvider(getInstanceMetadataProvider(init), { logger: init.logger }), "fromInstanceMetadata");
+    var getInstanceMetadataProvider = /* @__PURE__ */ __name2((init = {}) => {
+      let disableFetchToken = false;
+      const { logger, profile } = init;
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      const getCredentials = /* @__PURE__ */ __name2(async (maxRetries2, options) => {
+        var _a7;
+        const isImdsV1Fallback = disableFetchToken || ((_a7 = options.headers) == null ? void 0 : _a7[X_AWS_EC2_METADATA_TOKEN]) == null;
+        if (isImdsV1Fallback) {
+          let fallbackBlockedFromProfile = false;
+          let fallbackBlockedFromProcessEnv = false;
+          const configValue = await (0, import_node_config_provider.loadConfig)(
+            {
+              environmentVariableSelector: (env2) => {
+                const envValue = env2[AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProcessEnv = !!envValue && envValue !== "false";
+                if (envValue === void 0) {
+                  throw new import_property_provider2.CredentialsProviderError(
+                    `${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.`,
+                    { logger: init.logger }
+                  );
+                }
+                return fallbackBlockedFromProcessEnv;
+              },
+              configFileSelector: (profile2) => {
+                const profileValue = profile2[PROFILE_AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProfile = !!profileValue && profileValue !== "false";
+                return fallbackBlockedFromProfile;
+              },
+              default: false
+            },
+            {
+              profile
+            }
+          )();
+          if (init.ec2MetadataV1Disabled || configValue) {
+            const causes = [];
+            if (init.ec2MetadataV1Disabled)
+              causes.push("credential provider initialization (runtime option ec2MetadataV1Disabled)");
+            if (fallbackBlockedFromProfile)
+              causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`);
+            if (fallbackBlockedFromProcessEnv)
+              causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`);
+            throw new InstanceMetadataV1FallbackError(
+              `AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join(
+                ", "
+              )}].`
+            );
+          }
+        }
+        const imdsProfile = (await retry(async () => {
+          let profile2;
+          try {
+            profile2 = await getProfile(options);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return profile2;
+        }, maxRetries2)).trim();
+        return retry(async () => {
+          let creds;
+          try {
+            creds = await getCredentialsFromProfile(imdsProfile, options, init);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return creds;
+        }, maxRetries2);
+      }, "getCredentials");
+      return async () => {
+        const endpoint = await getInstanceMetadataEndpoint();
+        if (disableFetchToken) {
+          logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (no token fetch)");
+          return getCredentials(maxRetries, { ...endpoint, timeout });
+        } else {
+          let token;
+          try {
+            token = (await getMetadataToken({ ...endpoint, timeout })).toString();
+          } catch (error) {
+            if ((error == null ? void 0 : error.statusCode) === 400) {
+              throw Object.assign(error, {
+                message: "EC2 Metadata token request returned error"
+              });
+            } else if (error.message === "TimeoutError" || [403, 404, 405].includes(error.statusCode)) {
+              disableFetchToken = true;
+            }
+            logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (initial)");
+            return getCredentials(maxRetries, { ...endpoint, timeout });
+          }
+          return getCredentials(maxRetries, {
+            ...endpoint,
+            headers: {
+              [X_AWS_EC2_METADATA_TOKEN]: token
+            },
+            timeout
+          });
+        }
+      };
+    }, "getInstanceMetadataProvider");
+    var getMetadataToken = /* @__PURE__ */ __name2(async (options) => httpRequest({
+      ...options,
+      path: IMDS_TOKEN_PATH,
+      method: "PUT",
+      headers: {
+        "x-aws-ec2-metadata-token-ttl-seconds": "21600"
+      }
+    }), "getMetadataToken");
+    var getProfile = /* @__PURE__ */ __name2(async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString(), "getProfile");
+    var getCredentialsFromProfile = /* @__PURE__ */ __name2(async (profile, options, init) => {
+      const credentialsResponse = JSON.parse(
+        (await httpRequest({
+          ...options,
+          path: IMDS_PATH + profile
+        })).toString()
+      );
+      if (!isImdsCredentials(credentialsResponse)) {
+        throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+          logger: init.logger
+        });
+      }
+      return fromImdsCredentials(credentialsResponse);
+    }, "getCredentialsFromProfile");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js
+var require_checkUrl = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.checkUrl = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var ECS_CONTAINER_HOST = "169.254.170.2";
+    var EKS_CONTAINER_HOST_IPv4 = "169.254.170.23";
+    var EKS_CONTAINER_HOST_IPv6 = "[fd00:ec2::23]";
+    var checkUrl = (url2, logger) => {
+      if (url2.protocol === "https:") {
+        return;
+      }
+      if (url2.hostname === ECS_CONTAINER_HOST || url2.hostname === EKS_CONTAINER_HOST_IPv4 || url2.hostname === EKS_CONTAINER_HOST_IPv6) {
+        return;
+      }
+      if (url2.hostname.includes("[")) {
+        if (url2.hostname === "[::1]" || url2.hostname === "[0000:0000:0000:0000:0000:0000:0000:0001]") {
+          return;
+        }
+      } else {
+        if (url2.hostname === "localhost") {
+          return;
+        }
+        const ipComponents = url2.hostname.split(".");
+        const inRange = (component) => {
+          const num = parseInt(component, 10);
+          return 0 <= num && num <= 255;
+        };
+        if (ipComponents[0] === "127" && inRange(ipComponents[1]) && inRange(ipComponents[2]) && inRange(ipComponents[3]) && ipComponents.length === 4) {
+          return;
+        }
+      }
+      throw new property_provider_1.CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following:
+  - loopback CIDR 127.0.0.0/8 or [::1/128]
+  - ECS container host 169.254.170.2
+  - EKS container host 169.254.170.23 or [fd00:ec2::23]`, { logger });
+    };
+    exports2.checkUrl = checkUrl;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js
+var require_requestHelpers = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getCredentials = exports2.createGetRequest = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_stream_1 = require_dist_cjs22();
+    function createGetRequest(url2) {
+      return new protocol_http_1.HttpRequest({
+        protocol: url2.protocol,
+        hostname: url2.hostname,
+        port: Number(url2.port),
+        path: url2.pathname,
+        query: Array.from(url2.searchParams.entries()).reduce((acc, [k, v]) => {
+          acc[k] = v;
+          return acc;
+        }, {}),
+        fragment: url2.hash
+      });
+    }
+    exports2.createGetRequest = createGetRequest;
+    async function getCredentials(response, logger) {
+      const stream = (0, util_stream_1.sdkStreamMixin)(response.body);
+      const str = await stream.transformToString();
+      if (response.statusCode === 200) {
+        const parsed = JSON.parse(str);
+        if (typeof parsed.AccessKeyId !== "string" || typeof parsed.SecretAccessKey !== "string" || typeof parsed.Token !== "string" || typeof parsed.Expiration !== "string") {
+          throw new property_provider_1.CredentialsProviderError("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }", { logger });
+        }
+        return {
+          accessKeyId: parsed.AccessKeyId,
+          secretAccessKey: parsed.SecretAccessKey,
+          sessionToken: parsed.Token,
+          expiration: (0, smithy_client_1.parseRfc3339DateTime)(parsed.Expiration)
+        };
+      }
+      if (response.statusCode >= 400 && response.statusCode < 500) {
+        let parsedBody = {};
+        try {
+          parsedBody = JSON.parse(str);
+        } catch (e) {
+        }
+        throw Object.assign(new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger }), {
+          Code: parsedBody.Code,
+          Message: parsedBody.Message
+        });
+      }
+      throw new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger });
+    }
+    exports2.getCredentials = getCredentials;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js
+var require_retry_wrapper = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.retryWrapper = void 0;
+    var retryWrapper = (toRetry, maxRetries, delayMs) => {
+      return async () => {
+        for (let i = 0; i < maxRetries; ++i) {
+          try {
+            return await toRetry();
+          } catch (e) {
+            await new Promise((resolve6) => setTimeout(resolve6, delayMs));
+          }
+        }
+        return await toRetry();
+      };
+    };
+    exports2.retryWrapper = retryWrapper;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js
+var require_fromHttp = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var node_http_handler_1 = require_dist_cjs19();
+    var property_provider_1 = require_dist_cjs24();
+    var promises_1 = tslib_1.__importDefault(require("fs/promises"));
+    var checkUrl_1 = require_checkUrl();
+    var requestHelpers_1 = require_requestHelpers();
+    var retry_wrapper_1 = require_retry_wrapper();
+    var AWS_CONTAINER_CREDENTIALS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var DEFAULT_LINK_LOCAL_HOST = "http://169.254.170.2";
+    var AWS_CONTAINER_CREDENTIALS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE = "AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromHttp = (options = {}) => {
+      options.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");
+      let host;
+      const relative7 = options.awsContainerCredentialsRelativeUri ?? process.env[AWS_CONTAINER_CREDENTIALS_RELATIVE_URI];
+      const full = options.awsContainerCredentialsFullUri ?? process.env[AWS_CONTAINER_CREDENTIALS_FULL_URI];
+      const token = options.awsContainerAuthorizationToken ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN];
+      const tokenFile = options.awsContainerAuthorizationTokenFile ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE];
+      const warn = options.logger?.constructor?.name === "NoOpLogger" || !options.logger ? console.warn : options.logger.warn;
+      if (relative7 && full) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri.");
+        warn("awsContainerCredentialsFullUri will take precedence.");
+      }
+      if (token && tokenFile) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile.");
+        warn("awsContainerAuthorizationToken will take precedence.");
+      }
+      if (full) {
+        host = full;
+      } else if (relative7) {
+        host = `${DEFAULT_LINK_LOCAL_HOST}${relative7}`;
+      } else {
+        throw new property_provider_1.CredentialsProviderError(`No HTTP credential provider host provided.
+Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`, { logger: options.logger });
+      }
+      const url2 = new URL(host);
+      (0, checkUrl_1.checkUrl)(url2, options.logger);
+      const requestHandler = new node_http_handler_1.NodeHttpHandler({
+        requestTimeout: options.timeout ?? 1e3,
+        connectionTimeout: options.timeout ?? 1e3
+      });
+      return (0, retry_wrapper_1.retryWrapper)(async () => {
+        const request2 = (0, requestHelpers_1.createGetRequest)(url2);
+        if (token) {
+          request2.headers.Authorization = token;
+        } else if (tokenFile) {
+          request2.headers.Authorization = (await promises_1.default.readFile(tokenFile)).toString();
+        }
+        try {
+          const result = await requestHandler.handle(request2);
+          return (0, requestHelpers_1.getCredentials)(result.response);
+        } catch (e) {
+          throw new property_provider_1.CredentialsProviderError(String(e), { logger: options.logger });
+        }
+      }, options.maxRetries ?? 3, options.timeout ?? 1e3);
+    };
+    exports2.fromHttp = fromHttp;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js
+var require_dist_cjs38 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var fromHttp_1 = require_fromHttp();
+    Object.defineProperty(exports2, "fromHttp", { enumerable: true, get: function() {
+      return fromHttp_1.fromHttp;
+    } });
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOHttpAuthSchemeProvider = exports2.defaultSSOHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOHttpAuthSchemeParametersProvider = defaultSSOHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "awsssoportal",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "GetRoleCredentials": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccountRoles": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccounts": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "Logout": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOHttpAuthSchemeProvider = defaultSSOHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/package.json
+var require_package2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso",
+      description: "AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js
+var require_dist_cjs39 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      UA_APP_ID_ENV_NAME: () => UA_APP_ID_ENV_NAME,
+      UA_APP_ID_INI_NAME: () => UA_APP_ID_INI_NAME,
+      crtAvailability: () => crtAvailability,
+      defaultUserAgent: () => defaultUserAgent
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_node_config_provider = require_dist_cjs26();
+    var import_os = require("os");
+    var import_process2 = require("process");
+    var crtAvailability = {
+      isCrtAvailable: false
+    };
+    var isCrtAvailable = /* @__PURE__ */ __name2(() => {
+      if (crtAvailability.isCrtAvailable) {
+        return ["md/crt-avail"];
+      }
+      return null;
+    }, "isCrtAvailable");
+    var UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
+    var UA_APP_ID_INI_NAME = "sdk-ua-app-id";
+    var defaultUserAgent = /* @__PURE__ */ __name2(({ serviceId, clientVersion }) => {
+      const sections = [
+        // sdk-metadata
+        ["aws-sdk-js", clientVersion],
+        // ua-metadata
+        ["ua", "2.0"],
+        // os-metadata
+        [`os/${(0, import_os.platform)()}`, (0, import_os.release)()],
+        // language-metadata
+        // ECMAScript edition doesn't matter in JS, so no version needed.
+        ["lang/js"],
+        ["md/nodejs", `${import_process2.versions.node}`]
+      ];
+      const crtAvailable = isCrtAvailable();
+      if (crtAvailable) {
+        sections.push(crtAvailable);
+      }
+      if (serviceId) {
+        sections.push([`api/${serviceId}`, clientVersion]);
+      }
+      if (import_process2.env.AWS_EXECUTION_ENV) {
+        sections.push([`exec-env/${import_process2.env.AWS_EXECUTION_ENV}`]);
+      }
+      const appIdPromise = (0, import_node_config_provider.loadConfig)({
+        environmentVariableSelector: (env2) => env2[UA_APP_ID_ENV_NAME],
+        configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME],
+        default: void 0
+      })();
+      let resolvedUserAgent = void 0;
+      return async () => {
+        if (!resolvedUserAgent) {
+          const appId = await appIdPromise;
+          resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
+        }
+        return resolvedUserAgent;
+      };
+    }, "defaultUserAgent");
+  }
+});
+
+// ../../../node_modules/@smithy/hash-node/dist-cjs/index.js
+var require_dist_cjs40 = __commonJS({
+  "../../../node_modules/@smithy/hash-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Hash: () => Hash
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var import_util_utf8 = require_dist_cjs15();
+    var import_buffer = require("buffer");
+    var import_crypto5 = require("crypto");
+    var _Hash = class _Hash {
+      constructor(algorithmIdentifier, secret) {
+        this.algorithmIdentifier = algorithmIdentifier;
+        this.secret = secret;
+        this.reset();
+      }
+      update(toHash, encoding) {
+        this.hash.update((0, import_util_utf8.toUint8Array)(castSourceData(toHash, encoding)));
+      }
+      digest() {
+        return Promise.resolve(this.hash.digest());
+      }
+      reset() {
+        this.hash = this.secret ? (0, import_crypto5.createHmac)(this.algorithmIdentifier, castSourceData(this.secret)) : (0, import_crypto5.createHash)(this.algorithmIdentifier);
+      }
+    };
+    __name2(_Hash, "Hash");
+    var Hash = _Hash;
+    function castSourceData(toCast, encoding) {
+      if (import_buffer.Buffer.isBuffer(toCast)) {
+        return toCast;
+      }
+      if (typeof toCast === "string") {
+        return (0, import_util_buffer_from.fromString)(toCast, encoding);
+      }
+      if (ArrayBuffer.isView(toCast)) {
+        return (0, import_util_buffer_from.fromArrayBuffer)(toCast.buffer, toCast.byteOffset, toCast.byteLength);
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(toCast);
+    }
+    __name2(castSourceData, "castSourceData");
+  }
+});
+
+// ../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js
+var require_dist_cjs41 = __commonJS({
+  "../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      calculateBodyLength: () => calculateBodyLength
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_fs4 = require("fs");
+    var calculateBodyLength = /* @__PURE__ */ __name2((body) => {
+      if (!body) {
+        return 0;
+      }
+      if (typeof body === "string") {
+        return Buffer.byteLength(body);
+      } else if (typeof body.byteLength === "number") {
+        return body.byteLength;
+      } else if (typeof body.size === "number") {
+        return body.size;
+      } else if (typeof body.start === "number" && typeof body.end === "number") {
+        return body.end + 1 - body.start;
+      } else if (typeof body.path === "string" || Buffer.isBuffer(body.path)) {
+        return (0, import_fs4.lstatSync)(body.path).size;
+      } else if (typeof body.fd === "number") {
+        return (0, import_fs4.fstatSync)(body.fd).size;
+      }
+      throw new Error(`Body Length computation failed for ${body}`);
+    }, "calculateBodyLength");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js
+var require_ruleset = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://portal.sso.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider2();
+    var endpointResolver_1 = require_endpointResolver();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js
+var require_dist_cjs42 = __commonJS({
+  "../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      resolveDefaultsModeConfig: () => resolveDefaultsModeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_config_resolver = require_dist_cjs11();
+    var import_node_config_provider = require_dist_cjs26();
+    var import_property_provider2 = require_dist_cjs24();
+    var AWS_EXECUTION_ENV = "AWS_EXECUTION_ENV";
+    var AWS_REGION_ENV = "AWS_REGION";
+    var AWS_DEFAULT_REGION_ENV = "AWS_DEFAULT_REGION";
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var DEFAULTS_MODE_OPTIONS = ["in-region", "cross-region", "mobile", "standard", "legacy"];
+    var IMDS_REGION_PATH = "/latest/meta-data/placement/region";
+    var AWS_DEFAULTS_MODE_ENV = "AWS_DEFAULTS_MODE";
+    var AWS_DEFAULTS_MODE_CONFIG = "defaults_mode";
+    var NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        return env2[AWS_DEFAULTS_MODE_ENV];
+      },
+      configFileSelector: (profile) => {
+        return profile[AWS_DEFAULTS_MODE_CONFIG];
+      },
+      default: "legacy"
+    };
+    var resolveDefaultsModeConfig = /* @__PURE__ */ __name2(({
+      region = (0, import_node_config_provider.loadConfig)(import_config_resolver.NODE_REGION_CONFIG_OPTIONS),
+      defaultsMode = (0, import_node_config_provider.loadConfig)(NODE_DEFAULTS_MODE_CONFIG_OPTIONS)
+    } = {}) => (0, import_property_provider2.memoize)(async () => {
+      const mode = typeof defaultsMode === "function" ? await defaultsMode() : defaultsMode;
+      switch (mode == null ? void 0 : mode.toLowerCase()) {
+        case "auto":
+          return resolveNodeDefaultsModeAuto(region);
+        case "in-region":
+        case "cross-region":
+        case "mobile":
+        case "standard":
+        case "legacy":
+          return Promise.resolve(mode == null ? void 0 : mode.toLocaleLowerCase());
+        case void 0:
+          return Promise.resolve("legacy");
+        default:
+          throw new Error(
+            `Invalid parameter for "defaultsMode", expect ${DEFAULTS_MODE_OPTIONS.join(", ")}, got ${mode}`
+          );
+      }
+    }), "resolveDefaultsModeConfig");
+    var resolveNodeDefaultsModeAuto = /* @__PURE__ */ __name2(async (clientRegion) => {
+      if (clientRegion) {
+        const resolvedRegion = typeof clientRegion === "function" ? await clientRegion() : clientRegion;
+        const inferredRegion = await inferPhysicalRegion();
+        if (!inferredRegion) {
+          return "standard";
+        }
+        if (resolvedRegion === inferredRegion) {
+          return "in-region";
+        } else {
+          return "cross-region";
+        }
+      }
+      return "standard";
+    }, "resolveNodeDefaultsModeAuto");
+    var inferPhysicalRegion = /* @__PURE__ */ __name2(async () => {
+      if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {
+        return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];
+      }
+      if (!process.env[ENV_IMDS_DISABLED]) {
+        try {
+          const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          const endpoint = await getInstanceMetadataEndpoint();
+          return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString();
+        } catch (e) {
+        }
+      }
+    }, "inferPhysicalRegion");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js
+var require_runtimeConfig = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package2());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js
+var require_dist_cjs43 = __commonJS({
+  "../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getAwsRegionExtensionConfiguration: () => getAwsRegionExtensionConfiguration,
+      resolveAwsRegionExtensionConfiguration: () => resolveAwsRegionExtensionConfiguration,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let runtimeConfigRegion = /* @__PURE__ */ __name2(async () => {
+        if (runtimeConfig.region === void 0) {
+          throw new Error("Region is missing from runtimeConfig");
+        }
+        const region = runtimeConfig.region;
+        if (typeof region === "string") {
+          return region;
+        }
+        return region();
+      }, "runtimeConfigRegion");
+      return {
+        setRegion(region) {
+          runtimeConfigRegion = region;
+        },
+        region() {
+          return runtimeConfigRegion;
+        }
+      };
+    }, "getAwsRegionExtensionConfiguration");
+    var resolveAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((awsRegionExtensionConfiguration) => {
+      return {
+        region: awsRegionExtensionConfiguration.region()
+      };
+    }, "resolveAwsRegionExtensionConfiguration");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js
+var require_dist_cjs44 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      GetRoleCredentialsCommand: () => GetRoleCredentialsCommand,
+      GetRoleCredentialsRequestFilterSensitiveLog: () => GetRoleCredentialsRequestFilterSensitiveLog,
+      GetRoleCredentialsResponseFilterSensitiveLog: () => GetRoleCredentialsResponseFilterSensitiveLog,
+      InvalidRequestException: () => InvalidRequestException,
+      ListAccountRolesCommand: () => ListAccountRolesCommand,
+      ListAccountRolesRequestFilterSensitiveLog: () => ListAccountRolesRequestFilterSensitiveLog,
+      ListAccountsCommand: () => ListAccountsCommand,
+      ListAccountsRequestFilterSensitiveLog: () => ListAccountsRequestFilterSensitiveLog,
+      LogoutCommand: () => LogoutCommand,
+      LogoutRequestFilterSensitiveLog: () => LogoutRequestFilterSensitiveLog,
+      ResourceNotFoundException: () => ResourceNotFoundException,
+      RoleCredentialsFilterSensitiveLog: () => RoleCredentialsFilterSensitiveLog,
+      SSO: () => SSO,
+      SSOClient: () => SSOClient,
+      SSOServiceException: () => SSOServiceException,
+      TooManyRequestsException: () => TooManyRequestsException,
+      UnauthorizedException: () => UnauthorizedException,
+      __Client: () => import_smithy_client4.Client,
+      paginateListAccountRoles: () => paginateListAccountRoles,
+      paginateListAccounts: () => paginateListAccounts
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider2();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "awsssoportal"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOClient = class _SSOClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOClient, "SSOClient");
+    var SSOClient = _SSOClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOServiceException = class _SSOServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOServiceException2.prototype);
+      }
+    };
+    __name2(_SSOServiceException, "SSOServiceException");
+    var SSOServiceException = _SSOServiceException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _ResourceNotFoundException = class _ResourceNotFoundException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFoundException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFoundException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFoundException2.prototype);
+      }
+    };
+    __name2(_ResourceNotFoundException, "ResourceNotFoundException");
+    var ResourceNotFoundException = _ResourceNotFoundException;
+    var _TooManyRequestsException = class _TooManyRequestsException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyRequestsException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyRequestsException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyRequestsException2.prototype);
+      }
+    };
+    __name2(_TooManyRequestsException, "TooManyRequestsException");
+    var TooManyRequestsException = _TooManyRequestsException;
+    var _UnauthorizedException = class _UnauthorizedException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedException2.prototype);
+      }
+    };
+    __name2(_UnauthorizedException, "UnauthorizedException");
+    var UnauthorizedException = _UnauthorizedException;
+    var GetRoleCredentialsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetRoleCredentialsRequestFilterSensitiveLog");
+    var RoleCredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.secretAccessKey && { secretAccessKey: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.sessionToken && { sessionToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "RoleCredentialsFilterSensitiveLog");
+    var GetRoleCredentialsResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.roleCredentials && { roleCredentials: RoleCredentialsFilterSensitiveLog(obj.roleCredentials) }
+    }), "GetRoleCredentialsResponseFilterSensitiveLog");
+    var ListAccountRolesRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountRolesRequestFilterSensitiveLog");
+    var ListAccountsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountsRequestFilterSensitiveLog");
+    var LogoutRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "LogoutRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/federation/credentials");
+      const query = (0, import_smithy_client4.map)({
+        [_rn]: [, (0, import_smithy_client4.expectNonNull)(input[_rN], `roleName`)],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_GetRoleCredentialsCommand");
+    var se_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/roles");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountRolesCommand");
+    var se_ListAccountsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/accounts");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountsCommand");
+    var se_LogoutCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/logout");
+      let body;
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_LogoutCommand");
+    var de_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        roleCredentials: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_GetRoleCredentialsCommand");
+    var de_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        nextToken: import_smithy_client4.expectString,
+        roleList: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountRolesCommand");
+    var de_ListAccountsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accountList: import_smithy_client4._json,
+        nextToken: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountsCommand");
+    var de_LogoutCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      await (0, import_smithy_client4.collectBody)(output.body, context);
+      return contents;
+    }, "de_LogoutCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "InvalidRequestException":
+        case "com.amazonaws.sso#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "ResourceNotFoundException":
+        case "com.amazonaws.sso#ResourceNotFoundException":
+          throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+        case "TooManyRequestsException":
+        case "com.amazonaws.sso#TooManyRequestsException":
+          throw await de_TooManyRequestsExceptionRes(parsedOutput, context);
+        case "UnauthorizedException":
+        case "com.amazonaws.sso#UnauthorizedException":
+          throw await de_UnauthorizedExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOServiceException);
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_ResourceNotFoundExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ResourceNotFoundException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ResourceNotFoundExceptionRes");
+    var de_TooManyRequestsExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new TooManyRequestsException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_TooManyRequestsExceptionRes");
+    var de_UnauthorizedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => value !== void 0 && value !== null && value !== "" && (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0), "isSerializableHeaderValue");
+    var _aI = "accountId";
+    var _aT = "accessToken";
+    var _ai = "account_id";
+    var _mR = "maxResults";
+    var _mr = "max_result";
+    var _nT = "nextToken";
+    var _nt = "next_token";
+    var _rN = "roleName";
+    var _rn = "role_name";
+    var _xasbt = "x-amz-sso_bearer_token";
+    var _GetRoleCredentialsCommand = class _GetRoleCredentialsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "GetRoleCredentials", {}).n("SSOClient", "GetRoleCredentialsCommand").f(GetRoleCredentialsRequestFilterSensitiveLog, GetRoleCredentialsResponseFilterSensitiveLog).ser(se_GetRoleCredentialsCommand).de(de_GetRoleCredentialsCommand).build() {
+    };
+    __name2(_GetRoleCredentialsCommand, "GetRoleCredentialsCommand");
+    var GetRoleCredentialsCommand = _GetRoleCredentialsCommand;
+    var _ListAccountRolesCommand = class _ListAccountRolesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccountRoles", {}).n("SSOClient", "ListAccountRolesCommand").f(ListAccountRolesRequestFilterSensitiveLog, void 0).ser(se_ListAccountRolesCommand).de(de_ListAccountRolesCommand).build() {
+    };
+    __name2(_ListAccountRolesCommand, "ListAccountRolesCommand");
+    var ListAccountRolesCommand = _ListAccountRolesCommand;
+    var _ListAccountsCommand = class _ListAccountsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccounts", {}).n("SSOClient", "ListAccountsCommand").f(ListAccountsRequestFilterSensitiveLog, void 0).ser(se_ListAccountsCommand).de(de_ListAccountsCommand).build() {
+    };
+    __name2(_ListAccountsCommand, "ListAccountsCommand");
+    var ListAccountsCommand = _ListAccountsCommand;
+    var _LogoutCommand = class _LogoutCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "Logout", {}).n("SSOClient", "LogoutCommand").f(LogoutRequestFilterSensitiveLog, void 0).ser(se_LogoutCommand).de(de_LogoutCommand).build() {
+    };
+    __name2(_LogoutCommand, "LogoutCommand");
+    var LogoutCommand = _LogoutCommand;
+    var commands = {
+      GetRoleCredentialsCommand,
+      ListAccountRolesCommand,
+      ListAccountsCommand,
+      LogoutCommand
+    };
+    var _SSO = class _SSO extends SSOClient {
+    };
+    __name2(_SSO, "SSO");
+    var SSO = _SSO;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSO);
+    var paginateListAccountRoles = (0, import_core4.createPaginator)(SSOClient, ListAccountRolesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListAccounts = (0, import_core4.createPaginator)(SSOClient, ListAccountsCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOOIDCHttpAuthSchemeProvider = exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOOIDCHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = defaultSSOOIDCHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sso-oauth",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOOIDCHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "CreateToken": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "RegisterClient": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "StartDeviceAuthorization": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeProvider = defaultSSOOIDCHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/package.json
+var require_package3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso-oidc",
+      description: "AWS SDK for JavaScript Sso Oidc Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso-oidc",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso-oidc"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      peerDependencies: {
+        "@aws-sdk/client-sts": "^3.632.0"
+      },
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso-oidc",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso-oidc"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js
+var require_ruleset2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://oidc.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://oidc.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset2();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider3();
+    var endpointResolver_1 = require_endpointResolver2();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOOIDCHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO OIDC",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js
+var require_runtimeConfig2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package3());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js
+var require_dist_cjs45 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AccessDeniedException: () => AccessDeniedException,
+      AuthorizationPendingException: () => AuthorizationPendingException,
+      CreateTokenCommand: () => CreateTokenCommand,
+      CreateTokenRequestFilterSensitiveLog: () => CreateTokenRequestFilterSensitiveLog,
+      CreateTokenResponseFilterSensitiveLog: () => CreateTokenResponseFilterSensitiveLog,
+      CreateTokenWithIAMCommand: () => CreateTokenWithIAMCommand,
+      CreateTokenWithIAMRequestFilterSensitiveLog: () => CreateTokenWithIAMRequestFilterSensitiveLog,
+      CreateTokenWithIAMResponseFilterSensitiveLog: () => CreateTokenWithIAMResponseFilterSensitiveLog,
+      ExpiredTokenException: () => ExpiredTokenException,
+      InternalServerException: () => InternalServerException,
+      InvalidClientException: () => InvalidClientException,
+      InvalidClientMetadataException: () => InvalidClientMetadataException,
+      InvalidGrantException: () => InvalidGrantException,
+      InvalidRedirectUriException: () => InvalidRedirectUriException,
+      InvalidRequestException: () => InvalidRequestException,
+      InvalidRequestRegionException: () => InvalidRequestRegionException,
+      InvalidScopeException: () => InvalidScopeException,
+      RegisterClientCommand: () => RegisterClientCommand,
+      RegisterClientResponseFilterSensitiveLog: () => RegisterClientResponseFilterSensitiveLog,
+      SSOOIDC: () => SSOOIDC,
+      SSOOIDCClient: () => SSOOIDCClient,
+      SSOOIDCServiceException: () => SSOOIDCServiceException,
+      SlowDownException: () => SlowDownException,
+      StartDeviceAuthorizationCommand: () => StartDeviceAuthorizationCommand,
+      StartDeviceAuthorizationRequestFilterSensitiveLog: () => StartDeviceAuthorizationRequestFilterSensitiveLog,
+      UnauthorizedClientException: () => UnauthorizedClientException,
+      UnsupportedGrantTypeException: () => UnsupportedGrantTypeException,
+      __Client: () => import_smithy_client4.Client
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider3();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "sso-oauth"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig2();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOOIDCClient = class _SSOOIDCClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOOIDCHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOOIDCClient, "SSOOIDCClient");
+    var SSOOIDCClient = _SSOOIDCClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOOIDCServiceException = class _SSOOIDCServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOOIDCServiceException2.prototype);
+      }
+    };
+    __name2(_SSOOIDCServiceException, "SSOOIDCServiceException");
+    var SSOOIDCServiceException = _SSOOIDCServiceException;
+    var _AccessDeniedException = class _AccessDeniedException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AccessDeniedException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AccessDeniedException, "AccessDeniedException");
+    var AccessDeniedException = _AccessDeniedException;
+    var _AuthorizationPendingException = class _AuthorizationPendingException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AuthorizationPendingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AuthorizationPendingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AuthorizationPendingException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AuthorizationPendingException, "AuthorizationPendingException");
+    var AuthorizationPendingException = _AuthorizationPendingException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _InternalServerException = class _InternalServerException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InternalServerException",
+          $fault: "server",
+          ...opts
+        });
+        this.name = "InternalServerException";
+        this.$fault = "server";
+        Object.setPrototypeOf(this, _InternalServerException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InternalServerException, "InternalServerException");
+    var InternalServerException = _InternalServerException;
+    var _InvalidClientException = class _InvalidClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientException, "InvalidClientException");
+    var InvalidClientException = _InvalidClientException;
+    var _InvalidGrantException = class _InvalidGrantException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidGrantException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidGrantException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidGrantException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidGrantException, "InvalidGrantException");
+    var InvalidGrantException = _InvalidGrantException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _InvalidScopeException = class _InvalidScopeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidScopeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidScopeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidScopeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidScopeException, "InvalidScopeException");
+    var InvalidScopeException = _InvalidScopeException;
+    var _SlowDownException = class _SlowDownException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "SlowDownException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "SlowDownException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _SlowDownException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_SlowDownException, "SlowDownException");
+    var SlowDownException = _SlowDownException;
+    var _UnauthorizedClientException = class _UnauthorizedClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnauthorizedClientException, "UnauthorizedClientException");
+    var UnauthorizedClientException = _UnauthorizedClientException;
+    var _UnsupportedGrantTypeException = class _UnsupportedGrantTypeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnsupportedGrantTypeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnsupportedGrantTypeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnsupportedGrantTypeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnsupportedGrantTypeException, "UnsupportedGrantTypeException");
+    var UnsupportedGrantTypeException = _UnsupportedGrantTypeException;
+    var _InvalidRequestRegionException = class _InvalidRequestRegionException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestRegionException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestRegionException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestRegionException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+        this.endpoint = opts.endpoint;
+        this.region = opts.region;
+      }
+    };
+    __name2(_InvalidRequestRegionException, "InvalidRequestRegionException");
+    var InvalidRequestRegionException = _InvalidRequestRegionException;
+    var _InvalidClientMetadataException = class _InvalidClientMetadataException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientMetadataException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientMetadataException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientMetadataException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientMetadataException, "InvalidClientMetadataException");
+    var InvalidClientMetadataException = _InvalidClientMetadataException;
+    var _InvalidRedirectUriException = class _InvalidRedirectUriException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRedirectUriException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRedirectUriException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRedirectUriException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRedirectUriException, "InvalidRedirectUriException");
+    var InvalidRedirectUriException = _InvalidRedirectUriException;
+    var CreateTokenRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenRequestFilterSensitiveLog");
+    var CreateTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenResponseFilterSensitiveLog");
+    var CreateTokenWithIAMRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.assertion && { assertion: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.subjectToken && { subjectToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMRequestFilterSensitiveLog");
+    var CreateTokenWithIAMResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMResponseFilterSensitiveLog");
+    var RegisterClientResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "RegisterClientResponseFilterSensitiveLog");
+    var StartDeviceAuthorizationRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartDeviceAuthorizationRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_CreateTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          code: [],
+          codeVerifier: [],
+          deviceCode: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          scope: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_CreateTokenCommand");
+    var se_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      const query = (0, import_smithy_client4.map)({
+        [_ai]: [, "t"]
+      });
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          assertion: [],
+          clientId: [],
+          code: [],
+          codeVerifier: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          requestedTokenType: [],
+          scope: (_) => (0, import_smithy_client4._json)(_),
+          subjectToken: [],
+          subjectTokenType: []
+        })
+      );
+      b.m("POST").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_CreateTokenWithIAMCommand");
+    var se_RegisterClientCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/client/register");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientName: [],
+          clientType: [],
+          entitledApplicationArn: [],
+          grantTypes: (_) => (0, import_smithy_client4._json)(_),
+          issuerUrl: [],
+          redirectUris: (_) => (0, import_smithy_client4._json)(_),
+          scopes: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_RegisterClientCommand");
+    var se_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/device_authorization");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          startUrl: []
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_StartDeviceAuthorizationCommand");
+    var de_CreateTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenCommand");
+    var de_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        issuedTokenType: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        scope: import_smithy_client4._json,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenWithIAMCommand");
+    var de_RegisterClientCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        authorizationEndpoint: import_smithy_client4.expectString,
+        clientId: import_smithy_client4.expectString,
+        clientIdIssuedAt: import_smithy_client4.expectLong,
+        clientSecret: import_smithy_client4.expectString,
+        clientSecretExpiresAt: import_smithy_client4.expectLong,
+        tokenEndpoint: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_RegisterClientCommand");
+    var de_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        deviceCode: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        interval: import_smithy_client4.expectInt32,
+        userCode: import_smithy_client4.expectString,
+        verificationUri: import_smithy_client4.expectString,
+        verificationUriComplete: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_StartDeviceAuthorizationCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "AccessDeniedException":
+        case "com.amazonaws.ssooidc#AccessDeniedException":
+          throw await de_AccessDeniedExceptionRes(parsedOutput, context);
+        case "AuthorizationPendingException":
+        case "com.amazonaws.ssooidc#AuthorizationPendingException":
+          throw await de_AuthorizationPendingExceptionRes(parsedOutput, context);
+        case "ExpiredTokenException":
+        case "com.amazonaws.ssooidc#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "InternalServerException":
+        case "com.amazonaws.ssooidc#InternalServerException":
+          throw await de_InternalServerExceptionRes(parsedOutput, context);
+        case "InvalidClientException":
+        case "com.amazonaws.ssooidc#InvalidClientException":
+          throw await de_InvalidClientExceptionRes(parsedOutput, context);
+        case "InvalidGrantException":
+        case "com.amazonaws.ssooidc#InvalidGrantException":
+          throw await de_InvalidGrantExceptionRes(parsedOutput, context);
+        case "InvalidRequestException":
+        case "com.amazonaws.ssooidc#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "InvalidScopeException":
+        case "com.amazonaws.ssooidc#InvalidScopeException":
+          throw await de_InvalidScopeExceptionRes(parsedOutput, context);
+        case "SlowDownException":
+        case "com.amazonaws.ssooidc#SlowDownException":
+          throw await de_SlowDownExceptionRes(parsedOutput, context);
+        case "UnauthorizedClientException":
+        case "com.amazonaws.ssooidc#UnauthorizedClientException":
+          throw await de_UnauthorizedClientExceptionRes(parsedOutput, context);
+        case "UnsupportedGrantTypeException":
+        case "com.amazonaws.ssooidc#UnsupportedGrantTypeException":
+          throw await de_UnsupportedGrantTypeExceptionRes(parsedOutput, context);
+        case "InvalidRequestRegionException":
+        case "com.amazonaws.ssooidc#InvalidRequestRegionException":
+          throw await de_InvalidRequestRegionExceptionRes(parsedOutput, context);
+        case "InvalidClientMetadataException":
+        case "com.amazonaws.ssooidc#InvalidClientMetadataException":
+          throw await de_InvalidClientMetadataExceptionRes(parsedOutput, context);
+        case "InvalidRedirectUriException":
+        case "com.amazonaws.ssooidc#InvalidRedirectUriException":
+          throw await de_InvalidRedirectUriExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOOIDCServiceException);
+    var de_AccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AccessDeniedExceptionRes");
+    var de_AuthorizationPendingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AuthorizationPendingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AuthorizationPendingExceptionRes");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_InternalServerExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InternalServerException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InternalServerExceptionRes");
+    var de_InvalidClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientExceptionRes");
+    var de_InvalidClientMetadataExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientMetadataException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientMetadataExceptionRes");
+    var de_InvalidGrantExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidGrantException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidGrantExceptionRes");
+    var de_InvalidRedirectUriExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRedirectUriException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRedirectUriExceptionRes");
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_InvalidRequestRegionExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        endpoint: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString,
+        region: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestRegionException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestRegionExceptionRes");
+    var de_InvalidScopeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidScopeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidScopeExceptionRes");
+    var de_SlowDownExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new SlowDownException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_SlowDownExceptionRes");
+    var de_UnauthorizedClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedClientExceptionRes");
+    var de_UnsupportedGrantTypeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnsupportedGrantTypeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnsupportedGrantTypeExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var _ai = "aws_iam";
+    var _CreateTokenCommand = class _CreateTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateToken", {}).n("SSOOIDCClient", "CreateTokenCommand").f(CreateTokenRequestFilterSensitiveLog, CreateTokenResponseFilterSensitiveLog).ser(se_CreateTokenCommand).de(de_CreateTokenCommand).build() {
+    };
+    __name2(_CreateTokenCommand, "CreateTokenCommand");
+    var CreateTokenCommand = _CreateTokenCommand;
+    var _CreateTokenWithIAMCommand = class _CreateTokenWithIAMCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateTokenWithIAM", {}).n("SSOOIDCClient", "CreateTokenWithIAMCommand").f(CreateTokenWithIAMRequestFilterSensitiveLog, CreateTokenWithIAMResponseFilterSensitiveLog).ser(se_CreateTokenWithIAMCommand).de(de_CreateTokenWithIAMCommand).build() {
+    };
+    __name2(_CreateTokenWithIAMCommand, "CreateTokenWithIAMCommand");
+    var CreateTokenWithIAMCommand = _CreateTokenWithIAMCommand;
+    var _RegisterClientCommand = class _RegisterClientCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "RegisterClient", {}).n("SSOOIDCClient", "RegisterClientCommand").f(void 0, RegisterClientResponseFilterSensitiveLog).ser(se_RegisterClientCommand).de(de_RegisterClientCommand).build() {
+    };
+    __name2(_RegisterClientCommand, "RegisterClientCommand");
+    var RegisterClientCommand = _RegisterClientCommand;
+    var _StartDeviceAuthorizationCommand = class _StartDeviceAuthorizationCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "StartDeviceAuthorization", {}).n("SSOOIDCClient", "StartDeviceAuthorizationCommand").f(StartDeviceAuthorizationRequestFilterSensitiveLog, void 0).ser(se_StartDeviceAuthorizationCommand).de(de_StartDeviceAuthorizationCommand).build() {
+    };
+    __name2(_StartDeviceAuthorizationCommand, "StartDeviceAuthorizationCommand");
+    var StartDeviceAuthorizationCommand = _StartDeviceAuthorizationCommand;
+    var commands = {
+      CreateTokenCommand,
+      CreateTokenWithIAMCommand,
+      RegisterClientCommand,
+      StartDeviceAuthorizationCommand
+    };
+    var _SSOOIDC = class _SSOOIDC extends SSOOIDCClient {
+    };
+    __name2(_SSOOIDC, "SSOOIDC");
+    var SSOOIDC = _SSOOIDC;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSOOIDC);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js
+var require_dist_cjs46 = __commonJS({
+  "../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSso: () => fromSso,
+      fromStatic: () => fromStatic,
+      nodeProvider: () => nodeProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var EXPIRE_WINDOW_MS = 5 * 60 * 1e3;
+    var REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;
+    var ssoOidcClientsHash = {};
+    var getSsoOidcClient = /* @__PURE__ */ __name2(async (ssoRegion) => {
+      const { SSOOIDCClient } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      if (ssoOidcClientsHash[ssoRegion]) {
+        return ssoOidcClientsHash[ssoRegion];
+      }
+      const ssoOidcClient = new SSOOIDCClient({ region: ssoRegion });
+      ssoOidcClientsHash[ssoRegion] = ssoOidcClient;
+      return ssoOidcClient;
+    }, "getSsoOidcClient");
+    var getNewSsoOidcToken = /* @__PURE__ */ __name2(async (ssoToken, ssoRegion) => {
+      const { CreateTokenCommand } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      const ssoOidcClient = await getSsoOidcClient(ssoRegion);
+      return ssoOidcClient.send(
+        new CreateTokenCommand({
+          clientId: ssoToken.clientId,
+          clientSecret: ssoToken.clientSecret,
+          refreshToken: ssoToken.refreshToken,
+          grantType: "refresh_token"
+        })
+      );
+    }, "getNewSsoOidcToken");
+    var import_property_provider2 = require_dist_cjs24();
+    var validateTokenExpiry = /* @__PURE__ */ __name2((token) => {
+      if (token.expiration && token.expiration.getTime() < Date.now()) {
+        throw new import_property_provider2.TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);
+      }
+    }, "validateTokenExpiry");
+    var validateTokenKey = /* @__PURE__ */ __name2((key, value, forRefresh = false) => {
+      if (typeof value === "undefined") {
+        throw new import_property_provider2.TokenProviderError(
+          `Value not present for '${key}' in SSO Token${forRefresh ? ". Cannot refresh" : ""}. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+    }, "validateTokenKey");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_fs4 = require("fs");
+    var { writeFile } = import_fs4.promises;
+    var writeSSOTokenToFile = /* @__PURE__ */ __name2((id, ssoToken) => {
+      const tokenFilepath = (0, import_shared_ini_file_loader.getSSOTokenFilepath)(id);
+      const tokenString = JSON.stringify(ssoToken, null, 2);
+      return writeFile(tokenFilepath, tokenString);
+    }, "writeSSOTokenToFile");
+    var lastRefreshAttemptTime = /* @__PURE__ */ new Date(0);
+    var fromSso = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/token-providers - fromSso");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const profile = profiles[profileName];
+      if (!profile) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);
+      } else if (!profile["sso_session"]) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);
+      }
+      const ssoSessionName = profile["sso_session"];
+      const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+      const ssoSession = ssoSessions[ssoSessionName];
+      if (!ssoSession) {
+        throw new import_property_provider2.TokenProviderError(
+          `Sso session '${ssoSessionName}' could not be found in shared credentials file.`,
+          false
+        );
+      }
+      for (const ssoSessionRequiredKey of ["sso_start_url", "sso_region"]) {
+        if (!ssoSession[ssoSessionRequiredKey]) {
+          throw new import_property_provider2.TokenProviderError(
+            `Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`,
+            false
+          );
+        }
+      }
+      const ssoStartUrl = ssoSession["sso_start_url"];
+      const ssoRegion = ssoSession["sso_region"];
+      let ssoToken;
+      try {
+        ssoToken = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoSessionName);
+      } catch (e) {
+        throw new import_property_provider2.TokenProviderError(
+          `The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+      validateTokenKey("accessToken", ssoToken.accessToken);
+      validateTokenKey("expiresAt", ssoToken.expiresAt);
+      const { accessToken, expiresAt } = ssoToken;
+      const existingToken = { token: accessToken, expiration: new Date(expiresAt) };
+      if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {
+        return existingToken;
+      }
+      if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1e3) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+      validateTokenKey("clientId", ssoToken.clientId, true);
+      validateTokenKey("clientSecret", ssoToken.clientSecret, true);
+      validateTokenKey("refreshToken", ssoToken.refreshToken, true);
+      try {
+        lastRefreshAttemptTime.setTime(Date.now());
+        const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion);
+        validateTokenKey("accessToken", newSsoOidcToken.accessToken);
+        validateTokenKey("expiresIn", newSsoOidcToken.expiresIn);
+        const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1e3);
+        try {
+          await writeSSOTokenToFile(ssoSessionName, {
+            ...ssoToken,
+            accessToken: newSsoOidcToken.accessToken,
+            expiresAt: newTokenExpiration.toISOString(),
+            refreshToken: newSsoOidcToken.refreshToken
+          });
+        } catch (error) {
+        }
+        return {
+          token: newSsoOidcToken.accessToken,
+          expiration: newTokenExpiration
+        };
+      } catch (error) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+    }, "fromSso");
+    var fromStatic = /* @__PURE__ */ __name2(({ token, logger }) => async () => {
+      logger == null ? void 0 : logger.debug("@aws-sdk/token-providers - fromStatic");
+      if (!token || !token.token) {
+        throw new import_property_provider2.TokenProviderError(`Please pass a valid token to fromStatic`, false);
+      }
+      return token;
+    }, "fromStatic");
+    var nodeProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(fromSso(init), async () => {
+        throw new import_property_provider2.TokenProviderError("Could not load token from any providers", false);
+      }),
+      (token) => token.expiration !== void 0 && token.expiration.getTime() - Date.now() < 3e5,
+      (token) => token.expiration !== void 0
+    ), "nodeProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js
+var require_dist_cjs47 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __esm2 = (fn, res) => function __init() {
+      return fn && (res = (0, fn[__getOwnPropNames2(fn)[0]])(fn = 0)), res;
+    };
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var loadSso_exports = {};
+    __export2(loadSso_exports, {
+      GetRoleCredentialsCommand: () => import_client_sso.GetRoleCredentialsCommand,
+      SSOClient: () => import_client_sso.SSOClient
+    });
+    var import_client_sso;
+    var init_loadSso = __esm2({
+      "src/loadSso.ts"() {
+        "use strict";
+        import_client_sso = require_dist_cjs44();
+      }
+    });
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSSO: () => fromSSO,
+      isSsoProfile: () => isSsoProfile,
+      validateSsoProfile: () => validateSsoProfile
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var import_token_providers = require_dist_cjs46();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var SHOULD_FAIL_CREDENTIAL_CHAIN = false;
+    var resolveSSOCredentials = /* @__PURE__ */ __name2(async ({
+      ssoStartUrl,
+      ssoSession,
+      ssoAccountId,
+      ssoRegion,
+      ssoRoleName,
+      ssoClient,
+      clientConfig,
+      profile,
+      logger
+    }) => {
+      let token;
+      const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;
+      if (ssoSession) {
+        try {
+          const _token = await (0, import_token_providers.fromSso)({ profile })();
+          token = {
+            accessToken: _token.token,
+            expiresAt: new Date(_token.expiration).toISOString()
+          };
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(e.message, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      } else {
+        try {
+          token = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoStartUrl);
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      }
+      if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {
+        throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const { accessToken } = token;
+      const { SSOClient: SSOClient2, GetRoleCredentialsCommand: GetRoleCredentialsCommand2 } = await Promise.resolve().then(() => (init_loadSso(), loadSso_exports));
+      const sso = ssoClient || new SSOClient2(
+        Object.assign({}, clientConfig ?? {}, {
+          region: (clientConfig == null ? void 0 : clientConfig.region) ?? ssoRegion
+        })
+      );
+      let ssoResp;
+      try {
+        ssoResp = await sso.send(
+          new GetRoleCredentialsCommand2({
+            accountId: ssoAccountId,
+            roleName: ssoRoleName,
+            accessToken
+          })
+        );
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(e, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const {
+        roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}
+      } = ssoResp;
+      if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {
+        throw new import_property_provider2.CredentialsProviderError("SSO returns an invalid temporary credential.", {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      return {
+        accessKeyId,
+        secretAccessKey,
+        sessionToken,
+        expiration: new Date(expiration),
+        ...credentialScope && { credentialScope },
+        ...accountId && { accountId }
+      };
+    }, "resolveSSOCredentials");
+    var validateSsoProfile = /* @__PURE__ */ __name2((profile, logger) => {
+      const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;
+      if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(
+            ", "
+          )}
+Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,
+          { tryNextLink: false, logger }
+        );
+      }
+      return profile;
+    }, "validateSsoProfile");
+    var fromSSO = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-sso - fromSSO");
+      const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+      const { ssoClient } = init;
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+        const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+        const profile = profiles[profileName];
+        if (!profile) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });
+        }
+        if (!isSsoProfile(profile)) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {
+            logger: init.logger
+          });
+        }
+        if (profile == null ? void 0 : profile.sso_session) {
+          const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+          const session = ssoSessions[profile.sso_session];
+          const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;
+          if (ssoRegion && ssoRegion !== session.sso_region) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          profile.sso_region = session.sso_region;
+          profile.sso_start_url = session.sso_start_url;
+        }
+        const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(
+          profile,
+          init.logger
+        );
+        return resolveSSOCredentials({
+          ssoStartUrl: sso_start_url,
+          ssoSession: sso_session,
+          ssoAccountId: sso_account_id,
+          ssoRegion: sso_region,
+          ssoRoleName: sso_role_name,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      } else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {
+        throw new import_property_provider2.CredentialsProviderError(
+          'Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',
+          { tryNextLink: false, logger: init.logger }
+        );
+      } else {
+        return resolveSSOCredentials({
+          ssoStartUrl,
+          ssoSession,
+          ssoAccountId,
+          ssoRegion,
+          ssoRoleName,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      }
+    }, "fromSSO");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.resolveStsAuthConfig = exports2.defaultSTSHttpAuthSchemeProvider = exports2.defaultSTSHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var STSClient_1 = require_STSClient();
+    var defaultSTSHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSTSHttpAuthSchemeParametersProvider = defaultSTSHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sts",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSTSHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "AssumeRoleWithSAML": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "AssumeRoleWithWebIdentity": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSTSHttpAuthSchemeProvider = defaultSTSHttpAuthSchemeProvider;
+    var resolveStsAuthConfig = (input) => ({
+      ...input,
+      stsClientCtor: STSClient_1.STSClient
+    });
+    exports2.resolveStsAuthConfig = resolveStsAuthConfig;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, exports2.resolveStsAuthConfig)(config);
+      const config_1 = (0, core_1.resolveAwsSdkSigV4Config)(config_0);
+      return {
+        ...config_1
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js
+var require_EndpointParameters = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.commonParams = exports2.resolveClientEndpointParameters = void 0;
+    var resolveClientEndpointParameters = (options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        useGlobalEndpoint: options.useGlobalEndpoint ?? false,
+        defaultSigningName: "sts"
+      };
+    };
+    exports2.resolveClientEndpointParameters = resolveClientEndpointParameters;
+    exports2.commonParams = {
+      UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" },
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/package.json
+var require_package4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sts",
+      description: "AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sts",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "rimraf ./dist-types tsconfig.types.tsbuildinfo && tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sts",
+        test: "yarn test:unit",
+        "test:unit": "jest"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sts",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sts"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js
+var require_ruleset3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var F2 = "required";
+    var G2 = "type";
+    var H2 = "fn";
+    var I2 = "argv";
+    var J = "ref";
+    var a = false;
+    var b = true;
+    var c = "booleanEquals";
+    var d = "stringEquals";
+    var e = "sigv4";
+    var f = "sts";
+    var g = "us-east-1";
+    var h = "endpoint";
+    var i = "https://sts.{Region}.{PartitionResult#dnsSuffix}";
+    var j = "tree";
+    var k = "error";
+    var l = "getAttr";
+    var m = { [F2]: false, [G2]: "String" };
+    var n = { [F2]: true, "default": false, [G2]: "Boolean" };
+    var o = { [J]: "Endpoint" };
+    var p = { [H2]: "isSet", [I2]: [{ [J]: "Region" }] };
+    var q = { [J]: "Region" };
+    var r = { [H2]: "aws.partition", [I2]: [q], "assign": "PartitionResult" };
+    var s = { [J]: "UseFIPS" };
+    var t = { [J]: "UseDualStack" };
+    var u = { "url": "https://sts.amazonaws.com", "properties": { "authSchemes": [{ "name": e, "signingName": f, "signingRegion": g }] }, "headers": {} };
+    var v = {};
+    var w = { "conditions": [{ [H2]: d, [I2]: [q, "aws-global"] }], [h]: u, [G2]: h };
+    var x = { [H2]: c, [I2]: [s, true] };
+    var y = { [H2]: c, [I2]: [t, true] };
+    var z = { [H2]: l, [I2]: [{ [J]: "PartitionResult" }, "supportsFIPS"] };
+    var A = { [J]: "PartitionResult" };
+    var B = { [H2]: c, [I2]: [true, { [H2]: l, [I2]: [A, "supportsDualStack"] }] };
+    var C = [{ [H2]: "isSet", [I2]: [o] }];
+    var D = [x];
+    var E = [y];
+    var _data = { version: "1.0", parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n }, rules: [{ conditions: [{ [H2]: c, [I2]: [{ [J]: "UseGlobalEndpoint" }, b] }, { [H2]: "not", [I2]: C }, p, r, { [H2]: c, [I2]: [s, a] }, { [H2]: c, [I2]: [t, a] }], rules: [{ conditions: [{ [H2]: d, [I2]: [q, "ap-northeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-south-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-2"] }], endpoint: u, [G2]: h }, w, { conditions: [{ [H2]: d, [I2]: [q, "ca-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-north-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-3"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "sa-east-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, g] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-east-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-2"] }], endpoint: u, [G2]: h }, { endpoint: { url: i, properties: { authSchemes: [{ name: e, signingName: f, signingRegion: "{Region}" }] }, headers: v }, [G2]: h }], [G2]: j }, { conditions: C, rules: [{ conditions: D, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [G2]: k }, { conditions: E, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [G2]: k }, { endpoint: { url: o, properties: v, headers: v }, [G2]: h }], [G2]: j }, { conditions: [p], rules: [{ conditions: [r], rules: [{ conditions: [x, y], rules: [{ conditions: [{ [H2]: c, [I2]: [b, z] }, B], rules: [{ endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", [G2]: k }], [G2]: j }, { conditions: D, rules: [{ conditions: [{ [H2]: c, [I2]: [z, b] }], rules: [{ conditions: [{ [H2]: d, [I2]: [{ [H2]: l, [I2]: [A, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://sts.{Region}.amazonaws.com", properties: v, headers: v }, [G2]: h }, { endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS is enabled but this partition does not support FIPS", [G2]: k }], [G2]: j }, { conditions: E, rules: [{ conditions: [B], rules: [{ endpoint: { url: "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "DualStack is enabled but this partition does not support DualStack", [G2]: k }], [G2]: j }, w, { endpoint: { url: i, properties: v, headers: v }, [G2]: h }], [G2]: j }], [G2]: j }, { error: "Invalid Configuration: Missing Region", [G2]: k }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset3();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var endpointResolver_1 = require_endpointResolver3();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2011-06-15",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "STS",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js
+var require_runtimeConfig3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package4());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared3();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4") || (async (idProps) => await (0, credential_provider_node_1.defaultProvider)(idProps?.__config || {})()),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js
+var require_httpAuthExtensionConfiguration = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthRuntimeConfig = exports2.getHttpAuthExtensionConfiguration = void 0;
+    var getHttpAuthExtensionConfiguration = (runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    };
+    exports2.getHttpAuthExtensionConfiguration = getHttpAuthExtensionConfiguration;
+    var resolveHttpAuthRuntimeConfig = (config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    };
+    exports2.resolveHttpAuthRuntimeConfig = resolveHttpAuthRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js
+var require_runtimeExtensions = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveRuntimeExtensions = void 0;
+    var region_config_resolver_1 = require_dist_cjs43();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var httpAuthExtensionConfiguration_1 = require_httpAuthExtensionConfiguration();
+    var asPartial = (t) => t;
+    var resolveRuntimeExtensions = (runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...(0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration)
+      };
+    };
+    exports2.resolveRuntimeExtensions = resolveRuntimeExtensions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js
+var require_STSClient = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.STSClient = exports2.__Client = void 0;
+    var middleware_host_header_1 = require_dist_cjs3();
+    var middleware_logger_1 = require_dist_cjs4();
+    var middleware_recursion_detection_1 = require_dist_cjs5();
+    var middleware_user_agent_1 = require_dist_cjs8();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_1 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var middleware_content_length_1 = require_dist_cjs23();
+    var middleware_endpoint_1 = require_dist_cjs29();
+    var middleware_retry_1 = require_dist_cjs34();
+    var smithy_client_1 = require_dist_cjs33();
+    Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() {
+      return smithy_client_1.Client;
+    } });
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var EndpointParameters_1 = require_EndpointParameters();
+    var runtimeConfig_1 = require_runtimeConfig3();
+    var runtimeExtensions_1 = require_runtimeExtensions();
+    var STSClient2 = class extends smithy_client_1.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {});
+        const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0);
+        const _config_2 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, middleware_retry_1.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, config_resolver_1.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, httpAuthSchemeProvider_1.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_7, configuration?.extensions || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use((0, core_1.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+          httpAuthSchemeParametersProvider: httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeParametersProvider,
+          identityProviderConfigProvider: async (config) => new core_1.DefaultIdentityProviderConfig({
+            "aws.auth#sigv4": config.credentials
+          })
+        }));
+        this.middlewareStack.use((0, core_1.getHttpSigningPlugin)(this.config));
+      }
+      destroy() {
+        super.destroy();
+      }
+    };
+    exports2.STSClient = STSClient2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js
+var require_dist_cjs48 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AssumeRoleCommand: () => AssumeRoleCommand,
+      AssumeRoleResponseFilterSensitiveLog: () => AssumeRoleResponseFilterSensitiveLog,
+      AssumeRoleWithSAMLCommand: () => AssumeRoleWithSAMLCommand,
+      AssumeRoleWithSAMLRequestFilterSensitiveLog: () => AssumeRoleWithSAMLRequestFilterSensitiveLog,
+      AssumeRoleWithSAMLResponseFilterSensitiveLog: () => AssumeRoleWithSAMLResponseFilterSensitiveLog,
+      AssumeRoleWithWebIdentityCommand: () => AssumeRoleWithWebIdentityCommand,
+      AssumeRoleWithWebIdentityRequestFilterSensitiveLog: () => AssumeRoleWithWebIdentityRequestFilterSensitiveLog,
+      AssumeRoleWithWebIdentityResponseFilterSensitiveLog: () => AssumeRoleWithWebIdentityResponseFilterSensitiveLog,
+      ClientInputEndpointParameters: () => import_EndpointParameters9.ClientInputEndpointParameters,
+      CredentialsFilterSensitiveLog: () => CredentialsFilterSensitiveLog,
+      DecodeAuthorizationMessageCommand: () => DecodeAuthorizationMessageCommand,
+      ExpiredTokenException: () => ExpiredTokenException,
+      GetAccessKeyInfoCommand: () => GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand: () => GetCallerIdentityCommand,
+      GetFederationTokenCommand: () => GetFederationTokenCommand,
+      GetFederationTokenResponseFilterSensitiveLog: () => GetFederationTokenResponseFilterSensitiveLog,
+      GetSessionTokenCommand: () => GetSessionTokenCommand,
+      GetSessionTokenResponseFilterSensitiveLog: () => GetSessionTokenResponseFilterSensitiveLog,
+      IDPCommunicationErrorException: () => IDPCommunicationErrorException,
+      IDPRejectedClaimException: () => IDPRejectedClaimException,
+      InvalidAuthorizationMessageException: () => InvalidAuthorizationMessageException,
+      InvalidIdentityTokenException: () => InvalidIdentityTokenException,
+      MalformedPolicyDocumentException: () => MalformedPolicyDocumentException,
+      PackedPolicyTooLargeException: () => PackedPolicyTooLargeException,
+      RegionDisabledException: () => RegionDisabledException,
+      STS: () => STS,
+      STSServiceException: () => STSServiceException,
+      decorateDefaultCredentialProvider: () => decorateDefaultCredentialProvider,
+      getDefaultRoleAssumer: () => getDefaultRoleAssumer2,
+      getDefaultRoleAssumerWithWebIdentity: () => getDefaultRoleAssumerWithWebIdentity2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_STSClient(), module2.exports);
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_EndpointParameters = require_EndpointParameters();
+    var import_smithy_client4 = require_dist_cjs33();
+    var _STSServiceException = class _STSServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _STSServiceException2.prototype);
+      }
+    };
+    __name2(_STSServiceException, "STSServiceException");
+    var STSServiceException = _STSServiceException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _MalformedPolicyDocumentException = class _MalformedPolicyDocumentException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MalformedPolicyDocumentException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MalformedPolicyDocumentException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MalformedPolicyDocumentException2.prototype);
+      }
+    };
+    __name2(_MalformedPolicyDocumentException, "MalformedPolicyDocumentException");
+    var MalformedPolicyDocumentException = _MalformedPolicyDocumentException;
+    var _PackedPolicyTooLargeException = class _PackedPolicyTooLargeException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "PackedPolicyTooLargeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "PackedPolicyTooLargeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _PackedPolicyTooLargeException2.prototype);
+      }
+    };
+    __name2(_PackedPolicyTooLargeException, "PackedPolicyTooLargeException");
+    var PackedPolicyTooLargeException = _PackedPolicyTooLargeException;
+    var _RegionDisabledException = class _RegionDisabledException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "RegionDisabledException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "RegionDisabledException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _RegionDisabledException2.prototype);
+      }
+    };
+    __name2(_RegionDisabledException, "RegionDisabledException");
+    var RegionDisabledException = _RegionDisabledException;
+    var _IDPRejectedClaimException = class _IDPRejectedClaimException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPRejectedClaimException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPRejectedClaimException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPRejectedClaimException2.prototype);
+      }
+    };
+    __name2(_IDPRejectedClaimException, "IDPRejectedClaimException");
+    var IDPRejectedClaimException = _IDPRejectedClaimException;
+    var _InvalidIdentityTokenException = class _InvalidIdentityTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidIdentityTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidIdentityTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidIdentityTokenException2.prototype);
+      }
+    };
+    __name2(_InvalidIdentityTokenException, "InvalidIdentityTokenException");
+    var InvalidIdentityTokenException = _InvalidIdentityTokenException;
+    var _IDPCommunicationErrorException = class _IDPCommunicationErrorException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPCommunicationErrorException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPCommunicationErrorException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPCommunicationErrorException2.prototype);
+      }
+    };
+    __name2(_IDPCommunicationErrorException, "IDPCommunicationErrorException");
+    var IDPCommunicationErrorException = _IDPCommunicationErrorException;
+    var _InvalidAuthorizationMessageException = class _InvalidAuthorizationMessageException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidAuthorizationMessageException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidAuthorizationMessageException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidAuthorizationMessageException2.prototype);
+      }
+    };
+    __name2(_InvalidAuthorizationMessageException, "InvalidAuthorizationMessageException");
+    var InvalidAuthorizationMessageException = _InvalidAuthorizationMessageException;
+    var CredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SecretAccessKey && { SecretAccessKey: import_smithy_client4.SENSITIVE_STRING }
+    }), "CredentialsFilterSensitiveLog");
+    var AssumeRoleResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleResponseFilterSensitiveLog");
+    var AssumeRoleWithSAMLRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SAMLAssertion && { SAMLAssertion: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithSAMLRequestFilterSensitiveLog");
+    var AssumeRoleWithSAMLResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithSAMLResponseFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.WebIdentityToken && { WebIdentityToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithWebIdentityRequestFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithWebIdentityResponseFilterSensitiveLog");
+    var GetFederationTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetFederationTokenResponseFilterSensitiveLog");
+    var GetSessionTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetSessionTokenResponseFilterSensitiveLog");
+    var import_core4 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_protocol_http8 = require_dist_cjs2();
+    var se_AssumeRoleCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleRequest(input, context),
+        [_A]: _AR,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleCommand");
+    var se_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithSAMLRequest(input, context),
+        [_A]: _ARWSAML,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithSAMLCommand");
+    var se_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithWebIdentityRequest(input, context),
+        [_A]: _ARWWI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithWebIdentityCommand");
+    var se_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_DecodeAuthorizationMessageRequest(input, context),
+        [_A]: _DAM,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DecodeAuthorizationMessageCommand");
+    var se_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetAccessKeyInfoRequest(input, context),
+        [_A]: _GAKI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetAccessKeyInfoCommand");
+    var se_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetCallerIdentityRequest(input, context),
+        [_A]: _GCI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetCallerIdentityCommand");
+    var se_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetFederationTokenRequest(input, context),
+        [_A]: _GFT,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetFederationTokenCommand");
+    var se_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetSessionTokenRequest(input, context),
+        [_A]: _GST,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetSessionTokenCommand");
+    var de_AssumeRoleCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleResponse(data.AssumeRoleResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleCommand");
+    var de_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithSAMLCommand");
+    var de_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithWebIdentityCommand");
+    var de_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_DecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DecodeAuthorizationMessageCommand");
+    var de_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetAccessKeyInfoCommand");
+    var de_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetCallerIdentityResponse(data.GetCallerIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetCallerIdentityCommand");
+    var de_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetFederationTokenResponse(data.GetFederationTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetFederationTokenCommand");
+    var de_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetSessionTokenResponse(data.GetSessionTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetSessionTokenCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core4.parseXmlErrorBody)(output.body, context)
+      };
+      const errorCode = loadQueryErrorCode(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ExpiredTokenException":
+        case "com.amazonaws.sts#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "MalformedPolicyDocument":
+        case "com.amazonaws.sts#MalformedPolicyDocumentException":
+          throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context);
+        case "PackedPolicyTooLarge":
+        case "com.amazonaws.sts#PackedPolicyTooLargeException":
+          throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context);
+        case "RegionDisabledException":
+        case "com.amazonaws.sts#RegionDisabledException":
+          throw await de_RegionDisabledExceptionRes(parsedOutput, context);
+        case "IDPRejectedClaim":
+        case "com.amazonaws.sts#IDPRejectedClaimException":
+          throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context);
+        case "InvalidIdentityToken":
+        case "com.amazonaws.sts#InvalidIdentityTokenException":
+          throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context);
+        case "IDPCommunicationError":
+        case "com.amazonaws.sts#IDPCommunicationErrorException":
+          throw await de_IDPCommunicationErrorExceptionRes(parsedOutput, context);
+        case "InvalidAuthorizationMessageException":
+        case "com.amazonaws.sts#InvalidAuthorizationMessageException":
+          throw await de_InvalidAuthorizationMessageExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody: parsedBody.Error,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_ExpiredTokenException(body.Error, context);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_IDPCommunicationErrorExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPCommunicationErrorException(body.Error, context);
+      const exception = new IDPCommunicationErrorException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPCommunicationErrorExceptionRes");
+    var de_IDPRejectedClaimExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPRejectedClaimException(body.Error, context);
+      const exception = new IDPRejectedClaimException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPRejectedClaimExceptionRes");
+    var de_InvalidAuthorizationMessageExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidAuthorizationMessageException(body.Error, context);
+      const exception = new InvalidAuthorizationMessageException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidAuthorizationMessageExceptionRes");
+    var de_InvalidIdentityTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidIdentityTokenException(body.Error, context);
+      const exception = new InvalidIdentityTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidIdentityTokenExceptionRes");
+    var de_MalformedPolicyDocumentExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_MalformedPolicyDocumentException(body.Error, context);
+      const exception = new MalformedPolicyDocumentException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MalformedPolicyDocumentExceptionRes");
+    var de_PackedPolicyTooLargeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_PackedPolicyTooLargeException(body.Error, context);
+      const exception = new PackedPolicyTooLargeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_PackedPolicyTooLargeExceptionRes");
+    var de_RegionDisabledExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_RegionDisabledException(body.Error, context);
+      const exception = new RegionDisabledException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_RegionDisabledExceptionRes");
+    var se_AssumeRoleRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b, _c, _d;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_TTK] != null) {
+        const memberEntries = se_tagKeyListType(input[_TTK], context);
+        if (((_c = input[_TTK]) == null ? void 0 : _c.length) === 0) {
+          entries.TransitiveTagKeys = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `TransitiveTagKeys.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_EI] != null) {
+        entries[_EI] = input[_EI];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      if (input[_SI] != null) {
+        entries[_SI] = input[_SI];
+      }
+      if (input[_PC] != null) {
+        const memberEntries = se_ProvidedContextsListType(input[_PC], context);
+        if (((_d = input[_PC]) == null ? void 0 : _d.length) === 0) {
+          entries.ProvidedContexts = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `ProvidedContexts.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_AssumeRoleRequest");
+    var se_AssumeRoleWithSAMLRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_PAr] != null) {
+        entries[_PAr] = input[_PAr];
+      }
+      if (input[_SAMLA] != null) {
+        entries[_SAMLA] = input[_SAMLA];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithSAMLRequest");
+    var se_AssumeRoleWithWebIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_WIT] != null) {
+        entries[_WIT] = input[_WIT];
+      }
+      if (input[_PI] != null) {
+        entries[_PI] = input[_PI];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithWebIdentityRequest");
+    var se_DecodeAuthorizationMessageRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_EM] != null) {
+        entries[_EM] = input[_EM];
+      }
+      return entries;
+    }, "se_DecodeAuthorizationMessageRequest");
+    var se_GetAccessKeyInfoRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_AKI] != null) {
+        entries[_AKI] = input[_AKI];
+      }
+      return entries;
+    }, "se_GetAccessKeyInfoRequest");
+    var se_GetCallerIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      return entries;
+    }, "se_GetCallerIdentityRequest");
+    var se_GetFederationTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b;
+      const entries = {};
+      if (input[_N] != null) {
+        entries[_N] = input[_N];
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_GetFederationTokenRequest");
+    var se_GetSessionTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      return entries;
+    }, "se_GetSessionTokenRequest");
+    var se_policyDescriptorListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_PolicyDescriptorType(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_policyDescriptorListType");
+    var se_PolicyDescriptorType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_a7] != null) {
+        entries[_a7] = input[_a7];
+      }
+      return entries;
+    }, "se_PolicyDescriptorType");
+    var se_ProvidedContext = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_PAro] != null) {
+        entries[_PAro] = input[_PAro];
+      }
+      if (input[_CA] != null) {
+        entries[_CA] = input[_CA];
+      }
+      return entries;
+    }, "se_ProvidedContext");
+    var se_ProvidedContextsListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_ProvidedContext(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_ProvidedContextsListType");
+    var se_Tag = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_K] != null) {
+        entries[_K] = input[_K];
+      }
+      if (input[_Va] != null) {
+        entries[_Va] = input[_Va];
+      }
+      return entries;
+    }, "se_Tag");
+    var se_tagKeyListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        entries[`member.${counter}`] = entry;
+        counter++;
+      }
+      return entries;
+    }, "se_tagKeyListType");
+    var se_tagListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_Tag(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_tagListType");
+    var de_AssumedRoleUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_ARI] != null) {
+        contents[_ARI] = (0, import_smithy_client4.expectString)(output[_ARI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_AssumedRoleUser");
+    var de_AssumeRoleResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleResponse");
+    var de_AssumeRoleWithSAMLResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_S] != null) {
+        contents[_S] = (0, import_smithy_client4.expectString)(output[_S]);
+      }
+      if (output[_ST] != null) {
+        contents[_ST] = (0, import_smithy_client4.expectString)(output[_ST]);
+      }
+      if (output[_I] != null) {
+        contents[_I] = (0, import_smithy_client4.expectString)(output[_I]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_NQ] != null) {
+        contents[_NQ] = (0, import_smithy_client4.expectString)(output[_NQ]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithSAMLResponse");
+    var de_AssumeRoleWithWebIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_SFWIT] != null) {
+        contents[_SFWIT] = (0, import_smithy_client4.expectString)(output[_SFWIT]);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_Pr] != null) {
+        contents[_Pr] = (0, import_smithy_client4.expectString)(output[_Pr]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithWebIdentityResponse");
+    var de_Credentials = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_AKI] != null) {
+        contents[_AKI] = (0, import_smithy_client4.expectString)(output[_AKI]);
+      }
+      if (output[_SAK] != null) {
+        contents[_SAK] = (0, import_smithy_client4.expectString)(output[_SAK]);
+      }
+      if (output[_STe] != null) {
+        contents[_STe] = (0, import_smithy_client4.expectString)(output[_STe]);
+      }
+      if (output[_E] != null) {
+        contents[_E] = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseRfc3339DateTimeWithOffset)(output[_E]));
+      }
+      return contents;
+    }, "de_Credentials");
+    var de_DecodeAuthorizationMessageResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_DM] != null) {
+        contents[_DM] = (0, import_smithy_client4.expectString)(output[_DM]);
+      }
+      return contents;
+    }, "de_DecodeAuthorizationMessageResponse");
+    var de_ExpiredTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_ExpiredTokenException");
+    var de_FederatedUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_FUI] != null) {
+        contents[_FUI] = (0, import_smithy_client4.expectString)(output[_FUI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_FederatedUser");
+    var de_GetAccessKeyInfoResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      return contents;
+    }, "de_GetAccessKeyInfoResponse");
+    var de_GetCallerIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_UI] != null) {
+        contents[_UI] = (0, import_smithy_client4.expectString)(output[_UI]);
+      }
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_GetCallerIdentityResponse");
+    var de_GetFederationTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_FU] != null) {
+        contents[_FU] = de_FederatedUser(output[_FU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      return contents;
+    }, "de_GetFederationTokenResponse");
+    var de_GetSessionTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      return contents;
+    }, "de_GetSessionTokenResponse");
+    var de_IDPCommunicationErrorException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPCommunicationErrorException");
+    var de_IDPRejectedClaimException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPRejectedClaimException");
+    var de_InvalidAuthorizationMessageException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidAuthorizationMessageException");
+    var de_InvalidIdentityTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidIdentityTokenException");
+    var de_MalformedPolicyDocumentException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_MalformedPolicyDocumentException");
+    var de_PackedPolicyTooLargeException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_PackedPolicyTooLargeException");
+    var de_RegionDisabledException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_RegionDisabledException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(STSServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    var SHARED_HEADERS = {
+      "content-type": "application/x-www-form-urlencoded"
+    };
+    var _ = "2011-06-15";
+    var _A = "Action";
+    var _AKI = "AccessKeyId";
+    var _AR = "AssumeRole";
+    var _ARI = "AssumedRoleId";
+    var _ARU = "AssumedRoleUser";
+    var _ARWSAML = "AssumeRoleWithSAML";
+    var _ARWWI = "AssumeRoleWithWebIdentity";
+    var _Ac = "Account";
+    var _Ar = "Arn";
+    var _Au = "Audience";
+    var _C = "Credentials";
+    var _CA = "ContextAssertion";
+    var _DAM = "DecodeAuthorizationMessage";
+    var _DM = "DecodedMessage";
+    var _DS = "DurationSeconds";
+    var _E = "Expiration";
+    var _EI = "ExternalId";
+    var _EM = "EncodedMessage";
+    var _FU = "FederatedUser";
+    var _FUI = "FederatedUserId";
+    var _GAKI = "GetAccessKeyInfo";
+    var _GCI = "GetCallerIdentity";
+    var _GFT = "GetFederationToken";
+    var _GST = "GetSessionToken";
+    var _I = "Issuer";
+    var _K = "Key";
+    var _N = "Name";
+    var _NQ = "NameQualifier";
+    var _P = "Policy";
+    var _PA = "PolicyArns";
+    var _PAr = "PrincipalArn";
+    var _PAro = "ProviderArn";
+    var _PC = "ProvidedContexts";
+    var _PI = "ProviderId";
+    var _PPS = "PackedPolicySize";
+    var _Pr = "Provider";
+    var _RA = "RoleArn";
+    var _RSN = "RoleSessionName";
+    var _S = "Subject";
+    var _SAK = "SecretAccessKey";
+    var _SAMLA = "SAMLAssertion";
+    var _SFWIT = "SubjectFromWebIdentityToken";
+    var _SI = "SourceIdentity";
+    var _SN = "SerialNumber";
+    var _ST = "SubjectType";
+    var _STe = "SessionToken";
+    var _T = "Tags";
+    var _TC = "TokenCode";
+    var _TTK = "TransitiveTagKeys";
+    var _UI = "UserId";
+    var _V = "Version";
+    var _Va = "Value";
+    var _WIT = "WebIdentityToken";
+    var _a7 = "arn";
+    var _m = "message";
+    var buildFormUrlencodedString = /* @__PURE__ */ __name2((formEntries) => Object.entries(formEntries).map(([key, value]) => (0, import_smithy_client4.extendedEncodeURIComponent)(key) + "=" + (0, import_smithy_client4.extendedEncodeURIComponent)(value)).join("&"), "buildFormUrlencodedString");
+    var loadQueryErrorCode = /* @__PURE__ */ __name2((output, data) => {
+      var _a22;
+      if (((_a22 = data.Error) == null ? void 0 : _a22.Code) !== void 0) {
+        return data.Error.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    }, "loadQueryErrorCode");
+    var _AssumeRoleCommand = class _AssumeRoleCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRole", {}).n("STSClient", "AssumeRoleCommand").f(void 0, AssumeRoleResponseFilterSensitiveLog).ser(se_AssumeRoleCommand).de(de_AssumeRoleCommand).build() {
+    };
+    __name2(_AssumeRoleCommand, "AssumeRoleCommand");
+    var AssumeRoleCommand = _AssumeRoleCommand;
+    var import_EndpointParameters2 = require_EndpointParameters();
+    var _AssumeRoleWithSAMLCommand = class _AssumeRoleWithSAMLCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters2.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithSAML", {}).n("STSClient", "AssumeRoleWithSAMLCommand").f(AssumeRoleWithSAMLRequestFilterSensitiveLog, AssumeRoleWithSAMLResponseFilterSensitiveLog).ser(se_AssumeRoleWithSAMLCommand).de(de_AssumeRoleWithSAMLCommand).build() {
+    };
+    __name2(_AssumeRoleWithSAMLCommand, "AssumeRoleWithSAMLCommand");
+    var AssumeRoleWithSAMLCommand = _AssumeRoleWithSAMLCommand;
+    var import_EndpointParameters3 = require_EndpointParameters();
+    var _AssumeRoleWithWebIdentityCommand = class _AssumeRoleWithWebIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters3.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithWebIdentity", {}).n("STSClient", "AssumeRoleWithWebIdentityCommand").f(AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog).ser(se_AssumeRoleWithWebIdentityCommand).de(de_AssumeRoleWithWebIdentityCommand).build() {
+    };
+    __name2(_AssumeRoleWithWebIdentityCommand, "AssumeRoleWithWebIdentityCommand");
+    var AssumeRoleWithWebIdentityCommand = _AssumeRoleWithWebIdentityCommand;
+    var import_EndpointParameters4 = require_EndpointParameters();
+    var _DecodeAuthorizationMessageCommand = class _DecodeAuthorizationMessageCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters4.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "DecodeAuthorizationMessage", {}).n("STSClient", "DecodeAuthorizationMessageCommand").f(void 0, void 0).ser(se_DecodeAuthorizationMessageCommand).de(de_DecodeAuthorizationMessageCommand).build() {
+    };
+    __name2(_DecodeAuthorizationMessageCommand, "DecodeAuthorizationMessageCommand");
+    var DecodeAuthorizationMessageCommand = _DecodeAuthorizationMessageCommand;
+    var import_EndpointParameters5 = require_EndpointParameters();
+    var _GetAccessKeyInfoCommand = class _GetAccessKeyInfoCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters5.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetAccessKeyInfo", {}).n("STSClient", "GetAccessKeyInfoCommand").f(void 0, void 0).ser(se_GetAccessKeyInfoCommand).de(de_GetAccessKeyInfoCommand).build() {
+    };
+    __name2(_GetAccessKeyInfoCommand, "GetAccessKeyInfoCommand");
+    var GetAccessKeyInfoCommand = _GetAccessKeyInfoCommand;
+    var import_EndpointParameters6 = require_EndpointParameters();
+    var _GetCallerIdentityCommand = class _GetCallerIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters6.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetCallerIdentity", {}).n("STSClient", "GetCallerIdentityCommand").f(void 0, void 0).ser(se_GetCallerIdentityCommand).de(de_GetCallerIdentityCommand).build() {
+    };
+    __name2(_GetCallerIdentityCommand, "GetCallerIdentityCommand");
+    var GetCallerIdentityCommand = _GetCallerIdentityCommand;
+    var import_EndpointParameters7 = require_EndpointParameters();
+    var _GetFederationTokenCommand = class _GetFederationTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters7.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetFederationToken", {}).n("STSClient", "GetFederationTokenCommand").f(void 0, GetFederationTokenResponseFilterSensitiveLog).ser(se_GetFederationTokenCommand).de(de_GetFederationTokenCommand).build() {
+    };
+    __name2(_GetFederationTokenCommand, "GetFederationTokenCommand");
+    var GetFederationTokenCommand = _GetFederationTokenCommand;
+    var import_EndpointParameters8 = require_EndpointParameters();
+    var _GetSessionTokenCommand = class _GetSessionTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters8.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetSessionToken", {}).n("STSClient", "GetSessionTokenCommand").f(void 0, GetSessionTokenResponseFilterSensitiveLog).ser(se_GetSessionTokenCommand).de(de_GetSessionTokenCommand).build() {
+    };
+    __name2(_GetSessionTokenCommand, "GetSessionTokenCommand");
+    var GetSessionTokenCommand = _GetSessionTokenCommand;
+    var import_STSClient = require_STSClient();
+    var commands = {
+      AssumeRoleCommand,
+      AssumeRoleWithSAMLCommand,
+      AssumeRoleWithWebIdentityCommand,
+      DecodeAuthorizationMessageCommand,
+      GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand,
+      GetFederationTokenCommand,
+      GetSessionTokenCommand
+    };
+    var _STS = class _STS extends import_STSClient.STSClient {
+    };
+    __name2(_STS, "STS");
+    var STS = _STS;
+    (0, import_smithy_client4.createAggregatedClient)(commands, STS);
+    var import_EndpointParameters9 = require_EndpointParameters();
+    var ASSUME_ROLE_DEFAULT_REGION = "us-east-1";
+    var getAccountIdFromAssumedRoleUser = /* @__PURE__ */ __name2((assumedRoleUser) => {
+      if (typeof (assumedRoleUser == null ? void 0 : assumedRoleUser.Arn) === "string") {
+        const arnComponents = assumedRoleUser.Arn.split(":");
+        if (arnComponents.length > 4 && arnComponents[4] !== "") {
+          return arnComponents[4];
+        }
+      }
+      return void 0;
+    }, "getAccountIdFromAssumedRoleUser");
+    var resolveRegion = /* @__PURE__ */ __name2(async (_region, _parentRegion, credentialProviderLogger) => {
+      var _a22;
+      const region = typeof _region === "function" ? await _region() : _region;
+      const parentRegion = typeof _parentRegion === "function" ? await _parentRegion() : _parentRegion;
+      (_a22 = credentialProviderLogger == null ? void 0 : credentialProviderLogger.debug) == null ? void 0 : _a22.call(
+        credentialProviderLogger,
+        "@aws-sdk/client-sts::resolveRegion",
+        "accepting first of:",
+        `${region} (provider)`,
+        `${parentRegion} (parent client)`,
+        `${ASSUME_ROLE_DEFAULT_REGION} (STS default)`
+      );
+      return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION;
+    }, "resolveRegion");
+    var getDefaultRoleAssumer = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      let closureSourceCreds;
+      return async (sourceCreds, params) => {
+        var _a22, _b, _c;
+        closureSourceCreds = sourceCreds;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            // A hack to make sts client uses the credential in current closure.
+            credentialDefaultProvider: () => async () => closureSourceCreds,
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      return async (params) => {
+        var _a22, _b, _c;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleWithWebIdentityCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumerWithWebIdentity");
+    var isH2 = /* @__PURE__ */ __name2((requestHandler) => {
+      var _a22;
+      return ((_a22 = requestHandler == null ? void 0 : requestHandler.metadata) == null ? void 0 : _a22.handlerProtocol) === "h2";
+    }, "isH2");
+    var import_STSClient2 = require_STSClient();
+    var getCustomizableStsClientCtor = /* @__PURE__ */ __name2((baseCtor, customizations) => {
+      var _a22;
+      if (!customizations)
+        return baseCtor;
+      else
+        return _a22 = class extends baseCtor {
+          constructor(config) {
+            super(config);
+            for (const customization of customizations) {
+              this.middlewareStack.use(customization);
+            }
+          }
+        }, __name2(_a22, "CustomizableSTSClient"), _a22;
+    }, "getCustomizableStsClientCtor");
+    var getDefaultRoleAssumer2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumer(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumerWithWebIdentity(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumerWithWebIdentity");
+    var decorateDefaultCredentialProvider = /* @__PURE__ */ __name2((provider) => (input) => provider({
+      roleAssumer: getDefaultRoleAssumer2(input),
+      roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity2(input),
+      ...input
+    }), "decorateDefaultCredentialProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js
+var require_dist_cjs49 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromProcess: () => fromProcess
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_child_process3 = require("child_process");
+    var import_util7 = require("util");
+    var getValidatedProcessCredentials = /* @__PURE__ */ __name2((profileName, data, profiles) => {
+      var _a7;
+      if (data.Version !== 1) {
+        throw Error(`Profile ${profileName} credential_process did not return Version 1.`);
+      }
+      if (data.AccessKeyId === void 0 || data.SecretAccessKey === void 0) {
+        throw Error(`Profile ${profileName} credential_process returned invalid credentials.`);
+      }
+      if (data.Expiration) {
+        const currentTime = /* @__PURE__ */ new Date();
+        const expireTime = new Date(data.Expiration);
+        if (expireTime < currentTime) {
+          throw Error(`Profile ${profileName} credential_process returned expired credentials.`);
+        }
+      }
+      let accountId = data.AccountId;
+      if (!accountId && ((_a7 = profiles == null ? void 0 : profiles[profileName]) == null ? void 0 : _a7.aws_account_id)) {
+        accountId = profiles[profileName].aws_account_id;
+      }
+      return {
+        accessKeyId: data.AccessKeyId,
+        secretAccessKey: data.SecretAccessKey,
+        ...data.SessionToken && { sessionToken: data.SessionToken },
+        ...data.Expiration && { expiration: new Date(data.Expiration) },
+        ...data.CredentialScope && { credentialScope: data.CredentialScope },
+        ...accountId && { accountId }
+      };
+    }, "getValidatedProcessCredentials");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, logger) => {
+      const profile = profiles[profileName];
+      if (profiles[profileName]) {
+        const credentialProcess = profile["credential_process"];
+        if (credentialProcess !== void 0) {
+          const execPromise = (0, import_util7.promisify)(import_child_process3.exec);
+          try {
+            const { stdout } = await execPromise(credentialProcess);
+            let data;
+            try {
+              data = JSON.parse(stdout.trim());
+            } catch {
+              throw Error(`Profile ${profileName} credential_process returned invalid JSON.`);
+            }
+            return getValidatedProcessCredentials(profileName, data, profiles);
+          } catch (error) {
+            throw new import_property_provider2.CredentialsProviderError(error.message, { logger });
+          }
+        } else {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} did not contain credential_process.`, { logger });
+        }
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} could not be found in shared credentials file.`, {
+          logger
+        });
+      }
+    }, "resolveProcessCredentials");
+    var fromProcess = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-process - fromProcess");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProcessCredentials((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init.logger);
+    }, "fromProcess");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js
+var require_fromWebToken = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    });
+    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
+      if (mod && mod.__esModule) return mod;
+      var result = {};
+      if (mod != null) {
+        for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k);
+      }
+      __setModuleDefault2(result, mod);
+      return result;
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromWebToken = void 0;
+    var fromWebToken2 = (init) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromWebToken");
+      const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds } = init;
+      let { roleAssumerWithWebIdentity } = init;
+      if (!roleAssumerWithWebIdentity) {
+        const { getDefaultRoleAssumerWithWebIdentity } = await Promise.resolve().then(() => __importStar2(require_dist_cjs48()));
+        roleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity({
+          ...init.clientConfig,
+          credentialProviderLogger: init.logger,
+          parentClientConfig: init.parentClientConfig
+        }, init.clientPlugins);
+      }
+      return roleAssumerWithWebIdentity({
+        RoleArn: roleArn,
+        RoleSessionName: roleSessionName ?? `aws-sdk-js-session-${Date.now()}`,
+        WebIdentityToken: webIdentityToken,
+        ProviderId: providerId,
+        PolicyArns: policyArns,
+        Policy: policy,
+        DurationSeconds: durationSeconds
+      });
+    };
+    exports2.fromWebToken = fromWebToken2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js
+var require_fromTokenFile = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromTokenFile = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var fs_1 = require("fs");
+    var fromWebToken_1 = require_fromWebToken();
+    var ENV_TOKEN_FILE = "AWS_WEB_IDENTITY_TOKEN_FILE";
+    var ENV_ROLE_ARN = "AWS_ROLE_ARN";
+    var ENV_ROLE_SESSION_NAME = "AWS_ROLE_SESSION_NAME";
+    var fromTokenFile2 = (init = {}) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromTokenFile");
+      const webIdentityTokenFile = init?.webIdentityTokenFile ?? process.env[ENV_TOKEN_FILE];
+      const roleArn = init?.roleArn ?? process.env[ENV_ROLE_ARN];
+      const roleSessionName = init?.roleSessionName ?? process.env[ENV_ROLE_SESSION_NAME];
+      if (!webIdentityTokenFile || !roleArn) {
+        throw new property_provider_1.CredentialsProviderError("Web identity configuration not specified", {
+          logger: init.logger
+        });
+      }
+      return (0, fromWebToken_1.fromWebToken)({
+        ...init,
+        webIdentityToken: (0, fs_1.readFileSync)(webIdentityTokenFile, { encoding: "ascii" }),
+        roleArn,
+        roleSessionName
+      })();
+    };
+    exports2.fromTokenFile = fromTokenFile2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js
+var require_dist_cjs50 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromTokenFile(), module2.exports);
+    __reExport2(src_exports, require_fromWebToken(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js
+var require_dist_cjs51 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromIni: () => fromIni
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var resolveCredentialSource = /* @__PURE__ */ __name2((credentialSource, profileName, logger) => {
+      const sourceProvidersMap = {
+        EcsContainer: async (options) => {
+          const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+          const { fromContainerMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer");
+          return (0, import_property_provider2.chain)(fromHttp(options ?? {}), fromContainerMetadata(options));
+        },
+        Ec2InstanceMetadata: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata");
+          const { fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          return fromInstanceMetadata(options);
+        },
+        Environment: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Environment");
+          const { fromEnv } = await Promise.resolve().then(() => __toESM2(require_dist_cjs36()));
+          return fromEnv(options);
+        }
+      };
+      if (credentialSource in sourceProvidersMap) {
+        return sourceProvidersMap[credentialSource];
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Unsupported credential source in profile ${profileName}. Got ${credentialSource}, expected EcsContainer or Ec2InstanceMetadata or Environment.`,
+          { logger }
+        );
+      }
+    }, "resolveCredentialSource");
+    var isAssumeRoleProfile = /* @__PURE__ */ __name2((arg, { profile = "default", logger } = {}) => {
+      return Boolean(arg) && typeof arg === "object" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 && ["undefined", "string"].indexOf(typeof arg.external_id) > -1 && ["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 && (isAssumeRoleWithSourceProfile(arg, { profile, logger }) || isCredentialSourceProfile(arg, { profile, logger }));
+    }, "isAssumeRoleProfile");
+    var isAssumeRoleWithSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withSourceProfile = typeof arg.source_profile === "string" && typeof arg.credential_source === "undefined";
+      if (withSourceProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isAssumeRoleWithSourceProfile source_profile=${arg.source_profile}`);
+      }
+      return withSourceProfile;
+    }, "isAssumeRoleWithSourceProfile");
+    var isCredentialSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withProviderProfile = typeof arg.credential_source === "string" && typeof arg.source_profile === "undefined";
+      if (withProviderProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isCredentialSourceProfile credential_source=${arg.credential_source}`);
+      }
+      return withProviderProfile;
+    }, "isCredentialSourceProfile");
+    var resolveAssumeRoleCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      var _a7, _b;
+      (_a7 = options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)");
+      const data = profiles[profileName];
+      if (!options.roleAssumer) {
+        const { getDefaultRoleAssumer } = await Promise.resolve().then(() => __toESM2(require_dist_cjs48()));
+        options.roleAssumer = getDefaultRoleAssumer(
+          {
+            ...options.clientConfig,
+            credentialProviderLogger: options.logger,
+            parentClientConfig: options == null ? void 0 : options.parentClientConfig
+          },
+          options.clientPlugins
+        );
+      }
+      const { source_profile } = data;
+      if (source_profile && source_profile in visitedProfiles) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Detected a cycle attempting to resolve credentials for profile ${(0, import_shared_ini_file_loader.getProfileName)(options)}. Profiles visited: ` + Object.keys(visitedProfiles).join(", "),
+          { logger: options.logger }
+        );
+      }
+      (_b = options.logger) == null ? void 0 : _b.debug(
+        `@aws-sdk/credential-provider-ini - finding credential resolver using ${source_profile ? `source_profile=[${source_profile}]` : `profile=[${profileName}]`}`
+      );
+      const sourceCredsProvider = source_profile ? resolveProfileData(
+        source_profile,
+        {
+          ...profiles,
+          [source_profile]: {
+            ...profiles[source_profile],
+            // This assigns the role_arn of the "root" profile
+            // to the credential_source profile so this recursive call knows
+            // what role to assume.
+            role_arn: data.role_arn ?? profiles[source_profile].role_arn
+          }
+        },
+        options,
+        {
+          ...visitedProfiles,
+          [source_profile]: true
+        }
+      ) : (await resolveCredentialSource(data.credential_source, profileName, options.logger)(options))();
+      const params = {
+        RoleArn: data.role_arn,
+        RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`,
+        ExternalId: data.external_id,
+        DurationSeconds: parseInt(data.duration_seconds || "3600", 10)
+      };
+      const { mfa_serial } = data;
+      if (mfa_serial) {
+        if (!options.mfaCodeProvider) {
+          throw new import_property_provider2.CredentialsProviderError(
+            `Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`,
+            { logger: options.logger, tryNextLink: false }
+          );
+        }
+        params.SerialNumber = mfa_serial;
+        params.TokenCode = await options.mfaCodeProvider(mfa_serial);
+      }
+      const sourceCreds = await sourceCredsProvider;
+      return options.roleAssumer(sourceCreds, params);
+    }, "resolveAssumeRoleCredentials");
+    var isProcessProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string", "isProcessProfile");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (options, profile) => Promise.resolve().then(() => __toESM2(require_dist_cjs49())).then(
+      ({ fromProcess }) => fromProcess({
+        ...options,
+        profile
+      })()
+    ), "resolveProcessCredentials");
+    var resolveSsoCredentials = /* @__PURE__ */ __name2(async (profile, options = {}) => {
+      const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+      return fromSSO({
+        profile,
+        logger: options.logger
+      })();
+    }, "resolveSsoCredentials");
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var isStaticCredsProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.aws_access_key_id === "string" && typeof arg.aws_secret_access_key === "string" && ["undefined", "string"].indexOf(typeof arg.aws_session_token) > -1 && ["undefined", "string"].indexOf(typeof arg.aws_account_id) > -1, "isStaticCredsProfile");
+    var resolveStaticCredentials = /* @__PURE__ */ __name2((profile, options) => {
+      var _a7;
+      (_a7 = options == null ? void 0 : options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveStaticCredentials");
+      return Promise.resolve({
+        accessKeyId: profile.aws_access_key_id,
+        secretAccessKey: profile.aws_secret_access_key,
+        sessionToken: profile.aws_session_token,
+        ...profile.aws_credential_scope && { credentialScope: profile.aws_credential_scope },
+        ...profile.aws_account_id && { accountId: profile.aws_account_id }
+      });
+    }, "resolveStaticCredentials");
+    var isWebIdentityProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1, "isWebIdentityProfile");
+    var resolveWebIdentityCredentials = /* @__PURE__ */ __name2(async (profile, options) => Promise.resolve().then(() => __toESM2(require_dist_cjs50())).then(
+      ({ fromTokenFile: fromTokenFile2 }) => fromTokenFile2({
+        webIdentityTokenFile: profile.web_identity_token_file,
+        roleArn: profile.role_arn,
+        roleSessionName: profile.role_session_name,
+        roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,
+        logger: options.logger,
+        parentClientConfig: options.parentClientConfig
+      })()
+    ), "resolveWebIdentityCredentials");
+    var resolveProfileData = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      const data = profiles[profileName];
+      if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {
+        return resolveAssumeRoleCredentials(profileName, profiles, options, visitedProfiles);
+      }
+      if (isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isWebIdentityProfile(data)) {
+        return resolveWebIdentityCredentials(data, options);
+      }
+      if (isProcessProfile(data)) {
+        return resolveProcessCredentials(options, profileName);
+      }
+      if (isSsoProfile(data)) {
+        return await resolveSsoCredentials(profileName, options);
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`,
+        { logger: options.logger }
+      );
+    }, "resolveProfileData");
+    var fromIni = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - fromIni");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProfileData((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init);
+    }, "fromIni");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js
+var require_dist_cjs52 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      credentialsTreatedAsExpired: () => credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh: () => credentialsWillNeedRefresh,
+      defaultProvider: () => defaultProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_credential_provider_env = require_dist_cjs36();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var remoteProvider = /* @__PURE__ */ __name2(async (init) => {
+      var _a7, _b;
+      const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+      if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {
+        (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");
+        const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+        return (0, import_property_provider2.chain)(fromHttp(init), fromContainerMetadata(init));
+      }
+      if (process.env[ENV_IMDS_DISABLED]) {
+        return async () => {
+          throw new import_property_provider2.CredentialsProviderError("EC2 Instance Metadata Service access disabled", { logger: init.logger });
+        };
+      }
+      (_b = init.logger) == null ? void 0 : _b.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata");
+      return fromInstanceMetadata(init);
+    }, "remoteProvider");
+    var multipleCredentialSourceWarningEmitted = false;
+    var defaultProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        async () => {
+          var _a7, _b, _c, _d;
+          const profile = init.profile ?? process.env[import_shared_ini_file_loader.ENV_PROFILE];
+          if (profile) {
+            const envStaticCredentialsAreSet = process.env[import_credential_provider_env.ENV_KEY] && process.env[import_credential_provider_env.ENV_SECRET];
+            if (envStaticCredentialsAreSet) {
+              if (!multipleCredentialSourceWarningEmitted) {
+                const warnFn = ((_a7 = init.logger) == null ? void 0 : _a7.warn) && ((_c = (_b = init.logger) == null ? void 0 : _b.constructor) == null ? void 0 : _c.name) !== "NoOpLogger" ? init.logger.warn : console.warn;
+                warnFn(
+                  `@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:
+    Multiple credential sources detected: 
+    Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.
+    This SDK will proceed with the AWS_PROFILE value.
+    
+    However, a future version may change this behavior to prefer the ENV static credentials.
+    Please ensure that your environment only sets either the AWS_PROFILE or the
+    AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
+`
+                );
+                multipleCredentialSourceWarningEmitted = true;
+              }
+            }
+            throw new import_property_provider2.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.", {
+              logger: init.logger,
+              tryNextLink: true
+            });
+          }
+          (_d = init.logger) == null ? void 0 : _d.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv");
+          return (0, import_credential_provider_env.fromEnv)(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");
+          const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+          if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+            throw new import_property_provider2.CredentialsProviderError(
+              "Skipping SSO provider in default chain (inputs do not include SSO fields).",
+              { logger: init.logger }
+            );
+          }
+          const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+          return fromSSO(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");
+          const { fromIni } = await Promise.resolve().then(() => __toESM2(require_dist_cjs51()));
+          return fromIni(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");
+          const { fromProcess } = await Promise.resolve().then(() => __toESM2(require_dist_cjs49()));
+          return fromProcess(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");
+          const { fromTokenFile: fromTokenFile2 } = await Promise.resolve().then(() => __toESM2(require_dist_cjs50()));
+          return fromTokenFile2(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider");
+          return (await remoteProvider(init))();
+        },
+        async () => {
+          throw new import_property_provider2.CredentialsProviderError("Could not load credentials from any providers", {
+            tryNextLink: false,
+            logger: init.logger
+          });
+        }
+      ),
+      credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh
+    ), "defaultProvider");
+    var credentialsWillNeedRefresh = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0, "credentialsWillNeedRefresh");
+    var credentialsTreatedAsExpired = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5, "credentialsTreatedAsExpired");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js
+var require_ruleset4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var t = "required";
+    var u = "fn";
+    var v = "argv";
+    var w = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = { [t]: false, "type": "String" };
+    var i = { [t]: true, "default": false, "type": "Boolean" };
+    var j = { [w]: "Endpoint" };
+    var k = { [u]: c, [v]: [{ [w]: "UseFIPS" }, true] };
+    var l = { [u]: c, [v]: [{ [w]: "UseDualStack" }, true] };
+    var m = {};
+    var n = { [w]: "Region" };
+    var o = { [u]: "getAttr", [v]: [{ [w]: g }, "supportsFIPS"] };
+    var p = { [u]: c, [v]: [true, { [u]: "getAttr", [v]: [{ [w]: g }, "supportsDualStack"] }] };
+    var q = [k];
+    var r = [l];
+    var s = [n];
+    var _data = { version: "1.0", parameters: { Region: h, UseDualStack: i, UseFIPS: i, Endpoint: h }, rules: [{ conditions: [{ [u]: b, [v]: [j] }], rules: [{ conditions: q, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: r, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: j, properties: m, headers: m }, type: e }], type: f }, { conditions: [{ [u]: b, [v]: s }], rules: [{ conditions: [{ [u]: "aws.partition", [v]: s, assign: g }], rules: [{ conditions: [k, l], rules: [{ conditions: [{ [u]: c, [v]: [a, o] }, p], rules: [{ endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: q, rules: [{ conditions: [{ [u]: c, [v]: [o, a] }], rules: [{ conditions: [{ [u]: "stringEquals", [v]: [n, "us-gov-west-1"] }], endpoint: { url: "https://states.us-gov-west-1.amazonaws.com", properties: m, headers: m }, type: e }, { endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: r, rules: [{ conditions: [p], rules: [{ endpoint: { url: "https://states.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://states.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset4();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider();
+    var endpointResolver_1 = require_endpointResolver4();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2016-11-23",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSFNHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SFN",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js
+var require_runtimeConfig4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared4();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js
+var require_dist_cjs53 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ActivityAlreadyExists: () => ActivityAlreadyExists,
+      ActivityDoesNotExist: () => ActivityDoesNotExist,
+      ActivityFailedEventDetailsFilterSensitiveLog: () => ActivityFailedEventDetailsFilterSensitiveLog,
+      ActivityLimitExceeded: () => ActivityLimitExceeded,
+      ActivityScheduleFailedEventDetailsFilterSensitiveLog: () => ActivityScheduleFailedEventDetailsFilterSensitiveLog,
+      ActivityScheduledEventDetailsFilterSensitiveLog: () => ActivityScheduledEventDetailsFilterSensitiveLog,
+      ActivitySucceededEventDetailsFilterSensitiveLog: () => ActivitySucceededEventDetailsFilterSensitiveLog,
+      ActivityTimedOutEventDetailsFilterSensitiveLog: () => ActivityTimedOutEventDetailsFilterSensitiveLog,
+      ActivityWorkerLimitExceeded: () => ActivityWorkerLimitExceeded,
+      ConflictException: () => ConflictException,
+      CreateActivityCommand: () => CreateActivityCommand,
+      CreateStateMachineAliasCommand: () => CreateStateMachineAliasCommand,
+      CreateStateMachineAliasInputFilterSensitiveLog: () => CreateStateMachineAliasInputFilterSensitiveLog,
+      CreateStateMachineCommand: () => CreateStateMachineCommand,
+      CreateStateMachineInputFilterSensitiveLog: () => CreateStateMachineInputFilterSensitiveLog,
+      DeleteActivityCommand: () => DeleteActivityCommand,
+      DeleteStateMachineAliasCommand: () => DeleteStateMachineAliasCommand,
+      DeleteStateMachineCommand: () => DeleteStateMachineCommand,
+      DeleteStateMachineVersionCommand: () => DeleteStateMachineVersionCommand,
+      DescribeActivityCommand: () => DescribeActivityCommand,
+      DescribeExecutionCommand: () => DescribeExecutionCommand,
+      DescribeExecutionOutputFilterSensitiveLog: () => DescribeExecutionOutputFilterSensitiveLog,
+      DescribeMapRunCommand: () => DescribeMapRunCommand,
+      DescribeStateMachineAliasCommand: () => DescribeStateMachineAliasCommand,
+      DescribeStateMachineAliasOutputFilterSensitiveLog: () => DescribeStateMachineAliasOutputFilterSensitiveLog,
+      DescribeStateMachineCommand: () => DescribeStateMachineCommand,
+      DescribeStateMachineForExecutionCommand: () => DescribeStateMachineForExecutionCommand,
+      DescribeStateMachineForExecutionOutputFilterSensitiveLog: () => DescribeStateMachineForExecutionOutputFilterSensitiveLog,
+      DescribeStateMachineOutputFilterSensitiveLog: () => DescribeStateMachineOutputFilterSensitiveLog,
+      EncryptionType: () => EncryptionType,
+      ExecutionAbortedEventDetailsFilterSensitiveLog: () => ExecutionAbortedEventDetailsFilterSensitiveLog,
+      ExecutionAlreadyExists: () => ExecutionAlreadyExists,
+      ExecutionDoesNotExist: () => ExecutionDoesNotExist,
+      ExecutionFailedEventDetailsFilterSensitiveLog: () => ExecutionFailedEventDetailsFilterSensitiveLog,
+      ExecutionLimitExceeded: () => ExecutionLimitExceeded,
+      ExecutionNotRedrivable: () => ExecutionNotRedrivable,
+      ExecutionRedriveFilter: () => ExecutionRedriveFilter,
+      ExecutionRedriveStatus: () => ExecutionRedriveStatus,
+      ExecutionStartedEventDetailsFilterSensitiveLog: () => ExecutionStartedEventDetailsFilterSensitiveLog,
+      ExecutionStatus: () => ExecutionStatus,
+      ExecutionSucceededEventDetailsFilterSensitiveLog: () => ExecutionSucceededEventDetailsFilterSensitiveLog,
+      ExecutionTimedOutEventDetailsFilterSensitiveLog: () => ExecutionTimedOutEventDetailsFilterSensitiveLog,
+      GetActivityTaskCommand: () => GetActivityTaskCommand,
+      GetActivityTaskOutputFilterSensitiveLog: () => GetActivityTaskOutputFilterSensitiveLog,
+      GetExecutionHistoryCommand: () => GetExecutionHistoryCommand,
+      GetExecutionHistoryOutputFilterSensitiveLog: () => GetExecutionHistoryOutputFilterSensitiveLog,
+      HistoryEventFilterSensitiveLog: () => HistoryEventFilterSensitiveLog,
+      HistoryEventType: () => HistoryEventType,
+      IncludedData: () => IncludedData,
+      InspectionDataFilterSensitiveLog: () => InspectionDataFilterSensitiveLog,
+      InspectionLevel: () => InspectionLevel,
+      InvalidArn: () => InvalidArn,
+      InvalidDefinition: () => InvalidDefinition,
+      InvalidEncryptionConfiguration: () => InvalidEncryptionConfiguration,
+      InvalidExecutionInput: () => InvalidExecutionInput,
+      InvalidLoggingConfiguration: () => InvalidLoggingConfiguration,
+      InvalidName: () => InvalidName,
+      InvalidOutput: () => InvalidOutput,
+      InvalidToken: () => InvalidToken,
+      InvalidTracingConfiguration: () => InvalidTracingConfiguration,
+      KmsAccessDeniedException: () => KmsAccessDeniedException,
+      KmsInvalidStateException: () => KmsInvalidStateException,
+      KmsKeyState: () => KmsKeyState,
+      KmsThrottlingException: () => KmsThrottlingException,
+      LambdaFunctionFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduledEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduledEventDetailsFilterSensitiveLog,
+      LambdaFunctionStartFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionStartFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionSucceededEventDetailsFilterSensitiveLog: () => LambdaFunctionSucceededEventDetailsFilterSensitiveLog,
+      LambdaFunctionTimedOutEventDetailsFilterSensitiveLog: () => LambdaFunctionTimedOutEventDetailsFilterSensitiveLog,
+      ListActivitiesCommand: () => ListActivitiesCommand,
+      ListExecutionsCommand: () => ListExecutionsCommand,
+      ListMapRunsCommand: () => ListMapRunsCommand,
+      ListStateMachineAliasesCommand: () => ListStateMachineAliasesCommand,
+      ListStateMachineVersionsCommand: () => ListStateMachineVersionsCommand,
+      ListStateMachinesCommand: () => ListStateMachinesCommand,
+      ListTagsForResourceCommand: () => ListTagsForResourceCommand,
+      LogLevel: () => LogLevel,
+      MapRunFailedEventDetailsFilterSensitiveLog: () => MapRunFailedEventDetailsFilterSensitiveLog,
+      MapRunStatus: () => MapRunStatus,
+      MissingRequiredParameter: () => MissingRequiredParameter,
+      PublishStateMachineVersionCommand: () => PublishStateMachineVersionCommand,
+      PublishStateMachineVersionInputFilterSensitiveLog: () => PublishStateMachineVersionInputFilterSensitiveLog,
+      RedriveExecutionCommand: () => RedriveExecutionCommand,
+      ResourceNotFound: () => ResourceNotFound,
+      SFN: () => SFN2,
+      SFNClient: () => SFNClient,
+      SFNServiceException: () => SFNServiceException,
+      SendTaskFailureCommand: () => SendTaskFailureCommand,
+      SendTaskFailureInputFilterSensitiveLog: () => SendTaskFailureInputFilterSensitiveLog,
+      SendTaskHeartbeatCommand: () => SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand: () => SendTaskSuccessCommand,
+      SendTaskSuccessInputFilterSensitiveLog: () => SendTaskSuccessInputFilterSensitiveLog,
+      ServiceQuotaExceededException: () => ServiceQuotaExceededException,
+      StartExecutionCommand: () => StartExecutionCommand,
+      StartExecutionInputFilterSensitiveLog: () => StartExecutionInputFilterSensitiveLog,
+      StartSyncExecutionCommand: () => StartSyncExecutionCommand,
+      StartSyncExecutionInputFilterSensitiveLog: () => StartSyncExecutionInputFilterSensitiveLog,
+      StartSyncExecutionOutputFilterSensitiveLog: () => StartSyncExecutionOutputFilterSensitiveLog,
+      StateEnteredEventDetailsFilterSensitiveLog: () => StateEnteredEventDetailsFilterSensitiveLog,
+      StateExitedEventDetailsFilterSensitiveLog: () => StateExitedEventDetailsFilterSensitiveLog,
+      StateMachineAlreadyExists: () => StateMachineAlreadyExists,
+      StateMachineDeleting: () => StateMachineDeleting,
+      StateMachineDoesNotExist: () => StateMachineDoesNotExist,
+      StateMachineLimitExceeded: () => StateMachineLimitExceeded,
+      StateMachineStatus: () => StateMachineStatus,
+      StateMachineType: () => StateMachineType,
+      StateMachineTypeNotSupported: () => StateMachineTypeNotSupported,
+      StopExecutionCommand: () => StopExecutionCommand,
+      StopExecutionInputFilterSensitiveLog: () => StopExecutionInputFilterSensitiveLog,
+      SyncExecutionStatus: () => SyncExecutionStatus,
+      TagResourceCommand: () => TagResourceCommand,
+      TaskDoesNotExist: () => TaskDoesNotExist,
+      TaskFailedEventDetailsFilterSensitiveLog: () => TaskFailedEventDetailsFilterSensitiveLog,
+      TaskScheduledEventDetailsFilterSensitiveLog: () => TaskScheduledEventDetailsFilterSensitiveLog,
+      TaskStartFailedEventDetailsFilterSensitiveLog: () => TaskStartFailedEventDetailsFilterSensitiveLog,
+      TaskSubmitFailedEventDetailsFilterSensitiveLog: () => TaskSubmitFailedEventDetailsFilterSensitiveLog,
+      TaskSubmittedEventDetailsFilterSensitiveLog: () => TaskSubmittedEventDetailsFilterSensitiveLog,
+      TaskSucceededEventDetailsFilterSensitiveLog: () => TaskSucceededEventDetailsFilterSensitiveLog,
+      TaskTimedOut: () => TaskTimedOut,
+      TaskTimedOutEventDetailsFilterSensitiveLog: () => TaskTimedOutEventDetailsFilterSensitiveLog,
+      TestExecutionStatus: () => TestExecutionStatus,
+      TestStateCommand: () => TestStateCommand,
+      TestStateInputFilterSensitiveLog: () => TestStateInputFilterSensitiveLog,
+      TestStateOutputFilterSensitiveLog: () => TestStateOutputFilterSensitiveLog,
+      TooManyTags: () => TooManyTags,
+      UntagResourceCommand: () => UntagResourceCommand,
+      UpdateMapRunCommand: () => UpdateMapRunCommand,
+      UpdateStateMachineAliasCommand: () => UpdateStateMachineAliasCommand,
+      UpdateStateMachineAliasInputFilterSensitiveLog: () => UpdateStateMachineAliasInputFilterSensitiveLog,
+      UpdateStateMachineCommand: () => UpdateStateMachineCommand,
+      UpdateStateMachineInputFilterSensitiveLog: () => UpdateStateMachineInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionCommand: () => ValidateStateMachineDefinitionCommand,
+      ValidateStateMachineDefinitionInputFilterSensitiveLog: () => ValidateStateMachineDefinitionInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionResultCode: () => ValidateStateMachineDefinitionResultCode,
+      ValidateStateMachineDefinitionSeverity: () => ValidateStateMachineDefinitionSeverity,
+      ValidationException: () => ValidationException,
+      ValidationExceptionReason: () => ValidationExceptionReason,
+      __Client: () => import_smithy_client4.Client,
+      paginateGetExecutionHistory: () => paginateGetExecutionHistory,
+      paginateListActivities: () => paginateListActivities,
+      paginateListExecutions: () => paginateListExecutions,
+      paginateListMapRuns: () => paginateListMapRuns,
+      paginateListStateMachines: () => paginateListStateMachines
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "states"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig4();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SFNClient = class _SFNClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSFNHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SFNClient, "SFNClient");
+    var SFNClient = _SFNClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var _SFNServiceException = class _SFNServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SFNServiceException2.prototype);
+      }
+    };
+    __name2(_SFNServiceException, "SFNServiceException");
+    var SFNServiceException = _SFNServiceException;
+    var _ActivityAlreadyExists = class _ActivityAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ActivityAlreadyExists, "ActivityAlreadyExists");
+    var ActivityAlreadyExists = _ActivityAlreadyExists;
+    var _ActivityDoesNotExist = class _ActivityDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ActivityDoesNotExist, "ActivityDoesNotExist");
+    var ActivityDoesNotExist = _ActivityDoesNotExist;
+    var _ActivityLimitExceeded = class _ActivityLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityLimitExceeded, "ActivityLimitExceeded");
+    var ActivityLimitExceeded = _ActivityLimitExceeded;
+    var _ActivityWorkerLimitExceeded = class _ActivityWorkerLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityWorkerLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityWorkerLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityWorkerLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityWorkerLimitExceeded, "ActivityWorkerLimitExceeded");
+    var ActivityWorkerLimitExceeded = _ActivityWorkerLimitExceeded;
+    var EncryptionType = {
+      AWS_OWNED_KEY: "AWS_OWNED_KEY",
+      CUSTOMER_MANAGED_KMS_KEY: "CUSTOMER_MANAGED_KMS_KEY"
+    };
+    var _InvalidEncryptionConfiguration = class _InvalidEncryptionConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidEncryptionConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidEncryptionConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidEncryptionConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidEncryptionConfiguration, "InvalidEncryptionConfiguration");
+    var InvalidEncryptionConfiguration = _InvalidEncryptionConfiguration;
+    var _InvalidName = class _InvalidName2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidName",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidName";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidName2.prototype);
+      }
+    };
+    __name2(_InvalidName, "InvalidName");
+    var InvalidName = _InvalidName;
+    var _KmsAccessDeniedException = class _KmsAccessDeniedException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsAccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsAccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsAccessDeniedException2.prototype);
+      }
+    };
+    __name2(_KmsAccessDeniedException, "KmsAccessDeniedException");
+    var KmsAccessDeniedException = _KmsAccessDeniedException;
+    var _KmsThrottlingException = class _KmsThrottlingException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsThrottlingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsThrottlingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsThrottlingException2.prototype);
+      }
+    };
+    __name2(_KmsThrottlingException, "KmsThrottlingException");
+    var KmsThrottlingException = _KmsThrottlingException;
+    var _TooManyTags = class _TooManyTags2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyTags",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyTags";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyTags2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_TooManyTags, "TooManyTags");
+    var TooManyTags = _TooManyTags;
+    var _ConflictException = class _ConflictException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ConflictException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ConflictException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ConflictException2.prototype);
+      }
+    };
+    __name2(_ConflictException, "ConflictException");
+    var ConflictException = _ConflictException;
+    var LogLevel = {
+      ALL: "ALL",
+      ERROR: "ERROR",
+      FATAL: "FATAL",
+      OFF: "OFF"
+    };
+    var StateMachineType = {
+      EXPRESS: "EXPRESS",
+      STANDARD: "STANDARD"
+    };
+    var _InvalidArn = class _InvalidArn2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidArn",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidArn";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidArn2.prototype);
+      }
+    };
+    __name2(_InvalidArn, "InvalidArn");
+    var InvalidArn = _InvalidArn;
+    var _InvalidDefinition = class _InvalidDefinition2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidDefinition",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidDefinition";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidDefinition2.prototype);
+      }
+    };
+    __name2(_InvalidDefinition, "InvalidDefinition");
+    var InvalidDefinition = _InvalidDefinition;
+    var _InvalidLoggingConfiguration = class _InvalidLoggingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidLoggingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidLoggingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidLoggingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidLoggingConfiguration, "InvalidLoggingConfiguration");
+    var InvalidLoggingConfiguration = _InvalidLoggingConfiguration;
+    var _InvalidTracingConfiguration = class _InvalidTracingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidTracingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidTracingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidTracingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidTracingConfiguration, "InvalidTracingConfiguration");
+    var InvalidTracingConfiguration = _InvalidTracingConfiguration;
+    var _StateMachineAlreadyExists = class _StateMachineAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineAlreadyExists2.prototype);
+      }
+    };
+    __name2(_StateMachineAlreadyExists, "StateMachineAlreadyExists");
+    var StateMachineAlreadyExists = _StateMachineAlreadyExists;
+    var _StateMachineDeleting = class _StateMachineDeleting2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDeleting",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDeleting";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDeleting2.prototype);
+      }
+    };
+    __name2(_StateMachineDeleting, "StateMachineDeleting");
+    var StateMachineDeleting = _StateMachineDeleting;
+    var _StateMachineLimitExceeded = class _StateMachineLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineLimitExceeded2.prototype);
+      }
+    };
+    __name2(_StateMachineLimitExceeded, "StateMachineLimitExceeded");
+    var StateMachineLimitExceeded = _StateMachineLimitExceeded;
+    var _StateMachineTypeNotSupported = class _StateMachineTypeNotSupported2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineTypeNotSupported",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineTypeNotSupported";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineTypeNotSupported2.prototype);
+      }
+    };
+    __name2(_StateMachineTypeNotSupported, "StateMachineTypeNotSupported");
+    var StateMachineTypeNotSupported = _StateMachineTypeNotSupported;
+    var ValidationExceptionReason = {
+      API_DOES_NOT_SUPPORT_LABELED_ARNS: "API_DOES_NOT_SUPPORT_LABELED_ARNS",
+      CANNOT_UPDATE_COMPLETED_MAP_RUN: "CANNOT_UPDATE_COMPLETED_MAP_RUN",
+      INVALID_ROUTING_CONFIGURATION: "INVALID_ROUTING_CONFIGURATION",
+      MISSING_REQUIRED_PARAMETER: "MISSING_REQUIRED_PARAMETER"
+    };
+    var _ValidationException = class _ValidationException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ValidationException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ValidationException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ValidationException2.prototype);
+        this.reason = opts.reason;
+      }
+    };
+    __name2(_ValidationException, "ValidationException");
+    var ValidationException = _ValidationException;
+    var _ResourceNotFound = class _ResourceNotFound2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFound",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFound";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFound2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_ResourceNotFound, "ResourceNotFound");
+    var ResourceNotFound = _ResourceNotFound;
+    var _ServiceQuotaExceededException = class _ServiceQuotaExceededException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ServiceQuotaExceededException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ServiceQuotaExceededException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ServiceQuotaExceededException2.prototype);
+      }
+    };
+    __name2(_ServiceQuotaExceededException, "ServiceQuotaExceededException");
+    var ServiceQuotaExceededException = _ServiceQuotaExceededException;
+    var IncludedData = {
+      ALL_DATA: "ALL_DATA",
+      METADATA_ONLY: "METADATA_ONLY"
+    };
+    var ExecutionRedriveStatus = {
+      NOT_REDRIVABLE: "NOT_REDRIVABLE",
+      REDRIVABLE: "REDRIVABLE",
+      REDRIVABLE_BY_MAP_RUN: "REDRIVABLE_BY_MAP_RUN"
+    };
+    var ExecutionStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      PENDING_REDRIVE: "PENDING_REDRIVE",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var _ExecutionDoesNotExist = class _ExecutionDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ExecutionDoesNotExist, "ExecutionDoesNotExist");
+    var ExecutionDoesNotExist = _ExecutionDoesNotExist;
+    var KmsKeyState = {
+      CREATING: "CREATING",
+      DISABLED: "DISABLED",
+      PENDING_DELETION: "PENDING_DELETION",
+      PENDING_IMPORT: "PENDING_IMPORT",
+      UNAVAILABLE: "UNAVAILABLE"
+    };
+    var _KmsInvalidStateException = class _KmsInvalidStateException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsInvalidStateException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsInvalidStateException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsInvalidStateException2.prototype);
+        this.kmsKeyState = opts.kmsKeyState;
+      }
+    };
+    __name2(_KmsInvalidStateException, "KmsInvalidStateException");
+    var KmsInvalidStateException = _KmsInvalidStateException;
+    var MapRunStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var StateMachineStatus = {
+      ACTIVE: "ACTIVE",
+      DELETING: "DELETING"
+    };
+    var _StateMachineDoesNotExist = class _StateMachineDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDoesNotExist2.prototype);
+      }
+    };
+    __name2(_StateMachineDoesNotExist, "StateMachineDoesNotExist");
+    var StateMachineDoesNotExist = _StateMachineDoesNotExist;
+    var HistoryEventType = {
+      ActivityFailed: "ActivityFailed",
+      ActivityScheduleFailed: "ActivityScheduleFailed",
+      ActivityScheduled: "ActivityScheduled",
+      ActivityStarted: "ActivityStarted",
+      ActivitySucceeded: "ActivitySucceeded",
+      ActivityTimedOut: "ActivityTimedOut",
+      ChoiceStateEntered: "ChoiceStateEntered",
+      ChoiceStateExited: "ChoiceStateExited",
+      ExecutionAborted: "ExecutionAborted",
+      ExecutionFailed: "ExecutionFailed",
+      ExecutionRedriven: "ExecutionRedriven",
+      ExecutionStarted: "ExecutionStarted",
+      ExecutionSucceeded: "ExecutionSucceeded",
+      ExecutionTimedOut: "ExecutionTimedOut",
+      FailStateEntered: "FailStateEntered",
+      LambdaFunctionFailed: "LambdaFunctionFailed",
+      LambdaFunctionScheduleFailed: "LambdaFunctionScheduleFailed",
+      LambdaFunctionScheduled: "LambdaFunctionScheduled",
+      LambdaFunctionStartFailed: "LambdaFunctionStartFailed",
+      LambdaFunctionStarted: "LambdaFunctionStarted",
+      LambdaFunctionSucceeded: "LambdaFunctionSucceeded",
+      LambdaFunctionTimedOut: "LambdaFunctionTimedOut",
+      MapIterationAborted: "MapIterationAborted",
+      MapIterationFailed: "MapIterationFailed",
+      MapIterationStarted: "MapIterationStarted",
+      MapIterationSucceeded: "MapIterationSucceeded",
+      MapRunAborted: "MapRunAborted",
+      MapRunFailed: "MapRunFailed",
+      MapRunRedriven: "MapRunRedriven",
+      MapRunStarted: "MapRunStarted",
+      MapRunSucceeded: "MapRunSucceeded",
+      MapStateAborted: "MapStateAborted",
+      MapStateEntered: "MapStateEntered",
+      MapStateExited: "MapStateExited",
+      MapStateFailed: "MapStateFailed",
+      MapStateStarted: "MapStateStarted",
+      MapStateSucceeded: "MapStateSucceeded",
+      ParallelStateAborted: "ParallelStateAborted",
+      ParallelStateEntered: "ParallelStateEntered",
+      ParallelStateExited: "ParallelStateExited",
+      ParallelStateFailed: "ParallelStateFailed",
+      ParallelStateStarted: "ParallelStateStarted",
+      ParallelStateSucceeded: "ParallelStateSucceeded",
+      PassStateEntered: "PassStateEntered",
+      PassStateExited: "PassStateExited",
+      SucceedStateEntered: "SucceedStateEntered",
+      SucceedStateExited: "SucceedStateExited",
+      TaskFailed: "TaskFailed",
+      TaskScheduled: "TaskScheduled",
+      TaskStartFailed: "TaskStartFailed",
+      TaskStarted: "TaskStarted",
+      TaskStateAborted: "TaskStateAborted",
+      TaskStateEntered: "TaskStateEntered",
+      TaskStateExited: "TaskStateExited",
+      TaskSubmitFailed: "TaskSubmitFailed",
+      TaskSubmitted: "TaskSubmitted",
+      TaskSucceeded: "TaskSucceeded",
+      TaskTimedOut: "TaskTimedOut",
+      WaitStateAborted: "WaitStateAborted",
+      WaitStateEntered: "WaitStateEntered",
+      WaitStateExited: "WaitStateExited"
+    };
+    var _InvalidToken = class _InvalidToken2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidToken",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidToken";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidToken2.prototype);
+      }
+    };
+    __name2(_InvalidToken, "InvalidToken");
+    var InvalidToken = _InvalidToken;
+    var ExecutionRedriveFilter = {
+      NOT_REDRIVEN: "NOT_REDRIVEN",
+      REDRIVEN: "REDRIVEN"
+    };
+    var _ExecutionLimitExceeded = class _ExecutionLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ExecutionLimitExceeded, "ExecutionLimitExceeded");
+    var ExecutionLimitExceeded = _ExecutionLimitExceeded;
+    var _ExecutionNotRedrivable = class _ExecutionNotRedrivable2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionNotRedrivable",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionNotRedrivable";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionNotRedrivable2.prototype);
+      }
+    };
+    __name2(_ExecutionNotRedrivable, "ExecutionNotRedrivable");
+    var ExecutionNotRedrivable = _ExecutionNotRedrivable;
+    var _TaskDoesNotExist = class _TaskDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskDoesNotExist2.prototype);
+      }
+    };
+    __name2(_TaskDoesNotExist, "TaskDoesNotExist");
+    var TaskDoesNotExist = _TaskDoesNotExist;
+    var _TaskTimedOut = class _TaskTimedOut2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskTimedOut",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskTimedOut";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskTimedOut2.prototype);
+      }
+    };
+    __name2(_TaskTimedOut, "TaskTimedOut");
+    var TaskTimedOut = _TaskTimedOut;
+    var _InvalidOutput = class _InvalidOutput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidOutput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidOutput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidOutput2.prototype);
+      }
+    };
+    __name2(_InvalidOutput, "InvalidOutput");
+    var InvalidOutput = _InvalidOutput;
+    var _ExecutionAlreadyExists = class _ExecutionAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ExecutionAlreadyExists, "ExecutionAlreadyExists");
+    var ExecutionAlreadyExists = _ExecutionAlreadyExists;
+    var _InvalidExecutionInput = class _InvalidExecutionInput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidExecutionInput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidExecutionInput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidExecutionInput2.prototype);
+      }
+    };
+    __name2(_InvalidExecutionInput, "InvalidExecutionInput");
+    var InvalidExecutionInput = _InvalidExecutionInput;
+    var SyncExecutionStatus = {
+      FAILED: "FAILED",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var InspectionLevel = {
+      DEBUG: "DEBUG",
+      INFO: "INFO",
+      TRACE: "TRACE"
+    };
+    var TestExecutionStatus = {
+      CAUGHT_ERROR: "CAUGHT_ERROR",
+      FAILED: "FAILED",
+      RETRIABLE: "RETRIABLE",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var _MissingRequiredParameter = class _MissingRequiredParameter2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MissingRequiredParameter",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MissingRequiredParameter";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MissingRequiredParameter2.prototype);
+      }
+    };
+    __name2(_MissingRequiredParameter, "MissingRequiredParameter");
+    var MissingRequiredParameter = _MissingRequiredParameter;
+    var ValidateStateMachineDefinitionSeverity = {
+      ERROR: "ERROR"
+    };
+    var ValidateStateMachineDefinitionResultCode = {
+      FAIL: "FAIL",
+      OK: "OK"
+    };
+    var ActivityFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityFailedEventDetailsFilterSensitiveLog");
+    var ActivityScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduledEventDetailsFilterSensitiveLog");
+    var ActivityScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduleFailedEventDetailsFilterSensitiveLog");
+    var ActivitySucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivitySucceededEventDetailsFilterSensitiveLog");
+    var ActivityTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityTimedOutEventDetailsFilterSensitiveLog");
+    var CreateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineInputFilterSensitiveLog");
+    var CreateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineAliasInputFilterSensitiveLog");
+    var DescribeExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.redriveStatusReason && { redriveStatusReason: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeExecutionOutputFilterSensitiveLog");
+    var DescribeStateMachineOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineOutputFilterSensitiveLog");
+    var DescribeStateMachineAliasOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineAliasOutputFilterSensitiveLog");
+    var DescribeStateMachineForExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineForExecutionOutputFilterSensitiveLog");
+    var GetActivityTaskOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetActivityTaskOutputFilterSensitiveLog");
+    var ExecutionAbortedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionAbortedEventDetailsFilterSensitiveLog");
+    var ExecutionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionFailedEventDetailsFilterSensitiveLog");
+    var ExecutionStartedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionStartedEventDetailsFilterSensitiveLog");
+    var ExecutionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionSucceededEventDetailsFilterSensitiveLog");
+    var ExecutionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionTimedOutEventDetailsFilterSensitiveLog");
+    var LambdaFunctionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduledEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionStartFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionSucceededEventDetailsFilterSensitiveLog");
+    var LambdaFunctionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionTimedOutEventDetailsFilterSensitiveLog");
+    var MapRunFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "MapRunFailedEventDetailsFilterSensitiveLog");
+    var StateEnteredEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateEnteredEventDetailsFilterSensitiveLog");
+    var StateExitedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateExitedEventDetailsFilterSensitiveLog");
+    var TaskFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskFailedEventDetailsFilterSensitiveLog");
+    var TaskScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.parameters && { parameters: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskScheduledEventDetailsFilterSensitiveLog");
+    var TaskStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskStartFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmitFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmitFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmittedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmittedEventDetailsFilterSensitiveLog");
+    var TaskSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSucceededEventDetailsFilterSensitiveLog");
+    var TaskTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskTimedOutEventDetailsFilterSensitiveLog");
+    var HistoryEventFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.activityFailedEventDetails && {
+        activityFailedEventDetails: ActivityFailedEventDetailsFilterSensitiveLog(obj.activityFailedEventDetails)
+      },
+      ...obj.activityScheduleFailedEventDetails && {
+        activityScheduleFailedEventDetails: ActivityScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.activityScheduleFailedEventDetails
+        )
+      },
+      ...obj.activityScheduledEventDetails && {
+        activityScheduledEventDetails: ActivityScheduledEventDetailsFilterSensitiveLog(obj.activityScheduledEventDetails)
+      },
+      ...obj.activitySucceededEventDetails && {
+        activitySucceededEventDetails: ActivitySucceededEventDetailsFilterSensitiveLog(obj.activitySucceededEventDetails)
+      },
+      ...obj.activityTimedOutEventDetails && {
+        activityTimedOutEventDetails: ActivityTimedOutEventDetailsFilterSensitiveLog(obj.activityTimedOutEventDetails)
+      },
+      ...obj.taskFailedEventDetails && {
+        taskFailedEventDetails: TaskFailedEventDetailsFilterSensitiveLog(obj.taskFailedEventDetails)
+      },
+      ...obj.taskScheduledEventDetails && {
+        taskScheduledEventDetails: TaskScheduledEventDetailsFilterSensitiveLog(obj.taskScheduledEventDetails)
+      },
+      ...obj.taskStartFailedEventDetails && {
+        taskStartFailedEventDetails: TaskStartFailedEventDetailsFilterSensitiveLog(obj.taskStartFailedEventDetails)
+      },
+      ...obj.taskSubmitFailedEventDetails && {
+        taskSubmitFailedEventDetails: TaskSubmitFailedEventDetailsFilterSensitiveLog(obj.taskSubmitFailedEventDetails)
+      },
+      ...obj.taskSubmittedEventDetails && {
+        taskSubmittedEventDetails: TaskSubmittedEventDetailsFilterSensitiveLog(obj.taskSubmittedEventDetails)
+      },
+      ...obj.taskSucceededEventDetails && {
+        taskSucceededEventDetails: TaskSucceededEventDetailsFilterSensitiveLog(obj.taskSucceededEventDetails)
+      },
+      ...obj.taskTimedOutEventDetails && {
+        taskTimedOutEventDetails: TaskTimedOutEventDetailsFilterSensitiveLog(obj.taskTimedOutEventDetails)
+      },
+      ...obj.executionFailedEventDetails && {
+        executionFailedEventDetails: ExecutionFailedEventDetailsFilterSensitiveLog(obj.executionFailedEventDetails)
+      },
+      ...obj.executionStartedEventDetails && {
+        executionStartedEventDetails: ExecutionStartedEventDetailsFilterSensitiveLog(obj.executionStartedEventDetails)
+      },
+      ...obj.executionSucceededEventDetails && {
+        executionSucceededEventDetails: ExecutionSucceededEventDetailsFilterSensitiveLog(
+          obj.executionSucceededEventDetails
+        )
+      },
+      ...obj.executionAbortedEventDetails && {
+        executionAbortedEventDetails: ExecutionAbortedEventDetailsFilterSensitiveLog(obj.executionAbortedEventDetails)
+      },
+      ...obj.executionTimedOutEventDetails && {
+        executionTimedOutEventDetails: ExecutionTimedOutEventDetailsFilterSensitiveLog(obj.executionTimedOutEventDetails)
+      },
+      ...obj.lambdaFunctionFailedEventDetails && {
+        lambdaFunctionFailedEventDetails: LambdaFunctionFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduleFailedEventDetails && {
+        lambdaFunctionScheduleFailedEventDetails: LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduleFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduledEventDetails && {
+        lambdaFunctionScheduledEventDetails: LambdaFunctionScheduledEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduledEventDetails
+        )
+      },
+      ...obj.lambdaFunctionStartFailedEventDetails && {
+        lambdaFunctionStartFailedEventDetails: LambdaFunctionStartFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionStartFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionSucceededEventDetails && {
+        lambdaFunctionSucceededEventDetails: LambdaFunctionSucceededEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionSucceededEventDetails
+        )
+      },
+      ...obj.lambdaFunctionTimedOutEventDetails && {
+        lambdaFunctionTimedOutEventDetails: LambdaFunctionTimedOutEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionTimedOutEventDetails
+        )
+      },
+      ...obj.stateEnteredEventDetails && {
+        stateEnteredEventDetails: StateEnteredEventDetailsFilterSensitiveLog(obj.stateEnteredEventDetails)
+      },
+      ...obj.stateExitedEventDetails && {
+        stateExitedEventDetails: StateExitedEventDetailsFilterSensitiveLog(obj.stateExitedEventDetails)
+      },
+      ...obj.mapRunFailedEventDetails && {
+        mapRunFailedEventDetails: MapRunFailedEventDetailsFilterSensitiveLog(obj.mapRunFailedEventDetails)
+      }
+    }), "HistoryEventFilterSensitiveLog");
+    var GetExecutionHistoryOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.events && { events: obj.events.map((item) => HistoryEventFilterSensitiveLog(item)) }
+    }), "GetExecutionHistoryOutputFilterSensitiveLog");
+    var PublishStateMachineVersionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "PublishStateMachineVersionInputFilterSensitiveLog");
+    var SendTaskFailureInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskFailureInputFilterSensitiveLog");
+    var SendTaskSuccessInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskSuccessInputFilterSensitiveLog");
+    var StartExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionOutputFilterSensitiveLog");
+    var StopExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "StopExecutionInputFilterSensitiveLog");
+    var TestStateInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateInputFilterSensitiveLog");
+    var InspectionDataFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterInputPath && { afterInputPath: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterParameters && { afterParameters: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.result && { result: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultSelector && { afterResultSelector: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultPath && { afterResultPath: import_smithy_client4.SENSITIVE_STRING }
+    }), "InspectionDataFilterSensitiveLog");
+    var TestStateOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.inspectionData && { inspectionData: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateOutputFilterSensitiveLog");
+    var UpdateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineInputFilterSensitiveLog");
+    var UpdateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineAliasInputFilterSensitiveLog");
+    var ValidateStateMachineDefinitionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "ValidateStateMachineDefinitionInputFilterSensitiveLog");
+    var se_CreateActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateActivityCommand");
+    var se_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineCommand");
+    var se_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineAliasCommand");
+    var se_DeleteActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteActivityCommand");
+    var se_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineCommand");
+    var se_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineAliasCommand");
+    var se_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineVersionCommand");
+    var se_DescribeActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeActivityCommand");
+    var se_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeExecutionCommand");
+    var se_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeMapRun");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeMapRunCommand");
+    var se_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineCommand");
+    var se_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineAliasCommand");
+    var se_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineForExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineForExecutionCommand");
+    var se_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetActivityTask");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetActivityTaskCommand");
+    var se_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetExecutionHistory");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetExecutionHistoryCommand");
+    var se_ListActivitiesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListActivities");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListActivitiesCommand");
+    var se_ListExecutionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListExecutions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListExecutionsCommand");
+    var se_ListMapRunsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListMapRuns");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListMapRunsCommand");
+    var se_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineAliases");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineAliasesCommand");
+    var se_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachines");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachinesCommand");
+    var se_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineVersions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineVersionsCommand");
+    var se_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListTagsForResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListTagsForResourceCommand");
+    var se_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("PublishStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_PublishStateMachineVersionCommand");
+    var se_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("RedriveExecution");
+      let body;
+      body = JSON.stringify(se_RedriveExecutionInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_RedriveExecutionCommand");
+    var se_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskFailure");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskFailureCommand");
+    var se_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskHeartbeat");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskHeartbeatCommand");
+    var se_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskSuccess");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskSuccessCommand");
+    var se_StartExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StartExecutionCommand");
+    var se_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartSyncExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_StartSyncExecutionCommand");
+    var se_StopExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StopExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StopExecutionCommand");
+    var se_TagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_TagResourceCommand");
+    var se_TestStateCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TestState");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_TestStateCommand");
+    var se_UntagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UntagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UntagResourceCommand");
+    var se_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateMapRun");
+      let body;
+      body = JSON.stringify(se_UpdateMapRunInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateMapRunCommand");
+    var se_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineCommand");
+    var se_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineAliasCommand");
+    var se_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ValidateStateMachineDefinition");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ValidateStateMachineDefinitionCommand");
+    var de_CreateActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateActivityCommand");
+    var de_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineCommand");
+    var de_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineAliasCommand");
+    var de_DeleteActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteActivityCommand");
+    var de_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineCommand");
+    var de_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineAliasCommand");
+    var de_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineVersionCommand");
+    var de_DescribeActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeActivityCommand");
+    var de_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeExecutionCommand");
+    var de_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeMapRunOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeMapRunCommand");
+    var de_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineCommand");
+    var de_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineAliasCommand");
+    var de_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineForExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineForExecutionCommand");
+    var de_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetActivityTaskCommand");
+    var de_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_GetExecutionHistoryOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetExecutionHistoryCommand");
+    var de_ListActivitiesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListActivitiesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListActivitiesCommand");
+    var de_ListExecutionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListExecutionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListExecutionsCommand");
+    var de_ListMapRunsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListMapRunsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListMapRunsCommand");
+    var de_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineAliasesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineAliasesCommand");
+    var de_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachinesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachinesCommand");
+    var de_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineVersionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineVersionsCommand");
+    var de_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListTagsForResourceCommand");
+    var de_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_PublishStateMachineVersionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_PublishStateMachineVersionCommand");
+    var de_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_RedriveExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_RedriveExecutionCommand");
+    var de_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskFailureCommand");
+    var de_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskHeartbeatCommand");
+    var de_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskSuccessCommand");
+    var de_StartExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartExecutionCommand");
+    var de_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartSyncExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartSyncExecutionCommand");
+    var de_StopExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StopExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StopExecutionCommand");
+    var de_TagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TagResourceCommand");
+    var de_TestStateCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TestStateCommand");
+    var de_UntagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UntagResourceCommand");
+    var de_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateMapRunCommand");
+    var de_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineCommand");
+    var de_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineAliasCommand");
+    var de_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ValidateStateMachineDefinitionCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ActivityAlreadyExists":
+        case "com.amazonaws.sfn#ActivityAlreadyExists":
+          throw await de_ActivityAlreadyExistsRes(parsedOutput, context);
+        case "ActivityLimitExceeded":
+        case "com.amazonaws.sfn#ActivityLimitExceeded":
+          throw await de_ActivityLimitExceededRes(parsedOutput, context);
+        case "InvalidEncryptionConfiguration":
+        case "com.amazonaws.sfn#InvalidEncryptionConfiguration":
+          throw await de_InvalidEncryptionConfigurationRes(parsedOutput, context);
+        case "InvalidName":
+        case "com.amazonaws.sfn#InvalidName":
+          throw await de_InvalidNameRes(parsedOutput, context);
+        case "KmsAccessDeniedException":
+        case "com.amazonaws.sfn#KmsAccessDeniedException":
+          throw await de_KmsAccessDeniedExceptionRes(parsedOutput, context);
+        case "KmsThrottlingException":
+        case "com.amazonaws.sfn#KmsThrottlingException":
+          throw await de_KmsThrottlingExceptionRes(parsedOutput, context);
+        case "TooManyTags":
+        case "com.amazonaws.sfn#TooManyTags":
+          throw await de_TooManyTagsRes(parsedOutput, context);
+        case "ConflictException":
+        case "com.amazonaws.sfn#ConflictException":
+          throw await de_ConflictExceptionRes(parsedOutput, context);
+        case "InvalidArn":
+        case "com.amazonaws.sfn#InvalidArn":
+          throw await de_InvalidArnRes(parsedOutput, context);
+        case "InvalidDefinition":
+        case "com.amazonaws.sfn#InvalidDefinition":
+          throw await de_InvalidDefinitionRes(parsedOutput, context);
+        case "InvalidLoggingConfiguration":
+        case "com.amazonaws.sfn#InvalidLoggingConfiguration":
+          throw await de_InvalidLoggingConfigurationRes(parsedOutput, context);
+        case "InvalidTracingConfiguration":
+        case "com.amazonaws.sfn#InvalidTracingConfiguration":
+          throw await de_InvalidTracingConfigurationRes(parsedOutput, context);
+        case "StateMachineAlreadyExists":
+        case "com.amazonaws.sfn#StateMachineAlreadyExists":
+          throw await de_StateMachineAlreadyExistsRes(parsedOutput, context);
+        case "StateMachineDeleting":
+        case "com.amazonaws.sfn#StateMachineDeleting":
+          throw await de_StateMachineDeletingRes(parsedOutput, context);
+        case "StateMachineLimitExceeded":
+        case "com.amazonaws.sfn#StateMachineLimitExceeded":
+          throw await de_StateMachineLimitExceededRes(parsedOutput, context);
+        case "StateMachineTypeNotSupported":
+        case "com.amazonaws.sfn#StateMachineTypeNotSupported":
+          throw await de_StateMachineTypeNotSupportedRes(parsedOutput, context);
+        case "ValidationException":
+        case "com.amazonaws.sfn#ValidationException":
+          throw await de_ValidationExceptionRes(parsedOutput, context);
+        case "ResourceNotFound":
+        case "com.amazonaws.sfn#ResourceNotFound":
+          throw await de_ResourceNotFoundRes(parsedOutput, context);
+        case "ServiceQuotaExceededException":
+        case "com.amazonaws.sfn#ServiceQuotaExceededException":
+          throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context);
+        case "ActivityDoesNotExist":
+        case "com.amazonaws.sfn#ActivityDoesNotExist":
+          throw await de_ActivityDoesNotExistRes(parsedOutput, context);
+        case "ExecutionDoesNotExist":
+        case "com.amazonaws.sfn#ExecutionDoesNotExist":
+          throw await de_ExecutionDoesNotExistRes(parsedOutput, context);
+        case "KmsInvalidStateException":
+        case "com.amazonaws.sfn#KmsInvalidStateException":
+          throw await de_KmsInvalidStateExceptionRes(parsedOutput, context);
+        case "StateMachineDoesNotExist":
+        case "com.amazonaws.sfn#StateMachineDoesNotExist":
+          throw await de_StateMachineDoesNotExistRes(parsedOutput, context);
+        case "ActivityWorkerLimitExceeded":
+        case "com.amazonaws.sfn#ActivityWorkerLimitExceeded":
+          throw await de_ActivityWorkerLimitExceededRes(parsedOutput, context);
+        case "InvalidToken":
+        case "com.amazonaws.sfn#InvalidToken":
+          throw await de_InvalidTokenRes(parsedOutput, context);
+        case "ExecutionLimitExceeded":
+        case "com.amazonaws.sfn#ExecutionLimitExceeded":
+          throw await de_ExecutionLimitExceededRes(parsedOutput, context);
+        case "ExecutionNotRedrivable":
+        case "com.amazonaws.sfn#ExecutionNotRedrivable":
+          throw await de_ExecutionNotRedrivableRes(parsedOutput, context);
+        case "TaskDoesNotExist":
+        case "com.amazonaws.sfn#TaskDoesNotExist":
+          throw await de_TaskDoesNotExistRes(parsedOutput, context);
+        case "TaskTimedOut":
+        case "com.amazonaws.sfn#TaskTimedOut":
+          throw await de_TaskTimedOutRes(parsedOutput, context);
+        case "InvalidOutput":
+        case "com.amazonaws.sfn#InvalidOutput":
+          throw await de_InvalidOutputRes(parsedOutput, context);
+        case "ExecutionAlreadyExists":
+        case "com.amazonaws.sfn#ExecutionAlreadyExists":
+          throw await de_ExecutionAlreadyExistsRes(parsedOutput, context);
+        case "InvalidExecutionInput":
+        case "com.amazonaws.sfn#InvalidExecutionInput":
+          throw await de_InvalidExecutionInputRes(parsedOutput, context);
+        case "MissingRequiredParameter":
+        case "com.amazonaws.sfn#MissingRequiredParameter":
+          throw await de_MissingRequiredParameterRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ActivityAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityAlreadyExistsRes");
+    var de_ActivityDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityDoesNotExistRes");
+    var de_ActivityLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityLimitExceededRes");
+    var de_ActivityWorkerLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityWorkerLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityWorkerLimitExceededRes");
+    var de_ConflictExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ConflictException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ConflictExceptionRes");
+    var de_ExecutionAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionAlreadyExistsRes");
+    var de_ExecutionDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionDoesNotExistRes");
+    var de_ExecutionLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionLimitExceededRes");
+    var de_ExecutionNotRedrivableRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionNotRedrivable({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionNotRedrivableRes");
+    var de_InvalidArnRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidArn({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidArnRes");
+    var de_InvalidDefinitionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidDefinition({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidDefinitionRes");
+    var de_InvalidEncryptionConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidEncryptionConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidEncryptionConfigurationRes");
+    var de_InvalidExecutionInputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidExecutionInput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidExecutionInputRes");
+    var de_InvalidLoggingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidLoggingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidLoggingConfigurationRes");
+    var de_InvalidNameRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidName({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidNameRes");
+    var de_InvalidOutputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidOutput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidOutputRes");
+    var de_InvalidTokenRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidToken({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTokenRes");
+    var de_InvalidTracingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidTracingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTracingConfigurationRes");
+    var de_KmsAccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsAccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsAccessDeniedExceptionRes");
+    var de_KmsInvalidStateExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsInvalidStateException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsInvalidStateExceptionRes");
+    var de_KmsThrottlingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsThrottlingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsThrottlingExceptionRes");
+    var de_MissingRequiredParameterRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new MissingRequiredParameter({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MissingRequiredParameterRes");
+    var de_ResourceNotFoundRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ResourceNotFound({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ResourceNotFoundRes");
+    var de_ServiceQuotaExceededExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ServiceQuotaExceededException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ServiceQuotaExceededExceptionRes");
+    var de_StateMachineAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineAlreadyExistsRes");
+    var de_StateMachineDeletingRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDeleting({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDeletingRes");
+    var de_StateMachineDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDoesNotExistRes");
+    var de_StateMachineLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineLimitExceededRes");
+    var de_StateMachineTypeNotSupportedRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineTypeNotSupported({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineTypeNotSupportedRes");
+    var de_TaskDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskDoesNotExistRes");
+    var de_TaskTimedOutRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskTimedOut({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskTimedOutRes");
+    var de_TooManyTagsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TooManyTags({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TooManyTagsRes");
+    var de_ValidationExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ValidationException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ValidationExceptionRes");
+    var se_RedriveExecutionInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        clientToken: [true, (_) => _ ?? (0, import_uuid.v4)()],
+        executionArn: []
+      });
+    }, "se_RedriveExecutionInput");
+    var se_UpdateMapRunInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        mapRunArn: [],
+        maxConcurrency: [],
+        toleratedFailureCount: [],
+        toleratedFailurePercentage: import_smithy_client4.serializeFloat
+      });
+    }, "se_UpdateMapRunInput");
+    var de_ActivityList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ActivityListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ActivityList");
+    var de_ActivityListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString
+      });
+    }, "de_ActivityListItem");
+    var de_CreateActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_CreateActivityOutput");
+    var de_CreateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineAliasOutput");
+    var de_CreateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineOutput");
+    var de_DescribeActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        encryptionConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString
+      });
+    }, "de_DescribeActivityOutput");
+    var de_DescribeExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        redriveStatus: import_smithy_client4.expectString,
+        redriveStatusReason: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_DescribeExecutionOutput");
+    var de_DescribeMapRunOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        executionCounts: import_smithy_client4._json,
+        itemCounts: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        maxConcurrency: import_smithy_client4.expectInt32,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        toleratedFailureCount: import_smithy_client4.expectLong,
+        toleratedFailurePercentage: import_smithy_client4.limitedParseFloat32
+      });
+    }, "de_DescribeMapRunOutput");
+    var de_DescribeStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        description: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        routingConfiguration: import_smithy_client4._json,
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineAliasOutput");
+    var de_DescribeStateMachineForExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        definition: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineForExecutionOutput");
+    var de_DescribeStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        definition: import_smithy_client4.expectString,
+        description: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_DescribeStateMachineOutput");
+    var de_ExecutionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ExecutionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ExecutionList");
+    var de_ExecutionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        itemCount: import_smithy_client4.expectInt32,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_ExecutionListItem");
+    var de_GetExecutionHistoryOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        events: (_) => de_HistoryEventList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_GetExecutionHistoryOutput");
+    var de_HistoryEvent = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityFailedEventDetails: import_smithy_client4._json,
+        activityScheduleFailedEventDetails: import_smithy_client4._json,
+        activityScheduledEventDetails: import_smithy_client4._json,
+        activityStartedEventDetails: import_smithy_client4._json,
+        activitySucceededEventDetails: import_smithy_client4._json,
+        activityTimedOutEventDetails: import_smithy_client4._json,
+        executionAbortedEventDetails: import_smithy_client4._json,
+        executionFailedEventDetails: import_smithy_client4._json,
+        executionRedrivenEventDetails: import_smithy_client4._json,
+        executionStartedEventDetails: import_smithy_client4._json,
+        executionSucceededEventDetails: import_smithy_client4._json,
+        executionTimedOutEventDetails: import_smithy_client4._json,
+        id: import_smithy_client4.expectLong,
+        lambdaFunctionFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduleFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduledEventDetails: import_smithy_client4._json,
+        lambdaFunctionStartFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionSucceededEventDetails: import_smithy_client4._json,
+        lambdaFunctionTimedOutEventDetails: import_smithy_client4._json,
+        mapIterationAbortedEventDetails: import_smithy_client4._json,
+        mapIterationFailedEventDetails: import_smithy_client4._json,
+        mapIterationStartedEventDetails: import_smithy_client4._json,
+        mapIterationSucceededEventDetails: import_smithy_client4._json,
+        mapRunFailedEventDetails: import_smithy_client4._json,
+        mapRunRedrivenEventDetails: import_smithy_client4._json,
+        mapRunStartedEventDetails: import_smithy_client4._json,
+        mapStateStartedEventDetails: import_smithy_client4._json,
+        previousEventId: import_smithy_client4.expectLong,
+        stateEnteredEventDetails: import_smithy_client4._json,
+        stateExitedEventDetails: import_smithy_client4._json,
+        taskFailedEventDetails: import_smithy_client4._json,
+        taskScheduledEventDetails: import_smithy_client4._json,
+        taskStartFailedEventDetails: import_smithy_client4._json,
+        taskStartedEventDetails: import_smithy_client4._json,
+        taskSubmitFailedEventDetails: import_smithy_client4._json,
+        taskSubmittedEventDetails: import_smithy_client4._json,
+        taskSucceededEventDetails: import_smithy_client4._json,
+        taskTimedOutEventDetails: import_smithy_client4._json,
+        timestamp: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        type: import_smithy_client4.expectString
+      });
+    }, "de_HistoryEvent");
+    var de_HistoryEventList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_HistoryEvent(entry, context);
+      });
+      return retVal;
+    }, "de_HistoryEventList");
+    var de_ListActivitiesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activities: (_) => de_ActivityList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListActivitiesOutput");
+    var de_ListExecutionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executions: (_) => de_ExecutionList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListExecutionsOutput");
+    var de_ListMapRunsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        mapRuns: (_) => de_MapRunList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListMapRunsOutput");
+    var de_ListStateMachineAliasesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineAliases: (_) => de_StateMachineAliasList(_, context)
+      });
+    }, "de_ListStateMachineAliasesOutput");
+    var de_ListStateMachinesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachines: (_) => de_StateMachineList(_, context)
+      });
+    }, "de_ListStateMachinesOutput");
+    var de_ListStateMachineVersionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineVersions: (_) => de_StateMachineVersionList(_, context)
+      });
+    }, "de_ListStateMachineVersionsOutput");
+    var de_MapRunList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_MapRunListItem(entry, context);
+      });
+      return retVal;
+    }, "de_MapRunList");
+    var de_MapRunListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        mapRunArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_MapRunListItem");
+    var de_PublishStateMachineVersionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_PublishStateMachineVersionOutput");
+    var de_RedriveExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_RedriveExecutionOutput");
+    var de_StartExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StartExecutionOutput");
+    var de_StartSyncExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        billingDetails: import_smithy_client4._json,
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_StartSyncExecutionOutput");
+    var de_StateMachineAliasList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineAliasListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineAliasList");
+    var de_StateMachineAliasListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineAliasListItem");
+    var de_StateMachineList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineList");
+    var de_StateMachineListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineListItem");
+    var de_StateMachineVersionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineVersionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineVersionList");
+    var de_StateMachineVersionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineVersionListItem");
+    var de_StopExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StopExecutionOutput");
+    var de_UpdateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineAliasOutput");
+    var de_UpdateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        revisionId: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineOutput");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SFNServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    function sharedHeaders(operation) {
+      return {
+        "content-type": "application/x-amz-json-1.0",
+        "x-amz-target": `AWSStepFunctions.${operation}`
+      };
+    }
+    __name2(sharedHeaders, "sharedHeaders");
+    var _CreateActivityCommand = class _CreateActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateActivity", {}).n("SFNClient", "CreateActivityCommand").f(void 0, void 0).ser(se_CreateActivityCommand).de(de_CreateActivityCommand).build() {
+    };
+    __name2(_CreateActivityCommand, "CreateActivityCommand");
+    var CreateActivityCommand = _CreateActivityCommand;
+    var _CreateStateMachineAliasCommand = class _CreateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachineAlias", {}).n("SFNClient", "CreateStateMachineAliasCommand").f(CreateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineAliasCommand).de(de_CreateStateMachineAliasCommand).build() {
+    };
+    __name2(_CreateStateMachineAliasCommand, "CreateStateMachineAliasCommand");
+    var CreateStateMachineAliasCommand = _CreateStateMachineAliasCommand;
+    var _CreateStateMachineCommand = class _CreateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachine", {}).n("SFNClient", "CreateStateMachineCommand").f(CreateStateMachineInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineCommand).de(de_CreateStateMachineCommand).build() {
+    };
+    __name2(_CreateStateMachineCommand, "CreateStateMachineCommand");
+    var CreateStateMachineCommand = _CreateStateMachineCommand;
+    var _DeleteActivityCommand = class _DeleteActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteActivity", {}).n("SFNClient", "DeleteActivityCommand").f(void 0, void 0).ser(se_DeleteActivityCommand).de(de_DeleteActivityCommand).build() {
+    };
+    __name2(_DeleteActivityCommand, "DeleteActivityCommand");
+    var DeleteActivityCommand = _DeleteActivityCommand;
+    var _DeleteStateMachineAliasCommand = class _DeleteStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineAlias", {}).n("SFNClient", "DeleteStateMachineAliasCommand").f(void 0, void 0).ser(se_DeleteStateMachineAliasCommand).de(de_DeleteStateMachineAliasCommand).build() {
+    };
+    __name2(_DeleteStateMachineAliasCommand, "DeleteStateMachineAliasCommand");
+    var DeleteStateMachineAliasCommand = _DeleteStateMachineAliasCommand;
+    var _DeleteStateMachineCommand = class _DeleteStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachine", {}).n("SFNClient", "DeleteStateMachineCommand").f(void 0, void 0).ser(se_DeleteStateMachineCommand).de(de_DeleteStateMachineCommand).build() {
+    };
+    __name2(_DeleteStateMachineCommand, "DeleteStateMachineCommand");
+    var DeleteStateMachineCommand = _DeleteStateMachineCommand;
+    var _DeleteStateMachineVersionCommand = class _DeleteStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineVersion", {}).n("SFNClient", "DeleteStateMachineVersionCommand").f(void 0, void 0).ser(se_DeleteStateMachineVersionCommand).de(de_DeleteStateMachineVersionCommand).build() {
+    };
+    __name2(_DeleteStateMachineVersionCommand, "DeleteStateMachineVersionCommand");
+    var DeleteStateMachineVersionCommand = _DeleteStateMachineVersionCommand;
+    var _DescribeActivityCommand = class _DescribeActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeActivity", {}).n("SFNClient", "DescribeActivityCommand").f(void 0, void 0).ser(se_DescribeActivityCommand).de(de_DescribeActivityCommand).build() {
+    };
+    __name2(_DescribeActivityCommand, "DescribeActivityCommand");
+    var DescribeActivityCommand = _DescribeActivityCommand;
+    var _DescribeExecutionCommand = class _DescribeExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeExecution", {}).n("SFNClient", "DescribeExecutionCommand").f(void 0, DescribeExecutionOutputFilterSensitiveLog).ser(se_DescribeExecutionCommand).de(de_DescribeExecutionCommand).build() {
+    };
+    __name2(_DescribeExecutionCommand, "DescribeExecutionCommand");
+    var DescribeExecutionCommand = _DescribeExecutionCommand;
+    var _DescribeMapRunCommand = class _DescribeMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeMapRun", {}).n("SFNClient", "DescribeMapRunCommand").f(void 0, void 0).ser(se_DescribeMapRunCommand).de(de_DescribeMapRunCommand).build() {
+    };
+    __name2(_DescribeMapRunCommand, "DescribeMapRunCommand");
+    var DescribeMapRunCommand = _DescribeMapRunCommand;
+    var _DescribeStateMachineAliasCommand = class _DescribeStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineAlias", {}).n("SFNClient", "DescribeStateMachineAliasCommand").f(void 0, DescribeStateMachineAliasOutputFilterSensitiveLog).ser(se_DescribeStateMachineAliasCommand).de(de_DescribeStateMachineAliasCommand).build() {
+    };
+    __name2(_DescribeStateMachineAliasCommand, "DescribeStateMachineAliasCommand");
+    var DescribeStateMachineAliasCommand = _DescribeStateMachineAliasCommand;
+    var _DescribeStateMachineCommand = class _DescribeStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachine", {}).n("SFNClient", "DescribeStateMachineCommand").f(void 0, DescribeStateMachineOutputFilterSensitiveLog).ser(se_DescribeStateMachineCommand).de(de_DescribeStateMachineCommand).build() {
+    };
+    __name2(_DescribeStateMachineCommand, "DescribeStateMachineCommand");
+    var DescribeStateMachineCommand = _DescribeStateMachineCommand;
+    var _DescribeStateMachineForExecutionCommand = class _DescribeStateMachineForExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineForExecution", {}).n("SFNClient", "DescribeStateMachineForExecutionCommand").f(void 0, DescribeStateMachineForExecutionOutputFilterSensitiveLog).ser(se_DescribeStateMachineForExecutionCommand).de(de_DescribeStateMachineForExecutionCommand).build() {
+    };
+    __name2(_DescribeStateMachineForExecutionCommand, "DescribeStateMachineForExecutionCommand");
+    var DescribeStateMachineForExecutionCommand = _DescribeStateMachineForExecutionCommand;
+    var _GetActivityTaskCommand = class _GetActivityTaskCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetActivityTask", {}).n("SFNClient", "GetActivityTaskCommand").f(void 0, GetActivityTaskOutputFilterSensitiveLog).ser(se_GetActivityTaskCommand).de(de_GetActivityTaskCommand).build() {
+    };
+    __name2(_GetActivityTaskCommand, "GetActivityTaskCommand");
+    var GetActivityTaskCommand = _GetActivityTaskCommand;
+    var _GetExecutionHistoryCommand = class _GetExecutionHistoryCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetExecutionHistory", {}).n("SFNClient", "GetExecutionHistoryCommand").f(void 0, GetExecutionHistoryOutputFilterSensitiveLog).ser(se_GetExecutionHistoryCommand).de(de_GetExecutionHistoryCommand).build() {
+    };
+    __name2(_GetExecutionHistoryCommand, "GetExecutionHistoryCommand");
+    var GetExecutionHistoryCommand = _GetExecutionHistoryCommand;
+    var _ListActivitiesCommand = class _ListActivitiesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListActivities", {}).n("SFNClient", "ListActivitiesCommand").f(void 0, void 0).ser(se_ListActivitiesCommand).de(de_ListActivitiesCommand).build() {
+    };
+    __name2(_ListActivitiesCommand, "ListActivitiesCommand");
+    var ListActivitiesCommand = _ListActivitiesCommand;
+    var _ListExecutionsCommand = class _ListExecutionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListExecutions", {}).n("SFNClient", "ListExecutionsCommand").f(void 0, void 0).ser(se_ListExecutionsCommand).de(de_ListExecutionsCommand).build() {
+    };
+    __name2(_ListExecutionsCommand, "ListExecutionsCommand");
+    var ListExecutionsCommand = _ListExecutionsCommand;
+    var _ListMapRunsCommand = class _ListMapRunsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListMapRuns", {}).n("SFNClient", "ListMapRunsCommand").f(void 0, void 0).ser(se_ListMapRunsCommand).de(de_ListMapRunsCommand).build() {
+    };
+    __name2(_ListMapRunsCommand, "ListMapRunsCommand");
+    var ListMapRunsCommand = _ListMapRunsCommand;
+    var _ListStateMachineAliasesCommand = class _ListStateMachineAliasesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineAliases", {}).n("SFNClient", "ListStateMachineAliasesCommand").f(void 0, void 0).ser(se_ListStateMachineAliasesCommand).de(de_ListStateMachineAliasesCommand).build() {
+    };
+    __name2(_ListStateMachineAliasesCommand, "ListStateMachineAliasesCommand");
+    var ListStateMachineAliasesCommand = _ListStateMachineAliasesCommand;
+    var _ListStateMachinesCommand = class _ListStateMachinesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachines", {}).n("SFNClient", "ListStateMachinesCommand").f(void 0, void 0).ser(se_ListStateMachinesCommand).de(de_ListStateMachinesCommand).build() {
+    };
+    __name2(_ListStateMachinesCommand, "ListStateMachinesCommand");
+    var ListStateMachinesCommand = _ListStateMachinesCommand;
+    var _ListStateMachineVersionsCommand = class _ListStateMachineVersionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineVersions", {}).n("SFNClient", "ListStateMachineVersionsCommand").f(void 0, void 0).ser(se_ListStateMachineVersionsCommand).de(de_ListStateMachineVersionsCommand).build() {
+    };
+    __name2(_ListStateMachineVersionsCommand, "ListStateMachineVersionsCommand");
+    var ListStateMachineVersionsCommand = _ListStateMachineVersionsCommand;
+    var _ListTagsForResourceCommand = class _ListTagsForResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListTagsForResource", {}).n("SFNClient", "ListTagsForResourceCommand").f(void 0, void 0).ser(se_ListTagsForResourceCommand).de(de_ListTagsForResourceCommand).build() {
+    };
+    __name2(_ListTagsForResourceCommand, "ListTagsForResourceCommand");
+    var ListTagsForResourceCommand = _ListTagsForResourceCommand;
+    var _PublishStateMachineVersionCommand = class _PublishStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "PublishStateMachineVersion", {}).n("SFNClient", "PublishStateMachineVersionCommand").f(PublishStateMachineVersionInputFilterSensitiveLog, void 0).ser(se_PublishStateMachineVersionCommand).de(de_PublishStateMachineVersionCommand).build() {
+    };
+    __name2(_PublishStateMachineVersionCommand, "PublishStateMachineVersionCommand");
+    var PublishStateMachineVersionCommand = _PublishStateMachineVersionCommand;
+    var _RedriveExecutionCommand = class _RedriveExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "RedriveExecution", {}).n("SFNClient", "RedriveExecutionCommand").f(void 0, void 0).ser(se_RedriveExecutionCommand).de(de_RedriveExecutionCommand).build() {
+    };
+    __name2(_RedriveExecutionCommand, "RedriveExecutionCommand");
+    var RedriveExecutionCommand = _RedriveExecutionCommand;
+    var _SendTaskFailureCommand = class _SendTaskFailureCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskFailure", {}).n("SFNClient", "SendTaskFailureCommand").f(SendTaskFailureInputFilterSensitiveLog, void 0).ser(se_SendTaskFailureCommand).de(de_SendTaskFailureCommand).build() {
+    };
+    __name2(_SendTaskFailureCommand, "SendTaskFailureCommand");
+    var SendTaskFailureCommand = _SendTaskFailureCommand;
+    var _SendTaskHeartbeatCommand = class _SendTaskHeartbeatCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskHeartbeat", {}).n("SFNClient", "SendTaskHeartbeatCommand").f(void 0, void 0).ser(se_SendTaskHeartbeatCommand).de(de_SendTaskHeartbeatCommand).build() {
+    };
+    __name2(_SendTaskHeartbeatCommand, "SendTaskHeartbeatCommand");
+    var SendTaskHeartbeatCommand = _SendTaskHeartbeatCommand;
+    var _SendTaskSuccessCommand = class _SendTaskSuccessCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskSuccess", {}).n("SFNClient", "SendTaskSuccessCommand").f(SendTaskSuccessInputFilterSensitiveLog, void 0).ser(se_SendTaskSuccessCommand).de(de_SendTaskSuccessCommand).build() {
+    };
+    __name2(_SendTaskSuccessCommand, "SendTaskSuccessCommand");
+    var SendTaskSuccessCommand = _SendTaskSuccessCommand;
+    var _StartExecutionCommand = class _StartExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartExecution", {}).n("SFNClient", "StartExecutionCommand").f(StartExecutionInputFilterSensitiveLog, void 0).ser(se_StartExecutionCommand).de(de_StartExecutionCommand).build() {
+    };
+    __name2(_StartExecutionCommand, "StartExecutionCommand");
+    var StartExecutionCommand = _StartExecutionCommand;
+    var _StartSyncExecutionCommand = class _StartSyncExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartSyncExecution", {}).n("SFNClient", "StartSyncExecutionCommand").f(StartSyncExecutionInputFilterSensitiveLog, StartSyncExecutionOutputFilterSensitiveLog).ser(se_StartSyncExecutionCommand).de(de_StartSyncExecutionCommand).build() {
+    };
+    __name2(_StartSyncExecutionCommand, "StartSyncExecutionCommand");
+    var StartSyncExecutionCommand = _StartSyncExecutionCommand;
+    var _StopExecutionCommand = class _StopExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StopExecution", {}).n("SFNClient", "StopExecutionCommand").f(StopExecutionInputFilterSensitiveLog, void 0).ser(se_StopExecutionCommand).de(de_StopExecutionCommand).build() {
+    };
+    __name2(_StopExecutionCommand, "StopExecutionCommand");
+    var StopExecutionCommand = _StopExecutionCommand;
+    var _TagResourceCommand = class _TagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TagResource", {}).n("SFNClient", "TagResourceCommand").f(void 0, void 0).ser(se_TagResourceCommand).de(de_TagResourceCommand).build() {
+    };
+    __name2(_TagResourceCommand, "TagResourceCommand");
+    var TagResourceCommand = _TagResourceCommand;
+    var _TestStateCommand = class _TestStateCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TestState", {}).n("SFNClient", "TestStateCommand").f(TestStateInputFilterSensitiveLog, TestStateOutputFilterSensitiveLog).ser(se_TestStateCommand).de(de_TestStateCommand).build() {
+    };
+    __name2(_TestStateCommand, "TestStateCommand");
+    var TestStateCommand = _TestStateCommand;
+    var _UntagResourceCommand = class _UntagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UntagResource", {}).n("SFNClient", "UntagResourceCommand").f(void 0, void 0).ser(se_UntagResourceCommand).de(de_UntagResourceCommand).build() {
+    };
+    __name2(_UntagResourceCommand, "UntagResourceCommand");
+    var UntagResourceCommand = _UntagResourceCommand;
+    var _UpdateMapRunCommand = class _UpdateMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateMapRun", {}).n("SFNClient", "UpdateMapRunCommand").f(void 0, void 0).ser(se_UpdateMapRunCommand).de(de_UpdateMapRunCommand).build() {
+    };
+    __name2(_UpdateMapRunCommand, "UpdateMapRunCommand");
+    var UpdateMapRunCommand = _UpdateMapRunCommand;
+    var _UpdateStateMachineAliasCommand = class _UpdateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachineAlias", {}).n("SFNClient", "UpdateStateMachineAliasCommand").f(UpdateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineAliasCommand).de(de_UpdateStateMachineAliasCommand).build() {
+    };
+    __name2(_UpdateStateMachineAliasCommand, "UpdateStateMachineAliasCommand");
+    var UpdateStateMachineAliasCommand = _UpdateStateMachineAliasCommand;
+    var _UpdateStateMachineCommand = class _UpdateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachine", {}).n("SFNClient", "UpdateStateMachineCommand").f(UpdateStateMachineInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineCommand).de(de_UpdateStateMachineCommand).build() {
+    };
+    __name2(_UpdateStateMachineCommand, "UpdateStateMachineCommand");
+    var UpdateStateMachineCommand = _UpdateStateMachineCommand;
+    var _ValidateStateMachineDefinitionCommand = class _ValidateStateMachineDefinitionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ValidateStateMachineDefinition", {}).n("SFNClient", "ValidateStateMachineDefinitionCommand").f(ValidateStateMachineDefinitionInputFilterSensitiveLog, void 0).ser(se_ValidateStateMachineDefinitionCommand).de(de_ValidateStateMachineDefinitionCommand).build() {
+    };
+    __name2(_ValidateStateMachineDefinitionCommand, "ValidateStateMachineDefinitionCommand");
+    var ValidateStateMachineDefinitionCommand = _ValidateStateMachineDefinitionCommand;
+    var commands = {
+      CreateActivityCommand,
+      CreateStateMachineCommand,
+      CreateStateMachineAliasCommand,
+      DeleteActivityCommand,
+      DeleteStateMachineCommand,
+      DeleteStateMachineAliasCommand,
+      DeleteStateMachineVersionCommand,
+      DescribeActivityCommand,
+      DescribeExecutionCommand,
+      DescribeMapRunCommand,
+      DescribeStateMachineCommand,
+      DescribeStateMachineAliasCommand,
+      DescribeStateMachineForExecutionCommand,
+      GetActivityTaskCommand,
+      GetExecutionHistoryCommand,
+      ListActivitiesCommand,
+      ListExecutionsCommand,
+      ListMapRunsCommand,
+      ListStateMachineAliasesCommand,
+      ListStateMachinesCommand,
+      ListStateMachineVersionsCommand,
+      ListTagsForResourceCommand,
+      PublishStateMachineVersionCommand,
+      RedriveExecutionCommand,
+      SendTaskFailureCommand,
+      SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand,
+      StartExecutionCommand,
+      StartSyncExecutionCommand,
+      StopExecutionCommand,
+      TagResourceCommand,
+      TestStateCommand,
+      UntagResourceCommand,
+      UpdateMapRunCommand,
+      UpdateStateMachineCommand,
+      UpdateStateMachineAliasCommand,
+      ValidateStateMachineDefinitionCommand
+    };
+    var _SFN = class _SFN extends SFNClient {
+    };
+    __name2(_SFN, "SFN");
+    var SFN2 = _SFN;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SFN2);
+    var paginateGetExecutionHistory = (0, import_core4.createPaginator)(SFNClient, GetExecutionHistoryCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListActivities = (0, import_core4.createPaginator)(SFNClient, ListActivitiesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListExecutions = (0, import_core4.createPaginator)(SFNClient, ListExecutionsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListMapRuns = (0, import_core4.createPaginator)(SFNClient, ListMapRunsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListStateMachines = (0, import_core4.createPaginator)(SFNClient, ListStateMachinesCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/parameter-types.ts
+var zlib2, typeCoercionStateMachine;
+var init_parameter_types = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/parameter-types.ts"() {
+    "use strict";
+    zlib2 = __toESM(require("zlib"));
+    typeCoercionStateMachine = () => {
+      const encoded = "Wyh0NiJJL6a5QDm2R+wa3nasIiZ8rauGeZab052kM0x6bT8EU0/HwbGSGrFuzuBbg02JZCzlwCgshy6qvkrFpm00Rthzgqs8/isVpWM0Rti0Dkzk+gC1msuWI3d05cm3trr8vSo57d7/ci3JNiKBbZ5RCeB2xaKj+ntgSfPFW9e2q7AoEuIRCMspciESLNZrqX2UbxDJ2n+lPCSbvuQv0lcIoDHwPDYKvdU9w6F8M1+r030Ot3Zmf0fZStLq2G2NpaR39gaRTxLKlMAQgNPca5rZ9S5TpuPTcwKJYcH2peOzrAtGMqB4Anqw1IXm+wE24MgH7/L/f1oaFrXxSlpNcwcwOADZfTQpjZHVfe99Hf8/2vLHVdri2gelS251dpELSjqhjYaS4FAW//u+Uuvf7I0uPC4cwUAkgYSUeCyl8jXT7o//rDwioCwShDqSqrQqSu9Npomz1jnbBA93N2NEIOwz0JiJFGlWUuZrlJW/6fbe51z36w3AaEBmRABSkpTqfaWy7Fvma9rh78d/OPzjSQTIZ0a9Vlmj/E3nf5lZSbN3+iNr4tDbTTk8CsOj41RlFW4klbK823wv86+ACBJoIHjAAFTS2qMl82fWLLsbiCOA2YsAMHvapTQMj7a59vypnLVRo82/7Hs1ybIizyFcEVxUq9fUxex7gQNw/pORyUnLcddWGIwUbQfCYGbORgfkpnnWWjlokQ8ISicsFRgsomt7/yzGyW1vVr/pq+ol6enPF8RhzCGEELZjY7/8T22ceC/baT6bB+i6EcjdZawqWnt69qmn6+4vk4AIiKgQktQuS5PaSdu9TMo3lgTGmG6KLLjF32fVVic9O1eVSv5ugyT7DRgwfsjy4pvW4zqZ3b7a4+SvjQCQt6ib4gEiy/75TC1g/I9+xZfzUWlv4+9bMQMt+XxPn6brewz4xhqOS2fE29IUqrR0k2Ws90++ahPMHnOi1N3i9cHHfX810RD7cp4VHB149M+svX7cOruD3sWT73oQHgrmuj6PGl3Ea5Kw2le4QVYzj6ECYZI5hvT9a4rQbc9Y4lnmhA18DwPdlUA+5FoA2Q5zVvni+HeWZHvi7TUiB1p3hpYbJGcW1gxLLBvvNucqXDcBBkk1w6GA3rr9nEvCVqmeyLo/RDdVaHBnYqVzYF+EBWungdUBcXOYbUNr8tTFE9nhoEM2GB3kBP6hX0bG5XFt8rQts9cR8YDuz8Gf8QNpqYZ/Jj3PpKmhWAoopciPuKAdXW9viWwuw9wjp0TOd7EZsDnwqXHyv2p7IcYFajl3WIBazW3znW2HJRPNLm3hzB4NKn+kLGzJUPP1D2UEA0XL1lE8wkN7hrxAxn9m3hvBvkFPWLgy2UA6J7cLC3mqU83unWGEfBPYhJv/hAU8tlL3gRm4FQ8TLNPGS0GubqefcExWfBoA2DTkLYjqa0KCwo0/CRuctiUNr0eyOPP7rWsO5fqJ2Vd0HvGGFttFbId2VuWa32lZM5/CSOwEnKh/c6ZgWGpTt2p2Z8mjKRcDLDzIUWXMDm4KuP8rMPSQzEi5b6BfYKy9PvDu8m6fWealr8lIEBhxaYRoo/aMmrSqMgVAiUcdGvu/cvciCrsq6BXoWROwE3Iw9a7tRVbRbAExTbbP8lati6c/cmyvohiQJJWeWr4uh1DrLJs70E+FFl4B8eb9WqRGmYsN8xr/HwNkSrgf30ynxwyoK3w/9JrtXykksA78yIgimD/IIXcLWSTa1CrenZLKpdqfV1uCwn3yV/yNhmBqjxshdHArh1ZypY9tXD5mefPIm9Qek8Sz8VBjdD9ClgA+tnVQdPSmfvz8Ky0gf3Ljn1UUUI8kO+CBGplNgZ9hRL74Z+FYWeYWMQ/MULYMG9eOd1zKxgB0Q/aZ9RPf67SU7pVAjR+NQieW9IH8JLMx5CDC7OS8b+VOSYHrihxngHxecdlHGIlvEGdPzKrwN6xbUd3gotyZQicnOSouTy9eIEQxI6oIZ/WphPuQ8yGPBw3c5LG+c9c4uyWq1nvrMpX3GFZoYwY8jvW5v5obJfLxzOYUBMLjUdvrA/FK9LSQ1NnqGZW3hIo0Hddwh0lT1DsS0nGU0Fdqatcwq5Aukb4Z6mVIRCyVOmPxu2OccxVKUZwr9cdjfEQ0Z9rHnCtINM5ssy+YqqGqAWn7kaIRfGqPDANMAGTgd3IhMVXlBXezmXx5zVdy4DsjE9WzG2jgr68mkreGQPxyDUBncoisCnhyWNUUo7Nnrkio1RVlbCtQ58bIQPtTxNPrvlQLvLDwbim1iXC2g/QMDcL15YPWg6ptgnEFaUfZ0+jsjyGfvC5QkcQUl+bNKzrmyIfMTSuzQ7ePIbAc3Q1M6GAdaYUqLWi+kQkqUA0aMc2IFkOZXCPywHr69IOi5uQboBg53QpTPdJUeFDFmke1SiEayAe74u3lTEClez/lddOv3xsNfvTundQkC9D5AIcvDarwj6EiqKPh3oDB4t2+vMOAhihKw3SNIenaOLNyCLRb8xuj5eia6sC4Po2HcGHb4Tbkk/rpPCql9OfjsIoZ76bU5rTXlBWGa7TEIAAcnrk2TVXYBdRuIRrSSGUeI9EN3tNQPIBaIiMze1i1cnJyXUUaGdqDiU9yWPtknKPUJTkGyMB46yXeOmNEx6omRoRd4Sxv2NuP07iE0bYjuPMH4oOacBWatduJJLXh30FWKtn7SWVf9ziP+RmWyzXCs0uvhBymy4TGI9CeugwH42SEXE9Gdl08MOULwRA/xXChbxf689YLv+dUVL2zX3RYPT1Ndsw8u/zOnMx4T7vC9NCI0XgvD9AunyQ3YO7pEZv68siqL4VHRUwngrtZNukUBvgUHvNeEA0giXU6NkOqAY+pD2yyyYohkBtCk33lVWNJfhapnLxvUh9OjWLIvKlzopZ35igI9Cv5ELRKGb2s6mugt78CpP2kOASe5il8hRJJmm/jnukMpmy8corKgGsGbPDdcmxRFSfMt1MH4z2YOABTd00p10nh5fTI0R9CQ/9/NwndXSpWFtjonk6KfNYP+6oAZw1IOCEmG3FzcAn3ae//vlXrU487dlB6jMrsjgSfcdRXDuY1Zt2nMqOMbM5bc9QkecqvJw/AJBzzKMqjJehuykMAYvVLoabSqwSm2MM8vRH4gQCHX08jaTPxMyBTA64rKYM8ABs3GKgufW9+qnzCe9CBtpFsKoZrAaY7pHsXc00k25OhvVVWXzqWmEw3kMojAbtHYZ/77txiPN1uyYuaIPh4XMs/OzMkxrk072AHM+dBj5qwIUrxKpENltITNi5j3brNlCIlJubd3DDvW1/5nDDsbGhQzJEHQ0iPucbzUawDDGcUKzf7eQAYAJgAN6k31TBUnUFJ6a1QTtbyZQw9ogUowKFHaFQxG03Y3i7BR1vIy1Ode85hBRpjyUAslXF9EIWCnt9/Zt/b38urinE9RHjNuZ5Hu0jd+veID6jgwwiYYi9pRDfm80XUF2nbMoZiruhAktdKUasm9EjIMmgysXxoFFtgFigb+gcKl1/xwAF6Jqd6+8DtEETNECBoOTyZaDD+Wl+497Xac5fUajlEV5Kexgf6jEhZHTQ9QgXKxBjFoPEDaDqPmi8I6p7dSyW8cjV7TuSV9XzqR4GlzBH4qo0DLducyiithlpG61aF8/z1XGGUqdVAGNqbDrUS3ot5NHVAGJy9PsSRvAazVjAt6+wZg3B6mkcNLqEQaUCJrQiSH5ybX43h0wjNNpCl76obxYaj8VMiczK4//+1p3BzS21FLDYkxGSlZQbI8EqxFz0zaIqIYz7P07sV/mBfVEHKZhvdGCWra3l3vpangq/q2AyW1dSQH/31v5Yj+x0yv6cmdrtbXNmo1FWNTQGq922jNld8ttOi999qHaDd9jfiG7vleW8d2WmkJGBn32VbZuVbHf6hRXsrB5d0j/9BC4U0nEzPxBSZy0+U+4Maix0AEAZ3tBjAMgDo6da8vvdTojEzgKE5WjZlOvcFbW2R4wI0DBI2xjiRNZ3IFuDMi0PEXNX7h0eT34zg/pZeKN4n1/XAS0g0DTQCYzv9vU+4f3IGsfQC/Ej07dRnSrKvkAtdxLCknhhNrctskmQrxUAJ7W2yXK+ZWiwCUCu2RerWzSCqrd+dReDrkLTRrfFBUt/tv3xCve6/6wt5lZHFb/NybhCHd+Y1ztfTryg/jwC23eTwTQwyEIensR+sv3DzBod9rNFl4+SKAExvNDAIR8YMdqkJpwQTh/rO84khgeUhTFQGmGIx+H7jhDyN28J9fYwXCXZ7wo7h5bcRNJizqFAYG3xl3Ow0SNl4p5ehsGDDil8SvkGlO7ejM1FXEbXvFFq7GG/5+qG54Sdw/LrxbVzJFFJ1Y9nqbuaDC3ucbrkbwELnF0m6EwLC3y80dPXC4qFXexv1k22uknGoqbdnr8S9ALGRTywKgelBmGcA9sUtdr2mA8J3zYeA+GnyS1SZiNjLCdsEcEGphljZqddHd6grNtpHAog/0gFUPBsA+6CpQVz4KxwaSvCkFcIDSvLiOhDHMh6+JzTerWa8H26LRxsuivCsDqqin6N8g3swAPwpHzlwr+DvebQzeUo5x593iVDgNjHPEONT81PnzMiI7xoFZdxa6nP2vzZa6qBTrJY1f0cg1uIcZ4UpTVRpvSucQ3XBQZCWc4827asrayyeB1T6pg7MGN7/E762FglL+OtMpROndXDwBH/FOdVECZHlmHaYClyB4NGEY1afJuJ/589rTqQPcq+P/0LjjrFEhwtrYjeM6YIpE52Jy6+9lmNBJJysWyP9fdvP5zW7v7l/yLBNbJrERh/PeeQvPvIG1voNF/iWEsAapgSq15ZQakrZ66eE7zShpp87j3C0r2km88jIRh2bVyttLbwt77zKwWHvbibV2h1rKboni+iEiq09hHepwhumuj3AXr9nC4vhbTLrWO40YtatBNKPizVmJh8VZyWMMhZ7MAsbjoCZnXLit+Rq6h1zIEQK4+VtdvN50gwS3Z14AB0ZZkiTSqIhupHW7sHCmhidxcY9vPq6WbvYMDb4Ffv/hv8xAOuzZtIMZHjWVR4IsJviKc7egKxHj0kArJGNTmDXWYJqlgWNNJUCw6qNp7twqU88rTH3BEw3+RxRgd/2trUviwr53dbH6FEnZSxfkLL3gyNdkctdFDVlUuOmZE6qvow8smS0lYeIAyxARlZZjk3LrRkPzAZxUlb43frJAxpHy+NnZ4NwpxmXqPSVGWIFpwBUY+q8zmSWyT9SEU/NpZSt5UXE/MTkiAmgev8RY4HTabZpYHspoC+UxumsRWPPY0dY+wSHpH8QuZ6XOfYwsQ41g3OUDgvwpcIm2U9AlvFAMHCdJqawFL7FFbPeAFQj2IYr6X64HguomhKQviNR6Oo+jWyf2ntIJe0yEHT6LjRy6aJda75TD2HO1YkaxIPSiSBiMxi5h6/lVIgQXdWLLPcKkjoypzXX0tHJm8Z/l8k7Tz/8sT5ja1ibPUTfrk8KhanIV1xZoUXnA+2O8E7I2h9Ej8rYptiuG28MeoH3D9NE8IrAjXLWpjD5r485c4x9gw6Y5cM2B/GsQIRcvhnlnic6FjGs4a9OsJVBROMGEahxQi7kMAhCvdviZDSc+PnBWuCbKGKdMqi2TT3N5QmM6pY9wl/v80RfeYE5Wznddpj8/soC7lJddFgP50Akb3RmaQSxmgdehLx5Em08fM5D63bGAVLD/i94IKWcUFDhn4P8cMcYy+6cgF1fWG2KH71OpWBETPFxKihuKLvLq3nFhYr7icPD4jsVWNex8fa8cGk/kROWgPpCNdqcIpgpZSMZsPrMaU1viPZ23zP6IWAk1VI9epKn3IB4YB8nUc3xfUSrfhaW+R2ZQ8HIznzVVbCW9DLznBqRlQM94iwtBanbYadWcuIHjEY2cYUOlAjHBoqhVU84PaL9HdGHSe42ZFFDvnWy2yJf491yjBrlQPIj4KfgBK9yYtgpL0t8ezOZj/OYyGhu1KTDOZccbGyoILLq5mYs3ZbZndSir91eltpOiYU5YntAmB2YgWDdDTsWAe/hK+feo7jIOuhSVsb2WPWSu0Ofugrwwa1IKUfDfW5bk/MP8NfT1E5IbLub+1bYTonlIO/qEO3N3JnbcZ99xymzOeS/B3wf7F+lr2BebcFl9vf67PdV2m7PQD+HzWEA1pJNpwBlkzVu4AzIOmI77Zl9sE3YVTdu/Qy/Ls8D22OYZgNE5hOtr/sTziATf2J1tov2yuw5stSGhdse03zGtZCcO2oRJzHRIseSaD3bC1xxG1/fMGuLvbay6znnzivxZIsubmsHgAHWQIfPFl36tTzimR7yqFj9X9OY8HDvJA3Bz0OfCIHiPjO9LRwbkcrHw2FLa7y7XAz34Y8kRla4t1J3cjeasDIOtapfYiEopnf4K7B6LH9wxmQNm56v3AVgHT7TLPRQuC8pLM+ZcfdDraHx5Jaz1Mec3LNxc3evNbwr2KmupoowLpPm0Y7SePwMbKqfeUqD1qFn1sFV6k3wIk15x8fpBqsZP/c8twDNI0aWi/p5S8NteBrfB4p7n4TV7m1nouoCG4bCdXdly1TOUFsLSnSua5dQzQe5PkkXHpvMk+nRA7nBALoG0iwiVK79s5dQED2UXZUsLUD2SG/hAOKSbcThuV4Uvxu+1zuAerrroHyZ3wuLs7qT7TeJaM1sgZD1cLhR1A9ckyTxGV7kyOQac0u4rqUywpY9jNoTN+1AFHghDIt3NLNYAjZLVu5alzDLyWXS16n62H9a5Ee5isrYw9rip5IEElt7DU0dksKk6wc9qDFIPQOfTGr3MoGIpwhKhqKVCWgdyoc52K3W5x6IaX+HrHYN303eDlvFPHcBZi118vY+v3NUPkdYFoL35fuuZG9zuBNEFpzw6ipMlnECLwC7TnJiAqhb7P7Z/kwOvXgvbaUIIDIkKSvtge0feIZVg+t/RGagcH3JuKgTBdAETgRwUgNTn1hOWF1hXcBttS8FA6961AOwGumBz/X27lStCfea9MHt9GrW1SrwVeGq1/unShvug4xFuUcDEUq4Zd4Iibm6pmsf8B5ECpfuCKFdDUVhqtdQoJqGNtG/MHlgbpTPkN2GZbtK2tbu6HP4qqqVDDfAKk4HMbwdbH7b6Y6rBQr+6MvPlUjujyMvQve2FD8S9bBZekQRSOkhwg+Uk51AINfHznUP0M4FRkKoPxOnFKGFxiHIneMQ0XZ8py336X3A2lsTc38ON19s/SHHXg2o1rOMYTH9IFxLgVP6fPMOIRc+ZCywpxy/kNtksOOzz04AGaqS9T1bliaRYZ93ea15RrGr17FlVidwTdWVLGCHWSjsTwwwcqvCQ8MS56czb/Ls7Zhd3hlw9WghfLKGja8urC/kUW+SPANID+P+NnzXohy4yGWDr9p0dUt4rwMJcCE4mDPq8t4ugSOdvo0gRwJinaohxDLALUmiE7FuQNWDOLMBvwhjT72Q/6adXgZzXGPhUUtSCZYM3NY5Tob7IHB8ADDals1PAWK7MDlh3+4SyMfb7H63A+prvP5fh6vBh0DYIScPmeYeVPqZ6z1+Ngfw6lfesDgS4TAc+ufsa9NoWmUkzXAD8YRlrokw0Rb72qHbLp11a5ZLY/+nGBkUwjZ7RSSbQsgPIKhsJ1+yWeOcx8OTQebOY2AGDFUbRVXFCmW4+xQGyoIB0FKSiMe7uf7en2ROBnz3BIqurRLCGUi+psr+6B1YvfiYKObw9qV4yc55MLDuiEDKO4q8MUA8ZdzsAML1llPCxKxHwmpZH9GjxN6gbfgDZZ2GwZ2+X3ClbhRnG+pN21MfKFI9cXRPQ9Ox+GwLYG8hzohz/9AuYhh2oHqCznzJRppAsHEDYtM7YnLGEt9EbDRHHqE5jm8Zq+CEaE3ScDWtwS+j5ivRczA5FDEdCCsUF8k99gKXu0EqM/HZJXeSlIPL7FfQ173jZtVkV/kTd8XdRLyqRU3PB48yz1iQ++W+ipMyb4VdXjRcNMwq6OEMaei+bPrrWiAIqG4opdhbCdrHTWL7hoP3ju5gk/g/fPcgQbcIOcj8vLRZL+Czl/cliZziPjE3IPIMKW/22NSWGZd6EhmhAFz82KiemZZR6qTf47AAoHe4B4xVAFA9CEKsf5BlKLDaKPubnFTh1yORB+tLfgpSmCFOOmwxDsAlR2plXZUmWWrPc0/tseXp/YoQiz8K1ctdg43CS/qAYO2Wz5gnDTFfsjMEqdejpnTsWttv255Mdyo3UySLVx3z3+zauXVNhOUrrbwPzJLdj18LFXCsR1SyRavgT/tn7zBVO+TJduGDZfkig+UebqiSLYG6FXVyPrzyc3tbfBA3dzL1XlxkVX8kzGJHASIlx0oeDjbwYEKaAxcCcdAcECAYuofvwJTpAAEBhKHa9oJTS4azCDhxKwjlExxoIEf3ELIkWti+rFr/cGaBvcJSlkdpQpeS6PWZEEDU8QjJveRsRgAfyAfESQp4jMu3L7zHVhe89r9LGXjKeiREqex7lynbysQMPsXZC/btPFg/eJmu1mYONcTAx7DRher1tvsHH6fD6+/qGYeXb6IkeXG0ft09IOSUCCk8+27jeO9Cm5PKSyHmAnvfpvtWx/RYKBFBOExCPMJm/71XK4ZQiB9Sh0blQXw9d2FQi8DDeMYzm1K6521PnDZJf6JaD+jLjSt3WyxT9psz7w9Ty6NmlVFmd+BBQB22ij9llnuPQz485YPY6hn3ZjzfALZWN+hcVT5Bd/pYl4PwjFj+1XLOUuuB8urQaV+adIzL+XItKjDpFvXxvXmQZ/A7pts8s++ze6a3H/CPeRmYv0O/vq7nCe4LC+ZjKjz5dH6D+J9hXoBjEdIi3ipJ66893eP459kTADNDZy7OUH+HlG5pQXcrHVHEuiH2lPrEQt3MEWaPLe/sNWPLOyRpq170ALpTkPCIY6T4MGl0aPtT+ZWmSXVz+Pv57yWevQ6g+TNthJYY1nu7xoCROj44I/HAOKAhfXEVFUn970uVZi5kGWL4ziN6Al33ODkXLX1xG0UfRo1AEXkLHDntFihalBV01+0+y6D4/ja2uKLqqOABtu4lHTfArVu1gHPCeg/xGhDdkbgAsEZQBxQ9fEALsK9VUaZAAaoFNT53ITIwUSqArS2pBVAd0WqUJqaAuqHbP1Xfh3td66RPcwt+4p/wuoFJDodHDWabGFcXrfISYDXjI1HOFuzwqQYxkK1nmwarTiafAte97IMEdeP8wHLegcPzBURUe5XoTmZ0LRk5gGowq/AlLBy21I5ys/ErMwWBoCt+JHNdu8ElcuPIExSbXdMJW/HY4/LE6vWxR+t+E7RbrnF9d1+zubKTTi0n/OjOVu5wrB6ZNTjuxZA6XA3YDmYMihOddYzI/vQ+TslDf7NG/V+UFRc5iMbBjIdmmBnZnV5O5xNsXfLtwIF8wnUnYZ9pgKV2eiQ/Sp/17QCsMN44nAGk40jIyCUGEfvhwQ3Mu9fp9D+anGlYX2KCPDkRkIPcWMWRguRvISOKfss7ZS0ciYER+T9r7w6uWYGRzujSsCheUZ7kcBNKAzKPc7tE+rwKWs7+sxx1Zz5QfCGD2afA8s/zn3B0yBbJ5OWDLblcTHRu8j0VJgaWkQPPUomOtUpL0ZipxMdW23uE+VbIJ8lXqGW15jcjV14z3vI9yzRFvmYtKigYls0f6c3phdRIXZ+AvMjQ68HxHwHqiqsFdh2h1TWPnHt3FH+JwU7F+QbUJYmDgMY+mO9H4urcTlz03BFTNRDudT3/b3PV1aH2o1v/BUw11JGJDtb17MuENSC7zngi3Oqa2N0NLczcNrNDIrrUfo2B5dudE4pNDjxOHCanO5YRLpdsNBkY7uzFIQxLoBw0HY5MYNEjWmcsTgEW/FP57R/JsxoYvWPKUXXHlu+Splfb6Vq59Hc7LDRtKw5WuZy+QdkrmECUFFIvnoQ7jIED6S8fUehukUDt+sQDFz5Y6VIzKoUEPU/4GSSP1a8ix4b5uoIoKHPglU7GopDOrHNdxgsKfJ2/Kv1xQZR6uLVwq07l3qk+mYfkJAaiBepprnHdz9t4v5bHme/M9z8ebUUHVxACHWqKY/DtKG0BNowSmuiD/im3DqGs3r5/Id9Tly7gSPbAFvoXTnjlfbx/YvgiyzCbst6ip1i+X/VB1jzBMO9tefbI6ILU6bCaSMCVmaDZ1/DPBiXMvLKUnb0XJ532t/NtAdmheodObz1DW0uAH+uFloRt+06yj2x3J5JhgHqS++LcRpuY7zSfGjYBKE9phuSq2eP2MhDq4ukTSNx6ASvKKeKbGAjQDn9UHI1PbjJCeRm2zsgHxCkOZFqdGR0DMsdX3zd/yzvVtCfFR4oUwfEVvGB1VC6fXJXLuDXI/xsKp60tz77zeTCtiboejVDasImYsZDHsnWA2J+vC2xpMCVWyigRphaart5YhImzsppwyAsa4NfPJrbl0i79LclemxzaVxFLFZeX3J7tF/PdYpc3vMK+Hs3eC/ep1UC3yTqOy/niGQ/wL5THHxSLTSlxtofHbZQOoNPNnJ+uR++3NLbKXRFEEXpY9A+wEPi3ZdgPVDf1ds/2Bcd2NqyJuPV3mOb9kzvDCjeIj0a8xGpuKJGBOMNiyjNaOXu63hPrf8i5DCdLIoCp4XsAGOrcv30+jF94UuaICr6hjz6YmsLuuQALWUCThPtj2r7Qzgr7yV90N8jMcLCF+awEDb80zm92gEXF5OFenQEkFqoHicHCjxZv3RMd+ncIHJQX1aW+ew9sbys3vBKHRdoLa/8nOFCEmI7yWwPNDS6u8FiX4smMdetKHxYgSqMJX+saPu6JdcD65dLpOAkEbtTJoEtMjvoyQQ3g7nhWvFjY+Of4YITzQdWp2bvheJWtwWvQlhfFPW/KwjPlH76dPKaoHbd3gOIs18oS4WbEz6mTfgr/yL1kjCt75Vt5UK1120XHcHbMMP0hB7kkzrJhGHaHaCerxJXQhDmAOsrI4GDToqGvl8Qsq+dsnizIL9N+JE+mpTm7Vi8ifPtxy4BlsUw63/z/dr5FY7xJicMZCKI6G5fF9ltS3fGzWcRt3Bmy9RzkVESVzltc8evFqOEaZu5HzlSBg2GUuTW/tJHoLcjF7f268571GD5//WdflRUIk1hwg1eDB2MfTMOhZw6eny3MXpaAr28Au7GO7AFxQREEGx8QlAipH0PO8CoJ4idmHo04IHp2DOGMVcHTGhAvf+QU8vlIiIfIMjNpCl7vwKVM5s88uoPs7Hd5UJn+0NEbTw+iTkfwiRl96LRHST9vHet1eXdniUX3sEiS0na+ci/BoxZt3Ck+iCzmJ4egJkbblgYQ2UDecWydhiEAbX1NfYbnRg3gofjf46lpqMQ3TLME1MWBEsP3QoAzmCS0rNo39HMgvsTmEbot5bYwiboT728HyVUQtzlszkkRmo8cZunlJ8Q5IKe9DdDOhTP6hkOt+GY6VSfF5dtJcmnCDGM6t24Jvhq4t7OL87YEEEWc7rDyL/OVveYbV/rlceVyn5zjW276+I2EB9ebUxTCqf75Jgfx5clfNl+VrPr+q5gx2cBAXPDfosbDKW/JPIA7kjMXRwaB+wN3wwRu+mMWxGopZA2+26ljrxS8gIPSwA0xKbkyiPBYKbXbgeC12efD7+hfu/PxE0S0vGDz/oXJ/Z0scL2V1Mc4wbEbMfuXTCC/M6vhqGBDbM6BIXypjpY4hVSgTd0exVcmwtmGRV65a/kTc0oAI883MVxVP1KZH9aBRYIKsnaHgVxiOloxrRUWwrPWXJXl23AWZvffmUrOCdjQMAMURmmzXl3OW0KmaTBwy32QcOwd838JA9kisaDZD/bSSZ5OuRysYv860oX73otWW+vUzY3vu8U+a7DvFn6QMGcVoAWhSJ9MbGc/PXk5JYDdyc7/A9QQYBBf7kRKEnE6ulCAe3gksiEGX13hs+sVPUJSSJBCWD3ZU5t/FGSq/pPj/IR6dow9zvjI9yHDzAqba21qdLMAjoe2DnUwTwgSy4CbO5/B+npp+22BbfcHz6Y1y0MAq3Na+9PF5DlX6O/rUrbgXtrplQOGwydS+S9Z5pQ5M3zGO8ocyQqjCi8UQ8qZ76aXJ5GhzUeeFNpfsiJbPRGA4qH4dzhbcZ09gy6g9JMxCxmwMevijE08WFPossChQzsYAmsYt/Gs93aidygybyKyZvQZALVyD3xuZD7agUeNLFrN/5zDAcoC6VjG807F8vO0fY8AwQyojSgySFNfWSzaSOmPkEAIhin+cpApE9MBz/lDP6Xv7Tyw3AKkO/nbsR2oMnZXbqKAeifBhrc6e3luplyQwcnPpdcSVCbDULdX+p7HIiFnLJnjzjyhug5pk1aDL++Tte6REMcLvsc9d0NHlAxTkB5DyFbrnhr2QWboTIYK49lJVmGW484Z5cmPApj0tIW8l3ZKbMrFAqp2gFnXBNYJB51SnQbAew5XdeP0z5cWz53zAeKRpgT+swHKi7kpm8sLc+r6PM2dVbl49OiYxTjpY2HNBKLb86CpmU1oC5bTqHnah5+CfCY/tiVG1wlEG1081xts38G2PwO0X0tlxTB+fz37QPLrMJJiLG/f2ygHl9UimUE5hWB1qdEAIvuKT/5SywVNAMLBDzfycYYOvseL5cII6RHwy0kDQZAXdPm6tBJ7hC+HyWAD2eUf4/u0iPuq1QxJjDusoNBnpwuSzLUiAkE8sldEybusX9X5LXzG3UUnpcW1veJCdzvwdXifCWMXoKvL4O+oCgfV08QdIyypQpM0T6cbkRHnzroTZ0oAcZIgnIUwrB78bKcOkh4xRLvTlcHI2auv/1aYk4ltSjQsoBQw7nSxQHQ2yWQXwB1ScrwwCDqcXCIMoF2zmSzuW/nhSyyyHnJsuJpJqgeMVGXMs2v19nlNQAJcRhdTivBA4Adjnji2wAg9oWJTlZObJ+jCvFMxU53fHEKjPH9KK1n39PCqLPilZyzZwvFnlnN3CdkffnK5n8IMYoXEkUcnFL088aXHRernx/53ox6rwg4gbM6I17JHiP3X9AznshHUotlcvI7hAYouJ3ujd8artZgwF+ROkQDCdX4IpUMEwLsNazo66nPrW9Z4EXT35S+6tyhTM6yJZfpppiGMa8o0/ASA6t0piPvYITzKzBIQSeMKWUskgaRNtqil/qRCjtO8iMaKPjGTbEWKJ4RfXKnkjieD1Wz+sJsLundF121UArqrW8w6PTMVqMlHRlOAn/VfdHfyxr/5X3mhghjlZX+0nGFWkJQOsCH6Oymyam9OUZHtN5xtKiC6ym0OHyotLizxLVNN8qk8ERYu/En90TO+puOSrQvCbd75aDJffnF37/l66M2KiN8B14PmS+DXJU4LZS5qHN/zEaD1qzxeh131ZHaX+mLf0R2fS9OlHOFn7OfaxlhewjxX1+bMA/Ibye/c+ORNCJixx78p57fFkqW/iHklkIBmcA6CywpQIMqvWiB6WRkqDB4U5rvRFiYBoRKilKeV7WvGZ6op/p0Ungy/PyIY4nGqCET4VgE0OC1N8HjF2rOKhJpzfXjolkdUrwNBsNMIIFGPLLbHgErsulZW67KjAbjdJDiZMiV8fKwgAZZJcfB9tIQM2U/OiqDyQMchA3d1EgxZoDwEJB8WwwiRCkzLmGuSM0y/f7xBiMK8azmGbuohmOLcFqChT5HnZlAV6PaJht76yYMzjY2w7IjyTd3KWGUZJ1JLsdxyrh0alX/+w3xbwZe6yDgbRq4Y5blT010ObH6aBciWXg2px+rVZ0VAeWaaWJRLc8GXUAP9iC2xbxON6ykajCujB80TJaiOWpsVFko09xqxcAO4t+GCLxmhnPzzHlLlYsDLA3Rf4znMQDTYKhXAgz8YwCiA3C1ndAYh+KWYu7MwqOTG9LHROvKaFc++aRQ8eSiJx3ih0sI/35cEuqGwwwfq+vadkfUKcfmu5+LrkTqnztYcAgt0BVgsUm3ag3izYJX0b3G9/ZaeCCFLnyjJjrSIBWE9Se7gwEX3XeXkqJkYCRPXxIDobj53SThqmgnQjXRwquv3FgvZxtaZnY8biAQ7nI0Oj/lHtXfHfb3C9/ziMzmHi311v2xGOtrzyucq+rwxJGOQZOO988VTaDP91MxsG3cUd0MKsRc566Xt7oA9ZlfMMfSkTmFhAJr6Sm+41023AFnNk1uCbjRFU2pEk1IbzkcLub03nZUDwDXNlhPHAgCyViZfbLLj2pSpde+OO6iOnzuAqi+TH8THuvlSJKBX70kOAaiafQ2RGR7SO0ZvRwHa3fxmLURdmimAazXZK1Rnf+WncO/GhLy+ouJcug/lJ+lJVDZJl6KySfoW2UKat0NGa1QG3dGMQAGQak6fbeDoY7GCp9++jKG6Zr/Vwbsgd9n9BlHv+3cho1xwDz53HO0MIMsLpSNF3taQqhithFKDK/B+jwe3uxWdz1qCvgX0q/oZr0GzMYYkm13x1outgRsXQmhNw/zhh+2uPy8dLFtRdCflar6XR5X+2bZAUXYSb+8MxqV9to6S2dccAYPTSArFZmKcJdoEVLyJpzLTLvbqZZCiSZ03gC4ARS/E10i8gQNi+RgzjnUUEFWYDdCLHrTDA4T3y5XRQy5U0ArSJLZJ+NTLfiieYFgJo2kIoukDAvAIfdlacilOKoGoStJqTgsqjvCGaw0Y2qwIvfBsKNDi7pcgb7jHwAjA/iBFIkCj3TZN4Od5Ze2ss2GczH1bgd2e0nYKMtThoXodBUlPuTa/aU1+VlLwVk4rZ+SvzdMgbzYiCU7cFp77iS3xcSO923f8HthAJdUDAziEga0GwvtUHL0d7tEDyBT8f9Vuw5S6lXqlUer8RTtG1KrBdoD1WISoDHq3B2GZIIVSuOx94poDLJQNG0+QaV+12sJMG37Ti6AJIfoZSXg06vu3yEIfDJpUGETZtOEbu/e8eNoeZV/43mDzpXboFjwYD3wfRQU79CyEwoXC0EVHZzvSKoWzviK9S0IPrgQ5teGCeYJ5ThGo+V0R6xHpXnUmH2h/8Z1V2NbzYeT+YSZ+Az96+OMlJc0cA2xuAiQFBkogXl0XgASo0+0J1+ChUqNTfDzD421v+nABY1kGwg7iBeyf5WOdxXzH2qhTgznyUSt7lccbeNzrPWp3PmV1LvQrut3LM7xSnSK694K7utDhOrhbnBj48KSQ8KeqSd9IF7PCt8UHP/nTGQsWAaAOCVEFA+x/IlXwu2IGy70Tpg3FVMK0nv/K5y2Lw/v1wqEMTz+jlORneNZ8YkSi9WWK0BBH9ZQHMZ/80lY2W5ad+mQ1Nb9XzXuTLzc/EnqRshsaPPdUVthFb+/TdEdihdT83HsW4oumViQfptwRffND2QnWHsa0px7TDrThrmtSu5DJb/ByHTky7L9NDcuKKI4ygCM3T8TMB5erOUnk6ztfO472DN7acoVTIw9RvwPA6eGQFjuS4yeB5S7OJFdRqxC0LcVZMfg3c0eclDNBQHLEoeDg0guik4YBgUqzkekMMDv64AbUt5gmPmU/QPMz65rJcF0mDJIxFe2q7Z83WMltoW9Ngcw10YjZvaGThTyNwIN75KsOJPBSrjRhEPd7kUJ2cmBmazxyAJ0+kPypIz7zWZ9zI6IuGzVEDVFwewUeAfUk3gIUIzp4B9xMnFgGrF4OPs6fIdvTIjiEVGKepnItmlhG+WY48C3nX20UjvDMTHFQAI4pGAcOAnhlVvTkBaBDZgS/74T0Cpcnarbn43pucyGEGMTs2D2NR58q93uy5KUrhJ2aGy4HVJyG+SSyUm1o+dOCG3WNNArqD1DMxQ5xX3/HrBwfhMzkxUi+2tri7k/upG3D2DiHzzpRmxqNjJ2uSHNDx6+61k6I3PZW+UKnQjRn355qoxygeoa0NUhw+xXg+K52+/Awk67PWQmGQDuhc84LUxOGKXyPfKkjkx6ViTHTtrEzSZIpi2yc93qQdWmTLk4gff68f8BgpZy0v9/u99vkeEvWc+u3rWN+NNOKgNMCzr4sXDA/jRUFVf6xQpRabcKDDVUtY1hS1hQOrnh2ZEf9khODaTYxo0gSRFjX9/LxfJC9pqyHiM8Ri5bpz9WPdL0DZQaG97esuhMS4fUDBCe2JCPAKb0mmRVZ3Fjxx44/c/yrP02QTlo18gDW1ClNEx5pYgiaHkeVrgYMXz/tut2RYoPTZUtlQboOr+Tp1SLi0oQXLm8TvBa8psl7z7KCQS2R+LrEWEUgcB21KhtSYi9ZmkXGC9j86omRisgstzrOHEvSCrwoz7CFxEdaW1SaCY4FLhN4myuoRibhiaw3+UXQetybhWsNlC/kMGB8OsHsF2LiOHwfUnSx5TVowNsSuYLzcs2cQSeoTlFuprxvQTEoYS0rf0ZipRU5N7tzL9Rv826Vefc5WeIuZMEYSb3HTzlqbye6OtNFkmvkETzf3Q3QV2vODd+5+aW0ez9Je85u0rlhu99v0QtMqJkVHZVB6bJnO5wbjtgkCBwibPxRqQyFKPVILLFzaIszjpzKBuiZzH9s3jz/KClxY2ULzHruK2y9IGYQT0BeOndpdNxTHrtJnW97pqjSQLIzBmZp1GEeQL1QaoQBMb09T/0FscyKDlngE8zyygs44EvWlkTjqofbCl70SMHqscFtY6DXoD3+ZrOQ3rb9CKp2m/6/YwFCMt3yPDv0KiCPpPsugxzJZeMPCzo7iYeTO0RkS22e55IhyMd5rEhPQvSQVSddFMVaQ694n6RAfq5IlJCnuGlaQzS9LUFo2JEHTqVuvTzT9FA5crofDCXGrlD2XbtuPlHQ+N9LVBWt90bZZWi4VHYDILkT6xLXZmk5rsm4KtqqKRUcXYA3P9Lar4CFyI6RjRCAZURZYQNFMoHVxSE/lAUAYhBdLoRwEzHaPXtcuhV8w/BK3pNXIYKU7hFjfTASviNaocBdWFQSqS/qlyfKaPyQq8/sd0BUQ3EeSxrzATe1DVIJqBmJ4A3Ba0XIWscuK1QoD9gNQ0R9OtiEbtBtRvDC9y4f5zP/tcyJ3e7t8ugMm9K8MJSIrV48fwGIby3FM0BW9L33esjfUSk+gKZ6uLYpA7iltDXy4P3jAbdADqYgNtz7IvJ/ZAWIiJjekA8PPDKig5kHRS6NAQG+blSNUEbXCET/SiXESbZVP6xVX+fr0YEhtBeRcM0Gf7UTfNeMi9vEc1ogN9irNodKimA6m8rdD10UMZQxgvluJY4C8GCeXHoAdEcHg6zWZzspIdKYKP7uZ5mKl0UyGJSZwWRe9MIZrKY6mezoLW52EwxWFsDNdJSyeYU3u40wT+YxOPthBopCvHSO9Az5pnoj37nrzhFvHGjONKCtgOHoZkv/NFKLCoiRkyqcVNuvM/iuuFDr3GZUVQTpOqPoouKNCO5A2wYKqjDFJOJWxP+5leOUBJBKy/gczNeQzPvgdpQzRYgMvlNAXlzq/FH2fp0scJWhev4D/GzoDfBkI99iijKZkOQzmyBTplusOWbg/A3COq8esG4QztE6nJ1S6XldMqBAV2cMj3NBJ6DdHqEFjdaIct9d0LFxIC6FpLpCT82gOEGP0NjjQ06uDUaCwaiVp+hmCkQvsb/0LOrCZYNiXall8GfJWstQwJaSC22sKSSVS8NRuZw+xq+ZrdJmCUMwlI5G4SbyEe6wRh1PZxBVjw55X6E1vPp1dnkgrhYrlDRn2Znqx+e05StqfUKl0e0bBWCgp75bx3ONta8qDw7xlPATCxRrz582wZAUcYSZ4eziYxLhQxyXvcidS3iOfXAMrh7cRpL3e+Ld1UoSfPVrqvGljrtA3WnUujb+Ax+v3Fu5meF9s4E6g7sE//Dej6Azv3cqj7oziREjPXK+akzQZBQPBipHlE/33BXpY3irrwFna6ptGYzYgKgVdJi015uIO1OsnHwlILhELOnQ+3ByVPF0jHRgEK5qWRf7MdqYRKE9Rt8jpGoUs6m6qUEu4Gf1ghLBbQXM3lPC2EfBUCX9k0YnINo3HzBUBrcSpxYUP/Ek0iUoV1fsJ7ceLUGZiULIByOPkN9EiTigc8XF2z3oDKEMhWux80wUfN+VsAaJanDoVjguY1T6wGQlu1dDPsjHY/kOVPIV4UPaVz+j8dhAjgOen/+hOXhqRK845HmGxGZDOSOI7NJ5ozh6WbeOcz25QW4LVE/FdBGOfrxJV17gNySdztTGm3bb8utsbaUPVoT6xzzqjs1Toua/WOTixw6VnbdZESLDn/ca+34bVVs39zKDASSmL3SszmQAM+WSwMPzMJhUdZKvnh8zDkfQqA1lPOIFxHcSiOlR14m/NqFR3m1j4FYLwKWFwsXQxlhQFzjwlU3qLQO8pEDF7M92gUAsxXrlk+gmODYdpPmNnShAF/j4ptF9RATfdxs7igGWoPQBOc/K2gLHaeBhFrmyu1PtpNlVLOWso24Qcg0rrgXpKlPXZRi4BYDqdnbwuQmPFa4uO/aR3nWyv/gwBqWHHqLeMjy5sl3lG2gWag28g3H5l4dIXJzLA/h8+ZCXwjMPYnpN3fJ02zUBKV/jIaYle3jfZqjz2hGqcxGTPYn9wF9j95bhHY5bCtIwyduJ+Sfbbxu5YmZRcVxm0zdwYptNvvp3M+fWfLfs/kbl/SGNIkM5xCXMgdyKsikdyLZUJOCD4+IxoGHwkPqxctrnDyrNbJbdgetNAIXrSVgDOpVqK34A6DZeH4ee3XtTof1pwL94L3gXBl8DbN2lxlkBc9M+uaRzDYVdoeWurAvnayYlaJPqyUS5DOkegA9E7bDQu9w5tmOq4wSViHWOoG7p8bfse3vKCCmgaocaYvqdPRQEeTupowq/qiJ8ZhAz1aIJi08DAvIpAXwtNQFW252AqZObnnnfNQUtGy6mAiTnFADNSog8oXYnnaPsn3L8F5VST9KDxEECQBu6J4ZsS3a0O99dTluiqiT+x5izMoiIpXqIaWn58z08yD9m4A4JSJIoW5rlZJRBg0clzxFKDl1sBGcQ4/0kgvyS2BsRw5wnLF1DdyZy2XDhR45CHVugA/HwJlHPP6Rz94XoxrlVLbOVexAV7SAJ9d8NS8HxZp3JAyayYKgYH07VMC82zMdnKLue/4QuT8j+yuHyB2Axhw9noQ76RjXw9khc7TPeaIB1Z7+Wouc76FdT94unKhDSL4mSBSpDNxPyHTsKGkSOB0ocFfsBQAtM8/xWXb48IzcBq7WCVCVieyoYPCnGoVbTtxcUsi94lqxZlDfaUv/Vu8xIuPu1vxy80U5cHM04wvaXn6xJwxloom4LyceCNv1h5wqaATmqRA4qD9Hj0mc71kbCxzAF/BnOfGGzRVohgoTpVnEjZh5QYwnsEjXgbPDWqGlNxfsZ53RO1bQE9zmgpwYoPEtnB+KsRkUjaz7rCYKrzas3Y/d1JNEy/oamhvp5IXSyNNxABRnbXNfu+NINyOS5t+gqBCpHfrxadPEdvIFYSmV1jew08SiBniJnFzMCn4Haofisj/1Hwx8U/yRM7OWPb/o+371dwBdpA/wFU6T+Jm3++GL3j282YXz7gnH6TaN9PEv5v9YZ+XWWUqXWGZn+XlvGnabJPPlns2Iyv9u7+zj8ter3v8Ilfnv4s7EXgq1xel65oJd2dMu/94xDefwH2aVDgqFnKI6+6Z5i387Fl3TespdB1FBxcMiGD66YuI4D0i3dPWQVQChLUHe3HBjqZ54v5jmo2HhwG9IRgZQXZ6CarzR1cOMgRb0/QhFNF0DBAA5tKYxC36Bc4tNZkj9Logz3ibVplqo2lXrPopfyoESVaL7pii56LuS+VM8vab0Dile7Z+uVv8k3KiKZZvhWO6TxkZ750/dnPySy5YqxOPS/uAiQFSMqypLO6y7vNaSOIsCEtuh0si4x2Qb+JLsk62U6uwmKXkvQlPE2uHWBbpH0yk0h2BZSfY3Hk6va5zW1K6yCHchura+v2BscWdbLClNkeElTt5SIHkbaG6QfxkfXw3re400zTYdO+djsinQ96VPiCRCI6TpIsvHJtSAdVSyDcnkzWrHDZGno/jfjkQtOO4zXz0G8/uQT37pYB8rAHilj8yo9KJe2YaCXmFu4dYRpSc3DueTy4C2lIH8lQ4ZIanyJ70rvORdLlSXDc3Xi4MucVxqdfaeqx27UyRaDm8TXKIyZ29boVb1FS6oZQbpAIrJWWANR9wHgha6JwoAaWXv+xK6VyTAjCofvpdUbiF1zOl9S0ZZ2GHcQZ+se6GooAqhEv5NQIOkihxns/isTVUDO4FnszwHeP55EF22MomsepySKuebXG5oHg0cW3BAqO4SVjoJAAvtI6fHZfOmz2NYk1+kuE8kEdhmJS5Ix5JR7/HoEummpzWzOaVNsednTEdMh8uUkzeh4o4hZ7DxuzoZninvV6iTo5tedgtTQULLA028UfWbI0tuD5VXjnhtYcS3U8fp5bJLJa3dhx8MQ809GkWuiwV9YjmUb2OlB7aTU6WAs++Hg4r4G9unIksr6m+JrtTS7bIkah6CgiJOBZEHwijN+0qfDIFV7OZykdmQIsLu4bgB5Cv1JYyOjgJ1piysFjCOsAnMi0xBu4flK9op0aHnNPBqsIQGONgqIabTn83KMizCxFj0yLVg5fqtihYEV1F26vbdydWLqvbUnqko6lnhYFwCn5vaSczAAppOwZgqfXol4U0Ewv8m53lZp8pMEAMupASqCi7wtKUn6Gsx5kF/A+mnNS8az4TgkRGycziUxvonbgtUvJyY18bLLSeiFearRuDTE+UWouJLWREoia5HM+JV77KdcIUn5urQI89rGwxKLUTvDjNo2SDIARMmm8kTHGSfOQ4JE9SKIeOeqpqO8S/KTRorYumNsSXY7Kg8EoC/Zd/g4wLdmWWAQncJ6zRYUjo8AWRQhsKwE28FFXJucF1UIxW+yG4jBlNSKak6XHpaIraa8O+NLYkme3XGHeoZeGIXkSNQP1SAu3vqXmCnBx0v7fQEsin0kzBhEONVKkh04tfP6WTHoBA9Ic/9PrlxJDGv1WVrd2d2RHoqzMqF45tTAbvbHWgak5bLxc4tyZZDAqVwW8afPhPtCmDuYKkPtJgrM3G9UUUGiQUOkQ22z4sstnwQ54smbk9l8iHBOR2FnQe3WxG4NfLnTnGnurmMyyI28FwFuigX6XrgF2L0xmSgDudXzsNIuI0Dfv4fkMfetOZUlbDVUdCbAhmVu+ysmbgTZ49UVDW6W506A3dV3nCBwzZeWDTlWn/QnIWMihV09sD6sKDfWEz+nhX0hMA7FXIln39qsDRrH+o4LP065pXHuFdHJGTn5bqdtAzzxhLKQPVeKjpIg6l96SG8axsiZj2rFI9C2iSmKmizQc0y1AHzAwGFNULm52PgssuPJtG3+HHzyVyl6jZ83B16OqDIw96RiRnGd3GskjfT9tqGoGAvBP3hp2YNOwF5eXERbM+Gw2JN8pkiZ72itbRmFHAu5oteSOSWiKc0NO6K9L2Qks0AdLTAVVFd2dLgxrcnkEFbGpIHzlnzqOBlJEvP9jFOSfg5YaI61Y3S6nqXh4Hh9+x2QC64qR5mjpGjwL8mRiJVTHJXMjGK1vo+OpsrN3MGclhIQ40vPdmjobNT4q6My5D7Hi/adtcHssHeZwl2yK0PK1Pe9vZK5WXCz7K1nGUMxd2hIOFuTzo5IZn/m+NuGVhKrJKm0a5aIvZLGMfn/F1y57UMiEoCHI4tEMNSlvlG+iMyEyA2QU8+JOjdOUVVksPsXzl0tqrN8+5qNFQmhHhYArpyhn+iHKgOWjmR0m7vDzpgqMVf60M4hpkIwPGZ4mFNBTUrM/Abe3NnP8sqV/p5hKsKkk+3EGP9pST8Vv7ifXu/xae9fKKdHEE8A1kLSrTE3eBOGBbnIDdQybtEsXS3vv6wLOKD64H9YiRfnZ54oIQdmNQbooEWBPYYQjWgKYBRpR274rnjoQjKWqeKRh+xRyy0mHU8XTU2weOWSoQC2T2h7Tnele79g3tVxV+xLEBPzLx7sSm5sQExjzCM6e27pEEeYaae+Tlj5cQ4PwXa4dGZy+/SMLTSsdDqirhES1k5rCmS5hkQOKSYvrnRhflfMjLiqKxWTFXPH/JmRFfNY+xIOI8zhHvnD+9bN5sfNClFciDp0oUcqmJ2oI9FBPeTkCsfiaOSR+7JkzPx5eD7rNKkSTjkeyh0C2SOX0sP7rLCJWJNhtgO871xLnjQJYRzRWgOkkGOMyx5MKR8/1TMeqHSd2AFS4YkG/xgIFpqVKIDNjLY1zt22KvBQvLHveNamdSvYae76dN5J/vCj/PQGL1gmY3mFv+PVGs+wXmyrsxw5Nm5LrEyveBN9oNkHnjQiUwDC9Jp3hBOKvzLBtUUe86cznH+rkoy8lv0a3vJCCeEKHzp0eoXtNsrQijl9wvSFLVFBmIyEi0iRI/3L3vmxyUE22vLJ9mqraY4RJVfbXBux9dloSk4bmxQGcsnx9GIZzczmgzRA3C97tppPIx4q0JkzuGQuGV3Ww6XD8trQLhFnwoG8kP62Sst7w7bJYbZfb01KNfy6q9b23kVkeZ0nWZOQqcmOvC2MjNMIM3lr2kjATa67wtwqL6b1vBcPrujdmqY4BcNP5iktE2Kv1j1Lj2R/oU0DxWH5NKVcM/kZWncWI9bkE6s7eMAa5T1x+0gOVB1AlmbqjW5L85xO96MWsjV/l5E6IqczkB+CD2PGBgKaLWRlPB9Aalu/CK8v8yByqUGmeGULa4Cv5CWFDQFcGmWv61B7iORL0DrOJgbkwK27yazXXo8LUK7LZKZuQdfCiJB/SJ/GWLxYsjEokw3N7CBL77OPVN9ji2SQLTVebpyyjWlMFKYhmawtr9OSeZGf0VldpHnoRqXE20aNTdsPZ9bUchiUN7L0p0tJYz1YFQlqNYwOZfAjuIobZNma1MzuwoVZOtqThaj2ZVugJMIps22R1vZMr3hxM2vwcMVqolG/qPjHD8ABrqYinpwpKSZ9ws8Yb+LuAEtFVtTH6IexIMfkKSa/CpP0tPk0IhntYn9x5x9jrNxtQpbu9A0drNsfjbKTmEXVvm+phkaFicHM5jxsYJlOc/CujOfiqlvau+wPzjXqcbsLlInWrTKmJ7OVjNrUMUdoFHH4ZOeN8W8ImeaQw9HKHoB3T9dPg8T0oc1KQL84iA2gnGXVUMhk4UP8OWoXzb/TwWUz88MMX5d3okEVMb+EaEtDrnuEL20K1btqMGhFLbCqXgEia5XHGOluzC1PB0zWiEt0asZc5khXhNY1MY77IXx8U5S9zNE1GPh63PWZplCXoYYnX8TWG4NLIsLXJ50TdyMyzcGOhW65BgMtMumIqePnET7rk/QDaF7HLrwWvUw4gJGGPSZvyKFNw01DZGfnREjNzHRQOkOa+PFzu+80nSCqQ70XevNSFg/6SqmlFDScbJRXnc0PWp6R1RkX3fohPAtcbukThRzshy14GEUiAlfvBBqY/VYcOkOZoRrX6B8+C0nVbiLewjKw5wk0shgGJ0vie8TRnhnZuDjLuBkVo1bVjl4GotHsEZYzDJYaqfWB9jBMCh16cantXs3dEHzheSWad1HjgemwhXP78ihcHp5uc9e+SZge2dcw4srrILQPaBt8nJqp/Vl2AoENCu5C6YUha1uWDcGcWKZ4M1hkB3putKt8EKw0EtmjjpV9s+WMLcl6svhtdypMGJA93G66b7z5WvbOnwsAohgpdlBEfvkDIZZtSSXF3WDbtr0yNB+sfPE7+fK0SRkm/YKs5REHUYJf75p5BmWBKpl/3oZG3ydDm0un434fIrH1xG3e8ilrpzeNEl0h23q28F3pItOZTDz7FIe4Xktn7cxcnJmxMnPtykHcxJhxjJj2KYdb3pqa2ODr1997+uKtGX0R3AfyJiTWv6ia8KdFq7Q/722FHEOYz+bwnPh20nCTq9k0F0rWHAc5i4YfjIbv3JMVv0JpEiMO3F5h3uukdG6BzwFDeX2Zu2NncBAPBv1rbcpssaJHbEM1JwAFldYMRaohykzlLxjiqIXSEXlSgHIHOTRh/sZpyG1zB0WrmnPJLYXoZ/DQxTxsQ7WtkaSbh0FCbsJPMrMmWYPS+aXcNqCY+leRDSslCF+NRgb66n6G8mSZxLP+EDPgXnvedf4mUX+pYJQZ3djIDlos37KMRhb7pN7xHDn+HoZqEUkXw5bYFvPN6ZlVdSUvs03XAJ4kfdRb67VgxdOd+cHNNf2E72M+WDmTAOmm9oOnH1xroLTrf3YD1LHmYk3cwIKp2+M+nwOSheFvcyNXXcRTKd02bmuJlrwE8HlQrNZsfYgNX0+WdgL+2/SNeUOfPHw+b8+uv/3t6lVg8nrPm+p8c4nfGz6TUEsWf6GfIljE2Qt5/UqvQdX8tQupJPyuEMw2cupSQF3tQFkg0D6nKV/9+Xzrx/pyPMUMd2lRVf4z+5AvdfiLQ6v7a8e9oO4Aq3pnMlakue2/lxjwxJ1e/Wb54C92+XZztjKiBc5lGi2fZNUluVz/+pkOsoNmXxoSWvUAPM2/0Hen1hUsrJqRNvaehQ+QBsd1FNPWSwB1QkVp81rRpyPSBLPS/2JnScI+AFWnYId8GS9JjhRSw7M4H+29BM/4eQTN1YAASUYBOY9kvv92SfLtHhzSiEAT/TDaPbWWtqfSo41gT/lC2yXNt3HIpr/fj1iGn68brnP8SIgk9JOLiHyaFMYHyMwBmTWhHGQ9AafsP27h1kVYERSWzPdRzJaVWYaHAjtUwmELAunIsgVIltAmnWK9lf7LG99u+IdvAgrm7Ydu5pY1hhfbsAr/1lQ7PTnaacstnyCi/rdIpZOP1/I8UCZ7XXCebMJPM5dFfW6IbZq/m2fkH5IYLmO+OHEC+GEM/0JSyZWlCLjOxQxLjz8a2y6U7CmY0r8sjLclnPiREQRycZQ+gwDJwEZFegsypl5RB8SzqLw4+YRK+z8LlJ/YzGQAtX9tlDXSR/35BXDicKKqt39u/qVt9xY+RIMRxsEcZ4Xeq55/TlRNzBa84ytIxwcyFq1pOU/dHDOPeOKJvPcfOq30BwA56b8ACkq5Fm5F0dtb/IaBAET4wa2z4rg14pw4LpMQCW+8tc+eeFwzx5G41FleahFI0GT+sgJxOWwxnxtjS6+zxhUASGgiCy+RTgA564SnxE6UFZ92JMu6E//Z8T4JGXPAUiPkxx9CZ77C4nORoDjxJOH1Qtsdhcq1ALeHO4D6OPuSLGYGKG7w2/0X6rvv4uo2RirLxpT7tdGoN/aaxjXj6lxyS2KgfwEP6hVJnfUZqqRWZzXqk0YzAHT2udfVkh1QkMyMIXTChcLiyEOd5YeSxevrUmE0MygVSJM8EuBto/oZW46cfO6xGWbyecTmAFv+wSbPAZzkOBZQX39PT/GVBiklZi0IaW/7F30GunVFHudqJTM2e8usnRa2S+77ZkorLtGOHghkYhTw/0C0iV6DajjI1hl4kJ3xAyTsNX+JwgrWJPzwUxKjbtyAzIDDlqykcaxg9qXuIo8Wqd9Z46yeH8YPHi/ocO8LgnWzp9sE7l4655oG/lPWDUsj/IlDgOaDfy0Q9Qb/FKdmwHvIWRlFx1ACLrsfs7KAd5OfQFCfnQCuK9OJzpu3AdidMfeEPoD9vzCBEyj+hrtRRmvc22X6R20oPoPsvlGB3UHLVCznuLXi0VK6H14fC/OEZMbgmoQawjGFy2P88bDvDTUkEpOdi+0rNRixgTnjsX7eYteftTVU1XAxmZ/uLErPKO0YoM55ic7neroyKTC3qFI0/XXB0cZaXOk+HWaGu1e8UcFglm1CK1Yr5F6DOD/CkOywTjZf/o2rz4efhK6pCk6AGMPt/1VDXSnXAz6HiH6ywMmZHREdrVXhHd213eu+qn2uGhJxbkxSEtEFIbKmCUG+oI3EKed8PntEsM92kPX3u5DvC4zI96NwS8RSWAobkYAqa7fwfs6He1pRINxEMwgS5pDaX9wrlxec9YCHKPWtglcDNUudI3y2ytc7PKUjSQbYSzvTxPvzMkDMj7/h5RKweS5j8S02zv3tLt8KAE75pX+o50H0nBNFFdCeRi63VnzT06rX+oiwnhFqbJREbgTCe1Y3veCz4pNuWAU2ti7ZoVIZ3TyqeZ2g+TlrSz15liPNQ767wmZKqnGGHt4EUROLWOFKiijfgex9Gb/tY3brWraM+N6ytY83KYaj4dAM891Brwvcu0Z9G1M30UbpAEV2mw1X7jfK3cpYvYl8H2TdKnxyC/SGzzOPbk66ZqR419UdBIkxZAyzq7WQxzVgBELJO5MJ0Plz2LxHtFfF01KNHWiM5sX5GumzfNoWwuq1NmIn/BL3cwDrsJpEQH1mTBiM1a8FKh2VtatdTvj+s76nKJDmivKkzWCf5AICmtQ74K0O5fVBXrsIOKDJBQ8fKI4t5wgoOw+OsZHjEPit2oAhWq9ZV5vm3enwb+nxbheL2sbNH+iu3gpkj3dZnAtiZ1+1dGsyeeBZeMW7NCMMiNXCazPKe71paTGsxKxDe8ab+I0ldsDFc2MTM4pKFHpAMMFVl/rtJoPTA1o1/nuBpUAf03uPEcMeHQ9hEKtiDdCabqoBU0smgFJHRo6Nrab0Qa/uY1gHZ3S86i0YtHqYeYH9+/7BYeDvB2dx++WICvx57wmXh4XIQ+7ZhxYd8ll+SNaA3yZJ+CanJsZm/5samQE0jFkvXTN7CcODQv9eva//CfgjJJ05kSiMN/NuEixzk9gfju+5iB/l9gb80P5BKAVgiYqXnLdEQH42H6uD708xe4VrAr2H70HMjyxukc30839yy2exLUSq9HGHmgy+j/hb4EbzsxQ30HRyV9nFP9ny/JN68wRoRTfcKGUmkGvmoSwuHytu5roD52vSg/isE9l22CHYfo4eUKswbkc412BhXZa5Gsp6JyGqZZK35bjmu3176IJrXGGptz5oUL1hbOXqNdIByi7o99cD6kxwYfimcA9bqG/v9fuwIxGBnZdfQVapLOw3AROh+eA1j/fxkUU+Irq7U8g+Jww0+XwVUon5YoUW2J6Ln9dA/KgV5CMfAFFPKc139vaynWgtiuwvbcbjn1hyRiWoK+pFyUAmOwUD382eUputrzzc1ZKk9FGRt+LHgAM72amiFFfZpz5oTp8zQl9d/f6Y1F9LhP8Rb1/DkYR1ZHdVUdnWpp0Uca1/OC15VjgkEADDOiUTBLNdeH5q9gO4UUiuh4nwbd++m3HrU7T+0e0UQ67gy8q+bevfsMY5/3/GM6R9k9sl5H3YHPNGk/tjYYDeO75KmfcHdiJYfjwMf+XAgp3fk1bk5jpLeYxJ5p1gPNGH8ccOHTaNE6LPxenwpzc4j1drm2PqdSmgXfN3VoyfA3qWZGaCpnNsIIgnIQDtLeZf7hcqL6QFop7gJSnlWoZ2be8ETFO4HUy1VPiodhA+yKsZzbZJnup4Q/azstJ52nPYNCIfkGKwPvF9GleMKqc6786Q3NuipSsRlxo5g/gfcRTj3Qq+/csaydRb+6SkospzonvxJ3cyXSXAPYuPgIKwivwkJl4iCePP2TK0NqF1/pityPKlLPRpLtkRU5d9BKVDMTALnIhjuMkOIep9PHuKJBB1ocL9N+B2yF1q5z81pErLUN2PgbPSYEq/ePBzhoIlIkawdXKzwLKwEYML8XoxYpHbeR51bN6dYvQ6YfQlSWxxBG8q08hClk6x1SVNlaxvvkPLPgTTblHMDC5U98T1U0ENlhcCeFSKlT56GlqmAYKbXYSi7mzsEyT3IQMr853YxQ5u4dud18AqkgNUbfgkxqJFbeQ55BrLfCV8iBzKt3legWkNoxRD+7sXrgS9Yf/jr6obwdiK+bh0K61r5pGcDPSehPUIc2cysVChYVrkwz55FEPWyZZBaWoJJp/N4xHJaLrI+pJmXgKms8i4LzDsKYDpgXjlXDEl1Q0vCdalwDdU3IkQv8aW9wQfvZFVI2LN6Wu2fPWUnsYzRfkVmImLyYQtOiwuiO8BPz8Gs/JHYNkg6HVoD18ekTwQSDZUl3KJTQAv2ab/MhKt1iTUQaT5lAKg2OC2TBrBhP/a7N60aj0gb3y1fCe/d4t02ab/JlZ2k3r+dxKbdJxbAlOVYIo7Z5OMDaUPzUmgtq9qdmjgOp0t+yuPv4Xie1yGTcEG4p+3ZV8b+BSZ+KbIGUkGbVIQ8BhTwaE80uzgKvZihDe7/bhc7nFg+Y763wkmhj0nnwoAkoVThGTZyi5kNw9qPt5EwKshgxZ46m+QoaatQzYKQwwJw8HEWlsA1LWf87ScmQZy9R6Xyl/1sHCDz4TW4BIJqFeTQDZICeHOiYMU3o5c6oA8lEoMZ/g+0IfLrfxy550aCO8qpLiLEdJXaM8yweQ5J/oaqkhq4RqkWWnWd4muTQ/D/KUBKe5rG5sOaclvAknS9CfmCIRtl68uscIR3TeI7EFnB7jp7RYepqAQNh7hpDf+H4+eQWMd2jeRbfuwi6F9PHRSFgzgK3ofRuPFPi3lJe6TTI4V6QH8a/xJj/lBFqsWFTzG96xbMD9yGPkc76QD1cc0fkafU7aFA7yCfIp5M4GqNpi6zIOplVjxnCF/Wf4PExN93Vc7wNGT3dzlGVxkO3jjkX3yjnlp425c+HDe0+e/h+Da0XE8ncCBrmqTjpHWiUN87zP7VB1mTQbNvjG97bMbR+Kg4GxXV4JXz3IFp4VJzjsjQvFhmxRjbeUWnL0s8i7XEOTtZG2UwJyiSSArJzi/gbl87UegXMyxBoabCvBv/W55MoL5CQcFi5xM7vJKA/kk/1Ajk0geQy4VZosALV9SyIQlpFxDa81ZgGeeu+zsEOWTMvX5KExQwWcTNv/69dlFSW1y6th2cHLpYaM+GAzT3GQgM8OSPwIk30kRIDujK+VOpRk+3s7wNpl32XOdSmaBmeNQKage92l435+dGX4GGLSWYKTM+JTmcHPytHk/M2atIeatfldeI4wwesHhZbyEzDNBQpeJoC/rSFPxora0A/mUaDdpo7jQU3TkOz+nw403G3/G6s8ZnUYTlVzDu8mYp5Eh7E1FeN23uAArjWtt1M4bi+CuQf+Bj5SqaTsrs9Eex3Cud4cWry1HEjlNLbVcsVitNWRHE9lZw73k7z+90p91vlTVNcyBpkGaWO/4A0HyQezWaPUITC4vA1ICii0bKFY4Q4nps6YZD2I9rfGT76TYfhogMe53CPQY9pmmc5PX0c9/NM9knIfDbeqal3ebBsL5UMJoMpLVrizHqaNS23HUvpHJF06A1XxfnRuz0jTfTbpUeBsciyoBIJFmQONrnIwnPPr6XkPo5cmbM8toJH2d2r3Sa1HvpaNz/QcQ2FyDOoQhfJ4kJQAyiQXTdixdwjns38aR/SzvTosOQUbWSdANxD9SkJPO+NSF63qDerCOR/kECGxRLqd6Kk1PlF4aSTM9hNmbgvINrXGHM3JNAB3NJkafPwssBfPegiODv2J7/JOxEyAcUcMNKi3WpxNQjTBQ8WPVPCHxwk3YM5wFsO2E3ocP7rW2gGzfA2sOKvcryY3YfsAqfOynchZOjJvEhfqAswaKQXON8T4hZaGfrB2wiYKoAiHvaGzKGff9Bd1P6rsB/ap5n5qq5sSpD1AOHTSlA40Da5q8fuS9p2MindJUJMUzBpRzppkVrX6ado6bb4RsDYBDtCNeRqNMv4EWZ04QMFdeTkiD+QTMK8xT1pZ+QAt17rGnR1Ks/we6HRtnHsSbwhw1p0MrhHlAyhk3D6hrdJCfppIAK6gX7VPJGJ1SrGjfWvO75a0yPO5Qwza7S9yfU0YwExmaP4LAXTkUiU3WQbNWBqf4+zHBLyOWGSjZ5MEBESlbKd+0MYuwqV/oQgsk/Y5tk/Cz4erHGrsWljGxwmky27aG7ga8j7DBV/IVoHBLOwuQhd9hDputWdnrMgPRRm7Agwi6q+YcTJUsDVm1sirwfqTZZflEv9q7vOkecsl0kekqczGbqlr821xltmCV8EYayiC81VpYsX4uSHfk1DSMOg9Jgaa5ephIiYfFXiFIP7QMGUn26vdI0ZkLFg4giWwhTm9ZaLGiPgkUrdUwOMUyyjo6Cb20DosUfUpOl199hi/lT1/YO0Z0LyRq3zdkthCa4FbzBd1xsN6zHge3Bd2zfd+3hiwO7pkO498w12Jp2saMBbf7Xp3Y2ZIdUZYWfYh+EMIR2+LxRNeuQcGXrjQxysuP8bVlOJzo3IHxRc86vn1HWFMThd7le99neSEz4rsZJOIyB6q+iVTDQKxnCWrxoTn1xqgpqaUatJQbb80wexKI9UWtOfttXzRBdPXqsEHV0zjTb6YcEpSLedU0CCn8g8PSMVBA0gOq7VkM1UlcD/Ol+/VJfelR6BhGTylIBpioTqzH4W/7/qlRn6ok3+GeJnYaU/1ZM+lqYAMcui3wNNFGsGeSJvkcPpNoBzCNTUjuWYJ8DG3DCe/o2uOfpmtcSjsS2RObtCRNc/YX4Squ85NoR60nMosH/u3t0+T2HJQMGKIGoG4Y0n8NlqRdnt8hfpzIlsJkRy3FoV2bSYHTsGGxqSS/iW8d5wRO00/4aZon0IFY8OW/fHhHv5hghLuLI3GTfscg4bC1+vVScwmk8Ep/c7baSDjQRLcSZwTpLFFDtK5k+c+wOgF5ezzNa+H7GT0WcfwV2+NP3/mMpp5hIU2Dyq8NMxdakz2xEclCLGZhiO0XMR1bz/8WRZDCakYz43b496pHipeFUSiQQIoR+CEkbohqYcfCTiLQD0nZul9/i9M8hOCe+zPjyliR+HYfzhLppncx78EEfkp8gWjgUJcudBeWwrOYLjzzaPNdRmrDrTDZWEj83Bp3MUVgK3vhwVoZlUsm1fCCYnGvnpnmc8gwN8DXLt4B5baeJGt2ZAacz52QNIOEGe07KTSoNWgH+TAjXCiadVDYRAUemi/9Z6Pi8sT0ZppfvUr087fEPiIHTfC/hQNaFKWy06JHX3THFIKQaBAzty+t/STPFvo5KMquigp3ZBINCtqf6UCZoGwdIw8C/TXpjEDxG+o9hljAtOcwh0IKxmLRzlDVRfVZB21eLDCJcR6jQNXdZPHlGQS4nERZqYD23an0g6U0/SamPzFSsCeS1ANP0yD6M7ggeH5e9MAl4z8/Q8h7OGa3wfpViHPNtlbMCgUAdUQAviJdUgNHTjFU433JYaCwDHhJteQt5CVBMb1acRPYvwCBNJa5KHQbLxUa5OPQx9wKaaajbXhr+wHRVDZLGWpip00zF4agFr826vYY40igmmQMIqfezIDuO/ofTaeDqq8pl6i2vL0v5UAzRjaI606mpkFFv+kW8xZlnzjZOlWcy0YQTPVG+YUl+91KUcnUb3BJD2SSLD2aM794lslJpqcJleQQQrl1QEovssSlA3L6HHAzPr04lzsboqcYlRLI1rRbTiw7Ov4uWrJwXKxcpt6BeHJI2Gs9jcqwO0kltei7boirH3HZXqYdEf0y/QWqmZ4pCUYnUvCzJJhMXvIGgEN0S/x1DDeZ8Q2a+Tn3Swl2wNzoNRCVaiT28efOKK16TzMDJ5v0qPxOGGJOuxNt2VYLp4AeaiT5QeNSLBMn0l1G71rmSzY8bs17fV2yF2Dj6WDLFtmL/xF3HdzWyh/x9FHLHWOrRe7oSqIxpvFavTaQLilYBMxdOUDDq2uxrMBaVHPl4AuvDnmgBbBTJWcLrHMxdxe+5n0MqYyBnvhpRDaKJM7V/BF+mlgvDYy7cdcRTzwm5AOQJgpuO+9T2BdPInCdm7tejzJWetV4MhGXJqYDqnec4hYhGKEfx8KyFJD1bL6I4pghGcMiWACoc3CA3qVO4JaqgyZJal/1vniS5aQDunasAVpsNeY741iEC6IubNEEEJ196irXyiFAb0z+8HlBhziM1TekwNoUY7duAS+xL/qVxJ3YPwk3HKtVhQ93oopOyzPS43tJM/Wbu2jkXzu1Ne1aVZL9PsX3Ca3MaqS76zO1wXIiv7gzp8oO8/uQmj8e7fHP3bHpJvwAclFbyFsiHv35LZ9Scy/2a/SHHtHQKC3HYYcFJtzuy9yQsabYX0iETtRs8Oei9GJfj6ay2j0G4kpNTCOSEg+TcS6E0pMfa5vFvUz3eberMHa14OVMHe5VK2ST0jkOngdc35v9p7864SCxrMYujRwH4K9D9xkiVWXhQM/tX6kpXhj2cRuHWz4xfDeav4PuvEsu0Scw0eoKmPuHQrbRS/Q9MZZwTsVK2EBAdJE1v1hP0XCJevKa9zPwx3jJjR8z/0zztS4UjtTT6adp2tZVApahX94VagmbG0AVe0h+65L7+95UswnTKHEL89eOd2UDsyoX9feFe7gnuZFiOT6PxCc0dX5Wast01VVUeXt+Asip2bkVgjn+fMx8+jJbhzaL+gn0gnni84twT2jV7hN2tMB7ArPIPPH89cITO23vE5v/NYFPEQ6G08NToCgJU6zQ4T85yncP5bREv9WM3cPKnvQ+LdPmzg1iz4eCWZUun2LN2DR2yGnIs54D54NLyyGQDO7g9LtTGECM9ubrV7X0zX8f9ikuY49dfpPVQqFnl5a41L+V/S5dH9wumxhHtmQgWloks5S51IQm+WkutKFvxsjHAKw+/6zaCWdf2DlGsscBD3fE64Lc5JAO1UjRcujMuZY1yhe+oDsnn/ifo8ULfgieMUH9wwWtfv/sSf8NG/5zkgj9GIf9D2FygJNIjNKJTVN4kevDnZ6FXEInH42Wi1te9nwIMKi/tDJ04+5lbPO0aUEivGFKvjh5O8bP4zrk2d/35uFmWzJfAj7QbOZC2ebeJPTEapJbsmmSXJJPkA/EX1aVbNunhHgitwsCxmItPxjLlpOllJDKu9qdzogQOmFzE+wHeQcMahorKLYZAgmiBaYn41/lFkTKaRqH/bWI4PjphLnaWDNWIqUHbJiFae7MJ+6AG58Q68YssDS44Ws+v4J0keka8fryXVuOTTodA7dYxvYULBxwvavsJs7GFOiYbIUOnu6Srp//TSD7W3jGl5kk4hqQ+s407yK+ToYscFjTxcyV1Tt2SJwiGuUbtR0cpWeTedt6VeEThKWQbJJvirg8TixiTuI8g6zuhIq6jfhDrIaQkRzHh5WtSeC+LmNDelEtI80xxrqTcl7aQla8fV2Ga4AqkbBi3aM9jRo8NnWxjAv23h0HbjDoUqh8aEwShX1O1UaPF+8GHv/TFK64v/jb/zNFBs6lmzJvVBRY/CVPImLV6gAN5+MWvEHz7tp6w7Pfa7NkPZAcEsk4pADKFIaUKs0QS6EQXG5hyVBJc1SrLmfwzyMAZ51ha6fo0HxK7jwRfF5xmj9v+k0cdor/w6J9Z7jpo0RYy+PUW3pyzWt63kVkP/kAxUYz5zGcIXuHnz4kifGCTqdqGmwGWjUGhnfHCoWoHQUOrKH1pnmaxP1b7Xd7r7jZzPVUrpbpw+BY7Va4zSiLLvKH9+G9Jnh+OKLzP/9g/2UgwMO2UNia5SxaGNhC+d8APyJfi7W7LLb9GkEJ2bsxgtrtyhC4fRznKHPKhonux1l2ewu44Yhs6zt1pNXksiC8K6cJXIBSKSr1VzG3/7MJpkpN5U0O+EwzQZv8hJoHMHYAeGpMgTzr7AlLt0G/aYTlJv88BXCQ60Su/jFpJVWEeI0qYaXIw+7CgzCEMXgE0+HMUEeXxfKboTFqplqRYQdfg3DA+Nq89+Lc9v64gg0AQHzwwRvuQ+OCgja5uSyf7LgC76+RoddpXuGB3a7SUZBUuiWrXJSmWNwm/zteGZly+ZeGUi2yGf4pKFcysq9Ux9YcaHc1cb75uHHDXrmu37J13tqa45Fnt29GwTZr+RvlDoniapq33wSLtmGyES7dpyvYli6f8ho0iMjOXwNbd3STg27F4flnCF/zy35vnkavqlMuWpEDiZcOLSStjqmr9xnXEt3fSdJTm8We8qio2uk+yy1LBf0gv+7f691m/Drlp3Drx4vQ4+eddyGG8KTthk/UMtjm182tfpRnaA+bPGr2GC657sEfjGfpSrnmBD6ybXL/T4mnDXGFSHJck40587C8evbFnwKNvu79I3FG78iaaKrvUyjSPUFA5cju5XBkZw1r202k7klTtrYRav7RS0IN46rZKttaOO1t12n/92LE8kqR2ZR6+Lzq3eaxcMlOG1aBLKqO+YI399946lQ/o5en6Bf26ovk8zXsntHr6F6qV8rO/+tFaprlK8Hesre8El/eD+fzjD+dOae9+FwXns+y1Hla6CVukYVIyUFGE/nI79poZBIKyoMdr37qd2bmDZr3bNZzXVbO5tmaqnsWEjSGpshTuVn5cVYpfcNmaZYv1jzG5nwXVli0kFznru4A98lVeK9bKaySSzVz28yq6JQ2DwXOaqlz1u2XAqXjYJGjzqmy5/yw77D1Grsx+hbnRRnYbnOFXxrZgXxzKEm13zi9cMH5AztcIfJheRi8k4kGhAuIlBdbjr50u+1LadT/7+2TZIap8juF4S708nhLmRWXRUPJG94I2T3TG/XLWPLN4jD8oe474hQn4v6Jq+EAsipNTamf1Tl7n1fMsDLRYrpKTPeq4g3oLfdJMdJNqyjTH304a3/zbxkQm+zpsp2wi4xCcHwH9fHGRdCcm4XLE+6wHwgOl44p76z7mofHKPfGa+eql4i60iQesNV50TD8qkfmh0MaKANXI5pUsZHGl7VLyDraner8FgJZOxyluteJtMgTgN8wRPQcN3lLFvFo8lbUxgy4+EcIdM84e8TPBb7lAIeNIW+hVL6Hd2+kovWumoiIge82qPBQwqeGf36BqyUuBaA6fKiVqwBMfdYVRQmxqFFAOCtOxpkiDozt5iMJoJ1Mb/O/ZMvkoxBYooLA1yajSqJukTG3lSUKYzeFIrhrSfTrfb0Xi9xuca9J8Ft5wehA4xGmMMRE5POfE9zk5M/bqdClrzpVG08f8y25nY1EMPUaXb6Qx54j/OLmlbx0BmIZQl5sPgajrK5DcbM2Jay98zHXCpaCaz6UdCXx9+9r3B/0KJgSExi39TSaXfaUfv4mCeUy9w8wV55DJv2eIQ9H07YPoWzTud973kMyD/CORlsK0MyYCw/GrV5+Y/+au8Ei13IvkBpnsbgLEW7QOZpkuj1pIuStmKNoW9aaRu4i1Jk3W/OQQ2b/JtWlYBQhZZmXg3a460/+xvVrEQHC65T6sW5vRhttHQlNNMz7yuYdG60zRMdP8dmDHSBnZ2JoAJy+Z/rTThmOeAidU9pM1yqI19iZAkDV4sNp5naymrzL5MdABX2PU7luqnCuQQ0lEjEBxOTnpOZ9BbXEw/d9E1oWVISOqW1IGFcBRVikOKHQkcc4omXFu47PzIiX3dmjexZsTFBjFS/cibH5xRW+9+ZhUNvHcXK3ztB6QcQ/K5Q/tTDELLQuXo7qAOnEmztcpXIhB+C/Ucw/Y7WOQXQpUfNBvvinMmytdHFTp7lDFBLq0F5GweKK9dppIuANuUCUcrsQS6WM8Jho6vKU5K1Fn4nSY8Jnm9uRjInSJTKNDOelDsMexPP17sSKBWgBqMoLGgV9fZ8OJtiNEj0G8ZdO60pET090WToeXE7yN83hH/bhmc6snykBczbXk7WHKHfgsOU8S6QwXIX3lYxY4xgAgerUnqV87TbgIVV7pJlD4zTeeljOGKCDf8VS6xHduGFU5wepDKf3o865rC4vRNPxKrEUzU0oLu5BvepCzHDusO2AMq0zIxkBbSqFR8eSxNtSCagrN6mgw35HZ0BHy644CV6zKEhKz5rYEbdn6h79c2pqRxPwu07JAfNR38dm4sIXOBELVAZF9AAgONjHqRsh9YgN8rtGlaNuZsQT/tRLv8HPityQb+4bb3C8UeAhtkc0yigrUKwkM0NFoxOBnbFgK381KBp2rwrC/pNiIKyUIr1m8/2ukJ3uvoMTUCGxoHLxw32W+xrXiaHHNXfdH76XGx+sekU0txGUw/f1vYeaJdgYy5uZ2elX4o1FjXo9WmHRl6Zl2BEFpkbMOmeNJRahzZ1iGimkDnQcCV1m5SkitP2t9OKFySxWz89mrHF37N67ZCeQ1lA5Y9/Lr2xCQHE2GQH1+MyJJC7PLEw+ekgLbohsCdwRZmJ2RkkGnoPZ6Gtu13SU7EEb0f3yjRWdw7+gw+hpcQQYrlaKbiXVcvphk0PMoAJ1ybJbzSYRKTYIwd2zE/YYUZcql10cwb7vaIqtiLg05sD4XBdM5+LhMuGFK+YmIgHNhrxKrPptQxHBvq+zCqP03UCz6HXODHS35hzf5cDCA9tdeI9lbu5jmeQSDSw8tAt8uyL0j1O9FK19iuLR320K+fKs37HltRvqCWbdxmHZc4hT/uSNPvTHX2YJuJHF/KxBVYQZ51xN83KgVEIevTqX5TkNyQjl+mM6vCPq1OsQsujysbUfW1fXn9Pj1KzSZr8MOlu+606HssneydnIz4Bytl42PeKIBzobPYcILyLnadOarqGCtmWPsN2Jj2RRfNkOLL2AIrcQpjZoKiOFX+i87Oj+zX2IxZxZxzABF1BigyGqnvEtSBjFwazwfFcu841BAwxCWey+09DUg2nVoojf4+Vx0HRhog3AN1wb66zIT6wgWDRR3pOqsdbInZQbhL1yvHn9S8+Pfe/XFHuCdH3DFsgVaVzLCOwGHsQ3lgMyxRn7fa5L7P6LNjMqTblBqzZHXunuNLd2FdIsSSqFqoDL+DwCy/TxKYlY8Px9ftNqMqM5k1pS0HtnaYCpbRVTtcszCF9Dzf7dtbM+yTqHHeuEqxX+uAvJW0je8sppZVLfgoFW8rCkm7CxPd8HTLuSpbw9W5ieMWKWIDXYHmjiN+/efbhUh/mK9ejkpBVWMkrO+Lrqx/y7jT1J5qiCF7UAKaAeqKqJp3JVprDNYFQqq9m+W/qIRZAAjEoZWiP2FbVeLH9uJFjnPLbL+byhAnmzPtt5PAnWG4/btzdyhbejWZvfJKyHBXZIoh4VoOd4WMpgVpwk4m80MtYCCS+d6waIvaHaYRhP73tjOTKPTFzvWEU9MFK442fP7ix+oglfRwRV/kg2uFfQ18k9Wh1sw3wB3m1WxyeawYWris7yIAB1F57lAqWGwig9jaBLLG7IvcgBVum0Bn8b3M0AQVDSvF8Hk/C1/QMIO3DOZcOgBol+vyDhYfLpHNd/Hv8HoKiyO7T874SawULU1CwSCnYuapGT8jyW+RRUMax4tKdpqGMZLyOCvpr32UEaXrUAegQI4rQhTo7UbUYz+3YkYkO+ncud9C/rcoo/m3K9V34JZWKa0+AMB5e+m257rvXRHPcEDvMsuZ9cmEAejEDNcKaZtyF9SqHZ2vlE5IrexxLaTN5bywF6ekWeRAI8yTk7std1veMTneTum6uTq2Dmpvo4El0gMOPcExaud98LR9zZu9szJGkS2PaMMRL1coaqPNnFuNrjUHJphVt9QOcwNWEPJFXYTPER1fx+iLQcJs+I1VXK94FdypbbwrAx4Km74+SQ24s6AFU3v1eZS+6j+GiiAYiuJ+obdqHOXZsDWzW3GyiR69E5FyEX266VTGtJK7XBV81h9oopBvwLcnEAWO0JtoftCzE7ilGz8tYvw2llrND0CWgE12sOygn9awbSJND273y94IlCkQG2Bw4Fpb6I6c513COXyJrn4tL6E/+eb7dGfpzMVpD8JFY+ly3XvFbULGmuQOYEJlF4RHchVioDJeTimc8mgJwdT8BBr1J/9xu6Tst+jR5hb9AhOj14HMLPymHwE6rmxmkIuARp5gJovZ6uxNRM+VWbhSB+Wjxt67z1qNIJoBHwNjvc4puKdFGm52o99bhJhZNlK4c9OEuTB59PuKI3eN042FujiIVfVQgoE3DEHD+bl/P8R/f12Upd+cljBdgotezMCbl4vtyvd62MF5hGQbxaPw1VWfAr2VAYFkaJBvRlx7joerBAeoCJrtQ4z+rsXHtLDUPi6hh9CJbsuc6ZXzr/KKoahP2Ncp7WLHPyG5hL0XLz1Nil84do9/L57/DeI4ve2+4FSLb7ifaIbdtpwej5dEwNEJ0TSNWgp9doukpMdVwWiBnM3bxreampf74znvDIN5m/Vu/TMEuPNrmubEILWN9ZfjRmxzxBtW6Fa46/JRN1zCSBPWCgpLcwM230+U4/WJs3vV3Sto1yRvtGw9/EVFMOZQeeyp0wvFUT9lqERPqsdAdNX5KVtN77eJVyW4pm9oxhDRCL+eyWJAbM/5NEhhTdbSedavDPx3SrRIHmWuqw7HT5XrwDbWzAXriAE8s5E1zuxc7hwposazjXve8kWWT5l0FmzWyRITp1tkCAzc0k1tx80lAnNeGoZmCcblg43E+eSKPDCPQjH1h9DT1rAVLe3V7prpT54TN/aS2MuzMelH9YtTSL7OU80YEHoFVN+4gl0rCKSz1PQmh1Wuu5vb4lIQ07T5QJJ/BiIJwKWSJqpPS7dmNvSKBmMyX8MVjHAJzygbJhRP1ojwhq27p1SRbVABg4GlQyi5B1viC9HDgFqDm2KQXxrEIgXQeUY24yg2hyEhDEhZriDDyISLywKAejWTJRxOoSz0t1hady8c8E85ptzZIbqFru4J/Q80+jf03eACogCBwi4hPnWjIGAjTL/0l6ltkhTo9yxDY3VAgP4N0RWGQIoh6w7by9A9wisd1sEdEZR/8w3s53weNAMgsE6NdjyYSPc/3Ppf89HvymPESaXeqT7CPQyxbzlgC3SQLNCr0Jj48tZ4kAfWCmN+ftQfBf/SU8guFjW1yPpVoVm2yRRLTpx/QwzZyx+UUerYNuRJgk6KdfcskMvqTaBBVe+gXmFfT+aKoewMuEJSpYwesDV0kdPhDl/sr6deKNQO3syr/DyIh9+e/uPrn+Pnz/Kk9KQN7zFp5vMTomiLfw685CWM0s1RhXywH3mTCX1KoRvtxpAOPhWrTNPM9wXZEINxqyW0nuJEiP67KA1Ty2jATe0W+NBc28dpJ+yi8UA6LqQLyibdF0alVSneqM4qo/qLSCDVvzayhe8NPNNDM/g3EIzrW3IWHHMx6VNj0uzXRlEtcLckaVV9wMToK1w3XNs6fzLiwy21iYEUt5Y/echj8nk3+zi8Hu67nfBEk3CN985fHBP9qVSHHuEvtKe0pTEqGKpZcyvXXE+RIv1z2wWXVOeezz0i+IDAOblbl++UmSoEomBCCyi/8+7/CZwcmiRnHgfX13hBGYU8m+hsiIfth8OR4YxAdMkndOuu/YgJ33jq5Cyx8NlYx058P+Ed+//dRdkCWNtbrKf6pLK+GO/RP7BMsdNq19pt7jOQvXdYr3uNxN4w0/+fBEVzn0BZgu0JdSXp3H//DHggwuRFVOE8N0FILT94xfrkfVBga/cGGB6t2ZxUxX/NOfQsFfPDnuNJtsChavRw+/57B2jqlMXisj5I6MljOPGdZK0n+2xPSIy7HKj0NXYojHFp3z6uf0MH6T+/6xNUJU5j4YqZFpX608d/ww8nauvSKfJswDkVuRqkQR9pR6GSTJYeJ1B+xaRIk7rESc+Ka0rlG6gTGugMQREfl++Gy1MKN6f5UkfnqND6cbuZqrTgG0PXoF3hAPviQbfFpc+SKdkmisw9+Q0z/K4agMF1YEpu4w7x+sTKrw6yEGa+RsJwdPUWcNk+z2VrkbZX6W8zbEr86Tr8evnyOeb4kb3T2FVIywzxIOX5MnnxcFS0wYqy++yuCbOzteS1T64+GZID+IuiGdlReripxlz2Kgj72zQirNM3uEvIYoWDhV7yVkzVM7zI8JJYspmZOn9rOcFNDMvxSJ/Z7RpEj+fWBfGiSHbU/yIv+qcHTJeExQ8O+1KQn+9E1CwEPaBnjuzVFHzz0rqqy2OwTDXbfM+BG/OdU3mmCYaLh9Y4gqU27B0ARJlWM3JdpfqgFzI7r3Em88AaA+IU9iizGQ0/AgWa8ErvJljCKyHmqTlQEifk+BSHgGuFPzH54kKnMRs40ekST67Wzg7Oz4r/UP1mnnrXjr1N0Voyov7CiFmniobXq36jL/FVS919fsOPcZCznQF7tluXnS0HtVT/MrVMx9Is2DyCn0yjUaQ3i98e5T/qmZ5EVMW8BnQvWMMGW2sYTWUawQT9IXlf6/NR0XnMTp+OwXIHmVlsf4ihYUspVQfxH2X/muBHPyo5m7o2d/OtxvWXiRJ34g41hsQVKphVWrkkGzXIeRQOuRIJxSzW7xVhUiwx4PBCMriJtYwDpRJ+8os6xa2xmHBffJtwfYctQqu9XFtuEM2bEFiLWXYuriAayFBxcf7zb8RGrZEl9ciZqGgi1uJjptJclSWolJibza2hJ+SDvCLfDFmyBLZgd4kleug9drUXKN4eR0wcKNbqLWkpBaUV7SeOy7zRWzkTdrw6eJrpMsRoQYNn0/8TWjXQqV3FDh49vxHiH1RK/hzfz7DWaRaD0QVi89MDZ0l/A1dOxP9IYigu0OiYA4Jrs6Sx9EsjHsj9GLmS3iGrFy70eU7tdJwhgjtbkbwGQOMxeKr86hwLB7Q7/sOkE03H5c3R/ho+FuerAsHKAIBJdMbZ3ETMn/c8ocR84oRxBS9pFDiFncKCvxhz4zR46EX/OxsrKwuXCGyQTGXunb18kPiKX/CgT3Fs6xgNxYYQizDV5+INCbo4BiuyJxPUI2OIC/bN4os+ZKcEuTTCFkCSyrEIldwDrLzDJKF8B7qIjrxFZmw7oEL92DRHmxLu79UmLcsYsHHGrTF/FaGqXdZSAKjxsBS3u/uC4tUSSnDS9uWlznELOYxb/jbyCSQE/e2LnI6Yo/pqB9CsiU5/pLYO66ygyTkmpwnvOAEKZJQMjQZlYE0Ia1+VHybOoPKp++8xGFqjWAnUJJvbiSD+AcFeCL1wZnej/2KYDtd0CA3ETPoTel+hCGwN/1exU6kHQbjfyQoAfyQ3jvyg+HxI/oDUnEHJVAQXCvma0h3kQVxSSMNJdCb4nAxW5VHbmcyPIgPyKvZGJA6zEhw8Ql5Sv3Lcj9VO8cVsfVAz+/184oEo8bn/F390D7JHYLYttmsH6c2YeBzo0C01/G3a3oNPIQp2RavRY3ohklFNuGkOk2qszcX5HVs9waVX/1AiODv8D5D2DA/14AM2ctT6+LyST/scITNuHyTFlOCANKQ2xB/vL18kmm4zHYAzX8BxUZsyr8qaGRdiahehjPyIPv9aDKs2crdgcnbAQyuIqSozr3WkyOSFknpfIDuawQYBc/9VWSv9cgZmcKAqu5Ra6tZE+5DMbS7/z4AwU0YeI+4Tum+bpwtmJ8ybp1o+pLlQjKZgZ7Kj4+1sm1pU+gUYa9vZNdN81oUW3olqLklgcIwaOlejPc7yXWsMGC+zxi3RpQGCJXCh8NXEwsCBNaUI2cFTYDfTVGRtcojcTJaCweT/V4x3GQZ21QyDFdDm92DNEpgG+aTavUR8EO5sbwodG9sb4T+bPZ/+Tfb1Dzs2+kpUhz4Y1TR7Hbxuup76av4OZnLfCYRMsciPd1fxUcShi8snoVQeOiyubVaaNul/j6QPp1+56RoJbLFgyOQQDnCO6/UV757MU90LiwXghAdLBOxzpidduyPp6qwqMuLZATSN+kXN/48oE3IwHh29RqjpLmPuaMCcRPo9zntTggEHh94srWQD790YDgs/+IadWausAbF4Ak65/IoRsStEBB8DMW+LxYcVI6gC/+2cEtnjrIPVwWx5GOwcvFrCaklRv1JMkOmp/3u7E7WD5ZVUrEtIfLgtK6Rox3CRSmSEaQiGsOv2rSWQKo8t2iGPz7y/GIHKwN2A7o9/kQtIm7hYA3q4EeoNnYqBZ8Hpj21F+gcVtaY4FytF9AdHWRhZXzAumcOxVgl+qWTCt3HfcAjWuUm7UyfuZntnW8EjkGf9hTBytYkp90XjOSvENCWi/VqMT7wWQ3tv+2cAG5nVSuD4Kgh5ungtR0leTAp0Hg16YFu0SBY7Y9ac6LUlV5yzTkiPFDncnyXjOj3aFVF0VtMIfv6w6ugm6gCvzr4xdkTiwQ+85HyP6PzcucSYZ0KmaJ1/I5eq77OjskcwtwB2jINq0EKT3NWrnIbn+IgzOKeojtdGl8NlQLuZ5+Jnb4FUdG34Xfkri4XGeHKx6YDzhRTCscNfIzFa1fKjw/eUWJjnFNBDIVFm1dQBWxsnthLc3gF2bfiNRHI9F2KZebEWheJqFP8bibAnIYnezclEVEaCrbxxFqv+tdfspnN0t+cXyfDVCypmr1Y6neVGuDtLDei70Ac38+HIVPXNEQc2dcgwqLT/5hG4WKmJ8KysN54rAy89lYfraa59+1mX2Iyebz+TyA4+jZcmXyhdXYVcpflQ7fK30mv2qJ4c1XtGn/xBVMhoFllY2rTHiYt11Rqa6H64jYoY2TWgj4qmPX4hXecPasrVaAWqXLG10yxjXhtSw8P1I10w3z90F8o0rVl8i3rtDFF+6ScSZVsLu8N7IhyZqIMe6kNclCMu2zfLzZ5L2p9lT59yd6yoZJf29zz0q8rRWHPPZYbtVLLI9AInxD70w1+ywIRMR9zAtwDjNKVozjqLXahCyZ8mb9JFc0fWcSUgOgVte878dwZruIXA/erGJ/xMrMj62kB7WjDHBjLNIFoC5Fjta3iIXJABFrpBLVo+FzFBZG8IkDWaYkMW9aM1lO27VSXCl1i9zX2Lx18zH2GCX2eSKg1ei+2FfSAlEEVBsj1dADgq4yartnyFnHxxOh2qzVymOlhTWA1is9FiSsJorWjtFS3d9OgvVlM23/1tbaxze8TqF3kai+/JP4jRo2vUqe3/5J4HskU9O4+YG+HsdCgNcQOwAk5zny9gRBl1ZHfA6FsOQxkzlJMyv8ldyM1EaXb40XVKze5Cgy2l+5/ZDHw1/ZgVNpj7+2lDvy8X01omkTTGsqoNPyNVfvmYzmbeB0bolM25zYPlsqM6QGqnKvKA4Ofzv7fAf4jn+uBXDeusjlWYXEa3LZMlQn8p3lYZZHlJsXYVgAgLLljgJ6KawRQi6xeGoTdJf6bqFb2hAUxzEe6FywbjwCWJYVeGHRzUlPYlsZwHOdte0tngs3gDTQ5Md9WvwaAKBrFUNIYJpDSaUAzcPEGlK8Nl91EIYTpiBot4SJLepR1lAti0OnE1sYRIBAR86FP7K1YFGdhJr2IUzEUGKJPwR3QsD0tDgmvKRZgOLnel+OYZaNQuh0WOw5lx24MN0bW7K4NI8LBE6tXwRNrzKSimfoWYls5IhXTADtmY915MKAkq0X8w70lLqiADIVIhSWWqaSlbyieYTKMbYRMO2eD/jiCcS1eSboL6R5NOv61weYb/Gyrx3kvLyyTR/IKVPMj+GjHO3X+EuYeGykvEQc20KOcSDkYgwkpF38s45UUZZHnaic/2dRXjTJA0nierDRhx8k/AFpP687mBOvz0Em0n/qNZlga4LwFfcRLcjXP0JlsVqFJWG+ChEq0jZaESbmGsFviV1JCN+6a3CItLBNTb4z44tvfsgg13ZsfgHBU2iMIwi1sFmr2LVhSTKcYSR+X3VHj3zlXIPaz3aJB7ejojQo5N4oWpFUOvahz1WJ1V8EmGuY1johgHUTALqh0A2VduVn/D4eHyJ9ACTGrhyLEvsA2NXacZ7HQAHEjVpyHhTiFzBu+UWQY4pFeK27HaOoJzTedHjCV9roNifLgp2dQyeIQuEJBI7kLflqtKjqbwk16Yzc8FV5C3fawq0iMaEg/j4gTsAhGADAwQwpc2f/xbYdBpWsXTxT6OoVzjLH9wLl5kNG4etcvjrrQLyCQXkLJ+R4BIfcZydcGKBK8tI/LMbALI7OiivY4zVQq1wEY87WbY1lRd5POjp6Qvb7knl1rQk6XRmbQKK0o2dYqeicvcLNsIe8x6EqdEPSt4JcxEsCYYI/i5sXd1kJ6rCKZ8eauQus4vyV3Sjp6WQXJlJTwOzyg5Mr+xozTElyrpJRwe5zmc/OVYEdiK4aVc37Xy0m8p+gEdW+J7uRDlQNICyfy9ejb+D++gB0AslE1qBOwZc/9VjRC/FXPzsThA35f7iDWOaV/qmWzF4KJw+U5JACc4E/ytwkfh+qVJ3Nb41pU0VoXOVKxgXXQCvnWoIZOGwZh2ODz5g3MEL9C0W8JTWcXky1Msj5ddks6NhuYxyMShWO5XlOKTBcZfSHiWPcbt74BvTo6lecV2LMZyCF80fxPQ15UEPzbAyLJt9FhNWTgjdACw8XlDtKSC3c1BRg3vHib+fBjzb25D1aXaTQlLxmGOVu3owZXgQ0Vd+hZkWFeJsfCS1XKszuafA8Qvhu1R0CbeKCwh+2Evf4kRDOcORuB9Bk3f8BnuncyFv2YwY5ZKaIoJ5hgyes1qlhIpT9Jydad+0OtZlngkgzO7JUQqZ2snKV8TAqsWjfaG/6fwrVvWUQH+YoZ/MOKUsTSULa/M5J3KST+cGYZp3fLSh89fGThTThihNkDym11IIqYuQazXc5Aw4pq3k/m4xonjIgwzrELh+pkyiWnOvQrziRTIOGL6l695LmNbr/rp15JfxfkrQ+n4xyZElDczis65tbQjTzZ8YYUTi6J+V6TC3DlFLdh7M0i8+gQhuY0EIn7qqwkP7BkcW/wpUM4KSIhxWmOFnoBzL0U1fZucRdQNkqOMlKnifN0jScjaxcfsXXHjmdc3k+863/qhUTBLbGqASwD6tPnbHXPWUHB4KUPrRRRVdpXL5ZC4LHh3xYz/BFWTZYeZ5+ZHUvOw7+xdBD9jiWclSmKrUjqwydtYY9RrZuHpvXjCmyUGXMpiByYfM+mkE1K7hrQVpkgqiM8vl13U9WhD9vYVcp6lPr73adv9u/1l3N5TBFWWnfzg1pVluBTEDLsW9QN8zzCTC2Dc/CaMelUdnpveapwuY0+dNh+bTo5M9h8ZSpEr5antP9F5D2msTsqVtREw6U8WhJfCmob47ijo/x/umGIuHJkmsXw3d1cTYHlP0ZdkCyi57LniDP2GUfmyj6vPQPfCiKVb9ttXo8cWohckL0y67JxAcU5j7PCV1IEMdsn+MpIhYW8jAAUbnZSiBG3zB5o/LawqXt9xLI+F+GmbtvG+jvI+m9QdZNG+Tf33xmtW0aBSbyLl4/m19pIK9KpUzh/wcr3xn3s35yIn8KodGeIX+U3/xwPJ47VoHyUUYHreVHlp7UK9gbNa8qV4TVmT10DtQ7YlMhIW6d5jWYUaFdjEIU/A5jlj+syzao+ZakH/vTIknoezCveiJ93licXv5o4R3zBm+jwc9A2xdtMxeB7jDpaUMKyI60yPwAFKK6tLA0G019O22U5q7L+85K3y6XDAG7HeesFJBTdtorT9cmQdHtWtJB+jCQIruNUiJogiaYcyP8eZuK3NmwHbzsibUr7Cv3hAAH8tWpGHFHYVfwrMFE1aO0IbCGsg4f9YqU87rYmiIUvp49FlV8PmZYJH7++BWFjTmkU0kSBehfiOKidf+Mttuoh35PioribY3AEtOfhhWk85X+YICq/k2N/C+haNS9jrcsCLykgPq5DWjbz6At1ILoDrFsj31vR2rrh8uPytfj/SCEU3hmT/0heVXc9cTxa356uzh6VYPFjlkAnWpH305nwwapDG/a/2asxo2xkrUscNnE2ELJXJMi4U4i70/l4F2bbwOGJgfxyfXQX6c30SQLfqTg0KD+fUUuRcaUwYqHPrUyfPBi7Bap/xZE2MklmNOln1xu2e24+U0YdYnbG1ru99eYZt7eK58hy2Mgc+CxuUohuIVLmklYOZPwlCdmS8KAqZwLZsLBsbKg4tRysH+5GkZmw0jkfh7VJZrZGl83cs249Q/k9IRrUgmeX/I+XUbzqf+RNt/M0QjiKRQD8q5+EQUSA5gFPZpndq08wfnGlFRlgwJqCbCeB5cRVmDCGZCaUqouXrVoaX7VjibyNTNsxeTPxXvXFLE8q4zG/B6wHknqUUJRrO8i4XeNOIFTbp+7UCOlcAzt95tKetAFJuKfsvtJGGJE0bdHe/PXZW+cMA1B4s8Z5GZ560q5RU/gof2PrJPvcrgqlIXMd5fXPM8gzTfDGyGzTui5VilMCvfp5nObWLD41FDeTyd/cuv5YmZzQPNYJmt7ktzjwnpIrlr2iGWEI4G9sWQ1m2lOssmYofUduR4IW495fXslJW0DXlQitV5Bj7wPPZ1EtCg6VzJBXrZbjzZJ1K2ZYa/uPRBhyCKf4THDq15uqrVFL2yz6SzztEB5crFUYFk+Ma/MIey/ii1wqRkBj5dlXsl9Gqeuv815E219hoykoHkI6CypFf7gbCncUVFqVzJDnC0FiIFmSUrA42Z7AOUiJxXYeXxQLCVxrGNEzQyeEm0f5UjCIZtZzwf5EsFkBuzyPXGEFAR2im8ksQUOiHefEL0OgrfY5zr7D7qDNdXGhs9+/adWxsy2wVyuY0cNFeAFjiWl+Nm4QXEK3qP7HqEYbiDrOb7NdDBbV8GEuF6ORScTksLpCyGpGZ1LSK9GlW7Kb3OUvdrowCD00sXFbsVJX8577yn1ZDXBaNmEtM2LJe5GIIrrjZLh7P+taZiGRHAtHXn47DEXeyJGTl+jlSRMiKrqTIcmuUNYYt+xzMMIA1D0z6yRq9Ekl82aoIsYnUYRwDVvEHE+HxdGhTO5mEZy9bCmXWtJ4PzQsELu/5TA2wPXJHrLRtqRYCD+jhUk21W+XMGsZF436GdGVkWyx74nA7B0CYC1F8eIAYhX7lNmvbjjyFO0/996M6xiBGoGz5KysE29CT8tHDxhXVhPIKbesidpauKZMbMlnLTODuDa1pvwK5EbhfDeM3atq3S4ome7A0NUPaVeTqoa8pSGXqXbZ0l0Q0vkejQ7nVUpSlC1GRIRYmsnsPFioteJZ/KM+yaorjHKUSQJe3Hlu0aBnQ+wsrcqix0g6q4NSCBqNov3chdd9nHA7n6Je+b4WubmuM4PASXHbZeDrZihu5jOEZR3hsBeejWeQD1aq3eHgZEmS2drSZL2qOPFXv3g3LBCWSeLtgdCALLAn1G6VL9VfM1VlXuvBI3XUafwXtl9lGdnl9oHEyCpSPnV0gpzWVLpQOg1hhzfxs4/3LOdMcM7ko8e2xfYnPYVJE5inT/VxBnJQ76oNyGfswAyYT5yAlmaYmgCvXAtLY/gzeNwPo5KKkPG/sFUeDzIkPKIK0baR6SvEtcONsRdavvto/KQhK873CDwp1bGNnzX9nk6yWd9tK3A6pqd6/57bUoye/3lQ3SicsmRt+3qmwB7mPFRIYdWwsktrRoFbbXJZAVKTZP1CbEXJA/OPAw2gyfQuPedDyPi79HW/uhty2Jzl22YrPXH7m83v5EYnPkaa6N5tCny7YxINjCRtTPb7DI0E/RpxXVqumeXdLOEiKuHanOp1dXCat7SkcLcmmqLtUn5Na1T0TlUrCV1ma3rXaekhtgrZA/vvRa40CD3ktRv3aOPEtCFO56eRK5dQqZ4QYzPtgqZQC9wCNw0Y96Dq3gkxron96JU5IV8i4kF2OHzLn1du1ku6eeDnC91SvxStbA+zN26ZRjpvJlXMAdQpPt521nn7bFAV+C9WEo/zEKu8p/s8O7YBW112DWFCU+wCwEh9UJxcRSQeNZKOyeyInrjmrfiWXLz8nkymkWBg2I8FEdevve2Z9/9c78bVKxxiHGdSYMLheUO+lEgTbi2MypRnMQtQAs4+EFS+LEsMXsOXHgs29jTSol+uAViLbPLUdLCBVIeqcPWktJr/SMs4PgvV2IDpLM7DjfVSNDLr/nLKCKFlJQbcZSEEq6AQ6uYHGAi+QAkkHangkcQFkbYEEAttQKYISMNM28WBTgqUdLbNDTHPea12n0LrYFbWVrUkeIe9gP+WHcZb/KpgNfF0Lq6SuHhFTYEyr4u1040/JmZOHsFXIEce4ssNQDdcQD4wrxLezKvaCzqlpr3XKtk/tkyx46jUbKyQMoGC8M1P9L1cEljT6Bxh09fRm3E0C3lJpUPQUQ2+1ho4gyQKqPqyycqXQlcV/GUCXFeoGlV8wK3P/VhtMBjEaAE9xbLcg4l6wLieRbF9xQ5jsk8YgusTmJFw/sTVedii7F+eJywhZHCJs9VLvQsO+6d3ya/hc1tI7Ksx3zR/DMa7qpTmx51rJqjoboKcBE9ixxpxszGoZy2dinyK5Td4BZoS+5YkjX+fB+eNw+Z8YelacWqEaDMe2f9FaFBsKiL/uGOzdjp6iuXUqdcOBu3IACTJc1AC/qnZvK37jvHjCU/wN0s8EipMJKU5Udt+Z5usNx8WTtRaRLKdNvBzlJtLMvE5fIsXK4lSmdvBNVuHYBdOQzHAcY0Vd/VrNsk+90wD5ib3kQO5OB1I3W75fcJrhT2CCwvJUlruhrZp330eMNmbPutrvUOwnsXV7mtQ7QQyoK2JlZo56AMyFritYTVdp5EbJzdqarHZ32xJXJJONVzpjttatTHWamh1eJnGaX7ODx4lyQQ4TVs8MdXvUVeRpINSURXNhLwVbs8gpBOj7fCISFeCeya82PqqNItZj29EmGOduq48Eptlal9nvMCprspHADrMh2DW1zXjsWBqZNdye41uH3iX36ln838pcv+xUSux4JCCFnnFKcOzo/6AsdAoKRbt/YufIV5KYG5H6H75H1/Zv79HclYOHowo/xAI+9t64LaUr8l0qqi0eMyinppffveLAVZqY+g5ZxDL7BEOMWk8KV6ELDbBKz/bAVxRELoTKHrjdMZXbqQdBq8RlwgO2fmq0QyPKtVbJ/GqPRkOvzGt0/Ywf88yvnj2++H3xtgZ79/+u/+qTjsiuy+dqed7tTGRz7zy1omr6jujqNEaCLXg7oHDwtxPIV0itjpHaNrPKRqXUI+Fqluihz39f1kv6tK91jW6St9nC450ZCDnTjHPGqY9RXAIbKnqBQ/9XS5AAVTXrl4I/e2rVytPWL7L+80pqLulqAgSv48h5cxlKWQjFB+8RG2IlD2DoGm6WqB7dzdNz7Vp4ndrhbv3viZy+gBE0dBFUWfbC9upP4CtnT7pco1blie/aGOGkiW54a3d7wACPrYzJEfOj5TsPP3l+/LgbN1S6bPYHQ/PCy/Sx//7n3dyrfuvO1INgrh3+Dm9NQSdhTaex6BFN75qCi5USQJjBq193aYKGfUzlvVqrdWKdewc3+yBwkn1gv+bNzd73J8bs37nUIeE1tlLp3gHZaVbBT+t7NzU+e0OfY9HMLq+acoF0s90QxBYpRpkvoo0M6G5uIgYzOrf4ensCWI9hvcvTVaTo++f88+8q49piX/cvGzrW3xp1jiHPbAOSyw9WaHQuxqVeSNsvp0Whw2HG+P98/iqsXlkGX10p6yiweLHrOLWc56TttYWjYOvIUt4elIa+mjAMK8Pa0WeRNFxw+MHmEf3NJYX9kURL54R+dBDbY7LCYLdeIZSSV51z1RTP/lzPo52CjL6wlq98myZTROcx8pgNMupzLhjC2NfWPhKfP0xofPwoA0ZzrS5Wwk9md0Z31q9dIfkjR7GBcJ3qxONxNQyuvbLJg8RWHJS9ssJk14rWJcjgnpq5XyyUQbTaK4qEUu3KcEjGGXwJ27M1DMqK7hUt4xue26BN5ki5ByCVY8uzQl4T8UTYn3mMfRapqAclbl7KfOzZoqjVOXfdqdUarvjP70unX4zEtpf1vdb23eH1Qz+dSzTdgqOaf0zmftb2RntGNcCIfwkEScUzyTBpDl+Wc8txLA128qacFiG3mmj/M24LMRdAAKoBxzd+O2CYiRqNqwNJ62QDVC0j9A5gDGnJ6td55YpT/cSEFfgM/3RRHfv2krUsa6F2AH46t4uc34L3YTC8sYI5mw7rSDtS+sA4BzyYb5PWdlqxwc5s3ezHmQRKEfJ9yTPPTrMOEFshkfC6jPL7QDNZ0oughLVgXpIgXKHsimDwwxG3xfS8wdSowE8TNeuie4fX++cbD58fy3egApBzecfAHRQs+uC0S1J1PgoGLXDaCsiWl8C68Hul2DL1EZ6jcktgkYSfFUN5WtH4oQW5EcYzLAN/wu+oz0TJIOH33NDB3lQ8KsiInYs4nECvOVjVARRViMALGJ8bsqoQ5ADghWHbybo26XtqcXv98vr4yUoVWRP5JQQdF/iJLVTSBhGyhmYsW4sB6ZG4mQ+oMISVyf+NG+g3orDjFShRllt91DwReJ6J/Dx+GPoLrtoVrZsRsnUglLAogVAtRsHEAo0j1JNEf8VzpJFzuhmLGJaImyYw3aEiFX2lDzNaD7M6MUA8nNvrpRAZDhn+yGPWC8KOmND9lsb0BdNxKosR7Itgrh//Yacfg4oNoxwosVVnjmYKMWVz0q4tsNy79u3rvB2HAC6xk6TL/awI3OgMlqOiC/ukO0j4SJlo8DZxIhUU9EiHX3xUu0QByEn3GqGT51RJAhijwAxHuWR28/A9XjeUcNmVjWrwLrfeGZv8WdFXCOxhcBd9LEjkWK7QNgCR5YdFdda4F31ZUwAOd4pegMlBtN0E3G5p0BoFlr+ccgV+uy3ilRQxsgTV+9PFoYjcxS5tVTRLquYS7mXjTJhxMWIgvRAIeGZp60vwDWrw3Tr40v/+YkmkOGvD5fqs5r9RYHeBq7qEvd4bvfrMqcZwfH3pngBwpJZ9TQOVtOz+u1vt7jH2hPvtY9mbrCdEyBebkCfmDZL/R7/IG2Y0dqQ0CaM/CxZUIwS/lz1VwL4xsXG3R241iZtQtjX1ks+/djb/pDcmPH5ZbgMmu85/dAMt0bKdiuotdoRGVJCOx78SUdK4HgdgG/fJGmcCpo+cXdBwz4wjHmNo949LXhtRA9zogqgDbr+6nm+ABZHdj2ZPKgZ8ZJLYsxC+ENUeUDoDXF2aW52SBbXXWiQbJyt3EdSfVNoKjFGGY39PCNXXZ5ov16ZU5PN4cSOYspIsBEhqn/mBfsEvdCMKjuyQUWiuZX2jfsvCWd90SYa6CyOuxi3XcU6F1IKl24xRNqIDOZ6bC4nS+3MrN+AtA6XTu3U5DfFn86lQyxmV39BKCl+b/icQrddf7My2e9i6doehquEO/5EbIFYnCAD1YrUwWhkkcNBvwqVWhykwGYMfQNBXfgHOsg7mju1uaLzXNPTtz6E/Wzxl/nEDBxd03Aqec/CpR/PIdNe/4/Jh9Ry/eMeb3ljETnWRhWJXKW+hHMCNr9/U+zKlygpLOpNB6mgcoOkCe/w/t1dmCbP7CQg/hoz4ml9/x82dkk05j90jclf9vPp3kQ+ToMoBf3xbYG49GFlFsX3ofxhN6Ez5kV66ZTPGrccDyBQcRaElJLzOK7dnryWeVBcXym2XoBRHUUxqZokaBZ+JG7UZKafcQMIHvY8zT+It/mIZlx7WM0L/vYb90NhS+Vcn3qoHdrzSiVvCEo7EkDW+lbbUET/DuyjC9sNgC6wLx+IpcmWfm2jTewgM5yAiMmwQFOI3egATMrjENWz3AFUxpWi0UYwhJFbL/NlNmzj+ES9n5AunD0qC9zfgA12q4B0AFlwN6um6Kiw3DGNuML09Is5kbgeYoMaceLtmKX4yrLV3lIpxik5pwPIrdy5pJYxjqWRljhx7n/ldN5poxGA3v/iiuLdJzYPlBiOp1ysJ8jZQ2Wo8oF3H4zjjdi8+RuHpv38zO7Kk0moDlUXbPmQZ59yeMIZocOeiwXDLbtH3HCewT1B/K+LJzFdXBZmtI+sMTNJCDoGHj4Rd1ZmXjZQ4KeXZ/MQZ26vgSSlk5583rEk8SK4tmwp0xSoo2146Xe/B7Ha5cWnf0haA5/Sst83TXfE164UFYlAfhchOps+gPvgegSo4hyHfiU8CQLcu8iprOHFNhAS1TJE8GXYi9NA9lv9b1aduClWY2ctLcfa7xxq8BeAZAKhVYC/tLmbYP3Er25/NWX678Zauo1T0xjINz2G4CAOtAJGV5EZI/wO0nWvWhm0nVmsQC+fJ5D//IZM5VAiOsFv2Yucxs0pmaYcSNSWDDhtfSMBsmYNMuid0WY03sqftUX7xPioy7DH89pDAEaXUDw2iFkFgbbjG+23sIMjb8VrV4msmy0YxZesg6C0TxXhLWs7J2ycBq7g5AlT6tb7HxDixZVdpQicPfj2NQEncgN8gC07rzt8lQSNn9Nh58EqcTE+bc540pIRH8Ns+dIROIE8ZwpK+naR9lh7nfQUgh6IuTZ+l8icN6LX8zZOkNioUzOWVyZRbIGE5x/Wz/6/ACQSU6hoeZBcpf/spErb8j5PojKgfJrATTo3PRjfZCtcmxgzFAyKpzAPp7Yp9wRgHeHFfjYt25Ue9wkbu63r8dsAmX06oBdUs6AKYPzCuMuwJaqGY9iiS5oSzcQMhpyxgV3+WBWR2K6Y1zCZxe0ayqMjqh11lHXJYKDEMkA4/rkXRqe8Sym34VVPe6ZFzUhVT6IrwTlmqdQkQtA+RWiOd0EAbPZcCInN8++jSYfKJIKzqQ0l1lbPRzr2QiIy4psEQLkCE/i+LLP6gxot/nU8KHZEo0Bq2XtQnhtrowRUic1aidxCz+lHldzTspVjbjQNrC8757M1QSVgPRM2iwQPB+bDLzrVVJuCpgk9qybgKhlfPiQc2rrOvReH5rrEL4dWsZlef4sICah6A4sQdUssQMHK0jLsC2bP4O/iG11EwuBah3VsImywcVflv1svjPRKwoIlDgdFvsrMtwgSgOZE6+WDTkwmnFAKJuveCW2ENnDjtRpDH74nkvKRaJR8+3BZhOVBqlYifF26nkmK1EhWE5X1LDWkdSp3rjJUWhyxFHhFi9vkE7N2o2hnz59/icdyyOvXwch4AcuES2LHjWwDtwZIBQ2zj1x30M20RBxIP9Qc9RLIFocG8DzeuCcyfoAgD3kFteKDOBkjSF6ClNjIPesV9uCmY+BWp+E1pI6QAirDStzeU0ewvVdX+5QnA/Jy6ydGz6l9EvxmLcX80wzjyS2JPdjjqMUsgAhT9ZLU09mOlz6mHyMVi6b9Mjti/iazj6FaGXtTZAsGiGR6LnSPuWZVHWVYdF7eKsSlcePzj8yv2QyOmg5h4rtachfPRSSbJPxUgRf2Sf+kVsXn28AL2f+b+8MRCIVv4/OoSuDrfr01dmFSjA/fYcBICbMdfji9XgUNrTSIyaY3lkLy4OXPLA6DB/4xCsZmSzhHTlKIX94gkE9yGSKca8EkrTF6hvnlQ5XfcUpE1hTzvSKV68bZkGw1wBRjHmBeDRHpnITs061oEzpU7bSYu0CY0kwNTfWpE3cgQWMgGzLRQmv2MgLWPYj0fVAZ8iO5ogFQbrc59UwqXo0NNENyYdZRL3zv4aP21ckj4Lsbc3QVezJ6MutkyiygqhRN5BjUaSOWHTg9eIY4qWDLbZCW7zyaOvwsYiUzZoh0Pxz8kbkBtvxJS/XgrYeB2C3/lpsuO1vUTyxEEmmUMO5SNO++PmqNhopwnBB1I2QNjsovalgrRNdnbwlqaq+TKy4KMzOFn2X4bH1Y80PF+tJ/MHYFgJr/FhDoT6jSPiqN+MlKncIZ8dmn7mtAV5HMamFd20JPesO4NeruCc+r+S5Kl/MaAN5ANTH9hA+PoQKmhFtKtrtj4Db110lUTnTO4QixAN1Ct6FLmZWFQE5P0xDIEAITWOCqUuWCUaIA1+451JplrccuR4oZ5nPUBx8ZcMs8r5l8YQLq6aSV0tpqcvecUUNlYuoKAibIPKvCRjvzUeI8JXu9BaQs4WceUjCpnT/PicYEH90NVnZQ0sRnQDHCgfumC4FS1UyulaPOq454XPWdmAYii9Yec7USd/U0SI2UcO2z+Bg8IVDGRTSlWARveFjm3QhWMPonoPZe6lu755qjHYtNOvzr0TIlRuGxlKPzxHOxGdP4p+5tJUNw6OuIXNrfVe6f/dftfM3oviPHKp835eqjk7kbjuuRFlsX/9Wid9Y4K3Ohfqdzjcs0oEy9tORSgyufHOZbjmjBnKq6xrfS/OEyEgeR95gkyFoEDWUTFsP+TZ7j+AAnVvB6H9oTm83pFSA2LTkgNu3T9jz9NwnAmJ6RgyHkOj9VhAg7TaLRLWVPQhcN/q6wwwK6VCccTGAr/KpKTtEYD33ZvpnqUaaFkSxeIh7ikBaSWSCaMi/ZythfhhtsZBMs7ASAGq5PoTa4wKYNFL+wktwWgAhRxuyvr7Mw7/4tWpsezYCbCTe0yXJrAKMqUU/eFU+51ROQYtfrpUZUqCYSoQN+894u+t1Pp7CJ4kBBaRlpGIQMhY6F06Pm9b8tPjFE8vFkWTwH55PL1zWFr4j5lYvEcHkpeHkebS0xG3OUIPHaQIJ/h0fMa56gjGdjwYacWRrpNRCcCJnHvhZy8Ou8BDSJXeIZxoa2wt3zyBljbkJjD/clg2CGXd8ZP08POnwVvL1zEfv4vU8OocaYETqUBptBnmBT0lU/BoFQN5DPjU5NfORji2O2Cpm0RmK7gxtZ5P1RU0TzUXcjG3nkCzvmPJG7eVzkLRFVAnGWyzpLoiIwA61vuV4fRPG8BBGtIK9/86kN4NDb1XYcbkLMMXarH2JGl3sOhT1SJEBGn3fjMS+0XmrckVPWws7Gozs361aXlqDgv6Cfwmx0XTB7SqXadK73d7c3GjAi6g4/3RH/3LJNMLC/ZHzVUNFpPNYZilLdWKWsHHg8pP7Lf74m7jLvV9t/rkWUI62qDHZr/Jo5nh6mjRwfiRva2cReuGGgnRjE7xzH8sCROOUv1cOq5mticPnvREnGmXG3MG4idhtiNvQC4VTA51jxwFyT0chBUqizZLE7gB0qOZvnJElA/mhpKBUruVo2Yl1aTYA8r49Tg9t7IWYA05pisbBJ8JTRP2kNokkKk98x5ZNbh+j6cB816543ZmUIzWbz+qS63iTRSh3zXfgSr8f0rkWGBCG9mnkjcJKBECYoygsPjhL20OlDLE2O6RtIHnleA7VzlWhlKsINFwuyCcIxFIln9JhvDGeA0TOUqrnLBzgurLKTqG8iR6YQY2YPSZEjGMX+VynYjzNa1XQEWyAUcHoSQG9N9+Q0pU99Rl+CVQeVLuAqdotFyjt4HG0sfoCfWfn18cN1A2ada6xn3FnNopWaehZvtZn69TIZGJJ2joxtpTHComwTsUK5zKCHrAynSHUrHWK18juiplQnUeK6tuA2Fjqjlk5Whet1r0HssTfdSsMyHMOQg/tI+NlFMcgxRBL+YjgjSD3elcOiWWXMn01CcBdNPM8Une3qSeJknUpP0B21eAHlBs5nWcBupsG3vmsesfiN+LjZlrj7Anr0zXvh9B6chYktkbGUD6rHRRJQPUCS5Vy6ILb4jBqq/nJ3LxfTsGS+GR1wMYMC3qalQBuuKvfUNvzRyGo3NHl4V38EQKaUENQKEa+XKPQlOon/0wEw/b6OB69AjRSL1R8oWDTMi+f0ep4vrDIYGeccq/Zz/+DgtHT4kKldhxGbyoxyz/Rg2+9gUrUQJxNZb1JrNGiFky75Tpdb1vvY/cjz58IJVyplgrSx27fLGoiHASZ/Pogt/aihwLj1eeJBHrNz9qTJ5zTdSj/dRiwJmkdZt76JLj8WpXXfOZbt/I0C8waRnyz9UyI6JX+umU0MTgNlTVPHWEpTmLX9rfb2vojbb2Nlp+2r2QUJWSewnHakWrRkV3adFAHvoZpnwLXRW/wvYK21zC5oXFzouDHiP+0Cu1c8q3v4VrC7otWV7Tsc3EH42/T5cNsez48dxPtbx2ukF8HdUs0p9FP30hS/0d2fZV11ZijMB50VAr4Z1qTfnYorbj5qqXI/IokaHDntGaaCFXDEnP6gprH+F4/lzYw6L4jMFvbXF/4X7kQeIIbuXPwnbfM7996Bj59OIPNNmWXH0A4dY/qo0tsod835+mYTxszA3ERZa+8SP6mTYfmjYjsg6NmYu28s5fa0IXfKD/GbjXVq4ao9UlMBrDevGruflC4bnBxzBkORV7dPYDYkbzaZ7mOB38nUhnfVyHL7FarMgjqumYDNTuVMQx1YxZ0tJpxVwIKWxiY3H0ORLdYe5WEm/g237lHl/eWfQe5ao080PKd3rbQNRx2sbzeedFsPovynDkUprLA/VM7rXE0dMRmPbcJG5qn5fYxPF1z1pdhqwgXAbSKgSwHDNb9xOMKV3JljJoGQjuTp/e9lk1hMfYTHperCaboh97KTWZTkd8yZDcCzaOHv3KtHAPsokv0TSUuTll6zY3CKY+yKZaXAibJbXP0ewtQMHu2kRFcMakWmjmVo6QphEbEGhAwvVcTlC33lxxXwWKvqLKyCLL5VogF8ClrLwApa/ae33h2gNiEXF6miJofmtqNZDON/P0HbSJX1h6oU/lx4WG4Xc7qWa5BuXsKmb3xu1aDX2YemXRkIlVhB7+e9ywrGV8yYYDovFVzOPFc7H3yOmrBzJIPuI7SzKkZLlelEiaX/eLAPt2G7xcJssudvJX21XGrzq3/bS+A65X3OAXEzeelibD5Tk40F7IKop7Z61QAPeDEWAOsveNzlCajGn6czscCUAtjps/nkoPKeIMVgd2I0/m6dFyqq0ViCdAX8d4Oph8q88g8Ye2BI9QdAq8exF0FEBd2m9tvFTmv2vB7V9FrouiN/CO2FfRBzZdjmbuQCJchmSy06a6ypflb5sWXKPYj+rKSsv4XjGSQulLcIBly8ib4gLw6vcsfq+6R6bOHQdg0Lz1dxy2wZvJG/Y0YpbOX+XCkZ7KNFs5l6Lw32KWwKZPqHAS7QwXjquMMf1MzZ5ntbgxraGizIWIaVnnVcmJpc1HkXdxWrDRLfWiUBVUlAFf3JfZlH1uSd2hIFRxMyg0GurlUI3SyKjRshplTCTezL+RdaNLyUYGoZSdoWDiRswl1tZfT3Gqz5I2Y3nC5vugRQuZtHQBa5YM74j1G0h8j4uvRI11LqBT6I30K25qqFYjsLjW2mCnK+2aaRnCAy41WbkBNMzXYXH6NmvfZIK+fDy3vdsEvau/23SBkxw8XzvOZp563ALpy0IeZ9oMVOu/JHJ1YJfPOIO7fC78M+qKInQTAip47X0zQqcp48VFFblDLdWXsYQHormZEVcybDaw/m1gAW7cPnSk79a59BdrYBHCeHPKB60tqEbxqm9XH4fduMM/XAOhe2OQlOe6V9PTpdpMVo7RLm/NmTk7yEldPxkP4qpGeIKLxRosZS0PQejx8qhbAZy3fc/msjSeX6xj/I7g+fc+MlqIoo2NdKIW1THDv3msMkhiQEJ0Re2q9gbu0eY8CxRJLLcgf6c9YYfwWSQLmA4A62Qew9alHCA/A1693jHrCfQR594GoO/m1ZdH25sOThcTTbM2Cq6iI/YqEeyXbY76zK9K8fQB1yiTPTyseB42J31b28tbMN+EaMEMYip467QedNUrXcTWoOvcQyz3t95dr71Nyhu07AE1r69uCLGVW0J8GJFIs+81gXD8m9BGnefF+J1WFkPpfps7bKRc14QnM5Fb43h/j6Ls7LgrIENi2gT5PF1W+jKf54PEio+vZ3kVPnutcEtNLTRjfav+8X5XLV9VcGE1gPZtouNnVEPXET0naYbkkKJ7y1vy1ILorLnQdd1mE1flJn9UYHFf5s+buaZJ8xXgvVZEez3vLUXOCl4Z82BTQEkRHPNeu1QH75WBt/N4RDcLPgXkCIst3tmqf5/qD9ffIiBvTKyp/widivyi2e0ZUfW+ThGY/HDryqPdOTn7yQyUFNW4PqG1tK9fzci3vcONmpnxUZ9XNaaAmiV/GLeHPUdyenEV++94NNhrBY4xHNn2FVYiThTyre4heJEolQooBhYrE0Suzo5aH2PVQzIVAnb1YKevIzoSBWFjjnaezh7PDtWWNjzO9AlaT8y+Usg9TTIdTC4kUp3/jOrUfXMQomfUB7IprG7673vak9FCOrLzd8zDWQPUdW1e2XoDdRIgZsYmpV6xC2CU6fXwkris5bRLP+gr+krlUR20QrQ1mHo6vunZ7CfgVP/Piu55scBA9hbHBJqDel3GvSTNZqTjBaxROpRG4xgSsTThJZXSpT8/hQKOybsxrYQUBLWBfmad1Xc3IypcOXq0frWaXDaaJvHuu9gOKjUh4j4Z6hY2PtSakjkTUjFtmHd68pVRuVZGEEo8kEOzce/mRFbjp2WcBUCdZUsXd8KmO3W4fLHYl6wiAXTPY8F1HVthj915hG2qKn4aUa7znXJq1u/rbhhNyjVS+DNhgS/dKxDZ/bz4GbaG/EfVl2qPAOJyYEaVxR6Im3MTR2X3Gwa2OUkqqey+JnnVr0tRcABdpdzeSvxvSnX01YR1Bd6fLrK3NIbiv8i20spj56soMadOuOKNGcnVezmLWGP7kDrEdRZeDK6NgU3O8rQQ3Oj18DDJEPsW2GZyivPRs0RaDLiApuI0FuY2DSP7JGSBu/4j5dul71fPA5KhIdQSxOzdIRpqgwt5pBIwKhyUW67K4okH/k3/MBw3i5GD1P7Zp37jPmuZbtImXT8pEwJL4PXnrpJSDZOcn6mi9+mLSdElcZKdmOOH5X/N+NLNYCt1uVqeAIckqy/5MxMQzrdNkPp6XITTBh08UWvPo9AxS0jOxn6V6KzS4woNZs/mskQz4GasBs9kA3uHPTdhGVEfDMD5TGvzYHCHjAUBmY7Nydzt4tT6DfavfP8gAtwgofjP60jAqiRcy9Ci/WynMJGz8tLM0pdCN4MXSo7DCxudU0ouH5YZP0L/r9PDLVA+eJ7oPppSWprTx1XsIgGAZfMdK0+hDWB5F/jmldXxLjs0w0i5pXVlN9alkBSCPz0mNYiNcKz7sJ0qPySX7hyA5jAFcWvipYxjAsB+15WkQwBZ49tidceyrDL7Bs3mD834fhykR51aJAHUnmAO1SKYCCfCsK4VUvdqdskv2sYwnyWEFq2YgS9uWkQ3USir8wzQ2G23qGMyWiZloWPCvXExymmpbipvLm8rpz/CfKP4kB3xr8bepYOrqQXka4mqrmSppvlOvL0g4OflZLpJ2za/6UGvn1X3k/bs3xrHE1xOl7sN3V3t52ZhOFgjm12NndkO0Psw8qA/k3xVw2nHwbLNTEuxZ7rO2hITrIXwnTbpEyeMAeAymj9m/yqzhCtv4NiRTJFB1ouQqZ3Wxd9dTSX1ZOqLXLd0jzS768umV+wzp1g4h68AkLkyhLqDsrvFYajJN+XihpxC+vjK92wHZOrZ2nB9MXpP6krVlss7vCeurLoIff/b7NQ68NOBVNfJl+BpN4yivoek5tTvzpNXyus1maBUgg07/hacUuZG3c+3xCFJsakOcKnTELQu/HCn71QU4OxA2uYsdEMWGVlqoB8WelKpOyBvyE6DPbnI+wwImEXCYIJlpl8QKiAIdV6XZYgJPbCcucBvHDjFIoHoxA9HEDctrYMQaAbi8lK4DPpc8Nsejm1R38l3S/Ki+7qNrGZ0RY0AgliqueTtJA165ZxzpqPytm5GLJBYeSzAO8VQtbQoAD7VE41gPvaSMm5kTDAQ34uMqjeZG4pm2eTWkl8QXSv0xW7Qdli73ldDKVYd87Dqy24EPwLssGUxTkAxVNWwsMP7a2TMeHKBYpzkRd8dXBJdgaf/IRAhSLNaxf1C8gghkK3kZbqXbGo7zZ0Qd0BEndCi3m4xJxWj69BenvGiVKwah991+aAraIH6XZnZYCRiPZaXpxSuMqH/KtOpmYpm3cQpdyumahGxL5s9TnFutzj5pvtVYZ8n6+RVqkdDkpUUi/1xmtmgrOnK95QU+0Z0r4AQiapOem0j+g1h0hci6CWwhuxTwNg2A7v1OF+l2l2iJo9bkGfoem9eA0dxtYJWCkZVrQDkCrkNIvWJfbr+BWI/2AvZv9WVcSmRtPJH1hsDecLk+OISPusZpAK/Oy3kLsfX8FQqosIMRwEjim6eFXH+7O4vNOAePmmWBMpqu+qP90bFGeLviNBdoa4nhQSNL62H8qe4T7SSq8vCMeSPlmty4mgU/mkDXuNPdzNYiAms6ynbaFbZ9IvZLHlaH82TR4u64zQgtBZh7iVc3GBLASYWIr7BphC2PHnJvzG+Ddr2TmP1kE8ASoW8OEdnZppBXc6bqAhGJHBhBEm6XXCFsJmatsN2JjYekhUizgaW5o0BvEGmvBF/1iTMJkxsgxEfu7gPYx+byOy/Q/HgAlBvCkpM6NCiR6yiQTR2vTdEnVAvMLYUtWo/plD5m/pRi74LO6XDjlXtGcx0n76mMVQz/GOQztnFDrHCc8DZ3WWyWJ7saQFyvuOzIxBHfMXsJifApd9rkzOPZHuHxjMgN4KEFg6LGrWcGfKZCMSOEotxg5aBKtAPkVor8dOH6J3E5otppONcnSoy0akj5YUTkBR6Sjx7t6ymopI0ICYbPDyw3P6Min0yk5KbTF6ZVmDajfLYJjvLntTITIIcKnczh5VZgtMNi++AAnGqXRs3n67omPD5QrXz4H8IuMjHVXEZxnb0LiDS1fBcSVzv75E+d+CSke8bNRMxrX0k/4eZ1A4eAR5iekZJkCueOpX8Dsiujq/VZb0tTn3cZmr9MSSWuNEk7AmOT8BeF8iiR0T6I6cazIV48ryvmN+N3MlhamzU79a5VLw5S2MGAB7gz06GxFO3dTMNMmcZaNB9S6wuUGp3RT04nu1ypAfI6z4/ku1X7fMmV5RbkXvEwuWK/TzGgc8N1f8ruauU2SIClJHqIIfN9bhf1/Po95S44B03MW26BHN35B+Sj03gjhJ4XkfJKPu/mQGvs9GJ1IntKlQ7eaxhpnvhO+NqJ5R/haxppzH6ZNAc2tlGY1ZPwLs0Djw9SPY8x/qOxsToZMH4qd3GL69xH9yWyN++sFlE/Qlp7811+1RTOdAFoHd1/SNDGJiSfihsnXOtdGrXXkpBodKcDqVdBb0KKIpNSPjcOzTxcEYN5FMV6hHdI8XMFQ+jj6RznN6/zJ/PeFCaEkMcGix4DuB4LxSmSxy4wDwjMAvxOJ9e9S2dElj3O2mva+S6T0T/M2JWDNkVnYGC98eGGaBvGfgoW6kwvD3mah/mGze6YiZjzFWCD9zgqj0vs/So4ULXq1z7q0IPprcA8aN0+bh6HjoRm1EpOSN4+AQln44s3MqYU6G+eN/14Rm5ET4b/IWMu6gRAr53LmSsAq6Jfc6obMYTQ+vgkoC6eeB7My7yBbymNTjJA5fyo3wB3ly9AuhSXMJPC+4NYKxlJeByO14zuccczkSoKrGA8ynAyvLuTZgtJW/fbciJgmGurFpH9i09HbrQpoV2O95z6656+4e/PbWKT5TFJK//ERDDiyNj+wUa8A5c9HLT/yAGRQg9gC0RU+FUzV9WiVuB1SdXP0EYdrq5Ds4EUm2ULkFF8RWfvzfwQQyOmVD7CugEVZ5E+98Uj56hl7d+laMKJKeoEvZQBKv2iuii3ACz0hc3bReynXbrBaTPKlxmeMJwGPHe0s++J+9gy3ydN4yjb9fqL72OC8f48kh/mCbAoQgH6+qdesQwerbq3UxuL7kkWp42eucKvPJL/2InOW8xa3sEdi6I6m8MGvVOP3FxM2cp0WIK0y9t5xp9jDRxhyAiwU7QD0X69HiRkxEhwKByt+1sbsyz+EH2g/7kXBi4OoOa7WLSiYefsmel8bfb2hcuBn0Ks6Ds8p/Mve0yDZ8z3Z/wH6xMkQt59RK95gA82YHKvlmwpdoqudTPHmMmDzuUp/3k4whYUTHRbXyMV/gRmb3IRiUaYyRD84AjIDKzyUxAEOFExgvmVMyrbUSP8aXD/f2d8h9kSvb2CmDGRkRjmU85R1XsIsbTWDkaqALZxHe1WNC5rmH2CBKcfUzSdwbowbOrX58XfGB7hKcnjnaXyvVEicZkoxxbj9GU+zZiLsc7sMCWDy1Js3gGTjF2QGmLh9MbHllAqJxRzogKZcqyZOszZsRY0fi+Wbw939QvATVe92lvIyGyQTZPZgMw7XqXSQLS9AaQQBGc+WyIL4cveAhYDUZxRTBAIpthGD1ms2DwBbso4TUEsIU/5i9iN+/SSwkxLyCDt0bNOWnmI55M9wUmSgGVvUvO/mTzzb3Z2sWPga+8qyxUhXiIm1ooRZMnSVxBpjJebRPOgu6piEJeCic1L7g/mQpHOmbxNp45l4wmQKNgIvGDcvaGUS/Ly1aIEk9B+NG65HLBEUKIHae7sCmBwP3uKyMP1ZQSH0rAgwh4FfC7lKaMYonVGL8o5VtHcqCeE+HSy0RQ4/bsl9V/ia+eCqfCUISm04n8BocMmI9bX1GXYP/O8Xkc2vPvPHguXe5/orq4/HugNEjBA+i83/58DDe2HuFMGubn1C4GlA9vum54VQQ9YoVYmFXoyLvyv0P0nruCnIUPMFc3okEeUWxeOu4DJfMtCJF0naKvMUuo9cYDMJM7dMfschrIQO3mSJ81k5wFWuLKtescZcumiX8g6+LmObGK5I/s2KfqKGM1mmvf47XlO51nqULs7s9Wk6cOffVjzLoEy4iAeMTKBv9wFXoqkznbnmC4k87npFDPV2iybWAdeaWUyFR/gvfN91smfLF6/IV2PMR4FjkWiGcnMSidReQJc8Ml5mv+t8p/NUnnatU0cXJ99VD3YJVOuznsnRT48O7P2qcInF3P/CBupnyKc+A3OIplev+7oSxZ72ZXSDDq0mNkvvgs3anPnfbPi3Fj7d7m8ynBGvnvhWlIJeO/sHBq+7vtUu5kKAecf1hpx8mRGHdxn5a4/f3advC+fMWruQtmZyurWRIybhAHNvcCmeafNSwu82Zli6f6pnDuDYNg9CyV/983bvVD0iXRKjbNlZ+Pz0zuBTVuWApdvnTFhFBoK+pNSPEHrI+/Wfzcv5FH/3XwzsNjuH6NR/zuU4RWo5+/JuZKLu7Pj5AlsB+uQLdiDY/DVv9gO0X73XJ88/NU2kDACpXfy6b//QS70QP7z6wW8V/6eR1O0onKHDZmQZQUBGhmSD2ao3Dadf8U6mgnl/cXH9JPDM33BbjLEoXOFmgbUs0ZTS9kboX3YhQsghIqQt9xh7EeEsiba055zBoWd4sIjhOr4/TRJYe64DIXzMHvTvLJZGokAiQoUcJ6PnEJS0tcfBcPf/24neDBz6uSGEKCyGpks5anMynnYwI7wBzrhXydDlofqv++7efMhZjoCImQDrWdGpjThxJaP4vMfa/yceGScTsyO0+cP77SGwWxoM/AAz70GQWDbSB64JPDywLaZ4CSuf0ozRTTpNoTg+dcy73D1s2zoORtbTh0uM+AkWr95oNJ/JlpDBysErYI0Ed+sm9Wp7mTPE6DqJ4aD+X1531pV+Isiox2++4zVk4Q/Ku03uJRfHIToVD55DU//LuSV+d+dW/ufqiHizINdd8fOBD6lF1vCsoO4mEQ3j1krrgxYOOWAyaowph98Me7K9Kk0Vq1gIMMR84HSNDOBRoTJ2OHcM6nITEVvTdInNkgnEkschFRvn0hCPh9594YSuTPgWpzywrpvAa0B8vSb/OYThhYOFuw31rTCfzkdLobbBIuATIBk09uLO9J49SmT7XjjfZG/bmdkrMny85RIvbifl8Ri05iy+WsyyLH5pCbg9rlH2MSezTFqeUA8Vz03fu/YpEQK56g/r+TpNkfrVb9H0K7ZsjI/ixaxTNBeFNjaJAcfPsE25mzpdPIWgOjtDNqm7/1M7ttFTmrof8css+MV4gXSmXgtlBBZK0rO3Btt9SCszIdMI8DIW8WYCVWBijWRg9PMiVdKl445auebzp9x8NoQfQIopBEaiVPI+igOfcWHdyHCj/39fiUxigy+yJBuOu1/enp3uP+RplIje5ukxES8LI4/0MN+8pHOtlC7q2hMioMEyU4mYsrVGs3IIc8+kFitFFk6TTlpFDWkg4A+GcVSfXetqgt9QOg02tj8j2dsi6+llkc41/Fhm6vLkbvlh41fVPJv/SjCj/+PYnT//T/CUYUSxyd+aGP1I/e06H1zjGcfLzfdgb1pdTWTDupmcg43MLROmNbwpvpnQZLMnSY4t/nhNBmPMTcASVefBdTM1FgmgK6UUkAN5AykT8x+sAMS5MIJQHfTmCO/swE3QOx6GODmiBVTAHUqPeMw280dxTfr+X2EyIyxdq706iAjRaGgrYQI8zG5Haq2UtP+6iLjQwz/Yw3CCfUnlR+d2PZxul3bnXNAzvjU+3cBlCmGClGFC4gIyR/8Emp3hwEkWilRkt/iM418xSRhaylKwnIj+9b4nQ2vTa1ITgDNNOOjqzuVSpFEHpUEIP4McJfiMQB2LxuPR9Y+eA6mu6s9AuCRs66IV0lMXbEIpNW2WqlJSR2Hws7mKzdcRCYxYYBlSWzd4mmQDrHTmpIHY2eU/f6WpLt3ft0DJy6ULL5LVOAGAWixA7Xq2WLFHgf7CJ56RCJZO1xe5/WaB7ISHefv+GKlQ5FDb9w/7xMt4j/6g2pUP3pAy+E3NzT23TlzjEdRlatav9a6FiGW9p/h9Jn882PvxnJujW47PGdypFx1JFU/N4QCyTLkv/Mrr22dpp3nmJcgG+vQXcP2mrAnntLPDXLkHS1UBjXvks1Px5Dwg4YM6SXfzuEQLX0MSG2XxgPsCJtIhGFNen+4RvLrd6ZnKtlWe05FwV4HD9fw6gl8BUCsPoj702qn/Qz8Z/6k6t389eunM08ELCH2Zbw1gFmUBhNwLQsZWfJL7jMjvPUHhncNNSXxPxgLK5NsEn/Pv3iU74nm4lJ5fa9XFHPGo78Hk/epmOn+BB/SnQq275RnsbPv9zSj/pwxyJxt0sDKKFbFn4px6Q74nJTq9xoTFxY4NsA4YZyLJ8SrCT4ARrLqRrrvAMBvA/tPlf1irfYHxud5E6R6vnpW9k2bJ5UVYYEno8tNvY/agNbdFB7eSXxaiiRib8nfTwus6o99UZQj/HccKWA23XWuoC/JK4HjoAaSmW90eV/o8tDvFgSZ0Zw/nRtuFcsdNv8U2zK42qOMfA15Yhc9lBWSMU3F658JC2H3XcTRYtdIwF0C9Yhd+fXmfugrjE6e4v5TBesfGv6kGGU4Ju5WAzxPZfxvFRuC4K9trtRp/l//wgabB1v1VmOp3DSfT5gQv5f5/tpfyJFW8IzZCNvsYOUcdkecwdK/+b0pyhUuyYFS/xzBZbc/RuMoyOdfOeKHxp183DXP6Pto/GlTVju4MqfJlJwBY9xLJrZKTnPzEGIGvux5GhT76gNV5m54ZNnXTwMrYvsM0JNcbC79eh0aC1vCeiPIlTt5S1Fx0uwfdVFZ17FLsEoEZv9Mi4KVaYzLagh7ieagG0Irl0fNSzrm5UtfW8GaQ4gpbcChkE7XjgdXq+MkJi2w+YnVyYdis4DIp74lSS5wk+GN2nqueQw2R0sW09ijLaQprfycPPB+e6Sc9vL5aoyuPa1Dyc0t7dlE1tnkCCR5vdjCLs7w++wQm634fFbBQZev48vBlku7Ph15Uq3Umb0irK+N8DoiA5qdSmwIw0hdS6ssdt2gtfVBjvxJc/HC5vdicT5ZLoD1+aNBRiAGsvVIPpggSXkwWLidQYnP274oxDWBgCTgwF85L44m5yYbzsVSmJNIYF8oB+CkAmvyIdO482x5ij0v6Umw2cH06D2g7pxOGiPjv517FWsLGmVEp+LNTh8c+TO5IpvBzt/RTHrl4BuyE2itaEXFM5CE9h+r+xY8EOMYNX4Ln2nnBM/b2r84WqCJB/dusFNOmKlmLOblRG4B9wyoxD+EOvKi4/R96mbiC3cc25fg7zRpaXf4pp2kt40sXwoa2/OBudQiqzETyyKCCbo32onulhpijODF7JtHyKKZ3hh6r4tWgqx+Rz0+6Fycjf5bIfU2y/3+Ou2ym+TecBKkjP6lG4oRBSnmvGWBhKsrheXgPV2LdWsUKjuTGhGbMrIaoi1ScR5fpnTfC8sE8uXI1X0nCcZAFy2mtXkCIfOrsvM+KIn0zU5v5gSiPMZ9Lq40P5CJ/8uwZcPju3nX/JOZ5Oft7bBOawBPiGeRNobKbas7M6KLXkYbREupDU0pGVjhhq9WXR11KE7bNYMHn+LKebHJO707Glv7gW0oN1UCW9mx89qm9Cn8wrRFhoapxOSrWYZGyNbB8tAkQGasWu/FZGF92XGZRJ412Em62lqYSVBo4ZDN57/3fJrHBxWfjnOfszydHch/ErgJxvDt8SQwTY6/af85gZmIkLm71ux8hm6V8/+AgwWzREocLBNojMw3eIKL0v2CV1o66jDluGTwjQiJVremA7VEy4erOhc5LPfJmW4bKcFlOyk/WA9ZYtS5nuoWZEweY2Uz8YDF42qIYUFsfVXPt6f0iG/jCns6j69fMykf44RLXDIVPHPk9rDXsbm8P3lzvDmEHXytW4PUQQm4SBjjDRa15imhwnxGAVRZY4x7wkWesr53hvtV9l6BDRpYb5TE5d3DotBa/Unzv+0uBE0DtrLMcHOv/Eqhg9Bg0fPG4MJ2L2wa9qDtK2zGuwpWwCh77gJNqn+0Z1y4/7VCaic7oiyGFoBjHUv/frAjW4ZZc6uO35sOE6rgcZwVO83bY2K7DjsXxBTT7n8Oe8zyvFr9aCU+UEw3gbUdLYhg5SV5/Y/qxdqbn27ad9NiWM08M5+HPQCZmrdJHrTOCOp0Ru8UDK/sBumtX/KRY3h8tZdKmllW8z/Qdi4Vdjhn+cZz1KRmHd8Tljv8X94y+TlFECzWc66X9sfuiX8IRb5xGOHAkQ/Ics/OO7LaSfr5GY0YnvdP3MjxJxHnfhYNwRML4bQDO/WVpb7E5LyxtH8rNdtMiNSms7dRGu1geCxEH7ht6ull63eZT8qqV8R4m3tQKeRuqiehu0qwwif3RMS0YfzwKOleGg7NJxY7exMaqDaZjECpJSxwrSiKN9shtI162WNytC5tTRGBiOiRFFfYMKTA7JMRYDmNs5R3z6hkCVMM6sjtjE90ZBGwTlH6xeARqt5DCN5oTAaerVDfJyHmOiEOuH+DNb1lv1eSQno2EhJaymXLrwlB2CXnzCfBQmF5UyI3OsLntA+Q00U0z8J9KHNVzTNyp2ex3wQuCC5gtlNiZrD7sAlq6cqbvF3wx608H0B1ioJPhour9HC1be71AMfEmLvhWtTl5sTzy/ynzy+A3/PP+U6RRrhWB+/NwB+hQZPviux8qZ/LtA9PaSUcw99Yvxgk7qtkC69P0gxfvxK6jljtRiJqg52fOF2H8198f8EvqHz3DG2+l+64YxIvHEcKTPHnFbiPWzvSEL7Rcs4mtmZq/TzTtDBE16JZjpmV+7nF2F3X4M8wOGuyev9Xw809XAzagibF6/M3DeGtRqH1aV6CaolCNtaJz3mhkkQHcfkQE1UZXAm/IPTctoyFk5GWLvwq9LLV0sKSmQREZYaFudQjmOhawi7ShE172Fi9zYoAA7yOMYG9qge6j4ny4JgEIs/j6D9PHdV/9w2SR+TeqyQP420DZjtgZ4ap3B67bsKRksFNMQ+BMjuYpsgMrUyMLvKlpKsxopKSyqJ4BtJycSRc1h/OBQwKU2fYIvkRBZDAELvXSfiKmB0JUvtN2FmvDRDGtSMUuQ/odeWwUCRJYnjzk4AmVQZ9bRiB15VVECnIvbY3Ty7wFw//DAjrf5m3l/CNXpQJQwe4jEUKOKm9zJVnSe5/cXDJK77lmnw1+K7JVFZpMPBsr6zdUGRpstchjAPo5X3BHIPpjrWNfMdFRt5s6RuU9wTuIloC4Jq3XZzqCooLzKmd9TlqUcdXS1x9bBjKkM6J0VOFcyMzFvZaHPJlvccQIHv1Abpm0H61Wbu3NK4FVJt+aL3lo0Apb42Va0CCPEgKK65ZqFkFjtAoSMnAv8HJQulmntjkd9GxoRyy5Va15kl2jOIwhzFNdmFr8qxC4yzi607c8uOxz9jcl06vihIAB/Y2JznkLXC6htv+HKRQ52H4U0oreZ4tv/HHUCNnpNoZ8CCWfPALefVDQpJ17dS7RzMkr2RI1gvx62xr7TOf5pui11cgITe7/B+DWFDz60O3hL4u9HWgW0M3QVmLr6lj41fgebtBrgtTzL+aolPj3u9/TQTC1qEtHBjxXWXYXPPfAAR/7wh5M4R7U4R+T2jf94Z2vne04A+q+0Kf4OPQs7v/HqF5PWSdZxTmhe1iukJbjdhAcyKbte9znC03n//9mn/WItf4o80+emz+8sYxqTj6jN/K5ZzIOT5tYrGm2JQJscqzI7o5RRCE1epvpZJSNVcSbNeynAKwG9tSZqJm+pDSuyXyGrURPr2qeQ6PH/IDX0uK6T3+SVlYp47klENXJ8RhrAgscgDs9lgkLbmEPxRo48jfVk2UecyEVVP4KrItOiLqeJ3bydc6R1CrDVORGZaHPw/lYQmvRxxIWEGTNABRb9bpRtd473oYGEdnKqC9+tGc3FcYVwT9QACmG3kAWF+jxzDdtQlNL/UtchTnvcl1uIi3XhbBy9yEundzzTxAslslwUWFua/oNQz7o8eCWBE2IM9k6a6myJ7JcJQ4GnMEs/F5C1CxVVDwgh4AsT9J8O6Mdca73iBW/jLmaAaq9UHoaC10RbTm69H2CKKOUF4JdXQR4GynCfGlOUqHk1XpAk2hrPHI13tjcj3EwzOM0Wfd09Eejk+2VJwFRzB918ubvUT08AOVC/3tt+cXgKc7h/hvSs3eHFs627qxunkgSkpveRzxOjow8B6mW9uVdUMW78K2hTVo/NX9SIdHdWzaDKuFFBoCBDPTyUCA1aesmHYzCr6up6neVjmy70OMXe24TgOmhsPijK4F9nfZ+ZfTSwwe6JOOhODfJUeD7bhBIXbDmJZ6IdGGR8Sa6sapfQe/94CYFApT84YL5Qq8ntQbQRp1TWjSwRo57ZvAmlp3vmoVRTaSrG9C56RsNvEoJ4shgtU9Eko9VeT0hDgYZ/NRYdezxVg8H5zwzMDZxPRMMODW66OTK5FA0GESjR0mO+1DjE2r/sCSiq3lUqHxEjYHzNRsvGSNlX8W/xQRjdDcw/PRT8+3HM2deF8cNVnrkn5gtrYtOpFNsJbn8iivBJ+gfDw1zuMk/l8UY/g44U3wnl1wnfSWaxOyBEfy8WjCm2COy3gIJLtBEL3wcmLCm2CS4DmqPSGedmQy6j1xxC0S/k3Asz7DsgnqkP6zmOXLhPC5qucOMXM86zELh0XFonTpD6hSuXriEiLJ8Rtpzut/AYumUQIB78qzE/4sHs44+AcxIMCKHusbrGBhlwNGrWrB5kyDVBFjg2nxZCYDnB3eT/g3BWN/D0P/EAx/DxgZKzMn4DQvY+1HL38nwNkj2PKFfdBIIzujvoqZQWH8XKtgQwnmdcQp2W0I8CIedhvPfT5UqF/PGQZWkB6Dk5AgePxz72+q/E/5rFjsjLxoaqBt7cBlkNv0qPbKx/XRehw6/HKH68FwbgrP8TYob4GqD7rI0FOItVcCwHD0yf6iB4muOkQhf7neDoAaGsn8MszicdwhXH8ApOwtE9OeLGX7oPexN6FomTPfXgvbzuQ+xxCEMo27W9zH7AzFama67hPczdPW351y2bm9eQUG7dQ6u45agRmTHtoazUjOBpns4v/E6hHlZoXFhslyxayDWc+wffihmMf9JM2SCU2TEmWRmYx2haVKLCTlNlF7COU797STCJCD2S8MFkZrj6O1gzNIfoEjXONuVae60bgwmRrqKMw6N5HCMn5HeB9+07GzALpdRsBnz1IDAguGrj4QstqjDZznw1T0yjOXipcbI42gndxXnYGwe7Nu3wPqYg/edC9BbmMiFl1MRhIrIPUwAJL+sofhyKK5srlzZFtIsN4aaWVA3UBUEwK35PSVrtj1lLd/bQP9VaQO9pLVhtO0ZH3x6Asha2qbNPJ3yPtRkRH6VfIXmOyVpp8dAX6rqn2VPKYX/VhmTUuYtsW94jaWtzZFUwW0E0/hwBd3QpL/J812Hq12YAYpMt7Ep7JtnJVwhPcup2vi3EY9BusNAyvGE7m/nJGBUovasb/ccEEgoHXgPE7XF9981017UUcZ+/PGGIC7I/sBAJT+VxqezJU+BFsmUkC0zwj5oniDUb5F9VouYpN0nxuXcjxY5e6uYDywIkaB5jyJP0Lc9Sj9RMoNYrH1cdc/AWsbj+jvz7Ycy8OpyH2dBNsznJzG7hApZSBQr9wl5NefYTvmct59rBBjk3uKBP2YdrU3AejJPmO66asB5nuEmNQ0h3BHCbjhxFSx4awyrerpag/OonIPR0rWIYgentsc5t1934SRRjvYCwIs1rS9vyffcI/T5Z95K+estTsNfIccSlr6UWVoyarhs4QJahnzYUa0qYC+VfZZwCSPrRM/qyOV9npaJbNbZVChTRw63ceipR4RZ87iPV6BXVQ4SaVgkCh9mSgLT11zYtxsAab+Oi1R1TrLtduKilFAO82Tc3NYiFUzSpqC2hOeDxkHJ0T6W0MNig7AuivO2QLBFym33AAsppm+4XDGboITswVTX3oSpLu9O9XzNJHPOPahZzkPBTV/+sv7uyAHPtYuIdMcthJXqdwJtv1rQkDtODj7ZkWR2klxIyHOci09Ad2K7wN6oK/D7PhZTwoPvteB3v99aroD4QOwLrWJAHdlQvxD15Fa+A3aNH3Mbg9wbZDsEbsfS4mRKw/SdOe5bESSrbQGnTDV0LC/4r5nlsndDJFqnNGUOlxxb5LnbeK71X2SMeN7+veaO8sbunWguEW4jGq0LYRVRjCSHaX58m1jYdnO9BbCG7e/V/YzOWD8EV9iMy+iVbhFGqdV8q9ZA9M5XRKK9UFHaVxb1tF3mzvbQ55MpgifBa47TxSiA4nWU1aj2mWW5PMxZ9g+4hSnrWNVnGUXNemwIkXBM5jlTKrmnZbafLDHSFtcw5yvfWXGvHaP1jWT3jXgnHi6hdD2kH7srhAPau03jAPv0fXeeDwit8emwJo8mCsFO9aqYmxwzaXaGA1ETzKlJjF1iqxEkvpoukNoViVWbzhueewwyR4cny1oG/S/+iM2LZwjTT3WAGn1PF6OAqpNtPo4jMEk5mQlNYLU4ZrWdf0fxF+QcOeaqUIlqPDYU3T7ccZWhNoWxzbPgWq2pOXjL+Gtr6FFNteffTybK/qsjPLuLWmDkH492tlgCWZkhRizsj4lcd2cZaZOLIOWGW7G8QJ7sWN3nG/lkI/VJqebKKMMCO2Z/4VhBpEl2o2OyLW4LYUIS8SlNcMwiK8eYuYBqFfsPX9rUZJccolX8X0DwRhvVM1xRsobPebdBKIbKFC3wse9YZ55N+fINcYu4YbgSrFQ9Cxm43tkAfcq7C1S0WEemU1Ut0iXDql09ksIJT12myU9Ikl92VCL3bdIDYVznKCmrnGWdzLmvdNLm1Ap/1hBSUDrCRm3mmcN9IOAgXa2HXpo/4hWItkSqWnxc0k0pfxzhrmuTXJZK18OPv8Bfm/tnmndGad4Kv559QJVTZxxAqI4xOJq25jf/t6Q66eT3Q0B+GL0xzPI8k5bILqJ8m0GoHndqeJeiHNan4YTCUDYuWklMgPr9/6PFlwz4y+PkqX9ryVHu/jPGdnNdr9zqQXnSEAu4r5EBgbY6hpZmxjiajOtKaFPL3la+fZCnFpud7ACti77ujcJmNqZQNipDJAHQPUUPkBTwz64m5BMG0wbp50SiCQzWklkkSBGmJ1QdJV/H6JRluCqLTmx5uGFtUx3j/SfOCMDfHtJPZDCxcqWN85kXWrFU6y1rxdbB8gZjC7bR6EBaar9NPRtBsBfxDSL/ys3w/Xeh/Ynzf7CiMby53zO4Xa9b5/lxo5jMVO3j+ayKtzuMhC/V7kAHN3w93YHujdOv0iVs/sULm+QhwASPVg2dncDa83LUDKA9Mq1hY2xZ99ITDA7vEybh5uOzVPWRPpU/dDRciUuiBz08NRGmUbJ7PNlifpRaGfpP5fvSUN0AjI1UftgG8Pu983Wg9w9CTDlYysHwW2Ryg8kwEc7I0HfAe6sKZSAVUvZoCWquMvS0hw8AmjrlmwwctBbRSZ7ZhsFjryLFqaPekFzRL9ostf3UPRZ2LN+qYSAIMIYfGO7MShhsyun81umib/5eG4LjKJjK+o9opuPqHxptql7Mu90lwg+OrVJXKoEUP/GO6cEF0dzzPaD6faCiBuDF9kxFb+VJlJFq6a7jxikueg3Z2f2N9THyG3hajGy7omnVwhexuYJXcyHzFYxRqnHUX1fp9x9Q9IEZJ2qKVWO9LrySeQQF01GfQhrbcRvneoOJdlo6r2Tx2JdRHtEa05kZKsWHaNwYgcSwcLfClEL/DxL8+D1Yol+VM5EskIshnZsNZHkGR95SZ+R4rt2W4XC5TOb1d9b1l7vjoZUgMzGMRBZ0srfTXnkSDIPaLpizT1R0Bo6zOTuqNwLd2k+5XqRrrVDHf94N4UJ9kdV7bTcz1lEtQV3qVpD0FhFGW/9GpezHpuBxBahQGuywonLPVmonVJi/S2X6DVPw8pXKSVSG9s0j82iDjONUdxJmouu8D4sq2vxSkOzdQQe1ShOMb/ZWuxBQzlWKc5b4gBShwuK+HrdzYGapDxxTXYTYl8W4UtVAxDgq9QPPH9baYRNcBe+CBqmfLVbmpx28ez19i1IlGI6A44Id61XkPIw+MMtxzSRzrPXqvoKrR2enIxVkeFLJYgqSwrREDHudmmXMATYPBGu1YEw28GEirVL7r9b+QA6Lj2nTaEAXhqnua9eokGPB6BeefAxig9+tdaHfGYfRIzSw075VMP8gVc1h+60Lj/EQYiVmOhwVmgIsbUp593F4yd0jKGTaSC0v0Nvtlb6abXLxkTY99cL9yIyd459Ibe3Gdq55Xf/HoK6lD+w3WoHRfaC8it/uvafBC+iRkEjrnZyBkGmr7P4VV/c+8F3XbaK3C4V8/bPA2NftUGtN1KNOLzmYXgqAIy7SkiVlwBQ9YJhc0+lOqACNeXxD4vI1HMrt/awyG/32KCRq0DUih7TipLfgPP8rXXNXqJ3X9PxEi3qo5xGWdKOOEPihq9Bo/Dz7HGF/5qztZ0ZFLpVOQWoQxU7sYIK8Cz1oJ16TUcBIbPcpq75pO7Vezdvb366yenmp1s73eR0C6ebnV6lt9qKg9y5u5q845WiRd1ah8+hFqWWq4vJ+pH08nNRZ+O0trzf+M4qEUbxKRblBg3rMZK4UU5Iy6Kj8RrLudSxzfmhYeuYpFWPYBIgRh3aJbra+h/7w1Ow3fIosY1zhdnYGL71wfFDB/fGgV6YFHLu5I+C3+cdE38iLRwuQBIwjh963hMANTH9O8gC0nV1pE+60ezLjSkpl3CaqiZHk9RSNJ+49bJHeLESahH4Jb2bx2dvNlcSTLcbUFD1/L0Q9MsbtLFj9TShAJuxdkjUPniqNaIBsg8u3wN0HkbpKxEv1AdqXsVjCYR5g4r8A9H0YkWHPtF7cB4A3amYfazpWwR1MmAO+sBLNrMSYELahl8m71qr/hKD82P7IGiFcu0ib8IRoL2XOCmkSNbUWvcteNCCDRaYzEmraO2W09qnltq6mIXrkOGYFKj6N6t7r752ypAnei41fxLb+6rXJWXATB2XOhYeZ/HErxqAmNt0kiWw9YAj0f4+N/fZPoztRE7bthjIQoMogdqcMN/G0yT4WWiDa0LK69AEihkhWIMjgjshoHNmCxY4abHjygLmWT5Oyyw59SZblpk/sQMR+y4ORLIppHNe6+VaGrUqSqcVwkTaxrR8rLiHCYpukNiUJarZcAiCPDUBNNPLkqJdQNvD6TasBqYXBPghVCa9IqwlTl7mdqwk/CDD6+nok3LdJPS92/fYFJNDbcFXEmj7E5h55diEaTTl2ynqSFhjjaMEu/BNkDu6FE/XzE/2czlfdX4EemvUhjEj6fSh9wLRxB4wB33g5V8dJegx8EDkGN0PUCN9AiouLgiJkuiDMHf2AYS0+JiUUD4AkBn5uFkM36qV82HP1k8F80cI8i6/o76U9WcBNOT96OVqi3azDjHaMkpwYtSTiHkBwPt/nN2e+Jwm20tSTWr8JQDwJ+Vuox+BghIQDVNuhWDEQfv43NYKrI0xcWXH3QhwnU39UBzFHuws1bMjJaisODiPAf8w/nTNsgSjeLeStlb8v1TVOmM7sWOjH5WcsWvjx8hXuhlnox/UwwkjBA0g+w0dtAS4wicOzG6vmOUfzhu7rAg5DpQBqrPphlVFJENmZ1GCvuvXDapFj/aMeayS7xUpybErEzg5yqHt04SqOnV0tskntiRil7FSOKZlKNaNxLjm6hp/lHpOcw9kmK949Vy+z8R0lOSeESkADX6K2/8qyHJeNHLw3KPeGnVpMc9reJUk7rBC3Gr7K3asaUaz7Ru4fEXgBWyL1Z1FP9o8lYWPODjtMpGvk4jTc/p+nwYUHGvm4zG1O1gtQwbyKNHxHXTy1Hi4i3qccIduD4XUX6DQ5SPh9587Ko5iGD4Rqca8/lW6KSQSCXIdW60nb1nEiBgSUDo8yMsYKQtqb2B1jcmQOF5oeYzVxx9yL06LETm2jRxzOHyRgkWtj+EBcHdvxsj43cwQeuxDcXdR9VGdwtHjbjCoXtyRRFFN3bIquyDEn6oxmS0iONhl6pP8Y2aGDHLfgYMXXEHKav3oHYp4TsHnhJKLYPFF5pmeD2ytZD6139hdbZRvJG90rz/vfQ0FDoo7sEHfV+hgi8nJnytTdA/gtW9ubcaq2VmuyUSQVrG8Uetcx4bPAh0yDcfUB6XEm/ppkYNA27cO01Pc0VFIrswbzmCjUet9Qok/HQgK9vHnrYcz+9CjFhkTMxQk3hoFCNY1YFOZjUx8lRnHxDGZVWy8ECt16pt7F0/mEzDwABnNSHdDxX80HO5KooQL07LBc3mQGaIv/Ahil8vjTh71lVByj/poOA3oUccsW2LGIdM5jcxiqU3PdRqLCJ0W9wUKEZurF0njErj06bOcfkiMB8eeUII1ruw8+SJJHZ9GMzRjfVPXR+/FmFfdipoB68vSp1jwks1dsJPNX4ll65OAWEbUU/okpFfxwrmBp/hqxPIAQrhLA6qlmII7fiEDXiDaJt7TG2ecfRotDdAX+O5heBnFrU4XFESIlwO6cHvsVigG9b7gzZE1+hRoOT429ePkTl/JYo2GW/tO2JoFe13d1aGSYSvM3irRVb3q/YKAQ/QKshWNoQY3UPpbjmDIf50oK+MU4oUi5AexC4YZwVUcA6/y7Sd0QXXKVeKh7K5BEjJp4IXsCWMWg+px2CIdDzs4YVc/At5lUpXB9zGHxz1xx6YvFi7EpP8K9XXTKX2412ysfPu+kQ73zi9oml72k7vGhNADbDkLqeqVSuLS8u0WiiGZeeK05ZsoHuQwMdCKgJgtBc/Rer3AboY2RWwTuiwHOfsFEfFloO1uTwR9Dabz0g6ie6NpuR/+GHdrBTYmxVRT7lNj4c9BC97cbTXZIrrFBTASQ19J1YEuz6GjUA7Jy3jVilP+a6deo2Dzb8zV2D3e9X6DJbkqKCth48MgcWyrh1APsCVuQ31tYxswqTzwU5VB+7yOoVYnZQomCgObPIDOOfhIlfq8NSTrMj5Pqdatigf8/C4vZnU24tVKTn5W83xoe56+1geIZ1kd+VG/eRtFfNjPncE6MlMG3j6iIqM39AZSZzTaOfGqjDdjiJSTB6oYl9clnlu4IZbo8Ji1iFxlyREClcPsbjICFvcUyZR/63P44AG/ATLYbOIbJND8sxmIJjMo0s9oYh+p0kzEUDQrR85aMr+yQKoDuWtQLzJRVEKfmLsV53oumgpThka7iTBTT/626aRyrF81uEf6sONEHHAo8OU0AXQ0mPb2Cutg8VJMxWPTnWKHRazCk1Px9gQ4x8nMsnooTJHuAij0Tjm8OQnwxvBe8yL7Kt6kt30YzETGsylTF7lCPV9uvxaegi9I8RaVKMfxsEQVKNtbWDw7HtGtn8NG8rKLk/EborDBLkgdU9D/Pb2/V2WHyXJ7+eh5tRmpfZT97cyjDUwh/igfGRD8a0yfSWzpR1he2TxKb2009XV1ZAHCHbnylQPrhdciDv+b4aWD7a8iL258tFTnyuKkE1VbA2Tqss43bCoHsp9e6KDF3u8Hrt7WssmA8urYDV7C5IPIzJhk5muAcF0ng0KTa3jMyNZGI84B3jx08WMSrjDYqWgPlke4JTbBKzujPSF9dNVfHPKafJunl1tbZpLErayO2mZK1tvLHwfW8Qj1VGL/VvbGmRHHExhPysklr8IeIPgQOpnscj9MjVEPjlwHE5nXcRuA4UjF20VEwldBqZZ2qAcxa+tBUvW7CjpumR8h5cPNVTut0vEK74y1AzfObVf09mtCZVcoexBugAw2/81FfsNOhPEAzVPERyVlkA8vI0eL9UoR5JJsqaStUZ1LOc1n6obLKSaewanwK/wXMgX1ao74/x48214MH0tk7BqRPNsYTkbs4aIRTm3XCqjsizEtrxROuSVbpkFXBLHkKy+OSXUXcOCSN7RPY+PGVPTuccxIWLMTS1Xc5LjgneQqo8bihMDgwbOa2x22dRO3+TiX3OxTrBt+uKMvrNiiSO5Ex+TLotkNOGHi+r/7ksGE1qJfKW1OIB2gRUF9995FCihsyj4+RrNojVhlAmwIsS4HT49uWY1hi2T4/4B2yWtMCCBtyWKEq1vIFhXY63DAoDdhHxluOqQKAK2Ol5I9FVz7rg1VvA7tof6oqQkZzAigz50zAy0QM+FS1mdhHCiMcvfPoDfdUZlZTsZCgp0CfSDxSKelXmNsuyYLNcg91AAZg772JpbLnSrXsFWJahFnvt+bW2TXB3m4psv/xoQ9PvJOVeFVqq2iYURjoYVaNjxRSf7c1wWDtmYRLdWydI+2ZBBoQ7LiSr3ThNjAm2MBmjo6S/3OLtVxbN87nRL2jkTA3KE3mt/KKZh8PA53XLVt2qXBD59v8VOiC1O4x933DI2WEghNVg7XojUrSfnCDlzzgD6DRFxdJK011/fdd7yvmGekMEywmk0qZ3zsDXfgiAbVskeEwXd3p56NWDLgxbbwLxffBDsA4QE3tv2dXxSiXkH+La2LAMKaGy5BWrAyjCu8hvgp8PDqyym639npZy4VsKctzKIHqPVqf1C1VhjFvp0F0lzOiVr1pS88rwzxXq32y3ULncfpKhuAhOpTO6S/fo6+k3kVtXgopv1fyQwJfm1VIy1V61d/932BGWcoA3BDmI5k/LCyiDHsPVZ2xz/BHNeiOf7+Ge26XnJsNwPAybpDvUa8vO98qby9cbeh/oyWJltT2ilmNfyt2b2mvxPLRx6qPTIPHbS3/gRA5KFCjJ5JqkoTcVTnaCuenv7vUHQTyrJe29lPA+wBexuyecOcVtyNlwftm/QaqKcZFcWVpOac1bytybdCNc+G3yjeR85mhptpuKqcBgn+lXrlSXxijO7zEtBPqCVNX3vznmnF8BycCIxGVEMPEhgDQZGthHTKgnqG+A///MrfuvIbXAVOBu9qD8gG9taPUmRQtWaaqiX0GIEWTLvetIkzPUyD4T1MDweaxIX7ptUCLKGa5ub9xzfrI7sJTBurFC/FghqEYo81Wao2P3F+dY3KsEBeljIEhA3xTq9w/bfjN+vHynXnSpOhW45P9WzRLHnYTwD9BkbeBuCZf2qxbQxCPz5gwYUxhXi3M+JQ43rR9c3sbpISXg+3skJbgCzGNo7+Z7B59eWIONfeSrLvnu+8pRcSv4nMBVVggYwoy8KWyk0rQyNqhyyO5TxF5HRtbwqLms4qFt4jr/xCc1T30Z6aaBHaRumE6a2ch11eqtuK8AgiUfVae/mdvcPLqaK9V+uzzy98G1nLg/yIblK8lXKlttKXRcE0sxsdg7mV5WTytYx5eKRbz7g3h2LRg4oTY5/1sdExVfNh8reCDyxnI72qK75PkmoYY1tqtQ3m+7yxrCQgpcLSHfw3REP0fXrZ8z0JJ9ZgFmaziHgaSxw+Ix9JpH+eIxXWp/EJUbwBvjudA7LptTl7jcO4lfCnOsTG6DHgnsqXngcyiBfKonpQfxRG8iHzhHPybEVRncaZcqFcGieH8/1COEtBMaDGXDJf5/g6J3hNKgT/PuAW0s3T2J8Zpv3wDRB4PcJRMr0oHexiJ0jVgN3t+dxULowapqwxJZBMA/aaVC2jwTFj2FsnBJcUoktvxpuLYeXDmcxJke8vLuUfct9OiTgW5UZpqYuNXTZvWRtnRlDjZ8TdcuqNcLl/ryODzmYrW4GXBckM4ZaHXOP7vwXc0DdaPJ+9//USi/MdNeGxFvuYeeA2O2Xam/j2FBJIcT+3i6UYWU9d9+b1bp3atoX/e6Nm8Q3x6Uw1cBlw6cRjdSBk9ABcNtMV+M5Ad/Pm94AYJa7T+BopYvKao4ue7O1IT3/TI6muq9epVCFvacO+6HcD+dWNeRv/IzP7ZYSN0WjLBqYyGKvdWTbNQ/fpG/dIGQ9NNdQzwSAhnplVCe2y2Rn+bNAcPdHqxxiMkm3d9HGf2ZDhKTaDQjlxHgxuu9V8XzojaYZAb+49mCNH/Q4A7VgkTl6ZYjUrp1osfhqFRHK3H1QGnp6DH16POITGo5ilGIyNmFPJRcUIY2jPA1/YOdUEGWh5HrRSma0q92WhqLyPVpoVyntX96sgE+/AqjKg9xxErF5nn4K9ykNUs6fBnHO95wV8WmEIsNookhk9sDOG957HP3L5ZC8smYIMD0eeH9ACUKbsxrllwG92L8VPWcsX3PkMcmGvBCEZLY7A4KHUVwnMlsH/5dVAss5AEtmhw4nWqWg7nbUbbD+lXrJoog432rzEF/jENdPu0ZK9qhoUM6apkyfWeLVnVsxOTd4UKZCSFGN2hO/nBVrc/bk7AKnXAx1FRsATI+lYTB7s0ezj8ks53C0olurPjD2eSAbMED3McWFiOgLoaNvK9/xHajuStvvHbBaXTrKyV2n0raDaJfipytbNwC4VDoTreARU9hJiQtXC4MNGYSKkdYpXJEn2CF0OF/F1+leum9ymWfMc+Jpv5uUT5TOyfTb21W9/JSa/pjL5lYnyhbMUczvmWsvWBDdNpfzwaq7MCqoz7YwFQPRULGLuExr+wxpnbvyL95yjkCaWis8NGsAi1lVi8XqVIiEETT3K0sYGwK+FALtrfEJws9g9tITVip3mmjcRsp4MpF0by9bJBpK86zMcucd31WKDQbI8727FqArOhvOmI4x6mtuqjBN+1jrrrNyEyas9pwA2tuCYPdeyj+/H71l2HcDkZoahhaAlg1yZTvfVcu5GAkSGB8cA3PT4fwq6ojjZeM0SqFx4J5SzP12pbQIi/y4d6Uov3ZgslPulpfzQcaHbcsZWtfmDqu8HJkYS1DKjD8hf7c8lyYL/w+9ds/z9jkQPmt6KIoEM7y1/W7VYvoGWrMv4v86GtSmUHUWXO3rf3T+S/2k5eW0FFS18CHR3HVVzWDZuQDfI7WYgjfsLgp6DRC4BqKdouvgkXE1M2ROzNuwrRdmAkHrdm9Kiayx1GMk2WvEzEjwCS/79vd0UqW7Y/Fg3An+E+/yub/ZNbz3PT0i34RCxBv9YkjazwtcsRGlczgZr6PgQ0RuLmB4zEg3Y4JkBy+CHJHbdM8wYzO8bKXCv8HOK2MPvNWNriM9nDySqy9ealRAFYkOijH3CskwkW1DFL/836La/19t5k9v3Pdzuk93yK2H1zpXMnLj5YDYnYnq2P0yC29ti6Hzi+XoMKvP593jHJMsxR67SjwQ3flKYTlBeqpSydthMetm9XMx44SaW1FXm2ODrcUmrRjJHbPkCSV1SCcFA011BAniJYnG8uoozE0BdZ2ZCYLuRWSTBu5WQ4/NuX7GV3CXO7HI1bt5zQbgIS9zef8I9ksrj/r3cNUh6ItYI+siMzff8IxLLzCvSNWkUYXlVmNBrztEFfTUUGXRhf25uoQsSKVI8lo+HjdLQ/SWFNycqFspQJkv5BK5AFzFW9hFNvkzxlh9Iye3ODcuzni/F+c+5V6U9z1M9BhelPl04E4WmmRR50SDAiOahvJfoqA5gxqm1r37yZbg/lLbnmQsHW4r3CBlXtDqXls5bUDhbiDyIb8JaM7ap6hNybeF9BxPE/NEtsv1nEQAvqAMLNkTZqJnncOGsqvMPEDY+tPxHIkD7LnbEZ5c6CTz/AVIUUVwYKbCGqf1np6XipOuAcH6S9PziJ+zi+lMdz66pgsD90eaZcpR2MksAw5pn6bYOWD+ecTi2oW2GQ5IELZVgEgyMdLETXPbEExC2R2mMMa4Ey9nTR7gs5JgP4YQ74nl4KXm9o/800itWckPqz0n1bcxrP5E5RRjOMK5bdbhGm3TtlQfS/I8baJ8fF2wwQkoj76JfLw/lcUCUAjRRnXST5TUVHpZvtwiQU6WESWEIpq/NO30G8qPjUfNm1QT67BV89gD1OO7tqO3o5YCwvVUMA0Sx3/wAcqzSi8pFBQfKOSlIJMCtV8ivxbIaXDy4fXBuhUvATt8ncaq/FvAt1Heik2bgEu0noX7Z/bQk8VvdDaw/Zl8rvv2H1Jcof/Pd40+yz8ouLz2+q1Ql/lbEEWTCe3E+C/umBCRDluXIiI+Go/cWP5xVWyeyVNTE9djySQxILsue5N9q9vjV6rv/6CYb2h4I36dZuBB95WF0Mr5bKGNa+yBEmsI5o7qM+5ijfxqilpJUoXuAJRR2/itPtVKLaXDdoJzHpBsQ3b0MkgFH1HhRGnXn0b+aSoTUCQXkJr5nkj58bsISgTs46QjiO0s7L8Q8ASJiX31jYuwDOM9mif6ed1IHUEOCO24fpk4xvaqfV0MeCobVBIK2aX7lCNOj2AUCQD7kxyKA9W3yCnw5loIUDyfzVeoTF5A5FxYBn8Op52T6A4rJUYjA2mWV7v3GPu+qtXE4nKJ/dIYGAzS/dtKYJl92+fz3o2llyhvuszx0c/s0L9vQcF+7WkrzvG145JpDnr+/pBqFerTmFt07Ec1nFTUst/HzX7pA2ffnSvvTnieh3zwtyMHG2rsm47fiOUvXeNLrfrAWAM4eYR9pQ9N/2ueZTjbzOtmU0Fbo9Pz5barcAoiCcAbv90LR6JBD0rldeIbN1BWM/UagiyJ0glsfxJSkxJi2PhpQ+TpgVAjzrt9BrYZE7lcgD3BzBq2mDPi8D3YHwE1O5IAKXyI+5bgtKa+WnqwQYHxAO58ZtmmuvRVEym8mEgdihDi7N0jekpAmKuYRYFvoqNBmWTwDgB6R7ijQTsU+PkzSfBDgR9YBPGxVPApcUIBODh1fCJMxnUtxG1IB+LZ5zf5LeGdoWz4FqvH1WYH6E8uKgEKEAyWMMSCeJU6EqBSn+DIsvIPJ1bShfAqipI2WiSGz0XoB+9N49Xrgh4GJjo/OCMKSDvDhhzpw9erwBbCm9wailu9TeF+0M7cAUTcfBXb2fXreiGetTARRYmwpE/IVIyan4V3uAK6oLtnmGIxSN9VvnGLJcyj67YNkE14NyIhBAn2B9G5SfX2q8HLJilK6Rw5/fCkJw+7SBYj6CttXP8oj1bvXSQJfIt2qnrGPysb4YW7yY72t7R1lA42Qty8m5m7DMOgmYcg3BgM17zDTTpwiRzGDBDEE2ab78I9V3cD0ILduVI5NikHnhOM490qa0HSx8420KrIaIBukwqfj/61+2quc1MiQHbQC1oCZvGSt0NSWg4+1OQ7yW5HUo0HF3iu3OPtE2k/D0ijGvEWoEKn34GmvI5eJQx5CIo/re8+Pa+Yax6UQOV3y55edS+cozznFdA19wfSCYGFa7OrSXNH4U4o8ucrNXVLkh4fwprl+coYHdu7pNv6meLbz3s5t50epQl299FuI0Es8fvIKRziqFs5x7WJbwAfkR/L7z1od/V5lvY4fZcLpwu+jrp0fp4NOGwQ+dm/6gPJ8ZVQwJ9q4G18aTcdYzK0Aat4DP1q+FIttIU21HVAEtkL8b8oS3tdv90VYK8tZ4hrw6Ucu/hzsgopIXG/LbwwNrwWkCY5F+KPHApk6rUzJhLMoIWGleGQgGrSVFmS6L2UifzfxGr7ZKonmzb0GsX1THaLR5FImQo4T0BHanzXoAMBQK1XyHMYahyCGfIT6HR5mOzUNZkKXag3EVWTHvYR9JjnP6bYcw9YrxptC/forUCdPdmHianXH2DGvVOVNMdpvd/DE1LZGOb8rJi7xUr/rDiQQdI8kqIIipu2ZJ/crLaHIhMA4GKDw3QbjxGQOHew7V5mrz8pGPMpitFFs2ZCsz7wG1f7tC+HNsWrb1hgS9LRm40Ueyi9HGxDRDKcaxA0pozMJvHuzoFuI+D2IRHpFoK2AAQES6yptOGsSuJMUG5oDxnVL02VcLmW86eI9VcU+6xGhyVhg2uqhsrmmR727jpqxlPiQFPwoH025BaWmVN5Z1878RMlyYuaP3WIfz5VLeMEPcBL3i4te9wRNKM93ee/OP8CPDE9bEcKs4Hd/FyeyPcoJzz6vkqqVlun8eKO8/+vclGa4NFa1gekdsQbgvcC06e2zvbqHi9wA9VvMG0+p5oTYY/O+ktQAPR8VrMkb6PMMGPdk6ea/B6s8IcEg4nrfg8RxRKnWDFZ2SBod+wpvg506OF0vZMOjORUCqF7yo5ayka+itrUzz1gjdqMQXh+cxAsYBVHXdy2RL8fjdO+YhcOouyMz1gNyxnbNgNrkStwKJjLOTCj8xo2M/Tgh2yg+Gt6plJfxf6QwBujOy+1gT/0heSNDtJzVBMbyg3Knj2Obh/9y9u/gO0MaBRYuO9Ku9W078XASYB2GcIu3z8FZp4LrKlXADLCWtexExyc5TAMmTpCfFfmCtQMCPt0zM5aUGIIW8mROxN2WScJB3iYIyeELST5lff4DENmH/cJBS3Kc0TnUVUGzOdMMpJHtzany3pRhAP0NgaOxHMhTggCN8q1w2+RsP1infRWcsJ3TO/qQpSWKgHqk3sCEtVEYXE7rgQegjNpZjnVUDWhJ1BNq2CzXOZEDyR2IKqH4jJF5OwBArI98a2H3ol4rKvJ2NG1jHU/UzrgVNyPGN+8IKsvRWWA0WTzyilSwQkyOutvCZFuggKCueepyXa4KlF6DYE/DWCUjqKF8B9gqWcRzy46xlGN6Qc/7nA8jtW/l0f+4zJS+AjHM3Q/wrBuWdlwD0xdw71bn8FoCIHiANAONcS2nIw7MaTopRZ62FsBd2keU8x14zhfeWpxrTeJR/ujih4cN90vSigKip42YKBygViUjO6puIRAD36I79DpuWO60apmVX3oZ6fwHlwconxVzEh9zUGwkSY+7E5H0Lkwvgpge5hqSlf611Bs/EZuCSOC5qXJNym0sbhT6xk7Jm97cEUb+E6j2fPhuXh1nB0r+yZhlkpSmWSXYURYl6lgLPWe4d7gJqRXNhmyiJLi2tVt811GWIFAyc/JsN2yOhH3WUSgBA+vc3CGdZXq49TFWUQy3khHRaKLbMcwJi4bKzsVWiXWl7Po93jy3GihWpXLWzIK42WmkJ2VmL8hyE88cGSXZpai2T7/UUBCIHIYdqzZdj3ki0sjaMWtdbmlmzWJEgV2obM7xgKY91Z40dR3DgVi9Zw3mc/Yw/TGhNSSaHnUbcs93AFyYH0F4V98zyOQ/PlEyXRPyHxcrJQO0OuZa9XJorRfnGGSAz/tYVTwVmHJAuUkwVRRDOmkWiyAKhEdcNQzTRPaaCEnZAcb3QDbkiOvpB/gXfe+V3EmMTHrSOUR48H/EXRUF3V3NESwbRIQkGkCiPEK376ms4jHOB+1gk0Biwq2siecyf7pKq1X5i755NiIR7mZ08IHOoRQQQLlNL9W+Ull1rSVpymn3C10stdFS/WrhdCZSjDi6B3q7vad8PQeBNotX0ijAL9BcQpFeWh/50b5RqNp2vZ8o0Y5j/wsFNLn8Kx/CDJrp8rUDZY4Mp3FBE6E90g0doHusLZqPRydMEwD1X5gbtbH02PUNJOwvmwmHLHYRiGZ8kL6aG+mOFfIPPqcEeSvDFC0440bcqlooiisZTiv3d9nLokDUFjOiUsy2Lg+gsuJju4+463bUFmX5fl+2+fNTlyYB7FyNCTeS5ujJG6T+zDcslJtZ5W2Y+PufgKcfe1adM9Ebnt+qx9qC7AhC9NN6Vuhx7UVHi2ZHTuuX2oqH15eBS8BJDmuQ2SMPzwBgrJEB2F09eR2Yq6ufciKzDXIvTMZ+83RJuEEPvrVBdKDfPl0Q8oUlOykid6r8ruFf7yZJxdrKWaC2UffIB9mxP05tHa4c53ScM9T0Bv2/9RnQ1zRj1gVmbA37fpw9q4eTqOigvaYB1h0JKrwq9BcdVnbHpSzJVkafA+MA87kwDhHCpyTQvsZpieZd0fj8BThj/cKmY21zOerv+hj80DnwdYuSsq7DL1yTyntCgWqn3wwk6V/1GJ/wczWj+WhO3Nvhkc9bAt0s9eG1LLqAoaMNUp2YLpgdLXqek/lax+4nERKkorRI9J2EopBkHA46NKV9Cix2lcBYkcrxC8bBdlgc+1HgleoVv8M9d/Rd9mXX63jyCLDVimGs6TKAI1VLRfbPANphlu/yBWcSLt/u+x2R8IGKMQPWOfY4l3p2ytGiI4/9efprRxzMiJWz1OBGQKQiBUqD8vEVtUA6lDtB8qASSZj08IXevBKVs5Op9fHS5Fx6f09YnHXks+qFpDk5h1y599CqLFOlaWHyxNJrzvo9wxA4M575oGj2dSZ1FeKAqBCas0aTxrU1vZZWFYDsSuVq5VmXmNp8ErA2W48DqHvmejDA6wZtw+TxeW9N8F4QgnpHC4vPn2dcKTeofup5Wut8Y/P6pQHE047Pvklf1KcB3ztybTzgKtNYrd0wQrSC37zUiIiq9OTb3wqmX8EJUQqwAXowW4I+9SIQcLw+oj8tm0VYxzoXUe7PvtDmbJdbJMmtXGLsG2E2u3sL94fD2I7Vy36mp9UzpqUW+7R3bPi4chZ/Ll8JhHljpBZvycuJhiFOfEUN7FM4unPtZYYc1UNW+ko0tboV+EuJb7hePOrsB+PsmIwyoM64KZa9YgiQYYySwzA+2U8OvtSmX3l3/WpyVUBm6iEQaQl8fd4+4zy2VpWWQ7ORaY0zWncccXz2ZHgrUA3XFL9t5l2fme98Bq81s986w+9oRt/ZTF5z5v4AB+//Mc74nz/Hmar+s8CsR37bYK8P+DoDvfGBX3eQ1x/0jQ1OcHIPszkb2eNMweP4XGWh9OxeCq3M96AXF/h57vLFM+AdalZads7NcCjLt/rjjpJ4UB3U/kyPcX2aJHDUkw2lEUBDDzxzS1Zfy7GGo122RUCU1cdh5w0VFAe2WMFyOaKI0CJ9em6myvTmmMnqUKo5jl6P7T/BrRSbcZRMuA/TIKBH300yTLvHWqkUQg8rqHnKcB2E7kHjXY04TdDz8bKgTsSkFoBWRKcYkWak1GJFmxf7NTmJ3OjlxSFQLxcO0brlNryQq/GoNMLYprOiLlrROidoIL0cDEDndrV1ZQvepjxjHs+oGPmaORrOMLBAJAGmWrQEjuCQJ/XOqFYk21x3/CXHWpzPlftz7KzWFCOh/LD7YOjdViDWbbaXWz/p5M3EwkYDeTYttuzWe2DkUF8Pbq5KPZJhkumi9l3uXJVRQgNmfsY9JgLTPgXgizuHjwO4MoiEfph4AGnfRKkxTzDIhXwpzXqCcTyHE7J6EnCXnCFdS7KD7QEBqS0JyHzf3SrLqe+nORH25SQ7ehKvrdNwBMzbzIFzKXLyQToicRMeqqAFq8+ju39qzqBxad64NyBx1Upy6zVSAfviQhl/nS9viqfI0Jz7+9xPWGqBW3Z6C+uHTpw8GO4vhuJOIJ5kD2x3C5xjXtGry1grecC7HhMrnuy+bLBKpIgJrEMaXBDxKCBxLkZojkZ3zPcSF4vdsNzr86DYWMa1CbA5n1IzzkY1txPYTzah6JVym2H7KCRa/xZdkugcbYPzAOGEKxkBcMXRmYxyrmgD80T4M94LTho78XbKBxc4wNo740iW4r4mwEvZrdYTlYvNo7FJBzDN1JIA4BuUTV9ks7gMME8Uq4p8RDtDUY91sQAMABJNoQlbu27P5ae0kGYDsbjHqQ0jYjMJ2owOxCNUVhN2woQq/lBDyCoB/ojMoBkAtGtCXKrhRoKtuyEyBJSIcTVLCjwXffok2A16XZAQwahlB0ksc53huiVCOyRAxPmVD3ElfhHZiumZKf6VKyxJiPA0gG7n4x15vmXMQodvQeHJt+zp6tm7kkYbCYwzBHGNOOV81Kkl1HZnqGTM8owUhrkAOd2uMXQ2r7LkI1Km+NSXYOyTVDvcM4NRCvNFJKF+hbmIjWRzmDqBHR3neVjNJtXEnmi5EYtfvqWVJ5AvwiPMN8brZ8D45bWStjdVPw7gNq3o3AGuRwS3XZ19SdMOp+WypT6aqi+2RQvw/YXaF+7TfgIjVqayTsGnoPgsHdkg5YAlSlha++BTlD0JLHGvT8naVwpuaVDtOZ11QxxWYtB5CsUzPruCQXiBG2sIKXVoVWwoCWJksT7CaSHWz7MU+X2Swou16sW6b0HrDZ7mRiIlSyNiuXy9h9BOdc4eudL+APXosUwAWMasQfHhYJ58t5fTwnyNitBcEhSG7OMjTGxdrhLVIKZFgKQBwlGOJAGXDQNG/OzGuFAzxgZBuhp2hGaTDfG7lnQDqdcUFdaBgBHpRidA4uqWqCrzJbXQDFDuzPoF4K66kfmYKdUuGTDvLL8wmkKTPP875ep0DmbRDbi4vF6sbQBX3RQEduBYHswGaUt1/5+fC8k4Sop6kk43Zncl98aLa1QMYIu+qroc9NjgGAA45IYJuFlrTZA458YDeEOYT5NOlHq184c4WfRKP+OtzEkNbmgfVVr9sEJxC+XNlyLz+LjWdQKRKuU+FLXDWtgCW76HsXRkWFgU4NbaZnDNsnJ8mpPCrRT406PK+LAYvl9kX50buaVKQUMFLHJlsyEong+D5MAhb9G7wNjgbOQu6CycbaViXnkekRV/1wpj6/BLN77r0En+TWcvrLOatwVCY3qvsZyrmw6iKv83+nKrBp4pYzGgdn/IHcp8Zd7H3b47JpKh2LQ6Uwkj4cTRNHnxvVBtOZxyj2F45hZQWmQKo9XRnh50b7qlrkDdmbWCdCBXNCsMQhHBwX6Ah2imZyhHpTNT+hyWS2OjeJ0mp+iL1Ra1jRkItsfQrFewvh3o3VsHGktfVqywXwKeZOwjfxvvCRPbp9KIwuGGZuEJinOFybMifn7UdVwX7w2JJxA7qiSo+FB9Um1Q+8mCN5y8gE1jrQtJlFHG1N8mXLmDLpq80yhHrB3uFn1HzLvcUq7nLevwamlWG6ipJskjrQKsf1xF/KFFex2YPXMuSsNqgGUhtYLxLnIuXJLIvQTBfefanIP3wXk1R3gcCqiRpBTfVdNklODVSs9djCXngbcJeKNEL3Pht2mmLjPgHszbsR2LkWpsZ7fb/4hfZy10FLIoBVjVIlqWC0qflmqprUCIYnrgMMgRe8lRQezXnMZtB6Bl4c825cvesoWnXoB4Dc77MbGzLDnhIGIfp8jZMlSalOUOWyzyrKaz9svFslRXMudbzNyynarwbYGcyKNEtizU7PCzKdJ06jP0fTut7h3l5ZiiLJGKcbfGkCi9u1m65AsQk7eohJFiZhUbGjMegY0DM6ZKw2eQ+bUYq/lvKr6gHqiMOl0jF95YMInwLnncBZuSiuisirl0tKwDOT+1WPe1yi88YktfJwHJ4y4+ljUlS5b94tNtXaFMAwJauc7jI4047/HPo7sGgbK6Jy2C7mu/yuOEI+kGVr64k4VWfuEnOjR3VOkysrlFIGKO5RwIHSJxbZDNZm3A1UXxoW2i/bKq5HJtlIPZ+F/l2DrwRViVS63WLcN5sOrkgPyAVIlZry4wdK8eTED/Z8+rduclDzlP2PJYvW3TiAXIBlpKcpnddrK3bdeLJLOME+X2DtuwvySislUqM6LbRuV9O8ddZ1FSEk2i92QWk4KIgaJXG2SMlSQ10hpIPxTWaTEhlqQGFcuabG9TrP1xYS+fPUvKAsUHFgqFS80jrvXF9gG5Q2/vzDB93Ll+FT6KsnMkvjpyTIeP5TW0xbCa0ex8NAlLBIWTjzXMqW8+7eWfV/TayDYc+cpjGeLMkOfIQYIna0u13F9xw1/7VEO7dSJLKOCjMHYyrXxV0GKOdlSNyJTIWRGHVG5lBDZ17EdzmD21bk5Iyv1t0fs276+bvsys+05DKFo5rcFy6ujYlnyGe98uK6A2skQT3h48tpyBalk0h1dgoUk1iduitLkVxDr5jcu7uOVdSiu0VaLrzbgGzODy677WZ4Kc28jZbLDGJqeoOdJOY0H+EG7CU/nO1w40FiFoTm0k328hcIXfYakDjV7lvWSE+gzCq7iMj5toTygTRG4DFqNgJlU9X75rWi+x2H3lOi475ceGnQ7O9ogkx9xUa1m7AA0psuuy9ex1ac/sIktYuq+vIJJ4IHhgHxIbR1uhkGxNCahMJ6UAfUK/xdOnPhn1jOFUyZtFzbEXl42LNntkNw1Jc6C3wx7ecx9IoGBQwr+93J+V1u4QUmNs6l3I5DJ0ytP3TZppvrcQ6C87C/jr8to+FVJWzFbaL1n+AZx84tHI/f5t92UXW5lFpHBt9Aj3eFHWAqw1Hl9qnvxw0czT4IZCDZhX7Y8knrQ1CMztma9VaC06ZxmHEFtpomZdJx+DTLcxVV3sRLIbKh5mTSmBNBbBXv/admFTdtyR0sJq4Tz0WI0SmNygYxc6AWW5RPwtTQ/Ho+gNGWBmCa4GKoNzE7IgywqamjAZ0pTsoE/hj3jhEPevuhhB25zIN1K43HeEDXEpx2JjHITlKWp+3N+iBXhvnMbDE3H8gjXz0PSzjIv12hdG/5U3Mr6xRa4vrr/TLW9HLJ/TDEf0b9XuhL+0DNeDRtuH7Opb3+O+DuFyX+H79UHHxcBlsH3063nJEiHlDHPp6urlvXGN0JDSESfyFZej0bUwTBRmnLAfJm9/fDMsAkQmXt/A0qcvjzkO4BclN5cr/syrxyp9xtVwQ/98VmR9P/tKLM+nrcDQfuOrbexghuMMndpFvGRc9KJlMaSW3KlUVCkhujNRuc8PVuDYn7mnMiMY4knV/E5/6M0GydEI4s4tGeMXTCDq9piGP9WaEgtCBrlDutjoZMj8PB1tqzmnr01Zy5y3wt5zKrkFTUlOMS1Z2mveNGbcBsamR6jWGCgnEuyQd5EqO8TzRx4o93YI+Uhrc54AdYdE3cmcJdWLvCgkRvdw1Pf3TY5JrCWNoX2A4i3HtTOxWvBiR1ywQnUskw73TYgLXYdn/c8WU29vQTa6K88LgcVwKDa/9J/aeo/5FhN9/y7saCr8PZl0qylwG2kfXvfBWme4w624EO7o1t1axQuvgvl4RzB+uvv2+1eQF7gSSm4Pf6KECzqgFcZg3TiMHThLczITVBJl1ifc4ofh+ej4fhQWYh7ow2dwkSQKxuwtudzXyqldi7HDHzwh2X0x9/wpE+4q0NGVdhfU+rmRExBV76/n34/t3RQCO03JvUGkQ0KeoujYX8zOUgOkhfI4Q9PZ2LcO+fLoXq/JpzASKB+f7Dj3Yhmfb4DJ6zP3Wkx9ue+zI+ndNK38e8PDJzpa2A/0WXjb2eUPlkc6MrZ+N5JgcjM2UZFO/9iLvBHQAGwqIpRvOm+KxRrql4p1+PIHf/9Z/qxYyQu4C1WYeDN8HvvIanMF9RCgMLCpynfPIG6PKLX+5j8sMRuPlNlbafEIICMJQj0VRfAsSNkkHVTPoseOFZfMg00nEWxSxRwPUoJ/mHp5M/WOcCn4lib+zZjH3zKSxy450ibWh2CfyoKVYECkFYD0I94LF9dxKGZcHDm0DkhIS08ZEN24zYJBQRJ9O1T3GkVCMoJRjyfClOcUBKbhjRrVZyfHCtE5ncdnWLB+Yodk2LXzrPDTFkm12UAjNTBupBPZod30sqjIIOkrIzT+kx4Gr5WOrsYHnipg5osX03gvdqC7Fpkh8QmPat5CLcY0gOoJCyIaoT0nIjIa4I2q7qW94w0z7ig2o63KafFCeMzRDeA1IOXSRlcQEPPMynln+s74yoDRN2TTgNckrBPtn/zk3iwMaFDMPy4y3haqz3Yf/Gt6/k48k8STdkPRr1VOeqSp1w0S13GSLVdRFFq2nFgJWG2JWHh249kMKOZNY2YLucxgv1DbZUzdTrcYYqZEJLI+vBtQsbyJmqdhsJUq9PS+4nU9ESYuNTDwawCgrjNYCePdvQGpHM9exYS+worv6kbAhb4/9GZyKmE4XZj3rq57o0Ey6qWBP/ifftPG+ECaHD2KpVQpoBUyjUvUcOVtG0DoRul+v3Myli7Gc3ClI0iFIgAI0kCHsUvUx3vnSGmOTF47s3w4MAfztRHPsPhMTkCX+tG2ulp0nlExUjz5aNfWuG2XIjGBLFWekHPnslbOEGdUqcBOqeHEyGZPsejCmJw1Yg1DXEHqziqxa85smQA/wS9QlinrCzb/iHzQiBGd6O1E2dWRpsie+g9R8T6M0x+JxPybisMutimfGctHWDPu1GrGsccnlF6DnYtaDtFg2SXiuDGetXy3lVkR9YbXE57pAA1pCn+2A5qCilrSvvMoHfP9XIsWUhDkMUQeHvM9+9U3ZBnf/RvnrRgd5VYe/jBsPgD0d85M9hWRnSFO7lQBExYwekZYCleKgNQZvgTluud48Hl7iFQ+Dy/osMm7aSWjWtUykhbjQ6o8a11DG6+YArZDJZhKh6o2JSc2nT+FCrW7vu69diA7kn68m8c7Rny3YLSqxaZuKxfPenN7PwpfSo44SlYyYkv86dYAbOtQWPWdpaUlTwWNnCNPvsX460+4HOLuu5xgpKx+UEPxLf0wyAMlwF90b/lxUHH78ZG9t/xx7qUw9OHi8V9JlVzG81r5D9hrGGhe2K3xBja+p2a5uY2k8vx+/QZhxY0nvqeH6kSqwEf/g8Gs4ePZeT9QBCYQefDtxgwRtgCfYU9FMDgfozi/xmvK1+2myyDCnPN7R6WdgkBLODYeJtNRTtDpnT2Xw0UF9z7yruvxBmm0OlgldgjBAjPny4Z6UoAuvKX29wXOnR14agGxyEPBrQFxu34ZXV7AOHLHET4bXTv2VSUgtrynlxsE0Pw2diwHHs7h+kl7tdrSNdIOAqqUW+zrvMOtTSPIMMBjBLjoUt9heB4IMrl9gump47B1YGHnAJX8+aZvUDi9gnzWA7hdVGWee0CB2l7cuejdA2bZGFSpwegLDUcPql5pQ9KDYFoz/KrgpZn3bAv/cIvaTjYA0Cst0jCQrUuRE9BWDfXMiIW0zo3Z9u4NDFsCgBy6Zg+8RMeMbI0xR/couFckSnh+/gykzOGncgY9ALKHum07ILeLA9Zsym/6RdONoou3gy8C0STewb9C4D0bBHI58uwX8px5kQJjFMyrWx4HcOugI9Hj+j1qSLw9XbmAP15LkLxXw1ansjDWPiAv+I+5BNNCos8XYrUfiHwx9sWKMcxp6Q6V5aLAGKSjvA1oUjLP+BGR1KF9SwX4Ivy16SCvDa9LIgi19rPSNxk9msteY5I8GO281rud4keiikX6aV74nsLoxSglWYH8YksisuabBhwmZ0XU6sf0e16e3vhRXhMSSqveKs0MQGL60XK2HD87P4oEUyho64XJR8gLFC2/RNHkXnSUPyp6PBP+3rXoMlpPmP+9rwf/YmJ0lQjHQ/l2NTk55gf4LIkuP4Dafv2CevKvpRrVuBW8jGTxA2Y0MUo2yjHxBVOZ4QfTpvA6k51MJhv21wzN74XYmrgvW3mHJhJHATpHCddgtqJKOHnvY3pnhCtiKtXC2uErYAmypYVZDn58Jppc94Yto05B9LxT5dgFOgQt9wjrMx9mKWsVQNKybh2Ng9638piHz3E2Tf6Q29RVFvt+Zq5yb80cPD8Cw69q5hccewMC6Q1W8u9AM6kqfL8xzTfTem+i1WjQQb/372njWzTfoObERyT5d6T5xjRLB3zxd68136UWgJ2zY7cY0JpKm8U0Pov//03L//wDWgmT/xV7j+Yjy/zTtWec7Z7/IfubH/zKdoSFfEybjpip0bIFWMsPTn6gGTnlttV1oeGcel9+TPD+Cp35QNx9T4Q45EMG3ZAhovbT9bryEQBukxmdRNxJbD+2fI29h/BJfTO+i4Wwdbaks584x6FevM7ze9b3sqrO0WPGZSZZOSS5OI9NXc+/kX1G6qche55iozEzW3mMn5SelzwN8wOxIP7yLAh76ARqrDlS00XlS3pXbokqJYM8B8hO/dHh+rUO6/DK6s2Cod9KcAsO+RpurhiVt1+TqOzMxoToG1jvkGR24OZA8VDL9TBxLE/aLvmI7B4HJFpBzY44WgCrmxKPGxFr5a5pUlqvmm7+4KKtDVR80DuGhKbFxw3AulDr67pfMk/UKOhCCKDR8GmpO5SRNaT7v1GmNGnH89lYoAW2k4X1o3SQNkL9427HLuR7beGf0MzriIVNPBxAlwbTDbdQPhPx8GGGI5YmQ1wpP+49iatOS9HJ1FjxQMzfked51kYWKA3rOLkB048xIwfUjt/P78JMvwuD92+iwWxOgyRUjTRT67OX9kOBIyrUrraYSKXXRlL7i4CzKYSimIXyy/kubG7HbxmeCRFQagWYf0Kzj7Ge6ODVnV0BXWkuW6GU3FDTYTEfNeaOACEeFffaC2hasdhYe9nldQy/c8PXN7xu+B0bvgHDN2L4Goavafgxo2eNsT2o4OvU+Ansb6R2KFR+T0Ycf8W+5BhglOyIeFbOLMyOVMRSR7mxcUXIilEJajxBC+cSU318/UT8agMmibFLMPaKjPGEonQ5mogIyj+/eGpLJztJJ19Fs6YaCXF5II23kicxJpmx+o+d7PShWQykD0K1QikPhpFrdqbN/SBTV5mxe4Vva1uu2mjDY68UrH/oNr4xdkE+3RQs0ypjeYkN/quOKrlkKVDFEH94ioclmYtTxd4qK8nPLxr3K6LM9SR9n1Cp8YfPFPTnegKvXHW5wvs0p/IL+fOayb7xROKEIYk86PpOZxM8Sa6YNm8waf56rfyVE99pDlvTxtZFoS/6ngGLCwY2nocNDTtS51TEc7OBWOOhnY1qFmWCCtJ5Pw/WVQkoUfj0s9yg/HXekEfsvkO4qvNDqJEUyv0quvZPdMr/xEj+TzTyf/KX/5MYEYmFQrVktpelS7VUmBgMRSNMtNbwDRKfPX70kJxir9uT9153g6v3pmADN6HXQsNq4iwD2tmkJkM174OgOGZh7Zz88J6YZNoPs+PXH499c1xr/+Ri3gqDM61X4mlxbt+9me9MZnbTcaiOIr2yJjTRptXOmsZJozVUBSXb7yF06th+6Kuqy8xkOFJqF4ZZjXHsmnH3ZnxlBNlaw5ERlVi9i8dAs+5GeXZiJkFZ5goDAqstuOLs5I6XPFA34t87XFTpsyFHbLbV04VdUDhxaD26hemdfiUfHokdcZPTmW5HgE96O0+aiJ0D0rXSX5k7khMsyMxhVgzIU0owrOx7UvbPGVXhnywVYnMaF31bALyVhY0/GMcfqZa2kErytdvIxZVxyzNozaWd+Wjtw9BGJYaxrNDdIyJdPTqaPVChA4W+2GRhPmQPajivIwq+73u5Thz+gJyk8h2xMg7lDU02hbIRzqu40yHRk9q6gHMJW3p/sWE/B5buGXRDoBk119tp3ZbOZI48tp2UNUUZYnLoMBrYF4BrwiT2HZK8IKgk+VLgglMIZH82bKTbsLtwzRSEuhd05/rSkJjtPW/T9rzPwc8YgHLMZUPDV2ZxjXSmj1h4eShmZJ3ZT+Gl5iSOrG6XvnaCugw7J5rO+QDB+iR0femL9J/tYrmQCeSCK6U0J8cMZ1auO+iyHD/L5VxRV6mRUkVKEVu+dPdyGhNZT1bdfCCOz0JrgOwcDqJsuY5c+k4QpUijzeeJIcnlYuyY4cW33FmKNJYqrZFRRM6cou4pQOLR7qwFYthQAsJ65XMeXWmGUklogRdN8LIC7wRMCwZgTsbGiCoUqJdE9WYR65Gw9QTrqJT90Lp1HXzr1inwbhox57gwPJVdKegm/SaTYtaBli9b1TX/wk35hkHDd4zYxhDoeqyGfYVvCLrVtxPI56106JSHcSf/1qRlxMxKQm3+27Q0OcnoREVSgTYLW7db5Bf+B9SVeQU6qiJgF1j/8EHPLHw+MakjnBYjnPjmtkL4+6wDQkh1llGY83wsmZPLl9Uojzd/rTvOptP/mTX7T+zlHVayNqUiUiKtL3eUhB7glOC5DqPTsY9kTLs1VQiU1DGUMmp1qc2ucvWFQF9fxq7TBQPCrq4o1vv2nJL/s4whIquGBOexZ3biCVnczC0HWRE681B2bYtlWH4GxeeMj80MqvDftpvykZLlBsBcxxAIT9RAlQKIjYHlKIkBJabiXdGpSAhhcyZQZdiHZl0IdL3mYZ/12QdzWjD1uxs6iGcP2xXY8R5c0Y+dSP0fMjps3JvsIwXX0oF1ztXR4LXirhONHFgjlQ3A9e4+7NKupfWmyIPPbaeG2rCbQy9+derldIvBlNd0g7663s01bYhGszcob00sCqt8J4JAJ8voQUa+cKAPPlJaRso60t8WhNXnEGJN7E8gTrLAFdt+03uFbvri/cFomFX7X31szlAYMFDYIRWmjKZ3BPaOuk+PGINXDFF1W+b+M2BGO5KK4Dqn4zziL/sOgcS23Zf2tf+Etd+5Ml/GIqFdra+ok0m+F5shTZemnIlH9vqe5Lu3p+/GnoGajlBUCz8QuvYIeUyNYE/U16cl35vtfO+2eFPbJaJmznK1xHsJq/1K7rNTAH1Tfr2ntle5MiLqKhGU7/Bo77AhMuuGTHTtsSpG94jTQSffc+/hq723geOh4TkA1ZZJXt6uyil6ve5P3bw+NhlQZ3SvL9nAdgSKgFNeskmJOQ7euI9Qfs9G+HHH36CHxauKzsjj9N6boW2PO69aOnVQXcWkYgXsdQhpphka1gETFDklySOQngVwwW16dPneXUE3Cplz0GEq56uPVc6/lfJRePxdwPJ7vcfvrfck15owjkJNJ36092cZLm80G3h/rDevehK3RxwbhoBvCJTyEkjmTyklXJOtwRd7SvwTAVZH6Pmo7482suKAur6h1OUIPCTBG0zcKU6sbDnQKEC6a16Ad5l3/C7EQvEWbcpxOqhqB0rOhMqe+IRemXm0vycINdYj1uwng1ORa2lYpLvnRLW7CqvPtS3K/UTcGpF9JlmMmdUm7l95O0o3C2zeo4DtvRZpJRJgbrqPQLdSO4cx1OKPkWk8MGehLgsUPp0/7Y7njMD4rOZrorxzpLh9mJv6sO40x1lLWKkCcK3SyOMmZh0zb3I+Y+7L9gnw6MTHhY9Z5guwyFV7+JoepnW3pSXON+SOUKZSqMuNJ3KYx34cl+uihdurE0f2BheJcFOjHNLNMg6fPxiisS3xlR5X80YvQEt0aAlfVylBXqal83E5rapjyb8yujJzEjwa6G617j7Ni0JMWvNP7sHJO/igweB0HrfFU9aEPWw6D9lghvk0BHrmuanBIj0UV4gUjPuT3+3p4YfO0H/N6TpWF+2OnFY926KyBip6tLHliDmpP4iEgPX2PWt5Dimy0qVe9tvVjdqzzofyDD6LvHWPYzMXHnrzQVdQ7qBsnzj/Cz0zxVadnbiuxdFXe5mo9LaZwLUgpF5h0WoWvJKYmqK61t9JgmW0iT37VhzyX7EezHJA2F31dp1qNSeOBKiuPHbvFfVK6vZveJdmiBKKQXd/cbxinTa/ABkwGJZeWXCVp+rXG7x9FbFwS2F36qLG7yJRobJu/pUHNXXY3if9W/Kt/Uovz/mNmmBlt8HzrH+am7t6gn4jnSHu9jzQV3uH+7qp9ImUfiRK+NFymiMmLhH7+wB5LHGpbO/LxXQ0QaWZ1WVEdyy3QGmm6aoQ5n1BDXruUWoMj7JtdrT6vSPwzz1T50OKY2VH3H0k+eUigLVTMn8T8LWoA4eM+D3yO6a2pq0SOcstfgNmO1mHX2ubrDMacd7kmQYMm29O3OBeOqo98Er36FLN5ON+uvTIYbj0nFGEprJ+uv/5/fI9P8AfzntgZrDuIcXJx+ZNxBueOS2bJEfhi5DCTuqi/PeP1u+PzbMuX6Q4L+/rRZzeLHWGbCfxdxITbwK2blRfHJ1ssJ9cumsdiLUFZHXffWAphwqB9Xw/I8wZA4P27H2fqj6Ar6Xoxu9acay0JFsjX1jqWtt1D1HrFKBVvoxOMykw5gDqwnjkDrej1emtrSlOIKZGiBArs/mOyZB2M6CKHrbFqxkgwKEjIDq2/CiQ5cuxlB84FLgiHl368EaycgVRVXackQW2Idx8wwDbk/E4pc2IrcqpG4oneGiqkTc1qZa/ZVKs1mrG2cHrCkdy3bjtDsc/7AMUL0W9AMZkaJAdHNvT7FDoKeQt/pCKeUWC6DkudSe+bmeTP35161GHhAaGfT2Ls3ua9fQyI1XxY5VcKyhWyltRfPQ3bU94f07+DHI7Izeffzz55Tow1UdTzToGRNy8SDJRn+dKEjF941kBne8CaLemr5WAWNUzxhNcD0T06jajjUcIj2V9FvMBkn3Djq2AqZlxJDeWE73aJ/+VhuZvgJtzu/PVGm8nstaePiFzZ3F/WqOw0zhhM64dXfic1RN9VAAc5ocg7IxfVGGPishC7K73Hc87F/BGlLXWyhGnG0aEsmoEyO69NEy530HdbtqgfGSeiwFhqgmgbNdXRAYbmm/u5FCSodJboZGwbb1qsKTZJaFgIcxLVO2L+djRabvAthr72MW2Advd5pyt+0DTmWTmnl4g7ZsDE5iYZT9dHOo6crc26Ho2H+0vIPAzmQzkEAUj+PnKZ7U/Dg7gqydZ72EA35xy654ykSk/mlbiaSEov+0+wrBppp0CE5V9TYbEQ0H84I13XwXZYGrfPOI9VCSiyUOduaBJmr8JrXYlPd/5w0TT8Pq14WVRgAjf2L8P40FepBO6utKtXmfK1NgpJ7Oc4wnSKTUCAeIx7wQK+DQnYuNlDzB3sSKpeE6rHsGDx0C8YN4v1almivXyWX/AYwLUXUBVxX2UeEy2WKEIQP2kmohc1+Cw0LgdcV0TsjGjaRbhD4T36BnJ9iXBrpj8L/eWCSzBJwryjLH9DNCAYjNcEGOY/wWTbcZwAlQU4zKX1gB3bdbOgHTRwGxcqGAPf5Z4Rg0hkl+6B7cV1pEs68OzVgoZhCrM+HMqyKq1HTCzGxjJjTvK4ongkkaBoLonOxHHVKtnyJvgV+PjEgbI7uRtWlEeuUQHBF3GL4C6cpd+sVTAmf3J3lgwcfZjmzzh8iIFzd330+PazdVTtI2TorECaSZnu1kTIe62V/wdDSOEBuS+bG4RhjHOYgYT7zeZrFsURO3eqCJq5BYMudXQz9cBKVf2uBOCC+qFFEHPf0SzvR3BFPNzg9lAFZ1RLbcPLuB2/4xN2VieTpblzj92fgzL2ydhqq8MqtunBedcs3Vp5iB7KVDSdSdhFqB8lMejsSws1DK4Z5hC/dnGvRwas6+e7wWXHYVV0iE4p4aC9ZPq8oTcoLSPGylwt6KHTdx0WTbo1o57qbLsKUgShDeTl4Jr8Ox9Fhs+m7TCSo7Ari9Ca6duko5MTsC7i6vrQ49g2H9WrpYDqD6jyQKsuK4B22vUVQAd5UdI+IajfX3HJDRAW2PTRPQrGIDx9p2Be9BcV8v7My3AxPg4aK6+EiyBEjIuHjhN2xx2LM62kwLv+F+4xvOu8rCcrRo+5B5mVXdvJcK78xq+Td3dC7IuOgRsDfsOWKOwlfbjiRhkRUbvhwQyMfQcMOvEyqxu4tc5gnr6cLVUC5uXwr19PyItR78absRdpBoAJj7o7ks4eDvyBwgp6DpcILqiP5G6ZRAn6zBU+K7OKVrDnUKcEm2mNCDrVqSg3b1C0WBOAXuLRdqXBqru5p0OgnnZRBUx7gJ8fTYyEV7Xf4jUevcbg4u40dwp054c8BAu+J/ybKSQIfLwUvdGe2V63vlOQEN1Q4L14lUYwLTS3wrTnfg74M+FGtq81UOurvZ3i4HcGP9PjmTwUXK/in8DJGdxFzrZInnk/U6Izu7PkrFqcFHKVD6twKiBWVqX7guSfKvcl2RYxqVCYkvWnrddwr0V1CARfojvRmZ7DVv+plMRaOMefgFlB9b88q3rdEYBTOk7G2jn7AEAzLc59iuEBlRytkF53M6ehcBJWg3P4tMaJjg35pXYI9iWJYlNL023M8vz7lBSm337TQvv8wK+Lh98IfehE9A92hoxzX3o8RfckYiIHcBH6T8pC1zsqjp9Tl9ZUcov+4ev7rwc2g5qApI9rlmV2S+xJ8S2TdZ+zRB+pbA5BKjH9leSBXFeH5MRJLPn8k6zUZyQB3DwM99L4vW1yrl2ux/JLyAGEMQxGSyozFV237pAGrGTANdbbIED4JXXBNQqtZI3zrSUeaPIOc/0q+gi7pmOJb6GRQxDje+2HQPsAhGrcFWd3it9Ytc4GT7ySjXv+7mXd+ahhVbLE3/QZk5eE7/zJrdBccI06Bpge1wduoH6qcjyfSB7zLpWmZP8k8x4pyG3VYJmXsZ8cmzyGXbbbCn/QMuH6cH4BjXvx/8LsKye8gWIDIdlGFINr/8rHViG3FuFM8uhQvf9I6aqjbLiM6tDIdvY8h42qmzL+RUlm3jmh3m0spf0WrBl0Jpz/5iwjzf14XMZrFKJ0+NGW5+CMgK2lLnDIDUlriWKs0faW3Vb+SVs6BlcI68EVyHYJ4A1M3bh1Ve3ce8N49A54JZosuxQ10w8ZRmFwufHxMvFBpeX8cLKp62eICKd4Blo4lrVdf40aErddCfzWkM3x3GblNRBp7v3AeV3GRL03/V7bs0yKS3AlZSy2ba+0noFmJrUCoi1tC1gBeySoqlW3ZI30w1VLFwG+vSPyQyErD2TIMeVa+PcOW3gKh8r02E5Qm1GCPV50vFMJSKW4Rpfb+RuwWdSB67YqOalU7/EHuKMbOFxGVrGAQUrrdKhYrajyfnyyjQ+iROWcUqUJ6psR2O7KGKC5cGj5XiIJsPY9kC10pYNokuuq43DdmdarTssHQmio2r3aSn7Cp+DU0GnV+hFcZqeZnUcqPbpPPOWRNLDlJnSp6p03pwMdWJvBMLbsw8mS5W4YM8STZZPqJtbk2OPWrZcCedZ5uIFnfP7PpR0iX9U74oyA3GsnaTU//2lto8Usf/+c8/2ZHJRrlMLZMXaCU+zMlUf149x9XBXEyPfslLCwoGuKeGdajuI3bY7PDr9afENNq/J7/Cl6NE6FsHBGyZX9gTr9a/4ANr/WQoHleAG8cxwrKrARW+n4ZbyYva6Fffj1yUil6+3xZ5/3/jwRvj27xsfv4VPG3isPlooXrAnr4mkfTbajULTyo+q4mkWvcfVCTZqvBz7d4hHLkpijW0Jr8dGYlE0DZSNm0Kxdo1odASyZoHKWr6SWYYOasdA4yPOML478WfuzZQRdWUn6xpSXFT+g0cfisNpijWhvxJXI/bSbhXXk5vkwLCZG/ZG0h3zGlxZRE22BlbJ8L3sV+Jc+q0dI1czATFi34J54LkqBIYc/peSbpkybuWu4RFFkkNOY6Ue6aTtPn4dxq3ieSn7TkqTySvozfaVK9tdNGgXp1rUZt0VK8Xf6EbSOGoElyaX1oCB9dC/i0L45wPWuX+t61NZnG0/6q1RZKQeRGtTgAMvNbDSxAKwGZS6FPw7T/mYPSR9dFj4u0vLQOYRxbMpGAWbEG+wBOmz2Z+J7GbGiCPYVBrSIXbGH1A8ldg6YVcQCBaxCJjQf/EV/xVvEslzOYfYDGQL3cI8PfUvPxE4fpoLWPruqpx+eSiEzRJA6ygdBky+dNjQR+hK7Z6JrJqAZh9EbBn5lrbQsDUHqZTs4Jj8MK180+jnjTk+Lhay447PuQzaOKKDrCBqxS8Zj4+rgbuqxFOWTUtCWK0oDr2VmBYURdNG828dMAQYUIDFlYoyS+DPoCQZ44g+++fImn1XsstywO7BSHbPNnCeLMDF0lrxJUg52TSus5+u2O96cZenaq9pEDti5yNuw5WJ1aGPx1spqPp7Mf5YTDouHVN5WWEeSr6U7iYJmqrxtwsJNO+8US04kChrN7EtATK1Kldd0xwO5QrlbQq5Jpg8IGa0zKERk8QvIk0wmVpuUyh46IzWpwFJfTtTHV7IOwq1dU8uGNDVvl226QVnqEYQXcPanPCL+ylo2Axp8yG/ww/iu5Y4g7Aec7IOGs9S7vkjWtT3R/qZGGy27Jg/s3VZtqY9Xe8t7oCohyKGmbQ1TvxWNUPzYYnxf8C7tL6GV/fEQgB26zs4IF+cpa0AmZe7xPqtBWXF0uZrxvvsNZiIlVSRbmkPQUfcoc2mwdtxCzC9u5L9TyBLJPH7P2Wjxsk8f2aB5mXt1gFPcBb3Zh1SnGSh71KLwHRQ25uVp+6aWmHLBIoRRiiAENguqEmwQAgjHCOU07427TRowWpXoKVAK2ydvQH2oC3GpyZxSsEWrP0nhf0n4QBECdyEVjO5eIkeoIGFRFSPTyo90JBPqdWuQTsv3BFyPVXFw2fxe6nYi37y2wDjND/2tnu8IELMIM3Xonj4lB9uqvb1+P2Wn9ZUVNblb8GU+x7vsl0BqAUnZbuph7Cyw4zLHpPSAMDzBRxLGZeOJpnIU/TR7mDhA6T5taFVjw3BEXapMtL0XN24+n+a/G4KD1C10hSB+p2RZi7S863Ajnzbd0zMnbvVv3kyCu8y/ybJbK7gFIRowX35UgQHPmrtTKV0KBa9FdyZ2UL6lXMZzrM6KUGjhb9wG+JZxuidDiJWuvDhgCjhikNWQSxXQlCtk6o4yAt82mdiK1R62l0VjFAVACJUbRXoLH+lTk9ZE21nrLRD4ZW8+SmSgR8KjIBUurnOZ/w12X3d0408fcM52260FPMYKfb/BBP+kTeHTv5/e2fEo5KLn7r8OXAv/io2BoHSGS5VHyCdSGb50ba7ubOg1Ofctut7sVniLtPnJxDXLJy51RwYJdDzCR1LuifMKMS3XrI29ct9p7LvYGroTizB31ZEWPPI5wFHqjEDUPWeIRey4CupryjqPGdRhbHVLui/kIb7QZefk/OllZBFx7iWEH55Ij4tv9HNLiPKV3Kh+Hn+SM0FszNKtsJYaMs8dMKT7kG6CylmmSddN/3bJJzpEHqwInpA970M3LNgW+V0kigFfIFa2uUEZnoK0HrU1EvCL2yXd0yAP1zriwbidRFYmSUjdhDaeyZ7mouGkZy+si9awvz2dgF+3SGwB7zaEM96xeJ8zKGwwSPYaRKyDHatCVkbbXJ9tGK6pxp9i+gNC8Qqn9ftBnzVI+Ri3iHEbw0JgtZZTczTpJPHNOyYC59w/FBf40clmyDgC22R5//Dymu26Rq+X92DCvCeiy18R2hPcxlpnWq97v6Np7QRd2n0BlylvJSCN43KTLKeTZt5cgF+JOjlPRlhAyJ6dHdx0LTPTo7Zp33JCtUKyOsvBzyryu/eM9c3UlMytROtSlbltEXYJ6bbujtC3H1w3AxICs0k12h+Vhhv23LUlFfv+oMKgDhTdxnzkoOw9hJWe9iXnl7BM5OG4bwY4KtNRlhQ0FdNzqJQlrwU5NFcbEvmg9tpK5Tfy44uaFdmr8t8C2C318p+zRxeggmECFUXtoMuNEcWC8DVCHfFfDjJds9QotauN2tWkZe6mm7Fkf1B+wQMtSH5sIMox4gaBNeJdt1UlbgclF9eRnqJazaIWluCVu9JIkG+ive5Zdp6P6jyQiMZcNktHX0G90wHPHv/jM+QgIEMVy3PamefPH7GcjGQI9RlkIz790a67tNTfZYxxwyp+q8ibvyB4lltS5av5o6mI7RGbJQO2S8qmUe4Oh9djsgvINqvvTn11elxmleImwsphcpA5D3JLLPL7WjHbTNgi/uEA+/3BEp1LjTmmrJIJIqJOQUDRBuLmB7Hu8BFiQl3XyITrBsYgQSa6Bs7lQySzopELUmSlzMCFUcqcQlHig3G/eVIQbIbApEbLeHrUbyaHzemNswWWbFGX0wyJReY6eTSk0Sf+dODd0wizASQDVNhuUsyaXFtGfkKkqUv0V2I/bwHq6mRj0y8acP0LfLJZQOrRZD2mpTLeY74lzjlPefyiobq9KCo+keZDJ5Bqel2Rr3ZJwSzRnslbToRFEBTYaSgj/vrkWLyv5knyn/BTkx8XAOfKxXlP/PuW6FEtPH3yA2icXUKvHcaDlpTlGE0Q3nUi4Ne7ycyc+ImODL0yUiOj8qP/f/2P26P+u8x+YUMyWQnRh+GrV8QYXLccyXIDdXb8rlkfDGZ6X5iLuF4qP9E0Lq/SG4aJ7ID5V0bIG35gFoD2VMFxNImQ3jqHOE1ebaf0qkTPdycIloVPAA09YUCwTqm8U6fwo4y6ro9Ef0yVCNjQByIaQ2slegbgNfO+NNBVkxUR9jmnlCJUwsz7HRmmazxgMx3IWySLemZuz+LWH00+Ky5JPt6VseybjuO3IgmNwBoeQDysNuUY3XIWAUJszhJSp77cwufKk/0EcQI8/J6G8H9+7kFXVWFMQVfw5GyRZbvI7ubWS8QjNRGJPcIl/TkoduZ2fGvgZ8qS8Vf2GBCHOUGdjgA99R//boD1/m3V9USSUUMIP7C7Qoloh1j4wGkWeUA04YfiH8Atm9JW9qAABFhm8HyZ1s0/9HWdwI=";
+      const decoded = JSON.parse(zlib2.brotliDecompressSync(Buffer.from(encoded, "base64")).toString());
+      typeCoercionStateMachine = () => decoded;
+      return decoded;
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts
+var coerce_api_parameters_exports = {};
+__export(coerce_api_parameters_exports, {
+  Coercer: () => Coercer,
+  coerceApiParameters: () => coerceApiParameters
+});
+function coerceApiParameters(v3service, action, parameters = {}) {
+  const typeMachine = typeCoercionStateMachine();
+  return new Coercer(typeMachine).coerceApiParameters(v3service, action, parameters);
+}
+function coerceValueToUint8Array(x) {
+  if (x instanceof Uint8Array) {
+    return x;
+  }
+  if (typeof x === "string" || typeof x === "number") {
+    return new TextEncoder().encode(x.toString());
+  }
+  return x;
+}
+function coerceValueToNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  if (typeof x === "string") {
+    const n = Number(x);
+    return isNaN(n) ? x : n;
+  }
+  return x;
+}
+function coerceValueToDate(x) {
+  if (typeof x === "string" || typeof x === "number") {
+    const date = new Date(x);
+    if (isNaN(date.getTime())) {
+      return x;
+    }
+    return date;
+  }
+  return x;
+}
+var Coercer;
+var init_coerce_api_parameters = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts"() {
+    "use strict";
+    init_parameter_types();
+    Coercer = class {
+      constructor(typeMachine) {
+        this.typeMachine = typeMachine;
+      }
+      typeMachine;
+      coerceApiParameters(v3service, action, parameters = {}) {
+        const actionState = this.progress(action.toLowerCase(), this.progress(v3service.toLowerCase(), 0));
+        return this.recurse(parameters, actionState);
+      }
+      testCoerce(value) {
+        return this.recurse(value, 0);
+      }
+      recurse(value, state) {
+        switch (state) {
+          case void 0:
+            return value;
+          case "b":
+            return coerceValueToUint8Array(value);
+          case "n":
+            return coerceValueToNumber(value);
+          case "d":
+            return coerceValueToDate(value);
+        }
+        if (Array.isArray(value)) {
+          const elState = this.progress("*", state);
+          return elState !== void 0 ? value.map((e) => this.recurse(e, elState)) : value;
+        }
+        if (value && typeof value === "object") {
+          const mapState = this.progress("*", state);
+          for (const key of Object.keys(value)) {
+            const fieldState = this.progress(key, state) ?? mapState;
+            if (fieldState !== void 0) {
+              value[key] = this.recurse(value[key], fieldState);
+            }
+          }
+          return value;
+        }
+        return value;
+      }
+      /**
+       * From a given state, return the state we would end up in if we followed this field
+       */
+      progress(field, s) {
+        if (s === void 0 || typeof s !== "number") {
+          return void 0;
+        }
+        return this.typeMachine[s][field];
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts
+var find_client_constructor_exports = {};
+__export(find_client_constructor_exports, {
+  findV3ClientConstructor: () => findV3ClientConstructor
+});
+function findV3ClientConstructor(pkg) {
+  const [_clientName, ServiceClient] = Object.entries(pkg).find(
+    ([name]) => {
+      return name.endsWith("Client") && name !== "__Client";
+    }
+  );
+  return ServiceClient;
+}
+var init_find_client_constructor = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json
+var require_sdk_v2_to_v3 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json"(exports2, module2) {
+    module2.exports = {
+      acmpca: "acm-pca",
+      apigateway: "api-gateway",
+      arczonalshift: "arc-zonal-shift",
+      appmesh: "app-mesh",
+      applicationautoscaling: "application-auto-scaling",
+      applicationinsights: "application-insights",
+      applicationsignals: "application-signals",
+      augmentedairuntime: "sagemaker-a2i-runtime",
+      autoscaling: "auto-scaling",
+      autoscalingplans: "auto-scaling-plans",
+      bcmdataexports: "bcm-data-exports",
+      backupgateway: "backup-gateway",
+      bedrockagent: "bedrock-agent",
+      bedrockagentruntime: "bedrock-agent-runtime",
+      bedrockruntime: "bedrock-runtime",
+      cur: "cost-and-usage-report-service",
+      chimesdkidentity: "chime-sdk-identity",
+      chimesdkmediapipelines: "chime-sdk-media-pipelines",
+      chimesdkmeetings: "chime-sdk-meetings",
+      chimesdkmessaging: "chime-sdk-messaging",
+      chimesdkvoice: "chime-sdk-voice",
+      cloudhsmv2: "cloudhsm-v2",
+      cloudsearchdomain: "cloudsearch-domain",
+      cloudtraildata: "cloudtrail-data",
+      cloudwatchevents: "cloudwatch-events",
+      cloudwatchlogs: "cloudwatch-logs",
+      codegurureviewer: "codeguru-reviewer",
+      codegurusecurity: "codeguru-security",
+      codestarnotifications: "codestar-notifications",
+      codestarconnections: "codestar-connections",
+      cognitoidentity: "cognito-identity",
+      cognitoidentityserviceprovider: "cognito-identity-provider",
+      cognitosync: "cognito-sync",
+      computeoptimizer: "compute-optimizer",
+      configservice: "config-service",
+      connectcontactlens: "connect-contact-lens",
+      costexplorer: "cost-explorer",
+      costoptimizationhub: "cost-optimization-hub",
+      customerprofiles: "customer-profiles",
+      dms: "database-migration-service",
+      datapipeline: "data-pipeline",
+      devopsguru: "devops-guru",
+      devicefarm: "device-farm",
+      directconnect: "direct-connect",
+      directoryservice: "directory-service",
+      discovery: "application-discovery-service",
+      docdbelastic: "docdb-elastic",
+      dynamodbstreams: "dynamodb-streams",
+      ec2instanceconnect: "ec2-instance-connect",
+      ecrpublic: "ecr-public",
+      eksauth: "eks-auth",
+      elb: "elastic-load-balancing",
+      elbv2: "elastic-load-balancing-v2",
+      emrserverless: "emr-serverless",
+      emrcontainers: "emr-containers",
+      es: "elasticsearch-service",
+      elasticbeanstalk: "elastic-beanstalk",
+      elasticinference: "elastic-inference",
+      elastictranscoder: "elastic-transcoder",
+      finspacedata: "finspace-data",
+      forecastqueryservice: "forecastquery",
+      forecastservice: "forecast",
+      globalaccelerator: "global-accelerator",
+      ivsrealtime: "ivs-realtime",
+      inspectorscan: "inspector-scan",
+      iot1clickdevicesservice: "iot-1click-devices-service",
+      iot1clickprojects: "iot-1click-projects",
+      iotevents: "iot-events",
+      ioteventsdata: "iot-events-data",
+      iotjobsdataplane: "iot-jobs-data-plane",
+      iotwireless: "iot-wireless",
+      iotdata: "iot-data-plane",
+      kendraranking: "kendra-ranking",
+      kinesisanalytics: "kinesis-analytics",
+      kinesisanalyticsv2: "kinesis-analytics-v2",
+      kinesisvideo: "kinesis-video",
+      kinesisvideoarchivedmedia: "kinesis-video-archived-media",
+      kinesisvideomedia: "kinesis-video-media",
+      kinesisvideosignalingchannels: "kinesis-video-signaling",
+      kinesisvideowebrtcstorage: "kinesis-video-webrtc-storage",
+      launchwizard: "launch-wizard",
+      lexmodelbuildingservice: "lex-model-building-service",
+      lexmodelsv2: "lex-models-v2",
+      lexruntime: "lex-runtime-service",
+      lexruntimev2: "lex-runtime-v2",
+      licensemanager: "license-manager",
+      licensemanagerlinuxsubscriptions: "license-manager-linux-subscriptions",
+      licensemanagerusersubscriptions: "license-manager-user-subscriptions",
+      machinelearning: "machine-learning",
+      managedblockchainquery: "managedblockchain-query",
+      marketplaceagreement: "marketplace-agreement",
+      marketplacecatalog: "marketplace-catalog",
+      marketplacecommerceanalytics: "marketplace-commerce-analytics",
+      marketplacedeployment: "marketplace-deployment",
+      marketplaceentitlementservice: "marketplace-entitlement-service",
+      marketplacemetering: "marketplace-metering",
+      mediapackagevod: "mediapackage-vod",
+      mediastoredata: "mediastore-data",
+      medicalimaging: "medical-imaging",
+      migrationhub: "migration-hub",
+      migrationhubconfig: "migrationhub-config",
+      migrationhubrefactorspaces: "migration-hub-refactor-spaces",
+      networkfirewall: "network-firewall",
+      paymentcryptography: "payment-cryptography",
+      paymentcryptographydata: "payment-cryptography-data",
+      pcaconnectorad: "pca-connector-ad",
+      pcaconnectorscep: "pca-connector-scep",
+      personalizeevents: "personalize-events",
+      personalizeruntime: "personalize-runtime",
+      pinpointemail: "pinpoint-email",
+      pinpointsmsvoice: "pinpoint-sms-voice",
+      pinpointsmsvoicev2: "pinpoint-sms-voice-v2",
+      qldbsession: "qldb-session",
+      rdsdataservice: "rds-data",
+      redshiftdata: "redshift-data",
+      redshiftserverless: "redshift-serverless",
+      resourceexplorer2: "resource-explorer-2",
+      resourcegroups: "resource-groups",
+      resourcegroupstaggingapi: "resource-groups-tagging-api",
+      route53: "route-53",
+      route53domains: "route-53-domains",
+      route53recoverycluster: "route53-recovery-cluster",
+      route53recoverycontrolconfig: "route53-recovery-control-config",
+      route53recoveryreadiness: "route53-recovery-readiness",
+      s3control: "s3-control",
+      ssmcontacts: "ssm-contacts",
+      ssmincidents: "ssm-incidents",
+      ssmquicksetup: "ssm-quicksetup",
+      ssoadmin: "sso-admin",
+      ssooidc: "sso-oidc",
+      sagemakerfeaturestoreruntime: "sagemaker-featurestore-runtime",
+      sagemakergeospatial: "sagemaker-geospatial",
+      sagemakermetrics: "sagemaker-metrics",
+      sagemakerruntime: "sagemaker-runtime",
+      sagemakeredge: "sagemaker-edge",
+      secretsmanager: "secrets-manager",
+      servicecatalog: "service-catalog",
+      servicecatalogappregistry: "service-catalog-appregistry",
+      servicequotas: "service-quotas",
+      snowdevicemanagement: "snow-device-management",
+      ssmsap: "ssm-sap",
+      stepfunctions: "sfn",
+      storagegateway: "storage-gateway",
+      supportapp: "support-app",
+      timestreaminfluxdb: "timestream-influxdb",
+      timestreamquery: "timestream-query",
+      timestreamwrite: "timestream-write",
+      transcribeservice: "transcribe",
+      vpclattice: "vpc-lattice",
+      voiceid: "voice-id",
+      wafregional: "waf-regional",
+      workspacesthinclient: "workspaces-thin-client",
+      workspacesweb: "workspaces-web"
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json
+var require_sdk_v3_metadata = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json"(exports2, module2) {
+    module2.exports = {
+      accessanalyzer: {
+        iamPrefix: "access-analyzer"
+      },
+      account: {
+        iamPrefix: "account"
+      },
+      "acm-pca": {
+        iamPrefix: "acm-pca"
+      },
+      acm: {
+        iamPrefix: "acm"
+      },
+      amp: {
+        iamPrefix: "aps"
+      },
+      amplify: {
+        iamPrefix: "amplify"
+      },
+      amplifybackend: {
+        iamPrefix: "amplifybackend"
+      },
+      amplifyuibuilder: {
+        iamPrefix: "amplifyuibuilder"
+      },
+      "api-gateway": {
+        iamPrefix: "apigateway"
+      },
+      apigatewaymanagementapi: {
+        iamPrefix: "execute-api"
+      },
+      apigatewayv2: {
+        iamPrefix: "apigateway"
+      },
+      "app-mesh": {
+        iamPrefix: "appmesh"
+      },
+      appconfig: {
+        iamPrefix: "appconfig"
+      },
+      appconfigdata: {
+        iamPrefix: "appconfig"
+      },
+      appfabric: {
+        iamPrefix: "appfabric"
+      },
+      appflow: {
+        iamPrefix: "appflow"
+      },
+      appintegrations: {
+        iamPrefix: "app-integrations"
+      },
+      "application-auto-scaling": {
+        iamPrefix: "application-autoscaling"
+      },
+      "application-discovery-service": {
+        iamPrefix: "discovery"
+      },
+      "application-insights": {
+        iamPrefix: "applicationinsights"
+      },
+      "application-signals": {
+        iamPrefix: "application-signals"
+      },
+      applicationcostprofiler: {
+        iamPrefix: "application-cost-profiler"
+      },
+      apprunner: {
+        iamPrefix: "apprunner"
+      },
+      appstream: {
+        iamPrefix: "appstream"
+      },
+      appsync: {
+        iamPrefix: "appsync"
+      },
+      apptest: {
+        iamPrefix: "apptest"
+      },
+      "arc-zonal-shift": {
+        iamPrefix: "arc-zonal-shift"
+      },
+      artifact: {
+        iamPrefix: "artifact"
+      },
+      athena: {
+        iamPrefix: "athena"
+      },
+      auditmanager: {
+        iamPrefix: "auditmanager"
+      },
+      "auto-scaling-plans": {
+        iamPrefix: "autoscaling-plans"
+      },
+      "auto-scaling": {
+        iamPrefix: "autoscaling"
+      },
+      b2bi: {
+        iamPrefix: "b2bi"
+      },
+      "backup-gateway": {
+        iamPrefix: "backup-gateway"
+      },
+      backup: {
+        iamPrefix: "backup"
+      },
+      backupsearch: {
+        iamPrefix: "backup-search"
+      },
+      batch: {
+        iamPrefix: "batch"
+      },
+      "bcm-data-exports": {
+        iamPrefix: "bcm-data-exports"
+      },
+      "bcm-pricing-calculator": {
+        iamPrefix: "bcm-pricing-calculator"
+      },
+      "bedrock-agent-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-agent": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-runtime": {
+        iamPrefix: "bedrock"
+      },
+      bedrock: {
+        iamPrefix: "bedrock"
+      },
+      billing: {
+        iamPrefix: "billing"
+      },
+      billingconductor: {
+        iamPrefix: "billingconductor"
+      },
+      braket: {
+        iamPrefix: "braket"
+      },
+      budgets: {
+        iamPrefix: "budgets"
+      },
+      chatbot: {
+        iamPrefix: "chatbot"
+      },
+      "chime-sdk-identity": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-media-pipelines": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-meetings": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-messaging": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-voice": {
+        iamPrefix: "chime"
+      },
+      chime: {
+        iamPrefix: "chime"
+      },
+      cleanrooms: {
+        iamPrefix: "cleanrooms"
+      },
+      cleanroomsml: {
+        iamPrefix: "cleanrooms-ml"
+      },
+      cloud9: {
+        iamPrefix: "cloud9"
+      },
+      cloudcontrol: {
+        iamPrefix: "cloudcontrolapi"
+      },
+      clouddirectory: {
+        iamPrefix: "clouddirectory"
+      },
+      cloudformation: {
+        iamPrefix: "cloudformation"
+      },
+      "cloudfront-keyvaluestore": {
+        iamPrefix: "cloudfront-keyvaluestore"
+      },
+      cloudfront: {
+        iamPrefix: "cloudfront"
+      },
+      "cloudhsm-v2": {
+        iamPrefix: "cloudhsm"
+      },
+      cloudhsm: {
+        iamPrefix: "cloudhsm"
+      },
+      "cloudsearch-domain": {
+        iamPrefix: "cloudsearch"
+      },
+      cloudsearch: {
+        iamPrefix: "cloudsearch"
+      },
+      "cloudtrail-data": {
+        iamPrefix: "cloudtrail-data"
+      },
+      cloudtrail: {
+        iamPrefix: "cloudtrail"
+      },
+      "cloudwatch-events": {
+        iamPrefix: "events"
+      },
+      "cloudwatch-logs": {
+        iamPrefix: "logs"
+      },
+      cloudwatch: {
+        iamPrefix: "cloudwatch"
+      },
+      codeartifact: {
+        iamPrefix: "codeartifact"
+      },
+      codebuild: {
+        iamPrefix: "codebuild"
+      },
+      codecatalyst: {},
+      codecommit: {
+        iamPrefix: "codecommit"
+      },
+      codeconnections: {
+        iamPrefix: "codeconnections"
+      },
+      codedeploy: {
+        iamPrefix: "codedeploy"
+      },
+      "codeguru-reviewer": {
+        iamPrefix: "codeguru-reviewer"
+      },
+      "codeguru-security": {
+        iamPrefix: "codeguru-security"
+      },
+      codeguruprofiler: {
+        iamPrefix: "codeguru-profiler"
+      },
+      codepipeline: {
+        iamPrefix: "codepipeline"
+      },
+      "codestar-connections": {
+        iamPrefix: "codestar-connections"
+      },
+      "codestar-notifications": {
+        iamPrefix: "codestar-notifications"
+      },
+      "cognito-identity-provider": {
+        iamPrefix: "cognito-idp"
+      },
+      "cognito-identity": {
+        iamPrefix: "cognito-identity"
+      },
+      "cognito-sync": {
+        iamPrefix: "cognito-sync"
+      },
+      comprehend: {
+        iamPrefix: "comprehend"
+      },
+      comprehendmedical: {
+        iamPrefix: "comprehendmedical"
+      },
+      "compute-optimizer": {
+        iamPrefix: "compute-optimizer"
+      },
+      "config-service": {
+        iamPrefix: "config"
+      },
+      "connect-contact-lens": {
+        iamPrefix: "connect"
+      },
+      connect: {
+        iamPrefix: "connect"
+      },
+      connectcampaigns: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcampaignsv2: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcases: {
+        iamPrefix: "cases"
+      },
+      connectparticipant: {
+        iamPrefix: "execute-api"
+      },
+      controlcatalog: {
+        iamPrefix: "controlcatalog"
+      },
+      controltower: {
+        iamPrefix: "controltower"
+      },
+      "cost-and-usage-report-service": {
+        iamPrefix: "cur"
+      },
+      "cost-explorer": {
+        iamPrefix: "ce"
+      },
+      "cost-optimization-hub": {
+        iamPrefix: "cost-optimization-hub"
+      },
+      "customer-profiles": {
+        iamPrefix: "profile"
+      },
+      "data-pipeline": {
+        iamPrefix: "datapipeline"
+      },
+      "database-migration-service": {
+        iamPrefix: "dms"
+      },
+      databrew: {
+        iamPrefix: "databrew"
+      },
+      dataexchange: {
+        iamPrefix: "dataexchange"
+      },
+      datasync: {
+        iamPrefix: "datasync"
+      },
+      datazone: {
+        iamPrefix: "datazone"
+      },
+      dax: {
+        iamPrefix: "dax"
+      },
+      deadline: {
+        iamPrefix: "deadline"
+      },
+      detective: {
+        iamPrefix: "detective"
+      },
+      "device-farm": {
+        iamPrefix: "devicefarm"
+      },
+      "devops-guru": {
+        iamPrefix: "devops-guru"
+      },
+      "direct-connect": {
+        iamPrefix: "directconnect"
+      },
+      "directory-service-data": {
+        iamPrefix: "ds-data"
+      },
+      "directory-service": {
+        iamPrefix: "ds"
+      },
+      dlm: {
+        iamPrefix: "dlm"
+      },
+      "docdb-elastic": {
+        iamPrefix: "docdb-elastic"
+      },
+      docdb: {
+        iamPrefix: "rds"
+      },
+      drs: {
+        iamPrefix: "drs"
+      },
+      dsql: {
+        iamPrefix: "dsql"
+      },
+      "dynamodb-streams": {
+        iamPrefix: "dynamodb"
+      },
+      dynamodb: {
+        iamPrefix: "dynamodb"
+      },
+      ebs: {
+        iamPrefix: "ebs"
+      },
+      "ec2-instance-connect": {
+        iamPrefix: "ec2-instance-connect"
+      },
+      ec2: {
+        iamPrefix: "ec2"
+      },
+      "ecr-public": {
+        iamPrefix: "ecr-public"
+      },
+      ecr: {
+        iamPrefix: "ecr"
+      },
+      ecs: {
+        iamPrefix: "ecs",
+        commands: [
+          "ExecuteCommand"
+        ]
+      },
+      efs: {
+        iamPrefix: "elasticfilesystem"
+      },
+      "eks-auth": {
+        iamPrefix: "eks-auth"
+      },
+      eks: {
+        iamPrefix: "eks"
+      },
+      "elastic-beanstalk": {
+        iamPrefix: "elasticbeanstalk"
+      },
+      "elastic-load-balancing-v2": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-load-balancing": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-transcoder": {
+        iamPrefix: "elastictranscoder"
+      },
+      elasticache: {
+        iamPrefix: "elasticache"
+      },
+      "elasticsearch-service": {
+        iamPrefix: "es"
+      },
+      "emr-containers": {
+        iamPrefix: "emr-containers"
+      },
+      "emr-serverless": {
+        iamPrefix: "emr-serverless"
+      },
+      emr: {
+        iamPrefix: "elasticmapreduce"
+      },
+      entityresolution: {
+        iamPrefix: "entityresolution"
+      },
+      eventbridge: {
+        iamPrefix: "events"
+      },
+      evidently: {
+        iamPrefix: "evidently"
+      },
+      "finspace-data": {
+        iamPrefix: "finspace-api"
+      },
+      finspace: {
+        iamPrefix: "finspace"
+      },
+      firehose: {
+        iamPrefix: "firehose"
+      },
+      fis: {
+        iamPrefix: "fis"
+      },
+      fms: {
+        iamPrefix: "fms"
+      },
+      forecast: {
+        iamPrefix: "forecast"
+      },
+      forecastquery: {
+        iamPrefix: "forecast"
+      },
+      frauddetector: {
+        iamPrefix: "frauddetector"
+      },
+      freetier: {
+        iamPrefix: "freetier"
+      },
+      fsx: {
+        iamPrefix: "fsx"
+      },
+      gamelift: {
+        iamPrefix: "gamelift"
+      },
+      gameliftstreams: {
+        iamPrefix: "gameliftstreams"
+      },
+      "geo-maps": {
+        iamPrefix: "geo-maps"
+      },
+      "geo-places": {
+        iamPrefix: "geo-places"
+      },
+      "geo-routes": {
+        iamPrefix: "geo-routes"
+      },
+      glacier: {
+        iamPrefix: "glacier"
+      },
+      "global-accelerator": {
+        iamPrefix: "globalaccelerator"
+      },
+      glue: {
+        iamPrefix: "glue"
+      },
+      grafana: {
+        iamPrefix: "grafana"
+      },
+      greengrass: {
+        iamPrefix: "greengrass"
+      },
+      greengrassv2: {
+        iamPrefix: "greengrass"
+      },
+      groundstation: {
+        iamPrefix: "groundstation"
+      },
+      guardduty: {
+        iamPrefix: "guardduty"
+      },
+      health: {
+        iamPrefix: "health"
+      },
+      healthlake: {
+        iamPrefix: "healthlake"
+      },
+      iam: {
+        iamPrefix: "iam"
+      },
+      identitystore: {
+        iamPrefix: "identitystore"
+      },
+      imagebuilder: {
+        iamPrefix: "imagebuilder"
+      },
+      "inspector-scan": {
+        iamPrefix: "inspector-scan"
+      },
+      inspector: {
+        iamPrefix: "inspector"
+      },
+      inspector2: {
+        iamPrefix: "inspector2"
+      },
+      internetmonitor: {
+        iamPrefix: "internetmonitor"
+      },
+      invoicing: {
+        iamPrefix: "invoicing"
+      },
+      "iot-data-plane": {
+        iamPrefix: "iotdata"
+      },
+      "iot-events-data": {
+        iamPrefix: "ioteventsdata"
+      },
+      "iot-events": {
+        iamPrefix: "iotevents"
+      },
+      "iot-jobs-data-plane": {
+        iamPrefix: "iot-jobs-data"
+      },
+      "iot-managed-integrations": {
+        iamPrefix: "iotmanagedintegrations"
+      },
+      "iot-wireless": {
+        iamPrefix: "iotwireless"
+      },
+      iot: {
+        iamPrefix: "iot",
+        commands: [
+          "CreateCommand",
+          "DeleteCommand",
+          "GetCommand",
+          "UpdateCommand"
+        ]
+      },
+      iotanalytics: {
+        iamPrefix: "iotanalytics"
+      },
+      iotdeviceadvisor: {
+        iamPrefix: "iotdeviceadvisor"
+      },
+      iotfleethub: {
+        iamPrefix: "iotfleethub"
+      },
+      iotfleetwise: {
+        iamPrefix: "iotfleetwise"
+      },
+      iotsecuretunneling: {
+        iamPrefix: "IoTSecuredTunneling"
+      },
+      iotsitewise: {
+        iamPrefix: "iotsitewise"
+      },
+      iotthingsgraph: {
+        iamPrefix: "iotthingsgraph"
+      },
+      iottwinmaker: {
+        iamPrefix: "iottwinmaker"
+      },
+      "ivs-realtime": {
+        iamPrefix: "ivs"
+      },
+      ivs: {
+        iamPrefix: "ivs"
+      },
+      ivschat: {
+        iamPrefix: "ivschat"
+      },
+      kafka: {
+        iamPrefix: "kafka"
+      },
+      kafkaconnect: {
+        iamPrefix: "kafkaconnect"
+      },
+      "kendra-ranking": {
+        iamPrefix: "kendra-ranking"
+      },
+      kendra: {
+        iamPrefix: "kendra"
+      },
+      keyspaces: {
+        iamPrefix: "cassandra"
+      },
+      "kinesis-analytics-v2": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-analytics": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-video-archived-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-signaling": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-webrtc-storage": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video": {
+        iamPrefix: "kinesisvideo"
+      },
+      kinesis: {
+        iamPrefix: "kinesis"
+      },
+      kms: {
+        iamPrefix: "kms"
+      },
+      lakeformation: {
+        iamPrefix: "lakeformation"
+      },
+      lambda: {
+        iamPrefix: "lambda"
+      },
+      "launch-wizard": {
+        iamPrefix: "launchwizard"
+      },
+      "lex-model-building-service": {
+        iamPrefix: "lex"
+      },
+      "lex-models-v2": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-service": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-v2": {
+        iamPrefix: "lex"
+      },
+      "license-manager-linux-subscriptions": {
+        iamPrefix: "license-manager-linux-subscriptions"
+      },
+      "license-manager-user-subscriptions": {
+        iamPrefix: "license-manager-user-subscriptions"
+      },
+      "license-manager": {
+        iamPrefix: "license-manager"
+      },
+      lightsail: {
+        iamPrefix: "lightsail"
+      },
+      location: {
+        iamPrefix: "geo"
+      },
+      lookoutequipment: {
+        iamPrefix: "lookoutequipment"
+      },
+      lookoutmetrics: {
+        iamPrefix: "lookoutmetrics"
+      },
+      lookoutvision: {
+        iamPrefix: "lookoutvision"
+      },
+      m2: {
+        iamPrefix: "m2"
+      },
+      "machine-learning": {
+        iamPrefix: "machinelearning"
+      },
+      macie2: {
+        iamPrefix: "macie2"
+      },
+      mailmanager: {
+        iamPrefix: "ses"
+      },
+      "managedblockchain-query": {
+        iamPrefix: "managedblockchain-query"
+      },
+      managedblockchain: {
+        iamPrefix: "managedblockchain"
+      },
+      "marketplace-agreement": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-catalog": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-commerce-analytics": {
+        iamPrefix: "marketplacecommerceanalytics"
+      },
+      "marketplace-deployment": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-entitlement-service": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-metering": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-reporting": {
+        iamPrefix: "aws-marketplace"
+      },
+      mediaconnect: {
+        iamPrefix: "mediaconnect"
+      },
+      mediaconvert: {
+        iamPrefix: "mediaconvert"
+      },
+      medialive: {
+        iamPrefix: "medialive"
+      },
+      "mediapackage-vod": {
+        iamPrefix: "mediapackage-vod"
+      },
+      mediapackage: {
+        iamPrefix: "mediapackage"
+      },
+      mediapackagev2: {
+        iamPrefix: "mediapackagev2"
+      },
+      "mediastore-data": {
+        iamPrefix: "mediastore"
+      },
+      mediastore: {
+        iamPrefix: "mediastore"
+      },
+      mediatailor: {
+        iamPrefix: "mediatailor"
+      },
+      "medical-imaging": {
+        iamPrefix: "medical-imaging"
+      },
+      memorydb: {
+        iamPrefix: "memorydb"
+      },
+      mgn: {
+        iamPrefix: "mgn"
+      },
+      "migration-hub-refactor-spaces": {
+        iamPrefix: "refactor-spaces"
+      },
+      "migration-hub": {
+        iamPrefix: "mgh"
+      },
+      "migrationhub-config": {
+        iamPrefix: "mgh"
+      },
+      migrationhuborchestrator: {
+        iamPrefix: "migrationhub-orchestrator"
+      },
+      migrationhubstrategy: {
+        iamPrefix: "migrationhub-strategy"
+      },
+      mq: {
+        iamPrefix: "mq"
+      },
+      mturk: {
+        iamPrefix: "mturk-requester"
+      },
+      mwaa: {
+        iamPrefix: "airflow"
+      },
+      "neptune-graph": {
+        iamPrefix: "neptune-graph"
+      },
+      neptune: {
+        iamPrefix: "rds"
+      },
+      neptunedata: {
+        iamPrefix: "neptune-db"
+      },
+      "network-firewall": {
+        iamPrefix: "network-firewall"
+      },
+      networkflowmonitor: {
+        iamPrefix: "networkflowmonitor"
+      },
+      networkmanager: {
+        iamPrefix: "networkmanager"
+      },
+      networkmonitor: {
+        iamPrefix: "networkmonitor"
+      },
+      notifications: {
+        iamPrefix: "notifications"
+      },
+      notificationscontacts: {
+        iamPrefix: "notifications-contacts"
+      },
+      oam: {
+        iamPrefix: "oam"
+      },
+      observabilityadmin: {
+        iamPrefix: "observabilityadmin"
+      },
+      omics: {
+        iamPrefix: "omics"
+      },
+      opensearch: {
+        iamPrefix: "es"
+      },
+      opensearchserverless: {
+        iamPrefix: "aoss"
+      },
+      opsworks: {
+        iamPrefix: "opsworks"
+      },
+      opsworkscm: {
+        iamPrefix: "opsworks-cm"
+      },
+      organizations: {
+        iamPrefix: "organizations"
+      },
+      osis: {
+        iamPrefix: "osis"
+      },
+      outposts: {
+        iamPrefix: "outposts"
+      },
+      panorama: {
+        iamPrefix: "panorama"
+      },
+      "partnercentral-selling": {
+        iamPrefix: "partnercentral-selling"
+      },
+      "payment-cryptography-data": {
+        iamPrefix: "payment-cryptography"
+      },
+      "payment-cryptography": {
+        iamPrefix: "payment-cryptography"
+      },
+      "pca-connector-ad": {
+        iamPrefix: "pca-connector-ad"
+      },
+      "pca-connector-scep": {
+        iamPrefix: "pca-connector-scep"
+      },
+      pcs: {
+        iamPrefix: "pcs"
+      },
+      "personalize-events": {
+        iamPrefix: "personalize"
+      },
+      "personalize-runtime": {
+        iamPrefix: "personalize"
+      },
+      personalize: {
+        iamPrefix: "personalize"
+      },
+      pi: {
+        iamPrefix: "pi"
+      },
+      "pinpoint-email": {
+        iamPrefix: "ses"
+      },
+      "pinpoint-sms-voice-v2": {
+        iamPrefix: "sms-voice"
+      },
+      "pinpoint-sms-voice": {
+        iamPrefix: "sms-voice"
+      },
+      pinpoint: {
+        iamPrefix: "mobiletargeting"
+      },
+      pipes: {
+        iamPrefix: "pipes"
+      },
+      polly: {
+        iamPrefix: "polly"
+      },
+      pricing: {
+        iamPrefix: "pricing"
+      },
+      proton: {
+        iamPrefix: "proton"
+      },
+      qapps: {
+        iamPrefix: "qapps"
+      },
+      qbusiness: {
+        iamPrefix: "qbusiness"
+      },
+      qconnect: {
+        iamPrefix: "wisdom"
+      },
+      "qldb-session": {
+        iamPrefix: "qldb",
+        commands: [
+          "SendCommand"
+        ]
+      },
+      qldb: {
+        iamPrefix: "qldb"
+      },
+      quicksight: {
+        iamPrefix: "quicksight"
+      },
+      ram: {
+        iamPrefix: "ram"
+      },
+      rbin: {
+        iamPrefix: "rbin"
+      },
+      "rds-data": {
+        iamPrefix: "rds-data"
+      },
+      rds: {
+        iamPrefix: "rds"
+      },
+      "redshift-data": {
+        iamPrefix: "redshift-data"
+      },
+      "redshift-serverless": {
+        iamPrefix: "redshift-serverless"
+      },
+      redshift: {
+        iamPrefix: "redshift"
+      },
+      rekognition: {
+        iamPrefix: "rekognition"
+      },
+      rekognitionstreaming: {
+        iamPrefix: "rekognition"
+      },
+      repostspace: {
+        iamPrefix: "repostspace"
+      },
+      resiliencehub: {
+        iamPrefix: "resiliencehub"
+      },
+      "resource-explorer-2": {
+        iamPrefix: "resource-explorer-2"
+      },
+      "resource-groups-tagging-api": {
+        iamPrefix: "tagging"
+      },
+      "resource-groups": {
+        iamPrefix: "resource-groups"
+      },
+      robomaker: {
+        iamPrefix: "robomaker"
+      },
+      rolesanywhere: {
+        iamPrefix: "rolesanywhere"
+      },
+      "route-53-domains": {
+        iamPrefix: "route53domains"
+      },
+      "route-53": {
+        iamPrefix: "route53"
+      },
+      "route53-recovery-cluster": {
+        iamPrefix: "route53-recovery-cluster"
+      },
+      "route53-recovery-control-config": {
+        iamPrefix: "route53-recovery-control-config"
+      },
+      "route53-recovery-readiness": {
+        iamPrefix: "route53-recovery-readiness"
+      },
+      route53profiles: {
+        iamPrefix: "route53profiles"
+      },
+      route53resolver: {
+        iamPrefix: "route53resolver"
+      },
+      rum: {
+        iamPrefix: "rum"
+      },
+      "s3-control": {
+        iamPrefix: "s3"
+      },
+      s3: {
+        iamPrefix: "s3"
+      },
+      s3outposts: {
+        iamPrefix: "s3-outposts"
+      },
+      s3tables: {
+        iamPrefix: "s3tables"
+      },
+      "sagemaker-a2i-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-edge": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-featurestore-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-geospatial": {
+        iamPrefix: "sagemaker-geospatial"
+      },
+      "sagemaker-metrics": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      sagemaker: {
+        iamPrefix: "sagemaker"
+      },
+      savingsplans: {
+        iamPrefix: "savingsplans"
+      },
+      scheduler: {
+        iamPrefix: "scheduler"
+      },
+      schemas: {
+        iamPrefix: "schemas"
+      },
+      "secrets-manager": {
+        iamPrefix: "secretsmanager"
+      },
+      "security-ir": {
+        iamPrefix: "security-ir"
+      },
+      securityhub: {
+        iamPrefix: "securityhub"
+      },
+      securitylake: {
+        iamPrefix: "securitylake"
+      },
+      serverlessapplicationrepository: {
+        iamPrefix: "serverlessrepo"
+      },
+      "service-catalog-appregistry": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-catalog": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-quotas": {
+        iamPrefix: "servicequotas"
+      },
+      servicediscovery: {
+        iamPrefix: "servicediscovery"
+      },
+      ses: {
+        iamPrefix: "ses"
+      },
+      sesv2: {
+        iamPrefix: "ses"
+      },
+      sfn: {
+        iamPrefix: "states"
+      },
+      shield: {
+        iamPrefix: "shield"
+      },
+      signer: {
+        iamPrefix: "signer"
+      },
+      simspaceweaver: {
+        iamPrefix: "simspaceweaver"
+      },
+      sms: {
+        iamPrefix: "sms"
+      },
+      "snow-device-management": {
+        iamPrefix: "snow-device-management"
+      },
+      snowball: {
+        iamPrefix: "snowball"
+      },
+      sns: {
+        iamPrefix: "sns"
+      },
+      socialmessaging: {
+        iamPrefix: "social-messaging"
+      },
+      sqs: {
+        iamPrefix: "sqs"
+      },
+      "ssm-contacts": {
+        iamPrefix: "ssm-contacts"
+      },
+      "ssm-guiconnect": {
+        iamPrefix: "ssm-guiconnect"
+      },
+      "ssm-incidents": {
+        iamPrefix: "ssm-incidents"
+      },
+      "ssm-quicksetup": {
+        iamPrefix: "ssm-quicksetup"
+      },
+      "ssm-sap": {
+        iamPrefix: "ssm-sap"
+      },
+      ssm: {
+        iamPrefix: "ssm",
+        commands: [
+          "CancelCommand",
+          "SendCommand"
+        ]
+      },
+      "sso-admin": {
+        iamPrefix: "sso"
+      },
+      "sso-oidc": {
+        iamPrefix: "sso-oauth"
+      },
+      sso: {
+        iamPrefix: "awsssoportal"
+      },
+      "storage-gateway": {
+        iamPrefix: "storagegateway"
+      },
+      sts: {
+        iamPrefix: "sts"
+      },
+      supplychain: {
+        iamPrefix: "scn"
+      },
+      "support-app": {
+        iamPrefix: "supportapp"
+      },
+      support: {
+        iamPrefix: "support"
+      },
+      swf: {
+        iamPrefix: "swf"
+      },
+      synthetics: {
+        iamPrefix: "synthetics"
+      },
+      taxsettings: {
+        iamPrefix: "tax"
+      },
+      textract: {
+        iamPrefix: "textract"
+      },
+      "timestream-influxdb": {
+        iamPrefix: "timestream-influxdb"
+      },
+      "timestream-query": {
+        iamPrefix: "timestream"
+      },
+      "timestream-write": {
+        iamPrefix: "timestream"
+      },
+      tnb: {
+        iamPrefix: "tnb"
+      },
+      "transcribe-streaming": {
+        iamPrefix: "transcribe"
+      },
+      transcribe: {
+        iamPrefix: "transcribe"
+      },
+      transfer: {
+        iamPrefix: "transfer"
+      },
+      translate: {
+        iamPrefix: "translate"
+      },
+      trustedadvisor: {
+        iamPrefix: "trustedadvisor"
+      },
+      verifiedpermissions: {
+        iamPrefix: "verifiedpermissions"
+      },
+      "voice-id": {
+        iamPrefix: "voiceid"
+      },
+      "vpc-lattice": {
+        iamPrefix: "vpc-lattice"
+      },
+      "waf-regional": {
+        iamPrefix: "waf-regional"
+      },
+      waf: {
+        iamPrefix: "waf"
+      },
+      wafv2: {
+        iamPrefix: "wafv2"
+      },
+      wellarchitected: {
+        iamPrefix: "wellarchitected"
+      },
+      wisdom: {
+        iamPrefix: "wisdom"
+      },
+      workdocs: {
+        iamPrefix: "workdocs"
+      },
+      workmail: {
+        iamPrefix: "workmail"
+      },
+      workmailmessageflow: {
+        iamPrefix: "workmailmessageflow"
+      },
+      "workspaces-thin-client": {
+        iamPrefix: "thinclient"
+      },
+      "workspaces-web": {
+        iamPrefix: "workspaces-web"
+      },
+      workspaces: {
+        iamPrefix: "workspaces"
+      },
+      xray: {
+        iamPrefix: "xray"
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-info.ts
+var sdk_info_exports = {};
+__export(sdk_info_exports, {
+  normalizeActionName: () => normalizeActionName,
+  normalizeServiceName: () => normalizeServiceName
+});
+function normalizeServiceName(service) {
+  service = service.toLowerCase();
+  service = service.replace(/^@aws-sdk\/client-/, "");
+  service = v2ToV3Mapping()?.[service] ?? service;
+  return service;
+}
+function normalizeActionName(v3Service, action) {
+  if (action.charAt(0).toLowerCase() === action.charAt(0)) {
+    return action.charAt(0).toUpperCase() + action.slice(1);
+  }
+  if (v3Metadata()[v3Service]?.commands?.includes(action)) {
+    return action;
+  }
+  return action.replace(/Command$/, "");
+}
+function v2ToV3Mapping() {
+  return require_sdk_v2_to_v3();
+}
+function v3Metadata() {
+  return require_sdk_v3_metadata();
+}
+var init_sdk_info = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-info.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/api-call.ts
+var api_call_exports = {};
+__export(api_call_exports, {
+  ApiCall: () => ApiCall,
+  coerceSdkv3Response: () => coerceSdkv3Response,
+  flatten: () => flatten2
+});
+function flatten2(root) {
+  const ret = {};
+  recurse(root);
+  return ret;
+  function recurse(x, path23 = []) {
+    if (x && typeof x === "object") {
+      for (const [key, value] of Object.entries(x)) {
+        recurse(value, [...path23, key]);
+      }
+      return;
+    }
+    ret[path23.join(".")] = x;
+  }
+}
+async function coerceSdkv3Response(value) {
+  if (value && typeof value === "object" && typeof value.transformToString === "function") {
+    return value.transformToString();
+  }
+  if (Buffer.isBuffer(value)) {
+    return value.toString("utf8");
+  }
+  if (ArrayBuffer.isView(value)) {
+    return decoder.decode(value.buffer);
+  }
+  if (Array.isArray(value)) {
+    const ret = [];
+    for (const x of value) {
+      ret.push(await coerceSdkv3Response(x));
+    }
+    return ret;
+  }
+  if (value && typeof value === "object") {
+    for (const key of Object.keys(value)) {
+      value[key] = await coerceSdkv3Response(value[key]);
+    }
+    return value;
+  }
+  return value;
+}
+var ApiCall, decoder;
+var init_api_call = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/api-call.ts"() {
+    "use strict";
+    init_coerce_api_parameters();
+    init_find_client_constructor();
+    init_sdk_info();
+    ApiCall = class {
+      service;
+      action;
+      v3PackageName;
+      v3Package;
+      // For testing purposes
+      client;
+      // For testing purposes
+      constructor(service, action) {
+        this.service = normalizeServiceName(service);
+        this.action = normalizeActionName(this.service, action);
+        this.v3PackageName = `@aws-sdk/client-${this.service}`;
+      }
+      async invoke(options) {
+        this.initializePackage(options.sdkPackage);
+        this.initializeClient(options);
+        const Command = this.findCommandClass();
+        const response = await this.client.send(
+          new Command(coerceApiParameters(this.service, this.action, options.parameters ?? {}))
+        );
+        delete response.$metadata;
+        const coerced = await coerceSdkv3Response(response);
+        return options.flattenResponse ? flatten2(coerced) : coerced;
+      }
+      initializePackage(packageOverride) {
+        if (this.v3Package) {
+          return;
+        }
+        if (packageOverride) {
+          this.v3Package = packageOverride;
+          return;
+        }
+        try {
+          this.v3Package = require(this.v3PackageName);
+        } catch (e) {
+          throw Error(`Service ${this.service} client package with name '${this.v3PackageName}' does not exist.`);
+        }
+      }
+      initializeClient(options) {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const ServiceClient = this.findConstructor(this.v3Package);
+        this.client = new ServiceClient({
+          apiVersion: options.apiVersion,
+          credentials: options.credentials,
+          region: options.region
+        });
+        return this.client;
+      }
+      findCommandClass() {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const commandName = `${this.action}Command`;
+        const Command = Object.entries(this.v3Package ?? {}).find(
+          ([name]) => name.toLowerCase() === commandName.toLowerCase()
+        )?.[1];
+        if (!Command) {
+          throw new Error(`Unable to find command named: ${commandName} for action: ${this.action} in service package ${this.v3PackageName}`);
+        }
+        return Command;
+      }
+      findConstructor(pkg) {
+        try {
+          const ret = findV3ClientConstructor(pkg);
+          if (!ret) {
+            throw new Error("findV3ClientConstructor returned undefined");
+          }
+          return ret;
+        } catch (e) {
+          console.error(e);
+          throw Error(`No client constructor found within package: ${this.v3PackageName}`);
+        }
+      }
+    };
+    decoder = new TextDecoder();
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/index.js
+var require_lib6 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.normalizeActionName = exports2.normalizeServiceName = exports2.findV3ClientConstructor = exports2.coerceApiParameters = void 0;
+    var coerce_api_parameters_1 = (init_coerce_api_parameters(), __toCommonJS(coerce_api_parameters_exports));
+    Object.defineProperty(exports2, "coerceApiParameters", { enumerable: true, get: function() {
+      return coerce_api_parameters_1.coerceApiParameters;
+    } });
+    var find_client_constructor_1 = (init_find_client_constructor(), __toCommonJS(find_client_constructor_exports));
+    Object.defineProperty(exports2, "findV3ClientConstructor", { enumerable: true, get: function() {
+      return find_client_constructor_1.findV3ClientConstructor;
+    } });
+    var sdk_info_1 = (init_sdk_info(), __toCommonJS(sdk_info_exports));
+    Object.defineProperty(exports2, "normalizeServiceName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeServiceName;
+    } });
+    Object.defineProperty(exports2, "normalizeActionName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeActionName;
+    } });
+    __exportStar2((init_api_call(), __toCommonJS(api_call_exports)), exports2);
+  }
+});
+
+// ../../../node_modules/webidl-conversions/lib/index.js
+var require_lib7 = __commonJS({
+  "../../../node_modules/webidl-conversions/lib/index.js"(exports2, module2) {
+    "use strict";
+    var conversions = {};
+    module2.exports = conversions;
+    function sign(x) {
+      return x < 0 ? -1 : 1;
+    }
+    function evenRound(x) {
+      if (x % 1 === 0.5 && (x & 1) === 0) {
+        return Math.floor(x);
+      } else {
+        return Math.round(x);
+      }
+    }
+    function createNumberConversion(bitLength, typeOpts) {
+      if (!typeOpts.unsigned) {
+        --bitLength;
+      }
+      const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength);
+      const upperBound = Math.pow(2, bitLength) - 1;
+      const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength);
+      const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1);
+      return function(V, opts) {
+        if (!opts) opts = {};
+        let x = +V;
+        if (opts.enforceRange) {
+          if (!Number.isFinite(x)) {
+            throw new TypeError("Argument is not a finite number");
+          }
+          x = sign(x) * Math.floor(Math.abs(x));
+          if (x < lowerBound || x > upperBound) {
+            throw new TypeError("Argument is not in byte range");
+          }
+          return x;
+        }
+        if (!isNaN(x) && opts.clamp) {
+          x = evenRound(x);
+          if (x < lowerBound) x = lowerBound;
+          if (x > upperBound) x = upperBound;
+          return x;
+        }
+        if (!Number.isFinite(x) || x === 0) {
+          return 0;
+        }
+        x = sign(x) * Math.floor(Math.abs(x));
+        x = x % moduloVal;
+        if (!typeOpts.unsigned && x >= moduloBound) {
+          return x - moduloVal;
+        } else if (typeOpts.unsigned) {
+          if (x < 0) {
+            x += moduloVal;
+          } else if (x === -0) {
+            return 0;
+          }
+        }
+        return x;
+      };
+    }
+    conversions["void"] = function() {
+      return void 0;
+    };
+    conversions["boolean"] = function(val2) {
+      return !!val2;
+    };
+    conversions["byte"] = createNumberConversion(8, { unsigned: false });
+    conversions["octet"] = createNumberConversion(8, { unsigned: true });
+    conversions["short"] = createNumberConversion(16, { unsigned: false });
+    conversions["unsigned short"] = createNumberConversion(16, { unsigned: true });
+    conversions["long"] = createNumberConversion(32, { unsigned: false });
+    conversions["unsigned long"] = createNumberConversion(32, { unsigned: true });
+    conversions["long long"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 });
+    conversions["unsigned long long"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 });
+    conversions["double"] = function(V) {
+      const x = +V;
+      if (!Number.isFinite(x)) {
+        throw new TypeError("Argument is not a finite floating-point value");
+      }
+      return x;
+    };
+    conversions["unrestricted double"] = function(V) {
+      const x = +V;
+      if (isNaN(x)) {
+        throw new TypeError("Argument is NaN");
+      }
+      return x;
+    };
+    conversions["float"] = conversions["double"];
+    conversions["unrestricted float"] = conversions["unrestricted double"];
+    conversions["DOMString"] = function(V, opts) {
+      if (!opts) opts = {};
+      if (opts.treatNullAsEmptyString && V === null) {
+        return "";
+      }
+      return String(V);
+    };
+    conversions["ByteString"] = function(V, opts) {
+      const x = String(V);
+      let c = void 0;
+      for (let i = 0; (c = x.codePointAt(i)) !== void 0; ++i) {
+        if (c > 255) {
+          throw new TypeError("Argument is not a valid bytestring");
+        }
+      }
+      return x;
+    };
+    conversions["USVString"] = function(V) {
+      const S = String(V);
+      const n = S.length;
+      const U = [];
+      for (let i = 0; i < n; ++i) {
+        const c = S.charCodeAt(i);
+        if (c < 55296 || c > 57343) {
+          U.push(String.fromCodePoint(c));
+        } else if (56320 <= c && c <= 57343) {
+          U.push(String.fromCodePoint(65533));
+        } else {
+          if (i === n - 1) {
+            U.push(String.fromCodePoint(65533));
+          } else {
+            const d = S.charCodeAt(i + 1);
+            if (56320 <= d && d <= 57343) {
+              const a = c & 1023;
+              const b = d & 1023;
+              U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b));
+              ++i;
+            } else {
+              U.push(String.fromCodePoint(65533));
+            }
+          }
+        }
+      }
+      return U.join("");
+    };
+    conversions["Date"] = function(V, opts) {
+      if (!(V instanceof Date)) {
+        throw new TypeError("Argument is not a Date object");
+      }
+      if (isNaN(V)) {
+        return void 0;
+      }
+      return V;
+    };
+    conversions["RegExp"] = function(V, opts) {
+      if (!(V instanceof RegExp)) {
+        V = new RegExp(V);
+      }
+      return V;
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/utils.js
+var require_utils3 = __commonJS({
+  "../../../node_modules/whatwg-url/lib/utils.js"(exports2, module2) {
+    "use strict";
+    module2.exports.mixin = function mixin(target, source) {
+      const keys = Object.getOwnPropertyNames(source);
+      for (let i = 0; i < keys.length; ++i) {
+        Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));
+      }
+    };
+    module2.exports.wrapperSymbol = /* @__PURE__ */ Symbol("wrapper");
+    module2.exports.implSymbol = /* @__PURE__ */ Symbol("impl");
+    module2.exports.wrapperForImpl = function(impl) {
+      return impl[module2.exports.wrapperSymbol];
+    };
+    module2.exports.implForWrapper = function(wrapper) {
+      return wrapper[module2.exports.implSymbol];
+    };
+  }
+});
+
+// ../../../node_modules/tr46/lib/mappingTable.json
+var require_mappingTable = __commonJS({
+  "../../../node_modules/tr46/lib/mappingTable.json"(exports2, module2) {
+    module2.exports = [[[0, 44], "disallowed_STD3_valid"], [[45, 46], "valid"], [[47, 47], "disallowed_STD3_valid"], [[48, 57], "valid"], [[58, 64], "disallowed_STD3_valid"], [[65, 65], "mapped", [97]], [[66, 66], "mapped", [98]], [[67, 67], "mapped", [99]], [[68, 68], "mapped", [100]], [[69, 69], "mapped", [101]], [[70, 70], "mapped", [102]], [[71, 71], "mapped", [103]], [[72, 72], "mapped", [104]], [[73, 73], "mapped", [105]], [[74, 74], "mapped", [106]], [[75, 75], "mapped", [107]], [[76, 76], "mapped", [108]], [[77, 77], "mapped", [109]], [[78, 78], "mapped", [110]], [[79, 79], "mapped", [111]], [[80, 80], "mapped", [112]], [[81, 81], "mapped", [113]], [[82, 82], "mapped", [114]], [[83, 83], "mapped", [115]], [[84, 84], "mapped", [116]], [[85, 85], "mapped", [117]], [[86, 86], "mapped", [118]], [[87, 87], "mapped", [119]], [[88, 88], "mapped", [120]], [[89, 89], "mapped", [121]], [[90, 90], "mapped", [122]], [[91, 96], "disallowed_STD3_valid"], [[97, 122], "valid"], [[123, 127], "disallowed_STD3_valid"], [[128, 159], "disallowed"], [[160, 160], "disallowed_STD3_mapped", [32]], [[161, 167], "valid", [], "NV8"], [[168, 168], "disallowed_STD3_mapped", [32, 776]], [[169, 169], "valid", [], "NV8"], [[170, 170], "mapped", [97]], [[171, 172], "valid", [], "NV8"], [[173, 173], "ignored"], [[174, 174], "valid", [], "NV8"], [[175, 175], "disallowed_STD3_mapped", [32, 772]], [[176, 177], "valid", [], "NV8"], [[178, 178], "mapped", [50]], [[179, 179], "mapped", [51]], [[180, 180], "disallowed_STD3_mapped", [32, 769]], [[181, 181], "mapped", [956]], [[182, 182], "valid", [], "NV8"], [[183, 183], "valid"], [[184, 184], "disallowed_STD3_mapped", [32, 807]], [[185, 185], "mapped", [49]], [[186, 186], "mapped", [111]], [[187, 187], "valid", [], "NV8"], [[188, 188], "mapped", [49, 8260, 52]], [[189, 189], "mapped", [49, 8260, 50]], [[190, 190], "mapped", [51, 8260, 52]], [[191, 191], "valid", [], "NV8"], [[192, 192], "mapped", [224]], [[193, 193], "mapped", [225]], [[194, 194], "mapped", [226]], [[195, 195], "mapped", [227]], [[196, 196], "mapped", [228]], [[197, 197], "mapped", [229]], [[198, 198], "mapped", [230]], [[199, 199], "mapped", [231]], [[200, 200], "mapped", [232]], [[201, 201], "mapped", [233]], [[202, 202], "mapped", [234]], [[203, 203], "mapped", [235]], [[204, 204], "mapped", [236]], [[205, 205], "mapped", [237]], [[206, 206], "mapped", [238]], [[207, 207], "mapped", [239]], [[208, 208], "mapped", [240]], [[209, 209], "mapped", [241]], [[210, 210], "mapped", [242]], [[211, 211], "mapped", [243]], [[212, 212], "mapped", [244]], [[213, 213], "mapped", [245]], [[214, 214], "mapped", [246]], [[215, 215], "valid", [], "NV8"], [[216, 216], "mapped", [248]], [[217, 217], "mapped", [249]], [[218, 218], "mapped", [250]], [[219, 219], "mapped", [251]], [[220, 220], "mapped", [252]], [[221, 221], "mapped", [253]], [[222, 222], "mapped", [254]], [[223, 223], "deviation", [115, 115]], [[224, 246], "valid"], [[247, 247], "valid", [], "NV8"], [[248, 255], "valid"], [[256, 256], "mapped", [257]], [[257, 257], "valid"], [[258, 258], "mapped", [259]], [[259, 259], "valid"], [[260, 260], "mapped", [261]], [[261, 261], "valid"], [[262, 262], "mapped", [263]], [[263, 263], "valid"], [[264, 264], "mapped", [265]], [[265, 265], "valid"], [[266, 266], "mapped", [267]], [[267, 267], "valid"], [[268, 268], "mapped", [269]], [[269, 269], "valid"], [[270, 270], "mapped", [271]], [[271, 271], "valid"], [[272, 272], "mapped", [273]], [[273, 273], "valid"], [[274, 274], "mapped", [275]], [[275, 275], "valid"], [[276, 276], "mapped", [277]], [[277, 277], "valid"], [[278, 278], "mapped", [279]], [[279, 279], "valid"], [[280, 280], "mapped", [281]], [[281, 281], "valid"], [[282, 282], "mapped", [283]], [[283, 283], "valid"], [[284, 284], "mapped", [285]], [[285, 285], "valid"], [[286, 286], "mapped", [287]], [[287, 287], "valid"], [[288, 288], "mapped", [289]], [[289, 289], "valid"], [[290, 290], "mapped", [291]], [[291, 291], "valid"], [[292, 292], "mapped", [293]], [[293, 293], "valid"], [[294, 294], "mapped", [295]], [[295, 295], "valid"], [[296, 296], "mapped", [297]], [[297, 297], "valid"], [[298, 298], "mapped", [299]], [[299, 299], "valid"], [[300, 300], "mapped", [301]], [[301, 301], "valid"], [[302, 302], "mapped", [303]], [[303, 303], "valid"], [[304, 304], "mapped", [105, 775]], [[305, 305], "valid"], [[306, 307], "mapped", [105, 106]], [[308, 308], "mapped", [309]], [[309, 309], "valid"], [[310, 310], "mapped", [311]], [[311, 312], "valid"], [[313, 313], "mapped", [314]], [[314, 314], "valid"], [[315, 315], "mapped", [316]], [[316, 316], "valid"], [[317, 317], "mapped", [318]], [[318, 318], "valid"], [[319, 320], "mapped", [108, 183]], [[321, 321], "mapped", [322]], [[322, 322], "valid"], [[323, 323], "mapped", [324]], [[324, 324], "valid"], [[325, 325], "mapped", [326]], [[326, 326], "valid"], [[327, 327], "mapped", [328]], [[328, 328], "valid"], [[329, 329], "mapped", [700, 110]], [[330, 330], "mapped", [331]], [[331, 331], "valid"], [[332, 332], "mapped", [333]], [[333, 333], "valid"], [[334, 334], "mapped", [335]], [[335, 335], "valid"], [[336, 336], "mapped", [337]], [[337, 337], "valid"], [[338, 338], "mapped", [339]], [[339, 339], "valid"], [[340, 340], "mapped", [341]], [[341, 341], "valid"], [[342, 342], "mapped", [343]], [[343, 343], "valid"], [[344, 344], "mapped", [345]], [[345, 345], "valid"], [[346, 346], "mapped", [347]], [[347, 347], "valid"], [[348, 348], "mapped", [349]], [[349, 349], "valid"], [[350, 350], "mapped", [351]], [[351, 351], "valid"], [[352, 352], "mapped", [353]], [[353, 353], "valid"], [[354, 354], "mapped", [355]], [[355, 355], "valid"], [[356, 356], "mapped", [357]], [[357, 357], "valid"], [[358, 358], "mapped", [359]], [[359, 359], "valid"], [[360, 360], "mapped", [361]], [[361, 361], "valid"], [[362, 362], "mapped", [363]], [[363, 363], "valid"], [[364, 364], "mapped", [365]], [[365, 365], "valid"], [[366, 366], "mapped", [367]], [[367, 367], "valid"], [[368, 368], "mapped", [369]], [[369, 369], "valid"], [[370, 370], "mapped", [371]], [[371, 371], "valid"], [[372, 372], "mapped", [373]], [[373, 373], "valid"], [[374, 374], "mapped", [375]], [[375, 375], "valid"], [[376, 376], "mapped", [255]], [[377, 377], "mapped", [378]], [[378, 378], "valid"], [[379, 379], "mapped", [380]], [[380, 380], "valid"], [[381, 381], "mapped", [382]], [[382, 382], "valid"], [[383, 383], "mapped", [115]], [[384, 384], "valid"], [[385, 385], "mapped", [595]], [[386, 386], "mapped", [387]], [[387, 387], "valid"], [[388, 388], "mapped", [389]], [[389, 389], "valid"], [[390, 390], "mapped", [596]], [[391, 391], "mapped", [392]], [[392, 392], "valid"], [[393, 393], "mapped", [598]], [[394, 394], "mapped", [599]], [[395, 395], "mapped", [396]], [[396, 397], "valid"], [[398, 398], "mapped", [477]], [[399, 399], "mapped", [601]], [[400, 400], "mapped", [603]], [[401, 401], "mapped", [402]], [[402, 402], "valid"], [[403, 403], "mapped", [608]], [[404, 404], "mapped", [611]], [[405, 405], "valid"], [[406, 406], "mapped", [617]], [[407, 407], "mapped", [616]], [[408, 408], "mapped", [409]], [[409, 411], "valid"], [[412, 412], "mapped", [623]], [[413, 413], "mapped", [626]], [[414, 414], "valid"], [[415, 415], "mapped", [629]], [[416, 416], "mapped", [417]], [[417, 417], "valid"], [[418, 418], "mapped", [419]], [[419, 419], "valid"], [[420, 420], "mapped", [421]], [[421, 421], "valid"], [[422, 422], "mapped", [640]], [[423, 423], "mapped", [424]], [[424, 424], "valid"], [[425, 425], "mapped", [643]], [[426, 427], "valid"], [[428, 428], "mapped", [429]], [[429, 429], "valid"], [[430, 430], "mapped", [648]], [[431, 431], "mapped", [432]], [[432, 432], "valid"], [[433, 433], "mapped", [650]], [[434, 434], "mapped", [651]], [[435, 435], "mapped", [436]], [[436, 436], "valid"], [[437, 437], "mapped", [438]], [[438, 438], "valid"], [[439, 439], "mapped", [658]], [[440, 440], "mapped", [441]], [[441, 443], "valid"], [[444, 444], "mapped", [445]], [[445, 451], "valid"], [[452, 454], "mapped", [100, 382]], [[455, 457], "mapped", [108, 106]], [[458, 460], "mapped", [110, 106]], [[461, 461], "mapped", [462]], [[462, 462], "valid"], [[463, 463], "mapped", [464]], [[464, 464], "valid"], [[465, 465], "mapped", [466]], [[466, 466], "valid"], [[467, 467], "mapped", [468]], [[468, 468], "valid"], [[469, 469], "mapped", [470]], [[470, 470], "valid"], [[471, 471], "mapped", [472]], [[472, 472], "valid"], [[473, 473], "mapped", [474]], [[474, 474], "valid"], [[475, 475], "mapped", [476]], [[476, 477], "valid"], [[478, 478], "mapped", [479]], [[479, 479], "valid"], [[480, 480], "mapped", [481]], [[481, 481], "valid"], [[482, 482], "mapped", [483]], [[483, 483], "valid"], [[484, 484], "mapped", [485]], [[485, 485], "valid"], [[486, 486], "mapped", [487]], [[487, 487], "valid"], [[488, 488], "mapped", [489]], [[489, 489], "valid"], [[490, 490], "mapped", [491]], [[491, 491], "valid"], [[492, 492], "mapped", [493]], [[493, 493], "valid"], [[494, 494], "mapped", [495]], [[495, 496], "valid"], [[497, 499], "mapped", [100, 122]], [[500, 500], "mapped", [501]], [[501, 501], "valid"], [[502, 502], "mapped", [405]], [[503, 503], "mapped", [447]], [[504, 504], "mapped", [505]], [[505, 505], "valid"], [[506, 506], "mapped", [507]], [[507, 507], "valid"], [[508, 508], "mapped", [509]], [[509, 509], "valid"], [[510, 510], "mapped", [511]], [[511, 511], "valid"], [[512, 512], "mapped", [513]], [[513, 513], "valid"], [[514, 514], "mapped", [515]], [[515, 515], "valid"], [[516, 516], "mapped", [517]], [[517, 517], "valid"], [[518, 518], "mapped", [519]], [[519, 519], "valid"], [[520, 520], "mapped", [521]], [[521, 521], "valid"], [[522, 522], "mapped", [523]], [[523, 523], "valid"], [[524, 524], "mapped", [525]], [[525, 525], "valid"], [[526, 526], "mapped", [527]], [[527, 527], "valid"], [[528, 528], "mapped", [529]], [[529, 529], "valid"], [[530, 530], "mapped", [531]], [[531, 531], "valid"], [[532, 532], "mapped", [533]], [[533, 533], "valid"], [[534, 534], "mapped", [535]], [[535, 535], "valid"], [[536, 536], "mapped", [537]], [[537, 537], "valid"], [[538, 538], "mapped", [539]], [[539, 539], "valid"], [[540, 540], "mapped", [541]], [[541, 541], "valid"], [[542, 542], "mapped", [543]], [[543, 543], "valid"], [[544, 544], "mapped", [414]], [[545, 545], "valid"], [[546, 546], "mapped", [547]], [[547, 547], "valid"], [[548, 548], "mapped", [549]], [[549, 549], "valid"], [[550, 550], "mapped", [551]], [[551, 551], "valid"], [[552, 552], "mapped", [553]], [[553, 553], "valid"], [[554, 554], "mapped", [555]], [[555, 555], "valid"], [[556, 556], "mapped", [557]], [[557, 557], "valid"], [[558, 558], "mapped", [559]], [[559, 559], "valid"], [[560, 560], "mapped", [561]], [[561, 561], "valid"], [[562, 562], "mapped", [563]], [[563, 563], "valid"], [[564, 566], "valid"], [[567, 569], "valid"], [[570, 570], "mapped", [11365]], [[571, 571], "mapped", [572]], [[572, 572], "valid"], [[573, 573], "mapped", [410]], [[574, 574], "mapped", [11366]], [[575, 576], "valid"], [[577, 577], "mapped", [578]], [[578, 578], "valid"], [[579, 579], "mapped", [384]], [[580, 580], "mapped", [649]], [[581, 581], "mapped", [652]], [[582, 582], "mapped", [583]], [[583, 583], "valid"], [[584, 584], "mapped", [585]], [[585, 585], "valid"], [[586, 586], "mapped", [587]], [[587, 587], "valid"], [[588, 588], "mapped", [589]], [[589, 589], "valid"], [[590, 590], "mapped", [591]], [[591, 591], "valid"], [[592, 680], "valid"], [[681, 685], "valid"], [[686, 687], "valid"], [[688, 688], "mapped", [104]], [[689, 689], "mapped", [614]], [[690, 690], "mapped", [106]], [[691, 691], "mapped", [114]], [[692, 692], "mapped", [633]], [[693, 693], "mapped", [635]], [[694, 694], "mapped", [641]], [[695, 695], "mapped", [119]], [[696, 696], "mapped", [121]], [[697, 705], "valid"], [[706, 709], "valid", [], "NV8"], [[710, 721], "valid"], [[722, 727], "valid", [], "NV8"], [[728, 728], "disallowed_STD3_mapped", [32, 774]], [[729, 729], "disallowed_STD3_mapped", [32, 775]], [[730, 730], "disallowed_STD3_mapped", [32, 778]], [[731, 731], "disallowed_STD3_mapped", [32, 808]], [[732, 732], "disallowed_STD3_mapped", [32, 771]], [[733, 733], "disallowed_STD3_mapped", [32, 779]], [[734, 734], "valid", [], "NV8"], [[735, 735], "valid", [], "NV8"], [[736, 736], "mapped", [611]], [[737, 737], "mapped", [108]], [[738, 738], "mapped", [115]], [[739, 739], "mapped", [120]], [[740, 740], "mapped", [661]], [[741, 745], "valid", [], "NV8"], [[746, 747], "valid", [], "NV8"], [[748, 748], "valid"], [[749, 749], "valid", [], "NV8"], [[750, 750], "valid"], [[751, 767], "valid", [], "NV8"], [[768, 831], "valid"], [[832, 832], "mapped", [768]], [[833, 833], "mapped", [769]], [[834, 834], "valid"], [[835, 835], "mapped", [787]], [[836, 836], "mapped", [776, 769]], [[837, 837], "mapped", [953]], [[838, 846], "valid"], [[847, 847], "ignored"], [[848, 855], "valid"], [[856, 860], "valid"], [[861, 863], "valid"], [[864, 865], "valid"], [[866, 866], "valid"], [[867, 879], "valid"], [[880, 880], "mapped", [881]], [[881, 881], "valid"], [[882, 882], "mapped", [883]], [[883, 883], "valid"], [[884, 884], "mapped", [697]], [[885, 885], "valid"], [[886, 886], "mapped", [887]], [[887, 887], "valid"], [[888, 889], "disallowed"], [[890, 890], "disallowed_STD3_mapped", [32, 953]], [[891, 893], "valid"], [[894, 894], "disallowed_STD3_mapped", [59]], [[895, 895], "mapped", [1011]], [[896, 899], "disallowed"], [[900, 900], "disallowed_STD3_mapped", [32, 769]], [[901, 901], "disallowed_STD3_mapped", [32, 776, 769]], [[902, 902], "mapped", [940]], [[903, 903], "mapped", [183]], [[904, 904], "mapped", [941]], [[905, 905], "mapped", [942]], [[906, 906], "mapped", [943]], [[907, 907], "disallowed"], [[908, 908], "mapped", [972]], [[909, 909], "disallowed"], [[910, 910], "mapped", [973]], [[911, 911], "mapped", [974]], [[912, 912], "valid"], [[913, 913], "mapped", [945]], [[914, 914], "mapped", [946]], [[915, 915], "mapped", [947]], [[916, 916], "mapped", [948]], [[917, 917], "mapped", [949]], [[918, 918], "mapped", [950]], [[919, 919], "mapped", [951]], [[920, 920], "mapped", [952]], [[921, 921], "mapped", [953]], [[922, 922], "mapped", [954]], [[923, 923], "mapped", [955]], [[924, 924], "mapped", [956]], [[925, 925], "mapped", [957]], [[926, 926], "mapped", [958]], [[927, 927], "mapped", [959]], [[928, 928], "mapped", [960]], [[929, 929], "mapped", [961]], [[930, 930], "disallowed"], [[931, 931], "mapped", [963]], [[932, 932], "mapped", [964]], [[933, 933], "mapped", [965]], [[934, 934], "mapped", [966]], [[935, 935], "mapped", [967]], [[936, 936], "mapped", [968]], [[937, 937], "mapped", [969]], [[938, 938], "mapped", [970]], [[939, 939], "mapped", [971]], [[940, 961], "valid"], [[962, 962], "deviation", [963]], [[963, 974], "valid"], [[975, 975], "mapped", [983]], [[976, 976], "mapped", [946]], [[977, 977], "mapped", [952]], [[978, 978], "mapped", [965]], [[979, 979], "mapped", [973]], [[980, 980], "mapped", [971]], [[981, 981], "mapped", [966]], [[982, 982], "mapped", [960]], [[983, 983], "valid"], [[984, 984], "mapped", [985]], [[985, 985], "valid"], [[986, 986], "mapped", [987]], [[987, 987], "valid"], [[988, 988], "mapped", [989]], [[989, 989], "valid"], [[990, 990], "mapped", [991]], [[991, 991], "valid"], [[992, 992], "mapped", [993]], [[993, 993], "valid"], [[994, 994], "mapped", [995]], [[995, 995], "valid"], [[996, 996], "mapped", [997]], [[997, 997], "valid"], [[998, 998], "mapped", [999]], [[999, 999], "valid"], [[1e3, 1e3], "mapped", [1001]], [[1001, 1001], "valid"], [[1002, 1002], "mapped", [1003]], [[1003, 1003], "valid"], [[1004, 1004], "mapped", [1005]], [[1005, 1005], "valid"], [[1006, 1006], "mapped", [1007]], [[1007, 1007], "valid"], [[1008, 1008], "mapped", [954]], [[1009, 1009], "mapped", [961]], [[1010, 1010], "mapped", [963]], [[1011, 1011], "valid"], [[1012, 1012], "mapped", [952]], [[1013, 1013], "mapped", [949]], [[1014, 1014], "valid", [], "NV8"], [[1015, 1015], "mapped", [1016]], [[1016, 1016], "valid"], [[1017, 1017], "mapped", [963]], [[1018, 1018], "mapped", [1019]], [[1019, 1019], "valid"], [[1020, 1020], "valid"], [[1021, 1021], "mapped", [891]], [[1022, 1022], "mapped", [892]], [[1023, 1023], "mapped", [893]], [[1024, 1024], "mapped", [1104]], [[1025, 1025], "mapped", [1105]], [[1026, 1026], "mapped", [1106]], [[1027, 1027], "mapped", [1107]], [[1028, 1028], "mapped", [1108]], [[1029, 1029], "mapped", [1109]], [[1030, 1030], "mapped", [1110]], [[1031, 1031], "mapped", [1111]], [[1032, 1032], "mapped", [1112]], [[1033, 1033], "mapped", [1113]], [[1034, 1034], "mapped", [1114]], [[1035, 1035], "mapped", [1115]], [[1036, 1036], "mapped", [1116]], [[1037, 1037], "mapped", [1117]], [[1038, 1038], "mapped", [1118]], [[1039, 1039], "mapped", [1119]], [[1040, 1040], "mapped", [1072]], [[1041, 1041], "mapped", [1073]], [[1042, 1042], "mapped", [1074]], [[1043, 1043], "mapped", [1075]], [[1044, 1044], "mapped", [1076]], [[1045, 1045], "mapped", [1077]], [[1046, 1046], "mapped", [1078]], [[1047, 1047], "mapped", [1079]], [[1048, 1048], "mapped", [1080]], [[1049, 1049], "mapped", [1081]], [[1050, 1050], "mapped", [1082]], [[1051, 1051], "mapped", [1083]], [[1052, 1052], "mapped", [1084]], [[1053, 1053], "mapped", [1085]], [[1054, 1054], "mapped", [1086]], [[1055, 1055], "mapped", [1087]], [[1056, 1056], "mapped", [1088]], [[1057, 1057], "mapped", [1089]], [[1058, 1058], "mapped", [1090]], [[1059, 1059], "mapped", [1091]], [[1060, 1060], "mapped", [1092]], [[1061, 1061], "mapped", [1093]], [[1062, 1062], "mapped", [1094]], [[1063, 1063], "mapped", [1095]], [[1064, 1064], "mapped", [1096]], [[1065, 1065], "mapped", [1097]], [[1066, 1066], "mapped", [1098]], [[1067, 1067], "mapped", [1099]], [[1068, 1068], "mapped", [1100]], [[1069, 1069], "mapped", [1101]], [[1070, 1070], "mapped", [1102]], [[1071, 1071], "mapped", [1103]], [[1072, 1103], "valid"], [[1104, 1104], "valid"], [[1105, 1116], "valid"], [[1117, 1117], "valid"], [[1118, 1119], "valid"], [[1120, 1120], "mapped", [1121]], [[1121, 1121], "valid"], [[1122, 1122], "mapped", [1123]], [[1123, 1123], "valid"], [[1124, 1124], "mapped", [1125]], [[1125, 1125], "valid"], [[1126, 1126], "mapped", [1127]], [[1127, 1127], "valid"], [[1128, 1128], "mapped", [1129]], [[1129, 1129], "valid"], [[1130, 1130], "mapped", [1131]], [[1131, 1131], "valid"], [[1132, 1132], "mapped", [1133]], [[1133, 1133], "valid"], [[1134, 1134], "mapped", [1135]], [[1135, 1135], "valid"], [[1136, 1136], "mapped", [1137]], [[1137, 1137], "valid"], [[1138, 1138], "mapped", [1139]], [[1139, 1139], "valid"], [[1140, 1140], "mapped", [1141]], [[1141, 1141], "valid"], [[1142, 1142], "mapped", [1143]], [[1143, 1143], "valid"], [[1144, 1144], "mapped", [1145]], [[1145, 1145], "valid"], [[1146, 1146], "mapped", [1147]], [[1147, 1147], "valid"], [[1148, 1148], "mapped", [1149]], [[1149, 1149], "valid"], [[1150, 1150], "mapped", [1151]], [[1151, 1151], "valid"], [[1152, 1152], "mapped", [1153]], [[1153, 1153], "valid"], [[1154, 1154], "valid", [], "NV8"], [[1155, 1158], "valid"], [[1159, 1159], "valid"], [[1160, 1161], "valid", [], "NV8"], [[1162, 1162], "mapped", [1163]], [[1163, 1163], "valid"], [[1164, 1164], "mapped", [1165]], [[1165, 1165], "valid"], [[1166, 1166], "mapped", [1167]], [[1167, 1167], "valid"], [[1168, 1168], "mapped", [1169]], [[1169, 1169], "valid"], [[1170, 1170], "mapped", [1171]], [[1171, 1171], "valid"], [[1172, 1172], "mapped", [1173]], [[1173, 1173], "valid"], [[1174, 1174], "mapped", [1175]], [[1175, 1175], "valid"], [[1176, 1176], "mapped", [1177]], [[1177, 1177], "valid"], [[1178, 1178], "mapped", [1179]], [[1179, 1179], "valid"], [[1180, 1180], "mapped", [1181]], [[1181, 1181], "valid"], [[1182, 1182], "mapped", [1183]], [[1183, 1183], "valid"], [[1184, 1184], "mapped", [1185]], [[1185, 1185], "valid"], [[1186, 1186], "mapped", [1187]], [[1187, 1187], "valid"], [[1188, 1188], "mapped", [1189]], [[1189, 1189], "valid"], [[1190, 1190], "mapped", [1191]], [[1191, 1191], "valid"], [[1192, 1192], "mapped", [1193]], [[1193, 1193], "valid"], [[1194, 1194], "mapped", [1195]], [[1195, 1195], "valid"], [[1196, 1196], "mapped", [1197]], [[1197, 1197], "valid"], [[1198, 1198], "mapped", [1199]], [[1199, 1199], "valid"], [[1200, 1200], "mapped", [1201]], [[1201, 1201], "valid"], [[1202, 1202], "mapped", [1203]], [[1203, 1203], "valid"], [[1204, 1204], "mapped", [1205]], [[1205, 1205], "valid"], [[1206, 1206], "mapped", [1207]], [[1207, 1207], "valid"], [[1208, 1208], "mapped", [1209]], [[1209, 1209], "valid"], [[1210, 1210], "mapped", [1211]], [[1211, 1211], "valid"], [[1212, 1212], "mapped", [1213]], [[1213, 1213], "valid"], [[1214, 1214], "mapped", [1215]], [[1215, 1215], "valid"], [[1216, 1216], "disallowed"], [[1217, 1217], "mapped", [1218]], [[1218, 1218], "valid"], [[1219, 1219], "mapped", [1220]], [[1220, 1220], "valid"], [[1221, 1221], "mapped", [1222]], [[1222, 1222], "valid"], [[1223, 1223], "mapped", [1224]], [[1224, 1224], "valid"], [[1225, 1225], "mapped", [1226]], [[1226, 1226], "valid"], [[1227, 1227], "mapped", [1228]], [[1228, 1228], "valid"], [[1229, 1229], "mapped", [1230]], [[1230, 1230], "valid"], [[1231, 1231], "valid"], [[1232, 1232], "mapped", [1233]], [[1233, 1233], "valid"], [[1234, 1234], "mapped", [1235]], [[1235, 1235], "valid"], [[1236, 1236], "mapped", [1237]], [[1237, 1237], "valid"], [[1238, 1238], "mapped", [1239]], [[1239, 1239], "valid"], [[1240, 1240], "mapped", [1241]], [[1241, 1241], "valid"], [[1242, 1242], "mapped", [1243]], [[1243, 1243], "valid"], [[1244, 1244], "mapped", [1245]], [[1245, 1245], "valid"], [[1246, 1246], "mapped", [1247]], [[1247, 1247], "valid"], [[1248, 1248], "mapped", [1249]], [[1249, 1249], "valid"], [[1250, 1250], "mapped", [1251]], [[1251, 1251], "valid"], [[1252, 1252], "mapped", [1253]], [[1253, 1253], "valid"], [[1254, 1254], "mapped", [1255]], [[1255, 1255], "valid"], [[1256, 1256], "mapped", [1257]], [[1257, 1257], "valid"], [[1258, 1258], "mapped", [1259]], [[1259, 1259], "valid"], [[1260, 1260], "mapped", [1261]], [[1261, 1261], "valid"], [[1262, 1262], "mapped", [1263]], [[1263, 1263], "valid"], [[1264, 1264], "mapped", [1265]], [[1265, 1265], "valid"], [[1266, 1266], "mapped", [1267]], [[1267, 1267], "valid"], [[1268, 1268], "mapped", [1269]], [[1269, 1269], "valid"], [[1270, 1270], "mapped", [1271]], [[1271, 1271], "valid"], [[1272, 1272], "mapped", [1273]], [[1273, 1273], "valid"], [[1274, 1274], "mapped", [1275]], [[1275, 1275], "valid"], [[1276, 1276], "mapped", [1277]], [[1277, 1277], "valid"], [[1278, 1278], "mapped", [1279]], [[1279, 1279], "valid"], [[1280, 1280], "mapped", [1281]], [[1281, 1281], "valid"], [[1282, 1282], "mapped", [1283]], [[1283, 1283], "valid"], [[1284, 1284], "mapped", [1285]], [[1285, 1285], "valid"], [[1286, 1286], "mapped", [1287]], [[1287, 1287], "valid"], [[1288, 1288], "mapped", [1289]], [[1289, 1289], "valid"], [[1290, 1290], "mapped", [1291]], [[1291, 1291], "valid"], [[1292, 1292], "mapped", [1293]], [[1293, 1293], "valid"], [[1294, 1294], "mapped", [1295]], [[1295, 1295], "valid"], [[1296, 1296], "mapped", [1297]], [[1297, 1297], "valid"], [[1298, 1298], "mapped", [1299]], [[1299, 1299], "valid"], [[1300, 1300], "mapped", [1301]], [[1301, 1301], "valid"], [[1302, 1302], "mapped", [1303]], [[1303, 1303], "valid"], [[1304, 1304], "mapped", [1305]], [[1305, 1305], "valid"], [[1306, 1306], "mapped", [1307]], [[1307, 1307], "valid"], [[1308, 1308], "mapped", [1309]], [[1309, 1309], "valid"], [[1310, 1310], "mapped", [1311]], [[1311, 1311], "valid"], [[1312, 1312], "mapped", [1313]], [[1313, 1313], "valid"], [[1314, 1314], "mapped", [1315]], [[1315, 1315], "valid"], [[1316, 1316], "mapped", [1317]], [[1317, 1317], "valid"], [[1318, 1318], "mapped", [1319]], [[1319, 1319], "valid"], [[1320, 1320], "mapped", [1321]], [[1321, 1321], "valid"], [[1322, 1322], "mapped", [1323]], [[1323, 1323], "valid"], [[1324, 1324], "mapped", [1325]], [[1325, 1325], "valid"], [[1326, 1326], "mapped", [1327]], [[1327, 1327], "valid"], [[1328, 1328], "disallowed"], [[1329, 1329], "mapped", [1377]], [[1330, 1330], "mapped", [1378]], [[1331, 1331], "mapped", [1379]], [[1332, 1332], "mapped", [1380]], [[1333, 1333], "mapped", [1381]], [[1334, 1334], "mapped", [1382]], [[1335, 1335], "mapped", [1383]], [[1336, 1336], "mapped", [1384]], [[1337, 1337], "mapped", [1385]], [[1338, 1338], "mapped", [1386]], [[1339, 1339], "mapped", [1387]], [[1340, 1340], "mapped", [1388]], [[1341, 1341], "mapped", [1389]], [[1342, 1342], "mapped", [1390]], [[1343, 1343], "mapped", [1391]], [[1344, 1344], "mapped", [1392]], [[1345, 1345], "mapped", [1393]], [[1346, 1346], "mapped", [1394]], [[1347, 1347], "mapped", [1395]], [[1348, 1348], "mapped", [1396]], [[1349, 1349], "mapped", [1397]], [[1350, 1350], "mapped", [1398]], [[1351, 1351], "mapped", [1399]], [[1352, 1352], "mapped", [1400]], [[1353, 1353], "mapped", [1401]], [[1354, 1354], "mapped", [1402]], [[1355, 1355], "mapped", [1403]], [[1356, 1356], "mapped", [1404]], [[1357, 1357], "mapped", [1405]], [[1358, 1358], "mapped", [1406]], [[1359, 1359], "mapped", [1407]], [[1360, 1360], "mapped", [1408]], [[1361, 1361], "mapped", [1409]], [[1362, 1362], "mapped", [1410]], [[1363, 1363], "mapped", [1411]], [[1364, 1364], "mapped", [1412]], [[1365, 1365], "mapped", [1413]], [[1366, 1366], "mapped", [1414]], [[1367, 1368], "disallowed"], [[1369, 1369], "valid"], [[1370, 1375], "valid", [], "NV8"], [[1376, 1376], "disallowed"], [[1377, 1414], "valid"], [[1415, 1415], "mapped", [1381, 1410]], [[1416, 1416], "disallowed"], [[1417, 1417], "valid", [], "NV8"], [[1418, 1418], "valid", [], "NV8"], [[1419, 1420], "disallowed"], [[1421, 1422], "valid", [], "NV8"], [[1423, 1423], "valid", [], "NV8"], [[1424, 1424], "disallowed"], [[1425, 1441], "valid"], [[1442, 1442], "valid"], [[1443, 1455], "valid"], [[1456, 1465], "valid"], [[1466, 1466], "valid"], [[1467, 1469], "valid"], [[1470, 1470], "valid", [], "NV8"], [[1471, 1471], "valid"], [[1472, 1472], "valid", [], "NV8"], [[1473, 1474], "valid"], [[1475, 1475], "valid", [], "NV8"], [[1476, 1476], "valid"], [[1477, 1477], "valid"], [[1478, 1478], "valid", [], "NV8"], [[1479, 1479], "valid"], [[1480, 1487], "disallowed"], [[1488, 1514], "valid"], [[1515, 1519], "disallowed"], [[1520, 1524], "valid"], [[1525, 1535], "disallowed"], [[1536, 1539], "disallowed"], [[1540, 1540], "disallowed"], [[1541, 1541], "disallowed"], [[1542, 1546], "valid", [], "NV8"], [[1547, 1547], "valid", [], "NV8"], [[1548, 1548], "valid", [], "NV8"], [[1549, 1551], "valid", [], "NV8"], [[1552, 1557], "valid"], [[1558, 1562], "valid"], [[1563, 1563], "valid", [], "NV8"], [[1564, 1564], "disallowed"], [[1565, 1565], "disallowed"], [[1566, 1566], "valid", [], "NV8"], [[1567, 1567], "valid", [], "NV8"], [[1568, 1568], "valid"], [[1569, 1594], "valid"], [[1595, 1599], "valid"], [[1600, 1600], "valid", [], "NV8"], [[1601, 1618], "valid"], [[1619, 1621], "valid"], [[1622, 1624], "valid"], [[1625, 1630], "valid"], [[1631, 1631], "valid"], [[1632, 1641], "valid"], [[1642, 1645], "valid", [], "NV8"], [[1646, 1647], "valid"], [[1648, 1652], "valid"], [[1653, 1653], "mapped", [1575, 1652]], [[1654, 1654], "mapped", [1608, 1652]], [[1655, 1655], "mapped", [1735, 1652]], [[1656, 1656], "mapped", [1610, 1652]], [[1657, 1719], "valid"], [[1720, 1721], "valid"], [[1722, 1726], "valid"], [[1727, 1727], "valid"], [[1728, 1742], "valid"], [[1743, 1743], "valid"], [[1744, 1747], "valid"], [[1748, 1748], "valid", [], "NV8"], [[1749, 1756], "valid"], [[1757, 1757], "disallowed"], [[1758, 1758], "valid", [], "NV8"], [[1759, 1768], "valid"], [[1769, 1769], "valid", [], "NV8"], [[1770, 1773], "valid"], [[1774, 1775], "valid"], [[1776, 1785], "valid"], [[1786, 1790], "valid"], [[1791, 1791], "valid"], [[1792, 1805], "valid", [], "NV8"], [[1806, 1806], "disallowed"], [[1807, 1807], "disallowed"], [[1808, 1836], "valid"], [[1837, 1839], "valid"], [[1840, 1866], "valid"], [[1867, 1868], "disallowed"], [[1869, 1871], "valid"], [[1872, 1901], "valid"], [[1902, 1919], "valid"], [[1920, 1968], "valid"], [[1969, 1969], "valid"], [[1970, 1983], "disallowed"], [[1984, 2037], "valid"], [[2038, 2042], "valid", [], "NV8"], [[2043, 2047], "disallowed"], [[2048, 2093], "valid"], [[2094, 2095], "disallowed"], [[2096, 2110], "valid", [], "NV8"], [[2111, 2111], "disallowed"], [[2112, 2139], "valid"], [[2140, 2141], "disallowed"], [[2142, 2142], "valid", [], "NV8"], [[2143, 2207], "disallowed"], [[2208, 2208], "valid"], [[2209, 2209], "valid"], [[2210, 2220], "valid"], [[2221, 2226], "valid"], [[2227, 2228], "valid"], [[2229, 2274], "disallowed"], [[2275, 2275], "valid"], [[2276, 2302], "valid"], [[2303, 2303], "valid"], [[2304, 2304], "valid"], [[2305, 2307], "valid"], [[2308, 2308], "valid"], [[2309, 2361], "valid"], [[2362, 2363], "valid"], [[2364, 2381], "valid"], [[2382, 2382], "valid"], [[2383, 2383], "valid"], [[2384, 2388], "valid"], [[2389, 2389], "valid"], [[2390, 2391], "valid"], [[2392, 2392], "mapped", [2325, 2364]], [[2393, 2393], "mapped", [2326, 2364]], [[2394, 2394], "mapped", [2327, 2364]], [[2395, 2395], "mapped", [2332, 2364]], [[2396, 2396], "mapped", [2337, 2364]], [[2397, 2397], "mapped", [2338, 2364]], [[2398, 2398], "mapped", [2347, 2364]], [[2399, 2399], "mapped", [2351, 2364]], [[2400, 2403], "valid"], [[2404, 2405], "valid", [], "NV8"], [[2406, 2415], "valid"], [[2416, 2416], "valid", [], "NV8"], [[2417, 2418], "valid"], [[2419, 2423], "valid"], [[2424, 2424], "valid"], [[2425, 2426], "valid"], [[2427, 2428], "valid"], [[2429, 2429], "valid"], [[2430, 2431], "valid"], [[2432, 2432], "valid"], [[2433, 2435], "valid"], [[2436, 2436], "disallowed"], [[2437, 2444], "valid"], [[2445, 2446], "disallowed"], [[2447, 2448], "valid"], [[2449, 2450], "disallowed"], [[2451, 2472], "valid"], [[2473, 2473], "disallowed"], [[2474, 2480], "valid"], [[2481, 2481], "disallowed"], [[2482, 2482], "valid"], [[2483, 2485], "disallowed"], [[2486, 2489], "valid"], [[2490, 2491], "disallowed"], [[2492, 2492], "valid"], [[2493, 2493], "valid"], [[2494, 2500], "valid"], [[2501, 2502], "disallowed"], [[2503, 2504], "valid"], [[2505, 2506], "disallowed"], [[2507, 2509], "valid"], [[2510, 2510], "valid"], [[2511, 2518], "disallowed"], [[2519, 2519], "valid"], [[2520, 2523], "disallowed"], [[2524, 2524], "mapped", [2465, 2492]], [[2525, 2525], "mapped", [2466, 2492]], [[2526, 2526], "disallowed"], [[2527, 2527], "mapped", [2479, 2492]], [[2528, 2531], "valid"], [[2532, 2533], "disallowed"], [[2534, 2545], "valid"], [[2546, 2554], "valid", [], "NV8"], [[2555, 2555], "valid", [], "NV8"], [[2556, 2560], "disallowed"], [[2561, 2561], "valid"], [[2562, 2562], "valid"], [[2563, 2563], "valid"], [[2564, 2564], "disallowed"], [[2565, 2570], "valid"], [[2571, 2574], "disallowed"], [[2575, 2576], "valid"], [[2577, 2578], "disallowed"], [[2579, 2600], "valid"], [[2601, 2601], "disallowed"], [[2602, 2608], "valid"], [[2609, 2609], "disallowed"], [[2610, 2610], "valid"], [[2611, 2611], "mapped", [2610, 2620]], [[2612, 2612], "disallowed"], [[2613, 2613], "valid"], [[2614, 2614], "mapped", [2616, 2620]], [[2615, 2615], "disallowed"], [[2616, 2617], "valid"], [[2618, 2619], "disallowed"], [[2620, 2620], "valid"], [[2621, 2621], "disallowed"], [[2622, 2626], "valid"], [[2627, 2630], "disallowed"], [[2631, 2632], "valid"], [[2633, 2634], "disallowed"], [[2635, 2637], "valid"], [[2638, 2640], "disallowed"], [[2641, 2641], "valid"], [[2642, 2648], "disallowed"], [[2649, 2649], "mapped", [2582, 2620]], [[2650, 2650], "mapped", [2583, 2620]], [[2651, 2651], "mapped", [2588, 2620]], [[2652, 2652], "valid"], [[2653, 2653], "disallowed"], [[2654, 2654], "mapped", [2603, 2620]], [[2655, 2661], "disallowed"], [[2662, 2676], "valid"], [[2677, 2677], "valid"], [[2678, 2688], "disallowed"], [[2689, 2691], "valid"], [[2692, 2692], "disallowed"], [[2693, 2699], "valid"], [[2700, 2700], "valid"], [[2701, 2701], "valid"], [[2702, 2702], "disallowed"], [[2703, 2705], "valid"], [[2706, 2706], "disallowed"], [[2707, 2728], "valid"], [[2729, 2729], "disallowed"], [[2730, 2736], "valid"], [[2737, 2737], "disallowed"], [[2738, 2739], "valid"], [[2740, 2740], "disallowed"], [[2741, 2745], "valid"], [[2746, 2747], "disallowed"], [[2748, 2757], "valid"], [[2758, 2758], "disallowed"], [[2759, 2761], "valid"], [[2762, 2762], "disallowed"], [[2763, 2765], "valid"], [[2766, 2767], "disallowed"], [[2768, 2768], "valid"], [[2769, 2783], "disallowed"], [[2784, 2784], "valid"], [[2785, 2787], "valid"], [[2788, 2789], "disallowed"], [[2790, 2799], "valid"], [[2800, 2800], "valid", [], "NV8"], [[2801, 2801], "valid", [], "NV8"], [[2802, 2808], "disallowed"], [[2809, 2809], "valid"], [[2810, 2816], "disallowed"], [[2817, 2819], "valid"], [[2820, 2820], "disallowed"], [[2821, 2828], "valid"], [[2829, 2830], "disallowed"], [[2831, 2832], "valid"], [[2833, 2834], "disallowed"], [[2835, 2856], "valid"], [[2857, 2857], "disallowed"], [[2858, 2864], "valid"], [[2865, 2865], "disallowed"], [[2866, 2867], "valid"], [[2868, 2868], "disallowed"], [[2869, 2869], "valid"], [[2870, 2873], "valid"], [[2874, 2875], "disallowed"], [[2876, 2883], "valid"], [[2884, 2884], "valid"], [[2885, 2886], "disallowed"], [[2887, 2888], "valid"], [[2889, 2890], "disallowed"], [[2891, 2893], "valid"], [[2894, 2901], "disallowed"], [[2902, 2903], "valid"], [[2904, 2907], "disallowed"], [[2908, 2908], "mapped", [2849, 2876]], [[2909, 2909], "mapped", [2850, 2876]], [[2910, 2910], "disallowed"], [[2911, 2913], "valid"], [[2914, 2915], "valid"], [[2916, 2917], "disallowed"], [[2918, 2927], "valid"], [[2928, 2928], "valid", [], "NV8"], [[2929, 2929], "valid"], [[2930, 2935], "valid", [], "NV8"], [[2936, 2945], "disallowed"], [[2946, 2947], "valid"], [[2948, 2948], "disallowed"], [[2949, 2954], "valid"], [[2955, 2957], "disallowed"], [[2958, 2960], "valid"], [[2961, 2961], "disallowed"], [[2962, 2965], "valid"], [[2966, 2968], "disallowed"], [[2969, 2970], "valid"], [[2971, 2971], "disallowed"], [[2972, 2972], "valid"], [[2973, 2973], "disallowed"], [[2974, 2975], "valid"], [[2976, 2978], "disallowed"], [[2979, 2980], "valid"], [[2981, 2983], "disallowed"], [[2984, 2986], "valid"], [[2987, 2989], "disallowed"], [[2990, 2997], "valid"], [[2998, 2998], "valid"], [[2999, 3001], "valid"], [[3002, 3005], "disallowed"], [[3006, 3010], "valid"], [[3011, 3013], "disallowed"], [[3014, 3016], "valid"], [[3017, 3017], "disallowed"], [[3018, 3021], "valid"], [[3022, 3023], "disallowed"], [[3024, 3024], "valid"], [[3025, 3030], "disallowed"], [[3031, 3031], "valid"], [[3032, 3045], "disallowed"], [[3046, 3046], "valid"], [[3047, 3055], "valid"], [[3056, 3058], "valid", [], "NV8"], [[3059, 3066], "valid", [], "NV8"], [[3067, 3071], "disallowed"], [[3072, 3072], "valid"], [[3073, 3075], "valid"], [[3076, 3076], "disallowed"], [[3077, 3084], "valid"], [[3085, 3085], "disallowed"], [[3086, 3088], "valid"], [[3089, 3089], "disallowed"], [[3090, 3112], "valid"], [[3113, 3113], "disallowed"], [[3114, 3123], "valid"], [[3124, 3124], "valid"], [[3125, 3129], "valid"], [[3130, 3132], "disallowed"], [[3133, 3133], "valid"], [[3134, 3140], "valid"], [[3141, 3141], "disallowed"], [[3142, 3144], "valid"], [[3145, 3145], "disallowed"], [[3146, 3149], "valid"], [[3150, 3156], "disallowed"], [[3157, 3158], "valid"], [[3159, 3159], "disallowed"], [[3160, 3161], "valid"], [[3162, 3162], "valid"], [[3163, 3167], "disallowed"], [[3168, 3169], "valid"], [[3170, 3171], "valid"], [[3172, 3173], "disallowed"], [[3174, 3183], "valid"], [[3184, 3191], "disallowed"], [[3192, 3199], "valid", [], "NV8"], [[3200, 3200], "disallowed"], [[3201, 3201], "valid"], [[3202, 3203], "valid"], [[3204, 3204], "disallowed"], [[3205, 3212], "valid"], [[3213, 3213], "disallowed"], [[3214, 3216], "valid"], [[3217, 3217], "disallowed"], [[3218, 3240], "valid"], [[3241, 3241], "disallowed"], [[3242, 3251], "valid"], [[3252, 3252], "disallowed"], [[3253, 3257], "valid"], [[3258, 3259], "disallowed"], [[3260, 3261], "valid"], [[3262, 3268], "valid"], [[3269, 3269], "disallowed"], [[3270, 3272], "valid"], [[3273, 3273], "disallowed"], [[3274, 3277], "valid"], [[3278, 3284], "disallowed"], [[3285, 3286], "valid"], [[3287, 3293], "disallowed"], [[3294, 3294], "valid"], [[3295, 3295], "disallowed"], [[3296, 3297], "valid"], [[3298, 3299], "valid"], [[3300, 3301], "disallowed"], [[3302, 3311], "valid"], [[3312, 3312], "disallowed"], [[3313, 3314], "valid"], [[3315, 3328], "disallowed"], [[3329, 3329], "valid"], [[3330, 3331], "valid"], [[3332, 3332], "disallowed"], [[3333, 3340], "valid"], [[3341, 3341], "disallowed"], [[3342, 3344], "valid"], [[3345, 3345], "disallowed"], [[3346, 3368], "valid"], [[3369, 3369], "valid"], [[3370, 3385], "valid"], [[3386, 3386], "valid"], [[3387, 3388], "disallowed"], [[3389, 3389], "valid"], [[3390, 3395], "valid"], [[3396, 3396], "valid"], [[3397, 3397], "disallowed"], [[3398, 3400], "valid"], [[3401, 3401], "disallowed"], [[3402, 3405], "valid"], [[3406, 3406], "valid"], [[3407, 3414], "disallowed"], [[3415, 3415], "valid"], [[3416, 3422], "disallowed"], [[3423, 3423], "valid"], [[3424, 3425], "valid"], [[3426, 3427], "valid"], [[3428, 3429], "disallowed"], [[3430, 3439], "valid"], [[3440, 3445], "valid", [], "NV8"], [[3446, 3448], "disallowed"], [[3449, 3449], "valid", [], "NV8"], [[3450, 3455], "valid"], [[3456, 3457], "disallowed"], [[3458, 3459], "valid"], [[3460, 3460], "disallowed"], [[3461, 3478], "valid"], [[3479, 3481], "disallowed"], [[3482, 3505], "valid"], [[3506, 3506], "disallowed"], [[3507, 3515], "valid"], [[3516, 3516], "disallowed"], [[3517, 3517], "valid"], [[3518, 3519], "disallowed"], [[3520, 3526], "valid"], [[3527, 3529], "disallowed"], [[3530, 3530], "valid"], [[3531, 3534], "disallowed"], [[3535, 3540], "valid"], [[3541, 3541], "disallowed"], [[3542, 3542], "valid"], [[3543, 3543], "disallowed"], [[3544, 3551], "valid"], [[3552, 3557], "disallowed"], [[3558, 3567], "valid"], [[3568, 3569], "disallowed"], [[3570, 3571], "valid"], [[3572, 3572], "valid", [], "NV8"], [[3573, 3584], "disallowed"], [[3585, 3634], "valid"], [[3635, 3635], "mapped", [3661, 3634]], [[3636, 3642], "valid"], [[3643, 3646], "disallowed"], [[3647, 3647], "valid", [], "NV8"], [[3648, 3662], "valid"], [[3663, 3663], "valid", [], "NV8"], [[3664, 3673], "valid"], [[3674, 3675], "valid", [], "NV8"], [[3676, 3712], "disallowed"], [[3713, 3714], "valid"], [[3715, 3715], "disallowed"], [[3716, 3716], "valid"], [[3717, 3718], "disallowed"], [[3719, 3720], "valid"], [[3721, 3721], "disallowed"], [[3722, 3722], "valid"], [[3723, 3724], "disallowed"], [[3725, 3725], "valid"], [[3726, 3731], "disallowed"], [[3732, 3735], "valid"], [[3736, 3736], "disallowed"], [[3737, 3743], "valid"], [[3744, 3744], "disallowed"], [[3745, 3747], "valid"], [[3748, 3748], "disallowed"], [[3749, 3749], "valid"], [[3750, 3750], "disallowed"], [[3751, 3751], "valid"], [[3752, 3753], "disallowed"], [[3754, 3755], "valid"], [[3756, 3756], "disallowed"], [[3757, 3762], "valid"], [[3763, 3763], "mapped", [3789, 3762]], [[3764, 3769], "valid"], [[3770, 3770], "disallowed"], [[3771, 3773], "valid"], [[3774, 3775], "disallowed"], [[3776, 3780], "valid"], [[3781, 3781], "disallowed"], [[3782, 3782], "valid"], [[3783, 3783], "disallowed"], [[3784, 3789], "valid"], [[3790, 3791], "disallowed"], [[3792, 3801], "valid"], [[3802, 3803], "disallowed"], [[3804, 3804], "mapped", [3755, 3737]], [[3805, 3805], "mapped", [3755, 3745]], [[3806, 3807], "valid"], [[3808, 3839], "disallowed"], [[3840, 3840], "valid"], [[3841, 3850], "valid", [], "NV8"], [[3851, 3851], "valid"], [[3852, 3852], "mapped", [3851]], [[3853, 3863], "valid", [], "NV8"], [[3864, 3865], "valid"], [[3866, 3871], "valid", [], "NV8"], [[3872, 3881], "valid"], [[3882, 3892], "valid", [], "NV8"], [[3893, 3893], "valid"], [[3894, 3894], "valid", [], "NV8"], [[3895, 3895], "valid"], [[3896, 3896], "valid", [], "NV8"], [[3897, 3897], "valid"], [[3898, 3901], "valid", [], "NV8"], [[3902, 3906], "valid"], [[3907, 3907], "mapped", [3906, 4023]], [[3908, 3911], "valid"], [[3912, 3912], "disallowed"], [[3913, 3916], "valid"], [[3917, 3917], "mapped", [3916, 4023]], [[3918, 3921], "valid"], [[3922, 3922], "mapped", [3921, 4023]], [[3923, 3926], "valid"], [[3927, 3927], "mapped", [3926, 4023]], [[3928, 3931], "valid"], [[3932, 3932], "mapped", [3931, 4023]], [[3933, 3944], "valid"], [[3945, 3945], "mapped", [3904, 4021]], [[3946, 3946], "valid"], [[3947, 3948], "valid"], [[3949, 3952], "disallowed"], [[3953, 3954], "valid"], [[3955, 3955], "mapped", [3953, 3954]], [[3956, 3956], "valid"], [[3957, 3957], "mapped", [3953, 3956]], [[3958, 3958], "mapped", [4018, 3968]], [[3959, 3959], "mapped", [4018, 3953, 3968]], [[3960, 3960], "mapped", [4019, 3968]], [[3961, 3961], "mapped", [4019, 3953, 3968]], [[3962, 3968], "valid"], [[3969, 3969], "mapped", [3953, 3968]], [[3970, 3972], "valid"], [[3973, 3973], "valid", [], "NV8"], [[3974, 3979], "valid"], [[3980, 3983], "valid"], [[3984, 3986], "valid"], [[3987, 3987], "mapped", [3986, 4023]], [[3988, 3989], "valid"], [[3990, 3990], "valid"], [[3991, 3991], "valid"], [[3992, 3992], "disallowed"], [[3993, 3996], "valid"], [[3997, 3997], "mapped", [3996, 4023]], [[3998, 4001], "valid"], [[4002, 4002], "mapped", [4001, 4023]], [[4003, 4006], "valid"], [[4007, 4007], "mapped", [4006, 4023]], [[4008, 4011], "valid"], [[4012, 4012], "mapped", [4011, 4023]], [[4013, 4013], "valid"], [[4014, 4016], "valid"], [[4017, 4023], "valid"], [[4024, 4024], "valid"], [[4025, 4025], "mapped", [3984, 4021]], [[4026, 4028], "valid"], [[4029, 4029], "disallowed"], [[4030, 4037], "valid", [], "NV8"], [[4038, 4038], "valid"], [[4039, 4044], "valid", [], "NV8"], [[4045, 4045], "disallowed"], [[4046, 4046], "valid", [], "NV8"], [[4047, 4047], "valid", [], "NV8"], [[4048, 4049], "valid", [], "NV8"], [[4050, 4052], "valid", [], "NV8"], [[4053, 4056], "valid", [], "NV8"], [[4057, 4058], "valid", [], "NV8"], [[4059, 4095], "disallowed"], [[4096, 4129], "valid"], [[4130, 4130], "valid"], [[4131, 4135], "valid"], [[4136, 4136], "valid"], [[4137, 4138], "valid"], [[4139, 4139], "valid"], [[4140, 4146], "valid"], [[4147, 4149], "valid"], [[4150, 4153], "valid"], [[4154, 4159], "valid"], [[4160, 4169], "valid"], [[4170, 4175], "valid", [], "NV8"], [[4176, 4185], "valid"], [[4186, 4249], "valid"], [[4250, 4253], "valid"], [[4254, 4255], "valid", [], "NV8"], [[4256, 4293], "disallowed"], [[4294, 4294], "disallowed"], [[4295, 4295], "mapped", [11559]], [[4296, 4300], "disallowed"], [[4301, 4301], "mapped", [11565]], [[4302, 4303], "disallowed"], [[4304, 4342], "valid"], [[4343, 4344], "valid"], [[4345, 4346], "valid"], [[4347, 4347], "valid", [], "NV8"], [[4348, 4348], "mapped", [4316]], [[4349, 4351], "valid"], [[4352, 4441], "valid", [], "NV8"], [[4442, 4446], "valid", [], "NV8"], [[4447, 4448], "disallowed"], [[4449, 4514], "valid", [], "NV8"], [[4515, 4519], "valid", [], "NV8"], [[4520, 4601], "valid", [], "NV8"], [[4602, 4607], "valid", [], "NV8"], [[4608, 4614], "valid"], [[4615, 4615], "valid"], [[4616, 4678], "valid"], [[4679, 4679], "valid"], [[4680, 4680], "valid"], [[4681, 4681], "disallowed"], [[4682, 4685], "valid"], [[4686, 4687], "disallowed"], [[4688, 4694], "valid"], [[4695, 4695], "disallowed"], [[4696, 4696], "valid"], [[4697, 4697], "disallowed"], [[4698, 4701], "valid"], [[4702, 4703], "disallowed"], [[4704, 4742], "valid"], [[4743, 4743], "valid"], [[4744, 4744], "valid"], [[4745, 4745], "disallowed"], [[4746, 4749], "valid"], [[4750, 4751], "disallowed"], [[4752, 4782], "valid"], [[4783, 4783], "valid"], [[4784, 4784], "valid"], [[4785, 4785], "disallowed"], [[4786, 4789], "valid"], [[4790, 4791], "disallowed"], [[4792, 4798], "valid"], [[4799, 4799], "disallowed"], [[4800, 4800], "valid"], [[4801, 4801], "disallowed"], [[4802, 4805], "valid"], [[4806, 4807], "disallowed"], [[4808, 4814], "valid"], [[4815, 4815], "valid"], [[4816, 4822], "valid"], [[4823, 4823], "disallowed"], [[4824, 4846], "valid"], [[4847, 4847], "valid"], [[4848, 4878], "valid"], [[4879, 4879], "valid"], [[4880, 4880], "valid"], [[4881, 4881], "disallowed"], [[4882, 4885], "valid"], [[4886, 4887], "disallowed"], [[4888, 4894], "valid"], [[4895, 4895], "valid"], [[4896, 4934], "valid"], [[4935, 4935], "valid"], [[4936, 4954], "valid"], [[4955, 4956], "disallowed"], [[4957, 4958], "valid"], [[4959, 4959], "valid"], [[4960, 4960], "valid", [], "NV8"], [[4961, 4988], "valid", [], "NV8"], [[4989, 4991], "disallowed"], [[4992, 5007], "valid"], [[5008, 5017], "valid", [], "NV8"], [[5018, 5023], "disallowed"], [[5024, 5108], "valid"], [[5109, 5109], "valid"], [[5110, 5111], "disallowed"], [[5112, 5112], "mapped", [5104]], [[5113, 5113], "mapped", [5105]], [[5114, 5114], "mapped", [5106]], [[5115, 5115], "mapped", [5107]], [[5116, 5116], "mapped", [5108]], [[5117, 5117], "mapped", [5109]], [[5118, 5119], "disallowed"], [[5120, 5120], "valid", [], "NV8"], [[5121, 5740], "valid"], [[5741, 5742], "valid", [], "NV8"], [[5743, 5750], "valid"], [[5751, 5759], "valid"], [[5760, 5760], "disallowed"], [[5761, 5786], "valid"], [[5787, 5788], "valid", [], "NV8"], [[5789, 5791], "disallowed"], [[5792, 5866], "valid"], [[5867, 5872], "valid", [], "NV8"], [[5873, 5880], "valid"], [[5881, 5887], "disallowed"], [[5888, 5900], "valid"], [[5901, 5901], "disallowed"], [[5902, 5908], "valid"], [[5909, 5919], "disallowed"], [[5920, 5940], "valid"], [[5941, 5942], "valid", [], "NV8"], [[5943, 5951], "disallowed"], [[5952, 5971], "valid"], [[5972, 5983], "disallowed"], [[5984, 5996], "valid"], [[5997, 5997], "disallowed"], [[5998, 6e3], "valid"], [[6001, 6001], "disallowed"], [[6002, 6003], "valid"], [[6004, 6015], "disallowed"], [[6016, 6067], "valid"], [[6068, 6069], "disallowed"], [[6070, 6099], "valid"], [[6100, 6102], "valid", [], "NV8"], [[6103, 6103], "valid"], [[6104, 6107], "valid", [], "NV8"], [[6108, 6108], "valid"], [[6109, 6109], "valid"], [[6110, 6111], "disallowed"], [[6112, 6121], "valid"], [[6122, 6127], "disallowed"], [[6128, 6137], "valid", [], "NV8"], [[6138, 6143], "disallowed"], [[6144, 6149], "valid", [], "NV8"], [[6150, 6150], "disallowed"], [[6151, 6154], "valid", [], "NV8"], [[6155, 6157], "ignored"], [[6158, 6158], "disallowed"], [[6159, 6159], "disallowed"], [[6160, 6169], "valid"], [[6170, 6175], "disallowed"], [[6176, 6263], "valid"], [[6264, 6271], "disallowed"], [[6272, 6313], "valid"], [[6314, 6314], "valid"], [[6315, 6319], "disallowed"], [[6320, 6389], "valid"], [[6390, 6399], "disallowed"], [[6400, 6428], "valid"], [[6429, 6430], "valid"], [[6431, 6431], "disallowed"], [[6432, 6443], "valid"], [[6444, 6447], "disallowed"], [[6448, 6459], "valid"], [[6460, 6463], "disallowed"], [[6464, 6464], "valid", [], "NV8"], [[6465, 6467], "disallowed"], [[6468, 6469], "valid", [], "NV8"], [[6470, 6509], "valid"], [[6510, 6511], "disallowed"], [[6512, 6516], "valid"], [[6517, 6527], "disallowed"], [[6528, 6569], "valid"], [[6570, 6571], "valid"], [[6572, 6575], "disallowed"], [[6576, 6601], "valid"], [[6602, 6607], "disallowed"], [[6608, 6617], "valid"], [[6618, 6618], "valid", [], "XV8"], [[6619, 6621], "disallowed"], [[6622, 6623], "valid", [], "NV8"], [[6624, 6655], "valid", [], "NV8"], [[6656, 6683], "valid"], [[6684, 6685], "disallowed"], [[6686, 6687], "valid", [], "NV8"], [[6688, 6750], "valid"], [[6751, 6751], "disallowed"], [[6752, 6780], "valid"], [[6781, 6782], "disallowed"], [[6783, 6793], "valid"], [[6794, 6799], "disallowed"], [[6800, 6809], "valid"], [[6810, 6815], "disallowed"], [[6816, 6822], "valid", [], "NV8"], [[6823, 6823], "valid"], [[6824, 6829], "valid", [], "NV8"], [[6830, 6831], "disallowed"], [[6832, 6845], "valid"], [[6846, 6846], "valid", [], "NV8"], [[6847, 6911], "disallowed"], [[6912, 6987], "valid"], [[6988, 6991], "disallowed"], [[6992, 7001], "valid"], [[7002, 7018], "valid", [], "NV8"], [[7019, 7027], "valid"], [[7028, 7036], "valid", [], "NV8"], [[7037, 7039], "disallowed"], [[7040, 7082], "valid"], [[7083, 7085], "valid"], [[7086, 7097], "valid"], [[7098, 7103], "valid"], [[7104, 7155], "valid"], [[7156, 7163], "disallowed"], [[7164, 7167], "valid", [], "NV8"], [[7168, 7223], "valid"], [[7224, 7226], "disallowed"], [[7227, 7231], "valid", [], "NV8"], [[7232, 7241], "valid"], [[7242, 7244], "disallowed"], [[7245, 7293], "valid"], [[7294, 7295], "valid", [], "NV8"], [[7296, 7359], "disallowed"], [[7360, 7367], "valid", [], "NV8"], [[7368, 7375], "disallowed"], [[7376, 7378], "valid"], [[7379, 7379], "valid", [], "NV8"], [[7380, 7410], "valid"], [[7411, 7414], "valid"], [[7415, 7415], "disallowed"], [[7416, 7417], "valid"], [[7418, 7423], "disallowed"], [[7424, 7467], "valid"], [[7468, 7468], "mapped", [97]], [[7469, 7469], "mapped", [230]], [[7470, 7470], "mapped", [98]], [[7471, 7471], "valid"], [[7472, 7472], "mapped", [100]], [[7473, 7473], "mapped", [101]], [[7474, 7474], "mapped", [477]], [[7475, 7475], "mapped", [103]], [[7476, 7476], "mapped", [104]], [[7477, 7477], "mapped", [105]], [[7478, 7478], "mapped", [106]], [[7479, 7479], "mapped", [107]], [[7480, 7480], "mapped", [108]], [[7481, 7481], "mapped", [109]], [[7482, 7482], "mapped", [110]], [[7483, 7483], "valid"], [[7484, 7484], "mapped", [111]], [[7485, 7485], "mapped", [547]], [[7486, 7486], "mapped", [112]], [[7487, 7487], "mapped", [114]], [[7488, 7488], "mapped", [116]], [[7489, 7489], "mapped", [117]], [[7490, 7490], "mapped", [119]], [[7491, 7491], "mapped", [97]], [[7492, 7492], "mapped", [592]], [[7493, 7493], "mapped", [593]], [[7494, 7494], "mapped", [7426]], [[7495, 7495], "mapped", [98]], [[7496, 7496], "mapped", [100]], [[7497, 7497], "mapped", [101]], [[7498, 7498], "mapped", [601]], [[7499, 7499], "mapped", [603]], [[7500, 7500], "mapped", [604]], [[7501, 7501], "mapped", [103]], [[7502, 7502], "valid"], [[7503, 7503], "mapped", [107]], [[7504, 7504], "mapped", [109]], [[7505, 7505], "mapped", [331]], [[7506, 7506], "mapped", [111]], [[7507, 7507], "mapped", [596]], [[7508, 7508], "mapped", [7446]], [[7509, 7509], "mapped", [7447]], [[7510, 7510], "mapped", [112]], [[7511, 7511], "mapped", [116]], [[7512, 7512], "mapped", [117]], [[7513, 7513], "mapped", [7453]], [[7514, 7514], "mapped", [623]], [[7515, 7515], "mapped", [118]], [[7516, 7516], "mapped", [7461]], [[7517, 7517], "mapped", [946]], [[7518, 7518], "mapped", [947]], [[7519, 7519], "mapped", [948]], [[7520, 7520], "mapped", [966]], [[7521, 7521], "mapped", [967]], [[7522, 7522], "mapped", [105]], [[7523, 7523], "mapped", [114]], [[7524, 7524], "mapped", [117]], [[7525, 7525], "mapped", [118]], [[7526, 7526], "mapped", [946]], [[7527, 7527], "mapped", [947]], [[7528, 7528], "mapped", [961]], [[7529, 7529], "mapped", [966]], [[7530, 7530], "mapped", [967]], [[7531, 7531], "valid"], [[7532, 7543], "valid"], [[7544, 7544], "mapped", [1085]], [[7545, 7578], "valid"], [[7579, 7579], "mapped", [594]], [[7580, 7580], "mapped", [99]], [[7581, 7581], "mapped", [597]], [[7582, 7582], "mapped", [240]], [[7583, 7583], "mapped", [604]], [[7584, 7584], "mapped", [102]], [[7585, 7585], "mapped", [607]], [[7586, 7586], "mapped", [609]], [[7587, 7587], "mapped", [613]], [[7588, 7588], "mapped", [616]], [[7589, 7589], "mapped", [617]], [[7590, 7590], "mapped", [618]], [[7591, 7591], "mapped", [7547]], [[7592, 7592], "mapped", [669]], [[7593, 7593], "mapped", [621]], [[7594, 7594], "mapped", [7557]], [[7595, 7595], "mapped", [671]], [[7596, 7596], "mapped", [625]], [[7597, 7597], "mapped", [624]], [[7598, 7598], "mapped", [626]], [[7599, 7599], "mapped", [627]], [[7600, 7600], "mapped", [628]], [[7601, 7601], "mapped", [629]], [[7602, 7602], "mapped", [632]], [[7603, 7603], "mapped", [642]], [[7604, 7604], "mapped", [643]], [[7605, 7605], "mapped", [427]], [[7606, 7606], "mapped", [649]], [[7607, 7607], "mapped", [650]], [[7608, 7608], "mapped", [7452]], [[7609, 7609], "mapped", [651]], [[7610, 7610], "mapped", [652]], [[7611, 7611], "mapped", [122]], [[7612, 7612], "mapped", [656]], [[7613, 7613], "mapped", [657]], [[7614, 7614], "mapped", [658]], [[7615, 7615], "mapped", [952]], [[7616, 7619], "valid"], [[7620, 7626], "valid"], [[7627, 7654], "valid"], [[7655, 7669], "valid"], [[7670, 7675], "disallowed"], [[7676, 7676], "valid"], [[7677, 7677], "valid"], [[7678, 7679], "valid"], [[7680, 7680], "mapped", [7681]], [[7681, 7681], "valid"], [[7682, 7682], "mapped", [7683]], [[7683, 7683], "valid"], [[7684, 7684], "mapped", [7685]], [[7685, 7685], "valid"], [[7686, 7686], "mapped", [7687]], [[7687, 7687], "valid"], [[7688, 7688], "mapped", [7689]], [[7689, 7689], "valid"], [[7690, 7690], "mapped", [7691]], [[7691, 7691], "valid"], [[7692, 7692], "mapped", [7693]], [[7693, 7693], "valid"], [[7694, 7694], "mapped", [7695]], [[7695, 7695], "valid"], [[7696, 7696], "mapped", [7697]], [[7697, 7697], "valid"], [[7698, 7698], "mapped", [7699]], [[7699, 7699], "valid"], [[7700, 7700], "mapped", [7701]], [[7701, 7701], "valid"], [[7702, 7702], "mapped", [7703]], [[7703, 7703], "valid"], [[7704, 7704], "mapped", [7705]], [[7705, 7705], "valid"], [[7706, 7706], "mapped", [7707]], [[7707, 7707], "valid"], [[7708, 7708], "mapped", [7709]], [[7709, 7709], "valid"], [[7710, 7710], "mapped", [7711]], [[7711, 7711], "valid"], [[7712, 7712], "mapped", [7713]], [[7713, 7713], "valid"], [[7714, 7714], "mapped", [7715]], [[7715, 7715], "valid"], [[7716, 7716], "mapped", [7717]], [[7717, 7717], "valid"], [[7718, 7718], "mapped", [7719]], [[7719, 7719], "valid"], [[7720, 7720], "mapped", [7721]], [[7721, 7721], "valid"], [[7722, 7722], "mapped", [7723]], [[7723, 7723], "valid"], [[7724, 7724], "mapped", [7725]], [[7725, 7725], "valid"], [[7726, 7726], "mapped", [7727]], [[7727, 7727], "valid"], [[7728, 7728], "mapped", [7729]], [[7729, 7729], "valid"], [[7730, 7730], "mapped", [7731]], [[7731, 7731], "valid"], [[7732, 7732], "mapped", [7733]], [[7733, 7733], "valid"], [[7734, 7734], "mapped", [7735]], [[7735, 7735], "valid"], [[7736, 7736], "mapped", [7737]], [[7737, 7737], "valid"], [[7738, 7738], "mapped", [7739]], [[7739, 7739], "valid"], [[7740, 7740], "mapped", [7741]], [[7741, 7741], "valid"], [[7742, 7742], "mapped", [7743]], [[7743, 7743], "valid"], [[7744, 7744], "mapped", [7745]], [[7745, 7745], "valid"], [[7746, 7746], "mapped", [7747]], [[7747, 7747], "valid"], [[7748, 7748], "mapped", [7749]], [[7749, 7749], "valid"], [[7750, 7750], "mapped", [7751]], [[7751, 7751], "valid"], [[7752, 7752], "mapped", [7753]], [[7753, 7753], "valid"], [[7754, 7754], "mapped", [7755]], [[7755, 7755], "valid"], [[7756, 7756], "mapped", [7757]], [[7757, 7757], "valid"], [[7758, 7758], "mapped", [7759]], [[7759, 7759], "valid"], [[7760, 7760], "mapped", [7761]], [[7761, 7761], "valid"], [[7762, 7762], "mapped", [7763]], [[7763, 7763], "valid"], [[7764, 7764], "mapped", [7765]], [[7765, 7765], "valid"], [[7766, 7766], "mapped", [7767]], [[7767, 7767], "valid"], [[7768, 7768], "mapped", [7769]], [[7769, 7769], "valid"], [[7770, 7770], "mapped", [7771]], [[7771, 7771], "valid"], [[7772, 7772], "mapped", [7773]], [[7773, 7773], "valid"], [[7774, 7774], "mapped", [7775]], [[7775, 7775], "valid"], [[7776, 7776], "mapped", [7777]], [[7777, 7777], "valid"], [[7778, 7778], "mapped", [7779]], [[7779, 7779], "valid"], [[7780, 7780], "mapped", [7781]], [[7781, 7781], "valid"], [[7782, 7782], "mapped", [7783]], [[7783, 7783], "valid"], [[7784, 7784], "mapped", [7785]], [[7785, 7785], "valid"], [[7786, 7786], "mapped", [7787]], [[7787, 7787], "valid"], [[7788, 7788], "mapped", [7789]], [[7789, 7789], "valid"], [[7790, 7790], "mapped", [7791]], [[7791, 7791], "valid"], [[7792, 7792], "mapped", [7793]], [[7793, 7793], "valid"], [[7794, 7794], "mapped", [7795]], [[7795, 7795], "valid"], [[7796, 7796], "mapped", [7797]], [[7797, 7797], "valid"], [[7798, 7798], "mapped", [7799]], [[7799, 7799], "valid"], [[7800, 7800], "mapped", [7801]], [[7801, 7801], "valid"], [[7802, 7802], "mapped", [7803]], [[7803, 7803], "valid"], [[7804, 7804], "mapped", [7805]], [[7805, 7805], "valid"], [[7806, 7806], "mapped", [7807]], [[7807, 7807], "valid"], [[7808, 7808], "mapped", [7809]], [[7809, 7809], "valid"], [[7810, 7810], "mapped", [7811]], [[7811, 7811], "valid"], [[7812, 7812], "mapped", [7813]], [[7813, 7813], "valid"], [[7814, 7814], "mapped", [7815]], [[7815, 7815], "valid"], [[7816, 7816], "mapped", [7817]], [[7817, 7817], "valid"], [[7818, 7818], "mapped", [7819]], [[7819, 7819], "valid"], [[7820, 7820], "mapped", [7821]], [[7821, 7821], "valid"], [[7822, 7822], "mapped", [7823]], [[7823, 7823], "valid"], [[7824, 7824], "mapped", [7825]], [[7825, 7825], "valid"], [[7826, 7826], "mapped", [7827]], [[7827, 7827], "valid"], [[7828, 7828], "mapped", [7829]], [[7829, 7833], "valid"], [[7834, 7834], "mapped", [97, 702]], [[7835, 7835], "mapped", [7777]], [[7836, 7837], "valid"], [[7838, 7838], "mapped", [115, 115]], [[7839, 7839], "valid"], [[7840, 7840], "mapped", [7841]], [[7841, 7841], "valid"], [[7842, 7842], "mapped", [7843]], [[7843, 7843], "valid"], [[7844, 7844], "mapped", [7845]], [[7845, 7845], "valid"], [[7846, 7846], "mapped", [7847]], [[7847, 7847], "valid"], [[7848, 7848], "mapped", [7849]], [[7849, 7849], "valid"], [[7850, 7850], "mapped", [7851]], [[7851, 7851], "valid"], [[7852, 7852], "mapped", [7853]], [[7853, 7853], "valid"], [[7854, 7854], "mapped", [7855]], [[7855, 7855], "valid"], [[7856, 7856], "mapped", [7857]], [[7857, 7857], "valid"], [[7858, 7858], "mapped", [7859]], [[7859, 7859], "valid"], [[7860, 7860], "mapped", [7861]], [[7861, 7861], "valid"], [[7862, 7862], "mapped", [7863]], [[7863, 7863], "valid"], [[7864, 7864], "mapped", [7865]], [[7865, 7865], "valid"], [[7866, 7866], "mapped", [7867]], [[7867, 7867], "valid"], [[7868, 7868], "mapped", [7869]], [[7869, 7869], "valid"], [[7870, 7870], "mapped", [7871]], [[7871, 7871], "valid"], [[7872, 7872], "mapped", [7873]], [[7873, 7873], "valid"], [[7874, 7874], "mapped", [7875]], [[7875, 7875], "valid"], [[7876, 7876], "mapped", [7877]], [[7877, 7877], "valid"], [[7878, 7878], "mapped", [7879]], [[7879, 7879], "valid"], [[7880, 7880], "mapped", [7881]], [[7881, 7881], "valid"], [[7882, 7882], "mapped", [7883]], [[7883, 7883], "valid"], [[7884, 7884], "mapped", [7885]], [[7885, 7885], "valid"], [[7886, 7886], "mapped", [7887]], [[7887, 7887], "valid"], [[7888, 7888], "mapped", [7889]], [[7889, 7889], "valid"], [[7890, 7890], "mapped", [7891]], [[7891, 7891], "valid"], [[7892, 7892], "mapped", [7893]], [[7893, 7893], "valid"], [[7894, 7894], "mapped", [7895]], [[7895, 7895], "valid"], [[7896, 7896], "mapped", [7897]], [[7897, 7897], "valid"], [[7898, 7898], "mapped", [7899]], [[7899, 7899], "valid"], [[7900, 7900], "mapped", [7901]], [[7901, 7901], "valid"], [[7902, 7902], "mapped", [7903]], [[7903, 7903], "valid"], [[7904, 7904], "mapped", [7905]], [[7905, 7905], "valid"], [[7906, 7906], "mapped", [7907]], [[7907, 7907], "valid"], [[7908, 7908], "mapped", [7909]], [[7909, 7909], "valid"], [[7910, 7910], "mapped", [7911]], [[7911, 7911], "valid"], [[7912, 7912], "mapped", [7913]], [[7913, 7913], "valid"], [[7914, 7914], "mapped", [7915]], [[7915, 7915], "valid"], [[7916, 7916], "mapped", [7917]], [[7917, 7917], "valid"], [[7918, 7918], "mapped", [7919]], [[7919, 7919], "valid"], [[7920, 7920], "mapped", [7921]], [[7921, 7921], "valid"], [[7922, 7922], "mapped", [7923]], [[7923, 7923], "valid"], [[7924, 7924], "mapped", [7925]], [[7925, 7925], "valid"], [[7926, 7926], "mapped", [7927]], [[7927, 7927], "valid"], [[7928, 7928], "mapped", [7929]], [[7929, 7929], "valid"], [[7930, 7930], "mapped", [7931]], [[7931, 7931], "valid"], [[7932, 7932], "mapped", [7933]], [[7933, 7933], "valid"], [[7934, 7934], "mapped", [7935]], [[7935, 7935], "valid"], [[7936, 7943], "valid"], [[7944, 7944], "mapped", [7936]], [[7945, 7945], "mapped", [7937]], [[7946, 7946], "mapped", [7938]], [[7947, 7947], "mapped", [7939]], [[7948, 7948], "mapped", [7940]], [[7949, 7949], "mapped", [7941]], [[7950, 7950], "mapped", [7942]], [[7951, 7951], "mapped", [7943]], [[7952, 7957], "valid"], [[7958, 7959], "disallowed"], [[7960, 7960], "mapped", [7952]], [[7961, 7961], "mapped", [7953]], [[7962, 7962], "mapped", [7954]], [[7963, 7963], "mapped", [7955]], [[7964, 7964], "mapped", [7956]], [[7965, 7965], "mapped", [7957]], [[7966, 7967], "disallowed"], [[7968, 7975], "valid"], [[7976, 7976], "mapped", [7968]], [[7977, 7977], "mapped", [7969]], [[7978, 7978], "mapped", [7970]], [[7979, 7979], "mapped", [7971]], [[7980, 7980], "mapped", [7972]], [[7981, 7981], "mapped", [7973]], [[7982, 7982], "mapped", [7974]], [[7983, 7983], "mapped", [7975]], [[7984, 7991], "valid"], [[7992, 7992], "mapped", [7984]], [[7993, 7993], "mapped", [7985]], [[7994, 7994], "mapped", [7986]], [[7995, 7995], "mapped", [7987]], [[7996, 7996], "mapped", [7988]], [[7997, 7997], "mapped", [7989]], [[7998, 7998], "mapped", [7990]], [[7999, 7999], "mapped", [7991]], [[8e3, 8005], "valid"], [[8006, 8007], "disallowed"], [[8008, 8008], "mapped", [8e3]], [[8009, 8009], "mapped", [8001]], [[8010, 8010], "mapped", [8002]], [[8011, 8011], "mapped", [8003]], [[8012, 8012], "mapped", [8004]], [[8013, 8013], "mapped", [8005]], [[8014, 8015], "disallowed"], [[8016, 8023], "valid"], [[8024, 8024], "disallowed"], [[8025, 8025], "mapped", [8017]], [[8026, 8026], "disallowed"], [[8027, 8027], "mapped", [8019]], [[8028, 8028], "disallowed"], [[8029, 8029], "mapped", [8021]], [[8030, 8030], "disallowed"], [[8031, 8031], "mapped", [8023]], [[8032, 8039], "valid"], [[8040, 8040], "mapped", [8032]], [[8041, 8041], "mapped", [8033]], [[8042, 8042], "mapped", [8034]], [[8043, 8043], "mapped", [8035]], [[8044, 8044], "mapped", [8036]], [[8045, 8045], "mapped", [8037]], [[8046, 8046], "mapped", [8038]], [[8047, 8047], "mapped", [8039]], [[8048, 8048], "valid"], [[8049, 8049], "mapped", [940]], [[8050, 8050], "valid"], [[8051, 8051], "mapped", [941]], [[8052, 8052], "valid"], [[8053, 8053], "mapped", [942]], [[8054, 8054], "valid"], [[8055, 8055], "mapped", [943]], [[8056, 8056], "valid"], [[8057, 8057], "mapped", [972]], [[8058, 8058], "valid"], [[8059, 8059], "mapped", [973]], [[8060, 8060], "valid"], [[8061, 8061], "mapped", [974]], [[8062, 8063], "disallowed"], [[8064, 8064], "mapped", [7936, 953]], [[8065, 8065], "mapped", [7937, 953]], [[8066, 8066], "mapped", [7938, 953]], [[8067, 8067], "mapped", [7939, 953]], [[8068, 8068], "mapped", [7940, 953]], [[8069, 8069], "mapped", [7941, 953]], [[8070, 8070], "mapped", [7942, 953]], [[8071, 8071], "mapped", [7943, 953]], [[8072, 8072], "mapped", [7936, 953]], [[8073, 8073], "mapped", [7937, 953]], [[8074, 8074], "mapped", [7938, 953]], [[8075, 8075], "mapped", [7939, 953]], [[8076, 8076], "mapped", [7940, 953]], [[8077, 8077], "mapped", [7941, 953]], [[8078, 8078], "mapped", [7942, 953]], [[8079, 8079], "mapped", [7943, 953]], [[8080, 8080], "mapped", [7968, 953]], [[8081, 8081], "mapped", [7969, 953]], [[8082, 8082], "mapped", [7970, 953]], [[8083, 8083], "mapped", [7971, 953]], [[8084, 8084], "mapped", [7972, 953]], [[8085, 8085], "mapped", [7973, 953]], [[8086, 8086], "mapped", [7974, 953]], [[8087, 8087], "mapped", [7975, 953]], [[8088, 8088], "mapped", [7968, 953]], [[8089, 8089], "mapped", [7969, 953]], [[8090, 8090], "mapped", [7970, 953]], [[8091, 8091], "mapped", [7971, 953]], [[8092, 8092], "mapped", [7972, 953]], [[8093, 8093], "mapped", [7973, 953]], [[8094, 8094], "mapped", [7974, 953]], [[8095, 8095], "mapped", [7975, 953]], [[8096, 8096], "mapped", [8032, 953]], [[8097, 8097], "mapped", [8033, 953]], [[8098, 8098], "mapped", [8034, 953]], [[8099, 8099], "mapped", [8035, 953]], [[8100, 8100], "mapped", [8036, 953]], [[8101, 8101], "mapped", [8037, 953]], [[8102, 8102], "mapped", [8038, 953]], [[8103, 8103], "mapped", [8039, 953]], [[8104, 8104], "mapped", [8032, 953]], [[8105, 8105], "mapped", [8033, 953]], [[8106, 8106], "mapped", [8034, 953]], [[8107, 8107], "mapped", [8035, 953]], [[8108, 8108], "mapped", [8036, 953]], [[8109, 8109], "mapped", [8037, 953]], [[8110, 8110], "mapped", [8038, 953]], [[8111, 8111], "mapped", [8039, 953]], [[8112, 8113], "valid"], [[8114, 8114], "mapped", [8048, 953]], [[8115, 8115], "mapped", [945, 953]], [[8116, 8116], "mapped", [940, 953]], [[8117, 8117], "disallowed"], [[8118, 8118], "valid"], [[8119, 8119], "mapped", [8118, 953]], [[8120, 8120], "mapped", [8112]], [[8121, 8121], "mapped", [8113]], [[8122, 8122], "mapped", [8048]], [[8123, 8123], "mapped", [940]], [[8124, 8124], "mapped", [945, 953]], [[8125, 8125], "disallowed_STD3_mapped", [32, 787]], [[8126, 8126], "mapped", [953]], [[8127, 8127], "disallowed_STD3_mapped", [32, 787]], [[8128, 8128], "disallowed_STD3_mapped", [32, 834]], [[8129, 8129], "disallowed_STD3_mapped", [32, 776, 834]], [[8130, 8130], "mapped", [8052, 953]], [[8131, 8131], "mapped", [951, 953]], [[8132, 8132], "mapped", [942, 953]], [[8133, 8133], "disallowed"], [[8134, 8134], "valid"], [[8135, 8135], "mapped", [8134, 953]], [[8136, 8136], "mapped", [8050]], [[8137, 8137], "mapped", [941]], [[8138, 8138], "mapped", [8052]], [[8139, 8139], "mapped", [942]], [[8140, 8140], "mapped", [951, 953]], [[8141, 8141], "disallowed_STD3_mapped", [32, 787, 768]], [[8142, 8142], "disallowed_STD3_mapped", [32, 787, 769]], [[8143, 8143], "disallowed_STD3_mapped", [32, 787, 834]], [[8144, 8146], "valid"], [[8147, 8147], "mapped", [912]], [[8148, 8149], "disallowed"], [[8150, 8151], "valid"], [[8152, 8152], "mapped", [8144]], [[8153, 8153], "mapped", [8145]], [[8154, 8154], "mapped", [8054]], [[8155, 8155], "mapped", [943]], [[8156, 8156], "disallowed"], [[8157, 8157], "disallowed_STD3_mapped", [32, 788, 768]], [[8158, 8158], "disallowed_STD3_mapped", [32, 788, 769]], [[8159, 8159], "disallowed_STD3_mapped", [32, 788, 834]], [[8160, 8162], "valid"], [[8163, 8163], "mapped", [944]], [[8164, 8167], "valid"], [[8168, 8168], "mapped", [8160]], [[8169, 8169], "mapped", [8161]], [[8170, 8170], "mapped", [8058]], [[8171, 8171], "mapped", [973]], [[8172, 8172], "mapped", [8165]], [[8173, 8173], "disallowed_STD3_mapped", [32, 776, 768]], [[8174, 8174], "disallowed_STD3_mapped", [32, 776, 769]], [[8175, 8175], "disallowed_STD3_mapped", [96]], [[8176, 8177], "disallowed"], [[8178, 8178], "mapped", [8060, 953]], [[8179, 8179], "mapped", [969, 953]], [[8180, 8180], "mapped", [974, 953]], [[8181, 8181], "disallowed"], [[8182, 8182], "valid"], [[8183, 8183], "mapped", [8182, 953]], [[8184, 8184], "mapped", [8056]], [[8185, 8185], "mapped", [972]], [[8186, 8186], "mapped", [8060]], [[8187, 8187], "mapped", [974]], [[8188, 8188], "mapped", [969, 953]], [[8189, 8189], "disallowed_STD3_mapped", [32, 769]], [[8190, 8190], "disallowed_STD3_mapped", [32, 788]], [[8191, 8191], "disallowed"], [[8192, 8202], "disallowed_STD3_mapped", [32]], [[8203, 8203], "ignored"], [[8204, 8205], "deviation", []], [[8206, 8207], "disallowed"], [[8208, 8208], "valid", [], "NV8"], [[8209, 8209], "mapped", [8208]], [[8210, 8214], "valid", [], "NV8"], [[8215, 8215], "disallowed_STD3_mapped", [32, 819]], [[8216, 8227], "valid", [], "NV8"], [[8228, 8230], "disallowed"], [[8231, 8231], "valid", [], "NV8"], [[8232, 8238], "disallowed"], [[8239, 8239], "disallowed_STD3_mapped", [32]], [[8240, 8242], "valid", [], "NV8"], [[8243, 8243], "mapped", [8242, 8242]], [[8244, 8244], "mapped", [8242, 8242, 8242]], [[8245, 8245], "valid", [], "NV8"], [[8246, 8246], "mapped", [8245, 8245]], [[8247, 8247], "mapped", [8245, 8245, 8245]], [[8248, 8251], "valid", [], "NV8"], [[8252, 8252], "disallowed_STD3_mapped", [33, 33]], [[8253, 8253], "valid", [], "NV8"], [[8254, 8254], "disallowed_STD3_mapped", [32, 773]], [[8255, 8262], "valid", [], "NV8"], [[8263, 8263], "disallowed_STD3_mapped", [63, 63]], [[8264, 8264], "disallowed_STD3_mapped", [63, 33]], [[8265, 8265], "disallowed_STD3_mapped", [33, 63]], [[8266, 8269], "valid", [], "NV8"], [[8270, 8274], "valid", [], "NV8"], [[8275, 8276], "valid", [], "NV8"], [[8277, 8278], "valid", [], "NV8"], [[8279, 8279], "mapped", [8242, 8242, 8242, 8242]], [[8280, 8286], "valid", [], "NV8"], [[8287, 8287], "disallowed_STD3_mapped", [32]], [[8288, 8288], "ignored"], [[8289, 8291], "disallowed"], [[8292, 8292], "ignored"], [[8293, 8293], "disallowed"], [[8294, 8297], "disallowed"], [[8298, 8303], "disallowed"], [[8304, 8304], "mapped", [48]], [[8305, 8305], "mapped", [105]], [[8306, 8307], "disallowed"], [[8308, 8308], "mapped", [52]], [[8309, 8309], "mapped", [53]], [[8310, 8310], "mapped", [54]], [[8311, 8311], "mapped", [55]], [[8312, 8312], "mapped", [56]], [[8313, 8313], "mapped", [57]], [[8314, 8314], "disallowed_STD3_mapped", [43]], [[8315, 8315], "mapped", [8722]], [[8316, 8316], "disallowed_STD3_mapped", [61]], [[8317, 8317], "disallowed_STD3_mapped", [40]], [[8318, 8318], "disallowed_STD3_mapped", [41]], [[8319, 8319], "mapped", [110]], [[8320, 8320], "mapped", [48]], [[8321, 8321], "mapped", [49]], [[8322, 8322], "mapped", [50]], [[8323, 8323], "mapped", [51]], [[8324, 8324], "mapped", [52]], [[8325, 8325], "mapped", [53]], [[8326, 8326], "mapped", [54]], [[8327, 8327], "mapped", [55]], [[8328, 8328], "mapped", [56]], [[8329, 8329], "mapped", [57]], [[8330, 8330], "disallowed_STD3_mapped", [43]], [[8331, 8331], "mapped", [8722]], [[8332, 8332], "disallowed_STD3_mapped", [61]], [[8333, 8333], "disallowed_STD3_mapped", [40]], [[8334, 8334], "disallowed_STD3_mapped", [41]], [[8335, 8335], "disallowed"], [[8336, 8336], "mapped", [97]], [[8337, 8337], "mapped", [101]], [[8338, 8338], "mapped", [111]], [[8339, 8339], "mapped", [120]], [[8340, 8340], "mapped", [601]], [[8341, 8341], "mapped", [104]], [[8342, 8342], "mapped", [107]], [[8343, 8343], "mapped", [108]], [[8344, 8344], "mapped", [109]], [[8345, 8345], "mapped", [110]], [[8346, 8346], "mapped", [112]], [[8347, 8347], "mapped", [115]], [[8348, 8348], "mapped", [116]], [[8349, 8351], "disallowed"], [[8352, 8359], "valid", [], "NV8"], [[8360, 8360], "mapped", [114, 115]], [[8361, 8362], "valid", [], "NV8"], [[8363, 8363], "valid", [], "NV8"], [[8364, 8364], "valid", [], "NV8"], [[8365, 8367], "valid", [], "NV8"], [[8368, 8369], "valid", [], "NV8"], [[8370, 8373], "valid", [], "NV8"], [[8374, 8376], "valid", [], "NV8"], [[8377, 8377], "valid", [], "NV8"], [[8378, 8378], "valid", [], "NV8"], [[8379, 8381], "valid", [], "NV8"], [[8382, 8382], "valid", [], "NV8"], [[8383, 8399], "disallowed"], [[8400, 8417], "valid", [], "NV8"], [[8418, 8419], "valid", [], "NV8"], [[8420, 8426], "valid", [], "NV8"], [[8427, 8427], "valid", [], "NV8"], [[8428, 8431], "valid", [], "NV8"], [[8432, 8432], "valid", [], "NV8"], [[8433, 8447], "disallowed"], [[8448, 8448], "disallowed_STD3_mapped", [97, 47, 99]], [[8449, 8449], "disallowed_STD3_mapped", [97, 47, 115]], [[8450, 8450], "mapped", [99]], [[8451, 8451], "mapped", [176, 99]], [[8452, 8452], "valid", [], "NV8"], [[8453, 8453], "disallowed_STD3_mapped", [99, 47, 111]], [[8454, 8454], "disallowed_STD3_mapped", [99, 47, 117]], [[8455, 8455], "mapped", [603]], [[8456, 8456], "valid", [], "NV8"], [[8457, 8457], "mapped", [176, 102]], [[8458, 8458], "mapped", [103]], [[8459, 8462], "mapped", [104]], [[8463, 8463], "mapped", [295]], [[8464, 8465], "mapped", [105]], [[8466, 8467], "mapped", [108]], [[8468, 8468], "valid", [], "NV8"], [[8469, 8469], "mapped", [110]], [[8470, 8470], "mapped", [110, 111]], [[8471, 8472], "valid", [], "NV8"], [[8473, 8473], "mapped", [112]], [[8474, 8474], "mapped", [113]], [[8475, 8477], "mapped", [114]], [[8478, 8479], "valid", [], "NV8"], [[8480, 8480], "mapped", [115, 109]], [[8481, 8481], "mapped", [116, 101, 108]], [[8482, 8482], "mapped", [116, 109]], [[8483, 8483], "valid", [], "NV8"], [[8484, 8484], "mapped", [122]], [[8485, 8485], "valid", [], "NV8"], [[8486, 8486], "mapped", [969]], [[8487, 8487], "valid", [], "NV8"], [[8488, 8488], "mapped", [122]], [[8489, 8489], "valid", [], "NV8"], [[8490, 8490], "mapped", [107]], [[8491, 8491], "mapped", [229]], [[8492, 8492], "mapped", [98]], [[8493, 8493], "mapped", [99]], [[8494, 8494], "valid", [], "NV8"], [[8495, 8496], "mapped", [101]], [[8497, 8497], "mapped", [102]], [[8498, 8498], "disallowed"], [[8499, 8499], "mapped", [109]], [[8500, 8500], "mapped", [111]], [[8501, 8501], "mapped", [1488]], [[8502, 8502], "mapped", [1489]], [[8503, 8503], "mapped", [1490]], [[8504, 8504], "mapped", [1491]], [[8505, 8505], "mapped", [105]], [[8506, 8506], "valid", [], "NV8"], [[8507, 8507], "mapped", [102, 97, 120]], [[8508, 8508], "mapped", [960]], [[8509, 8510], "mapped", [947]], [[8511, 8511], "mapped", [960]], [[8512, 8512], "mapped", [8721]], [[8513, 8516], "valid", [], "NV8"], [[8517, 8518], "mapped", [100]], [[8519, 8519], "mapped", [101]], [[8520, 8520], "mapped", [105]], [[8521, 8521], "mapped", [106]], [[8522, 8523], "valid", [], "NV8"], [[8524, 8524], "valid", [], "NV8"], [[8525, 8525], "valid", [], "NV8"], [[8526, 8526], "valid"], [[8527, 8527], "valid", [], "NV8"], [[8528, 8528], "mapped", [49, 8260, 55]], [[8529, 8529], "mapped", [49, 8260, 57]], [[8530, 8530], "mapped", [49, 8260, 49, 48]], [[8531, 8531], "mapped", [49, 8260, 51]], [[8532, 8532], "mapped", [50, 8260, 51]], [[8533, 8533], "mapped", [49, 8260, 53]], [[8534, 8534], "mapped", [50, 8260, 53]], [[8535, 8535], "mapped", [51, 8260, 53]], [[8536, 8536], "mapped", [52, 8260, 53]], [[8537, 8537], "mapped", [49, 8260, 54]], [[8538, 8538], "mapped", [53, 8260, 54]], [[8539, 8539], "mapped", [49, 8260, 56]], [[8540, 8540], "mapped", [51, 8260, 56]], [[8541, 8541], "mapped", [53, 8260, 56]], [[8542, 8542], "mapped", [55, 8260, 56]], [[8543, 8543], "mapped", [49, 8260]], [[8544, 8544], "mapped", [105]], [[8545, 8545], "mapped", [105, 105]], [[8546, 8546], "mapped", [105, 105, 105]], [[8547, 8547], "mapped", [105, 118]], [[8548, 8548], "mapped", [118]], [[8549, 8549], "mapped", [118, 105]], [[8550, 8550], "mapped", [118, 105, 105]], [[8551, 8551], "mapped", [118, 105, 105, 105]], [[8552, 8552], "mapped", [105, 120]], [[8553, 8553], "mapped", [120]], [[8554, 8554], "mapped", [120, 105]], [[8555, 8555], "mapped", [120, 105, 105]], [[8556, 8556], "mapped", [108]], [[8557, 8557], "mapped", [99]], [[8558, 8558], "mapped", [100]], [[8559, 8559], "mapped", [109]], [[8560, 8560], "mapped", [105]], [[8561, 8561], "mapped", [105, 105]], [[8562, 8562], "mapped", [105, 105, 105]], [[8563, 8563], "mapped", [105, 118]], [[8564, 8564], "mapped", [118]], [[8565, 8565], "mapped", [118, 105]], [[8566, 8566], "mapped", [118, 105, 105]], [[8567, 8567], "mapped", [118, 105, 105, 105]], [[8568, 8568], "mapped", [105, 120]], [[8569, 8569], "mapped", [120]], [[8570, 8570], "mapped", [120, 105]], [[8571, 8571], "mapped", [120, 105, 105]], [[8572, 8572], "mapped", [108]], [[8573, 8573], "mapped", [99]], [[8574, 8574], "mapped", [100]], [[8575, 8575], "mapped", [109]], [[8576, 8578], "valid", [], "NV8"], [[8579, 8579], "disallowed"], [[8580, 8580], "valid"], [[8581, 8584], "valid", [], "NV8"], [[8585, 8585], "mapped", [48, 8260, 51]], [[8586, 8587], "valid", [], "NV8"], [[8588, 8591], "disallowed"], [[8592, 8682], "valid", [], "NV8"], [[8683, 8691], "valid", [], "NV8"], [[8692, 8703], "valid", [], "NV8"], [[8704, 8747], "valid", [], "NV8"], [[8748, 8748], "mapped", [8747, 8747]], [[8749, 8749], "mapped", [8747, 8747, 8747]], [[8750, 8750], "valid", [], "NV8"], [[8751, 8751], "mapped", [8750, 8750]], [[8752, 8752], "mapped", [8750, 8750, 8750]], [[8753, 8799], "valid", [], "NV8"], [[8800, 8800], "disallowed_STD3_valid"], [[8801, 8813], "valid", [], "NV8"], [[8814, 8815], "disallowed_STD3_valid"], [[8816, 8945], "valid", [], "NV8"], [[8946, 8959], "valid", [], "NV8"], [[8960, 8960], "valid", [], "NV8"], [[8961, 8961], "valid", [], "NV8"], [[8962, 9e3], "valid", [], "NV8"], [[9001, 9001], "mapped", [12296]], [[9002, 9002], "mapped", [12297]], [[9003, 9082], "valid", [], "NV8"], [[9083, 9083], "valid", [], "NV8"], [[9084, 9084], "valid", [], "NV8"], [[9085, 9114], "valid", [], "NV8"], [[9115, 9166], "valid", [], "NV8"], [[9167, 9168], "valid", [], "NV8"], [[9169, 9179], "valid", [], "NV8"], [[9180, 9191], "valid", [], "NV8"], [[9192, 9192], "valid", [], "NV8"], [[9193, 9203], "valid", [], "NV8"], [[9204, 9210], "valid", [], "NV8"], [[9211, 9215], "disallowed"], [[9216, 9252], "valid", [], "NV8"], [[9253, 9254], "valid", [], "NV8"], [[9255, 9279], "disallowed"], [[9280, 9290], "valid", [], "NV8"], [[9291, 9311], "disallowed"], [[9312, 9312], "mapped", [49]], [[9313, 9313], "mapped", [50]], [[9314, 9314], "mapped", [51]], [[9315, 9315], "mapped", [52]], [[9316, 9316], "mapped", [53]], [[9317, 9317], "mapped", [54]], [[9318, 9318], "mapped", [55]], [[9319, 9319], "mapped", [56]], [[9320, 9320], "mapped", [57]], [[9321, 9321], "mapped", [49, 48]], [[9322, 9322], "mapped", [49, 49]], [[9323, 9323], "mapped", [49, 50]], [[9324, 9324], "mapped", [49, 51]], [[9325, 9325], "mapped", [49, 52]], [[9326, 9326], "mapped", [49, 53]], [[9327, 9327], "mapped", [49, 54]], [[9328, 9328], "mapped", [49, 55]], [[9329, 9329], "mapped", [49, 56]], [[9330, 9330], "mapped", [49, 57]], [[9331, 9331], "mapped", [50, 48]], [[9332, 9332], "disallowed_STD3_mapped", [40, 49, 41]], [[9333, 9333], "disallowed_STD3_mapped", [40, 50, 41]], [[9334, 9334], "disallowed_STD3_mapped", [40, 51, 41]], [[9335, 9335], "disallowed_STD3_mapped", [40, 52, 41]], [[9336, 9336], "disallowed_STD3_mapped", [40, 53, 41]], [[9337, 9337], "disallowed_STD3_mapped", [40, 54, 41]], [[9338, 9338], "disallowed_STD3_mapped", [40, 55, 41]], [[9339, 9339], "disallowed_STD3_mapped", [40, 56, 41]], [[9340, 9340], "disallowed_STD3_mapped", [40, 57, 41]], [[9341, 9341], "disallowed_STD3_mapped", [40, 49, 48, 41]], [[9342, 9342], "disallowed_STD3_mapped", [40, 49, 49, 41]], [[9343, 9343], "disallowed_STD3_mapped", [40, 49, 50, 41]], [[9344, 9344], "disallowed_STD3_mapped", [40, 49, 51, 41]], [[9345, 9345], "disallowed_STD3_mapped", [40, 49, 52, 41]], [[9346, 9346], "disallowed_STD3_mapped", [40, 49, 53, 41]], [[9347, 9347], "disallowed_STD3_mapped", [40, 49, 54, 41]], [[9348, 9348], "disallowed_STD3_mapped", [40, 49, 55, 41]], [[9349, 9349], "disallowed_STD3_mapped", [40, 49, 56, 41]], [[9350, 9350], "disallowed_STD3_mapped", [40, 49, 57, 41]], [[9351, 9351], "disallowed_STD3_mapped", [40, 50, 48, 41]], [[9352, 9371], "disallowed"], [[9372, 9372], "disallowed_STD3_mapped", [40, 97, 41]], [[9373, 9373], "disallowed_STD3_mapped", [40, 98, 41]], [[9374, 9374], "disallowed_STD3_mapped", [40, 99, 41]], [[9375, 9375], "disallowed_STD3_mapped", [40, 100, 41]], [[9376, 9376], "disallowed_STD3_mapped", [40, 101, 41]], [[9377, 9377], "disallowed_STD3_mapped", [40, 102, 41]], [[9378, 9378], "disallowed_STD3_mapped", [40, 103, 41]], [[9379, 9379], "disallowed_STD3_mapped", [40, 104, 41]], [[9380, 9380], "disallowed_STD3_mapped", [40, 105, 41]], [[9381, 9381], "disallowed_STD3_mapped", [40, 106, 41]], [[9382, 9382], "disallowed_STD3_mapped", [40, 107, 41]], [[9383, 9383], "disallowed_STD3_mapped", [40, 108, 41]], [[9384, 9384], "disallowed_STD3_mapped", [40, 109, 41]], [[9385, 9385], "disallowed_STD3_mapped", [40, 110, 41]], [[9386, 9386], "disallowed_STD3_mapped", [40, 111, 41]], [[9387, 9387], "disallowed_STD3_mapped", [40, 112, 41]], [[9388, 9388], "disallowed_STD3_mapped", [40, 113, 41]], [[9389, 9389], "disallowed_STD3_mapped", [40, 114, 41]], [[9390, 9390], "disallowed_STD3_mapped", [40, 115, 41]], [[9391, 9391], "disallowed_STD3_mapped", [40, 116, 41]], [[9392, 9392], "disallowed_STD3_mapped", [40, 117, 41]], [[9393, 9393], "disallowed_STD3_mapped", [40, 118, 41]], [[9394, 9394], "disallowed_STD3_mapped", [40, 119, 41]], [[9395, 9395], "disallowed_STD3_mapped", [40, 120, 41]], [[9396, 9396], "disallowed_STD3_mapped", [40, 121, 41]], [[9397, 9397], "disallowed_STD3_mapped", [40, 122, 41]], [[9398, 9398], "mapped", [97]], [[9399, 9399], "mapped", [98]], [[9400, 9400], "mapped", [99]], [[9401, 9401], "mapped", [100]], [[9402, 9402], "mapped", [101]], [[9403, 9403], "mapped", [102]], [[9404, 9404], "mapped", [103]], [[9405, 9405], "mapped", [104]], [[9406, 9406], "mapped", [105]], [[9407, 9407], "mapped", [106]], [[9408, 9408], "mapped", [107]], [[9409, 9409], "mapped", [108]], [[9410, 9410], "mapped", [109]], [[9411, 9411], "mapped", [110]], [[9412, 9412], "mapped", [111]], [[9413, 9413], "mapped", [112]], [[9414, 9414], "mapped", [113]], [[9415, 9415], "mapped", [114]], [[9416, 9416], "mapped", [115]], [[9417, 9417], "mapped", [116]], [[9418, 9418], "mapped", [117]], [[9419, 9419], "mapped", [118]], [[9420, 9420], "mapped", [119]], [[9421, 9421], "mapped", [120]], [[9422, 9422], "mapped", [121]], [[9423, 9423], "mapped", [122]], [[9424, 9424], "mapped", [97]], [[9425, 9425], "mapped", [98]], [[9426, 9426], "mapped", [99]], [[9427, 9427], "mapped", [100]], [[9428, 9428], "mapped", [101]], [[9429, 9429], "mapped", [102]], [[9430, 9430], "mapped", [103]], [[9431, 9431], "mapped", [104]], [[9432, 9432], "mapped", [105]], [[9433, 9433], "mapped", [106]], [[9434, 9434], "mapped", [107]], [[9435, 9435], "mapped", [108]], [[9436, 9436], "mapped", [109]], [[9437, 9437], "mapped", [110]], [[9438, 9438], "mapped", [111]], [[9439, 9439], "mapped", [112]], [[9440, 9440], "mapped", [113]], [[9441, 9441], "mapped", [114]], [[9442, 9442], "mapped", [115]], [[9443, 9443], "mapped", [116]], [[9444, 9444], "mapped", [117]], [[9445, 9445], "mapped", [118]], [[9446, 9446], "mapped", [119]], [[9447, 9447], "mapped", [120]], [[9448, 9448], "mapped", [121]], [[9449, 9449], "mapped", [122]], [[9450, 9450], "mapped", [48]], [[9451, 9470], "valid", [], "NV8"], [[9471, 9471], "valid", [], "NV8"], [[9472, 9621], "valid", [], "NV8"], [[9622, 9631], "valid", [], "NV8"], [[9632, 9711], "valid", [], "NV8"], [[9712, 9719], "valid", [], "NV8"], [[9720, 9727], "valid", [], "NV8"], [[9728, 9747], "valid", [], "NV8"], [[9748, 9749], "valid", [], "NV8"], [[9750, 9751], "valid", [], "NV8"], [[9752, 9752], "valid", [], "NV8"], [[9753, 9753], "valid", [], "NV8"], [[9754, 9839], "valid", [], "NV8"], [[9840, 9841], "valid", [], "NV8"], [[9842, 9853], "valid", [], "NV8"], [[9854, 9855], "valid", [], "NV8"], [[9856, 9865], "valid", [], "NV8"], [[9866, 9873], "valid", [], "NV8"], [[9874, 9884], "valid", [], "NV8"], [[9885, 9885], "valid", [], "NV8"], [[9886, 9887], "valid", [], "NV8"], [[9888, 9889], "valid", [], "NV8"], [[9890, 9905], "valid", [], "NV8"], [[9906, 9906], "valid", [], "NV8"], [[9907, 9916], "valid", [], "NV8"], [[9917, 9919], "valid", [], "NV8"], [[9920, 9923], "valid", [], "NV8"], [[9924, 9933], "valid", [], "NV8"], [[9934, 9934], "valid", [], "NV8"], [[9935, 9953], "valid", [], "NV8"], [[9954, 9954], "valid", [], "NV8"], [[9955, 9955], "valid", [], "NV8"], [[9956, 9959], "valid", [], "NV8"], [[9960, 9983], "valid", [], "NV8"], [[9984, 9984], "valid", [], "NV8"], [[9985, 9988], "valid", [], "NV8"], [[9989, 9989], "valid", [], "NV8"], [[9990, 9993], "valid", [], "NV8"], [[9994, 9995], "valid", [], "NV8"], [[9996, 10023], "valid", [], "NV8"], [[10024, 10024], "valid", [], "NV8"], [[10025, 10059], "valid", [], "NV8"], [[10060, 10060], "valid", [], "NV8"], [[10061, 10061], "valid", [], "NV8"], [[10062, 10062], "valid", [], "NV8"], [[10063, 10066], "valid", [], "NV8"], [[10067, 10069], "valid", [], "NV8"], [[10070, 10070], "valid", [], "NV8"], [[10071, 10071], "valid", [], "NV8"], [[10072, 10078], "valid", [], "NV8"], [[10079, 10080], "valid", [], "NV8"], [[10081, 10087], "valid", [], "NV8"], [[10088, 10101], "valid", [], "NV8"], [[10102, 10132], "valid", [], "NV8"], [[10133, 10135], "valid", [], "NV8"], [[10136, 10159], "valid", [], "NV8"], [[10160, 10160], "valid", [], "NV8"], [[10161, 10174], "valid", [], "NV8"], [[10175, 10175], "valid", [], "NV8"], [[10176, 10182], "valid", [], "NV8"], [[10183, 10186], "valid", [], "NV8"], [[10187, 10187], "valid", [], "NV8"], [[10188, 10188], "valid", [], "NV8"], [[10189, 10189], "valid", [], "NV8"], [[10190, 10191], "valid", [], "NV8"], [[10192, 10219], "valid", [], "NV8"], [[10220, 10223], "valid", [], "NV8"], [[10224, 10239], "valid", [], "NV8"], [[10240, 10495], "valid", [], "NV8"], [[10496, 10763], "valid", [], "NV8"], [[10764, 10764], "mapped", [8747, 8747, 8747, 8747]], [[10765, 10867], "valid", [], "NV8"], [[10868, 10868], "disallowed_STD3_mapped", [58, 58, 61]], [[10869, 10869], "disallowed_STD3_mapped", [61, 61]], [[10870, 10870], "disallowed_STD3_mapped", [61, 61, 61]], [[10871, 10971], "valid", [], "NV8"], [[10972, 10972], "mapped", [10973, 824]], [[10973, 11007], "valid", [], "NV8"], [[11008, 11021], "valid", [], "NV8"], [[11022, 11027], "valid", [], "NV8"], [[11028, 11034], "valid", [], "NV8"], [[11035, 11039], "valid", [], "NV8"], [[11040, 11043], "valid", [], "NV8"], [[11044, 11084], "valid", [], "NV8"], [[11085, 11087], "valid", [], "NV8"], [[11088, 11092], "valid", [], "NV8"], [[11093, 11097], "valid", [], "NV8"], [[11098, 11123], "valid", [], "NV8"], [[11124, 11125], "disallowed"], [[11126, 11157], "valid", [], "NV8"], [[11158, 11159], "disallowed"], [[11160, 11193], "valid", [], "NV8"], [[11194, 11196], "disallowed"], [[11197, 11208], "valid", [], "NV8"], [[11209, 11209], "disallowed"], [[11210, 11217], "valid", [], "NV8"], [[11218, 11243], "disallowed"], [[11244, 11247], "valid", [], "NV8"], [[11248, 11263], "disallowed"], [[11264, 11264], "mapped", [11312]], [[11265, 11265], "mapped", [11313]], [[11266, 11266], "mapped", [11314]], [[11267, 11267], "mapped", [11315]], [[11268, 11268], "mapped", [11316]], [[11269, 11269], "mapped", [11317]], [[11270, 11270], "mapped", [11318]], [[11271, 11271], "mapped", [11319]], [[11272, 11272], "mapped", [11320]], [[11273, 11273], "mapped", [11321]], [[11274, 11274], "mapped", [11322]], [[11275, 11275], "mapped", [11323]], [[11276, 11276], "mapped", [11324]], [[11277, 11277], "mapped", [11325]], [[11278, 11278], "mapped", [11326]], [[11279, 11279], "mapped", [11327]], [[11280, 11280], "mapped", [11328]], [[11281, 11281], "mapped", [11329]], [[11282, 11282], "mapped", [11330]], [[11283, 11283], "mapped", [11331]], [[11284, 11284], "mapped", [11332]], [[11285, 11285], "mapped", [11333]], [[11286, 11286], "mapped", [11334]], [[11287, 11287], "mapped", [11335]], [[11288, 11288], "mapped", [11336]], [[11289, 11289], "mapped", [11337]], [[11290, 11290], "mapped", [11338]], [[11291, 11291], "mapped", [11339]], [[11292, 11292], "mapped", [11340]], [[11293, 11293], "mapped", [11341]], [[11294, 11294], "mapped", [11342]], [[11295, 11295], "mapped", [11343]], [[11296, 11296], "mapped", [11344]], [[11297, 11297], "mapped", [11345]], [[11298, 11298], "mapped", [11346]], [[11299, 11299], "mapped", [11347]], [[11300, 11300], "mapped", [11348]], [[11301, 11301], "mapped", [11349]], [[11302, 11302], "mapped", [11350]], [[11303, 11303], "mapped", [11351]], [[11304, 11304], "mapped", [11352]], [[11305, 11305], "mapped", [11353]], [[11306, 11306], "mapped", [11354]], [[11307, 11307], "mapped", [11355]], [[11308, 11308], "mapped", [11356]], [[11309, 11309], "mapped", [11357]], [[11310, 11310], "mapped", [11358]], [[11311, 11311], "disallowed"], [[11312, 11358], "valid"], [[11359, 11359], "disallowed"], [[11360, 11360], "mapped", [11361]], [[11361, 11361], "valid"], [[11362, 11362], "mapped", [619]], [[11363, 11363], "mapped", [7549]], [[11364, 11364], "mapped", [637]], [[11365, 11366], "valid"], [[11367, 11367], "mapped", [11368]], [[11368, 11368], "valid"], [[11369, 11369], "mapped", [11370]], [[11370, 11370], "valid"], [[11371, 11371], "mapped", [11372]], [[11372, 11372], "valid"], [[11373, 11373], "mapped", [593]], [[11374, 11374], "mapped", [625]], [[11375, 11375], "mapped", [592]], [[11376, 11376], "mapped", [594]], [[11377, 11377], "valid"], [[11378, 11378], "mapped", [11379]], [[11379, 11379], "valid"], [[11380, 11380], "valid"], [[11381, 11381], "mapped", [11382]], [[11382, 11383], "valid"], [[11384, 11387], "valid"], [[11388, 11388], "mapped", [106]], [[11389, 11389], "mapped", [118]], [[11390, 11390], "mapped", [575]], [[11391, 11391], "mapped", [576]], [[11392, 11392], "mapped", [11393]], [[11393, 11393], "valid"], [[11394, 11394], "mapped", [11395]], [[11395, 11395], "valid"], [[11396, 11396], "mapped", [11397]], [[11397, 11397], "valid"], [[11398, 11398], "mapped", [11399]], [[11399, 11399], "valid"], [[11400, 11400], "mapped", [11401]], [[11401, 11401], "valid"], [[11402, 11402], "mapped", [11403]], [[11403, 11403], "valid"], [[11404, 11404], "mapped", [11405]], [[11405, 11405], "valid"], [[11406, 11406], "mapped", [11407]], [[11407, 11407], "valid"], [[11408, 11408], "mapped", [11409]], [[11409, 11409], "valid"], [[11410, 11410], "mapped", [11411]], [[11411, 11411], "valid"], [[11412, 11412], "mapped", [11413]], [[11413, 11413], "valid"], [[11414, 11414], "mapped", [11415]], [[11415, 11415], "valid"], [[11416, 11416], "mapped", [11417]], [[11417, 11417], "valid"], [[11418, 11418], "mapped", [11419]], [[11419, 11419], "valid"], [[11420, 11420], "mapped", [11421]], [[11421, 11421], "valid"], [[11422, 11422], "mapped", [11423]], [[11423, 11423], "valid"], [[11424, 11424], "mapped", [11425]], [[11425, 11425], "valid"], [[11426, 11426], "mapped", [11427]], [[11427, 11427], "valid"], [[11428, 11428], "mapped", [11429]], [[11429, 11429], "valid"], [[11430, 11430], "mapped", [11431]], [[11431, 11431], "valid"], [[11432, 11432], "mapped", [11433]], [[11433, 11433], "valid"], [[11434, 11434], "mapped", [11435]], [[11435, 11435], "valid"], [[11436, 11436], "mapped", [11437]], [[11437, 11437], "valid"], [[11438, 11438], "mapped", [11439]], [[11439, 11439], "valid"], [[11440, 11440], "mapped", [11441]], [[11441, 11441], "valid"], [[11442, 11442], "mapped", [11443]], [[11443, 11443], "valid"], [[11444, 11444], "mapped", [11445]], [[11445, 11445], "valid"], [[11446, 11446], "mapped", [11447]], [[11447, 11447], "valid"], [[11448, 11448], "mapped", [11449]], [[11449, 11449], "valid"], [[11450, 11450], "mapped", [11451]], [[11451, 11451], "valid"], [[11452, 11452], "mapped", [11453]], [[11453, 11453], "valid"], [[11454, 11454], "mapped", [11455]], [[11455, 11455], "valid"], [[11456, 11456], "mapped", [11457]], [[11457, 11457], "valid"], [[11458, 11458], "mapped", [11459]], [[11459, 11459], "valid"], [[11460, 11460], "mapped", [11461]], [[11461, 11461], "valid"], [[11462, 11462], "mapped", [11463]], [[11463, 11463], "valid"], [[11464, 11464], "mapped", [11465]], [[11465, 11465], "valid"], [[11466, 11466], "mapped", [11467]], [[11467, 11467], "valid"], [[11468, 11468], "mapped", [11469]], [[11469, 11469], "valid"], [[11470, 11470], "mapped", [11471]], [[11471, 11471], "valid"], [[11472, 11472], "mapped", [11473]], [[11473, 11473], "valid"], [[11474, 11474], "mapped", [11475]], [[11475, 11475], "valid"], [[11476, 11476], "mapped", [11477]], [[11477, 11477], "valid"], [[11478, 11478], "mapped", [11479]], [[11479, 11479], "valid"], [[11480, 11480], "mapped", [11481]], [[11481, 11481], "valid"], [[11482, 11482], "mapped", [11483]], [[11483, 11483], "valid"], [[11484, 11484], "mapped", [11485]], [[11485, 11485], "valid"], [[11486, 11486], "mapped", [11487]], [[11487, 11487], "valid"], [[11488, 11488], "mapped", [11489]], [[11489, 11489], "valid"], [[11490, 11490], "mapped", [11491]], [[11491, 11492], "valid"], [[11493, 11498], "valid", [], "NV8"], [[11499, 11499], "mapped", [11500]], [[11500, 11500], "valid"], [[11501, 11501], "mapped", [11502]], [[11502, 11505], "valid"], [[11506, 11506], "mapped", [11507]], [[11507, 11507], "valid"], [[11508, 11512], "disallowed"], [[11513, 11519], "valid", [], "NV8"], [[11520, 11557], "valid"], [[11558, 11558], "disallowed"], [[11559, 11559], "valid"], [[11560, 11564], "disallowed"], [[11565, 11565], "valid"], [[11566, 11567], "disallowed"], [[11568, 11621], "valid"], [[11622, 11623], "valid"], [[11624, 11630], "disallowed"], [[11631, 11631], "mapped", [11617]], [[11632, 11632], "valid", [], "NV8"], [[11633, 11646], "disallowed"], [[11647, 11647], "valid"], [[11648, 11670], "valid"], [[11671, 11679], "disallowed"], [[11680, 11686], "valid"], [[11687, 11687], "disallowed"], [[11688, 11694], "valid"], [[11695, 11695], "disallowed"], [[11696, 11702], "valid"], [[11703, 11703], "disallowed"], [[11704, 11710], "valid"], [[11711, 11711], "disallowed"], [[11712, 11718], "valid"], [[11719, 11719], "disallowed"], [[11720, 11726], "valid"], [[11727, 11727], "disallowed"], [[11728, 11734], "valid"], [[11735, 11735], "disallowed"], [[11736, 11742], "valid"], [[11743, 11743], "disallowed"], [[11744, 11775], "valid"], [[11776, 11799], "valid", [], "NV8"], [[11800, 11803], "valid", [], "NV8"], [[11804, 11805], "valid", [], "NV8"], [[11806, 11822], "valid", [], "NV8"], [[11823, 11823], "valid"], [[11824, 11824], "valid", [], "NV8"], [[11825, 11825], "valid", [], "NV8"], [[11826, 11835], "valid", [], "NV8"], [[11836, 11842], "valid", [], "NV8"], [[11843, 11903], "disallowed"], [[11904, 11929], "valid", [], "NV8"], [[11930, 11930], "disallowed"], [[11931, 11934], "valid", [], "NV8"], [[11935, 11935], "mapped", [27597]], [[11936, 12018], "valid", [], "NV8"], [[12019, 12019], "mapped", [40863]], [[12020, 12031], "disallowed"], [[12032, 12032], "mapped", [19968]], [[12033, 12033], "mapped", [20008]], [[12034, 12034], "mapped", [20022]], [[12035, 12035], "mapped", [20031]], [[12036, 12036], "mapped", [20057]], [[12037, 12037], "mapped", [20101]], [[12038, 12038], "mapped", [20108]], [[12039, 12039], "mapped", [20128]], [[12040, 12040], "mapped", [20154]], [[12041, 12041], "mapped", [20799]], [[12042, 12042], "mapped", [20837]], [[12043, 12043], "mapped", [20843]], [[12044, 12044], "mapped", [20866]], [[12045, 12045], "mapped", [20886]], [[12046, 12046], "mapped", [20907]], [[12047, 12047], "mapped", [20960]], [[12048, 12048], "mapped", [20981]], [[12049, 12049], "mapped", [20992]], [[12050, 12050], "mapped", [21147]], [[12051, 12051], "mapped", [21241]], [[12052, 12052], "mapped", [21269]], [[12053, 12053], "mapped", [21274]], [[12054, 12054], "mapped", [21304]], [[12055, 12055], "mapped", [21313]], [[12056, 12056], "mapped", [21340]], [[12057, 12057], "mapped", [21353]], [[12058, 12058], "mapped", [21378]], [[12059, 12059], "mapped", [21430]], [[12060, 12060], "mapped", [21448]], [[12061, 12061], "mapped", [21475]], [[12062, 12062], "mapped", [22231]], [[12063, 12063], "mapped", [22303]], [[12064, 12064], "mapped", [22763]], [[12065, 12065], "mapped", [22786]], [[12066, 12066], "mapped", [22794]], [[12067, 12067], "mapped", [22805]], [[12068, 12068], "mapped", [22823]], [[12069, 12069], "mapped", [22899]], [[12070, 12070], "mapped", [23376]], [[12071, 12071], "mapped", [23424]], [[12072, 12072], "mapped", [23544]], [[12073, 12073], "mapped", [23567]], [[12074, 12074], "mapped", [23586]], [[12075, 12075], "mapped", [23608]], [[12076, 12076], "mapped", [23662]], [[12077, 12077], "mapped", [23665]], [[12078, 12078], "mapped", [24027]], [[12079, 12079], "mapped", [24037]], [[12080, 12080], "mapped", [24049]], [[12081, 12081], "mapped", [24062]], [[12082, 12082], "mapped", [24178]], [[12083, 12083], "mapped", [24186]], [[12084, 12084], "mapped", [24191]], [[12085, 12085], "mapped", [24308]], [[12086, 12086], "mapped", [24318]], [[12087, 12087], "mapped", [24331]], [[12088, 12088], "mapped", [24339]], [[12089, 12089], "mapped", [24400]], [[12090, 12090], "mapped", [24417]], [[12091, 12091], "mapped", [24435]], [[12092, 12092], "mapped", [24515]], [[12093, 12093], "mapped", [25096]], [[12094, 12094], "mapped", [25142]], [[12095, 12095], "mapped", [25163]], [[12096, 12096], "mapped", [25903]], [[12097, 12097], "mapped", [25908]], [[12098, 12098], "mapped", [25991]], [[12099, 12099], "mapped", [26007]], [[12100, 12100], "mapped", [26020]], [[12101, 12101], "mapped", [26041]], [[12102, 12102], "mapped", [26080]], [[12103, 12103], "mapped", [26085]], [[12104, 12104], "mapped", [26352]], [[12105, 12105], "mapped", [26376]], [[12106, 12106], "mapped", [26408]], [[12107, 12107], "mapped", [27424]], [[12108, 12108], "mapped", [27490]], [[12109, 12109], "mapped", [27513]], [[12110, 12110], "mapped", [27571]], [[12111, 12111], "mapped", [27595]], [[12112, 12112], "mapped", [27604]], [[12113, 12113], "mapped", [27611]], [[12114, 12114], "mapped", [27663]], [[12115, 12115], "mapped", [27668]], [[12116, 12116], "mapped", [27700]], [[12117, 12117], "mapped", [28779]], [[12118, 12118], "mapped", [29226]], [[12119, 12119], "mapped", [29238]], [[12120, 12120], "mapped", [29243]], [[12121, 12121], "mapped", [29247]], [[12122, 12122], "mapped", [29255]], [[12123, 12123], "mapped", [29273]], [[12124, 12124], "mapped", [29275]], [[12125, 12125], "mapped", [29356]], [[12126, 12126], "mapped", [29572]], [[12127, 12127], "mapped", [29577]], [[12128, 12128], "mapped", [29916]], [[12129, 12129], "mapped", [29926]], [[12130, 12130], "mapped", [29976]], [[12131, 12131], "mapped", [29983]], [[12132, 12132], "mapped", [29992]], [[12133, 12133], "mapped", [3e4]], [[12134, 12134], "mapped", [30091]], [[12135, 12135], "mapped", [30098]], [[12136, 12136], "mapped", [30326]], [[12137, 12137], "mapped", [30333]], [[12138, 12138], "mapped", [30382]], [[12139, 12139], "mapped", [30399]], [[12140, 12140], "mapped", [30446]], [[12141, 12141], "mapped", [30683]], [[12142, 12142], "mapped", [30690]], [[12143, 12143], "mapped", [30707]], [[12144, 12144], "mapped", [31034]], [[12145, 12145], "mapped", [31160]], [[12146, 12146], "mapped", [31166]], [[12147, 12147], "mapped", [31348]], [[12148, 12148], "mapped", [31435]], [[12149, 12149], "mapped", [31481]], [[12150, 12150], "mapped", [31859]], [[12151, 12151], "mapped", [31992]], [[12152, 12152], "mapped", [32566]], [[12153, 12153], "mapped", [32593]], [[12154, 12154], "mapped", [32650]], [[12155, 12155], "mapped", [32701]], [[12156, 12156], "mapped", [32769]], [[12157, 12157], "mapped", [32780]], [[12158, 12158], "mapped", [32786]], [[12159, 12159], "mapped", [32819]], [[12160, 12160], "mapped", [32895]], [[12161, 12161], "mapped", [32905]], [[12162, 12162], "mapped", [33251]], [[12163, 12163], "mapped", [33258]], [[12164, 12164], "mapped", [33267]], [[12165, 12165], "mapped", [33276]], [[12166, 12166], "mapped", [33292]], [[12167, 12167], "mapped", [33307]], [[12168, 12168], "mapped", [33311]], [[12169, 12169], "mapped", [33390]], [[12170, 12170], "mapped", [33394]], [[12171, 12171], "mapped", [33400]], [[12172, 12172], "mapped", [34381]], [[12173, 12173], "mapped", [34411]], [[12174, 12174], "mapped", [34880]], [[12175, 12175], "mapped", [34892]], [[12176, 12176], "mapped", [34915]], [[12177, 12177], "mapped", [35198]], [[12178, 12178], "mapped", [35211]], [[12179, 12179], "mapped", [35282]], [[12180, 12180], "mapped", [35328]], [[12181, 12181], "mapped", [35895]], [[12182, 12182], "mapped", [35910]], [[12183, 12183], "mapped", [35925]], [[12184, 12184], "mapped", [35960]], [[12185, 12185], "mapped", [35997]], [[12186, 12186], "mapped", [36196]], [[12187, 12187], "mapped", [36208]], [[12188, 12188], "mapped", [36275]], [[12189, 12189], "mapped", [36523]], [[12190, 12190], "mapped", [36554]], [[12191, 12191], "mapped", [36763]], [[12192, 12192], "mapped", [36784]], [[12193, 12193], "mapped", [36789]], [[12194, 12194], "mapped", [37009]], [[12195, 12195], "mapped", [37193]], [[12196, 12196], "mapped", [37318]], [[12197, 12197], "mapped", [37324]], [[12198, 12198], "mapped", [37329]], [[12199, 12199], "mapped", [38263]], [[12200, 12200], "mapped", [38272]], [[12201, 12201], "mapped", [38428]], [[12202, 12202], "mapped", [38582]], [[12203, 12203], "mapped", [38585]], [[12204, 12204], "mapped", [38632]], [[12205, 12205], "mapped", [38737]], [[12206, 12206], "mapped", [38750]], [[12207, 12207], "mapped", [38754]], [[12208, 12208], "mapped", [38761]], [[12209, 12209], "mapped", [38859]], [[12210, 12210], "mapped", [38893]], [[12211, 12211], "mapped", [38899]], [[12212, 12212], "mapped", [38913]], [[12213, 12213], "mapped", [39080]], [[12214, 12214], "mapped", [39131]], [[12215, 12215], "mapped", [39135]], [[12216, 12216], "mapped", [39318]], [[12217, 12217], "mapped", [39321]], [[12218, 12218], "mapped", [39340]], [[12219, 12219], "mapped", [39592]], [[12220, 12220], "mapped", [39640]], [[12221, 12221], "mapped", [39647]], [[12222, 12222], "mapped", [39717]], [[12223, 12223], "mapped", [39727]], [[12224, 12224], "mapped", [39730]], [[12225, 12225], "mapped", [39740]], [[12226, 12226], "mapped", [39770]], [[12227, 12227], "mapped", [40165]], [[12228, 12228], "mapped", [40565]], [[12229, 12229], "mapped", [40575]], [[12230, 12230], "mapped", [40613]], [[12231, 12231], "mapped", [40635]], [[12232, 12232], "mapped", [40643]], [[12233, 12233], "mapped", [40653]], [[12234, 12234], "mapped", [40657]], [[12235, 12235], "mapped", [40697]], [[12236, 12236], "mapped", [40701]], [[12237, 12237], "mapped", [40718]], [[12238, 12238], "mapped", [40723]], [[12239, 12239], "mapped", [40736]], [[12240, 12240], "mapped", [40763]], [[12241, 12241], "mapped", [40778]], [[12242, 12242], "mapped", [40786]], [[12243, 12243], "mapped", [40845]], [[12244, 12244], "mapped", [40860]], [[12245, 12245], "mapped", [40864]], [[12246, 12271], "disallowed"], [[12272, 12283], "disallowed"], [[12284, 12287], "disallowed"], [[12288, 12288], "disallowed_STD3_mapped", [32]], [[12289, 12289], "valid", [], "NV8"], [[12290, 12290], "mapped", [46]], [[12291, 12292], "valid", [], "NV8"], [[12293, 12295], "valid"], [[12296, 12329], "valid", [], "NV8"], [[12330, 12333], "valid"], [[12334, 12341], "valid", [], "NV8"], [[12342, 12342], "mapped", [12306]], [[12343, 12343], "valid", [], "NV8"], [[12344, 12344], "mapped", [21313]], [[12345, 12345], "mapped", [21316]], [[12346, 12346], "mapped", [21317]], [[12347, 12347], "valid", [], "NV8"], [[12348, 12348], "valid"], [[12349, 12349], "valid", [], "NV8"], [[12350, 12350], "valid", [], "NV8"], [[12351, 12351], "valid", [], "NV8"], [[12352, 12352], "disallowed"], [[12353, 12436], "valid"], [[12437, 12438], "valid"], [[12439, 12440], "disallowed"], [[12441, 12442], "valid"], [[12443, 12443], "disallowed_STD3_mapped", [32, 12441]], [[12444, 12444], "disallowed_STD3_mapped", [32, 12442]], [[12445, 12446], "valid"], [[12447, 12447], "mapped", [12424, 12426]], [[12448, 12448], "valid", [], "NV8"], [[12449, 12542], "valid"], [[12543, 12543], "mapped", [12467, 12488]], [[12544, 12548], "disallowed"], [[12549, 12588], "valid"], [[12589, 12589], "valid"], [[12590, 12592], "disallowed"], [[12593, 12593], "mapped", [4352]], [[12594, 12594], "mapped", [4353]], [[12595, 12595], "mapped", [4522]], [[12596, 12596], "mapped", [4354]], [[12597, 12597], "mapped", [4524]], [[12598, 12598], "mapped", [4525]], [[12599, 12599], "mapped", [4355]], [[12600, 12600], "mapped", [4356]], [[12601, 12601], "mapped", [4357]], [[12602, 12602], "mapped", [4528]], [[12603, 12603], "mapped", [4529]], [[12604, 12604], "mapped", [4530]], [[12605, 12605], "mapped", [4531]], [[12606, 12606], "mapped", [4532]], [[12607, 12607], "mapped", [4533]], [[12608, 12608], "mapped", [4378]], [[12609, 12609], "mapped", [4358]], [[12610, 12610], "mapped", [4359]], [[12611, 12611], "mapped", [4360]], [[12612, 12612], "mapped", [4385]], [[12613, 12613], "mapped", [4361]], [[12614, 12614], "mapped", [4362]], [[12615, 12615], "mapped", [4363]], [[12616, 12616], "mapped", [4364]], [[12617, 12617], "mapped", [4365]], [[12618, 12618], "mapped", [4366]], [[12619, 12619], "mapped", [4367]], [[12620, 12620], "mapped", [4368]], [[12621, 12621], "mapped", [4369]], [[12622, 12622], "mapped", [4370]], [[12623, 12623], "mapped", [4449]], [[12624, 12624], "mapped", [4450]], [[12625, 12625], "mapped", [4451]], [[12626, 12626], "mapped", [4452]], [[12627, 12627], "mapped", [4453]], [[12628, 12628], "mapped", [4454]], [[12629, 12629], "mapped", [4455]], [[12630, 12630], "mapped", [4456]], [[12631, 12631], "mapped", [4457]], [[12632, 12632], "mapped", [4458]], [[12633, 12633], "mapped", [4459]], [[12634, 12634], "mapped", [4460]], [[12635, 12635], "mapped", [4461]], [[12636, 12636], "mapped", [4462]], [[12637, 12637], "mapped", [4463]], [[12638, 12638], "mapped", [4464]], [[12639, 12639], "mapped", [4465]], [[12640, 12640], "mapped", [4466]], [[12641, 12641], "mapped", [4467]], [[12642, 12642], "mapped", [4468]], [[12643, 12643], "mapped", [4469]], [[12644, 12644], "disallowed"], [[12645, 12645], "mapped", [4372]], [[12646, 12646], "mapped", [4373]], [[12647, 12647], "mapped", [4551]], [[12648, 12648], "mapped", [4552]], [[12649, 12649], "mapped", [4556]], [[12650, 12650], "mapped", [4558]], [[12651, 12651], "mapped", [4563]], [[12652, 12652], "mapped", [4567]], [[12653, 12653], "mapped", [4569]], [[12654, 12654], "mapped", [4380]], [[12655, 12655], "mapped", [4573]], [[12656, 12656], "mapped", [4575]], [[12657, 12657], "mapped", [4381]], [[12658, 12658], "mapped", [4382]], [[12659, 12659], "mapped", [4384]], [[12660, 12660], "mapped", [4386]], [[12661, 12661], "mapped", [4387]], [[12662, 12662], "mapped", [4391]], [[12663, 12663], "mapped", [4393]], [[12664, 12664], "mapped", [4395]], [[12665, 12665], "mapped", [4396]], [[12666, 12666], "mapped", [4397]], [[12667, 12667], "mapped", [4398]], [[12668, 12668], "mapped", [4399]], [[12669, 12669], "mapped", [4402]], [[12670, 12670], "mapped", [4406]], [[12671, 12671], "mapped", [4416]], [[12672, 12672], "mapped", [4423]], [[12673, 12673], "mapped", [4428]], [[12674, 12674], "mapped", [4593]], [[12675, 12675], "mapped", [4594]], [[12676, 12676], "mapped", [4439]], [[12677, 12677], "mapped", [4440]], [[12678, 12678], "mapped", [4441]], [[12679, 12679], "mapped", [4484]], [[12680, 12680], "mapped", [4485]], [[12681, 12681], "mapped", [4488]], [[12682, 12682], "mapped", [4497]], [[12683, 12683], "mapped", [4498]], [[12684, 12684], "mapped", [4500]], [[12685, 12685], "mapped", [4510]], [[12686, 12686], "mapped", [4513]], [[12687, 12687], "disallowed"], [[12688, 12689], "valid", [], "NV8"], [[12690, 12690], "mapped", [19968]], [[12691, 12691], "mapped", [20108]], [[12692, 12692], "mapped", [19977]], [[12693, 12693], "mapped", [22235]], [[12694, 12694], "mapped", [19978]], [[12695, 12695], "mapped", [20013]], [[12696, 12696], "mapped", [19979]], [[12697, 12697], "mapped", [30002]], [[12698, 12698], "mapped", [20057]], [[12699, 12699], "mapped", [19993]], [[12700, 12700], "mapped", [19969]], [[12701, 12701], "mapped", [22825]], [[12702, 12702], "mapped", [22320]], [[12703, 12703], "mapped", [20154]], [[12704, 12727], "valid"], [[12728, 12730], "valid"], [[12731, 12735], "disallowed"], [[12736, 12751], "valid", [], "NV8"], [[12752, 12771], "valid", [], "NV8"], [[12772, 12783], "disallowed"], [[12784, 12799], "valid"], [[12800, 12800], "disallowed_STD3_mapped", [40, 4352, 41]], [[12801, 12801], "disallowed_STD3_mapped", [40, 4354, 41]], [[12802, 12802], "disallowed_STD3_mapped", [40, 4355, 41]], [[12803, 12803], "disallowed_STD3_mapped", [40, 4357, 41]], [[12804, 12804], "disallowed_STD3_mapped", [40, 4358, 41]], [[12805, 12805], "disallowed_STD3_mapped", [40, 4359, 41]], [[12806, 12806], "disallowed_STD3_mapped", [40, 4361, 41]], [[12807, 12807], "disallowed_STD3_mapped", [40, 4363, 41]], [[12808, 12808], "disallowed_STD3_mapped", [40, 4364, 41]], [[12809, 12809], "disallowed_STD3_mapped", [40, 4366, 41]], [[12810, 12810], "disallowed_STD3_mapped", [40, 4367, 41]], [[12811, 12811], "disallowed_STD3_mapped", [40, 4368, 41]], [[12812, 12812], "disallowed_STD3_mapped", [40, 4369, 41]], [[12813, 12813], "disallowed_STD3_mapped", [40, 4370, 41]], [[12814, 12814], "disallowed_STD3_mapped", [40, 44032, 41]], [[12815, 12815], "disallowed_STD3_mapped", [40, 45208, 41]], [[12816, 12816], "disallowed_STD3_mapped", [40, 45796, 41]], [[12817, 12817], "disallowed_STD3_mapped", [40, 46972, 41]], [[12818, 12818], "disallowed_STD3_mapped", [40, 47560, 41]], [[12819, 12819], "disallowed_STD3_mapped", [40, 48148, 41]], [[12820, 12820], "disallowed_STD3_mapped", [40, 49324, 41]], [[12821, 12821], "disallowed_STD3_mapped", [40, 50500, 41]], [[12822, 12822], "disallowed_STD3_mapped", [40, 51088, 41]], [[12823, 12823], "disallowed_STD3_mapped", [40, 52264, 41]], [[12824, 12824], "disallowed_STD3_mapped", [40, 52852, 41]], [[12825, 12825], "disallowed_STD3_mapped", [40, 53440, 41]], [[12826, 12826], "disallowed_STD3_mapped", [40, 54028, 41]], [[12827, 12827], "disallowed_STD3_mapped", [40, 54616, 41]], [[12828, 12828], "disallowed_STD3_mapped", [40, 51452, 41]], [[12829, 12829], "disallowed_STD3_mapped", [40, 50724, 51204, 41]], [[12830, 12830], "disallowed_STD3_mapped", [40, 50724, 54980, 41]], [[12831, 12831], "disallowed"], [[12832, 12832], "disallowed_STD3_mapped", [40, 19968, 41]], [[12833, 12833], "disallowed_STD3_mapped", [40, 20108, 41]], [[12834, 12834], "disallowed_STD3_mapped", [40, 19977, 41]], [[12835, 12835], "disallowed_STD3_mapped", [40, 22235, 41]], [[12836, 12836], "disallowed_STD3_mapped", [40, 20116, 41]], [[12837, 12837], "disallowed_STD3_mapped", [40, 20845, 41]], [[12838, 12838], "disallowed_STD3_mapped", [40, 19971, 41]], [[12839, 12839], "disallowed_STD3_mapped", [40, 20843, 41]], [[12840, 12840], "disallowed_STD3_mapped", [40, 20061, 41]], [[12841, 12841], "disallowed_STD3_mapped", [40, 21313, 41]], [[12842, 12842], "disallowed_STD3_mapped", [40, 26376, 41]], [[12843, 12843], "disallowed_STD3_mapped", [40, 28779, 41]], [[12844, 12844], "disallowed_STD3_mapped", [40, 27700, 41]], [[12845, 12845], "disallowed_STD3_mapped", [40, 26408, 41]], [[12846, 12846], "disallowed_STD3_mapped", [40, 37329, 41]], [[12847, 12847], "disallowed_STD3_mapped", [40, 22303, 41]], [[12848, 12848], "disallowed_STD3_mapped", [40, 26085, 41]], [[12849, 12849], "disallowed_STD3_mapped", [40, 26666, 41]], [[12850, 12850], "disallowed_STD3_mapped", [40, 26377, 41]], [[12851, 12851], "disallowed_STD3_mapped", [40, 31038, 41]], [[12852, 12852], "disallowed_STD3_mapped", [40, 21517, 41]], [[12853, 12853], "disallowed_STD3_mapped", [40, 29305, 41]], [[12854, 12854], "disallowed_STD3_mapped", [40, 36001, 41]], [[12855, 12855], "disallowed_STD3_mapped", [40, 31069, 41]], [[12856, 12856], "disallowed_STD3_mapped", [40, 21172, 41]], [[12857, 12857], "disallowed_STD3_mapped", [40, 20195, 41]], [[12858, 12858], "disallowed_STD3_mapped", [40, 21628, 41]], [[12859, 12859], "disallowed_STD3_mapped", [40, 23398, 41]], [[12860, 12860], "disallowed_STD3_mapped", [40, 30435, 41]], [[12861, 12861], "disallowed_STD3_mapped", [40, 20225, 41]], [[12862, 12862], "disallowed_STD3_mapped", [40, 36039, 41]], [[12863, 12863], "disallowed_STD3_mapped", [40, 21332, 41]], [[12864, 12864], "disallowed_STD3_mapped", [40, 31085, 41]], [[12865, 12865], "disallowed_STD3_mapped", [40, 20241, 41]], [[12866, 12866], "disallowed_STD3_mapped", [40, 33258, 41]], [[12867, 12867], "disallowed_STD3_mapped", [40, 33267, 41]], [[12868, 12868], "mapped", [21839]], [[12869, 12869], "mapped", [24188]], [[12870, 12870], "mapped", [25991]], [[12871, 12871], "mapped", [31631]], [[12872, 12879], "valid", [], "NV8"], [[12880, 12880], "mapped", [112, 116, 101]], [[12881, 12881], "mapped", [50, 49]], [[12882, 12882], "mapped", [50, 50]], [[12883, 12883], "mapped", [50, 51]], [[12884, 12884], "mapped", [50, 52]], [[12885, 12885], "mapped", [50, 53]], [[12886, 12886], "mapped", [50, 54]], [[12887, 12887], "mapped", [50, 55]], [[12888, 12888], "mapped", [50, 56]], [[12889, 12889], "mapped", [50, 57]], [[12890, 12890], "mapped", [51, 48]], [[12891, 12891], "mapped", [51, 49]], [[12892, 12892], "mapped", [51, 50]], [[12893, 12893], "mapped", [51, 51]], [[12894, 12894], "mapped", [51, 52]], [[12895, 12895], "mapped", [51, 53]], [[12896, 12896], "mapped", [4352]], [[12897, 12897], "mapped", [4354]], [[12898, 12898], "mapped", [4355]], [[12899, 12899], "mapped", [4357]], [[12900, 12900], "mapped", [4358]], [[12901, 12901], "mapped", [4359]], [[12902, 12902], "mapped", [4361]], [[12903, 12903], "mapped", [4363]], [[12904, 12904], "mapped", [4364]], [[12905, 12905], "mapped", [4366]], [[12906, 12906], "mapped", [4367]], [[12907, 12907], "mapped", [4368]], [[12908, 12908], "mapped", [4369]], [[12909, 12909], "mapped", [4370]], [[12910, 12910], "mapped", [44032]], [[12911, 12911], "mapped", [45208]], [[12912, 12912], "mapped", [45796]], [[12913, 12913], "mapped", [46972]], [[12914, 12914], "mapped", [47560]], [[12915, 12915], "mapped", [48148]], [[12916, 12916], "mapped", [49324]], [[12917, 12917], "mapped", [50500]], [[12918, 12918], "mapped", [51088]], [[12919, 12919], "mapped", [52264]], [[12920, 12920], "mapped", [52852]], [[12921, 12921], "mapped", [53440]], [[12922, 12922], "mapped", [54028]], [[12923, 12923], "mapped", [54616]], [[12924, 12924], "mapped", [52280, 44256]], [[12925, 12925], "mapped", [51452, 51032]], [[12926, 12926], "mapped", [50864]], [[12927, 12927], "valid", [], "NV8"], [[12928, 12928], "mapped", [19968]], [[12929, 12929], "mapped", [20108]], [[12930, 12930], "mapped", [19977]], [[12931, 12931], "mapped", [22235]], [[12932, 12932], "mapped", [20116]], [[12933, 12933], "mapped", [20845]], [[12934, 12934], "mapped", [19971]], [[12935, 12935], "mapped", [20843]], [[12936, 12936], "mapped", [20061]], [[12937, 12937], "mapped", [21313]], [[12938, 12938], "mapped", [26376]], [[12939, 12939], "mapped", [28779]], [[12940, 12940], "mapped", [27700]], [[12941, 12941], "mapped", [26408]], [[12942, 12942], "mapped", [37329]], [[12943, 12943], "mapped", [22303]], [[12944, 12944], "mapped", [26085]], [[12945, 12945], "mapped", [26666]], [[12946, 12946], "mapped", [26377]], [[12947, 12947], "mapped", [31038]], [[12948, 12948], "mapped", [21517]], [[12949, 12949], "mapped", [29305]], [[12950, 12950], "mapped", [36001]], [[12951, 12951], "mapped", [31069]], [[12952, 12952], "mapped", [21172]], [[12953, 12953], "mapped", [31192]], [[12954, 12954], "mapped", [30007]], [[12955, 12955], "mapped", [22899]], [[12956, 12956], "mapped", [36969]], [[12957, 12957], "mapped", [20778]], [[12958, 12958], "mapped", [21360]], [[12959, 12959], "mapped", [27880]], [[12960, 12960], "mapped", [38917]], [[12961, 12961], "mapped", [20241]], [[12962, 12962], "mapped", [20889]], [[12963, 12963], "mapped", [27491]], [[12964, 12964], "mapped", [19978]], [[12965, 12965], "mapped", [20013]], [[12966, 12966], "mapped", [19979]], [[12967, 12967], "mapped", [24038]], [[12968, 12968], "mapped", [21491]], [[12969, 12969], "mapped", [21307]], [[12970, 12970], "mapped", [23447]], [[12971, 12971], "mapped", [23398]], [[12972, 12972], "mapped", [30435]], [[12973, 12973], "mapped", [20225]], [[12974, 12974], "mapped", [36039]], [[12975, 12975], "mapped", [21332]], [[12976, 12976], "mapped", [22812]], [[12977, 12977], "mapped", [51, 54]], [[12978, 12978], "mapped", [51, 55]], [[12979, 12979], "mapped", [51, 56]], [[12980, 12980], "mapped", [51, 57]], [[12981, 12981], "mapped", [52, 48]], [[12982, 12982], "mapped", [52, 49]], [[12983, 12983], "mapped", [52, 50]], [[12984, 12984], "mapped", [52, 51]], [[12985, 12985], "mapped", [52, 52]], [[12986, 12986], "mapped", [52, 53]], [[12987, 12987], "mapped", [52, 54]], [[12988, 12988], "mapped", [52, 55]], [[12989, 12989], "mapped", [52, 56]], [[12990, 12990], "mapped", [52, 57]], [[12991, 12991], "mapped", [53, 48]], [[12992, 12992], "mapped", [49, 26376]], [[12993, 12993], "mapped", [50, 26376]], [[12994, 12994], "mapped", [51, 26376]], [[12995, 12995], "mapped", [52, 26376]], [[12996, 12996], "mapped", [53, 26376]], [[12997, 12997], "mapped", [54, 26376]], [[12998, 12998], "mapped", [55, 26376]], [[12999, 12999], "mapped", [56, 26376]], [[13e3, 13e3], "mapped", [57, 26376]], [[13001, 13001], "mapped", [49, 48, 26376]], [[13002, 13002], "mapped", [49, 49, 26376]], [[13003, 13003], "mapped", [49, 50, 26376]], [[13004, 13004], "mapped", [104, 103]], [[13005, 13005], "mapped", [101, 114, 103]], [[13006, 13006], "mapped", [101, 118]], [[13007, 13007], "mapped", [108, 116, 100]], [[13008, 13008], "mapped", [12450]], [[13009, 13009], "mapped", [12452]], [[13010, 13010], "mapped", [12454]], [[13011, 13011], "mapped", [12456]], [[13012, 13012], "mapped", [12458]], [[13013, 13013], "mapped", [12459]], [[13014, 13014], "mapped", [12461]], [[13015, 13015], "mapped", [12463]], [[13016, 13016], "mapped", [12465]], [[13017, 13017], "mapped", [12467]], [[13018, 13018], "mapped", [12469]], [[13019, 13019], "mapped", [12471]], [[13020, 13020], "mapped", [12473]], [[13021, 13021], "mapped", [12475]], [[13022, 13022], "mapped", [12477]], [[13023, 13023], "mapped", [12479]], [[13024, 13024], "mapped", [12481]], [[13025, 13025], "mapped", [12484]], [[13026, 13026], "mapped", [12486]], [[13027, 13027], "mapped", [12488]], [[13028, 13028], "mapped", [12490]], [[13029, 13029], "mapped", [12491]], [[13030, 13030], "mapped", [12492]], [[13031, 13031], "mapped", [12493]], [[13032, 13032], "mapped", [12494]], [[13033, 13033], "mapped", [12495]], [[13034, 13034], "mapped", [12498]], [[13035, 13035], "mapped", [12501]], [[13036, 13036], "mapped", [12504]], [[13037, 13037], "mapped", [12507]], [[13038, 13038], "mapped", [12510]], [[13039, 13039], "mapped", [12511]], [[13040, 13040], "mapped", [12512]], [[13041, 13041], "mapped", [12513]], [[13042, 13042], "mapped", [12514]], [[13043, 13043], "mapped", [12516]], [[13044, 13044], "mapped", [12518]], [[13045, 13045], "mapped", [12520]], [[13046, 13046], "mapped", [12521]], [[13047, 13047], "mapped", [12522]], [[13048, 13048], "mapped", [12523]], [[13049, 13049], "mapped", [12524]], [[13050, 13050], "mapped", [12525]], [[13051, 13051], "mapped", [12527]], [[13052, 13052], "mapped", [12528]], [[13053, 13053], "mapped", [12529]], [[13054, 13054], "mapped", [12530]], [[13055, 13055], "disallowed"], [[13056, 13056], "mapped", [12450, 12497, 12540, 12488]], [[13057, 13057], "mapped", [12450, 12523, 12501, 12449]], [[13058, 13058], "mapped", [12450, 12531, 12506, 12450]], [[13059, 13059], "mapped", [12450, 12540, 12523]], [[13060, 13060], "mapped", [12452, 12491, 12531, 12464]], [[13061, 13061], "mapped", [12452, 12531, 12481]], [[13062, 13062], "mapped", [12454, 12457, 12531]], [[13063, 13063], "mapped", [12456, 12473, 12463, 12540, 12489]], [[13064, 13064], "mapped", [12456, 12540, 12459, 12540]], [[13065, 13065], "mapped", [12458, 12531, 12473]], [[13066, 13066], "mapped", [12458, 12540, 12512]], [[13067, 13067], "mapped", [12459, 12452, 12522]], [[13068, 13068], "mapped", [12459, 12521, 12483, 12488]], [[13069, 13069], "mapped", [12459, 12525, 12522, 12540]], [[13070, 13070], "mapped", [12460, 12525, 12531]], [[13071, 13071], "mapped", [12460, 12531, 12510]], [[13072, 13072], "mapped", [12462, 12460]], [[13073, 13073], "mapped", [12462, 12491, 12540]], [[13074, 13074], "mapped", [12461, 12517, 12522, 12540]], [[13075, 13075], "mapped", [12462, 12523, 12480, 12540]], [[13076, 13076], "mapped", [12461, 12525]], [[13077, 13077], "mapped", [12461, 12525, 12464, 12521, 12512]], [[13078, 13078], "mapped", [12461, 12525, 12513, 12540, 12488, 12523]], [[13079, 13079], "mapped", [12461, 12525, 12527, 12483, 12488]], [[13080, 13080], "mapped", [12464, 12521, 12512]], [[13081, 13081], "mapped", [12464, 12521, 12512, 12488, 12531]], [[13082, 13082], "mapped", [12463, 12523, 12476, 12452, 12525]], [[13083, 13083], "mapped", [12463, 12525, 12540, 12493]], [[13084, 13084], "mapped", [12465, 12540, 12473]], [[13085, 13085], "mapped", [12467, 12523, 12490]], [[13086, 13086], "mapped", [12467, 12540, 12509]], [[13087, 13087], "mapped", [12469, 12452, 12463, 12523]], [[13088, 13088], "mapped", [12469, 12531, 12481, 12540, 12512]], [[13089, 13089], "mapped", [12471, 12522, 12531, 12464]], [[13090, 13090], "mapped", [12475, 12531, 12481]], [[13091, 13091], "mapped", [12475, 12531, 12488]], [[13092, 13092], "mapped", [12480, 12540, 12473]], [[13093, 13093], "mapped", [12487, 12471]], [[13094, 13094], "mapped", [12489, 12523]], [[13095, 13095], "mapped", [12488, 12531]], [[13096, 13096], "mapped", [12490, 12494]], [[13097, 13097], "mapped", [12494, 12483, 12488]], [[13098, 13098], "mapped", [12495, 12452, 12484]], [[13099, 13099], "mapped", [12497, 12540, 12475, 12531, 12488]], [[13100, 13100], "mapped", [12497, 12540, 12484]], [[13101, 13101], "mapped", [12496, 12540, 12524, 12523]], [[13102, 13102], "mapped", [12500, 12450, 12473, 12488, 12523]], [[13103, 13103], "mapped", [12500, 12463, 12523]], [[13104, 13104], "mapped", [12500, 12467]], [[13105, 13105], "mapped", [12499, 12523]], [[13106, 13106], "mapped", [12501, 12449, 12521, 12483, 12489]], [[13107, 13107], "mapped", [12501, 12451, 12540, 12488]], [[13108, 13108], "mapped", [12502, 12483, 12471, 12455, 12523]], [[13109, 13109], "mapped", [12501, 12521, 12531]], [[13110, 13110], "mapped", [12504, 12463, 12479, 12540, 12523]], [[13111, 13111], "mapped", [12506, 12477]], [[13112, 13112], "mapped", [12506, 12491, 12498]], [[13113, 13113], "mapped", [12504, 12523, 12484]], [[13114, 13114], "mapped", [12506, 12531, 12473]], [[13115, 13115], "mapped", [12506, 12540, 12472]], [[13116, 13116], "mapped", [12505, 12540, 12479]], [[13117, 13117], "mapped", [12509, 12452, 12531, 12488]], [[13118, 13118], "mapped", [12508, 12523, 12488]], [[13119, 13119], "mapped", [12507, 12531]], [[13120, 13120], "mapped", [12509, 12531, 12489]], [[13121, 13121], "mapped", [12507, 12540, 12523]], [[13122, 13122], "mapped", [12507, 12540, 12531]], [[13123, 13123], "mapped", [12510, 12452, 12463, 12525]], [[13124, 13124], "mapped", [12510, 12452, 12523]], [[13125, 13125], "mapped", [12510, 12483, 12495]], [[13126, 13126], "mapped", [12510, 12523, 12463]], [[13127, 13127], "mapped", [12510, 12531, 12471, 12519, 12531]], [[13128, 13128], "mapped", [12511, 12463, 12525, 12531]], [[13129, 13129], "mapped", [12511, 12522]], [[13130, 13130], "mapped", [12511, 12522, 12496, 12540, 12523]], [[13131, 13131], "mapped", [12513, 12460]], [[13132, 13132], "mapped", [12513, 12460, 12488, 12531]], [[13133, 13133], "mapped", [12513, 12540, 12488, 12523]], [[13134, 13134], "mapped", [12516, 12540, 12489]], [[13135, 13135], "mapped", [12516, 12540, 12523]], [[13136, 13136], "mapped", [12518, 12450, 12531]], [[13137, 13137], "mapped", [12522, 12483, 12488, 12523]], [[13138, 13138], "mapped", [12522, 12521]], [[13139, 13139], "mapped", [12523, 12500, 12540]], [[13140, 13140], "mapped", [12523, 12540, 12502, 12523]], [[13141, 13141], "mapped", [12524, 12512]], [[13142, 13142], "mapped", [12524, 12531, 12488, 12466, 12531]], [[13143, 13143], "mapped", [12527, 12483, 12488]], [[13144, 13144], "mapped", [48, 28857]], [[13145, 13145], "mapped", [49, 28857]], [[13146, 13146], "mapped", [50, 28857]], [[13147, 13147], "mapped", [51, 28857]], [[13148, 13148], "mapped", [52, 28857]], [[13149, 13149], "mapped", [53, 28857]], [[13150, 13150], "mapped", [54, 28857]], [[13151, 13151], "mapped", [55, 28857]], [[13152, 13152], "mapped", [56, 28857]], [[13153, 13153], "mapped", [57, 28857]], [[13154, 13154], "mapped", [49, 48, 28857]], [[13155, 13155], "mapped", [49, 49, 28857]], [[13156, 13156], "mapped", [49, 50, 28857]], [[13157, 13157], "mapped", [49, 51, 28857]], [[13158, 13158], "mapped", [49, 52, 28857]], [[13159, 13159], "mapped", [49, 53, 28857]], [[13160, 13160], "mapped", [49, 54, 28857]], [[13161, 13161], "mapped", [49, 55, 28857]], [[13162, 13162], "mapped", [49, 56, 28857]], [[13163, 13163], "mapped", [49, 57, 28857]], [[13164, 13164], "mapped", [50, 48, 28857]], [[13165, 13165], "mapped", [50, 49, 28857]], [[13166, 13166], "mapped", [50, 50, 28857]], [[13167, 13167], "mapped", [50, 51, 28857]], [[13168, 13168], "mapped", [50, 52, 28857]], [[13169, 13169], "mapped", [104, 112, 97]], [[13170, 13170], "mapped", [100, 97]], [[13171, 13171], "mapped", [97, 117]], [[13172, 13172], "mapped", [98, 97, 114]], [[13173, 13173], "mapped", [111, 118]], [[13174, 13174], "mapped", [112, 99]], [[13175, 13175], "mapped", [100, 109]], [[13176, 13176], "mapped", [100, 109, 50]], [[13177, 13177], "mapped", [100, 109, 51]], [[13178, 13178], "mapped", [105, 117]], [[13179, 13179], "mapped", [24179, 25104]], [[13180, 13180], "mapped", [26157, 21644]], [[13181, 13181], "mapped", [22823, 27491]], [[13182, 13182], "mapped", [26126, 27835]], [[13183, 13183], "mapped", [26666, 24335, 20250, 31038]], [[13184, 13184], "mapped", [112, 97]], [[13185, 13185], "mapped", [110, 97]], [[13186, 13186], "mapped", [956, 97]], [[13187, 13187], "mapped", [109, 97]], [[13188, 13188], "mapped", [107, 97]], [[13189, 13189], "mapped", [107, 98]], [[13190, 13190], "mapped", [109, 98]], [[13191, 13191], "mapped", [103, 98]], [[13192, 13192], "mapped", [99, 97, 108]], [[13193, 13193], "mapped", [107, 99, 97, 108]], [[13194, 13194], "mapped", [112, 102]], [[13195, 13195], "mapped", [110, 102]], [[13196, 13196], "mapped", [956, 102]], [[13197, 13197], "mapped", [956, 103]], [[13198, 13198], "mapped", [109, 103]], [[13199, 13199], "mapped", [107, 103]], [[13200, 13200], "mapped", [104, 122]], [[13201, 13201], "mapped", [107, 104, 122]], [[13202, 13202], "mapped", [109, 104, 122]], [[13203, 13203], "mapped", [103, 104, 122]], [[13204, 13204], "mapped", [116, 104, 122]], [[13205, 13205], "mapped", [956, 108]], [[13206, 13206], "mapped", [109, 108]], [[13207, 13207], "mapped", [100, 108]], [[13208, 13208], "mapped", [107, 108]], [[13209, 13209], "mapped", [102, 109]], [[13210, 13210], "mapped", [110, 109]], [[13211, 13211], "mapped", [956, 109]], [[13212, 13212], "mapped", [109, 109]], [[13213, 13213], "mapped", [99, 109]], [[13214, 13214], "mapped", [107, 109]], [[13215, 13215], "mapped", [109, 109, 50]], [[13216, 13216], "mapped", [99, 109, 50]], [[13217, 13217], "mapped", [109, 50]], [[13218, 13218], "mapped", [107, 109, 50]], [[13219, 13219], "mapped", [109, 109, 51]], [[13220, 13220], "mapped", [99, 109, 51]], [[13221, 13221], "mapped", [109, 51]], [[13222, 13222], "mapped", [107, 109, 51]], [[13223, 13223], "mapped", [109, 8725, 115]], [[13224, 13224], "mapped", [109, 8725, 115, 50]], [[13225, 13225], "mapped", [112, 97]], [[13226, 13226], "mapped", [107, 112, 97]], [[13227, 13227], "mapped", [109, 112, 97]], [[13228, 13228], "mapped", [103, 112, 97]], [[13229, 13229], "mapped", [114, 97, 100]], [[13230, 13230], "mapped", [114, 97, 100, 8725, 115]], [[13231, 13231], "mapped", [114, 97, 100, 8725, 115, 50]], [[13232, 13232], "mapped", [112, 115]], [[13233, 13233], "mapped", [110, 115]], [[13234, 13234], "mapped", [956, 115]], [[13235, 13235], "mapped", [109, 115]], [[13236, 13236], "mapped", [112, 118]], [[13237, 13237], "mapped", [110, 118]], [[13238, 13238], "mapped", [956, 118]], [[13239, 13239], "mapped", [109, 118]], [[13240, 13240], "mapped", [107, 118]], [[13241, 13241], "mapped", [109, 118]], [[13242, 13242], "mapped", [112, 119]], [[13243, 13243], "mapped", [110, 119]], [[13244, 13244], "mapped", [956, 119]], [[13245, 13245], "mapped", [109, 119]], [[13246, 13246], "mapped", [107, 119]], [[13247, 13247], "mapped", [109, 119]], [[13248, 13248], "mapped", [107, 969]], [[13249, 13249], "mapped", [109, 969]], [[13250, 13250], "disallowed"], [[13251, 13251], "mapped", [98, 113]], [[13252, 13252], "mapped", [99, 99]], [[13253, 13253], "mapped", [99, 100]], [[13254, 13254], "mapped", [99, 8725, 107, 103]], [[13255, 13255], "disallowed"], [[13256, 13256], "mapped", [100, 98]], [[13257, 13257], "mapped", [103, 121]], [[13258, 13258], "mapped", [104, 97]], [[13259, 13259], "mapped", [104, 112]], [[13260, 13260], "mapped", [105, 110]], [[13261, 13261], "mapped", [107, 107]], [[13262, 13262], "mapped", [107, 109]], [[13263, 13263], "mapped", [107, 116]], [[13264, 13264], "mapped", [108, 109]], [[13265, 13265], "mapped", [108, 110]], [[13266, 13266], "mapped", [108, 111, 103]], [[13267, 13267], "mapped", [108, 120]], [[13268, 13268], "mapped", [109, 98]], [[13269, 13269], "mapped", [109, 105, 108]], [[13270, 13270], "mapped", [109, 111, 108]], [[13271, 13271], "mapped", [112, 104]], [[13272, 13272], "disallowed"], [[13273, 13273], "mapped", [112, 112, 109]], [[13274, 13274], "mapped", [112, 114]], [[13275, 13275], "mapped", [115, 114]], [[13276, 13276], "mapped", [115, 118]], [[13277, 13277], "mapped", [119, 98]], [[13278, 13278], "mapped", [118, 8725, 109]], [[13279, 13279], "mapped", [97, 8725, 109]], [[13280, 13280], "mapped", [49, 26085]], [[13281, 13281], "mapped", [50, 26085]], [[13282, 13282], "mapped", [51, 26085]], [[13283, 13283], "mapped", [52, 26085]], [[13284, 13284], "mapped", [53, 26085]], [[13285, 13285], "mapped", [54, 26085]], [[13286, 13286], "mapped", [55, 26085]], [[13287, 13287], "mapped", [56, 26085]], [[13288, 13288], "mapped", [57, 26085]], [[13289, 13289], "mapped", [49, 48, 26085]], [[13290, 13290], "mapped", [49, 49, 26085]], [[13291, 13291], "mapped", [49, 50, 26085]], [[13292, 13292], "mapped", [49, 51, 26085]], [[13293, 13293], "mapped", [49, 52, 26085]], [[13294, 13294], "mapped", [49, 53, 26085]], [[13295, 13295], "mapped", [49, 54, 26085]], [[13296, 13296], "mapped", [49, 55, 26085]], [[13297, 13297], "mapped", [49, 56, 26085]], [[13298, 13298], "mapped", [49, 57, 26085]], [[13299, 13299], "mapped", [50, 48, 26085]], [[13300, 13300], "mapped", [50, 49, 26085]], [[13301, 13301], "mapped", [50, 50, 26085]], [[13302, 13302], "mapped", [50, 51, 26085]], [[13303, 13303], "mapped", [50, 52, 26085]], [[13304, 13304], "mapped", [50, 53, 26085]], [[13305, 13305], "mapped", [50, 54, 26085]], [[13306, 13306], "mapped", [50, 55, 26085]], [[13307, 13307], "mapped", [50, 56, 26085]], [[13308, 13308], "mapped", [50, 57, 26085]], [[13309, 13309], "mapped", [51, 48, 26085]], [[13310, 13310], "mapped", [51, 49, 26085]], [[13311, 13311], "mapped", [103, 97, 108]], [[13312, 19893], "valid"], [[19894, 19903], "disallowed"], [[19904, 19967], "valid", [], "NV8"], [[19968, 40869], "valid"], [[40870, 40891], "valid"], [[40892, 40899], "valid"], [[40900, 40907], "valid"], [[40908, 40908], "valid"], [[40909, 40917], "valid"], [[40918, 40959], "disallowed"], [[40960, 42124], "valid"], [[42125, 42127], "disallowed"], [[42128, 42145], "valid", [], "NV8"], [[42146, 42147], "valid", [], "NV8"], [[42148, 42163], "valid", [], "NV8"], [[42164, 42164], "valid", [], "NV8"], [[42165, 42176], "valid", [], "NV8"], [[42177, 42177], "valid", [], "NV8"], [[42178, 42180], "valid", [], "NV8"], [[42181, 42181], "valid", [], "NV8"], [[42182, 42182], "valid", [], "NV8"], [[42183, 42191], "disallowed"], [[42192, 42237], "valid"], [[42238, 42239], "valid", [], "NV8"], [[42240, 42508], "valid"], [[42509, 42511], "valid", [], "NV8"], [[42512, 42539], "valid"], [[42540, 42559], "disallowed"], [[42560, 42560], "mapped", [42561]], [[42561, 42561], "valid"], [[42562, 42562], "mapped", [42563]], [[42563, 42563], "valid"], [[42564, 42564], "mapped", [42565]], [[42565, 42565], "valid"], [[42566, 42566], "mapped", [42567]], [[42567, 42567], "valid"], [[42568, 42568], "mapped", [42569]], [[42569, 42569], "valid"], [[42570, 42570], "mapped", [42571]], [[42571, 42571], "valid"], [[42572, 42572], "mapped", [42573]], [[42573, 42573], "valid"], [[42574, 42574], "mapped", [42575]], [[42575, 42575], "valid"], [[42576, 42576], "mapped", [42577]], [[42577, 42577], "valid"], [[42578, 42578], "mapped", [42579]], [[42579, 42579], "valid"], [[42580, 42580], "mapped", [42581]], [[42581, 42581], "valid"], [[42582, 42582], "mapped", [42583]], [[42583, 42583], "valid"], [[42584, 42584], "mapped", [42585]], [[42585, 42585], "valid"], [[42586, 42586], "mapped", [42587]], [[42587, 42587], "valid"], [[42588, 42588], "mapped", [42589]], [[42589, 42589], "valid"], [[42590, 42590], "mapped", [42591]], [[42591, 42591], "valid"], [[42592, 42592], "mapped", [42593]], [[42593, 42593], "valid"], [[42594, 42594], "mapped", [42595]], [[42595, 42595], "valid"], [[42596, 42596], "mapped", [42597]], [[42597, 42597], "valid"], [[42598, 42598], "mapped", [42599]], [[42599, 42599], "valid"], [[42600, 42600], "mapped", [42601]], [[42601, 42601], "valid"], [[42602, 42602], "mapped", [42603]], [[42603, 42603], "valid"], [[42604, 42604], "mapped", [42605]], [[42605, 42607], "valid"], [[42608, 42611], "valid", [], "NV8"], [[42612, 42619], "valid"], [[42620, 42621], "valid"], [[42622, 42622], "valid", [], "NV8"], [[42623, 42623], "valid"], [[42624, 42624], "mapped", [42625]], [[42625, 42625], "valid"], [[42626, 42626], "mapped", [42627]], [[42627, 42627], "valid"], [[42628, 42628], "mapped", [42629]], [[42629, 42629], "valid"], [[42630, 42630], "mapped", [42631]], [[42631, 42631], "valid"], [[42632, 42632], "mapped", [42633]], [[42633, 42633], "valid"], [[42634, 42634], "mapped", [42635]], [[42635, 42635], "valid"], [[42636, 42636], "mapped", [42637]], [[42637, 42637], "valid"], [[42638, 42638], "mapped", [42639]], [[42639, 42639], "valid"], [[42640, 42640], "mapped", [42641]], [[42641, 42641], "valid"], [[42642, 42642], "mapped", [42643]], [[42643, 42643], "valid"], [[42644, 42644], "mapped", [42645]], [[42645, 42645], "valid"], [[42646, 42646], "mapped", [42647]], [[42647, 42647], "valid"], [[42648, 42648], "mapped", [42649]], [[42649, 42649], "valid"], [[42650, 42650], "mapped", [42651]], [[42651, 42651], "valid"], [[42652, 42652], "mapped", [1098]], [[42653, 42653], "mapped", [1100]], [[42654, 42654], "valid"], [[42655, 42655], "valid"], [[42656, 42725], "valid"], [[42726, 42735], "valid", [], "NV8"], [[42736, 42737], "valid"], [[42738, 42743], "valid", [], "NV8"], [[42744, 42751], "disallowed"], [[42752, 42774], "valid", [], "NV8"], [[42775, 42778], "valid"], [[42779, 42783], "valid"], [[42784, 42785], "valid", [], "NV8"], [[42786, 42786], "mapped", [42787]], [[42787, 42787], "valid"], [[42788, 42788], "mapped", [42789]], [[42789, 42789], "valid"], [[42790, 42790], "mapped", [42791]], [[42791, 42791], "valid"], [[42792, 42792], "mapped", [42793]], [[42793, 42793], "valid"], [[42794, 42794], "mapped", [42795]], [[42795, 42795], "valid"], [[42796, 42796], "mapped", [42797]], [[42797, 42797], "valid"], [[42798, 42798], "mapped", [42799]], [[42799, 42801], "valid"], [[42802, 42802], "mapped", [42803]], [[42803, 42803], "valid"], [[42804, 42804], "mapped", [42805]], [[42805, 42805], "valid"], [[42806, 42806], "mapped", [42807]], [[42807, 42807], "valid"], [[42808, 42808], "mapped", [42809]], [[42809, 42809], "valid"], [[42810, 42810], "mapped", [42811]], [[42811, 42811], "valid"], [[42812, 42812], "mapped", [42813]], [[42813, 42813], "valid"], [[42814, 42814], "mapped", [42815]], [[42815, 42815], "valid"], [[42816, 42816], "mapped", [42817]], [[42817, 42817], "valid"], [[42818, 42818], "mapped", [42819]], [[42819, 42819], "valid"], [[42820, 42820], "mapped", [42821]], [[42821, 42821], "valid"], [[42822, 42822], "mapped", [42823]], [[42823, 42823], "valid"], [[42824, 42824], "mapped", [42825]], [[42825, 42825], "valid"], [[42826, 42826], "mapped", [42827]], [[42827, 42827], "valid"], [[42828, 42828], "mapped", [42829]], [[42829, 42829], "valid"], [[42830, 42830], "mapped", [42831]], [[42831, 42831], "valid"], [[42832, 42832], "mapped", [42833]], [[42833, 42833], "valid"], [[42834, 42834], "mapped", [42835]], [[42835, 42835], "valid"], [[42836, 42836], "mapped", [42837]], [[42837, 42837], "valid"], [[42838, 42838], "mapped", [42839]], [[42839, 42839], "valid"], [[42840, 42840], "mapped", [42841]], [[42841, 42841], "valid"], [[42842, 42842], "mapped", [42843]], [[42843, 42843], "valid"], [[42844, 42844], "mapped", [42845]], [[42845, 42845], "valid"], [[42846, 42846], "mapped", [42847]], [[42847, 42847], "valid"], [[42848, 42848], "mapped", [42849]], [[42849, 42849], "valid"], [[42850, 42850], "mapped", [42851]], [[42851, 42851], "valid"], [[42852, 42852], "mapped", [42853]], [[42853, 42853], "valid"], [[42854, 42854], "mapped", [42855]], [[42855, 42855], "valid"], [[42856, 42856], "mapped", [42857]], [[42857, 42857], "valid"], [[42858, 42858], "mapped", [42859]], [[42859, 42859], "valid"], [[42860, 42860], "mapped", [42861]], [[42861, 42861], "valid"], [[42862, 42862], "mapped", [42863]], [[42863, 42863], "valid"], [[42864, 42864], "mapped", [42863]], [[42865, 42872], "valid"], [[42873, 42873], "mapped", [42874]], [[42874, 42874], "valid"], [[42875, 42875], "mapped", [42876]], [[42876, 42876], "valid"], [[42877, 42877], "mapped", [7545]], [[42878, 42878], "mapped", [42879]], [[42879, 42879], "valid"], [[42880, 42880], "mapped", [42881]], [[42881, 42881], "valid"], [[42882, 42882], "mapped", [42883]], [[42883, 42883], "valid"], [[42884, 42884], "mapped", [42885]], [[42885, 42885], "valid"], [[42886, 42886], "mapped", [42887]], [[42887, 42888], "valid"], [[42889, 42890], "valid", [], "NV8"], [[42891, 42891], "mapped", [42892]], [[42892, 42892], "valid"], [[42893, 42893], "mapped", [613]], [[42894, 42894], "valid"], [[42895, 42895], "valid"], [[42896, 42896], "mapped", [42897]], [[42897, 42897], "valid"], [[42898, 42898], "mapped", [42899]], [[42899, 42899], "valid"], [[42900, 42901], "valid"], [[42902, 42902], "mapped", [42903]], [[42903, 42903], "valid"], [[42904, 42904], "mapped", [42905]], [[42905, 42905], "valid"], [[42906, 42906], "mapped", [42907]], [[42907, 42907], "valid"], [[42908, 42908], "mapped", [42909]], [[42909, 42909], "valid"], [[42910, 42910], "mapped", [42911]], [[42911, 42911], "valid"], [[42912, 42912], "mapped", [42913]], [[42913, 42913], "valid"], [[42914, 42914], "mapped", [42915]], [[42915, 42915], "valid"], [[42916, 42916], "mapped", [42917]], [[42917, 42917], "valid"], [[42918, 42918], "mapped", [42919]], [[42919, 42919], "valid"], [[42920, 42920], "mapped", [42921]], [[42921, 42921], "valid"], [[42922, 42922], "mapped", [614]], [[42923, 42923], "mapped", [604]], [[42924, 42924], "mapped", [609]], [[42925, 42925], "mapped", [620]], [[42926, 42927], "disallowed"], [[42928, 42928], "mapped", [670]], [[42929, 42929], "mapped", [647]], [[42930, 42930], "mapped", [669]], [[42931, 42931], "mapped", [43859]], [[42932, 42932], "mapped", [42933]], [[42933, 42933], "valid"], [[42934, 42934], "mapped", [42935]], [[42935, 42935], "valid"], [[42936, 42998], "disallowed"], [[42999, 42999], "valid"], [[43e3, 43e3], "mapped", [295]], [[43001, 43001], "mapped", [339]], [[43002, 43002], "valid"], [[43003, 43007], "valid"], [[43008, 43047], "valid"], [[43048, 43051], "valid", [], "NV8"], [[43052, 43055], "disallowed"], [[43056, 43065], "valid", [], "NV8"], [[43066, 43071], "disallowed"], [[43072, 43123], "valid"], [[43124, 43127], "valid", [], "NV8"], [[43128, 43135], "disallowed"], [[43136, 43204], "valid"], [[43205, 43213], "disallowed"], [[43214, 43215], "valid", [], "NV8"], [[43216, 43225], "valid"], [[43226, 43231], "disallowed"], [[43232, 43255], "valid"], [[43256, 43258], "valid", [], "NV8"], [[43259, 43259], "valid"], [[43260, 43260], "valid", [], "NV8"], [[43261, 43261], "valid"], [[43262, 43263], "disallowed"], [[43264, 43309], "valid"], [[43310, 43311], "valid", [], "NV8"], [[43312, 43347], "valid"], [[43348, 43358], "disallowed"], [[43359, 43359], "valid", [], "NV8"], [[43360, 43388], "valid", [], "NV8"], [[43389, 43391], "disallowed"], [[43392, 43456], "valid"], [[43457, 43469], "valid", [], "NV8"], [[43470, 43470], "disallowed"], [[43471, 43481], "valid"], [[43482, 43485], "disallowed"], [[43486, 43487], "valid", [], "NV8"], [[43488, 43518], "valid"], [[43519, 43519], "disallowed"], [[43520, 43574], "valid"], [[43575, 43583], "disallowed"], [[43584, 43597], "valid"], [[43598, 43599], "disallowed"], [[43600, 43609], "valid"], [[43610, 43611], "disallowed"], [[43612, 43615], "valid", [], "NV8"], [[43616, 43638], "valid"], [[43639, 43641], "valid", [], "NV8"], [[43642, 43643], "valid"], [[43644, 43647], "valid"], [[43648, 43714], "valid"], [[43715, 43738], "disallowed"], [[43739, 43741], "valid"], [[43742, 43743], "valid", [], "NV8"], [[43744, 43759], "valid"], [[43760, 43761], "valid", [], "NV8"], [[43762, 43766], "valid"], [[43767, 43776], "disallowed"], [[43777, 43782], "valid"], [[43783, 43784], "disallowed"], [[43785, 43790], "valid"], [[43791, 43792], "disallowed"], [[43793, 43798], "valid"], [[43799, 43807], "disallowed"], [[43808, 43814], "valid"], [[43815, 43815], "disallowed"], [[43816, 43822], "valid"], [[43823, 43823], "disallowed"], [[43824, 43866], "valid"], [[43867, 43867], "valid", [], "NV8"], [[43868, 43868], "mapped", [42791]], [[43869, 43869], "mapped", [43831]], [[43870, 43870], "mapped", [619]], [[43871, 43871], "mapped", [43858]], [[43872, 43875], "valid"], [[43876, 43877], "valid"], [[43878, 43887], "disallowed"], [[43888, 43888], "mapped", [5024]], [[43889, 43889], "mapped", [5025]], [[43890, 43890], "mapped", [5026]], [[43891, 43891], "mapped", [5027]], [[43892, 43892], "mapped", [5028]], [[43893, 43893], "mapped", [5029]], [[43894, 43894], "mapped", [5030]], [[43895, 43895], "mapped", [5031]], [[43896, 43896], "mapped", [5032]], [[43897, 43897], "mapped", [5033]], [[43898, 43898], "mapped", [5034]], [[43899, 43899], "mapped", [5035]], [[43900, 43900], "mapped", [5036]], [[43901, 43901], "mapped", [5037]], [[43902, 43902], "mapped", [5038]], [[43903, 43903], "mapped", [5039]], [[43904, 43904], "mapped", [5040]], [[43905, 43905], "mapped", [5041]], [[43906, 43906], "mapped", [5042]], [[43907, 43907], "mapped", [5043]], [[43908, 43908], "mapped", [5044]], [[43909, 43909], "mapped", [5045]], [[43910, 43910], "mapped", [5046]], [[43911, 43911], "mapped", [5047]], [[43912, 43912], "mapped", [5048]], [[43913, 43913], "mapped", [5049]], [[43914, 43914], "mapped", [5050]], [[43915, 43915], "mapped", [5051]], [[43916, 43916], "mapped", [5052]], [[43917, 43917], "mapped", [5053]], [[43918, 43918], "mapped", [5054]], [[43919, 43919], "mapped", [5055]], [[43920, 43920], "mapped", [5056]], [[43921, 43921], "mapped", [5057]], [[43922, 43922], "mapped", [5058]], [[43923, 43923], "mapped", [5059]], [[43924, 43924], "mapped", [5060]], [[43925, 43925], "mapped", [5061]], [[43926, 43926], "mapped", [5062]], [[43927, 43927], "mapped", [5063]], [[43928, 43928], "mapped", [5064]], [[43929, 43929], "mapped", [5065]], [[43930, 43930], "mapped", [5066]], [[43931, 43931], "mapped", [5067]], [[43932, 43932], "mapped", [5068]], [[43933, 43933], "mapped", [5069]], [[43934, 43934], "mapped", [5070]], [[43935, 43935], "mapped", [5071]], [[43936, 43936], "mapped", [5072]], [[43937, 43937], "mapped", [5073]], [[43938, 43938], "mapped", [5074]], [[43939, 43939], "mapped", [5075]], [[43940, 43940], "mapped", [5076]], [[43941, 43941], "mapped", [5077]], [[43942, 43942], "mapped", [5078]], [[43943, 43943], "mapped", [5079]], [[43944, 43944], "mapped", [5080]], [[43945, 43945], "mapped", [5081]], [[43946, 43946], "mapped", [5082]], [[43947, 43947], "mapped", [5083]], [[43948, 43948], "mapped", [5084]], [[43949, 43949], "mapped", [5085]], [[43950, 43950], "mapped", [5086]], [[43951, 43951], "mapped", [5087]], [[43952, 43952], "mapped", [5088]], [[43953, 43953], "mapped", [5089]], [[43954, 43954], "mapped", [5090]], [[43955, 43955], "mapped", [5091]], [[43956, 43956], "mapped", [5092]], [[43957, 43957], "mapped", [5093]], [[43958, 43958], "mapped", [5094]], [[43959, 43959], "mapped", [5095]], [[43960, 43960], "mapped", [5096]], [[43961, 43961], "mapped", [5097]], [[43962, 43962], "mapped", [5098]], [[43963, 43963], "mapped", [5099]], [[43964, 43964], "mapped", [5100]], [[43965, 43965], "mapped", [5101]], [[43966, 43966], "mapped", [5102]], [[43967, 43967], "mapped", [5103]], [[43968, 44010], "valid"], [[44011, 44011], "valid", [], "NV8"], [[44012, 44013], "valid"], [[44014, 44015], "disallowed"], [[44016, 44025], "valid"], [[44026, 44031], "disallowed"], [[44032, 55203], "valid"], [[55204, 55215], "disallowed"], [[55216, 55238], "valid", [], "NV8"], [[55239, 55242], "disallowed"], [[55243, 55291], "valid", [], "NV8"], [[55292, 55295], "disallowed"], [[55296, 57343], "disallowed"], [[57344, 63743], "disallowed"], [[63744, 63744], "mapped", [35912]], [[63745, 63745], "mapped", [26356]], [[63746, 63746], "mapped", [36554]], [[63747, 63747], "mapped", [36040]], [[63748, 63748], "mapped", [28369]], [[63749, 63749], "mapped", [20018]], [[63750, 63750], "mapped", [21477]], [[63751, 63752], "mapped", [40860]], [[63753, 63753], "mapped", [22865]], [[63754, 63754], "mapped", [37329]], [[63755, 63755], "mapped", [21895]], [[63756, 63756], "mapped", [22856]], [[63757, 63757], "mapped", [25078]], [[63758, 63758], "mapped", [30313]], [[63759, 63759], "mapped", [32645]], [[63760, 63760], "mapped", [34367]], [[63761, 63761], "mapped", [34746]], [[63762, 63762], "mapped", [35064]], [[63763, 63763], "mapped", [37007]], [[63764, 63764], "mapped", [27138]], [[63765, 63765], "mapped", [27931]], [[63766, 63766], "mapped", [28889]], [[63767, 63767], "mapped", [29662]], [[63768, 63768], "mapped", [33853]], [[63769, 63769], "mapped", [37226]], [[63770, 63770], "mapped", [39409]], [[63771, 63771], "mapped", [20098]], [[63772, 63772], "mapped", [21365]], [[63773, 63773], "mapped", [27396]], [[63774, 63774], "mapped", [29211]], [[63775, 63775], "mapped", [34349]], [[63776, 63776], "mapped", [40478]], [[63777, 63777], "mapped", [23888]], [[63778, 63778], "mapped", [28651]], [[63779, 63779], "mapped", [34253]], [[63780, 63780], "mapped", [35172]], [[63781, 63781], "mapped", [25289]], [[63782, 63782], "mapped", [33240]], [[63783, 63783], "mapped", [34847]], [[63784, 63784], "mapped", [24266]], [[63785, 63785], "mapped", [26391]], [[63786, 63786], "mapped", [28010]], [[63787, 63787], "mapped", [29436]], [[63788, 63788], "mapped", [37070]], [[63789, 63789], "mapped", [20358]], [[63790, 63790], "mapped", [20919]], [[63791, 63791], "mapped", [21214]], [[63792, 63792], "mapped", [25796]], [[63793, 63793], "mapped", [27347]], [[63794, 63794], "mapped", [29200]], [[63795, 63795], "mapped", [30439]], [[63796, 63796], "mapped", [32769]], [[63797, 63797], "mapped", [34310]], [[63798, 63798], "mapped", [34396]], [[63799, 63799], "mapped", [36335]], [[63800, 63800], "mapped", [38706]], [[63801, 63801], "mapped", [39791]], [[63802, 63802], "mapped", [40442]], [[63803, 63803], "mapped", [30860]], [[63804, 63804], "mapped", [31103]], [[63805, 63805], "mapped", [32160]], [[63806, 63806], "mapped", [33737]], [[63807, 63807], "mapped", [37636]], [[63808, 63808], "mapped", [40575]], [[63809, 63809], "mapped", [35542]], [[63810, 63810], "mapped", [22751]], [[63811, 63811], "mapped", [24324]], [[63812, 63812], "mapped", [31840]], [[63813, 63813], "mapped", [32894]], [[63814, 63814], "mapped", [29282]], [[63815, 63815], "mapped", [30922]], [[63816, 63816], "mapped", [36034]], [[63817, 63817], "mapped", [38647]], [[63818, 63818], "mapped", [22744]], [[63819, 63819], "mapped", [23650]], [[63820, 63820], "mapped", [27155]], [[63821, 63821], "mapped", [28122]], [[63822, 63822], "mapped", [28431]], [[63823, 63823], "mapped", [32047]], [[63824, 63824], "mapped", [32311]], [[63825, 63825], "mapped", [38475]], [[63826, 63826], "mapped", [21202]], [[63827, 63827], "mapped", [32907]], [[63828, 63828], "mapped", [20956]], [[63829, 63829], "mapped", [20940]], [[63830, 63830], "mapped", [31260]], [[63831, 63831], "mapped", [32190]], [[63832, 63832], "mapped", [33777]], [[63833, 63833], "mapped", [38517]], [[63834, 63834], "mapped", [35712]], [[63835, 63835], "mapped", [25295]], [[63836, 63836], "mapped", [27138]], [[63837, 63837], "mapped", [35582]], [[63838, 63838], "mapped", [20025]], [[63839, 63839], "mapped", [23527]], [[63840, 63840], "mapped", [24594]], [[63841, 63841], "mapped", [29575]], [[63842, 63842], "mapped", [30064]], [[63843, 63843], "mapped", [21271]], [[63844, 63844], "mapped", [30971]], [[63845, 63845], "mapped", [20415]], [[63846, 63846], "mapped", [24489]], [[63847, 63847], "mapped", [19981]], [[63848, 63848], "mapped", [27852]], [[63849, 63849], "mapped", [25976]], [[63850, 63850], "mapped", [32034]], [[63851, 63851], "mapped", [21443]], [[63852, 63852], "mapped", [22622]], [[63853, 63853], "mapped", [30465]], [[63854, 63854], "mapped", [33865]], [[63855, 63855], "mapped", [35498]], [[63856, 63856], "mapped", [27578]], [[63857, 63857], "mapped", [36784]], [[63858, 63858], "mapped", [27784]], [[63859, 63859], "mapped", [25342]], [[63860, 63860], "mapped", [33509]], [[63861, 63861], "mapped", [25504]], [[63862, 63862], "mapped", [30053]], [[63863, 63863], "mapped", [20142]], [[63864, 63864], "mapped", [20841]], [[63865, 63865], "mapped", [20937]], [[63866, 63866], "mapped", [26753]], [[63867, 63867], "mapped", [31975]], [[63868, 63868], "mapped", [33391]], [[63869, 63869], "mapped", [35538]], [[63870, 63870], "mapped", [37327]], [[63871, 63871], "mapped", [21237]], [[63872, 63872], "mapped", [21570]], [[63873, 63873], "mapped", [22899]], [[63874, 63874], "mapped", [24300]], [[63875, 63875], "mapped", [26053]], [[63876, 63876], "mapped", [28670]], [[63877, 63877], "mapped", [31018]], [[63878, 63878], "mapped", [38317]], [[63879, 63879], "mapped", [39530]], [[63880, 63880], "mapped", [40599]], [[63881, 63881], "mapped", [40654]], [[63882, 63882], "mapped", [21147]], [[63883, 63883], "mapped", [26310]], [[63884, 63884], "mapped", [27511]], [[63885, 63885], "mapped", [36706]], [[63886, 63886], "mapped", [24180]], [[63887, 63887], "mapped", [24976]], [[63888, 63888], "mapped", [25088]], [[63889, 63889], "mapped", [25754]], [[63890, 63890], "mapped", [28451]], [[63891, 63891], "mapped", [29001]], [[63892, 63892], "mapped", [29833]], [[63893, 63893], "mapped", [31178]], [[63894, 63894], "mapped", [32244]], [[63895, 63895], "mapped", [32879]], [[63896, 63896], "mapped", [36646]], [[63897, 63897], "mapped", [34030]], [[63898, 63898], "mapped", [36899]], [[63899, 63899], "mapped", [37706]], [[63900, 63900], "mapped", [21015]], [[63901, 63901], "mapped", [21155]], [[63902, 63902], "mapped", [21693]], [[63903, 63903], "mapped", [28872]], [[63904, 63904], "mapped", [35010]], [[63905, 63905], "mapped", [35498]], [[63906, 63906], "mapped", [24265]], [[63907, 63907], "mapped", [24565]], [[63908, 63908], "mapped", [25467]], [[63909, 63909], "mapped", [27566]], [[63910, 63910], "mapped", [31806]], [[63911, 63911], "mapped", [29557]], [[63912, 63912], "mapped", [20196]], [[63913, 63913], "mapped", [22265]], [[63914, 63914], "mapped", [23527]], [[63915, 63915], "mapped", [23994]], [[63916, 63916], "mapped", [24604]], [[63917, 63917], "mapped", [29618]], [[63918, 63918], "mapped", [29801]], [[63919, 63919], "mapped", [32666]], [[63920, 63920], "mapped", [32838]], [[63921, 63921], "mapped", [37428]], [[63922, 63922], "mapped", [38646]], [[63923, 63923], "mapped", [38728]], [[63924, 63924], "mapped", [38936]], [[63925, 63925], "mapped", [20363]], [[63926, 63926], "mapped", [31150]], [[63927, 63927], "mapped", [37300]], [[63928, 63928], "mapped", [38584]], [[63929, 63929], "mapped", [24801]], [[63930, 63930], "mapped", [20102]], [[63931, 63931], "mapped", [20698]], [[63932, 63932], "mapped", [23534]], [[63933, 63933], "mapped", [23615]], [[63934, 63934], "mapped", [26009]], [[63935, 63935], "mapped", [27138]], [[63936, 63936], "mapped", [29134]], [[63937, 63937], "mapped", [30274]], [[63938, 63938], "mapped", [34044]], [[63939, 63939], "mapped", [36988]], [[63940, 63940], "mapped", [40845]], [[63941, 63941], "mapped", [26248]], [[63942, 63942], "mapped", [38446]], [[63943, 63943], "mapped", [21129]], [[63944, 63944], "mapped", [26491]], [[63945, 63945], "mapped", [26611]], [[63946, 63946], "mapped", [27969]], [[63947, 63947], "mapped", [28316]], [[63948, 63948], "mapped", [29705]], [[63949, 63949], "mapped", [30041]], [[63950, 63950], "mapped", [30827]], [[63951, 63951], "mapped", [32016]], [[63952, 63952], "mapped", [39006]], [[63953, 63953], "mapped", [20845]], [[63954, 63954], "mapped", [25134]], [[63955, 63955], "mapped", [38520]], [[63956, 63956], "mapped", [20523]], [[63957, 63957], "mapped", [23833]], [[63958, 63958], "mapped", [28138]], [[63959, 63959], "mapped", [36650]], [[63960, 63960], "mapped", [24459]], [[63961, 63961], "mapped", [24900]], [[63962, 63962], "mapped", [26647]], [[63963, 63963], "mapped", [29575]], [[63964, 63964], "mapped", [38534]], [[63965, 63965], "mapped", [21033]], [[63966, 63966], "mapped", [21519]], [[63967, 63967], "mapped", [23653]], [[63968, 63968], "mapped", [26131]], [[63969, 63969], "mapped", [26446]], [[63970, 63970], "mapped", [26792]], [[63971, 63971], "mapped", [27877]], [[63972, 63972], "mapped", [29702]], [[63973, 63973], "mapped", [30178]], [[63974, 63974], "mapped", [32633]], [[63975, 63975], "mapped", [35023]], [[63976, 63976], "mapped", [35041]], [[63977, 63977], "mapped", [37324]], [[63978, 63978], "mapped", [38626]], [[63979, 63979], "mapped", [21311]], [[63980, 63980], "mapped", [28346]], [[63981, 63981], "mapped", [21533]], [[63982, 63982], "mapped", [29136]], [[63983, 63983], "mapped", [29848]], [[63984, 63984], "mapped", [34298]], [[63985, 63985], "mapped", [38563]], [[63986, 63986], "mapped", [40023]], [[63987, 63987], "mapped", [40607]], [[63988, 63988], "mapped", [26519]], [[63989, 63989], "mapped", [28107]], [[63990, 63990], "mapped", [33256]], [[63991, 63991], "mapped", [31435]], [[63992, 63992], "mapped", [31520]], [[63993, 63993], "mapped", [31890]], [[63994, 63994], "mapped", [29376]], [[63995, 63995], "mapped", [28825]], [[63996, 63996], "mapped", [35672]], [[63997, 63997], "mapped", [20160]], [[63998, 63998], "mapped", [33590]], [[63999, 63999], "mapped", [21050]], [[64e3, 64e3], "mapped", [20999]], [[64001, 64001], "mapped", [24230]], [[64002, 64002], "mapped", [25299]], [[64003, 64003], "mapped", [31958]], [[64004, 64004], "mapped", [23429]], [[64005, 64005], "mapped", [27934]], [[64006, 64006], "mapped", [26292]], [[64007, 64007], "mapped", [36667]], [[64008, 64008], "mapped", [34892]], [[64009, 64009], "mapped", [38477]], [[64010, 64010], "mapped", [35211]], [[64011, 64011], "mapped", [24275]], [[64012, 64012], "mapped", [20800]], [[64013, 64013], "mapped", [21952]], [[64014, 64015], "valid"], [[64016, 64016], "mapped", [22618]], [[64017, 64017], "valid"], [[64018, 64018], "mapped", [26228]], [[64019, 64020], "valid"], [[64021, 64021], "mapped", [20958]], [[64022, 64022], "mapped", [29482]], [[64023, 64023], "mapped", [30410]], [[64024, 64024], "mapped", [31036]], [[64025, 64025], "mapped", [31070]], [[64026, 64026], "mapped", [31077]], [[64027, 64027], "mapped", [31119]], [[64028, 64028], "mapped", [38742]], [[64029, 64029], "mapped", [31934]], [[64030, 64030], "mapped", [32701]], [[64031, 64031], "valid"], [[64032, 64032], "mapped", [34322]], [[64033, 64033], "valid"], [[64034, 64034], "mapped", [35576]], [[64035, 64036], "valid"], [[64037, 64037], "mapped", [36920]], [[64038, 64038], "mapped", [37117]], [[64039, 64041], "valid"], [[64042, 64042], "mapped", [39151]], [[64043, 64043], "mapped", [39164]], [[64044, 64044], "mapped", [39208]], [[64045, 64045], "mapped", [40372]], [[64046, 64046], "mapped", [37086]], [[64047, 64047], "mapped", [38583]], [[64048, 64048], "mapped", [20398]], [[64049, 64049], "mapped", [20711]], [[64050, 64050], "mapped", [20813]], [[64051, 64051], "mapped", [21193]], [[64052, 64052], "mapped", [21220]], [[64053, 64053], "mapped", [21329]], [[64054, 64054], "mapped", [21917]], [[64055, 64055], "mapped", [22022]], [[64056, 64056], "mapped", [22120]], [[64057, 64057], "mapped", [22592]], [[64058, 64058], "mapped", [22696]], [[64059, 64059], "mapped", [23652]], [[64060, 64060], "mapped", [23662]], [[64061, 64061], "mapped", [24724]], [[64062, 64062], "mapped", [24936]], [[64063, 64063], "mapped", [24974]], [[64064, 64064], "mapped", [25074]], [[64065, 64065], "mapped", [25935]], [[64066, 64066], "mapped", [26082]], [[64067, 64067], "mapped", [26257]], [[64068, 64068], "mapped", [26757]], [[64069, 64069], "mapped", [28023]], [[64070, 64070], "mapped", [28186]], [[64071, 64071], "mapped", [28450]], [[64072, 64072], "mapped", [29038]], [[64073, 64073], "mapped", [29227]], [[64074, 64074], "mapped", [29730]], [[64075, 64075], "mapped", [30865]], [[64076, 64076], "mapped", [31038]], [[64077, 64077], "mapped", [31049]], [[64078, 64078], "mapped", [31048]], [[64079, 64079], "mapped", [31056]], [[64080, 64080], "mapped", [31062]], [[64081, 64081], "mapped", [31069]], [[64082, 64082], "mapped", [31117]], [[64083, 64083], "mapped", [31118]], [[64084, 64084], "mapped", [31296]], [[64085, 64085], "mapped", [31361]], [[64086, 64086], "mapped", [31680]], [[64087, 64087], "mapped", [32244]], [[64088, 64088], "mapped", [32265]], [[64089, 64089], "mapped", [32321]], [[64090, 64090], "mapped", [32626]], [[64091, 64091], "mapped", [32773]], [[64092, 64092], "mapped", [33261]], [[64093, 64094], "mapped", [33401]], [[64095, 64095], "mapped", [33879]], [[64096, 64096], "mapped", [35088]], [[64097, 64097], "mapped", [35222]], [[64098, 64098], "mapped", [35585]], [[64099, 64099], "mapped", [35641]], [[64100, 64100], "mapped", [36051]], [[64101, 64101], "mapped", [36104]], [[64102, 64102], "mapped", [36790]], [[64103, 64103], "mapped", [36920]], [[64104, 64104], "mapped", [38627]], [[64105, 64105], "mapped", [38911]], [[64106, 64106], "mapped", [38971]], [[64107, 64107], "mapped", [24693]], [[64108, 64108], "mapped", [148206]], [[64109, 64109], "mapped", [33304]], [[64110, 64111], "disallowed"], [[64112, 64112], "mapped", [20006]], [[64113, 64113], "mapped", [20917]], [[64114, 64114], "mapped", [20840]], [[64115, 64115], "mapped", [20352]], [[64116, 64116], "mapped", [20805]], [[64117, 64117], "mapped", [20864]], [[64118, 64118], "mapped", [21191]], [[64119, 64119], "mapped", [21242]], [[64120, 64120], "mapped", [21917]], [[64121, 64121], "mapped", [21845]], [[64122, 64122], "mapped", [21913]], [[64123, 64123], "mapped", [21986]], [[64124, 64124], "mapped", [22618]], [[64125, 64125], "mapped", [22707]], [[64126, 64126], "mapped", [22852]], [[64127, 64127], "mapped", [22868]], [[64128, 64128], "mapped", [23138]], [[64129, 64129], "mapped", [23336]], [[64130, 64130], "mapped", [24274]], [[64131, 64131], "mapped", [24281]], [[64132, 64132], "mapped", [24425]], [[64133, 64133], "mapped", [24493]], [[64134, 64134], "mapped", [24792]], [[64135, 64135], "mapped", [24910]], [[64136, 64136], "mapped", [24840]], [[64137, 64137], "mapped", [24974]], [[64138, 64138], "mapped", [24928]], [[64139, 64139], "mapped", [25074]], [[64140, 64140], "mapped", [25140]], [[64141, 64141], "mapped", [25540]], [[64142, 64142], "mapped", [25628]], [[64143, 64143], "mapped", [25682]], [[64144, 64144], "mapped", [25942]], [[64145, 64145], "mapped", [26228]], [[64146, 64146], "mapped", [26391]], [[64147, 64147], "mapped", [26395]], [[64148, 64148], "mapped", [26454]], [[64149, 64149], "mapped", [27513]], [[64150, 64150], "mapped", [27578]], [[64151, 64151], "mapped", [27969]], [[64152, 64152], "mapped", [28379]], [[64153, 64153], "mapped", [28363]], [[64154, 64154], "mapped", [28450]], [[64155, 64155], "mapped", [28702]], [[64156, 64156], "mapped", [29038]], [[64157, 64157], "mapped", [30631]], [[64158, 64158], "mapped", [29237]], [[64159, 64159], "mapped", [29359]], [[64160, 64160], "mapped", [29482]], [[64161, 64161], "mapped", [29809]], [[64162, 64162], "mapped", [29958]], [[64163, 64163], "mapped", [30011]], [[64164, 64164], "mapped", [30237]], [[64165, 64165], "mapped", [30239]], [[64166, 64166], "mapped", [30410]], [[64167, 64167], "mapped", [30427]], [[64168, 64168], "mapped", [30452]], [[64169, 64169], "mapped", [30538]], [[64170, 64170], "mapped", [30528]], [[64171, 64171], "mapped", [30924]], [[64172, 64172], "mapped", [31409]], [[64173, 64173], "mapped", [31680]], [[64174, 64174], "mapped", [31867]], [[64175, 64175], "mapped", [32091]], [[64176, 64176], "mapped", [32244]], [[64177, 64177], "mapped", [32574]], [[64178, 64178], "mapped", [32773]], [[64179, 64179], "mapped", [33618]], [[64180, 64180], "mapped", [33775]], [[64181, 64181], "mapped", [34681]], [[64182, 64182], "mapped", [35137]], [[64183, 64183], "mapped", [35206]], [[64184, 64184], "mapped", [35222]], [[64185, 64185], "mapped", [35519]], [[64186, 64186], "mapped", [35576]], [[64187, 64187], "mapped", [35531]], [[64188, 64188], "mapped", [35585]], [[64189, 64189], "mapped", [35582]], [[64190, 64190], "mapped", [35565]], [[64191, 64191], "mapped", [35641]], [[64192, 64192], "mapped", [35722]], [[64193, 64193], "mapped", [36104]], [[64194, 64194], "mapped", [36664]], [[64195, 64195], "mapped", [36978]], [[64196, 64196], "mapped", [37273]], [[64197, 64197], "mapped", [37494]], [[64198, 64198], "mapped", [38524]], [[64199, 64199], "mapped", [38627]], [[64200, 64200], "mapped", [38742]], [[64201, 64201], "mapped", [38875]], [[64202, 64202], "mapped", [38911]], [[64203, 64203], "mapped", [38923]], [[64204, 64204], "mapped", [38971]], [[64205, 64205], "mapped", [39698]], [[64206, 64206], "mapped", [40860]], [[64207, 64207], "mapped", [141386]], [[64208, 64208], "mapped", [141380]], [[64209, 64209], "mapped", [144341]], [[64210, 64210], "mapped", [15261]], [[64211, 64211], "mapped", [16408]], [[64212, 64212], "mapped", [16441]], [[64213, 64213], "mapped", [152137]], [[64214, 64214], "mapped", [154832]], [[64215, 64215], "mapped", [163539]], [[64216, 64216], "mapped", [40771]], [[64217, 64217], "mapped", [40846]], [[64218, 64255], "disallowed"], [[64256, 64256], "mapped", [102, 102]], [[64257, 64257], "mapped", [102, 105]], [[64258, 64258], "mapped", [102, 108]], [[64259, 64259], "mapped", [102, 102, 105]], [[64260, 64260], "mapped", [102, 102, 108]], [[64261, 64262], "mapped", [115, 116]], [[64263, 64274], "disallowed"], [[64275, 64275], "mapped", [1396, 1398]], [[64276, 64276], "mapped", [1396, 1381]], [[64277, 64277], "mapped", [1396, 1387]], [[64278, 64278], "mapped", [1406, 1398]], [[64279, 64279], "mapped", [1396, 1389]], [[64280, 64284], "disallowed"], [[64285, 64285], "mapped", [1497, 1460]], [[64286, 64286], "valid"], [[64287, 64287], "mapped", [1522, 1463]], [[64288, 64288], "mapped", [1506]], [[64289, 64289], "mapped", [1488]], [[64290, 64290], "mapped", [1491]], [[64291, 64291], "mapped", [1492]], [[64292, 64292], "mapped", [1499]], [[64293, 64293], "mapped", [1500]], [[64294, 64294], "mapped", [1501]], [[64295, 64295], "mapped", [1512]], [[64296, 64296], "mapped", [1514]], [[64297, 64297], "disallowed_STD3_mapped", [43]], [[64298, 64298], "mapped", [1513, 1473]], [[64299, 64299], "mapped", [1513, 1474]], [[64300, 64300], "mapped", [1513, 1468, 1473]], [[64301, 64301], "mapped", [1513, 1468, 1474]], [[64302, 64302], "mapped", [1488, 1463]], [[64303, 64303], "mapped", [1488, 1464]], [[64304, 64304], "mapped", [1488, 1468]], [[64305, 64305], "mapped", [1489, 1468]], [[64306, 64306], "mapped", [1490, 1468]], [[64307, 64307], "mapped", [1491, 1468]], [[64308, 64308], "mapped", [1492, 1468]], [[64309, 64309], "mapped", [1493, 1468]], [[64310, 64310], "mapped", [1494, 1468]], [[64311, 64311], "disallowed"], [[64312, 64312], "mapped", [1496, 1468]], [[64313, 64313], "mapped", [1497, 1468]], [[64314, 64314], "mapped", [1498, 1468]], [[64315, 64315], "mapped", [1499, 1468]], [[64316, 64316], "mapped", [1500, 1468]], [[64317, 64317], "disallowed"], [[64318, 64318], "mapped", [1502, 1468]], [[64319, 64319], "disallowed"], [[64320, 64320], "mapped", [1504, 1468]], [[64321, 64321], "mapped", [1505, 1468]], [[64322, 64322], "disallowed"], [[64323, 64323], "mapped", [1507, 1468]], [[64324, 64324], "mapped", [1508, 1468]], [[64325, 64325], "disallowed"], [[64326, 64326], "mapped", [1510, 1468]], [[64327, 64327], "mapped", [1511, 1468]], [[64328, 64328], "mapped", [1512, 1468]], [[64329, 64329], "mapped", [1513, 1468]], [[64330, 64330], "mapped", [1514, 1468]], [[64331, 64331], "mapped", [1493, 1465]], [[64332, 64332], "mapped", [1489, 1471]], [[64333, 64333], "mapped", [1499, 1471]], [[64334, 64334], "mapped", [1508, 1471]], [[64335, 64335], "mapped", [1488, 1500]], [[64336, 64337], "mapped", [1649]], [[64338, 64341], "mapped", [1659]], [[64342, 64345], "mapped", [1662]], [[64346, 64349], "mapped", [1664]], [[64350, 64353], "mapped", [1658]], [[64354, 64357], "mapped", [1663]], [[64358, 64361], "mapped", [1657]], [[64362, 64365], "mapped", [1700]], [[64366, 64369], "mapped", [1702]], [[64370, 64373], "mapped", [1668]], [[64374, 64377], "mapped", [1667]], [[64378, 64381], "mapped", [1670]], [[64382, 64385], "mapped", [1671]], [[64386, 64387], "mapped", [1677]], [[64388, 64389], "mapped", [1676]], [[64390, 64391], "mapped", [1678]], [[64392, 64393], "mapped", [1672]], [[64394, 64395], "mapped", [1688]], [[64396, 64397], "mapped", [1681]], [[64398, 64401], "mapped", [1705]], [[64402, 64405], "mapped", [1711]], [[64406, 64409], "mapped", [1715]], [[64410, 64413], "mapped", [1713]], [[64414, 64415], "mapped", [1722]], [[64416, 64419], "mapped", [1723]], [[64420, 64421], "mapped", [1728]], [[64422, 64425], "mapped", [1729]], [[64426, 64429], "mapped", [1726]], [[64430, 64431], "mapped", [1746]], [[64432, 64433], "mapped", [1747]], [[64434, 64449], "valid", [], "NV8"], [[64450, 64466], "disallowed"], [[64467, 64470], "mapped", [1709]], [[64471, 64472], "mapped", [1735]], [[64473, 64474], "mapped", [1734]], [[64475, 64476], "mapped", [1736]], [[64477, 64477], "mapped", [1735, 1652]], [[64478, 64479], "mapped", [1739]], [[64480, 64481], "mapped", [1733]], [[64482, 64483], "mapped", [1737]], [[64484, 64487], "mapped", [1744]], [[64488, 64489], "mapped", [1609]], [[64490, 64491], "mapped", [1574, 1575]], [[64492, 64493], "mapped", [1574, 1749]], [[64494, 64495], "mapped", [1574, 1608]], [[64496, 64497], "mapped", [1574, 1735]], [[64498, 64499], "mapped", [1574, 1734]], [[64500, 64501], "mapped", [1574, 1736]], [[64502, 64504], "mapped", [1574, 1744]], [[64505, 64507], "mapped", [1574, 1609]], [[64508, 64511], "mapped", [1740]], [[64512, 64512], "mapped", [1574, 1580]], [[64513, 64513], "mapped", [1574, 1581]], [[64514, 64514], "mapped", [1574, 1605]], [[64515, 64515], "mapped", [1574, 1609]], [[64516, 64516], "mapped", [1574, 1610]], [[64517, 64517], "mapped", [1576, 1580]], [[64518, 64518], "mapped", [1576, 1581]], [[64519, 64519], "mapped", [1576, 1582]], [[64520, 64520], "mapped", [1576, 1605]], [[64521, 64521], "mapped", [1576, 1609]], [[64522, 64522], "mapped", [1576, 1610]], [[64523, 64523], "mapped", [1578, 1580]], [[64524, 64524], "mapped", [1578, 1581]], [[64525, 64525], "mapped", [1578, 1582]], [[64526, 64526], "mapped", [1578, 1605]], [[64527, 64527], "mapped", [1578, 1609]], [[64528, 64528], "mapped", [1578, 1610]], [[64529, 64529], "mapped", [1579, 1580]], [[64530, 64530], "mapped", [1579, 1605]], [[64531, 64531], "mapped", [1579, 1609]], [[64532, 64532], "mapped", [1579, 1610]], [[64533, 64533], "mapped", [1580, 1581]], [[64534, 64534], "mapped", [1580, 1605]], [[64535, 64535], "mapped", [1581, 1580]], [[64536, 64536], "mapped", [1581, 1605]], [[64537, 64537], "mapped", [1582, 1580]], [[64538, 64538], "mapped", [1582, 1581]], [[64539, 64539], "mapped", [1582, 1605]], [[64540, 64540], "mapped", [1587, 1580]], [[64541, 64541], "mapped", [1587, 1581]], [[64542, 64542], "mapped", [1587, 1582]], [[64543, 64543], "mapped", [1587, 1605]], [[64544, 64544], "mapped", [1589, 1581]], [[64545, 64545], "mapped", [1589, 1605]], [[64546, 64546], "mapped", [1590, 1580]], [[64547, 64547], "mapped", [1590, 1581]], [[64548, 64548], "mapped", [1590, 1582]], [[64549, 64549], "mapped", [1590, 1605]], [[64550, 64550], "mapped", [1591, 1581]], [[64551, 64551], "mapped", [1591, 1605]], [[64552, 64552], "mapped", [1592, 1605]], [[64553, 64553], "mapped", [1593, 1580]], [[64554, 64554], "mapped", [1593, 1605]], [[64555, 64555], "mapped", [1594, 1580]], [[64556, 64556], "mapped", [1594, 1605]], [[64557, 64557], "mapped", [1601, 1580]], [[64558, 64558], "mapped", [1601, 1581]], [[64559, 64559], "mapped", [1601, 1582]], [[64560, 64560], "mapped", [1601, 1605]], [[64561, 64561], "mapped", [1601, 1609]], [[64562, 64562], "mapped", [1601, 1610]], [[64563, 64563], "mapped", [1602, 1581]], [[64564, 64564], "mapped", [1602, 1605]], [[64565, 64565], "mapped", [1602, 1609]], [[64566, 64566], "mapped", [1602, 1610]], [[64567, 64567], "mapped", [1603, 1575]], [[64568, 64568], "mapped", [1603, 1580]], [[64569, 64569], "mapped", [1603, 1581]], [[64570, 64570], "mapped", [1603, 1582]], [[64571, 64571], "mapped", [1603, 1604]], [[64572, 64572], "mapped", [1603, 1605]], [[64573, 64573], "mapped", [1603, 1609]], [[64574, 64574], "mapped", [1603, 1610]], [[64575, 64575], "mapped", [1604, 1580]], [[64576, 64576], "mapped", [1604, 1581]], [[64577, 64577], "mapped", [1604, 1582]], [[64578, 64578], "mapped", [1604, 1605]], [[64579, 64579], "mapped", [1604, 1609]], [[64580, 64580], "mapped", [1604, 1610]], [[64581, 64581], "mapped", [1605, 1580]], [[64582, 64582], "mapped", [1605, 1581]], [[64583, 64583], "mapped", [1605, 1582]], [[64584, 64584], "mapped", [1605, 1605]], [[64585, 64585], "mapped", [1605, 1609]], [[64586, 64586], "mapped", [1605, 1610]], [[64587, 64587], "mapped", [1606, 1580]], [[64588, 64588], "mapped", [1606, 1581]], [[64589, 64589], "mapped", [1606, 1582]], [[64590, 64590], "mapped", [1606, 1605]], [[64591, 64591], "mapped", [1606, 1609]], [[64592, 64592], "mapped", [1606, 1610]], [[64593, 64593], "mapped", [1607, 1580]], [[64594, 64594], "mapped", [1607, 1605]], [[64595, 64595], "mapped", [1607, 1609]], [[64596, 64596], "mapped", [1607, 1610]], [[64597, 64597], "mapped", [1610, 1580]], [[64598, 64598], "mapped", [1610, 1581]], [[64599, 64599], "mapped", [1610, 1582]], [[64600, 64600], "mapped", [1610, 1605]], [[64601, 64601], "mapped", [1610, 1609]], [[64602, 64602], "mapped", [1610, 1610]], [[64603, 64603], "mapped", [1584, 1648]], [[64604, 64604], "mapped", [1585, 1648]], [[64605, 64605], "mapped", [1609, 1648]], [[64606, 64606], "disallowed_STD3_mapped", [32, 1612, 1617]], [[64607, 64607], "disallowed_STD3_mapped", [32, 1613, 1617]], [[64608, 64608], "disallowed_STD3_mapped", [32, 1614, 1617]], [[64609, 64609], "disallowed_STD3_mapped", [32, 1615, 1617]], [[64610, 64610], "disallowed_STD3_mapped", [32, 1616, 1617]], [[64611, 64611], "disallowed_STD3_mapped", [32, 1617, 1648]], [[64612, 64612], "mapped", [1574, 1585]], [[64613, 64613], "mapped", [1574, 1586]], [[64614, 64614], "mapped", [1574, 1605]], [[64615, 64615], "mapped", [1574, 1606]], [[64616, 64616], "mapped", [1574, 1609]], [[64617, 64617], "mapped", [1574, 1610]], [[64618, 64618], "mapped", [1576, 1585]], [[64619, 64619], "mapped", [1576, 1586]], [[64620, 64620], "mapped", [1576, 1605]], [[64621, 64621], "mapped", [1576, 1606]], [[64622, 64622], "mapped", [1576, 1609]], [[64623, 64623], "mapped", [1576, 1610]], [[64624, 64624], "mapped", [1578, 1585]], [[64625, 64625], "mapped", [1578, 1586]], [[64626, 64626], "mapped", [1578, 1605]], [[64627, 64627], "mapped", [1578, 1606]], [[64628, 64628], "mapped", [1578, 1609]], [[64629, 64629], "mapped", [1578, 1610]], [[64630, 64630], "mapped", [1579, 1585]], [[64631, 64631], "mapped", [1579, 1586]], [[64632, 64632], "mapped", [1579, 1605]], [[64633, 64633], "mapped", [1579, 1606]], [[64634, 64634], "mapped", [1579, 1609]], [[64635, 64635], "mapped", [1579, 1610]], [[64636, 64636], "mapped", [1601, 1609]], [[64637, 64637], "mapped", [1601, 1610]], [[64638, 64638], "mapped", [1602, 1609]], [[64639, 64639], "mapped", [1602, 1610]], [[64640, 64640], "mapped", [1603, 1575]], [[64641, 64641], "mapped", [1603, 1604]], [[64642, 64642], "mapped", [1603, 1605]], [[64643, 64643], "mapped", [1603, 1609]], [[64644, 64644], "mapped", [1603, 1610]], [[64645, 64645], "mapped", [1604, 1605]], [[64646, 64646], "mapped", [1604, 1609]], [[64647, 64647], "mapped", [1604, 1610]], [[64648, 64648], "mapped", [1605, 1575]], [[64649, 64649], "mapped", [1605, 1605]], [[64650, 64650], "mapped", [1606, 1585]], [[64651, 64651], "mapped", [1606, 1586]], [[64652, 64652], "mapped", [1606, 1605]], [[64653, 64653], "mapped", [1606, 1606]], [[64654, 64654], "mapped", [1606, 1609]], [[64655, 64655], "mapped", [1606, 1610]], [[64656, 64656], "mapped", [1609, 1648]], [[64657, 64657], "mapped", [1610, 1585]], [[64658, 64658], "mapped", [1610, 1586]], [[64659, 64659], "mapped", [1610, 1605]], [[64660, 64660], "mapped", [1610, 1606]], [[64661, 64661], "mapped", [1610, 1609]], [[64662, 64662], "mapped", [1610, 1610]], [[64663, 64663], "mapped", [1574, 1580]], [[64664, 64664], "mapped", [1574, 1581]], [[64665, 64665], "mapped", [1574, 1582]], [[64666, 64666], "mapped", [1574, 1605]], [[64667, 64667], "mapped", [1574, 1607]], [[64668, 64668], "mapped", [1576, 1580]], [[64669, 64669], "mapped", [1576, 1581]], [[64670, 64670], "mapped", [1576, 1582]], [[64671, 64671], "mapped", [1576, 1605]], [[64672, 64672], "mapped", [1576, 1607]], [[64673, 64673], "mapped", [1578, 1580]], [[64674, 64674], "mapped", [1578, 1581]], [[64675, 64675], "mapped", [1578, 1582]], [[64676, 64676], "mapped", [1578, 1605]], [[64677, 64677], "mapped", [1578, 1607]], [[64678, 64678], "mapped", [1579, 1605]], [[64679, 64679], "mapped", [1580, 1581]], [[64680, 64680], "mapped", [1580, 1605]], [[64681, 64681], "mapped", [1581, 1580]], [[64682, 64682], "mapped", [1581, 1605]], [[64683, 64683], "mapped", [1582, 1580]], [[64684, 64684], "mapped", [1582, 1605]], [[64685, 64685], "mapped", [1587, 1580]], [[64686, 64686], "mapped", [1587, 1581]], [[64687, 64687], "mapped", [1587, 1582]], [[64688, 64688], "mapped", [1587, 1605]], [[64689, 64689], "mapped", [1589, 1581]], [[64690, 64690], "mapped", [1589, 1582]], [[64691, 64691], "mapped", [1589, 1605]], [[64692, 64692], "mapped", [1590, 1580]], [[64693, 64693], "mapped", [1590, 1581]], [[64694, 64694], "mapped", [1590, 1582]], [[64695, 64695], "mapped", [1590, 1605]], [[64696, 64696], "mapped", [1591, 1581]], [[64697, 64697], "mapped", [1592, 1605]], [[64698, 64698], "mapped", [1593, 1580]], [[64699, 64699], "mapped", [1593, 1605]], [[64700, 64700], "mapped", [1594, 1580]], [[64701, 64701], "mapped", [1594, 1605]], [[64702, 64702], "mapped", [1601, 1580]], [[64703, 64703], "mapped", [1601, 1581]], [[64704, 64704], "mapped", [1601, 1582]], [[64705, 64705], "mapped", [1601, 1605]], [[64706, 64706], "mapped", [1602, 1581]], [[64707, 64707], "mapped", [1602, 1605]], [[64708, 64708], "mapped", [1603, 1580]], [[64709, 64709], "mapped", [1603, 1581]], [[64710, 64710], "mapped", [1603, 1582]], [[64711, 64711], "mapped", [1603, 1604]], [[64712, 64712], "mapped", [1603, 1605]], [[64713, 64713], "mapped", [1604, 1580]], [[64714, 64714], "mapped", [1604, 1581]], [[64715, 64715], "mapped", [1604, 1582]], [[64716, 64716], "mapped", [1604, 1605]], [[64717, 64717], "mapped", [1604, 1607]], [[64718, 64718], "mapped", [1605, 1580]], [[64719, 64719], "mapped", [1605, 1581]], [[64720, 64720], "mapped", [1605, 1582]], [[64721, 64721], "mapped", [1605, 1605]], [[64722, 64722], "mapped", [1606, 1580]], [[64723, 64723], "mapped", [1606, 1581]], [[64724, 64724], "mapped", [1606, 1582]], [[64725, 64725], "mapped", [1606, 1605]], [[64726, 64726], "mapped", [1606, 1607]], [[64727, 64727], "mapped", [1607, 1580]], [[64728, 64728], "mapped", [1607, 1605]], [[64729, 64729], "mapped", [1607, 1648]], [[64730, 64730], "mapped", [1610, 1580]], [[64731, 64731], "mapped", [1610, 1581]], [[64732, 64732], "mapped", [1610, 1582]], [[64733, 64733], "mapped", [1610, 1605]], [[64734, 64734], "mapped", [1610, 1607]], [[64735, 64735], "mapped", [1574, 1605]], [[64736, 64736], "mapped", [1574, 1607]], [[64737, 64737], "mapped", [1576, 1605]], [[64738, 64738], "mapped", [1576, 1607]], [[64739, 64739], "mapped", [1578, 1605]], [[64740, 64740], "mapped", [1578, 1607]], [[64741, 64741], "mapped", [1579, 1605]], [[64742, 64742], "mapped", [1579, 1607]], [[64743, 64743], "mapped", [1587, 1605]], [[64744, 64744], "mapped", [1587, 1607]], [[64745, 64745], "mapped", [1588, 1605]], [[64746, 64746], "mapped", [1588, 1607]], [[64747, 64747], "mapped", [1603, 1604]], [[64748, 64748], "mapped", [1603, 1605]], [[64749, 64749], "mapped", [1604, 1605]], [[64750, 64750], "mapped", [1606, 1605]], [[64751, 64751], "mapped", [1606, 1607]], [[64752, 64752], "mapped", [1610, 1605]], [[64753, 64753], "mapped", [1610, 1607]], [[64754, 64754], "mapped", [1600, 1614, 1617]], [[64755, 64755], "mapped", [1600, 1615, 1617]], [[64756, 64756], "mapped", [1600, 1616, 1617]], [[64757, 64757], "mapped", [1591, 1609]], [[64758, 64758], "mapped", [1591, 1610]], [[64759, 64759], "mapped", [1593, 1609]], [[64760, 64760], "mapped", [1593, 1610]], [[64761, 64761], "mapped", [1594, 1609]], [[64762, 64762], "mapped", [1594, 1610]], [[64763, 64763], "mapped", [1587, 1609]], [[64764, 64764], "mapped", [1587, 1610]], [[64765, 64765], "mapped", [1588, 1609]], [[64766, 64766], "mapped", [1588, 1610]], [[64767, 64767], "mapped", [1581, 1609]], [[64768, 64768], "mapped", [1581, 1610]], [[64769, 64769], "mapped", [1580, 1609]], [[64770, 64770], "mapped", [1580, 1610]], [[64771, 64771], "mapped", [1582, 1609]], [[64772, 64772], "mapped", [1582, 1610]], [[64773, 64773], "mapped", [1589, 1609]], [[64774, 64774], "mapped", [1589, 1610]], [[64775, 64775], "mapped", [1590, 1609]], [[64776, 64776], "mapped", [1590, 1610]], [[64777, 64777], "mapped", [1588, 1580]], [[64778, 64778], "mapped", [1588, 1581]], [[64779, 64779], "mapped", [1588, 1582]], [[64780, 64780], "mapped", [1588, 1605]], [[64781, 64781], "mapped", [1588, 1585]], [[64782, 64782], "mapped", [1587, 1585]], [[64783, 64783], "mapped", [1589, 1585]], [[64784, 64784], "mapped", [1590, 1585]], [[64785, 64785], "mapped", [1591, 1609]], [[64786, 64786], "mapped", [1591, 1610]], [[64787, 64787], "mapped", [1593, 1609]], [[64788, 64788], "mapped", [1593, 1610]], [[64789, 64789], "mapped", [1594, 1609]], [[64790, 64790], "mapped", [1594, 1610]], [[64791, 64791], "mapped", [1587, 1609]], [[64792, 64792], "mapped", [1587, 1610]], [[64793, 64793], "mapped", [1588, 1609]], [[64794, 64794], "mapped", [1588, 1610]], [[64795, 64795], "mapped", [1581, 1609]], [[64796, 64796], "mapped", [1581, 1610]], [[64797, 64797], "mapped", [1580, 1609]], [[64798, 64798], "mapped", [1580, 1610]], [[64799, 64799], "mapped", [1582, 1609]], [[64800, 64800], "mapped", [1582, 1610]], [[64801, 64801], "mapped", [1589, 1609]], [[64802, 64802], "mapped", [1589, 1610]], [[64803, 64803], "mapped", [1590, 1609]], [[64804, 64804], "mapped", [1590, 1610]], [[64805, 64805], "mapped", [1588, 1580]], [[64806, 64806], "mapped", [1588, 1581]], [[64807, 64807], "mapped", [1588, 1582]], [[64808, 64808], "mapped", [1588, 1605]], [[64809, 64809], "mapped", [1588, 1585]], [[64810, 64810], "mapped", [1587, 1585]], [[64811, 64811], "mapped", [1589, 1585]], [[64812, 64812], "mapped", [1590, 1585]], [[64813, 64813], "mapped", [1588, 1580]], [[64814, 64814], "mapped", [1588, 1581]], [[64815, 64815], "mapped", [1588, 1582]], [[64816, 64816], "mapped", [1588, 1605]], [[64817, 64817], "mapped", [1587, 1607]], [[64818, 64818], "mapped", [1588, 1607]], [[64819, 64819], "mapped", [1591, 1605]], [[64820, 64820], "mapped", [1587, 1580]], [[64821, 64821], "mapped", [1587, 1581]], [[64822, 64822], "mapped", [1587, 1582]], [[64823, 64823], "mapped", [1588, 1580]], [[64824, 64824], "mapped", [1588, 1581]], [[64825, 64825], "mapped", [1588, 1582]], [[64826, 64826], "mapped", [1591, 1605]], [[64827, 64827], "mapped", [1592, 1605]], [[64828, 64829], "mapped", [1575, 1611]], [[64830, 64831], "valid", [], "NV8"], [[64832, 64847], "disallowed"], [[64848, 64848], "mapped", [1578, 1580, 1605]], [[64849, 64850], "mapped", [1578, 1581, 1580]], [[64851, 64851], "mapped", [1578, 1581, 1605]], [[64852, 64852], "mapped", [1578, 1582, 1605]], [[64853, 64853], "mapped", [1578, 1605, 1580]], [[64854, 64854], "mapped", [1578, 1605, 1581]], [[64855, 64855], "mapped", [1578, 1605, 1582]], [[64856, 64857], "mapped", [1580, 1605, 1581]], [[64858, 64858], "mapped", [1581, 1605, 1610]], [[64859, 64859], "mapped", [1581, 1605, 1609]], [[64860, 64860], "mapped", [1587, 1581, 1580]], [[64861, 64861], "mapped", [1587, 1580, 1581]], [[64862, 64862], "mapped", [1587, 1580, 1609]], [[64863, 64864], "mapped", [1587, 1605, 1581]], [[64865, 64865], "mapped", [1587, 1605, 1580]], [[64866, 64867], "mapped", [1587, 1605, 1605]], [[64868, 64869], "mapped", [1589, 1581, 1581]], [[64870, 64870], "mapped", [1589, 1605, 1605]], [[64871, 64872], "mapped", [1588, 1581, 1605]], [[64873, 64873], "mapped", [1588, 1580, 1610]], [[64874, 64875], "mapped", [1588, 1605, 1582]], [[64876, 64877], "mapped", [1588, 1605, 1605]], [[64878, 64878], "mapped", [1590, 1581, 1609]], [[64879, 64880], "mapped", [1590, 1582, 1605]], [[64881, 64882], "mapped", [1591, 1605, 1581]], [[64883, 64883], "mapped", [1591, 1605, 1605]], [[64884, 64884], "mapped", [1591, 1605, 1610]], [[64885, 64885], "mapped", [1593, 1580, 1605]], [[64886, 64887], "mapped", [1593, 1605, 1605]], [[64888, 64888], "mapped", [1593, 1605, 1609]], [[64889, 64889], "mapped", [1594, 1605, 1605]], [[64890, 64890], "mapped", [1594, 1605, 1610]], [[64891, 64891], "mapped", [1594, 1605, 1609]], [[64892, 64893], "mapped", [1601, 1582, 1605]], [[64894, 64894], "mapped", [1602, 1605, 1581]], [[64895, 64895], "mapped", [1602, 1605, 1605]], [[64896, 64896], "mapped", [1604, 1581, 1605]], [[64897, 64897], "mapped", [1604, 1581, 1610]], [[64898, 64898], "mapped", [1604, 1581, 1609]], [[64899, 64900], "mapped", [1604, 1580, 1580]], [[64901, 64902], "mapped", [1604, 1582, 1605]], [[64903, 64904], "mapped", [1604, 1605, 1581]], [[64905, 64905], "mapped", [1605, 1581, 1580]], [[64906, 64906], "mapped", [1605, 1581, 1605]], [[64907, 64907], "mapped", [1605, 1581, 1610]], [[64908, 64908], "mapped", [1605, 1580, 1581]], [[64909, 64909], "mapped", [1605, 1580, 1605]], [[64910, 64910], "mapped", [1605, 1582, 1580]], [[64911, 64911], "mapped", [1605, 1582, 1605]], [[64912, 64913], "disallowed"], [[64914, 64914], "mapped", [1605, 1580, 1582]], [[64915, 64915], "mapped", [1607, 1605, 1580]], [[64916, 64916], "mapped", [1607, 1605, 1605]], [[64917, 64917], "mapped", [1606, 1581, 1605]], [[64918, 64918], "mapped", [1606, 1581, 1609]], [[64919, 64920], "mapped", [1606, 1580, 1605]], [[64921, 64921], "mapped", [1606, 1580, 1609]], [[64922, 64922], "mapped", [1606, 1605, 1610]], [[64923, 64923], "mapped", [1606, 1605, 1609]], [[64924, 64925], "mapped", [1610, 1605, 1605]], [[64926, 64926], "mapped", [1576, 1582, 1610]], [[64927, 64927], "mapped", [1578, 1580, 1610]], [[64928, 64928], "mapped", [1578, 1580, 1609]], [[64929, 64929], "mapped", [1578, 1582, 1610]], [[64930, 64930], "mapped", [1578, 1582, 1609]], [[64931, 64931], "mapped", [1578, 1605, 1610]], [[64932, 64932], "mapped", [1578, 1605, 1609]], [[64933, 64933], "mapped", [1580, 1605, 1610]], [[64934, 64934], "mapped", [1580, 1581, 1609]], [[64935, 64935], "mapped", [1580, 1605, 1609]], [[64936, 64936], "mapped", [1587, 1582, 1609]], [[64937, 64937], "mapped", [1589, 1581, 1610]], [[64938, 64938], "mapped", [1588, 1581, 1610]], [[64939, 64939], "mapped", [1590, 1581, 1610]], [[64940, 64940], "mapped", [1604, 1580, 1610]], [[64941, 64941], "mapped", [1604, 1605, 1610]], [[64942, 64942], "mapped", [1610, 1581, 1610]], [[64943, 64943], "mapped", [1610, 1580, 1610]], [[64944, 64944], "mapped", [1610, 1605, 1610]], [[64945, 64945], "mapped", [1605, 1605, 1610]], [[64946, 64946], "mapped", [1602, 1605, 1610]], [[64947, 64947], "mapped", [1606, 1581, 1610]], [[64948, 64948], "mapped", [1602, 1605, 1581]], [[64949, 64949], "mapped", [1604, 1581, 1605]], [[64950, 64950], "mapped", [1593, 1605, 1610]], [[64951, 64951], "mapped", [1603, 1605, 1610]], [[64952, 64952], "mapped", [1606, 1580, 1581]], [[64953, 64953], "mapped", [1605, 1582, 1610]], [[64954, 64954], "mapped", [1604, 1580, 1605]], [[64955, 64955], "mapped", [1603, 1605, 1605]], [[64956, 64956], "mapped", [1604, 1580, 1605]], [[64957, 64957], "mapped", [1606, 1580, 1581]], [[64958, 64958], "mapped", [1580, 1581, 1610]], [[64959, 64959], "mapped", [1581, 1580, 1610]], [[64960, 64960], "mapped", [1605, 1580, 1610]], [[64961, 64961], "mapped", [1601, 1605, 1610]], [[64962, 64962], "mapped", [1576, 1581, 1610]], [[64963, 64963], "mapped", [1603, 1605, 1605]], [[64964, 64964], "mapped", [1593, 1580, 1605]], [[64965, 64965], "mapped", [1589, 1605, 1605]], [[64966, 64966], "mapped", [1587, 1582, 1610]], [[64967, 64967], "mapped", [1606, 1580, 1610]], [[64968, 64975], "disallowed"], [[64976, 65007], "disallowed"], [[65008, 65008], "mapped", [1589, 1604, 1746]], [[65009, 65009], "mapped", [1602, 1604, 1746]], [[65010, 65010], "mapped", [1575, 1604, 1604, 1607]], [[65011, 65011], "mapped", [1575, 1603, 1576, 1585]], [[65012, 65012], "mapped", [1605, 1581, 1605, 1583]], [[65013, 65013], "mapped", [1589, 1604, 1593, 1605]], [[65014, 65014], "mapped", [1585, 1587, 1608, 1604]], [[65015, 65015], "mapped", [1593, 1604, 1610, 1607]], [[65016, 65016], "mapped", [1608, 1587, 1604, 1605]], [[65017, 65017], "mapped", [1589, 1604, 1609]], [[65018, 65018], "disallowed_STD3_mapped", [1589, 1604, 1609, 32, 1575, 1604, 1604, 1607, 32, 1593, 1604, 1610, 1607, 32, 1608, 1587, 1604, 1605]], [[65019, 65019], "disallowed_STD3_mapped", [1580, 1604, 32, 1580, 1604, 1575, 1604, 1607]], [[65020, 65020], "mapped", [1585, 1740, 1575, 1604]], [[65021, 65021], "valid", [], "NV8"], [[65022, 65023], "disallowed"], [[65024, 65039], "ignored"], [[65040, 65040], "disallowed_STD3_mapped", [44]], [[65041, 65041], "mapped", [12289]], [[65042, 65042], "disallowed"], [[65043, 65043], "disallowed_STD3_mapped", [58]], [[65044, 65044], "disallowed_STD3_mapped", [59]], [[65045, 65045], "disallowed_STD3_mapped", [33]], [[65046, 65046], "disallowed_STD3_mapped", [63]], [[65047, 65047], "mapped", [12310]], [[65048, 65048], "mapped", [12311]], [[65049, 65049], "disallowed"], [[65050, 65055], "disallowed"], [[65056, 65059], "valid"], [[65060, 65062], "valid"], [[65063, 65069], "valid"], [[65070, 65071], "valid"], [[65072, 65072], "disallowed"], [[65073, 65073], "mapped", [8212]], [[65074, 65074], "mapped", [8211]], [[65075, 65076], "disallowed_STD3_mapped", [95]], [[65077, 65077], "disallowed_STD3_mapped", [40]], [[65078, 65078], "disallowed_STD3_mapped", [41]], [[65079, 65079], "disallowed_STD3_mapped", [123]], [[65080, 65080], "disallowed_STD3_mapped", [125]], [[65081, 65081], "mapped", [12308]], [[65082, 65082], "mapped", [12309]], [[65083, 65083], "mapped", [12304]], [[65084, 65084], "mapped", [12305]], [[65085, 65085], "mapped", [12298]], [[65086, 65086], "mapped", [12299]], [[65087, 65087], "mapped", [12296]], [[65088, 65088], "mapped", [12297]], [[65089, 65089], "mapped", [12300]], [[65090, 65090], "mapped", [12301]], [[65091, 65091], "mapped", [12302]], [[65092, 65092], "mapped", [12303]], [[65093, 65094], "valid", [], "NV8"], [[65095, 65095], "disallowed_STD3_mapped", [91]], [[65096, 65096], "disallowed_STD3_mapped", [93]], [[65097, 65100], "disallowed_STD3_mapped", [32, 773]], [[65101, 65103], "disallowed_STD3_mapped", [95]], [[65104, 65104], "disallowed_STD3_mapped", [44]], [[65105, 65105], "mapped", [12289]], [[65106, 65106], "disallowed"], [[65107, 65107], "disallowed"], [[65108, 65108], "disallowed_STD3_mapped", [59]], [[65109, 65109], "disallowed_STD3_mapped", [58]], [[65110, 65110], "disallowed_STD3_mapped", [63]], [[65111, 65111], "disallowed_STD3_mapped", [33]], [[65112, 65112], "mapped", [8212]], [[65113, 65113], "disallowed_STD3_mapped", [40]], [[65114, 65114], "disallowed_STD3_mapped", [41]], [[65115, 65115], "disallowed_STD3_mapped", [123]], [[65116, 65116], "disallowed_STD3_mapped", [125]], [[65117, 65117], "mapped", [12308]], [[65118, 65118], "mapped", [12309]], [[65119, 65119], "disallowed_STD3_mapped", [35]], [[65120, 65120], "disallowed_STD3_mapped", [38]], [[65121, 65121], "disallowed_STD3_mapped", [42]], [[65122, 65122], "disallowed_STD3_mapped", [43]], [[65123, 65123], "mapped", [45]], [[65124, 65124], "disallowed_STD3_mapped", [60]], [[65125, 65125], "disallowed_STD3_mapped", [62]], [[65126, 65126], "disallowed_STD3_mapped", [61]], [[65127, 65127], "disallowed"], [[65128, 65128], "disallowed_STD3_mapped", [92]], [[65129, 65129], "disallowed_STD3_mapped", [36]], [[65130, 65130], "disallowed_STD3_mapped", [37]], [[65131, 65131], "disallowed_STD3_mapped", [64]], [[65132, 65135], "disallowed"], [[65136, 65136], "disallowed_STD3_mapped", [32, 1611]], [[65137, 65137], "mapped", [1600, 1611]], [[65138, 65138], "disallowed_STD3_mapped", [32, 1612]], [[65139, 65139], "valid"], [[65140, 65140], "disallowed_STD3_mapped", [32, 1613]], [[65141, 65141], "disallowed"], [[65142, 65142], "disallowed_STD3_mapped", [32, 1614]], [[65143, 65143], "mapped", [1600, 1614]], [[65144, 65144], "disallowed_STD3_mapped", [32, 1615]], [[65145, 65145], "mapped", [1600, 1615]], [[65146, 65146], "disallowed_STD3_mapped", [32, 1616]], [[65147, 65147], "mapped", [1600, 1616]], [[65148, 65148], "disallowed_STD3_mapped", [32, 1617]], [[65149, 65149], "mapped", [1600, 1617]], [[65150, 65150], "disallowed_STD3_mapped", [32, 1618]], [[65151, 65151], "mapped", [1600, 1618]], [[65152, 65152], "mapped", [1569]], [[65153, 65154], "mapped", [1570]], [[65155, 65156], "mapped", [1571]], [[65157, 65158], "mapped", [1572]], [[65159, 65160], "mapped", [1573]], [[65161, 65164], "mapped", [1574]], [[65165, 65166], "mapped", [1575]], [[65167, 65170], "mapped", [1576]], [[65171, 65172], "mapped", [1577]], [[65173, 65176], "mapped", [1578]], [[65177, 65180], "mapped", [1579]], [[65181, 65184], "mapped", [1580]], [[65185, 65188], "mapped", [1581]], [[65189, 65192], "mapped", [1582]], [[65193, 65194], "mapped", [1583]], [[65195, 65196], "mapped", [1584]], [[65197, 65198], "mapped", [1585]], [[65199, 65200], "mapped", [1586]], [[65201, 65204], "mapped", [1587]], [[65205, 65208], "mapped", [1588]], [[65209, 65212], "mapped", [1589]], [[65213, 65216], "mapped", [1590]], [[65217, 65220], "mapped", [1591]], [[65221, 65224], "mapped", [1592]], [[65225, 65228], "mapped", [1593]], [[65229, 65232], "mapped", [1594]], [[65233, 65236], "mapped", [1601]], [[65237, 65240], "mapped", [1602]], [[65241, 65244], "mapped", [1603]], [[65245, 65248], "mapped", [1604]], [[65249, 65252], "mapped", [1605]], [[65253, 65256], "mapped", [1606]], [[65257, 65260], "mapped", [1607]], [[65261, 65262], "mapped", [1608]], [[65263, 65264], "mapped", [1609]], [[65265, 65268], "mapped", [1610]], [[65269, 65270], "mapped", [1604, 1570]], [[65271, 65272], "mapped", [1604, 1571]], [[65273, 65274], "mapped", [1604, 1573]], [[65275, 65276], "mapped", [1604, 1575]], [[65277, 65278], "disallowed"], [[65279, 65279], "ignored"], [[65280, 65280], "disallowed"], [[65281, 65281], "disallowed_STD3_mapped", [33]], [[65282, 65282], "disallowed_STD3_mapped", [34]], [[65283, 65283], "disallowed_STD3_mapped", [35]], [[65284, 65284], "disallowed_STD3_mapped", [36]], [[65285, 65285], "disallowed_STD3_mapped", [37]], [[65286, 65286], "disallowed_STD3_mapped", [38]], [[65287, 65287], "disallowed_STD3_mapped", [39]], [[65288, 65288], "disallowed_STD3_mapped", [40]], [[65289, 65289], "disallowed_STD3_mapped", [41]], [[65290, 65290], "disallowed_STD3_mapped", [42]], [[65291, 65291], "disallowed_STD3_mapped", [43]], [[65292, 65292], "disallowed_STD3_mapped", [44]], [[65293, 65293], "mapped", [45]], [[65294, 65294], "mapped", [46]], [[65295, 65295], "disallowed_STD3_mapped", [47]], [[65296, 65296], "mapped", [48]], [[65297, 65297], "mapped", [49]], [[65298, 65298], "mapped", [50]], [[65299, 65299], "mapped", [51]], [[65300, 65300], "mapped", [52]], [[65301, 65301], "mapped", [53]], [[65302, 65302], "mapped", [54]], [[65303, 65303], "mapped", [55]], [[65304, 65304], "mapped", [56]], [[65305, 65305], "mapped", [57]], [[65306, 65306], "disallowed_STD3_mapped", [58]], [[65307, 65307], "disallowed_STD3_mapped", [59]], [[65308, 65308], "disallowed_STD3_mapped", [60]], [[65309, 65309], "disallowed_STD3_mapped", [61]], [[65310, 65310], "disallowed_STD3_mapped", [62]], [[65311, 65311], "disallowed_STD3_mapped", [63]], [[65312, 65312], "disallowed_STD3_mapped", [64]], [[65313, 65313], "mapped", [97]], [[65314, 65314], "mapped", [98]], [[65315, 65315], "mapped", [99]], [[65316, 65316], "mapped", [100]], [[65317, 65317], "mapped", [101]], [[65318, 65318], "mapped", [102]], [[65319, 65319], "mapped", [103]], [[65320, 65320], "mapped", [104]], [[65321, 65321], "mapped", [105]], [[65322, 65322], "mapped", [106]], [[65323, 65323], "mapped", [107]], [[65324, 65324], "mapped", [108]], [[65325, 65325], "mapped", [109]], [[65326, 65326], "mapped", [110]], [[65327, 65327], "mapped", [111]], [[65328, 65328], "mapped", [112]], [[65329, 65329], "mapped", [113]], [[65330, 65330], "mapped", [114]], [[65331, 65331], "mapped", [115]], [[65332, 65332], "mapped", [116]], [[65333, 65333], "mapped", [117]], [[65334, 65334], "mapped", [118]], [[65335, 65335], "mapped", [119]], [[65336, 65336], "mapped", [120]], [[65337, 65337], "mapped", [121]], [[65338, 65338], "mapped", [122]], [[65339, 65339], "disallowed_STD3_mapped", [91]], [[65340, 65340], "disallowed_STD3_mapped", [92]], [[65341, 65341], "disallowed_STD3_mapped", [93]], [[65342, 65342], "disallowed_STD3_mapped", [94]], [[65343, 65343], "disallowed_STD3_mapped", [95]], [[65344, 65344], "disallowed_STD3_mapped", [96]], [[65345, 65345], "mapped", [97]], [[65346, 65346], "mapped", [98]], [[65347, 65347], "mapped", [99]], [[65348, 65348], "mapped", [100]], [[65349, 65349], "mapped", [101]], [[65350, 65350], "mapped", [102]], [[65351, 65351], "mapped", [103]], [[65352, 65352], "mapped", [104]], [[65353, 65353], "mapped", [105]], [[65354, 65354], "mapped", [106]], [[65355, 65355], "mapped", [107]], [[65356, 65356], "mapped", [108]], [[65357, 65357], "mapped", [109]], [[65358, 65358], "mapped", [110]], [[65359, 65359], "mapped", [111]], [[65360, 65360], "mapped", [112]], [[65361, 65361], "mapped", [113]], [[65362, 65362], "mapped", [114]], [[65363, 65363], "mapped", [115]], [[65364, 65364], "mapped", [116]], [[65365, 65365], "mapped", [117]], [[65366, 65366], "mapped", [118]], [[65367, 65367], "mapped", [119]], [[65368, 65368], "mapped", [120]], [[65369, 65369], "mapped", [121]], [[65370, 65370], "mapped", [122]], [[65371, 65371], "disallowed_STD3_mapped", [123]], [[65372, 65372], "disallowed_STD3_mapped", [124]], [[65373, 65373], "disallowed_STD3_mapped", [125]], [[65374, 65374], "disallowed_STD3_mapped", [126]], [[65375, 65375], "mapped", [10629]], [[65376, 65376], "mapped", [10630]], [[65377, 65377], "mapped", [46]], [[65378, 65378], "mapped", [12300]], [[65379, 65379], "mapped", [12301]], [[65380, 65380], "mapped", [12289]], [[65381, 65381], "mapped", [12539]], [[65382, 65382], "mapped", [12530]], [[65383, 65383], "mapped", [12449]], [[65384, 65384], "mapped", [12451]], [[65385, 65385], "mapped", [12453]], [[65386, 65386], "mapped", [12455]], [[65387, 65387], "mapped", [12457]], [[65388, 65388], "mapped", [12515]], [[65389, 65389], "mapped", [12517]], [[65390, 65390], "mapped", [12519]], [[65391, 65391], "mapped", [12483]], [[65392, 65392], "mapped", [12540]], [[65393, 65393], "mapped", [12450]], [[65394, 65394], "mapped", [12452]], [[65395, 65395], "mapped", [12454]], [[65396, 65396], "mapped", [12456]], [[65397, 65397], "mapped", [12458]], [[65398, 65398], "mapped", [12459]], [[65399, 65399], "mapped", [12461]], [[65400, 65400], "mapped", [12463]], [[65401, 65401], "mapped", [12465]], [[65402, 65402], "mapped", [12467]], [[65403, 65403], "mapped", [12469]], [[65404, 65404], "mapped", [12471]], [[65405, 65405], "mapped", [12473]], [[65406, 65406], "mapped", [12475]], [[65407, 65407], "mapped", [12477]], [[65408, 65408], "mapped", [12479]], [[65409, 65409], "mapped", [12481]], [[65410, 65410], "mapped", [12484]], [[65411, 65411], "mapped", [12486]], [[65412, 65412], "mapped", [12488]], [[65413, 65413], "mapped", [12490]], [[65414, 65414], "mapped", [12491]], [[65415, 65415], "mapped", [12492]], [[65416, 65416], "mapped", [12493]], [[65417, 65417], "mapped", [12494]], [[65418, 65418], "mapped", [12495]], [[65419, 65419], "mapped", [12498]], [[65420, 65420], "mapped", [12501]], [[65421, 65421], "mapped", [12504]], [[65422, 65422], "mapped", [12507]], [[65423, 65423], "mapped", [12510]], [[65424, 65424], "mapped", [12511]], [[65425, 65425], "mapped", [12512]], [[65426, 65426], "mapped", [12513]], [[65427, 65427], "mapped", [12514]], [[65428, 65428], "mapped", [12516]], [[65429, 65429], "mapped", [12518]], [[65430, 65430], "mapped", [12520]], [[65431, 65431], "mapped", [12521]], [[65432, 65432], "mapped", [12522]], [[65433, 65433], "mapped", [12523]], [[65434, 65434], "mapped", [12524]], [[65435, 65435], "mapped", [12525]], [[65436, 65436], "mapped", [12527]], [[65437, 65437], "mapped", [12531]], [[65438, 65438], "mapped", [12441]], [[65439, 65439], "mapped", [12442]], [[65440, 65440], "disallowed"], [[65441, 65441], "mapped", [4352]], [[65442, 65442], "mapped", [4353]], [[65443, 65443], "mapped", [4522]], [[65444, 65444], "mapped", [4354]], [[65445, 65445], "mapped", [4524]], [[65446, 65446], "mapped", [4525]], [[65447, 65447], "mapped", [4355]], [[65448, 65448], "mapped", [4356]], [[65449, 65449], "mapped", [4357]], [[65450, 65450], "mapped", [4528]], [[65451, 65451], "mapped", [4529]], [[65452, 65452], "mapped", [4530]], [[65453, 65453], "mapped", [4531]], [[65454, 65454], "mapped", [4532]], [[65455, 65455], "mapped", [4533]], [[65456, 65456], "mapped", [4378]], [[65457, 65457], "mapped", [4358]], [[65458, 65458], "mapped", [4359]], [[65459, 65459], "mapped", [4360]], [[65460, 65460], "mapped", [4385]], [[65461, 65461], "mapped", [4361]], [[65462, 65462], "mapped", [4362]], [[65463, 65463], "mapped", [4363]], [[65464, 65464], "mapped", [4364]], [[65465, 65465], "mapped", [4365]], [[65466, 65466], "mapped", [4366]], [[65467, 65467], "mapped", [4367]], [[65468, 65468], "mapped", [4368]], [[65469, 65469], "mapped", [4369]], [[65470, 65470], "mapped", [4370]], [[65471, 65473], "disallowed"], [[65474, 65474], "mapped", [4449]], [[65475, 65475], "mapped", [4450]], [[65476, 65476], "mapped", [4451]], [[65477, 65477], "mapped", [4452]], [[65478, 65478], "mapped", [4453]], [[65479, 65479], "mapped", [4454]], [[65480, 65481], "disallowed"], [[65482, 65482], "mapped", [4455]], [[65483, 65483], "mapped", [4456]], [[65484, 65484], "mapped", [4457]], [[65485, 65485], "mapped", [4458]], [[65486, 65486], "mapped", [4459]], [[65487, 65487], "mapped", [4460]], [[65488, 65489], "disallowed"], [[65490, 65490], "mapped", [4461]], [[65491, 65491], "mapped", [4462]], [[65492, 65492], "mapped", [4463]], [[65493, 65493], "mapped", [4464]], [[65494, 65494], "mapped", [4465]], [[65495, 65495], "mapped", [4466]], [[65496, 65497], "disallowed"], [[65498, 65498], "mapped", [4467]], [[65499, 65499], "mapped", [4468]], [[65500, 65500], "mapped", [4469]], [[65501, 65503], "disallowed"], [[65504, 65504], "mapped", [162]], [[65505, 65505], "mapped", [163]], [[65506, 65506], "mapped", [172]], [[65507, 65507], "disallowed_STD3_mapped", [32, 772]], [[65508, 65508], "mapped", [166]], [[65509, 65509], "mapped", [165]], [[65510, 65510], "mapped", [8361]], [[65511, 65511], "disallowed"], [[65512, 65512], "mapped", [9474]], [[65513, 65513], "mapped", [8592]], [[65514, 65514], "mapped", [8593]], [[65515, 65515], "mapped", [8594]], [[65516, 65516], "mapped", [8595]], [[65517, 65517], "mapped", [9632]], [[65518, 65518], "mapped", [9675]], [[65519, 65528], "disallowed"], [[65529, 65531], "disallowed"], [[65532, 65532], "disallowed"], [[65533, 65533], "disallowed"], [[65534, 65535], "disallowed"], [[65536, 65547], "valid"], [[65548, 65548], "disallowed"], [[65549, 65574], "valid"], [[65575, 65575], "disallowed"], [[65576, 65594], "valid"], [[65595, 65595], "disallowed"], [[65596, 65597], "valid"], [[65598, 65598], "disallowed"], [[65599, 65613], "valid"], [[65614, 65615], "disallowed"], [[65616, 65629], "valid"], [[65630, 65663], "disallowed"], [[65664, 65786], "valid"], [[65787, 65791], "disallowed"], [[65792, 65794], "valid", [], "NV8"], [[65795, 65798], "disallowed"], [[65799, 65843], "valid", [], "NV8"], [[65844, 65846], "disallowed"], [[65847, 65855], "valid", [], "NV8"], [[65856, 65930], "valid", [], "NV8"], [[65931, 65932], "valid", [], "NV8"], [[65933, 65935], "disallowed"], [[65936, 65947], "valid", [], "NV8"], [[65948, 65951], "disallowed"], [[65952, 65952], "valid", [], "NV8"], [[65953, 65999], "disallowed"], [[66e3, 66044], "valid", [], "NV8"], [[66045, 66045], "valid"], [[66046, 66175], "disallowed"], [[66176, 66204], "valid"], [[66205, 66207], "disallowed"], [[66208, 66256], "valid"], [[66257, 66271], "disallowed"], [[66272, 66272], "valid"], [[66273, 66299], "valid", [], "NV8"], [[66300, 66303], "disallowed"], [[66304, 66334], "valid"], [[66335, 66335], "valid"], [[66336, 66339], "valid", [], "NV8"], [[66340, 66351], "disallowed"], [[66352, 66368], "valid"], [[66369, 66369], "valid", [], "NV8"], [[66370, 66377], "valid"], [[66378, 66378], "valid", [], "NV8"], [[66379, 66383], "disallowed"], [[66384, 66426], "valid"], [[66427, 66431], "disallowed"], [[66432, 66461], "valid"], [[66462, 66462], "disallowed"], [[66463, 66463], "valid", [], "NV8"], [[66464, 66499], "valid"], [[66500, 66503], "disallowed"], [[66504, 66511], "valid"], [[66512, 66517], "valid", [], "NV8"], [[66518, 66559], "disallowed"], [[66560, 66560], "mapped", [66600]], [[66561, 66561], "mapped", [66601]], [[66562, 66562], "mapped", [66602]], [[66563, 66563], "mapped", [66603]], [[66564, 66564], "mapped", [66604]], [[66565, 66565], "mapped", [66605]], [[66566, 66566], "mapped", [66606]], [[66567, 66567], "mapped", [66607]], [[66568, 66568], "mapped", [66608]], [[66569, 66569], "mapped", [66609]], [[66570, 66570], "mapped", [66610]], [[66571, 66571], "mapped", [66611]], [[66572, 66572], "mapped", [66612]], [[66573, 66573], "mapped", [66613]], [[66574, 66574], "mapped", [66614]], [[66575, 66575], "mapped", [66615]], [[66576, 66576], "mapped", [66616]], [[66577, 66577], "mapped", [66617]], [[66578, 66578], "mapped", [66618]], [[66579, 66579], "mapped", [66619]], [[66580, 66580], "mapped", [66620]], [[66581, 66581], "mapped", [66621]], [[66582, 66582], "mapped", [66622]], [[66583, 66583], "mapped", [66623]], [[66584, 66584], "mapped", [66624]], [[66585, 66585], "mapped", [66625]], [[66586, 66586], "mapped", [66626]], [[66587, 66587], "mapped", [66627]], [[66588, 66588], "mapped", [66628]], [[66589, 66589], "mapped", [66629]], [[66590, 66590], "mapped", [66630]], [[66591, 66591], "mapped", [66631]], [[66592, 66592], "mapped", [66632]], [[66593, 66593], "mapped", [66633]], [[66594, 66594], "mapped", [66634]], [[66595, 66595], "mapped", [66635]], [[66596, 66596], "mapped", [66636]], [[66597, 66597], "mapped", [66637]], [[66598, 66598], "mapped", [66638]], [[66599, 66599], "mapped", [66639]], [[66600, 66637], "valid"], [[66638, 66717], "valid"], [[66718, 66719], "disallowed"], [[66720, 66729], "valid"], [[66730, 66815], "disallowed"], [[66816, 66855], "valid"], [[66856, 66863], "disallowed"], [[66864, 66915], "valid"], [[66916, 66926], "disallowed"], [[66927, 66927], "valid", [], "NV8"], [[66928, 67071], "disallowed"], [[67072, 67382], "valid"], [[67383, 67391], "disallowed"], [[67392, 67413], "valid"], [[67414, 67423], "disallowed"], [[67424, 67431], "valid"], [[67432, 67583], "disallowed"], [[67584, 67589], "valid"], [[67590, 67591], "disallowed"], [[67592, 67592], "valid"], [[67593, 67593], "disallowed"], [[67594, 67637], "valid"], [[67638, 67638], "disallowed"], [[67639, 67640], "valid"], [[67641, 67643], "disallowed"], [[67644, 67644], "valid"], [[67645, 67646], "disallowed"], [[67647, 67647], "valid"], [[67648, 67669], "valid"], [[67670, 67670], "disallowed"], [[67671, 67679], "valid", [], "NV8"], [[67680, 67702], "valid"], [[67703, 67711], "valid", [], "NV8"], [[67712, 67742], "valid"], [[67743, 67750], "disallowed"], [[67751, 67759], "valid", [], "NV8"], [[67760, 67807], "disallowed"], [[67808, 67826], "valid"], [[67827, 67827], "disallowed"], [[67828, 67829], "valid"], [[67830, 67834], "disallowed"], [[67835, 67839], "valid", [], "NV8"], [[67840, 67861], "valid"], [[67862, 67865], "valid", [], "NV8"], [[67866, 67867], "valid", [], "NV8"], [[67868, 67870], "disallowed"], [[67871, 67871], "valid", [], "NV8"], [[67872, 67897], "valid"], [[67898, 67902], "disallowed"], [[67903, 67903], "valid", [], "NV8"], [[67904, 67967], "disallowed"], [[67968, 68023], "valid"], [[68024, 68027], "disallowed"], [[68028, 68029], "valid", [], "NV8"], [[68030, 68031], "valid"], [[68032, 68047], "valid", [], "NV8"], [[68048, 68049], "disallowed"], [[68050, 68095], "valid", [], "NV8"], [[68096, 68099], "valid"], [[68100, 68100], "disallowed"], [[68101, 68102], "valid"], [[68103, 68107], "disallowed"], [[68108, 68115], "valid"], [[68116, 68116], "disallowed"], [[68117, 68119], "valid"], [[68120, 68120], "disallowed"], [[68121, 68147], "valid"], [[68148, 68151], "disallowed"], [[68152, 68154], "valid"], [[68155, 68158], "disallowed"], [[68159, 68159], "valid"], [[68160, 68167], "valid", [], "NV8"], [[68168, 68175], "disallowed"], [[68176, 68184], "valid", [], "NV8"], [[68185, 68191], "disallowed"], [[68192, 68220], "valid"], [[68221, 68223], "valid", [], "NV8"], [[68224, 68252], "valid"], [[68253, 68255], "valid", [], "NV8"], [[68256, 68287], "disallowed"], [[68288, 68295], "valid"], [[68296, 68296], "valid", [], "NV8"], [[68297, 68326], "valid"], [[68327, 68330], "disallowed"], [[68331, 68342], "valid", [], "NV8"], [[68343, 68351], "disallowed"], [[68352, 68405], "valid"], [[68406, 68408], "disallowed"], [[68409, 68415], "valid", [], "NV8"], [[68416, 68437], "valid"], [[68438, 68439], "disallowed"], [[68440, 68447], "valid", [], "NV8"], [[68448, 68466], "valid"], [[68467, 68471], "disallowed"], [[68472, 68479], "valid", [], "NV8"], [[68480, 68497], "valid"], [[68498, 68504], "disallowed"], [[68505, 68508], "valid", [], "NV8"], [[68509, 68520], "disallowed"], [[68521, 68527], "valid", [], "NV8"], [[68528, 68607], "disallowed"], [[68608, 68680], "valid"], [[68681, 68735], "disallowed"], [[68736, 68736], "mapped", [68800]], [[68737, 68737], "mapped", [68801]], [[68738, 68738], "mapped", [68802]], [[68739, 68739], "mapped", [68803]], [[68740, 68740], "mapped", [68804]], [[68741, 68741], "mapped", [68805]], [[68742, 68742], "mapped", [68806]], [[68743, 68743], "mapped", [68807]], [[68744, 68744], "mapped", [68808]], [[68745, 68745], "mapped", [68809]], [[68746, 68746], "mapped", [68810]], [[68747, 68747], "mapped", [68811]], [[68748, 68748], "mapped", [68812]], [[68749, 68749], "mapped", [68813]], [[68750, 68750], "mapped", [68814]], [[68751, 68751], "mapped", [68815]], [[68752, 68752], "mapped", [68816]], [[68753, 68753], "mapped", [68817]], [[68754, 68754], "mapped", [68818]], [[68755, 68755], "mapped", [68819]], [[68756, 68756], "mapped", [68820]], [[68757, 68757], "mapped", [68821]], [[68758, 68758], "mapped", [68822]], [[68759, 68759], "mapped", [68823]], [[68760, 68760], "mapped", [68824]], [[68761, 68761], "mapped", [68825]], [[68762, 68762], "mapped", [68826]], [[68763, 68763], "mapped", [68827]], [[68764, 68764], "mapped", [68828]], [[68765, 68765], "mapped", [68829]], [[68766, 68766], "mapped", [68830]], [[68767, 68767], "mapped", [68831]], [[68768, 68768], "mapped", [68832]], [[68769, 68769], "mapped", [68833]], [[68770, 68770], "mapped", [68834]], [[68771, 68771], "mapped", [68835]], [[68772, 68772], "mapped", [68836]], [[68773, 68773], "mapped", [68837]], [[68774, 68774], "mapped", [68838]], [[68775, 68775], "mapped", [68839]], [[68776, 68776], "mapped", [68840]], [[68777, 68777], "mapped", [68841]], [[68778, 68778], "mapped", [68842]], [[68779, 68779], "mapped", [68843]], [[68780, 68780], "mapped", [68844]], [[68781, 68781], "mapped", [68845]], [[68782, 68782], "mapped", [68846]], [[68783, 68783], "mapped", [68847]], [[68784, 68784], "mapped", [68848]], [[68785, 68785], "mapped", [68849]], [[68786, 68786], "mapped", [68850]], [[68787, 68799], "disallowed"], [[68800, 68850], "valid"], [[68851, 68857], "disallowed"], [[68858, 68863], "valid", [], "NV8"], [[68864, 69215], "disallowed"], [[69216, 69246], "valid", [], "NV8"], [[69247, 69631], "disallowed"], [[69632, 69702], "valid"], [[69703, 69709], "valid", [], "NV8"], [[69710, 69713], "disallowed"], [[69714, 69733], "valid", [], "NV8"], [[69734, 69743], "valid"], [[69744, 69758], "disallowed"], [[69759, 69759], "valid"], [[69760, 69818], "valid"], [[69819, 69820], "valid", [], "NV8"], [[69821, 69821], "disallowed"], [[69822, 69825], "valid", [], "NV8"], [[69826, 69839], "disallowed"], [[69840, 69864], "valid"], [[69865, 69871], "disallowed"], [[69872, 69881], "valid"], [[69882, 69887], "disallowed"], [[69888, 69940], "valid"], [[69941, 69941], "disallowed"], [[69942, 69951], "valid"], [[69952, 69955], "valid", [], "NV8"], [[69956, 69967], "disallowed"], [[69968, 70003], "valid"], [[70004, 70005], "valid", [], "NV8"], [[70006, 70006], "valid"], [[70007, 70015], "disallowed"], [[70016, 70084], "valid"], [[70085, 70088], "valid", [], "NV8"], [[70089, 70089], "valid", [], "NV8"], [[70090, 70092], "valid"], [[70093, 70093], "valid", [], "NV8"], [[70094, 70095], "disallowed"], [[70096, 70105], "valid"], [[70106, 70106], "valid"], [[70107, 70107], "valid", [], "NV8"], [[70108, 70108], "valid"], [[70109, 70111], "valid", [], "NV8"], [[70112, 70112], "disallowed"], [[70113, 70132], "valid", [], "NV8"], [[70133, 70143], "disallowed"], [[70144, 70161], "valid"], [[70162, 70162], "disallowed"], [[70163, 70199], "valid"], [[70200, 70205], "valid", [], "NV8"], [[70206, 70271], "disallowed"], [[70272, 70278], "valid"], [[70279, 70279], "disallowed"], [[70280, 70280], "valid"], [[70281, 70281], "disallowed"], [[70282, 70285], "valid"], [[70286, 70286], "disallowed"], [[70287, 70301], "valid"], [[70302, 70302], "disallowed"], [[70303, 70312], "valid"], [[70313, 70313], "valid", [], "NV8"], [[70314, 70319], "disallowed"], [[70320, 70378], "valid"], [[70379, 70383], "disallowed"], [[70384, 70393], "valid"], [[70394, 70399], "disallowed"], [[70400, 70400], "valid"], [[70401, 70403], "valid"], [[70404, 70404], "disallowed"], [[70405, 70412], "valid"], [[70413, 70414], "disallowed"], [[70415, 70416], "valid"], [[70417, 70418], "disallowed"], [[70419, 70440], "valid"], [[70441, 70441], "disallowed"], [[70442, 70448], "valid"], [[70449, 70449], "disallowed"], [[70450, 70451], "valid"], [[70452, 70452], "disallowed"], [[70453, 70457], "valid"], [[70458, 70459], "disallowed"], [[70460, 70468], "valid"], [[70469, 70470], "disallowed"], [[70471, 70472], "valid"], [[70473, 70474], "disallowed"], [[70475, 70477], "valid"], [[70478, 70479], "disallowed"], [[70480, 70480], "valid"], [[70481, 70486], "disallowed"], [[70487, 70487], "valid"], [[70488, 70492], "disallowed"], [[70493, 70499], "valid"], [[70500, 70501], "disallowed"], [[70502, 70508], "valid"], [[70509, 70511], "disallowed"], [[70512, 70516], "valid"], [[70517, 70783], "disallowed"], [[70784, 70853], "valid"], [[70854, 70854], "valid", [], "NV8"], [[70855, 70855], "valid"], [[70856, 70863], "disallowed"], [[70864, 70873], "valid"], [[70874, 71039], "disallowed"], [[71040, 71093], "valid"], [[71094, 71095], "disallowed"], [[71096, 71104], "valid"], [[71105, 71113], "valid", [], "NV8"], [[71114, 71127], "valid", [], "NV8"], [[71128, 71133], "valid"], [[71134, 71167], "disallowed"], [[71168, 71232], "valid"], [[71233, 71235], "valid", [], "NV8"], [[71236, 71236], "valid"], [[71237, 71247], "disallowed"], [[71248, 71257], "valid"], [[71258, 71295], "disallowed"], [[71296, 71351], "valid"], [[71352, 71359], "disallowed"], [[71360, 71369], "valid"], [[71370, 71423], "disallowed"], [[71424, 71449], "valid"], [[71450, 71452], "disallowed"], [[71453, 71467], "valid"], [[71468, 71471], "disallowed"], [[71472, 71481], "valid"], [[71482, 71487], "valid", [], "NV8"], [[71488, 71839], "disallowed"], [[71840, 71840], "mapped", [71872]], [[71841, 71841], "mapped", [71873]], [[71842, 71842], "mapped", [71874]], [[71843, 71843], "mapped", [71875]], [[71844, 71844], "mapped", [71876]], [[71845, 71845], "mapped", [71877]], [[71846, 71846], "mapped", [71878]], [[71847, 71847], "mapped", [71879]], [[71848, 71848], "mapped", [71880]], [[71849, 71849], "mapped", [71881]], [[71850, 71850], "mapped", [71882]], [[71851, 71851], "mapped", [71883]], [[71852, 71852], "mapped", [71884]], [[71853, 71853], "mapped", [71885]], [[71854, 71854], "mapped", [71886]], [[71855, 71855], "mapped", [71887]], [[71856, 71856], "mapped", [71888]], [[71857, 71857], "mapped", [71889]], [[71858, 71858], "mapped", [71890]], [[71859, 71859], "mapped", [71891]], [[71860, 71860], "mapped", [71892]], [[71861, 71861], "mapped", [71893]], [[71862, 71862], "mapped", [71894]], [[71863, 71863], "mapped", [71895]], [[71864, 71864], "mapped", [71896]], [[71865, 71865], "mapped", [71897]], [[71866, 71866], "mapped", [71898]], [[71867, 71867], "mapped", [71899]], [[71868, 71868], "mapped", [71900]], [[71869, 71869], "mapped", [71901]], [[71870, 71870], "mapped", [71902]], [[71871, 71871], "mapped", [71903]], [[71872, 71913], "valid"], [[71914, 71922], "valid", [], "NV8"], [[71923, 71934], "disallowed"], [[71935, 71935], "valid"], [[71936, 72383], "disallowed"], [[72384, 72440], "valid"], [[72441, 73727], "disallowed"], [[73728, 74606], "valid"], [[74607, 74648], "valid"], [[74649, 74649], "valid"], [[74650, 74751], "disallowed"], [[74752, 74850], "valid", [], "NV8"], [[74851, 74862], "valid", [], "NV8"], [[74863, 74863], "disallowed"], [[74864, 74867], "valid", [], "NV8"], [[74868, 74868], "valid", [], "NV8"], [[74869, 74879], "disallowed"], [[74880, 75075], "valid"], [[75076, 77823], "disallowed"], [[77824, 78894], "valid"], [[78895, 82943], "disallowed"], [[82944, 83526], "valid"], [[83527, 92159], "disallowed"], [[92160, 92728], "valid"], [[92729, 92735], "disallowed"], [[92736, 92766], "valid"], [[92767, 92767], "disallowed"], [[92768, 92777], "valid"], [[92778, 92781], "disallowed"], [[92782, 92783], "valid", [], "NV8"], [[92784, 92879], "disallowed"], [[92880, 92909], "valid"], [[92910, 92911], "disallowed"], [[92912, 92916], "valid"], [[92917, 92917], "valid", [], "NV8"], [[92918, 92927], "disallowed"], [[92928, 92982], "valid"], [[92983, 92991], "valid", [], "NV8"], [[92992, 92995], "valid"], [[92996, 92997], "valid", [], "NV8"], [[92998, 93007], "disallowed"], [[93008, 93017], "valid"], [[93018, 93018], "disallowed"], [[93019, 93025], "valid", [], "NV8"], [[93026, 93026], "disallowed"], [[93027, 93047], "valid"], [[93048, 93052], "disallowed"], [[93053, 93071], "valid"], [[93072, 93951], "disallowed"], [[93952, 94020], "valid"], [[94021, 94031], "disallowed"], [[94032, 94078], "valid"], [[94079, 94094], "disallowed"], [[94095, 94111], "valid"], [[94112, 110591], "disallowed"], [[110592, 110593], "valid"], [[110594, 113663], "disallowed"], [[113664, 113770], "valid"], [[113771, 113775], "disallowed"], [[113776, 113788], "valid"], [[113789, 113791], "disallowed"], [[113792, 113800], "valid"], [[113801, 113807], "disallowed"], [[113808, 113817], "valid"], [[113818, 113819], "disallowed"], [[113820, 113820], "valid", [], "NV8"], [[113821, 113822], "valid"], [[113823, 113823], "valid", [], "NV8"], [[113824, 113827], "ignored"], [[113828, 118783], "disallowed"], [[118784, 119029], "valid", [], "NV8"], [[119030, 119039], "disallowed"], [[119040, 119078], "valid", [], "NV8"], [[119079, 119080], "disallowed"], [[119081, 119081], "valid", [], "NV8"], [[119082, 119133], "valid", [], "NV8"], [[119134, 119134], "mapped", [119127, 119141]], [[119135, 119135], "mapped", [119128, 119141]], [[119136, 119136], "mapped", [119128, 119141, 119150]], [[119137, 119137], "mapped", [119128, 119141, 119151]], [[119138, 119138], "mapped", [119128, 119141, 119152]], [[119139, 119139], "mapped", [119128, 119141, 119153]], [[119140, 119140], "mapped", [119128, 119141, 119154]], [[119141, 119154], "valid", [], "NV8"], [[119155, 119162], "disallowed"], [[119163, 119226], "valid", [], "NV8"], [[119227, 119227], "mapped", [119225, 119141]], [[119228, 119228], "mapped", [119226, 119141]], [[119229, 119229], "mapped", [119225, 119141, 119150]], [[119230, 119230], "mapped", [119226, 119141, 119150]], [[119231, 119231], "mapped", [119225, 119141, 119151]], [[119232, 119232], "mapped", [119226, 119141, 119151]], [[119233, 119261], "valid", [], "NV8"], [[119262, 119272], "valid", [], "NV8"], [[119273, 119295], "disallowed"], [[119296, 119365], "valid", [], "NV8"], [[119366, 119551], "disallowed"], [[119552, 119638], "valid", [], "NV8"], [[119639, 119647], "disallowed"], [[119648, 119665], "valid", [], "NV8"], [[119666, 119807], "disallowed"], [[119808, 119808], "mapped", [97]], [[119809, 119809], "mapped", [98]], [[119810, 119810], "mapped", [99]], [[119811, 119811], "mapped", [100]], [[119812, 119812], "mapped", [101]], [[119813, 119813], "mapped", [102]], [[119814, 119814], "mapped", [103]], [[119815, 119815], "mapped", [104]], [[119816, 119816], "mapped", [105]], [[119817, 119817], "mapped", [106]], [[119818, 119818], "mapped", [107]], [[119819, 119819], "mapped", [108]], [[119820, 119820], "mapped", [109]], [[119821, 119821], "mapped", [110]], [[119822, 119822], "mapped", [111]], [[119823, 119823], "mapped", [112]], [[119824, 119824], "mapped", [113]], [[119825, 119825], "mapped", [114]], [[119826, 119826], "mapped", [115]], [[119827, 119827], "mapped", [116]], [[119828, 119828], "mapped", [117]], [[119829, 119829], "mapped", [118]], [[119830, 119830], "mapped", [119]], [[119831, 119831], "mapped", [120]], [[119832, 119832], "mapped", [121]], [[119833, 119833], "mapped", [122]], [[119834, 119834], "mapped", [97]], [[119835, 119835], "mapped", [98]], [[119836, 119836], "mapped", [99]], [[119837, 119837], "mapped", [100]], [[119838, 119838], "mapped", [101]], [[119839, 119839], "mapped", [102]], [[119840, 119840], "mapped", [103]], [[119841, 119841], "mapped", [104]], [[119842, 119842], "mapped", [105]], [[119843, 119843], "mapped", [106]], [[119844, 119844], "mapped", [107]], [[119845, 119845], "mapped", [108]], [[119846, 119846], "mapped", [109]], [[119847, 119847], "mapped", [110]], [[119848, 119848], "mapped", [111]], [[119849, 119849], "mapped", [112]], [[119850, 119850], "mapped", [113]], [[119851, 119851], "mapped", [114]], [[119852, 119852], "mapped", [115]], [[119853, 119853], "mapped", [116]], [[119854, 119854], "mapped", [117]], [[119855, 119855], "mapped", [118]], [[119856, 119856], "mapped", [119]], [[119857, 119857], "mapped", [120]], [[119858, 119858], "mapped", [121]], [[119859, 119859], "mapped", [122]], [[119860, 119860], "mapped", [97]], [[119861, 119861], "mapped", [98]], [[119862, 119862], "mapped", [99]], [[119863, 119863], "mapped", [100]], [[119864, 119864], "mapped", [101]], [[119865, 119865], "mapped", [102]], [[119866, 119866], "mapped", [103]], [[119867, 119867], "mapped", [104]], [[119868, 119868], "mapped", [105]], [[119869, 119869], "mapped", [106]], [[119870, 119870], "mapped", [107]], [[119871, 119871], "mapped", [108]], [[119872, 119872], "mapped", [109]], [[119873, 119873], "mapped", [110]], [[119874, 119874], "mapped", [111]], [[119875, 119875], "mapped", [112]], [[119876, 119876], "mapped", [113]], [[119877, 119877], "mapped", [114]], [[119878, 119878], "mapped", [115]], [[119879, 119879], "mapped", [116]], [[119880, 119880], "mapped", [117]], [[119881, 119881], "mapped", [118]], [[119882, 119882], "mapped", [119]], [[119883, 119883], "mapped", [120]], [[119884, 119884], "mapped", [121]], [[119885, 119885], "mapped", [122]], [[119886, 119886], "mapped", [97]], [[119887, 119887], "mapped", [98]], [[119888, 119888], "mapped", [99]], [[119889, 119889], "mapped", [100]], [[119890, 119890], "mapped", [101]], [[119891, 119891], "mapped", [102]], [[119892, 119892], "mapped", [103]], [[119893, 119893], "disallowed"], [[119894, 119894], "mapped", [105]], [[119895, 119895], "mapped", [106]], [[119896, 119896], "mapped", [107]], [[119897, 119897], "mapped", [108]], [[119898, 119898], "mapped", [109]], [[119899, 119899], "mapped", [110]], [[119900, 119900], "mapped", [111]], [[119901, 119901], "mapped", [112]], [[119902, 119902], "mapped", [113]], [[119903, 119903], "mapped", [114]], [[119904, 119904], "mapped", [115]], [[119905, 119905], "mapped", [116]], [[119906, 119906], "mapped", [117]], [[119907, 119907], "mapped", [118]], [[119908, 119908], "mapped", [119]], [[119909, 119909], "mapped", [120]], [[119910, 119910], "mapped", [121]], [[119911, 119911], "mapped", [122]], [[119912, 119912], "mapped", [97]], [[119913, 119913], "mapped", [98]], [[119914, 119914], "mapped", [99]], [[119915, 119915], "mapped", [100]], [[119916, 119916], "mapped", [101]], [[119917, 119917], "mapped", [102]], [[119918, 119918], "mapped", [103]], [[119919, 119919], "mapped", [104]], [[119920, 119920], "mapped", [105]], [[119921, 119921], "mapped", [106]], [[119922, 119922], "mapped", [107]], [[119923, 119923], "mapped", [108]], [[119924, 119924], "mapped", [109]], [[119925, 119925], "mapped", [110]], [[119926, 119926], "mapped", [111]], [[119927, 119927], "mapped", [112]], [[119928, 119928], "mapped", [113]], [[119929, 119929], "mapped", [114]], [[119930, 119930], "mapped", [115]], [[119931, 119931], "mapped", [116]], [[119932, 119932], "mapped", [117]], [[119933, 119933], "mapped", [118]], [[119934, 119934], "mapped", [119]], [[119935, 119935], "mapped", [120]], [[119936, 119936], "mapped", [121]], [[119937, 119937], "mapped", [122]], [[119938, 119938], "mapped", [97]], [[119939, 119939], "mapped", [98]], [[119940, 119940], "mapped", [99]], [[119941, 119941], "mapped", [100]], [[119942, 119942], "mapped", [101]], [[119943, 119943], "mapped", [102]], [[119944, 119944], "mapped", [103]], [[119945, 119945], "mapped", [104]], [[119946, 119946], "mapped", [105]], [[119947, 119947], "mapped", [106]], [[119948, 119948], "mapped", [107]], [[119949, 119949], "mapped", [108]], [[119950, 119950], "mapped", [109]], [[119951, 119951], "mapped", [110]], [[119952, 119952], "mapped", [111]], [[119953, 119953], "mapped", [112]], [[119954, 119954], "mapped", [113]], [[119955, 119955], "mapped", [114]], [[119956, 119956], "mapped", [115]], [[119957, 119957], "mapped", [116]], [[119958, 119958], "mapped", [117]], [[119959, 119959], "mapped", [118]], [[119960, 119960], "mapped", [119]], [[119961, 119961], "mapped", [120]], [[119962, 119962], "mapped", [121]], [[119963, 119963], "mapped", [122]], [[119964, 119964], "mapped", [97]], [[119965, 119965], "disallowed"], [[119966, 119966], "mapped", [99]], [[119967, 119967], "mapped", [100]], [[119968, 119969], "disallowed"], [[119970, 119970], "mapped", [103]], [[119971, 119972], "disallowed"], [[119973, 119973], "mapped", [106]], [[119974, 119974], "mapped", [107]], [[119975, 119976], "disallowed"], [[119977, 119977], "mapped", [110]], [[119978, 119978], "mapped", [111]], [[119979, 119979], "mapped", [112]], [[119980, 119980], "mapped", [113]], [[119981, 119981], "disallowed"], [[119982, 119982], "mapped", [115]], [[119983, 119983], "mapped", [116]], [[119984, 119984], "mapped", [117]], [[119985, 119985], "mapped", [118]], [[119986, 119986], "mapped", [119]], [[119987, 119987], "mapped", [120]], [[119988, 119988], "mapped", [121]], [[119989, 119989], "mapped", [122]], [[119990, 119990], "mapped", [97]], [[119991, 119991], "mapped", [98]], [[119992, 119992], "mapped", [99]], [[119993, 119993], "mapped", [100]], [[119994, 119994], "disallowed"], [[119995, 119995], "mapped", [102]], [[119996, 119996], "disallowed"], [[119997, 119997], "mapped", [104]], [[119998, 119998], "mapped", [105]], [[119999, 119999], "mapped", [106]], [[12e4, 12e4], "mapped", [107]], [[120001, 120001], "mapped", [108]], [[120002, 120002], "mapped", [109]], [[120003, 120003], "mapped", [110]], [[120004, 120004], "disallowed"], [[120005, 120005], "mapped", [112]], [[120006, 120006], "mapped", [113]], [[120007, 120007], "mapped", [114]], [[120008, 120008], "mapped", [115]], [[120009, 120009], "mapped", [116]], [[120010, 120010], "mapped", [117]], [[120011, 120011], "mapped", [118]], [[120012, 120012], "mapped", [119]], [[120013, 120013], "mapped", [120]], [[120014, 120014], "mapped", [121]], [[120015, 120015], "mapped", [122]], [[120016, 120016], "mapped", [97]], [[120017, 120017], "mapped", [98]], [[120018, 120018], "mapped", [99]], [[120019, 120019], "mapped", [100]], [[120020, 120020], "mapped", [101]], [[120021, 120021], "mapped", [102]], [[120022, 120022], "mapped", [103]], [[120023, 120023], "mapped", [104]], [[120024, 120024], "mapped", [105]], [[120025, 120025], "mapped", [106]], [[120026, 120026], "mapped", [107]], [[120027, 120027], "mapped", [108]], [[120028, 120028], "mapped", [109]], [[120029, 120029], "mapped", [110]], [[120030, 120030], "mapped", [111]], [[120031, 120031], "mapped", [112]], [[120032, 120032], "mapped", [113]], [[120033, 120033], "mapped", [114]], [[120034, 120034], "mapped", [115]], [[120035, 120035], "mapped", [116]], [[120036, 120036], "mapped", [117]], [[120037, 120037], "mapped", [118]], [[120038, 120038], "mapped", [119]], [[120039, 120039], "mapped", [120]], [[120040, 120040], "mapped", [121]], [[120041, 120041], "mapped", [122]], [[120042, 120042], "mapped", [97]], [[120043, 120043], "mapped", [98]], [[120044, 120044], "mapped", [99]], [[120045, 120045], "mapped", [100]], [[120046, 120046], "mapped", [101]], [[120047, 120047], "mapped", [102]], [[120048, 120048], "mapped", [103]], [[120049, 120049], "mapped", [104]], [[120050, 120050], "mapped", [105]], [[120051, 120051], "mapped", [106]], [[120052, 120052], "mapped", [107]], [[120053, 120053], "mapped", [108]], [[120054, 120054], "mapped", [109]], [[120055, 120055], "mapped", [110]], [[120056, 120056], "mapped", [111]], [[120057, 120057], "mapped", [112]], [[120058, 120058], "mapped", [113]], [[120059, 120059], "mapped", [114]], [[120060, 120060], "mapped", [115]], [[120061, 120061], "mapped", [116]], [[120062, 120062], "mapped", [117]], [[120063, 120063], "mapped", [118]], [[120064, 120064], "mapped", [119]], [[120065, 120065], "mapped", [120]], [[120066, 120066], "mapped", [121]], [[120067, 120067], "mapped", [122]], [[120068, 120068], "mapped", [97]], [[120069, 120069], "mapped", [98]], [[120070, 120070], "disallowed"], [[120071, 120071], "mapped", [100]], [[120072, 120072], "mapped", [101]], [[120073, 120073], "mapped", [102]], [[120074, 120074], "mapped", [103]], [[120075, 120076], "disallowed"], [[120077, 120077], "mapped", [106]], [[120078, 120078], "mapped", [107]], [[120079, 120079], "mapped", [108]], [[120080, 120080], "mapped", [109]], [[120081, 120081], "mapped", [110]], [[120082, 120082], "mapped", [111]], [[120083, 120083], "mapped", [112]], [[120084, 120084], "mapped", [113]], [[120085, 120085], "disallowed"], [[120086, 120086], "mapped", [115]], [[120087, 120087], "mapped", [116]], [[120088, 120088], "mapped", [117]], [[120089, 120089], "mapped", [118]], [[120090, 120090], "mapped", [119]], [[120091, 120091], "mapped", [120]], [[120092, 120092], "mapped", [121]], [[120093, 120093], "disallowed"], [[120094, 120094], "mapped", [97]], [[120095, 120095], "mapped", [98]], [[120096, 120096], "mapped", [99]], [[120097, 120097], "mapped", [100]], [[120098, 120098], "mapped", [101]], [[120099, 120099], "mapped", [102]], [[120100, 120100], "mapped", [103]], [[120101, 120101], "mapped", [104]], [[120102, 120102], "mapped", [105]], [[120103, 120103], "mapped", [106]], [[120104, 120104], "mapped", [107]], [[120105, 120105], "mapped", [108]], [[120106, 120106], "mapped", [109]], [[120107, 120107], "mapped", [110]], [[120108, 120108], "mapped", [111]], [[120109, 120109], "mapped", [112]], [[120110, 120110], "mapped", [113]], [[120111, 120111], "mapped", [114]], [[120112, 120112], "mapped", [115]], [[120113, 120113], "mapped", [116]], [[120114, 120114], "mapped", [117]], [[120115, 120115], "mapped", [118]], [[120116, 120116], "mapped", [119]], [[120117, 120117], "mapped", [120]], [[120118, 120118], "mapped", [121]], [[120119, 120119], "mapped", [122]], [[120120, 120120], "mapped", [97]], [[120121, 120121], "mapped", [98]], [[120122, 120122], "disallowed"], [[120123, 120123], "mapped", [100]], [[120124, 120124], "mapped", [101]], [[120125, 120125], "mapped", [102]], [[120126, 120126], "mapped", [103]], [[120127, 120127], "disallowed"], [[120128, 120128], "mapped", [105]], [[120129, 120129], "mapped", [106]], [[120130, 120130], "mapped", [107]], [[120131, 120131], "mapped", [108]], [[120132, 120132], "mapped", [109]], [[120133, 120133], "disallowed"], [[120134, 120134], "mapped", [111]], [[120135, 120137], "disallowed"], [[120138, 120138], "mapped", [115]], [[120139, 120139], "mapped", [116]], [[120140, 120140], "mapped", [117]], [[120141, 120141], "mapped", [118]], [[120142, 120142], "mapped", [119]], [[120143, 120143], "mapped", [120]], [[120144, 120144], "mapped", [121]], [[120145, 120145], "disallowed"], [[120146, 120146], "mapped", [97]], [[120147, 120147], "mapped", [98]], [[120148, 120148], "mapped", [99]], [[120149, 120149], "mapped", [100]], [[120150, 120150], "mapped", [101]], [[120151, 120151], "mapped", [102]], [[120152, 120152], "mapped", [103]], [[120153, 120153], "mapped", [104]], [[120154, 120154], "mapped", [105]], [[120155, 120155], "mapped", [106]], [[120156, 120156], "mapped", [107]], [[120157, 120157], "mapped", [108]], [[120158, 120158], "mapped", [109]], [[120159, 120159], "mapped", [110]], [[120160, 120160], "mapped", [111]], [[120161, 120161], "mapped", [112]], [[120162, 120162], "mapped", [113]], [[120163, 120163], "mapped", [114]], [[120164, 120164], "mapped", [115]], [[120165, 120165], "mapped", [116]], [[120166, 120166], "mapped", [117]], [[120167, 120167], "mapped", [118]], [[120168, 120168], "mapped", [119]], [[120169, 120169], "mapped", [120]], [[120170, 120170], "mapped", [121]], [[120171, 120171], "mapped", [122]], [[120172, 120172], "mapped", [97]], [[120173, 120173], "mapped", [98]], [[120174, 120174], "mapped", [99]], [[120175, 120175], "mapped", [100]], [[120176, 120176], "mapped", [101]], [[120177, 120177], "mapped", [102]], [[120178, 120178], "mapped", [103]], [[120179, 120179], "mapped", [104]], [[120180, 120180], "mapped", [105]], [[120181, 120181], "mapped", [106]], [[120182, 120182], "mapped", [107]], [[120183, 120183], "mapped", [108]], [[120184, 120184], "mapped", [109]], [[120185, 120185], "mapped", [110]], [[120186, 120186], "mapped", [111]], [[120187, 120187], "mapped", [112]], [[120188, 120188], "mapped", [113]], [[120189, 120189], "mapped", [114]], [[120190, 120190], "mapped", [115]], [[120191, 120191], "mapped", [116]], [[120192, 120192], "mapped", [117]], [[120193, 120193], "mapped", [118]], [[120194, 120194], "mapped", [119]], [[120195, 120195], "mapped", [120]], [[120196, 120196], "mapped", [121]], [[120197, 120197], "mapped", [122]], [[120198, 120198], "mapped", [97]], [[120199, 120199], "mapped", [98]], [[120200, 120200], "mapped", [99]], [[120201, 120201], "mapped", [100]], [[120202, 120202], "mapped", [101]], [[120203, 120203], "mapped", [102]], [[120204, 120204], "mapped", [103]], [[120205, 120205], "mapped", [104]], [[120206, 120206], "mapped", [105]], [[120207, 120207], "mapped", [106]], [[120208, 120208], "mapped", [107]], [[120209, 120209], "mapped", [108]], [[120210, 120210], "mapped", [109]], [[120211, 120211], "mapped", [110]], [[120212, 120212], "mapped", [111]], [[120213, 120213], "mapped", [112]], [[120214, 120214], "mapped", [113]], [[120215, 120215], "mapped", [114]], [[120216, 120216], "mapped", [115]], [[120217, 120217], "mapped", [116]], [[120218, 120218], "mapped", [117]], [[120219, 120219], "mapped", [118]], [[120220, 120220], "mapped", [119]], [[120221, 120221], "mapped", [120]], [[120222, 120222], "mapped", [121]], [[120223, 120223], "mapped", [122]], [[120224, 120224], "mapped", [97]], [[120225, 120225], "mapped", [98]], [[120226, 120226], "mapped", [99]], [[120227, 120227], "mapped", [100]], [[120228, 120228], "mapped", [101]], [[120229, 120229], "mapped", [102]], [[120230, 120230], "mapped", [103]], [[120231, 120231], "mapped", [104]], [[120232, 120232], "mapped", [105]], [[120233, 120233], "mapped", [106]], [[120234, 120234], "mapped", [107]], [[120235, 120235], "mapped", [108]], [[120236, 120236], "mapped", [109]], [[120237, 120237], "mapped", [110]], [[120238, 120238], "mapped", [111]], [[120239, 120239], "mapped", [112]], [[120240, 120240], "mapped", [113]], [[120241, 120241], "mapped", [114]], [[120242, 120242], "mapped", [115]], [[120243, 120243], "mapped", [116]], [[120244, 120244], "mapped", [117]], [[120245, 120245], "mapped", [118]], [[120246, 120246], "mapped", [119]], [[120247, 120247], "mapped", [120]], [[120248, 120248], "mapped", [121]], [[120249, 120249], "mapped", [122]], [[120250, 120250], "mapped", [97]], [[120251, 120251], "mapped", [98]], [[120252, 120252], "mapped", [99]], [[120253, 120253], "mapped", [100]], [[120254, 120254], "mapped", [101]], [[120255, 120255], "mapped", [102]], [[120256, 120256], "mapped", [103]], [[120257, 120257], "mapped", [104]], [[120258, 120258], "mapped", [105]], [[120259, 120259], "mapped", [106]], [[120260, 120260], "mapped", [107]], [[120261, 120261], "mapped", [108]], [[120262, 120262], "mapped", [109]], [[120263, 120263], "mapped", [110]], [[120264, 120264], "mapped", [111]], [[120265, 120265], "mapped", [112]], [[120266, 120266], "mapped", [113]], [[120267, 120267], "mapped", [114]], [[120268, 120268], "mapped", [115]], [[120269, 120269], "mapped", [116]], [[120270, 120270], "mapped", [117]], [[120271, 120271], "mapped", [118]], [[120272, 120272], "mapped", [119]], [[120273, 120273], "mapped", [120]], [[120274, 120274], "mapped", [121]], [[120275, 120275], "mapped", [122]], [[120276, 120276], "mapped", [97]], [[120277, 120277], "mapped", [98]], [[120278, 120278], "mapped", [99]], [[120279, 120279], "mapped", [100]], [[120280, 120280], "mapped", [101]], [[120281, 120281], "mapped", [102]], [[120282, 120282], "mapped", [103]], [[120283, 120283], "mapped", [104]], [[120284, 120284], "mapped", [105]], [[120285, 120285], "mapped", [106]], [[120286, 120286], "mapped", [107]], [[120287, 120287], "mapped", [108]], [[120288, 120288], "mapped", [109]], [[120289, 120289], "mapped", [110]], [[120290, 120290], "mapped", [111]], [[120291, 120291], "mapped", [112]], [[120292, 120292], "mapped", [113]], [[120293, 120293], "mapped", [114]], [[120294, 120294], "mapped", [115]], [[120295, 120295], "mapped", [116]], [[120296, 120296], "mapped", [117]], [[120297, 120297], "mapped", [118]], [[120298, 120298], "mapped", [119]], [[120299, 120299], "mapped", [120]], [[120300, 120300], "mapped", [121]], [[120301, 120301], "mapped", [122]], [[120302, 120302], "mapped", [97]], [[120303, 120303], "mapped", [98]], [[120304, 120304], "mapped", [99]], [[120305, 120305], "mapped", [100]], [[120306, 120306], "mapped", [101]], [[120307, 120307], "mapped", [102]], [[120308, 120308], "mapped", [103]], [[120309, 120309], "mapped", [104]], [[120310, 120310], "mapped", [105]], [[120311, 120311], "mapped", [106]], [[120312, 120312], "mapped", [107]], [[120313, 120313], "mapped", [108]], [[120314, 120314], "mapped", [109]], [[120315, 120315], "mapped", [110]], [[120316, 120316], "mapped", [111]], [[120317, 120317], "mapped", [112]], [[120318, 120318], "mapped", [113]], [[120319, 120319], "mapped", [114]], [[120320, 120320], "mapped", [115]], [[120321, 120321], "mapped", [116]], [[120322, 120322], "mapped", [117]], [[120323, 120323], "mapped", [118]], [[120324, 120324], "mapped", [119]], [[120325, 120325], "mapped", [120]], [[120326, 120326], "mapped", [121]], [[120327, 120327], "mapped", [122]], [[120328, 120328], "mapped", [97]], [[120329, 120329], "mapped", [98]], [[120330, 120330], "mapped", [99]], [[120331, 120331], "mapped", [100]], [[120332, 120332], "mapped", [101]], [[120333, 120333], "mapped", [102]], [[120334, 120334], "mapped", [103]], [[120335, 120335], "mapped", [104]], [[120336, 120336], "mapped", [105]], [[120337, 120337], "mapped", [106]], [[120338, 120338], "mapped", [107]], [[120339, 120339], "mapped", [108]], [[120340, 120340], "mapped", [109]], [[120341, 120341], "mapped", [110]], [[120342, 120342], "mapped", [111]], [[120343, 120343], "mapped", [112]], [[120344, 120344], "mapped", [113]], [[120345, 120345], "mapped", [114]], [[120346, 120346], "mapped", [115]], [[120347, 120347], "mapped", [116]], [[120348, 120348], "mapped", [117]], [[120349, 120349], "mapped", [118]], [[120350, 120350], "mapped", [119]], [[120351, 120351], "mapped", [120]], [[120352, 120352], "mapped", [121]], [[120353, 120353], "mapped", [122]], [[120354, 120354], "mapped", [97]], [[120355, 120355], "mapped", [98]], [[120356, 120356], "mapped", [99]], [[120357, 120357], "mapped", [100]], [[120358, 120358], "mapped", [101]], [[120359, 120359], "mapped", [102]], [[120360, 120360], "mapped", [103]], [[120361, 120361], "mapped", [104]], [[120362, 120362], "mapped", [105]], [[120363, 120363], "mapped", [106]], [[120364, 120364], "mapped", [107]], [[120365, 120365], "mapped", [108]], [[120366, 120366], "mapped", [109]], [[120367, 120367], "mapped", [110]], [[120368, 120368], "mapped", [111]], [[120369, 120369], "mapped", [112]], [[120370, 120370], "mapped", [113]], [[120371, 120371], "mapped", [114]], [[120372, 120372], "mapped", [115]], [[120373, 120373], "mapped", [116]], [[120374, 120374], "mapped", [117]], [[120375, 120375], "mapped", [118]], [[120376, 120376], "mapped", [119]], [[120377, 120377], "mapped", [120]], [[120378, 120378], "mapped", [121]], [[120379, 120379], "mapped", [122]], [[120380, 120380], "mapped", [97]], [[120381, 120381], "mapped", [98]], [[120382, 120382], "mapped", [99]], [[120383, 120383], "mapped", [100]], [[120384, 120384], "mapped", [101]], [[120385, 120385], "mapped", [102]], [[120386, 120386], "mapped", [103]], [[120387, 120387], "mapped", [104]], [[120388, 120388], "mapped", [105]], [[120389, 120389], "mapped", [106]], [[120390, 120390], "mapped", [107]], [[120391, 120391], "mapped", [108]], [[120392, 120392], "mapped", [109]], [[120393, 120393], "mapped", [110]], [[120394, 120394], "mapped", [111]], [[120395, 120395], "mapped", [112]], [[120396, 120396], "mapped", [113]], [[120397, 120397], "mapped", [114]], [[120398, 120398], "mapped", [115]], [[120399, 120399], "mapped", [116]], [[120400, 120400], "mapped", [117]], [[120401, 120401], "mapped", [118]], [[120402, 120402], "mapped", [119]], [[120403, 120403], "mapped", [120]], [[120404, 120404], "mapped", [121]], [[120405, 120405], "mapped", [122]], [[120406, 120406], "mapped", [97]], [[120407, 120407], "mapped", [98]], [[120408, 120408], "mapped", [99]], [[120409, 120409], "mapped", [100]], [[120410, 120410], "mapped", [101]], [[120411, 120411], "mapped", [102]], [[120412, 120412], "mapped", [103]], [[120413, 120413], "mapped", [104]], [[120414, 120414], "mapped", [105]], [[120415, 120415], "mapped", [106]], [[120416, 120416], "mapped", [107]], [[120417, 120417], "mapped", [108]], [[120418, 120418], "mapped", [109]], [[120419, 120419], "mapped", [110]], [[120420, 120420], "mapped", [111]], [[120421, 120421], "mapped", [112]], [[120422, 120422], "mapped", [113]], [[120423, 120423], "mapped", [114]], [[120424, 120424], "mapped", [115]], [[120425, 120425], "mapped", [116]], [[120426, 120426], "mapped", [117]], [[120427, 120427], "mapped", [118]], [[120428, 120428], "mapped", [119]], [[120429, 120429], "mapped", [120]], [[120430, 120430], "mapped", [121]], [[120431, 120431], "mapped", [122]], [[120432, 120432], "mapped", [97]], [[120433, 120433], "mapped", [98]], [[120434, 120434], "mapped", [99]], [[120435, 120435], "mapped", [100]], [[120436, 120436], "mapped", [101]], [[120437, 120437], "mapped", [102]], [[120438, 120438], "mapped", [103]], [[120439, 120439], "mapped", [104]], [[120440, 120440], "mapped", [105]], [[120441, 120441], "mapped", [106]], [[120442, 120442], "mapped", [107]], [[120443, 120443], "mapped", [108]], [[120444, 120444], "mapped", [109]], [[120445, 120445], "mapped", [110]], [[120446, 120446], "mapped", [111]], [[120447, 120447], "mapped", [112]], [[120448, 120448], "mapped", [113]], [[120449, 120449], "mapped", [114]], [[120450, 120450], "mapped", [115]], [[120451, 120451], "mapped", [116]], [[120452, 120452], "mapped", [117]], [[120453, 120453], "mapped", [118]], [[120454, 120454], "mapped", [119]], [[120455, 120455], "mapped", [120]], [[120456, 120456], "mapped", [121]], [[120457, 120457], "mapped", [122]], [[120458, 120458], "mapped", [97]], [[120459, 120459], "mapped", [98]], [[120460, 120460], "mapped", [99]], [[120461, 120461], "mapped", [100]], [[120462, 120462], "mapped", [101]], [[120463, 120463], "mapped", [102]], [[120464, 120464], "mapped", [103]], [[120465, 120465], "mapped", [104]], [[120466, 120466], "mapped", [105]], [[120467, 120467], "mapped", [106]], [[120468, 120468], "mapped", [107]], [[120469, 120469], "mapped", [108]], [[120470, 120470], "mapped", [109]], [[120471, 120471], "mapped", [110]], [[120472, 120472], "mapped", [111]], [[120473, 120473], "mapped", [112]], [[120474, 120474], "mapped", [113]], [[120475, 120475], "mapped", [114]], [[120476, 120476], "mapped", [115]], [[120477, 120477], "mapped", [116]], [[120478, 120478], "mapped", [117]], [[120479, 120479], "mapped", [118]], [[120480, 120480], "mapped", [119]], [[120481, 120481], "mapped", [120]], [[120482, 120482], "mapped", [121]], [[120483, 120483], "mapped", [122]], [[120484, 120484], "mapped", [305]], [[120485, 120485], "mapped", [567]], [[120486, 120487], "disallowed"], [[120488, 120488], "mapped", [945]], [[120489, 120489], "mapped", [946]], [[120490, 120490], "mapped", [947]], [[120491, 120491], "mapped", [948]], [[120492, 120492], "mapped", [949]], [[120493, 120493], "mapped", [950]], [[120494, 120494], "mapped", [951]], [[120495, 120495], "mapped", [952]], [[120496, 120496], "mapped", [953]], [[120497, 120497], "mapped", [954]], [[120498, 120498], "mapped", [955]], [[120499, 120499], "mapped", [956]], [[120500, 120500], "mapped", [957]], [[120501, 120501], "mapped", [958]], [[120502, 120502], "mapped", [959]], [[120503, 120503], "mapped", [960]], [[120504, 120504], "mapped", [961]], [[120505, 120505], "mapped", [952]], [[120506, 120506], "mapped", [963]], [[120507, 120507], "mapped", [964]], [[120508, 120508], "mapped", [965]], [[120509, 120509], "mapped", [966]], [[120510, 120510], "mapped", [967]], [[120511, 120511], "mapped", [968]], [[120512, 120512], "mapped", [969]], [[120513, 120513], "mapped", [8711]], [[120514, 120514], "mapped", [945]], [[120515, 120515], "mapped", [946]], [[120516, 120516], "mapped", [947]], [[120517, 120517], "mapped", [948]], [[120518, 120518], "mapped", [949]], [[120519, 120519], "mapped", [950]], [[120520, 120520], "mapped", [951]], [[120521, 120521], "mapped", [952]], [[120522, 120522], "mapped", [953]], [[120523, 120523], "mapped", [954]], [[120524, 120524], "mapped", [955]], [[120525, 120525], "mapped", [956]], [[120526, 120526], "mapped", [957]], [[120527, 120527], "mapped", [958]], [[120528, 120528], "mapped", [959]], [[120529, 120529], "mapped", [960]], [[120530, 120530], "mapped", [961]], [[120531, 120532], "mapped", [963]], [[120533, 120533], "mapped", [964]], [[120534, 120534], "mapped", [965]], [[120535, 120535], "mapped", [966]], [[120536, 120536], "mapped", [967]], [[120537, 120537], "mapped", [968]], [[120538, 120538], "mapped", [969]], [[120539, 120539], "mapped", [8706]], [[120540, 120540], "mapped", [949]], [[120541, 120541], "mapped", [952]], [[120542, 120542], "mapped", [954]], [[120543, 120543], "mapped", [966]], [[120544, 120544], "mapped", [961]], [[120545, 120545], "mapped", [960]], [[120546, 120546], "mapped", [945]], [[120547, 120547], "mapped", [946]], [[120548, 120548], "mapped", [947]], [[120549, 120549], "mapped", [948]], [[120550, 120550], "mapped", [949]], [[120551, 120551], "mapped", [950]], [[120552, 120552], "mapped", [951]], [[120553, 120553], "mapped", [952]], [[120554, 120554], "mapped", [953]], [[120555, 120555], "mapped", [954]], [[120556, 120556], "mapped", [955]], [[120557, 120557], "mapped", [956]], [[120558, 120558], "mapped", [957]], [[120559, 120559], "mapped", [958]], [[120560, 120560], "mapped", [959]], [[120561, 120561], "mapped", [960]], [[120562, 120562], "mapped", [961]], [[120563, 120563], "mapped", [952]], [[120564, 120564], "mapped", [963]], [[120565, 120565], "mapped", [964]], [[120566, 120566], "mapped", [965]], [[120567, 120567], "mapped", [966]], [[120568, 120568], "mapped", [967]], [[120569, 120569], "mapped", [968]], [[120570, 120570], "mapped", [969]], [[120571, 120571], "mapped", [8711]], [[120572, 120572], "mapped", [945]], [[120573, 120573], "mapped", [946]], [[120574, 120574], "mapped", [947]], [[120575, 120575], "mapped", [948]], [[120576, 120576], "mapped", [949]], [[120577, 120577], "mapped", [950]], [[120578, 120578], "mapped", [951]], [[120579, 120579], "mapped", [952]], [[120580, 120580], "mapped", [953]], [[120581, 120581], "mapped", [954]], [[120582, 120582], "mapped", [955]], [[120583, 120583], "mapped", [956]], [[120584, 120584], "mapped", [957]], [[120585, 120585], "mapped", [958]], [[120586, 120586], "mapped", [959]], [[120587, 120587], "mapped", [960]], [[120588, 120588], "mapped", [961]], [[120589, 120590], "mapped", [963]], [[120591, 120591], "mapped", [964]], [[120592, 120592], "mapped", [965]], [[120593, 120593], "mapped", [966]], [[120594, 120594], "mapped", [967]], [[120595, 120595], "mapped", [968]], [[120596, 120596], "mapped", [969]], [[120597, 120597], "mapped", [8706]], [[120598, 120598], "mapped", [949]], [[120599, 120599], "mapped", [952]], [[120600, 120600], "mapped", [954]], [[120601, 120601], "mapped", [966]], [[120602, 120602], "mapped", [961]], [[120603, 120603], "mapped", [960]], [[120604, 120604], "mapped", [945]], [[120605, 120605], "mapped", [946]], [[120606, 120606], "mapped", [947]], [[120607, 120607], "mapped", [948]], [[120608, 120608], "mapped", [949]], [[120609, 120609], "mapped", [950]], [[120610, 120610], "mapped", [951]], [[120611, 120611], "mapped", [952]], [[120612, 120612], "mapped", [953]], [[120613, 120613], "mapped", [954]], [[120614, 120614], "mapped", [955]], [[120615, 120615], "mapped", [956]], [[120616, 120616], "mapped", [957]], [[120617, 120617], "mapped", [958]], [[120618, 120618], "mapped", [959]], [[120619, 120619], "mapped", [960]], [[120620, 120620], "mapped", [961]], [[120621, 120621], "mapped", [952]], [[120622, 120622], "mapped", [963]], [[120623, 120623], "mapped", [964]], [[120624, 120624], "mapped", [965]], [[120625, 120625], "mapped", [966]], [[120626, 120626], "mapped", [967]], [[120627, 120627], "mapped", [968]], [[120628, 120628], "mapped", [969]], [[120629, 120629], "mapped", [8711]], [[120630, 120630], "mapped", [945]], [[120631, 120631], "mapped", [946]], [[120632, 120632], "mapped", [947]], [[120633, 120633], "mapped", [948]], [[120634, 120634], "mapped", [949]], [[120635, 120635], "mapped", [950]], [[120636, 120636], "mapped", [951]], [[120637, 120637], "mapped", [952]], [[120638, 120638], "mapped", [953]], [[120639, 120639], "mapped", [954]], [[120640, 120640], "mapped", [955]], [[120641, 120641], "mapped", [956]], [[120642, 120642], "mapped", [957]], [[120643, 120643], "mapped", [958]], [[120644, 120644], "mapped", [959]], [[120645, 120645], "mapped", [960]], [[120646, 120646], "mapped", [961]], [[120647, 120648], "mapped", [963]], [[120649, 120649], "mapped", [964]], [[120650, 120650], "mapped", [965]], [[120651, 120651], "mapped", [966]], [[120652, 120652], "mapped", [967]], [[120653, 120653], "mapped", [968]], [[120654, 120654], "mapped", [969]], [[120655, 120655], "mapped", [8706]], [[120656, 120656], "mapped", [949]], [[120657, 120657], "mapped", [952]], [[120658, 120658], "mapped", [954]], [[120659, 120659], "mapped", [966]], [[120660, 120660], "mapped", [961]], [[120661, 120661], "mapped", [960]], [[120662, 120662], "mapped", [945]], [[120663, 120663], "mapped", [946]], [[120664, 120664], "mapped", [947]], [[120665, 120665], "mapped", [948]], [[120666, 120666], "mapped", [949]], [[120667, 120667], "mapped", [950]], [[120668, 120668], "mapped", [951]], [[120669, 120669], "mapped", [952]], [[120670, 120670], "mapped", [953]], [[120671, 120671], "mapped", [954]], [[120672, 120672], "mapped", [955]], [[120673, 120673], "mapped", [956]], [[120674, 120674], "mapped", [957]], [[120675, 120675], "mapped", [958]], [[120676, 120676], "mapped", [959]], [[120677, 120677], "mapped", [960]], [[120678, 120678], "mapped", [961]], [[120679, 120679], "mapped", [952]], [[120680, 120680], "mapped", [963]], [[120681, 120681], "mapped", [964]], [[120682, 120682], "mapped", [965]], [[120683, 120683], "mapped", [966]], [[120684, 120684], "mapped", [967]], [[120685, 120685], "mapped", [968]], [[120686, 120686], "mapped", [969]], [[120687, 120687], "mapped", [8711]], [[120688, 120688], "mapped", [945]], [[120689, 120689], "mapped", [946]], [[120690, 120690], "mapped", [947]], [[120691, 120691], "mapped", [948]], [[120692, 120692], "mapped", [949]], [[120693, 120693], "mapped", [950]], [[120694, 120694], "mapped", [951]], [[120695, 120695], "mapped", [952]], [[120696, 120696], "mapped", [953]], [[120697, 120697], "mapped", [954]], [[120698, 120698], "mapped", [955]], [[120699, 120699], "mapped", [956]], [[120700, 120700], "mapped", [957]], [[120701, 120701], "mapped", [958]], [[120702, 120702], "mapped", [959]], [[120703, 120703], "mapped", [960]], [[120704, 120704], "mapped", [961]], [[120705, 120706], "mapped", [963]], [[120707, 120707], "mapped", [964]], [[120708, 120708], "mapped", [965]], [[120709, 120709], "mapped", [966]], [[120710, 120710], "mapped", [967]], [[120711, 120711], "mapped", [968]], [[120712, 120712], "mapped", [969]], [[120713, 120713], "mapped", [8706]], [[120714, 120714], "mapped", [949]], [[120715, 120715], "mapped", [952]], [[120716, 120716], "mapped", [954]], [[120717, 120717], "mapped", [966]], [[120718, 120718], "mapped", [961]], [[120719, 120719], "mapped", [960]], [[120720, 120720], "mapped", [945]], [[120721, 120721], "mapped", [946]], [[120722, 120722], "mapped", [947]], [[120723, 120723], "mapped", [948]], [[120724, 120724], "mapped", [949]], [[120725, 120725], "mapped", [950]], [[120726, 120726], "mapped", [951]], [[120727, 120727], "mapped", [952]], [[120728, 120728], "mapped", [953]], [[120729, 120729], "mapped", [954]], [[120730, 120730], "mapped", [955]], [[120731, 120731], "mapped", [956]], [[120732, 120732], "mapped", [957]], [[120733, 120733], "mapped", [958]], [[120734, 120734], "mapped", [959]], [[120735, 120735], "mapped", [960]], [[120736, 120736], "mapped", [961]], [[120737, 120737], "mapped", [952]], [[120738, 120738], "mapped", [963]], [[120739, 120739], "mapped", [964]], [[120740, 120740], "mapped", [965]], [[120741, 120741], "mapped", [966]], [[120742, 120742], "mapped", [967]], [[120743, 120743], "mapped", [968]], [[120744, 120744], "mapped", [969]], [[120745, 120745], "mapped", [8711]], [[120746, 120746], "mapped", [945]], [[120747, 120747], "mapped", [946]], [[120748, 120748], "mapped", [947]], [[120749, 120749], "mapped", [948]], [[120750, 120750], "mapped", [949]], [[120751, 120751], "mapped", [950]], [[120752, 120752], "mapped", [951]], [[120753, 120753], "mapped", [952]], [[120754, 120754], "mapped", [953]], [[120755, 120755], "mapped", [954]], [[120756, 120756], "mapped", [955]], [[120757, 120757], "mapped", [956]], [[120758, 120758], "mapped", [957]], [[120759, 120759], "mapped", [958]], [[120760, 120760], "mapped", [959]], [[120761, 120761], "mapped", [960]], [[120762, 120762], "mapped", [961]], [[120763, 120764], "mapped", [963]], [[120765, 120765], "mapped", [964]], [[120766, 120766], "mapped", [965]], [[120767, 120767], "mapped", [966]], [[120768, 120768], "mapped", [967]], [[120769, 120769], "mapped", [968]], [[120770, 120770], "mapped", [969]], [[120771, 120771], "mapped", [8706]], [[120772, 120772], "mapped", [949]], [[120773, 120773], "mapped", [952]], [[120774, 120774], "mapped", [954]], [[120775, 120775], "mapped", [966]], [[120776, 120776], "mapped", [961]], [[120777, 120777], "mapped", [960]], [[120778, 120779], "mapped", [989]], [[120780, 120781], "disallowed"], [[120782, 120782], "mapped", [48]], [[120783, 120783], "mapped", [49]], [[120784, 120784], "mapped", [50]], [[120785, 120785], "mapped", [51]], [[120786, 120786], "mapped", [52]], [[120787, 120787], "mapped", [53]], [[120788, 120788], "mapped", [54]], [[120789, 120789], "mapped", [55]], [[120790, 120790], "mapped", [56]], [[120791, 120791], "mapped", [57]], [[120792, 120792], "mapped", [48]], [[120793, 120793], "mapped", [49]], [[120794, 120794], "mapped", [50]], [[120795, 120795], "mapped", [51]], [[120796, 120796], "mapped", [52]], [[120797, 120797], "mapped", [53]], [[120798, 120798], "mapped", [54]], [[120799, 120799], "mapped", [55]], [[120800, 120800], "mapped", [56]], [[120801, 120801], "mapped", [57]], [[120802, 120802], "mapped", [48]], [[120803, 120803], "mapped", [49]], [[120804, 120804], "mapped", [50]], [[120805, 120805], "mapped", [51]], [[120806, 120806], "mapped", [52]], [[120807, 120807], "mapped", [53]], [[120808, 120808], "mapped", [54]], [[120809, 120809], "mapped", [55]], [[120810, 120810], "mapped", [56]], [[120811, 120811], "mapped", [57]], [[120812, 120812], "mapped", [48]], [[120813, 120813], "mapped", [49]], [[120814, 120814], "mapped", [50]], [[120815, 120815], "mapped", [51]], [[120816, 120816], "mapped", [52]], [[120817, 120817], "mapped", [53]], [[120818, 120818], "mapped", [54]], [[120819, 120819], "mapped", [55]], [[120820, 120820], "mapped", [56]], [[120821, 120821], "mapped", [57]], [[120822, 120822], "mapped", [48]], [[120823, 120823], "mapped", [49]], [[120824, 120824], "mapped", [50]], [[120825, 120825], "mapped", [51]], [[120826, 120826], "mapped", [52]], [[120827, 120827], "mapped", [53]], [[120828, 120828], "mapped", [54]], [[120829, 120829], "mapped", [55]], [[120830, 120830], "mapped", [56]], [[120831, 120831], "mapped", [57]], [[120832, 121343], "valid", [], "NV8"], [[121344, 121398], "valid"], [[121399, 121402], "valid", [], "NV8"], [[121403, 121452], "valid"], [[121453, 121460], "valid", [], "NV8"], [[121461, 121461], "valid"], [[121462, 121475], "valid", [], "NV8"], [[121476, 121476], "valid"], [[121477, 121483], "valid", [], "NV8"], [[121484, 121498], "disallowed"], [[121499, 121503], "valid"], [[121504, 121504], "disallowed"], [[121505, 121519], "valid"], [[121520, 124927], "disallowed"], [[124928, 125124], "valid"], [[125125, 125126], "disallowed"], [[125127, 125135], "valid", [], "NV8"], [[125136, 125142], "valid"], [[125143, 126463], "disallowed"], [[126464, 126464], "mapped", [1575]], [[126465, 126465], "mapped", [1576]], [[126466, 126466], "mapped", [1580]], [[126467, 126467], "mapped", [1583]], [[126468, 126468], "disallowed"], [[126469, 126469], "mapped", [1608]], [[126470, 126470], "mapped", [1586]], [[126471, 126471], "mapped", [1581]], [[126472, 126472], "mapped", [1591]], [[126473, 126473], "mapped", [1610]], [[126474, 126474], "mapped", [1603]], [[126475, 126475], "mapped", [1604]], [[126476, 126476], "mapped", [1605]], [[126477, 126477], "mapped", [1606]], [[126478, 126478], "mapped", [1587]], [[126479, 126479], "mapped", [1593]], [[126480, 126480], "mapped", [1601]], [[126481, 126481], "mapped", [1589]], [[126482, 126482], "mapped", [1602]], [[126483, 126483], "mapped", [1585]], [[126484, 126484], "mapped", [1588]], [[126485, 126485], "mapped", [1578]], [[126486, 126486], "mapped", [1579]], [[126487, 126487], "mapped", [1582]], [[126488, 126488], "mapped", [1584]], [[126489, 126489], "mapped", [1590]], [[126490, 126490], "mapped", [1592]], [[126491, 126491], "mapped", [1594]], [[126492, 126492], "mapped", [1646]], [[126493, 126493], "mapped", [1722]], [[126494, 126494], "mapped", [1697]], [[126495, 126495], "mapped", [1647]], [[126496, 126496], "disallowed"], [[126497, 126497], "mapped", [1576]], [[126498, 126498], "mapped", [1580]], [[126499, 126499], "disallowed"], [[126500, 126500], "mapped", [1607]], [[126501, 126502], "disallowed"], [[126503, 126503], "mapped", [1581]], [[126504, 126504], "disallowed"], [[126505, 126505], "mapped", [1610]], [[126506, 126506], "mapped", [1603]], [[126507, 126507], "mapped", [1604]], [[126508, 126508], "mapped", [1605]], [[126509, 126509], "mapped", [1606]], [[126510, 126510], "mapped", [1587]], [[126511, 126511], "mapped", [1593]], [[126512, 126512], "mapped", [1601]], [[126513, 126513], "mapped", [1589]], [[126514, 126514], "mapped", [1602]], [[126515, 126515], "disallowed"], [[126516, 126516], "mapped", [1588]], [[126517, 126517], "mapped", [1578]], [[126518, 126518], "mapped", [1579]], [[126519, 126519], "mapped", [1582]], [[126520, 126520], "disallowed"], [[126521, 126521], "mapped", [1590]], [[126522, 126522], "disallowed"], [[126523, 126523], "mapped", [1594]], [[126524, 126529], "disallowed"], [[126530, 126530], "mapped", [1580]], [[126531, 126534], "disallowed"], [[126535, 126535], "mapped", [1581]], [[126536, 126536], "disallowed"], [[126537, 126537], "mapped", [1610]], [[126538, 126538], "disallowed"], [[126539, 126539], "mapped", [1604]], [[126540, 126540], "disallowed"], [[126541, 126541], "mapped", [1606]], [[126542, 126542], "mapped", [1587]], [[126543, 126543], "mapped", [1593]], [[126544, 126544], "disallowed"], [[126545, 126545], "mapped", [1589]], [[126546, 126546], "mapped", [1602]], [[126547, 126547], "disallowed"], [[126548, 126548], "mapped", [1588]], [[126549, 126550], "disallowed"], [[126551, 126551], "mapped", [1582]], [[126552, 126552], "disallowed"], [[126553, 126553], "mapped", [1590]], [[126554, 126554], "disallowed"], [[126555, 126555], "mapped", [1594]], [[126556, 126556], "disallowed"], [[126557, 126557], "mapped", [1722]], [[126558, 126558], "disallowed"], [[126559, 126559], "mapped", [1647]], [[126560, 126560], "disallowed"], [[126561, 126561], "mapped", [1576]], [[126562, 126562], "mapped", [1580]], [[126563, 126563], "disallowed"], [[126564, 126564], "mapped", [1607]], [[126565, 126566], "disallowed"], [[126567, 126567], "mapped", [1581]], [[126568, 126568], "mapped", [1591]], [[126569, 126569], "mapped", [1610]], [[126570, 126570], "mapped", [1603]], [[126571, 126571], "disallowed"], [[126572, 126572], "mapped", [1605]], [[126573, 126573], "mapped", [1606]], [[126574, 126574], "mapped", [1587]], [[126575, 126575], "mapped", [1593]], [[126576, 126576], "mapped", [1601]], [[126577, 126577], "mapped", [1589]], [[126578, 126578], "mapped", [1602]], [[126579, 126579], "disallowed"], [[126580, 126580], "mapped", [1588]], [[126581, 126581], "mapped", [1578]], [[126582, 126582], "mapped", [1579]], [[126583, 126583], "mapped", [1582]], [[126584, 126584], "disallowed"], [[126585, 126585], "mapped", [1590]], [[126586, 126586], "mapped", [1592]], [[126587, 126587], "mapped", [1594]], [[126588, 126588], "mapped", [1646]], [[126589, 126589], "disallowed"], [[126590, 126590], "mapped", [1697]], [[126591, 126591], "disallowed"], [[126592, 126592], "mapped", [1575]], [[126593, 126593], "mapped", [1576]], [[126594, 126594], "mapped", [1580]], [[126595, 126595], "mapped", [1583]], [[126596, 126596], "mapped", [1607]], [[126597, 126597], "mapped", [1608]], [[126598, 126598], "mapped", [1586]], [[126599, 126599], "mapped", [1581]], [[126600, 126600], "mapped", [1591]], [[126601, 126601], "mapped", [1610]], [[126602, 126602], "disallowed"], [[126603, 126603], "mapped", [1604]], [[126604, 126604], "mapped", [1605]], [[126605, 126605], "mapped", [1606]], [[126606, 126606], "mapped", [1587]], [[126607, 126607], "mapped", [1593]], [[126608, 126608], "mapped", [1601]], [[126609, 126609], "mapped", [1589]], [[126610, 126610], "mapped", [1602]], [[126611, 126611], "mapped", [1585]], [[126612, 126612], "mapped", [1588]], [[126613, 126613], "mapped", [1578]], [[126614, 126614], "mapped", [1579]], [[126615, 126615], "mapped", [1582]], [[126616, 126616], "mapped", [1584]], [[126617, 126617], "mapped", [1590]], [[126618, 126618], "mapped", [1592]], [[126619, 126619], "mapped", [1594]], [[126620, 126624], "disallowed"], [[126625, 126625], "mapped", [1576]], [[126626, 126626], "mapped", [1580]], [[126627, 126627], "mapped", [1583]], [[126628, 126628], "disallowed"], [[126629, 126629], "mapped", [1608]], [[126630, 126630], "mapped", [1586]], [[126631, 126631], "mapped", [1581]], [[126632, 126632], "mapped", [1591]], [[126633, 126633], "mapped", [1610]], [[126634, 126634], "disallowed"], [[126635, 126635], "mapped", [1604]], [[126636, 126636], "mapped", [1605]], [[126637, 126637], "mapped", [1606]], [[126638, 126638], "mapped", [1587]], [[126639, 126639], "mapped", [1593]], [[126640, 126640], "mapped", [1601]], [[126641, 126641], "mapped", [1589]], [[126642, 126642], "mapped", [1602]], [[126643, 126643], "mapped", [1585]], [[126644, 126644], "mapped", [1588]], [[126645, 126645], "mapped", [1578]], [[126646, 126646], "mapped", [1579]], [[126647, 126647], "mapped", [1582]], [[126648, 126648], "mapped", [1584]], [[126649, 126649], "mapped", [1590]], [[126650, 126650], "mapped", [1592]], [[126651, 126651], "mapped", [1594]], [[126652, 126703], "disallowed"], [[126704, 126705], "valid", [], "NV8"], [[126706, 126975], "disallowed"], [[126976, 127019], "valid", [], "NV8"], [[127020, 127023], "disallowed"], [[127024, 127123], "valid", [], "NV8"], [[127124, 127135], "disallowed"], [[127136, 127150], "valid", [], "NV8"], [[127151, 127152], "disallowed"], [[127153, 127166], "valid", [], "NV8"], [[127167, 127167], "valid", [], "NV8"], [[127168, 127168], "disallowed"], [[127169, 127183], "valid", [], "NV8"], [[127184, 127184], "disallowed"], [[127185, 127199], "valid", [], "NV8"], [[127200, 127221], "valid", [], "NV8"], [[127222, 127231], "disallowed"], [[127232, 127232], "disallowed"], [[127233, 127233], "disallowed_STD3_mapped", [48, 44]], [[127234, 127234], "disallowed_STD3_mapped", [49, 44]], [[127235, 127235], "disallowed_STD3_mapped", [50, 44]], [[127236, 127236], "disallowed_STD3_mapped", [51, 44]], [[127237, 127237], "disallowed_STD3_mapped", [52, 44]], [[127238, 127238], "disallowed_STD3_mapped", [53, 44]], [[127239, 127239], "disallowed_STD3_mapped", [54, 44]], [[127240, 127240], "disallowed_STD3_mapped", [55, 44]], [[127241, 127241], "disallowed_STD3_mapped", [56, 44]], [[127242, 127242], "disallowed_STD3_mapped", [57, 44]], [[127243, 127244], "valid", [], "NV8"], [[127245, 127247], "disallowed"], [[127248, 127248], "disallowed_STD3_mapped", [40, 97, 41]], [[127249, 127249], "disallowed_STD3_mapped", [40, 98, 41]], [[127250, 127250], "disallowed_STD3_mapped", [40, 99, 41]], [[127251, 127251], "disallowed_STD3_mapped", [40, 100, 41]], [[127252, 127252], "disallowed_STD3_mapped", [40, 101, 41]], [[127253, 127253], "disallowed_STD3_mapped", [40, 102, 41]], [[127254, 127254], "disallowed_STD3_mapped", [40, 103, 41]], [[127255, 127255], "disallowed_STD3_mapped", [40, 104, 41]], [[127256, 127256], "disallowed_STD3_mapped", [40, 105, 41]], [[127257, 127257], "disallowed_STD3_mapped", [40, 106, 41]], [[127258, 127258], "disallowed_STD3_mapped", [40, 107, 41]], [[127259, 127259], "disallowed_STD3_mapped", [40, 108, 41]], [[127260, 127260], "disallowed_STD3_mapped", [40, 109, 41]], [[127261, 127261], "disallowed_STD3_mapped", [40, 110, 41]], [[127262, 127262], "disallowed_STD3_mapped", [40, 111, 41]], [[127263, 127263], "disallowed_STD3_mapped", [40, 112, 41]], [[127264, 127264], "disallowed_STD3_mapped", [40, 113, 41]], [[127265, 127265], "disallowed_STD3_mapped", [40, 114, 41]], [[127266, 127266], "disallowed_STD3_mapped", [40, 115, 41]], [[127267, 127267], "disallowed_STD3_mapped", [40, 116, 41]], [[127268, 127268], "disallowed_STD3_mapped", [40, 117, 41]], [[127269, 127269], "disallowed_STD3_mapped", [40, 118, 41]], [[127270, 127270], "disallowed_STD3_mapped", [40, 119, 41]], [[127271, 127271], "disallowed_STD3_mapped", [40, 120, 41]], [[127272, 127272], "disallowed_STD3_mapped", [40, 121, 41]], [[127273, 127273], "disallowed_STD3_mapped", [40, 122, 41]], [[127274, 127274], "mapped", [12308, 115, 12309]], [[127275, 127275], "mapped", [99]], [[127276, 127276], "mapped", [114]], [[127277, 127277], "mapped", [99, 100]], [[127278, 127278], "mapped", [119, 122]], [[127279, 127279], "disallowed"], [[127280, 127280], "mapped", [97]], [[127281, 127281], "mapped", [98]], [[127282, 127282], "mapped", [99]], [[127283, 127283], "mapped", [100]], [[127284, 127284], "mapped", [101]], [[127285, 127285], "mapped", [102]], [[127286, 127286], "mapped", [103]], [[127287, 127287], "mapped", [104]], [[127288, 127288], "mapped", [105]], [[127289, 127289], "mapped", [106]], [[127290, 127290], "mapped", [107]], [[127291, 127291], "mapped", [108]], [[127292, 127292], "mapped", [109]], [[127293, 127293], "mapped", [110]], [[127294, 127294], "mapped", [111]], [[127295, 127295], "mapped", [112]], [[127296, 127296], "mapped", [113]], [[127297, 127297], "mapped", [114]], [[127298, 127298], "mapped", [115]], [[127299, 127299], "mapped", [116]], [[127300, 127300], "mapped", [117]], [[127301, 127301], "mapped", [118]], [[127302, 127302], "mapped", [119]], [[127303, 127303], "mapped", [120]], [[127304, 127304], "mapped", [121]], [[127305, 127305], "mapped", [122]], [[127306, 127306], "mapped", [104, 118]], [[127307, 127307], "mapped", [109, 118]], [[127308, 127308], "mapped", [115, 100]], [[127309, 127309], "mapped", [115, 115]], [[127310, 127310], "mapped", [112, 112, 118]], [[127311, 127311], "mapped", [119, 99]], [[127312, 127318], "valid", [], "NV8"], [[127319, 127319], "valid", [], "NV8"], [[127320, 127326], "valid", [], "NV8"], [[127327, 127327], "valid", [], "NV8"], [[127328, 127337], "valid", [], "NV8"], [[127338, 127338], "mapped", [109, 99]], [[127339, 127339], "mapped", [109, 100]], [[127340, 127343], "disallowed"], [[127344, 127352], "valid", [], "NV8"], [[127353, 127353], "valid", [], "NV8"], [[127354, 127354], "valid", [], "NV8"], [[127355, 127356], "valid", [], "NV8"], [[127357, 127358], "valid", [], "NV8"], [[127359, 127359], "valid", [], "NV8"], [[127360, 127369], "valid", [], "NV8"], [[127370, 127373], "valid", [], "NV8"], [[127374, 127375], "valid", [], "NV8"], [[127376, 127376], "mapped", [100, 106]], [[127377, 127386], "valid", [], "NV8"], [[127387, 127461], "disallowed"], [[127462, 127487], "valid", [], "NV8"], [[127488, 127488], "mapped", [12411, 12363]], [[127489, 127489], "mapped", [12467, 12467]], [[127490, 127490], "mapped", [12469]], [[127491, 127503], "disallowed"], [[127504, 127504], "mapped", [25163]], [[127505, 127505], "mapped", [23383]], [[127506, 127506], "mapped", [21452]], [[127507, 127507], "mapped", [12487]], [[127508, 127508], "mapped", [20108]], [[127509, 127509], "mapped", [22810]], [[127510, 127510], "mapped", [35299]], [[127511, 127511], "mapped", [22825]], [[127512, 127512], "mapped", [20132]], [[127513, 127513], "mapped", [26144]], [[127514, 127514], "mapped", [28961]], [[127515, 127515], "mapped", [26009]], [[127516, 127516], "mapped", [21069]], [[127517, 127517], "mapped", [24460]], [[127518, 127518], "mapped", [20877]], [[127519, 127519], "mapped", [26032]], [[127520, 127520], "mapped", [21021]], [[127521, 127521], "mapped", [32066]], [[127522, 127522], "mapped", [29983]], [[127523, 127523], "mapped", [36009]], [[127524, 127524], "mapped", [22768]], [[127525, 127525], "mapped", [21561]], [[127526, 127526], "mapped", [28436]], [[127527, 127527], "mapped", [25237]], [[127528, 127528], "mapped", [25429]], [[127529, 127529], "mapped", [19968]], [[127530, 127530], "mapped", [19977]], [[127531, 127531], "mapped", [36938]], [[127532, 127532], "mapped", [24038]], [[127533, 127533], "mapped", [20013]], [[127534, 127534], "mapped", [21491]], [[127535, 127535], "mapped", [25351]], [[127536, 127536], "mapped", [36208]], [[127537, 127537], "mapped", [25171]], [[127538, 127538], "mapped", [31105]], [[127539, 127539], "mapped", [31354]], [[127540, 127540], "mapped", [21512]], [[127541, 127541], "mapped", [28288]], [[127542, 127542], "mapped", [26377]], [[127543, 127543], "mapped", [26376]], [[127544, 127544], "mapped", [30003]], [[127545, 127545], "mapped", [21106]], [[127546, 127546], "mapped", [21942]], [[127547, 127551], "disallowed"], [[127552, 127552], "mapped", [12308, 26412, 12309]], [[127553, 127553], "mapped", [12308, 19977, 12309]], [[127554, 127554], "mapped", [12308, 20108, 12309]], [[127555, 127555], "mapped", [12308, 23433, 12309]], [[127556, 127556], "mapped", [12308, 28857, 12309]], [[127557, 127557], "mapped", [12308, 25171, 12309]], [[127558, 127558], "mapped", [12308, 30423, 12309]], [[127559, 127559], "mapped", [12308, 21213, 12309]], [[127560, 127560], "mapped", [12308, 25943, 12309]], [[127561, 127567], "disallowed"], [[127568, 127568], "mapped", [24471]], [[127569, 127569], "mapped", [21487]], [[127570, 127743], "disallowed"], [[127744, 127776], "valid", [], "NV8"], [[127777, 127788], "valid", [], "NV8"], [[127789, 127791], "valid", [], "NV8"], [[127792, 127797], "valid", [], "NV8"], [[127798, 127798], "valid", [], "NV8"], [[127799, 127868], "valid", [], "NV8"], [[127869, 127869], "valid", [], "NV8"], [[127870, 127871], "valid", [], "NV8"], [[127872, 127891], "valid", [], "NV8"], [[127892, 127903], "valid", [], "NV8"], [[127904, 127940], "valid", [], "NV8"], [[127941, 127941], "valid", [], "NV8"], [[127942, 127946], "valid", [], "NV8"], [[127947, 127950], "valid", [], "NV8"], [[127951, 127955], "valid", [], "NV8"], [[127956, 127967], "valid", [], "NV8"], [[127968, 127984], "valid", [], "NV8"], [[127985, 127991], "valid", [], "NV8"], [[127992, 127999], "valid", [], "NV8"], [[128e3, 128062], "valid", [], "NV8"], [[128063, 128063], "valid", [], "NV8"], [[128064, 128064], "valid", [], "NV8"], [[128065, 128065], "valid", [], "NV8"], [[128066, 128247], "valid", [], "NV8"], [[128248, 128248], "valid", [], "NV8"], [[128249, 128252], "valid", [], "NV8"], [[128253, 128254], "valid", [], "NV8"], [[128255, 128255], "valid", [], "NV8"], [[128256, 128317], "valid", [], "NV8"], [[128318, 128319], "valid", [], "NV8"], [[128320, 128323], "valid", [], "NV8"], [[128324, 128330], "valid", [], "NV8"], [[128331, 128335], "valid", [], "NV8"], [[128336, 128359], "valid", [], "NV8"], [[128360, 128377], "valid", [], "NV8"], [[128378, 128378], "disallowed"], [[128379, 128419], "valid", [], "NV8"], [[128420, 128420], "disallowed"], [[128421, 128506], "valid", [], "NV8"], [[128507, 128511], "valid", [], "NV8"], [[128512, 128512], "valid", [], "NV8"], [[128513, 128528], "valid", [], "NV8"], [[128529, 128529], "valid", [], "NV8"], [[128530, 128532], "valid", [], "NV8"], [[128533, 128533], "valid", [], "NV8"], [[128534, 128534], "valid", [], "NV8"], [[128535, 128535], "valid", [], "NV8"], [[128536, 128536], "valid", [], "NV8"], [[128537, 128537], "valid", [], "NV8"], [[128538, 128538], "valid", [], "NV8"], [[128539, 128539], "valid", [], "NV8"], [[128540, 128542], "valid", [], "NV8"], [[128543, 128543], "valid", [], "NV8"], [[128544, 128549], "valid", [], "NV8"], [[128550, 128551], "valid", [], "NV8"], [[128552, 128555], "valid", [], "NV8"], [[128556, 128556], "valid", [], "NV8"], [[128557, 128557], "valid", [], "NV8"], [[128558, 128559], "valid", [], "NV8"], [[128560, 128563], "valid", [], "NV8"], [[128564, 128564], "valid", [], "NV8"], [[128565, 128576], "valid", [], "NV8"], [[128577, 128578], "valid", [], "NV8"], [[128579, 128580], "valid", [], "NV8"], [[128581, 128591], "valid", [], "NV8"], [[128592, 128639], "valid", [], "NV8"], [[128640, 128709], "valid", [], "NV8"], [[128710, 128719], "valid", [], "NV8"], [[128720, 128720], "valid", [], "NV8"], [[128721, 128735], "disallowed"], [[128736, 128748], "valid", [], "NV8"], [[128749, 128751], "disallowed"], [[128752, 128755], "valid", [], "NV8"], [[128756, 128767], "disallowed"], [[128768, 128883], "valid", [], "NV8"], [[128884, 128895], "disallowed"], [[128896, 128980], "valid", [], "NV8"], [[128981, 129023], "disallowed"], [[129024, 129035], "valid", [], "NV8"], [[129036, 129039], "disallowed"], [[129040, 129095], "valid", [], "NV8"], [[129096, 129103], "disallowed"], [[129104, 129113], "valid", [], "NV8"], [[129114, 129119], "disallowed"], [[129120, 129159], "valid", [], "NV8"], [[129160, 129167], "disallowed"], [[129168, 129197], "valid", [], "NV8"], [[129198, 129295], "disallowed"], [[129296, 129304], "valid", [], "NV8"], [[129305, 129407], "disallowed"], [[129408, 129412], "valid", [], "NV8"], [[129413, 129471], "disallowed"], [[129472, 129472], "valid", [], "NV8"], [[129473, 131069], "disallowed"], [[131070, 131071], "disallowed"], [[131072, 173782], "valid"], [[173783, 173823], "disallowed"], [[173824, 177972], "valid"], [[177973, 177983], "disallowed"], [[177984, 178205], "valid"], [[178206, 178207], "disallowed"], [[178208, 183969], "valid"], [[183970, 194559], "disallowed"], [[194560, 194560], "mapped", [20029]], [[194561, 194561], "mapped", [20024]], [[194562, 194562], "mapped", [20033]], [[194563, 194563], "mapped", [131362]], [[194564, 194564], "mapped", [20320]], [[194565, 194565], "mapped", [20398]], [[194566, 194566], "mapped", [20411]], [[194567, 194567], "mapped", [20482]], [[194568, 194568], "mapped", [20602]], [[194569, 194569], "mapped", [20633]], [[194570, 194570], "mapped", [20711]], [[194571, 194571], "mapped", [20687]], [[194572, 194572], "mapped", [13470]], [[194573, 194573], "mapped", [132666]], [[194574, 194574], "mapped", [20813]], [[194575, 194575], "mapped", [20820]], [[194576, 194576], "mapped", [20836]], [[194577, 194577], "mapped", [20855]], [[194578, 194578], "mapped", [132380]], [[194579, 194579], "mapped", [13497]], [[194580, 194580], "mapped", [20839]], [[194581, 194581], "mapped", [20877]], [[194582, 194582], "mapped", [132427]], [[194583, 194583], "mapped", [20887]], [[194584, 194584], "mapped", [20900]], [[194585, 194585], "mapped", [20172]], [[194586, 194586], "mapped", [20908]], [[194587, 194587], "mapped", [20917]], [[194588, 194588], "mapped", [168415]], [[194589, 194589], "mapped", [20981]], [[194590, 194590], "mapped", [20995]], [[194591, 194591], "mapped", [13535]], [[194592, 194592], "mapped", [21051]], [[194593, 194593], "mapped", [21062]], [[194594, 194594], "mapped", [21106]], [[194595, 194595], "mapped", [21111]], [[194596, 194596], "mapped", [13589]], [[194597, 194597], "mapped", [21191]], [[194598, 194598], "mapped", [21193]], [[194599, 194599], "mapped", [21220]], [[194600, 194600], "mapped", [21242]], [[194601, 194601], "mapped", [21253]], [[194602, 194602], "mapped", [21254]], [[194603, 194603], "mapped", [21271]], [[194604, 194604], "mapped", [21321]], [[194605, 194605], "mapped", [21329]], [[194606, 194606], "mapped", [21338]], [[194607, 194607], "mapped", [21363]], [[194608, 194608], "mapped", [21373]], [[194609, 194611], "mapped", [21375]], [[194612, 194612], "mapped", [133676]], [[194613, 194613], "mapped", [28784]], [[194614, 194614], "mapped", [21450]], [[194615, 194615], "mapped", [21471]], [[194616, 194616], "mapped", [133987]], [[194617, 194617], "mapped", [21483]], [[194618, 194618], "mapped", [21489]], [[194619, 194619], "mapped", [21510]], [[194620, 194620], "mapped", [21662]], [[194621, 194621], "mapped", [21560]], [[194622, 194622], "mapped", [21576]], [[194623, 194623], "mapped", [21608]], [[194624, 194624], "mapped", [21666]], [[194625, 194625], "mapped", [21750]], [[194626, 194626], "mapped", [21776]], [[194627, 194627], "mapped", [21843]], [[194628, 194628], "mapped", [21859]], [[194629, 194630], "mapped", [21892]], [[194631, 194631], "mapped", [21913]], [[194632, 194632], "mapped", [21931]], [[194633, 194633], "mapped", [21939]], [[194634, 194634], "mapped", [21954]], [[194635, 194635], "mapped", [22294]], [[194636, 194636], "mapped", [22022]], [[194637, 194637], "mapped", [22295]], [[194638, 194638], "mapped", [22097]], [[194639, 194639], "mapped", [22132]], [[194640, 194640], "mapped", [20999]], [[194641, 194641], "mapped", [22766]], [[194642, 194642], "mapped", [22478]], [[194643, 194643], "mapped", [22516]], [[194644, 194644], "mapped", [22541]], [[194645, 194645], "mapped", [22411]], [[194646, 194646], "mapped", [22578]], [[194647, 194647], "mapped", [22577]], [[194648, 194648], "mapped", [22700]], [[194649, 194649], "mapped", [136420]], [[194650, 194650], "mapped", [22770]], [[194651, 194651], "mapped", [22775]], [[194652, 194652], "mapped", [22790]], [[194653, 194653], "mapped", [22810]], [[194654, 194654], "mapped", [22818]], [[194655, 194655], "mapped", [22882]], [[194656, 194656], "mapped", [136872]], [[194657, 194657], "mapped", [136938]], [[194658, 194658], "mapped", [23020]], [[194659, 194659], "mapped", [23067]], [[194660, 194660], "mapped", [23079]], [[194661, 194661], "mapped", [23e3]], [[194662, 194662], "mapped", [23142]], [[194663, 194663], "mapped", [14062]], [[194664, 194664], "disallowed"], [[194665, 194665], "mapped", [23304]], [[194666, 194667], "mapped", [23358]], [[194668, 194668], "mapped", [137672]], [[194669, 194669], "mapped", [23491]], [[194670, 194670], "mapped", [23512]], [[194671, 194671], "mapped", [23527]], [[194672, 194672], "mapped", [23539]], [[194673, 194673], "mapped", [138008]], [[194674, 194674], "mapped", [23551]], [[194675, 194675], "mapped", [23558]], [[194676, 194676], "disallowed"], [[194677, 194677], "mapped", [23586]], [[194678, 194678], "mapped", [14209]], [[194679, 194679], "mapped", [23648]], [[194680, 194680], "mapped", [23662]], [[194681, 194681], "mapped", [23744]], [[194682, 194682], "mapped", [23693]], [[194683, 194683], "mapped", [138724]], [[194684, 194684], "mapped", [23875]], [[194685, 194685], "mapped", [138726]], [[194686, 194686], "mapped", [23918]], [[194687, 194687], "mapped", [23915]], [[194688, 194688], "mapped", [23932]], [[194689, 194689], "mapped", [24033]], [[194690, 194690], "mapped", [24034]], [[194691, 194691], "mapped", [14383]], [[194692, 194692], "mapped", [24061]], [[194693, 194693], "mapped", [24104]], [[194694, 194694], "mapped", [24125]], [[194695, 194695], "mapped", [24169]], [[194696, 194696], "mapped", [14434]], [[194697, 194697], "mapped", [139651]], [[194698, 194698], "mapped", [14460]], [[194699, 194699], "mapped", [24240]], [[194700, 194700], "mapped", [24243]], [[194701, 194701], "mapped", [24246]], [[194702, 194702], "mapped", [24266]], [[194703, 194703], "mapped", [172946]], [[194704, 194704], "mapped", [24318]], [[194705, 194706], "mapped", [140081]], [[194707, 194707], "mapped", [33281]], [[194708, 194709], "mapped", [24354]], [[194710, 194710], "mapped", [14535]], [[194711, 194711], "mapped", [144056]], [[194712, 194712], "mapped", [156122]], [[194713, 194713], "mapped", [24418]], [[194714, 194714], "mapped", [24427]], [[194715, 194715], "mapped", [14563]], [[194716, 194716], "mapped", [24474]], [[194717, 194717], "mapped", [24525]], [[194718, 194718], "mapped", [24535]], [[194719, 194719], "mapped", [24569]], [[194720, 194720], "mapped", [24705]], [[194721, 194721], "mapped", [14650]], [[194722, 194722], "mapped", [14620]], [[194723, 194723], "mapped", [24724]], [[194724, 194724], "mapped", [141012]], [[194725, 194725], "mapped", [24775]], [[194726, 194726], "mapped", [24904]], [[194727, 194727], "mapped", [24908]], [[194728, 194728], "mapped", [24910]], [[194729, 194729], "mapped", [24908]], [[194730, 194730], "mapped", [24954]], [[194731, 194731], "mapped", [24974]], [[194732, 194732], "mapped", [25010]], [[194733, 194733], "mapped", [24996]], [[194734, 194734], "mapped", [25007]], [[194735, 194735], "mapped", [25054]], [[194736, 194736], "mapped", [25074]], [[194737, 194737], "mapped", [25078]], [[194738, 194738], "mapped", [25104]], [[194739, 194739], "mapped", [25115]], [[194740, 194740], "mapped", [25181]], [[194741, 194741], "mapped", [25265]], [[194742, 194742], "mapped", [25300]], [[194743, 194743], "mapped", [25424]], [[194744, 194744], "mapped", [142092]], [[194745, 194745], "mapped", [25405]], [[194746, 194746], "mapped", [25340]], [[194747, 194747], "mapped", [25448]], [[194748, 194748], "mapped", [25475]], [[194749, 194749], "mapped", [25572]], [[194750, 194750], "mapped", [142321]], [[194751, 194751], "mapped", [25634]], [[194752, 194752], "mapped", [25541]], [[194753, 194753], "mapped", [25513]], [[194754, 194754], "mapped", [14894]], [[194755, 194755], "mapped", [25705]], [[194756, 194756], "mapped", [25726]], [[194757, 194757], "mapped", [25757]], [[194758, 194758], "mapped", [25719]], [[194759, 194759], "mapped", [14956]], [[194760, 194760], "mapped", [25935]], [[194761, 194761], "mapped", [25964]], [[194762, 194762], "mapped", [143370]], [[194763, 194763], "mapped", [26083]], [[194764, 194764], "mapped", [26360]], [[194765, 194765], "mapped", [26185]], [[194766, 194766], "mapped", [15129]], [[194767, 194767], "mapped", [26257]], [[194768, 194768], "mapped", [15112]], [[194769, 194769], "mapped", [15076]], [[194770, 194770], "mapped", [20882]], [[194771, 194771], "mapped", [20885]], [[194772, 194772], "mapped", [26368]], [[194773, 194773], "mapped", [26268]], [[194774, 194774], "mapped", [32941]], [[194775, 194775], "mapped", [17369]], [[194776, 194776], "mapped", [26391]], [[194777, 194777], "mapped", [26395]], [[194778, 194778], "mapped", [26401]], [[194779, 194779], "mapped", [26462]], [[194780, 194780], "mapped", [26451]], [[194781, 194781], "mapped", [144323]], [[194782, 194782], "mapped", [15177]], [[194783, 194783], "mapped", [26618]], [[194784, 194784], "mapped", [26501]], [[194785, 194785], "mapped", [26706]], [[194786, 194786], "mapped", [26757]], [[194787, 194787], "mapped", [144493]], [[194788, 194788], "mapped", [26766]], [[194789, 194789], "mapped", [26655]], [[194790, 194790], "mapped", [26900]], [[194791, 194791], "mapped", [15261]], [[194792, 194792], "mapped", [26946]], [[194793, 194793], "mapped", [27043]], [[194794, 194794], "mapped", [27114]], [[194795, 194795], "mapped", [27304]], [[194796, 194796], "mapped", [145059]], [[194797, 194797], "mapped", [27355]], [[194798, 194798], "mapped", [15384]], [[194799, 194799], "mapped", [27425]], [[194800, 194800], "mapped", [145575]], [[194801, 194801], "mapped", [27476]], [[194802, 194802], "mapped", [15438]], [[194803, 194803], "mapped", [27506]], [[194804, 194804], "mapped", [27551]], [[194805, 194805], "mapped", [27578]], [[194806, 194806], "mapped", [27579]], [[194807, 194807], "mapped", [146061]], [[194808, 194808], "mapped", [138507]], [[194809, 194809], "mapped", [146170]], [[194810, 194810], "mapped", [27726]], [[194811, 194811], "mapped", [146620]], [[194812, 194812], "mapped", [27839]], [[194813, 194813], "mapped", [27853]], [[194814, 194814], "mapped", [27751]], [[194815, 194815], "mapped", [27926]], [[194816, 194816], "mapped", [27966]], [[194817, 194817], "mapped", [28023]], [[194818, 194818], "mapped", [27969]], [[194819, 194819], "mapped", [28009]], [[194820, 194820], "mapped", [28024]], [[194821, 194821], "mapped", [28037]], [[194822, 194822], "mapped", [146718]], [[194823, 194823], "mapped", [27956]], [[194824, 194824], "mapped", [28207]], [[194825, 194825], "mapped", [28270]], [[194826, 194826], "mapped", [15667]], [[194827, 194827], "mapped", [28363]], [[194828, 194828], "mapped", [28359]], [[194829, 194829], "mapped", [147153]], [[194830, 194830], "mapped", [28153]], [[194831, 194831], "mapped", [28526]], [[194832, 194832], "mapped", [147294]], [[194833, 194833], "mapped", [147342]], [[194834, 194834], "mapped", [28614]], [[194835, 194835], "mapped", [28729]], [[194836, 194836], "mapped", [28702]], [[194837, 194837], "mapped", [28699]], [[194838, 194838], "mapped", [15766]], [[194839, 194839], "mapped", [28746]], [[194840, 194840], "mapped", [28797]], [[194841, 194841], "mapped", [28791]], [[194842, 194842], "mapped", [28845]], [[194843, 194843], "mapped", [132389]], [[194844, 194844], "mapped", [28997]], [[194845, 194845], "mapped", [148067]], [[194846, 194846], "mapped", [29084]], [[194847, 194847], "disallowed"], [[194848, 194848], "mapped", [29224]], [[194849, 194849], "mapped", [29237]], [[194850, 194850], "mapped", [29264]], [[194851, 194851], "mapped", [149e3]], [[194852, 194852], "mapped", [29312]], [[194853, 194853], "mapped", [29333]], [[194854, 194854], "mapped", [149301]], [[194855, 194855], "mapped", [149524]], [[194856, 194856], "mapped", [29562]], [[194857, 194857], "mapped", [29579]], [[194858, 194858], "mapped", [16044]], [[194859, 194859], "mapped", [29605]], [[194860, 194861], "mapped", [16056]], [[194862, 194862], "mapped", [29767]], [[194863, 194863], "mapped", [29788]], [[194864, 194864], "mapped", [29809]], [[194865, 194865], "mapped", [29829]], [[194866, 194866], "mapped", [29898]], [[194867, 194867], "mapped", [16155]], [[194868, 194868], "mapped", [29988]], [[194869, 194869], "mapped", [150582]], [[194870, 194870], "mapped", [30014]], [[194871, 194871], "mapped", [150674]], [[194872, 194872], "mapped", [30064]], [[194873, 194873], "mapped", [139679]], [[194874, 194874], "mapped", [30224]], [[194875, 194875], "mapped", [151457]], [[194876, 194876], "mapped", [151480]], [[194877, 194877], "mapped", [151620]], [[194878, 194878], "mapped", [16380]], [[194879, 194879], "mapped", [16392]], [[194880, 194880], "mapped", [30452]], [[194881, 194881], "mapped", [151795]], [[194882, 194882], "mapped", [151794]], [[194883, 194883], "mapped", [151833]], [[194884, 194884], "mapped", [151859]], [[194885, 194885], "mapped", [30494]], [[194886, 194887], "mapped", [30495]], [[194888, 194888], "mapped", [30538]], [[194889, 194889], "mapped", [16441]], [[194890, 194890], "mapped", [30603]], [[194891, 194891], "mapped", [16454]], [[194892, 194892], "mapped", [16534]], [[194893, 194893], "mapped", [152605]], [[194894, 194894], "mapped", [30798]], [[194895, 194895], "mapped", [30860]], [[194896, 194896], "mapped", [30924]], [[194897, 194897], "mapped", [16611]], [[194898, 194898], "mapped", [153126]], [[194899, 194899], "mapped", [31062]], [[194900, 194900], "mapped", [153242]], [[194901, 194901], "mapped", [153285]], [[194902, 194902], "mapped", [31119]], [[194903, 194903], "mapped", [31211]], [[194904, 194904], "mapped", [16687]], [[194905, 194905], "mapped", [31296]], [[194906, 194906], "mapped", [31306]], [[194907, 194907], "mapped", [31311]], [[194908, 194908], "mapped", [153980]], [[194909, 194910], "mapped", [154279]], [[194911, 194911], "disallowed"], [[194912, 194912], "mapped", [16898]], [[194913, 194913], "mapped", [154539]], [[194914, 194914], "mapped", [31686]], [[194915, 194915], "mapped", [31689]], [[194916, 194916], "mapped", [16935]], [[194917, 194917], "mapped", [154752]], [[194918, 194918], "mapped", [31954]], [[194919, 194919], "mapped", [17056]], [[194920, 194920], "mapped", [31976]], [[194921, 194921], "mapped", [31971]], [[194922, 194922], "mapped", [32e3]], [[194923, 194923], "mapped", [155526]], [[194924, 194924], "mapped", [32099]], [[194925, 194925], "mapped", [17153]], [[194926, 194926], "mapped", [32199]], [[194927, 194927], "mapped", [32258]], [[194928, 194928], "mapped", [32325]], [[194929, 194929], "mapped", [17204]], [[194930, 194930], "mapped", [156200]], [[194931, 194931], "mapped", [156231]], [[194932, 194932], "mapped", [17241]], [[194933, 194933], "mapped", [156377]], [[194934, 194934], "mapped", [32634]], [[194935, 194935], "mapped", [156478]], [[194936, 194936], "mapped", [32661]], [[194937, 194937], "mapped", [32762]], [[194938, 194938], "mapped", [32773]], [[194939, 194939], "mapped", [156890]], [[194940, 194940], "mapped", [156963]], [[194941, 194941], "mapped", [32864]], [[194942, 194942], "mapped", [157096]], [[194943, 194943], "mapped", [32880]], [[194944, 194944], "mapped", [144223]], [[194945, 194945], "mapped", [17365]], [[194946, 194946], "mapped", [32946]], [[194947, 194947], "mapped", [33027]], [[194948, 194948], "mapped", [17419]], [[194949, 194949], "mapped", [33086]], [[194950, 194950], "mapped", [23221]], [[194951, 194951], "mapped", [157607]], [[194952, 194952], "mapped", [157621]], [[194953, 194953], "mapped", [144275]], [[194954, 194954], "mapped", [144284]], [[194955, 194955], "mapped", [33281]], [[194956, 194956], "mapped", [33284]], [[194957, 194957], "mapped", [36766]], [[194958, 194958], "mapped", [17515]], [[194959, 194959], "mapped", [33425]], [[194960, 194960], "mapped", [33419]], [[194961, 194961], "mapped", [33437]], [[194962, 194962], "mapped", [21171]], [[194963, 194963], "mapped", [33457]], [[194964, 194964], "mapped", [33459]], [[194965, 194965], "mapped", [33469]], [[194966, 194966], "mapped", [33510]], [[194967, 194967], "mapped", [158524]], [[194968, 194968], "mapped", [33509]], [[194969, 194969], "mapped", [33565]], [[194970, 194970], "mapped", [33635]], [[194971, 194971], "mapped", [33709]], [[194972, 194972], "mapped", [33571]], [[194973, 194973], "mapped", [33725]], [[194974, 194974], "mapped", [33767]], [[194975, 194975], "mapped", [33879]], [[194976, 194976], "mapped", [33619]], [[194977, 194977], "mapped", [33738]], [[194978, 194978], "mapped", [33740]], [[194979, 194979], "mapped", [33756]], [[194980, 194980], "mapped", [158774]], [[194981, 194981], "mapped", [159083]], [[194982, 194982], "mapped", [158933]], [[194983, 194983], "mapped", [17707]], [[194984, 194984], "mapped", [34033]], [[194985, 194985], "mapped", [34035]], [[194986, 194986], "mapped", [34070]], [[194987, 194987], "mapped", [160714]], [[194988, 194988], "mapped", [34148]], [[194989, 194989], "mapped", [159532]], [[194990, 194990], "mapped", [17757]], [[194991, 194991], "mapped", [17761]], [[194992, 194992], "mapped", [159665]], [[194993, 194993], "mapped", [159954]], [[194994, 194994], "mapped", [17771]], [[194995, 194995], "mapped", [34384]], [[194996, 194996], "mapped", [34396]], [[194997, 194997], "mapped", [34407]], [[194998, 194998], "mapped", [34409]], [[194999, 194999], "mapped", [34473]], [[195e3, 195e3], "mapped", [34440]], [[195001, 195001], "mapped", [34574]], [[195002, 195002], "mapped", [34530]], [[195003, 195003], "mapped", [34681]], [[195004, 195004], "mapped", [34600]], [[195005, 195005], "mapped", [34667]], [[195006, 195006], "mapped", [34694]], [[195007, 195007], "disallowed"], [[195008, 195008], "mapped", [34785]], [[195009, 195009], "mapped", [34817]], [[195010, 195010], "mapped", [17913]], [[195011, 195011], "mapped", [34912]], [[195012, 195012], "mapped", [34915]], [[195013, 195013], "mapped", [161383]], [[195014, 195014], "mapped", [35031]], [[195015, 195015], "mapped", [35038]], [[195016, 195016], "mapped", [17973]], [[195017, 195017], "mapped", [35066]], [[195018, 195018], "mapped", [13499]], [[195019, 195019], "mapped", [161966]], [[195020, 195020], "mapped", [162150]], [[195021, 195021], "mapped", [18110]], [[195022, 195022], "mapped", [18119]], [[195023, 195023], "mapped", [35488]], [[195024, 195024], "mapped", [35565]], [[195025, 195025], "mapped", [35722]], [[195026, 195026], "mapped", [35925]], [[195027, 195027], "mapped", [162984]], [[195028, 195028], "mapped", [36011]], [[195029, 195029], "mapped", [36033]], [[195030, 195030], "mapped", [36123]], [[195031, 195031], "mapped", [36215]], [[195032, 195032], "mapped", [163631]], [[195033, 195033], "mapped", [133124]], [[195034, 195034], "mapped", [36299]], [[195035, 195035], "mapped", [36284]], [[195036, 195036], "mapped", [36336]], [[195037, 195037], "mapped", [133342]], [[195038, 195038], "mapped", [36564]], [[195039, 195039], "mapped", [36664]], [[195040, 195040], "mapped", [165330]], [[195041, 195041], "mapped", [165357]], [[195042, 195042], "mapped", [37012]], [[195043, 195043], "mapped", [37105]], [[195044, 195044], "mapped", [37137]], [[195045, 195045], "mapped", [165678]], [[195046, 195046], "mapped", [37147]], [[195047, 195047], "mapped", [37432]], [[195048, 195048], "mapped", [37591]], [[195049, 195049], "mapped", [37592]], [[195050, 195050], "mapped", [37500]], [[195051, 195051], "mapped", [37881]], [[195052, 195052], "mapped", [37909]], [[195053, 195053], "mapped", [166906]], [[195054, 195054], "mapped", [38283]], [[195055, 195055], "mapped", [18837]], [[195056, 195056], "mapped", [38327]], [[195057, 195057], "mapped", [167287]], [[195058, 195058], "mapped", [18918]], [[195059, 195059], "mapped", [38595]], [[195060, 195060], "mapped", [23986]], [[195061, 195061], "mapped", [38691]], [[195062, 195062], "mapped", [168261]], [[195063, 195063], "mapped", [168474]], [[195064, 195064], "mapped", [19054]], [[195065, 195065], "mapped", [19062]], [[195066, 195066], "mapped", [38880]], [[195067, 195067], "mapped", [168970]], [[195068, 195068], "mapped", [19122]], [[195069, 195069], "mapped", [169110]], [[195070, 195071], "mapped", [38923]], [[195072, 195072], "mapped", [38953]], [[195073, 195073], "mapped", [169398]], [[195074, 195074], "mapped", [39138]], [[195075, 195075], "mapped", [19251]], [[195076, 195076], "mapped", [39209]], [[195077, 195077], "mapped", [39335]], [[195078, 195078], "mapped", [39362]], [[195079, 195079], "mapped", [39422]], [[195080, 195080], "mapped", [19406]], [[195081, 195081], "mapped", [170800]], [[195082, 195082], "mapped", [39698]], [[195083, 195083], "mapped", [4e4]], [[195084, 195084], "mapped", [40189]], [[195085, 195085], "mapped", [19662]], [[195086, 195086], "mapped", [19693]], [[195087, 195087], "mapped", [40295]], [[195088, 195088], "mapped", [172238]], [[195089, 195089], "mapped", [19704]], [[195090, 195090], "mapped", [172293]], [[195091, 195091], "mapped", [172558]], [[195092, 195092], "mapped", [172689]], [[195093, 195093], "mapped", [40635]], [[195094, 195094], "mapped", [19798]], [[195095, 195095], "mapped", [40697]], [[195096, 195096], "mapped", [40702]], [[195097, 195097], "mapped", [40709]], [[195098, 195098], "mapped", [40719]], [[195099, 195099], "mapped", [40726]], [[195100, 195100], "mapped", [40763]], [[195101, 195101], "mapped", [173568]], [[195102, 196605], "disallowed"], [[196606, 196607], "disallowed"], [[196608, 262141], "disallowed"], [[262142, 262143], "disallowed"], [[262144, 327677], "disallowed"], [[327678, 327679], "disallowed"], [[327680, 393213], "disallowed"], [[393214, 393215], "disallowed"], [[393216, 458749], "disallowed"], [[458750, 458751], "disallowed"], [[458752, 524285], "disallowed"], [[524286, 524287], "disallowed"], [[524288, 589821], "disallowed"], [[589822, 589823], "disallowed"], [[589824, 655357], "disallowed"], [[655358, 655359], "disallowed"], [[655360, 720893], "disallowed"], [[720894, 720895], "disallowed"], [[720896, 786429], "disallowed"], [[786430, 786431], "disallowed"], [[786432, 851965], "disallowed"], [[851966, 851967], "disallowed"], [[851968, 917501], "disallowed"], [[917502, 917503], "disallowed"], [[917504, 917504], "disallowed"], [[917505, 917505], "disallowed"], [[917506, 917535], "disallowed"], [[917536, 917631], "disallowed"], [[917632, 917759], "disallowed"], [[917760, 917999], "ignored"], [[918e3, 983037], "disallowed"], [[983038, 983039], "disallowed"], [[983040, 1048573], "disallowed"], [[1048574, 1048575], "disallowed"], [[1048576, 1114109], "disallowed"], [[1114110, 1114111], "disallowed"]];
+  }
+});
+
+// ../../../node_modules/tr46/index.js
+var require_tr46 = __commonJS({
+  "../../../node_modules/tr46/index.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var mappingTable = require_mappingTable();
+    var PROCESSING_OPTIONS = {
+      TRANSITIONAL: 0,
+      NONTRANSITIONAL: 1
+    };
+    function normalize(str) {
+      return str.split("\0").map(function(s) {
+        return s.normalize("NFC");
+      }).join("\0");
+    }
+    function findStatus(val2) {
+      var start = 0;
+      var end = mappingTable.length - 1;
+      while (start <= end) {
+        var mid = Math.floor((start + end) / 2);
+        var target = mappingTable[mid];
+        if (target[0][0] <= val2 && target[0][1] >= val2) {
+          return target;
+        } else if (target[0][0] > val2) {
+          end = mid - 1;
+        } else {
+          start = mid + 1;
+        }
+      }
+      return null;
+    }
+    var regexAstralSymbols = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
+    function countSymbols(string) {
+      return string.replace(regexAstralSymbols, "_").length;
+    }
+    function mapChars(domain_name, useSTD3, processing_option) {
+      var hasError = false;
+      var processed = "";
+      var len = countSymbols(domain_name);
+      for (var i = 0; i < len; ++i) {
+        var codePoint = domain_name.codePointAt(i);
+        var status = findStatus(codePoint);
+        switch (status[1]) {
+          case "disallowed":
+            hasError = true;
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "ignored":
+            break;
+          case "mapped":
+            processed += String.fromCodePoint.apply(String, status[2]);
+            break;
+          case "deviation":
+            if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            } else {
+              processed += String.fromCodePoint(codePoint);
+            }
+            break;
+          case "valid":
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "disallowed_STD3_mapped":
+            if (useSTD3) {
+              hasError = true;
+              processed += String.fromCodePoint(codePoint);
+            } else {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            }
+            break;
+          case "disallowed_STD3_valid":
+            if (useSTD3) {
+              hasError = true;
+            }
+            processed += String.fromCodePoint(codePoint);
+            break;
+        }
+      }
+      return {
+        string: processed,
+        error: hasError
+      };
+    }
+    var combiningMarksRegex = /[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/;
+    function validateLabel(label, processing_option) {
+      if (label.substr(0, 4) === "xn--") {
+        label = punycode.toUnicode(label);
+        processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL;
+      }
+      var error = false;
+      if (normalize(label) !== label || label[3] === "-" && label[4] === "-" || label[0] === "-" || label[label.length - 1] === "-" || label.indexOf(".") !== -1 || label.search(combiningMarksRegex) === 0) {
+        error = true;
+      }
+      var len = countSymbols(label);
+      for (var i = 0; i < len; ++i) {
+        var status = findStatus(label.codePointAt(i));
+        if (processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== "valid" || processing === PROCESSING_OPTIONS.NONTRANSITIONAL && status[1] !== "valid" && status[1] !== "deviation") {
+          error = true;
+          break;
+        }
+      }
+      return {
+        label,
+        error
+      };
+    }
+    function processing(domain_name, useSTD3, processing_option) {
+      var result = mapChars(domain_name, useSTD3, processing_option);
+      result.string = normalize(result.string);
+      var labels = result.string.split(".");
+      for (var i = 0; i < labels.length; ++i) {
+        try {
+          var validation = validateLabel(labels[i]);
+          labels[i] = validation.label;
+          result.error = result.error || validation.error;
+        } catch (e) {
+          result.error = true;
+        }
+      }
+      return {
+        string: labels.join("."),
+        error: result.error
+      };
+    }
+    module2.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) {
+      var result = processing(domain_name, useSTD3, processing_option);
+      var labels = result.string.split(".");
+      labels = labels.map(function(l) {
+        try {
+          return punycode.toASCII(l);
+        } catch (e) {
+          result.error = true;
+          return l;
+        }
+      });
+      if (verifyDnsLength) {
+        var total = labels.slice(0, labels.length - 1).join(".").length;
+        if (total.length > 253 || total.length === 0) {
+          result.error = true;
+        }
+        for (var i = 0; i < labels.length; ++i) {
+          if (labels.length > 63 || labels.length === 0) {
+            result.error = true;
+            break;
+          }
+        }
+      }
+      if (result.error) return null;
+      return labels.join(".");
+    };
+    module2.exports.toUnicode = function(domain_name, useSTD3) {
+      var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL);
+      return {
+        domain: result.string,
+        error: result.error
+      };
+    };
+    module2.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS;
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/url-state-machine.js
+var require_url_state_machine = __commonJS({
+  "../../../node_modules/whatwg-url/lib/url-state-machine.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var tr46 = require_tr46();
+    var specialSchemes = {
+      ftp: 21,
+      file: null,
+      gopher: 70,
+      http: 80,
+      https: 443,
+      ws: 80,
+      wss: 443
+    };
+    var failure = /* @__PURE__ */ Symbol("failure");
+    function countSymbols(str) {
+      return punycode.ucs2.decode(str).length;
+    }
+    function at(input, idx) {
+      const c = input[idx];
+      return isNaN(c) ? void 0 : String.fromCodePoint(c);
+    }
+    function isASCIIDigit(c) {
+      return c >= 48 && c <= 57;
+    }
+    function isASCIIAlpha(c) {
+      return c >= 65 && c <= 90 || c >= 97 && c <= 122;
+    }
+    function isASCIIAlphanumeric(c) {
+      return isASCIIAlpha(c) || isASCIIDigit(c);
+    }
+    function isASCIIHex(c) {
+      return isASCIIDigit(c) || c >= 65 && c <= 70 || c >= 97 && c <= 102;
+    }
+    function isSingleDot(buffer) {
+      return buffer === "." || buffer.toLowerCase() === "%2e";
+    }
+    function isDoubleDot(buffer) {
+      buffer = buffer.toLowerCase();
+      return buffer === ".." || buffer === "%2e." || buffer === ".%2e" || buffer === "%2e%2e";
+    }
+    function isWindowsDriveLetterCodePoints(cp1, cp2) {
+      return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124);
+    }
+    function isWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === ":" || string[1] === "|");
+    }
+    function isNormalizedWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === ":";
+    }
+    function containsForbiddenHostCodePoint(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function containsForbiddenHostCodePointExcludingPercent(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function isSpecialScheme(scheme) {
+      return specialSchemes[scheme] !== void 0;
+    }
+    function isSpecial(url2) {
+      return isSpecialScheme(url2.scheme);
+    }
+    function defaultPort(scheme) {
+      return specialSchemes[scheme];
+    }
+    function percentEncode(c) {
+      let hex2 = c.toString(16).toUpperCase();
+      if (hex2.length === 1) {
+        hex2 = "0" + hex2;
+      }
+      return "%" + hex2;
+    }
+    function utf8PercentEncode(c) {
+      const buf = new Buffer(c);
+      let str = "";
+      for (let i = 0; i < buf.length; ++i) {
+        str += percentEncode(buf[i]);
+      }
+      return str;
+    }
+    function utf8PercentDecode(str) {
+      const input = new Buffer(str);
+      const output = [];
+      for (let i = 0; i < input.length; ++i) {
+        if (input[i] !== 37) {
+          output.push(input[i]);
+        } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) {
+          output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16));
+          i += 2;
+        } else {
+          output.push(input[i]);
+        }
+      }
+      return new Buffer(output).toString();
+    }
+    function isC0ControlPercentEncode(c) {
+      return c <= 31 || c > 126;
+    }
+    var extraPathPercentEncodeSet = /* @__PURE__ */ new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]);
+    function isPathPercentEncode(c) {
+      return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c);
+    }
+    var extraUserinfoPercentEncodeSet = /* @__PURE__ */ new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]);
+    function isUserinfoPercentEncode(c) {
+      return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c);
+    }
+    function percentEncodeChar(c, encodeSetPredicate) {
+      const cStr = String.fromCodePoint(c);
+      if (encodeSetPredicate(c)) {
+        return utf8PercentEncode(cStr);
+      }
+      return cStr;
+    }
+    function parseIPv4Number(input) {
+      let R = 10;
+      if (input.length >= 2 && input.charAt(0) === "0" && input.charAt(1).toLowerCase() === "x") {
+        input = input.substring(2);
+        R = 16;
+      } else if (input.length >= 2 && input.charAt(0) === "0") {
+        input = input.substring(1);
+        R = 8;
+      }
+      if (input === "") {
+        return 0;
+      }
+      const regex = R === 10 ? /[^0-9]/ : R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/;
+      if (regex.test(input)) {
+        return failure;
+      }
+      return parseInt(input, R);
+    }
+    function parseIPv4(input) {
+      const parts = input.split(".");
+      if (parts[parts.length - 1] === "") {
+        if (parts.length > 1) {
+          parts.pop();
+        }
+      }
+      if (parts.length > 4) {
+        return input;
+      }
+      const numbers = [];
+      for (const part of parts) {
+        if (part === "") {
+          return input;
+        }
+        const n = parseIPv4Number(part);
+        if (n === failure) {
+          return input;
+        }
+        numbers.push(n);
+      }
+      for (let i = 0; i < numbers.length - 1; ++i) {
+        if (numbers[i] > 255) {
+          return failure;
+        }
+      }
+      if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) {
+        return failure;
+      }
+      let ipv4 = numbers.pop();
+      let counter = 0;
+      for (const n of numbers) {
+        ipv4 += n * Math.pow(256, 3 - counter);
+        ++counter;
+      }
+      return ipv4;
+    }
+    function serializeIPv4(address) {
+      let output = "";
+      let n = address;
+      for (let i = 1; i <= 4; ++i) {
+        output = String(n % 256) + output;
+        if (i !== 4) {
+          output = "." + output;
+        }
+        n = Math.floor(n / 256);
+      }
+      return output;
+    }
+    function parseIPv6(input) {
+      const address = [0, 0, 0, 0, 0, 0, 0, 0];
+      let pieceIndex = 0;
+      let compress = null;
+      let pointer = 0;
+      input = punycode.ucs2.decode(input);
+      if (input[pointer] === 58) {
+        if (input[pointer + 1] !== 58) {
+          return failure;
+        }
+        pointer += 2;
+        ++pieceIndex;
+        compress = pieceIndex;
+      }
+      while (pointer < input.length) {
+        if (pieceIndex === 8) {
+          return failure;
+        }
+        if (input[pointer] === 58) {
+          if (compress !== null) {
+            return failure;
+          }
+          ++pointer;
+          ++pieceIndex;
+          compress = pieceIndex;
+          continue;
+        }
+        let value = 0;
+        let length = 0;
+        while (length < 4 && isASCIIHex(input[pointer])) {
+          value = value * 16 + parseInt(at(input, pointer), 16);
+          ++pointer;
+          ++length;
+        }
+        if (input[pointer] === 46) {
+          if (length === 0) {
+            return failure;
+          }
+          pointer -= length;
+          if (pieceIndex > 6) {
+            return failure;
+          }
+          let numbersSeen = 0;
+          while (input[pointer] !== void 0) {
+            let ipv4Piece = null;
+            if (numbersSeen > 0) {
+              if (input[pointer] === 46 && numbersSeen < 4) {
+                ++pointer;
+              } else {
+                return failure;
+              }
+            }
+            if (!isASCIIDigit(input[pointer])) {
+              return failure;
+            }
+            while (isASCIIDigit(input[pointer])) {
+              const number = parseInt(at(input, pointer));
+              if (ipv4Piece === null) {
+                ipv4Piece = number;
+              } else if (ipv4Piece === 0) {
+                return failure;
+              } else {
+                ipv4Piece = ipv4Piece * 10 + number;
+              }
+              if (ipv4Piece > 255) {
+                return failure;
+              }
+              ++pointer;
+            }
+            address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;
+            ++numbersSeen;
+            if (numbersSeen === 2 || numbersSeen === 4) {
+              ++pieceIndex;
+            }
+          }
+          if (numbersSeen !== 4) {
+            return failure;
+          }
+          break;
+        } else if (input[pointer] === 58) {
+          ++pointer;
+          if (input[pointer] === void 0) {
+            return failure;
+          }
+        } else if (input[pointer] !== void 0) {
+          return failure;
+        }
+        address[pieceIndex] = value;
+        ++pieceIndex;
+      }
+      if (compress !== null) {
+        let swaps = pieceIndex - compress;
+        pieceIndex = 7;
+        while (pieceIndex !== 0 && swaps > 0) {
+          const temp = address[compress + swaps - 1];
+          address[compress + swaps - 1] = address[pieceIndex];
+          address[pieceIndex] = temp;
+          --pieceIndex;
+          --swaps;
+        }
+      } else if (compress === null && pieceIndex !== 8) {
+        return failure;
+      }
+      return address;
+    }
+    function serializeIPv6(address) {
+      let output = "";
+      const seqResult = findLongestZeroSequence(address);
+      const compress = seqResult.idx;
+      let ignore0 = false;
+      for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) {
+        if (ignore0 && address[pieceIndex] === 0) {
+          continue;
+        } else if (ignore0) {
+          ignore0 = false;
+        }
+        if (compress === pieceIndex) {
+          const separator = pieceIndex === 0 ? "::" : ":";
+          output += separator;
+          ignore0 = true;
+          continue;
+        }
+        output += address[pieceIndex].toString(16);
+        if (pieceIndex !== 7) {
+          output += ":";
+        }
+      }
+      return output;
+    }
+    function parseHost(input, isSpecialArg) {
+      if (input[0] === "[") {
+        if (input[input.length - 1] !== "]") {
+          return failure;
+        }
+        return parseIPv6(input.substring(1, input.length - 1));
+      }
+      if (!isSpecialArg) {
+        return parseOpaqueHost(input);
+      }
+      const domain = utf8PercentDecode(input);
+      const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false);
+      if (asciiDomain === null) {
+        return failure;
+      }
+      if (containsForbiddenHostCodePoint(asciiDomain)) {
+        return failure;
+      }
+      const ipv4Host = parseIPv4(asciiDomain);
+      if (typeof ipv4Host === "number" || ipv4Host === failure) {
+        return ipv4Host;
+      }
+      return asciiDomain;
+    }
+    function parseOpaqueHost(input) {
+      if (containsForbiddenHostCodePointExcludingPercent(input)) {
+        return failure;
+      }
+      let output = "";
+      const decoded = punycode.ucs2.decode(input);
+      for (let i = 0; i < decoded.length; ++i) {
+        output += percentEncodeChar(decoded[i], isC0ControlPercentEncode);
+      }
+      return output;
+    }
+    function findLongestZeroSequence(arr) {
+      let maxIdx = null;
+      let maxLen = 1;
+      let currStart = null;
+      let currLen = 0;
+      for (let i = 0; i < arr.length; ++i) {
+        if (arr[i] !== 0) {
+          if (currLen > maxLen) {
+            maxIdx = currStart;
+            maxLen = currLen;
+          }
+          currStart = null;
+          currLen = 0;
+        } else {
+          if (currStart === null) {
+            currStart = i;
+          }
+          ++currLen;
+        }
+      }
+      if (currLen > maxLen) {
+        maxIdx = currStart;
+        maxLen = currLen;
+      }
+      return {
+        idx: maxIdx,
+        len: maxLen
+      };
+    }
+    function serializeHost(host) {
+      if (typeof host === "number") {
+        return serializeIPv4(host);
+      }
+      if (host instanceof Array) {
+        return "[" + serializeIPv6(host) + "]";
+      }
+      return host;
+    }
+    function trimControlChars(url2) {
+      return url2.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g, "");
+    }
+    function trimTabAndNewline(url2) {
+      return url2.replace(/\u0009|\u000A|\u000D/g, "");
+    }
+    function shortenPath(url2) {
+      const path23 = url2.path;
+      if (path23.length === 0) {
+        return;
+      }
+      if (url2.scheme === "file" && path23.length === 1 && isNormalizedWindowsDriveLetter(path23[0])) {
+        return;
+      }
+      path23.pop();
+    }
+    function includesCredentials(url2) {
+      return url2.username !== "" || url2.password !== "";
+    }
+    function cannotHaveAUsernamePasswordPort(url2) {
+      return url2.host === null || url2.host === "" || url2.cannotBeABaseURL || url2.scheme === "file";
+    }
+    function isNormalizedWindowsDriveLetter(string) {
+      return /^[A-Za-z]:$/.test(string);
+    }
+    function URLStateMachine(input, base, encodingOverride, url2, stateOverride) {
+      this.pointer = 0;
+      this.input = input;
+      this.base = base || null;
+      this.encodingOverride = encodingOverride || "utf-8";
+      this.stateOverride = stateOverride;
+      this.url = url2;
+      this.failure = false;
+      this.parseError = false;
+      if (!this.url) {
+        this.url = {
+          scheme: "",
+          username: "",
+          password: "",
+          host: null,
+          port: null,
+          path: [],
+          query: null,
+          fragment: null,
+          cannotBeABaseURL: false
+        };
+        const res2 = trimControlChars(this.input);
+        if (res2 !== this.input) {
+          this.parseError = true;
+        }
+        this.input = res2;
+      }
+      const res = trimTabAndNewline(this.input);
+      if (res !== this.input) {
+        this.parseError = true;
+      }
+      this.input = res;
+      this.state = stateOverride || "scheme start";
+      this.buffer = "";
+      this.atFlag = false;
+      this.arrFlag = false;
+      this.passwordTokenSeenFlag = false;
+      this.input = punycode.ucs2.decode(this.input);
+      for (; this.pointer <= this.input.length; ++this.pointer) {
+        const c = this.input[this.pointer];
+        const cStr = isNaN(c) ? void 0 : String.fromCodePoint(c);
+        const ret = this["parse " + this.state](c, cStr);
+        if (!ret) {
+          break;
+        } else if (ret === failure) {
+          this.failure = true;
+          break;
+        }
+      }
+    }
+    URLStateMachine.prototype["parse scheme start"] = function parseSchemeStart(c, cStr) {
+      if (isASCIIAlpha(c)) {
+        this.buffer += cStr.toLowerCase();
+        this.state = "scheme";
+      } else if (!this.stateOverride) {
+        this.state = "no scheme";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse scheme"] = function parseScheme(c, cStr) {
+      if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) {
+        this.buffer += cStr.toLowerCase();
+      } else if (c === 58) {
+        if (this.stateOverride) {
+          if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === "file") {
+            return false;
+          }
+          if (this.url.scheme === "file" && (this.url.host === "" || this.url.host === null)) {
+            return false;
+          }
+        }
+        this.url.scheme = this.buffer;
+        this.buffer = "";
+        if (this.stateOverride) {
+          return false;
+        }
+        if (this.url.scheme === "file") {
+          if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) {
+            this.parseError = true;
+          }
+          this.state = "file";
+        } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) {
+          this.state = "special relative or authority";
+        } else if (isSpecial(this.url)) {
+          this.state = "special authority slashes";
+        } else if (this.input[this.pointer + 1] === 47) {
+          this.state = "path or authority";
+          ++this.pointer;
+        } else {
+          this.url.cannotBeABaseURL = true;
+          this.url.path.push("");
+          this.state = "cannot-be-a-base-URL path";
+        }
+      } else if (!this.stateOverride) {
+        this.buffer = "";
+        this.state = "no scheme";
+        this.pointer = -1;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse no scheme"] = function parseNoScheme(c) {
+      if (this.base === null || this.base.cannotBeABaseURL && c !== 35) {
+        return failure;
+      } else if (this.base.cannotBeABaseURL && c === 35) {
+        this.url.scheme = this.base.scheme;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.url.cannotBeABaseURL = true;
+        this.state = "fragment";
+      } else if (this.base.scheme === "file") {
+        this.state = "file";
+        --this.pointer;
+      } else {
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special relative or authority"] = function parseSpecialRelativeOrAuthority(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path or authority"] = function parsePathOrAuthority(c) {
+      if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative"] = function parseRelative(c) {
+      this.url.scheme = this.base.scheme;
+      if (isNaN(c)) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+      } else if (c === 47) {
+        this.state = "relative slash";
+      } else if (c === 63) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (isSpecial(this.url) && c === 92) {
+        this.parseError = true;
+        this.state = "relative slash";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice(0, this.base.path.length - 1);
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative slash"] = function parseRelativeSlash(c) {
+      if (isSpecial(this.url) && (c === 47 || c === 92)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "special authority ignore slashes";
+      } else if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority slashes"] = function parseSpecialAuthoritySlashes(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "special authority ignore slashes";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority ignore slashes"] = function parseSpecialAuthorityIgnoreSlashes(c) {
+      if (c !== 47 && c !== 92) {
+        this.state = "authority";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse authority"] = function parseAuthority(c, cStr) {
+      if (c === 64) {
+        this.parseError = true;
+        if (this.atFlag) {
+          this.buffer = "%40" + this.buffer;
+        }
+        this.atFlag = true;
+        const len = countSymbols(this.buffer);
+        for (let pointer = 0; pointer < len; ++pointer) {
+          const codePoint = this.buffer.codePointAt(pointer);
+          if (codePoint === 58 && !this.passwordTokenSeenFlag) {
+            this.passwordTokenSeenFlag = true;
+            continue;
+          }
+          const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode);
+          if (this.passwordTokenSeenFlag) {
+            this.url.password += encodedCodePoints;
+          } else {
+            this.url.username += encodedCodePoints;
+          }
+        }
+        this.buffer = "";
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        if (this.atFlag && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        this.pointer -= countSymbols(this.buffer) + 1;
+        this.buffer = "";
+        this.state = "host";
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse hostname"] = URLStateMachine.prototype["parse host"] = function parseHostName(c, cStr) {
+      if (this.stateOverride && this.url.scheme === "file") {
+        --this.pointer;
+        this.state = "file host";
+      } else if (c === 58 && !this.arrFlag) {
+        if (this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "port";
+        if (this.stateOverride === "hostname") {
+          return false;
+        }
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        --this.pointer;
+        if (isSpecial(this.url) && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        } else if (this.stateOverride && this.buffer === "" && (includesCredentials(this.url) || this.url.port !== null)) {
+          this.parseError = true;
+          return false;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "path start";
+        if (this.stateOverride) {
+          return false;
+        }
+      } else {
+        if (c === 91) {
+          this.arrFlag = true;
+        } else if (c === 93) {
+          this.arrFlag = false;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse port"] = function parsePort(c, cStr) {
+      if (isASCIIDigit(c)) {
+        this.buffer += cStr;
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92 || this.stateOverride) {
+        if (this.buffer !== "") {
+          const port = parseInt(this.buffer);
+          if (port > Math.pow(2, 16) - 1) {
+            this.parseError = true;
+            return failure;
+          }
+          this.url.port = port === defaultPort(this.url.scheme) ? null : port;
+          this.buffer = "";
+        }
+        if (this.stateOverride) {
+          return false;
+        }
+        this.state = "path start";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    var fileOtherwiseCodePoints = /* @__PURE__ */ new Set([47, 92, 63, 35]);
+    URLStateMachine.prototype["parse file"] = function parseFile(c) {
+      this.url.scheme = "file";
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file slash";
+      } else if (this.base !== null && this.base.scheme === "file") {
+        if (isNaN(c)) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+        } else if (c === 63) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = "";
+          this.state = "query";
+        } else if (c === 35) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+          this.url.fragment = "";
+          this.state = "fragment";
+        } else {
+          if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points
+          !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) || this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points
+          !fileOtherwiseCodePoints.has(this.input[this.pointer + 2])) {
+            this.url.host = this.base.host;
+            this.url.path = this.base.path.slice();
+            shortenPath(this.url);
+          } else {
+            this.parseError = true;
+          }
+          this.state = "path";
+          --this.pointer;
+        }
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file slash"] = function parseFileSlash(c) {
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file host";
+      } else {
+        if (this.base !== null && this.base.scheme === "file") {
+          if (isNormalizedWindowsDriveLetterString(this.base.path[0])) {
+            this.url.path.push(this.base.path[0]);
+          } else {
+            this.url.host = this.base.host;
+          }
+        }
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file host"] = function parseFileHost(c, cStr) {
+      if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) {
+        --this.pointer;
+        if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) {
+          this.parseError = true;
+          this.state = "path";
+        } else if (this.buffer === "") {
+          this.url.host = "";
+          if (this.stateOverride) {
+            return false;
+          }
+          this.state = "path start";
+        } else {
+          let host = parseHost(this.buffer, isSpecial(this.url));
+          if (host === failure) {
+            return failure;
+          }
+          if (host === "localhost") {
+            host = "";
+          }
+          this.url.host = host;
+          if (this.stateOverride) {
+            return false;
+          }
+          this.buffer = "";
+          this.state = "path start";
+        }
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path start"] = function parsePathStart(c) {
+      if (isSpecial(this.url)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "path";
+        if (c !== 47 && c !== 92) {
+          --this.pointer;
+        }
+      } else if (!this.stateOverride && c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (!this.stateOverride && c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (c !== void 0) {
+        this.state = "path";
+        if (c !== 47) {
+          --this.pointer;
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path"] = function parsePath(c) {
+      if (isNaN(c) || c === 47 || isSpecial(this.url) && c === 92 || !this.stateOverride && (c === 63 || c === 35)) {
+        if (isSpecial(this.url) && c === 92) {
+          this.parseError = true;
+        }
+        if (isDoubleDot(this.buffer)) {
+          shortenPath(this.url);
+          if (c !== 47 && !(isSpecial(this.url) && c === 92)) {
+            this.url.path.push("");
+          }
+        } else if (isSingleDot(this.buffer) && c !== 47 && !(isSpecial(this.url) && c === 92)) {
+          this.url.path.push("");
+        } else if (!isSingleDot(this.buffer)) {
+          if (this.url.scheme === "file" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) {
+            if (this.url.host !== "" && this.url.host !== null) {
+              this.parseError = true;
+              this.url.host = "";
+            }
+            this.buffer = this.buffer[0] + ":";
+          }
+          this.url.path.push(this.buffer);
+        }
+        this.buffer = "";
+        if (this.url.scheme === "file" && (c === void 0 || c === 63 || c === 35)) {
+          while (this.url.path.length > 1 && this.url.path[0] === "") {
+            this.parseError = true;
+            this.url.path.shift();
+          }
+        }
+        if (c === 63) {
+          this.url.query = "";
+          this.state = "query";
+        }
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += percentEncodeChar(c, isPathPercentEncode);
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse cannot-be-a-base-URL path"] = function parseCannotBeABaseURLPath(c) {
+      if (c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else {
+        if (!isNaN(c) && c !== 37) {
+          this.parseError = true;
+        }
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        if (!isNaN(c)) {
+          this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode);
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse query"] = function parseQuery(c, cStr) {
+      if (isNaN(c) || !this.stateOverride && c === 35) {
+        if (!isSpecial(this.url) || this.url.scheme === "ws" || this.url.scheme === "wss") {
+          this.encodingOverride = "utf-8";
+        }
+        const buffer = new Buffer(this.buffer);
+        for (let i = 0; i < buffer.length; ++i) {
+          if (buffer[i] < 33 || buffer[i] > 126 || buffer[i] === 34 || buffer[i] === 35 || buffer[i] === 60 || buffer[i] === 62) {
+            this.url.query += percentEncode(buffer[i]);
+          } else {
+            this.url.query += String.fromCodePoint(buffer[i]);
+          }
+        }
+        this.buffer = "";
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse fragment"] = function parseFragment(c) {
+      if (isNaN(c)) {
+      } else if (c === 0) {
+        this.parseError = true;
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode);
+      }
+      return true;
+    };
+    function serializeURL(url2, excludeFragment) {
+      let output = url2.scheme + ":";
+      if (url2.host !== null) {
+        output += "//";
+        if (url2.username !== "" || url2.password !== "") {
+          output += url2.username;
+          if (url2.password !== "") {
+            output += ":" + url2.password;
+          }
+          output += "@";
+        }
+        output += serializeHost(url2.host);
+        if (url2.port !== null) {
+          output += ":" + url2.port;
+        }
+      } else if (url2.host === null && url2.scheme === "file") {
+        output += "//";
+      }
+      if (url2.cannotBeABaseURL) {
+        output += url2.path[0];
+      } else {
+        for (const string of url2.path) {
+          output += "/" + string;
+        }
+      }
+      if (url2.query !== null) {
+        output += "?" + url2.query;
+      }
+      if (!excludeFragment && url2.fragment !== null) {
+        output += "#" + url2.fragment;
+      }
+      return output;
+    }
+    function serializeOrigin(tuple) {
+      let result = tuple.scheme + "://";
+      result += serializeHost(tuple.host);
+      if (tuple.port !== null) {
+        result += ":" + tuple.port;
+      }
+      return result;
+    }
+    module2.exports.serializeURL = serializeURL;
+    module2.exports.serializeURLOrigin = function(url2) {
+      switch (url2.scheme) {
+        case "blob":
+          try {
+            return module2.exports.serializeURLOrigin(module2.exports.parseURL(url2.path[0]));
+          } catch (e) {
+            return "null";
+          }
+        case "ftp":
+        case "gopher":
+        case "http":
+        case "https":
+        case "ws":
+        case "wss":
+          return serializeOrigin({
+            scheme: url2.scheme,
+            host: url2.host,
+            port: url2.port
+          });
+        case "file":
+          return "file://";
+        default:
+          return "null";
+      }
+    };
+    module2.exports.basicURLParse = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride);
+      if (usm.failure) {
+        return "failure";
+      }
+      return usm.url;
+    };
+    module2.exports.setTheUsername = function(url2, username) {
+      url2.username = "";
+      const decoded = punycode.ucs2.decode(username);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.setThePassword = function(url2, password) {
+      url2.password = "";
+      const decoded = punycode.ucs2.decode(password);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.serializeHost = serializeHost;
+    module2.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort;
+    module2.exports.serializeInteger = function(integer) {
+      return String(integer);
+    };
+    module2.exports.parseURL = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      return module2.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride });
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL-impl.js
+var require_URL_impl = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL-impl.js"(exports2) {
+    "use strict";
+    var usm = require_url_state_machine();
+    exports2.implementation = class URLImpl {
+      constructor(constructorArgs) {
+        const url2 = constructorArgs[0];
+        const base = constructorArgs[1];
+        let parsedBase = null;
+        if (base !== void 0) {
+          parsedBase = usm.basicURLParse(base);
+          if (parsedBase === "failure") {
+            throw new TypeError("Invalid base URL");
+          }
+        }
+        const parsedURL = usm.basicURLParse(url2, { baseURL: parsedBase });
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get href() {
+        return usm.serializeURL(this._url);
+      }
+      set href(v) {
+        const parsedURL = usm.basicURLParse(v);
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get origin() {
+        return usm.serializeURLOrigin(this._url);
+      }
+      get protocol() {
+        return this._url.scheme + ":";
+      }
+      set protocol(v) {
+        usm.basicURLParse(v + ":", { url: this._url, stateOverride: "scheme start" });
+      }
+      get username() {
+        return this._url.username;
+      }
+      set username(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setTheUsername(this._url, v);
+      }
+      get password() {
+        return this._url.password;
+      }
+      set password(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setThePassword(this._url, v);
+      }
+      get host() {
+        const url2 = this._url;
+        if (url2.host === null) {
+          return "";
+        }
+        if (url2.port === null) {
+          return usm.serializeHost(url2.host);
+        }
+        return usm.serializeHost(url2.host) + ":" + usm.serializeInteger(url2.port);
+      }
+      set host(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "host" });
+      }
+      get hostname() {
+        if (this._url.host === null) {
+          return "";
+        }
+        return usm.serializeHost(this._url.host);
+      }
+      set hostname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "hostname" });
+      }
+      get port() {
+        if (this._url.port === null) {
+          return "";
+        }
+        return usm.serializeInteger(this._url.port);
+      }
+      set port(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        if (v === "") {
+          this._url.port = null;
+        } else {
+          usm.basicURLParse(v, { url: this._url, stateOverride: "port" });
+        }
+      }
+      get pathname() {
+        if (this._url.cannotBeABaseURL) {
+          return this._url.path[0];
+        }
+        if (this._url.path.length === 0) {
+          return "";
+        }
+        return "/" + this._url.path.join("/");
+      }
+      set pathname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        this._url.path = [];
+        usm.basicURLParse(v, { url: this._url, stateOverride: "path start" });
+      }
+      get search() {
+        if (this._url.query === null || this._url.query === "") {
+          return "";
+        }
+        return "?" + this._url.query;
+      }
+      set search(v) {
+        const url2 = this._url;
+        if (v === "") {
+          url2.query = null;
+          return;
+        }
+        const input = v[0] === "?" ? v.substring(1) : v;
+        url2.query = "";
+        usm.basicURLParse(input, { url: url2, stateOverride: "query" });
+      }
+      get hash() {
+        if (this._url.fragment === null || this._url.fragment === "") {
+          return "";
+        }
+        return "#" + this._url.fragment;
+      }
+      set hash(v) {
+        if (v === "") {
+          this._url.fragment = null;
+          return;
+        }
+        const input = v[0] === "#" ? v.substring(1) : v;
+        this._url.fragment = "";
+        usm.basicURLParse(input, { url: this._url, stateOverride: "fragment" });
+      }
+      toJSON() {
+        return this.href;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL.js
+var require_URL = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL.js"(exports2, module2) {
+    "use strict";
+    var conversions = require_lib7();
+    var utils = require_utils3();
+    var Impl = require_URL_impl();
+    var impl = utils.implSymbol;
+    function URL3(url2) {
+      if (!this || this[impl] || !(this instanceof URL3)) {
+        throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");
+      }
+      if (arguments.length < 1) {
+        throw new TypeError("Failed to construct 'URL': 1 argument required, but only " + arguments.length + " present.");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 2; ++i) {
+        args[i] = arguments[i];
+      }
+      args[0] = conversions["USVString"](args[0]);
+      if (args[1] !== void 0) {
+        args[1] = conversions["USVString"](args[1]);
+      }
+      module2.exports.setup(this, args);
+    }
+    URL3.prototype.toJSON = function toJSON() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 0; ++i) {
+        args[i] = arguments[i];
+      }
+      return this[impl].toJSON.apply(this[impl], args);
+    };
+    Object.defineProperty(URL3.prototype, "href", {
+      get() {
+        return this[impl].href;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].href = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    URL3.prototype.toString = function() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      return this.href;
+    };
+    Object.defineProperty(URL3.prototype, "origin", {
+      get() {
+        return this[impl].origin;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "protocol", {
+      get() {
+        return this[impl].protocol;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].protocol = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "username", {
+      get() {
+        return this[impl].username;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].username = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "password", {
+      get() {
+        return this[impl].password;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].password = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "host", {
+      get() {
+        return this[impl].host;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].host = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hostname", {
+      get() {
+        return this[impl].hostname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hostname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "port", {
+      get() {
+        return this[impl].port;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].port = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "pathname", {
+      get() {
+        return this[impl].pathname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].pathname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "search", {
+      get() {
+        return this[impl].search;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].search = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hash", {
+      get() {
+        return this[impl].hash;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hash = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    module2.exports = {
+      is(obj) {
+        return !!obj && obj[impl] instanceof Impl.implementation;
+      },
+      create(constructorArgs, privateData) {
+        let obj = Object.create(URL3.prototype);
+        this.setup(obj, constructorArgs, privateData);
+        return obj;
+      },
+      setup(obj, constructorArgs, privateData) {
+        if (!privateData) privateData = {};
+        privateData.wrapper = obj;
+        obj[impl] = new Impl.implementation(constructorArgs, privateData);
+        obj[impl][utils.wrapperSymbol] = obj;
+      },
+      interface: URL3,
+      expose: {
+        Window: { URL: URL3 },
+        Worker: { URL: URL3 }
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/public-api.js
+var require_public_api = __commonJS({
+  "../../../node_modules/whatwg-url/lib/public-api.js"(exports2) {
+    "use strict";
+    exports2.URL = require_URL().interface;
+    exports2.serializeURL = require_url_state_machine().serializeURL;
+    exports2.serializeURLOrigin = require_url_state_machine().serializeURLOrigin;
+    exports2.basicURLParse = require_url_state_machine().basicURLParse;
+    exports2.setTheUsername = require_url_state_machine().setTheUsername;
+    exports2.setThePassword = require_url_state_machine().setThePassword;
+    exports2.serializeHost = require_url_state_machine().serializeHost;
+    exports2.serializeInteger = require_url_state_machine().serializeInteger;
+    exports2.parseURL = require_url_state_machine().parseURL;
+  }
+});
+
+// ../../../node_modules/safer-buffer/safer.js
+var require_safer = __commonJS({
+  "../../../node_modules/safer-buffer/safer.js"(exports2, module2) {
+    "use strict";
+    var buffer = require("buffer");
+    var Buffer2 = buffer.Buffer;
+    var safer = {};
+    var key;
+    for (key in buffer) {
+      if (!buffer.hasOwnProperty(key)) continue;
+      if (key === "SlowBuffer" || key === "Buffer") continue;
+      safer[key] = buffer[key];
+    }
+    var Safer = safer.Buffer = {};
+    for (key in Buffer2) {
+      if (!Buffer2.hasOwnProperty(key)) continue;
+      if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue;
+      Safer[key] = Buffer2[key];
+    }
+    safer.Buffer.prototype = Buffer2.prototype;
+    if (!Safer.from || Safer.from === Uint8Array.from) {
+      Safer.from = function(value, encodingOrOffset, length) {
+        if (typeof value === "number") {
+          throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value);
+        }
+        if (value && typeof value.length === "undefined") {
+          throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value);
+        }
+        return Buffer2(value, encodingOrOffset, length);
+      };
+    }
+    if (!Safer.alloc) {
+      Safer.alloc = function(size, fill, encoding) {
+        if (typeof size !== "number") {
+          throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size);
+        }
+        if (size < 0 || size >= 2 * (1 << 30)) {
+          throw new RangeError('The value "' + size + '" is invalid for option "size"');
+        }
+        var buf = Buffer2(size);
+        if (!fill || fill.length === 0) {
+          buf.fill(0);
+        } else if (typeof encoding === "string") {
+          buf.fill(fill, encoding);
+        } else {
+          buf.fill(fill);
+        }
+        return buf;
+      };
+    }
+    if (!safer.kStringMaxLength) {
+      try {
+        safer.kStringMaxLength = process.binding("buffer").kStringMaxLength;
+      } catch (e) {
+      }
+    }
+    if (!safer.constants) {
+      safer.constants = {
+        MAX_LENGTH: safer.kMaxLength
+      };
+      if (safer.kStringMaxLength) {
+        safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength;
+      }
+    }
+    module2.exports = safer;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js
+var require_bom_handling = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js"(exports2) {
+    "use strict";
+    var BOMChar = "\uFEFF";
+    exports2.PrependBOM = PrependBOMWrapper;
+    function PrependBOMWrapper(encoder, options) {
+      this.encoder = encoder;
+      this.addBOM = true;
+    }
+    PrependBOMWrapper.prototype.write = function(str) {
+      if (this.addBOM) {
+        str = BOMChar + str;
+        this.addBOM = false;
+      }
+      return this.encoder.write(str);
+    };
+    PrependBOMWrapper.prototype.end = function() {
+      return this.encoder.end();
+    };
+    exports2.StripBOM = StripBOMWrapper;
+    function StripBOMWrapper(decoder2, options) {
+      this.decoder = decoder2;
+      this.pass = false;
+      this.options = options || {};
+    }
+    StripBOMWrapper.prototype.write = function(buf) {
+      var res = this.decoder.write(buf);
+      if (this.pass || !res)
+        return res;
+      if (res[0] === BOMChar) {
+        res = res.slice(1);
+        if (typeof this.options.stripBOM === "function")
+          this.options.stripBOM();
+      }
+      this.pass = true;
+      return res;
+    };
+    StripBOMWrapper.prototype.end = function() {
+      return this.decoder.end();
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js
+var require_internal = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = {
+      // Encodings
+      utf8: { type: "_internal", bomAware: true },
+      cesu8: { type: "_internal", bomAware: true },
+      unicode11utf8: "utf8",
+      ucs2: { type: "_internal", bomAware: true },
+      utf16le: "ucs2",
+      binary: { type: "_internal" },
+      base64: { type: "_internal" },
+      hex: { type: "_internal" },
+      // Codec.
+      _internal: InternalCodec
+    };
+    function InternalCodec(codecOptions, iconv) {
+      this.enc = codecOptions.encodingName;
+      this.bomAware = codecOptions.bomAware;
+      if (this.enc === "base64")
+        this.encoder = InternalEncoderBase64;
+      else if (this.enc === "cesu8") {
+        this.enc = "utf8";
+        this.encoder = InternalEncoderCesu8;
+        if (Buffer2.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") {
+          this.decoder = InternalDecoderCesu8;
+          this.defaultCharUnicode = iconv.defaultCharUnicode;
+        }
+      }
+    }
+    InternalCodec.prototype.encoder = InternalEncoder;
+    InternalCodec.prototype.decoder = InternalDecoder;
+    var StringDecoder = require("string_decoder").StringDecoder;
+    if (!StringDecoder.prototype.end)
+      StringDecoder.prototype.end = function() {
+      };
+    function InternalDecoder(options, codec) {
+      this.decoder = new StringDecoder(codec.enc);
+    }
+    InternalDecoder.prototype.write = function(buf) {
+      if (!Buffer2.isBuffer(buf)) {
+        buf = Buffer2.from(buf);
+      }
+      return this.decoder.write(buf);
+    };
+    InternalDecoder.prototype.end = function() {
+      return this.decoder.end();
+    };
+    function InternalEncoder(options, codec) {
+      this.enc = codec.enc;
+    }
+    InternalEncoder.prototype.write = function(str) {
+      return Buffer2.from(str, this.enc);
+    };
+    InternalEncoder.prototype.end = function() {
+    };
+    function InternalEncoderBase64(options, codec) {
+      this.prevStr = "";
+    }
+    InternalEncoderBase64.prototype.write = function(str) {
+      str = this.prevStr + str;
+      var completeQuads = str.length - str.length % 4;
+      this.prevStr = str.slice(completeQuads);
+      str = str.slice(0, completeQuads);
+      return Buffer2.from(str, "base64");
+    };
+    InternalEncoderBase64.prototype.end = function() {
+      return Buffer2.from(this.prevStr, "base64");
+    };
+    function InternalEncoderCesu8(options, codec) {
+    }
+    InternalEncoderCesu8.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length * 3), bufIdx = 0;
+      for (var i = 0; i < str.length; i++) {
+        var charCode = str.charCodeAt(i);
+        if (charCode < 128)
+          buf[bufIdx++] = charCode;
+        else if (charCode < 2048) {
+          buf[bufIdx++] = 192 + (charCode >>> 6);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        } else {
+          buf[bufIdx++] = 224 + (charCode >>> 12);
+          buf[bufIdx++] = 128 + (charCode >>> 6 & 63);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        }
+      }
+      return buf.slice(0, bufIdx);
+    };
+    InternalEncoderCesu8.prototype.end = function() {
+    };
+    function InternalDecoderCesu8(options, codec) {
+      this.acc = 0;
+      this.contBytes = 0;
+      this.accBytes = 0;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+    }
+    InternalDecoderCesu8.prototype.write = function(buf) {
+      var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes, res = "";
+      for (var i = 0; i < buf.length; i++) {
+        var curByte = buf[i];
+        if ((curByte & 192) !== 128) {
+          if (contBytes > 0) {
+            res += this.defaultCharUnicode;
+            contBytes = 0;
+          }
+          if (curByte < 128) {
+            res += String.fromCharCode(curByte);
+          } else if (curByte < 224) {
+            acc = curByte & 31;
+            contBytes = 1;
+            accBytes = 1;
+          } else if (curByte < 240) {
+            acc = curByte & 15;
+            contBytes = 2;
+            accBytes = 1;
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        } else {
+          if (contBytes > 0) {
+            acc = acc << 6 | curByte & 63;
+            contBytes--;
+            accBytes++;
+            if (contBytes === 0) {
+              if (accBytes === 2 && acc < 128 && acc > 0)
+                res += this.defaultCharUnicode;
+              else if (accBytes === 3 && acc < 2048)
+                res += this.defaultCharUnicode;
+              else
+                res += String.fromCharCode(acc);
+            }
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        }
+      }
+      this.acc = acc;
+      this.contBytes = contBytes;
+      this.accBytes = accBytes;
+      return res;
+    };
+    InternalDecoderCesu8.prototype.end = function() {
+      var res = 0;
+      if (this.contBytes > 0)
+        res += this.defaultCharUnicode;
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js
+var require_utf32 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._utf32 = Utf32Codec;
+    function Utf32Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+      this.bomAware = true;
+      this.isLE = codecOptions.isLE;
+    }
+    exports2.utf32le = { type: "_utf32", isLE: true };
+    exports2.utf32be = { type: "_utf32", isLE: false };
+    exports2.ucs4le = "utf32le";
+    exports2.ucs4be = "utf32be";
+    Utf32Codec.prototype.encoder = Utf32Encoder;
+    Utf32Codec.prototype.decoder = Utf32Decoder;
+    function Utf32Encoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.highSurrogate = 0;
+    }
+    Utf32Encoder.prototype.write = function(str) {
+      var src = Buffer2.from(str, "ucs2");
+      var dst = Buffer2.alloc(src.length * 2);
+      var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE;
+      var offset = 0;
+      for (var i = 0; i < src.length; i += 2) {
+        var code = src.readUInt16LE(i);
+        var isHighSurrogate = 55296 <= code && code < 56320;
+        var isLowSurrogate = 56320 <= code && code < 57344;
+        if (this.highSurrogate) {
+          if (isHighSurrogate || !isLowSurrogate) {
+            write32.call(dst, this.highSurrogate, offset);
+            offset += 4;
+          } else {
+            var codepoint = (this.highSurrogate - 55296 << 10 | code - 56320) + 65536;
+            write32.call(dst, codepoint, offset);
+            offset += 4;
+            this.highSurrogate = 0;
+            continue;
+          }
+        }
+        if (isHighSurrogate)
+          this.highSurrogate = code;
+        else {
+          write32.call(dst, code, offset);
+          offset += 4;
+          this.highSurrogate = 0;
+        }
+      }
+      if (offset < dst.length)
+        dst = dst.slice(0, offset);
+      return dst;
+    };
+    Utf32Encoder.prototype.end = function() {
+      if (!this.highSurrogate)
+        return;
+      var buf = Buffer2.alloc(4);
+      if (this.isLE)
+        buf.writeUInt32LE(this.highSurrogate, 0);
+      else
+        buf.writeUInt32BE(this.highSurrogate, 0);
+      this.highSurrogate = 0;
+      return buf;
+    };
+    function Utf32Decoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.badChar = codec.iconv.defaultCharUnicode.charCodeAt(0);
+      this.overflow = [];
+    }
+    Utf32Decoder.prototype.write = function(src) {
+      if (src.length === 0)
+        return "";
+      var i = 0;
+      var codepoint = 0;
+      var dst = Buffer2.alloc(src.length + 4);
+      var offset = 0;
+      var isLE = this.isLE;
+      var overflow = this.overflow;
+      var badChar = this.badChar;
+      if (overflow.length > 0) {
+        for (; i < src.length && overflow.length < 4; i++)
+          overflow.push(src[i]);
+        if (overflow.length === 4) {
+          if (isLE) {
+            codepoint = overflow[i] | overflow[i + 1] << 8 | overflow[i + 2] << 16 | overflow[i + 3] << 24;
+          } else {
+            codepoint = overflow[i + 3] | overflow[i + 2] << 8 | overflow[i + 1] << 16 | overflow[i] << 24;
+          }
+          overflow.length = 0;
+          offset = _writeCodepoint(dst, offset, codepoint, badChar);
+        }
+      }
+      for (; i < src.length - 3; i += 4) {
+        if (isLE) {
+          codepoint = src[i] | src[i + 1] << 8 | src[i + 2] << 16 | src[i + 3] << 24;
+        } else {
+          codepoint = src[i + 3] | src[i + 2] << 8 | src[i + 1] << 16 | src[i] << 24;
+        }
+        offset = _writeCodepoint(dst, offset, codepoint, badChar);
+      }
+      for (; i < src.length; i++) {
+        overflow.push(src[i]);
+      }
+      return dst.slice(0, offset).toString("ucs2");
+    };
+    function _writeCodepoint(dst, offset, codepoint, badChar) {
+      if (codepoint < 0 || codepoint > 1114111) {
+        codepoint = badChar;
+      }
+      if (codepoint >= 65536) {
+        codepoint -= 65536;
+        var high = 55296 | codepoint >> 10;
+        dst[offset++] = high & 255;
+        dst[offset++] = high >> 8;
+        var codepoint = 56320 | codepoint & 1023;
+      }
+      dst[offset++] = codepoint & 255;
+      dst[offset++] = codepoint >> 8;
+      return offset;
+    }
+    Utf32Decoder.prototype.end = function() {
+      this.overflow.length = 0;
+    };
+    exports2.utf32 = Utf32AutoCodec;
+    exports2.ucs4 = "utf32";
+    function Utf32AutoCodec(options, iconv) {
+      this.iconv = iconv;
+    }
+    Utf32AutoCodec.prototype.encoder = Utf32AutoEncoder;
+    Utf32AutoCodec.prototype.decoder = Utf32AutoDecoder;
+    function Utf32AutoEncoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder(options.defaultEncoding || "utf-32le", options);
+    }
+    Utf32AutoEncoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf32AutoEncoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf32AutoDecoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf32AutoDecoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 32)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf32AutoDecoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var invalidLE = 0, invalidBE = 0;
+      var bmpCharsLE = 0, bmpCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 4) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254 && b[2] === 0 && b[3] === 0) {
+                  return "utf-32le";
+                }
+                if (b[0] === 0 && b[1] === 0 && b[2] === 254 && b[3] === 255) {
+                  return "utf-32be";
+                }
+              }
+              if (b[0] !== 0 || b[1] > 16) invalidBE++;
+              if (b[3] !== 0 || b[2] > 16) invalidLE++;
+              if (b[0] === 0 && b[1] === 0 && (b[2] !== 0 || b[3] !== 0)) bmpCharsBE++;
+              if ((b[0] !== 0 || b[1] !== 0) && b[2] === 0 && b[3] === 0) bmpCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (bmpCharsBE - invalidBE > bmpCharsLE - invalidLE) return "utf-32be";
+      if (bmpCharsBE - invalidBE < bmpCharsLE - invalidLE) return "utf-32le";
+      return defaultEncoding || "utf-32le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js
+var require_utf16 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf16be = Utf16BECodec;
+    function Utf16BECodec() {
+    }
+    Utf16BECodec.prototype.encoder = Utf16BEEncoder;
+    Utf16BECodec.prototype.decoder = Utf16BEDecoder;
+    Utf16BECodec.prototype.bomAware = true;
+    function Utf16BEEncoder() {
+    }
+    Utf16BEEncoder.prototype.write = function(str) {
+      var buf = Buffer2.from(str, "ucs2");
+      for (var i = 0; i < buf.length; i += 2) {
+        var tmp = buf[i];
+        buf[i] = buf[i + 1];
+        buf[i + 1] = tmp;
+      }
+      return buf;
+    };
+    Utf16BEEncoder.prototype.end = function() {
+    };
+    function Utf16BEDecoder() {
+      this.overflowByte = -1;
+    }
+    Utf16BEDecoder.prototype.write = function(buf) {
+      if (buf.length == 0)
+        return "";
+      var buf2 = Buffer2.alloc(buf.length + 1), i = 0, j = 0;
+      if (this.overflowByte !== -1) {
+        buf2[0] = buf[0];
+        buf2[1] = this.overflowByte;
+        i = 1;
+        j = 2;
+      }
+      for (; i < buf.length - 1; i += 2, j += 2) {
+        buf2[j] = buf[i + 1];
+        buf2[j + 1] = buf[i];
+      }
+      this.overflowByte = i == buf.length - 1 ? buf[buf.length - 1] : -1;
+      return buf2.slice(0, j).toString("ucs2");
+    };
+    Utf16BEDecoder.prototype.end = function() {
+      this.overflowByte = -1;
+    };
+    exports2.utf16 = Utf16Codec;
+    function Utf16Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf16Codec.prototype.encoder = Utf16Encoder;
+    Utf16Codec.prototype.decoder = Utf16Decoder;
+    function Utf16Encoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder("utf-16le", options);
+    }
+    Utf16Encoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf16Encoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf16Decoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf16Decoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 16)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf16Decoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var asciiCharsLE = 0, asciiCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 2) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254) return "utf-16le";
+                if (b[0] === 254 && b[1] === 255) return "utf-16be";
+              }
+              if (b[0] === 0 && b[1] !== 0) asciiCharsBE++;
+              if (b[0] !== 0 && b[1] === 0) asciiCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (asciiCharsBE > asciiCharsLE) return "utf-16be";
+      if (asciiCharsBE < asciiCharsLE) return "utf-16le";
+      return defaultEncoding || "utf-16le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js
+var require_utf7 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf7 = Utf7Codec;
+    exports2.unicode11utf7 = "utf7";
+    function Utf7Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7Codec.prototype.encoder = Utf7Encoder;
+    Utf7Codec.prototype.decoder = Utf7Decoder;
+    Utf7Codec.prototype.bomAware = true;
+    var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;
+    function Utf7Encoder(options, codec) {
+      this.iconv = codec.iconv;
+    }
+    Utf7Encoder.prototype.write = function(str) {
+      return Buffer2.from(str.replace(nonDirectChars, function(chunk) {
+        return "+" + (chunk === "+" ? "" : this.iconv.encode(chunk, "utf16-be").toString("base64").replace(/=+$/, "")) + "-";
+      }.bind(this)));
+    };
+    Utf7Encoder.prototype.end = function() {
+    };
+    function Utf7Decoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64Regex = /[A-Za-z0-9\/+]/;
+    var base64Chars = [];
+    for (i = 0; i < 256; i++)
+      base64Chars[i] = base64Regex.test(String.fromCharCode(i));
+    var i;
+    var plusChar = "+".charCodeAt(0);
+    var minusChar = "-".charCodeAt(0);
+    var andChar = "&".charCodeAt(0);
+    Utf7Decoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == plusChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64Chars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "+";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7Decoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+    exports2.utf7imap = Utf7IMAPCodec;
+    function Utf7IMAPCodec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder;
+    Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder;
+    Utf7IMAPCodec.prototype.bomAware = true;
+    function Utf7IMAPEncoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = Buffer2.alloc(6);
+      this.base64AccumIdx = 0;
+    }
+    Utf7IMAPEncoder.prototype.write = function(str) {
+      var inBase64 = this.inBase64, base64Accum = this.base64Accum, base64AccumIdx = this.base64AccumIdx, buf = Buffer2.alloc(str.length * 5 + 10), bufIdx = 0;
+      for (var i2 = 0; i2 < str.length; i2++) {
+        var uChar = str.charCodeAt(i2);
+        if (32 <= uChar && uChar <= 126) {
+          if (inBase64) {
+            if (base64AccumIdx > 0) {
+              bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+              base64AccumIdx = 0;
+            }
+            buf[bufIdx++] = minusChar;
+            inBase64 = false;
+          }
+          if (!inBase64) {
+            buf[bufIdx++] = uChar;
+            if (uChar === andChar)
+              buf[bufIdx++] = minusChar;
+          }
+        } else {
+          if (!inBase64) {
+            buf[bufIdx++] = andChar;
+            inBase64 = true;
+          }
+          if (inBase64) {
+            base64Accum[base64AccumIdx++] = uChar >> 8;
+            base64Accum[base64AccumIdx++] = uChar & 255;
+            if (base64AccumIdx == base64Accum.length) {
+              bufIdx += buf.write(base64Accum.toString("base64").replace(/\//g, ","), bufIdx);
+              base64AccumIdx = 0;
+            }
+          }
+        }
+      }
+      this.inBase64 = inBase64;
+      this.base64AccumIdx = base64AccumIdx;
+      return buf.slice(0, bufIdx);
+    };
+    Utf7IMAPEncoder.prototype.end = function() {
+      var buf = Buffer2.alloc(10), bufIdx = 0;
+      if (this.inBase64) {
+        if (this.base64AccumIdx > 0) {
+          bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+          this.base64AccumIdx = 0;
+        }
+        buf[bufIdx++] = minusChar;
+        this.inBase64 = false;
+      }
+      return buf.slice(0, bufIdx);
+    };
+    function Utf7IMAPDecoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64IMAPChars = base64Chars.slice();
+    base64IMAPChars[",".charCodeAt(0)] = true;
+    Utf7IMAPDecoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == andChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64IMAPChars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "&";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii").replace(/,/g, "/");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii").replace(/,/g, "/");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7IMAPDecoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js
+var require_sbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._sbcs = SBCSCodec;
+    function SBCSCodec(codecOptions, iconv) {
+      if (!codecOptions)
+        throw new Error("SBCS codec is called without the data.");
+      if (!codecOptions.chars || codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256)
+        throw new Error("Encoding '" + codecOptions.type + "' has incorrect 'chars' (must be of len 128 or 256)");
+      if (codecOptions.chars.length === 128) {
+        var asciiString = "";
+        for (var i = 0; i < 128; i++)
+          asciiString += String.fromCharCode(i);
+        codecOptions.chars = asciiString + codecOptions.chars;
+      }
+      this.decodeBuf = Buffer2.from(codecOptions.chars, "ucs2");
+      var encodeBuf = Buffer2.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0));
+      for (var i = 0; i < codecOptions.chars.length; i++)
+        encodeBuf[codecOptions.chars.charCodeAt(i)] = i;
+      this.encodeBuf = encodeBuf;
+    }
+    SBCSCodec.prototype.encoder = SBCSEncoder;
+    SBCSCodec.prototype.decoder = SBCSDecoder;
+    function SBCSEncoder(options, codec) {
+      this.encodeBuf = codec.encodeBuf;
+    }
+    SBCSEncoder.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length);
+      for (var i = 0; i < str.length; i++)
+        buf[i] = this.encodeBuf[str.charCodeAt(i)];
+      return buf;
+    };
+    SBCSEncoder.prototype.end = function() {
+    };
+    function SBCSDecoder(options, codec) {
+      this.decodeBuf = codec.decodeBuf;
+    }
+    SBCSDecoder.prototype.write = function(buf) {
+      var decodeBuf = this.decodeBuf;
+      var newBuf = Buffer2.alloc(buf.length * 2);
+      var idx1 = 0, idx2 = 0;
+      for (var i = 0; i < buf.length; i++) {
+        idx1 = buf[i] * 2;
+        idx2 = i * 2;
+        newBuf[idx2] = decodeBuf[idx1];
+        newBuf[idx2 + 1] = decodeBuf[idx1 + 1];
+      }
+      return newBuf.toString("ucs2");
+    };
+    SBCSDecoder.prototype.end = function() {
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js
+var require_sbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // Not supported by iconv, not sure why.
+      "10029": "maccenteuro",
+      "maccenteuro": {
+        "type": "_sbcs",
+        "chars": "\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"
+      },
+      "808": "cp808",
+      "ibm808": "cp808",
+      "cp808": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"
+      },
+      "mik": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "cp720": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      // Aliases of generated encodings.
+      "ascii8bit": "ascii",
+      "usascii": "ascii",
+      "ansix34": "ascii",
+      "ansix341968": "ascii",
+      "ansix341986": "ascii",
+      "csascii": "ascii",
+      "cp367": "ascii",
+      "ibm367": "ascii",
+      "isoir6": "ascii",
+      "iso646us": "ascii",
+      "iso646irv": "ascii",
+      "us": "ascii",
+      "latin1": "iso88591",
+      "latin2": "iso88592",
+      "latin3": "iso88593",
+      "latin4": "iso88594",
+      "latin5": "iso88599",
+      "latin6": "iso885910",
+      "latin7": "iso885913",
+      "latin8": "iso885914",
+      "latin9": "iso885915",
+      "latin10": "iso885916",
+      "csisolatin1": "iso88591",
+      "csisolatin2": "iso88592",
+      "csisolatin3": "iso88593",
+      "csisolatin4": "iso88594",
+      "csisolatincyrillic": "iso88595",
+      "csisolatinarabic": "iso88596",
+      "csisolatingreek": "iso88597",
+      "csisolatinhebrew": "iso88598",
+      "csisolatin5": "iso88599",
+      "csisolatin6": "iso885910",
+      "l1": "iso88591",
+      "l2": "iso88592",
+      "l3": "iso88593",
+      "l4": "iso88594",
+      "l5": "iso88599",
+      "l6": "iso885910",
+      "l7": "iso885913",
+      "l8": "iso885914",
+      "l9": "iso885915",
+      "l10": "iso885916",
+      "isoir14": "iso646jp",
+      "isoir57": "iso646cn",
+      "isoir100": "iso88591",
+      "isoir101": "iso88592",
+      "isoir109": "iso88593",
+      "isoir110": "iso88594",
+      "isoir144": "iso88595",
+      "isoir127": "iso88596",
+      "isoir126": "iso88597",
+      "isoir138": "iso88598",
+      "isoir148": "iso88599",
+      "isoir157": "iso885910",
+      "isoir166": "tis620",
+      "isoir179": "iso885913",
+      "isoir199": "iso885914",
+      "isoir203": "iso885915",
+      "isoir226": "iso885916",
+      "cp819": "iso88591",
+      "ibm819": "iso88591",
+      "cyrillic": "iso88595",
+      "arabic": "iso88596",
+      "arabic8": "iso88596",
+      "ecma114": "iso88596",
+      "asmo708": "iso88596",
+      "greek": "iso88597",
+      "greek8": "iso88597",
+      "ecma118": "iso88597",
+      "elot928": "iso88597",
+      "hebrew": "iso88598",
+      "hebrew8": "iso88598",
+      "turkish": "iso88599",
+      "turkish8": "iso88599",
+      "thai": "iso885911",
+      "thai8": "iso885911",
+      "celtic": "iso885914",
+      "celtic8": "iso885914",
+      "isoceltic": "iso885914",
+      "tis6200": "tis620",
+      "tis62025291": "tis620",
+      "tis62025330": "tis620",
+      "10000": "macroman",
+      "10006": "macgreek",
+      "10007": "maccyrillic",
+      "10079": "maciceland",
+      "10081": "macturkish",
+      "cspc8codepage437": "cp437",
+      "cspc775baltic": "cp775",
+      "cspc850multilingual": "cp850",
+      "cspcp852": "cp852",
+      "cspc862latinhebrew": "cp862",
+      "cpgr": "cp869",
+      "msee": "cp1250",
+      "mscyrl": "cp1251",
+      "msansi": "cp1252",
+      "msgreek": "cp1253",
+      "msturk": "cp1254",
+      "mshebr": "cp1255",
+      "msarab": "cp1256",
+      "winbaltrim": "cp1257",
+      "cp20866": "koi8r",
+      "20866": "koi8r",
+      "ibm878": "koi8r",
+      "cskoi8r": "koi8r",
+      "cp21866": "koi8u",
+      "21866": "koi8u",
+      "ibm1168": "koi8u",
+      "strk10482002": "rk1048",
+      "tcvn5712": "tcvn",
+      "tcvn57121": "tcvn",
+      "gb198880": "iso646cn",
+      "cn": "iso646cn",
+      "csiso14jisc6220ro": "iso646jp",
+      "jisc62201969ro": "iso646jp",
+      "jp": "iso646jp",
+      "cshproman8": "hproman8",
+      "r8": "hproman8",
+      "roman8": "hproman8",
+      "xroman8": "hproman8",
+      "ibm1051": "hproman8",
+      "mac": "macintosh",
+      "csmacintosh": "macintosh"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js
+var require_sbcs_data_generated = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      "437": "cp437",
+      "737": "cp737",
+      "775": "cp775",
+      "850": "cp850",
+      "852": "cp852",
+      "855": "cp855",
+      "856": "cp856",
+      "857": "cp857",
+      "858": "cp858",
+      "860": "cp860",
+      "861": "cp861",
+      "862": "cp862",
+      "863": "cp863",
+      "864": "cp864",
+      "865": "cp865",
+      "866": "cp866",
+      "869": "cp869",
+      "874": "windows874",
+      "922": "cp922",
+      "1046": "cp1046",
+      "1124": "cp1124",
+      "1125": "cp1125",
+      "1129": "cp1129",
+      "1133": "cp1133",
+      "1161": "cp1161",
+      "1162": "cp1162",
+      "1163": "cp1163",
+      "1250": "windows1250",
+      "1251": "windows1251",
+      "1252": "windows1252",
+      "1253": "windows1253",
+      "1254": "windows1254",
+      "1255": "windows1255",
+      "1256": "windows1256",
+      "1257": "windows1257",
+      "1258": "windows1258",
+      "28591": "iso88591",
+      "28592": "iso88592",
+      "28593": "iso88593",
+      "28594": "iso88594",
+      "28595": "iso88595",
+      "28596": "iso88596",
+      "28597": "iso88597",
+      "28598": "iso88598",
+      "28599": "iso88599",
+      "28600": "iso885910",
+      "28601": "iso885911",
+      "28603": "iso885913",
+      "28604": "iso885914",
+      "28605": "iso885915",
+      "28606": "iso885916",
+      "windows874": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "win874": "windows874",
+      "cp874": "windows874",
+      "windows1250": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "win1250": "windows1250",
+      "cp1250": "windows1250",
+      "windows1251": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "win1251": "windows1251",
+      "cp1251": "windows1251",
+      "windows1252": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "win1252": "windows1252",
+      "cp1252": "windows1252",
+      "windows1253": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "win1253": "windows1253",
+      "cp1253": "windows1253",
+      "windows1254": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "win1254": "windows1254",
+      "cp1254": "windows1254",
+      "windows1255": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "win1255": "windows1255",
+      "cp1255": "windows1255",
+      "windows1256": {
+        "type": "_sbcs",
+        "chars": "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"
+      },
+      "win1256": "windows1256",
+      "cp1256": "windows1256",
+      "windows1257": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"
+      },
+      "win1257": "windows1257",
+      "cp1257": "windows1257",
+      "windows1258": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "win1258": "windows1258",
+      "cp1258": "windows1258",
+      "iso88591": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28591": "iso88591",
+      "iso88592": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "cp28592": "iso88592",
+      "iso88593": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"
+      },
+      "cp28593": "iso88593",
+      "iso88594": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"
+      },
+      "cp28594": "iso88594",
+      "iso88595": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "cp28595": "iso88595",
+      "iso88596": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28596": "iso88596",
+      "iso88597": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "cp28597": "iso88597",
+      "iso88598": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "cp28598": "iso88598",
+      "iso88599": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "cp28599": "iso88599",
+      "iso885910": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"
+      },
+      "cp28600": "iso885910",
+      "iso885911": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28601": "iso885911",
+      "iso885913": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"
+      },
+      "cp28603": "iso885913",
+      "iso885914": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"
+      },
+      "cp28604": "iso885914",
+      "iso885915": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28605": "iso885915",
+      "iso885916": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"
+      },
+      "cp28606": "iso885916",
+      "cp437": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm437": "cp437",
+      "csibm437": "cp437",
+      "cp737": {
+        "type": "_sbcs",
+        "chars": "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm737": "cp737",
+      "csibm737": "cp737",
+      "cp775": {
+        "type": "_sbcs",
+        "chars": "\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm775": "cp775",
+      "csibm775": "cp775",
+      "cp850": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm850": "cp850",
+      "csibm850": "cp850",
+      "cp852": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"
+      },
+      "ibm852": "cp852",
+      "csibm852": "cp852",
+      "cp855": {
+        "type": "_sbcs",
+        "chars": "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"
+      },
+      "ibm855": "cp855",
+      "csibm855": "cp855",
+      "cp856": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm856": "cp856",
+      "csibm856": "cp856",
+      "cp857": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm857": "cp857",
+      "csibm857": "cp857",
+      "cp858": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm858": "cp858",
+      "csibm858": "cp858",
+      "cp860": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm860": "cp860",
+      "csibm860": "cp860",
+      "cp861": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm861": "cp861",
+      "csibm861": "cp861",
+      "cp862": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm862": "cp862",
+      "csibm862": "cp862",
+      "cp863": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm863": "cp863",
+      "csibm863": "cp863",
+      "cp864": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD"
+      },
+      "ibm864": "cp864",
+      "csibm864": "cp864",
+      "cp865": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm865": "cp865",
+      "csibm865": "cp865",
+      "cp866": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm866": "cp866",
+      "csibm866": "cp866",
+      "cp869": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"
+      },
+      "ibm869": "cp869",
+      "csibm869": "cp869",
+      "cp922": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"
+      },
+      "ibm922": "cp922",
+      "csibm922": "cp922",
+      "cp1046": {
+        "type": "_sbcs",
+        "chars": "\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"
+      },
+      "ibm1046": "cp1046",
+      "csibm1046": "cp1046",
+      "cp1124": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "ibm1124": "cp1124",
+      "csibm1124": "cp1124",
+      "cp1125": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm1125": "cp1125",
+      "csibm1125": "cp1125",
+      "cp1129": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1129": "cp1129",
+      "csibm1129": "cp1129",
+      "cp1133": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"
+      },
+      "ibm1133": "cp1133",
+      "csibm1133": "cp1133",
+      "cp1161": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"
+      },
+      "ibm1161": "cp1161",
+      "csibm1161": "cp1161",
+      "cp1162": {
+        "type": "_sbcs",
+        "chars": "\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "ibm1162": "cp1162",
+      "csibm1162": "cp1162",
+      "cp1163": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1163": "cp1163",
+      "csibm1163": "cp1163",
+      "maccroatian": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"
+      },
+      "maccyrillic": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "macgreek": {
+        "type": "_sbcs",
+        "chars": "\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"
+      },
+      "maciceland": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macroman": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macromania": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macthai": {
+        "type": "_sbcs",
+        "chars": "\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "macturkish": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macukraine": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "koi8r": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8u": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8ru": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8t": {
+        "type": "_sbcs",
+        "chars": "\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "armscii8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"
+      },
+      "rk1048": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "tcvn": {
+        "type": "_sbcs",
+        "chars": "\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b	\n\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0"
+      },
+      "georgianacademy": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "georgianps": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "pt154": {
+        "type": "_sbcs",
+        "chars": "\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "viscii": {
+        "type": "_sbcs",
+        "chars": "\0\u1EB2\u1EB4\u1EAA\x07\b	\n\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE"
+      },
+      "iso646cn": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "iso646jp": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "hproman8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"
+      },
+      "macintosh": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "ascii": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "tis620": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js
+var require_dbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._dbcs = DBCSCodec;
+    var UNASSIGNED = -1;
+    var GB18030_CODE = -2;
+    var SEQ_START = -10;
+    var NODE_START = -1e3;
+    var UNASSIGNED_NODE = new Array(256);
+    var DEF_CHAR = -1;
+    for (i = 0; i < 256; i++)
+      UNASSIGNED_NODE[i] = UNASSIGNED;
+    var i;
+    function DBCSCodec(codecOptions, iconv) {
+      this.encodingName = codecOptions.encodingName;
+      if (!codecOptions)
+        throw new Error("DBCS codec is called without the data.");
+      if (!codecOptions.table)
+        throw new Error("Encoding '" + this.encodingName + "' has no data.");
+      var mappingTable = codecOptions.table();
+      this.decodeTables = [];
+      this.decodeTables[0] = UNASSIGNED_NODE.slice(0);
+      this.decodeTableSeq = [];
+      for (var i2 = 0; i2 < mappingTable.length; i2++)
+        this._addDecodeChunk(mappingTable[i2]);
+      if (typeof codecOptions.gb18030 === "function") {
+        this.gb18030 = codecOptions.gb18030();
+        var commonThirdByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var commonFourthByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var firstByteNode = this.decodeTables[0];
+        for (var i2 = 129; i2 <= 254; i2++) {
+          var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i2]];
+          for (var j = 48; j <= 57; j++) {
+            if (secondByteNode[j] === UNASSIGNED) {
+              secondByteNode[j] = NODE_START - commonThirdByteNodeIdx;
+            } else if (secondByteNode[j] > NODE_START) {
+              throw new Error("gb18030 decode tables conflict at byte 2");
+            }
+            var thirdByteNode = this.decodeTables[NODE_START - secondByteNode[j]];
+            for (var k = 129; k <= 254; k++) {
+              if (thirdByteNode[k] === UNASSIGNED) {
+                thirdByteNode[k] = NODE_START - commonFourthByteNodeIdx;
+              } else if (thirdByteNode[k] === NODE_START - commonFourthByteNodeIdx) {
+                continue;
+              } else if (thirdByteNode[k] > NODE_START) {
+                throw new Error("gb18030 decode tables conflict at byte 3");
+              }
+              var fourthByteNode = this.decodeTables[NODE_START - thirdByteNode[k]];
+              for (var l = 48; l <= 57; l++) {
+                if (fourthByteNode[l] === UNASSIGNED)
+                  fourthByteNode[l] = GB18030_CODE;
+              }
+            }
+          }
+        }
+      }
+      this.defaultCharUnicode = iconv.defaultCharUnicode;
+      this.encodeTable = [];
+      this.encodeTableSeq = [];
+      var skipEncodeChars = {};
+      if (codecOptions.encodeSkipVals)
+        for (var i2 = 0; i2 < codecOptions.encodeSkipVals.length; i2++) {
+          var val2 = codecOptions.encodeSkipVals[i2];
+          if (typeof val2 === "number")
+            skipEncodeChars[val2] = true;
+          else
+            for (var j = val2.from; j <= val2.to; j++)
+              skipEncodeChars[j] = true;
+        }
+      this._fillEncodeTable(0, 0, skipEncodeChars);
+      if (codecOptions.encodeAdd) {
+        for (var uChar in codecOptions.encodeAdd)
+          if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar))
+            this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]);
+      }
+      this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]["?"];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0);
+    }
+    DBCSCodec.prototype.encoder = DBCSEncoder;
+    DBCSCodec.prototype.decoder = DBCSDecoder;
+    DBCSCodec.prototype._getDecodeTrieNode = function(addr) {
+      var bytes = [];
+      for (; addr > 0; addr >>>= 8)
+        bytes.push(addr & 255);
+      if (bytes.length == 0)
+        bytes.push(0);
+      var node = this.decodeTables[0];
+      for (var i2 = bytes.length - 1; i2 > 0; i2--) {
+        var val2 = node[bytes[i2]];
+        if (val2 == UNASSIGNED) {
+          node[bytes[i2]] = NODE_START - this.decodeTables.length;
+          this.decodeTables.push(node = UNASSIGNED_NODE.slice(0));
+        } else if (val2 <= NODE_START) {
+          node = this.decodeTables[NODE_START - val2];
+        } else
+          throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr.toString(16));
+      }
+      return node;
+    };
+    DBCSCodec.prototype._addDecodeChunk = function(chunk) {
+      var curAddr = parseInt(chunk[0], 16);
+      var writeTable = this._getDecodeTrieNode(curAddr);
+      curAddr = curAddr & 255;
+      for (var k = 1; k < chunk.length; k++) {
+        var part = chunk[k];
+        if (typeof part === "string") {
+          for (var l = 0; l < part.length; ) {
+            var code = part.charCodeAt(l++);
+            if (55296 <= code && code < 56320) {
+              var codeTrail = part.charCodeAt(l++);
+              if (56320 <= codeTrail && codeTrail < 57344)
+                writeTable[curAddr++] = 65536 + (code - 55296) * 1024 + (codeTrail - 56320);
+              else
+                throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]);
+            } else if (4080 < code && code <= 4095) {
+              var len = 4095 - code + 2;
+              var seq = [];
+              for (var m = 0; m < len; m++)
+                seq.push(part.charCodeAt(l++));
+              writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length;
+              this.decodeTableSeq.push(seq);
+            } else
+              writeTable[curAddr++] = code;
+          }
+        } else if (typeof part === "number") {
+          var charCode = writeTable[curAddr - 1] + 1;
+          for (var l = 0; l < part; l++)
+            writeTable[curAddr++] = charCode++;
+        } else
+          throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]);
+      }
+      if (curAddr > 255)
+        throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr);
+    };
+    DBCSCodec.prototype._getEncodeBucket = function(uCode) {
+      var high = uCode >> 8;
+      if (this.encodeTable[high] === void 0)
+        this.encodeTable[high] = UNASSIGNED_NODE.slice(0);
+      return this.encodeTable[high];
+    };
+    DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) {
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      if (bucket[low] <= SEQ_START)
+        this.encodeTableSeq[SEQ_START - bucket[low]][DEF_CHAR] = dbcsCode;
+      else if (bucket[low] == UNASSIGNED)
+        bucket[low] = dbcsCode;
+    };
+    DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) {
+      var uCode = seq[0];
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      var node;
+      if (bucket[low] <= SEQ_START) {
+        node = this.encodeTableSeq[SEQ_START - bucket[low]];
+      } else {
+        node = {};
+        if (bucket[low] !== UNASSIGNED) node[DEF_CHAR] = bucket[low];
+        bucket[low] = SEQ_START - this.encodeTableSeq.length;
+        this.encodeTableSeq.push(node);
+      }
+      for (var j = 1; j < seq.length - 1; j++) {
+        var oldVal = node[uCode];
+        if (typeof oldVal === "object")
+          node = oldVal;
+        else {
+          node = node[uCode] = {};
+          if (oldVal !== void 0)
+            node[DEF_CHAR] = oldVal;
+        }
+      }
+      uCode = seq[seq.length - 1];
+      node[uCode] = dbcsCode;
+    };
+    DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) {
+      var node = this.decodeTables[nodeIdx];
+      var hasValues = false;
+      var subNodeEmpty = {};
+      for (var i2 = 0; i2 < 256; i2++) {
+        var uCode = node[i2];
+        var mbCode = prefix + i2;
+        if (skipEncodeChars[mbCode])
+          continue;
+        if (uCode >= 0) {
+          this._setEncodeChar(uCode, mbCode);
+          hasValues = true;
+        } else if (uCode <= NODE_START) {
+          var subNodeIdx = NODE_START - uCode;
+          if (!subNodeEmpty[subNodeIdx]) {
+            var newPrefix = mbCode << 8 >>> 0;
+            if (this._fillEncodeTable(subNodeIdx, newPrefix, skipEncodeChars))
+              hasValues = true;
+            else
+              subNodeEmpty[subNodeIdx] = true;
+          }
+        } else if (uCode <= SEQ_START) {
+          this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode);
+          hasValues = true;
+        }
+      }
+      return hasValues;
+    };
+    function DBCSEncoder(options, codec) {
+      this.leadSurrogate = -1;
+      this.seqObj = void 0;
+      this.encodeTable = codec.encodeTable;
+      this.encodeTableSeq = codec.encodeTableSeq;
+      this.defaultCharSingleByte = codec.defCharSB;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSEncoder.prototype.write = function(str) {
+      var newBuf = Buffer2.alloc(str.length * (this.gb18030 ? 4 : 3)), leadSurrogate = this.leadSurrogate, seqObj = this.seqObj, nextChar = -1, i2 = 0, j = 0;
+      while (true) {
+        if (nextChar === -1) {
+          if (i2 == str.length) break;
+          var uCode = str.charCodeAt(i2++);
+        } else {
+          var uCode = nextChar;
+          nextChar = -1;
+        }
+        if (55296 <= uCode && uCode < 57344) {
+          if (uCode < 56320) {
+            if (leadSurrogate === -1) {
+              leadSurrogate = uCode;
+              continue;
+            } else {
+              leadSurrogate = uCode;
+              uCode = UNASSIGNED;
+            }
+          } else {
+            if (leadSurrogate !== -1) {
+              uCode = 65536 + (leadSurrogate - 55296) * 1024 + (uCode - 56320);
+              leadSurrogate = -1;
+            } else {
+              uCode = UNASSIGNED;
+            }
+          }
+        } else if (leadSurrogate !== -1) {
+          nextChar = uCode;
+          uCode = UNASSIGNED;
+          leadSurrogate = -1;
+        }
+        var dbcsCode = UNASSIGNED;
+        if (seqObj !== void 0 && uCode != UNASSIGNED) {
+          var resCode = seqObj[uCode];
+          if (typeof resCode === "object") {
+            seqObj = resCode;
+            continue;
+          } else if (typeof resCode == "number") {
+            dbcsCode = resCode;
+          } else if (resCode == void 0) {
+            resCode = seqObj[DEF_CHAR];
+            if (resCode !== void 0) {
+              dbcsCode = resCode;
+              nextChar = uCode;
+            } else {
+            }
+          }
+          seqObj = void 0;
+        } else if (uCode >= 0) {
+          var subtable = this.encodeTable[uCode >> 8];
+          if (subtable !== void 0)
+            dbcsCode = subtable[uCode & 255];
+          if (dbcsCode <= SEQ_START) {
+            seqObj = this.encodeTableSeq[SEQ_START - dbcsCode];
+            continue;
+          }
+          if (dbcsCode == UNASSIGNED && this.gb18030) {
+            var idx = findIdx(this.gb18030.uChars, uCode);
+            if (idx != -1) {
+              var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]);
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 12600);
+              dbcsCode = dbcsCode % 12600;
+              newBuf[j++] = 48 + Math.floor(dbcsCode / 1260);
+              dbcsCode = dbcsCode % 1260;
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 10);
+              dbcsCode = dbcsCode % 10;
+              newBuf[j++] = 48 + dbcsCode;
+              continue;
+            }
+          }
+        }
+        if (dbcsCode === UNASSIGNED)
+          dbcsCode = this.defaultCharSingleByte;
+        if (dbcsCode < 256) {
+          newBuf[j++] = dbcsCode;
+        } else if (dbcsCode < 65536) {
+          newBuf[j++] = dbcsCode >> 8;
+          newBuf[j++] = dbcsCode & 255;
+        } else if (dbcsCode < 16777216) {
+          newBuf[j++] = dbcsCode >> 16;
+          newBuf[j++] = dbcsCode >> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        } else {
+          newBuf[j++] = dbcsCode >>> 24;
+          newBuf[j++] = dbcsCode >>> 16 & 255;
+          newBuf[j++] = dbcsCode >>> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        }
+      }
+      this.seqObj = seqObj;
+      this.leadSurrogate = leadSurrogate;
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.end = function() {
+      if (this.leadSurrogate === -1 && this.seqObj === void 0)
+        return;
+      var newBuf = Buffer2.alloc(10), j = 0;
+      if (this.seqObj) {
+        var dbcsCode = this.seqObj[DEF_CHAR];
+        if (dbcsCode !== void 0) {
+          if (dbcsCode < 256) {
+            newBuf[j++] = dbcsCode;
+          } else {
+            newBuf[j++] = dbcsCode >> 8;
+            newBuf[j++] = dbcsCode & 255;
+          }
+        } else {
+        }
+        this.seqObj = void 0;
+      }
+      if (this.leadSurrogate !== -1) {
+        newBuf[j++] = this.defaultCharSingleByte;
+        this.leadSurrogate = -1;
+      }
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.findIdx = findIdx;
+    function DBCSDecoder(options, codec) {
+      this.nodeIdx = 0;
+      this.prevBytes = [];
+      this.decodeTables = codec.decodeTables;
+      this.decodeTableSeq = codec.decodeTableSeq;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSDecoder.prototype.write = function(buf) {
+      var newBuf = Buffer2.alloc(buf.length * 2), nodeIdx = this.nodeIdx, prevBytes = this.prevBytes, prevOffset = this.prevBytes.length, seqStart = -this.prevBytes.length, uCode;
+      for (var i2 = 0, j = 0; i2 < buf.length; i2++) {
+        var curByte = i2 >= 0 ? buf[i2] : prevBytes[i2 + prevOffset];
+        var uCode = this.decodeTables[nodeIdx][curByte];
+        if (uCode >= 0) {
+        } else if (uCode === UNASSIGNED) {
+          uCode = this.defaultCharUnicode.charCodeAt(0);
+          i2 = seqStart;
+        } else if (uCode === GB18030_CODE) {
+          if (i2 >= 3) {
+            var ptr = (buf[i2 - 3] - 129) * 12600 + (buf[i2 - 2] - 48) * 1260 + (buf[i2 - 1] - 129) * 10 + (curByte - 48);
+          } else {
+            var ptr = (prevBytes[i2 - 3 + prevOffset] - 129) * 12600 + ((i2 - 2 >= 0 ? buf[i2 - 2] : prevBytes[i2 - 2 + prevOffset]) - 48) * 1260 + ((i2 - 1 >= 0 ? buf[i2 - 1] : prevBytes[i2 - 1 + prevOffset]) - 129) * 10 + (curByte - 48);
+          }
+          var idx = findIdx(this.gb18030.gbChars, ptr);
+          uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx];
+        } else if (uCode <= NODE_START) {
+          nodeIdx = NODE_START - uCode;
+          continue;
+        } else if (uCode <= SEQ_START) {
+          var seq = this.decodeTableSeq[SEQ_START - uCode];
+          for (var k = 0; k < seq.length - 1; k++) {
+            uCode = seq[k];
+            newBuf[j++] = uCode & 255;
+            newBuf[j++] = uCode >> 8;
+          }
+          uCode = seq[seq.length - 1];
+        } else
+          throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte);
+        if (uCode >= 65536) {
+          uCode -= 65536;
+          var uCodeLead = 55296 | uCode >> 10;
+          newBuf[j++] = uCodeLead & 255;
+          newBuf[j++] = uCodeLead >> 8;
+          uCode = 56320 | uCode & 1023;
+        }
+        newBuf[j++] = uCode & 255;
+        newBuf[j++] = uCode >> 8;
+        nodeIdx = 0;
+        seqStart = i2 + 1;
+      }
+      this.nodeIdx = nodeIdx;
+      this.prevBytes = seqStart >= 0 ? Array.prototype.slice.call(buf, seqStart) : prevBytes.slice(seqStart + prevOffset).concat(Array.prototype.slice.call(buf));
+      return newBuf.slice(0, j).toString("ucs2");
+    };
+    DBCSDecoder.prototype.end = function() {
+      var ret = "";
+      while (this.prevBytes.length > 0) {
+        ret += this.defaultCharUnicode;
+        var bytesArr = this.prevBytes.slice(1);
+        this.prevBytes = [];
+        this.nodeIdx = 0;
+        if (bytesArr.length > 0)
+          ret += this.write(bytesArr);
+      }
+      this.prevBytes = [];
+      this.nodeIdx = 0;
+      return ret;
+    };
+    function findIdx(table, val2) {
+      if (table[0] > val2)
+        return -1;
+      var l = 0, r = table.length;
+      while (l < r - 1) {
+        var mid = l + (r - l + 1 >> 1);
+        if (table[mid] <= val2)
+          l = mid;
+        else
+          r = mid;
+      }
+      return l;
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json
+var require_shiftjis = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 128],
+      ["a1", "\uFF61", 62],
+      ["8140", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7"],
+      ["8180", "\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["81b8", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["81c8", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["81da", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["81f0", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["81fc", "\u25EF"],
+      ["824f", "\uFF10", 9],
+      ["8260", "\uFF21", 25],
+      ["8281", "\uFF41", 25],
+      ["829f", "\u3041", 82],
+      ["8340", "\u30A1", 62],
+      ["8380", "\u30E0", 22],
+      ["839f", "\u0391", 16, "\u03A3", 6],
+      ["83bf", "\u03B1", 16, "\u03C3", 6],
+      ["8440", "\u0410", 5, "\u0401\u0416", 25],
+      ["8470", "\u0430", 5, "\u0451\u0436", 7],
+      ["8480", "\u043E", 17],
+      ["849f", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["8740", "\u2460", 19, "\u2160", 9],
+      ["875f", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["877e", "\u337B"],
+      ["8780", "\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["889f", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["8940", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],
+      ["8980", "\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["8a40", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],
+      ["8a80", "\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["8b40", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],
+      ["8b80", "\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["8c40", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],
+      ["8c80", "\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["8d40", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],
+      ["8d80", "\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["8e40", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],
+      ["8e80", "\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["8f40", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],
+      ["8f80", "\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["9040", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],
+      ["9080", "\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["9140", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],
+      ["9180", "\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["9240", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],
+      ["9280", "\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["9340", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],
+      ["9380", "\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["9440", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],
+      ["9480", "\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["9540", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],
+      ["9580", "\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["9640", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],
+      ["9680", "\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["9740", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],
+      ["9780", "\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["9840", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["989f", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["9940", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],
+      ["9980", "\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["9a40", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],
+      ["9a80", "\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["9b40", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],
+      ["9b80", "\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["9c40", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],
+      ["9c80", "\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["9d40", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],
+      ["9d80", "\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["9e40", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],
+      ["9e80", "\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["9f40", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],
+      ["9f80", "\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["e040", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],
+      ["e080", "\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e140", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],
+      ["e180", "\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e240", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],
+      ["e280", "\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e340", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],
+      ["e380", "\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e440", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],
+      ["e480", "\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e540", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],
+      ["e580", "\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["e640", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],
+      ["e680", "\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["e740", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],
+      ["e780", "\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["e840", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],
+      ["e880", "\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["e940", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],
+      ["e980", "\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["ea40", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],
+      ["ea80", "\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["ed40", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],
+      ["ed80", "\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["ee40", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],
+      ["ee80", "\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["eeef", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["f040", "\uE000", 62],
+      ["f080", "\uE03F", 124],
+      ["f140", "\uE0BC", 62],
+      ["f180", "\uE0FB", 124],
+      ["f240", "\uE178", 62],
+      ["f280", "\uE1B7", 124],
+      ["f340", "\uE234", 62],
+      ["f380", "\uE273", 124],
+      ["f440", "\uE2F0", 62],
+      ["f480", "\uE32F", 124],
+      ["f540", "\uE3AC", 62],
+      ["f580", "\uE3EB", 124],
+      ["f640", "\uE468", 62],
+      ["f680", "\uE4A7", 124],
+      ["f740", "\uE524", 62],
+      ["f780", "\uE563", 124],
+      ["f840", "\uE5E0", 62],
+      ["f880", "\uE61F", 124],
+      ["f940", "\uE69C"],
+      ["fa40", "\u2170", 9, "\u2160", 9, "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],
+      ["fa80", "\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],
+      ["fb40", "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],
+      ["fb80", "\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],
+      ["fc40", "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json
+var require_eucjp = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8ea1", "\uFF61", 62],
+      ["a1a1", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],
+      ["a2a1", "\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["a2ba", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["a2ca", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["a2dc", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["a2f2", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["a2fe", "\u25EF"],
+      ["a3b0", "\uFF10", 9],
+      ["a3c1", "\uFF21", 25],
+      ["a3e1", "\uFF41", 25],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a8a1", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["ada1", "\u2460", 19, "\u2160", 9],
+      ["adc0", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["addf", "\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["b0a1", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["b1a1", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],
+      ["b2a1", "\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["b3a1", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],
+      ["b4a1", "\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["b5a1", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],
+      ["b6a1", "\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["b7a1", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],
+      ["b8a1", "\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["b9a1", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],
+      ["baa1", "\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["bba1", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],
+      ["bca1", "\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["bda1", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],
+      ["bea1", "\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["bfa1", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],
+      ["c0a1", "\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["c1a1", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],
+      ["c2a1", "\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["c3a1", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],
+      ["c4a1", "\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["c5a1", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],
+      ["c6a1", "\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["c7a1", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],
+      ["c8a1", "\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["c9a1", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],
+      ["caa1", "\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["cba1", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],
+      ["cca1", "\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["cda1", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],
+      ["cea1", "\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["cfa1", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["d0a1", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["d1a1", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],
+      ["d2a1", "\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["d3a1", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],
+      ["d4a1", "\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["d5a1", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],
+      ["d6a1", "\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["d7a1", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],
+      ["d8a1", "\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["d9a1", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],
+      ["daa1", "\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["dba1", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],
+      ["dca1", "\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["dda1", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],
+      ["dea1", "\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["dfa1", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],
+      ["e0a1", "\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e1a1", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],
+      ["e2a1", "\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e3a1", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],
+      ["e4a1", "\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e5a1", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],
+      ["e6a1", "\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e7a1", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],
+      ["e8a1", "\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e9a1", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],
+      ["eaa1", "\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["eba1", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],
+      ["eca1", "\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["eda1", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],
+      ["eea1", "\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["efa1", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],
+      ["f0a1", "\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["f1a1", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],
+      ["f2a1", "\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["f3a1", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],
+      ["f4a1", "\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["f9a1", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],
+      ["faa1", "\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["fba1", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],
+      ["fca1", "\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["fcf1", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["8fa2af", "\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],
+      ["8fa2c2", "\xA1\xA6\xBF"],
+      ["8fa2eb", "\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],
+      ["8fa6e1", "\u0386\u0388\u0389\u038A\u03AA"],
+      ["8fa6e7", "\u038C"],
+      ["8fa6e9", "\u038E\u03AB"],
+      ["8fa6ec", "\u038F"],
+      ["8fa6f1", "\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],
+      ["8fa7c2", "\u0402", 10, "\u040E\u040F"],
+      ["8fa7f2", "\u0452", 10, "\u045E\u045F"],
+      ["8fa9a1", "\xC6\u0110"],
+      ["8fa9a4", "\u0126"],
+      ["8fa9a6", "\u0132"],
+      ["8fa9a8", "\u0141\u013F"],
+      ["8fa9ab", "\u014A\xD8\u0152"],
+      ["8fa9af", "\u0166\xDE"],
+      ["8fa9c1", "\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],
+      ["8faaa1", "\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],
+      ["8faaba", "\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],
+      ["8faba1", "\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],
+      ["8fabbd", "\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],
+      ["8fabc5", "\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],
+      ["8fb0a1", "\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],
+      ["8fb1a1", "\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],
+      ["8fb2a1", "\u5092\u5093\u5094\u5096\u509B\u509C\u509E", 4, "\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],
+      ["8fb3a1", "\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],
+      ["8fb4a1", "\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],
+      ["8fb5a1", "\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],
+      ["8fb6a1", "\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D", 5, "\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4", 4, "\u56F1\u56EB\u56ED"],
+      ["8fb7a1", "\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D", 4, "\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],
+      ["8fb8a1", "\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],
+      ["8fb9a1", "\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],
+      ["8fbaa1", "\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6", 4, "\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],
+      ["8fbba1", "\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],
+      ["8fbca1", "\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A", 4, "\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],
+      ["8fbda1", "\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0", 4, "\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],
+      ["8fbea1", "\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110", 4, "\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],
+      ["8fbfa1", "\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],
+      ["8fc0a1", "\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],
+      ["8fc1a1", "\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],
+      ["8fc2a1", "\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],
+      ["8fc3a1", "\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E", 4, "\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],
+      ["8fc4a1", "\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],
+      ["8fc5a1", "\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],
+      ["8fc6a1", "\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],
+      ["8fc7a1", "\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],
+      ["8fc8a1", "\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],
+      ["8fc9a1", "\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094", 4, "\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103", 4, "\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],
+      ["8fcaa1", "\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],
+      ["8fcba1", "\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],
+      ["8fcca1", "\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428", 9, "\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],
+      ["8fcda1", "\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579", 5, "\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],
+      ["8fcea1", "\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2", 6, "\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],
+      ["8fcfa1", "\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],
+      ["8fd0a1", "\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],
+      ["8fd1a1", "\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],
+      ["8fd2a1", "\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59", 5],
+      ["8fd3a1", "\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],
+      ["8fd4a1", "\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2", 4, "\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],
+      ["8fd5a1", "\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],
+      ["8fd6a1", "\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],
+      ["8fd7a1", "\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],
+      ["8fd8a1", "\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],
+      ["8fd9a1", "\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F", 4, "\u8556\u8559\u855C", 6, "\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],
+      ["8fdaa1", "\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660", 4, "\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],
+      ["8fdba1", "\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783", 6, "\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],
+      ["8fdca1", "\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA", 4, "\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],
+      ["8fdda1", "\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4", 4, "\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],
+      ["8fdea1", "\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42", 4, "\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],
+      ["8fdfa1", "\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],
+      ["8fe0a1", "\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],
+      ["8fe1a1", "\u8F43\u8F47\u8F4F\u8F51", 4, "\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],
+      ["8fe2a1", "\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],
+      ["8fe3a1", "\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC", 5, "\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275", 4, "\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],
+      ["8fe4a1", "\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF", 4, "\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],
+      ["8fe5a1", "\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9", 4, "\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],
+      ["8fe6a1", "\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],
+      ["8fe7a1", "\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],
+      ["8fe8a1", "\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931", 4, "\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],
+      ["8fe9a1", "\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF", 4],
+      ["8feaa1", "\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A", 4, "\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],
+      ["8feba1", "\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26", 4, "\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],
+      ["8feca1", "\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],
+      ["8feda1", "\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43", 4, "\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D", 4, "\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json
+var require_cp936 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127, "\u20AC"],
+      ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"],
+      ["8180", "\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02", 6, "\u4F0B\u4F0C\u4F12", 4, "\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E", 4, "\u4F44\u4F45\u4F47", 5, "\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],
+      ["8240", "\u4FA4\u4FAB\u4FAD\u4FB0", 4, "\u4FB6", 8, "\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2", 4, "\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF", 11],
+      ["8280", "\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F", 10, "\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050", 4, "\u5056\u5057\u5058\u5059\u505B\u505D", 7, "\u5066", 5, "\u506D", 8, "\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E", 20, "\u50A4\u50A6\u50AA\u50AB\u50AD", 4, "\u50B3", 6, "\u50BC"],
+      ["8340", "\u50BD", 17, "\u50D0", 5, "\u50D7\u50D8\u50D9\u50DB", 10, "\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6", 4, "\u50FC", 9, "\u5108"],
+      ["8380", "\u5109\u510A\u510C", 5, "\u5113", 13, "\u5122", 28, "\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D", 4, "\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6", 4, "\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2", 5],
+      ["8440", "\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5", 5, "\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244", 5, "\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],
+      ["8480", "\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273", 9, "\u527E\u5280\u5283", 4, "\u5289", 6, "\u5291\u5292\u5294", 6, "\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4", 9, "\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9", 5, "\u52E0\u52E1\u52E2\u52E3\u52E5", 10, "\u52F1", 7, "\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],
+      ["8540", "\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F", 9, "\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],
+      ["8580", "\u5390", 4, "\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF", 6, "\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3", 4, "\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D", 4, "\u5463\u5465\u5467\u5469", 7, "\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],
+      ["8640", "\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0", 4, "\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4", 5, "\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A", 4, "\u5512\u5513\u5515", 5, "\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],
+      ["8680", "\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B", 4, "\u5551\u5552\u5553\u5554\u5557", 4, "\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F", 5, "\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0", 6, "\u55A8", 8, "\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF", 4, "\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7", 4, "\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8", 4, "\u55FF\u5602\u5603\u5604\u5605"],
+      ["8740", "\u5606\u5607\u560A\u560B\u560D\u5610", 7, "\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640", 11, "\u564F", 4, "\u5655\u5656\u565A\u565B\u565D", 4],
+      ["8780", "\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D", 7, "\u5687", 6, "\u5690\u5691\u5692\u5694", 14, "\u56A4", 10, "\u56B0", 6, "\u56B8\u56B9\u56BA\u56BB\u56BD", 12, "\u56CB", 8, "\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5", 5, "\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B", 6],
+      ["8840", "\u5712", 9, "\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734", 4, "\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752", 4, "\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],
+      ["8880", "\u5781\u5787\u5788\u5789\u578A\u578D", 4, "\u5794", 6, "\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9", 8, "\u57C4", 6, "\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5", 7, "\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825", 4, "\u582B", 4, "\u5831\u5832\u5833\u5834\u5836", 7],
+      ["8940", "\u583E", 5, "\u5845", 6, "\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859", 4, "\u585F", 5, "\u5866", 4, "\u586D", 16, "\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],
+      ["8980", "\u588D", 4, "\u5894", 4, "\u589B\u589C\u589D\u58A0", 7, "\u58AA", 17, "\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6", 10, "\u58D2\u58D3\u58D4\u58D6", 13, "\u58E5", 5, "\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA", 7, "\u5903\u5905\u5906\u5908", 4, "\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],
+      ["8a40", "\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B", 4, "\u5961\u5963\u5964\u5966", 12, "\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],
+      ["8a80", "\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3", 5, "\u59BA\u59BC\u59BD\u59BF", 6, "\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE", 4, "\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED", 11, "\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A", 6, "\u5A33\u5A35\u5A37", 4, "\u5A3D\u5A3E\u5A3F\u5A41", 4, "\u5A47\u5A48\u5A4B", 9, "\u5A56\u5A57\u5A58\u5A59\u5A5B", 5],
+      ["8b40", "\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B", 8, "\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80", 17, "\u5A93", 6, "\u5A9C", 13, "\u5AAB\u5AAC"],
+      ["8b80", "\u5AAD", 4, "\u5AB4\u5AB6\u5AB7\u5AB9", 4, "\u5ABF\u5AC0\u5AC3", 5, "\u5ACA\u5ACB\u5ACD", 4, "\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC", 4, "\u5AF2", 22, "\u5B0A", 11, "\u5B18", 25, "\u5B33\u5B35\u5B36\u5B38", 7, "\u5B41", 6],
+      ["8c40", "\u5B48", 7, "\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],
+      ["8c80", "\u5BD1\u5BD4", 8, "\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9", 4, "\u5BEF\u5BF1", 6, "\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67", 6, "\u5C70\u5C72", 6, "\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83", 4, "\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D", 4, "\u5CA4", 4],
+      ["8d40", "\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5", 5, "\u5CCC", 5, "\u5CD3", 5, "\u5CDA", 6, "\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1", 9, "\u5CFC", 4],
+      ["8d80", "\u5D01\u5D04\u5D05\u5D08", 5, "\u5D0F", 4, "\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F", 4, "\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F", 4, "\u5D35", 7, "\u5D3F", 7, "\u5D48\u5D49\u5D4D", 10, "\u5D59\u5D5A\u5D5C\u5D5E", 10, "\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75", 12, "\u5D83", 21, "\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],
+      ["8e40", "\u5DA1", 21, "\u5DB8", 12, "\u5DC6", 6, "\u5DCE", 12, "\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],
+      ["8e80", "\u5DF0\u5DF5\u5DF6\u5DF8", 4, "\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E", 7, "\u5E28", 4, "\u5E2F\u5E30\u5E32", 4, "\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46", 5, "\u5E4D", 6, "\u5E56", 4, "\u5E5C\u5E5D\u5E5F\u5E60\u5E63", 14, "\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8", 4, "\u5EAE", 4, "\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF", 6],
+      ["8f40", "\u5EC6\u5EC7\u5EC8\u5ECB", 5, "\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC", 11, "\u5EE9\u5EEB", 8, "\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],
+      ["8f80", "\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32", 6, "\u5F3B\u5F3D\u5F3E\u5F3F\u5F41", 14, "\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2", 5, "\u5FA9\u5FAB\u5FAC\u5FAF", 5, "\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE", 4, "\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],
+      ["9040", "\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030", 4, "\u6036", 4, "\u603D\u603E\u6040\u6044", 6, "\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],
+      ["9080", "\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD", 7, "\u60C7\u60C8\u60C9\u60CC", 4, "\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1", 4, "\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB", 4, "\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110", 4, "\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C", 18, "\u6140", 6],
+      ["9140", "\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156", 6, "\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169", 6, "\u6171\u6172\u6173\u6174\u6176\u6178", 18, "\u618C\u618D\u618F", 4, "\u6195"],
+      ["9180", "\u6196", 6, "\u619E", 8, "\u61AA\u61AB\u61AD", 9, "\u61B8", 5, "\u61BF\u61C0\u61C1\u61C3", 4, "\u61C9\u61CC", 4, "\u61D3\u61D5", 16, "\u61E7", 13, "\u61F6", 8, "\u6200", 5, "\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238", 4, "\u6242\u6244\u6245\u6246\u624A"],
+      ["9240", "\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C", 6, "\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B", 5, "\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],
+      ["9280", "\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333", 5, "\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356", 7, "\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399", 6, "\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],
+      ["9340", "\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7", 6, "\u63DF\u63E2\u63E4", 4, "\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406", 4, "\u640D\u640E\u6411\u6412\u6415", 5, "\u641D\u641F\u6422\u6423\u6424"],
+      ["9380", "\u6425\u6427\u6428\u6429\u642B\u642E", 5, "\u6435", 4, "\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B", 6, "\u6453\u6455\u6456\u6457\u6459", 4, "\u645F", 7, "\u6468\u646A\u646B\u646C\u646E", 9, "\u647B", 6, "\u6483\u6486\u6488", 8, "\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F", 4, "\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6", 6, "\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],
+      ["9440", "\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7", 24, "\u6501", 7, "\u650A", 7, "\u6513", 4, "\u6519", 8],
+      ["9480", "\u6522\u6523\u6524\u6526", 4, "\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540", 4, "\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578", 14, "\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1", 7, "\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8", 7, "\u65E1\u65E3\u65E4\u65EA\u65EB"],
+      ["9540", "\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB", 4, "\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637", 4, "\u663D\u663F\u6640\u6642\u6644", 6, "\u664D\u664E\u6650\u6651\u6658"],
+      ["9580", "\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669", 4, "\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698", 4, "\u669E", 8, "\u66A9", 4, "\u66AF", 4, "\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF", 25, "\u66DA\u66DE", 7, "\u66E7\u66E8\u66EA", 5, "\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],
+      ["9640", "\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720", 5, "\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757", 4, "\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],
+      ["9680", "\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9", 7, "\u67C2\u67C5", 9, "\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5", 7, "\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818", 4, "\u681E\u681F\u6820\u6822", 6, "\u682B", 6, "\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856", 5],
+      ["9740", "\u685C\u685D\u685E\u685F\u686A\u686C", 7, "\u6875\u6878", 8, "\u6882\u6884\u6887", 7, "\u6890\u6891\u6892\u6894\u6895\u6896\u6898", 9, "\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],
+      ["9780", "\u68B9", 6, "\u68C1\u68C3", 5, "\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB", 4, "\u68E1\u68E2\u68E4", 9, "\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906", 4, "\u690C\u690F\u6911\u6913", 11, "\u6921\u6922\u6923\u6925", 7, "\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943", 16, "\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],
+      ["9840", "\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972", 4, "\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E", 5, "\u6996\u6997\u6999\u699A\u699D", 9, "\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],
+      ["9880", "\u69BE\u69BF\u69C0\u69C2", 7, "\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5", 5, "\u69DC\u69DD\u69DE\u69E1", 11, "\u69EE\u69EF\u69F0\u69F1\u69F3", 9, "\u69FE\u6A00", 9, "\u6A0B", 11, "\u6A19", 5, "\u6A20\u6A22", 5, "\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36", 6, "\u6A3F", 4, "\u6A45\u6A46\u6A48", 7, "\u6A51", 6, "\u6A5A"],
+      ["9940", "\u6A5C", 4, "\u6A62\u6A63\u6A64\u6A66", 10, "\u6A72", 6, "\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85", 8, "\u6A8F\u6A92", 4, "\u6A98", 7, "\u6AA1", 5],
+      ["9980", "\u6AA7\u6AA8\u6AAA\u6AAD", 114, "\u6B25\u6B26\u6B28", 6],
+      ["9a40", "\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D", 11, "\u6B5A", 7, "\u6B68\u6B69\u6B6B", 13, "\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],
+      ["9a80", "\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C", 4, "\u6BA2", 7, "\u6BAB", 7, "\u6BB6\u6BB8", 6, "\u6BC0\u6BC3\u6BC4\u6BC6", 4, "\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC", 4, "\u6BE2", 7, "\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE", 6, "\u6C08", 4, "\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B", 4, "\u6C51\u6C52\u6C53\u6C56\u6C58"],
+      ["9b40", "\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B", 4, "\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],
+      ["9b80", "\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F", 5, "\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D", 4, "\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96", 4, "\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9", 5, "\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],
+      ["9c40", "\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD", 7, "\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],
+      ["9c80", "\u6E36\u6E37\u6E39\u6E3B", 7, "\u6E45", 7, "\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60", 10, "\u6E6C\u6E6D\u6E6F", 14, "\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A", 4, "\u6E91", 6, "\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA", 5],
+      ["9d40", "\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA", 7, "\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A", 4, "\u6F10\u6F11\u6F12\u6F16", 9, "\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37", 6, "\u6F3F\u6F40\u6F41\u6F42"],
+      ["9d80", "\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E", 9, "\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67", 5, "\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D", 6, "\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F", 12, "\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2", 4, "\u6FA8", 10, "\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA", 5, "\u6FC1\u6FC3", 5, "\u6FCA", 6, "\u6FD3", 10, "\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],
+      ["9e40", "\u6FE6", 7, "\u6FF0", 32, "\u7012", 7, "\u701C", 6, "\u7024", 6],
+      ["9e80", "\u702B", 9, "\u7036\u7037\u7038\u703A", 17, "\u704D\u704E\u7050", 13, "\u705F", 11, "\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E", 12, "\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB", 12, "\u70DA"],
+      ["9f40", "\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0", 6, "\u70F8\u70FA\u70FB\u70FC\u70FE", 10, "\u710B", 4, "\u7111\u7112\u7114\u7117\u711B", 10, "\u7127", 7, "\u7132\u7133\u7134"],
+      ["9f80", "\u7135\u7137", 13, "\u7146\u7147\u7148\u7149\u714B\u714D\u714F", 12, "\u715D\u715F", 4, "\u7165\u7169", 4, "\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E", 5, "\u7185", 4, "\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A", 4, "\u71A1", 6, "\u71A9\u71AA\u71AB\u71AD", 5, "\u71B4\u71B6\u71B7\u71B8\u71BA", 8, "\u71C4", 9, "\u71CF", 4],
+      ["a040", "\u71D6", 9, "\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8", 5, "\u71EF", 9, "\u71FA", 11, "\u7207", 19],
+      ["a080", "\u721B\u721C\u721E", 9, "\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240", 6, "\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285", 4, "\u728C\u728E\u7290\u7291\u7293", 11, "\u72A0", 11, "\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA", 6, "\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],
+      ["a1a1", "\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 7, "\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],
+      ["a2a1", "\u2170", 9],
+      ["a2b1", "\u2488", 19, "\u2474", 19, "\u2460", 9],
+      ["a2e5", "\u3220", 9],
+      ["a2f1", "\u2160", 11],
+      ["a3a1", "\uFF01\uFF02\uFF03\uFFE5\uFF05", 88, "\uFFE3"],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a6e0", "\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],
+      ["a6ee", "\uFE3B\uFE3C\uFE37\uFE38\uFE31"],
+      ["a6f4", "\uFE33\uFE34"],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a840", "\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550", 35, "\u2581", 6],
+      ["a880", "\u2588", 7, "\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],
+      ["a8a1", "\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],
+      ["a8bd", "\u0144\u0148"],
+      ["a8c0", "\u0261"],
+      ["a8c5", "\u3105", 36],
+      ["a940", "\u3021", 8, "\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],
+      ["a959", "\u2121\u3231"],
+      ["a95c", "\u2010"],
+      ["a960", "\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49", 9, "\uFE54\uFE55\uFE56\uFE57\uFE59", 8],
+      ["a980", "\uFE62", 4, "\uFE68\uFE69\uFE6A\uFE6B"],
+      ["a996", "\u3007"],
+      ["a9a4", "\u2500", 75],
+      ["aa40", "\u72DC\u72DD\u72DF\u72E2", 5, "\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304", 5, "\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340", 8],
+      ["aa80", "\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358", 7, "\u7361", 10, "\u736E\u7370\u7371"],
+      ["ab40", "\u7372", 11, "\u737F", 4, "\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3", 5, "\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3", 4],
+      ["ab80", "\u73CB\u73CC\u73CE\u73D2", 6, "\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3", 4],
+      ["ac40", "\u73F8", 10, "\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411", 8, "\u741C", 5, "\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437", 4, "\u743D\u743E\u743F\u7440\u7442", 11],
+      ["ac80", "\u744E", 6, "\u7456\u7458\u745D\u7460", 12, "\u746E\u746F\u7471", 4, "\u7478\u7479\u747A"],
+      ["ad40", "\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491", 10, "\u749D\u749F", 7, "\u74AA", 15, "\u74BB", 12],
+      ["ad80", "\u74C8", 9, "\u74D3", 8, "\u74DD\u74DF\u74E1\u74E5\u74E7", 6, "\u74F0\u74F1\u74F2"],
+      ["ae40", "\u74F3\u74F5\u74F8", 6, "\u7500\u7501\u7502\u7503\u7505", 7, "\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520", 4, "\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],
+      ["ae80", "\u755D", 7, "\u7567\u7568\u7569\u756B", 6, "\u7573\u7575\u7576\u7577\u757A", 4, "\u7580\u7581\u7582\u7584\u7585\u7587"],
+      ["af40", "\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6", 4, "\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],
+      ["af80", "\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],
+      ["b040", "\u7645", 6, "\u764E", 5, "\u7655\u7657", 4, "\u765D\u765F\u7660\u7661\u7662\u7664", 6, "\u766C\u766D\u766E\u7670", 7, "\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],
+      ["b080", "\u769C", 7, "\u76A5", 8, "\u76AF\u76B0\u76B3\u76B5", 9, "\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],
+      ["b140", "\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0", 4, "\u76E6", 7, "\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E", 10, "\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],
+      ["b180", "\u772C\u772E\u7730", 4, "\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748", 7, "\u7752", 7, "\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],
+      ["b240", "\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D", 11, "\u777A\u777B\u777C\u7781\u7782\u7783\u7786", 5, "\u778F\u7790\u7793", 11, "\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6", 4],
+      ["b280", "\u77BC\u77BE\u77C0", 12, "\u77CE", 8, "\u77D8\u77D9\u77DA\u77DD", 4, "\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],
+      ["b340", "\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803", 5, "\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],
+      ["b380", "\u785B\u785C\u785E", 11, "\u786F", 7, "\u7878\u7879\u787A\u787B\u787D", 6, "\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],
+      ["b440", "\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8", 7, "\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA", 9],
+      ["b480", "\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED", 4, "\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB", 5, "\u7902\u7903\u7904\u7906", 6, "\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],
+      ["b540", "\u790D", 5, "\u7914", 9, "\u791F", 4, "\u7925", 14, "\u7935", 4, "\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A", 8, "\u7954\u7955\u7958\u7959\u7961\u7963"],
+      ["b580", "\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970", 6, "\u7979\u797B", 4, "\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],
+      ["b640", "\u7993", 6, "\u799B", 11, "\u79A8", 10, "\u79B4", 4, "\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9", 5, "\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],
+      ["b680", "\u79EC\u79EE\u79F1", 6, "\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F", 4, "\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],
+      ["b740", "\u7A1D\u7A1F\u7A21\u7A22\u7A24", 14, "\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40", 5, "\u7A47", 9, "\u7A52", 4, "\u7A58", 16],
+      ["b780", "\u7A69", 6, "\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],
+      ["b840", "\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE", 4, "\u7AB4", 10, "\u7AC0", 10, "\u7ACC", 9, "\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7", 5, "\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],
+      ["b880", "\u7AF4", 4, "\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],
+      ["b940", "\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F", 5, "\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63", 10, "\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86", 6, "\u7B8E\u7B8F"],
+      ["b980", "\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9", 7, "\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],
+      ["ba40", "\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4", 4, "\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2", 4, "\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF", 7, "\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10", 5, "\u7C17\u7C18\u7C19"],
+      ["ba80", "\u7C1A", 4, "\u7C20", 5, "\u7C28\u7C29\u7C2B", 12, "\u7C39", 5, "\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],
+      ["bb40", "\u7C43", 9, "\u7C4E", 36, "\u7C75", 5, "\u7C7E", 9],
+      ["bb80", "\u7C88\u7C8A", 6, "\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4", 4, "\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],
+      ["bc40", "\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE", 6, "\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1", 6, "\u7CE9", 5, "\u7CF0", 7, "\u7CF9\u7CFA\u7CFC", 13, "\u7D0B", 5],
+      ["bc80", "\u7D11", 14, "\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30", 6, "\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],
+      ["bd40", "\u7D37", 54, "\u7D6F", 7],
+      ["bd80", "\u7D78", 32, "\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],
+      ["be40", "\u7D99", 12, "\u7DA7", 6, "\u7DAF", 42],
+      ["be80", "\u7DDA", 32, "\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],
+      ["bf40", "\u7DFB", 62],
+      ["bf80", "\u7E3A\u7E3C", 4, "\u7E42", 4, "\u7E48", 21, "\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],
+      ["c040", "\u7E5E", 35, "\u7E83", 23, "\u7E9C\u7E9D\u7E9E"],
+      ["c080", "\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B", 6, "\u7F43\u7F46", 9, "\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],
+      ["c140", "\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63", 4, "\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82", 7, "\u7F8B\u7F8D\u7F8F", 4, "\u7F95", 4, "\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8", 6, "\u7FB1"],
+      ["c180", "\u7FB3", 4, "\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF", 4, "\u7FD6\u7FD7\u7FD9", 5, "\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],
+      ["c240", "\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4", 6, "\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B", 5, "\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],
+      ["c280", "\u8059\u805B", 13, "\u806B", 5, "\u8072", 11, "\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],
+      ["c340", "\u807E\u8081\u8082\u8085\u8088\u808A\u808D", 5, "\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7", 4, "\u80CF", 6, "\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],
+      ["c380", "\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F", 12, "\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139", 4, "\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],
+      ["c440", "\u8140", 5, "\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B", 4, "\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183", 4, "\u8189\u818B\u818C\u818D\u818E\u8190\u8192", 5, "\u8199\u819A\u819E", 4, "\u81A4\u81A5"],
+      ["c480", "\u81A7\u81A9\u81AB", 7, "\u81B4", 5, "\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD", 6, "\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],
+      ["c540", "\u81D4", 14, "\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE", 4, "\u81F5", 5, "\u81FD\u81FF\u8203\u8207", 4, "\u820E\u820F\u8211\u8213\u8215", 5, "\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],
+      ["c580", "\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250", 7, "\u8259\u825B\u825C\u825D\u825E\u8260", 7, "\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],
+      ["c640", "\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],
+      ["c680", "\u82FA\u82FC", 4, "\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D", 9, "\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],
+      ["c740", "\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A", 4, "\u8353\u8355", 4, "\u835D\u8362\u8370", 6, "\u8379\u837A\u837E", 6, "\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1", 6, "\u83AC\u83AD\u83AE"],
+      ["c780", "\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],
+      ["c840", "\u83EE\u83EF\u83F3", 4, "\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412", 5, "\u8419\u841A\u841B\u841E", 5, "\u8429", 7, "\u8432", 5, "\u8439\u843A\u843B\u843E", 7, "\u8447\u8448\u8449"],
+      ["c880", "\u844A", 6, "\u8452", 4, "\u8458\u845D\u845E\u845F\u8460\u8462\u8464", 4, "\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],
+      ["c940", "\u847D", 4, "\u8483\u8484\u8485\u8486\u848A\u848D\u848F", 7, "\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2", 12, "\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],
+      ["c980", "\u84D8", 4, "\u84DE\u84E1\u84E2\u84E4\u84E7", 4, "\u84ED\u84EE\u84EF\u84F1", 10, "\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],
+      ["ca40", "\u8503", 8, "\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522", 8, "\u852D", 9, "\u853E", 4, "\u8544\u8545\u8546\u8547\u854B", 10],
+      ["ca80", "\u8557\u8558\u855A\u855B\u855C\u855D\u855F", 4, "\u8565\u8566\u8567\u8569", 8, "\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],
+      ["cb40", "\u8582\u8583\u8586\u8588", 6, "\u8590", 10, "\u859D", 6, "\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1", 5, "\u85B8\u85BA", 6, "\u85C2", 6, "\u85CA", 4, "\u85D1\u85D2"],
+      ["cb80", "\u85D4\u85D6", 5, "\u85DD", 6, "\u85E5\u85E6\u85E7\u85E8\u85EA", 14, "\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],
+      ["cc40", "\u85F9\u85FA\u85FC\u85FD\u85FE\u8600", 4, "\u8606", 10, "\u8612\u8613\u8614\u8615\u8617", 15, "\u8628\u862A", 13, "\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],
+      ["cc80", "\u8641", 11, "\u8652\u8653\u8655", 4, "\u865B\u865C\u865D\u865F\u8660\u8661\u8663", 7, "\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],
+      ["cd40", "\u866D\u866F\u8670\u8672", 6, "\u8683", 6, "\u868E", 4, "\u8694\u8696", 5, "\u869E", 4, "\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB", 4, "\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],
+      ["cd80", "\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],
+      ["ce40", "\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740", 6, "\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A", 5, "\u8761\u8762\u8766", 7, "\u876F\u8771\u8772\u8773\u8775"],
+      ["ce80", "\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E", 4, "\u8794\u8795\u8796\u8798", 6, "\u87A0", 4, "\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],
+      ["cf40", "\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1", 4, "\u87C7\u87C8\u87C9\u87CC", 4, "\u87D4", 6, "\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF", 9],
+      ["cf80", "\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804", 5, "\u880B", 7, "\u8814\u8817\u8818\u8819\u881A\u881C", 4, "\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],
+      ["d040", "\u8824", 13, "\u8833", 5, "\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846", 5, "\u884E", 5, "\u8855\u8856\u8858\u885A", 6, "\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],
+      ["d080", "\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897", 4, "\u889D", 4, "\u88A3\u88A5", 5, "\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],
+      ["d140", "\u88AC\u88AE\u88AF\u88B0\u88B2", 4, "\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA", 4, "\u88E0\u88E1\u88E6\u88E7\u88E9", 6, "\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903", 5],
+      ["d180", "\u8909\u890B", 4, "\u8911\u8914", 4, "\u891C", 4, "\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],
+      ["d240", "\u8938", 8, "\u8942\u8943\u8945", 24, "\u8960", 5, "\u8967", 19, "\u897C"],
+      ["d280", "\u897D\u897E\u8980\u8982\u8984\u8985\u8987", 26, "\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],
+      ["d340", "\u89A2", 30, "\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4", 6],
+      ["d380", "\u89FB", 4, "\u8A01", 5, "\u8A08", 21, "\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],
+      ["d440", "\u8A1E", 31, "\u8A3F", 8, "\u8A49", 21],
+      ["d480", "\u8A5F", 25, "\u8A7A", 6, "\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],
+      ["d540", "\u8A81", 7, "\u8A8B", 7, "\u8A94", 46],
+      ["d580", "\u8AC3", 32, "\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],
+      ["d640", "\u8AE4", 34, "\u8B08", 27],
+      ["d680", "\u8B24\u8B25\u8B27", 30, "\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],
+      ["d740", "\u8B46", 31, "\u8B67", 4, "\u8B6D", 25],
+      ["d780", "\u8B87", 24, "\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],
+      ["d840", "\u8C38", 8, "\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D", 7, "\u8C56\u8C57\u8C58\u8C59\u8C5B", 5, "\u8C63", 6, "\u8C6C", 6, "\u8C74\u8C75\u8C76\u8C77\u8C7B", 6, "\u8C83\u8C84\u8C86\u8C87"],
+      ["d880", "\u8C88\u8C8B\u8C8D", 6, "\u8C95\u8C96\u8C97\u8C99", 20, "\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],
+      ["d940", "\u8CAE", 62],
+      ["d980", "\u8CED", 32, "\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],
+      ["da40", "\u8D0E", 14, "\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78", 8, "\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C", 4, "\u8D92\u8D93\u8D95", 9, "\u8DA0\u8DA1"],
+      ["da80", "\u8DA2\u8DA4", 12, "\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],
+      ["db40", "\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE", 6, "\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15", 7, "\u8E20\u8E21\u8E24", 4, "\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],
+      ["db80", "\u8E3F\u8E43\u8E45\u8E46\u8E4C", 4, "\u8E53", 5, "\u8E5A", 11, "\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],
+      ["dc40", "\u8E73\u8E75\u8E77", 4, "\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88", 6, "\u8E91\u8E92\u8E93\u8E95", 6, "\u8E9D\u8E9F", 11, "\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3", 6, "\u8EBB", 7],
+      ["dc80", "\u8EC3", 10, "\u8ECF", 21, "\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],
+      ["dd40", "\u8EE5", 62],
+      ["dd80", "\u8F24", 32, "\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],
+      ["de40", "\u8F45", 32, "\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],
+      ["de80", "\u8FC9", 4, "\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],
+      ["df40", "\u9019\u901C\u9023\u9024\u9025\u9027", 5, "\u9030", 4, "\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048", 4, "\u904E\u9054\u9055\u9056\u9059\u905A\u905C", 5, "\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F", 4, "\u9076", 6, "\u907E\u9081"],
+      ["df80", "\u9084\u9085\u9086\u9087\u9089\u908A\u908C", 4, "\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],
+      ["e040", "\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105", 19, "\u911A\u911B\u911C"],
+      ["e080", "\u911D\u911F\u9120\u9121\u9124", 10, "\u9130\u9132", 6, "\u913A", 8, "\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],
+      ["e140", "\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180", 4, "\u9186\u9188\u918A\u918E\u918F\u9193", 6, "\u919C", 5, "\u91A4", 5, "\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],
+      ["e180", "\u91BC", 10, "\u91C8\u91CB\u91D0\u91D2", 9, "\u91DD", 8, "\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],
+      ["e240", "\u91E6", 62],
+      ["e280", "\u9225", 32, "\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967", 5, "\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],
+      ["e340", "\u9246", 45, "\u9275", 16],
+      ["e380", "\u9286", 7, "\u928F", 24, "\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],
+      ["e440", "\u92A8", 5, "\u92AF", 24, "\u92C9", 31],
+      ["e480", "\u92E9", 32, "\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],
+      ["e540", "\u930A", 51, "\u933F", 10],
+      ["e580", "\u934A", 31, "\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],
+      ["e640", "\u936C", 34, "\u9390", 27],
+      ["e680", "\u93AC", 29, "\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],
+      ["e740", "\u93CE", 7, "\u93D7", 54],
+      ["e780", "\u940E", 32, "\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21", 6, "\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F", 4, "\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],
+      ["e840", "\u942F", 14, "\u943F", 43, "\u946C\u946D\u946E\u946F"],
+      ["e880", "\u9470", 20, "\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],
+      ["e940", "\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577", 7, "\u9580", 42],
+      ["e980", "\u95AB", 32, "\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],
+      ["ea40", "\u95CC", 27, "\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623", 6, "\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],
+      ["ea80", "\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D", 4, "\u9673\u9678", 12, "\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],
+      ["eb40", "\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D", 9, "\u96A8", 7, "\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6", 9, "\u96E1", 6, "\u96EB"],
+      ["eb80", "\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717", 4, "\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],
+      ["ec40", "\u9721", 8, "\u972B\u972C\u972E\u972F\u9731\u9733", 4, "\u973A\u973B\u973C\u973D\u973F", 18, "\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A", 7],
+      ["ec80", "\u9772\u9775\u9777", 4, "\u977D", 7, "\u9786", 4, "\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799", 4, "\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],
+      ["ed40", "\u979E\u979F\u97A1\u97A2\u97A4", 6, "\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5", 46],
+      ["ed80", "\u97E4\u97E5\u97E8\u97EE", 4, "\u97F4\u97F7", 23, "\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],
+      ["ee40", "\u980F", 62],
+      ["ee80", "\u984E", 32, "\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6", 4, "\u94BC\u94BD\u94BF\u94C4\u94C8", 6, "\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],
+      ["ef40", "\u986F", 5, "\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8", 37, "\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0", 4],
+      ["ef80", "\u98E5\u98E6\u98E9", 30, "\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512", 4, "\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564", 8, "\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],
+      ["f040", "\u9908", 4, "\u990E\u990F\u9911", 28, "\u992F", 26],
+      ["f080", "\u994A", 9, "\u9956", 12, "\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28", 4, "\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66", 6, "\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],
+      ["f140", "\u998C\u998E\u999A", 10, "\u99A6\u99A7\u99A9", 47],
+      ["f180", "\u99D9", 32, "\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],
+      ["f240", "\u99FA", 62],
+      ["f280", "\u9A39", 32, "\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],
+      ["f340", "\u9A5A", 17, "\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9", 6, "\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6", 4, "\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],
+      ["f380", "\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0", 8, "\u9AFA\u9AFC", 6, "\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],
+      ["f440", "\u9B07\u9B09", 5, "\u9B10\u9B11\u9B12\u9B14", 10, "\u9B20\u9B21\u9B22\u9B24", 10, "\u9B30\u9B31\u9B33", 7, "\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55", 5],
+      ["f480", "\u9B5B", 32, "\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],
+      ["f540", "\u9B7C", 62],
+      ["f580", "\u9BBB", 32, "\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],
+      ["f640", "\u9BDC", 62],
+      ["f680", "\u9C1B", 32, "\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85", 5, "\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E", 5, "\u9CA5", 4, "\u9CAB\u9CAD\u9CAE\u9CB0", 7, "\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],
+      ["f740", "\u9C3C", 62],
+      ["f780", "\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE", 4, "\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC", 4, "\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],
+      ["f840", "\u9CE3", 62],
+      ["f880", "\u9D22", 32],
+      ["f940", "\u9D43", 62],
+      ["f980", "\u9D82", 32],
+      ["fa40", "\u9DA3", 62],
+      ["fa80", "\u9DE2", 32],
+      ["fb40", "\u9E03", 27, "\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74", 9, "\u9E80"],
+      ["fb80", "\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C", 5, "\u9E94", 8, "\u9E9E\u9EA0", 5, "\u9EA7\u9EA8\u9EA9\u9EAA"],
+      ["fc40", "\u9EAB", 8, "\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF", 4, "\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0", 8, "\u9EFA\u9EFD\u9EFF", 6],
+      ["fc80", "\u9F06", 4, "\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A", 5, "\u9F21\u9F23", 8, "\u9F2D\u9F2E\u9F30\u9F31"],
+      ["fd40", "\u9F32", 4, "\u9F38\u9F3A\u9F3C\u9F3F", 4, "\u9F45", 10, "\u9F52", 38],
+      ["fd80", "\u9F79", 5, "\u9F81\u9F82\u9F8D", 11, "\u9F9C\u9F9D\u9F9E\u9FA1", 4, "\uF92C\uF979\uF995\uF9E7\uF9F1"],
+      ["fe40", "\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json
+var require_gbk_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) {
+    module2.exports = [
+      ["a140", "\uE4C6", 62],
+      ["a180", "\uE505", 32],
+      ["a240", "\uE526", 62],
+      ["a280", "\uE565", 32],
+      ["a2ab", "\uE766", 5],
+      ["a2e3", "\u20AC\uE76D"],
+      ["a2ef", "\uE76E\uE76F"],
+      ["a2fd", "\uE770\uE771"],
+      ["a340", "\uE586", 62],
+      ["a380", "\uE5C5", 31, "\u3000"],
+      ["a440", "\uE5E6", 62],
+      ["a480", "\uE625", 32],
+      ["a4f4", "\uE772", 10],
+      ["a540", "\uE646", 62],
+      ["a580", "\uE685", 32],
+      ["a5f7", "\uE77D", 7],
+      ["a640", "\uE6A6", 62],
+      ["a680", "\uE6E5", 32],
+      ["a6b9", "\uE785", 7],
+      ["a6d9", "\uE78D", 6],
+      ["a6ec", "\uE794\uE795"],
+      ["a6f3", "\uE796"],
+      ["a6f6", "\uE797", 8],
+      ["a740", "\uE706", 62],
+      ["a780", "\uE745", 32],
+      ["a7c2", "\uE7A0", 14],
+      ["a7f2", "\uE7AF", 12],
+      ["a896", "\uE7BC", 10],
+      ["a8bc", "\u1E3F"],
+      ["a8bf", "\u01F9"],
+      ["a8c1", "\uE7C9\uE7CA\uE7CB\uE7CC"],
+      ["a8ea", "\uE7CD", 20],
+      ["a958", "\uE7E2"],
+      ["a95b", "\uE7E3"],
+      ["a95d", "\uE7E4\uE7E5\uE7E6"],
+      ["a989", "\u303E\u2FF0", 11],
+      ["a997", "\uE7F4", 12],
+      ["a9f0", "\uE801", 14],
+      ["aaa1", "\uE000", 93],
+      ["aba1", "\uE05E", 93],
+      ["aca1", "\uE0BC", 93],
+      ["ada1", "\uE11A", 93],
+      ["aea1", "\uE178", 93],
+      ["afa1", "\uE1D6", 93],
+      ["d7fa", "\uE810", 4],
+      ["f8a1", "\uE234", 93],
+      ["f9a1", "\uE292", 93],
+      ["faa1", "\uE2F0", 93],
+      ["fba1", "\uE34E", 93],
+      ["fca1", "\uE3AC", 93],
+      ["fda1", "\uE40A", 93],
+      ["fe50", "\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],
+      ["fe80", "\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13", 6, "\u4DAE\uE864\uE468", 93],
+      ["8135f437", "\uE7C7"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json
+var require_gb18030_ranges = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) {
+    module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json
+var require_cp949 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"],
+      ["8161", "\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41", 9, "\uAC4C\uAC4E", 5, "\uAC55"],
+      ["8181", "\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D", 18, "\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B", 4, "\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95", 6, "\uAC9E\uACA2", 5, "\uACAB\uACAD\uACAE\uACB1", 6, "\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD", 7, "\uACD6\uACD8", 7, "\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7", 4, "\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07", 4, "\uAD0E\uAD10\uAD12\uAD13"],
+      ["8241", "\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21", 7, "\uAD2A\uAD2B\uAD2E", 5],
+      ["8261", "\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D", 6, "\uAD46\uAD48\uAD4A", 5, "\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],
+      ["8281", "\uAD59", 7, "\uAD62\uAD64", 7, "\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83", 4, "\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91", 10, "\uAD9E", 5, "\uADA5", 17, "\uADB8", 7, "\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9", 6, "\uADD2\uADD4", 7, "\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5", 18],
+      ["8341", "\uADFA\uADFB\uADFD\uADFE\uAE02", 5, "\uAE0A\uAE0C\uAE0E", 5, "\uAE15", 7],
+      ["8361", "\uAE1D", 18, "\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],
+      ["8381", "\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57", 4, "\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71", 6, "\uAE7A\uAE7E", 5, "\uAE86", 5, "\uAE8D", 46, "\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5", 6, "\uAECE\uAED2", 5, "\uAEDA\uAEDB\uAEDD", 8],
+      ["8441", "\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE", 5, "\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD", 8],
+      ["8461", "\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11", 18],
+      ["8481", "\uAF24", 7, "\uAF2E\uAF2F\uAF31\uAF33\uAF35", 6, "\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A", 5, "\uAF51", 10, "\uAF5E", 5, "\uAF66", 18, "\uAF7A", 5, "\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89", 6, "\uAF92\uAF93\uAF94\uAF96", 5, "\uAF9D", 26, "\uAFBA\uAFBB\uAFBD\uAFBE"],
+      ["8541", "\uAFBF\uAFC1", 5, "\uAFCA\uAFCC\uAFCF", 4, "\uAFD5", 6, "\uAFDD", 4],
+      ["8561", "\uAFE2", 5, "\uAFEA", 5, "\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9", 6, "\uB002\uB003"],
+      ["8581", "\uB005", 6, "\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015", 6, "\uB01E", 9, "\uB029", 26, "\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E", 29, "\uB07E\uB07F\uB081\uB082\uB083\uB085", 6, "\uB08E\uB090\uB092", 5, "\uB09B\uB09D\uB09E\uB0A3\uB0A4"],
+      ["8641", "\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD", 6, "\uB0C6\uB0CA", 5, "\uB0D2"],
+      ["8661", "\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9", 6, "\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6", 10],
+      ["8681", "\uB0F1", 22, "\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E", 4, "\uB126\uB127\uB129\uB12A\uB12B\uB12D", 6, "\uB136\uB13A", 5, "\uB142\uB143\uB145\uB146\uB147\uB149", 6, "\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161", 22, "\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183", 4, "\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],
+      ["8741", "\uB19E", 9, "\uB1A9", 15],
+      ["8761", "\uB1B9", 18, "\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],
+      ["8781", "\uB1D6", 5, "\uB1DE\uB1E0", 7, "\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1", 7, "\uB1FA\uB1FC\uB1FE", 5, "\uB206\uB207\uB209\uB20A\uB20D", 6, "\uB216\uB218\uB21A", 5, "\uB221", 18, "\uB235", 6, "\uB23D", 26, "\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261", 6, "\uB26A", 4],
+      ["8841", "\uB26F", 4, "\uB276", 5, "\uB27D", 6, "\uB286\uB287\uB288\uB28A", 4],
+      ["8861", "\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B", 4, "\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],
+      ["8881", "\uB2B8", 15, "\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3", 4, "\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309", 6, "\uB312\uB316", 5, "\uB31D", 54, "\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],
+      ["8941", "\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379", 6, "\uB382\uB386", 5, "\uB38D"],
+      ["8961", "\uB38E\uB38F\uB391\uB392\uB393\uB395", 10, "\uB3A2", 5, "\uB3A9\uB3AA\uB3AB\uB3AD"],
+      ["8981", "\uB3AE", 21, "\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9", 18, "\uB3FD", 18, "\uB411", 6, "\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421", 6, "\uB42A\uB42C", 7, "\uB435", 15],
+      ["8a41", "\uB445", 10, "\uB452\uB453\uB455\uB456\uB457\uB459", 6, "\uB462\uB464\uB466"],
+      ["8a61", "\uB467", 4, "\uB46D", 18, "\uB481\uB482"],
+      ["8a81", "\uB483", 4, "\uB489", 19, "\uB49E", 5, "\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD", 7, "\uB4B6\uB4B8\uB4BA", 5, "\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9", 6, "\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6", 5, "\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7", 4, "\uB4EE\uB4F0\uB4F2", 5, "\uB4F9", 26, "\uB516\uB517\uB519\uB51A\uB51D"],
+      ["8b41", "\uB51E", 5, "\uB526\uB52B", 4, "\uB532\uB533\uB535\uB536\uB537\uB539", 6, "\uB542\uB546"],
+      ["8b61", "\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555", 6, "\uB55E\uB562", 8],
+      ["8b81", "\uB56B", 52, "\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6", 4, "\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5", 6, "\uB5CE\uB5D2", 5, "\uB5D9", 18, "\uB5ED", 18],
+      ["8c41", "\uB600", 15, "\uB612\uB613\uB615\uB616\uB617\uB619", 4],
+      ["8c61", "\uB61E", 6, "\uB626", 5, "\uB62D", 6, "\uB635", 5],
+      ["8c81", "\uB63B", 12, "\uB649", 26, "\uB665\uB666\uB667\uB669", 50, "\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5", 5, "\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2", 16],
+      ["8d41", "\uB6C3", 16, "\uB6D5", 8],
+      ["8d61", "\uB6DE", 17, "\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],
+      ["8d81", "\uB6FB", 4, "\uB702\uB703\uB704\uB706", 33, "\uB72A\uB72B\uB72D\uB72E\uB731", 6, "\uB73A\uB73C", 7, "\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D", 6, "\uB756", 9, "\uB761\uB762\uB763\uB765\uB766\uB767\uB769", 6, "\uB772\uB774\uB776", 5, "\uB77E\uB77F\uB781\uB782\uB783\uB785", 6, "\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],
+      ["8e41", "\uB79F\uB7A1", 6, "\uB7AA\uB7AE", 5, "\uB7B6\uB7B7\uB7B9", 8],
+      ["8e61", "\uB7C2", 4, "\uB7C8\uB7CA", 19],
+      ["8e81", "\uB7DE", 13, "\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5", 6, "\uB7FE\uB802", 4, "\uB80A\uB80B\uB80D\uB80E\uB80F\uB811", 6, "\uB81A\uB81C\uB81E", 5, "\uB826\uB827\uB829\uB82A\uB82B\uB82D", 6, "\uB836\uB83A", 5, "\uB841\uB842\uB843\uB845", 11, "\uB852\uB854", 7, "\uB85E\uB85F\uB861\uB862\uB863\uB865", 6, "\uB86E\uB870\uB872", 5, "\uB879\uB87A\uB87B\uB87D", 7],
+      ["8f41", "\uB885", 7, "\uB88E", 17],
+      ["8f61", "\uB8A0", 7, "\uB8A9", 6, "\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9", 4],
+      ["8f81", "\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6", 5, "\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5", 7, "\uB8DE\uB8E0\uB8E2", 5, "\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1", 6, "\uB8FA\uB8FC\uB8FE", 5, "\uB905", 18, "\uB919", 6, "\uB921", 26, "\uB93E\uB93F\uB941\uB942\uB943\uB945", 6, "\uB94D\uB94E\uB950\uB952", 5],
+      ["9041", "\uB95A\uB95B\uB95D\uB95E\uB95F\uB961", 6, "\uB96A\uB96C\uB96E", 5, "\uB976\uB977\uB979\uB97A\uB97B\uB97D"],
+      ["9061", "\uB97E", 5, "\uB986\uB988\uB98B\uB98C\uB98F", 15],
+      ["9081", "\uB99F", 12, "\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5", 6, "\uB9BE\uB9C0\uB9C2", 5, "\uB9CA\uB9CB\uB9CD\uB9D3", 4, "\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED", 6, "\uB9F6\uB9FB", 4, "\uBA02", 5, "\uBA09", 11, "\uBA16", 33, "\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],
+      ["9141", "\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D", 6, "\uBA66\uBA6A", 5],
+      ["9161", "\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79", 9, "\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D", 5],
+      ["9181", "\uBA93", 20, "\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3", 4, "\uBABA\uBABC\uBABE", 5, "\uBAC5\uBAC6\uBAC7\uBAC9", 14, "\uBADA", 33, "\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05", 7, "\uBB0E\uBB10\uBB12", 5, "\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21", 6],
+      ["9241", "\uBB28\uBB2A\uBB2C", 7, "\uBB37\uBB39\uBB3A\uBB3F", 4, "\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],
+      ["9261", "\uBB53\uBB55\uBB56\uBB57\uBB59", 7, "\uBB62\uBB64", 7, "\uBB6D", 4],
+      ["9281", "\uBB72", 21, "\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91", 18, "\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD", 6, "\uBBB5\uBBB6\uBBB8", 7, "\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9", 6, "\uBBD1\uBBD2\uBBD4", 35, "\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],
+      ["9341", "\uBC03", 4, "\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],
+      ["9361", "\uBC36\uBC37\uBC39", 6, "\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51", 8],
+      ["9381", "\uBC5A\uBC5B\uBC5C\uBC5E", 37, "\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F", 4, "\uBC96\uBC98\uBC9B", 4, "\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9", 6, "\uBCB2\uBCB6", 5, "\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5", 7, "\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD", 22, "\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],
+      ["9441", "\uBCFE", 5, "\uBD06\uBD08\uBD0A", 5, "\uBD11\uBD12\uBD13\uBD15", 8],
+      ["9461", "\uBD1E", 5, "\uBD25", 6, "\uBD2D", 12],
+      ["9481", "\uBD3A", 5, "\uBD41", 6, "\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51", 6, "\uBD5A", 9, "\uBD65\uBD66\uBD67\uBD69", 22, "\uBD82\uBD83\uBD85\uBD86\uBD8B", 4, "\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D", 6, "\uBDA5", 10, "\uBDB1", 6, "\uBDB9", 24],
+      ["9541", "\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD", 11, "\uBDEA", 5, "\uBDF1"],
+      ["9561", "\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9", 6, "\uBE01\uBE02\uBE04\uBE06", 5, "\uBE0E\uBE0F\uBE11\uBE12\uBE13"],
+      ["9581", "\uBE15", 6, "\uBE1E\uBE20", 35, "\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F", 4, "\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B", 4, "\uBE72\uBE76", 4, "\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85", 6, "\uBE8E\uBE92", 5, "\uBE9A", 13, "\uBEA9", 14],
+      ["9641", "\uBEB8", 23, "\uBED2\uBED3"],
+      ["9661", "\uBED5\uBED6\uBED9", 6, "\uBEE1\uBEE2\uBEE6", 5, "\uBEED", 8],
+      ["9681", "\uBEF6", 10, "\uBF02", 5, "\uBF0A", 13, "\uBF1A\uBF1E", 33, "\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49", 6, "\uBF52\uBF53\uBF54\uBF56", 44],
+      ["9741", "\uBF83", 16, "\uBF95", 8],
+      ["9761", "\uBF9E", 17, "\uBFB1", 7],
+      ["9781", "\uBFB9", 11, "\uBFC6", 5, "\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5", 6, "\uBFDD\uBFDE\uBFE0\uBFE2", 89, "\uC03D\uC03E\uC03F"],
+      ["9841", "\uC040", 16, "\uC052", 5, "\uC059\uC05A\uC05B"],
+      ["9861", "\uC05D\uC05E\uC05F\uC061", 6, "\uC06A", 15],
+      ["9881", "\uC07A", 21, "\uC092\uC093\uC095\uC096\uC097\uC099", 6, "\uC0A2\uC0A4\uC0A6", 5, "\uC0AE\uC0B1\uC0B2\uC0B7", 4, "\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1", 6, "\uC0DA\uC0DE", 5, "\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED", 6, "\uC0F6\uC0F8\uC0FA", 5, "\uC101\uC102\uC103\uC105\uC106\uC107\uC109", 6, "\uC111\uC112\uC113\uC114\uC116", 5, "\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],
+      ["9941", "\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141", 6, "\uC14A\uC14E", 5, "\uC156\uC157"],
+      ["9961", "\uC159\uC15A\uC15B\uC15D", 6, "\uC166\uC16A", 5, "\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],
+      ["9981", "\uC17C", 8, "\uC186", 5, "\uC18F\uC191\uC192\uC193\uC195\uC197", 4, "\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1", 11, "\uC1BE", 5, "\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD", 6, "\uC1D5\uC1D6\uC1D9", 6, "\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9", 6, "\uC1F2\uC1F4", 7, "\uC1FE\uC1FF\uC201\uC202\uC203\uC205", 6, "\uC20E\uC210\uC212", 5, "\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],
+      ["9a41", "\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235", 16],
+      ["9a61", "\uC246\uC247\uC249", 6, "\uC252\uC253\uC255\uC256\uC257\uC259", 6, "\uC261\uC262\uC263\uC264\uC266"],
+      ["9a81", "\uC267", 4, "\uC26E\uC26F\uC271\uC272\uC273\uC275", 6, "\uC27E\uC280\uC282", 5, "\uC28A", 5, "\uC291", 6, "\uC299\uC29A\uC29C\uC29E", 5, "\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE", 5, "\uC2B6\uC2B8\uC2BA", 33, "\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5", 5, "\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301", 6, "\uC30A\uC30B\uC30E\uC30F"],
+      ["9b41", "\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D", 6, "\uC326\uC327\uC32A", 8],
+      ["9b61", "\uC333", 17, "\uC346", 7],
+      ["9b81", "\uC34E", 25, "\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373", 4, "\uC37A\uC37B\uC37E", 5, "\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D", 50, "\uC3C1", 22, "\uC3DA"],
+      ["9c41", "\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3", 4, "\uC3EA\uC3EB\uC3EC\uC3EE", 5, "\uC3F6\uC3F7\uC3F9", 5],
+      ["9c61", "\uC3FF", 8, "\uC409", 6, "\uC411", 9],
+      ["9c81", "\uC41B", 8, "\uC425", 6, "\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435", 6, "\uC43E", 9, "\uC449", 26, "\uC466\uC467\uC469\uC46A\uC46B\uC46D", 6, "\uC476\uC477\uC478\uC47A", 5, "\uC481", 18, "\uC495", 6, "\uC49D", 12],
+      ["9d41", "\uC4AA", 13, "\uC4B9\uC4BA\uC4BB\uC4BD", 8],
+      ["9d61", "\uC4C6", 25],
+      ["9d81", "\uC4E0", 8, "\uC4EA", 5, "\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502", 9, "\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515", 6, "\uC51D", 10, "\uC52A\uC52B\uC52D\uC52E\uC52F\uC531", 6, "\uC53A\uC53C\uC53E", 5, "\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569", 6, "\uC572\uC576", 5, "\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],
+      ["9e41", "\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1", 7, "\uC5AA", 9, "\uC5B6"],
+      ["9e61", "\uC5B7\uC5BA\uC5BF", 4, "\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9", 6, "\uC5E2\uC5E4\uC5E6\uC5E7"],
+      ["9e81", "\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611", 6, "\uC61A\uC61D", 6, "\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649", 6, "\uC652\uC656", 5, "\uC65E\uC65F\uC661", 10, "\uC66D\uC66E\uC670\uC672", 5, "\uC67A\uC67B\uC67D\uC67E\uC67F\uC681", 6, "\uC68A\uC68C\uC68E", 5, "\uC696\uC697\uC699\uC69A\uC69B\uC69D", 6, "\uC6A6"],
+      ["9f41", "\uC6A8\uC6AA", 5, "\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB", 4, "\uC6C2\uC6C4\uC6C6", 5, "\uC6CE"],
+      ["9f61", "\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5", 6, "\uC6DE\uC6DF\uC6E2", 5, "\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],
+      ["9f81", "\uC6F3", 4, "\uC6FA\uC6FB\uC6FC\uC6FE", 5, "\uC706\uC707\uC709\uC70A\uC70B\uC70D", 6, "\uC716\uC718\uC71A", 5, "\uC722\uC723\uC725\uC726\uC727\uC729", 6, "\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745", 4, "\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761", 6, "\uC769\uC76A\uC76C", 7, "\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B", 4, "\uC7A2\uC7A7", 4, "\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],
+      ["a041", "\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2", 5, "\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1", 6, "\uC7D9\uC7DA\uC7DB\uC7DC"],
+      ["a061", "\uC7DE", 5, "\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED", 13],
+      ["a081", "\uC7FB", 4, "\uC802\uC803\uC805\uC806\uC807\uC809\uC80B", 4, "\uC812\uC814\uC817", 4, "\uC81E\uC81F\uC821\uC822\uC823\uC825", 6, "\uC82E\uC830\uC832", 5, "\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841", 6, "\uC84A\uC84B\uC84E", 5, "\uC855", 26, "\uC872\uC873\uC875\uC876\uC877\uC879\uC87B", 4, "\uC882\uC884\uC888\uC889\uC88A\uC88E", 5, "\uC895", 7, "\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],
+      ["a141", "\uC8A5\uC8A6\uC8A7\uC8A9", 18, "\uC8BE\uC8BF\uC8C0\uC8C1"],
+      ["a161", "\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD", 6, "\uC8D6\uC8D8\uC8DA", 5, "\uC8E2\uC8E3\uC8E5"],
+      ["a181", "\uC8E6", 14, "\uC8F6", 5, "\uC8FE\uC8FF\uC901\uC902\uC903\uC907", 4, "\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 9, "\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],
+      ["a241", "\uC910\uC912", 5, "\uC919", 18],
+      ["a261", "\uC92D", 6, "\uC935", 18],
+      ["a281", "\uC948", 7, "\uC952\uC953\uC955\uC956\uC957\uC959", 6, "\uC962\uC964", 7, "\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],
+      ["a341", "\uC971\uC972\uC973\uC975", 6, "\uC97D", 10, "\uC98A\uC98B\uC98D\uC98E\uC98F"],
+      ["a361", "\uC991", 6, "\uC99A\uC99C\uC99E", 16],
+      ["a381", "\uC9AF", 16, "\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB", 4, "\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01", 58, "\uFFE6\uFF3D", 32, "\uFFE3"],
+      ["a441", "\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2", 5, "\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],
+      ["a461", "\uCA05\uCA06\uCA07\uCA0A\uCA0E", 5, "\uCA15\uCA16\uCA17\uCA19", 12],
+      ["a481", "\uCA26\uCA27\uCA28\uCA2A", 28, "\u3131", 93],
+      ["a541", "\uCA47", 4, "\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55", 6, "\uCA5E\uCA62", 5, "\uCA69\uCA6A"],
+      ["a561", "\uCA6B", 17, "\uCA7E", 5, "\uCA85\uCA86"],
+      ["a581", "\uCA87", 16, "\uCA99", 14, "\u2170", 9],
+      ["a5b0", "\u2160", 9],
+      ["a5c1", "\u0391", 16, "\u03A3", 6],
+      ["a5e1", "\u03B1", 16, "\u03C3", 6],
+      ["a641", "\uCAA8", 19, "\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],
+      ["a661", "\uCAC6", 5, "\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA", 5, "\uCAE1", 6],
+      ["a681", "\uCAE8\uCAE9\uCAEA\uCAEB\uCAED", 6, "\uCAF5", 18, "\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543", 7],
+      ["a741", "\uCB0B", 4, "\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19", 6, "\uCB22", 7],
+      ["a761", "\uCB2A", 22, "\uCB42\uCB43\uCB44"],
+      ["a781", "\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51", 6, "\uCB5A\uCB5B\uCB5C\uCB5E", 5, "\uCB65", 7, "\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399", 9, "\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0", 9, "\u3380", 4, "\u33BA", 5, "\u3390", 4, "\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],
+      ["a841", "\uCB6D", 10, "\uCB7A", 14],
+      ["a861", "\uCB89", 18, "\uCB9D", 6],
+      ["a881", "\uCBA4", 19, "\uCBB9", 11, "\xC6\xD0\xAA\u0126"],
+      ["a8a6", "\u0132"],
+      ["a8a8", "\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],
+      ["a8b1", "\u3260", 27, "\u24D0", 25, "\u2460", 14, "\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],
+      ["a941", "\uCBC5", 14, "\uCBD5", 10],
+      ["a961", "\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA", 18],
+      ["a981", "\uCBFD", 14, "\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15", 6, "\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200", 27, "\u249C", 25, "\u2474", 14, "\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],
+      ["aa41", "\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31", 6, "\uCC3A\uCC3F", 4, "\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],
+      ["aa61", "\uCC4F", 4, "\uCC56\uCC5A", 5, "\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69", 6, "\uCC71\uCC72"],
+      ["aa81", "\uCC73\uCC74\uCC76", 29, "\u3041", 82],
+      ["ab41", "\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1", 6, "\uCCAA\uCCAE", 5, "\uCCB6\uCCB7\uCCB9"],
+      ["ab61", "\uCCBA\uCCBB\uCCBD", 6, "\uCCC6\uCCC8\uCCCA", 5, "\uCCD1\uCCD2\uCCD3\uCCD5", 5],
+      ["ab81", "\uCCDB", 8, "\uCCE5", 6, "\uCCED\uCCEE\uCCEF\uCCF1", 12, "\u30A1", 85],
+      ["ac41", "\uCCFE\uCCFF\uCD00\uCD02", 5, "\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11", 6, "\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],
+      ["ac61", "\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D", 11, "\uCD3A", 4],
+      ["ac81", "\uCD3F", 28, "\uCD5D\uCD5E\uCD5F\u0410", 5, "\u0401\u0416", 25],
+      ["acd1", "\u0430", 5, "\u0451\u0436", 25],
+      ["ad41", "\uCD61\uCD62\uCD63\uCD65", 6, "\uCD6E\uCD70\uCD72", 5, "\uCD79", 7],
+      ["ad61", "\uCD81", 6, "\uCD89", 10, "\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],
+      ["ad81", "\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA", 5, "\uCDB1", 18, "\uCDC5"],
+      ["ae41", "\uCDC6", 5, "\uCDCD\uCDCE\uCDCF\uCDD1", 16],
+      ["ae61", "\uCDE2", 5, "\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1", 6, "\uCDFA\uCDFC\uCDFE", 4],
+      ["ae81", "\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D", 6, "\uCE15\uCE16\uCE17\uCE18\uCE1A", 5, "\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],
+      ["af41", "\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36", 19],
+      ["af61", "\uCE4A", 13, "\uCE5A\uCE5B\uCE5D\uCE5E\uCE62", 5, "\uCE6A\uCE6C"],
+      ["af81", "\uCE6E", 5, "\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D", 6, "\uCE86\uCE88\uCE8A", 5, "\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],
+      ["b041", "\uCE9A", 5, "\uCEA2\uCEA6", 5, "\uCEAE", 12],
+      ["b061", "\uCEBB", 5, "\uCEC2", 19],
+      ["b081", "\uCED6", 13, "\uCEE6\uCEE7\uCEE9\uCEEA\uCEED", 6, "\uCEF6\uCEFA", 5, "\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10", 7, "\uAC19", 4, "\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],
+      ["b141", "\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09", 6, "\uCF12\uCF14\uCF16", 5, "\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],
+      ["b161", "\uCF25", 6, "\uCF2E\uCF32", 5, "\uCF39", 11],
+      ["b181", "\uCF45", 14, "\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D", 6, "\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],
+      ["b241", "\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79", 6, "\uCF81\uCF82\uCF83\uCF84\uCF86", 5, "\uCF8D"],
+      ["b261", "\uCF8E", 18, "\uCFA2", 5, "\uCFA9"],
+      ["b281", "\uCFAA", 5, "\uCFB1", 18, "\uCFC5", 6, "\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],
+      ["b341", "\uCFCC", 19, "\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],
+      ["b361", "\uCFEA", 5, "\uCFF2\uCFF4\uCFF6", 5, "\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005", 5],
+      ["b381", "\uD00B", 5, "\uD012", 5, "\uD019", 19, "\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB", 4, "\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],
+      ["b441", "\uD02E", 5, "\uD036\uD037\uD039\uD03A\uD03B\uD03D", 6, "\uD046\uD048\uD04A", 5],
+      ["b461", "\uD051\uD052\uD053\uD055\uD056\uD057\uD059", 6, "\uD061", 10, "\uD06E\uD06F"],
+      ["b481", "\uD071\uD072\uD073\uD075", 6, "\uD07E\uD07F\uD080\uD082", 18, "\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB", 4, "\uB2F3\uB2F4\uB2F5\uB2F7", 4, "\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],
+      ["b541", "\uD095", 14, "\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD", 5],
+      ["b561", "\uD0B3\uD0B6\uD0B8\uD0BA", 5, "\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA", 5, "\uD0D2\uD0D6", 4],
+      ["b581", "\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5", 6, "\uD0EE\uD0F2", 5, "\uD0F9", 11, "\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],
+      ["b641", "\uD105", 7, "\uD10E", 17],
+      ["b661", "\uD120", 15, "\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],
+      ["b681", "\uD13F\uD142\uD146", 5, "\uD14E\uD14F\uD151\uD152\uD153\uD155", 6, "\uD15E\uD160\uD162", 5, "\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],
+      ["b741", "\uD16E", 13, "\uD17D", 6, "\uD185\uD186\uD187\uD189\uD18A"],
+      ["b761", "\uD18B", 20, "\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],
+      ["b781", "\uD1A9", 6, "\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1", 14, "\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],
+      ["b841", "\uD1D0", 7, "\uD1D9", 17],
+      ["b861", "\uD1EB", 8, "\uD1F5\uD1F6\uD1F7\uD1F9", 13],
+      ["b881", "\uD208\uD20A", 5, "\uD211", 24, "\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE", 4, "\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],
+      ["b941", "\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235", 6, "\uD23E\uD240\uD242", 5, "\uD249\uD24A\uD24B\uD24C"],
+      ["b961", "\uD24D", 14, "\uD25D", 6, "\uD265\uD266\uD267\uD268"],
+      ["b981", "\uD269", 22, "\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14", 4, "\uBC1B", 4, "\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],
+      ["ba41", "\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296", 5, "\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5", 6, "\uD2AD"],
+      ["ba61", "\uD2AE\uD2AF\uD2B0\uD2B2", 5, "\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3", 4, "\uD2CA\uD2CC", 5],
+      ["ba81", "\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD", 6, "\uD2E6", 9, "\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],
+      ["bb41", "\uD2FB", 4, "\uD302\uD304\uD306", 5, "\uD30F\uD311\uD312\uD313\uD315\uD317", 4, "\uD31E\uD322\uD323"],
+      ["bb61", "\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331", 6, "\uD33A\uD33E", 5, "\uD346\uD347\uD348\uD349"],
+      ["bb81", "\uD34A", 31, "\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],
+      ["bc41", "\uD36A", 17, "\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],
+      ["bc61", "\uD388\uD389\uD38A\uD38B\uD38E\uD392", 5, "\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1", 6, "\uD3AA\uD3AC\uD3AE"],
+      ["bc81", "\uD3AF", 4, "\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD", 6, "\uD3C6\uD3C7\uD3CA", 5, "\uD3D1", 5, "\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C", 4, "\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],
+      ["bd41", "\uD3D7\uD3D9", 7, "\uD3E2\uD3E4", 7, "\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],
+      ["bd61", "\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402", 5, "\uD409", 13],
+      ["bd81", "\uD417", 5, "\uD41E", 25, "\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],
+      ["be41", "\uD438", 7, "\uD441\uD442\uD443\uD445", 14],
+      ["be61", "\uD454", 7, "\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465", 7, "\uD46E\uD470\uD471\uD472"],
+      ["be81", "\uD473", 4, "\uD47A\uD47B\uD47D\uD47E\uD481\uD483", 4, "\uD48A\uD48C\uD48E", 5, "\uD495", 8, "\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4", 6, "\uC5CC\uC5CE"],
+      ["bf41", "\uD49E", 10, "\uD4AA", 14],
+      ["bf61", "\uD4B9", 18, "\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],
+      ["bf81", "\uD4D6", 5, "\uD4DD\uD4DE\uD4E0", 7, "\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1", 6, "\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC", 5, "\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],
+      ["c041", "\uD4FE", 5, "\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D", 6, "\uD516\uD518", 5],
+      ["c061", "\uD51E", 25],
+      ["c081", "\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545", 6, "\uD54E\uD550\uD552", 5, "\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751", 7, "\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],
+      ["c141", "\uD564\uD566\uD567\uD56A\uD56C\uD56E", 5, "\uD576\uD577\uD579\uD57A\uD57B\uD57D", 6, "\uD586\uD58A\uD58B"],
+      ["c161", "\uD58C\uD58D\uD58E\uD58F\uD591", 19, "\uD5A6\uD5A7"],
+      ["c181", "\uD5A8", 31, "\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],
+      ["c241", "\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3", 4, "\uD5DA\uD5DC\uD5DE", 5, "\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],
+      ["c261", "\uD5EF", 4, "\uD5F6\uD5F8\uD5FA", 5, "\uD602\uD603\uD605\uD606\uD607\uD609", 6, "\uD612"],
+      ["c281", "\uD616", 5, "\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625", 7, "\uD62E", 9, "\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],
+      ["c341", "\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D", 4],
+      ["c361", "\uD662", 4, "\uD668\uD66A", 5, "\uD672\uD673\uD675", 11],
+      ["c381", "\uD681\uD682\uD684\uD686", 5, "\uD68E\uD68F\uD691\uD692\uD693\uD695", 7, "\uD69E\uD6A0\uD6A2", 5, "\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],
+      ["c441", "\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1", 7, "\uD6BA\uD6BC", 7, "\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],
+      ["c461", "\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA", 5, "\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9", 4],
+      ["c481", "\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6", 5, "\uD6FE\uD6FF\uD701\uD702\uD703\uD705", 11, "\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],
+      ["c541", "\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721", 6, "\uD72A\uD72C\uD72E", 5, "\uD736\uD737\uD739"],
+      ["c561", "\uD73A\uD73B\uD73D", 6, "\uD745\uD746\uD748\uD74A", 5, "\uD752\uD753\uD755\uD75A", 4],
+      ["c581", "\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775", 6, "\uD77E\uD77F\uD780\uD782", 5, "\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],
+      ["c641", "\uD78D\uD78E\uD78F\uD791", 6, "\uD79A\uD79C\uD79E", 5],
+      ["c6a1", "\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],
+      ["c7a1", "\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],
+      ["c8a1", "\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],
+      ["caa1", "\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],
+      ["cba1", "\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],
+      ["cca1", "\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],
+      ["cda1", "\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],
+      ["cea1", "\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],
+      ["cfa1", "\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],
+      ["d0a1", "\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],
+      ["d1a1", "\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E", 5, "\u90A3\uF914", 4, "\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],
+      ["d2a1", "\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928", 4, "\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933", 5, "\u99D1\uF939", 10, "\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A", 7, "\u5AE9\u8A25\u677B\u7D10\uF952", 5, "\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],
+      ["d3a1", "\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],
+      ["d4a1", "\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],
+      ["d5a1", "\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],
+      ["d6a1", "\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],
+      ["d7a1", "\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],
+      ["d8a1", "\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],
+      ["d9a1", "\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],
+      ["daa1", "\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],
+      ["dba1", "\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],
+      ["dca1", "\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],
+      ["dda1", "\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],
+      ["dea1", "\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],
+      ["dfa1", "\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],
+      ["e0a1", "\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],
+      ["e1a1", "\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],
+      ["e2a1", "\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],
+      ["e3a1", "\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],
+      ["e4a1", "\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],
+      ["e5a1", "\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],
+      ["e6a1", "\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],
+      ["e7a1", "\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],
+      ["e8a1", "\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],
+      ["e9a1", "\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],
+      ["eaa1", "\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],
+      ["eba1", "\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],
+      ["eca1", "\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],
+      ["eda1", "\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],
+      ["eea1", "\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],
+      ["efa1", "\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],
+      ["f0a1", "\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],
+      ["f1a1", "\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],
+      ["f2a1", "\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],
+      ["f3a1", "\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],
+      ["f4a1", "\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],
+      ["f5a1", "\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],
+      ["f6a1", "\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],
+      ["f7a1", "\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],
+      ["f8a1", "\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],
+      ["f9a1", "\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],
+      ["faa1", "\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],
+      ["fba1", "\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],
+      ["fca1", "\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],
+      ["fda1", "\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json
+var require_cp950 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],
+      ["a1a1", "\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62", 4, "\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],
+      ["a240", "\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581", 7, "\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],
+      ["a2a1", "\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10", 9, "\u2160", 9, "\u3021", 8, "\u5341\u5344\u5345\uFF21", 25, "\uFF41", 21],
+      ["a340", "\uFF57\uFF58\uFF59\uFF5A\u0391", 16, "\u03A3", 6, "\u03B1", 16, "\u03C3", 6, "\u3105", 10],
+      ["a3a1", "\u3110", 25, "\u02D9\u02C9\u02CA\u02C7\u02CB"],
+      ["a3e1", "\u20AC"],
+      ["a440", "\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],
+      ["a4a1", "\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],
+      ["a540", "\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],
+      ["a5a1", "\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],
+      ["a640", "\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],
+      ["a6a1", "\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],
+      ["a740", "\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],
+      ["a7a1", "\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],
+      ["a840", "\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],
+      ["a8a1", "\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],
+      ["a940", "\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],
+      ["a9a1", "\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],
+      ["aa40", "\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],
+      ["aaa1", "\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],
+      ["ab40", "\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],
+      ["aba1", "\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],
+      ["ac40", "\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],
+      ["aca1", "\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],
+      ["ad40", "\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],
+      ["ada1", "\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],
+      ["ae40", "\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],
+      ["aea1", "\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],
+      ["af40", "\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],
+      ["afa1", "\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],
+      ["b040", "\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],
+      ["b0a1", "\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],
+      ["b140", "\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],
+      ["b1a1", "\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],
+      ["b240", "\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],
+      ["b2a1", "\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],
+      ["b340", "\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],
+      ["b3a1", "\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],
+      ["b440", "\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],
+      ["b4a1", "\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],
+      ["b540", "\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],
+      ["b5a1", "\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],
+      ["b640", "\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],
+      ["b6a1", "\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],
+      ["b740", "\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],
+      ["b7a1", "\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],
+      ["b840", "\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],
+      ["b8a1", "\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],
+      ["b940", "\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],
+      ["b9a1", "\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],
+      ["ba40", "\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],
+      ["baa1", "\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],
+      ["bb40", "\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],
+      ["bba1", "\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],
+      ["bc40", "\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],
+      ["bca1", "\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],
+      ["bd40", "\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],
+      ["bda1", "\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],
+      ["be40", "\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],
+      ["bea1", "\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],
+      ["bf40", "\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],
+      ["bfa1", "\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],
+      ["c040", "\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],
+      ["c0a1", "\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],
+      ["c140", "\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],
+      ["c1a1", "\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],
+      ["c240", "\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],
+      ["c2a1", "\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],
+      ["c340", "\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],
+      ["c3a1", "\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],
+      ["c440", "\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],
+      ["c4a1", "\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],
+      ["c540", "\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],
+      ["c5a1", "\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],
+      ["c640", "\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],
+      ["c940", "\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],
+      ["c9a1", "\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],
+      ["ca40", "\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],
+      ["caa1", "\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],
+      ["cb40", "\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],
+      ["cba1", "\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],
+      ["cc40", "\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],
+      ["cca1", "\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],
+      ["cd40", "\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],
+      ["cda1", "\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],
+      ["ce40", "\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],
+      ["cea1", "\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],
+      ["cf40", "\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],
+      ["cfa1", "\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],
+      ["d040", "\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],
+      ["d0a1", "\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],
+      ["d140", "\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],
+      ["d1a1", "\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],
+      ["d240", "\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],
+      ["d2a1", "\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],
+      ["d340", "\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],
+      ["d3a1", "\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],
+      ["d440", "\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],
+      ["d4a1", "\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],
+      ["d540", "\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],
+      ["d5a1", "\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],
+      ["d640", "\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],
+      ["d6a1", "\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],
+      ["d740", "\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],
+      ["d7a1", "\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],
+      ["d840", "\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],
+      ["d8a1", "\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],
+      ["d940", "\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],
+      ["d9a1", "\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],
+      ["da40", "\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],
+      ["daa1", "\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],
+      ["db40", "\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],
+      ["dba1", "\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],
+      ["dc40", "\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],
+      ["dca1", "\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],
+      ["dd40", "\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],
+      ["dda1", "\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],
+      ["de40", "\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],
+      ["dea1", "\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],
+      ["df40", "\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],
+      ["dfa1", "\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],
+      ["e040", "\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],
+      ["e0a1", "\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],
+      ["e140", "\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],
+      ["e1a1", "\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],
+      ["e240", "\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],
+      ["e2a1", "\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],
+      ["e340", "\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],
+      ["e3a1", "\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],
+      ["e440", "\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],
+      ["e4a1", "\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],
+      ["e540", "\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],
+      ["e5a1", "\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],
+      ["e640", "\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],
+      ["e6a1", "\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],
+      ["e740", "\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],
+      ["e7a1", "\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],
+      ["e840", "\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],
+      ["e8a1", "\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],
+      ["e940", "\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],
+      ["e9a1", "\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],
+      ["ea40", "\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],
+      ["eaa1", "\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],
+      ["eb40", "\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],
+      ["eba1", "\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],
+      ["ec40", "\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],
+      ["eca1", "\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],
+      ["ed40", "\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],
+      ["eda1", "\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],
+      ["ee40", "\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],
+      ["eea1", "\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],
+      ["ef40", "\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],
+      ["efa1", "\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],
+      ["f040", "\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],
+      ["f0a1", "\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],
+      ["f140", "\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],
+      ["f1a1", "\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],
+      ["f240", "\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],
+      ["f2a1", "\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],
+      ["f340", "\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],
+      ["f3a1", "\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],
+      ["f440", "\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],
+      ["f4a1", "\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],
+      ["f540", "\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],
+      ["f5a1", "\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],
+      ["f640", "\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],
+      ["f6a1", "\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],
+      ["f740", "\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],
+      ["f7a1", "\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],
+      ["f840", "\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],
+      ["f8a1", "\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],
+      ["f940", "\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],
+      ["f9a1", "\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json
+var require_big5_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) {
+    module2.exports = [
+      ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],
+      ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],
+      ["87a1", "\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],
+      ["8840", "\u31C0", 4, "\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],
+      ["88a1", "\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],
+      ["8940", "\u{2A3A9}\u{21145}"],
+      ["8943", "\u650A"],
+      ["8946", "\u4E3D\u6EDD\u9D4E\u91DF"],
+      ["894c", "\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],
+      ["89a1", "\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],
+      ["89ab", "\u918C\u78B8\u915E\u80BC"],
+      ["89b0", "\u8D0B\u80F6\u{209E7}"],
+      ["89b5", "\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],
+      ["89c1", "\u6E9A\u823E\u7519"],
+      ["89c5", "\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],
+      ["8a40", "\u{27D84}\u5525"],
+      ["8a43", "\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],
+      ["8a64", "\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],
+      ["8a76", "\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],
+      ["8aa1", "\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],
+      ["8aac", "\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],
+      ["8ab2", "\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],
+      ["8abb", "\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],
+      ["8ac9", "\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],
+      ["8ace", "\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],
+      ["8adf", "\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],
+      ["8af6", "\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],
+      ["8b40", "\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],
+      ["8b55", "\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],
+      ["8ba1", "\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],
+      ["8bde", "\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],
+      ["8c40", "\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],
+      ["8ca1", "\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],
+      ["8ca7", "\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],
+      ["8cc9", "\u9868\u676B\u4276\u573D"],
+      ["8cce", "\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],
+      ["8ce6", "\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],
+      ["8d40", "\u{20B9F}"],
+      ["8d42", "\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],
+      ["8da1", "\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],
+      ["8e40", "\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],
+      ["8ea1", "\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],
+      ["8f40", "\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],
+      ["8fa1", "\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],
+      ["9040", "\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],
+      ["90a1", "\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],
+      ["9140", "\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],
+      ["91a1", "\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],
+      ["9240", "\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],
+      ["92a1", "\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],
+      ["9340", "\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],
+      ["93a1", "\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],
+      ["9440", "\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],
+      ["94a1", "\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],
+      ["9540", "\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],
+      ["95a1", "\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],
+      ["9640", "\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],
+      ["96a1", "\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],
+      ["9740", "\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],
+      ["97a1", "\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],
+      ["9840", "\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],
+      ["98a1", "\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],
+      ["9940", "\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],
+      ["99a1", "\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],
+      ["9a40", "\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],
+      ["9aa1", "\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],
+      ["9b40", "\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],
+      ["9b62", "\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],
+      ["9ba1", "\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],
+      ["9c40", "\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],
+      ["9ca1", "\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],
+      ["9d40", "\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],
+      ["9da1", "\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],
+      ["9e40", "\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],
+      ["9ea1", "\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],
+      ["9ead", "\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],
+      ["9ec5", "\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],
+      ["9ef5", "\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],
+      ["9f40", "\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],
+      ["9f4f", "\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],
+      ["9fa1", "\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],
+      ["9fae", "\u9159\u9681\u915C"],
+      ["9fb2", "\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],
+      ["9fc1", "\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],
+      ["9fc9", "\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],
+      ["9fdb", "\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],
+      ["9fe7", "\u6BFA\u8818\u7F78"],
+      ["9feb", "\u5620\u{2A64A}\u8E77\u9F53"],
+      ["9ff0", "\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],
+      ["a040", "\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],
+      ["a055", "\u{2183B}\u{26E05}"],
+      ["a058", "\u8A7E\u{2251B}"],
+      ["a05b", "\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],
+      ["a063", "\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],
+      ["a073", "\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],
+      ["a0a1", "\u5D57\u{28BC2}\u8FDA\u{28E39}"],
+      ["a0a6", "\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],
+      ["a0ae", "\u77FE"],
+      ["a0b0", "\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],
+      ["a0d4", "\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],
+      ["a0e2", "\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],
+      ["a3c0", "\u2400", 31, "\u2421"],
+      ["c6a1", "\u2460", 9, "\u2474", 9, "\u2170", 9, "\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041", 23],
+      ["c740", "\u3059", 58, "\u30A1\u30A2\u30A3\u30A4"],
+      ["c7a1", "\u30A5", 81, "\u0410", 5, "\u0401\u0416", 4],
+      ["c840", "\u041B", 26, "\u0451\u0436", 25, "\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],
+      ["c8a1", "\u9FB0\u5188\u9FB1\u{27607}"],
+      ["c8cd", "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],
+      ["c8f5", "\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],
+      ["f9fe", "\uFFED"],
+      ["fa40", "\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],
+      ["faa1", "\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],
+      ["fb40", "\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],
+      ["fba1", "\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],
+      ["fc40", "\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],
+      ["fca1", "\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],
+      ["fd40", "\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],
+      ["fda1", "\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],
+      ["fe40", "\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],
+      ["fea1", "\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js
+var require_dbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // == Japanese/ShiftJIS ====================================================
+      // All japanese encodings are based on JIS X set of standards:
+      // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF.
+      // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes. 
+      //              Has several variations in 1978, 1983, 1990 and 1997.
+      // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead.
+      // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233.
+      //              2 planes, first is superset of 0208, second - revised 0212.
+      //              Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx)
+      // Byte encodings are:
+      //  * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte
+      //               encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC.
+      //               Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI.
+      //  * EUC-JP:    Up to 3 bytes per character. Used mostly on *nixes.
+      //               0x00-0x7F       - lower part of 0201
+      //               0x8E, 0xA1-0xDF - upper part of 0201
+      //               (0xA1-0xFE)x2   - 0208 plane (94x94).
+      //               0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94).
+      //  * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon.
+      //               Used as-is in ISO2022 family.
+      //  * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII, 
+      //                0201-1976 Roman, 0208-1978, 0208-1983.
+      //  * ISO2022-JP-1: Adds esc seq for 0212-1990.
+      //  * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7.
+      //  * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2.
+      //  * ISO2022-JP-2004: Adds 0213-2004 Plane 1.
+      //
+      // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes.
+      //
+      // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html
+      "shiftjis": {
+        type: "_dbcs",
+        table: function() {
+          return require_shiftjis();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 },
+        encodeSkipVals: [{ from: 60736, to: 63808 }]
+      },
+      "csshiftjis": "shiftjis",
+      "mskanji": "shiftjis",
+      "sjis": "shiftjis",
+      "windows31j": "shiftjis",
+      "ms31j": "shiftjis",
+      "xsjis": "shiftjis",
+      "windows932": "shiftjis",
+      "ms932": "shiftjis",
+      "932": "shiftjis",
+      "cp932": "shiftjis",
+      "eucjp": {
+        type: "_dbcs",
+        table: function() {
+          return require_eucjp();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 }
+      },
+      // TODO: KDDI extension to Shift_JIS
+      // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes.
+      // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars.
+      // == Chinese/GBK ==========================================================
+      // http://en.wikipedia.org/wiki/GBK
+      // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder
+      // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936
+      "gb2312": "cp936",
+      "gb231280": "cp936",
+      "gb23121980": "cp936",
+      "csgb2312": "cp936",
+      "csiso58gb231280": "cp936",
+      "euccn": "cp936",
+      // Microsoft's CP936 is a subset and approximation of GBK.
+      "windows936": "cp936",
+      "ms936": "cp936",
+      "936": "cp936",
+      "cp936": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936();
+        }
+      },
+      // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other.
+      "gbk": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        }
+      },
+      "xgbk": "gbk",
+      "isoir58": "gbk",
+      // GB18030 is an algorithmic extension of GBK.
+      // Main source: https://www.w3.org/TR/encoding/#gbk-encoder
+      // http://icu-project.org/docs/papers/gb18030.html
+      // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml
+      // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0
+      "gb18030": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        },
+        gb18030: function() {
+          return require_gb18030_ranges();
+        },
+        encodeSkipVals: [128],
+        encodeAdd: { "\u20AC": 41699 }
+      },
+      "chinese": "gb18030",
+      // == Korean ===============================================================
+      // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same.
+      "windows949": "cp949",
+      "ms949": "cp949",
+      "949": "cp949",
+      "cp949": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp949();
+        }
+      },
+      "cseuckr": "cp949",
+      "csksc56011987": "cp949",
+      "euckr": "cp949",
+      "isoir149": "cp949",
+      "korean": "cp949",
+      "ksc56011987": "cp949",
+      "ksc56011989": "cp949",
+      "ksc5601": "cp949",
+      // == Big5/Taiwan/Hong Kong ================================================
+      // There are lots of tables for Big5 and cp950. Please see the following links for history:
+      // http://moztw.org/docs/big5/  http://www.haible.de/bruno/charsets/conversion-tables/Big5.html
+      // Variations, in roughly number of defined chars:
+      //  * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT
+      //  * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/
+      //  * Big5-2003 (Taiwan standard) almost superset of cp950.
+      //  * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers.
+      //  * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard. 
+      //    many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years.
+      //    Plus, it has 4 combining sequences.
+      //    Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299
+      //    because big5-hkscs is the only encoding to include astral characters in non-algorithmic way.
+      //    Implementations are not consistent within browsers; sometimes labeled as just big5.
+      //    MS Internet Explorer switches from big5 to big5-hkscs when a patch applied.
+      //    Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31
+      //    In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s.
+      //    Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt
+      //                   http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt
+      // 
+      // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder
+      // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong.
+      "windows950": "cp950",
+      "ms950": "cp950",
+      "950": "cp950",
+      "cp950": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950();
+        }
+      },
+      // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus.
+      "big5": "big5hkscs",
+      "big5hkscs": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950().concat(require_big5_added());
+        },
+        encodeSkipVals: [
+          // Although Encoding Standard says we should avoid encoding to HKSCS area (See Step 1 of
+          // https://encoding.spec.whatwg.org/#index-big5-pointer), we still do it to increase compatibility with ICU.
+          // But if a single unicode point can be encoded both as HKSCS and regular Big5, we prefer the latter.
+          36457,
+          36463,
+          36478,
+          36523,
+          36532,
+          36557,
+          36560,
+          36695,
+          36713,
+          36718,
+          36811,
+          36862,
+          36973,
+          36986,
+          37060,
+          37084,
+          37105,
+          37311,
+          37551,
+          37552,
+          37553,
+          37554,
+          37585,
+          37959,
+          38090,
+          38361,
+          38652,
+          39285,
+          39798,
+          39800,
+          39803,
+          39878,
+          39902,
+          39916,
+          39926,
+          40002,
+          40019,
+          40034,
+          40040,
+          40043,
+          40055,
+          40124,
+          40125,
+          40144,
+          40279,
+          40282,
+          40388,
+          40431,
+          40443,
+          40617,
+          40687,
+          40701,
+          40800,
+          40907,
+          41079,
+          41180,
+          41183,
+          36812,
+          37576,
+          38468,
+          38637,
+          // Step 2 of https://encoding.spec.whatwg.org/#index-big5-pointer: Use last pointer for U+2550, U+255E, U+2561, U+256A, U+5341, or U+5345
+          41636,
+          41637,
+          41639,
+          41638,
+          41676,
+          41678
+        ]
+      },
+      "cnbig5": "big5hkscs",
+      "csbig5": "big5hkscs",
+      "xxbig5": "big5hkscs"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js
+var require_encodings = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js"(exports2, module2) {
+    "use strict";
+    var modules = [
+      require_internal(),
+      require_utf32(),
+      require_utf16(),
+      require_utf7(),
+      require_sbcs_codec(),
+      require_sbcs_data(),
+      require_sbcs_data_generated(),
+      require_dbcs_codec(),
+      require_dbcs_data()
+    ];
+    for (i = 0; i < modules.length; i++) {
+      module2 = modules[i];
+      for (enc in module2)
+        if (Object.prototype.hasOwnProperty.call(module2, enc))
+          exports2[enc] = module2[enc];
+    }
+    var module2;
+    var enc;
+    var i;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js
+var require_streams = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = function(stream_module) {
+      var Transform = stream_module.Transform;
+      function IconvLiteEncoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.decodeStrings = false;
+        Transform.call(this, options);
+      }
+      IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteEncoderStream }
+      });
+      IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (typeof chunk != "string")
+          return done(new Error("Iconv encoding stream needs strings as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype.collect = function(cb) {
+        var chunks = [];
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          chunks.push(chunk);
+        });
+        this.on("end", function() {
+          cb(null, Buffer2.concat(chunks));
+        });
+        return this;
+      };
+      function IconvLiteDecoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.encoding = this.encoding = "utf8";
+        Transform.call(this, options);
+      }
+      IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteDecoderStream }
+      });
+      IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (!Buffer2.isBuffer(chunk) && !(chunk instanceof Uint8Array))
+          return done(new Error("Iconv decoding stream needs buffers as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype.collect = function(cb) {
+        var res = "";
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          res += chunk;
+        });
+        this.on("end", function() {
+          cb(null, res);
+        });
+        return this;
+      };
+      return {
+        IconvLiteEncoderStream,
+        IconvLiteDecoderStream
+      };
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js
+var require_lib8 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    var bomHandling = require_bom_handling();
+    var iconv = module2.exports;
+    iconv.encodings = null;
+    iconv.defaultCharUnicode = "\uFFFD";
+    iconv.defaultCharSingleByte = "?";
+    iconv.encode = function encode(str, encoding, options) {
+      str = "" + (str || "");
+      var encoder = iconv.getEncoder(encoding, options);
+      var res = encoder.write(str);
+      var trail = encoder.end();
+      return trail && trail.length > 0 ? Buffer2.concat([res, trail]) : res;
+    };
+    iconv.decode = function decode(buf, encoding, options) {
+      if (typeof buf === "string") {
+        if (!iconv.skipDecodeWarning) {
+          console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding");
+          iconv.skipDecodeWarning = true;
+        }
+        buf = Buffer2.from("" + (buf || ""), "binary");
+      }
+      var decoder2 = iconv.getDecoder(encoding, options);
+      var res = decoder2.write(buf);
+      var trail = decoder2.end();
+      return trail ? res + trail : res;
+    };
+    iconv.encodingExists = function encodingExists(enc) {
+      try {
+        iconv.getCodec(enc);
+        return true;
+      } catch (e) {
+        return false;
+      }
+    };
+    iconv.toEncoding = iconv.encode;
+    iconv.fromEncoding = iconv.decode;
+    iconv._codecDataCache = {};
+    iconv.getCodec = function getCodec(encoding) {
+      if (!iconv.encodings)
+        iconv.encodings = require_encodings();
+      var enc = iconv._canonicalizeEncoding(encoding);
+      var codecOptions = {};
+      while (true) {
+        var codec = iconv._codecDataCache[enc];
+        if (codec)
+          return codec;
+        var codecDef = iconv.encodings[enc];
+        switch (typeof codecDef) {
+          case "string":
+            enc = codecDef;
+            break;
+          case "object":
+            for (var key in codecDef)
+              codecOptions[key] = codecDef[key];
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            enc = codecDef.type;
+            break;
+          case "function":
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            codec = new codecDef(codecOptions, iconv);
+            iconv._codecDataCache[codecOptions.encodingName] = codec;
+            return codec;
+          default:
+            throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '" + enc + "')");
+        }
+      }
+    };
+    iconv._canonicalizeEncoding = function(encoding) {
+      return ("" + encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, "");
+    };
+    iconv.getEncoder = function getEncoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), encoder = new codec.encoder(options, codec);
+      if (codec.bomAware && options && options.addBOM)
+        encoder = new bomHandling.PrependBOM(encoder, options);
+      return encoder;
+    };
+    iconv.getDecoder = function getDecoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), decoder2 = new codec.decoder(options, codec);
+      if (codec.bomAware && !(options && options.stripBOM === false))
+        decoder2 = new bomHandling.StripBOM(decoder2, options);
+      return decoder2;
+    };
+    iconv.enableStreamingAPI = function enableStreamingAPI(stream_module2) {
+      if (iconv.supportsStreams)
+        return;
+      var streams = require_streams()(stream_module2);
+      iconv.IconvLiteEncoderStream = streams.IconvLiteEncoderStream;
+      iconv.IconvLiteDecoderStream = streams.IconvLiteDecoderStream;
+      iconv.encodeStream = function encodeStream(encoding, options) {
+        return new iconv.IconvLiteEncoderStream(iconv.getEncoder(encoding, options), options);
+      };
+      iconv.decodeStream = function decodeStream(encoding, options) {
+        return new iconv.IconvLiteDecoderStream(iconv.getDecoder(encoding, options), options);
+      };
+      iconv.supportsStreams = true;
+    };
+    var stream_module;
+    try {
+      stream_module = require("stream");
+    } catch (e) {
+    }
+    if (stream_module && stream_module.Transform) {
+      iconv.enableStreamingAPI(stream_module);
+    } else {
+      iconv.encodeStream = iconv.decodeStream = function() {
+        throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.");
+      };
+    }
+    if (false) {
+      console.error("iconv-lite warning: js files use non-utf8 encoding. See https://github.com/ashtuchkin/iconv-lite/wiki/Javascript-source-file-encodings for more info.");
+    }
+  }
+});
+
+// ../../../node_modules/encoding/lib/encoding.js
+var require_encoding = __commonJS({
+  "../../../node_modules/encoding/lib/encoding.js"(exports2, module2) {
+    "use strict";
+    var iconvLite = require_lib8();
+    module2.exports.convert = convert3;
+    function convert3(str, to, from) {
+      from = checkEncoding(from || "UTF-8");
+      to = checkEncoding(to || "UTF-8");
+      str = str || "";
+      var result;
+      if (from !== "UTF-8" && typeof str === "string") {
+        str = Buffer.from(str, "binary");
+      }
+      if (from === to) {
+        if (typeof str === "string") {
+          result = Buffer.from(str);
+        } else {
+          result = str;
+        }
+      } else {
+        try {
+          result = convertIconvLite(str, to, from);
+        } catch (E) {
+          console.error(E);
+          result = str;
+        }
+      }
+      if (typeof result === "string") {
+        result = Buffer.from(result, "utf-8");
+      }
+      return result;
+    }
+    function convertIconvLite(str, to, from) {
+      if (to === "UTF-8") {
+        return iconvLite.decode(str, from);
+      } else if (from === "UTF-8") {
+        return iconvLite.encode(str, to);
+      } else {
+        return iconvLite.encode(iconvLite.decode(str, from), to);
+      }
+    }
+    function checkEncoding(name) {
+      return (name || "").toString().trim().replace(/^latin[\-_]?(\d+)$/i, "ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i, "WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i, "UTF-$1").replace(/^ks_c_5601\-1987$/i, "CP949").replace(/^us[\-_]?ascii$/i, "ASCII").toUpperCase();
+    }
+  }
+});
+
+// node_modules/node-fetch/lib/index.js
+var require_lib9 = __commonJS({
+  "node_modules/node-fetch/lib/index.js"(exports2, module2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    function _interopDefault(ex) {
+      return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex;
+    }
+    var Stream = _interopDefault(require("stream"));
+    var http = _interopDefault(require("http"));
+    var Url = _interopDefault(require("url"));
+    var whatwgUrl = _interopDefault(require_public_api());
+    var https2 = _interopDefault(require("https"));
+    var zlib3 = _interopDefault(require("zlib"));
+    var Readable = Stream.Readable;
+    var BUFFER = /* @__PURE__ */ Symbol("buffer");
+    var TYPE = /* @__PURE__ */ Symbol("type");
+    var Blob2 = class _Blob {
+      constructor() {
+        this[TYPE] = "";
+        const blobParts = arguments[0];
+        const options = arguments[1];
+        const buffers = [];
+        let size = 0;
+        if (blobParts) {
+          const a = blobParts;
+          const length = Number(a.length);
+          for (let i = 0; i < length; i++) {
+            const element = a[i];
+            let buffer;
+            if (element instanceof Buffer) {
+              buffer = element;
+            } else if (ArrayBuffer.isView(element)) {
+              buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);
+            } else if (element instanceof ArrayBuffer) {
+              buffer = Buffer.from(element);
+            } else if (element instanceof _Blob) {
+              buffer = element[BUFFER];
+            } else {
+              buffer = Buffer.from(typeof element === "string" ? element : String(element));
+            }
+            size += buffer.length;
+            buffers.push(buffer);
+          }
+        }
+        this[BUFFER] = Buffer.concat(buffers);
+        let type = options && options.type !== void 0 && String(options.type).toLowerCase();
+        if (type && !/[^\u0020-\u007E]/.test(type)) {
+          this[TYPE] = type;
+        }
+      }
+      get size() {
+        return this[BUFFER].length;
+      }
+      get type() {
+        return this[TYPE];
+      }
+      text() {
+        return Promise.resolve(this[BUFFER].toString());
+      }
+      arrayBuffer() {
+        const buf = this[BUFFER];
+        const ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        return Promise.resolve(ab);
+      }
+      stream() {
+        const readable = new Readable();
+        readable._read = function() {
+        };
+        readable.push(this[BUFFER]);
+        readable.push(null);
+        return readable;
+      }
+      toString() {
+        return "[object Blob]";
+      }
+      slice() {
+        const size = this.size;
+        const start = arguments[0];
+        const end = arguments[1];
+        let relativeStart, relativeEnd;
+        if (start === void 0) {
+          relativeStart = 0;
+        } else if (start < 0) {
+          relativeStart = Math.max(size + start, 0);
+        } else {
+          relativeStart = Math.min(start, size);
+        }
+        if (end === void 0) {
+          relativeEnd = size;
+        } else if (end < 0) {
+          relativeEnd = Math.max(size + end, 0);
+        } else {
+          relativeEnd = Math.min(end, size);
+        }
+        const span = Math.max(relativeEnd - relativeStart, 0);
+        const buffer = this[BUFFER];
+        const slicedBuffer = buffer.slice(relativeStart, relativeStart + span);
+        const blob = new _Blob([], { type: arguments[2] });
+        blob[BUFFER] = slicedBuffer;
+        return blob;
+      }
+    };
+    Object.defineProperties(Blob2.prototype, {
+      size: { enumerable: true },
+      type: { enumerable: true },
+      slice: { enumerable: true }
+    });
+    Object.defineProperty(Blob2.prototype, Symbol.toStringTag, {
+      value: "Blob",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function FetchError(message, type, systemError) {
+      Error.call(this, message);
+      this.message = message;
+      this.type = type;
+      if (systemError) {
+        this.code = this.errno = systemError.code;
+      }
+      Error.captureStackTrace(this, this.constructor);
+    }
+    FetchError.prototype = Object.create(Error.prototype);
+    FetchError.prototype.constructor = FetchError;
+    FetchError.prototype.name = "FetchError";
+    var convert3;
+    try {
+      convert3 = require_encoding().convert;
+    } catch (e) {
+    }
+    var INTERNALS = /* @__PURE__ */ Symbol("Body internals");
+    var PassThrough = Stream.PassThrough;
+    function Body(body) {
+      var _this = this;
+      var _ref = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, _ref$size = _ref.size;
+      let size = _ref$size === void 0 ? 0 : _ref$size;
+      var _ref$timeout = _ref.timeout;
+      let timeout = _ref$timeout === void 0 ? 0 : _ref$timeout;
+      if (body == null) {
+        body = null;
+      } else if (isURLSearchParams(body)) {
+        body = Buffer.from(body.toString());
+      } else if (isBlob2(body)) ;
+      else if (Buffer.isBuffer(body)) ;
+      else if (Object.prototype.toString.call(body) === "[object ArrayBuffer]") {
+        body = Buffer.from(body);
+      } else if (ArrayBuffer.isView(body)) {
+        body = Buffer.from(body.buffer, body.byteOffset, body.byteLength);
+      } else if (body instanceof Stream) ;
+      else {
+        body = Buffer.from(String(body));
+      }
+      this[INTERNALS] = {
+        body,
+        disturbed: false,
+        error: null
+      };
+      this.size = size;
+      this.timeout = timeout;
+      if (body instanceof Stream) {
+        body.on("error", function(err) {
+          const error = err.name === "AbortError" ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, "system", err);
+          _this[INTERNALS].error = error;
+        });
+      }
+    }
+    Body.prototype = {
+      get body() {
+        return this[INTERNALS].body;
+      },
+      get bodyUsed() {
+        return this[INTERNALS].disturbed;
+      },
+      /**
+       * Decode response as ArrayBuffer
+       *
+       * @return  Promise
+       */
+      arrayBuffer() {
+        return consumeBody.call(this).then(function(buf) {
+          return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        });
+      },
+      /**
+       * Return raw response as Blob
+       *
+       * @return Promise
+       */
+      blob() {
+        let ct = this.headers && this.headers.get("content-type") || "";
+        return consumeBody.call(this).then(function(buf) {
+          return Object.assign(
+            // Prevent copying
+            new Blob2([], {
+              type: ct.toLowerCase()
+            }),
+            {
+              [BUFFER]: buf
+            }
+          );
+        });
+      },
+      /**
+       * Decode response as json
+       *
+       * @return  Promise
+       */
+      json() {
+        var _this2 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          try {
+            return JSON.parse(buffer.toString());
+          } catch (err) {
+            return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, "invalid-json"));
+          }
+        });
+      },
+      /**
+       * Decode response as text
+       *
+       * @return  Promise
+       */
+      text() {
+        return consumeBody.call(this).then(function(buffer) {
+          return buffer.toString();
+        });
+      },
+      /**
+       * Decode response as buffer (non-spec api)
+       *
+       * @return  Promise
+       */
+      buffer() {
+        return consumeBody.call(this);
+      },
+      /**
+       * Decode response as text, while automatically detecting the encoding and
+       * trying to decode to UTF-8 (non-spec api)
+       *
+       * @return  Promise
+       */
+      textConverted() {
+        var _this3 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          return convertBody(buffer, _this3.headers);
+        });
+      }
+    };
+    Object.defineProperties(Body.prototype, {
+      body: { enumerable: true },
+      bodyUsed: { enumerable: true },
+      arrayBuffer: { enumerable: true },
+      blob: { enumerable: true },
+      json: { enumerable: true },
+      text: { enumerable: true }
+    });
+    Body.mixIn = function(proto) {
+      for (const name of Object.getOwnPropertyNames(Body.prototype)) {
+        if (!(name in proto)) {
+          const desc = Object.getOwnPropertyDescriptor(Body.prototype, name);
+          Object.defineProperty(proto, name, desc);
+        }
+      }
+    };
+    function consumeBody() {
+      var _this4 = this;
+      if (this[INTERNALS].disturbed) {
+        return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));
+      }
+      this[INTERNALS].disturbed = true;
+      if (this[INTERNALS].error) {
+        return Body.Promise.reject(this[INTERNALS].error);
+      }
+      let body = this.body;
+      if (body === null) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      if (isBlob2(body)) {
+        body = body.stream();
+      }
+      if (Buffer.isBuffer(body)) {
+        return Body.Promise.resolve(body);
+      }
+      if (!(body instanceof Stream)) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      let accum = [];
+      let accumBytes = 0;
+      let abort = false;
+      return new Body.Promise(function(resolve6, reject) {
+        let resTimeout;
+        if (_this4.timeout) {
+          resTimeout = setTimeout(function() {
+            abort = true;
+            reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, "body-timeout"));
+          }, _this4.timeout);
+        }
+        body.on("error", function(err) {
+          if (err.name === "AbortError") {
+            abort = true;
+            reject(err);
+          } else {
+            reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+        body.on("data", function(chunk) {
+          if (abort || chunk === null) {
+            return;
+          }
+          if (_this4.size && accumBytes + chunk.length > _this4.size) {
+            abort = true;
+            reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, "max-size"));
+            return;
+          }
+          accumBytes += chunk.length;
+          accum.push(chunk);
+        });
+        body.on("end", function() {
+          if (abort) {
+            return;
+          }
+          clearTimeout(resTimeout);
+          try {
+            resolve6(Buffer.concat(accum, accumBytes));
+          } catch (err) {
+            reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+      });
+    }
+    function convertBody(buffer, headers) {
+      if (typeof convert3 !== "function") {
+        throw new Error("The package `encoding` must be installed to use the textConverted() function");
+      }
+      const ct = headers.get("content-type");
+      let charset = "utf-8";
+      let res, str;
+      if (ct) {
+        res = /charset=([^;]*)/i.exec(ct);
+      }
+      str = buffer.slice(0, 1024).toString();
+      if (!res && str) {
+        res = / 0 && arguments[0] !== void 0 ? arguments[0] : void 0;
+        this[MAP] = /* @__PURE__ */ Object.create(null);
+        if (init instanceof _Headers) {
+          const rawHeaders = init.raw();
+          const headerNames = Object.keys(rawHeaders);
+          for (const headerName of headerNames) {
+            for (const value of rawHeaders[headerName]) {
+              this.append(headerName, value);
+            }
+          }
+          return;
+        }
+        if (init == null) ;
+        else if (typeof init === "object") {
+          const method = init[Symbol.iterator];
+          if (method != null) {
+            if (typeof method !== "function") {
+              throw new TypeError("Header pairs must be iterable");
+            }
+            const pairs = [];
+            for (const pair of init) {
+              if (typeof pair !== "object" || typeof pair[Symbol.iterator] !== "function") {
+                throw new TypeError("Each header pair must be iterable");
+              }
+              pairs.push(Array.from(pair));
+            }
+            for (const pair of pairs) {
+              if (pair.length !== 2) {
+                throw new TypeError("Each header pair must be a name/value tuple");
+              }
+              this.append(pair[0], pair[1]);
+            }
+          } else {
+            for (const key of Object.keys(init)) {
+              const value = init[key];
+              this.append(key, value);
+            }
+          }
+        } else {
+          throw new TypeError("Provided initializer must be an object");
+        }
+      }
+      /**
+       * Return combined header value given name
+       *
+       * @param   String  name  Header name
+       * @return  Mixed
+       */
+      get(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key === void 0) {
+          return null;
+        }
+        return this[MAP][key].join(", ");
+      }
+      /**
+       * Iterate over all headers
+       *
+       * @param   Function  callback  Executed for each item with parameters (value, name, thisArg)
+       * @param   Boolean   thisArg   `this` context for callback function
+       * @return  Void
+       */
+      forEach(callback) {
+        let thisArg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : void 0;
+        let pairs = getHeaders(this);
+        let i = 0;
+        while (i < pairs.length) {
+          var _pairs$i = pairs[i];
+          const name = _pairs$i[0], value = _pairs$i[1];
+          callback.call(thisArg, value, name, this);
+          pairs = getHeaders(this);
+          i++;
+        }
+      }
+      /**
+       * Overwrite header values given name
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      set(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        this[MAP][key !== void 0 ? key : name] = [value];
+      }
+      /**
+       * Append a value onto existing header
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      append(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          this[MAP][key].push(value);
+        } else {
+          this[MAP][name] = [value];
+        }
+      }
+      /**
+       * Check for header name existence
+       *
+       * @param   String   name  Header name
+       * @return  Boolean
+       */
+      has(name) {
+        name = `${name}`;
+        validateName(name);
+        return find(this[MAP], name) !== void 0;
+      }
+      /**
+       * Delete all header values given name
+       *
+       * @param   String  name  Header name
+       * @return  Void
+       */
+      delete(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          delete this[MAP][key];
+        }
+      }
+      /**
+       * Return raw headers (non-spec api)
+       *
+       * @return  Object
+       */
+      raw() {
+        return this[MAP];
+      }
+      /**
+       * Get an iterator on keys.
+       *
+       * @return  Iterator
+       */
+      keys() {
+        return createHeadersIterator(this, "key");
+      }
+      /**
+       * Get an iterator on values.
+       *
+       * @return  Iterator
+       */
+      values() {
+        return createHeadersIterator(this, "value");
+      }
+      /**
+       * Get an iterator on entries.
+       *
+       * This is the default iterator of the Headers object.
+       *
+       * @return  Iterator
+       */
+      [Symbol.iterator]() {
+        return createHeadersIterator(this, "key+value");
+      }
+    };
+    Headers2.prototype.entries = Headers2.prototype[Symbol.iterator];
+    Object.defineProperty(Headers2.prototype, Symbol.toStringTag, {
+      value: "Headers",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Headers2.prototype, {
+      get: { enumerable: true },
+      forEach: { enumerable: true },
+      set: { enumerable: true },
+      append: { enumerable: true },
+      has: { enumerable: true },
+      delete: { enumerable: true },
+      keys: { enumerable: true },
+      values: { enumerable: true },
+      entries: { enumerable: true }
+    });
+    function getHeaders(headers) {
+      let kind = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "key+value";
+      const keys = Object.keys(headers[MAP]).sort();
+      return keys.map(kind === "key" ? function(k) {
+        return k.toLowerCase();
+      } : kind === "value" ? function(k) {
+        return headers[MAP][k].join(", ");
+      } : function(k) {
+        return [k.toLowerCase(), headers[MAP][k].join(", ")];
+      });
+    }
+    var INTERNAL = /* @__PURE__ */ Symbol("internal");
+    function createHeadersIterator(target, kind) {
+      const iterator = Object.create(HeadersIteratorPrototype);
+      iterator[INTERNAL] = {
+        target,
+        kind,
+        index: 0
+      };
+      return iterator;
+    }
+    var HeadersIteratorPrototype = Object.setPrototypeOf({
+      next() {
+        if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {
+          throw new TypeError("Value of `this` is not a HeadersIterator");
+        }
+        var _INTERNAL = this[INTERNAL];
+        const target = _INTERNAL.target, kind = _INTERNAL.kind, index = _INTERNAL.index;
+        const values = getHeaders(target, kind);
+        const len = values.length;
+        if (index >= len) {
+          return {
+            value: void 0,
+            done: true
+          };
+        }
+        this[INTERNAL].index = index + 1;
+        return {
+          value: values[index],
+          done: false
+        };
+      }
+    }, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));
+    Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {
+      value: "HeadersIterator",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function exportNodeCompatibleHeaders(headers) {
+      const obj = Object.assign({ __proto__: null }, headers[MAP]);
+      const hostHeaderKey = find(headers[MAP], "Host");
+      if (hostHeaderKey !== void 0) {
+        obj[hostHeaderKey] = obj[hostHeaderKey][0];
+      }
+      return obj;
+    }
+    function createHeadersLenient(obj) {
+      const headers = new Headers2();
+      for (const name of Object.keys(obj)) {
+        if (invalidTokenRegex.test(name)) {
+          continue;
+        }
+        if (Array.isArray(obj[name])) {
+          for (const val2 of obj[name]) {
+            if (invalidHeaderCharRegex.test(val2)) {
+              continue;
+            }
+            if (headers[MAP][name] === void 0) {
+              headers[MAP][name] = [val2];
+            } else {
+              headers[MAP][name].push(val2);
+            }
+          }
+        } else if (!invalidHeaderCharRegex.test(obj[name])) {
+          headers[MAP][name] = [obj[name]];
+        }
+      }
+      return headers;
+    }
+    var INTERNALS$1 = /* @__PURE__ */ Symbol("Response internals");
+    var STATUS_CODES = http.STATUS_CODES;
+    var Response = class _Response {
+      constructor() {
+        let body = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
+        let opts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        Body.call(this, body, opts);
+        const status = opts.status || 200;
+        const headers = new Headers2(opts.headers);
+        if (body != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(body);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        this[INTERNALS$1] = {
+          url: opts.url,
+          status,
+          statusText: opts.statusText || STATUS_CODES[status],
+          headers,
+          counter: opts.counter
+        };
+      }
+      get url() {
+        return this[INTERNALS$1].url || "";
+      }
+      get status() {
+        return this[INTERNALS$1].status;
+      }
+      /**
+       * Convenience property representing if the request ended normally
+       */
+      get ok() {
+        return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;
+      }
+      get redirected() {
+        return this[INTERNALS$1].counter > 0;
+      }
+      get statusText() {
+        return this[INTERNALS$1].statusText;
+      }
+      get headers() {
+        return this[INTERNALS$1].headers;
+      }
+      /**
+       * Clone this response
+       *
+       * @return  Response
+       */
+      clone() {
+        return new _Response(clone(this), {
+          url: this.url,
+          status: this.status,
+          statusText: this.statusText,
+          headers: this.headers,
+          ok: this.ok,
+          redirected: this.redirected
+        });
+      }
+    };
+    Body.mixIn(Response.prototype);
+    Object.defineProperties(Response.prototype, {
+      url: { enumerable: true },
+      status: { enumerable: true },
+      ok: { enumerable: true },
+      redirected: { enumerable: true },
+      statusText: { enumerable: true },
+      headers: { enumerable: true },
+      clone: { enumerable: true }
+    });
+    Object.defineProperty(Response.prototype, Symbol.toStringTag, {
+      value: "Response",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    var INTERNALS$2 = /* @__PURE__ */ Symbol("Request internals");
+    var URL3 = Url.URL || whatwgUrl.URL;
+    var parse_url = Url.parse;
+    var format_url = Url.format;
+    function parseURL(urlStr) {
+      if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) {
+        urlStr = new URL3(urlStr).toString();
+      }
+      return parse_url(urlStr);
+    }
+    var streamDestructionSupported = "destroy" in Stream.Readable.prototype;
+    function isRequest(input) {
+      return typeof input === "object" && typeof input[INTERNALS$2] === "object";
+    }
+    function isAbortSignal(signal) {
+      const proto = signal && typeof signal === "object" && Object.getPrototypeOf(signal);
+      return !!(proto && proto.constructor.name === "AbortSignal");
+    }
+    var Request2 = class _Request {
+      constructor(input) {
+        let init = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        let parsedURL;
+        if (!isRequest(input)) {
+          if (input && input.href) {
+            parsedURL = parseURL(input.href);
+          } else {
+            parsedURL = parseURL(`${input}`);
+          }
+          input = {};
+        } else {
+          parsedURL = parseURL(input.url);
+        }
+        let method = init.method || input.method || "GET";
+        method = method.toUpperCase();
+        if ((init.body != null || isRequest(input) && input.body !== null) && (method === "GET" || method === "HEAD")) {
+          throw new TypeError("Request with GET/HEAD method cannot have body");
+        }
+        let inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;
+        Body.call(this, inputBody, {
+          timeout: init.timeout || input.timeout || 0,
+          size: init.size || input.size || 0
+        });
+        const headers = new Headers2(init.headers || input.headers || {});
+        if (inputBody != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(inputBody);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        let signal = isRequest(input) ? input.signal : null;
+        if ("signal" in init) signal = init.signal;
+        if (signal != null && !isAbortSignal(signal)) {
+          throw new TypeError("Expected signal to be an instanceof AbortSignal");
+        }
+        this[INTERNALS$2] = {
+          method,
+          redirect: init.redirect || input.redirect || "follow",
+          headers,
+          parsedURL,
+          signal
+        };
+        this.follow = init.follow !== void 0 ? init.follow : input.follow !== void 0 ? input.follow : 20;
+        this.compress = init.compress !== void 0 ? init.compress : input.compress !== void 0 ? input.compress : true;
+        this.counter = init.counter || input.counter || 0;
+        this.agent = init.agent || input.agent;
+      }
+      get method() {
+        return this[INTERNALS$2].method;
+      }
+      get url() {
+        return format_url(this[INTERNALS$2].parsedURL);
+      }
+      get headers() {
+        return this[INTERNALS$2].headers;
+      }
+      get redirect() {
+        return this[INTERNALS$2].redirect;
+      }
+      get signal() {
+        return this[INTERNALS$2].signal;
+      }
+      /**
+       * Clone this request
+       *
+       * @return  Request
+       */
+      clone() {
+        return new _Request(this);
+      }
+    };
+    Body.mixIn(Request2.prototype);
+    Object.defineProperty(Request2.prototype, Symbol.toStringTag, {
+      value: "Request",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Request2.prototype, {
+      method: { enumerable: true },
+      url: { enumerable: true },
+      headers: { enumerable: true },
+      redirect: { enumerable: true },
+      clone: { enumerable: true },
+      signal: { enumerable: true }
+    });
+    function getNodeRequestOptions(request2) {
+      const parsedURL = request2[INTERNALS$2].parsedURL;
+      const headers = new Headers2(request2[INTERNALS$2].headers);
+      if (!headers.has("Accept")) {
+        headers.set("Accept", "*/*");
+      }
+      if (!parsedURL.protocol || !parsedURL.hostname) {
+        throw new TypeError("Only absolute URLs are supported");
+      }
+      if (!/^https?:$/.test(parsedURL.protocol)) {
+        throw new TypeError("Only HTTP(S) protocols are supported");
+      }
+      if (request2.signal && request2.body instanceof Stream.Readable && !streamDestructionSupported) {
+        throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");
+      }
+      let contentLengthValue = null;
+      if (request2.body == null && /^(POST|PUT)$/i.test(request2.method)) {
+        contentLengthValue = "0";
+      }
+      if (request2.body != null) {
+        const totalBytes = getTotalBytes(request2);
+        if (typeof totalBytes === "number") {
+          contentLengthValue = String(totalBytes);
+        }
+      }
+      if (contentLengthValue) {
+        headers.set("Content-Length", contentLengthValue);
+      }
+      if (!headers.has("User-Agent")) {
+        headers.set("User-Agent", "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)");
+      }
+      if (request2.compress && !headers.has("Accept-Encoding")) {
+        headers.set("Accept-Encoding", "gzip,deflate");
+      }
+      let agent = request2.agent;
+      if (typeof agent === "function") {
+        agent = agent(parsedURL);
+      }
+      return Object.assign({}, parsedURL, {
+        method: request2.method,
+        headers: exportNodeCompatibleHeaders(headers),
+        agent
+      });
+    }
+    function AbortError(message) {
+      Error.call(this, message);
+      this.type = "aborted";
+      this.message = message;
+      Error.captureStackTrace(this, this.constructor);
+    }
+    AbortError.prototype = Object.create(Error.prototype);
+    AbortError.prototype.constructor = AbortError;
+    AbortError.prototype.name = "AbortError";
+    var URL$1 = Url.URL || whatwgUrl.URL;
+    var PassThrough$1 = Stream.PassThrough;
+    var isDomainOrSubdomain = function isDomainOrSubdomain2(destination, original) {
+      const orig = new URL$1(original).hostname;
+      const dest = new URL$1(destination).hostname;
+      return orig === dest || orig[orig.length - dest.length - 1] === "." && orig.endsWith(dest);
+    };
+    var isSameProtocol = function isSameProtocol2(destination, original) {
+      const orig = new URL$1(original).protocol;
+      const dest = new URL$1(destination).protocol;
+      return orig === dest;
+    };
+    function fetch3(url2, opts) {
+      if (!fetch3.Promise) {
+        throw new Error("native promise missing, set fetch.Promise to your favorite alternative");
+      }
+      Body.Promise = fetch3.Promise;
+      return new fetch3.Promise(function(resolve6, reject) {
+        const request2 = new Request2(url2, opts);
+        const options = getNodeRequestOptions(request2);
+        const send = (options.protocol === "https:" ? https2 : http).request;
+        const signal = request2.signal;
+        let response = null;
+        const abort = function abort2() {
+          let error = new AbortError("The user aborted a request.");
+          reject(error);
+          if (request2.body && request2.body instanceof Stream.Readable) {
+            destroyStream(request2.body, error);
+          }
+          if (!response || !response.body) return;
+          response.body.emit("error", error);
+        };
+        if (signal && signal.aborted) {
+          abort();
+          return;
+        }
+        const abortAndFinalize = function abortAndFinalize2() {
+          abort();
+          finalize();
+        };
+        const req = send(options);
+        let reqTimeout;
+        if (signal) {
+          signal.addEventListener("abort", abortAndFinalize);
+        }
+        function finalize() {
+          req.abort();
+          if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          clearTimeout(reqTimeout);
+        }
+        if (request2.timeout) {
+          req.once("socket", function(socket) {
+            reqTimeout = setTimeout(function() {
+              reject(new FetchError(`network timeout at: ${request2.url}`, "request-timeout"));
+              finalize();
+            }, request2.timeout);
+          });
+        }
+        req.on("error", function(err) {
+          reject(new FetchError(`request to ${request2.url} failed, reason: ${err.message}`, "system", err));
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+          finalize();
+        });
+        fixResponseChunkedTransferBadEnding(req, function(err) {
+          if (signal && signal.aborted) {
+            return;
+          }
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+        });
+        if (parseInt(process.version.substring(1)) < 14) {
+          req.on("socket", function(s) {
+            s.addListener("close", function(hadError) {
+              const hasDataListener = s.listenerCount("data") > 0;
+              if (response && hasDataListener && !hadError && !(signal && signal.aborted)) {
+                const err = new Error("Premature close");
+                err.code = "ERR_STREAM_PREMATURE_CLOSE";
+                response.body.emit("error", err);
+              }
+            });
+          });
+        }
+        req.on("response", function(res) {
+          clearTimeout(reqTimeout);
+          const headers = createHeadersLenient(res.headers);
+          if (fetch3.isRedirect(res.statusCode)) {
+            const location = headers.get("Location");
+            let locationURL = null;
+            try {
+              locationURL = location === null ? null : new URL$1(location, request2.url).toString();
+            } catch (err) {
+              if (request2.redirect !== "manual") {
+                reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, "invalid-redirect"));
+                finalize();
+                return;
+              }
+            }
+            switch (request2.redirect) {
+              case "error":
+                reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request2.url}`, "no-redirect"));
+                finalize();
+                return;
+              case "manual":
+                if (locationURL !== null) {
+                  try {
+                    headers.set("Location", locationURL);
+                  } catch (err) {
+                    reject(err);
+                  }
+                }
+                break;
+              case "follow":
+                if (locationURL === null) {
+                  break;
+                }
+                if (request2.counter >= request2.follow) {
+                  reject(new FetchError(`maximum redirect reached at: ${request2.url}`, "max-redirect"));
+                  finalize();
+                  return;
+                }
+                const requestOpts = {
+                  headers: new Headers2(request2.headers),
+                  follow: request2.follow,
+                  counter: request2.counter + 1,
+                  agent: request2.agent,
+                  compress: request2.compress,
+                  method: request2.method,
+                  body: request2.body,
+                  signal: request2.signal,
+                  timeout: request2.timeout,
+                  size: request2.size
+                };
+                if (!isDomainOrSubdomain(request2.url, locationURL) || !isSameProtocol(request2.url, locationURL)) {
+                  for (const name of ["authorization", "www-authenticate", "cookie", "cookie2"]) {
+                    requestOpts.headers.delete(name);
+                  }
+                }
+                if (res.statusCode !== 303 && request2.body && getTotalBytes(request2) === null) {
+                  reject(new FetchError("Cannot follow redirect with body being a readable stream", "unsupported-redirect"));
+                  finalize();
+                  return;
+                }
+                if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request2.method === "POST") {
+                  requestOpts.method = "GET";
+                  requestOpts.body = void 0;
+                  requestOpts.headers.delete("content-length");
+                }
+                resolve6(fetch3(new Request2(locationURL, requestOpts)));
+                finalize();
+                return;
+            }
+          }
+          res.once("end", function() {
+            if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          });
+          let body = res.pipe(new PassThrough$1());
+          const response_options = {
+            url: request2.url,
+            status: res.statusCode,
+            statusText: res.statusMessage,
+            headers,
+            size: request2.size,
+            timeout: request2.timeout,
+            counter: request2.counter
+          };
+          const codings = headers.get("Content-Encoding");
+          if (!request2.compress || request2.method === "HEAD" || codings === null || res.statusCode === 204 || res.statusCode === 304) {
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          const zlibOptions = {
+            flush: zlib3.Z_SYNC_FLUSH,
+            finishFlush: zlib3.Z_SYNC_FLUSH
+          };
+          if (codings == "gzip" || codings == "x-gzip") {
+            body = body.pipe(zlib3.createGunzip(zlibOptions));
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          if (codings == "deflate" || codings == "x-deflate") {
+            const raw = res.pipe(new PassThrough$1());
+            raw.once("data", function(chunk) {
+              if ((chunk[0] & 15) === 8) {
+                body = body.pipe(zlib3.createInflate());
+              } else {
+                body = body.pipe(zlib3.createInflateRaw());
+              }
+              response = new Response(body, response_options);
+              resolve6(response);
+            });
+            raw.on("end", function() {
+              if (!response) {
+                response = new Response(body, response_options);
+                resolve6(response);
+              }
+            });
+            return;
+          }
+          if (codings == "br" && typeof zlib3.createBrotliDecompress === "function") {
+            body = body.pipe(zlib3.createBrotliDecompress());
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          response = new Response(body, response_options);
+          resolve6(response);
+        });
+        writeToStream(req, request2);
+      });
+    }
+    function fixResponseChunkedTransferBadEnding(request2, errorCallback) {
+      let socket;
+      request2.on("socket", function(s) {
+        socket = s;
+      });
+      request2.on("response", function(response) {
+        const headers = response.headers;
+        if (headers["transfer-encoding"] === "chunked" && !headers["content-length"]) {
+          response.once("close", function(hadError) {
+            const hasDataListener = socket && socket.listenerCount("data") > 0;
+            if (hasDataListener && !hadError) {
+              const err = new Error("Premature close");
+              err.code = "ERR_STREAM_PREMATURE_CLOSE";
+              errorCallback(err);
+            }
+          });
+        }
+      });
+    }
+    function destroyStream(stream, err) {
+      if (stream.destroy) {
+        stream.destroy(err);
+      } else {
+        stream.emit("error", err);
+        stream.end();
+      }
+    }
+    fetch3.isRedirect = function(code) {
+      return code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
+    };
+    fetch3.Promise = global.Promise;
+    module2.exports = exports2 = fetch3;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.default = exports2;
+    exports2.Headers = Headers2;
+    exports2.Request = Request2;
+    exports2.Response = Response;
+    exports2.FetchError = FetchError;
+    exports2.AbortError = AbortError;
+  }
+});
+
+// lib/assertions/providers/lambda-handler/index.ts
+var index_exports = {};
+__export(index_exports, {
+  handler: () => handler,
+  isComplete: () => isComplete,
+  onTimeout: () => onTimeout
+});
+module.exports = __toCommonJS(index_exports);
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var import_helpers_internal8 = __toESM(require_helpers_internal());
+
+// lib/assertions/providers/lambda-handler/base.ts
+var https = __toESM(require("https"));
+var url = __toESM(require("url"));
+var import_client_sfn = __toESM(require_dist_cjs53());
+var CustomResourceHandler = class {
+  constructor(event, context) {
+    this.event = event;
+    this.context = context;
+    this.timeout = setTimeout(async () => {
+      await this.respond({
+        status: "FAILED",
+        reason: "Lambda Function Timeout",
+        data: this.context.logStreamName
+      });
+      this.timedOut = true;
+    }, context.getRemainingTimeInMillis() - 1200);
+    this.event = event;
+    this.physicalResourceId = extractPhysicalResourceId(event);
+  }
+  event;
+  context;
+  physicalResourceId;
+  timeout;
+  timedOut = false;
+  /**
+   * Handles executing the custom resource event. If `stateMachineArn` is present
+   * in the props then trigger the waiter statemachine
+   */
+  async handle() {
+    try {
+      if ("stateMachineArn" in this.event.ResourceProperties) {
+        const req = {
+          stateMachineArn: this.event.ResourceProperties.stateMachineArn,
+          name: this.event.RequestId,
+          input: JSON.stringify(this.event)
+        };
+        await this.startExecution(req);
+        return;
+      } else {
+        const response = await this.processEvent(this.event.ResourceProperties);
+        return response;
+      }
+    } catch (e) {
+      console.log(e);
+      throw e;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Handle async requests from the waiter state machine
+   */
+  async handleIsComplete() {
+    try {
+      const result = await this.processEvent(this.event.ResourceProperties);
+      return result;
+    } catch (e) {
+      console.log(e);
+      return;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Start a step function state machine which will wait for the request
+   * to be successful.
+   */
+  async startExecution(req) {
+    try {
+      const sfn = new import_client_sfn.SFN({});
+      await sfn.startExecution(req);
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  respond(response) {
+    if (this.timedOut) {
+      return;
+    }
+    const cfResponse = {
+      Status: response.status,
+      Reason: response.reason,
+      PhysicalResourceId: this.physicalResourceId,
+      StackId: this.event.StackId,
+      RequestId: this.event.RequestId,
+      LogicalResourceId: this.event.LogicalResourceId,
+      NoEcho: false,
+      Data: response.data
+    };
+    const responseBody = JSON.stringify(cfResponse);
+    console.log("Responding to CloudFormation", responseBody);
+    const parsedUrl = url.parse(this.event.ResponseURL);
+    const requestOptions = {
+      hostname: parsedUrl.hostname,
+      path: parsedUrl.path,
+      method: "PUT",
+      headers: {
+        "content-type": "",
+        "content-length": Buffer.byteLength(responseBody, "utf8")
+      }
+    };
+    return new Promise((resolve6, reject) => {
+      try {
+        const request2 = https.request(requestOptions, resolve6);
+        request2.on("error", reject);
+        request2.write(responseBody);
+        request2.end();
+      } catch (e) {
+        reject(e);
+      } finally {
+        clearTimeout(this.timeout);
+      }
+    });
+  }
+};
+function extractPhysicalResourceId(event) {
+  switch (event.RequestType) {
+    case "Create":
+      return event.LogicalResourceId;
+    case "Update":
+    case "Delete":
+      return event.PhysicalResourceId;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var AssertionHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    let actual = decodeCall(request2.actual);
+    const expected = decodeCall(request2.expected);
+    let result;
+    const matcher = new MatchCreator(expected).getMatcher();
+    console.log(`Testing equality between ${JSON.stringify(request2.actual)} and ${JSON.stringify(request2.expected)}`);
+    const matchResult = matcher.test(actual);
+    matchResult.finished();
+    if (matchResult.hasFailed()) {
+      result = {
+        failed: true,
+        assertion: JSON.stringify({
+          status: "fail",
+          message: matchResult.renderMismatch()
+        })
+      };
+      if (request2.failDeployment) {
+        throw new Error(result.assertion);
+      }
+    } else {
+      result = {
+        assertion: JSON.stringify({
+          status: "success"
+        })
+      };
+    }
+    return result;
+  }
+};
+var MatchCreator = class {
+  parsedObj;
+  constructor(obj) {
+    this.parsedObj = {
+      matcher: obj
+    };
+  }
+  /**
+   * Return a Matcher that can be tested against the actual results.
+   * This will convert the encoded matchers into their corresponding
+   * assertions matcher.
+   *
+   * For example:
+   *
+   * ExpectedResult.objectLike({
+   *   Messages: [{
+   *     Body: Match.objectLike({
+   *       Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *       Payload: Match.serializedJson({ key: 'value' }),
+   *     }),
+   *   }],
+   * });
+   *
+   * Will be encoded as:
+   * {
+   *   $ObjectLike: {
+   *     Messages: [{
+   *       Body: {
+   *         $ObjectLike: {
+   *           Elements: {
+   *             $ArrayWith: [{ Asdf: 3 }],
+   *           },
+   *           Payload: {
+   *             $SerializedJson: { key: 'value' }
+   *           }
+   *         },
+   *       },
+   *     }],
+   *   },
+   * }
+   *
+   * Which can then be parsed by this function. For each key (recursively)
+   * the parser will check if the value has one of the encoded matchers as a key
+   * and if so, it will set the value as the Matcher. So,
+   *
+   * {
+   *   Body: {
+   *     $ObjectLike: {
+   *       Elements: {
+   *         $ArrayWith: [{ Asdf: 3 }],
+   *       },
+   *       Payload: {
+   *         $SerializedJson: { key: 'value' }
+   *       }
+   *     },
+   *   },
+   * }
+   *
+   * Will be converted to
+   * {
+   *   Body: Match.objectLike({
+   *     Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *     Payload: Match.serializedJson({ key: 'value' }),
+   *   }),
+   * }
+   */
+  getMatcher() {
+    try {
+      const final = JSON.parse(JSON.stringify(this.parsedObj), function(_k, v) {
+        const nested = Object.keys(v)[0];
+        switch (nested) {
+          case "$ArrayWith":
+            return import_helpers_internal8.Match.arrayWith(v[nested]);
+          case "$ObjectLike":
+            return import_helpers_internal8.Match.objectLike(v[nested]);
+          case "$StringLike":
+            return import_helpers_internal8.Match.stringLikeRegexp(v[nested]);
+          case "$SerializedJson":
+            return import_helpers_internal8.Match.serializedJson(v[nested]);
+          default:
+            return v;
+        }
+      });
+      if (import_helpers_internal8.Matcher.isMatcher(final.matcher)) {
+        return final.matcher;
+      }
+      return import_helpers_internal8.Match.exact(final.matcher);
+    } catch {
+      return import_helpers_internal8.Match.exact(this.parsedObj.matcher);
+    }
+  }
+};
+function decodeCall(call) {
+  if (!call) {
+    return void 0;
+  }
+  try {
+    const parsed = JSON.parse(call);
+    return parsed;
+  } catch {
+    return call;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var import_aws_custom_resource_sdk_adapter = __toESM(require_lib6());
+var import_node_fetch = __toESM(require_lib9());
+
+// lib/assertions/providers/lambda-handler/utils.ts
+function deepParseJson(x) {
+  if (typeof x === "string") {
+    return tryJsonParse(x);
+  }
+  if (Array.isArray(x)) {
+    return x.map(deepParseJson);
+  }
+  if (x && typeof x === "object") {
+    for (const [key, value] of Object.entries(x)) {
+      x[key] = deepParseJson(value);
+    }
+    return x;
+  }
+  return x;
+}
+function tryJsonParse(v) {
+  if (typeof v !== "string") {
+    return v;
+  }
+  try {
+    return JSON.parse(v);
+  } catch {
+    return v;
+  }
+}
+function decodeParameters(obj) {
+  return Object.fromEntries(Object.entries(obj).map(([key, value]) => {
+    try {
+      return [key, decodeValue(value)];
+    } catch {
+      return [key, value];
+    }
+  }));
+}
+function decodeValue(value) {
+  if (value != null && !Array.isArray(value) && typeof value === "object") {
+    if (value.$type === "ArrayBufferView") {
+      return new TextEncoder().encode(value.string);
+    }
+  }
+  return JSON.parse(value);
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var HttpHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    console.log("request", request2);
+    const response = await (0, import_node_fetch.default)(request2.parameters.url, request2.parameters.fetchOptions);
+    const result = {
+      ok: response.ok,
+      status: response.status,
+      statusText: response.statusText,
+      headers: response.headers.raw()
+    };
+    result.body = await response.text();
+    try {
+      result.body = JSON.parse(result.body);
+    } catch (e) {
+    }
+    let resp;
+    if (request2.flattenResponse === "true") {
+      resp = (0, import_aws_custom_resource_sdk_adapter.flatten)(deepParseJson({ apiCallResponse: result }));
+    } else {
+      resp = { apiCallResponse: result };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+
+// lib/assertions/providers/lambda-handler/sdk.ts
+var import_aws_custom_resource_sdk_adapter2 = __toESM(require_lib6());
+var AwsApiCallHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    const apiCall = new import_aws_custom_resource_sdk_adapter2.ApiCall(request2.service, request2.api);
+    const parameters = request2.parameters ? decodeParameters(request2.parameters) : {};
+    console.log(`SDK request to ${apiCall.service}.${apiCall.action} with parameters ${JSON.stringify(parameters)}`);
+    const response = await apiCall.invoke({ parameters });
+    console.log(`SDK response received ${JSON.stringify(response)}`);
+    delete response.$metadata;
+    let resp;
+    if (request2.outputPaths || request2.flattenResponse === "true") {
+      const flattened = (0, import_aws_custom_resource_sdk_adapter2.flatten)(deepParseJson({ apiCallResponse: response }));
+      resp = request2.outputPaths ? filterKeys(flattened, request2.outputPaths) : flattened;
+    } else {
+      resp = { apiCallResponse: response };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+function filterKeys(object, searchStrings) {
+  return Object.entries(object).reduce((filteredObject, [key, value]) => {
+    for (const searchString of searchStrings) {
+      if (key.startsWith(`apiCallResponse.${searchString}`)) {
+        filteredObject[key] = value;
+      }
+    }
+    return filteredObject;
+  }, {});
+}
+
+// lib/assertions/providers/lambda-handler/types.ts
+var ASSERT_RESOURCE_TYPE = "Custom::DeployAssert@AssertEquals";
+var SDK_RESOURCE_TYPE_PREFIX = "Custom::DeployAssert@SdkCall";
+var HTTP_RESOURCE_TYPE = "Custom::DeployAssert@HttpCall";
+
+// lib/assertions/providers/lambda-handler/index.ts
+async function handler(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    if (event.RequestType === "Delete") {
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK"
+      });
+      return;
+    }
+    const result = await provider.handle();
+    if ("stateMachineArn" in event.ResourceProperties) {
+      console.info('Found "stateMachineArn", waiter statemachine started');
+      return;
+    } else if ("expected" in event.ResourceProperties) {
+      console.info('Found "expected", testing assertions');
+      const actualPath = event.ResourceProperties.actualPath;
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      const assertion = new AssertionHandler({
+        ...event,
+        ResourceProperties: {
+          ServiceToken: event.ServiceToken,
+          actual,
+          expected: event.ResourceProperties.expected
+        }
+      }, context);
+      try {
+        const assertionResult = await assertion.handle();
+        await provider.respond({
+          status: "SUCCESS",
+          reason: "OK",
+          // return both the result of the API call _and_ the assertion results
+          data: {
+            ...assertionResult,
+            ...result
+          }
+        });
+        return;
+      } catch (e) {
+        await provider.respond({
+          status: "FAILED",
+          reason: e.message ?? "Internal Error"
+        });
+        return;
+      }
+    }
+    await provider.respond({
+      status: "SUCCESS",
+      reason: "OK",
+      data: result
+    });
+  } catch (e) {
+    await provider.respond({
+      status: "FAILED",
+      reason: e.message ?? "Internal Error"
+    });
+    return;
+  }
+  return;
+}
+async function onTimeout(timeoutEvent) {
+  const eventPayload = JSON.parse(JSON.parse(timeoutEvent.Cause).errorMessage);
+  const provider = createResourceHandler(eventPayload, standardContext);
+  await provider.respond({
+    status: "FAILED",
+    // Only the properties to the IsComplete Resource need to be included.
+    reason: "Operation timed out: " + JSON.stringify(eventPayload.ResourceProperties)
+  });
+}
+async function isComplete(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    const result = await provider.handleIsComplete();
+    const actualPath = event.ResourceProperties.actualPath;
+    if (result) {
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      if ("expected" in event.ResourceProperties) {
+        const assertion = new AssertionHandler({
+          ...event,
+          ResourceProperties: {
+            ServiceToken: event.ServiceToken,
+            actual,
+            expected: event.ResourceProperties.expected
+          }
+        }, context);
+        const assertionResult = await assertion.handleIsComplete();
+        if (!assertionResult?.failed) {
+          await provider.respond({
+            status: "SUCCESS",
+            reason: "OK",
+            data: {
+              ...assertionResult,
+              ...result
+            }
+          });
+          return;
+        } else {
+          console.log(`Assertion Failed: ${JSON.stringify(assertionResult)}`);
+          throw new Error(JSON.stringify(event));
+        }
+      }
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK",
+        data: result
+      });
+    } else {
+      console.log("No result");
+      throw new Error(JSON.stringify(event));
+    }
+    return;
+  } catch (e) {
+    console.log(e);
+    throw new Error(JSON.stringify(event));
+  }
+}
+function createResourceHandler(event, context) {
+  if (event.ResourceType.startsWith(SDK_RESOURCE_TYPE_PREFIX)) {
+    return new AwsApiCallHandler(event, context);
+  } else if (event.ResourceType.startsWith(ASSERT_RESOURCE_TYPE)) {
+    return new AssertionHandler(event, context);
+  } else if (event.ResourceType.startsWith(HTTP_RESOURCE_TYPE)) {
+    return new HttpHandler(event, context);
+  } else {
+    throw new Error(`Unsupported resource type "${event.ResourceType}`);
+  }
+}
+var standardContext = {
+  getRemainingTimeInMillis: () => 9e4
+};
+// Annotate the CommonJS export names for ESM import in node:
+0 && (module.exports = {
+  handler,
+  isComplete,
+  onTimeout
+});
+/*! Bundled license information:
+
+@balena/dockerignore/ignore.js:
+  (**
+   * @license
+   * Copyright 2020 Balena Ltd.
+   *
+   * Licensed under the Apache License, Version 2.0 (the "License");
+   * you may not use this file except in compliance with the License.
+   * You may obtain a copy of the License at
+   *
+   *    http://www.apache.org/licenses/LICENSE-2.0
+   *
+   * Unless required by applicable law or agreed to in writing, software
+   * distributed under the License is distributed on an "AS IS" BASIS,
+   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   * See the License for the specific language governing permissions and
+   * limitations under the License.
+   *
+   * ------------------------------------------------------------------------
+   *
+   * Copyright 2018 Zeit, Inc.
+   * Licensed under the MIT License. See file LICENSE.md for a full copy.
+   *
+   * ------------------------------------------------------------------------
+   *)
+*/
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip
new file mode 100644
index 0000000000000..44727c2a7a00a
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/asset.98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a50d5225673b37be97302ae9094308bf4f5085a325d502950adf11fbe35245e7
+size 22004168
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/cdk.out
new file mode 100644
index 0000000000000..a130d293db2dd
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/cdk.out
@@ -0,0 +1 @@
+{"version":"55.0.0"}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/integ.json
new file mode 100644
index 0000000000000..7c491cfa64922
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/integ.json
@@ -0,0 +1,15 @@
+{
+  "version": "55.0.0",
+  "testCases": {
+    "WebFunctionAllFieldsTest/DefaultTest": {
+      "stacks": [
+        "WebFunctionAllFieldsStack"
+      ],
+      "diffAssets": false,
+      "assertionStack": "WebFunctionAllFieldsTest/DefaultTest/DeployAssert",
+      "assertionStackName": "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB"
+    }
+  },
+  "enableLookups": true,
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/manifest.json
new file mode 100644
index 0000000000000..83cf35f1e3366
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/manifest.json
@@ -0,0 +1,640 @@
+{
+  "version": "55.0.0",
+  "artifacts": {
+    "WebFunctionAllFieldsStack.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionAllFieldsStack.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionAllFieldsStack": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionAllFieldsStack.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/49419c20fdfc89f89773fd9af170b01ec559ed84998fa2ab4a345331eb239ab0.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionAllFieldsStack.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionAllFieldsStack.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionAllFieldsStack.metadata.json",
+      "displayName": "WebFunctionAllFieldsStack"
+    },
+    "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/3e407a47e4a482e117957fdaa6d61da90d4c562aed01ce6e72d0a495ebf36a8b.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionAllFieldsStack",
+        "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionAllFieldsTestDefaultTestDeployAssert71A00EAB.metadata.json",
+      "displayName": "WebFunctionAllFieldsTest/DefaultTest/DeployAssert"
+    },
+    "Tree": {
+      "type": "cdk:tree",
+      "properties": {
+        "file": "tree.json"
+      }
+    },
+    "aws-cdk-lib/feature-flag-report": {
+      "type": "cdk:feature-flag-report",
+      "properties": {
+        "module": "aws-cdk-lib",
+        "flags": {
+          "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Pass signingProfileName to CfnSigningProfile"
+          },
+          "@aws-cdk/core:newStyleStackSynthesis": {
+            "recommendedValue": true,
+            "explanation": "Switch to new stack synthesis method which enables CI/CD",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:stackRelativeExports": {
+            "recommendedValue": true,
+            "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Disable implicit openListener when custom security groups are provided"
+          },
+          "@aws-cdk/aws-rds:lowercaseDbIdentifier": {
+            "recommendedValue": true,
+            "explanation": "Force lowercasing of RDS Cluster names in CDK",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": {
+            "recommendedValue": true,
+            "explanation": "Allow adding/removing multiple UsagePlanKeys independently",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeVersionProps": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the  `fn.currentVersion`.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeLayerVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`."
+          },
+          "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:checkSecretUsage": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations"
+          },
+          "@aws-cdk/core:target-partitions": {
+            "recommendedValue": [
+              "aws",
+              "aws-cn"
+            ],
+            "explanation": "What regions to include in lookup tables of environment agnostic stacks"
+          },
+          "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ECS extensions will automatically add an `awslogs` driver if no logging is specified"
+          },
+          "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names."
+          },
+          "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID."
+          },
+          "@aws-cdk/aws-iam:minimizePolicies": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Minimize IAM policies by combining Statements"
+          },
+          "@aws-cdk/core:validateSnapshotRemovalPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Error on snapshot removal policies on resources that do not support it."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate key aliases that include the stack name"
+          },
+          "@aws-cdk/aws-s3:createDefaultLoggingPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist."
+          },
+          "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict KMS key policy for encrypted Queues a bit more"
+          },
+          "@aws-cdk/aws-apigateway:disableCloudWatchRole": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment"
+          },
+          "@aws-cdk/core:enablePartitionLiterals": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make ARNs concrete if AWS partition is known"
+          },
+          "@aws-cdk/aws-events:eventsTargetQueueSameAccount": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Event Rules may only push to encrypted SQS queues in the same account"
+          },
+          "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Avoid setting the \"ECS\" deployment controller when adding a circuit breaker"
+          },
+          "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in."
+          },
+          "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use S3 Bucket Policy instead of ACLs for Server Access Logging"
+          },
+          "@aws-cdk/aws-route53-patters:useCertificate": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the official `Certificate` resource instead of `DnsValidatedCertificate`"
+          },
+          "@aws-cdk/customresources:installLatestAwsSdkDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "Whether to install the latest SDK by default in AwsCustomResource"
+          },
+          "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use unique resource name for Database Proxy"
+          },
+          "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Remove CloudWatch alarms from deployment group"
+          },
+          "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include authorizer configuration in the calculation of the API deployment logical ID."
+          },
+          "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Define user data for a launch template by default when a machine image is provided."
+          },
+          "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "SecretTargetAttachments uses the ResourcePolicy of the attached Secret."
+          },
+          "@aws-cdk/aws-redshift:columnId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Whether to use an ID to track Redshift column changes"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable AmazonEMRServicePolicy_v2 managed policies"
+          },
+          "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict access to the VPC default security group"
+          },
+          "@aws-cdk/aws-apigateway:requestValidatorUniqueId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a unique id for each RequestValidator added to a method"
+          },
+          "@aws-cdk/aws-kms:aliasNameRef": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "KMS Alias name and keyArn will have implicit reference to KMS Key"
+          },
+          "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition"
+          },
+          "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a launch template when creating an AutoScalingGroup"
+          },
+          "@aws-cdk/core:includePrefixInUniqueNameGeneration": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include the stack prefix in the stack name generation process"
+          },
+          "@aws-cdk/aws-efs:denyAnonymousAccess": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "EFS denies anonymous clients accesses"
+          },
+          "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables support for Multi-AZ with Standby deployment for opensearch domains"
+          },
+          "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default"
+          },
+          "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet."
+          },
+          "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change."
+          },
+          "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id."
+          },
+          "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials."
+          },
+          "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the CodeCommit source action is using the default branch name 'main'."
+          },
+          "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default value for crossAccountKeys to false."
+          },
+          "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default pipeline type to V2."
+          },
+          "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only."
+          },
+          "@aws-cdk/pipelines:reduceAssetRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-eks:nodegroupNameAttribute": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix."
+          },
+          "@aws-cdk/aws-eks:useNativeOidcProvider": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider)."
+          },
+          "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default volume type of the EBS volume will be GP3"
+          },
+          "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, remove default deployment alarm settings"
+          },
+          "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default"
+          },
+          "@aws-cdk/aws-s3:keepNotificationInImportedBucket": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": {
+            "recommendedValue": true,
+            "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:explicitStackTags": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, stack tags need to be assigned explicitly on a Stack."
+          },
+          "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration"
+          },
+          "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas"
+          },
+          "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together."
+          },
+          "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn."
+          },
+          "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`"
+          },
+          "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values."
+          },
+          "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN."
+          },
+          "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2."
+          },
+          "@aws-cdk/core:aspectStabilization": {
+            "recommendedValue": true,
+            "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource."
+          },
+          "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere"
+          },
+          "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default behaviour of OIDC provider will reject unauthorized connections"
+          },
+          "@aws-cdk/core:enableAdditionalMetadataCollection": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues."
+          },
+          "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement"
+          },
+          "@aws-cdk/aws-s3:setUniqueReplicationRoleName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication."
+          },
+          "@aws-cdk/pipelines:reduceStageRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from Stage addActions trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-events:requireEventBusPolicySid": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals."
+          },
+          "@aws-cdk/core:aspectPrioritiesMutating": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING."
+          },
+          "@aws-cdk/aws-dynamodb:retainTableReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, table replica will be default to the removal policy of source table unless specified otherwise."
+          },
+          "@aws-cdk/cognito:logUserPoolClientSecretValue": {
+            "recommendedValue": false,
+            "explanation": "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs."
+          },
+          "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "When enabled, scopes down the trust policy for the cross-account action role",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter"
+          },
+          "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions."
+          },
+          "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC."
+          },
+          "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration": {
+            "recommendedValue": false,
+            "explanation": "When enabled, use resource IDs for VPC V2 migration"
+          },
+          "@aws-cdk/aws-s3:publicAccessBlockedByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined."
+          },
+          "@aws-cdk/aws-lambda:useCdkManagedLogGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK creates and manages loggroup for the lambda function"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, Network Load Balancer will be created with a security group by default."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": {
+            "recommendedValue": true,
+            "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement"
+          },
+          "@aws-cdk/aws-route53-patterns:useDistribution": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the `Distribution` resource instead of `CloudFrontWebDistribution`"
+          },
+          "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default"
+          },
+          "@aws-cdk/core:automaticL1Traits": {
+            "recommendedValue": true,
+            "explanation": "Automatically use the default L1 traits for L1 constructs`",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-batch:defaultToAL2023": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2"
+          },
+          "@aws-cdk/aws-eks:defaultToAL2023": {
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2"
+          },
+          "@aws-cdk/core:annotationsInValidationReport": {
+            "recommendedValue": true,
+            "explanation": "Include construct annotations (warnings and errors) in the policy validation report"
+          },
+          "@aws-cdk/core:defaultCrossStackReferences": {
+            "recommendedValue": "weak",
+            "explanation": "Controls whether cross-stack references are strong, weak, or both",
+            "unconfiguredBehavesLike": {
+              "v2": "strong"
+            }
+          },
+          "@aws-cdk/core:validateAgainstDefaultRules": {
+            "recommendedValue": true,
+            "explanation": "Treat CloudFormation Validate findings as errors"
+          },
+          "@aws-cdk/aws-ecs:removeEmptyLoadBalancers": {
+            "recommendedValue": true,
+            "explanation": "Render an empty `LoadBalancers` array on an ECS service that has no target groups"
+          },
+          "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps": {
+            "recommendedValue": true,
+            "explanation": "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS"
+          },
+          "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard": {
+            "recommendedValue": true,
+            "explanation": "Render the API Gateway access log destination ARN without the trailing `:*`"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:evaluateExpressionDedicatedFunction": {
+            "recommendedValue": true,
+            "explanation": "When enabled, each EvaluateExpression task gets its own Lambda function",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          }
+        }
+      }
+    }
+  },
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/tree.json
new file mode 100644
index 0000000000000..45e253cbe5f36
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/tree.json
@@ -0,0 +1 @@
+{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"WebFunctionAllFieldsStack":{"id":"WebFunctionAllFieldsStack","path":"WebFunctionAllFieldsStack","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"CodeBucketKey":{"id":"CodeBucketKey","path":"WebFunctionAllFieldsStack/CodeBucketKey","constructInfo":{"fqn":"aws-cdk-lib.aws_kms.Key","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/CodeBucketKey/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_kms.CfnKey","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::KMS::Key","aws:cdk:cloudformation:logicalId":"CodeBucketKeyA1A5CA2B","aws:cdk:cloudformation:props":{"keyPolicy":{"Statement":[{"Action":"kms:*","Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":"kms:Decrypt","Condition":{"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}},"ArnLike":{"aws:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":lambda:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":web-function/*/revision/*"]]}}},"Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"},"Resource":"*"}],"Version":"2012-10-17"}}}}}},"CodeBucket":{"id":"CodeBucket","path":"WebFunctionAllFieldsStack/CodeBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/CodeBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:logicalId":"CodeBucketFF4C7AD6","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"aws:kms","kmsMasterKeyId":{"Fn::GetAtt":["CodeBucketKeyA1A5CA2B","Arn"]}}}]},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"},{"key":"aws-cdk:cr-owned:db9b53a0","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"WebFunctionAllFieldsStack/CodeBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/CodeBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:logicalId":"CodeBucketPolicy637E7C14","aws:cdk:cloudformation:props":{"bucket":{"Ref":"CodeBucketFF4C7AD6"},"policyDocument":{"Statement":[{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},"/*"]]}]},{"Action":["s3:GetObject","s3:GetObjectVersion"],"Condition":{"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}},"ArnLike":{"aws:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":lambda:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":web-function/WebFunctionAllFidsStackAllFields390CE3C2/revision/*"]]}}},"Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},"/",{"Fn::Select":[0,{"Fn::GetAtt":["DeployCodeCustomResource46A14DA0","SourceObjectKeys"]}]}]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"WebFunctionAllFieldsStack/CodeBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionAllFieldsStack/CodeBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"WebFunctionAllFieldsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"WebFunctionAllFieldsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionAllFieldsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionAllFieldsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"DeployCode":{"id":"DeployCode","path":"WebFunctionAllFieldsStack/DeployCode","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_deployment.BucketDeployment","version":"0.0.0"},"children":{"AwsCliLayer":{"id":"AwsCliLayer","path":"WebFunctionAllFieldsStack/DeployCode/AwsCliLayer","constructInfo":{"fqn":"aws-cdk-lib.lambda_layer_awscli.AwsCliLayer","version":"0.0.0"},"children":{"Code":{"id":"Code","path":"WebFunctionAllFieldsStack/DeployCode/AwsCliLayer/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionAllFieldsStack/DeployCode/AwsCliLayer/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionAllFieldsStack/DeployCode/AwsCliLayer/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/DeployCode/AwsCliLayer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnLayerVersion","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::LayerVersion","aws:cdk:cloudformation:logicalId":"DeployCodeAwsCliLayerB38BC350","aws:cdk:cloudformation:props":{"content":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip"},"description":"/opt/awscli/aws"}}}}},"CustomResourceHandler":{"id":"CustomResourceHandler","path":"WebFunctionAllFieldsStack/DeployCode/CustomResourceHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.SingletonFunction","version":"0.0.0"}},"Asset1":{"id":"Asset1","path":"WebFunctionAllFieldsStack/DeployCode/Asset1","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionAllFieldsStack/DeployCode/Asset1/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionAllFieldsStack/DeployCode/Asset1/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"CustomResource":{"id":"CustomResource","path":"WebFunctionAllFieldsStack/DeployCode/CustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionAllFieldsStack/DeployCode/CustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C":{"id":"Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:logicalId":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["s3:GetBucket*","s3:GetObject*","s3:List*"],"Effect":"Allow","Resource":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":s3:::",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/*"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":s3:::",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"}]]}]},{"Action":["s3:Abort*","s3:DeleteObject*","s3:GetBucket*","s3:GetObject*","s3:List*","s3:PutObject","s3:PutObjectLegalHold","s3:PutObjectRetention","s3:PutObjectTagging","s3:PutObjectVersionTagging"],"Effect":"Allow","Resource":[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},"/*"]]}]},{"Action":["kms:Decrypt","kms:DescribeKey","kms:Encrypt","kms:GenerateDataKey*","kms:ReEncrypt*"],"Effect":"Allow","Resource":{"Fn::GetAtt":["CodeBucketKeyA1A5CA2B","Arn"]}}],"Version":"2012-10-17"},"policyName":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF","roles":[{"Ref":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265"}]}}}}}}},"Code":{"id":"Code","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:logicalId":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536","aws:cdk:cloudformation:props":{"architectures":["arm64"],"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0.zip"},"environment":{"variables":{"AWS_CA_BUNDLE":"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"}},"handler":"index.handler","layers":[{"Ref":"DeployCodeAwsCliLayerB38BC350"}],"memorySize":1024,"role":{"Fn::GetAtt":["CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265","Arn"]},"runtime":"python3.13","timeout":900}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CLogGroup817B64E9","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536"}]]},"retentionInDays":731}}}}}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionAllFieldsStack/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"LogGroupF5B46931","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"CustomRole":{"id":"CustomRole","path":"WebFunctionAllFieldsStack/CustomRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/CustomRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"CustomRole6D8E6809","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}}}},"EnvVarKey":{"id":"EnvVarKey","path":"WebFunctionAllFieldsStack/EnvVarKey","constructInfo":{"fqn":"aws-cdk-lib.aws_kms.Key","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionAllFieldsStack/EnvVarKey/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_kms.CfnKey","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::KMS::Key","aws:cdk:cloudformation:logicalId":"EnvVarKey14620289","aws:cdk:cloudformation:props":{"keyPolicy":{"Statement":[{"Action":"kms:*","Effect":"Allow","Principal":{"AWS":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::",{"Ref":"AWS::AccountId"},":root"]]}},"Resource":"*"},{"Action":["kms:Decrypt","kms:DescribeKey","kms:GenerateDataKey"],"Condition":{"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}},"ArnLike":{"aws:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":lambda:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":web-function/*/revision/*"]]}}},"Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"},"Resource":"*"}],"Version":"2012-10-17"}}}}}},"AllFields":{"id":"AllFields","path":"WebFunctionAllFieldsStack/AllFields","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunction","version":"0.0.0"},"children":{"Function":{"id":"Function","path":"WebFunctionAllFieldsStack/AllFields/Function","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunction","aws:cdk:cloudformation:logicalId":"AllFieldsFunctionCF5EDC3E","aws:cdk:cloudformation:props":{"tags":[{"key":"Environment","value":"integ-test"},{"key":"Team","value":"cdk"}],"functionName":"WebFunctionAllFidsStackAllFields390CE3C2"}}},"Revision":{"id":"Revision","path":"WebFunctionAllFieldsStack/AllFields/Revision","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionRevision","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionRevision","aws:cdk:cloudformation:logicalId":"AllFieldsRevision510C45E9","aws:cdk:cloudformation:props":{"buildConfig":{"codeConfig":{"s3Object":{"bucket":{"Ref":"CodeBucketFF4C7AD6"},"key":{"Fn::Select":[0,{"Fn::GetAtt":["DeployCodeCustomResource46A14DA0","SourceObjectKeys"]}]},"versionId":{"Fn::Select":[0,{"Fn::GetAtt":["DeployCodeCustomResource46A14DA0","SourceObjectVersionIds"]}]}}},"runtimeConfig":{"runtime":"nodejs24.x"}},"description":"Integration test with all fields","functionName":{"Ref":"AllFieldsFunctionCF5EDC3E"},"kmsKeyArn":{"Fn::GetAtt":["EnvVarKey14620289","Arn"]},"serviceConfig":{"executionRoleArn":{"Fn::GetAtt":["CustomRole6D8E6809","Arn"]},"environmentVariables":{"MY_VAR":"my-value"},"telemetryConfig":{"loggingConfig":{"applicationLogLevel":"INFO","systemLogLevel":"WARN","logGroup":{"Ref":"LogGroupF5B46931"}}},"timeoutSeconds":120,"maxConcurrencyPerEnvironment":32}}}},"Endpoint":{"id":"Endpoint","path":"WebFunctionAllFieldsStack/AllFields/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunctionEndpoint","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionAllFieldsStack/AllFields/Endpoint/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionEndpoint","aws:cdk:cloudformation:logicalId":"AllFieldsEndpoint1B3E2E37","aws:cdk:cloudformation:props":{"authType":"IamAuth","description":"Integration test endpoint","endpointName":"live","endpointType":"HomeRegion","functionName":{"Fn::GetAtt":["AllFieldsFunctionCF5EDC3E","FunctionArn"]},"revisionWeights":[{"revisionId":{"Fn::GetAtt":["AllFieldsRevision510C45E9","RevisionId"]},"weight":100}],"scalingConfig":{"maxEnvironments":10},"throttleConfig":{"rateLimit":100}}}}}}}},"Exports":{"id":"Exports","path":"WebFunctionAllFieldsStack/Exports","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Output{\"Fn::GetAtt\":[\"AllFieldsEndpoint1B3E2E37\",\"DomainName\"]}":{"id":"Output{\"Fn::GetAtt\":[\"AllFieldsEndpoint1B3E2E37\",\"DomainName\"]}","path":"WebFunctionAllFieldsStack/Exports/Output{\"Fn::GetAtt\":[\"AllFieldsEndpoint1B3E2E37\",\"DomainName\"]}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionAllFieldsStack/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionAllFieldsStack/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"WebFunctionAllFieldsTest":{"id":"WebFunctionAllFieldsTest","path":"WebFunctionAllFieldsTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"WebFunctionAllFieldsTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionAllFieldsTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}},"DeployAssert":{"id":"DeployAssert","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"HttpApiCallaece1707756e3a03681d8f07e62646ee":{"id":"HttpApiCallaece1707756e3a03681d8f07e62646ee","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/HttpApiCallaece1707756e3a03681d8f07e62646ee","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.HttpApiCall","version":"0.0.0"},"children":{"HttpProvider":{"id":"HttpProvider","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/HttpApiCallaece1707756e3a03681d8f07e62646ee/HttpProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/HttpApiCallaece1707756e3a03681d8f07e62646ee/HttpProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/HttpApiCallaece1707756e3a03681d8f07e62646ee/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/HttpApiCallaece1707756e3a03681d8f07e62646ee/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/HttpApiCallaece1707756e3a03681d8f07e62646ee/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"SingletonFunction1488541a7b23466481b69b4408076b81":{"id":"SingletonFunction1488541a7b23466481b69b4408076b81","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Staging":{"id":"Staging","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionAllFieldsTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}}}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/validation-report.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/validation-report.json
new file mode 100644
index 0000000000000..6e40fa68c963a
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.js.snapshot/validation-report.json
@@ -0,0 +1,5 @@
+{
+  "version": "55.0.0",
+  "title": "Validation Report",
+  "pluginReports": []
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.ts
new file mode 100644
index 0000000000000..d9ac10c1ecce9
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-all-fields.ts
@@ -0,0 +1,111 @@
+import * as path from 'path';
+import * as cdk from 'aws-cdk-lib/core';
+import * as iam from 'aws-cdk-lib/aws-iam';
+import * as kms from 'aws-cdk-lib/aws-kms';
+import * as logs from 'aws-cdk-lib/aws-logs';
+import * as s3 from 'aws-cdk-lib/aws-s3';
+import * as s3deploy from 'aws-cdk-lib/aws-s3-deployment';
+import * as integ from '@aws-cdk/integ-tests-alpha';
+import {
+  ApplicationLogLevel,
+  SystemLogLevel,
+  WebFunctionAuthType,
+  WebFunctionEndpointLocation,
+  WebFunction,
+  WebFunctionCode,
+  WebFunctionRuntime,
+} from 'aws-cdk-lib/aws-lambda';
+
+const app = new cdk.App({ analyticsReporting: false });
+const stack = new cdk.Stack(app, 'WebFunctionAllFieldsStack');
+
+// Customer-managed key for the code S3 bucket (encrypts the code artifact at
+// rest). Distinct from `envVarKey` below, which encrypts the revision's
+// environment variables on the service side. Kept as separate keys to document
+// that they protect different things: this one is bucket-side (customer's data
+// store), that one is service-side (Lambda's revision store).
+//
+// The `kms:Decrypt` grant to the Lambda service principal is added
+// automatically by `WebFunctionCode.fromBucket` — the service reads code at
+// runtime via the bucket resource policy, and CMK-encrypted buckets require an
+// explicit key-policy grant on top of the bucket policy.
+const codeKey = new kms.Key(stack, 'CodeBucketKey', {
+  removalPolicy: cdk.RemovalPolicy.DESTROY,
+});
+
+const codeBucket = new s3.Bucket(stack, 'CodeBucket', {
+  versioned: true,
+  encryption: s3.BucketEncryption.KMS,
+  encryptionKey: codeKey,
+  removalPolicy: cdk.RemovalPolicy.DESTROY,
+  autoDeleteObjects: true,
+});
+
+// Deploy the handler code as a single zip object (extract: false) so we can
+// read its VersionId back via `objectVersionIds`.
+const deployment = new s3deploy.BucketDeployment(stack, 'DeployCode', {
+  sources: [s3deploy.Source.asset(path.join(__dirname, 'webfunction-handler'))],
+  destinationBucket: codeBucket,
+  extract: false,
+});
+
+const logGroup = new logs.LogGroup(stack, 'LogGroup', {
+  removalPolicy: cdk.RemovalPolicy.DESTROY,
+});
+
+const customRole = new iam.Role(stack, 'CustomRole', {
+  assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'),
+  managedPolicies: [
+    iam.ManagedPolicy.fromAwsManagedPolicyName('service-role/AWSLambdaBasicExecutionRole'),
+  ],
+});
+
+// Customer-managed key for the revision's environment variables (encrypts the
+// env vars at rest inside the Lambda service). Distinct from `codeKey` above,
+// which encrypts the code artifact inside the customer's S3 bucket.
+const envVarKey = new kms.Key(stack, 'EnvVarKey', {
+  removalPolicy: cdk.RemovalPolicy.DESTROY,
+});
+
+const webFunction = new WebFunction(stack, 'AllFields', {
+  code: WebFunctionCode.fromBucket(
+    codeBucket,
+    cdk.Fn.select(0, deployment.objectKeys),
+    cdk.Fn.select(0, deployment.objectVersionIds),
+  ),
+  runtime: WebFunctionRuntime.NODEJS_LATEST,
+  timeout: cdk.Duration.seconds(120),
+  maxConcurrencyPerEnvironment: 32,
+  environment: { MY_VAR: 'my-value' },
+  revisionDescription: 'Integration test with all fields',
+  defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+  defaultEndpoint: {
+    endpointLocation: WebFunctionEndpointLocation.homeRegion(),
+    endpointName: 'live',
+    endpointDescription: 'Integration test endpoint',
+    maxEnvironments: 10,
+    rateLimit: 100,
+  },
+  role: customRole,
+  kmsKey: envVarKey,
+  applicationLogLevel: ApplicationLogLevel.INFO,
+  systemLogLevel: SystemLogLevel.WARN,
+  logGroup: logGroup,
+});
+
+cdk.Tags.of(webFunction).add('Environment', 'integ-test');
+cdk.Tags.of(webFunction).add('Team', 'cdk');
+
+const testCase = new integ.IntegTest(app, 'WebFunctionAllFieldsTest', {
+  testCases: [stack],
+  diffAssets: false,
+});
+
+// Functional smoke test: hit the resolved endpoint domain. The endpoint uses
+// IAM_AUTH, so an unsigned request is rejected with 403. Asserting 403 (rather
+// than a connection error or 5xx) confirms the endpoint is live, reachable over
+// TLS, and enforcing auth — i.e. the resources are wired correctly, not merely
+// deployed.
+testCase.assertions
+  .httpApiCall(`https://${webFunction.endpoint.domainName}/`)
+  .expect(integ.ExpectedResult.objectLike({ status: 403 }));
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsStack.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsStack.assets.json
new file mode 100644
index 0000000000000..4a5c1bb4fd8e7
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsStack.assets.json
@@ -0,0 +1,62 @@
+{
+  "version": "55.0.0",
+  "files": {
+    "05f8cf9b9561b037c75b383c42c0967a173526dbe212fc403c1d6106494c217e": {
+      "displayName": "Function/Code",
+      "source": {
+        "path": "asset.05f8cf9b9561b037c75b383c42c0967a173526dbe212fc403c1d6106494c217e",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-56c054cc": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "05f8cf9b9561b037c75b383c42c0967a173526dbe212fc403c1d6106494c217e.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61": {
+      "displayName": "WebFunctionEndpointsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider Code",
+      "source": {
+        "path": "asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-094cbf39": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d": {
+      "displayName": "Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code",
+      "source": {
+        "path": "asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-40395998": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "0d95a4444586c1078658365812baa8a9abe583654b1b4981f0acaad9cb778c39": {
+      "displayName": "WebFunctionEndpointsStack Template",
+      "source": {
+        "path": "WebFunctionEndpointsStack.template.json",
+        "packaging": "file"
+      },
+      "destinations": {
+        "current_account-current_region-456a045a": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "0d95a4444586c1078658365812baa8a9abe583654b1b4981f0acaad9cb778c39.json",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    }
+  },
+  "dockerImages": {}
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsStack.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsStack.metadata.json
new file mode 100644
index 0000000000000..e3921370f68a8
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsStack.metadata.json
@@ -0,0 +1,510 @@
+{
+  "/WebFunctionEndpointsStack": [
+    {
+      "type": "aws:cdk:templateFile",
+      "data": "WebFunctionEndpointsStack.template.json"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "versioned": true,
+        "encryption": "S3_MANAGED",
+        "blockPublicAccess": "*",
+        "enforceSSL": true,
+        "removalPolicy": "destroy",
+        "autoDeleteObjects": true
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider": [
+    {
+      "type": "aws:cdk:is-custom-resource-handler-customResourceProvider",
+      "data": true
+    }
+  ],
+  "/WebFunctionEndpointsStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-logGroup",
+      "data": true
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "timeout": "*",
+        "role": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-singleton",
+      "data": true
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-runtime-family",
+      "data": 0
+    }
+  ],
+  "/WebFunctionEndpointsStack/Signer": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "runtime": "*",
+        "handler": "*",
+        "timeout": "*",
+        "code": "*"
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/BootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "BootstrapVersion"
+    }
+  ],
+  "/WebFunctionEndpointsStack/CheckBootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CheckBootstrapVersion"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/LogGroup": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/Function": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "Function042596DC"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/Revision": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionRevision22F51A9C"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/Endpoint": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/MultiRegion": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/PerRegion": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/ResourcePolicy": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionResourcePolicy7171D69F"
+    }
+  ],
+  "/WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/Policy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "bucket": "*"
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F"
+    }
+  ],
+  "/WebFunctionEndpointsStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Signer/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/Signer/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "Signer046C0E68"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Signer/LogGroup": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "logGroupName": "*"
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/Exports/Output{\"Ref\":\"Signer046C0E68\"}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputRefSigner046C0E68BB08D0D9"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Exports/Output{\"Fn::GetAtt\":[\"FunctionEndpoint85BE574A\",\"DomainName\"]}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputFnGetAttFunctionEndpoint85BE574ADomainName48F4D80C"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Exports/Output{\"Fn::GetAtt\":[\"FunctionMultiRegion7EEB9354\",\"DomainName\"]}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputFnGetAttFunctionMultiRegion7EEB9354DomainName23B83893"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Exports/Output{\"Fn::GetAtt\":[\"FunctionPerRegion025706AB\",\"DomainName\"]}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputFnGetAttFunctionPerRegion025706ABDomainName20BD526A"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionServiceRole675BB04A"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/CodeCopyd6190910/CustomResourceHandler": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "uuid": "*",
+        "lambdaPurpose": "*",
+        "timeout": "*",
+        "role": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          true
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          "*"
+        ]
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/CodeCopyd6190910/Resource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/LogGroup/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionLogGroup55B80E27"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/Endpoint/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionEndpoint85BE574A"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/MultiRegion/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionMultiRegion7EEB9354"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/PerRegion/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionPerRegion025706AB"
+    }
+  ],
+  "/WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/Policy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AWSCDKWebFunctionAssetBucketAutoDeleteObjectsCustomResource7C95046A"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Signer/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SignerServiceRole18A0DCD3"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Signer/LogGroup/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SignerLogGroup0DE99B5E"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Function/CodeCopyd6190910/Resource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionCodeCopyd61909107AB50639"
+    }
+  ],
+  "/WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsStack.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsStack.template.json
new file mode 100644
index 0000000000000..a69b627af93ec
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsStack.template.json
@@ -0,0 +1,828 @@
+{
+ "Resources": {
+  "FunctionServiceRole675BB04A": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "FunctionCodeCopyd61909107AB50639": {
+   "Type": "Custom::S3ObjectCopy",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085",
+      "Arn"
+     ]
+    },
+    "SourceBucketName": {
+     "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+    },
+    "SourceObjectKey": "05f8cf9b9561b037c75b383c42c0967a173526dbe212fc403c1d6106494c217e.zip",
+    "DestinationBucketName": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    "DestinationKeyPrefix": "web-function/WebFunctionEndpointsStackFunctionCD78E45E/",
+    "ContentHash": "05f8cf9b9561b037c75b383c42c0967a173526dbe212fc403c1d6106494c217e",
+    "Configuration": {
+     "Properties": {
+      "BuildConfig": {
+       "RuntimeConfig": {
+        "Runtime": "ea70e0b0f76ff72b61a06c9d0f7ca9ad"
+       }
+      },
+      "FunctionName": {
+       "Ref": "Function042596DC"
+      },
+      "ServiceConfig": {
+       "ExecutionRoleArn": {
+        "Fn::GetAtt": [
+         "FunctionServiceRole675BB04A",
+         "Arn"
+        ]
+       },
+       "TelemetryConfig": {
+        "LoggingConfig": {
+         "LogGroup": {
+          "Ref": "FunctionLogGroup55B80E27"
+         }
+        }
+       },
+       "TimeoutSeconds": 30
+      }
+     },
+     "References": []
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "FunctionLogGroup55B80E27": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "Function042596DC": {
+   "Type": "AWS::Lambda::WebFunction",
+   "Properties": {
+    "FunctionName": "WebFunctionEndpontsStackFunctionCD78E45E"
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "FunctionRevision22F51A9C": {
+   "Type": "AWS::Lambda::WebFunctionRevision",
+   "Properties": {
+    "BuildConfig": {
+     "CodeConfig": {
+      "S3Object": {
+       "Bucket": {
+        "Fn::GetAtt": [
+         "FunctionCodeCopyd61909107AB50639",
+         "Bucket"
+        ]
+       },
+       "Key": {
+        "Fn::GetAtt": [
+         "FunctionCodeCopyd61909107AB50639",
+         "Key"
+        ]
+       },
+       "VersionId": {
+        "Fn::GetAtt": [
+         "FunctionCodeCopyd61909107AB50639",
+         "VersionId"
+        ]
+       }
+      }
+     },
+     "RuntimeConfig": {
+      "Runtime": "nodejs24.x"
+     }
+    },
+    "FunctionName": {
+     "Ref": "Function042596DC"
+    },
+    "ServiceConfig": {
+     "ExecutionRoleArn": {
+      "Fn::GetAtt": [
+       "FunctionServiceRole675BB04A",
+       "Arn"
+      ]
+     },
+     "TelemetryConfig": {
+      "LoggingConfig": {
+       "LogGroup": {
+        "Ref": "FunctionLogGroup55B80E27"
+       }
+      }
+     },
+     "TimeoutSeconds": 30
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7",
+    "Function042596DC"
+   ]
+  },
+  "FunctionEndpoint85BE574A": {
+   "Type": "AWS::Lambda::WebFunctionEndpoint",
+   "Properties": {
+    "AuthType": "IamAuth",
+    "EndpointName": "prod",
+    "EndpointType": "HomeRegion",
+    "FunctionName": {
+     "Fn::GetAtt": [
+      "Function042596DC",
+      "FunctionArn"
+     ]
+    },
+    "RevisionWeights": [
+     {
+      "RevisionId": {
+       "Fn::GetAtt": [
+        "FunctionRevision22F51A9C",
+        "RevisionId"
+       ]
+      },
+      "Weight": 100
+     }
+    ]
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7",
+    "Function042596DC",
+    "FunctionRevision22F51A9C"
+   ]
+  },
+  "FunctionMultiRegion7EEB9354": {
+   "Type": "AWS::Lambda::WebFunctionEndpoint",
+   "Properties": {
+    "AuthType": "IamAuth",
+    "EndpointName": "WebFunctionEndpointsStackFunctionMultiRegion0DDEC83B-a679dbcc",
+    "EndpointType": "MultiRegion",
+    "FunctionName": {
+     "Fn::GetAtt": [
+      "Function042596DC",
+      "FunctionArn"
+     ]
+    },
+    "Regions": [
+     "us-east-1"
+    ],
+    "RevisionWeights": [
+     {
+      "RevisionId": {
+       "Fn::GetAtt": [
+        "FunctionRevision22F51A9C",
+        "RevisionId"
+       ]
+      },
+      "Weight": 100
+     }
+    ]
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7",
+    "Function042596DC",
+    "FunctionRevision22F51A9C"
+   ]
+  },
+  "FunctionPerRegion025706AB": {
+   "Type": "AWS::Lambda::WebFunctionEndpoint",
+   "Properties": {
+    "AuthType": "IamAuth",
+    "EndpointName": "WebFunctionEndpointsStackFunctionPerRegion97EC7827-011e961f",
+    "EndpointType": "PerRegion",
+    "FunctionName": {
+     "Fn::GetAtt": [
+      "Function042596DC",
+      "FunctionArn"
+     ]
+    },
+    "Regions": [
+     "us-east-1"
+    ],
+    "RevisionWeights": [
+     {
+      "RevisionId": {
+       "Fn::GetAtt": [
+        "FunctionRevision22F51A9C",
+        "RevisionId"
+       ]
+      },
+      "Weight": 100
+     }
+    ]
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7",
+    "Function042596DC",
+    "FunctionRevision22F51A9C"
+   ]
+  },
+  "FunctionResourcePolicy7171D69F": {
+   "Type": "AWS::Lambda::ResourcePolicy",
+   "Properties": {
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": "lambda:InvokeWebFunctionEndpoint",
+       "Effect": "Allow",
+       "Principal": {
+        "AWS": {
+         "Fn::GetAtt": [
+          "SignerServiceRole18A0DCD3",
+          "Arn"
+         ]
+        }
+       },
+       "Resource": {
+        "Fn::GetAtt": [
+         "FunctionEndpoint85BE574A",
+         "EndpointArn"
+        ]
+       },
+       "Sid": "0"
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ResourceArn": {
+     "Fn::GetAtt": [
+      "Function042596DC",
+      "FunctionArn"
+     ]
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "AWSCDKWebFunctionAssetBucket5B596593": {
+   "Type": "AWS::S3::Bucket",
+   "Properties": {
+    "BucketEncryption": {
+     "ServerSideEncryptionConfiguration": [
+      {
+       "ServerSideEncryptionByDefault": {
+        "SSEAlgorithm": "AES256"
+       }
+      }
+     ]
+    },
+    "PublicAccessBlockConfiguration": {
+     "BlockPublicAcls": true,
+     "BlockPublicPolicy": true,
+     "IgnorePublicAcls": true,
+     "RestrictPublicBuckets": true
+    },
+    "Tags": [
+     {
+      "Key": "aws-cdk:auto-delete-objects",
+      "Value": "true"
+     }
+    ],
+    "VersioningConfiguration": {
+     "Status": "Enabled"
+    }
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "AWSCDKWebFunctionAssetBucketPolicy406CF5E7": {
+   "Type": "AWS::S3::BucketPolicy",
+   "Properties": {
+    "Bucket": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": "s3:*",
+       "Condition": {
+        "Bool": {
+         "aws:SecureTransport": "false"
+        }
+       },
+       "Effect": "Deny",
+       "Principal": {
+        "AWS": "*"
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "AWSCDKWebFunctionAssetBucket5B596593",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "AWSCDKWebFunctionAssetBucket5B596593",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:DeleteObject*",
+        "s3:GetBucket*",
+        "s3:List*",
+        "s3:PutBucketPolicy"
+       ],
+       "Effect": "Allow",
+       "Principal": {
+        "AWS": {
+         "Fn::GetAtt": [
+          "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+          "Arn"
+         ]
+        }
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "AWSCDKWebFunctionAssetBucket5B596593",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "AWSCDKWebFunctionAssetBucket5B596593",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:GetObject",
+        "s3:GetObjectVersion"
+       ],
+       "Condition": {
+        "StringEquals": {
+         "aws:SourceAccount": {
+          "Ref": "AWS::AccountId"
+         }
+        },
+        "ArnLike": {
+         "aws:SourceArn": {
+          "Fn::Join": [
+           "",
+           [
+            "arn:",
+            {
+             "Ref": "AWS::Partition"
+            },
+            ":lambda:",
+            {
+             "Ref": "AWS::Region"
+            },
+            ":",
+            {
+             "Ref": "AWS::AccountId"
+            },
+            ":web-function/*/revision/*"
+           ]
+          ]
+         }
+        }
+       },
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       },
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "AWSCDKWebFunctionAssetBucket5B596593",
+            "Arn"
+           ]
+          },
+          "/web-function/*"
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    }
+   }
+  },
+  "AWSCDKWebFunctionAssetBucketAutoDeleteObjectsCustomResource7C95046A": {
+   "Type": "Custom::S3AutoDeleteObjects",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F",
+      "Arn"
+     ]
+    },
+    "BucketName": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Version": "2012-10-17",
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ]
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+     }
+    ]
+   }
+  },
+  "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip"
+    },
+    "Timeout": 900,
+    "MemorySize": 128,
+    "Handler": "index.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs24.x",
+    "Description": {
+     "Fn::Join": [
+      "",
+      [
+       "Lambda function for auto-deleting objects in ",
+       {
+        "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+       },
+       " S3 bucket."
+      ]
+     ]
+    }
+   },
+   "DependsOn": [
+    "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092"
+   ]
+  },
+  "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731
+   },
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   }
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207": {
+   "Type": "AWS::IAM::Policy",
+   "Properties": {
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": [
+        "s3:GetObject",
+        "s3:GetObjectVersion"
+       ],
+       "Effect": "Allow",
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          "arn:",
+          {
+           "Ref": "AWS::Partition"
+          },
+          ":s3:::",
+          {
+           "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+          },
+          "/*"
+         ]
+        ]
+       }
+      },
+      {
+       "Action": [
+        "s3:Abort*",
+        "s3:DeleteObject*",
+        "s3:PutObject",
+        "s3:PutObjectLegalHold",
+        "s3:PutObjectRetention",
+        "s3:PutObjectTagging",
+        "s3:PutObjectVersionTagging"
+       ],
+       "Effect": "Allow",
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "AWSCDKWebFunctionAssetBucket5B596593",
+            "Arn"
+           ]
+          },
+          "/web-function/*"
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "PolicyName": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207",
+    "Roles": [
+     {
+      "Ref": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"
+     }
+    ]
+   }
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip"
+    },
+    "Handler": "index.handler",
+    "LoggingConfig": {
+     "LogGroup": {
+      "Ref": "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C"
+     }
+    },
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs24.x",
+    "Timeout": 900
+   },
+   "DependsOn": [
+    "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207",
+    "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"
+   ]
+  },
+  "SignerServiceRole18A0DCD3": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   }
+  },
+  "Signer046C0E68": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "ZipFile": "\nconst crypto = require('crypto');\nconst https = require('https');\nconst hash = (data) => crypto.createHash('sha256').update(data).digest('hex');\nconst hmac = (key, data) => crypto.createHmac('sha256', key).update(data).digest();\nexports.handler = async ({ url }) => {\n  const { hostname, pathname } = new URL(url);\n  const region = process.env.AWS_REGION;\n  const service = 'lambda';\n  const amzDate = new Date().toISOString().replace(/[:-]|\\.\\d{3}/g, '');\n  const date = amzDate.slice(0, 8);\n  const payloadHash = hash('');\n  const headers = {\n    'host': hostname,\n    'x-amz-content-sha256': payloadHash,\n    'x-amz-date': amzDate,\n    'x-amz-security-token': process.env.AWS_SESSION_TOKEN,\n  };\n  const names = Object.keys(headers).sort();\n  const canonical = ['GET', pathname || '/', '', ...names.map((n) => n + ':' + headers[n]), '', names.join(';'), payloadHash].join('\\n');\n  const scope = date + '/' + region + '/' + service + '/aws4_request';\n  const toSign = ['AWS4-HMAC-SHA256', amzDate, scope, hash(canonical)].join('\\n');\n  let key = hmac('AWS4' + process.env.AWS_SECRET_ACCESS_KEY, date);\n  for (const part of [region, service, 'aws4_request']) { key = hmac(key, part); }\n  const signature = crypto.createHmac('sha256', key).update(toSign).digest('hex');\n  headers.authorization = 'AWS4-HMAC-SHA256 Credential=' + process.env.AWS_ACCESS_KEY_ID + '/' + scope +\n    ', SignedHeaders=' + names.join(';') + ', Signature=' + signature;\n  const status = await new Promise((resolve, reject) => {\n    https.get({ hostname, path: pathname || '/', headers }, (res) => { res.resume(); resolve(res.statusCode); })\n      .on('error', reject);\n  });\n  return { status };\n};\n"
+    },
+    "Handler": "index.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "SignerServiceRole18A0DCD3",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs22.x",
+    "Timeout": 30
+   },
+   "DependsOn": [
+    "SignerServiceRole18A0DCD3"
+   ]
+  },
+  "SignerLogGroup0DE99B5E": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "LogGroupName": {
+     "Fn::Join": [
+      "",
+      [
+       "/aws/lambda/",
+       {
+        "Ref": "Signer046C0E68"
+       }
+      ]
+     ]
+    },
+    "RetentionInDays": 731
+   },
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  }
+ },
+ "Outputs": {
+  "ExportsOutputRefSigner046C0E68BB08D0D9": {
+   "Value": {
+    "Ref": "Signer046C0E68"
+   },
+   "Export": {
+    "Name": "WebFunctionEndpointsStack:ExportsOutputRefSigner046C0E68BB08D0D9"
+   }
+  },
+  "ExportsOutputFnGetAttFunctionEndpoint85BE574ADomainName48F4D80C": {
+   "Value": {
+    "Fn::GetAtt": [
+     "FunctionEndpoint85BE574A",
+     "DomainName"
+    ]
+   },
+   "Export": {
+    "Name": "WebFunctionEndpointsStack:ExportsOutputFnGetAttFunctionEndpoint85BE574ADomainName48F4D80C"
+   }
+  },
+  "ExportsOutputFnGetAttFunctionMultiRegion7EEB9354DomainName23B83893": {
+   "Value": {
+    "Fn::GetAtt": [
+     "FunctionMultiRegion7EEB9354",
+     "DomainName"
+    ]
+   },
+   "Export": {
+    "Name": "WebFunctionEndpointsStack:ExportsOutputFnGetAttFunctionMultiRegion7EEB9354DomainName23B83893"
+   }
+  },
+  "ExportsOutputFnGetAttFunctionPerRegion025706ABDomainName20BD526A": {
+   "Value": {
+    "Fn::GetAtt": [
+     "FunctionPerRegion025706AB",
+     "DomainName"
+    ]
+   },
+   "Export": {
+    "Name": "WebFunctionEndpointsStack:ExportsOutputFnGetAttFunctionPerRegion025706ABDomainName20BD526A"
+   }
+  }
+ },
+ "Parameters": {
+  "BootstrapVersion": {
+   "Type": "AWS::SSM::Parameter::Value",
+   "Default": "/cdk-bootstrap/hnb659fds/version",
+   "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
+  }
+ },
+ "Rules": {
+  "CheckBootstrapVersion": {
+   "Assertions": [
+    {
+     "Assert": {
+      "Fn::Not": [
+       {
+        "Fn::Contains": [
+         [
+          "1",
+          "2",
+          "3",
+          "4",
+          "5"
+         ],
+         {
+          "Ref": "BootstrapVersion"
+         }
+        ]
+       }
+      ]
+     },
+     "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
+    }
+   ]
+  }
+ }
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.assets.json
new file mode 100644
index 0000000000000..7b6fdc86b4b84
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.assets.json
@@ -0,0 +1,33 @@
+{
+  "version": "55.0.0",
+  "files": {
+    "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57": {
+      "source": {
+        "path": "asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-d3646850": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "953882a037064c2d7ef85739a1140df3f0dee51b9388b26efad49917f82182fe": {
+      "displayName": "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653 Template",
+      "source": {
+        "path": "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.template.json",
+        "packaging": "file"
+      },
+      "destinations": {
+        "current_account-current_region-94369333": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "953882a037064c2d7ef85739a1140df3f0dee51b9388b26efad49917f82182fe.json",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    }
+  },
+  "dockerImages": {}
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.metadata.json
new file mode 100644
index 0000000000000..9aa5737de3fda
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.metadata.json
@@ -0,0 +1,134 @@
+{
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert": [
+    {
+      "type": "aws:cdk:warning",
+      "data": "No cross-stack-reference strength configured, defaulting to \"strong\". We recommend you set feature flag \"@aws-cdk/core:defaultCrossStackReferences\" to \"both\", then deploy everywhere, then set it to \"weak\". Alternatively, set it to \"strong\" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength) [ack: @aws-cdk/core:crossStackReferencesDefaultStrong]",
+      "trace": [
+        "Annotations.addMessage (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:244:29)",
+        "Annotations.addWarningV2 (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:113:18)",
+        "resolveValue (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:215:54)",
+        "resolveReferencesInElements (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:139:30)",
+        "resolveReferences (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:124:5)",
+        "prepareApp (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/prepare-app.js:35:36)",
+        "synthesize (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/synthesis.js:72:36)",
+        "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/stage.js:230:96)",
+        "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:231:27)",
+        "process. (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:178:51)",
+        "Object.onceWrapper (node:events:634:26)",
+        "process.emit (node:events:519:28)"
+      ]
+    },
+    {
+      "type": "aws:cdk:templateFile",
+      "data": "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.template.json"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/BootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "BootstrapVersion"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/CheckBootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CheckBootstrapVersion"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/Default": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/Invoke": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18Invoke4B14A144"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/AssertionResults": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AssertionResultsLambdaInvoke49ffbfd3972dfb55dec5376309e4fc18"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall20b4594c5720cee4a43f5b376b00efe5/Default": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall20b4594c5720cee4a43f5b376b00efe5/AssertionResults": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AssertionResultsHttpApiCall20b4594c5720cee4a43f5b376b00efe5"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f/Default": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f/AssertionResults": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AssertionResultsHttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/Default/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall20b4594c5720cee4a43f5b376b00efe5/Default/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "HttpApiCall20b4594c5720cee4a43f5b376b00efe5"
+    }
+  ],
+  "/WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f/Default/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.template.json
new file mode 100644
index 0000000000000..3c79259efdb17
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.template.json
@@ -0,0 +1,279 @@
+{
+ "Resources": {
+  "LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18": {
+   "Type": "Custom::DeployAssert@SdkCallLambdainvoke",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F",
+      "Arn"
+     ]
+    },
+    "service": "Lambda",
+    "api": "invoke",
+    "expected": "{\"$ObjectLike\":{\"Payload\":\"{\\\"status\\\":200}\"}}",
+    "parameters": {
+     "FunctionName": {
+      "Fn::Join": [
+       "",
+       [
+        "\"",
+        {
+         "Fn::ImportValue": "WebFunctionEndpointsStack:ExportsOutputRefSigner046C0E68BB08D0D9"
+        },
+        "\""
+       ]
+      ]
+     },
+     "Payload": {
+      "Fn::Join": [
+       "",
+       [
+        "\"{\\\"url\\\":\\\"https://",
+        {
+         "Fn::ImportValue": "WebFunctionEndpointsStack:ExportsOutputFnGetAttFunctionEndpoint85BE574ADomainName48F4D80C"
+        },
+        "/\\\"}\""
+       ]
+      ]
+     }
+    },
+    "flattenResponse": "false",
+    "salt": "1793236356281"
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18Invoke4B14A144": {
+   "Type": "AWS::Lambda::Permission",
+   "Properties": {
+    "Action": "lambda:InvokeFunction",
+    "FunctionName": {
+     "Fn::ImportValue": "WebFunctionEndpointsStack:ExportsOutputRefSigner046C0E68BB08D0D9"
+    },
+    "Principal": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73",
+      "Arn"
+     ]
+    }
+   }
+  },
+  "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Version": "2012-10-17",
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ]
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+     }
+    ],
+    "Policies": [
+     {
+      "PolicyName": "Inline",
+      "PolicyDocument": {
+       "Version": "2012-10-17",
+       "Statement": [
+        {
+         "Action": [
+          "lambda:Invoke"
+         ],
+         "Effect": "Allow",
+         "Resource": [
+          "*"
+         ]
+        },
+        {
+         "Action": [
+          "lambda:InvokeFunction"
+         ],
+         "Effect": "Allow",
+         "Resource": [
+          {
+           "Fn::Join": [
+            "",
+            [
+             "arn:",
+             {
+              "Ref": "AWS::Partition"
+             },
+             ":lambda:",
+             {
+              "Ref": "AWS::Region"
+             },
+             ":",
+             {
+              "Ref": "AWS::AccountId"
+             },
+             ":function:",
+             {
+              "Fn::ImportValue": "WebFunctionEndpointsStack:ExportsOutputRefSigner046C0E68BB08D0D9"
+             }
+            ]
+           ]
+          }
+         ]
+        }
+       ]
+      }
+     }
+    ]
+   }
+  },
+  "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Runtime": "nodejs24.x",
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip"
+    },
+    "Timeout": 120,
+    "Handler": "index.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73",
+      "Arn"
+     ]
+    },
+    "LoggingConfig": {
+     "LogFormat": "JSON",
+     "ApplicationLogLevel": "FATAL"
+    }
+   }
+  },
+  "HttpApiCall20b4594c5720cee4a43f5b376b00efe5": {
+   "Type": "Custom::DeployAssert@HttpCall",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F",
+      "Arn"
+     ]
+    },
+    "parameters": {
+     "url": {
+      "Fn::Join": [
+       "",
+       [
+        "https://",
+        {
+         "Fn::ImportValue": "WebFunctionEndpointsStack:ExportsOutputFnGetAttFunctionMultiRegion7EEB9354DomainName23B83893"
+        },
+        "/"
+       ]
+      ]
+     }
+    },
+    "expected": "{\"$ObjectLike\":{\"status\":403}}",
+    "flattenResponse": "false",
+    "salt": "1793236356281"
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f": {
+   "Type": "Custom::DeployAssert@HttpCall",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F",
+      "Arn"
+     ]
+    },
+    "parameters": {
+     "url": {
+      "Fn::Join": [
+       "",
+       [
+        "https://",
+        {
+         "Fn::ImportValue": "WebFunctionEndpointsStack:ExportsOutputFnGetAttFunctionPerRegion025706ABDomainName20BD526A"
+        },
+        "/"
+       ]
+      ]
+     }
+    },
+    "expected": "{\"$ObjectLike\":{\"status\":403}}",
+    "flattenResponse": "false",
+    "salt": "1793236356281"
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  }
+ },
+ "Outputs": {
+  "AssertionResultsLambdaInvoke49ffbfd3972dfb55dec5376309e4fc18": {
+   "Value": {
+    "Fn::GetAtt": [
+     "LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18",
+     "assertion"
+    ]
+   }
+  },
+  "AssertionResultsHttpApiCall20b4594c5720cee4a43f5b376b00efe5": {
+   "Value": {
+    "Fn::GetAtt": [
+     "HttpApiCall20b4594c5720cee4a43f5b376b00efe5",
+     "assertion"
+    ]
+   }
+  },
+  "AssertionResultsHttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f": {
+   "Value": {
+    "Fn::GetAtt": [
+     "HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f",
+     "assertion"
+    ]
+   }
+  }
+ },
+ "Parameters": {
+  "BootstrapVersion": {
+   "Type": "AWS::SSM::Parameter::Value",
+   "Default": "/cdk-bootstrap/hnb659fds/version",
+   "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
+  }
+ },
+ "Rules": {
+  "CheckBootstrapVersion": {
+   "Assertions": [
+    {
+     "Assert": {
+      "Fn::Not": [
+       {
+        "Fn::Contains": [
+         [
+          "1",
+          "2",
+          "3",
+          "4",
+          "5"
+         ],
+         {
+          "Ref": "BootstrapVersion"
+         }
+        ]
+       }
+      ]
+     },
+     "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
+    }
+   ]
+  }
+ }
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.05f8cf9b9561b037c75b383c42c0967a173526dbe212fc403c1d6106494c217e/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.05f8cf9b9561b037c75b383c42c0967a173526dbe212fc403c1d6106494c217e/index.js
new file mode 100644
index 0000000000000..c4ad7210c52f8
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.05f8cf9b9561b037c75b383c42c0967a173526dbe212fc403c1d6106494c217e/index.js
@@ -0,0 +1,12 @@
+// A WebFunction runs this file as a long-lived HTTP server. The platform passes the address
+// to listen on in AWS_LAMBDA_HTTP_ENDPOINT (for example "0.0.0.0:3000").
+const http = require('http');
+
+const server = http.createServer((_req, res) => {
+  res.writeHead(200, { 'Content-Type': 'application/json' });
+  res.end(JSON.stringify({ status: 'ok' }));
+});
+
+const endpoint = (process.env.AWS_LAMBDA_HTTP_ENDPOINT || '0.0.0.0:3000').replace(/^[a-z]+:\/\//, '');
+const sep = endpoint.lastIndexOf(':');
+server.listen(Number(endpoint.slice(sep + 1)) || 3000, endpoint.slice(0, sep) || '0.0.0.0');
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js
new file mode 100644
index 0000000000000..1002ba018e9fb
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js
@@ -0,0 +1 @@
+"use strict";var f=Object.create;var i=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var A=(t,e)=>{for(var o in e)i(t,o,{get:e[o],enumerable:!0})},d=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of C(e))!P.call(t,s)&&s!==o&&i(t,s,{get:()=>e[s],enumerable:!(r=I(e,s))||r.enumerable});return t};var l=(t,e,o)=>(o=t!=null?f(w(t)):{},d(e||!t||!t.__esModule?i(o,"default",{value:t,enumerable:!0}):o,t)),B=t=>d(i({},"__esModule",{value:!0}),t);var q={};A(q,{autoDeleteHandler:()=>S,handler:()=>H});module.exports=B(q);var h=require("@aws-sdk/client-s3");var y=l(require("https")),m=l(require("url")),a={sendHttpRequest:D,log:T,includeStackTraces:!0,userHandlerIndex:"./index"},p="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",L="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function R(t){return async(e,o)=>{let r={...e,ResponseURL:"..."};if(a.log(JSON.stringify(r,void 0,2)),e.RequestType==="Delete"&&e.PhysicalResourceId===p){a.log("ignoring DELETE event caused by a failed CREATE event"),await u("SUCCESS",e);return}try{let s=await t(r,o),n=k(e,s);await u("SUCCESS",n)}catch(s){let n={...e,Reason:a.includeStackTraces?s.stack:s.message};n.PhysicalResourceId||(e.RequestType==="Create"?(a.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),n.PhysicalResourceId=p):a.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(e)}`)),await u("FAILED",n)}}}function k(t,e={}){let o=e.PhysicalResourceId??t.PhysicalResourceId??t.RequestId;if(t.RequestType==="Delete"&&o!==t.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${t.PhysicalResourceId}" to "${e.PhysicalResourceId}" during deletion`);return{...t,...e,PhysicalResourceId:o}}async function u(t,e){let o={Status:t,Reason:e.Reason??t,StackId:e.StackId,RequestId:e.RequestId,PhysicalResourceId:e.PhysicalResourceId||L,LogicalResourceId:e.LogicalResourceId,NoEcho:e.NoEcho,Data:e.Data},r=m.parse(e.ResponseURL),s=`${r.protocol}//${r.hostname}/${r.pathname}?***`;a.log("submit response to cloudformation",s,o);let n=JSON.stringify(o),E={hostname:r.hostname,path:r.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(n,"utf8")}};await O({attempts:5,sleep:1e3},a.sendHttpRequest)(E,n)}async function D(t,e){return new Promise((o,r)=>{try{let s=y.request(t,n=>{n.resume(),!n.statusCode||n.statusCode>=400?r(new Error(`Unsuccessful HTTP response: ${n.statusCode}`)):o()});s.on("error",r),s.write(e),s.end()}catch(s){r(s)}})}function T(t,...e){console.log(t,...e)}function O(t,e){return async(...o)=>{let r=t.attempts,s=t.sleep;for(;;)try{return await e(...o)}catch(n){if(r--<=0)throw n;await b(Math.floor(Math.random()*s)),s*=2}}}async function b(t){return new Promise(e=>setTimeout(e,t))}var g="aws-cdk:auto-delete-objects",x=JSON.stringify({Version:"2012-10-17",Statement:[]}),c=new h.S3({}),H=R(S);async function S(t){switch(t.RequestType){case"Create":return;case"Update":return{PhysicalResourceId:(await F(t)).PhysicalResourceId};case"Delete":return N(t.ResourceProperties?.BucketName)}}async function F(t){let e=t,o=e.OldResourceProperties?.BucketName;return{PhysicalResourceId:e.ResourceProperties?.BucketName??o}}async function _(t){try{let e=(await c.getBucketPolicy({Bucket:t}))?.Policy??x,o=JSON.parse(e);o.Statement.push({Principal:"*",Effect:"Deny",Action:["s3:PutObject"],Resource:[`arn:aws:s3:::${t}/*`]}),await c.putBucketPolicy({Bucket:t,Policy:JSON.stringify(o)})}catch(e){if(e.name==="NoSuchBucket")throw e;console.log(`Could not set new object deny policy on bucket '${t}' prior to deletion.`)}}async function U(t){let e;do{e=await c.listObjectVersions({Bucket:t});let o=[...e.Versions??[],...e.DeleteMarkers??[]];if(o.length===0)return;let r=o.map(s=>({Key:s.Key,VersionId:s.VersionId}));await c.deleteObjects({Bucket:t,Delete:{Objects:r}})}while(e?.IsTruncated)}async function N(t){if(!t)throw new Error("No BucketName was provided.");try{if(!await W(t)){console.log(`Bucket does not have '${g}' tag, skipping cleaning.`);return}await _(t),await U(t)}catch(e){if(e.name==="NoSuchBucket"){console.log(`Bucket '${t}' does not exist.`);return}throw e}}async function W(t){return(await c.getBucketTagging({Bucket:t})).TagSet?.some(o=>o.Key===g&&o.Value==="true")}0&&(module.exports={autoDeleteHandler,handler});
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js
new file mode 100644
index 0000000000000..44fb7e8727ea5
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js
@@ -0,0 +1,117765 @@
+"use strict";
+var __create = Object.create;
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __getProtoOf = Object.getPrototypeOf;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
+var __typeError = (msg) => {
+  throw TypeError(msg);
+};
+var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
+var __esm = (fn, res, err) => function __init() {
+  if (err) throw err[0];
+  try {
+    return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
+  } catch (e) {
+    throw err = [e], e;
+  }
+};
+var __commonJS = (cb, mod) => function __require() {
+  try {
+    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
+  } catch (e) {
+    throw mod = 0, e;
+  }
+};
+var __export = (target, all) => {
+  for (var name in all)
+    __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+  if (from && typeof from === "object" || typeof from === "function") {
+    for (let key of __getOwnPropNames(from))
+      if (!__hasOwnProp.call(to, key) && key !== except)
+        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+  }
+  return to;
+};
+var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
+var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
+  // If the importer is in node compatibility mode or this is not an ESM
+  // file that has been converted to a CommonJS file using a Babel-
+  // compatible transform (i.e. "__esModule" has not been set), then set
+  // "default" to the CommonJS "module.exports" for node compatibility.
+  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
+  mod
+));
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
+var __decoratorStart = (base) => [, , , __create(base?.[__knownSymbol("metadata")] ?? null)];
+var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
+var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn;
+var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null)) });
+var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]);
+var __runInitializers = (array, flags, self2, value) => {
+  for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self2) : value = fns[i].call(self2, value);
+  return value;
+};
+var __decorateElement = (array, flags, name, decorators, target, extra) => {
+  var fn, it, done, ctx, access, k = flags & 7, s = !!(flags & 8), p = !!(flags & 16);
+  var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0, key = __decoratorStrings[k + 5];
+  var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
+  var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [name]() {
+    return __privateGet(this, extra);
+  }, set [name](x) {
+    return __privateSet(this, extra, x);
+  } }, name));
+  k ? p && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name(target, name);
+  for (var i = decorators.length - 1; i >= 0; i--) {
+    ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
+    if (k) {
+      ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) => name in x };
+      if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];
+      if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y;
+    }
+    it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;
+    if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it);
+    else if (typeof it !== "object" || it === null) __typeError("Object expected");
+    else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);
+  }
+  return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;
+};
+var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
+var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
+var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the "in" operator on this value') : member.has(obj);
+var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
+var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
+var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
+var __using = (stack, value, async) => {
+  if (value != null) {
+    if (typeof value !== "object" && typeof value !== "function") __typeError("Object expected");
+    var dispose, inner;
+    if (async) dispose = value[__knownSymbol("asyncDispose")];
+    if (dispose === void 0) {
+      dispose = value[__knownSymbol("dispose")];
+      if (async) inner = dispose;
+    }
+    if (typeof dispose !== "function") __typeError("Object not disposable");
+    if (inner) dispose = function() {
+      try {
+        inner.call(this);
+      } catch (e) {
+        return Promise.reject(e);
+      }
+    };
+    stack.push([async, dispose, value]);
+  } else if (async) {
+    stack.push([async]);
+  }
+  return value;
+};
+var __callDispose = (stack, error, hasError) => {
+  var E = typeof SuppressedError === "function" ? SuppressedError : function(e, s, m, _) {
+    return _ = Error(m), _.name = "SuppressedError", _.error = e, _.suppressed = s, _;
+  };
+  var fail = (e) => error = hasError ? new E(e, error, "An error was suppressed during disposal") : (hasError = true, e);
+  var next = (it) => {
+    while (it = stack.pop()) {
+      try {
+        var result = it[1] && it[1].call(it[2]);
+        if (it[0]) return Promise.resolve(result).then(next, (e) => (fail(e), next()));
+      } catch (e) {
+        fail(e);
+      }
+    }
+    if (hasError) throw error;
+  };
+  return next();
+};
+
+// ../../aws-cdk-lib/assertions/lib/matcher.ts
+var matcher_exports = {};
+__export(matcher_exports, {
+  MatchResult: () => MatchResult,
+  Matcher: () => Matcher
+});
+function* range(n) {
+  for (let i = 0; i < n; i++) {
+    yield i;
+  }
+}
+function* enumFirst(xs) {
+  let first = true;
+  for (const x of xs) {
+    yield [first, x];
+    first = false;
+  }
+}
+var Matcher, MatchResult;
+var init_matcher = __esm({
+  "../../aws-cdk-lib/assertions/lib/matcher.ts"() {
+    "use strict";
+    Matcher = class _Matcher {
+      /**
+       * Check whether the provided object is a subtype of the `IMatcher`.
+       */
+      static isMatcher(x) {
+        return x && x instanceof _Matcher;
+      }
+    };
+    MatchResult = class {
+      /**
+       * The target for which this result was generated.
+       */
+      target;
+      failuresHere = /* @__PURE__ */ new Map();
+      captures = /* @__PURE__ */ new Map();
+      finalized = false;
+      innerMatchFailures = /* @__PURE__ */ new Map();
+      _hasFailed = false;
+      _failCount = 0;
+      _cost = 0;
+      constructor(target) {
+        this.target = target;
+      }
+      /**
+       * DEPRECATED
+       * @deprecated use recordFailure()
+       */
+      push(matcher, path23, message) {
+        return this.recordFailure({ matcher, path: path23, message });
+      }
+      /**
+       * Record a new failure into this result at a specific path.
+       */
+      recordFailure(failure) {
+        const failKey = failure.path.join(".");
+        let list = this.failuresHere.get(failKey);
+        if (!list) {
+          list = [];
+          this.failuresHere.set(failKey, list);
+        }
+        this._failCount += 1;
+        this._cost += failure.cost ?? 1;
+        list.push(failure);
+        this._hasFailed = true;
+        return this;
+      }
+      /** Whether the match is a success */
+      get isSuccess() {
+        return !this._hasFailed;
+      }
+      /** Does the result contain any failures. If not, the result is a success */
+      hasFailed() {
+        return this._hasFailed;
+      }
+      /** The number of failures */
+      get failCount() {
+        return this._failCount;
+      }
+      /** The cost of the failures so far */
+      get failCost() {
+        return this._cost;
+      }
+      /**
+       * Compose the results of a previous match as a subtree.
+       * @param id the id of the parent tree.
+       */
+      compose(id, inner) {
+        if (inner.hasFailed()) {
+          this._hasFailed = true;
+          this._failCount += inner.failCount;
+          this._cost += inner._cost;
+          this.innerMatchFailures.set(id, inner);
+        }
+        inner.captures.forEach((vals, capture) => {
+          vals.forEach((value) => this.recordCapture({ capture, value }));
+        });
+        return this;
+      }
+      /**
+       * Prepare the result to be analyzed.
+       * This API *must* be called prior to analyzing these results.
+       */
+      finished() {
+        if (this.finalized) {
+          return this;
+        }
+        if (this.failCount === 0) {
+          this.captures.forEach((vals, cap) => cap._captured.push(...vals));
+        }
+        this.finalized = true;
+        return this;
+      }
+      /**
+       * Render the failed match in a presentable way
+       *
+       * Prefer using `renderMismatch` over this method. It is left for backwards
+       * compatibility for test suites that expect it, but `renderMismatch()` will
+       * produce better output.
+       */
+      toHumanStrings() {
+        const failures = new Array();
+        recurse(this, []);
+        return failures.map((r) => {
+          const loc = r.path.length === 0 ? "" : ` at /${r.path.join("/")}`;
+          return "" + r.message + loc + ` (using ${r.matcher.name} matcher)`;
+        });
+        function recurse(x, prefix) {
+          for (const fail of Array.from(x.failuresHere.values()).flat()) {
+            failures.push({
+              matcher: fail.matcher,
+              message: fail.message,
+              path: [...prefix, ...fail.path]
+            });
+          }
+          for (const [key, inner] of x.innerMatchFailures.entries()) {
+            recurse(inner, [...prefix, key]);
+          }
+        }
+      }
+      /**
+       * Do a deep render of the match result, showing the structure mismatches in context
+       */
+      renderMismatch() {
+        if (!this.hasFailed()) {
+          return "";
+        }
+        const parts = new Array();
+        const indents = new Array();
+        emitFailures(this, "");
+        recurse(this);
+        return moveMarkersToFront(parts.join("").trimEnd());
+        function emit(x) {
+          if (x === void 0) {
+            debugger;
+          }
+          parts.push(x.replace(/\n/g, `
+${indents.join("")}`));
+        }
+        function emitFailures(r, path23, scrapSet) {
+          for (const fail of r.failuresHere.get(path23) ?? []) {
+            emit(`!! ${fail.message}
+`);
+          }
+          scrapSet?.delete(path23);
+        }
+        function recurse(r) {
+          const remainingFailures = new Set(Array.from(r.failuresHere.keys()).filter((x) => x !== ""));
+          if (Array.isArray(r.target)) {
+            indents.push("  ");
+            emit("[\n");
+            for (const [first, i] of enumFirst(range(r.target.length))) {
+              if (!first) {
+                emit(",\n");
+              }
+              emitFailures(r, `${i}`, remainingFailures);
+              const innerMatcher = r.innerMatchFailures.get(`${i}`);
+              if (innerMatcher) {
+                emitFailures(innerMatcher, "");
+                recurseComparingValues(innerMatcher, r.target[i]);
+              } else {
+                emit(renderAbridged(r.target[i]));
+              }
+            }
+            emitRemaining();
+            indents.pop();
+            emit("\n]");
+            return;
+          }
+          if (r.target && typeof r.target === "object") {
+            indents.push("  ");
+            emit("{\n");
+            const keys = Array.from(/* @__PURE__ */ new Set([
+              ...Object.keys(r.target),
+              ...Array.from(remainingFailures)
+            ])).sort();
+            for (const [first, key] of enumFirst(keys)) {
+              if (!first) {
+                emit(",\n");
+              }
+              emitFailures(r, key, remainingFailures);
+              const innerMatcher = r.innerMatchFailures.get(key);
+              if (innerMatcher) {
+                emitFailures(innerMatcher, "");
+                emit(`${jsonify(key)}: `);
+                recurseComparingValues(innerMatcher, r.target[key]);
+              } else {
+                emit(`${jsonify(key)}: `);
+                emit(renderAbridged(r.target[key]));
+              }
+            }
+            emitRemaining();
+            indents.pop();
+            emit("\n}");
+            return;
+          }
+          emitRemaining();
+          emit(jsonify(r.target));
+          function emitRemaining() {
+            if (remainingFailures.size > 0) {
+              emit("\n");
+            }
+            for (const key of remainingFailures) {
+              emitFailures(r, key);
+            }
+          }
+        }
+        function recurseComparingValues(inner, actualValue) {
+          if (inner.target === actualValue) {
+            return recurse(inner);
+          }
+          emit(renderAbridged(actualValue));
+          emit(" <*> ");
+          recurse(inner);
+        }
+        function renderAbridged(x) {
+          if (Array.isArray(x)) {
+            switch (x.length) {
+              case 0:
+                return "[]";
+              case 1:
+                return `[ ${renderAbridged(x[0])} ]`;
+              case 2:
+                if (x.every((e) => ["number", "boolean", "string"].includes(typeof e))) {
+                  return `[ ${x.map(renderAbridged).join(", ")} ]`;
+                }
+                return "[ ... ]";
+              default:
+                return "[ ... ]";
+            }
+          }
+          if (x && typeof x === "object") {
+            const keys = Object.keys(x);
+            switch (keys.length) {
+              case 0:
+                return "{}";
+              case 1:
+                return `{ ${JSON.stringify(keys[0])}: ${renderAbridged(x[keys[0]])} }`;
+              default:
+                return "{ ... }";
+            }
+          }
+          return jsonify(x);
+        }
+        function jsonify(x) {
+          return JSON.stringify(x) ?? "undefined";
+        }
+        function moveMarkersToFront(x) {
+          const re = /^(\s+)!!/gm;
+          return x.replace(re, (_, spaces) => `!!${spaces.substring(0, spaces.length - 2)}`);
+        }
+      }
+      /**
+       * Record a capture against in this match result.
+       */
+      recordCapture(options) {
+        let values = this.captures.get(options.capture);
+        if (values === void 0) {
+          values = [];
+        }
+        values.push(options.value);
+        this.captures.set(options.capture, values);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/error.ts
+var ASSERTION_ERROR_SYMBOL, AssertionError;
+var init_error = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/error.ts"() {
+    "use strict";
+    ASSERTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/assertions.AssertionError");
+    AssertionError = class _AssertionError extends Error {
+      #time;
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return this.#time;
+      }
+      get type() {
+        return "assertion";
+      }
+      constructor(msg) {
+        super(msg);
+        Object.setPrototypeOf(this, _AssertionError.prototype);
+        Object.defineProperty(this, ASSERTION_ERROR_SYMBOL, { value: true });
+        this.name = new.target.name;
+        this.#time = (/* @__PURE__ */ new Date()).toISOString();
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts
+var AbsentMatch;
+var init_absent = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts"() {
+    "use strict";
+    init_matcher();
+    AbsentMatch = class extends Matcher {
+      constructor(name) {
+        super();
+        this.name = name;
+      }
+      name;
+      test(actual) {
+        const result = new MatchResult(actual);
+        if (actual !== void 0) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Received ${actual}, but key should be absent`
+          });
+        }
+        return result;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/sorting.ts
+function sortKeyComparator(keyFn) {
+  return (a, b) => {
+    const ak = keyFn(a);
+    const bk = keyFn(b);
+    for (let i = 0; i < ak.length && i < bk.length; i++) {
+      const av = ak[i];
+      const bv = bk[i];
+      let diff = 0;
+      if (typeof av === "number" && typeof bv === "number") {
+        diff = av - bv;
+      } else if (typeof av === "string" && typeof bv === "string") {
+        diff = av.localeCompare(bv);
+      }
+      if (diff !== 0) {
+        return diff;
+      }
+    }
+    return bk.length - ak.length;
+  };
+}
+var init_sorting = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/sorting.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts
+var SparseMatrix;
+var init_sparse_matrix = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts"() {
+    "use strict";
+    SparseMatrix = class {
+      matrix = /* @__PURE__ */ new Map();
+      get(row, col) {
+        return this.matrix.get(row)?.get(col);
+      }
+      row(row) {
+        return Array.from(this.matrix.get(row)?.entries() ?? []);
+      }
+      set(row, col, value) {
+        let r = this.matrix.get(row);
+        if (!r) {
+          r = /* @__PURE__ */ new Map();
+          this.matrix.set(row, r);
+        }
+        r.set(col, value);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/type.ts
+function getType(obj) {
+  return Array.isArray(obj) ? "array" : typeof obj;
+}
+var init_type = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/type.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/match.ts
+var match_exports = {};
+__export(match_exports, {
+  Match: () => Match
+});
+var Match, LiteralMatch, ArrayMatch, ObjectMatch, SerializedJson, NotMatch, AnyMatch, StringLikeRegexpMatch;
+var init_match = __esm({
+  "../../aws-cdk-lib/assertions/lib/match.ts"() {
+    "use strict";
+    init_matcher();
+    init_error();
+    init_absent();
+    init_sorting();
+    init_sparse_matrix();
+    init_type();
+    Match = class {
+      /**
+       * Use this matcher in the place of a field's value, if the field must not be present.
+       */
+      static absent() {
+        return new AbsentMatch("absent");
+      }
+      /**
+       * Matches the specified pattern with the array found in the same relative path of the target.
+       * The set of elements (or matchers) must be in the same order as would be found.
+       * @param pattern the pattern to match
+       */
+      static arrayWith(pattern) {
+        return new ArrayMatch("arrayWith", pattern);
+      }
+      /**
+       * Matches the specified pattern with the array found in the same relative path of the target.
+       * The set of elements (or matchers) must match exactly and in order.
+       * @param pattern the pattern to match
+       */
+      static arrayEquals(pattern) {
+        return new ArrayMatch("arrayEquals", pattern, { subsequence: false });
+      }
+      /**
+       * Deep exact matching of the specified pattern to the target.
+       * @param pattern the pattern to match
+       */
+      static exact(pattern) {
+        return new LiteralMatch("exact", pattern, { partialObjects: false });
+      }
+      /**
+       * Matches the specified pattern to an object found in the same relative path of the target.
+       * The keys and their values (or matchers) must be present in the target but the target can be a superset.
+       * @param pattern the pattern to match
+       */
+      static objectLike(pattern) {
+        return new ObjectMatch("objectLike", pattern);
+      }
+      /**
+       * Matches the specified pattern to an object found in the same relative path of the target.
+       * The keys and their values (or matchers) must match exactly with the target.
+       * @param pattern the pattern to match
+       */
+      static objectEquals(pattern) {
+        return new ObjectMatch("objectEquals", pattern, { partial: false });
+      }
+      /**
+       * Matches any target which does NOT follow the specified pattern.
+       * @param pattern the pattern to NOT match
+       */
+      static not(pattern) {
+        return new NotMatch("not", pattern);
+      }
+      /**
+       * Matches any string-encoded JSON and applies the specified pattern after parsing it.
+       * @param pattern the pattern to match after parsing the encoded JSON.
+       */
+      static serializedJson(pattern) {
+        return new SerializedJson("serializedJson", pattern);
+      }
+      /**
+       * Matches any non-null value at the target.
+       */
+      static anyValue() {
+        return new AnyMatch("anyValue");
+      }
+      /**
+       * Matches targets according to a regular expression
+       */
+      static stringLikeRegexp(pattern) {
+        return new StringLikeRegexpMatch("stringLikeRegexp", pattern);
+      }
+    };
+    LiteralMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.partialObjects = options.partialObjects ?? false;
+        if (Matcher.isMatcher(this.pattern)) {
+          throw new AssertionError("LiteralMatch cannot directly contain another matcher. Remove the top-level matcher or nest it more deeply.");
+        }
+      }
+      name;
+      pattern;
+      partialObjects;
+      test(actual) {
+        if (Array.isArray(this.pattern)) {
+          return new ArrayMatch(this.name, this.pattern, { subsequence: false, partialObjects: this.partialObjects }).test(actual);
+        }
+        if (typeof this.pattern === "object") {
+          return new ObjectMatch(this.name, this.pattern, { partial: this.partialObjects }).test(actual);
+        }
+        const result = new MatchResult(actual);
+        if (typeof this.pattern !== typeof actual) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type ${typeof this.pattern} but received ${getType(actual)}`
+          });
+          return result;
+        }
+        if (actual !== this.pattern) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected ${this.pattern} but received ${actual}`
+          });
+        }
+        return result;
+      }
+    };
+    ArrayMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.subsequence = options.subsequence ?? true;
+        this.partialObjects = options.partialObjects ?? false;
+      }
+      name;
+      pattern;
+      subsequence;
+      partialObjects;
+      test(actual) {
+        if (!Array.isArray(actual)) {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type array but received ${getType(actual)}`
+          });
+        }
+        return this.subsequence ? this.testSubsequence(actual) : this.testFullArray(actual);
+      }
+      testFullArray(actual) {
+        const result = new MatchResult(actual);
+        let i = 0;
+        for (; i < this.pattern.length && i < actual.length; i++) {
+          const patternElement = this.pattern[i];
+          const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects });
+          const innerResult = matcher.test(actual[i]);
+          result.compose(`${i}`, innerResult);
+        }
+        if (i < this.pattern.length) {
+          result.recordFailure({
+            matcher: this,
+            message: `Not enough elements in array (expecting ${this.pattern.length}, got ${actual.length})`,
+            path: [`${i}`]
+          });
+        }
+        if (i < actual.length) {
+          result.recordFailure({
+            matcher: this,
+            message: `Too many elements in array (expecting ${this.pattern.length}, got ${actual.length})`,
+            path: [`${i}`]
+          });
+        }
+        return result;
+      }
+      testSubsequence(actual) {
+        const result = new MatchResult(actual);
+        let patternIdx = 0;
+        let actualIdx = 0;
+        const matches = new SparseMatrix();
+        while (patternIdx < this.pattern.length && actualIdx < actual.length) {
+          const patternElement = this.pattern[patternIdx];
+          const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects });
+          const matcherName = matcher.name;
+          if (matcherName == "absent" || matcherName == "anyValue") {
+            throw new AssertionError(`The Matcher ${matcherName}() cannot be nested within arrayWith()`);
+          }
+          const innerResult = matcher.test(actual[actualIdx]);
+          matches.set(patternIdx, actualIdx, innerResult);
+          actualIdx++;
+          if (innerResult.isSuccess) {
+            result.compose(`${actualIdx}`, innerResult);
+            patternIdx++;
+          }
+        }
+        if (patternIdx < this.pattern.length) {
+          for (let spi = 0; spi < patternIdx; spi++) {
+            const foundMatch = matches.row(spi).find(([, r]) => r.isSuccess);
+            if (!foundMatch) {
+              continue;
+            }
+            const [index] = foundMatch;
+            result.compose(`${index}`, new MatchResult(actual[index]).recordFailure({
+              matcher: this,
+              message: `arrayWith pattern ${spi} matched here`,
+              path: [],
+              cost: 0
+              // This is an informational message so it would be unfair to assign it cost
+            }));
+          }
+          const failedMatches = matches.row(patternIdx);
+          failedMatches.sort(sortKeyComparator(([i, r]) => [r.failCost, i]));
+          if (failedMatches.length > 0) {
+            const [index, innerResult] = failedMatches[0];
+            result.recordFailure({
+              matcher: this,
+              message: `Could not match arrayWith pattern ${patternIdx}. This is the closest match`,
+              path: [`${index}`],
+              cost: 0
+              //  Informational message
+            });
+            result.compose(`${index}`, innerResult);
+          } else {
+            result.recordFailure({
+              matcher: this,
+              message: `Could not match arrayWith pattern ${patternIdx}. No more elements to try`,
+              path: [`${actual.length}`]
+            });
+          }
+        }
+        return result;
+      }
+    };
+    ObjectMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.partial = options.partial ?? true;
+      }
+      name;
+      pattern;
+      partial;
+      test(actual) {
+        if (typeof actual !== "object" || Array.isArray(actual)) {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type object but received ${getType(actual)}`
+          });
+        }
+        const result = new MatchResult(actual);
+        if (!this.partial) {
+          for (const a of Object.keys(actual)) {
+            if (!(a in this.pattern)) {
+              result.recordFailure({
+                matcher: this,
+                path: [a],
+                message: `Unexpected key ${a}`
+              });
+            }
+          }
+        }
+        for (const [patternKey, patternVal] of Object.entries(this.pattern)) {
+          if (!(patternKey in actual) && !(patternVal instanceof AbsentMatch)) {
+            result.recordFailure({
+              matcher: this,
+              path: [patternKey],
+              message: `Missing key '${patternKey}'`
+            });
+            continue;
+          }
+          const matcher = Matcher.isMatcher(patternVal) ? patternVal : new LiteralMatch(this.name, patternVal, { partialObjects: this.partial });
+          const inner = matcher.test(actual[patternKey]);
+          result.compose(patternKey, inner);
+        }
+        return result;
+      }
+    };
+    SerializedJson = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        if (getType(actual) !== "string") {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected JSON as a string but found ${getType(actual)}`
+          });
+        }
+        let parsed;
+        try {
+          parsed = JSON.parse(actual);
+        } catch (err) {
+          if (err instanceof SyntaxError) {
+            return new MatchResult(actual).recordFailure({
+              matcher: this,
+              path: [],
+              message: `Invalid JSON string: ${actual}`
+            });
+          } else {
+            throw err;
+          }
+        }
+        const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern);
+        const innerResult = matcher.test(parsed);
+        if (innerResult.hasFailed()) {
+          innerResult.recordFailure({
+            matcher: this,
+            path: [],
+            message: "Encoded JSON value does not match"
+          });
+        }
+        return innerResult;
+      }
+    };
+    NotMatch = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern);
+        const innerResult = matcher.test(actual);
+        const result = new MatchResult(actual);
+        if (innerResult.failCount === 0) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Found unexpected match: ${JSON.stringify(actual, void 0, 2)}`
+          });
+        }
+        return result;
+      }
+    };
+    AnyMatch = class extends Matcher {
+      constructor(name) {
+        super();
+        this.name = name;
+      }
+      name;
+      test(actual) {
+        const result = new MatchResult(actual);
+        if (actual == null) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: "Expected a value but found none"
+          });
+        }
+        return result;
+      }
+    };
+    StringLikeRegexpMatch = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        const result = new MatchResult(actual);
+        const regex = new RegExp(this.pattern, "gm");
+        if (typeof actual !== "string") {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected a string, but got '${typeof actual}'`
+          });
+        }
+        if (!regex.test(actual)) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `String '${actual}' did not match pattern '${this.pattern}'`
+          });
+        }
+        return result;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/literal-string.ts
+function lit(x) {
+  if (x.length !== 1) {
+    throw new AssumptionError("NotLiteral", `String literal may not contain any variables, got \`${x.join("${...}")}\``);
+  }
+  return x[0];
+}
+var init_literal_string = __esm({
+  "../../aws-cdk-lib/core/lib/private/literal-string.ts"() {
+    "use strict";
+    init_errors();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/runtime-info.ts
+function constructInfoFromConstruct(construct) {
+  const jsiiRuntimeInfo = Object.getPrototypeOf(construct).constructor[JSII_RUNTIME_SYMBOL];
+  if (typeof jsiiRuntimeInfo === "object" && jsiiRuntimeInfo !== null && typeof jsiiRuntimeInfo.fqn === "string" && typeof jsiiRuntimeInfo.version === "string") {
+    return {
+      fqn: jsiiRuntimeInfo.fqn,
+      version: jsiiRuntimeInfo.version
+    };
+  } else if (jsiiRuntimeInfo) {
+    throw new AssumptionError(lit`MalformedJsiiRuntimeInfo`, `malformed jsii runtime info for construct: '${construct.node.path}'`);
+  }
+  return void 0;
+}
+var JSII_RUNTIME_SYMBOL;
+var init_runtime_info = __esm({
+  "../../aws-cdk-lib/core/lib/private/runtime-info.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    JSII_RUNTIME_SYMBOL = /* @__PURE__ */ Symbol.for("jsii.rtti");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/stack-trace.ts
+function captureStackTrace(below = captureStackTrace, limit = void 0) {
+  if (!limit) {
+    return enhancedStackTrace(below, false);
+  }
+  const previousLimit = Error.stackTraceLimit;
+  try {
+    Error.stackTraceLimit = limit;
+    return enhancedStackTrace(below, false);
+  } finally {
+    Error.stackTraceLimit = previousLimit;
+  }
+}
+function enhancedStackTrace(upTo, indent = true) {
+  return withExternalTrace(renderCallStackJustMyCode(captureCallStack(upTo), indent));
+}
+function withExternalTrace(internal) {
+  const hostTrace = global[/* @__PURE__ */ Symbol.for("jsii.context.hostStackTrace")];
+  if (hostTrace != null) {
+    return internal.concat(hostTrace.slice(1).map(formatExternalFrame));
+  }
+  return internal;
+}
+function captureCallStack(upTo) {
+  const obj = {};
+  Error.captureStackTrace(obj, upTo);
+  let trace = parseErrorStack(obj.stack);
+  if (trace.length === 0) {
+    Error.captureStackTrace(obj);
+    trace = parseErrorStack(obj.stack);
+  }
+  return trace;
+}
+function formatExternalFrame(trace) {
+  const [filename, line, column, name] = trace;
+  return `${name} (${filename}:${line}${column > 0 ? ":" + column : ""})`;
+}
+function parseErrorStack(stack) {
+  const lines = stack.split("\n");
+  const framePrefix = "    at ";
+  return lines.filter((line) => line.startsWith(framePrefix)).map((line) => {
+    line = line.slice(framePrefix.length);
+    const frame = parseStackFrame(line);
+    if (frame.functionName === "Object.") {
+      frame.functionName = "";
+    }
+    return frame;
+  });
+}
+function parseStackFrame(frame) {
+  let fileName;
+  let functionName;
+  let sourceLocation;
+  const paren = frame.indexOf("(");
+  if (paren) {
+    functionName = frame.slice(0, paren - 1);
+    frame = frame.slice(paren + 1, -1);
+  } else {
+    functionName = "";
+  }
+  let asI = functionName.indexOf(" [as ");
+  if (asI > -1) {
+    const endOfAlias = functionName.indexOf("]", asI);
+    const lastPeriod = functionName.lastIndexOf(".", asI);
+    functionName = functionName.slice(0, lastPeriod + 1) + functionName.slice(asI + 5, endOfAlias);
+  }
+  const m = frame.match(/(:[0-9]+){0,2}$/);
+  fileName = m ? frame.slice(0, -m[0].length) : frame;
+  sourceLocation = m ? m[0].slice(1) : "";
+  return {
+    fileName,
+    functionName,
+    sourceLocation
+  };
+}
+function renderCallStackJustMyCode(stack, indent = true) {
+  const lines = [];
+  let skipped = new Array();
+  let sawMyCode = false;
+  let i = 0;
+  while (i < stack.length) {
+    const frame = stack[i++];
+    if (frame.fileName.match(DECORATOR_RE)) {
+      continue;
+    }
+    const pat = frame.fileName.match(MODULE_RE);
+    if (pat) {
+      while (i < stack.length && stack[i].fileName.includes(pat[0])) {
+        i++;
+      }
+      skip({ functionName: stack[i - 1].functionName, fileName: pat[3] });
+    } else if (frame.fileName.includes("node:")) {
+      skip({ fileName: "node internals" });
+      while (i < stack.length && stack[i].fileName.includes("node:")) {
+        i++;
+      }
+    } else if (isHostInternalFrame(frame)) {
+      skip({ fileName: "jsii runtime" });
+      while (i < stack.length && isHostInternalFrame(stack[i])) {
+        i++;
+      }
+    } else {
+      reportSkipped(true);
+      const prefix = indent ? "    at " : "";
+      lines.push(`${prefix}${frame.functionName} (${frame.fileName}:${frame.sourceLocation})`);
+      sawMyCode = true;
+    }
+  }
+  reportSkipped(false);
+  if (!sawMyCode) {
+    lines.push(`${indent ? "    " : ""}(no user code in ${Error.stackTraceLimit} frames, use --stack-trace-limit to capture more)`);
+  }
+  return lines;
+  function skip(what) {
+    if (!skipped.find((x) => x.fileName === what.fileName && x.functionName === what.functionName)) {
+      skipped.push(what);
+    }
+  }
+  function reportSkipped(includeFunction) {
+    if (skipped.length > 0) {
+      const rendered = skipped.map((s, j) => (
+        // Only render the function name of the last frame before user code
+        j === skipped.length - 1 && s.functionName && includeFunction ? `${s.functionName} in ${s.fileName}` : s.fileName
+      ));
+      const prefix = indent ? "    " : "";
+      lines.push(`${prefix}...${rendered.join(", ")}...`);
+    }
+    skipped = [];
+  }
+}
+function topUserFrame(stackTrace, frameFinder) {
+  for (const frame of stackTrace) {
+    if (frameFinder.isUserCodeFrame(frame)) {
+      return parseStackFrame(frame);
+    }
+  }
+  return void 0;
+}
+function isHostInternalFrame(frame) {
+  const hostDirName = global[/* @__PURE__ */ Symbol.for("jsii.context.hostDirName")];
+  return frame.fileName.includes(hostDirName);
+}
+var MODULE_RE, DECORATOR_RE, DEFAULT_STACK_FRAME_FINDER;
+var init_stack_trace = __esm({
+  "../../aws-cdk-lib/core/lib/private/stack-trace.ts"() {
+    "use strict";
+    MODULE_RE = /(\/|\\)node_modules(\/|\\)(@[^/\\]+[/\\][^/\\]+|[^@][^/\\]*)/;
+    DECORATOR_RE = /(\/|\\)(prop-injectable|no-box-stack-traces)\./;
+    DEFAULT_STACK_FRAME_FINDER = {
+      isUserCodeFrame(frame) {
+        return frame.includes(" (") && frame.endsWith(")");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js
+var require_vpc = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.VpcSubnetGroupType = void 0;
+    var VpcSubnetGroupType;
+    (function(VpcSubnetGroupType2) {
+      VpcSubnetGroupType2["PUBLIC"] = "Public";
+      VpcSubnetGroupType2["PRIVATE"] = "Private";
+      VpcSubnetGroupType2["ISOLATED"] = "Isolated";
+    })(VpcSubnetGroupType || (exports2.VpcSubnetGroupType = VpcSubnetGroupType = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js
+var require_ami = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js
+var require_load_balancer = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.LoadBalancerIpAddressType = void 0;
+    var LoadBalancerIpAddressType;
+    (function(LoadBalancerIpAddressType2) {
+      LoadBalancerIpAddressType2["IPV4"] = "ipv4";
+      LoadBalancerIpAddressType2["DUAL_STACK"] = "dualstack";
+      LoadBalancerIpAddressType2["DUAL_STACK_WITHOUT_PUBLIC_IPV4"] = "dualstack-without-public-ipv4";
+    })(LoadBalancerIpAddressType || (exports2.LoadBalancerIpAddressType = LoadBalancerIpAddressType = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js
+var require_availability_zones = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = void 0;
+    exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = "aws:cdk:availability-zones:fallback";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js
+var require_endpoint_service_availability_zones = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = void 0;
+    exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = "endpoint-service-availability-zones";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js
+var require_security_group = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js
+var require_key = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js
+var require_generic = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.PROVIDER_ERROR_KEY = void 0;
+    exports2.PROVIDER_ERROR_KEY = "$providerError";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js
+var require_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ArtifactType = void 0;
+    var ArtifactType5;
+    (function(ArtifactType6) {
+      ArtifactType6["NONE"] = "none";
+      ArtifactType6["AWS_CLOUDFORMATION_STACK"] = "aws:cloudformation:stack";
+      ArtifactType6["CDK_TREE"] = "cdk:tree";
+      ArtifactType6["ASSET_MANIFEST"] = "cdk:asset-manifest";
+      ArtifactType6["NESTED_CLOUD_ASSEMBLY"] = "cdk:cloud-assembly";
+      ArtifactType6["FEATURE_FLAG_REPORT"] = "cdk:feature-flag-report";
+    })(ArtifactType5 || (exports2.ArtifactType = ArtifactType5 = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js
+var require_metadata_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = exports2.ArtifactMetadataEntryType = void 0;
+    var ArtifactMetadataEntryType9;
+    (function(ArtifactMetadataEntryType10) {
+      ArtifactMetadataEntryType10["ASSET"] = "aws:cdk:asset";
+      ArtifactMetadataEntryType10["INFO"] = "aws:cdk:info";
+      ArtifactMetadataEntryType10["WARN"] = "aws:cdk:warning";
+      ArtifactMetadataEntryType10["ERROR"] = "aws:cdk:error";
+      ArtifactMetadataEntryType10["LOGICAL_ID"] = "aws:cdk:logicalId";
+      ArtifactMetadataEntryType10["STACK_TAGS"] = "aws:cdk:stack-tags";
+      ArtifactMetadataEntryType10["DO_NOT_REFACTOR"] = "aws:cdk:do-not-refactor";
+      ArtifactMetadataEntryType10["CREATION_STACK"] = "aws:cdk:creationStack";
+      ArtifactMetadataEntryType10["PROPERTY_ASSIGNMENT"] = "aws:cdk:propertyAssignment";
+    })(ArtifactMetadataEntryType9 || (exports2.ArtifactMetadataEntryType = ArtifactMetadataEntryType9 = {}));
+    exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = "aws:cdk:cloudformation:type";
+    exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = "aws:cdk:cloudformation:props";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js
+var require_artifact_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js
+var require_context_queries = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.LoadBalancerListenerProtocol = exports2.LoadBalancerType = exports2.ContextProvider = void 0;
+    var ContextProvider3;
+    (function(ContextProvider4) {
+      ContextProvider4["AMI_PROVIDER"] = "ami";
+      ContextProvider4["AVAILABILITY_ZONE_PROVIDER"] = "availability-zones";
+      ContextProvider4["HOSTED_ZONE_PROVIDER"] = "hosted-zone";
+      ContextProvider4["SSM_PARAMETER_PROVIDER"] = "ssm";
+      ContextProvider4["VPC_PROVIDER"] = "vpc-provider";
+      ContextProvider4["ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER"] = "endpoint-service-availability-zones";
+      ContextProvider4["LOAD_BALANCER_PROVIDER"] = "load-balancer";
+      ContextProvider4["LOAD_BALANCER_LISTENER_PROVIDER"] = "load-balancer-listener";
+      ContextProvider4["SECURITY_GROUP_PROVIDER"] = "security-group";
+      ContextProvider4["KEY_PROVIDER"] = "key-provider";
+      ContextProvider4["CC_API_PROVIDER"] = "cc-api-provider";
+      ContextProvider4["PLUGIN"] = "plugin";
+    })(ContextProvider3 || (exports2.ContextProvider = ContextProvider3 = {}));
+    var LoadBalancerType;
+    (function(LoadBalancerType2) {
+      LoadBalancerType2["NETWORK"] = "network";
+      LoadBalancerType2["APPLICATION"] = "application";
+    })(LoadBalancerType || (exports2.LoadBalancerType = LoadBalancerType = {}));
+    var LoadBalancerListenerProtocol;
+    (function(LoadBalancerListenerProtocol2) {
+      LoadBalancerListenerProtocol2["HTTP"] = "HTTP";
+      LoadBalancerListenerProtocol2["HTTPS"] = "HTTPS";
+      LoadBalancerListenerProtocol2["TCP"] = "TCP";
+      LoadBalancerListenerProtocol2["TLS"] = "TLS";
+      LoadBalancerListenerProtocol2["UDP"] = "UDP";
+      LoadBalancerListenerProtocol2["TCP_UDP"] = "TCP_UDP";
+    })(LoadBalancerListenerProtocol || (exports2.LoadBalancerListenerProtocol = LoadBalancerListenerProtocol = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js
+var require_interfaces = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js
+var require_validation_report_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js
+var require_cloud_assembly = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema(), exports2);
+    __exportStar2(require_metadata_schema(), exports2);
+    __exportStar2(require_artifact_schema(), exports2);
+    __exportStar2(require_context_queries(), exports2);
+    __exportStar2(require_interfaces(), exports2);
+    __exportStar2(require_validation_report_schema(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js
+var require_schema2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js
+var require_docker_image_asset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js
+var require_file_asset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.FileAssetPackaging = void 0;
+    var FileAssetPackaging2;
+    (function(FileAssetPackaging3) {
+      FileAssetPackaging3["FILE"] = "file";
+      FileAssetPackaging3["ZIP_DIRECTORY"] = "zip";
+    })(FileAssetPackaging2 || (exports2.FileAssetPackaging = FileAssetPackaging2 = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js
+var require_aws_destination = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js
+var require_assets = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema2(), exports2);
+    __exportStar2(require_docker_image_asset(), exports2);
+    __exportStar2(require_file_asset(), exports2);
+    __exportStar2(require_aws_destination(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js
+var require_helpers = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js"(exports2, module2) {
+    "use strict";
+    var ValidationError2 = exports2.ValidationError = function ValidationError3(message, instance, schema, path23, name, argument) {
+      if (Array.isArray(path23)) {
+        this.path = path23;
+        this.property = path23.reduce(function(sum, item) {
+          return sum + makeSuffix(item);
+        }, "instance");
+      } else if (path23 !== void 0) {
+        this.property = path23;
+      }
+      if (message) {
+        this.message = message;
+      }
+      if (schema) {
+        var id = schema.$id || schema.id;
+        this.schema = id || schema;
+      }
+      if (instance !== void 0) {
+        this.instance = instance;
+      }
+      this.name = name;
+      this.argument = argument;
+      this.stack = this.toString();
+    };
+    ValidationError2.prototype.toString = function toString2() {
+      return this.property + " " + this.message;
+    };
+    var ValidatorResult = exports2.ValidatorResult = function ValidatorResult2(instance, schema, options, ctx) {
+      this.instance = instance;
+      this.schema = schema;
+      this.options = options;
+      this.path = ctx.path;
+      this.propertyPath = ctx.propertyPath;
+      this.errors = [];
+      this.throwError = options && options.throwError;
+      this.throwFirst = options && options.throwFirst;
+      this.throwAll = options && options.throwAll;
+      this.disableFormat = options && options.disableFormat === true;
+    };
+    ValidatorResult.prototype.addError = function addError(detail) {
+      var err;
+      if (typeof detail == "string") {
+        err = new ValidationError2(detail, this.instance, this.schema, this.path);
+      } else {
+        if (!detail) throw new Error("Missing error detail");
+        if (!detail.message) throw new Error("Missing error message");
+        if (!detail.name) throw new Error("Missing validator type");
+        err = new ValidationError2(detail.message, this.instance, this.schema, this.path, detail.name, detail.argument);
+      }
+      this.errors.push(err);
+      if (this.throwFirst) {
+        throw new ValidatorResultError(this);
+      } else if (this.throwError) {
+        throw err;
+      }
+      return err;
+    };
+    ValidatorResult.prototype.importErrors = function importErrors(res) {
+      if (typeof res == "string" || res && res.validatorType) {
+        this.addError(res);
+      } else if (res && res.errors) {
+        this.errors = this.errors.concat(res.errors);
+      }
+    };
+    function stringizer(v, i) {
+      return i + ": " + v.toString() + "\n";
+    }
+    ValidatorResult.prototype.toString = function toString2(res) {
+      return this.errors.map(stringizer).join("");
+    };
+    Object.defineProperty(ValidatorResult.prototype, "valid", { get: function() {
+      return !this.errors.length;
+    } });
+    module2.exports.ValidatorResultError = ValidatorResultError;
+    function ValidatorResultError(result) {
+      if (typeof Error.captureStackTrace === "function") {
+        Error.captureStackTrace(this, ValidatorResultError);
+      }
+      this.instance = result.instance;
+      this.schema = result.schema;
+      this.options = result.options;
+      this.errors = result.errors;
+    }
+    ValidatorResultError.prototype = new Error();
+    ValidatorResultError.prototype.constructor = ValidatorResultError;
+    ValidatorResultError.prototype.name = "Validation Error";
+    var SchemaError = exports2.SchemaError = function SchemaError2(msg, schema) {
+      this.message = msg;
+      this.schema = schema;
+      Error.call(this, msg);
+      if (typeof Error.captureStackTrace === "function") {
+        Error.captureStackTrace(this, SchemaError2);
+      }
+    };
+    SchemaError.prototype = Object.create(
+      Error.prototype,
+      {
+        constructor: { value: SchemaError, enumerable: false },
+        name: { value: "SchemaError", enumerable: false }
+      }
+    );
+    var SchemaContext = exports2.SchemaContext = function SchemaContext2(schema, options, path23, base, schemas) {
+      this.schema = schema;
+      this.options = options;
+      if (Array.isArray(path23)) {
+        this.path = path23;
+        this.propertyPath = path23.reduce(function(sum, item) {
+          return sum + makeSuffix(item);
+        }, "instance");
+      } else {
+        this.propertyPath = path23;
+      }
+      this.base = base;
+      this.schemas = schemas;
+    };
+    SchemaContext.prototype.resolve = function resolve6(target) {
+      return (() => resolveUrl(this.base, target))();
+    };
+    SchemaContext.prototype.makeChild = function makeChild(schema, propertyName) {
+      var path23 = propertyName === void 0 ? this.path : this.path.concat([propertyName]);
+      var id = schema.$id || schema.id;
+      let base = (() => resolveUrl(this.base, id || ""))();
+      var ctx = new SchemaContext(schema, this.options, path23, base, Object.create(this.schemas));
+      if (id && !ctx.schemas[base]) {
+        ctx.schemas[base] = schema;
+      }
+      return ctx;
+    };
+    var FORMAT_REGEXPS = exports2.FORMAT_REGEXPS = {
+      // 7.3.1. Dates, Times, and Duration
+      "date-time": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])[tT ](2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])(\.\d+)?([zZ]|[+-]([0-5][0-9]):(60|[0-5][0-9]))$/,
+      "date": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])$/,
+      "time": /^(2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])$/,
+      "duration": /P(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S)|\d+(D|M(\d+D)?|Y(\d+M(\d+D)?)?)(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S))?|\d+W)/i,
+      // 7.3.2. Email Addresses
+      // TODO: fix the email production
+      "email": /^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/,
+      "idn-email": /^("(?:[!#-\[\]-\u{10FFFF}]|\\[\t -\u{10FFFF}])*"|[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*)@([!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*|\[[!-Z\^-\u{10FFFF}]*\])$/u,
+      // 7.3.3. Hostnames
+      // 7.3.4. IP Addresses
+      "ip-address": /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,
+      // FIXME whitespace is invalid
+      "ipv6": /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/,
+      // 7.3.5. Resource Identifiers
+      // TODO: A more accurate regular expression for "uri" goes:
+      // [A-Za-z][+\-.0-9A-Za-z]*:((/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?)?#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])|/?%[0-9A-Fa-f]{2}|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*(#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?)?
+      "uri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,
+      "uri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/,
+      "iri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,
+      "iri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~-\u{10FFFF}]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~-\u{10FFFF}])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/u,
+      "uuid": /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i,
+      // 7.3.6. uri-template
+      "uri-template": /(%[0-9a-f]{2}|[!#$&(-;=?@\[\]_a-z~]|\{[!#&+,./;=?@|]?(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?(,(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?)*\})*/iu,
+      // 7.3.7. JSON Pointers
+      "json-pointer": /^(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*$/iu,
+      "relative-json-pointer": /^\d+(#|(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*)$/iu,
+      // hostname regex from: http://stackoverflow.com/a/1420225/5628
+      "hostname": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,
+      "host-name": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,
+      "utc-millisec": function(input) {
+        return typeof input === "string" && parseFloat(input) === parseInt(input, 10) && !isNaN(input);
+      },
+      // 7.3.8. regex
+      "regex": function(input) {
+        var result = true;
+        try {
+          new RegExp(input);
+        } catch (e) {
+          result = false;
+        }
+        return result;
+      },
+      // Other definitions
+      // "style" was removed from JSON Schema in draft-4 and is deprecated
+      "style": /[\r\n\t ]*[^\r\n\t ][^:]*:[\r\n\t ]*[^\r\n\t ;]*[\r\n\t ]*;?/,
+      // "color" was removed from JSON Schema in draft-4 and is deprecated
+      "color": /^(#?([0-9A-Fa-f]{3}){1,2}\b|aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|(rgb\(\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*\))|(rgb\(\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*\)))$/,
+      "phone": /^\+(?:[0-9] ?){6,14}[0-9]$/,
+      "alpha": /^[a-zA-Z]+$/,
+      "alphanumeric": /^[a-zA-Z0-9]+$/
+    };
+    FORMAT_REGEXPS.regexp = FORMAT_REGEXPS.regex;
+    FORMAT_REGEXPS.pattern = FORMAT_REGEXPS.regex;
+    FORMAT_REGEXPS.ipv4 = FORMAT_REGEXPS["ip-address"];
+    exports2.isFormat = function isFormat(input, format, validator) {
+      if (typeof input === "string" && FORMAT_REGEXPS[format] !== void 0) {
+        if (FORMAT_REGEXPS[format] instanceof RegExp) {
+          return FORMAT_REGEXPS[format].test(input);
+        }
+        if (typeof FORMAT_REGEXPS[format] === "function") {
+          return FORMAT_REGEXPS[format](input);
+        }
+      } else if (validator && validator.customFormats && typeof validator.customFormats[format] === "function") {
+        return validator.customFormats[format](input);
+      }
+      return true;
+    };
+    var makeSuffix = exports2.makeSuffix = function makeSuffix2(key) {
+      key = key.toString();
+      if (!key.match(/[.\s\[\]]/) && !key.match(/^[\d]/)) {
+        return "." + key;
+      }
+      if (key.match(/^\d+$/)) {
+        return "[" + key + "]";
+      }
+      return "[" + JSON.stringify(key) + "]";
+    };
+    exports2.deepCompareStrict = function deepCompareStrict(a, b) {
+      if (typeof a !== typeof b) {
+        return false;
+      }
+      if (Array.isArray(a)) {
+        if (!Array.isArray(b)) {
+          return false;
+        }
+        if (a.length !== b.length) {
+          return false;
+        }
+        return a.every(function(v, i) {
+          return deepCompareStrict(a[i], b[i]);
+        });
+      }
+      if (typeof a === "object") {
+        if (!a || !b) {
+          return a === b;
+        }
+        var aKeys = Object.keys(a);
+        var bKeys = Object.keys(b);
+        if (aKeys.length !== bKeys.length) {
+          return false;
+        }
+        return aKeys.every(function(v) {
+          return deepCompareStrict(a[v], b[v]);
+        });
+      }
+      return a === b;
+    };
+    function deepMerger(target, dst, e, i) {
+      if (typeof e === "object") {
+        dst[i] = deepMerge2(target[i], e);
+      } else {
+        if (target.indexOf(e) === -1) {
+          dst.push(e);
+        }
+      }
+    }
+    function copyist(src, dst, key) {
+      dst[key] = src[key];
+    }
+    function copyistWithDeepMerge(target, src, dst, key) {
+      if (typeof src[key] !== "object" || !src[key]) {
+        dst[key] = src[key];
+      } else {
+        if (!target[key]) {
+          dst[key] = src[key];
+        } else {
+          dst[key] = deepMerge2(target[key], src[key]);
+        }
+      }
+    }
+    function deepMerge2(target, src) {
+      var array = Array.isArray(src);
+      var dst = array && [] || {};
+      if (array) {
+        target = target || [];
+        dst = dst.concat(target);
+        src.forEach(deepMerger.bind(null, target, dst));
+      } else {
+        if (target && typeof target === "object") {
+          Object.keys(target).forEach(copyist.bind(null, target, dst));
+        }
+        Object.keys(src).forEach(copyistWithDeepMerge.bind(null, target, src, dst));
+      }
+      return dst;
+    }
+    module2.exports.deepMerge = deepMerge2;
+    exports2.objectGetPath = function objectGetPath(o, s) {
+      var parts = s.split("/").slice(1);
+      var k;
+      while (typeof (k = parts.shift()) == "string") {
+        var n = decodeURIComponent(k.replace(/~0/, "~").replace(/~1/g, "/"));
+        if (!(n in o)) return;
+        o = o[n];
+      }
+      return o;
+    };
+    function pathEncoder(v) {
+      return "/" + encodeURIComponent(v).replace(/~/g, "%7E");
+    }
+    exports2.encodePath = function encodePointer(a) {
+      return a.map(pathEncoder).join("");
+    };
+    exports2.getDecimalPlaces = function getDecimalPlaces(number) {
+      var decimalPlaces = 0;
+      if (isNaN(number)) return decimalPlaces;
+      if (typeof number !== "number") {
+        number = Number(number);
+      }
+      var parts = number.toString().split("e");
+      if (parts.length === 2) {
+        if (parts[1][0] !== "-") {
+          return decimalPlaces;
+        } else {
+          decimalPlaces = Number(parts[1].slice(1));
+        }
+      }
+      var decimalParts = parts[0].split(".");
+      if (decimalParts.length === 2) {
+        decimalPlaces += decimalParts[1].length;
+      }
+      return decimalPlaces;
+    };
+    exports2.isSchema = function isSchema(val2) {
+      return typeof val2 === "object" && val2 || typeof val2 === "boolean";
+    };
+    var resolveUrl = exports2.resolveUrl = function resolveUrl2(from, to) {
+      const resolvedUrl = new URL(to, new URL(from, "resolve://"));
+      if (resolvedUrl.protocol === "resolve:") {
+        const { pathname, search, hash } = resolvedUrl;
+        return pathname + search + hash;
+      }
+      return resolvedUrl.toString();
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js
+var require_attribute = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js"(exports2, module2) {
+    "use strict";
+    var helpers = require_helpers();
+    var ValidatorResult = helpers.ValidatorResult;
+    var SchemaError = helpers.SchemaError;
+    var attribute = {};
+    attribute.ignoreProperties = {
+      // informative properties
+      "id": true,
+      "default": true,
+      "description": true,
+      "title": true,
+      // arguments to other properties
+      "additionalItems": true,
+      "then": true,
+      "else": true,
+      // special-handled properties
+      "$schema": true,
+      "$ref": true,
+      "extends": true
+    };
+    var validators = attribute.validators = {};
+    validators.type = function validateType(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var types2 = Array.isArray(schema.type) ? schema.type : [schema.type];
+      if (!types2.some(this.testType.bind(this, instance, schema, options, ctx))) {
+        var list = types2.map(function(v) {
+          if (!v) return;
+          var id = v.$id || v.id;
+          return id ? "<" + id + ">" : v + "";
+        });
+        result.addError({
+          name: "type",
+          argument: list,
+          message: "is not of a type(s) " + list
+        });
+      }
+      return result;
+    };
+    function testSchemaNoThrow(instance, options, ctx, callback, schema) {
+      var throwError = options.throwError;
+      var throwAll = options.throwAll;
+      options.throwError = false;
+      options.throwAll = false;
+      var res = this.validateSchema(instance, schema, options, ctx);
+      options.throwError = throwError;
+      options.throwAll = throwAll;
+      if (!res.valid && callback instanceof Function) {
+        callback(res);
+      }
+      return res.valid;
+    }
+    validators.anyOf = function validateAnyOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var inner = new ValidatorResult(instance, schema, options, ctx);
+      if (!Array.isArray(schema.anyOf)) {
+        throw new SchemaError("anyOf must be an array");
+      }
+      if (!schema.anyOf.some(
+        testSchemaNoThrow.bind(
+          this,
+          instance,
+          options,
+          ctx,
+          function(res) {
+            inner.importErrors(res);
+          }
+        )
+      )) {
+        var list = schema.anyOf.map(function(v, i) {
+          var id = v.$id || v.id;
+          if (id) return "<" + id + ">";
+          return v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+        });
+        if (options.nestedErrors) {
+          result.importErrors(inner);
+        }
+        result.addError({
+          name: "anyOf",
+          argument: list,
+          message: "is not any of " + list.join(",")
+        });
+      }
+      return result;
+    };
+    validators.allOf = function validateAllOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema.allOf)) {
+        throw new SchemaError("allOf must be an array");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var self2 = this;
+      schema.allOf.forEach(function(v, i) {
+        var valid = self2.validateSchema(instance, v, options, ctx);
+        if (!valid.valid) {
+          var id = v.$id || v.id;
+          var msg = id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+          result.addError({
+            name: "allOf",
+            argument: { id: msg, length: valid.errors.length, valid },
+            message: "does not match allOf schema " + msg + " with " + valid.errors.length + " error[s]:"
+          });
+          result.importErrors(valid);
+        }
+      });
+      return result;
+    };
+    validators.oneOf = function validateOneOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema.oneOf)) {
+        throw new SchemaError("oneOf must be an array");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var inner = new ValidatorResult(instance, schema, options, ctx);
+      var count2 = schema.oneOf.filter(
+        testSchemaNoThrow.bind(
+          this,
+          instance,
+          options,
+          ctx,
+          function(res) {
+            inner.importErrors(res);
+          }
+        )
+      ).length;
+      var list = schema.oneOf.map(function(v, i) {
+        var id = v.$id || v.id;
+        return id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+      });
+      if (count2 !== 1) {
+        if (options.nestedErrors) {
+          result.importErrors(inner);
+        }
+        result.addError({
+          name: "oneOf",
+          argument: list,
+          message: "is not exactly one from " + list.join(",")
+        });
+      }
+      return result;
+    };
+    validators.if = function validateIf(instance, schema, options, ctx) {
+      if (instance === void 0) return null;
+      if (!helpers.isSchema(schema.if)) throw new Error('Expected "if" keyword to be a schema');
+      var ifValid = testSchemaNoThrow.call(this, instance, options, ctx, null, schema.if);
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var res;
+      if (ifValid) {
+        if (schema.then === void 0) return;
+        if (!helpers.isSchema(schema.then)) throw new Error('Expected "then" keyword to be a schema');
+        res = this.validateSchema(instance, schema.then, options, ctx.makeChild(schema.then));
+        result.importErrors(res);
+      } else {
+        if (schema.else === void 0) return;
+        if (!helpers.isSchema(schema.else)) throw new Error('Expected "else" keyword to be a schema');
+        res = this.validateSchema(instance, schema.else, options, ctx.makeChild(schema.else));
+        result.importErrors(res);
+      }
+      return result;
+    };
+    function getEnumerableProperty(object, key) {
+      if (Object.hasOwnProperty.call(object, key)) return object[key];
+      if (!(key in object)) return;
+      while (object = Object.getPrototypeOf(object)) {
+        if (Object.propertyIsEnumerable.call(object, key)) return object[key];
+      }
+    }
+    validators.propertyNames = function validatePropertyNames(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var subschema = schema.propertyNames !== void 0 ? schema.propertyNames : {};
+      if (!helpers.isSchema(subschema)) throw new SchemaError('Expected "propertyNames" to be a schema (object or boolean)');
+      for (var property in instance) {
+        if (getEnumerableProperty(instance, property) !== void 0) {
+          var res = this.validateSchema(property, subschema, options, ctx.makeChild(subschema));
+          result.importErrors(res);
+        }
+      }
+      return result;
+    };
+    validators.properties = function validateProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var properties = schema.properties || {};
+      for (var property in properties) {
+        var subschema = properties[property];
+        if (subschema === void 0) {
+          continue;
+        } else if (subschema === null) {
+          throw new SchemaError('Unexpected null, expected schema in "properties"');
+        }
+        if (typeof options.preValidateProperty == "function") {
+          options.preValidateProperty(instance, property, subschema, options, ctx);
+        }
+        var prop = getEnumerableProperty(instance, property);
+        var res = this.validateSchema(prop, subschema, options, ctx.makeChild(subschema, property));
+        if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+        result.importErrors(res);
+      }
+      return result;
+    };
+    function testAdditionalProperty(instance, schema, options, ctx, property, result) {
+      if (!this.types.object(instance)) return;
+      if (schema.properties && schema.properties[property] !== void 0) {
+        return;
+      }
+      if (schema.additionalProperties === false) {
+        result.addError({
+          name: "additionalProperties",
+          argument: property,
+          message: "is not allowed to have the additional property " + JSON.stringify(property)
+        });
+      } else {
+        var additionalProperties = schema.additionalProperties || {};
+        if (typeof options.preValidateProperty == "function") {
+          options.preValidateProperty(instance, property, additionalProperties, options, ctx);
+        }
+        var res = this.validateSchema(instance[property], additionalProperties, options, ctx.makeChild(additionalProperties, property));
+        if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+        result.importErrors(res);
+      }
+    }
+    validators.patternProperties = function validatePatternProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var patternProperties = schema.patternProperties || {};
+      for (var property in instance) {
+        var test = true;
+        for (var pattern in patternProperties) {
+          var subschema = patternProperties[pattern];
+          if (subschema === void 0) {
+            continue;
+          } else if (subschema === null) {
+            throw new SchemaError('Unexpected null, expected schema in "patternProperties"');
+          }
+          try {
+            var regexp = new RegExp(pattern, "u");
+          } catch (_e) {
+            regexp = new RegExp(pattern);
+          }
+          if (!regexp.test(property)) {
+            continue;
+          }
+          test = false;
+          if (typeof options.preValidateProperty == "function") {
+            options.preValidateProperty(instance, property, subschema, options, ctx);
+          }
+          var res = this.validateSchema(instance[property], subschema, options, ctx.makeChild(subschema, property));
+          if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+          result.importErrors(res);
+        }
+        if (test) {
+          testAdditionalProperty.call(this, instance, schema, options, ctx, property, result);
+        }
+      }
+      return result;
+    };
+    validators.additionalProperties = function validateAdditionalProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      if (schema.patternProperties) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      for (var property in instance) {
+        testAdditionalProperty.call(this, instance, schema, options, ctx, property, result);
+      }
+      return result;
+    };
+    validators.minProperties = function validateMinProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var keys = Object.keys(instance);
+      if (!(keys.length >= schema.minProperties)) {
+        result.addError({
+          name: "minProperties",
+          argument: schema.minProperties,
+          message: "does not meet minimum property length of " + schema.minProperties
+        });
+      }
+      return result;
+    };
+    validators.maxProperties = function validateMaxProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var keys = Object.keys(instance);
+      if (!(keys.length <= schema.maxProperties)) {
+        result.addError({
+          name: "maxProperties",
+          argument: schema.maxProperties,
+          message: "does not meet maximum property length of " + schema.maxProperties
+        });
+      }
+      return result;
+    };
+    validators.items = function validateItems(instance, schema, options, ctx) {
+      var self2 = this;
+      if (!this.types.array(instance)) return;
+      if (schema.items === void 0) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      instance.every(function(value, i) {
+        if (Array.isArray(schema.items)) {
+          var items = schema.items[i] === void 0 ? schema.additionalItems : schema.items[i];
+        } else {
+          var items = schema.items;
+        }
+        if (items === void 0) {
+          return true;
+        }
+        if (items === false) {
+          result.addError({
+            name: "items",
+            message: "additionalItems not permitted"
+          });
+          return false;
+        }
+        var res = self2.validateSchema(value, items, options, ctx.makeChild(items, i));
+        if (res.instance !== result.instance[i]) result.instance[i] = res.instance;
+        result.importErrors(res);
+        return true;
+      });
+      return result;
+    };
+    validators.contains = function validateContains(instance, schema, options, ctx) {
+      var self2 = this;
+      if (!this.types.array(instance)) return;
+      if (schema.contains === void 0) return;
+      if (!helpers.isSchema(schema.contains)) throw new Error('Expected "contains" keyword to be a schema');
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var count2 = instance.some(function(value, i) {
+        var res = self2.validateSchema(value, schema.contains, options, ctx.makeChild(schema.contains, i));
+        return res.errors.length === 0;
+      });
+      if (count2 === false) {
+        result.addError({
+          name: "contains",
+          argument: schema.contains,
+          message: "must contain an item matching given schema"
+        });
+      }
+      return result;
+    };
+    validators.minimum = function validateMinimum(instance, schema, options, ctx) {
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (schema.exclusiveMinimum && schema.exclusiveMinimum === true) {
+        if (!(instance > schema.minimum)) {
+          result.addError({
+            name: "minimum",
+            argument: schema.minimum,
+            message: "must be greater than " + schema.minimum
+          });
+        }
+      } else {
+        if (!(instance >= schema.minimum)) {
+          result.addError({
+            name: "minimum",
+            argument: schema.minimum,
+            message: "must be greater than or equal to " + schema.minimum
+          });
+        }
+      }
+      return result;
+    };
+    validators.maximum = function validateMaximum(instance, schema, options, ctx) {
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (schema.exclusiveMaximum && schema.exclusiveMaximum === true) {
+        if (!(instance < schema.maximum)) {
+          result.addError({
+            name: "maximum",
+            argument: schema.maximum,
+            message: "must be less than " + schema.maximum
+          });
+        }
+      } else {
+        if (!(instance <= schema.maximum)) {
+          result.addError({
+            name: "maximum",
+            argument: schema.maximum,
+            message: "must be less than or equal to " + schema.maximum
+          });
+        }
+      }
+      return result;
+    };
+    validators.exclusiveMinimum = function validateExclusiveMinimum(instance, schema, options, ctx) {
+      if (typeof schema.exclusiveMinimum === "boolean") return;
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var valid = instance > schema.exclusiveMinimum;
+      if (!valid) {
+        result.addError({
+          name: "exclusiveMinimum",
+          argument: schema.exclusiveMinimum,
+          message: "must be strictly greater than " + schema.exclusiveMinimum
+        });
+      }
+      return result;
+    };
+    validators.exclusiveMaximum = function validateExclusiveMaximum(instance, schema, options, ctx) {
+      if (typeof schema.exclusiveMaximum === "boolean") return;
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var valid = instance < schema.exclusiveMaximum;
+      if (!valid) {
+        result.addError({
+          name: "exclusiveMaximum",
+          argument: schema.exclusiveMaximum,
+          message: "must be strictly less than " + schema.exclusiveMaximum
+        });
+      }
+      return result;
+    };
+    var validateMultipleOfOrDivisbleBy = function validateMultipleOfOrDivisbleBy2(instance, schema, options, ctx, validationType, errorMessage) {
+      if (!this.types.number(instance)) return;
+      var validationArgument = schema[validationType];
+      if (validationArgument == 0) {
+        throw new SchemaError(validationType + " cannot be zero");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var instanceDecimals = helpers.getDecimalPlaces(instance);
+      var divisorDecimals = helpers.getDecimalPlaces(validationArgument);
+      var maxDecimals = Math.max(instanceDecimals, divisorDecimals);
+      var multiplier = Math.pow(10, maxDecimals);
+      if (Math.round(instance * multiplier) % Math.round(validationArgument * multiplier) !== 0) {
+        result.addError({
+          name: validationType,
+          argument: validationArgument,
+          message: errorMessage + JSON.stringify(validationArgument)
+        });
+      }
+      return result;
+    };
+    validators.multipleOf = function validateMultipleOf(instance, schema, options, ctx) {
+      return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "multipleOf", "is not a multiple of (divisible by) ");
+    };
+    validators.divisibleBy = function validateDivisibleBy(instance, schema, options, ctx) {
+      return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "divisibleBy", "is not divisible by (multiple of) ");
+    };
+    validators.required = function validateRequired(instance, schema, options, ctx) {
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (instance === void 0 && schema.required === true) {
+        result.addError({
+          name: "required",
+          message: "is required"
+        });
+      } else if (this.types.object(instance) && Array.isArray(schema.required)) {
+        schema.required.forEach(function(n) {
+          if (getEnumerableProperty(instance, n) === void 0) {
+            result.addError({
+              name: "required",
+              argument: n,
+              message: "requires property " + JSON.stringify(n)
+            });
+          }
+        });
+      }
+      return result;
+    };
+    validators.pattern = function validatePattern(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var pattern = schema.pattern;
+      try {
+        var regexp = new RegExp(pattern, "u");
+      } catch (_e) {
+        regexp = new RegExp(pattern);
+      }
+      if (!instance.match(regexp)) {
+        result.addError({
+          name: "pattern",
+          argument: schema.pattern,
+          message: "does not match pattern " + JSON.stringify(schema.pattern.toString())
+        });
+      }
+      return result;
+    };
+    validators.format = function validateFormat(instance, schema, options, ctx) {
+      if (instance === void 0) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!result.disableFormat && !helpers.isFormat(instance, schema.format, this)) {
+        result.addError({
+          name: "format",
+          argument: schema.format,
+          message: "does not conform to the " + JSON.stringify(schema.format) + " format"
+        });
+      }
+      return result;
+    };
+    validators.minLength = function validateMinLength(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var hsp = instance.match(/[\uDC00-\uDFFF]/g);
+      var length = instance.length - (hsp ? hsp.length : 0);
+      if (!(length >= schema.minLength)) {
+        result.addError({
+          name: "minLength",
+          argument: schema.minLength,
+          message: "does not meet minimum length of " + schema.minLength
+        });
+      }
+      return result;
+    };
+    validators.maxLength = function validateMaxLength(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var hsp = instance.match(/[\uDC00-\uDFFF]/g);
+      var length = instance.length - (hsp ? hsp.length : 0);
+      if (!(length <= schema.maxLength)) {
+        result.addError({
+          name: "maxLength",
+          argument: schema.maxLength,
+          message: "does not meet maximum length of " + schema.maxLength
+        });
+      }
+      return result;
+    };
+    validators.minItems = function validateMinItems(instance, schema, options, ctx) {
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!(instance.length >= schema.minItems)) {
+        result.addError({
+          name: "minItems",
+          argument: schema.minItems,
+          message: "does not meet minimum length of " + schema.minItems
+        });
+      }
+      return result;
+    };
+    validators.maxItems = function validateMaxItems(instance, schema, options, ctx) {
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!(instance.length <= schema.maxItems)) {
+        result.addError({
+          name: "maxItems",
+          argument: schema.maxItems,
+          message: "does not meet maximum length of " + schema.maxItems
+        });
+      }
+      return result;
+    };
+    function testArrays(v, i, a) {
+      var j, len = a.length;
+      for (j = i + 1, len; j < len; j++) {
+        if (helpers.deepCompareStrict(v, a[j])) {
+          return false;
+        }
+      }
+      return true;
+    }
+    validators.uniqueItems = function validateUniqueItems(instance, schema, options, ctx) {
+      if (schema.uniqueItems !== true) return;
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!instance.every(testArrays)) {
+        result.addError({
+          name: "uniqueItems",
+          message: "contains duplicate item"
+        });
+      }
+      return result;
+    };
+    validators.dependencies = function validateDependencies(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      for (var property in schema.dependencies) {
+        if (instance[property] === void 0) {
+          continue;
+        }
+        var dep = schema.dependencies[property];
+        var childContext = ctx.makeChild(dep, property);
+        if (typeof dep == "string") {
+          dep = [dep];
+        }
+        if (Array.isArray(dep)) {
+          dep.forEach(function(prop) {
+            if (instance[prop] === void 0) {
+              result.addError({
+                // FIXME there's two different "dependencies" errors here with slightly different outputs
+                // Can we make these the same? Or should we create different error types?
+                name: "dependencies",
+                argument: childContext.propertyPath,
+                message: "property " + prop + " not found, required by " + childContext.propertyPath
+              });
+            }
+          });
+        } else {
+          var res = this.validateSchema(instance, dep, options, childContext);
+          if (result.instance !== res.instance) result.instance = res.instance;
+          if (res && res.errors.length) {
+            result.addError({
+              name: "dependencies",
+              argument: childContext.propertyPath,
+              message: "does not meet dependency required by " + childContext.propertyPath
+            });
+            result.importErrors(res);
+          }
+        }
+      }
+      return result;
+    };
+    validators["enum"] = function validateEnum(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema["enum"])) {
+        throw new SchemaError("enum expects an array", schema);
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!schema["enum"].some(helpers.deepCompareStrict.bind(null, instance))) {
+        result.addError({
+          name: "enum",
+          argument: schema["enum"],
+          message: "is not one of enum values: " + schema["enum"].map(String).join(",")
+        });
+      }
+      return result;
+    };
+    validators["const"] = function validateEnum(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!helpers.deepCompareStrict(schema["const"], instance)) {
+        result.addError({
+          name: "const",
+          argument: schema["const"],
+          message: "does not exactly match expected constant: " + schema["const"]
+        });
+      }
+      return result;
+    };
+    validators.not = validators.disallow = function validateNot(instance, schema, options, ctx) {
+      var self2 = this;
+      if (instance === void 0) return null;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var notTypes = schema.not || schema.disallow;
+      if (!notTypes) return null;
+      if (!Array.isArray(notTypes)) notTypes = [notTypes];
+      notTypes.forEach(function(type) {
+        if (self2.testType(instance, schema, options, ctx, type)) {
+          var id = type && (type.$id || type.id);
+          var schemaId = id || type;
+          result.addError({
+            name: "not",
+            argument: schemaId,
+            message: "is of prohibited type " + schemaId
+          });
+        }
+      });
+      return result;
+    };
+    module2.exports = attribute;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js
+var require_scan = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js"(exports2, module2) {
+    "use strict";
+    var helpers = require_helpers();
+    module2.exports.SchemaScanResult = SchemaScanResult;
+    function SchemaScanResult(found, ref) {
+      this.id = found;
+      this.ref = ref;
+    }
+    module2.exports.scan = function scan(base, schema) {
+      function scanSchema(baseuri, schema2) {
+        if (!schema2 || typeof schema2 != "object") return;
+        if (schema2.$ref) {
+          let resolvedUri = helpers.resolveUrl(baseuri, schema2.$ref);
+          ref[resolvedUri] = ref[resolvedUri] ? ref[resolvedUri] + 1 : 0;
+          return;
+        }
+        var id = schema2.$id || schema2.id;
+        let resolvedBase = helpers.resolveUrl(baseuri, id);
+        var ourBase = id ? resolvedBase : baseuri;
+        if (ourBase) {
+          if (ourBase.indexOf("#") < 0) ourBase += "#";
+          if (found[ourBase]) {
+            if (!helpers.deepCompareStrict(found[ourBase], schema2)) {
+              throw new Error("Schema <" + ourBase + "> already exists with different definition");
+            }
+            return found[ourBase];
+          }
+          found[ourBase] = schema2;
+          if (ourBase[ourBase.length - 1] == "#") {
+            found[ourBase.substring(0, ourBase.length - 1)] = schema2;
+          }
+        }
+        scanArray(ourBase + "/items", Array.isArray(schema2.items) ? schema2.items : [schema2.items]);
+        scanArray(ourBase + "/extends", Array.isArray(schema2.extends) ? schema2.extends : [schema2.extends]);
+        scanSchema(ourBase + "/additionalItems", schema2.additionalItems);
+        scanObject(ourBase + "/properties", schema2.properties);
+        scanSchema(ourBase + "/additionalProperties", schema2.additionalProperties);
+        scanObject(ourBase + "/definitions", schema2.definitions);
+        scanObject(ourBase + "/patternProperties", schema2.patternProperties);
+        scanObject(ourBase + "/dependencies", schema2.dependencies);
+        scanArray(ourBase + "/disallow", schema2.disallow);
+        scanArray(ourBase + "/allOf", schema2.allOf);
+        scanArray(ourBase + "/anyOf", schema2.anyOf);
+        scanArray(ourBase + "/oneOf", schema2.oneOf);
+        scanSchema(ourBase + "/not", schema2.not);
+      }
+      function scanArray(baseuri, schemas) {
+        if (!Array.isArray(schemas)) return;
+        for (var i = 0; i < schemas.length; i++) {
+          scanSchema(baseuri + "/" + i, schemas[i]);
+        }
+      }
+      function scanObject(baseuri, schemas) {
+        if (!schemas || typeof schemas != "object") return;
+        for (var p in schemas) {
+          scanSchema(baseuri + "/" + p, schemas[p]);
+        }
+      }
+      var found = {};
+      var ref = {};
+      scanSchema(base, schema);
+      return new SchemaScanResult(found, ref);
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js
+var require_validator = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js"(exports2, module2) {
+    "use strict";
+    var attribute = require_attribute();
+    var helpers = require_helpers();
+    var scanSchema = require_scan().scan;
+    var ValidatorResult = helpers.ValidatorResult;
+    var ValidatorResultError = helpers.ValidatorResultError;
+    var SchemaError = helpers.SchemaError;
+    var SchemaContext = helpers.SchemaContext;
+    var anonymousBase = "/";
+    var Validator = function Validator2() {
+      this.customFormats = Object.create(Validator2.prototype.customFormats);
+      this.schemas = {};
+      this.unresolvedRefs = [];
+      this.types = Object.create(types2);
+      this.attributes = Object.create(attribute.validators);
+    };
+    Validator.prototype.customFormats = {};
+    Validator.prototype.schemas = null;
+    Validator.prototype.types = null;
+    Validator.prototype.attributes = null;
+    Validator.prototype.unresolvedRefs = null;
+    Validator.prototype.addSchema = function addSchema(schema, base) {
+      var self2 = this;
+      if (!schema) {
+        return null;
+      }
+      var scan = scanSchema(base || anonymousBase, schema);
+      var ourUri = base || schema.$id || schema.id;
+      for (var uri in scan.id) {
+        this.schemas[uri] = scan.id[uri];
+      }
+      for (var uri in scan.ref) {
+        this.unresolvedRefs.push(uri);
+      }
+      this.unresolvedRefs = this.unresolvedRefs.filter(function(uri2) {
+        return typeof self2.schemas[uri2] === "undefined";
+      });
+      return this.schemas[ourUri];
+    };
+    Validator.prototype.addSubSchemaArray = function addSubSchemaArray(baseuri, schemas) {
+      if (!Array.isArray(schemas)) return;
+      for (var i = 0; i < schemas.length; i++) {
+        this.addSubSchema(baseuri, schemas[i]);
+      }
+    };
+    Validator.prototype.addSubSchemaObject = function addSubSchemaArray(baseuri, schemas) {
+      if (!schemas || typeof schemas != "object") return;
+      for (var p in schemas) {
+        this.addSubSchema(baseuri, schemas[p]);
+      }
+    };
+    Validator.prototype.setSchemas = function setSchemas(schemas) {
+      this.schemas = schemas;
+    };
+    Validator.prototype.getSchema = function getSchema(urn) {
+      return this.schemas[urn];
+    };
+    Validator.prototype.validate = function validate2(instance, schema, options, ctx) {
+      if (typeof schema !== "boolean" && typeof schema !== "object" || schema === null) {
+        throw new SchemaError("Expected `schema` to be an object or boolean");
+      }
+      if (!options) {
+        options = {};
+      }
+      var id = schema.$id || schema.id;
+      let base = helpers.resolveUrl(options.base, id || "");
+      if (!ctx) {
+        ctx = new SchemaContext(schema, options, [], base, Object.create(this.schemas));
+        if (!ctx.schemas[base]) {
+          ctx.schemas[base] = schema;
+        }
+        var found = scanSchema(base, schema);
+        for (var n in found.id) {
+          var sch = found.id[n];
+          ctx.schemas[n] = sch;
+        }
+      }
+      if (options.required && instance === void 0) {
+        var result = new ValidatorResult(instance, schema, options, ctx);
+        result.addError("is required, but is undefined");
+        return result;
+      }
+      var result = this.validateSchema(instance, schema, options, ctx);
+      if (!result) {
+        throw new Error("Result undefined");
+      } else if (options.throwAll && result.errors.length) {
+        throw new ValidatorResultError(result);
+      }
+      return result;
+    };
+    function shouldResolve(schema) {
+      var ref = typeof schema === "string" ? schema : schema.$ref;
+      if (typeof ref == "string") return ref;
+      return false;
+    }
+    Validator.prototype.validateSchema = function validateSchema(instance, schema, options, ctx) {
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (typeof schema === "boolean") {
+        if (schema === true) {
+          schema = {};
+        } else if (schema === false) {
+          schema = { type: [] };
+        }
+      } else if (!schema) {
+        throw new Error("schema is undefined");
+      }
+      if (schema["extends"]) {
+        if (Array.isArray(schema["extends"])) {
+          var schemaobj = { schema, ctx };
+          schema["extends"].forEach(this.schemaTraverser.bind(this, schemaobj));
+          schema = schemaobj.schema;
+          schemaobj.schema = null;
+          schemaobj.ctx = null;
+          schemaobj = null;
+        } else {
+          schema = helpers.deepMerge(schema, this.superResolve(schema["extends"], ctx));
+        }
+      }
+      var switchSchema = shouldResolve(schema);
+      if (switchSchema) {
+        var resolved = this.resolve(schema, switchSchema, ctx);
+        var subctx = new SchemaContext(resolved.subschema, options, ctx.path, resolved.switchSchema, ctx.schemas);
+        return this.validateSchema(instance, resolved.subschema, options, subctx);
+      }
+      var skipAttributes = options && options.skipAttributes || [];
+      for (var key in schema) {
+        if (!attribute.ignoreProperties[key] && skipAttributes.indexOf(key) < 0) {
+          var validatorErr = null;
+          var validator = this.attributes[key];
+          if (validator) {
+            validatorErr = validator.call(this, instance, schema, options, ctx);
+          } else if (options.allowUnknownAttributes === false) {
+            throw new SchemaError("Unsupported attribute: " + key, schema);
+          }
+          if (validatorErr) {
+            result.importErrors(validatorErr);
+          }
+        }
+      }
+      if (typeof options.rewrite == "function") {
+        var value = options.rewrite.call(this, instance, schema, options, ctx);
+        result.instance = value;
+      }
+      return result;
+    };
+    Validator.prototype.schemaTraverser = function schemaTraverser(schemaobj, s) {
+      schemaobj.schema = helpers.deepMerge(schemaobj.schema, this.superResolve(s, schemaobj.ctx));
+    };
+    Validator.prototype.superResolve = function superResolve(schema, ctx) {
+      var ref = shouldResolve(schema);
+      if (ref) {
+        return this.resolve(schema, ref, ctx).subschema;
+      }
+      return schema;
+    };
+    Validator.prototype.resolve = function resolve6(schema, switchSchema, ctx) {
+      switchSchema = ctx.resolve(switchSchema);
+      if (ctx.schemas[switchSchema]) {
+        return { subschema: ctx.schemas[switchSchema], switchSchema };
+      }
+      let hashIndex = switchSchema.indexOf("#");
+      let fragment = hashIndex === -1 || hashIndex === switchSchema.length - 1 ? "" : switchSchema.substr(hashIndex);
+      var document = fragment && fragment.length && switchSchema.substr(0, switchSchema.length - fragment.length);
+      if (!document || !ctx.schemas[document]) {
+        throw new SchemaError("no such schema <" + switchSchema + ">", schema);
+      }
+      var subschema = helpers.objectGetPath(ctx.schemas[document], fragment.substr(1));
+      if (subschema === void 0) {
+        throw new SchemaError("no such schema " + fragment + " located in <" + document + ">", schema);
+      }
+      return { subschema, switchSchema };
+    };
+    Validator.prototype.testType = function validateType(instance, schema, options, ctx, type) {
+      if (type === void 0) {
+        return;
+      } else if (type === null) {
+        throw new SchemaError('Unexpected null in "type" keyword');
+      }
+      if (typeof this.types[type] == "function") {
+        return this.types[type].call(this, instance);
+      }
+      if (type && typeof type == "object") {
+        var res = this.validateSchema(instance, type, options, ctx);
+        return res === void 0 || !(res && res.errors.length);
+      }
+      return true;
+    };
+    var types2 = Validator.prototype.types = {};
+    types2.string = function testString(instance) {
+      return typeof instance == "string";
+    };
+    types2.number = function testNumber(instance) {
+      return typeof instance == "number" && isFinite(instance);
+    };
+    types2.integer = function testInteger(instance) {
+      return typeof instance == "number" && instance % 1 === 0;
+    };
+    types2.boolean = function testBoolean(instance) {
+      return typeof instance == "boolean";
+    };
+    types2.array = function testArray(instance) {
+      return Array.isArray(instance);
+    };
+    types2["null"] = function testNull(instance) {
+      return instance === null;
+    };
+    types2.date = function testDate(instance) {
+      return instance instanceof Date;
+    };
+    types2.any = function testAny(instance) {
+      return true;
+    };
+    types2.object = function testObject(instance) {
+      return instance && typeof instance === "object" && !Array.isArray(instance) && !(instance instanceof Date);
+    };
+    module2.exports = Validator;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js
+var require_lib = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js"(exports2, module2) {
+    "use strict";
+    var Validator = module2.exports.Validator = require_validator();
+    module2.exports.ValidatorResult = require_helpers().ValidatorResult;
+    module2.exports.ValidatorResultError = require_helpers().ValidatorResultError;
+    module2.exports.ValidationError = require_helpers().ValidationError;
+    module2.exports.SchemaError = require_helpers().SchemaError;
+    module2.exports.SchemaScanResult = require_scan().SchemaScanResult;
+    module2.exports.scan = require_scan().scan;
+    module2.exports.validate = function(instance, schema, options) {
+      var v = new Validator();
+      return v.validate(instance, schema, options);
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js
+var require_constants = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js"(exports2, module2) {
+    "use strict";
+    var SEMVER_SPEC_VERSION = "2.0.0";
+    var MAX_LENGTH = 256;
+    var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */
+    9007199254740991;
+    var MAX_SAFE_COMPONENT_LENGTH = 16;
+    var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6;
+    var RELEASE_TYPES = [
+      "major",
+      "premajor",
+      "minor",
+      "preminor",
+      "patch",
+      "prepatch",
+      "prerelease"
+    ];
+    module2.exports = {
+      MAX_LENGTH,
+      MAX_SAFE_COMPONENT_LENGTH,
+      MAX_SAFE_BUILD_LENGTH,
+      MAX_SAFE_INTEGER,
+      RELEASE_TYPES,
+      SEMVER_SPEC_VERSION,
+      FLAG_INCLUDE_PRERELEASE: 1,
+      FLAG_LOOSE: 2
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js
+var require_debug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js"(exports2, module2) {
+    "use strict";
+    var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {
+    };
+    module2.exports = debug;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js
+var require_re = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js"(exports2, module2) {
+    "use strict";
+    var {
+      MAX_SAFE_COMPONENT_LENGTH,
+      MAX_SAFE_BUILD_LENGTH,
+      MAX_LENGTH
+    } = require_constants();
+    var debug = require_debug();
+    exports2 = module2.exports = {};
+    var re = exports2.re = [];
+    var safeRe = exports2.safeRe = [];
+    var src = exports2.src = [];
+    var safeSrc = exports2.safeSrc = [];
+    var t = exports2.t = {};
+    var R = 0;
+    var LETTERDASHNUMBER = "[a-zA-Z0-9-]";
+    var safeRegexReplacements = [
+      ["\\s", 1],
+      ["\\d", MAX_LENGTH],
+      [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH]
+    ];
+    var makeSafeRegex = (value) => {
+      for (const [token, max] of safeRegexReplacements) {
+        value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`);
+      }
+      return value;
+    };
+    var createToken = (name, value, isGlobal) => {
+      const safe = makeSafeRegex(value);
+      const index = R++;
+      debug(name, index, value);
+      t[name] = index;
+      src[index] = value;
+      safeSrc[index] = safe;
+      re[index] = new RegExp(value, isGlobal ? "g" : void 0);
+      safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0);
+    };
+    createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*");
+    createToken("NUMERICIDENTIFIERLOOSE", "\\d+");
+    createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`);
+    createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`);
+    createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`);
+    createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIER]})`);
+    createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIERLOOSE]})`);
+    createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`);
+    createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`);
+    createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`);
+    createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`);
+    createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`);
+    createToken("FULL", `^${src[t.FULLPLAIN]}$`);
+    createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`);
+    createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`);
+    createToken("GTLT", "((?:<|>)?=?)");
+    createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);
+    createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`);
+    createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`);
+    createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`);
+    createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`);
+    createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);
+    createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`);
+    createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?(?:${src[t.BUILD]})?(?:$|[^\\d])`);
+    createToken("COERCERTL", src[t.COERCE], true);
+    createToken("COERCERTLFULL", src[t.COERCEFULL], true);
+    createToken("LONETILDE", "(?:~>?)");
+    createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true);
+    exports2.tildeTrimReplace = "$1~";
+    createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`);
+    createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("LONECARET", "(?:\\^)");
+    createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true);
+    exports2.caretTrimReplace = "$1^";
+    createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`);
+    createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`);
+    createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`);
+    createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true);
+    exports2.comparatorTrimReplace = "$1$2$3";
+    createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`);
+    createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`);
+    createToken("STAR", "(<|>)?=?\\s*\\*");
+    createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$");
+    createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$");
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js
+var require_parse_options = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js"(exports2, module2) {
+    "use strict";
+    var looseOption = Object.freeze({ loose: true });
+    var emptyOpts = Object.freeze({});
+    var parseOptions = (options) => {
+      if (!options) {
+        return emptyOpts;
+      }
+      if (typeof options !== "object") {
+        return looseOption;
+      }
+      return options;
+    };
+    module2.exports = parseOptions;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js
+var require_identifiers = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js"(exports2, module2) {
+    "use strict";
+    var numeric = /^[0-9]+$/;
+    var compareIdentifiers = (a, b) => {
+      if (typeof a === "number" && typeof b === "number") {
+        return a === b ? 0 : a < b ? -1 : 1;
+      }
+      const anum = numeric.test(a);
+      const bnum = numeric.test(b);
+      if (anum && bnum) {
+        a = +a;
+        b = +b;
+      }
+      return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1;
+    };
+    var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a);
+    module2.exports = {
+      compareIdentifiers,
+      rcompareIdentifiers
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js
+var require_semver = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js"(exports2, module2) {
+    "use strict";
+    var debug = require_debug();
+    var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
+    var { safeRe: re, t } = require_re();
+    var parseOptions = require_parse_options();
+    var { compareIdentifiers } = require_identifiers();
+    var isPrereleaseIdentifier = (prerelease, identifier) => {
+      const identifiers = identifier.split(".");
+      if (identifiers.length > prerelease.length) {
+        return false;
+      }
+      for (let i = 0; i < identifiers.length; i++) {
+        if (compareIdentifiers(prerelease[i], identifiers[i]) !== 0) {
+          return false;
+        }
+      }
+      return true;
+    };
+    var SemVer = class _SemVer {
+      constructor(version3, options) {
+        options = parseOptions(options);
+        if (version3 instanceof _SemVer) {
+          if (version3.loose === !!options.loose && version3.includePrerelease === !!options.includePrerelease) {
+            return version3;
+          } else {
+            version3 = version3.version;
+          }
+        } else if (typeof version3 !== "string") {
+          throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version3}".`);
+        }
+        if (version3.length > MAX_LENGTH) {
+          throw new TypeError(
+            `version is longer than ${MAX_LENGTH} characters`
+          );
+        }
+        debug("SemVer", version3, options);
+        this.options = options;
+        this.loose = !!options.loose;
+        this.includePrerelease = !!options.includePrerelease;
+        const m = version3.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]);
+        if (!m) {
+          throw new TypeError(`Invalid Version: ${version3}`);
+        }
+        this.raw = version3;
+        this.major = +m[1];
+        this.minor = +m[2];
+        this.patch = +m[3];
+        if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
+          throw new TypeError("Invalid major version");
+        }
+        if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
+          throw new TypeError("Invalid minor version");
+        }
+        if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
+          throw new TypeError("Invalid patch version");
+        }
+        if (!m[4]) {
+          this.prerelease = [];
+        } else {
+          this.prerelease = m[4].split(".").map((id) => {
+            if (/^[0-9]+$/.test(id)) {
+              const num = +id;
+              if (num >= 0 && num < MAX_SAFE_INTEGER) {
+                return num;
+              }
+            }
+            return id;
+          });
+        }
+        this.build = m[5] ? m[5].split(".") : [];
+        this.format();
+      }
+      format() {
+        this.version = `${this.major}.${this.minor}.${this.patch}`;
+        if (this.prerelease.length) {
+          this.version += `-${this.prerelease.join(".")}`;
+        }
+        return this.version;
+      }
+      toString() {
+        return this.version;
+      }
+      compare(other) {
+        debug("SemVer.compare", this.version, this.options, other);
+        if (!(other instanceof _SemVer)) {
+          if (typeof other === "string" && other === this.version) {
+            return 0;
+          }
+          other = new _SemVer(other, this.options);
+        }
+        if (other.version === this.version) {
+          return 0;
+        }
+        return this.compareMain(other) || this.comparePre(other);
+      }
+      compareMain(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        if (this.major < other.major) {
+          return -1;
+        }
+        if (this.major > other.major) {
+          return 1;
+        }
+        if (this.minor < other.minor) {
+          return -1;
+        }
+        if (this.minor > other.minor) {
+          return 1;
+        }
+        if (this.patch < other.patch) {
+          return -1;
+        }
+        if (this.patch > other.patch) {
+          return 1;
+        }
+        return 0;
+      }
+      comparePre(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        if (this.prerelease.length && !other.prerelease.length) {
+          return -1;
+        } else if (!this.prerelease.length && other.prerelease.length) {
+          return 1;
+        } else if (!this.prerelease.length && !other.prerelease.length) {
+          return 0;
+        }
+        let i = 0;
+        do {
+          const a = this.prerelease[i];
+          const b = other.prerelease[i];
+          debug("prerelease compare", i, a, b);
+          if (a === void 0 && b === void 0) {
+            return 0;
+          } else if (b === void 0) {
+            return 1;
+          } else if (a === void 0) {
+            return -1;
+          } else if (a === b) {
+            continue;
+          } else {
+            return compareIdentifiers(a, b);
+          }
+        } while (++i);
+      }
+      compareBuild(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        let i = 0;
+        do {
+          const a = this.build[i];
+          const b = other.build[i];
+          debug("build compare", i, a, b);
+          if (a === void 0 && b === void 0) {
+            return 0;
+          } else if (b === void 0) {
+            return 1;
+          } else if (a === void 0) {
+            return -1;
+          } else if (a === b) {
+            continue;
+          } else {
+            return compareIdentifiers(a, b);
+          }
+        } while (++i);
+      }
+      // preminor will bump the version up to the next minor release, and immediately
+      // down to pre-release. premajor and prepatch work the same way.
+      inc(release, identifier, identifierBase) {
+        if (release.startsWith("pre")) {
+          if (!identifier && identifierBase === false) {
+            throw new Error("invalid increment argument: identifier is empty");
+          }
+          if (identifier) {
+            const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]);
+            if (!match || match[1] !== identifier) {
+              throw new Error(`invalid identifier: ${identifier}`);
+            }
+          }
+        }
+        switch (release) {
+          case "premajor":
+            this.prerelease.length = 0;
+            this.patch = 0;
+            this.minor = 0;
+            this.major++;
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "preminor":
+            this.prerelease.length = 0;
+            this.patch = 0;
+            this.minor++;
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "prepatch":
+            this.prerelease.length = 0;
+            this.inc("patch", identifier, identifierBase);
+            this.inc("pre", identifier, identifierBase);
+            break;
+          // If the input is a non-prerelease version, this acts the same as
+          // prepatch.
+          case "prerelease":
+            if (this.prerelease.length === 0) {
+              this.inc("patch", identifier, identifierBase);
+            }
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "release":
+            if (this.prerelease.length === 0) {
+              throw new Error(`version ${this.raw} is not a prerelease`);
+            }
+            this.prerelease.length = 0;
+            break;
+          case "major":
+            if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {
+              this.major++;
+            }
+            this.minor = 0;
+            this.patch = 0;
+            this.prerelease = [];
+            break;
+          case "minor":
+            if (this.patch !== 0 || this.prerelease.length === 0) {
+              this.minor++;
+            }
+            this.patch = 0;
+            this.prerelease = [];
+            break;
+          case "patch":
+            if (this.prerelease.length === 0) {
+              this.patch++;
+            }
+            this.prerelease = [];
+            break;
+          // This probably shouldn't be used publicly.
+          // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
+          case "pre": {
+            const base = Number(identifierBase) ? 1 : 0;
+            if (this.prerelease.length === 0) {
+              this.prerelease = [base];
+            } else {
+              let i = this.prerelease.length;
+              while (--i >= 0) {
+                if (typeof this.prerelease[i] === "number") {
+                  this.prerelease[i]++;
+                  i = -2;
+                }
+              }
+              if (i === -1) {
+                if (identifier === this.prerelease.join(".") && identifierBase === false) {
+                  throw new Error("invalid increment argument: identifier already exists");
+                }
+                this.prerelease.push(base);
+              }
+            }
+            if (identifier) {
+              let prerelease = [identifier, base];
+              if (identifierBase === false) {
+                prerelease = [identifier];
+              }
+              if (isPrereleaseIdentifier(this.prerelease, identifier)) {
+                const prereleaseBase = this.prerelease[identifier.split(".").length];
+                if (isNaN(prereleaseBase)) {
+                  this.prerelease = prerelease;
+                }
+              } else {
+                this.prerelease = prerelease;
+              }
+            }
+            break;
+          }
+          default:
+            throw new Error(`invalid increment argument: ${release}`);
+        }
+        this.raw = this.format();
+        if (this.build.length) {
+          this.raw += `+${this.build.join(".")}`;
+        }
+        return this;
+      }
+    };
+    module2.exports = SemVer;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js
+var require_parse = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var parse3 = (version3, options, throwErrors = false) => {
+      if (version3 instanceof SemVer) {
+        return version3;
+      }
+      try {
+        return new SemVer(version3, options);
+      } catch (er) {
+        if (!throwErrors) {
+          return null;
+        }
+        throw er;
+      }
+    };
+    module2.exports = parse3;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js
+var require_valid = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var valid = (version3, options) => {
+      const v = parse3(version3, options);
+      return v ? v.version : null;
+    };
+    module2.exports = valid;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js
+var require_clean = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var clean = (version3, options) => {
+      const s = parse3(version3.trim().replace(/^[=v]+/, ""), options);
+      return s ? s.version : null;
+    };
+    module2.exports = clean;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js
+var require_inc = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var inc = (version3, release, options, identifier, identifierBase) => {
+      if (typeof options === "string") {
+        identifierBase = identifier;
+        identifier = options;
+        options = void 0;
+      }
+      try {
+        return new SemVer(
+          version3 instanceof SemVer ? version3.version : version3,
+          options
+        ).inc(release, identifier, identifierBase).version;
+      } catch (er) {
+        return null;
+      }
+    };
+    module2.exports = inc;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js
+var require_diff = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var diff = (version1, version22) => {
+      const v12 = parse3(version1, null, true);
+      const v2 = parse3(version22, null, true);
+      const comparison = v12.compare(v2);
+      if (comparison === 0) {
+        return null;
+      }
+      const v1Higher = comparison > 0;
+      const highVersion = v1Higher ? v12 : v2;
+      const lowVersion = v1Higher ? v2 : v12;
+      const highHasPre = !!highVersion.prerelease.length;
+      const lowHasPre = !!lowVersion.prerelease.length;
+      if (lowHasPre && !highHasPre) {
+        if (!lowVersion.patch && !lowVersion.minor) {
+          return "major";
+        }
+        if (lowVersion.compareMain(highVersion) === 0) {
+          if (lowVersion.minor && !lowVersion.patch) {
+            return "minor";
+          }
+          return "patch";
+        }
+      }
+      const prefix = highHasPre ? "pre" : "";
+      if (v12.major !== v2.major) {
+        return prefix + "major";
+      }
+      if (v12.minor !== v2.minor) {
+        return prefix + "minor";
+      }
+      if (v12.patch !== v2.patch) {
+        return prefix + "patch";
+      }
+      return "prerelease";
+    };
+    module2.exports = diff;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js
+var require_major = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var major = (a, loose) => new SemVer(a, loose).major;
+    module2.exports = major;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js
+var require_minor = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var minor = (a, loose) => new SemVer(a, loose).minor;
+    module2.exports = minor;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js
+var require_patch = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var patch = (a, loose) => new SemVer(a, loose).patch;
+    module2.exports = patch;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js
+var require_prerelease = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var prerelease = (version3, options) => {
+      const parsed = parse3(version3, options);
+      return parsed && parsed.prerelease.length ? parsed.prerelease : null;
+    };
+    module2.exports = prerelease;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js
+var require_compare = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
+    module2.exports = compare;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js
+var require_rcompare = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var rcompare = (a, b, loose) => compare(b, a, loose);
+    module2.exports = rcompare;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js
+var require_compare_loose = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var compareLoose = (a, b) => compare(a, b, true);
+    module2.exports = compareLoose;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js
+var require_compare_build = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var compareBuild = (a, b, loose) => {
+      const versionA = new SemVer(a, loose);
+      const versionB = new SemVer(b, loose);
+      return versionA.compare(versionB) || versionA.compareBuild(versionB);
+    };
+    module2.exports = compareBuild;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js
+var require_sort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js"(exports2, module2) {
+    "use strict";
+    var compareBuild = require_compare_build();
+    var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
+    module2.exports = sort;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js
+var require_rsort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js"(exports2, module2) {
+    "use strict";
+    var compareBuild = require_compare_build();
+    var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
+    module2.exports = rsort;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js
+var require_gt = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var gt = (a, b, loose) => compare(a, b, loose) > 0;
+    module2.exports = gt;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js
+var require_lt = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var lt = (a, b, loose) => compare(a, b, loose) < 0;
+    module2.exports = lt;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js
+var require_eq = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var eq = (a, b, loose) => compare(a, b, loose) === 0;
+    module2.exports = eq;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js
+var require_neq = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var neq = (a, b, loose) => compare(a, b, loose) !== 0;
+    module2.exports = neq;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js
+var require_gte = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var gte = (a, b, loose) => compare(a, b, loose) >= 0;
+    module2.exports = gte;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js
+var require_lte = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var lte = (a, b, loose) => compare(a, b, loose) <= 0;
+    module2.exports = lte;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js
+var require_cmp = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js"(exports2, module2) {
+    "use strict";
+    var eq = require_eq();
+    var neq = require_neq();
+    var gt = require_gt();
+    var gte = require_gte();
+    var lt = require_lt();
+    var lte = require_lte();
+    var cmp = (a, op, b, loose) => {
+      switch (op) {
+        case "===":
+          if (typeof a === "object") {
+            a = a.version;
+          }
+          if (typeof b === "object") {
+            b = b.version;
+          }
+          return a === b;
+        case "!==":
+          if (typeof a === "object") {
+            a = a.version;
+          }
+          if (typeof b === "object") {
+            b = b.version;
+          }
+          return a !== b;
+        case "":
+        case "=":
+        case "==":
+          return eq(a, b, loose);
+        case "!=":
+          return neq(a, b, loose);
+        case ">":
+          return gt(a, b, loose);
+        case ">=":
+          return gte(a, b, loose);
+        case "<":
+          return lt(a, b, loose);
+        case "<=":
+          return lte(a, b, loose);
+        default:
+          throw new TypeError(`Invalid operator: ${op}`);
+      }
+    };
+    module2.exports = cmp;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js
+var require_coerce = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var parse3 = require_parse();
+    var { safeRe: re, t } = require_re();
+    var coerce = (version3, options) => {
+      if (version3 instanceof SemVer) {
+        return version3;
+      }
+      if (typeof version3 === "number") {
+        version3 = String(version3);
+      }
+      if (typeof version3 !== "string") {
+        return null;
+      }
+      options = options || {};
+      let match = null;
+      if (!options.rtl) {
+        match = version3.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
+      } else {
+        const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL];
+        let next;
+        while ((next = coerceRtlRegex.exec(version3)) && (!match || match.index + match[0].length !== version3.length)) {
+          if (!match || next.index + next[0].length !== match.index + match[0].length) {
+            match = next;
+          }
+          coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
+        }
+        coerceRtlRegex.lastIndex = -1;
+      }
+      if (match === null) {
+        return null;
+      }
+      const major = match[2];
+      const minor = match[3] || "0";
+      const patch = match[4] || "0";
+      const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
+      const build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
+      return parse3(`${major}.${minor}.${patch}${prerelease}${build}`, options);
+    };
+    module2.exports = coerce;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js
+var require_truncate = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var constants2 = require_constants();
+    var SemVer = require_semver();
+    var truncate = (version3, truncation, options) => {
+      if (!constants2.RELEASE_TYPES.includes(truncation)) {
+        return null;
+      }
+      const clonedVersion = cloneInputVersion(version3, options);
+      return clonedVersion && doTruncation(clonedVersion, truncation);
+    };
+    var cloneInputVersion = (version3, options) => {
+      const versionStringToParse = version3 instanceof SemVer ? version3.version : version3;
+      return parse3(versionStringToParse, options);
+    };
+    var doTruncation = (version3, truncation) => {
+      if (isPrerelease(truncation)) {
+        return version3.version;
+      }
+      version3.prerelease = [];
+      switch (truncation) {
+        case "major":
+          version3.minor = 0;
+          version3.patch = 0;
+          break;
+        case "minor":
+          version3.patch = 0;
+          break;
+      }
+      return version3.format();
+    };
+    var isPrerelease = (type) => {
+      return type.startsWith("pre");
+    };
+    module2.exports = truncate;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js
+var require_lrucache = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js"(exports2, module2) {
+    "use strict";
+    var LRUCache = class {
+      constructor() {
+        this.max = 1e3;
+        this.map = /* @__PURE__ */ new Map();
+      }
+      get(key) {
+        const value = this.map.get(key);
+        if (value === void 0) {
+          return void 0;
+        } else {
+          this.map.delete(key);
+          this.map.set(key, value);
+          return value;
+        }
+      }
+      delete(key) {
+        return this.map.delete(key);
+      }
+      set(key, value) {
+        const deleted = this.delete(key);
+        if (!deleted && value !== void 0) {
+          if (this.map.size >= this.max) {
+            const firstKey = this.map.keys().next().value;
+            this.delete(firstKey);
+          }
+          this.map.set(key, value);
+        }
+        return this;
+      }
+    };
+    module2.exports = LRUCache;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js
+var require_range = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js"(exports2, module2) {
+    "use strict";
+    var SPACE_CHARACTERS = /\s+/g;
+    var Range = class _Range {
+      constructor(range4, options) {
+        options = parseOptions(options);
+        if (range4 instanceof _Range) {
+          if (range4.loose === !!options.loose && range4.includePrerelease === !!options.includePrerelease) {
+            return range4;
+          } else {
+            return new _Range(range4.raw, options);
+          }
+        }
+        if (range4 instanceof Comparator) {
+          this.raw = range4.value;
+          this.set = [[range4]];
+          this.formatted = void 0;
+          return this;
+        }
+        this.options = options;
+        this.loose = !!options.loose;
+        this.includePrerelease = !!options.includePrerelease;
+        this.raw = range4.trim().replace(SPACE_CHARACTERS, " ");
+        this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length);
+        if (!this.set.length) {
+          throw new TypeError(`Invalid SemVer Range: ${this.raw}`);
+        }
+        if (this.set.length > 1) {
+          const first = this.set[0];
+          this.set = this.set.filter((c) => !isNullSet(c[0]));
+          if (this.set.length === 0) {
+            this.set = [first];
+          } else if (this.set.length > 1) {
+            for (const c of this.set) {
+              if (c.length === 1 && isAny(c[0])) {
+                this.set = [c];
+                break;
+              }
+            }
+          }
+        }
+        this.formatted = void 0;
+      }
+      get range() {
+        if (this.formatted === void 0) {
+          this.formatted = "";
+          for (let i = 0; i < this.set.length; i++) {
+            if (i > 0) {
+              this.formatted += "||";
+            }
+            const comps = this.set[i];
+            for (let k = 0; k < comps.length; k++) {
+              if (k > 0) {
+                this.formatted += " ";
+              }
+              this.formatted += comps[k].toString().trim();
+            }
+          }
+        }
+        return this.formatted;
+      }
+      format() {
+        return this.range;
+      }
+      toString() {
+        return this.range;
+      }
+      parseRange(range4) {
+        range4 = range4.replace(BUILDSTRIPRE, "");
+        const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE);
+        const memoKey = memoOpts + ":" + range4;
+        const cached = cache.get(memoKey);
+        if (cached) {
+          return cached;
+        }
+        const loose = this.options.loose;
+        const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE];
+        range4 = range4.replace(hr, hyphenReplace(this.options.includePrerelease));
+        debug("hyphen replace", range4);
+        range4 = range4.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
+        debug("comparator trim", range4);
+        range4 = range4.replace(re[t.TILDETRIM], tildeTrimReplace);
+        debug("tilde trim", range4);
+        range4 = range4.replace(re[t.CARETTRIM], caretTrimReplace);
+        debug("caret trim", range4);
+        let rangeList = range4.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options));
+        if (loose) {
+          rangeList = rangeList.filter((comp) => {
+            debug("loose invalid filter", comp, this.options);
+            return !!comp.match(re[t.COMPARATORLOOSE]);
+          });
+        }
+        debug("range list", rangeList);
+        const rangeMap = /* @__PURE__ */ new Map();
+        const comparators = rangeList.map((comp) => new Comparator(comp, this.options));
+        for (const comp of comparators) {
+          if (isNullSet(comp)) {
+            return [comp];
+          }
+          rangeMap.set(comp.value, comp);
+        }
+        if (rangeMap.size > 1 && rangeMap.has("")) {
+          rangeMap.delete("");
+        }
+        const result = [...rangeMap.values()];
+        cache.set(memoKey, result);
+        return result;
+      }
+      intersects(range4, options) {
+        if (!(range4 instanceof _Range)) {
+          throw new TypeError("a Range is required");
+        }
+        return this.set.some((thisComparators) => {
+          return isSatisfiable(thisComparators, options) && range4.set.some((rangeComparators) => {
+            return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => {
+              return rangeComparators.every((rangeComparator) => {
+                return thisComparator.intersects(rangeComparator, options);
+              });
+            });
+          });
+        });
+      }
+      // if ANY of the sets match ALL of its comparators, then pass
+      test(version3) {
+        if (!version3) {
+          return false;
+        }
+        if (typeof version3 === "string") {
+          try {
+            version3 = new SemVer(version3, this.options);
+          } catch (er) {
+            return false;
+          }
+        }
+        for (let i = 0; i < this.set.length; i++) {
+          if (testSet(this.set[i], version3, this.options)) {
+            return true;
+          }
+        }
+        return false;
+      }
+    };
+    module2.exports = Range;
+    var LRU = require_lrucache();
+    var cache = new LRU();
+    var parseOptions = require_parse_options();
+    var Comparator = require_comparator();
+    var debug = require_debug();
+    var SemVer = require_semver();
+    var {
+      safeRe: re,
+      src,
+      t,
+      comparatorTrimReplace,
+      tildeTrimReplace,
+      caretTrimReplace
+    } = require_re();
+    var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants();
+    var BUILDSTRIPRE = new RegExp(src[t.BUILD], "g");
+    var isNullSet = (c) => c.value === "<0.0.0-0";
+    var isAny = (c) => c.value === "";
+    var isSatisfiable = (comparators, options) => {
+      let result = true;
+      const remainingComparators = comparators.slice();
+      let testComparator = remainingComparators.pop();
+      while (result && remainingComparators.length) {
+        result = remainingComparators.every((otherComparator) => {
+          return testComparator.intersects(otherComparator, options);
+        });
+        testComparator = remainingComparators.pop();
+      }
+      return result;
+    };
+    var parseComparator = (comp, options) => {
+      comp = comp.replace(re[t.BUILD], "");
+      debug("comp", comp, options);
+      comp = replaceCarets(comp, options);
+      debug("caret", comp);
+      comp = replaceTildes(comp, options);
+      debug("tildes", comp);
+      comp = replaceXRanges(comp, options);
+      debug("xrange", comp);
+      comp = replaceStars(comp, options);
+      debug("stars", comp);
+      return comp;
+    };
+    var isX = (id) => !id || id.toLowerCase() === "x" || id === "*";
+    var invalidXRangeOrder = (M, m, p) => isX(M) && !isX(m) || isX(m) && p && !isX(p);
+    var replaceTildes = (comp, options) => {
+      return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" ");
+    };
+    var replaceTilde = (comp, options) => {
+      const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
+      const z = options.includePrerelease ? "-0" : "";
+      return comp.replace(r, (_, M, m, p, pr) => {
+        debug("tilde", comp, _, M, m, p, pr);
+        let ret;
+        if (isX(M)) {
+          ret = "";
+        } else if (isX(m)) {
+          ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
+        } else if (isX(p)) {
+          ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
+        } else if (pr) {
+          debug("replaceTilde pr", pr);
+          ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
+        } else {
+          ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
+        }
+        debug("tilde return", ret);
+        return ret;
+      });
+    };
+    var replaceCarets = (comp, options) => {
+      return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" ");
+    };
+    var replaceCaret = (comp, options) => {
+      debug("caret", comp, options);
+      const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET];
+      const z = options.includePrerelease ? "-0" : "";
+      return comp.replace(r, (_, M, m, p, pr) => {
+        debug("caret", comp, _, M, m, p, pr);
+        let ret;
+        if (isX(M)) {
+          ret = "";
+        } else if (isX(m)) {
+          ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
+        } else if (isX(p)) {
+          if (M === "0") {
+            ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
+          } else {
+            ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`;
+          }
+        } else if (pr) {
+          debug("replaceCaret pr", pr);
+          if (M === "0") {
+            if (m === "0") {
+              ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`;
+            } else {
+              ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
+            }
+          } else {
+            ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`;
+          }
+        } else {
+          debug("no pr");
+          if (M === "0") {
+            if (m === "0") {
+              ret = `>=${M}.${m}.${p} <${M}.${m}.${+p + 1}-0`;
+            } else {
+              ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
+            }
+          } else {
+            ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`;
+          }
+        }
+        debug("caret return", ret);
+        return ret;
+      });
+    };
+    var replaceXRanges = (comp, options) => {
+      debug("replaceXRanges", comp, options);
+      return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" ");
+    };
+    var replaceXRange = (comp, options) => {
+      comp = comp.trim();
+      const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE];
+      return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
+        debug("xRange", comp, ret, gtlt, M, m, p, pr);
+        if (invalidXRangeOrder(M, m, p)) {
+          return comp;
+        }
+        const xM = isX(M);
+        const xm = xM || isX(m);
+        const xp = xm || isX(p);
+        const anyX = xp;
+        if (gtlt === "=" && anyX) {
+          gtlt = "";
+        }
+        pr = options.includePrerelease ? "-0" : "";
+        if (xM) {
+          if (gtlt === ">" || gtlt === "<") {
+            ret = "<0.0.0-0";
+          } else {
+            ret = "*";
+          }
+        } else if (gtlt && anyX) {
+          if (xm) {
+            m = 0;
+          }
+          p = 0;
+          if (gtlt === ">") {
+            gtlt = ">=";
+            if (xm) {
+              M = +M + 1;
+              m = 0;
+              p = 0;
+            } else {
+              m = +m + 1;
+              p = 0;
+            }
+          } else if (gtlt === "<=") {
+            gtlt = "<";
+            if (xm) {
+              M = +M + 1;
+            } else {
+              m = +m + 1;
+            }
+          }
+          if (gtlt === "<") {
+            pr = "-0";
+          }
+          ret = `${gtlt + M}.${m}.${p}${pr}`;
+        } else if (xm) {
+          ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`;
+        } else if (xp) {
+          ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`;
+        }
+        debug("xRange return", ret);
+        return ret;
+      });
+    };
+    var replaceStars = (comp, options) => {
+      debug("replaceStars", comp, options);
+      return comp.trim().replace(re[t.STAR], "");
+    };
+    var replaceGTE0 = (comp, options) => {
+      debug("replaceGTE0", comp, options);
+      return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], "");
+    };
+    var hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => {
+      if (isX(fM)) {
+        from = "";
+      } else if (isX(fm)) {
+        from = `>=${fM}.0.0${incPr ? "-0" : ""}`;
+      } else if (isX(fp)) {
+        from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`;
+      } else if (fpr) {
+        from = `>=${from}`;
+      } else {
+        from = `>=${from}${incPr ? "-0" : ""}`;
+      }
+      if (isX(tM)) {
+        to = "";
+      } else if (isX(tm)) {
+        to = `<${+tM + 1}.0.0-0`;
+      } else if (isX(tp)) {
+        to = `<${tM}.${+tm + 1}.0-0`;
+      } else if (tpr) {
+        to = `<=${tM}.${tm}.${tp}-${tpr}`;
+      } else if (incPr) {
+        to = `<${tM}.${tm}.${+tp + 1}-0`;
+      } else {
+        to = `<=${to}`;
+      }
+      return `${from} ${to}`.trim();
+    };
+    var testSet = (set, version3, options) => {
+      for (let i = 0; i < set.length; i++) {
+        if (!set[i].test(version3)) {
+          return false;
+        }
+      }
+      if (version3.prerelease.length && !options.includePrerelease) {
+        for (let i = 0; i < set.length; i++) {
+          debug(set[i].semver);
+          if (set[i].semver === Comparator.ANY) {
+            continue;
+          }
+          if (set[i].semver.prerelease.length > 0) {
+            const allowed = set[i].semver;
+            if (allowed.major === version3.major && allowed.minor === version3.minor && allowed.patch === version3.patch) {
+              return true;
+            }
+          }
+        }
+        return false;
+      }
+      return true;
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js
+var require_comparator = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js"(exports2, module2) {
+    "use strict";
+    var ANY = /* @__PURE__ */ Symbol("SemVer ANY");
+    var Comparator = class _Comparator {
+      static get ANY() {
+        return ANY;
+      }
+      constructor(comp, options) {
+        options = parseOptions(options);
+        if (comp instanceof _Comparator) {
+          if (comp.loose === !!options.loose) {
+            return comp;
+          } else {
+            comp = comp.value;
+          }
+        }
+        comp = comp.trim().split(/\s+/).join(" ");
+        debug("comparator", comp, options);
+        this.options = options;
+        this.loose = !!options.loose;
+        this.parse(comp);
+        if (this.semver === ANY) {
+          this.value = "";
+        } else {
+          this.value = this.operator + this.semver.version;
+        }
+        debug("comp", this);
+      }
+      parse(comp) {
+        const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR];
+        const m = comp.match(r);
+        if (!m) {
+          throw new TypeError(`Invalid comparator: ${comp}`);
+        }
+        this.operator = m[1] !== void 0 ? m[1] : "";
+        if (this.operator === "=") {
+          this.operator = "";
+        }
+        if (!m[2]) {
+          this.semver = ANY;
+        } else {
+          this.semver = new SemVer(m[2], this.options.loose);
+        }
+      }
+      toString() {
+        return this.value;
+      }
+      test(version3) {
+        debug("Comparator.test", version3, this.options.loose);
+        if (this.semver === ANY || version3 === ANY) {
+          return true;
+        }
+        if (typeof version3 === "string") {
+          try {
+            version3 = new SemVer(version3, this.options);
+          } catch (er) {
+            return false;
+          }
+        }
+        return cmp(version3, this.operator, this.semver, this.options);
+      }
+      intersects(comp, options) {
+        if (!(comp instanceof _Comparator)) {
+          throw new TypeError("a Comparator is required");
+        }
+        if (this.operator === "") {
+          if (this.value === "") {
+            return true;
+          }
+          return new Range(comp.value, options).test(this.value);
+        } else if (comp.operator === "") {
+          if (comp.value === "") {
+            return true;
+          }
+          return new Range(this.value, options).test(comp.semver);
+        }
+        options = parseOptions(options);
+        if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) {
+          return false;
+        }
+        if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) {
+          return false;
+        }
+        if (this.operator.startsWith(">") && comp.operator.startsWith(">")) {
+          return true;
+        }
+        if (this.operator.startsWith("<") && comp.operator.startsWith("<")) {
+          return true;
+        }
+        if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) {
+          return true;
+        }
+        if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) {
+          return true;
+        }
+        if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) {
+          return true;
+        }
+        return false;
+      }
+    };
+    module2.exports = Comparator;
+    var parseOptions = require_parse_options();
+    var { safeRe: re, t } = require_re();
+    var cmp = require_cmp();
+    var debug = require_debug();
+    var SemVer = require_semver();
+    var Range = require_range();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js
+var require_satisfies = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var satisfies = (version3, range4, options) => {
+      try {
+        range4 = new Range(range4, options);
+      } catch (er) {
+        return false;
+      }
+      return range4.test(version3);
+    };
+    module2.exports = satisfies;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js
+var require_to_comparators = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var toComparators = (range4, options) => new Range(range4, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" "));
+    module2.exports = toComparators;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js
+var require_max_satisfying = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var maxSatisfying = (versions, range4, options) => {
+      let max = null;
+      let maxSV = null;
+      let rangeObj = null;
+      try {
+        rangeObj = new Range(range4, options);
+      } catch (er) {
+        return null;
+      }
+      versions.forEach((v) => {
+        if (rangeObj.test(v)) {
+          if (!max || maxSV.compare(v) === -1) {
+            max = v;
+            maxSV = new SemVer(max, options);
+          }
+        }
+      });
+      return max;
+    };
+    module2.exports = maxSatisfying;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js
+var require_min_satisfying = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var minSatisfying = (versions, range4, options) => {
+      let min = null;
+      let minSV = null;
+      let rangeObj = null;
+      try {
+        rangeObj = new Range(range4, options);
+      } catch (er) {
+        return null;
+      }
+      versions.forEach((v) => {
+        if (rangeObj.test(v)) {
+          if (!min || minSV.compare(v) === 1) {
+            min = v;
+            minSV = new SemVer(min, options);
+          }
+        }
+      });
+      return min;
+    };
+    module2.exports = minSatisfying;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js
+var require_min_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var gt = require_gt();
+    var minVersion = (range4, loose) => {
+      range4 = new Range(range4, loose);
+      let minver = new SemVer("0.0.0");
+      if (range4.test(minver)) {
+        return minver;
+      }
+      minver = new SemVer("0.0.0-0");
+      if (range4.test(minver)) {
+        return minver;
+      }
+      minver = null;
+      for (let i = 0; i < range4.set.length; ++i) {
+        const comparators = range4.set[i];
+        let setMin = null;
+        comparators.forEach((comparator) => {
+          const compver = new SemVer(comparator.semver.version);
+          switch (comparator.operator) {
+            case ">":
+              if (compver.prerelease.length === 0) {
+                compver.patch++;
+              } else {
+                compver.prerelease.push(0);
+              }
+              compver.raw = compver.format();
+            /* fallthrough */
+            case "":
+            case ">=":
+              if (!setMin || gt(compver, setMin)) {
+                setMin = compver;
+              }
+              break;
+            case "<":
+            case "<=":
+              break;
+            /* istanbul ignore next */
+            default:
+              throw new Error(`Unexpected operation: ${comparator.operator}`);
+          }
+        });
+        if (setMin && (!minver || gt(minver, setMin))) {
+          minver = setMin;
+        }
+      }
+      if (minver && range4.test(minver)) {
+        return minver;
+      }
+      return null;
+    };
+    module2.exports = minVersion;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js
+var require_valid2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var validRange = (range4, options) => {
+      try {
+        return new Range(range4, options).range || "*";
+      } catch (er) {
+        return null;
+      }
+    };
+    module2.exports = validRange;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js
+var require_outside = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Comparator = require_comparator();
+    var { ANY } = Comparator;
+    var Range = require_range();
+    var satisfies = require_satisfies();
+    var gt = require_gt();
+    var lt = require_lt();
+    var lte = require_lte();
+    var gte = require_gte();
+    var outside = (version3, range4, hilo, options) => {
+      version3 = new SemVer(version3, options);
+      range4 = new Range(range4, options);
+      let gtfn, ltefn, ltfn, comp, ecomp;
+      switch (hilo) {
+        case ">":
+          gtfn = gt;
+          ltefn = lte;
+          ltfn = lt;
+          comp = ">";
+          ecomp = ">=";
+          break;
+        case "<":
+          gtfn = lt;
+          ltefn = gte;
+          ltfn = gt;
+          comp = "<";
+          ecomp = "<=";
+          break;
+        default:
+          throw new TypeError('Must provide a hilo val of "<" or ">"');
+      }
+      if (satisfies(version3, range4, options)) {
+        return false;
+      }
+      for (let i = 0; i < range4.set.length; ++i) {
+        const comparators = range4.set[i];
+        let high = null;
+        let low = null;
+        comparators.forEach((comparator) => {
+          if (comparator.semver === ANY) {
+            comparator = new Comparator(">=0.0.0");
+          }
+          high = high || comparator;
+          low = low || comparator;
+          if (gtfn(comparator.semver, high.semver, options)) {
+            high = comparator;
+          } else if (ltfn(comparator.semver, low.semver, options)) {
+            low = comparator;
+          }
+        });
+        if (high.operator === comp || high.operator === ecomp) {
+          return false;
+        }
+        if ((!low.operator || low.operator === comp) && ltefn(version3, low.semver)) {
+          return false;
+        } else if (low.operator === ecomp && ltfn(version3, low.semver)) {
+          return false;
+        }
+      }
+      return true;
+    };
+    module2.exports = outside;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js
+var require_gtr = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js"(exports2, module2) {
+    "use strict";
+    var outside = require_outside();
+    var gtr = (version3, range4, options) => outside(version3, range4, ">", options);
+    module2.exports = gtr;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js
+var require_ltr = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js"(exports2, module2) {
+    "use strict";
+    var outside = require_outside();
+    var ltr = (version3, range4, options) => outside(version3, range4, "<", options);
+    module2.exports = ltr;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js
+var require_intersects = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var intersects = (r1, r2, options) => {
+      r1 = new Range(r1, options);
+      r2 = new Range(r2, options);
+      return r1.intersects(r2, options);
+    };
+    module2.exports = intersects;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js
+var require_simplify = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js"(exports2, module2) {
+    "use strict";
+    var satisfies = require_satisfies();
+    var compare = require_compare();
+    module2.exports = (versions, range4, options) => {
+      const set = [];
+      let first = null;
+      let prev = null;
+      const v = versions.sort((a, b) => compare(a, b, options));
+      for (const version3 of v) {
+        const included = satisfies(version3, range4, options);
+        if (included) {
+          prev = version3;
+          if (!first) {
+            first = version3;
+          }
+        } else {
+          if (prev) {
+            set.push([first, prev]);
+          }
+          prev = null;
+          first = null;
+        }
+      }
+      if (first) {
+        set.push([first, null]);
+      }
+      const ranges = [];
+      for (const [min, max] of set) {
+        if (min === max) {
+          ranges.push(min);
+        } else if (!max && min === v[0]) {
+          ranges.push("*");
+        } else if (!max) {
+          ranges.push(`>=${min}`);
+        } else if (min === v[0]) {
+          ranges.push(`<=${max}`);
+        } else {
+          ranges.push(`${min} - ${max}`);
+        }
+      }
+      const simplified = ranges.join(" || ");
+      const original = typeof range4.raw === "string" ? range4.raw : String(range4);
+      return simplified.length < original.length ? simplified : range4;
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js
+var require_subset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var Comparator = require_comparator();
+    var { ANY } = Comparator;
+    var satisfies = require_satisfies();
+    var compare = require_compare();
+    var subset = (sub, dom, options = {}) => {
+      if (sub === dom) {
+        return true;
+      }
+      sub = new Range(sub, options);
+      dom = new Range(dom, options);
+      let sawNonNull = false;
+      OUTER: for (const simpleSub of sub.set) {
+        for (const simpleDom of dom.set) {
+          const isSub = simpleSubset(simpleSub, simpleDom, options);
+          sawNonNull = sawNonNull || isSub !== null;
+          if (isSub) {
+            continue OUTER;
+          }
+        }
+        if (sawNonNull) {
+          return false;
+        }
+      }
+      return true;
+    };
+    var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")];
+    var minimumVersion = [new Comparator(">=0.0.0")];
+    var simpleSubset = (sub, dom, options) => {
+      if (sub === dom) {
+        return true;
+      }
+      if (sub.length === 1 && sub[0].semver === ANY) {
+        if (dom.length === 1 && dom[0].semver === ANY) {
+          return true;
+        } else if (options.includePrerelease) {
+          sub = minimumVersionWithPreRelease;
+        } else {
+          sub = minimumVersion;
+        }
+      }
+      if (dom.length === 1 && dom[0].semver === ANY) {
+        if (options.includePrerelease) {
+          return true;
+        } else {
+          dom = minimumVersion;
+        }
+      }
+      const eqSet = /* @__PURE__ */ new Set();
+      let gt, lt;
+      for (const c of sub) {
+        if (c.operator === ">" || c.operator === ">=") {
+          gt = higherGT(gt, c, options);
+        } else if (c.operator === "<" || c.operator === "<=") {
+          lt = lowerLT(lt, c, options);
+        } else {
+          eqSet.add(c.semver);
+        }
+      }
+      if (eqSet.size > 1) {
+        return null;
+      }
+      let gtltComp;
+      if (gt && lt) {
+        gtltComp = compare(gt.semver, lt.semver, options);
+        if (gtltComp > 0) {
+          return null;
+        } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) {
+          return null;
+        }
+      }
+      for (const eq of eqSet) {
+        if (gt && !satisfies(eq, String(gt), options)) {
+          return null;
+        }
+        if (lt && !satisfies(eq, String(lt), options)) {
+          return null;
+        }
+        for (const c of dom) {
+          if (!satisfies(eq, String(c), options)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      let higher, lower;
+      let hasDomLT, hasDomGT;
+      let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false;
+      let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
+      if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) {
+        needDomLTPre = false;
+      }
+      for (const c of dom) {
+        hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">=";
+        hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<=";
+        if (gt) {
+          if (needDomGTPre) {
+            if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) {
+              needDomGTPre = false;
+            }
+          }
+          if (c.operator === ">" || c.operator === ">=") {
+            higher = higherGT(gt, c, options);
+            if (higher === c && higher !== gt) {
+              return false;
+            }
+          } else if (gt.operator === ">=" && !c.test(gt.semver)) {
+            return false;
+          }
+        }
+        if (lt) {
+          if (needDomLTPre) {
+            if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) {
+              needDomLTPre = false;
+            }
+          }
+          if (c.operator === "<" || c.operator === "<=") {
+            lower = lowerLT(lt, c, options);
+            if (lower === c && lower !== lt) {
+              return false;
+            }
+          } else if (lt.operator === "<=" && !c.test(lt.semver)) {
+            return false;
+          }
+        }
+        if (!c.operator && (lt || gt) && gtltComp !== 0) {
+          return false;
+        }
+      }
+      if (gt && hasDomLT && !lt && gtltComp !== 0) {
+        return false;
+      }
+      if (lt && hasDomGT && !gt && gtltComp !== 0) {
+        return false;
+      }
+      if (needDomGTPre || needDomLTPre) {
+        return false;
+      }
+      return true;
+    };
+    var higherGT = (a, b, options) => {
+      if (!a) {
+        return b;
+      }
+      const comp = compare(a.semver, b.semver, options);
+      return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a;
+    };
+    var lowerLT = (a, b, options) => {
+      if (!a) {
+        return b;
+      }
+      const comp = compare(a.semver, b.semver, options);
+      return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a;
+    };
+    module2.exports = subset;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js
+var require_semver2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js"(exports2, module2) {
+    "use strict";
+    var internalRe = require_re();
+    var constants2 = require_constants();
+    var SemVer = require_semver();
+    var identifiers = require_identifiers();
+    var parse3 = require_parse();
+    var valid = require_valid();
+    var clean = require_clean();
+    var inc = require_inc();
+    var diff = require_diff();
+    var major = require_major();
+    var minor = require_minor();
+    var patch = require_patch();
+    var prerelease = require_prerelease();
+    var compare = require_compare();
+    var rcompare = require_rcompare();
+    var compareLoose = require_compare_loose();
+    var compareBuild = require_compare_build();
+    var sort = require_sort();
+    var rsort = require_rsort();
+    var gt = require_gt();
+    var lt = require_lt();
+    var eq = require_eq();
+    var neq = require_neq();
+    var gte = require_gte();
+    var lte = require_lte();
+    var cmp = require_cmp();
+    var coerce = require_coerce();
+    var truncate = require_truncate();
+    var Comparator = require_comparator();
+    var Range = require_range();
+    var satisfies = require_satisfies();
+    var toComparators = require_to_comparators();
+    var maxSatisfying = require_max_satisfying();
+    var minSatisfying = require_min_satisfying();
+    var minVersion = require_min_version();
+    var validRange = require_valid2();
+    var outside = require_outside();
+    var gtr = require_gtr();
+    var ltr = require_ltr();
+    var intersects = require_intersects();
+    var simplifyRange = require_simplify();
+    var subset = require_subset();
+    module2.exports = {
+      parse: parse3,
+      valid,
+      clean,
+      inc,
+      diff,
+      major,
+      minor,
+      patch,
+      prerelease,
+      compare,
+      rcompare,
+      compareLoose,
+      compareBuild,
+      sort,
+      rsort,
+      gt,
+      lt,
+      eq,
+      neq,
+      gte,
+      lte,
+      cmp,
+      coerce,
+      truncate,
+      Comparator,
+      Range,
+      satisfies,
+      toComparators,
+      maxSatisfying,
+      minSatisfying,
+      minVersion,
+      validRange,
+      outside,
+      gtr,
+      ltr,
+      intersects,
+      simplifyRange,
+      subset,
+      SemVer,
+      re: internalRe.re,
+      src: internalRe.src,
+      tokens: internalRe.t,
+      SEMVER_SPEC_VERSION: constants2.SEMVER_SPEC_VERSION,
+      RELEASE_TYPES: constants2.RELEASE_TYPES,
+      compareIdentifiers: identifiers.compareIdentifiers,
+      rcompareIdentifiers: identifiers.rcompareIdentifiers
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json
+var require_cli_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json"(exports2, module2) {
+    module2.exports = { version: "2.1142.0" };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json
+var require_assets_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/AssetManifest",
+      definitions: {
+        AssetManifest: {
+          description: "Definitions for the asset manifest",
+          type: "object",
+          properties: {
+            version: {
+              description: "Version of the manifest",
+              type: "string"
+            },
+            files: {
+              description: "The file assets in this manifest (Default - No files)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FileAsset"
+              }
+            },
+            dockerImages: {
+              description: "The Docker image assets in this manifest (Default - No Docker images)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/DockerImageAsset"
+              }
+            }
+          },
+          required: [
+            "version"
+          ]
+        },
+        FileAsset: {
+          description: "A file asset",
+          type: "object",
+          properties: {
+            displayName: {
+              description: "A display name for this asset (Default - The identifier will be used as the display name)",
+              type: "string"
+            },
+            source: {
+              $ref: "#/definitions/FileSource",
+              description: "Source description for file assets"
+            },
+            destinations: {
+              description: "Destinations for this file asset",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FileDestination"
+              }
+            }
+          },
+          required: [
+            "destinations",
+            "source"
+          ]
+        },
+        FileSource: {
+          description: "Describe the source of a file asset",
+          type: "object",
+          properties: {
+            executable: {
+              description: "External command which will produce the file asset to upload. (Default - Exactly one of `executable` and `path` is required.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            path: {
+              description: "The filesystem object to upload\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `executable` and `path` is required.)",
+              type: "string"
+            },
+            packaging: {
+              description: "Packaging method\n\nOnly allowed when `path` is specified. (Default FILE)",
+              enum: [
+                "file",
+                "zip"
+              ],
+              type: "string"
+            }
+          }
+        },
+        FileDestination: {
+          description: "Where in S3 a file asset needs to be published",
+          type: "object",
+          properties: {
+            bucketName: {
+              description: "The name of the bucket",
+              type: "string"
+            },
+            objectKey: {
+              description: "The destination object key",
+              type: "string"
+            },
+            region: {
+              description: "The region where this asset will need to be published (Default - Current region)",
+              type: "string"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "bucketName",
+            "objectKey"
+          ]
+        },
+        DockerImageAsset: {
+          description: "A file asset",
+          type: "object",
+          properties: {
+            displayName: {
+              description: "A display name for this asset (Default - The identifier will be used as the display name)",
+              type: "string"
+            },
+            source: {
+              $ref: "#/definitions/DockerImageSource",
+              description: "Source description for container assets"
+            },
+            destinations: {
+              description: "Destinations for this container asset",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/DockerImageDestination"
+              }
+            }
+          },
+          required: [
+            "destinations",
+            "source"
+          ]
+        },
+        DockerImageSource: {
+          description: "Properties for how to produce a Docker image from a source",
+          type: "object",
+          properties: {
+            directory: {
+              description: "The directory containing the Docker image build instructions.\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `directory` and `executable` is required)",
+              type: "string"
+            },
+            executable: {
+              description: "A command-line executable that returns the name of a local\nDocker image on stdout after being run. (Default - Exactly one of `directory` and `executable` is required)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            dockerFile: {
+              description: "The name of the file with build instructions\n\nOnly allowed when `directory` is set. (Default Dockerfile)",
+              type: "string"
+            },
+            dockerBuildTarget: {
+              description: "Target build stage in a Dockerfile with multiple build stages\n\nOnly allowed when `directory` is set. (Default - The last stage in the Dockerfile)",
+              type: "string"
+            },
+            dockerBuildArgs: {
+              description: "Additional build arguments\n\nOnly allowed when `directory` is set. (Default - No additional build arguments)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            dockerBuildContexts: {
+              description: "Additional build contexts\n\nOnly allowed when `directory` is set. (Default - No additional build contexts)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            dockerBuildSsh: {
+              description: "SSH agent socket or keys\n\nRequires building with docker buildkit. (Default - No ssh flag is set)",
+              type: "string"
+            },
+            dockerBuildSecrets: {
+              description: "Additional build secrets\n\nOnly allowed when `directory` is set. (Default - No additional build secrets)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            networkMode: {
+              description: "Networking mode for the RUN commands during build. _Requires Docker Engine API v1.25+_.\n\nSpecify this property to build images on a specific networking mode. (Default - no networking mode specified)",
+              type: "string"
+            },
+            platform: {
+              description: "Platform to build for. _Requires Docker Buildx_.\n\nSpecify this property to build images on a specific platform/architecture. (Default - current machine platform)",
+              type: "string"
+            },
+            dockerOutputs: {
+              description: "Outputs (Default - no outputs are passed to the build command (default outputs are used))",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            cacheFrom: {
+              description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/DockerCacheOption"
+              }
+            },
+            cacheTo: {
+              description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)",
+              $ref: "#/definitions/DockerCacheOption"
+            },
+            cacheDisabled: {
+              description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)",
+              type: "boolean"
+            }
+          }
+        },
+        DockerCacheOption: {
+          description: "Options for configuring the Docker cache backend",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)",
+              type: "string"
+            },
+            params: {
+              description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        DockerImageDestination: {
+          description: "Where to publish docker images",
+          type: "object",
+          properties: {
+            repositoryName: {
+              description: "Name of the ECR repository to publish to",
+              type: "string"
+            },
+            imageTag: {
+              description: "Tag of the image to publish",
+              type: "string"
+            },
+            region: {
+              description: "The region where this asset will need to be published (Default - Current region)",
+              type: "string"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "imageTag",
+            "repositoryName"
+          ]
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json
+var require_cloud_assembly_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/AssemblyManifest",
+      definitions: {
+        AssemblyManifest: {
+          description: "A manifest which describes the cloud assembly.",
+          type: "object",
+          properties: {
+            version: {
+              description: "Protocol version",
+              type: "string"
+            },
+            minimumCliVersion: {
+              description: "Required CLI version, if available\n\nIf the manifest producer knows, it can put the minimum version of the CLI\nhere that supports reading this assembly.\n\nIf set, it can be used to show a more informative error message to users. (Default - Minimum CLI version unknown)",
+              type: "string"
+            },
+            artifacts: {
+              description: "The set of artifacts in this assembly. (Default - no artifacts.)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/ArtifactManifest"
+              }
+            },
+            missing: {
+              description: "Missing context information. If this field has values, it means that the\ncloud assembly is not complete and should not be deployed. (Default - no missing context.)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/MissingContext"
+              }
+            },
+            runtime: {
+              description: "Runtime information. (Default - no info.)",
+              $ref: "#/definitions/RuntimeInfo"
+            }
+          },
+          required: [
+            "version"
+          ]
+        },
+        ArtifactManifest: {
+          description: "A manifest for a single artifact within the cloud assembly.",
+          type: "object",
+          properties: {
+            type: {
+              $ref: "#/definitions/ArtifactType",
+              description: "The type of artifact."
+            },
+            environment: {
+              description: "The environment into which this artifact is deployed. (Default - no envrionment.)",
+              type: "string"
+            },
+            metadata: {
+              description: "Associated metadata.\n\nMetadata can be stored directly in the assembly manifest, as well as in a\nseparate file (see `additionalMetadataFile`). It should prefer to be stored\nin the additional file, as that will reduce the size of the assembly\nmanifest in cases of a lot of metdata (which CDK does emit by default). (Default - no metadata.)",
+              type: "object",
+              additionalProperties: {
+                type: "array",
+                items: {
+                  $ref: "#/definitions/MetadataEntry"
+                }
+              }
+            },
+            additionalMetadataFile: {
+              description: "A file with additional metadata entries.\n\nThe schema of this file is exactly the same as the type of the `metadata` field.\nIn other words, that file contains an object mapping construct paths to arrays\nof metadata entries. (Default - no additional metadata)",
+              type: "string"
+            },
+            dependencies: {
+              description: "IDs of artifacts that must be deployed before this artifact. (Default - no dependencies.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            properties: {
+              description: "The set of properties for this artifact (depends on type) (Default - no properties.)",
+              anyOf: [
+                {
+                  $ref: "#/definitions/AwsCloudFormationStackProperties"
+                },
+                {
+                  $ref: "#/definitions/AssetManifestProperties"
+                },
+                {
+                  $ref: "#/definitions/TreeArtifactProperties"
+                },
+                {
+                  $ref: "#/definitions/NestedCloudAssemblyProperties"
+                },
+                {
+                  $ref: "#/definitions/FeatureFlagReportProperties"
+                }
+              ]
+            },
+            displayName: {
+              description: `A string that can be shown to a user to uniquely identify this artifact inside a cloud assembly tree
+
+Is used by the CLI to present a list of stacks to the user in a way that
+makes sense to them. Even though the property name "display name" doesn't
+imply it, this field is used to select stacks as well, so all stacks should
+have a unique display name. (Default - no display name)`,
+              type: "string"
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        ArtifactType: {
+          description: "Type of cloud artifact.",
+          type: "string",
+          enum: [
+            "none",
+            "aws:cloudformation:stack",
+            "cdk:tree",
+            "cdk:asset-manifest",
+            "cdk:cloud-assembly",
+            "cdk:feature-flag-report"
+          ]
+        },
+        MetadataEntry: {
+          description: "A metadata entry in a cloud assembly artifact.",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of the metadata entry.",
+              type: "string"
+            },
+            data: {
+              description: "The data. (Default - no data.)",
+              anyOf: [
+                {
+                  $ref: "#/definitions/FileAssetMetadataEntry"
+                },
+                {
+                  $ref: "#/definitions/ContainerImageAssetMetadataEntry"
+                },
+                {
+                  $ref: "#/definitions/PropertyMutationMetadataEntry"
+                },
+                {
+                  type: "array",
+                  items: {
+                    anyOf: [
+                      {
+                        $ref: "#/definitions/Tag"
+                      },
+                      {
+                        type: "string"
+                      }
+                    ]
+                  }
+                },
+                {
+                  type: [
+                    "string",
+                    "number",
+                    "boolean"
+                  ]
+                },
+                {
+                  description: "Free form data."
+                }
+              ]
+            },
+            trace: {
+              description: "A stack trace for when the entry was created. (Default - no trace.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        FileAssetMetadataEntry: {
+          description: "Metadata Entry spec for files.",
+          type: "object",
+          properties: {
+            packaging: {
+              description: "Requested packaging style",
+              enum: [
+                "file",
+                "zip"
+              ],
+              type: "string"
+            },
+            s3BucketParameter: {
+              description: "Name of parameter where S3 bucket should be passed in",
+              type: "string"
+            },
+            s3KeyParameter: {
+              description: "Name of parameter where S3 key should be passed in",
+              type: "string"
+            },
+            artifactHashParameter: {
+              description: "The name of the parameter where the hash of the bundled asset should be passed in.",
+              type: "string"
+            },
+            id: {
+              description: "Logical identifier for the asset",
+              type: "string"
+            },
+            sourceHash: {
+              description: "The hash of the asset source.",
+              type: "string"
+            },
+            path: {
+              description: "Path on disk to the asset",
+              type: "string"
+            }
+          },
+          required: [
+            "artifactHashParameter",
+            "id",
+            "packaging",
+            "path",
+            "s3BucketParameter",
+            "s3KeyParameter",
+            "sourceHash"
+          ]
+        },
+        ContainerImageAssetMetadataEntry: {
+          description: "Metadata Entry spec for container images.",
+          type: "object",
+          properties: {
+            packaging: {
+              description: "Type of asset",
+              type: "string",
+              const: "container-image"
+            },
+            imageNameParameter: {
+              description: 'ECR Repository name and repo digest (separated by "@sha256:") where this\nimage is stored. (Default undefined If not specified, `repositoryName` and `imageTag` are\nrequired because otherwise how will the stack know where to find the asset,\nha?)',
+              type: "string"
+            },
+            repositoryName: {
+              description: "ECR repository name, if omitted a default name based on the asset's ID is\nused instead. Specify this property if you need to statically address the\nimage, e.g. from a Kubernetes Pod. Note, this is only the repository name,\nwithout the registry and the tag parts. (Default - this parameter is REQUIRED after 1.21.0)",
+              type: "string"
+            },
+            imageTag: {
+              description: "The docker image tag to use for tagging pushed images. This field is\nrequired if `imageParameterName` is ommited (otherwise, the app won't be\nable to find the image). (Default - this parameter is REQUIRED after 1.21.0)",
+              type: "string"
+            },
+            buildArgs: {
+              description: "Build args to pass to the `docker build` command (Default no build args are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            buildContexts: {
+              description: "Build contexts to pass to the `docker build` command (Default no build contexts are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            buildSsh: {
+              description: "SSH agent socket or keys to pass to the `docker build` command (Default no ssh arg is passed)",
+              type: "string"
+            },
+            buildSecrets: {
+              description: "Build secrets to pass to the `docker build` command (Default no build secrets are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            target: {
+              description: "Docker target to build to (Default no build target)",
+              type: "string"
+            },
+            file: {
+              description: "Path to the Dockerfile (relative to the directory). (Default - no file is passed)",
+              type: "string"
+            },
+            networkMode: {
+              description: "Networking mode for the RUN commands during build. (Default - no networking mode specified)",
+              type: "string"
+            },
+            platform: {
+              description: "Platform to build for. _Requires Docker Buildx_. (Default - current machine platform)",
+              type: "string"
+            },
+            outputs: {
+              description: "Outputs to pass to the `docker build` command. (Default - no outputs are passed to the build command (default outputs are used))",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            cacheFrom: {
+              description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ContainerImageAssetCacheOption"
+              }
+            },
+            cacheTo: {
+              description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)",
+              $ref: "#/definitions/ContainerImageAssetCacheOption"
+            },
+            cacheDisabled: {
+              description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)",
+              type: "boolean"
+            },
+            id: {
+              description: "Logical identifier for the asset",
+              type: "string"
+            },
+            sourceHash: {
+              description: "The hash of the asset source.",
+              type: "string"
+            },
+            path: {
+              description: "Path on disk to the asset",
+              type: "string"
+            }
+          },
+          required: [
+            "id",
+            "packaging",
+            "path",
+            "sourceHash"
+          ]
+        },
+        ContainerImageAssetCacheOption: {
+          description: "Options for configuring the Docker cache backend",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)",
+              type: "string"
+            },
+            params: {
+              description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        PropertyMutationMetadataEntry: {
+          description: "Metadata type of a PropertyMutation",
+          type: "object",
+          properties: {
+            propertyName: {
+              description: "Name of the property",
+              type: "string"
+            },
+            stackTrace: {
+              description: "Stack trace of the mutation",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "propertyName",
+            "stackTrace"
+          ]
+        },
+        Tag: {
+          description: "Metadata Entry spec for stack tag.",
+          type: "object",
+          properties: {
+            key: {
+              description: 'Tag key.\n\n(In the actual file on disk this will be cased as "Key", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)',
+              type: "string"
+            },
+            value: {
+              description: 'Tag value.\n\n(In the actual file on disk this will be cased as "Value", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)',
+              type: "string"
+            }
+          },
+          required: [
+            "key",
+            "value"
+          ]
+        },
+        AwsCloudFormationStackProperties: {
+          description: "Artifact properties for CloudFormation stacks.",
+          type: "object",
+          properties: {
+            templateFile: {
+              description: "A file relative to the assembly root which contains the CloudFormation template for this stack.",
+              type: "string"
+            },
+            parameters: {
+              description: "Values for CloudFormation stack parameters that should be passed when the stack is deployed. (Default - No parameters)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            tags: {
+              description: "Values for CloudFormation stack tags that should be passed when the stack is deployed.\n\nN.B.: Tags are also written to stack metadata, under the path of the Stack\nconstruct. Only in CDK CLI v1 are those tags found in metadata used for\nactual deployments; in all stable versions of CDK only the stack tags\ndirectly found in the `tags` property of `AwsCloudFormationStack` artifact\n(i.e., this property) are used. (Default - No tags)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            notificationArns: {
+              description: "SNS Notification ARNs that should receive CloudFormation Stack Events. (Default - No notification arns)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            stackName: {
+              description: "The name to use for the CloudFormation stack. (Default - name derived from artifact ID)",
+              type: "string"
+            },
+            terminationProtection: {
+              description: "Whether to enable termination protection for this stack.",
+              default: false,
+              type: "boolean"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed to deploy the stack (Default - No role is assumed (current credentials are used))",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "External ID to use when assuming role for cloudformation deployments (Default - No external ID)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            },
+            cloudFormationExecutionRoleArn: {
+              description: "The role that is passed to CloudFormation to execute the change set (Default - No role is passed (currently assumed role/credentials are used))",
+              type: "string"
+            },
+            lookupRole: {
+              description: "The role to use to look up values from the target AWS account (Default - No role is assumed (current credentials are used))",
+              $ref: "#/definitions/BootstrapRole"
+            },
+            stackTemplateAssetObjectUrl: {
+              description: "If the stack template has already been included in the asset manifest, its asset URL (Default - Not uploaded yet, upload just before deploying)",
+              type: "string"
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to deploy this stack (Default - No bootstrap stack required)",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "SSM parameter where the bootstrap stack version number can be found\n\nOnly used if `requiresBootstrapStackVersion` is set.\n\n- If this value is not set, the bootstrap stack name must be known at\n  deployment time so the stack version can be looked up from the stack\n  outputs.\n- If this value is set, the bootstrap stack can have any name because\n  we won't need to look it up. (Default - Bootstrap stack version number looked up)",
+              type: "string"
+            },
+            validateOnSynth: {
+              description: "Whether this stack should be validated by the CLI after synthesis (Default - false)",
+              type: "boolean"
+            }
+          },
+          required: [
+            "templateFile"
+          ]
+        },
+        BootstrapRole: {
+          description: "Information needed to access an IAM role created\nas part of the bootstrap process",
+          type: "object",
+          properties: {
+            arn: {
+              description: "The ARN of the IAM role created as part of bootrapping\ne.g. lookupRoleArn",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "External ID to use when assuming the bootstrap role (Default - No external ID)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `arn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to use this role (Default - No bootstrap stack required)",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "Name of SSM parameter with bootstrap stack version (Default - Discover SSM parameter by reading stack)",
+              type: "string"
+            }
+          },
+          required: [
+            "arn"
+          ]
+        },
+        AssetManifestProperties: {
+          description: "Artifact properties for the Asset Manifest",
+          type: "object",
+          properties: {
+            file: {
+              description: "Filename of the asset manifest",
+              type: "string"
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to deploy this stack (Default - Version 1 (basic modern bootstrap stack))",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "SSM parameter where the bootstrap stack version number can be found\n\n- If this value is not set, the bootstrap stack name must be known at\n  deployment time so the stack version can be looked up from the stack\n  outputs.\n- If this value is set, the bootstrap stack can have any name because\n  we won't need to look it up. (Default - Bootstrap stack version number looked up)",
+              type: "string"
+            }
+          },
+          required: [
+            "file"
+          ]
+        },
+        TreeArtifactProperties: {
+          description: "Artifact properties for the Construct Tree Artifact",
+          type: "object",
+          properties: {
+            file: {
+              description: "Filename of the tree artifact",
+              type: "string"
+            }
+          },
+          required: [
+            "file"
+          ]
+        },
+        NestedCloudAssemblyProperties: {
+          description: "Artifact properties for nested cloud assemblies",
+          type: "object",
+          properties: {
+            directoryName: {
+              description: "Relative path to the nested cloud assembly",
+              type: "string"
+            },
+            displayName: {
+              description: "Display name for the cloud assembly (Default - The artifact ID)",
+              type: "string"
+            }
+          },
+          required: [
+            "directoryName"
+          ]
+        },
+        FeatureFlagReportProperties: {
+          description: "Artifact properties for a feature flag report\n\nA feature flag report is small enough that all the properties can be inlined\nhere, and doesn't need an additional file.",
+          type: "object",
+          properties: {
+            module: {
+              description: "The library that this feature flag report applies to.",
+              type: "string"
+            },
+            flags: {
+              description: "Information about every feature flag supported by this library.",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FeatureFlag"
+              }
+            }
+          },
+          required: [
+            "flags",
+            "module"
+          ]
+        },
+        FeatureFlag: {
+          description: "A single feature flag",
+          type: "object",
+          properties: {
+            recommendedValue: {
+              description: "The library-recommended value for this flag, if any\n\nIt is possible that there is no recommended value. (Default - No recommended value.)"
+            },
+            userValue: {
+              description: "The value configured by the user\n\nThis is the value configured at the root of the tree. Users may also have\nconfigured values at specific locations in the tree; we don't report on\nthose. (Default - Not configured by the user)"
+            },
+            explanation: {
+              description: "Explanation about the purpose of this flag that can be shown to the user. (Default - No description)",
+              type: "string"
+            },
+            unconfiguredBehavesLike: {
+              description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nThe structure of this field is a historical accident. The type of this field\nshould have been boolean, which should have contained the default value for\nthe flag appropriate for the *current* version of the CDK library. We are\nnot rectifying this accident because doing so\n\nInstead, the canonical way to access this value is by evaluating\n`unconfiguredBehavesLike?.v2 ?? false`.",
+              default: false,
+              $ref: "#/definitions/UnconfiguredBehavesLike"
+            }
+          }
+        },
+        UnconfiguredBehavesLike: {
+          type: "object",
+          properties: {
+            v1: {
+              description: "Historical accident, don't use.\n\nThis value may be present, but it should never be used. The actual value is\nin the `v2` field, regardless of the version of the CDK library. (Default - ignore)"
+            },
+            v2: {
+              description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nEven though it is called 'v2', this is the official name of this field. In\nany future versions of CDK (v3, v4, ...), this field will still be called 'v2'.\n\nThe structure of this field is a historical accident. See the comment on\n`unconfiguredBehavesLike` for more information.",
+              default: false
+            }
+          }
+        },
+        MissingContext: {
+          description: "Represents a missing piece of context.",
+          type: "object",
+          properties: {
+            key: {
+              description: "The missing context key.",
+              type: "string"
+            },
+            provider: {
+              $ref: "#/definitions/ContextProvider",
+              description: "The provider from which we expect this context key to be obtained."
+            },
+            props: {
+              $ref: "#/definitions/ContextQueryProperties",
+              description: "A set of provider-specific options."
+            }
+          },
+          required: [
+            "key",
+            "props",
+            "provider"
+          ]
+        },
+        ContextProvider: {
+          description: "Identifier for the context provider",
+          type: "string",
+          enum: [
+            "ami",
+            "availability-zones",
+            "hosted-zone",
+            "ssm",
+            "vpc-provider",
+            "endpoint-service-availability-zones",
+            "load-balancer",
+            "load-balancer-listener",
+            "security-group",
+            "key-provider",
+            "cc-api-provider",
+            "plugin"
+          ]
+        },
+        ContextQueryProperties: {
+          anyOf: [
+            {
+              $ref: "#/definitions/AmiContextQuery"
+            },
+            {
+              $ref: "#/definitions/AvailabilityZonesContextQuery"
+            },
+            {
+              $ref: "#/definitions/HostedZoneContextQuery"
+            },
+            {
+              $ref: "#/definitions/SSMParameterContextQuery"
+            },
+            {
+              $ref: "#/definitions/VpcContextQuery"
+            },
+            {
+              $ref: "#/definitions/EndpointServiceAvailabilityZonesContextQuery"
+            },
+            {
+              $ref: "#/definitions/LoadBalancerContextQuery"
+            },
+            {
+              $ref: "#/definitions/LoadBalancerListenerContextQuery"
+            },
+            {
+              $ref: "#/definitions/SecurityGroupContextQuery"
+            },
+            {
+              $ref: "#/definitions/KeyContextQuery"
+            },
+            {
+              $ref: "#/definitions/CcApiContextQuery"
+            },
+            {
+              $ref: "#/definitions/PluginContextQuery"
+            }
+          ]
+        },
+        AmiContextQuery: {
+          description: "Query to AMI context provider",
+          type: "object",
+          properties: {
+            owners: {
+              description: "Owners to DescribeImages call (Default - All owners)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            filters: {
+              description: "Filters to DescribeImages call",
+              type: "object",
+              additionalProperties: {
+                type: "array",
+                items: {
+                  type: "string"
+                }
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "filters",
+            "region"
+          ]
+        },
+        AvailabilityZonesContextQuery: {
+          description: "Query to availability zone context provider",
+          type: "object",
+          properties: {
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region"
+          ]
+        },
+        HostedZoneContextQuery: {
+          description: "Query to hosted zone context provider",
+          type: "object",
+          properties: {
+            domainName: {
+              description: "The domain name e.g. example.com to lookup",
+              type: "string"
+            },
+            privateZone: {
+              description: "True if the zone you want to find is a private hosted zone",
+              default: false,
+              type: "boolean"
+            },
+            vpcId: {
+              description: "The VPC ID to that the private zone must be associated with\n\nIf you provide VPC ID and privateZone is false, this will return no results\nand raise an error. (Default - Required if privateZone=true)",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "domainName",
+            "region"
+          ]
+        },
+        SSMParameterContextQuery: {
+          description: "Query to SSM Parameter Context Provider",
+          type: "object",
+          properties: {
+            parameterName: {
+              description: "Parameter name to query",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "parameterName",
+            "region"
+          ]
+        },
+        VpcContextQuery: {
+          description: "Query input for looking up a VPC",
+          type: "object",
+          properties: {
+            filter: {
+              description: "Filters to apply to the VPC\n\nFilter parameters are the same as passed to DescribeVpcs.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            returnAsymmetricSubnets: {
+              description: "Whether to populate the subnetGroups field of the `VpcContextResponse`,\nwhich contains potentially asymmetric subnet groups.",
+              default: false,
+              type: "boolean"
+            },
+            subnetGroupNameTag: {
+              description: "Optional tag for subnet group name.\nIf not provided, we'll look at the aws-cdk:subnet-name tag.\nIf the subnet does not have the specified tag,\nwe'll use its type as the name. (Default 'aws-cdk:subnet-name')",
+              type: "string"
+            },
+            returnVpnGateways: {
+              description: "Whether to populate the `vpnGatewayId` field of the `VpcContextResponse`,\nwhich contains the VPN Gateway ID, if one exists. You can explicitly\ndisable this in order to avoid the lookup if you know the VPC does not have\na VPN Gatway attached. (Default true)",
+              type: "boolean"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "filter",
+            "region"
+          ]
+        },
+        EndpointServiceAvailabilityZonesContextQuery: {
+          description: "Query to endpoint service context provider",
+          type: "object",
+          properties: {
+            serviceName: {
+              description: "Query service name",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region",
+            "serviceName"
+          ]
+        },
+        LoadBalancerContextQuery: {
+          description: "Query input for looking up a load balancer",
+          type: "object",
+          properties: {
+            loadBalancerType: {
+              $ref: "#/definitions/LoadBalancerType",
+              description: "Filter load balancers by their type"
+            },
+            loadBalancerArn: {
+              description: "Find by load balancer's ARN (Default - does not search by load balancer arn)",
+              type: "string"
+            },
+            loadBalancerTags: {
+              description: "Match load balancer tags (Default - does not match load balancers by tags)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/Tag"
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "loadBalancerType",
+            "region"
+          ]
+        },
+        LoadBalancerType: {
+          description: "Type of load balancer",
+          type: "string",
+          enum: [
+            "network",
+            "application"
+          ]
+        },
+        LoadBalancerListenerContextQuery: {
+          description: "Query input for looking up a load balancer listener",
+          type: "object",
+          properties: {
+            listenerArn: {
+              description: "Find by listener's arn (Default - does not find by listener arn)",
+              type: "string"
+            },
+            listenerProtocol: {
+              description: "Filter by listener protocol (Default - does not filter by listener protocol)",
+              enum: [
+                "HTTP",
+                "HTTPS",
+                "TCP",
+                "TCP_UDP",
+                "TLS",
+                "UDP"
+              ],
+              type: "string"
+            },
+            listenerPort: {
+              description: "Filter listeners by listener port (Default - does not filter by a listener port)",
+              type: "number"
+            },
+            loadBalancerType: {
+              $ref: "#/definitions/LoadBalancerType",
+              description: "Filter load balancers by their type"
+            },
+            loadBalancerArn: {
+              description: "Find by load balancer's ARN (Default - does not search by load balancer arn)",
+              type: "string"
+            },
+            loadBalancerTags: {
+              description: "Match load balancer tags (Default - does not match load balancers by tags)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/Tag"
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "loadBalancerType",
+            "region"
+          ]
+        },
+        SecurityGroupContextQuery: {
+          description: "Query input for looking up a security group",
+          type: "object",
+          properties: {
+            securityGroupId: {
+              description: "Security group id (Default - None)",
+              type: "string"
+            },
+            securityGroupName: {
+              description: "Security group name (Default - None)",
+              type: "string"
+            },
+            vpcId: {
+              description: "VPC ID (Default - None)",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region"
+          ]
+        },
+        KeyContextQuery: {
+          description: "Query input for looking up a KMS Key",
+          type: "object",
+          properties: {
+            aliasName: {
+              description: "Alias name used to search the Key",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "aliasName",
+            "region"
+          ]
+        },
+        CcApiContextQuery: {
+          description: "Query input for lookup up CloudFormation resources using CC API\n\nThe example below is required to successfully compile CDK (otherwise,\nthe CDK build will generate a synthetic example for the below, but it\ndoesn't have enough type information about the literal string union\nto generate a validly compiling example).",
+          type: "object",
+          properties: {
+            typeName: {
+              description: "The CloudFormation resource type.\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/supported-resources.html",
+              type: "string"
+            },
+            exactIdentifier: {
+              description: "Identifier of the resource to look up using `GetResource`.\n\nSpecifying exactIdentifier will return exactly one result, or throw an error\nunless `ignoreErrorOnMissingContext` is set. (Default - Either exactIdentifier or propertyMatch should be specified.)",
+              type: "string"
+            },
+            resourceModel: {
+              description: "The resource model to use to select the resources, using `ListResources`..\n\nThis is needed for sub-resources where the parent Arn is required.\n\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-list.html#resource-operations-list-containers (Default - no resource Model is provided)",
+              $ref: "#/definitions/Record%3Cstring%2Cunknown%3E"
+            },
+            propertyMatch: {
+              description: "Returns any resources matching these properties, using `ListResources`.\n\nBy default, specifying propertyMatch will successfully return 0 or more\nresults. To throw an error if the number of results is unexpected (and\nprevent the query results from being committed to context), specify\n`expectedMatchCount`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe resources that `propertyMatch` matches against will *only ever* be the\nproperties returned by the `ListResources` call. (Default - Either exactIdentifier or propertyMatch should be specified.)",
+              $ref: "#/definitions/Record%3Cstring%2Cunknown%3E"
+            },
+            propertiesToReturn: {
+              description: "This is a set of properties returned from CC API that we want to return from ContextQuery.\n\nIf any properties listed here are absent from the target resource, an error will be thrown.\n\nThe returned object will always include the key `Identifier` with the CC-API returned\nfield `Identifier`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe returned properties here are *currently* selected from the response\nobject that CloudControl API returns to the CDK CLI.\n\nHowever, if we find there is need to do so, we may decide to change this\nbehavior in the future: we might change it to perform an additional\n`GetResource` call for resources matched by `propertyMatch`.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            expectedMatchCount: {
+              description: "Expected count of results if `propertyMatch` is specified.\n\nIf the expected result count does not match the actual count,\nby default an error is produced and the result is not committed to cached\ncontext, and the user can correct the situation and try again without\nhaving to manually clear out the context key using `cdk context --remove`\n\nIf the value of * `ignoreErrorOnMissingContext` is `true`, the value of\n`expectedMatchCount` is `at-least-one | exactly-one` and the number\nof found resources is 0, `dummyValue` is returned and committed to context\ninstead. (Default 'any')",
+              enum: [
+                "any",
+                "at-least-one",
+                "at-most-one",
+                "exactly-one"
+              ],
+              type: "string"
+            },
+            dummyValue: {
+              description: "The value to return if the resource was not found and `ignoreErrorOnMissingContext` is true.\n\nIf supplied, `dummyValue` should be an array of objects.\n\n`dummyValue` does not have to have elements, and it may have objects with\ndifferent properties than the properties in `propertiesToReturn`, but it\nwill be easiest for downstream code if the `dummyValue` conforms to\nthe expected response shape. (Default - No dummy value available)"
+            },
+            ignoreErrorOnMissingContext: {
+              description: "Ignore an error and return the `dummyValue` instead if the resource was not found.\n\n- In case of an `exactIdentifier` lookup, return the `dummyValue` if the resource with\n  that identifier was not found.\n- In case of a `propertyMatch` lookup, return the `dummyValue` if `expectedMatchCount`\n  is `at-least-one | exactly-one` and the number of resources found was 0.\n\nif `ignoreErrorOnMissingContext` is set, `dummyValue` should be set and be an array.",
+              default: false,
+              type: "boolean"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "propertiesToReturn",
+            "region",
+            "typeName"
+          ]
+        },
+        "Record": {
+          type: "object"
+        },
+        PluginContextQuery: {
+          description: "Query input for plugins\n\nThis alternate branch is necessary because it needs to be able to escape all type checking\nwe do on on the cloud assembly -- we cannot know the properties that will be used a priori.",
+          type: "object",
+          additionalProperties: {},
+          properties: {
+            pluginName: {
+              description: "The name of the plugin",
+              type: "string"
+            }
+          },
+          required: [
+            "pluginName"
+          ]
+        },
+        RuntimeInfo: {
+          description: "Information about the application's runtime components.",
+          type: "object",
+          properties: {
+            libraries: {
+              description: "The list of libraries loaded in the application, associated with their versions.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "libraries"
+          ]
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json
+var require_integ_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/IntegManifest",
+      definitions: {
+        IntegManifest: {
+          description: "Definitions for the integration testing manifest",
+          type: "object",
+          properties: {
+            version: {
+              description: "Version of the manifest",
+              type: "string"
+            },
+            enableLookups: {
+              description: "Enable lookups for this test. If lookups are enabled\nthen `stackUpdateWorkflow` must be set to false.\nLookups should only be enabled when you are explicitly testing\nlookups.",
+              default: false,
+              type: "boolean"
+            },
+            synthContext: {
+              description: "Additional context to use when performing\na synth. Any context provided here will override\nany default context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            testCases: {
+              description: "test cases",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/TestCase"
+              }
+            }
+          },
+          required: [
+            "testCases",
+            "version"
+          ]
+        },
+        TestCase: {
+          description: "Represents an integration test case",
+          type: "object",
+          properties: {
+            stacks: {
+              description: "Stacks that should be tested as part of this test case\nThe stackNames will be passed as args to the cdk commands\nso dependent stacks will be automatically deployed unless\n`exclusively` is passed",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            assertionStack: {
+              description: "The node id of the stack that contains assertions.\nThis is the value that can be used to deploy the stack with the CDK CLI (Default - no assertion stack)",
+              type: "string"
+            },
+            assertionStackName: {
+              description: "The name of the stack that contains assertions (Default - no assertion stack)",
+              type: "string"
+            },
+            stackUpdateWorkflow: {
+              description: "Run update workflow on this test case\nThis should only be set to false to test scenarios\nthat are not possible to test as part of the update workflow (Default true)",
+              type: "boolean"
+            },
+            cdkCommandOptions: {
+              description: "Additional options to use for each CDK command (Default - runner default options)",
+              $ref: "#/definitions/CdkCommands"
+            },
+            hooks: {
+              description: "Additional commands to run at predefined points in the test workflow\n\ne.g. { postDeploy: ['yarn', 'test'] } (Default - no hooks)",
+              $ref: "#/definitions/Hooks"
+            },
+            allowDeleteFailures: {
+              description: "Whether to allow resources that fail to delete during a stack update.\n\nWhen false, the test will fail if CloudFormation skips deleting a resource\nduring a stack update. When true, only a warning is printed.",
+              default: false,
+              type: "boolean"
+            },
+            diffAssets: {
+              description: "Whether or not to include asset hashes in the diff\nAsset hashes can introduces a lot of unneccessary noise into tests,\nbut there are some cases where asset hashes _should_ be included. For example\nany tests involving custom resources or bundling",
+              default: false,
+              type: "boolean"
+            },
+            allowDestroy: {
+              description: "List of CloudFormation resource types in this stack that can\nbe destroyed as part of an update without failing the test.\n\nThis list should only include resources that for this specific\nintegration test we are sure will not cause errors or an outage if\ndestroyed. For example, maybe we know that a new resource will be created\nfirst before the old resource is destroyed which prevents any outage.\n\ne.g. ['AWS::IAM::Role'] (Default - do not allow destruction of any resources on update)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            regions: {
+              description: "Limit deployment to these regions (Default - can run in any region)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "stacks"
+          ]
+        },
+        CdkCommands: {
+          description: "Options for specific cdk commands that are run\nas part of the integration test workflow",
+          type: "object",
+          properties: {
+            deploy: {
+              description: "Options to for the cdk deploy command (Default - default deploy options)",
+              $ref: "#/definitions/DeployCommand"
+            },
+            destroy: {
+              description: "Options to for the cdk destroy command (Default - default destroy options)",
+              $ref: "#/definitions/DestroyCommand"
+            }
+          }
+        },
+        DeployCommand: {
+          description: "Represents a cdk deploy command",
+          type: "object",
+          properties: {
+            args: {
+              description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)",
+              $ref: "#/definitions/DeployOptions"
+            },
+            enabled: {
+              description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)",
+              type: "boolean"
+            },
+            expectError: {
+              description: "If the runner should expect this command to fail",
+              default: false,
+              type: "boolean"
+            },
+            expectedMessage: {
+              description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)",
+              type: "string"
+            }
+          }
+        },
+        DeployOptions: {
+          description: "Options to use with cdk deploy",
+          type: "object",
+          properties: {
+            exclusively: {
+              description: "Only perform action on the given stack",
+              default: false,
+              type: "boolean"
+            },
+            toolkitStackName: {
+              description: "Name of the toolkit stack to use/deploy (Default CDKToolkit)",
+              type: "string"
+            },
+            reuseAssets: {
+              description: "Reuse the assets with the given asset IDs (Default - do not reuse assets)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            changeSetName: {
+              description: "Optional name to use for the CloudFormation change set.\nIf not provided, a name will be generated automatically. (Default - auto generate a name)",
+              type: "string"
+            },
+            force: {
+              description: "Always deploy, even if templates are identical.",
+              default: false,
+              type: "boolean"
+            },
+            rollback: {
+              description: "Rollback failed deployments (Default true)",
+              type: "boolean"
+            },
+            notificationArns: {
+              description: "ARNs of SNS topics that CloudFormation will notify with stack related events (Default - no notifications)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            requireApproval: {
+              description: "What kind of security changes require approval (Default RequireApproval.NEVER)",
+              enum: [
+                "any-change",
+                "broadening",
+                "never"
+              ],
+              type: "string"
+            },
+            execute: {
+              description: "Whether to execute the ChangeSet\nNot providing `execute` parameter will result in execution of ChangeSet (Default true)",
+              type: "boolean"
+            },
+            parameters: {
+              description: "Additional parameters for CloudFormation at deploy time (Default [object Object])",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            usePreviousParameters: {
+              description: "Use previous values for unspecified parameters\n\nIf not set, all parameters must be specified for every deployment. (Default true)",
+              type: "boolean"
+            },
+            outputsFile: {
+              description: "Path to file where stack outputs will be written after a successful deploy as JSON (Default - Outputs are not written to any file)",
+              type: "string"
+            },
+            ci: {
+              description: "Whether we are on a CI system",
+              default: false,
+              type: "boolean"
+            },
+            concurrency: {
+              description: "Deploy multiple stacks in parallel (Default 1)",
+              type: "number"
+            },
+            stacks: {
+              description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            all: {
+              description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)",
+              type: "boolean"
+            },
+            app: {
+              description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)',
+              type: "string"
+            },
+            roleArn: {
+              description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)",
+              type: "string"
+            },
+            context: {
+              description: "Additional context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            trace: {
+              description: "Print trace for stack warnings",
+              default: false,
+              type: "boolean"
+            },
+            strict: {
+              description: "Do not construct stacks with warnings",
+              default: false,
+              type: "boolean"
+            },
+            lookups: {
+              description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)",
+              type: "boolean"
+            },
+            ignoreErrors: {
+              description: "Ignores synthesis errors, which will likely produce an invalid output",
+              default: false,
+              type: "boolean"
+            },
+            json: {
+              description: "Use JSON output instead of YAML when templates are printed\nto STDOUT",
+              default: false,
+              type: "boolean"
+            },
+            verbose: {
+              description: "show debug logs",
+              default: false,
+              type: "boolean"
+            },
+            debug: {
+              description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens",
+              default: false,
+              type: "boolean"
+            },
+            profile: {
+              description: "Use the indicated AWS profile as the default environment (Default - no profile is used)",
+              type: "string"
+            },
+            proxy: {
+              description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)",
+              type: "string"
+            },
+            caBundlePath: {
+              description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)",
+              type: "string"
+            },
+            ec2Creds: {
+              description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)",
+              type: "boolean"
+            },
+            versionReporting: {
+              description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)',
+              type: "boolean"
+            },
+            pathMetadata: {
+              description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)',
+              type: "boolean"
+            },
+            assetMetadata: {
+              description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)',
+              type: "boolean"
+            },
+            staging: {
+              description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI",
+              default: false,
+              type: "boolean"
+            },
+            output: {
+              description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)",
+              type: "string"
+            },
+            notices: {
+              description: "Show relevant notices (Default true)",
+              type: "boolean"
+            },
+            color: {
+              description: "Show colors and other style from console output (Default true)",
+              type: "boolean"
+            }
+          }
+        },
+        DestroyCommand: {
+          description: "Represents a cdk destroy command",
+          type: "object",
+          properties: {
+            args: {
+              description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)",
+              $ref: "#/definitions/DestroyOptions"
+            },
+            enabled: {
+              description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)",
+              type: "boolean"
+            },
+            expectError: {
+              description: "If the runner should expect this command to fail",
+              default: false,
+              type: "boolean"
+            },
+            expectedMessage: {
+              description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)",
+              type: "string"
+            }
+          }
+        },
+        DestroyOptions: {
+          description: "Options to use with cdk destroy",
+          type: "object",
+          properties: {
+            force: {
+              description: "Do not ask for permission before destroying stacks",
+              default: false,
+              type: "boolean"
+            },
+            exclusively: {
+              description: "Only destroy the given stack",
+              default: false,
+              type: "boolean"
+            },
+            stacks: {
+              description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            all: {
+              description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)",
+              type: "boolean"
+            },
+            app: {
+              description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)',
+              type: "string"
+            },
+            roleArn: {
+              description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)",
+              type: "string"
+            },
+            context: {
+              description: "Additional context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            trace: {
+              description: "Print trace for stack warnings",
+              default: false,
+              type: "boolean"
+            },
+            strict: {
+              description: "Do not construct stacks with warnings",
+              default: false,
+              type: "boolean"
+            },
+            lookups: {
+              description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)",
+              type: "boolean"
+            },
+            ignoreErrors: {
+              description: "Ignores synthesis errors, which will likely produce an invalid output",
+              default: false,
+              type: "boolean"
+            },
+            json: {
+              description: "Use JSON output instead of YAML when templates are printed\nto STDOUT",
+              default: false,
+              type: "boolean"
+            },
+            verbose: {
+              description: "show debug logs",
+              default: false,
+              type: "boolean"
+            },
+            debug: {
+              description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens",
+              default: false,
+              type: "boolean"
+            },
+            profile: {
+              description: "Use the indicated AWS profile as the default environment (Default - no profile is used)",
+              type: "string"
+            },
+            proxy: {
+              description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)",
+              type: "string"
+            },
+            caBundlePath: {
+              description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)",
+              type: "string"
+            },
+            ec2Creds: {
+              description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)",
+              type: "boolean"
+            },
+            versionReporting: {
+              description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)',
+              type: "boolean"
+            },
+            pathMetadata: {
+              description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)',
+              type: "boolean"
+            },
+            assetMetadata: {
+              description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)',
+              type: "boolean"
+            },
+            staging: {
+              description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI",
+              default: false,
+              type: "boolean"
+            },
+            output: {
+              description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)",
+              type: "string"
+            },
+            notices: {
+              description: "Show relevant notices (Default true)",
+              type: "boolean"
+            },
+            color: {
+              description: "Show colors and other style from console output (Default true)",
+              type: "boolean"
+            }
+          }
+        },
+        Hooks: {
+          description: "Commands to run at predefined points during the\nintegration test workflow",
+          type: "object",
+          properties: {
+            preDeploy: {
+              description: "Commands to run prior to deploying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            postDeploy: {
+              description: "Commands to run prior after deploying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            preDestroy: {
+              description: "Commands to run prior to destroying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            postDestroy: {
+              description: "Commands to run after destroying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          }
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json
+var require_validation_report_schema2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/PolicyValidationReportJson",
+      definitions: {
+        PolicyValidationReportJson: {
+          description: "The top-level structure of the policy validation report file.",
+          type: "object",
+          properties: {
+            version: {
+              description: "Protocol version",
+              type: "string"
+            },
+            title: {
+              description: "Report title, if present.",
+              type: "string"
+            },
+            pluginReports: {
+              description: "Reports from all validation plugins that ran during synthesis.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/PluginReportJson"
+              }
+            }
+          },
+          required: ["version", "pluginReports"]
+        },
+        PluginReportJson: {
+          description: "A report from a single validation plugin.",
+          type: "object",
+          properties: {
+            pluginName: {
+              description: "The name of the plugin that produced this report.",
+              type: "string"
+            },
+            pluginVersion: {
+              description: "Version of the plugin that produced this report.",
+              type: "string"
+            },
+            conclusion: {
+              description: "Whether the plugin's validation passed or failed.",
+              $ref: "#/definitions/PolicyValidationReportConclusion"
+            },
+            metadata: {
+              description: "Additional plugin-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violations: {
+              description: "Violations found by this plugin.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/PolicyViolationJson"
+              }
+            },
+            suppressedViolations: {
+              description: "Violations that were suppressed via acknowledgement.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/SuppressedViolationJson"
+              }
+            }
+          },
+          required: ["pluginName", "conclusion", "violations"]
+        },
+        PolicyValidationReportConclusion: {
+          description: "The final conclusion of a validation report.",
+          type: "string",
+          enum: ["success", "failure"]
+        },
+        PolicyViolationJson: {
+          description: "A single policy violation found by a validation plugin.",
+          type: "object",
+          properties: {
+            ruleName: {
+              description: "The name of the rule that was violated.",
+              type: "string"
+            },
+            description: {
+              description: "A description of the violation.",
+              type: "string"
+            },
+            suggestedFix: {
+              description: "How to fix the violation.",
+              type: "string"
+            },
+            severity: {
+              description: "The severity of the violation.",
+              $ref: "#/definitions/PolicyViolationSeverity"
+            },
+            customSeverity: {
+              description: "If the plugin wants to report using a non-standard severity, put it here.",
+              type: "string"
+            },
+            ruleMetadata: {
+              description: "Additional rule-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violatingConstructs: {
+              description: "Constructs that violated the rule.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ViolatingConstructJson"
+              }
+            }
+          },
+          required: ["ruleName", "description", "severity", "violatingConstructs"]
+        },
+        PolicyViolationSeverity: {
+          description: "The severity of a policy violation.",
+          type: "string",
+          enum: ["fatal", "error", "warning", "info", "custom"]
+        },
+        SuppressedViolationJson: {
+          description: "A violation that was acknowledged/suppressed and excluded from the active violation set.",
+          type: "object",
+          properties: {
+            ruleName: {
+              description: "The name of the rule that was violated.",
+              type: "string"
+            },
+            description: {
+              description: "A description of the violation.",
+              type: "string"
+            },
+            suggestedFix: {
+              description: "How to fix the violation.",
+              type: "string"
+            },
+            severity: {
+              description: "The severity of the violation.",
+              $ref: "#/definitions/PolicyViolationSeverity"
+            },
+            customSeverity: {
+              description: "If the plugin wants to report using a non-standard severity, put it here.",
+              type: "string"
+            },
+            ruleMetadata: {
+              description: "Additional rule-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violatingConstructs: {
+              description: "Constructs that violated the rule.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ViolatingConstructJson"
+              }
+            },
+            acknowledgedId: {
+              description: "The acknowledgement ID that caused this violation to be suppressed.",
+              type: "string"
+            },
+            reason: {
+              description: "The reason given for the acknowledgement, if provided.",
+              type: "string"
+            },
+            acknowledgedAt: {
+              description: "The construct path where the acknowledgement was declared.",
+              type: "string"
+            },
+            acknowledgedStackTrace: {
+              description: "Stack trace showing where the acknowledgement was declared.",
+              type: "string"
+            }
+          },
+          required: ["ruleName", "description", "severity", "violatingConstructs", "acknowledgedId"]
+        },
+        ViolatingConstructJson: {
+          description: "A construct that violated a policy rule.",
+          type: "object",
+          properties: {
+            constructPath: {
+              description: "The construct path as defined in the application.",
+              type: "string"
+            },
+            constructFqn: {
+              description: "The fully qualified name of the construct class (includes the library name).",
+              type: "string"
+            },
+            libraryVersion: {
+              description: "The version of the library that contains this construct.",
+              type: "string"
+            },
+            cloudFormationResource: {
+              description: "If this construct violation regards a CloudFormation resource, a reference to the resource details.",
+              $ref: "#/definitions/CloudFormationResourceJson"
+            },
+            stackTraces: {
+              description: "Stack traces associated with this violation.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: ["constructPath"]
+        },
+        CloudFormationResourceJson: {
+          description: "CloudFormation resource details for a violating construct.",
+          type: "object",
+          properties: {
+            templatePath: {
+              description: "The path to the CloudFormation template containing this resource.",
+              type: "string"
+            },
+            logicalId: {
+              description: "The logical ID of the resource in the CloudFormation template.",
+              type: "string"
+            },
+            propertyPaths: {
+              description: "Properties within the construct where the violation was detected.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: ["templatePath", "logicalId"]
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json
+var require_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json"(exports2, module2) {
+    module2.exports = {
+      schemaHash: "095859ad1d3d89d3bc4f9cbe9393d219798972dbd2389287bcc66b49f323cef1",
+      $comment: "Do not hold back the version on additions: jsonschema validation of the manifest by the consumer will trigger errors on unexpected fields.",
+      revision: 54
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js
+var require_manifest = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    });
+    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
+      var ownKeys2 = function(o) {
+        ownKeys2 = Object.getOwnPropertyNames || function(o2) {
+          var ar = [];
+          for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
+          return ar;
+        };
+        return ownKeys2(o);
+      };
+      return function(mod) {
+        if (mod && mod.__esModule) return mod;
+        var result = {};
+        if (mod != null) {
+          for (var k = ownKeys2(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding2(result, mod, k[i]);
+        }
+        __setModuleDefault2(result, mod);
+        return result;
+      };
+    })();
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.Manifest = exports2.VALIDATION_REPORT_FILE = exports2.VERSION_MISMATCH = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var fs19 = __importStar2(require("fs"));
+    var jsonschema = __importStar2(require_lib());
+    var semver = __importStar2(require_semver2());
+    var assembly = __importStar2(require_cloud_assembly());
+    exports2.VERSION_MISMATCH = "Cloud assembly schema version mismatch";
+    exports2.VALIDATION_REPORT_FILE = "validation-report.json";
+    var CLI_VERSION = require_cli_version();
+    var ASSETS_SCHEMA = require_assets_schema();
+    var ASSEMBLY_SCHEMA = require_cloud_assembly_schema();
+    var INTEG_SCHEMA = require_integ_schema();
+    var VALIDATION_REPORT_SCHEMA = require_validation_report_schema2();
+    var SCHEMA_VERSION = require_version();
+    var Manifest2 = class _Manifest {
+      static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/cloud-assembly-schema.Manifest", version: "54.24.0" };
+      /**
+       * Validates and saves the cloud assembly manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveAssemblyManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, ASSEMBLY_SCHEMA);
+      }
+      /**
+       * Load and validates the cloud assembly manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadAssemblyManifest(filePath, options) {
+        return _Manifest.loadManifest(filePath, ASSEMBLY_SCHEMA, _Manifest.patchStackTagsOnRead, options);
+      }
+      /**
+       * Validates and saves the asset manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveAssetManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, ASSETS_SCHEMA);
+      }
+      /**
+       * Load and validates the asset manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadAssetManifest(filePath) {
+        return _Manifest.loadManifest(filePath, ASSETS_SCHEMA);
+      }
+      /**
+       * Validates and saves the integ manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveIntegManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, INTEG_SCHEMA);
+      }
+      /**
+       * Load and validates the integ manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadIntegManifest(filePath) {
+        const manifest = this.loadManifest(filePath, INTEG_SCHEMA);
+        return {
+          ...manifest,
+          testCases: manifest.testCases ?? []
+        };
+      }
+      /**
+       * Load and validate the policy validation report from file.
+       *
+       * @param filePath - path to the validation report file.
+       */
+      static loadValidationReport(filePath) {
+        return _Manifest.loadManifest(filePath, VALIDATION_REPORT_SCHEMA);
+      }
+      /**
+       * Fetch the current schema version number.
+       */
+      static version() {
+        return `${SCHEMA_VERSION.revision}.0.0`;
+      }
+      /**
+       * Return the CLI version that supports this Cloud Assembly Schema version
+       */
+      static cliVersion() {
+        const version3 = CLI_VERSION.version;
+        return version3 ? version3 : void 0;
+      }
+      /**
+       * Deprecated
+       * @deprecated use `saveAssemblyManifest()`
+       */
+      static save(manifest, filePath) {
+        return this.saveAssemblyManifest(manifest, filePath);
+      }
+      /**
+       * Deprecated
+       * @deprecated use `loadAssemblyManifest()`
+       */
+      static load(filePath) {
+        return this.loadAssemblyManifest(filePath);
+      }
+      static validate(manifest, schema, options) {
+        function parseVersion(version3) {
+          const ver = semver.valid(version3);
+          if (!ver) {
+            throw new Error(`Invalid semver string: "${version3}"`);
+          }
+          return ver;
+        }
+        const maxSupported = semver.major(parseVersion(_Manifest.version()));
+        const actual = parseVersion(manifest.version);
+        if (maxSupported < semver.major(actual) && !options?.skipVersionCheck) {
+          const cliVersion = manifest.minimumCliVersion;
+          let cliWarning = "";
+          if (cliVersion) {
+            cliWarning = `. You need at least CLI version ${cliVersion} to read this manifest.`;
+          }
+          throw new Error(`${exports2.VERSION_MISMATCH}: Maximum schema version supported is ${maxSupported}.x.x, but found ${actual}${cliWarning}`);
+        }
+        if (options?.validateSchema ?? process.env.TESTING_CDK === "1") {
+          const validator = new jsonschema.Validator();
+          const result = validator.validate(manifest, schema, {
+            nestedErrors: true,
+            allowUnknownAttributes: false,
+            preValidateProperty: _Manifest.validateAssumeRoleAdditionalOptions
+          });
+          let errors = result.errors;
+          if (options?.skipEnumCheck) {
+            errors = stripEnumErrors(errors);
+          }
+          if (errors.length > 0) {
+            throw new Error(`Invalid assembly manifest:
+${errors.map((e) => e.stack).join("\n")}`);
+          }
+        }
+      }
+      static saveManifest(manifest, filePath, schema, preprocess) {
+        let withVersion = {
+          ...manifest,
+          version: _Manifest.version(),
+          minimumCliVersion: _Manifest.cliVersion()
+        };
+        _Manifest.validate(withVersion, schema);
+        if (preprocess) {
+          withVersion = preprocess(withVersion);
+        }
+        fs19.writeFileSync(filePath, JSON.stringify(withVersion, void 0, 2));
+      }
+      static loadManifest(filePath, schema, preprocess, options) {
+        const contents = fs19.readFileSync(filePath, { encoding: "utf-8" });
+        let obj;
+        try {
+          obj = JSON.parse(contents);
+        } catch (e) {
+          throw new Error(`${e.message}, while parsing ${JSON.stringify(contents)}`);
+        }
+        if (preprocess) {
+          obj = preprocess(obj);
+        }
+        _Manifest.validate(obj, schema, options);
+        return obj;
+      }
+      /**
+       * Fix the casing of stack tags entries
+       *
+       * At the very beginning of the CDK we used to emit stack tags as an object with
+       * `{ Key, Value }` keys; this had the "advantage" that we could stick those
+       * tags directly into the `CreateChangeSet` call.
+       *
+       * Then we later on used jsii on the assembly schema and we were forced to type
+       * the in-memory objects as `{ key, value }` with lowercase letters. Now the
+       * objects have a different on-disk and in-memory format, and we need to convert
+       * between them.
+       *
+       * For backwards compatibility reasons, we used to convert lowercase in-memory
+       * to uppercase on-disk variant until very recently. This is now unnecessary,
+       * since no officially supported CDK tools read the stack tags from the
+       * metadata; the CLI and toolkit library read stack tags from the artifact
+       * properties.
+       *
+       * So although we don't emit uppercase stack tag objects anymore, we might still read
+       * manifests that have them. Because the manifest we read must pass JSON Schema
+       * validation (which expects lowercase tag objects), we have to fix the casing
+       * of these objects after reading from disk and before validating.
+       *
+       * That's what this function does.
+       */
+      static patchStackTagsOnRead(manifest) {
+        const artifacts = Object.values(manifest.artifacts ?? {}).filter((artifact) => artifact.type === assembly.ArtifactType.AWS_CLOUDFORMATION_STACK);
+        for (const artifact of artifacts) {
+          const tagMetadata = Object.values(artifact.metadata ?? {}).flatMap((x) => x).filter((entry) => entry.type === assembly.ArtifactMetadataEntryType.STACK_TAGS);
+          for (const entry of tagMetadata) {
+            const tags = entry.data;
+            for (const tag of tags ?? []) {
+              const t = tag;
+              if ("Key" in t) {
+                t.key = t.Key;
+                delete t.Key;
+              }
+              if ("Value" in t) {
+                t.value = t.Value;
+                delete t.Value;
+              }
+            }
+          }
+        }
+        return manifest;
+      }
+      /**
+       * Validates that `assumeRoleAdditionalOptions` doesn't contain nor `ExternalId` neither `RoleArn`, as they
+       * should have dedicated properties preceding this (e.g `assumeRoleArn` and `assumeRoleExternalId`).
+       */
+      static validateAssumeRoleAdditionalOptions(instance, key, _schema, _options, _ctx) {
+        if (key !== "assumeRoleAdditionalOptions") {
+          return;
+        }
+        const assumeRoleOptions = instance[key];
+        if (assumeRoleOptions?.RoleArn) {
+          throw new Error(`RoleArn is not allowed inside '${key}'`);
+        }
+        if (assumeRoleOptions?.ExternalId) {
+          throw new Error(`ExternalId is not allowed inside '${key}'`);
+        }
+      }
+    };
+    exports2.Manifest = Manifest2;
+    function stripEnumErrors(errors) {
+      return errors.filter((e) => typeof e.schema === "string" || !("enum" in e.schema));
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js
+var require_schema3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js
+var require_common = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.RequireApproval = void 0;
+    var RequireApproval;
+    (function(RequireApproval2) {
+      RequireApproval2["NEVER"] = "never";
+      RequireApproval2["ANYCHANGE"] = "any-change";
+      RequireApproval2["BROADENING"] = "broadening";
+    })(RequireApproval || (exports2.RequireApproval = RequireApproval = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js
+var require_deploy = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js
+var require_destroy = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js
+var require_commands = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_common(), exports2);
+    __exportStar2(require_deploy(), exports2);
+    __exportStar2(require_destroy(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js
+var require_test_case = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js
+var require_integ_tests = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema3(), exports2);
+    __exportStar2(require_commands(), exports2);
+    __exportStar2(require_test_case(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js
+var require_lib2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_cloud_assembly(), exports2);
+    __exportStar2(require_assets(), exports2);
+    __exportStar2(require_manifest(), exports2);
+    __exportStar2(require_integ_tests(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js
+var require_metadata = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.SynthesisMessageLevel = exports2.PATH_METADATA_KEY = void 0;
+    exports2.PATH_METADATA_KEY = "aws:cdk:path";
+    var SynthesisMessageLevel;
+    (function(SynthesisMessageLevel2) {
+      SynthesisMessageLevel2["INFO"] = "info";
+      SynthesisMessageLevel2["WARNING"] = "warning";
+      SynthesisMessageLevel2["ERROR"] = "error";
+    })(SynthesisMessageLevel || (exports2.SynthesisMessageLevel = SynthesisMessageLevel = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js
+var require_error = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js"(exports2) {
+    "use strict";
+    var __classPrivateFieldGet2 = exports2 && exports2.__classPrivateFieldGet || function(receiver, state, kind, f) {
+      if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+      if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+      return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+    };
+    var __classPrivateFieldSet2 = exports2 && exports2.__classPrivateFieldSet || function(receiver, state, value, kind, f) {
+      if (kind === "m") throw new TypeError("Private method is not writable");
+      if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+      if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+      return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
+    };
+    var _CloudAssemblyError_time;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudAssemblyError = void 0;
+    var ASSEMBLY_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssemblyError");
+    var CloudAssemblyError = class _CloudAssemblyError extends Error {
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return __classPrivateFieldGet2(this, _CloudAssemblyError_time, "f");
+      }
+      get type() {
+        return "assembly";
+      }
+      constructor(msg) {
+        super(msg);
+        _CloudAssemblyError_time.set(this, void 0);
+        Object.setPrototypeOf(this, _CloudAssemblyError.prototype);
+        Object.defineProperty(this, ASSEMBLY_ERROR_SYMBOL, { value: true });
+        this.name = new.target.name;
+        __classPrivateFieldSet2(this, _CloudAssemblyError_time, (/* @__PURE__ */ new Date()).toISOString(), "f");
+      }
+    };
+    exports2.CloudAssemblyError = CloudAssemblyError;
+    _CloudAssemblyError_time = /* @__PURE__ */ new WeakMap();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js
+var require_cloud_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var metadata_1 = require_metadata();
+    var error_1 = require_error();
+    var CloudArtifact = class _CloudArtifact {
+      /**
+       * Read the metadata for the given artifact
+       *
+       * HISTORICAL OR PRIVATE USE ONLY
+       *
+       * This is publicly exposed as a static function for downstream libraries that
+       * don't use the `CloudAssembly`/`CloudArtifact` API, yet still need to read
+       * an artifact's metadata.
+       *
+       * 99% of consumers should just access `artifact.metadata`.
+       */
+      static readMetadata(assemblyDirectory, x) {
+        const ret = {};
+        if (x.additionalMetadataFile) {
+          Object.assign(ret, JSON.parse(fs19.readFileSync(path23.join(assemblyDirectory, x.additionalMetadataFile), "utf-8")));
+        }
+        for (const [p, entries] of Object.entries(x.metadata ?? {})) {
+          if (ret[p]) {
+            ret[p].push(...entries);
+          } else {
+            ret[p] = entries;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest.
+       *
+       * @param assembly - The cloud assembly from which to load the artifact
+       * @param id - The artifact ID
+       * @param artifact - The artifact manifest
+       * @returns the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module.
+       */
+      static fromManifest(assembly, id, artifact) {
+        void assembly, void id, void artifact;
+        throw new error_1.CloudAssemblyError("Implementation not overridden yet");
+      }
+      constructor(assembly, id, manifest) {
+        this.assembly = assembly;
+        this.id = id;
+        this.manifest = manifest;
+        this.messages = this.renderMessages();
+        this._dependencyIDs = manifest.dependencies || [];
+      }
+      /**
+       * Returns the metadata associated with this Cloud Artifact
+       */
+      get metadata() {
+        return _CloudArtifact.readMetadata(this.assembly.directory, this.manifest);
+      }
+      /**
+       * Returns all the artifacts that this artifact depends on.
+       */
+      get dependencies() {
+        if (this._deps) {
+          return this._deps;
+        }
+        this._deps = this._dependencyIDs.map((id) => {
+          const dep = this.assembly.tryGetArtifact(id);
+          if (!dep) {
+            throw new error_1.CloudAssemblyError(`Artifact ${this.id} depends on non-existing artifact ${id}`);
+          }
+          return dep;
+        });
+        return this._deps;
+      }
+      /**
+       * @returns all the metadata entries of a specific type in this artifact.
+       */
+      findMetadataByType(type) {
+        const metadata = this.metadata;
+        const result = new Array();
+        for (const p of Object.keys(metadata || {})) {
+          for (const entry of (metadata || {})[p]) {
+            if (entry.type === type) {
+              result.push({ path: p, ...entry });
+            }
+          }
+        }
+        return result;
+      }
+      renderMessages() {
+        const messages = new Array();
+        for (const [id, metadata] of Object.entries(this.metadata || {})) {
+          for (const entry of metadata) {
+            let level;
+            switch (entry.type) {
+              case cxschema2.ArtifactMetadataEntryType.WARN:
+                level = metadata_1.SynthesisMessageLevel.WARNING;
+                break;
+              case cxschema2.ArtifactMetadataEntryType.ERROR:
+                level = metadata_1.SynthesisMessageLevel.ERROR;
+                break;
+              case cxschema2.ArtifactMetadataEntryType.INFO:
+                level = metadata_1.SynthesisMessageLevel.INFO;
+                break;
+              default:
+                continue;
+            }
+            messages.push({ level, entry, id });
+          }
+        }
+        return messages;
+      }
+      /**
+       * An identifier that shows where this artifact is located in the tree
+       * of nested assemblies, based on their manifests. Defaults to the normal
+       * id. Should only be used in user interfaces.
+       */
+      get hierarchicalId() {
+        return this.manifest.displayName ?? this.id;
+      }
+    };
+    exports2.CloudArtifact = CloudArtifact;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js
+var require_asset_manifest_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AssetManifestArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var ASSET_MANIFEST_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.AssetManifestArtifact");
+    var AssetManifestArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `AssetManifestArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `AssetManifestArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isAssetManifestArtifact(art) {
+        return art && typeof art === "object" && art[ASSET_MANIFEST_ARTIFACT_SYM];
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.file) {
+          throw new error_1.CloudAssemblyError('Invalid AssetManifestArtifact. Missing "file" property');
+        }
+        this.file = path23.resolve(this.assembly.directory, properties.file);
+        this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion;
+        this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter;
+      }
+      /**
+       * The Asset Manifest contents
+       */
+      get contents() {
+        if (this._contents !== void 0) {
+          return this._contents;
+        }
+        const contents = this._contents = JSON.parse(fs19.readFileSync(this.file, "utf-8"));
+        return contents;
+      }
+    };
+    exports2.AssetManifestArtifact = AssetManifestArtifact;
+    Object.defineProperty(AssetManifestArtifact.prototype, ASSET_MANIFEST_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js
+var require_environment = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EnvironmentUtils = exports2.UNKNOWN_REGION = exports2.UNKNOWN_ACCOUNT = void 0;
+    var error_1 = require_error();
+    var AWS_ENV_REGEX = /aws\:\/\/([a-z0-9A-Z\-\@\.\_]+)\/([a-z\-0-9]+)/;
+    exports2.UNKNOWN_ACCOUNT = "unknown-account";
+    exports2.UNKNOWN_REGION = "unknown-region";
+    var EnvironmentUtils2 = class {
+      static parse(environment) {
+        const env2 = AWS_ENV_REGEX.exec(environment);
+        if (!env2) {
+          throw new error_1.CloudAssemblyError(`Unable to parse environment specification "${environment}". Expected format: aws://account/region`);
+        }
+        const [, account, region] = env2;
+        if (!account || !region) {
+          throw new error_1.CloudAssemblyError(`Invalid environment specification: ${environment}`);
+        }
+        return { account, region, name: environment };
+      }
+      /**
+       * Build an environment object from an account and region
+       */
+      static make(account, region) {
+        return { account, region, name: this.format(account, region) };
+      }
+      /**
+       * Format an environment string from an account and region
+       */
+      static format(account, region) {
+        return `aws://${account}/${region}`;
+      }
+    };
+    exports2.EnvironmentUtils = EnvironmentUtils2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js
+var require_cloudformation_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudFormationStackArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var cloud_artifact_1 = require_cloud_artifact();
+    var environment_1 = require_environment();
+    var error_1 = require_error();
+    var CLOUDFORMATION_STACK_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudFormationStackArtifact");
+    var CloudFormationStackArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `CloudFormationStackArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `CloudFormationStackArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isCloudFormationStackArtifact(art) {
+        return art && typeof art === "object" && CLOUDFORMATION_STACK_ARTIFACT_SYM in art;
+      }
+      constructor(assembly, artifactId, artifact) {
+        super(assembly, artifactId, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.templateFile) {
+          throw new error_1.CloudAssemblyError('Invalid CloudFormation stack artifact. Missing "templateFile" property in cloud assembly manifest');
+        }
+        if (!artifact.environment) {
+          throw new error_1.CloudAssemblyError("Invalid CloudFormation stack artifact. Missing environment");
+        }
+        this.environment = environment_1.EnvironmentUtils.parse(artifact.environment);
+        this.templateFile = properties.templateFile;
+        this.parameters = properties.parameters ?? {};
+        this.tags = properties.tags ?? {};
+        this.notificationArns = properties.notificationArns;
+        this.assumeRoleArn = properties.assumeRoleArn;
+        this.assumeRoleExternalId = properties.assumeRoleExternalId;
+        this.assumeRoleAdditionalOptions = properties.assumeRoleAdditionalOptions;
+        this.cloudFormationExecutionRoleArn = properties.cloudFormationExecutionRoleArn;
+        this.stackTemplateAssetObjectUrl = properties.stackTemplateAssetObjectUrl;
+        this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion;
+        this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter;
+        this.terminationProtection = properties.terminationProtection;
+        this.validateOnSynth = properties.validateOnSynth;
+        this.lookupRole = properties.lookupRole;
+        this.stackName = properties.stackName || artifactId;
+        this.assets = this.findMetadataByType(cxschema2.ArtifactMetadataEntryType.ASSET).map((e) => e.data);
+        this.displayName = this.stackName === artifactId ? this.hierarchicalId : `${this.hierarchicalId} (${this.stackName})`;
+        this.name = this.stackName;
+        this.originalName = this.stackName;
+      }
+      /**
+       * Full path to the template file
+       */
+      get templateFullPath() {
+        return path23.join(this.assembly.directory, this.templateFile);
+      }
+      /**
+       * The CloudFormation template for this stack.
+       */
+      get template() {
+        if (this._template === void 0) {
+          this._template = JSON.parse(fs19.readFileSync(this.templateFullPath, "utf-8"));
+        }
+        return this._template;
+      }
+    };
+    exports2.CloudFormationStackArtifact = CloudFormationStackArtifact;
+    Object.defineProperty(CloudFormationStackArtifact.prototype, CLOUDFORMATION_STACK_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js
+var require_nested_cloud_assembly_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.NestedCloudAssemblyArtifact = void 0;
+    var path23 = require("path");
+    var cloud_artifact_1 = require_cloud_artifact();
+    var NESTED_CLOUD_ASSEMBLY_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.NestedCloudAssemblyArtifact");
+    var NestedCloudAssemblyArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `NestedCloudAssemblyArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `NestedCloudAssemblyArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isNestedCloudAssemblyArtifact(art) {
+        return art && typeof art === "object" && NESTED_CLOUD_ASSEMBLY_SYM in art;
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        this.directoryName = properties.directoryName;
+        this.displayName = properties.displayName ?? name;
+      }
+      /**
+       * Full path to the nested assembly directory
+       */
+      get fullPath() {
+        return path23.join(this.assembly.directory, this.directoryName);
+      }
+    };
+    exports2.NestedCloudAssemblyArtifact = NestedCloudAssemblyArtifact;
+    Object.defineProperty(NestedCloudAssemblyArtifact.prototype, NESTED_CLOUD_ASSEMBLY_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js
+var require_tree_cloud_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.TreeCloudArtifact = void 0;
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var TREE_CLOUD_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.TreeCloudArtifact");
+    var TreeCloudArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `TreeCloudArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `TreeCloudArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isTreeCloudArtifact(art) {
+        return art && typeof art === "object" && TREE_CLOUD_ARTIFACT_SYM in art;
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.file) {
+          throw new error_1.CloudAssemblyError('Invalid TreeCloudArtifact. Missing "file" property');
+        }
+        this.file = properties.file;
+      }
+    };
+    exports2.TreeCloudArtifact = TreeCloudArtifact;
+    Object.defineProperty(TreeCloudArtifact.prototype, TREE_CLOUD_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js
+var require_cloud_artifact_aug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var cxschema2 = require_lib2();
+    var asset_manifest_artifact_1 = require_asset_manifest_artifact();
+    var cloudformation_artifact_1 = require_cloudformation_artifact();
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var tree_cloud_artifact_1 = require_tree_cloud_artifact();
+    var cloud_artifact_1 = require_cloud_artifact();
+    cloud_artifact_1.CloudArtifact.fromManifest = function fromManifest(assembly, id, artifact) {
+      switch (artifact.type) {
+        case cxschema2.ArtifactType.AWS_CLOUDFORMATION_STACK:
+          return new cloudformation_artifact_1.CloudFormationStackArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.CDK_TREE:
+          return new tree_cloud_artifact_1.TreeCloudArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.ASSET_MANIFEST:
+          return new asset_manifest_artifact_1.AssetManifestArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY:
+          return new nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact(assembly, id, artifact);
+        default:
+          return void 0;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js
+var require_toposort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.topologicalSort = topologicalSort;
+    var error_1 = require_error();
+    function topologicalSort(xs, keyFn, depFn) {
+      const remaining = /* @__PURE__ */ new Map();
+      for (const element of xs) {
+        const key = keyFn(element);
+        remaining.set(key, { key, element, dependencies: depFn(element) });
+      }
+      const ret = new Array();
+      while (remaining.size > 0) {
+        const selectable = Array.from(remaining.values()).filter((e) => e.dependencies.every((d) => !remaining.has(d)));
+        selectable.sort((a, b) => a.key < b.key ? -1 : b.key < a.key ? 1 : 0);
+        for (const selected of selectable) {
+          ret.push(selected.element);
+          remaining.delete(selected.key);
+        }
+        if (selectable.length === 0) {
+          throw new error_1.CloudAssemblyError(`Could not determine ordering between: ${Array.from(remaining.keys()).join(", ")}`);
+        }
+      }
+      return ret;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js
+var require_cloud_assembly2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudAssemblyBuilder = exports2.CloudAssembly = void 0;
+    var fs19 = require("fs");
+    var os4 = require("os");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var cloudformation_artifact_1 = require_cloudformation_artifact();
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var tree_cloud_artifact_1 = require_tree_cloud_artifact();
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var toposort_1 = require_toposort();
+    var CLOUD_ASSEMBLY_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssembly");
+    var MANIFEST_FILE = "manifest.json";
+    var CloudAssembly = class {
+      /**
+       * Return whether the given object is a CloudAssembly.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static isCloudAssembly(x) {
+        return x !== null && typeof x === "object" && CLOUD_ASSEMBLY_SYMBOL in x;
+      }
+      /**
+       * Cleans up any temporary assembly directories that got created in this process
+       *
+       * If a Cloud Assembly is emitted to a temporary directory, its directory gets
+       * added to a list. This function iterates over that list and deletes each
+       * directory in it, to free up disk space.
+       *
+       * This function will normally be called automatically during Node process
+       * exit and so you don't need to call this. However, some test environments do
+       * not properly trigger Node's `exit` event. Notably: Jest does not trigger
+       * the `exit` event ().
+       *
+       * ## Cleaning up temporary directories in jest
+       *
+       * For Jest, you have to make sure this function is called at the end of the
+       * test suite instead:
+       *
+       * ```js
+       * import { CloudAssembly } from 'aws-cdk-lib/cx-api';
+       *
+       * afterAll(CloudAssembly.cleanupTemporaryDirectories);
+       * ```
+       *
+       * Alternatively, you can use the `setupFilesAfterEnv` feature and use a
+       * provided helper script to automatically inject the above into every
+       * test file, so you don't have to do it by hand.
+       *
+       * ```
+       * $ npx jest --setupFilesAfterEnv aws-cdk-lib/testhelpers/jest-autoclean
+       * ```
+       *
+       * Or put the following into `jest.config.js`:
+       *
+       * ```js
+       * module.exports = {
+       *   // ...
+       *   setupFilesAfterEnv: ['aws-cdk-lib/testhelpers/jest-cleanup'],
+       * };
+       * ```
+       */
+      static cleanupTemporaryDirectories() {
+        for (const dir of TEMPORARY_ASSEMBLY_DIRS) {
+          fs19.rmSync(dir, { recursive: true, force: true });
+        }
+        TEMPORARY_ASSEMBLY_DIRS.splice(0, TEMPORARY_ASSEMBLY_DIRS.length);
+      }
+      /**
+       * Reads a cloud assembly from the specified directory.
+       * @param directory - The root directory of the assembly.
+       */
+      constructor(directory, loadOptions) {
+        this.directory = directory;
+        this.loadOptions = loadOptions;
+        this.manifest = cxschema2.Manifest.loadAssemblyManifest(path23.join(directory, MANIFEST_FILE), this.loadOptions);
+        this.version = this.manifest.version;
+        this.artifacts = this.renderArtifacts(this.loadOptions?.topoSort ?? true);
+        this.runtime = this.manifest.runtime || { libraries: {} };
+        Object.defineProperty(this, CLOUD_ASSEMBLY_SYMBOL, { value: true });
+        this.validateDeps();
+      }
+      /**
+       * Attempts to find an artifact with a specific identity.
+       * @returns A `CloudArtifact` object or `undefined` if the artifact does not exist in this assembly.
+       * @param id - The artifact ID
+       */
+      tryGetArtifact(id) {
+        return this.artifacts.find((a) => a.id === id);
+      }
+      /**
+       * Returns a CloudFormation stack artifact from this assembly.
+       *
+       * Will only search the current assembly.
+       *
+       * @param stackName - the name of the CloudFormation stack.
+       * @throws if there is no stack artifact by that name
+       * @throws if there is more than one stack with the same stack name. You can
+       * use `getStackArtifact(stack.artifactId)` instead.
+       * @returns a `CloudFormationStackArtifact` object.
+       */
+      getStackByName(stackName) {
+        const artifacts = this.artifacts.filter((a) => a instanceof cloudformation_artifact_1.CloudFormationStackArtifact && a.stackName === stackName);
+        if (!artifacts || artifacts.length === 0) {
+          throw new error_1.CloudAssemblyError(`Unable to find stack with stack name "${stackName}"`);
+        }
+        if (artifacts.length > 1) {
+          throw new error_1.CloudAssemblyError(`There are multiple stacks with the stack name "${stackName}" (${artifacts.map((a) => a.id).join(",")}). Use "getStackArtifact(id)" instead`);
+        }
+        return artifacts[0];
+      }
+      /**
+       * Returns a CloudFormation stack artifact by name from this assembly.
+       * @deprecated renamed to `getStackByName` (or `getStackArtifact(id)`)
+       */
+      getStack(stackName) {
+        return this.getStackByName(stackName);
+      }
+      /**
+       * Returns a CloudFormation stack artifact from this assembly.
+       *
+       * @param artifactId - the artifact id of the stack (can be obtained through `stack.artifactId`).
+       * @throws if there is no stack artifact with that id
+       * @returns a `CloudFormationStackArtifact` object.
+       */
+      getStackArtifact(artifactId) {
+        const artifact = this.tryGetArtifactRecursively(artifactId);
+        if (!artifact) {
+          throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`);
+        }
+        if (!(artifact instanceof cloudformation_artifact_1.CloudFormationStackArtifact)) {
+          throw new error_1.CloudAssemblyError(`Artifact ${artifactId} is not a CloudFormation stack`);
+        }
+        return artifact;
+      }
+      tryGetArtifactRecursively(artifactId) {
+        return this.stacksRecursively.find((a) => a.id === artifactId);
+      }
+      /**
+       * Returns all the stacks, including the ones in nested assemblies
+       */
+      get stacksRecursively() {
+        function search(stackArtifacts, assemblies) {
+          if (assemblies.length === 0) {
+            return stackArtifacts;
+          }
+          const [head, ...tail] = assemblies;
+          const nestedAssemblies = head.nestedAssemblies.map((asm) => asm.nestedAssembly);
+          return search(stackArtifacts.concat(head.stacks), tail.concat(nestedAssemblies));
+        }
+        return search([], [this]);
+      }
+      /**
+       * Returns a nested assembly artifact.
+       *
+       * @param artifactId - The artifact ID of the nested assembly
+       */
+      getNestedAssemblyArtifact(artifactId) {
+        const artifact = this.tryGetArtifact(artifactId);
+        if (!artifact) {
+          throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`);
+        }
+        if (!(artifact instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact)) {
+          throw new error_1.CloudAssemblyError(`Found artifact '${artifactId}' but it's not a nested cloud assembly`);
+        }
+        return artifact;
+      }
+      /**
+       * Returns a nested assembly.
+       *
+       * @param artifactId - The artifact ID of the nested assembly
+       */
+      getNestedAssembly(artifactId) {
+        return this.getNestedAssemblyArtifact(artifactId).nestedAssembly;
+      }
+      /**
+       * Returns the tree metadata artifact from this assembly.
+       * @throws if there is no metadata artifact by that name
+       * @returns a `TreeCloudArtifact` object if there is one defined in the manifest, `undefined` otherwise.
+       */
+      tree() {
+        const trees = this.artifacts.filter((a) => a.manifest.type === cxschema2.ArtifactType.CDK_TREE);
+        if (trees.length === 0) {
+          return void 0;
+        } else if (trees.length > 1) {
+          throw new error_1.CloudAssemblyError(`Multiple artifacts of type ${cxschema2.ArtifactType.CDK_TREE} found in manifest`);
+        }
+        const tree = trees[0];
+        if (!(tree instanceof tree_cloud_artifact_1.TreeCloudArtifact)) {
+          throw new error_1.CloudAssemblyError('"Tree" artifact is not of expected type');
+        }
+        return tree;
+      }
+      /**
+       * @returns all the CloudFormation stack artifacts that are included in this assembly.
+       */
+      get stacks() {
+        return this.artifacts.filter(isCloudFormationStackArtifact);
+        function isCloudFormationStackArtifact(x) {
+          return x instanceof cloudformation_artifact_1.CloudFormationStackArtifact;
+        }
+      }
+      /**
+       * The nested assembly artifacts in this assembly
+       */
+      get nestedAssemblies() {
+        return this.artifacts.filter(isNestedCloudAssemblyArtifact);
+        function isNestedCloudAssemblyArtifact(x) {
+          return x instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact;
+        }
+      }
+      validateDeps() {
+        for (const artifact of this.artifacts) {
+          ignore(artifact.dependencies);
+        }
+      }
+      renderArtifacts(topoSort) {
+        const result = new Array();
+        for (const [name, artifact] of Object.entries(this.manifest.artifacts || {})) {
+          const cloudartifact = cloud_artifact_1.CloudArtifact.fromManifest(this, name, artifact);
+          if (cloudartifact) {
+            result.push(cloudartifact);
+          }
+        }
+        return topoSort ? (0, toposort_1.topologicalSort)(result, (x) => x.id, (x) => x._dependencyIDs) : result;
+      }
+    };
+    exports2.CloudAssembly = CloudAssembly;
+    var CloudAssemblyBuilder3 = class _CloudAssemblyBuilder {
+      /**
+       * Initializes a cloud assembly builder.
+       * @param outdir - The output directory, uses temporary directory if undefined
+       */
+      constructor(outdir, props = {}) {
+        this.artifacts = {};
+        this.missing = new Array();
+        this.outdir = determineOutputDirectory(outdir);
+        this.assetOutdir = props.assetOutdir ?? this.outdir;
+        this.parentBuilder = props.parentBuilder;
+        ensureDirSync2(this.outdir);
+      }
+      /**
+       * Adds an artifact into the cloud assembly.
+       * @param id - The ID of the artifact.
+       * @param manifest - The artifact manifest
+       */
+      addArtifact(id, manifest) {
+        this.artifacts[id] = filterUndefined2(manifest);
+      }
+      /**
+       * Reports that some context is missing in order for this cloud assembly to be fully synthesized.
+       * @param missing - Missing context information.
+       */
+      addMissing(missing) {
+        if (this.missing.every((m) => m.key !== missing.key)) {
+          this.missing.push(missing);
+        }
+        this.parentBuilder?.addMissing(missing);
+      }
+      /**
+       * Finalizes the cloud assembly into the output directory returns a
+       * `CloudAssembly` object that can be used to inspect the assembly.
+       */
+      buildAssembly(options = {}) {
+        let manifest = {
+          version: cxschema2.Manifest.version(),
+          artifacts: this.artifacts,
+          runtime: options.runtimeInfo,
+          missing: this.missing.length > 0 ? this.missing : void 0
+        };
+        manifest = filterUndefined2(manifest);
+        const manifestFilePath = path23.join(this.outdir, MANIFEST_FILE);
+        cxschema2.Manifest.saveAssemblyManifest(manifest, manifestFilePath);
+        fs19.writeFileSync(path23.join(this.outdir, "cdk.out"), JSON.stringify({ version: manifest.version }));
+        return new CloudAssembly(this.outdir);
+      }
+      /**
+       * Creates a nested cloud assembly
+       */
+      createNestedAssembly(artifactId, displayName) {
+        const directoryName = artifactId;
+        const innerAsmDir = path23.join(this.outdir, directoryName);
+        this.addArtifact(artifactId, {
+          type: cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY,
+          properties: {
+            directoryName,
+            displayName
+          }
+        });
+        return new _CloudAssemblyBuilder(innerAsmDir, {
+          // Reuse the same asset output directory as the current Casm builder
+          assetOutdir: this.assetOutdir,
+          parentBuilder: this
+        });
+      }
+      /**
+       * Delete the cloud assembly directory
+       */
+      delete() {
+        fs19.rmSync(this.outdir, { recursive: true, force: true });
+      }
+    };
+    exports2.CloudAssemblyBuilder = CloudAssemblyBuilder3;
+    function filterUndefined2(obj) {
+      if (Array.isArray(obj)) {
+        return obj.filter((x) => x !== void 0).map((x) => filterUndefined2(x));
+      }
+      if (typeof obj === "object") {
+        const ret = {};
+        for (const [key, value] of Object.entries(obj)) {
+          if (value === void 0) {
+            continue;
+          }
+          ret[key] = filterUndefined2(value);
+        }
+        return ret;
+      }
+      return obj;
+    }
+    function ignore(_x) {
+      return;
+    }
+    function determineOutputDirectory(outdir) {
+      if (outdir) {
+        return outdir;
+      }
+      const tmpDir = fs19.mkdtempSync(path23.join(fs19.realpathSync(os4.tmpdir()), "cdk.out"));
+      TEMPORARY_ASSEMBLY_DIRS.push(tmpDir);
+      return outdir ?? tmpDir;
+    }
+    function ensureDirSync2(dir) {
+      if (fs19.existsSync(dir)) {
+        if (!fs19.statSync(dir).isDirectory()) {
+          throw new error_1.CloudAssemblyError(`${dir} must be a directory`);
+        }
+      } else {
+        fs19.mkdirSync(dir, { recursive: true });
+      }
+    }
+    var TEMPORARY_ASSEMBLY_DIRS = [];
+    process.on("exit", () => CloudAssembly.cleanupTemporaryDirectories());
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js
+var require_nested_cloud_assembly_artifact_aug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var cloud_assembly_1 = require_cloud_assembly2();
+    var cacheSym = /* @__PURE__ */ Symbol();
+    Object.defineProperty(nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact.prototype, "nestedAssembly", {
+      get() {
+        if (!this[cacheSym]) {
+          this[cacheSym] = new cloud_assembly_1.CloudAssembly(this.fullPath, this.assembly.loadOptions);
+        }
+        return this[cacheSym];
+      }
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js
+var require_assets2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ASSET_PREFIX_SEPARATOR = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = void 0;
+    exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = "aws:cdk:enable-asset-metadata";
+    exports2.ASSET_RESOURCE_METADATA_PATH_KEY = "aws:asset:path";
+    exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = "aws:asset:dockerfile-path";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = "aws:asset:docker-build-args";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = "aws:asset:docker-build-contexts";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = "aws:asset:docker-build-secrets";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = "aws:asset:docker-build-ssh";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = "aws:asset:docker-build-target";
+    exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = "aws:asset:property";
+    exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = "aws:asset:is-bundled";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = "aws:asset:docker-outputs";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = "aws:asset:docker-cache-from";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = "aws:asset:docker-cache-to";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = "aws:asset:docker-cache-disabled";
+    exports2.ASSET_PREFIX_SEPARATOR = "||";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js
+var require_placeholders = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EnvironmentPlaceholders = void 0;
+    var EnvironmentPlaceholders4 = class _EnvironmentPlaceholders {
+      /**
+       * Replace the environment placeholders in all strings found in a complex object.
+       *
+       * Duplicated between cdk-assets and aws-cdk CLI because we don't have a good single place to put it
+       * (they're nominally independent tools).
+       */
+      static replace(object, values) {
+        return this.recurse(object, (value) => {
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, values.region);
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, values.accountId);
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, values.partition);
+          return value;
+        });
+      }
+      /**
+       * Like 'replace', but asynchronous
+       */
+      static async replaceAsync(object, provider) {
+        let needRegion = false;
+        let needAccountId = false;
+        let needPartition = false;
+        this.recurse(object, (value) => {
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_REGION) > 1) {
+            needRegion = true;
+          }
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_ACCOUNT) > 1) {
+            needAccountId = true;
+          }
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_PARTITION) > 1) {
+            needPartition = true;
+          }
+          return value;
+        });
+        const region = needRegion ? await provider.region() : void 0;
+        const accountId = needAccountId ? await provider.accountId() : void 0;
+        const partition = needPartition ? await provider.partition() : void 0;
+        return this.recurse(object, (value) => {
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, region ?? "WONTHAPPEN");
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, accountId ?? "WONTHAPPEN");
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, partition ?? "WONTHAPPEN");
+          return value;
+        });
+      }
+      static recurse(value, cb) {
+        if (typeof value === "string") {
+          return cb(value);
+        }
+        if (typeof value !== "object" || value === null) {
+          return value;
+        }
+        if (Array.isArray(value)) {
+          return value.map((x) => this.recurse(x, cb));
+        }
+        const ret = {};
+        for (const [key, inner] of Object.entries(value)) {
+          ret[key] = this.recurse(inner, cb);
+        }
+        return ret;
+      }
+    };
+    exports2.EnvironmentPlaceholders = EnvironmentPlaceholders4;
+    EnvironmentPlaceholders4.CURRENT_REGION = "${AWS::Region}";
+    EnvironmentPlaceholders4.CURRENT_ACCOUNT = "${AWS::AccountId}";
+    EnvironmentPlaceholders4.CURRENT_PARTITION = "${AWS::Partition}";
+    function replaceAll3(s, search, replace) {
+      return s.split(search).join(replace);
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js
+var require_bootstrap = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.SSMPARAM_NO_INVALIDATE = void 0;
+    exports2.SSMPARAM_NO_INVALIDATE = "[cdk:skip]";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js
+var require_lib3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_vpc(), exports2);
+    __exportStar2(require_ami(), exports2);
+    __exportStar2(require_load_balancer(), exports2);
+    __exportStar2(require_availability_zones(), exports2);
+    __exportStar2(require_endpoint_service_availability_zones(), exports2);
+    __exportStar2(require_security_group(), exports2);
+    __exportStar2(require_key(), exports2);
+    __exportStar2(require_generic(), exports2);
+    __exportStar2(require_cloud_artifact(), exports2);
+    require_cloud_artifact_aug();
+    __exportStar2(require_asset_manifest_artifact(), exports2);
+    __exportStar2(require_cloudformation_artifact(), exports2);
+    __exportStar2(require_tree_cloud_artifact(), exports2);
+    __exportStar2(require_nested_cloud_assembly_artifact(), exports2);
+    require_nested_cloud_assembly_artifact_aug();
+    __exportStar2(require_cloud_assembly2(), exports2);
+    __exportStar2(require_assets2(), exports2);
+    __exportStar2(require_metadata(), exports2);
+    __exportStar2(require_placeholders(), exports2);
+    __exportStar2(require_environment(), exports2);
+    __exportStar2(require_bootstrap(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/legacy-moved.ts
+function _convertCloudAssembly(x) {
+  return x;
+}
+function _convertCloudAssemblyBuilder(x) {
+  return x;
+}
+var import_cloud_assembly_api;
+var init_legacy_moved = __esm({
+  "../../aws-cdk-lib/cx-api/lib/legacy-moved.ts"() {
+    "use strict";
+    import_cloud_assembly_api = __toESM(require_lib3());
+    exports.CloudAssembly = import_cloud_assembly_api.CloudAssembly;
+    exports.CloudArtifact = import_cloud_assembly_api.CloudArtifact;
+    exports.CloudFormationStackArtifact = import_cloud_assembly_api.CloudFormationStackArtifact;
+    exports.AssetManifestArtifact = import_cloud_assembly_api.AssetManifestArtifact;
+    exports.NestedCloudAssemblyArtifact = import_cloud_assembly_api.NestedCloudAssemblyArtifact;
+    exports.TreeCloudArtifact = import_cloud_assembly_api.TreeCloudArtifact;
+    exports.CloudAssemblyBuilder = import_cloud_assembly_api.CloudAssemblyBuilder;
+    exports.EnvironmentPlaceholders = import_cloud_assembly_api.EnvironmentPlaceholders;
+    exports.EnvironmentUtils = import_cloud_assembly_api.EnvironmentUtils;
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/cxapi.ts
+var OUTDIR_ENV, CONTEXT_ENV, ERRORFILE_ENV, PERF_COUNTERS_FILE_ENV, CONTEXT_OVERFLOW_LOCATION_ENV, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, VALIDATION_REPORT_FILE, VALIDATION_REPORT_JSON_CONTEXT, STRICT_CFN_VALIDATE_ERRORS, CDK_APP_MODE_ENV, CDK_APP_MODE_CONTEXT, CDK_TEMPLATE_FILE_KEY;
+var init_cxapi = __esm({
+  "../../aws-cdk-lib/cx-api/lib/cxapi.ts"() {
+    "use strict";
+    OUTDIR_ENV = "CDK_OUTDIR";
+    CONTEXT_ENV = "CDK_CONTEXT_JSON";
+    ERRORFILE_ENV = "CDK_ERROR_FILE";
+    PERF_COUNTERS_FILE_ENV = "CDK_PERF_COUNTERS_FILE";
+    CONTEXT_OVERFLOW_LOCATION_ENV = "CONTEXT_OVERFLOW_LOCATION_ENV";
+    FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT = "@aws-cdk/core:failSynthOnValidationErrors";
+    VALIDATION_REPORT_FILE = "validation-report.json";
+    VALIDATION_REPORT_JSON_CONTEXT = "@aws-cdk/core:validationReportJson";
+    STRICT_CFN_VALIDATE_ERRORS = "@aws-cdk/core:strictCfnValidateErrors";
+    CDK_APP_MODE_ENV = "CDK_APP_MODE";
+    CDK_APP_MODE_CONTEXT = "@aws-cdk/core:appMode";
+    CDK_TEMPLATE_FILE_KEY = "aws:cdk:templateFile";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts
+var init_flag_modeling = __esm({
+  "../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/features.ts
+function futureFlagDefault(flag) {
+  const value = CURRENT_VERSION_FLAG_DEFAULTS[flag] ?? false;
+  if (typeof value !== "boolean") {
+    throw new Error(`futureFlagDefault: default type of flag '${flag}' should be boolean, got '${typeof value}'`);
+  }
+  return value;
+}
+var ENABLE_STACK_NAME_DUPLICATES_CONTEXT, ENABLE_DIFF_NO_FAIL_CONTEXT, NEW_STYLE_STACK_SYNTHESIS_CONTEXT, STACK_RELATIVE_EXPORTS_CONTEXT, DOCKER_IGNORE_SUPPORT, SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME, KMS_DEFAULT_KEY_POLICIES, S3_GRANT_WRITE_WITHOUT_ACL, ECS_REMOVE_DEFAULT_DESIRED_COUNT, RDS_LOWERCASE_DB_IDENTIFIER, APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID, EFS_DEFAULT_ENCRYPTION_AT_REST, LAMBDA_RECOGNIZE_VERSION_PROPS, LAMBDA_RECOGNIZE_LAYER_VERSION, CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021, CHECK_SECRET_USAGE, TARGET_PARTITIONS, ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER, EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME, ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME, IAM_MINIMIZE_POLICIES, IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME, VALIDATE_SNAPSHOT_REMOVAL_POLICY, CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME, S3_CREATE_DEFAULT_LOGGING_POLICY, SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY, APIGATEWAY_DISABLE_CLOUDWATCH_ROLE, ENABLE_PARTITION_LITERALS, EVENTS_TARGET_QUEUE_SAME_ACCOUNT, ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER, ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER, S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY, ROUTE53_PATTERNS_USE_CERTIFICATE, ROUTE53_PATTERNS_USE_DISTRIBUTION, AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT, DATABASE_PROXY_UNIQUE_RESOURCE_NAME, CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP, APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID, EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA, SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY, REDSHIFT_COLUMN_ID, ENABLE_EMR_SERVICE_POLICY_V2, EC2_RESTRICT_DEFAULT_SECURITY_GROUP, APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID, APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD, INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION, KMS_ALIAS_NAME_REF, KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL, EFS_DENY_ANONYMOUS_ACCESS, EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID, AUTOSCALING_GENERATE_LAUNCH_TEMPLATE, ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY, LAMBDA_NODEJS_USE_LATEST_RUNTIME, RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS, AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS, APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION, CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME, LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION, CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE, CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2, KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE, PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE, EKS_NODEGROUP_NAME, EKS_USE_NATIVE_OIDC_PROVIDER, ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID, EBS_DEFAULT_GP3, ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM, LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT, S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET, USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK, EXPLICIT_STACK_TAGS, REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS, DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA, EC2_SUM_TIMEOUT_ENABLED, APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION, USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY, CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS, LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES, STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY, STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2, BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT, ASPECT_STABILIZATION, SIGNER_PROFILE_NAME_PASSED_TO_CFN, USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE, ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT, IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS, ENABLE_ADDITIONAL_METADATA_COLLECTION, LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY, SET_UNIQUE_REPLICATION_ROLE_NAME, PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE, EVENTBUS_POLICY_SID_REQUIRED, ASPECT_PRIORITIES_MUTATING, DYNAMODB_TABLE_RETAIN_TABLE_REPLICA, LOG_USER_POOL_CLIENT_SECRET_VALUE, PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE, S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS, EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY, USE_RESOURCEID_FOR_VPCV2_MIGRATION, S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT, USE_CDK_MANAGED_LAMBDA_LOGGROUP, NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT, STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT, CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0, ELB_USE_POST_QUANTUM_TLS_POLICY, AUTOMATIC_L1_TRAITS, BATCH_DEFAULT_AL2023, EKS_DEFAULT_AL2023, ANNOTATIONS_IN_VALIDATION_REPORT, DEFAULT_CROSS_STACK_REFERENCES, VALIDATE_AGAINST_DEFAULT_RULES, ECS_REMOVE_EMPTY_LOAD_BALANCERS, CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS, FLAGS, CURRENT_MV, CURRENT_VERSION_EXPIRED_FLAGS, CURRENTLY_RECOMMENDED_FLAGS, CURRENT_VERSION_FLAG_DEFAULTS, FUTURE_FLAGS, NEW_PROJECT_DEFAULT_CONTEXT;
+var init_features = __esm({
+  "../../aws-cdk-lib/cx-api/lib/features.ts"() {
+    "use strict";
+    init_flag_modeling();
+    ENABLE_STACK_NAME_DUPLICATES_CONTEXT = "@aws-cdk/core:enableStackNameDuplicates";
+    ENABLE_DIFF_NO_FAIL_CONTEXT = "aws-cdk:enableDiffNoFail";
+    NEW_STYLE_STACK_SYNTHESIS_CONTEXT = "@aws-cdk/core:newStyleStackSynthesis";
+    STACK_RELATIVE_EXPORTS_CONTEXT = "@aws-cdk/core:stackRelativeExports";
+    DOCKER_IGNORE_SUPPORT = "@aws-cdk/aws-ecr-assets:dockerIgnoreSupport";
+    SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME = "@aws-cdk/aws-secretsmanager:parseOwnedSecretName";
+    KMS_DEFAULT_KEY_POLICIES = "@aws-cdk/aws-kms:defaultKeyPolicies";
+    S3_GRANT_WRITE_WITHOUT_ACL = "@aws-cdk/aws-s3:grantWriteWithoutAcl";
+    ECS_REMOVE_DEFAULT_DESIRED_COUNT = "@aws-cdk/aws-ecs-patterns:removeDefaultDesiredCount";
+    RDS_LOWERCASE_DB_IDENTIFIER = "@aws-cdk/aws-rds:lowercaseDbIdentifier";
+    APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID = "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId";
+    EFS_DEFAULT_ENCRYPTION_AT_REST = "@aws-cdk/aws-efs:defaultEncryptionAtRest";
+    LAMBDA_RECOGNIZE_VERSION_PROPS = "@aws-cdk/aws-lambda:recognizeVersionProps";
+    LAMBDA_RECOGNIZE_LAYER_VERSION = "@aws-cdk/aws-lambda:recognizeLayerVersion";
+    CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021 = "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021";
+    CHECK_SECRET_USAGE = "@aws-cdk/core:checkSecretUsage";
+    TARGET_PARTITIONS = "@aws-cdk/core:target-partitions";
+    ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER = "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver";
+    EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME = "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName";
+    ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME = "@aws-cdk/aws-ecs:arnFormatIncludesClusterName";
+    IAM_MINIMIZE_POLICIES = "@aws-cdk/aws-iam:minimizePolicies";
+    IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME = "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName";
+    VALIDATE_SNAPSHOT_REMOVAL_POLICY = "@aws-cdk/core:validateSnapshotRemovalPolicy";
+    CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME = "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName";
+    S3_CREATE_DEFAULT_LOGGING_POLICY = "@aws-cdk/aws-s3:createDefaultLoggingPolicy";
+    SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY = "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption";
+    APIGATEWAY_DISABLE_CLOUDWATCH_ROLE = "@aws-cdk/aws-apigateway:disableCloudWatchRole";
+    ENABLE_PARTITION_LITERALS = "@aws-cdk/core:enablePartitionLiterals";
+    EVENTS_TARGET_QUEUE_SAME_ACCOUNT = "@aws-cdk/aws-events:eventsTargetQueueSameAccount";
+    ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER = "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker";
+    ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER = "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener";
+    S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY = "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy";
+    ROUTE53_PATTERNS_USE_CERTIFICATE = "@aws-cdk/aws-route53-patters:useCertificate";
+    ROUTE53_PATTERNS_USE_DISTRIBUTION = "@aws-cdk/aws-route53-patterns:useDistribution";
+    AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT = "@aws-cdk/customresources:installLatestAwsSdkDefault";
+    DATABASE_PROXY_UNIQUE_RESOURCE_NAME = "@aws-cdk/aws-rds:databaseProxyUniqueResourceName";
+    CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP = "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup";
+    APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID = "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId";
+    EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA = "@aws-cdk/aws-ec2:launchTemplateDefaultUserData";
+    SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY = "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments";
+    REDSHIFT_COLUMN_ID = "@aws-cdk/aws-redshift:columnId";
+    ENABLE_EMR_SERVICE_POLICY_V2 = "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2";
+    EC2_RESTRICT_DEFAULT_SECURITY_GROUP = "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup";
+    APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID = "@aws-cdk/aws-apigateway:requestValidatorUniqueId";
+    APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD = "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard";
+    INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION = "@aws-cdk/core:includePrefixInUniqueNameGeneration";
+    KMS_ALIAS_NAME_REF = "@aws-cdk/aws-kms:aliasNameRef";
+    KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL = "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal";
+    EFS_DENY_ANONYMOUS_ACCESS = "@aws-cdk/aws-efs:denyAnonymousAccess";
+    EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID = "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId";
+    AUTOSCALING_GENERATE_LAUNCH_TEMPLATE = "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig";
+    ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY = "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby";
+    LAMBDA_NODEJS_USE_LATEST_RUNTIME = "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion";
+    RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS = "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials";
+    AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS = "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters";
+    APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION = "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier";
+    CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME = "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource";
+    LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION = "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction";
+    CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE = "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse";
+    CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2 = "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2";
+    KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE = "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope";
+    PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceAssetRoleTrustScope";
+    EKS_NODEGROUP_NAME = "@aws-cdk/aws-eks:nodegroupNameAttribute";
+    EKS_USE_NATIVE_OIDC_PROVIDER = "@aws-cdk/aws-eks:useNativeOidcProvider";
+    ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID = "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId";
+    EBS_DEFAULT_GP3 = "@aws-cdk/aws-ec2:ebsDefaultGp3Volume";
+    ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM = "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm";
+    LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT = "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault";
+    S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET = "@aws-cdk/aws-s3:keepNotificationInImportedBucket";
+    USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK = "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask";
+    EXPLICIT_STACK_TAGS = "@aws-cdk/core:explicitStackTags";
+    REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS = "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions";
+    DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA = "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica";
+    EC2_SUM_TIMEOUT_ENABLED = "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled";
+    APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION = "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission";
+    USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY = "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId";
+    CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS = "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics";
+    LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES = "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages";
+    STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY = "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy";
+    STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2 = "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2";
+    BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT = "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault";
+    ASPECT_STABILIZATION = "@aws-cdk/core:aspectStabilization";
+    SIGNER_PROFILE_NAME_PASSED_TO_CFN = "@aws-cdk/aws-signer:signingProfileNamePassedToCfn";
+    USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE = "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource";
+    ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT = "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault";
+    IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS = "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections";
+    ENABLE_ADDITIONAL_METADATA_COLLECTION = "@aws-cdk/core:enableAdditionalMetadataCollection";
+    LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY = "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy";
+    SET_UNIQUE_REPLICATION_ROLE_NAME = "@aws-cdk/aws-s3:setUniqueReplicationRoleName";
+    PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceStageRoleTrustScope";
+    EVENTBUS_POLICY_SID_REQUIRED = "@aws-cdk/aws-events:requireEventBusPolicySid";
+    ASPECT_PRIORITIES_MUTATING = "@aws-cdk/core:aspectPrioritiesMutating";
+    DYNAMODB_TABLE_RETAIN_TABLE_REPLICA = "@aws-cdk/aws-dynamodb:retainTableReplica";
+    LOG_USER_POOL_CLIENT_SECRET_VALUE = "@aws-cdk/cognito:logUserPoolClientSecretValue";
+    PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope";
+    S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS = "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions";
+    EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY = "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway";
+    USE_RESOURCEID_FOR_VPCV2_MIGRATION = "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration";
+    S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT = "@aws-cdk/aws-s3:publicAccessBlockedByDefault";
+    USE_CDK_MANAGED_LAMBDA_LOGGROUP = "@aws-cdk/aws-lambda:useCdkManagedLogGroup";
+    NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT = "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault";
+    STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT = "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint";
+    CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0 = "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0";
+    ELB_USE_POST_QUANTUM_TLS_POLICY = "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy";
+    AUTOMATIC_L1_TRAITS = "@aws-cdk/core:automaticL1Traits";
+    BATCH_DEFAULT_AL2023 = "@aws-cdk/aws-batch:defaultToAL2023";
+    EKS_DEFAULT_AL2023 = "@aws-cdk/aws-eks:defaultToAL2023";
+    ANNOTATIONS_IN_VALIDATION_REPORT = "@aws-cdk/core:annotationsInValidationReport";
+    DEFAULT_CROSS_STACK_REFERENCES = "@aws-cdk/core:defaultCrossStackReferences";
+    VALIDATE_AGAINST_DEFAULT_RULES = "@aws-cdk/core:validateAgainstDefaultRules";
+    ECS_REMOVE_EMPTY_LOAD_BALANCERS = "@aws-cdk/aws-ecs:removeEmptyLoadBalancers";
+    CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS = "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps";
+    FLAGS = {
+      //////////////////////////////////////////////////////////////////////
+      [SIGNER_PROFILE_NAME_PASSED_TO_CFN]: {
+        type: 1 /* BugFix */,
+        summary: "Pass signingProfileName to CfnSigningProfile",
+        detailsMd: `
+      When enabled, the \`signingProfileName\` property is passed to the L1 \`CfnSigningProfile\` construct,
+      which ensures that the AWS Signer profile is created with the specified name.
+
+      When disabled, the \`signingProfileName\` is not passed to CloudFormation, maintaining backward
+      compatibility with existing deployments where CloudFormation auto-generated profile names.
+
+      This feature flag is needed because enabling it can cause existing signing profiles to be
+      replaced during deployment if a \`signingProfileName\` was specified but not previously used
+      in the CloudFormation template.`,
+        introducedIn: { v2: "2.212.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_STACK_NAME_DUPLICATES_CONTEXT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Allow multiple stacks with the same name",
+        detailsMd: `
+      If this is set, multiple stacks can use the same stack name (e.g. deployed to
+      different environments). This means that the name of the synthesized template
+      file will be based on the construct path and not on the defined \`stackName\`
+      of the stack.`,
+        recommendedValue: true,
+        introducedIn: { v1: "1.16.0" },
+        unconfiguredBehavesLike: { v2: true },
+        compatibilityWithOldBehaviorMd: "Pass stack identifiers to the CLI instead of stack names."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_DIFF_NO_FAIL_CONTEXT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Make `cdk diff` not fail when there are differences",
+        detailsMd: `
+      Determines what status code \`cdk diff\` should return when the specified stack
+      differs from the deployed stack or the local CloudFormation template:
+
+      * \`aws-cdk:enableDiffNoFail=true\` => status code == 0
+      * \`aws-cdk:enableDiffNoFail=false\` => status code == 1
+
+      You can override this behavior with the --fail flag:
+
+      * \`--fail\` => status code == 1
+      * \`--no-fail\` => status code == 0`,
+        introducedIn: { v1: "1.19.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Specify `--fail` to the CLI."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [NEW_STYLE_STACK_SYNTHESIS_CONTEXT]: {
+        type: 1 /* BugFix */,
+        summary: "Switch to new stack synthesis method which enables CI/CD",
+        detailsMd: `
+      If this flag is specified, all \`Stack\`s will use the \`DefaultStackSynthesizer\` by
+      default. If it is not set, they will use the \`LegacyStackSynthesizer\`.`,
+        introducedIn: { v1: "1.39.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STACK_RELATIVE_EXPORTS_CONTEXT]: {
+        type: 1 /* BugFix */,
+        summary: "Name exports based on the construct paths relative to the stack, rather than the global construct path",
+        detailsMd: `
+      Combined with the stack name this relative construct path is good enough to
+      ensure uniqueness, and makes the export names robust against refactoring
+      the location of the stack in the construct tree (specifically, moving the Stack
+      into a Stage).`,
+        introducedIn: { v1: "1.58.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DOCKER_IGNORE_SUPPORT]: {
+        type: 0 /* ApiDefault */,
+        summary: "DockerImageAsset properly supports `.dockerignore` files by default",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`DockerImageAsset\` is to use
+      glob semantics for \`.dockerignore\` files. If this flag is set, the default behavior
+      is standard Docker ignore semantics.
+
+      This is a feature flag as the old behavior was technically incorrect but
+      users may have come to depend on it.`,
+        introducedIn: { v1: "1.73.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Update your `.dockerignore` file to match standard Docker ignore rules, if necessary."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME]: {
+        type: 0 /* ApiDefault */,
+        summary: "Fix the referencing of SecretsManager names from ARNs",
+        detailsMd: `
+      Secret.secretName for an "owned" secret will attempt to parse the secretName from the ARN,
+      rather than the default full resource name, which includes the SecretsManager suffix.
+
+      If this flag is not set, Secret.secretName will include the SecretsManager suffix, which cannot be directly
+      used by SecretsManager.DescribeSecret, and must be parsed by the user first (e.g., Fn:Join, Fn:Select, Fn:Split).`,
+        introducedIn: { v1: "1.77.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Use `parseArn(secret.secretName).resourceName` to emulate the incorrect old parsing."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_DEFAULT_KEY_POLICIES]: {
+        type: 0 /* ApiDefault */,
+        summary: "Tighten default KMS key policies",
+        detailsMd: `
+      KMS Keys start with a default key policy that grants the account access to administer the key,
+      mirroring the behavior of the KMS SDK/CLI/Console experience. Users may override the default key
+      policy by specifying their own.
+
+      If this flag is not set, the default key policy depends on the setting of the \`trustAccountIdentities\`
+      flag. If false (the default, for backwards-compatibility reasons), the default key policy somewhat
+      resembles the default admin key policy, but with the addition of 'GenerateDataKey' permissions. If
+      true, the policy matches what happens when this feature flag is set.
+
+      Additionally, if this flag is not set and the user supplies a custom key policy, this will be appended
+      to the key's default policy (rather than replacing it).`,
+        introducedIn: { v1: "1.78.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `trustAccountIdentities: false` to `Key` construct to restore the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_GRANT_WRITE_WITHOUT_ACL]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove `PutObjectAcl` from Bucket.grantWrite",
+        detailsMd: `
+      Change the old 's3:PutObject*' permission to 's3:PutObject' on Bucket,
+      as the former includes 's3:PutObjectAcl',
+      which could be used to grant read/write object access to IAM principals in other accounts.
+      Use a feature flag to make sure existing customers who might be relying
+      on the overly-broad permissions are not broken.`,
+        introducedIn: { v1: "1.85.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Call `bucket.grantPutAcl()` in addition to `bucket.grantWrite()` to grant ACL permissions."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_DEFAULT_DESIRED_COUNT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Do not specify a default DesiredCount for ECS services",
+        detailsMd: `
+      ApplicationLoadBalancedServiceBase, ApplicationMultipleTargetGroupServiceBase,
+      NetworkLoadBalancedServiceBase, NetworkMultipleTargetGroupServiceBase, and
+      QueueProcessingServiceBase currently determine a default value for the desired count of
+      a CfnService if a desiredCount is not provided. The result of this is that on every
+      deployment, the service count is reset to the fixed value, even if it was autoscaled.
+
+      If this flag is not set, the default behaviour for CfnService.desiredCount is to set a
+      desiredCount of 1, if one is not provided. If true, a default will not be defined for
+      CfnService.desiredCount and as such desiredCount will be undefined, if one is not provided.`,
+        introducedIn: { v1: "1.92.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `desiredCount: 1` explicitly, but you should never need this."
+      },
+      [ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER]: {
+        type: 0 /* ApiDefault */,
+        summary: "Disable implicit openListener when custom security groups are provided",
+        detailsMd: `
+      ApplicationLoadBalancedServiceBase currently defaults openListener to true, which creates
+      security group rules allowing ingress from 0.0.0.0/0. This can be a security risk when
+      users provide custom security groups on their load balancer, expecting those to be the
+      only ingress rules.
+
+      If this flag is not set, openListener will always default to true for backward compatibility.
+      If true, openListener will default to false when custom security groups are detected on the
+      load balancer, and true otherwise. Users can still explicitly set openListener: true to
+      override this behavior.`,
+        introducedIn: { v2: "2.214.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `openListener: true` explicitly to maintain the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [RDS_LOWERCASE_DB_IDENTIFIER]: {
+        type: 1 /* BugFix */,
+        summary: "Force lowercasing of RDS Cluster names in CDK",
+        detailsMd: `
+      Cluster names must be lowercase, and the service will lowercase the name when the cluster
+      is created. However, CDK did not use to know about this, and would use the user-provided name
+      referencing the cluster, which would fail if it happened to be mixed-case.
+
+      With this flag, lowercase the name in CDK so we can reference it properly.
+
+      Must be behind a permanent flag because changing a name from mixed case to lowercase between deployments
+      would lead CloudFormation to think the name was changed and would trigger a cluster replacement
+      (losing data!).`,
+        introducedIn: { v1: "1.97.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Allow adding/removing multiple UsagePlanKeys independently",
+        detailsMd: `
+      The UsagePlanKey resource connects an ApiKey with a UsagePlan. API Gateway does not allow more than one UsagePlanKey
+      for any given UsagePlan and ApiKey combination. For this reason, CloudFormation cannot replace this resource without
+      either the UsagePlan or ApiKey changing.
+
+      The feature addition to support multiple UsagePlanKey resources - 142bd0e2 - recognized this and attempted to keep
+      existing UsagePlanKey logical ids unchanged.
+      However, this intentionally caused the logical id of the UsagePlanKey to be sensitive to order. That is, when
+      the 'first' UsagePlanKey resource is removed, the logical id of the 'second' assumes what was originally the 'first',
+      which again is disallowed.
+
+      In effect, there is no way to get out of this mess in a backwards compatible way, while supporting existing stacks.
+      This flag changes the logical id layout of UsagePlanKey to not be sensitive to order.`,
+        introducedIn: { v1: "1.98.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_DEFAULT_ENCRYPTION_AT_REST]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enable this feature flag to have elastic file systems encrypted at rest by default.",
+        detailsMd: `
+      Encryption can also be configured explicitly using the \`encrypted\` property.
+      `,
+        introducedIn: { v1: "1.98.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass the `encrypted: false` property to the `FileSystem` construct to disable encryption."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_RECOGNIZE_VERSION_PROPS]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the  `fn.currentVersion`.",
+        detailsMd: `
+      The previous calculation incorrectly considered properties of the \`AWS::Lambda::Function\` resource that did
+      not constitute creating a new Version.
+
+      See 'currentVersion' section in the aws-lambda module's README for more details.`,
+        introducedIn: { v1: "1.106.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_RECOGNIZE_LAYER_VERSION]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.",
+        detailsMd: `
+      This flag correct incorporates Lambda Layer properties into the Lambda Function Version.
+
+      See 'currentVersion' section in the aws-lambda module's README for more details.`,
+        introducedIn: { v1: "1.159.0", v2: "2.27.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
+        detailsMd: `
+      The security policy can also be configured explicitly using the \`minimumProtocolVersion\` property.`,
+        introducedIn: { v1: "1.117.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CHECK_SECRET_USAGE]: {
+        type: 2 /* VisibleContext */,
+        summary: "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations",
+        detailsMd: `
+      With this flag enabled, \`SecretValue\` instances can only be passed to
+      constructs that accept \`SecretValue\`s; otherwise, \`unsafeUnwrap()\` must be
+      called to use it as a regular string.`,
+        introducedIn: { v1: "1.153.0", v2: "2.21.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [TARGET_PARTITIONS]: {
+        type: 2 /* VisibleContext */,
+        summary: "What regions to include in lookup tables of environment agnostic stacks",
+        detailsMd: `
+      Has no effect on stacks that have a defined region, but will limit the amount
+      of unnecessary regions included in stacks without a known region.
+
+      The type of this value should be a list of strings.`,
+        introducedIn: { v1: "1.137.0", v2: "2.4.0" },
+        recommendedValue: ["aws", "aws-cn"]
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER]: {
+        type: 0 /* ApiDefault */,
+        summary: "ECS extensions will automatically add an `awslogs` driver if no logging is specified",
+        detailsMd: `
+      Enable this feature flag to configure default logging behavior for the ECS Service Extensions. This will enable the
+      \`awslogs\` log driver for the application container of the service to send the container logs to CloudWatch Logs.
+
+      This is a feature flag as the new behavior provides a better default experience for the users.`,
+        introducedIn: { v1: "1.140.0", v2: "2.8.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Specify a log driver explicitly."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names.",
+        detailsMd: `
+      Previously, the generated Launch Template names were only unique within a stack because they were based only on the
+      \`Instance\` construct ID. If another stack that has an \`Instance\` with the same construct ID is deployed in the same
+      account and region, the deployments would always fail as the generated Launch Template names were the same.
+
+      The new implementation addresses this issue by generating the Launch Template name with the \`Names.uniqueId\` method.`,
+        introducedIn: { v1: "1.140.0", v2: "2.8.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID.",
+        detailsMd: `
+      If this flag is not set, the old ARN format (without cluster name) for ECS is used.
+      If this flag is set, the new ARN format (with cluster name) for ECS is used.
+
+      This is a feature flag as the old format is still valid for existing ECS clusters.
+
+      See https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#ecs-resource-ids
+      `,
+        introducedIn: { v2: "2.35.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_MINIMIZE_POLICIES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Minimize IAM policies by combining Statements",
+        detailsMd: `
+      Minimize IAM policies by combining Principals, Actions and Resources of two
+      Statements in the policies, as long as it doesn't change the meaning of the
+      policy.`,
+        introducedIn: { v1: "1.150.0", v2: "2.18.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [VALIDATE_SNAPSHOT_REMOVAL_POLICY]: {
+        type: 0 /* ApiDefault */,
+        summary: "Error on snapshot removal policies on resources that do not support it.",
+        detailsMd: `
+      Makes sure we do not allow snapshot removal policy on resources that do not support it.
+      If supplied on an unsupported resource, CloudFormation ignores the policy altogether.
+      This flag will reduce confusion and unexpected loss of data when erroneously supplying
+      the snapshot removal policy.`,
+        introducedIn: { v2: "2.28.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "The old behavior was incorrect. Update your source to not specify SNAPSHOT policies on resources that do not support it."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Generate key aliases that include the stack name",
+        detailsMd: `
+      Enable this feature flag to have CodePipeline generate a unique cross account key alias name using the stack name.
+
+      Previously, when creating multiple pipelines with similar naming conventions and when crossAccountKeys is true,
+      the KMS key alias name created for these pipelines may be the same due to how the uniqueId is generated.
+
+      This new implementation creates a stack safe resource name for the alias using the stack name instead of the stack ID.
+      `,
+        introducedIn: { v2: "2.29.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_CREATE_DEFAULT_LOGGING_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist.",
+        detailsMd: `
+      For example, in order to send VPC flow logs to an S3 bucket, there is a specific Bucket Policy
+      that needs to be attached to the bucket. If you create the bucket without a policy and then add the
+      bucket as the flow log destination, the service will automatically create the bucket policy with the
+      necessary permissions. If you were to then try and add your own bucket policy CloudFormation will throw
+      and error indicating that a bucket policy already exists.
+
+      In cases where we know what the required policy is we can go ahead and create the policy so we can
+      remain in control of it.
+
+      @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-S3
+      `,
+        introducedIn: { v2: "2.31.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Restrict KMS key policy for encrypted Queues a bit more",
+        detailsMd: `
+      Enable this feature flag to restrict the decryption of a SQS queue, which is subscribed to a SNS topic, to
+      only the topic which it is subscribed to and not the whole SNS service of an account.
+
+      Previously the decryption was only restricted to the SNS service principal. To make the SQS subscription more
+      secure, it is a good practice to restrict the decryption further and only allow the connected SNS topic to decryption
+      the subscribed queue.`,
+        introducedIn: { v2: "2.32.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_DISABLE_CLOUDWATCH_ROLE]: {
+        type: 1 /* BugFix */,
+        summary: "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment",
+        detailsMd: `
+      Enable this feature flag to change the default behavior for aws-apigateway.RestApi and aws-apigateway.SpecRestApi
+      to _not_ create a CloudWatch role and Account. There is only a single ApiGateway account per AWS
+      environment which means that each time you create a RestApi in your account the ApiGateway account
+      is overwritten. If at some point the newest RestApi is deleted, the ApiGateway Account and CloudWatch
+      role will also be deleted, breaking any existing ApiGateways that were depending on them.
+
+      When this flag is enabled you should either create the ApiGateway account and CloudWatch role
+      separately _or_ only enable the cloudWatchRole on a single RestApi.
+      `,
+        introducedIn: { v2: "2.38.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_PARTITION_LITERALS]: {
+        type: 1 /* BugFix */,
+        summary: "Make ARNs concrete if AWS partition is known",
+        // eslint-disable-next-line @cdklabs/no-literal-partition
+        detailsMd: `
+      Enable this feature flag to get partition names as string literals in Stacks with known regions defined in
+      their environment, such as "aws" or "aws-cn".  Previously the CloudFormation intrinsic function
+      "Ref: AWS::Partition" was used.  For example:
+
+      \`\`\`yaml
+      Principal:
+        AWS:
+          Fn::Join:
+            - ""
+            - - "arn:"
+              - Ref: AWS::Partition
+              - :iam::123456789876:root
+      \`\`\`
+
+      becomes:
+
+      \`\`\`yaml
+      Principal:
+        AWS: "arn:aws:iam::123456789876:root"
+      \`\`\`
+
+      The intrinsic function will still be used in Stacks where no region is defined or the region's partition
+      is unknown.
+      `,
+        introducedIn: { v2: "2.38.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EVENTS_TARGET_QUEUE_SAME_ACCOUNT]: {
+        type: 1 /* BugFix */,
+        summary: "Event Rules may only push to encrypted SQS queues in the same account",
+        detailsMd: `
+      This flag applies to SQS Queues that are used as the target of event Rules. When enabled, only principals
+      from the same account as the Rule can send messages. If a queue is unencrypted, this restriction will
+      always apply, regardless of the value of this flag.
+      `,
+        introducedIn: { v2: "2.51.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER]: {
+        type: 1 /* BugFix */,
+        summary: 'Avoid setting the "ECS" deployment controller when adding a circuit breaker',
+        detailsMd: `
+      Enable this feature flag to avoid setting the "ECS" deployment controller when adding a circuit breaker to an
+      ECS Service, as this will trigger a full replacement which fails to deploy when using set service names.
+      This does not change any behaviour as the default deployment controller when it is not defined is ECS.
+
+      This is a feature flag as the new behavior provides a better default experience for the users.
+      `,
+        introducedIn: { v2: "2.51.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature to create default policy names for imported roles that depend on the stack the role is in.",
+        detailsMd: `
+      Without this, importing the same role in multiple places could lead to the permissions given for one version of the imported role
+      to overwrite permissions given to the role at a different place where it was imported. This was due to all imported instances
+      of a role using the same default policy name.
+
+      This new implementation creates default policy names based on the constructs node path in their stack.
+      `,
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Use S3 Bucket Policy instead of ACLs for Server Access Logging",
+        detailsMd: `
+      Enable this feature flag to use S3 Bucket Policy for granting permission for Server Access Logging
+      rather than using the canned \`LogDeliveryWrite\` ACL. ACLs do not work when Object Ownership is
+      enabled on the bucket.
+
+      This flag uses a Bucket Policy statement to allow Server Access Log delivery, following best
+      practices for S3.
+
+      @see https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html
+    `,
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ROUTE53_PATTERNS_USE_CERTIFICATE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use the official `Certificate` resource instead of `DnsValidatedCertificate`",
+        detailsMd: `
+      Enable this feature flag to use the official CloudFormation supported \`Certificate\` resource instead
+      of the deprecated \`DnsValidatedCertificate\` construct. If this flag is enabled and you are creating
+      the stack in a region other than us-east-1 then you must also set \`crossRegionReferences=true\` on the
+      stack.
+      `,
+        introducedIn: { v2: "2.61.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Define a `DnsValidatedCertificate` explicitly and pass in the `certificate` property"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Whether to install the latest SDK by default in AwsCustomResource",
+        detailsMd: `
+      This was originally introduced and enabled by default to not be limited by the SDK version
+      that's installed on AWS Lambda. However, it creates issues for Lambdas bound to VPCs that
+      do not have internet access, or in environments where 'npmjs.com' is not available.
+
+      The recommended setting is to disable the default installation behavior, and pass the
+      flag on a resource-by-resource basis to enable it if necessary.
+    `,
+        compatibilityWithOldBehaviorMd: "Set installLatestAwsSdk: true on all resources that need it.",
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DATABASE_PROXY_UNIQUE_RESOURCE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Use unique resource name for Database Proxy",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`DatabaseProxy\` is
+      to use \`id\` of the constructor for \`dbProxyName\` when it's not specified in the argument.
+      In this case, users can't deploy \`DatabaseProxy\`s that have the same \`id\` in the same region.
+
+      If this flag is set, the default behavior is to use unique resource names for each \`DatabaseProxy\`.
+
+      This is a feature flag as the old behavior was technically incorrect, but users may have come to depend on it.
+    `,
+        introducedIn: { v2: "2.65.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP]: {
+        type: 1 /* BugFix */,
+        summary: "Remove CloudWatch alarms from deployment group",
+        detailsMd: `
+      Enable this flag to be able to remove all CloudWatch alarms from a deployment group by removing
+      the alarms from the construct. If this flag is not set, removing all alarms from the construct
+      will still leave the alarms configured for the deployment group.
+    `,
+        introducedIn: { v2: "2.65.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Include authorizer configuration in the calculation of the API deployment logical ID.",
+        detailsMd: `
+      The logical ID of the AWS::ApiGateway::Deployment resource is calculated by hashing
+      the API configuration, including methods, and resources, etc. Enable this feature flag
+      to also include the configuration of any authorizer attached to the API in the
+      calculation, so any changes made to an authorizer will create a new deployment.
+      `,
+        introducedIn: { v2: "2.66.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA]: {
+        type: 1 /* BugFix */,
+        summary: "Define user data for a launch template by default when a machine image is provided.",
+        detailsMd: `
+      The ec2.LaunchTemplate construct did not define user data when a machine image is
+      provided despite the document. If this is set, a user data is automatically defined
+      according to the OS of the machine image.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.67.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "SecretTargetAttachments uses the ResourcePolicy of the attached Secret.",
+        detailsMd: `
+      Enable this feature flag to make SecretTargetAttachments use the ResourcePolicy of the attached Secret.
+      SecretTargetAttachments are created to connect a Secret to a target resource.
+      In CDK code, they behave like regular Secret and can be used as a stand-in in most situations.
+      Previously, adding to the ResourcePolicy of a SecretTargetAttachment did attempt to create a separate ResourcePolicy for the same Secret.
+      However Secrets can only have a single ResourcePolicy, causing the CloudFormation deployment to fail.
+
+      When enabling this feature flag for an existing Stack, ResourcePolicies created via a SecretTargetAttachment will need replacement.
+      This won't be possible without intervention due to limitation outlined above.
+      First remove all permissions granted to the Secret and deploy without the ResourcePolicies.
+      Then you can re-add the permissions and deploy again.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.67.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [REDSHIFT_COLUMN_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Whether to use an ID to track Redshift column changes",
+        detailsMd: `
+      Redshift columns are identified by their \`name\`. If a column is renamed, the old column
+      will be dropped and a new column will be created. This can cause data loss.
+
+      This flag enables the use of an \`id\` attribute for Redshift columns. If this flag is enabled, the
+      internal CDK architecture will track changes of Redshift columns through their \`id\`, rather
+      than their \`name\`. This will prevent data loss when columns are renamed.
+
+      **NOTE** - Enabling this flag comes at a **risk**. When enabled, update the \`id\`s of all columns,
+      **however** do not change the \`names\`s of the columns. If the \`name\`s of the columns are changed during
+      initial deployment, the columns will be dropped and recreated, causing data loss. After the initial deployment
+      of the \`id\`s, the \`name\`s of the columns can be changed without data loss.
+      `,
+        introducedIn: { v2: "2.68.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_EMR_SERVICE_POLICY_V2]: {
+        type: 1 /* BugFix */,
+        summary: "Enable AmazonEMRServicePolicy_v2 managed policies",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`EmrCreateCluster\` is
+      to use \`AmazonElasticMapReduceRole\` managed policies.
+
+      If this flag is set, the default behavior is to use the new \`AmazonEMRServicePolicy_v2\`
+      managed policies.
+
+      This is a feature flag as the old behavior will be deprecated, but some resources may require manual
+      intervention since they might not have the appropriate tags propagated automatically.
+      `,
+        introducedIn: { v2: "2.72.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_RESTRICT_DEFAULT_SECURITY_GROUP]: {
+        type: 0 /* ApiDefault */,
+        summary: "Restrict access to the VPC default security group",
+        detailsMd: `
+      Enable this feature flag to remove the default ingress/egress rules from the
+      VPC default security group.
+
+      When a VPC is created, a default security group is created as well and this cannot
+      be deleted. The default security group is created with ingress/egress rules that allow
+      _all_ traffic. [AWS Security best practices recommend](https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-2)
+      removing these ingress/egress rules in order to restrict access to the default security group.
+    `,
+        introducedIn: { v2: "2.78.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: `
+      To allow all ingress/egress traffic to the VPC default security group you
+      can set the \`restrictDefaultSecurityGroup: false\`.
+    `
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Generate a unique id for each RequestValidator added to a method",
+        detailsMd: `
+      This flag allows multiple RequestValidators to be added to a RestApi when
+      providing the \`RequestValidatorOptions\` in the \`addMethod()\` method.
+
+      If the flag is not set then only a single RequestValidator can be added in this way.
+      Any additional RequestValidators have to be created directly with \`new RequestValidator\`.
+    `,
+        introducedIn: { v2: "2.78.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_ALIAS_NAME_REF]: {
+        type: 1 /* BugFix */,
+        summary: "KMS Alias name and keyArn will have implicit reference to KMS Key",
+        detailsMd: `
+      This flag allows an implicit dependency to be created between KMS Alias and KMS Key
+      when referencing key.aliasName or key.keyArn.
+
+      If the flag is not set then a raw string is passed as the Alias name and no
+      implicit dependencies will be set.
+    `,
+        introducedIn: { v2: "2.83.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL]: {
+        type: 1 /* BugFix */,
+        summary: "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition",
+        detailsMd: `
+      This flag enables the grant methods (grant, grantDecrypt, grantEncrypt, etc.) on Aliases imported
+      by name to grant permissions based on the 'kms:ResourceAliases' condition rather than no-op grants.
+      When disabled, grant calls on imported aliases will be dropped (no-op) to maintain compatibility.
+    `,
+        introducedIn: { v2: "2.202.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Remove calls to the grant* methods on the aliases referenced by name"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AUTOSCALING_GENERATE_LAUNCH_TEMPLATE]: {
+        type: 1 /* BugFix */,
+        summary: "Generate a launch template when creating an AutoScalingGroup",
+        detailsMd: `
+      Enable this flag to allow AutoScalingGroups to generate a launch template when being created.
+      Launch configurations have been deprecated and cannot be created in AWS Accounts created after
+      December 31, 2023. Existing 'AutoScalingGroup' properties used for creating a launch configuration
+      will now create an equivalent 'launchTemplate'. Alternatively, users can provide an explicit
+      'launchTemplate' or 'mixedInstancesPolicy'. When this flag is enabled a 'launchTemplate' will
+      attempt to set user data according to the OS of the machine image if explicit user data is not
+      provided.
+    `,
+        introducedIn: { v2: "2.88.0" },
+        compatibilityWithOldBehaviorMd: `
+      If backwards compatibility needs to be maintained due to an existing autoscaling group
+      using a launch config, set this flag to false.
+    `,
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION]: {
+        type: 1 /* BugFix */,
+        summary: "Include the stack prefix in the stack name generation process",
+        detailsMd: `
+      This flag prevents the prefix of a stack from making the stack's name longer than the 128 character limit.
+
+      If the flag is set, the prefix is included in the stack name generation process.
+      If the flag is not set, then the prefix of the stack is prepended to the generated stack name.
+
+      **NOTE** - Enabling this flag comes at a **risk**. If you have already deployed stacks, changing the status of this
+      feature flag can lead to a change in stacks' name. Changing a stack name mean recreating the whole stack, which
+      is not viable in some productive setups.
+    `,
+        introducedIn: { v2: "2.84.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_DENY_ANONYMOUS_ACCESS]: {
+        type: 0 /* ApiDefault */,
+        summary: "EFS denies anonymous clients accesses",
+        detailsMd: `
+      This flag adds the file system policy that denies anonymous clients
+      access to \`efs.FileSystem\`.
+
+      If this flag is not set, \`efs.FileSystem\` will allow all anonymous clients
+      that can access over the network.`,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `allowAnonymousAccess: true` so allow anonymous clients access."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables support for Multi-AZ with Standby deployment for opensearch domains",
+        detailsMd: `
+      If this is set, an opensearch domain will automatically be created with
+      multi-az with standby enabled.
+    `,
+        introducedIn: { v2: "2.88.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `capacity.multiAzWithStandbyEnabled: false` to `Domain` construct to restore the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_NODEJS_USE_LATEST_RUNTIME]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default",
+        detailsMd: `
+      If this is set, and a \`runtime\` prop is not passed to, Lambda NodeJs
+      functions will use the latest version of the runtime provided by the Lambda
+      service. Do not use this if you your lambda function is reliant on dependencies
+      shipped as part of the runtime environment.
+    `,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `runtime: lambda.Runtime.NODEJS_16_X` to `Function` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet.",
+        detailsMd: `
+      When this feature flag is enabled, each mount target will have a stable
+      logicalId that is linked to the associated subnet. If the flag is set to
+      false then the logicalIds of the mount targets can change if the number of
+      subnets changes.
+
+      Set this flag to false for existing mount targets.
+    `,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change.",
+        detailsMd: `
+      When this feature flag is enabled, a scope of \`InstanceParameterGroup\` for
+      \`AuroraClusterInstance\` with each parameters will change to AuroraClusterInstance
+      from AuroraCluster.
+
+      If the flag is set to false then it can only make one \`AuroraClusterInstance\`
+      with each \`InstanceParameterGroup\` in the AuroraCluster.
+    `,
+        introducedIn: { v2: "2.97.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id.",
+        detailsMd: `
+      When this feature flag is enabled, we use the IGraphqlApi ARN rather than ID when creating or updating CfnSourceApiAssociation in
+      the GraphqlApi construct. Using the ARN allows the association to support an association with a source api or merged api in another account.
+      Note that for existing source api associations created with this flag disabled, enabling the flag will lead to a resource replacement.
+    `,
+        introducedIn: { v2: "2.97.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials.",
+        detailsMd: `
+      The \`credentials\` property on the \`DatabaseClusterFromSnapshotProps\`
+      interface was deprecated with the new \`snapshotCredentials\` property being
+      recommended. Before deprecating \`credentials\`, a secret would be generated
+      while rendering credentials if the \`credentials\` property was undefined or
+      if a secret wasn't provided via the \`credentials\` property. This behavior
+      is replicated with the new \`snapshotCredentials\` property, but the original
+      \`credentials\` secret can still be created resulting in an extra database
+      secret.
+
+      Set this flag to prevent rendering deprecated \`credentials\` and creating an
+      extra database secret when only using \`snapshotCredentials\` to create an RDS
+      database cluster from a snapshot.
+    `,
+        introducedIn: { v2: "2.98.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the CodeCommit source action is using the default branch name 'main'.",
+        detailsMd: `
+      When setting up a CodeCommit source action for the source stage of a pipeline, please note that the
+      default branch is 'master'.
+      However, with the activation of this feature flag, the default branch is updated to 'main'.
+    `,
+        introducedIn: { v2: "2.103.1" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID.",
+        detailsMd: `
+      When this feature flag is enabled, a logical ID of \`LambdaPermission\` for a
+      \`LambdaAction\` will include an alarm ID. Therefore multiple alarms for the same Lambda
+      can be created with \`LambdaAction\`.
+
+      If the flag is set to false then it can only make one alarm for the Lambda with
+      \`LambdaAction\`.
+    `,
+        introducedIn: { v2: "2.124.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables Pipeline to set the default value for crossAccountKeys to false.",
+        detailsMd: `
+      When this feature flag is enabled, and the \`crossAccountKeys\` property is not provided in a \`Pipeline\`
+      construct, the construct automatically defaults the value of this property to false.
+    `,
+        introducedIn: { v2: "2.127.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `crossAccountKeys: true` to `Pipeline` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables Pipeline to set the default pipeline type to V2.",
+        detailsMd: `
+      When this feature flag is enabled, and the \`pipelineType\` property is not provided in a \`Pipeline\`
+      construct, the construct automatically defaults the value of this property to \`PipelineType.V2\`.
+    `,
+        introducedIn: { v2: "2.133.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `pipelineType: PipelineType.V1` to `Pipeline` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only.",
+        detailsMd: `
+      When this feature flag is enabled and calling KMS key grant method, the created IAM policy will reduce the resource scope from
+      '*' to this specific granting KMS key.
+    `,
+        introducedIn: { v2: "2.134.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove the root account principal from PipelineAssetsFileRole trust policy",
+        detailsMd: `
+      When this feature flag is enabled, the root account principal will not be added to the trust policy of asset role.
+      When this feature flag is disabled, it will keep the root account principal in the trust policy.
+    `,
+        introducedIn: { v2: "2.141.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_NODEGROUP_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix.",
+        detailsMd: `
+      When this feature flag is enabled, the nodegroupName attribute will be exactly the name of the nodegroup without
+      any prefix.
+    `,
+        introducedIn: { v2: "2.139.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_USE_NATIVE_OIDC_PROVIDER]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider).",
+        detailsMd: `
+      When this feature flag is enabled, EKS clusters will use the native AWS::IAM::OIDCProvider
+      CloudFormation resource instead of the custom resource provider for creating OIDC providers.
+
+			WARNING: Enabling this flag on a cluster with an existing OIDC provider created by the custom resource (iam.OpenIDConnectProvider)
+			will cause the OIDC provider to be replaced with the native resource, which may lead to disruption.
+
+			To migrate in place without disruption, follow the guide at: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/aws-eks/README.md#migrating-from-the-deprecated-eksopenidconnectprovider-to-eksoidcprovidernative
+    `,
+        introducedIn: { v2: "2.237.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use the custom resource provider."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EBS_DEFAULT_GP3]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the default volume type of the EBS volume will be GP3",
+        detailsMd: `
+      When this featuer flag is enabled, the default volume type of the EBS volume will be \`EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3\`.
+    `,
+        introducedIn: { v2: "2.140.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `volumeType: EbsDeviceVolumeType.GENERAL_PURPOSE_SSD` to `Volume` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, remove default deployment alarm settings",
+        detailsMd: `
+      When this feature flag is enabled, remove the default deployment alarm settings when creating a AWS ECS service.
+    `,
+        introducedIn: { v2: "2.143.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Set AWS::ECS::Service 'DeploymentAlarms' manually to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default",
+        detailsMd: `
+      This results in 'logApiResponseData' being passed as true to the custom resource provider. This will cause the custom resource handler to receive an 'Update' event. If you don't
+      have an SDK call configured for the 'Update' event and you're dependent on specific SDK call response data, you will see this error from CFN:
+
+      CustomResource attribute error: Vendor response doesn't contain  attribute in object. See https://github.com/aws/aws-cdk/issues/29949) for more details.
+
+      Unlike most feature flags, we don't recommend setting this feature flag to true. However, if you're using the 'AwsCustomResource' construct with 'logApiResponseData' as true in
+      the event object, then setting this feature flag will keep this behavior. Otherwise, setting this feature flag to false will trigger an 'Update' event by removing the 'logApiResponseData'
+      property from the event object.
+    `,
+        introducedIn: { v2: "2.145.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack.",
+        detailsMd: `
+      Currently, adding notifications to a bucket where it was created by ourselves will override notification added where it is imported.
+
+      When this feature flag is enabled, adding notifications to a bucket in the current stack will only update notification defined in this stack.
+      Other notifications that are not managed by this stack will be kept.
+    `,
+        introducedIn: { v2: "2.155.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
+        detailsMd: `
+    Currently, 'inputPath' and 'outputPath' from the TaskStateBase Props is being used under BedrockInvokeModelProps to define S3URI under 'input' and 'output' fields
+    of State Machine Task definition.
+
+    When this feature flag is enabled, specify newly introduced props 's3InputUri' and
+    's3OutputUri' to populate S3 uri under input and output fields in state machine task definition for Bedrock invoke model.
+
+    `,
+        introducedIn: { v2: "2.156.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use input and output path fields for s3 URI"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EXPLICIT_STACK_TAGS]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, stack tags need to be assigned explicitly on a Stack.",
+        detailsMd: `
+    Without this feature flag enabled, if tags are added to a Stack using
+    \`Tags.of(scope).add(...)\`, they will be added to both the stack and all resources
+    in the stack template.
+
+    That leads to the tags being applied twice: once in the template, and once
+    again automatically by CloudFormation, which will apply all stack tags to
+    all resources in the stack. This leads to loss of control, as the
+    \`excludeResourceTypes\` option of the Tags API will not have any effect.
+
+    With this flag enabled, tags added to a stack using \`Tags.of(...)\` are ignored,
+    and Stack tags must be configured explicitly on the Stack object.
+    `,
+        introducedIn: { v2: "2.205.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Configure stack-level tags using `new Stack(..., { tags: { ... } })`."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration",
+        detailsMd: `
+    Currently, we automatically add a number of cloudwatch permissions to the task role when no cloudwatch log group is
+    specified as logConfiguration and it will grant 'Resources': ['*'] to the task role.
+
+    When this feature flag is enabled, we will only grant the necessary permissions when users specify cloudwatch log group.
+    `,
+        introducedIn: { v2: "2.159.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to continue grant permissions to log group when no log group is specified"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`TableV2\` is to use a different \`resourcePolicy\` for each replica.
+
+      If this flag is set to false, the behavior is that each replica shares the same \`resourcePolicy\` as the source table.
+      This will prevent you from creating a new table which has an additional replica and a resource policy.
+
+      This is a feature flag as the old behavior was technically incorrect but users may have come to depend on it.`,
+        introducedIn: { v2: "2.164.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_SUM_TIMEOUT_ENABLED]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together.",
+        detailsMd: `
+      Currently is both initOptions.timeout and resourceSignalTimeout are both specified in the options for creating an EC2 Instance,
+      only the value from 'resourceSignalTimeout' will be used.
+
+      When this feature flag is enabled, if both initOptions.timeout and resourceSignalTimeout are specified, the values will to be summed together.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.160.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn.",
+        detailsMd: `
+        Currently, when using a Lambda authorizer with an AppSync GraphQL API, the AWS CDK automatically generates the necessary AWS::Lambda::Permission
+        to allow the AppSync API to invoke the Lambda authorizer. This permission is overly permissive because it lacks a SourceArn, meaning
+        it allows invocations from any source.
+
+        When this feature flag is enabled, the AWS::Lambda::Permission will be properly scoped with the SourceArn corresponding to the
+        specific AppSync GraphQL API.
+        `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.161.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`",
+        detailsMd: `
+      Currently, the value of the property 'instanceResourceId' in construct 'DatabaseInstanceReadReplica' is not correct, and set to 'DbInstanceArn' which is not correct when it is used to create the IAM Policy in the grantConnect method.
+
+      When this feature flag is enabled, the value of that property will be as expected set to 'DbiResourceId' attribute, and that will fix the grantConnect method.
+    `,
+        introducedIn: { v2: "2.161.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use `DbInstanceArn` as value for property `instanceResourceId`"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values.",
+        detailsMd: `
+    Without enabling this feature flag, \`cfn-include\` will silently drop resource update or create policies that contain CFN Intrinsics if they include non-primitive values.
+
+    Enabling this feature flag will make \`cfn-include\` throw on these templates, unless you specify the logical ID of the resource in the 'unhydratedResources' property.
+    `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.161.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications.",
+        detailsMd: `
+      Currently, when bundling Lambda functions with the non-latest runtime that supports AWS SDK JavaScript (v3), only the '@aws-sdk/*' packages are excluded by default.
+      However, this can cause version mismatches between the '@aws-sdk/*' and '@smithy/*' packages, as they are tightly coupled dependencies in AWS SDK v3.
+
+      When this feature flag is enabled, both '@aws-sdk/*' and '@smithy/*' packages will be excluded during the bundling process. This ensures that no mismatches
+      occur between these tightly coupled dependencies when using the AWS SDK v3 in Lambda functions.
+    `,
+        introducedIn: { v2: "2.161.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN.",
+        detailsMd: `
+      Currently, in the IAM Run Ecs policy generated by SFN EcsRunTask(), CDK will construct the ARN with wildcard attached at the end.
+      The revision number at the end will be replaced with a wildcard which it shouldn't.
+
+      When this feature flag is enabled, if the task definition is created in the stack, the 'Resource' section will 'Ref' the taskDefinition.
+    `,
+        introducedIn: { v2: "2.163.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2.",
+        detailsMd: `
+      Currently, if the machineImage property of the BastionHost construct defaults to using the latest Amazon Linux 2
+      AMI. Amazon Linux 2 hits end-of-life in June 2025, so using Amazon Linux 2023 by default is a more future-proof
+      and secure option.
+
+      When this feature flag is enabled, if you do not pass the machineImage property to the BastionHost construct,
+      the latest Amazon Linux 2023 version will be used instead of Amazon Linux 2.
+    `,
+        introducedIn: { v2: "2.172.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag or explicitly pass an Amazon Linux 2 machine image to the BastionHost construct."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ASPECT_STABILIZATION]: {
+        type: 2 /* VisibleContext */,
+        summary: "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
+        detailsMd: `
+      Previously, Aspects were invoked in a single pass of the construct tree.
+      This meant that Aspects which created other Aspects were not run, and Aspects that created new nodes in the tree sometimes did not inherit their parent Aspects.
+
+      When this feature flag is enabled, a stabilization loop is run to recurse the construct tree multiple times when invoking Aspects.
+    `,
+        unconfiguredBehavesLike: { v2: true },
+        introducedIn: { v2: "2.172.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource.",
+        detailsMd: `
+    When this feature flag is enabled, a new method will be used to get the DNS Name of the user pool domain target. The old method
+    creates a custom resource internally, but the new method doesn't need a custom resource.
+
+    If the flag is set to false then a custom resource will be created when using \`UserPoolDomainTarget\`.
+    `,
+        introducedIn: { v2: "2.174.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere",
+        detailsMd: `
+      For internet facing ALBs with 'dualstack-without-public-ipv4' IP address type, the default security group rules
+      will allow IPv6 ingress from anywhere (::/0). Previously, the default security group rules would only allow IPv4 ingress.
+
+      Using a feature flag to make sure existing customers who might be relying
+      on the overly restrictive permissions are not broken.`,
+        introducedIn: { v2: "2.176.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to only allow IPv4 ingress in the default security group rules."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the default behaviour of OIDC provider will reject unauthorized connections",
+        detailsMd: `
+      When this feature flag is enabled, the default behaviour of OIDC Provider's custom resource handler will
+      default to reject unauthorized connections when downloading CA Certificates.
+
+      When this feature flag is disabled, the behaviour will be the same as current and will allow downloading
+      thumbprints from unsecure connections.`,
+        introducedIn: { v2: "2.177.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to allow unsecure OIDC connection."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_ADDITIONAL_METADATA_COLLECTION]: {
+        type: 2 /* VisibleContext */,
+        summary: "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues.",
+        detailsMd: `
+    When this feature flag is enabled, CDK expands the scope of usage data collection to include the following:
+      * L2 construct property keys - Collect which property keys you use from the L2 constructs in your app. This includes property keys nested in dictionary objects.
+      * L2 construct property values of BOOL and ENUM types - Collect property key values of only BOOL and ENUM types. All other types, such as string values or construct references will be redacted.
+      * L2 construct method usage - Collection method name, parameter keys and parameter values of BOOL and ENUM type.
+    `,
+        introducedIn: { v2: "2.178.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY]: {
+        type: 1 /* BugFix */,
+        summary: "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement",
+        detailsMd: `
+      [Deprecated default feature] When this feature flag is enabled, Lambda will create new inline policies with AddToRolePolicy.
+      The purpose of this is to prevent lambda from creating a dependency on the Default Policy Statement.
+      This solves an issue where a circular dependency could occur if adding lambda to something like a Cognito Trigger, then adding the User Pool to the lambda execution role permissions.
+      However in the current implementation, we have removed a dependency of the lambda function on the policy. In addition to this, a Role will be attached to the Policy instead of an inline policy being attached to the role.
+      This will create a data race condition in the CloudFormation template because the creation of the Lambda function no longer waits for the policy to be created. Having said that, we are not deprecating the feature (we are defaulting the feature flag to false for new stacks) since this feature can still be used to get around the circular dependency issue (issue-7016) particularly in cases where the lambda resource creation doesnt need to depend on the policy resource creation.
+      We recommend to unset the feature flag if already set which will restore the original behavior.
+    `,
+        introducedIn: { v2: "2.180.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SET_UNIQUE_REPLICATION_ROLE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication.",
+        detailsMd: `
+      When performing cross-account S3 replication, we need to explicitly specify a role name for the replication execution role.
+      When this feature flag is enabled, a unique role name is specified only when performing cross-account replication.
+      When disabled, 'CDKReplicationRole' is always specified.
+    `,
+        introducedIn: { v2: "2.182.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove the root account principal from Stage addActions trust policy",
+        detailsMd: `
+      When this feature flag is enabled, the root account principal will not be added to the trust policy of stage role.
+      When this feature flag is disabled, it will keep the root account principal in the trust policy.
+
+      For cross-account cases, when this feature flag is enabled the trust policy will be scoped to the role only.
+      If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED.
+    `,
+        introducedIn: { v2: "2.184.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EVENTBUS_POLICY_SID_REQUIRED]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals.",
+        detailsMd: `
+      Currently, when granting permissions to service principals using grantPutEventsTo(), the operation silently fails
+      because service principals require resource policies with Statement IDs.
+
+      When this flag is enabled:
+      - Resource policies will be created with Statement IDs for service principals
+      - The operation will succeed as expected
+
+      When this flag is disabled:
+      - A warning will be emitted
+      - The grant operation will be dropped
+      - No permissions will be added
+
+      This fixes the issue where permissions were silently not being added for service principals.
+    `,
+        introducedIn: { v2: "2.186.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ASPECT_PRIORITIES_MUTATING]: {
+        type: 0 /* ApiDefault */,
+        summary: "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING.",
+        detailsMd: `
+      Custom Aspects you add have a priority of DEFAULT (500) if you don't
+      assign a more specific priority, which is higher than MUTATING (200). This
+      is relevant if a custom Aspect you add and an Aspect added by CDK try to
+      configure the same value.
+
+      If this flag is set to false (old behavior), Aspects added by CDK are also
+      added with a priority of DEFAULT; because their priorities are equal, the
+      Aspects that is closest to the target construct executes last (either
+      yours or the Aspect added by the CDK).
+
+      If this flag is set to true (recommended behavior), Aspects added by CDK are added
+      with a priority of MUTATING, and custom Aspects you add with DEFAULT
+      priority will always execute last and "win" the write. If you need Aspects
+      added by CDK to run after yours, your Aspect needs to have a priority of
+      MUTATING or lower.
+
+      This setting only applies to Aspects that were already being added for you
+      before version 2.172.0. Aspects introduced since that version will always
+      be added with a priority of MUTATING, independent of this feature flag.
+    `,
+        introducedIn: { v2: "2.189.1" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: `
+      To add mutating Aspects controlling construct values that can be overridden
+      by Aspects added by CDK, give them MUTATING priority:
+
+      \`\`\`
+      Aspects.of(stack).add(new MyCustomAspect(), {
+        priority: AspectPriority.MUTATING,
+      });
+      \`\`\`
+    `
+      },
+      [DYNAMODB_TABLE_RETAIN_TABLE_REPLICA]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, table replica will be default to the removal policy of source table unless specified otherwise.",
+        detailsMd: `
+      Currently, table replica will always be deleted when stack deletes regardless of source table's deletion policy.
+      When enabled, table replica will be default to the removal policy of source table unless specified otherwise.
+    `,
+        introducedIn: { v2: "2.187.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LOG_USER_POOL_CLIENT_SECRET_VALUE]: {
+        type: 0 /* ApiDefault */,
+        summary: "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs.",
+        detailsMd: `
+      When this feature flag is enabled, the SDK API call response to describe user pool client values will be logged in the custom
+      resource lambda function logs.
+
+      When this feature flag is disabled, the SDK API call response to describe user pool client values will not be logged in the custom
+      resource lambda function logs.
+    `,
+        introducedIn: { v2: "2.187.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: false,
+        compatibilityWithOldBehaviorMd: "Enable the feature flag to keep the old behavior and log the client secret values"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, scopes down the trust policy for the cross-account action role",
+        detailsMd: `
+        When this feature flag is enabled, the trust policy of the cross-account action role will be scoped to the pipeline role.
+        If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED.
+        When this feature flag is disabled, it will keep the root account principal in the trust policy.
+      `,
+        introducedIn: { v2: "2.189.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter",
+        detailsMd: `
+      When this feature flag is enabled, the resultWriterV2 property is used instead of resultWriter in DistributedMap class.
+      resultWriterV2 uses ResultWriterV2 class in StepFunctions ASL and can have either Bucket/Prefix or WriterConfig or both.
+    `,
+        introducedIn: { v2: "2.188.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag and set resultWriter in DistributedMap"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS]: {
+        type: 1 /* BugFix */,
+        summary: "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions.",
+        detailsMd: `
+      When this feature flag is enabled, a S3 trust policy will be added to the KMS key resource policy for encrypted SNS subscriptions.
+          `,
+        introducedIn: { v2: "2.195.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC.",
+        detailsMd: `
+      When this feature flag is enabled, EgressOnlyGateway resource will not be created when you create a vpc with only public subnets.
+          `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: true
+      },
+      /// ///////////////////////////////////////////////////////////////////
+      [USE_RESOURCEID_FOR_VPCV2_MIGRATION]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, use resource IDs for VPC V2 migration",
+        detailsMd: `
+        When this feature flag is enabled, the VPC V2 migration will use resource IDs instead of getAtt references
+        for migrating resources from VPC V1 to VPC V2. This helps ensure a smoother migration path between
+        the two versions.
+      `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: false,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use getAtt references for VPC V2 migration"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined.",
+        detailsMd: `
+      When BlockPublicAccess is not set at all, s3's default behavior will be to set all options to true in aws console.
+      The previous behavior in cdk before this feature was; if only some of the BlockPublicAccessOptions were set (not all 4), then the ones undefined would default to false.
+      This is counter intuitive to the console behavior where the options would start in true state and a user would uncheck the boxes as needed.
+      The new behavior from this feature will allow a user, for example, to set 1 of the 4 BlockPublicAccessOpsions to false, and on deployment the other 3 will remain true.
+    `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_CDK_MANAGED_LAMBDA_LOGGROUP]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, CDK creates and manages loggroup for the lambda function",
+        detailsMd: `
+        When this feature flag is enabled, CDK will create a loggroup for lambda function with default properties
+        which supports CDK features Tag propagation, Property Injectors, Aspects
+        if the cdk app doesnt pass a 'logRetention' or 'logGroup' explicitly.
+        LogGroups created via 'logRetention' do not support Tag propagation, Property Injectors, Aspects.
+        LogGroups created via 'logGroup' created in CDK support Tag propagation, Property Injectors, Aspects.
+
+        When this feature flag is disabled, a loggroup is created by Lambda service on first invocation
+        of the function (existing behavior).
+        LogGroups created in this way do not support Tag propagation, Property Injectors, Aspects.
+
+        DO NOT ENABLE: If you have an existing app defining a lambda function and
+        have not supplied a logGroup or logRetention prop and your lambda function has
+        executed at least once, the logGroup has been already created with the same name
+        so your deployment will start failing.
+        Refer aws-lambda/README.md for more details on Customizing Log Group creation.
+      `,
+        introducedIn: { v2: "2.200.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to let lambda service create logGroup or specify logGroup or logRetention"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, Network Load Balancer will be created with a security group by default.",
+        detailsMd: `
+      When this feature flag is enabled, Network Load Balancer will be created with a security group by default.
+    `,
+        introducedIn: { v2: "2.222.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to create Network Load Balancer without a security group by default."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
+        detailsMd: `
+      When this feature flag is enabled, the JSONPath apiEndpoint value will be resolved dynamically at runtime, while slightly increasing the size of the state machine definition.
+      When disabled, the JSONPath apiEndpoint property will only support a static string value.
+    `,
+        introducedIn: { v2: "2.221.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement",
+        detailsMd: `
+      When this feature flag is enabled, ECS patterns will generate unique target group IDs that include
+      both the load balancer type (public/private) and load balancer name. This prevents CloudFormation
+      conflicts when switching between public and private load balancers or when changing load balancer names.
+
+      Without this flag, target groups use generic IDs like 'ECS' which can cause conflicts when the
+      underlying load balancer is replaced due to changes in internetFacing or loadBalancerName properties.
+
+      This is a breaking change as it will cause target group replacement when the flag is enabled.
+    `,
+        introducedIn: { v2: "2.221.0" },
+        recommendedValue: true
+      },
+      [ROUTE53_PATTERNS_USE_DISTRIBUTION]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use the `Distribution` resource instead of `CloudFrontWebDistribution`",
+        detailsMd: `
+      Enable this feature flag to use the new \`Distribution\` resource instead
+      of the deprecated \`CloudFrontWebDistribution\` construct.
+      `,
+        introducedIn: { v2: "2.233.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Define a `CloudFrontWebDistribution` explicitly"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions",
+        detailsMd: `
+      When enabled, CloudFront Functions will use cloudfront-js-2.0 runtime by default instead of cloudfront-js-1.0.
+      The runtime can still be configured explicitly using the \`runtime\` property.
+
+      If \`keyValueStore\` is specified, the runtime will always be cloudfront-js-2.0 regardless of this flag.`,
+        introducedIn: { v2: "2.245.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Set `runtime: FunctionRuntime.JS_1_0` explicitly to use the v1.0 runtime."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ELB_USE_POST_QUANTUM_TLS_POLICY]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default",
+        detailsMd: `
+      When this feature flag is enabled, HTTPS and TLS listeners that do not have an explicit
+      \`sslPolicy\` will use the post-quantum cryptography policy
+      \`ELBSecurityPolicy-TLS13-1-2-PQ-2025-09\` by default.
+
+      This policy uses the non-restricted variant (without -Res-) to maintain AES-CBC cipher support
+      for TLS 1.2 clients, ensuring nearly 100% backward compatibility with the previous CDK default.
+      Post-quantum policies provide protection against "Harvest Now, Decrypt Later" attacks using
+      hybrid ML-KEM key exchange.
+
+      When disabled (default), no explicit SSL policy is set, preserving the existing CDK behavior
+      where \`RECOMMENDED_TLS\` (\`ELBSecurityPolicy-TLS13-1-2-2021-06\`) is used.
+    `,
+        introducedIn: { v2: "2.245.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable this feature flag to preserve existing behavior where no explicit SSL policy is set."
+      },
+      [AUTOMATIC_L1_TRAITS]: {
+        type: 0 /* ApiDefault */,
+        summary: "Automatically use the default L1 traits for L1 constructs`",
+        detailsMd: `
+      When enabled, the construct library will apply default L1 traits for types that
+      have no traits defined yet. Traits regulate behaviors such as how to create
+      resource policies, or how to find an encryption key for a given L1 construct.
+      `,
+        introducedIn: { v2: "2.239.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: true },
+        compatibilityWithOldBehaviorMd: "Register traits explicitly for each resource type"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [BATCH_DEFAULT_AL2023]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2",
+        detailsMd: `
+      When enabled, EC2 Batch compute environments (both ECS and EKS) that do not specify an \`imageType\`
+      will default to \`ECS_AL2023\` or \`EKS_AL2023\` instead of the deprecated \`ECS_AL2\` or \`EKS_AL2\`
+      (Amazon Linux 2, reaching EOL June 2026 for ECS; already EOL for EKS).
+
+      For EKS compute environments with a launch template, \`userdataType\` will automatically be set
+      to \`EKS_NODEADM\` when an AL2023 image type is used, as required by the AWS Batch API.
+
+      When disabled, the default \`imageType\` remains \`ECS_AL2\` / \`EKS_AL2\` for backward compatibility.`,
+        introducedIn: { v2: "2.249.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: `Explicitly set \`imageType\` to \`ECS_AL2\` or \`EKS_AL2\` in your compute environment images configuration.
+
+**Warning**: Enabling this flag on existing stacks may cause compute environment replacement, which terminates running jobs. To migrate safely, first pin existing environments to their current imageType explicitly, then enable the flag.`
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_DEFAULT_AL2023]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2",
+        detailsMd: `
+      When enabled, EKS managed node groups that do not specify an \`amiType\` will default to
+      AL2023 AMI types (AL2023_x86_64_STANDARD, AL2023_ARM_64_STANDARD) instead of the deprecated
+      AL2 types (AL2_x86_64, AL2_ARM_64).
+
+      This only affects non-GPU instance types. GPU instances continue to default to AL2_x86_64_GPU
+      because AL2023 splits GPU support into separate NVIDIA and Neuron AMI variants.
+
+      Amazon Linux 2 reached end of support on November 26, 2025. AL2023 is the AWS-recommended default.
+
+      When disabled, the default AMI types remain AL2 for backward compatibility.`,
+        introducedIn: { v2: "2.259.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: `Explicitly set \`amiType\` to the desired AL2 type (e.g., \`NodegroupAmiType.AL2_X86_64\`) in your nodegroup configuration.
+
+**Warning**: Enabling this flag on existing stacks will cause node group replacement, which terminates running pods. To migrate safely, first pin existing node groups to their current amiType explicitly, then enable the flag for new node groups.`
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ANNOTATIONS_IN_VALIDATION_REPORT]: {
+        type: 2 /* VisibleContext */,
+        summary: "Include construct annotations (warnings and errors) in the policy validation report",
+        detailsMd: `
+      When enabled, construct annotations added via \`Annotations.of()\` or \`Validations.of()\`
+      are collected post-synthesis and included in the policy validation report alongside
+      plugin violations. Annotations appear under a "Construct Annotations" source entry.
+
+      When disabled, annotations are only displayed through the CLI's standard metadata
+      output (e.g. \`[Warning at /path] message\`) and do not appear in the validation report.
+
+      Note: enabling this flag may cause annotations to appear twice \u2014 once in the CLI's
+      standard output and once in the validation report \u2014 until the CLI is updated to
+      consolidate both displays.`,
+        introducedIn: { v2: "2.253.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DEFAULT_CROSS_STACK_REFERENCES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Controls whether cross-stack references are strong, weak, or both",
+        detailsMd: `
+      Controls the default type of cross-stack references. Accepted values are
+      \`"strong"\`, \`"weak"\`, and \`"both"\`.
+
+      The flag is read from the **consumer** stack's context, not the producer's.
+
+      - \`"strong"\` (default): Uses ExportWriter/ExportReader custom resources that
+        write values to SSM Parameters in the consuming region. This prevents the
+        producing stack from being deleted while consumers exist.
+      - \`"weak"\`: Uses Fn::GetStackOutput to read an output directly from the
+        producing stack. Simpler (no extra infrastructure), but the producing stack
+        can be deleted independently of consumers.
+      - \`"both"\`: A transitional state for migrating from strong to weak. The producer
+        keeps the ExportWriter (continues writing to SSM) and also adds an Output. The
+        consumer switches to Fn::GetStackOutput. This allows removing the ExportReader
+        without breaking anything.
+
+      **Migration from strong to weak**: set to \`"both"\` and deploy, then set to
+      \`"weak"\` and deploy again.
+
+      **Migration from weak to strong**: set directly to \`"strong"\` (single deployment).`,
+        introducedIn: { v2: "2.254.0" },
+        recommendedValue: "weak",
+        unconfiguredBehavesLike: { v2: "strong" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [VALIDATE_AGAINST_DEFAULT_RULES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Treat CloudFormation Validate findings as errors",
+        detailsMd: `
+      The CDK always validates synthesized templates against a default set of CloudFormation
+      rules during synthesis. These rules include schema validation, best-practice linting,
+      and common misconfiguration detection.
+
+      When this flag is explicitly set to \`true\`, violations are treated as errors and will
+      fail synthesis. When unconfigured, violations are reported as warnings only.`,
+        introducedIn: { v2: "2.262.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_EMPTY_LOAD_BALANCERS]: {
+        type: 1 /* BugFix */,
+        summary: "Render an empty `LoadBalancers` array on an ECS service that has no target groups",
+        detailsMd: `
+      CloudFormation distinguishes between an absent \`LoadBalancers\` property, which leaves the live
+      service configuration untouched, and an empty array, which removes the existing load balancer
+      registrations. Without this flag the CDK omits the property when a service has no target groups,
+      so removing the last target group from a service never reaches the deployed service: it keeps
+      serving traffic from the target groups it was registered in, and a later deployment can fail with
+      \`The target group with targetGroupArn ... does not have an associated load balancer\`.
+
+      When this flag is enabled, a service with no target groups renders \`LoadBalancers: []\` and
+      CloudFormation removes the registrations.
+
+      Enabling this adds \`LoadBalancers: []\` to every ECS service that has no target groups, including
+      services that never had any. Amazon ECS starts a new deployment when a load balancer configuration
+      is added, updated or removed, so expect a one-time deployment of those services.`,
+        introducedIn: { v2: "2.269.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Set this flag to `false` to keep omitting the property, and remove the registrations with `aws ecs update-service --load-balancers '[]'` instead."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS]: {
+        type: 0 /* ApiDefault */,
+        summary: "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS",
+        detailsMd: `
+      When enabled, cache behaviors on a \`Distribution\` that do not specify an explicit
+      \`viewerProtocolPolicy\` default to \`ViewerProtocolPolicy.REDIRECT_TO_HTTPS\` instead of
+      \`ViewerProtocolPolicy.ALLOW_ALL\`, so viewers are redirected from HTTP to HTTPS rather
+      than being served over plaintext HTTP.
+
+      This applies to the default behavior, to \`additionalBehaviors\`, and to behaviors added
+      later with \`addBehavior()\`. An explicitly specified \`viewerProtocolPolicy\` always wins,
+      regardless of this flag.
+
+      Note that \`REDIRECT_TO_HTTPS\` answers an HTTP request with an HTTP 301 redirect, which the
+      viewer then follows with a second request. That additional request is billable.`,
+        introducedIn: { v2: "2.273.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Set `viewerProtocolPolicy: ViewerProtocolPolicy.ALLOW_ALL` explicitly on each behavior to keep the old default."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD]: {
+        type: 1 /* BugFix */,
+        summary: "Render the API Gateway access log destination ARN without the trailing `:*`",
+        detailsMd: `
+      API Gateway stores the access log destination ARN without the trailing \`:*\` that
+      \`LogGroup.logGroupArn\` carries. When the CDK renders the log group \`Arn\` attribute,
+      CloudFormation drift detection reports the stage as \`MODIFIED\` on every run, even
+      though the access logging configuration has not changed.
+
+      When this flag is enabled, \`LogGroupLogDestination\` rebuilds the ARN from the log
+      group name, so the synthesized template matches the value stored by the service and
+      drift detection reports the stage as \`IN_SYNC\`.
+
+      When disabled, the destination ARN keeps using the log group \`Arn\` attribute.
+    `,
+        introducedIn: { v2: "V2NEXT" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Disable this flag to keep using the log group `Arn` attribute as the destination ARN."
+      }
+    };
+    CURRENT_MV = "v2";
+    CURRENT_VERSION_EXPIRED_FLAGS = Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] === void 0).map(([name, _]) => name).sort();
+    CURRENTLY_RECOMMENDED_FLAGS = Object.fromEntries(
+      Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] !== void 0).filter(([_, flag]) => flag.recommendedValue !== flag.unconfiguredBehavesLike?.[CURRENT_MV]).map(([name, flag]) => [name, flag.recommendedValue])
+    );
+    CURRENT_VERSION_FLAG_DEFAULTS = Object.fromEntries(Object.entries(FLAGS).filter(([_, flag]) => flag.unconfiguredBehavesLike?.[CURRENT_MV] !== void 0).map(([name, flag]) => [name, flag.unconfiguredBehavesLike?.[CURRENT_MV]]));
+    FUTURE_FLAGS = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v === "boolean"));
+    NEW_PROJECT_DEFAULT_CONTEXT = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v !== "boolean"));
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/app.ts
+var PATH_METADATA_ENABLE_CONTEXT, ANALYTICS_REPORTING_ENABLED_CONTEXT, PERFORMANCE_REPORTING_ENABLED_CONTEXT, DISABLE_ASSET_STAGING_CONTEXT, DISABLE_METADATA_STACK_TRACE, DISABLE_LOGICAL_ID_METADATA, DISABLE_CREATION_STACK_TRACES, BUNDLING_STACKS;
+var init_app = __esm({
+  "../../aws-cdk-lib/cx-api/lib/app.ts"() {
+    "use strict";
+    PATH_METADATA_ENABLE_CONTEXT = "aws:cdk:enable-path-metadata";
+    ANALYTICS_REPORTING_ENABLED_CONTEXT = "aws:cdk:version-reporting";
+    PERFORMANCE_REPORTING_ENABLED_CONTEXT = "aws:cdk:performance-reporting";
+    DISABLE_ASSET_STAGING_CONTEXT = "aws:cdk:disable-asset-staging";
+    DISABLE_METADATA_STACK_TRACE = "aws:cdk:disable-stack-trace";
+    DISABLE_LOGICAL_ID_METADATA = "aws:cdk:disable-logicalId-metadata";
+    DISABLE_CREATION_STACK_TRACES = "aws:cdk:disable-creation-stack-traces";
+    BUNDLING_STACKS = "aws:cdk:bundling-stacks";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/index.ts
+var init_lib = __esm({
+  "../../aws-cdk-lib/cx-api/lib/index.ts"() {
+    "use strict";
+    init_legacy_moved();
+    init_cxapi();
+    init_features();
+    init_app();
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/index.ts
+var init_cx_api = __esm({
+  "../../aws-cdk-lib/cx-api/index.ts"() {
+    "use strict";
+    init_lib();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/errors.ts
+function renderConstructRootPath(construct) {
+  const rootPath = [];
+  let cur = construct;
+  while (cur !== void 0) {
+    rootPath.push(cur);
+    cur = cur.node.scope;
+  }
+  rootPath.reverse();
+  const ret = new Array();
+  for (let i = 0; i < rootPath.length; i++) {
+    const constructId = rootPath[i].node.id || "<.>";
+    let suffix = "";
+    try {
+      const constructInfo = constructInfoFromConstruct(rootPath[i]);
+      suffix = ` (${constructInfo?.fqn})`;
+    } catch (_) {
+    }
+    const branch = " \u2514\u2500 ";
+    const indent = i > 0 ? " ".repeat(branch.length * (i - 1)) + branch : "";
+    ret.push(`    ${indent}${constructId}${suffix}`);
+  }
+  return ret.join("\n");
+}
+function maybeWriteErrorCode(errorCode) {
+  const file = process.env[ERRORFILE_ENV];
+  if (!file) {
+    return;
+  }
+  fs.writeFileSync(file, errorCode, "utf-8");
+}
+var fs, CONSTRUCT_ERROR_SYMBOL, VALIDATION_ERROR_SYMBOL, ASSUMPTION_ERROR_SYMBOL, EXECUTION_ERROR_SYMBOL, ConstructError, ValidationError, UnscopedValidationError, AssumptionError, ExecutionError;
+var init_errors = __esm({
+  "../../aws-cdk-lib/core/lib/errors.ts"() {
+    "use strict";
+    fs = __toESM(require("fs"));
+    init_runtime_info();
+    init_stack_trace();
+    init_cx_api();
+    CONSTRUCT_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError");
+    VALIDATION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ValidationError");
+    ASSUMPTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.AssumptionError");
+    EXECUTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ExecutionError");
+    ConstructError = class _ConstructError extends Error {
+      #time;
+      #constructPath;
+      #constructInfo;
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return this.#time;
+      }
+      /**
+       * The level. Always `'error'`.
+       */
+      get level() {
+        return "error";
+      }
+      /**
+       * The path of the construct this error is thrown from, if available.
+       */
+      get constructPath() {
+        return this.#constructPath;
+      }
+      /**
+       * Information on the construct this error is thrown from, if available.
+       */
+      get constructInfo() {
+        return this.#constructInfo;
+      }
+      constructor(msg, scope, name) {
+        super(msg);
+        const ctr = this.constructor;
+        Object.setPrototypeOf(this, _ConstructError.prototype);
+        Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL, { value: true });
+        this.name = name ?? ctr.name;
+        this.#time = (/* @__PURE__ */ new Date()).toISOString();
+        this.#constructPath = scope?.node.path;
+        if (scope) {
+          try {
+            this.#constructInfo = constructInfoFromConstruct(scope);
+          } catch (_) {
+          }
+        }
+        this.stack = `\xAB${this.name}\xBB ${msg}
+${enhancedStackTrace(ctr).join("\n")}`;
+        if (scope) {
+          this.stack += `
+Relates to construct:
+${renderConstructRootPath(scope)}`;
+        }
+        maybeWriteErrorCode(this.name);
+      }
+    };
+    ValidationError = class _ValidationError extends ConstructError {
+      get type() {
+        return "validation";
+      }
+      constructor(name, msg, scope) {
+        super(msg, scope, name);
+        Object.setPrototypeOf(this, _ValidationError.prototype);
+        Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    UnscopedValidationError = class _UnscopedValidationError extends ConstructError {
+      get type() {
+        return "validation";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _UnscopedValidationError.prototype);
+        Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    AssumptionError = class _AssumptionError extends ConstructError {
+      get type() {
+        return "assumption";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _AssumptionError.prototype);
+        Object.defineProperty(this, ASSUMPTION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    ExecutionError = class _ExecutionError extends ConstructError {
+      get type() {
+        return "exec";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _ExecutionError.prototype);
+        Object.defineProperty(this, EXECUTION_ERROR_SYMBOL, { value: true });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/aspect.ts
+function bumpAspectTreeRevision(construct) {
+  const root = construct.node.root;
+  const rev = root[TREE_REVISION_SYM] ?? 0;
+  root[TREE_REVISION_SYM] = rev + 1;
+}
+function _aspectTreeRevisionReader(construct) {
+  const root = construct.node.root;
+  return () => root[TREE_REVISION_SYM] ?? 0;
+}
+var ASPECTS_SYMBOL, AspectPriority, Aspects, AspectApplication, TREE_REVISION_SYM;
+var init_aspect = __esm({
+  "../../aws-cdk-lib/core/lib/aspect.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ASPECTS_SYMBOL = /* @__PURE__ */ Symbol.for("cdk-aspects");
+    AspectPriority = class {
+      /**
+       * Suggested priority for Aspects that mutate the construct tree.
+       */
+      static MUTATING = 200;
+      /**
+       * Suggested priority for Aspects that only read the construct tree.
+       */
+      static READONLY = 1e3;
+      /**
+       * Default priority for Aspects that are applied without a priority.
+       */
+      static DEFAULT = 500;
+    };
+    Aspects = class _Aspects {
+      /**
+       * Returns the `Aspects` object associated with a construct scope.
+       * @param scope The scope for which these aspects will apply.
+       */
+      static of(scope) {
+        let aspects = scope[ASPECTS_SYMBOL];
+        if (!aspects) {
+          aspects = new _Aspects(scope);
+          Object.defineProperty(scope, ASPECTS_SYMBOL, {
+            value: aspects,
+            configurable: false,
+            enumerable: false
+          });
+        }
+        return aspects;
+      }
+      _scope;
+      _appliedAspects;
+      constructor(scope) {
+        this._appliedAspects = [];
+        this._scope = scope;
+      }
+      /**
+       * Adds an aspect to apply this scope before synthesis.
+       * @param aspect The aspect to add.
+       * @param options Options to apply on this aspect.
+       */
+      add(aspect, options) {
+        const newApplication = new AspectApplication(this._scope, aspect, options?.priority ?? AspectPriority.DEFAULT);
+        if (this._appliedAspects.some((a) => a.aspect === newApplication.aspect && a.priority === newApplication.priority)) {
+          return;
+        }
+        this._appliedAspects.push(newApplication);
+        bumpAspectTreeRevision(this._scope);
+      }
+      /**
+       * The list of aspects which were directly applied on this scope.
+       */
+      get all() {
+        return this._appliedAspects.map((application) => application.aspect);
+      }
+      /**
+       * The list of aspects with priority which were directly applied on this scope.
+       *
+       * Also returns inherited Aspects of this node.
+       */
+      get applied() {
+        return [...this._appliedAspects];
+      }
+    };
+    AspectApplication = class {
+      /**
+       * The construct that the Aspect was applied to.
+       */
+      construct;
+      /**
+       * The Aspect that was applied.
+       */
+      aspect;
+      /**
+       * The priority value of this Aspect. Must be non-negative integer.
+       */
+      _priority;
+      /**
+       * Initializes AspectApplication object
+       */
+      constructor(construct, aspect, priority) {
+        this.construct = construct;
+        this.aspect = aspect;
+        this._priority = priority;
+      }
+      /**
+       * Gets the priority value.
+       */
+      get priority() {
+        return this._priority;
+      }
+      /**
+       * Sets the priority value.
+       */
+      set priority(priority) {
+        if (priority < 0) {
+          throw new ValidationError(lit`PriorityNonNegativeNumber`, "Priority must be a non-negative number", this.construct);
+        }
+        this._priority = priority;
+        bumpAspectTreeRevision(this.construct);
+      }
+    };
+    TREE_REVISION_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Aspects.treeRevision");
+  }
+});
+
+// ../../aws-cdk-lib/cloud-assembly-schema/index.ts
+var cloud_assembly_schema_exports = {};
+var init_cloud_assembly_schema = __esm({
+  "../../aws-cdk-lib/cloud-assembly-schema/index.ts"() {
+    "use strict";
+    __reExport(cloud_assembly_schema_exports, __toESM(require_lib2()));
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/core-construct-finders.ts
+function stackOf(construct) {
+  const cache = construct[MY_STACK_CACHE];
+  if (cache) {
+    return cache;
+  } else {
+    const value = _lookup(construct);
+    Object.defineProperty(construct, MY_STACK_CACHE, {
+      enumerable: false,
+      writable: false,
+      configurable: false,
+      value
+    });
+    return value;
+  }
+  function _lookup(c) {
+    if (STACK_TYPE.isMarked(c)) {
+      return c;
+    }
+    const _scope = c.node.scope;
+    if (STAGE_TYPE.isMarked(c) || !_scope) {
+      throw new ValidationError(lit`ShouldBeCreatedInStackScope`, `${construct.constructor?.name ?? "Construct"} at '${construct.node.path}' should be created in the scope of a Stack, but no Stack found`, c);
+    }
+    return _lookup(_scope);
+  }
+}
+function stageOf(construct) {
+  return construct.node.scopes.reverse().slice(1).find(STAGE_TYPE.isMarked.bind(STAGE_TYPE));
+}
+function appOf(construct) {
+  const root = construct.node.root;
+  return APP_TYPE.isMarked(root) ? root : void 0;
+}
+function isCfnResource(x) {
+  return x !== null && typeof x === "object" && x.cfnResourceType !== void 0;
+}
+var ConstructType, APP_TYPE, STACK_TYPE, STAGE_TYPE, NESTED_STACK_TYPE, MY_STACK_CACHE;
+var init_core_construct_finders = __esm({
+  "../../aws-cdk-lib/core/lib/private/core-construct-finders.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ConstructType = class {
+      constructor(sym) {
+        this.sym = sym;
+      }
+      sym;
+      mark(x) {
+        Object.defineProperty(x, this.sym, { value: true });
+      }
+      isMarked(x) {
+        return x !== null && typeof x === "object" && this.sym in x;
+      }
+    };
+    APP_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.App"));
+    STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack"));
+    STAGE_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stage"));
+    NESTED_STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.NestedStack"));
+    MY_STACK_CACHE = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack.myStack");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/annotations.ts
+function removeWarningDeep(construct, id) {
+  const stack = [construct];
+  while (stack.length > 0) {
+    const next = stack.pop();
+    removeWarning(next, id);
+    stack.push(...next.node.children);
+  }
+}
+function removeWarning(construct, id) {
+  const meta = construct.node._metadata;
+  if (!meta) {
+    return;
+  }
+  let i = 0;
+  while (i < meta.length) {
+    const m = meta[i];
+    if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && m.data.includes(ackTag(id))) {
+      meta.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+}
+function removeInfoDeep(construct, id) {
+  const stack = [construct];
+  while (stack.length > 0) {
+    const next = stack.pop();
+    removeInfo(next, id);
+    stack.push(...next.node.children);
+  }
+}
+function removeInfo(construct, id) {
+  const meta = construct.node._metadata;
+  if (!meta) {
+    return;
+  }
+  let i = 0;
+  while (i < meta.length) {
+    const m = meta[i];
+    if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO && m.data.includes(ackTag(id))) {
+      meta.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+}
+function ackTag(id) {
+  return `[ack: ${id}]`;
+}
+var Annotations, Acknowledgements;
+var init_annotations = __esm({
+  "../../aws-cdk-lib/core/lib/annotations.ts"() {
+    "use strict";
+    init_errors();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_core_construct_finders();
+    init_literal_string();
+    Annotations = class _Annotations {
+      constructor(scope) {
+        this.scope = scope;
+        const disableTrace = scope.node.tryGetContext(DISABLE_METADATA_STACK_TRACE) || process.env.CDK_DISABLE_STACK_TRACE;
+        this.stackTraces = !disableTrace;
+      }
+      scope;
+      /**
+       * Returns the annotations API for a construct scope.
+       * @param scope The scope
+       */
+      static of(scope) {
+        return new _Annotations(scope);
+      }
+      stackTraces;
+      /**
+       * Acknowledge a warning. When a warning is acknowledged for a scope
+       * all warnings that match the id will be ignored.
+       *
+       * The acknowledgement will apply to all child scopes
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).acknowledgeWarning('SomeWarningId', 'This warning can be ignored because...');
+       *
+       * @param id - the id of the warning message to acknowledge
+       * @param message optional message to explain the reason for acknowledgement
+       */
+      acknowledgeWarning(id, message) {
+        Acknowledgements.of(this.scope).add(this.scope, id);
+        void message;
+        removeWarningDeep(this.scope, id);
+      }
+      /**
+       * Adds an acknowledgeable warning metadata entry to this construct.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * If the warning is acknowledged using `acknowledgeWarning()`, it will not be shown by
+       * the CLI, and will not cause `--strict` mode to fail synthesis.
+       *
+       * Prefer using `Validations.of(scope).addWarning()` instead.
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).addWarningV2('my-library:Construct.someWarning', 'Some message explaining the warning');
+       *
+       * @param id the unique identifier for the warning. This can be used to acknowledge the warning
+       * @param message The warning message.
+       */
+      addWarningV2(id, message) {
+        if (!Acknowledgements.of(this.scope).has(this.scope, id)) {
+          this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, `${message} ${ackTag(id)}`);
+        }
+      }
+      /**
+       * Adds a warning metadata entry to this construct. Prefer using `Validations.of(scope).addWarning()`.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * Warnings added by this call cannot be acknowledged. This will block users from
+       * running in `--strict` mode until the deal with the warning, which makes it
+       * effectively not very different from `addError`. Prefer using `addWarningV2` instead.
+       *
+       * @param message The warning message.
+       */
+      addWarning(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, message);
+      }
+      /**
+       * Acknowledge a info. When a info is acknowledged for a scope
+       * all infos that match the id will be ignored.
+       *
+       * The acknowledgement will apply to all child scopes
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).acknowledgeInfo('SomeInfoId', 'This info can be ignored because...');
+       *
+       * @param id - the id of the info message to acknowledge
+       * @param message optional message to explain the reason for acknowledgement
+       */
+      acknowledgeInfo(id, message) {
+        Acknowledgements.of(this.scope).add(this.scope, id);
+        void message;
+        removeInfoDeep(this.scope, id);
+      }
+      /**
+       * Adds an acknowledgeable info metadata entry to this construct.
+       *
+       * The CLI will display the info when an app is synthesized.
+       *
+       * If the info is acknowledged using `acknowledgeInfo()`, it will not be shown by the CLI.
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).addInfoV2('my-library:Construct.someInfo', 'Some message explaining the info');
+       *
+       * @param id the unique identifier for the info. This can be used to acknowledge the info
+       * @param message The info message.
+       */
+      addInfoV2(id, message) {
+        if (!Acknowledgements.of(this.scope).has(this.scope, id)) {
+          this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, `${message} ${ackTag(id)}`);
+        }
+      }
+      /**
+       * Adds an info metadata entry to this construct.
+       *
+       * The CLI will display the info message when apps are synthesized.
+       *
+       * @param message The info message.
+       */
+      addInfo(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, message);
+      }
+      /**
+       * Adds an { "error":  } metadata entry to this construct.
+       * The toolkit will fail deployment of any stack that has errors reported against it.
+       * Prefer using `Validations.of(scope).addError()` instead.
+       * @param message The error message.
+       */
+      addError(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR, message);
+      }
+      /**
+       * Add an error annotation to this construct, along with a tracking ID
+       *
+       * The toolkit will fail deployment of any stack that has errors reported against it.
+       *
+       * The error code will be tracked by telemetry; this method should only be used
+       * by CDK source code.
+       *
+       * @param id The error ID.
+       * @param message The error message.
+       * @internal
+       */
+      _addTrackableError(id, message) {
+        this.addError(message);
+        const type = "aws:cdk:error-code";
+        const isNew = !this.scope.node.metadata.find((x) => x.type === type && x.data === id);
+        if (isNew) {
+          this.scope.node.addMetadata(type, id);
+        }
+      }
+      /**
+       * Adds a deprecation warning for a specific API.
+       *
+       * Deprecations will be added only once per construct as a warning and will be
+       * deduplicated based on the `api`.
+       *
+       * If the environment variable `CDK_BLOCK_DEPRECATIONS` is set, this method
+       * will throw an error instead with the deprecation message.
+       *
+       * @param api The API being deprecated in the format `module.Class.property`
+       * (e.g. `@aws-cdk/core.Construct.node`).
+       * @param message The deprecation message to display, with information about
+       * alternatives.
+       */
+      addDeprecation(api, message) {
+        const text = `The API ${api} is deprecated: ${message}. This API will be removed in the next major release`;
+        if (process.env.CDK_BLOCK_DEPRECATIONS) {
+          throw new UnscopedValidationError(lit`ValidationError`, `${this.scope.node.path}: ${text}`);
+        }
+        this.addWarningV2(`Deprecated:${api}`, text);
+      }
+      /**
+       * Adds a message metadata entry to the construct node, to be displayed by the CDK CLI.
+       *
+       * Records the message once per construct.
+       * @param level The message level
+       * @param message The message itself
+       */
+      addMessage(level, message) {
+        const isNew = !this.scope.node.metadata.find((x) => x.data === message);
+        if (isNew) {
+          let normalizedMessage = typeof message === "string" ? message : JSON.stringify(message);
+          this.scope.node.addMetadata(level, normalizedMessage, { stackTrace: this.stackTraces });
+        }
+      }
+    };
+    Acknowledgements = class _Acknowledgements {
+      static of(scope) {
+        const app = appOf(scope);
+        if (!app) {
+          return new _Acknowledgements();
+        }
+        const existing = app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM];
+        if (existing) {
+          return existing;
+        }
+        const fresh = new _Acknowledgements();
+        app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM] = fresh;
+        return fresh;
+      }
+      static ACKNOWLEDGEMENTS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Acknowledgements");
+      acks = /* @__PURE__ */ new Map();
+      constructor() {
+      }
+      add(node, ack) {
+        const nodePath = this.nodePath(node);
+        let arr = this.acks.get(nodePath);
+        if (!arr) {
+          arr = /* @__PURE__ */ new Set();
+          this.acks.set(nodePath, arr);
+        }
+        arr.add(ack);
+      }
+      has(node, ack) {
+        for (const candidate of this.searchPaths(this.nodePath(node))) {
+          if (this.acks.get(candidate)?.has(ack)) {
+            return true;
+          }
+        }
+        return false;
+      }
+      nodePath(node) {
+        return (typeof node === "string" ? node : node.node.path).replace(/^\//, "");
+      }
+      /**
+       * Given 'a/b/c', return ['a/b/c', 'a/b', 'a']
+       */
+      searchPaths(path23) {
+        const ret = new Array();
+        let start = 0;
+        while (start < path23.length) {
+          let i = path23.indexOf("/", start);
+          if (i !== -1) {
+            ret.push(path23.substring(0, i));
+            start = i + 1;
+          } else {
+            start = path23.length;
+          }
+        }
+        ret.push(path23);
+        return ret.reverse();
+      }
+    };
+  }
+});
+
+// ../../../node_modules/constructs/lib/dependency.js
+var require_dependency = __commonJS({
+  "../../../node_modules/constructs/lib/dependency.js"(exports2) {
+    "use strict";
+    var _a7;
+    var _b;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.Dependable = exports2.DependencyGroup = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var DependencyGroup = class {
+      constructor(...deps) {
+        this._deps = new Array();
+        const self2 = this;
+        Dependable2.implement(this, {
+          get dependencyRoots() {
+            const result = new Array();
+            for (const d of self2._deps) {
+              result.push(...Dependable2.of(d).dependencyRoots);
+            }
+            return result;
+          }
+        });
+        this.add(...deps);
+      }
+      /**
+       * Add a construct to the dependency roots
+       */
+      add(...scopes) {
+        this._deps.push(...scopes);
+      }
+    };
+    exports2.DependencyGroup = DependencyGroup;
+    _a7 = JSII_RTTI_SYMBOL_1;
+    DependencyGroup[_a7] = { fqn: "constructs.DependencyGroup", version: "10.6.0" };
+    var DEPENDABLE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.DependableTrait");
+    var Dependable2 = class {
+      /**
+       * Turn any object into an IDependable.
+       */
+      static implement(instance, trait) {
+        instance[DEPENDABLE_SYMBOL] = trait;
+      }
+      /**
+       * Return the matching Dependable for the given class instance.
+       */
+      static of(instance) {
+        const ret = instance[DEPENDABLE_SYMBOL];
+        if (!ret) {
+          throw new Error(`${instance} does not implement IDependable. Use "Dependable.implement()" to implement`);
+        }
+        return ret;
+      }
+      /**
+       * Return the matching Dependable for the given class instance.
+       * @deprecated use `of`
+       */
+      static get(instance) {
+        return this.of(instance);
+      }
+    };
+    exports2.Dependable = Dependable2;
+    _b = JSII_RTTI_SYMBOL_1;
+    Dependable2[_b] = { fqn: "constructs.Dependable", version: "10.6.0" };
+  }
+});
+
+// ../../../node_modules/constructs/lib/private/stack-trace.js
+var require_stack_trace = __commonJS({
+  "../../../node_modules/constructs/lib/private/stack-trace.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.captureStackTrace = captureStackTrace2;
+    function captureStackTrace2(below) {
+      below = below || captureStackTrace2;
+      const object = { stack: "" };
+      const previousLimit = Error.stackTraceLimit;
+      try {
+        Error.stackTraceLimit = Number.MAX_SAFE_INTEGER;
+        Error.captureStackTrace(object, below);
+      } finally {
+        Error.stackTraceLimit = previousLimit;
+      }
+      if (!object.stack) {
+        return [];
+      }
+      return object.stack.split("\n").slice(1).map((s) => s.replace(/^\s*at\s+/, ""));
+    }
+  }
+});
+
+// ../../../node_modules/constructs/lib/private/uniqueid.js
+var require_uniqueid = __commonJS({
+  "../../../node_modules/constructs/lib/private/uniqueid.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.addressOf = addressOf;
+    var crypto13 = require("crypto");
+    var HIDDEN_ID3 = "Default";
+    function addressOf(components) {
+      const hash = crypto13.createHash("sha1");
+      for (const c of components) {
+        if (c === HIDDEN_ID3) {
+          continue;
+        }
+        hash.update(c);
+        hash.update("\n");
+      }
+      return "c8" + hash.digest("hex");
+    }
+  }
+});
+
+// ../../../node_modules/constructs/lib/construct.js
+var require_construct = __commonJS({
+  "../../../node_modules/constructs/lib/construct.js"(exports2) {
+    "use strict";
+    var _a7;
+    var _b;
+    var _c;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.RootConstruct = exports2.ConstructOrder = exports2.Construct = exports2.Node = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var dependency_1 = require_dependency();
+    var stack_trace_1 = require_stack_trace();
+    var uniqueid_1 = require_uniqueid();
+    var CONSTRUCT_SYM = /* @__PURE__ */ Symbol.for("constructs.Construct");
+    var Node11 = class _Node {
+      /**
+       * Returns the node associated with a construct.
+       * @param construct the construct
+       *
+       * @deprecated use `construct.node` instead
+       */
+      static of(construct) {
+        return construct.node;
+      }
+      constructor(host, scope, id) {
+        this.host = host;
+        this._locked = false;
+        id = id ?? "";
+        this.id = sanitizeId(id);
+        this.scope = scope;
+        if (scope && !this.id) {
+          throw new Error("Only root constructs may have an empty ID");
+        }
+        scope?.node.addChild(host, this.id);
+      }
+      /**
+       * The full, absolute path of this construct in the tree.
+       *
+       * Components are separated by '/'.
+       */
+      get path() {
+        const components = [];
+        for (const scope of this.scopes) {
+          if (scope.node.id) {
+            components.push(scope.node.id);
+          }
+        }
+        return components.join(_Node.PATH_SEP);
+      }
+      /**
+       * Returns an opaque tree-unique address for this construct.
+       *
+       * Addresses are 42 characters hexadecimal strings. They begin with "c8"
+       * followed by 40 lowercase hexadecimal characters (0-9a-f).
+       *
+       * Addresses are calculated using a SHA-1 of the components of the construct
+       * path.
+       *
+       * To enable refactoring of construct trees, constructs with the ID `Default`
+       * will be excluded from the calculation. In those cases constructs in the
+       * same tree may have the same address.
+       *
+       * @example c83a2846e506bcc5f10682b564084bca2d275709ee
+       */
+      get addr() {
+        if (!this._addr) {
+          this._addr = (0, uniqueid_1.addressOf)(this.scopes.map((c) => c.node.id));
+        }
+        return this._addr;
+      }
+      /**
+       * Return a direct child by id, or undefined
+       *
+       * @param id Identifier of direct child
+       * @returns the child if found, or undefined
+       */
+      tryFindChild(id) {
+        return this._children?.[sanitizeId(id)];
+      }
+      /**
+       * Return a direct child by id
+       *
+       * Throws an error if the child is not found.
+       *
+       * @param id Identifier of direct child
+       * @returns Child with the given id.
+       */
+      findChild(id) {
+        const ret = this.tryFindChild(id);
+        if (!ret) {
+          throw new Error(`No child with id: '${id}'`);
+        }
+        return ret;
+      }
+      /**
+       * Returns the child construct that has the id `Default` or `Resource`.
+       * This is usually the construct that provides the bulk of the underlying functionality.
+       * Useful for modifications of the underlying construct that are not available at the higher levels.
+       *
+       * @throws if there is more than one child
+       * @returns a construct or undefined if there is no default child
+       */
+      get defaultChild() {
+        if (this._defaultChild !== void 0) {
+          return this._defaultChild;
+        }
+        const resourceChild = this.tryFindChild("Resource");
+        const defaultChild = this.tryFindChild("Default");
+        if (resourceChild && defaultChild) {
+          throw new Error(`Cannot determine default child for ${this.path}. There is both a child with id "Resource" and id "Default"`);
+        }
+        return defaultChild || resourceChild;
+      }
+      /**
+       * Override the defaultChild property.
+       *
+       * This should only be used in the cases where the correct
+       * default child is not named 'Resource' or 'Default' as it
+       * should be.
+       *
+       * If you set this to undefined, the default behavior of finding
+       * the child named 'Resource' or 'Default' will be used.
+       */
+      set defaultChild(value) {
+        this._defaultChild = value;
+      }
+      /**
+       * All direct children of this construct.
+       */
+      get children() {
+        return Object.values(this._children ?? {});
+      }
+      /**
+       * Return this construct and all of its children in the given order
+       */
+      findAll(order = ConstructOrder.PREORDER) {
+        const ret = new Array();
+        visit2(this.host);
+        return ret;
+        function visit2(c) {
+          if (order === ConstructOrder.PREORDER) {
+            ret.push(c);
+          }
+          for (const child of c.node.children) {
+            visit2(child);
+          }
+          if (order === ConstructOrder.POSTORDER) {
+            ret.push(c);
+          }
+        }
+      }
+      /**
+       * This can be used to set contextual values.
+       * Context must be set before any children are added, since children may consult context info during construction.
+       * If the key already exists, it will be overridden.
+       * @param key The context key
+       * @param value The context value
+       */
+      setContext(key, value) {
+        if (this.children.length > 0) {
+          const names = this.children.map((c) => c.node.id);
+          throw new Error("Cannot set context after children have been added: " + names.join(","));
+        }
+        if (!this._context) {
+          this._context = {};
+        }
+        this._context[key] = value;
+      }
+      /**
+       * Retrieves a value from tree context if present. Otherwise, would throw an error.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param key The context key
+       * @returns The context value or throws error if there is no context value for this key
+       */
+      getContext(key) {
+        const value = this._context?.[key];
+        if (value !== void 0) {
+          return value;
+        }
+        if (value === void 0 && !this.scope?.node) {
+          throw new Error(`No context value present for ${key} key`);
+        }
+        return this.scope && this.scope.node.getContext(key);
+      }
+      /**
+       * Retrieves the all context of a node from tree context.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param defaults Any keys to override the retrieved context
+       * @returns The context object or an empty object if there is discovered context
+       */
+      getAllContext(defaults) {
+        return this.scopes.reverse().reduce((a, s) => ({ ...s.node._context, ...a }), { ...defaults });
+      }
+      /**
+       * Retrieves a value from tree context.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param key The context key
+       * @returns The context value or `undefined` if there is no context value for this key.
+       */
+      tryGetContext(key) {
+        const value = this._context?.[key];
+        if (value !== void 0) {
+          return value;
+        }
+        return this.scope && this.scope.node.tryGetContext(key);
+      }
+      /**
+       * An immutable array of metadata objects associated with this construct.
+       * This can be used, for example, to implement support for deprecation notices, source mapping, etc.
+       */
+      get metadata() {
+        return [...this._metadata ?? []];
+      }
+      /**
+       * Adds a metadata entry to this construct.
+       * Entries are arbitrary values and will also include a stack trace to allow tracing back to
+       * the code location for when the entry was added. It can be used, for example, to include source
+       * mapping in CloudFormation templates to improve diagnostics.
+       * Note that construct metadata is not the same as CloudFormation resource metadata and is never written to the CloudFormation template.
+       * The metadata entries are written to the Cloud Assembly Manifest if the `treeMetadata` property is specified in the props of the App that contains this Construct.
+       *
+       * @param type a string denoting the type of metadata
+       * @param data the value of the metadata (can be a Token). If null/undefined, metadata will not be added.
+       * @param options options
+       */
+      addMetadata(type, data, options = {}) {
+        if (data == null) {
+          return;
+        }
+        const node = this;
+        function getTrace() {
+          if (options.stackTraceOverride && options.stackTraceOverride.length > 0) {
+            return options.stackTraceOverride;
+          }
+          const shouldTrace = options.stackTrace ?? false;
+          return shouldTrace ? (0, stack_trace_1.captureStackTrace)(options.traceFromFunction ?? node.addMetadata) : void 0;
+        }
+        if (!this._metadata) {
+          this._metadata = [];
+        }
+        this._metadata.push({ type, data, trace: getTrace() });
+      }
+      /**
+       * All parent scopes of this construct.
+       *
+       * @returns a list of parent scopes. The last element in the list will always
+       * be the current construct and the first element will be the root of the
+       * tree.
+       */
+      get scopes() {
+        const ret = new Array();
+        let curr = this.host;
+        while (curr) {
+          ret.unshift(curr);
+          curr = curr.node.scope;
+        }
+        return ret;
+      }
+      /**
+       * Returns the root of the construct tree.
+       * @returns The root of the construct tree.
+       */
+      get root() {
+        return this.scopes[0];
+      }
+      /**
+       * Returns true if this construct or the scopes in which it is defined are
+       * locked.
+       */
+      get locked() {
+        if (this._locked) {
+          return true;
+        }
+        if (this.scope && this.scope.node.locked) {
+          return true;
+        }
+        return false;
+      }
+      /**
+       * Add an ordering dependency on another construct.
+       *
+       * An `IDependable`
+       */
+      addDependency(...deps) {
+        if (!this._dependencies) {
+          this._dependencies = /* @__PURE__ */ new Set();
+        }
+        for (const d of deps) {
+          this._dependencies.add(d);
+        }
+      }
+      /**
+       * Return all dependencies registered on this node (non-recursive).
+       */
+      get dependencies() {
+        const result = new Array();
+        if (this._dependencies) {
+          for (const dep of this._dependencies) {
+            for (const root of dependency_1.Dependable.of(dep).dependencyRoots) {
+              result.push(root);
+            }
+          }
+        }
+        return result;
+      }
+      /**
+       * Remove the child with the given name, if present.
+       *
+       * @returns Whether a child with the given name was deleted.
+       */
+      tryRemoveChild(childName) {
+        if (!this._children || !(childName in this._children)) {
+          return false;
+        }
+        delete this._children[childName];
+        return true;
+      }
+      /**
+       * Adds a validation to this construct.
+       *
+       * When `node.validate()` is called, the `validate()` method will be called on
+       * all validations and all errors will be returned.
+       *
+       * @param validation The validation object
+       */
+      addValidation(validation) {
+        if (!this._validations) {
+          this._validations = [];
+        }
+        this._validations.push(validation);
+      }
+      /**
+       * Validates this construct.
+       *
+       * Invokes the `validate()` method on all validations added through
+       * `addValidation()`.
+       *
+       * @returns an array of validation error messages associated with this
+       * construct.
+       */
+      validate() {
+        return (this._validations ?? []).flatMap((v) => v.validate());
+      }
+      /**
+       * Locks this construct from allowing more children to be added. After this
+       * call, no more children can be added to this construct or to any children.
+       */
+      lock() {
+        this._locked = true;
+      }
+      /**
+       * Applies one or more mixins to this construct.
+       *
+       * Mixins are applied in order. The list of constructs is captured at the
+       * start of the call, so constructs added by a mixin will not be visited.
+       * Use multiple `with()` calls if subsequent mixins should apply to added
+       * constructs.
+       *
+       * @param mixins The mixins to apply
+       * @returns This construct for chaining
+       */
+      with(...mixins) {
+        const allConstructs = this.findAll();
+        for (const mixin of mixins) {
+          for (const construct of allConstructs) {
+            if (mixin.supports(construct)) {
+              mixin.applyTo(construct);
+            }
+          }
+        }
+        return this.host;
+      }
+      /**
+       * Adds a child construct to this node.
+       *
+       * @param child The child construct
+       * @param childName The type name of the child construct.
+       * @returns The resolved path part name of the child
+       */
+      addChild(child, childName) {
+        if (this.locked) {
+          if (!this.path) {
+            throw new Error("Cannot add children during synthesis");
+          }
+          throw new Error(`Cannot add children to "${this.path}" during synthesis`);
+        }
+        if (!this._children) {
+          this._children = {};
+        }
+        if (this._children[childName]) {
+          const name = this.id ?? "";
+          const typeName = this.host.constructor.name;
+          throw new Error(`There is already a Construct with name '${childName}' in ${typeName}${name.length > 0 ? " [" + name + "]" : ""}`);
+        }
+        this._children[childName] = child;
+      }
+    };
+    exports2.Node = Node11;
+    _a7 = JSII_RTTI_SYMBOL_1;
+    Node11[_a7] = { fqn: "constructs.Node", version: "10.6.0" };
+    Node11.PATH_SEP = "/";
+    var Construct19 = class {
+      /**
+       * Checks if `x` is a construct.
+       *
+       * Use this method instead of `instanceof` to properly detect `Construct`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `constructs` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `Construct` in each copy of the `constructs` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `constructs`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       *
+       * @returns true if `x` is an object created from a class which extends `Construct`.
+       * @param x Any object
+       */
+      static isConstruct(x) {
+        return x && typeof x === "object" && x[CONSTRUCT_SYM];
+      }
+      /**
+       * Creates a new construct node.
+       *
+       * @param scope The scope in which to define this construct
+       * @param id The scoped construct ID. Must be unique amongst siblings. If
+       * the ID includes a path separator (`/`), then it will be replaced by double
+       * dash `--`.
+       */
+      constructor(scope, id) {
+        this.node = new Node11(this, scope, id);
+        dependency_1.Dependable.implement(this, {
+          dependencyRoots: [this]
+        });
+      }
+      /**
+       * Applies one or more mixins to this construct.
+       *
+       * Mixins are applied in order. The list of constructs is captured at the
+       * start of the call, so constructs added by a mixin will not be visited.
+       * Use multiple `with()` calls if subsequent mixins should apply to added
+       * constructs.
+       *
+       * @param mixins The mixins to apply
+       * @returns This construct for chaining
+       */
+      with(...mixins) {
+        return this.node.with(...mixins);
+      }
+      /**
+       * Returns a string representation of this construct.
+       */
+      toString() {
+        return this.node.path || "";
+      }
+    };
+    exports2.Construct = Construct19;
+    _b = JSII_RTTI_SYMBOL_1;
+    Construct19[_b] = { fqn: "constructs.Construct", version: "10.6.0" };
+    var ConstructOrder;
+    (function(ConstructOrder2) {
+      ConstructOrder2[ConstructOrder2["PREORDER"] = 0] = "PREORDER";
+      ConstructOrder2[ConstructOrder2["POSTORDER"] = 1] = "POSTORDER";
+    })(ConstructOrder || (exports2.ConstructOrder = ConstructOrder = {}));
+    var PATH_SEP_REGEX = new RegExp(`${Node11.PATH_SEP}`, "g");
+    function sanitizeId(id) {
+      return id.replace(PATH_SEP_REGEX, "--");
+    }
+    Object.defineProperty(Construct19.prototype, CONSTRUCT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+    var RootConstruct = class extends Construct19 {
+      /**
+       * Creates a new root construct node.
+       *
+       * @param id The scoped construct ID. Must be unique amongst siblings. If
+       * the ID includes a path separator (`/`), then it will be replaced by double
+       * dash `--`.
+       */
+      constructor(id) {
+        super(void 0, id ?? "");
+      }
+    };
+    exports2.RootConstruct = RootConstruct;
+    _c = JSII_RTTI_SYMBOL_1;
+    RootConstruct[_c] = { fqn: "constructs.RootConstruct", version: "10.6.0" };
+  }
+});
+
+// ../../../node_modules/constructs/lib/index.js
+var require_lib4 = __commonJS({
+  "../../../node_modules/constructs/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_construct(), exports2);
+    __exportStar2(require_dependency(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/feature-flags.ts
+var import_constructs, FeatureFlags;
+var init_feature_flags = __esm({
+  "../../aws-cdk-lib/core/lib/feature-flags.ts"() {
+    "use strict";
+    import_constructs = __toESM(require_lib4());
+    init_errors();
+    init_cx_api();
+    init_literal_string();
+    FeatureFlags = class _FeatureFlags {
+      constructor(construct) {
+        this.construct = construct;
+      }
+      construct;
+      /**
+       * Inspect feature flags on the construct node's context.
+       */
+      static of(scope) {
+        return new _FeatureFlags(scope);
+      }
+      /**
+       * Check whether a feature flag is enabled. If configured, the flag is present in
+       * the construct node context. Falls back to the defaults defined in the `cx-api`
+       * module.
+       */
+      isEnabled(featureFlag) {
+        const context = import_constructs.Node.of(this.construct).tryGetContext(featureFlag);
+        if (CURRENT_VERSION_EXPIRED_FLAGS.includes(featureFlag)) {
+          if (context !== void 0) {
+            throw new UnscopedValidationError(lit`UnsupportedFeatureFlag`, `Unsupported feature flag '${featureFlag}'. This flag existed on CDKv1 but has been removed in CDKv2. CDK will now behave as the same as when the flag is enabled.`);
+          }
+          return true;
+        }
+        return context !== void 0 ? Boolean(context) : futureFlagDefault(featureFlag);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/aspect-prio.ts
+function mutatingAspectPrio32333(scope) {
+  return FeatureFlags.of(scope).isEnabled(ASPECT_PRIORITIES_MUTATING) ? AspectPriority.MUTATING : void 0;
+}
+var init_aspect_prio = __esm({
+  "../../aws-cdk-lib/core/lib/private/aspect-prio.ts"() {
+    "use strict";
+    init_cx_api();
+    init_aspect();
+    init_feature_flags();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/debug.ts
+function debugModeEnabled() {
+  return isTruthy(import_process.env[CDK_DEBUG]);
+}
+function isTruthy(value) {
+  if (!value) {
+    return false;
+  }
+  return TRUTHY_VALUES.has(value.toLowerCase());
+}
+var import_process, CDK_DEBUG, TRUTHY_VALUES;
+var init_debug = __esm({
+  "../../aws-cdk-lib/core/lib/debug.ts"() {
+    "use strict";
+    import_process = require("process");
+    CDK_DEBUG = "CDK_DEBUG";
+    TRUTHY_VALUES = /* @__PURE__ */ new Set(["1", "on", "true"]);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/box.ts
+var BOX_SYM, stackTraceCollectionEnabled, globalSeq, Box, BaseReadableBox, Combined, Computed, ReadonlyState, State, ArrayState, MapState, SetState;
+var init_box = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/box.ts"() {
+    "use strict";
+    init_debug();
+    init_stack_trace();
+    BOX_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Box");
+    stackTraceCollectionEnabled = true;
+    globalSeq = 0;
+    Box = class {
+      /**
+       * Creates a mutable box holding a single value.
+       *
+       * @param value the initial value.
+       * @param options.equals optional equality function used to skip no-op `set` calls.
+       *   Defaults to reference equality (`===`).
+       * @returns a new `Box`.
+       */
+      static fromValue(value, options) {
+        return new State(value, options);
+      }
+      /**
+       * Creates a read-only box that combines multiple source boxes through a function.
+       *
+       * The resulting box collects stack traces from all source boxes, sorted by
+       * the global mutation order. This is useful when a single CloudFormation
+       * property depends on multiple pieces of L2 state.
+       *
+       * @param boxes a record of named source boxes.
+       * @param fn a pure function that receives the unwrapped values and produces the result.
+       * @returns a new read-only `IReadableBox`.
+       * @example
+       *   const a = Boxes.fromValue(10);
+       *   const b = Boxes.fromValue(20);
+       *   const result = Boxes.combine({ a, b }, (x) => x.a + x.b).derive((x) => x * 2);
+       *   result.get(); // 60
+       */
+      static combine(boxes, fn) {
+        return new Combined(boxes, fn);
+      }
+      /**
+       * Type guard that checks whether a value is a box.
+       *
+       * Used internally by `PropertyAssignmentMetadataWriter` to decide whether a
+       * resolved token should contribute `aws:cdk:propertyAssignment` metadata.
+       */
+      static isBox(x) {
+        return typeof x === "object" && x && BOX_SYM in x;
+      }
+      /**
+       * Creates a mutable array box.
+       *
+       * @param as the initial array contents.
+       * @param options.omitEmpty if true (the default), the box resolves to `undefined` when the
+       *   array is empty. This behavior propagates through `map`, `derive`, and
+       *   `reduce`, so derived boxes also resolve to `undefined` when the source
+       *   array is empty. Set to `false` to resolve to an empty array instead.
+       * @returns a new `ArrayBox`.
+       */
+      static fromArray(as = [], options) {
+        return new ArrayState(as, options?.omitEmpty ?? true);
+      }
+      /**
+       * Creates a mutable map box.
+       *
+       * @param map the initial map contents.
+       * @returns a new `MapBox`.
+       */
+      static fromMap(map = /* @__PURE__ */ new Map()) {
+        return new MapState(map);
+      }
+      /**
+       * Creates a mutable set box.
+       *
+       * @param set the initial set contents.
+       * @returns a new `SetBox`.
+       */
+      static fromSet(set = /* @__PURE__ */ new Set()) {
+        return new SetState(set);
+      }
+      /**
+       * Globally disables stack trace collection for all box mutations.
+       *
+       * Called by the `@noBoxStackTraces` decorator before entering an L2
+       * constructor, so that default/initial values set during construction
+       * do not produce misleading stack traces.
+       */
+      static disableStackTraceCollection() {
+        stackTraceCollectionEnabled = false;
+      }
+      /**
+       * Re-enables stack trace collection for all box mutations.
+       *
+       * Called by the `@noBoxStackTraces` decorator after the L2 constructor
+       * returns, so that subsequent mutations (from user code) are tracked.
+       */
+      static enableStackTraceCollection() {
+        stackTraceCollectionEnabled = true;
+      }
+    };
+    BaseReadableBox = class {
+      creationStack = [];
+      constructor() {
+        Object.defineProperty(this, BOX_SYM, { value: true });
+      }
+      derive(fn) {
+        return new Computed(this, fn);
+      }
+      resolve(_) {
+        return this.get();
+      }
+    };
+    Combined = class extends BaseReadableBox {
+      constructor(boxes, fn) {
+        super();
+        this.boxes = boxes;
+        this.fn = fn;
+      }
+      boxes;
+      fn;
+      get() {
+        const values = Object.fromEntries(
+          Object.entries(this.boxes).map(([k, b]) => [k, b.get()])
+        );
+        return this.fn(values);
+      }
+      getMutable() {
+        return this.get();
+      }
+      getStackTraces() {
+        const all = Object.values(this.boxes).flatMap((b) => b.getOrderedStackTraces?.() ?? []);
+        all.sort((a, b) => a.seq - b.seq);
+        return all.map((t) => t.trace);
+      }
+    };
+    Computed = class extends BaseReadableBox {
+      constructor(source, fn) {
+        super();
+        this.source = source;
+        this.fn = fn;
+      }
+      source;
+      fn;
+      get() {
+        return this.fn(this.source.get());
+      }
+      getMutable() {
+        return this.get();
+      }
+      resolve(context) {
+        const sourceResolved = this.source.resolve(context);
+        if (sourceResolved === void 0) {
+          return void 0;
+        }
+        return this.fn(sourceResolved);
+      }
+      getStackTraces() {
+        return this.source.getStackTraces();
+      }
+      getOrderedStackTraces() {
+        return this.source.getOrderedStackTraces?.() ?? [];
+      }
+    };
+    ReadonlyState = class extends BaseReadableBox {
+      constructor(value) {
+        super();
+        this.value = value;
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces = [{ trace: captureStackTrace(this.constructor), seq: globalSeq++ }];
+        }
+      }
+      value;
+      orderedTraces = [];
+      get() {
+        return this.value;
+      }
+      getMutable() {
+        return this.value;
+      }
+      getStackTraces() {
+        return this.orderedTraces.map((t) => t.trace);
+      }
+      getOrderedStackTraces() {
+        return this.orderedTraces;
+      }
+    };
+    State = class _State extends ReadonlyState {
+      equals;
+      constructor(value, options) {
+        super(value);
+        this.equals = options?.equals ?? ((a, b) => a === b);
+      }
+      set(value) {
+        if (this.equals(this.value, value)) {
+          return;
+        }
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces = [{ trace: captureStackTrace(_State.prototype.set), seq: globalSeq++ }];
+        }
+        this.value = value;
+      }
+      update(fn) {
+        this.set(fn(this.value));
+      }
+    };
+    ArrayState = class _ArrayState extends State {
+      constructor(array, omitEmptyFlag) {
+        super(array);
+        this.array = array;
+        this.omitEmptyFlag = omitEmptyFlag;
+      }
+      array;
+      omitEmptyFlag;
+      resolve(_) {
+        if (this.omitEmptyFlag && this.array.length === 0) {
+          return void 0;
+        }
+        return this.get();
+      }
+      set(value) {
+        super.set(value);
+        this.array = value;
+      }
+      push(...items) {
+        this.array.push(...items);
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.push));
+      }
+      pop() {
+        const result = this.array.pop();
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.pop));
+        return result;
+      }
+      findIndex(predicate) {
+        return this.array.findIndex(predicate);
+      }
+      find(predicate) {
+        return this.array.find(predicate);
+      }
+      get length() {
+        return this.array.length;
+      }
+      splice(start, deleteCount, ...items) {
+        const result = this.array.splice(start, deleteCount, ...items);
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.splice));
+        return result;
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      some(predicate) {
+        return this.array.some(predicate);
+      }
+      includes(searchElement) {
+        return this.array.includes(searchElement);
+      }
+      map(fn) {
+        return this.derive((arr) => arr.map(fn));
+      }
+      filter(fn) {
+        return this.derive((arr) => arr.filter(fn));
+      }
+      [Symbol.iterator]() {
+        return this.array[Symbol.iterator]();
+      }
+    };
+    MapState = class _MapState extends State {
+      constructor(map) {
+        super(map);
+        this.map = map;
+      }
+      map;
+      set(value) {
+        super.set(value);
+        this.map = value;
+      }
+      get size() {
+        return this.map.size;
+      }
+      put(key, value) {
+        this.map.set(key, value);
+        this.appendTrace(() => captureStackTrace(_MapState.prototype.put));
+      }
+      delete(key) {
+        const result = this.map.delete(key);
+        this.appendTrace(() => captureStackTrace(_MapState.prototype.delete));
+        return result;
+      }
+      has(key) {
+        return this.map.has(key);
+      }
+      getEntry(key) {
+        return this.map.get(key);
+      }
+      keys() {
+        return this.map.keys();
+      }
+      values() {
+        return this.map.values();
+      }
+      entries() {
+        return this.map.entries();
+      }
+      forEach(callbackfn) {
+        this.map.forEach(callbackfn);
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      [Symbol.iterator]() {
+        return this.map[Symbol.iterator]();
+      }
+    };
+    SetState = class _SetState extends State {
+      constructor(_set) {
+        super(_set);
+        this._set = _set;
+      }
+      _set;
+      set(value) {
+        super.set(value);
+        this._set = value;
+      }
+      get size() {
+        return this._set.size;
+      }
+      add(value) {
+        this._set.add(value);
+        this.appendTrace(() => captureStackTrace(_SetState.prototype.add));
+      }
+      delete(value) {
+        const result = this._set.delete(value);
+        this.appendTrace(() => captureStackTrace(_SetState.prototype.delete));
+        return result;
+      }
+      has(value) {
+        return this._set.has(value);
+      }
+      values() {
+        return this._set.values();
+      }
+      entries() {
+        return this._set.entries();
+      }
+      forEach(callbackfn) {
+        this._set.forEach(callbackfn);
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      [Symbol.iterator]() {
+        return this._set[Symbol.iterator]();
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/string-fragments.ts
+function fragmentValue(fragment) {
+  switch (fragment.type) {
+    case "literal":
+      return fragment.lit;
+    case "token":
+      return fragment.token.toString();
+    case "intrinsic":
+      return fragment.value;
+  }
+}
+var TokenizedStringFragments;
+var init_string_fragments = __esm({
+  "../../aws-cdk-lib/core/lib/string-fragments.ts"() {
+    "use strict";
+    init_token();
+    TokenizedStringFragments = class _TokenizedStringFragments {
+      fragments = new Array();
+      get firstToken() {
+        const first = this.fragments[0];
+        if (first.type === "token") {
+          return first.token;
+        }
+        return void 0;
+      }
+      get firstValue() {
+        return fragmentValue(this.fragments[0]);
+      }
+      get length() {
+        return this.fragments.length;
+      }
+      addLiteral(lit2) {
+        this.fragments.push({ type: "literal", lit: lit2 });
+      }
+      addToken(token) {
+        this.fragments.push({ type: "token", token });
+      }
+      addIntrinsic(value) {
+        this.fragments.push({ type: "intrinsic", value });
+      }
+      /**
+       * Return all Tokens from this string
+       */
+      get tokens() {
+        const ret = new Array();
+        for (const f of this.fragments) {
+          if (f.type === "token") {
+            ret.push(f.token);
+          }
+        }
+        return ret;
+      }
+      /**
+       * Apply a transformation function to all tokens in the string
+       */
+      mapTokens(mapper) {
+        const ret = new _TokenizedStringFragments();
+        for (const f of this.fragments) {
+          switch (f.type) {
+            case "literal":
+              ret.addLiteral(f.lit);
+              break;
+            case "token":
+              const mapped = mapper.mapToken(f.token);
+              if (isResolvableObject(mapped)) {
+                ret.addToken(mapped);
+              } else if (Token.isUnresolved(mapped)) {
+                ret.addIntrinsic(mapped);
+              } else {
+                ret.addLiteral(mapped);
+              }
+              break;
+            case "intrinsic":
+              ret.addIntrinsic(f.value);
+              break;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Combine the string fragments using the given joiner.
+       *
+       * If there are any
+       */
+      join(concat) {
+        if (this.fragments.length === 0) {
+          return concat.join(void 0, void 0);
+        }
+        if (this.fragments.length === 1) {
+          return this.firstValue;
+        }
+        const values = this.fragments.map(fragmentValue);
+        while (values.length > 1) {
+          const prefix = values.splice(0, 2);
+          values.splice(0, 0, concat.join(prefix[0], prefix[1]));
+        }
+        return values[0];
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/encoding.ts
+function regexQuote(s) {
+  return s.replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&");
+}
+function unresolved(obj) {
+  if (typeof obj === "string") {
+    return obj.includes(ANY_TOKEN_MARKER) && TokenString.forString(obj).test();
+  } else if (typeof obj === "number") {
+    return extractTokenDouble(obj) !== void 0;
+  } else if (Array.isArray(obj) && obj.length === 1) {
+    return typeof obj[0] === "string" && TokenString.forListToken(obj[0]).test();
+  } else {
+    return isResolvableObject(obj);
+  }
+}
+function createTokenDouble(x) {
+  if (Math.floor(x) !== x || x < 0) {
+    throw new UnscopedValidationError(lit`OnlyEncodePositiveIntegers`, "Can only encode positive integers");
+  }
+  if (x > MAX_ENCODABLE_INTEGER) {
+    throw new UnscopedValidationError(lit`IndexLargeEncode`, `Got an index too large to encode: ${x}`);
+  }
+  const buf = new ArrayBuffer(8);
+  const ints = new Uint32Array(buf);
+  ints[0] = x & 4294967295;
+  ints[1] = shr32(x) & 65535 | DOUBLE_TOKEN_MARKER_BITS;
+  return new Float64Array(buf)[0];
+}
+function shr32(x) {
+  return Math.floor(x / BITS32);
+}
+function shl32(x) {
+  return x * BITS32;
+}
+function extractTokenDouble(encoded) {
+  const buf = new ArrayBuffer(8);
+  new Float64Array(buf)[0] = encoded;
+  const ints = new Uint32Array(buf);
+  if ((ints[1] & 4294901760) !== DOUBLE_TOKEN_MARKER_BITS) {
+    return void 0;
+  }
+  return ints[0] + shl32(ints[1] & 65535);
+}
+var ANY_TOKEN_MARKER, BEGIN_STRING_TOKEN_MARKER, BEGIN_LIST_TOKEN_MARKER, END_TOKEN_MARKER, VALID_KEY_CHARS, QUOTED_BEGIN_STRING_TOKEN_MARKER, QUOTED_BEGIN_LIST_TOKEN_MARKER, QUOTED_END_TOKEN_MARKER, STRINGIFIED_NUMBER_PATTERN, STRING_TOKEN_REGEX, LIST_TOKEN_REGEX, TokenString, DOUBLE_TOKEN_MARKER_BITS, MAX_ENCODABLE_INTEGER, BITS32, STRINGIFIED_NUMBER_REGEX;
+var init_encoding = __esm({
+  "../../aws-cdk-lib/core/lib/private/encoding.ts"() {
+    "use strict";
+    init_errors();
+    init_string_fragments();
+    init_token();
+    init_literal_string();
+    ANY_TOKEN_MARKER = "Token[";
+    BEGIN_STRING_TOKEN_MARKER = "${Token[";
+    BEGIN_LIST_TOKEN_MARKER = "#{Token[";
+    END_TOKEN_MARKER = "]}";
+    VALID_KEY_CHARS = "a-zA-Z0-9:._-";
+    QUOTED_BEGIN_STRING_TOKEN_MARKER = regexQuote(BEGIN_STRING_TOKEN_MARKER);
+    QUOTED_BEGIN_LIST_TOKEN_MARKER = regexQuote(BEGIN_LIST_TOKEN_MARKER);
+    QUOTED_END_TOKEN_MARKER = regexQuote(END_TOKEN_MARKER);
+    STRINGIFIED_NUMBER_PATTERN = "-1\\.\\d{10,16}e\\+289";
+    STRING_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_STRING_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}|(${STRINGIFIED_NUMBER_PATTERN})`, "g");
+    LIST_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_LIST_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}`, "g");
+    TokenString = class _TokenString {
+      constructor(str, re) {
+        this.str = str;
+        this.re = re;
+      }
+      str;
+      re;
+      /**
+       * Returns a `TokenString` for this string.
+       */
+      static forString(s) {
+        return new _TokenString(s, STRING_TOKEN_REGEX);
+      }
+      /**
+       * Returns a `TokenString` for this string (must be the first string element of the list)
+       */
+      static forListToken(s) {
+        return new _TokenString(s, LIST_TOKEN_REGEX);
+      }
+      /**
+       * Split string on markers, substituting markers with Tokens
+       */
+      split(lookup) {
+        const ret = new TokenizedStringFragments();
+        let rest = 0;
+        this.re.lastIndex = 0;
+        let m = this.re.exec(this.str);
+        while (m) {
+          if (m.index > rest) {
+            ret.addLiteral(this.str.substring(rest, m.index));
+          }
+          ret.addToken(lookup(m[1] ?? m[2]));
+          rest = this.re.lastIndex;
+          m = this.re.exec(this.str);
+        }
+        if (rest < (this.str ?? "").length) {
+          ret.addLiteral(this.str.substring(rest));
+        }
+        return ret;
+      }
+      /**
+       * Indicates if this string includes tokens.
+       */
+      test() {
+        this.re.lastIndex = 0;
+        return this.re.test(this.str);
+      }
+    };
+    DOUBLE_TOKEN_MARKER_BITS = 64511 << 16;
+    MAX_ENCODABLE_INTEGER = Math.pow(2, 48) - 1;
+    BITS32 = Math.pow(2, 32);
+    STRINGIFIED_NUMBER_REGEX = new RegExp(STRINGIFIED_NUMBER_PATTERN);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/type-hints.ts
+var init_type_hints = __esm({
+  "../../aws-cdk-lib/core/lib/type-hints.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/intrinsic.ts
+function isFunction(x) {
+  return typeof x === "function";
+}
+var Intrinsic;
+var init_intrinsic = __esm({
+  "../../aws-cdk-lib/core/lib/private/intrinsic.ts"() {
+    "use strict";
+    init_errors();
+    init_token();
+    init_type_hints();
+    init_literal_string();
+    Intrinsic = class {
+      /**
+       * The captured stack trace which represents the location in which this token was created.
+       */
+      creationStack;
+      /**
+       * Type that the Intrinsic is expected to evaluate to.
+       */
+      typeHint;
+      value;
+      constructor(value, options = {}) {
+        if (isFunction(value)) {
+          throw new UnscopedValidationError(lit`MustBeArgumentIntrinsicPlain`, `Argument to Intrinsic must be a plain value object, got ${value}`);
+        }
+        this.value = value;
+        this.typeHint = options.typeHint ?? "string" /* STRING */;
+      }
+      resolve(_context) {
+        return this.value;
+      }
+      /**
+       * Convert an instance of this Token to a string
+       *
+       * This method will be called implicitly by language runtimes if the object
+       * is embedded into a string. We treat it the same as an explicit
+       * stringification.
+       */
+      toString() {
+        return Token.asString(this);
+      }
+      /**
+       * Convert an instance of this Token to a string list
+       *
+       * This method will be called implicitly by language runtimes if the object
+       * is embedded into a list. We treat it the same as an explicit
+       * stringification.
+       */
+      toStringList() {
+        return Token.asList(this);
+      }
+      /**
+       * Turn this Token into JSON
+       *
+       * Called automatically when JSON.stringify() is called on a Token.
+       */
+      toJSON() {
+        return "";
+      }
+      /**
+       * Creates a throwable Error object that contains the token creation stack trace.
+       * @param message Error message
+       */
+      newError(message) {
+        return new Error(`${message}
+Token created:
+    at ${this.creationStack.join("\n    at ")}
+Error thrown:`);
+      }
+    };
+    Intrinsic.prototype.creationStack = ["Token stack traces are no longer captured"];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/token-map.ts
+function cachedValue(x, sym, prod) {
+  let cached = x[sym];
+  if (cached === void 0) {
+    cached = prod();
+    Object.defineProperty(x, sym, { value: cached });
+  }
+  return cached;
+}
+var glob, STRING_SYMBOL, LIST_SYMBOL, NUMBER_SYMBOL, TokenMap;
+var init_token_map = __esm({
+  "../../aws-cdk-lib/core/lib/private/token-map.ts"() {
+    "use strict";
+    init_encoding();
+    init_errors();
+    init_token();
+    init_literal_string();
+    glob = global;
+    STRING_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.STRING");
+    LIST_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.LIST");
+    NUMBER_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.NUMBER");
+    TokenMap = class _TokenMap {
+      /**
+       * Singleton instance of the token string map
+       */
+      static instance() {
+        if (!glob.__cdkTokenMap) {
+          glob.__cdkTokenMap = new _TokenMap();
+        }
+        return glob.__cdkTokenMap;
+      }
+      stringTokenMap = /* @__PURE__ */ new Map();
+      numberTokenMap = /* @__PURE__ */ new Map();
+      /**
+       * Counter to assign unique IDs to tokens
+       *
+       * Start at a random number to prevent people from accidentally taking
+       * dependencies on token values between runs.
+       *
+       * This is most prominent in tests, where people will write:
+       *
+       * ```ts
+       * sha256(JSON.stringify({ ...some structure that can contain tokens ... }))
+       * ```
+       *
+       * This should have been:
+       *
+       * ```ts
+       * sha256(JSON.stringify(stack.resolve({ ...some structure that can contain tokens ... })))
+       * ```
+       *
+       * The hash value is hard to inspect for correctness. It will LOOK consistent
+       * during testing, but will break as soon as someone stringifies another
+       * token before the run.
+       *
+       * By changing the starting number for tokens, we ensure that the hash is almost
+       * guaranteed to be different during a few test runs, so the hashing of unresolved
+       * tokens can be detected.
+       */
+      tokenCounter = Math.floor(Math.random() * 10);
+      /**
+       * Generate a unique string for this Token, returning a key
+       *
+       * Every call for the same Token will produce a new unique string, no
+       * attempt is made to deduplicate. Token objects should cache the
+       * value themselves, if required.
+       *
+       * The token can choose (part of) its own representation string with a
+       * hint. This may be used to produce aesthetically pleasing and
+       * recognizable token representations for humans.
+       */
+      registerString(token, displayHint) {
+        return cachedValue(token, STRING_SYMBOL, () => {
+          const key = this.registerStringKey(token, displayHint);
+          return `${BEGIN_STRING_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`;
+        });
+      }
+      /**
+       * Generate a unique string for this Token, returning a key
+       */
+      registerList(token, displayHint) {
+        return cachedValue(token, LIST_SYMBOL, () => {
+          const key = this.registerStringKey(token, displayHint);
+          return [`${BEGIN_LIST_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`];
+        });
+      }
+      /**
+       * Create a unique number representation for this Token and return it
+       */
+      registerNumber(token) {
+        return cachedValue(token, NUMBER_SYMBOL, () => {
+          return this.registerNumberKey(token);
+        });
+      }
+      /**
+       * Lookup a token from an encoded value
+       */
+      tokenFromEncoding(x) {
+        if (isResolvableObject(x)) {
+          return x;
+        }
+        if (typeof x === "string") {
+          return this.lookupString(x);
+        }
+        if (Array.isArray(x)) {
+          return this.lookupList(x);
+        }
+        if (Token.isUnresolved(x)) {
+          return x;
+        }
+        return void 0;
+      }
+      /**
+       * Reverse a string representation into a Token object
+       */
+      lookupString(s) {
+        const fragments = this.splitString(s);
+        if (fragments.tokens.length > 0 && fragments.length === 1) {
+          return fragments.firstToken;
+        }
+        return void 0;
+      }
+      /**
+       * Reverse a string representation into a Token object
+       */
+      lookupList(xs) {
+        if (xs.length !== 1) {
+          return void 0;
+        }
+        const str = TokenString.forListToken(xs[0]);
+        const fragments = str.split(this.lookupToken.bind(this));
+        if (fragments.length === 1) {
+          return fragments.firstToken;
+        }
+        return void 0;
+      }
+      /**
+       * Split a string into literals and Tokens
+       */
+      splitString(s) {
+        const str = TokenString.forString(s);
+        return str.split(this.lookupToken.bind(this));
+      }
+      /**
+       * Reverse a number encoding into a Token, or undefined if the number wasn't a Token
+       */
+      lookupNumberToken(x) {
+        const tokenIndex = extractTokenDouble(x);
+        if (tokenIndex === void 0) {
+          return void 0;
+        }
+        const t = this.numberTokenMap.get(tokenIndex);
+        if (t === void 0) {
+          throw new UnscopedValidationError(lit`EncodedRepresentationUnknownNumber`, "Encoded representation of unknown number Token found");
+        }
+        return t;
+      }
+      /**
+       * Find a Token by key.
+       *
+       * This excludes the token markers.
+       */
+      lookupToken(key) {
+        const token = this.stringTokenMap.get(key);
+        if (!token) {
+          throw new UnscopedValidationError(lit`UnrecognizedTokenKey`, `Unrecognized token key: ${key}`);
+        }
+        return token;
+      }
+      registerStringKey(token, displayHint) {
+        const counter = this.tokenCounter++;
+        const representation = (displayHint || "TOKEN").replace(new RegExp(`[^${VALID_KEY_CHARS}]`, "g"), ".");
+        const key = `${representation}.${counter}`;
+        this.stringTokenMap.set(key, token);
+        return key;
+      }
+      registerNumberKey(token) {
+        const counter = this.tokenCounter++;
+        const dbl = createTokenDouble(counter);
+        this.numberTokenMap.set(counter, token);
+        this.stringTokenMap.set(`${dbl}`, token);
+        return dbl;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/resolvable.ts
+var StringConcat, DefaultTokenResolver;
+var init_resolvable = __esm({
+  "../../aws-cdk-lib/core/lib/resolvable.ts"() {
+    "use strict";
+    init_errors();
+    init_encoding();
+    init_literal_string();
+    init_token_map();
+    StringConcat = class {
+      join(left, right) {
+        if (left === void 0) {
+          return right !== void 0 ? `${right}` : void 0;
+        }
+        if (right === void 0) {
+          return `${left}`;
+        }
+        return `${left}${right}`;
+      }
+    };
+    DefaultTokenResolver = class {
+      constructor(concat) {
+        this.concat = concat;
+      }
+      concat;
+      /**
+       * Default Token resolution
+       *
+       * Resolve the Token, recurse into whatever it returns,
+       * then finally post-process it.
+       */
+      resolveToken(t, context, postProcessor) {
+        try {
+          let resolved = t.resolve(context);
+          resolved = context.resolve(resolved);
+          resolved = postProcessor.postProcess(resolved, context);
+          return resolved;
+        } catch (e) {
+          let message = `Resolution error: ${e.message}.`;
+          e.message = message;
+          throw e;
+        }
+      }
+      /**
+       * Resolve string fragments to Tokens
+       */
+      resolveString(fragments, context) {
+        return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).join(this.concat);
+      }
+      resolveList(xs, context) {
+        if (xs.length !== 1) {
+          throw new UnscopedValidationError(lit`CannotAddElementsListToken`, `Cannot add elements to list token, got: ${xs}`);
+        }
+        const str = TokenString.forListToken(xs[0]);
+        const tokenMap2 = TokenMap.instance();
+        const fragments = str.split(tokenMap2.lookupToken.bind(tokenMap2));
+        if (fragments.length !== 1) {
+          throw new UnscopedValidationError(lit`CannotConcatenateStringsTokenizedString`, `Cannot concatenate strings in a tokenized string array, got: ${xs[0]}`);
+        }
+        return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).firstValue;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/resolve.ts
+function couldContainToken(s) {
+  return s.includes(ANY_TOKEN_MARKER) || s.length >= MIN_NUMBER_TOKEN_LENGTH && s.includes("e+289");
+}
+function hasListTokenMarker(s) {
+  return s.includes(BEGIN_LIST_TOKEN_MARKER);
+}
+function resolve(obj, options) {
+  const prefix = options.prefix || [];
+  const leaveEmpty = options.removeEmpty === false;
+  return _resolve(obj, options, prefix, leaveEmpty);
+}
+function _resolve(obj, options, prefix, leaveEmpty) {
+  const t = typeof obj;
+  if (t === "string") {
+    const hasTokenBracket = obj.includes("Token[");
+    if (!hasTokenBracket && !(obj.length >= MIN_NUMBER_TOKEN_LENGTH && obj.includes("e+289"))) {
+      return obj;
+    }
+    if (hasTokenBracket && obj.includes(BEGIN_LIST_TOKEN_MARKER)) {
+      if (TokenString.forListToken(obj).test()) {
+        throw new UnscopedValidationError(lit`EncodedListTokenInScalarContext`, "Found an encoded list token string in a scalar string context. Use 'Fn.select(0, list)' (not 'list[0]') to extract elements from token lists.");
+      }
+    }
+    const str = TokenString.forString(obj);
+    if (str.test()) {
+      const fragments = str.split(lookupToken);
+      return tagResolvedValue(options.resolver.resolveString(fragments, makeContext(options, prefix)), "string" /* STRING */);
+    }
+    return obj;
+  }
+  if (obj === void 0) {
+    return void 0;
+  }
+  if (obj === null) {
+    return null;
+  }
+  if (t === "number") {
+    if (obj > -1e287 && obj < 1e287) {
+      return obj;
+    }
+    return tagResolvedValue(resolveNumberToken(obj, makeContext(options, prefix)), "number" /* NUMBER */);
+  }
+  if (t === "boolean") {
+    return obj;
+  }
+  if (t === "function") {
+    throw new UnscopedValidationError(lit`TryingToResolveNonDataObject`, `Trying to resolve a non-data object. Only token are supported for lazy evaluation. Path: /${prefix.join("/")}. Object: ${obj}`);
+  }
+  if (obj instanceof Date) {
+    return obj;
+  }
+  if (prefix.length > 200) {
+    throw new UnscopedValidationError(lit`CircularReferenceDetected`, "Unable to resolve object tree with circular reference. Path: /" + prefix.join("/"));
+  }
+  if (Array.isArray(obj)) {
+    return resolveArray(obj, options, prefix, leaveEmpty);
+  }
+  if (t === "object" && obj.resolve !== void 0 && typeof obj.resolve === "function") {
+    const context = makeContext(options, prefix);
+    const postProcessor = makePostProcessor(context);
+    return tagResolvedValue(options.resolver.resolveToken(obj, context, postProcessor), "string" /* STRING */);
+  }
+  if (obj._children !== void 0 && obj._metadata !== void 0) {
+    throw new UnscopedValidationError(lit`TryingToResolveConstruct`, "Trying to resolve() a Construct at /" + prefix.join("/"));
+  }
+  return resolveObject(obj, options, prefix, leaveEmpty);
+}
+function resolveArray(obj, options, prefix, leaveEmpty) {
+  for (let i = 0; i < obj.length; i++) {
+    const x = obj[i];
+    if (typeof x === "string" && hasListTokenMarker(x) && TokenString.forListToken(x).test()) {
+      return tagResolvedValue(options.resolver.resolveList(obj, makeContext(options, prefix)), "string-list" /* STRING_LIST */);
+    }
+  }
+  const len = obj.length;
+  const arr = [];
+  for (let i = 0; i < len; i++) {
+    prefix.push(String(i));
+    const value = _resolve(obj[i], options, prefix, leaveEmpty);
+    prefix.pop();
+    if (value === void 0 && !leaveEmpty) {
+      continue;
+    }
+    arr.push(value);
+  }
+  return arr;
+}
+function resolveObject(obj, options, prefix, leaveEmpty) {
+  const keys = Object.keys(obj);
+  const result = {};
+  let intrinsicKeyCtr = 0;
+  for (let ki = 0; ki < keys.length; ki++) {
+    const key = keys[ki];
+    const raw = obj[key];
+    let value;
+    const rawType = typeof raw;
+    if (rawType === "string") {
+      value = couldContainToken(raw) ? _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) : raw;
+    } else if (raw === void 0) {
+      value = void 0;
+    } else if (raw === null) {
+      value = null;
+    } else if (rawType === "number") {
+      value = raw > -1e287 && raw < 1e287 ? raw : _resolveWithPrefix(raw, options, prefix, leaveEmpty, key);
+    } else if (rawType === "boolean") {
+      value = raw;
+    } else {
+      value = _resolveWithPrefix(raw, options, prefix, leaveEmpty, key);
+    }
+    if (value === void 0) {
+      if (leaveEmpty) {
+        result[key] = void 0;
+      }
+      continue;
+    }
+    if (key.length < 5 || !couldContainToken(key)) {
+      result[key] = value;
+      continue;
+    }
+    if (!unresolved(key)) {
+      result[key] = value;
+      continue;
+    }
+    const resolvedKey = makeContext(options, prefix).resolve(key);
+    if (typeof resolvedKey === "string") {
+      result[resolvedKey] = value;
+    } else {
+      if (!options.allowIntrinsicKeys) {
+        throw new UnscopedValidationError(lit`KeyMustResolveToString`, `"${String(key)}" is used as the key in a map so must resolve to a string, but it resolves to: ${JSON.stringify(resolvedKey)}. Consider using "CfnJson" to delay resolution to deployment-time`);
+      }
+      result[`${INTRINSIC_KEY_PREFIX}${intrinsicKeyCtr++}`] = [resolvedKey, value];
+    }
+  }
+  const previousTypeHint = resolvedTypeHint(obj);
+  return previousTypeHint ? tagResolvedValue(result, previousTypeHint) : result;
+}
+function _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) {
+  prefix.push(key);
+  const value = _resolve(raw, options, prefix, leaveEmpty);
+  prefix.pop();
+  return value;
+}
+function makeContext(options, prefix) {
+  const documentPath = prefix.slice();
+  const context = {
+    preparing: options.preparing,
+    scope: options.scope,
+    documentPath,
+    registerPostProcessor(pp) {
+      context._postProcessor = pp;
+    },
+    resolve(x, changeOptions) {
+      const newOptions = changeOptions ? { ...options, ...changeOptions, prefix: documentPath } : { ...options, prefix: documentPath };
+      return resolve(x, newOptions);
+    }
+  };
+  return context;
+}
+function makePostProcessor(context) {
+  return {
+    postProcess(x) {
+      const pp = context._postProcessor;
+      return pp ? pp.postProcess(x, context) : x;
+    }
+  };
+}
+function findTokens(scope, fn) {
+  const resolver = new RememberingTokenResolver(new StringConcat());
+  resolve(fn(), { scope, prefix: [], resolver, preparing: true });
+  return resolver.tokens;
+}
+function writePropertyAssignmentMetadataForConstruct(scope, fn, lookupTable) {
+  const resolver = new PropertyAssignmentMetadataWriter(new StringConcat(), lookupTable);
+  resolve(fn(), { scope, prefix: [], resolver, preparing: true });
+}
+function resolveNumberToken(x, context) {
+  const token = tokenMap.lookupNumberToken(x);
+  if (token === void 0) {
+    return x;
+  }
+  return context.resolve(token);
+}
+function tagResolvedValue(value, typeHint) {
+  if (typeof value !== "object" || value == null) {
+    return value;
+  }
+  Object.defineProperty(value, RESOLUTION_TYPEHINT_SYM, {
+    value: typeHint,
+    configurable: true
+  });
+  return value;
+}
+function resolvedTypeHint(value) {
+  if (typeof value !== "object" || value == null) {
+    return void 0;
+  }
+  return value[RESOLUTION_TYPEHINT_SYM];
+}
+var tokenMap, lookupToken, MIN_NUMBER_TOKEN_LENGTH, RESOLUTION_TYPEHINT_SYM, INTRINSIC_KEY_PREFIX, PropertyAssignmentMetadataWriter, RememberingTokenResolver;
+var init_resolve = __esm({
+  "../../aws-cdk-lib/core/lib/private/resolve.ts"() {
+    "use strict";
+    init_encoding();
+    init_token_map();
+    init_errors();
+    init_resolvable();
+    init_type_hints();
+    init_literal_string();
+    init_box();
+    tokenMap = TokenMap.instance();
+    lookupToken = tokenMap.lookupToken.bind(tokenMap);
+    MIN_NUMBER_TOKEN_LENGTH = 16;
+    RESOLUTION_TYPEHINT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.resolvedTypeHint");
+    INTRINSIC_KEY_PREFIX = "$IntrinsicKey$";
+    PropertyAssignmentMetadataWriter = class extends DefaultTokenResolver {
+      lookupTable;
+      seenDocumentPaths = /* @__PURE__ */ new Set();
+      constructor(concat, lookupTable) {
+        super(concat);
+        this.lookupTable = lookupTable;
+      }
+      resolveToken(t, context, postProcessor) {
+        const result = super.resolveToken(t, context, postProcessor);
+        const lookupTable = this.lookupTable;
+        function propertyNameFromContext(ctx) {
+          const documentPath = ctx.documentPath;
+          if (documentPath.length < 4 || documentPath[0] !== "Resources" || documentPath[2] !== "Properties") {
+            return void 0;
+          }
+          return lookupTable.cfnPropertyName(documentPath[3]);
+        }
+        const propertyName = propertyNameFromContext(context);
+        const documentPathKey = context.documentPath.join("/");
+        if (Box.isBox(t) && propertyName && !this.seenDocumentPaths.has(documentPathKey)) {
+          for (let stackTrace of t.getStackTraces()) {
+            context.scope.node.addMetadata("aws:cdk:propertyAssignment", {
+              propertyName,
+              stackTrace
+            });
+            this.seenDocumentPaths.add(documentPathKey);
+          }
+        }
+        return result;
+      }
+    };
+    RememberingTokenResolver = class extends DefaultTokenResolver {
+      tokensSeen = /* @__PURE__ */ new Set();
+      resolveToken(t, context, postProcessor) {
+        this.tokensSeen.add(t);
+        return super.resolveToken(t, context, postProcessor);
+      }
+      resolveString(s, context) {
+        const ret = super.resolveString(s, context);
+        return ret;
+      }
+      get tokens() {
+        return Array.from(this.tokensSeen);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/token.ts
+function isResolvableObject(x) {
+  return typeof x === "object" && x !== null && typeof x.resolve === "function";
+}
+var TokenComparison, Token, Tokenization, JsonNull;
+var init_token = __esm({
+  "../../aws-cdk-lib/core/lib/token.ts"() {
+    "use strict";
+    init_errors();
+    init_lazy();
+    init_encoding();
+    init_intrinsic();
+    init_literal_string();
+    init_resolve();
+    init_token_map();
+    TokenComparison = class _TokenComparison {
+      /**
+       * This means we're certain the two components are NOT
+       * Tokens, and identical.
+       */
+      static SAME = new _TokenComparison();
+      /**
+       * This means we're certain the two components are NOT
+       * Tokens, and different.
+       */
+      static DIFFERENT = new _TokenComparison();
+      /** This means exactly one of the components is a Token. */
+      static ONE_UNRESOLVED = new _TokenComparison();
+      /** This means both components are Tokens. */
+      static BOTH_UNRESOLVED = new _TokenComparison();
+      constructor() {
+      }
+    };
+    Token = class _Token {
+      /**
+       * Returns true if obj represents an unresolved value
+       *
+       * One of these must be true:
+       *
+       * - `obj` is an IResolvable
+       * - `obj` is a string containing at least one encoded `IResolvable`
+       * - `obj` is either an encoded number or list
+       *
+       * This does NOT recurse into lists or objects to see if they
+       * contain resolvables.
+       *
+       * @param obj The object to test.
+       */
+      static isUnresolved(obj) {
+        return unresolved(obj);
+      }
+      /**
+       * The negation of `Token.isUnresolved()`. In TypeScript, narrows the type
+       * to exclude `IResolvable`.
+       * @param obj The object to test.
+       */
+      static isResolved(obj) {
+        return !_Token.isUnresolved(obj);
+      }
+      /**
+       * Return a reversible string representation of this token
+       *
+       * If the Token is initialized with a literal, the stringified value of the
+       * literal is returned. Otherwise, a special quoted string representation
+       * of the Token is returned that can be embedded into other strings.
+       *
+       * Strings with quoted Tokens in them can be restored back into
+       * complex values with the Tokens restored by calling `resolve()`
+       * on the string.
+       */
+      static asString(value, options = {}) {
+        if (typeof value === "string") {
+          return value;
+        }
+        return TokenMap.instance().registerString(_Token.asAny(value), options.displayHint);
+      }
+      /**
+       * Return a reversible number representation of this token
+       */
+      static asNumber(value) {
+        if (typeof value === "number") {
+          return value;
+        }
+        return TokenMap.instance().registerNumber(_Token.asAny(value));
+      }
+      /**
+       * Return a reversible list representation of this token
+       */
+      static asList(value, options = {}) {
+        if (Array.isArray(value) && value.every((x) => typeof x === "string")) {
+          return value;
+        }
+        return TokenMap.instance().registerList(_Token.asAny(value), options.displayHint);
+      }
+      /**
+       * Return a resolvable representation of the given value
+       */
+      static asAny(value) {
+        value = Tokenization.reverse(value) ?? value;
+        return isResolvableObject(value) ? value : new Intrinsic(value);
+      }
+      /** Compare two strings that might contain Tokens with each other. */
+      static compareStrings(possibleToken1, possibleToken2) {
+        const firstIsUnresolved = _Token.isUnresolved(possibleToken1);
+        const secondIsUnresolved = _Token.isUnresolved(possibleToken2);
+        if (firstIsUnresolved && secondIsUnresolved) {
+          return TokenComparison.BOTH_UNRESOLVED;
+        }
+        if (firstIsUnresolved || secondIsUnresolved) {
+          return TokenComparison.ONE_UNRESOLVED;
+        }
+        return possibleToken1 === possibleToken2 ? TokenComparison.SAME : TokenComparison.DIFFERENT;
+      }
+      constructor() {
+      }
+    };
+    Tokenization = class _Tokenization {
+      /**
+       * Un-encode a string potentially containing encoded tokens
+       */
+      static reverseString(s) {
+        return TokenMap.instance().splitString(s);
+      }
+      /**
+       * Un-encode a string which is either a complete encoded token, or doesn't contain tokens at all
+       *
+       * It's illegal for the string to be a concatenation of an encoded token and something else.
+       */
+      static reverseCompleteString(s) {
+        const fragments = _Tokenization.reverseString(s);
+        if (fragments.length !== 1) {
+          throw new UnscopedValidationError(lit`TokenzationReverseCompleteStringArgument`, `Tokenzation.reverseCompleteString: argument must not be a concatenation, got '${s}'`);
+        }
+        return fragments.firstToken;
+      }
+      /**
+       * Un-encode a Tokenized value from a number
+       */
+      static reverseNumber(n) {
+        return TokenMap.instance().lookupNumberToken(n);
+      }
+      /**
+       * Un-encode a Tokenized value from a list
+       */
+      static reverseList(l) {
+        return TokenMap.instance().lookupList(l);
+      }
+      /**
+       * Reverse any value into a Resolvable, if possible
+       *
+       * In case of a string, the string must not be a concatenation.
+       */
+      static reverse(x, options = {}) {
+        if (_Tokenization.isResolvable(x)) {
+          return x;
+        }
+        if (typeof x === "string") {
+          if (options.failConcat === false) {
+            const fragments = _Tokenization.reverseString(x);
+            return fragments.length === 1 ? fragments.firstToken : void 0;
+          }
+          return _Tokenization.reverseCompleteString(x);
+        }
+        if (Array.isArray(x)) {
+          return _Tokenization.reverseList(x);
+        }
+        if (typeof x === "number") {
+          return _Tokenization.reverseNumber(x);
+        }
+        return void 0;
+      }
+      /**
+       * Resolves an object by evaluating all tokens and removing any undefined or empty objects or arrays.
+       * Values can only be primitives, arrays or tokens. Other objects (i.e. with methods) will be rejected.
+       *
+       * @param obj The object to resolve.
+       * @param options Prefix key path components for diagnostics.
+       */
+      static resolve(obj, options) {
+        return resolve(obj, {
+          scope: options.scope,
+          resolver: options.resolver,
+          preparing: options.preparing ?? false,
+          removeEmpty: options.removeEmpty
+        });
+      }
+      /**
+       * Return whether the given object is an IResolvable object
+       *
+       * This is different from Token.isUnresolved() which will also check for
+       * encoded Tokens, whereas this method will only do a type check on the given
+       * object.
+       */
+      static isResolvable(obj) {
+        return isResolvableObject(obj);
+      }
+      /**
+       * Stringify a number directly or lazily if it's a Token. If it is an object (i.e., { Ref: 'SomeLogicalId' }), return it as-is.
+       */
+      static stringifyNumber(x) {
+        if (Token.isUnresolved(x)) {
+          return Lazy.uncachedString({
+            produce: (context) => {
+              const resolved = context.resolve(x);
+              return typeof resolved !== "number" ? resolved : `${resolved}`;
+            }
+          });
+        } else {
+          return typeof x !== "number" ? x : `${x}`;
+        }
+      }
+      constructor() {
+      }
+    };
+    JsonNull = class _JsonNull {
+      /** The canonical instance of `JsonNull`. */
+      static INSTANCE = new _JsonNull();
+      creationStack = ["Token stack traces are no longer captured"];
+      constructor() {
+      }
+      resolve(_ctx) {
+        return null;
+      }
+      /** Obtains the JSON representation of this object (`null`) */
+      toJSON() {
+        return null;
+      }
+      /** Obtains the string representation of this object (`'null'`) */
+      toString() {
+        return "null";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/lazy.ts
+var Lazy, LazyBase, LazyBox, LazyString, LazyNumber, LazyList, LazyAny;
+var init_lazy = __esm({
+  "../../aws-cdk-lib/core/lib/lazy.ts"() {
+    "use strict";
+    init_box();
+    init_token();
+    Lazy = class {
+      /**
+       * Defer the calculation of a string value to synthesis time
+       *
+       * Use this if you want to render a string to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string` type and don't need
+       * the calculation to be deferred, use `Token.asString()` instead.
+       *
+       * @deprecated Use `Lazy.string()` or `Lazy.uncachedString()` instead.
+       */
+      static stringValue(producer, options = {}) {
+        return Token.asString(new LazyString(producer, false), options);
+      }
+      /**
+       * Defer the one-time calculation of a string value to synthesis time
+       *
+       * Use this if you want to render a string to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string` type and don't need
+       * the calculation to be deferred, use `Token.asString()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static string(producer, options = {}) {
+        return Token.asString(new LazyBox(new LazyString(producer, true)), options);
+      }
+      /**
+       * Defer the calculation of a string value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.string()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedString(producer, options = {}) {
+        return Token.asString(new LazyString(producer, false), options);
+      }
+      /**
+       * Defer the one-time calculation of a number value to synthesis time
+       *
+       * Use this if you want to render a number to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `number` type and don't need
+       * the calculation to be deferred, use `Token.asNumber()` instead.
+       *
+       * @deprecated Use `Lazy.number()` or `Lazy.uncachedNumber()` instead.
+       */
+      static numberValue(producer) {
+        return Token.asNumber(new LazyNumber(producer, false));
+      }
+      /**
+       * Defer the one-time calculation of a number value to synthesis time
+       *
+       * Use this if you want to render a number to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `number` type and don't need
+       * the calculation to be deferred, use `Token.asNumber()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static number(producer) {
+        return Token.asNumber(new LazyBox(new LazyNumber(producer, true)));
+      }
+      /**
+       * Defer the calculation of a number value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.number()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedNumber(producer) {
+        return Token.asNumber(new LazyNumber(producer, false));
+      }
+      /**
+       * Defer the one-time calculation of a list value to synthesis time
+       *
+       * Use this if you want to render a list to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string[]` type and don't need
+       * the calculation to be deferred, use `Token.asList()` instead.
+       *
+       * @deprecated Use `Lazy.list()` or `Lazy.uncachedList()` instead.
+       */
+      static listValue(producer, options = {}) {
+        return Token.asList(new LazyList(producer, false, options), options);
+      }
+      /**
+       * Defer the calculation of a list value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.list()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedList(producer, options = {}) {
+        return Token.asList(new LazyList(producer, false, options), options);
+      }
+      /**
+       * Defer the one-time calculation of a list value to synthesis time
+       *
+       * Use this if you want to render a list to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string[]` type and don't need
+       * the calculation to be deferred, use `Token.asList()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static list(producer, options = {}) {
+        return Token.asList(new LazyBox(new LazyList(producer, true, options)), options);
+      }
+      /**
+       * Defer the one-time calculation of an arbitrarily typed value to synthesis time
+       *
+       * Use this if you want to render an object to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * @deprecated Use `Lazy.any()` or `Lazy.uncachedAny()` instead.
+       */
+      static anyValue(producer, options = {}) {
+        return new LazyAny(producer, false, options);
+      }
+      /**
+       * Defer the one-time calculation of an arbitrarily typed value to synthesis time
+       *
+       * Use this if you want to render an object to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * The inner function will only be invoked one time and cannot depend on
+       * resolution context.
+       */
+      static any(producer, options = {}) {
+        return new LazyBox(new LazyAny(producer, true, options));
+      }
+      /**
+       * Defer the calculation of an untyped value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.any()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedAny(producer, options = {}) {
+        return new LazyAny(producer, false, options);
+      }
+      constructor() {
+      }
+    };
+    LazyBase = class {
+      constructor(producer, cache) {
+        this.producer = producer;
+        this.cache = cache;
+      }
+      producer;
+      cache;
+      creationStack;
+      _cached;
+      resolve(context) {
+        if (this.cache) {
+          return this._cached ?? (this._cached = this.producer.produce(context));
+        } else {
+          return this.producer.produce(context);
+        }
+      }
+      toString() {
+        return Token.asString(this);
+      }
+      /**
+       * Turn this Token into JSON
+       *
+       * Called automatically when JSON.stringify() is called on a Token.
+       */
+      toJSON() {
+        return "";
+      }
+    };
+    LazyBase.prototype.creationStack = ["Token stack traces are no longer captured"];
+    LazyBox = class extends ReadonlyState {
+      inner;
+      constructor(inner) {
+        super(void 0);
+        this.inner = inner;
+      }
+      get() {
+        return this.inner.resolve(void 0);
+      }
+      toString() {
+        return Token.asString(this);
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    LazyString = class extends LazyBase {
+    };
+    LazyNumber = class extends LazyBase {
+    };
+    LazyList = class extends LazyBase {
+      constructor(producer, cache, options = {}) {
+        super(producer, cache);
+        this.options = options;
+      }
+      options;
+      resolve(context) {
+        const resolved = super.resolve(context);
+        if (resolved?.length === 0 && this.options.omitEmpty) {
+          return void 0;
+        }
+        return resolved;
+      }
+    };
+    LazyAny = class extends LazyBase {
+      constructor(producer, cache, options = {}) {
+        super(producer, cache);
+        this.options = options;
+      }
+      options;
+      resolve(context) {
+        const resolved = super.resolve(context);
+        if (Array.isArray(resolved) && resolved.length === 0 && this.options.omitEmptyArray) {
+          return void 0;
+        }
+        return resolved;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/reference.ts
+var REFERENCE_SYMBOL, Reference;
+var init_reference = __esm({
+  "../../aws-cdk-lib/core/lib/reference.ts"() {
+    "use strict";
+    init_intrinsic();
+    REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Reference");
+    Reference = class extends Intrinsic {
+      /**
+       * Check whether this is actually a Reference
+       */
+      static isReference(x) {
+        return typeof x === "object" && x !== null && REFERENCE_SYMBOL in x;
+      }
+      target;
+      displayName;
+      constructor(value, target, displayName, typeHint) {
+        super(value, { typeHint });
+        Object.defineProperty(this, REFERENCE_SYMBOL, { value: true });
+        this.target = target;
+        this.displayName = displayName || "Reference";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-reference.ts
+var CFN_REFERENCE_SYMBOL, CfnReference;
+var init_cfn_reference = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-reference.ts"() {
+    "use strict";
+    init_reference();
+    init_token();
+    init_errors();
+    init_literal_string();
+    init_core_construct_finders();
+    CFN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnReference");
+    CfnReference = class _CfnReference extends Reference {
+      constructor(value, displayName, target, typeHint) {
+        super(value, target, displayName, typeHint);
+        this.target = target;
+        this.replacementTokens = /* @__PURE__ */ new Map();
+        this.targetStack = stackOf(target);
+        Object.defineProperty(this, CFN_REFERENCE_SYMBOL, { value: true });
+      }
+      target;
+      /**
+       * Check whether this is actually a Reference
+       */
+      static isCfnReference(x) {
+        return CFN_REFERENCE_SYMBOL in x;
+      }
+      /**
+       * Return the CfnReference for the indicated target
+       *
+       * Will make sure that multiple invocations for the same target and intrinsic
+       * return the same CfnReference. Because CfnReferences accumulate state in
+       * the prepare() phase (for the purpose of cross-stack references), it's
+       * important that the state isn't lost if it's lazily created, like so:
+       *
+       *     Lazy.string({ produce: () => new CfnReference(...) })
+       *
+       */
+      static for(target, attribute, refRender, typeHint) {
+        return _CfnReference.singletonReference(target, attribute, refRender, () => {
+          const cfnIntrinsic = refRender === 0 /* FN_SUB */ ? "${" + target.logicalId + (attribute === "Ref" ? "" : `.${attribute}`) + "}" : attribute === "Ref" ? { Ref: target.logicalId } : {
+            "Fn::GetAtt": refRender === 1 /* GET_ATT_STRING */ ? `${target.logicalId}.${attribute}` : [target.logicalId, attribute]
+          };
+          return new _CfnReference(cfnIntrinsic, attribute, target, typeHint);
+        });
+      }
+      /**
+       * Return a CfnReference that references a pseudo referenced
+       */
+      static forPseudo(pseudoName, scope) {
+        return _CfnReference.singletonReference(scope, `Pseudo:${pseudoName}`, void 0, () => {
+          const cfnIntrinsic = { Ref: pseudoName };
+          return new _CfnReference(cfnIntrinsic, pseudoName, scope);
+        });
+      }
+      /**
+       * Static table where we keep singleton CfnReference instances
+       */
+      static referenceTable = /* @__PURE__ */ new Map();
+      /**
+       * Get or create the table.
+       * Passing fnSub = true allows cloudformation-include to correctly handle Fn::Sub.
+       */
+      static singletonReference(target, attribKey, refRender, fresh) {
+        let attribs = _CfnReference.referenceTable.get(target);
+        if (!attribs) {
+          attribs = /* @__PURE__ */ new Map();
+          _CfnReference.referenceTable.set(target, attribs);
+        }
+        let cacheKey = attribKey;
+        switch (refRender) {
+          case 0 /* FN_SUB */:
+            cacheKey += "Fn::Sub";
+            break;
+          case 1 /* GET_ATT_STRING */:
+            cacheKey += "Fn::GetAtt::String";
+            break;
+        }
+        let ref = attribs.get(cacheKey);
+        if (!ref) {
+          ref = fresh();
+          attribs.set(cacheKey, ref);
+        }
+        return ref;
+      }
+      /**
+       * The Tokens that should be returned for each consuming stack (as decided by the producing Stack)
+       */
+      replacementTokens;
+      targetStack;
+      resolve(context) {
+        const consumingStack = stackOf(context.scope);
+        const token = this.replacementTokens.get(consumingStack);
+        if (token) {
+          return token.resolve(context);
+        } else {
+          return super.resolve(context);
+        }
+      }
+      hasValueForStack(stack) {
+        if (stack === this.targetStack) {
+          return true;
+        }
+        return this.replacementTokens.has(stack);
+      }
+      assignValueForStack(stack, value) {
+        if (stack === this.targetStack) {
+          throw new UnscopedValidationError(lit`CannotAssignValueStack`, "cannot assign a value for the same stack");
+        }
+        if (this.hasValueForStack(stack)) {
+          throw new UnscopedValidationError(lit`CannotAssignReferenceValueTwice`, "Cannot assign a reference value twice to the same stack. Use hasValueForStack to check first");
+        }
+        this.replacementTokens.set(stack, value);
+      }
+      /**
+       * Implementation of toString() that will use the display name
+       */
+      toString() {
+        return Token.asString(this, {
+          displayHint: `${this.target.node.id}.${this.displayName}`
+        });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/universalify/index.js
+var require_universalify = __commonJS({
+  "../../aws-cdk-lib/node_modules/universalify/index.js"(exports2) {
+    "use strict";
+    exports2.fromCallback = function(fn) {
+      return Object.defineProperty(function(...args) {
+        if (typeof args[args.length - 1] === "function") fn.apply(this, args);
+        else {
+          return new Promise((resolve6, reject) => {
+            args.push((err, res) => err != null ? reject(err) : resolve6(res));
+            fn.apply(this, args);
+          });
+        }
+      }, "name", { value: fn.name });
+    };
+    exports2.fromPromise = function(fn) {
+      return Object.defineProperty(function(...args) {
+        const cb = args[args.length - 1];
+        if (typeof cb !== "function") return fn.apply(this, args);
+        else {
+          args.pop();
+          fn.apply(this, args).then((r) => cb(null, r), cb);
+        }
+      }, "name", { value: fn.name });
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js
+var require_polyfills = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js"(exports2, module2) {
+    var constants2 = require("constants");
+    var origCwd = process.cwd;
+    var cwd = null;
+    var platform = process.env.GRACEFUL_FS_PLATFORM || process.platform;
+    process.cwd = function() {
+      if (!cwd)
+        cwd = origCwd.call(process);
+      return cwd;
+    };
+    try {
+      process.cwd();
+    } catch (er) {
+    }
+    if (typeof process.chdir === "function") {
+      chdir = process.chdir;
+      process.chdir = function(d) {
+        cwd = null;
+        chdir.call(process, d);
+      };
+      if (Object.setPrototypeOf) Object.setPrototypeOf(process.chdir, chdir);
+    }
+    var chdir;
+    module2.exports = patch;
+    function patch(fs19) {
+      if (constants2.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) {
+        patchLchmod(fs19);
+      }
+      if (!fs19.lutimes) {
+        patchLutimes(fs19);
+      }
+      fs19.chown = chownFix(fs19.chown);
+      fs19.fchown = chownFix(fs19.fchown);
+      fs19.lchown = chownFix(fs19.lchown);
+      fs19.chmod = chmodFix(fs19.chmod);
+      fs19.fchmod = chmodFix(fs19.fchmod);
+      fs19.lchmod = chmodFix(fs19.lchmod);
+      fs19.chownSync = chownFixSync(fs19.chownSync);
+      fs19.fchownSync = chownFixSync(fs19.fchownSync);
+      fs19.lchownSync = chownFixSync(fs19.lchownSync);
+      fs19.chmodSync = chmodFixSync(fs19.chmodSync);
+      fs19.fchmodSync = chmodFixSync(fs19.fchmodSync);
+      fs19.lchmodSync = chmodFixSync(fs19.lchmodSync);
+      fs19.stat = statFix(fs19.stat);
+      fs19.fstat = statFix(fs19.fstat);
+      fs19.lstat = statFix(fs19.lstat);
+      fs19.statSync = statFixSync(fs19.statSync);
+      fs19.fstatSync = statFixSync(fs19.fstatSync);
+      fs19.lstatSync = statFixSync(fs19.lstatSync);
+      if (fs19.chmod && !fs19.lchmod) {
+        fs19.lchmod = function(path23, mode, cb) {
+          if (cb) process.nextTick(cb);
+        };
+        fs19.lchmodSync = function() {
+        };
+      }
+      if (fs19.chown && !fs19.lchown) {
+        fs19.lchown = function(path23, uid, gid, cb) {
+          if (cb) process.nextTick(cb);
+        };
+        fs19.lchownSync = function() {
+        };
+      }
+      if (platform === "win32") {
+        fs19.rename = typeof fs19.rename !== "function" ? fs19.rename : (function(fs$rename) {
+          function rename(from, to, cb) {
+            var start = Date.now();
+            var backoff = 0;
+            fs$rename(from, to, function CB(er) {
+              if (er && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") && Date.now() - start < 6e4) {
+                setTimeout(function() {
+                  fs19.stat(to, function(stater, st) {
+                    if (stater && stater.code === "ENOENT")
+                      fs$rename(from, to, CB);
+                    else
+                      cb(er);
+                  });
+                }, backoff);
+                if (backoff < 100)
+                  backoff += 10;
+                return;
+              }
+              if (cb) cb(er);
+            });
+          }
+          if (Object.setPrototypeOf) Object.setPrototypeOf(rename, fs$rename);
+          return rename;
+        })(fs19.rename);
+      }
+      fs19.read = typeof fs19.read !== "function" ? fs19.read : (function(fs$read) {
+        function read(fd, buffer, offset, length, position, callback_) {
+          var callback;
+          if (callback_ && typeof callback_ === "function") {
+            var eagCounter = 0;
+            callback = function(er, _, __) {
+              if (er && er.code === "EAGAIN" && eagCounter < 10) {
+                eagCounter++;
+                return fs$read.call(fs19, fd, buffer, offset, length, position, callback);
+              }
+              callback_.apply(this, arguments);
+            };
+          }
+          return fs$read.call(fs19, fd, buffer, offset, length, position, callback);
+        }
+        if (Object.setPrototypeOf) Object.setPrototypeOf(read, fs$read);
+        return read;
+      })(fs19.read);
+      fs19.readSync = typeof fs19.readSync !== "function" ? fs19.readSync : /* @__PURE__ */ (function(fs$readSync) {
+        return function(fd, buffer, offset, length, position) {
+          var eagCounter = 0;
+          while (true) {
+            try {
+              return fs$readSync.call(fs19, fd, buffer, offset, length, position);
+            } catch (er) {
+              if (er.code === "EAGAIN" && eagCounter < 10) {
+                eagCounter++;
+                continue;
+              }
+              throw er;
+            }
+          }
+        };
+      })(fs19.readSync);
+      function patchLchmod(fs20) {
+        fs20.lchmod = function(path23, mode, callback) {
+          fs20.open(
+            path23,
+            constants2.O_WRONLY | constants2.O_SYMLINK,
+            mode,
+            function(err, fd) {
+              if (err) {
+                if (callback) callback(err);
+                return;
+              }
+              fs20.fchmod(fd, mode, function(err2) {
+                fs20.close(fd, function(err22) {
+                  if (callback) callback(err2 || err22);
+                });
+              });
+            }
+          );
+        };
+        fs20.lchmodSync = function(path23, mode) {
+          var fd = fs20.openSync(path23, constants2.O_WRONLY | constants2.O_SYMLINK, mode);
+          var threw = true;
+          var ret;
+          try {
+            ret = fs20.fchmodSync(fd, mode);
+            threw = false;
+          } finally {
+            if (threw) {
+              try {
+                fs20.closeSync(fd);
+              } catch (er) {
+              }
+            } else {
+              fs20.closeSync(fd);
+            }
+          }
+          return ret;
+        };
+      }
+      function patchLutimes(fs20) {
+        if (constants2.hasOwnProperty("O_SYMLINK") && fs20.futimes) {
+          fs20.lutimes = function(path23, at, mt, cb) {
+            fs20.open(path23, constants2.O_SYMLINK, function(er, fd) {
+              if (er) {
+                if (cb) cb(er);
+                return;
+              }
+              fs20.futimes(fd, at, mt, function(er2) {
+                fs20.close(fd, function(er22) {
+                  if (cb) cb(er2 || er22);
+                });
+              });
+            });
+          };
+          fs20.lutimesSync = function(path23, at, mt) {
+            var fd = fs20.openSync(path23, constants2.O_SYMLINK);
+            var ret;
+            var threw = true;
+            try {
+              ret = fs20.futimesSync(fd, at, mt);
+              threw = false;
+            } finally {
+              if (threw) {
+                try {
+                  fs20.closeSync(fd);
+                } catch (er) {
+                }
+              } else {
+                fs20.closeSync(fd);
+              }
+            }
+            return ret;
+          };
+        } else if (fs20.futimes) {
+          fs20.lutimes = function(_a7, _b, _c, cb) {
+            if (cb) process.nextTick(cb);
+          };
+          fs20.lutimesSync = function() {
+          };
+        }
+      }
+      function chmodFix(orig) {
+        if (!orig) return orig;
+        return function(target, mode, cb) {
+          return orig.call(fs19, target, mode, function(er) {
+            if (chownErOk(er)) er = null;
+            if (cb) cb.apply(this, arguments);
+          });
+        };
+      }
+      function chmodFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, mode) {
+          try {
+            return orig.call(fs19, target, mode);
+          } catch (er) {
+            if (!chownErOk(er)) throw er;
+          }
+        };
+      }
+      function chownFix(orig) {
+        if (!orig) return orig;
+        return function(target, uid, gid, cb) {
+          return orig.call(fs19, target, uid, gid, function(er) {
+            if (chownErOk(er)) er = null;
+            if (cb) cb.apply(this, arguments);
+          });
+        };
+      }
+      function chownFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, uid, gid) {
+          try {
+            return orig.call(fs19, target, uid, gid);
+          } catch (er) {
+            if (!chownErOk(er)) throw er;
+          }
+        };
+      }
+      function statFix(orig) {
+        if (!orig) return orig;
+        return function(target, options, cb) {
+          if (typeof options === "function") {
+            cb = options;
+            options = null;
+          }
+          function callback(er, stats) {
+            if (stats) {
+              if (stats.uid < 0) stats.uid += 4294967296;
+              if (stats.gid < 0) stats.gid += 4294967296;
+            }
+            if (cb) cb.apply(this, arguments);
+          }
+          return options ? orig.call(fs19, target, options, callback) : orig.call(fs19, target, callback);
+        };
+      }
+      function statFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, options) {
+          var stats = options ? orig.call(fs19, target, options) : orig.call(fs19, target);
+          if (stats) {
+            if (stats.uid < 0) stats.uid += 4294967296;
+            if (stats.gid < 0) stats.gid += 4294967296;
+          }
+          return stats;
+        };
+      }
+      function chownErOk(er) {
+        if (!er)
+          return true;
+        if (er.code === "ENOSYS")
+          return true;
+        var nonroot = !process.getuid || process.getuid() !== 0;
+        if (nonroot) {
+          if (er.code === "EINVAL" || er.code === "EPERM")
+            return true;
+        }
+        return false;
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js
+var require_legacy_streams = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) {
+    var Stream = require("stream").Stream;
+    module2.exports = legacy;
+    function legacy(fs19) {
+      return {
+        ReadStream,
+        WriteStream
+      };
+      function ReadStream(path23, options) {
+        if (!(this instanceof ReadStream)) return new ReadStream(path23, options);
+        Stream.call(this);
+        var self2 = this;
+        this.path = path23;
+        this.fd = null;
+        this.readable = true;
+        this.paused = false;
+        this.flags = "r";
+        this.mode = 438;
+        this.bufferSize = 64 * 1024;
+        options = options || {};
+        var keys = Object.keys(options);
+        for (var index = 0, length = keys.length; index < length; index++) {
+          var key = keys[index];
+          this[key] = options[key];
+        }
+        if (this.encoding) this.setEncoding(this.encoding);
+        if (this.start !== void 0) {
+          if ("number" !== typeof this.start) {
+            throw TypeError("start must be a Number");
+          }
+          if (this.end === void 0) {
+            this.end = Infinity;
+          } else if ("number" !== typeof this.end) {
+            throw TypeError("end must be a Number");
+          }
+          if (this.start > this.end) {
+            throw new Error("start must be <= end");
+          }
+          this.pos = this.start;
+        }
+        if (this.fd !== null) {
+          process.nextTick(function() {
+            self2._read();
+          });
+          return;
+        }
+        fs19.open(this.path, this.flags, this.mode, function(err, fd) {
+          if (err) {
+            self2.emit("error", err);
+            self2.readable = false;
+            return;
+          }
+          self2.fd = fd;
+          self2.emit("open", fd);
+          self2._read();
+        });
+      }
+      function WriteStream(path23, options) {
+        if (!(this instanceof WriteStream)) return new WriteStream(path23, options);
+        Stream.call(this);
+        this.path = path23;
+        this.fd = null;
+        this.writable = true;
+        this.flags = "w";
+        this.encoding = "binary";
+        this.mode = 438;
+        this.bytesWritten = 0;
+        options = options || {};
+        var keys = Object.keys(options);
+        for (var index = 0, length = keys.length; index < length; index++) {
+          var key = keys[index];
+          this[key] = options[key];
+        }
+        if (this.start !== void 0) {
+          if ("number" !== typeof this.start) {
+            throw TypeError("start must be a Number");
+          }
+          if (this.start < 0) {
+            throw new Error("start must be >= zero");
+          }
+          this.pos = this.start;
+        }
+        this.busy = false;
+        this._queue = [];
+        if (this.fd === null) {
+          this._open = fs19.open;
+          this._queue.push([this._open, this.path, this.flags, this.mode, void 0]);
+          this.flush();
+        }
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/clone.js
+var require_clone = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/clone.js"(exports2, module2) {
+    "use strict";
+    module2.exports = clone;
+    var getPrototypeOf = Object.getPrototypeOf || function(obj) {
+      return obj.__proto__;
+    };
+    function clone(obj) {
+      if (obj === null || typeof obj !== "object")
+        return obj;
+      if (obj instanceof Object)
+        var copy = { __proto__: getPrototypeOf(obj) };
+      else
+        var copy = /* @__PURE__ */ Object.create(null);
+      Object.getOwnPropertyNames(obj).forEach(function(key) {
+        Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key));
+      });
+      return copy;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js
+var require_graceful_fs = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) {
+    var fs19 = require("fs");
+    var polyfills = require_polyfills();
+    var legacy = require_legacy_streams();
+    var clone = require_clone();
+    var util = require("util");
+    var gracefulQueue;
+    var previousSymbol;
+    if (typeof Symbol === "function" && typeof Symbol.for === "function") {
+      gracefulQueue = /* @__PURE__ */ Symbol.for("graceful-fs.queue");
+      previousSymbol = /* @__PURE__ */ Symbol.for("graceful-fs.previous");
+    } else {
+      gracefulQueue = "___graceful-fs.queue";
+      previousSymbol = "___graceful-fs.previous";
+    }
+    function noop() {
+    }
+    function publishQueue(context, queue2) {
+      Object.defineProperty(context, gracefulQueue, {
+        get: function() {
+          return queue2;
+        }
+      });
+    }
+    var debug = noop;
+    if (util.debuglog)
+      debug = util.debuglog("gfs4");
+    else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || ""))
+      debug = function() {
+        var m = util.format.apply(util, arguments);
+        m = "GFS4: " + m.split(/\n/).join("\nGFS4: ");
+        console.error(m);
+      };
+    if (!fs19[gracefulQueue]) {
+      queue = global[gracefulQueue] || [];
+      publishQueue(fs19, queue);
+      fs19.close = (function(fs$close) {
+        function close(fd, cb) {
+          return fs$close.call(fs19, fd, function(err) {
+            if (!err) {
+              resetQueue();
+            }
+            if (typeof cb === "function")
+              cb.apply(this, arguments);
+          });
+        }
+        Object.defineProperty(close, previousSymbol, {
+          value: fs$close
+        });
+        return close;
+      })(fs19.close);
+      fs19.closeSync = (function(fs$closeSync) {
+        function closeSync3(fd) {
+          fs$closeSync.apply(fs19, arguments);
+          resetQueue();
+        }
+        Object.defineProperty(closeSync3, previousSymbol, {
+          value: fs$closeSync
+        });
+        return closeSync3;
+      })(fs19.closeSync);
+      if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) {
+        process.on("exit", function() {
+          debug(fs19[gracefulQueue]);
+          require("assert").equal(fs19[gracefulQueue].length, 0);
+        });
+      }
+    }
+    var queue;
+    if (!global[gracefulQueue]) {
+      publishQueue(global, fs19[gracefulQueue]);
+    }
+    module2.exports = patch(clone(fs19));
+    if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs19.__patched) {
+      module2.exports = patch(fs19);
+      fs19.__patched = true;
+    }
+    function patch(fs20) {
+      polyfills(fs20);
+      fs20.gracefulify = patch;
+      fs20.createReadStream = createReadStream;
+      fs20.createWriteStream = createWriteStream;
+      var fs$readFile = fs20.readFile;
+      fs20.readFile = readFile;
+      function readFile(path23, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$readFile(path23, options, cb);
+        function go$readFile(path24, options2, cb2, startTime) {
+          return fs$readFile(path24, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$readFile, [path24, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$writeFile = fs20.writeFile;
+      fs20.writeFile = writeFile;
+      function writeFile(path23, data, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$writeFile(path23, data, options, cb);
+        function go$writeFile(path24, data2, options2, cb2, startTime) {
+          return fs$writeFile(path24, data2, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$writeFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$appendFile = fs20.appendFile;
+      if (fs$appendFile)
+        fs20.appendFile = appendFile;
+      function appendFile(path23, data, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$appendFile(path23, data, options, cb);
+        function go$appendFile(path24, data2, options2, cb2, startTime) {
+          return fs$appendFile(path24, data2, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$appendFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$copyFile = fs20.copyFile;
+      if (fs$copyFile)
+        fs20.copyFile = copyFile;
+      function copyFile(src, dest, flags, cb) {
+        if (typeof flags === "function") {
+          cb = flags;
+          flags = 0;
+        }
+        return go$copyFile(src, dest, flags, cb);
+        function go$copyFile(src2, dest2, flags2, cb2, startTime) {
+          return fs$copyFile(src2, dest2, flags2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$copyFile, [src2, dest2, flags2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$readdir = fs20.readdir;
+      fs20.readdir = readdir;
+      var noReaddirOptionVersions = /^v[0-5]\./;
+      function readdir(path23, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path24, options2, cb2, startTime) {
+          return fs$readdir(path24, fs$readdirCallback(
+            path24,
+            options2,
+            cb2,
+            startTime
+          ));
+        } : function go$readdir2(path24, options2, cb2, startTime) {
+          return fs$readdir(path24, options2, fs$readdirCallback(
+            path24,
+            options2,
+            cb2,
+            startTime
+          ));
+        };
+        return go$readdir(path23, options, cb);
+        function fs$readdirCallback(path24, options2, cb2, startTime) {
+          return function(err, files) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([
+                go$readdir,
+                [path24, options2, cb2],
+                err,
+                startTime || Date.now(),
+                Date.now()
+              ]);
+            else {
+              if (files && files.sort)
+                files.sort();
+              if (typeof cb2 === "function")
+                cb2.call(this, err, files);
+            }
+          };
+        }
+      }
+      if (process.version.substr(0, 4) === "v0.8") {
+        var legStreams = legacy(fs20);
+        ReadStream = legStreams.ReadStream;
+        WriteStream = legStreams.WriteStream;
+      }
+      var fs$ReadStream = fs20.ReadStream;
+      if (fs$ReadStream) {
+        ReadStream.prototype = Object.create(fs$ReadStream.prototype);
+        ReadStream.prototype.open = ReadStream$open;
+      }
+      var fs$WriteStream = fs20.WriteStream;
+      if (fs$WriteStream) {
+        WriteStream.prototype = Object.create(fs$WriteStream.prototype);
+        WriteStream.prototype.open = WriteStream$open;
+      }
+      Object.defineProperty(fs20, "ReadStream", {
+        get: function() {
+          return ReadStream;
+        },
+        set: function(val2) {
+          ReadStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      Object.defineProperty(fs20, "WriteStream", {
+        get: function() {
+          return WriteStream;
+        },
+        set: function(val2) {
+          WriteStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      var FileReadStream = ReadStream;
+      Object.defineProperty(fs20, "FileReadStream", {
+        get: function() {
+          return FileReadStream;
+        },
+        set: function(val2) {
+          FileReadStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      var FileWriteStream = WriteStream;
+      Object.defineProperty(fs20, "FileWriteStream", {
+        get: function() {
+          return FileWriteStream;
+        },
+        set: function(val2) {
+          FileWriteStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      function ReadStream(path23, options) {
+        if (this instanceof ReadStream)
+          return fs$ReadStream.apply(this, arguments), this;
+        else
+          return ReadStream.apply(Object.create(ReadStream.prototype), arguments);
+      }
+      function ReadStream$open() {
+        var that = this;
+        open(that.path, that.flags, that.mode, function(err, fd) {
+          if (err) {
+            if (that.autoClose)
+              that.destroy();
+            that.emit("error", err);
+          } else {
+            that.fd = fd;
+            that.emit("open", fd);
+            that.read();
+          }
+        });
+      }
+      function WriteStream(path23, options) {
+        if (this instanceof WriteStream)
+          return fs$WriteStream.apply(this, arguments), this;
+        else
+          return WriteStream.apply(Object.create(WriteStream.prototype), arguments);
+      }
+      function WriteStream$open() {
+        var that = this;
+        open(that.path, that.flags, that.mode, function(err, fd) {
+          if (err) {
+            that.destroy();
+            that.emit("error", err);
+          } else {
+            that.fd = fd;
+            that.emit("open", fd);
+          }
+        });
+      }
+      function createReadStream(path23, options) {
+        return new fs20.ReadStream(path23, options);
+      }
+      function createWriteStream(path23, options) {
+        return new fs20.WriteStream(path23, options);
+      }
+      var fs$open = fs20.open;
+      fs20.open = open;
+      function open(path23, flags, mode, cb) {
+        if (typeof mode === "function")
+          cb = mode, mode = null;
+        return go$open(path23, flags, mode, cb);
+        function go$open(path24, flags2, mode2, cb2, startTime) {
+          return fs$open(path24, flags2, mode2, function(err, fd) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$open, [path24, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      return fs20;
+    }
+    function enqueue(elem) {
+      debug("ENQUEUE", elem[0].name, elem[1]);
+      fs19[gracefulQueue].push(elem);
+      retry();
+    }
+    var retryTimer;
+    function resetQueue() {
+      var now = Date.now();
+      for (var i = 0; i < fs19[gracefulQueue].length; ++i) {
+        if (fs19[gracefulQueue][i].length > 2) {
+          fs19[gracefulQueue][i][3] = now;
+          fs19[gracefulQueue][i][4] = now;
+        }
+      }
+      retry();
+    }
+    function retry() {
+      clearTimeout(retryTimer);
+      retryTimer = void 0;
+      if (fs19[gracefulQueue].length === 0)
+        return;
+      var elem = fs19[gracefulQueue].shift();
+      var fn = elem[0];
+      var args = elem[1];
+      var err = elem[2];
+      var startTime = elem[3];
+      var lastTime = elem[4];
+      if (startTime === void 0) {
+        debug("RETRY", fn.name, args);
+        fn.apply(null, args);
+      } else if (Date.now() - startTime >= 6e4) {
+        debug("TIMEOUT", fn.name, args);
+        var cb = args.pop();
+        if (typeof cb === "function")
+          cb.call(null, err);
+      } else {
+        var sinceAttempt = Date.now() - lastTime;
+        var sinceStart = Math.max(lastTime - startTime, 1);
+        var desiredDelay = Math.min(sinceStart * 1.2, 100);
+        if (sinceAttempt >= desiredDelay) {
+          debug("RETRY", fn.name, args);
+          fn.apply(null, args.concat([startTime]));
+        } else {
+          fs19[gracefulQueue].push(elem);
+        }
+      }
+      if (retryTimer === void 0) {
+        retryTimer = setTimeout(retry, 0);
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js
+var require_fs = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js"(exports2) {
+    "use strict";
+    var u = require_universalify().fromCallback;
+    var fs19 = require_graceful_fs();
+    var api = [
+      "access",
+      "appendFile",
+      "chmod",
+      "chown",
+      "close",
+      "copyFile",
+      "cp",
+      "fchmod",
+      "fchown",
+      "fdatasync",
+      "fstat",
+      "fsync",
+      "ftruncate",
+      "futimes",
+      "glob",
+      "lchmod",
+      "lchown",
+      "lutimes",
+      "link",
+      "lstat",
+      "mkdir",
+      "mkdtemp",
+      "open",
+      "opendir",
+      "readdir",
+      "readFile",
+      "readlink",
+      "realpath",
+      "rename",
+      "rm",
+      "rmdir",
+      "stat",
+      "statfs",
+      "symlink",
+      "truncate",
+      "unlink",
+      "utimes",
+      "writeFile"
+    ].filter((key) => {
+      return typeof fs19[key] === "function";
+    });
+    Object.assign(exports2, fs19);
+    api.forEach((method) => {
+      exports2[method] = u(fs19[method]);
+    });
+    exports2.exists = function(filename, callback) {
+      if (typeof callback === "function") {
+        return fs19.exists(filename, callback);
+      }
+      return new Promise((resolve6) => {
+        return fs19.exists(filename, resolve6);
+      });
+    };
+    exports2.read = function(fd, buffer, offset, length, position, callback) {
+      if (typeof callback === "function") {
+        return fs19.read(fd, buffer, offset, length, position, callback);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.read(fd, buffer, offset, length, position, (err, bytesRead, buffer2) => {
+          if (err) return reject(err);
+          resolve6({ bytesRead, buffer: buffer2 });
+        });
+      });
+    };
+    exports2.write = function(fd, buffer, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.write(fd, buffer, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.write(fd, buffer, ...args, (err, bytesWritten, buffer2) => {
+          if (err) return reject(err);
+          resolve6({ bytesWritten, buffer: buffer2 });
+        });
+      });
+    };
+    exports2.readv = function(fd, buffers, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.readv(fd, buffers, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.readv(fd, buffers, ...args, (err, bytesRead, buffers2) => {
+          if (err) return reject(err);
+          resolve6({ bytesRead, buffers: buffers2 });
+        });
+      });
+    };
+    exports2.writev = function(fd, buffers, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.writev(fd, buffers, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.writev(fd, buffers, ...args, (err, bytesWritten, buffers2) => {
+          if (err) return reject(err);
+          resolve6({ bytesWritten, buffers: buffers2 });
+        });
+      });
+    };
+    if (typeof fs19.realpath.native === "function") {
+      exports2.realpath.native = u(fs19.realpath.native);
+    } else {
+      process.emitWarning(
+        "fs.realpath.native is not a function. Is fs being monkey-patched?",
+        "Warning",
+        "fs-extra-WARN0003"
+      );
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js
+var require_utils = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    module2.exports.checkPath = function checkPath(pth) {
+      if (process.platform === "win32") {
+        const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path23.parse(pth).root, ""));
+        if (pathHasInvalidWinCharacters) {
+          const error = new Error(`Path contains invalid characters: ${pth}`);
+          error.code = "EINVAL";
+          throw error;
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js
+var require_make_dir = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var { checkPath } = require_utils();
+    var getMode = (options) => {
+      const defaults = { mode: 511 };
+      if (typeof options === "number") return options;
+      return { ...defaults, ...options }.mode;
+    };
+    module2.exports.makeDir = async (dir, options) => {
+      checkPath(dir);
+      return fs19.mkdir(dir, {
+        mode: getMode(options),
+        recursive: true
+      });
+    };
+    module2.exports.makeDirSync = (dir, options) => {
+      checkPath(dir);
+      return fs19.mkdirSync(dir, {
+        mode: getMode(options),
+        recursive: true
+      });
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js
+var require_mkdirs = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var { makeDir: _makeDir, makeDirSync } = require_make_dir();
+    var makeDir = u(_makeDir);
+    module2.exports = {
+      mkdirs: makeDir,
+      mkdirsSync: makeDirSync,
+      // alias
+      mkdirp: makeDir,
+      mkdirpSync: makeDirSync,
+      ensureDir: makeDir,
+      ensureDirSync: makeDirSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js
+var require_path_exists = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    function pathExists(path23) {
+      return fs19.access(path23).then(() => true).catch(() => false);
+    }
+    module2.exports = {
+      pathExists: u(pathExists),
+      pathExistsSync: fs19.existsSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js
+var require_utimes = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var u = require_universalify().fromPromise;
+    async function utimesMillis(path23, atime, mtime) {
+      const fd = await fs19.open(path23, "r+");
+      let error = null;
+      try {
+        await fs19.futimes(fd, atime, mtime);
+      } catch (futimesErr) {
+        error = futimesErr;
+      } finally {
+        try {
+          await fs19.close(fd);
+        } catch (closeErr) {
+          if (!error) error = closeErr;
+        }
+      }
+      if (error) {
+        throw error;
+      }
+    }
+    function utimesMillisSync(path23, atime, mtime) {
+      const fd = fs19.openSync(path23, "r+");
+      let error = null;
+      try {
+        fs19.futimesSync(fd, atime, mtime);
+      } catch (futimesErr) {
+        error = futimesErr;
+      } finally {
+        try {
+          fs19.closeSync(fd);
+        } catch (closeErr) {
+          if (!error) error = closeErr;
+        }
+      }
+      if (error) {
+        throw error;
+      }
+    }
+    module2.exports = {
+      utimesMillis: u(utimesMillis),
+      utimesMillisSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js
+var require_stat = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var u = require_universalify().fromPromise;
+    function getStats(src, dest, opts) {
+      const statFunc = opts.dereference ? (file) => fs19.stat(file, { bigint: true }) : (file) => fs19.lstat(file, { bigint: true });
+      return Promise.all([
+        statFunc(src),
+        statFunc(dest).catch((err) => {
+          if (err.code === "ENOENT") return null;
+          throw err;
+        })
+      ]).then(([srcStat, destStat]) => ({ srcStat, destStat }));
+    }
+    function getStatsSync(src, dest, opts) {
+      let destStat;
+      const statFunc = opts.dereference ? (file) => fs19.statSync(file, { bigint: true }) : (file) => fs19.lstatSync(file, { bigint: true });
+      const srcStat = statFunc(src);
+      try {
+        destStat = statFunc(dest);
+      } catch (err) {
+        if (err.code === "ENOENT") return { srcStat, destStat: null };
+        throw err;
+      }
+      return { srcStat, destStat };
+    }
+    async function checkPaths(src, dest, funcName, opts) {
+      const { srcStat, destStat } = await getStats(src, dest, opts);
+      if (destStat) {
+        if (areIdentical(srcStat, destStat)) {
+          const srcBaseName = path23.basename(src);
+          const destBaseName = path23.basename(dest);
+          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
+            return { srcStat, destStat, isChangingCase: true };
+          }
+          throw new Error("Source and destination must not be the same.");
+        }
+        if (srcStat.isDirectory() && !destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`);
+        }
+        if (!srcStat.isDirectory() && destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`);
+        }
+      }
+      if (srcStat.isDirectory() && isSrcSubdir(src, dest)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return { srcStat, destStat };
+    }
+    function checkPathsSync(src, dest, funcName, opts) {
+      const { srcStat, destStat } = getStatsSync(src, dest, opts);
+      if (destStat) {
+        if (areIdentical(srcStat, destStat)) {
+          const srcBaseName = path23.basename(src);
+          const destBaseName = path23.basename(dest);
+          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
+            return { srcStat, destStat, isChangingCase: true };
+          }
+          throw new Error("Source and destination must not be the same.");
+        }
+        if (srcStat.isDirectory() && !destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`);
+        }
+        if (!srcStat.isDirectory() && destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`);
+        }
+      }
+      if (srcStat.isDirectory() && isSrcSubdir(src, dest)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return { srcStat, destStat };
+    }
+    async function checkParentPaths(src, srcStat, dest, funcName) {
+      const srcParent = path23.resolve(path23.dirname(src));
+      const destParent = path23.resolve(path23.dirname(dest));
+      if (destParent === srcParent || destParent === path23.parse(destParent).root) return;
+      let destStat;
+      try {
+        destStat = await fs19.stat(destParent, { bigint: true });
+      } catch (err) {
+        if (err.code === "ENOENT") return checkParentPaths(src, srcStat, destParent, funcName);
+        throw err;
+      }
+      if (areIdentical(srcStat, destStat)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return checkParentPaths(src, srcStat, destParent, funcName);
+    }
+    function checkParentPathsSync(src, srcStat, dest, funcName) {
+      const srcParent = path23.resolve(path23.dirname(src));
+      const destParent = path23.resolve(path23.dirname(dest));
+      if (destParent === srcParent || destParent === path23.parse(destParent).root) return;
+      let destStat;
+      try {
+        destStat = fs19.statSync(destParent, { bigint: true });
+      } catch (err) {
+        if (err.code === "ENOENT") return checkParentPathsSync(src, srcStat, destParent, funcName);
+        throw err;
+      }
+      if (areIdentical(srcStat, destStat)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return checkParentPathsSync(src, srcStat, destParent, funcName);
+    }
+    function areIdentical(srcStat, destStat) {
+      return destStat.ino !== void 0 && destStat.dev !== void 0 && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev;
+    }
+    function isSrcSubdir(src, dest) {
+      const srcArr = path23.resolve(src).split(path23.sep).filter((i) => i);
+      const destArr = path23.resolve(dest).split(path23.sep).filter((i) => i);
+      return srcArr.every((cur, i) => destArr[i] === cur);
+    }
+    function errMsg(src, dest, funcName) {
+      return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.`;
+    }
+    module2.exports = {
+      // checkPaths
+      checkPaths: u(checkPaths),
+      checkPathsSync,
+      // checkParent
+      checkParentPaths: u(checkParentPaths),
+      checkParentPathsSync,
+      // Misc
+      isSrcSubdir,
+      areIdentical
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js
+var require_async = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js"(exports2, module2) {
+    "use strict";
+    async function asyncIteratorConcurrentProcess(iterator, fn) {
+      const promises = [];
+      for await (const item of iterator) {
+        promises.push(
+          fn(item).then(
+            () => null,
+            (err) => err ?? new Error("unknown error")
+          )
+        );
+      }
+      await Promise.all(
+        promises.map(
+          (promise) => promise.then((possibleErr) => {
+            if (possibleErr !== null) throw possibleErr;
+          })
+        )
+      );
+    }
+    module2.exports = {
+      asyncIteratorConcurrentProcess
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js
+var require_copy = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var { mkdirs } = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var { utimesMillis } = require_utimes();
+    var stat = require_stat();
+    var { asyncIteratorConcurrentProcess } = require_async();
+    async function copy(src, dest, opts = {}) {
+      if (typeof opts === "function") {
+        opts = { filter: opts };
+      }
+      opts.clobber = "clobber" in opts ? !!opts.clobber : true;
+      opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber;
+      if (opts.preserveTimestamps && process.arch === "ia32") {
+        process.emitWarning(
+          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
+          "Warning",
+          "fs-extra-WARN0001"
+        );
+      }
+      const { srcStat, destStat } = await stat.checkPaths(src, dest, "copy", opts);
+      await stat.checkParentPaths(src, srcStat, dest, "copy");
+      const include = await runFilter(src, dest, opts);
+      if (!include) return;
+      const destParent = path23.dirname(dest);
+      const dirExists = await pathExists(destParent);
+      if (!dirExists) {
+        await mkdirs(destParent);
+      }
+      await getStatsAndPerformCopy(destStat, src, dest, opts);
+    }
+    async function runFilter(src, dest, opts) {
+      if (!opts.filter) return true;
+      return opts.filter(src, dest);
+    }
+    async function getStatsAndPerformCopy(destStat, src, dest, opts) {
+      const statFn = opts.dereference ? fs19.stat : fs19.lstat;
+      const srcStat = await statFn(src);
+      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts);
+      if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts);
+      if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts);
+      if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`);
+      if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`);
+      throw new Error(`Unknown file: ${src}`);
+    }
+    async function onFile(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return copyFile(srcStat, src, dest, opts);
+      if (opts.overwrite) {
+        await fs19.unlink(dest);
+        return copyFile(srcStat, src, dest, opts);
+      }
+      if (opts.errorOnExist) {
+        throw new Error(`'${dest}' already exists`);
+      }
+    }
+    async function copyFile(srcStat, src, dest, opts) {
+      await fs19.copyFile(src, dest);
+      if (opts.preserveTimestamps) {
+        if (fileIsNotWritable(srcStat.mode)) {
+          await makeFileWritable(dest, srcStat.mode);
+        }
+        const updatedSrcStat = await fs19.stat(src);
+        await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
+      }
+      return fs19.chmod(dest, srcStat.mode);
+    }
+    function fileIsNotWritable(srcMode) {
+      return (srcMode & 128) === 0;
+    }
+    function makeFileWritable(dest, srcMode) {
+      return fs19.chmod(dest, srcMode | 128);
+    }
+    async function onDir(srcStat, destStat, src, dest, opts) {
+      if (!destStat) {
+        await fs19.mkdir(dest);
+      }
+      await asyncIteratorConcurrentProcess(await fs19.opendir(src), async (item) => {
+        const srcItem = path23.join(src, item.name);
+        const destItem = path23.join(dest, item.name);
+        const include = await runFilter(srcItem, destItem, opts);
+        if (include) {
+          const { destStat: destStat2 } = await stat.checkPaths(srcItem, destItem, "copy", opts);
+          await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts);
+        }
+      });
+      if (!destStat) {
+        await fs19.chmod(dest, srcStat.mode);
+      }
+    }
+    async function onLink(destStat, src, dest, opts) {
+      let resolvedSrc = await fs19.readlink(src);
+      if (opts.dereference) {
+        resolvedSrc = path23.resolve(process.cwd(), resolvedSrc);
+      }
+      if (!destStat) {
+        return fs19.symlink(resolvedSrc, dest);
+      }
+      let resolvedDest = null;
+      try {
+        resolvedDest = await fs19.readlink(dest);
+      } catch (e) {
+        if (e.code === "EINVAL" || e.code === "UNKNOWN") return fs19.symlink(resolvedSrc, dest);
+        throw e;
+      }
+      if (opts.dereference) {
+        resolvedDest = path23.resolve(process.cwd(), resolvedDest);
+      }
+      if (resolvedSrc !== resolvedDest) {
+        if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
+          throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
+        }
+        if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) {
+          throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
+        }
+      }
+      await fs19.unlink(dest);
+      return fs19.symlink(resolvedSrc, dest);
+    }
+    module2.exports = copy;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js
+var require_copy_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var path23 = require("path");
+    var mkdirsSync = require_mkdirs().mkdirsSync;
+    var utimesMillisSync = require_utimes().utimesMillisSync;
+    var stat = require_stat();
+    function copySync2(src, dest, opts) {
+      if (typeof opts === "function") {
+        opts = { filter: opts };
+      }
+      opts = opts || {};
+      opts.clobber = "clobber" in opts ? !!opts.clobber : true;
+      opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber;
+      if (opts.preserveTimestamps && process.arch === "ia32") {
+        process.emitWarning(
+          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
+          "Warning",
+          "fs-extra-WARN0002"
+        );
+      }
+      const { srcStat, destStat } = stat.checkPathsSync(src, dest, "copy", opts);
+      stat.checkParentPathsSync(src, srcStat, dest, "copy");
+      if (opts.filter && !opts.filter(src, dest)) return;
+      const destParent = path23.dirname(dest);
+      if (!fs19.existsSync(destParent)) mkdirsSync(destParent);
+      return getStats(destStat, src, dest, opts);
+    }
+    function getStats(destStat, src, dest, opts) {
+      const statSync6 = opts.dereference ? fs19.statSync : fs19.lstatSync;
+      const srcStat = statSync6(src);
+      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts);
+      else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts);
+      else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts);
+      else if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`);
+      else if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`);
+      throw new Error(`Unknown file: ${src}`);
+    }
+    function onFile(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return copyFile(srcStat, src, dest, opts);
+      return mayCopyFile(srcStat, src, dest, opts);
+    }
+    function mayCopyFile(srcStat, src, dest, opts) {
+      if (opts.overwrite) {
+        fs19.unlinkSync(dest);
+        return copyFile(srcStat, src, dest, opts);
+      } else if (opts.errorOnExist) {
+        throw new Error(`'${dest}' already exists`);
+      }
+    }
+    function copyFile(srcStat, src, dest, opts) {
+      fs19.copyFileSync(src, dest);
+      if (opts.preserveTimestamps) handleTimestamps(srcStat.mode, src, dest);
+      return setDestMode(dest, srcStat.mode);
+    }
+    function handleTimestamps(srcMode, src, dest) {
+      if (fileIsNotWritable(srcMode)) makeFileWritable(dest, srcMode);
+      return setDestTimestamps(src, dest);
+    }
+    function fileIsNotWritable(srcMode) {
+      return (srcMode & 128) === 0;
+    }
+    function makeFileWritable(dest, srcMode) {
+      return setDestMode(dest, srcMode | 128);
+    }
+    function setDestMode(dest, srcMode) {
+      return fs19.chmodSync(dest, srcMode);
+    }
+    function setDestTimestamps(src, dest) {
+      const updatedSrcStat = fs19.statSync(src);
+      return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
+    }
+    function onDir(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return mkDirAndCopy(srcStat.mode, src, dest, opts);
+      return copyDir(src, dest, opts);
+    }
+    function mkDirAndCopy(srcMode, src, dest, opts) {
+      fs19.mkdirSync(dest);
+      copyDir(src, dest, opts);
+      return setDestMode(dest, srcMode);
+    }
+    function copyDir(src, dest, opts) {
+      const dir = fs19.opendirSync(src);
+      try {
+        let dirent;
+        while ((dirent = dir.readSync()) !== null) {
+          copyDirItem(dirent.name, src, dest, opts);
+        }
+      } finally {
+        dir.closeSync();
+      }
+    }
+    function copyDirItem(item, src, dest, opts) {
+      const srcItem = path23.join(src, item);
+      const destItem = path23.join(dest, item);
+      if (opts.filter && !opts.filter(srcItem, destItem)) return;
+      const { destStat } = stat.checkPathsSync(srcItem, destItem, "copy", opts);
+      return getStats(destStat, srcItem, destItem, opts);
+    }
+    function onLink(destStat, src, dest, opts) {
+      let resolvedSrc = fs19.readlinkSync(src);
+      if (opts.dereference) {
+        resolvedSrc = path23.resolve(process.cwd(), resolvedSrc);
+      }
+      if (!destStat) {
+        return fs19.symlinkSync(resolvedSrc, dest);
+      } else {
+        let resolvedDest;
+        try {
+          resolvedDest = fs19.readlinkSync(dest);
+        } catch (err) {
+          if (err.code === "EINVAL" || err.code === "UNKNOWN") return fs19.symlinkSync(resolvedSrc, dest);
+          throw err;
+        }
+        if (opts.dereference) {
+          resolvedDest = path23.resolve(process.cwd(), resolvedDest);
+        }
+        if (resolvedSrc !== resolvedDest) {
+          if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
+            throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
+          }
+          if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) {
+            throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
+          }
+        }
+        return copyLink(resolvedSrc, dest);
+      }
+    }
+    function copyLink(resolvedSrc, dest) {
+      fs19.unlinkSync(dest);
+      return fs19.symlinkSync(resolvedSrc, dest);
+    }
+    module2.exports = copySync2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js
+var require_copy2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    module2.exports = {
+      copy: u(require_copy()),
+      copySync: require_copy_sync()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js
+var require_remove = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var u = require_universalify().fromCallback;
+    function remove(path23, callback) {
+      fs19.rm(path23, { recursive: true, force: true }, callback);
+    }
+    function removeSync2(path23) {
+      fs19.rmSync(path23, { recursive: true, force: true });
+    }
+    module2.exports = {
+      remove: u(remove),
+      removeSync: removeSync2
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js
+var require_empty = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var mkdir = require_mkdirs();
+    var remove = require_remove();
+    var emptyDir = u(async function emptyDir2(dir) {
+      let items;
+      try {
+        items = await fs19.readdir(dir);
+      } catch {
+        return mkdir.mkdirs(dir);
+      }
+      return Promise.all(items.map((item) => remove.remove(path23.join(dir, item))));
+    });
+    function emptyDirSync(dir) {
+      let items;
+      try {
+        items = fs19.readdirSync(dir);
+      } catch {
+        return mkdir.mkdirsSync(dir);
+      }
+      items.forEach((item) => {
+        item = path23.join(dir, item);
+        remove.removeSync(item);
+      });
+    }
+    module2.exports = {
+      emptyDirSync,
+      emptydirSync: emptyDirSync,
+      emptyDir,
+      emptydir: emptyDir
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js
+var require_file = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var mkdir = require_mkdirs();
+    async function createFile(file) {
+      let stats;
+      try {
+        stats = await fs19.stat(file);
+      } catch {
+      }
+      if (stats && stats.isFile()) return;
+      const dir = path23.dirname(file);
+      let dirStats = null;
+      try {
+        dirStats = await fs19.stat(dir);
+      } catch (err) {
+        if (err.code === "ENOENT") {
+          await mkdir.mkdirs(dir);
+          await fs19.writeFile(file, "");
+          return;
+        } else {
+          throw err;
+        }
+      }
+      if (dirStats.isDirectory()) {
+        await fs19.writeFile(file, "");
+      } else {
+        await fs19.readdir(dir);
+      }
+    }
+    function createFileSync(file) {
+      let stats;
+      try {
+        stats = fs19.statSync(file);
+      } catch {
+      }
+      if (stats && stats.isFile()) return;
+      const dir = path23.dirname(file);
+      try {
+        if (!fs19.statSync(dir).isDirectory()) {
+          fs19.readdirSync(dir);
+        }
+      } catch (err) {
+        if (err && err.code === "ENOENT") mkdir.mkdirsSync(dir);
+        else throw err;
+      }
+      fs19.writeFileSync(file, "");
+    }
+    module2.exports = {
+      createFile: u(createFile),
+      createFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js
+var require_link = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var mkdir = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var { areIdentical } = require_stat();
+    async function createLink(srcpath, dstpath) {
+      let dstStat;
+      try {
+        dstStat = await fs19.lstat(dstpath, { bigint: true });
+      } catch {
+      }
+      let srcStat;
+      try {
+        srcStat = await fs19.lstat(srcpath, { bigint: true });
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureLink");
+        throw err;
+      }
+      if (dstStat && areIdentical(srcStat, dstStat)) return;
+      const dir = path23.dirname(dstpath);
+      const dirExists = await pathExists(dir);
+      if (!dirExists) {
+        await mkdir.mkdirs(dir);
+      }
+      await fs19.link(srcpath, dstpath);
+    }
+    function createLinkSync(srcpath, dstpath) {
+      let dstStat;
+      try {
+        dstStat = fs19.lstatSync(dstpath, { bigint: true });
+      } catch {
+      }
+      try {
+        const srcStat = fs19.lstatSync(srcpath, { bigint: true });
+        if (dstStat && areIdentical(srcStat, dstStat)) return;
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureLink");
+        throw err;
+      }
+      const dir = path23.dirname(dstpath);
+      const dirExists = fs19.existsSync(dir);
+      if (dirExists) return fs19.linkSync(srcpath, dstpath);
+      mkdir.mkdirsSync(dir);
+      return fs19.linkSync(srcpath, dstpath);
+    }
+    module2.exports = {
+      createLink: u(createLink),
+      createLinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js
+var require_symlink_paths = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var { pathExists } = require_path_exists();
+    var u = require_universalify().fromPromise;
+    async function symlinkPaths(srcpath, dstpath) {
+      if (path23.isAbsolute(srcpath)) {
+        try {
+          await fs19.lstat(srcpath);
+        } catch (err) {
+          err.message = err.message.replace("lstat", "ensureSymlink");
+          throw err;
+        }
+        return {
+          toCwd: srcpath,
+          toDst: srcpath
+        };
+      }
+      const dstdir = path23.dirname(dstpath);
+      const relativeToDst = path23.join(dstdir, srcpath);
+      const exists = await pathExists(relativeToDst);
+      if (exists) {
+        return {
+          toCwd: relativeToDst,
+          toDst: srcpath
+        };
+      }
+      try {
+        await fs19.lstat(srcpath);
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureSymlink");
+        throw err;
+      }
+      return {
+        toCwd: srcpath,
+        toDst: path23.relative(dstdir, srcpath)
+      };
+    }
+    function symlinkPathsSync(srcpath, dstpath) {
+      if (path23.isAbsolute(srcpath)) {
+        const exists2 = fs19.existsSync(srcpath);
+        if (!exists2) throw new Error("absolute srcpath does not exist");
+        return {
+          toCwd: srcpath,
+          toDst: srcpath
+        };
+      }
+      const dstdir = path23.dirname(dstpath);
+      const relativeToDst = path23.join(dstdir, srcpath);
+      const exists = fs19.existsSync(relativeToDst);
+      if (exists) {
+        return {
+          toCwd: relativeToDst,
+          toDst: srcpath
+        };
+      }
+      const srcExists = fs19.existsSync(srcpath);
+      if (!srcExists) throw new Error("relative srcpath does not exist");
+      return {
+        toCwd: srcpath,
+        toDst: path23.relative(dstdir, srcpath)
+      };
+    }
+    module2.exports = {
+      symlinkPaths: u(symlinkPaths),
+      symlinkPathsSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js
+var require_symlink_type = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var u = require_universalify().fromPromise;
+    async function symlinkType(srcpath, type) {
+      if (type) return type;
+      let stats;
+      try {
+        stats = await fs19.lstat(srcpath);
+      } catch {
+        return "file";
+      }
+      return stats && stats.isDirectory() ? "dir" : "file";
+    }
+    function symlinkTypeSync(srcpath, type) {
+      if (type) return type;
+      let stats;
+      try {
+        stats = fs19.lstatSync(srcpath);
+      } catch {
+        return "file";
+      }
+      return stats && stats.isDirectory() ? "dir" : "file";
+    }
+    module2.exports = {
+      symlinkType: u(symlinkType),
+      symlinkTypeSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js
+var require_symlink = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var { mkdirs, mkdirsSync } = require_mkdirs();
+    var { symlinkPaths, symlinkPathsSync } = require_symlink_paths();
+    var { symlinkType, symlinkTypeSync } = require_symlink_type();
+    var { pathExists } = require_path_exists();
+    var { areIdentical } = require_stat();
+    async function createSymlink(srcpath, dstpath, type) {
+      let stats;
+      try {
+        stats = await fs19.lstat(dstpath);
+      } catch {
+      }
+      if (stats && stats.isSymbolicLink()) {
+        let srcStat;
+        if (path23.isAbsolute(srcpath)) {
+          srcStat = await fs19.stat(srcpath, { bigint: true });
+        } else {
+          const dstdir = path23.dirname(dstpath);
+          const relativeToDst = path23.join(dstdir, srcpath);
+          try {
+            srcStat = await fs19.stat(relativeToDst, { bigint: true });
+          } catch {
+            srcStat = await fs19.stat(srcpath, { bigint: true });
+          }
+        }
+        const dstStat = await fs19.stat(dstpath, { bigint: true });
+        if (areIdentical(srcStat, dstStat)) return;
+      }
+      const relative7 = await symlinkPaths(srcpath, dstpath);
+      srcpath = relative7.toDst;
+      const toType = await symlinkType(relative7.toCwd, type);
+      const dir = path23.dirname(dstpath);
+      if (!await pathExists(dir)) {
+        await mkdirs(dir);
+      }
+      return fs19.symlink(srcpath, dstpath, toType);
+    }
+    function createSymlinkSync(srcpath, dstpath, type) {
+      let stats;
+      try {
+        stats = fs19.lstatSync(dstpath);
+      } catch {
+      }
+      if (stats && stats.isSymbolicLink()) {
+        let srcStat;
+        if (path23.isAbsolute(srcpath)) {
+          srcStat = fs19.statSync(srcpath, { bigint: true });
+        } else {
+          const dstdir = path23.dirname(dstpath);
+          const relativeToDst = path23.join(dstdir, srcpath);
+          try {
+            srcStat = fs19.statSync(relativeToDst, { bigint: true });
+          } catch {
+            srcStat = fs19.statSync(srcpath, { bigint: true });
+          }
+        }
+        const dstStat = fs19.statSync(dstpath, { bigint: true });
+        if (areIdentical(srcStat, dstStat)) return;
+      }
+      const relative7 = symlinkPathsSync(srcpath, dstpath);
+      srcpath = relative7.toDst;
+      type = symlinkTypeSync(relative7.toCwd, type);
+      const dir = path23.dirname(dstpath);
+      const exists = fs19.existsSync(dir);
+      if (exists) return fs19.symlinkSync(srcpath, dstpath, type);
+      mkdirsSync(dir);
+      return fs19.symlinkSync(srcpath, dstpath, type);
+    }
+    module2.exports = {
+      createSymlink: u(createSymlink),
+      createSymlinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js
+var require_ensure = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) {
+    "use strict";
+    var { createFile, createFileSync } = require_file();
+    var { createLink, createLinkSync } = require_link();
+    var { createSymlink, createSymlinkSync } = require_symlink();
+    module2.exports = {
+      // file
+      createFile,
+      createFileSync,
+      ensureFile: createFile,
+      ensureFileSync: createFileSync,
+      // link
+      createLink,
+      createLinkSync,
+      ensureLink: createLink,
+      ensureLinkSync: createLinkSync,
+      // symlink
+      createSymlink,
+      createSymlinkSync,
+      ensureSymlink: createSymlink,
+      ensureSymlinkSync: createSymlinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/jsonfile/utils.js
+var require_utils2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/jsonfile/utils.js"(exports2, module2) {
+    function stringify3(obj, { EOL = "\n", finalEOL = true, replacer = null, spaces } = {}) {
+      const EOF = finalEOL ? EOL : "";
+      const str = JSON.stringify(obj, replacer, spaces);
+      if (str === void 0) {
+        throw new TypeError(`Converting ${typeof obj} value to JSON is not supported`);
+      }
+      return str.replace(/\n/g, EOL) + EOF;
+    }
+    function stripBom(content) {
+      if (Buffer.isBuffer(content)) content = content.toString("utf8");
+      return content.replace(/^\uFEFF/, "");
+    }
+    module2.exports = { stringify: stringify3, stripBom };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/jsonfile/index.js
+var require_jsonfile = __commonJS({
+  "../../aws-cdk-lib/node_modules/jsonfile/index.js"(exports2, module2) {
+    var _fs;
+    try {
+      _fs = require_graceful_fs();
+    } catch (_) {
+      _fs = require("fs");
+    }
+    var universalify = require_universalify();
+    var { stringify: stringify3, stripBom } = require_utils2();
+    async function _readFile(file, options = {}) {
+      if (typeof options === "string") {
+        options = { encoding: options };
+      }
+      const fs19 = options.fs || _fs;
+      const shouldThrow = "throws" in options ? options.throws : true;
+      let data = await universalify.fromCallback(fs19.readFile)(file, options);
+      data = stripBom(data);
+      let obj;
+      try {
+        obj = JSON.parse(data, options ? options.reviver : null);
+      } catch (err) {
+        if (shouldThrow) {
+          err.message = `${file}: ${err.message}`;
+          throw err;
+        } else {
+          return null;
+        }
+      }
+      return obj;
+    }
+    var readFile = universalify.fromPromise(_readFile);
+    function readFileSync7(file, options = {}) {
+      if (typeof options === "string") {
+        options = { encoding: options };
+      }
+      const fs19 = options.fs || _fs;
+      const shouldThrow = "throws" in options ? options.throws : true;
+      try {
+        let content = fs19.readFileSync(file, options);
+        content = stripBom(content);
+        return JSON.parse(content, options.reviver);
+      } catch (err) {
+        if (shouldThrow) {
+          err.message = `${file}: ${err.message}`;
+          throw err;
+        } else {
+          return null;
+        }
+      }
+    }
+    async function _writeFile(file, obj, options = {}) {
+      const fs19 = options.fs || _fs;
+      const str = stringify3(obj, options);
+      await universalify.fromCallback(fs19.writeFile)(file, str, options);
+    }
+    var writeFile = universalify.fromPromise(_writeFile);
+    function writeFileSync10(file, obj, options = {}) {
+      const fs19 = options.fs || _fs;
+      const str = stringify3(obj, options);
+      return fs19.writeFileSync(file, str, options);
+    }
+    module2.exports = {
+      readFile,
+      readFileSync: readFileSync7,
+      writeFile,
+      writeFileSync: writeFileSync10
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js
+var require_jsonfile2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) {
+    "use strict";
+    var jsonFile = require_jsonfile();
+    module2.exports = {
+      // jsonfile exports
+      readJson: jsonFile.readFile,
+      readJsonSync: jsonFile.readFileSync,
+      writeJson: jsonFile.writeFile,
+      writeJsonSync: jsonFile.writeFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js
+var require_output_file = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var mkdir = require_mkdirs();
+    var pathExists = require_path_exists().pathExists;
+    async function outputFile(file, data, encoding = "utf-8") {
+      const dir = path23.dirname(file);
+      if (!await pathExists(dir)) {
+        await mkdir.mkdirs(dir);
+      }
+      return fs19.writeFile(file, data, encoding);
+    }
+    function outputFileSync(file, ...args) {
+      const dir = path23.dirname(file);
+      if (!fs19.existsSync(dir)) {
+        mkdir.mkdirsSync(dir);
+      }
+      fs19.writeFileSync(file, ...args);
+    }
+    module2.exports = {
+      outputFile: u(outputFile),
+      outputFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js
+var require_output_json = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) {
+    "use strict";
+    var { stringify: stringify3 } = require_utils2();
+    var { outputFile } = require_output_file();
+    async function outputJson(file, data, options = {}) {
+      const str = stringify3(data, options);
+      await outputFile(file, str, options);
+    }
+    module2.exports = outputJson;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js
+var require_output_json_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) {
+    "use strict";
+    var { stringify: stringify3 } = require_utils2();
+    var { outputFileSync } = require_output_file();
+    function outputJsonSync(file, data, options) {
+      const str = stringify3(data, options);
+      outputFileSync(file, str, options);
+    }
+    module2.exports = outputJsonSync;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js
+var require_json = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var jsonFile = require_jsonfile2();
+    jsonFile.outputJson = u(require_output_json());
+    jsonFile.outputJsonSync = require_output_json_sync();
+    jsonFile.outputJSON = jsonFile.outputJson;
+    jsonFile.outputJSONSync = jsonFile.outputJsonSync;
+    jsonFile.writeJSON = jsonFile.writeJson;
+    jsonFile.writeJSONSync = jsonFile.writeJsonSync;
+    jsonFile.readJSON = jsonFile.readJson;
+    jsonFile.readJSONSync = jsonFile.readJsonSync;
+    module2.exports = jsonFile;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js
+var require_move = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var { copy } = require_copy2();
+    var { remove } = require_remove();
+    var { mkdirp } = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var stat = require_stat();
+    async function move(src, dest, opts = {}) {
+      const overwrite = opts.overwrite || opts.clobber || false;
+      const { srcStat, isChangingCase = false } = await stat.checkPaths(src, dest, "move", opts);
+      await stat.checkParentPaths(src, srcStat, dest, "move");
+      const destParent = path23.dirname(dest);
+      const parsedParentPath = path23.parse(destParent);
+      if (parsedParentPath.root !== destParent) {
+        await mkdirp(destParent);
+      }
+      return doRename(src, dest, overwrite, isChangingCase);
+    }
+    async function doRename(src, dest, overwrite, isChangingCase) {
+      if (!isChangingCase) {
+        if (overwrite) {
+          await remove(dest);
+        } else if (await pathExists(dest)) {
+          throw new Error("dest already exists.");
+        }
+      }
+      try {
+        await fs19.rename(src, dest);
+      } catch (err) {
+        if (err.code !== "EXDEV") {
+          throw err;
+        }
+        await moveAcrossDevice(src, dest, overwrite);
+      }
+    }
+    async function moveAcrossDevice(src, dest, overwrite) {
+      const opts = {
+        overwrite,
+        errorOnExist: true,
+        preserveTimestamps: true
+      };
+      await copy(src, dest, opts);
+      return remove(src);
+    }
+    module2.exports = move;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js
+var require_move_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var path23 = require("path");
+    var copySync2 = require_copy2().copySync;
+    var removeSync2 = require_remove().removeSync;
+    var mkdirpSync = require_mkdirs().mkdirpSync;
+    var stat = require_stat();
+    function moveSync(src, dest, opts) {
+      opts = opts || {};
+      const overwrite = opts.overwrite || opts.clobber || false;
+      const { srcStat, isChangingCase = false } = stat.checkPathsSync(src, dest, "move", opts);
+      stat.checkParentPathsSync(src, srcStat, dest, "move");
+      if (!isParentRoot(dest)) mkdirpSync(path23.dirname(dest));
+      return doRename(src, dest, overwrite, isChangingCase);
+    }
+    function isParentRoot(dest) {
+      const parent = path23.dirname(dest);
+      const parsedPath = path23.parse(parent);
+      return parsedPath.root === parent;
+    }
+    function doRename(src, dest, overwrite, isChangingCase) {
+      if (isChangingCase) return rename(src, dest, overwrite);
+      if (overwrite) {
+        removeSync2(dest);
+        return rename(src, dest, overwrite);
+      }
+      if (fs19.existsSync(dest)) throw new Error("dest already exists.");
+      return rename(src, dest, overwrite);
+    }
+    function rename(src, dest, overwrite) {
+      try {
+        fs19.renameSync(src, dest);
+      } catch (err) {
+        if (err.code !== "EXDEV") throw err;
+        return moveAcrossDevice(src, dest, overwrite);
+      }
+    }
+    function moveAcrossDevice(src, dest, overwrite) {
+      const opts = {
+        overwrite,
+        errorOnExist: true,
+        preserveTimestamps: true
+      };
+      copySync2(src, dest, opts);
+      return removeSync2(src);
+    }
+    module2.exports = moveSync;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js
+var require_move2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    module2.exports = {
+      move: u(require_move()),
+      moveSync: require_move_sync()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/index.js
+var require_lib5 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/index.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // Export promiseified graceful-fs:
+      ...require_fs(),
+      // Export extra methods:
+      ...require_copy2(),
+      ...require_empty(),
+      ...require_ensure(),
+      ...require_json(),
+      ...require_mkdirs(),
+      ...require_move2(),
+      ...require_output_file(),
+      ...require_path_exists(),
+      ...require_remove()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts
+var AWS_CDK_CONSTRUCTOR_PROPS;
+var init_classes = __esm({
+  "../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts"() {
+    "use strict";
+    AWS_CDK_CONSTRUCTOR_PROPS = {
+      "@aws-cdk.aws-amplify-alpha": {
+        "App": {
+          "appName": "*",
+          "sourceCodeProvider": "*",
+          "autoBranchCreation": {
+            "patterns": "*",
+            "basicAuth": "*",
+            "buildSpec": "*",
+            "autoBuild": "boolean",
+            "pullRequestPreview": "boolean",
+            "environmentVariables": "*",
+            "pullRequestEnvironmentName": "*",
+            "stage": "*"
+          },
+          "autoBranchDeletion": "boolean",
+          "basicAuth": "*",
+          "buildSpec": "*",
+          "customResponseHeaders": {
+            "appRoot": "*",
+            "pattern": "*",
+            "headers": "*"
+          },
+          "customRules": "*",
+          "description": "*",
+          "environmentVariables": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "platform": "Platform",
+          "cacheConfigType": "CacheConfigType",
+          "computeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "buildComputeType": "BuildComputeType",
+          "addCustomRule": [
+            "*"
+          ],
+          "addEnvironment": [
+            "*",
+            "*"
+          ],
+          "addAutoBranchEnvironment": [
+            "*",
+            "*"
+          ],
+          "addBranch": [
+            "*",
+            {
+              "basicAuth": "*",
+              "branchName": "*",
+              "buildSpec": "*",
+              "description": "*",
+              "autoBuild": "boolean",
+              "pullRequestPreview": "boolean",
+              "environmentVariables": "*",
+              "pullRequestEnvironmentName": "*",
+              "stage": "*",
+              "asset": "*",
+              "performanceMode": "boolean",
+              "skewProtection": "boolean",
+              "computeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ],
+          "addDomain": [
+            "*",
+            {
+              "domainName": "*",
+              "subDomains": {
+                "branch": {
+                  "branchName": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "prefix": "*"
+              },
+              "enableAutoSubdomain": "boolean",
+              "autoSubdomainCreationPatterns": "*",
+              "customCertificate": {
+                "certificateArn": "*"
+              }
+            }
+          ]
+        },
+        "Branch": {
+          "app": {
+            "appId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "basicAuth": "*",
+          "branchName": "*",
+          "buildSpec": "*",
+          "description": "*",
+          "autoBuild": "boolean",
+          "pullRequestPreview": "boolean",
+          "environmentVariables": "*",
+          "pullRequestEnvironmentName": "*",
+          "stage": "*",
+          "asset": "*",
+          "performanceMode": "boolean",
+          "skewProtection": "boolean",
+          "computeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addEnvironment": [
+            "*",
+            "*"
+          ]
+        },
+        "Domain": {
+          "app": {
+            "appId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoSubDomainIamRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "domainName": "*",
+          "subDomains": {
+            "branch": {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "prefix": "*"
+          },
+          "enableAutoSubdomain": "boolean",
+          "autoSubdomainCreationPatterns": "*",
+          "customCertificate": {
+            "certificateArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mapSubDomain": [
+            {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "*"
+          ],
+          "mapRoot": [
+            {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-apprunner-alpha": {
+        "AutoScalingConfiguration": {
+          "autoScalingConfigurationName": "*",
+          "maxConcurrency": "*",
+          "maxSize": "*",
+          "minSize": "*"
+        },
+        "ObservabilityConfiguration": {
+          "observabilityConfigurationName": "*",
+          "traceConfigurationVendor": "TraceConfigurationVendor"
+        },
+        "Service": {
+          "source": "*",
+          "autoDeploymentsEnabled": "boolean",
+          "autoScalingConfiguration": {
+            "autoScalingConfigurationArn": "*",
+            "autoScalingConfigurationName": "*",
+            "autoScalingConfigurationRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cpu": "*",
+          "memory": "*",
+          "accessRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serviceName": "*",
+          "vpcConnector": {
+            "vpcConnectorName": "*",
+            "vpcConnectorArn": "*",
+            "vpcConnectorRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "isPubliclyAccessible": "boolean",
+          "healthCheck": "*",
+          "kmsKey": "*",
+          "ipAddressType": "IpAddressType",
+          "observabilityConfiguration": {
+            "observabilityConfigurationName": "*",
+            "observabilityConfigurationArn": "*",
+            "observabilityConfigurationRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addToRolePolicy": [
+            "*"
+          ],
+          "addEnvironmentVariable": [
+            "*",
+            "*"
+          ],
+          "addSecret": [
+            "*",
+            "*"
+          ]
+        },
+        "VpcConnector": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcConnectorName": "*"
+        },
+        "VpcIngressConnection": {
+          "vpcIngressConnectionName": "*",
+          "service": {
+            "serviceName": "*",
+            "serviceArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "interfaceVpcEndpoint": {
+            "vpcEndpointId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          }
+        }
+      },
+      "@aws-cdk.aws-cloud9-alpha": {
+        "Ec2Environment": {
+          "owner": "*",
+          "instanceType": "*",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ec2EnvironmentName": "*",
+          "description": "*",
+          "clonedRepositories": "*",
+          "connectionType": "ConnectionType",
+          "imageId": "ImageId",
+          "automaticStop": "*"
+        }
+      },
+      "@aws-cdk.aws-codestar-alpha": {
+        "GitHubRepository": {
+          "owner": "*",
+          "repositoryName": "*",
+          "accessToken": "*",
+          "contentsBucket": "*",
+          "contentsKey": "*",
+          "contentsS3Version": "*",
+          "enableIssues": "boolean",
+          "visibility": "RepositoryVisibility",
+          "description": "*"
+        }
+      },
+      "@aws-cdk.aws-dsql-alpha": {
+        "Cluster": {}
+      },
+      "@aws-cdk.aws-ec2-alpha": {
+        "IpamPool": {
+          "ipamScopeId": "*",
+          "addressFamily": "AddressFamily",
+          "ipv4ProvisionedCidrs": "*",
+          "locale": "*",
+          "publicIpSource": "IpamPoolPublicIpSource",
+          "awsService": "AwsServiceName",
+          "ipamPoolName": "*",
+          "provisionCidr": [
+            "*",
+            {
+              "netmaskLength": "*",
+              "cidr": "*"
+            }
+          ]
+        },
+        "IpamScope": {
+          "ipamId": "*",
+          "ipamOperatingRegions": "*",
+          "ipamScopeId": "*",
+          "ipamScopeName": "*"
+        },
+        "Ipam": {
+          "addScope": [
+            "*",
+            "*",
+            {
+              "ipamScopeName": "*"
+            }
+          ]
+        },
+        "EgressOnlyInternetGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "egressOnlyInternetGatewayName": "*"
+        },
+        "InternetGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetGatewayName": "*"
+        },
+        "VPNGatewayV2": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "type": "VpnConnectionType",
+          "amazonSideAsn": "*",
+          "vpnGatewayName": "*",
+          "vpnRoutePropagation": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "NatGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnet": {
+            "ipv6CidrBlock": "*",
+            "subnetType": "SubnetType",
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "allocationId": "*",
+          "connectivityType": "NatConnectivityType",
+          "maxDrainDuration": "*",
+          "privateIpAddress": "*",
+          "secondaryAllocationIds": "*",
+          "secondaryPrivateIpAddressCount": "*",
+          "secondaryPrivateIpAddresses": "*",
+          "natGatewayName": "*"
+        },
+        "VPCPeeringConnection": {
+          "requestorVpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "acceptorVpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "peerRoleArn": "*",
+          "vpcPeeringConnectionName": "*"
+        },
+        "Route": {
+          "routeTable": {
+            "routeTableId": "*"
+          },
+          "destination": "*",
+          "target": "*",
+          "routeName": "*"
+        },
+        "RouteTable": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "routeTableName": "*",
+          "addRoute": [
+            "*",
+            "*",
+            "*",
+            "*"
+          ]
+        },
+        "SubnetV2": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv4CidrBlock": "*",
+          "ipv6CidrBlock": "*",
+          "availabilityZone": "*",
+          "routeTable": {
+            "routeTableId": "*"
+          },
+          "defaultRouteTableName": "*",
+          "subnetType": "SubnetType",
+          "subnetName": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "mapPublicIpOnLaunch": "boolean",
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "TransitGatewayRouteTableAssociation": {
+          "transitGatewayVpcAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteTableAssociationName": "*"
+        },
+        "TransitGatewayRouteTablePropagation": {
+          "transitGatewayVpcAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteTablePropagationName": "*"
+        },
+        "TransitGatewayRouteTable": {
+          "transitGateway": {
+            "transitGatewayId": "*",
+            "transitGatewayArn": "*",
+            "defaultRouteTable": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "routeTableId": "*"
+            },
+            "defaultRouteTableAssociation": "boolean",
+            "defaultRouteTablePropagation": "boolean",
+            "dnsSupport": "boolean",
+            "securityGroupReferencingSupport": "boolean",
+            "routerType": "RouterType",
+            "routerTargetId": "*"
+          },
+          "transitGatewayRouteTableName": "*"
+        },
+        "TransitGatewayRoute": {
+          "transitGatewayAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "destinationCidrBlock": "*",
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteName": "*"
+        },
+        "TransitGatewayBlackholeRoute": {
+          "destinationCidrBlock": "*",
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteName": "*"
+        },
+        "TransitGatewayVpcAttachment": {
+          "transitGateway": {
+            "transitGatewayId": "*",
+            "transitGatewayArn": "*",
+            "defaultRouteTable": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "routeTableId": "*"
+            },
+            "defaultRouteTableAssociation": "boolean",
+            "defaultRouteTablePropagation": "boolean",
+            "dnsSupport": "boolean",
+            "securityGroupReferencingSupport": "boolean",
+            "routerType": "RouterType",
+            "routerTargetId": "*"
+          },
+          "subnets": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcAttachmentOptions": {
+            "applianceModeSupport": "boolean",
+            "dnsSupport": "boolean",
+            "ipv6Support": "boolean",
+            "securityGroupReferencingSupport": "boolean"
+          },
+          "transitGatewayAttachmentName": "*"
+        },
+        "TransitGateway": {
+          "transitGatewayName": "*",
+          "amazonSideAsn": "*",
+          "autoAcceptSharedAttachments": "boolean",
+          "defaultRouteTableAssociation": "boolean",
+          "defaultRouteTablePropagation": "boolean",
+          "description": "*",
+          "dnsSupport": "boolean",
+          "securityGroupReferencingSupport": "boolean",
+          "transitGatewayCidrBlocks": "*"
+        },
+        "VpcV2": {
+          "primaryAddressBlock": "*",
+          "secondaryAddressBlocks": "*",
+          "enableDnsHostnames": "boolean",
+          "enableDnsSupport": "boolean",
+          "defaultInstanceTenancy": "DefaultInstanceTenancy",
+          "vpcName": "*"
+        },
+        "VPCCidrBlock": {
+          "vpcId": "*",
+          "amazonProvidedIpv6CidrBlock": "boolean",
+          "cidrBlock": "*",
+          "cidrBlockName": "*",
+          "ipv6NetmaskLength": "*",
+          "ipv4NetmaskLength": "*",
+          "ipv6IpamPoolId": "*",
+          "ipv4IpamPoolId": "*",
+          "ipv4IpamProvisionedCidrs": "*",
+          "ipv6CidrBlock": "*",
+          "ipv6Pool": "*"
+        }
+      },
+      "@aws-cdk.aws-elasticache-alpha": {
+        "IamUser": {
+          "userName": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*",
+          "grantConnect": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "NoPasswordUser": {
+          "userName": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*"
+        },
+        "PasswordUser": {
+          "userName": "*",
+          "passwords": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*"
+        },
+        "ServerlessCache": {
+          "engine": "*",
+          "serverlessCacheName": "*",
+          "description": "*",
+          "cacheUsageLimits": {
+            "dataStorageMinimumSize": "*",
+            "requestRateLimitMinimum": "*",
+            "requestRateLimitMaximum": "*"
+          },
+          "backup": {
+            "backupTime": "*",
+            "backupRetentionLimit": "*",
+            "backupNameBeforeDeletion": "*",
+            "backupArnsToRestore": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "userGroup": {
+            "userGroupName": "*",
+            "engine": "*",
+            "users": {
+              "userId": "*",
+              "userName": "*",
+              "userArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "userGroupArn": "*"
+          }
+        },
+        "UserGroup": {
+          "userGroupName": "*",
+          "engine": "*",
+          "users": {
+            "userId": "*",
+            "engine": "*",
+            "userName": "*",
+            "userArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addUser": [
+            {
+              "userId": "*",
+              "engine": "*",
+              "userName": "*",
+              "userArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-gamelift-alpha": {
+        "Alias": {
+          "aliasName": "*",
+          "description": "*",
+          "fleet": {
+            "fleetId": "*",
+            "fleetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "resourceArnForDestination": "*"
+          },
+          "terminalMessage": "*"
+        },
+        "BuildFleet": {
+          "content": {
+            "buildId": "*",
+            "buildArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "ingressRules": {
+            "port": "*",
+            "source": {
+              "uniqueId": "*"
+            }
+          },
+          "fleetName": "*",
+          "description": "*",
+          "useSpot": "boolean",
+          "useCertificate": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "peerVpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "metricGroup": "*",
+          "instanceType": "*",
+          "desiredCapacity": "*",
+          "minSize": "*",
+          "maxSize": "*",
+          "protectNewGameSession": "boolean",
+          "runtimeConfiguration": {
+            "gameSessionActivationTimeout": "*",
+            "maxConcurrentGameSessionActivations": "*",
+            "serverProcesses": {
+              "concurrentExecutions": "*",
+              "launchPath": "*",
+              "parameters": "*"
+            }
+          },
+          "locations": {
+            "region": "*",
+            "capacity": {
+              "desiredCapacity": "*",
+              "maxSize": "*",
+              "minSize": "*"
+            }
+          },
+          "resourceCreationLimitPolicy": {
+            "newGameSessionsPerCreator": "*",
+            "policyPeriod": "*"
+          },
+          "addIngressRule": [
+            {
+              "uniqueId": "*"
+            },
+            "*"
+          ]
+        },
+        "Build": {
+          "buildName": "*",
+          "buildVersion": "*",
+          "operatingSystem": "OperatingSystem",
+          "content": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serverSdkVersion": "*"
+        },
+        "GameServerGroup": {
+          "gameServerGroupName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minSize": "*",
+          "maxSize": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceDefinitions": {
+            "instanceType": "*",
+            "weight": "*"
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "protectGameServer": "boolean",
+          "autoScalingPolicy": {
+            "estimatedInstanceWarmup": "*",
+            "targetTrackingConfiguration": "*"
+          },
+          "deleteOption": "DeleteOption",
+          "balancingStrategy": "BalancingStrategy"
+        },
+        "GameSessionQueue": {
+          "gameSessionQueueName": "*",
+          "customEventData": "*",
+          "allowedLocations": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "playerLatencyPolicies": {
+            "maximumIndividualPlayerLatency": "*"
+          },
+          "priorityConfiguration": {
+            "locationOrder": "*",
+            "priorityOrder": "PriorityType"
+          },
+          "timeout": "*",
+          "destinations": {
+            "resourceArnForDestination": "*"
+          },
+          "addDestination": [
+            {
+              "resourceArnForDestination": "*"
+            }
+          ]
+        },
+        "MatchmakingRuleSet": {
+          "matchmakingRuleSetName": "*",
+          "content": "*"
+        },
+        "QueuedMatchmakingConfiguration": {
+          "additionalPlayerCount": "*",
+          "manualBackfillMode": "boolean",
+          "gameProperties": {
+            "key": "*",
+            "value": "*"
+          },
+          "gameSessionData": "*",
+          "gameSessionQueues": {
+            "gameSessionQueueName": "*",
+            "gameSessionQueueArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "matchmakingConfigurationName": "*",
+          "description": "*",
+          "requireAcceptance": "boolean",
+          "acceptanceTimeout": "*",
+          "customEventData": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "requestTimeout": "*",
+          "ruleSet": {
+            "matchmakingRuleSetName": "*",
+            "matchmakingRuleSetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addGameSessionQueue": [
+            {
+              "gameSessionQueueName": "*",
+              "gameSessionQueueArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Script": {
+          "scriptName": "*",
+          "scriptVersion": "*",
+          "content": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "StandaloneMatchmakingConfiguration": {
+          "matchmakingConfigurationName": "*",
+          "description": "*",
+          "requireAcceptance": "boolean",
+          "acceptanceTimeout": "*",
+          "customEventData": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "requestTimeout": "*",
+          "ruleSet": {
+            "matchmakingRuleSetName": "*",
+            "matchmakingRuleSetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-glue-alpha": {
+        "Catalog": {
+          "catalogName": "*",
+          "description": "*",
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "AccountCatalog": {
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "ImportedCatalog": {},
+        "Connection": {
+          "type": "*",
+          "connectionName": "*",
+          "description": "*",
+          "properties": "*",
+          "secret": "*",
+          "matchCriteria": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "network": "*",
+          "addProperty": [
+            "*",
+            "*"
+          ]
+        },
+        "DataQualityRuleset": {
+          "rulesetName": "*",
+          "description": "*",
+          "dqdl": "*",
+          "tags": "*",
+          "targetTable": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Database": {
+          "databaseName": "*",
+          "locationUri": "*",
+          "description": "*",
+          "catalog": {
+            "catalogId": "*",
+            "catalogArn": "*",
+            "encryptionKey": "*",
+            "connectionPasswordKey": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ExternalTable": {
+          "connection": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "externalDataLocation": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "S3Table": {
+          "storage": "*",
+          "s3Prefix": "*",
+          "clientSideEncryption": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "SecurityConfiguration": {
+          "securityConfigurationName": "*",
+          "cloudWatchEncryption": "*",
+          "jobBookmarksEncryption": "*",
+          "s3Encryption": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-imagebuilder-alpha": {
+        "Component": {
+          "data": "*",
+          "platform": "Platform",
+          "componentName": "*",
+          "componentVersion": "*",
+          "description": "*",
+          "changeDescription": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "supportedOsVersions": "*",
+          "tags": "*"
+        },
+        "ContainerRecipe": {
+          "baseImage": "*",
+          "targetRepository": "*",
+          "containerRecipeName": "*",
+          "containerRecipeVersion": "*",
+          "description": "*",
+          "dockerfile": "*",
+          "components": {
+            "component": {
+              "componentArn": "*",
+              "componentName": "*",
+              "componentVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "parameters": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workingDirectory": "*",
+          "osVersion": "*",
+          "instanceBlockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "instanceImage": "*",
+          "tags": "*",
+          "addInstanceBlockDevice": [
+            {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            }
+          ]
+        },
+        "DistributionConfiguration": {
+          "amiDistributions": {
+            "region": "*",
+            "amiTags": "*",
+            "amiDescription": "*",
+            "amiKmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "amiLaunchPermission": {
+              "organizationalUnitArns": "*",
+              "organizationArns": "*",
+              "isPublicUserGroup": "boolean",
+              "accountIds": "*"
+            },
+            "amiName": "*",
+            "amiTargetAccountIds": "*",
+            "ssmParameters": {
+              "amiAccount": "*",
+              "dataType": "ParameterDataType",
+              "parameter": {
+                "stringValue": "*",
+                "parameterArn": "*",
+                "parameterName": "*",
+                "parameterType": "*"
+              }
+            },
+            "launchTemplates": {
+              "launchTemplate": {
+                "versionNumber": "*",
+                "launchTemplateId": "*",
+                "launchTemplateName": "*"
+              },
+              "accountId": "*",
+              "setDefaultVersion": "boolean"
+            },
+            "fastLaunchConfigurations": {
+              "enabled": "boolean",
+              "maxParallelLaunches": "*",
+              "targetSnapshotCount": "*"
+            },
+            "licenseConfigurationArns": "*"
+          },
+          "containerDistributions": {
+            "region": "*",
+            "containerRepository": "*",
+            "containerDescription": "*",
+            "containerTags": "*"
+          },
+          "distributionConfigurationName": "*",
+          "description": "*",
+          "tags": "*",
+          "addAmiDistributions": [
+            {
+              "region": "*",
+              "amiTags": "*",
+              "amiDescription": "*",
+              "amiKmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "amiLaunchPermission": {
+                "organizationalUnitArns": "*",
+                "organizationArns": "*",
+                "isPublicUserGroup": "boolean",
+                "accountIds": "*"
+              },
+              "amiName": "*",
+              "amiTargetAccountIds": "*",
+              "ssmParameters": {
+                "amiAccount": "*",
+                "dataType": "ParameterDataType",
+                "parameter": {
+                  "stringValue": "*",
+                  "parameterArn": "*",
+                  "parameterName": "*",
+                  "parameterType": "*"
+                }
+              },
+              "launchTemplates": {
+                "launchTemplate": {
+                  "versionNumber": "*",
+                  "launchTemplateId": "*",
+                  "launchTemplateName": "*"
+                },
+                "accountId": "*",
+                "setDefaultVersion": "boolean"
+              },
+              "fastLaunchConfigurations": {
+                "enabled": "boolean",
+                "maxParallelLaunches": "*",
+                "targetSnapshotCount": "*"
+              },
+              "licenseConfigurationArns": "*"
+            }
+          ],
+          "addContainerDistributions": [
+            {
+              "region": "*",
+              "containerRepository": "*",
+              "containerDescription": "*",
+              "containerTags": "*"
+            }
+          ]
+        },
+        "ImagePipeline": {
+          "recipe": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imagePipelineName": "*",
+          "description": "*",
+          "schedule": {
+            "expression": "*",
+            "autoDisableFailureCount": "*",
+            "startCondition": "ScheduleStartCondition"
+          },
+          "status": "ImagePipelineStatus",
+          "infrastructureConfiguration": {
+            "infrastructureConfigurationArn": "*",
+            "infrastructureConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "distributionConfiguration": {
+            "distributionConfigurationArn": "*",
+            "distributionConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workflows": {
+            "workflow": {
+              "workflowArn": "*",
+              "workflowName": "*",
+              "workflowType": "*",
+              "workflowVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "onFailure": "WorkflowOnFailure",
+            "parallelGroup": "*",
+            "parameters": "*"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imagePipelineLogGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageLogGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageScanningEnabled": "boolean",
+          "imageScanningEcrRepository": {
+            "repositoryName": "*",
+            "repositoryArn": "*",
+            "repositoryUri": "*",
+            "registryUri": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imageScanningEcrTags": "*",
+          "enhancedImageMetadataEnabled": "boolean",
+          "imageTestsEnabled": "boolean",
+          "tags": "*",
+          "grantDefaultExecutionRolePermissions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ImageRecipe": {
+          "baseImage": "*",
+          "imageRecipeName": "*",
+          "imageRecipeVersion": "*",
+          "description": "*",
+          "components": {
+            "component": {
+              "componentArn": "*",
+              "componentName": "*",
+              "componentVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "parameters": "*"
+          },
+          "amiTags": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "workingDirectory": "*",
+          "uninstallSsmAgentAfterBuild": "boolean",
+          "userDataOverride": "*",
+          "tags": "*",
+          "addBlockDevice": [
+            {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            }
+          ]
+        },
+        "Image": {
+          "recipe": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "infrastructureConfiguration": {
+            "infrastructureConfigurationArn": "*",
+            "infrastructureConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "distributionConfiguration": {
+            "distributionConfigurationArn": "*",
+            "distributionConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workflows": {
+            "workflow": {
+              "workflowArn": "*",
+              "workflowName": "*",
+              "workflowType": "*",
+              "workflowVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "onFailure": "WorkflowOnFailure",
+            "parallelGroup": "*",
+            "parameters": "*"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageScanningEnabled": "boolean",
+          "imageScanningEcrRepository": {
+            "repositoryName": "*",
+            "repositoryArn": "*",
+            "repositoryUri": "*",
+            "registryUri": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imageScanningEcrTags": "*",
+          "enhancedImageMetadataEnabled": "boolean",
+          "imageTestsEnabled": "boolean",
+          "deletionExecutionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "grantDefaultExecutionRolePermissions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "InfrastructureConfiguration": {
+          "infrastructureConfigurationName": "*",
+          "description": "*",
+          "instanceTypes": "*",
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "terminateInstanceOnFailure": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "HttpTokens",
+          "notificationTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "logging": {
+            "s3Bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "s3KeyPrefix": "*"
+          },
+          "ec2InstanceAvailabilityZone": "*",
+          "ec2InstanceHostId": "*",
+          "ec2InstanceHostResourceGroupArn": "*",
+          "ec2InstanceTenancy": "Tenancy",
+          "resourceTags": "*",
+          "tags": "*",
+          "_bind": [
+            {
+              "isContainerBuild": "boolean"
+            }
+          ]
+        },
+        "LifecyclePolicy": {
+          "resourceType": "LifecyclePolicyResourceType",
+          "details": {
+            "action": {
+              "type": "LifecyclePolicyActionType",
+              "includeAmis": "boolean",
+              "includeContainers": "boolean",
+              "includeSnapshots": "boolean"
+            },
+            "filter": {
+              "ageFilter": {
+                "age": "*",
+                "retainAtLeast": "*"
+              },
+              "countFilter": {
+                "count": "*"
+              }
+            },
+            "exclusionRules": {
+              "imageExclusionRules": {
+                "tags": "*"
+              },
+              "amiExclusionRules": {
+                "isPublic": "boolean",
+                "regions": "*",
+                "sharedAccounts": "*",
+                "tags": "*"
+              }
+            }
+          },
+          "resourceSelection": {
+            "recipes": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "tags": "*"
+          },
+          "lifecyclePolicyName": "*",
+          "description": "*",
+          "status": "LifecyclePolicyStatus",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*"
+        },
+        "Workflow": {
+          "data": "*",
+          "workflowType": "WorkflowType",
+          "workflowName": "*",
+          "workflowVersion": "*",
+          "description": "*",
+          "changeDescription": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-iot-alpha": {
+        "AccountAuditConfiguration": {},
+        "Logging": {},
+        "ScheduledAudit": {
+          "auditChecks": "AuditCheck",
+          "accountAuditConfiguration": {
+            "accountId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dayOfWeek": "DayOfWeek",
+          "dayOfMonth": "*",
+          "frequency": "Frequency",
+          "scheduledAuditName": "*"
+        },
+        "TopicRule": {
+          "topicRuleName": "*",
+          "actions": "*",
+          "description": "*",
+          "errorAction": "*",
+          "enabled": "boolean",
+          "sql": "*",
+          "addAction": [
+            "*"
+          ]
+        }
+      },
+      "@aws-cdk.aws-iotevents-alpha": {
+        "DetectorModel": {
+          "detectorModelName": "*",
+          "description": "*",
+          "evaluationMethod": "EventEvaluation",
+          "detectorKey": "*",
+          "initialState": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Input": {
+          "inputName": "*",
+          "attributeJsonPaths": "*"
+        }
+      },
+      "@aws-cdk.aws-ivs-alpha": {
+        "Channel": {
+          "authorized": "boolean",
+          "containerFormat": "ContainerFormat",
+          "insecureIngest": "boolean",
+          "latencyMode": "LatencyMode",
+          "channelName": "*",
+          "multitrackInputConfiguration": {
+            "maximumResolution": "MaximumResolution",
+            "policy": "Policy"
+          },
+          "type": "ChannelType",
+          "preset": "Preset",
+          "recordingConfiguration": {
+            "recordingConfigurationId": "*",
+            "recordingConfigurationArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "PlaybackKeyPair": {
+          "publicKeyMaterial": "*",
+          "playbackKeyPairName": "*"
+        },
+        "RecordingConfiguration": {
+          "bucket": "*",
+          "recordingConfigurationName": "*",
+          "recordingReconnectWindow": "*",
+          "renditionConfiguration": "*",
+          "thumbnailConfiguration": "*"
+        },
+        "StreamKey": {
+          "channel": {
+            "channelArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-kinesisanalytics-flink-alpha": {
+        "Import": {
+          "applicationArn": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        },
+        "Application": {
+          "applicationName": "*",
+          "runtime": "*",
+          "code": "*",
+          "checkpointingEnabled": "boolean",
+          "checkpointInterval": "*",
+          "minPauseBetweenCheckpoints": "*",
+          "logLevel": "LogLevel",
+          "metricsLevel": "MetricsLevel",
+          "autoScalingEnabled": "boolean",
+          "parallelism": "*",
+          "parallelismPerKpu": "*",
+          "snapshotsEnabled": "boolean",
+          "propertyGroups": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "logGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        }
+      },
+      "@aws-cdk.aws-lambda-go-alpha": {
+        "GoFunction": {
+          "entry": "*",
+          "runtime": "*",
+          "moduleDir": "*",
+          "bundling": {
+            "forcedDockerBundling": "boolean",
+            "dockerImage": "*",
+            "goBuildFlags": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "cgoEnabled": "boolean",
+            "goProxies": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        }
+      },
+      "@aws-cdk.aws-lambda-python-alpha": {
+        "PythonFunction": {
+          "entry": "*",
+          "runtime": "*",
+          "index": "*",
+          "handler": "*",
+          "bundling": {
+            "poetryIncludeHashes": "boolean",
+            "poetryWithoutUrls": "boolean",
+            "assetExcludes": "*",
+            "outputPathSuffix": "*",
+            "image": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "PythonLayerVersion": {
+          "entry": "*",
+          "compatibleRuntimes": "*",
+          "compatibleArchitectures": "*",
+          "bundling": {
+            "poetryIncludeHashes": "boolean",
+            "poetryWithoutUrls": "boolean",
+            "assetExcludes": "*",
+            "outputPathSuffix": "*",
+            "image": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "license": "*",
+          "layerVersionName": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-location-alpha": {
+        "ApiKey": {
+          "apiKeyName": "*",
+          "description": "*",
+          "expireTime": "*",
+          "forceDelete": "boolean",
+          "forceUpdate": "boolean",
+          "noExpiry": "boolean",
+          "allowMapsActions": "AllowMapsAction",
+          "allowPlacesActions": "AllowPlacesAction",
+          "allowRoutesActions": "AllowRoutesAction",
+          "allowReferers": "*"
+        },
+        "GeofenceCollection": {
+          "geofenceCollectionName": "*",
+          "description": "*",
+          "kmsKey": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Map": {
+          "mapName": "*",
+          "description": "*",
+          "style": "Style",
+          "customLayers": "CustomLayer",
+          "politicalView": "PoliticalView",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRendering": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "PlaceIndex": {
+          "placeIndexName": "*",
+          "dataSource": "DataSource",
+          "intendedUse": "IntendedUse",
+          "description": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantSearch": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "RouteCalculator": {
+          "routeCalculatorName": "*",
+          "dataSource": "DataSource",
+          "description": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Tracker": {
+          "trackerName": "*",
+          "description": "*",
+          "eventBridgeEnabled": "boolean",
+          "kmsKey": "*",
+          "kmsKeyEnableGeospatialQueries": "boolean",
+          "positionFiltering": "PositionFiltering",
+          "geofenceCollections": {
+            "geofenceCollectionName": "*",
+            "geofenceCollectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addGeofenceCollections": [
+            {
+              "geofenceCollectionName": "*",
+              "geofenceCollectionArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantUpdateDevicePositions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-mediaconnect-alpha": {
+        "BridgeOutput": {
+          "bridgeOutputName": "*",
+          "bridge": {
+            "bridgeArn": "*",
+            "bridgeName": "*",
+            "bridgeType": "*",
+            "bridgeState": "*",
+            "isFailoverEnabled": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "output": "*"
+        },
+        "BridgeSource": {
+          "bridgeSourceName": "*",
+          "bridge": {
+            "bridgeArn": "*",
+            "bridgeName": "*",
+            "bridgeType": "*",
+            "bridgeState": "*",
+            "isFailoverEnabled": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "source": "*"
+        },
+        "Bridge": {
+          "bridgeName": "*",
+          "config": "*",
+          "gateway": {
+            "gatewayArn": "*",
+            "gatewayState": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "sourceFailoverConfig": "*"
+        },
+        "FlowEntitlement": {
+          "flowEntitlementName": "*",
+          "dataTransferSubscriberFeePercent": "*",
+          "description": "*",
+          "encryption": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secret": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "algorithm": "*"
+          },
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subscribers": "*",
+          "entitlementStatus": "EntitlementStatus"
+        },
+        "FlowOutput": {
+          "flowOutputName": "*",
+          "description": "*",
+          "outputStatus": "State",
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "output": "*"
+        },
+        "FlowSource": {
+          "source": "*",
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Flow": {
+          "flowName": "*",
+          "availabilityZone": "*",
+          "flowSize": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "mediaStreams": "*",
+          "ndiConfig": {
+            "machineName": "*",
+            "ndiDiscoveryServers": {
+              "discoveryServerAddress": "*",
+              "discoveryServerPort": "*",
+              "vpcInterface": {
+                "name": "*",
+                "networkInterfaceIds": "*",
+                "networkInterfaceType": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "securityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                },
+                "subnet": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              }
+            },
+            "ndiState": "State"
+          },
+          "encodingConfig": {
+            "encodingProfile": "EncodingProfile",
+            "videoMaxBitrate": "*"
+          },
+          "source": "*",
+          "sourceFailoverConfig": "*",
+          "sourceMonitoringConfig": {
+            "contentQualityAnalysisState": "State",
+            "thumbnailState": "State",
+            "silentAudio": {
+              "state": "State",
+              "threshold": "*"
+            }
+          },
+          "vpcInterfaces": {
+            "name": "*",
+            "networkInterfaceIds": "*",
+            "networkInterfaceType": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "subnet": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            }
+          },
+          "addVpcInterface": [
+            {
+              "name": "*",
+              "networkInterfaceIds": "*",
+              "networkInterfaceType": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              },
+              "subnet": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              }
+            }
+          ]
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "egressCidrBlocks": "*",
+          "networks": "*",
+          "addNetwork": [
+            "*"
+          ]
+        },
+        "RouterInput": {
+          "routerInputName": "*",
+          "maximumBitrate": "*",
+          "routingScope": "*",
+          "tier": "*",
+          "configuration": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "regionName": "*",
+          "tags": "*",
+          "transitEncryption": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secret": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            }
+          }
+        },
+        "RouterNetworkInterface": {
+          "routerNetworkInterfaceName": "*",
+          "configuration": "*",
+          "regionName": "*",
+          "tags": "*"
+        },
+        "RouterOutput": {
+          "routerOutputName": "*",
+          "maximumBitrate": "*",
+          "routingScope": "*",
+          "tier": "*",
+          "configuration": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "regionName": "*",
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-medialive-alpha": {
+        "ChannelPlacementGroup": {
+          "channelPlacementGroupName": "*",
+          "cluster": "*",
+          "nodes": "*",
+          "tags": "*"
+        },
+        "Channel": {
+          "channelName": "*",
+          "channelClass": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "inputs": {
+            "input": {
+              "inputArn": "*",
+              "inputId": "*",
+              "inputClass": "*",
+              "inputType": "*",
+              "inputDestinations": "*",
+              "inputSources": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "inputAttachmentName": "*",
+            "sourceEndBehavior": "*",
+            "inputFilter": "*",
+            "filterStrength": "*",
+            "deblockFilter": "boolean",
+            "denoiseFilter": "boolean",
+            "smpte2038DataPreference": "*",
+            "audioSelectors": "*",
+            "captionSelectors": "*",
+            "scte35Pid": "*",
+            "videoSelector": {
+              "colorSpace": "*",
+              "colorSpaceUsage": "*",
+              "hdr10": {
+                "maxContentLightLevel": "*",
+                "maxFrameAverageLightLevel": "*"
+              },
+              "selectBy": "*"
+            },
+            "networkInputSettings": {
+              "serverValidation": "*",
+              "hlsInputSettings": {
+                "bandwidth": "*",
+                "bufferSegments": "*",
+                "retries": "*",
+                "retryInterval": "*",
+                "scte35Source": "*"
+              },
+              "multicastSourceIp": "*"
+            },
+            "logicalInterfaceNames": "*",
+            "automaticInputFailover": {
+              "failoverConditions": "*",
+              "inputPreference": "*"
+            }
+          },
+          "outputGroups": "*",
+          "logLevel": "*",
+          "inputSpecification": "*",
+          "globalConfiguration": {
+            "initialAudioGain": "*",
+            "inputEndAction": "*",
+            "outputTimingSource": "*",
+            "supportLowFramerateInputs": "boolean",
+            "inputLossBehavior": {
+              "blackFrame": "*",
+              "imageType": "*",
+              "imageColor": "*",
+              "imageSlate": "*"
+            },
+            "outputLocking": "*"
+          },
+          "tags": "*",
+          "maintenance": {
+            "day": "*",
+            "time": "*"
+          },
+          "timecodeConfig": {
+            "source": "*",
+            "syncThreshold": "*"
+          },
+          "vpc": {
+            "subnets": "*",
+            "securityGroups": "*",
+            "publicAddressAllocationIds": "*"
+          },
+          "availBlanking": {
+            "state": "*",
+            "image": "*"
+          },
+          "availSettings": "*",
+          "scte35SegmentationScope": "*",
+          "featureActivations": {
+            "inputPrepareScheduleActions": "*"
+          },
+          "motionGraphicsConfiguration": {
+            "motionGraphicsInsertion": "*"
+          },
+          "nielsenConfiguration": {
+            "distributorId": "*",
+            "nielsenPcmToId3Tagging": "*"
+          },
+          "thumbnailConfiguration": {
+            "state": "*"
+          },
+          "blackoutSlate": {
+            "state": "*",
+            "image": "*",
+            "networkEndBlackout": "*",
+            "networkId": "*"
+          },
+          "colorCorrections": {
+            "inputColorSpace": "*",
+            "lut": "*"
+          },
+          "anywhereSettings": {
+            "cluster": "*",
+            "channelPlacementGroup": "*"
+          },
+          "channelEngineVersion": "*",
+          "linkedChannelSettings": "*",
+          "channelSecurityGroups": "*",
+          "inferenceFeedArn": "*",
+          "addInput": [
+            {
+              "input": {
+                "inputArn": "*",
+                "inputId": "*",
+                "inputClass": "*",
+                "inputType": "*",
+                "inputDestinations": "*",
+                "inputSources": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "inputAttachmentName": "*",
+              "sourceEndBehavior": "*",
+              "inputFilter": "*",
+              "filterStrength": "*",
+              "deblockFilter": "boolean",
+              "denoiseFilter": "boolean",
+              "smpte2038DataPreference": "*",
+              "audioSelectors": "*",
+              "captionSelectors": "*",
+              "scte35Pid": "*",
+              "videoSelector": {
+                "colorSpace": "*",
+                "colorSpaceUsage": "*",
+                "hdr10": {
+                  "maxContentLightLevel": "*",
+                  "maxFrameAverageLightLevel": "*"
+                },
+                "selectBy": "*"
+              },
+              "networkInputSettings": {
+                "serverValidation": "*",
+                "hlsInputSettings": {
+                  "bandwidth": "*",
+                  "bufferSegments": "*",
+                  "retries": "*",
+                  "retryInterval": "*",
+                  "scte35Source": "*"
+                },
+                "multicastSourceIp": "*"
+              },
+              "logicalInterfaceNames": "*",
+              "automaticInputFailover": {
+                "failoverConditions": "*",
+                "inputPreference": "*"
+              }
+            }
+          ],
+          "addOutputGroup": [
+            "*"
+          ]
+        },
+        "Cluster": {
+          "clusterName": "*",
+          "clusterType": "*",
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkSettings": {
+            "defaultRoute": "*",
+            "interfaceMappings": {
+              "logicalInterfaceName": "*",
+              "networkId": "*"
+            }
+          },
+          "tags": "*"
+        },
+        "InputSecurityGroup": {
+          "allowlistRules": "*",
+          "tags": "*"
+        },
+        "Input": {
+          "inputName": "*",
+          "input": "*",
+          "inputNetworkLocation": "*",
+          "tags": "*",
+          "_grantPermissions": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Network": {
+          "networkName": "*",
+          "ipPools": "*",
+          "routes": {
+            "cidr": "*",
+            "gateway": "*"
+          },
+          "tags": "*"
+        },
+        "SdiSource": {
+          "sdiSourceName": "*",
+          "type": "*",
+          "mode": "*",
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-mediapackagev2-alpha": {
+        "ChannelPolicy": {
+          "channel": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "channelArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "ingestEndpointUrls": "*",
+            "channelGroup": {
+              "channelGroupName": "*",
+              "channelGroupArn": "*",
+              "egressDomain": "*",
+              "createdAt": "*",
+              "modifiedAt": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "region": "*",
+            "grants": "*"
+          },
+          "policyDocument": "*"
+        },
+        "Channel": {
+          "channelGroup": {
+            "channelGroupName": "*",
+            "channelGroupArn": "*",
+            "egressDomain": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "channelName": "*",
+          "input": "*",
+          "description": "*",
+          "tags": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OriginEndpoint": {
+          "channel": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "channelArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "ingestEndpointUrls": "*",
+            "channelGroup": {
+              "channelGroupName": "*",
+              "channelGroupArn": "*",
+              "egressDomain": "*",
+              "createdAt": "*",
+              "modifiedAt": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "region": "*",
+            "grants": "*"
+          },
+          "originEndpointName": "*",
+          "description": "*",
+          "tags": "*",
+          "manifests": "*",
+          "startoverWindow": "*",
+          "segment": {
+            "containerType": "ContainerType",
+            "includeIframeOnlyStreams": "boolean",
+            "scteFilter": "ScteMessageType",
+            "scteInSegments": "ScteInSegments",
+            "segmentDuration": "*",
+            "segmentName": "*",
+            "tsIncludeDvbSubtitles": "boolean",
+            "tsUseAudioRenditionGroup": "boolean",
+            "encryption": "*"
+          },
+          "forceEndpointConfigurationConditions": "EndpointErrorConfiguration",
+          "cdnAuth": {
+            "secrets": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ChannelGroup": {},
+        "OriginEndpointPolicy": {
+          "originEndpoint": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "originEndpointName": "*",
+            "originEndpointArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "hlsManifestUrls": "*",
+            "lowLatencyHlsManifestUrls": "*",
+            "dashManifestUrls": "*",
+            "mssManifestUrls": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "policyDocument": "*",
+          "cdnAuth": {
+            "secrets": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-msk-alpha": {
+        "Cluster": {
+          "clusterName": "*",
+          "kafkaVersion": "*",
+          "numberOfBrokerNodes": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceType": "*",
+          "brokerType": "BrokerType",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ebsStorageInfo": {
+            "volumeSize": "*",
+            "encryptionKey": "*"
+          },
+          "storageMode": "StorageMode",
+          "configurationInfo": {
+            "arn": "*",
+            "revision": "*"
+          },
+          "monitoring": {
+            "clusterMonitoringLevel": "ClusterMonitoringLevel",
+            "enablePrometheusJmxExporter": "boolean",
+            "enablePrometheusNodeExporter": "boolean"
+          },
+          "logging": {
+            "firehoseDeliveryStreamName": "*",
+            "cloudwatchLogGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "s3": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*"
+            }
+          },
+          "encryptionInTransit": {
+            "clientBroker": "ClientBrokerEncryption",
+            "enableInCluster": "boolean"
+          },
+          "clientAuthentication": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addUser": [
+            "*"
+          ]
+        },
+        "ServerlessCluster": {
+          "clusterName": "*",
+          "vpcConfigs": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-neptune-alpha": {
+        "DatabaseCluster": {
+          "engineVersion": "*",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "kmsKey": "*",
+          "storageEncrypted": "boolean",
+          "instances": "*",
+          "dbClusterName": "*",
+          "iamAuthentication": "boolean",
+          "instanceIdentifierBase": "*",
+          "instanceType": "*",
+          "associatedRoles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "clusterParameterGroup": {
+            "clusterParameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameterGroup": {
+            "parameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": {
+            "subnetGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "autoMinorVersionUpgrade": "boolean",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serverlessScalingConfiguration": {
+            "minCapacity": "*",
+            "maxCapacity": "*"
+          },
+          "copyTagsToSnapshot": "boolean",
+          "port": "*"
+        },
+        "DatabaseInstance": {
+          "cluster": {
+            "clusterIdentifier": "*",
+            "clusterResourceIdentifier": "*",
+            "clusterEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "availabilityZone": "*",
+          "dbInstanceName": "*",
+          "parameterGroup": {
+            "parameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "autoMinorVersionUpgrade": "boolean"
+        },
+        "ClusterParameterGroup": {
+          "clusterParameterGroupName": "*",
+          "description": "*",
+          "parameters": "*",
+          "family": "*"
+        },
+        "ParameterGroup": {
+          "parameterGroupName": "*",
+          "description": "*",
+          "parameters": "*",
+          "family": "*"
+        },
+        "SubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetGroupName": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-pipes-alpha": {
+        "ImportedPipe": {},
+        "Pipe": {
+          "source": {
+            "sourceArn": "*"
+          },
+          "filter": {
+            "filters": {
+              "pattern": "*"
+            }
+          },
+          "enrichment": {
+            "enrichmentArn": "*"
+          },
+          "target": {
+            "targetArn": "*"
+          },
+          "pipeName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logDestinations": "*",
+          "logLevel": "LogLevel",
+          "logIncludeExecutionData": "IncludeExecutionData",
+          "description": "*",
+          "desiredState": "DesiredState",
+          "tags": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-redshift-alpha": {
+        "Cluster": {
+          "clusterName": "*",
+          "parameterGroup": {
+            "clusterParameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "numberOfNodes": "*",
+          "nodeType": "NodeType",
+          "clusterType": "ClusterType",
+          "port": "*",
+          "encrypted": "boolean",
+          "encryptionKey": "*",
+          "preferredMaintenanceWindow": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "subnetGroup": {
+            "clusterSubnetGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "masterUser": {
+            "masterUsername": "*",
+            "masterPassword": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "excludeCharacters": "*"
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultDatabaseName": "*",
+          "logging": "*",
+          "removalPolicy": "RemovalPolicy",
+          "publiclyAccessible": "boolean",
+          "classicResizing": "boolean",
+          "elasticIp": "*",
+          "rebootForParameterChanges": "boolean",
+          "enhancedVpcRouting": "boolean",
+          "multiAz": "boolean",
+          "resourceAction": "ResourceAction",
+          "availabilityZoneRelocation": "boolean",
+          "maintenanceTrackName": "MaintenanceTrackName",
+          "addRotationSingleUser": [
+            "*"
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*"
+            }
+          ],
+          "addToParameterGroup": [
+            "*",
+            "*"
+          ],
+          "enableRebootForParameterChanges": [],
+          "addDefaultIamRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addIamRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "excludeCharacters": "*"
+        },
+        "ClusterParameterGroup": {
+          "description": "*",
+          "parameters": "*",
+          "addParameter": [
+            "*",
+            "*"
+          ]
+        },
+        "ClusterSubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-route53resolver-alpha": {
+        "FirewallDomainList": {
+          "name": "*",
+          "domains": "*"
+        },
+        "FirewallRuleGroupAssociation": {
+          "firewallRuleGroup": {
+            "firewallRuleGroupId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mutationProtection": "boolean",
+          "name": "*",
+          "priority": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          }
+        },
+        "FirewallRuleGroup": {
+          "name": "*",
+          "rules": {
+            "action": "*",
+            "firewallDomainList": {
+              "firewallDomainListId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "priority": "*"
+          },
+          "addRule": [
+            {
+              "action": "*",
+              "firewallDomainList": {
+                "firewallDomainListId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "priority": "*"
+            }
+          ],
+          "associate": [
+            "*",
+            {
+              "mutationProtection": "boolean",
+              "name": "*",
+              "priority": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-s3objectlambda-alpha": {
+        "AccessPoint": {
+          "bucket": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "accessPointName": "*",
+          "cloudWatchMetricsEnabled": "boolean",
+          "supportsGetObjectRange": "boolean",
+          "supportsGetObjectPartNumber": "boolean",
+          "payload": "*"
+        }
+      },
+      "@aws-cdk.aws-s3tables-alpha": {
+        "Namespace": {
+          "namespaceName": "*",
+          "tableBucket": {
+            "tableBucketArn": "*",
+            "tableBucketName": "*",
+            "account": "*",
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "TableBucketPolicy": {
+          "tableBucket": {
+            "tableBucketArn": "*",
+            "tableBucketName": "*",
+            "account": "*",
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "resourcePolicy": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "TableBucket": {
+          "tableBucketName": "*",
+          "unreferencedFileRemoval": {
+            "noncurrentDays": "*",
+            "status": "UnreferencedFileRemovalStatus",
+            "unreferencedDays": "*"
+          },
+          "region": "*",
+          "account": "*",
+          "encryption": "TableBucketEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "requestMetricsStatus": "RequestMetricsStatus",
+          "storageClass": "StorageClass"
+        },
+        "TablePolicy": {
+          "table": {
+            "tableArn": "*",
+            "tableName": "*",
+            "account": "*",
+            "region": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "resourcePolicy": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Table": {
+          "tableName": "*",
+          "namespace": {
+            "namespaceName": "*",
+            "tableBucket": {
+              "tableBucketArn": "*",
+              "tableBucketName": "*",
+              "account": "*",
+              "region": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          },
+          "openTableFormat": "OpenTableFormat",
+          "compaction": {
+            "status": "Status",
+            "targetFileSizeMb": "*"
+          },
+          "icebergMetadata": {
+            "icebergSchema": {
+              "schemaFieldList": {
+                "id": "*",
+                "name": "*",
+                "required": "boolean",
+                "type": "*"
+              }
+            },
+            "icebergPartitionSpec": {
+              "fields": {
+                "sourceId": "*",
+                "transform": "*",
+                "name": "*",
+                "fieldId": "*"
+              },
+              "specId": "*"
+            },
+            "icebergSortOrder": {
+              "fields": {
+                "sourceId": "*",
+                "direction": "SortDirection",
+                "nullOrder": "NullOrder"
+              },
+              "orderId": "*"
+            },
+            "tableProperties": {
+              "key": "*",
+              "value": "*"
+            }
+          },
+          "snapshotManagement": {
+            "maxSnapshotAgeHours": "*",
+            "minSnapshotsToKeep": "*",
+            "status": "Status"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "withoutMetadata": "boolean",
+          "storageClass": "StorageClass"
+        }
+      },
+      "@aws-cdk.aws-sagemaker-alpha": {
+        "EndpointConfig": {
+          "endpointConfigName": "*",
+          "encryptionKey": "*",
+          "instanceProductionVariants": {
+            "acceleratorType": "*",
+            "initialInstanceCount": "*",
+            "instanceType": "*",
+            "containerStartupHealthCheckTimeout": "*",
+            "initialVariantWeight": "*",
+            "model": {
+              "modelArn": "*",
+              "modelName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "connections": "*"
+            },
+            "variantName": "*"
+          },
+          "serverlessProductionVariant": {
+            "maxConcurrency": "*",
+            "memorySizeInMB": "*",
+            "provisionedConcurrency": "*",
+            "initialVariantWeight": "*",
+            "model": {
+              "modelArn": "*",
+              "modelName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "connections": "*"
+            },
+            "variantName": "*"
+          },
+          "addInstanceProductionVariant": [
+            {
+              "acceleratorType": "*",
+              "initialInstanceCount": "*",
+              "instanceType": "*",
+              "containerStartupHealthCheckTimeout": "*",
+              "initialVariantWeight": "*",
+              "model": {
+                "modelArn": "*",
+                "modelName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "connections": "*"
+              },
+              "variantName": "*"
+            }
+          ],
+          "addServerlessProductionVariant": [
+            {
+              "maxConcurrency": "*",
+              "memorySizeInMB": "*",
+              "provisionedConcurrency": "*",
+              "initialVariantWeight": "*",
+              "model": {
+                "modelArn": "*",
+                "modelName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "connections": "*"
+              },
+              "variantName": "*"
+            }
+          ],
+          "_findInstanceProductionVariant": [
+            "*"
+          ]
+        },
+        "Endpoint": {
+          "endpointName": "*",
+          "endpointConfig": {
+            "endpointConfigArn": "*",
+            "endpointConfigName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "findInstanceProductionVariant": [
+            "*"
+          ]
+        },
+        "Model": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "modelName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "containers": {
+            "image": "*",
+            "environment": "*",
+            "containerHostname": "*",
+            "modelData": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "networkIsolation": "boolean",
+          "addContainer": [
+            {
+              "image": "*",
+              "environment": "*",
+              "containerHostname": "*",
+              "modelData": "*"
+            }
+          ]
+        },
+        "Pipeline": {
+          "grantStartPipelineExecution": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-servicecatalogappregistry-alpha": {
+        "Application": {
+          "applicationName": "*",
+          "description": "*"
+        },
+        "AttributeGroup": {
+          "attributeGroupName": "*",
+          "description": "*",
+          "attributes": "*"
+        }
+      },
+      "@aws-cdk.example-construct-library": {
+        "ExampleResource": {
+          "waitConditionHandleName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-apigateway": {
+        "ApiKey": {
+          "resources": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "stages": {
+            "stageName": "*",
+            "restApi": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "RateLimitedApiKey": {
+          "apiStages": {
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "throttle": {
+              "method": "*",
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              }
+            }
+          },
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "resources": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "stages": {
+            "stageName": "*",
+            "restApi": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "BasePathMapping": {
+          "domainName": "*",
+          "restApi": "*",
+          "basePath": "*",
+          "stage": "*",
+          "attachToStage": "boolean"
+        },
+        "Deployment": {
+          "api": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "description": "*",
+          "retainDeployments": "boolean",
+          "stageName": "*",
+          "addToLogicalId": [
+            "*"
+          ],
+          "_addMethodDependency": [
+            "*"
+          ]
+        },
+        "DomainName": {
+          "mapping": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "domainName": "*",
+          "certificate": "*",
+          "endpointType": "EndpointType",
+          "securityPolicy": "SecurityPolicy",
+          "endpointAccessMode": "EndpointAccessMode",
+          "mtls": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "key": "*",
+            "version": "*"
+          },
+          "basePath": "*",
+          "addBasePathMapping": [
+            "*",
+            {
+              "basePath": "*",
+              "stage": "*",
+              "attachToStage": "boolean"
+            }
+          ],
+          "addApiMapping": [
+            "*",
+            {
+              "basePath": "*"
+            }
+          ]
+        },
+        "GatewayResponse": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "type": "*",
+          "statusCode": "*",
+          "responseHeaders": "*",
+          "templates": "*"
+        },
+        "LambdaRestApi": {
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "integrationOptions": {
+            "proxy": "boolean",
+            "allowTestInvoke": "boolean",
+            "scopePermissionToMethod": "boolean",
+            "cacheKeyParameters": "*",
+            "cacheNamespace": "*",
+            "contentHandling": "ContentHandling",
+            "credentialsRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "credentialsPassthrough": "boolean",
+            "passthroughBehavior": "PassthroughBehavior",
+            "requestParameters": "*",
+            "requestTemplates": "*",
+            "timeout": "*",
+            "integrationResponses": {
+              "selectionPattern": "*",
+              "statusCode": "*",
+              "contentHandling": "ContentHandling",
+              "responseParameters": "*",
+              "responseTemplates": "*"
+            },
+            "connectionType": "ConnectionType",
+            "vpcLink": {
+              "vpcLinkId": "*"
+            },
+            "responseTransferMode": "ResponseTransferMode"
+          },
+          "proxy": "boolean",
+          "options": {
+            "binaryMediaTypes": "*",
+            "minimumCompressionSize": "*",
+            "minCompressionSize": "*",
+            "cloneFrom": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "apiKeySourceType": "ApiKeySourceType",
+            "deploy": "boolean",
+            "deployOptions": {
+              "stageName": "*",
+              "accessLogDestination": "*",
+              "accessLogFormat": "*",
+              "tracingEnabled": "boolean",
+              "cacheClusterEnabled": "boolean",
+              "cacheClusterSize": "*",
+              "clientCertificateId": "*",
+              "description": "*",
+              "documentationVersion": "*",
+              "variables": "*",
+              "methodOptions": "*",
+              "metricsEnabled": "boolean",
+              "loggingLevel": "MethodLoggingLevel",
+              "dataTraceEnabled": "boolean",
+              "throttlingBurstLimit": "*",
+              "throttlingRateLimit": "*",
+              "cachingEnabled": "boolean",
+              "cacheDataEncrypted": "boolean"
+            },
+            "retainDeployments": "boolean",
+            "restApiName": "*",
+            "parameters": "*",
+            "policy": "*",
+            "failOnWarnings": "boolean",
+            "domainName": {
+              "domainName": "*",
+              "certificate": "*",
+              "endpointType": "EndpointType",
+              "securityPolicy": "SecurityPolicy",
+              "endpointAccessMode": "EndpointAccessMode",
+              "mtls": {
+                "bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "encryptionKey": {
+                    "keyArn": "*",
+                    "keyId": "*"
+                  },
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "key": "*",
+                "version": "*"
+              },
+              "basePath": "*"
+            },
+            "cloudWatchRole": "boolean",
+            "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+            "endpointExportName": "*",
+            "endpointTypes": "EndpointType",
+            "endpointConfiguration": {
+              "types": "EndpointType",
+              "vpcEndpoints": {
+                "vpcEndpointId": "*"
+              },
+              "ipAddressType": "IpAddressType"
+            },
+            "disableExecuteApiEndpoint": "boolean",
+            "description": "*"
+          },
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "Method": {
+          "resource": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "httpMethod": "*",
+          "integration": "*",
+          "options": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "addMethodResponse": [
+            {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricClientError": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricServerError": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheHitCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheMissCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIntegrationLatency": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricLatency": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "grantExecute": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Model": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "contentType": "*",
+          "description": "*",
+          "modelName": "*",
+          "schema": {
+            "schema": "JsonSchemaVersion",
+            "id": "*",
+            "ref": "*",
+            "type": "JsonSchemaType",
+            "title": "*",
+            "description": "*",
+            "enum": "*",
+            "default": "*",
+            "format": "*",
+            "definitions": "*",
+            "multipleOf": "*",
+            "maximum": "*",
+            "exclusiveMaximum": "boolean",
+            "minimum": "*",
+            "exclusiveMinimum": "boolean",
+            "maxLength": "*",
+            "minLength": "*",
+            "pattern": "*",
+            "additionalItems": "boolean",
+            "maxItems": "*",
+            "minItems": "*",
+            "uniqueItems": "boolean",
+            "maxProperties": "*",
+            "minProperties": "*",
+            "required": "*",
+            "properties": "*",
+            "additionalProperties": "boolean",
+            "patternProperties": "*",
+            "dependencies": "*"
+          }
+        },
+        "RequestValidator": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "requestValidatorName": "*",
+          "validateRequestBody": "boolean",
+          "validateRequestParameters": "boolean"
+        },
+        "Resource": {
+          "parent": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "pathPart": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "ProxyResource": {
+          "parent": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "anyMethod": "boolean",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          },
+          "addMethod": [
+            "*",
+            "*",
+            {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            }
+          ]
+        },
+        "SpecRestApi": {
+          "apiDefinition": "*",
+          "binaryMediaTypes": "*",
+          "minCompressionSize": "*",
+          "mode": "RestApiMode",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "RestApi": {
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          },
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addModel": [
+            "*",
+            {
+              "contentType": "*",
+              "description": "*",
+              "modelName": "*",
+              "schema": {
+                "schema": "JsonSchemaVersion",
+                "id": "*",
+                "ref": "*",
+                "type": "JsonSchemaType",
+                "title": "*",
+                "description": "*",
+                "enum": "*",
+                "default": "*",
+                "format": "*",
+                "definitions": "*",
+                "multipleOf": "*",
+                "maximum": "*",
+                "exclusiveMaximum": "boolean",
+                "minimum": "*",
+                "exclusiveMinimum": "boolean",
+                "maxLength": "*",
+                "minLength": "*",
+                "pattern": "*",
+                "additionalItems": "boolean",
+                "maxItems": "*",
+                "minItems": "*",
+                "uniqueItems": "boolean",
+                "maxProperties": "*",
+                "minProperties": "*",
+                "required": "*",
+                "properties": "*",
+                "additionalProperties": "boolean",
+                "patternProperties": "*",
+                "dependencies": "*"
+              }
+            }
+          ],
+          "addRequestValidator": [
+            "*",
+            {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          ],
+          "_attachMethod": [
+            "*"
+          ],
+          "_attachDeployment": [
+            "*"
+          ]
+        },
+        "RootResource": {},
+        "Stage": {
+          "deployment": "*",
+          "stageName": "*",
+          "accessLogDestination": "*",
+          "accessLogFormat": "*",
+          "tracingEnabled": "boolean",
+          "cacheClusterEnabled": "boolean",
+          "cacheClusterSize": "*",
+          "clientCertificateId": "*",
+          "description": "*",
+          "documentationVersion": "*",
+          "variables": "*",
+          "methodOptions": "*",
+          "metricsEnabled": "boolean",
+          "loggingLevel": "MethodLoggingLevel",
+          "dataTraceEnabled": "boolean",
+          "throttlingBurstLimit": "*",
+          "throttlingRateLimit": "*",
+          "cachingEnabled": "boolean",
+          "cacheTtl": "*",
+          "cacheDataEncrypted": "boolean"
+        },
+        "StepFunctionsRestApi": {
+          "stateMachine": {
+            "stateMachineArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "requestContext": {
+            "accountId": "boolean",
+            "apiId": "boolean",
+            "apiKey": "boolean",
+            "authorizerPrincipalId": "boolean",
+            "caller": "boolean",
+            "cognitoAuthenticationProvider": "boolean",
+            "cognitoAuthenticationType": "boolean",
+            "cognitoIdentityId": "boolean",
+            "cognitoIdentityPoolId": "boolean",
+            "httpMethod": "boolean",
+            "stage": "boolean",
+            "sourceIp": "boolean",
+            "user": "boolean",
+            "userAgent": "boolean",
+            "userArn": "boolean",
+            "requestId": "boolean",
+            "resourceId": "boolean",
+            "resourcePath": "boolean"
+          },
+          "querystring": "boolean",
+          "path": "boolean",
+          "headers": "boolean",
+          "authorizer": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "useDefaultMethodResponses": "boolean",
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "UsagePlan": {
+          "apiStages": {
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "throttle": {
+              "method": "*",
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              }
+            }
+          },
+          "description": "*",
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "name": "*",
+          "apiKey": {
+            "keyId": "*",
+            "keyArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addApiStage": [
+            {
+              "api": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "throttle": {
+                "method": "*",
+                "throttle": {
+                  "rateLimit": "*",
+                  "burstLimit": "*"
+                }
+              }
+            }
+          ]
+        },
+        "VpcLink": {
+          "vpcLinkName": "*",
+          "description": "*",
+          "targets": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "metrics": "*",
+            "securityGroups": "*",
+            "ipAddressType": "IpAddressType",
+            "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "loadBalancerArn": "*",
+            "connections": "*"
+          },
+          "addTargets": [
+            {
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "metrics": "*",
+              "securityGroups": "*",
+              "ipAddressType": "IpAddressType",
+              "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+              "loadBalancerCanonicalHostedZoneId": "*",
+              "loadBalancerDnsName": "*",
+              "loadBalancerArn": "*",
+              "connections": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-appconfig": {
+        "Application": {
+          "applicationName": "*",
+          "description": "*"
+        },
+        "DeploymentStrategy": {
+          "rolloutStrategy": "*",
+          "deploymentStrategyName": "*",
+          "description": "*"
+        },
+        "Environment": {
+          "application": {
+            "description": "*",
+            "name": "*",
+            "applicationId": "*",
+            "applicationArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "environmentName": "*",
+          "description": "*",
+          "monitors": "*",
+          "deletionProtectionCheck": "DeletionProtectionCheck"
+        },
+        "Extension": {
+          "actions": "*",
+          "extensionName": "*",
+          "description": "*",
+          "latestVersionNumber": "*",
+          "parameters": "*"
+        }
+      },
+      "aws-cdk-lib.aws-applicationautoscaling": {
+        "ScalableTarget": {
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "resourceId": "*",
+          "scalableDimension": "*",
+          "serviceNamespace": "ServiceNamespace",
+          "addToRolePolicy": [
+            "*"
+          ],
+          "scaleOnSchedule": [
+            "*",
+            {
+              "schedule": "*",
+              "startTime": "*",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "timeZone": "*"
+            }
+          ],
+          "scaleOnMetric": [
+            "*",
+            {
+              "metric": {
+                "warnings": "*",
+                "warningsV2": "*"
+              },
+              "scalingSteps": {
+                "lower": "*",
+                "upper": "*",
+                "change": "*"
+              },
+              "adjustmentType": "AdjustmentType",
+              "cooldown": "*",
+              "minAdjustmentMagnitude": "*",
+              "evaluationPeriods": "*",
+              "datapointsToAlarm": "*",
+              "metricAggregationType": "MetricAggregationType"
+            }
+          ],
+          "scaleToTrackMetric": [
+            "*",
+            {
+              "targetValue": "*",
+              "predefinedMetric": "PredefinedMetric",
+              "resourceLabel": "*",
+              "customMetric": {
+                "warnings": "*",
+                "warningsV2": "*"
+              },
+              "policyName": "*",
+              "disableScaleIn": "boolean",
+              "scaleInCooldown": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-appmesh": {
+        "GatewayRoute": {
+          "virtualGateway": {
+            "virtualGatewayName": "*",
+            "virtualGatewayArn": "*",
+            "mesh": {
+              "meshName": "*",
+              "meshArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "gatewayRouteName": "*",
+          "routeSpec": "*"
+        },
+        "Mesh": {
+          "meshName": "*",
+          "egressFilter": "MeshFilterType",
+          "serviceDiscovery": {
+            "ipPreference": "IpPreference"
+          }
+        },
+        "Route": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualRouter": {
+            "virtualRouterName": "*",
+            "virtualRouterArn": "*",
+            "mesh": {
+              "meshName": "*",
+              "meshArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "routeName": "*",
+          "routeSpec": "*"
+        },
+        "VirtualGateway": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualGatewayName": "*",
+          "listeners": "*",
+          "accessLog": "*",
+          "backendDefaults": {
+            "tlsClientPolicy": {
+              "enforce": "boolean",
+              "ports": "*",
+              "validation": {
+                "trust": "*",
+                "subjectAlternativeNames": "*"
+              },
+              "mutualTlsCertificate": "*"
+            }
+          }
+        },
+        "VirtualNode": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualNodeName": "*",
+          "serviceDiscovery": "*",
+          "backends": "*",
+          "listeners": "*",
+          "accessLog": "*",
+          "backendDefaults": {
+            "tlsClientPolicy": {
+              "enforce": "boolean",
+              "ports": "*",
+              "validation": {
+                "trust": "*",
+                "subjectAlternativeNames": "*"
+              },
+              "mutualTlsCertificate": "*"
+            }
+          },
+          "addListener": [
+            "*"
+          ],
+          "addBackend": [
+            "*"
+          ]
+        },
+        "VirtualRouter": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "listeners": "*",
+          "virtualRouterName": "*"
+        },
+        "VirtualService": {
+          "virtualServiceName": "*",
+          "virtualServiceProvider": "*"
+        }
+      },
+      "aws-cdk-lib.aws-appsync": {
+        "AppsyncFunction": {
+          "api": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dataSource": "*",
+          "name": "*",
+          "description": "*",
+          "requestMappingTemplate": "*",
+          "responseMappingTemplate": "*",
+          "runtime": "*",
+          "code": "*",
+          "maxBatchSize": "*"
+        },
+        "ChannelNamespace": {
+          "api": {
+            "authProviderTypes": "AppSyncAuthorizationType",
+            "httpDns": "*",
+            "realtimeDns": "*",
+            "apiId": "*",
+            "apiArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "channelNamespaceName": "*",
+          "code": "*",
+          "publishHandlerConfig": {
+            "direct": "boolean",
+            "dataSource": "*",
+            "lambdaInvokeType": "LambdaInvokeType"
+          },
+          "subscribeHandlerConfig": {
+            "direct": "boolean",
+            "dataSource": "*",
+            "lambdaInvokeType": "LambdaInvokeType"
+          },
+          "authorizationConfig": {
+            "publishAuthModeTypes": "AppSyncAuthorizationType",
+            "subscribeAuthModeTypes": "AppSyncAuthorizationType"
+          },
+          "grantSubscribe": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantPublish": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantPublishAndSubscribe": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "EventApi": {
+          "apiName": "*",
+          "authorizationConfig": {
+            "authProviders": {
+              "authorizationType": "AppSyncAuthorizationType",
+              "cognitoConfig": {
+                "userPool": {
+                  "userPoolId": "*",
+                  "userPoolArn": "*",
+                  "userPoolProviderName": "*",
+                  "identityProviders": {
+                    "providerName": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  }
+                },
+                "appIdClientRegex": "*"
+              },
+              "apiKeyConfig": {
+                "name": "*",
+                "description": "*",
+                "expires": "*"
+              },
+              "openIdConnectConfig": {
+                "tokenExpiryFromAuth": "*",
+                "tokenExpiryFromIssue": "*",
+                "clientId": "*",
+                "oidcProvider": "*"
+              },
+              "lambdaAuthorizerConfig": {
+                "handler": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "latestVersion": {
+                    "version": "*",
+                    "edgeArn": "*",
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "resultsCacheTtl": "*",
+                "validationRegex": "*"
+              }
+            },
+            "connectionAuthModeTypes": "AppSyncAuthorizationType",
+            "defaultPublishAuthModeTypes": "AppSyncAuthorizationType",
+            "defaultSubscribeAuthModeTypes": "AppSyncAuthorizationType"
+          },
+          "logConfig": {
+            "excludeVerboseContent": "boolean",
+            "fieldLogLevel": "AppSyncFieldLogLevel",
+            "role": "*",
+            "retention": "RetentionDays"
+          },
+          "ownerContact": "*",
+          "domainName": {
+            "certificate": "*",
+            "domainName": "*"
+          }
+        },
+        "GraphqlApi": {
+          "name": "*",
+          "authorizationConfig": {
+            "defaultAuthorization": {
+              "authorizationType": "AuthorizationType",
+              "userPoolConfig": {
+                "userPool": {
+                  "userPoolId": "*",
+                  "userPoolArn": "*",
+                  "userPoolProviderName": "*",
+                  "identityProviders": {
+                    "providerName": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  }
+                },
+                "appIdClientRegex": "*",
+                "defaultAction": "UserPoolDefaultAction"
+              },
+              "apiKeyConfig": {
+                "name": "*",
+                "description": "*",
+                "expires": "*"
+              },
+              "openIdConnectConfig": {
+                "tokenExpiryFromAuth": "*",
+                "tokenExpiryFromIssue": "*",
+                "clientId": "*",
+                "oidcProvider": "*"
+              },
+              "lambdaAuthorizerConfig": {
+                "handler": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "latestVersion": {
+                    "version": "*",
+                    "edgeArn": "*",
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "resultsCacheTtl": "*",
+                "validationRegex": "*"
+              }
+            }
+          },
+          "logConfig": {
+            "excludeVerboseContent": "boolean",
+            "fieldLogLevel": "FieldLogLevel",
+            "role": "*",
+            "retention": "RetentionDays"
+          },
+          "definition": "*",
+          "schema": "*",
+          "xrayEnabled": "boolean",
+          "visibility": "Visibility",
+          "domainName": {
+            "certificate": "*",
+            "domainName": "*"
+          },
+          "introspectionConfig": "IntrospectionConfig",
+          "queryDepthLimit": "*",
+          "resolverCountLimit": "*",
+          "environmentVariables": "*",
+          "ownerContact": "*",
+          "enhancedMetricsConfig": {
+            "dataSourceLevelMetricsBehavior": "DataSourceLevelMetricsBehavior",
+            "operationLevelMetricsConfig": "OperationLevelMetricsConfig",
+            "resolverLevelMetricsBehavior": "ResolverLevelMetricsBehavior"
+          },
+          "addSchemaDependency": [
+            "*"
+          ],
+          "addEnvironmentVariable": [
+            "*",
+            "*"
+          ]
+        },
+        "SourceApiAssociation": {
+          "sourceApi": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergedApi": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergedApiExecutionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergeType": "MergeType",
+          "description": "*"
+        }
+      },
+      "aws-cdk-lib.aws-autoscaling": {
+        "AutoScalingGroup": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "migrateToLaunchTemplate": "boolean",
+          "mixedInstancesPolicy": {
+            "instancesDistribution": {
+              "onDemandAllocationStrategy": "OnDemandAllocationStrategy",
+              "onDemandBaseCapacity": "*",
+              "onDemandPercentageAboveBaseCapacity": "*",
+              "spotAllocationStrategy": "SpotAllocationStrategy",
+              "spotInstancePools": "*",
+              "spotMaxPrice": "*"
+            },
+            "launchTemplate": {
+              "versionNumber": "*",
+              "launchTemplateId": "*",
+              "launchTemplateName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "launchTemplateOverrides": {
+              "instanceRequirements": "*",
+              "instanceType": "*",
+              "weightedCapacity": "*"
+            }
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "userData": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "maxHealthyPercentage": "*",
+          "minHealthyPercentage": "*",
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "desiredCapacity": "*",
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "notificationsTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "notifications": {
+            "topic": {
+              "topicArn": "*",
+              "topicName": "*",
+              "masterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            },
+            "scalingEvents": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "updateType": "UpdateType",
+          "rollingUpdateConfiguration": {
+            "maxBatchSize": "*",
+            "minInstancesInService": "*",
+            "minSuccessfulInstancesPercent": "*",
+            "pauseTime": "*",
+            "waitOnResourceSignals": "boolean",
+            "suspendProcesses": "ScalingProcess"
+          },
+          "replacingUpdateMinSuccessfulInstancesPercent": "*",
+          "ignoreUnmodifiedSizeProperties": "boolean",
+          "resourceSignalCount": "*",
+          "resourceSignalTimeout": "*",
+          "cooldown": "*",
+          "associatePublicIpAddress": "boolean",
+          "spotPrice": "*",
+          "healthCheck": "*",
+          "healthChecks": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "maxInstanceLifetime": "*",
+          "instanceMonitoring": "Monitoring",
+          "groupMetrics": "*",
+          "signals": "*",
+          "updatePolicy": "*",
+          "newInstancesProtectedFromScaleIn": "boolean",
+          "autoScalingGroupName": "*",
+          "terminationPolicies": "TerminationPolicy",
+          "terminationPolicyCustomLambdaFunctionArn": "*",
+          "defaultInstanceWarmup": "*",
+          "capacityRebalance": "boolean",
+          "ssmSessionPermissions": "boolean",
+          "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+          "deletionProtection": "DeletionProtection",
+          "instanceLifecyclePolicy": {
+            "retentionTriggers": {
+              "terminateHookAbandon": "TerminateHookAbandonAction"
+            }
+          },
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "attachToClassicLB": [
+            "*"
+          ],
+          "attachToApplicationTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            }
+          ],
+          "attachToNetworkTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*",
+              "isNetworkTargetGroup": "boolean"
+            }
+          ],
+          "addUserData": [
+            "*"
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "applyCloudFormationInit": [
+            "*",
+            {
+              "configSets": "*",
+              "embedFingerprint": "boolean",
+              "printLog": "boolean",
+              "ignoreFailures": "boolean",
+              "includeUrl": "boolean",
+              "includeRole": "boolean"
+            }
+          ],
+          "protectNewInstancesFromScaleIn": [],
+          "areNewInstancesProtectedFromScaleIn": []
+        },
+        "LifecycleHook": {
+          "autoScalingGroup": "*",
+          "lifecycleHookName": "*",
+          "defaultResult": "DefaultResult",
+          "heartbeatTimeout": "*",
+          "lifecycleTransition": "LifecycleTransition",
+          "notificationMetadata": "*",
+          "notificationTarget": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "ScheduledAction": {
+          "autoScalingGroup": "*",
+          "timeZone": "*",
+          "schedule": "*",
+          "startTime": "*",
+          "endTime": "*",
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "desiredCapacity": "*"
+        },
+        "WarmPool": {
+          "autoScalingGroup": "*",
+          "reuseOnScaleIn": "boolean",
+          "maxGroupPreparedCapacity": "*",
+          "minSize": "*",
+          "poolState": "PoolState"
+        }
+      },
+      "aws-cdk-lib.aws-backup": {
+        "BackupPlan": {
+          "backupPlanName": "*",
+          "backupVault": "*",
+          "backupPlanRules": "*",
+          "windowsVss": "boolean",
+          "addRule": [
+            "*"
+          ],
+          "addSelection": [
+            "*",
+            {
+              "resources": "*",
+              "backupSelectionName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "disableDefaultBackupPolicy": "boolean",
+              "allowRestores": "boolean"
+            }
+          ]
+        },
+        "BackupSelection": {
+          "backupPlan": "*",
+          "resources": "*",
+          "backupSelectionName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "disableDefaultBackupPolicy": "boolean",
+          "allowRestores": "boolean"
+        },
+        "BackupVault": {
+          "backupVaultName": "*",
+          "accessPolicy": "*",
+          "encryptionKey": "*",
+          "notificationTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "notificationEvents": "BackupVaultEvents",
+          "removalPolicy": "RemovalPolicy",
+          "blockRecoveryPointDeletion": [],
+          "lockConfiguration": {
+            "minRetention": "*"
+          },
+          "addToAccessPolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-batch": {
+        "ConsumableResource": {
+          "consumableResourceName": "*",
+          "resourceType": "ConsumableResourceType",
+          "totalQuantity": "*",
+          "tags": "*"
+        },
+        "EcsJobDefinition": {
+          "container": {
+            "image": "*",
+            "cpu": "*",
+            "memory": "*",
+            "command": "*",
+            "environment": "*",
+            "executionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "linuxParameters": "*",
+            "logDriverConfig": {
+              "logDriver": "*",
+              "options": "*",
+              "secretOptions": "*"
+            },
+            "readonlyRootFilesystem": "boolean",
+            "secrets": "*",
+            "user": "*",
+            "volumes": "*",
+            "enableExecuteCommand": "boolean"
+          },
+          "propagateTags": "boolean",
+          "jobDefinitionName": "*",
+          "parameters": "*",
+          "retryAttempts": "*",
+          "retryStrategies": "*",
+          "schedulingPriority": "*",
+          "timeout": "*",
+          "skipDeregisterOnUpdate": "boolean",
+          "grantSubmitJob": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "EksJobDefinition": {
+          "container": "*",
+          "dnsPolicy": "DnsPolicy",
+          "useHostNetwork": "boolean",
+          "serviceAccount": "*",
+          "jobDefinitionName": "*",
+          "parameters": "*",
+          "retryAttempts": "*",
+          "retryStrategies": "*",
+          "schedulingPriority": "*",
+          "timeout": "*",
+          "skipDeregisterOnUpdate": "boolean"
+        },
+        "JobQueue": {},
+        "ManagedEc2EcsComputeEnvironment": {
+          "defaultInstanceClasses": "DefaultInstanceClass",
+          "useOptimalInstanceClasses": "boolean",
+          "images": {
+            "imageType": "EcsMachineImageType",
+            "image": "*"
+          },
+          "allocationStrategy": "AllocationStrategy",
+          "spotBidPercentage": "*",
+          "spotFleetRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minvCpus": "*",
+          "placementGroup": "*",
+          "instanceTypes": "*",
+          "instanceClasses": "InstanceClass",
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "ManagedEc2EksComputeEnvironment": {
+          "kubernetesNamespace": "*",
+          "eksCluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "defaultInstanceClasses": "DefaultInstanceClass",
+          "useOptimalInstanceClasses": "boolean",
+          "images": {
+            "imageType": "EksMachineImageType",
+            "image": "*"
+          },
+          "allocationStrategy": "AllocationStrategy",
+          "spotBidPercentage": "*",
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minvCpus": "*",
+          "placementGroup": "*",
+          "instanceTypes": "*",
+          "instanceClasses": "InstanceClass",
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "FargateComputeEnvironment": {
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "MultiNodeJobDefinition": {
+          "addContainer": [
+            {
+              "startNode": "*",
+              "endNode": "*",
+              "container": {
+                "image": "*",
+                "cpu": "*",
+                "memory": "*",
+                "command": "*",
+                "environment": "*",
+                "executionRole": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "linuxParameters": "*",
+                "logDriverConfig": {
+                  "logDriver": "*",
+                  "options": "*",
+                  "secretOptions": "*"
+                },
+                "readonlyRootFilesystem": "boolean",
+                "secrets": "*",
+                "user": "*",
+                "volumes": "*",
+                "enableExecuteCommand": "boolean"
+              }
+            }
+          ]
+        },
+        "FairshareSchedulingPolicy": {
+          "addShare": [
+            {
+              "shareIdentifier": "*",
+              "weightFactor": "*"
+            }
+          ]
+        },
+        "UnmanagedComputeEnvironment": {}
+      },
+      "aws-cdk-lib.aws-certificatemanager": {
+        "Certificate": {
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "validationDomains": "*",
+          "validationMethod": "ValidationMethod",
+          "validation": "*",
+          "allowExport": "boolean",
+          "transparencyLoggingEnabled": "boolean",
+          "certificateName": "*",
+          "keyAlgorithm": "*"
+        },
+        "DnsValidatedCertificate": {
+          "hostedZone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "region": "*",
+          "route53Endpoint": "*",
+          "customResourceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cleanupRoute53Records": "boolean",
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "validationDomains": "*",
+          "validationMethod": "ValidationMethod",
+          "validation": "*",
+          "allowExport": "boolean",
+          "transparencyLoggingEnabled": "boolean",
+          "certificateName": "*",
+          "keyAlgorithm": "*",
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "PrivateCertificate": {
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "certificateAuthority": "*",
+          "keyAlgorithm": "*",
+          "allowExport": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-chatbot": {
+        "SlackChannelConfiguration": {
+          "slackChannelConfigurationName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "slackWorkspaceId": "*",
+          "slackChannelId": "*",
+          "notificationTopics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "loggingLevel": "LoggingLevel",
+          "logRetention": "RetentionDays",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "guardrailPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "userRoleRequired": "boolean",
+          "addNotificationTopic": [
+            {
+              "topicArn": "*",
+              "topicName": "*",
+              "masterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudformation": {
+        "CustomResource": {
+          "provider": "*",
+          "properties": "*",
+          "resourceType": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-cloudfront": {
+        "CachePolicy": {
+          "cachePolicyName": "*",
+          "comment": "*",
+          "defaultTtl": "*",
+          "minTtl": "*",
+          "maxTtl": "*",
+          "cookieBehavior": "*",
+          "headerBehavior": "*",
+          "queryStringBehavior": "*",
+          "enableAcceptEncodingGzip": "boolean",
+          "enableAcceptEncodingBrotli": "boolean"
+        },
+        "Distribution": {
+          "defaultBehavior": {
+            "origin": "*",
+            "allowedMethods": "*",
+            "cachedMethods": "*",
+            "cachePolicy": "*",
+            "compress": "boolean",
+            "originRequestPolicy": "*",
+            "realtimeLogConfig": "*",
+            "responseHeadersPolicy": "*",
+            "smoothStreaming": "boolean",
+            "viewerProtocolPolicy": "ViewerProtocolPolicy",
+            "functionAssociations": {
+              "function": "*",
+              "eventType": "FunctionEventType"
+            },
+            "edgeLambdas": {
+              "functionVersion": {
+                "version": "*",
+                "lambda": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    },
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "eventType": "LambdaEdgeEventType",
+              "includeBody": "boolean"
+            },
+            "trustedKeyGroups": "*",
+            "enableGrpc": "boolean"
+          },
+          "additionalBehaviors": "*",
+          "certificate": "*",
+          "comment": "*",
+          "defaultRootObject": "*",
+          "domainNames": "*",
+          "enabled": "boolean",
+          "enableIpv6": "boolean",
+          "enableLogging": "boolean",
+          "geoRestriction": "*",
+          "httpVersion": "HttpVersion",
+          "logBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "logIncludesCookies": "boolean",
+          "logFilePrefix": "*",
+          "priceClass": "PriceClass",
+          "webAclId": "*",
+          "errorResponses": {
+            "ttl": "*",
+            "httpStatus": "*",
+            "responseHttpStatus": "*",
+            "responsePagePath": "*"
+          },
+          "minimumProtocolVersion": "SecurityPolicyProtocol",
+          "sslSupportMethod": "SSLMethod",
+          "publishAdditionalMetrics": "boolean",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRequests": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricBytesUploaded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricBytesDownloaded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTotalErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric4xxErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric5xxErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricOriginLatency": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheHitRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric401ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric403ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric404ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric502ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric503ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric504ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addBehavior": [
+            "*",
+            "*",
+            {
+              "allowedMethods": "*",
+              "cachedMethods": "*",
+              "cachePolicy": "*",
+              "compress": "boolean",
+              "originRequestPolicy": "*",
+              "realtimeLogConfig": "*",
+              "responseHeadersPolicy": "*",
+              "smoothStreaming": "boolean",
+              "viewerProtocolPolicy": "ViewerProtocolPolicy",
+              "functionAssociations": {
+                "function": "*",
+                "eventType": "FunctionEventType"
+              },
+              "edgeLambdas": {
+                "functionVersion": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "eventType": "LambdaEdgeEventType",
+                "includeBody": "boolean"
+              },
+              "trustedKeyGroups": "*",
+              "enableGrpc": "boolean"
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantCreateInvalidation": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "attachWebAclId": [
+            "*"
+          ]
+        },
+        "Function": {
+          "functionName": "*",
+          "comment": "*",
+          "code": "*",
+          "runtime": "*",
+          "keyValueStore": "*",
+          "autoPublish": "boolean"
+        },
+        "KeyGroup": {
+          "keyGroupName": "*",
+          "comment": "*",
+          "items": "*"
+        },
+        "KeyValueStore": {},
+        "S3OriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "FunctionUrlOriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "MediaPackageV2OriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "OriginAccessIdentity": {},
+        "OriginRequestPolicy": {
+          "originRequestPolicyName": "*",
+          "comment": "*",
+          "cookieBehavior": "*",
+          "headerBehavior": "*",
+          "queryStringBehavior": "*"
+        },
+        "PublicKey": {
+          "publicKeyName": "*",
+          "comment": "*",
+          "encodedKey": "*"
+        },
+        "RealtimeLogConfig": {
+          "realtimeLogConfigName": "*",
+          "fields": "*",
+          "samplingRate": "*",
+          "endPoints": "*"
+        },
+        "ResponseHeadersPolicy": {
+          "responseHeadersPolicyName": "*",
+          "comment": "*",
+          "corsBehavior": {
+            "accessControlAllowCredentials": "boolean",
+            "accessControlAllowHeaders": "*",
+            "accessControlAllowMethods": "*",
+            "accessControlAllowOrigins": "*",
+            "accessControlExposeHeaders": "*",
+            "accessControlMaxAge": "*",
+            "originOverride": "boolean"
+          },
+          "customHeadersBehavior": {
+            "customHeaders": {
+              "header": "*",
+              "override": "boolean",
+              "value": "*"
+            }
+          },
+          "securityHeadersBehavior": {
+            "contentSecurityPolicy": {
+              "contentSecurityPolicy": "*",
+              "override": "boolean"
+            },
+            "contentTypeOptions": {
+              "override": "boolean"
+            },
+            "frameOptions": {
+              "frameOption": "HeadersFrameOption",
+              "override": "boolean"
+            },
+            "referrerPolicy": {
+              "referrerPolicy": "HeadersReferrerPolicy",
+              "override": "boolean"
+            },
+            "strictTransportSecurity": {
+              "accessControlMaxAge": "*",
+              "includeSubdomains": "boolean",
+              "override": "boolean",
+              "preload": "boolean"
+            },
+            "xssProtection": {
+              "modeBlock": "boolean",
+              "override": "boolean",
+              "protection": "boolean",
+              "reportUri": "*"
+            }
+          },
+          "removeHeaders": "*",
+          "serverTimingSamplingRate": "*"
+        },
+        "VpcOrigin": {
+          "endpoint": "*",
+          "httpPort": "*",
+          "httpsPort": "*",
+          "vpcOriginName": "*",
+          "protocolPolicy": "OriginProtocolPolicy",
+          "originSslProtocols": "OriginSslPolicy"
+        },
+        "CloudFrontWebDistribution": {
+          "aliasConfiguration": {
+            "acmCertRef": "*",
+            "names": "*",
+            "sslMethod": "SSLMethod",
+            "securityPolicy": "SecurityPolicyProtocol"
+          },
+          "comment": "*",
+          "enabled": "boolean",
+          "defaultRootObject": "*",
+          "enableIpV6": "boolean",
+          "httpVersion": "HttpVersion",
+          "priceClass": "PriceClass",
+          "viewerProtocolPolicy": "ViewerProtocolPolicy",
+          "originConfigs": {
+            "connectionAttempts": "*",
+            "connectionTimeout": "*",
+            "s3OriginSource": {
+              "s3BucketSource": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "originAccessIdentity": "*",
+              "originPath": "*",
+              "originHeaders": "*",
+              "originShieldRegion": "*"
+            },
+            "customOriginSource": {
+              "domainName": "*",
+              "httpPort": "*",
+              "httpsPort": "*",
+              "originProtocolPolicy": "OriginProtocolPolicy",
+              "allowedOriginSSLVersions": "OriginSslPolicy",
+              "originPath": "*",
+              "originHeaders": "*",
+              "originShieldRegion": "*"
+            },
+            "failoverCriteriaStatusCodes": "FailoverStatusCode",
+            "behaviors": {
+              "compress": "boolean",
+              "isDefaultBehavior": "boolean",
+              "trustedSigners": "*",
+              "trustedKeyGroups": "*",
+              "allowedMethods": "CloudFrontAllowedMethods",
+              "pathPattern": "*",
+              "cachedMethods": "CloudFrontAllowedCachedMethods",
+              "forwardedValues": "*",
+              "lambdaFunctionAssociations": {
+                "eventType": "LambdaEdgeEventType",
+                "lambdaFunction": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "includeBody": "boolean"
+              },
+              "functionAssociations": {
+                "function": "*",
+                "eventType": "FunctionEventType"
+              },
+              "viewerProtocolPolicy": "ViewerProtocolPolicy"
+            },
+            "originPath": "*",
+            "originHeaders": "*",
+            "originShieldRegion": "*"
+          },
+          "loggingConfig": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "includeCookies": "boolean",
+            "prefix": "*"
+          },
+          "errorConfigurations": "*",
+          "webACLId": "*",
+          "viewerCertificate": "*",
+          "geoRestriction": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudtrail": {
+        "Trail": {
+          "includeGlobalServiceEvents": "boolean",
+          "isMultiRegionTrail": "boolean",
+          "managementEvents": "ReadWriteType",
+          "enableFileValidation": "boolean",
+          "sendToCloudWatchLogs": "boolean",
+          "cloudWatchLogsRetention": "RetentionDays",
+          "cloudWatchLogGroup": "*",
+          "kmsKey": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "snsTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "trailName": "*",
+          "s3KeyPrefix": "*",
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "isOrganizationTrail": "boolean",
+          "orgId": "*",
+          "insightTypes": "*",
+          "addEventSelector": [
+            "DataResourceType",
+            "*",
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "addLambdaEventSelector": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "logAllLambdaDataEvents": [
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "addS3EventSelector": [
+            {
+              "bucket": "*",
+              "objectPrefix": "*"
+            },
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "logAllS3DataEvents": [
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "onCloudTrailEvent": [
+            "*",
+            {
+              "target": "*",
+              "description": "*",
+              "ruleName": "*",
+              "eventPattern": {
+                "version": "*",
+                "id": "*",
+                "detailType": "*",
+                "source": "*",
+                "account": "*",
+                "time": "*",
+                "region": "*",
+                "resources": "*",
+                "detail": "*"
+              },
+              "crossStackScope": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudwatch": {
+        "AlarmMuteRule": {
+          "alarms": "*",
+          "alarmMuteRuleName": "*",
+          "description": "*",
+          "schedule": "*",
+          "duration": "*",
+          "start": {
+            "year": "*",
+            "month": "*",
+            "day": "*",
+            "hour": "*",
+            "minute": "*"
+          },
+          "expire": {
+            "year": "*",
+            "month": "*",
+            "day": "*",
+            "hour": "*",
+            "minute": "*"
+          },
+          "tags": "*",
+          "addAlarm": [
+            "*"
+          ]
+        },
+        "Alarm": {
+          "metric": {
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "comparisonOperator": "ComparisonOperator",
+          "threshold": "*",
+          "period": "*",
+          "statistic": "*",
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "evaluationPeriods": "*",
+          "evaluateLowSampleCountPercentile": "*",
+          "treatMissingData": "TreatMissingData",
+          "actionsEnabled": "boolean",
+          "datapointsToAlarm": "*",
+          "toAnnotation": [],
+          "addAlarmAction": [
+            "*"
+          ]
+        },
+        "AnomalyDetectionAlarm": {
+          "metric": {
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "stdDevs": "*",
+          "comparisonOperator": "ComparisonOperator",
+          "period": "*",
+          "statistic": "*",
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "evaluationPeriods": "*",
+          "evaluateLowSampleCountPercentile": "*",
+          "treatMissingData": "TreatMissingData",
+          "actionsEnabled": "boolean",
+          "datapointsToAlarm": "*"
+        },
+        "CompositeAlarm": {
+          "actionsEnabled": "boolean",
+          "alarmDescription": "*",
+          "compositeAlarmName": "*",
+          "alarmRule": "*",
+          "actionsSuppressor": "*",
+          "actionsSuppressorExtensionPeriod": "*",
+          "actionsSuppressorWaitPeriod": "*"
+        },
+        "Dashboard": {
+          "dashboardName": "*",
+          "defaultInterval": "*",
+          "start": "*",
+          "end": "*",
+          "periodOverride": "PeriodOverride",
+          "widgets": {
+            "width": "*",
+            "height": "*",
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "variables": "*",
+          "addWidgets": [
+            {
+              "width": "*",
+              "height": "*",
+              "warnings": "*",
+              "warningsV2": "*"
+            }
+          ],
+          "addVariable": [
+            "*"
+          ]
+        },
+        "PromQLAlarm": {
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "pendingPeriod": "*",
+          "recoveryPeriod": "*",
+          "query": "*",
+          "evaluationInterval": "*",
+          "actionsEnabled": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-codebuild": {
+        "Fleet": {
+          "fleetName": "*",
+          "baseCapacity": "*",
+          "computeType": "FleetComputeType",
+          "environmentType": "EnvironmentType",
+          "computeConfiguration": {
+            "disk": "*",
+            "machineType": "MachineType",
+            "vCpu": "*",
+            "instanceType": "*"
+          },
+          "overflowBehavior": "FleetOverflowBehavior",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        },
+        "PipelineProject": {},
+        "Project": {
+          "source": {
+            "identifier": "*",
+            "type": "*",
+            "badgeSupported": "boolean"
+          },
+          "artifacts": {
+            "identifier": "*",
+            "type": "*"
+          },
+          "secondarySources": {
+            "identifier": "*",
+            "type": "*",
+            "badgeSupported": "boolean"
+          },
+          "secondaryArtifacts": {
+            "identifier": "*",
+            "type": "*"
+          },
+          "description": "*",
+          "buildSpec": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cache": "*",
+          "environment": {
+            "buildImage": {
+              "type": "*",
+              "imageId": "*",
+              "defaultComputeType": "ComputeType",
+              "imagePullPrincipalType": "ImagePullPrincipalType",
+              "secretsManagerCredentials": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "repository": {
+                "repositoryName": "*",
+                "repositoryArn": "*",
+                "repositoryUri": "*",
+                "registryUri": "*"
+              }
+            },
+            "computeType": "ComputeType",
+            "dockerServer": {
+              "computeType": "DockerServerComputeType",
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              }
+            },
+            "fleet": {
+              "fleetArn": "*",
+              "fleetName": "*",
+              "computeType": "FleetComputeType",
+              "environmentType": "EnvironmentType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "hostKernel": "HostKernel",
+            "privileged": "boolean",
+            "certificate": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "objectKey": "*"
+            },
+            "environmentVariables": "*"
+          },
+          "badge": "boolean",
+          "timeout": "*",
+          "environmentVariables": "*",
+          "checkSecretsInPlainTextEnvVariables": "boolean",
+          "projectName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "fileSystemLocations": "*",
+          "grantReportGroupPermissions": "boolean",
+          "logging": {
+            "s3": {
+              "encrypted": "boolean",
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*",
+              "enabled": "boolean"
+            },
+            "cloudWatch": {
+              "logGroup": {
+                "logGroupArn": "*",
+                "logGroupName": "*"
+              },
+              "prefix": "*",
+              "enabled": "boolean"
+            }
+          },
+          "queuedTimeout": "*",
+          "concurrentBuildLimit": "*",
+          "ssmSessionPermissions": "boolean",
+          "visibility": "ProjectVisibility",
+          "autoRetryLimit": "*",
+          "enableBatchBuilds": [],
+          "addSecondarySource": [
+            {
+              "identifier": "*",
+              "type": "*",
+              "badgeSupported": "boolean"
+            }
+          ],
+          "addFileSystemLocation": [
+            "*"
+          ],
+          "addSecondaryArtifact": [
+            {
+              "identifier": "*",
+              "type": "*"
+            }
+          ],
+          "bindToCodePipeline": [
+            "*",
+            {
+              "artifactBucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              }
+            }
+          ]
+        },
+        "ReportGroup": {
+          "reportGroupName": "*",
+          "exportBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "zipExport": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "type": "ReportGroupType",
+          "deleteReports": "boolean"
+        },
+        "GitHubSourceCredentials": {
+          "accessToken": "*"
+        },
+        "GitHubEnterpriseSourceCredentials": {
+          "accessToken": "*"
+        },
+        "BitBucketSourceCredentials": {
+          "username": "*",
+          "password": "*"
+        },
+        "UntrustedCodeBoundaryPolicy": {
+          "managedPolicyName": "*",
+          "additionalStatements": "*"
+        }
+      },
+      "aws-cdk-lib.aws-codecommit": {
+        "Repository": {
+          "repositoryName": "*",
+          "description": "*",
+          "code": "*",
+          "kmsKey": "*",
+          "notify": [
+            "*",
+            {
+              "name": "*",
+              "events": "RepositoryEventTrigger",
+              "branches": "*",
+              "customData": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-codeguruprofiler": {
+        "ProfilingGroup": {
+          "profilingGroupName": "*",
+          "computePlatform": "ComputePlatform"
+        }
+      },
+      "aws-cdk-lib.aws-codepipeline": {
+        "Pipeline": {
+          "artifactBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "restartExecutionOnUpdate": "boolean",
+          "pipelineName": "*",
+          "crossRegionReplicationBuckets": "*",
+          "stages": {
+            "stageName": "*",
+            "actions": {
+              "actionProperties": {
+                "actionName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "region": "*",
+                "account": "*",
+                "resource": "*",
+                "category": "ActionCategory",
+                "provider": "*",
+                "owner": "*",
+                "version": "*",
+                "runOrder": "*",
+                "artifactBounds": {
+                  "minInputs": "*",
+                  "maxInputs": "*",
+                  "minOutputs": "*",
+                  "maxOutputs": "*"
+                },
+                "inputs": "*",
+                "variablesNamespace": "*",
+                "commands": "*",
+                "outputVariables": "*",
+                "timeout": "*"
+              }
+            },
+            "transitionToEnabled": "boolean",
+            "transitionDisabledReason": "*",
+            "beforeEntry": {
+              "conditions": {
+                "rules": "*",
+                "result": "Result"
+              }
+            },
+            "onFailure": {
+              "result": "Result",
+              "retryMode": "RetryMode"
+            }
+          },
+          "crossAccountKeys": "boolean",
+          "enableKeyRotation": "boolean",
+          "reuseCrossRegionSupportStacks": "boolean",
+          "pipelineType": "PipelineType",
+          "variables": "*",
+          "triggers": {
+            "providerType": "ProviderType",
+            "gitConfiguration": {
+              "sourceAction": {
+                "actionProperties": {
+                  "actionName": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    },
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "region": "*",
+                  "account": "*",
+                  "resource": "*",
+                  "category": "ActionCategory",
+                  "provider": "*",
+                  "owner": "*",
+                  "version": "*",
+                  "runOrder": "*",
+                  "artifactBounds": {
+                    "minInputs": "*",
+                    "maxInputs": "*",
+                    "minOutputs": "*",
+                    "maxOutputs": "*"
+                  },
+                  "inputs": "*",
+                  "variablesNamespace": "*",
+                  "commands": "*",
+                  "outputVariables": "*",
+                  "timeout": "*"
+                }
+              },
+              "pushFilter": {
+                "tagsExcludes": "*",
+                "tagsIncludes": "*",
+                "branchesExcludes": "*",
+                "branchesIncludes": "*",
+                "filePathsExcludes": "*",
+                "filePathsIncludes": "*"
+              },
+              "pullRequestFilter": {
+                "events": "GitPullRequestEvent",
+                "branchesExcludes": "*",
+                "branchesIncludes": "*",
+                "filePathsExcludes": "*",
+                "filePathsIncludes": "*"
+              }
+            }
+          },
+          "executionMode": "ExecutionMode",
+          "usePipelineRoleForActions": "boolean",
+          "addStage": [
+            {
+              "placement": {
+                "rightBefore": {
+                  "stageName": "*",
+                  "pipeline": {
+                    "pipelineName": "*",
+                    "pipelineArn": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "actions": {
+                    "actionProperties": {
+                      "actionName": "*",
+                      "role": {
+                        "roleArn": "*",
+                        "roleName": "*",
+                        "assumeRoleAction": "*",
+                        "policyFragment": "*",
+                        "principalAccount": "*",
+                        "grantPrincipal": {
+                          "assumeRoleAction": "*",
+                          "principalAccount": "*"
+                        }
+                      },
+                      "region": "*",
+                      "account": "*",
+                      "resource": "*",
+                      "category": "ActionCategory",
+                      "provider": "*",
+                      "owner": "*",
+                      "version": "*",
+                      "runOrder": "*",
+                      "artifactBounds": {
+                        "minInputs": "*",
+                        "maxInputs": "*",
+                        "minOutputs": "*",
+                        "maxOutputs": "*"
+                      },
+                      "inputs": "*",
+                      "variablesNamespace": "*",
+                      "commands": "*",
+                      "outputVariables": "*",
+                      "timeout": "*"
+                    }
+                  }
+                }
+              },
+              "stageName": "*",
+              "transitionToEnabled": "boolean",
+              "transitionDisabledReason": "*",
+              "beforeEntry": {
+                "conditions": {
+                  "rules": "*",
+                  "result": "Result"
+                }
+              },
+              "onFailure": {
+                "result": "Result",
+                "retryMode": "RetryMode"
+              }
+            }
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "addVariable": [
+            "*"
+          ],
+          "addTrigger": [
+            {
+              "providerType": "ProviderType",
+              "gitConfiguration": {
+                "sourceAction": {
+                  "actionProperties": {
+                    "actionName": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "region": "*",
+                    "account": "*",
+                    "resource": "*",
+                    "category": "ActionCategory",
+                    "provider": "*",
+                    "owner": "*",
+                    "version": "*",
+                    "runOrder": "*",
+                    "artifactBounds": {
+                      "minInputs": "*",
+                      "maxInputs": "*",
+                      "minOutputs": "*",
+                      "maxOutputs": "*"
+                    },
+                    "inputs": "*",
+                    "variablesNamespace": "*",
+                    "commands": "*",
+                    "outputVariables": "*",
+                    "timeout": "*"
+                  }
+                },
+                "pushFilter": {
+                  "tagsExcludes": "*",
+                  "tagsIncludes": "*",
+                  "branchesExcludes": "*",
+                  "branchesIncludes": "*",
+                  "filePathsExcludes": "*",
+                  "filePathsIncludes": "*"
+                },
+                "pullRequestFilter": {
+                  "events": "GitPullRequestEvent",
+                  "branchesExcludes": "*",
+                  "branchesIncludes": "*",
+                  "filePathsExcludes": "*",
+                  "filePathsIncludes": "*"
+                }
+              }
+            }
+          ],
+          "stage": [
+            "*"
+          ],
+          "_attachActionToPipeline": [
+            "*",
+            {
+              "actionProperties": {
+                "actionName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "region": "*",
+                "account": "*",
+                "resource": "*",
+                "category": "ActionCategory",
+                "provider": "*",
+                "owner": "*",
+                "version": "*",
+                "runOrder": "*",
+                "artifactBounds": {
+                  "minInputs": "*",
+                  "maxInputs": "*",
+                  "minOutputs": "*",
+                  "maxOutputs": "*"
+                },
+                "inputs": "*",
+                "variablesNamespace": "*",
+                "commands": "*",
+                "outputVariables": "*",
+                "timeout": "*"
+              }
+            },
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-codestarnotifications": {
+        "NotificationRule": {
+          "events": "*",
+          "source": "*",
+          "targets": "*",
+          "notificationRuleName": "*",
+          "enabled": "boolean",
+          "detailType": "DetailType",
+          "createdBy": "*",
+          "addTarget": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cognito": {
+        "UserPoolClient": {
+          "userPool": "*",
+          "userPoolClientName": "*",
+          "generateSecret": "boolean",
+          "authFlows": {
+            "adminUserPassword": "boolean",
+            "custom": "boolean",
+            "userPassword": "boolean",
+            "userSrp": "boolean",
+            "user": "boolean"
+          },
+          "disableOAuth": "boolean",
+          "oAuth": {
+            "flows": {
+              "authorizationCodeGrant": "boolean",
+              "implicitCodeGrant": "boolean",
+              "clientCredentials": "boolean"
+            },
+            "callbackUrls": "*",
+            "logoutUrls": "*",
+            "scopes": "*",
+            "defaultRedirectUri": "*"
+          },
+          "authSessionValidity": "*",
+          "preventUserExistenceErrors": "boolean",
+          "supportedIdentityProviders": "*",
+          "idTokenValidity": "*",
+          "refreshTokenValidity": "*",
+          "accessTokenValidity": "*",
+          "refreshTokenRotationGracePeriod": "*",
+          "readAttributes": "*",
+          "writeAttributes": "*",
+          "enableTokenRevocation": "boolean",
+          "enablePropagateAdditionalUserContextData": "boolean",
+          "analytics": {
+            "application": "*",
+            "applicationId": "*",
+            "externalId": "*",
+            "role": "*",
+            "shareUserData": "boolean"
+          }
+        },
+        "UserPoolDomain": {
+          "userPool": "*",
+          "customDomain": {
+            "domainName": "*",
+            "certificate": "*"
+          },
+          "cognitoDomain": {
+            "domainPrefix": "*"
+          },
+          "managedLoginVersion": "ManagedLoginVersion",
+          "baseUrl": [
+            {
+              "fips": "boolean"
+            }
+          ],
+          "signInUrl": [
+            "*",
+            {
+              "redirectUri": "*",
+              "signInPath": "*",
+              "fips": "boolean"
+            }
+          ]
+        },
+        "UserPoolGroup": {
+          "userPool": "*",
+          "description": "*",
+          "groupName": "*",
+          "precedence": "*",
+          "role": "*"
+        },
+        "UserPoolResourceServer": {
+          "userPool": "*",
+          "identifier": "*",
+          "userPoolResourceServerName": "*",
+          "scopes": "*"
+        },
+        "UserPool": {
+          "userPoolName": "*",
+          "selfSignUpEnabled": "boolean",
+          "userVerification": {
+            "emailSubject": "*",
+            "emailBody": "*",
+            "emailStyle": "VerificationEmailStyle",
+            "smsMessage": "*"
+          },
+          "userInvitation": {
+            "emailSubject": "*",
+            "emailBody": "*",
+            "smsMessage": "*"
+          },
+          "smsRole": "*",
+          "smsRoleExternalId": "*",
+          "snsRegion": "*",
+          "enableSmsRole": "boolean",
+          "signInAliases": {
+            "username": "boolean",
+            "email": "boolean",
+            "phone": "boolean",
+            "preferredUsername": "boolean"
+          },
+          "autoVerify": {
+            "email": "boolean",
+            "phone": "boolean"
+          },
+          "keepOriginal": {
+            "email": "boolean",
+            "phone": "boolean"
+          },
+          "standardAttributes": {
+            "address": {
+              "mutable": "boolean",
+              "required": "boolean"
+            }
+          },
+          "customAttributes": "*",
+          "mfa": "Mfa",
+          "mfaMessage": "*",
+          "mfaSecondFactor": {
+            "sms": "boolean",
+            "otp": "boolean",
+            "email": "boolean"
+          },
+          "passwordPolicy": {
+            "tempPasswordValidity": "*",
+            "minLength": "*",
+            "requireLowercase": "boolean",
+            "requireUppercase": "boolean",
+            "requireDigits": "boolean",
+            "requireSymbols": "boolean",
+            "passwordHistorySize": "*"
+          },
+          "signInPolicy": {
+            "allowedFirstAuthFactors": {
+              "password": "boolean",
+              "emailOtp": "boolean",
+              "smsOtp": "boolean",
+              "passkey": "boolean"
+            }
+          },
+          "passkeyRelyingPartyId": "*",
+          "passkeyUserVerification": "PasskeyUserVerification",
+          "emailSettings": {
+            "from": "*",
+            "replyTo": "*"
+          },
+          "email": "*",
+          "lambdaTriggers": {
+            "createAuthChallenge": {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          },
+          "signInCaseSensitive": "boolean",
+          "accountRecovery": "AccountRecovery",
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "deviceTracking": {
+            "challengeRequiredOnNewDevice": "boolean",
+            "deviceOnlyRememberedOnUserPrompt": "boolean"
+          },
+          "customSenderKmsKey": "*",
+          "advancedSecurityMode": "AdvancedSecurityMode",
+          "featurePlan": "FeaturePlan",
+          "standardThreatProtectionMode": "StandardThreatProtectionMode",
+          "customThreatProtectionMode": "CustomThreatProtectionMode",
+          "addTrigger": [
+            "*",
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            "LambdaVersion"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cognito-identitypool": {
+        "IdentityPool": {
+          "identityPoolName": "*",
+          "authenticatedRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "unauthenticatedRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "allowUnauthenticatedIdentities": "boolean",
+          "roleMappings": {
+            "providerUrl": "*",
+            "mappingKey": "*",
+            "useToken": "boolean",
+            "resolveAmbiguousRoles": "boolean",
+            "rules": {
+              "claim": "*",
+              "mappedRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "claimValue": "*",
+              "matchType": "RoleMappingMatchType"
+            }
+          },
+          "allowClassicFlow": "boolean",
+          "authenticationProviders": {
+            "facebook": {
+              "appId": "*"
+            },
+            "google": {
+              "clientId": "*"
+            },
+            "amazon": {
+              "appId": "*"
+            },
+            "apple": {
+              "servicesId": "*"
+            },
+            "twitter": {
+              "consumerKey": "*",
+              "consumerSecret": "*"
+            },
+            "userPools": "*",
+            "openIdConnectProviders": "*",
+            "samlProviders": "*",
+            "customProvider": "*"
+          },
+          "addUserPoolAuthentication": [
+            "*"
+          ]
+        },
+        "IdentityPoolRoleAttachment": {
+          "identityPool": {
+            "identityPoolId": "*",
+            "identityPoolArn": "*",
+            "identityPoolName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "authenticatedRole": "*",
+          "unauthenticatedRole": "*",
+          "roleMappings": {
+            "providerUrl": "*",
+            "mappingKey": "*",
+            "useToken": "boolean",
+            "resolveAmbiguousRoles": "boolean",
+            "rules": {
+              "claim": "*",
+              "mappedRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "claimValue": "*",
+              "matchType": "RoleMappingMatchType"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-config": {
+        "AccessKeysRotated": {
+          "maxAge": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CloudFormationStackDriftDetectionCheck": {
+          "ownStackOnly": "boolean",
+          "role": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CloudFormationStackNotificationCheck": {
+          "topics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "ManagedRule": {
+          "identifier": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CustomRule": {
+          "lambdaFunction": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "configurationChanges": "boolean",
+          "periodic": "boolean",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CustomPolicy": {
+          "policyText": "*",
+          "enableDebugLog": "boolean",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        }
+      },
+      "aws-cdk-lib.aws-docdb": {
+        "DatabaseCluster": {
+          "engineVersion": "*",
+          "port": "*",
+          "masterUser": {
+            "username": "*",
+            "password": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "excludeCharacters": "*",
+            "secretName": "*"
+          },
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "storageEncrypted": "boolean",
+          "dbClusterName": "*",
+          "instanceIdentifierBase": "*",
+          "instanceType": "*",
+          "instances": "*",
+          "serverlessV2ScalingConfiguration": {
+            "minCapacity": "*",
+            "maxCapacity": "*"
+          },
+          "caCertificate": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": "*",
+          "preferredMaintenanceWindow": "*",
+          "instanceMaintenanceWindow": "*",
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "exportProfilerLogsToCloudWatch": "boolean",
+          "exportAuditLogsToCloudWatch": "boolean",
+          "cloudWatchLogsRetention": "RetentionDays",
+          "cloudWatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enablePerformanceInsights": "boolean",
+          "instanceRemovalPolicy": "RemovalPolicy",
+          "securityGroupRemovalPolicy": "RemovalPolicy",
+          "copyTagsToSnapshot": "boolean",
+          "storageType": "StorageType",
+          "manageMasterUserPassword": "boolean",
+          "masterUserSecretKmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addRotationSingleUser": [
+            "*"
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*"
+            }
+          ],
+          "addSecurityGroups": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "secretName": "*",
+          "masterSecret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "excludeCharacters": "*"
+        },
+        "DatabaseInstance": {
+          "cluster": "*",
+          "instanceType": "*",
+          "availabilityZone": "*",
+          "dbInstanceName": "*",
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "removalPolicy": "RemovalPolicy",
+          "enablePerformanceInsights": "boolean",
+          "caCertificate": "*"
+        },
+        "ClusterParameterGroup": {
+          "description": "*",
+          "family": "*",
+          "dbClusterParameterGroupName": "*",
+          "parameters": "*"
+        }
+      },
+      "aws-cdk-lib.aws-dynamodb": {
+        "TableV2": {
+          "partitionKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "sortKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "tableName": "*",
+          "timeToLiveAttribute": "*",
+          "dynamoStream": "StreamViewType",
+          "removalPolicy": "RemovalPolicy",
+          "billing": "*",
+          "replicas": {
+            "region": "*",
+            "readCapacity": "*",
+            "maxReadRequestUnits": "*",
+            "globalSecondaryIndexOptions": "*",
+            "contributorInsights": "boolean",
+            "contributorInsightsSpecification": {
+              "enabled": "boolean",
+              "mode": "ContributorInsightsMode"
+            },
+            "deletionProtection": "boolean",
+            "pointInTimeRecovery": "boolean",
+            "pointInTimeRecoverySpecification": {
+              "pointInTimeRecoveryEnabled": "boolean",
+              "recoveryPeriodInDays": "*"
+            },
+            "tableClass": "TableClass",
+            "kinesisStream": {
+              "streamArn": "*",
+              "streamName": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            },
+            "tags": {
+              "key": "*",
+              "value": "*"
+            },
+            "resourcePolicy": "*"
+          },
+          "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode",
+          "witnessRegion": "*",
+          "multiRegionConsistency": "MultiRegionConsistency",
+          "globalSecondaryIndexes": {
+            "partitionKey": {
+              "name": "*",
+              "type": "AttributeType"
+            },
+            "readCapacity": "*",
+            "maxReadRequestUnits": "*",
+            "maxWriteRequestUnits": "*",
+            "warmThroughput": {
+              "readUnitsPerSecond": "*",
+              "writeUnitsPerSecond": "*"
+            },
+            "indexName": "*",
+            "projectionType": "ProjectionType",
+            "nonKeyAttributes": "*"
+          },
+          "localSecondaryIndexes": {
+            "sortKey": {
+              "name": "*",
+              "type": "AttributeType"
+            },
+            "indexName": "*",
+            "projectionType": "ProjectionType",
+            "nonKeyAttributes": "*"
+          },
+          "encryption": "*",
+          "warmThroughput": {
+            "readUnitsPerSecond": "*",
+            "writeUnitsPerSecond": "*"
+          },
+          "contributorInsights": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "tableClass": "TableClass",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tags": {
+            "key": "*",
+            "value": "*"
+          },
+          "resourcePolicy": "*",
+          "streamResourcePolicy": "*",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addToStreamResourcePolicy": [
+            "*"
+          ],
+          "addReplica": [
+            {
+              "region": "*",
+              "readCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "globalSecondaryIndexOptions": "*",
+              "contributorInsights": "boolean",
+              "contributorInsightsSpecification": {
+                "enabled": "boolean",
+                "mode": "ContributorInsightsMode"
+              },
+              "deletionProtection": "boolean",
+              "pointInTimeRecovery": "boolean",
+              "pointInTimeRecoverySpecification": {
+                "pointInTimeRecoveryEnabled": "boolean",
+                "recoveryPeriodInDays": "*"
+              },
+              "tableClass": "TableClass",
+              "kinesisStream": {
+                "streamArn": "*",
+                "streamName": "*",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "tags": {
+                "key": "*",
+                "value": "*"
+              },
+              "resourcePolicy": "*"
+            }
+          ],
+          "addGlobalSecondaryIndex": [
+            {
+              "partitionKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "readCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "maxWriteRequestUnits": "*",
+              "warmThroughput": {
+                "readUnitsPerSecond": "*",
+                "writeUnitsPerSecond": "*"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "addLocalSecondaryIndex": [
+            {
+              "sortKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "replica": [
+            "*"
+          ]
+        },
+        "TableV2MultiAccountReplica": {
+          "replicaSourceTable": {
+            "tableId": "*",
+            "grants": "*",
+            "tableArn": "*",
+            "tableName": "*",
+            "tableStreamArn": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tableName": "*",
+          "encryption": "*",
+          "removalPolicy": "RemovalPolicy",
+          "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode",
+          "grantIndexPermissions": "boolean",
+          "contributorInsights": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "tableClass": "TableClass",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tags": {
+            "key": "*",
+            "value": "*"
+          },
+          "resourcePolicy": "*",
+          "streamResourcePolicy": "*",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addToStreamResourcePolicy": [
+            "*"
+          ]
+        },
+        "Table": {
+          "tableName": "*",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kinesisPrecisionTimestamp": "ApproximateCreationDateTimePrecision",
+          "readCapacity": "*",
+          "writeCapacity": "*",
+          "maxReadRequestUnits": "*",
+          "maxWriteRequestUnits": "*",
+          "billingMode": "BillingMode",
+          "warmThroughput": {
+            "readUnitsPerSecond": "*",
+            "writeUnitsPerSecond": "*"
+          },
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "serverSideEncryption": "boolean",
+          "tableClass": "TableClass",
+          "encryption": "TableEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeToLiveAttribute": "*",
+          "stream": "StreamViewType",
+          "removalPolicy": "RemovalPolicy",
+          "replicaRemovalPolicy": "RemovalPolicy",
+          "replicationRegions": "*",
+          "replicationTimeout": "*",
+          "waitForReplicationToFinish": "boolean",
+          "contributorInsightsEnabled": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "importSource": {
+            "compressionType": "InputCompressionType",
+            "inputFormat": "*",
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "bucketOwner": "*",
+            "keyPrefix": "*"
+          },
+          "resourcePolicy": "*",
+          "partitionKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "sortKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addGlobalSecondaryIndex": [
+            {
+              "partitionKeys": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "readCapacity": "*",
+              "writeCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "maxWriteRequestUnits": "*",
+              "warmThroughput": {
+                "readUnitsPerSecond": "*",
+                "writeUnitsPerSecond": "*"
+              },
+              "contributorInsightsEnabled": "boolean",
+              "contributorInsightsSpecification": {
+                "enabled": "boolean",
+                "mode": "ContributorInsightsMode"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "addLocalSecondaryIndex": [
+            {
+              "sortKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "autoScaleReadCapacity": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleWriteCapacity": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleGlobalSecondaryIndexReadCapacity": [
+            "*",
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleGlobalSecondaryIndexWriteCapacity": [
+            "*",
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "schema": [
+            "*"
+          ],
+          "schemaV2": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ec2": {
+        "BastionHostLinux": {
+          "availabilityZone": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "instanceName": "*",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "timeout": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "userDataCausesReplacement": "boolean",
+          "allowSshAccessFrom": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "ClientVpnAuthorizationRule": {
+          "clientVpnEndpoint": "*",
+          "clientVpnEndoint": "*",
+          "cidr": "*",
+          "groupId": "*",
+          "description": "*"
+        },
+        "ClientVpnEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "cidr": "*",
+          "clientCertificateArn": "*",
+          "userBasedAuthentication": "*",
+          "logging": "boolean",
+          "logGroup": "*",
+          "logStream": "*",
+          "clientConnectionHandler": {
+            "functionName": "*",
+            "functionArn": "*"
+          },
+          "description": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "selfServicePortal": "boolean",
+          "serverCertificateArn": "*",
+          "splitTunnel": "boolean",
+          "transportProtocol": "TransportProtocol",
+          "port": "VpnPort",
+          "dnsServers": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "authorizeAllUsersToVpcCidr": "boolean",
+          "sessionTimeout": "ClientVpnSessionTimeout",
+          "disconnectOnSessionTimeout": "boolean",
+          "clientLoginBanner": "*",
+          "clientRouteEnforcementOptions": {
+            "enforced": "boolean"
+          },
+          "addAuthorizationRule": [
+            "*",
+            {
+              "cidr": "*",
+              "groupId": "*",
+              "description": "*"
+            }
+          ],
+          "addRoute": [
+            "*",
+            {
+              "cidr": "*",
+              "description": "*",
+              "target": "*"
+            }
+          ]
+        },
+        "ClientVpnRoute": {
+          "clientVpnEndpoint": {
+            "endpointId": "*",
+            "targetNetworksAssociated": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "clientVpnEndoint": {
+            "endpointId": "*",
+            "targetNetworksAssociated": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "cidr": "*",
+          "description": "*",
+          "target": "*"
+        },
+        "Instance": {
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "availabilityZone": "*",
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "resourceSignalTimeout": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "userData": "*",
+          "userDataCausesReplacement": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceName": "*",
+          "sourceDestCheck": "boolean",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "privateIpAddress": "*",
+          "propagateTagsToVolumeOnCreation": "boolean",
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "timeout": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "httpEndpoint": "boolean",
+          "httpProtocolIpv6": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "HttpTokens",
+          "instanceMetadataTags": "boolean",
+          "detailedMonitoring": "boolean",
+          "ssmSessionPermissions": "boolean",
+          "associatePublicIpAddress": "boolean",
+          "creditSpecification": "CpuCredits",
+          "ebsOptimized": "boolean",
+          "disableApiTermination": "boolean",
+          "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior",
+          "placementGroup": "*",
+          "enclaveEnabled": "boolean",
+          "hibernationEnabled": "boolean",
+          "ipv6AddressCount": "*",
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "addUserData": [
+            "*"
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "applyCloudFormationInit": [
+            "*",
+            {
+              "configSets": "*",
+              "timeout": "*",
+              "embedFingerprint": "boolean",
+              "printLog": "boolean",
+              "ignoreFailures": "boolean",
+              "includeUrl": "boolean",
+              "includeRole": "boolean"
+            }
+          ]
+        },
+        "KeyPair": {
+          "_isOsCompatible": [
+            "OperatingSystemType"
+          ]
+        },
+        "LaunchTemplate": {
+          "launchTemplateName": "*",
+          "versionDescription": "*",
+          "instanceType": "*",
+          "machineImage": "*",
+          "userData": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "cpuCredits": "CpuCredits",
+          "cpuOptions": {
+            "amdSevSnp": "boolean",
+            "coreCount": "*",
+            "nestedVirtualization": "boolean",
+            "threadsPerCore": "*"
+          },
+          "disableApiTermination": "boolean",
+          "ebsOptimized": "boolean",
+          "nitroEnclaveEnabled": "boolean",
+          "hibernationConfigured": "boolean",
+          "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior",
+          "spotOptions": {
+            "blockDuration": "*",
+            "interruptionBehavior": "SpotInstanceInterruption",
+            "maxPrice": "*",
+            "requestType": "SpotRequestType",
+            "validUntil": "*"
+          },
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "detailedMonitoring": "boolean",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "requireImdsv2": "boolean",
+          "httpEndpoint": "boolean",
+          "httpProtocolIpv6": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "LaunchTemplateHttpTokens",
+          "instanceMetadataTags": "boolean",
+          "associatePublicIpAddress": "boolean",
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "placementGroup": "*",
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "NetworkAcl": {
+          "networkAclName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "associateWithSubnet": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ]
+        },
+        "NetworkAclEntry": {
+          "networkAcl": {
+            "networkAclId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkAclEntryName": "*",
+          "cidr": "*",
+          "traffic": "*",
+          "direction": "TrafficDirection",
+          "ruleAction": "Action",
+          "ruleNumber": "*"
+        },
+        "SubnetNetworkAclAssociation": {
+          "subnetNetworkAclAssociationName": "*",
+          "networkAcl": "*",
+          "subnet": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "PlacementGroup": {},
+        "PrefixList": {},
+        "SecurityGroup": {
+          "securityGroupName": "*",
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "disableInlineRules": "boolean",
+          "addIngressRule": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "*",
+            "*",
+            "boolean"
+          ],
+          "addEgressRule": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "*",
+            "*",
+            "boolean"
+          ]
+        },
+        "Volume": {
+          "volumeName": "*",
+          "availabilityZone": "*",
+          "size": "*",
+          "snapshotId": "*",
+          "enableMultiAttach": "boolean",
+          "encrypted": "boolean",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoEnableIo": "boolean",
+          "volumeType": "EbsDeviceVolumeType",
+          "iops": "*",
+          "removalPolicy": "RemovalPolicy",
+          "throughput": "*",
+          "volumeInitializationRate": "*"
+        },
+        "VpcEndpointService": {
+          "vpcEndpointServiceName": "*",
+          "vpcEndpointServiceLoadBalancers": {
+            "loadBalancerArn": "*"
+          },
+          "acceptanceRequired": "boolean",
+          "contributorInsights": "boolean",
+          "whitelistedPrincipals": "*",
+          "allowedPrincipals": "*",
+          "supportedIpAddressTypes": "IpAddressType",
+          "allowedRegions": "*"
+        },
+        "GatewayVpcEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "service": {
+            "name": "*"
+          },
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "ipAddressType": "VpcEndpointIpAddressType",
+          "dnsRecordIpType": "VpcEndpointDnsRecordIpType"
+        },
+        "InterfaceVpcEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "service": {
+            "name": "*",
+            "port": "*",
+            "privateDnsDefault": "boolean"
+          },
+          "privateDnsEnabled": "boolean",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "open": "boolean",
+          "lookupSupportedAzs": "boolean",
+          "ipAddressType": "VpcEndpointIpAddressType",
+          "dnsRecordIpType": "VpcEndpointDnsRecordIpType",
+          "privateDnsOnlyForInboundResolverEndpoint": "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint",
+          "serviceRegion": "*"
+        },
+        "FlowLog": {
+          "flowLogName": "*",
+          "resourceType": "*",
+          "trafficType": "FlowLogTrafficType",
+          "destination": "*",
+          "logFormat": "*",
+          "maxAggregationInterval": "FlowLogMaxAggregationInterval"
+        },
+        "Vpc": {
+          "ipProtocol": "IpProtocol",
+          "ipAddresses": "*",
+          "cidr": "*",
+          "enableDnsHostnames": "boolean",
+          "enableDnsSupport": "boolean",
+          "defaultInstanceTenancy": "DefaultInstanceTenancy",
+          "maxAzs": "*",
+          "reservedAzs": "*",
+          "availabilityZones": "*",
+          "natGateways": "*",
+          "natGatewaySubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "natGatewayProvider": "*",
+          "subnetConfiguration": {
+            "cidrMask": "*",
+            "subnetType": "SubnetType",
+            "name": "*",
+            "reserved": "boolean",
+            "mapPublicIpOnLaunch": "boolean",
+            "ipv6AssignAddressOnCreation": "boolean"
+          },
+          "vpnGateway": "boolean",
+          "vpnGatewayAsn": "*",
+          "vpnConnections": "*",
+          "vpnRoutePropagation": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "gatewayEndpoints": "*",
+          "flowLogs": "*",
+          "vpcName": "*",
+          "restrictDefaultSecurityGroup": "boolean",
+          "createInternetGateway": "boolean",
+          "ipv6Addresses": {
+            "amazonProvided": "boolean"
+          },
+          "addS3Endpoint": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ],
+          "addDynamoDbEndpoint": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ]
+        },
+        "Subnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "addDefaultInternetRoute": [
+            "*",
+            "*"
+          ],
+          "addIpv6DefaultInternetRoute": [
+            "*",
+            "*"
+          ],
+          "addIpv6DefaultEgressOnlyInternetRoute": [
+            "*"
+          ],
+          "addDefaultNatRoute": [
+            "*"
+          ],
+          "addIpv6Nat64Route": [
+            "*"
+          ],
+          "addRoute": [
+            "*",
+            {
+              "destinationCidrBlock": "*",
+              "destinationIpv6CidrBlock": "*",
+              "routerType": "RouterType",
+              "routerId": "*",
+              "enablesInternetConnectivity": "boolean"
+            }
+          ],
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "PublicSubnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "addNatGateway": [
+            "*",
+            {
+              "maxDrainDuration": "*"
+            }
+          ]
+        },
+        "PrivateSubnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean"
+        },
+        "ImportedVpc": {
+          "vpcId": "*",
+          "vpcCidrBlock": "*",
+          "availabilityZones": "*",
+          "publicSubnetIds": "*",
+          "publicSubnetNames": "*",
+          "publicSubnetRouteTableIds": "*",
+          "publicSubnetIpv4CidrBlocks": "*",
+          "privateSubnetIds": "*",
+          "privateSubnetNames": "*",
+          "privateSubnetRouteTableIds": "*",
+          "privateSubnetIpv4CidrBlocks": "*",
+          "isolatedSubnetIds": "*",
+          "isolatedSubnetNames": "*",
+          "isolatedSubnetRouteTableIds": "*",
+          "isolatedSubnetIpv4CidrBlocks": "*",
+          "vpnGatewayId": "*",
+          "region": "*"
+        },
+        "LookedUpVpc": {
+          "vpcId": "*",
+          "vpcCidrBlock": "*",
+          "availabilityZones": "*",
+          "publicSubnetIds": "*",
+          "publicSubnetNames": "*",
+          "publicSubnetRouteTableIds": "*",
+          "privateSubnetIds": "*",
+          "privateSubnetNames": "*",
+          "privateSubnetRouteTableIds": "*",
+          "isolatedSubnetIds": "*",
+          "isolatedSubnetNames": "*",
+          "isolatedSubnetRouteTableIds": "*",
+          "vpnGatewayId": "*",
+          "subnetGroups": {
+            "name": "*",
+            "type": "VpcSubnetGroupType",
+            "subnets": {
+              "subnetId": "*",
+              "availabilityZone": "*",
+              "routeTableId": "*",
+              "cidr": "*"
+            }
+          },
+          "region": "*",
+          "ownerAccountId": "*"
+        },
+        "ImportedSubnet": {
+          "availabilityZone": "*",
+          "ipv4CidrBlock": "*",
+          "routeTableId": "*",
+          "subnetId": "*",
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "VpnGateway": {
+          "type": "*",
+          "amazonSideAsn": "*"
+        },
+        "VpnConnection": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ip": "*",
+          "asn": "*",
+          "staticRoutes": "*",
+          "tunnelOptions": {
+            "preSharedKey": "*",
+            "preSharedKeySecret": "*",
+            "tunnelInsideCidr": "*"
+          }
+        }
+      },
+      "aws-cdk-lib.aws-ecr": {
+        "Repository": {
+          "repositoryName": "*",
+          "encryption": "*",
+          "encryptionKey": "*",
+          "lifecycleRules": {
+            "rulePriority": "*",
+            "description": "*",
+            "tagStatus": "TagStatus",
+            "tagPrefixList": "*",
+            "tagPatternList": "*",
+            "maxImageCount": "*",
+            "maxImageAge": "*"
+          },
+          "lifecycleRegistryId": "*",
+          "removalPolicy": "RemovalPolicy",
+          "imageScanOnPush": "boolean",
+          "imageTagMutability": "TagMutability",
+          "imageTagMutabilityExclusionFilters": "*",
+          "autoDeleteImages": "boolean",
+          "emptyOnDelete": "boolean",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addLifecycleRule": [
+            {
+              "rulePriority": "*",
+              "description": "*",
+              "tagStatus": "TagStatus",
+              "tagPrefixList": "*",
+              "tagPatternList": "*",
+              "maxImageCount": "*",
+              "maxImageAge": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ecs": {
+        "Cluster": {
+          "clusterName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "defaultCloudMapNamespace": {
+            "name": "*",
+            "type": "NamespaceType",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "useForServiceConnect": "boolean"
+          },
+          "capacity": {
+            "instanceType": "*",
+            "machineImage": "*",
+            "taskDrainTime": "*",
+            "spotInstanceDraining": "boolean",
+            "topicEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "machineImageType": "MachineImageType",
+            "minCapacity": "*",
+            "maxCapacity": "*",
+            "desiredCapacity": "*",
+            "keyName": "*",
+            "keyPair": {
+              "keyPairName": "*",
+              "type": "KeyPairType"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              }
+            },
+            "notificationsTopic": {
+              "topicArn": "*",
+              "topicName": "*",
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            },
+            "notifications": {
+              "scalingEvents": "*"
+            },
+            "allowAllOutbound": "boolean",
+            "updateType": "UpdateType",
+            "rollingUpdateConfiguration": {
+              "maxBatchSize": "*",
+              "minInstancesInService": "*",
+              "minSuccessfulInstancesPercent": "*",
+              "waitOnResourceSignals": "boolean",
+              "suspendProcesses": "ScalingProcess"
+            },
+            "replacingUpdateMinSuccessfulInstancesPercent": "*",
+            "ignoreUnmodifiedSizeProperties": "boolean",
+            "resourceSignalCount": "*",
+            "associatePublicIpAddress": "boolean",
+            "spotPrice": "*",
+            "healthCheck": "*",
+            "healthChecks": "*",
+            "blockDevices": {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            },
+            "instanceMonitoring": "Monitoring",
+            "groupMetrics": "*",
+            "signals": "*",
+            "updatePolicy": "*",
+            "newInstancesProtectedFromScaleIn": "boolean",
+            "autoScalingGroupName": "*",
+            "terminationPolicies": "TerminationPolicy",
+            "terminationPolicyCustomLambdaFunctionArn": "*",
+            "capacityRebalance": "boolean",
+            "ssmSessionPermissions": "boolean",
+            "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+            "deletionProtection": "DeletionProtection",
+            "instanceLifecyclePolicy": {
+              "retentionTriggers": {
+                "terminateHookAbandon": "TerminateHookAbandonAction"
+              }
+            }
+          },
+          "capacityProviders": "*",
+          "enableFargateCapacityProviders": [],
+          "containerInsights": "boolean",
+          "containerInsightsV2": "ContainerInsights",
+          "executeCommandConfiguration": {
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "logConfiguration": {
+              "cloudWatchEncryptionEnabled": "boolean",
+              "cloudWatchLogGroup": "*",
+              "s3Bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "s3EncryptionEnabled": "boolean",
+              "s3KeyPrefix": "*"
+            },
+            "logging": "ExecuteCommandLogging"
+          },
+          "managedStorageConfiguration": {
+            "fargateEphemeralStorageKmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "kmsKey": "*"
+          },
+          "addDefaultCapacityProviderStrategy": [
+            {
+              "capacityProvider": "*",
+              "base": "*",
+              "weight": "*"
+            }
+          ],
+          "addDefaultCloudMapNamespace": [
+            {
+              "name": "*",
+              "type": "NamespaceType",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "useForServiceConnect": "boolean"
+            }
+          ],
+          "addExistingDefaultCloudMapNamespace": [
+            {
+              "namespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "useForServiceConnect": "boolean"
+            }
+          ],
+          "addCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "machineImage": "*",
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType"
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addAsgCapacityProvider": [
+            "*",
+            {
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType"
+            }
+          ],
+          "addManagedInstancesCapacityProvider": [
+            "*"
+          ],
+          "addAutoScalingGroup": [
+            "*",
+            {
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType"
+            }
+          ],
+          "addCapacityProvider": [
+            "*"
+          ],
+          "arnForTasks": [
+            "*"
+          ],
+          "grantTaskProtection": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "metricCpuReservation": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCpuUtilization": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricMemoryReservation": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricMemoryUtilization": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ImportedCluster": {
+          "clusterName": "*",
+          "clusterArn": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "hasEc2Capacity": "boolean",
+          "defaultCloudMapNamespace": {
+            "namespaceName": "*",
+            "namespaceId": "*",
+            "namespaceArn": "*",
+            "type": "NamespaceType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoscalingGroup": {
+            "autoScalingGroupName": "*",
+            "autoScalingGroupArn": "*",
+            "osType": "OperatingSystemType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "executeCommandConfiguration": {
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "logConfiguration": {
+              "cloudWatchEncryptionEnabled": "boolean",
+              "cloudWatchLogGroup": "*",
+              "s3Bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "s3EncryptionEnabled": "boolean",
+              "s3KeyPrefix": "*"
+            },
+            "logging": "ExecuteCommandLogging"
+          }
+        }
+      },
+      "aws-cdk-lib.aws-efs": {
+        "AccessPoint": {
+          "fileSystem": "*",
+          "createAcl": {
+            "ownerUid": "*",
+            "ownerGid": "*",
+            "permissions": "*"
+          },
+          "path": "*",
+          "posixUser": {
+            "uid": "*",
+            "gid": "*",
+            "secondaryGids": "*"
+          },
+          "clientToken": "*"
+        },
+        "ImportedAccessPoint": {
+          "accessPointId": "*",
+          "accessPointArn": "*",
+          "fileSystem": "*"
+        },
+        "FileSystem": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "encrypted": "boolean",
+          "fileSystemName": "*",
+          "kmsKey": "*",
+          "lifecyclePolicy": "LifecyclePolicy",
+          "outOfInfrequentAccessPolicy": "OutOfInfrequentAccessPolicy",
+          "transitionToArchivePolicy": "LifecyclePolicy",
+          "performanceMode": "PerformanceMode",
+          "throughputMode": "ThroughputMode",
+          "provisionedThroughputPerSecond": "*",
+          "removalPolicy": "RemovalPolicy",
+          "enableAutomaticBackups": "boolean",
+          "fileSystemPolicy": "*",
+          "allowAnonymousAccess": "boolean",
+          "oneZone": "boolean",
+          "replicationOverwriteProtection": "ReplicationOverwriteProtection",
+          "replicationConfiguration": "*",
+          "addAccessPoint": [
+            "*",
+            {
+              "createAcl": {
+                "ownerUid": "*",
+                "ownerGid": "*",
+                "permissions": "*"
+              },
+              "path": "*",
+              "posixUser": {
+                "uid": "*",
+                "gid": "*",
+                "secondaryGids": "*"
+              },
+              "clientToken": "*"
+            }
+          ]
+        },
+        "ImportedFileSystem": {
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "fileSystemId": "*",
+          "fileSystemArn": "*"
+        }
+      },
+      "aws-cdk-lib.aws-eks": {
+        "AccessEntry": {
+          "accessEntryName": "*",
+          "accessEntryType": "AccessEntryType",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "accessPolicies": {
+            "accessScope": {
+              "namespaces": "*",
+              "type": "AccessScopeType"
+            },
+            "policy": "*"
+          },
+          "principal": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addAccessPolicies": [
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            }
+          ]
+        },
+        "Addon": {
+          "addonName": "*",
+          "addonVersion": "*",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "preserveOnDelete": "boolean",
+          "configurationValues": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Cluster": {
+          "defaultCapacity": "*",
+          "defaultCapacityInstance": "*",
+          "defaultCapacityType": "DefaultCapacityType",
+          "kubectlLambdaRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "bootstrapClusterCreatorAdminPermissions": "boolean",
+          "bootstrapSelfManagedAddons": "boolean",
+          "tags": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "outputMastersRoleArn": "boolean",
+          "endpointAccess": "*",
+          "kubectlEnvironment": "*",
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerEnvironment": "*",
+          "clusterHandlerSecurityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean",
+          "placeClusterHandlerInVpc": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": {
+              "enableWafv2": "boolean",
+              "enableWaf": "boolean"
+            },
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "authenticationMode": "AuthenticationMode",
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "controlPlaneScalingTier": "ControlPlaneScalingTier",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "outputClusterName": "boolean",
+          "outputConfigCommand": "boolean",
+          "grantAccess": [
+            "*",
+            "*",
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            },
+            {
+              "accessEntryType": "AccessEntryType"
+            }
+          ],
+          "getServiceLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "getIngressLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "addAutoScalingGroupCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "mapRole": "boolean",
+              "bootstrapEnabled": "boolean",
+              "bootstrapOptions": {
+                "useMaxPods": "boolean",
+                "enableDockerBridge": "boolean",
+                "awsApiRetryAttempts": "*",
+                "dockerConfigJson": "*",
+                "dnsClusterIp": "*",
+                "kubeletExtraArgs": "*",
+                "additionalArgs": "*"
+              },
+              "machineImageType": "MachineImageType",
+              "spotInterruptHandler": "boolean",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "masterKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "pauseTime": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addNodegroupCapacity": [
+            "*",
+            {
+              "nodegroupName": "*",
+              "subnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "amiType": "NodegroupAmiType",
+              "diskSize": "*",
+              "desiredSize": "*",
+              "maxSize": "*",
+              "minSize": "*",
+              "forceUpdate": "boolean",
+              "instanceType": "*",
+              "labels": "*",
+              "taints": {
+                "effect": "TaintEffect",
+                "key": "*",
+                "value": "*"
+              },
+              "nodeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "releaseVersion": "*",
+              "remoteAccess": {
+                "sshKeyName": "*",
+                "sourceSecurityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                }
+              },
+              "tags": "*",
+              "launchTemplateSpec": {
+                "id": "*",
+                "version": "*"
+              },
+              "capacityType": "CapacityType",
+              "maxUnavailable": "*",
+              "maxUnavailablePercentage": "*",
+              "enableNodeAutoRepair": "boolean",
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "addFargateProfile": [
+            "*",
+            {
+              "fargateProfileName": "*",
+              "podExecutionRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "selectors": {
+                "namespace": "*",
+                "labels": "*"
+              },
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "subnetSelection": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "_attachFargateProfile": [
+            "*"
+          ],
+          "_attachKubectlResourceScope": [
+            "*"
+          ]
+        },
+        "ImportedCluster": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clusterName": "*",
+          "clusterEndpoint": "*",
+          "clusterCertificateAuthorityData": "*",
+          "clusterSecurityGroupId": "*",
+          "clusterEncryptionConfigKeyArn": "*",
+          "ipFamily": "IpFamily",
+          "securityGroupIds": "*",
+          "kubectlRoleArn": "*",
+          "kubectlLambdaRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlEnvironment": "*",
+          "kubectlSecurityGroupId": "*",
+          "kubectlPrivateSubnetIds": "*",
+          "openIdConnectProvider": {
+            "openIdConnectProviderArn": "*",
+            "openIdConnectProviderIssuer": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlProvider": {
+            "serviceToken": "*",
+            "roleArn": "*",
+            "handlerRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerSecurityGroupId": "*",
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean"
+        },
+        "FargateCluster": {
+          "defaultProfile": {
+            "fargateProfileName": "*",
+            "podExecutionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "selectors": {
+              "namespace": "*",
+              "labels": "*"
+            },
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "subnetSelection": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "outputMastersRoleArn": "boolean",
+          "endpointAccess": "*",
+          "kubectlEnvironment": "*",
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerEnvironment": "*",
+          "clusterHandlerSecurityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean",
+          "placeClusterHandlerInVpc": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": {
+              "enableWafv2": "boolean",
+              "enableWaf": "boolean"
+            },
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "authenticationMode": "AuthenticationMode",
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "controlPlaneScalingTier": "ControlPlaneScalingTier",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "outputClusterName": "boolean",
+          "outputConfigCommand": "boolean"
+        },
+        "Nodegroup": {
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "nodegroupName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "amiType": "NodegroupAmiType",
+          "diskSize": "*",
+          "desiredSize": "*",
+          "maxSize": "*",
+          "minSize": "*",
+          "forceUpdate": "boolean",
+          "instanceType": "*",
+          "instanceTypes": "*",
+          "labels": "*",
+          "taints": {
+            "effect": "TaintEffect",
+            "key": "*",
+            "value": "*"
+          },
+          "nodeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "releaseVersion": "*",
+          "remoteAccess": {
+            "sshKeyName": "*",
+            "sourceSecurityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "tags": "*",
+          "launchTemplateSpec": {
+            "id": "*",
+            "version": "*"
+          },
+          "capacityType": "CapacityType",
+          "maxUnavailable": "*",
+          "maxUnavailablePercentage": "*",
+          "enableNodeAutoRepair": "boolean",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OidcProviderNative": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-eks-v2": {
+        "AccessEntry": {
+          "accessEntryName": "*",
+          "accessEntryType": "AccessEntryType",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "accessPolicies": {
+            "accessScope": {
+              "namespaces": "*",
+              "type": "AccessScopeType"
+            },
+            "policy": "*"
+          },
+          "principal": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addAccessPolicies": [
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            }
+          ]
+        },
+        "Addon": {
+          "addonName": "*",
+          "addonVersion": "*",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "preserveOnDelete": "boolean",
+          "configurationValues": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Cluster": {
+          "compute": {
+            "nodePools": "*",
+            "nodeRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "defaultCapacity": "*",
+          "defaultCapacityInstance": "*",
+          "defaultCapacityType": "DefaultCapacityType",
+          "bootstrapClusterCreatorAdminPermissions": "boolean",
+          "bootstrapSelfManagedAddons": "boolean",
+          "outputConfigCommand": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "endpointAccess": "*",
+          "prune": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": "*",
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "tags": "*",
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "controlPlaneScalingTier": "*",
+          "removalPolicy": "RemovalPolicy",
+          "grantAccess": [
+            "*",
+            "*",
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            },
+            {
+              "accessEntryType": "AccessEntryType"
+            }
+          ],
+          "grantClusterAdmin": [
+            "*",
+            "*"
+          ],
+          "getServiceLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "getIngressLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "addAutoScalingGroupCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "bootstrapEnabled": "boolean",
+              "bootstrapOptions": {
+                "useMaxPods": "boolean",
+                "enableDockerBridge": "boolean",
+                "awsApiRetryAttempts": "*",
+                "dockerConfigJson": "*",
+                "dnsClusterIp": "*",
+                "kubeletExtraArgs": "*",
+                "additionalArgs": "*"
+              },
+              "machineImageType": "MachineImageType",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "masterKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "pauseTime": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addNodegroupCapacity": [
+            "*",
+            {
+              "nodegroupName": "*",
+              "subnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "amiType": "NodegroupAmiType",
+              "diskSize": "*",
+              "desiredSize": "*",
+              "maxSize": "*",
+              "minSize": "*",
+              "forceUpdate": "boolean",
+              "instanceTypes": "*",
+              "labels": "*",
+              "taints": {
+                "effect": "TaintEffect",
+                "key": "*",
+                "value": "*"
+              },
+              "nodeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "releaseVersion": "*",
+              "remoteAccess": {
+                "sshKeyName": "*",
+                "sourceSecurityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                }
+              },
+              "tags": "*",
+              "launchTemplateSpec": {
+                "id": "*",
+                "version": "*"
+              },
+              "capacityType": "CapacityType",
+              "maxUnavailable": "*",
+              "maxUnavailablePercentage": "*",
+              "enableNodeAutoRepair": "boolean",
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "addFargateProfile": [
+            "*",
+            {
+              "fargateProfileName": "*",
+              "podExecutionRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "selectors": {
+                "namespace": "*",
+                "labels": "*"
+              },
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "subnetSelection": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "_attachFargateProfile": [
+            "*"
+          ],
+          "_dependOnKubectlBarrier": [
+            "*"
+          ]
+        },
+        "ImportedCluster": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clusterName": "*",
+          "clusterEndpoint": "*",
+          "clusterCertificateAuthorityData": "*",
+          "clusterSecurityGroupId": "*",
+          "clusterEncryptionConfigKeyArn": "*",
+          "ipFamily": "IpFamily",
+          "securityGroupIds": "*",
+          "openIdConnectProvider": {
+            "openIdConnectProviderArn": "*",
+            "openIdConnectProviderIssuer": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlProvider": {
+            "serviceToken": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "prune": "boolean"
+        },
+        "FargateCluster": {
+          "defaultProfile": {
+            "fargateProfileName": "*",
+            "podExecutionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "selectors": {
+              "namespace": "*",
+              "labels": "*"
+            },
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "subnetSelection": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "endpointAccess": "*",
+          "prune": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": "*",
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "tags": "*",
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "controlPlaneScalingTier": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Nodegroup": {
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "nodegroupName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "amiType": "NodegroupAmiType",
+          "diskSize": "*",
+          "desiredSize": "*",
+          "maxSize": "*",
+          "minSize": "*",
+          "forceUpdate": "boolean",
+          "instanceTypes": "*",
+          "labels": "*",
+          "taints": {
+            "effect": "TaintEffect",
+            "key": "*",
+            "value": "*"
+          },
+          "nodeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "releaseVersion": "*",
+          "remoteAccess": {
+            "sshKeyName": "*",
+            "sourceSecurityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "tags": "*",
+          "launchTemplateSpec": {
+            "id": "*",
+            "version": "*"
+          },
+          "capacityType": "CapacityType",
+          "maxUnavailable": "*",
+          "maxUnavailablePercentage": "*",
+          "enableNodeAutoRepair": "boolean",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OidcProviderNative": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-elasticloadbalancing": {
+        "LoadBalancer": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "listeners": {
+            "externalPort": "*",
+            "externalProtocol": "LoadBalancingProtocol",
+            "internalPort": "*",
+            "internalProtocol": "LoadBalancingProtocol",
+            "policyNames": "*",
+            "sslCertificateId": "*",
+            "sslCertificateArn": "*",
+            "allowConnectionsFrom": {
+              "connections": "*"
+            }
+          },
+          "targets": {
+            "connections": "*"
+          },
+          "healthCheck": {
+            "port": "*",
+            "protocol": "LoadBalancingProtocol",
+            "path": "*",
+            "healthyThreshold": "*",
+            "unhealthyThreshold": "*",
+            "interval": "*"
+          },
+          "crossZone": "boolean",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "accessLoggingPolicy": "*",
+          "addListener": [
+            {
+              "externalPort": "*",
+              "externalProtocol": "LoadBalancingProtocol",
+              "internalPort": "*",
+              "internalProtocol": "LoadBalancingProtocol",
+              "policyNames": "*",
+              "sslCertificateId": "*",
+              "sslCertificateArn": "*",
+              "allowConnectionsFrom": {
+                "connections": "*"
+              }
+            }
+          ],
+          "addTarget": [
+            {
+              "connections": "*"
+            }
+          ],
+          "_addInstanceId": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-elasticsearch": {
+        "Domain": {
+          "accessPolicies": "*",
+          "advancedOptions": "*",
+          "cognitoKibanaAuth": {
+            "identityPoolId": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "userPoolId": "*"
+          },
+          "domainName": "*",
+          "ebs": {
+            "enabled": "boolean",
+            "iops": "*",
+            "volumeSize": "*",
+            "volumeType": "EbsDeviceVolumeType"
+          },
+          "capacity": {
+            "masterNodes": "*",
+            "masterNodeInstanceType": "*",
+            "dataNodes": "*",
+            "dataNodeInstanceType": "*",
+            "warmNodes": "*",
+            "warmInstanceType": "*"
+          },
+          "zoneAwareness": {
+            "enabled": "boolean",
+            "availabilityZoneCount": "*"
+          },
+          "version": "*",
+          "encryptionAtRest": {
+            "enabled": "boolean",
+            "kmsKey": "*"
+          },
+          "logging": {
+            "slowSearchLogEnabled": "boolean",
+            "slowSearchLogGroup": "*",
+            "slowIndexLogEnabled": "boolean",
+            "slowIndexLogGroup": "*",
+            "appLogEnabled": "boolean",
+            "appLogGroup": "*",
+            "auditLogEnabled": "boolean",
+            "auditLogGroup": "*"
+          },
+          "nodeToNodeEncryption": "boolean",
+          "automatedSnapshotStartHour": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "enforceHttps": "boolean",
+          "tlsSecurityPolicy": "TLSSecurityPolicy",
+          "fineGrainedAccessControl": {
+            "masterUserArn": "*",
+            "masterUserName": "*",
+            "masterUserPassword": "*"
+          },
+          "useUnsignedBasicAuth": "boolean",
+          "enableVersionUpgrade": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "customEndpoint": {
+            "domainName": "*",
+            "certificate": "*",
+            "hostedZone": {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            }
+          },
+          "addAccessPolicies": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-events": {
+        "ApiDestination": {
+          "apiDestinationName": "*",
+          "description": "*",
+          "connection": "*",
+          "endpoint": "*",
+          "httpMethod": "HttpMethod",
+          "rateLimitPerSecond": "*"
+        },
+        "Archive": {
+          "sourceEventBus": "*",
+          "archiveName": "*",
+          "description": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "retention": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Connection": {
+          "connectionName": "*",
+          "description": "*",
+          "authorization": "*",
+          "bodyParameters": "*",
+          "headerParameters": "*",
+          "queryStringParameters": "*"
+        },
+        "ImportedConnection": {
+          "connectionName": "*",
+          "connectionArn": "*",
+          "connectionSecretArn": "*"
+        },
+        "EventBus": {
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "ImportedEventBus": {
+          "eventBusName": "*",
+          "eventBusArn": "*",
+          "eventBusPolicy": "*",
+          "eventSourceName": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "EventBusPolicy": {
+          "eventBus": {
+            "eventBusName": "*",
+            "eventBusArn": "*",
+            "eventBusPolicy": "*",
+            "eventSourceName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "statement": "*",
+          "statementId": "*"
+        },
+        "Rule": {
+          "enabled": "boolean",
+          "schedule": "*",
+          "targets": "*",
+          "eventBus": "*",
+          "role": "*",
+          "description": "*",
+          "ruleName": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "crossStackScope": "*",
+          "addTarget": [
+            "*"
+          ],
+          "addEventPattern": [
+            {
+              "version": "*",
+              "id": "*",
+              "detailType": "*",
+              "source": "*",
+              "account": "*",
+              "time": "*",
+              "region": "*",
+              "resources": "*",
+              "detail": "*"
+            }
+          ],
+          "_renderEventPattern": []
+        },
+        "MirrorRule": {
+          "enabled": "boolean",
+          "schedule": "*",
+          "targets": "*",
+          "eventBus": "*",
+          "role": "*",
+          "description": "*",
+          "ruleName": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "crossStackScope": "*",
+          "_renderEventPattern": []
+        }
+      },
+      "aws-cdk-lib.aws-fsx": {
+        "LustreFileSystem": {
+          "lustreConfiguration": {
+            "deploymentType": "LustreDeploymentType",
+            "exportPath": "*",
+            "importedFileChunkSizeMiB": "*",
+            "importPath": "*",
+            "autoImportPolicy": "LustreAutoImportPolicy",
+            "dataCompressionType": "LustreDataCompressionType",
+            "perUnitStorageThroughput": "*",
+            "weeklyMaintenanceStartTime": "*",
+            "automaticBackupRetention": "*",
+            "copyTagsToBackups": "boolean",
+            "dailyAutomaticBackupStartTime": "*",
+            "driveCacheType": "DriveCacheType"
+          },
+          "fileSystemTypeVersion": "FileSystemTypeVersion",
+          "vpcSubnet": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "backupId": "*",
+          "kmsKey": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "storageCapacityGiB": "*",
+          "removalPolicy": "RemovalPolicy",
+          "storageType": "StorageType"
+        }
+      },
+      "aws-cdk-lib.aws-globalaccelerator": {
+        "Accelerator": {
+          "acceleratorName": "*",
+          "enabled": "boolean",
+          "ipAddresses": "*",
+          "ipAddressType": "IpAddressType",
+          "addListener": [
+            "*",
+            {
+              "listenerName": "*",
+              "portRanges": {
+                "fromPort": "*",
+                "toPort": "*"
+              },
+              "protocol": "ConnectionProtocol",
+              "clientAffinity": "ClientAffinity"
+            }
+          ]
+        },
+        "EndpointGroup": {
+          "listener": "*",
+          "endpointGroupName": "*",
+          "region": "*",
+          "healthCheckInterval": "*",
+          "healthCheckPath": "*",
+          "healthCheckPort": "*",
+          "healthCheckProtocol": "HealthCheckProtocol",
+          "healthCheckThreshold": "*",
+          "trafficDialPercentage": "*",
+          "portOverrides": {
+            "listenerPort": "*",
+            "endpointPort": "*"
+          },
+          "endpoints": {
+            "region": "*"
+          },
+          "addEndpoint": [
+            {
+              "region": "*"
+            }
+          ],
+          "connectionsPeer": [
+            "*",
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ]
+        },
+        "Listener": {
+          "accelerator": "*",
+          "listenerName": "*",
+          "portRanges": {
+            "fromPort": "*",
+            "toPort": "*"
+          },
+          "protocol": "ConnectionProtocol",
+          "clientAffinity": "ClientAffinity",
+          "addEndpointGroup": [
+            "*",
+            {
+              "endpointGroupName": "*",
+              "region": "*",
+              "healthCheckInterval": "*",
+              "healthCheckPath": "*",
+              "healthCheckPort": "*",
+              "healthCheckProtocol": "HealthCheckProtocol",
+              "healthCheckThreshold": "*",
+              "trafficDialPercentage": "*",
+              "portOverrides": {
+                "listenerPort": "*",
+                "endpointPort": "*"
+              },
+              "endpoints": {
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-glue": {
+        "Catalog": {
+          "catalogName": "*",
+          "description": "*",
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "AccountCatalog": {
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "ImportedCatalog": {},
+        "Connection": {
+          "type": "*",
+          "connectionName": "*",
+          "description": "*",
+          "properties": "*",
+          "secret": "*",
+          "matchCriteria": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "network": "*",
+          "addProperty": [
+            "*",
+            "*"
+          ]
+        },
+        "DataQualityRuleset": {
+          "rulesetName": "*",
+          "description": "*",
+          "dqdl": "*",
+          "tags": "*",
+          "targetTable": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Database": {
+          "databaseName": "*",
+          "locationUri": "*",
+          "description": "*",
+          "catalog": {
+            "catalogId": "*",
+            "catalogArn": "*",
+            "encryptionKey": "*",
+            "connectionPasswordKey": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ExternalTable": {
+          "connection": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "externalDataLocation": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "S3Table": {
+          "storage": "*",
+          "s3Prefix": "*",
+          "clientSideEncryption": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "SecurityConfiguration": {
+          "securityConfigurationName": "*",
+          "cloudWatchEncryption": "*",
+          "jobBookmarksEncryption": "*",
+          "s3Encryption": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-iam": {
+        "AccessKey": {
+          "serial": "*",
+          "status": "AccessKeyStatus",
+          "user": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Group": {
+          "groupName": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "path": "*",
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ]
+        },
+        "InstanceProfile": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceProfileName": "*",
+          "path": "*"
+        },
+        "LazyRole": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ]
+        },
+        "ManagedPolicy": {
+          "managedPolicyName": "*",
+          "description": "*",
+          "path": "*",
+          "users": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "groups": "*",
+          "statements": "*",
+          "document": "*",
+          "addStatements": [
+            "*"
+          ],
+          "attachToUser": [
+            "*"
+          ],
+          "attachToRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToGroup": [
+            "*"
+          ]
+        },
+        "OidcProviderNative": {
+          "oidcProviderName": "*",
+          "url": "*",
+          "clientIds": "*",
+          "thumbprints": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "clientIds": "*",
+          "thumbprints": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Policy": {
+          "policyName": "*",
+          "users": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "groups": {
+            "groupName": "*",
+            "groupArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "statements": "*",
+          "force": "boolean",
+          "document": "*",
+          "addStatements": [
+            "*"
+          ],
+          "attachToUser": [
+            {
+              "userName": "*",
+              "userArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToGroup": [
+            {
+              "groupName": "*",
+              "groupArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Role": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "withoutPolicyUpdates": [
+            {
+              "addGrantsToResources": "boolean"
+            }
+          ],
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "SamlProvider": {
+          "name": "*",
+          "metadataDocument": "*"
+        },
+        "User": {
+          "groups": {
+            "groupName": "*",
+            "groupArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "userName": "*",
+          "password": "*",
+          "passwordResetRequired": "boolean",
+          "addToGroup": [
+            {
+              "groupName": "*",
+              "groupArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-inspector": {
+        "AssessmentTemplate": {}
+      },
+      "aws-cdk-lib.aws-kinesis": {
+        "ResourcePolicy": {
+          "stream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "streamConsumer": {
+            "streamConsumerArn": "*",
+            "streamConsumerName": "*",
+            "stream": {
+              "streamArn": "*",
+              "streamName": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          },
+          "policyDocument": "*"
+        },
+        "StreamConsumer": {
+          "streamConsumerName": "*",
+          "stream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "Stream": {
+          "streamName": "*",
+          "retentionPeriod": "*",
+          "shardCount": "*",
+          "encryption": "StreamEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "streamMode": "StreamMode",
+          "removalPolicy": "RemovalPolicy",
+          "shardLevelMetrics": "ShardLevelMetrics"
+        }
+      },
+      "aws-cdk-lib.aws-kinesisfirehose": {
+        "DeliveryStream": {
+          "destination": "*",
+          "deliveryStreamName": "*",
+          "source": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "encryption": "*"
+        }
+      },
+      "aws-cdk-lib.aws-kms": {
+        "Alias": {
+          "aliasName": "*",
+          "targetKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Key": {
+          "description": "*",
+          "alias": "*",
+          "enableKeyRotation": "boolean",
+          "rotationPeriod": "*",
+          "enabled": "boolean",
+          "keySpec": "KeySpec",
+          "keyUsage": "KeyUsage",
+          "multiRegion": "boolean",
+          "policy": "*",
+          "admins": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "trustAccountIdentities": "boolean",
+          "pendingWindow": "*",
+          "grantAdmin": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ReferencedKey": {
+          "environmentFromArn": "*",
+          "keyArn": "*",
+          "keyId": "*",
+          "policy": "*",
+          "trustAccountIdentities": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-lambda": {
+        "Alias": {
+          "aliasName": "*",
+          "version": {
+            "version": "*",
+            "lambda": {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "edgeArn": "*",
+            "functionName": "*",
+            "functionArn": "*",
+            "isBoundToVpc": "boolean",
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "description": "*",
+          "additionalVersions": {
+            "version": {
+              "version": "*",
+              "lambda": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "resourceArnsForGrantInvoke": "*"
+            },
+            "weight": "*"
+          },
+          "provisionedConcurrentExecutions": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addAutoScaling": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ]
+        },
+        "CapacityProvider": {
+          "capacityProviderName": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "subnets": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "operatorRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "architectures": "*",
+          "instanceTypeFilter": "*",
+          "maxVCpuCount": "*",
+          "scalingOptions": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "propagateTags": "*",
+          "logGroup": "*",
+          "systemLogLevel": "SystemLogLevel",
+          "addFunction": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            {
+              "perExecutionEnvironmentMaxConcurrency": "*",
+              "executionEnvironmentMemoryGiBPerVCpu": "*",
+              "publishToLatestPublished": "boolean",
+              "latestPublishedScalingConfig": {
+                "minExecutionEnvironments": "*",
+                "maxExecutionEnvironments": "*"
+              }
+            }
+          ]
+        },
+        "CodeSigningConfig": {
+          "signingProfiles": {
+            "signingProfileArn": "*",
+            "signingProfileName": "*",
+            "signingProfileVersion": "*",
+            "signingProfileVersionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "untrustedArtifactOnDeployment": "UntrustedArtifactOnDeployment",
+          "description": "*"
+        },
+        "EventInvokeConfig": {
+          "function": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "qualifier": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "EventSourceMapping": {
+          "target": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "eventSourceArn": "*",
+          "batchSize": "*",
+          "bisectBatchOnError": "boolean",
+          "onFailure": "*",
+          "enabled": "boolean",
+          "startingPosition": "StartingPosition",
+          "startingPositionTimestamp": "*",
+          "reportBatchItemFailures": "boolean",
+          "maxBatchingWindow": "*",
+          "maxConcurrency": "*",
+          "maxRecordAge": "*",
+          "retryAttempts": "*",
+          "parallelizationFactor": "*",
+          "kafkaTopic": "*",
+          "tumblingWindow": "*",
+          "kafkaBootstrapServers": "*",
+          "kafkaConsumerGroupId": "*",
+          "sourceAccessConfigurations": {
+            "type": "*",
+            "uri": "*"
+          },
+          "filters": "*",
+          "filterEncryption": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "supportS3OnFailureDestination": "boolean",
+          "provisionedPollerConfig": {
+            "minimumPollers": "*",
+            "maximumPollers": "*",
+            "pollerGroupName": "*"
+          },
+          "metricsConfig": {
+            "metrics": "MetricType"
+          },
+          "logLevel": "EventSourceMappingLogLevel",
+          "schemaRegistryConfig": "*"
+        },
+        "LatestVersion": {
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ]
+        },
+        "FunctionUrl": {
+          "function": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "authType": "FunctionUrlAuthType",
+          "cors": {
+            "allowCredentials": "boolean",
+            "allowedHeaders": "*",
+            "allowedMethods": "HttpMethod",
+            "allowedOrigins": "*",
+            "exposedHeaders": "*",
+            "maxAge": "*"
+          },
+          "invokeMode": "InvokeMode",
+          "grantInvokeUrl": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Function": {
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addEnvironment": [
+            "*",
+            "*",
+            {
+              "removeInEdge": "boolean"
+            }
+          ],
+          "invalidateVersionBasedOn": [
+            "*"
+          ],
+          "addLayers": [
+            {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addVersion": [
+            "*",
+            "*",
+            "*",
+            "*",
+            {
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "_checkEdgeCompatibility": []
+        },
+        "DockerImageFunction": {
+          "code": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "Version": {
+          "lambda": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "codeSha256": "*",
+          "description": "*",
+          "provisionedConcurrentExecutions": "*",
+          "removalPolicy": "RemovalPolicy",
+          "minExecutionEnvironments": "*",
+          "maxExecutionEnvironments": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ]
+        },
+        "LayerVersion": {
+          "compatibleRuntimes": "*",
+          "compatibleArchitectures": "*",
+          "code": "*",
+          "description": "*",
+          "license": "*",
+          "layerVersionName": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "SingletonFunction": {
+          "uuid": "*",
+          "lambdaPurpose": "*",
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addEnvironment": [
+            "*",
+            "*",
+            {
+              "removeInEdge": "boolean"
+            }
+          ],
+          "addLayers": [
+            {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addPermission": [
+            "*",
+            {
+              "action": "*",
+              "eventSourceToken": "*",
+              "principal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              },
+              "scope": "*",
+              "sourceAccount": "*",
+              "sourceArn": "*",
+              "organizationId": "*",
+              "functionUrlAuthType": "FunctionUrlAuthType",
+              "invokedViaFunctionUrl": "boolean"
+            }
+          ],
+          "addDependency": [
+            "*"
+          ],
+          "addMetadata": [
+            "*",
+            "*",
+            {
+              "stackTrace": "boolean",
+              "traceFromFunction": "*",
+              "stackTraceOverride": "*"
+            }
+          ],
+          "dependOn": [
+            {
+              "node": "*"
+            }
+          ],
+          "_checkEdgeCompatibility": []
+        }
+      },
+      "aws-cdk-lib.aws-lambda-nodejs": {
+        "NodejsFunction": {
+          "entry": "*",
+          "handler": "*",
+          "runtime": "*",
+          "awsSdkConnectionReuse": "boolean",
+          "depsLockFilePath": "*",
+          "bundling": {
+            "minify": "boolean",
+            "sourceMap": "boolean",
+            "sourceMapMode": "SourceMapMode",
+            "sourcesContent": "boolean",
+            "target": "*",
+            "loader": "*",
+            "logLevel": "LogLevel",
+            "keepNames": "boolean",
+            "tsconfig": "*",
+            "metafile": "boolean",
+            "banner": "*",
+            "footer": "*",
+            "charset": "Charset",
+            "define": "*",
+            "externalModules": "*",
+            "bundleAwsSDK": "boolean",
+            "nodeModules": "*",
+            "esbuildVersion": "*",
+            "esbuildArgs": "*",
+            "buildArgs": "*",
+            "forceDockerBundling": "boolean",
+            "preCompilation": "boolean",
+            "dockerImage": "*",
+            "commandHooks": "*",
+            "assetHash": "*",
+            "format": "OutputFormat",
+            "mainFields": "*",
+            "inject": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "projectRoot": "*",
+          "code": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        }
+      },
+      "aws-cdk-lib.aws-logs": {
+        "CrossAccountDestination": {
+          "destinationName": "*",
+          "role": "*",
+          "targetArn": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "bind": [
+            "*",
+            "*"
+          ]
+        },
+        "LogGroup": {
+          "encryptionKey": "*",
+          "logGroupName": "*",
+          "dataProtectionPolicy": "*",
+          "deletionProtectionEnabled": "boolean",
+          "fieldIndexPolicies": "*",
+          "retention": "RetentionDays",
+          "logGroupClass": "LogGroupClass",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "LogStream": {
+          "logGroup": "*",
+          "logStreamName": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "MetricFilter": {
+          "logGroup": "*",
+          "filterPattern": {
+            "logPatternString": "*"
+          },
+          "metricNamespace": "*",
+          "metricName": "*",
+          "metricValue": "*",
+          "defaultValue": "*",
+          "dimensions": "*",
+          "unit": "Unit",
+          "filterName": "*",
+          "applyOnTransformedLogs": "boolean",
+          "metric": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ResourcePolicy": {},
+        "QueryDefinition": {
+          "queryDefinitionName": "*",
+          "queryString": "*",
+          "logGroups": "*"
+        },
+        "SubscriptionFilter": {
+          "logGroup": "*",
+          "destination": "*",
+          "filterPattern": {
+            "logPatternString": "*"
+          },
+          "filterName": "*",
+          "distribution": "Distribution"
+        },
+        "Transformer": {
+          "transformerName": "*",
+          "logGroup": "*",
+          "transformerConfig": "*"
+        }
+      },
+      "aws-cdk-lib.aws-opensearchservice": {
+        "Domain": {
+          "accessPolicies": "*",
+          "advancedOptions": "*",
+          "cognitoDashboardsAuth": {
+            "identityPoolId": "*",
+            "role": "*",
+            "userPoolId": "*"
+          },
+          "domainName": "*",
+          "ebs": {
+            "enabled": "boolean",
+            "iops": "*",
+            "throughput": "*",
+            "volumeSize": "*",
+            "volumeType": "EbsDeviceVolumeType"
+          },
+          "capacity": {
+            "masterNodes": "*",
+            "masterNodeInstanceType": "*",
+            "dataNodes": "*",
+            "dataNodeInstanceType": "*",
+            "warmNodes": "*",
+            "warmInstanceType": "*",
+            "multiAzWithStandbyEnabled": "boolean",
+            "nodeOptions": {
+              "nodeType": "NodeType",
+              "nodeConfig": {
+                "enabled": "boolean",
+                "type": "*",
+                "count": "*"
+              }
+            }
+          },
+          "zoneAwareness": {
+            "enabled": "boolean",
+            "availabilityZoneCount": "*"
+          },
+          "version": "*",
+          "encryptionAtRest": {
+            "enabled": "boolean",
+            "kmsKey": "*"
+          },
+          "logging": {
+            "slowSearchLogEnabled": "boolean",
+            "slowSearchLogGroup": "*",
+            "slowIndexLogEnabled": "boolean",
+            "slowIndexLogGroup": "*",
+            "appLogEnabled": "boolean",
+            "appLogGroup": "*",
+            "auditLogEnabled": "boolean",
+            "auditLogGroup": "*"
+          },
+          "nodeToNodeEncryption": "boolean",
+          "automatedSnapshotStartHour": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "enforceHttps": "boolean",
+          "tlsSecurityPolicy": "TLSSecurityPolicy",
+          "fineGrainedAccessControl": {
+            "masterUserArn": "*",
+            "masterUserName": "*",
+            "masterUserPassword": "*",
+            "samlAuthenticationEnabled": "boolean",
+            "samlAuthenticationOptions": {
+              "idpEntityId": "*",
+              "idpMetadataContent": "*",
+              "masterUserName": "*",
+              "masterBackendRole": "*",
+              "rolesKey": "*",
+              "subjectKey": "*",
+              "sessionTimeoutMinutes": "*"
+            }
+          },
+          "useUnsignedBasicAuth": "boolean",
+          "enableVersionUpgrade": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "customEndpoint": {
+            "domainName": "*",
+            "certificate": "*",
+            "hostedZone": {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            }
+          },
+          "offPeakWindowEnabled": "boolean",
+          "offPeakWindowStart": {
+            "hours": "*",
+            "minutes": "*"
+          },
+          "enableAutoSoftwareUpdate": "boolean",
+          "useLatestServiceSoftwareForBlueGreen": "boolean",
+          "ipAddressType": "IpAddressType",
+          "suppressLogsResourcePolicy": "boolean",
+          "coldStorageEnabled": "boolean",
+          "s3VectorsEngineEnabled": "boolean",
+          "addAccessPolicies": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-rds": {
+        "AuroraClusterInstance": {
+          "cluster": {
+            "clusterIdentifier": "*",
+            "clusterResourceIdentifier": "*",
+            "instanceIdentifiers": "*",
+            "clusterEndpoint": "*",
+            "engine": {
+              "singleUserRotationApplication": "*",
+              "supportedLogTypes": "*",
+              "combineImportAndExportRoles": "boolean",
+              "engineType": "*",
+              "engineVersion": {
+                "fullVersion": "*",
+                "majorVersion": "*"
+              },
+              "parameterGroupFamily": "*",
+              "engineFamily": "*",
+              "defaultUsername": "*"
+            },
+            "clusterArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "promotionTier": "*",
+          "instanceIdentifier": "*",
+          "autoMinorVersionUpgrade": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "publiclyAccessible": "boolean",
+          "availabilityZone": "*",
+          "preferredMaintenanceWindow": "*",
+          "parameters": "*",
+          "allowMajorVersionUpgrade": "boolean",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "isFromLegacyInstanceProps": "boolean",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "removalPolicy": "RemovalPolicy",
+          "subnetGroup": "*"
+        },
+        "ImportedDatabaseCluster": {
+          "clusterIdentifier": "*",
+          "clusterResourceIdentifier": "*",
+          "port": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceIdentifiers": "*",
+          "clusterEndpointAddress": "*",
+          "readerEndpointAddress": "*",
+          "instanceEndpointAddresses": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "dataApiEnabled": "boolean"
+        },
+        "DatabaseCluster": {
+          "credentials": "*",
+          "replicationSourceIdentifier": "*",
+          "manageMasterUserPassword": "boolean",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instances": "*",
+          "instanceProps": {
+            "instanceType": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "parameterGroup": "*",
+            "parameters": "*",
+            "enablePerformanceInsights": "boolean",
+            "performanceInsightRetention": "PerformanceInsightRetention",
+            "performanceInsightEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "autoMinorVersionUpgrade": "boolean",
+            "allowMajorVersionUpgrade": "boolean",
+            "deleteAutomatedBackups": "boolean",
+            "publiclyAccessible": "boolean",
+            "preferredMaintenanceWindow": "*"
+          },
+          "writer": "*",
+          "readers": "*",
+          "serverlessV2MaxCapacity": "*",
+          "serverlessV2MinCapacity": "*",
+          "serverlessV2AutoPauseDuration": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceUpdateBehaviour": "InstanceUpdateBehaviour",
+          "backtrackWindow": "*",
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "port": "*",
+          "clusterIdentifier": "*",
+          "instanceIdentifierBase": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "monitoringInterval": "*",
+          "monitoringRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableClusterLevelEnhancedMonitoring": "boolean",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "subnetGroup": "*",
+          "iamAuthentication": "boolean",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "storageType": "DBClusterStorageType",
+          "copyTagsToSnapshot": "boolean",
+          "networkType": "NetworkType",
+          "domain": "*",
+          "domainRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableDataApi": "boolean",
+          "enableLocalWriteForwarding": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "autoMinorVersionUpgrade": "boolean",
+          "clusterScalabilityType": "ClusterScalabilityType",
+          "clusterScailabilityType": "ClusterScailabilityType",
+          "engineLifecycleSupport": "EngineLifecycleSupport",
+          "deleteAutomatedBackups": "boolean"
+        },
+        "DatabaseClusterFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "credentials": "*",
+          "snapshotCredentials": "*",
+          "manageMasterUserPassword": "boolean",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instances": "*",
+          "instanceProps": {
+            "instanceType": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "parameterGroup": "*",
+            "parameters": "*",
+            "enablePerformanceInsights": "boolean",
+            "performanceInsightRetention": "PerformanceInsightRetention",
+            "performanceInsightEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "autoMinorVersionUpgrade": "boolean",
+            "allowMajorVersionUpgrade": "boolean",
+            "deleteAutomatedBackups": "boolean",
+            "publiclyAccessible": "boolean",
+            "preferredMaintenanceWindow": "*"
+          },
+          "writer": "*",
+          "readers": "*",
+          "serverlessV2MaxCapacity": "*",
+          "serverlessV2MinCapacity": "*",
+          "serverlessV2AutoPauseDuration": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceUpdateBehaviour": "InstanceUpdateBehaviour",
+          "backtrackWindow": "*",
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "port": "*",
+          "clusterIdentifier": "*",
+          "instanceIdentifierBase": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "monitoringInterval": "*",
+          "monitoringRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableClusterLevelEnhancedMonitoring": "boolean",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "subnetGroup": "*",
+          "iamAuthentication": "boolean",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "storageType": "DBClusterStorageType",
+          "copyTagsToSnapshot": "boolean",
+          "networkType": "NetworkType",
+          "domain": "*",
+          "domainRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableDataApi": "boolean",
+          "enableLocalWriteForwarding": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "autoMinorVersionUpgrade": "boolean",
+          "clusterScalabilityType": "ClusterScalabilityType",
+          "clusterScailabilityType": "ClusterScailabilityType",
+          "engineLifecycleSupport": "EngineLifecycleSupport",
+          "deleteAutomatedBackups": "boolean"
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "dbname": "*",
+          "secretName": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "masterSecret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "excludeCharacters": "*",
+          "replaceOnPasswordCriteriaChanges": "boolean",
+          "replicaRegions": {
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "DatabaseInstance": {
+          "credentials": "*",
+          "manageMasterUserPassword": "boolean",
+          "characterSetName": "*",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instanceType": "*",
+          "licenseModel": "LicenseModel",
+          "allowMajorVersionUpgrade": "boolean",
+          "timezone": "*",
+          "allocatedStorage": "*",
+          "databaseName": "*",
+          "parameters": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "DatabaseInstanceFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "clusterSnapshotIdentifier": "*",
+          "credentials": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instanceType": "*",
+          "licenseModel": "LicenseModel",
+          "allowMajorVersionUpgrade": "boolean",
+          "timezone": "*",
+          "allocatedStorage": "*",
+          "databaseName": "*",
+          "parameters": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "DatabaseInstanceReadReplica": {
+          "instanceType": "*",
+          "sourceDatabaseInstance": {
+            "instanceIdentifier": "*",
+            "instanceArn": "*",
+            "dbInstanceEndpointAddress": "*",
+            "dbInstanceEndpointPort": "*",
+            "instanceResourceId": "*",
+            "instanceEndpoint": "*",
+            "engine": {
+              "singleUserRotationApplication": "*",
+              "supportsReadReplicaBackups": "boolean",
+              "engineType": "*",
+              "engineVersion": {
+                "fullVersion": "*",
+                "majorVersion": "*"
+              },
+              "parameterGroupFamily": "*",
+              "engineFamily": "*",
+              "defaultUsername": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "allocatedStorage": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "OptionGroup": {
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "description": "*",
+          "configurations": {
+            "name": "*",
+            "settings": "*",
+            "version": "*",
+            "port": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "optionGroupName": "*",
+          "addConfiguration": [
+            {
+              "name": "*",
+              "settings": "*",
+              "version": "*",
+              "port": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              }
+            }
+          ]
+        },
+        "ParameterGroup": {
+          "engine": {
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "name": "*",
+          "description": "*",
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "bindToCluster": [
+            "*"
+          ],
+          "bindToInstance": [
+            "*"
+          ],
+          "addParameter": [
+            "*",
+            "*"
+          ]
+        },
+        "DatabaseProxyEndpoint": {
+          "dbProxy": "*",
+          "dbProxyEndpointName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "targetRole": "ProxyEndpointTargetRole"
+        },
+        "DatabaseProxy": {
+          "proxyTarget": "*",
+          "dbProxyName": "*",
+          "borrowTimeout": "*",
+          "initQuery": "*",
+          "maxConnectionsPercent": "*",
+          "maxIdleConnectionsPercent": "*",
+          "sessionPinningFilters": "*",
+          "debugLogging": "boolean",
+          "iamAuth": "boolean",
+          "idleClientTimeout": "*",
+          "requireTLS": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "secrets": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clientPasswordAuthType": "ClientPasswordAuthType",
+          "defaultAuthScheme": "DefaultAuthScheme",
+          "addEndpoint": [
+            "*",
+            {
+              "dbProxyEndpointName": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "targetRole": "ProxyEndpointTargetRole"
+            }
+          ],
+          "asSecretAttachmentTarget": [],
+          "grantConnect": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "ServerlessCluster": {
+          "credentials": "*",
+          "storageEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "clusterIdentifier": "*",
+          "backupRetention": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "enableDataApi": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "scaling": {
+            "minCapacity": "AuroraCapacityUnit",
+            "maxCapacity": "AuroraCapacityUnit",
+            "autoPause": "*",
+            "timeoutAction": "TimeoutAction"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": "*",
+          "copyTagsToSnapshot": "boolean",
+          "addRotationSingleUser": [
+            {
+              "automaticallyAfter": "*",
+              "excludeCharacters": "*",
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "endpoint": {
+                "vpcEndpointId": "*",
+                "connections": "*"
+              },
+              "securityGroup": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*"
+              },
+              "rotateImmediatelyOnUpdate": "boolean"
+            }
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*",
+              "excludeCharacters": "*",
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "endpoint": {
+                "vpcEndpointId": "*",
+                "connections": "*"
+              },
+              "securityGroup": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*"
+              },
+              "rotateImmediatelyOnUpdate": "boolean"
+            }
+          ]
+        },
+        "ImportedServerlessCluster": {
+          "clusterIdentifier": "*",
+          "port": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "clusterEndpointAddress": "*",
+          "readerEndpointAddress": "*",
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          }
+        },
+        "ServerlessClusterFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "credentials": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "clusterIdentifier": "*",
+          "backupRetention": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "enableDataApi": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "scaling": {
+            "minCapacity": "AuroraCapacityUnit",
+            "maxCapacity": "AuroraCapacityUnit",
+            "autoPause": "*",
+            "timeoutAction": "TimeoutAction"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": "*",
+          "copyTagsToSnapshot": "boolean"
+        },
+        "SubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetGroupName": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-route53": {
+        "HealthCheck": {
+          "type": "HealthCheckType",
+          "alarmIdentifier": {
+            "region": "*",
+            "name": "*"
+          },
+          "childHealthChecks": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableSNI": "boolean",
+          "failureThreshold": "*",
+          "fqdn": "*",
+          "healthThreshold": "*",
+          "insufficientDataHealthStatus": "InsufficientDataHealthStatusEnum",
+          "inverted": "boolean",
+          "ipAddress": "*",
+          "measureLatency": "boolean",
+          "port": "*",
+          "regions": "*",
+          "requestInterval": "*",
+          "resourcePath": "*",
+          "routingControl": "*",
+          "searchString": "*"
+        },
+        "HostedZone": {
+          "vpcs": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*",
+          "addVpc": [
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ],
+          "grantDelegation": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "delegatedZoneNames": "*"
+            }
+          ],
+          "enableDnssec": [
+            {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "keySigningKeyName": "*"
+            }
+          ]
+        },
+        "PublicHostedZone": {
+          "caaAmazon": "boolean",
+          "acceleratedRecoveryEnabled": "boolean",
+          "crossAccountZoneDelegationPrincipal": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "crossAccountZoneDelegationRoleName": "*",
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*",
+          "addVpc": [
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ],
+          "addDelegation": [
+            {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            },
+            {
+              "comment": "*",
+              "ttl": "*"
+            }
+          ]
+        },
+        "PrivateHostedZone": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*"
+        },
+        "KeySigningKey": {
+          "hostedZone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "keySigningKeyName": "*",
+          "status": "KeySigningKeyStatus"
+        },
+        "RecordSet": {
+          "recordType": "RecordType",
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "ARecord": {
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "AaaaRecord": {
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CnameRecord": {
+          "domainName": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "TxtRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "SrvRecord": {
+          "values": {
+            "priority": "*",
+            "weight": "*",
+            "port": "*",
+            "hostName": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CaaRecord": {
+          "values": {
+            "flag": "*",
+            "tag": "CaaTag",
+            "value": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CaaAmazonRecord": {
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "MxRecord": {
+          "values": {
+            "priority": "*",
+            "hostName": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "NsRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "DsRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "SvcbRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "HttpsRecord": {
+          "values": "*",
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "ZoneDelegationRecord": {
+          "nameServers": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        }
+      },
+      "aws-cdk-lib.aws-s3": {
+        "BucketPolicy": {
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "document": "*",
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "Bucket": {
+          "encryption": "BucketEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "blockedEncryptionTypes": "*",
+          "enforceSSL": "boolean",
+          "bucketKeyEnabled": "boolean",
+          "bucketName": "*",
+          "bucketNamePrefix": "*",
+          "bucketNamespace": "BucketNamespace",
+          "removalPolicy": "RemovalPolicy",
+          "autoDeleteObjects": "boolean",
+          "versioned": "boolean",
+          "objectLockEnabled": "boolean",
+          "abacStatus": "boolean",
+          "objectLockDefaultRetention": "*",
+          "eventBridgeEnabled": "boolean",
+          "lifecycleRules": {
+            "id": "*",
+            "enabled": "boolean",
+            "abortIncompleteMultipartUploadAfter": "*",
+            "expirationDate": "*",
+            "noncurrentVersionsToRetain": "*",
+            "noncurrentVersionTransitions": {
+              "storageClass": "*",
+              "noncurrentVersionsToRetain": "*"
+            },
+            "transitions": "*",
+            "prefix": "*",
+            "tagFilters": "*",
+            "expiredObjectDeleteMarker": "boolean",
+            "objectSizeLessThan": "*",
+            "objectSizeGreaterThan": "*"
+          },
+          "transitionDefaultMinimumObjectSize": "TransitionDefaultMinimumObjectSize",
+          "websiteIndexDocument": "*",
+          "websiteErrorDocument": "*",
+          "websiteRedirect": {
+            "hostName": "*",
+            "protocol": "RedirectProtocol"
+          },
+          "websiteRoutingRules": {
+            "hostName": "*",
+            "httpRedirectCode": "*",
+            "protocol": "RedirectProtocol",
+            "replaceKey": "*",
+            "condition": {
+              "httpErrorCodeReturnedEquals": "*",
+              "keyPrefixEquals": "*"
+            }
+          },
+          "accessControl": "BucketAccessControl",
+          "publicReadAccess": "boolean",
+          "blockPublicAccess": "*",
+          "metrics": {
+            "id": "*",
+            "prefix": "*",
+            "tagFilters": "*"
+          },
+          "cors": {
+            "id": "*",
+            "maxAge": "*",
+            "allowedHeaders": "*",
+            "allowedMethods": "HttpMethods",
+            "allowedOrigins": "*",
+            "exposedHeaders": "*"
+          },
+          "serverAccessLogsBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "serverAccessLogsPrefix": "*",
+          "targetObjectKeyFormat": "*",
+          "inventories": {
+            "destination": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*",
+              "bucketOwner": "*"
+            },
+            "objectsPrefix": "*",
+            "format": "InventoryFormat",
+            "enabled": "boolean",
+            "inventoryId": "*",
+            "frequency": "InventoryFrequency",
+            "includeObjectVersions": "InventoryObjectVersion",
+            "optionalFields": "*"
+          },
+          "objectOwnership": "ObjectOwnership",
+          "transferAcceleration": "boolean",
+          "notificationsHandlerRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "notificationsSkipDestinationValidation": "boolean",
+          "intelligentTieringConfigurations": {
+            "name": "*",
+            "prefix": "*",
+            "tags": {
+              "key": "*",
+              "value": "*"
+            },
+            "archiveAccessTierTime": "*"
+          },
+          "minimumTLSVersion": "*",
+          "replicationRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "replicationRules": {
+            "destination": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "accessControlTransition": "boolean",
+            "replicationTimeControl": "*",
+            "storageClass": "*",
+            "sseKmsEncryptedObjects": "boolean",
+            "replicaModifications": "boolean",
+            "priority": "*",
+            "deleteMarkerReplication": "boolean",
+            "id": "*",
+            "filter": {
+              "prefix": "*",
+              "tags": {
+                "key": "*",
+                "value": "*"
+              }
+            }
+          },
+          "addLifecycleRule": [
+            {
+              "id": "*",
+              "enabled": "boolean",
+              "abortIncompleteMultipartUploadAfter": "*",
+              "expirationDate": "*",
+              "noncurrentVersionsToRetain": "*",
+              "noncurrentVersionTransitions": {
+                "storageClass": "*",
+                "noncurrentVersionsToRetain": "*"
+              },
+              "transitions": "*",
+              "prefix": "*",
+              "tagFilters": "*",
+              "expiredObjectDeleteMarker": "boolean",
+              "objectSizeLessThan": "*",
+              "objectSizeGreaterThan": "*"
+            }
+          ],
+          "addMetric": [
+            {
+              "id": "*",
+              "prefix": "*",
+              "tagFilters": "*"
+            }
+          ],
+          "addCorsRule": [
+            {
+              "id": "*",
+              "maxAge": "*",
+              "allowedHeaders": "*",
+              "allowedMethods": "HttpMethods",
+              "allowedOrigins": "*",
+              "exposedHeaders": "*"
+            }
+          ],
+          "addInventory": [
+            {
+              "destination": {
+                "bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "encryptionKey": {
+                    "keyArn": "*",
+                    "keyId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "prefix": "*",
+                "bucketOwner": "*"
+              },
+              "objectsPrefix": "*",
+              "format": "InventoryFormat",
+              "enabled": "boolean",
+              "inventoryId": "*",
+              "frequency": "InventoryFrequency",
+              "includeObjectVersions": "InventoryObjectVersion",
+              "optionalFields": "*"
+            }
+          ]
+        },
+        "ReferencedBucket": {
+          "account": "*",
+          "region": "*",
+          "bucketArn": "*",
+          "bucketName": "*",
+          "bucketDomainName": "*",
+          "bucketWebsiteUrl": "*",
+          "bucketWebsiteDomainName": "*",
+          "bucketRegionalDomainName": "*",
+          "bucketDualStackDomainName": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "isWebsite": "boolean",
+          "policy": "*",
+          "replicationRoleArn": "*",
+          "autoCreatePolicy": "boolean",
+          "disallowPublicAccess": "boolean",
+          "notificationsHandlerRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-scheduler": {
+        "ScheduleGroup": {},
+        "Schedule": {
+          "schedule": "*",
+          "target": "*",
+          "scheduleName": "*",
+          "description": "*",
+          "scheduleGroup": {
+            "scheduleGroupName": "*",
+            "scheduleGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean",
+          "key": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeWindow": "*",
+          "start": "*",
+          "end": "*"
+        }
+      },
+      "aws-cdk-lib.aws-secretsmanager": {
+        "ResourcePolicy": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          }
+        },
+        "RotationSchedule": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "rotationLambda": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "hostedRotation": "*",
+          "automaticallyAfter": "*",
+          "rotateImmediatelyOnUpdate": "boolean"
+        },
+        "Secret": {
+          "description": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "generateSecretString": {
+            "excludeUppercase": "boolean",
+            "requireEachIncludedType": "boolean",
+            "includeSpace": "boolean",
+            "excludeCharacters": "*",
+            "passwordLength": "*",
+            "excludePunctuation": "boolean",
+            "excludeLowercase": "boolean",
+            "excludeNumbers": "boolean",
+            "secretStringTemplate": "*",
+            "generateStringKey": "*"
+          },
+          "secretName": "*",
+          "secretStringBeta1": "*",
+          "secretStringValue": "*",
+          "secretObjectValue": "*",
+          "removalPolicy": "RemovalPolicy",
+          "replicaRegions": {
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "addTargetAttachment": [
+            "*",
+            {
+              "target": "*"
+            }
+          ],
+          "addReplicaRegion": [
+            "*",
+            "*"
+          ]
+        },
+        "SecretTargetAttachment": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "target": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-servicecatalog": {
+        "Portfolio": {
+          "displayName": "*",
+          "providerName": "*",
+          "messageLanguage": "MessageLanguage",
+          "description": "*",
+          "tagOptions": "*"
+        },
+        "CloudFormationProduct": {
+          "owner": "*",
+          "productName": "*",
+          "productVersions": {
+            "description": "*",
+            "validateTemplate": "boolean",
+            "cloudFormationTemplate": "*",
+            "productVersionName": "*"
+          },
+          "messageLanguage": "MessageLanguage",
+          "description": "*",
+          "distributor": "*",
+          "replaceProductVersionIds": "boolean",
+          "supportDescription": "*",
+          "supportEmail": "*",
+          "supportUrl": "*",
+          "tagOptions": "*"
+        },
+        "TagOptions": {
+          "allowedValuesForTags": "*"
+        }
+      },
+      "aws-cdk-lib.aws-servicediscovery": {
+        "AliasTargetInstance": {
+          "dnsName": "*",
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "CnameInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceCname": "*",
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "HttpNamespace": {
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "IpInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "port": "*",
+          "ipv4": "*",
+          "ipv6": "*",
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "NonIpInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "PrivateDnsNamespace": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "discoveryType": "DiscoveryType",
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "routingPolicy": "RoutingPolicy",
+              "loadBalancer": "boolean",
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "PublicDnsNamespace": {
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "discoveryType": "DiscoveryType",
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "routingPolicy": "RoutingPolicy",
+              "loadBalancer": "boolean",
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "Service": {
+          "namespace": {
+            "namespaceName": "*",
+            "namespaceId": "*",
+            "namespaceArn": "*",
+            "type": "NamespaceType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "discoveryType": "DiscoveryType",
+          "dnsRecordType": "DnsRecordType",
+          "dnsTtl": "*",
+          "routingPolicy": "RoutingPolicy",
+          "loadBalancer": "boolean",
+          "name": "*",
+          "description": "*",
+          "healthCheck": {
+            "type": "HealthCheckType",
+            "resourcePath": "*",
+            "failureThreshold": "*"
+          },
+          "customHealthCheck": {
+            "failureThreshold": "*"
+          },
+          "registerLoadBalancer": [
+            "*",
+            {
+              "loadBalancerCanonicalHostedZoneId": "*",
+              "loadBalancerDnsName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "*"
+          ],
+          "registerNonIpInstance": [
+            "*",
+            {
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ],
+          "registerIpInstance": [
+            "*",
+            {
+              "port": "*",
+              "ipv4": "*",
+              "ipv6": "*",
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ],
+          "registerCnameInstance": [
+            "*",
+            {
+              "instanceCname": "*",
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ses": {
+        "ConfigurationSetEventDestination": {
+          "configurationSet": "*",
+          "configurationSetEventDestinationName": "*",
+          "enabled": "boolean",
+          "destination": "*",
+          "events": "EmailSendingEvent"
+        },
+        "ConfigurationSet": {
+          "configurationSetName": "*",
+          "dedicatedIpPool": "*",
+          "tlsPolicy": "ConfigurationSetTlsPolicy",
+          "reputationMetrics": "boolean",
+          "sendingEnabled": "boolean",
+          "suppressionReasons": "SuppressionReasons",
+          "disableSuppressionList": "boolean",
+          "autoValidationThreshold": "AutoValidationThreshold",
+          "disableAutoValidation": "boolean",
+          "customTrackingRedirectDomain": "*",
+          "customTrackingHttpsPolicy": "HttpsPolicy",
+          "vdmOptions": {
+            "engagementMetrics": "boolean",
+            "optimizedSharedDelivery": "boolean"
+          },
+          "maxDeliveryDuration": "*",
+          "addEventDestination": [
+            "*",
+            {
+              "configurationSetEventDestinationName": "*",
+              "enabled": "boolean",
+              "destination": "*",
+              "events": "EmailSendingEvent"
+            }
+          ]
+        },
+        "DedicatedIpPool": {
+          "dedicatedIpPoolName": "*",
+          "scalingMode": "ScalingMode"
+        },
+        "EmailIdentity": {
+          "identity": "*",
+          "configurationSet": "*",
+          "dkimSigning": "boolean",
+          "dkimIdentity": "*",
+          "feedbackForwarding": "boolean",
+          "mailFromDomain": "*",
+          "mailFromBehaviorOnMxFailure": "MailFromBehaviorOnMxFailure"
+        },
+        "ReceiptFilter": {
+          "receiptFilterName": "*",
+          "ip": "*",
+          "policy": "ReceiptFilterPolicy"
+        },
+        "ReceiptRuleSet": {
+          "receiptRuleSetName": "*",
+          "rules": {
+            "actions": "*",
+            "after": "*",
+            "enabled": "boolean",
+            "receiptRuleName": "*",
+            "recipients": "*",
+            "scanEnabled": "boolean",
+            "tlsPolicy": "TlsPolicy"
+          },
+          "dropSpam": "boolean"
+        },
+        "ReceiptRule": {
+          "ruleSet": "*",
+          "actions": "*",
+          "after": "*",
+          "enabled": "boolean",
+          "receiptRuleName": "*",
+          "recipients": "*",
+          "scanEnabled": "boolean",
+          "tlsPolicy": "TlsPolicy",
+          "addAction": [
+            "*"
+          ]
+        },
+        "VdmAttributes": {
+          "engagementMetrics": "boolean",
+          "optimizedSharedDelivery": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-signer": {
+        "SigningProfile": {
+          "platform": "*",
+          "signatureValidity": "*",
+          "signingProfileName": "*"
+        }
+      },
+      "aws-cdk-lib.aws-sns": {
+        "TopicPolicy": {
+          "topics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "policyDocument": "*",
+          "enforceSSL": "boolean"
+        },
+        "Subscription": {
+          "topic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "protocol": "SubscriptionProtocol",
+          "endpoint": "*",
+          "rawMessageDelivery": "boolean",
+          "filterPolicy": "*",
+          "filterPolicyWithMessageBody": "*",
+          "region": "*",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "subscriptionRoleArn": "*",
+          "deliveryPolicy": {
+            "healthyRetryPolicy": {
+              "minDelayTarget": "*",
+              "numRetries": "*",
+              "numNoDelayRetries": "*",
+              "numMinDelayRetries": "*",
+              "numMaxDelayRetries": "*",
+              "backoffFunction": "BackoffFunction"
+            },
+            "throttlePolicy": {
+              "maxReceivesPerSecond": "*"
+            },
+            "requestPolicy": {
+              "headerContentType": "*"
+            }
+          }
+        },
+        "Topic": {
+          "displayName": "*",
+          "topicName": "*",
+          "masterKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "contentBasedDeduplication": "boolean",
+          "fifo": "boolean",
+          "loggingConfigs": {
+            "protocol": "LoggingProtocol",
+            "failureFeedbackRole": "*",
+            "successFeedbackRole": "*",
+            "successFeedbackSampleRate": "*"
+          },
+          "messageRetentionPeriodInDays": "*",
+          "enforceSSL": "boolean",
+          "signatureVersion": "*",
+          "tracingConfig": "TracingConfig",
+          "fifoThroughputScope": "FifoThroughputScope",
+          "addLoggingConfig": [
+            {
+              "protocol": "LoggingProtocol",
+              "failureFeedbackRole": "*",
+              "successFeedbackRole": "*",
+              "successFeedbackSampleRate": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-sqs": {
+        "QueuePolicy": {
+          "queues": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          }
+        },
+        "Queue": {
+          "queueName": "*",
+          "retentionPeriod": "*",
+          "deliveryDelay": "*",
+          "maxMessageSizeBytes": "*",
+          "receiveMessageWaitTime": "*",
+          "visibilityTimeout": "*",
+          "deadLetterQueue": {
+            "queue": {
+              "queueArn": "*",
+              "queueUrl": "*",
+              "queueName": "*",
+              "encryptionMasterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "fifo": "boolean",
+              "encryptionType": "QueueEncryption"
+            },
+            "maxReceiveCount": "*"
+          },
+          "encryption": "QueueEncryption",
+          "encryptionMasterKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dataKeyReuse": "*",
+          "fifo": "boolean",
+          "contentBasedDeduplication": "boolean",
+          "deduplicationScope": "DeduplicationScope",
+          "fifoThroughputLimit": "FifoThroughputLimit",
+          "removalPolicy": "RemovalPolicy",
+          "enforceSSL": "boolean",
+          "redriveAllowPolicy": {
+            "redrivePermission": "RedrivePermission",
+            "sourceQueues": {
+              "queueArn": "*",
+              "queueUrl": "*",
+              "queueName": "*",
+              "encryptionMasterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "fifo": "boolean",
+              "encryptionType": "QueueEncryption"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-ssm": {
+        "StringParameter": {
+          "stringValue": "*",
+          "type": "ParameterType",
+          "dataType": "ParameterDataType",
+          "allowedPattern": "*",
+          "description": "*",
+          "parameterName": "*",
+          "simpleName": "boolean",
+          "tier": "ParameterTier"
+        },
+        "StringListParameter": {
+          "stringListValue": "*",
+          "allowedPattern": "*",
+          "description": "*",
+          "parameterName": "*",
+          "simpleName": "boolean",
+          "tier": "ParameterTier"
+        }
+      },
+      "aws-cdk-lib.aws-stepfunctions": {
+        "Activity": {
+          "activityName": "*",
+          "encryptionConfiguration": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRunTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricScheduleTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricScheduled": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTimedOut": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricStarted": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricSucceeded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricFailed": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHeartbeatTimedOut": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "StateMachine": {
+          "stateMachineName": "*",
+          "definition": {
+            "id": "*",
+            "startState": "*",
+            "endStates": "*"
+          },
+          "definitionBody": "*",
+          "definitionSubstitutions": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeout": "*",
+          "comment": "*",
+          "queryLanguage": "QueryLanguage",
+          "stateMachineType": "StateMachineType",
+          "logs": {
+            "destination": "*",
+            "includeExecutionData": "boolean",
+            "level": "LogLevel"
+          },
+          "tracingEnabled": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "encryptionConfiguration": "*",
+          "addToRolePolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-synthetics": {
+        "Canary": {
+          "artifactsBucketLocation": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeToLive": "*",
+          "schedule": "*",
+          "maxRetries": "*",
+          "startAfterCreation": "boolean",
+          "successRetentionPeriod": "*",
+          "failureRetentionPeriod": "*",
+          "canaryName": "*",
+          "runtime": "*",
+          "test": "*",
+          "activeTracing": "boolean",
+          "environmentVariables": "*",
+          "memory": "*",
+          "timeout": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "cleanup": "Cleanup",
+          "provisionedResourceCleanup": "boolean",
+          "artifactsBucketLifecycleRules": {
+            "id": "*",
+            "enabled": "boolean",
+            "abortIncompleteMultipartUploadAfter": "*",
+            "expirationDate": "*",
+            "noncurrentVersionsToRetain": "*",
+            "noncurrentVersionTransitions": {
+              "storageClass": "*",
+              "noncurrentVersionsToRetain": "*"
+            },
+            "transitions": "*",
+            "prefix": "*",
+            "tagFilters": "*",
+            "expiredObjectDeleteMarker": "boolean",
+            "objectSizeLessThan": "*",
+            "objectSizeGreaterThan": "*"
+          },
+          "artifactS3EncryptionMode": "ArtifactsEncryptionMode",
+          "artifactS3KmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "environmentEncryption": "*",
+          "dryRunAndUpdate": "boolean",
+          "resourcesToReplicateTags": "ResourceToReplicateTags",
+          "browserConfigs": "BrowserType",
+          "metricDuration": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricSuccessPercent": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricFailed": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "Group": {
+          "groupName": "*",
+          "canaries": {
+            "canaryId": "*",
+            "canaryName": "*",
+            "canaryArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addCanary": [
+            {
+              "canaryId": "*",
+              "canaryName": "*",
+              "canaryArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.core": {
+        "CustomResource": {
+          "serviceToken": "*",
+          "serviceTimeout": "*",
+          "properties": "*",
+          "resourceType": "*",
+          "removalPolicy": "RemovalPolicy",
+          "pascalCaseProperties": "boolean",
+          "getAtt": [
+            "*"
+          ],
+          "getAttString": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.lambda-layer-awscli": {
+        "AwsCliLayer": {}
+      },
+      "aws-cdk-lib.lambda-layer-node-proxy-agent": {
+        "NodeProxyAgentLayer": {}
+      },
+      "aws-cdk-lib.triggers": {
+        "TriggerFunction": {
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "executeAfter": [
+            "*"
+          ],
+          "executeBefore": [
+            "*"
+          ],
+          "executeOnHandlerChange": "boolean"
+        }
+      },
+      "aws-bedrock-agentcore-alpha.lib": {
+        "Evaluator": {
+          "evaluatorName": "*",
+          "evaluatorConfig": "*",
+          "level": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "OnlineEvaluationConfig": {
+          "evaluators": "*",
+          "dataSource": "*",
+          "tags": "*",
+          "onlineEvaluationConfigName": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "samplingPercentage": "*",
+          "filters": {
+            "key": "*",
+            "operator": "*",
+            "value": "*"
+          },
+          "sessionTimeout": "*",
+          "executionStatus": "*"
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "description": "*",
+          "protocolConfiguration": {
+            "protocolType": "*"
+          },
+          "authorizerConfiguration": {
+            "authorizerType": "GatewayAuthorizerType"
+          },
+          "exceptionLevel": "GatewayExceptionLevel",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "interceptorConfigurations": {
+            "interceptionPoint": "InterceptionPoint"
+          },
+          "policyEngineConfiguration": {
+            "policyEngine": {
+              "policyEngineArn": "*",
+              "policyEngineId": "*",
+              "policyEngineName": "*",
+              "description": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "mode": "*"
+          },
+          "addLambdaTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "lambdaFunction": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "latestVersion": {
+                  "version": "*",
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "toolSchema": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addOpenApiTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "apiSchema": "*",
+              "validateOpenApiSchema": "boolean",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addSmithyTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "smithyModel": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addMcpServerTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "endpoint": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addApiGatewayTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "restApi": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "stage": "*",
+              "apiGatewayToolConfiguration": {
+                "toolFilters": {
+                  "filterPath": "*",
+                  "methods": "ApiGatewayHttpMethod"
+                },
+                "toolOverrides": {
+                  "path": "*",
+                  "method": "ApiGatewayHttpMethod",
+                  "name": "*",
+                  "description": "*"
+                }
+              },
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              },
+              "metadataConfiguration": {
+                "allowedQueryParameters": "*",
+                "allowedRequestHeaders": "*",
+                "allowedResponseHeaders": "*"
+              }
+            }
+          ],
+          "addInterceptor": [
+            {
+              "interceptionPoint": "InterceptionPoint"
+            }
+          ]
+        },
+        "ApiKeyCredentialProvider": {
+          "apiKeyCredentialProviderName": "*",
+          "apiKey": "*",
+          "tags": "*",
+          "bindForGatewayApiKeyTarget": []
+        },
+        "OAuth2CredentialProvider": {
+          "oAuth2CredentialProviderName": "*",
+          "credentialProviderVendor": "*",
+          "oauth2ProviderConfigInput": "*",
+          "tags": "*",
+          "bindForGatewayOAuthTarget": [
+            "*",
+            "*"
+          ]
+        },
+        "WorkloadIdentity": {
+          "workloadIdentityName": "*",
+          "allowedResourceOauth2ReturnUrls": "*",
+          "tags": "*"
+        },
+        "Memory": {
+          "memoryName": "*",
+          "expirationDuration": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "memoryStrategies": {
+            "name": "*",
+            "description": "*",
+            "strategyType": "MemoryStrategyType"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addMemoryStrategy": [
+            {
+              "name": "*",
+              "description": "*",
+              "strategyType": "MemoryStrategyType"
+            }
+          ]
+        },
+        "PolicyEngine": {
+          "policyEngineName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addPolicy": [
+            "*",
+            {
+              "definition": "*",
+              "statement": "*",
+              "policyName": "*",
+              "description": "*",
+              "validationMode": "*"
+            }
+          ]
+        },
+        "Policy": {
+          "policyName": "*",
+          "policyEngine": {
+            "policyEngineArn": "*",
+            "policyEngineId": "*",
+            "policyEngineName": "*",
+            "description": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "definition": "*",
+          "statement": "*",
+          "description": "*",
+          "validationMode": "*"
+        },
+        "RuntimeEndpoint": {
+          "endpointName": "*",
+          "agentRuntimeId": "*",
+          "agentRuntimeVersion": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "Runtime": {
+          "runtimeName": "*",
+          "agentRuntimeArtifact": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "description": "*",
+          "protocolConfiguration": "ProtocolType",
+          "environmentVariables": "*",
+          "authorizerConfiguration": "*",
+          "tags": "*",
+          "requestHeaderConfiguration": {
+            "allowlistedHeaders": "*"
+          },
+          "lifecycleConfiguration": {
+            "idleRuntimeSessionTimeout": "*"
+          },
+          "tracingEnabled": "boolean",
+          "loggingConfigs": {
+            "logType": "*",
+            "destination": "*"
+          },
+          "addEndpoint": [
+            "*",
+            {
+              "description": "*",
+              "version": "*"
+            }
+          ]
+        },
+        "BrowserCustom": {
+          "browserCustomName": "*",
+          "description": "*",
+          "networkConfiguration": "*",
+          "recordingConfig": {
+            "enabled": "boolean",
+            "s3Location": {
+              "bucketName": "*",
+              "objectKey": "*",
+              "objectVersion": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "browserSigning": "BrowserSigning"
+        },
+        "CodeInterpreterCustom": {
+          "codeInterpreterCustomName": "*",
+          "description": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "tags": "*"
+        }
+      },
+      "aws-bedrock-alpha.bedrock": {
+        "AgentAlias": {
+          "agentAliasName": "*",
+          "agentVersion": "*",
+          "agent": {
+            "agentArn": "*",
+            "agentId": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "lastUpdated": "*"
+          },
+          "description": "*"
+        },
+        "Agent": {
+          "agentName": "*",
+          "instruction": "*",
+          "foundationModel": {
+            "invokableArn": "*"
+          },
+          "existingRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "shouldPrepareAgent": "boolean",
+          "idleSessionTTL": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "actionGroups": "*",
+          "guardrail": {
+            "guardrailArn": "*",
+            "guardrailId": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "lastUpdated": "*",
+            "guardrailVersion": "*"
+          },
+          "promptOverrideConfiguration": "*",
+          "userInputEnabled": "boolean",
+          "codeInterpreterEnabled": "boolean",
+          "forceDelete": "boolean",
+          "memory": "*",
+          "agentCollaboration": "*",
+          "customOrchestrationExecutor": "*",
+          "addGuardrail": [
+            {
+              "guardrailArn": "*",
+              "guardrailId": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "lastUpdated": "*",
+              "guardrailVersion": "*"
+            }
+          ],
+          "addActionGroup": [
+            "*"
+          ],
+          "addActionGroups": [
+            "*"
+          ]
+        },
+        "GuardrailVersion": {
+          "guardrail": {
+            "guardrailArn": "*",
+            "guardrailId": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "lastUpdated": "*",
+            "guardrailVersion": "*"
+          },
+          "description": "*"
+        },
+        "Guardrail": {
+          "guardrailName": "*",
+          "description": "*",
+          "blockedInputMessaging": "*",
+          "blockedOutputsMessaging": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "contentFilters": {
+            "type": "ContentFilterType",
+            "inputStrength": "ContentFilterStrength",
+            "outputStrength": "ContentFilterStrength",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean",
+            "inputModalities": "ModalityType",
+            "outputModalities": "ModalityType"
+          },
+          "contentFiltersTierConfig": "TierConfig",
+          "deniedTopics": "*",
+          "topicsTierConfig": "TierConfig",
+          "wordFilters": {
+            "text": "*",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "managedWordListFilters": {
+            "type": "ManagedWordFilterType",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "piiFilters": {
+            "type": "*",
+            "action": "GuardrailAction",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "regexFilters": {
+            "name": "*",
+            "description": "*",
+            "action": "GuardrailAction",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean",
+            "pattern": "*"
+          },
+          "contextualGroundingFilters": {
+            "type": "ContextualGroundingFilterType",
+            "action": "GuardrailAction",
+            "enabled": "boolean",
+            "threshold": "*"
+          },
+          "crossRegionConfig": {
+            "guardrailProfileArn": "*"
+          },
+          "addContentFilter": [
+            {
+              "type": "ContentFilterType",
+              "inputStrength": "ContentFilterStrength",
+              "outputStrength": "ContentFilterStrength",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean",
+              "inputModalities": "ModalityType",
+              "outputModalities": "ModalityType"
+            }
+          ],
+          "addPIIFilter": [
+            {
+              "type": "*",
+              "action": "GuardrailAction",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "addRegexFilter": [
+            {
+              "name": "*",
+              "description": "*",
+              "action": "GuardrailAction",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean",
+              "pattern": "*"
+            }
+          ],
+          "addDeniedTopicFilter": [
+            "*"
+          ],
+          "addContextualGroundingFilter": [
+            {
+              "type": "ContextualGroundingFilterType",
+              "action": "GuardrailAction",
+              "enabled": "boolean",
+              "threshold": "*"
+            }
+          ],
+          "addWordFilter": [
+            {
+              "text": "*",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "addWordFilterFromFile": [
+            "*",
+            "GuardrailAction",
+            "GuardrailAction",
+            "boolean",
+            "boolean"
+          ],
+          "addManagedWordListFilter": [
+            {
+              "type": "ManagedWordFilterType",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "createVersion": [
+            "*"
+          ]
+        },
+        "ApplicationInferenceProfile": {
+          "applicationInferenceProfileName": "*",
+          "description": "*",
+          "modelSource": {
+            "invokableArn": "*"
+          },
+          "tags": "*",
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantProfileUsage": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Prompt": {
+          "promptName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultVariant": {
+            "name": "*",
+            "templateType": "PromptTemplateType",
+            "inferenceConfiguration": "*",
+            "modelId": "*",
+            "templateConfiguration": "*",
+            "genAiResource": "*"
+          },
+          "variants": {
+            "name": "*",
+            "templateType": "PromptTemplateType",
+            "inferenceConfiguration": "*",
+            "modelId": "*",
+            "templateConfiguration": "*",
+            "genAiResource": "*"
+          },
+          "tags": "*",
+          "createVersion": [
+            "*"
+          ],
+          "addVariant": [
+            {
+              "name": "*",
+              "templateType": "PromptTemplateType",
+              "inferenceConfiguration": "*",
+              "modelId": "*",
+              "templateConfiguration": "*",
+              "genAiResource": "*"
+            }
+          ]
+        }
+      },
+      "aws-glue-alpha.lib": {
+        "PySparkEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkStreamingJob": {
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PythonShellJob": {
+          "pythonVersion": "PythonVersion",
+          "maxCapacity": "MaxCapacity",
+          "librarySet": "LibrarySet",
+          "extraPythonFiles": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "RayJob": {
+          "runtime": "Runtime",
+          "numberOfWorkers": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkEtlJob": {
+          "className": "*",
+          "notifyDelayAfter": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkStreamingJob": {
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "Workflow": {}
+      },
+      "aws-apigateway.lib": {
+        "CognitoUserPoolsAuthorizer": {
+          "authorizerName": "*",
+          "cognitoUserPools": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "resultsCacheTtl": "*",
+          "identitySource": "*",
+          "_attachToApi": [
+            {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          ]
+        },
+        "TokenAuthorizer": {
+          "validationRegex": "*",
+          "identitySource": "*",
+          "authorizerName": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "resultsCacheTtl": "*",
+          "assumeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "RequestAuthorizer": {
+          "identitySources": "*",
+          "authorizerName": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "resultsCacheTtl": "*",
+          "assumeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "aws-apigatewayv2.lib": {
+        "ApiMapping": {
+          "apiMappingKey": "*",
+          "api": "*",
+          "domainName": "*",
+          "stage": {
+            "stageName": "*",
+            "url": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "DomainName": {
+          "domainName": "*",
+          "mtls": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "key": "*",
+            "version": "*"
+          },
+          "certificate": "*",
+          "certificateName": "*",
+          "endpointType": "EndpointType",
+          "securityPolicy": "SecurityPolicy",
+          "ownershipCertificate": "*",
+          "ipAddressType": "IpAddressType",
+          "addEndpoint": [
+            {
+              "certificate": "*",
+              "certificateName": "*",
+              "endpointType": "EndpointType",
+              "securityPolicy": "SecurityPolicy",
+              "ownershipCertificate": "*",
+              "ipAddressType": "IpAddressType"
+            }
+          ]
+        },
+        "HttpApi": {
+          "addStage": [
+            "*",
+            {
+              "stageName": "*",
+              "autoDeploy": "boolean",
+              "domainMapping": {
+                "domainName": "*",
+                "mappingKey": "*"
+              },
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              },
+              "description": "*",
+              "detailedMetricsEnabled": "boolean",
+              "accessLogSettings": {
+                "destination": "*",
+                "format": "*"
+              },
+              "stageVariables": "*"
+            }
+          ],
+          "addRoutes": [
+            {
+              "path": "*",
+              "methods": "HttpMethod",
+              "authorizer": "*",
+              "authorizationScopes": "*",
+              "integration": "*"
+            }
+          ]
+        },
+        "HttpAuthorizer": {
+          "authorizerName": "*",
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "type": "HttpAuthorizerType",
+          "identitySource": "*",
+          "jwtAudience": "*",
+          "jwtIssuer": "*",
+          "enableSimpleResponses": "boolean",
+          "payloadFormatVersion": "AuthorizerPayloadVersion",
+          "authorizerUri": "*",
+          "resultsCacheTtl": "*",
+          "role": "*"
+        },
+        "HttpIntegration": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "integrationType": "HttpIntegrationType",
+          "integrationSubtype": "HttpIntegrationSubtype",
+          "integrationUri": "*",
+          "method": "HttpMethod",
+          "connectionId": "*",
+          "connectionType": "HttpConnectionType",
+          "payloadFormatVersion": "*",
+          "secureServerName": "*",
+          "timeout": "*",
+          "parameterMapping": "*",
+          "credentials": "*"
+        },
+        "HttpRoute": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "routeKey": "*",
+          "authorizer": "*",
+          "authorizationScopes": "*",
+          "integration": "*",
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "httpMethods": "HttpMethod"
+            }
+          ]
+        },
+        "HttpStage": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "stageName": "*",
+          "autoDeploy": "boolean",
+          "domainMapping": {
+            "domainName": "*",
+            "mappingKey": "*"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "description": "*",
+          "detailedMetricsEnabled": "boolean",
+          "accessLogSettings": {
+            "destination": "*",
+            "format": "*"
+          },
+          "stageVariables": "*"
+        },
+        "VpcLink": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcLinkName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": "*",
+          "addSubnets": [
+            "*"
+          ],
+          "addSecurityGroups": [
+            "*"
+          ]
+        },
+        "ApiKey": {
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*"
+        },
+        "RateLimitedApiKey": {
+          "apiStages": {
+            "api": {
+              "apiId": "*",
+              "apiEndpoint": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "isWebsocketApi": "boolean"
+            },
+            "stage": {
+              "callbackUrl": "*",
+              "stageName": "*",
+              "url": "*"
+            }
+          },
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*"
+        },
+        "WebSocketApi": {
+          "addRoute": [
+            "*",
+            {
+              "integration": "*",
+              "authorizer": "*",
+              "returnResponse": "boolean"
+            }
+          ],
+          "grantManageConnections": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "arnForExecuteApi": [
+            "*",
+            "*",
+            "*"
+          ],
+          "arnForExecuteApiV2": [
+            "*",
+            "*"
+          ]
+        },
+        "WebSocketAuthorizer": {
+          "authorizerName": "*",
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "type": "WebSocketAuthorizerType",
+          "identitySource": "*",
+          "authorizerUri": "*"
+        },
+        "WebSocketIntegration": {
+          "webSocketApi": {
+            "isWebsocketApi": "boolean"
+          },
+          "integrationType": "WebSocketIntegrationType",
+          "integrationUri": "*",
+          "integrationMethod": "*",
+          "contentHandling": "ContentHandling",
+          "credentialsRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "requestParameters": "*",
+          "requestTemplates": "*",
+          "templateSelectionExpression": "*",
+          "timeout": "*",
+          "passthroughBehavior": "PassthroughBehavior"
+        },
+        "WebSocketRoute": {
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "routeKey": "*",
+          "apiKeyRequired": "boolean",
+          "integration": "*",
+          "authorizer": "*",
+          "returnResponse": "boolean"
+        },
+        "WebSocketStage": {
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "stageName": "*",
+          "autoDeploy": "boolean",
+          "domainMapping": {
+            "domainName": "*",
+            "mappingKey": "*"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "description": "*",
+          "detailedMetricsEnabled": "boolean",
+          "accessLogSettings": {
+            "destination": "*",
+            "format": "*"
+          },
+          "stageVariables": "*",
+          "grantManagementApiAccess": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "UsagePlan": {
+          "apiStages": {
+            "api": {
+              "apiId": "*",
+              "apiEndpoint": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "isWebsocketApi": "boolean"
+            },
+            "stage": {
+              "callbackUrl": "*",
+              "stageName": "*",
+              "url": "*"
+            }
+          },
+          "description": "*",
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "usagePlanName": "*",
+          "addApiStage": [
+            {
+              "api": {
+                "apiId": "*",
+                "apiEndpoint": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                },
+                "isWebsocketApi": "boolean"
+              },
+              "stage": {
+                "callbackUrl": "*",
+                "stageName": "*",
+                "url": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-bedrockagentcore.lib": {
+        "Evaluator": {
+          "evaluatorName": "*",
+          "evaluatorConfig": "*",
+          "level": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "OnlineEvaluationConfig": {
+          "evaluators": "*",
+          "dataSource": "*",
+          "tags": "*",
+          "onlineEvaluationConfigName": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "samplingPercentage": "*",
+          "filters": {
+            "key": "*",
+            "operator": "*",
+            "value": "*"
+          },
+          "sessionTimeout": "*",
+          "executionStatus": "*"
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "description": "*",
+          "protocolConfiguration": {
+            "protocolType": "*"
+          },
+          "authorizerConfiguration": {
+            "authorizerType": "GatewayAuthorizerType"
+          },
+          "exceptionLevel": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "interceptorConfigurations": {
+            "interceptionPoint": "InterceptionPoint"
+          },
+          "policyEngineConfiguration": {
+            "policyEngine": {
+              "policyEngineArn": "*",
+              "policyEngineId": "*",
+              "policyEngineName": "*",
+              "description": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "mode": "*"
+          },
+          "addLambdaTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "lambdaFunction": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "latestVersion": {
+                  "version": "*",
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "toolSchema": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addOpenApiTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "apiSchema": "*",
+              "validateOpenApiSchema": "boolean",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addSmithyTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "smithyModel": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addMcpServerTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "endpoint": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addApiGatewayTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "restApi": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "stage": "*",
+              "apiGatewayToolConfiguration": {
+                "toolFilters": {
+                  "filterPath": "*",
+                  "methods": "*"
+                },
+                "toolOverrides": {
+                  "path": "*",
+                  "name": "*",
+                  "description": "*"
+                }
+              },
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              },
+              "metadataConfiguration": {
+                "allowedQueryParameters": "*",
+                "allowedRequestHeaders": "*",
+                "allowedResponseHeaders": "*"
+              }
+            }
+          ],
+          "addInterceptor": [
+            {
+              "interceptionPoint": "InterceptionPoint"
+            }
+          ]
+        },
+        "ApiKeyCredentialProvider": {
+          "apiKeyCredentialProviderName": "*",
+          "apiKey": "*",
+          "tags": "*",
+          "bindForGatewayApiKeyTarget": []
+        },
+        "OAuth2CredentialProvider": {
+          "oAuth2CredentialProviderName": "*",
+          "credentialProviderVendor": "*",
+          "oauth2ProviderConfigInput": "*",
+          "tags": "*",
+          "bindForGatewayOAuthTarget": [
+            "*",
+            "*"
+          ]
+        },
+        "WorkloadIdentity": {
+          "workloadIdentityName": "*",
+          "allowedResourceOauth2ReturnUrls": "*",
+          "tags": "*"
+        },
+        "Memory": {
+          "memoryName": "*",
+          "expirationDuration": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "memoryStrategies": {
+            "strategyName": "*",
+            "description": "*",
+            "strategyType": "MemoryStrategyType"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "streamDeliveryResources": "*",
+          "addMemoryStrategy": [
+            {
+              "strategyName": "*",
+              "description": "*",
+              "strategyType": "MemoryStrategyType"
+            }
+          ],
+          "addStreamDeliveryResource": [
+            "*"
+          ]
+        },
+        "PolicyEngine": {
+          "policyEngineName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addPolicy": [
+            "*",
+            {
+              "statement": "*",
+              "policyName": "*",
+              "description": "*",
+              "validationMode": "*"
+            }
+          ]
+        },
+        "Policy": {
+          "policyName": "*",
+          "policyEngine": {
+            "policyEngineArn": "*",
+            "policyEngineId": "*",
+            "policyEngineName": "*",
+            "description": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "statement": "*",
+          "description": "*",
+          "validationMode": "*"
+        },
+        "RuntimeEndpoint": {
+          "endpointName": "*",
+          "agentRuntimeId": "*",
+          "agentRuntimeVersion": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "Runtime": {
+          "runtimeName": "*",
+          "agentRuntimeArtifact": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "description": "*",
+          "protocolConfiguration": "*",
+          "platformVersion": "*",
+          "environmentVariables": "*",
+          "authorizerConfiguration": "*",
+          "tags": "*",
+          "requestHeaderConfiguration": {
+            "allowlistedHeaders": "*"
+          },
+          "lifecycleConfiguration": {
+            "idleRuntimeSessionTimeout": "*"
+          },
+          "tracingEnabled": "boolean",
+          "loggingConfigs": {
+            "logType": "*",
+            "destination": "*"
+          },
+          "manageDeliveryResourcePolicy": "boolean",
+          "addEndpoint": [
+            "*",
+            {
+              "description": "*",
+              "version": "*"
+            }
+          ]
+        },
+        "BrowserCustom": {
+          "browserCustomName": "*",
+          "description": "*",
+          "networkConfiguration": "*",
+          "recordingConfig": {
+            "enabled": "boolean",
+            "s3Location": {
+              "bucketName": "*",
+              "objectKey": "*",
+              "objectVersion": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "browserSigning": "BrowserSigning"
+        },
+        "CodeInterpreterCustom": {
+          "codeInterpreterCustomName": "*",
+          "description": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "tags": "*"
+        }
+      },
+      "aws-cloudfront.lib": {
+        "EdgeFunction": {
+          "stackId": "*",
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addEventSourceMapping": [
+            "*",
+            {
+              "eventSourceArn": "*",
+              "batchSize": "*",
+              "bisectBatchOnError": "boolean",
+              "onFailure": "*",
+              "enabled": "boolean",
+              "startingPosition": "StartingPosition",
+              "startingPositionTimestamp": "*",
+              "reportBatchItemFailures": "boolean",
+              "maxBatchingWindow": "*",
+              "maxConcurrency": "*",
+              "retryAttempts": "*",
+              "parallelizationFactor": "*",
+              "kafkaTopic": "*",
+              "kafkaBootstrapServers": "*",
+              "kafkaConsumerGroupId": "*",
+              "sourceAccessConfigurations": {
+                "type": "*",
+                "uri": "*"
+              },
+              "filters": "*",
+              "filterEncryption": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "supportS3OnFailureDestination": "boolean",
+              "provisionedPollerConfig": {
+                "minimumPollers": "*",
+                "maximumPollers": "*",
+                "pollerGroupName": "*"
+              },
+              "metricsConfig": {
+                "metrics": "MetricType"
+              },
+              "logLevel": "EventSourceMappingLogLevel",
+              "schemaRegistryConfig": "*"
+            }
+          ],
+          "addPermission": [
+            "*",
+            {
+              "action": "*",
+              "eventSourceToken": "*",
+              "principal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              },
+              "scope": "*",
+              "sourceAccount": "*",
+              "sourceArn": "*",
+              "organizationId": "*",
+              "functionUrlAuthType": "FunctionUrlAuthType",
+              "invokedViaFunctionUrl": "boolean"
+            }
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeLatestVersion": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeVersion": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "version": "*",
+              "lambda": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "grantInvokeUrl": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeCompositePrincipal": [
+            "*"
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricDuration": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricErrors": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricInvocations": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricThrottles": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addEventSource": [
+            "*"
+          ],
+          "configureAsyncInvoke": [
+            {
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addFunctionUrl": [
+            {
+              "authType": "FunctionUrlAuthType",
+              "cors": {
+                "allowCredentials": "boolean",
+                "allowedHeaders": "*",
+                "allowedMethods": "HttpMethod",
+                "allowedOrigins": "*",
+                "exposedHeaders": "*",
+                "maxAge": "*"
+              },
+              "invokeMode": "InvokeMode"
+            }
+          ]
+        }
+      },
+      "aws-codedeploy.lib": {
+        "EcsApplication": {
+          "applicationName": "*"
+        },
+        "EcsDeploymentConfig": {},
+        "EcsDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*",
+          "alarms": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "service": {
+            "cluster": {
+              "clusterName": "*",
+              "clusterArn": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "connections": "*",
+              "hasEc2Capacity": "boolean",
+              "defaultCloudMapNamespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType"
+              },
+              "autoscalingGroup": {
+                "autoScalingGroupName": "*",
+                "autoScalingGroupArn": "*",
+                "osType": "OperatingSystemType",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "executeCommandConfiguration": {
+                "kmsKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "logConfiguration": {
+                  "cloudWatchEncryptionEnabled": "boolean",
+                  "cloudWatchLogGroup": "*",
+                  "s3Bucket": {
+                    "bucketArn": "*",
+                    "bucketName": "*",
+                    "bucketWebsiteUrl": "*",
+                    "bucketWebsiteDomainName": "*",
+                    "bucketDomainName": "*",
+                    "bucketDualStackDomainName": "*",
+                    "bucketRegionalDomainName": "*",
+                    "isWebsite": "boolean",
+                    "policy": "*",
+                    "replicationRoleArn": "*"
+                  },
+                  "s3EncryptionEnabled": "boolean",
+                  "s3KeyPrefix": "*"
+                },
+                "logging": "ExecuteCommandLogging"
+              }
+            },
+            "serviceArn": "*",
+            "serviceName": "*"
+          },
+          "blueGreenDeploymentConfig": {
+            "blueTargetGroup": {
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            },
+            "listener": "*",
+            "testListener": "*",
+            "deploymentApprovalWaitTime": "*"
+          },
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "addAlarm": [
+            "*"
+          ]
+        },
+        "ImportedEcsDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*"
+        },
+        "LambdaApplication": {
+          "applicationName": "*"
+        },
+        "CustomLambdaDeploymentConfig": {
+          "type": "CustomLambdaDeploymentConfigType",
+          "percentage": "*",
+          "interval": "*",
+          "deploymentConfigName": "*",
+          "bindEnvironment": [
+            "*"
+          ]
+        },
+        "LambdaDeploymentConfig": {},
+        "LambdaDeploymentGroup": {
+          "application": {
+            "applicationArn": "*",
+            "applicationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": {
+            "deploymentConfigName": "*",
+            "deploymentConfigArn": "*"
+          },
+          "alarms": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "alias": "*",
+          "preHook": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "postHook": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "addAlarm": [
+            "*"
+          ],
+          "addPreHook": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "addPostHook": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "grantPutLifecycleEventHookExecutionStatus": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ImportedLambdaDeploymentGroup": {
+          "application": {
+            "applicationArn": "*",
+            "applicationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": {
+            "deploymentConfigName": "*",
+            "deploymentConfigArn": "*"
+          }
+        },
+        "ImportedDeploymentGroupBase": {
+          "application": "*",
+          "deploymentGroupName": "*"
+        },
+        "DeploymentGroupBase": {
+          "deploymentGroupName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roleConstructId": "*"
+        },
+        "ServerApplication": {
+          "applicationName": "*"
+        },
+        "ServerDeploymentConfig": {
+          "minimumHealthyHosts": "*",
+          "zonalConfig": {
+            "monitorDuration": "*",
+            "minimumHealthyHostsPerZone": "*"
+          },
+          "deploymentConfigName": "*"
+        },
+        "ImportedServerDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*"
+        },
+        "ServerDeploymentGroup": {
+          "application": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*",
+          "autoScalingGroups": {
+            "autoScalingGroupName": "*",
+            "autoScalingGroupArn": "*",
+            "osType": "OperatingSystemType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "installAgent": "boolean",
+          "loadBalancer": "*",
+          "loadBalancers": "*",
+          "ec2InstanceTags": "*",
+          "onPremiseInstanceTags": "*",
+          "alarms": "*",
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "terminationHook": "boolean",
+          "addAutoScalingGroup": [
+            "*"
+          ],
+          "addAlarm": [
+            "*"
+          ]
+        }
+      },
+      "aws-codepipeline.lib": {
+        "AliasWithShorterGeneratedName": {}
+      },
+      "aws-cognito.lib": {
+        "UserPoolIdentityProviderAmazon": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderApple": {
+          "clientId": "*",
+          "teamId": "*",
+          "keyId": "*",
+          "privateKey": "*",
+          "privateKeyValue": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderFacebook": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "scopes": "*",
+          "apiVersion": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderGoogle": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "clientSecretValue": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderOidc": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "issuerUrl": "*",
+          "name": "*",
+          "scopes": "*",
+          "identifiers": "*",
+          "attributeRequestMethod": "OidcAttributeRequestMethod",
+          "endpoints": {
+            "authorization": "*",
+            "token": "*",
+            "userInfo": "*",
+            "jwksUri": "*"
+          },
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderSaml": {
+          "name": "*",
+          "identifiers": "*",
+          "metadata": "*",
+          "idpSignout": "boolean",
+          "encryptedResponses": "boolean",
+          "requestSigningAlgorithm": "SigningAlgorithm",
+          "idpInitiated": "boolean",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        }
+      },
+      "aws-ecs.lib": {
+        "ImportedTaskDefinition": {
+          "taskDefinitionArn": "*",
+          "compatibility": "Compatibility",
+          "networkMode": "NetworkMode",
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "TaskDefinition": {
+          "networkMode": "NetworkMode",
+          "placementConstraints": "*",
+          "compatibility": "Compatibility",
+          "cpu": "*",
+          "memoryMiB": "*",
+          "ipcMode": "IpcMode",
+          "pidMode": "PidMode",
+          "inferenceAccelerators": {
+            "deviceName": "*",
+            "deviceType": "*"
+          },
+          "ephemeralStorageGiB": "*",
+          "runtimePlatform": {
+            "cpuArchitecture": "*",
+            "operatingSystemFamily": "*"
+          },
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean",
+          "_validateTarget": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "alternateTarget": "*"
+            }
+          ],
+          "_portRangeFromPortMapping": [
+            {
+              "containerPort": "*",
+              "containerPortRange": "*",
+              "hostPort": "*",
+              "protocol": "Protocol",
+              "name": "*",
+              "appProtocol": "*"
+            }
+          ],
+          "addToTaskRolePolicy": [
+            "*"
+          ],
+          "addToExecutionRolePolicy": [
+            "*"
+          ],
+          "addContainer": [
+            "*",
+            {
+              "image": "*",
+              "containerName": "*",
+              "command": "*",
+              "credentialSpecs": "*",
+              "cpu": "*",
+              "disableNetworking": "boolean",
+              "dnsSearchDomains": "*",
+              "dnsServers": "*",
+              "dockerLabels": "*",
+              "dockerSecurityOptions": "*",
+              "entryPoint": "*",
+              "environment": "*",
+              "environmentFiles": "*",
+              "secrets": "*",
+              "startTimeout": "*",
+              "essential": "boolean",
+              "extraHosts": "*",
+              "healthCheck": {
+                "command": "*",
+                "retries": "*"
+              },
+              "hostname": "*",
+              "interactive": "boolean",
+              "memoryLimitMiB": "*",
+              "memoryReservationMiB": "*",
+              "privileged": "boolean",
+              "readonlyRootFilesystem": "boolean",
+              "user": "*",
+              "versionConsistency": "VersionConsistency",
+              "workingDirectory": "*",
+              "logging": "*",
+              "linuxParameters": "*",
+              "gpuCount": "*",
+              "portMappings": {
+                "containerPort": "*",
+                "containerPortRange": "*",
+                "hostPort": "*",
+                "protocol": "Protocol",
+                "name": "*",
+                "appProtocol": "*"
+              },
+              "inferenceAcceleratorResources": "*",
+              "systemControls": {
+                "namespace": "*",
+                "value": "*"
+              },
+              "pseudoTerminal": "boolean",
+              "ulimits": {
+                "name": "UlimitName",
+                "softLimit": "*",
+                "hardLimit": "*"
+              },
+              "enableRestartPolicy": "boolean",
+              "restartIgnoredExitCodes": "*"
+            }
+          ],
+          "addFirelensLogRouter": [
+            "*",
+            {
+              "firelensConfig": {
+                "type": "FirelensLogRouterType",
+                "options": {
+                  "enableECSLogMetadata": "boolean",
+                  "configFileType": "FirelensConfigFileType",
+                  "configFileValue": "*"
+                }
+              },
+              "image": "*",
+              "containerName": "*",
+              "command": "*",
+              "credentialSpecs": "*",
+              "cpu": "*",
+              "disableNetworking": "boolean",
+              "dnsSearchDomains": "*",
+              "dnsServers": "*",
+              "dockerLabels": "*",
+              "dockerSecurityOptions": "*",
+              "entryPoint": "*",
+              "environment": "*",
+              "environmentFiles": "*",
+              "secrets": "*",
+              "startTimeout": "*",
+              "essential": "boolean",
+              "extraHosts": "*",
+              "healthCheck": {
+                "command": "*",
+                "retries": "*"
+              },
+              "hostname": "*",
+              "interactive": "boolean",
+              "memoryLimitMiB": "*",
+              "memoryReservationMiB": "*",
+              "privileged": "boolean",
+              "readonlyRootFilesystem": "boolean",
+              "user": "*",
+              "versionConsistency": "VersionConsistency",
+              "workingDirectory": "*",
+              "logging": "*",
+              "linuxParameters": "*",
+              "gpuCount": "*",
+              "portMappings": {
+                "containerPort": "*",
+                "containerPortRange": "*",
+                "hostPort": "*",
+                "protocol": "Protocol",
+                "name": "*",
+                "appProtocol": "*"
+              },
+              "inferenceAcceleratorResources": "*",
+              "systemControls": {
+                "namespace": "*",
+                "value": "*"
+              },
+              "pseudoTerminal": "boolean",
+              "ulimits": {
+                "name": "UlimitName",
+                "softLimit": "*",
+                "hardLimit": "*"
+              },
+              "enableRestartPolicy": "boolean",
+              "restartIgnoredExitCodes": "*"
+            }
+          ],
+          "_linkContainer": [
+            "*"
+          ],
+          "addVolume": [
+            {
+              "host": {
+                "sourcePath": "*"
+              },
+              "name": "*",
+              "configuredAtLaunch": "boolean",
+              "dockerVolumeConfiguration": {
+                "autoprovision": "boolean",
+                "driver": "*",
+                "driverOpts": "*",
+                "labels": "*",
+                "scope": "Scope"
+              },
+              "efsVolumeConfiguration": {
+                "fileSystemId": "*",
+                "rootDirectory": "*",
+                "transitEncryption": "*",
+                "transitEncryptionPort": "*",
+                "authorizationConfig": {
+                  "accessPointId": "*",
+                  "iam": "*"
+                }
+              }
+            }
+          ],
+          "addPlacementConstraint": [
+            "*"
+          ],
+          "addExtension": [
+            "*"
+          ],
+          "addInferenceAccelerator": [
+            {
+              "deviceName": "*",
+              "deviceType": "*"
+            }
+          ],
+          "grantRun": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "obtainExecutionRole": [],
+          "findPortMappingByName": [
+            "*"
+          ],
+          "findContainer": [
+            "*"
+          ]
+        },
+        "Ec2Service": {
+          "taskDefinition": "*",
+          "assignPublicIp": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "placementConstraints": "*",
+          "placementStrategies": "*",
+          "daemon": "boolean",
+          "availabilityZoneRebalancing": "AvailabilityZoneRebalancing",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "addPlacementStrategies": [
+            "*"
+          ],
+          "addPlacementConstraints": [
+            "*"
+          ],
+          "attachToClassicLB": [
+            "*"
+          ]
+        },
+        "Ec2TaskDefinition": {
+          "networkMode": "NetworkMode",
+          "placementConstraints": "*",
+          "ipcMode": "IpcMode",
+          "pidMode": "PidMode",
+          "inferenceAccelerators": {
+            "deviceName": "*",
+            "deviceType": "*"
+          },
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean"
+        },
+        "ExternalService": {
+          "taskDefinition": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "daemon": "boolean",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "attachToApplicationTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            }
+          ],
+          "loadBalancerTarget": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "alternateTarget": "*"
+            }
+          ],
+          "registerLoadBalancerTargets": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "newTargetGroupId": "*",
+              "listener": "*"
+            }
+          ],
+          "autoScaleTaskCount": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "enableCloudMap": [
+            {
+              "name": "*",
+              "cloudMapNamespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "failureThreshold": "*",
+              "container": "*",
+              "containerPort": "*"
+            }
+          ],
+          "associateCloudMapService": [
+            {
+              "service": {
+                "serviceName": "*",
+                "namespace": {
+                  "namespaceName": "*",
+                  "namespaceId": "*",
+                  "namespaceArn": "*",
+                  "type": "NamespaceType",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "serviceId": "*",
+                "serviceArn": "*",
+                "dnsRecordType": "DnsRecordType",
+                "routingPolicy": "RoutingPolicy",
+                "discoveryType": "DiscoveryType"
+              },
+              "container": "*",
+              "containerPort": "*"
+            }
+          ]
+        },
+        "ExternalTaskDefinition": {
+          "networkMode": "NetworkMode",
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean",
+          "addInferenceAccelerator": [
+            {
+              "deviceName": "*",
+              "deviceType": "*"
+            }
+          ]
+        },
+        "FargateService": {
+          "taskDefinition": "*",
+          "assignPublicIp": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "platformVersion": "FargatePlatformVersion",
+          "availabilityZoneRebalancing": "AvailabilityZoneRebalancing",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "attachToClassicLB": [
+            "*"
+          ]
+        },
+        "FargateTaskDefinition": {
+          "cpu": "*",
+          "memoryLimitMiB": "*",
+          "ephemeralStorageGiB": "*",
+          "runtimePlatform": {
+            "cpuArchitecture": "*",
+            "operatingSystemFamily": "*"
+          },
+          "pidMode": "PidMode",
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean"
+        }
+      },
+      "aws-elasticloadbalancingv2.lib": {
+        "ApplicationListener": {
+          "loadBalancer": {
+            "loadBalancerArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "ipAddressType": "IpAddressType",
+            "listeners": "*",
+            "metrics": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "connections": "*",
+            "isApplicationLoadBalancer": "boolean"
+          },
+          "protocol": "ApplicationProtocol",
+          "port": "*",
+          "certificateArns": "*",
+          "certificates": {
+            "certificateArn": "*"
+          },
+          "sslPolicy": "SslPolicy",
+          "defaultTargetGroups": {
+            "metrics": "*",
+            "targetGroupName": "*",
+            "targetGroupArn": "*",
+            "loadBalancerArns": "*",
+            "loadBalancerAttached": "*",
+            "node": "*"
+          },
+          "defaultAction": "*",
+          "open": "boolean",
+          "mutualAuthentication": {
+            "mutualAuthenticationMode": "MutualAuthenticationMode",
+            "trustStore": "*",
+            "ignoreClientCertificateExpiry": "boolean",
+            "advertiseTrustStoreCaNames": "boolean"
+          },
+          "addCertificateArns": [
+            "*",
+            "*"
+          ],
+          "addCertificates": [
+            "*",
+            {
+              "certificateArn": "*"
+            }
+          ],
+          "addAction": [
+            "*",
+            {
+              "action": "*",
+              "removeSuffix": "boolean",
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addTargetGroups": [
+            "*",
+            {
+              "targetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addTargets": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "protocolVersion": "ApplicationProtocolVersion",
+              "port": "*",
+              "slowStart": "*",
+              "stickinessCookieName": "*",
+              "targets": "*",
+              "targetGroupName": "*",
+              "healthCheck": {
+                "enabled": "boolean",
+                "path": "*",
+                "port": "*",
+                "protocol": "Protocol",
+                "healthyThresholdCount": "*",
+                "unhealthyThresholdCount": "*",
+                "healthyGrpcCodes": "*",
+                "healthyHttpCodes": "*"
+              },
+              "loadBalancingAlgorithmType": "TargetGroupLoadBalancingAlgorithmType",
+              "enableAnomalyMitigation": "boolean",
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addFixedResponse": [
+            "*",
+            {
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*",
+              "statusCode": "*",
+              "contentType": "ContentType",
+              "messageBody": "*"
+            }
+          ],
+          "addRedirectResponse": [
+            "*",
+            {
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*",
+              "host": "*",
+              "path": "*",
+              "port": "*",
+              "protocol": "*",
+              "query": "*",
+              "statusCode": "*"
+            }
+          ],
+          "registerConnectable": [
+            {
+              "connections": "*"
+            },
+            "*"
+          ]
+        },
+        "ImportedApplicationListener": {
+          "listenerArn": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "defaultPort": "*",
+          "securityGroupAllowsAllOutbound": "boolean"
+        },
+        "LookedUpApplicationListener": {
+          "listenerArn": "*",
+          "listenerPort": "*",
+          "securityGroupIds": "*"
+        },
+        "ApplicationLoadBalancer": {
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ipAddressType": "IpAddressType",
+          "http2Enabled": "boolean",
+          "idleTimeout": "*",
+          "dropInvalidHeaderFields": "boolean",
+          "desyncMitigationMode": "DesyncMitigationMode",
+          "clientKeepAlive": "*",
+          "preserveHostHeader": "boolean",
+          "xAmznTlsVersionAndCipherSuiteHeaders": "boolean",
+          "preserveXffClientPort": "boolean",
+          "xffHeaderProcessingMode": "XffHeaderProcessingMode",
+          "wafFailOpen": "boolean",
+          "loadBalancerName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "deletionProtection": "boolean",
+          "crossZoneEnabled": "boolean",
+          "denyAllIgwTraffic": "boolean",
+          "minimumCapacityUnit": "*",
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ],
+          "addRedirect": [
+            {
+              "sourceProtocol": "ApplicationProtocol",
+              "sourcePort": "*",
+              "targetProtocol": "ApplicationProtocol",
+              "targetPort": "*",
+              "open": "boolean"
+            }
+          ],
+          "logAccessLogs": [
+            {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "*"
+          ],
+          "logConnectionLogs": [
+            {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "*"
+          ],
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricActiveConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricClientTlsNegotiationErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricConsumedLCUs": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpFixedResponseCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpRedirectCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpRedirectUrlLimitExceededCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpCodeElb": [
+            "HttpCodeElb",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpCodeTarget": [
+            "HttpCodeTarget",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIpv6ProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIpv6RequestCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricNewConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRejectedConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRequestCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRuleEvaluations": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetConnectionErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetResponseTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetTLSNegotiationErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthError": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthFailure": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthLatency": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthSuccess": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ImportedApplicationLoadBalancer": {
+          "loadBalancerArn": "*",
+          "securityGroupId": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "securityGroupAllowsAllOutbound": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ]
+        },
+        "LookedUpApplicationLoadBalancer": {
+          "loadBalancerArn": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "ipAddressType": "LoadBalancerIpAddressType",
+          "securityGroupIds": "*",
+          "vpcId": "*",
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ]
+        },
+        "TrustStoreRevocation": {
+          "trustStore": "*",
+          "revocationContents": {
+            "revocationType": "RevocationType",
+            "bucket": "*",
+            "key": "*",
+            "version": "*"
+          }
+        },
+        "TrustStore": {
+          "trustStoreName": "*",
+          "bucket": "*",
+          "key": "*",
+          "version": "*"
+        },
+        "NetworkListener": {
+          "loadBalancer": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "metrics": "*",
+            "securityGroups": "*",
+            "ipAddressType": "IpAddressType",
+            "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "loadBalancerArn": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "defaultTargetGroups": {
+            "metrics": "*",
+            "targetGroupName": "*",
+            "targetGroupArn": "*",
+            "loadBalancerArns": "*",
+            "loadBalancerAttached": "*",
+            "node": "*",
+            "isNetworkTargetGroup": "boolean"
+          },
+          "defaultAction": "*",
+          "protocol": "Protocol",
+          "certificates": {
+            "certificateArn": "*"
+          },
+          "sslPolicy": "SslPolicy",
+          "alpnPolicy": "AlpnPolicy",
+          "tcpIdleTimeout": "*",
+          "addCertificates": [
+            "*",
+            {
+              "certificateArn": "*"
+            }
+          ],
+          "addTargetGroups": [
+            "*",
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*",
+              "isNetworkTargetGroup": "boolean"
+            }
+          ],
+          "addAction": [
+            "*",
+            {
+              "action": "*"
+            }
+          ],
+          "addTargets": [
+            "*",
+            {
+              "port": "*",
+              "protocol": "Protocol",
+              "targets": "*",
+              "targetGroupName": "*",
+              "deregistrationDelay": "*",
+              "proxyProtocolV2": "boolean",
+              "preserveClientIp": "boolean",
+              "healthCheck": {
+                "enabled": "boolean",
+                "path": "*",
+                "port": "*",
+                "protocol": "Protocol",
+                "healthyThresholdCount": "*",
+                "unhealthyThresholdCount": "*",
+                "healthyGrpcCodes": "*",
+                "healthyHttpCodes": "*"
+              }
+            }
+          ]
+        },
+        "NetworkLoadBalancer": {
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ipAddressType": "IpAddressType",
+          "clientRoutingPolicy": "ClientRoutingPolicy",
+          "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "boolean",
+          "zonalShift": "boolean",
+          "enablePrefixForIpv6SourceNat": "boolean",
+          "subnetMappings": {
+            "subnet": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "allocationId": "*",
+            "ipv6Address": "*",
+            "privateIpv4Address": "*",
+            "sourceNatIpv6Prefix": "*"
+          },
+          "disableSecurityGroups": "boolean",
+          "loadBalancerName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "deletionProtection": "boolean",
+          "crossZoneEnabled": "boolean",
+          "denyAllIgwTraffic": "boolean",
+          "minimumCapacityUnit": "*",
+          "addListener": [
+            "*",
+            {
+              "port": "*",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*",
+                "isNetworkTargetGroup": "boolean"
+              },
+              "defaultAction": "*",
+              "protocol": "Protocol",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "alpnPolicy": "AlpnPolicy",
+              "tcpIdleTimeout": "*"
+            }
+          ],
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricActiveFlowCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricConsumedLCUs": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHealthyHostCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricUnHealthyHostCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricNewFlowCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpClientResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpElbResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpTargetResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "LookedUpNetworkLoadBalancer": {
+          "loadBalancerArn": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "ipAddressType": "LoadBalancerIpAddressType",
+          "securityGroupIds": "*",
+          "vpcId": "*",
+          "addListener": [
+            "*",
+            {
+              "port": "*",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*",
+                "isNetworkTargetGroup": "boolean"
+              },
+              "defaultAction": "*",
+              "protocol": "Protocol",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "alpnPolicy": "AlpnPolicy",
+              "tcpIdleTimeout": "*"
+            }
+          ]
+        }
+      },
+      "aws-glue.lib": {
+        "PySparkEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkStreamingJob": {
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PythonShellJob": {
+          "pythonVersion": "PythonVersion",
+          "maxCapacity": "MaxCapacity",
+          "librarySet": "LibrarySet",
+          "extraPythonFiles": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkEtlJob": {
+          "className": "*",
+          "notifyDelayAfter": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkStreamingJob": {
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "Workflow": {}
+      },
+      "aws-iam.lib": {
+        "ImmutableRole": {
+          "roleArn": "*",
+          "roleName": "*",
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "assumeRoleAction": "*",
+          "policyFragment": "*",
+          "principalAccount": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "grantPrincipal": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "stack": "*",
+          "applyRemovalPolicy": "*",
+          "node": "*",
+          "with": "*",
+          "env": {
+            "account": "*",
+            "region": "*"
+          }
+        },
+        "ImportedRole": {
+          "roleArn": "*",
+          "roleName": "*",
+          "account": "*",
+          "mutable": "boolean",
+          "addGrantsToResources": "boolean",
+          "defaultPolicyName": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "dedupeString": []
+        },
+        "PrecreatedRole": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "assumeRolePolicy": "*",
+          "missing": "boolean",
+          "rolePath": "*",
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ]
+        }
+      },
+      "pipelines.lib": {
+        "AssetSingletonRole": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addAssumeRole": [
+            "*"
+          ]
+        }
+      },
+      "lib.gateway": {
+        "GatewayTarget": {
+          "gateway": {
+            "gatewayArn": "*",
+            "gatewayId": "*",
+            "gatewayName": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "description": "*",
+            "protocolConfiguration": {
+              "protocolType": "*"
+            },
+            "authorizerConfiguration": {
+              "authorizerType": "GatewayAuthorizerType"
+            },
+            "exceptionLevel": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "gatewayUrl": "*",
+            "status": "*",
+            "statusReason": "*",
+            "createdAt": "*",
+            "updatedAt": "*"
+          },
+          "targetConfiguration": {
+            "targetType": "McpTargetType"
+          },
+          "credentialProviderConfigurations": {
+            "credentialProviderType": "CredentialProviderType"
+          },
+          "gatewayTargetName": "*",
+          "description": "*",
+          "grantSync": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "lib.services": {
+        "ResourcePolicy": {}
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts
+var AWS_CDK_ENUMS;
+var init_enums = __esm({
+  "../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts"() {
+    "use strict";
+    AWS_CDK_ENUMS = {
+      "AcceleratorManufacturer": [
+        "amazon-web-services",
+        "amd",
+        "nvidia",
+        "xilinx",
+        "habana"
+      ],
+      "AcceleratorName": [
+        "a100",
+        "k80",
+        "m60",
+        "radeon-pro-v520",
+        "t4",
+        "v100",
+        "vu9p",
+        "a10g",
+        "h100",
+        "inferentia",
+        "k520",
+        "t4g",
+        "l40s",
+        "l4",
+        "gaudi-hl-205",
+        "inferentia2",
+        "trainium",
+        "trainium2",
+        "u30"
+      ],
+      "AcceleratorType": [
+        "gpu",
+        "fpga",
+        "inference",
+        "media"
+      ],
+      "AccessEntryType": [
+        "STANDARD",
+        "FARGATE_LINUX",
+        "EC2_LINUX",
+        "EC2_WINDOWS",
+        "EC2",
+        "HYBRID_LINUX",
+        "HYPERPOD_LINUX"
+      ],
+      "AccessKeyStatus": [
+        "Active",
+        "Inactive",
+        "Expired"
+      ],
+      "AccessLevel": [
+        "READ",
+        "READ_VERSIONED",
+        "LIST",
+        "WRITE",
+        "DELETE"
+      ],
+      "AccessScopeType": [
+        "namespace",
+        "cluster"
+      ],
+      "AccountRecovery": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5
+      ],
+      "Action": [
+        "allow",
+        "deny"
+      ],
+      "ActionAfterCompletion": [
+        "NONE",
+        "DELETE"
+      ],
+      "ActionCategory": [
+        "Source",
+        "Build",
+        "Test",
+        "Approval",
+        "Deploy",
+        "Invoke",
+        "Compute"
+      ],
+      "ActionOnFailure": [
+        "TERMINATE_CLUSTER",
+        "CANCEL_AND_WAIT",
+        "CONTINUE"
+      ],
+      "ActionPoint": [
+        "PRE_CREATE_HOSTED_CONFIGURATION_VERSION",
+        "PRE_START_DEPLOYMENT",
+        "ON_DEPLOYMENT_START",
+        "ON_DEPLOYMENT_STEP",
+        "ON_DEPLOYMENT_BAKING",
+        "ON_DEPLOYMENT_COMPLETE",
+        "ON_DEPLOYMENT_ROLLED_BACK",
+        "AT_DEPLOYMENT_TICK"
+      ],
+      "ActionScope": [
+        "all",
+        "specific"
+      ],
+      "AdMarkerDash": [
+        "BINARY",
+        "XML"
+      ],
+      "AdMarkerHls": [
+        "DATERANGE",
+        "SCTE35_ENHANCED"
+      ],
+      "AdditionalHealthCheckType": [
+        "ELB",
+        "EBS",
+        "VPC_LATTICE"
+      ],
+      "AddressFamily": [
+        "IPv4",
+        "IPv6"
+      ],
+      "AdjustmentType": [
+        "ChangeInCapacity",
+        "PercentChangeInCapacity",
+        "ExactCapacity"
+      ],
+      "AdotLambdaExecWrapper": [
+        "/opt/otel-handler",
+        "/opt/otel-proxy-handler",
+        "/opt/otel-stream-handler",
+        "/opt/otel-instrument",
+        "/opt/otel-sqs-handler"
+      ],
+      "AdotLambdaLayerType": [
+        "JAVA_SDK",
+        "JAVA_AUTO_INSTRUMENTATION",
+        "JAVASCRIPT_SDK",
+        "PYTHON_SDK",
+        "GENERIC"
+      ],
+      "AdvancedSecurityMode": [
+        "ENFORCED",
+        "AUDIT",
+        "OFF"
+      ],
+      "AgentCollaboratorType": [
+        "SUPERVISOR",
+        "DISABLED",
+        "SUPERVISOR_ROUTER"
+      ],
+      "AgentCoreRuntime": [
+        "PYTHON_3_10",
+        "PYTHON_3_11",
+        "PYTHON_3_12",
+        "PYTHON_3_13",
+        "PYTHON_3_14",
+        "NODE_22"
+      ],
+      "AgentStepType": [
+        "PRE_PROCESSING",
+        "ORCHESTRATION",
+        "POST_PROCESSING",
+        "ROUTING_CLASSIFIER",
+        "MEMORY_SUMMARIZATION",
+        "KNOWLEDGE_BASE_RESPONSE_GENERATION"
+      ],
+      "AlarmBehavior": [
+        "ROLLBACK_ON_ALARM",
+        "FAIL_ON_ALARM"
+      ],
+      "AlarmState": [
+        "ALARM",
+        "OK",
+        "INSUFFICIENT_DATA"
+      ],
+      "AlarmStatusWidgetSortBy": [
+        "default",
+        "stateUpdatedTimestamp",
+        "timestamp"
+      ],
+      "AlbScheme": [
+        "internal",
+        "internet-facing"
+      ],
+      "AllocationStrategy": [
+        "BEST_FIT",
+        "BEST_FIT_PROGRESSIVE",
+        "SPOT_CAPACITY_OPTIMIZED",
+        "SPOT_PRICE_CAPACITY_OPTIMIZED"
+      ],
+      "AllowMapsAction": [
+        "geo-maps:GetStaticMap",
+        "geo-maps:GetTile",
+        "geo-maps:*"
+      ],
+      "AllowPlacesAction": [
+        "geo-places:Autocomplete",
+        "geo-places:Geocode",
+        "geo-places:GetPlace",
+        "geo-places:ReverseGeocode",
+        "geo-places:SearchNearby",
+        "geo-places:SearchText",
+        "geo-places:Suggest",
+        "geo-places:*"
+      ],
+      "AllowRoutesAction": [
+        "geo-routes:CalculateIsolines",
+        "geo-routes:CalculateRoutes",
+        "geo-routes:CalculateRouteMatrix",
+        "geo-routes:OptimizeWaypoints",
+        "geo-routes:SnapToRoads",
+        "geo-routes:*"
+      ],
+      "AlpnPolicy": [
+        "HTTP1Only",
+        "HTTP2Only",
+        "HTTP2Optional",
+        "HTTP2Preferred",
+        "None"
+      ],
+      "AmazonLinuxCpuType": [
+        "arm64",
+        "x86_64"
+      ],
+      "AmazonLinuxEdition": [
+        "standard",
+        "minimal"
+      ],
+      "AmazonLinuxGeneration": [
+        "amzn",
+        "amzn2",
+        "al2022",
+        "al2023"
+      ],
+      "AmazonLinuxKernel": [
+        "kernel-5.10",
+        "kernel-6.1"
+      ],
+      "AmazonLinuxStorage": [
+        "ebs",
+        "s3",
+        "gp2"
+      ],
+      "AmazonLinuxVirt": [
+        "hvm",
+        "pv"
+      ],
+      "AmiHardwareType": [
+        "Standard",
+        "GPU",
+        "ARM64",
+        "Neuron"
+      ],
+      "ApiGatewayHttpMethod": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD",
+        "OPTIONS"
+      ],
+      "ApiKeyCredentialLocationType": [
+        "HEADER",
+        "QUERY_PARAMETER"
+      ],
+      "ApiKeySourceType": [
+        "HEADER",
+        "AUTHORIZER"
+      ],
+      "AppSyncAuthorizationType": [
+        "API_KEY",
+        "AWS_IAM",
+        "AMAZON_COGNITO_USER_POOLS",
+        "OPENID_CONNECT",
+        "AWS_LAMBDA"
+      ],
+      "AppSyncDataSourceType": [
+        "AWS_LAMBDA",
+        "AMAZON_DYNAMODB",
+        "AMAZON_EVENTBRIDGE",
+        "AMAZON_OPENSEARCH_SERVICE",
+        "HTTP",
+        "RELATIONAL_DATABASE",
+        "AMAZON_BEDROCK_RUNTIME",
+        "AMAZON_ELASTICSEARCH"
+      ],
+      "AppSyncFieldLogLevel": [
+        "NONE",
+        "ERROR",
+        "INFO",
+        "DEBUG",
+        "ALL"
+      ],
+      "ApplicationLoadBalancedServiceRecordType": [
+        0,
+        1,
+        2
+      ],
+      "ApplicationLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN",
+        "TRACE",
+        "ERROR",
+        "FATAL"
+      ],
+      "ApplicationProtocol": [
+        "HTTP",
+        "HTTPS"
+      ],
+      "ApplicationProtocolVersion": [
+        "GRPC",
+        "HTTP1",
+        "HTTP2"
+      ],
+      "ApproximateCreationDateTimePrecision": [
+        "MILLISECOND",
+        "MICROSECOND"
+      ],
+      "ArnFormat": [
+        "arn:aws:service:region:account:resource",
+        "arn:aws:service:region:account:resource:resourceName",
+        "arn:aws:service:region:account:resource/resourceName",
+        "arn:aws:service:region:account:/resource/resourceName"
+      ],
+      "ArtifactsEncryptionMode": [
+        "SSE_S3",
+        "SSE_KMS"
+      ],
+      "AssembleWith": [
+        "None",
+        "Line"
+      ],
+      "AssertionType": [
+        "equals",
+        "objectLike",
+        "arrayWith"
+      ],
+      "AssetHashType": [
+        "source",
+        "bundle",
+        "output",
+        "custom"
+      ],
+      "AssetType": [
+        "file",
+        "docker-image"
+      ],
+      "AttachmentTargetType": [
+        "AWS::RDS::DBInstance",
+        "deprecated_AWS::RDS::DBInstance",
+        "AWS::RDS::DBCluster",
+        "deprecated_AWS::RDS::DBCluster",
+        "AWS::RDS::DBProxy",
+        "AWS::Redshift::Cluster",
+        "AWS::DocDB::DBInstance",
+        "AWS::DocDB::DBCluster"
+      ],
+      "AttributeType": [
+        "B",
+        "N",
+        "S"
+      ],
+      "AudioCodec": [
+        "AACL",
+        "AACH",
+        "AC-3",
+        "EC-3"
+      ],
+      "AudioCodecType": [
+        "AAC",
+        "AC3",
+        "EAC3",
+        "EAC3_ATMOS",
+        "MP2",
+        "WAV",
+        "PASSTHROUGH"
+      ],
+      "AuditCheck": [
+        "AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK",
+        "CA_CERTIFICATE_EXPIRING_CHECK",
+        "CA_CERTIFICATE_KEY_QUALITY_CHECK",
+        "CONFLICTING_CLIENT_IDS_CHECK",
+        "DEVICE_CERTIFICATE_EXPIRING_CHECK",
+        "DEVICE_CERTIFICATE_KEY_QUALITY_CHECK",
+        "DEVICE_CERTIFICATE_SHARED_CHECK",
+        "IOT_POLICY_OVERLY_PERMISSIVE_CHECK",
+        "IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK",
+        "IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK",
+        "LOGGING_DISABLED_CHECK",
+        "REVOKED_CA_CERTIFICATE_STILL_ACTIVE_CHECK",
+        "REVOKED_DEVICE_CERTIFICATE_STILL_ACTIVE_CHECK",
+        "UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK"
+      ],
+      "AuroraCapacityUnit": [
+        1,
+        2,
+        4,
+        8,
+        16,
+        32,
+        64,
+        128,
+        192,
+        256,
+        384
+      ],
+      "AuthType": [
+        "NO_AUTH",
+        "IAM_ROLE",
+        "RESOURCE_POLICY"
+      ],
+      "AuthenticationMethod": [
+        "SASL_SCRAM_512_AUTH",
+        "SASL_SCRAM_256_AUTH",
+        "BASIC_AUTH",
+        "CLIENT_CERTIFICATE_TLS_AUTH"
+      ],
+      "AuthenticationMode": [
+        "CONFIG_MAP",
+        "API_AND_CONFIG_MAP",
+        "API"
+      ],
+      "AuthorizationType": [
+        "API_KEY",
+        "BASIC",
+        "OAUTH_CLIENT_CREDENTIALS"
+      ],
+      "AuthorizerPayloadVersion": [
+        "1.0",
+        "2.0"
+      ],
+      "AutoRollbackEvent": [
+        "DEPLOYMENT_FAILURE",
+        "DEPLOYMENT_STOP_ON_ALARM",
+        "DEPLOYMENT_STOP_ON_REQUEST"
+      ],
+      "AutoValidationThreshold": [
+        "MEDIUM",
+        "HIGH",
+        "MANAGED"
+      ],
+      "AvailabilityZoneRebalancing": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "AwsLogDriverMode": [
+        "blocking",
+        "non-blocking"
+      ],
+      "AwsServiceName": [
+        "ec2"
+      ],
+      "BackoffFunction": [
+        "ARITHMETIC",
+        "EXPONENTIAL",
+        "GEOMETRIC",
+        "LINEAR"
+      ],
+      "BackupMode": [
+        0,
+        1
+      ],
+      "BackupVaultEvents": [
+        "BACKUP_JOB_STARTED",
+        "BACKUP_JOB_COMPLETED",
+        "BACKUP_JOB_SUCCESSFUL",
+        "BACKUP_JOB_FAILED",
+        "BACKUP_JOB_EXPIRED",
+        "RESTORE_JOB_STARTED",
+        "RESTORE_JOB_COMPLETED",
+        "RESTORE_JOB_SUCCESSFUL",
+        "RESTORE_JOB_FAILED",
+        "COPY_JOB_STARTED",
+        "COPY_JOB_SUCCESSFUL",
+        "COPY_JOB_FAILED",
+        "RECOVERY_POINT_MODIFIED",
+        "BACKUP_PLAN_CREATED",
+        "BACKUP_PLAN_MODIFIED",
+        "S3_BACKUP_OBJECT_FAILED",
+        "S3_RESTORE_OBJECT_FAILED"
+      ],
+      "BalancingStrategy": [
+        "SPOT_ONLY",
+        "SPOT_PREFERRED",
+        "ON_DEMAND_ONLY"
+      ],
+      "BareMetal": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "BatchStrategy": [
+        "MultiRecord",
+        "SingleRecord"
+      ],
+      "BillingMode": [
+        "PAY_PER_REQUEST",
+        "PROVISIONED"
+      ],
+      "BinPackResource": [
+        "CPU",
+        "MEMORY"
+      ],
+      "BitrateFilterKey": [
+        "audio_bitrate",
+        "video_bitrate"
+      ],
+      "BottlerocketEcsVariant": [
+        "aws-ecs-1",
+        "aws-ecs-1-nvidia",
+        "aws-ecs-2",
+        "aws-ecs-2-nvidia"
+      ],
+      "BrokerType": [
+        "STANDARD",
+        "EXPRESS"
+      ],
+      "BrowserSigning": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "BrowserType": [
+        "CHROME",
+        "FIREFOX"
+      ],
+      "BucketAccessControl": [
+        "Private",
+        "PublicRead",
+        "PublicReadWrite",
+        "AuthenticatedRead",
+        "LogDeliveryWrite",
+        "BucketOwnerRead",
+        "BucketOwnerFullControl",
+        "AwsExecRead"
+      ],
+      "BucketEncryption": [
+        "UNENCRYPTED",
+        "KMS_MANAGED",
+        "S3_MANAGED",
+        "KMS",
+        "DSSE_MANAGED",
+        "DSSE"
+      ],
+      "BucketNamespace": [
+        "global",
+        "account-regional"
+      ],
+      "BucketNotificationDestinationType": [
+        0,
+        1,
+        2
+      ],
+      "BuildComputeType": [
+        "STANDARD_8GB",
+        "LARGE_16GB",
+        "XLARGE_72GB"
+      ],
+      "BuildEnvironmentVariableType": [
+        "PLAINTEXT",
+        "PARAMETER_STORE",
+        "SECRETS_MANAGER"
+      ],
+      "BundlingFileAccess": [
+        "VOLUME_COPY",
+        "BIND_MOUNT"
+      ],
+      "BundlingOutput": [
+        "archived",
+        "not-archived",
+        "auto-discover",
+        "single-file"
+      ],
+      "BurstablePerformance": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "CaaTag": [
+        "issue",
+        "issuewild",
+        "iodef"
+      ],
+      "CacheConfigType": [
+        "AMPLIFY_MANAGED",
+        "AMPLIFY_MANAGED_NO_COOKIES"
+      ],
+      "Capability": [
+        "ALL",
+        "AUDIT_CONTROL",
+        "AUDIT_WRITE",
+        "BLOCK_SUSPEND",
+        "CHOWN",
+        "DAC_OVERRIDE",
+        "DAC_READ_SEARCH",
+        "FOWNER",
+        "FSETID",
+        "IPC_LOCK",
+        "IPC_OWNER",
+        "KILL",
+        "LEASE",
+        "LINUX_IMMUTABLE",
+        "MAC_ADMIN",
+        "MAC_OVERRIDE",
+        "MKNOD",
+        "NET_ADMIN",
+        "NET_BIND_SERVICE",
+        "NET_BROADCAST",
+        "NET_RAW",
+        "SETFCAP",
+        "SETGID",
+        "SETPCAP",
+        "SETUID",
+        "SYS_ADMIN",
+        "SYS_BOOT",
+        "SYS_CHROOT",
+        "SYS_MODULE",
+        "SYS_NICE",
+        "SYS_PACCT",
+        "SYS_PTRACE",
+        "SYS_RAWIO",
+        "SYS_RESOURCE",
+        "SYS_TIME",
+        "SYS_TTY_CONFIG",
+        "SYSLOG",
+        "WAKE_ALARM"
+      ],
+      "CapacityDistributionStrategy": [
+        "balanced-only",
+        "balanced-best-effort"
+      ],
+      "CapacityMode": [
+        "FIXED",
+        "AUTOSCALED"
+      ],
+      "CapacityOptionType": [
+        "ON_DEMAND",
+        "SPOT"
+      ],
+      "CapacityType": [
+        "SPOT",
+        "ON_DEMAND",
+        "CAPACITY_BLOCK"
+      ],
+      "CatalogEncryptionMode": [
+        "DISABLED",
+        "SSE-KMS",
+        "SSE-KMS-WITH-SERVICE-ROLE"
+      ],
+      "CfnCapabilities": [
+        "",
+        "CAPABILITY_IAM",
+        "CAPABILITY_NAMED_IAM",
+        "CAPABILITY_AUTO_EXPAND"
+      ],
+      "CfnDeletionPolicy": [
+        "Delete",
+        "Retain",
+        "RetainExceptOnCreate",
+        "Snapshot"
+      ],
+      "CfnDynamicReferenceService": [
+        "ssm",
+        "ssm-secure",
+        "secretsmanager"
+      ],
+      "CfnParsingContext": [
+        0,
+        1
+      ],
+      "CfnTrafficRoutingType": [
+        "AllAtOnce",
+        "TimeBasedCanary",
+        "TimeBasedLinear"
+      ],
+      "CfnUtilsResourceType": [
+        "Custom::AWSCDKCfnJson",
+        "Custom::AWSCDKCfnJsonStringify"
+      ],
+      "ChannelType": [
+        "STANDARD",
+        "BASIC",
+        "ADVANCED_SD",
+        "ADVANCED_HD"
+      ],
+      "Charset": [
+        "ascii",
+        "utf8"
+      ],
+      "ChatMessageRole": [
+        "user",
+        "assistant"
+      ],
+      "Cleanup": [
+        "nothing",
+        "lambda"
+      ],
+      "ClientAction": [
+        "elasticfilesystem:ClientMount",
+        "elasticfilesystem:ClientWrite",
+        "elasticfilesystem:ClientRootAccess"
+      ],
+      "ClientAffinity": [
+        "NONE",
+        "SOURCE_IP"
+      ],
+      "ClientBrokerEncryption": [
+        "TLS",
+        "TLS_PLAINTEXT",
+        "PLAINTEXT"
+      ],
+      "ClientPasswordAuthType": [
+        "MYSQL_NATIVE_PASSWORD",
+        "POSTGRES_SCRAM_SHA_256",
+        "POSTGRES_MD5",
+        "SQL_SERVER_AUTHENTICATION",
+        "MYSQL_CACHING_SHA2_PASSWORD"
+      ],
+      "ClientRoutingPolicy": [
+        "availability_zone_affinity",
+        "partial_availability_zone_affinity",
+        "any_availability_zone"
+      ],
+      "ClientVpnSessionTimeout": [
+        8,
+        10,
+        12,
+        24
+      ],
+      "CloudFormationCapabilities": [
+        "",
+        "CAPABILITY_IAM",
+        "CAPABILITY_NAMED_IAM",
+        "CAPABILITY_AUTO_EXPAND"
+      ],
+      "CloudFrontAllowedCachedMethods": [
+        "GH",
+        "GHO"
+      ],
+      "CloudFrontAllowedMethods": [
+        "GH",
+        "GHO",
+        "ALL"
+      ],
+      "CloudWatchDimensionSource": [
+        "emailHeader",
+        "linkTag",
+        "messageTag"
+      ],
+      "ClusterLoggingTypes": [
+        "api",
+        "audit",
+        "authenticator",
+        "controllerManager",
+        "scheduler"
+      ],
+      "ClusterMonitoringLevel": [
+        "DEFAULT",
+        "PER_BROKER",
+        "PER_TOPIC_PER_BROKER",
+        "PER_TOPIC_PER_PARTITION"
+      ],
+      "ClusterScailabilityType": [
+        "standard",
+        "limitless"
+      ],
+      "ClusterScalabilityType": [
+        "standard",
+        "limitless"
+      ],
+      "ClusterType": [
+        "single-node",
+        "multi-node"
+      ],
+      "CmafDrmSystem": [
+        "FAIRPLAY",
+        "PLAYREADY",
+        "WIDEVINE",
+        "IRDETO"
+      ],
+      "CmafEncryptionMethod": [
+        "CENC",
+        "CBCS"
+      ],
+      "CodeBuildActionType": [
+        0,
+        1
+      ],
+      "CodeBuildProjectType": [
+        "SYNTH",
+        "ASSETS",
+        "SELF_MUTATE",
+        "STEP"
+      ],
+      "CodeCommitTrigger": [
+        "None",
+        "Poll",
+        "Events"
+      ],
+      "ColumnCountMismatchHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW"
+      ],
+      "ColumnEncoding": [
+        "AUTO",
+        "RAW",
+        "AZ64",
+        "BYTEDICT",
+        "DELTA",
+        "DELTA32K",
+        "LZO",
+        "MOSTLY8",
+        "MOSTLY16",
+        "MOSTLY32",
+        "RUNLENGTH",
+        "TEXT255",
+        "TEXT32K",
+        "ZSTD"
+      ],
+      "ComparisonOperator": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6,
+        7,
+        8,
+        9,
+        10,
+        11,
+        12,
+        13,
+        14,
+        15,
+        16,
+        17,
+        18,
+        19,
+        20,
+        21,
+        22,
+        23,
+        24,
+        25,
+        26,
+        27,
+        28,
+        29,
+        30,
+        31,
+        32,
+        33,
+        34,
+        35,
+        36,
+        37,
+        38
+      ],
+      "Compatibility": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6,
+        7
+      ],
+      "ComponentAction": [
+        "AppendFile",
+        "Assert",
+        "CopyFile",
+        "CopyFolder",
+        "CreateFile",
+        "CreateFolder",
+        "CreateSymlink",
+        "DeleteFile",
+        "DeleteFolder",
+        "ExecuteBash",
+        "ExecuteBinary",
+        "ExecuteDocument",
+        "ExecutePowerShell",
+        "InstallMSI",
+        "ListFiles",
+        "MoveFile",
+        "MoveFolder",
+        "ReadFile",
+        "Reboot",
+        "SetFileEncoding",
+        "SetFileOwner",
+        "SetFolderOwner",
+        "SetFilePermissions",
+        "SetFolderPermissions",
+        "SetRegistry",
+        "S3Download",
+        "S3Upload",
+        "UninstallMSI",
+        "UpdateOS",
+        "WebDownload"
+      ],
+      "ComponentOnFailure": [
+        "Abort",
+        "Continue",
+        "Ignore"
+      ],
+      "ComponentParameterType": [
+        "string"
+      ],
+      "ComponentPhaseName": [
+        "build",
+        "container-host-test",
+        "test",
+        "validate"
+      ],
+      "ComponentSchemaVersion": [
+        "1.0"
+      ],
+      "ComponentType": [
+        "Function",
+        "SingletonFunction",
+        "CustomResourceProvider",
+        "NoOp"
+      ],
+      "CompoundOperator": [
+        0,
+        1
+      ],
+      "CompressionType": [
+        "None",
+        "Gzip"
+      ],
+      "ComputePlatform": [
+        "AWSLambda",
+        "Default"
+      ],
+      "ComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "BUILD_LAMBDA_1GB",
+        "BUILD_LAMBDA_2GB",
+        "BUILD_LAMBDA_4GB",
+        "BUILD_LAMBDA_8GB",
+        "BUILD_LAMBDA_10GB",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "ConditionLogicalOperator": [
+        "EQUALS"
+      ],
+      "ConfigurationSetTlsPolicy": [
+        "REQUIRE",
+        "OPTIONAL"
+      ],
+      "ConfigurationSourceType": [
+        "S3",
+        "SECRETS_MANAGER",
+        "SSM_PARAMETER",
+        "SSM_DOCUMENT",
+        "CODE_PIPELINE"
+      ],
+      "ConfigurationType": [
+        "AWS.Freeform",
+        "AWS.AppConfig.FeatureFlags"
+      ],
+      "ConnectionProtocol": [
+        "TCP",
+        "UDP"
+      ],
+      "ConnectionType": [
+        "INTERNET",
+        "VPC_LINK"
+      ],
+      "ConsumableResourceType": [
+        "REPLENISHABLE",
+        "NON_REPLENISHABLE"
+      ],
+      "ContainerDependencyCondition": [
+        "START",
+        "COMPLETE",
+        "SUCCESS",
+        "HEALTHY"
+      ],
+      "ContainerFormat": [
+        "TS",
+        "FRAGMENTED_MP4"
+      ],
+      "ContainerInsights": [
+        "enabled",
+        "disabled",
+        "enhanced"
+      ],
+      "ContainerProviderTypes": [
+        "EKS"
+      ],
+      "ContainerType": [
+        "TS",
+        "CMAF",
+        "ISM"
+      ],
+      "ContentFilterStrength": [
+        "NONE",
+        "LOW",
+        "MEDIUM",
+        "HIGH"
+      ],
+      "ContentFilterType": [
+        "SEXUAL",
+        "VIOLENCE",
+        "HATE",
+        "INSULTS",
+        "MISCONDUCT",
+        "PROMPT_ATTACK"
+      ],
+      "ContentHandling": [
+        "CONVERT_TO_BINARY",
+        "CONVERT_TO_TEXT"
+      ],
+      "ContentType": [
+        "text/plain",
+        "text/css",
+        "text/html",
+        "application/javascript",
+        "application/json"
+      ],
+      "ContextualGroundingFilterType": [
+        "GROUNDING",
+        "RELEVANCE"
+      ],
+      "Continent": [
+        "AF",
+        "AN",
+        "AS",
+        "EU",
+        "OC",
+        "NA",
+        "SA"
+      ],
+      "ContributorInsightsMode": [
+        "ACCESSED_AND_THROTTLED_KEYS",
+        "THROTTLED_KEYS"
+      ],
+      "ControlPlaneScalingTier": [
+        "standard",
+        "tier-xl",
+        "tier-2xl",
+        "tier-4xl",
+        "tier-8xl"
+      ],
+      "CoreDnsComputeType": [
+        "ec2",
+        "fargate"
+      ],
+      "CorsHttpMethod": [
+        "*",
+        "DELETE",
+        "GET",
+        "HEAD",
+        "OPTIONS",
+        "PATCH",
+        "POST",
+        "PUT"
+      ],
+      "CountType": [
+        "imageCountMoreThan",
+        "sinceImagePushed"
+      ],
+      "CpuArch": [
+        "arm64",
+        "x86_64"
+      ],
+      "CpuCredits": [
+        "standard",
+        "unlimited"
+      ],
+      "CpuManufacturer": [
+        "intel",
+        "amd",
+        "amazon-web-services",
+        "apple"
+      ],
+      "CrawlerState": [
+        "RUNNING",
+        "CANCELLING",
+        "CANCELLED",
+        "SUCCEEDED",
+        "FAILED",
+        "ERROR"
+      ],
+      "CredentialProviderType": [
+        "API_KEY",
+        "OAUTH",
+        "GATEWAY_IAM_ROLE"
+      ],
+      "CrossRegionInferenceProfileRegion": [
+        "global",
+        "eu",
+        "us",
+        "us-gov",
+        "apac",
+        "jp",
+        "au"
+      ],
+      "CsvDelimiter": [
+        "COMMA",
+        "PIPE",
+        "SEMICOLON",
+        "SPACE",
+        "TAB"
+      ],
+      "CsvHeaderLocation": [
+        "FIRST_ROW",
+        "GIVEN"
+      ],
+      "CustomClaimOperator": [
+        "EQUALS",
+        "CONTAINS",
+        "CONTAINS_ANY"
+      ],
+      "CustomClaimValueType": [
+        "STRING",
+        "STRING_ARRAY"
+      ],
+      "CustomControl": [
+        "RETURN_CONTROL"
+      ],
+      "CustomLambdaDeploymentConfigType": [
+        "Canary",
+        "Linear"
+      ],
+      "CustomLayer": [
+        "POI"
+      ],
+      "CustomResourceProviderRuntime": [
+        "nodejs12.x",
+        "deprecated_nodejs12.x",
+        "nodejs14.x",
+        "nodejs16.x",
+        "nodejs18.x",
+        "nodejs20.x",
+        "nodejs22.x",
+        "nodejs24.x"
+      ],
+      "CustomThreatProtectionMode": [
+        "ENFORCED",
+        "AUDIT"
+      ],
+      "CustomizationType": [
+        "FINE_TUNING",
+        "CONTINUED_PRE_TRAINING",
+        "DISTILLATION"
+      ],
+      "DBClusterStorageType": [
+        "aurora",
+        "aurora-iopt1"
+      ],
+      "DashManifestCompactness": [
+        "STANDARD",
+        "NONE"
+      ],
+      "DashPeriodTriggers": [
+        "AVAILS",
+        "DRM_KEY_ROTATION",
+        "SOURCE_CHANGES",
+        "SOURCE_DISRUPTIONS",
+        "NONE"
+      ],
+      "DashUtcTimingMode": [
+        "HTTP_HEAD",
+        "HTTP_ISO",
+        "HTTP_XSDATE",
+        "UTC_DIRECT"
+      ],
+      "DataConverterType": [
+        0,
+        1
+      ],
+      "DataResourceType": [
+        "AWS::Lambda::Function",
+        "AWS::S3::Object"
+      ],
+      "DataSource": [
+        "Esri",
+        "Grab",
+        "Here"
+      ],
+      "DataSourceLevelMetricsBehavior": [
+        "FULL_REQUEST_DATA_SOURCE_METRICS",
+        "PER_DATA_SOURCE_METRICS"
+      ],
+      "DataSourceMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "DataStorageUnit": [
+        "GB"
+      ],
+      "DatabaseInsightsMode": [
+        "standard",
+        "advanced"
+      ],
+      "DateIntervalUnit": [
+        "YEARS",
+        "MONTHS",
+        "WEEKS",
+        "DAYS",
+        "HOURS",
+        "MINUTES",
+        "SECONDS"
+      ],
+      "DateTimeFormat": [
+        "yyyy-MM-dd'T'HH:mm:ss'Z'",
+        "epoch",
+        "custom"
+      ],
+      "DayOfWeek": [
+        "SUN",
+        "MON",
+        "TUE",
+        "WED",
+        "THU",
+        "FRI",
+        "SAT",
+        "UNSET_VALUE"
+      ],
+      "DeduplicationScope": [
+        "messageGroup",
+        "queue"
+      ],
+      "DefaultAuthScheme": [
+        "IAM_AUTH",
+        "NONE"
+      ],
+      "DefaultCapacityType": [
+        0,
+        1,
+        2
+      ],
+      "DefaultInstanceClass": [
+        "default_x86_64",
+        "default_arm64"
+      ],
+      "DefaultInstanceTenancy": [
+        "default",
+        "dedicated",
+        "host"
+      ],
+      "DefaultResult": [
+        "CONTINUE",
+        "ABANDON"
+      ],
+      "DeleteOption": [
+        "SAFE_DELETE",
+        "FORCE_DELETE",
+        "RETAIN"
+      ],
+      "DeletionProtection": [
+        "none",
+        "prevent-force-deletion",
+        "prevent-all-deletion"
+      ],
+      "DeletionProtectionCheck": [
+        "ACCOUNT_DEFAULT",
+        "APPLY",
+        "BYPASS"
+      ],
+      "DelimiterCharacter": [
+        ",",
+        "	",
+        " ",
+        ";",
+        "|"
+      ],
+      "DependenciesFile": [
+        "requirements.txt",
+        "poetry.lock",
+        "Pipfile.lock",
+        "uv.lock",
+        ""
+      ],
+      "DeploymentControllerType": [
+        "ECS",
+        "CODE_DEPLOY",
+        "EXTERNAL"
+      ],
+      "DeploymentLifecycleStage": [
+        "RECONCILE_SERVICE",
+        "PRE_SCALE_UP",
+        "POST_SCALE_UP",
+        "TEST_TRAFFIC_SHIFT",
+        "POST_TEST_TRAFFIC_SHIFT",
+        "PRODUCTION_TRAFFIC_SHIFT",
+        "POST_PRODUCTION_TRAFFIC_SHIFT"
+      ],
+      "DeploymentStrategy": [
+        "ROLLING",
+        "BLUE_GREEN",
+        "LINEAR",
+        "CANARY"
+      ],
+      "DesiredState": [
+        "RUNNING",
+        "STOPPED"
+      ],
+      "DestinationType": [
+        "Failure",
+        "Success"
+      ],
+      "DesyncMitigationMode": [
+        "monitor",
+        "defensive",
+        "strictest"
+      ],
+      "DetailType": [
+        "BASIC",
+        "FULL"
+      ],
+      "DevicePermission": [
+        "read",
+        "write",
+        "mknod"
+      ],
+      "DiscoveryType": [
+        "API",
+        "DNS_AND_API"
+      ],
+      "Distribution": [
+        "ByLogStream",
+        "Random"
+      ],
+      "DnsPolicy": [
+        "Default",
+        "ClusterFirst",
+        "ClusterFirstWithHostNet"
+      ],
+      "DnsRecordType": [
+        "A",
+        "AAAA",
+        "A, AAAA",
+        "SRV",
+        "CNAME"
+      ],
+      "DnsResponseType": [
+        "LOADBALANCER",
+        "ENDPOINTS"
+      ],
+      "DockerCredentialUsage": [
+        "SYNTH",
+        "SELF_UPDATE",
+        "ASSET_PUBLISHING"
+      ],
+      "DockerServerComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "BUILD_LAMBDA_10GB",
+        "BUILD_LAMBDA_1GB",
+        "BUILD_LAMBDA_2GB",
+        "BUILD_LAMBDA_4GB",
+        "BUILD_LAMBDA_8GB",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "DockerVolumeConsistency": [
+        "consistent",
+        "delegated",
+        "cached"
+      ],
+      "DriveCacheType": [
+        "NONE",
+        "READ"
+      ],
+      "DrmSettingsKey": [
+        "exclude_session_keys"
+      ],
+      "DrmSignalling": [
+        "INDIVIDUAL",
+        "REFERENCED"
+      ],
+      "DynamoConsumedCapacity": [
+        "INDEXES",
+        "TOTAL",
+        "NONE"
+      ],
+      "DynamoDBStartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST"
+      ],
+      "DynamoItemCollectionMetrics": [
+        "SIZE",
+        "NONE"
+      ],
+      "DynamoMethod": [
+        "Get",
+        "Put",
+        "Delete",
+        "Update"
+      ],
+      "DynamoReturnValues": [
+        "NONE",
+        "ALL_OLD",
+        "UPDATED_OLD",
+        "ALL_NEW",
+        "UPDATED_NEW"
+      ],
+      "EasyDkimSigningKeyLength": [
+        "RSA_1024_BIT",
+        "RSA_2048_BIT"
+      ],
+      "EbsDeviceVolumeType": [
+        "standard",
+        "io1",
+        "io2",
+        "gp2",
+        "gp3",
+        "st1",
+        "sc1",
+        "gp2",
+        "gp3",
+        "io1",
+        "io2",
+        "st1",
+        "sc1",
+        "standard"
+      ],
+      "EbsPropagatedTagSource": [
+        "SERVICE",
+        "TASK_DEFINITION"
+      ],
+      "Ec2InstanceAction": [
+        "stop",
+        "terminate",
+        "recover",
+        "reboot"
+      ],
+      "Ec2InstanceType": [
+        "EC2",
+        "SSM_MANAGED_NODE"
+      ],
+      "EcsMachineImageType": [
+        "ECS_AL2",
+        "ECS_AL2023",
+        "ECS_AL2_NVIDIA",
+        "ECS_AL2023_NVIDIA"
+      ],
+      "Effect": [
+        "Allow",
+        "Deny"
+      ],
+      "EksMachineImageType": [
+        "EKS_AL2",
+        "EKS_AL2_NVIDIA",
+        "EKS_AL2023",
+        "EKS_AL2023_NVIDIA"
+      ],
+      "EmailEncoding": [
+        "Base64",
+        "UTF-8"
+      ],
+      "EmailSendingEvent": [
+        "send",
+        "reject",
+        "bounce",
+        "complaint",
+        "delivery",
+        "open",
+        "click",
+        "renderingFailure",
+        "deliveryDelay",
+        "subscription"
+      ],
+      "EmptyDirMediumType": [
+        "",
+        "Memory"
+      ],
+      "EncodingProfile": [
+        "CONTRIBUTION_H264_DEFAULT",
+        "DISTRIBUTION_H264_DEFAULT"
+      ],
+      "EncryptionKeyType": [
+        "SECRETS_MANAGER",
+        "AUTOMATIC"
+      ],
+      "EncryptionOption": [
+        "SSE_S3",
+        "SSE_KMS",
+        "CSE_KMS"
+      ],
+      "EndpointAccessMode": [
+        "STRICT",
+        "BASIC"
+      ],
+      "EndpointErrorConfiguration": [
+        "STALE_MANIFEST",
+        "INCOMPLETE_MANIFEST",
+        "MISSING_DRM_KEY",
+        "SLATE_INPUT"
+      ],
+      "EndpointType": [
+        "EDGE",
+        "REGIONAL"
+      ],
+      "EngineLifecycleSupport": [
+        "open-source-rds-extended-support",
+        "open-source-rds-extended-support-disabled"
+      ],
+      "EntitlementStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "EnvironmentFileType": [
+        "s3"
+      ],
+      "EnvironmentType": [
+        "ARM_CONTAINER",
+        "LINUX_CONTAINER",
+        "LINUX_GPU_CONTAINER",
+        "WINDOWS_SERVER_2019_CONTAINER",
+        "WINDOWS_SERVER_2022_CONTAINER",
+        "MAC_ARM",
+        "LINUX_EC2",
+        "ARM_EC2",
+        "WINDOWS_EC2"
+      ],
+      "EventAction": [
+        "PUSH",
+        "PULL_REQUEST_CREATED",
+        "PULL_REQUEST_UPDATED",
+        "PULL_REQUEST_CLOSED",
+        "PULL_REQUEST_MERGED",
+        "PULL_REQUEST_REOPENED",
+        "RELEASED",
+        "PRERELEASED",
+        "WORKFLOW_JOB_QUEUED"
+      ],
+      "EventEvaluation": [
+        "BATCH",
+        "SERIAL"
+      ],
+      "EventSource": [
+        "aws.config"
+      ],
+      "EventSourceMappingLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN"
+      ],
+      "EventType": [
+        "s3:ObjectCreated:*",
+        "s3:ObjectCreated:Put",
+        "s3:ObjectCreated:Post",
+        "s3:ObjectCreated:Copy",
+        "s3:ObjectCreated:CompleteMultipartUpload",
+        "s3:ObjectRemoved:*",
+        "s3:ObjectRemoved:Delete",
+        "s3:ObjectRemoved:DeleteMarkerCreated",
+        "s3:ObjectRestore:Post",
+        "s3:ObjectRestore:Completed",
+        "s3:ObjectRestore:Delete",
+        "s3:ReducedRedundancyLostObject",
+        "s3:Replication:OperationFailedReplication",
+        "s3:Replication:OperationMissedThreshold",
+        "s3:Replication:OperationReplicatedAfterThreshold",
+        "s3:Replication:OperationNotTracked",
+        "s3:LifecycleExpiration:*",
+        "s3:LifecycleExpiration:Delete",
+        "s3:LifecycleExpiration:DeleteMarkerCreated",
+        "s3:LifecycleTransition",
+        "s3:IntelligentTiering",
+        "s3:ObjectTagging:*",
+        "s3:ObjectTagging:Put",
+        "s3:ObjectTagging:Delete",
+        "s3:ObjectAcl:Put",
+        "s3:ObjectRestore:*",
+        "s3:Replication:*"
+      ],
+      "ExecuteCommandLogging": [
+        "NONE",
+        "DEFAULT",
+        "OVERRIDE"
+      ],
+      "ExecutionClass": [
+        "FLEX",
+        "STANDARD"
+      ],
+      "ExecutionMode": [
+        "QUEUED",
+        "SUPERSEDED",
+        "PARALLEL"
+      ],
+      "Failover": [
+        "PRIMARY",
+        "SECONDARY"
+      ],
+      "FailoverStatusCode": [
+        403,
+        404,
+        500,
+        502,
+        503,
+        504
+      ],
+      "FargatePlatformVersion": [
+        "LATEST",
+        "1.4.0",
+        "1.3.0",
+        "1.2.0",
+        "1.1.0",
+        "1.0.0"
+      ],
+      "FeaturePlan": [
+        "LITE",
+        "ESSENTIALS",
+        "PLUS"
+      ],
+      "FieldLogLevel": [
+        "NONE",
+        "ERROR",
+        "INFO",
+        "DEBUG",
+        "ALL"
+      ],
+      "FifoThroughputLimit": [
+        "perQueue",
+        "perMessageGroupId"
+      ],
+      "FifoThroughputScope": [
+        "Topic",
+        "MessageGroup"
+      ],
+      "FileAssetPackaging": [
+        "zip",
+        "file"
+      ],
+      "FileSystemType": [
+        "ext3",
+        "ext4",
+        "xfs",
+        "ntfs"
+      ],
+      "FileSystemTypeVersion": [
+        "2.10",
+        "2.12",
+        "2.15"
+      ],
+      "FilterOrPolicyType": [
+        0,
+        1
+      ],
+      "FirehoseRecordSeparator": [
+        "\n",
+        "	",
+        "\r\n",
+        ","
+      ],
+      "FirelensConfigFileType": [
+        "s3",
+        "file"
+      ],
+      "FirelensLogRouterType": [
+        "fluentbit",
+        "fluentd"
+      ],
+      "FlagType": [
+        0,
+        1,
+        2,
+        3
+      ],
+      "FleetComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "FleetOverflowBehavior": [
+        "QUEUE",
+        "ON_DEMAND"
+      ],
+      "FlowLogDestinationType": [
+        "cloud-watch-logs",
+        "s3",
+        "kinesis-data-firehose"
+      ],
+      "FlowLogFileFormat": [
+        "plain-text",
+        "parquet"
+      ],
+      "FlowLogMaxAggregationInterval": [
+        60,
+        600
+      ],
+      "FlowLogTrafficType": [
+        "ACCEPT",
+        "ALL",
+        "REJECT"
+      ],
+      "FlowOutputProtocol": [
+        "zixi-push",
+        "rtp-fec",
+        "rtp",
+        "zixi-pull",
+        "rist",
+        "srt-listener",
+        "srt-caller",
+        "ndi-speed-hq"
+      ],
+      "FollowMode": [
+        "never",
+        "always",
+        "external",
+        "internal-only"
+      ],
+      "ForwardErrorCorrection": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Frequency": [
+        "DAILY",
+        "WEEKLY",
+        "BIWEEKLY",
+        "MONTHLY"
+      ],
+      "FunctionEventType": [
+        "viewer-request",
+        "viewer-response"
+      ],
+      "FunctionRuntimeFamily": [
+        "APPSYNC_JS"
+      ],
+      "FunctionUrlAuthType": [
+        "AWS_IAM",
+        "NONE"
+      ],
+      "GatewayAuthorizerType": [
+        "CUSTOM_JWT",
+        "AWS_IAM",
+        "NONE"
+      ],
+      "GatewayExceptionLevel": [
+        "DEBUG"
+      ],
+      "GatewayProtocolType": [
+        "MCP"
+      ],
+      "GatewayTargetProtocolType": [
+        "MCP"
+      ],
+      "GelfCompressionType": [
+        "gzip",
+        "zlib",
+        "none"
+      ],
+      "GitHubTrigger": [
+        "None",
+        "Poll",
+        "WebHook"
+      ],
+      "GitPullRequestEvent": [
+        "OPEN",
+        "UPDATED",
+        "CLOSED"
+      ],
+      "GlobalTableSettingsReplicationMode": [
+        "ENABLED"
+      ],
+      "GlueVersion": [
+        "0.9",
+        "1.0",
+        "2.0",
+        "3.0",
+        "4.0",
+        "5.0",
+        "5.1",
+        "6.0"
+      ],
+      "GraphWidgetView": [
+        "timeSeries",
+        "bar",
+        "pie"
+      ],
+      "GrowthType": [
+        "LINEAR",
+        "EXPONENTIAL"
+      ],
+      "GrpcRetryEvent": [
+        "cancelled",
+        "deadline-exceeded",
+        "internal",
+        "resource-exhausted",
+        "unavailable"
+      ],
+      "GuardrailAction": [
+        "BLOCK",
+        "ANONYMIZE",
+        "NONE"
+      ],
+      "HandlerBehavior": [
+        "CODE",
+        "DIRECT"
+      ],
+      "HandlerName": [
+        "user",
+        "table",
+        "user-table-privileges"
+      ],
+      "HeadersFrameOption": [
+        "DENY",
+        "SAMEORIGIN"
+      ],
+      "HeadersReferrerPolicy": [
+        "no-referrer",
+        "no-referrer-when-downgrade",
+        "origin",
+        "origin-when-cross-origin",
+        "same-origin",
+        "strict-origin",
+        "strict-origin-when-cross-origin",
+        "unsafe-url"
+      ],
+      "HealthCheckProtocol": [
+        "TCP",
+        "HTTP",
+        "HTTPS"
+      ],
+      "HealthCheckProtocolType": [
+        "HTTP",
+        "TCP"
+      ],
+      "HealthCheckType": [
+        "HTTP",
+        "HTTPS",
+        "TCP"
+      ],
+      "HostKernel": [
+        "LINUX_KERNEL_4",
+        "LINUX_KERNEL_6",
+        "LINUX_KERNEL_LATEST"
+      ],
+      "HttpAuthorizerType": [
+        "AWS_IAM",
+        "JWT",
+        "REQUEST"
+      ],
+      "HttpBackupMode": [
+        "FailedDataOnly",
+        "AllData"
+      ],
+      "HttpCodeElb": [
+        "HTTPCode_ELB_3XX_Count",
+        "HTTPCode_ELB_4XX_Count",
+        "HTTPCode_ELB_5XX_Count",
+        "HTTPCode_ELB_500_Count",
+        "HTTPCode_ELB_502_Count",
+        "HTTPCode_ELB_503_Count",
+        "HTTPCode_ELB_504_Count"
+      ],
+      "HttpCodeTarget": [
+        "HTTPCode_Target_2XX_Count",
+        "HTTPCode_Target_3XX_Count",
+        "HTTPCode_Target_4XX_Count",
+        "HTTPCode_Target_5XX_Count"
+      ],
+      "HttpCompression": [
+        "GZIP",
+        "NONE"
+      ],
+      "HttpConnectionType": [
+        "VPC_LINK",
+        "INTERNET"
+      ],
+      "HttpIntegrationSubtype": [
+        "EventBridge-PutEvents",
+        "SQS-SendMessage",
+        "SQS-ReceiveMessage",
+        "SQS-DeleteMessage",
+        "SQS-PurgeQueue",
+        "AppConfig-GetConfiguration",
+        "Kinesis-PutRecord",
+        "StepFunctions-StartExecution",
+        "StepFunctions-StartSyncExecution",
+        "StepFunctions-StopExecution"
+      ],
+      "HttpIntegrationType": [
+        "HTTP_PROXY",
+        "AWS_PROXY"
+      ],
+      "HttpLambdaResponseType": [
+        0,
+        1
+      ],
+      "HttpMethod": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD",
+        "OPTIONS"
+      ],
+      "HttpMethods": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD"
+      ],
+      "HttpRetryEvent": [
+        "server-error",
+        "gateway-error",
+        "client-error",
+        "stream-error"
+      ],
+      "HttpRouteAuthorizationType": [
+        "AWS_IAM",
+        "JWT",
+        "CUSTOM",
+        "NONE"
+      ],
+      "HttpRouteMethod": [
+        "GET",
+        "HEAD",
+        "POST",
+        "PUT",
+        "DELETE",
+        "CONNECT",
+        "OPTIONS",
+        "TRACE",
+        "PATCH"
+      ],
+      "HttpRouteProtocol": [
+        "http",
+        "https"
+      ],
+      "HttpTokens": [
+        "optional",
+        "required"
+      ],
+      "HttpVersion": [
+        "http1.1",
+        "http2",
+        "http2and3",
+        "http3"
+      ],
+      "HttpsPolicy": [
+        "REQUIRE",
+        "REQUIRE_OPEN_ONLY",
+        "OPTIONAL"
+      ],
+      "IdentityPoolProviderType": [
+        "Facebook",
+        "Google",
+        "Amazon",
+        "Apple",
+        "Twitter",
+        "OpenId",
+        "Saml",
+        "UserPool",
+        "Custom"
+      ],
+      "IdentityType": [
+        "IRSA",
+        "POD_IDENTITY"
+      ],
+      "IgnoreMode": [
+        "glob",
+        "git",
+        "docker"
+      ],
+      "ImageArchitecture": [
+        "arm64",
+        "x86_64"
+      ],
+      "ImageId": [
+        "amazonlinux-2-x86_64",
+        "amazonlinux-2023-x86_64",
+        "ubuntu-18.04-x86_64",
+        "ubuntu-22.04-x86_64"
+      ],
+      "ImagePipelineStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ImagePullPolicy": [
+        "Always",
+        "IfNotPresent",
+        "Never"
+      ],
+      "ImagePullPrincipalType": [
+        "CODEBUILD",
+        "SERVICE_ROLE"
+      ],
+      "ImageRepositoryType": [
+        "ECR_PUBLIC",
+        "ECR"
+      ],
+      "ImageType": [
+        "AMI",
+        "DOCKER"
+      ],
+      "IncludeDetail": [
+        "FULL",
+        "NONE"
+      ],
+      "IncludeExecutionData": [
+        "ALL"
+      ],
+      "InferenceProfileType": [
+        "SYSTEM_DEFINED",
+        "APPLICATION"
+      ],
+      "IngestEndpoint": [
+        1,
+        2
+      ],
+      "InitElementType": [
+        "PACKAGE",
+        "GROUP",
+        "USER",
+        "SOURCE",
+        "FILE",
+        "COMMAND",
+        "SERVICE"
+      ],
+      "InitPlatform": [
+        "WINDOWS",
+        "LINUX"
+      ],
+      "InputCompressionType": [
+        "GZIP",
+        "ZSTD",
+        "NONE"
+      ],
+      "InputMode": [
+        "Pipe",
+        "File",
+        "FastFile"
+      ],
+      "InputType": [
+        0,
+        1
+      ],
+      "InstanceArchitecture": [
+        "arm64",
+        "x86_64"
+      ],
+      "InstanceClass": [
+        "standard3",
+        "m3",
+        "standard4",
+        "m4",
+        "standard5",
+        "m5",
+        "standard5-nvme-drive",
+        "m5d",
+        "standard5-amd",
+        "m5a",
+        "standard5-amd-nvme-drive",
+        "m5ad",
+        "standard5-high-performance",
+        "m5n",
+        "standard5-nvme-drive-high-performance",
+        "m5dn",
+        "standard5-high-compute",
+        "m5zn",
+        "memory3",
+        "r3",
+        "memory4",
+        "r4",
+        "memory5",
+        "r5",
+        "memory6-amd",
+        "r6a",
+        "memory6-intel",
+        "r6i",
+        "memory6-intel-nvme-drive",
+        "r6id",
+        "memory6-intel-high-performance",
+        "r6in",
+        "memory6-intel-nvme-drive-high-performance",
+        "r6idn",
+        "memory5-high-performance",
+        "r5n",
+        "memory5-nvme-drive",
+        "r5d",
+        "memory5-nvme-drive-high-performance",
+        "r5dn",
+        "memory5-amd",
+        "r5a",
+        "memory5-amd-nvme-drive",
+        "r5ad",
+        "high-memory-3tb-1",
+        "u-3tb1",
+        "high-memory-6tb-1",
+        "u-6tb1",
+        "high-memory-9tb-1",
+        "u-9tb1",
+        "high-memory-12tb-1",
+        "u-12tb1",
+        "high-memory-18tb-1",
+        "u-18tb1",
+        "high-memory-24tb-1",
+        "u-24tb1",
+        "high-memory-6tb-7",
+        "u7i-6tb",
+        "high-memory-8tb-7",
+        "u7i-8tb",
+        "high-memory-12tb-7",
+        "u7i-12tb",
+        "high-memory-high-network-16tb-7",
+        "u7in-16tb",
+        "high-memory-high-network-24tb-7",
+        "u7in-24tb",
+        "high-memory-high-network-32tb-7",
+        "u7in-32tb",
+        "high-memory-high-network-hpe-32tb-7",
+        "u7inh-32tb",
+        "memory5-ebs-optimized",
+        "r5b",
+        "memory6-graviton",
+        "r6g",
+        "memory6-graviton2-nvme-drive",
+        "r6gd",
+        "memory7-graviton",
+        "r7g",
+        "memory7-graviton3-nvme-drive",
+        "r7gd",
+        "memory7-intel-base",
+        "r7i",
+        "memory7-intel",
+        "r7iz",
+        "memory8-intel-base",
+        "r8i",
+        "memory8-intel-flex",
+        "r8i-flex",
+        "memory7-amd",
+        "r7a",
+        "memory8-amd",
+        "r8a",
+        "memory8-graviton",
+        "r8g",
+        "memory8-graviton4-nvme-drive",
+        "r8gd",
+        "memory8-graviton4-high-network-bandwidth",
+        "r8gn",
+        "memory8-graviton4-ebs-optimized",
+        "r8gb",
+        "compute3",
+        "c3",
+        "compute4",
+        "c4",
+        "compute5",
+        "c5",
+        "compute5-nvme-drive",
+        "c5d",
+        "compute5-amd",
+        "c5a",
+        "compute5-amd-nvme-drive",
+        "c5ad",
+        "compute5-high-performance",
+        "c5n",
+        "compute6-intel",
+        "c6i",
+        "compute6-intel-nvme-drive",
+        "c6id",
+        "compute6-intel-high-performance",
+        "c6in",
+        "compute6-amd",
+        "c6a",
+        "compute6-graviton2",
+        "c6g",
+        "compute7-graviton3",
+        "c7g",
+        "compute8-graviton4",
+        "c8g",
+        "compute6-graviton2-nvme-drive",
+        "c6gd",
+        "compute7-graviton3-nvme-drive",
+        "c7gd",
+        "compute8-graviton4-nvme-drive",
+        "c8gd",
+        "compute6-graviton2-high-network-bandwidth",
+        "c6gn",
+        "compute7-graviton3-high-network-bandwidth",
+        "c7gn",
+        "compute8-graviton4-high-network-bandwidth",
+        "c8gn",
+        "compute7-intel",
+        "c7i",
+        "compute7-intel-flex",
+        "c7i-flex",
+        "compute8-intel",
+        "c8i",
+        "compute8-intel-flex",
+        "c8i-flex",
+        "compute7-amd",
+        "c7a",
+        "compute8-amd",
+        "c8a",
+        "storage2",
+        "d2",
+        "storage3",
+        "d3",
+        "storage3-enhanced-network",
+        "d3en",
+        "storage-compute-1",
+        "h1",
+        "training-accelerator1",
+        "trn1",
+        "training-accelerator1-enhanced-network",
+        "trn1n",
+        "training-accelerator2",
+        "trn2",
+        "training-accelerator2-ultraserver",
+        "trn2u",
+        "io3",
+        "i3",
+        "io3-dense-nvme-drive",
+        "i3en",
+        "io4_intel",
+        "i4i",
+        "storage4_graviton",
+        "i4g",
+        "storage4-graviton-network-optimized",
+        "im4gn",
+        "storage4-graviton-network-storage-optimized",
+        "is4gen",
+        "storage7-intel-storage-optimized",
+        "i7ie",
+        "io7_intel",
+        "i7i",
+        "storage8-graviton",
+        "i8g",
+        "storage8-graviton-storage-optimized",
+        "i8ge",
+        "burstable2",
+        "t2",
+        "burstable3",
+        "t3",
+        "burstable3-amd",
+        "t3a",
+        "burstable4-graviton",
+        "t4g",
+        "memory-intensive-1",
+        "x1",
+        "memory-intensive-1-extended",
+        "x1e",
+        "memory-intensive-2-graviton2",
+        "x2g",
+        "memory-intensive-2-graviton2-nvme-drive",
+        "x2gd",
+        "memory_intensive_2_xt_intel",
+        "x2iedn",
+        "memory_intensive_2_intel",
+        "x2idn",
+        "memory_intensive_2_xtz_intel",
+        "x2iezn",
+        "memory-intensive-8-graviton",
+        "x8g",
+        "fpga1",
+        "f1",
+        "fpga2",
+        "f2",
+        "graphics3-small",
+        "g3s",
+        "graphics3",
+        "g3",
+        "graphics4-nvme-drive-high-performance",
+        "g4dn",
+        "graphics4-amd-nvme-drive",
+        "g4ad",
+        "graphics5",
+        "g5",
+        "graphics5-graviton2",
+        "g5g",
+        "graphics6",
+        "g6",
+        "graphics6-efficient",
+        "g6e",
+        "graphics7-efficient",
+        "g7e",
+        "graphics-ram-6",
+        "gr6",
+        "parallel2",
+        "p2",
+        "parallel3",
+        "p3",
+        "parallel3-nvme-drive-high-performance",
+        "p3dn",
+        "parallel4-nvme-drive-extended",
+        "p4de",
+        "parallel4",
+        "p4d",
+        "parallel5",
+        "p5",
+        "parallel5-extended",
+        "p5e",
+        "parallel5-extended-network",
+        "p5en",
+        "arm1",
+        "a1",
+        "standard6-graviton",
+        "m6g",
+        "standard6-intel",
+        "m6i",
+        "standard6-intel-nvme-drive",
+        "m6id",
+        "standard6-intel-high-performance",
+        "m6in",
+        "standard6-intel-nvme-drive-high-performance",
+        "m6idn",
+        "standard6-amd",
+        "m6a",
+        "standard6-graviton2-nvme-drive",
+        "m6gd",
+        "standard7-graviton",
+        "m7g",
+        "standard8-graviton",
+        "m8g",
+        "standard7-graviton3-nvme-drive",
+        "m7gd",
+        "standard8-graviton4-nvme-drive",
+        "m8gd",
+        "standard8-intel",
+        "m8i",
+        "standard8-intel-flex",
+        "m8i-flex",
+        "standard7-intel",
+        "m7i",
+        "standard7-intel-flex",
+        "m7i-flex",
+        "standard7-amd",
+        "m7a",
+        "standard8-amd",
+        "m8a",
+        "standard9-graviton",
+        "m9g",
+        "high-compute-memory1",
+        "z1d",
+        "inference1",
+        "inf1",
+        "inference2",
+        "inf2",
+        "macintosh1-intel",
+        "mac1",
+        "macintosh2-m1",
+        "mac2",
+        "macintosh2-m2",
+        "mac2-m2",
+        "macintosh2-m2-pro",
+        "mac2-m2pro",
+        "macintosh2-m1-ultra",
+        "mac2-m1ultra",
+        "video-transcoding1",
+        "vt1",
+        "high-performance-computing6-amd",
+        "hpc6a",
+        "high-performance-computing6-intel-nvme-drive",
+        "hpc6id",
+        "high-performance-computing7-amd",
+        "hpc7a",
+        "high-performance-computing7-graviton",
+        "hpc7g",
+        "deep-learning1",
+        "dl1",
+        "deep-learning2-qualcomm",
+        "dl2q"
+      ],
+      "InstanceGeneration": [
+        "current",
+        "previous"
+      ],
+      "InstanceInitiatedShutdownBehavior": [
+        "stop",
+        "terminate"
+      ],
+      "InstanceMonitoring": [
+        "BASIC",
+        "DETAILED"
+      ],
+      "InstanceRefreshStrategy": [
+        "Rolling",
+        "ReplaceRootVolume"
+      ],
+      "InstanceSize": [
+        "nano",
+        "micro",
+        "small",
+        "medium",
+        "large",
+        "xlarge",
+        "2xlarge",
+        "3xlarge",
+        "4xlarge",
+        "6xlarge",
+        "8xlarge",
+        "9xlarge",
+        "10xlarge",
+        "12xlarge",
+        "16xlarge",
+        "18xlarge",
+        "24xlarge",
+        "32xlarge",
+        "48xlarge",
+        "56xlarge",
+        "96xlarge",
+        "112xlarge",
+        "224xlarge",
+        "480xlarge",
+        "metal",
+        "metal-16xl",
+        "metal-24xl",
+        "metal-32xl",
+        "metal-48xl"
+      ],
+      "InstanceType": [
+        "PROVISIONED",
+        "SERVERLESS_V2"
+      ],
+      "InstanceUpdateBehaviour": [
+        "BULK",
+        "ROLLING"
+      ],
+      "InsufficientDataHealthStatusEnum": [
+        "Healthy",
+        "Unhealthy",
+        "LastKnownStatus"
+      ],
+      "IntegrationPattern": [
+        "REQUEST_RESPONSE",
+        "RUN_JOB",
+        "WAIT_FOR_TASK_TOKEN"
+      ],
+      "IntegrationType": [
+        "AWS",
+        "AWS_PROXY",
+        "HTTP",
+        "HTTP_PROXY",
+        "MOCK"
+      ],
+      "IntendedUse": [
+        "SingleUse",
+        "Storage"
+      ],
+      "InterceptionPoint": [
+        "REQUEST",
+        "RESPONSE"
+      ],
+      "IntrospectionConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "InvalidCharHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW",
+        "REPLACE"
+      ],
+      "InventoryFormat": [
+        "CSV",
+        "Parquet",
+        "ORC"
+      ],
+      "InventoryFrequency": [
+        "Daily",
+        "Weekly"
+      ],
+      "InventoryObjectVersion": [
+        "All",
+        "Current"
+      ],
+      "InvocationHttpResponseCode": [
+        "Invocation4XXErrors",
+        "Invocation5XXErrors"
+      ],
+      "InvocationType": [
+        "RequestResponse",
+        "Event",
+        "DryRun"
+      ],
+      "InvokeMode": [
+        "BUFFERED",
+        "RESPONSE_STREAM"
+      ],
+      "IpAddressType": [
+        "ipv4",
+        "dualstack",
+        "dualstack-without-public-ipv4"
+      ],
+      "IpFamily": [
+        "ipv4",
+        "ipv6"
+      ],
+      "IpPreference": [
+        "IPv4_ONLY",
+        "IPv4_PREFERRED",
+        "IPv6_ONLY",
+        "IPv6_PREFERRED"
+      ],
+      "IpProtocol": [
+        "Ipv4_Only",
+        "Dual_Stack"
+      ],
+      "IpamPoolPublicIpSource": [
+        "byoip",
+        "amazon"
+      ],
+      "IpamScopeType": [
+        "default",
+        "custom"
+      ],
+      "IpcMode": [
+        "none",
+        "host",
+        "task"
+      ],
+      "IsmDrmSystem": [
+        "PLAYREADY"
+      ],
+      "JenkinsActionType": [
+        0,
+        1
+      ],
+      "JitterType": [
+        "FULL",
+        "NONE"
+      ],
+      "JobLanguage": [
+        "scala",
+        "python"
+      ],
+      "JobState": [
+        "SUCCEEDED",
+        "FAILED",
+        "TIMEOUT",
+        "STARTING",
+        "RUNNING",
+        "STOPPING",
+        "STOPPED"
+      ],
+      "JobStateTimeLimitActionsAction": [
+        "CANCEL",
+        "TERMINATE"
+      ],
+      "JobStateTimeLimitActionsReason": [
+        "CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY",
+        "MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE",
+        "MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT"
+      ],
+      "JobStateTimeLimitActionsState": [
+        "RUNNABLE"
+      ],
+      "JobType": [
+        "glueetl",
+        "gluestreaming",
+        "pythonshell"
+      ],
+      "JsonMutatorType": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5
+      ],
+      "JsonSchemaType": [
+        "null",
+        "boolean",
+        "object",
+        "array",
+        "number",
+        "integer",
+        "string"
+      ],
+      "JsonSchemaVersion": [
+        "http://json-schema.org/draft-04/schema#",
+        "http://json-schema.org/draft-07/schema#"
+      ],
+      "KeyPairFormat": [
+        "ppk",
+        "pem"
+      ],
+      "KeyPairType": [
+        "rsa",
+        "ed25519"
+      ],
+      "KeySigningKeyStatus": [
+        "ACTIVE",
+        "INACTIVE"
+      ],
+      "KeySpec": [
+        "SYMMETRIC_DEFAULT",
+        "RSA_2048",
+        "RSA_3072",
+        "RSA_4096",
+        "ECC_NIST_P256",
+        "ECC_NIST_P384",
+        "ECC_NIST_P521",
+        "ECC_SECG_P256K1",
+        "HMAC_224",
+        "HMAC_256",
+        "HMAC_384",
+        "HMAC_512",
+        "SM2",
+        "ML_DSA_44",
+        "ML_DSA_65",
+        "ML_DSA_87",
+        "ECC_NIST_EDWARDS25519"
+      ],
+      "KeyUsage": [
+        "ENCRYPT_DECRYPT",
+        "SIGN_VERIFY",
+        "GENERATE_VERIFY_MAC",
+        "KEY_AGREEMENT"
+      ],
+      "KeyValueDelimiter": [
+        "=",
+        ":"
+      ],
+      "KeyValuePairDelimiter": [
+        "&",
+        ";",
+        " ",
+        "\n"
+      ],
+      "KinesisStartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST",
+        "AT_TIMESTAMP"
+      ],
+      "LambdaEdgeEventType": [
+        "origin-request",
+        "origin-response",
+        "viewer-request",
+        "viewer-response"
+      ],
+      "LambdaFunctionInvocationType": [
+        "FIRE_AND_FORGET",
+        "REQUEST_RESPONSE"
+      ],
+      "LambdaInvocationType": [
+        "RequestResponse",
+        "Event",
+        "DryRun"
+      ],
+      "LambdaInvokeType": [
+        "EVENT",
+        "REQUEST_RESPONSE"
+      ],
+      "LambdaVersion": [
+        "V1_0",
+        "V2_0",
+        "V3_0"
+      ],
+      "LatencyMode": [
+        "LOW",
+        "NORMAL"
+      ],
+      "LaunchTemplateHttpTokens": [
+        "optional",
+        "required"
+      ],
+      "LaunchType": [
+        "EC2",
+        "FARGATE",
+        "EXTERNAL"
+      ],
+      "LegendPosition": [
+        "bottom",
+        "right",
+        "hidden"
+      ],
+      "Level": [
+        "INFO",
+        "ERROR",
+        "TRACE",
+        "OFF"
+      ],
+      "LibrarySet": [
+        "analytics",
+        "none"
+      ],
+      "LicenseModel": [
+        "license-included",
+        "bring-your-own-license",
+        "general-public-license"
+      ],
+      "LifecycleLabel": [
+        "OnDemand",
+        "Ec2Spot"
+      ],
+      "LifecyclePolicy": [
+        "AFTER_1_DAY",
+        "AFTER_7_DAYS",
+        "AFTER_14_DAYS",
+        "AFTER_30_DAYS",
+        "AFTER_60_DAYS",
+        "AFTER_90_DAYS",
+        "AFTER_180_DAYS",
+        "AFTER_270_DAYS",
+        "AFTER_365_DAYS"
+      ],
+      "LifecyclePolicyActionType": [
+        "DELETE",
+        "DEPRECATE",
+        "DISABLE"
+      ],
+      "LifecyclePolicyResourceType": [
+        "AMI_IMAGE",
+        "CONTAINER_IMAGE"
+      ],
+      "LifecyclePolicyStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "LifecycleTransition": [
+        "autoscaling:EC2_INSTANCE_LAUNCHING",
+        "autoscaling:EC2_INSTANCE_TERMINATING"
+      ],
+      "LinkedChannelType": [
+        "PRIMARY_CHANNEL",
+        "FOLLOWING_CHANNEL"
+      ],
+      "LoadBalancerGeneration": [
+        0,
+        1
+      ],
+      "LoadBalancerIpAddressType": [
+        "ipv4",
+        "dualstack",
+        "dualstack-without-public-ipv4"
+      ],
+      "LoadBalancingProtocol": [
+        "tcp",
+        "ssl",
+        "http",
+        "https"
+      ],
+      "LocalCacheMode": [
+        "LOCAL_SOURCE_CACHE",
+        "LOCAL_DOCKER_LAYER_CACHE",
+        "LOCAL_CUSTOM_CACHE"
+      ],
+      "LocalStorage": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "LocalStorageType": [
+        "hdd",
+        "ssd"
+      ],
+      "LockFile": [
+        "package-lock.json",
+        "yarn.lock",
+        "bun.lockb",
+        "bun.lock",
+        "pnpm-lock.yaml"
+      ],
+      "LogDestinationType": [
+        "s3",
+        "cloudwatch"
+      ],
+      "LogExport": [
+        "connectionlog",
+        "useractivitylog",
+        "userlog"
+      ],
+      "LogFormat": [
+        "Text",
+        "JSON"
+      ],
+      "LogGroupClass": [
+        "STANDARD",
+        "INFREQUENT_ACCESS",
+        "DELIVERY"
+      ],
+      "LogLevel": [
+        "OFF",
+        "ALL",
+        "ERROR",
+        "FATAL"
+      ],
+      "LogQueryLanguage": [
+        "Logs",
+        "SQL",
+        "PPL"
+      ],
+      "LogQueryVisualizationType": [
+        "table",
+        "line",
+        "stackedarea",
+        "bar",
+        "pie"
+      ],
+      "LogType": [
+        "None",
+        "Tail"
+      ],
+      "LoggingFormat": [
+        "Text",
+        "JSON"
+      ],
+      "LoggingLevel": [
+        "ERROR",
+        "INFO",
+        "NONE"
+      ],
+      "LoggingProtocol": [
+        "http/s",
+        "sqs",
+        "lambda",
+        "firehose",
+        "application"
+      ],
+      "LustreAutoImportPolicy": [
+        "NONE",
+        "NEW",
+        "NEW_CHANGED",
+        "NEW_CHANGED_DELETED"
+      ],
+      "LustreDataCompressionType": [
+        "NONE",
+        "LZ4"
+      ],
+      "LustreDeploymentType": [
+        "SCRATCH_1",
+        "SCRATCH_2",
+        "PERSISTENT_1",
+        "PERSISTENT_2"
+      ],
+      "MCPProtocolVersion": [
+        "2025-06-18",
+        "2025-03-26"
+      ],
+      "MachineImageType": [
+        0,
+        1
+      ],
+      "MachineType": [
+        "GENERAL",
+        "NVME"
+      ],
+      "MailFromBehaviorOnMxFailure": [
+        "USE_DEFAULT_VALUE",
+        "REJECT_MESSAGE"
+      ],
+      "MaintenanceDay": [
+        "MONDAY",
+        "TUESDAY",
+        "WEDNESDAY",
+        "THURSDAY",
+        "FRIDAY",
+        "SATURDAY",
+        "SUNDAY"
+      ],
+      "MaintenanceTrackName": [
+        "current",
+        "trailing"
+      ],
+      "ManagedLoginVersion": [
+        1,
+        2
+      ],
+      "ManagedWordFilterType": [
+        "PROFANITY"
+      ],
+      "ManagementEventSources": [
+        "kms.amazonaws.com",
+        "rdsdata.amazonaws.com"
+      ],
+      "MaxCapacity": [
+        0.0625,
+        1
+      ],
+      "MaximumExecutionFrequency": [
+        "One_Hour",
+        "Three_Hours",
+        "Six_Hours",
+        "Twelve_Hours",
+        "TwentyFour_Hours"
+      ],
+      "MaximumResolution": [
+        "FULL_HD",
+        "HD",
+        "SD"
+      ],
+      "McpGatewaySearchType": [
+        "SEMANTIC"
+      ],
+      "McpTargetType": [
+        "OPENAPI_SCHEMA",
+        "SMITHY_MODEL",
+        "LAMBDA",
+        "MCP_SERVER",
+        "API_GATEWAY"
+      ],
+      "MediaLivePipeline": [
+        "PIPELINE_0",
+        "PIPELINE_1"
+      ],
+      "MediaStreamType": [
+        "video",
+        "audio",
+        "ancillary-data"
+      ],
+      "MemoryStrategyType": [
+        "SUMMARIZATION",
+        "SEMANTIC",
+        "USER_PREFERENCE",
+        "EPISODIC",
+        "CUSTOM"
+      ],
+      "MemoryType": [
+        "SESSION_SUMMARY"
+      ],
+      "MergeType": [
+        "MANUAL_MERGE",
+        "AUTO_MERGE"
+      ],
+      "MeshFilterType": [
+        "ALLOW_ALL",
+        "DROP_ALL"
+      ],
+      "MessageAttributeDataType": [
+        "String",
+        "String.Array",
+        "Number",
+        "Binary"
+      ],
+      "MessageLanguage": [
+        "en",
+        "jp",
+        "zh"
+      ],
+      "MessageType": [
+        "ConfigurationItemChangeNotification",
+        "OversizedConfigurationItemChangeNotification",
+        "ScheduledNotification",
+        "ConfigurationSnapshotDeliveryCompleted"
+      ],
+      "MetadataType": [
+        "aws:cdk:analytics:construct",
+        "aws:cdk:analytics:method",
+        "aws:cdk:analytics:featureflag",
+        "aws:cdk:analytics:mixin"
+      ],
+      "MethodLoggingLevel": [
+        "OFF",
+        "ERROR",
+        "INFO"
+      ],
+      "MetricAggregationType": [
+        "Average",
+        "Minimum",
+        "Maximum"
+      ],
+      "MetricType": [
+        "EventCount",
+        "ErrorCount",
+        "KafkaMetrics"
+      ],
+      "MetricsLevel": [
+        "APPLICATION",
+        "TASK",
+        "OPERATOR",
+        "PARALLELISM"
+      ],
+      "Mfa": [
+        "OFF",
+        "OPTIONAL",
+        "ON"
+      ],
+      "ModalityType": [
+        "TEXT",
+        "IMAGE"
+      ],
+      "Mode": [
+        "SingleModel",
+        "MultiModel"
+      ],
+      "MonitorType": [
+        0,
+        1
+      ],
+      "Monitoring": [
+        0,
+        1
+      ],
+      "MqttQualityOfService": [
+        0,
+        1
+      ],
+      "MssManifestLayout": [
+        "FULL",
+        "COMPACT"
+      ],
+      "MultiRegionConsistency": [
+        "EVENTUAL",
+        "STRONG"
+      ],
+      "MutualAuthenticationMode": [
+        "off",
+        "passthrough",
+        "verify"
+      ],
+      "NamespaceType": [
+        "HTTP",
+        "DNS_PRIVATE",
+        "DNS_PUBLIC"
+      ],
+      "NatConnectivityType": [
+        "public",
+        "private"
+      ],
+      "NatTrafficDirection": [
+        "OUTBOUND_ONLY",
+        "INBOUND_AND_OUTBOUND",
+        "NONE"
+      ],
+      "NetworkLoadBalancedServiceRecordType": [
+        0,
+        1,
+        2
+      ],
+      "NetworkMode": [
+        "none",
+        "bridge",
+        "awsvpc",
+        "host",
+        "nat"
+      ],
+      "NetworkType": [
+        "IPV4",
+        "DUAL",
+        "IPV6"
+      ],
+      "NodeType": [
+        "coordinator"
+      ],
+      "NodegroupAmiType": [
+        "AL2_x86_64",
+        "AL2_x86_64_GPU",
+        "AL2_ARM_64",
+        "BOTTLEROCKET_ARM_64",
+        "BOTTLEROCKET_x86_64",
+        "BOTTLEROCKET_ARM_64_NVIDIA",
+        "BOTTLEROCKET_x86_64_NVIDIA",
+        "BOTTLEROCKET_ARM_64_FIPS",
+        "BOTTLEROCKET_x86_64_FIPS",
+        "WINDOWS_CORE_2019_x86_64",
+        "WINDOWS_CORE_2022_x86_64",
+        "WINDOWS_FULL_2019_x86_64",
+        "WINDOWS_FULL_2022_x86_64",
+        "AL2023_x86_64_STANDARD",
+        "AL2023_x86_64_NEURON",
+        "AL2023_x86_64_NVIDIA",
+        "AL2023_ARM_64_NVIDIA",
+        "AL2023_ARM_64_STANDARD"
+      ],
+      "NullOrder": [
+        "nulls-first",
+        "nulls-last"
+      ],
+      "NumericFilterKey": [
+        "audio_channels",
+        "audio_sample_rate",
+        "trickplay_height",
+        "video_framerate",
+        "video_height"
+      ],
+      "NumericOverflowHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW"
+      ],
+      "OAuth2CredentialProviderVendor": [
+        "GoogleOauth2",
+        "GithubOauth2",
+        "SlackOauth2",
+        "SalesforceOauth2",
+        "MicrosoftOauth2",
+        "CustomOauth2",
+        "AtlassianOauth2",
+        "LinkedinOauth2",
+        "XOauth2",
+        "OktaOauth2",
+        "OneLoginOauth2",
+        "PingOneOauth2",
+        "FacebookOauth2",
+        "YandexOauth2",
+        "RedditOauth2",
+        "ZoomOauth2",
+        "TwitchOauth2",
+        "SpotifyOauth2",
+        "DropboxOauth2",
+        "NotionOauth2",
+        "HubspotOauth2",
+        "CyberArkOauth2",
+        "FusionAuthOauth2",
+        "Auth0Oauth2",
+        "CognitoOauth2"
+      ],
+      "OCSFSourceType": [
+        "CloudTrail",
+        "Route53Resolver",
+        "VPCFlow",
+        "EKSAudit",
+        "AWSWAF"
+      ],
+      "OCSFVersion": [
+        "V1.1"
+      ],
+      "ObjectLockMode": [
+        "GOVERNANCE",
+        "COMPLIANCE"
+      ],
+      "ObjectOwnership": [
+        "BucketOwnerEnforced",
+        "BucketOwnerPreferred",
+        "ObjectWriter"
+      ],
+      "OidcAttributeRequestMethod": [
+        "GET",
+        "POST"
+      ],
+      "OnDemandAllocationStrategy": [
+        "prioritized",
+        "lowest-price"
+      ],
+      "OnPartialBatchItemFailure": [
+        "AUTOMATIC_BISECT"
+      ],
+      "OpenTableFormat": [
+        "ICEBERG"
+      ],
+      "OperatingSystem": [
+        "AMAZON_LINUX",
+        "AMAZON_LINUX_2",
+        "AMAZON_LINUX_2023",
+        "WINDOWS_2012",
+        "WINDOWS_2016"
+      ],
+      "OperatingSystemType": [
+        0,
+        1,
+        2
+      ],
+      "Operation": [
+        "GetItem",
+        "BatchGetItem",
+        "Scan",
+        "Query",
+        "GetRecords",
+        "PutItem",
+        "DeleteItem",
+        "UpdateItem",
+        "BatchWriteItem",
+        "TransactWriteItems",
+        "TransactGetItems",
+        "ExecuteTransaction",
+        "BatchExecuteStatement",
+        "ExecuteStatement"
+      ],
+      "OperationLevelMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Operator": [
+        "AND",
+        "OR",
+        "NOT"
+      ],
+      "OpsItemCategory": [
+        "Availability",
+        "Cost",
+        "Performance",
+        "Recovery",
+        "Security"
+      ],
+      "OpsItemSeverity": [
+        "1",
+        "2",
+        "3",
+        "4"
+      ],
+      "OrcColumnMappingType": [
+        "name",
+        "position"
+      ],
+      "OrcFormatVersion": [
+        "V0_11",
+        "V0_12"
+      ],
+      "OrchestrationType": [
+        "DEFAULT",
+        "CUSTOM_ORCHESTRATION"
+      ],
+      "OriginAccessControlOriginType": [
+        "s3",
+        "lambda",
+        "mediastore",
+        "mediapackagev2"
+      ],
+      "OriginIpAddressType": [
+        "ipv4",
+        "ipv6",
+        "dualstack"
+      ],
+      "OriginProtocolPolicy": [
+        "http-only",
+        "match-viewer",
+        "https-only"
+      ],
+      "OriginSelectionCriteria": [
+        "default",
+        "media-quality-based"
+      ],
+      "OriginSslPolicy": [
+        "SSLv3",
+        "TLSv1",
+        "TLSv1.1",
+        "TLSv1.2"
+      ],
+      "OutOfInfrequentAccessPolicy": [
+        "AFTER_1_ACCESS"
+      ],
+      "OutputFormat": [
+        "cjs",
+        "esm"
+      ],
+      "OutputLockingMode": [
+        "PIPELINE_LOCKING",
+        "EPOCH_LOCKING"
+      ],
+      "OutputType": [
+        "JSON",
+        "JSONL"
+      ],
+      "ParameterDataType": [
+        "text",
+        "aws:ec2:image"
+      ],
+      "ParameterTier": [
+        "Advanced",
+        "Intelligent-Tiering",
+        "Standard"
+      ],
+      "ParameterType": [
+        "string",
+        "number",
+        "integer",
+        "boolean",
+        "array",
+        "object"
+      ],
+      "ParameterValueType": [
+        "String",
+        "AWS::EC2::AvailabilityZone::Name",
+        "AWS::EC2::Image::Id",
+        "AWS::EC2::Instance::Id",
+        "AWS::EC2::KeyPair::KeyName",
+        "AWS::EC2::SecurityGroup::GroupName",
+        "AWS::EC2::SecurityGroup::Id",
+        "AWS::EC2::Subnet::Id",
+        "AWS::EC2::Volume::Id",
+        "AWS::EC2::VPC::Id",
+        "AWS::Route53::HostedZone::Id"
+      ],
+      "ParamsAndSecretsLogLevel": [
+        "debug",
+        "info",
+        "warn",
+        "error",
+        "none"
+      ],
+      "ParamsAndSecretsVersions": [
+        "1.0.103"
+      ],
+      "ParquetWriterVersion": [
+        "V1",
+        "V2"
+      ],
+      "ParserProcessorType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "Partition": [
+        "aws",
+        "aws-cn",
+        "aws-us-gov",
+        "aws-iso",
+        "aws-iso-b",
+        "aws-iso-f",
+        "aws-iso-e",
+        "aws-eusc"
+      ],
+      "PartitionDateSource": [
+        "EventTime",
+        "DeliveryTime"
+      ],
+      "PartitionProjectionType": [
+        "integer",
+        "date",
+        "enum",
+        "injected"
+      ],
+      "PasskeyUserVerification": [
+        "preferred",
+        "required"
+      ],
+      "PassthroughBehavior": [
+        "WHEN_NO_MATCH",
+        "NEVER",
+        "WHEN_NO_TEMPLATES"
+      ],
+      "PatchType": [
+        "json",
+        "merge",
+        "strategic"
+      ],
+      "PerformanceInsightRetention": [
+        7,
+        31,
+        62,
+        93,
+        124,
+        155,
+        186,
+        217,
+        248,
+        279,
+        310,
+        341,
+        372,
+        403,
+        434,
+        465,
+        496,
+        527,
+        558,
+        589,
+        620,
+        651,
+        682,
+        713,
+        731
+      ],
+      "PerformanceMode": [
+        "generalPurpose",
+        "maxIO"
+      ],
+      "Period": [
+        "DAY",
+        "WEEK",
+        "MONTH"
+      ],
+      "PeriodOverride": [
+        "auto",
+        "inherit"
+      ],
+      "PidMode": [
+        "host",
+        "task"
+      ],
+      "PipeVariable": [
+        "",
+        "",
+        "",
+        "",
+        "",
+        "",
+        "",
+        ""
+      ],
+      "PipelineNotificationEvents": [
+        "codepipeline-pipeline-pipeline-execution-failed",
+        "codepipeline-pipeline-pipeline-execution-canceled",
+        "codepipeline-pipeline-pipeline-execution-started",
+        "codepipeline-pipeline-pipeline-execution-resumed",
+        "codepipeline-pipeline-pipeline-execution-succeeded",
+        "codepipeline-pipeline-pipeline-execution-superseded",
+        "codepipeline-pipeline-stage-execution-started",
+        "codepipeline-pipeline-stage-execution-succeeded",
+        "codepipeline-pipeline-stage-execution-resumed",
+        "codepipeline-pipeline-stage-execution-canceled",
+        "codepipeline-pipeline-stage-execution-failed",
+        "codepipeline-pipeline-action-execution-succeeded",
+        "codepipeline-pipeline-action-execution-failed",
+        "codepipeline-pipeline-action-execution-canceled",
+        "codepipeline-pipeline-action-execution-started",
+        "codepipeline-pipeline-manual-approval-failed",
+        "codepipeline-pipeline-manual-approval-needed",
+        "codepipeline-pipeline-manual-approval-succeeded"
+      ],
+      "PipelineType": [
+        "V1",
+        "V2"
+      ],
+      "PlacementGroupSpreadLevel": [
+        "host",
+        "rack"
+      ],
+      "PlacementGroupStrategy": [
+        "cluster",
+        "partition",
+        "spread"
+      ],
+      "Platform": [
+        "x86-64",
+        "ARM64"
+      ],
+      "Policy": [
+        "ALLOW",
+        "REQUIRE"
+      ],
+      "PolicyEffect": [
+        "permit",
+        "forbid"
+      ],
+      "PolicyValidationReportStatus": [
+        "success",
+        "failure"
+      ],
+      "PolicyValidationReportStatusBeta1": [
+        "success",
+        "failure"
+      ],
+      "PoliticalView": [
+        "IND"
+      ],
+      "PoolState": [
+        "Hibernated",
+        "Running",
+        "Stopped"
+      ],
+      "PositionFiltering": [
+        "TimeBased",
+        "DistanceBased",
+        "AccuracyBased"
+      ],
+      "PredefinedMetric": [
+        "ASGAverageCPUUtilization",
+        "ASGAverageNetworkIn",
+        "ASGAverageNetworkOut",
+        "ALBRequestCountPerTarget"
+      ],
+      "PredicateLogical": [
+        "AND",
+        "ANY"
+      ],
+      "Preset": [
+        "CONSTRAINED_BANDWIDTH_DELIVERY",
+        "HIGHER_BANDWIDTH_DELIVERY"
+      ],
+      "PresetSpeke20Audio": [
+        "PRESET_AUDIO_1",
+        "PRESET_AUDIO_2",
+        "PRESET_AUDIO_3",
+        "SHARED",
+        "UNENCRYPTED"
+      ],
+      "PresetSpeke20Video": [
+        "PRESET_VIDEO_1",
+        "PRESET_VIDEO_2",
+        "PRESET_VIDEO_3",
+        "PRESET_VIDEO_4",
+        "PRESET_VIDEO_5",
+        "PRESET_VIDEO_6",
+        "PRESET_VIDEO_7",
+        "PRESET_VIDEO_8",
+        "SHARED",
+        "UNENCRYPTED"
+      ],
+      "PriceClass": [
+        "PriceClass_100",
+        "PriceClass_200",
+        "PriceClass_All"
+      ],
+      "PrimarySource": [
+        0,
+        1
+      ],
+      "PrincipalScope": [
+        "all",
+        "specific"
+      ],
+      "PriorityType": [
+        "LATENCY",
+        "COST",
+        "DESTINATION",
+        "LOCATION"
+      ],
+      "ProcessorMode": [
+        "INLINE",
+        "DISTRIBUTED"
+      ],
+      "ProcessorType": [
+        "STANDARD",
+        "EXPRESS"
+      ],
+      "ProjectNotificationEvents": [
+        "codebuild-project-build-state-failed",
+        "codebuild-project-build-state-succeeded",
+        "codebuild-project-build-state-in-progress",
+        "codebuild-project-build-state-stopped",
+        "codebuild-project-build-phase-failure",
+        "codebuild-project-build-phase-success"
+      ],
+      "ProjectVisibility": [
+        "PUBLIC_READ",
+        "PRIVATE"
+      ],
+      "ProjectionType": [
+        "KEYS_ONLY",
+        "INCLUDE",
+        "ALL"
+      ],
+      "PromptTemplateType": [
+        "TEXT",
+        "CHAT"
+      ],
+      "PropagateManagedInstancesTags": [
+        "CAPACITY_PROVIDER",
+        "NONE"
+      ],
+      "PropagatedTagSource": [
+        "SERVICE",
+        "TASK_DEFINITION",
+        "NONE"
+      ],
+      "Protocol": [
+        "HTTP",
+        "HTTPS",
+        "TCP",
+        "TLS",
+        "UDP",
+        "TCP_UDP"
+      ],
+      "ProtocolConfigType": [
+        "failover",
+        "merge"
+      ],
+      "ProtocolType": [
+        "MCP",
+        "HTTP",
+        "A2A",
+        "AGUI"
+      ],
+      "ProviderType": [
+        "CodeStarSourceConnection"
+      ],
+      "ProxyEndpointTargetRole": [
+        "READ_WRITE",
+        "READ_ONLY"
+      ],
+      "PythonVersion": [
+        "2",
+        "3",
+        "3.9"
+      ],
+      "QueryLanguage": [
+        "JSONPath",
+        "JSONata"
+      ],
+      "QueueEncryption": [
+        "NONE",
+        "KMS_MANAGED",
+        "KMS",
+        "SQS_MANAGED"
+      ],
+      "QuoteCharacter": [
+        '"',
+        "'"
+      ],
+      "ReadWriteType": [
+        "ReadOnly",
+        "WriteOnly",
+        "All",
+        "None"
+      ],
+      "ReceiptFilterPolicy": [
+        "Allow",
+        "Block"
+      ],
+      "RecordType": [
+        "A",
+        "AAAA",
+        "CAA",
+        "CNAME",
+        "DS",
+        "HTTPS",
+        "MX",
+        "NAPTR",
+        "NS",
+        "PTR",
+        "SOA",
+        "SPF",
+        "SRV",
+        "SSHFP",
+        "SVCB",
+        "TLSA",
+        "TXT"
+      ],
+      "RecordWrapperType": [
+        "None",
+        "RecordIO"
+      ],
+      "RecordingMode": [
+        "INTERVAL",
+        "DISABLED"
+      ],
+      "RecursiveLoop": [
+        "Allow",
+        "Terminate"
+      ],
+      "RedirectProtocol": [
+        "http",
+        "https"
+      ],
+      "RedirectStatus": [
+        "200",
+        "301",
+        "302",
+        "404",
+        "404-200"
+      ],
+      "RedrivePermission": [
+        "allowAll",
+        "denyAll",
+        "byQueue"
+      ],
+      "ReferenceRendering": [
+        0,
+        1
+      ],
+      "ReferenceStrength": [
+        "strong",
+        "weak",
+        "both"
+      ],
+      "RegistryType": [
+        "private",
+        "public"
+      ],
+      "RelayConversationHistoryType": [
+        "TO_COLLABORATOR",
+        "DISABLED"
+      ],
+      "RemovalPolicy": [
+        "destroy",
+        "retain",
+        "snapshot",
+        "retain-on-update-or-delete"
+      ],
+      "RenditionSelection": [
+        "ALL",
+        "NONE",
+        "CUSTOM"
+      ],
+      "ReplicationOverwriteProtection": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ReportGroupType": [
+        "TEST",
+        "CODE_COVERAGE"
+      ],
+      "RepositoryEventTrigger": [
+        "all",
+        "updateReference",
+        "createReference",
+        "deleteReference"
+      ],
+      "RepositoryNotificationEvents": [
+        "codecommit-repository-comments-on-commits",
+        "codecommit-repository-comments-on-pull-requests",
+        "codecommit-repository-approvals-status-changed",
+        "codecommit-repository-approvals-rule-override",
+        "codecommit-repository-pull-request-created",
+        "codecommit-repository-pull-request-source-updated",
+        "codecommit-repository-pull-request-status-changed",
+        "codecommit-repository-pull-request-merged",
+        "codecommit-repository-branches-and-tags-created",
+        "codecommit-repository-branches-and-tags-deleted",
+        "codecommit-repository-branches-and-tags-updated"
+      ],
+      "RepositoryService": [
+        "ECR"
+      ],
+      "RepositoryVisibility": [
+        0,
+        1
+      ],
+      "RequestMetricsStatus": [
+        "Enabled",
+        "Disabled"
+      ],
+      "RequireConfirmation": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Resolution": [
+        "FULL_HD",
+        "HD",
+        "SD",
+        "LOWEST_RESOLUTION"
+      ],
+      "ResolutionTypeHint": [
+        "string",
+        "number",
+        "string-list"
+      ],
+      "ResolverLevelMetricsBehavior": [
+        "FULL_REQUEST_RESOLVER_METRICS",
+        "PER_RESOLVER_METRICS"
+      ],
+      "ResolverMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ResourceAction": [
+        "pause-cluster",
+        "resume-cluster",
+        "failover-primary-compute"
+      ],
+      "ResourceScope": [
+        "all",
+        "type",
+        "specific"
+      ],
+      "ResourceToReplicateTags": [
+        "lambda-function"
+      ],
+      "ResponseTransferMode": [
+        "BUFFERED",
+        "STREAM"
+      ],
+      "RestApiMode": [
+        "overwrite",
+        "merge"
+      ],
+      "Result": [
+        "ROLLBACK",
+        "FAIL",
+        "RETRY",
+        "SKIP"
+      ],
+      "RetentionDays": [
+        1,
+        3,
+        5,
+        7,
+        14,
+        30,
+        60,
+        90,
+        120,
+        150,
+        180,
+        365,
+        400,
+        545,
+        731,
+        1096,
+        1827,
+        2192,
+        2557,
+        2922,
+        3288,
+        3653,
+        9999
+      ],
+      "RetryMode": [
+        "ALL_ACTIONS",
+        "FAILED_ACTIONS"
+      ],
+      "RevisionType": [
+        "COMMIT_ID",
+        "IMAGE_DIGEST",
+        "S3_OBJECT_VERSION_ID",
+        "S3_OBJECT_KEY"
+      ],
+      "RevocationType": [
+        "CRL"
+      ],
+      "RoleMappingMatchType": [
+        "Equals",
+        "Contains",
+        "StartsWith",
+        "NotEqual"
+      ],
+      "RouterType": [
+        "CarrierGateway",
+        "EgressOnlyInternetGateway",
+        "Gateway",
+        "Instance",
+        "LocalGateway",
+        "NatGateway",
+        "NetworkInterface",
+        "TransitGateway",
+        "VpcPeeringConnection",
+        "VpcEndpoint",
+        "CoreNetwork"
+      ],
+      "RoutingPolicy": [
+        "WEIGHTED",
+        "MULTIVALUE"
+      ],
+      "Runtime": [
+        "nodejs20.x",
+        "python3.9",
+        "python3.10",
+        "python3.11",
+        "python3.13",
+        "python3.13"
+      ],
+      "RuntimeFamily": [
+        0,
+        1,
+        2
+      ],
+      "S3DataDistributionType": [
+        "FullyReplicated",
+        "ShardedByS3Key"
+      ],
+      "S3DataType": [
+        "ManifestFile",
+        "S3Prefix",
+        "AugmentedManifestFile"
+      ],
+      "S3EncryptionMode": [
+        "SSE-S3",
+        "SSE-KMS"
+      ],
+      "S3LogsDeliveryPermissionsVersion": [
+        "V1",
+        "V2"
+      ],
+      "S3ObjectStorageMode": [
+        "COPY",
+        "REFERENCE"
+      ],
+      "S3OutputFormat": [
+        "plain",
+        "json",
+        "w3c"
+      ],
+      "S3Trigger": [
+        "None",
+        "Poll",
+        "Events"
+      ],
+      "SSLMethod": [
+        "sni-only",
+        "vip",
+        "static-ip"
+      ],
+      "ScaleInProtectedInstances": [
+        "Refresh",
+        "Ignore",
+        "Wait"
+      ],
+      "ScalingEvent": [
+        "autoscaling:EC2_INSTANCE_LAUNCH",
+        "autoscaling:EC2_INSTANCE_TERMINATE",
+        "autoscaling:EC2_INSTANCE_TERMINATE_ERROR",
+        "autoscaling:EC2_INSTANCE_LAUNCH_ERROR",
+        "autoscaling:TEST_NOTIFICATION"
+      ],
+      "ScalingMode": [
+        "STANDARD",
+        "MANAGED"
+      ],
+      "ScalingProcess": [
+        "Launch",
+        "Terminate",
+        "HealthCheck",
+        "ReplaceUnhealthy",
+        "AZRebalance",
+        "AlarmNotification",
+        "ScheduledActions",
+        "AddToLoadBalancer",
+        "InstanceRefresh"
+      ],
+      "ScheduleStartCondition": [
+        "EXPRESSION_MATCH_ONLY",
+        "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE"
+      ],
+      "SchemaDefinitionType": [
+        "string",
+        "number",
+        "object",
+        "array",
+        "boolean",
+        "integer"
+      ],
+      "Scope": [
+        "task",
+        "shared"
+      ],
+      "ScteInSegments": [
+        "NONE",
+        "ALL"
+      ],
+      "ScteMessageType": [
+        "SPLICE_INSERT",
+        "BREAK",
+        "PROVIDER_ADVERTISEMENT",
+        "DISTRIBUTOR_ADVERTISEMENT",
+        "PROVIDER_PLACEMENT_OPPORTUNITY",
+        "DISTRIBUTOR_PLACEMENT_OPPORTUNITY",
+        "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY",
+        "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY",
+        "PROGRAM"
+      ],
+      "SecurityPolicy": [
+        "TLS_1_0",
+        "TLS_1_2"
+      ],
+      "SecurityPolicyProtocol": [
+        "SSLv3",
+        "TLSv1",
+        "TLSv1_2016",
+        "TLSv1.1_2016",
+        "TLSv1.2_2018",
+        "TLSv1.2_2019",
+        "TLSv1.2_2021",
+        "TLSv1.2_2025",
+        "TLSv1.3_2025"
+      ],
+      "SegmentLengthUnits": [
+        "MILLISECONDS",
+        "SECONDS"
+      ],
+      "SegmentTemplateFormat": [
+        "NUMBER_WITH_TIMELINE"
+      ],
+      "ServerSideEncryption": [
+        "AES256",
+        "aws:kms",
+        "aws:kms:dsse"
+      ],
+      "ServiceConnectAccessLogFormat": [
+        "TEXT",
+        "JSON"
+      ],
+      "ServiceIntegrationPattern": [
+        "FIRE_AND_FORGET",
+        "SYNC",
+        "WAIT_FOR_TASK_TOKEN"
+      ],
+      "ServiceManager": [
+        0,
+        1,
+        2
+      ],
+      "ServiceNamespace": [
+        "ecs",
+        "elasticmapreduce",
+        "ec2",
+        "appstream",
+        "dynamodb",
+        "rds",
+        "sagemaker",
+        "custom-resource",
+        "lambda",
+        "comprehend",
+        "kafka",
+        "elasticache",
+        "neptune",
+        "cassandra",
+        "workspaces"
+      ],
+      "Shading": [
+        "none",
+        "above",
+        "below"
+      ],
+      "ShardLevelMetrics": [
+        "IncomingBytes",
+        "IncomingRecords",
+        "IteratorAgeMilliseconds",
+        "OutgoingBytes",
+        "OutgoingRecords",
+        "ReadProvisionedThroughputExceeded",
+        "WriteProvisionedThroughputExceeded",
+        "ALL"
+      ],
+      "SharePermission": [
+        0,
+        1
+      ],
+      "SigningAlgorithm": [
+        "rsa-sha256"
+      ],
+      "SigningBehavior": [
+        "always",
+        "never",
+        "no-override"
+      ],
+      "SigningProtocol": [
+        "sigv4"
+      ],
+      "SizeRoundingBehavior": [
+        0,
+        1,
+        2
+      ],
+      "SnsActionMessageFormat": [
+        "RAW",
+        "JSON"
+      ],
+      "SortDirection": [
+        "asc",
+        "desc"
+      ],
+      "SourceMapMode": [
+        "default",
+        "external",
+        "inline",
+        "both"
+      ],
+      "SourcePriorityMode": [
+        "NO_PRIORITY",
+        "PRIMARY_SECONDARY"
+      ],
+      "SourceType": [
+        "lambda",
+        "sqs",
+        "sns",
+        "events"
+      ],
+      "SplitType": [
+        "None",
+        "Line",
+        "RecordIO",
+        "TFRecord"
+      ],
+      "SplunkLogFormat": [
+        "inline",
+        "json",
+        "raw"
+      ],
+      "SpotAllocationStrategy": [
+        "lowest-price",
+        "capacity-optimized",
+        "capacity-optimized-prioritized",
+        "price-capacity-optimized"
+      ],
+      "SpotInstanceInterruption": [
+        "stop",
+        "terminate",
+        "hibernate"
+      ],
+      "SpotRequestType": [
+        "one-time",
+        "persistent"
+      ],
+      "SslPolicy": [
+        "ELBSecurityPolicy-TLS13-1-2-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-PQ-2025-09",
+        "ELBSecurityPolicy-2016-08",
+        "ELBSecurityPolicy-TLS13-1-2-Res-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06",
+        "ELBSecurityPolicy-TLS13-1-0-2021-06",
+        "ELBSecurityPolicy-TLS13-1-1-2021-06",
+        "ELBSecurityPolicy-TLS13-1-3-2021-06",
+        "ELBSecurityPolicy-TLS13-1-3-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Res-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-0-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-3-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-1-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-0-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-3-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-0-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-FS-1-2-Res-2020-10",
+        "ELBSecurityPolicy-FS-1-2-Res-2019-08",
+        "ELBSecurityPolicy-FS-1-2-2019-08",
+        "ELBSecurityPolicy-FS-1-1-2019-08",
+        "ELBSecurityPolicy-FS-2018-06",
+        "ELBSecurityPolicy-TLS-1-2-2017-01",
+        "ELBSecurityPolicy-TLS-1-2-Ext-2018-06",
+        "ELBSecurityPolicy-TLS-1-1-2017-01",
+        "ELBSecurityPolicy-TLS-1-0-2015-04"
+      ],
+      "StackSetOrganizationsAutoDeployment": [
+        "Enabled",
+        "Disabled",
+        "EnabledWithStackRetention"
+      ],
+      "StandardThreatProtectionMode": [
+        "ENFORCED",
+        "AUDIT",
+        "OFF"
+      ],
+      "StandbyInstances": [
+        "Terminate",
+        "Ignore",
+        "Wait"
+      ],
+      "StartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST",
+        "AT_TIMESTAMP"
+      ],
+      "State": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "StateMachineInvocationType": [
+        "FIRE_AND_FORGET",
+        "REQUEST_RESPONSE"
+      ],
+      "StateMachineType": [
+        "EXPRESS",
+        "STANDARD"
+      ],
+      "StateType": [
+        "Pass",
+        "Task",
+        "Choice",
+        "Wait",
+        "Succeed",
+        "Fail",
+        "Parallel",
+        "Map"
+      ],
+      "Statistic": [
+        "SampleCount",
+        "Average",
+        "Sum",
+        "Minimum",
+        "Maximum"
+      ],
+      "Status": [
+        "pass",
+        "fail"
+      ],
+      "Storage": [
+        "SEQUENTIAL",
+        "LATEST"
+      ],
+      "StorageClass": [
+        "STANDARD",
+        "REDUCED_REDUNDANCY",
+        "STANDARD_IA",
+        "ONEZONE_IA",
+        "INTELLIGENT_TIERING",
+        "GLACIER",
+        "DEEP_ARCHIVE"
+      ],
+      "StorageMode": [
+        "LOCAL",
+        "TIERED"
+      ],
+      "StorageParameters": [
+        "skip.header.line.count",
+        "data_cleansing_enabled",
+        "compression_type",
+        "invalid_char_handling",
+        "replacement_char",
+        "numeric_overflow_handling",
+        "surplus_bytes_handling",
+        "surplus_char_handling",
+        "column_count_mismatch_handling",
+        "num_rows",
+        "serialization.null.format",
+        "orc.schema.resolution",
+        "write.parallel",
+        "write.maxfilesize.mb",
+        "write.kms.key.id"
+      ],
+      "StorageType": [
+        "standard",
+        "gp2",
+        "gp3",
+        "io1",
+        "io2"
+      ],
+      "StreamDeliveryContentLevel": [
+        "METADATA_ONLY",
+        "FULL_CONTENT"
+      ],
+      "StreamDeliveryContentType": [
+        "MEMORY_RECORDS"
+      ],
+      "StreamEncryption": [
+        "NONE",
+        "KMS",
+        "MANAGED"
+      ],
+      "StreamEncryptionType": [
+        0,
+        1,
+        2
+      ],
+      "StreamMode": [
+        "PROVISIONED",
+        "ON_DEMAND"
+      ],
+      "StreamViewType": [
+        "NEW_IMAGE",
+        "OLD_IMAGE",
+        "NEW_AND_OLD_IMAGES",
+        "KEYS_ONLY"
+      ],
+      "StringMutatorType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "Style": [
+        "VectorEsriNavigation",
+        "RasterEsriImagery",
+        "VectorEsriLightGrayCanvas",
+        "VectorEsriTopographic",
+        "VectorEsriStreets",
+        "VectorEsriDarkGrayCanvas",
+        "VectorHereExplore",
+        "RasterHereExploreSatellite",
+        "HybridHereExploreSatellite",
+        "VectorHereContrast",
+        "VectorHereExploreTruck",
+        "VectorGrabStandardLight",
+        "VectorGrabStandardDark",
+        "VectorOpenDataStandardLight",
+        "VectorOpenDataStandardDark",
+        "VectorOpenDataVisualizationLight",
+        "VectorOpenDataVisualizationDark"
+      ],
+      "SubRecordType": [
+        "JSON",
+        "DELIMITED"
+      ],
+      "SubnetType": [
+        "Isolated",
+        "Deprecated_Isolated",
+        "Private",
+        "Deprecated_Private_NAT",
+        "Deprecated_Private",
+        "Public"
+      ],
+      "SubscriptionProtocol": [
+        "http",
+        "https",
+        "email",
+        "email-json",
+        "sms",
+        "sqs",
+        "application",
+        "lambda",
+        "firehose"
+      ],
+      "SuppressionReasons": [
+        "BOUNCES_AND_COMPLAINTS",
+        "BOUNCES_ONLY",
+        "COMPLAINTS_ONLY"
+      ],
+      "SurplusBytesHandlingAction": [
+        "SET_TO_NULL",
+        "DISABLED",
+        "FAIL",
+        "DROP_ROW",
+        "TRUNCATE"
+      ],
+      "SurplusCharHandlingAction": [
+        "SET_TO_NULL",
+        "DISABLED",
+        "FAIL",
+        "DROP_ROW",
+        "TRUNCATE"
+      ],
+      "SymlinkFollowMode": [
+        "never",
+        "always",
+        "external",
+        "internal-only"
+      ],
+      "SynthesisMessageLevel": [
+        "info",
+        "warning",
+        "error"
+      ],
+      "SystemLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN"
+      ],
+      "TLSSecurityPolicy": [
+        "Policy-Min-TLS-1-0-2019-07",
+        "Policy-Min-TLS-1-2-2019-07",
+        "Policy-Min-TLS-1-2-PFS-2023-10"
+      ],
+      "TableAction": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6
+      ],
+      "TableBucketEncryption": [
+        "aws:kms",
+        "AES256"
+      ],
+      "TableClass": [
+        "STANDARD",
+        "STANDARD_INFREQUENT_ACCESS"
+      ],
+      "TableDistStyle": [
+        "AUTO",
+        "EVEN",
+        "KEY",
+        "ALL"
+      ],
+      "TableEncryption": [
+        "AWS_OWNED",
+        "CUSTOMER_MANAGED",
+        "AWS_MANAGED"
+      ],
+      "TableLayout": [
+        "horizontal",
+        "vertical"
+      ],
+      "TableSortStyle": [
+        "AUTO",
+        "COMPOUND",
+        "INTERLEAVED"
+      ],
+      "TableSummaryColumn": [
+        "MIN",
+        "MAX",
+        "SUM",
+        "AVG"
+      ],
+      "TagMutability": [
+        "MUTABLE",
+        "IMMUTABLE",
+        "IMMUTABLE_WITH_EXCLUSION",
+        "MUTABLE_WITH_EXCLUSION"
+      ],
+      "TagOperation": [
+        "STRINGEQUALS",
+        "dummy"
+      ],
+      "TagStatus": [
+        "any",
+        "tagged",
+        "untagged"
+      ],
+      "TagType": [
+        "StandardTag",
+        "AutoScalingGroupTag",
+        "StringToStringMap",
+        "KeyValue",
+        "NotTaggable"
+      ],
+      "TaintEffect": [
+        "NO_SCHEDULE",
+        "PREFER_NO_SCHEDULE",
+        "NO_EXECUTE"
+      ],
+      "TargetGroupIpAddressType": [
+        "ipv4",
+        "ipv6"
+      ],
+      "TargetGroupLoadBalancingAlgorithmType": [
+        "round_robin",
+        "least_outstanding_requests",
+        "weighted_random"
+      ],
+      "TargetType": [
+        "instance",
+        "ip",
+        "lambda",
+        "alb"
+      ],
+      "TcpRetryEvent": [
+        "connection-error"
+      ],
+      "TemplateType": [
+        "Text",
+        "Object"
+      ],
+      "Tenancy": [
+        "default",
+        "dedicated",
+        "host"
+      ],
+      "TerminateHookAbandonAction": [
+        "retain",
+        "terminate"
+      ],
+      "TerminationPolicy": [
+        "AllocationStrategy",
+        "ClosestToNextInstanceHour",
+        "Default",
+        "NewestInstance",
+        "OldestInstance",
+        "OldestLaunchConfiguration",
+        "OldestLaunchTemplate",
+        "CustomLambdaFunction"
+      ],
+      "TextFilterKey": [
+        "audio_language",
+        "subtitle_language"
+      ],
+      "TextWidgetBackground": [
+        "solid",
+        "transparent"
+      ],
+      "ThroughputMode": [
+        "bursting",
+        "provisioned",
+        "elastic"
+      ],
+      "TierConfig": [
+        "CLASSIC",
+        "STANDARD"
+      ],
+      "TimeoutAction": [
+        "ForceApplyCapacityChange",
+        "RollbackCapacityChange"
+      ],
+      "TlsMode": [
+        "STRICT",
+        "PERMISSIVE",
+        "DISABLED"
+      ],
+      "TlsPolicy": [
+        "Optional",
+        "Require"
+      ],
+      "TmpfsMountOption": [
+        "defaults",
+        "ro",
+        "rw",
+        "suid",
+        "nosuid",
+        "dev",
+        "nodev",
+        "exec",
+        "noexec",
+        "sync",
+        "async",
+        "dirsync",
+        "remount",
+        "mand",
+        "nomand",
+        "atime",
+        "noatime",
+        "diratime",
+        "nodiratime",
+        "bind",
+        "rbind",
+        "unbindable",
+        "runbindable",
+        "private",
+        "rprivate",
+        "shared",
+        "rshared",
+        "slave",
+        "rslave",
+        "relatime",
+        "norelatime",
+        "strictatime",
+        "nostrictatime",
+        "mode",
+        "uid",
+        "gid",
+        "nr_inodes",
+        "nr_blocks",
+        "mpol"
+      ],
+      "TraceConfigurationVendor": [
+        "AWSXRAY"
+      ],
+      "Tracing": [
+        "Active",
+        "PassThrough",
+        "Disabled"
+      ],
+      "TracingConfig": [
+        "PassThrough",
+        "Active"
+      ],
+      "TrafficDirection": [
+        0,
+        1
+      ],
+      "Transformation": [
+        "NONE",
+        "COMPACT",
+        "FLATTEN"
+      ],
+      "TransitGatewayFeatureStatus": [
+        "enable",
+        "disable"
+      ],
+      "TransitionDefaultMinimumObjectSize": [
+        "all_storage_classes_128K",
+        "varies_by_storage_class"
+      ],
+      "TransportProtocol": [
+        "tcp",
+        "udp"
+      ],
+      "TreatMissingData": [
+        "breaching",
+        "notBreaching",
+        "ignore",
+        "missing"
+      ],
+      "TrickplayType": [
+        "iframe",
+        "image",
+        "none"
+      ],
+      "TriggerInvalidation": [
+        "WHEN_FUNCTION_CHANGES"
+      ],
+      "TsDrmSystem": [
+        "FAIRPLAY",
+        "CLEAR_KEY_AES_128"
+      ],
+      "TsEncryptionMethod": [
+        "AES_128",
+        "SAMPLE_AES"
+      ],
+      "TtmlProfile": [
+        "IMSC_1",
+        "EBU_TT_D_101"
+      ],
+      "TypeConverterType": [
+        "boolean",
+        "integer",
+        "double",
+        "string"
+      ],
+      "URLEncodingFormat": [
+        "BRACKETS",
+        "COMMAS",
+        "DEFAULT",
+        "INDICES",
+        "NONE",
+        "REPEAT"
+      ],
+      "UlimitName": [
+        "core",
+        "cpu",
+        "data",
+        "fsize",
+        "locks",
+        "memlock",
+        "msgqueue",
+        "nice",
+        "nofile",
+        "nproc",
+        "rss",
+        "rtprio",
+        "rttime",
+        "sigpending",
+        "stack"
+      ],
+      "UnauthenticatedAction": [
+        "deny",
+        "allow",
+        "authenticate"
+      ],
+      "Unit": [
+        "Seconds",
+        "Microseconds",
+        "Milliseconds",
+        "Bytes",
+        "Kilobytes",
+        "Megabytes",
+        "Gigabytes",
+        "Terabytes",
+        "Bits",
+        "Kilobits",
+        "Megabits",
+        "Gigabits",
+        "Terabits",
+        "Percent",
+        "Count",
+        "Bytes/Second",
+        "Kilobytes/Second",
+        "Megabytes/Second",
+        "Gigabytes/Second",
+        "Terabytes/Second",
+        "Bits/Second",
+        "Kilobits/Second",
+        "Megabits/Second",
+        "Gigabits/Second",
+        "Terabits/Second",
+        "Count/Second",
+        "None"
+      ],
+      "UnreferencedFileRemovalStatus": [
+        "Enabled",
+        "Disabled"
+      ],
+      "UntrustedArtifactOnDeployment": [
+        "Enforce",
+        "Warn"
+      ],
+      "UpdateType": [
+        "None",
+        "Replace",
+        "RollingUpdate"
+      ],
+      "UsagePlanKeyType": [
+        "API_KEY"
+      ],
+      "UserPoolDefaultAction": [
+        "ALLOW",
+        "DENY"
+      ],
+      "UserPoolIdentityProviderSamlMetadataType": [
+        "url",
+        "file"
+      ],
+      "ValidationMethod": [
+        "EMAIL",
+        "DNS"
+      ],
+      "ValidatorType": [
+        "JSON_SCHEMA",
+        "LAMBDA"
+      ],
+      "VariableInputType": [
+        "input",
+        "radio",
+        "select"
+      ],
+      "VariableType": [
+        "property",
+        "pattern"
+      ],
+      "VectorType": [
+        "FLOAT32",
+        "BINARY"
+      ],
+      "VendedLogType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "VerificationEmailStyle": [
+        "CONFIRM_WITH_CODE",
+        "CONFIRM_WITH_LINK"
+      ],
+      "VersionConsistency": [
+        "enabled",
+        "disabled"
+      ],
+      "VerticalShading": [
+        "none",
+        "before",
+        "after"
+      ],
+      "VideoCodec": [
+        "H264",
+        "H265",
+        "AV1"
+      ],
+      "VideoCodecType": [
+        "H264",
+        "H265",
+        "AV1",
+        "FRAME_CAPTURE"
+      ],
+      "VideoDynamicRange": [
+        "dv",
+        "hdr10",
+        "hlg",
+        "sdr"
+      ],
+      "ViewerProtocolPolicy": [
+        "https-only",
+        "redirect-to-https",
+        "allow-all"
+      ],
+      "Visibility": [
+        "GLOBAL",
+        "PRIVATE"
+      ],
+      "VpcEndpointDnsRecordIpType": [
+        "ipv4",
+        "ipv6",
+        "dualstack",
+        "service-defined"
+      ],
+      "VpcEndpointIpAddressType": [
+        "ipv4",
+        "ipv6",
+        "dualstack"
+      ],
+      "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint": [
+        "AllResolvers",
+        "OnlyInboundResolver"
+      ],
+      "VpcEndpointType": [
+        "Interface",
+        "Gateway",
+        "GatewayLoadBalancer",
+        "ServiceNetwork",
+        "Resource"
+      ],
+      "VpcSubnetGroupType": [
+        "Public",
+        "Private",
+        "Isolated"
+      ],
+      "VpnConnectionType": [
+        "ipsec.1",
+        "dummy"
+      ],
+      "VpnPort": [
+        443,
+        1194
+      ],
+      "WebSocketAuthorizerType": [
+        "REQUEST",
+        "AWS_IAM"
+      ],
+      "WebSocketIntegrationType": [
+        "AWS_PROXY",
+        "MOCK",
+        "AWS"
+      ],
+      "WebhookFilterTypes": [
+        "FILE_PATH",
+        "COMMIT_MESSAGE",
+        "HEAD_REF",
+        "ACTOR_ACCOUNT_ID",
+        "BASE_REF",
+        "REPOSITORY_NAME"
+      ],
+      "Weekday": [
+        "1",
+        "2",
+        "3",
+        "4",
+        "5",
+        "6",
+        "7"
+      ],
+      "WindowsImageType": [
+        "WINDOWS_CONTAINER",
+        "WINDOWS_SERVER_2019_CONTAINER",
+        "WINDOWS_SERVER_2022_CONTAINER"
+      ],
+      "WindowsOptimizedVersion": [
+        "2025",
+        "2022",
+        "2019",
+        "2016"
+      ],
+      "WindowsVersion": [
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.22",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.22",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.23",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.23",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.24",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.24",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.25",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.25",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.26",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.26",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.27",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.27",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.28",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.28",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.23",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.23",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.24",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.24",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.25",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.25",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.26",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.26",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.27",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.27",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.28",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.28",
+        "Windows_Server-1709-English-Core-ContainersLatest",
+        "Windows_Server-1709-English-Core-Base",
+        "Windows_Server-1803-English-Core-Base",
+        "Windows_Server-1803-English-Core-ContainersLatest",
+        "Windows_Server-1809-English-Core-Base",
+        "Windows_Server-1809-English-Core-ContainersLatest",
+        "Windows_Server-2003-R2_SP2-Language_Packs-32Bit-Base",
+        "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Express",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Standard",
+        "Windows_Server-2003-R2_SP2-English-32Bit-Base",
+        "Windows_Server-2003-R2_SP2-English-64Bit-Base",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Express",
+        "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Standard",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-Base",
+        "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Express",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2008-R2_SP1-Korean-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Chinese_Hong_Kong_SAR-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Chinese_PRC-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-SP2-English-32Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-Base",
+        "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-SP2-English-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_RTM_SP2_Enterprise",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-SP2-Portuguese_Brazil-32Bit-Base",
+        "Windows_Server-2008-SP2-Portugese_Brazil-32Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Core_SQL_2012_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Core",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SharePoint_2010_SP2_Foundation",
+        "Windows_Server-2012-R2_RTM-Chinese_Simplified-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Chinese_Traditional-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Dutch-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Enterprise",
+        "Windows_Server-2012-R2_RTM-Hungarian-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Core",
+        "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Core",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-RTM-Italian-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Express",
+        "Windows_Server-2012-R2_RTM-English-Deep-Learning",
+        "Windows_Server-2012-R2_RTM-German-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Express",
+        "Windows_Server-2012-R2_RTM-Russian-64Bit-Base",
+        "Windows_Server-2012-RTM-Chinese_Traditional_Hong_Kong_SAR-64Bit-Base",
+        "Windows_Server-2012-RTM-Hungarian-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-RTM-French-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-French-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Polish-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-Core",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Enterprise",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-RTM-Swedish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portuguese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portugese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Swedish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2012-RTM-Chinese_Traditional-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-RTM-Czech-64Bit-Base",
+        "Windows_Server-2012-RTM-Turkish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-HyperV",
+        "Windows_Server-2012-RTM-Korean-64Bit-Base",
+        "Windows_Server-2012-RTM-Russian-64Bit-Base",
+        "Windows_Server-2012_R2_RTM-English-Full-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-R2_RTM-Italian-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-R2_RTM-Czech-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Standard",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-SP2-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2008-SP2-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2012-RTM-Japanese-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012_RTM-English-Full-Base",
+        "Windows_Server-2012-R2-English-STIG-Full",
+        "Windows_Server-2012-RTM-Portuguese_Portugal-64Bit-Base",
+        "Windows_Server-2012-RTM-Portugese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-Base",
+        "Windows_Server-2012-RTM-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2012-RTM-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-P3",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-Spanish-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Standard",
+        "Windows_Server-2012-R2-English-STIG-Core",
+        "Windows_Server-2012-R2_RTM-Turkish-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2012-RTM-Polish-64Bit-Base",
+        "Windows_Server-2012-RTM-Spanish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Web",
+        "Windows_Server-2012-R2_RTM-Korean-64Bit-Base",
+        "Windows_Server-2012-RTM-Dutch-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Chinese_Traditional_Hong_Kong-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2012-RTM-Chinese_Simplified-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-Core-Containers",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Web",
+        "Windows_Server-2016-German-Full-Base",
+        "Windows_Server-2016-Germal-Full-Base",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Express",
+        "Windows_Server-2016-English-Deep-Learning",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2016-Korean-Full-Base",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Polish-Full-Base",
+        "Windows_Server-2016-English-Full-Containers",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-Russian-Full-Base",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Express",
+        "Windows_Server-2016-Italian-Full-Base",
+        "Windows_Server-2016-Spanish-Full-Base",
+        "Windows_Server-2012-RTM-German-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-English-Full-HyperV",
+        "Windows_Server-2016-English-Core-ContainersLatest",
+        "Windows_Server-2016-Dutch-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2016-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2016-Hungarian-Full-Base",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-Base",
+        "Windows_Server-2016-English-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2017_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Web",
+        "Windows_Server-2016-Swedish-Full-Base",
+        "Windows_Server-2016-Turkish-Full-Base",
+        "Windows_Server-2016-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2016-Portugese_Brazil-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2019_Standard",
+        "Windows_Server-2016-English-Full-SQL_2014_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Express",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Web",
+        "Windows_Server-2016-English-Full-SQL_2017_Standard",
+        "Windows_Server-2016-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2016-Portugese_Portugal-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2014_SP3_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2016-English-Full-SQL_2019_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-STIG-Core",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-English-Full-ECS_Optimized",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Web",
+        "Windows_Server-2016-English-P3",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2016-Japanese-Full-Base",
+        "Windows_Server-2016-Chinese_Simplified-Full-Base",
+        "Windows_Server-2016-French-Full-Base",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-Czech-Full-Base",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Chinese_Traditional-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2016-English-Full-SQL_2017_Express",
+        "Windows_Server-2016-English-Full-SQL_2019_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2016-English-Tesla",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2016-English-STIG-Full",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Express",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2017_Web",
+        "Windows_Server-2019-French-Full-Base",
+        "Windows_Server-2019-Korean-Full-Base",
+        "Windows_Server-2019-Italian-Full-Base",
+        "Windows_Server-2019-Chinese_Simplified-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2019-English-Full-HyperV",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2019-Hungarian-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2019-Turkish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2019_Standard",
+        "Windows_Server-2019-English-Full-SQL_2017_Standard",
+        "Windows_Server-2019-English-Core-ContainersLatest",
+        "Windows_Server-2019-English-Full-SQL_2017_Express",
+        "Windows_Server-2019-Japanese-Full-Base",
+        "Windows_Server-2019-Russian-Full-Base",
+        "Windows_Server-2019-Chinese_Traditional-Full-Base",
+        "Windows_Server-2019-English-Core-Base",
+        "Windows_Server-2019-English-Full-Base",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Enterprise",
+        "Windows_Server-2019-English-Tesla",
+        "Windows_Server-2019-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2019-Spanish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2019-English-STIG-Full",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2019-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2019-Portugese_Portugal-Full-Base",
+        "Windows_Server-2019-Swedish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2022_Express",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2022_Web",
+        "Windows_Server-2019-English-Full-SQL_2019_Web",
+        "Windows_Server-2019-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2019-Portugese_Brazil-Full-Base",
+        "Windows_Server-2019-English-Full-ContainersLatest",
+        "Windows_Server-2019-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2019_Express",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2019-English-STIG-Core",
+        "Windows_Server-2019-English-Core-ECS_Optimized",
+        "Windows_Server-2019-English-Full-SQL_2022_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2019-English-Full-ECS_Optimized",
+        "Windows_Server-2019-English-Deep-Learning",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2019-Czech-Full-Base",
+        "Windows_Server-2019-Polish-Full-Base",
+        "Windows_Server-2019-German-Full-Base",
+        "Windows_Server-2019-Dutch-Full-Base",
+        "Windows_Server-2022-English-STIG-Full",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Web",
+        "Windows_Server-2022-English-Full-SQL_2022_Web",
+        "Windows_Server-2022-English-STIG-Core",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2022-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2022-Italian-Full-Base",
+        "Windows_Server-2022-English-Full-ContainersLatest",
+        "Windows_Server-2022-Russian-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Express",
+        "Windows_Server-2022-Polish-Full-Base",
+        "Windows_Server-2022-English-Core-Base",
+        "Windows_Server-2022-Hungarian-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2017_Express",
+        "Windows_Server-2022-German-Full-Base",
+        "Windows_Server-2022-English-Core-ContainersLatest",
+        "Windows_Server-2022-English-Full-SQL_2019_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2022-English-Full-SQL_2017_Web",
+        "Windows_Server-2022-Japanese-Full-Base",
+        "Windows_Server-2022-Korean-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2022-Chinese_Simplified-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Web",
+        "Windows_Server-2022-Spanish-Full-Base",
+        "Windows_Server-2022-English-Core-ECS_Optimized",
+        "Windows_Server-2022-English-Full-SQL_2017_Standard",
+        "Windows_Server-2022-Chinese_Traditional-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2022-French-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2022-English-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2022-Turkish-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2022-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2022-Czech-Full-Base",
+        "Windows_Server-2022-English-Full-ECS_Optimized",
+        "Windows_Server-2022-Dutch-Full-Base",
+        "Windows_Server-2022-Swedish-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2022-English-Full-SQL_2022_Express",
+        "Windows_Server-2022-English-Full-SQL_2022_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Enterprise",
+        "Windows_Server-2025-Chinese_Simplified-Full-Base",
+        "Windows_Server-2025-Chinese_Traditional-Full-Base",
+        "Windows_Server-2025-English-Core-Base",
+        "Windows_Server-2025-English-Full-Base",
+        "Windows_Server-2025-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2025-English-Full-SQL_2022_Express",
+        "Windows_Server-2025-English-Full-SQL_2022_Standard",
+        "Windows_Server-2025-English-Full-SQL_2022_Web",
+        "Windows_Server-2025-Japanese-Full-Base",
+        "Windows_Server-2025-Korean-Full-Base"
+      ],
+      "WorkerType": [
+        "Standard",
+        "G.025X",
+        "G.1X",
+        "G.2X",
+        "G.4X",
+        "G.8X",
+        "Z.2X"
+      ],
+      "WorkflowAction": [
+        "ApplyImageConfigurations",
+        "BootstrapInstanceForContainer",
+        "CollectImageMetadata",
+        "CollectImageScanFindings",
+        "CreateImage",
+        "DistributeImage",
+        "ExecuteComponents",
+        "ExecuteStateMachine",
+        "LaunchInstance",
+        "ModifyImageAttributes",
+        "RunCommand",
+        "RegisterImage",
+        "RunSysPrep",
+        "SanitizeInstance",
+        "TerminateInstance",
+        "WaitForAction",
+        "WaitForSSMAgent"
+      ],
+      "WorkflowOnFailure": [
+        "Abort",
+        "Continue"
+      ],
+      "WorkflowParameterType": [
+        "boolean",
+        "integer",
+        "string",
+        "stringList"
+      ],
+      "WorkflowSchemaVersion": [
+        "1.0"
+      ],
+      "WorkflowType": [
+        "BUILD",
+        "TEST",
+        "DISTRIBUTION"
+      ],
+      "WriteParallel": [
+        "on",
+        "off"
+      ],
+      "XffHeaderProcessingMode": [
+        "append",
+        "preserve",
+        "remove"
+      ]
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/constants.ts
+var RESOURCE_SYMBOL, JSII_RUNTIME_SYMBOL2;
+var init_constants = __esm({
+  "../../aws-cdk-lib/core/lib/constants.ts"() {
+    "use strict";
+    RESOURCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Resource");
+    JSII_RUNTIME_SYMBOL2 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/metadata-type.ts
+var init_metadata_type = __esm({
+  "../../aws-cdk-lib/core/lib/metadata-type.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/metadata-resource.ts
+function addConstructMetadata(construct, props) {
+  try {
+    addPropsAsMetadata(construct, "aws:cdk:analytics:construct" /* CONSTRUCT */, props);
+  } catch (e) {
+    Annotations.of(construct).addWarningV2("@aws-cdk/core:addConstructMetadataFailed", `Failed to add construct metadata for node [${construct.node.id}]. Reason: ${e}`);
+  }
+}
+function addMethodMetadata(scope, methodName, props) {
+  try {
+    addPropsAsMetadata(scope, "aws:cdk:analytics:method" /* METHOD */, {
+      [methodName]: props
+    });
+  } catch (e) {
+    Annotations.of(scope).addWarningV2("@aws-cdk/core:addMethodMetadataFailed", `Failed to add method metadata for node [${scope.node.id}], method name ${methodName}. Reason: ${e}`);
+  }
+}
+function MethodMetadata() {
+  return function(originalMethod, context) {
+    if (typeof originalMethod !== "function") {
+      return originalMethod;
+    }
+    return function(...args) {
+      if (this instanceof import_constructs2.Construct) {
+        addMethodMetadata(this, context.name.toString(), args);
+      }
+      return originalMethod.apply(this, args);
+    };
+  };
+}
+function addPropsAsMetadata(construct, type, props) {
+  const telemetryEnabled = FeatureFlags.of(construct).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false;
+  if (!telemetryEnabled) {
+    return;
+  }
+  const fqn = construct.constructor[JSII_RUNTIME_SYMBOL2].fqn;
+  construct.node.addMetadata(type, redactMetadata(fqn, props));
+}
+function redactMetadata(fqn, data) {
+  const fqnParts = fqn.replace(/[-_]/g, "-").split(".");
+  if (fqnParts.length !== 3) {
+    return "*";
+  }
+  const module2 = fqnParts.slice(0, 2).join(".");
+  const name = fqnParts[2];
+  if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS).includes(module2)) {
+    return "*";
+  }
+  if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS[module2]).includes(name)) {
+    return "*";
+  }
+  const allowedKeys = AWS_CDK_CONSTRUCTOR_PROPS[module2][name];
+  return redactTelemetryDataHelper(allowedKeys, data);
+}
+function redactTelemetryDataHelper(allowedKeys, data) {
+  if (allowedKeys === void 0) {
+    return "*";
+  }
+  if (typeof data === "boolean") {
+    return data;
+  }
+  if (isEnumValue(allowedKeys, data)) {
+    return data;
+  }
+  if (typeof data === "string" || typeof data === "number") {
+    return "*";
+  }
+  if (data && Token.isUnresolved(data)) {
+    return "*";
+  }
+  if (Array.isArray(data)) {
+    return data.map((item, index) => {
+      if (Array.isArray(allowedKeys)) {
+        return redactTelemetryDataHelper(allowedKeys[index], item);
+      }
+      return redactTelemetryDataHelper(allowedKeys, item);
+    });
+  }
+  if (data && Object.keys(data).length > 0 && typeof data === "object") {
+    if (import_constructs2.Construct.isConstruct(data)) {
+      return "*";
+    }
+    const redactedResult = {};
+    for (const [key, value] of Object.entries(data)) {
+      if (key && Token.isUnresolved(key)) {
+        continue;
+      }
+      if (allowedKeys && typeof allowedKeys === "object") {
+        if (!Object.keys(allowedKeys).includes(key)) {
+          continue;
+        }
+        const allowedValue = allowedKeys[key];
+        if (allowedValue === "*") {
+          redactedResult[key] = "*";
+          continue;
+        }
+        redactedResult[key] = redactTelemetryDataHelper(allowedKeys[key], value);
+      }
+    }
+    return redactedResult;
+  }
+  return "*";
+}
+function isEnumValue(allowedKeys, value) {
+  if (typeof allowedKeys !== "string" || allowedKeys === "*") {
+    return false;
+  }
+  if (!Object.keys(AWS_CDK_ENUMS).includes(allowedKeys)) {
+    return false;
+  }
+  return AWS_CDK_ENUMS[allowedKeys].includes(value);
+}
+var import_constructs2;
+var init_metadata_resource = __esm({
+  "../../aws-cdk-lib/core/lib/metadata-resource.ts"() {
+    "use strict";
+    import_constructs2 = __toESM(require_lib4());
+    init_classes();
+    init_enums();
+    init_annotations();
+    init_constants();
+    init_feature_flags();
+    init_metadata_type();
+    init_token();
+    init_cx_api();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/no-box-stack-traces.ts
+function noBoxStackTraces(constructor) {
+  const NoBoxStackTraces = class extends constructor {
+    constructor(...args) {
+      Box.disableStackTraceCollection();
+      try {
+        super(...args);
+      } finally {
+        Box.enableStackTraceCollection();
+      }
+    }
+  };
+  Object.defineProperty(NoBoxStackTraces, "name", {
+    value: constructor.name,
+    writable: false
+  });
+  return NoBoxStackTraces;
+}
+var init_no_box_stack_traces = __esm({
+  "../../aws-cdk-lib/core/lib/no-box-stack-traces.ts"() {
+    "use strict";
+    init_box();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectors.ts
+var PropertyInjectors;
+var init_prop_injectors = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectors.ts"() {
+    "use strict";
+    init_prop_injectors_helpers();
+    PropertyInjectors = class _PropertyInjectors {
+      /**
+       * Return whether the given object has a PropertyInjectors property.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static hasPropertyInjectors(x) {
+        return x !== null && typeof x === "object" && PROPERTY_INJECTORS_SYMBOL in x;
+      }
+      /**
+       * Returns the `PropertyInjectors` object associated with a construct scope.
+       * If `PropertyInjectors` object doesn't exist on this scope, then it creates one and attaches it to scope.
+       * @param scope The scope for which these PropertyInjectors will apply.
+       */
+      static of(scope) {
+        let propInjectors = scope[PROPERTY_INJECTORS_SYMBOL];
+        if (!propInjectors) {
+          propInjectors = new _PropertyInjectors(scope);
+          Object.defineProperty(scope, PROPERTY_INJECTORS_SYMBOL, {
+            value: propInjectors,
+            configurable: false,
+            enumerable: false
+          });
+        }
+        return propInjectors;
+      }
+      /**
+       * The scope attached to Injectors.
+       */
+      scope;
+      _injectors;
+      constructor(scope) {
+        this._injectors = /* @__PURE__ */ new Map();
+        this.scope = scope;
+      }
+      /**
+       * Add a list of  IPropertyInjectors to this collection of PropertyInjectors.
+       * @param propsInjectors - a list of IPropertyInjector
+       */
+      add(...propsInjectors) {
+        for (const pi of propsInjectors) {
+          this._injectors.set(pi.constructUniqueId, pi);
+        }
+      }
+      /**
+       * Get the PropertyInjector that is registered to the Construct's uniqueId.
+       * @param uniqueId - the construct uniqueId
+       * @returns - the IPropertyInjector for that construct uniqueId
+       */
+      for(uniqueId) {
+        return this._injectors.get(uniqueId);
+      }
+      /**
+       * This returns a list of the Constructs that are supporting by this PropertyInjectors.
+       * @returns a list of string showing the supported Constructs.
+       */
+      supportedClasses() {
+        return Array.from(this._injectors.keys());
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts
+function applyInjectors(uniqueId, originalProps, context) {
+  const injector = findInjectorFromConstruct(context.scope, uniqueId);
+  if (injector === void 0) {
+    return originalProps;
+  }
+  return injector.inject(originalProps, {
+    scope: context.scope,
+    id: context.id
+  });
+}
+function findInjectorFromConstruct(scope, uniqueId) {
+  const result = _lookup(scope);
+  if (result === void 0) {
+    return void 0;
+  }
+  const injectors = _getInjectorsFromConstruct(result);
+  const propsInjector = injectors.for(uniqueId);
+  if (!propsInjector) {
+    const parent = import_constructs3.Node.of(scope).scope;
+    if (parent) {
+      return findInjectorFromConstruct(parent, uniqueId);
+    }
+  }
+  return propsInjector;
+  function _getInjectorsFromConstruct(c) {
+    const k = PROPERTY_INJECTORS_SYMBOL;
+    return c[k];
+  }
+  function _lookup(c) {
+    if (PropertyInjectors.hasPropertyInjectors(c)) {
+      return c;
+    }
+    const n = import_constructs3.Node.of(c);
+    if (n === void 0) {
+      return void 0;
+    }
+    const _scope = n.scope;
+    if (!_scope) {
+      return void 0;
+    }
+    return _lookup(_scope);
+  }
+}
+var import_constructs3, PROPERTY_INJECTORS_SYMBOL;
+var init_prop_injectors_helpers = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts"() {
+    "use strict";
+    import_constructs3 = __toESM(require_lib4());
+    init_prop_injectors();
+    PROPERTY_INJECTORS_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.PropertyInjectors");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectable.ts
+function propertyInjectable(constructor) {
+  const PropertyInjectable = class extends constructor {
+    constructor(scope, id, props, ...args) {
+      const uniqueId = constructor.PROPERTY_INJECTION_ID;
+      if (uniqueId === void 0) {
+        throw new AssumptionError(lit`ConstructStaticPropertyInjectionIdProperty`, "Construct must have a static PROPERTY_INJECTION_ID property");
+      }
+      props = applyInjectors(uniqueId, props, {
+        scope,
+        id
+      });
+      super(scope, id, props, ...args);
+    }
+  };
+  Object.defineProperty(PropertyInjectable, "name", {
+    value: constructor.name,
+    writable: false
+  });
+  return PropertyInjectable;
+}
+var init_prop_injectable = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectable.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_prop_injectors_helpers();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/removal-policy.ts
+var init_removal_policy = __esm({
+  "../../aws-cdk-lib/core/lib/removal-policy.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/util.ts
+function capitalizePropertyNames(construct, obj) {
+  const stack = stackOf(construct);
+  obj = stack.resolve(obj);
+  if (typeof obj !== "object") {
+    return obj;
+  }
+  if (Array.isArray(obj)) {
+    return obj.map((x) => capitalizePropertyNames(construct, x));
+  }
+  const newObj = {};
+  for (const key of Object.keys(obj)) {
+    const value = obj[key];
+    const first = key.charAt(0).toUpperCase();
+    const newKey = first + key.slice(1);
+    newObj[newKey] = capitalizePropertyNames(construct, value);
+  }
+  return newObj;
+}
+function ignoreEmpty(obj) {
+  return new PostResolveToken(obj, (o) => {
+    if (o == null) {
+      return o;
+    }
+    if (Array.isArray(o) && o.length === 0) {
+      return void 0;
+    }
+    if (typeof o === "object" && Object.keys(o).length === 0) {
+      return void 0;
+    }
+    return o;
+  });
+}
+function filterUndefined(obj) {
+  if (Array.isArray(obj)) {
+    return obj.filter((x) => x != null).map((x) => filterUndefined(x));
+  }
+  if (typeof obj === "object") {
+    const ret = {};
+    for (const [key, value] of Object.entries(obj)) {
+      if (value == null) {
+        continue;
+      }
+      ret[key] = filterUndefined(value);
+    }
+    return ret;
+  }
+  return obj;
+}
+var PostResolveToken;
+var init_util = __esm({
+  "../../aws-cdk-lib/core/lib/util.ts"() {
+    "use strict";
+    init_core_construct_finders();
+    init_intrinsic();
+    PostResolveToken = class extends Intrinsic {
+      constructor(value, processor) {
+        super(value, { stackTrace: false });
+        this.processor = processor;
+      }
+      processor;
+      resolve(context) {
+        context.registerPostProcessor(this);
+        return super.resolve(context);
+      }
+      postProcess(o, context) {
+        return this.processor(o, context);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/arn.ts
+function parseTokenArn(arnToken, arnFormat) {
+  const components = Fn.split(":", arnToken);
+  const partition = Fn.select(1, components).toString();
+  const service = Fn.select(2, components).toString();
+  const region = Fn.select(3, components).toString();
+  const account = Fn.select(4, components).toString();
+  let resource;
+  let resourceName;
+  let sep3;
+  if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */ || arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) {
+    resource = Fn.select(5, components);
+    if (arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) {
+      resourceName = Fn.select(6, components);
+      sep3 = ":";
+    } else {
+      resourceName = void 0;
+      sep3 = void 0;
+    }
+  } else {
+    const lastComponents = Fn.split("/", Fn.select(5, components));
+    if (arnFormat === "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */) {
+      resource = Fn.select(0, lastComponents);
+      resourceName = Fn.select(1, lastComponents);
+    } else {
+      resource = Fn.select(1, lastComponents);
+      resourceName = Fn.select(2, lastComponents);
+    }
+    sep3 = "/";
+  }
+  return { partition, service, region, account, resource, resourceName, sep: sep3, arnFormat };
+}
+function parseArnShape(arn) {
+  const looksLikeArn = arn.startsWith("arn:");
+  if (!looksLikeArn) {
+    if (Token.isUnresolved(arn)) {
+      return "token";
+    } else {
+      throw new UnscopedValidationError(lit`ArnsMustStartWithArn`, `ARNs must start with "arn:" and have at least 6 components: ${arn}`);
+    }
+  }
+  const components = arn.split(":");
+  const partition = components.length > 1 ? components[1] : void 0;
+  if (!partition) {
+    throw new UnscopedValidationError(lit`ArnPartitionRequired`, "The `partition` component (2nd component) of an ARN is required: " + arn);
+  }
+  const service = components.length > 2 ? components[2] : void 0;
+  if (!service) {
+    throw new UnscopedValidationError(lit`ArnServiceRequired`, "The `service` component (3rd component) of an ARN is required: " + arn);
+  }
+  const resource = components.length > 5 ? components[5] : void 0;
+  if (!resource) {
+    throw new UnscopedValidationError(lit`ArnResourceRequired`, "The `resource` component (6th component) of an ARN is required: " + arn);
+  }
+  return components;
+}
+var Arn;
+var init_arn = __esm({
+  "../../aws-cdk-lib/core/lib/arn.ts"() {
+    "use strict";
+    init_cfn_fn();
+    init_errors();
+    init_literal_string();
+    init_token();
+    init_util();
+    Arn = class _Arn {
+      /**
+       * Creates an ARN from components.
+       *
+       * If `partition`, `region` or `account` are not specified, the stack's
+       * partition, region and account will be used.
+       *
+       * If any component is the empty string, an empty string will be inserted
+       * into the generated ARN at the location that component corresponds to.
+       *
+       * The ARN will be formatted as follows:
+       *
+       *   arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}
+       *
+       * The required ARN pieces that are omitted will be taken from the stack that
+       * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope
+       * can be 'undefined'.
+       */
+      static format(components, stack) {
+        const partition = components.partition ?? stack?.partition;
+        const region = components.region ?? stack?.region;
+        const account = components.account ?? stack?.account;
+        if (partition == null || region == null || account == null) {
+          throw new UnscopedValidationError(lit`ArnFormatMissingStackInfo`, `Arn.format: partition (${partition}), region (${region}), and account (${account}) must all be passed if stack is not passed.`);
+        }
+        const sep3 = components.sep ?? (components.arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */ ? ":" : "/");
+        const values = [
+          "arn",
+          ":",
+          partition,
+          ":",
+          components.service,
+          ":",
+          region,
+          ":",
+          account,
+          ":",
+          ...components.arnFormat === "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */ ? ["/"] : [],
+          components.resource
+        ];
+        if (sep3 !== "/" && sep3 !== ":" && sep3 !== "") {
+          throw new UnscopedValidationError(lit`InvalidResourcePathSeparator`, 'resourcePathSep may only be ":", "/" or an empty string');
+        }
+        if (components.resourceName != null) {
+          values.push(sep3);
+          values.push(components.resourceName);
+        }
+        return values.join("");
+      }
+      /**
+       * Given an ARN, parses it and returns components.
+       *
+       * IF THE ARN IS A CONCRETE STRING...
+       *
+       * ...it will be parsed and validated. The separator (`sep`) will be set to '/'
+       * if the 6th component includes a '/', in which case, `resource` will be set
+       * to the value before the '/' and `resourceName` will be the rest. In case
+       * there is no '/', `resource` will be set to the 6th components and
+       * `resourceName` will be set to the rest of the string.
+       *
+       * IF THE ARN IS A TOKEN...
+       *
+       * ...it cannot be validated, since we don't have the actual value yet at the
+       * time of this function call. You will have to supply `sepIfToken` and
+       * whether or not ARNs of the expected format usually have resource names
+       * in order to parse it properly. The resulting `ArnComponents` object will
+       * contain tokens for the subexpressions of the ARN, not string literals.
+       *
+       * If the resource name could possibly contain the separator char, the actual
+       * resource name cannot be properly parsed. This only occurs if the separator
+       * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs,
+       * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a
+       * Tokenized ARN, you must know the resource type and call
+       * `Arn.extractResourceName`.
+       *
+       * @param arn The ARN to parse
+       * @param sepIfToken The separator used to separate resource from resourceName
+       * @param hasName Whether there is a name component in the ARN at all. For
+       * example, SNS Topics ARNs have the 'resource' component contain the topic
+       * name, and no 'resourceName' component.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       * components of the ARN.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       *      components of the ARN.
+       *
+       * @deprecated use split instead
+       */
+      static parse(arn, sepIfToken = "/", hasName = true) {
+        let arnFormat;
+        if (!hasName) {
+          arnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+        } else {
+          arnFormat = sepIfToken === "/" ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */;
+        }
+        return this.split(arn, arnFormat);
+      }
+      /**
+       * Splits the provided ARN into its components.
+       * Works both if 'arn' is a string like 'arn:aws:s3:::bucket',
+       * and a Token representing a dynamic CloudFormation expression
+       * (in which case the returned components will also be dynamic CloudFormation expressions,
+       * encoded as Tokens).
+       *
+       * @param arn the ARN to split into its components
+       * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses
+       */
+      static split(arn, arnFormat) {
+        const components = parseArnShape(arn);
+        if (components === "token") {
+          return parseTokenArn(arn, arnFormat);
+        }
+        const [, partition, service, region, account, resourceTypeOrName, ...rest] = components;
+        let resource;
+        let resourceName;
+        let sep3;
+        let resourcePartStartIndex = 0;
+        let detectedArnFormat;
+        let slashIndex = resourceTypeOrName.indexOf("/");
+        if (slashIndex === 0) {
+          slashIndex = resourceTypeOrName.indexOf("/", 1);
+          resourcePartStartIndex = 1;
+          detectedArnFormat = "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */;
+        }
+        if (slashIndex !== -1) {
+          if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */) {
+            sep3 = void 0;
+            slashIndex = -1;
+            detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+          } else {
+            sep3 = "/";
+            detectedArnFormat = resourcePartStartIndex === 0 ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */;
+          }
+        } else if (rest.length > 0) {
+          sep3 = ":";
+          slashIndex = -1;
+          detectedArnFormat = "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */;
+        } else {
+          sep3 = void 0;
+          detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+        }
+        if (slashIndex !== -1) {
+          resource = resourceTypeOrName.substring(resourcePartStartIndex, slashIndex);
+          resourceName = resourceTypeOrName.substring(slashIndex + 1);
+        } else {
+          resource = resourceTypeOrName;
+        }
+        if (rest.length > 0) {
+          if (!resourceName) {
+            resourceName = "";
+          } else {
+            resourceName += ":";
+          }
+          resourceName += rest.join(":");
+        }
+        return filterUndefined({
+          service: service || void 0,
+          resource: resource || void 0,
+          partition: partition || void 0,
+          region,
+          account,
+          resourceName,
+          sep: sep3,
+          arnFormat: detectedArnFormat
+        });
+      }
+      /**
+       * Extract the full resource name from an ARN
+       *
+       * Necessary for resource names (paths) that may contain the separator, like
+       * `arn:aws:iam::111111111111:role/path/to/role/name`.
+       *
+       * Only works if we statically know the expected `resourceType` beforehand, since we're going
+       * to use that to split the string on ':/' (and take the right-hand side).
+       *
+       * We can't extract the 'resourceType' from the ARN at hand, because CloudFormation Expressions
+       * only allow literals in the 'separator' argument to `{ Fn::Split }`, and so it can't be
+       * `{ Fn::Select: [5, { Fn::Split: [':', ARN] }}`.
+       *
+       * Only necessary for ARN formats for which the type-name separator is `/`.
+       */
+      static extractResourceName(arn, resourceType) {
+        const components = parseArnShape(arn);
+        if (components === "token") {
+          return Fn.select(1, Fn.split(`:${resourceType}/`, arn));
+        }
+        const parsed = _Arn.split(arn, "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */);
+        if (!Token.isUnresolved(parsed.resource) && parsed.resource !== resourceType) {
+          throw new UnscopedValidationError(lit`ExpectedResourceType`, `Expected resource type '${resourceType}' in ARN, got '${parsed.resource}' in '${arn}'`);
+        }
+        if (!parsed.resourceName) {
+          throw new UnscopedValidationError(lit`ExpectedResourceName`, `Expected resource name in ARN, didn't find one: '${arn}'`);
+        }
+        return parsed.resourceName;
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts
+function memoizedGetter(target, _context) {
+  let m;
+  function replacementMethod() {
+    if (!m) {
+      m = /* @__PURE__ */ new WeakMap();
+    }
+    if (m.has(this)) {
+      return m.get(this);
+    }
+    const ret = target.call(this);
+    m.set(this, ret);
+    return ret;
+  }
+  return replacementMethod;
+}
+var init_memoize = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/md5.ts
+function md5hash(x) {
+  if (!_impl) {
+    try {
+      crypto.createHash("md5");
+      _impl = cryptoMd5;
+    } catch {
+      _impl = jsMd5;
+    }
+  }
+  return _impl(x);
+}
+function cryptoMd5(x) {
+  const hash = crypto.createHash("md5");
+  hash.update(x);
+  return hash.digest("hex");
+}
+function jsMd5(s) {
+  return hex(md5Buffer(Buffer.from(s, "utf-8")));
+}
+function md5Round(x, k) {
+  let a = x[0], b = x[1], c = x[2], d = x[3];
+  a = F(a, b, c, d, k[0], 7, -680876936);
+  d = F(d, a, b, c, k[1], 12, -389564586);
+  c = F(c, d, a, b, k[2], 17, 606105819);
+  b = F(b, c, d, a, k[3], 22, -1044525330);
+  a = F(a, b, c, d, k[4], 7, -176418897);
+  d = F(d, a, b, c, k[5], 12, 1200080426);
+  c = F(c, d, a, b, k[6], 17, -1473231341);
+  b = F(b, c, d, a, k[7], 22, -45705983);
+  a = F(a, b, c, d, k[8], 7, 1770035416);
+  d = F(d, a, b, c, k[9], 12, -1958414417);
+  c = F(c, d, a, b, k[10], 17, -42063);
+  b = F(b, c, d, a, k[11], 22, -1990404162);
+  a = F(a, b, c, d, k[12], 7, 1804603682);
+  d = F(d, a, b, c, k[13], 12, -40341101);
+  c = F(c, d, a, b, k[14], 17, -1502002290);
+  b = F(b, c, d, a, k[15], 22, 1236535329);
+  a = G(a, b, c, d, k[1], 5, -165796510);
+  d = G(d, a, b, c, k[6], 9, -1069501632);
+  c = G(c, d, a, b, k[11], 14, 643717713);
+  b = G(b, c, d, a, k[0], 20, -373897302);
+  a = G(a, b, c, d, k[5], 5, -701558691);
+  d = G(d, a, b, c, k[10], 9, 38016083);
+  c = G(c, d, a, b, k[15], 14, -660478335);
+  b = G(b, c, d, a, k[4], 20, -405537848);
+  a = G(a, b, c, d, k[9], 5, 568446438);
+  d = G(d, a, b, c, k[14], 9, -1019803690);
+  c = G(c, d, a, b, k[3], 14, -187363961);
+  b = G(b, c, d, a, k[8], 20, 1163531501);
+  a = G(a, b, c, d, k[13], 5, -1444681467);
+  d = G(d, a, b, c, k[2], 9, -51403784);
+  c = G(c, d, a, b, k[7], 14, 1735328473);
+  b = G(b, c, d, a, k[12], 20, -1926607734);
+  a = H(a, b, c, d, k[5], 4, -378558);
+  d = H(d, a, b, c, k[8], 11, -2022574463);
+  c = H(c, d, a, b, k[11], 16, 1839030562);
+  b = H(b, c, d, a, k[14], 23, -35309556);
+  a = H(a, b, c, d, k[1], 4, -1530992060);
+  d = H(d, a, b, c, k[4], 11, 1272893353);
+  c = H(c, d, a, b, k[7], 16, -155497632);
+  b = H(b, c, d, a, k[10], 23, -1094730640);
+  a = H(a, b, c, d, k[13], 4, 681279174);
+  d = H(d, a, b, c, k[0], 11, -358537222);
+  c = H(c, d, a, b, k[3], 16, -722521979);
+  b = H(b, c, d, a, k[6], 23, 76029189);
+  a = H(a, b, c, d, k[9], 4, -640364487);
+  d = H(d, a, b, c, k[12], 11, -421815835);
+  c = H(c, d, a, b, k[15], 16, 530742520);
+  b = H(b, c, d, a, k[2], 23, -995338651);
+  a = I(a, b, c, d, k[0], 6, -198630844);
+  d = I(d, a, b, c, k[7], 10, 1126891415);
+  c = I(c, d, a, b, k[14], 15, -1416354905);
+  b = I(b, c, d, a, k[5], 21, -57434055);
+  a = I(a, b, c, d, k[12], 6, 1700485571);
+  d = I(d, a, b, c, k[3], 10, -1894986606);
+  c = I(c, d, a, b, k[10], 15, -1051523);
+  b = I(b, c, d, a, k[1], 21, -2054922799);
+  a = I(a, b, c, d, k[8], 6, 1873313359);
+  d = I(d, a, b, c, k[15], 10, -30611744);
+  c = I(c, d, a, b, k[6], 15, -1560198380);
+  b = I(b, c, d, a, k[13], 21, 1309151649);
+  a = I(a, b, c, d, k[4], 6, -145523070);
+  d = I(d, a, b, c, k[11], 10, -1120210379);
+  c = I(c, d, a, b, k[2], 15, 718787259);
+  b = I(b, c, d, a, k[9], 21, -343485551);
+  x[0] = add32(a, x[0]);
+  x[1] = add32(b, x[1]);
+  x[2] = add32(c, x[2]);
+  x[3] = add32(d, x[3]);
+}
+function cmn(q, a, b, x, s, t) {
+  a = add32(add32(a, q), add32(x, t));
+  return add32(a << s | a >>> 32 - s, b);
+}
+function F(a, b, c, d, x, s, t) {
+  return cmn(b & c | ~b & d, a, b, x, s, t);
+}
+function G(a, b, c, d, x, s, t) {
+  return cmn(b & d | c & ~d, a, b, x, s, t);
+}
+function H(a, b, c, d, x, s, t) {
+  return cmn(b ^ c ^ d, a, b, x, s, t);
+}
+function I(a, b, c, d, x, s, t) {
+  return cmn(c ^ (b | ~d), a, b, x, s, t);
+}
+function md5Buffer(buf) {
+  let n = buf.length, state = [1732584193, -271733879, -1732584194, 271733878], i = 0;
+  for (; i + 64 <= n; i += 64) {
+    md5Round(state, bytesToWordsBuf(buf, i));
+  }
+  const remainingBytes = n - i;
+  const padding = Buffer.alloc(64 - remainingBytes < 9 ? 128 : 64);
+  buf.copy(padding, 0, i);
+  padding.writeUint8(128, remainingBytes);
+  const bitLength = n * 8;
+  padding.writeUint32LE(n << 3, padding.length - 8);
+  if (bitLength >= 4294967295) {
+    padding.writeUint32LE(Math.floor(bitLength / 4294967295), padding.length - 4);
+  }
+  md5Round(state, bytesToWordsBuf(padding, 0));
+  if (padding.length > 64) {
+    md5Round(state, bytesToWordsBuf(padding, 64));
+  }
+  return state;
+}
+function bytesToWordsBuf(buf, byteOffset) {
+  const ret = new Array(16);
+  let i = 0, j = byteOffset;
+  for (; i < 16; i++, j += 4) {
+    ret[i] = buf.readUint32LE(j);
+  }
+  return ret;
+}
+function hexify(n) {
+  const s = new Array();
+  for (let j = 0; j < 4; j++) {
+    s.push(hex_chr[n >>> j * 8 + 4 & 15] + hex_chr[n >>> j * 8 & 15]);
+  }
+  return s.join("");
+}
+function hex(x) {
+  const ret = new Array(x.length);
+  for (let i = 0; i < x.length; i++) ret[i] = hexify(x[i]);
+  return ret.join("");
+}
+function add32(a, b) {
+  return a + b & 4294967295;
+}
+var crypto, _impl, hex_chr;
+var init_md5 = __esm({
+  "../../aws-cdk-lib/core/lib/private/md5.ts"() {
+    "use strict";
+    crypto = __toESM(require("crypto"));
+    hex_chr = "0123456789abcdef".split("");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/unique-resource-name.ts
+function makeUniqueResourceName(components, options) {
+  const maxLength = options.maxLength ?? 256;
+  const separator = options.separator ?? "";
+  const prefix = options.prefix ?? "";
+  components = components.filter((x) => x !== HIDDEN_ID);
+  if (components.length === 0) {
+    throw new UnscopedValidationError(lit`UnableToUnableCalculateUnique`, "Unable to calculate a unique resource name for an empty set of components");
+  }
+  if (components.length === 1) {
+    const topLevelResource = prefix + removeNonAllowedSpecialCharacters(components[0], separator, options.allowedSpecialCharacters);
+    if (topLevelResource.length <= maxLength) {
+      return topLevelResource;
+    }
+  }
+  const hash = pathHash(components);
+  const human = prefix + removeDupes(components).filter((pathElement) => pathElement !== HIDDEN_FROM_HUMAN_ID).map((pathElement) => removeNonAllowedSpecialCharacters(pathElement, separator, options.allowedSpecialCharacters)).filter((pathElement) => pathElement).join(separator).concat(separator);
+  const maxhumanLength = maxLength - HASH_LEN;
+  return human.length > maxhumanLength ? `${splitInMiddle(human, maxhumanLength)}${hash}` : `${human}${hash}`;
+}
+function pathHash(path23) {
+  const md52 = md5hash(path23.join(PATH_SEP));
+  return md52.slice(0, HASH_LEN).toUpperCase();
+}
+function removeNonAllowedSpecialCharacters(s, _separator, allowedSpecialCharacters) {
+  const pattern = allowedSpecialCharacters ? `[^A-Za-z0-9${allowedSpecialCharacters}]` : "[^A-Za-z0-9]";
+  const regex = new RegExp(pattern, "g");
+  return s.replace(regex, "");
+}
+function removeDupes(path23) {
+  const ret = new Array();
+  for (const component of path23) {
+    if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) {
+      ret.push(component);
+    }
+  }
+  return ret;
+}
+function splitInMiddle(s, maxLength = MAX_LEN - HASH_LEN) {
+  const half = maxLength / 2;
+  return s.slice(0, half) + s.slice(-half);
+}
+var HIDDEN_FROM_HUMAN_ID, HIDDEN_ID, PATH_SEP, MAX_LEN, HASH_LEN;
+var init_unique_resource_name = __esm({
+  "../../aws-cdk-lib/core/lib/private/unique-resource-name.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_md5();
+    HIDDEN_FROM_HUMAN_ID = "Resource";
+    HIDDEN_ID = "Default";
+    PATH_SEP = "/";
+    MAX_LEN = 256;
+    HASH_LEN = 8;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/uniqueid.ts
+function makeUniqueId(components) {
+  components = components.filter((x) => x !== HIDDEN_ID2);
+  if (components.length === 0) {
+    throw new UnscopedValidationError(lit`UnableToCalculateUniqueId`, "Unable to calculate a unique id for an empty set of components");
+  }
+  const unresolvedTokens = components.filter((c) => unresolved(c));
+  if (unresolvedTokens.length > 0) {
+    throw new UnscopedValidationError(lit`ComponentsContainUnresolvedTokens`, `ID components may not include unresolved tokens: ${unresolvedTokens.join(",")}`);
+  }
+  if (components.length === 1) {
+    const candidate = removeNonAlphanumeric(components[0]);
+    if (candidate.length <= MAX_ID_LEN) {
+      return candidate;
+    }
+  }
+  const hash = pathHash2(components);
+  const human = removeDupes2(components).filter((x) => x !== HIDDEN_FROM_HUMAN_ID2).map(removeNonAlphanumeric).join("").slice(0, MAX_HUMAN_LEN);
+  return human + hash;
+}
+function pathHash2(path23) {
+  const md52 = md5hash(path23.join(PATH_SEP2));
+  return md52.slice(0, HASH_LEN2).toUpperCase();
+}
+function removeNonAlphanumeric(s) {
+  return s.replace(/[^A-Za-z0-9]/g, "");
+}
+function removeDupes2(path23) {
+  const ret = new Array();
+  for (const component of path23) {
+    if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) {
+      ret.push(component);
+    }
+  }
+  return ret;
+}
+var HIDDEN_FROM_HUMAN_ID2, HIDDEN_ID2, PATH_SEP2, HASH_LEN2, MAX_HUMAN_LEN, MAX_ID_LEN;
+var init_uniqueid = __esm({
+  "../../aws-cdk-lib/core/lib/private/uniqueid.ts"() {
+    "use strict";
+    init_errors();
+    init_encoding();
+    init_literal_string();
+    init_md5();
+    HIDDEN_FROM_HUMAN_ID2 = "Resource";
+    HIDDEN_ID2 = "Default";
+    PATH_SEP2 = "/";
+    HASH_LEN2 = 8;
+    MAX_HUMAN_LEN = 240;
+    MAX_ID_LEN = 255;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/names.ts
+function isTopLevelStack(x) {
+  return STACK_TYPE.isMarked(x) && !unresolved(x.stackName);
+}
+function findLastIndex(xs, pred) {
+  for (let i = xs.length - 1; i >= 0; i--) {
+    if (pred(xs[i])) {
+      return i;
+    }
+  }
+  return -1;
+}
+var import_constructs4, Names;
+var init_names = __esm({
+  "../../aws-cdk-lib/core/lib/names.ts"() {
+    "use strict";
+    import_constructs4 = __toESM(require_lib4());
+    init_core_construct_finders();
+    init_encoding();
+    init_unique_resource_name();
+    init_uniqueid();
+    Names = class {
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. The identifier includes a human readable portion rendered
+       * from the path components and a hash suffix. uniqueId is not unique if multiple
+       * copies of the stack are deployed. Prefer using uniqueResourceName().
+       *
+       * @param construct The construct
+       * @returns a unique id based on the construct path
+       */
+      static uniqueId(construct) {
+        const node = import_constructs4.Node.of(construct);
+        const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id);
+        return components.length > 0 ? makeUniqueId(components) : "";
+      }
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. The identifier includes a human readable portion rendered
+       * from the path components and a hash suffix.
+       *
+       * TODO (v2): replace with API to use `constructs.Node`.
+       *
+       * @param node The construct node
+       * @returns a unique id based on the construct path
+       */
+      static nodeUniqueId(node) {
+        const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id);
+        return components.length > 0 ? makeUniqueId(components) : "";
+      }
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. This function finds the stackName of the parent stack (non-nested)
+       * to the construct, and the ids of the components in the construct path.
+       *
+       * The user can define allowed special characters, a separator between the elements,
+       * and the maximum length of the resource name. The name includes a human readable portion rendered
+       * from the path components, with or without user defined separators, and a hash suffix.
+       * If the resource name is longer than the maximum length, it is trimmed in the middle.
+       *
+       * @param construct The construct
+       * @param options Options for defining the unique resource name
+       * @returns a unique resource name based on the construct path
+       */
+      static uniqueResourceName(construct, options) {
+        const node = import_constructs4.Node.of(construct);
+        const scopes = node.scopes;
+        const isStack = scopes.map(isTopLevelStack);
+        const lastStackIndex = Math.max(findLastIndex(isStack, (x) => x), 0);
+        const componentsPath = node.scopes.slice(lastStackIndex).map((component) => isTopLevelStack(component) ? component.stackName : import_constructs4.Node.of(component).id);
+        return makeUniqueResourceName(componentsPath, options);
+      }
+      /**
+       * Return the construct path of the given construct, starting at the nearest enclosing Stack
+       *
+       * Skips over Nested Stacks, in other words Nested Stacks are included in the construct
+       * paths.
+       */
+      static stackRelativeConstructPath(construct) {
+        const scopes = construct.node.scopes;
+        const isStack = scopes.map(isTopLevelStack);
+        const lastStackIndex = findLastIndex(isStack, (x) => x);
+        return scopes.slice(lastStackIndex + 1).map((x) => x.node.id).join("/");
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/physical-name-generator.ts
+function generatePhysicalName(resource) {
+  const stack = stackOf(resource);
+  const stackPart = new PrefixNamePart(stack.stackName, 25);
+  const idPart = new SuffixNamePart(Names.nodeUniqueId(resource.node), 24);
+  const region = stack.region;
+  if (Token.isUnresolved(region) || !region) {
+    throw new ValidationError(lit`CannotGeneratePhysicalNameRegionUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the region is un-resolved or missing`, resource);
+  }
+  const account = stack.account;
+  if (Token.isUnresolved(account) || !account) {
+    throw new ValidationError(lit`CannotGeneratePhysicalNameAccountUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the account is un-resolved or missing`, resource);
+  }
+  const parts = [stackPart, idPart].map((part) => part.generate());
+  const hashLength = 12;
+  const sha256 = crypto2.createHash("sha256").update(stackPart.bareStr).update(idPart.bareStr).update(region).update(account);
+  const hash = sha256.digest("hex").slice(0, hashLength);
+  const ret = [...parts, hash].join("");
+  return ret.toLowerCase();
+}
+function isGeneratedWhenNeededMarker(val2) {
+  const token = TokenMap.instance().lookupString(val2);
+  return !!token && GENERATE_IF_NEEDED_SYMBOL in token;
+}
+var crypto2, import_constructs5, NamePart, PrefixNamePart, SuffixNamePart, GENERATE_IF_NEEDED_SYMBOL, GeneratedWhenNeededMarker;
+var init_physical_name_generator = __esm({
+  "../../aws-cdk-lib/core/lib/private/physical-name-generator.ts"() {
+    "use strict";
+    crypto2 = __toESM(require("crypto"));
+    import_constructs5 = __toESM(require_lib4());
+    init_token_map();
+    init_errors();
+    init_names();
+    init_token();
+    init_core_construct_finders();
+    init_literal_string();
+    NamePart = class {
+      bareStr;
+      constructor(bareStr) {
+        this.bareStr = bareStr;
+      }
+    };
+    PrefixNamePart = class extends NamePart {
+      constructor(bareStr, prefixLength) {
+        super(bareStr);
+        this.prefixLength = prefixLength;
+      }
+      prefixLength;
+      generate() {
+        return this.bareStr.slice(0, this.prefixLength);
+      }
+    };
+    SuffixNamePart = class extends NamePart {
+      constructor(str, suffixLength) {
+        super(str);
+        this.suffixLength = suffixLength;
+      }
+      suffixLength;
+      generate() {
+        const strLen = this.bareStr.length;
+        const startIndex = Math.max(strLen - this.suffixLength, 0);
+        return this.bareStr.slice(startIndex, strLen);
+      }
+    };
+    GENERATE_IF_NEEDED_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core..GenerateIfNeeded");
+    GeneratedWhenNeededMarker = class {
+      creationStack = ["Token stack traces are no longer captured"];
+      constructor() {
+        Object.defineProperty(this, GENERATE_IF_NEEDED_SYMBOL, { value: true });
+      }
+      resolve(_ctx) {
+        throw new UnscopedValidationError(lit`InvalidPhysicalNameMarker`, 'Invalid physical name passed to CloudFormation. Use "this.physicalName" instead');
+      }
+      toString() {
+        return "PhysicalName.GENERATE_IF_NEEDED";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/constants.ts
+var ALLOWED_FQN_PREFIXES;
+var init_constants2 = __esm({
+  "../../aws-cdk-lib/core/lib/private/constants.ts"() {
+    "use strict";
+    ALLOWED_FQN_PREFIXES = [
+      // SCOPES
+      "@aws-cdk/",
+      "@aws-cdk-containers/",
+      "@aws-solutions-konstruk/",
+      "@aws-solutions-constructs/",
+      "@amzn/",
+      "@cdklabs/",
+      // PACKAGES
+      "aws-rfdk.",
+      "aws-cdk-lib.",
+      "cdk8s."
+    ];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts
+function addMetadata(construct, mixin) {
+  let reportedValue = "*";
+  const fqn = Object.getPrototypeOf(mixin).constructor[JSII_RUNTIME_SYMBOL2]?.fqn;
+  if (fqn && ALLOWED_FQN_PREFIXES.find((prefix) => fqn.startsWith(prefix))) {
+    reportedValue = fqn;
+  }
+  construct.node.addMetadata(MIXIN_METADATA_KEY, { mixin: reportedValue });
+}
+function applyMixin(construct, mixin) {
+  addMetadata(construct, mixin);
+  mixin.applyTo(construct);
+}
+function withMixins(target, ...mixins) {
+  const allConstructs = target.node.findAll();
+  for (const mixin of mixins) {
+    for (const construct of allConstructs) {
+      if (mixin.supports(construct)) {
+        applyMixin(construct, mixin);
+      }
+    }
+  }
+  return target;
+}
+var MIXIN_METADATA_KEY;
+var init_mixin_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts"() {
+    "use strict";
+    init_constants();
+    init_constants2();
+    MIXIN_METADATA_KEY = "aws:cdk:analytics:mixin";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/resource.ts
+function mimicReference(refSource, producer) {
+  const reference = Tokenization.reverse(refSource, {
+    // If this is an ARN concatenation, just fail to extract a reference.
+    failConcat: false
+  });
+  if (!Reference.isReference(reference)) {
+    return Lazy.uncachedString(producer);
+  }
+  return Token.asString(new class extends Reference {
+    resolve(context) {
+      return producer.produce(context);
+    }
+  }(reference, reference.target, reference.displayName));
+}
+var import_constructs6, _physicalName_dec, _env_dec, _stack_dec, _a, _init, Resource;
+var init_resource = __esm({
+  "../../aws-cdk-lib/core/lib/resource.ts"() {
+    "use strict";
+    import_constructs6 = __toESM(require_lib4());
+    init_arn();
+    init_cfn_resource();
+    init_constants();
+    init_errors();
+    init_helpers_internal();
+    init_memoize();
+    init_lazy();
+    init_core_construct_finders();
+    init_physical_name_generator();
+    init_reference();
+    init_token();
+    init_mixin_metadata();
+    init_literal_string();
+    Resource = class extends (_a = import_constructs6.Construct, _stack_dec = [memoizedGetter], _env_dec = [memoizedGetter], _physicalName_dec = [memoizedGetter], _a) {
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        __runInitializers(_init, 5, this);
+        __publicField(this, "_allowCrossEnvironment");
+        /** Account given in the constructor, if any. Will be same as Stack if not supplied. */
+        __publicField(this, "_customAccount");
+        /** Account given in the constructor, if any. Will be same as Stack if not supplied.*/
+        __publicField(this, "_customRegion");
+        /** What we are doing for the physical name */
+        __publicField(this, "_physicalNameMode");
+        /** The physicalName supplied into the constructor */
+        __publicField(this, "_givenPhysicalName");
+        /** The generated physical name, in case of cross-env access */
+        __publicField(this, "_generatedPhysicalName", Box.fromValue(void 0));
+        if ((props.account !== void 0 || props.region !== void 0) && props.environmentFromArn !== void 0) {
+          throw new ValidationError(lit`ConflictingEnvironmentOptions`, `Supply at most one of 'account'/'region' (${props.account}/${props.region}) and 'environmentFromArn' (${props.environmentFromArn})`, this);
+        }
+        Object.defineProperty(this, RESOURCE_SYMBOL, { value: true });
+        const parsedArn = props.environmentFromArn ? (
+          // Since we only want the region and account, NO_RESOURCE_NAME is good enough
+          Arn.split(props.environmentFromArn, "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */)
+        ) : void 0;
+        this._customAccount = props.account ?? parsedArn?.account;
+        this._customRegion = props.region ?? parsedArn?.region;
+        this._givenPhysicalName = props.physicalName;
+        if (props.physicalName && isGeneratedWhenNeededMarker(props.physicalName)) {
+          this._physicalNameMode = "generate";
+          this._allowCrossEnvironment = true;
+        } else if (props.physicalName && !Token.isUnresolved(props.physicalName)) {
+          this._physicalNameMode = "given-resolved";
+          this._allowCrossEnvironment = true;
+        } else {
+          this._physicalNameMode = "deploy-time";
+          this._allowCrossEnvironment = false;
+        }
+      }
+      /**
+       * Check whether the given construct is a Resource
+       */
+      static isResource(construct) {
+        return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct;
+      }
+      /**
+       * Returns true if the construct was created by CDK, and false otherwise
+       */
+      static isOwnedResource(construct) {
+        return construct.node.defaultChild ? CfnResource.isCfnResource(construct.node.defaultChild) : false;
+      }
+      get stack() {
+        return stackOf(this);
+      }
+      get env() {
+        return {
+          account: this._customAccount ?? this.stack.account,
+          region: this._customRegion ?? this.stack.region
+        };
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      get physicalName() {
+        switch (this._physicalNameMode) {
+          case "generate":
+            return Token.asString(this._generatedPhysicalName);
+          case "given-resolved":
+            return this._givenPhysicalName;
+          case "deploy-time":
+            return this._givenPhysicalName ?? Token.asString(void 0);
+        }
+      }
+      /**
+       * Called when this resource is referenced across environments
+       * (account/region) to order to request that a physical name will be generated
+       * for this resource during synthesis, so the resource can be referenced
+       * through its absolute name/arn.
+       *
+       * @internal
+       */
+      _enableCrossEnvironment() {
+        if (!this._allowCrossEnvironment) {
+          throw new ValidationError(lit`CannotUseCrossEnvironment`, `Cannot use resource '${this.node.path}' in a cross-environment fashion, the resource's physical name must be explicit set or use \`PhysicalName.GENERATE_IF_NEEDED\``, this);
+        }
+        this._generatedPhysicalName.update(
+          (name) => this._physicalNameMode === "generate" && !name ? this.generatePhysicalName() : name
+        );
+      }
+      /**
+       * Apply the given removal policy to this resource
+       *
+       * The Removal Policy controls what happens to this resource when it stops
+       * being managed by CloudFormation, either because you've removed it from the
+       * CDK application or because you've made a change that requires the resource
+       * to be replaced.
+       *
+       * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
+       * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
+       */
+      applyRemovalPolicy(policy) {
+        const child = this.node.defaultChild;
+        if (!child || !CfnResource.isCfnResource(child)) {
+          throw new ValidationError(lit`CannotApplyRemovalPolicy`, "Cannot apply RemovalPolicy: no child or not a CfnResource. Apply the removal policy on the CfnResource directly.", this);
+        }
+        child.applyRemovalPolicy(policy);
+      }
+      /**
+       * Override the cross-stack reference strength for this resource.
+       *
+       * When set, any cross-stack reference to this resource will use the specified
+       * mechanism instead of the global default determined by the
+       * `@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for
+       * selectively weakening specific references to avoid the "deadly embrace" problem
+       * without changing the app-wide default.
+       *
+       * @param strength - The reference strength to use for this resource.
+       */
+      applyCrossStackReferenceStrength(strength) {
+        const child = this.node.defaultChild;
+        if (!child || !CfnResource.isCfnResource(child)) {
+          throw new ValidationError(lit`CannotApplyCrossStackReferenceStrength`, "Cannot apply CrossStackReferenceStrength: no child or not a CfnResource. Apply the override on the CfnResource directly.", this);
+        }
+        child.applyCrossStackReferenceStrength(strength);
+      }
+      generatePhysicalName() {
+        return generatePhysicalName(this);
+      }
+      /**
+       * Returns an environment-sensitive token that should be used for the
+       * resource's "name" attribute (e.g. `bucket.bucketName`).
+       *
+       * Normally, this token will resolve to `nameAttr`, but if the resource is
+       * referenced across environments, it will be resolved to `this.physicalName`,
+       * which will be a concrete name.
+       *
+       * @param nameAttr The CFN attribute which resolves to the resource's name.
+       * Commonly this is the resource's `ref`.
+       */
+      getResourceNameAttribute(nameAttr) {
+        return mimicReference(nameAttr, {
+          produce: (context) => {
+            const consumingStack = stackOf(context.scope);
+            if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) {
+              this._enableCrossEnvironment();
+              return this.physicalName;
+            } else {
+              return nameAttr;
+            }
+          }
+        });
+      }
+      /**
+       * Returns an environment-sensitive token that should be used for the
+       * resource's "ARN" attribute (e.g. `bucket.bucketArn`).
+       *
+       * Normally, this token will resolve to `arnAttr`, but if the resource is
+       * referenced across environments, `arnComponents` will be used to synthesize
+       * a concrete ARN with the resource's physical name. Make sure to reference
+       * `this.physicalName` in `arnComponents`.
+       *
+       * @param arnAttr The CFN attribute which resolves to the ARN of the resource.
+       * Commonly it will be called "Arn" (e.g. `resource.attrArn`), but sometimes
+       * it's the CFN resource's `ref`.
+       * @param arnComponents The format of the ARN of this resource. You must
+       * reference `this.physicalName` somewhere within the ARN in order for
+       * cross-environment references to work.
+       *
+       */
+      getResourceArnAttribute(arnAttr, arnComponents) {
+        return mimicReference(arnAttr, {
+          produce: (context) => {
+            const consumingStack = stackOf(context.scope);
+            if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) {
+              this._enableCrossEnvironment();
+              return this.stack.formatArn(arnComponents);
+            } else {
+              return arnAttr;
+            }
+          }
+        });
+      }
+    };
+    _init = __decoratorStart(_a);
+    __decorateElement(_init, 2, "stack", _stack_dec, Resource);
+    __decorateElement(_init, 2, "env", _env_dec, Resource);
+    __decorateElement(_init, 2, "physicalName", _physicalName_dec, Resource);
+    __decoratorMetadata(_init, Resource);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource.ts
+function uppercaseProperties(props) {
+  const ret = {};
+  Object.keys(props).forEach((key) => {
+    const upper = key.slice(0, 1).toUpperCase() + key.slice(1);
+    ret[upper] = props[key];
+  });
+  return ret;
+}
+function renderResourceType(scope, resourceType) {
+  if (!resourceType) {
+    return "AWS::CloudFormation::CustomResource";
+  }
+  if (!resourceType.startsWith("Custom::")) {
+    throw new ValidationError(lit`MustBeCustomResourceType`, `Custom resource type must begin with "Custom::" (${resourceType})`, scope);
+  }
+  if (resourceType.length > 60) {
+    throw new ValidationError(lit`CustomResourceTypeLength`, `Custom resource type length > 60 (${resourceType})`, scope);
+  }
+  const typeName = resourceType.slice(resourceType.indexOf("::") + 2);
+  if (!/^[a-z0-9_@-]+$/i.test(typeName)) {
+    throw new ValidationError(lit`CustomResourceTypeNameInclude`, `Custom resource type name can only include alphanumeric characters and _@- (${typeName})`, scope);
+  }
+  return resourceType;
+}
+var _getAttString_dec, _getAtt_dec, _a2, _CustomResource_decorators, _init2, CustomResource;
+var init_custom_resource = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource.ts"() {
+    "use strict";
+    init_annotations();
+    init_cfn_resource();
+    init_errors();
+    init_metadata_resource();
+    init_no_box_stack_traces();
+    init_literal_string();
+    init_prop_injectable();
+    init_removal_policy();
+    init_resource();
+    init_token();
+    _CustomResource_decorators = [noBoxStackTraces, propertyInjectable];
+    CustomResource = class extends (_a2 = Resource, _getAtt_dec = [MethodMetadata()], _getAttString_dec = [MethodMetadata()], _a2) {
+      constructor(scope, id, props) {
+        super(scope, id);
+        __runInitializers(_init2, 5, this);
+        __publicField(this, "resource");
+        addConstructMetadata(this, props);
+        const type = renderResourceType(this, props.resourceType);
+        const pascalCaseProperties = props.pascalCaseProperties ?? false;
+        const properties = pascalCaseProperties ? uppercaseProperties(props.properties || {}) : props.properties || {};
+        if (props.serviceTimeout !== void 0 && !props.serviceTimeout.isUnresolved()) {
+          const serviceTimeoutSeconds = props.serviceTimeout.toSeconds();
+          if (serviceTimeoutSeconds < 1 || serviceTimeoutSeconds > 3600) {
+            throw new ValidationError(lit`ServiceTimeoutSeconds`, `serviceTimeout must either be between 1 and 3600 seconds, got ${serviceTimeoutSeconds}`, this);
+          }
+        }
+        const constructPropertiesPassed = {
+          ServiceToken: props.serviceToken,
+          ServiceTimeout: props.serviceTimeout?.toSeconds().toString()
+        };
+        const hasCommonKeys = Object.keys(properties).some((key) => key in constructPropertiesPassed);
+        if (hasCommonKeys) {
+          Annotations.of(this).addWarningV2("@aws-cdk/core:customResourcePropConflict", `The following keys will be overwritten as they exist in the 'properties' prop. Keys found: ${Object.keys(properties).filter((key) => key in constructPropertiesPassed)}`);
+        }
+        this.resource = new CfnResource(this, "Default", {
+          type,
+          properties: {
+            ...constructPropertiesPassed,
+            ...properties
+          }
+        });
+        this.resource.applyRemovalPolicy(props.removalPolicy, {
+          default: "destroy" /* DESTROY */
+        });
+      }
+      /**
+       * The physical name of this custom resource.
+       */
+      get ref() {
+        return this.resource.ref;
+      }
+      getAtt(attributeName) {
+        return this.resource.getAtt(attributeName);
+      }
+      getAttString(attributeName) {
+        return Token.asString(this.getAtt(attributeName));
+      }
+    };
+    _init2 = __decoratorStart(_a2);
+    __decorateElement(_init2, 1, "getAtt", _getAtt_dec, CustomResource);
+    __decorateElement(_init2, 1, "getAttString", _getAttString_dec, CustomResource);
+    CustomResource = __decorateElement(_init2, 0, "CustomResource", _CustomResource_decorators, CustomResource);
+    /** Uniquely identifies this class. */
+    __publicField(CustomResource, "PROPERTY_INJECTION_ID", "aws-cdk-lib.core.CustomResource");
+    __runInitializers(_init2, 1, CustomResource);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts
+var init_consts = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts
+var INLINE_CUSTOM_RESOURCE_CONTEXT;
+var init_shared = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts"() {
+    "use strict";
+    INLINE_CUSTOM_RESOURCE_CONTEXT = "@aws-cdk/core:inlineCustomResourceIfPossible";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/assets.ts
+var init_assets = __esm({
+  "../../aws-cdk-lib/core/lib/assets.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js
+var require_ignore = __commonJS({
+  "../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    var factory = (options) => new IgnoreBase(options);
+    factory.default = factory;
+    module2.exports = factory;
+    function make_array(subject) {
+      return Array.isArray(subject) ? subject : [subject];
+    }
+    var REGEX_TRAILING_SLASH = /(?<=.)\/$/;
+    var REGEX_TRAILING_BACKSLASH = /(?<=.)\\$/;
+    var REGEX_TRAILING_PATH_SEP = path23.sep === "\\" ? REGEX_TRAILING_BACKSLASH : REGEX_TRAILING_SLASH;
+    var KEY_IGNORE = typeof Symbol !== "undefined" ? /* @__PURE__ */ Symbol.for("dockerignore") : "dockerignore";
+    function cleanPath(file) {
+      return path23.normalize(file).replace(REGEX_TRAILING_PATH_SEP, "");
+    }
+    function toSlash(file) {
+      if (path23.sep === "/") {
+        return file;
+      }
+      return file.replace(/\\/g, "/");
+    }
+    function fromSlash(file) {
+      if (path23.sep === "/") {
+        return file;
+      }
+      return file.replace(/\//g, path23.sep);
+    }
+    var IgnoreBase = class {
+      constructor({
+        // https://github.com/kaelzhang/node-ignore/blob/5.1.4/index.js#L372
+        ignorecase = true
+      } = {}) {
+        this._rules = [];
+        this._ignorecase = ignorecase;
+        this[KEY_IGNORE] = true;
+        this._initCache();
+      }
+      _initCache() {
+        this._cache = {};
+      }
+      // @param {Array.|string|Ignore} pattern
+      add(pattern) {
+        this._added = false;
+        if (typeof pattern === "string") {
+          pattern = pattern.split(/\r?\n/g);
+        }
+        make_array(pattern).forEach(this._addPattern, this);
+        if (this._added) {
+          this._initCache();
+        }
+        return this;
+      }
+      // legacy
+      addPattern(pattern) {
+        return this.add(pattern);
+      }
+      _addPattern(pattern) {
+        if (pattern && pattern[KEY_IGNORE]) {
+          this._rules = this._rules.concat(pattern._rules);
+          this._added = true;
+          return;
+        }
+        if (this._checkPattern(pattern)) {
+          const rule = this._createRule(pattern.trim());
+          if (rule !== null) {
+            this._added = true;
+            this._rules.push(rule);
+          }
+        }
+      }
+      _checkPattern(pattern) {
+        return pattern && typeof pattern === "string" && pattern.indexOf("#") !== 0 && pattern.trim() !== "";
+      }
+      filter(paths) {
+        return make_array(paths).filter((path24) => this._filter(path24));
+      }
+      createFilter() {
+        return (path24) => this._filter(path24);
+      }
+      ignores(path24) {
+        return !this._filter(path24);
+      }
+      // https://github.com/moby/moby/blob/v19.03.8/builder/dockerignore/dockerignore.go#L41-L53
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L29-L55
+      _createRule(pattern) {
+        const origin = pattern;
+        let negative = false;
+        if (pattern[0] === "!") {
+          negative = true;
+          pattern = pattern.substring(1).trim();
+        }
+        if (pattern.length > 0) {
+          pattern = cleanPath(pattern);
+          pattern = toSlash(pattern);
+          if (pattern.length > 1 && pattern[0] === "/") {
+            pattern = pattern.slice(1);
+          }
+        }
+        if (negative) {
+          pattern = "!" + pattern;
+        }
+        pattern = pattern.trim();
+        if (pattern === "") {
+          return null;
+        }
+        pattern = cleanPath(pattern);
+        if (pattern[0] === "!") {
+          if (pattern.length === 1) {
+            return null;
+          }
+          negative = true;
+          pattern = pattern.substring(1);
+        } else {
+          negative = false;
+        }
+        return {
+          origin,
+          pattern,
+          // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L54
+          dirs: pattern.split(path23.sep),
+          negative
+        };
+      }
+      // @returns `Boolean` true if the `path` is NOT ignored
+      _filter(path24) {
+        if (!path24) {
+          return false;
+        }
+        if (path24 in this._cache) {
+          return this._cache[path24];
+        }
+        return this._cache[path24] = this._test(path24);
+      }
+      // @returns {Boolean} true if a file is NOT ignored
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L62
+      _test(file) {
+        file = fromSlash(file);
+        const parentPath = cleanPath(path23.dirname(file));
+        const parentPathDirs = parentPath.split(path23.sep);
+        let matched = false;
+        this._rules.forEach((rule) => {
+          let match = this._match(file, rule);
+          if (!match && parentPath !== ".") {
+            if (rule.dirs.includes("**")) {
+              for (let i = rule.dirs.filter((x) => x !== "**").length; i <= parentPathDirs.length; i++) {
+                match = match || this._match(parentPathDirs.slice(0, i).join(path23.sep), rule);
+              }
+            } else if (rule.dirs.length <= parentPathDirs.length) {
+              match = this._match(parentPathDirs.slice(0, rule.dirs.length).join(path23.sep), rule);
+            }
+          }
+          if (match) {
+            matched = !rule.negative;
+          }
+        });
+        return !matched;
+      }
+      // @returns {Boolean} true if a file is matched by a rule
+      _match(file, rule) {
+        return this._compile(rule).regexp.test(file);
+      }
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L139
+      _compile(rule) {
+        if (rule.regexp) {
+          return rule;
+        }
+        let regStr = "^";
+        let escapedSlash = path23.sep === "\\" ? "\\\\" : path23.sep;
+        for (let i = 0; i < rule.pattern.length; i++) {
+          const ch = rule.pattern[i];
+          if (ch === "*") {
+            if (rule.pattern[i + 1] === "*") {
+              i++;
+              if (rule.pattern[i + 1] === path23.sep) {
+                i++;
+              }
+              if (rule.pattern[i + 1] === void 0) {
+                regStr += ".*";
+              } else {
+                regStr += `(.*${escapedSlash})?`;
+              }
+            } else {
+              regStr += `[^${escapedSlash}]*`;
+            }
+          } else if (ch === "?") {
+            regStr += `[^${escapedSlash}]`;
+          } else if (ch === "." || ch === "$") {
+            regStr += `\\${ch}`;
+          } else if (ch === "\\") {
+            if (path23.sep === "\\") {
+              regStr += escapedSlash;
+              continue;
+            }
+            if (rule.pattern[i + 1] !== void 0) {
+              regStr += "\\" + rule.pattern[i + 1];
+              i++;
+            } else {
+              regStr += "\\";
+            }
+          } else {
+            regStr += ch;
+          }
+        }
+        regStr += "$";
+        rule.regexp = new RegExp(regStr, this._ignorecase ? "i" : "");
+        return rule;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/ignore/index.js
+var require_ignore2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/ignore/index.js"(exports2, module2) {
+    function makeArray(subject) {
+      return Array.isArray(subject) ? subject : [subject];
+    }
+    var EMPTY = "";
+    var SPACE = " ";
+    var ESCAPE = "\\";
+    var REGEX_TEST_BLANK_LINE = /^\s+$/;
+    var REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/;
+    var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/;
+    var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/;
+    var REGEX_SPLITALL_CRLF = /\r?\n/g;
+    var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/;
+    var SLASH = "/";
+    var TMP_KEY_IGNORE = "node-ignore";
+    if (typeof Symbol !== "undefined") {
+      TMP_KEY_IGNORE = /* @__PURE__ */ Symbol.for("node-ignore");
+    }
+    var KEY_IGNORE = TMP_KEY_IGNORE;
+    var define = (object, key, value) => Object.defineProperty(object, key, { value });
+    var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g;
+    var RETURN_FALSE = () => false;
+    var sanitizeRange = (range4) => range4.replace(
+      REGEX_REGEXP_RANGE,
+      (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) ? match : EMPTY
+    );
+    var cleanRangeBackSlash = (slashes) => {
+      const { length } = slashes;
+      return slashes.slice(0, length - length % 2);
+    };
+    var REPLACERS = [
+      [
+        // remove BOM
+        // TODO:
+        // Other similar zero-width characters?
+        /^\uFEFF/,
+        () => EMPTY
+      ],
+      // > Trailing spaces are ignored unless they are quoted with backslash ("\")
+      [
+        // (a\ ) -> (a )
+        // (a  ) -> (a)
+        // (a ) -> (a)
+        // (a \ ) -> (a  )
+        /((?:\\\\)*?)(\\?\s+)$/,
+        (_, m1, m2) => m1 + (m2.indexOf("\\") === 0 ? SPACE : EMPTY)
+      ],
+      // replace (\ ) with ' '
+      // (\ ) -> ' '
+      // (\\ ) -> '\\ '
+      // (\\\ ) -> '\\ '
+      [
+        /(\\+?)\s/g,
+        (_, m1) => {
+          const { length } = m1;
+          return m1.slice(0, length - length % 2) + SPACE;
+        }
+      ],
+      // Escape metacharacters
+      // which is written down by users but means special for regular expressions.
+      // > There are 12 characters with special meanings:
+      // > - the backslash \,
+      // > - the caret ^,
+      // > - the dollar sign $,
+      // > - the period or dot .,
+      // > - the vertical bar or pipe symbol |,
+      // > - the question mark ?,
+      // > - the asterisk or star *,
+      // > - the plus sign +,
+      // > - the opening parenthesis (,
+      // > - the closing parenthesis ),
+      // > - and the opening square bracket [,
+      // > - the opening curly brace {,
+      // > These special characters are often called "metacharacters".
+      [
+        /[\\$.|*+(){^]/g,
+        (match) => `\\${match}`
+      ],
+      [
+        // > a question mark (?) matches a single character
+        /(?!\\)\?/g,
+        () => "[^/]"
+      ],
+      // leading slash
+      [
+        // > A leading slash matches the beginning of the pathname.
+        // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c".
+        // A leading slash matches the beginning of the pathname
+        /^\//,
+        () => "^"
+      ],
+      // replace special metacharacter slash after the leading slash
+      [
+        /\//g,
+        () => "\\/"
+      ],
+      [
+        // > A leading "**" followed by a slash means match in all directories.
+        // > For example, "**/foo" matches file or directory "foo" anywhere,
+        // > the same as pattern "foo".
+        // > "**/foo/bar" matches file or directory "bar" anywhere that is directly
+        // >   under directory "foo".
+        // Notice that the '*'s have been replaced as '\\*'
+        /^\^*\\\*\\\*\\\//,
+        // '**/foo' <-> 'foo'
+        () => "^(?:.*\\/)?"
+      ],
+      // starting
+      [
+        // there will be no leading '/'
+        //   (which has been replaced by section "leading slash")
+        // If starts with '**', adding a '^' to the regular expression also works
+        /^(?=[^^])/,
+        function startingReplacer() {
+          return !/\/(?!$)/.test(this) ? "(?:^|\\/)" : "^";
+        }
+      ],
+      // two globstars
+      [
+        // Use lookahead assertions so that we could match more than one `'/**'`
+        /\\\/\\\*\\\*(?=\\\/|$)/g,
+        // Zero, one or several directories
+        // should not use '*', or it will be replaced by the next replacer
+        // Check if it is not the last `'/**'`
+        (_, index, str) => index + 6 < str.length ? "(?:\\/[^\\/]+)*" : "\\/.+"
+      ],
+      // normal intermediate wildcards
+      [
+        // Never replace escaped '*'
+        // ignore rule '\*' will match the path '*'
+        // 'abc.*/' -> go
+        // 'abc.*'  -> skip this rule,
+        //    coz trailing single wildcard will be handed by [trailing wildcard]
+        /(^|[^\\]+)(\\\*)+(?=.+)/g,
+        // '*.js' matches '.js'
+        // '*.js' doesn't match 'abc'
+        (_, p1, p2) => {
+          const unescaped = p2.replace(/\\\*/g, "[^\\/]*");
+          return p1 + unescaped;
+        }
+      ],
+      [
+        // unescape, revert step 3 except for back slash
+        // For example, if a user escape a '\\*',
+        // after step 3, the result will be '\\\\\\*'
+        /\\\\\\(?=[$.|*+(){^])/g,
+        () => ESCAPE
+      ],
+      [
+        // '\\\\' -> '\\'
+        /\\\\/g,
+        () => ESCAPE
+      ],
+      [
+        // > The range notation, e.g. [a-zA-Z],
+        // > can be used to match one of the characters in a range.
+        // `\` is escaped by step 3
+        /(\\)?\[([^\]/]*?)(\\*)($|\])/g,
+        (match, leadEscape, range4, endEscape, close) => leadEscape === ESCAPE ? `\\[${range4}${cleanRangeBackSlash(endEscape)}${close}` : close === "]" ? endEscape.length % 2 === 0 ? `[${sanitizeRange(range4)}${endEscape}]` : "[]" : "[]"
+      ],
+      // ending
+      [
+        // 'js' will not match 'js.'
+        // 'ab' will not match 'abc'
+        /(?:[^*])$/,
+        // WTF!
+        // https://git-scm.com/docs/gitignore
+        // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1)
+        // which re-fixes #24, #38
+        // > If there is a separator at the end of the pattern then the pattern
+        // > will only match directories, otherwise the pattern can match both
+        // > files and directories.
+        // 'js*' will not match 'a.js'
+        // 'js/' will not match 'a.js'
+        // 'js' will match 'a.js' and 'a.js/'
+        (match) => /\/$/.test(match) ? `${match}$` : `${match}(?=$|\\/$)`
+      ],
+      // trailing wildcard
+      [
+        /(\^|\\\/)?\\\*$/,
+        (_, p1) => {
+          const prefix = p1 ? `${p1}[^/]+` : "[^/]*";
+          return `${prefix}(?=$|\\/$)`;
+        }
+      ]
+    ];
+    var regexCache = /* @__PURE__ */ Object.create(null);
+    var makeRegex = (pattern, ignoreCase) => {
+      let source = regexCache[pattern];
+      if (!source) {
+        source = REPLACERS.reduce(
+          (prev, [matcher, replacer]) => prev.replace(matcher, replacer.bind(pattern)),
+          pattern
+        );
+        regexCache[pattern] = source;
+      }
+      return ignoreCase ? new RegExp(source, "i") : new RegExp(source);
+    };
+    var isString = (subject) => typeof subject === "string";
+    var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) && pattern.indexOf("#") !== 0;
+    var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF);
+    var IgnoreRule = class {
+      constructor(origin, pattern, negative, regex) {
+        this.origin = origin;
+        this.pattern = pattern;
+        this.negative = negative;
+        this.regex = regex;
+      }
+    };
+    var createRule = (pattern, ignoreCase) => {
+      const origin = pattern;
+      let negative = false;
+      if (pattern.indexOf("!") === 0) {
+        negative = true;
+        pattern = pattern.substr(1);
+      }
+      pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#");
+      const regex = makeRegex(pattern, ignoreCase);
+      return new IgnoreRule(
+        origin,
+        pattern,
+        negative,
+        regex
+      );
+    };
+    var throwError = (message, Ctor) => {
+      throw new Ctor(message);
+    };
+    var checkPath = (path23, originalPath, doThrow) => {
+      if (!isString(path23)) {
+        return doThrow(
+          `path must be a string, but got \`${originalPath}\``,
+          TypeError
+        );
+      }
+      if (!path23) {
+        return doThrow(`path must not be empty`, TypeError);
+      }
+      if (checkPath.isNotRelative(path23)) {
+        const r = "`path.relative()`d";
+        return doThrow(
+          `path should be a ${r} string, but got "${originalPath}"`,
+          RangeError
+        );
+      }
+      return true;
+    };
+    var isNotRelative = (path23) => REGEX_TEST_INVALID_PATH.test(path23);
+    checkPath.isNotRelative = isNotRelative;
+    checkPath.convert = (p) => p;
+    var Ignore = class {
+      constructor({
+        ignorecase = true,
+        ignoreCase = ignorecase,
+        allowRelativePaths = false
+      } = {}) {
+        define(this, KEY_IGNORE, true);
+        this._rules = [];
+        this._ignoreCase = ignoreCase;
+        this._allowRelativePaths = allowRelativePaths;
+        this._initCache();
+      }
+      _initCache() {
+        this._ignoreCache = /* @__PURE__ */ Object.create(null);
+        this._testCache = /* @__PURE__ */ Object.create(null);
+      }
+      _addPattern(pattern) {
+        if (pattern && pattern[KEY_IGNORE]) {
+          this._rules = this._rules.concat(pattern._rules);
+          this._added = true;
+          return;
+        }
+        if (checkPattern(pattern)) {
+          const rule = createRule(pattern, this._ignoreCase);
+          this._added = true;
+          this._rules.push(rule);
+        }
+      }
+      // @param {Array | string | Ignore} pattern
+      add(pattern) {
+        this._added = false;
+        makeArray(
+          isString(pattern) ? splitPattern(pattern) : pattern
+        ).forEach(this._addPattern, this);
+        if (this._added) {
+          this._initCache();
+        }
+        return this;
+      }
+      // legacy
+      addPattern(pattern) {
+        return this.add(pattern);
+      }
+      //          |           ignored : unignored
+      // negative |   0:0   |   0:1   |   1:0   |   1:1
+      // -------- | ------- | ------- | ------- | --------
+      //     0    |  TEST   |  TEST   |  SKIP   |    X
+      //     1    |  TESTIF |  SKIP   |  TEST   |    X
+      // - SKIP: always skip
+      // - TEST: always test
+      // - TESTIF: only test if checkUnignored
+      // - X: that never happen
+      // @param {boolean} whether should check if the path is unignored,
+      //   setting `checkUnignored` to `false` could reduce additional
+      //   path matching.
+      // @returns {TestResult} true if a file is ignored
+      _testOne(path23, checkUnignored) {
+        let ignored = false;
+        let unignored = false;
+        this._rules.forEach((rule) => {
+          const { negative } = rule;
+          if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) {
+            return;
+          }
+          const matched = rule.regex.test(path23);
+          if (matched) {
+            ignored = !negative;
+            unignored = negative;
+          }
+        });
+        return {
+          ignored,
+          unignored
+        };
+      }
+      // @returns {TestResult}
+      _test(originalPath, cache, checkUnignored, slices) {
+        const path23 = originalPath && checkPath.convert(originalPath);
+        checkPath(
+          path23,
+          originalPath,
+          this._allowRelativePaths ? RETURN_FALSE : throwError
+        );
+        return this._t(path23, cache, checkUnignored, slices);
+      }
+      _t(path23, cache, checkUnignored, slices) {
+        if (path23 in cache) {
+          return cache[path23];
+        }
+        if (!slices) {
+          slices = path23.split(SLASH);
+        }
+        slices.pop();
+        if (!slices.length) {
+          return cache[path23] = this._testOne(path23, checkUnignored);
+        }
+        const parent = this._t(
+          slices.join(SLASH) + SLASH,
+          cache,
+          checkUnignored,
+          slices
+        );
+        return cache[path23] = parent.ignored ? parent : this._testOne(path23, checkUnignored);
+      }
+      ignores(path23) {
+        return this._test(path23, this._ignoreCache, false).ignored;
+      }
+      createFilter() {
+        return (path23) => !this.ignores(path23);
+      }
+      filter(paths) {
+        return makeArray(paths).filter(this.createFilter());
+      }
+      // @returns {TestResult}
+      test(path23) {
+        return this._test(path23, this._testCache, true);
+      }
+    };
+    var factory = (options) => new Ignore(options);
+    var isPathValid = (path23) => checkPath(path23 && checkPath.convert(path23), path23, RETURN_FALSE);
+    factory.isPathValid = isPathValid;
+    factory.default = factory;
+    module2.exports = factory;
+    if (
+      // Detect `process` so that it can run in browsers.
+      typeof process !== "undefined" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32")
+    ) {
+      const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/");
+      checkPath.convert = makePosix;
+      const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i;
+      checkPath.isNotRelative = (path23) => REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path23) || isNotRelative(path23);
+    }
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/options.ts
+var init_options = __esm({
+  "../../aws-cdk-lib/core/lib/fs/options.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js
+var require_commonjs = __commonJS({
+  "../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.range = exports2.balanced = void 0;
+    var balanced = (a, b, str) => {
+      const ma = a instanceof RegExp ? maybeMatch(a, str) : a;
+      const mb = b instanceof RegExp ? maybeMatch(b, str) : b;
+      const r = ma !== null && mb != null && (0, exports2.range)(ma, mb, str);
+      return r && {
+        start: r[0],
+        end: r[1],
+        pre: str.slice(0, r[0]),
+        body: str.slice(r[0] + ma.length, r[1]),
+        post: str.slice(r[1] + mb.length)
+      };
+    };
+    exports2.balanced = balanced;
+    var maybeMatch = (reg, str) => {
+      const m = str.match(reg);
+      return m ? m[0] : null;
+    };
+    var range4 = (a, b, str) => {
+      let begs, beg, left, right = void 0, result;
+      let ai = str.indexOf(a);
+      let bi = str.indexOf(b, ai + 1);
+      let i = ai;
+      if (ai >= 0 && bi > 0) {
+        if (a === b) {
+          return [ai, bi];
+        }
+        begs = [];
+        left = str.length;
+        while (i >= 0 && !result) {
+          if (i === ai) {
+            begs.push(i);
+            ai = str.indexOf(a, i + 1);
+          } else if (begs.length === 1) {
+            const r = begs.pop();
+            if (r !== void 0)
+              result = [r, bi];
+          } else {
+            beg = begs.pop();
+            if (beg !== void 0 && beg < left) {
+              left = beg;
+              right = bi;
+            }
+            bi = str.indexOf(b, i + 1);
+          }
+          i = ai < bi && ai >= 0 ? ai : bi;
+        }
+        if (begs.length && right !== void 0) {
+          result = [left, right];
+        }
+      }
+      return result;
+    };
+    exports2.range = range4;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js
+var require_commonjs2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EXPANSION_MAX_REWRITES = exports2.EXPANSION_MAX_DEPTH = exports2.EXPANSION_MAX_LENGTH = exports2.EXPANSION_MAX = void 0;
+    exports2.expand = expand;
+    var balanced_match_1 = require_commonjs();
+    var escSlash = "\0SLASH" + Math.random() + "\0";
+    var escOpen = "\0OPEN" + Math.random() + "\0";
+    var escClose = "\0CLOSE" + Math.random() + "\0";
+    var escComma = "\0COMMA" + Math.random() + "\0";
+    var escPeriod = "\0PERIOD" + Math.random() + "\0";
+    var escSlashPattern = new RegExp(escSlash, "g");
+    var escOpenPattern = new RegExp(escOpen, "g");
+    var escClosePattern = new RegExp(escClose, "g");
+    var escCommaPattern = new RegExp(escComma, "g");
+    var escPeriodPattern = new RegExp(escPeriod, "g");
+    var slashPattern = /\\\\/g;
+    var openPattern = /\\{/g;
+    var closePattern = /\\}/g;
+    var commaPattern = /\\,/g;
+    var periodPattern = /\\\./g;
+    exports2.EXPANSION_MAX = 1e5;
+    exports2.EXPANSION_MAX_LENGTH = 4e6;
+    exports2.EXPANSION_MAX_DEPTH = 1e3;
+    exports2.EXPANSION_MAX_REWRITES = 1e3;
+    function numeric(str) {
+      return !isNaN(str) ? parseInt(str, 10) : str.charCodeAt(0);
+    }
+    function escapeBraces(str) {
+      return str.replace(slashPattern, escSlash).replace(openPattern, escOpen).replace(closePattern, escClose).replace(commaPattern, escComma).replace(periodPattern, escPeriod);
+    }
+    function unescapeBraces(str) {
+      return str.replace(escSlashPattern, "\\").replace(escOpenPattern, "{").replace(escClosePattern, "}").replace(escCommaPattern, ",").replace(escPeriodPattern, ".");
+    }
+    function pushAll(target, items) {
+      for (let i = 0; i < items.length; i++) {
+        target.push(items[i]);
+      }
+    }
+    function parseCommaParts(str) {
+      const parts = [];
+      let carry = "";
+      for (; ; ) {
+        const m = (0, balanced_match_1.balanced)("{", "}", str);
+        if (!m) {
+          const tail = str.split(",");
+          tail[0] = carry + tail[0];
+          pushAll(parts, tail);
+          return parts;
+        }
+        const { pre, body, post } = m;
+        const p = pre.split(",");
+        p[0] = carry + p[0];
+        p[p.length - 1] += "{" + body + "}";
+        if (!post.length) {
+          pushAll(parts, p);
+          return parts;
+        }
+        carry = p.pop();
+        pushAll(parts, p);
+        str = post;
+      }
+    }
+    function expand(str, options = {}) {
+      if (!str) {
+        return [];
+      }
+      const { max = exports2.EXPANSION_MAX, maxLength = exports2.EXPANSION_MAX_LENGTH, maxDepth = exports2.EXPANSION_MAX_DEPTH, maxRewrites = exports2.EXPANSION_MAX_REWRITES } = options;
+      if (str.slice(0, 2) === "{}") {
+        str = "\\{\\}" + str.slice(2);
+      }
+      return expand_(escapeBraces(str), max, maxLength, maxDepth, 0, maxRewrites, true).map(unescapeBraces);
+    }
+    function embrace(str) {
+      return "{" + str + "}";
+    }
+    function isPadded(el) {
+      return /^-?0\d/.test(el);
+    }
+    function lte(i, y) {
+      return i <= y;
+    }
+    function gte(i, y) {
+      return i >= y;
+    }
+    function combine(acc, pre, values, max, maxLength, dropEmpties) {
+      const out = [];
+      let length = 0;
+      for (let a = 0; a < acc.length; a++) {
+        for (let v = 0; v < values.length; v++) {
+          if (out.length >= max)
+            return out;
+          const expansion = acc[a] + pre + values[v];
+          if (dropEmpties && !expansion)
+            continue;
+          if (length + expansion.length > maxLength)
+            return out;
+          out.push(expansion);
+          length += expansion.length;
+        }
+      }
+      return out;
+    }
+    function expandSequence(body, isAlphaSequence, max, maxLength) {
+      const n = body.split(/\.\./);
+      const N = [];
+      if (n[0] === void 0 || n[1] === void 0) {
+        return N;
+      }
+      const x = numeric(n[0]);
+      const y = numeric(n[1]);
+      const width = Math.max(n[0].length, n[1].length);
+      let incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric(n[2])), 1) : 1;
+      let test = lte;
+      const reverse = y < x;
+      if (reverse) {
+        incr *= -1;
+        test = gte;
+      }
+      const pad = n.some(isPadded);
+      let length = 0;
+      for (let i = x; test(i, y) && N.length < max; i += incr) {
+        let c;
+        if (isAlphaSequence) {
+          c = String.fromCharCode(i);
+          if (c === "\\") {
+            c = "";
+          }
+        } else {
+          c = String(i);
+          if (pad) {
+            const need = width - c.length;
+            if (need > 0) {
+              const z = new Array(need + 1).join("0");
+              if (i < 0) {
+                c = "-" + z + c.slice(1);
+              } else {
+                c = z + c;
+              }
+            }
+          }
+        }
+        if (length + c.length > maxLength)
+          break;
+        N.push(c);
+        length += c.length;
+      }
+      return N;
+    }
+    function expand_(str, max, maxLength, maxDepth, depth, maxRewrites, isTop) {
+      if (depth > maxDepth) {
+        return [str];
+      }
+      let acc = [""];
+      let rewrites = 0;
+      let dropEmpties = false;
+      let firstGroup = true;
+      for (; ; ) {
+        const m = (0, balanced_match_1.balanced)("{", "}", str);
+        if (!m) {
+          return combine(acc, str, [""], max, maxLength, dropEmpties);
+        }
+        const pre = m.pre;
+        if (/\$$/.test(pre)) {
+          acc = combine(acc, pre + "{" + m.body + "}", [""], max, maxLength, dropEmpties && !m.post.length);
+          firstGroup = false;
+          if (!m.post.length)
+            break;
+          str = m.post;
+          continue;
+        }
+        const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
+        const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
+        const isSequence = isNumericSequence || isAlphaSequence;
+        const isOptions = m.body.indexOf(",") >= 0;
+        if (!isSequence && !isOptions) {
+          if (rewrites < maxRewrites && m.post.match(/,(?!,).*\}/)) {
+            rewrites++;
+            str = m.pre + "{" + m.body + escClose + m.post;
+            isTop = true;
+            continue;
+          }
+          return combine(acc, pre + "{" + m.body + "}" + m.post, [""], max, maxLength, dropEmpties);
+        }
+        if (firstGroup) {
+          dropEmpties = isTop && !isSequence;
+          firstGroup = false;
+        }
+        let values;
+        if (isSequence) {
+          values = expandSequence(m.body, isAlphaSequence, max, maxLength);
+        } else {
+          let n = parseCommaParts(m.body);
+          if (n.length === 1 && n[0] !== void 0) {
+            n = expand_(n[0], max, maxLength, maxDepth, depth + 1, maxRewrites, false).map(embrace);
+            if (n.length === 1) {
+              acc = combine(acc, pre + n[0], [""], max, maxLength, dropEmpties && !m.post.length);
+              if (!m.post.length)
+                break;
+              str = m.post;
+              continue;
+            }
+          }
+          let dropsEmpties = dropEmpties && !m.post.length && !pre;
+          for (let d = 0; dropsEmpties && d < acc.length; d++) {
+            if (acc[d]) {
+              dropsEmpties = false;
+            }
+          }
+          values = [];
+          let valuesLength = 0;
+          outer: for (let j = 0; j < n.length; j++) {
+            const expanded = expand_(n[j], max, maxLength, maxDepth, depth + 1, maxRewrites, false);
+            for (let k = 0; k < expanded.length; k++) {
+              const v = expanded[k];
+              if (dropsEmpties && !v)
+                continue;
+              if (values.length >= max || valuesLength + v.length > maxLength) {
+                break outer;
+              }
+              values.push(v);
+              valuesLength += v.length;
+            }
+          }
+        }
+        acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
+        if (!m.post.length)
+          break;
+        str = m.post;
+      }
+      return acc;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js
+var require_assert_valid_pattern = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.assertValidPattern = void 0;
+    var MAX_PATTERN_LENGTH = 1024 * 64;
+    var assertValidPattern = (pattern) => {
+      if (typeof pattern !== "string") {
+        throw new TypeError("invalid pattern");
+      }
+      if (pattern.length > MAX_PATTERN_LENGTH) {
+        throw new TypeError("pattern is too long");
+      }
+    };
+    exports2.assertValidPattern = assertValidPattern;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js
+var require_brace_expressions = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.parseClass = void 0;
+    var posixClasses = {
+      "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true],
+      "[:alpha:]": ["\\p{L}\\p{Nl}", true],
+      "[:ascii:]": ["\\x00-\\x7f", false],
+      "[:blank:]": ["\\p{Zs}\\t", true],
+      "[:cntrl:]": ["\\p{Cc}", true],
+      "[:digit:]": ["\\p{Nd}", true],
+      "[:graph:]": ["\\p{Z}\\p{C}", true, true],
+      "[:lower:]": ["\\p{Ll}", true],
+      "[:print:]": ["\\p{C}", true],
+      "[:punct:]": ["\\p{P}", true],
+      "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true],
+      "[:upper:]": ["\\p{Lu}", true],
+      "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true],
+      "[:xdigit:]": ["A-Fa-f0-9", false]
+    };
+    var braceEscape = (s) => s.replace(/[[\]\\-]/g, "\\$&");
+    var regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var rangesToString = (ranges) => ranges.join("");
+    var parseClass = (glob2, position) => {
+      const pos = position;
+      if (glob2.charAt(pos) !== "[") {
+        throw new Error("not in a brace expression");
+      }
+      const ranges = [];
+      const negs = [];
+      let i = pos + 1;
+      let sawStart = false;
+      let uflag = false;
+      let escaping = false;
+      let negate = false;
+      let endPos = pos;
+      let rangeStart = "";
+      WHILE: while (i < glob2.length) {
+        const c = glob2.charAt(i);
+        if ((c === "!" || c === "^") && i === pos + 1) {
+          negate = true;
+          i++;
+          continue;
+        }
+        if (c === "]" && sawStart && !escaping) {
+          endPos = i + 1;
+          break;
+        }
+        sawStart = true;
+        if (c === "\\") {
+          if (!escaping) {
+            escaping = true;
+            i++;
+            continue;
+          }
+        }
+        if (c === "[" && !escaping) {
+          for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) {
+            if (glob2.startsWith(cls, i)) {
+              if (rangeStart) {
+                return ["$.", false, glob2.length - pos, true];
+              }
+              i += cls.length;
+              if (neg)
+                negs.push(unip);
+              else
+                ranges.push(unip);
+              uflag = uflag || u;
+              continue WHILE;
+            }
+          }
+        }
+        escaping = false;
+        if (rangeStart) {
+          if (c > rangeStart) {
+            ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c));
+          } else if (c === rangeStart) {
+            ranges.push(braceEscape(c));
+          }
+          rangeStart = "";
+          i++;
+          continue;
+        }
+        if (glob2.startsWith("-]", i + 1)) {
+          ranges.push(braceEscape(c + "-"));
+          i += 2;
+          continue;
+        }
+        if (glob2.startsWith("-", i + 1)) {
+          rangeStart = c;
+          i += 2;
+          continue;
+        }
+        ranges.push(braceEscape(c));
+        i++;
+      }
+      if (endPos < i) {
+        return ["", false, 0, false];
+      }
+      if (!ranges.length && !negs.length) {
+        return ["$.", false, glob2.length - pos, true];
+      }
+      if (negs.length === 0 && ranges.length === 1 && /^\\?.$/.test(ranges[0]) && !negate) {
+        const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0];
+        return [regexpEscape(r), false, endPos - pos, false];
+      }
+      const sranges = "[" + (negate ? "^" : "") + rangesToString(ranges) + "]";
+      const snegs = "[" + (negate ? "" : "^") + rangesToString(negs) + "]";
+      const comb = ranges.length && negs.length ? "(" + sranges + "|" + snegs + ")" : ranges.length ? sranges : snegs;
+      return [comb, uflag, endPos - pos, true];
+    };
+    exports2.parseClass = parseClass;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js
+var require_unescape = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.unescape = void 0;
+    var unescape2 = (s, { windowsPathsNoEscape = false, magicalBraces = true } = {}) => {
+      if (magicalBraces) {
+        return windowsPathsNoEscape ? s.replace(/\[([^/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\])\]/g, "$1$2").replace(/\\([^/])/g, "$1");
+      }
+      return windowsPathsNoEscape ? s.replace(/\[([^/\\{}])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\{}])\]/g, "$1$2").replace(/\\([^/{}])/g, "$1");
+    };
+    exports2.unescape = unescape2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js
+var require_ast = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js"(exports2) {
+    "use strict";
+    var _a7;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AST = void 0;
+    var brace_expressions_js_1 = require_brace_expressions();
+    var unescape_js_1 = require_unescape();
+    var types2 = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
+    var isExtglobType = (c) => types2.has(c);
+    var isExtglobAST = (c) => isExtglobType(c.type);
+    var adoptionMap = /* @__PURE__ */ new Map([
+      ["!", ["@"]],
+      ["?", ["?", "@"]],
+      ["@", ["@"]],
+      ["*", ["*", "+", "?", "@"]],
+      ["+", ["+", "@"]]
+    ]);
+    var adoptionWithSpaceMap = /* @__PURE__ */ new Map([
+      ["!", ["?"]],
+      ["@", ["?"]],
+      ["+", ["?", "*"]]
+    ]);
+    var adoptionAnyMap = /* @__PURE__ */ new Map([
+      ["!", ["?", "@"]],
+      ["?", ["?", "@"]],
+      ["@", ["?", "@"]],
+      ["*", ["*", "+", "?", "@"]],
+      ["+", ["+", "@", "?", "*"]]
+    ]);
+    var usurpMap = /* @__PURE__ */ new Map([
+      ["!", /* @__PURE__ */ new Map([["!", "@"]])],
+      [
+        "?",
+        /* @__PURE__ */ new Map([
+          ["*", "*"],
+          ["+", "*"]
+        ])
+      ],
+      [
+        "@",
+        /* @__PURE__ */ new Map([
+          ["!", "!"],
+          ["?", "?"],
+          ["@", "@"],
+          ["*", "*"],
+          ["+", "+"]
+        ])
+      ],
+      [
+        "+",
+        /* @__PURE__ */ new Map([
+          ["?", "*"],
+          ["*", "*"]
+        ])
+      ]
+    ]);
+    var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
+    var startNoDot = "(?!\\.)";
+    var addPatternStart = /* @__PURE__ */ new Set(["[", "."]);
+    var justDots = /* @__PURE__ */ new Set(["..", "."]);
+    var reSpecials = new Set("().*{}+?[]^$\\!");
+    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var qmark = "[^/]";
+    var star = qmark + "*?";
+    var starNoEmpty = qmark + "+?";
+    var ID = 0;
+    var AST = class {
+      type;
+      #root;
+      #hasMagic;
+      #uflag = false;
+      #parts = [];
+      #parent;
+      #parentIndex;
+      #negs;
+      #filledNegs = false;
+      #options;
+      #toString;
+      // set to true if it's an extglob with no children
+      // (which really means one child of '')
+      #emptyExt = false;
+      id = ++ID;
+      get depth() {
+        return (this.#parent?.depth ?? -1) + 1;
+      }
+      [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")]() {
+        return {
+          "@@type": "AST",
+          id: this.id,
+          type: this.type,
+          root: this.#root.id,
+          parent: this.#parent?.id,
+          depth: this.depth,
+          partsLength: this.#parts.length,
+          parts: this.#parts
+        };
+      }
+      constructor(type, parent, options = {}) {
+        this.type = type;
+        if (type)
+          this.#hasMagic = true;
+        this.#parent = parent;
+        this.#root = this.#parent ? this.#parent.#root : this;
+        this.#options = this.#root === this ? options : this.#root.#options;
+        this.#negs = this.#root === this ? [] : this.#root.#negs;
+        if (type === "!" && !this.#root.#filledNegs)
+          this.#negs.push(this);
+        this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0;
+      }
+      get hasMagic() {
+        if (this.#hasMagic !== void 0)
+          return this.#hasMagic;
+        for (const p of this.#parts) {
+          if (typeof p === "string")
+            continue;
+          if (p.type || p.hasMagic)
+            return this.#hasMagic = true;
+        }
+        return this.#hasMagic;
+      }
+      // reconstructs the pattern
+      toString() {
+        return this.#toString !== void 0 ? this.#toString : !this.type ? this.#toString = this.#parts.map((p) => String(p)).join("") : this.#toString = this.type + "(" + this.#parts.map((p) => String(p)).join("|") + ")";
+      }
+      #fillNegs() {
+        if (this !== this.#root)
+          throw new Error("should only call on root");
+        if (this.#filledNegs)
+          return this;
+        this.toString();
+        this.#filledNegs = true;
+        let n;
+        while (n = this.#negs.pop()) {
+          if (n.type !== "!")
+            continue;
+          let p = n;
+          let pp = p.#parent;
+          while (pp) {
+            for (let i = p.#parentIndex + 1; !pp.type && i < pp.#parts.length; i++) {
+              for (const part of n.#parts) {
+                if (typeof part === "string") {
+                  throw new Error("string part in extglob AST??");
+                }
+                part.copyIn(pp.#parts[i]);
+              }
+            }
+            p = pp;
+            pp = p.#parent;
+          }
+        }
+        return this;
+      }
+      push(...parts) {
+        for (const p of parts) {
+          if (p === "")
+            continue;
+          if (typeof p !== "string" && !(p instanceof _a7 && p.#parent === this)) {
+            throw new Error("invalid part: " + p);
+          }
+          this.#parts.push(p);
+        }
+      }
+      toJSON() {
+        const ret = this.type === null ? this.#parts.slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...this.#parts.map((p) => p.toJSON())];
+        if (this.isStart() && !this.type)
+          ret.unshift([]);
+        if (this.isEnd() && (this === this.#root || this.#root.#filledNegs && this.#parent?.type === "!")) {
+          ret.push({});
+        }
+        return ret;
+      }
+      isStart() {
+        if (this.#root === this)
+          return true;
+        if (!this.#parent?.isStart())
+          return false;
+        if (this.#parentIndex === 0)
+          return true;
+        const p = this.#parent;
+        for (let i = 0; i < this.#parentIndex; i++) {
+          const pp = p.#parts[i];
+          if (!(pp instanceof _a7 && pp.type === "!")) {
+            return false;
+          }
+        }
+        return true;
+      }
+      isEnd() {
+        if (this.#root === this)
+          return true;
+        if (this.#parent?.type === "!")
+          return true;
+        if (!this.#parent?.isEnd())
+          return false;
+        if (!this.type)
+          return this.#parent?.isEnd();
+        const pl = this.#parent ? this.#parent.#parts.length : 0;
+        return this.#parentIndex === pl - 1;
+      }
+      copyIn(part) {
+        if (typeof part === "string")
+          this.push(part);
+        else
+          this.push(part.clone(this));
+      }
+      clone(parent) {
+        const c = new _a7(this.type, parent);
+        for (const p of this.#parts) {
+          c.copyIn(p);
+        }
+        return c;
+      }
+      static #parseAST(str, ast, pos, opt, extDepth) {
+        const maxDepth = opt.maxExtglobRecursion ?? 2;
+        let escaping = false;
+        let inBrace = false;
+        let braceStart = -1;
+        let braceNeg = false;
+        if (ast.type === null) {
+          let i2 = pos;
+          let acc2 = "";
+          while (i2 < str.length) {
+            const c = str.charAt(i2++);
+            if (escaping || c === "\\") {
+              escaping = !escaping;
+              acc2 += c;
+              continue;
+            }
+            if (inBrace) {
+              if (i2 === braceStart + 1) {
+                if (c === "^" || c === "!") {
+                  braceNeg = true;
+                }
+              } else if (c === "]" && !(i2 === braceStart + 2 && braceNeg)) {
+                inBrace = false;
+              }
+              acc2 += c;
+              continue;
+            } else if (c === "[") {
+              inBrace = true;
+              braceStart = i2;
+              braceNeg = false;
+              acc2 += c;
+              continue;
+            }
+            const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i2) === "(" && extDepth <= maxDepth;
+            if (doRecurse) {
+              ast.push(acc2);
+              acc2 = "";
+              const ext = new _a7(c, ast);
+              i2 = _a7.#parseAST(str, ext, i2, opt, extDepth + 1);
+              ast.push(ext);
+              continue;
+            }
+            acc2 += c;
+          }
+          ast.push(acc2);
+          return i2;
+        }
+        let i = pos + 1;
+        let part = new _a7(null, ast);
+        const parts = [];
+        let acc = "";
+        while (i < str.length) {
+          const c = str.charAt(i++);
+          if (escaping || c === "\\") {
+            escaping = !escaping;
+            acc += c;
+            continue;
+          }
+          if (inBrace) {
+            if (i === braceStart + 1) {
+              if (c === "^" || c === "!") {
+                braceNeg = true;
+              }
+            } else if (c === "]" && !(i === braceStart + 2 && braceNeg)) {
+              inBrace = false;
+            }
+            acc += c;
+            continue;
+          } else if (c === "[") {
+            inBrace = true;
+            braceStart = i;
+            braceNeg = false;
+            acc += c;
+            continue;
+          }
+          const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i) === "(" && /* c8 ignore start - the maxDepth is sufficient here */
+          (extDepth <= maxDepth || ast && ast.#canAdoptType(c));
+          if (doRecurse) {
+            const depthAdd = ast && ast.#canAdoptType(c) ? 0 : 1;
+            part.push(acc);
+            acc = "";
+            const ext = new _a7(c, part);
+            part.push(ext);
+            i = _a7.#parseAST(str, ext, i, opt, extDepth + depthAdd);
+            continue;
+          }
+          if (c === "|") {
+            part.push(acc);
+            acc = "";
+            parts.push(part);
+            part = new _a7(null, ast);
+            continue;
+          }
+          if (c === ")") {
+            if (acc === "" && ast.#parts.length === 0) {
+              ast.#emptyExt = true;
+            }
+            part.push(acc);
+            acc = "";
+            ast.push(...parts, part);
+            return i;
+          }
+          acc += c;
+        }
+        ast.type = null;
+        ast.#hasMagic = void 0;
+        ast.#parts = [str.substring(pos - 1)];
+        return i;
+      }
+      #canAdoptWithSpace(child) {
+        return this.#canAdopt(child, adoptionWithSpaceMap);
+      }
+      #canAdopt(child, map = adoptionMap) {
+        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null) {
+          return false;
+        }
+        const gc = child.#parts[0];
+        if (!gc || typeof gc !== "object" || gc.type === null) {
+          return false;
+        }
+        return this.#canAdoptType(gc.type, map);
+      }
+      #canAdoptType(c, map = adoptionAnyMap) {
+        return !!map.get(this.type)?.includes(c);
+      }
+      #adoptWithSpace(child, index) {
+        const gc = child.#parts[0];
+        const blank = new _a7(null, gc, this.options);
+        blank.#parts.push("");
+        gc.push(blank);
+        this.#adopt(child, index);
+      }
+      #adopt(child, index) {
+        const gc = child.#parts[0];
+        this.#parts.splice(index, 1, ...gc.#parts);
+        for (const p of gc.#parts) {
+          if (typeof p === "object")
+            p.#parent = this;
+        }
+        this.#toString = void 0;
+      }
+      #canUsurpType(c) {
+        const m = usurpMap.get(this.type);
+        return !!m?.has(c);
+      }
+      #canUsurp(child) {
+        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null || this.#parts.length !== 1) {
+          return false;
+        }
+        const gc = child.#parts[0];
+        if (!gc || typeof gc !== "object" || gc.type === null) {
+          return false;
+        }
+        return this.#canUsurpType(gc.type);
+      }
+      #usurp(child) {
+        const m = usurpMap.get(this.type);
+        const gc = child.#parts[0];
+        const nt = m?.get(gc.type);
+        if (!nt)
+          return false;
+        this.#parts = gc.#parts;
+        for (const p of this.#parts) {
+          if (typeof p === "object") {
+            p.#parent = this;
+          }
+        }
+        this.type = nt;
+        this.#toString = void 0;
+        this.#emptyExt = false;
+      }
+      static fromGlob(pattern, options = {}) {
+        const ast = new _a7(null, void 0, options);
+        _a7.#parseAST(pattern, ast, 0, options, 0);
+        return ast;
+      }
+      // returns the regular expression if there's magic, or the unescaped
+      // string if not.
+      toMMPattern() {
+        if (this !== this.#root)
+          return this.#root.toMMPattern();
+        const glob2 = this.toString();
+        const [re, body, hasMagic, uflag] = this.toRegExpSource();
+        const anyMagic = hasMagic || this.#hasMagic || this.#options.nocase && !this.#options.nocaseMagicOnly && glob2.toUpperCase() !== glob2.toLowerCase();
+        if (!anyMagic) {
+          return body;
+        }
+        const flags = (this.#options.nocase ? "i" : "") + (uflag ? "u" : "");
+        return Object.assign(new RegExp(`^${re}$`, flags), {
+          _src: re,
+          _glob: glob2
+        });
+      }
+      get options() {
+        return this.#options;
+      }
+      // returns the string match, the regexp source, whether there's magic
+      // in the regexp (so a regular expression is required) and whether or
+      // not the uflag is needed for the regular expression (for posix classes)
+      // TODO: instead of injecting the start/end at this point, just return
+      // the BODY of the regexp, along with the start/end portions suitable
+      // for binding the start/end in either a joined full-path makeRe context
+      // (where we bind to (^|/), or a standalone matchPart context (where
+      // we bind to ^, and not /).  Otherwise slashes get duped!
+      //
+      // In part-matching mode, the start is:
+      // - if not isStart: nothing
+      // - if traversal possible, but not allowed: ^(?!\.\.?$)
+      // - if dots allowed or not possible: ^
+      // - if dots possible and not allowed: ^(?!\.)
+      // end is:
+      // - if not isEnd(): nothing
+      // - else: $
+      //
+      // In full-path matching mode, we put the slash at the START of the
+      // pattern, so start is:
+      // - if first pattern: same as part-matching mode
+      // - if not isStart(): nothing
+      // - if traversal possible, but not allowed: /(?!\.\.?(?:$|/))
+      // - if dots allowed or not possible: /
+      // - if dots possible and not allowed: /(?!\.)
+      // end is:
+      // - if last pattern, same as part-matching mode
+      // - else nothing
+      //
+      // Always put the (?:$|/) on negated tails, though, because that has to be
+      // there to bind the end of the negated pattern portion, and it's easier to
+      // just stick it in now rather than try to inject it later in the middle of
+      // the pattern.
+      //
+      // We can just always return the same end, and leave it up to the caller
+      // to know whether it's going to be used joined or in parts.
+      // And, if the start is adjusted slightly, can do the same there:
+      // - if not isStart: nothing
+      // - if traversal possible, but not allowed: (?:/|^)(?!\.\.?$)
+      // - if dots allowed or not possible: (?:/|^)
+      // - if dots possible and not allowed: (?:/|^)(?!\.)
+      //
+      // But it's better to have a simpler binding without a conditional, for
+      // performance, so probably better to return both start options.
+      //
+      // Then the caller just ignores the end if it's not the first pattern,
+      // and the start always gets applied.
+      //
+      // But that's always going to be $ if it's the ending pattern, or nothing,
+      // so the caller can just attach $ at the end of the pattern when building.
+      //
+      // So the todo is:
+      // - better detect what kind of start is needed
+      // - return both flavors of starting pattern
+      // - attach $ at the end of the pattern when creating the actual RegExp
+      //
+      // Ah, but wait, no, that all only applies to the root when the first pattern
+      // is not an extglob. If the first pattern IS an extglob, then we need all
+      // that dot prevention biz to live in the extglob portions, because eg
+      // +(*|.x*) can match .xy but not .yx.
+      //
+      // So, return the two flavors if it's #root and the first child is not an
+      // AST, otherwise leave it to the child AST to handle it, and there,
+      // use the (?:^|/) style of start binding.
+      //
+      // Even simplified further:
+      // - Since the start for a join is eg /(?!\.) and the start for a part
+      // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root
+      // or start or whatever) and prepend ^ or / at the Regexp construction.
+      toRegExpSource(allowDot) {
+        const dot = allowDot ?? !!this.#options.dot;
+        if (this.#root === this) {
+          this.#flatten();
+          this.#fillNegs();
+        }
+        if (!isExtglobAST(this)) {
+          const noEmpty = this.isStart() && this.isEnd() && !this.#parts.some((s) => typeof s !== "string");
+          const src = this.#parts.map((p) => {
+            const [re, _, hasMagic, uflag] = typeof p === "string" ? _a7.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot);
+            this.#hasMagic = this.#hasMagic || hasMagic;
+            this.#uflag = this.#uflag || uflag;
+            return re;
+          }).join("");
+          let start2 = "";
+          if (this.isStart()) {
+            if (typeof this.#parts[0] === "string") {
+              const dotTravAllowed = this.#parts.length === 1 && justDots.has(this.#parts[0]);
+              if (!dotTravAllowed) {
+                const aps = addPatternStart;
+                const needNoTrav = (
+                  // dots are allowed, and the pattern starts with [ or .
+                  dot && aps.has(src.charAt(0)) || // the pattern starts with \., and then [ or .
+                  src.startsWith("\\.") && aps.has(src.charAt(2)) || // the pattern starts with \.\., and then [ or .
+                  src.startsWith("\\.\\.") && aps.has(src.charAt(4))
+                );
+                const needNoDot = !dot && !allowDot && aps.has(src.charAt(0));
+                start2 = needNoTrav ? startNoTraversal : needNoDot ? startNoDot : "";
+              }
+            }
+          }
+          let end = "";
+          if (this.isEnd() && this.#root.#filledNegs && this.#parent?.type === "!") {
+            end = "(?:$|\\/)";
+          }
+          const final2 = start2 + src + end;
+          return [
+            final2,
+            (0, unescape_js_1.unescape)(src),
+            this.#hasMagic = !!this.#hasMagic,
+            this.#uflag
+          ];
+        }
+        const repeated = this.type === "*" || this.type === "+";
+        const start = this.type === "!" ? "(?:(?!(?:" : "(?:";
+        let body = this.#partsToRegExp(dot);
+        if (this.isStart() && this.isEnd() && !body && this.type !== "!") {
+          const s = this.toString();
+          const me = this;
+          me.#parts = [s];
+          me.type = null;
+          me.#hasMagic = void 0;
+          return [s, (0, unescape_js_1.unescape)(this.toString()), false, false];
+        }
+        let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : this.#partsToRegExp(true);
+        if (bodyDotAllowed === body) {
+          bodyDotAllowed = "";
+        }
+        if (bodyDotAllowed) {
+          body = `(?:${body})(?:${bodyDotAllowed})*?`;
+        }
+        let final = "";
+        if (this.type === "!" && this.#emptyExt) {
+          final = (this.isStart() && !dot ? startNoDot : "") + starNoEmpty;
+        } else {
+          const close = this.type === "!" ? (
+            // !() must match something,but !(x) can match ''
+            "))" + (this.isStart() && !dot && !allowDot ? startNoDot : "") + star + ")"
+          ) : this.type === "@" ? ")" : this.type === "?" ? ")?" : this.type === "+" && bodyDotAllowed ? ")" : this.type === "*" && bodyDotAllowed ? `)?` : `)${this.type}`;
+          final = start + body + close;
+        }
+        return [
+          final,
+          (0, unescape_js_1.unescape)(body),
+          this.#hasMagic = !!this.#hasMagic,
+          this.#uflag
+        ];
+      }
+      #flatten() {
+        if (!isExtglobAST(this)) {
+          for (const p of this.#parts) {
+            if (typeof p === "object") {
+              p.#flatten();
+            }
+          }
+        } else {
+          let iterations = 0;
+          let done = false;
+          do {
+            done = true;
+            for (let i = 0; i < this.#parts.length; i++) {
+              const c = this.#parts[i];
+              if (typeof c === "object") {
+                c.#flatten();
+                if (this.#canAdopt(c)) {
+                  done = false;
+                  this.#adopt(c, i);
+                } else if (this.#canAdoptWithSpace(c)) {
+                  done = false;
+                  this.#adoptWithSpace(c, i);
+                } else if (this.#canUsurp(c)) {
+                  done = false;
+                  this.#usurp(c);
+                }
+              }
+            }
+          } while (!done && ++iterations < 10);
+        }
+        this.#toString = void 0;
+      }
+      #partsToRegExp(dot) {
+        return this.#parts.map((p) => {
+          if (typeof p === "string") {
+            throw new Error("string type in extglob ast??");
+          }
+          const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot);
+          this.#uflag = this.#uflag || uflag;
+          return re;
+        }).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|");
+      }
+      static #parseGlob(glob2, hasMagic, noEmpty = false) {
+        let escaping = false;
+        let re = "";
+        let uflag = false;
+        let inStar = false;
+        for (let i = 0; i < glob2.length; i++) {
+          const c = glob2.charAt(i);
+          if (escaping) {
+            escaping = false;
+            re += (reSpecials.has(c) ? "\\" : "") + c;
+            continue;
+          }
+          if (c === "*") {
+            if (inStar)
+              continue;
+            inStar = true;
+            re += noEmpty && /^[*]+$/.test(glob2) ? starNoEmpty : star;
+            hasMagic = true;
+            continue;
+          } else {
+            inStar = false;
+          }
+          if (c === "\\") {
+            if (i === glob2.length - 1) {
+              re += "\\\\";
+            } else {
+              escaping = true;
+            }
+            continue;
+          }
+          if (c === "[") {
+            const [src, needUflag, consumed, magic] = (0, brace_expressions_js_1.parseClass)(glob2, i);
+            if (consumed) {
+              re += src;
+              uflag = uflag || needUflag;
+              i += consumed - 1;
+              hasMagic = hasMagic || magic;
+              continue;
+            }
+          }
+          if (c === "?") {
+            re += qmark;
+            hasMagic = true;
+            continue;
+          }
+          re += regExpEscape(c);
+        }
+        return [re, (0, unescape_js_1.unescape)(glob2), !!hasMagic, uflag];
+      }
+    };
+    exports2.AST = AST;
+    _a7 = AST;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js
+var require_escape = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.escape = void 0;
+    var escape = (s, { windowsPathsNoEscape = false, magicalBraces = false } = {}) => {
+      if (magicalBraces) {
+        return windowsPathsNoEscape ? s.replace(/[?*()[\]{}]/g, "[$&]") : s.replace(/[?*()[\]\\{}]/g, "\\$&");
+      }
+      return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&");
+    };
+    exports2.escape = escape;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js
+var require_commonjs3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.unescape = exports2.escape = exports2.AST = exports2.Minimatch = exports2.match = exports2.makeRe = exports2.braceExpand = exports2.defaults = exports2.filter = exports2.GLOBSTAR = exports2.sep = exports2.minimatch = void 0;
+    var brace_expansion_1 = require_commonjs2();
+    var assert_valid_pattern_js_1 = require_assert_valid_pattern();
+    var ast_js_1 = require_ast();
+    var escape_js_1 = require_escape();
+    var unescape_js_1 = require_unescape();
+    var minimatch4 = (p, pattern, options = {}) => {
+      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+      if (!options.nocomment && pattern.charAt(0) === "#") {
+        return false;
+      }
+      return new Minimatch(pattern, options).match(p);
+    };
+    exports2.minimatch = minimatch4;
+    var starDotExtRE = /^\*+([^+@!?*[(]*)$/;
+    var starDotExtTest = (ext2) => (f) => !f.startsWith(".") && f.endsWith(ext2);
+    var starDotExtTestDot = (ext2) => (f) => f.endsWith(ext2);
+    var starDotExtTestNocase = (ext2) => {
+      ext2 = ext2.toLowerCase();
+      return (f) => !f.startsWith(".") && f.toLowerCase().endsWith(ext2);
+    };
+    var starDotExtTestNocaseDot = (ext2) => {
+      ext2 = ext2.toLowerCase();
+      return (f) => f.toLowerCase().endsWith(ext2);
+    };
+    var starDotStarRE = /^\*+\.\*+$/;
+    var starDotStarTest = (f) => !f.startsWith(".") && f.includes(".");
+    var starDotStarTestDot = (f) => f !== "." && f !== ".." && f.includes(".");
+    var dotStarRE = /^\.\*+$/;
+    var dotStarTest = (f) => f !== "." && f !== ".." && f.startsWith(".");
+    var starRE = /^\*+$/;
+    var starTest = (f) => f.length !== 0 && !f.startsWith(".");
+    var starTestDot = (f) => f.length !== 0 && f !== "." && f !== "..";
+    var qmarksRE = /^\?+([^+@!?*[(]*)?$/;
+    var qmarksTestNocase = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExt([$0]);
+      if (!ext2)
+        return noext;
+      ext2 = ext2.toLowerCase();
+      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
+    };
+    var qmarksTestNocaseDot = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExtDot([$0]);
+      if (!ext2)
+        return noext;
+      ext2 = ext2.toLowerCase();
+      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
+    };
+    var qmarksTestDot = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExtDot([$0]);
+      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
+    };
+    var qmarksTest = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExt([$0]);
+      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
+    };
+    var qmarksTestNoExt = ([$0]) => {
+      const len = $0.length;
+      return (f) => f.length === len && !f.startsWith(".");
+    };
+    var qmarksTestNoExtDot = ([$0]) => {
+      const len = $0.length;
+      return (f) => f.length === len && f !== "." && f !== "..";
+    };
+    var defaultPlatform = typeof process === "object" && process ? typeof process.env === "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix";
+    var path23 = {
+      win32: { sep: "\\" },
+      posix: { sep: "/" }
+    };
+    exports2.sep = defaultPlatform === "win32" ? path23.win32.sep : path23.posix.sep;
+    exports2.minimatch.sep = exports2.sep;
+    exports2.GLOBSTAR = /* @__PURE__ */ Symbol("globstar **");
+    exports2.minimatch.GLOBSTAR = exports2.GLOBSTAR;
+    var qmark = "[^/]";
+    var star = qmark + "*?";
+    var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
+    var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
+    var filter = (pattern, options = {}) => (p) => (0, exports2.minimatch)(p, pattern, options);
+    exports2.filter = filter;
+    exports2.minimatch.filter = exports2.filter;
+    var ext = (a, b = {}) => Object.assign({}, a, b);
+    var defaults = (def) => {
+      if (!def || typeof def !== "object" || !Object.keys(def).length) {
+        return exports2.minimatch;
+      }
+      const orig = exports2.minimatch;
+      const m = (p, pattern, options = {}) => orig(p, pattern, ext(def, options));
+      return Object.assign(m, {
+        Minimatch: class Minimatch extends orig.Minimatch {
+          constructor(pattern, options = {}) {
+            super(pattern, ext(def, options));
+          }
+          static defaults(options) {
+            return orig.defaults(ext(def, options)).Minimatch;
+          }
+        },
+        AST: class AST extends orig.AST {
+          /* c8 ignore start */
+          constructor(type, parent, options = {}) {
+            super(type, parent, ext(def, options));
+          }
+          /* c8 ignore stop */
+          static fromGlob(pattern, options = {}) {
+            return orig.AST.fromGlob(pattern, ext(def, options));
+          }
+        },
+        unescape: (s, options = {}) => orig.unescape(s, ext(def, options)),
+        escape: (s, options = {}) => orig.escape(s, ext(def, options)),
+        filter: (pattern, options = {}) => orig.filter(pattern, ext(def, options)),
+        defaults: (options) => orig.defaults(ext(def, options)),
+        makeRe: (pattern, options = {}) => orig.makeRe(pattern, ext(def, options)),
+        braceExpand: (pattern, options = {}) => orig.braceExpand(pattern, ext(def, options)),
+        match: (list, pattern, options = {}) => orig.match(list, pattern, ext(def, options)),
+        sep: orig.sep,
+        GLOBSTAR: exports2.GLOBSTAR
+      });
+    };
+    exports2.defaults = defaults;
+    exports2.minimatch.defaults = exports2.defaults;
+    var braceExpand = (pattern, options = {}) => {
+      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+      if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
+        return [pattern];
+      }
+      return (0, brace_expansion_1.expand)(pattern, { max: options.braceExpandMax });
+    };
+    exports2.braceExpand = braceExpand;
+    exports2.minimatch.braceExpand = exports2.braceExpand;
+    var makeRe = (pattern, options = {}) => new Minimatch(pattern, options).makeRe();
+    exports2.makeRe = makeRe;
+    exports2.minimatch.makeRe = exports2.makeRe;
+    var match = (list, pattern, options = {}) => {
+      const mm = new Minimatch(pattern, options);
+      list = list.filter((f) => mm.match(f));
+      if (mm.options.nonull && !list.length) {
+        list.push(pattern);
+      }
+      return list;
+    };
+    exports2.match = match;
+    exports2.minimatch.match = exports2.match;
+    var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
+    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var Minimatch = class {
+      options;
+      set;
+      pattern;
+      windowsPathsNoEscape;
+      nonegate;
+      negate;
+      comment;
+      empty;
+      preserveMultipleSlashes;
+      partial;
+      globSet;
+      globParts;
+      nocase;
+      isWindows;
+      platform;
+      windowsNoMagicRoot;
+      maxGlobstarRecursion;
+      regexp;
+      constructor(pattern, options = {}) {
+        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+        options = options || {};
+        this.options = options;
+        this.maxGlobstarRecursion = options.maxGlobstarRecursion ?? 200;
+        this.pattern = pattern;
+        this.platform = options.platform || defaultPlatform;
+        this.isWindows = this.platform === "win32";
+        const awe = "allowWindowsEscape";
+        this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options[awe] === false;
+        if (this.windowsPathsNoEscape) {
+          this.pattern = this.pattern.replace(/\\/g, "/");
+        }
+        this.preserveMultipleSlashes = !!options.preserveMultipleSlashes;
+        this.regexp = null;
+        this.negate = false;
+        this.nonegate = !!options.nonegate;
+        this.comment = false;
+        this.empty = false;
+        this.partial = !!options.partial;
+        this.nocase = !!this.options.nocase;
+        this.windowsNoMagicRoot = options.windowsNoMagicRoot !== void 0 ? options.windowsNoMagicRoot : !!(this.isWindows && this.nocase);
+        this.globSet = [];
+        this.globParts = [];
+        this.set = [];
+        this.make();
+      }
+      hasMagic() {
+        if (this.options.magicalBraces && this.set.length > 1) {
+          return true;
+        }
+        for (const pattern of this.set) {
+          for (const part of pattern) {
+            if (typeof part !== "string")
+              return true;
+          }
+        }
+        return false;
+      }
+      debug(..._) {
+      }
+      make() {
+        const pattern = this.pattern;
+        const options = this.options;
+        if (!options.nocomment && pattern.charAt(0) === "#") {
+          this.comment = true;
+          return;
+        }
+        if (!pattern) {
+          this.empty = true;
+          return;
+        }
+        this.parseNegate();
+        this.globSet = [...new Set(this.braceExpand())];
+        if (options.debug) {
+          this.debug = (...args) => console.error(...args);
+        }
+        this.debug(this.pattern, this.globSet);
+        const rawGlobParts = this.globSet.map((s) => this.slashSplit(s));
+        this.globParts = this.preprocess(rawGlobParts);
+        this.debug(this.pattern, this.globParts);
+        let set = this.globParts.map((s, _, __) => {
+          if (this.isWindows && this.windowsNoMagicRoot) {
+            const isUNC = s[0] === "" && s[1] === "" && (s[2] === "?" || !globMagic.test(s[2])) && !globMagic.test(s[3]);
+            const isDrive = /^[a-z]:/i.test(s[0]);
+            if (isUNC) {
+              return [
+                ...s.slice(0, 4),
+                ...s.slice(4).map((ss) => this.parse(ss))
+              ];
+            } else if (isDrive) {
+              return [s[0], ...s.slice(1).map((ss) => this.parse(ss))];
+            }
+          }
+          return s.map((ss) => this.parse(ss));
+        });
+        this.debug(this.pattern, set);
+        this.set = set.filter((s) => s.indexOf(false) === -1);
+        if (this.isWindows) {
+          for (let i = 0; i < this.set.length; i++) {
+            const p = this.set[i];
+            if (p[0] === "" && p[1] === "" && this.globParts[i][2] === "?" && typeof p[3] === "string" && /^[a-z]:$/i.test(p[3])) {
+              p[2] = "?";
+            }
+          }
+        }
+        this.debug(this.pattern, this.set);
+      }
+      // various transforms to equivalent pattern sets that are
+      // faster to process in a filesystem walk.  The goal is to
+      // eliminate what we can, and push all ** patterns as far
+      // to the right as possible, even if it increases the number
+      // of patterns that we have to process.
+      preprocess(globParts) {
+        if (this.options.noglobstar) {
+          for (const partset of globParts) {
+            for (let j = 0; j < partset.length; j++) {
+              if (partset[j] === "**") {
+                partset[j] = "*";
+              }
+            }
+          }
+        }
+        const { optimizationLevel = 1 } = this.options;
+        if (optimizationLevel >= 2) {
+          globParts = this.firstPhasePreProcess(globParts);
+          globParts = this.secondPhasePreProcess(globParts);
+        } else if (optimizationLevel >= 1) {
+          globParts = this.levelOneOptimize(globParts);
+        } else {
+          globParts = this.adjascentGlobstarOptimize(globParts);
+        }
+        return globParts;
+      }
+      // just get rid of adjascent ** portions
+      adjascentGlobstarOptimize(globParts) {
+        return globParts.map((parts) => {
+          let gs = -1;
+          while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+            let i = gs;
+            while (parts[i + 1] === "**") {
+              i++;
+            }
+            if (i !== gs) {
+              parts.splice(gs, i - gs);
+            }
+          }
+          return parts;
+        });
+      }
+      // get rid of adjascent ** and resolve .. portions
+      levelOneOptimize(globParts) {
+        return globParts.map((parts) => {
+          parts = parts.reduce((set, part) => {
+            const prev = set[set.length - 1];
+            if (part === "**" && prev === "**") {
+              return set;
+            }
+            if (part === "..") {
+              if (prev && prev !== ".." && prev !== "." && prev !== "**") {
+                set.pop();
+                return set;
+              }
+            }
+            set.push(part);
+            return set;
+          }, []);
+          return parts.length === 0 ? [""] : parts;
+        });
+      }
+      levelTwoFileOptimize(parts) {
+        if (!Array.isArray(parts)) {
+          parts = this.slashSplit(parts);
+        }
+        let didSomething = false;
+        do {
+          didSomething = false;
+          if (!this.preserveMultipleSlashes) {
+            for (let i = 1; i < parts.length - 1; i++) {
+              const p = parts[i];
+              if (i === 1 && p === "" && parts[0] === "")
+                continue;
+              if (p === "." || p === "") {
+                didSomething = true;
+                parts.splice(i, 1);
+                i--;
+              }
+            }
+            if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+              didSomething = true;
+              parts.pop();
+            }
+          }
+          let dd = 0;
+          while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+            const p = parts[dd - 1];
+            if (p && p !== "." && p !== ".." && p !== "**" && !(this.isWindows && /^[a-z]:$/i.test(p))) {
+              didSomething = true;
+              parts.splice(dd - 1, 2);
+              dd -= 2;
+            }
+          }
+        } while (didSomething);
+        return parts.length === 0 ? [""] : parts;
+      }
+      // First phase: single-pattern processing
+      // 
 is 1 or more portions
+      //  is 1 or more portions
+      // 

is any portion other than ., .., '', or ** + // is . or '' + // + // **/.. is *brutal* for filesystem walking performance, because + // it effectively resets the recursive walk each time it occurs, + // and ** cannot be reduced out by a .. pattern part like a regexp + // or most strings (other than .., ., and '') can be. + // + //

/**/../

/

/ -> {

/../

/

/,

/**/

/

/} + //

// -> 
/
+      // 
/

/../ ->

/
+      // **/**/ -> **/
+      //
+      // **/*/ -> */**/ <== not valid because ** doesn't follow
+      // this WOULD be allowed if ** did follow symlinks, or * didn't
+      firstPhasePreProcess(globParts) {
+        let didSomething = false;
+        do {
+          didSomething = false;
+          for (let parts of globParts) {
+            let gs = -1;
+            while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+              let gss = gs;
+              while (parts[gss + 1] === "**") {
+                gss++;
+              }
+              if (gss > gs) {
+                parts.splice(gs + 1, gss - gs);
+              }
+              let next = parts[gs + 1];
+              const p = parts[gs + 2];
+              const p2 = parts[gs + 3];
+              if (next !== "..")
+                continue;
+              if (!p || p === "." || p === ".." || !p2 || p2 === "." || p2 === "..") {
+                continue;
+              }
+              didSomething = true;
+              parts.splice(gs, 1);
+              const other = parts.slice(0);
+              other[gs] = "**";
+              globParts.push(other);
+              gs--;
+            }
+            if (!this.preserveMultipleSlashes) {
+              for (let i = 1; i < parts.length - 1; i++) {
+                const p = parts[i];
+                if (i === 1 && p === "" && parts[0] === "")
+                  continue;
+                if (p === "." || p === "") {
+                  didSomething = true;
+                  parts.splice(i, 1);
+                  i--;
+                }
+              }
+              if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+                didSomething = true;
+                parts.pop();
+              }
+            }
+            let dd = 0;
+            while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+              const p = parts[dd - 1];
+              if (p && p !== "." && p !== ".." && p !== "**") {
+                didSomething = true;
+                const needDot = dd === 1 && parts[dd + 1] === "**";
+                const splin = needDot ? ["."] : [];
+                parts.splice(dd - 1, 2, ...splin);
+                if (parts.length === 0)
+                  parts.push("");
+                dd -= 2;
+              }
+            }
+          }
+        } while (didSomething);
+        return globParts;
+      }
+      // second phase: multi-pattern dedupes
+      // {
/*/,
/

/} ->

/*/
+      // {
/,
/} -> 
/
+      // {
/**/,
/} -> 
/**/
+      //
+      // {
/**/,
/**/

/} ->

/**/
+      // ^-- not valid because ** doens't follow symlinks
+      secondPhasePreProcess(globParts) {
+        for (let i = 0; i < globParts.length - 1; i++) {
+          for (let j = i + 1; j < globParts.length; j++) {
+            const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
+            if (matched) {
+              globParts[i] = [];
+              globParts[j] = matched;
+              break;
+            }
+          }
+        }
+        return globParts.filter((gs) => gs.length);
+      }
+      partsMatch(a, b, emptyGSMatch = false) {
+        let ai = 0;
+        let bi = 0;
+        let result = [];
+        let which = "";
+        while (ai < a.length && bi < b.length) {
+          if (a[ai] === b[bi]) {
+            result.push(which === "b" ? b[bi] : a[ai]);
+            ai++;
+            bi++;
+          } else if (emptyGSMatch && a[ai] === "**" && b[bi] === a[ai + 1]) {
+            result.push(a[ai]);
+            ai++;
+          } else if (emptyGSMatch && b[bi] === "**" && a[ai] === b[bi + 1]) {
+            result.push(b[bi]);
+            bi++;
+          } else if (a[ai] === "*" && b[bi] && (this.options.dot || !b[bi].startsWith(".")) && b[bi] !== "**") {
+            if (which === "b")
+              return false;
+            which = "a";
+            result.push(a[ai]);
+            ai++;
+            bi++;
+          } else if (b[bi] === "*" && a[ai] && (this.options.dot || !a[ai].startsWith(".")) && a[ai] !== "**") {
+            if (which === "a")
+              return false;
+            which = "b";
+            result.push(b[bi]);
+            ai++;
+            bi++;
+          } else {
+            return false;
+          }
+        }
+        return a.length === b.length && result;
+      }
+      parseNegate() {
+        if (this.nonegate)
+          return;
+        const pattern = this.pattern;
+        let negate = false;
+        let negateOffset = 0;
+        for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) {
+          negate = !negate;
+          negateOffset++;
+        }
+        if (negateOffset)
+          this.pattern = pattern.slice(negateOffset);
+        this.negate = negate;
+      }
+      // set partial to true to test if, for example,
+      // "/a/b" matches the start of "/*/b/*/d"
+      // Partial means, if you run out of file before you run
+      // out of pattern, then that's fine, as long as all
+      // the parts match.
+      matchOne(file, pattern, partial = false) {
+        let fileStartIndex = 0;
+        let patternStartIndex = 0;
+        if (this.isWindows) {
+          const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
+          const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
+          const patternDrive = typeof pattern[0] === "string" && /^[a-z]:$/i.test(pattern[0]);
+          const patternUNC = !patternDrive && pattern[0] === "" && pattern[1] === "" && pattern[2] === "?" && typeof pattern[3] === "string" && /^[a-z]:$/i.test(pattern[3]);
+          const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
+          const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
+          if (typeof fdi === "number" && typeof pdi === "number") {
+            const [fd, pd] = [
+              file[fdi],
+              pattern[pdi]
+            ];
+            if (fd.toLowerCase() === pd.toLowerCase()) {
+              pattern[pdi] = fd;
+              patternStartIndex = pdi;
+              fileStartIndex = fdi;
+            }
+          }
+        }
+        const { optimizationLevel = 1 } = this.options;
+        if (optimizationLevel >= 2) {
+          file = this.levelTwoFileOptimize(file);
+        }
+        if (pattern.includes(exports2.GLOBSTAR)) {
+          return this.#matchGlobstar(file, pattern, partial, fileStartIndex, patternStartIndex);
+        }
+        return this.#matchOne(file, pattern, partial, fileStartIndex, patternStartIndex);
+      }
+      #matchGlobstar(file, pattern, partial, fileIndex, patternIndex) {
+        const firstgs = pattern.indexOf(exports2.GLOBSTAR, patternIndex);
+        const lastgs = pattern.lastIndexOf(exports2.GLOBSTAR);
+        const [head, body, tail] = partial ? [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1),
+          []
+        ] : [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1, lastgs),
+          pattern.slice(lastgs + 1)
+        ];
+        if (head.length) {
+          const fileHead = file.slice(fileIndex, fileIndex + head.length);
+          if (!this.#matchOne(fileHead, head, partial, 0, 0)) {
+            return false;
+          }
+          fileIndex += head.length;
+          patternIndex += head.length;
+        }
+        let fileTailMatch = 0;
+        if (tail.length) {
+          if (tail.length + fileIndex > file.length)
+            return false;
+          let tailStart = file.length - tail.length;
+          if (this.#matchOne(file, tail, partial, tailStart, 0)) {
+            fileTailMatch = tail.length;
+          } else {
+            if (file[file.length - 1] !== "" || fileIndex + tail.length === file.length) {
+              return false;
+            }
+            tailStart--;
+            if (!this.#matchOne(file, tail, partial, tailStart, 0)) {
+              return false;
+            }
+            fileTailMatch = tail.length + 1;
+          }
+        }
+        if (!body.length) {
+          let sawSome = !!fileTailMatch;
+          for (let i2 = fileIndex; i2 < file.length - fileTailMatch; i2++) {
+            const f = String(file[i2]);
+            sawSome = true;
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return partial || sawSome;
+        }
+        const bodySegments = [[[], 0]];
+        let currentBody = bodySegments[0];
+        let nonGsParts = 0;
+        const nonGsPartsSums = [0];
+        for (const b of body) {
+          if (b === exports2.GLOBSTAR) {
+            nonGsPartsSums.push(nonGsParts);
+            currentBody = [[], 0];
+            bodySegments.push(currentBody);
+          } else {
+            currentBody[0].push(b);
+            nonGsParts++;
+          }
+        }
+        let i = bodySegments.length - 1;
+        const fileLength = file.length - fileTailMatch;
+        for (const b of bodySegments) {
+          b[1] = fileLength - (nonGsPartsSums[i--] + b[0].length);
+        }
+        return !!this.#matchGlobStarBodySections(file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
+      }
+      // return false for "nope, not matching"
+      // return null for "not matching, cannot keep trying"
+      #matchGlobStarBodySections(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
+        const bs = bodySegments[bodyIndex];
+        if (!bs) {
+          for (let i = fileIndex; i < file.length; i++) {
+            sawTail = true;
+            const f = file[i];
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return sawTail;
+        }
+        const [body, after] = bs;
+        while (fileIndex <= after) {
+          const m = this.#matchOne(file.slice(0, fileIndex + body.length), body, partial, fileIndex, 0);
+          if (m && globStarDepth < this.maxGlobstarRecursion) {
+            const sub = this.#matchGlobStarBodySections(file, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
+            if (sub !== false) {
+              return sub;
+            }
+          }
+          const f = file[fileIndex];
+          if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+            return false;
+          }
+          fileIndex++;
+        }
+        return partial || null;
+      }
+      #matchOne(file, pattern, partial, fileIndex, patternIndex) {
+        let fi;
+        let pi;
+        let pl;
+        let fl;
+        for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
+          this.debug("matchOne loop");
+          let p = pattern[pi];
+          let f = file[fi];
+          this.debug(pattern, p, f);
+          if (p === false || p === exports2.GLOBSTAR) {
+            return false;
+          }
+          let hit;
+          if (typeof p === "string") {
+            hit = f === p;
+            this.debug("string match", p, f, hit);
+          } else {
+            hit = p.test(f);
+            this.debug("pattern match", p, f, hit);
+          }
+          if (!hit)
+            return false;
+        }
+        if (fi === fl && pi === pl) {
+          return true;
+        } else if (fi === fl) {
+          return partial;
+        } else if (pi === pl) {
+          return fi === fl - 1 && file[fi] === "";
+        } else {
+          throw new Error("wtf?");
+        }
+      }
+      braceExpand() {
+        return (0, exports2.braceExpand)(this.pattern, this.options);
+      }
+      parse(pattern) {
+        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+        const options = this.options;
+        if (pattern === "**")
+          return exports2.GLOBSTAR;
+        if (pattern === "")
+          return "";
+        let m;
+        let fastTest = null;
+        if (m = pattern.match(starRE)) {
+          fastTest = options.dot ? starTestDot : starTest;
+        } else if (m = pattern.match(starDotExtRE)) {
+          fastTest = (options.nocase ? options.dot ? starDotExtTestNocaseDot : starDotExtTestNocase : options.dot ? starDotExtTestDot : starDotExtTest)(m[1]);
+        } else if (m = pattern.match(qmarksRE)) {
+          fastTest = (options.nocase ? options.dot ? qmarksTestNocaseDot : qmarksTestNocase : options.dot ? qmarksTestDot : qmarksTest)(m);
+        } else if (m = pattern.match(starDotStarRE)) {
+          fastTest = options.dot ? starDotStarTestDot : starDotStarTest;
+        } else if (m = pattern.match(dotStarRE)) {
+          fastTest = dotStarTest;
+        }
+        const re = ast_js_1.AST.fromGlob(pattern, this.options).toMMPattern();
+        if (fastTest && typeof re === "object") {
+          Reflect.defineProperty(re, "test", { value: fastTest });
+        }
+        return re;
+      }
+      makeRe() {
+        if (this.regexp || this.regexp === false)
+          return this.regexp;
+        const set = this.set;
+        if (!set.length) {
+          this.regexp = false;
+          return this.regexp;
+        }
+        const options = this.options;
+        const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
+        const flags = new Set(options.nocase ? ["i"] : []);
+        let re = set.map((pattern) => {
+          const pp = pattern.map((p) => {
+            if (p instanceof RegExp) {
+              for (const f of p.flags.split(""))
+                flags.add(f);
+            }
+            return typeof p === "string" ? regExpEscape(p) : p === exports2.GLOBSTAR ? exports2.GLOBSTAR : p._src;
+          });
+          pp.forEach((p, i) => {
+            const next = pp[i + 1];
+            const prev = pp[i - 1];
+            if (p !== exports2.GLOBSTAR || prev === exports2.GLOBSTAR) {
+              return;
+            }
+            if (prev === void 0) {
+              if (next !== void 0 && next !== exports2.GLOBSTAR) {
+                pp[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + next;
+              } else {
+                pp[i] = twoStar;
+              }
+            } else if (next === void 0) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + ")?";
+            } else if (next !== exports2.GLOBSTAR) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next;
+              pp[i + 1] = exports2.GLOBSTAR;
+            }
+          });
+          const filtered = pp.filter((p) => p !== exports2.GLOBSTAR);
+          if (this.partial && filtered.length >= 1) {
+            const prefixes = [];
+            for (let i = 1; i <= filtered.length; i++) {
+              prefixes.push(filtered.slice(0, i).join("/"));
+            }
+            return "(?:" + prefixes.join("|") + ")";
+          }
+          return filtered.join("/");
+        }).join("|");
+        const [open, close] = set.length > 1 ? ["(?:", ")"] : ["", ""];
+        re = "^" + open + re + close + "$";
+        if (this.partial) {
+          re = "^(?:\\/|" + open + re.slice(1, -1) + close + ")$";
+        }
+        if (this.negate)
+          re = "^(?!" + re + ").+$";
+        try {
+          this.regexp = new RegExp(re, [...flags].join(""));
+        } catch {
+          this.regexp = false;
+        }
+        return this.regexp;
+      }
+      slashSplit(p) {
+        if (this.preserveMultipleSlashes) {
+          return p.split("/");
+        } else if (this.isWindows && /^\/\/[^/]+/.test(p)) {
+          return ["", ...p.split(/\/+/)];
+        } else {
+          return p.split(/\/+/);
+        }
+      }
+      match(f, partial = this.partial) {
+        this.debug("match", f, this.pattern);
+        if (this.comment) {
+          return false;
+        }
+        if (this.empty) {
+          return f === "";
+        }
+        if (f === "/" && partial) {
+          return true;
+        }
+        const options = this.options;
+        if (this.isWindows) {
+          f = f.split("\\").join("/");
+        }
+        const ff = this.slashSplit(f);
+        this.debug(this.pattern, "split", ff);
+        const set = this.set;
+        this.debug(this.pattern, "set", set);
+        let filename = ff[ff.length - 1];
+        if (!filename) {
+          for (let i = ff.length - 2; !filename && i >= 0; i--) {
+            filename = ff[i];
+          }
+        }
+        for (const pattern of set) {
+          let file = ff;
+          if (options.matchBase && pattern.length === 1) {
+            file = [filename];
+          }
+          const hit = this.matchOne(file, pattern, partial);
+          if (hit) {
+            if (options.flipNegate) {
+              return true;
+            }
+            return !this.negate;
+          }
+        }
+        if (options.flipNegate) {
+          return false;
+        }
+        return this.negate;
+      }
+      static defaults(def) {
+        return exports2.minimatch.defaults(def).Minimatch;
+      }
+    };
+    exports2.Minimatch = Minimatch;
+    var ast_js_2 = require_ast();
+    Object.defineProperty(exports2, "AST", { enumerable: true, get: function() {
+      return ast_js_2.AST;
+    } });
+    var escape_js_2 = require_escape();
+    Object.defineProperty(exports2, "escape", { enumerable: true, get: function() {
+      return escape_js_2.escape;
+    } });
+    var unescape_js_2 = require_unescape();
+    Object.defineProperty(exports2, "unescape", { enumerable: true, get: function() {
+      return unescape_js_2.unescape;
+    } });
+    exports2.minimatch.AST = ast_js_1.AST;
+    exports2.minimatch.Minimatch = Minimatch;
+    exports2.minimatch.escape = escape_js_1.escape;
+    exports2.minimatch.unescape = unescape_js_1.unescape;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/ignore.ts
+var path, import_dockerignore, import_ignore, minimatch, IgnoreStrategy, GlobIgnoreStrategy, GitIgnoreStrategy, DockerIgnoreStrategy;
+var init_ignore = __esm({
+  "../../aws-cdk-lib/core/lib/fs/ignore.ts"() {
+    "use strict";
+    path = __toESM(require("path"));
+    import_dockerignore = __toESM(require_ignore());
+    import_ignore = __toESM(require_ignore2());
+    init_options();
+    init_errors();
+    init_literal_string();
+    ({ minimatch } = require_commonjs3());
+    IgnoreStrategy = class {
+      /**
+       * Ignores file paths based on simple glob patterns.
+       *
+       * @returns `GlobIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static glob(absoluteRootPath, patterns) {
+        return new GlobIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.gitignore specification`](https://git-scm.com/docs/gitignore).
+       *
+       * @returns `GitIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static git(absoluteRootPath, patterns) {
+        return new GitIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.dockerignore specification`](https://docs.docker.com/engine/reference/builder/#dockerignore-file).
+       *
+       * @returns `DockerIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static docker(absoluteRootPath, patterns) {
+        return new DockerIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Creates an IgnoreStrategy based on the `ignoreMode` and `exclude` in a `CopyOptions`.
+       *
+       * @returns `IgnoreStrategy` based on the `CopyOptions`
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       * @param options the `CopyOptions` to create the `IgnoreStrategy` from
+       */
+      static fromCopyOptions(options, absoluteRootPath) {
+        const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+        const exclude = options.exclude || [];
+        switch (ignoreMode) {
+          case "glob" /* GLOB */:
+            return this.glob(absoluteRootPath, exclude);
+          case "git" /* GIT */:
+            return this.git(absoluteRootPath, exclude);
+          case "docker" /* DOCKER */:
+            return this.docker(absoluteRootPath, exclude);
+        }
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        return this.ignores(absoluteDirectoryPath);
+      }
+    };
+    GlobIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      patterns;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyExpectsAbsolute`, "GlobIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.patterns = patterns;
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.patterns.push(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyIgnoresExpects`, "GlobIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        let excludeOutput = false;
+        for (const pattern of this.patterns) {
+          const negate = pattern.startsWith("!");
+          const match = minimatch(relativePath, pattern, { matchBase: true, flipNegate: true });
+          if (!negate && match) {
+            excludeOutput = true;
+          }
+          if (negate && match) {
+            excludeOutput = false;
+          }
+        }
+        return excludeOutput;
+      }
+    };
+    GitIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyExpectsAbsolute`, "GitIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.ignore = (0, import_ignore.default)().add(patterns);
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyIgnoresExpects`, "GitIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        return this.ignore.ignores(relativePath);
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        if (!path.isAbsolute(absoluteDirectoryPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyCompletelyIgnores`, "GitIgnoreStrategy.completelyIgnores() expects an absolute path");
+        }
+        const relativePath = path.relative(this.absoluteRootPath, absoluteDirectoryPath);
+        const relativePathWithSep = relativePath.endsWith(path.sep) ? relativePath : relativePath + path.sep;
+        return this.ignore.ignores(relativePathWithSep);
+      }
+    };
+    DockerIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      completeIgnore;
+      // Follows negation rules as describe in @balena/dockerignore
+      // See https://www.npmjs.com/package/@balena/dockerignore#exclusion-patterns
+      negativeIgnoreRegex = /^\s*(\!|\/\!)(.*)/;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyExpectsAbsolute`, "DockerIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.completeIgnore = (0, import_dockerignore.default)();
+        this.ignore = (0, import_dockerignore.default)();
+        for (const pattern of patterns) {
+          this.add(pattern);
+        }
+      }
+      /**
+       * Adds the pattern to completeIgnore. If its an exclude pattern, it also adds an entry for each parent directory.
+       * This is useful in detecting folders that are ignored, but that could have children files which are not ignored.
+       *
+       * @param pattern pattern to add
+       */
+      completelyAdd(pattern) {
+        this.completeIgnore.add(pattern);
+        const negativeMatch = pattern.match(this.negativeIgnoreRegex);
+        if (negativeMatch !== null) {
+          let dirname6 = negativeMatch[2];
+          while (true) {
+            dirname6 = path.dirname(dirname6);
+            if (dirname6 === "/" || dirname6 === ".") {
+              break;
+            }
+            this.completeIgnore.add(negativeMatch[1] + dirname6);
+          }
+        }
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+        this.completelyAdd(pattern);
+      }
+      getRelativePath(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyIgnoresExpects`, "DockerIgnoreStrategy.ignores() expects an absolute path");
+        }
+        return path.relative(this.absoluteRootPath, absoluteFilePath);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        return this.ignore.ignores(this.getRelativePath(absoluteFilePath));
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        const relativePath = this.getRelativePath(absoluteDirectoryPath);
+        return this.ignore.ignores(relativePath) && this.completeIgnore.ignores(relativePath);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/utils.ts
+function isInternalPath(rootPath, targetPath) {
+  return rootPath === targetPath || targetPath.startsWith(rootPath + path2.sep);
+}
+function resolveLinkTarget(realPath, linkTarget) {
+  return path2.isAbsolute(linkTarget) ? path2.resolve(linkTarget) : path2.resolve(path2.dirname(realPath), linkTarget);
+}
+function walkDirectory(directory, options, visitor) {
+  const { follow, ignoreStrategy } = options;
+  const canonicalRoot = realPathOrSelf(options.root ?? directory);
+  const ancestors = /* @__PURE__ */ new Set();
+  walk(directory, directory, realPathOrSelf(directory));
+  function walk(symbolicPath, realPath, canonicalPath) {
+    if (ancestors.has(canonicalPath)) {
+      return;
+    }
+    ancestors.add(canonicalPath);
+    const entries = fs2.readdirSync(realPath, { withFileTypes: true });
+    entries.sort((a, b) => a.name < b.name ? -1 : a.name > b.name ? 1 : 0);
+    for (const entry of entries) {
+      const childPath = path2.join(symbolicPath, entry.name);
+      const childRealPath = path2.join(realPath, entry.name);
+      if (entry.isSymbolicLink()) {
+        visitSymlink(childPath, childRealPath);
+      } else if (entry.isDirectory()) {
+        visitDirectory(childPath, childRealPath, path2.join(canonicalPath, entry.name));
+      } else if (entry.isFile()) {
+        visitFile({ path: childPath, realPath: childRealPath });
+      }
+    }
+    ancestors.delete(canonicalPath);
+  }
+  function visitDirectory(symbolicPath, realPath, canonicalPath) {
+    if (ignoreStrategy.completelyIgnores(symbolicPath)) {
+      return;
+    }
+    if (visitor.onDirectory) {
+      visitor.onDirectory({ path: symbolicPath, realPath, ignored: ignoreStrategy.ignores(symbolicPath) });
+    }
+    walk(symbolicPath, realPath, canonicalPath);
+  }
+  function visitFile(entry) {
+    if (!ignoreStrategy.ignores(entry.path)) {
+      visitor.onFile?.(entry);
+    }
+  }
+  function visitSymlink(symbolicPath, realPath) {
+    const linkTarget = fs2.readlinkSync(realPath);
+    const resolvedLinkTarget = canonicalLinkTarget(resolveLinkTarget(realPath, linkTarget));
+    const internal = isInternalPath(canonicalRoot, resolvedLinkTarget);
+    const targetStats = shouldFollow(internal) ? tryStat(resolvedLinkTarget) : void 0;
+    if (!targetStats) {
+      if (!ignoreStrategy.ignores(symbolicPath)) {
+        visitor.onSymlink?.({ path: symbolicPath, realPath, linkTarget, resolvedLinkTarget, internal });
+      }
+      return;
+    }
+    if (targetStats.isDirectory()) {
+      visitDirectory(symbolicPath, resolvedLinkTarget, realPathOrSelf(resolvedLinkTarget));
+    } else if (targetStats.isFile()) {
+      visitFile({ path: symbolicPath, realPath: resolvedLinkTarget, stats: targetStats });
+    } else if (!ignoreStrategy.ignores(symbolicPath)) {
+      visitor.onUnsupported?.({ path: symbolicPath, realPath: resolvedLinkTarget });
+    }
+  }
+  function shouldFollow(internal) {
+    switch (follow) {
+      case "always" /* ALWAYS */:
+        return true;
+      case "external" /* EXTERNAL */:
+        return !internal;
+      case "internal-only" /* BLOCK_EXTERNAL */:
+        return internal;
+      case "never" /* NEVER */:
+      default:
+        return false;
+    }
+  }
+}
+function canonicalLinkTarget(target) {
+  return path2.join(realPathOrSelf(path2.dirname(target)), path2.basename(target));
+}
+function realPathOrSelf(target) {
+  try {
+    return fs2.realpathSync(target);
+  } catch {
+    return target;
+  }
+}
+function tryStat(target) {
+  try {
+    return fs2.statSync(target, { bigint: true });
+  } catch {
+    return void 0;
+  }
+}
+var fs2, path2;
+var init_utils = __esm({
+  "../../aws-cdk-lib/core/lib/fs/utils.ts"() {
+    "use strict";
+    fs2 = __toESM(require("fs"));
+    path2 = __toESM(require("path"));
+    init_options();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/copy.ts
+function copyDirectory(srcDir, destDir, options = {}, rootDir) {
+  const follow = options.follow ?? "external" /* EXTERNAL */;
+  const root = rootDir || srcDir;
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  if (!fs3.statSync(srcDir).isDirectory()) {
+    throw new UnscopedValidationError(lit`Directory`, `${srcDir} is not a directory`);
+  }
+  const canonicalSrcDir = fs3.realpathSync(srcDir);
+  walkDirectory(srcDir, { follow, ignoreStrategy, root }, {
+    onDirectory: (entry) => {
+      if (!entry.ignored) {
+        fs3.mkdirSync(destinationOf(entry.path), { recursive: true });
+      }
+    },
+    onFile: (entry) => {
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.copyFileSync(entry.realPath, destination);
+    },
+    onSymlink: (entry) => {
+      if (follow === "internal-only" /* BLOCK_EXTERNAL */ && !entry.internal) {
+        throw new UnscopedValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${follow}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`
+        );
+      }
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.symlinkSync(linkTextFor(entry, destination), destination);
+    }
+  });
+  function destinationOf(sourcePath) {
+    return path3.join(destDir, path3.relative(srcDir, sourcePath));
+  }
+  function linkTextFor(entry, destination) {
+    if (!isInternalPath(canonicalSrcDir, entry.resolvedLinkTarget)) {
+      return entry.linkTarget;
+    }
+    const copiedTarget = path3.join(destDir, path3.relative(canonicalSrcDir, entry.resolvedLinkTarget));
+    return path3.relative(path3.dirname(destination), copiedTarget) || ".";
+  }
+}
+var fs3, path3;
+var init_copy = __esm({
+  "../../aws-cdk-lib/core/lib/fs/copy.ts"() {
+    "use strict";
+    fs3 = __toESM(require("fs"));
+    path3 = __toESM(require("path"));
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts
+var crypto3, fs4, os, path4, CACHE_DIR, MAX_ENTRIES, MAX_CACHE_FILES, FingerprintDiskCache;
+var init_fingerprint_disk_cache = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts"() {
+    "use strict";
+    crypto3 = __toESM(require("crypto"));
+    fs4 = __toESM(require("fs"));
+    os = __toESM(require("os"));
+    path4 = __toESM(require("path"));
+    CACHE_DIR = path4.join(os.homedir(), ".cdk", "cache", "fingerprints");
+    MAX_ENTRIES = 1e5;
+    MAX_CACHE_FILES = 50;
+    FingerprintDiskCache = class {
+      cache;
+      dirty = false;
+      cacheFile;
+      /**
+       * Create a FingerprintDiskCache
+       *
+       * The `directoryPath` argument is expected to be pre-resolved to an absolute path.
+       */
+      constructor(directoryPath) {
+        const dirHash = crypto3.createHash("sha256").update(directoryPath).digest("hex").slice(0, 16);
+        this.cacheFile = path4.join(CACHE_DIR, `${dirHash}.json`);
+      }
+      /**
+       * Look up a cached fingerprint or compute it.
+       */
+      obtain(cacheKey, calcFn) {
+        const map = this._load();
+        const existing = map.get(cacheKey);
+        if (existing !== void 0) {
+          return existing;
+        }
+        const value = calcFn();
+        map.set(cacheKey, value);
+        this.dirty = true;
+        return value;
+      }
+      /**
+       * Persist the cache to disk.
+       */
+      save() {
+        if (!this.dirty || !this.cache) {
+          return;
+        }
+        this._evict();
+        try {
+          fs4.mkdirSync(CACHE_DIR, { recursive: true });
+          const entries = Array.from(this.cache.entries());
+          let tempFile = `${this.cacheFile}.${Date.now()}.${Math.random()}`;
+          try {
+            fs4.writeFileSync(tempFile, JSON.stringify(entries));
+            fs4.renameSync(tempFile, this.cacheFile);
+            tempFile = void 0;
+            this.dirty = false;
+            this._evictCacheDir();
+          } finally {
+            if (tempFile) {
+              fs4.rmSync(tempFile, { force: true });
+            }
+          }
+        } catch {
+        }
+      }
+      _load() {
+        if (this.cache) {
+          return this.cache;
+        }
+        this.cache = /* @__PURE__ */ new Map();
+        try {
+          const data = fs4.readFileSync(this.cacheFile, "utf-8");
+          const entries = JSON.parse(data);
+          if (Array.isArray(entries)) {
+            for (const [k, v] of entries) {
+              this.cache.set(k, v);
+            }
+          }
+        } catch {
+        }
+        return this.cache;
+      }
+      _evict() {
+        if (!this.cache || this.cache.size <= MAX_ENTRIES) {
+          return;
+        }
+        const entries = Array.from(this.cache.entries());
+        this.cache = new Map(entries.slice(entries.length - MAX_ENTRIES));
+      }
+      /** Remove oldest cache files if the directory exceeds MAX_CACHE_FILES */
+      _evictCacheDir() {
+        try {
+          const files = fs4.readdirSync(CACHE_DIR).filter((f) => f.endsWith(".json")).map((f) => ({ name: f, mtime: fs4.statSync(path4.join(CACHE_DIR, f)).mtimeMs }));
+          if (files.length <= MAX_CACHE_FILES) return;
+          files.sort((a, b) => a.mtime - b.mtime);
+          const toDelete = files.slice(0, files.length - MAX_CACHE_FILES);
+          for (const f of toDelete) {
+            fs4.unlinkSync(path4.join(CACHE_DIR, f.name));
+          }
+        } catch {
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint.ts
+function clearLargeFileFingerprintCache() {
+}
+function fingerprint(fileOrDirectory, options = {}) {
+  const hash = crypto4.createHash("sha256");
+  _hashField(hash, "options.extra", options.extraHash || "");
+  const follow = options.follow || "external" /* EXTERNAL */;
+  _hashField(hash, "options.follow", follow);
+  const root = fs5.realpathSync(fileOrDirectory);
+  const isDir = fs5.statSync(root).isDirectory();
+  const rootDirectory = isDir ? root : path5.dirname(root);
+  const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+  if (ignoreMode != "glob" /* GLOB */) {
+    _hashField(hash, "options.ignoreMode", ignoreMode);
+  }
+  const resolvedRoot = path5.resolve(rootDirectory);
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  const cache = new FingerprintDiskCache(resolvedRoot);
+  if (isDir) {
+    walkDirectory(root, { follow, ignoreStrategy }, {
+      onFile: (entry) => hashFileContent(entry.path, entry.stats ? contentFingerprintWithStats(entry.realPath, entry.stats, cache) : contentFingerprintOf(entry.realPath)),
+      onSymlink: (entry) => hashLinkTarget(entry),
+      onUnsupported: (entry) => {
+        throw new UnscopedValidationError(
+          lit`UnableToUnableHashNeither`,
+          `Unable to hash ${entry.path}: it is neither a file nor a directory`
+        );
+      }
+    });
+  } else {
+    hashFileContent(root, contentFingerprintOf(root));
+  }
+  cache.save();
+  return hash.digest("hex");
+  function hashKey(symbolicPath) {
+    return path5.relative(root, symbolicPath).replace(/\\/g, "/");
+  }
+  function hashFileContent(symbolicPath, contentHash2) {
+    _hashField(hash, `file:${hashKey(symbolicPath)}`, contentHash2);
+  }
+  function hashLinkTarget(entry) {
+    const target = entry.internal && path5.isAbsolute(entry.linkTarget) ? hashKey(entry.resolvedLinkTarget) : entry.linkTarget;
+    _hashField(hash, `link:${hashKey(entry.path)}`, target);
+  }
+  function contentFingerprintOf(file) {
+    return contentFingerprintWithStats(file, fs5.statSync(file, { bigint: true }), cache);
+  }
+}
+function contentFingerprintWithStats(file, stats, cache) {
+  const cacheKey = `${stats.ino}|${stats.mtimeMs}|${stats.size}`;
+  return cache?.obtain(cacheKey, () => contentFingerprintMiss(file)) ?? contentFingerprintMiss(file);
+}
+function contentFingerprintMiss(file) {
+  const hash = crypto4.createHash("sha256");
+  const buffer = Buffer.alloc(BUFFER_SIZE);
+  const fd = fs5.openSync(file, fs5.constants.O_RDONLY);
+  let size = 0;
+  let isBinary = false;
+  let lastStr = "";
+  let read = 0;
+  try {
+    while ((read = fs5.readSync(fd, buffer, 0, BUFFER_SIZE, null)) !== 0) {
+      const slicedBuffer = buffer.subarray(0, read);
+      if (size === 0) {
+        isBinary = slicedBuffer.indexOf(0) !== -1;
+      }
+      if (isBinary) {
+        size += read;
+        hash.update(slicedBuffer);
+      } else {
+        const str = slicedBuffer.toString();
+        if (TRAILING_CR_RE.test(str)) {
+          lastStr += str;
+          continue;
+        }
+        const data = lastStr + str;
+        lastStr = "";
+        const normalizedData = data.replace(CRLF_RE, "\n");
+        const dataBuffer = Buffer.from(normalizedData);
+        size += dataBuffer.length;
+        hash.update(dataBuffer);
+      }
+    }
+    if (lastStr) {
+      hash.update(Buffer.from(lastStr));
+    }
+  } finally {
+    fs5.closeSync(fd);
+  }
+  return `${size}:${hash.digest("hex")}`;
+}
+function _hashField(hash, header, value) {
+  hash.update(CTRL_SOH).update(header).update(CTRL_SOT).update(value).update(CTRL_ETX);
+}
+var crypto4, fs5, path5, CTRL_SOH, CTRL_SOT, CTRL_ETX, CRLF_RE, TRAILING_CR_RE, BUFFER_SIZE;
+var init_fingerprint = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint.ts"() {
+    "use strict";
+    crypto4 = __toESM(require("crypto"));
+    fs5 = __toESM(require("fs"));
+    path5 = __toESM(require("path"));
+    init_fingerprint_disk_cache();
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+    CTRL_SOH = "";
+    CTRL_SOT = "";
+    CTRL_ETX = "";
+    CRLF_RE = /\r\n/g;
+    TRAILING_CR_RE = /\r$/;
+    BUFFER_SIZE = 8 * 1024;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts
+var init_dispose_polyfill = __esm({
+  "../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts"() {
+    "use strict";
+    Symbol.dispose ??= /* @__PURE__ */ Symbol("Symbol.dispose");
+    Symbol.asyncDispose ??= /* @__PURE__ */ Symbol("Symbol.asyncDispose");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/perf.ts
+function profileFn(key, options) {
+  return function(fn) {
+    const ret = function() {
+      STATE.nesting++;
+      const start = import_perf_hooks.performance.now();
+      try {
+        return fn.apply(this, arguments);
+      } finally {
+        const end = import_perf_hooks.performance.now();
+        STATE.nesting--;
+        if (STATE.nesting === 0) {
+          recordPerformanceEntry(key, {
+            durationMs: end - start,
+            count: options?.skipCount ? 0 : 1,
+            telemetry: !!options?.telemetry
+          });
+        }
+      }
+    };
+    Object.defineProperties(ret, Object.getOwnPropertyDescriptors(fn));
+    return ret;
+  };
+}
+function profileSpan(key, options) {
+  const start = import_perf_hooks.performance.now();
+  return {
+    [Symbol.dispose]() {
+      recordPerformanceEntry(key, {
+        durationMs: import_perf_hooks.performance.now() - start,
+        count: options?.skipCount ? 0 : 1,
+        telemetry: !!options?.telemetry
+      });
+    }
+  };
+}
+function recordPerformanceEntry(key, options) {
+  bumpPerfCounter(STATE.allCounters, key, options?.durationMs, options?.count);
+  if (options?.telemetry) {
+    bumpPerfCounter(STATE.telemetryCounters, key, options?.durationMs, options?.count);
+  }
+}
+function resetCounters() {
+  STATE.allCounters = {};
+  STATE.telemetryCounters = {};
+}
+function bumpPerfCounter(counters, key, durationMs, count2) {
+  const ctr = counters[key];
+  if (ctr) {
+    ctr.count += count2 ?? 1;
+    ctr.total += durationMs ?? 0;
+  } else {
+    counters[key] = {
+      count: count2 ?? 1,
+      total: durationMs ?? 0
+    };
+  }
+}
+function profileObj(objName, options) {
+  return function(obj) {
+    for (const [name, { value }] of Object.entries(Object.getOwnPropertyDescriptors(obj))) {
+      if (typeof value === "function") {
+        const key = `${objName}.${name}`;
+        obj[name] = profileFn(key, options)(value);
+      }
+    }
+    return obj;
+  };
+}
+function readPerfCounters(options) {
+  const counters = options?.telemetry ? STATE.telemetryCounters : STATE.allCounters;
+  let ret = Object.entries(counters).map(([key, { count: count2, total }]) => [key, { count: count2, total: Math.floor(total) }]).sort((a, b) => b[1].total - a[1].total);
+  if (options?.n !== void 0) {
+    ret = ret.slice(0, options.n);
+  }
+  return Object.fromEntries(ret);
+}
+function initializeBuiltinProfiling() {
+  const envYes = ["1", "yes", "true"];
+  if (STATE.builtinsHooked || process.env.NODE_ENV === "test" || envYes.includes(process.env.CDK_NO_PERF_BUILTINS)) {
+    return;
+  }
+  STATE.builtinsHooked = true;
+  profileObj("fs", { telemetry: true })(require("fs"));
+  profileObj("child_process", { telemetry: true })(require("child_process"));
+}
+var import_perf_hooks, STATE;
+var init_perf = __esm({
+  "../../aws-cdk-lib/core/lib/private/perf.ts"() {
+    "use strict";
+    import_perf_hooks = require("perf_hooks");
+    init_dispose_polyfill();
+    STATE = globalThis[/* @__PURE__ */ Symbol.for("@aws-cdk/core:performanceProfilingState")] ??= {
+      builtinsHooked: false,
+      nesting: 0,
+      telemetryCounters: {},
+      allCounters: {}
+    };
+    initializeBuiltinProfiling();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/index.ts
+var fs6, os2, path6, _FileSystem_decorators, _init3, _FileSystem, FileSystem;
+var init_fs = __esm({
+  "../../aws-cdk-lib/core/lib/fs/index.ts"() {
+    "use strict";
+    fs6 = __toESM(require("fs"));
+    os2 = __toESM(require("os"));
+    path6 = __toESM(require("path"));
+    init_copy();
+    init_fingerprint();
+    init_perf();
+    init_ignore();
+    init_options();
+    _FileSystem_decorators = [profileObj("FileSystem", { telemetry: true })];
+    _FileSystem = class _FileSystem {
+      /**
+       * Copies an entire directory structure.
+       * @param srcDir Source directory
+       * @param destDir Destination directory
+       * @param options options
+       * @param rootDir Root directory to calculate exclusions from
+       */
+      static copyDirectory(srcDir, destDir, options = {}, rootDir) {
+        return copyDirectory(srcDir, destDir, options, rootDir);
+      }
+      /**
+       * Produces fingerprint based on the contents of a single file or an entire directory tree.
+       *
+       * Line endings are converted from CRLF to LF.
+       *
+       * The fingerprint will also include:
+       * 1. An extra string if defined in `options.extra`.
+       * 2. The symlink follow mode value.
+       *
+       * @param fileOrDirectory The directory or file to fingerprint
+       * @param options Fingerprinting options
+       */
+      static fingerprint(fileOrDirectory, options = {}) {
+        return fingerprint(fileOrDirectory, options);
+      }
+      /**
+       * Checks whether a directory is empty
+       *
+       * @param dir The directory to check
+       */
+      static isEmpty(dir) {
+        return fs6.readdirSync(dir).length === 0;
+      }
+      /**
+       * The real path of the system temp directory
+       */
+      static get tmpdir() {
+        if (_FileSystem._tmpdir) {
+          return _FileSystem._tmpdir;
+        }
+        _FileSystem._tmpdir = fs6.realpathSync(os2.tmpdir());
+        return _FileSystem._tmpdir;
+      }
+      /**
+       * Creates a unique temporary directory in the **system temp directory**.
+       *
+       * @param prefix A prefix for the directory name. Six random characters
+       * will be generated and appended behind this prefix.
+       */
+      static mkdtemp(prefix) {
+        return fs6.mkdtempSync(path6.join(_FileSystem.tmpdir, prefix));
+      }
+      /**
+       * Deletes a directory
+       */
+      static rmrf(dirname6) {
+        fs6.rmSync(dirname6, { force: true, recursive: true });
+      }
+      static _tmpdir;
+    };
+    _init3 = __decoratorStart(null);
+    _FileSystem = __decorateElement(_init3, 0, "FileSystem", _FileSystem_decorators, _FileSystem);
+    __runInitializers(_init3, 1, _FileSystem);
+    FileSystem = _FileSystem;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-staging.ts
+function dockerExec(args, options) {
+  const prog = process.env.CDK_DOCKER ?? "docker";
+  const proc = (0, import_child_process.spawnSync)(prog, args, options ?? {
+    encoding: "utf-8",
+    stdio: [
+      // show Docker output
+      "ignore",
+      // ignore stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    throw proc.error;
+  }
+  if (proc.status !== 0) {
+    let prependLines2 = function(firstLine, text) {
+      if (!text || text.length === 0) {
+        return [];
+      }
+      const padding = " ".repeat(firstLine.length);
+      return text.toString("utf-8").split("\n").map((line, idx) => `${idx === 0 ? firstLine : padding}${line}`);
+    };
+    var prependLines = prependLines2;
+    const reason = proc.signal != null ? `signal ${proc.signal}` : `status ${proc.status}`;
+    const command = [prog, ...args.map((arg) => /[^a-z0-9_-]/i.test(arg) ? JSON.stringify(arg) : arg)].join(" ");
+    throw new ExecutionError(lit`CommandExecutionFailed`, [
+      `${prog} exited with ${reason}`,
+      ...prependLines2("--> STDOUT:  ", proc.stdout) ?? [],
+      ...prependLines2("--> STDERR:  ", proc.stderr) ?? [],
+      `--> Command: ${command}`
+    ].join("\n"));
+  }
+  return proc;
+}
+var import_child_process, crypto5, os3, AssetBundlingBase, _run_dec, _a3, _init4, AssetBundlingBindMount, _run_dec2, _a4, _init5, AssetBundlingVolumeCopy;
+var init_asset_staging = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-staging.ts"() {
+    "use strict";
+    import_child_process = require("child_process");
+    crypto5 = __toESM(require("crypto"));
+    os3 = __toESM(require("os"));
+    init_asset_staging2();
+    init_errors();
+    init_literal_string();
+    init_perf();
+    AssetBundlingBase = class {
+      options;
+      constructor(options) {
+        this.options = options;
+      }
+      /**
+       * Determines a useful default user if not given otherwise
+       */
+      determineUser() {
+        let user;
+        if (this.options.user) {
+          user = this.options.user;
+        } else {
+          const userInfo2 = os3.userInfo();
+          user = userInfo2.uid !== -1 ? `${userInfo2.uid}:${userInfo2.gid}` : "1000:1000";
+        }
+        return user;
+      }
+    };
+    AssetBundlingBindMount = class extends (_a3 = AssetBundlingBase, _run_dec = [profileFn("AssetBundlingBindMount.run", { telemetry: true })], _a3) {
+      constructor() {
+        super(...arguments);
+        __runInitializers(_init4, 5, this);
+      }
+      run() {
+        this.options.image.run({
+          command: this.options.command,
+          user: this.determineUser(),
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumesFrom: this.options.volumesFrom,
+          volumes: [
+            {
+              hostPath: this.options.sourcePath,
+              containerPath: AssetStaging.BUNDLING_INPUT_DIR
+            },
+            {
+              hostPath: this.options.bundleDir,
+              containerPath: AssetStaging.BUNDLING_OUTPUT_DIR
+            },
+            ...this.options.volumes ?? []
+          ],
+          network: this.options.network,
+          platform: this.options.platform
+        });
+      }
+    };
+    _init4 = __decoratorStart(_a3);
+    __decorateElement(_init4, 1, "run", _run_dec, AssetBundlingBindMount);
+    __decoratorMetadata(_init4, AssetBundlingBindMount);
+    AssetBundlingVolumeCopy = class extends (_a4 = AssetBundlingBase, _run_dec2 = [profileFn("AssetBundlingVolumeCopy.run", { telemetry: true })], _a4) {
+      constructor(options) {
+        super(options);
+        __runInitializers(_init5, 5, this);
+        /**
+         * Name of the Docker volume that is used for the asset input
+         */
+        __publicField(this, "inputVolumeName");
+        /**
+         * Name of the Docker volume that is used for the asset output
+         */
+        __publicField(this, "outputVolumeName");
+        /**
+         * Name of the Docker helper container to copy files into the volume
+         */
+        __publicField(this, "copyContainerName");
+        const copySuffix = crypto5.randomBytes(12).toString("hex");
+        this.inputVolumeName = `assetInput${copySuffix}`;
+        this.outputVolumeName = `assetOutput${copySuffix}`;
+        this.copyContainerName = `copyContainer${copySuffix}`;
+      }
+      /**
+       * Creates volumes for asset input and output
+       */
+      prepareVolumes() {
+        dockerExec(["volume", "create", this.inputVolumeName]);
+        dockerExec(["volume", "create", this.outputVolumeName]);
+      }
+      /**
+       * Removes volumes for asset input and output
+       */
+      cleanVolumes() {
+        dockerExec(["volume", "rm", this.inputVolumeName]);
+        dockerExec(["volume", "rm", this.outputVolumeName]);
+      }
+      /**
+       * runs a helper container that holds volumes and does some preparation tasks
+       * @param user The user that will later access these files and needs permissions to do so
+       */
+      startHelperContainer(user) {
+        dockerExec([
+          "run",
+          "--name",
+          this.copyContainerName,
+          "-v",
+          `${this.inputVolumeName}:${AssetStaging.BUNDLING_INPUT_DIR}`,
+          "-v",
+          `${this.outputVolumeName}:${AssetStaging.BUNDLING_OUTPUT_DIR}`,
+          "public.ecr.aws/docker/library/alpine",
+          "sh",
+          "-c",
+          `mkdir -p ${AssetStaging.BUNDLING_INPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_OUTPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * removes the Docker helper container
+       */
+      cleanHelperContainer() {
+        dockerExec(["rm", this.copyContainerName]);
+      }
+      /**
+       * copy files from the host where this is executed into the input volume
+       * @param sourcePath - path to folder where files should be copied from - without trailing slash
+       */
+      copyInputFrom(sourcePath) {
+        dockerExec([
+          "cp",
+          `${sourcePath}/.`,
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * copy files from the output volume to the host where this is executed
+       * @param outputPath - path to folder where files should be copied to - without trailing slash
+       */
+      copyOutputTo(outputPath) {
+        dockerExec([
+          "cp",
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_OUTPUT_DIR}/.`,
+          outputPath
+        ]);
+      }
+      run() {
+        const user = this.determineUser();
+        this.prepareVolumes();
+        this.startHelperContainer(user);
+        this.copyInputFrom(this.options.sourcePath);
+        this.options.image.run({
+          command: this.options.command,
+          user,
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumes: this.options.volumes,
+          volumesFrom: [
+            this.copyContainerName,
+            ...this.options.volumesFrom ?? []
+          ],
+          platform: this.options.platform
+        });
+        this.copyOutputTo(this.options.bundleDir);
+        this.cleanHelperContainer();
+        this.cleanVolumes();
+      }
+    };
+    _init5 = __decoratorStart(_a4);
+    __decorateElement(_init5, 1, "run", _run_dec2, AssetBundlingVolumeCopy);
+    __decoratorMetadata(_init5, AssetBundlingVolumeCopy);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts
+function quiet() {
+  const deprecated = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  return deprecated;
+}
+function reset(deprecated) {
+  if (deprecated === void 0) {
+    delete process.env.JSII_DEPRECATED;
+  } else {
+    process.env.JSII_DEPRECATED = deprecated;
+  }
+}
+var init_jsii_deprecated = __esm({
+  "../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bundling.ts
+function flatten(x) {
+  return Array.prototype.concat([], ...x);
+}
+function isSeLinux() {
+  if (process.platform != "linux") {
+    return false;
+  }
+  const prog = "selinuxenabled";
+  const proc = (0, import_child_process2.spawnSync)(prog, [], {
+    stdio: [
+      // show selinux status output
+      "pipe",
+      // get value of stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    return false;
+  }
+  if (proc.status == 0) {
+    return true;
+  } else {
+    return false;
+  }
+}
+var import_child_process2, import_path, _cp_dec, _run_dec3, _init6, BundlingDockerImage, _fromBuild_dec, _a5, _init7, _DockerImage, DockerImage, PERF_BUNDLING_SRC_SYM;
+var init_bundling = __esm({
+  "../../aws-cdk-lib/core/lib/bundling.ts"() {
+    "use strict";
+    import_child_process2 = require("child_process");
+    import_path = require("path");
+    init_errors();
+    init_fs();
+    init_asset_staging();
+    init_jsii_deprecated();
+    init_literal_string();
+    init_perf();
+    _run_dec3 = [profileFn("BundlingDockerImage.run", { telemetry: true })], _cp_dec = [profileFn("BundlingDockerImage.cp", { telemetry: true })];
+    BundlingDockerImage = class {
+      /** @param image The Docker image */
+      constructor(image, _imageHash) {
+        this.image = image;
+        this._imageHash = _imageHash;
+        __runInitializers(_init6, 5, this);
+      }
+      image;
+      _imageHash;
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new DockerImage(image);
+      }
+      /**
+       * Reference an image that's built directly from sources on disk.
+       *
+       * @param path The path to the directory containing the Docker file
+       * @param options Docker build options
+       *
+       * @deprecated use DockerImage.fromBuild()
+       */
+      static fromAsset(path23, options = {}) {
+        return DockerImage.fromBuild(path23, options);
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        return this._imageHash ?? this.image;
+      }
+      run(options = {}) {
+        const volumes = options.volumes || [];
+        const environment = options.environment || {};
+        const entrypoint = options.entrypoint?.[0] || null;
+        const command = [
+          ...options.entrypoint?.[1] ? [...options.entrypoint.slice(1)] : [],
+          ...options.command ? [...options.command] : []
+        ];
+        const dockerArgs = [
+          "run",
+          "--rm",
+          ...options.securityOpt ? ["--security-opt", options.securityOpt] : [],
+          ...options.network ? ["--network", options.network] : [],
+          ...options.platform ? ["--platform", options.platform] : [],
+          ...options.user ? ["-u", options.user] : [],
+          ...options.volumesFrom ? flatten(options.volumesFrom.map((v) => ["--volumes-from", v])) : [],
+          ...flatten(volumes.map((v) => ["-v", `${v.hostPath}:${v.containerPath}:${isSeLinux() ? "z," : ""}${v.consistency ?? "delegated" /* DELEGATED */}`])),
+          ...flatten(Object.entries(environment).map(([k, v]) => ["--env", `${k}=${v}`])),
+          ...options.workingDirectory ? ["-w", options.workingDirectory] : [],
+          ...entrypoint ? ["--entrypoint", entrypoint] : [],
+          this.image,
+          ...command
+        ];
+        dockerExec(dockerArgs);
+      }
+      cp(imagePath, outputPath) {
+        const { stdout } = dockerExec(["create", this.image], {});
+        const match = stdout.toString().match(/([0-9a-f]{16,})/);
+        if (!match) {
+          throw new ExecutionError(lit`FailedToFailedExtractContainer`, "Failed to extract container ID from Docker create output");
+        }
+        const containerId = match[1];
+        const containerPath = `${containerId}:${imagePath}`;
+        const destPath = outputPath ?? FileSystem.mkdtemp("cdk-docker-cp-");
+        try {
+          dockerExec(["cp", containerPath, destPath]);
+          return destPath;
+        } catch (err) {
+          throw new ExecutionError(lit`FailedToFailedCopyFiles`, `Failed to copy files from ${containerPath} to ${destPath}: ${err}`);
+        } finally {
+          dockerExec(["rm", "-v", containerId]);
+        }
+      }
+    };
+    _init6 = __decoratorStart(null);
+    __decorateElement(_init6, 1, "run", _run_dec3, BundlingDockerImage);
+    __decorateElement(_init6, 1, "cp", _cp_dec, BundlingDockerImage);
+    __decoratorMetadata(_init6, BundlingDockerImage);
+    _DockerImage = class _DockerImage extends (_a5 = BundlingDockerImage, _fromBuild_dec = [profileFn("DockerImage.fromBuild", { telemetry: true })], _a5) {
+      constructor(image, _imageHash) {
+        const deprecated = quiet();
+        super(image, _imageHash);
+        /** The Docker image */
+        __publicField(this, "image");
+        reset(deprecated);
+        this.image = image;
+      }
+      static fromBuild(path23, options = {}) {
+        const buildArgs = options.buildArgs || {};
+        if (options.file && (0, import_path.isAbsolute)(options.file)) {
+          throw new UnscopedValidationError(lit`MustBeFileRelativeDocker`, `"file" must be relative to the docker build directory. Got ${options.file}`);
+        }
+        const hash = FileSystem.fingerprint(path23, { extraHash: JSON.stringify(options) });
+        const tag = `cdk-${hash}`;
+        const usingBuildContexts = Object.keys(options.buildContexts ?? {}).length > 0;
+        if (usingBuildContexts || !this.imageAlreadyExists(tag)) {
+          const dockerArgs = [
+            "build",
+            "-t",
+            tag,
+            ...options.file ? ["-f", (0, import_path.join)(path23, options.file)] : [],
+            ...options.platform ? ["--platform", options.platform] : [],
+            ...options.network ? ["--network", options.network] : [],
+            ...options.targetStage ? ["--target", options.targetStage] : [],
+            ...options.cacheFrom ? [...options.cacheFrom.map((cacheFrom) => ["--cache-from", this.cacheOptionToFlag(cacheFrom)]).flat()] : [],
+            ...options.cacheTo ? ["--cache-to", this.cacheOptionToFlag(options.cacheTo)] : [],
+            ...options.cacheDisabled ? ["--no-cache"] : [],
+            ...flatten(Object.entries(buildArgs).map(([k, v]) => ["--build-arg", `${k}=${v}`])),
+            ...flatten(Object.entries(options.buildContexts || {}).map(([k, v]) => ["--build-context", `${k}=${v}`])),
+            path23
+          ];
+          dockerExec(dockerArgs);
+        }
+        return new _DockerImage(tag, hash);
+      }
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new _DockerImage(image);
+      }
+      static imageAlreadyExists(tag) {
+        const prog = process.env.CDK_DOCKER ?? "docker";
+        const proc = (0, import_child_process2.spawnSync)(prog, ["image", "inspect", tag], {
+          stdio: "ignore"
+        });
+        return proc.status === 0;
+      }
+      static cacheOptionToFlag(option) {
+        let flag = `type=${option.type}`;
+        if (option.params) {
+          flag += "," + Object.entries(option.params).map(([k, v]) => `${k}=${v}`).join(",");
+        }
+        return flag;
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        const deprecated = quiet();
+        const json = super.toJSON();
+        reset(deprecated);
+        return json;
+      }
+      /**
+       * Runs a Docker image
+       */
+      run(options = {}) {
+        const deprecated = quiet();
+        const result = super.run(options);
+        reset(deprecated);
+        return result;
+      }
+      /**
+       * Copies a file or directory out of the Docker image to the local filesystem.
+       *
+       * If `outputPath` is omitted the destination path is a temporary directory.
+       *
+       * @param imagePath the path in the Docker image
+       * @param outputPath the destination path for the copy operation
+       * @returns the destination path
+       */
+      cp(imagePath, outputPath) {
+        const deprecated = quiet();
+        const result = super.cp(imagePath, outputPath);
+        reset(deprecated);
+        return result;
+      }
+    };
+    _init7 = __decoratorStart(_a5);
+    __decorateElement(_init7, 9, "fromBuild", _fromBuild_dec, _DockerImage);
+    __decoratorMetadata(_init7, _DockerImage);
+    __runInitializers(_init7, 3, _DockerImage);
+    DockerImage = _DockerImage;
+    PERF_BUNDLING_SRC_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.bundlingSource");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cache.ts
+var Cache;
+var init_cache = __esm({
+  "../../aws-cdk-lib/core/lib/private/cache.ts"() {
+    "use strict";
+    Cache = class {
+      cache = /* @__PURE__ */ new Map();
+      /**
+       * Clears the cache
+       */
+      clear() {
+        this.cache.clear();
+      }
+      /**
+       * Get a value from the cache or calculate it
+       */
+      obtain(cacheKey, calcFn) {
+        let value = this.cache.get(cacheKey);
+        if (value) {
+          return value;
+        }
+        value = calcFn();
+        this.cache.set(cacheKey, value);
+        return value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/asset-staging.ts
+function renderAssetFilename(assetHash, extension = "") {
+  return `asset.${assetHash}${extension}`;
+}
+function determineHashType(scope, assetHashType, customSourceFingerprint) {
+  const hashType = customSourceFingerprint ? assetHashType ?? "custom" /* CUSTOM */ : assetHashType ?? "source" /* SOURCE */;
+  if (customSourceFingerprint && hashType !== "custom" /* CUSTOM */) {
+    throw new ValidationError(lit`CannotSpecifyAssetHashTypeWithAssetHash`, `Cannot specify \`${assetHashType}\` for \`assetHashType\` when \`assetHash\` is specified. Use \`CUSTOM\` or leave \`undefined\`.`, scope);
+  }
+  if (hashType === "custom" /* CUSTOM */ && !customSourceFingerprint) {
+    throw new ValidationError(lit`MustBeSpecified`, "`assetHash` must be specified when `assetHashType` is set to `AssetHashType.CUSTOM`.", scope);
+  }
+  return hashType;
+}
+function validateInternalSymlinks(root, scope, followMode, ignoreStrat) {
+  walkDirectory(root, { follow: followMode, ignoreStrategy: ignoreStrat }, {
+    onSymlink: (entry) => {
+      if (!entry.internal) {
+        throw new ValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${followMode}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`,
+          scope
+        );
+      }
+    }
+  });
+}
+function calculateCacheKey(props) {
+  return crypto6.createHash("sha256").update(JSON.stringify(sortObject(props), sanitizeHashValue)).digest("hex");
+}
+function sortObject(object) {
+  if (typeof object !== "object" || object instanceof Array) {
+    return object;
+  }
+  const ret = {};
+  for (const key of Object.keys(object).sort()) {
+    ret[key] = sortObject(object[key]);
+  }
+  return ret;
+}
+function sanitizeHashValue(key, value) {
+  if (key === "PIP_INDEX_URL" || key === "PIP_EXTRA_INDEX_URL") {
+    try {
+      let url2 = new URL(value);
+      if (url2.password) {
+        url2.password = "";
+        return url2.toString();
+      }
+    } catch (e) {
+      if (e.name === "TypeError") {
+        throw new AssumptionError(lit`MustBeValid`, `${key} must be a valid URL, got ${value}.`);
+      }
+      throw e;
+    }
+  }
+  return value;
+}
+function findSingleFile(scope, directory, archiveOnly) {
+  if (!fs7.existsSync(directory)) {
+    throw new ValidationError(lit`DirectoryDoesNotExist`, `Directory ${directory} does not exist.`, scope);
+  }
+  if (!fs7.statSync(directory).isDirectory()) {
+    throw new ValidationError(lit`PathIsNotDirectory`, `${directory} is not a directory.`, scope);
+  }
+  const content = fs7.readdirSync(directory);
+  if (content.length === 1) {
+    const file = path7.join(directory, content[0]);
+    const extension = getExtension(content[0]).toLowerCase();
+    if (fs7.statSync(file).isFile() && (!archiveOnly || ARCHIVE_EXTENSIONS.includes(extension))) {
+      return file;
+    }
+  }
+  return void 0;
+}
+function determineBundledAsset(scope, bundleDir, outputType, ignore, followMode) {
+  const archiveFile = findSingleFile(scope, bundleDir, outputType !== "single-file" /* SINGLE_FILE */);
+  if (outputType === "auto-discover" /* AUTO_DISCOVER */) {
+    outputType = archiveFile ? "archived" /* ARCHIVED */ : "not-archived" /* NOT_ARCHIVED */;
+  }
+  switch (outputType) {
+    case "not-archived" /* NOT_ARCHIVED */:
+      if (followMode == "internal-only" /* BLOCK_EXTERNAL */) {
+        validateInternalSymlinks(bundleDir, scope, followMode, ignore);
+      }
+      return { path: bundleDir, packaging: "zip" /* ZIP_DIRECTORY */ };
+    case "archived" /* ARCHIVED */:
+    case "single-file" /* SINGLE_FILE */:
+      if (!archiveFile) {
+        throw new ValidationError(lit`BundlingOutputDirectoryExpectedSingleFile`, "Bundling output directory is expected to include only a single file when `output` is set to `ARCHIVED` or `SINGLE_FILE`", scope);
+      } else if (fs7.lstatSync(archiveFile).isSymbolicLink()) {
+        throw new ValidationError(lit`SymlinkInBundlingOutput`, "The output from bundling is not allowed to be a symlink.", scope);
+      }
+      return { path: archiveFile, packaging: "file" /* FILE */, extension: getExtension(archiveFile) };
+  }
+}
+function getExtension(source) {
+  for (const ext of ARCHIVE_EXTENSIONS) {
+    if (source.toLowerCase().endsWith(ext)) {
+      return ext;
+    }
+  }
+  return path7.extname(source);
+}
+function timerSpanFromOptions(x) {
+  const src = bundlingSourceFromOptions(x);
+  return src ? profileSpan(`bundle:${src}`, { telemetry: true }) : void 0;
+}
+function bundlingSourceFromOptions(x) {
+  const value = x[PERF_BUNDLING_SRC_SYM];
+  return typeof value === "string" ? value : void 0;
+}
+var crypto6, path7, import_constructs7, fs7, ARCHIVE_EXTENSIONS, ASSET_SALT_CONTEXT_KEY, AssetStaging;
+var init_asset_staging2 = __esm({
+  "../../aws-cdk-lib/core/lib/asset-staging.ts"() {
+    "use strict";
+    crypto6 = __toESM(require("crypto"));
+    path7 = __toESM(require("path"));
+    import_constructs7 = __toESM(require_lib4());
+    fs7 = __toESM(require_lib5());
+    init_assets();
+    init_bundling();
+    init_errors();
+    init_fs();
+    init_fingerprint();
+    init_names();
+    init_asset_staging();
+    init_cache();
+    init_core_construct_finders();
+    init_literal_string();
+    init_perf();
+    init_cx_api();
+    init_utils();
+    ARCHIVE_EXTENSIONS = [".tar.gz", ".zip", ".jar", ".tar", ".tgz"];
+    ASSET_SALT_CONTEXT_KEY = "@aws-cdk/core:assetHashSalt";
+    AssetStaging = class _AssetStaging extends import_constructs7.Construct {
+      /**
+       * The directory inside the bundling container into which the asset sources will be mounted.
+       */
+      static BUNDLING_INPUT_DIR = "/asset-input";
+      /**
+       * The directory inside the bundling container into which the bundled output should be written.
+       */
+      static BUNDLING_OUTPUT_DIR = "/asset-output";
+      /**
+       * Clears the asset hash cache
+       */
+      static clearAssetHashCache() {
+        this.assetCache.clear();
+        clearLargeFileFingerprintCache();
+      }
+      /**
+       * Cache of asset hashes based on asset configuration to avoid repeated file
+       * system and bundling operations.
+       */
+      static assetCache = new Cache();
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       *
+       * @deprecated - Use `absoluteStagedPath` instead.
+       */
+      stagedPath;
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       */
+      absoluteStagedPath;
+      /**
+       * The absolute path of the asset as it was referenced by the user.
+       */
+      sourcePath;
+      /**
+       * A cryptographic hash of the asset.
+       */
+      assetHash;
+      /**
+       * How this asset should be packaged.
+       */
+      packaging;
+      /**
+       * Whether this asset is an archive (zip or jar).
+       */
+      isArchive;
+      fingerprintOptions;
+      hashType;
+      assetOutdir;
+      /**
+       * A custom source fingerprint given by the user
+       *
+       * Will not be used literally, always hashed later on.
+       */
+      customSourceFingerprint;
+      cacheKey;
+      _sourceStats;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const salt = this.node.tryGetContext(ASSET_SALT_CONTEXT_KEY);
+        this.sourcePath = path7.resolve(props.sourcePath);
+        this.fingerprintOptions = {
+          ...props,
+          exclude: [".is_custom_resource", ...props.exclude ?? []],
+          extraHash: props.extraHash || salt ? `${props.extraHash ?? ""}${salt ?? ""}` : void 0
+        };
+        if (!fs7.existsSync(this.sourcePath)) {
+          throw new ValidationError(lit`CannotFindAsset`, `Cannot find asset at ${this.sourcePath}`, this);
+        }
+        const ignoreStrategy = IgnoreStrategy.fromCopyOptions(props, this.sourcePath);
+        if (props.follow == "internal-only" /* BLOCK_EXTERNAL */ && fs7.statSync(this.sourcePath).isDirectory()) {
+          validateInternalSymlinks(this.sourcePath, scope, props.follow, ignoreStrategy);
+        }
+        this._sourceStats = fs7.statSync(this.sourcePath);
+        const outdir = stageOf(this)?.assetOutdir;
+        if (!outdir) {
+          throw new ValidationError(lit`UnableToDetermineCloudAssembly`, 'unable to determine cloud assembly asset output directory. Assets must be defined indirectly within a "Stage" or an "App" scope', this);
+        }
+        this.assetOutdir = outdir;
+        this.customSourceFingerprint = props.assetHash;
+        this.hashType = determineHashType(this, props.assetHashType, this.customSourceFingerprint);
+        let stageThisAsset;
+        let skip = false;
+        if (props.bundling) {
+          skip = !stackOf(this).bundlingRequired;
+          const bundling = props.bundling;
+          stageThisAsset = () => this.stageByBundling(bundling, skip, props);
+        } else {
+          stageThisAsset = () => this.stageByCopying();
+        }
+        this.cacheKey = calculateCacheKey({
+          outdir: this.assetOutdir,
+          sourcePath: path7.resolve(props.sourcePath),
+          bundling: props.bundling,
+          assetHashType: this.hashType,
+          customFingerprint: this.customSourceFingerprint,
+          extraHash: props.extraHash,
+          exclude: props.exclude,
+          ignoreMode: props.ignoreMode,
+          skip
+        });
+        const staged = _AssetStaging.assetCache.obtain(this.cacheKey, stageThisAsset);
+        this.stagedPath = staged.stagedPath;
+        this.absoluteStagedPath = staged.stagedPath;
+        this.assetHash = staged.assetHash;
+        this.packaging = staged.packaging;
+        this.isArchive = staged.isArchive;
+        this._sourceStats = void 0;
+      }
+      get sourceStats() {
+        if (!this._sourceStats) {
+          throw new AssumptionError(lit`SourceStatusUnset`, "_sourceStats has been unset");
+        }
+        return this._sourceStats;
+      }
+      /**
+       * A cryptographic hash of the asset.
+       *
+       * @deprecated see `assetHash`.
+       */
+      get sourceHash() {
+        return this.assetHash;
+      }
+      /**
+       * Return the path to the staged asset, relative to the Cloud Assembly (manifest) directory of the given stack
+       *
+       * Only returns a relative path if the asset was staged, returns an absolute path if
+       * it was not staged.
+       *
+       * A bundled asset might end up in the outDir and still not count as
+       * "staged"; if asset staging is disabled we're technically expected to
+       * reference source directories, but we don't have a source directory for the
+       * bundled outputs (as the bundle output is written to a temporary
+       * directory). Nevertheless, we will still return an absolute path.
+       *
+       * A non-obvious directory layout may look like this:
+       *
+       * ```
+       *   CLOUD ASSEMBLY ROOT
+       *     +-- asset.12345abcdef/
+       *     +-- assembly-Stage
+       *           +-- MyStack.template.json
+       *           +-- MyStack.assets.json <- will contain { "path": "../asset.12345abcdef" }
+       * ```
+       */
+      relativeStagedPath(stack) {
+        const asmManifestDir = stageOf(stack)?.outdir;
+        if (!asmManifestDir) {
+          return this.stagedPath;
+        }
+        const isOutsideAssetDir = path7.relative(this.assetOutdir, this.stagedPath).startsWith("..");
+        if (isOutsideAssetDir || this.stagingDisabled) {
+          return this.stagedPath;
+        }
+        return path7.relative(asmManifestDir, this.stagedPath);
+      }
+      /**
+       * Stage the source to the target by copying
+       *
+       * Optionally skip if staging is disabled, in which case we pretend we did something but we don't really.
+       */
+      stageByCopying() {
+        const assetHash = this.calculateHash(this.hashType);
+        const targetPath = this.stagingDisabled ? this.sourcePath : path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, getExtension(this.sourcePath)));
+        const stagedPath = this.renderStagedPath(this.sourcePath, targetPath);
+        if (!this.sourceStats.isDirectory() && !this.sourceStats.isFile()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryOrFile`, `Asset ${this.sourcePath} is expected to be either a directory or a regular file`, this);
+        }
+        this.stageAsset(this.sourcePath, stagedPath, "copy");
+        return {
+          assetHash,
+          stagedPath,
+          packaging: this.sourceStats.isDirectory() ? "zip" /* ZIP_DIRECTORY */ : "file" /* FILE */,
+          isArchive: this.sourceStats.isDirectory() || ARCHIVE_EXTENSIONS.includes(getExtension(this.sourcePath).toLowerCase())
+        };
+      }
+      /**
+       * Stage the source to the target by bundling
+       *
+       * Optionally skip, in which case we pretend we did something but we don't really.
+       */
+      stageByBundling(bundling, skip, props) {
+        if (!this.sourceStats.isDirectory()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryForBundling`, `Asset ${this.sourcePath} is expected to be a directory when bundling`, this);
+        }
+        if (skip) {
+          let hashType = this.hashType;
+          if (hashType === "output" /* OUTPUT */ || hashType === "bundle" /* BUNDLE */) {
+            this.customSourceFingerprint = Names.uniqueId(this);
+            hashType = "custom" /* CUSTOM */;
+          }
+          return {
+            assetHash: this.calculateHash(hashType, bundling),
+            stagedPath: this.sourcePath,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            isArchive: true
+          };
+        }
+        let assetHash = this.hashType === "source" /* SOURCE */ || this.hashType === "custom" /* CUSTOM */ ? this.calculateHash(this.hashType, bundling) : void 0;
+        const bundleDir = this.determineBundleDir(this.assetOutdir, assetHash);
+        this.bundle(bundling, bundleDir);
+        const bundlingOutputType = bundling.outputType ?? "auto-discover" /* AUTO_DISCOVER */;
+        const ignore = IgnoreStrategy.fromCopyOptions(props, bundleDir);
+        const bundledAsset = determineBundledAsset(this, bundleDir, bundlingOutputType, ignore, props.follow);
+        assetHash = assetHash ?? this.calculateHash(this.hashType, bundling, bundledAsset.path);
+        const stagedPath = this.renderStagedPath(
+          bundledAsset.path,
+          path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, bundledAsset.extension))
+        );
+        this.stageAsset(bundledAsset.path, stagedPath, "move");
+        if (bundledAsset.packaging === "file" /* FILE */) {
+          if (this.hashType === "output" /* OUTPUT */ || this.hashType === "bundle" /* BUNDLE */) {
+            fs7.removeSync(path7.dirname(bundledAsset.path));
+          } else {
+            fs7.closeSync(fs7.openSync(bundledAsset.path, "w"));
+          }
+        }
+        return {
+          assetHash,
+          stagedPath,
+          packaging: bundledAsset.packaging,
+          isArchive: bundlingOutputType !== "single-file" /* SINGLE_FILE */
+        };
+      }
+      /**
+       * Whether staging has been disabled
+       */
+      get stagingDisabled() {
+        return !!this.node.tryGetContext(DISABLE_ASSET_STAGING_CONTEXT);
+      }
+      /**
+       * Copies or moves the files from sourcePath to targetPath.
+       *
+       * Moving implies the source directory is temporary and can be trashed.
+       *
+       * Will not do anything if source and target are the same.
+       */
+      stageAsset(sourcePath, targetPath, style) {
+        const isAlreadyStaged = fs7.existsSync(targetPath);
+        if (isAlreadyStaged) {
+          if (style === "move" && sourcePath !== targetPath) {
+            fs7.removeSync(sourcePath);
+          }
+          return;
+        }
+        if (style === "move") {
+          fs7.renameSync(sourcePath, targetPath);
+          return;
+        }
+        if (this.sourceStats.isFile()) {
+          fs7.copyFileSync(sourcePath, targetPath);
+        } else if (this.sourceStats.isDirectory()) {
+          fs7.mkdirSync(targetPath);
+          FileSystem.copyDirectory(sourcePath, targetPath, this.fingerprintOptions);
+        } else {
+          throw new ValidationError(lit`UnknownFileType`, `Unknown file type: ${sourcePath}`, this);
+        }
+      }
+      /**
+       * Determine the directory where we're going to write the bundling output
+       *
+       * This is the target directory where we're going to write the staged output
+       * files if we can (if the hash is fully known), or a temporary directory
+       * otherwise.
+       */
+      determineBundleDir(outdir, sourceHash) {
+        if (sourceHash) {
+          return path7.resolve(outdir, renderAssetFilename(sourceHash));
+        }
+        return path7.resolve(outdir, `bundling-temp-${this.cacheKey}`);
+      }
+      /**
+       * Bundles an asset to the given directory
+       *
+       * If the given directory already exists, assume that everything's already
+       * in order and don't do anything.
+       *
+       * @param options Bundling options
+       * @param bundleDir Where to create the bundle directory
+       * @returns The fully resolved bundle output directory.
+       */
+      bundle(options, bundleDir) {
+        if (fs7.existsSync(bundleDir)) {
+          return;
+        }
+        const tempDir = `${bundleDir}-building`;
+        fs7.rmSync(tempDir, { recursive: true, force: true });
+        fs7.ensureDirSync(tempDir);
+        fs7.chmodSync(tempDir, 511);
+        let localBundling;
+        try {
+          var _stack = [];
+          try {
+            process.stderr.write(`Bundling asset ${this.node.path}...
+`);
+            const _span = __using(_stack, timerSpanFromOptions(options));
+            localBundling = options.local?.tryBundle(tempDir, options);
+            if (!localBundling) {
+              const assetStagingOptions = {
+                sourcePath: this.sourcePath,
+                bundleDir: tempDir,
+                ...options
+              };
+              switch (options.bundlingFileAccess) {
+                case "VOLUME_COPY" /* VOLUME_COPY */:
+                  new AssetBundlingVolumeCopy(assetStagingOptions).run();
+                  break;
+                case "BIND_MOUNT" /* BIND_MOUNT */:
+                default:
+                  new AssetBundlingBindMount(assetStagingOptions).run();
+                  break;
+              }
+            }
+            fs7.renameSync(tempDir, bundleDir);
+          } catch (_) {
+            var _error = _, _hasError = true;
+          } finally {
+            __callDispose(_stack, _error, _hasError);
+          }
+        } catch (err) {
+          throw new ValidationError(lit`FailedToBundleAsset`, `Failed to bundle asset ${this.node.path}, bundle output is located at ${tempDir}: ${err}`, this);
+        }
+        if (FileSystem.isEmpty(bundleDir)) {
+          const outputDir = localBundling ? bundleDir : _AssetStaging.BUNDLING_OUTPUT_DIR;
+          throw new ValidationError(lit`BundlingProducedNoOutput`, `Bundling did not produce any output. Check that content is written to ${outputDir}.`, this);
+        }
+      }
+      calculateHash(hashType, bundling, outputDir) {
+        if (hashType == "custom" /* CUSTOM */ || hashType == "source" /* SOURCE */ && bundling) {
+          const hash = crypto6.createHash("sha256");
+          hash.update(this.customSourceFingerprint ?? FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions));
+          if (bundling) {
+            hash.update(JSON.stringify(bundling, sanitizeHashValue));
+          }
+          return hash.digest("hex");
+        }
+        switch (hashType) {
+          case "source" /* SOURCE */:
+            return FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions);
+          case "bundle" /* BUNDLE */:
+          case "output" /* OUTPUT */:
+            if (!outputDir) {
+              throw new ValidationError(lit`CannotUseHashTypeWithoutBundling`, `Cannot use \`${hashType}\` hash type when \`bundling\` is not specified.`, this);
+            }
+            return FileSystem.fingerprint(outputDir, this.fingerprintOptions);
+          default:
+            throw new ValidationError(lit`UnknownAssetHashType`, "Unknown asset hash type.", this);
+        }
+      }
+      renderStagedPath(sourcePath, targetPath) {
+        if (this.hashType !== "output" /* OUTPUT */ && path7.dirname(sourcePath) === targetPath) {
+          targetPath = targetPath + "_noext";
+        }
+        return targetPath;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/duration.ts
+function convert(amount, fromUnit, toUnit, { integral = true }) {
+  if (fromUnit.inMillis === toUnit.inMillis) {
+    if (integral && !Token.isUnresolved(amount) && !Number.isInteger(amount)) {
+      throw new UnscopedValidationError(lit`MustBeWholeNumber`, `${amount} must be a whole number of ${toUnit}.`);
+    }
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeDurationSpecifiedDuration`, `Duration must be specified as 'Duration.${toUnit}()' here since its value comes from a token and cannot be converted (got Duration.${fromUnit})`);
+  }
+  const value = amount * fromUnit.inMillis / toUnit.inMillis;
+  if (!Number.isInteger(value) && integral) {
+    throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+  }
+  return value;
+}
+function finestUnit(a, b) {
+  return a.inMillis < b.inMillis ? a : b;
+}
+var Duration, TimeUnit;
+var init_duration = __esm({
+  "../../aws-cdk-lib/core/lib/duration.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Duration = class _Duration {
+      /**
+       * Create a Duration representing an amount of milliseconds
+       *
+       * @param amount the amount of Milliseconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` ms.
+       */
+      static millis(amount) {
+        return new _Duration(amount, TimeUnit.Milliseconds);
+      }
+      /**
+       * Create a Duration representing an amount of seconds
+       *
+       * @param amount the amount of Seconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Seconds.
+       */
+      static seconds(amount) {
+        return new _Duration(amount, TimeUnit.Seconds);
+      }
+      /**
+       * Create a Duration representing an amount of minutes
+       *
+       * @param amount the amount of Minutes the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Minutes.
+       */
+      static minutes(amount) {
+        return new _Duration(amount, TimeUnit.Minutes);
+      }
+      /**
+       * Create a Duration representing an amount of hours
+       *
+       * @param amount the amount of Hours the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Hours.
+       */
+      static hours(amount) {
+        return new _Duration(amount, TimeUnit.Hours);
+      }
+      /**
+       * Create a Duration representing an amount of days
+       *
+       * @param amount the amount of Days the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Days.
+       */
+      static days(amount) {
+        return new _Duration(amount, TimeUnit.Days);
+      }
+      /**
+       * Parse a period formatted according to the ISO 8601 standard
+       *
+       * Days are the largest ISO duration supported, i.e.,
+       * weeks, months, and years are not supported.
+       *
+       * @example
+       * // This represents 1 day, 2 hours, 3 minutes, 4 seconds, and 567 milliseconds.
+       * 'P1DT2H3M4.567S'
+       *
+       * @see https://www.iso.org/standard/70907.html
+       * @param duration an ISO-formatted duration to be parsed.
+       * @returns the parsed `Duration`.
+       */
+      static parse(duration) {
+        const matches = duration.match(/^P(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)\.?(\d{1,3})?S)?)?$/);
+        if (!matches) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const [, days, hours, minutes, seconds, milliseconds] = matches;
+        if (!days && !hours && !minutes && !seconds && !milliseconds) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const millis = milliseconds ? milliseconds.padEnd(3, "0") : "";
+        return _Duration.millis(
+          _toInt(millis) + _toInt(seconds) * TimeUnit.Seconds.inMillis + _toInt(minutes) * TimeUnit.Minutes.inMillis + _toInt(hours) * TimeUnit.Hours.inMillis + _toInt(days) * TimeUnit.Days.inMillis
+        );
+        function _toInt(str) {
+          if (!str) {
+            return 0;
+          }
+          return Number(str);
+        }
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`DurationAmountsCannotNegative`, `Duration amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Add two Durations together
+       */
+      plus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) + convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Substract two Durations together
+       */
+      minus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) - convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Return the total number of milliseconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Milliseconds.
+       */
+      toMilliseconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Milliseconds, opts);
+      }
+      /**
+       * Return the total number of seconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Seconds.
+       */
+      toSeconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Seconds, opts);
+      }
+      /**
+       * Return the total number of minutes in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Minutes.
+       */
+      toMinutes(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Minutes, opts);
+      }
+      /**
+       * Return the total number of hours in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Hours.
+       */
+      toHours(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Hours, opts);
+      }
+      /**
+       * Return the total number of days in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Days.
+       */
+      toDays(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Days, opts);
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       */
+      toIsoString() {
+        if (this.amount === 0) {
+          return "PT0S";
+        }
+        const ret = ["P"];
+        let tee = false;
+        for (const [amount, unit] of this.components(true)) {
+          if ([TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours].includes(unit) && !tee) {
+            ret.push("T");
+            tee = true;
+          }
+          ret.push(`${amount}${unit.isoLabel}`);
+        }
+        return ret.join("");
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       * @deprecated Use `toIsoString()` instead.
+       */
+      toISOString() {
+        return this.toIsoString();
+      }
+      /**
+       * Turn this duration into a human-readable string
+       */
+      toHumanString() {
+        if (this.amount === 0) {
+          return fmtUnit(0, this.unit);
+        }
+        if (Token.isUnresolved(this.amount)) {
+          return ` ${this.unit.label}`;
+        }
+        return this.components(false).slice(0, 2).map(([amount, unit]) => fmtUnit(amount, unit)).join(" ");
+        function fmtUnit(amount, unit) {
+          if (amount === 1) {
+            return `${amount} ${unit.label.substring(0, unit.label.length - 1)}`;
+          }
+          return `${amount} ${unit.label}`;
+        }
+      }
+      /**
+       * Returns a string representation of this `Duration`
+       *
+       * This is never the right function to use when you want to use the `Duration`
+       * object in a template. Use `toSeconds()`, `toMinutes()`, `toDays()`, etc. instead.
+       */
+      toString() {
+        return `Duration.${this.unit.label}(${this.amount})`;
+      }
+      /**
+       * Return the duration in a set of whole numbered time components, ordered from largest to smallest
+       *
+       * Only components != 0 will be returned.
+       *
+       * Can combine millis and seconds together for the benefit of toIsoString,
+       * makes the logic in there simpler.
+       */
+      components(combineMillisWithSeconds) {
+        const ret = new Array();
+        let millis = convert(this.amount, this.unit, TimeUnit.Milliseconds, { integral: false });
+        for (const unit of [TimeUnit.Days, TimeUnit.Hours, TimeUnit.Minutes, TimeUnit.Seconds]) {
+          const count2 = convert(millis, TimeUnit.Milliseconds, unit, { integral: false });
+          const wholeCount = unit === TimeUnit.Seconds && combineMillisWithSeconds ? count2 : Math.floor(count2);
+          if (wholeCount > 0) {
+            ret.push([wholeCount, unit]);
+            millis -= wholeCount * unit.inMillis;
+          }
+        }
+        if (millis > 1e-4) {
+          ret.push([millis, TimeUnit.Milliseconds]);
+        }
+        return ret;
+      }
+      /**
+       * Checks if duration is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Returns unit of the duration
+       */
+      unitLabel() {
+        return this.unit.label;
+      }
+      /**
+       * Returns stringified number of duration
+       */
+      formatTokenToNumber() {
+        const number = Tokenization.stringifyNumber(this.amount);
+        return `${number} ${this.unit.label}`;
+      }
+    };
+    TimeUnit = class _TimeUnit {
+      constructor(label, isoLabel, inMillis) {
+        this.label = label;
+        this.isoLabel = isoLabel;
+        this.inMillis = inMillis;
+      }
+      label;
+      isoLabel;
+      inMillis;
+      static Milliseconds = new _TimeUnit("millis", "", 1);
+      static Seconds = new _TimeUnit("seconds", "S", 1e3);
+      static Minutes = new _TimeUnit("minutes", "M", 6e4);
+      static Hours = new _TimeUnit("hours", "H", 36e5);
+      static Days = new _TimeUnit("days", "D", 864e5);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/size.ts
+function allStorageUnits() {
+  return [
+    StorageUnit.Pebibytes,
+    StorageUnit.Tebibytes,
+    StorageUnit.Gibibytes,
+    StorageUnit.Mebibytes,
+    StorageUnit.Kibibytes,
+    StorageUnit.Bytes
+  ];
+}
+function convert2(amount, fromUnit, toUnit, options = {}) {
+  const rounding = options.rounding ?? 0 /* FAIL */;
+  if (fromUnit.inBytes === toUnit.inBytes) {
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeSizeSpecifiedSize`, `Size must be specified as 'Size.${toUnit}()' here since its value comes from a token and cannot be converted (got Size.${fromUnit})`);
+  }
+  const multiplier = fromUnit.inBytes / toUnit.inBytes;
+  const value = amount * multiplier;
+  switch (rounding) {
+    case 2 /* NONE */:
+      return value;
+    case 1 /* FLOOR */:
+      return Math.floor(value);
+    default:
+    case 0 /* FAIL */:
+      if (!Number.isInteger(value)) {
+        throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+      }
+      return value;
+  }
+}
+var Size, StorageUnit;
+var init_size = __esm({
+  "../../aws-cdk-lib/core/lib/size.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Size = class _Size {
+      /**
+       * Create a Storage representing an amount bytes.
+       *
+       * @param amount the amount of bytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static bytes(amount) {
+        return new _Size(amount, StorageUnit.Bytes);
+      }
+      /**
+       * Create a Storage representing an amount kibibytes.
+       * 1 KiB = 1024 bytes
+       *
+       * @param amount the amount of kibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static kibibytes(amount) {
+        return new _Size(amount, StorageUnit.Kibibytes);
+      }
+      /**
+       * Create a Storage representing an amount mebibytes.
+       * 1 MiB = 1024 KiB
+       *
+       * @param amount the amount of mebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static mebibytes(amount) {
+        return new _Size(amount, StorageUnit.Mebibytes);
+      }
+      /**
+       * Create a Storage representing an amount gibibytes.
+       * 1 GiB = 1024 MiB
+       *
+       * @param amount the amount of gibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static gibibytes(amount) {
+        return new _Size(amount, StorageUnit.Gibibytes);
+      }
+      /**
+       * Create a Storage representing an amount tebibytes.
+       * 1 TiB = 1024 GiB
+       *
+       * @param amount the amount of tebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static tebibytes(amount) {
+        return new _Size(amount, StorageUnit.Tebibytes);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @deprecated use `pebibytes` instead
+       */
+      static pebibyte(amount) {
+        return _Size.pebibytes(amount);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @param amount the amount of pebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static pebibytes(amount) {
+        return new _Size(amount, StorageUnit.Pebibytes);
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`StorageAmountsCannotNegative`, `Storage amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Return this storage as a total number of bytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity expressed in bytes
+       */
+      toBytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Bytes, opts);
+      }
+      /**
+       * Return this storage as a total number of kibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in kibibytes
+       */
+      toKibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Kibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of mebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in mebibytes
+       */
+      toMebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Mebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of gibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in gibibytes
+       */
+      toGibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Gibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of tebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in tebibytes
+       */
+      toTebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Tebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of pebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in pebibytes
+       */
+      toPebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Pebibytes, opts);
+      }
+      /**
+       * Checks if size is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Convert this Size object to the most appropriate readable number.
+       */
+      toHumanString() {
+        if (this.isUnresolved()) {
+          return `${Token.asString(this.amount)} ${this.unit.shortLabel}`;
+        }
+        const bytes = this.toBytes();
+        for (const unit of allStorageUnits()) {
+          if (bytes >= unit.inBytes) {
+            const am = convert2(bytes, StorageUnit.Bytes, unit, { rounding: 2 /* NONE */ });
+            return `${am.toFixed(2).replace(/\.?0+$/, "")} ${unit.shortLabel}`;
+          }
+        }
+        return `${bytes} bytes`;
+      }
+      /**
+       * Convert this Size object to its constructor form
+       */
+      toString() {
+        return `Size.${this.unit.label}(${this.amount})`;
+      }
+    };
+    StorageUnit = class _StorageUnit {
+      constructor(label, shortLabel, inBytes) {
+        this.label = label;
+        this.shortLabel = shortLabel;
+        this.inBytes = inBytes;
+      }
+      label;
+      shortLabel;
+      inBytes;
+      static Bytes = new _StorageUnit("bytes", "bytes", 1);
+      static Kibibytes = new _StorageUnit("kibibytes", "KiB", 1024);
+      static Mebibytes = new _StorageUnit("mebibytes", "MiB", 1024 * 1024);
+      static Gibibytes = new _StorageUnit("gibibytes", "GiB", 1024 * 1024 * 1024);
+      static Tebibytes = new _StorageUnit("tebibytes", "TiB", 1024 * 1024 * 1024 * 1024);
+      static Pebibytes = new _StorageUnit("pebibytes", "PiB", 1024 * 1024 * 1024 * 1024 * 1024);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts
+var path8, import_constructs8, fs8, ENTRYPOINT_FILENAME, ENTRYPOINT_NODEJS_SOURCE, CustomResourceProviderBase;
+var init_custom_resource_provider_base = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts"() {
+    "use strict";
+    path8 = __toESM(require("path"));
+    import_constructs8 = __toESM(require_lib4());
+    fs8 = __toESM(require_lib5());
+    init_shared();
+    init_cx_api();
+    init_asset_staging2();
+    init_assets();
+    init_cfn_resource();
+    init_duration();
+    init_errors();
+    init_fs();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_literal_string();
+    init_size();
+    init_token();
+    ENTRYPOINT_FILENAME = "__entrypoint__";
+    ENTRYPOINT_NODEJS_SOURCE = path8.join(__dirname, "..", "..", "..", "custom-resource-handlers", "dist", "core", "nodejs-entrypoint-handler", "index.js");
+    CustomResourceProviderBase = class extends import_constructs8.Construct {
+      /**
+       * The hash of the lambda code backing this provider. Can be used to trigger updates
+       * on code changes, even when the properties of a custom resource remain unchanged.
+       */
+      get codeHash() {
+        if (!this._codeHash) {
+          throw new ValidationError(lit`CustomResourceUsesInlineCode`, "This custom resource uses inlineCode: true and does not have a codeHash", this);
+        }
+        return this._codeHash;
+      }
+      _codeHash;
+      policyStatements = Box.fromArray();
+      role;
+      handler;
+      /**
+       * The ARN of the provider's AWS Lambda function which should be used as the `serviceToken` when defining a custom
+       * resource.
+       */
+      get serviceToken() {
+        return Token.asString(this.handler.getAtt("Arn"));
+      }
+      _roleArn = "";
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(scope);
+        if (!fs8.existsSync(path8.join(props.codeDirectory, "index.js"))) {
+          throw new ValidationError(lit`CannotFind`, `cannot find ${props.codeDirectory}/index.js`, this);
+        }
+        if (props.policyStatements) {
+          for (const statement of props.policyStatements) {
+            this.addToRolePolicy(statement);
+          }
+        }
+        const { code, codeHandler, metadata } = this.createCodePropAndMetadata(props, stack);
+        const config = getPrecreatedRoleConfig(this, `${this.node.path}/Role`);
+        const assumeRolePolicyDoc = [{ Action: "sts:AssumeRole", Effect: "Allow", Principal: { Service: "lambda.amazonaws.com" } }];
+        const managedPolicyArn = "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole";
+        if (config.enabled) {
+          this.node.addValidation({
+            validate: () => {
+              PolicySynthesizer.getOrCreate(this).addRole(`${this.node.path}/Role`, {
+                missing: !config.precreatedRoleName,
+                roleName: config.precreatedRoleName ?? id + "Role",
+                managedPolicies: [{ managedPolicyArn }],
+                policyStatements: [...this.policyStatements.get()],
+                assumeRolePolicy: assumeRolePolicyDoc
+              });
+              return [];
+            }
+          });
+          this._roleArn = stackOf(this).formatArn({
+            region: "",
+            service: "iam",
+            resource: "role",
+            resourceName: config.precreatedRoleName
+          });
+        }
+        if (!config.preventSynthesis) {
+          this.role = new CfnResource(this, "Role", {
+            type: "AWS::IAM::Role",
+            properties: {
+              AssumeRolePolicyDocument: {
+                Version: "2012-10-17",
+                Statement: assumeRolePolicyDoc
+              },
+              ManagedPolicyArns: [
+                { "Fn::Sub": managedPolicyArn }
+              ],
+              Policies: this.policyStatements.derive((stmts) => stmts.length === 0 ? void 0 : [{
+                PolicyName: "Inline",
+                PolicyDocument: {
+                  Version: "2012-10-17",
+                  Statement: stmts
+                }
+              }])
+            }
+          });
+        }
+        const timeout = props.timeout ?? Duration.minutes(15);
+        const memory = props.memorySize ?? Size.mebibytes(128);
+        this.handler = new CfnResource(this, "Handler", {
+          type: "AWS::Lambda::Function",
+          properties: {
+            Code: code,
+            Timeout: timeout.toSeconds(),
+            MemorySize: memory.toMebibytes(),
+            Handler: codeHandler,
+            Role: this.roleArn,
+            Runtime: props.runtimeName,
+            Environment: this.renderEnvironmentVariables(props.environment),
+            Description: props.description ?? void 0
+          }
+        });
+        if (this.role) {
+          this.handler.addResourceDependency(this.role);
+        }
+        if (metadata) {
+          Object.entries(metadata).forEach(([k, v]) => this.handler.addMetadata(k, v));
+        }
+      }
+      /**
+       * The ARN of the provider's AWS Lambda function role.
+       */
+      get roleArn() {
+        if (this.role) {
+          return Token.asString(this.role.getAtt("Arn"));
+        }
+        return this._roleArn;
+      }
+      /**
+       * Add an IAM policy statement to the inline policy of the
+       * provider's lambda function's role.
+       *
+       * **Please note**: this is a direct IAM JSON policy blob, *not* a `iam.PolicyStatement`
+       * object like you will see in the rest of the CDK.
+       *
+       *
+       * @example
+       * declare const myProvider: CustomResourceProvider;
+       *
+       * myProvider.addToRolePolicy({
+       *   Effect: 'Allow',
+       *   Action: 's3:GetObject',
+       *   Resource: '*',
+       * });
+       */
+      addToRolePolicy(statement) {
+        this.policyStatements.push(statement);
+      }
+      renderEnvironmentVariables(env2) {
+        if (!env2 || Object.keys(env2).length === 0) {
+          return void 0;
+        }
+        env2 = { ...env2 };
+        env2.AWS_STS_REGIONAL_ENDPOINTS = "regional";
+        const variables = {};
+        const keys = Object.keys(env2).sort();
+        for (const key of keys) {
+          variables[key] = env2[key];
+        }
+        return { Variables: variables };
+      }
+      /**
+       * Returns the code property for the custom resource as well as any metadata.
+       * If the code is to be uploaded as an asset, the asset gets created in this function.
+       */
+      createCodePropAndMetadata(props, stack) {
+        let codeHandler = "index.handler";
+        const inlineCode = this.node.tryGetContext(INLINE_CUSTOM_RESOURCE_CONTEXT);
+        if (!inlineCode) {
+          const stagingDirectory = FileSystem.mkdtemp("cdk-custom-resource");
+          fs8.copySync(props.codeDirectory, stagingDirectory, { filter: (src, _dest) => !src.endsWith(".ts") });
+          if (props.useCfnResponseWrapper ?? true) {
+            fs8.copyFileSync(ENTRYPOINT_NODEJS_SOURCE, path8.join(stagingDirectory, `${ENTRYPOINT_FILENAME}.js`));
+            codeHandler = `${ENTRYPOINT_FILENAME}.handler`;
+          }
+          const staging = new AssetStaging(this, "Staging", {
+            sourcePath: stagingDirectory
+          });
+          const assetFileName = staging.relativeStagedPath(stack);
+          const asset = stack.synthesizer.addFileAsset({
+            fileName: assetFileName,
+            sourceHash: staging.assetHash,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            displayName: `${this.node.path} Code`
+          });
+          this._codeHash = staging.assetHash;
+          fs8.rmSync(stagingDirectory, { recursive: true, force: true });
+          return {
+            code: {
+              S3Bucket: asset.bucketName,
+              S3Key: asset.objectKey
+            },
+            codeHandler,
+            metadata: this.node.tryGetContext(import_cloud_assembly_api.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT) ? {
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PATH_KEY]: assetFileName,
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PROPERTY_KEY]: "Code"
+            } : void 0
+          };
+        }
+        return {
+          code: {
+            ZipFile: fs8.readFileSync(path8.join(props.codeDirectory, "index.js"), "utf-8")
+          },
+          codeHandler
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/default.ts
+var init_default = __esm({
+  "../../aws-cdk-lib/region-info/lib/default.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/aws-entities.ts
+function partitionInformation(region) {
+  for (const [prefix, info] of Object.entries(PARTITION_MAP)) {
+    if (region.startsWith(prefix)) {
+      return info;
+    }
+  }
+  return PARTITION_MAP.default;
+}
+var RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN, RULE_CLASSIC_PARTITION_BECOMES_OPT_IN, AWS_REGIONS_AND_RULES, AWS_REGIONS, PARTITION_MAP;
+var init_aws_entities = __esm({
+  "../../aws-cdk-lib/region-info/lib/aws-entities.ts"() {
+    "use strict";
+    RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN = /* @__PURE__ */ Symbol("S3_WEBSITE_REGIONAL_SUBDOMAIN");
+    RULE_CLASSIC_PARTITION_BECOMES_OPT_IN = /* @__PURE__ */ Symbol("CLASSIC_PARTITION_BECOMES_OPT_IN");
+    AWS_REGIONS_AND_RULES = [
+      "us-east-1",
+      // US East (N. Virginia)
+      "eu-west-1",
+      // Europe (Ireland)
+      "us-west-1",
+      // US West (N. California)
+      "ap-southeast-1",
+      // Asia Pacific (Singapore)
+      "ap-northeast-1",
+      // Asia Pacific (Tokyo)
+      "us-gov-west-1",
+      // AWS GovCloud (US-West)
+      "us-west-2",
+      // US West (Oregon)
+      "sa-east-1",
+      // South America (São Paulo)
+      "ap-southeast-2",
+      // Asia Pacific (Sydney)
+      RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN,
+      "cn-north-1",
+      // China (Beijing)
+      "us-iso-east-1",
+      // AWS ISO
+      "eu-central-1",
+      // Europe (Frankfurt)
+      "ap-northeast-2",
+      // Asia Pacific (Seoul)
+      "ap-south-1",
+      // Asia Pacific (Mumbai)
+      "us-east-2",
+      // US East (Ohio)
+      "ca-central-1",
+      // Canada (Central)
+      "eu-west-2",
+      // Europe (London)
+      "us-isob-east-1",
+      // AWS ISO-B
+      "cn-northwest-1",
+      // China (Ningxia)
+      "eu-west-3",
+      // Europe (Paris)
+      "ap-northeast-3",
+      // Asia Pacific (Osaka)
+      "us-gov-east-1",
+      // AWS GovCloud (US-East)
+      "eu-north-1",
+      // Europe (Stockholm)
+      RULE_CLASSIC_PARTITION_BECOMES_OPT_IN,
+      "ap-east-1",
+      // Asia Pacific (Hong Kong)
+      "me-south-1",
+      // Middle East (Bahrain)
+      "af-south-1",
+      // Africa (Cape Town)
+      "eu-south-1",
+      // Europe (Milan)
+      "us-iso-west-1",
+      // US ISO West
+      "ap-southeast-3",
+      // Asia Pacific (Jakarta)
+      "me-central-1",
+      // Middle East (UAE)
+      "eu-central-2",
+      // Europe (Zurich)
+      "eu-south-2",
+      // Europe (Spain)
+      "ap-south-2",
+      // Asia Pacific (Hyderabad)
+      "ap-southeast-4",
+      // Asia Pacific (Melbourne)
+      "il-central-1",
+      // Israel (Tel Aviv)
+      "ca-west-1",
+      // Canada West (Calgary)
+      "ap-southeast-5",
+      // Asia Pacific (Malaysia)
+      "ap-southeast-7",
+      // Asia Pacific (Thailand)
+      "mx-central-1",
+      // Mexico (Central)
+      "eu-isoe-west-1",
+      // EU ISO-E West
+      "us-isob-west-1",
+      // US ISOB West
+      "ap-east-2",
+      // Asia Pacific (Taipei)
+      "eusc-de-east-1",
+      // EU (Germany)
+      "ap-southeast-6",
+      // Asia Pacific (New Zealand)
+      "us-isof-south-1",
+      // US ISOF SOUTH
+      "us-isof-east-1"
+      // US ISOF EAST
+    ];
+    AWS_REGIONS = AWS_REGIONS_AND_RULES.filter((x) => typeof x === "string").sort();
+    PARTITION_MAP = {
+      "default": { partition: "aws", domainSuffix: "amazonaws.com" },
+      "cn-": { partition: "aws-cn", domainSuffix: "amazonaws.com.cn" },
+      "us-gov-": { partition: "aws-us-gov", domainSuffix: "amazonaws.com" },
+      "us-iso-": { partition: "aws-iso", domainSuffix: "c2s.ic.gov" },
+      "us-isob-": { partition: "aws-iso-b", domainSuffix: "sc2s.sgov.gov" },
+      "us-isof-": { partition: "aws-iso-f", domainSuffix: "csp.hci.ic.gov" },
+      "eu-isoe-": { partition: "aws-iso-e", domainSuffix: "cloud.adc-e.uk" },
+      "eusc-de-": { partition: "aws-eusc", domainSuffix: "amazonaws.eu" }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/fact.ts
+var CONSTRUCT_ERROR_SYMBOL2, RegionFactError, Fact, FactName;
+var init_fact = __esm({
+  "../../aws-cdk-lib/region-info/lib/fact.ts"() {
+    "use strict";
+    init_aws_entities();
+    CONSTRUCT_ERROR_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError");
+    RegionFactError = class _RegionFactError extends Error {
+      constructor(msg) {
+        super(msg);
+        Object.setPrototypeOf(this, _RegionFactError.prototype);
+        Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL2, { value: true });
+        this.name = "RegionFactError";
+      }
+    };
+    Fact = class {
+      /**
+       * @returns the list of names of AWS Regions for which there is at least one registered fact. This
+       *          includes Regions defined in AWS_REGIONS plus custom defined regions.
+       */
+      static get regions() {
+        return [.../* @__PURE__ */ new Set([...AWS_REGIONS, ...Object.keys(this.database)])];
+      }
+      /**
+       * Returns the list of names of registered facts.
+       *
+       * All facts will be present in at least one region.
+       */
+      static get names() {
+        return [...new Set(Object.values(this.database).flatMap((regionFacts) => Object.keys(regionFacts)))];
+      }
+      /**
+       * Return all pairs of (region, factName) that are defined
+       */
+      static definedFacts() {
+        return Object.entries(this.database).flatMap(([regionName, regionFacts]) => Object.keys(regionFacts).map((factName) => [regionName, factName]));
+      }
+      /**
+       * Retrieves a fact from this Fact database.
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name   the name of the fact being looked up (see the `FactName` class for details)
+       *
+       * @returns the fact value if it is known, and `undefined` otherwise.
+       */
+      static find(region, name) {
+        const regionFacts = this.database[region];
+        return regionFacts && regionFacts[name];
+      }
+      /**
+       * Retrieve a fact from the Fact database. (retrieval will fail if the specified region or
+       * fact name does not exist.)
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name the name of the fact being looked up (see the `FactName` class for details)
+       */
+      static requireFact(region, name) {
+        const foundFact = this.find(region, name);
+        if (!foundFact) {
+          throw new RegionFactError(`No fact ${name} could be found for region: ${region} and name: ${name}.`);
+        }
+        return foundFact;
+      }
+      /**
+       * Registers a new fact in this Fact database.
+       *
+       * @param fact           the new fact to be registered.
+       * @param allowReplacing whether new facts can replace existing facts or not.
+       */
+      static register(fact, allowReplacing = false) {
+        const regionFacts = this.database[fact.region] || (this.database[fact.region] = /* @__PURE__ */ Object.create(null));
+        if (fact.name in regionFacts && regionFacts[fact.name] !== fact.value && !allowReplacing) {
+          throw new RegionFactError(`Region ${fact.region} already has a fact ${fact.name}, with value ${regionFacts[fact.name]}`);
+        }
+        if (fact.value !== void 0) {
+          regionFacts[fact.name] = fact.value;
+        }
+      }
+      /**
+       * Removes a fact from the database.
+       * @param region the region for which the fact is to be removed.
+       * @param name   the name of the fact to remove.
+       * @param value  the value that should be removed (removal will fail if the value is specified, but does not match the
+       *               current stored value).
+       */
+      static unregister(region, name, value) {
+        const regionFacts = this.database[region] || /* @__PURE__ */ Object.create(null);
+        if (name in regionFacts && value && regionFacts[name] !== value) {
+          throw new RegionFactError(`Attempted to remove ${name} from ${region} with value ${value}, but the fact's value is ${regionFacts[name]}`);
+        }
+        delete regionFacts[name];
+      }
+      static database = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      constructor() {
+        throw new Error("Use the static methods of Fact instead!");
+      }
+    };
+    FactName = class {
+      /**
+       * The name of the partition for a region (e.g: 'aws', 'aws-cn', ...)
+       */
+      static PARTITION = "partition";
+      /**
+       * The domain suffix for a region (e.g: 'amazonaws.com`)
+       */
+      static DOMAIN_SUFFIX = "domainSuffix";
+      /**
+       * Whether the AWS::CDK::Metadata CloudFormation Resource is available in-region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static CDK_METADATA_RESOURCE_AVAILABLE = "cdk:metadata-resource:available";
+      /**
+       * Whether the given region is an opt-in region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static IS_OPT_IN_REGION = "aws:is-opt-in-region";
+      /**
+       * The endpoint used for hosting S3 static websites
+       */
+      static S3_STATIC_WEBSITE_ENDPOINT = "s3-static-website:endpoint";
+      /**
+       * The endpoint used for aliasing S3 static websites in Route 53
+       */
+      static S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID = "s3-static-website:route-53-hosted-zone-id";
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      static EBS_ENV_ENDPOINT_HOSTED_ZONE_ID = "ebs-environment:route-53-hosted-zone-id";
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      static VPC_ENDPOINT_SERVICE_NAME_PREFIX = "vpcEndpointServiceNamePrefix";
+      /**
+       * The account for ELBv2 in this region
+       */
+      static ELBV2_ACCOUNT = "elbv2Account";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS Deep Learning Containers images in a given region.
+       */
+      static DLC_REPOSITORY_ACCOUNT = "dlcRepositoryAccount";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      static APPMESH_ECR_ACCOUNT = "appMeshRepositoryAccount";
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      static FIREHOSE_CIDR_BLOCK = "firehoseCidrBlock";
+      /**
+       * The SAML Sign On URL for partition used by IAM SAML Principal
+       */
+      static SAML_SIGN_ON_URL = "samlSignOnUrl";
+      /**
+       * The latest Lambda NodeJS runtime available in a given region.
+       */
+      static LATEST_NODE_RUNTIME = "latestNodeRuntime";
+      /**
+       * The ARN of CloudWatch Lambda Insights for a version (e.g. 1.0.98.0)
+       */
+      static cloudwatchLambdaInsightsVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `cloudwatch-lambda-insights-version:${suffix}`;
+      }
+      /**
+       * The ARN of AppConfig Lambda Layer for a given version (e.g. 2.0.181)
+       * @param version The layer version.
+       * @param arch The architecture (optional), defaults to x86_64.
+       */
+      static appConfigLambdaLayerVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `appconfig-lambda-layer:${suffix}`;
+      }
+      /**
+       * The name of the regional service principal for a given service.
+       *
+       * @param service the service name, either simple (e.g: `s3`, `codedeploy`) or qualified (e.g: `s3.amazonaws.com`).
+       *                The `.amazonaws.com` and `.amazonaws.com.cn` domains are stripped from service names, so they are
+       *                canonicalized in that respect.
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      static servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The ARN of Amazon Distro for OpenTelemetry (ADOT) Lambda layer for a given lambda type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static adotLambdaLayer(type, version3, architecture) {
+        const suffix = type + "_" + version3.split(".").join("_") + "_" + architecture;
+        return `adot-lambda-layer:${suffix}`;
+      }
+      /**
+       * The ARN of Parameters and Secrets Lambda layer for a given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static paramsAndSecretsLambdaLayer(version3, architecture) {
+        const suffix = version3.split(".").join("_") + `_${architecture}`;
+        return `params-and-secrets-layer:${suffix}`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/region-info.ts
+var RegionInfo;
+var init_region_info = __esm({
+  "../../aws-cdk-lib/region-info/lib/region-info.ts"() {
+    "use strict";
+    init_aws_entities();
+    init_fact();
+    RegionInfo = class _RegionInfo {
+      constructor(name) {
+        this.name = name;
+      }
+      name;
+      /**
+       * @returns the list of names of AWS regions for which there is at least one registered fact. This
+       *          may not be an exaustive list of all available AWS regions.
+       */
+      static get regions() {
+        return Fact.regions.map((x) => _RegionInfo.get(x));
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions that fact is defined in.
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static regionMap(factName) {
+        const ret = {};
+        for (const regionInfo of _RegionInfo.regions) {
+          const fact = Fact.find(regionInfo.name, factName);
+          if (fact) {
+            ret[regionInfo.name] = fact;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions, limited to some partitions
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @param partitions list of partitions to retrieve facts for. Defaults
+       *   to `['aws', 'aws-cn']`.
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static limitedRegionMap(factName, partitions) {
+        const ret = {};
+        for (const [region, value] of Object.entries(_RegionInfo.regionMap(factName))) {
+          if (partitions.includes(partitionInformation(region).partition)) {
+            ret[region] = value;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Obtain region info for a given region name.
+       *
+       * @param name the name of the region (e.g: us-east-1)
+       */
+      static get(name) {
+        return new _RegionInfo(name);
+      }
+      /**
+       * Whether the `AWS::CDK::Metadata` CloudFormation Resource is available in this region or not.
+       */
+      get cdkMetadataResourceAvailable() {
+        return Fact.find(this.name, FactName.CDK_METADATA_RESOURCE_AVAILABLE) === "YES";
+      }
+      /**
+       * Whether the given region is an opt-in region
+       */
+      get isOptInRegion() {
+        return Fact.find(this.name, FactName.IS_OPT_IN_REGION) === "YES";
+      }
+      /**
+       * The domain name suffix (e.g: amazonaws.com) for this region.
+       */
+      get domainSuffix() {
+        return Fact.find(this.name, FactName.DOMAIN_SUFFIX);
+      }
+      /**
+       * The name of the ARN partition for this region (e.g: aws).
+       */
+      get partition() {
+        return Fact.find(this.name, FactName.PARTITION);
+      }
+      /**
+       * The endpoint used by S3 static website hosting in this region (e.g: s3-static-website-us-east-1.amazonaws.com)
+       */
+      get s3StaticWebsiteEndpoint() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ENDPOINT);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a S3 static website in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get s3StaticWebsiteHostedZoneId() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get ebsEnvEndpointHostedZoneId() {
+        return Fact.find(this.name, FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID);
+      }
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      get vpcEndpointServiceNamePrefix() {
+        return Fact.find(this.name, FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX);
+      }
+      /**
+       * The name of the service principal for a given service in this region.
+       * @param service the service name (e.g: s3.amazonaws.com)
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The account ID for ELBv2 in this region
+       */
+      get elbv2Account() {
+        return Fact.find(this.name, FactName.ELBV2_ACCOUNT);
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository containing the
+       * AWS Deep Learning Containers images in this region.
+       */
+      get dlcRepositoryAccount() {
+        return Fact.find(this.name, FactName.DLC_REPOSITORY_ACCOUNT);
+      }
+      /**
+       * The ARN of the CloudWatch Lambda Insights extension, for the given version.
+       * @param insightsVersion the version (e.g. 1.0.98.0)
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      cloudwatchLambdaInsightsArn(insightsVersion, architecture) {
+        return Fact.find(this.name, FactName.cloudwatchLambdaInsightsVersion(insightsVersion, architecture));
+      }
+      /**
+       * The ARN of the AppConfig Lambda Layer, for the given version.
+       * @param layerVersion The layer version (e.g. 2.0.181)
+       * @param architecture The Lambda Function architecture (e.g. 'x86_64' or 'arm64'), defaults to x86_64
+       */
+      appConfigLambdaArn(layerVersion, architecture) {
+        return Fact.find(this.name, FactName.appConfigLambdaLayerVersion(layerVersion, architecture));
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      get appMeshRepositoryAccount() {
+        return Fact.find(this.name, FactName.APPMESH_ECR_ACCOUNT);
+      }
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      get firehoseCidrBlock() {
+        return Fact.find(this.name, FactName.FIREHOSE_CIDR_BLOCK);
+      }
+      /**
+       * The ARN of the ADOT Lambda layer, for the given layer type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      adotLambdaLayerArn(type, version3, architecture) {
+        return Fact.find(this.name, FactName.adotLambdaLayer(type, version3, architecture));
+      }
+      /**
+       * The ARN of the Parameters and Secrets Lambda layer for the given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      paramsAndSecretsLambdaLayerArn(version3, architecture) {
+        return Fact.find(this.name, FactName.paramsAndSecretsLambdaLayer(version3, architecture));
+      }
+      /**
+       * SAML Sign On URL used by IAM SAML Principals.
+       */
+      get samlSignOnUrl() {
+        return Fact.find(this.name, FactName.SAML_SIGN_ON_URL);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/built-ins.generated.ts
+var BuiltIns;
+var init_built_ins_generated = __esm({
+  "../../aws-cdk-lib/region-info/lib/built-ins.generated.ts"() {
+    "use strict";
+    init_fact();
+    BuiltIns = class {
+      /**
+       * Registers all the built in regional data in the RegionInfo database.
+       */
+      static register() {
+        Fact.register({ region: "af-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "af-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.af-south-1.amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11KHD8FBVPUYU" });
+        Fact.register({ region: "af-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1EI3BVKMKK4AM" });
+        Fact.register({ region: "af-south-1", name: FactName.ELBV2_ACCOUNT, value: "098369216593" });
+        Fact.register({ region: "af-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "924023996002" });
+        Fact.register({ region: "af-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "af-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "af-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.244.121.224/27" });
+        Fact.register({ region: "af-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:456" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-1.amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "ZNB98KWMFR0R6" });
+        Fact.register({ region: "ap-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZPWYUBWRU171A" });
+        Fact.register({ region: "ap-east-1", name: FactName.ELBV2_ACCOUNT, value: "754344448648" });
+        Fact.register({ region: "ap-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "871362719292" });
+        Fact.register({ region: "ap-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "856666278305" });
+        Fact.register({ region: "ap-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.162.221.32/27" });
+        Fact.register({ region: "ap-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-east-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-2.amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z064739330DAH7WJVOO93" });
+        Fact.register({ region: "ap-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-east-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "975050140332" });
+        Fact.register({ region: "ap-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "058264503299" });
+        Fact.register({ region: "ap-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.212.53.160/27" });
+        Fact.register({ region: "ap-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-2:145023102084:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-northeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2M4EHUR26P7ZW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.ELBV2_ACCOUNT, value: "582318560864" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.113.196.224/27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:87" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:34" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:83" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:33" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:31" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:80" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:30" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:79" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:29" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:78" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:76" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:72" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:37" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:35" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:62" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3W03O7B5YMIYP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z3JE5OI70TWKCP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.ELBV2_ACCOUNT, value: "600734575887" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.209.1.64/27" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2YQB5RD63NC85" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZNE5GEY1TIAGY" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.ELBV2_ACCOUNT, value: "383597477331" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.208.177.192/27" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:13" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:42" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:576959938190:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-1.amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11RGJOFQNVJUP" });
+        Fact.register({ region: "ap-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z18NTBI3Y7N9TZ" });
+        Fact.register({ region: "ap-south-1", name: FactName.ELBV2_ACCOUNT, value: "718504428378" });
+        Fact.register({ region: "ap-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.232.67.32/27" });
+        Fact.register({ region: "ap-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:58" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:94" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:92" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:55" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-2.amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z02976202B4EZMXIPMXF7" });
+        Fact.register({ region: "ap-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10223522IBWPBF2C2FJS" });
+        Fact.register({ region: "ap-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "772153158452" });
+        Fact.register({ region: "ap-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.60.192.128/27" });
+        Fact.register({ region: "ap-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:22" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-2:070087711984:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3O0J2DXBE1FTB" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z16FZ9L249IFLT" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.ELBV2_ACCOUNT, value: "114774131450" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.228.64.192/27" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:41" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1WCIGYICN2BYD" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2PCDNR3VC2G1N" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.ELBV2_ACCOUNT, value: "783225319266" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.210.67.224/27" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z01846753K324LI26A3VV" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z05913172VM7EAZB40TA8" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.ELBV2_ACCOUNT, value: "589379963580" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "907027046896" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "909464085924" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "108.136.221.64/27" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:37" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:24" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:13" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-4.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0312387243XT5FE14WFO" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z0666869LC74UHAO5YE4" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "457447274322" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.50.161.128/27" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-4:605207715842:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:5" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:307021474294:layer:AWS-AppConfig-Extension:2" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-5.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z08660063OXLMA7F1FJHU" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01812971H0QCYWSL7WOH" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.216.58.0/27" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-6.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01144401H1NECCLJDD4D" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "633930458069" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.APPMESH_ECR_ACCOUNT, value: "637423513210" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-6:727646510379:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-7.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0031014GXUMRZG6I14G" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.208.112.96/27" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-central-1.amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1QDHH18159H29" });
+        Fact.register({ region: "ca-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZJFCZL7SSZB5I" });
+        Fact.register({ region: "ca-central-1", name: FactName.ELBV2_ACCOUNT, value: "985666609251" });
+        Fact.register({ region: "ca-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ca-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ca-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.183.92.128/27" });
+        Fact.register({ region: "ca-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ca-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-west-1.amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03565811Z33SLEZTHOUL" });
+        Fact.register({ region: "ca-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1021028356Y0CYS11DQI" });
+        Fact.register({ region: "ca-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "40.176.98.192/27" });
+        Fact.register({ region: "ca-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-west-1:761377655185:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:15" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-north-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z5CN8UMXT92WN" });
+        Fact.register({ region: "cn-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-north-1", name: FactName.ELBV2_ACCOUNT, value: "638102146993" });
+        Fact.register({ region: "cn-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919366029133" });
+        Fact.register({ region: "cn-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.81.151.32/27" });
+        Fact.register({ region: "cn-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:287114880934:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-northwest-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z282HJ1KT0DH03" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.ELBV2_ACCOUNT, value: "037604701340" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919830735681" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "161.189.23.64/27" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:287310001119:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-1.amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z21DNDUVLTQW6Q" });
+        Fact.register({ region: "eu-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1FRNW7UH4DEZJ" });
+        Fact.register({ region: "eu-central-1", name: FactName.ELBV2_ACCOUNT, value: "054676820928" });
+        Fact.register({ region: "eu-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.158.127.160/27" });
+        Fact.register({ region: "eu-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-central-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-2.amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z030506016YDQGETNASS" });
+        Fact.register({ region: "eu-central-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z00227012FSHBMZNNSJJI" });
+        Fact.register({ region: "eu-central-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "380420809688" });
+        Fact.register({ region: "eu-central-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.62.183.32/27" });
+        Fact.register({ region: "eu-central-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:7" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-2:772501565639:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.PARTITION, value: "aws-iso-e" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DOMAIN_SUFFIX, value: "cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-isoe-west-1.cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "uk.adc-e.cloud.vpce" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-north-1.amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BAZG2TWCNX0D" });
+        Fact.register({ region: "eu-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-north-1", name: FactName.ELBV2_ACCOUNT, value: "897822967062" });
+        Fact.register({ region: "eu-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.53.63.224/27" });
+        Fact.register({ region: "eu-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:57" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:142" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:139" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:111" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:98" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:97" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-1.amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3IXVV8C73GIO3" });
+        Fact.register({ region: "eu-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10VDYYOA2JFKM" });
+        Fact.register({ region: "eu-south-1", name: FactName.ELBV2_ACCOUNT, value: "635631232127" });
+        Fact.register({ region: "eu-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "692866216735" });
+        Fact.register({ region: "eu-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "422531588944" });
+        Fact.register({ region: "eu-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.161.135.128/27" });
+        Fact.register({ region: "eu-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-2.amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0081959F7139GRJC19J" });
+        Fact.register({ region: "eu-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "503227376785" });
+        Fact.register({ region: "eu-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.100.71.96/27" });
+        Fact.register({ region: "eu-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-2:524103009944:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-eu-west-1.amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1BKCTXD74EZPE" });
+        Fact.register({ region: "eu-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2NYPWQ7DFZAZH" });
+        Fact.register({ region: "eu-west-1", name: FactName.ELBV2_ACCOUNT, value: "156460612806" });
+        Fact.register({ region: "eu-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.19.239.192/27" });
+        Fact.register({ region: "eu-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:108" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:7" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:6" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-2.amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3GKZC51ZF0DB4" });
+        Fact.register({ region: "eu-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1GKAAAUGATPF1" });
+        Fact.register({ region: "eu-west-2", name: FactName.ELBV2_ACCOUNT, value: "652711504416" });
+        Fact.register({ region: "eu-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.130.1.96/27" });
+        Fact.register({ region: "eu-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-3.amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3R1K369G5AVDG" });
+        Fact.register({ region: "eu-west-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z5WN6GAYWG5OB" });
+        Fact.register({ region: "eu-west-3", name: FactName.ELBV2_ACCOUNT, value: "009996457667" });
+        Fact.register({ region: "eu-west-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.180.1.96/27" });
+        Fact.register({ region: "eu-west-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:80" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.PARTITION, value: "aws-eusc" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eusc-de-east-1.amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "204133271717" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "eu.amazonaws.vpce" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "il-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.il-central-1.amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z09640613K4A3MN55U7GU" });
+        Fact.register({ region: "il-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z02941091PERNCB1MI5H7" });
+        Fact.register({ region: "il-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "564877687649" });
+        Fact.register({ region: "il-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "il-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "il-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "51.16.102.0/27" });
+        Fact.register({ region: "il-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:il-central-1:066549572091:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-central-1.amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z06143092I8HRXZRUZROF" });
+        Fact.register({ region: "me-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "me-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "914824155844" });
+        Fact.register({ region: "me-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "3.28.159.32/27" });
+        Fact.register({ region: "me-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:34" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:31" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-central-1:858974508948:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-south-1.amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1MPMWCPA7YB62" });
+        Fact.register({ region: "me-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2BBTEKR2I36N2" });
+        Fact.register({ region: "me-south-1", name: FactName.ELBV2_ACCOUNT, value: "076674570225" });
+        Fact.register({ region: "me-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "217643126080" });
+        Fact.register({ region: "me-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "772975370895" });
+        Fact.register({ region: "me-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.185.91.0/27" });
+        Fact.register({ region: "me-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "mx-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "mx-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "mx-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.mx-central-1.amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "mx-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "mx-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "sa-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "sa-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-sa-east-1.amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z7KQH4QJS55SO" });
+        Fact.register({ region: "sa-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10X7K2B4QSOFV" });
+        Fact.register({ region: "sa-east-1", name: FactName.ELBV2_ACCOUNT, value: "507241528517" });
+        Fact.register({ region: "sa-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "sa-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "sa-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "sa-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "sa-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.228.1.128/27" });
+        Fact.register({ region: "sa-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-east-1.amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3AQBSTGFYJSTF" });
+        Fact.register({ region: "us-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z117KPS5GTRQ2G" });
+        Fact.register({ region: "us-east-1", name: FactName.ELBV2_ACCOUNT, value: "127311923021" });
+        Fact.register({ region: "us-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.70.63.192/27" });
+        Fact.register({ region: "us-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-east-2.amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2O1EMRO9K5GLX" });
+        Fact.register({ region: "us-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z14LCN19Q5QHIC" });
+        Fact.register({ region: "us-east-2", name: FactName.ELBV2_ACCOUNT, value: "033677994240" });
+        Fact.register({ region: "us-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.58.135.96/27" });
+        Fact.register({ region: "us-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-gov-east-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2NIFVYYW2VKV1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z35TSARG0EJ4VU" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.ELBV2_ACCOUNT, value: "190560391635" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.253.138.96/27" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:129776340158:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-gov-west-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z31GFT0UA1I2HV" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z4KAURWC4UUUG" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.ELBV2_ACCOUNT, value: "048591011584" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.61.204.160/27" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:127562683043:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-east-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.ELBV2_ACCOUNT, value: "770363063475" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-west-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.ELBV2_ACCOUNT, value: "121062877647" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-east-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.ELBV2_ACCOUNT, value: "740734521339" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-west-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-east-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03373031FTGQH4MNG6ST" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.ELBV2_ACCOUNT, value: "091100254016" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "303241398832" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-south-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03376072I8GXC2DXUFXI" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.ELBV2_ACCOUNT, value: "412137745753" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "454834333376" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-1.amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2F56UZL2M1ACD" });
+        Fact.register({ region: "us-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1LQECGX5PH1X" });
+        Fact.register({ region: "us-west-1", name: FactName.ELBV2_ACCOUNT, value: "027434742980" });
+        Fact.register({ region: "us-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.57.135.192/27" });
+        Fact.register({ region: "us-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:124" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:121" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:78" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:77" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-2.amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BJ6K6RIION7M" });
+        Fact.register({ region: "us-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z38NKT9BP95V3O" });
+        Fact.register({ region: "us-west-2", name: FactName.ELBV2_ACCOUNT, value: "797873946194" });
+        Fact.register({ region: "us-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.89.255.224/27" });
+        Fact.register({ region: "us-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:146" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:45" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:143" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:114" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:101" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:100" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/index.ts
+var init_lib2 = __esm({
+  "../../aws-cdk-lib/region-info/lib/index.ts"() {
+    "use strict";
+    init_default();
+    init_fact();
+    init_region_info();
+    init_built_ins_generated();
+    BuiltIns.register();
+  }
+});
+
+// ../../aws-cdk-lib/region-info/index.ts
+var init_region_info2 = __esm({
+  "../../aws-cdk-lib/region-info/index.ts"() {
+    "use strict";
+    init_lib2();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts
+function determineLatestNodeRuntimeName(scope) {
+  return stackOf(scope).regionalFact(FactName.LATEST_NODE_RUNTIME, "nodejs24.x");
+}
+var init_custom_resource_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_region_info2();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts
+var init_custom_resource_provider2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_custom_resource_provider();
+    init_shared();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts
+var path9, CfnUtilsProvider;
+var init_cfn_utils_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts"() {
+    "use strict";
+    path9 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CfnUtilsProvider = class _CfnUtilsProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CfnUtilsProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path9.join(__dirname, "cfn-utils-provider"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts
+var import_constructs9, CfnUtilsProvider2, CfnUtils;
+var init_cfn_utils_provider = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts"() {
+    "use strict";
+    import_constructs9 = __toESM(require_lib4());
+    init_custom_resource();
+    init_consts();
+    init_cfn_utils_provider_generated();
+    CfnUtilsProvider2 = class extends import_constructs9.Construct {
+      static getOrCreate(scope) {
+        return CfnUtilsProvider.getOrCreate(scope, "AWSCDKCfnUtilsProvider");
+      }
+    };
+    CfnUtils = class {
+      /**
+       * Encode a structure to JSON at CloudFormation deployment time
+       *
+       * This would have been suitable for the JSON-encoding of arbitrary structures, however:
+       *
+       * - It uses a custom resource to do the encoding, and we'd rather not use a custom
+       *   resource if we can avoid it.
+       * - It cannot be used to encode objects where the keys of the objects can contain
+       *   tokens--because those cannot be represented in the JSON encoding that CloudFormation
+       *   templates use.
+       *
+       * This helper is used by `CloudFormationLang.toJSON()` if and only if it encounters
+       * objects that cannot be stringified any other way.
+       */
+      static stringify(scope, id, value) {
+        const resource = new CustomResource(scope, id, {
+          serviceToken: CfnUtilsProvider2.getOrCreate(scope),
+          resourceType: "Custom::AWSCDKCfnJsonStringify" /* CFN_JSON_STRINGIFY */,
+          properties: {
+            Value: value
+          }
+        });
+        return resource.getAttString("Value");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js
+var require_PlainValue_516d5bc2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js"(exports2) {
+    "use strict";
+    var Char = {
+      ANCHOR: "&",
+      COMMENT: "#",
+      TAG: "!",
+      DIRECTIVES_END: "-",
+      DOCUMENT_END: "."
+    };
+    var Type = {
+      ALIAS: "ALIAS",
+      BLANK_LINE: "BLANK_LINE",
+      BLOCK_FOLDED: "BLOCK_FOLDED",
+      BLOCK_LITERAL: "BLOCK_LITERAL",
+      COMMENT: "COMMENT",
+      DIRECTIVE: "DIRECTIVE",
+      DOCUMENT: "DOCUMENT",
+      FLOW_MAP: "FLOW_MAP",
+      FLOW_SEQ: "FLOW_SEQ",
+      MAP: "MAP",
+      MAP_KEY: "MAP_KEY",
+      MAP_VALUE: "MAP_VALUE",
+      PLAIN: "PLAIN",
+      QUOTE_DOUBLE: "QUOTE_DOUBLE",
+      QUOTE_SINGLE: "QUOTE_SINGLE",
+      SEQ: "SEQ",
+      SEQ_ITEM: "SEQ_ITEM"
+    };
+    var defaultTagPrefix = "tag:yaml.org,2002:";
+    var defaultTags = {
+      MAP: "tag:yaml.org,2002:map",
+      SEQ: "tag:yaml.org,2002:seq",
+      STR: "tag:yaml.org,2002:str"
+    };
+    function findLineStarts(src) {
+      const ls = [0];
+      let offset = src.indexOf("\n");
+      while (offset !== -1) {
+        offset += 1;
+        ls.push(offset);
+        offset = src.indexOf("\n", offset);
+      }
+      return ls;
+    }
+    function getSrcInfo(cst) {
+      let lineStarts, src;
+      if (typeof cst === "string") {
+        lineStarts = findLineStarts(cst);
+        src = cst;
+      } else {
+        if (Array.isArray(cst)) cst = cst[0];
+        if (cst && cst.context) {
+          if (!cst.lineStarts) cst.lineStarts = findLineStarts(cst.context.src);
+          lineStarts = cst.lineStarts;
+          src = cst.context.src;
+        }
+      }
+      return {
+        lineStarts,
+        src
+      };
+    }
+    function getLinePos(offset, cst) {
+      if (typeof offset !== "number" || offset < 0) return null;
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !src || offset > src.length) return null;
+      for (let i = 0; i < lineStarts.length; ++i) {
+        const start = lineStarts[i];
+        if (offset < start) {
+          return {
+            line: i,
+            col: offset - lineStarts[i - 1] + 1
+          };
+        }
+        if (offset === start) return {
+          line: i + 1,
+          col: 1
+        };
+      }
+      const line = lineStarts.length;
+      return {
+        line,
+        col: offset - lineStarts[line - 1] + 1
+      };
+    }
+    function getLine(line, cst) {
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !(line >= 1) || line > lineStarts.length) return null;
+      const start = lineStarts[line - 1];
+      let end = lineStarts[line];
+      while (end && end > start && src[end - 1] === "\n") --end;
+      return src.slice(start, end);
+    }
+    function getPrettyContext({
+      start,
+      end
+    }, cst, maxWidth = 80) {
+      let src = getLine(start.line, cst);
+      if (!src) return null;
+      let {
+        col
+      } = start;
+      if (src.length > maxWidth) {
+        if (col <= maxWidth - 10) {
+          src = src.substr(0, maxWidth - 1) + "\u2026";
+        } else {
+          const halfWidth = Math.round(maxWidth / 2);
+          if (src.length > col + halfWidth) src = src.substr(0, col + halfWidth - 1) + "\u2026";
+          col -= src.length - maxWidth;
+          src = "\u2026" + src.substr(1 - maxWidth);
+        }
+      }
+      let errLen = 1;
+      let errEnd = "";
+      if (end) {
+        if (end.line === start.line && col + (end.col - start.col) <= maxWidth + 1) {
+          errLen = end.col - start.col;
+        } else {
+          errLen = Math.min(src.length + 1, maxWidth) - col;
+          errEnd = "\u2026";
+        }
+      }
+      const offset = col > 1 ? " ".repeat(col - 1) : "";
+      const err = "^".repeat(errLen);
+      return `${src}
+${offset}${err}${errEnd}`;
+    }
+    var Range = class _Range {
+      static copy(orig) {
+        return new _Range(orig.start, orig.end);
+      }
+      constructor(start, end) {
+        this.start = start;
+        this.end = end || start;
+      }
+      isEmpty() {
+        return typeof this.start !== "number" || !this.end || this.end <= this.start;
+      }
+      /**
+       * Set `origStart` and `origEnd` to point to the original source range for
+       * this node, which may differ due to dropped CR characters.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRange(cr, offset) {
+        const {
+          start,
+          end
+        } = this;
+        if (cr.length === 0 || end <= cr[0]) {
+          this.origStart = start;
+          this.origEnd = end;
+          return offset;
+        }
+        let i = offset;
+        while (i < cr.length) {
+          if (cr[i] > start) break;
+          else ++i;
+        }
+        this.origStart = start + i;
+        const nextOffset = i;
+        while (i < cr.length) {
+          if (cr[i] >= end) break;
+          else ++i;
+        }
+        this.origEnd = end + i;
+        return nextOffset;
+      }
+    };
+    var Node11 = class _Node {
+      static addStringTerminator(src, offset, str) {
+        if (str[str.length - 1] === "\n") return str;
+        const next = _Node.endOfWhiteSpace(src, offset);
+        return next >= src.length || src[next] === "\n" ? str + "\n" : str;
+      }
+      // ^(---|...)
+      static atDocumentBoundary(src, offset, sep3) {
+        const ch0 = src[offset];
+        if (!ch0) return true;
+        const prev = src[offset - 1];
+        if (prev && prev !== "\n") return false;
+        if (sep3) {
+          if (ch0 !== sep3) return false;
+        } else {
+          if (ch0 !== Char.DIRECTIVES_END && ch0 !== Char.DOCUMENT_END) return false;
+        }
+        const ch1 = src[offset + 1];
+        const ch2 = src[offset + 2];
+        if (ch1 !== ch0 || ch2 !== ch0) return false;
+        const ch3 = src[offset + 3];
+        return !ch3 || ch3 === "\n" || ch3 === "	" || ch3 === " ";
+      }
+      static endOfIdentifier(src, offset) {
+        let ch = src[offset];
+        const isVerbatim = ch === "<";
+        const notOk = isVerbatim ? ["\n", "	", " ", ">"] : ["\n", "	", " ", "[", "]", "{", "}", ","];
+        while (ch && notOk.indexOf(ch) === -1) ch = src[offset += 1];
+        if (isVerbatim && ch === ">") offset += 1;
+        return offset;
+      }
+      static endOfIndent(src, offset) {
+        let ch = src[offset];
+        while (ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfLine(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== "\n") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfWhiteSpace(src, offset) {
+        let ch = src[offset];
+        while (ch === "	" || ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static startOfLine(src, offset) {
+        let ch = src[offset - 1];
+        if (ch === "\n") return offset;
+        while (ch && ch !== "\n") ch = src[offset -= 1];
+        return offset + 1;
+      }
+      /**
+       * End of indentation, or null if the line's indent level is not more
+       * than `indent`
+       *
+       * @param {string} src
+       * @param {number} indent
+       * @param {number} lineStart
+       * @returns {?number}
+       */
+      static endOfBlockIndent(src, indent, lineStart) {
+        const inEnd = _Node.endOfIndent(src, lineStart);
+        if (inEnd > lineStart + indent) {
+          return inEnd;
+        } else {
+          const wsEnd = _Node.endOfWhiteSpace(src, inEnd);
+          const ch = src[wsEnd];
+          if (!ch || ch === "\n") return wsEnd;
+        }
+        return null;
+      }
+      static atBlank(src, offset, endAsBlank) {
+        const ch = src[offset];
+        return ch === "\n" || ch === "	" || ch === " " || endAsBlank && !ch;
+      }
+      static nextNodeIsIndented(ch, indentDiff, indicatorAsIndent) {
+        if (!ch || indentDiff < 0) return false;
+        if (indentDiff > 0) return true;
+        return indicatorAsIndent && ch === "-";
+      }
+      // should be at line or string end, or at next non-whitespace char
+      static normalizeOffset(src, offset) {
+        const ch = src[offset];
+        return !ch ? offset : ch !== "\n" && src[offset - 1] === "\n" ? offset - 1 : _Node.endOfWhiteSpace(src, offset);
+      }
+      // fold single newline into space, multiple newlines to N - 1 newlines
+      // presumes src[offset] === '\n'
+      static foldNewline(src, offset, indent) {
+        let inCount = 0;
+        let error = false;
+        let fold = "";
+        let ch = src[offset + 1];
+        while (ch === " " || ch === "	" || ch === "\n") {
+          switch (ch) {
+            case "\n":
+              inCount = 0;
+              offset += 1;
+              fold += "\n";
+              break;
+            case "	":
+              if (inCount <= indent) error = true;
+              offset = _Node.endOfWhiteSpace(src, offset + 2) - 1;
+              break;
+            case " ":
+              inCount += 1;
+              offset += 1;
+              break;
+          }
+          ch = src[offset + 1];
+        }
+        if (!fold) fold = " ";
+        if (ch && inCount <= indent) error = true;
+        return {
+          fold,
+          offset,
+          error
+        };
+      }
+      constructor(type, props, context) {
+        Object.defineProperty(this, "context", {
+          value: context || null,
+          writable: true
+        });
+        this.error = null;
+        this.range = null;
+        this.valueRange = null;
+        this.props = props || [];
+        this.type = type;
+        this.value = null;
+      }
+      getPropValue(idx, key, skipKey) {
+        if (!this.context) return null;
+        const {
+          src
+        } = this.context;
+        const prop = this.props[idx];
+        return prop && src[prop.start] === key ? src.slice(prop.start + (skipKey ? 1 : 0), prop.end) : null;
+      }
+      get anchor() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const anchor = this.getPropValue(i, Char.ANCHOR, true);
+          if (anchor != null) return anchor;
+        }
+        return null;
+      }
+      get comment() {
+        const comments = [];
+        for (let i = 0; i < this.props.length; ++i) {
+          const comment = this.getPropValue(i, Char.COMMENT, true);
+          if (comment != null) comments.push(comment);
+        }
+        return comments.length > 0 ? comments.join("\n") : null;
+      }
+      commentHasRequiredWhitespace(start) {
+        const {
+          src
+        } = this.context;
+        if (this.header && start === this.header.end) return false;
+        if (!this.valueRange) return false;
+        const {
+          end
+        } = this.valueRange;
+        return start !== end || _Node.atBlank(src, end - 1);
+      }
+      get hasComment() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] === Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get hasProps() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] !== Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get includesTrailingLines() {
+        return false;
+      }
+      get jsonLike() {
+        const jsonLikeTypes = [Type.FLOW_MAP, Type.FLOW_SEQ, Type.QUOTE_DOUBLE, Type.QUOTE_SINGLE];
+        return jsonLikeTypes.indexOf(this.type) !== -1;
+      }
+      get rangeAsLinePos() {
+        if (!this.range || !this.context) return void 0;
+        const start = getLinePos(this.range.start, this.context.root);
+        if (!start) return void 0;
+        const end = getLinePos(this.range.end, this.context.root);
+        return {
+          start,
+          end
+        };
+      }
+      get rawValue() {
+        if (!this.valueRange || !this.context) return null;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        return this.context.src.slice(start, end);
+      }
+      get tag() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const tag = this.getPropValue(i, Char.TAG, false);
+          if (tag != null) {
+            if (tag[1] === "<") {
+              return {
+                verbatim: tag.slice(2, -1)
+              };
+            } else {
+              const [_, handle, suffix] = tag.match(/^(.*!)([^!]*)$/);
+              return {
+                handle,
+                suffix
+              };
+            }
+          }
+        }
+        return null;
+      }
+      get valueRangeContainsNewline() {
+        if (!this.valueRange || !this.context) return false;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        for (let i = start; i < end; ++i) {
+          if (src[i] === "\n") return true;
+        }
+        return false;
+      }
+      parseComment(start) {
+        const {
+          src
+        } = this.context;
+        if (src[start] === Char.COMMENT) {
+          const end = _Node.endOfLine(src, start + 1);
+          const commentRange = new Range(start, end);
+          this.props.push(commentRange);
+          return end;
+        }
+        return start;
+      }
+      /**
+       * Populates the `origStart` and `origEnd` values of all ranges for this
+       * node. Extended by child classes to handle descendant nodes.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRanges(cr, offset) {
+        if (this.range) offset = this.range.setOrigRange(cr, offset);
+        if (this.valueRange) this.valueRange.setOrigRange(cr, offset);
+        this.props.forEach((prop) => prop.setOrigRange(cr, offset));
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = src.slice(range4.start, range4.end);
+        return _Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var YAMLError = class extends Error {
+      constructor(name, source, message) {
+        if (!message || !(source instanceof Node11)) throw new Error(`Invalid arguments for new ${name}`);
+        super();
+        this.name = name;
+        this.message = message;
+        this.source = source;
+      }
+      makePretty() {
+        if (!this.source) return;
+        this.nodeType = this.source.type;
+        const cst = this.source.context && this.source.context.root;
+        if (typeof this.offset === "number") {
+          this.range = new Range(this.offset, this.offset + 1);
+          const start = cst && getLinePos(this.offset, cst);
+          if (start) {
+            const end = {
+              line: start.line,
+              col: start.col + 1
+            };
+            this.linePos = {
+              start,
+              end
+            };
+          }
+          delete this.offset;
+        } else {
+          this.range = this.source.range;
+          this.linePos = this.source.rangeAsLinePos;
+        }
+        if (this.linePos) {
+          const {
+            line,
+            col
+          } = this.linePos.start;
+          this.message += ` at line ${line}, column ${col}`;
+          const ctx = cst && getPrettyContext(this.linePos, cst);
+          if (ctx) this.message += `:
+
+${ctx}
+`;
+        }
+        delete this.source;
+      }
+    };
+    var YAMLReferenceError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLReferenceError", source, message);
+      }
+    };
+    var YAMLSemanticError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSemanticError", source, message);
+      }
+    };
+    var YAMLSyntaxError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSyntaxError", source, message);
+      }
+    };
+    var YAMLWarning = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLWarning", source, message);
+      }
+    };
+    function _defineProperty(e, r, t) {
+      return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
+        value: t,
+        enumerable: true,
+        configurable: true,
+        writable: true
+      }) : e[r] = t, e;
+    }
+    function _toPrimitive(t, r) {
+      if ("object" != typeof t || !t) return t;
+      var e = t[Symbol.toPrimitive];
+      if (void 0 !== e) {
+        var i = e.call(t, r || "default");
+        if ("object" != typeof i) return i;
+        throw new TypeError("@@toPrimitive must return a primitive value.");
+      }
+      return ("string" === r ? String : Number)(t);
+    }
+    function _toPropertyKey(t) {
+      var i = _toPrimitive(t, "string");
+      return "symbol" == typeof i ? i : i + "";
+    }
+    var PlainValue = class _PlainValue extends Node11 {
+      static endOfLine(src, start, inFlow) {
+        let ch = src[start];
+        let offset = start;
+        while (ch && ch !== "\n") {
+          if (inFlow && (ch === "[" || ch === "]" || ch === "{" || ch === "}" || ch === ",")) break;
+          const next = src[offset + 1];
+          if (ch === ":" && (!next || next === "\n" || next === "	" || next === " " || inFlow && next === ",")) break;
+          if ((ch === " " || ch === "	") && next === "#") break;
+          offset += 1;
+          ch = next;
+        }
+        return offset;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        let ch = src[end - 1];
+        while (start < end && (ch === "\n" || ch === "	" || ch === " ")) ch = src[--end - 1];
+        let str = "";
+        for (let i = start; i < end; ++i) {
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            const {
+              fold,
+              offset
+            } = Node11.foldNewline(src, i, -1);
+            str += fold;
+            i = offset;
+          } else if (ch2 === " " || ch2 === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (i < end && (next === " " || next === "	")) {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch2;
+          } else {
+            str += ch2;
+          }
+        }
+        const ch0 = src[start];
+        switch (ch0) {
+          case "	": {
+            const msg = "Plain value cannot start with a tab character";
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          case "@":
+          case "`": {
+            const msg = `Plain value cannot start with reserved character ${ch0}`;
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          default:
+            return str;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          inFlow,
+          src
+        } = this.context;
+        let offset = start;
+        let valueEnd = start;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          if (Node11.atDocumentBoundary(src, offset + 1)) break;
+          const end = Node11.endOfBlockIndent(src, indent, offset + 1);
+          if (end === null || src[end] === "#") break;
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            valueEnd = _PlainValue.endOfLine(src, end, inFlow);
+            offset = valueEnd;
+          }
+        }
+        if (this.valueRange.isEmpty()) this.valueRange.start = start;
+        this.valueRange.end = valueEnd;
+        return valueEnd;
+      }
+      /**
+       * Parses a plain value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * #comment
+       *
+       * first line
+       *
+       * first line #comment
+       *
+       * first line
+       * block
+       * lines
+       *
+       * #comment
+       * block
+       * lines
+       * ```
+       * where block lines are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar, may be `\n`
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          inFlow,
+          src
+        } = context;
+        let offset = start;
+        const ch = src[offset];
+        if (ch && ch !== "#" && ch !== "\n") {
+          offset = _PlainValue.endOfLine(src, start, inFlow);
+        }
+        this.valueRange = new Range(start, offset);
+        offset = Node11.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        if (!this.hasComment || this.valueRange.isEmpty()) {
+          offset = this.parseBlockValue(offset);
+        }
+        return offset;
+      }
+    };
+    exports2.Char = Char;
+    exports2.Node = Node11;
+    exports2.PlainValue = PlainValue;
+    exports2.Range = Range;
+    exports2.Type = Type;
+    exports2.YAMLError = YAMLError;
+    exports2.YAMLReferenceError = YAMLReferenceError;
+    exports2.YAMLSemanticError = YAMLSemanticError;
+    exports2.YAMLSyntaxError = YAMLSyntaxError;
+    exports2.YAMLWarning = YAMLWarning;
+    exports2._defineProperty = _defineProperty;
+    exports2.defaultTagPrefix = defaultTagPrefix;
+    exports2.defaultTags = defaultTags;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js
+var require_parse_cst = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var BlankLine = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.BLANK_LINE);
+      }
+      /* istanbul ignore next */
+      get includesTrailingLines() {
+        return true;
+      }
+      /**
+       * Parses a blank line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first \n character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        this.range = new PlainValue.Range(start, start + 1);
+        return start + 1;
+      }
+    };
+    var CollectionItem = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.node = null;
+      }
+      get includesTrailingLines() {
+        return !!this.node && this.node.includesTrailingLines;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          atLineStart,
+          lineStart
+        } = context;
+        if (!atLineStart && this.type === PlainValue.Type.SEQ_ITEM) this.error = new PlainValue.YAMLSemanticError(this, "Sequence items must not have preceding content on the same line");
+        const indent = atLineStart ? start - lineStart : context.indent;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        let ch = src[offset];
+        const inlineComment = ch === "#";
+        const comments = [];
+        let blankLine = null;
+        while (ch === "\n" || ch === "#") {
+          if (ch === "#") {
+            const end2 = PlainValue.Node.endOfLine(src, offset + 1);
+            comments.push(new PlainValue.Range(offset, end2));
+            offset = end2;
+          } else {
+            atLineStart = true;
+            lineStart = offset + 1;
+            const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+            if (src[wsEnd] === "\n" && comments.length === 0) {
+              blankLine = new BlankLine();
+              lineStart = blankLine.parse({
+                src
+              }, lineStart);
+            }
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+          }
+          ch = src[offset];
+        }
+        if (PlainValue.Node.nextNodeIsIndented(ch, offset - (lineStart + indent), this.type !== PlainValue.Type.SEQ_ITEM)) {
+          this.node = parseNode({
+            atLineStart,
+            inCollection: false,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+        } else if (ch && lineStart > start + 1) {
+          offset = lineStart - 1;
+        }
+        if (this.node) {
+          if (blankLine) {
+            const items = context.parent.items || context.parent.contents;
+            if (items) items.push(blankLine);
+          }
+          if (comments.length) Array.prototype.push.apply(this.props, comments);
+          offset = this.node.range.end;
+        } else {
+          if (inlineComment) {
+            const c = comments[0];
+            this.props.push(c);
+            offset = c.end;
+          } else {
+            offset = PlainValue.Node.endOfLine(src, start + 1);
+          }
+        }
+        const end = this.node ? this.node.valueRange.end : offset;
+        this.valueRange = new PlainValue.Range(start, end);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.node ? this.node.setOrigRanges(cr, offset) : offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          node,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = node ? src.slice(range4.start, node.range.start) + String(node) : src.slice(range4.start, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Comment = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.COMMENT);
+      }
+      /**
+       * Parses a comment line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const offset = this.parseComment(start);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    function grabCollectionEndComments(node) {
+      let cnode = node;
+      while (cnode instanceof CollectionItem) cnode = cnode.node;
+      if (!(cnode instanceof Collection2)) return null;
+      const len = cnode.items.length;
+      let ci = -1;
+      for (let i = len - 1; i >= 0; --i) {
+        const n = cnode.items[i];
+        if (n.type === PlainValue.Type.COMMENT) {
+          const {
+            indent,
+            lineStart
+          } = n.context;
+          if (indent > 0 && n.range.start >= lineStart + indent) break;
+          ci = i;
+        } else if (n.type === PlainValue.Type.BLANK_LINE) ci = i;
+        else break;
+      }
+      if (ci === -1) return null;
+      const ca = cnode.items.splice(ci, len - ci);
+      const prevEnd = ca[0].range.start;
+      while (true) {
+        cnode.range.end = prevEnd;
+        if (cnode.valueRange && cnode.valueRange.end > prevEnd) cnode.valueRange.end = prevEnd;
+        if (cnode === node) break;
+        cnode = cnode.context.parent;
+      }
+      return ca;
+    }
+    var Collection2 = class _Collection extends PlainValue.Node {
+      static nextContentHasIndent(src, offset, indent) {
+        const lineStart = PlainValue.Node.endOfLine(src, offset) + 1;
+        offset = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+        const ch = src[offset];
+        if (!ch) return false;
+        if (offset >= lineStart + indent) return true;
+        if (ch !== "#" && ch !== "\n") return false;
+        return _Collection.nextContentHasIndent(src, offset, indent);
+      }
+      constructor(firstItem) {
+        super(firstItem.type === PlainValue.Type.SEQ_ITEM ? PlainValue.Type.SEQ : PlainValue.Type.MAP);
+        for (let i = firstItem.props.length - 1; i >= 0; --i) {
+          if (firstItem.props[i].start < firstItem.context.lineStart) {
+            this.props = firstItem.props.slice(0, i + 1);
+            firstItem.props = firstItem.props.slice(i + 1);
+            const itemRange = firstItem.props[0] || firstItem.valueRange;
+            firstItem.range.start = itemRange.start;
+            break;
+          }
+        }
+        this.items = [firstItem];
+        const ec = grabCollectionEndComments(firstItem);
+        if (ec) Array.prototype.push.apply(this.items, ec);
+      }
+      get includesTrailingLines() {
+        return this.items.length > 0;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let lineStart = PlainValue.Node.startOfLine(src, start);
+        const firstItem = this.items[0];
+        firstItem.context.parent = this;
+        this.valueRange = PlainValue.Range.copy(firstItem.valueRange);
+        const indent = firstItem.range.start - firstItem.context.lineStart;
+        let offset = start;
+        offset = PlainValue.Node.normalizeOffset(src, offset);
+        let ch = src[offset];
+        let atLineStart = PlainValue.Node.endOfWhiteSpace(src, lineStart) === offset;
+        let prevIncludesTrailingLines = false;
+        while (ch) {
+          while (ch === "\n" || ch === "#") {
+            if (atLineStart && ch === "\n" && !prevIncludesTrailingLines) {
+              const blankLine = new BlankLine();
+              offset = blankLine.parse({
+                src
+              }, offset);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+              this.items.push(blankLine);
+              offset -= 1;
+            } else if (ch === "#") {
+              if (offset < lineStart + indent && !_Collection.nextContentHasIndent(src, offset, indent)) {
+                return offset;
+              }
+              const comment = new Comment();
+              offset = comment.parse({
+                indent,
+                lineStart,
+                src
+              }, offset);
+              this.items.push(comment);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+            }
+            lineStart = offset + 1;
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+            if (PlainValue.Node.atBlank(src, offset)) {
+              const wsEnd = PlainValue.Node.endOfWhiteSpace(src, offset);
+              const next = src[wsEnd];
+              if (!next || next === "\n" || next === "#") {
+                offset = wsEnd;
+              }
+            }
+            ch = src[offset];
+            atLineStart = true;
+          }
+          if (!ch) {
+            break;
+          }
+          if (offset !== lineStart + indent && (atLineStart || ch !== ":")) {
+            if (offset < lineStart + indent) {
+              if (lineStart > start) offset = lineStart;
+              break;
+            } else if (!this.error) {
+              const msg = "All collection items must start at the same column";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          if (firstItem.type === PlainValue.Type.SEQ_ITEM) {
+            if (ch !== "-") {
+              if (lineStart > start) offset = lineStart;
+              break;
+            }
+          } else if (ch === "-" && !this.error) {
+            const next = src[offset + 1];
+            if (!next || next === "\n" || next === "	" || next === " ") {
+              const msg = "A collection cannot be both a mapping and a sequence";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          const node = parseNode({
+            atLineStart,
+            inCollection: true,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+          if (!node) return offset;
+          this.items.push(node);
+          this.valueRange.end = node.valueRange.end;
+          offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+          ch = src[offset];
+          atLineStart = false;
+          prevIncludesTrailingLines = node.includesTrailingLines;
+          if (ch) {
+            let ls = offset - 1;
+            let prev = src[ls];
+            while (prev === " " || prev === "	") prev = src[--ls];
+            if (prev === "\n") {
+              lineStart = ls + 1;
+              atLineStart = true;
+            }
+          }
+          const ec = grabCollectionEndComments(node);
+          if (ec) Array.prototype.push.apply(this.items, ec);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = src.slice(range4.start, items[0].range.start) + String(items[0]);
+        for (let i = 1; i < items.length; ++i) {
+          const item = items[i];
+          const {
+            atLineStart,
+            indent
+          } = item.context;
+          if (atLineStart) for (let i2 = 0; i2 < indent; ++i2) str += " ";
+          str += String(item);
+        }
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Directive = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.DIRECTIVE);
+        this.name = null;
+      }
+      get parameters() {
+        const raw = this.rawValue;
+        return raw ? raw.trim().split(/[ \t]+/) : [];
+      }
+      parseName(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "	" && ch !== " ") ch = src[offset += 1];
+        this.name = src.slice(start, offset);
+        return offset;
+      }
+      parseParameters(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "#") ch = src[offset += 1];
+        this.valueRange = new PlainValue.Range(start, offset);
+        return offset;
+      }
+      parse(context, start) {
+        this.context = context;
+        let offset = this.parseName(start + 1);
+        offset = this.parseParameters(offset);
+        offset = this.parseComment(offset);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    var Document = class _Document extends PlainValue.Node {
+      static startCommentOrEndBlankLine(src, start) {
+        const offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        const ch = src[offset];
+        return ch === "#" || ch === "\n" ? offset : start;
+      }
+      constructor() {
+        super(PlainValue.Type.DOCUMENT);
+        this.directives = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.documentEndMarker = null;
+      }
+      parseDirectives(start) {
+        const {
+          src
+        } = this.context;
+        this.directives = [];
+        let atLineStart = true;
+        let hasDirectives = false;
+        let offset = start;
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DIRECTIVES_END)) {
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.directives.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.directives.push(comment);
+                atLineStart = false;
+              }
+              break;
+            case "%":
+              {
+                const directive = new Directive();
+                offset = directive.parse({
+                  parent: this,
+                  src
+                }, offset);
+                this.directives.push(directive);
+                hasDirectives = true;
+                atLineStart = false;
+              }
+              break;
+            default:
+              if (hasDirectives) {
+                this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+              } else if (this.directives.length > 0) {
+                this.contents = this.directives;
+                this.directives = [];
+              }
+              return offset;
+          }
+        }
+        if (src[offset]) {
+          this.directivesEndMarker = new PlainValue.Range(offset, offset + 3);
+          return offset + 3;
+        }
+        if (hasDirectives) {
+          this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+        } else if (this.directives.length > 0) {
+          this.contents = this.directives;
+          this.directives = [];
+        }
+        return offset;
+      }
+      parseContents(start) {
+        const {
+          parseNode,
+          src
+        } = this.context;
+        if (!this.contents) this.contents = [];
+        let lineStart = start;
+        while (src[lineStart - 1] === "-") lineStart -= 1;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        let atLineStart = lineStart === start;
+        this.valueRange = new PlainValue.Range(offset);
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DOCUMENT_END)) {
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.contents.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              lineStart = offset;
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.contents.push(comment);
+                atLineStart = false;
+              }
+              break;
+            default: {
+              const iEnd = PlainValue.Node.endOfIndent(src, offset);
+              const context = {
+                atLineStart,
+                indent: -1,
+                inFlow: false,
+                inCollection: false,
+                lineStart,
+                parent: this
+              };
+              const node = parseNode(context, iEnd);
+              if (!node) return this.valueRange.end = iEnd;
+              this.contents.push(node);
+              offset = node.range.end;
+              atLineStart = false;
+              const ec = grabCollectionEndComments(node);
+              if (ec) Array.prototype.push.apply(this.contents, ec);
+            }
+          }
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+        }
+        this.valueRange.end = offset;
+        if (src[offset]) {
+          this.documentEndMarker = new PlainValue.Range(offset, offset + 3);
+          offset += 3;
+          if (src[offset]) {
+            offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+            if (src[offset] === "#") {
+              const comment = new Comment();
+              offset = comment.parse({
+                src
+              }, offset);
+              this.contents.push(comment);
+            }
+            switch (src[offset]) {
+              case "\n":
+                offset += 1;
+                break;
+              case void 0:
+                break;
+              default:
+                this.error = new PlainValue.YAMLSyntaxError(this, "Document end marker line cannot have a non-comment suffix");
+            }
+          }
+        }
+        return offset;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        context.root = this;
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = src.charCodeAt(start) === 65279 ? start + 1 : start;
+        offset = this.parseDirectives(offset);
+        offset = this.parseContents(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.directives.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.directivesEndMarker) offset = this.directivesEndMarker.setOrigRange(cr, offset);
+        this.contents.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.documentEndMarker) offset = this.documentEndMarker.setOrigRange(cr, offset);
+        return offset;
+      }
+      toString() {
+        const {
+          contents,
+          directives,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = directives.join("");
+        if (contents.length > 0) {
+          if (directives.length > 0 || contents[0].type === PlainValue.Type.COMMENT) str += "---\n";
+          str += contents.join("");
+        }
+        if (str[str.length - 1] !== "\n") str += "\n";
+        return str;
+      }
+    };
+    var Alias2 = class extends PlainValue.Node {
+      /**
+       * Parses an *alias from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = PlainValue.Node.endOfIdentifier(src, start + 1);
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var Chomp = {
+      CLIP: "CLIP",
+      KEEP: "KEEP",
+      STRIP: "STRIP"
+    };
+    var BlockValue = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.blockIndent = null;
+        this.chomping = Chomp.CLIP;
+        this.header = null;
+      }
+      get includesTrailingLines() {
+        return this.chomping === Chomp.KEEP;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (this.valueRange.isEmpty()) return "";
+        let lastNewLine = null;
+        let ch = src[end - 1];
+        while (ch === "\n" || ch === "	" || ch === " ") {
+          end -= 1;
+          if (end <= start) {
+            if (this.chomping === Chomp.KEEP) break;
+            else return "";
+          }
+          if (ch === "\n") lastNewLine = end;
+          ch = src[end - 1];
+        }
+        let keepStart = end + 1;
+        if (lastNewLine) {
+          if (this.chomping === Chomp.KEEP) {
+            keepStart = lastNewLine;
+            end = this.valueRange.end;
+          } else {
+            end = lastNewLine;
+          }
+        }
+        const bi = indent + this.blockIndent;
+        const folded = this.type === PlainValue.Type.BLOCK_FOLDED;
+        let atStart = true;
+        let str = "";
+        let sep3 = "";
+        let prevMoreIndented = false;
+        for (let i = start; i < end; ++i) {
+          for (let j = 0; j < bi; ++j) {
+            if (src[i] !== " ") break;
+            i += 1;
+          }
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            if (sep3 === "\n") str += "\n";
+            else sep3 = "\n";
+          } else {
+            const lineEnd = PlainValue.Node.endOfLine(src, i);
+            const line = src.slice(i, lineEnd);
+            i = lineEnd;
+            if (folded && (ch2 === " " || ch2 === "	") && i < keepStart) {
+              if (sep3 === " ") sep3 = "\n";
+              else if (!prevMoreIndented && !atStart && sep3 === "\n") sep3 = "\n\n";
+              str += sep3 + line;
+              sep3 = lineEnd < end && src[lineEnd] || "";
+              prevMoreIndented = true;
+            } else {
+              str += sep3 + line;
+              sep3 = folded && i < keepStart ? " " : "\n";
+              prevMoreIndented = false;
+            }
+            if (atStart && line !== "") atStart = false;
+          }
+        }
+        return this.chomping === Chomp.STRIP ? str : str + "\n";
+      }
+      parseBlockHeader(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start + 1;
+        let bi = "";
+        while (true) {
+          const ch = src[offset];
+          switch (ch) {
+            case "-":
+              this.chomping = Chomp.STRIP;
+              break;
+            case "+":
+              this.chomping = Chomp.KEEP;
+              break;
+            case "0":
+            case "1":
+            case "2":
+            case "3":
+            case "4":
+            case "5":
+            case "6":
+            case "7":
+            case "8":
+            case "9":
+              bi += ch;
+              break;
+            default:
+              this.blockIndent = Number(bi) || null;
+              this.header = new PlainValue.Range(start, offset);
+              return offset;
+          }
+          offset += 1;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          src
+        } = this.context;
+        const explicit = !!this.blockIndent;
+        let offset = start;
+        let valueEnd = start;
+        let minBlockIndent = 1;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          offset += 1;
+          if (PlainValue.Node.atDocumentBoundary(src, offset)) break;
+          const end = PlainValue.Node.endOfBlockIndent(src, indent, offset);
+          if (end === null) break;
+          const ch2 = src[end];
+          const lineIndent = end - (offset + indent);
+          if (!this.blockIndent) {
+            if (src[end] !== "\n") {
+              if (lineIndent < minBlockIndent) {
+                const msg = "Block scalars with more-indented leading empty lines must use an explicit indentation indicator";
+                this.error = new PlainValue.YAMLSemanticError(this, msg);
+              }
+              this.blockIndent = lineIndent;
+            } else if (lineIndent > minBlockIndent) {
+              minBlockIndent = lineIndent;
+            }
+          } else if (ch2 && ch2 !== "\n" && lineIndent < this.blockIndent) {
+            if (src[end] === "#") break;
+            if (!this.error) {
+              const src2 = explicit ? "explicit indentation indicator" : "first line";
+              const msg = `Block scalars must not be less indented than their ${src2}`;
+              this.error = new PlainValue.YAMLSemanticError(this, msg);
+            }
+          }
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            offset = valueEnd = PlainValue.Node.endOfLine(src, end);
+          }
+        }
+        if (this.chomping !== Chomp.KEEP) {
+          offset = src[valueEnd] ? valueEnd + 1 : valueEnd;
+        }
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        return offset;
+      }
+      /**
+       * Parses a block value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * BS
+       * block
+       * lines
+       *
+       * BS #comment
+       * block
+       * lines
+       * ```
+       * where the block style BS matches the regexp `[|>][-+1-9]*` and block lines
+       * are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this block
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = this.parseBlockHeader(start);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        offset = this.parseBlockValue(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.header ? this.header.setOrigRange(cr, offset) : offset;
+      }
+    };
+    var FlowCollection = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.items = null;
+      }
+      prevNodeIsJsonLike(idx = this.items.length) {
+        const node = this.items[idx - 1];
+        return !!node && (node.jsonLike || node.type === PlainValue.Type.COMMENT && this.prevNodeIsJsonLike(idx - 1));
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          indent,
+          lineStart
+        } = context;
+        let char = src[start];
+        this.items = [{
+          char,
+          offset: start
+        }];
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        char = src[offset];
+        while (char && char !== "]" && char !== "}") {
+          switch (char) {
+            case "\n":
+              {
+                lineStart = offset + 1;
+                const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+                if (src[wsEnd] === "\n") {
+                  const blankLine = new BlankLine();
+                  lineStart = blankLine.parse({
+                    src
+                  }, lineStart);
+                  this.items.push(blankLine);
+                }
+                offset = PlainValue.Node.endOfIndent(src, lineStart);
+                if (offset <= lineStart + indent) {
+                  char = src[offset];
+                  if (offset < lineStart + indent || char !== "]" && char !== "}") {
+                    const msg = "Insufficient indentation in flow collection";
+                    this.error = new PlainValue.YAMLSemanticError(this, msg);
+                  }
+                }
+              }
+              break;
+            case ",":
+              {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.items.push(comment);
+              }
+              break;
+            case "?":
+            case ":": {
+              const next = src[offset + 1];
+              if (next === "\n" || next === "	" || next === " " || next === "," || // in-flow : after JSON-like key does not need to be followed by whitespace
+              char === ":" && this.prevNodeIsJsonLike()) {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+                break;
+              }
+            }
+            // fallthrough
+            default: {
+              const node = parseNode({
+                atLineStart: false,
+                inCollection: false,
+                inFlow: true,
+                indent: -1,
+                lineStart,
+                parent: this
+              }, offset);
+              if (!node) {
+                this.valueRange = new PlainValue.Range(start, offset);
+                return offset;
+              }
+              this.items.push(node);
+              offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+            }
+          }
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+          char = src[offset];
+        }
+        this.valueRange = new PlainValue.Range(start, offset + 1);
+        if (char) {
+          this.items.push({
+            char,
+            offset
+          });
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset + 1);
+          offset = this.parseComment(offset);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          if (node instanceof PlainValue.Node) {
+            offset = node.setOrigRanges(cr, offset);
+          } else if (cr.length === 0) {
+            node.origOffset = node.offset;
+          } else {
+            let i = offset;
+            while (i < cr.length) {
+              if (cr[i] > node.offset) break;
+              else ++i;
+            }
+            node.origOffset = node.offset + i;
+            offset = i;
+          }
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const nodes = items.filter((item) => item instanceof PlainValue.Node);
+        let str = "";
+        let prevEnd = range4.start;
+        nodes.forEach((node) => {
+          const prefix = src.slice(prevEnd, node.range.start);
+          prevEnd = node.range.end;
+          str += prefix + String(node);
+          if (str[str.length - 1] === "\n" && src[prevEnd - 1] !== "\n" && src[prevEnd] === "\n") {
+            prevEnd += 1;
+          }
+        });
+        str += src.slice(prevEnd, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var QuoteDouble = class _QuoteDouble extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== '"') {
+          offset += ch === "\\" ? 2 : 1;
+          ch = src[offset];
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== '"') errors.push(new PlainValue.YAMLSyntaxError(this, 'Missing closing "quote'));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line double-quoted string needs to be sufficiently indented"));
+          } else if (ch === "\\") {
+            i += 1;
+            switch (src[i]) {
+              case "0":
+                str += "\0";
+                break;
+              // null character
+              case "a":
+                str += "\x07";
+                break;
+              // bell character
+              case "b":
+                str += "\b";
+                break;
+              // backspace
+              case "e":
+                str += "\x1B";
+                break;
+              // escape character
+              case "f":
+                str += "\f";
+                break;
+              // form feed
+              case "n":
+                str += "\n";
+                break;
+              // line feed
+              case "r":
+                str += "\r";
+                break;
+              // carriage return
+              case "t":
+                str += "	";
+                break;
+              // horizontal tab
+              case "v":
+                str += "\v";
+                break;
+              // vertical tab
+              case "N":
+                str += "\x85";
+                break;
+              // Unicode next line
+              case "_":
+                str += "\xA0";
+                break;
+              // Unicode non-breaking space
+              case "L":
+                str += "\u2028";
+                break;
+              // Unicode line separator
+              case "P":
+                str += "\u2029";
+                break;
+              // Unicode paragraph separator
+              case " ":
+                str += " ";
+                break;
+              case '"':
+                str += '"';
+                break;
+              case "/":
+                str += "/";
+                break;
+              case "\\":
+                str += "\\";
+                break;
+              case "	":
+                str += "	";
+                break;
+              case "x":
+                str += this.parseCharCode(i + 1, 2, errors);
+                i += 2;
+                break;
+              case "u":
+                str += this.parseCharCode(i + 1, 4, errors);
+                i += 4;
+                break;
+              case "U":
+                str += this.parseCharCode(i + 1, 8, errors);
+                i += 8;
+                break;
+              case "\n":
+                while (src[i + 1] === " " || src[i + 1] === "	") i += 1;
+                break;
+              default:
+                errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(i - 1, 2)}`));
+                str += "\\" + src[i];
+            }
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      parseCharCode(offset, length, errors) {
+        const {
+          src
+        } = this.context;
+        const cc = src.substr(offset, length);
+        const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc);
+        const code = ok ? parseInt(cc, 16) : NaN;
+        if (isNaN(code)) {
+          errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(offset - 2, length + 2)}`));
+          return src.substr(offset - 2, length + 2);
+        }
+        return String.fromCodePoint(code);
+      }
+      /**
+       * Parses a "double quoted" value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteDouble.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var QuoteSingle = class _QuoteSingle extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch) {
+          if (ch === "'") {
+            if (src[offset + 1] !== "'") break;
+            ch = src[offset += 2];
+          } else {
+            ch = src[offset += 1];
+          }
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Missing closing 'quote"));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line single-quoted string needs to be sufficiently indented"));
+          } else if (ch === "'") {
+            str += ch;
+            i += 1;
+            if (src[i] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Unescaped single quote? This should not happen."));
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      /**
+       * Parses a 'single quoted' value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteSingle.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    function createNewNode(type, props) {
+      switch (type) {
+        case PlainValue.Type.ALIAS:
+          return new Alias2(type, props);
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+          return new BlockValue(type, props);
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.FLOW_SEQ:
+          return new FlowCollection(type, props);
+        case PlainValue.Type.MAP_KEY:
+        case PlainValue.Type.MAP_VALUE:
+        case PlainValue.Type.SEQ_ITEM:
+          return new CollectionItem(type, props);
+        case PlainValue.Type.COMMENT:
+        case PlainValue.Type.PLAIN:
+          return new PlainValue.PlainValue(type, props);
+        case PlainValue.Type.QUOTE_DOUBLE:
+          return new QuoteDouble(type, props);
+        case PlainValue.Type.QUOTE_SINGLE:
+          return new QuoteSingle(type, props);
+        /* istanbul ignore next */
+        default:
+          return null;
+      }
+    }
+    var ParseContext = class _ParseContext {
+      static parseType(src, offset, inFlow) {
+        switch (src[offset]) {
+          case "*":
+            return PlainValue.Type.ALIAS;
+          case ">":
+            return PlainValue.Type.BLOCK_FOLDED;
+          case "|":
+            return PlainValue.Type.BLOCK_LITERAL;
+          case "{":
+            return PlainValue.Type.FLOW_MAP;
+          case "[":
+            return PlainValue.Type.FLOW_SEQ;
+          case "?":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_KEY : PlainValue.Type.PLAIN;
+          case ":":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_VALUE : PlainValue.Type.PLAIN;
+          case "-":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.SEQ_ITEM : PlainValue.Type.PLAIN;
+          case '"':
+            return PlainValue.Type.QUOTE_DOUBLE;
+          case "'":
+            return PlainValue.Type.QUOTE_SINGLE;
+          default:
+            return PlainValue.Type.PLAIN;
+        }
+      }
+      constructor(orig = {}, {
+        atLineStart,
+        inCollection,
+        inFlow,
+        indent,
+        lineStart,
+        parent
+      } = {}) {
+        PlainValue._defineProperty(this, "parseNode", (overlay, start) => {
+          if (PlainValue.Node.atDocumentBoundary(this.src, start)) return null;
+          const context = new _ParseContext(this, overlay);
+          const {
+            props,
+            type,
+            valueStart
+          } = context.parseProps(start);
+          const node = createNewNode(type, props);
+          let offset = start;
+          try {
+            offset = node.parse(context, valueStart);
+          } catch (error) {
+            const msg = error instanceof Error ? error.message : String(error);
+            if (!node.error) node.error = new PlainValue.YAMLSyntaxError(node, msg);
+          }
+          node.range = new PlainValue.Range(start, offset);
+          if (offset <= start) {
+            if (!node.error) node.error = new Error(`Node#parse consumed no characters`);
+            node.error.parseEnd = offset;
+            node.error.source = node;
+            node.range.end = start + 1;
+          }
+          if (context.nodeStartsCollection(node)) {
+            if (!node.error && !context.atLineStart && context.parent.type === PlainValue.Type.DOCUMENT) {
+              node.error = new PlainValue.YAMLSyntaxError(node, "Block collection must not have preceding content here (e.g. directives-end indicator)");
+            }
+            const collection = new Collection2(node);
+            offset = collection.parse(new _ParseContext(context), offset);
+            collection.range = new PlainValue.Range(start, offset);
+            return collection;
+          }
+          return node;
+        });
+        this.atLineStart = atLineStart != null ? atLineStart : orig.atLineStart || false;
+        this.inCollection = inCollection != null ? inCollection : orig.inCollection || false;
+        this.inFlow = inFlow != null ? inFlow : orig.inFlow || false;
+        this.indent = indent != null ? indent : orig.indent;
+        this.lineStart = lineStart != null ? lineStart : orig.lineStart;
+        this.parent = parent != null ? parent : orig.parent || {};
+        this.root = orig.root;
+        this.src = orig.src;
+      }
+      nodeStartsCollection(node) {
+        const {
+          inCollection,
+          inFlow,
+          src
+        } = this;
+        if (inCollection || inFlow) return false;
+        if (node instanceof CollectionItem) return true;
+        let offset = node.range.end;
+        if (src[offset] === "\n" || src[offset - 1] === "\n") return false;
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        return src[offset] === ":";
+      }
+      // Anchor and tag are before type, which determines the node implementation
+      // class; hence this intermediate step.
+      parseProps(offset) {
+        const {
+          inFlow,
+          parent,
+          src
+        } = this;
+        const props = [];
+        let lineHasProps = false;
+        offset = this.atLineStart ? PlainValue.Node.endOfIndent(src, offset) : PlainValue.Node.endOfWhiteSpace(src, offset);
+        let ch = src[offset];
+        while (ch === PlainValue.Char.ANCHOR || ch === PlainValue.Char.COMMENT || ch === PlainValue.Char.TAG || ch === "\n") {
+          if (ch === "\n") {
+            let inEnd = offset;
+            let lineStart;
+            do {
+              lineStart = inEnd + 1;
+              inEnd = PlainValue.Node.endOfIndent(src, lineStart);
+            } while (src[inEnd] === "\n");
+            const indentDiff = inEnd - (lineStart + this.indent);
+            const noIndicatorAsIndent = parent.type === PlainValue.Type.SEQ_ITEM && parent.context.atLineStart;
+            if (src[inEnd] !== "#" && !PlainValue.Node.nextNodeIsIndented(src[inEnd], indentDiff, !noIndicatorAsIndent)) break;
+            this.atLineStart = true;
+            this.lineStart = lineStart;
+            lineHasProps = false;
+            offset = inEnd;
+          } else if (ch === PlainValue.Char.COMMENT) {
+            const end = PlainValue.Node.endOfLine(src, offset + 1);
+            props.push(new PlainValue.Range(offset, end));
+            offset = end;
+          } else {
+            let end = PlainValue.Node.endOfIdentifier(src, offset + 1);
+            if (ch === PlainValue.Char.TAG && src[end] === "," && /^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(src.slice(offset + 1, end + 13))) {
+              end = PlainValue.Node.endOfIdentifier(src, end + 5);
+            }
+            props.push(new PlainValue.Range(offset, end));
+            lineHasProps = true;
+            offset = PlainValue.Node.endOfWhiteSpace(src, end);
+          }
+          ch = src[offset];
+        }
+        if (lineHasProps && ch === ":" && PlainValue.Node.atBlank(src, offset + 1, true)) offset -= 1;
+        const type = _ParseContext.parseType(src, offset, inFlow);
+        return {
+          props,
+          type,
+          valueStart: offset
+        };
+      }
+    };
+    function parse3(src) {
+      const cr = [];
+      if (src.indexOf("\r") !== -1) {
+        src = src.replace(/\r\n?/g, (match, offset2) => {
+          if (match.length > 1) cr.push(offset2);
+          return "\n";
+        });
+      }
+      const documents = [];
+      let offset = 0;
+      do {
+        const doc = new Document();
+        const context = new ParseContext({
+          src
+        });
+        offset = doc.parse(context, offset);
+        documents.push(doc);
+      } while (offset < src.length);
+      documents.setOrigRanges = () => {
+        if (cr.length === 0) return false;
+        for (let i = 1; i < cr.length; ++i) cr[i] -= i;
+        let crOffset = 0;
+        for (let i = 0; i < documents.length; ++i) {
+          crOffset = documents[i].setOrigRanges(cr, crOffset);
+        }
+        cr.splice(0, cr.length);
+        return true;
+      };
+      documents.toString = () => documents.join("...\n");
+      return documents;
+    }
+    exports2.parse = parse3;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js
+var require_resolveSeq_95613e94 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    function addCommentBefore(str, indent, comment) {
+      if (!comment) return str;
+      const cc = comment.replace(/[\s\S]^/gm, `$&${indent}#`);
+      return `#${cc}
+${indent}${str}`;
+    }
+    function addComment(str, indent, comment) {
+      return !comment ? str : comment.indexOf("\n") === -1 ? `${str} #${comment}` : `${str}
+` + comment.replace(/^/gm, `${indent || ""}#`);
+    }
+    var Node11 = class {
+    };
+    function toJSON(value, arg, ctx) {
+      if (Array.isArray(value)) return value.map((v, i) => toJSON(v, String(i), ctx));
+      if (value && typeof value.toJSON === "function") {
+        const anchor = ctx && ctx.anchors && ctx.anchors.get(value);
+        if (anchor) ctx.onCreate = (res2) => {
+          anchor.res = res2;
+          delete ctx.onCreate;
+        };
+        const res = value.toJSON(arg, ctx);
+        if (anchor && ctx.onCreate) ctx.onCreate(res);
+        return res;
+      }
+      if ((!ctx || !ctx.keep) && typeof value === "bigint") return Number(value);
+      return value;
+    }
+    var Scalar2 = class extends Node11 {
+      constructor(value) {
+        super();
+        this.value = value;
+      }
+      toJSON(arg, ctx) {
+        return ctx && ctx.keep ? this.value : toJSON(this.value, arg, ctx);
+      }
+      toString() {
+        return String(this.value);
+      }
+    };
+    function collectionFromPath(schema, path23, value) {
+      let v = value;
+      for (let i = path23.length - 1; i >= 0; --i) {
+        const k = path23[i];
+        if (Number.isInteger(k) && k >= 0) {
+          const a = [];
+          a[k] = v;
+          v = a;
+        } else {
+          const o = {};
+          Object.defineProperty(o, k, {
+            value: v,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          v = o;
+        }
+      }
+      return schema.createNode(v, false);
+    }
+    var isEmptyPath = (path23) => path23 == null || typeof path23 === "object" && path23[Symbol.iterator]().next().done;
+    var Collection2 = class _Collection extends Node11 {
+      constructor(schema) {
+        super();
+        PlainValue._defineProperty(this, "items", []);
+        this.schema = schema;
+      }
+      addIn(path23, value) {
+        if (isEmptyPath(path23)) this.add(value);
+        else {
+          const [key, ...rest] = path23;
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.addIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      deleteIn([key, ...rest]) {
+        if (rest.length === 0) return this.delete(key);
+        const node = this.get(key, true);
+        if (node instanceof _Collection) return node.deleteIn(rest);
+        else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+      }
+      getIn([key, ...rest], keepScalar) {
+        const node = this.get(key, true);
+        if (rest.length === 0) return !keepScalar && node instanceof Scalar2 ? node.value : node;
+        else return node instanceof _Collection ? node.getIn(rest, keepScalar) : void 0;
+      }
+      hasAllNullValues() {
+        return this.items.every((node) => {
+          if (!node || node.type !== "PAIR") return false;
+          const n = node.value;
+          return n == null || n instanceof Scalar2 && n.value == null && !n.commentBefore && !n.comment && !n.tag;
+        });
+      }
+      hasIn([key, ...rest]) {
+        if (rest.length === 0) return this.has(key);
+        const node = this.get(key, true);
+        return node instanceof _Collection ? node.hasIn(rest) : false;
+      }
+      setIn([key, ...rest], value) {
+        if (rest.length === 0) {
+          this.set(key, value);
+        } else {
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.setIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      // overridden in implementations
+      /* istanbul ignore next */
+      toJSON() {
+        return null;
+      }
+      toString(ctx, {
+        blockItem,
+        flowChars,
+        isMap,
+        itemIndent
+      }, onComment, onChompKeep) {
+        const {
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        const inFlow = this.type === PlainValue.Type.FLOW_MAP || this.type === PlainValue.Type.FLOW_SEQ || ctx.inFlow;
+        if (inFlow) itemIndent += indentStep;
+        const allNullValues = isMap && this.hasAllNullValues();
+        ctx = Object.assign({}, ctx, {
+          allNullValues,
+          indent: itemIndent,
+          inFlow,
+          type: null
+        });
+        let chompKeep = false;
+        let hasItemWithNewLine = false;
+        const nodes = this.items.reduce((nodes2, item, i) => {
+          let comment;
+          if (item) {
+            if (!chompKeep && item.spaceBefore) nodes2.push({
+              type: "comment",
+              str: ""
+            });
+            if (item.commentBefore) item.commentBefore.match(/^.*$/gm).forEach((line) => {
+              nodes2.push({
+                type: "comment",
+                str: `#${line}`
+              });
+            });
+            if (item.comment) comment = item.comment;
+            if (inFlow && (!chompKeep && item.spaceBefore || item.commentBefore || item.comment || item.key && (item.key.commentBefore || item.key.comment) || item.value && (item.value.commentBefore || item.value.comment))) hasItemWithNewLine = true;
+          }
+          chompKeep = false;
+          let str2 = stringify3(item, ctx, () => comment = null, () => chompKeep = true);
+          if (inFlow && !hasItemWithNewLine && str2.includes("\n")) hasItemWithNewLine = true;
+          if (inFlow && i < this.items.length - 1) str2 += ",";
+          str2 = addComment(str2, itemIndent, comment);
+          if (chompKeep && (comment || inFlow)) chompKeep = false;
+          nodes2.push({
+            type: "item",
+            str: str2
+          });
+          return nodes2;
+        }, []);
+        let str;
+        if (nodes.length === 0) {
+          str = flowChars.start + flowChars.end;
+        } else if (inFlow) {
+          const {
+            start,
+            end
+          } = flowChars;
+          const strings = nodes.map((n) => n.str);
+          if (hasItemWithNewLine || strings.reduce((sum, str2) => sum + str2.length + 2, 2) > _Collection.maxFlowStringSingleLineLength) {
+            str = start;
+            for (const s of strings) {
+              str += s ? `
+${indentStep}${indent}${s}` : "\n";
+            }
+            str += `
+${indent}${end}`;
+          } else {
+            str = `${start} ${strings.join(" ")} ${end}`;
+          }
+        } else {
+          const strings = nodes.map(blockItem);
+          str = strings.shift();
+          for (const s of strings) str += s ? `
+${indent}${s}` : "\n";
+        }
+        if (this.comment) {
+          str += "\n" + this.comment.replace(/^/gm, `${indent}#`);
+          if (onComment) onComment();
+        } else if (chompKeep && onChompKeep) onChompKeep();
+        return str;
+      }
+    };
+    PlainValue._defineProperty(Collection2, "maxFlowStringSingleLineLength", 60);
+    function asItemIndex(key) {
+      let idx = key instanceof Scalar2 ? key.value : key;
+      if (idx && typeof idx === "string") idx = Number(idx);
+      return Number.isInteger(idx) && idx >= 0 ? idx : null;
+    }
+    var YAMLSeq2 = class extends Collection2 {
+      add(value) {
+        this.items.push(value);
+      }
+      delete(key) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return false;
+        const del = this.items.splice(idx, 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return void 0;
+        const it = this.items[idx];
+        return !keepScalar && it instanceof Scalar2 ? it.value : it;
+      }
+      has(key) {
+        const idx = asItemIndex(key);
+        return typeof idx === "number" && idx < this.items.length;
+      }
+      set(key, value) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") throw new Error(`Expected a valid index, not ${key}.`);
+        this.items[idx] = value;
+      }
+      toJSON(_, ctx) {
+        const seq = [];
+        if (ctx && ctx.onCreate) ctx.onCreate(seq);
+        let i = 0;
+        for (const item of this.items) seq.push(toJSON(item, String(i++), ctx));
+        return seq;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        return super.toString(ctx, {
+          blockItem: (n) => n.type === "comment" ? n.str : `- ${n.str}`,
+          flowChars: {
+            start: "[",
+            end: "]"
+          },
+          isMap: false,
+          itemIndent: (ctx.indent || "") + "  "
+        }, onComment, onChompKeep);
+      }
+    };
+    var stringifyKey = (key, jsKey, ctx) => {
+      if (jsKey === null) return "";
+      if (typeof jsKey !== "object") return String(jsKey);
+      if (key instanceof Node11 && ctx && ctx.doc) return key.toString({
+        anchors: /* @__PURE__ */ Object.create(null),
+        doc: ctx.doc,
+        indent: "",
+        indentStep: ctx.indentStep,
+        inFlow: true,
+        inStringifyKey: true,
+        stringify: ctx.stringify
+      });
+      return JSON.stringify(jsKey);
+    };
+    var Pair2 = class _Pair extends Node11 {
+      constructor(key, value = null) {
+        super();
+        this.key = key;
+        this.value = value;
+        this.type = _Pair.Type.PAIR;
+      }
+      get commentBefore() {
+        return this.key instanceof Node11 ? this.key.commentBefore : void 0;
+      }
+      set commentBefore(cb) {
+        if (this.key == null) this.key = new Scalar2(null);
+        if (this.key instanceof Node11) this.key.commentBefore = cb;
+        else {
+          const msg = "Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";
+          throw new Error(msg);
+        }
+      }
+      addToJSMap(ctx, map) {
+        const key = toJSON(this.key, "", ctx);
+        if (map instanceof Map) {
+          const value = toJSON(this.value, key, ctx);
+          map.set(key, value);
+        } else if (map instanceof Set) {
+          map.add(key);
+        } else {
+          const stringKey = stringifyKey(this.key, key, ctx);
+          const value = toJSON(this.value, stringKey, ctx);
+          if (stringKey in map) Object.defineProperty(map, stringKey, {
+            value,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          else map[stringKey] = value;
+        }
+        return map;
+      }
+      toJSON(_, ctx) {
+        const pair = ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        return this.addToJSMap(ctx, pair);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx || !ctx.doc) return JSON.stringify(this);
+        const {
+          indent: indentSize,
+          indentSeq,
+          simpleKeys
+        } = ctx.doc.options;
+        let {
+          key,
+          value
+        } = this;
+        let keyComment = key instanceof Node11 && key.comment;
+        if (simpleKeys) {
+          if (keyComment) {
+            throw new Error("With simple keys, key nodes cannot have comments");
+          }
+          if (key instanceof Collection2) {
+            const msg = "With simple keys, collection cannot be used as a key value";
+            throw new Error(msg);
+          }
+        }
+        let explicitKey = !simpleKeys && (!key || keyComment || (key instanceof Node11 ? key instanceof Collection2 || key.type === PlainValue.Type.BLOCK_FOLDED || key.type === PlainValue.Type.BLOCK_LITERAL : typeof key === "object"));
+        const {
+          doc,
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        ctx = Object.assign({}, ctx, {
+          implicitKey: !explicitKey,
+          indent: indent + indentStep
+        });
+        let chompKeep = false;
+        let str = stringify3(key, ctx, () => keyComment = null, () => chompKeep = true);
+        str = addComment(str, ctx.indent, keyComment);
+        if (!explicitKey && str.length > 1024) {
+          if (simpleKeys) throw new Error("With simple keys, single line scalar must not span more than 1024 characters");
+          explicitKey = true;
+        }
+        if (ctx.allNullValues && !simpleKeys) {
+          if (this.comment) {
+            str = addComment(str, ctx.indent, this.comment);
+            if (onComment) onComment();
+          } else if (chompKeep && !keyComment && onChompKeep) onChompKeep();
+          return ctx.inFlow && !explicitKey ? str : `? ${str}`;
+        }
+        str = explicitKey ? `? ${str}
+${indent}:` : `${str}:`;
+        if (this.comment) {
+          str = addComment(str, ctx.indent, this.comment);
+          if (onComment) onComment();
+        }
+        let vcb = "";
+        let valueComment = null;
+        if (value instanceof Node11) {
+          if (value.spaceBefore) vcb = "\n";
+          if (value.commentBefore) {
+            const cs = value.commentBefore.replace(/^/gm, `${ctx.indent}#`);
+            vcb += `
+${cs}`;
+          }
+          valueComment = value.comment;
+        } else if (value && typeof value === "object") {
+          value = doc.schema.createNode(value, true);
+        }
+        ctx.implicitKey = false;
+        if (!explicitKey && !this.comment && value instanceof Scalar2) ctx.indentAtStart = str.length + 1;
+        chompKeep = false;
+        if (!indentSeq && indentSize >= 2 && !ctx.inFlow && !explicitKey && value instanceof YAMLSeq2 && value.type !== PlainValue.Type.FLOW_SEQ && !value.tag && !doc.anchors.getName(value)) {
+          ctx.indent = ctx.indent.substr(2);
+        }
+        const valueStr = stringify3(value, ctx, () => valueComment = null, () => chompKeep = true);
+        let ws = " ";
+        if (vcb || this.comment) {
+          ws = `${vcb}
+${ctx.indent}`;
+        } else if (!explicitKey && value instanceof Collection2) {
+          const flow = valueStr[0] === "[" || valueStr[0] === "{";
+          if (!flow || valueStr.includes("\n")) ws = `
+${ctx.indent}`;
+        } else if (valueStr[0] === "\n") ws = "";
+        if (chompKeep && !valueComment && onChompKeep) onChompKeep();
+        return addComment(str + ws + valueStr, ctx.indent, valueComment);
+      }
+    };
+    PlainValue._defineProperty(Pair2, "Type", {
+      PAIR: "PAIR",
+      MERGE_PAIR: "MERGE_PAIR"
+    });
+    var getAliasCount = (node, anchors) => {
+      if (node instanceof Alias2) {
+        const anchor = anchors.get(node.source);
+        return anchor.count * anchor.aliasCount;
+      } else if (node instanceof Collection2) {
+        let count2 = 0;
+        for (const item of node.items) {
+          const c = getAliasCount(item, anchors);
+          if (c > count2) count2 = c;
+        }
+        return count2;
+      } else if (node instanceof Pair2) {
+        const kc = getAliasCount(node.key, anchors);
+        const vc = getAliasCount(node.value, anchors);
+        return Math.max(kc, vc);
+      }
+      return 1;
+    };
+    var Alias2 = class _Alias extends Node11 {
+      static stringify({
+        range: range4,
+        source
+      }, {
+        anchors,
+        doc,
+        implicitKey,
+        inStringifyKey
+      }) {
+        let anchor = Object.keys(anchors).find((a) => anchors[a] === source);
+        if (!anchor && inStringifyKey) anchor = doc.anchors.getName(source) || doc.anchors.newName();
+        if (anchor) return `*${anchor}${implicitKey ? " " : ""}`;
+        const msg = doc.anchors.getName(source) ? "Alias node must be after source node" : "Source node not found for alias node";
+        throw new Error(`${msg} [${range4}]`);
+      }
+      constructor(source) {
+        super();
+        this.source = source;
+        this.type = PlainValue.Type.ALIAS;
+      }
+      set tag(t) {
+        throw new Error("Alias nodes cannot have tags");
+      }
+      toJSON(arg, ctx) {
+        if (!ctx) return toJSON(this.source, arg, ctx);
+        const {
+          anchors,
+          maxAliasCount
+        } = ctx;
+        const anchor = anchors.get(this.source);
+        if (!anchor || anchor.res === void 0) {
+          const msg = "This should not happen: Alias anchor was not resolved?";
+          if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+          else throw new ReferenceError(msg);
+        }
+        if (maxAliasCount >= 0) {
+          anchor.count += 1;
+          if (anchor.aliasCount === 0) anchor.aliasCount = getAliasCount(this.source, anchors);
+          if (anchor.count * anchor.aliasCount > maxAliasCount) {
+            const msg = "Excessive alias count indicates a resource exhaustion attack";
+            if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+            else throw new ReferenceError(msg);
+          }
+        }
+        return anchor.res;
+      }
+      // Only called when stringifying an alias mapping key while constructing
+      // Object output.
+      toString(ctx) {
+        return _Alias.stringify(this, ctx);
+      }
+    };
+    PlainValue._defineProperty(Alias2, "default", true);
+    function findPair(items, key) {
+      const k = key instanceof Scalar2 ? key.value : key;
+      for (const it of items) {
+        if (it instanceof Pair2) {
+          if (it.key === key || it.key === k) return it;
+          if (it.key && it.key.value === k) return it;
+        }
+      }
+      return void 0;
+    }
+    var YAMLMap2 = class extends Collection2 {
+      add(pair, overwrite) {
+        if (!pair) pair = new Pair2(pair);
+        else if (!(pair instanceof Pair2)) pair = new Pair2(pair.key || pair, pair.value);
+        const prev = findPair(this.items, pair.key);
+        const sortEntries = this.schema && this.schema.sortMapEntries;
+        if (prev) {
+          if (overwrite) prev.value = pair.value;
+          else throw new Error(`Key ${pair.key} already set`);
+        } else if (sortEntries) {
+          const i = this.items.findIndex((item) => sortEntries(pair, item) < 0);
+          if (i === -1) this.items.push(pair);
+          else this.items.splice(i, 0, pair);
+        } else {
+          this.items.push(pair);
+        }
+      }
+      delete(key) {
+        const it = findPair(this.items, key);
+        if (!it) return false;
+        const del = this.items.splice(this.items.indexOf(it), 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const it = findPair(this.items, key);
+        const node = it && it.value;
+        return !keepScalar && node instanceof Scalar2 ? node.value : node;
+      }
+      has(key) {
+        return !!findPair(this.items, key);
+      }
+      set(key, value) {
+        this.add(new Pair2(key, value), true);
+      }
+      /**
+       * @param {*} arg ignored
+       * @param {*} ctx Conversion context, originally set in Document#toJSON()
+       * @param {Class} Type If set, forces the returned collection type
+       * @returns {*} Instance of Type, Map, or Object
+       */
+      toJSON(_, ctx, Type) {
+        const map = Type ? new Type() : ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const item of this.items) item.addToJSMap(ctx, map);
+        return map;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        for (const item of this.items) {
+          if (!(item instanceof Pair2)) throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`);
+        }
+        return super.toString(ctx, {
+          blockItem: (n) => n.str,
+          flowChars: {
+            start: "{",
+            end: "}"
+          },
+          isMap: true,
+          itemIndent: ctx.indent || ""
+        }, onComment, onChompKeep);
+      }
+    };
+    var MERGE_KEY = "<<";
+    var Merge2 = class extends Pair2 {
+      constructor(pair) {
+        if (pair instanceof Pair2) {
+          let seq = pair.value;
+          if (!(seq instanceof YAMLSeq2)) {
+            seq = new YAMLSeq2();
+            seq.items.push(pair.value);
+            seq.range = pair.value.range;
+          }
+          super(pair.key, seq);
+          this.range = pair.range;
+        } else {
+          super(new Scalar2(MERGE_KEY), new YAMLSeq2());
+        }
+        this.type = Pair2.Type.MERGE_PAIR;
+      }
+      // If the value associated with a merge key is a single mapping node, each of
+      // its key/value pairs is inserted into the current mapping, unless the key
+      // already exists in it. If the value associated with the merge key is a
+      // sequence, then this sequence is expected to contain mapping nodes and each
+      // of these nodes is merged in turn according to its order in the sequence.
+      // Keys in mapping nodes earlier in the sequence override keys specified in
+      // later mapping nodes. -- http://yaml.org/type/merge.html
+      addToJSMap(ctx, map) {
+        for (const {
+          source
+        } of this.value.items) {
+          if (!(source instanceof YAMLMap2)) throw new Error("Merge sources must be maps");
+          const srcMap = source.toJSON(null, ctx, Map);
+          for (const [key, value] of srcMap) {
+            if (map instanceof Map) {
+              if (!map.has(key)) map.set(key, value);
+            } else if (map instanceof Set) {
+              map.add(key);
+            } else if (!Object.prototype.hasOwnProperty.call(map, key)) {
+              Object.defineProperty(map, key, {
+                value,
+                writable: true,
+                enumerable: true,
+                configurable: true
+              });
+            }
+          }
+        }
+        return map;
+      }
+      toString(ctx, onComment) {
+        const seq = this.value;
+        if (seq.items.length > 1) return super.toString(ctx, onComment);
+        this.value = seq.items[0];
+        const str = super.toString(ctx, onComment);
+        this.value = seq;
+        return str;
+      }
+    };
+    var binaryOptions2 = {
+      defaultType: PlainValue.Type.BLOCK_LITERAL,
+      lineWidth: 76
+    };
+    var boolOptions2 = {
+      trueStr: "true",
+      falseStr: "false"
+    };
+    var intOptions2 = {
+      asBigInt: false
+    };
+    var nullOptions2 = {
+      nullStr: "null"
+    };
+    var strOptions2 = {
+      defaultType: PlainValue.Type.PLAIN,
+      doubleQuoted: {
+        jsonEncoding: false,
+        minMultiLineLength: 40
+      },
+      fold: {
+        lineWidth: 80,
+        minContentWidth: 20
+      }
+    };
+    function resolveScalar(str, tags, scalarFallback) {
+      for (const {
+        format,
+        test,
+        resolve: resolve6
+      } of tags) {
+        if (test) {
+          const match = str.match(test);
+          if (match) {
+            let res = resolve6.apply(null, match);
+            if (!(res instanceof Scalar2)) res = new Scalar2(res);
+            if (format) res.format = format;
+            return res;
+          }
+        }
+      }
+      if (scalarFallback) str = scalarFallback(str);
+      return new Scalar2(str);
+    }
+    var FOLD_FLOW = "flow";
+    var FOLD_BLOCK = "block";
+    var FOLD_QUOTED = "quoted";
+    var consumeMoreIndentedLines = (text, i) => {
+      let ch = text[i + 1];
+      while (ch === " " || ch === "	") {
+        do {
+          ch = text[i += 1];
+        } while (ch && ch !== "\n");
+        ch = text[i + 1];
+      }
+      return i;
+    };
+    function foldFlowLines(text, indent, mode, {
+      indentAtStart,
+      lineWidth = 80,
+      minContentWidth = 20,
+      onFold,
+      onOverflow
+    }) {
+      if (!lineWidth || lineWidth < 0) return text;
+      const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length);
+      if (text.length <= endStep) return text;
+      const folds = [];
+      const escapedFolds = {};
+      let end = lineWidth - indent.length;
+      if (typeof indentAtStart === "number") {
+        if (indentAtStart > lineWidth - Math.max(2, minContentWidth)) folds.push(0);
+        else end = lineWidth - indentAtStart;
+      }
+      let split = void 0;
+      let prev = void 0;
+      let overflow = false;
+      let i = -1;
+      let escStart = -1;
+      let escEnd = -1;
+      if (mode === FOLD_BLOCK) {
+        i = consumeMoreIndentedLines(text, i);
+        if (i !== -1) end = i + endStep;
+      }
+      for (let ch; ch = text[i += 1]; ) {
+        if (mode === FOLD_QUOTED && ch === "\\") {
+          escStart = i;
+          switch (text[i + 1]) {
+            case "x":
+              i += 3;
+              break;
+            case "u":
+              i += 5;
+              break;
+            case "U":
+              i += 9;
+              break;
+            default:
+              i += 1;
+          }
+          escEnd = i;
+        }
+        if (ch === "\n") {
+          if (mode === FOLD_BLOCK) i = consumeMoreIndentedLines(text, i);
+          end = i + endStep;
+          split = void 0;
+        } else {
+          if (ch === " " && prev && prev !== " " && prev !== "\n" && prev !== "	") {
+            const next = text[i + 1];
+            if (next && next !== " " && next !== "\n" && next !== "	") split = i;
+          }
+          if (i >= end) {
+            if (split) {
+              folds.push(split);
+              end = split + endStep;
+              split = void 0;
+            } else if (mode === FOLD_QUOTED) {
+              while (prev === " " || prev === "	") {
+                prev = ch;
+                ch = text[i += 1];
+                overflow = true;
+              }
+              const j = i > escEnd + 1 ? i - 2 : escStart - 1;
+              if (escapedFolds[j]) return text;
+              folds.push(j);
+              escapedFolds[j] = true;
+              end = j + endStep;
+              split = void 0;
+            } else {
+              overflow = true;
+            }
+          }
+        }
+        prev = ch;
+      }
+      if (overflow && onOverflow) onOverflow();
+      if (folds.length === 0) return text;
+      if (onFold) onFold();
+      let res = text.slice(0, folds[0]);
+      for (let i2 = 0; i2 < folds.length; ++i2) {
+        const fold = folds[i2];
+        const end2 = folds[i2 + 1] || text.length;
+        if (fold === 0) res = `
+${indent}${text.slice(0, end2)}`;
+        else {
+          if (mode === FOLD_QUOTED && escapedFolds[fold]) res += `${text[fold]}\\`;
+          res += `
+${indent}${text.slice(fold + 1, end2)}`;
+        }
+      }
+      return res;
+    }
+    var getFoldOptions = ({
+      indentAtStart
+    }) => indentAtStart ? Object.assign({
+      indentAtStart
+    }, strOptions2.fold) : strOptions2.fold;
+    var containsDocumentMarker = (str) => /^(%|---|\.\.\.)/m.test(str);
+    function lineLengthOverLimit(str, lineWidth, indentLength) {
+      if (!lineWidth || lineWidth < 0) return false;
+      const limit = lineWidth - indentLength;
+      const strLen = str.length;
+      if (strLen <= limit) return false;
+      for (let i = 0, start = 0; i < strLen; ++i) {
+        if (str[i] === "\n") {
+          if (i - start > limit) return true;
+          start = i + 1;
+          if (strLen - start <= limit) return false;
+        }
+      }
+      return true;
+    }
+    function doubleQuotedString(value, ctx) {
+      const {
+        implicitKey
+      } = ctx;
+      const {
+        jsonEncoding,
+        minMultiLineLength
+      } = strOptions2.doubleQuoted;
+      const json = JSON.stringify(value);
+      if (jsonEncoding) return json;
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      let str = "";
+      let start = 0;
+      for (let i = 0, ch = json[i]; ch; ch = json[++i]) {
+        if (ch === " " && json[i + 1] === "\\" && json[i + 2] === "n") {
+          str += json.slice(start, i) + "\\ ";
+          i += 1;
+          start = i;
+          ch = "\\";
+        }
+        if (ch === "\\") switch (json[i + 1]) {
+          case "u":
+            {
+              str += json.slice(start, i);
+              const code = json.substr(i + 2, 4);
+              switch (code) {
+                case "0000":
+                  str += "\\0";
+                  break;
+                case "0007":
+                  str += "\\a";
+                  break;
+                case "000b":
+                  str += "\\v";
+                  break;
+                case "001b":
+                  str += "\\e";
+                  break;
+                case "0085":
+                  str += "\\N";
+                  break;
+                case "00a0":
+                  str += "\\_";
+                  break;
+                case "2028":
+                  str += "\\L";
+                  break;
+                case "2029":
+                  str += "\\P";
+                  break;
+                default:
+                  if (code.substr(0, 2) === "00") str += "\\x" + code.substr(2);
+                  else str += json.substr(i, 6);
+              }
+              i += 5;
+              start = i + 1;
+            }
+            break;
+          case "n":
+            if (implicitKey || json[i + 2] === '"' || json.length < minMultiLineLength) {
+              i += 1;
+            } else {
+              str += json.slice(start, i) + "\n\n";
+              while (json[i + 2] === "\\" && json[i + 3] === "n" && json[i + 4] !== '"') {
+                str += "\n";
+                i += 2;
+              }
+              str += indent;
+              if (json[i + 2] === " ") str += "\\";
+              i += 1;
+              start = i + 1;
+            }
+            break;
+          default:
+            i += 1;
+        }
+      }
+      str = start ? str + json.slice(start) : json;
+      return implicitKey ? str : foldFlowLines(str, indent, FOLD_QUOTED, getFoldOptions(ctx));
+    }
+    function singleQuotedString(value, ctx) {
+      if (ctx.implicitKey) {
+        if (/\n/.test(value)) return doubleQuotedString(value, ctx);
+      } else {
+        if (/[ \t]\n|\n[ \t]/.test(value)) return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$&
+${indent}`) + "'";
+      return ctx.implicitKey ? res : foldFlowLines(res, indent, FOLD_FLOW, getFoldOptions(ctx));
+    }
+    function blockString({
+      comment,
+      type,
+      value
+    }, ctx, onComment, onChompKeep) {
+      if (/\n[\t ]+$/.test(value) || /^\s*$/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (ctx.forceBlockIndent || containsDocumentMarker(value) ? "  " : "");
+      const indentSize = indent ? "2" : "1";
+      const literal = type === PlainValue.Type.BLOCK_FOLDED ? false : type === PlainValue.Type.BLOCK_LITERAL ? true : !lineLengthOverLimit(value, strOptions2.fold.lineWidth, indent.length);
+      let header = literal ? "|" : ">";
+      if (!value) return header + "\n";
+      let wsStart = "";
+      let wsEnd = "";
+      value = value.replace(/[\n\t ]*$/, (ws) => {
+        const n = ws.indexOf("\n");
+        if (n === -1) {
+          header += "-";
+        } else if (value === ws || n !== ws.length - 1) {
+          header += "+";
+          if (onChompKeep) onChompKeep();
+        }
+        wsEnd = ws.replace(/\n$/, "");
+        return "";
+      }).replace(/^[\n ]*/, (ws) => {
+        if (ws.indexOf(" ") !== -1) header += indentSize;
+        const m = ws.match(/ +$/);
+        if (m) {
+          wsStart = ws.slice(0, -m[0].length);
+          return m[0];
+        } else {
+          wsStart = ws;
+          return "";
+        }
+      });
+      if (wsEnd) wsEnd = wsEnd.replace(/\n+(?!\n|$)/g, `$&${indent}`);
+      if (wsStart) wsStart = wsStart.replace(/\n+/g, `$&${indent}`);
+      if (comment) {
+        header += " #" + comment.replace(/ ?[\r\n]+/g, " ");
+        if (onComment) onComment();
+      }
+      if (!value) return `${header}${indentSize}
+${indent}${wsEnd}`;
+      if (literal) {
+        value = value.replace(/\n+/g, `$&${indent}`);
+        return `${header}
+${indent}${wsStart}${value}${wsEnd}`;
+      }
+      value = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`);
+      const body = foldFlowLines(`${wsStart}${value}${wsEnd}`, indent, FOLD_BLOCK, strOptions2.fold);
+      return `${header}
+${indent}${body}`;
+    }
+    function plainString(item, ctx, onComment, onChompKeep) {
+      const {
+        comment,
+        type,
+        value
+      } = item;
+      const {
+        actualString,
+        implicitKey,
+        indent,
+        inFlow
+      } = ctx;
+      if (implicitKey && /[\n[\]{},]/.test(value) || inFlow && /[[\]{},]/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      if (!value || /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
+        return implicitKey || inFlow || value.indexOf("\n") === -1 ? value.indexOf('"') !== -1 && value.indexOf("'") === -1 ? singleQuotedString(value, ctx) : doubleQuotedString(value, ctx) : blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (!implicitKey && !inFlow && type !== PlainValue.Type.PLAIN && value.indexOf("\n") !== -1) {
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (indent === "" && containsDocumentMarker(value)) {
+        ctx.forceBlockIndent = true;
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      const str = value.replace(/\n+/g, `$&
+${indent}`);
+      if (actualString) {
+        const {
+          tags
+        } = ctx.doc.schema;
+        const resolved = resolveScalar(str, tags, tags.scalarFallback).value;
+        if (typeof resolved !== "string") return doubleQuotedString(value, ctx);
+      }
+      const body = implicitKey ? str : foldFlowLines(str, indent, FOLD_FLOW, getFoldOptions(ctx));
+      if (comment && !inFlow && (body.indexOf("\n") !== -1 || comment.indexOf("\n") !== -1)) {
+        if (onComment) onComment();
+        return addCommentBefore(body, indent, comment);
+      }
+      return body;
+    }
+    function stringifyString(item, ctx, onComment, onChompKeep) {
+      const {
+        defaultType
+      } = strOptions2;
+      const {
+        implicitKey,
+        inFlow
+      } = ctx;
+      let {
+        type,
+        value
+      } = item;
+      if (typeof value !== "string") {
+        value = String(value);
+        item = Object.assign({}, item, {
+          value
+        });
+      }
+      const _stringify = (_type) => {
+        switch (_type) {
+          case PlainValue.Type.BLOCK_FOLDED:
+          case PlainValue.Type.BLOCK_LITERAL:
+            return blockString(item, ctx, onComment, onChompKeep);
+          case PlainValue.Type.QUOTE_DOUBLE:
+            return doubleQuotedString(value, ctx);
+          case PlainValue.Type.QUOTE_SINGLE:
+            return singleQuotedString(value, ctx);
+          case PlainValue.Type.PLAIN:
+            return plainString(item, ctx, onComment, onChompKeep);
+          default:
+            return null;
+        }
+      };
+      if (type !== PlainValue.Type.QUOTE_DOUBLE && /[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(value)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      } else if ((implicitKey || inFlow) && (type === PlainValue.Type.BLOCK_FOLDED || type === PlainValue.Type.BLOCK_LITERAL)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      }
+      let res = _stringify(type);
+      if (res === null) {
+        res = _stringify(defaultType);
+        if (res === null) throw new Error(`Unsupported default string type ${defaultType}`);
+      }
+      return res;
+    }
+    function stringifyNumber({
+      format,
+      minFractionDigits,
+      tag,
+      value
+    }) {
+      if (typeof value === "bigint") return String(value);
+      if (!isFinite(value)) return isNaN(value) ? ".nan" : value < 0 ? "-.inf" : ".inf";
+      let n = JSON.stringify(value);
+      if (!format && minFractionDigits && (!tag || tag === "tag:yaml.org,2002:float") && /^\d/.test(n)) {
+        let i = n.indexOf(".");
+        if (i < 0) {
+          i = n.length;
+          n += ".";
+        }
+        let d = minFractionDigits - (n.length - i - 1);
+        while (d-- > 0) n += "0";
+      }
+      return n;
+    }
+    function checkFlowCollectionEnd(errors, cst) {
+      let char, name;
+      switch (cst.type) {
+        case PlainValue.Type.FLOW_MAP:
+          char = "}";
+          name = "flow map";
+          break;
+        case PlainValue.Type.FLOW_SEQ:
+          char = "]";
+          name = "flow sequence";
+          break;
+        default:
+          errors.push(new PlainValue.YAMLSemanticError(cst, "Not a flow collection!?"));
+          return;
+      }
+      let lastItem;
+      for (let i = cst.items.length - 1; i >= 0; --i) {
+        const item = cst.items[i];
+        if (!item || item.type !== PlainValue.Type.COMMENT) {
+          lastItem = item;
+          break;
+        }
+      }
+      if (lastItem && lastItem.char !== char) {
+        const msg = `Expected ${name} to end with ${char}`;
+        let err;
+        if (typeof lastItem.offset === "number") {
+          err = new PlainValue.YAMLSemanticError(cst, msg);
+          err.offset = lastItem.offset + 1;
+        } else {
+          err = new PlainValue.YAMLSemanticError(lastItem, msg);
+          if (lastItem.range && lastItem.range.end) err.offset = lastItem.range.end - lastItem.range.start;
+        }
+        errors.push(err);
+      }
+    }
+    function checkFlowCommentSpace(errors, comment) {
+      const prev = comment.context.src[comment.range.start - 1];
+      if (prev !== "\n" && prev !== "	" && prev !== " ") {
+        const msg = "Comments must be separated from other tokens by white space characters";
+        errors.push(new PlainValue.YAMLSemanticError(comment, msg));
+      }
+    }
+    function getLongKeyError(source, key) {
+      const sk = String(key);
+      const k = sk.substr(0, 8) + "..." + sk.substr(-8);
+      return new PlainValue.YAMLSemanticError(source, `The "${k}" key is too long`);
+    }
+    function resolveComments(collection, comments) {
+      for (const {
+        afterKey,
+        before,
+        comment
+      } of comments) {
+        let item = collection.items[before];
+        if (!item) {
+          if (comment !== void 0) {
+            if (collection.comment) collection.comment += "\n" + comment;
+            else collection.comment = comment;
+          }
+        } else {
+          if (afterKey && item.value) item = item.value;
+          if (comment === void 0) {
+            if (afterKey || !item.commentBefore) item.spaceBefore = true;
+          } else {
+            if (item.commentBefore) item.commentBefore += "\n" + comment;
+            else item.commentBefore = comment;
+          }
+        }
+      }
+    }
+    function resolveString(doc, node) {
+      const res = node.strValue;
+      if (!res) return "";
+      if (typeof res === "string") return res;
+      res.errors.forEach((error) => {
+        if (!error.source) error.source = node;
+        doc.errors.push(error);
+      });
+      return res.str;
+    }
+    function resolveTagHandle(doc, node) {
+      const {
+        handle,
+        suffix
+      } = node.tag;
+      let prefix = doc.tagPrefixes.find((p) => p.handle === handle);
+      if (!prefix) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        if (dtp) prefix = dtp.find((p) => p.handle === handle);
+        if (!prefix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag handle is non-default and was not declared.`);
+      }
+      if (!suffix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag has no suffix.`);
+      if (handle === "!" && (doc.version || doc.options.version) === "1.0") {
+        if (suffix[0] === "^") {
+          doc.warnings.push(new PlainValue.YAMLWarning(node, "YAML 1.0 ^ tag expansion is not supported"));
+          return suffix;
+        }
+        if (/[:/]/.test(suffix)) {
+          const vocab = suffix.match(/^([a-z0-9-]+)\/(.*)/i);
+          return vocab ? `tag:${vocab[1]}.yaml.org,2002:${vocab[2]}` : `tag:${suffix}`;
+        }
+      }
+      return prefix.prefix + decodeURIComponent(suffix);
+    }
+    function resolveTagName(doc, node) {
+      const {
+        tag,
+        type
+      } = node;
+      let nonSpecific = false;
+      if (tag) {
+        const {
+          handle,
+          suffix,
+          verbatim
+        } = tag;
+        if (verbatim) {
+          if (verbatim !== "!" && verbatim !== "!!") return verbatim;
+          const msg = `Verbatim tags aren't resolved, so ${verbatim} is invalid.`;
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        } else if (handle === "!" && !suffix) {
+          nonSpecific = true;
+        } else {
+          try {
+            return resolveTagHandle(doc, node);
+          } catch (error) {
+            doc.errors.push(error);
+          }
+        }
+      }
+      switch (type) {
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+        case PlainValue.Type.QUOTE_DOUBLE:
+        case PlainValue.Type.QUOTE_SINGLE:
+          return PlainValue.defaultTags.STR;
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        case PlainValue.Type.PLAIN:
+          return nonSpecific ? PlainValue.defaultTags.STR : null;
+        default:
+          return null;
+      }
+    }
+    function resolveByTagName(doc, node, tagName) {
+      const {
+        tags
+      } = doc.schema;
+      const matchWithTest = [];
+      for (const tag of tags) {
+        if (tag.tag === tagName) {
+          if (tag.test) matchWithTest.push(tag);
+          else {
+            const res = tag.resolve(doc, node);
+            return res instanceof Collection2 ? res : new Scalar2(res);
+          }
+        }
+      }
+      const str = resolveString(doc, node);
+      if (typeof str === "string" && matchWithTest.length > 0) return resolveScalar(str, matchWithTest, tags.scalarFallback);
+      return null;
+    }
+    function getFallbackTagName({
+      type
+    }) {
+      switch (type) {
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        default:
+          return PlainValue.defaultTags.STR;
+      }
+    }
+    function resolveTag(doc, node, tagName) {
+      try {
+        const res = resolveByTagName(doc, node, tagName);
+        if (res) {
+          if (tagName && node.tag) res.tag = tagName;
+          return res;
+        }
+      } catch (error) {
+        if (error instanceof PlainValue.YAMLError) {
+          if (!error.source) error.source = node;
+          doc.errors.push(error);
+        } else {
+          const msg = error instanceof Error ? error.message : String(error);
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        }
+        return null;
+      }
+      try {
+        const fallback = getFallbackTagName(node);
+        if (!fallback) throw new Error(`The tag ${tagName} is unavailable`);
+        const msg = `The tag ${tagName} is unavailable, falling back to ${fallback}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(node, msg));
+        const res = resolveByTagName(doc, node, fallback);
+        res.tag = tagName;
+        return res;
+      } catch (error) {
+        const refError = new PlainValue.YAMLReferenceError(node, error.message);
+        refError.stack = error.stack;
+        doc.errors.push(refError);
+        return null;
+      }
+    }
+    var isCollectionItem = (node) => {
+      if (!node) return false;
+      const {
+        type
+      } = node;
+      return type === PlainValue.Type.MAP_KEY || type === PlainValue.Type.MAP_VALUE || type === PlainValue.Type.SEQ_ITEM;
+    };
+    function resolveNodeProps(errors, node) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let hasAnchor = false;
+      let hasTag = false;
+      const props = isCollectionItem(node.context.parent) ? node.context.parent.props.concat(node.props) : node.props;
+      for (const {
+        start,
+        end
+      } of props) {
+        switch (node.context.src[start]) {
+          case PlainValue.Char.COMMENT: {
+            if (!node.commentHasRequiredWhitespace(start)) {
+              const msg = "Comments must be separated from other tokens by white space characters";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            const {
+              header,
+              valueRange
+            } = node;
+            const cc = valueRange && (start > valueRange.start || header && start > header.start) ? comments.after : comments.before;
+            cc.push(node.context.src.slice(start + 1, end));
+            break;
+          }
+          // Actual anchor & tag resolution is handled by schema, here we just complain
+          case PlainValue.Char.ANCHOR:
+            if (hasAnchor) {
+              const msg = "A node can have at most one anchor";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasAnchor = true;
+            break;
+          case PlainValue.Char.TAG:
+            if (hasTag) {
+              const msg = "A node can have at most one tag";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasTag = true;
+            break;
+        }
+      }
+      return {
+        comments,
+        hasAnchor,
+        hasTag
+      };
+    }
+    function resolveNodeValue(doc, node) {
+      const {
+        anchors,
+        errors,
+        schema
+      } = doc;
+      if (node.type === PlainValue.Type.ALIAS) {
+        const name = node.rawValue;
+        const src = anchors.getNode(name);
+        if (!src) {
+          const msg = `Aliased anchor not found: ${name}`;
+          errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+        const res = new Alias2(src);
+        anchors._cstAliases.push(res);
+        return res;
+      }
+      const tagName = resolveTagName(doc, node);
+      if (tagName) return resolveTag(doc, node, tagName);
+      if (node.type !== PlainValue.Type.PLAIN) {
+        const msg = `Failed to resolve ${node.type} node here`;
+        errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+        return null;
+      }
+      try {
+        const str = resolveString(doc, node);
+        return resolveScalar(str, schema.tags, schema.tags.scalarFallback);
+      } catch (error) {
+        if (!error.source) error.source = node;
+        errors.push(error);
+        return null;
+      }
+    }
+    function resolveNode(doc, node) {
+      if (!node) return null;
+      if (node.error) doc.errors.push(node.error);
+      const {
+        comments,
+        hasAnchor,
+        hasTag
+      } = resolveNodeProps(doc.errors, node);
+      if (hasAnchor) {
+        const {
+          anchors
+        } = doc;
+        const name = node.anchor;
+        const prev = anchors.getNode(name);
+        if (prev) anchors.map[anchors.newName(name)] = prev;
+        anchors.map[name] = node;
+      }
+      if (node.type === PlainValue.Type.ALIAS && (hasAnchor || hasTag)) {
+        const msg = "An alias node must not specify any properties";
+        doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+      }
+      const res = resolveNodeValue(doc, node);
+      if (res) {
+        res.range = [node.range.start, node.range.end];
+        if (doc.options.keepCstNodes) res.cstNode = node;
+        if (doc.options.keepNodeTypes) res.type = node.type;
+        const cb = comments.before.join("\n");
+        if (cb) {
+          res.commentBefore = res.commentBefore ? `${res.commentBefore}
+${cb}` : cb;
+        }
+        const ca = comments.after.join("\n");
+        if (ca) res.comment = res.comment ? `${res.comment}
+${ca}` : ca;
+      }
+      return node.resolved = res;
+    }
+    function resolveMap(doc, cst) {
+      if (cst.type !== PlainValue.Type.MAP && cst.type !== PlainValue.Type.FLOW_MAP) {
+        const msg = `A ${cst.type} node cannot be resolved as a mapping`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_MAP ? resolveFlowMapItems(doc, cst) : resolveBlockMapItems(doc, cst);
+      const map = new YAMLMap2();
+      map.items = items;
+      resolveComments(map, comments);
+      let hasCollectionKey = false;
+      for (let i = 0; i < items.length; ++i) {
+        const {
+          key: iKey
+        } = items[i];
+        if (iKey instanceof Collection2) hasCollectionKey = true;
+        if (doc.schema.merge && iKey && iKey.value === MERGE_KEY) {
+          items[i] = new Merge2(items[i]);
+          const sources = items[i].value.items;
+          let error = null;
+          sources.some((node) => {
+            if (node instanceof Alias2) {
+              const {
+                type
+              } = node.source;
+              if (type === PlainValue.Type.MAP || type === PlainValue.Type.FLOW_MAP) return false;
+              return error = "Merge nodes aliases can only point to maps";
+            }
+            return error = "Merge nodes can only have Alias nodes as values";
+          });
+          if (error) doc.errors.push(new PlainValue.YAMLSemanticError(cst, error));
+        } else {
+          for (let j = i + 1; j < items.length; ++j) {
+            const {
+              key: jKey
+            } = items[j];
+            if (iKey === jKey || iKey && jKey && Object.prototype.hasOwnProperty.call(iKey, "value") && iKey.value === jKey.value) {
+              const msg = `Map keys must be unique; "${iKey}" is repeated`;
+              doc.errors.push(new PlainValue.YAMLSemanticError(cst, msg));
+              break;
+            }
+          }
+        }
+      }
+      if (hasCollectionKey && !doc.options.mapAsMap) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = map;
+      return map;
+    }
+    var valueHasPairComment = ({
+      context: {
+        lineStart,
+        node,
+        src
+      },
+      props
+    }) => {
+      if (props.length === 0) return false;
+      const {
+        start
+      } = props[0];
+      if (node && start > node.valueRange.start) return false;
+      if (src[start] !== PlainValue.Char.COMMENT) return false;
+      for (let i = lineStart; i < start; ++i) if (src[i] === "\n") return false;
+      return true;
+    };
+    function resolvePairComment(item, pair) {
+      if (!valueHasPairComment(item)) return;
+      const comment = item.getPropValue(0, PlainValue.Char.COMMENT, true);
+      let found = false;
+      const cb = pair.value.commentBefore;
+      if (cb && cb.startsWith(comment)) {
+        pair.value.commentBefore = cb.substr(comment.length + 1);
+        found = true;
+      } else {
+        const cc = pair.value.comment;
+        if (!item.node && cc && cc.startsWith(comment)) {
+          pair.value.comment = cc.substr(comment.length + 1);
+          found = true;
+        }
+      }
+      if (found) pair.comment = comment;
+    }
+    function resolveBlockMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let keyStart = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              afterKey: !!key,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              afterKey: !!key,
+              before: items.length,
+              comment: item.comment
+            });
+            break;
+          case PlainValue.Type.MAP_KEY:
+            if (key !== void 0) items.push(new Pair2(key));
+            if (item.error) doc.errors.push(item.error);
+            key = resolveNode(doc, item.node);
+            keyStart = null;
+            break;
+          case PlainValue.Type.MAP_VALUE:
+            {
+              if (key === void 0) key = null;
+              if (item.error) doc.errors.push(item.error);
+              if (!item.context.atLineStart && item.node && item.node.type === PlainValue.Type.MAP && !item.node.context.atLineStart) {
+                const msg = "Nested mappings are not allowed in compact mappings";
+                doc.errors.push(new PlainValue.YAMLSemanticError(item.node, msg));
+              }
+              let valueNode = item.node;
+              if (!valueNode && item.props.length > 0) {
+                valueNode = new PlainValue.PlainValue(PlainValue.Type.PLAIN, []);
+                valueNode.context = {
+                  parent: item,
+                  src: item.context.src
+                };
+                const pos = item.range.start + 1;
+                valueNode.range = {
+                  start: pos,
+                  end: pos
+                };
+                valueNode.valueRange = {
+                  start: pos,
+                  end: pos
+                };
+                if (typeof item.range.origStart === "number") {
+                  const origPos = item.range.origStart + 1;
+                  valueNode.range.origStart = valueNode.range.origEnd = origPos;
+                  valueNode.valueRange.origStart = valueNode.valueRange.origEnd = origPos;
+                }
+              }
+              const pair = new Pair2(key, resolveNode(doc, valueNode));
+              resolvePairComment(item, pair);
+              items.push(pair);
+              if (key && typeof keyStart === "number") {
+                if (item.range.start > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+              }
+              key = void 0;
+              keyStart = null;
+            }
+            break;
+          default:
+            if (key !== void 0) items.push(new Pair2(key));
+            key = resolveNode(doc, item);
+            keyStart = item.range.start;
+            if (item.error) doc.errors.push(item.error);
+            next: for (let j = i + 1; ; ++j) {
+              const nextItem = cst.items[j];
+              switch (nextItem && nextItem.type) {
+                case PlainValue.Type.BLANK_LINE:
+                case PlainValue.Type.COMMENT:
+                  continue next;
+                case PlainValue.Type.MAP_VALUE:
+                  break next;
+                default: {
+                  const msg = "Implicit map keys need to be followed by map values";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+                  break next;
+                }
+              }
+            }
+            if (item.valueRangeContainsNewline) {
+              const msg = "Implicit map keys need to be on a single line";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+        }
+      }
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let explicitKey = false;
+      let next = "{";
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char === "?" && key === void 0 && !explicitKey) {
+            explicitKey = true;
+            next = ":";
+            continue;
+          }
+          if (char === ":") {
+            if (key === void 0) key = null;
+            if (next === ":") {
+              next = ",";
+              continue;
+            }
+          } else {
+            if (explicitKey) {
+              if (key === void 0 && char !== ",") key = null;
+              explicitKey = false;
+            }
+            if (key !== void 0) {
+              items.push(new Pair2(key));
+              key = void 0;
+              if (char === ",") {
+                next = ":";
+                continue;
+              }
+            }
+          }
+          if (char === "}") {
+            if (i === cst.items.length - 1) continue;
+          } else if (char === next) {
+            next = ":";
+            continue;
+          }
+          const msg = `Flow map contains an unexpected ${char}`;
+          const err = new PlainValue.YAMLSyntaxError(cst, msg);
+          err.offset = offset;
+          doc.errors.push(err);
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            afterKey: !!key,
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            afterKey: !!key,
+            before: items.length,
+            comment: item.comment
+          });
+        } else if (key === void 0) {
+          if (next === ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Separator , missing in flow map"));
+          key = resolveNode(doc, item);
+        } else {
+          if (next !== ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Indicator : missing in flow map entry"));
+          items.push(new Pair2(key, resolveNode(doc, item)));
+          key = void 0;
+          explicitKey = false;
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveSeq(doc, cst) {
+      if (cst.type !== PlainValue.Type.SEQ && cst.type !== PlainValue.Type.FLOW_SEQ) {
+        const msg = `A ${cst.type} node cannot be resolved as a sequence`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_SEQ ? resolveFlowSeqItems(doc, cst) : resolveBlockSeqItems(doc, cst);
+      const seq = new YAMLSeq2();
+      seq.items = items;
+      resolveComments(seq, comments);
+      if (!doc.options.mapAsMap && items.some((it) => it instanceof Pair2 && it.key instanceof Collection2)) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = seq;
+      return seq;
+    }
+    function resolveBlockSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              comment: item.comment,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.SEQ_ITEM:
+            if (item.error) doc.errors.push(item.error);
+            items.push(resolveNode(doc, item.node));
+            if (item.hasProps) {
+              const msg = "Sequence items cannot have tags or anchors before the - indicator";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+            break;
+          default:
+            if (item.error) doc.errors.push(item.error);
+            doc.errors.push(new PlainValue.YAMLSyntaxError(item, `Unexpected ${item.type} node in sequence`));
+        }
+      }
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let explicitKey = false;
+      let key = void 0;
+      let keyStart = null;
+      let next = "[";
+      let prevItem = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char !== ":" && (explicitKey || key !== void 0)) {
+            if (explicitKey && key === void 0) key = next ? items.pop() : null;
+            items.push(new Pair2(key));
+            explicitKey = false;
+            key = void 0;
+            keyStart = null;
+          }
+          if (char === next) {
+            next = null;
+          } else if (!next && char === "?") {
+            explicitKey = true;
+          } else if (next !== "[" && char === ":" && key === void 0) {
+            if (next === ",") {
+              key = items.pop();
+              if (key instanceof Pair2) {
+                const msg = "Chaining flow sequence pairs is invalid";
+                const err = new PlainValue.YAMLSemanticError(cst, msg);
+                err.offset = offset;
+                doc.errors.push(err);
+              }
+              if (!explicitKey && typeof keyStart === "number") {
+                const keyEnd = item.range ? item.range.start : item.offset;
+                if (keyEnd > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+                const {
+                  src
+                } = prevItem.context;
+                for (let i2 = keyStart; i2 < keyEnd; ++i2) if (src[i2] === "\n") {
+                  const msg = "Implicit keys of flow sequence pairs need to be on a single line";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(prevItem, msg));
+                  break;
+                }
+              }
+            } else {
+              key = null;
+            }
+            keyStart = null;
+            explicitKey = false;
+            next = null;
+          } else if (next === "[" || char !== "]" || i < cst.items.length - 1) {
+            const msg = `Flow sequence contains an unexpected ${char}`;
+            const err = new PlainValue.YAMLSyntaxError(cst, msg);
+            err.offset = offset;
+            doc.errors.push(err);
+          }
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            comment: item.comment,
+            before: items.length
+          });
+        } else {
+          if (next) {
+            const msg = `Expected a ${next} in flow sequence`;
+            doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+          }
+          const value = resolveNode(doc, item);
+          if (key === void 0) {
+            items.push(value);
+            prevItem = item;
+          } else {
+            items.push(new Pair2(key, value));
+            key = void 0;
+          }
+          keyStart = item.range.start;
+          next = ",";
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    exports2.Alias = Alias2;
+    exports2.Collection = Collection2;
+    exports2.Merge = Merge2;
+    exports2.Node = Node11;
+    exports2.Pair = Pair2;
+    exports2.Scalar = Scalar2;
+    exports2.YAMLMap = YAMLMap2;
+    exports2.YAMLSeq = YAMLSeq2;
+    exports2.addComment = addComment;
+    exports2.binaryOptions = binaryOptions2;
+    exports2.boolOptions = boolOptions2;
+    exports2.findPair = findPair;
+    exports2.intOptions = intOptions2;
+    exports2.isEmptyPath = isEmptyPath;
+    exports2.nullOptions = nullOptions2;
+    exports2.resolveMap = resolveMap;
+    exports2.resolveNode = resolveNode;
+    exports2.resolveSeq = resolveSeq;
+    exports2.resolveString = resolveString;
+    exports2.strOptions = strOptions2;
+    exports2.stringifyNumber = stringifyNumber;
+    exports2.stringifyString = stringifyString;
+    exports2.toJSON = toJSON;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js
+var require_warnings_793925ce = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var binary = {
+      identify: (value) => value instanceof Uint8Array,
+      // Buffer inherits from Uint8Array
+      default: false,
+      tag: "tag:yaml.org,2002:binary",
+      /**
+       * Returns a Buffer in node and an Uint8Array in browsers
+       *
+       * To use the resulting buffer as an image, you'll want to do something like:
+       *
+       *   const blob = new Blob([buffer], { type: 'image/jpeg' })
+       *   document.querySelector('#photo').src = URL.createObjectURL(blob)
+       */
+      resolve: (doc, node) => {
+        const src = resolveSeq.resolveString(doc, node);
+        if (typeof Buffer === "function") {
+          return Buffer.from(src, "base64");
+        } else if (typeof atob === "function") {
+          const str = atob(src.replace(/[\n\r]/g, ""));
+          const buffer = new Uint8Array(str.length);
+          for (let i = 0; i < str.length; ++i) buffer[i] = str.charCodeAt(i);
+          return buffer;
+        } else {
+          const msg = "This environment does not support reading binary tags; either Buffer or atob is required";
+          doc.errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+      },
+      options: resolveSeq.binaryOptions,
+      stringify: ({
+        comment,
+        type,
+        value
+      }, ctx, onComment, onChompKeep) => {
+        let src;
+        if (typeof Buffer === "function") {
+          src = value instanceof Buffer ? value.toString("base64") : Buffer.from(value.buffer).toString("base64");
+        } else if (typeof btoa === "function") {
+          let s = "";
+          for (let i = 0; i < value.length; ++i) s += String.fromCharCode(value[i]);
+          src = btoa(s);
+        } else {
+          throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");
+        }
+        if (!type) type = resolveSeq.binaryOptions.defaultType;
+        if (type === PlainValue.Type.QUOTE_DOUBLE) {
+          value = src;
+        } else {
+          const {
+            lineWidth
+          } = resolveSeq.binaryOptions;
+          const n = Math.ceil(src.length / lineWidth);
+          const lines = new Array(n);
+          for (let i = 0, o = 0; i < n; ++i, o += lineWidth) {
+            lines[i] = src.substr(o, lineWidth);
+          }
+          value = lines.join(type === PlainValue.Type.BLOCK_LITERAL ? "\n" : " ");
+        }
+        return resolveSeq.stringifyString({
+          comment,
+          type,
+          value
+        }, ctx, onComment, onChompKeep);
+      }
+    };
+    function parsePairs(doc, cst) {
+      const seq = resolveSeq.resolveSeq(doc, cst);
+      for (let i = 0; i < seq.items.length; ++i) {
+        let item = seq.items[i];
+        if (item instanceof resolveSeq.Pair) continue;
+        else if (item instanceof resolveSeq.YAMLMap) {
+          if (item.items.length > 1) {
+            const msg = "Each pair must have its own sequence indicator";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          }
+          const pair = item.items[0] || new resolveSeq.Pair();
+          if (item.commentBefore) pair.commentBefore = pair.commentBefore ? `${item.commentBefore}
+${pair.commentBefore}` : item.commentBefore;
+          if (item.comment) pair.comment = pair.comment ? `${item.comment}
+${pair.comment}` : item.comment;
+          item = pair;
+        }
+        seq.items[i] = item instanceof resolveSeq.Pair ? item : new resolveSeq.Pair(item);
+      }
+      return seq;
+    }
+    function createPairs(schema, iterable, ctx) {
+      const pairs2 = new resolveSeq.YAMLSeq(schema);
+      pairs2.tag = "tag:yaml.org,2002:pairs";
+      for (const it of iterable) {
+        let key, value;
+        if (Array.isArray(it)) {
+          if (it.length === 2) {
+            key = it[0];
+            value = it[1];
+          } else throw new TypeError(`Expected [key, value] tuple: ${it}`);
+        } else if (it && it instanceof Object) {
+          const keys = Object.keys(it);
+          if (keys.length === 1) {
+            key = keys[0];
+            value = it[key];
+          } else throw new TypeError(`Expected { key: value } tuple: ${it}`);
+        } else {
+          key = it;
+        }
+        const pair = schema.createPair(key, value, ctx);
+        pairs2.items.push(pair);
+      }
+      return pairs2;
+    }
+    var pairs = {
+      default: false,
+      tag: "tag:yaml.org,2002:pairs",
+      resolve: parsePairs,
+      createNode: createPairs
+    };
+    var YAMLOMap = class _YAMLOMap extends resolveSeq.YAMLSeq {
+      constructor() {
+        super();
+        PlainValue._defineProperty(this, "add", resolveSeq.YAMLMap.prototype.add.bind(this));
+        PlainValue._defineProperty(this, "delete", resolveSeq.YAMLMap.prototype.delete.bind(this));
+        PlainValue._defineProperty(this, "get", resolveSeq.YAMLMap.prototype.get.bind(this));
+        PlainValue._defineProperty(this, "has", resolveSeq.YAMLMap.prototype.has.bind(this));
+        PlainValue._defineProperty(this, "set", resolveSeq.YAMLMap.prototype.set.bind(this));
+        this.tag = _YAMLOMap.tag;
+      }
+      toJSON(_, ctx) {
+        const map = /* @__PURE__ */ new Map();
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const pair of this.items) {
+          let key, value;
+          if (pair instanceof resolveSeq.Pair) {
+            key = resolveSeq.toJSON(pair.key, "", ctx);
+            value = resolveSeq.toJSON(pair.value, key, ctx);
+          } else {
+            key = resolveSeq.toJSON(pair, "", ctx);
+          }
+          if (map.has(key)) throw new Error("Ordered maps must not include duplicate keys");
+          map.set(key, value);
+        }
+        return map;
+      }
+    };
+    PlainValue._defineProperty(YAMLOMap, "tag", "tag:yaml.org,2002:omap");
+    function parseOMap(doc, cst) {
+      const pairs2 = parsePairs(doc, cst);
+      const seenKeys = [];
+      for (const {
+        key
+      } of pairs2.items) {
+        if (key instanceof resolveSeq.Scalar) {
+          if (seenKeys.includes(key.value)) {
+            const msg = "Ordered maps must not include duplicate keys";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          } else {
+            seenKeys.push(key.value);
+          }
+        }
+      }
+      return Object.assign(new YAMLOMap(), pairs2);
+    }
+    function createOMap(schema, iterable, ctx) {
+      const pairs2 = createPairs(schema, iterable, ctx);
+      const omap2 = new YAMLOMap();
+      omap2.items = pairs2.items;
+      return omap2;
+    }
+    var omap = {
+      identify: (value) => value instanceof Map,
+      nodeClass: YAMLOMap,
+      default: false,
+      tag: "tag:yaml.org,2002:omap",
+      resolve: parseOMap,
+      createNode: createOMap
+    };
+    var YAMLSet = class _YAMLSet extends resolveSeq.YAMLMap {
+      constructor() {
+        super();
+        this.tag = _YAMLSet.tag;
+      }
+      add(key) {
+        const pair = key instanceof resolveSeq.Pair ? key : new resolveSeq.Pair(key);
+        const prev = resolveSeq.findPair(this.items, pair.key);
+        if (!prev) this.items.push(pair);
+      }
+      get(key, keepPair) {
+        const pair = resolveSeq.findPair(this.items, key);
+        return !keepPair && pair instanceof resolveSeq.Pair ? pair.key instanceof resolveSeq.Scalar ? pair.key.value : pair.key : pair;
+      }
+      set(key, value) {
+        if (typeof value !== "boolean") throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`);
+        const prev = resolveSeq.findPair(this.items, key);
+        if (prev && !value) {
+          this.items.splice(this.items.indexOf(prev), 1);
+        } else if (!prev && value) {
+          this.items.push(new resolveSeq.Pair(key));
+        }
+      }
+      toJSON(_, ctx) {
+        return super.toJSON(_, ctx, Set);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        if (this.hasAllNullValues()) return super.toString(ctx, onComment, onChompKeep);
+        else throw new Error("Set items must all have null values");
+      }
+    };
+    PlainValue._defineProperty(YAMLSet, "tag", "tag:yaml.org,2002:set");
+    function parseSet(doc, cst) {
+      const map = resolveSeq.resolveMap(doc, cst);
+      if (!map.hasAllNullValues()) throw new PlainValue.YAMLSemanticError(cst, "Set items must all have null values");
+      return Object.assign(new YAMLSet(), map);
+    }
+    function createSet(schema, iterable, ctx) {
+      const set2 = new YAMLSet();
+      for (const value of iterable) set2.items.push(schema.createPair(value, null, ctx));
+      return set2;
+    }
+    var set = {
+      identify: (value) => value instanceof Set,
+      nodeClass: YAMLSet,
+      default: false,
+      tag: "tag:yaml.org,2002:set",
+      resolve: parseSet,
+      createNode: createSet
+    };
+    var parseSexagesimal = (sign, parts) => {
+      const n = parts.split(":").reduce((n2, p) => n2 * 60 + Number(p), 0);
+      return sign === "-" ? -n : n;
+    };
+    var stringifySexagesimal = ({
+      value
+    }) => {
+      if (isNaN(value) || !isFinite(value)) return resolveSeq.stringifyNumber(value);
+      let sign = "";
+      if (value < 0) {
+        sign = "-";
+        value = Math.abs(value);
+      }
+      const parts = [value % 60];
+      if (value < 60) {
+        parts.unshift(0);
+      } else {
+        value = Math.round((value - parts[0]) / 60);
+        parts.unshift(value % 60);
+        if (value >= 60) {
+          value = Math.round((value - parts[0]) / 60);
+          parts.unshift(value);
+        }
+      }
+      return sign + parts.map((n) => n < 10 ? "0" + String(n) : String(n)).join(":").replace(/000000\d*$/, "");
+    };
+    var intTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var floatTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var timestamp = {
+      identify: (value) => value instanceof Date,
+      default: true,
+      tag: "tag:yaml.org,2002:timestamp",
+      // If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part
+      // may be omitted altogether, resulting in a date format. In such a case, the time part is
+      // assumed to be 00:00:00Z (start of day, UTC).
+      test: RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),
+      resolve: (str, year, month, day, hour, minute, second, millisec, tz) => {
+        if (millisec) millisec = (millisec + "00").substr(1, 3);
+        let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec || 0);
+        if (tz && tz !== "Z") {
+          let d = parseSexagesimal(tz[0], tz.slice(1));
+          if (Math.abs(d) < 30) d *= 60;
+          date -= 6e4 * d;
+        }
+        return new Date(date);
+      },
+      stringify: ({
+        value
+      }) => value.toISOString().replace(/((T00:00)?:00)?\.000Z$/, "")
+    };
+    function shouldWarn(deprecation) {
+      const env2 = typeof process !== "undefined" && process.env || {};
+      if (deprecation) {
+        if (typeof YAML_SILENCE_DEPRECATION_WARNINGS !== "undefined") return !YAML_SILENCE_DEPRECATION_WARNINGS;
+        return !env2.YAML_SILENCE_DEPRECATION_WARNINGS;
+      }
+      if (typeof YAML_SILENCE_WARNINGS !== "undefined") return !YAML_SILENCE_WARNINGS;
+      return !env2.YAML_SILENCE_WARNINGS;
+    }
+    function warn(warning, type) {
+      if (shouldWarn(false)) {
+        const emit = typeof process !== "undefined" && process.emitWarning;
+        if (emit) emit(warning, type);
+        else {
+          console.warn(type ? `${type}: ${warning}` : warning);
+        }
+      }
+    }
+    function warnFileDeprecation(filename) {
+      if (shouldWarn(true)) {
+        const path23 = filename.replace(/.*yaml[/\\]/i, "").replace(/\.js$/, "").replace(/\\/g, "/");
+        warn(`The endpoint 'yaml/${path23}' will be removed in a future release.`, "DeprecationWarning");
+      }
+    }
+    var warned = {};
+    function warnOptionDeprecation(name, alternative) {
+      if (!warned[name] && shouldWarn(true)) {
+        warned[name] = true;
+        let msg = `The option '${name}' will be removed in a future release`;
+        msg += alternative ? `, use '${alternative}' instead.` : ".";
+        warn(msg, "DeprecationWarning");
+      }
+    }
+    exports2.binary = binary;
+    exports2.floatTime = floatTime;
+    exports2.intTime = intTime;
+    exports2.omap = omap;
+    exports2.pairs = pairs;
+    exports2.set = set;
+    exports2.timestamp = timestamp;
+    exports2.warn = warn;
+    exports2.warnFileDeprecation = warnFileDeprecation;
+    exports2.warnOptionDeprecation = warnOptionDeprecation;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js
+var require_Schema_bcc6c2d7 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var warnings = require_warnings_793925ce();
+    function createMap(schema, obj, ctx) {
+      const map2 = new resolveSeq.YAMLMap(schema);
+      if (obj instanceof Map) {
+        for (const [key, value] of obj) map2.items.push(schema.createPair(key, value, ctx));
+      } else if (obj && typeof obj === "object") {
+        for (const key of Object.keys(obj)) map2.items.push(schema.createPair(key, obj[key], ctx));
+      }
+      if (typeof schema.sortMapEntries === "function") {
+        map2.items.sort(schema.sortMapEntries);
+      }
+      return map2;
+    }
+    var map = {
+      createNode: createMap,
+      default: true,
+      nodeClass: resolveSeq.YAMLMap,
+      tag: "tag:yaml.org,2002:map",
+      resolve: resolveSeq.resolveMap
+    };
+    function createSeq(schema, obj, ctx) {
+      const seq2 = new resolveSeq.YAMLSeq(schema);
+      if (obj && obj[Symbol.iterator]) {
+        for (const it of obj) {
+          const v = schema.createNode(it, ctx.wrapScalars, null, ctx);
+          seq2.items.push(v);
+        }
+      }
+      return seq2;
+    }
+    var seq = {
+      createNode: createSeq,
+      default: true,
+      nodeClass: resolveSeq.YAMLSeq,
+      tag: "tag:yaml.org,2002:seq",
+      resolve: resolveSeq.resolveSeq
+    };
+    var string = {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify(item, ctx, onComment, onChompKeep) {
+        ctx = Object.assign({
+          actualString: true
+        }, ctx);
+        return resolveSeq.stringifyString(item, ctx, onComment, onChompKeep);
+      },
+      options: resolveSeq.strOptions
+    };
+    var failsafe = [map, seq, string];
+    var intIdentify$2 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var intResolve$1 = (src, part, radix) => resolveSeq.intOptions.asBigInt ? BigInt(src) : parseInt(part, radix);
+    function intStringify$1(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify$2(value) && value >= 0) return prefix + value.toString(radix);
+      return resolveSeq.stringifyNumber(node);
+    }
+    var nullObj = {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    };
+    var boolObj = {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,
+      resolve: (str) => str[0] === "t" || str[0] === "T",
+      options: resolveSeq.boolOptions,
+      stringify: ({
+        value
+      }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr
+    };
+    var octObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^0o([0-7]+)$/,
+      resolve: (str, oct) => intResolve$1(str, oct, 8),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 8, "0o")
+    };
+    var intObj = {
+      identify: intIdentify$2,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^[-+]?[0-9]+$/,
+      resolve: (str) => intResolve$1(str, str, 10),
+      options: resolveSeq.intOptions,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var hexObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^0x([0-9a-fA-F]+)$/,
+      resolve: (str, hex2) => intResolve$1(str, hex2, 16),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 16, "0x")
+    };
+    var nanObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var expObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    };
+    var floatObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,
+      resolve(str, frac1, frac2) {
+        const frac = frac1 || frac2;
+        const node = new resolveSeq.Scalar(parseFloat(str));
+        if (frac && frac[frac.length - 1] === "0") node.minFractionDigits = frac.length;
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    };
+    var core = failsafe.concat([nullObj, boolObj, octObj, intObj, hexObj, nanObj, expObj, floatObj]);
+    var intIdentify$1 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var stringifyJSON = ({
+      value
+    }) => JSON.stringify(value);
+    var json = [map, seq, {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^null$/,
+      resolve: () => null,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^true|false$/,
+      resolve: (str) => str === "true",
+      stringify: stringifyJSON
+    }, {
+      identify: intIdentify$1,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^-?(?:0|[1-9][0-9]*)$/,
+      resolve: (str) => resolveSeq.intOptions.asBigInt ? BigInt(str) : parseInt(str, 10),
+      stringify: ({
+        value
+      }) => intIdentify$1(value) ? value.toString() : JSON.stringify(value)
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,
+      resolve: (str) => parseFloat(str),
+      stringify: stringifyJSON
+    }];
+    json.scalarFallback = (str) => {
+      throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(str)}`);
+    };
+    var boolStringify = ({
+      value
+    }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr;
+    var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
+    function intResolve(sign, src, radix) {
+      let str = src.replace(/_/g, "");
+      if (resolveSeq.intOptions.asBigInt) {
+        switch (radix) {
+          case 2:
+            str = `0b${str}`;
+            break;
+          case 8:
+            str = `0o${str}`;
+            break;
+          case 16:
+            str = `0x${str}`;
+            break;
+        }
+        const n2 = BigInt(str);
+        return sign === "-" ? BigInt(-1) * n2 : n2;
+      }
+      const n = parseInt(str, radix);
+      return sign === "-" ? -1 * n : n;
+    }
+    function intStringify(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify(value)) {
+        const str = value.toString(radix);
+        return value < 0 ? "-" + prefix + str.substr(1) : prefix + str;
+      }
+      return resolveSeq.stringifyNumber(node);
+    }
+    var yaml11 = failsafe.concat([{
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,
+      resolve: () => true,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,
+      resolve: () => false,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "BIN",
+      test: /^([-+]?)0b([0-1_]+)$/,
+      resolve: (str, sign, bin) => intResolve(sign, bin, 2),
+      stringify: (node) => intStringify(node, 2, "0b")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^([-+]?)0([0-7_]+)$/,
+      resolve: (str, sign, oct) => intResolve(sign, oct, 8),
+      stringify: (node) => intStringify(node, 8, "0")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^([-+]?)([0-9][0-9_]*)$/,
+      resolve: (str, sign, abs) => intResolve(sign, abs, 10),
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^([-+]?)0x([0-9a-fA-F_]+)$/,
+      resolve: (str, sign, hex2) => intResolve(sign, hex2, 16),
+      stringify: (node) => intStringify(node, 16, "0x")
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str.replace(/_/g, "")),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,
+      resolve(str, frac) {
+        const node = new resolveSeq.Scalar(parseFloat(str.replace(/_/g, "")));
+        if (frac) {
+          const f = frac.replace(/_/g, "");
+          if (f[f.length - 1] === "0") node.minFractionDigits = f.length;
+        }
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    }], warnings.binary, warnings.omap, warnings.pairs, warnings.set, warnings.intTime, warnings.floatTime, warnings.timestamp);
+    var schemas = {
+      core,
+      failsafe,
+      json,
+      yaml11
+    };
+    var tags = {
+      binary: warnings.binary,
+      bool: boolObj,
+      float: floatObj,
+      floatExp: expObj,
+      floatNaN: nanObj,
+      floatTime: warnings.floatTime,
+      int: intObj,
+      intHex: hexObj,
+      intOct: octObj,
+      intTime: warnings.intTime,
+      map,
+      null: nullObj,
+      omap: warnings.omap,
+      pairs: warnings.pairs,
+      seq,
+      set: warnings.set,
+      timestamp: warnings.timestamp
+    };
+    function findTagObject(value, tagName, tags2) {
+      if (tagName) {
+        const match = tags2.filter((t) => t.tag === tagName);
+        const tagObj = match.find((t) => !t.format) || match[0];
+        if (!tagObj) throw new Error(`Tag ${tagName} not found`);
+        return tagObj;
+      }
+      return tags2.find((t) => (t.identify && t.identify(value) || t.class && value instanceof t.class) && !t.format);
+    }
+    function createNode(value, tagName, ctx) {
+      if (value instanceof resolveSeq.Node) return value;
+      const {
+        defaultPrefix,
+        onTagObj,
+        prevObjects,
+        schema,
+        wrapScalars
+      } = ctx;
+      if (tagName && tagName.startsWith("!!")) tagName = defaultPrefix + tagName.slice(2);
+      let tagObj = findTagObject(value, tagName, schema.tags);
+      if (!tagObj) {
+        if (typeof value.toJSON === "function") value = value.toJSON();
+        if (!value || typeof value !== "object") return wrapScalars ? new resolveSeq.Scalar(value) : value;
+        tagObj = value instanceof Map ? map : value[Symbol.iterator] ? seq : map;
+      }
+      if (onTagObj) {
+        onTagObj(tagObj);
+        delete ctx.onTagObj;
+      }
+      const obj = {
+        value: void 0,
+        node: void 0
+      };
+      if (value && typeof value === "object" && prevObjects) {
+        const prev = prevObjects.get(value);
+        if (prev) {
+          const alias = new resolveSeq.Alias(prev);
+          ctx.aliasNodes.push(alias);
+          return alias;
+        }
+        obj.value = value;
+        prevObjects.set(value, obj);
+      }
+      obj.node = tagObj.createNode ? tagObj.createNode(ctx.schema, value, ctx) : wrapScalars ? new resolveSeq.Scalar(value) : value;
+      if (tagName && obj.node instanceof resolveSeq.Node) obj.node.tag = tagName;
+      return obj.node;
+    }
+    function getSchemaTags(schemas2, knownTags, customTags, schemaId) {
+      let tags2 = schemas2[schemaId.replace(/\W/g, "")];
+      if (!tags2) {
+        const keys = Object.keys(schemas2).map((key) => JSON.stringify(key)).join(", ");
+        throw new Error(`Unknown schema "${schemaId}"; use one of ${keys}`);
+      }
+      if (Array.isArray(customTags)) {
+        for (const tag of customTags) tags2 = tags2.concat(tag);
+      } else if (typeof customTags === "function") {
+        tags2 = customTags(tags2.slice());
+      }
+      for (let i = 0; i < tags2.length; ++i) {
+        const tag = tags2[i];
+        if (typeof tag === "string") {
+          const tagObj = knownTags[tag];
+          if (!tagObj) {
+            const keys = Object.keys(knownTags).map((key) => JSON.stringify(key)).join(", ");
+            throw new Error(`Unknown custom tag "${tag}"; use one of ${keys}`);
+          }
+          tags2[i] = tagObj;
+        }
+      }
+      return tags2;
+    }
+    var sortMapEntriesByKey = (a, b) => a.key < b.key ? -1 : a.key > b.key ? 1 : 0;
+    var Schema2 = class _Schema {
+      // TODO: remove in v2
+      constructor({
+        customTags,
+        merge: merge2,
+        schema,
+        sortMapEntries,
+        tags: deprecatedCustomTags
+      }) {
+        this.merge = !!merge2;
+        this.name = schema;
+        this.sortMapEntries = sortMapEntries === true ? sortMapEntriesByKey : sortMapEntries || null;
+        if (!customTags && deprecatedCustomTags) warnings.warnOptionDeprecation("tags", "customTags");
+        this.tags = getSchemaTags(schemas, tags, customTags || deprecatedCustomTags, schema);
+      }
+      createNode(value, wrapScalars, tagName, ctx) {
+        const baseCtx = {
+          defaultPrefix: _Schema.defaultPrefix,
+          schema: this,
+          wrapScalars
+        };
+        const createCtx = ctx ? Object.assign(ctx, baseCtx) : baseCtx;
+        return createNode(value, tagName, createCtx);
+      }
+      createPair(key, value, ctx) {
+        if (!ctx) ctx = {
+          wrapScalars: true
+        };
+        const k = this.createNode(key, ctx.wrapScalars, null, ctx);
+        const v = this.createNode(value, ctx.wrapScalars, null, ctx);
+        return new resolveSeq.Pair(k, v);
+      }
+    };
+    PlainValue._defineProperty(Schema2, "defaultPrefix", PlainValue.defaultTagPrefix);
+    PlainValue._defineProperty(Schema2, "defaultTags", PlainValue.defaultTags);
+    exports2.Schema = Schema2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js
+var require_Document_a8d0fbf9 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var defaultOptions = {
+      anchorPrefix: "a",
+      customTags: null,
+      indent: 2,
+      indentSeq: true,
+      keepCstNodes: false,
+      keepNodeTypes: true,
+      keepBlobsInJSON: true,
+      mapAsMap: false,
+      maxAliasCount: 100,
+      prettyErrors: false,
+      // TODO Set true in v2
+      simpleKeys: false,
+      version: "1.2"
+    };
+    var scalarOptions = {
+      get binary() {
+        return resolveSeq.binaryOptions;
+      },
+      set binary(opt) {
+        Object.assign(resolveSeq.binaryOptions, opt);
+      },
+      get bool() {
+        return resolveSeq.boolOptions;
+      },
+      set bool(opt) {
+        Object.assign(resolveSeq.boolOptions, opt);
+      },
+      get int() {
+        return resolveSeq.intOptions;
+      },
+      set int(opt) {
+        Object.assign(resolveSeq.intOptions, opt);
+      },
+      get null() {
+        return resolveSeq.nullOptions;
+      },
+      set null(opt) {
+        Object.assign(resolveSeq.nullOptions, opt);
+      },
+      get str() {
+        return resolveSeq.strOptions;
+      },
+      set str(opt) {
+        Object.assign(resolveSeq.strOptions, opt);
+      }
+    };
+    var documentOptions = {
+      "1.0": {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: PlainValue.defaultTagPrefix
+        }, {
+          handle: "!!",
+          prefix: "tag:private.yaml.org,2002:"
+        }]
+      },
+      1.1: {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      },
+      1.2: {
+        schema: "core",
+        merge: false,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      }
+    };
+    function stringifyTag(doc, tag) {
+      if ((doc.version || doc.options.version) === "1.0") {
+        const priv = tag.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);
+        if (priv) return "!" + priv[1];
+        const vocab = tag.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);
+        return vocab ? `!${vocab[1]}/${vocab[2]}` : `!${tag.replace(/^tag:/, "")}`;
+      }
+      let p = doc.tagPrefixes.find((p2) => tag.indexOf(p2.prefix) === 0);
+      if (!p) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        p = dtp && dtp.find((p2) => tag.indexOf(p2.prefix) === 0);
+      }
+      if (!p) return tag[0] === "!" ? tag : `!<${tag}>`;
+      const suffix = tag.substr(p.prefix.length).replace(/[!,[\]{}]/g, (ch) => ({
+        "!": "%21",
+        ",": "%2C",
+        "[": "%5B",
+        "]": "%5D",
+        "{": "%7B",
+        "}": "%7D"
+      })[ch]);
+      return p.handle + suffix;
+    }
+    function getTagObject(tags, item) {
+      if (item instanceof resolveSeq.Alias) return resolveSeq.Alias;
+      if (item.tag) {
+        const match = tags.filter((t) => t.tag === item.tag);
+        if (match.length > 0) return match.find((t) => t.format === item.format) || match[0];
+      }
+      let tagObj, obj;
+      if (item instanceof resolveSeq.Scalar) {
+        obj = item.value;
+        const match = tags.filter((t) => t.identify && t.identify(obj) || t.class && obj instanceof t.class);
+        tagObj = match.find((t) => t.format === item.format) || match.find((t) => !t.format);
+      } else {
+        obj = item;
+        tagObj = tags.find((t) => t.nodeClass && obj instanceof t.nodeClass);
+      }
+      if (!tagObj) {
+        const name = obj && obj.constructor ? obj.constructor.name : typeof obj;
+        throw new Error(`Tag not resolved for ${name} value`);
+      }
+      return tagObj;
+    }
+    function stringifyProps(node, tagObj, {
+      anchors,
+      doc
+    }) {
+      const props = [];
+      const anchor = doc.anchors.getName(node);
+      if (anchor) {
+        anchors[anchor] = node;
+        props.push(`&${anchor}`);
+      }
+      if (node.tag) {
+        props.push(stringifyTag(doc, node.tag));
+      } else if (!tagObj.default) {
+        props.push(stringifyTag(doc, tagObj.tag));
+      }
+      return props.join(" ");
+    }
+    function stringify3(item, ctx, onComment, onChompKeep) {
+      const {
+        anchors,
+        schema
+      } = ctx.doc;
+      let tagObj;
+      if (!(item instanceof resolveSeq.Node)) {
+        const createCtx = {
+          aliasNodes: [],
+          onTagObj: (o) => tagObj = o,
+          prevObjects: /* @__PURE__ */ new Map()
+        };
+        item = schema.createNode(item, true, null, createCtx);
+        for (const alias of createCtx.aliasNodes) {
+          alias.source = alias.source.node;
+          let name = anchors.getName(alias.source);
+          if (!name) {
+            name = anchors.newName();
+            anchors.map[name] = alias.source;
+          }
+        }
+      }
+      if (item instanceof resolveSeq.Pair) return item.toString(ctx, onComment, onChompKeep);
+      if (!tagObj) tagObj = getTagObject(schema.tags, item);
+      const props = stringifyProps(item, tagObj, ctx);
+      if (props.length > 0) ctx.indentAtStart = (ctx.indentAtStart || 0) + props.length + 1;
+      const str = typeof tagObj.stringify === "function" ? tagObj.stringify(item, ctx, onComment, onChompKeep) : item instanceof resolveSeq.Scalar ? resolveSeq.stringifyString(item, ctx, onComment, onChompKeep) : item.toString(ctx, onComment, onChompKeep);
+      if (!props) return str;
+      return item instanceof resolveSeq.Scalar || str[0] === "{" || str[0] === "[" ? `${props} ${str}` : `${props}
+${ctx.indent}${str}`;
+    }
+    var Anchors = class _Anchors {
+      static validAnchorNode(node) {
+        return node instanceof resolveSeq.Scalar || node instanceof resolveSeq.YAMLSeq || node instanceof resolveSeq.YAMLMap;
+      }
+      constructor(prefix) {
+        PlainValue._defineProperty(this, "map", /* @__PURE__ */ Object.create(null));
+        this.prefix = prefix;
+      }
+      createAlias(node, name) {
+        this.setAnchor(node, name);
+        return new resolveSeq.Alias(node);
+      }
+      createMergePair(...sources) {
+        const merge2 = new resolveSeq.Merge();
+        merge2.value.items = sources.map((s) => {
+          if (s instanceof resolveSeq.Alias) {
+            if (s.source instanceof resolveSeq.YAMLMap) return s;
+          } else if (s instanceof resolveSeq.YAMLMap) {
+            return this.createAlias(s);
+          }
+          throw new Error("Merge sources must be Map nodes or their Aliases");
+        });
+        return merge2;
+      }
+      getName(node) {
+        const {
+          map
+        } = this;
+        return Object.keys(map).find((a) => map[a] === node);
+      }
+      getNames() {
+        return Object.keys(this.map);
+      }
+      getNode(name) {
+        return this.map[name];
+      }
+      newName(prefix) {
+        if (!prefix) prefix = this.prefix;
+        const names = Object.keys(this.map);
+        for (let i = 1; true; ++i) {
+          const name = `${prefix}${i}`;
+          if (!names.includes(name)) return name;
+        }
+      }
+      // During parsing, map & aliases contain CST nodes
+      resolveNodes() {
+        const {
+          map,
+          _cstAliases
+        } = this;
+        Object.keys(map).forEach((a) => {
+          map[a] = map[a].resolved;
+        });
+        _cstAliases.forEach((a) => {
+          a.source = a.source.resolved;
+        });
+        delete this._cstAliases;
+      }
+      setAnchor(node, name) {
+        if (node != null && !_Anchors.validAnchorNode(node)) {
+          throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");
+        }
+        if (name && /[\x00-\x19\s,[\]{}]/.test(name)) {
+          throw new Error("Anchor names must not contain whitespace or control characters");
+        }
+        const {
+          map
+        } = this;
+        const prev = node && Object.keys(map).find((a) => map[a] === node);
+        if (prev) {
+          if (!name) {
+            return prev;
+          } else if (prev !== name) {
+            delete map[prev];
+            map[name] = node;
+          }
+        } else {
+          if (!name) {
+            if (!node) return null;
+            name = this.newName();
+          }
+          map[name] = node;
+        }
+        return name;
+      }
+    };
+    var visit2 = (node, tags) => {
+      if (node && typeof node === "object") {
+        const {
+          tag
+        } = node;
+        if (node instanceof resolveSeq.Collection) {
+          if (tag) tags[tag] = true;
+          node.items.forEach((n) => visit2(n, tags));
+        } else if (node instanceof resolveSeq.Pair) {
+          visit2(node.key, tags);
+          visit2(node.value, tags);
+        } else if (node instanceof resolveSeq.Scalar) {
+          if (tag) tags[tag] = true;
+        }
+      }
+      return tags;
+    };
+    var listTagNames = (node) => Object.keys(visit2(node, {}));
+    function parseContents(doc, contents) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let body = void 0;
+      let spaceBefore = false;
+      for (const node of contents) {
+        if (node.valueRange) {
+          if (body !== void 0) {
+            const msg = "Document contains trailing content not separated by a ... or --- line";
+            doc.errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+            break;
+          }
+          const res = resolveSeq.resolveNode(doc, node);
+          if (spaceBefore) {
+            res.spaceBefore = true;
+            spaceBefore = false;
+          }
+          body = res;
+        } else if (node.comment !== null) {
+          const cc = body === void 0 ? comments.before : comments.after;
+          cc.push(node.comment);
+        } else if (node.type === PlainValue.Type.BLANK_LINE) {
+          spaceBefore = true;
+          if (body === void 0 && comments.before.length > 0 && !doc.commentBefore) {
+            doc.commentBefore = comments.before.join("\n");
+            comments.before = [];
+          }
+        }
+      }
+      doc.contents = body || null;
+      if (!body) {
+        doc.comment = comments.before.concat(comments.after).join("\n") || null;
+      } else {
+        const cb = comments.before.join("\n");
+        if (cb) {
+          const cbNode = body instanceof resolveSeq.Collection && body.items[0] ? body.items[0] : body;
+          cbNode.commentBefore = cbNode.commentBefore ? `${cb}
+${cbNode.commentBefore}` : cb;
+        }
+        doc.comment = comments.after.join("\n") || null;
+      }
+    }
+    function resolveTagDirective({
+      tagPrefixes
+    }, directive) {
+      const [handle, prefix] = directive.parameters;
+      if (!handle || !prefix) {
+        const msg = "Insufficient parameters given for %TAG directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (tagPrefixes.some((p) => p.handle === handle)) {
+        const msg = "The %TAG directive must only be given at most once per handle in the same document.";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      return {
+        handle,
+        prefix
+      };
+    }
+    function resolveYamlDirective(doc, directive) {
+      let [version3] = directive.parameters;
+      if (directive.name === "YAML:1.0") version3 = "1.0";
+      if (!version3) {
+        const msg = "Insufficient parameters given for %YAML directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (!documentOptions[version3]) {
+        const v0 = doc.version || doc.options.version;
+        const msg = `Document will be parsed as YAML ${v0} rather than YAML ${version3}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+      }
+      return version3;
+    }
+    function parseDirectives(doc, directives, prevDoc) {
+      const directiveComments = [];
+      let hasDirectives = false;
+      for (const directive of directives) {
+        const {
+          comment,
+          name
+        } = directive;
+        switch (name) {
+          case "TAG":
+            try {
+              doc.tagPrefixes.push(resolveTagDirective(doc, directive));
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          case "YAML":
+          case "YAML:1.0":
+            if (doc.version) {
+              const msg = "The %YAML directive must only be given at most once per document.";
+              doc.errors.push(new PlainValue.YAMLSemanticError(directive, msg));
+            }
+            try {
+              doc.version = resolveYamlDirective(doc, directive);
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          default:
+            if (name) {
+              const msg = `YAML only supports %TAG and %YAML directives, and not %${name}`;
+              doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+            }
+        }
+        if (comment) directiveComments.push(comment);
+      }
+      if (prevDoc && !hasDirectives && "1.1" === (doc.version || prevDoc.version || doc.options.version)) {
+        const copyTagPrefix = ({
+          handle,
+          prefix
+        }) => ({
+          handle,
+          prefix
+        });
+        doc.tagPrefixes = prevDoc.tagPrefixes.map(copyTagPrefix);
+        doc.version = prevDoc.version;
+      }
+      doc.commentBefore = directiveComments.join("\n") || null;
+    }
+    function assertCollection(contents) {
+      if (contents instanceof resolveSeq.Collection) return true;
+      throw new Error("Expected a YAML collection as document contents");
+    }
+    var Document = class _Document {
+      constructor(options) {
+        this.anchors = new Anchors(options.anchorPrefix);
+        this.commentBefore = null;
+        this.comment = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.errors = [];
+        this.options = options;
+        this.schema = null;
+        this.tagPrefixes = [];
+        this.version = null;
+        this.warnings = [];
+      }
+      add(value) {
+        assertCollection(this.contents);
+        return this.contents.add(value);
+      }
+      addIn(path23, value) {
+        assertCollection(this.contents);
+        this.contents.addIn(path23, value);
+      }
+      delete(key) {
+        assertCollection(this.contents);
+        return this.contents.delete(key);
+      }
+      deleteIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) {
+          if (this.contents == null) return false;
+          this.contents = null;
+          return true;
+        }
+        assertCollection(this.contents);
+        return this.contents.deleteIn(path23);
+      }
+      getDefaults() {
+        return _Document.defaults[this.version] || _Document.defaults[this.options.version] || {};
+      }
+      get(key, keepScalar) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.get(key, keepScalar) : void 0;
+      }
+      getIn(path23, keepScalar) {
+        if (resolveSeq.isEmptyPath(path23)) return !keepScalar && this.contents instanceof resolveSeq.Scalar ? this.contents.value : this.contents;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.getIn(path23, keepScalar) : void 0;
+      }
+      has(key) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.has(key) : false;
+      }
+      hasIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) return this.contents !== void 0;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.hasIn(path23) : false;
+      }
+      set(key, value) {
+        assertCollection(this.contents);
+        this.contents.set(key, value);
+      }
+      setIn(path23, value) {
+        if (resolveSeq.isEmptyPath(path23)) this.contents = value;
+        else {
+          assertCollection(this.contents);
+          this.contents.setIn(path23, value);
+        }
+      }
+      setSchema(id, customTags) {
+        if (!id && !customTags && this.schema) return;
+        if (typeof id === "number") id = id.toFixed(1);
+        if (id === "1.0" || id === "1.1" || id === "1.2") {
+          if (this.version) this.version = id;
+          else this.options.version = id;
+          delete this.options.schema;
+        } else if (id && typeof id === "string") {
+          this.options.schema = id;
+        }
+        if (Array.isArray(customTags)) this.options.customTags = customTags;
+        const opt = Object.assign({}, this.getDefaults(), this.options);
+        this.schema = new Schema2.Schema(opt);
+      }
+      parse(node, prevDoc) {
+        if (this.options.keepCstNodes) this.cstNode = node;
+        if (this.options.keepNodeTypes) this.type = "DOCUMENT";
+        const {
+          directives = [],
+          contents = [],
+          directivesEndMarker,
+          error,
+          valueRange
+        } = node;
+        if (error) {
+          if (!error.source) error.source = this;
+          this.errors.push(error);
+        }
+        parseDirectives(this, directives, prevDoc);
+        if (directivesEndMarker) this.directivesEndMarker = true;
+        this.range = valueRange ? [valueRange.start, valueRange.end] : null;
+        this.setSchema();
+        this.anchors._cstAliases = [];
+        parseContents(this, contents);
+        this.anchors.resolveNodes();
+        if (this.options.prettyErrors) {
+          for (const error2 of this.errors) if (error2 instanceof PlainValue.YAMLError) error2.makePretty();
+          for (const warn of this.warnings) if (warn instanceof PlainValue.YAMLError) warn.makePretty();
+        }
+        return this;
+      }
+      listNonDefaultTags() {
+        return listTagNames(this.contents).filter((t) => t.indexOf(Schema2.Schema.defaultPrefix) !== 0);
+      }
+      setTagPrefix(handle, prefix) {
+        if (handle[0] !== "!" || handle[handle.length - 1] !== "!") throw new Error("Handle must start and end with !");
+        if (prefix) {
+          const prev = this.tagPrefixes.find((p) => p.handle === handle);
+          if (prev) prev.prefix = prefix;
+          else this.tagPrefixes.push({
+            handle,
+            prefix
+          });
+        } else {
+          this.tagPrefixes = this.tagPrefixes.filter((p) => p.handle !== handle);
+        }
+      }
+      toJSON(arg, onAnchor) {
+        const {
+          keepBlobsInJSON,
+          mapAsMap,
+          maxAliasCount
+        } = this.options;
+        const keep = keepBlobsInJSON && (typeof arg !== "string" || !(this.contents instanceof resolveSeq.Scalar));
+        const ctx = {
+          doc: this,
+          indentStep: "  ",
+          keep,
+          mapAsMap: keep && !!mapAsMap,
+          maxAliasCount,
+          stringify: stringify3
+          // Requiring directly in Pair would create circular dependencies
+        };
+        const anchorNames = Object.keys(this.anchors.map);
+        if (anchorNames.length > 0) ctx.anchors = new Map(anchorNames.map((name) => [this.anchors.map[name], {
+          alias: [],
+          aliasCount: 0,
+          count: 1
+        }]));
+        const res = resolveSeq.toJSON(this.contents, arg, ctx);
+        if (typeof onAnchor === "function" && ctx.anchors) for (const {
+          count: count2,
+          res: res2
+        } of ctx.anchors.values()) onAnchor(res2, count2);
+        return res;
+      }
+      toString() {
+        if (this.errors.length > 0) throw new Error("Document with errors cannot be stringified");
+        const indentSize = this.options.indent;
+        if (!Number.isInteger(indentSize) || indentSize <= 0) {
+          const s = JSON.stringify(indentSize);
+          throw new Error(`"indent" option must be a positive integer, not ${s}`);
+        }
+        this.setSchema();
+        const lines = [];
+        let hasDirectives = false;
+        if (this.version) {
+          let vd = "%YAML 1.2";
+          if (this.schema.name === "yaml-1.1") {
+            if (this.version === "1.0") vd = "%YAML:1.0";
+            else if (this.version === "1.1") vd = "%YAML 1.1";
+          }
+          lines.push(vd);
+          hasDirectives = true;
+        }
+        const tagNames = this.listNonDefaultTags();
+        this.tagPrefixes.forEach(({
+          handle,
+          prefix
+        }) => {
+          if (tagNames.some((t) => t.indexOf(prefix) === 0)) {
+            lines.push(`%TAG ${handle} ${prefix}`);
+            hasDirectives = true;
+          }
+        });
+        if (hasDirectives || this.directivesEndMarker) lines.push("---");
+        if (this.commentBefore) {
+          if (hasDirectives || !this.directivesEndMarker) lines.unshift("");
+          lines.unshift(this.commentBefore.replace(/^/gm, "#"));
+        }
+        const ctx = {
+          anchors: /* @__PURE__ */ Object.create(null),
+          doc: this,
+          indent: "",
+          indentStep: " ".repeat(indentSize),
+          stringify: stringify3
+          // Requiring directly in nodes would create circular dependencies
+        };
+        let chompKeep = false;
+        let contentComment = null;
+        if (this.contents) {
+          if (this.contents instanceof resolveSeq.Node) {
+            if (this.contents.spaceBefore && (hasDirectives || this.directivesEndMarker)) lines.push("");
+            if (this.contents.commentBefore) lines.push(this.contents.commentBefore.replace(/^/gm, "#"));
+            ctx.forceBlockIndent = !!this.comment;
+            contentComment = this.contents.comment;
+          }
+          const onChompKeep = contentComment ? null : () => chompKeep = true;
+          const body = stringify3(this.contents, ctx, () => contentComment = null, onChompKeep);
+          lines.push(resolveSeq.addComment(body, "", contentComment));
+        } else if (this.contents !== void 0) {
+          lines.push(stringify3(this.contents, ctx));
+        }
+        if (this.comment) {
+          if ((!chompKeep || contentComment) && lines[lines.length - 1] !== "") lines.push("");
+          lines.push(this.comment.replace(/^/gm, "#"));
+        }
+        return lines.join("\n") + "\n";
+      }
+    };
+    PlainValue._defineProperty(Document, "defaults", documentOptions);
+    exports2.Document = Document;
+    exports2.defaultOptions = defaultOptions;
+    exports2.scalarOptions = scalarOptions;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/index.js
+var require_dist = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/index.js"(exports2) {
+    "use strict";
+    var parseCst = require_parse_cst();
+    var Document$1 = require_Document_a8d0fbf9();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var PlainValue = require_PlainValue_516d5bc2();
+    var warnings = require_warnings_793925ce();
+    require_resolveSeq_95613e94();
+    function createNode(value, wrapScalars = true, tag) {
+      if (tag === void 0 && typeof wrapScalars === "string") {
+        tag = wrapScalars;
+        wrapScalars = true;
+      }
+      const options = Object.assign({}, Document$1.Document.defaults[Document$1.defaultOptions.version], Document$1.defaultOptions);
+      const schema = new Schema2.Schema(options);
+      return schema.createNode(value, wrapScalars, tag);
+    }
+    var Document = class extends Document$1.Document {
+      constructor(options) {
+        super(Object.assign({}, Document$1.defaultOptions, options));
+      }
+    };
+    function parseAllDocuments(src, options) {
+      const stream = [];
+      let prev;
+      for (const cstDoc of parseCst.parse(src)) {
+        const doc = new Document(options);
+        doc.parse(cstDoc, prev);
+        stream.push(doc);
+        prev = doc;
+      }
+      return stream;
+    }
+    function parseDocument(src, options) {
+      const cst = parseCst.parse(src);
+      const doc = new Document(options).parse(cst[0]);
+      if (cst.length > 1) {
+        const errMsg = "Source contains multiple documents; please use YAML.parseAllDocuments()";
+        doc.errors.unshift(new PlainValue.YAMLSemanticError(cst[1], errMsg));
+      }
+      return doc;
+    }
+    function parse3(src, options) {
+      const doc = parseDocument(src, options);
+      doc.warnings.forEach((warning) => warnings.warn(warning));
+      if (doc.errors.length > 0) throw doc.errors[0];
+      return doc.toJSON();
+    }
+    function stringify3(value, options) {
+      const doc = new Document(options);
+      doc.contents = value;
+      return String(doc);
+    }
+    var YAML = {
+      createNode,
+      defaultOptions: Document$1.defaultOptions,
+      Document,
+      parse: parse3,
+      parseAllDocuments,
+      parseCST: parseCst.parse,
+      parseDocument,
+      scalarOptions: Document$1.scalarOptions,
+      stringify: stringify3
+    };
+    exports2.YAML = YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/index.js
+var require_yaml = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/index.js"(exports2, module2) {
+    module2.exports = require_dist().YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/types.js
+var require_types = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/types.js"(exports2) {
+    "use strict";
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    require_PlainValue_516d5bc2();
+    require_warnings_793925ce();
+    exports2.Alias = resolveSeq.Alias;
+    exports2.Collection = resolveSeq.Collection;
+    exports2.Merge = resolveSeq.Merge;
+    exports2.Node = resolveSeq.Node;
+    exports2.Pair = resolveSeq.Pair;
+    exports2.Scalar = resolveSeq.Scalar;
+    exports2.YAMLMap = resolveSeq.YAMLMap;
+    exports2.YAMLSeq = resolveSeq.YAMLSeq;
+    exports2.binaryOptions = resolveSeq.binaryOptions;
+    exports2.boolOptions = resolveSeq.boolOptions;
+    exports2.intOptions = resolveSeq.intOptions;
+    exports2.nullOptions = resolveSeq.nullOptions;
+    exports2.strOptions = resolveSeq.strOptions;
+    exports2.Schema = Schema2.Schema;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/types.mjs
+var import_types, binaryOptions, boolOptions, intOptions, nullOptions, strOptions, Schema, Alias, Collection, Merge, Node5, Pair, Scalar, YAMLMap, YAMLSeq;
+var init_types = __esm({
+  "../../aws-cdk-lib/node_modules/yaml/types.mjs"() {
+    import_types = __toESM(require_types(), 1);
+    binaryOptions = import_types.default.binaryOptions;
+    boolOptions = import_types.default.boolOptions;
+    intOptions = import_types.default.intOptions;
+    nullOptions = import_types.default.nullOptions;
+    strOptions = import_types.default.strOptions;
+    Schema = import_types.default.Schema;
+    Alias = import_types.default.Alias;
+    Collection = import_types.default.Collection;
+    Merge = import_types.default.Merge;
+    Node5 = import_types.default.Node;
+    Pair = import_types.default.Pair;
+    Scalar = import_types.default.Scalar;
+    YAMLMap = import_types.default.YAMLMap;
+    YAMLSeq = import_types.default.YAMLSeq;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/yaml-cfn.ts
+function serialize(obj) {
+  const oldFold = strOptions.fold.lineWidth;
+  try {
+    strOptions.fold.lineWidth = 0;
+    return yaml.stringify(obj, { schema: "yaml-1.1" });
+  } finally {
+    strOptions.fold.lineWidth = oldFold;
+  }
+}
+var yaml;
+var init_yaml_cfn = __esm({
+  "../../aws-cdk-lib/core/lib/private/yaml-cfn.ts"() {
+    "use strict";
+    yaml = __toESM(require_yaml());
+    init_types();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts
+function fnJoinConcat(parts) {
+  return { "Fn::Join": ["", minimalCloudFormationJoin("", parts)] };
+}
+function tokenAwareStringify(root, space, ctx) {
+  let indent = 0;
+  const ret = new Array();
+  recurse(ctx.resolve(root, { allowIntrinsicKeys: true }));
+  switch (ret.length) {
+    case 0:
+      return void 0;
+    case 1:
+      return renderSegment(ret[0]);
+    default:
+      return fnJoinConcat(ret.map(renderSegment));
+  }
+  function recurse(obj) {
+    if (obj === void 0) {
+      return;
+    }
+    if (Token.isUnresolved(obj)) {
+      throw new UnscopedValidationError(lit`ShouldNotHappenAnymore`, "This shouldn't happen anymore");
+    }
+    if (Array.isArray(obj)) {
+      return renderCollection("[", "]", obj, recurse);
+    }
+    if (typeof obj === "object" && obj != null && !(obj instanceof Date)) {
+      if (isIntrinsic(obj) && resolvedTypeHint(obj)) {
+        renderIntrinsic(obj);
+        return;
+      }
+      return renderCollection("{", "}", definedEntries(obj), ([key, value]) => {
+        if (key.startsWith(INTRINSIC_KEY_PREFIX)) {
+          [key, value] = value;
+        }
+        recurse(key);
+        pushLiteral(prettyPunctuation(":"));
+        recurse(value);
+      });
+    }
+    pushLiteral(JSON.stringify(obj));
+  }
+  function renderCollection(pre, post, xs, each) {
+    pushLiteral(pre);
+    indent += space;
+    let atLeastOne = false;
+    for (const [comma, item] of sepIter(xs)) {
+      if (comma) {
+        pushLiteral(",");
+      }
+      pushLineBreak();
+      each(item);
+      atLeastOne = true;
+    }
+    indent -= space;
+    if (atLeastOne) {
+      pushLineBreak();
+    }
+    pushLiteral(post);
+  }
+  function renderIntrinsic(intrinsic) {
+    switch (resolvedTypeHint(intrinsic)) {
+      case "string" /* STRING */:
+        pushLiteral('"');
+        pushIntrinsic(deepQuoteStringLiterals(intrinsic));
+        pushLiteral('"');
+        return;
+      case "string-list" /* STRING_LIST */:
+        const stack = stackOf(ctx.scope);
+        const stringifyResponse = stringifyCache.obtain(stack, JSON.stringify(intrinsic), () => {
+          const id = makeUniqueId(["CdkJsonStringify", JSON.stringify(intrinsic)]);
+          return CfnUtils.stringify(stack, id, intrinsic);
+        });
+        pushIntrinsic(stringifyResponse);
+        return;
+      case "number" /* NUMBER */:
+        pushIntrinsic(intrinsic);
+        return;
+    }
+    throw new UnscopedValidationError(lit`UnexpectedTypeHint`, `Unexpected type hint: ${resolvedTypeHint(intrinsic)}`);
+  }
+  function pushLiteral(literal) {
+    let last2 = ret[ret.length - 1];
+    if (last2?.type !== "literal") {
+      last2 = { type: "literal", parts: [] };
+      ret.push(last2);
+    }
+    last2.parts.push(literal);
+  }
+  function pushIntrinsic(intrinsic) {
+    ret.push({ type: "intrinsic", intrinsic });
+  }
+  function pushLineBreak() {
+    if (space > 0) {
+      pushLiteral(`
+${" ".repeat(indent)}`);
+    }
+  }
+  function prettyPunctuation(punc) {
+    return space > 0 ? `${punc} ` : punc;
+  }
+}
+function renderSegment(s) {
+  switch (s.type) {
+    case "literal":
+      return s.parts.join("");
+    case "intrinsic":
+      return s.intrinsic;
+  }
+}
+function minimalCloudFormationJoin(delimiter, values) {
+  let i = 0;
+  while (i < values.length) {
+    const el = values[i];
+    if (isSplicableFnJoinIntrinsic(el)) {
+      values.splice(i, 1, ...el["Fn::Join"][1]);
+    } else if (i > 0 && isConcatable(values[i - 1]) && isConcatable(values[i])) {
+      values[i - 1] = `${values[i - 1]}${delimiter}${values[i]}`;
+      values.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+  return values;
+  function isSplicableFnJoinIntrinsic(obj) {
+    if (!isIntrinsic(obj)) {
+      return false;
+    }
+    if (Object.keys(obj)[0] !== "Fn::Join") {
+      return false;
+    }
+    const [delim, list] = obj["Fn::Join"];
+    if (delim !== delimiter) {
+      return false;
+    }
+    if (Token.isUnresolved(list)) {
+      return false;
+    }
+    if (!Array.isArray(list)) {
+      return false;
+    }
+    return true;
+  }
+}
+function isConcatable(obj) {
+  return ["string", "number"].includes(typeof obj) && !Token.isUnresolved(obj);
+}
+function isIntrinsic(x) {
+  if (Array.isArray(x) || x === null || typeof x !== "object") {
+    return false;
+  }
+  const keys = Object.keys(x);
+  if (keys.length !== 1) {
+    return false;
+  }
+  return keys[0] === "Ref" || isNameOfCloudFormationIntrinsic(keys[0]);
+}
+function isNameOfCloudFormationIntrinsic(name) {
+  if (!name.startsWith("Fn::")) {
+    return false;
+  }
+  return name !== "Fn::GetArtifactAtt" && name !== "Fn::GetParam";
+}
+function* sepIter(xs) {
+  let comma = false;
+  for (const item of xs) {
+    yield [comma, item];
+    comma = true;
+  }
+}
+function* definedEntries(xs) {
+  for (const [key, value] of Object.entries(xs)) {
+    if (value !== void 0) {
+      yield [key, value];
+    }
+  }
+}
+function deepQuoteStringLiterals(x) {
+  if (Array.isArray(x)) {
+    return x.map(deepQuoteStringLiterals);
+  }
+  if (typeof x === "object" && x != null) {
+    const ret = {};
+    for (const [key, value] of Object.entries(x)) {
+      ret[deepQuoteStringLiterals(key)] = deepQuoteStringLiterals(value);
+    }
+    return ret;
+  }
+  if (typeof x === "string") {
+    return quoteString(x);
+  }
+  return x;
+}
+function quoteString(s) {
+  s = JSON.stringify(s);
+  return s.substring(1, s.length - 1);
+}
+var CloudFormationLang, CLOUDFORMATION_CONCAT, CLOUDFORMATION_TOKEN_RESOLVER, ScopedCache, stringifyCache;
+var init_cloudformation_lang = __esm({
+  "../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts"() {
+    "use strict";
+    init_cfn_utils_provider();
+    init_resolve();
+    init_yaml_cfn();
+    init_lazy();
+    init_resolvable();
+    init_token();
+    init_type_hints();
+    init_uniqueid();
+    init_errors();
+    init_literal_string();
+    init_helpers_internal();
+    init_core_construct_finders();
+    CloudFormationLang = class {
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a JSON string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the JSON representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       * @param space Indentation to use (default: no pretty-printing)
+       */
+      static toJSON(obj, space) {
+        return Lazy.uncachedString({
+          // We used to do this by hooking into `JSON.stringify()` by adding in objects
+          // with custom `toJSON()` functions, but it's ultimately simpler just to
+          // reimplement the `stringify()` function from scratch.
+          produce: (ctx) => tokenAwareStringify(obj, space ?? 0, ctx)
+        });
+      }
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a YAML string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the YAML representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       */
+      static toYAML(obj) {
+        return Token.asString(Box.fromValue(obj).derive((data) => serialize(data)));
+      }
+      /**
+       * Produce a CloudFormation expression to concat two arbitrary expressions when resolving
+       */
+      static concat(left, right) {
+        if (left === void 0 && right === void 0) {
+          return "";
+        }
+        const parts = new Array();
+        if (left !== void 0) {
+          parts.push(left);
+        }
+        if (right !== void 0) {
+          parts.push(right);
+        }
+        if (parts.length === 1) {
+          return parts[0];
+        }
+        if (parts.length === 2 && isConcatable(parts[0]) && isConcatable(parts[1])) {
+          return `${parts[0]}${parts[1]}`;
+        }
+        return fnJoinConcat(parts);
+      }
+    };
+    CLOUDFORMATION_CONCAT = {
+      join(left, right) {
+        return CloudFormationLang.concat(left, right);
+      }
+    };
+    CLOUDFORMATION_TOKEN_RESOLVER = new DefaultTokenResolver(CLOUDFORMATION_CONCAT);
+    ScopedCache = class {
+      cache = /* @__PURE__ */ new WeakMap();
+      obtain(object, key, init) {
+        let kvMap = this.cache.get(object);
+        if (!kvMap) {
+          kvMap = /* @__PURE__ */ new Map();
+          this.cache.set(object, kvMap);
+        }
+        let ret = kvMap.get(key);
+        if (ret === void 0) {
+          ret = init();
+          kvMap.set(key, ret);
+        }
+        return ret;
+      }
+    };
+    stringifyCache = new ScopedCache();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-fn.ts
+function _inGroupsOf(array, maxGroup) {
+  const result = new Array();
+  for (let i = 0; i < array.length; i += maxGroup) {
+    result.push(array.slice(i, i + maxGroup));
+  }
+  return result;
+}
+function range2(n) {
+  const ret = [];
+  for (let i = 0; i < n; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+var Fn, FN_BASE_SYMBOL, FnBase, FnRef, FnFindInMap, FnTransform, FnGetAtt, FnGetAZs, FnImportValue, FnGetStackOutput, FnSelect, FnSplit, FnSub, FnBase64, FnCidr, FnConditionBase, FnAnd, FnEquals, FnIf, FnNot, FnOr, FnContains, FnEachMemberEquals, FnEachMemberIn, FnRefAll, FnValueOf, FnValueOfAll, FnJoin, FnToJsonString, FnLength;
+var init_cfn_fn = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-fn.ts"() {
+    "use strict";
+    init_errors();
+    init_cloudformation_lang();
+    init_core_construct_finders();
+    init_intrinsic();
+    init_literal_string();
+    init_reference();
+    init_token();
+    Fn = class _Fn {
+      /**
+       * The ``Ref`` intrinsic function returns the value of the specified parameter or resource.
+       * Note that it doesn't validate the logicalName, it mainly serves parameter/resource reference defined in a ``CfnInclude`` template.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      static ref(logicalName) {
+        return new FnRef(logicalName).toString();
+      }
+      /**
+       * The ``Fn::GetAtt`` intrinsic function returns the value of an attribute
+       * from a resource in the template.
+       * @param logicalNameOfResource The logical name (also called logical ID) of
+       * the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose
+       * value you want. See the resource's reference page for details about the
+       * attributes available for that resource type.
+       * @returns an IResolvable object
+       */
+      static getAtt(logicalNameOfResource, attributeName) {
+        return new FnGetAtt(logicalNameOfResource, attributeName);
+      }
+      /**
+       * The intrinsic function ``Fn::Join`` appends a set of values into a single
+       * value, separated by the specified delimiter. If a delimiter is the empty
+       * string, the set of values are concatenated with no delimiter.
+       * @param delimiter The value you want to occur between fragments. The
+       * delimiter will occur between fragments only. It will not terminate the
+       * final value.
+       * @param listOfValues The list of values you want combined.
+       * @returns a token represented as a string
+       */
+      static join(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        return new FnJoin(delimiter, listOfValues).toString();
+      }
+      /**
+       * Split a string token into a token list of string values.
+       *
+       * Specify the location of splits with a delimiter such as ',' (a comma).
+       * Renders to the `Fn::Split` intrinsic function.
+       *
+       * Lists with unknown lengths (default)
+       * -------------------------------------
+       *
+       * Since this function is used to work with deploy-time values, if `assumedLength`
+       * is not given the CDK cannot know the length of the resulting list at synthesis time.
+       * This brings the following restrictions:
+       *
+       * - You must use `Fn.select(i, list)` to pick elements out of the list (you must not use
+       *   `list[i]`).
+       * - You cannot add elements to the list, remove elements from the list,
+       *   combine two such lists together, or take a slice of the list.
+       * - You cannot pass the list to constructs that do any of the above.
+       *
+       * The only valid operation with such a tokenized list is to pass it unmodified to a
+       * CloudFormation Resource construct.
+       *
+       * Lists with assumed lengths
+       * --------------------------
+       *
+       * Pass `assumedLength` if you know the length of the list that will be
+       * produced by splitting. The actual list length at deploy time may be
+       * *longer* than the number you pass, but not *shorter*.
+       *
+       * The returned list will look like:
+       *
+       * ```
+       * [Fn.select(0, split), Fn.select(1, split), Fn.select(2, split), ...]
+       * ```
+       *
+       * The restrictions from the section "Lists with unknown lengths" will now be lifted,
+       * at the expense of having to know and fix the length of the list.
+       *
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       * @param assumedLength The length of the list that will be produced by splitting
+       * @returns a token represented as a string array
+       */
+      static split(delimiter, source, assumedLength) {
+        if (!Token.isUnresolved(source)) {
+          return source.split(delimiter);
+        }
+        if (Token.isUnresolved(delimiter)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'delimiter' may not be a token value");
+        }
+        const split = Token.asList(new FnSplit(delimiter, source));
+        if (assumedLength === void 0) {
+          return split;
+        }
+        if (Token.isUnresolved(assumedLength)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'assumedLength' may not be a token value");
+        }
+        return range2(assumedLength).map((i) => _Fn.select(i, split));
+      }
+      /**
+       * The intrinsic function ``Fn::Select`` returns a single object from a list of objects by index.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       * @returns a token represented as a string
+       */
+      static select(index, array) {
+        if (!Token.isUnresolved(index) && !Token.isUnresolved(array) && !array.some(Token.isUnresolved)) {
+          return array[index];
+        }
+        return new FnSelect(index, array).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Sub`` substitutes variables in an input string
+       * with values that you specify. In your templates, you can use this function
+       * to construct commands or outputs that include values that aren't available
+       * until you create or update a stack.
+       * @param body A string with variables that AWS CloudFormation substitutes
+       * with their associated values at runtime. Write variables as ${MyVarName}.
+       * Variables can be template parameter names, resource logical IDs, resource
+       * attributes, or a variable in a key-value map. If you specify only template
+       * parameter names, resource logical IDs, and resource attributes, don't
+       * specify a key-value map.
+       * @param variables The name of a variable that you included in the String
+       * parameter. The value that AWS CloudFormation substitutes for the associated
+       * variable name at runtime.
+       * @returns a token represented as a string
+       */
+      static sub(body, variables) {
+        return new FnSub(body, variables).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Base64`` returns the Base64 representation of
+       * the input string. This function is typically used to pass encoded data to
+       * Amazon EC2 instances by way of the UserData property.
+       * @param data The string value you want to convert to Base64.
+       * @returns a token represented as a string
+       */
+      static base64(data) {
+        return new FnBase64(data).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Cidr`` returns the specified Cidr address block.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       * @returns a token represented as a string
+       */
+      static cidr(ipBlock, count2, sizeMask) {
+        return Token.asList(new FnCidr(ipBlock, count2, sizeMask));
+      }
+      /**
+       * Given an url, parse the domain name
+       * @param url the url to parse
+       */
+      static parseDomainName(url2) {
+        const noHttps = _Fn.select(1, _Fn.split("//", url2));
+        return _Fn.select(0, _Fn.split("/", noHttps));
+      }
+      /**
+       * The intrinsic function ``Fn::GetAZs`` returns an array that lists
+       * Availability Zones for a specified region. Because customers have access to
+       * different Availability Zones, the intrinsic function ``Fn::GetAZs`` enables
+       * template authors to write templates that adapt to the calling user's
+       * access. That way you don't have to hard-code a full list of Availability
+       * Zones for a specified region.
+       * @param region The name of the region for which you want to get the
+       * Availability Zones. You can use the AWS::Region pseudo parameter to specify
+       * the region in which the stack is created. Specifying an empty string is
+       * equivalent to specifying AWS::Region.
+       * @returns a token represented as a string array
+       */
+      static getAzs(region) {
+        return Token.asList(new FnGetAZs(region));
+      }
+      /**
+       * The intrinsic function ``Fn::ImportValue`` returns the value of an output
+       * exported by another stack. You typically use this function to create
+       * cross-stack references. In the following example template snippets, Stack A
+       * exports VPC security group values and Stack B imports them.
+       * @param sharedValueToImport The stack output value that you want to import.
+       * @returns a token represented as a string
+       */
+      static importValue(sharedValueToImport) {
+        return new FnImportValue(sharedValueToImport).toString();
+      }
+      /**
+       * The intrinsic function `Fn::GetStackOutput` returns the value of an output
+       * from another stack. This is similar to `Fn::ImportValue`, but it can reference
+       * a normal output, without the need to export anything. As with `Fn::ImportValue`,
+       * you typically use this function to create cross-stack references.
+       * @param stackName The name of the producer stack.
+       * @param outputName The name of the output to get the value from.
+       * @param region The region where the producer stack is deployed. If not provided,
+       * it will default to the same region as the consumer stack.
+       * @param roleArn The role to be used when describing the producer stack. If not
+       * provided, it will default to the role used to create the producer stack.
+       */
+      static getStackOutput(stackName, outputName, region, roleArn) {
+        return new FnGetStackOutput(stackName, outputName, region, roleArn).toString();
+      }
+      /**
+       * Like `Fn.importValue`, but import a list with a known length
+       *
+       * If you explicitly want a list with an unknown length, call `Fn.split(',',
+       * Fn.importValue(exportName))`. See the documentation of `Fn.split` to read
+       * more about the limitations of using lists of unknown length.
+       *
+       * `Fn.importListValue(exportName, assumedLength)` is the same as
+       * `Fn.split(',', Fn.importValue(exportName), assumedLength)`,
+       * but easier to read and impossible to forget to pass `assumedLength`.
+       */
+      static importListValue(sharedValueToImport, assumedLength, delimiter = ",") {
+        return _Fn.split(delimiter, _Fn.importValue(sharedValueToImport), assumedLength);
+      }
+      /**
+       * The intrinsic function ``Fn::FindInMap`` returns the value corresponding to
+       * keys in a two-level map that is declared in the Mappings section.
+       * Warning: do not use with lazy mappings as this function will not guarantee a lazy mapping to render in the template.
+       * Prefer to use `CfnMapping.findInMap` in general.
+       * @returns a token represented as a string
+       */
+      static findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return _Fn._findInMap(mapName, topLevelKey, secondLevelKey, defaultValue).toString();
+      }
+      /**
+       * An additional function used in CfnParser,
+       * as Fn::FindInMap does not always return a string.
+       *
+       * @internal
+       */
+      static _findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return new FnFindInMap(mapName, topLevelKey, secondLevelKey, defaultValue);
+      }
+      /**
+       * Creates a token representing the ``Fn::Transform`` expression
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-transform.html
+       * @param macroName The name of the macro to perform the processing
+       * @param parameters The parameters to be passed to the macro
+       * @returns a token representing the transform expression
+       */
+      static transform(macroName, parameters) {
+        return new FnTransform(macroName, parameters);
+      }
+      /**
+       * Returns true if all the specified conditions evaluate to true, or returns
+       * false if any one of the conditions evaluates to false. ``Fn::And`` acts as
+       * an AND operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions to AND
+       * @returns an FnCondition token
+       */
+      static conditionAnd(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionAnd() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnAnd(...conditions);
+        }
+        return _Fn.conditionAnd(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionAnd(...group)));
+      }
+      /**
+       * Compares if two values are equal. Returns true if the two values are equal
+       * or false if they aren't.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       * @returns an FnCondition token
+       */
+      static conditionEquals(lhs, rhs) {
+        return new FnEquals(lhs, rhs);
+      }
+      /**
+       * Returns one value if the specified condition evaluates to true and another
+       * value if the specified condition evaluates to false. Currently, AWS
+       * CloudFormation supports the ``Fn::If`` intrinsic function in the metadata
+       * attribute, update policy attribute, and property values in the Resources
+       * section and Outputs sections of a template. You can use the AWS::NoValue
+       * pseudo parameter as a return value to remove the corresponding property.
+       * @param conditionId A reference to a condition in the Conditions section. Use
+       * the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition
+       * evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition
+       * evaluates to false.
+       * @returns an FnCondition token
+       */
+      static conditionIf(conditionId, valueIfTrue, valueIfFalse) {
+        return new FnIf(conditionId, valueIfTrue, valueIfFalse);
+      }
+      /**
+       * Returns true for a condition that evaluates to false or returns false for a
+       * condition that evaluates to true. ``Fn::Not`` acts as a NOT operator.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true
+       * or false.
+       * @returns an FnCondition token
+       */
+      static conditionNot(condition) {
+        return new FnNot(condition);
+      }
+      /**
+       * Returns true if any one of the specified conditions evaluate to true, or
+       * returns false if all of the conditions evaluates to false. ``Fn::Or`` acts
+       * as an OR operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions that evaluates to true or false.
+       * @returns an FnCondition token
+       */
+      static conditionOr(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionOr() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnOr(...conditions);
+        }
+        return _Fn.conditionOr(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionOr(...group)));
+      }
+      /**
+       * Returns true if a specified string matches at least one value in a list of
+       * strings.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       * @returns an FnCondition token
+       */
+      static conditionContains(listOfStrings, value) {
+        return new FnContains(listOfStrings, value);
+      }
+      /**
+       * Returns true if a specified string matches all values in a list.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list
+       * of strings.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberEquals(listOfStrings, value) {
+        return new FnEachMemberEquals(listOfStrings, value);
+      }
+      /**
+       * Returns true if each member in a list of strings matches at least one value
+       * in a second list of strings.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS
+       * CloudFormation checks whether each member in the strings_to_check parameter
+       * is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member
+       * in the strings_to_match parameter is compared against the members of the
+       * strings_to_check parameter.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberIn(stringsToCheck, stringsToMatch) {
+        return new FnEachMemberIn(stringsToCheck, stringsToMatch);
+      }
+      /**
+       * Returns all values for a specified parameter type.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @returns a token represented as a string array
+       */
+      static refAll(parameterType) {
+        return Token.asList(new FnRefAll(parameterType));
+      }
+      /**
+       * Returns an attribute value or list of values for a specific parameter and
+       * attribute.
+       * @param parameterOrLogicalId The name of a parameter for which you want to
+       * retrieve attribute values. The parameter must be declared in the Parameters
+       * section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value.
+       * @returns a token represented as a string
+       */
+      static valueOf(parameterOrLogicalId, attribute) {
+        return new FnValueOf(parameterOrLogicalId, attribute).toString();
+      }
+      /**
+       * Returns a list of all attribute values for a given parameter type and
+       * attribute.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value. For more information about attributes, see Supported Attributes.
+       * @returns a token represented as a string array
+       */
+      static valueOfAll(parameterType, attribute) {
+        return Token.asList(new FnValueOfAll(parameterType, attribute));
+      }
+      /**
+       * The `Fn::ToJsonString` intrinsic function converts an object or array to its
+       * corresponding JSON string.
+       *
+       * @param object The object or array to stringify
+       */
+      static toJsonString(object) {
+        if (!Token.isUnresolved(object)) {
+          return JSON.stringify(object);
+        }
+        return new FnToJsonString(object).toString();
+      }
+      /**
+       * The intrinsic function `Fn::Length` returns the number of elements within an array
+       * or an intrinsic function that returns an array.
+       *
+       * @param array The array you want to return the number of elements from
+       */
+      static len(array) {
+        if (!Token.isUnresolved(array)) {
+          if (!Array.isArray(array)) {
+            throw new UnscopedValidationError(lit`ValidationError`, "Fn.length() needs an array");
+          }
+          return array.length;
+        }
+        return Token.asNumber(new FnLength(array));
+      }
+      /**
+       * Test whether the given object extends FnBase class.
+       *
+       * @internal
+       */
+      static _isFnBase(x) {
+        return x !== null && typeof x === "object" && FN_BASE_SYMBOL in x;
+      }
+      constructor() {
+      }
+    };
+    FN_BASE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnFnBase");
+    FnBase = class extends Intrinsic {
+      constructor(name, value) {
+        super({ [name]: value });
+        Object.defineProperty(this, FN_BASE_SYMBOL, { value: true });
+      }
+    };
+    FnRef = class extends FnBase {
+      /**
+       * Creates an ``Ref`` function.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      constructor(logicalName) {
+        super("Ref", logicalName);
+      }
+    };
+    FnFindInMap = class extends FnBase {
+      /**
+       * Creates an ``Fn::FindInMap`` function.
+       * @param mapName The logical name of a mapping declared in the Mappings section that contains the keys and values.
+       * @param topLevelKey The top-level key name. Its value is a list of key-value pairs.
+       * @param secondLevelKey The second-level key name, which is set to one of the keys from the list assigned to TopLevelKey.
+       * @param defaultValue The value of the default value returned if either the key is not found in the map
+       */
+      mapName;
+      topLevelKey;
+      secondLevelKey;
+      defaultValue;
+      constructor(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        super("Fn::FindInMap", [mapName, topLevelKey, secondLevelKey, defaultValue !== void 0 ? { DefaultValue: defaultValue } : void 0]);
+        this.mapName = mapName;
+        this.topLevelKey = topLevelKey;
+        this.secondLevelKey = secondLevelKey;
+        this.defaultValue = defaultValue;
+      }
+      resolve(context) {
+        if (this.defaultValue !== void 0) {
+          stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        }
+        return { "Fn::FindInMap": [this.mapName, this.topLevelKey, this.secondLevelKey, this.defaultValue !== void 0 ? { DefaultValue: this.defaultValue } : void 0] };
+      }
+    };
+    FnTransform = class extends FnBase {
+      /**
+       * creates an ``Fn::Transform`` function.
+       * @param macroName The name of the macro to be invoked
+       * @param parameters the parameters to pass to it
+       */
+      constructor(macroName, parameters) {
+        super("Fn::Transform", { Name: macroName, Parameters: parameters });
+      }
+    };
+    FnGetAtt = class extends FnBase {
+      /**
+       * Creates a ``Fn::GetAtt`` function.
+       * @param logicalNameOfResource The logical name (also called logical ID) of the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose value you want. See the resource's reference page for details about the attributes available for that resource type.
+       */
+      constructor(logicalNameOfResource, attributeName) {
+        super("Fn::GetAtt", [logicalNameOfResource, attributeName]);
+      }
+    };
+    FnGetAZs = class extends FnBase {
+      /**
+       * Creates an ``Fn::GetAZs`` function.
+       * @param region The name of the region for which you want to get the Availability Zones.
+       *         You can use the AWS::Region pseudo parameter to specify the region in
+       *         which the stack is created. Specifying an empty string is equivalent to
+       *         specifying AWS::Region.
+       */
+      constructor(region) {
+        super("Fn::GetAZs", region || "");
+      }
+    };
+    FnImportValue = class extends FnBase {
+      /**
+       * Creates an ``Fn::ImportValue`` function.
+       * @param sharedValueToImport The stack output value that you want to import.
+       */
+      constructor(sharedValueToImport) {
+        super("Fn::ImportValue", sharedValueToImport);
+      }
+    };
+    FnGetStackOutput = class extends FnBase {
+      constructor(stackName, outputName, region, roleArn) {
+        super("Fn::GetStackOutput", {
+          StackName: stackName,
+          Region: region,
+          RoleArn: roleArn,
+          OutputName: outputName
+        });
+      }
+    };
+    FnSelect = class extends FnBase {
+      /**
+       * Creates an ``Fn::Select`` function.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       */
+      constructor(index, array) {
+        super("Fn::Select", [index, array]);
+      }
+    };
+    FnSplit = class extends FnBase {
+      /**
+       * Create an ``Fn::Split`` function.
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       */
+      constructor(delimiter, source) {
+        super("Fn::Split", [delimiter, source]);
+      }
+    };
+    FnSub = class extends FnBase {
+      /**
+       * Creates an ``Fn::Sub`` function.
+       * @param body A string with variables that AWS CloudFormation substitutes with their
+       *       associated values at runtime. Write variables as ${MyVarName}. Variables
+       *       can be template parameter names, resource logical IDs, resource attributes,
+       *       or a variable in a key-value map. If you specify only template parameter names,
+       *       resource logical IDs, and resource attributes, don't specify a key-value map.
+       * @param variables The name of a variable that you included in the String parameter.
+       *          The value that AWS CloudFormation substitutes for the associated variable name at runtime.
+       */
+      constructor(body, variables) {
+        super("Fn::Sub", variables ? [body, variables] : body);
+      }
+    };
+    FnBase64 = class extends FnBase {
+      /**
+       * Creates an ``Fn::Base64`` function.
+       * @param data The string value you want to convert to Base64.
+       */
+      constructor(data) {
+        super("Fn::Base64", data);
+      }
+    };
+    FnCidr = class extends FnBase {
+      /**
+       * Creates an ``Fn::Cidr`` function.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       */
+      constructor(ipBlock, count2, sizeMask) {
+        if (count2 < 1 || count2 > 256) {
+          throw new UnscopedValidationError(lit`MustBeFnCidrSCountAttribute`, `Fn::Cidr's count attribute must be between 1 and 256, ${count2} was provided.`);
+        }
+        super("Fn::Cidr", [ipBlock, count2, sizeMask]);
+      }
+    };
+    FnConditionBase = class extends Intrinsic {
+      disambiguator = true;
+      constructor(type, value) {
+        super({ [type]: value });
+      }
+    };
+    FnAnd = class extends FnConditionBase {
+      constructor(...condition) {
+        super("Fn::And", condition);
+      }
+    };
+    FnEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Equals`` condition function.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       */
+      constructor(lhs, rhs) {
+        super("Fn::Equals", [lhs, rhs]);
+      }
+    };
+    FnIf = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::If`` condition function.
+       * @param condition A reference to a condition in the Conditions section. Use the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition evaluates to false.
+       */
+      constructor(condition, valueIfTrue, valueIfFalse) {
+        super("Fn::If", [condition, valueIfTrue, valueIfFalse]);
+      }
+    };
+    FnNot = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Not`` condition function.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true or false.
+       */
+      constructor(condition) {
+        super("Fn::Not", [condition]);
+      }
+    };
+    FnOr = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Or`` condition function.
+       * @param condition A condition that evaluates to true or false.
+       */
+      constructor(...condition) {
+        super("Fn::Or", condition);
+      }
+    };
+    FnContains = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Contains`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::Contains", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberEquals`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::EachMemberEquals", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberIn = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberIn`` function.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS CloudFormation checks whether each member in the strings_to_check parameter is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member in the strings_to_match parameter is compared against the members of the strings_to_check parameter.
+       */
+      constructor(stringsToCheck, stringsToMatch) {
+        super("Fn::EachMemberIn", [stringsToCheck, stringsToMatch]);
+      }
+    };
+    FnRefAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::RefAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or
+       *            AWS::EC2::VPC::Id. For more information, see Parameters in the AWS
+       *            CloudFormation User Guide.
+       */
+      constructor(parameterType) {
+        super("Fn::RefAll", parameterType);
+      }
+    };
+    FnValueOf = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOf`` function.
+       * @param parameterOrLogicalId The name of a parameter for which you want to retrieve attribute values. The parameter must be declared in the Parameters section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a value.
+       */
+      constructor(parameterOrLogicalId, attribute) {
+        super("Fn::ValueOf", [parameterOrLogicalId, attribute]);
+      }
+    };
+    FnValueOfAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOfAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a value. For more information about attributes, see Supported Attributes.
+       */
+      constructor(parameterType, attribute) {
+        super("Fn::ValueOfAll", [parameterType, attribute]);
+      }
+    };
+    FnJoin = class {
+      creationStack;
+      delimiter;
+      listOfValues;
+      /**
+       * Creates an ``Fn::Join`` function.
+       * @param delimiter The value you want to occur between fragments. The delimiter will occur between fragments only.
+       *          It will not terminate the final value.
+       * @param listOfValues The list of values you want combined.
+       */
+      constructor(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        this.delimiter = delimiter;
+        this.listOfValues = listOfValues;
+      }
+      resolve(context) {
+        if (Token.isUnresolved(this.listOfValues)) {
+          return { "Fn::Join": [this.delimiter, this.listOfValues] };
+        }
+        const resolved = this.resolveValues(context);
+        if (resolved.length === 1) {
+          return resolved[0];
+        }
+        return { "Fn::Join": [this.delimiter, resolved] };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Join" });
+      }
+      toJSON() {
+        return "";
+      }
+      /**
+       * Optimization: if a Fn::Join is nested in another one and they share the same delimiter, then flatten it up. Also,
+       * if two concatenated elements are literal strings (not tokens), then pre-concatenate them with the delimiter, to
+       * generate shorter output.
+       */
+      resolveValues(context) {
+        const resolvedValues = this.listOfValues.map((x) => Reference.isReference(x) ? x : context.resolve(x));
+        return minimalCloudFormationJoin(this.delimiter, resolvedValues);
+      }
+    };
+    FnJoin.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnToJsonString = class {
+      creationStack;
+      object;
+      constructor(object) {
+        this.object = object;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::ToJsonString": this.object };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::ToJsonString" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnToJsonString.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnLength = class {
+      creationStack;
+      array;
+      constructor(array) {
+        this.array = array;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::Length": this.array };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Length" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnLength.prototype.creationStack = ["Token stack traces are no longer captured"];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-pseudo.ts
+function pseudoString(name) {
+  return Token.asString({ Ref: name }, { displayHint: name.replace("::", ".") });
+}
+var AWS_ACCOUNTID, AWS_URLSUFFIX, AWS_NOTIFICATIONARNS, AWS_PARTITION, AWS_REGION, AWS_STACKID, AWS_STACKNAME, AWS_NOVALUE, Aws, ScopedAws;
+var init_cfn_pseudo = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-pseudo.ts"() {
+    "use strict";
+    init_cfn_reference();
+    init_token();
+    AWS_ACCOUNTID = "AWS::AccountId";
+    AWS_URLSUFFIX = "AWS::URLSuffix";
+    AWS_NOTIFICATIONARNS = "AWS::NotificationARNs";
+    AWS_PARTITION = "AWS::Partition";
+    AWS_REGION = "AWS::Region";
+    AWS_STACKID = "AWS::StackId";
+    AWS_STACKNAME = "AWS::StackName";
+    AWS_NOVALUE = "AWS::NoValue";
+    Aws = class {
+      static ACCOUNT_ID = pseudoString(AWS_ACCOUNTID);
+      static URL_SUFFIX = pseudoString(AWS_URLSUFFIX);
+      static NOTIFICATION_ARNS = Token.asList({ Ref: AWS_NOTIFICATIONARNS }, { displayHint: AWS_NOTIFICATIONARNS });
+      static PARTITION = pseudoString(AWS_PARTITION);
+      static REGION = pseudoString(AWS_REGION);
+      static STACK_ID = pseudoString(AWS_STACKID);
+      static STACK_NAME = pseudoString(AWS_STACKNAME);
+      static NO_VALUE = pseudoString(AWS_NOVALUE);
+      constructor() {
+      }
+    };
+    ScopedAws = class {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      get accountId() {
+        return this.asString(AWS_ACCOUNTID);
+      }
+      get urlSuffix() {
+        return this.asString(AWS_URLSUFFIX);
+      }
+      get notificationArns() {
+        return Token.asList(CfnReference.forPseudo(AWS_NOTIFICATIONARNS, this.scope), {
+          displayHint: AWS_NOTIFICATIONARNS
+        });
+      }
+      get partition() {
+        return this.asString(AWS_PARTITION);
+      }
+      get region() {
+        return this.asString(AWS_REGION);
+      }
+      get stackId() {
+        return this.asString(AWS_STACKID);
+      }
+      get stackName() {
+        return this.asString(AWS_STACKNAME);
+      }
+      asString(name) {
+        return Token.asString(CfnReference.forPseudo(name, this.scope), { displayHint: name });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource-policy.ts
+var init_cfn_resource_policy = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource-policy.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts
+var init_cfn_parse = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource_policy();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_cfn_reference();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts
+function getPrecreatedRoleConfig(scope, rolePath) {
+  const precreatedRolePath = rolePath ?? scope.node.path;
+  const customizeRolesContext = scope.node.tryGetContext(CUSTOMIZE_ROLES_CONTEXT_KEY);
+  if (customizeRolesContext !== void 0) {
+    const customizeRoles = customizeRolesContext;
+    if (customizeRoles.preventSynthesis === false) {
+      return {
+        preventSynthesis: false,
+        enabled: true
+      };
+    }
+    if (customizeRoles.usePrecreatedRoles?.hasOwnProperty(precreatedRolePath)) {
+      if (Token.isUnresolved(customizeRoles.usePrecreatedRoles[precreatedRolePath])) {
+        Annotations.of(scope)._addTrackableError(
+          lit`UnresolvablePrecreatedRoleName`,
+          `Cannot resolve precreated role name at path "${precreatedRolePath}". The value may be a token.`
+        );
+      } else {
+        return {
+          enabled: true,
+          preventSynthesis: true,
+          precreatedRoleName: customizeRoles.usePrecreatedRoles[precreatedRolePath]
+        };
+      }
+    } else {
+      Annotations.of(scope)._addTrackableError(
+        lit`MissingPrecreatedRoleName`,
+        `IAM Role is being created at path "${precreatedRolePath}" and customizeRoles.preventSynthesis is enabled. You must provide a precreated role name in customizeRoles.precreatedRoles`
+      );
+    }
+    return {
+      enabled: true,
+      preventSynthesis: true
+    };
+  }
+  return { enabled: false };
+}
+var fs9, path10, import_constructs10, POLICY_SYNTHESIZER_ID, PolicySynthesizerTokenResolver, PolicySynthesizer, CUSTOMIZE_ROLES_CONTEXT_KEY;
+var init_customize_roles = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts"() {
+    "use strict";
+    fs9 = __toESM(require("fs"));
+    path10 = __toESM(require("path"));
+    import_constructs10 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_errors();
+    init_literal_string();
+    init_reference();
+    init_resolvable();
+    init_token();
+    POLICY_SYNTHESIZER_ID = "PolicySynthesizer";
+    PolicySynthesizerTokenResolver = class extends DefaultTokenResolver {
+      constructor(concat) {
+        super(concat);
+      }
+      /**
+       * PolicySynthesizer Token resolution
+       *
+       * Resolve the Token until the token can be resolved into
+       * "(Path/To/SomeResource.Arn)" format. Otherwise, recurse
+       * into whatever it returns,
+       */
+      resolveToken(t, context, postProcessor) {
+        try {
+          let resolved = t.resolve(context);
+          const resolvable = Tokenization.reverseString(resolved);
+          if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+            return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+          }
+          resolved = context.resolve(resolved);
+          resolved = postProcessor.postProcess(resolved, context);
+          return resolved;
+        } catch (e) {
+          let message = `Resolution error: ${e.message}.`;
+          if (t.creationStack && t.creationStack.length > 0) {
+            message += `
+Object creation stack:
+  at ${t.creationStack.join("\n  at ")}`;
+          }
+          e.message = message;
+          throw e;
+        }
+      }
+    };
+    PolicySynthesizer = class _PolicySynthesizer extends import_constructs10.Construct {
+      static getOrCreate(scope) {
+        const synthesizer = scope.node.root.node.tryFindChild(POLICY_SYNTHESIZER_ID);
+        if (synthesizer) {
+          return synthesizer;
+        }
+        return new _PolicySynthesizer(scope);
+      }
+      _scope;
+      roleReport = {};
+      managedPolicyReport = {};
+      constructor(scope) {
+        super(scope.node.root, POLICY_SYNTHESIZER_ID);
+        this._scope = scope;
+        attachCustomSynthesis(this, {
+          onSynthesize: (session) => {
+            const report = this.createJsonReport();
+            if (report.roles?.length > 0) {
+              const filePath = path10.join(session.outdir, "iam-policy-report");
+              fs9.writeFileSync(filePath + ".txt", this.createHumanReport(report));
+              fs9.writeFileSync(filePath + ".json", JSON.stringify(report, void 0, 2));
+            }
+          }
+        });
+      }
+      createJsonReport() {
+        return Object.entries(this.roleReport).reduce((acc, [key, value]) => {
+          const { policyArns, policyStatements } = this.renderManagedPoliciesForRole(key, value.managedPolicies);
+          acc = {
+            roles: [
+              ...acc.roles ?? [],
+              {
+                roleConstructPath: key,
+                roleName: value.missing ? "missing role" : value.roleName,
+                missing: value.missing,
+                assumeRolePolicy: this.resolveReferences(value.assumeRolePolicy),
+                managedPolicyArns: this.resolveReferences(policyArns),
+                managedPolicyStatements: this.resolveReferences(policyStatements),
+                identityPolicyStatements: this.resolveReferences(value.policyStatements)
+              }
+            ]
+          };
+          return acc;
+        }, {});
+      }
+      createHumanReport(report) {
+        return report.roles.map((role) => [
+          `<${role.missing ? "missing role" : role.roleName}> (${role.roleConstructPath})`,
+          "",
+          "AssumeRole Policy:",
+          ...this.toJsonString(role.assumeRolePolicy),
+          "",
+          "Managed Policy ARNs:",
+          ...this.toJsonString(role.managedPolicyArns),
+          "",
+          "Managed Policies Statements:",
+          this.toJsonString(role.managedPolicyStatements),
+          "",
+          "Identity Policy Statements:",
+          this.toJsonString(role.identityPolicyStatements)
+        ].join("\n")).join("\n\n");
+      }
+      /**
+       * Takes a value and returns a formatted JSON string
+       */
+      toJsonString(value) {
+        if (Array.isArray(value) && value.length === 0 || !value) {
+          return ["NONE"];
+        }
+        return [JSON.stringify({ values: value }.values, void 0, 2)];
+      }
+      /**
+       * IAM managed policies can be attached to a role using a couple different methods.
+       *
+       * 1. You can use an existing managed policy, i.e. ManagedPolicy.fromManagedPolicyName()
+       * 2. You can create a managed policy and attach the role, i.e.
+       *   new ManagedPolicy(scope, 'ManagedPolicy', { roles: [myRole] });
+       * 3. You can create a managed policy and attach it to the role, i.e.
+       *   const role = new Role(...);
+       *   role.addManagedPolicy(new ManagedPolicy(...));
+       *
+       * For 1, CDK is not creating the managed policy so we just need to report the ARN
+       * of the policy that needs to be attached to the role.
+       *
+       * For 2 & 3, CDK _is_ creating the managed policy so instead of reporting the name or ARN of the
+       * policy (that we prevented being created) we should instead report the policy statements
+       * that are part of that document. It doesn't really matter if the admins creating the roles then
+       * decide to use managed policies or inline policies, etc.
+       *
+       * There could be managed policies that are created and _not_ attached to any roles, in that case
+       * we do not report anything. That managed policy is not being created automatically by our constructs.
+       */
+      renderManagedPoliciesForRole(rolePath, managedPolicies) {
+        const policyStatements = [];
+        Object.values(this.managedPolicyReport).forEach((value) => {
+          if (value.roles?.includes(rolePath)) {
+            policyStatements.push(...value.policyStatements);
+          }
+        });
+        const policyArns = [];
+        managedPolicies.forEach((policy) => {
+          if (import_constructs10.Construct.isConstruct(policy)) {
+            if (this.managedPolicyReport.hasOwnProperty(policy.node.path)) {
+              policyStatements.push(...this.managedPolicyReport[policy.node.path].policyStatements);
+            } else {
+              policyArns.push(policy.managedPolicyArn);
+            }
+          } else {
+            policyArns.push(policy.managedPolicyArn);
+          }
+        });
+        return {
+          policyArns,
+          policyStatements
+        };
+      }
+      /**
+       * Resolve any references and replace with a more user friendly value. This is the value
+       * that will appear in the report, so instead of getting something like this (not very useful):
+       *
+       *     "Resource": {
+       *       "Fn::Join": [
+       *         "",
+       *         [
+       *           "arn:",
+       *           {
+       *             "Ref": "AWS::Partition"
+       *           },
+       *           ":iam::",
+       *           {
+       *             "Ref": "AWS::AccountId"
+       *           },
+       *           ":role/Role"
+       *         ]
+       *       ]
+       *     }
+       *
+       * We will instead get:
+       *
+       *     "Resource": "arn:(PARTITION):iam::(ACCOUNT):role/Role"
+       *
+       * Or if referencing a resource attribute
+       *
+       *     "Resource": {
+       *       "Fn::GetAtt": [
+       *         "SomeResource",
+       *         "Arn"
+       *       ]
+       *     }
+       *
+       * Becomes
+       *
+       *     "(Path/To/SomeResource.Arn)"
+       */
+      resolveReferences(ref) {
+        if (Array.isArray(ref) && ref.length === 0 || !ref) {
+          return [];
+        }
+        if (Array.isArray(ref)) {
+          return ref.map((r) => this.resolveReferences(r));
+        } else if (typeof ref === "object") {
+          return this.resolveJsonObject(ref);
+        }
+        const resolvable = Tokenization.reverseString(ref);
+        if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+          return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+        } else {
+          const resolvedTokens = resolvable.mapTokens({
+            mapToken: (r) => {
+              if (Reference.isReference(r)) {
+                return `(${r.target.node.path}.${r.displayName})`;
+              }
+              const resolved = Tokenization.resolve(r, {
+                scope: this._scope,
+                resolver: new PolicySynthesizerTokenResolver(new StringConcat())
+              });
+              if (typeof resolved === "object" && resolved.hasOwnProperty("Ref")) {
+                switch (resolved.Ref) {
+                  case "AWS::AccountId":
+                    return "(ACCOUNT)";
+                  case "AWS::Partition":
+                    return "(PARTITION)";
+                  case "AWS::Region":
+                    return "(REGION)";
+                  case "AWS::NoValue":
+                    return "(NOVALUE)";
+                  default:
+                    return r;
+                }
+              }
+              if (Token.isUnresolved(r) && typeof resolved === "string" && resolved) {
+                return resolved;
+              }
+              return r;
+            }
+          });
+          return resolvedTokens.join(new StringConcat());
+        }
+      }
+      resolveJsonObject(statement) {
+        const newStatement = statement;
+        for (const [key, value] of Object.entries(statement)) {
+          newStatement[key] = this.resolveReferences(value);
+        }
+        return newStatement;
+      }
+      /**
+       * Add an IAM role to the report
+       *
+       * @param rolePath the construct path of the role
+       * @param options the values associated with the role
+       */
+      addRole(rolePath, options) {
+        if (this.roleReport.hasOwnProperty(rolePath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryRole`, `IAM Policy Report already has an entry for role: ${rolePath}`, this);
+        }
+        this.roleReport[rolePath] = options;
+      }
+      /**
+       * Add an IAM Managed Policy to the report
+       *
+       * @param policyPath the construct path of the managed policy
+       * @param options the values associated with the managed policy
+       */
+      addManagedPolicy(policyPath, options) {
+        if (this.managedPolicyReport.hasOwnProperty(policyPath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryManaged`, `IAM Policy Report already has an entry for managed policy: ${policyPath}`, this);
+        }
+        this.managedPolicyReport[policyPath] = options;
+      }
+    };
+    CUSTOMIZE_ROLES_CONTEXT_KEY = "@aws-cdk/iam:customizeRoles";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts
+function replaceAll(s, search, replace) {
+  return s.split(search).join(replace);
+}
+function resolvedOr(x, def) {
+  return Token.isUnresolved(x) ? def : x;
+}
+var StringSpecializer, CFN_TOKENS;
+var init_string_specializer = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+    init_token();
+    StringSpecializer = class _StringSpecializer {
+      constructor(stack, qualifier) {
+        this.stack = stack;
+        this.qualifier = qualifier;
+      }
+      stack;
+      qualifier;
+      /**
+       * Validate that the given string does not contain tokens
+       */
+      static validateNoTokens(s, what) {
+        if (Token.isUnresolved(s)) {
+          throw new UnscopedValidationError(lit`TokensNotAllowed`, `${what} may not contain tokens; only the following literal placeholder strings are allowed: ` + [
+            "${Qualifier}",
+            (void 0).CURRENT_REGION,
+            (void 0).CURRENT_ACCOUNT,
+            (void 0).CURRENT_PARTITION
+          ].join(", ") + `. Got: ${s}`);
+        }
+      }
+      /**
+       * Function to replace placeholders in the input string as much as possible
+       *
+       * We replace:
+       * - ${Qualifier}: always
+       * - ${AWS::AccountId}, ${AWS::Region}: only if we have the actual values available
+       * - ${AWS::Partition}: never, since we never have the actual partition value.
+       */
+      specialize(s) {
+        s = replaceAll(s, "${Qualifier}", this.qualifier);
+        return (void 0).replace(s, {
+          region: resolvedOr(this.stack.region, (void 0).CURRENT_REGION),
+          accountId: resolvedOr(this.stack.account, (void 0).CURRENT_ACCOUNT),
+          partition: (void 0).CURRENT_PARTITION
+        });
+      }
+      /**
+       * Specialize the given string, make sure it doesn't contain tokens
+       */
+      specializeNoTokens(s, what) {
+        _StringSpecializer.validateNoTokens(s, what);
+        return this.specialize(s);
+      }
+      /**
+       * Specialize only the qualifier
+       */
+      qualifierOnly(s) {
+        return replaceAll(s, "${Qualifier}", this.qualifier);
+      }
+    };
+    CFN_TOKENS = [Aws.PARTITION, Aws.REGION, Aws.ACCOUNT_ID];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts
+var init_validate_all_props = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/strings.ts
+var init_strings = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/strings.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/feature-flag-report.ts
+function parseFeatureFlagInfo(flagName, info, root) {
+  const userValue = root.node.tryGetContext(flagName) ?? void 0;
+  let parsedFlag = {
+    userValue,
+    recommendedValue: info.recommendedValue,
+    explanation: info.summary,
+    // This is a historical accident. We used to copy all `unconfiguredBehavesLike` data
+    // into the feature flag report, but we only needed to copy the behavior of the current library version.
+    // In order to not break existing reports, we keep the same structure, but we baptize the 'v2' field as
+    // the canonical name of the "current version" field, even for v3, v4, etc.
+    // It looks weird, but it's safe & backwards compatible.
+    unconfiguredBehavesLike: info.unconfiguredBehavesLike?.[CURRENT_MV] ? {
+      v2: info.unconfiguredBehavesLike?.[CURRENT_MV]
+    } : void 0
+  };
+  return parsedFlag;
+}
+function generateFeatureFlagReport(builder, root) {
+  const featureFlags = {};
+  for (const [flagName, flagInfo] of Object.entries(FLAGS)) {
+    if (CURRENT_VERSION_EXPIRED_FLAGS.includes(flagName)) {
+      continue;
+    }
+    featureFlags[flagName] = parseFeatureFlagInfo(flagName, flagInfo, root);
+  }
+  builder.addArtifact("aws-cdk-lib/feature-flag-report", {
+    type: import_cloud_assembly_schema.ArtifactType.FEATURE_FLAG_REPORT,
+    properties: {
+      module: "aws-cdk-lib",
+      flags: featureFlags
+    }
+  });
+}
+var import_cloud_assembly_schema;
+var init_feature_flag_report = __esm({
+  "../../aws-cdk-lib/core/lib/private/feature-flag-report.ts"() {
+    "use strict";
+    import_cloud_assembly_schema = __toESM(require_lib2());
+    init_features();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-condition.ts
+var CfnCondition;
+var init_cfn_condition = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-condition.ts"() {
+    "use strict";
+    init_cfn_element();
+    CfnCondition = class extends CfnElement {
+      /**
+       * The condition statement.
+       */
+      expression;
+      /**
+       * Build a new condition. The condition must be constructed with a condition token,
+       * that the condition is based on.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.expression = props && props.expression;
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.expression) {
+          return {};
+        }
+        return {
+          Conditions: {
+            [this.logicalId]: this.expression
+          }
+        };
+      }
+      /**
+       * Synthesizes the condition.
+       */
+      resolve(_context) {
+        return { Condition: this.logicalId };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/metadata-resource.ts
+function filteredConstructAnalyticsFromStack(scope) {
+  const includeAdditionalTelemetry = FeatureFlags.of(scope).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false;
+  const constructAnalytics = constructAnalyticsFromScope(scope);
+  if (includeAdditionalTelemetry) {
+    return constructAnalytics;
+  }
+  return constructAnalytics.map(retainAlwaysReportedAnalytics);
+  function retainAlwaysReportedAnalytics(analytics) {
+    return {
+      fqn: analytics.fqn,
+      version: analytics.version,
+      metadata: analytics.metadata
+    };
+  }
+}
+function makeCdkMetadataAvailableCondition() {
+  return Fn.conditionOr(...RegionInfo.regions.filter((ri) => ri.cdkMetadataResourceAvailable).map((ri) => Fn.conditionEquals(Aws.REGION, ri.name)));
+}
+function formatAnalytics(infos) {
+  const trie = new Trie();
+  infos.forEach((info) => insertFqnInTrie(`${info.version}!${info.fqn}`, trie, [info.metadata, info.additionalTelemetry].flatMap((a) => a ?? [])));
+  const plaintextEncodedConstructs = prefixEncodeTrie(trie);
+  const compressedConstructsBuffer = zlib.gzipSync(Buffer.from(plaintextEncodedConstructs));
+  setGzipOperatingSystemToUnknown(compressedConstructsBuffer);
+  const compressedConstructs = compressedConstructsBuffer.toString("base64");
+  const analyticsString = `v2:deflate64:${compressedConstructs}`;
+  if (process.env.CDK_CONTEXT_JSON && JSON.parse(process.env.CDK_CONTEXT_JSON)["cdk-migrate"]) {
+    const compressedAppInfoBuffer = zlib.gzipSync(Buffer.from("cdk-migrate"));
+    const compressedAppInfo = compressedAppInfoBuffer.toString("base64");
+    analyticsString.concat(":", compressedAppInfo);
+  }
+  return analyticsString;
+}
+function insertFqnInTrie(fqn, trie, metadata) {
+  for (const fqnPart of fqn.replace(/[^a-z0-9]/gi, "$& ").split(" ")) {
+    const nextLevelTreeRef = trie.get(fqnPart) ?? new Trie();
+    trie.set(fqnPart, nextLevelTreeRef);
+    trie = nextLevelTreeRef;
+  }
+  if (metadata?.length) {
+    trie.set(JSON.stringify(metadata), new Trie());
+  }
+  return trie;
+}
+function prefixEncodeTrie(trie) {
+  let prefixEncoded = "";
+  let isFirstEntryAtLevel = true;
+  [...trie.entries()].forEach(([key, value]) => {
+    if (!isFirstEntryAtLevel) {
+      prefixEncoded += ",";
+    }
+    isFirstEntryAtLevel = false;
+    prefixEncoded += key;
+    if (value.size > 1) {
+      prefixEncoded += "{";
+      prefixEncoded += prefixEncodeTrie(value);
+      prefixEncoded += "}";
+    } else {
+      prefixEncoded += prefixEncodeTrie(value);
+    }
+  });
+  return prefixEncoded;
+}
+function setGzipOperatingSystemToUnknown(gzipBuffer) {
+  if (gzipBuffer[0] !== 31 || gzipBuffer[1] !== 139) {
+    throw new AssumptionError(lit`ExpectingGzipBufferMust`, "Expecting a gzip buffer (must start with 0x1f8b)");
+  }
+  gzipBuffer[9] = 255;
+}
+var zlib, import_constructs11, MetadataResource, Trie;
+var init_metadata_resource2 = __esm({
+  "../../aws-cdk-lib/core/lib/private/metadata-resource.ts"() {
+    "use strict";
+    zlib = __toESM(require("zlib"));
+    import_constructs11 = __toESM(require_lib4());
+    init_cx_api();
+    init_region_info2();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_token();
+    init_literal_string();
+    init_stack_metadata();
+    MetadataResource = class extends import_constructs11.Construct {
+      constructor(scope, id) {
+        super(scope, id);
+        const metadataServiceExists = Token.isUnresolved(scope.region) || RegionInfo.get(scope.region).cdkMetadataResourceAvailable;
+        if (metadataServiceExists) {
+          const constructAnalytics = filteredConstructAnalyticsFromStack(scope);
+          const resource = new CfnResource(this, "Default", {
+            type: "AWS::CDK::Metadata",
+            properties: {
+              Analytics: Lazy.string({ produce: () => formatAnalytics(constructAnalytics) })
+            }
+          });
+          if (Token.isUnresolved(scope.region)) {
+            const condition = new CfnCondition(this, "Condition", {
+              expression: makeCdkMetadataAvailableCondition()
+            });
+            condition.overrideLogicalId("CDKMetadataAvailable");
+            resource.cfnOptions.condition = condition;
+          }
+        }
+      }
+    };
+    Trie = class extends Map {
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-output.ts
+var CfnOutput;
+var init_cfn_output = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-output.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_cfn_fn();
+    init_lazy();
+    init_token();
+    init_errors();
+    init_literal_string();
+    init_core_construct_finders();
+    CfnOutput = class extends CfnElement {
+      _description;
+      _condition;
+      _key;
+      _value;
+      _exportName;
+      /**
+       * Creates a CfnOutput value for this stack.
+       * @param scope The parent construct.
+       * @param props CfnOutput properties.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (props.value === void 0) {
+          throw new ValidationError(lit`MissingValueCloudFormationOutput`, `Missing value for CloudFormation output at path "${this.node.path}"`, this);
+        } else if (Array.isArray(props.value)) {
+          throw new ValidationError(lit`CloudformationOutputGivenString`, `CloudFormation output was given a string list instead of a string at path "${this.node.path}"`, this);
+        }
+        this._description = props.description;
+        this._key = props.key;
+        this._value = props.value;
+        this._condition = props.condition;
+        this._exportName = props.exportName;
+        this.node.addValidation({ validate: () => this.validateOutput() });
+      }
+      /**
+       * A String type that describes the output value.
+       * The description can be a maximum of 4 K in length.
+       *
+       * @default - No description.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(description) {
+        this._description = description;
+      }
+      /**
+       * The value of the property returned by the aws cloudformation describe-stacks command.
+       * The value of an output can include literals, parameter references, pseudo-parameters,
+       * a mapping value, or intrinsic functions.
+       */
+      get value() {
+        return this._value;
+      }
+      set value(value) {
+        this._value = value;
+      }
+      /**
+       * A condition to associate with this output value. If the condition evaluates
+       * to `false`, this output value will not be included in the stack.
+       *
+       * @default - No condition is associated with the output.
+       */
+      get condition() {
+        return this._condition;
+      }
+      set condition(condition) {
+        this._condition = condition;
+      }
+      /**
+       * The name used to export the value of this output across stacks.
+       *
+       * To use the value in another stack, pass the value of
+       * `output.importValue` to it.
+       *
+       * @default - the output is not exported
+       */
+      get exportName() {
+        return this._exportName;
+      }
+      set exportName(exportName) {
+        this._exportName = exportName;
+      }
+      /**
+       * Return the `Fn.importValue` expression to import this value into another stack
+       *
+       * The returned value should not be used in the same stack, but in a
+       * different one. It must be deployed to the same environment, as
+       * CloudFormation exports can only be imported in the same Region and
+       * account.
+       *
+       * The is no automatic registration of dependencies between stacks when using
+       * this mechanism, so you should make sure to deploy them in the right order
+       * yourself.
+       *
+       * You can use this mechanism to share values across Stacks in different
+       * Stages. If you intend to share the value to another Stack inside the same
+       * Stage, the automatic cross-stack referencing mechanism is more convenient.
+       */
+      get importValue() {
+        return Fn.importValue(Lazy.uncachedString({
+          produce: (ctx) => {
+            if (stackOf(ctx.scope) === this.stack) {
+              throw new ValidationError(lit`ImportvaluePropertyShouldOnly`, `'importValue' property of '${this.node.path}' should only be used in a different Stack`, this);
+            }
+            if (!this._exportName) {
+              throw new ValidationError(lit`ExportnameCfnoutputOrderOutput`, `Add an exportName to the CfnOutput at '${this.node.path}' in order to use 'output.importValue'`, this);
+            }
+            return this._exportName;
+          }
+        }));
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Outputs: {
+            [this._key ?? this.logicalId]: {
+              Description: this._description,
+              Value: this._value,
+              Export: this._exportName != null ? { Name: this._exportName } : void 0,
+              Condition: this._condition ? this._condition.logicalId : void 0
+            }
+          }
+        };
+      }
+      validateOutput() {
+        const errors = [];
+        if (this._exportName !== void 0 && !Token.isUnresolved(this._exportName)) {
+          if (this._exportName.length === 0) {
+            errors.push("Export name cannot be empty");
+          }
+          if (this._exportName.length > 255) {
+            errors.push(`Export name cannot exceed 255 characters (got ${this._exportName.length} characters)`);
+          }
+          if (!/^[A-Za-z0-9-:]*$/.test(this._exportName)) {
+            errors.push(`Export name must only include alphanumeric characters, colons, or hyphens (got '${this._exportName}')`);
+          }
+        }
+        return errors;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-parameter.ts
+function isListType(type) {
+  return type.indexOf("List<") >= 0 || type.indexOf("CommaDelimitedList") >= 0;
+}
+function isNumberType(type) {
+  return type === "Number";
+}
+function isStringType(type) {
+  return !isListType(type) && !isNumberType(type);
+}
+function typeToTypeHint(type) {
+  if (isListType(type)) {
+    return "string-list" /* STRING_LIST */;
+  } else if (isNumberType(type)) {
+    return "number" /* NUMBER */;
+  }
+  return "string" /* STRING */;
+}
+var CfnParameter;
+var init_cfn_parameter = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-parameter.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_errors();
+    init_cfn_reference();
+    init_literal_string();
+    init_token();
+    init_type_hints();
+    CfnParameter = class extends CfnElement {
+      _type;
+      _default;
+      _allowedPattern;
+      _allowedValues;
+      _constraintDescription;
+      _description;
+      _maxLength;
+      _maxValue;
+      _minLength;
+      _minValue;
+      _noEcho;
+      typeHint;
+      /**
+       * Creates a parameter construct.
+       * Note that the name (logical ID) of the parameter will derive from its `coname` and location
+       * within the stack. Therefore, it is recommended that parameters are defined at the stack level.
+       *
+       * @param scope The parent construct.
+       * @param props The parameter properties.
+       */
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this._type = props.type || "String";
+        this._default = props.default;
+        this._allowedPattern = props.allowedPattern;
+        this._allowedValues = props.allowedValues;
+        this._constraintDescription = props.constraintDescription;
+        this._description = props.description;
+        this._maxLength = props.maxLength;
+        this._maxValue = props.maxValue;
+        this._minLength = props.minLength;
+        this._minValue = props.minValue;
+        this._noEcho = props.noEcho;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * The data type for the parameter (DataType).
+       *
+       * @default String
+       */
+      get type() {
+        return this._type;
+      }
+      set type(type) {
+        this._type = type;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * A value of the appropriate type for the template to use if no value is specified
+       * when a stack is created. If you define constraints for the parameter, you must specify
+       * a value that adheres to those constraints.
+       *
+       * @default - No default value for parameter.
+       */
+      get default() {
+        return this._default;
+      }
+      set default(value) {
+        this._default = value;
+      }
+      /**
+       * A regular expression that represents the patterns to allow for String types.
+       *
+       * @default - No constraints on patterns allowed for parameter.
+       */
+      get allowedPattern() {
+        return this._allowedPattern;
+      }
+      set allowedPattern(pattern) {
+        this._allowedPattern = pattern;
+      }
+      /**
+       * An array containing the list of values allowed for the parameter.
+       *
+       * @default - No constraints on values allowed for parameter.
+       */
+      get allowedValues() {
+        return this._allowedValues;
+      }
+      set allowedValues(values) {
+        this._allowedValues = values;
+      }
+      /**
+       * A string that explains a constraint when the constraint is violated.
+       * For example, without a constraint description, a parameter that has an allowed
+       * pattern of [A-Za-z0-9]+ displays the following error message when the user specifies
+       * an invalid value:
+       *
+       * @default - No description with customized error message when user specifies invalid values.
+       */
+      get constraintDescription() {
+        return this._constraintDescription;
+      }
+      set constraintDescription(desc) {
+        this._constraintDescription = desc;
+      }
+      /**
+       * A string of up to 4000 characters that describes the parameter.
+       *
+       * @default - No description for the parameter.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(desc) {
+        this._description = desc;
+      }
+      /**
+       * An integer value that determines the largest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get maxLength() {
+        return this._maxLength;
+      }
+      set maxLength(len) {
+        this._maxLength = len;
+      }
+      /**
+       * An integer value that determines the smallest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get minLength() {
+        return this._minLength;
+      }
+      set minLength(len) {
+        this._minLength = len;
+      }
+      /**
+       * A numeric value that determines the largest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get maxValue() {
+        return this._maxValue;
+      }
+      set maxValue(len) {
+        this._maxValue = len;
+      }
+      /**
+       * A numeric value that determines the smallest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get minValue() {
+        return this._minValue;
+      }
+      set minValue(len) {
+        this._minValue = len;
+      }
+      /**
+       * Indicates if this parameter is configured with "NoEcho" enabled.
+       */
+      get noEcho() {
+        return !!this._noEcho;
+      }
+      set noEcho(echo) {
+        this._noEcho = echo;
+      }
+      /**
+       * The parameter value as a Token
+       */
+      get value() {
+        return CfnReference.for(this, "Ref", void 0, this.typeHint);
+      }
+      /**
+       * The parameter value, if it represents a string.
+       */
+      get valueAsString() {
+        if (!isStringType(this.type) && !isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string or number type`, this);
+        }
+        return Token.asString(this.value);
+      }
+      /**
+       * The parameter value, if it represents a string list.
+       */
+      get valueAsList() {
+        if (!isListType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string list type`, this);
+        }
+        return Token.asList(this.value);
+      }
+      /**
+       * The parameter value, if it represents a number.
+       */
+      get valueAsNumber() {
+        if (!isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a number type`, this);
+        }
+        return Token.asNumber(this.value);
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Parameters: {
+            [this.logicalId]: {
+              Type: this.type,
+              Default: this.default,
+              AllowedPattern: this.allowedPattern,
+              AllowedValues: this.allowedValues,
+              ConstraintDescription: this.constraintDescription,
+              Description: this.description,
+              MaxLength: this.maxLength,
+              MaxValue: this.maxValue,
+              MinLength: this.minLength,
+              MinValue: this.minValue,
+              NoEcho: this._noEcho
+            }
+          }
+        };
+      }
+      resolve(_context) {
+        return this.value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts
+var SSM_EXPORT_PATH_PREFIX;
+var init_types2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts"() {
+    "use strict";
+    SSM_EXPORT_PATH_PREFIX = "cdk/exports/";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts
+var path11, CrossRegionSsmReaderProvider;
+var init_cross_region_ssm_reader_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts"() {
+    "use strict";
+    path11 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmReaderProvider = class _CrossRegionSsmReaderProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmReaderProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path11.join(__dirname, "cross-region-ssm-reader-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts
+var import_constructs12, ExportReader;
+var init_export_reader_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts"() {
+    "use strict";
+    import_constructs12 = __toESM(require_lib4());
+    init_types2();
+    init_cfn_resource();
+    init_custom_resource();
+    init_cross_region_ssm_reader_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    ExportReader = class _ExportReader extends import_constructs12.Construct {
+      static getOrCreate(scope, uniqueId, _props = {}) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportReader(stack, uniqueId);
+      }
+      importParameters = Box.fromMap();
+      customResource;
+      constructor(scope, id, _props = {}) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const resourceType = "Custom::CrossRegionExportReader";
+        const serviceToken = CrossRegionSsmReaderProvider.getOrCreate(this, resourceType, {
+          policyStatements: [{
+            Effect: "Allow",
+            Resource: stack.formatArn({
+              service: "ssm",
+              resource: "parameter",
+              resourceName: `${SSM_EXPORT_PATH_PREFIX}${stack.stackName}/*`
+            }),
+            Action: [
+              "ssm:AddTagsToResource",
+              "ssm:RemoveTagsFromResource",
+              "ssm:GetParameters"
+            ]
+          }]
+        });
+        const properties = {
+          region: stack.region,
+          prefix: stack.stackName,
+          imports: this.importParameters.derive((m) => Object.fromEntries(m))
+        };
+        this.customResource = new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken,
+          properties: {
+            ReaderProps: properties
+          }
+        });
+      }
+      /**
+       * This is the only way to add a dependency on a custom resource currently
+       */
+      addDependency(resource) {
+        const customResource = this.customResource.node.tryFindChild("Default");
+        if (customResource && CfnResource.isCfnResource(customResource)) {
+          customResource.addDependsOn(resource);
+        }
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exports map of unique name associated with the export to SSM Dynamic reference
+       */
+      importValue(name, value) {
+        this.importParameters.put(name, value.toString());
+        return this.customResource.getAtt(name);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts
+var CfnDynamicReference;
+var init_cfn_dynamic_reference = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts"() {
+    "use strict";
+    init_intrinsic();
+    CfnDynamicReference = class extends Intrinsic {
+      constructor(service, key) {
+        super("{{resolve:" + service + ":" + key + "}}");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts
+var path12, CrossRegionSsmWriterProvider;
+var init_cross_region_ssm_writer_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts"() {
+    "use strict";
+    path12 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmWriterProvider = class _CrossRegionSsmWriterProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmWriterProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path12.join(__dirname, "cross-region-ssm-writer-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts
+var import_constructs13, CRProvider, ExportWriter;
+var init_export_writer_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts"() {
+    "use strict";
+    import_constructs13 = __toESM(require_lib4());
+    init_export_reader_provider();
+    init_types2();
+    init_cfn_dynamic_reference();
+    init_custom_resource();
+    init_cross_region_ssm_writer_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_uniqueid();
+    init_token();
+    CRProvider = class _CRProvider extends CrossRegionSsmWriterProvider {
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = stackOf(scope);
+        const provider = stack.node.tryFindChild(id) ?? new _CRProvider(stack, id, props);
+        return provider;
+      }
+      resourceArns = Box.fromSet();
+      constructor(scope, id, props) {
+        super(scope, id, props);
+        this.addToRolePolicy({
+          Effect: "Allow",
+          Resource: this.resourceArns.derive(Array.from),
+          Action: [
+            "ssm:DeleteParameters",
+            "ssm:ListTagsForResource",
+            "ssm:GetParameters",
+            "ssm:PutParameter"
+          ]
+        });
+      }
+      /**
+       * Add a resource ARN to the existing policy statement
+       */
+      addResourceArn(arn) {
+        this.resourceArns.add(arn);
+      }
+    };
+    ExportWriter = class _ExportWriter extends import_constructs13.Construct {
+      static getOrCreate(scope, uniqueId, props) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportWriter(stack, uniqueId, {
+          region: props.region
+        });
+      }
+      _references = Box.fromMap();
+      provider;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const region = props.region ?? stack.region;
+        const resourceType = "Custom::CrossRegionExportWriter";
+        this.provider = CRProvider.getOrCreateProvider(this, resourceType);
+        this.addRegionToPolicy(region);
+        const properties = {
+          region,
+          exports: this._references.derive((m) => Object.fromEntries(m))
+        };
+        new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken: this.provider.serviceToken,
+          properties: {
+            WriterProps: properties
+          }
+        });
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exportName the unique name associated with the export
+       * @param reference the value that will be exported
+       * @returns a reference to the reader custom resource
+       */
+      exportValue(exportName, reference, importStack) {
+        const parameterName = this.registerExport(exportName, reference, importStack);
+        const ref = new CfnDynamicReference("ssm" /* SSM */, parameterName);
+        return this.addToExportReader(parameterName, ref, importStack);
+      }
+      /**
+       * Register a reference with the writer without creating an ExportReader in the consumer stack.
+       * Used during the "both" transitional state where the producer still writes to SSM
+       * but the consumer reads via Fn::GetStackOutput instead of the ExportReader.
+       */
+      exportValueWriteOnly(exportName, reference, importStack) {
+        this.registerExport(exportName, reference, importStack);
+      }
+      registerExport(exportName, reference, importStack) {
+        const stack = stackOf(this);
+        const parameterName = `/${SSM_EXPORT_PATH_PREFIX}${exportName}`;
+        this._references.put(parameterName, stack.resolve(reference.toString()));
+        this.addRegionToPolicy(importStack.region);
+        return parameterName;
+      }
+      /**
+       * Add a resource arn for the consuming stack region
+       * Each writer could be writing to multiple regions and needs
+       * permissions to each region.
+       *
+       * If the region is not resolved then do not add anything.
+       */
+      addRegionToPolicy(region) {
+        if (!Token.isUnresolved(region)) {
+          this.provider.addResourceArn(stackOf(this).formatArn({
+            service: "ssm",
+            resource: "parameter",
+            region,
+            resourceName: `${SSM_EXPORT_PATH_PREFIX}*`
+          }));
+        }
+      }
+      /**
+       * Add the export to the export reader which is created in the importing stack
+       */
+      addToExportReader(exportName, exportValueRef, importStack) {
+        const readerConstructName = makeUniqueId(["ExportsReader"]);
+        const exportReader = ExportReader.getOrCreate(importStack.nestedStackParent ?? importStack, readerConstructName);
+        this.addRegionToPolicy(importStack.region);
+        return exportReader.importValue(exportName, exportValueRef);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/linked-queue.ts
+var LinkedQueue;
+var init_linked_queue = __esm({
+  "../../aws-cdk-lib/core/lib/private/linked-queue.ts"() {
+    "use strict";
+    LinkedQueue = class {
+      head;
+      last;
+      constructor(items) {
+        if (items) {
+          for (const x of items) {
+            this.push(x);
+          }
+        }
+      }
+      push(value) {
+        const node = { value };
+        if (this.head && this.last) {
+          this.last.next = node;
+          this.last = node;
+        } else {
+          this.head = node;
+          this.last = node;
+        }
+      }
+      shift() {
+        if (!this.head) {
+          return void 0;
+        }
+        const ret = this.head.value;
+        this.head = this.head.next;
+        if (!this.head) {
+          this.last = void 0;
+        }
+        return ret;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/construct-iteration.ts
+function* iterateDfsPreorder(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    stack.push(...next.node.children.reverse());
+    yield next;
+    next = stack.pop();
+  }
+}
+function* iterateTemplateCfnResources(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    if (NESTED_STACK_TYPE.isMarked(next)) {
+      if (next.nestedStackResource) {
+        yield next.nestedStackResource;
+      }
+    } else if (STACK_TYPE.isMarked(next) || STAGE_TYPE.isMarked(next)) {
+    } else {
+      if (isCfnResource(next)) {
+        yield next;
+      }
+      stack.push(...next.node.children.reverse());
+    }
+    next = stack.pop();
+  }
+}
+function* iterateDfsPostorder(root) {
+  const stack = [{ visit: root }];
+  let next = stack.pop();
+  while (next) {
+    if ("yield" in next) {
+      yield next.yield;
+    } else {
+      stack.push({ yield: next.visit });
+      stack.push(...next.visit.node.children.reverse().map((visit2) => ({ visit: visit2 })));
+    }
+    next = stack.pop();
+  }
+}
+function* iterateBfs(root) {
+  const queue = new LinkedQueue([{ construct: root, parent: void 0 }]);
+  let next = queue.shift();
+  while (next) {
+    for (const child of next.construct.node.children) {
+      queue.push({ construct: child, parent: next.construct });
+    }
+    yield next;
+    next = queue.shift();
+  }
+}
+var init_construct_iteration = __esm({
+  "../../aws-cdk-lib/core/lib/private/construct-iteration.ts"() {
+    "use strict";
+    init_core_construct_finders();
+    init_linked_queue();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts
+var ReferenceStrength;
+var init_cross_stack_reference_strength = __esm({
+  "../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_cx_api();
+    init_literal_string();
+    ReferenceStrength = /* @__PURE__ */ ((ReferenceStrength2) => {
+      ReferenceStrength2["STRONG"] = "strong";
+      ReferenceStrength2["WEAK"] = "weak";
+      ReferenceStrength2["BOTH"] = "both";
+      return ReferenceStrength2;
+    })(ReferenceStrength || {});
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/refs.ts
+function crossStackReferenceStrength(scope) {
+  const value = scope.node.tryGetContext(DEFAULT_CROSS_STACK_REFERENCES);
+  if (value === void 0 || value === null) {
+    return void 0;
+  }
+  if (Object.values(ReferenceStrength).includes(value)) {
+    return value;
+  }
+  throw new UnscopedValidationError(
+    lit`InvalidReferenceStrength`,
+    `Invalid value for ${DEFAULT_CROSS_STACK_REFERENCES}: "${value}". Must be "strong", "weak", or "both".`
+  );
+}
+function resolveReferences(scope) {
+  resolveReferencesInElements(iterateDfsPreorder(scope));
+}
+function resolveReferencesInElements(elements) {
+  const { refs, overrides } = findAllReferences(elements);
+  for (const { source, value } of refs) {
+    const consumer = stackOf(source);
+    if (!value.hasValueForStack(consumer)) {
+      const resolved = resolveValue(consumer, value);
+      value.assignValueForStack(consumer, resolved);
+    }
+  }
+  for (const { source, override } of overrides) {
+    const consumer = stackOf(source);
+    const resolved = resolveValue(consumer, override.reference, override.strength);
+    override.assignValue(resolved);
+  }
+}
+function resolveValue(consumer, reference, strengthOverride) {
+  const producer = stackOf(reference.target);
+  const producerAccount = !Token.isUnresolved(producer.account) ? producer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const producerRegion = !Token.isUnresolved(producer.region) ? producer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const consumerAccount = !Token.isUnresolved(consumer.account) ? consumer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const consumerRegion = !Token.isUnresolved(consumer.region) ? consumer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const resourceStrength = CfnResource.isCfnResource(reference.target) ? reference.target._crossStackReferenceStrengthOverride : void 0;
+  const strength = strengthOverride ?? resourceStrength ?? crossStackReferenceStrength(consumer) ?? "strong";
+  if (producer === consumer) {
+    return reference;
+  }
+  if (producer.node.root !== consumer.node.root) {
+    throw new UnscopedValidationError(lit`CannotReferenceAcrossApps`, "Cannot reference across apps. Consuming and producing stacks must be defined within the same CDK app.");
+  }
+  if (consumer.nestedStackParent && isNested(consumer, producer)) {
+    const parameterValue = resolveValue(consumer.nestedStackParent, reference);
+    return createNestedStackParameter(consumer, reference, parameterValue);
+  }
+  if (producer.nested) {
+    const outputValue = createNestedStackOutput(producer, reference);
+    const resolvedValue = resolveValue(consumer, outputValue);
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(resolvedValue)));
+    } else {
+      return resolvedValue;
+    }
+  }
+  const appRoot = consumer.node.root;
+  if (!appRoot[WEAK_REFS_WARNING_EMITTED]) {
+    const contextStrength = crossStackReferenceStrength(consumer);
+    if (contextStrength === void 0) {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesDefaultStrong",
+        `No cross-stack-reference strength configured, defaulting to "strong". We recommend you set feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" to "both", then deploy everywhere, then set it to "weak". Alternatively, set it to "strong" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    } else if (contextStrength === "both") {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesBothTransitional",
+        `Feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" currently set to "both". This is a transitory state. After you have finished deploying this application everywhere, set it to "weak". (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    }
+  }
+  if (producerAccount !== consumerAccount) {
+    if (strength === "strong") {
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossAccountRefsAreAlwaysWeak",
+        `Strong references requested, but cross-account references can only be weak. Acknowledge this warning or set "${DEFAULT_CROSS_STACK_REFERENCES}" to "weak" to remove this message.`
+      );
+    }
+    if (consumer.synthesizer.cloudFormationExecutionRole == null) {
+      throw new UnscopedValidationError(
+        lit`NoCfnExecutionRoleForCrossAccountRefs`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Could not find a CloudFormation execution role for the consumer stack. Use a stack synthesizer that provides a CloudFormation execution role, such as DefaultStackSynthesizer (that uses the role from the bootstrap stack), or one that you can customize, such as BootstraplessSynthesizer.`
+      );
+    }
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    const producerStackArn = stackOf(reference.target).formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      consumerRoleArn: consumer.synthesizer.cloudFormationExecutionRole,
+      producerAccount,
+      producerRegion,
+      producerStackArn
+    });
+  }
+  if (producerRegion !== consumerRegion) {
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    consumer.addStackDependency(
+      producer,
+      `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+    );
+    if (strength === "strong") {
+      return createCrossRegionImportValue(reference, consumer);
+    }
+    if (strength === "both") {
+      createCrossRegionExportOnly(reference, consumer);
+    }
+    const producerStackArn = producer.formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      producerStackArn
+    });
+  }
+  consumer.addStackDependency(
+    producer,
+    `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+  );
+  if (strength === "strong") {
+    return createImportValue(reference);
+  }
+  if (strength === "both") {
+    createImportValue(reference);
+  }
+  return createGetStackOutput(reference, {});
+}
+function renderReference(ref) {
+  return `{${ref.target.node.path}[${ref.displayName}]}`;
+}
+function findAllReferences(elements) {
+  const refs = new Array();
+  const overrides = new Array();
+  for (const consumer of elements) {
+    if (!CfnElement.isCfnElement(consumer)) {
+      continue;
+    }
+    try {
+      const tokens = findTokens(consumer, () => consumer._toCloudFormation());
+      for (const token of tokens) {
+        if (CustomCoupledReference.isCustomCoupledReference(token)) {
+          overrides.push({ source: consumer, override: token });
+        } else if (CfnReference.isCfnReference(token)) {
+          refs.push({ source: consumer, value: token });
+        }
+      }
+    } catch (e) {
+      if (e.type === "CfnSynthesisError") {
+        continue;
+      }
+      throw e;
+    }
+  }
+  return { refs, overrides };
+}
+function createImportValue(reference) {
+  const exportingStack = stackOf(reference.target);
+  let importExpr;
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    importExpr = exportingStack.exportStringListValue(reference);
+    return Tokenization.reverseList(importExpr);
+  }
+  importExpr = exportingStack.exportValue(reference);
+  return Tokenization.reverseCompleteString(importExpr);
+}
+function getOrCreateExportWriter(reference, importStack) {
+  const referenceStack = stackOf(reference.target);
+  const exportingStack = referenceStack.nestedStackParent ?? referenceStack;
+  const exportable = getExportable(exportingStack, reference);
+  const id = JSON.stringify(exportingStack.resolve(exportable));
+  const exportName = generateExportName(importStack, reference, id);
+  if (Token.isUnresolved(exportName)) {
+    throw new UnscopedValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(exportingStack.resolve(exportName))}`);
+  }
+  const writerConstructName = makeUniqueId(["ExportsWriter", importStack.region]);
+  const exportWriter = ExportWriter.getOrCreate(exportingStack, writerConstructName, {
+    region: importStack.region
+  });
+  return { exportWriter, exportName };
+}
+function createCrossRegionImportValue(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  const exported = exportWriter.exportValue(exportName, reference, importStack);
+  if (importStack.nestedStackParent) {
+    return createNestedStackParameter(importStack, exported, exported);
+  }
+  return exported;
+}
+function createCrossRegionExportOnly(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  exportWriter.exportValueWriteOnly(exportName, reference, importStack);
+}
+function generateExportName(importStack, reference, id) {
+  const referenceStack = stackOf(reference.target);
+  const components = [
+    referenceStack.stackName ?? "",
+    referenceStack.region,
+    id
+  ];
+  const prefix = `${importStack.nestedStackParent?.stackName ?? importStack.stackName}/`;
+  const localPart = makeUniqueId(components);
+  const maxLength = 900;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function createGetStackOutputRole(scope, id, props) {
+  const consumers = /* @__PURE__ */ new Set([props.consumerRoleArn]);
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Role",
+    properties: {
+      AssumeRolePolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Principal: {
+              AWS: Lazy.any({
+                produce: () => {
+                  const arns = [...consumers].map((arn) => ({ "Fn::Sub": arn }));
+                  return arns.length === 1 ? arns[0] : arns;
+                }
+              })
+            },
+            Action: [
+              "sts:AssumeRole"
+            ]
+          }
+        ]
+      }
+    }
+  });
+  ROLE_CONSUMERS.set(resource, consumers);
+  const roleName = Names.uniqueResourceName(resource, {
+    maxLength: 64
+  });
+  resource.addPropertyOverride("RoleName", roleName);
+  const roleArn = stackOf(scope).formatArn({
+    service: "iam",
+    resource: "role",
+    resourceName: roleName,
+    account: props.producerAccount,
+    arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+    region: ""
+  });
+  return { resource, roleRef: { roleArn, roleName } };
+}
+function addConsumerToRole(roleResource, consumerRoleArn) {
+  const consumers = ROLE_CONSUMERS.get(roleResource);
+  if (consumers) {
+    consumers.add(consumerRoleArn);
+  }
+}
+function createGetStackOutputPolicy(scope, id, props) {
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Policy",
+    properties: {
+      Roles: [Fn.ref(props.role.logicalId)],
+      PolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Action: "cloudformation:DescribeStacks",
+            Resource: props.producerStackArn
+          }
+        ]
+      }
+    }
+  });
+  const policyName = Names.uniqueResourceName(resource, {
+    maxLength: 128
+  });
+  resource.addPropertyOverride("PolicyName", policyName);
+  return { resource, policyRef: { policyId: policyName } };
+}
+function createGetStackOutput(reference, options = {}) {
+  const exportingStack = stackOf(reference.target);
+  const resolved = JSON.stringify(exportingStack.resolve(reference));
+  const outputId = "Output" + resolved;
+  const roleId = "GetStackOutputRole";
+  const policyId = "GetStackOutputPolicy";
+  function createScope(stack) {
+    const scopeName = "Publish";
+    let scope2 = stack.node.tryFindChild(scopeName);
+    if (scope2 === void 0) {
+      scope2 = new import_constructs14.Construct(stack, scopeName);
+    }
+    return scope2;
+  }
+  const scope = createScope(exportingStack);
+  let output = scope.node.tryFindChild(outputId);
+  if (output == null) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(scope, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(scope, outputId, {
+        value: Token.asString(reference)
+      });
+    }
+  }
+  let roleArn = void 0;
+  if (options.consumerRoleArn) {
+    let roleResource = scope.node.tryFindChild(roleId);
+    if (roleResource == null) {
+      const { resource, roleRef } = createGetStackOutputRole(scope, roleId, {
+        consumerRoleArn: options.consumerRoleArn,
+        producerAccount: options.producerAccount
+      });
+      roleResource = resource;
+      roleArn = roleRef.roleArn;
+    } else {
+      addConsumerToRole(roleResource, options.consumerRoleArn);
+      const roleName = Names.uniqueResourceName(roleResource, { maxLength: 64 });
+      roleArn = exportingStack.formatArn({
+        service: "iam",
+        resource: "role",
+        resourceName: roleName,
+        account: options.producerAccount,
+        arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+        region: ""
+      });
+    }
+    let policy = scope.node.tryFindChild(policyId);
+    if (policy == null) {
+      createGetStackOutputPolicy(scope, policyId, {
+        role: roleResource,
+        producerStackArn: options.producerStackArn
+      });
+    }
+  }
+  const getStackOutput = Fn.getStackOutput(exportingStack.stackName, output.logicalId, exportingStack.region, roleArn);
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, getStackOutput));
+  }
+  return Tokenization.reverseCompleteString(getStackOutput);
+}
+function getExportable(stack, reference) {
+  if (CfnElement.isCfnElement(reference.target)) {
+    reference.target._lockLogicalId();
+  }
+  return referenceNestedStackValueInParent(reference, stack);
+}
+function createNestedStackParameter(nested, reference, value) {
+  const paramId = generateUniqueId(nested, reference, "reference-to-");
+  let param = nested.node.tryFindChild(paramId);
+  if (!param) {
+    param = new CfnParameter(nested, paramId, { type: "String" });
+    if (!("setParameter" in nested)) {
+      throw new UnscopedValidationError(lit`NestedStackMustHaveSetParameter`, 'assertion failed: nested stack should have a "setParameter" method');
+    }
+    nested.setParameter(param.logicalId, Token.asString(value));
+  }
+  return param.value;
+}
+function createNestedStackOutput(producer, reference) {
+  const outputId = generateUniqueId(producer, reference);
+  let output = producer.node.tryFindChild(outputId);
+  if (!output) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(producer, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(producer, outputId, { value: Token.asString(reference) });
+    }
+  }
+  if (!producer.nestedStackResource) {
+    throw new AssumptionError(lit`AssertionFailed`, "assertion failed");
+  }
+  return producer.nestedStackResource.getAtt(`Outputs.${output.logicalId}`);
+}
+function referenceNestedStackValueInParent(reference, targetStack) {
+  let currentStack = stackOf(reference.target);
+  if (currentStack !== targetStack && !isNested(currentStack, targetStack)) {
+    throw new UnscopedValidationError(lit`ReferencedResourceMustBeInTargetStack`, `Referenced resource must be in stack '${targetStack.node.path}', got '${reference.target.node.path}'`);
+  }
+  const isNestedListReference = currentStack !== targetStack && reference.typeHint === "string-list" /* STRING_LIST */;
+  while (currentStack !== targetStack) {
+    reference = createNestedStackOutput(stackOf(reference.target), reference);
+    currentStack = stackOf(reference.target);
+  }
+  if (isNestedListReference) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(reference)));
+  }
+  return reference;
+}
+function isNested(nested, parent) {
+  if (nested.nestedStackParent === parent) {
+    return true;
+  }
+  if (!nested.nestedStackParent) {
+    return false;
+  }
+  return isNested(nested.nestedStackParent, parent);
+}
+function generateUniqueId(stack, ref, prefix = "") {
+  return stack.resolve(`${prefix}${Names.nodeUniqueId(ref.target.node)}${ref.displayName}`);
+}
+var import_constructs14, STRING_LIST_REFERENCE_DELIMITER, WEAK_REFS_WARNING_EMITTED, OVERRIDDEN_REFERENCE_SYMBOL, CustomCoupledReference, ROLE_CONSUMERS;
+var init_refs = __esm({
+  "../../aws-cdk-lib/core/lib/private/refs.ts"() {
+    "use strict";
+    import_constructs14 = __toESM(require_lib4());
+    init_cfn_reference();
+    init_intrinsic();
+    init_resolve();
+    init_uniqueid();
+    init_cx_api();
+    init_annotations();
+    init_arn();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_export_writer_provider();
+    init_errors();
+    init_lazy();
+    init_names();
+    init_token();
+    init_type_hints();
+    init_construct_iteration();
+    init_cfn_resource();
+    init_literal_string();
+    init_cross_stack_reference_strength();
+    init_core_construct_finders();
+    STRING_LIST_REFERENCE_DELIMITER = "||";
+    WEAK_REFS_WARNING_EMITTED = /* @__PURE__ */ Symbol.for("@aws-cdk/core.WeakRefsWarningEmitted");
+    OVERRIDDEN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CustomCoupledReference");
+    CustomCoupledReference = class extends Intrinsic {
+      static isCustomCoupledReference(x) {
+        return OVERRIDDEN_REFERENCE_SYMBOL in x;
+      }
+      reference;
+      strength;
+      resolvedValue;
+      constructor(reference, strength) {
+        super(reference, { typeHint: reference.typeHint });
+        this.reference = reference;
+        this.strength = strength;
+        Object.defineProperty(this, OVERRIDDEN_REFERENCE_SYMBOL, { value: true });
+      }
+      assignValue(value) {
+        this.resolvedValue = value;
+      }
+      resolve(context) {
+        if (this.resolvedValue) {
+          return this.resolvedValue.resolve(context);
+        }
+        return this.reference.resolve(context);
+      }
+    };
+    ROLE_CONSUMERS = /* @__PURE__ */ new WeakMap();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deps.ts
+function reifyConstructDependencies(root) {
+  for (const dependency of registeredConstructDependencies(root)) {
+    dispatchDependencyOperation(dependency);
+  }
+}
+function dispatchDependencyOperation(op) {
+  if (op.source === op.target) {
+    return;
+  }
+  if (process.env.CDK_DEBUG_DEPS) {
+    if (op.kind === "add") {
+      console.error(`[CDK_DEBUG_DEPS] applying dependency ${op.reason}`);
+    } else {
+      console.error(`[CDK_DEBUG_DEPS] removing construct dependency ${op.source.node.path} -> ${op.target.node.path}`);
+    }
+  }
+  const sourcePath = dependencyContainerPath(op.source);
+  const targetPath = dependencyContainerPath(op.target);
+  const parentI = sharedDependencyContainerIndex(sourcePath, targetPath);
+  validateNoStagesCrossed(sourcePath, targetPath, op);
+  validateNoParentChildDependency(sourcePath, targetPath, parentI, op);
+  if (parentI < sourcePath.length - 1 && parentI < targetPath.length - 1) {
+    doDispatch(sourcePath[parentI + 1], targetPath[parentI + 1], op);
+  }
+}
+function validateNoStagesCrossed(sourcePath, targetPath, op) {
+  const sourceStage = last(sourcePath.filter((c) => c.type === "stage"))?.construct;
+  const targetStage = last(targetPath.filter((c) => c.type === "stage"))?.construct;
+  if (sourceStage !== targetStage) {
+    throw new UnscopedValidationError(lit`NoCrossStageDependency`, `You cannot have a dependency from '${op.source.node.path}' (in ${describeStage(sourceStage)}) to '${op.target.node.path}' (in ${describeStage(targetStage)}): dependency cannot cross stage boundaries`);
+  }
+}
+function validateNoParentChildDependency(sourcePath, targetPath, parentI, op) {
+  if (parentI === targetPath.length - 1) {
+    throw new UnscopedValidationError(lit`CannotDependOnParent`, `'${op.source.node.path}' cannot depend on parent ${targetPath[parentI].type} '${op.target.node.path}'`);
+  }
+  void sourcePath;
+}
+function doDispatch(source, target, op) {
+  switch (source.type) {
+    case "stage":
+      break;
+    case "stack":
+      if (target.type === "stack") {
+        if (op.kind === "add") {
+          source.construct._addStackDependency(target.construct, op);
+        } else {
+          source.construct._removeStackDependency(target.construct, op);
+        }
+      }
+      break;
+    case "nested-stack":
+    case "construct":
+      for (const sourceResource of dependingResourcesFor(source)) {
+        for (const targetResource of dependingResourcesFor(target)) {
+          if (sourceResource === targetResource) {
+            continue;
+          }
+          if (op.kind === "add") {
+            sourceResource._addResourceDependency(targetResource);
+          } else {
+            sourceResource._removeResourceDependency(targetResource);
+          }
+        }
+      }
+      break;
+  }
+}
+function* dependingResourcesFor(construct) {
+  if (construct.type === "nested-stack" && construct.construct.nestedStackResource) {
+    yield construct.construct.nestedStackResource;
+  }
+  if (construct.type === "construct") {
+    yield* iterateTemplateCfnResources(construct.construct);
+  }
+}
+function dependencyContainerPath(start) {
+  const ret = [];
+  let construct = start;
+  while (construct) {
+    let candidate;
+    if (STAGE_TYPE.isMarked(construct)) {
+      candidate = { type: "stage", construct };
+    } else if (NESTED_STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "nested-stack", construct };
+    } else if (STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "stack", construct };
+    } else {
+      if (ret.length === 0) {
+        candidate = { type: "construct", construct };
+      }
+    }
+    if (candidate && (ret.length === 0 || contains(candidate, ret[ret.length - 1]))) {
+      ret.push(candidate);
+    }
+    construct = construct.node.scope;
+  }
+  return ret.reverse();
+  function contains(container, child) {
+    switch (child.type) {
+      case "stage":
+        return container.type == "stage";
+      case "nested-stack":
+        return container.type == "nested-stack" || container.type == "stack";
+      case "stack":
+        return container.type == "stage";
+      case "construct":
+        return true;
+    }
+  }
+}
+function sharedDependencyContainerIndex(as, bs) {
+  const minLength = Math.min(as.length, bs.length);
+  for (let i = minLength - 1; i >= 0; i--) {
+    if (as[i].construct === bs[i].construct) {
+      return i;
+    }
+  }
+  return -1;
+}
+function* registeredConstructDependencies(root) {
+  const found = /* @__PURE__ */ new Map();
+  for (const source of iterateDfsPreorder(root)) {
+    for (const dependable of source.node.dependencies) {
+      for (const target of import_constructs15.Dependable.of(dependable).dependencyRoots) {
+        if (source === target) {
+          continue;
+        }
+        let foundTargets = found.get(source);
+        if (!foundTargets) {
+          found.set(source, foundTargets = /* @__PURE__ */ new Set());
+        }
+        if (!foundTargets.has(target)) {
+          yield { kind: "add", source, target, reason: `<${source.node.path}>.node.addDependency(<${target.node.path}>)` };
+          foundTargets.add(target);
+        }
+      }
+    }
+  }
+}
+function describeStage(assembly) {
+  if (!assembly) {
+    return "an unrooted construct tree";
+  }
+  if (!assembly.parentStage) {
+    return "the App";
+  }
+  return `Stage '${assembly.node.path}'`;
+}
+function last(xs) {
+  return xs[xs.length - 1];
+}
+var import_constructs15;
+var init_deps = __esm({
+  "../../aws-cdk-lib/core/lib/private/deps.ts"() {
+    "use strict";
+    import_constructs15 = __toESM(require_lib4());
+    init_errors();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/prepare-app.ts
+function writePropertyAssignmentMetadata(root) {
+  if (!debugModeEnabled()) return;
+  const lookupTableFor = (c) => ({
+    cfnPropertyName: (cdkPropertyName) => c.cfnPropertyName(cdkPropertyName)
+  });
+  for (const consumer of iterateDfsPreorder(root)) {
+    if (CfnResource.isCfnResource(consumer)) {
+      writePropertyAssignmentMetadataForConstruct(consumer, () => consumer._toCloudFormation(), lookupTableFor(consumer));
+    }
+  }
+}
+function prepareApp(root) {
+  reifyConstructDependencies(root);
+  resolveReferences(root);
+  writePropertyAssignmentMetadata(root);
+  const nestedStacks = findAllNestedStacks(root);
+  if (nestedStacks.length > 0) {
+    for (const nested of nestedStacks) {
+      defineNestedStackAsset(nested);
+    }
+    resolveReferencesInElements(nestedStacks.map((s) => s.nestedStackResource));
+  }
+}
+function defineNestedStackAsset(nestedStack) {
+  const nested = nestedStack;
+  nested._prepareTemplateAsset();
+}
+function findAllNestedStacks(root) {
+  const result = new Array();
+  const includeStack = (stack) => {
+    if (!STACK_TYPE.isMarked(stack)) {
+      return false;
+    }
+    if (!stack.nested) {
+      return false;
+    }
+    if (!stageOf(stack)) {
+      return true;
+    }
+    return stageOf(stack) === root;
+  };
+  for (const node of iterateDfsPostorder(root)) {
+    if (includeStack(node)) {
+      result.push(node);
+    }
+  }
+  return result;
+}
+var init_prepare_app = __esm({
+  "../../aws-cdk-lib/core/lib/private/prepare-app.ts"() {
+    "use strict";
+    init_refs();
+    init_cfn_resource();
+    init_debug();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_deps();
+    init_resolve();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/validation-id.ts
+function parseValidationId(id) {
+  let nsSeparator = void 0;
+  const braceStack = [];
+  for (let i = 0; i < id.length; i++) {
+    const c = id[i];
+    if (c === ":" && id[i + 1] === ":" && braceStack.length === 0) {
+      if (nsSeparator !== void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. The '::' delimiter is reserved for separating the prefix from the rule name (e.g. 'prefix::RuleName').`);
+      }
+      nsSeparator = i;
+      i += 1;
+    } else if (["]", ")", "}"].includes(c)) {
+      const lastBrace = braceStack.pop();
+      if (lastBrace === void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Unmatched closing brace '${c}' at position ${i}.`);
+      }
+      if (lastBrace === "(" && c !== ")" || lastBrace === "[" && c !== "]" || lastBrace === "{" && c !== "}") {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Mismatched closing brace '${c}' at position ${i}. Expected '${lastBrace === "(" ? ")" : lastBrace === "[" ? "]" : "}"}'.`);
+      }
+    } else if (["[", "(", "{"].includes(c)) {
+      braceStack.push(c);
+    }
+  }
+  if (nsSeparator === void 0) {
+    return { ruleId: id };
+  }
+  if (nsSeparator === 0) {
+    throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Missing plugin name before '::'.`);
+  }
+  const namespace = id.substring(0, nsSeparator);
+  const ruleId = id.substring(nsSeparator + 2);
+  return { namespace, ruleId };
+}
+function normalizeValidationId(id, defaultNamespace) {
+  const p = typeof id === "string" ? parseValidationId(id) : id;
+  const parsed = {
+    namespace: p.namespace?.replaceAll(/ /g, "-"),
+    ruleId: p.ruleId.replaceAll(/ /g, "-")
+  };
+  if (parsed.namespace && ["annotation", "Construct-Annotations"].includes(parsed.namespace)) {
+    return `${ANNOTATION_PLUGIN_NAMESPACE}::${parsed.ruleId}`;
+  }
+  return `${parsed.namespace ?? defaultNamespace}::${parsed.ruleId}`;
+}
+function normalizeValidationIdForAnnotations(id) {
+  return normalizeValidationId(id, ANNOTATION_PLUGIN_NAMESPACE);
+}
+function namespaceFromPluginName(pluginName) {
+  if (pluginName === ANNOTATION_PLUGIN_NAME) {
+    return ANNOTATION_PLUGIN_NAMESPACE;
+  }
+  return pluginName.replace(/ /g, "-");
+}
+function pluginNameFromNamespace(namespace) {
+  return namespace.replace(/-/g, " ");
+}
+var ANNOTATION_PLUGIN_NAME, ANNOTATION_PLUGIN_NAMESPACE;
+var init_validation_id = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/validation-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ANNOTATION_PLUGIN_NAME = "Construct Annotations";
+    ANNOTATION_PLUGIN_NAMESPACE = namespaceFromPluginName("Annotation");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/annotation-plugin.ts
+function collectAnnotationReport(root) {
+  const myNamespace = namespaceFromPluginName(AnnotationPlugin.NAME);
+  const violationMap = /* @__PURE__ */ new Map();
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR) {
+        continue;
+      }
+      const severity = entry.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR ? "error" : "warning";
+      let { message, ruleName } = splitDescriptionAndId(String(entry.data));
+      if (ruleName && !ruleName.includes("::")) {
+        ruleName = `${myNamespace}::${ruleName}`;
+      }
+      let templatePath;
+      try {
+        templatePath = path13.join(stageOf(construct)?.outdir ?? ".", stackOf(construct).templateFile);
+      } catch (e) {
+      }
+      const resourceLogicalId = CfnResource.isCfnResource(construct) ? stackOf(construct).resolve(construct.logicalId) : void 0;
+      const violatingResource = {
+        constructPath: construct.node.path,
+        resourceLogicalId,
+        templatePath,
+        locations: []
+      };
+      const key = `${ruleName}|${severity}|${message}`;
+      const existing = violationMap.get(key);
+      if (existing) {
+        existing.violatingResources.push(violatingResource);
+      } else {
+        violationMap.set(key, {
+          ruleName: ruleName ?? `${myNamespace}::${severity}-annotation`,
+          description: message,
+          severity,
+          violatingResources: [violatingResource],
+          ruleMetadata: {
+            "cdk:annotation": "true"
+          }
+        });
+      }
+    }
+  }
+  const violations = Array.from(violationMap.values());
+  if (violations.length === 0) {
+    return void 0;
+  }
+  const hasErrors = violations.some((v) => v.severity === "error");
+  return new AnnotationPlugin({
+    pluginName: AnnotationPlugin.NAME,
+    success: !hasErrors,
+    violations,
+    metadata: {
+      "cdk:annotations": "true"
+    }
+  });
+}
+function splitDescriptionAndId(message) {
+  const ackMatch = message.match(/\[ack: ([^\]]+)\]/);
+  if (ackMatch) {
+    return { message: message.replace(ackMatch[0], "").trim(), ruleName: ackMatch[1] };
+  }
+  const idMatch = message.match(/\(([^()]+::[^()]+)\)$/);
+  if (idMatch) {
+    return { message: message.replace(idMatch[0], "").trim(), ruleName: idMatch[1] };
+  }
+  return { message };
+}
+var path13, AnnotationPlugin;
+var init_annotation_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/private/annotation-plugin.ts"() {
+    "use strict";
+    path13 = __toESM(require("path"));
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_cloud_assembly_schema();
+    init_cfn_resource();
+    init_validation_id();
+    AnnotationPlugin = class _AnnotationPlugin {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      static NAME = "Construct Annotations";
+      name = _AnnotationPlugin.NAME;
+      validate(_context) {
+        return this.report;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts
+function collectAcknowledgedRules(root) {
+  const rules = {};
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type === "aws:cdk:acknowledged-rules" && entry.data) {
+        for (const [id, reason] of Object.entries(entry.data)) {
+          const rule = { reason, acknowledgedId: id, acknowledgedAt: construct.node.path, acknowledgedStackTrace: entry.trace?.join("\n") };
+          const pathMap = rules[id] ??= {};
+          pathMap[rule.acknowledgedAt] = rule;
+        }
+      }
+    }
+  }
+  return rules;
+}
+var init_collect_acknowledged_rule_ids = __esm({
+  "../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts"() {
+    "use strict";
+    init_construct_iteration();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js
+var require_bindings_wasm = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js"(exports2) {
+    var WasmCelEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCelEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcelengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcelengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcelengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcelengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCelEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcelengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcelengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCelEngine.prototype[Symbol.dispose] = WasmCelEngine.prototype.free;
+    exports2.WasmCelEngine = WasmCelEngine;
+    var WasmCompositeEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCompositeEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcompositeengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcompositeengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcompositeengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {CompositeEngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcompositeengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCompositeEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcompositeengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcompositeengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCompositeEngine.prototype[Symbol.dispose] = WasmCompositeEngine.prototype.free;
+    exports2.WasmCompositeEngine = WasmCompositeEngine;
+    var WasmRegoEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmRegoEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmregoengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmregoengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmregoengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmregoengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmRegoEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmregoengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmregoengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmRegoEngine.prototype[Symbol.dispose] = WasmRegoEngine.prototype.free;
+    exports2.WasmRegoEngine = WasmRegoEngine;
+    var WasmSchemaValidator = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSchemaValidatorFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmschemavalidator_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmschemavalidator_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {SchemaValidatorConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmschemavalidator_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmSchemaValidatorFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @returns {number}
+       */
+      schemaCount() {
+        const ret = wasm.wasmschemavalidator_schemaCount(this.__wbg_ptr);
+        return ret >>> 0;
+      }
+      /**
+       * @param {WasmSemanticModel} model
+       * @param {string | null} [region]
+       * @returns {any}
+       */
+      validate(model, region) {
+        _assertClass(model, WasmSemanticModel);
+        var ptr0 = isLikeNone(region) ? 0 : passStringToWasm0(region, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        var len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmschemavalidator_validate(this.__wbg_ptr, model.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSchemaValidator.prototype[Symbol.dispose] = WasmSchemaValidator.prototype.free;
+    exports2.WasmSchemaValidator = WasmSchemaValidator;
+    var WasmSemanticModel = class _WasmSemanticModel {
+      static __wrap(ptr) {
+        const obj = Object.create(_WasmSemanticModel.prototype);
+        obj.__wbg_ptr = ptr;
+        WasmSemanticModelFinalization.register(obj, obj.__wbg_ptr, obj);
+        return obj;
+      }
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSemanticModelFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmsemanticmodel_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      conditions() {
+        const ret = wasm.wasmsemanticmodel_conditions(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      description() {
+        const ret = wasm.wasmsemanticmodel_description(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      formatVersion() {
+        const ret = wasm.wasmsemanticmodel_formatVersion(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {any}
+       */
+      outputs() {
+        const ret = wasm.wasmsemanticmodel_outputs(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      parameters() {
+        const ret = wasm.wasmsemanticmodel_parameters(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @returns {WasmSemanticModel}
+       */
+      static parse(template) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_parse(ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return _WasmSemanticModel.__wrap(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      resources() {
+        const ret = wasm.wasmsemanticmodel_resources(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {string} path
+       * @returns {any}
+       */
+      sourceLocation(path23) {
+        const ptr0 = passStringToWasm0(path23, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_sourceLocation(this.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      toDiagnosticModel() {
+        const ret = wasm.wasmsemanticmodel_toDiagnosticModel(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      transforms() {
+        const ret = wasm.wasmsemanticmodel_transforms(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSemanticModel.prototype[Symbol.dispose] = WasmSemanticModel.prototype.free;
+    exports2.WasmSemanticModel = WasmSemanticModel;
+    function init() {
+      wasm.init();
+    }
+    exports2.init = init;
+    function version3() {
+      let deferred1_0;
+      let deferred1_1;
+      try {
+        const ret = wasm.version();
+        deferred1_0 = ret[0];
+        deferred1_1 = ret[1];
+        return getStringFromWasm0(ret[0], ret[1]);
+      } finally {
+        wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+      }
+    }
+    exports2.version = version3;
+    function __wbg_get_imports() {
+      const import0 = {
+        __proto__: null,
+        __wbg_Error_92b29b0548f8b746: function(arg0, arg1) {
+          const ret = Error(getStringFromWasm0(arg0, arg1));
+          return ret;
+        },
+        __wbg_Number_9a4e0ecb0fa16705: function(arg0) {
+          const ret = Number(arg0);
+          return ret;
+        },
+        __wbg_String_8564e559799eccda: function(arg0, arg1) {
+          const ret = String(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_bigint_get_as_i64_d968e41184ae354f: function(arg0, arg1) {
+          const v = arg1;
+          const ret = typeof v === "bigint" ? v : void 0;
+          getDataViewMemory0().setBigInt64(arg0 + 8 * 1, isLikeNone(ret) ? BigInt(0) : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_boolean_get_fa956cfa2d1bd751: function(arg0) {
+          const v = arg0;
+          const ret = typeof v === "boolean" ? v : void 0;
+          return isLikeNone(ret) ? 16777215 : ret ? 1 : 0;
+        },
+        __wbg___wbindgen_debug_string_c25d447a39f5578f: function(arg0, arg1) {
+          const ret = debugString(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_in_aca499c5de7ff5e5: function(arg0, arg1) {
+          const ret = arg0 in arg1;
+          return ret;
+        },
+        __wbg___wbindgen_is_bigint_2f76dc55065b4273: function(arg0) {
+          const ret = typeof arg0 === "bigint";
+          return ret;
+        },
+        __wbg___wbindgen_is_function_1ff95bcc5517c252: function(arg0) {
+          const ret = typeof arg0 === "function";
+          return ret;
+        },
+        __wbg___wbindgen_is_object_a27215656b807791: function(arg0) {
+          const val2 = arg0;
+          const ret = typeof val2 === "object" && val2 !== null;
+          return ret;
+        },
+        __wbg___wbindgen_is_string_ea5e6cc2e4141dfe: function(arg0) {
+          const ret = typeof arg0 === "string";
+          return ret;
+        },
+        __wbg___wbindgen_is_undefined_c05833b95a3cf397: function(arg0) {
+          const ret = arg0 === void 0;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_eq_e659fcf7b0e32763: function(arg0, arg1) {
+          const ret = arg0 === arg1;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_loose_eq_db4c3b15f63fc170: function(arg0, arg1) {
+          const ret = arg0 == arg1;
+          return ret;
+        },
+        __wbg___wbindgen_number_get_394265ed1e1b84ee: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "number" ? obj : void 0;
+          getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_string_get_b0ca35b86a603356: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "string" ? obj : void 0;
+          var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          var len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_throw_344f42d3211c4765: function(arg0, arg1) {
+          throw new Error(getStringFromWasm0(arg0, arg1));
+        },
+        __wbg_call_8a2dd23819f8a60a: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = arg0.call(arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_done_89b2b13e91a60321: function(arg0) {
+          const ret = arg0.done;
+          return ret;
+        },
+        __wbg_entries_015dc610cd81ede0: function(arg0) {
+          const ret = Object.entries(arg0);
+          return ret;
+        },
+        __wbg_error_a6fa202b58aa1cd3: function(arg0, arg1) {
+          let deferred0_0;
+          let deferred0_1;
+          try {
+            deferred0_0 = arg0;
+            deferred0_1 = arg1;
+            console.error(getStringFromWasm0(arg0, arg1));
+          } finally {
+            wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
+          }
+        },
+        __wbg_getRandomValues_3f44b700395062e5: function() {
+          return handleError(function(arg0, arg1) {
+            globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
+          }, arguments);
+        },
+        __wbg_getTime_d6f070c088c9b5ed: function(arg0) {
+          const ret = arg0.getTime();
+          return ret;
+        },
+        __wbg_get_507a50627bffa49b: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_c7eb1f358a7654df: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = Reflect.get(arg0, arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_get_unchecked_6e0ad6d2a41b06f6: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_with_ref_key_6412cf3094599694: function(arg0, arg1) {
+          const ret = arg0[arg1];
+          return ret;
+        },
+        __wbg_instanceof_ArrayBuffer_4480b9e0068a8adb: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof ArrayBuffer;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Map_e5b5e3db98422fcc: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Map;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Uint8Array_309b927aaf7a3fc7: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Uint8Array;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_isArray_0677c962b281d01a: function(arg0) {
+          const ret = Array.isArray(arg0);
+          return ret;
+        },
+        __wbg_isSafeInteger_04f36e4056f1b851: function(arg0) {
+          const ret = Number.isSafeInteger(arg0);
+          return ret;
+        },
+        __wbg_iterator_6f722e4a93058b71: function() {
+          const ret = Symbol.iterator;
+          return ret;
+        },
+        __wbg_length_1f0964f4a5e2c6d8: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_length_370319915dc99107: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_new_0_3da9e97f24fc69be: function() {
+          const ret = /* @__PURE__ */ new Date();
+          return ret;
+        },
+        __wbg_new_227d7c05414eb861: function() {
+          const ret = new Error();
+          return ret;
+        },
+        __wbg_new_32b398fb48b6d94a: function() {
+          const ret = new Array();
+          return ret;
+        },
+        __wbg_new_7796ffc7ed656783: function() {
+          const ret = /* @__PURE__ */ new Map();
+          return ret;
+        },
+        __wbg_new_cd45aabdf6073e84: function(arg0) {
+          const ret = new Uint8Array(arg0);
+          return ret;
+        },
+        __wbg_new_da52cf8fe3429cb2: function() {
+          const ret = new Object();
+          return ret;
+        },
+        __wbg_next_6dbf2c0ac8cde20f: function(arg0) {
+          const ret = arg0.next;
+          return ret;
+        },
+        __wbg_next_71f2aa1cb3d1e37e: function() {
+          return handleError(function(arg0) {
+            const ret = arg0.next();
+            return ret;
+          }, arguments);
+        },
+        __wbg_now_e7c6795a7f81e10f: function(arg0) {
+          const ret = arg0.now();
+          return ret;
+        },
+        __wbg_performance_3fcf6e32a7e1ed0a: function(arg0) {
+          const ret = arg0.performance;
+          return ret;
+        },
+        __wbg_prototypesetcall_4770620bbe4688a0: function(arg0, arg1, arg2) {
+          Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), arg2);
+        },
+        __wbg_set_575dd786d51585f8: function(arg0, arg1, arg2) {
+          const ret = arg0.set(arg1, arg2);
+          return ret;
+        },
+        __wbg_set_6be42768c690e380: function(arg0, arg1, arg2) {
+          arg0[arg1] = arg2;
+        },
+        __wbg_set_8a16b38e4805b298: function(arg0, arg1, arg2) {
+          arg0[arg1 >>> 0] = arg2;
+        },
+        __wbg_stack_3b0d974bbf31e44f: function(arg0, arg1) {
+          const ret = arg1.stack;
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg_static_accessor_GLOBAL_4ef717fb391d88b7: function() {
+          const ret = typeof global === "undefined" ? null : global;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_GLOBAL_THIS_8d1badc68b5a74f4: function() {
+          const ret = typeof globalThis === "undefined" ? null : globalThis;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_SELF_146583524fe1469b: function() {
+          const ret = typeof self === "undefined" ? null : self;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_WINDOW_f2829a2234d7819e: function() {
+          const ret = typeof window === "undefined" ? null : window;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_value_a5d5488a9589444a: function(arg0) {
+          const ret = arg0.value;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000001: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000002: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000003: function(arg0, arg1) {
+          const ret = getStringFromWasm0(arg0, arg1);
+          return ret;
+        },
+        __wbindgen_cast_0000000000000004: function(arg0) {
+          const ret = BigInt.asUintN(64, arg0);
+          return ret;
+        },
+        __wbindgen_init_externref_table: function() {
+          const table = wasm.__wbindgen_externrefs;
+          const offset = table.grow(4);
+          table.set(0, void 0);
+          table.set(offset + 0, void 0);
+          table.set(offset + 1, null);
+          table.set(offset + 2, true);
+          table.set(offset + 3, false);
+        }
+      };
+      return {
+        __proto__: null,
+        "./bindings_wasm_bg.js": import0
+      };
+    }
+    var WasmCelEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcelengine_free(ptr, 1));
+    var WasmCompositeEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcompositeengine_free(ptr, 1));
+    var WasmRegoEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmregoengine_free(ptr, 1));
+    var WasmSchemaValidatorFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmschemavalidator_free(ptr, 1));
+    var WasmSemanticModelFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmsemanticmodel_free(ptr, 1));
+    function addToExternrefTable0(obj) {
+      const idx = wasm.__externref_table_alloc();
+      wasm.__wbindgen_externrefs.set(idx, obj);
+      return idx;
+    }
+    function _assertClass(instance, klass) {
+      if (!(instance instanceof klass)) {
+        throw new Error(`expected instance of ${klass.name}`);
+      }
+    }
+    function debugString(val2) {
+      const type = typeof val2;
+      if (type == "number" || type == "boolean" || val2 == null) {
+        return `${val2}`;
+      }
+      if (type == "string") {
+        return `"${val2}"`;
+      }
+      if (type == "symbol") {
+        const description = val2.description;
+        if (description == null) {
+          return "Symbol";
+        } else {
+          return `Symbol(${description})`;
+        }
+      }
+      if (type == "function") {
+        const name = val2.name;
+        if (typeof name == "string" && name.length > 0) {
+          return `Function(${name})`;
+        } else {
+          return "Function";
+        }
+      }
+      if (Array.isArray(val2)) {
+        const length = val2.length;
+        let debug = "[";
+        if (length > 0) {
+          debug += debugString(val2[0]);
+        }
+        for (let i = 1; i < length; i++) {
+          debug += ", " + debugString(val2[i]);
+        }
+        debug += "]";
+        return debug;
+      }
+      const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val2));
+      let className;
+      if (builtInMatches && builtInMatches.length > 1) {
+        className = builtInMatches[1];
+      } else {
+        return toString.call(val2);
+      }
+      if (className == "Object") {
+        try {
+          return "Object(" + JSON.stringify(val2) + ")";
+        } catch (_) {
+          return "Object";
+        }
+      }
+      if (val2 instanceof Error) {
+        return `${val2.name}: ${val2.message}
+${val2.stack}`;
+      }
+      return className;
+    }
+    function getArrayU8FromWasm0(ptr, len) {
+      ptr = ptr >>> 0;
+      return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
+    }
+    var cachedDataViewMemory0 = null;
+    function getDataViewMemory0() {
+      if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || cachedDataViewMemory0.buffer.detached === void 0 && cachedDataViewMemory0.buffer !== wasm.memory.buffer) {
+        cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
+      }
+      return cachedDataViewMemory0;
+    }
+    function getStringFromWasm0(ptr, len) {
+      return decodeText(ptr >>> 0, len);
+    }
+    var cachedUint8ArrayMemory0 = null;
+    function getUint8ArrayMemory0() {
+      if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
+        cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
+      }
+      return cachedUint8ArrayMemory0;
+    }
+    function handleError(f, args) {
+      try {
+        return f.apply(this, args);
+      } catch (e) {
+        const idx = addToExternrefTable0(e);
+        wasm.__wbindgen_exn_store(idx);
+      }
+    }
+    function isLikeNone(x) {
+      return x === void 0 || x === null;
+    }
+    function passArray8ToWasm0(arg, malloc) {
+      const ptr = malloc(arg.length * 1, 1) >>> 0;
+      getUint8ArrayMemory0().set(arg, ptr / 1);
+      WASM_VECTOR_LEN = arg.length;
+      return ptr;
+    }
+    function passStringToWasm0(arg, malloc, realloc) {
+      if (realloc === void 0) {
+        const buf = cachedTextEncoder.encode(arg);
+        const ptr2 = malloc(buf.length, 1) >>> 0;
+        getUint8ArrayMemory0().subarray(ptr2, ptr2 + buf.length).set(buf);
+        WASM_VECTOR_LEN = buf.length;
+        return ptr2;
+      }
+      let len = arg.length;
+      let ptr = malloc(len, 1) >>> 0;
+      const mem = getUint8ArrayMemory0();
+      let offset = 0;
+      for (; offset < len; offset++) {
+        const code = arg.charCodeAt(offset);
+        if (code > 127) break;
+        mem[ptr + offset] = code;
+      }
+      if (offset !== len) {
+        if (offset !== 0) {
+          arg = arg.slice(offset);
+        }
+        ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
+        const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
+        const ret = cachedTextEncoder.encodeInto(arg, view);
+        offset += ret.written;
+        ptr = realloc(ptr, len, offset, 1) >>> 0;
+      }
+      WASM_VECTOR_LEN = offset;
+      return ptr;
+    }
+    function takeFromExternrefTable0(idx) {
+      const value = wasm.__wbindgen_externrefs.get(idx);
+      wasm.__externref_table_dealloc(idx);
+      return value;
+    }
+    var cachedTextDecoder = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true });
+    cachedTextDecoder.decode();
+    function decodeText(ptr, len) {
+      return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
+    }
+    var cachedTextEncoder = new TextEncoder();
+    if (!("encodeInto" in cachedTextEncoder)) {
+      cachedTextEncoder.encodeInto = function(arg, view) {
+        const buf = cachedTextEncoder.encode(arg);
+        view.set(buf);
+        return {
+          read: arg.length,
+          written: buf.length
+        };
+      };
+    }
+    var WASM_VECTOR_LEN = 0;
+    var wasmPath = `${__dirname}/bindings_wasm_bg.wasm`;
+    var wasmBytes = require("fs").readFileSync(wasmPath);
+    var wasmModule = new WebAssembly.Module(wasmBytes);
+    var wasmInstance = new WebAssembly.Instance(wasmModule, __wbg_get_imports());
+    var wasm = wasmInstance.exports;
+    wasm.__wbindgen_start();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js
+var require_cloudformation_validate = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CompositeEngine = exports2.CelEngine = exports2.RegoEngine = exports2.SchemaValidator = exports2.TemplateModel = exports2.SchemaFile = exports2.RuleFile = exports2.TemplateContent = exports2.TemplateFile = exports2.DEFAULT_TEMPLATE_NAME = exports2.AwsCliCommand = void 0;
+    exports2.version = version3;
+    var fs_1 = require("fs");
+    var AwsCliCommand = class {
+      constructor(serviceName, operationName, parameters, options = {}) {
+        this.serviceName = serviceName;
+        this.operationName = operationName;
+        if (!isPlainRecord(parameters)) {
+          throw new TypeError("parameters must be a plain object with string keys");
+        }
+        const copiedParameters = /* @__PURE__ */ Object.create(null);
+        for (const key of Reflect.ownKeys(parameters)) {
+          if (typeof key !== "string") {
+            throw new TypeError("request parameter names must be strings");
+          }
+          const descriptor = Object.getOwnPropertyDescriptor(parameters, key);
+          if (descriptor === void 0 || !("value" in descriptor)) {
+            throw new TypeError(`request parameter ${JSON.stringify(key)} must be a value property`);
+          }
+          copiedParameters[key] = descriptor.value;
+        }
+        this.parameters = copiedParameters;
+        this.servicePrefix = options.servicePrefix;
+        this.httpMethod = options.httpMethod;
+        this.isReadOnly = options.isReadOnly;
+      }
+    };
+    exports2.AwsCliCommand = AwsCliCommand;
+    var MIN_SIGNED_64 = -(1n << 63n);
+    var MAX_SIGNED_64 = (1n << 63n) - 1n;
+    var MAX_UNSIGNED_64 = (1n << 64n) - 1n;
+    var MAX_REQUEST_VALUE_DEPTH = 64;
+    var DATE_GET_TIME = Date.prototype.getTime;
+    var DATE_TO_ISO_STRING = Date.prototype.toISOString;
+    var UINT8_ARRAY_FOR_EACH = Uint8Array.prototype.forEach;
+    function isPlainRecord(value) {
+      if (value === null || typeof value !== "object" || Array.isArray(value)) {
+        return false;
+      }
+      const prototype = Object.getPrototypeOf(value);
+      return prototype === Object.prototype || prototype === null;
+    }
+    function unsupportedValue(typeName) {
+      return { type: "UNSUPPORTED", type_name: typeName };
+    }
+    function encodeAwsCliValue(value, depth = 0, ancestors = /* @__PURE__ */ new Set()) {
+      if (depth > MAX_REQUEST_VALUE_DEPTH) {
+        return unsupportedValue("recursion depth exceeded");
+      }
+      if (value === null) {
+        return { type: "NULL" };
+      }
+      if (typeof value === "boolean") {
+        return { type: "BOOLEAN", value };
+      }
+      if (typeof value === "number") {
+        if (!Number.isFinite(value)) {
+          return unsupportedValue("non-finite floating-point number");
+        }
+        if (Number.isInteger(value)) {
+          return Number.isSafeInteger(value) ? { type: "INTEGER", value } : unsupportedValue("integer outside the JavaScript safe range");
+        }
+        return { type: "NUMBER", value };
+      }
+      if (typeof value === "bigint") {
+        if (value >= MIN_SIGNED_64 && value <= MAX_SIGNED_64) {
+          return { type: "INTEGER", value };
+        }
+        if (value >= 0n && value <= MAX_UNSIGNED_64) {
+          return { type: "UNSIGNED_INTEGER", value };
+        }
+        return unsupportedValue("integer outside the 64-bit request range");
+      }
+      if (typeof value === "string") {
+        return { type: "STRING", value };
+      }
+      if (value instanceof Uint8Array) {
+        const bytes = [];
+        try {
+          UINT8_ARRAY_FOR_EACH.call(value, (byte) => {
+            bytes.push(byte);
+          });
+        } catch {
+          return unsupportedValue("invalid Uint8Array");
+        }
+        return { type: "BYTES", value: bytes };
+      }
+      if (value instanceof Date) {
+        try {
+          const timestamp = DATE_GET_TIME.call(value);
+          return Number.isFinite(timestamp) ? { type: "STRING", value: DATE_TO_ISO_STRING.call(value) } : unsupportedValue("invalid Date");
+        } catch {
+          return unsupportedValue("invalid Date");
+        }
+      }
+      if (Array.isArray(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic array");
+        }
+        ancestors.add(value);
+        try {
+          const lengthDescriptor = Object.getOwnPropertyDescriptor(value, "length");
+          if (lengthDescriptor === void 0 || !("value" in lengthDescriptor) || !Number.isSafeInteger(lengthDescriptor.value) || lengthDescriptor.value < 0) {
+            return unsupportedValue("array with invalid length");
+          }
+          const items = [];
+          for (let index = 0; index < lengthDescriptor.value; index += 1) {
+            const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
+            if (descriptor === void 0) {
+              return unsupportedValue("sparse array");
+            }
+            if (!("value" in descriptor)) {
+              return unsupportedValue("array with accessor elements");
+            }
+            items.push(encodeAwsCliValue(descriptor.value, depth + 1, ancestors));
+          }
+          return { type: "ARRAY", items };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      if (isPlainRecord(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic object");
+        }
+        ancestors.add(value);
+        try {
+          const entries = /* @__PURE__ */ Object.create(null);
+          for (const key of Reflect.ownKeys(value)) {
+            if (typeof key !== "string") {
+              return unsupportedValue("mapping with non-string keys");
+            }
+            const descriptor = Object.getOwnPropertyDescriptor(value, key);
+            if (descriptor === void 0 || !("value" in descriptor)) {
+              return unsupportedValue("mapping with accessor properties");
+            }
+            entries[key] = encodeAwsCliValue(descriptor.value, depth + 1, ancestors);
+          }
+          return { type: "OBJECT", entries };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      return unsupportedValue(typeof value);
+    }
+    function toWireAwsCliCommand(request2) {
+      const parameters = /* @__PURE__ */ Object.create(null);
+      for (const [name, value] of Object.entries(request2.parameters)) {
+        try {
+          parameters[name] = encodeAwsCliValue(value);
+        } catch {
+          parameters[name] = unsupportedValue("request value inspection failed");
+        }
+      }
+      return {
+        serviceName: request2.serviceName,
+        operationName: request2.operationName,
+        parameters,
+        ...request2.servicePrefix === void 0 ? {} : { servicePrefix: request2.servicePrefix },
+        ...request2.httpMethod === void 0 ? {} : { httpMethod: request2.httpMethod },
+        ...request2.isReadOnly === void 0 ? {} : { isReadOnly: request2.isReadOnly }
+      };
+    }
+    function fromWireAwsCliCommandValidation(validation) {
+      const template = validation.template;
+      return {
+        ...validation,
+        templateSource: validation.templateSource ?? null,
+        report: validation.report ?? null,
+        template: template == null ? null : Uint8Array.from(template)
+      };
+    }
+    var bridge = require_bindings_wasm();
+    exports2.DEFAULT_TEMPLATE_NAME = "template";
+    var TemplateFile2 = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readBytes() {
+        return (0, fs_1.readFileSync)(this.path);
+      }
+    };
+    exports2.TemplateFile = TemplateFile2;
+    var TemplateContent = class {
+      constructor(content, name = exports2.DEFAULT_TEMPLATE_NAME) {
+        this.content = content;
+        this.name = name;
+        if (typeof content !== "string" && !(content instanceof Uint8Array)) {
+          throw new TypeError("template content must be a string or a Uint8Array");
+        }
+      }
+      readBytes() {
+        return typeof this.content === "string" ? new TextEncoder().encode(this.content) : this.content;
+      }
+    };
+    exports2.TemplateContent = TemplateContent;
+    function templateLabel(template) {
+      return template instanceof TemplateContent ? template.name : template.path;
+    }
+    var RuleFile = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.RuleFile = RuleFile;
+    var SchemaFile = class {
+      constructor(path23, typeName) {
+        this.path = path23;
+        this.typeName = typeName;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.SchemaFile = SchemaFile;
+    function toExternalRuleSources(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof RuleFile ? { name: source.path, content: source.readContent() } : source
+      );
+    }
+    function toAdditionalSchemas(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof SchemaFile ? { typeName: source.typeName, schema: source.readContent() } : source
+      );
+    }
+    function toWasmEngineConfig(config) {
+      return {
+        customRules: toExternalRuleSources(config?.customRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmCompositeEngineConfig(config) {
+      return {
+        regoRules: toExternalRuleSources(config?.regoRules),
+        celRules: toExternalRuleSources(config?.celRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmSchemaValidatorConfig(config) {
+      return {
+        additionalSchemas: toAdditionalSchemas(config?.additionalSchemas)
+      };
+    }
+    var TemplateModel = class {
+      constructor(template) {
+        this.inner = bridge.WasmSemanticModel.parse(template.readBytes());
+      }
+      resources() {
+        return this.inner.resources();
+      }
+      parameters() {
+        return this.inner.parameters();
+      }
+      outputs() {
+        return this.inner.outputs();
+      }
+      conditions() {
+        return this.inner.conditions();
+      }
+      transforms() {
+        return this.inner.transforms();
+      }
+      formatVersion() {
+        return this.inner.formatVersion();
+      }
+      description() {
+        return this.inner.description();
+      }
+      toDiagnosticModel() {
+        return this.inner.toDiagnosticModel();
+      }
+      sourceLocation(path23) {
+        return this.inner.sourceLocation(path23);
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.TemplateModel = TemplateModel;
+    var SchemaValidator = class {
+      constructor(config) {
+        this.inner = new bridge.WasmSchemaValidator(toWasmSchemaValidatorConfig(config));
+      }
+      listRules() {
+        return this.inner.listRules();
+      }
+      schemaCount() {
+        return this.inner.schemaCount();
+      }
+      validate(template, region) {
+        const model = bridge.WasmSemanticModel.parse(template.readBytes());
+        try {
+          return this.inner.validate(model, region).diagnostics;
+        } finally {
+          model.free();
+        }
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.SchemaValidator = SchemaValidator;
+    function createEngineClass(WasmClass, toWasmConfig) {
+      return class {
+        constructor(config) {
+          this.inner = new WasmClass(toWasmConfig(config));
+        }
+        validateTemplate(template, config) {
+          return this.inner.validateTemplate(template.readBytes(), config ?? {}, templateLabel(template));
+        }
+        validateStandard(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "STANDARD" });
+        }
+        validateDetailed(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "DETAILED" });
+        }
+        validateAwsCliCommand(request2) {
+          if (!(request2 instanceof AwsCliCommand)) {
+            throw new TypeError("request must be an AwsCliCommand");
+          }
+          return fromWireAwsCliCommandValidation(this.inner.validateAwsCliCommand(toWireAwsCliCommand(request2)));
+        }
+        listRules() {
+          return this.inner.listRules();
+        }
+        engineName() {
+          return this.inner.engineName();
+        }
+        free() {
+          this.inner.free();
+        }
+      };
+    }
+    exports2.RegoEngine = createEngineClass(bridge.WasmRegoEngine, toWasmEngineConfig);
+    exports2.CelEngine = createEngineClass(bridge.WasmCelEngine, toWasmEngineConfig);
+    exports2.CompositeEngine = createEngineClass(bridge.WasmCompositeEngine, toWasmCompositeEngineConfig);
+    function version3() {
+      return bridge.version();
+    }
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts
+function mapSeverity(severity) {
+  switch (severity) {
+    // FIXME: Temporarily map FATAL to ERROR; FATALs are not suppressible but there are still a lot
+    // of false positives in the engine, and we cannot afford to accidentally present a customer with
+    // an accidentally unsupressible fatal.
+    case "FATAL":
+      return "error";
+    case "ERROR":
+      return "error";
+    case "WARN":
+      return "warning";
+    case "INFO":
+      return "informational";
+    case "DEBUG":
+      return "debug";
+    default:
+      return "warning";
+  }
+}
+function defaultRegoRules() {
+  const rulesDir = path14.join(__dirname, "rules");
+  return fs10.readdirSync(rulesDir).filter((f) => f.endsWith(".rego")).sort().map((f) => ({
+    name: f,
+    content: fs10.readFileSync(path14.join(rulesDir, f), "utf-8")
+  }));
+}
+function isContainedWithin(root, child) {
+  const rel = path14.relative(root, child);
+  return !rel.startsWith("..") && !path14.isAbsolute(rel);
+}
+function loadSchemasFromDirectory(dir) {
+  const schemas = [];
+  if (!fs10.existsSync(dir)) {
+    return schemas;
+  }
+  const rootReal = fs10.realpathSync(dir);
+  function walk(currentDir, depth) {
+    if (depth > MAX_SCHEMA_DIRECTORY_DEPTH) {
+      throw new UnscopedValidationError(
+        lit`SchemaLoadError`,
+        `[CloudFormation Validate] Schema directory exceeds maximum depth of ${MAX_SCHEMA_DIRECTORY_DEPTH}: ${currentDir}`
+      );
+    }
+    const entries = fs10.readdirSync(currentDir, { withFileTypes: true });
+    for (const entry of entries) {
+      const fullPath = path14.join(currentDir, entry.name);
+      if (entry.isSymbolicLink()) {
+        throw new UnscopedValidationError(
+          lit`SchemaLoadError`,
+          `[CloudFormation Validate] Symbolic link found in schema directory (not allowed): ${fullPath}`
+        );
+      }
+      if (entry.isDirectory()) {
+        const resolved = fs10.realpathSync(fullPath);
+        if (!isContainedWithin(rootReal, resolved)) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Path escapes schema root directory: ${fullPath} resolves to ${resolved}`
+          );
+        }
+        walk(fullPath, depth + 1);
+      } else if (entry.isFile() && entry.name.endsWith(".json")) {
+        const content = fs10.readFileSync(fullPath, "utf-8");
+        let parsed;
+        try {
+          parsed = JSON.parse(content);
+        } catch (e) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Invalid JSON in schema file: ${fullPath}: ${e}`
+          );
+        }
+        if (!parsed.typeName) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Schema file missing required "typeName" field: ${fullPath}`
+          );
+        }
+        schemas.push({
+          typeName: parsed.typeName,
+          schema: content
+        });
+      }
+    }
+  }
+  walk(rootReal, 0);
+  if (schemas.length > 0) {
+    const typeNames = schemas.map((s) => s.typeName).join(", ");
+    process.stderr.write(`[CloudFormation Validate] Loaded ${schemas.length} schema overlay(s): ${typeNames}
+`);
+  }
+  return schemas;
+}
+var fs10, path14, import_cloudformation_validate, VALIDATE_METRIC, DIAGNOSTICS_METRIC, CloudFormationValidatePlugin, IGNORE_RULES, MAX_SCHEMA_DIRECTORY_DEPTH;
+var init_cloudformation_validate_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts"() {
+    "use strict";
+    fs10 = __toESM(require("fs"));
+    path14 = __toESM(require("path"));
+    import_cloudformation_validate = __toESM(require_cloudformation_validate());
+    init_errors();
+    init_literal_string();
+    init_perf();
+    VALIDATE_METRIC = "CloudFormationValidate.validate";
+    DIAGNOSTICS_METRIC = "CloudFormationValidate.diagnostics";
+    CloudFormationValidatePlugin = class _CloudFormationValidatePlugin {
+      /**
+       * The default name of this plugin
+       */
+      static PLUGIN_NAME = "CloudFormation Validate";
+      /**
+       * Return a global singleton instance of this plugin.
+       *
+       * This is used because initializing the engine is somewhat expensive, which makes
+       * a noticeable difference in tests.
+       *
+       * @internal
+       */
+      static _singletonInstance() {
+        if (!_CloudFormationValidatePlugin._instance) {
+          _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin();
+        }
+        return _CloudFormationValidatePlugin._instance;
+      }
+      /**
+       * Pre-configure the singleton with specific props before first access.
+       * Used by test infrastructure to inject schema overlays without per-App registration.
+       *
+       * Must be called before any App synthesis triggers `_singletonInstance()`.
+       * Calling this when a singleton already exists replaces it.
+       *
+       * @internal
+       */
+      static _configureSingleton(props) {
+        _CloudFormationValidatePlugin._disposeSingleton();
+        _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin(props);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory and forget the instance
+       *
+       * @internal
+       */
+      static _disposeSingleton() {
+        _CloudFormationValidatePlugin._instance?._dispose();
+        _CloudFormationValidatePlugin._instance = void 0;
+      }
+      static _instance;
+      name = _CloudFormationValidatePlugin.PLUGIN_NAME;
+      engine;
+      disposed = false;
+      constructor(props = {}) {
+        const config = {};
+        const regoRules = [
+          ...props.includeDefaultRules ?? true ? defaultRegoRules() : [],
+          ...props.regoRules ?? []
+        ];
+        if (regoRules.length > 0) {
+          config.regoRules = regoRules;
+        }
+        if (props.guardRules) {
+          config.guardRules = props.guardRules;
+        }
+        if (props._additionalSchemasDirectory) {
+          config.schemaValidatorConfig = {
+            additionalSchemas: loadSchemasFromDirectory(props._additionalSchemasDirectory)
+          };
+        }
+        this.engine = new import_cloudformation_validate.CompositeEngine(config);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory
+       *
+       * @internal
+       */
+      _dispose() {
+        if (this.disposed) {
+          return;
+        }
+        this.disposed = true;
+        this.engine.free();
+      }
+      get version() {
+        return (0, import_cloudformation_validate.version)();
+      }
+      get ruleIds() {
+        return this.engine.listRules().filter((r) => !IGNORE_RULES.has(r.id) && r.severity !== "INFO" && r.severity !== "DEBUG").map((r) => r.id);
+      }
+      validate(context) {
+        const violations = [];
+        for (const { stackConstructPath, templatePath, accountId, region } of context.stackTemplates) {
+          const templateFile = new import_cloudformation_validate.TemplateFile(templatePath);
+          const report = (() => {
+            var _stack = [];
+            try {
+              const _span = __using(_stack, profileSpan(VALIDATE_METRIC, { telemetry: true }));
+              return this.engine.validateTemplate(templateFile, {
+                detailLevel: "STANDARD",
+                pseudoParameterOverrides: {
+                  accountId,
+                  region
+                },
+                exclude: {
+                  ids: [...IGNORE_RULES],
+                  services: [{
+                    // CDK still synthesizes AWS::AutoScaling::LaunchConfiguration for applications using
+                    // the legacy launch-configuration behavior. Auto Scaling remains deployable despite
+                    // its maintenance-mode classification, so suppress only its W3697 lifecycle warning
+                    // rather than hiding lifecycle findings for every service.
+                    // 
+                    ruleId: "W3697",
+                    service: "AWS::AutoScaling"
+                  }]
+                },
+                severityLevel: "WARN"
+              });
+            } catch (_) {
+              var _error = _, _hasError = true;
+            } finally {
+              __callDispose(_stack, _error, _hasError);
+            }
+          })();
+          recordPerformanceEntry(DIAGNOSTICS_METRIC, {
+            count: report.diagnostics.length,
+            telemetry: true
+          });
+          const diagnosticsBySeverity = /* @__PURE__ */ new Map();
+          for (const diagnostic of report.diagnostics) {
+            diagnosticsBySeverity.set(diagnostic.severity, (diagnosticsBySeverity.get(diagnostic.severity) ?? 0) + 1);
+          }
+          for (const [severity, count2] of diagnosticsBySeverity) {
+            recordPerformanceEntry(`${DIAGNOSTICS_METRIC}.${severity}`, {
+              count: count2,
+              telemetry: true
+            });
+          }
+          for (const diagnostic of report.diagnostics) {
+            const severity = mapSeverity(diagnostic.severity);
+            const resourceLogicalId = diagnostic.entity?.entityType === "Resource" ? diagnostic.entity.logicalId : void 0;
+            const violatingResource = {
+              resourceLogicalId,
+              // If this is not about any resources, best we can do is point it to the stack
+              constructPath: !resourceLogicalId ? stackConstructPath : void 0,
+              templatePath,
+              locations: diagnostic.propertyPath ? [diagnostic.propertyPath] : []
+            };
+            const propertyPathPefix = diagnostic.propertyPath ? `${diagnostic.propertyPath.replace(/^Properties\./, "")}: ` : "";
+            const description = `${propertyPathPefix}${diagnostic.message}`;
+            const existing = violations.find(
+              (v) => v.ruleName === diagnostic.ruleId && v.severity === severity && v.description === description
+            );
+            if (existing) {
+              existing.violatingResources.push(violatingResource);
+            } else {
+              violations.push({
+                ruleName: diagnostic.ruleId,
+                description,
+                severity,
+                fix: diagnostic.suggestedFix,
+                violatingResources: [violatingResource],
+                ruleMetadata: diagnostic.category ? { category: diagnostic.category } : void 0
+              });
+            }
+          }
+        }
+        return {
+          success: violations.every((v) => v.severity !== "error" && v.severity !== "fatal"),
+          violations
+        };
+      }
+    };
+    IGNORE_RULES = /* @__PURE__ */ new Set([
+      // WHAT: 'DependsOn' already implied by a 'GetAtt', remove the DependsOn.
+      // WHY: CDK adds both. It doesn't hurt to have both, and it's more effort to remove them.
+      // Will be silenced forever.
+      "W3005",
+      // WHAT: Optimize the format string of Fn::Sub
+      // WHY: CDK is generating these, humans are not authoring them.
+      // Will be silenced forever.
+      "W1020",
+      // WHAT: Fn::GetStackOutput is not an allowed direct source for Fn::Split.
+      // WHY: CDK generates this nesting when deserializing weak string-list cross-stack references,
+      // and customers cannot control the generated expression.
+      // https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-split.html
+      "E1018",
+      // WHAT: Hardcoded ARNs
+      // WHY: Hardcoding an ARN is part of the behavior of some constructs (e.g., setting up multi-account DynamoDB table replicas)
+      "W9002",
+      // WHAT: Hardcoded account IDs in ARNs
+      // WHY: Hardcoding an account ID in ARNs is commonly done in CDK when we are setting up large applications that
+      // span accounts.
+      "W9013",
+      // WHAT: built-in function not recognized
+      // WHY: there are intrinsic functions that the plugin doesn't know about that are nevertheless valid.
+      // This diagnostic is intended to protect against typos in templates, but since the intrinsics
+      // are generated by CDK the chances of mistyping them is tiny, and so this diagnostic is more verbose
+      // than it's worth.
+      "W1103"
+    ]);
+    MAX_SCHEMA_DIRECTORY_DEPTH = 5;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts
+function propertyAssignmentMatchesPropertyPath(meta, propertyPath) {
+  return propertyPath === `Properties.${meta.data.propertyName}` || propertyPath.startsWith(`Properties.${meta.data.propertyName}.`);
+}
+function isPropertyMutationMetadataEntry(entry) {
+  return entry.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT;
+}
+var import_cloud_assembly_schema2, ConstructTree, STACK_TRACE_HINT;
+var init_construct_tree = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts"() {
+    "use strict";
+    import_cloud_assembly_schema2 = __toESM(require_lib2());
+    init_app2();
+    init_cfn_resource();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_runtime_info();
+    ConstructTree = class {
+      /**
+       * A cache of the ConstructTrace by node.path. Each construct
+       */
+      _constructByPath = /* @__PURE__ */ new Map();
+      _constructByTemplatePathAndLogicalId = /* @__PURE__ */ new Map();
+      root;
+      constructor(root) {
+        this.root = App.of(root) ?? root;
+        this._constructByPath.set(this.root.node.path, root);
+        for (const child of iterateDfsPreorder(this.root)) {
+          this._constructByPath.set(child.node.path, child);
+          const defaultChild = child.node.defaultChild;
+          if (defaultChild && CfnResource.isCfnResource(defaultChild)) {
+            const stack = stackOf(defaultChild);
+            const logicalId = stack.resolve(defaultChild.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+        for (const child of iterateDfsPreorder(this.root)) {
+          if (CfnResource.isCfnResource(child)) {
+            const stack = stackOf(child);
+            const logicalId = stackOf(child).resolve(child.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+      }
+      setLogicalId(stack, logicalId, child) {
+        if (!this._constructByTemplatePathAndLogicalId.has(stack.templateFile)) {
+          this._constructByTemplatePathAndLogicalId.set(stack.templateFile, /* @__PURE__ */ new Map([[logicalId, child]]));
+        } else {
+          this._constructByTemplatePathAndLogicalId.get(stack.templateFile)?.set(logicalId, child);
+        }
+      }
+      /**
+       * Turn a construct path into a trace
+       *
+       * The trace contains all constructs from the root to the construct indicated
+       * by the given path. It does not include the root itself.
+       */
+      traceFromPath(constructPath) {
+        const components = constructPath.replace(/^\//, "").split("/");
+        const rootPath = [];
+        const stackTraces = [];
+        let node = this.root;
+        while (node) {
+          rootPath.push(this.constructTraceLevelFromTreeNode(node));
+          stackTraces.push(this.creationTrace(node)?.split("\n"));
+          const component = components.shift();
+          node = component !== void 0 ? node.node.tryFindChild(component) : void 0;
+        }
+        rootPath.shift();
+        stackTraces.shift();
+        let ret = {
+          ...rootPath[rootPath.length - 1],
+          location: stackLocationAt(rootPath.length - 1)
+        };
+        for (let i = rootPath.length - 2; i >= 0; i--) {
+          ret = {
+            ...rootPath[i],
+            child: ret,
+            location: stackLocationAt(i)
+          };
+        }
+        return ret;
+        function stackLocationAt(i) {
+          let j = i;
+          while (j < rootPath.length && !stackTraces[j]) {
+            j++;
+          }
+          if (j === rootPath.length) {
+            return STACK_TRACE_HINT;
+          }
+          return stackTraces[j]?.[0 + j - i] ?? STACK_TRACE_HINT;
+        }
+      }
+      constructTraceLevelFromConstructPath(constructPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return void 0;
+        }
+        return this.constructTraceLevelFromTreeNode(construct);
+      }
+      /**
+       * Convert a Tree Metadata Node into a ConstructTrace object, except its child and stack trace info
+       *
+       * FIXME: This could probably use the construct tree directly.
+       */
+      constructTraceLevelFromTreeNode(node) {
+        const constructInfo = constructInfoFromConstruct(node);
+        return {
+          id: node.node.id,
+          path: node.node.path,
+          construct: constructInfo?.fqn,
+          libraryVersion: constructInfo?.version
+        };
+      }
+      creationTraceByPath(path23) {
+        const construct = this.getConstructByPath(path23);
+        if (!construct) {
+          return void 0;
+        }
+        return this.creationTrace(construct);
+      }
+      /**
+       * Return the stack trace for a given construct path
+       *
+       * Returns a stack trace if stack trace information is found, or `undefined` if not.
+       */
+      creationTrace(construct) {
+        return construct?.node.metadata.find((meta) => meta.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.CREATION_STACK)?.data?.join("\n");
+      }
+      mutationTracesByPath(constructPath, propertyPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return [];
+        }
+        return this.mutationTraces(construct, propertyPath);
+      }
+      /**
+       * Return mutation traces for the given construct and property path
+       *
+       * The `propertyPath` must start with `Properties.`, and can contain nested properties, e.g. `Properties.MyProperty.NestedProperty`.
+       * We will report the best information that we have.
+       */
+      mutationTraces(construct, propertyPath) {
+        return construct?.node.metadata.filter(isPropertyMutationMetadataEntry).filter((meta) => propertyAssignmentMatchesPropertyPath(meta, propertyPath)).map((meta) => meta.data.stackTrace.join("\n"));
+      }
+      /**
+       * Get a specific Construct by the node.addr
+       *
+       * @param path the node.addr of the construct
+       * @returns the Construct
+       */
+      getConstructByPath(path23) {
+        return this._constructByPath.get(path23);
+      }
+      /**
+       * Get a specific Construct by the CfnResource logical ID. This will
+       * be the construct.node.defaultChild with the given ID
+       *
+       * @param logicalId the ID of the CfnResource
+       * @returns the Construct
+       */
+      getConstructByLogicalId(templateFile, logicalId) {
+        return this._constructByTemplatePathAndLogicalId.get(templateFile)?.get(logicalId);
+      }
+    };
+    STACK_TRACE_HINT = "Run with '--debug' to include location info";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/color.ts
+var Col, Colorize;
+var init_color = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/color.ts"() {
+    "use strict";
+    Col = class {
+      static RED = "31";
+      static ORANGE = "38;5;208";
+      static YELLOW = "33";
+      static BLUE = "34";
+      static BOLD = "1";
+      static UNDERLINE = "4";
+      static GREY = "90";
+    };
+    Colorize = class _Colorize {
+      static red(str) {
+        return _Colorize.colorize(Col.RED, str);
+      }
+      static orange(str) {
+        return _Colorize.colorize(Col.ORANGE, str);
+      }
+      static yellow(str) {
+        return _Colorize.colorize(Col.YELLOW, str);
+      }
+      static blue(str) {
+        return _Colorize.colorize(Col.BLUE, str);
+      }
+      static grey(str) {
+        return _Colorize.colorize(Col.GREY, str);
+      }
+      static bold(str) {
+        return _Colorize.colorize(Col.BOLD, str);
+      }
+      static underline(str) {
+        return _Colorize.colorize(Col.UNDERLINE, str);
+      }
+      static colorize(col, str) {
+        if (process.env.FORCE_COLOR === "0" || process.env.NO_COLOR || !process.stdout.isTTY || !process.stderr.isTTY) {
+          return str;
+        }
+        return `\x1B[${col}m${str}\x1B[0m`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/trace.ts
+var STARTER_LINE, VERTICAL_LINE, ReportTrace;
+var init_trace = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/trace.ts"() {
+    "use strict";
+    STARTER_LINE = "\u2514\u2500\u2500 ";
+    VERTICAL_LINE = "\u2502";
+    ReportTrace = class {
+      constructor(tree) {
+        this.tree = tree;
+      }
+      tree;
+      /**
+       * Return a JSON representation of the construct trace
+       */
+      formatJson(constructPath) {
+        return this.tree.traceFromPath(constructPath);
+      }
+      /**
+       * This will render something like this:
+       *
+       *   Creation Stack:
+       *     └──  MyStack (MyStack)
+       *          │ Library: aws-cdk-lib.Stack
+       *          │ Library Version: 2.50.0
+       *          │ Location: Object. (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:25:20)
+       *          └──  MyCustomL3Construct (MyStack/MyCustomL3Construct)
+       *               │ Library: N/A - (Local Construct)
+       *               │ Library Version: N/A
+       *               │ Location: new MyStack (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:15:20)
+       *               └──  Bucket (MyStack/MyCustomL3Construct/Bucket)
+       *                    │ Library: aws-cdk-lib/aws-s3.Bucket
+       *                    │ Library Version: 2.50.0
+       *                    │ Location: new MyCustomL3Construct (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:9:20)/
+       */
+      formatPrettyPrinted(constructPath) {
+        const trace = constructPath ? this.formatJson(constructPath) : void 0;
+        return this.renderPrettyPrintedTraceInfo(trace);
+      }
+      renderPrettyPrintedTraceInfo(info, indent, start = STARTER_LINE) {
+        const notAvailableMessage = "	Construct trace not available. Rerun with `--debug` to see trace information";
+        if (info) {
+          const indentation = indent ?? " ".repeat(STARTER_LINE.length + 1);
+          const result = [
+            `${start} ${info?.id} (${info?.path})`,
+            `${indentation}${VERTICAL_LINE} Construct: ${info?.construct}`,
+            `${indentation}${VERTICAL_LINE} Library Version: ${info?.libraryVersion}`,
+            `${indentation}${VERTICAL_LINE} Location: ${info?.location}`,
+            ...info?.child ? [this.renderPrettyPrintedTraceInfo(info?.child, " ".repeat(indentation.length + STARTER_LINE.length + 1), indentation + STARTER_LINE)] : []
+          ];
+          return result.join("\n	");
+        }
+        return notAvailableMessage;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/report.ts
+var init_report = __esm({
+  "../../aws-cdk-lib/core/lib/validation/report.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/report.ts
+function normalizeSeverity(severity) {
+  if (!severity) {
+    return { severity: "error" };
+  }
+  const lower = severity.toLowerCase();
+  if (KNOWN_SEVERITIES.has(lower)) {
+    return { severity: lower };
+  }
+  return { severity: "custom", customSeverity: severity };
+}
+function mkPluginFailure(plugin, e) {
+  return {
+    success: false,
+    pluginName: plugin.name,
+    pluginVersion: plugin.version,
+    violations: [],
+    metadata: {
+      error: `Validation plugin '${plugin.name}' failed: ${e.message}`
+    }
+  };
+}
+function isSuppressibleViolation(violation) {
+  const isFatal = violation.severity?.toLowerCase() === "fatal";
+  const isErrorAnnotation = violation.ruleMetadata?.["cdk:annotation"] && violation.severity?.toLowerCase() === "error";
+  return !isFatal && !isErrorAnnotation;
+}
+var PolicyValidationReportFormatter, KNOWN_SEVERITIES, ExtraObjectData;
+var init_report2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/report.ts"() {
+    "use strict";
+    init_trace();
+    init_report();
+    PolicyValidationReportFormatter = class {
+      constructor(tree) {
+        this.tree = tree;
+        this.reportTrace = new ReportTrace(tree);
+      }
+      tree;
+      reportTrace;
+      formatLegacyJson(reps) {
+        return {
+          title: "Validation Report",
+          pluginReports: reps.filter((rep) => !rep.success || rep.violations.length > 0).map((rep) => ({
+            version: rep.pluginVersion,
+            summary: {
+              pluginName: rep.pluginName,
+              status: rep.success ? "success" /* SUCCESS */ : "failure" /* FAILURE */,
+              metadata: rep.metadata
+            },
+            violations: rep.violations.map((violation) => ({
+              ruleName: violation.ruleName,
+              description: violation.description,
+              fix: violation.fix,
+              ruleMetadata: violation.ruleMetadata,
+              severity: violation.severity,
+              violatingResources: violation.violatingResources,
+              violatingConstructs: violation.violatingResources.map((resource) => {
+                const constructPath = resource.constructPath;
+                return {
+                  constructStack: constructPath ? this.reportTrace.formatJson(constructPath) : void 0,
+                  constructPath,
+                  locations: resource.locations,
+                  resourceLogicalId: resource.resourceLogicalId ?? "N/A",
+                  templatePath: resource.templatePath ?? "N/A"
+                };
+              })
+            }))
+          }))
+        };
+      }
+      formatJson(reps, schemaVersion, stackTraces, suppressedByReport) {
+        return {
+          version: schemaVersion,
+          title: "Validation Report",
+          pluginReports: this.buildPluginReports(reps, stackTraces, suppressedByReport)
+        };
+      }
+      buildPluginReports(reps, stackTraces, suppressedByReport) {
+        const results = [];
+        for (let idx = 0; idx < reps.length; idx++) {
+          const rep = reps[idx];
+          const suppressed = suppressedByReport?.get(idx);
+          if (rep.success && rep.violations.length === 0 && !suppressed) continue;
+          results.push({
+            pluginName: rep.pluginName,
+            pluginVersion: rep.pluginVersion,
+            conclusion: rep.success ? "success" : "failure",
+            metadata: rep.metadata,
+            violations: rep.violations.map((violation) => this.formatViolationJson(violation, stackTraces)),
+            suppressedViolations: suppressed ? suppressed.map((sv) => this.formatSuppressedViolationJson(sv, stackTraces)) : void 0
+          });
+        }
+        return results;
+      }
+      formatViolationJson(violation, stackTraces) {
+        const severity = normalizeSeverity(violation.severity);
+        return {
+          ruleName: violation.ruleName,
+          description: violation.description,
+          suggestedFix: violation.fix,
+          severity: severity.severity,
+          customSeverity: severity.customSeverity,
+          ruleMetadata: violation.ruleMetadata,
+          violatingConstructs: violation.violatingResources.map((resource) => {
+            let constructPath = resource.constructPath;
+            const constructInfo = constructPath ? this.tree.constructTraceLevelFromConstructPath(constructPath) : void 0;
+            const result = {
+              // The constructPath is not optional in the output JSON, so put an empty string here if we don't have it.
+              constructPath: constructPath ?? "",
+              constructFqn: constructInfo?.construct,
+              libraryVersion: constructInfo?.libraryVersion,
+              cloudFormationResource: resource.resourceLogicalId && resource.templatePath ? {
+                templatePath: resource.templatePath,
+                logicalId: resource.resourceLogicalId,
+                propertyPaths: resource.locations.length > 0 ? resource.locations : void 0
+              } : void 0,
+              stackTraces: stackTraces.get(resource)
+            };
+            return result;
+          })
+        };
+      }
+      formatSuppressedViolationJson(sv, stackTraces) {
+        const base = this.formatViolationJson(sv, stackTraces);
+        return {
+          ...base,
+          acknowledgedId: sv.acknowledgedId,
+          reason: sv.reason || void 0,
+          acknowledgedAt: sv.acknowledgedAt || void 0,
+          acknowledgedStackTrace: sv.acknowledgedStackTrace || void 0
+        };
+      }
+    };
+    KNOWN_SEVERITIES = /* @__PURE__ */ new Set(["fatal", "error", "warning", "info"]);
+    ExtraObjectData = class {
+      extra = /* @__PURE__ */ new WeakMap();
+      constructor() {
+      }
+      attach(obj, data) {
+        this.extra.set(obj, data);
+      }
+      get(obj) {
+        return this.extra.get(obj);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts
+function formatValidationReports(fileRoot, reports, frameFinder) {
+  const successfullyExecutedPlugins = reports.filter((r) => isPluginFailure(r) === void 0);
+  const pluginFailures = reports.map(isPluginFailure).filter((e) => e !== void 0);
+  const violations = flattenViolations(successfullyExecutedPlugins);
+  violations.sort((a, b) => {
+    const aOrder = SEVERITY_ORDER[a.severity.toLowerCase()] ?? 4;
+    const bOrder = SEVERITY_ORDER[b.severity.toLowerCase()] ?? 4;
+    return aOrder - bOrder;
+  });
+  return [
+    ...pluginFailures.map(formatPluginFailure),
+    ...violations.map((v) => formatViolationBlock(fileRoot, v, frameFinder))
+  ];
+}
+function flattenViolations(reports) {
+  return reports.flatMap((report) => {
+    const pluginName = report.pluginName;
+    return report.violations.flatMap((violation) => {
+      return violation.violatingConstructs.map((construct) => ({
+        severity: normalizeSeverity2(violation.severity),
+        description: violation.description,
+        ruleName: violation.ruleName,
+        pluginName,
+        construct,
+        suggestedFix: violation.suggestedFix,
+        ruleMetadata: violation.ruleMetadata
+      }));
+    });
+  });
+}
+function normalizeSeverity2(severity) {
+  switch (severity?.toLowerCase()) {
+    case "fatal":
+      return "FATAL";
+    case "error":
+      return "ERROR";
+    case "warning":
+      return "WARNING";
+    case "info":
+      return "INFO";
+  }
+  if (!severity) return "WARNING";
+  return sanitize(severity);
+}
+function formatViolationBlock(fileRoot, v, frameFinder) {
+  const lines = [];
+  const locations = sourceLocations(fileRoot, v.construct.stackTraces, frameFinder);
+  const maxTraces = 5;
+  let additional = false;
+  for (const location of locations.slice(0, maxTraces)) {
+    lines.push(`${additional ? "or " : ""}${Colorize.underline(sanitize(location))}`);
+    additional = true;
+  }
+  if (locations.length > maxTraces) {
+    lines.push(Colorize.grey(`(and ${locations.length - maxTraces} more...)`));
+  }
+  const pluginNs = namespaceFromPluginName(v.pluginName);
+  const parsed = parseValidationId(v.ruleName);
+  lines.push([
+    Colorize.bold(getSeverityColor(v.severity)(sanitize(v.severity))),
+    Colorize.bold(stripAckTag(sanitize(v.description))),
+    Colorize.grey(`(${sanitize(parsed.namespace ? pluginNameFromNamespace(parsed.namespace) : v.pluginName)})`)
+  ].join(" "));
+  const constructInfo = formatConstructInfo(fileRoot, v.construct);
+  lines.push(`   ${constructInfo}`);
+  if (v.suggestedFix) {
+    lines.push(`   Suggested fix: ${sanitize(v.suggestedFix).replace(/\n/g, "\n   ")}`);
+  }
+  const ackId = normalizeValidationId(v.ruleName, pluginNs);
+  if (isSuppressibleViolation(v)) {
+    lines.push(`   ${Colorize.grey(`Acknowledge with '${sanitize(ackId)}'`)}`);
+  } else {
+    lines.push(`   ${Colorize.grey(`Rule ${sanitize(ackId)}`)}`);
+  }
+  return lines.join("\n");
+}
+function getSeverityColor(severity) {
+  switch (severity.toLowerCase()) {
+    case "fatal":
+      return Colorize.red;
+    case "error":
+      return Colorize.orange;
+    case "warning":
+      return Colorize.yellow;
+    default:
+      return Colorize.blue;
+  }
+}
+function formatConstructInfo(fileRoot, construct) {
+  const parts = [];
+  const logicalId = sanitize(construct.cloudFormationResource?.logicalId);
+  if (construct.constructPath) {
+    const cPath = sanitize(construct.constructPath);
+    parts.push(logicalId ? `${Colorize.bold(cPath)} (${logicalId})` : Colorize.bold(cPath));
+  } else {
+    if (construct.cloudFormationResource?.templatePath) {
+      parts.push(humanFriendlyFilename(fileRoot, sanitize(construct.cloudFormationResource.templatePath)));
+    }
+    if (logicalId) {
+      parts.push(Colorize.bold(logicalId));
+    }
+  }
+  if (construct.constructFqn) {
+    parts.push(Colorize.grey(sanitize(construct.constructFqn)));
+  }
+  return parts.join(" ");
+}
+function stripAckTag(description) {
+  return description.replace(/\s*\[ack:\s*[^\]]+\]\s*/g, "").trim();
+}
+function sourceLocations(fileRoot, stackTraces, frameFinder) {
+  const ret = [];
+  for (const trace of stackTraces ?? []) {
+    const frame = topUserFrame(trace.split("\n"), frameFinder);
+    if (frame && frame.fileName) {
+      const candidate = `${humanFriendlyFilename(fileRoot, frame.fileName)}:${frame.sourceLocation}`;
+      if (!ret.includes(candidate)) {
+        ret.push(candidate);
+      }
+    }
+  }
+  return ret;
+}
+function formatPluginFailure(f) {
+  return `${Colorize.orange("ERROR")} ${sanitize(f.error)}`;
+}
+function sanitize(s) {
+  return (s ?? "").replace(CONTROL_CHARS, "\uFFFD");
+}
+function humanFriendlyFilename(root, filename) {
+  const absPath = filename;
+  const relPath = import_path2.default.relative(root, filename);
+  return relPath.length < absPath.length ? relPath : absPath;
+}
+function isPluginFailure(r) {
+  if (r.conclusion === "success" || r.violations.length > 0 || !r.metadata?.error) {
+    return void 0;
+  }
+  return { error: r.metadata.error };
+}
+function stripAnsi(x) {
+  const pattern = [
+    "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
+    "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
+  ].join("|");
+  const re = new RegExp(pattern, "g");
+  return x.replaceAll(re, "");
+}
+var import_path2, CONTROL_CHARS, SEVERITY_ORDER;
+var init_modern_formatter = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts"() {
+    "use strict";
+    import_path2 = __toESM(require("path"));
+    init_color();
+    init_report2();
+    init_validation_id();
+    init_stack_trace();
+    CONTROL_CHARS = /[\x00-\x08\x0B-\x1F\x7F\x9B]/g;
+    SEVERITY_ORDER = {
+      fatal: 0,
+      error: 1,
+      warning: 2,
+      info: 3
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis-validation.ts
+function validateTemplates(root, outdir, assembly) {
+  var _stack = [];
+  try {
+    if (!App.isApp(root)) return;
+    const _span = __using(_stack, profileSpan("validateTemplates", { telemetry: true }));
+    const assemblies = getAssemblies(root, assembly);
+    const stacksByPlugin = /* @__PURE__ */ new Map();
+    visitAssemblies(root, "post", (construct) => {
+      if (STAGE_TYPE.isMarked(construct)) {
+        const stageAssembly = assemblies.get(construct.artifactId);
+        if (!stageAssembly) throw new AssumptionError(lit`ValidationFailed`, `Validation failed, cannot find cloud assembly for stage ${construct.stageName}`);
+        const plugins = pluginsToEvaluate(root, construct);
+        for (const plugin of plugins) {
+          if (!stacksByPlugin.has(plugin)) {
+            stacksByPlugin.set(plugin, /* @__PURE__ */ new Set());
+          }
+          for (const stack of stageAssembly.stacksRecursively) {
+            stacksByPlugin.get(plugin).add(stack);
+          }
+        }
+      }
+    });
+    if (stacksByPlugin.size === 0) return;
+    const reports = doInvokeValidationPlugins(outdir, Array.from(stacksByPlugin), root);
+    const validateFlagExplicitlyEnabled = getBooleanContext(root, VALIDATE_AGAINST_DEFAULT_RULES, false);
+    let warningifiedAnyErrors = false;
+    if (!validateFlagExplicitlyEnabled) {
+      warningifiedAnyErrors = downgradeCfnValidateErrorsToWarnings(reports);
+    }
+    const tree = new ConstructTree(root);
+    inferConstructPathsFromLogicalIds(reports, tree);
+    const stackTraces = collectViolationStackTraces(reports, tree);
+    const suppressedByReport = collectSuppressions(root, reports);
+    const formatter = new PolicyValidationReportFormatter(new ConstructTree(root));
+    const reportJson = formatter.formatJson(reports, assembly.version, stackTraces, suppressedByReport);
+    const reportFile = path16.join(assembly.directory, VALIDATION_REPORT_FILE);
+    fs11.writeFileSync(reportFile, JSON.stringify(reportJson, void 0, 2));
+    if (getBooleanContext(root, VALIDATION_REPORT_JSON_CONTEXT, false)) {
+      fs11.writeFileSync(
+        path16.join(assembly.directory, LEGACY_POLICY_VALIDATION_FILE_PATH),
+        JSON.stringify(formatter.formatLegacyJson(reports), void 0, 2)
+      );
+    }
+    const cdkAppHandlesValidationReporting = getBooleanContext(root, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true);
+    const appMode = cdkAppMode(root);
+    const constructLibStrictMode = getBooleanContext(root, STRICT_CFN_VALIDATE_ERRORS, false);
+    const validationFails = reports.some((r) => !r.success) || constructLibStrictMode && reports.some((r) => r.violations.some((v) => v.severity === "warning"));
+    const reportText = formatValidationReports(process.cwd(), reportJson.pluginReports, DEFAULT_STACK_FRAME_FINDER);
+    const reportPath = humanFriendlyFilename(process.cwd(), reportFile);
+    let preamble = "";
+    if (warningifiedAnyErrors) {
+      if (constructLibStrictMode) {
+        preamble = "[Warning] Template validation found issues in your templates. Construct library strict mode considers these errors.";
+      } else {
+        preamble = `[Warning] Template validation found issues in your templates (reported as warnings).
+Set feature flag "${VALIDATE_AGAINST_DEFAULT_RULES}" to true to turn these into errors.`;
+      }
+    }
+    if (reportText.length === 0) {
+      return;
+    }
+    if (cdkAppHandlesValidationReporting) {
+      const throwException = validationFails && (appMode === "inmemory" || appMode === "unknown");
+      const exceptionContainsReport = appMode === "inmemory";
+      const fullMessage = [];
+      if (preamble) {
+        fullMessage.push(preamble);
+      }
+      fullMessage.push(...reportText);
+      fullMessage.push(`A copy of this report can be found in: ${reportPath}`);
+      if (throwException && exceptionContainsReport) {
+        throw new UnscopedValidationError(lit`ValidationFailed`, stripAnsi(fullMessage.join("\n\n")));
+      } else if (throwException && !exceptionContainsReport) {
+        console.error([
+          ...preamble ? [preamble] : [],
+          ...reportText
+        ].join("\n\n"));
+        throw new UnscopedValidationError(lit`ValidationFailed`, `Validation failed. A copy of this report can be found in: ${reportPath}`);
+      } else {
+        console.error(fullMessage.join("\n\n"));
+        if (validationFails) {
+          process.exitCode = 1;
+        }
+      }
+    } else {
+      if (preamble) {
+        console.error(preamble);
+      }
+    }
+  } catch (_) {
+    var _error = _, _hasError = true;
+  } finally {
+    __callDispose(_stack, _error, _hasError);
+  }
+}
+function getAssemblies(root, rootAssembly) {
+  const assemblies = /* @__PURE__ */ new Map();
+  assemblies.set(root.artifactId, rootAssembly);
+  visitAssemblies(root, "pre", (construct) => {
+    const stage = construct;
+    if (stage.parentStage && assemblies.has(stage.parentStage.artifactId)) {
+      assemblies.set(
+        stage.artifactId,
+        assemblies.get(stage.parentStage.artifactId).getNestedAssembly(stage.artifactId)
+      );
+    }
+  });
+  return assemblies;
+}
+function pluginsToEvaluate(root, stage) {
+  const ret = [];
+  ret.push(...stage._validationPlugins);
+  if (defaultValidationEnabled() && !hasUserRegisteredCloudFormationValidatePlugin(root)) {
+    ret.push(CloudFormationValidatePlugin._singletonInstance());
+  }
+  if (stage === root && FeatureFlags.of(root).isEnabled(ANNOTATIONS_IN_VALIDATION_REPORT)) {
+    const annotationsPlugin = collectAnnotationReport(stage);
+    if (annotationsPlugin) {
+      ret.push(annotationsPlugin);
+    }
+  }
+  return ret;
+}
+function defaultValidationEnabled() {
+  return process.env.CDK_VALIDATION !== "false";
+}
+function downgradeCfnValidateErrorsToWarnings(reports) {
+  let warningifiedAnyErrors = false;
+  for (const report of reports) {
+    if (report.pluginName !== CloudFormationValidatePlugin.PLUGIN_NAME) {
+      continue;
+    }
+    for (const v of report.violations) {
+      if (v.severity === "error" || v.severity === "fatal") {
+        mutable(v).severity = "warning";
+        warningifiedAnyErrors = true;
+      }
+    }
+    mutable(report).success = true;
+  }
+  return warningifiedAnyErrors;
+}
+function inferConstructPathsFromLogicalIds(reports, tree) {
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        if (!resource.constructPath && resource.templatePath && resource.resourceLogicalId) {
+          mutable(resource).constructPath = tree.getConstructByLogicalId(
+            path16.basename(resource.templatePath),
+            resource.resourceLogicalId
+          )?.node.path;
+        }
+      }
+    }
+  }
+}
+function collectSuppressions(root, reports) {
+  const suppressedByReport = /* @__PURE__ */ new Map();
+  const acknowledgedRules = collectAcknowledgedRules(root);
+  if (Object.keys(acknowledgedRules).length > 0) {
+    for (let i = 0; i < reports.length; i++) {
+      const suppressed = suppressInReport(reports[i]);
+      if (suppressed.length > 0) {
+        suppressedByReport.set(i, suppressed);
+        mutable(reports[i]).success = reports[i].violations.every((v) => v.severity !== "error" && v.severity !== "fatal");
+      }
+    }
+  }
+  return suppressedByReport;
+  function suppressInReport(report) {
+    const ruleNamespace = namespaceFromPluginName(report.pluginName);
+    const ret = [];
+    for (let i = 0; i < report.violations.length; i++) {
+      const v = report.violations[i];
+      if (!isSuppressibleViolation(v)) {
+        continue;
+      }
+      const ruleName = normalizeValidationId(v.ruleName, ruleNamespace);
+      const pathBasedSuppressions = acknowledgedRules[ruleName];
+      if (!pathBasedSuppressions) {
+        continue;
+      }
+      const { suppressedGroups, unsuppressed } = groupResourcesBySuppressions(v.violatingResources, pathBasedSuppressions);
+      mutable(v).violatingResources = unsuppressed;
+      for (const suppressedGroup of suppressedGroups) {
+        ret.push({
+          ...v,
+          ...suppressedGroup.acknowledgement,
+          violatingResources: suppressedGroup.resources
+        });
+      }
+      if (v.violatingResources.length === 0) {
+        report.violations.splice(i, 1);
+        i--;
+      }
+    }
+    return ret;
+  }
+}
+function groupResourcesBySuppressions(resources, pathBasedSuppressions) {
+  const unsuppressed = [];
+  const suppressed = {};
+  for (const r of resources) {
+    const ack = findClosestAck(r);
+    if (ack) {
+      suppressed[ack.acknowledgedAt] ??= { acknowledgement: ack, resources: [] };
+      suppressed[ack.acknowledgedAt].resources.push(r);
+    } else {
+      unsuppressed.push(r);
+    }
+  }
+  return {
+    suppressedGroups: Object.values(suppressed),
+    unsuppressed
+  };
+  function findClosestAck(r) {
+    let constructPath = r.constructPath ?? "";
+    let ret = pathBasedSuppressions[constructPath];
+    while (ret === void 0 && constructPath !== "") {
+      const lastDot = constructPath.lastIndexOf("/");
+      if (lastDot === -1) {
+        constructPath = "";
+      } else {
+        constructPath = constructPath.substring(0, lastDot);
+      }
+      ret = pathBasedSuppressions[constructPath];
+    }
+    return ret;
+  }
+}
+function collectViolationStackTraces(reports, tree) {
+  const ret = new ExtraObjectData();
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        const constructPath = resource.constructPath;
+        if (!constructPath) {
+          continue;
+        }
+        const stacks = [];
+        const creationTrace = tree.creationTraceByPath(constructPath);
+        if (creationTrace) {
+          stacks.push(creationTrace);
+        }
+        stacks.push(...resource.locations.flatMap((location) => tree.mutationTracesByPath(constructPath, location)));
+        if (stacks.length > 0) {
+          ret.attach(resource, stacks);
+        }
+      }
+    }
+  }
+  return ret;
+}
+function doInvokeValidationPlugins(outdir, plugins, root) {
+  const untrustedPlugins = new Set(Array.from(plugins.values()).map((p) => p[0]).filter((p) => !isTrustedPlugin(p)));
+  const preExistingFileHashes = untrustedPlugins.size > 0 ? snapshotFileHashes(outdir) : void 0;
+  const ret = plugins.flatMap(([plugin, stacks]) => invokeSinglePlugin(plugin, Array.from(stacks)));
+  if (preExistingFileHashes) {
+    if (hasModifiedPreExistingFiles(preExistingFileHashes)) {
+      const pluginNames = Array.from(untrustedPlugins).map((p) => p.name);
+      throw new AssumptionError(lit`IllegalPluginOperation`, `One of the validation plugins (${pluginNames.join(", ")}) modified the cloud assembly`);
+    }
+  }
+  return ret;
+  function invokeSinglePlugin(plugin, stackArtifacts) {
+    if (stackArtifacts.length === 0) {
+      return [];
+    }
+    const stackTemplates = stackArtifacts.map((s) => ({
+      stackConstructPath: s.hierarchicalId,
+      templatePath: s.templateFullPath,
+      accountId: s.environment.account !== import_cloud_assembly_api.UNKNOWN_ACCOUNT ? s.environment.account : void 0,
+      region: s.environment.region !== import_cloud_assembly_api.UNKNOWN_REGION ? s.environment.region : void 0
+    }));
+    const accountId = stackTemplates.every((s) => s.accountId === stackTemplates[0].accountId) ? stackTemplates[0].accountId : void 0;
+    const region = stackTemplates.every((s) => s.region === stackTemplates[0].region) ? stackTemplates[0].region : void 0;
+    try {
+      const report = makeTemplatePathsRelative(plugin.validate({
+        templatePaths: stackTemplates.map((s) => s.templatePath),
+        stackTemplates,
+        appConstruct: root,
+        accountId,
+        region
+      }));
+      return [{ ...report, pluginName: plugin.name, pluginVersion: plugin.version }];
+    } catch (e) {
+      if (e instanceof AssumptionError && e.name === "IllegalPluginOperation") {
+        throw e;
+      }
+      return [mkPluginFailure(plugin, e)];
+    }
+  }
+  function makeTemplatePathsRelative(report) {
+    for (const v of report.violations) {
+      for (const r of v.violatingResources) {
+        if (r.templatePath) {
+          mutable(r).templatePath = path16.relative(outdir, path16.resolve(r.templatePath));
+        }
+      }
+    }
+    return report;
+  }
+}
+function isTrustedPlugin(x) {
+  return x instanceof CloudFormationValidatePlugin;
+}
+function visitAssemblies(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (!STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visitAssemblies(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+function getBooleanContext(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+function snapshotFileHashes(dir) {
+  const hashes = /* @__PURE__ */ new Map();
+  for (const filePath of collectFilePaths(dir)) {
+    hashes.set(filePath, hashFile(filePath));
+  }
+  return hashes;
+}
+function hasModifiedPreExistingFiles(snapshot) {
+  for (const [filePath, originalHash] of snapshot) {
+    if (!fileOrSymlinkExists(filePath) || hashFile(filePath) !== originalHash) {
+      return true;
+    }
+  }
+  return false;
+}
+function collectFilePaths(dir) {
+  const results = [];
+  function walk(current) {
+    for (const entry of fs11.readdirSync(current, { withFileTypes: true })) {
+      const full = path16.join(current, entry.name);
+      if (entry.isDirectory()) {
+        walk(full);
+      } else if (entry.isFile()) {
+        results.push(full);
+      } else if (entry.isSymbolicLink()) {
+        let st;
+        try {
+          st = fs11.lstatSync(full);
+        } catch {
+          continue;
+        }
+        if (st.isFile() || st.isSymbolicLink()) {
+          results.push(full);
+        }
+      }
+    }
+  }
+  walk(dir);
+  return results;
+}
+function hashFile(filePath) {
+  const content = fs11.lstatSync(filePath).isSymbolicLink() ? Buffer.from(fs11.readlinkSync(filePath)) : fs11.readFileSync(filePath);
+  return crypto7.createHash("sha256").update(content).digest("hex");
+}
+function fileOrSymlinkExists(p) {
+  try {
+    fs11.lstatSync(p);
+    return true;
+  } catch {
+    return false;
+  }
+}
+function hasUserRegisteredCloudFormationValidatePlugin(root) {
+  let count2 = 0;
+  visitAssemblies(root, "post", (construct) => {
+    if (!STAGE_TYPE.isMarked(construct)) return;
+    for (const plugin of construct._validationPlugins) {
+      if (!(plugin instanceof CloudFormationValidatePlugin)) continue;
+      if (construct !== root) {
+        throw new UnscopedValidationError(lit`CloudFormationValidatePluginNotAtApp`, "CloudFormationValidatePlugin can only be registered at the App level, not on a Stage");
+      }
+      count2++;
+    }
+  });
+  if (count2 > 1) {
+    throw new UnscopedValidationError(lit`DuplicateCloudFormationValidatePlugin`, "only one instance of CloudFormationValidatePlugin can be registered");
+  }
+  return count2 === 1;
+}
+function mutable(obj) {
+  return obj;
+}
+function cdkAppMode(root) {
+  const contextMode = root.node.tryGetContext(CDK_APP_MODE_CONTEXT);
+  if (contextMode === "process" || contextMode === "inmemory") {
+    return contextMode;
+  }
+  const envMode = process.env[CDK_APP_MODE_ENV];
+  if (envMode === "process" || envMode === "inmemory") {
+    return envMode;
+  }
+  if (process.env.NODE_ENV === "test" || process.env.PYTEST_VERSION || process.env.PYTEST_CURRENT_TEST) {
+    return "inmemory";
+  }
+  return "unknown";
+}
+var crypto7, fs11, path16, LEGACY_POLICY_VALIDATION_FILE_PATH;
+var init_synthesis_validation = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis-validation.ts"() {
+    "use strict";
+    crypto7 = __toESM(require("crypto"));
+    fs11 = __toESM(require("fs"));
+    path16 = __toESM(require("path"));
+    init_annotation_plugin();
+    init_collect_acknowledged_rule_ids();
+    init_literal_string();
+    init_cx_api();
+    init_app2();
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_perf();
+    init_stack_trace();
+    init_cloudformation_validate_plugin();
+    init_construct_tree();
+    init_modern_formatter();
+    init_report2();
+    init_validation_id();
+    LEGACY_POLICY_VALIDATION_FILE_PATH = "policy-validation-report.json";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tree.ts
+var TreeInspector;
+var init_tree = __esm({
+  "../../aws-cdk-lib/core/lib/tree.ts"() {
+    "use strict";
+    TreeInspector = class {
+      /**
+       * Represents the bag of attributes as key-value pairs.
+       */
+      attributes = {};
+      /**
+       * Adds attribute to bag. Keys should be added by convention to prevent conflicts
+       * i.e. L1 constructs will contain attributes with keys prefixed with aws:cdk:cloudformation
+       *
+       * @param key - key for metadata
+       * @param value - value of metadata.
+       */
+      addAttribute(key, value) {
+        this.attributes[key] = value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/tree-metadata.ts
+function nodeCount(root) {
+  let count2 = 0;
+  const stack = [root];
+  while (stack.length > 0) {
+    const current = stack.pop();
+    count2 += 1;
+    if (current.children) {
+      for (const child of Object.values(current.children)) {
+        stack.push(child);
+      }
+    }
+  }
+  return count2;
+}
+function setChild(parent, node) {
+  if (!parent.children) {
+    parent.children = {};
+  }
+  parent.children[node.id] = node;
+}
+var fs12, path17, import_constructs16, FILE_PATH, TreeMetadata, FragmentedTreeWriter;
+var init_tree_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/tree-metadata.ts"() {
+    "use strict";
+    fs12 = __toESM(require("fs"));
+    path17 = __toESM(require("path"));
+    import_constructs16 = __toESM(require_lib4());
+    init_runtime_info();
+    init_cloud_assembly_schema();
+    init_annotations();
+    init_tree();
+    init_construct_iteration();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    FILE_PATH = "tree.json";
+    TreeMetadata = class extends import_constructs16.Construct {
+      constructor(scope) {
+        super(scope, "Tree");
+      }
+      /**
+       * Create tree.json
+       * @internal
+       */
+      _synthesizeTree(session) {
+        const maxNodesPerTree = this.node.tryGetContext("@aws-cdk/core.TreeMetadata:maxNodes");
+        const builder = session.assembly;
+        const writer = new FragmentedTreeWriter(builder.outdir, FILE_PATH, { maxNodesPerTree });
+        for (const { construct, parent } of iterateBfs(this.node.root)) {
+          const node = {
+            id: construct.node.id || "App",
+            path: construct.node.path,
+            constructInfo: constructInfoFromConstruct(construct)
+          };
+          try {
+            node.attributes = this.synthAttributes(construct);
+          } catch (e) {
+            Annotations.of(this).addWarningV2(`@aws-cdk/core:failedToRenderTreeMetadata-${construct.node.id}`, `Failed to render tree metadata for node [${construct.node.id}]. Reason: ${e}`);
+          }
+          writer.addNode(construct, parent, node);
+        }
+        const rootFilename = writer.writeForest();
+        builder.addArtifact("Tree", {
+          type: cloud_assembly_schema_exports.ArtifactType.CDK_TREE,
+          properties: {
+            file: rootFilename
+          }
+        });
+      }
+      synthAttributes(construct) {
+        function canInspect2(inspectable) {
+          return inspectable.inspect !== void 0;
+        }
+        const inspector = new TreeInspector();
+        if (canInspect2(construct)) {
+          construct.inspect(inspector);
+          return stackOf(construct).resolve(inspector.attributes);
+        }
+        return void 0;
+      }
+    };
+    FragmentedTreeWriter = class {
+      constructor(outdir, rootFilename, options) {
+        this.outdir = outdir;
+        this.rootFilename = rootFilename;
+        this.maxNodes = options?.maxNodesPerTree ?? 5e5;
+      }
+      outdir;
+      rootFilename;
+      /**
+       * We only care about the identify of this object.
+       *
+       * Whatever tree in the forest is "pointed to" by this pointer is the main tree.
+       */
+      mainTreePointer = {
+        fileName: "yyy",
+        id: "id",
+        path: "path"
+      };
+      forest = new Array();
+      /**
+       * Maps a Construct to its respective Node
+       */
+      constructMap = /* @__PURE__ */ new Map();
+      /**
+       * Map a root Node to its containing Tree
+       */
+      subtreeRoots = /* @__PURE__ */ new Map();
+      /**
+       * Map a Node to its parent Node
+       */
+      parent = /* @__PURE__ */ new Map();
+      maxNodes;
+      /**
+       * Write the forest to disk, return the root file name
+       */
+      writeForest() {
+        const forestFiles = this.allocateSubTreesToForestFiles();
+        const mainTree = this.forest.find((t) => t.referencingNode === this.mainTreePointer);
+        if (mainTree) {
+          const treeFile = { version: "tree-0.1", tree: mainTree.root };
+          fs12.writeFileSync(path17.join(this.outdir, this.rootFilename), JSON.stringify(treeFile), { encoding: "utf-8" });
+        }
+        for (const forestFile of forestFiles) {
+          fs12.writeFileSync(path17.join(this.outdir, forestFile.fileName), JSON.stringify(forestFile.file), { encoding: "utf-8" });
+        }
+        return this.rootFilename;
+      }
+      /**
+       * Find all non-main tree and combine them into forest files
+       *
+       * This will mutate the pointing nodes as a side effect.
+       */
+      allocateSubTreesToForestFiles() {
+        const ret = new Array();
+        for (const tree of this.forest) {
+          if (tree.referencingNode === this.mainTreePointer) {
+            continue;
+          }
+          let targetForest;
+          if (ret.length === 0 || ret[ret.length - 1].nodeCount + tree.nodes > this.maxNodes) {
+            targetForest = {
+              fileName: `trees-${ret.length + 1}.json`,
+              file: { version: "forest-0.1", forest: {} },
+              nodeCount: 0,
+              treeCount: 0
+            };
+            ret.push(targetForest);
+          } else {
+            targetForest = ret[ret.length - 1];
+          }
+          const treeId = `t${targetForest.treeCount++}`;
+          targetForest.file.forest[treeId] = tree.root;
+          targetForest.nodeCount += tree.nodes;
+          tree.referencingNode.fileName = targetForest.fileName;
+          tree.referencingNode.treeId = treeId;
+        }
+        return ret;
+      }
+      addNode(construct, parent, node) {
+        if (parent === void 0) {
+          if (this.forest.length > 0) {
+            throw new AssumptionError(lit`OnlyOneNodeWithoutParent`, "Can only add exactly one node without a parent");
+          }
+          this.addNewTree(node, this.mainTreePointer);
+        } else {
+          const parentNode = this.constructMap.get(parent);
+          if (!parentNode) {
+            return;
+          }
+          this.addToExistingTree(node, parentNode);
+        }
+        this.constructMap.set(construct, node);
+      }
+      /**
+       * Add a new tree with the given Node as root
+       */
+      addNewTree(root, referencingNode) {
+        const tree = {
+          root,
+          referencingNode,
+          nodes: nodeCount(root)
+        };
+        this.forest.push(tree);
+        this.subtreeRoots.set(root, tree);
+        return tree;
+      }
+      /**
+       * Add the given node to an existing tree, potentially splitting it
+       */
+      addToExistingTree(node, parent) {
+        let tree = this.treeForNode(parent);
+        if (this.isTreeFull(tree)) {
+          const grandParent = this.parent.get(parent);
+          if (!grandParent) {
+            throw new AssumptionError(lit`CouldNotFindParent`, `Could not find parent of ${JSON.stringify(parent)}`);
+          }
+          const subtreeReference = {
+            id: parent.id,
+            path: parent.path,
+            fileName: "xxx"
+            // Will be replaced later
+          };
+          tree = this.addNewTree(parent, subtreeReference);
+          setChild(grandParent, subtreeReference);
+          this.subtreeRoots.set(parent, tree);
+        }
+        setChild(parent, node);
+        this.parent.set(node, parent);
+        tree.nodes += 1;
+      }
+      /**
+       * Whether the given tree is full
+       */
+      isTreeFull(t) {
+        return t.nodes >= this.maxNodes;
+      }
+      /**
+       * Return the Tree that contains the given Node
+       */
+      treeForNode(node) {
+        const tried = new Array();
+        let cur = node;
+        tried.push(cur.path);
+        let tree = this.subtreeRoots.get(cur);
+        while (!tree && cur) {
+          cur = this.parent.get(cur);
+          tried.push(cur?.path);
+          tree = cur && this.subtreeRoots.get(cur);
+        }
+        if (tree) {
+          return tree;
+        }
+        throw new AssumptionError(lit`CouldNotFindTreeForNode`, `Could not find tree for node: ${JSON.stringify(node)}, tried ${tried}`);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis.ts
+function synthesize(root, options = {}) {
+  injectTreeMetadata(root);
+  synthNestedAssemblies(root, options);
+  if (options.aspectStabilization) {
+    invokeAspectsV2(root);
+  } else {
+    invokeAspects(root);
+  }
+  injectMetadataResources(root);
+  prepareApp(root);
+  if (!options.skipValidation) {
+    validateTree(root);
+  }
+  const builder = STAGE_TYPE.isMarked(root) ? _convertCloudAssemblyBuilder(root._assemblyBuilder) : new private_cxapi.CloudAssemblyBuilder(options.outdir);
+  synthesizeTree(root, builder, options.validateOnSynthesis);
+  generateFeatureFlagReport(builder, root);
+  const assembly = builder.buildAssembly();
+  validateTemplates(root, builder.outdir, assembly);
+  return assembly;
+}
+function addCustomSynthesis(construct, synthesis) {
+  Object.defineProperty(construct, CUSTOM_SYNTHESIS_SYM, {
+    value: synthesis,
+    enumerable: false
+  });
+}
+function getCustomSynthesis(construct) {
+  return construct[CUSTOM_SYNTHESIS_SYM];
+}
+function synthNestedAssemblies(root, options) {
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      child.synth(options);
+    } else {
+      synthNestedAssemblies(child, options);
+    }
+  }
+}
+function invokeAspects(root) {
+  const invokedByPath = {};
+  let nestedAspectWarning = false;
+  recurse(root, []);
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    const aspects = Aspects.of(construct);
+    let localAspects = getAspectApplications(construct);
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, localAspects);
+    const nodeAspectsCount = aspects.all.length;
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath[node.path];
+      if (!invoked) {
+        invoked = invokedByPath[node.path] = [];
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      aspectApplication.aspect.visit(construct);
+      if (!nestedAspectWarning && nodeAspectsCount !== aspects.all.length) {
+        Annotations.of(construct).addWarningV2("@aws-cdk/core:ignoredAspect", "We detected an Aspect was added via another Aspect, and will not be applied");
+        nestedAspectWarning = true;
+      }
+      invoked.push(aspectApplication);
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        recurse(child, allAspectsHere);
+      }
+    }
+  }
+}
+function invokeAspectsV2(root) {
+  const invokedByPath = /* @__PURE__ */ new Map();
+  recurse(root, []);
+  for (let i = 0; i <= 100; i++) {
+    const didAnythingToTree = recurse(root, []);
+    if (didAnythingToTree === "nothing") {
+      return;
+    }
+  }
+  throw new UnscopedValidationError(lit`PossibleInfiniteLoopDetected`, "We have detected a possible infinite loop while invoking Aspects. Please check your Aspects and verify there is no configuration that would cause infinite Aspect or Node creation.");
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    let ret = "nothing";
+    const currentAspectTreeRevision = _aspectTreeRevisionReader(construct);
+    const versionAtStart = currentAspectTreeRevision();
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, getAspectApplications(construct));
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath.get(node.path);
+      if (!invoked) {
+        invokedByPath.set(node.path, invoked = []);
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      const lastInvokedAspect = invoked[invoked.length - 1];
+      if (lastInvokedAspect && lastInvokedAspect.priority > aspectApplication.priority) {
+        throw new UnscopedValidationError(
+          lit`CannotInvokeAspectWithLowerPriority`,
+          `Cannot invoke Aspect ${aspectApplication.aspect.constructor.name} with priority ${aspectApplication.priority} on node ${node.path}: an Aspect ${lastInvokedAspect.aspect.constructor.name} with a lower priority (added at ${lastInvokedAspect.construct.node.path} with priority ${lastInvokedAspect.priority}) was already invoked on this node.`
+        );
+      }
+      aspectApplication.aspect.visit(construct);
+      ret = "invoked";
+      invoked.push(aspectApplication);
+      if (currentAspectTreeRevision() !== versionAtStart) {
+        return "abort-recursion";
+      }
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        const childDidSomething = recurse(child, allAspectsHere);
+        ret = childDidSomething !== "nothing" ? childDidSomething : ret;
+        if (ret === "abort-recursion") {
+          break;
+        }
+      }
+    }
+    return ret;
+  }
+}
+function sortAspectsByPriority(inheritedAspects, localAspects) {
+  const allAspects = [...inheritedAspects, ...localAspects].sort((a, b) => {
+    if (a.priority !== b.priority) {
+      return a.priority - b.priority;
+    }
+    const isAInherited = inheritedAspects.includes(a);
+    const isBInherited = inheritedAspects.includes(b);
+    if (isAInherited && !isBInherited) return -1;
+    if (!isAInherited && isBInherited) return 1;
+    return 0;
+  });
+  return allAspects;
+}
+function getAspectApplications(node) {
+  const aspects = Aspects.of(node);
+  if (aspects.applied !== void 0) {
+    return aspects.applied;
+  }
+  const typedAspects = aspects;
+  return typedAspects.all.map((aspect) => new AspectApplication(node, aspect, AspectPriority.DEFAULT));
+}
+function injectMetadataResources(root) {
+  visit(root, "post", (construct) => {
+    if (!STACK_TYPE.isMarked(construct) || !construct._versionReportingEnabled) {
+      return;
+    }
+    const CDKMetadata = "CDKMetadata";
+    if (construct.node.tryFindChild(CDKMetadata)) {
+      return;
+    }
+    new MetadataResource(construct, CDKMetadata);
+  });
+}
+function injectTreeMetadata(root) {
+  visit(root, "post", (construct) => {
+    if (!App.isApp(construct) || !construct._treeMetadata) return;
+    const CDKTreeMetadata = "Tree";
+    if (construct.node.tryFindChild(CDKTreeMetadata)) return;
+    new TreeMetadata(construct);
+  });
+}
+function synthesizeTree(root, builder, validateOnSynth = false) {
+  visit(root, "post", (construct) => {
+    const session = {
+      outdir: builder.outdir,
+      assembly: _convertCloudAssemblyBuilder(builder),
+      validateOnSynth
+    };
+    if (STACK_TYPE.isMarked(construct)) {
+      construct.synthesizer.synthesize(session);
+    } else if (construct instanceof TreeMetadata) {
+      construct._synthesizeTree(session);
+    } else {
+      const custom = getCustomSynthesis(construct);
+      custom?.onSynthesize(session);
+    }
+  });
+}
+function validateTree(root) {
+  const errors = new Array();
+  visit(root, "pre", (construct) => {
+    for (const message of construct.node.validate()) {
+      errors.push({ message, source: construct });
+    }
+  });
+  if (errors.length > 0) {
+    const errorList = errors.map((e) => `[${e.source.node.path}] ${e.message}`).join("\n  ");
+    throw new UnscopedValidationError(lit`ValidationFailedWithErrors`, `Validation failed with the following errors:
+  ${errorList}`);
+  }
+}
+function visit(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visit(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+var private_cxapi, CUSTOM_SYNTHESIS_SYM;
+var init_synthesis = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis.ts"() {
+    "use strict";
+    private_cxapi = __toESM(require_lib3());
+    init_core_construct_finders();
+    init_feature_flag_report();
+    init_literal_string();
+    init_metadata_resource2();
+    init_prepare_app();
+    init_synthesis_validation();
+    init_tree_metadata();
+    init_legacy_moved();
+    init_annotations();
+    init_app2();
+    init_aspect();
+    init_errors();
+    CUSTOM_SYNTHESIS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core:customSynthesis");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validation.ts
+function _toBeta1Plugin(plugin) {
+  return {
+    name: plugin.name,
+    version: plugin.version,
+    ruleIds: plugin.ruleIds,
+    validate(context) {
+      const report = plugin.validate({
+        ...context,
+        // This is incorrect information -- it doesn't matter, this function shouldn't be used regardless.
+        stackTemplates: [],
+        accountId: void 0,
+        region: void 0
+      });
+      return {
+        success: report.success,
+        pluginVersion: report.pluginVersion,
+        metadata: report.metadata,
+        violations: report.violations.map((v) => ({
+          ruleName: v.ruleName,
+          description: v.description,
+          fix: v.fix,
+          severity: v.severity,
+          ruleMetadata: v.ruleMetadata,
+          violatingResources: v.violatingResources.map((r) => ({
+            resourceLogicalId: r.resourceLogicalId ?? "",
+            templatePath: r.templatePath ?? "",
+            locations: r.locations
+          }))
+        }))
+      };
+    }
+  };
+}
+var init_validation = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validation.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validations.ts
+var Validations;
+var init_validations = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validations.ts"() {
+    "use strict";
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_stack_trace();
+    init_validation_id();
+    Validations = class _Validations {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      /**
+       * Metadata key used to store acknowledged rules on construct nodes.
+       *
+       * Plugin authors can read this metadata to build audit trails from
+       * acknowledgments recorded via `acknowledge()`.
+       */
+      static ACKNOWLEDGED_RULES_METADATA_KEY = "aws:cdk:acknowledged-rules";
+      /**
+       * Returns the Validations for the given construct scope.
+       *
+       * @param scope any construct
+       */
+      static of(scope) {
+        return new _Validations(scope);
+      }
+      /**
+       * Register one or more validation plugins that will be executed during synthesis.
+       *
+       * Plugins can only be registered within a Stage or App scope.
+       * If any plugin reports a violation, synthesis will be interrupted and the
+       * report displayed to the user.
+       *
+       * @param plugins the validation plugins to add
+       */
+      addPlugins(...plugins) {
+        const stage = STAGE_TYPE.isMarked(this.scope) ? this.scope : stageOf(this.scope);
+        if (!stage) {
+          throw new UnscopedValidationError(lit`NoStageForValidationPlugins`, "Cannot add validation plugins on a construct without an enclosing Stage");
+        }
+        stage._addValidationPlugins(...plugins);
+      }
+      /**
+       * Adds a warning metadata entry to this construct that can be acknowledged.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * The ID will be stored with the `annotation` prefix (e.g. `annotation::MyWarning`).
+       * Use this prefixed ID when calling `acknowledge()` to suppress the warning.
+       *
+       * @param id unique identifier for the warning, used for acknowledgement
+       * @param message the warning message
+       */
+      addWarning(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addWarningV2(id, message);
+      }
+      /**
+       * Adds an error metadata entry to this construct.
+       *
+       * Synthesis will be interrupted when errors are reported.
+       *
+       * Note: Annotation errors are not currently acknowledgeable. The ID is
+       * recorded for identification purposes but `acknowledge()` will not
+       * suppress errors added via this method.
+       *
+       * @param id unique identifier for the error
+       * @param message the error message
+       */
+      addError(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addError(`${message} (${id})`);
+      }
+      /**
+       * Acknowledge one or more rules, suppressing them from validation output.
+       *
+       * Acknowledgments are recorded to construct metadata so that downstream
+       * plugins (e.g. CDK Nag) can read them for audit trails.
+       *
+       * Currently only annotation warnings can be suppressed. Annotation errors
+       * are not yet acknowledgeable.
+       *
+       * If an ID has no well-known prefix, it is assumed to be an annotation rule
+       * for backwards compatibility.
+       *
+       * @param rules the rules to acknowledge
+       */
+      acknowledge(...rules) {
+        for (const rule of rules) {
+          const parsed = parseValidationId(rule.id);
+          const qualifiedId = normalizeValidationIdForAnnotations(parsed);
+          this.recordAcknowledgment(qualifiedId, rule.reason);
+          Annotations.of(this.scope).acknowledgeWarning(qualifiedId);
+          if (qualifiedId.startsWith(`${ANNOTATION_PLUGIN_NAMESPACE}::`)) {
+            const annotationId = qualifiedId.substring(`${ANNOTATION_PLUGIN_NAMESPACE}::`.length);
+            Annotations.of(this.scope).acknowledgeWarning(annotationId);
+          }
+        }
+      }
+      recordAcknowledgment(id, reason) {
+        this.scope.node.addMetadata(
+          _Validations.ACKNOWLEDGED_RULES_METADATA_KEY,
+          { [id]: reason },
+          // eslint-disable-next-line @typescript-eslint/unbound-method
+          { stackTraceOverride: enhancedStackTrace(this.recordAcknowledgment) }
+        );
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/index.ts
+var init_validation2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/index.ts"() {
+    "use strict";
+    init_validation();
+    init_validations();
+    init_report();
+    init_cloudformation_validate_plugin();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stage.ts
+function stripInPlace(arr, startIndex, predicate) {
+  for (let i = startIndex; i < arr.length; i++) {
+    if (predicate(arr[i])) {
+      arr.splice(i, 1);
+      i--;
+    }
+  }
+}
+var private_cxapi2, import_constructs17, Stage;
+var init_stage = __esm({
+  "../../aws-cdk-lib/core/lib/stage.ts"() {
+    "use strict";
+    private_cxapi2 = __toESM(require_lib3());
+    import_constructs17 = __toESM(require_lib4());
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_synthesis();
+    init_prop_injectors();
+    init_validation2();
+    init_cx_api();
+    init_cx_api();
+    init_literal_string();
+    Stage = class _Stage extends import_constructs17.Construct {
+      /**
+       * Return the stage this construct is contained with, if available. If called
+       * on a nested stage, returns its parent.
+       *
+       */
+      static of(construct) {
+        return stageOf(construct);
+      }
+      /**
+       * Test whether the given construct is a stage.
+       *
+       */
+      static isStage(x) {
+        return STAGE_TYPE.isMarked(x);
+      }
+      /**
+       * The default region for all resources defined within this stage.
+       *
+       */
+      region;
+      /**
+       * The default account for all resources defined within this stage.
+       *
+       */
+      account;
+      /**
+       * The cloud assembly builder that is being used for this App
+       *
+       * @internal
+       */
+      _assemblyBuilder;
+      /**
+       * The name of the stage. Based on names of the parent stages separated by
+       * hypens.
+       *
+       */
+      stageName;
+      /**
+       * The parent stage or `undefined` if this is the app.
+       * *
+       */
+      parentStage;
+      /**
+       * The cached assembly if it was already built
+       */
+      assembly;
+      /**
+       * The cached set of construct paths. Empty if assembly was not yet built.
+       */
+      constructPathsCache;
+      /**
+       * Validation plugins to run during synthesis. If any plugin reports any violation,
+       * synthesis will be interrupted and the report displayed to the user.
+       *
+       * @default - no validation plugins are used
+       * @deprecated Do not use this function to look up validation plugins. Use `Validations.of(stage).plugins` instead.
+       */
+      get policyValidationBeta1() {
+        return this._policyValidation.map(_toBeta1Plugin);
+      }
+      _policyValidation = [];
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        if (id !== "" && !/^[a-z][a-z0-9\-\_\.]*$/i.test(id)) {
+          throw new ValidationError(lit`InvalidStageName`, `invalid stage name "${id}". Stage name must start with a letter and contain only alphanumeric characters, hypens ('-'), underscores ('_') and periods ('.')`, this);
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        STAGE_TYPE.mark(this);
+        this.constructPathsCache = /* @__PURE__ */ new Set();
+        this.parentStage = _Stage.of(this);
+        this.region = props.env?.region ?? this.parentStage?.region;
+        this.account = props.env?.account ?? this.parentStage?.account;
+        props.permissionsBoundary?._bind(this);
+        this._assemblyBuilder = this.createBuilder(props.outdir);
+        this.stageName = [this.parentStage?.stageName, props.stageName ?? id].filter((x) => x).join("-");
+        if (props.policyValidationBeta1) {
+          this._policyValidation.push(...props.policyValidationBeta1);
+        }
+      }
+      /**
+       * Register a validation plugin on this stage.
+       *
+       * @internal
+       */
+      _addValidationPlugins(...plugins) {
+        this._policyValidation.push(...plugins);
+      }
+      /**
+       * Returns the raw validation plugins without Beta1 wrapping.
+       *
+       * @internal
+       */
+      get _validationPlugins() {
+        return [...this._policyValidation];
+      }
+      /**
+       * The cloud assembly output directory.
+       */
+      get outdir() {
+        return this._assemblyBuilder.outdir;
+      }
+      /**
+       * The cloud assembly asset output directory.
+       */
+      get assetOutdir() {
+        return this._assemblyBuilder.assetOutdir;
+      }
+      /**
+       * Artifact ID of the assembly if it is a nested stage. The root stage (app)
+       * will return an empty string.
+       *
+       * Derived from the construct path.
+       */
+      get artifactId() {
+        if (!this.node.path) {
+          return "";
+        }
+        return `assembly-${this.node.path.replace(/\//g, "-").replace(/^-+|-+$/g, "")}`;
+      }
+      /**
+       * Synthesize this stage into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        let newConstructPaths = this.listAllConstructPaths(this);
+        if (this.constructPathsCache.size == 0 || !this.assembly || options.force) {
+          this.assembly = _convertCloudAssembly(synthesize(this, {
+            skipValidation: options.skipValidation,
+            validateOnSynthesis: options.validateOnSynthesis,
+            aspectStabilization: options.aspectStabilization ?? FeatureFlags.of(this).isEnabled(ASPECT_STABILIZATION) ?? false
+          }));
+          newConstructPaths = this.listAllConstructPaths(this);
+          this.constructPathsCache = newConstructPaths;
+        }
+        if (!this.constructPathSetsAreEqual(this.constructPathsCache, newConstructPaths)) {
+          const diff = this.constructPathSetsDiff(this.constructPathsCache, newConstructPaths).join(", ");
+          const errorMessage = `Synthesis has been called multiple times and the construct tree was modified after the first synthesis (${diff})`;
+          if (options.errorOnDuplicateSynth ?? true) {
+            throw new ValidationError(lit`ConstructTreeModifiedAfterSynth`, errorMessage + " This is not allowed. Remove multple synth() calls and do not modify the construct tree after the first synth().", this);
+          } else {
+            console.error(errorMessage + " Only the results of the first synth() call are used, and modifications done after it are ignored. Avoid construct tree mutations after synth() has been called unless this is intentional.");
+          }
+        }
+        this.constructPathsCache = newConstructPaths;
+        return this.assembly;
+      }
+      // Function that lists all construct paths and returns them as a set
+      listAllConstructPaths(construct) {
+        const paths = /* @__PURE__ */ new Set();
+        function recurse(root) {
+          paths.add(root.node.path);
+          for (const child of root.node.children) {
+            if (!STAGE_TYPE.isMarked(child)) {
+              recurse(child);
+            }
+          }
+        }
+        recurse(construct);
+        return paths;
+      }
+      // Checks if sets of construct paths are equal
+      constructPathSetsAreEqual(set1, set2) {
+        if (set1.size !== set2.size) return false;
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      /**
+       * Returns a list of +/- marked construct paths that have been added or removed between the 2 sets
+       */
+      constructPathSetsDiff(set1, set2) {
+        const ret = [];
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            ret.push(`-${id}`);
+          }
+        }
+        for (const id of set2) {
+          if (!set1.has(id)) {
+            ret.push(`+${id}`);
+          }
+        }
+        ret.sort((a, b) => a.length - b.length);
+        for (let i = 0; i < ret.length; i++) {
+          const prefix = ret[i] + "/";
+          stripInPlace(ret, i + 1, (x) => x.startsWith(prefix));
+        }
+        return ret;
+      }
+      createBuilder(outdir) {
+        if (this.parentStage && outdir) {
+          throw new ValidationError(lit`OutdirCannotBeSpecifiedForNestedStage`, '"outdir" cannot be specified for nested stages', this);
+        }
+        return this.parentStage ? this.parentStage._assemblyBuilder.createNestedAssembly(this.artifactId, this.node.path) : _convertCloudAssemblyBuilder(new private_cxapi2.CloudAssemblyBuilder(outdir));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/stack-metadata.ts
+function constructAnalyticsFromScope(scope) {
+  const isDefined = (value) => value !== void 0;
+  const allConstructInfos = constructsInScope(scope).map((construct) => [construct, constructInfoFromConstruct(construct)]).filter((c) => {
+    const [_, info] = c;
+    return isDefined(info) && ALLOWED_FQN_PREFIXES.find((prefix) => info.fqn.startsWith(prefix)) != null;
+  }).map(([construct, info]) => injectAnalytics(construct, info));
+  allConstructInfos.push({
+    fqn: "jsii-runtime.Runtime",
+    version: getJsiiAgentVersion()
+  });
+  addValidationPluginInfo(scope, allConstructInfos);
+  const uniqueMap = /* @__PURE__ */ new Map();
+  allConstructInfos.forEach((info) => {
+    const key = `${info.fqn}@${info.version}`;
+    if (uniqueMap.has(key)) {
+      const existingInfo = uniqueMap.get(key);
+      if (existingInfo && existingInfo.additionalTelemetry && info.additionalTelemetry) {
+        existingInfo.additionalTelemetry.push(...info.additionalTelemetry);
+      }
+      if (existingInfo && existingInfo.metadata && info.metadata) {
+        existingInfo.metadata.push(...info.metadata);
+      }
+    } else {
+      uniqueMap.set(key, info);
+    }
+  });
+  return Array.from(uniqueMap.values());
+}
+function injectAnalytics(construct, info) {
+  const metadata = new Array();
+  const additionalTelemetry = new Array();
+  for (const entry of construct.node.metadata) {
+    if (isResource(construct) && ADDITIONAL_TELEMETRY_METADATA_TYPES.has(entry.type)) {
+      additionalTelemetry.push(entry.data);
+    } else if (ALLOWED_METADATA_TYPES.has(entry.type)) {
+      metadata.push(entry.data);
+    }
+  }
+  return {
+    ...info,
+    metadata: metadata.length ? metadata : void 0,
+    additionalTelemetry: additionalTelemetry.length ? additionalTelemetry : void 0
+  };
+}
+function constructsInScope(construct) {
+  const constructs = [construct];
+  construct.node.children.filter((child) => !STAGE_TYPE.isMarked(child) && !STACK_TYPE.isMarked(child)).forEach((child) => constructs.push(...constructsInScope(child)));
+  return constructs;
+}
+function getJsiiAgentVersion() {
+  let jsiiAgent = process.env.JSII_AGENT;
+  if (!jsiiAgent) {
+    jsiiAgent = `node.js/${process.version}`;
+  }
+  jsiiAgent = jsiiAgent.replace(/[^a-z0-9.-/=_]/gi, "-");
+  return jsiiAgent;
+}
+function addValidationPluginInfo(scope, allConstructInfos) {
+  let stage = Stage.of(scope);
+  let done = false;
+  do {
+    if (App.isApp(stage)) {
+      done = true;
+    }
+    if (stage) {
+      allConstructInfos.push(...stage._validationPlugins.map(
+        (plugin) => {
+          return {
+            fqn: pluginFqn(plugin),
+            version: plugin.version ?? "0.0.0"
+          };
+        }
+      ));
+      stage = Stage.of(stage);
+    }
+  } while (!done && stage);
+}
+function pluginFqn(plugin) {
+  let components = [
+    "policyValidation",
+    plugin.name,
+    plugin.ruleIds?.join("|")
+  ];
+  return components.filter((x) => x != null).join(".");
+}
+function isResource(construct) {
+  return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct;
+}
+var ALLOWED_METADATA_TYPES, ADDITIONAL_TELEMETRY_METADATA_TYPES;
+var init_stack_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/stack-metadata.ts"() {
+    "use strict";
+    init_runtime_info();
+    init_app2();
+    init_constants();
+    init_metadata_type();
+    init_stage();
+    init_constants2();
+    init_core_construct_finders();
+    ALLOWED_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:mixin" /* MIXIN */
+    ]);
+    ADDITIONAL_TELEMETRY_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:construct" /* CONSTRUCT */,
+      "aws:cdk:analytics:method" /* METHOD */,
+      "aws:cdk:analytics:featureflag" /* FEATURE_FLAG */
+    ]);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts
+var _defaultChildOwner_dec, _init8, _ConstructReflection, ConstructReflection;
+var init_construct_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_memoize();
+    _defaultChildOwner_dec = [memoizedGetter];
+    _ConstructReflection = class _ConstructReflection {
+      constructor(construct) {
+        __runInitializers(_init8, 5, this);
+        __publicField(this, "construct");
+        this.construct = construct;
+      }
+      /**
+       * Create a reflection for the given construct.
+       */
+      static of(construct) {
+        return new _ConstructReflection(construct);
+      }
+      get defaultChildOwner() {
+        if (this.construct.node.scope && (this.construct.node.id === "Resource" || this.construct.node.id === "Default")) {
+          return this.construct.node.scope;
+        }
+        return void 0;
+      }
+      /**
+       * Finds the CfnResource backing this construct.
+       *
+       * Checks in order: the construct itself, its default child, then searches
+       * the broader construct tree for the closest match.
+       */
+      findCfnResource(matcher) {
+        const isCfnType = (c) => {
+          return CfnResource.isCfnResource(c) && c.cfnResourceType === matcher.cfnResourceType;
+        };
+        if (isCfnType(this.construct)) {
+          return this.construct;
+        }
+        if (this.construct.node.defaultChild && isCfnType(this.construct.node.defaultChild)) {
+          return this.construct.node.defaultChild;
+        }
+        return this.findRelatedCfnResource(matcher);
+      }
+      /**
+       * Finds the closest related CfnResource in the construct tree.
+       *
+       * Searches children first (depth-first), then ancestors (breadth-first).
+       */
+      findRelatedCfnResource(matcher) {
+        let closestMatch;
+        let closestDistance = Infinity;
+        const visited = /* @__PURE__ */ new Set();
+        const isMatch = (child) => {
+          return CfnResource.isCfnResource(child) && child.cfnResourceType === matcher.cfnResourceType;
+        };
+        const checkCandidate = (candidate, distance) => {
+          if (isMatch(candidate) && matcher.matches(candidate) && distance < closestDistance) {
+            closestMatch = candidate;
+            closestDistance = distance;
+          }
+        };
+        const searchChildren = (parent, distance) => {
+          if (distance >= closestDistance) {
+            return;
+          }
+          for (const child of parent.node.children) {
+            if (visited.has(child)) {
+              continue;
+            }
+            visited.add(child);
+            checkCandidate(child, distance);
+            searchChildren(child, distance + 1);
+          }
+        };
+        searchChildren(this.construct, 1);
+        let ancestor = this.construct.node.scope;
+        let ancestorDistance = 1;
+        while (ancestor && ancestorDistance < closestDistance) {
+          for (const sibling of ancestor.node.children) {
+            searchChildren(sibling, ancestorDistance);
+          }
+          ancestor = ancestor.node.scope;
+          ancestorDistance++;
+        }
+        return closestMatch;
+      }
+    };
+    _init8 = __decoratorStart(null);
+    __decorateElement(_init8, 2, "defaultChildOwner", _defaultChildOwner_dec, _ConstructReflection);
+    __decoratorMetadata(_init8, _ConstructReflection);
+    ConstructReflection = _ConstructReflection;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts
+var init_property_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts"() {
+    "use strict";
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/traits.ts
+var init_traits = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/traits.ts"() {
+    "use strict";
+    init_cx_api();
+    init_errors();
+    init_feature_flags();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deep-merge.ts
+function deepMerge(target, ...sources) {
+  for (const source of sources) {
+    if (typeof source !== "object" || typeof target !== "object") {
+      throw new AssumptionError(lit`InvalidDeepMergeArguments`, `Invalid usage. Both source (${JSON.stringify(source)}) and target (${JSON.stringify(target)}) must be objects`);
+    }
+    for (const key of Object.keys(source)) {
+      if (key === "__proto__" || key === "constructor" || key === "prototype") {
+        continue;
+      }
+      const value = source[key];
+      if (typeof value === "object" && value != null && !Array.isArray(value)) {
+        if (typeof target[key] !== "object") {
+          target[key] = {};
+        } else if (Object.keys(target[key]).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(target[key])[0])) {
+            target[key] = {};
+          }
+        }
+        if (Object.keys(value).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(value)[0])) {
+            target[key] = {};
+          }
+        }
+        deepMerge(target[key], value);
+        const output = target[key];
+        if (typeof output === "object" && Object.keys(output).length === 0) {
+          delete target[key];
+        }
+      } else if (value === void 0) {
+        delete target[key];
+      } else {
+        target[key] = value;
+      }
+    }
+  }
+  return target;
+}
+var MERGE_EXCLUDE_KEYS;
+var init_deep_merge = __esm({
+  "../../aws-cdk-lib/core/lib/private/deep-merge.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    MERGE_EXCLUDE_KEYS = [
+      "Ref",
+      "Fn::Base64",
+      "Fn::Cidr",
+      "Fn::FindInMap",
+      "Fn::GetAtt",
+      "Fn::GetAZs",
+      "Fn::ImportValue",
+      "Fn::Join",
+      "Fn::Select",
+      "Fn::Split",
+      "Fn::Sub",
+      "Fn::Transform",
+      "Fn::And",
+      "Fn::Equals",
+      "Fn::If",
+      "Fn::Not",
+      "Fn::Or"
+    ];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts
+var init_property_merge_strategy = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts"() {
+    "use strict";
+    init_box();
+    init_deep_merge();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts
+var init_cfn_props_mixin = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_property_merge_strategy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/shell-escape.ts
+var init_shell_escape = __esm({
+  "../../aws-cdk-lib/core/lib/private/shell-escape.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/index.ts
+var init_helpers_internal = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/index.ts"() {
+    "use strict";
+    init_cfn_parse();
+    init_md5();
+    init_customize_roles();
+    init_string_specializer();
+    init_validate_all_props();
+    init_strings();
+    init_runtime_info();
+    init_stack_metadata();
+    init_memoize();
+    init_construct_reflection();
+    init_property_reflection();
+    init_traits();
+    init_cfn_props_mixin();
+    init_literal_string();
+    init_box();
+    init_no_box_stack_traces();
+    init_perf();
+    init_shell_escape();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/private-context.ts
+var PREFIX, PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER;
+var init_private_context = __esm({
+  "../../aws-cdk-lib/core/lib/private/private-context.ts"() {
+    "use strict";
+    PREFIX = `aws-cdk-private:${Math.random()}:`;
+    PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER = `${PREFIX}core/defaultStackSynthesizer`;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/app.ts
+function countConstructs(construct) {
+  let ret = 0;
+  for (const _ of iterateDfsPreorder(construct)) {
+    ret++;
+  }
+  return ret;
+}
+function attachCustomSynthesis(construct, synthesis) {
+  addCustomSynthesis(construct, synthesis);
+}
+function emitPerformanceCountersFile() {
+  const filename = process.env[PERF_COUNTERS_FILE_ENV];
+  if (!filename) {
+    return;
+  }
+  const counters = {};
+  for (const [name, ctr] of Object.entries(readPerfCounters({ telemetry: true }))) {
+    counters[name] = ctr.total;
+    counters[`${name}(cnt)`] = ctr.count;
+  }
+  fs13.writeFileSync(filename, JSON.stringify({ counters }, void 0, 2), "utf-8");
+}
+function parseAsNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  const r = parseInt(`${x}`, 10);
+  return isNaN(r) ? void 0 : r;
+}
+var import_perf_hooks2, fs13, APP_INIT_HOOK_SYMBOL, DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS, SLOW_SYNTH_THRESHOLD_CTX, App, PERF_STATE;
+var init_app2 = __esm({
+  "../../aws-cdk-lib/core/lib/app.ts"() {
+    "use strict";
+    import_perf_hooks2 = require("perf_hooks");
+    fs13 = __toESM(require_lib5());
+    init_helpers_internal();
+    init_construct_iteration();
+    init_private_context();
+    init_synthesis();
+    init_prop_injectors();
+    init_stage();
+    init_cx_api();
+    init_core_construct_finders();
+    APP_INIT_HOOK_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+    DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS = 1e4;
+    SLOW_SYNTH_THRESHOLD_CTX = "@aws-cdk/core.slowSynthThreshold";
+    App = class extends Stage {
+      /**
+       * Return the app that is the root of the construct tree, if available.
+       */
+      static of(construct) {
+        return appOf(construct);
+      }
+      /**
+       * Checks if an object is an instance of the `App` class.
+       * @returns `true` if `obj` is an `App`.
+       * @param obj The object to evaluate
+       */
+      static isApp(obj) {
+        return APP_TYPE.isMarked(obj);
+      }
+      /**
+       * Include construct tree metadata as part of the Cloud Assembly.
+       *
+       * @internal
+       */
+      _treeMetadata;
+      initMark;
+      performanceReporting;
+      alreadySynthed = false;
+      /**
+       * Initializes a CDK application.
+       * @param props initialization properties
+       */
+      constructor(props = {}) {
+        super(void 0, "", {
+          outdir: props.outdir ?? process.env[OUTDIR_ENV]
+        });
+        this.initMark = import_perf_hooks2.performance.now();
+        if (!PERF_STATE.loadTimeMeasured) {
+          recordPerformanceEntry("phase:Load", {
+            durationMs: this.initMark,
+            telemetry: true
+          });
+          PERF_STATE.loadTimeMeasured = true;
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        if (props.policyValidationBeta1) {
+          this._addValidationPlugins(...props.policyValidationBeta1);
+        }
+        APP_TYPE.mark(this);
+        this.loadContext(props.context, props.postCliContext);
+        if (props.stackTraces === false) {
+          this.node.setContext(DISABLE_METADATA_STACK_TRACE, true);
+        }
+        if (props.defaultStackSynthesizer) {
+          this.node.setContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER, props.defaultStackSynthesizer);
+        }
+        const analyticsReporting = props.analyticsReporting ?? props.runtimeInfo;
+        if (analyticsReporting !== void 0) {
+          this.node.setContext(ANALYTICS_REPORTING_ENABLED_CONTEXT, analyticsReporting);
+        }
+        const autoSynth = props.autoSynth ?? OUTDIR_ENV in process.env;
+        if (autoSynth) {
+          process.once("beforeExit", () => this.synth({ errorOnDuplicateSynth: false }));
+        }
+        this._treeMetadata = props.treeMetadata ?? true;
+        this.performanceReporting = props.performanceReporting ?? this.node.tryGetContext(PERFORMANCE_REPORTING_ENABLED_CONTEXT) ?? true;
+        if (globalThis[APP_INIT_HOOK_SYMBOL]) {
+          globalThis[APP_INIT_HOOK_SYMBOL](this);
+        }
+      }
+      loadContext(defaults = {}, final = {}) {
+        for (const [k, v] of Object.entries(defaults)) {
+          this.node.setContext(k, v);
+        }
+        const context = {
+          ...this.readContextFromEnvironment(),
+          ...this.readContextFromTempFile()
+        };
+        for (const [k, v] of Object.entries(context)) {
+          this.node.setContext(k, v);
+        }
+        for (const [k, v] of Object.entries(final)) {
+          this.node.setContext(k, v);
+        }
+      }
+      /**
+       * Synthesize this App into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        if (this.alreadySynthed) {
+          return super.synth(options);
+        }
+        this.alreadySynthed = true;
+        const startSynthMark = import_perf_hooks2.performance.now();
+        recordPerformanceEntry("phase:Construction", {
+          durationMs: startSynthMark - this.initMark,
+          telemetry: true
+        });
+        const ret = super.synth(options);
+        recordPerformanceEntry("phase:Synthesis", {
+          durationMs: import_perf_hooks2.performance.now() - startSynthMark,
+          telemetry: true
+        });
+        const totalAppTimeMs = import_perf_hooks2.performance.now() - this.initMark;
+        const stackCount = ret.stacksRecursively.length;
+        recordPerformanceEntry("count:Constructs", {
+          count: countConstructs(this),
+          durationMs: 0,
+          telemetry: true
+        });
+        if (this.shouldReportSlowSynth(totalAppTimeMs / stackCount)) {
+          emitPerformanceCountersFile();
+        }
+        resetCounters();
+        return ret;
+      }
+      readContextFromTempFile() {
+        const location = process.env[CONTEXT_OVERFLOW_LOCATION_ENV];
+        return location ? fs13.readJSONSync(location) : {};
+      }
+      readContextFromEnvironment() {
+        const contextJson = process.env[CONTEXT_ENV];
+        return contextJson ? JSON.parse(contextJson) : {};
+      }
+      shouldReportSlowSynth(perStackTime) {
+        if (!this.performanceReporting) {
+          return false;
+        }
+        const threshold = parseAsNumber(this.node.tryGetContext(SLOW_SYNTH_THRESHOLD_CTX)) ?? DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS;
+        return perStackTime >= threshold;
+      }
+    };
+    PERF_STATE = global[/* @__PURE__ */ Symbol.for("@aws-cdk/core.AppPerfState")] ??= {
+      loadTimeMeasured: false
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/context-provider.ts
+function extractProviderError(value) {
+  if (typeof value === "object" && value !== null) {
+    return value[import_cloud_assembly_api.PROVIDER_ERROR_KEY];
+  }
+  return void 0;
+}
+function colonQuote(xs) {
+  return xs.replace(/\$/g, "$$").replace(/:/g, "$:");
+}
+function propsToArray(props, keyPrefix = "") {
+  const ret = [];
+  for (const key of Object.keys(props)) {
+    if (props[key] === void 0) {
+      continue;
+    }
+    switch (typeof props[key]) {
+      case "object": {
+        ret.push(...propsToArray(props[key], `${keyPrefix}${key}.`));
+        break;
+      }
+      case "string": {
+        ret.push(`${keyPrefix}${key}=${colonQuote(props[key])}`);
+        break;
+      }
+      default: {
+        ret.push(`${keyPrefix}${key}=${JSON.stringify(props[key])}`);
+        break;
+      }
+    }
+  }
+  ret.sort();
+  return ret;
+}
+var import_constructs18, ContextProvider;
+var init_context_provider = __esm({
+  "../../aws-cdk-lib/core/lib/context-provider.ts"() {
+    "use strict";
+    import_constructs18 = __toESM(require_lib4());
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_cx_api();
+    ContextProvider = class {
+      /**
+       * @returns the context key or undefined if a key cannot be rendered (due to tokens used in any of the props)
+       */
+      static getKey(scope, options) {
+        const stack = stackOf(scope);
+        const props = {
+          ...options.includeEnvironment ?? true ? { account: stack.account, region: stack.region } : {},
+          ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+          ...options.props
+        };
+        if (Object.values(props).find((x) => Token.isUnresolved(x))) {
+          throw new ValidationError(
+            lit`ContextProviderPropsContainTokens`,
+            `Cannot determine scope for context provider ${options.provider}.
+This usually happens when one or more of the provider props have unresolved tokens`,
+            scope
+          );
+        }
+        const propStrings = propsToArray(props);
+        return {
+          key: `${options.provider}:${propStrings.join(":")}`,
+          props
+        };
+      }
+      static getValue(scope, options) {
+        if (options.mustExist !== void 0 && options.ignoreErrorOnMissingContext !== void 0) {
+          throw new ValidationError(lit`ConflictingMustExistOptions`, "Only supply one of 'mustExist' and 'ignoreErrorOnMissingContext'", scope);
+        }
+        const stack = stackOf(scope);
+        if (Token.isUnresolved(stack.account) || Token.isUnresolved(stack.region)) {
+          throw new ValidationError(lit`StackAccountRegionNotSpecified`, `Cannot retrieve value from context provider ${options.provider} since account/region are not specified at the stack level. Configure "env" with an account and region when you define your stack.See https://docs.aws.amazon.com/cdk/latest/guide/environments.html for more details.`, scope);
+        }
+        const { key, props } = this.getKey(scope, options);
+        const value = import_constructs18.Node.of(scope).tryGetContext(key);
+        const providerError = extractProviderError(value);
+        if (value === void 0 || providerError !== void 0) {
+          const ignoreErrorOnMissingContext = options.mustExist !== void 0 || options.ignoreErrorOnMissingContext !== void 0 ? options.mustExist !== void 0 ? !options.mustExist : options.ignoreErrorOnMissingContext : void 0;
+          const extendedProps = {
+            dummyValue: options.dummyValue,
+            // Even though we renamed the user-facing property, the field in the
+            // cloud assembly still has the original name, which is somewhat wrong
+            // because it's not about missing context.
+            ignoreErrorOnMissingContext,
+            ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+            ...props
+          };
+          stack.reportMissingContextKey({
+            key,
+            provider: options.provider,
+            props: extendedProps
+          });
+          if (providerError !== void 0) {
+            Annotations.of(scope)._addTrackableError(lit`ContextProviderError`, providerError);
+          }
+          return { value: options.dummyValue };
+        }
+        return { value };
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/permissions-boundary.ts
+var PERMISSIONS_BOUNDARY_CONTEXT_KEY;
+var init_permissions_boundary = __esm({
+  "../../aws-cdk-lib/core/lib/permissions-boundary.ts"() {
+    "use strict";
+    PERMISSIONS_BOUNDARY_CONTEXT_KEY = "@aws-cdk/core:permissionsBoundary";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/logical-id.ts
+function validateLogicalId(logicalId) {
+  if (!VALID_LOGICALID_REGEX.test(logicalId)) {
+    throw new UnscopedValidationError(lit`LogicalAdhereRegularExpression`, `Logical ID must adhere to the regular expression: ${VALID_LOGICALID_REGEX.toString()}, got '${logicalId}'`);
+  }
+}
+var LogicalIDs, VALID_LOGICALID_REGEX;
+var init_logical_id = __esm({
+  "../../aws-cdk-lib/core/lib/private/logical-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    LogicalIDs = class {
+      /**
+       * The rename table (old to new)
+       */
+      renames = {};
+      /**
+       * All assigned names (new to old, may be identical)
+       *
+       * This is used to ensure that:
+       *
+       * - No 2 resources end up with the same final logical ID, unless they were the same to begin with.
+       * - All renames have been used at the end of renaming.
+       */
+      reverse = {};
+      /**
+       * Rename a logical ID from an old ID to a new ID
+       */
+      addRename(oldId, newId) {
+        if (oldId in this.renames) {
+          throw new UnscopedValidationError(lit`RenameAlreadyRegistered`, `A rename has already been registered for '${oldId}'`);
+        }
+        this.renames[oldId] = newId;
+      }
+      /**
+       * Return the renamed version of an ID or the original ID.
+       */
+      applyRename(oldId) {
+        let newId = oldId;
+        if (oldId in this.renames) {
+          newId = this.renames[oldId];
+        }
+        if (newId in this.reverse && this.reverse[newId] !== oldId) {
+          throw new UnscopedValidationError(lit`ObjectsAssignedSameLogical`, `Two objects have been assigned the same Logical ID: '${this.reverse[newId]}' and '${oldId}' are now both named '${newId}'.`);
+        }
+        this.reverse[newId] = oldId;
+        validateLogicalId(newId);
+        return newId;
+      }
+      /**
+       * Throw an error if not all renames have been used
+       *
+       * This is to assure that users didn't make typos when registering renames.
+       */
+      assertAllRenamesApplied() {
+        const keys = /* @__PURE__ */ new Set();
+        Object.keys(this.renames).forEach(keys.add.bind(keys));
+        Object.keys(this.reverse).map((newId) => {
+          keys.delete(this.reverse[newId]);
+        });
+        if (keys.size !== 0) {
+          const unusedRenames = Array.from(keys.values());
+          throw new UnscopedValidationError(lit`FollowingLogicalWereAttempted`, `The following Logical IDs were attempted to be renamed, but not found: ${unusedRenames.join(", ")}`);
+        }
+      }
+    };
+    VALID_LOGICALID_REGEX = /^[A-Za-z0-9]{1,255}$/;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts
+function isReusableStackSynthesizer(x) {
+  return !!x.reusableBind;
+}
+var init_types3 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts
+function addStackArtifactToAssembly(session, stack, stackProps, additionalStackDependencies) {
+  const stackTags = stack.tags.tagValues();
+  if (Object.entries(stackTags).length > 0) {
+    const resolvedTags = Object.entries(stackTags).filter(([k, v]) => !(Token.isUnresolved(k) || Token.isUnresolved(v)));
+    const unresolvedTags = Object.entries(stackTags).filter(([k, v]) => Token.isUnresolved(k) || Token.isUnresolved(v));
+    if (unresolvedTags.length > 0) {
+      const rendered = unresolvedTags.map(([k, v]) => `${Token.isUnresolved(k) ? "" : k}=${Token.isUnresolved(v) ? "" : v}`).join(", ");
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+        `Ignoring stack tags that contain deploy-time values (found: ${rendered}). Apply tags containing deploy-time values to resources only, avoid tagging stacks (for example using { excludeResourceTypes: ['aws:cdk:stack'] }).`
+      );
+    }
+    if (resolvedTags.length > 0) {
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.STACK_TAGS,
+        resolvedTags.map(([key, value]) => ({ key, value }))
+      );
+    }
+  }
+  const deps = [
+    ...stack.dependencies.map((s) => s.artifactId),
+    ...additionalStackDependencies
+  ];
+  const meta = collectStackMetadata(stack);
+  const stackNameProperty = stack.stackName === stack.artifactId ? {} : { stackName: stack.stackName };
+  const properties = {
+    templateFile: stack.templateFile,
+    terminationProtection: stack.terminationProtection,
+    tags: nonEmptyDict(stackTags),
+    validateOnSynth: session.validateOnSynth,
+    notificationArns: stack._notificationArns,
+    ...stackProps,
+    ...stackNameProperty
+  };
+  const metaFile = `${stack.artifactId}.metadata.json`;
+  const hasMeta = Object.keys(meta).length > 0;
+  if (hasMeta) {
+    fs14.writeFileSync(path18.join(session.assembly.outdir, metaFile), JSON.stringify(meta, void 0, 2), "utf-8");
+  }
+  session.assembly.addArtifact(stack.artifactId, {
+    type: cloud_assembly_schema_exports.ArtifactType.AWS_CLOUDFORMATION_STACK,
+    environment: stack.environment,
+    properties,
+    dependencies: deps.length > 0 ? deps : void 0,
+    additionalMetadataFile: hasMeta ? metaFile : void 0,
+    displayName: stack.node.path
+  });
+}
+function collectStackMetadata(stack) {
+  const output = {};
+  const queue = [stack];
+  let next;
+  while (next = queue.shift()) {
+    if (STACK_TYPE.isMarked(next) && next._isTopLevelStack && next !== stack) {
+      continue;
+    }
+    handleNode(next);
+    queue.push(...next.node.children);
+  }
+  return output;
+  function handleNode(node) {
+    if (node.node.metadata.length > 0) {
+      output[import_constructs19.Node.PATH_SEP + node.node.path] = node.node.metadata.map((md) => {
+        if ([
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO
+        ].includes(md.type)) {
+          return md;
+        }
+        const resolved = stack.resolve(md);
+        return resolved;
+      });
+    }
+  }
+}
+function contentHash(content) {
+  return crypto8.createHash("sha256").update(content).digest("hex");
+}
+function assertBound(x) {
+  if (x === null && x === void 0) {
+    throw new UnscopedValidationError(lit`CallBindstackFirst`, "You must call bindStack() first");
+  }
+}
+function nonEmptyDict(xs) {
+  return Object.keys(xs).length > 0 ? xs : void 0;
+}
+var crypto8, fs14, path18, import_constructs19;
+var init_shared2 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts"() {
+    "use strict";
+    crypto8 = __toESM(require("crypto"));
+    fs14 = __toESM(require("fs"));
+    path18 = __toESM(require("path"));
+    import_constructs19 = __toESM(require_lib4());
+    init_cloud_assembly_schema();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts
+function validateFileAssetSource(asset) {
+  if (!!asset.executable === !!asset.fileName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyFilenameExecutable`, `Exactly one of 'fileName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (!!asset.packaging !== !!asset.fileName) {
+    throw new UnscopedValidationError(lit`PackagingExpectedCombinationFilename`, `'packaging' is expected in combination with 'fileName', got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+}
+function validateDockerImageAssetSource(asset) {
+  if (!!asset.executable === !!asset.directoryName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyDirectorynameExecutable`, `Exactly one of 'directoryName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+  check("dockerBuildArgs");
+  check("dockerBuildContexts");
+  check("dockerBuildTarget");
+  check("dockerOutputs");
+  check("dockerFile");
+  function check(key) {
+    if (asset[key] && !asset.directoryName) {
+      throw new UnscopedValidationError(lit`OnlyAllowedCombinationDirectoryname`, `'${key}' is only allowed in combination with 'directoryName', got: ${JSON.stringify(asset)}`);
+    }
+  }
+}
+var fs15, path19, AssetManifestBuilder;
+var init_asset_manifest_builder = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts"() {
+    "use strict";
+    fs15 = __toESM(require("fs"));
+    path19 = __toESM(require("path"));
+    init_cloud_assembly_schema();
+    init_assets();
+    init_errors();
+    init_string_specializer();
+    init_token();
+    init_shared2();
+    init_literal_string();
+    AssetManifestBuilder = class {
+      files = {};
+      dockerImages = {};
+      /**
+       * Add a file asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, copy the
+       * file extension over, and set the prefix.
+       */
+      defaultAddFileAsset(stack, asset, target, options) {
+        validateFileAssetSource(asset);
+        const extension = asset.fileName != void 0 ? path19.extname(asset.fileName) : "";
+        const objectKey = (target.bucketPrefix ?? "") + asset.sourceHash + (asset.packaging === "zip" /* ZIP_DIRECTORY */ ? ".zip" : extension);
+        return this.addFileAsset(stack, asset.sourceHash, {
+          path: asset.fileName,
+          executable: asset.executable,
+          packaging: asset.packaging
+        }, {
+          bucketName: target.bucketName,
+          objectKey,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a docker image asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, and set the prefix.
+       */
+      defaultAddDockerImageAsset(stack, asset, target, options) {
+        validateDockerImageAssetSource(asset);
+        const imageTag = `${target.dockerTagPrefix ?? ""}${asset.sourceHash}`;
+        const sourceHash = asset.assetName ? `${asset.assetName}-${asset.sourceHash}` : asset.sourceHash;
+        return this.addDockerImageAsset(stack, sourceHash, {
+          executable: asset.executable,
+          directory: asset.directoryName,
+          dockerBuildArgs: asset.dockerBuildArgs,
+          dockerBuildContexts: asset.dockerBuildContexts,
+          dockerBuildSecrets: asset.dockerBuildSecrets,
+          dockerBuildSsh: asset.dockerBuildSsh,
+          dockerBuildTarget: asset.dockerBuildTarget,
+          dockerFile: asset.dockerFile,
+          networkMode: asset.networkMode,
+          platform: asset.platform,
+          dockerOutputs: asset.dockerOutputs,
+          cacheFrom: asset.dockerCacheFrom,
+          cacheTo: asset.dockerCacheTo,
+          cacheDisabled: asset.dockerCacheDisabled
+        }, {
+          repositoryName: target.repositoryName,
+          imageTag,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a file asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addFileAsset(stack, sourceHash, source, dest, options) {
+        if (!this.files[sourceHash]) {
+          this.files[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.files[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Add a docker asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addDockerImageAsset(stack, sourceHash, source, dest, options) {
+        if (!this.dockerImages[sourceHash]) {
+          this.dockerImages[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.dockerImages[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Whether there are any assets registered in the manifest
+       */
+      get hasAssets() {
+        return Object.keys(this.files).length + Object.keys(this.dockerImages).length > 0;
+      }
+      /**
+       * Write the manifest to disk, and add it to the synthesis session
+       *
+       * Return the artifact id, which should be added to the `additionalDependencies`
+       * field of the stack artifact.
+       */
+      emitManifest(stack, session, options = {}, dependencies = []) {
+        const artifactId = `${stack.artifactId}.assets`;
+        const manifestFile = `${artifactId}.json`;
+        const outPath = path19.join(session.assembly.outdir, manifestFile);
+        const manifest = {
+          version: cloud_assembly_schema_exports.Manifest.version(),
+          files: this.files,
+          dockerImages: this.dockerImages
+        };
+        fs15.writeFileSync(outPath, JSON.stringify(manifest, void 0, 2));
+        session.assembly.addArtifact(artifactId, {
+          type: cloud_assembly_schema_exports.ArtifactType.ASSET_MANIFEST,
+          properties: {
+            file: manifestFile,
+            ...options
+          },
+          dependencies: dependencies.length > 0 ? dependencies : void 0
+        });
+        return artifactId;
+      }
+      manifestEnvName(stack) {
+        return [
+          resolvedOr(stack.account, "current_account"),
+          resolvedOr(stack.region, "current_region")
+        ].join("-");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-rule.ts
+var CfnRule;
+var init_cfn_rule = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-rule.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+    CfnRule = class extends CfnRefElement {
+      ruleCondition;
+      assertions;
+      /**
+       * Creates and adds a rule.
+       * @param scope The parent construct.
+       * @param props The rule props.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.ruleCondition = props && props.ruleCondition;
+        this.assertions = props && props.assertions;
+      }
+      /**
+       * Adds an assertion to the rule.
+       * @param condition The expression to evaluation.
+       * @param description The description of the assertion.
+       */
+      addAssertion(condition, description) {
+        if (!this.assertions) {
+          this.assertions = [];
+        }
+        this.assertions.push({
+          assert: condition,
+          assertDescription: description
+        });
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Rules: {
+            [this.logicalId]: {
+              RuleCondition: this.ruleCondition,
+              Assertions: capitalizePropertyNames(this, this.assertions)
+            }
+          }
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts
+function stackTemplateFileAsset(stack, session) {
+  const templatePath = path20.join(session.assembly.outdir, stack.templateFile);
+  if (!fs16.existsSync(templatePath)) {
+    throw new ValidationError(lit`StackTemplate`, `Stack template ${stack.stackName} not written yet: ${templatePath}`, stack);
+  }
+  const template = fs16.readFileSync(templatePath, { encoding: "utf-8" });
+  const sourceHash = contentHash(template);
+  return {
+    fileName: stack.templateFile,
+    packaging: "file" /* FILE */,
+    sourceHash,
+    deployTime: true,
+    displayName: `${stack.stackName} Template`
+  };
+}
+function addBootstrapVersionRule(stack, requiredVersion, bootstrapStackVersionSsmParameter) {
+  if (stack.node.tryFindChild("BootstrapVersion")) {
+    return;
+  }
+  const param = new CfnParameter(stack, "BootstrapVersion", {
+    type: "AWS::SSM::Parameter::Value",
+    description: `Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. ${import_cloud_assembly_api.SSMPARAM_NO_INVALIDATE}`,
+    default: bootstrapStackVersionSsmParameter
+  });
+  const oldVersions = range3(1, requiredVersion).map((n) => `${n}`);
+  new CfnRule(stack, "CheckBootstrapVersion", {
+    assertions: [
+      {
+        assert: Fn.conditionNot(Fn.conditionContains(oldVersions, param.valueAsString)),
+        assertDescription: `CDK bootstrap stack version ${requiredVersion} required. Please run 'cdk bootstrap' with a recent version of the CDK CLI.`
+      }
+    ]
+  });
+}
+function range3(startIncl, endExcl) {
+  const ret = new Array();
+  for (let i = startIncl; i < endExcl; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+function stackLocationOrInstrinsics(stack) {
+  return {
+    account: resolvedOr(stack.account, "${AWS::AccountId}"),
+    region: resolvedOr(stack.region, "${AWS::Region}"),
+    urlSuffix: resolvedOr(stack.urlSuffix, "${AWS::URLSuffix}")
+  };
+}
+function cfnify(s) {
+  return s.indexOf("${") > -1 ? Fn.sub(s) : s;
+}
+var fs16, path20, StackSynthesizer;
+var init_stack_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts"() {
+    "use strict";
+    fs16 = __toESM(require("fs"));
+    path20 = __toESM(require("path"));
+    init_shared2();
+    init_cx_api();
+    init_assets();
+    init_cfn_fn();
+    init_cfn_parameter();
+    init_cfn_rule();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    StackSynthesizer = class {
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return void 0;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return void 0;
+      }
+      get cloudFormationExecutionRole() {
+        return void 0;
+      }
+      _boundStack;
+      /**
+       * Bind to the stack this environment is going to be used on
+       *
+       * Must be called before any of the other methods are called.
+       */
+      bind(stack) {
+        if (this._boundStack !== void 0) {
+          throw new ValidationError(lit`StackSynthesizerOneStackCreate`, "A StackSynthesizer can only be used for one Stack: create a new instance to use with a different Stack", stack);
+        }
+        this._boundStack = stack;
+      }
+      /**
+       * Have the stack write out its template
+       *
+       * @deprecated Use `synthesizeTemplate` instead
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session);
+      }
+      /**
+       * Write the stack template to the given session
+       *
+       * Return a descriptor that represents the stack template as a file asset
+       * source, for adding to an asset manifest (if desired). This can be used to
+       * have the asset manifest system (`cdk-assets`) upload the template to S3
+       * using the appropriate role, so that afterwards only a CloudFormation
+       * deployment is necessary.
+       *
+       * If the template is uploaded as an asset, the `stackTemplateAssetObjectUrl`
+       * property should be set when calling `emitArtifact.`
+       *
+       * If the template is *NOT* uploaded as an asset first and the template turns
+       * out to be >50KB, it will need to be uploaded to S3 anyway. At that point
+       * the credentials will be the same identity that is doing the `UpdateStack`
+       * call, which may not have the right permissions to write to S3.
+       */
+      synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        this.boundStack._synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions);
+        return stackTemplateFileAsset(this.boundStack, session);
+      }
+      /**
+       * Write the stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session.
+       *
+       * @deprecated Use `emitArtifact` instead
+       */
+      emitStackArtifact(stack, session, options = {}) {
+        addStackArtifactToAssembly(session, stack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Write the CloudFormation stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session. The Stack artifact will control the settings for the
+       * CloudFormation deployment.
+       */
+      emitArtifact(session, options = {}) {
+        addStackArtifactToAssembly(session, this.boundStack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Add a CfnRule to the bound stack that checks whether an SSM parameter exceeds a given version
+       *
+       * This will modify the template, so must be called before the stack is synthesized.
+       */
+      addBootstrapVersionRule(requiredVersion, bootstrapStackVersionSsmParameter) {
+        addBootstrapVersionRule(this.boundStack, requiredVersion, bootstrapStackVersionSsmParameter);
+      }
+      /**
+       * Retrieve the bound stack
+       *
+       * Fails if the stack hasn't been bound yet.
+       */
+      get boundStack() {
+        if (!this._boundStack) {
+          throw new UnscopedValidationError(lit`StackSynthesizerBoundStackFirst`, "The StackSynthesizer must be bound to a Stack first before boundStack() can be called");
+        }
+        return this._boundStack;
+      }
+      /**
+       * Turn a file asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromFileAsset(location) {
+        const { region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        const httpUrl = cfnify(
+          `https://s3.${region}.${urlSuffix2}/${location.bucketName}/${location.objectKey}`
+        );
+        const s3ObjectUrlWithPlaceholders = `s3://${location.bucketName}/${location.objectKey}`;
+        return {
+          bucketName: cfnify(location.bucketName),
+          objectKey: cfnify(location.objectKey),
+          httpUrl,
+          s3ObjectUrl: cfnify(s3ObjectUrlWithPlaceholders),
+          s3ObjectUrlWithPlaceholders,
+          s3Url: httpUrl
+        };
+      }
+      /**
+       * Turn a docker asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromDockerImageAsset(dest) {
+        const { account, region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        return {
+          repositoryName: cfnify(dest.repositoryName),
+          imageUri: cfnify(
+            `${account}.dkr.ecr.${region}.${urlSuffix2}/${dest.repositoryName}:${dest.imageTag}`
+          ),
+          imageTag: cfnify(dest.imageTag)
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts
+var BOOTSTRAP_QUALIFIER_CONTEXT, MIN_BOOTSTRAP_STACK_VERSION, MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION, MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION, DefaultStackSynthesizer;
+var init_default_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+    BOOTSTRAP_QUALIFIER_CONTEXT = "@aws-cdk/core:bootstrapQualifier";
+    MIN_BOOTSTRAP_STACK_VERSION = 6;
+    MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION = 8;
+    MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION = 22;
+    DefaultStackSynthesizer = class _DefaultStackSynthesizer extends StackSynthesizer {
+      constructor(props = {}) {
+        super();
+        this.props = props;
+        this.useLookupRoleForStackOperations = props.useLookupRoleForStackOperations ?? true;
+        for (const key in props) {
+          if (props.hasOwnProperty(key)) {
+            validateNoToken(key);
+          }
+        }
+        function validateNoToken(key) {
+          const prop = props[key];
+          if (typeof prop === "string" && Token.isUnresolved(prop)) {
+            throw new UnscopedValidationError(lit`DefaultSynthesizerTokenInProperty`, `DefaultStackSynthesizer property '${key}' cannot contain tokens; only the following placeholder strings are allowed: ` + [
+              "${Qualifier}",
+              (void 0).CURRENT_REGION,
+              (void 0).CURRENT_ACCOUNT,
+              (void 0).CURRENT_PARTITION
+            ].join(", "));
+          }
+        }
+      }
+      props;
+      /**
+       * Default ARN qualifier
+       */
+      static DEFAULT_QUALIFIER = "hnb659fds";
+      /**
+       * Default CloudFormation role ARN.
+       */
+      static DEFAULT_CLOUDFORMATION_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-cfn-exec-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default deploy role ARN.
+       */
+      static DEFAULT_DEPLOY_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-deploy-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for file (S3) assets.
+       */
+      static DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-file-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for image (ECR) assets.
+       */
+      static DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-image-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default lookup role ARN for missing values.
+       */
+      static DEFAULT_LOOKUP_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-lookup-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default image assets repository name
+       */
+      static DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME = "cdk-${Qualifier}-container-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default file assets bucket name
+       */
+      static DEFAULT_FILE_ASSETS_BUCKET_NAME = "cdk-${Qualifier}-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Name of the CloudFormation Export with the asset key name
+       */
+      static DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME = "CdkBootstrap-${Qualifier}-FileAssetKeyArn";
+      /**
+       * Default file asset prefix
+       */
+      static DEFAULT_FILE_ASSET_PREFIX = "";
+      /**
+       * Default Docker asset prefix
+       */
+      static DEFAULT_DOCKER_ASSET_PREFIX = "";
+      /**
+       * Default bootstrap stack version SSM parameter.
+       */
+      static DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER = "/cdk-bootstrap/${Qualifier}/version";
+      bucketName;
+      repositoryName;
+      _deployRoleArn;
+      _cloudFormationExecutionRoleArn;
+      fileAssetPublishingRoleArn;
+      imageAssetPublishingRoleArn;
+      lookupRoleArn;
+      useLookupRoleForStackOperations;
+      qualifier;
+      bucketPrefix;
+      dockerTagPrefix;
+      bootstrapStackVersionSsmParameter;
+      assetManifest = new AssetManifestBuilder();
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return this.qualifier;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return this.lookupRoleArn;
+      }
+      get cloudFormationExecutionRole() {
+        return this._cloudFormationExecutionRoleArn;
+      }
+      bind(stack) {
+        super.bind(stack);
+        const qualifier = this.props.qualifier ?? stack.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? _DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        this.qualifier = qualifier;
+        const spec = new StringSpecializer(stack, qualifier);
+        this.bucketName = spec.specialize(this.props.fileAssetsBucketName ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSETS_BUCKET_NAME);
+        this.repositoryName = spec.specialize(this.props.imageAssetsRepositoryName ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME);
+        this._deployRoleArn = spec.specialize(this.props.deployRoleArn ?? _DefaultStackSynthesizer.DEFAULT_DEPLOY_ROLE_ARN);
+        this._cloudFormationExecutionRoleArn = spec.specialize(this.props.cloudFormationExecutionRole ?? _DefaultStackSynthesizer.DEFAULT_CLOUDFORMATION_ROLE_ARN);
+        this.fileAssetPublishingRoleArn = spec.specialize(this.props.fileAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN);
+        this.imageAssetPublishingRoleArn = spec.specialize(this.props.imageAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN);
+        this.lookupRoleArn = spec.specialize(this.props.lookupRoleArn ?? _DefaultStackSynthesizer.DEFAULT_LOOKUP_ROLE_ARN);
+        this.bucketPrefix = spec.specialize(this.props.bucketPrefix ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PREFIX);
+        this.dockerTagPrefix = spec.specialize(this.props.dockerTagPrefix ?? _DefaultStackSynthesizer.DEFAULT_DOCKER_ASSET_PREFIX);
+        this.bootstrapStackVersionSsmParameter = spec.qualifierOnly(this.props.bootstrapStackVersionSsmParameter ?? _DefaultStackSynthesizer.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER);
+      }
+      addFileAsset(asset) {
+        assertBound(this.bucketName);
+        const location = this.assetManifest.defaultAddFileAsset(this.boundStack, asset, {
+          bucketName: this.bucketName,
+          bucketPrefix: this.bucketPrefix,
+          role: this.fileAssetPublishingRoleArn ? {
+            assumeRoleArn: this.fileAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.fileAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.fileAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromFileAsset(location);
+      }
+      addDockerImageAsset(asset) {
+        assertBound(this.repositoryName);
+        const location = this.assetManifest.defaultAddDockerImageAsset(this.boundStack, asset, {
+          repositoryName: this.repositoryName,
+          dockerTagPrefix: this.dockerTagPrefix,
+          role: this.imageAssetPublishingRoleArn ? {
+            assumeRoleArn: this.imageAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.imageAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.imageAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromDockerImageAsset(location);
+      }
+      /**
+       * Synthesize the stack template to the given session, passing the configured lookup role ARN
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session, this.lookupRoleArn, this.props.lookupRoleExternalId, this.props.lookupRoleAdditionalOptions);
+      }
+      /**
+       * Return the currently bound stack
+       *
+       * @deprecated Use `boundStack` instead.
+       */
+      get stack() {
+        return this.boundStack;
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        assertBound(this.qualifier);
+        if (this.props.generateBootstrapVersionRule ?? true) {
+          this.addBootstrapVersionRule(this._requiredBootstrapVersionForDeployment, this.bootstrapStackVersionSsmParameter);
+        }
+        const templateAssetSource = this.synthesizeTemplate(
+          session,
+          this.lookupRoleArn,
+          this.props.lookupRoleExternalId,
+          this.props.lookupRoleAdditionalOptions
+        );
+        const templateAsset = this.addFileAsset(templateAssetSource);
+        const assetManifestId = this.assetManifest.emitManifest(this.boundStack, session, {
+          requiresBootstrapStackVersion: this._requiredBoostrapVersionForAssets,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+        });
+        this.emitArtifact(session, {
+          assumeRoleExternalId: this.props.deployRoleExternalId,
+          assumeRoleArn: this._deployRoleArn,
+          assumeRoleAdditionalOptions: this.props.deployRoleAdditionalOptions,
+          cloudFormationExecutionRoleArn: this._cloudFormationExecutionRoleArn,
+          stackTemplateAssetObjectUrl: templateAsset.s3ObjectUrlWithPlaceholders,
+          requiresBootstrapStackVersion: this._requiredBootstrapVersionForDeployment,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter,
+          additionalDependencies: [assetManifestId],
+          lookupRole: this.useLookupRoleForStackOperations && this.lookupRoleArn ? {
+            arn: this.lookupRoleArn,
+            assumeRoleExternalId: this.props.lookupRoleExternalId,
+            assumeRoleAdditionalOptions: this.props.lookupRoleAdditionalOptions,
+            requiresBootstrapStackVersion: this._requiredBootstrapVersionForLookup,
+            bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+          } : void 0
+        });
+      }
+      get _requiredBoostrapVersionForAssets() {
+        if (this.props.fileAssetPublishingRoleAdditionalOptions?.Tags || this.props.imageAssetPublishingRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForDeployment() {
+        if (this.props.deployRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForLookup() {
+        if (this.props.lookupRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION;
+      }
+      /**
+       * Returns the ARN of the deploy Role.
+       */
+      get deployRoleArn() {
+        if (!this._deployRoleArn) {
+          throw new UnscopedValidationError(lit`DeployRoleArnGetterOnlyCalled`, "deployRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._deployRoleArn;
+      }
+      /**
+       * Returns the ARN of the CFN execution Role.
+       */
+      get cloudFormationExecutionRoleArn() {
+        if (!this._cloudFormationExecutionRoleArn) {
+          throw new UnscopedValidationError(lit`CloudFormationExecutionRoleArnGetterOnlyCalled`, "cloudFormationExecutionRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._cloudFormationExecutionRoleArn;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-parameters.ts
+var import_constructs20, FileAssetParameters;
+var init_asset_parameters = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-parameters.ts"() {
+    "use strict";
+    import_constructs20 = __toESM(require_lib4());
+    init_cfn_parameter();
+    FileAssetParameters = class extends import_constructs20.Construct {
+      bucketNameParameter;
+      objectKeyParameter;
+      artifactHashParameter;
+      constructor(scope, id) {
+        super(scope, id);
+        this.bucketNameParameter = new CfnParameter(this, "S3Bucket", {
+          type: "String",
+          description: `S3 bucket for asset "${id}"`
+        });
+        this.objectKeyParameter = new CfnParameter(this, "S3VersionKey", {
+          type: "String",
+          description: `S3 key for asset version "${id}"`
+        });
+        this.artifactHashParameter = new CfnParameter(this, "ArtifactHash", {
+          description: `Artifact hash for asset "${id}"`,
+          type: "String"
+        });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts
+function withoutDeprecationWarnings(block) {
+  const orig = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  try {
+    return block();
+  } finally {
+    process.env.JSII_DEPRECATED = orig;
+  }
+}
+var import_constructs21, ASSETS_ECR_REPOSITORY_NAME, ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY, LegacyStackSynthesizer;
+var init_legacy = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts"() {
+    "use strict";
+    import_constructs21 = __toESM(require_lib4());
+    init_shared2();
+    init_stack_synthesizer();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_fn();
+    init_errors();
+    init_asset_parameters();
+    init_literal_string();
+    ASSETS_ECR_REPOSITORY_NAME = "aws-cdk/assets";
+    ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY = "assets-ecr-repository-name";
+    LegacyStackSynthesizer = class extends StackSynthesizer {
+      cycle = false;
+      /**
+       * Includes all parameters synthesized for assets (lazy).
+       */
+      _assetParameters;
+      /**
+       * The image ID of all the docker image assets that were already added to this
+       * stack (to avoid duplication).
+       */
+      addedImageAssets = /* @__PURE__ */ new Set();
+      addFileAsset(asset) {
+        if (this.cycle) {
+          return this.doAddFileAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addFileAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      addDockerImageAsset(asset) {
+        if (this.cycle) {
+          return this.doAddDockerImageAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addDockerImageAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        this.synthesizeTemplate(session);
+        this.emitArtifact(session);
+      }
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      doAddDockerImageAsset(asset) {
+        const repositoryNameOverride = this.boundStack.node.tryGetContext(ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY);
+        const repositoryName = asset.repositoryName ?? repositoryNameOverride ?? ASSETS_ECR_REPOSITORY_NAME;
+        const imageTag = asset.sourceHash;
+        const assetId = asset.sourceHash;
+        if (!this.addedImageAssets.has(assetId)) {
+          if (!asset.directoryName) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            repositoryName,
+            imageTag,
+            id: assetId,
+            packaging: "container-image",
+            path: asset.directoryName,
+            sourceHash: asset.sourceHash,
+            buildArgs: asset.dockerBuildArgs,
+            buildContexts: asset.dockerBuildContexts,
+            buildSecrets: asset.dockerBuildSecrets,
+            buildSsh: asset.dockerBuildSsh,
+            target: asset.dockerBuildTarget,
+            file: asset.dockerFile,
+            networkMode: asset.networkMode,
+            platform: asset.platform,
+            outputs: asset.dockerOutputs,
+            cacheFrom: asset.dockerCacheFrom,
+            cacheTo: asset.dockerCacheTo,
+            cacheDisabled: asset.dockerCacheDisabled
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+          this.addedImageAssets.add(assetId);
+        }
+        return {
+          imageUri: `${this.boundStack.account}.dkr.ecr.${this.boundStack.region}.${this.boundStack.urlSuffix}/${repositoryName}:${imageTag}`,
+          repositoryName
+        };
+      }
+      doAddFileAsset(asset) {
+        let params = this.assetParameters.node.tryFindChild(asset.sourceHash);
+        if (!params) {
+          params = new FileAssetParameters(this.assetParameters, asset.sourceHash);
+          if (!asset.fileName || !asset.packaging) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            path: asset.fileName,
+            id: asset.sourceHash,
+            packaging: asset.packaging,
+            sourceHash: asset.sourceHash,
+            s3BucketParameter: params.bucketNameParameter.logicalId,
+            s3KeyParameter: params.objectKeyParameter.logicalId,
+            artifactHashParameter: params.artifactHashParameter.logicalId
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+        }
+        const bucketName = params.bucketNameParameter.valueAsString;
+        const encodedKey = params.objectKeyParameter.valueAsString;
+        const s3Prefix = Fn.select(0, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const s3Filename = Fn.select(1, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const objectKey = `${s3Prefix}${s3Filename}`;
+        const httpUrl = `https://s3.${this.boundStack.region}.${this.boundStack.urlSuffix}/${bucketName}/${objectKey}`;
+        const s3ObjectUrl = `s3://${bucketName}/${objectKey}`;
+        return { bucketName, objectKey, httpUrl, s3ObjectUrl, s3Url: httpUrl };
+      }
+      get assetParameters() {
+        assertBound(this.boundStack);
+        if (!this._assetParameters) {
+          this._assetParameters = new import_constructs21.Construct(this.boundStack, "AssetParameters");
+        }
+        return this._assetParameters;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts
+var init_bootstrapless_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts"() {
+    "use strict";
+    init_default_synthesizer();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts
+var init_nested = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts"() {
+    "use strict";
+    init_stack_synthesizer();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts
+var init_cli_credentials_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_default_synthesizer();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts
+var init_stack_synthesizers = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts"() {
+    "use strict";
+    init_types3();
+    init_default_synthesizer();
+    init_legacy();
+    init_bootstrapless_synthesizer();
+    init_nested();
+    init_stack_synthesizer();
+    init_cli_credentials_synthesizer();
+    init_asset_manifest_builder();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-mapping.ts
+var CfnMapping, CfnMappingEmbedder;
+var init_cfn_mapping = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-mapping.ts"() {
+    "use strict";
+    init_annotations();
+    init_cfn_element();
+    init_cfn_fn();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    CfnMapping = class extends CfnRefElement {
+      mapping;
+      lazy;
+      lazyRender = false;
+      // prescribes `_toCloudFormation()` to pass nothing if value from map is returned lazily.
+      lazyInformed = false;
+      // keeps track if user has been sent a message informing them of the possibility to use lazy synthesis.
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this.mapping = props.mapping ? this.validateMapping(props.mapping) : {};
+        this.lazy = props.lazy;
+      }
+      /**
+       * Sets a value in the map based on the two keys.
+       */
+      setValue(key1, key2, value) {
+        if ([key1, key2].some((k) => ["__proto__", "constructor"].includes(k))) {
+          throw new ValidationError(lit`CannotProtoConstructorKeys`, "Cannot use '__proto__' or 'constructor' as keys", this);
+        }
+        this.validateAlphanumeric(key2);
+        if (!(key1 in this.mapping)) {
+          this.mapping[key1] = {};
+        }
+        this.mapping[key1][key2] = value;
+      }
+      /**
+       * @returns A reference to a value in the map based on the two keys.
+       *          If mapping is lazy, the value from the map or default value is returned instead of the reference and the mapping is not rendered in the template.
+       */
+      findInMap(key1, key2, defaultValue) {
+        let fullyResolved = false;
+        let notInMap = false;
+        if (!Token.isUnresolved(key1)) {
+          if (!(key1 in this.mapping)) {
+            if (defaultValue === void 0) {
+              throw new ValidationError(lit`MappingDoesnTContainTopLevel`, `Mapping doesn't contain top-level key '${key1}'`, this);
+            } else {
+              notInMap = true;
+            }
+          } else if (!Token.isUnresolved(key2)) {
+            if (!(key2 in this.mapping[key1])) {
+              if (defaultValue === void 0) {
+                throw new ValidationError(lit`MappingDoesnTContainSecondLevel`, `Mapping doesn't contain second-level key '${key2}'`, this);
+              } else {
+                notInMap = true;
+              }
+            }
+            fullyResolved = true;
+          }
+        }
+        if (this.lazy) {
+          if (notInMap && defaultValue !== void 0) {
+            return defaultValue;
+          } else if (fullyResolved) {
+            return this.mapping[key1][key2];
+          }
+        }
+        this.lazyRender = !fullyResolved;
+        return new CfnMappingEmbedder(this, this.mapping, key1, key2, defaultValue).toString();
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (this.lazy === void 0 && !this.lazyRender) {
+          this.informLazyUse();
+        }
+        if (!this.lazy || this.lazy && this.lazyRender) {
+          return {
+            Mappings: {
+              [this.logicalId]: this.mapping
+            }
+          };
+        } else {
+          return {};
+        }
+      }
+      informLazyUse() {
+        if (!this.lazyInformed) {
+          Annotations.of(this).addInfo("Consider making this CfnMapping a lazy mapping by providing `lazy: true`: either no findInMap was called or every findInMap could be immediately resolved without using Fn::FindInMap");
+        }
+        this.lazyInformed = true;
+      }
+      validateMapping(mapping) {
+        Object.keys(mapping).forEach((m) => Object.keys(mapping[m]).forEach(this.validateAlphanumeric));
+        return mapping;
+      }
+      validateAlphanumeric(value) {
+        if (value.match(/[^a-zA-Z0-9]/g)) {
+          throw new UnscopedValidationError(lit`AttributeNameContainOnly`, `Attribute name '${value}' must contain only alphanumeric characters.`);
+        }
+      }
+    };
+    CfnMappingEmbedder = class {
+      constructor(cfnMapping, mapping, key1, key2, defaultValue) {
+        this.cfnMapping = cfnMapping;
+        this.mapping = mapping;
+        this.key1 = key1;
+        this.key2 = key2;
+        this.defaultValue = defaultValue;
+      }
+      cfnMapping;
+      mapping;
+      key1;
+      key2;
+      defaultValue;
+      creationStack = ["Token stack traces are no longer captured"];
+      resolve(context) {
+        const consumingStack = stackOf(context.scope);
+        if (consumingStack === stackOf(this.cfnMapping)) {
+          return Fn.findInMap(this.cfnMapping.logicalId, this.key1, this.key2, this.defaultValue);
+        }
+        const constructScope = consumingStack;
+        const constructId = `MappingCopy-${this.cfnMapping.node.id}-${this.cfnMapping.node.addr}`;
+        let mappingCopy = constructScope.node.tryFindChild(constructId);
+        if (!mappingCopy) {
+          mappingCopy = new CfnMapping(constructScope, constructId, {
+            mapping: this.mapping
+          });
+        }
+        return Fn.findInMap(mappingCopy.logicalId, this.key1, this.key2, this.defaultValue);
+      }
+      toString() {
+        return Token.asString(this);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/region-lookup.ts
+function deployTimeLookup(stack, factName, lookupMap, defaultValue) {
+  if (Object.values(lookupMap).length === 0) {
+    if (defaultValue === void 0) {
+      throw new UnscopedValidationError(lit`RegionInfoDonTInformation`, `region-info: don't have any information for ${factName}. Use 'Fact.register' to provide values, or add partitions to the '${TARGET_PARTITIONS}' context value.`);
+    }
+    return defaultValue;
+  }
+  const pattern = findValuePattern(lookupMap);
+  if (pattern !== void 0) {
+    return pattern;
+  }
+  const [factClass, factParam] = factName.includes(":") ? factName.split(":") : [factName, "value"];
+  const mapId = `${ucfirst(factClass)}Map`;
+  const factKey = factParam.replace(/[^a-zA-Z0-9]/g, "x");
+  let mapping = stack.node.tryFindChild(mapId);
+  if (!mapping) {
+    mapping = new CfnMapping(stack, mapId);
+  }
+  for (const [region, value] of Object.entries(lookupMap)) {
+    mapping.setValue(region, factKey, value);
+  }
+  return mapping.findInMap(Aws.REGION, factKey);
+}
+function ucfirst(x) {
+  return `${x.slice(0, 1).toUpperCase()}${x.slice(1)}`;
+}
+function findValuePattern(regionMap) {
+  const simplified = { ...regionMap };
+  const urlSuffixes = Object.keys(simplified).map(urlSuffix);
+  if (!allSame(urlSuffixes) && Object.entries(simplified).every(([region, value]) => value.includes(urlSuffix(region)))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], urlSuffix(region), Aws.URL_SUFFIX);
+    }
+  }
+  if (Object.entries(simplified).every(([region, value]) => value.includes(region))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], region, Aws.REGION);
+    }
+  }
+  const values = Object.values(simplified);
+  if (allSame(values)) {
+    return values[0];
+  }
+  return void 0;
+}
+function allSame(xs) {
+  return xs.every((x) => x === xs[0]);
+}
+function urlSuffix(region) {
+  return RegionInfo.get(region)?.domainSuffix ?? "amazonaws.com";
+}
+function replaceAll2(x, pat, replacement) {
+  return x.split(pat).join(replacement);
+}
+var init_region_lookup = __esm({
+  "../../aws-cdk-lib/core/lib/private/region-lookup.ts"() {
+    "use strict";
+    init_cx_api();
+    init_region_info2();
+    init_cfn_mapping();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack.ts
+function merge(template, fragment) {
+  for (const section of Object.keys(fragment)) {
+    const src = fragment[section];
+    const dest = template[section];
+    if (!dest) {
+      template[section] = src;
+    } else {
+      template[section] = mergeSection(section, dest, src);
+    }
+  }
+}
+function mergeSection(section, val1, val2) {
+  switch (section) {
+    case "Description":
+      return `${val1}
+${val2}`;
+    case "AWSTemplateFormatVersion":
+      if (val1 != null && val2 != null && val1 !== val2) {
+        throw new AssumptionError(lit`ConflictingCloudformationTemplateVersions`, `Conflicting CloudFormation template versions provided: '${val1}' and '${val2}`);
+      }
+      return val1 ?? val2;
+    case "Transform":
+      return mergeSets(val1, val2);
+    default:
+      return mergeObjectsWithoutDuplicates(section, val1, val2);
+  }
+}
+function mergeSets(val1, val2) {
+  const array1 = val1 == null ? [] : Array.isArray(val1) ? val1 : [val1];
+  const array2 = val2 == null ? [] : Array.isArray(val2) ? val2 : [val2];
+  for (const value of array2) {
+    if (!array1.includes(value)) {
+      array1.push(value);
+    }
+  }
+  return array1.length === 1 ? array1[0] : array1;
+}
+function mergeObjectsWithoutDuplicates(section, dest, src) {
+  if (typeof dest !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(dest)} to be an object`);
+  }
+  if (typeof src !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(src)} to be an object`);
+  }
+  for (const id of Object.keys(src)) {
+    if (id in dest) {
+      throw new AssumptionError(lit`SectionAlreadyContains`, `section '${section}' already contains '${id}'`);
+    }
+    dest[id] = src[id];
+  }
+  return dest;
+}
+function cfnElements(node, into = []) {
+  if (CfnElement.isCfnElement(node)) {
+    into.push(node);
+  }
+  for (const child of import_constructs22.Node.of(node).children) {
+    if (STACK_TYPE.isMarked(child)) {
+      continue;
+    }
+    cfnElements(child, into);
+  }
+  return into;
+}
+function rootPathTo(construct, ancestor) {
+  const scopes = import_constructs22.Node.of(construct).scopes;
+  for (let i = scopes.length - 2; i >= 0; i--) {
+    if (scopes[i] === ancestor) {
+      return scopes.slice(i + 1);
+    }
+  }
+  return scopes;
+}
+function makeStackName(components, prefix = "") {
+  if (components.length === 1) {
+    const stack_name = prefix + components[0];
+    if (stack_name.length <= 128) {
+      return stack_name;
+    }
+  }
+  return makeUniqueResourceName(components, { maxLength: 128, prefix });
+}
+function getCreateExportsScope(stack) {
+  const exportsName = "Exports";
+  let stackExports = stack.node.tryFindChild(exportsName);
+  if (stackExports === void 0) {
+    stackExports = new import_constructs22.Construct(stack, exportsName);
+  }
+  return stackExports;
+}
+function generateExportName2(stackExports, id) {
+  const stackRelativeExports = FeatureFlags.of(stackExports).isEnabled(STACK_RELATIVE_EXPORTS_CONTEXT);
+  const stack = Stack.of(stackExports);
+  const components = [
+    ...stackExports.node.scopes.slice(stackRelativeExports ? stack.node.scopes.length : 2).map((c) => c.node.id),
+    id
+  ];
+  const prefix = stack.stackName ? stack.stackName + ":" : "";
+  const localPart = makeUniqueId(components);
+  const maxLength = 255;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function count(xs) {
+  const ret = {};
+  for (const x of xs) {
+    if (x in ret) {
+      ret[x] += 1;
+    } else {
+      ret[x] = 1;
+    }
+  }
+  return ret;
+}
+function sameReason(a) {
+  return (b) => a.source === b.source && a.target === b.target;
+}
+function makeCustomCoupledReference(value, strength) {
+  const resolvable = Tokenization.reverse(value);
+  if (!resolvable || !CfnReference.isCfnReference(resolvable)) {
+    throw new UnscopedValidationError(
+      lit`ConsumeReferenceRequiresResourceAttribute`,
+      "consumeReference: the value must be a resource attribute reference (like 'bucket.bucketArn')"
+    );
+  }
+  return new CustomCoupledReference(resolvable, strength);
+}
+var fs17, path21, import_constructs22, minimatch2, STACK_RESOURCE_LIMIT_CONTEXT, SUPPRESS_TEMPLATE_INDENTATION_CONTEXT, TEMPLATE_BODY_MAXIMUM_SIZE, VALID_STACK_NAME_REGEX, MAX_RESOURCES, _resolve_dec, _a6, _init9, _Stack, Stack, firstTwoAgnosticAzs;
+var init_stack = __esm({
+  "../../aws-cdk-lib/core/lib/stack.ts"() {
+    "use strict";
+    fs17 = __toESM(require("fs"));
+    path21 = __toESM(require("path"));
+    import_constructs22 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_arn();
+    init_aspect();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_context_provider();
+    init_feature_flags();
+    init_mixin_metadata();
+    init_permissions_boundary();
+    init_cloudformation_lang();
+    init_logical_id();
+    init_resolve();
+    init_uniqueid();
+    init_prop_injectors();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cx_api();
+    init_perf();
+    init_cfn_output();
+    init_cross_stack_reference_strength();
+    init_names();
+    init_reference();
+    init_stack_synthesizers();
+    init_string_specializer();
+    init_stage();
+    init_tag_manager();
+    init_token();
+    init_refs();
+    init_cfn_reference();
+    init_region_info2();
+    init_region_lookup();
+    init_unique_resource_name();
+    init_private_context();
+    init_aspect_prio();
+    init_errors();
+    init_literal_string();
+    init_debug();
+    init_stack_trace();
+    init_core_construct_finders();
+    init_deps();
+    init_validation2();
+    ({ minimatch: minimatch2 } = require_commonjs3());
+    STACK_RESOURCE_LIMIT_CONTEXT = "@aws-cdk/core:stackResourceLimit";
+    SUPPRESS_TEMPLATE_INDENTATION_CONTEXT = "@aws-cdk/core:suppressTemplateIndentation";
+    TEMPLATE_BODY_MAXIMUM_SIZE = 1e6;
+    VALID_STACK_NAME_REGEX = /^[A-Za-z][A-Za-z0-9-]*$/;
+    MAX_RESOURCES = 500;
+    _Stack = class _Stack extends (_a6 = import_constructs22.Construct, _resolve_dec = [profileFn("Stack.resolve", { telemetry: true })], _a6) {
+      /**
+       * Creates a new stack.
+       *
+       * @param scope Parent of this stack, usually an `App` or a `Stage`, but could be any construct.
+       * @param id The construct ID of this stack. If `stackName` is not explicitly
+       * defined, this id (and any parent IDs) will be used to determine the
+       * physical ID of the stack.
+       * @param props Stack properties.
+       */
+      constructor(scope, id, props = {}) {
+        scope = scope ?? new App({
+          autoSynth: false
+        });
+        id = id ?? "Default";
+        super(scope, id);
+        __runInitializers(_init9, 5, this);
+        /**
+         * Tags to be applied to the stack.
+         */
+        __publicField(this, "tags");
+        /**
+         * Options for CloudFormation template (like version, transform, description).
+         */
+        __publicField(this, "templateOptions");
+        /**
+         * The AWS region into which this stack will be deployed (e.g. `us-west-2`).
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.region` when the stack is defined. This can
+         *    either be a concrete region (e.g. `us-west-2`) or the `Aws.REGION`
+         *    token.
+         * 3. `Aws.REGION`, which is represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::Region" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.region)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into a **region-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other region-agnostic behavior.
+         */
+        __publicField(this, "region");
+        /**
+         * The AWS account into which this stack will be deployed.
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.account` when the stack is defined. This can
+         *    either be a concrete account (e.g. `585695031111`) or the
+         *    `Aws.ACCOUNT_ID` token.
+         * 3. `Aws.ACCOUNT_ID`, which represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::AccountId" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.account)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into an **account-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other account-agnostic behavior.
+         */
+        __publicField(this, "account");
+        /**
+         * The environment coordinates in which this stack is deployed. In the form
+         * `aws://account/region`. Use `stack.account` and `stack.region` to obtain
+         * the specific values, no need to parse.
+         *
+         * You can use this value to determine if two stacks are targeting the same
+         * environment.
+         *
+         * If either `stack.account` or `stack.region` are not concrete values (e.g.
+         * `Aws.ACCOUNT_ID` or `Aws.REGION`) the special strings `unknown-account` and/or
+         * `unknown-region` will be used respectively to indicate this stack is
+         * region/account-agnostic.
+         */
+        __publicField(this, "environment");
+        /**
+         * If this is a nested stack, this represents its `AWS::CloudFormation::Stack`
+         * resource. `undefined` for top-level (non-nested) stacks.
+         *
+         */
+        __publicField(this, "nestedStackResource");
+        /**
+         * The name of the CloudFormation template file emitted to the output
+         * directory during synthesis.
+         *
+         * Example value: `MyStack.template.json`
+         */
+        __publicField(this, "templateFile");
+        /**
+         * The ID of the cloud assembly artifact for this stack.
+         */
+        __publicField(this, "artifactId");
+        /**
+         * Synthesis method for this stack
+         *
+         */
+        __publicField(this, "synthesizer");
+        /**
+         * Whether version reporting is enabled for this stack
+         *
+         * Controls whether the CDK Metadata resource is injected
+         *
+         * @internal
+         */
+        __publicField(this, "_versionReportingEnabled");
+        /**
+         * Whether cross region references are enabled for this stack
+         *
+         * @internal
+         */
+        __publicField(this, "_crossRegionReferences");
+        /**
+         * SNS Notification ARNs to receive stack events.
+         *
+         * @internal
+         */
+        __publicField(this, "_notificationArns");
+        /**
+         * Logical ID generation strategy
+         */
+        __publicField(this, "_logicalIds");
+        /**
+         * Other stacks this stack depends on
+         */
+        __publicField(this, "_stackDependencies");
+        /**
+         * Lists all missing contextual information.
+         * This is returned when the stack is synthesized under the 'missing' attribute
+         * and allows tooling to obtain the context and re-synthesize.
+         */
+        __publicField(this, "_missingContext");
+        __publicField(this, "_stackName");
+        /**
+         * Enable this flag to suppress indentation in generated
+         * CloudFormation templates.
+         *
+         * If not specified, the value of the `@aws-cdk/core:suppressTemplateIndentation`
+         * context key will be used. If that is not specified, then the
+         * default value `false` will be used.
+         *
+         * @default - the value of `@aws-cdk/core:suppressTemplateIndentation`, or `false` if that is not set.
+         */
+        __publicField(this, "_suppressTemplateIndentation");
+        __publicField(this, "_terminationProtection");
+        /**
+         * Silencing a specific diagnostic, should only do this once.
+         */
+        __publicField(this, "azLiteralWarningSilenced", false);
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        this._missingContext = new Array();
+        this._stackDependencies = {};
+        this.templateOptions = {};
+        this._crossRegionReferences = !!props.crossRegionReferences;
+        this._suppressTemplateIndentation = props.suppressTemplateIndentation ?? this.node.tryGetContext(SUPPRESS_TEMPLATE_INDENTATION_CONTEXT) ?? false;
+        STACK_TYPE.mark(this);
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+        this._logicalIds = new LogicalIDs();
+        const { account, region, environment } = this.parseEnvironment(props.env);
+        this.account = account;
+        this.region = region;
+        this.environment = environment;
+        this._terminationProtection = props.terminationProtection ?? false;
+        if (props.description !== void 0) {
+          if (props.description.length > 512) {
+            throw new ValidationError(lit`StackDescriptionTooLong`, `Stack description must be <= 1024 bytes. Received description: '${props.description}'`, this);
+          }
+          this.templateOptions.description = props.description;
+        }
+        this._stackName = props.stackName ?? this.generateStackName();
+        if (this._stackName.length > 128) {
+          throw new ValidationError(lit`StackNameTooLong`, `Stack name must be <= 128 characters. Stack name: '${this._stackName}'`, this);
+        }
+        this.tags = new TagManager("KeyValue" /* KEY_VALUE */, "aws:cdk:stack", props.tags);
+        for (const notificationArn of props.notificationArns ?? []) {
+          if (Token.isUnresolved(notificationArn)) {
+            throw new ValidationError(lit`StackNotificationArnsContainTokens`, `Stack '${id}' includes one or more tokens in its notification ARNs: ${props.notificationArns}`, this);
+          }
+        }
+        this._notificationArns = props.notificationArns;
+        if (!VALID_STACK_NAME_REGEX.test(this.stackName)) {
+          throw new ValidationError(lit`StackNameInvalidFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${this.stackName}'`, this);
+        }
+        const featureFlags = FeatureFlags.of(this);
+        const stackNameDupeContext = featureFlags.isEnabled(ENABLE_STACK_NAME_DUPLICATES_CONTEXT);
+        const newStyleSynthesisContext = featureFlags.isEnabled(NEW_STYLE_STACK_SYNTHESIS_CONTEXT);
+        const artifactId = stackNameDupeContext || newStyleSynthesisContext ? this.generateStackArtifactId() : this.stackName;
+        this.artifactId = artifactId.replace(/[^A-Za-z0-9_\-\.]/g, "_");
+        this.templateFile = `${this.artifactId}.template.json`;
+        this._versionReportingEnabled = (props.analyticsReporting ?? this.node.tryGetContext(ANALYTICS_REPORTING_ENABLED_CONTEXT)) && !this.nestedStackParent;
+        const synthesizer = props.synthesizer ?? this.node.tryGetContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER) ?? (newStyleSynthesisContext ? new DefaultStackSynthesizer() : new LegacyStackSynthesizer());
+        if (isReusableStackSynthesizer(synthesizer)) {
+          this.synthesizer = synthesizer.reusableBind(this);
+        } else {
+          this.synthesizer = synthesizer;
+          this.synthesizer.bind(this);
+        }
+        props.permissionsBoundary?._bind(this);
+        this.addPermissionsBoundaryAspect();
+      }
+      /**
+       * Return whether the given object is a Stack.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static isStack(x) {
+        return STACK_TYPE.isMarked(x);
+      }
+      /**
+       * Looks up the first stack scope in which `construct` is defined. Fails if there is no stack up the tree.
+       *
+       * Will return the closest containing `Stack` or `NestedStack`.
+       *
+       * @param construct The construct to start the search from.
+       */
+      static of(construct) {
+        return stackOf(construct);
+      }
+      /**
+       * Override the reference strength for a specific cross-stack reference value.
+       *
+       * Use this to weaken (or strengthen) an individual reference without
+       * affecting other references to the same resource. For example:
+       *
+       * ```ts
+       * // producerStack defines an SNS topic
+       * declare const topic: sns.Topic;
+       *
+       * // consumerStack subscribes to it with a weak reference,
+       * // so the producer can be torn down without blocking on this consumer
+       * const consumerStack = new Stack(app, 'Consumer', {
+       *   env: { account: '123456789012', region: 'us-east-1' },
+       * });
+       * new sns.Subscription(consumerStack, 'Subscription', {
+       *   topic: sns.Topic.fromTopicArn(consumerStack, 'Topic', Stack.consumeReference(topic.topicArn)),
+       *   endpoint: 'https://example.com/webhook',
+       *   protocol: sns.SubscriptionProtocol.HTTPS,
+       * });
+       * ```
+       *
+       * @param value A tokenized string reference (e.g. `bucket.bucketArn`).
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeReference(value, strength = "both" /* BOTH */) {
+        return Token.asString(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Override the reference strength for a specific cross-stack string list reference.
+       *
+       * This is the string list equivalent of `consumeReference`.
+       *
+       * @param value A tokenized string list reference.
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeListReference(value, strength = "both" /* BOTH */) {
+        return Token.asList(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Whether termination protection is enabled for this stack.
+       */
+      get terminationProtection() {
+        return this._terminationProtection;
+      }
+      set terminationProtection(value) {
+        this._terminationProtection = value;
+      }
+      /**
+       * If a permissions boundary has been applied on this scope or any parent scope
+       * then this will return the ARN of the permissions boundary.
+       *
+       * This will return the permissions boundary that has been applied to the most
+       * specific scope.
+       *
+       * For example:
+       *
+       * const stage = new Stage(app, 'stage', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('stage-pb'),
+       * });
+       *
+       * const stack = new Stack(stage, 'Stack', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'),
+       * });
+       *
+       *  Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';
+       *
+       * @param scope the construct scope to retrieve the permissions boundary name from
+       * @returns the name of the permissions boundary or undefined if not set
+       */
+      get permissionsBoundaryArn() {
+        const qualifier = this.synthesizer.bootstrapQualifier ?? this.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        const spec = new StringSpecializer(this, qualifier);
+        const context = this.node.tryGetContext(PERMISSIONS_BOUNDARY_CONTEXT_KEY);
+        let arn;
+        if (context && context.arn) {
+          arn = spec.specialize(context.arn);
+        } else if (context && context.name) {
+          arn = spec.specialize(this.formatArn({
+            service: "iam",
+            resource: "policy",
+            region: "",
+            resourceName: context.name
+          }));
+        }
+        if (arn && (arn.includes("${Qualifier}") || arn.includes("${AWS::AccountId}") || arn.includes("${AWS::Region}") || arn.includes("${AWS::Partition}"))) {
+          throw new ValidationError(lit`PermissionsBoundaryContainsPseudoParameter`, `The permissions boundary ${arn} includes a pseudo parameter, which is not supported for environment agnostic stacks`, this);
+        }
+        return arn;
+      }
+      /**
+       * Adds an aspect to the stack that will apply the permissions boundary.
+       * This will only add the aspect if the permissions boundary has been set
+       */
+      addPermissionsBoundaryAspect() {
+        const permissionsBoundaryArn = this.permissionsBoundaryArn;
+        if (permissionsBoundaryArn) {
+          Aspects.of(this).add({
+            visit(node) {
+              if (CfnResource.isCfnResource(node) && (node.cfnResourceType == "AWS::IAM::Role" || node.cfnResourceType == "AWS::IAM::User")) {
+                node.addPropertyOverride("PermissionsBoundary", permissionsBoundaryArn);
+              }
+            }
+          }, {
+            priority: mutatingAspectPrio32333(this)
+          });
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      resolve(obj) {
+        return resolve(obj, {
+          scope: this,
+          prefix: [],
+          resolver: CLOUDFORMATION_TOKEN_RESOLVER,
+          preparing: false
+        });
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a JSON string
+       */
+      toJsonString(obj, space) {
+        return CloudFormationLang.toJSON(obj, space).toString();
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a YAML string
+       */
+      toYamlString(obj) {
+        return CloudFormationLang.toYAML(obj).toString();
+      }
+      /**
+       * DEPRECATED
+       * @deprecated use `reportMissingContextKey()`
+       */
+      reportMissingContext(report) {
+        if (!Object.values(cloud_assembly_schema_exports.ContextProvider).includes(report.provider)) {
+          throw new ValidationError(lit`UnknownContextProvider`, `Unknown context provider requested in: ${JSON.stringify(report)}`, this);
+        }
+        this.reportMissingContextKey(report);
+      }
+      /**
+       * Indicate that a context key was expected
+       *
+       * Contains instructions which will be emitted into the cloud assembly on how
+       * the key should be supplied.
+       *
+       * @param report The set of parameters needed to obtain the context
+       */
+      reportMissingContextKey(report) {
+        this._missingContext.push(report);
+      }
+      /**
+       * Rename a generated logical identities
+       *
+       * To modify the naming scheme strategy, extend the `Stack` class and
+       * override the `allocateLogicalId` method.
+       */
+      renameLogicalId(oldId, newId) {
+        this._logicalIds.addRename(oldId, newId);
+      }
+      /**
+       * Allocates a stack-unique CloudFormation-compatible logical identity for a
+       * specific resource.
+       *
+       * This method is called when a `CfnElement` is created and used to render the
+       * initial logical identity of resources. Logical ID renames are applied at
+       * this stage.
+       *
+       * This method uses the protected method `allocateLogicalId` to render the
+       * logical ID for an element. To modify the naming scheme, extend the `Stack`
+       * class and override this method.
+       *
+       * @param element The CloudFormation element for which a logical identity is
+       * needed.
+       */
+      getLogicalId(element) {
+        const logicalId = this.allocateLogicalId(element);
+        return this._logicalIds.applyRename(logicalId);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method has been renamed to `addStackDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addStackDependency` instead.
+       */
+      addDependency(target, reason) {
+        this.addStackDependency(target, reason);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method only adds dependencies between stacks. If you are looking
+       * for a generic construct-to-construct dependency mechanism, use
+       * `construct.node.addDependency` instead.
+       */
+      addStackDependency(target, reason) {
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addStackDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Return the stacks this stack depends on
+       */
+      get dependencies() {
+        return Object.values(this._stackDependencies).map((x) => x.stack);
+      }
+      /**
+       * The concrete CloudFormation physical stack name.
+       *
+       * This is either the name defined explicitly in the `stackName` prop or
+       * allocated based on the stack's location in the construct tree. Stacks that
+       * are directly defined under the app use their construct `id` as their stack
+       * name. Stacks that are defined deeper within the tree will use a hashed naming
+       * scheme based on the construct path to ensure uniqueness.
+       *
+       * If you wish to obtain the deploy-time AWS::StackName intrinsic,
+       * you can use `Aws.STACK_NAME` directly.
+       */
+      get stackName() {
+        return this._stackName;
+      }
+      /**
+       * The partition in which this stack is defined
+       */
+      get partition() {
+        if (!FeatureFlags.of(this).isEnabled(ENABLE_PARTITION_LITERALS) || Token.isUnresolved(this.region)) {
+          return Aws.PARTITION;
+        } else {
+          const partition = RegionInfo.get(this.region).partition;
+          return partition ?? Aws.PARTITION;
+        }
+      }
+      /**
+       * The Amazon domain suffix for the region in which this stack is defined
+       */
+      get urlSuffix() {
+        return Aws.URL_SUFFIX;
+      }
+      /**
+       * The ID of the stack
+       *
+       * @example
+       * // After resolving, looks like
+       * 'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123'
+       */
+      get stackId() {
+        return new ScopedAws(this).stackId;
+      }
+      /**
+       * Returns the list of notification Amazon Resource Names (ARNs) for the current stack.
+       */
+      get notificationArns() {
+        return new ScopedAws(this).notificationArns;
+      }
+      /**
+       * Indicates if this is a nested stack, in which case `parentStack` will include a reference to its parent.
+       */
+      get nested() {
+        return this.nestedStackResource !== void 0;
+      }
+      /**
+       * Creates an ARN from components.
+       *
+       * If `partition`, `region` or `account` are not specified, the stack's
+       * partition, region and account will be used.
+       *
+       * If any component is the empty string, an empty string will be inserted
+       * into the generated ARN at the location that component corresponds to.
+       *
+       * The ARN will be formatted as follows:
+       *
+       *   arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}
+       *
+       * The required ARN pieces that are omitted will be taken from the stack that
+       * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope
+       * can be 'undefined'.
+       */
+      formatArn(components) {
+        return Arn.format(components, this);
+      }
+      /**
+       * Given an ARN, parses it and returns components.
+       *
+       * IF THE ARN IS A CONCRETE STRING...
+       *
+       * ...it will be parsed and validated. The separator (`sep`) will be set to '/'
+       * if the 6th component includes a '/', in which case, `resource` will be set
+       * to the value before the '/' and `resourceName` will be the rest. In case
+       * there is no '/', `resource` will be set to the 6th components and
+       * `resourceName` will be set to the rest of the string.
+       *
+       * IF THE ARN IS A TOKEN...
+       *
+       * ...it cannot be validated, since we don't have the actual value yet at the
+       * time of this function call. You will have to supply `sepIfToken` and
+       * whether or not ARNs of the expected format usually have resource names
+       * in order to parse it properly. The resulting `ArnComponents` object will
+       * contain tokens for the subexpressions of the ARN, not string literals.
+       *
+       * If the resource name could possibly contain the separator char, the actual
+       * resource name cannot be properly parsed. This only occurs if the separator
+       * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs,
+       * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a
+       * Tokenized ARN, you must know the resource type and call
+       * `Arn.extractResourceName`.
+       *
+       * @param arn The ARN string to parse
+       * @param sepIfToken The separator used to separate resource from resourceName
+       * @param hasName Whether there is a name component in the ARN at all. For
+       * example, SNS Topics ARNs have the 'resource' component contain the topic
+       * name, and no 'resourceName' component.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       * components of the ARN.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       *      components of the ARN.
+       *
+       * @deprecated use splitArn instead
+       */
+      parseArn(arn, sepIfToken = "/", hasName = true) {
+        return Arn.parse(arn, sepIfToken, hasName);
+      }
+      /**
+       * Splits the provided ARN into its components.
+       * Works both if 'arn' is a string like 'arn:aws:s3:::bucket',
+       * and a Token representing a dynamic CloudFormation expression
+       * (in which case the returned components will also be dynamic CloudFormation expressions,
+       * encoded as Tokens).
+       *
+       * @param arn the ARN to split into its components
+       * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses
+       */
+      splitArn(arn, arnFormat) {
+        return Arn.split(arn, arnFormat);
+      }
+      /**
+       * Returns the list of AZs that are available in the AWS environment
+       * (account/region) associated with this stack.
+       *
+       * If the stack is environment-agnostic (either account and/or region are
+       * tokens), this property will return an array with 2 tokens that will resolve
+       * at deploy-time to the first two availability zones returned from CloudFormation's
+       * `Fn::GetAZs` intrinsic function.
+       *
+       * If they are not available in the context, returns a set of dummy values and
+       * reports them as missing, and let the CLI resolve them by calling EC2
+       * `DescribeAvailabilityZones` on the target environment.
+       *
+       * To specify a different strategy for selecting availability zones override this method.
+       */
+      get availabilityZones() {
+        this._silenceLiteralAzWarning();
+        const agnostic = Token.isUnresolved(this.account) || Token.isUnresolved(this.region);
+        if (agnostic) {
+          return this.node.tryGetContext(import_cloud_assembly_api.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY) || firstTwoAgnosticAzs();
+        }
+        const value = ContextProvider.getValue(this, {
+          provider: cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER,
+          dummyValue: ["dummy1a", "dummy1b", "dummy1c"]
+        }).value;
+        if (!Array.isArray(value)) {
+          throw new ValidationError(lit`ProviderExpectedList`, `Provider ${cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER} expects a list`, this);
+        }
+        return value;
+      }
+      /**
+       * Register a file asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addFileAsset()` if you are calling,
+       * and a different IStackSynthesizer class if you are implementing.
+       */
+      addFileAsset(asset) {
+        return this.synthesizer.addFileAsset(asset);
+      }
+      /**
+       * Register a docker image asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addDockerImageAsset()` if you are calling,
+       * and a different `IStackSynthesizer` class if you are implementing.
+       */
+      addDockerImageAsset(asset) {
+        return this.synthesizer.addDockerImageAsset(asset);
+      }
+      /**
+       * If this is a nested stack, returns its parent stack.
+       */
+      get nestedStackParent() {
+        return this.nestedStackResource && _Stack.of(this.nestedStackResource);
+      }
+      /**
+       * Returns the parent of a nested stack.
+       *
+       * @deprecated use `nestedStackParent`
+       */
+      get parentStack() {
+        return this.nestedStackParent;
+      }
+      /**
+       * Add a Transform to this stack. A Transform is a macro that AWS
+       * CloudFormation uses to process your template.
+       *
+       * Duplicate values are removed when stack is synthesized.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html
+       * @param transform The transform to add
+       *
+       * @example
+       * declare const stack: Stack;
+       *
+       * stack.addTransform('AWS::Serverless-2016-10-31')
+       */
+      addTransform(transform) {
+        if (!this.templateOptions.transforms) {
+          this.templateOptions.transforms = [];
+        }
+        this.templateOptions.transforms.push(transform);
+      }
+      /**
+       * Adds an arbitrary key-value pair, with information you want to record about the stack.
+       * These get translated to the Metadata section of the generated template.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       */
+      addMetadata(key, value) {
+        if (!this.templateOptions.metadata) {
+          this.templateOptions.metadata = {};
+        }
+        this.templateOptions.metadata[key] = value;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two top-level stacks.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addStackDependency(target, reason) {
+        if (!reason.reason) {
+          throw new ValidationError(lit`MissingDependencyReason`, "A stack dependency reason must be provided", this);
+        }
+        const cycle = target.stackDependencyReasons(this);
+        if (cycle !== void 0) {
+          const cycleDescription = cycle.map((cycleReason) => {
+            return cycleReason.reason;
+          }).join(", ");
+          throw new ValidationError(lit`DependencyCycle`, `'${target.node.path}' depends on '${this.node.path}' (${cycleDescription}). Adding this dependency (${reason.reason}) would create a cyclic reference.`, this);
+        }
+        const dep = this._stackDependencies[Names.uniqueId(target)] ?? (this._stackDependencies[Names.uniqueId(target)] = { stack: target, reasons: [] });
+        if (dep.reasons.find(sameReason(reason))) {
+          return;
+        }
+        dep.reasons.push(reason);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] stack "${reason.source.node.path}" depends on "${reason.target.node.path}"`);
+        }
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two top-level stacks.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeStackDependency(target, reason) {
+        let dep = this._stackDependencies[Names.uniqueId(target)];
+        if (!dep) {
+          return;
+        }
+        const matchedReasons = dep.reasons.filter(sameReason(reason));
+        if (matchedReasons.length === 0) {
+          return;
+        }
+        if (matchedReasons.length > 1) {
+          throw new ValidationError(lit`TooManyDependencyReasons`, `There cannot be more than one reason for dependency removal, found: ${matchedReasons}`, this);
+        }
+        let index = dep.reasons.indexOf(matchedReasons[0]);
+        dep.reasons.splice(index, 1);
+        if (dep.reasons.length == 0) {
+          delete this._stackDependencies[Names.uniqueId(target)];
+        }
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.log(`[CDK_DEBUG_DEPS] stack "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Return the stacks dependencies caused by the given construct.
+       *
+       * Returns the target resources that the dependency has been added for.
+       *
+       * I'm not sure this method is useful in any way, but we are keeping it in
+       * to maintain exact behavior as guaranteed by unit tests.
+       *
+       * @internal
+       */
+      _stackDependenciesCausedBy(source) {
+        return Array.from(new Set(Object.values(this._stackDependencies).flatMap((dep) => dep.reasons).filter((reason) => reason.source === source).map((reason) => reason.target)));
+      }
+      /**
+       * Synthesizes the cloudformation template into a cloud assembly.
+       * @internal
+       */
+      _synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        const builder = session.assembly;
+        this.node.addMetadata(CDK_TEMPLATE_FILE_KEY, this.templateFile);
+        const template = this._toCloudFormation();
+        const outPath = path21.join(builder.outdir, this.templateFile);
+        if (this.maxResources > 0) {
+          const resources = template.Resources || {};
+          const numberOfResources = Object.keys(resources).length;
+          if (numberOfResources > this.maxResources) {
+            const counts = Object.entries(count(Object.values(resources).map((r) => `${r?.Type}`))).map(([type, c]) => `${type} (${c})`).join(", ");
+            throw new ValidationError(lit`TooManyResourcesInStack`, `Number of resources in stack '${this.node.path}': ${numberOfResources} is greater than allowed maximum of ${this.maxResources}: ${counts}`, this);
+          } else if (numberOfResources >= this.maxResources * 0.8) {
+            Annotations.of(this).addInfo(`Number of resources: ${numberOfResources} is approaching allowed maximum of ${this.maxResources}`);
+          }
+        }
+        const indent = this._suppressTemplateIndentation ? void 0 : 1;
+        const templateData = JSON.stringify(template, void 0, indent);
+        if (templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE * 0.8) {
+          const verb = templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE ? "exceeds" : "is approaching";
+          const advice = this._suppressTemplateIndentation ? "Split resources into multiple stacks to reduce template size" : "Split resources into multiple stacks or set suppressTemplateIndentation to reduce template size";
+          const message = `Template size ${verb} limit: ${templateData.length}/${TEMPLATE_BODY_MAXIMUM_SIZE}. ${advice}.`;
+          Annotations.of(this).addWarningV2("@aws-cdk/core:Stack.templateSize", message);
+        }
+        fs17.writeFileSync(outPath, templateData);
+        for (const ctx of this._missingContext) {
+          const queryLookupOptions = {
+            lookupRoleArn,
+            lookupRoleExternalId,
+            assumeRoleAdditionalOptions: lookupRoleAdditionalOptions
+          };
+          builder.addMissing({ ...ctx, props: { ...ctx.props, ...queryLookupOptions } });
+        }
+      }
+      /**
+       * Look up a fact value for the given fact for the region of this stack
+       *
+       * Will return a definite value only if the region of the current stack is resolved.
+       * If not, a lookup map will be added to the stack and the lookup will be done at
+       * CDK deployment time.
+       *
+       * What regions will be included in the lookup map is controlled by the
+       * `@aws-cdk/core:target-partitions` context value: it must be set to a list
+       * of partitions, and only regions from the given partitions will be included.
+       * If no such context key is set, all regions will be included.
+       *
+       * This function is intended to be used by construct library authors. Application
+       * builders can rely on the abstractions offered by construct libraries and do
+       * not have to worry about regional facts.
+       *
+       * If `defaultValue` is not given, it is an error if the fact is unknown for
+       * the given region.
+       */
+      regionalFact(factName, defaultValue) {
+        if (!Token.isUnresolved(this.region)) {
+          const ret = Fact.find(this.region, factName) ?? defaultValue;
+          if (ret === void 0) {
+            throw new ValidationError(lit`RegionFactNotFound`, `region-info: don't know ${factName} for region ${this.region}. Use 'Fact.register' to provide this value.`, this);
+          }
+          return ret;
+        }
+        const partitions = import_constructs22.Node.of(this).tryGetContext(TARGET_PARTITIONS);
+        if (partitions !== void 0 && partitions !== "undefined" && !Array.isArray(partitions)) {
+          throw new ValidationError(lit`TargetPartitionsContextValueInvalid`, `Context value '${TARGET_PARTITIONS}' should be a list of strings, got: ${JSON.stringify(partitions)}`, this);
+        }
+        const lookupMap = partitions !== void 0 && partitions !== "undefined" ? RegionInfo.limitedRegionMap(factName, partitions) : RegionInfo.regionMap(factName);
+        return deployTimeLookup(this, factName, lookupMap, defaultValue);
+      }
+      /**
+       * Create a CloudFormation Export for a string value
+       *
+       * Returns a string representing the corresponding `Fn.importValue()`
+       * expression for this Export. You can control the name for the export by
+       * passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * Here is how the process works. Let's say there are two stacks,
+       * `producerStack` and `consumerStack`, and `producerStack` has a bucket
+       * called `bucket`, which is referenced by `consumerStack` (perhaps because
+       * an AWS Lambda Function writes into it, or something like that).
+       *
+       * It is not safe to remove `producerStack.bucket` because as the bucket is being
+       * deleted, `consumerStack` might still be using it.
+       *
+       * Instead, the process takes two deployments:
+       *
+       * **Deployment 1: break the relationship**:
+       *
+       * - Make sure `consumerStack` no longer references `bucket.bucketName` (maybe the consumer
+       *   stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just
+       *   remove the Lambda Function altogether).
+       * - In the `ProducerStack` class, call `this.exportValue(this.bucket.bucketName)`. This
+       *   will make sure the CloudFormation Export continues to exist while the relationship
+       *   between the two stacks is being broken.
+       * - Deploy (this will effectively only change the `consumerStack`, but it's safe to deploy both).
+       *
+       * **Deployment 2: remove the bucket resource**:
+       *
+       * - You are now free to remove the `bucket` resource from `producerStack`.
+       * - Don't forget to remove the `exportValue()` call as well.
+       * - Deploy again (this time only the `producerStack` will be changed -- the bucket will be deleted).
+       */
+      exportValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: exportedValue,
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.importValue(options.name);
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            value: Token.asString(exportable),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.importValue(exportName);
+        if (Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedListValueFromExportValue`, "Attempted to export a list value from `exportValue()`: use `exportStringListValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Create a CloudFormation Export for a string list value
+       *
+       * Returns a string list representing the corresponding `Fn.importValue()`
+       * expression for this Export. The export expression is automatically wrapped with an
+       * `Fn::Join` and the import value with an `Fn::Split`, since CloudFormation can only
+       * export strings. You can control the name for the export by passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * See `exportValue` for an example of this process.
+       */
+      exportStringListValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, exportedValue),
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(options.name));
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            // this is a list so export an Fn::Join expression
+            // and import an Fn::Split expression,
+            // since CloudFormation Outputs can only be strings
+            // (string lists are invalid)
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(exportable)),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(exportName));
+        if (!Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedStringValueFromExportStringListValue`, "Attempted to export a string value from `exportStringListValue()`: use `exportValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Returns `true` if this stack is a top-level stack (i.e., not a nested stack).
+       *
+       * For better or worse, `Stack` is being subclassed by other constructs to mean "template producer".
+       * For example, `NestedStack` is a subclass of `Stack` but is not a top-level stack, and so
+       * is `CloudFormationProduct`.
+       *
+       * This indicates whether the current class represents a top-level stack
+       * (should only be true for instances of the main `Stack` class), or false for
+       * a construct that simply produces a template and happens to reuse `Stack`
+       * for that purpose.
+       *
+       * Here is the class hierarchy we should have had:
+       *
+       * ```
+       * TemplateProducer
+       * ├── Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * Here is the class hierarchy we actually have:
+       *
+       * ```
+       * Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * @internal
+       */
+      get _isTopLevelStack() {
+        return true;
+      }
+      /**
+       * Returns the naming scheme used to allocate logical IDs. By default, uses
+       * the `HashedAddressingScheme` but this method can be overridden to customize
+       * this behavior.
+       *
+       * In order to make sure logical IDs are unique and stable, we hash the resource
+       * construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as
+       * a suffix to the path components joined without a separator (CloudFormation
+       * IDs only allow alphanumeric characters).
+       *
+       * The result will be:
+       *
+       *   
+       *     "human"      "hash"
+       *
+       * If the "human" part of the ID exceeds 240 characters, we simply trim it so
+       * the total ID doesn't exceed CloudFormation's 255 character limit.
+       *
+       * We only take 8 characters from the md5 hash (0.000005 chance of collision).
+       *
+       * Special cases:
+       *
+       * - If the path only contains a single component (i.e. it's a top-level
+       *   resource), we won't add the hash to it. The hash is not needed for
+       *   disambiguation and also, it allows for a more straightforward migration an
+       *   existing CloudFormation template to a CDK stack without logical ID changes
+       *   (or renames).
+       * - For aesthetic reasons, if the last components of the path are the same
+       *   (i.e. `L1/L2/Pipeline/Pipeline`), they will be de-duplicated to make the
+       *   resulting human portion of the ID more pleasing: `L1L2Pipeline`
+       *   instead of `L1L2PipelinePipeline`
+       * - If a component is named "Default" it will be omitted from the path. This
+       *   allows refactoring higher level abstractions around constructs without affecting
+       *   the IDs of already deployed resources.
+       * - If a component is named "Resource" it will be omitted from the user-visible
+       *   path, but included in the hash. This reduces visual noise in the human readable
+       *   part of the identifier.
+       *
+       * @param cfnElement The element for which the logical ID is allocated.
+       */
+      allocateLogicalId(cfnElement) {
+        const scopes = cfnElement.node.scopes;
+        const stackIndex = scopes.indexOf(cfnElement.stack);
+        const pathComponents = scopes.slice(stackIndex + 1).map((x) => x.node.id);
+        return makeUniqueId(pathComponents);
+      }
+      /**
+       * Validate stack name
+       *
+       * CloudFormation stack names can include dashes in addition to the regular identifier
+       * character classes, and we don't allow one of the magic markers.
+       *
+       * @internal
+       */
+      _validateId(name) {
+        if (name && !VALID_STACK_NAME_REGEX.test(name)) {
+          throw new ValidationError(lit`InvalidStackNameFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${name}'`, this);
+        }
+      }
+      /**
+       * Returns the CloudFormation template for this stack by traversing
+       * the tree and invoking _toCloudFormation() on all Entity objects.
+       *
+       * @internal
+       */
+      _toCloudFormation() {
+        let transform;
+        if (this.templateOptions.transform) {
+          Annotations.of(this).addWarningV2("@aws-cdk/core:stackDeprecatedTransform", "This stack is using the deprecated `templateOptions.transform` property. Consider switching to `addTransform()`.");
+          this.addTransform(this.templateOptions.transform);
+        }
+        if (this.templateOptions.transforms) {
+          if (this.templateOptions.transforms.length === 1) {
+            transform = this.templateOptions.transforms[0];
+          } else {
+            transform = Array.from(new Set(this.templateOptions.transforms));
+          }
+        }
+        const template = {
+          Description: this.templateOptions.description,
+          Transform: transform,
+          AWSTemplateFormatVersion: this.templateOptions.templateFormatVersion,
+          Metadata: this.templateOptions.metadata
+        };
+        const elements = cfnElements(this);
+        const fragments = elements.map((e) => this.resolve(e._toCloudFormation()));
+        for (const fragment of fragments) {
+          merge(template, fragment);
+        }
+        const ret = this.resolve(template) || {};
+        this._logicalIds.assertAllRenamesApplied();
+        return ret;
+      }
+      /**
+       * Deprecated.
+       *
+       * @see https://github.com/aws/aws-cdk/pull/7187
+       * @returns reference itself without any change
+       * @deprecated cross reference handling has been moved to `App.prepare()`.
+       */
+      prepareCrossReference(_sourceStack, reference) {
+        return reference;
+      }
+      /**
+       * Determine the various stack environment attributes.
+       *
+       */
+      parseEnvironment(env2 = {}) {
+        const containingAssembly = Stage.of(this);
+        if (env2.account && typeof env2.account !== "string") {
+          throw new ValidationError(lit`AccountIdMustBeString`, `Account id of stack environment must be a 'string' but received '${typeof env2.account}'`, this);
+        }
+        if (env2.region && typeof env2.region !== "string") {
+          throw new ValidationError(lit`RegionMustBeString`, `Region of stack environment must be a 'string' but received '${typeof env2.region}'`, this);
+        }
+        const account = env2.account ?? containingAssembly?.account ?? Aws.ACCOUNT_ID;
+        const region = env2.region ?? containingAssembly?.region ?? Aws.REGION;
+        const envAccount = !Token.isUnresolved(account) ? account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+        const envRegion = !Token.isUnresolved(region) ? region : import_cloud_assembly_api.UNKNOWN_REGION;
+        return {
+          account,
+          region,
+          environment: (void 0).format(envAccount, envRegion)
+        };
+      }
+      /**
+       * Maximum number of resources in the stack
+       *
+       * Set to 0 to mean "unlimited".
+       */
+      get maxResources() {
+        const contextLimit = this.node.tryGetContext(STACK_RESOURCE_LIMIT_CONTEXT);
+        return contextLimit !== void 0 ? parseInt(contextLimit, 10) : MAX_RESOURCES;
+      }
+      /**
+       * Check whether this stack has a (transitive) dependency on another stack
+       *
+       * Returns the list of reasons on the dependency path, or undefined
+       * if there is no dependency.
+       */
+      stackDependencyReasons(other) {
+        if (this === other) {
+          return [];
+        }
+        for (const dep of Object.values(this._stackDependencies)) {
+          const ret = dep.stack.stackDependencyReasons(other);
+          if (ret !== void 0) {
+            return [...dep.reasons, ...ret];
+          }
+        }
+        return void 0;
+      }
+      /**
+       * Calculate the stack name based on the construct path
+       *
+       * The stack name is the name under which we'll deploy the stack,
+       * and incorporates containing Stage names by default.
+       *
+       * Generally this looks a lot like how logical IDs are calculated.
+       * The stack name is calculated based on the construct root path,
+       * as follows:
+       *
+       * - Path is calculated with respect to containing App or Stage (if any)
+       * - If the path is one component long just use that component, otherwise
+       *   combine them with a hash.
+       *
+       * Since the hash is quite ugly and we'd like to avoid it if possible -- but
+       * we can't anymore in the general case since it has been written into legacy
+       * stacks. The introduction of Stages makes it possible to make this nicer however.
+       * When a Stack is nested inside a Stage, we use the path components below the
+       * Stage, and prefix the path components of the Stage before it.
+       */
+      generateStackName() {
+        const assembly = Stage.of(this);
+        const prefix = assembly && assembly.stageName ? `${assembly.stageName}-` : "";
+        if (FeatureFlags.of(this).isEnabled(INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION)) {
+          return `${this.generateStackId(assembly, prefix)}`;
+        } else {
+          return `${prefix}${this.generateStackId(assembly)}`;
+        }
+      }
+      /**
+       * The artifact ID for this stack
+       *
+       * Stack artifact ID is unique within the App's Cloud Assembly.
+       */
+      generateStackArtifactId() {
+        return this.generateStackId(this.node.root);
+      }
+      /**
+       * Generate an ID with respect to the given container construct.
+       */
+      generateStackId(container, prefix = "") {
+        const rootPath = rootPathTo(this, container);
+        const ids = rootPath.map((c) => import_constructs22.Node.of(c).id);
+        if (ids.length === 1 && !ids[0]) {
+          throw new ValidationError(lit`StackIdMustBeDefined`, "unexpected: stack id must always be defined", this);
+        }
+        return makeStackName(ids, prefix);
+      }
+      /**
+       * Silence CloudFormation validate warning W3010 ("literal AZs limit portability")
+       *
+       * This is true! But the Validation Plugin is looking at the template and cannot tell
+       * the difference between a literal AZ in the template because a user typed it in the
+       * CDK code, vs a user using CDK's facilities to reflect on AZs and using those.
+       *
+       * So once a user calls `stack.availabilityZones`, we will take that as a signal
+       * they are "doing the right thing" and silencing this warning for them.
+       *
+       * @internal
+       */
+      _silenceLiteralAzWarning() {
+        if (this.azLiteralWarningSilenced) {
+          return;
+        }
+        this.azLiteralWarningSilenced = true;
+        Validations.of(this).acknowledge({
+          id: "CloudFormation-Validate::W3010",
+          reason: "Literal AZs in template are the result of accessing stack.availabilityZones, this is expected and safe"
+        });
+      }
+      resolveExportedValue(exportedValue) {
+        const resolvable = Tokenization.reverse(exportedValue);
+        if (!resolvable || !Reference.isReference(resolvable)) {
+          throw new ValidationError(lit`ExportValueRequiresNameOrResourceAttribute`, "exportValue: either supply 'name' or make sure to export a resource attribute (like 'bucket.bucketName')", this);
+        }
+        const exportable = getExportable(this, resolvable);
+        const exportsScope = getCreateExportsScope(this);
+        const resolved = this.resolve(exportable);
+        const id = "Output" + JSON.stringify(resolved);
+        const exportName = generateExportName2(exportsScope, id);
+        if (Token.isUnresolved(exportName)) {
+          throw new ValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(this.resolve(exportName))}`, this);
+        }
+        return {
+          exportable,
+          exportsScope,
+          id,
+          exportName
+        };
+      }
+      /**
+       * Indicates whether the stack requires bundling or not
+       */
+      get bundlingRequired() {
+        const bundlingStacks = this.node.tryGetContext(BUNDLING_STACKS) ?? ["**"];
+        return bundlingStacks.some((pattern) => minimatch2(
+          this.node.path,
+          // use the same value for pattern matching as the aws-cdk CLI (displayName / hierarchicalId)
+          pattern
+        ));
+      }
+      /**
+       * Configure a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      addStackTag(tagName, tagValue) {
+        this.tags.setTag(tagName, tagValue);
+      }
+      /**
+       * Remove a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      removeStackTag(tagName) {
+        this.tags.removeTag(tagName, 0);
+      }
+      /**
+       * The environment this Stack deploys to
+       */
+      get env() {
+        return {
+          account: this.account,
+          region: this.region
+        };
+      }
+    };
+    _init9 = __decoratorStart(_a6);
+    __decorateElement(_init9, 1, "resolve", _resolve_dec, _Stack);
+    __decoratorMetadata(_init9, _Stack);
+    Stack = _Stack;
+    firstTwoAgnosticAzs = /* @__PURE__ */ (() => {
+      let cache;
+      return () => {
+        if (!cache) {
+          cache = [
+            Fn.select(0, Fn.getAzs()),
+            Fn.select(1, Fn.getAzs())
+          ];
+        }
+        return cache;
+      };
+    })();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-element.ts
+function notTooLong(x) {
+  if (x.length < 100) {
+    return x;
+  }
+  return x.slice(0, 47) + "..." + x.slice(-47);
+}
+var import_constructs23, CFN_ELEMENT_SYMBOL, CfnElement, CfnRefElement;
+var init_cfn_element = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-element.ts"() {
+    "use strict";
+    import_constructs23 = __toESM(require_lib4());
+    init_lazy();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_reference();
+    init_stack();
+    init_token();
+    init_errors();
+    init_mixin_metadata();
+    init_literal_string();
+    init_stack_trace();
+    init_debug();
+    CFN_ELEMENT_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnElement");
+    CfnElement = class extends import_constructs23.Construct {
+      /**
+       * Returns `true` if a construct is a stack element (i.e. part of the
+       * synthesized cloudformation template).
+       *
+       * Uses duck-typing instead of `instanceof` to allow stack elements from different
+       * versions of this library to be included in the same stack.
+       *
+       * @returns The construct as a stack element or undefined if it is not a stack element.
+       */
+      static isCfnElement(x) {
+        return CFN_ELEMENT_SYMBOL in x;
+      }
+      /**
+       * The logical ID for this CloudFormation stack element. The logical ID of the element
+       * is calculated from the path of the resource node in the construct tree.
+       *
+       * To override this value, use `overrideLogicalId(newLogicalId)`.
+       *
+       * @returns the logical ID as a stringified token. This value will only get
+       * resolved during synthesis.
+       */
+      logicalId;
+      /**
+       * The stack in which this element is defined. CfnElements must be defined within a stack scope (directly or indirectly).
+       */
+      stack;
+      /**
+       * An explicit logical ID provided by `overrideLogicalId`.
+       */
+      _logicalIdOverride;
+      /**
+       * If the logicalId is locked then it can no longer be overridden.
+       * This is needed for cases where the logicalId is consumed prior to synthesis
+       * (i.e. Stack.exportValue).
+       */
+      _logicalIdLocked;
+      /**
+       * Creates an entity and binds it to a tree.
+       * Note that the root of the tree must be a Stack object (not just any Root).
+       *
+       * @param scope The parent construct
+       * @param props Construct properties
+       */
+      constructor(scope, id) {
+        super(scope, id);
+        Object.defineProperty(this, CFN_ELEMENT_SYMBOL, { value: true });
+        this.stack = Stack.of(this);
+        this.logicalId = Lazy.uncachedString({ produce: () => this._synthesizeLogicalId() }, {
+          displayHint: `${notTooLong(import_constructs23.Node.of(this).path)}.LogicalID`
+        });
+        if (!this.node.tryGetContext(DISABLE_LOGICAL_ID_METADATA)) {
+          import_constructs23.Node.of(this).addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.LOGICAL_ID, this.logicalId);
+        }
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      /**
+       * Overrides the auto-generated logical ID with a specific ID.
+       * @param newLogicalId The new logical ID to use for this stack element.
+       */
+      overrideLogicalId(newLogicalId) {
+        if (this._logicalIdLocked) {
+          throw new ValidationError(lit`LogicalIdLocked`, `The logicalId for resource at path ${import_constructs23.Node.of(this).path} has been locked and cannot be overridden
+Make sure you are calling "overrideLogicalId" before Stack.exportValue`, this);
+        } else {
+          this._logicalIdOverride = newLogicalId;
+        }
+      }
+      /**
+       * Lock the logicalId of the element and do not allow
+       * any updates (e.g. via overrideLogicalId)
+       *
+       * This is needed in cases where you are consuming the LogicalID
+       * of an element prior to synthesis and you need to not allow future
+       * changes to the id since doing so would cause the value you just
+       * consumed to differ from the synth time value of the logicalId.
+       *
+       * For example:
+       *
+       * const bucket = new Bucket(stack, 'Bucket');
+       * stack.exportValue(bucket.bucketArn) <--- consuming the logicalId
+       * bucket.overrideLogicalId('NewLogicalId') <--- updating logicalId
+       *
+       * You should most likely never need to use this method, and if
+       * you are implementing a feature that requires this, make sure
+       * you actually require it.
+       *
+       * @internal
+       */
+      _lockLogicalId() {
+        this._logicalIdLocked = true;
+      }
+      /**
+       * @returns the stack trace of the point where this Resource was created from, sourced
+       *      from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
+       *      node +internal+ entries filtered.
+       */
+      get creationStack() {
+        const trace = import_constructs23.Node.of(this).metadata.find((md) => md.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK)?.data;
+        return trace ?? [];
+      }
+      /**
+       * Called during synthesize to render the logical ID of this element. If
+       * `overrideLogicalId` was it will be used, otherwise, we will allocate the
+       * logical ID through the stack.
+       *
+       * @internal
+       */
+      _synthesizeLogicalId() {
+        if (this._logicalIdOverride) {
+          return this._logicalIdOverride;
+        } else {
+          return this.stack.getLogicalId(this);
+        }
+      }
+    };
+    CfnRefElement = class extends CfnElement {
+      /**
+       * Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
+       *
+       * If, by any chance, the intrinsic reference of a resource is not a string, you could
+       * coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
+       */
+      get ref() {
+        return Token.asString(CfnReference.for(this, "Ref"));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource.ts
+function splitOnPeriods(x) {
+  const ret = [""];
+  for (let i = 0; i < x.length; i++) {
+    if (x[i] === "\\" && i + 1 < x.length) {
+      ret[0] += x[i + 1];
+      i++;
+    } else if (x[i] === ".") {
+      ret.unshift("");
+    } else {
+      ret[0] += x[i];
+    }
+  }
+  ret.reverse();
+  return ret;
+}
+function traceProperty(node, propertyName) {
+  if (debugModeEnabled()) {
+    node.addMetadata(cxschema.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT, {
+      propertyName,
+      stackTrace: captureStackTrace(traceProperty)
+    });
+  }
+}
+var cxschema, CfnResource;
+var init_cfn_resource = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource.ts"() {
+    "use strict";
+    cxschema = __toESM(require_lib2());
+    init_annotations();
+    init_cfn_element();
+    init_cfn_resource_policy();
+    init_deps();
+    init_cfn_reference();
+    init_removal_policy();
+    init_debug();
+    init_tag_manager();
+    init_util();
+    init_feature_flags();
+    init_cx_api();
+    init_errors();
+    init_deep_merge();
+    init_literal_string();
+    init_stack_trace();
+    init_stack();
+    init_core_construct_finders();
+    CfnResource = class _CfnResource extends CfnRefElement {
+      /**
+       * Check whether the given object is a CfnResource
+       */
+      static isCfnResource(x) {
+        return isCfnResource(x);
+      }
+      // MAINTAINERS NOTE: this class serves as the base class for the generated L1
+      // ("CFN") resources (such as `s3.CfnBucket`). These resources will have a
+      // property for each CloudFormation property of the resource. This means that
+      // if at some point in the future a property is introduced with a name similar
+      // to one of the properties here, it will be "masked" by the derived class. To
+      // that end, we prefix all properties in this class with `cfnXxx` with the
+      // hope to avoid those conflicts in the future.
+      /**
+       * Options for this resource, such as condition, update policy etc.
+       */
+      cfnOptions = {};
+      /**
+       * AWS resource type.
+       */
+      cfnResourceType;
+      /**
+       * AWS CloudFormation resource properties.
+       *
+       * This object is returned via cfnProperties
+       * @internal
+       */
+      _cfnProperties;
+      /**
+       * An object to be merged on top of the entire resource definition.
+       */
+      rawOverrides = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      /**
+       * Logical IDs of dependencies.
+       *
+       * Is filled during prepare().
+       */
+      dependsOn;
+      _crossStackReferenceStrength;
+      cfnPropertyNames = {};
+      /**
+       * Creates a resource construct.
+       * @param cfnResourceType The CloudFormation type of this resource (e.g. AWS::DynamoDB::Table)
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (!props.type) {
+          throw new ValidationError(lit`IsRequiredPropertyRequired`, "The `type` property is required", this);
+        }
+        this.cfnResourceType = props.type;
+        this._cfnProperties = props.properties || {};
+        if (this.node.tryGetContext(PATH_METADATA_ENABLE_CONTEXT)) {
+          this.addMetadata(import_cloud_assembly_api.PATH_METADATA_KEY, this.node.path);
+        }
+      }
+      get env() {
+        return {
+          account: this.stack.account,
+          region: this.stack.region
+        };
+      }
+      /**
+       * Sets the deletion policy of the resource based on the removal policy specified.
+       *
+       * The Removal Policy controls what happens to this resource when it stops
+       * being managed by CloudFormation, either because you've removed it from the
+       * CDK application or because you've made a change that requires the resource
+       * to be replaced.
+       *
+       * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
+       * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
+       * cases, a snapshot can be taken of the resource prior to deletion
+       * (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
+       * can be found in the following link:
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
+       */
+      applyRemovalPolicy(policy, options = {}) {
+        policy = policy || options.default || "retain" /* RETAIN */;
+        let deletionPolicy;
+        let updateReplacePolicy;
+        switch (policy) {
+          case "destroy" /* DESTROY */:
+            deletionPolicy = "Delete" /* DELETE */;
+            updateReplacePolicy = "Delete" /* DELETE */;
+            break;
+          case "retain" /* RETAIN */:
+            deletionPolicy = "Retain" /* RETAIN */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "retain-on-update-or-delete" /* RETAIN_ON_UPDATE_OR_DELETE */:
+            deletionPolicy = "RetainExceptOnCreate" /* RETAIN_EXCEPT_ON_CREATE */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "snapshot" /* SNAPSHOT */:
+            const snapshottableResourceTypes = [
+              "AWS::DocDB::DBCluster",
+              "AWS::EC2::Volume",
+              "AWS::ElastiCache::CacheCluster",
+              "AWS::ElastiCache::ReplicationGroup",
+              "AWS::Neptune::DBCluster",
+              "AWS::RDS::DBCluster",
+              "AWS::RDS::DBInstance",
+              "AWS::Redshift::Cluster"
+            ];
+            const problematicSnapshotPolicy = !snapshottableResourceTypes.includes(this.cfnResourceType);
+            if (problematicSnapshotPolicy) {
+              if (FeatureFlags.of(this).isEnabled(VALIDATE_SNAPSHOT_REMOVAL_POLICY)) {
+                throw new ValidationError(lit`SnapshotRemovalNotSupported`, `${this.cfnResourceType} does not support snapshot removal policy`, this);
+              } else {
+                Annotations.of(this).addWarningV2(`@aws-cdk/core:${this.cfnResourceType}SnapshotRemovalPolicyIgnored`, `${this.cfnResourceType} does not support snapshot removal policy. This policy will be ignored.`);
+              }
+            }
+            deletionPolicy = "Snapshot" /* SNAPSHOT */;
+            updateReplacePolicy = "Snapshot" /* SNAPSHOT */;
+            break;
+          default:
+            throw new ValidationError(lit`InvalidRemovalPolicy`, `Invalid removal policy: ${policy}`, this);
+        }
+        this.cfnOptions.deletionPolicy = deletionPolicy;
+        if (options.applyToUpdateReplacePolicy !== false) {
+          this.cfnOptions.updateReplacePolicy = updateReplacePolicy;
+        }
+      }
+      /**
+       * Sets the cross-stack reference strength for this resource.
+       *
+       * When set, any cross-stack reference to this resource will use the specified
+       * strength instead of the global default from the consuming stack's context.
+       *
+       * @param strength - The reference strength to use for this resource.
+       */
+      applyCrossStackReferenceStrength(strength) {
+        this._crossStackReferenceStrength = strength;
+      }
+      /**
+       * @internal
+       */
+      get _crossStackReferenceStrengthOverride() {
+        return this._crossStackReferenceStrength;
+      }
+      /**
+       * Returns a token for an runtime attribute of this resource.
+       * Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
+       * in case there is no generated attribute.
+       * @param attributeName The name of the attribute.
+       */
+      getAtt(attributeName, typeHint) {
+        return CfnReference.for(this, attributeName, void 0, typeHint);
+      }
+      /**
+       * Adds an override to the synthesized CloudFormation resource. To add a
+       * property override, either use `addPropertyOverride` or prefix `path` with
+       * "Properties." (i.e. `Properties.TopicName`).
+       *
+       * If the override is nested, separate each nested level using a dot (.) in the path parameter.
+       * If there is an array as part of the nesting, specify the index in the path.
+       *
+       * To include a literal `.` in the property name, prefix with a `\`. In most
+       * programming languages you will need to write this as `"\\."` because the
+       * `\` itself will need to be escaped.
+       *
+       * For example,
+       * ```typescript
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
+       * ```
+       * would add the overrides
+       * ```json
+       * "Properties": {
+       *   "GlobalSecondaryIndexes": [
+       *     {
+       *       "Projection": {
+       *         "NonKeyAttributes": [ "myattribute" ]
+       *         ...
+       *       }
+       *       ...
+       *     },
+       *     {
+       *       "ProjectionType": "INCLUDE"
+       *       ...
+       *     },
+       *   ]
+       *   ...
+       * }
+       * ```
+       *
+       * The `value` argument to `addOverride` will not be processed or translated
+       * in any way. Pass raw JSON values in here with the correct capitalization
+       * for CloudFormation. If you pass CDK classes or structs, they will be
+       * rendered with lowercased key names, and CloudFormation will reject the
+       * template.
+       *
+       * @param path - The path of the property, you can use dot notation to
+       *        override values in complex types. Any intermediate keys
+       *        will be created as needed.
+       * @param value - The value. Could be primitive or complex.
+       */
+      addOverride(path23, value) {
+        const parts = splitOnPeriods(path23);
+        let curr = this.rawOverrides;
+        while (parts.length > 1) {
+          const key = parts.shift();
+          const isObject = curr[key] != null && typeof curr[key] === "object" && !Array.isArray(curr[key]);
+          if (!isObject) {
+            curr[key] = /* @__PURE__ */ Object.create(null);
+          }
+          curr = curr[key];
+        }
+        const lastKey = parts.shift();
+        curr[lastKey] = value;
+      }
+      /**
+       * Syntactic sugar for `addOverride(path, undefined)`.
+       * @param path The path of the value to delete
+       */
+      addDeletionOverride(path23) {
+        this.addOverride(path23, void 0);
+      }
+      /**
+       * Adds an override to a resource property.
+       *
+       * Syntactic sugar for `addOverride("Properties.<...>", value)`.
+       *
+       * @param propertyPath The path of the property
+       * @param value The value
+       */
+      addPropertyOverride(propertyPath, value) {
+        const parts = splitOnPeriods(propertyPath);
+        traceProperty(this.node, parts[0]);
+        this.addOverride(`Properties.${propertyPath}`, value);
+      }
+      /**
+       * Adds an override that deletes the value of a property from the resource definition.
+       * @param propertyPath The path to the property.
+       */
+      addPropertyDeletionOverride(propertyPath) {
+        this.addPropertyOverride(propertyPath, void 0);
+      }
+      cfnPropertyName(cdkPropertyName) {
+        return this.cfnPropertyNames[cdkPropertyName];
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method has been renamed to `addResourceDependency`, which makes it
+       * more clear that this method operates at a different level from the
+       * construct-level `construct.node.addDependency()` mechanism.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependsOn(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method only adds dependencies between L1 resources. If you are
+       * looking for a generic construct-to-construct dependency mechanism that works
+       * for all constructs including L2s, use `construct.node.addDependency` instead.
+       */
+      addResourceDependency(target, reason) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addResourceDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This method has been renamed to `addResourceDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependency(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       */
+      removeResourceDependency(target) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "remove",
+          source: this,
+          target
+        });
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       *
+       * @deprecated Use `removeResourceDependency` instead
+       */
+      removeDependency(target) {
+        return this.removeResourceDependency(target);
+      }
+      /**
+       * Retrieves an array of resources and stacks this resource depends on.
+       *
+       * For resources depended on directly, returns the `CfnResource` object. For
+       * dependencies on other stacks, returns the `Stack` object. The order of the
+       * array is not guaranteed.
+       */
+      obtainDependencies() {
+        const ret = [];
+        ret.push(...this._directResourceDependencies());
+        let stack = Stack.of(this);
+        while (stack) {
+          ret.push(...stack._stackDependenciesCausedBy(this).filter((x) => STACK_TYPE.isMarked(x) || _CfnResource.isCfnResource(x)));
+          stack = stack.nestedStackParent;
+        }
+        return ret;
+      }
+      /**
+       * Replaces one dependency with another.
+       * @param target The dependency to replace
+       * @param newTarget The new dependency to add
+       */
+      replaceDependency(target, newTarget) {
+        if (this.obtainDependencies().includes(target)) {
+          this.removeResourceDependency(target);
+          this.addResourceDependency(newTarget);
+        } else {
+          throw new ValidationError(lit`CannotReplaceDependency`, `"${this.node.path}" does not depend on "${target.node.path}"`, this);
+        }
+      }
+      /**
+       * Add a value to the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      addMetadata(key, value) {
+        if (!this.cfnOptions.metadata) {
+          this.cfnOptions.metadata = {};
+        }
+        this.cfnOptions.metadata[key] = value;
+      }
+      /**
+       * Retrieve a value value from the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      getMetadata(key) {
+        return this.cfnOptions.metadata?.[key];
+      }
+      /**
+       * @returns a string representation of this resource
+       */
+      toString() {
+        return `${super.toString()} [${this.cfnResourceType}]`;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two resources.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addResourceDependency(target) {
+        if (!this.dependsOn) {
+          this.dependsOn = /* @__PURE__ */ new Set();
+        }
+        this.dependsOn.add(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Get a shallow copy of dependencies between this resource and other resources
+       * in the same stack.
+       *
+       * @internal
+       */
+      _directResourceDependencies() {
+        return Array.from(this.dependsOn?.values() ?? []);
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two resources.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeResourceDependency(target) {
+        this.dependsOn?.delete(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Emits CloudFormation for this resource.
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.shouldSynthesize()) {
+          return {};
+        }
+        try {
+          const ret = {
+            Resources: {
+              // Post-Resolve operation since otherwise deepMerge is going to mix values into
+              // the Token objects returned by ignoreEmpty.
+              [this.logicalId]: new PostResolveToken({
+                Type: this.cfnResourceType,
+                Properties: ignoreEmpty(this.cfnProperties),
+                DependsOn: ignoreEmpty(renderDependsOn(this.dependsOn)),
+                CreationPolicy: capitalizePropertyNames(this, renderCreationPolicy(this.cfnOptions.creationPolicy)),
+                UpdatePolicy: capitalizePropertyNames(this, this.cfnOptions.updatePolicy),
+                UpdateReplacePolicy: capitalizePropertyNames(this, this.cfnOptions.updateReplacePolicy),
+                DeletionPolicy: capitalizePropertyNames(this, this.cfnOptions.deletionPolicy),
+                Version: this.cfnOptions.version,
+                Description: this.cfnOptions.description,
+                Metadata: ignoreEmpty(this.cfnOptions.metadata),
+                Condition: this.cfnOptions.condition && this.cfnOptions.condition.logicalId
+              }, (resourceDef, context) => {
+                const renderedProps = this.renderProperties(resourceDef.Properties || {});
+                if (renderedProps) {
+                  const hasDefined = Object.values(renderedProps).find((v) => v !== void 0);
+                  resourceDef.Properties = hasDefined !== void 0 ? renderedProps : void 0;
+                }
+                const resolvedRawOverrides = context.resolve(this.rawOverrides, {
+                  // we need to preserve the empty elements here,
+                  // as that's how removing overrides are represented as
+                  removeEmpty: false
+                });
+                return deepMerge(resourceDef, resolvedRawOverrides);
+              })
+            }
+          };
+          return ret;
+        } catch (e) {
+          e.message = `While synthesizing ${this.node.path}: ${e.message}`;
+          const trace = this.creationStack;
+          if (trace) {
+            const creationStack = ["--- resource created at ---", ...trace].join("\n  at ");
+            const problemTrace = e.stack.slice(e.stack.indexOf(e.message) + e.message.length);
+            e.stack = `${e.message}
+  ${creationStack}
+  --- problem discovered at ---${problemTrace}`;
+          }
+          throw e;
+        }
+        function renderDependsOn(dependsOn) {
+          if (!dependsOn) {
+            return [];
+          }
+          return Array.from(dependsOn).filter((r) => r.shouldSynthesize()).sort((x, y) => x.node.path.localeCompare(y.node.path)).map((r) => r.logicalId);
+        }
+        function renderCreationPolicy(policy) {
+          if (!policy) {
+            return void 0;
+          }
+          const result = { ...policy };
+          if (policy.resourceSignal && policy.resourceSignal.timeout) {
+            result.resourceSignal = policy.resourceSignal;
+          }
+          return result;
+        }
+      }
+      get cfnProperties() {
+        const props = this._cfnProperties || {};
+        const tagMgr = TagManager.of(this);
+        if (tagMgr) {
+          const tagsProp = {};
+          tagsProp[tagMgr.tagPropertyName] = tagMgr.renderTags();
+          return deepMerge(props, tagsProp);
+        }
+        return props;
+      }
+      renderProperties(props) {
+        return props;
+      }
+      /**
+       * Deprecated
+       * @deprecated use `updatedProperties`
+       *
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperites() {
+        return this.updatedProperties;
+      }
+      /**
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperties() {
+        return this._cfnProperties;
+      }
+      validateProperties(_properties) {
+      }
+      /**
+       * Can be overridden by subclasses to determine if this resource will be rendered
+       * into the cloudformation template.
+       *
+       * @returns `true` if the resource should be included or `false` is the resource
+       * should be omitted.
+       */
+      shouldSynthesize() {
+        return true;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-manager.ts
+function TAG_FORMATTERS() {
+  return _tagFormattersCache ?? (_tagFormattersCache = {
+    ["AutoScalingGroupTag" /* AUTOSCALING_GROUP */]: new AsgFormatter(),
+    ["StandardTag" /* STANDARD */]: new StandardFormatter(),
+    ["StringToStringMap" /* MAP */]: new MapFormatter(),
+    ["KeyValue" /* KEY_VALUE */]: new KeyValueFormatter(),
+    ["NotTaggable" /* NOT_TAGGABLE */]: new NoFormat()
+  });
+}
+var TAG_MANAGER_SYM, StandardFormatter, AsgFormatter, MapFormatter, KeyValueFormatter, NoFormat, _tagFormattersCache, TagManager;
+var init_tag_manager = __esm({
+  "../../aws-cdk-lib/core/lib/tag-manager.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_lazy();
+    init_literal_string();
+    init_token();
+    TAG_MANAGER_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TagManager");
+    StandardFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value
+          });
+        }
+        return cfnTags;
+      }
+    };
+    AsgFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value, propagateAtLaunch} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0 || tag.propagateAtLaunch === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority,
+              applyToLaunchedInstances: !!tag.propagateAtLaunch
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value,
+            propagateAtLaunch: tag.applyToLaunchedInstances !== false
+          });
+        }
+        return cfnTags;
+      }
+    };
+    MapFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (Array.isArray(cfnPropertyTags) || typeof cfnPropertyTags !== "object") {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedMap`, `Invalid tag input expected map of {key: value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        for (const [key, value] of Object.entries(cfnPropertyTags)) {
+          tags.push({
+            key,
+            value: `${value}`,
+            priority
+          });
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(tags) {
+        const cfnTags = {};
+        for (const tag of tags) {
+          cfnTags[`${tag.key}`] = `${tag.value}`;
+        }
+        return cfnTags;
+      }
+    };
+    KeyValueFormatter = class {
+      parseTags(keyValueTags, priority) {
+        const tags = [];
+        for (const key in keyValueTags) {
+          if (keyValueTags.hasOwnProperty(key)) {
+            const value = keyValueTags[key];
+            tags.push({
+              key,
+              value,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(unformattedTags) {
+        const tags = [];
+        unformattedTags.forEach((tag) => {
+          tags.push({
+            Key: tag.key,
+            Value: tag.value
+          });
+        });
+        return tags;
+      }
+    };
+    NoFormat = class {
+      parseTags(_cfnPropertyTags) {
+        return { tags: [], dynamicTags: void 0 };
+      }
+      formatTags(_tags) {
+        return void 0;
+      }
+    };
+    TagManager = class _TagManager {
+      /**
+       * Check whether the given construct is Taggable
+       */
+      static isTaggable(construct) {
+        const tags = construct.tags;
+        return tags !== void 0 && tags !== null && typeof tags === "object" && tags[TAG_MANAGER_SYM];
+      }
+      /**
+       * Check whether the given construct is ITaggableV2
+       */
+      static isTaggableV2(construct) {
+        return construct.cdkTagManager !== void 0;
+      }
+      /**
+       * Return the TagManager associated with the given construct, if any
+       */
+      static of(construct) {
+        return _TagManager.isTaggableV2(construct) ? construct.cdkTagManager : _TagManager.isTaggable(construct) ? construct.tags : void 0;
+      }
+      /**
+       * The property name for tag values
+       *
+       * Normally this is `tags` but some resources choose a different name. Cognito
+       * UserPool uses UserPoolTags
+       */
+      tagPropertyName;
+      /**
+       * A lazy value that represents the rendered tags at synthesis time
+       *
+       * If you need to make a custom construct taggable, use the value of this
+       * property to pass to the `tags` property of the underlying construct.
+       */
+      renderedTags;
+      tags = /* @__PURE__ */ new Map();
+      dynamicTags;
+      priorities = /* @__PURE__ */ new Map();
+      tagFormatter;
+      resourceTypeName;
+      externalTagPriority = 50;
+      didHaveInitialTags;
+      constructor(tagType, resourceTypeName, initialTags, options = {}) {
+        this.resourceTypeName = resourceTypeName;
+        this.tagFormatter = TAG_FORMATTERS()[tagType];
+        this.tagPropertyName = options.tagPropertyName || "tags";
+        this.parseExternalTags(initialTags);
+        this.didHaveInitialTags = initialTags !== void 0;
+        this.renderedTags = Lazy.any({ produce: () => this.renderTags() });
+      }
+      /**
+       * Adds the specified tag to the array of tags
+       *
+       */
+      setTag(key, value, priority = 0, applyToLaunchedInstances = true) {
+        this._setTag({ key, value, priority, applyToLaunchedInstances });
+      }
+      /**
+       * Removes the specified tag from the array if it exists
+       *
+       * @param key The tag to remove
+       * @param priority The priority of the remove operation
+       */
+      removeTag(key, priority) {
+        if (priority >= (this.priorities.get(key) || 0)) {
+          this.tags.delete(key);
+          this.priorities.set(key, priority);
+        }
+      }
+      /**
+       * Renders tags into the proper format based on TagType
+       *
+       * This method will eagerly render the tags currently applied. In
+       * most cases, you should be using `tagManager.renderedTags` instead,
+       * which will return a `Lazy` value that will resolve to the correct
+       * tags at synthesis time.
+       */
+      renderTags(combineWithTags) {
+        if (combineWithTags !== void 0 && this.didHaveInitialTags) {
+          throw new UnscopedValidationError(lit`SpecifyExternalTagsEither`, "Specify external tags either during the creation of TagManager, or as a parameter to renderTags(), but not both");
+        }
+        this.parseExternalTags(combineWithTags);
+        const formattedTags = this.tagFormatter.formatTags(this.sortedTags);
+        if (isResolvableObject(this.dynamicTags)) {
+          if (this.tags.size > 0) {
+            throw new UnscopedValidationError(
+              lit`CombineTagsIntrinsicWithLiteral`,
+              "Cannot combine literal tags with a Tags property that is a single unresolved intrinsic (e.g. Fn::If). Remove the literal tags or resolve the intrinsic at the property level."
+            );
+          }
+          return this.dynamicTags;
+        }
+        if (Array.isArray(formattedTags) || Array.isArray(this.dynamicTags)) {
+          const ret = [...formattedTags ?? [], ...this.dynamicTags ?? []];
+          return ret.length > 0 ? ret : void 0;
+        } else {
+          const ret = { ...formattedTags ?? {}, ...this.dynamicTags ?? {} };
+          return Object.keys(ret).length > 0 ? ret : void 0;
+        }
+      }
+      /**
+       * Render the tags in a readable format
+       */
+      tagValues() {
+        const ret = {};
+        for (const tag of this.sortedTags) {
+          ret[tag.key] = tag.value;
+        }
+        return ret;
+      }
+      /**
+       * Determine if the aspect applies here
+       *
+       * Looks at the include and exclude resourceTypeName arrays to determine if
+       * the aspect applies here
+       */
+      applyTagAspectHere(include, exclude) {
+        if (exclude && exclude.length > 0 && exclude.indexOf(this.resourceTypeName) !== -1) {
+          return false;
+        }
+        if (include && include.length > 0 && include.indexOf(this.resourceTypeName) === -1) {
+          return false;
+        }
+        return true;
+      }
+      /**
+       * Returns true if there are any tags defined
+       */
+      hasTags() {
+        return this.tags.size > 0;
+      }
+      _setTag(...tags) {
+        for (const tag of tags) {
+          if (tag.priority >= (this.priorities.get(tag.key) || 0)) {
+            this.tags.set(tag.key, tag);
+            this.priorities.set(tag.key, tag.priority);
+          }
+        }
+      }
+      get sortedTags() {
+        return Array.from(this.tags.values()).sort((a, b) => a.key.localeCompare(b.key));
+      }
+      /**
+       * Parse external tags.
+       *
+       * Set the parseable ones into this tag manager. Save the rest (tokens, lazies) in `this.dynamicTags`.
+       */
+      parseExternalTags(initialTags) {
+        if (initialTags !== void 0) {
+          if (isResolvableObject(initialTags)) {
+            this.dynamicTags = initialTags;
+            return;
+          }
+          const parseTagsResult = this.tagFormatter.parseTags(initialTags, this.externalTagPriority);
+          this.dynamicTags = parseTagsResult.dynamicTags;
+          this._setTag(...parseTagsResult.tags);
+        }
+      }
+    };
+    TagManager.prototype[TAG_MANAGER_SYM] = true;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-aspect.ts
+var init_tag_aspect = __esm({
+  "../../aws-cdk-lib/core/lib/tag-aspect.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_errors();
+    init_feature_flags();
+    init_cx_api();
+    init_aspect_prio();
+    init_literal_string();
+    init_tag_manager();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/selectors.ts
+var ConstructSelector, AllConstructsSelector, CfnResourceSelector, ResourceTypeSelector, minimatch3, IdPatternSelector, OnlyItselfSelector;
+var init_selectors = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/selectors.ts"() {
+    "use strict";
+    init_cfn_resource();
+    ConstructSelector = class {
+      /**
+       * Selects all constructs in the tree.
+       */
+      static all() {
+        return new AllConstructsSelector();
+      }
+      /**
+       * Selects CfnResource constructs or the default CfnResource child.
+       */
+      static cfnResource() {
+        return new CfnResourceSelector();
+      }
+      /**
+       * Selects only the provided construct.
+       */
+      static onlyItself() {
+        return new OnlyItselfSelector();
+      }
+      /**
+       * Selects constructs of a specific type.
+       */
+      static resourcesOfType(...types2) {
+        return new ResourceTypeSelector(types2);
+      }
+      /**
+       * Selects constructs whose construct IDs match a pattern.
+       * Uses glob like matching.
+       */
+      static byId(pattern) {
+        return new IdPatternSelector(pattern, "id");
+      }
+      /**
+       * Selects constructs whose construct paths match a pattern.
+       * Uses glob like matching.
+       */
+      static byPath(pattern) {
+        return new IdPatternSelector(pattern, "path");
+      }
+    };
+    AllConstructsSelector = class {
+      select(scope) {
+        return scope.node.findAll();
+      }
+    };
+    CfnResourceSelector = class {
+      select(scope) {
+        if (CfnResource.isCfnResource(scope)) {
+          return [scope];
+        }
+        const defaultChild = scope.node.defaultChild;
+        if (CfnResource.isCfnResource(defaultChild)) {
+          return [defaultChild];
+        }
+        return [];
+      }
+    };
+    ResourceTypeSelector = class {
+      constructor(types2) {
+        this.types = types2;
+      }
+      types;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (CfnResource.isCfnResource(node) && this.types.includes(node.cfnResourceType)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    ({ minimatch: minimatch3 } = require_commonjs3());
+    IdPatternSelector = class {
+      constructor(pattern, field) {
+        this.pattern = pattern;
+        this.field = field;
+      }
+      pattern;
+      field;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (minimatch3(node.node[this.field], this.pattern)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    OnlyItselfSelector = class {
+      select(scope) {
+        return [scope];
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/applicator.ts
+var _selectedConstructs_dec, _init10, MixinApplicator;
+var init_applicator = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/applicator.ts"() {
+    "use strict";
+    init_errors();
+    init_mixin_metadata();
+    init_selectors();
+    init_helpers_internal();
+    init_literal_string();
+    _selectedConstructs_dec = [memoizedGetter];
+    MixinApplicator = class {
+      constructor(scope, selector = ConstructSelector.all()) {
+        __runInitializers(_init10, 5, this);
+        __publicField(this, "scope");
+        __publicField(this, "selector");
+        __publicField(this, "applications", []);
+        __publicField(this, "expectAll", false);
+        __publicField(this, "expectAny", false);
+        this.scope = scope;
+        this.selector = selector;
+      }
+      get selectedConstructs() {
+        return this.selector.select(this.scope);
+      }
+      /**
+       * Returns the successful mixin applications.
+       */
+      get report() {
+        return this.applications;
+      }
+      /**
+       * Applies a mixin to selected constructs.
+       */
+      apply(...mixins) {
+        const applications = [];
+        const allConstructs = Array.from(this.selectedConstructs);
+        for (const mixin of mixins) {
+          for (const construct of allConstructs) {
+            if (mixin.supports(construct)) {
+              applyMixin(construct, mixin);
+              applications.push({ construct, mixin });
+            } else if (this.expectAll) {
+              throw new ValidationError(lit`Mixin`, `Mixin ${mixin.constructor.name} could not be applied to ${construct.constructor.name} but was required to.`, this.scope);
+            }
+          }
+        }
+        if (this.expectAny && applications.length <= 0) {
+          throw new ValidationError(lit`LeastOneMixinApplicationRequired`, "At least one mixin application was required, but none of the provided mixins could be applied to any selected construct.", this.scope);
+        }
+        this.applications.push(...applications);
+        return this;
+      }
+      /**
+       * Requires all selected constructs to support the applied mixins.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAll()
+       *   .apply(new MyMixin());
+       */
+      requireAll() {
+        this.expectAll = true;
+        return this;
+      }
+      /**
+       * Requires at least one mixin to be successfully applied.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAny()
+       *   .apply(new MyMixin());
+       */
+      requireAny() {
+        this.expectAny = true;
+        return this;
+      }
+    };
+    _init10 = __decoratorStart(null);
+    __decorateElement(_init10, 2, "selectedConstructs", _selectedConstructs_dec, MixinApplicator);
+    __decoratorMetadata(_init10, MixinApplicator);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/mixins.ts
+var init_mixins = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/mixins.ts"() {
+    "use strict";
+    init_applicator();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/shims.ts
+var init_shims = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/shims.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/index.ts
+var init_mixins2 = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/index.ts"() {
+    "use strict";
+    init_mixins();
+    init_selectors();
+    init_applicator();
+    init_property_merge_strategy();
+    init_shims();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-hook.ts
+var init_cfn_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-hook.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts
+var init_cfn_codedeploy_blue_green_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts"() {
+    "use strict";
+    init_cfn_hook();
+    init_errors();
+    init_literal_string();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-include.ts
+var init_cfn_include = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-include.ts"() {
+    "use strict";
+    init_cfn_element();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-tag.ts
+var init_cfn_tag = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-tag.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-json.ts
+var import_constructs24;
+var init_cfn_json = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-json.ts"() {
+    "use strict";
+    import_constructs24 = __toESM(require_lib4());
+    init_custom_resource();
+    init_cfn_utils_provider();
+    init_consts();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/removal-policies.ts
+var init_removal_policies = __esm({
+  "../../aws-cdk-lib/core/lib/removal-policies.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_cfn_resource();
+    init_aspect_prio();
+    init_removal_policy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bitrate.ts
+var BitrateUnit;
+var init_bitrate = __esm({
+  "../../aws-cdk-lib/core/lib/bitrate.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    BitrateUnit = class _BitrateUnit {
+      constructor(label, inBps) {
+        this.label = label;
+        this.inBps = inBps;
+      }
+      label;
+      inBps;
+      static Bps = new _BitrateUnit("bps", 1);
+      static Kbps = new _BitrateUnit("kbps", 1e3);
+      static Mbps = new _BitrateUnit("mbps", 1e6);
+      static Gbps = new _BitrateUnit("gbps", 1e9);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/expiration.ts
+var init_expiration = __esm({
+  "../../aws-cdk-lib/core/lib/expiration.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/environment.ts
+var init_environment = __esm({
+  "../../aws-cdk-lib/core/lib/environment.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/runtime.ts
+var ValidationResult, ValidationResults, VALIDATION_SUCCESS, CfnSynthesisError;
+var init_runtime = __esm({
+  "../../aws-cdk-lib/core/lib/runtime.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    ValidationResult = class _ValidationResult {
+      constructor(errorMessage = "", results = new ValidationResults()) {
+        this.errorMessage = errorMessage;
+        this.results = results;
+      }
+      errorMessage;
+      results;
+      get isSuccess() {
+        return !this.errorMessage && this.results.isSuccess;
+      }
+      /**
+       * Turn a failed validation into an exception
+       */
+      assertSuccess() {
+        if (!this.isSuccess) {
+          let message = this.errorTree();
+          message = message.slice(0, 1).toUpperCase() + message.slice(1);
+          throw new CfnSynthesisError(message);
+        }
+      }
+      /**
+       * Return a string rendering of the tree of validation failures
+       */
+      errorTree() {
+        const childMessages = this.results.errorTreeList();
+        return this.errorMessage + (childMessages.length ? `
+  ${childMessages.replace(/\n/g, "\n  ")}` : "");
+      }
+      /**
+       * Wrap this result with an error message, if it concerns an error
+       */
+      prefix(message) {
+        if (this.isSuccess) {
+          return this;
+        }
+        return new _ValidationResult(`${message}: ${this.errorMessage}`, this.results);
+      }
+    };
+    ValidationResults = class {
+      constructor(results = []) {
+        this.results = results;
+      }
+      results;
+      collect(result) {
+        if (!result.isSuccess) {
+          this.results.push(result);
+        }
+      }
+      get isSuccess() {
+        return this.results.every((x) => x.isSuccess);
+      }
+      errorTreeList() {
+        return this.results.map((child) => child.errorTree()).join("\n");
+      }
+      /**
+       * Wrap up all validation results into a single tree node
+       *
+       * If there are failures in the collection, add a message, otherwise
+       * return a success.
+       */
+      wrap(message) {
+        if (this.isSuccess) {
+          return VALIDATION_SUCCESS;
+        }
+        return new ValidationResult(message, this);
+      }
+    };
+    VALIDATION_SUCCESS = new ValidationResult();
+    CfnSynthesisError = class extends Error {
+      type = "CfnSynthesisError";
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/secret-value.ts
+var SecretValue, SECRET_VALUE_SYM;
+var init_secret_value = __esm({
+  "../../aws-cdk-lib/core/lib/secret-value.ts"() {
+    "use strict";
+    init_cfn_dynamic_reference();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_cfn_reference();
+    init_intrinsic();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+    SecretValue = class _SecretValue extends Intrinsic {
+      /**
+       * Test whether an object is a SecretValue
+       */
+      static isSecretValue(x) {
+        return typeof x === "object" && x && SECRET_VALUE_SYM in x;
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The only reasonable use case for using this method is when you are testing.
+       *
+       * @deprecated Use `unsafePlainText()` instead.
+       */
+      static plainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The primary use case for using this method is when you are testing.
+       *
+       * The other use case where this is appropriate is when constructing a JSON secret.
+       * For example, a JSON secret might have multiple fields where only some are actual
+       * secret values.
+       *
+       * @example
+       * declare const secret: SecretValue;
+       * const jsonSecret = {
+       *   username: SecretValue.unsafePlainText('myUsername'),
+       *   password: secret,
+       * };
+       */
+      static unsafePlainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Creates a `SecretValue` with a value which is dynamically loaded from AWS Secrets Manager.
+       *
+       * If you rotate the value in the Secret, you must also change at least one property
+       * on the resource where you are using the secret, to force CloudFormation to re-read the secret.
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static secretsManager(secretId, options = {}) {
+        const dyref = new CfnDynamicReference("secretsmanager" /* SECRETS_MANAGER */, _SecretValue.cfnDynamicReferenceKey(secretId, options));
+        return this.cfnDynamicReference(dyref);
+      }
+      /**
+       * Returns a key which can be used within an AWS CloudFormation dynamic reference to dynamically load a
+       * secret from AWS Secrets Manager
+       *
+       * @see https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static cfnDynamicReferenceKey(secretId, options = {}) {
+        if (!secretId) {
+          throw new UnscopedValidationError(lit`SecretIdCannotBeEmpty`, "secretId cannot be empty");
+        }
+        if (!Token.isUnresolved(secretId) && !secretId.startsWith("arn:") && secretId.includes(":")) {
+          throw new UnscopedValidationError(lit`SecretIdContainsColon`, `secret id "${secretId}" is not an ARN but contains ":"`);
+        }
+        if (options.versionStage && options.versionId) {
+          throw new UnscopedValidationError(lit`VersionStageAndVersionIdBothProvided`, `versionStage: '${options.versionStage}' and versionId: '${options.versionId}' were both provided but only one is allowed`);
+        }
+        const parts = [
+          secretId,
+          "SecretString",
+          options.jsonField || "",
+          options.versionStage || "",
+          options.versionId || ""
+        ];
+        return parts.join(":");
+      }
+      /**
+       * Use a secret value stored from a Systems Manager (SSM) parameter.
+       *
+       * This secret source in only supported in a limited set of resources and
+       * properties. [Click here for the list of supported
+       * properties](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html#template-parameters-dynamic-patterns-resources).
+       *
+       * @param parameterName The name of the parameter in the Systems Manager
+       * Parameter Store. The parameter name is case-sensitive.
+       *
+       * @param version An integer that specifies the version of the parameter to
+       * use. If you don't specify the exact version, AWS CloudFormation uses the
+       * latest version of the parameter.
+       */
+      static ssmSecure(parameterName, version3) {
+        return this.cfnDynamicReference(
+          new CfnDynamicReference(
+            "ssm-secure" /* SSM_SECURE */,
+            version3 ? `${parameterName}:${version3}` : parameterName
+          )
+        );
+      }
+      /**
+       * Obtain the secret value through a CloudFormation dynamic reference.
+       *
+       * If possible, use `SecretValue.ssmSecure` or `SecretValue.secretsManager` directly.
+       *
+       * @param ref The dynamic reference to use.
+       */
+      static cfnDynamicReference(ref) {
+        return new _SecretValue(ref);
+      }
+      /**
+       * Obtain the secret value through a CloudFormation parameter.
+       *
+       * Generally, this is not a recommended approach. AWS Secrets Manager is the
+       * recommended way to reference secrets.
+       *
+       * @param param The CloudFormation parameter to use.
+       */
+      static cfnParameter(param) {
+        if (!param.noEcho) {
+          throw new UnscopedValidationError(lit`CloudFormationParameterMustHaveNoEcho`, 'CloudFormation parameter must be configured with "NoEcho"');
+        }
+        return new _SecretValue(param.value);
+      }
+      /**
+       * Use a resource's output as secret value
+       */
+      static resourceAttribute(attr) {
+        const resolved = Tokenization.reverseCompleteString(attr);
+        if (!resolved || !CfnReference.isCfnReference(resolved) || !CfnResource.isCfnResource(resolved.target)) {
+          throw new UnscopedValidationError(lit`SecretValueMustUseResourceAttribute`, "SecretValue.resourceAttribute() must be used with a resource attribute");
+        }
+        return new _SecretValue(attr);
+      }
+      rawValue;
+      /**
+       * Construct a SecretValue (do not use!)
+       *
+       * Do not use the constructor directly: use one of the factory functions on the class
+       * instead.
+       */
+      constructor(protectedValue, options) {
+        super(protectedValue, options);
+        this.rawValue = protectedValue;
+      }
+      /**
+       * Disable usage protection on this secret
+       *
+       * Call this to indicate that you want to use the secret value held by this
+       * object in an unchecked way. If you don't call this method, using the secret
+       * value directly in a string context or as a property value somewhere will
+       * produce an error.
+       *
+       * This method has 'unsafe' in the name on purpose! Make sure that the
+       * construct property you are using the returned value in is does not end up
+       * in a place in your AWS infrastructure where it could be read by anyone
+       * unexpected.
+       *
+       * When in doubt, don't call this method and only pass the object to constructs that
+       * accept `SecretValue` parameters.
+       */
+      unsafeUnwrap() {
+        return Token.asString(this.rawValue);
+      }
+      /**
+       * Resolve the secret
+       *
+       * If the feature flag is not set, resolve as normal. Otherwise, throw a descriptive
+       * error that the usage guard is missing.
+       */
+      resolve(context) {
+        if (FeatureFlags.of(context.scope).isEnabled(CHECK_SECRET_USAGE)) {
+          throw new UnscopedValidationError(
+            lit`SecretValueExposureRisk`,
+            `Synthing a secret value to ${context.documentPath.join("/")}. Using a SecretValue here risks exposing your secret. Only pass SecretValues to constructs that accept a SecretValue property, or call AWS Secrets Manager directly in your runtime code. Call 'secretValue.unsafeUnwrap()' if you understand and accept the risks.`
+          );
+        }
+        return super.resolve(context);
+      }
+    };
+    SECRET_VALUE_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SecretValue");
+    Object.defineProperty(SecretValue.prototype, SECRET_VALUE_SYM, {
+      value: true,
+      configurable: false,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/physical-name.ts
+var PhysicalName;
+var init_physical_name = __esm({
+  "../../aws-cdk-lib/core/lib/physical-name.ts"() {
+    "use strict";
+    init_physical_name_generator();
+    init_token();
+    PhysicalName = class {
+      /**
+       * Use this to automatically generate a physical name for an AWS resource only
+       * if the resource is referenced across environments (account/region).
+       * Otherwise, the name will be allocated during deployment by CloudFormation.
+       *
+       * If you are certain that a resource will be referenced across environments,
+       * you may also specify an explicit physical name for it. This option is
+       * mostly designed for reusable constructs which may or may not be referenced
+       * across environments.
+       */
+      static GENERATE_IF_NEEDED = Token.asString(new GeneratedWhenNeededMarker());
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cloudformation.generated.ts
+var init_cloudformation_generated = __esm({
+  "../../aws-cdk-lib/core/lib/cloudformation.generated.ts"() {
+    "use strict";
+    init_lib3();
+    init_helpers_internal();
+    init_errors();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/nested-stack.ts
+var import_constructs25;
+var init_nested_stack = __esm({
+  "../../aws-cdk-lib/core/lib/nested-stack.ts"() {
+    "use strict";
+    import_constructs25 = __toESM(require_lib4());
+    init_assets();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cloudformation_generated();
+    init_errors();
+    init_box();
+    init_lazy();
+    init_names();
+    init_core_construct_finders();
+    init_removal_policy();
+    init_stack();
+    init_stack_synthesizers();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-capabilities.ts
+var init_cfn_capabilities = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-capabilities.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/eventbridge.ts
+var init_eventbridge = __esm({
+  "../../aws-cdk-lib/core/lib/eventbridge.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/grants.ts
+var init_grants = __esm({
+  "../../aws-cdk-lib/core/lib/grants.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/time-zone.ts
+var TimeZone;
+var init_time_zone = __esm({
+  "../../aws-cdk-lib/core/lib/time-zone.ts"() {
+    "use strict";
+    TimeZone = class _TimeZone {
+      /**
+       *
+       * @param timezoneName The name of the timezone
+       */
+      constructor(timezoneName) {
+        this.timezoneName = timezoneName;
+      }
+      timezoneName;
+      /** IANA Time Zone database entry for Africa/Abidjan.  UTC offset +00:00/+00:00. */
+      static AFRICA_ABIDJAN = new _TimeZone("Africa/Abidjan");
+      /** IANA Time Zone database entry for Africa/Algiers.  UTC offset +01:00/+01:00. */
+      static AFRICA_ALGIERS = new _TimeZone("Africa/Algiers");
+      /** IANA Time Zone database entry for Africa/Bissau.  UTC offset +00:00/+00:00. */
+      static AFRICA_BISSAU = new _TimeZone("Africa/Bissau");
+      /** IANA Time Zone database entry for Africa/Cairo.  UTC offset +02:00/+02:00. */
+      static AFRICA_CAIRO = new _TimeZone("Africa/Cairo");
+      /** IANA Time Zone database entry for Africa/Casablanca.  UTC offset +01:00/+00:00. */
+      static AFRICA_CASABLANCA = new _TimeZone("Africa/Casablanca");
+      /** IANA Time Zone database entry for Africa/Ceuta.  UTC offset +01:00/+02:00. */
+      static AFRICA_CEUTA = new _TimeZone("Africa/Ceuta");
+      /** IANA Time Zone database entry for Africa/El_Aaiun.  UTC offset +01:00/+00:00. */
+      static AFRICA_EL_AAIUN = new _TimeZone("Africa/El_Aaiun");
+      /** IANA Time Zone database entry for Africa/Johannesburg.  UTC offset +02:00/+02:00. */
+      static AFRICA_JOHANNESBURG = new _TimeZone("Africa/Johannesburg");
+      /** IANA Time Zone database entry for Africa/Juba.  UTC offset +02:00/+02:00. */
+      static AFRICA_JUBA = new _TimeZone("Africa/Juba");
+      /** IANA Time Zone database entry for Africa/Khartoum.  UTC offset +02:00/+02:00. */
+      static AFRICA_KHARTOUM = new _TimeZone("Africa/Khartoum");
+      /** IANA Time Zone database entry for Africa/Lagos.  UTC offset +01:00/+01:00. */
+      static AFRICA_LAGOS = new _TimeZone("Africa/Lagos");
+      /** IANA Time Zone database entry for Africa/Maputo.  UTC offset +02:00/+02:00. */
+      static AFRICA_MAPUTO = new _TimeZone("Africa/Maputo");
+      /** IANA Time Zone database entry for Africa/Monrovia.  UTC offset +00:00/+00:00. */
+      static AFRICA_MONROVIA = new _TimeZone("Africa/Monrovia");
+      /** IANA Time Zone database entry for Africa/Nairobi.  UTC offset +03:00/+03:00. */
+      static AFRICA_NAIROBI = new _TimeZone("Africa/Nairobi");
+      /** IANA Time Zone database entry for Africa/Ndjamena.  UTC offset +01:00/+01:00. */
+      static AFRICA_NDJAMENA = new _TimeZone("Africa/Ndjamena");
+      /** IANA Time Zone database entry for Africa/Sao_Tome.  UTC offset +00:00/+00:00. */
+      static AFRICA_SAO_TOME = new _TimeZone("Africa/Sao_Tome");
+      /** IANA Time Zone database entry for Africa/Tripoli.  UTC offset +02:00/+02:00. */
+      static AFRICA_TRIPOLI = new _TimeZone("Africa/Tripoli");
+      /** IANA Time Zone database entry for Africa/Tunis.  UTC offset +01:00/+01:00. */
+      static AFRICA_TUNIS = new _TimeZone("Africa/Tunis");
+      /** IANA Time Zone database entry for Africa/Windhoek.  UTC offset +02:00/+02:00. */
+      static AFRICA_WINDHOEK = new _TimeZone("Africa/Windhoek");
+      /** IANA Time Zone database entry for America/Adak.  UTC offset −10:00/−09:00. */
+      static AMERICA_ADAK = new _TimeZone("America/Adak");
+      /** IANA Time Zone database entry for America/Anchorage.  UTC offset −09:00/−08:00. */
+      static AMERICA_ANCHORAGE = new _TimeZone("America/Anchorage");
+      /** IANA Time Zone database entry for America/Araguaina.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARAGUAINA = new _TimeZone("America/Araguaina");
+      /** IANA Time Zone database entry for America/Argentina/Buenos_Aires.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_BUENOS_AIRES = new _TimeZone("America/Argentina/Buenos_Aires");
+      /** IANA Time Zone database entry for America/Argentina/Catamarca.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CATAMARCA = new _TimeZone("America/Argentina/Catamarca");
+      /** IANA Time Zone database entry for America/Argentina/Cordoba.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CORDOBA = new _TimeZone("America/Argentina/Cordoba");
+      /** IANA Time Zone database entry for America/Argentina/Jujuy.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_JUJUY = new _TimeZone("America/Argentina/Jujuy");
+      /** IANA Time Zone database entry for America/Argentina/La_Rioja.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_LA_RIOJA = new _TimeZone("America/Argentina/La_Rioja");
+      /** IANA Time Zone database entry for America/Argentina/Mendoza.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_MENDOZA = new _TimeZone("America/Argentina/Mendoza");
+      /** IANA Time Zone database entry for America/Argentina/Rio_Gallegos.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_RIO_GALLEGOS = new _TimeZone("America/Argentina/Rio_Gallegos");
+      /** IANA Time Zone database entry for America/Argentina/Salta.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SALTA = new _TimeZone("America/Argentina/Salta");
+      /** IANA Time Zone database entry for America/Argentina/San_Juan.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_JUAN = new _TimeZone("America/Argentina/San_Juan");
+      /** IANA Time Zone database entry for America/Argentina/San_Luis.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_LUIS = new _TimeZone("America/Argentina/San_Luis");
+      /** IANA Time Zone database entry for America/Argentina/Tucuman.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_TUCUMAN = new _TimeZone("America/Argentina/Tucuman");
+      /** IANA Time Zone database entry for America/Argentina/Ushuaia.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_USHUAIA = new _TimeZone("America/Argentina/Ushuaia");
+      /** IANA Time Zone database entry for America/Asuncion.  UTC offset −04:00/−03:00. */
+      static AMERICA_ASUNCION = new _TimeZone("America/Asuncion");
+      /** IANA Time Zone database entry for America/Bahia.  UTC offset −03:00/−03:00. */
+      static AMERICA_BAHIA = new _TimeZone("America/Bahia");
+      /** IANA Time Zone database entry for America/Bahia_Banderas.  UTC offset −06:00/−06:00. */
+      static AMERICA_BAHIA_BANDERAS = new _TimeZone("America/Bahia_Banderas");
+      /** IANA Time Zone database entry for America/Barbados.  UTC offset −04:00/−04:00. */
+      static AMERICA_BARBADOS = new _TimeZone("America/Barbados");
+      /** IANA Time Zone database entry for America/Belem.  UTC offset −03:00/−03:00. */
+      static AMERICA_BELEM = new _TimeZone("America/Belem");
+      /** IANA Time Zone database entry for America/Belize.  UTC offset −06:00/−06:00. */
+      static AMERICA_BELIZE = new _TimeZone("America/Belize");
+      /** IANA Time Zone database entry for America/Boa_Vista.  UTC offset −04:00/−04:00. */
+      static AMERICA_BOA_VISTA = new _TimeZone("America/Boa_Vista");
+      /** IANA Time Zone database entry for America/Bogota.  UTC offset −05:00/−05:00. */
+      static AMERICA_BOGOTA = new _TimeZone("America/Bogota");
+      /** IANA Time Zone database entry for America/Boise.  UTC offset −07:00/−06:00. */
+      static AMERICA_BOISE = new _TimeZone("America/Boise");
+      /** IANA Time Zone database entry for America/Cambridge_Bay.  UTC offset −07:00/−06:00. */
+      static AMERICA_CAMBRIDGE_BAY = new _TimeZone("America/Cambridge_Bay");
+      /** IANA Time Zone database entry for America/Campo_Grande.  UTC offset −04:00/−04:00. */
+      static AMERICA_CAMPO_GRANDE = new _TimeZone("America/Campo_Grande");
+      /** IANA Time Zone database entry for America/Cancun.  UTC offset −05:00/−05:00. */
+      static AMERICA_CANCUN = new _TimeZone("America/Cancun");
+      /** IANA Time Zone database entry for America/Caracas.  UTC offset −04:00/−04:00. */
+      static AMERICA_CARACAS = new _TimeZone("America/Caracas");
+      /** IANA Time Zone database entry for America/Cayenne.  UTC offset −03:00/−03:00. */
+      static AMERICA_CAYENNE = new _TimeZone("America/Cayenne");
+      /** IANA Time Zone database entry for America/Chicago.  UTC offset −06:00/−05:00. */
+      static AMERICA_CHICAGO = new _TimeZone("America/Chicago");
+      /** IANA Time Zone database entry for America/Chihuahua.  UTC offset −06:00/−06:00. */
+      static AMERICA_CHIHUAHUA = new _TimeZone("America/Chihuahua");
+      /** IANA Time Zone database entry for America/Ciudad_Juarez.  UTC offset −07:00/−06:00. */
+      static AMERICA_CIUDAD_JUAREZ = new _TimeZone("America/Ciudad_Juarez");
+      /** IANA Time Zone database entry for America/Costa_Rica.  UTC offset −06:00/−06:00. */
+      static AMERICA_COSTA_RICA = new _TimeZone("America/Costa_Rica");
+      /** IANA Time Zone database entry for America/Cuiaba.  UTC offset −04:00/−04:00. */
+      static AMERICA_CUIABA = new _TimeZone("America/Cuiaba");
+      /** IANA Time Zone database entry for America/Danmarkshavn.  UTC offset +00:00/+00:00. */
+      static AMERICA_DANMARKSHAVN = new _TimeZone("America/Danmarkshavn");
+      /** IANA Time Zone database entry for America/Dawson.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON = new _TimeZone("America/Dawson");
+      /** IANA Time Zone database entry for America/Dawson_Creek.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON_CREEK = new _TimeZone("America/Dawson_Creek");
+      /** IANA Time Zone database entry for America/Denver.  UTC offset −07:00/−06:00. */
+      static AMERICA_DENVER = new _TimeZone("America/Denver");
+      /** IANA Time Zone database entry for America/Detroit.  UTC offset −05:00/−04:00. */
+      static AMERICA_DETROIT = new _TimeZone("America/Detroit");
+      /** IANA Time Zone database entry for America/Edmonton.  UTC offset −07:00/−06:00. */
+      static AMERICA_EDMONTON = new _TimeZone("America/Edmonton");
+      /** IANA Time Zone database entry for America/Eirunepe.  UTC offset −05:00/−05:00. */
+      static AMERICA_EIRUNEPE = new _TimeZone("America/Eirunepe");
+      /** IANA Time Zone database entry for America/El_Salvador.  UTC offset −06:00/−06:00. */
+      static AMERICA_EL_SALVADOR = new _TimeZone("America/El_Salvador");
+      /** IANA Time Zone database entry for America/Fort_Nelson.  UTC offset −07:00/−07:00. */
+      static AMERICA_FORT_NELSON = new _TimeZone("America/Fort_Nelson");
+      /** IANA Time Zone database entry for America/Fortaleza.  UTC offset −03:00/−03:00. */
+      static AMERICA_FORTALEZA = new _TimeZone("America/Fortaleza");
+      /** IANA Time Zone database entry for America/Glace_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GLACE_BAY = new _TimeZone("America/Glace_Bay");
+      /** IANA Time Zone database entry for America/Goose_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GOOSE_BAY = new _TimeZone("America/Goose_Bay");
+      /** IANA Time Zone database entry for America/Grand_Turk.  UTC offset −05:00/−04:00. */
+      static AMERICA_GRAND_TURK = new _TimeZone("America/Grand_Turk");
+      /** IANA Time Zone database entry for America/Guatemala.  UTC offset −06:00/−06:00. */
+      static AMERICA_GUATEMALA = new _TimeZone("America/Guatemala");
+      /** IANA Time Zone database entry for America/Guayaquil.  UTC offset −05:00/−05:00. */
+      static AMERICA_GUAYAQUIL = new _TimeZone("America/Guayaquil");
+      /** IANA Time Zone database entry for America/Guyana.  UTC offset −04:00/−04:00. */
+      static AMERICA_GUYANA = new _TimeZone("America/Guyana");
+      /** IANA Time Zone database entry for America/Halifax.  UTC offset −04:00/−03:00. */
+      static AMERICA_HALIFAX = new _TimeZone("America/Halifax");
+      /** IANA Time Zone database entry for America/Havana.  UTC offset −05:00/−04:00. */
+      static AMERICA_HAVANA = new _TimeZone("America/Havana");
+      /** IANA Time Zone database entry for America/Hermosillo.  UTC offset −07:00/−07:00. */
+      static AMERICA_HERMOSILLO = new _TimeZone("America/Hermosillo");
+      /** IANA Time Zone database entry for America/Indiana/Indianapolis.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_INDIANAPOLIS = new _TimeZone("America/Indiana/Indianapolis");
+      /** IANA Time Zone database entry for America/Indiana/Knox.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_KNOX = new _TimeZone("America/Indiana/Knox");
+      /** IANA Time Zone database entry for America/Indiana/Marengo.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_MARENGO = new _TimeZone("America/Indiana/Marengo");
+      /** IANA Time Zone database entry for America/Indiana/Petersburg.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_PETERSBURG = new _TimeZone("America/Indiana/Petersburg");
+      /** IANA Time Zone database entry for America/Indiana/Tell_City.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_TELL_CITY = new _TimeZone("America/Indiana/Tell_City");
+      /** IANA Time Zone database entry for America/Indiana/Vevay.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VEVAY = new _TimeZone("America/Indiana/Vevay");
+      /** IANA Time Zone database entry for America/Indiana/Vincennes.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VINCENNES = new _TimeZone("America/Indiana/Vincennes");
+      /** IANA Time Zone database entry for America/Indiana/Winamac.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_WINAMAC = new _TimeZone("America/Indiana/Winamac");
+      /** IANA Time Zone database entry for America/Inuvik.  UTC offset −07:00/−06:00. */
+      static AMERICA_INUVIK = new _TimeZone("America/Inuvik");
+      /** IANA Time Zone database entry for America/Iqaluit.  UTC offset −05:00/−04:00. */
+      static AMERICA_IQALUIT = new _TimeZone("America/Iqaluit");
+      /** IANA Time Zone database entry for America/Jamaica.  UTC offset −05:00/−05:00. */
+      static AMERICA_JAMAICA = new _TimeZone("America/Jamaica");
+      /** IANA Time Zone database entry for America/Juneau.  UTC offset −09:00/−08:00. */
+      static AMERICA_JUNEAU = new _TimeZone("America/Juneau");
+      /** IANA Time Zone database entry for America/Kentucky/Louisville.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_LOUISVILLE = new _TimeZone("America/Kentucky/Louisville");
+      /** IANA Time Zone database entry for America/Kentucky/Monticello.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_MONTICELLO = new _TimeZone("America/Kentucky/Monticello");
+      /** IANA Time Zone database entry for America/La_Paz.  UTC offset −04:00/−04:00. */
+      static AMERICA_LA_PAZ = new _TimeZone("America/La_Paz");
+      /** IANA Time Zone database entry for America/Lima.  UTC offset −05:00/−05:00. */
+      static AMERICA_LIMA = new _TimeZone("America/Lima");
+      /** IANA Time Zone database entry for America/Los_Angeles.  UTC offset −08:00/−07:00. */
+      static AMERICA_LOS_ANGELES = new _TimeZone("America/Los_Angeles");
+      /** IANA Time Zone database entry for America/Maceio.  UTC offset −03:00/−03:00. */
+      static AMERICA_MACEIO = new _TimeZone("America/Maceio");
+      /** IANA Time Zone database entry for America/Managua.  UTC offset −06:00/−06:00. */
+      static AMERICA_MANAGUA = new _TimeZone("America/Managua");
+      /** IANA Time Zone database entry for America/Manaus.  UTC offset −04:00/−04:00. */
+      static AMERICA_MANAUS = new _TimeZone("America/Manaus");
+      /** IANA Time Zone database entry for America/Martinique.  UTC offset −04:00/−04:00. */
+      static AMERICA_MARTINIQUE = new _TimeZone("America/Martinique");
+      /** IANA Time Zone database entry for America/Matamoros.  UTC offset −06:00/−05:00. */
+      static AMERICA_MATAMOROS = new _TimeZone("America/Matamoros");
+      /** IANA Time Zone database entry for America/Mazatlan.  UTC offset −07:00/−07:00. */
+      static AMERICA_MAZATLAN = new _TimeZone("America/Mazatlan");
+      /** IANA Time Zone database entry for America/Menominee.  UTC offset −06:00/−05:00. */
+      static AMERICA_MENOMINEE = new _TimeZone("America/Menominee");
+      /** IANA Time Zone database entry for America/Merida.  UTC offset −06:00/−06:00. */
+      static AMERICA_MERIDA = new _TimeZone("America/Merida");
+      /** IANA Time Zone database entry for America/Metlakatla.  UTC offset −09:00/−08:00. */
+      static AMERICA_METLAKATLA = new _TimeZone("America/Metlakatla");
+      /** IANA Time Zone database entry for America/Mexico_City.  UTC offset −06:00/−06:00. */
+      static AMERICA_MEXICO_CITY = new _TimeZone("America/Mexico_City");
+      /** IANA Time Zone database entry for America/Miquelon.  UTC offset −03:00/−02:00. */
+      static AMERICA_MIQUELON = new _TimeZone("America/Miquelon");
+      /** IANA Time Zone database entry for America/Moncton.  UTC offset −04:00/−03:00. */
+      static AMERICA_MONCTON = new _TimeZone("America/Moncton");
+      /** IANA Time Zone database entry for America/Monterrey.  UTC offset −06:00/−06:00. */
+      static AMERICA_MONTERREY = new _TimeZone("America/Monterrey");
+      /** IANA Time Zone database entry for America/Montevideo.  UTC offset −03:00/−03:00. */
+      static AMERICA_MONTEVIDEO = new _TimeZone("America/Montevideo");
+      /** IANA Time Zone database entry for America/New_York.  UTC offset −05:00/−04:00. */
+      static AMERICA_NEW_YORK = new _TimeZone("America/New_York");
+      /** IANA Time Zone database entry for America/Nome.  UTC offset −09:00/−08:00. */
+      static AMERICA_NOME = new _TimeZone("America/Nome");
+      /** IANA Time Zone database entry for America/Noronha.  UTC offset −02:00/−02:00. */
+      static AMERICA_NORONHA = new _TimeZone("America/Noronha");
+      /** IANA Time Zone database entry for America/North_Dakota/Beulah.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_BEULAH = new _TimeZone("America/North_Dakota/Beulah");
+      /** IANA Time Zone database entry for America/North_Dakota/Center.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_CENTER = new _TimeZone("America/North_Dakota/Center");
+      /** IANA Time Zone database entry for America/North_Dakota/New_Salem.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_NEW_SALEM = new _TimeZone("America/North_Dakota/New_Salem");
+      /** IANA Time Zone database entry for America/Nuuk.  UTC offset −03:00/−03:00. */
+      static AMERICA_NUUK = new _TimeZone("America/Nuuk");
+      /** IANA Time Zone database entry for America/Ojinaga.  UTC offset −06:00/−05:00. */
+      static AMERICA_OJINAGA = new _TimeZone("America/Ojinaga");
+      /** IANA Time Zone database entry for America/Panama.  UTC offset −05:00/−05:00. */
+      static AMERICA_PANAMA = new _TimeZone("America/Panama");
+      /** IANA Time Zone database entry for America/Paramaribo.  UTC offset −03:00/−03:00. */
+      static AMERICA_PARAMARIBO = new _TimeZone("America/Paramaribo");
+      /** IANA Time Zone database entry for America/Phoenix.  UTC offset −07:00/−07:00. */
+      static AMERICA_PHOENIX = new _TimeZone("America/Phoenix");
+      /** IANA Time Zone database entry for America/Port-au-Prince.  UTC offset −05:00/−04:00. */
+      static AMERICA_PORT_MINUS_AU_MINUS_PRINCE = new _TimeZone("America/Port-au-Prince");
+      /** IANA Time Zone database entry for America/Porto_Velho.  UTC offset −04:00/−04:00. */
+      static AMERICA_PORTO_VELHO = new _TimeZone("America/Porto_Velho");
+      /** IANA Time Zone database entry for America/Puerto_Rico.  UTC offset −04:00/−04:00. */
+      static AMERICA_PUERTO_RICO = new _TimeZone("America/Puerto_Rico");
+      /** IANA Time Zone database entry for America/Punta_Arenas.  UTC offset −03:00/−03:00. */
+      static AMERICA_PUNTA_ARENAS = new _TimeZone("America/Punta_Arenas");
+      /** IANA Time Zone database entry for America/Rankin_Inlet.  UTC offset −06:00/−05:00. */
+      static AMERICA_RANKIN_INLET = new _TimeZone("America/Rankin_Inlet");
+      /** IANA Time Zone database entry for America/Recife.  UTC offset −03:00/−03:00. */
+      static AMERICA_RECIFE = new _TimeZone("America/Recife");
+      /** IANA Time Zone database entry for America/Regina.  UTC offset −06:00/−06:00. */
+      static AMERICA_REGINA = new _TimeZone("America/Regina");
+      /** IANA Time Zone database entry for America/Resolute.  UTC offset −06:00/−05:00. */
+      static AMERICA_RESOLUTE = new _TimeZone("America/Resolute");
+      /** IANA Time Zone database entry for America/Rio_Branco.  UTC offset −05:00/−05:00. */
+      static AMERICA_RIO_BRANCO = new _TimeZone("America/Rio_Branco");
+      /** IANA Time Zone database entry for America/Santarem.  UTC offset −03:00/−03:00. */
+      static AMERICA_SANTAREM = new _TimeZone("America/Santarem");
+      /** IANA Time Zone database entry for America/Santiago.  UTC offset −04:00/−03:00. */
+      static AMERICA_SANTIAGO = new _TimeZone("America/Santiago");
+      /** IANA Time Zone database entry for America/Santo_Domingo.  UTC offset −04:00/−04:00. */
+      static AMERICA_SANTO_DOMINGO = new _TimeZone("America/Santo_Domingo");
+      /** IANA Time Zone database entry for America/Sao_Paulo.  UTC offset −03:00/−03:00. */
+      static AMERICA_SAO_PAULO = new _TimeZone("America/Sao_Paulo");
+      /** IANA Time Zone database entry for America/Scoresbysund.  UTC offset −01:00/+00:00. */
+      static AMERICA_SCORESBYSUND = new _TimeZone("America/Scoresbysund");
+      /** IANA Time Zone database entry for America/Sitka.  UTC offset −09:00/−08:00. */
+      static AMERICA_SITKA = new _TimeZone("America/Sitka");
+      /** IANA Time Zone database entry for America/St_Johns.  UTC offset −03:30/−02:30. */
+      static AMERICA_ST_JOHNS = new _TimeZone("America/St_Johns");
+      /** IANA Time Zone database entry for America/Swift_Current.  UTC offset −06:00/−06:00. */
+      static AMERICA_SWIFT_CURRENT = new _TimeZone("America/Swift_Current");
+      /** IANA Time Zone database entry for America/Tegucigalpa.  UTC offset −06:00/−06:00. */
+      static AMERICA_TEGUCIGALPA = new _TimeZone("America/Tegucigalpa");
+      /** IANA Time Zone database entry for America/Thule.  UTC offset −04:00/−03:00. */
+      static AMERICA_THULE = new _TimeZone("America/Thule");
+      /** IANA Time Zone database entry for America/Tijuana.  UTC offset −08:00/−07:00. */
+      static AMERICA_TIJUANA = new _TimeZone("America/Tijuana");
+      /** IANA Time Zone database entry for America/Toronto.  UTC offset −05:00/−04:00. */
+      static AMERICA_TORONTO = new _TimeZone("America/Toronto");
+      /** IANA Time Zone database entry for America/Vancouver.  UTC offset −08:00/−07:00. */
+      static AMERICA_VANCOUVER = new _TimeZone("America/Vancouver");
+      /** IANA Time Zone database entry for America/Whitehorse.  UTC offset −07:00/−07:00. */
+      static AMERICA_WHITEHORSE = new _TimeZone("America/Whitehorse");
+      /** IANA Time Zone database entry for America/Winnipeg.  UTC offset −06:00/−05:00. */
+      static AMERICA_WINNIPEG = new _TimeZone("America/Winnipeg");
+      /** IANA Time Zone database entry for America/Yakutat.  UTC offset −09:00/−08:00. */
+      static AMERICA_YAKUTAT = new _TimeZone("America/Yakutat");
+      /** IANA Time Zone database entry for America/Yellowknife.  UTC offset −07:00/−06:00. */
+      static AMERICA_YELLOWKNIFE = new _TimeZone("America/Yellowknife");
+      /** IANA Time Zone database entry for Antarctica/Casey.  UTC offset +11:00/+11:00. */
+      static ANTARCTICA_CASEY = new _TimeZone("Antarctica/Casey");
+      /** IANA Time Zone database entry for Antarctica/Davis.  UTC offset +07:00/+07:00. */
+      static ANTARCTICA_DAVIS = new _TimeZone("Antarctica/Davis");
+      /** IANA Time Zone database entry for Antarctica/Macquarie.  UTC offset +10:00/+11:00. */
+      static ANTARCTICA_MACQUARIE = new _TimeZone("Antarctica/Macquarie");
+      /** IANA Time Zone database entry for Antarctica/Mawson.  UTC offset +05:00/+05:00. */
+      static ANTARCTICA_MAWSON = new _TimeZone("Antarctica/Mawson");
+      /** IANA Time Zone database entry for Antarctica/Palmer.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_PALMER = new _TimeZone("Antarctica/Palmer");
+      /** IANA Time Zone database entry for Antarctica/Rothera.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_ROTHERA = new _TimeZone("Antarctica/Rothera");
+      /** IANA Time Zone database entry for Antarctica/Troll.  UTC offset +00:00/+02:00. */
+      static ANTARCTICA_TROLL = new _TimeZone("Antarctica/Troll");
+      /** IANA Time Zone database entry for Asia/Almaty.  UTC offset +06:00/+06:00. */
+      static ASIA_ALMATY = new _TimeZone("Asia/Almaty");
+      /** IANA Time Zone database entry for Asia/Amman.  UTC offset +03:00/+03:00. */
+      static ASIA_AMMAN = new _TimeZone("Asia/Amman");
+      /** IANA Time Zone database entry for Asia/Anadyr.  UTC offset +12:00/+12:00. */
+      static ASIA_ANADYR = new _TimeZone("Asia/Anadyr");
+      /** IANA Time Zone database entry for Asia/Aqtau.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTAU = new _TimeZone("Asia/Aqtau");
+      /** IANA Time Zone database entry for Asia/Aqtobe.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTOBE = new _TimeZone("Asia/Aqtobe");
+      /** IANA Time Zone database entry for Asia/Ashgabat.  UTC offset +05:00/+05:00. */
+      static ASIA_ASHGABAT = new _TimeZone("Asia/Ashgabat");
+      /** IANA Time Zone database entry for Asia/Atyrau.  UTC offset +05:00/+05:00. */
+      static ASIA_ATYRAU = new _TimeZone("Asia/Atyrau");
+      /** IANA Time Zone database entry for Asia/Baghdad.  UTC offset +03:00/+03:00. */
+      static ASIA_BAGHDAD = new _TimeZone("Asia/Baghdad");
+      /** IANA Time Zone database entry for Asia/Baku.  UTC offset +04:00/+04:00. */
+      static ASIA_BAKU = new _TimeZone("Asia/Baku");
+      /** IANA Time Zone database entry for Asia/Bangkok.  UTC offset +07:00/+07:00. */
+      static ASIA_BANGKOK = new _TimeZone("Asia/Bangkok");
+      /** IANA Time Zone database entry for Asia/Barnaul.  UTC offset +07:00/+07:00. */
+      static ASIA_BARNAUL = new _TimeZone("Asia/Barnaul");
+      /** IANA Time Zone database entry for Asia/Beirut.  UTC offset +02:00/+03:00. */
+      static ASIA_BEIRUT = new _TimeZone("Asia/Beirut");
+      /** IANA Time Zone database entry for Asia/Bishkek.  UTC offset +06:00/+06:00. */
+      static ASIA_BISHKEK = new _TimeZone("Asia/Bishkek");
+      /** IANA Time Zone database entry for Asia/Chita.  UTC offset +09:00/+09:00. */
+      static ASIA_CHITA = new _TimeZone("Asia/Chita");
+      /** IANA Time Zone database entry for Asia/Choibalsan.  UTC offset +08:00/+08:00. */
+      static ASIA_CHOIBALSAN = new _TimeZone("Asia/Choibalsan");
+      /** IANA Time Zone database entry for Asia/Colombo.  UTC offset +05:30/+05:30. */
+      static ASIA_COLOMBO = new _TimeZone("Asia/Colombo");
+      /** IANA Time Zone database entry for Asia/Damascus.  UTC offset +03:00/+03:00. */
+      static ASIA_DAMASCUS = new _TimeZone("Asia/Damascus");
+      /** IANA Time Zone database entry for Asia/Dhaka.  UTC offset +06:00/+06:00. */
+      static ASIA_DHAKA = new _TimeZone("Asia/Dhaka");
+      /** IANA Time Zone database entry for Asia/Dili.  UTC offset +09:00/+09:00. */
+      static ASIA_DILI = new _TimeZone("Asia/Dili");
+      /** IANA Time Zone database entry for Asia/Dubai.  UTC offset +04:00/+04:00. */
+      static ASIA_DUBAI = new _TimeZone("Asia/Dubai");
+      /** IANA Time Zone database entry for Asia/Dushanbe.  UTC offset +05:00/+05:00. */
+      static ASIA_DUSHANBE = new _TimeZone("Asia/Dushanbe");
+      /** IANA Time Zone database entry for Asia/Famagusta.  UTC offset +02:00/+03:00. */
+      static ASIA_FAMAGUSTA = new _TimeZone("Asia/Famagusta");
+      /** IANA Time Zone database entry for Asia/Gaza.  UTC offset +02:00/+03:00. */
+      static ASIA_GAZA = new _TimeZone("Asia/Gaza");
+      /** IANA Time Zone database entry for Asia/Hebron.  UTC offset +02:00/+03:00. */
+      static ASIA_HEBRON = new _TimeZone("Asia/Hebron");
+      /** IANA Time Zone database entry for Asia/Ho_Chi_Minh.  UTC offset +07:00/+07:00. */
+      static ASIA_HO_CHI_MINH = new _TimeZone("Asia/Ho_Chi_Minh");
+      /** IANA Time Zone database entry for Asia/Hong_Kong.  UTC offset +08:00/+08:00. */
+      static ASIA_HONG_KONG = new _TimeZone("Asia/Hong_Kong");
+      /** IANA Time Zone database entry for Asia/Hovd.  UTC offset +07:00/+07:00. */
+      static ASIA_HOVD = new _TimeZone("Asia/Hovd");
+      /** IANA Time Zone database entry for Asia/Irkutsk.  UTC offset +08:00/+08:00. */
+      static ASIA_IRKUTSK = new _TimeZone("Asia/Irkutsk");
+      /** IANA Time Zone database entry for Asia/Jakarta.  UTC offset +07:00/+07:00. */
+      static ASIA_JAKARTA = new _TimeZone("Asia/Jakarta");
+      /** IANA Time Zone database entry for Asia/Jayapura.  UTC offset +09:00/+09:00. */
+      static ASIA_JAYAPURA = new _TimeZone("Asia/Jayapura");
+      /** IANA Time Zone database entry for Asia/Jerusalem.  UTC offset +02:00/+03:00. */
+      static ASIA_JERUSALEM = new _TimeZone("Asia/Jerusalem");
+      /** IANA Time Zone database entry for Asia/Kabul.  UTC offset +04:30/+04:30. */
+      static ASIA_KABUL = new _TimeZone("Asia/Kabul");
+      /** IANA Time Zone database entry for Asia/Kamchatka.  UTC offset +12:00/+12:00. */
+      static ASIA_KAMCHATKA = new _TimeZone("Asia/Kamchatka");
+      /** IANA Time Zone database entry for Asia/Karachi.  UTC offset +05:00/+05:00. */
+      static ASIA_KARACHI = new _TimeZone("Asia/Karachi");
+      /** IANA Time Zone database entry for Asia/Kathmandu.  UTC offset +05:45/+05:45. */
+      static ASIA_KATHMANDU = new _TimeZone("Asia/Kathmandu");
+      /** IANA Time Zone database entry for Asia/Khandyga.  UTC offset +09:00/+09:00. */
+      static ASIA_KHANDYGA = new _TimeZone("Asia/Khandyga");
+      /** IANA Time Zone database entry for Asia/Kolkata.  UTC offset +05:30/+05:30. */
+      static ASIA_KOLKATA = new _TimeZone("Asia/Kolkata");
+      /** IANA Time Zone database entry for Asia/Krasnoyarsk.  UTC offset +07:00/+07:00. */
+      static ASIA_KRASNOYARSK = new _TimeZone("Asia/Krasnoyarsk");
+      /** IANA Time Zone database entry for Asia/Kuching.  UTC offset +08:00/+08:00. */
+      static ASIA_KUCHING = new _TimeZone("Asia/Kuching");
+      /** IANA Time Zone database entry for Asia/Macau.  UTC offset +08:00/+08:00. */
+      static ASIA_MACAU = new _TimeZone("Asia/Macau");
+      /** IANA Time Zone database entry for Asia/Magadan.  UTC offset +11:00/+11:00. */
+      static ASIA_MAGADAN = new _TimeZone("Asia/Magadan");
+      /** IANA Time Zone database entry for Asia/Makassar.  UTC offset +08:00/+08:00. */
+      static ASIA_MAKASSAR = new _TimeZone("Asia/Makassar");
+      /** IANA Time Zone database entry for Asia/Manila.  UTC offset +08:00/+08:00. */
+      static ASIA_MANILA = new _TimeZone("Asia/Manila");
+      /** IANA Time Zone database entry for Asia/Nicosia.  UTC offset +02:00/+03:00. */
+      static ASIA_NICOSIA = new _TimeZone("Asia/Nicosia");
+      /** IANA Time Zone database entry for Asia/Novokuznetsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOKUZNETSK = new _TimeZone("Asia/Novokuznetsk");
+      /** IANA Time Zone database entry for Asia/Novosibirsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOSIBIRSK = new _TimeZone("Asia/Novosibirsk");
+      /** IANA Time Zone database entry for Asia/Omsk.  UTC offset +06:00/+06:00. */
+      static ASIA_OMSK = new _TimeZone("Asia/Omsk");
+      /** IANA Time Zone database entry for Asia/Oral.  UTC offset +05:00/+05:00. */
+      static ASIA_ORAL = new _TimeZone("Asia/Oral");
+      /** IANA Time Zone database entry for Asia/Pontianak.  UTC offset +07:00/+07:00. */
+      static ASIA_PONTIANAK = new _TimeZone("Asia/Pontianak");
+      /** IANA Time Zone database entry for Asia/Pyongyang.  UTC offset +09:00/+09:00. */
+      static ASIA_PYONGYANG = new _TimeZone("Asia/Pyongyang");
+      /** IANA Time Zone database entry for Asia/Qatar.  UTC offset +03:00/+03:00. */
+      static ASIA_QATAR = new _TimeZone("Asia/Qatar");
+      /** IANA Time Zone database entry for Asia/Qostanay.  UTC offset +06:00/+06:00. */
+      static ASIA_QOSTANAY = new _TimeZone("Asia/Qostanay");
+      /** IANA Time Zone database entry for Asia/Qyzylorda.  UTC offset +05:00/+05:00. */
+      static ASIA_QYZYLORDA = new _TimeZone("Asia/Qyzylorda");
+      /** IANA Time Zone database entry for Asia/Riyadh.  UTC offset +03:00/+03:00. */
+      static ASIA_RIYADH = new _TimeZone("Asia/Riyadh");
+      /** IANA Time Zone database entry for Asia/Sakhalin.  UTC offset +11:00/+11:00. */
+      static ASIA_SAKHALIN = new _TimeZone("Asia/Sakhalin");
+      /** IANA Time Zone database entry for Asia/Samarkand.  UTC offset +05:00/+05:00. */
+      static ASIA_SAMARKAND = new _TimeZone("Asia/Samarkand");
+      /** IANA Time Zone database entry for Asia/Seoul.  UTC offset +09:00/+09:00. */
+      static ASIA_SEOUL = new _TimeZone("Asia/Seoul");
+      /** IANA Time Zone database entry for Asia/Shanghai.  UTC offset +08:00/+08:00. */
+      static ASIA_SHANGHAI = new _TimeZone("Asia/Shanghai");
+      /** IANA Time Zone database entry for Asia/Singapore.  UTC offset +08:00/+08:00. */
+      static ASIA_SINGAPORE = new _TimeZone("Asia/Singapore");
+      /** IANA Time Zone database entry for Asia/Srednekolymsk.  UTC offset +11:00/+11:00. */
+      static ASIA_SREDNEKOLYMSK = new _TimeZone("Asia/Srednekolymsk");
+      /** IANA Time Zone database entry for Asia/Taipei.  UTC offset +08:00/+08:00. */
+      static ASIA_TAIPEI = new _TimeZone("Asia/Taipei");
+      /** IANA Time Zone database entry for Asia/Tashkent.  UTC offset +05:00/+05:00. */
+      static ASIA_TASHKENT = new _TimeZone("Asia/Tashkent");
+      /** IANA Time Zone database entry for Asia/Tbilisi.  UTC offset +04:00/+04:00. */
+      static ASIA_TBILISI = new _TimeZone("Asia/Tbilisi");
+      /** IANA Time Zone database entry for Asia/Tehran.  UTC offset +03:30/+03:30. */
+      static ASIA_TEHRAN = new _TimeZone("Asia/Tehran");
+      /** IANA Time Zone database entry for Asia/Thimphu.  UTC offset +06:00/+06:00. */
+      static ASIA_THIMPHU = new _TimeZone("Asia/Thimphu");
+      /** IANA Time Zone database entry for Asia/Tokyo.  UTC offset +09:00/+09:00. */
+      static ASIA_TOKYO = new _TimeZone("Asia/Tokyo");
+      /** IANA Time Zone database entry for Asia/Tomsk.  UTC offset +07:00/+07:00. */
+      static ASIA_TOMSK = new _TimeZone("Asia/Tomsk");
+      /** IANA Time Zone database entry for Asia/Ulaanbaatar.  UTC offset +08:00/+08:00. */
+      static ASIA_ULAANBAATAR = new _TimeZone("Asia/Ulaanbaatar");
+      /** IANA Time Zone database entry for Asia/Urumqi.  UTC offset +06:00/+06:00. */
+      static ASIA_URUMQI = new _TimeZone("Asia/Urumqi");
+      /** IANA Time Zone database entry for Asia/Ust-Nera.  UTC offset +10:00/+10:00. */
+      static ASIA_UST_MINUS_NERA = new _TimeZone("Asia/Ust-Nera");
+      /** IANA Time Zone database entry for Asia/Vladivostok.  UTC offset +10:00/+10:00. */
+      static ASIA_VLADIVOSTOK = new _TimeZone("Asia/Vladivostok");
+      /** IANA Time Zone database entry for Asia/Yakutsk.  UTC offset +09:00/+09:00. */
+      static ASIA_YAKUTSK = new _TimeZone("Asia/Yakutsk");
+      /** IANA Time Zone database entry for Asia/Yangon.  UTC offset +06:30/+06:30. */
+      static ASIA_YANGON = new _TimeZone("Asia/Yangon");
+      /** IANA Time Zone database entry for Asia/Yekaterinburg.  UTC offset +05:00/+05:00. */
+      static ASIA_YEKATERINBURG = new _TimeZone("Asia/Yekaterinburg");
+      /** IANA Time Zone database entry for Asia/Yerevan.  UTC offset +04:00/+04:00. */
+      static ASIA_YEREVAN = new _TimeZone("Asia/Yerevan");
+      /** IANA Time Zone database entry for Atlantic/Azores.  UTC offset −01:00/+00:00. */
+      static ATLANTIC_AZORES = new _TimeZone("Atlantic/Azores");
+      /** IANA Time Zone database entry for Atlantic/Bermuda.  UTC offset −04:00/−03:00. */
+      static ATLANTIC_BERMUDA = new _TimeZone("Atlantic/Bermuda");
+      /** IANA Time Zone database entry for Atlantic/Canary.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_CANARY = new _TimeZone("Atlantic/Canary");
+      /** IANA Time Zone database entry for Atlantic/Cape_Verde.  UTC offset −01:00/−01:00. */
+      static ATLANTIC_CAPE_VERDE = new _TimeZone("Atlantic/Cape_Verde");
+      /** IANA Time Zone database entry for Atlantic/Faroe.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_FAROE = new _TimeZone("Atlantic/Faroe");
+      /** IANA Time Zone database entry for Atlantic/Madeira.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_MADEIRA = new _TimeZone("Atlantic/Madeira");
+      /** IANA Time Zone database entry for Atlantic/South_Georgia.  UTC offset −02:00/−02:00. */
+      static ATLANTIC_SOUTH_GEORGIA = new _TimeZone("Atlantic/South_Georgia");
+      /** IANA Time Zone database entry for Atlantic/Stanley.  UTC offset −03:00/−03:00. */
+      static ATLANTIC_STANLEY = new _TimeZone("Atlantic/Stanley");
+      /** IANA Time Zone database entry for Australia/Adelaide.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_ADELAIDE = new _TimeZone("Australia/Adelaide");
+      /** IANA Time Zone database entry for Australia/Brisbane.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_BRISBANE = new _TimeZone("Australia/Brisbane");
+      /** IANA Time Zone database entry for Australia/Broken_Hill.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_BROKEN_HILL = new _TimeZone("Australia/Broken_Hill");
+      /** IANA Time Zone database entry for Australia/Darwin.  UTC offset +09:30/+09:30. */
+      static AUSTRALIA_DARWIN = new _TimeZone("Australia/Darwin");
+      /** IANA Time Zone database entry for Australia/Eucla.  UTC offset +08:45/+08:45. */
+      static AUSTRALIA_EUCLA = new _TimeZone("Australia/Eucla");
+      /** IANA Time Zone database entry for Australia/Hobart.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_HOBART = new _TimeZone("Australia/Hobart");
+      /** IANA Time Zone database entry for Australia/Lindeman.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_LINDEMAN = new _TimeZone("Australia/Lindeman");
+      /** IANA Time Zone database entry for Australia/Lord_Howe.  UTC offset +10:30/+11:00. */
+      static AUSTRALIA_LORD_HOWE = new _TimeZone("Australia/Lord_Howe");
+      /** IANA Time Zone database entry for Australia/Melbourne.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_MELBOURNE = new _TimeZone("Australia/Melbourne");
+      /** IANA Time Zone database entry for Australia/Perth.  UTC offset +08:00/+08:00. */
+      static AUSTRALIA_PERTH = new _TimeZone("Australia/Perth");
+      /** IANA Time Zone database entry for Australia/Sydney.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_SYDNEY = new _TimeZone("Australia/Sydney");
+      /** IANA Time Zone database entry for CET.  UTC offset +01:00/+02:00. */
+      static CET = new _TimeZone("CET");
+      /** IANA Time Zone database entry for CST6CDT.  UTC offset −06:00/−05:00. */
+      static CST6CDT = new _TimeZone("CST6CDT");
+      /** IANA Time Zone database entry for EET.  UTC offset +02:00/+03:00. */
+      static EET = new _TimeZone("EET");
+      /** IANA Time Zone database entry for EST.  UTC offset −05:00/−05:00. */
+      static EST = new _TimeZone("EST");
+      /** IANA Time Zone database entry for EST5EDT.  UTC offset −05:00/−04:00. */
+      static EST5EDT = new _TimeZone("EST5EDT");
+      /** IANA Time Zone database entry for Etc/GMT.  UTC offset +00:00/+00:00. */
+      static ETC_GMT = new _TimeZone("Etc/GMT");
+      /** IANA Time Zone database entry for Etc/GMT+1.  UTC offset −01:00/−01:00. */
+      static ETC_GMT_PLUS_1 = new _TimeZone("Etc/GMT+1");
+      /** IANA Time Zone database entry for Etc/GMT+10.  UTC offset −10:00/−10:00. */
+      static ETC_GMT_PLUS_10 = new _TimeZone("Etc/GMT+10");
+      /** IANA Time Zone database entry for Etc/GMT+11.  UTC offset −11:00/−11:00. */
+      static ETC_GMT_PLUS_11 = new _TimeZone("Etc/GMT+11");
+      /** IANA Time Zone database entry for Etc/GMT+12.  UTC offset −12:00/−12:00. */
+      static ETC_GMT_PLUS_12 = new _TimeZone("Etc/GMT+12");
+      /** IANA Time Zone database entry for Etc/GMT+2.  UTC offset −02:00/−02:00. */
+      static ETC_GMT_PLUS_2 = new _TimeZone("Etc/GMT+2");
+      /** IANA Time Zone database entry for Etc/GMT+3.  UTC offset −03:00/−03:00. */
+      static ETC_GMT_PLUS_3 = new _TimeZone("Etc/GMT+3");
+      /** IANA Time Zone database entry for Etc/GMT+4.  UTC offset −04:00/−04:00. */
+      static ETC_GMT_PLUS_4 = new _TimeZone("Etc/GMT+4");
+      /** IANA Time Zone database entry for Etc/GMT+5.  UTC offset −05:00/−05:00. */
+      static ETC_GMT_PLUS_5 = new _TimeZone("Etc/GMT+5");
+      /** IANA Time Zone database entry for Etc/GMT+6.  UTC offset −06:00/−06:00. */
+      static ETC_GMT_PLUS_6 = new _TimeZone("Etc/GMT+6");
+      /** IANA Time Zone database entry for Etc/GMT+7.  UTC offset −07:00/−07:00. */
+      static ETC_GMT_PLUS_7 = new _TimeZone("Etc/GMT+7");
+      /** IANA Time Zone database entry for Etc/GMT+8.  UTC offset −08:00/−08:00. */
+      static ETC_GMT_PLUS_8 = new _TimeZone("Etc/GMT+8");
+      /** IANA Time Zone database entry for Etc/GMT+9.  UTC offset −09:00/−09:00. */
+      static ETC_GMT_PLUS_9 = new _TimeZone("Etc/GMT+9");
+      /** IANA Time Zone database entry for Etc/GMT-1.  UTC offset +01:00/+01:00. */
+      static ETC_GMT_MINUS_1 = new _TimeZone("Etc/GMT-1");
+      /** IANA Time Zone database entry for Etc/GMT-10.  UTC offset +10:00/+10:00. */
+      static ETC_GMT_MINUS_10 = new _TimeZone("Etc/GMT-10");
+      /** IANA Time Zone database entry for Etc/GMT-11.  UTC offset +11:00/+11:00. */
+      static ETC_GMT_MINUS_11 = new _TimeZone("Etc/GMT-11");
+      /** IANA Time Zone database entry for Etc/GMT-12.  UTC offset +12:00/+12:00. */
+      static ETC_GMT_MINUS_12 = new _TimeZone("Etc/GMT-12");
+      /** IANA Time Zone database entry for Etc/GMT-13.  UTC offset +13:00/+13:00. */
+      static ETC_GMT_MINUS_13 = new _TimeZone("Etc/GMT-13");
+      /** IANA Time Zone database entry for Etc/GMT-14.  UTC offset +14:00/+14:00. */
+      static ETC_GMT_MINUS_14 = new _TimeZone("Etc/GMT-14");
+      /** IANA Time Zone database entry for Etc/GMT-2.  UTC offset +02:00/+02:00. */
+      static ETC_GMT_MINUS_2 = new _TimeZone("Etc/GMT-2");
+      /** IANA Time Zone database entry for Etc/GMT-3.  UTC offset +03:00/+03:00. */
+      static ETC_GMT_MINUS_3 = new _TimeZone("Etc/GMT-3");
+      /** IANA Time Zone database entry for Etc/GMT-4.  UTC offset +04:00/+04:00. */
+      static ETC_GMT_MINUS_4 = new _TimeZone("Etc/GMT-4");
+      /** IANA Time Zone database entry for Etc/GMT-5.  UTC offset +05:00/+05:00. */
+      static ETC_GMT_MINUS_5 = new _TimeZone("Etc/GMT-5");
+      /** IANA Time Zone database entry for Etc/GMT-6.  UTC offset +06:00/+06:00. */
+      static ETC_GMT_MINUS_6 = new _TimeZone("Etc/GMT-6");
+      /** IANA Time Zone database entry for Etc/GMT-7.  UTC offset +07:00/+07:00. */
+      static ETC_GMT_MINUS_7 = new _TimeZone("Etc/GMT-7");
+      /** IANA Time Zone database entry for Etc/GMT-8.  UTC offset +08:00/+08:00. */
+      static ETC_GMT_MINUS_8 = new _TimeZone("Etc/GMT-8");
+      /** IANA Time Zone database entry for Etc/GMT-9.  UTC offset +09:00/+09:00. */
+      static ETC_GMT_MINUS_9 = new _TimeZone("Etc/GMT-9");
+      /** IANA Time Zone database entry for Etc/UTC.  UTC offset +00:00/+00:00. */
+      static ETC_UTC = new _TimeZone("Etc/UTC");
+      /** IANA Time Zone database entry for Europe/Andorra.  UTC offset +01:00/+02:00. */
+      static EUROPE_ANDORRA = new _TimeZone("Europe/Andorra");
+      /** IANA Time Zone database entry for Europe/Astrakhan.  UTC offset +04:00/+04:00. */
+      static EUROPE_ASTRAKHAN = new _TimeZone("Europe/Astrakhan");
+      /** IANA Time Zone database entry for Europe/Athens.  UTC offset +02:00/+03:00. */
+      static EUROPE_ATHENS = new _TimeZone("Europe/Athens");
+      /** IANA Time Zone database entry for Europe/Belgrade.  UTC offset +01:00/+02:00. */
+      static EUROPE_BELGRADE = new _TimeZone("Europe/Belgrade");
+      /** IANA Time Zone database entry for Europe/Berlin.  UTC offset +01:00/+02:00. */
+      static EUROPE_BERLIN = new _TimeZone("Europe/Berlin");
+      /** IANA Time Zone database entry for Europe/Brussels.  UTC offset +01:00/+02:00. */
+      static EUROPE_BRUSSELS = new _TimeZone("Europe/Brussels");
+      /** IANA Time Zone database entry for Europe/Bucharest.  UTC offset +02:00/+03:00. */
+      static EUROPE_BUCHAREST = new _TimeZone("Europe/Bucharest");
+      /** IANA Time Zone database entry for Europe/Budapest.  UTC offset +01:00/+02:00. */
+      static EUROPE_BUDAPEST = new _TimeZone("Europe/Budapest");
+      /** IANA Time Zone database entry for Europe/Chisinau.  UTC offset +02:00/+03:00. */
+      static EUROPE_CHISINAU = new _TimeZone("Europe/Chisinau");
+      /** IANA Time Zone database entry for Europe/Dublin.  UTC offset +01:00/+00:00. */
+      static EUROPE_DUBLIN = new _TimeZone("Europe/Dublin");
+      /** IANA Time Zone database entry for Europe/Gibraltar.  UTC offset +01:00/+02:00. */
+      static EUROPE_GIBRALTAR = new _TimeZone("Europe/Gibraltar");
+      /** IANA Time Zone database entry for Europe/Helsinki.  UTC offset +02:00/+03:00. */
+      static EUROPE_HELSINKI = new _TimeZone("Europe/Helsinki");
+      /** IANA Time Zone database entry for Europe/Istanbul.  UTC offset +03:00/+03:00. */
+      static EUROPE_ISTANBUL = new _TimeZone("Europe/Istanbul");
+      /** IANA Time Zone database entry for Europe/Kaliningrad.  UTC offset +02:00/+02:00. */
+      static EUROPE_KALININGRAD = new _TimeZone("Europe/Kaliningrad");
+      /** IANA Time Zone database entry for Europe/Kirov.  UTC offset +03:00/+03:00. */
+      static EUROPE_KIROV = new _TimeZone("Europe/Kirov");
+      /** IANA Time Zone database entry for Europe/Kyiv.  UTC offset +02:00/+03:00. */
+      static EUROPE_KYIV = new _TimeZone("Europe/Kyiv");
+      /** IANA Time Zone database entry for Europe/Lisbon.  UTC offset +00:00/+01:00. */
+      static EUROPE_LISBON = new _TimeZone("Europe/Lisbon");
+      /** IANA Time Zone database entry for Europe/London.  UTC offset +00:00/+01:00. */
+      static EUROPE_LONDON = new _TimeZone("Europe/London");
+      /** IANA Time Zone database entry for Europe/Madrid.  UTC offset +01:00/+02:00. */
+      static EUROPE_MADRID = new _TimeZone("Europe/Madrid");
+      /** IANA Time Zone database entry for Europe/Malta.  UTC offset +01:00/+02:00. */
+      static EUROPE_MALTA = new _TimeZone("Europe/Malta");
+      /** IANA Time Zone database entry for Europe/Minsk.  UTC offset +03:00/+03:00. */
+      static EUROPE_MINSK = new _TimeZone("Europe/Minsk");
+      /** IANA Time Zone database entry for Europe/Moscow.  UTC offset +03:00/+03:00. */
+      static EUROPE_MOSCOW = new _TimeZone("Europe/Moscow");
+      /** IANA Time Zone database entry for Europe/Paris.  UTC offset +01:00/+02:00. */
+      static EUROPE_PARIS = new _TimeZone("Europe/Paris");
+      /** IANA Time Zone database entry for Europe/Prague.  UTC offset +01:00/+02:00. */
+      static EUROPE_PRAGUE = new _TimeZone("Europe/Prague");
+      /** IANA Time Zone database entry for Europe/Riga.  UTC offset +02:00/+03:00. */
+      static EUROPE_RIGA = new _TimeZone("Europe/Riga");
+      /** IANA Time Zone database entry for Europe/Rome.  UTC offset +01:00/+02:00. */
+      static EUROPE_ROME = new _TimeZone("Europe/Rome");
+      /** IANA Time Zone database entry for Europe/Samara.  UTC offset +04:00/+04:00. */
+      static EUROPE_SAMARA = new _TimeZone("Europe/Samara");
+      /** IANA Time Zone database entry for Europe/Saratov.  UTC offset +04:00/+04:00. */
+      static EUROPE_SARATOV = new _TimeZone("Europe/Saratov");
+      /** IANA Time Zone database entry for Europe/Simferopol.  UTC offset +03:00/+03:00. */
+      static EUROPE_SIMFEROPOL = new _TimeZone("Europe/Simferopol");
+      /** IANA Time Zone database entry for Europe/Sofia.  UTC offset +02:00/+03:00. */
+      static EUROPE_SOFIA = new _TimeZone("Europe/Sofia");
+      /** IANA Time Zone database entry for Europe/Tallinn.  UTC offset +02:00/+03:00. */
+      static EUROPE_TALLINN = new _TimeZone("Europe/Tallinn");
+      /** IANA Time Zone database entry for Europe/Tirane.  UTC offset +01:00/+02:00. */
+      static EUROPE_TIRANE = new _TimeZone("Europe/Tirane");
+      /** IANA Time Zone database entry for Europe/Ulyanovsk.  UTC offset +04:00/+04:00. */
+      static EUROPE_ULYANOVSK = new _TimeZone("Europe/Ulyanovsk");
+      /** IANA Time Zone database entry for Europe/Vienna.  UTC offset +01:00/+02:00. */
+      static EUROPE_VIENNA = new _TimeZone("Europe/Vienna");
+      /** IANA Time Zone database entry for Europe/Vilnius.  UTC offset +02:00/+03:00. */
+      static EUROPE_VILNIUS = new _TimeZone("Europe/Vilnius");
+      /** IANA Time Zone database entry for Europe/Volgograd.  UTC offset +03:00/+03:00. */
+      static EUROPE_VOLGOGRAD = new _TimeZone("Europe/Volgograd");
+      /** IANA Time Zone database entry for Europe/Warsaw.  UTC offset +01:00/+02:00. */
+      static EUROPE_WARSAW = new _TimeZone("Europe/Warsaw");
+      /** IANA Time Zone database entry for Europe/Zurich.  UTC offset +01:00/+02:00. */
+      static EUROPE_ZURICH = new _TimeZone("Europe/Zurich");
+      /** IANA Time Zone database entry for Factory.  UTC offset +00:00/+00:00. */
+      static FACTORY = new _TimeZone("Factory");
+      /** IANA Time Zone database entry for HST.  UTC offset −10:00/−10:00. */
+      static HST = new _TimeZone("HST");
+      /** IANA Time Zone database entry for Indian/Chagos.  UTC offset +06:00/+06:00. */
+      static INDIAN_CHAGOS = new _TimeZone("Indian/Chagos");
+      /** IANA Time Zone database entry for Indian/Maldives.  UTC offset +05:00/+05:00. */
+      static INDIAN_MALDIVES = new _TimeZone("Indian/Maldives");
+      /** IANA Time Zone database entry for Indian/Mauritius.  UTC offset +04:00/+04:00. */
+      static INDIAN_MAURITIUS = new _TimeZone("Indian/Mauritius");
+      /** IANA Time Zone database entry for MET.  UTC offset +01:00/+02:00. */
+      static MET = new _TimeZone("MET");
+      /** IANA Time Zone database entry for MST.  UTC offset −07:00/−07:00. */
+      static MST = new _TimeZone("MST");
+      /** IANA Time Zone database entry for MST7MDT.  UTC offset −07:00/−06:00. */
+      static MST7MDT = new _TimeZone("MST7MDT");
+      /** IANA Time Zone database entry for Pacific/Apia.  UTC offset +13:00/+13:00. */
+      static PACIFIC_APIA = new _TimeZone("Pacific/Apia");
+      /** IANA Time Zone database entry for Pacific/Auckland.  UTC offset +12:00/+13:00. */
+      static PACIFIC_AUCKLAND = new _TimeZone("Pacific/Auckland");
+      /** IANA Time Zone database entry for Pacific/Bougainville.  UTC offset +11:00/+11:00. */
+      static PACIFIC_BOUGAINVILLE = new _TimeZone("Pacific/Bougainville");
+      /** IANA Time Zone database entry for Pacific/Chatham.  UTC offset +12:45/+13:45. */
+      static PACIFIC_CHATHAM = new _TimeZone("Pacific/Chatham");
+      /** IANA Time Zone database entry for Pacific/Easter.  UTC offset −06:00/−05:00. */
+      static PACIFIC_EASTER = new _TimeZone("Pacific/Easter");
+      /** IANA Time Zone database entry for Pacific/Efate.  UTC offset +11:00/+11:00. */
+      static PACIFIC_EFATE = new _TimeZone("Pacific/Efate");
+      /** IANA Time Zone database entry for Pacific/Fakaofo.  UTC offset +13:00/+13:00. */
+      static PACIFIC_FAKAOFO = new _TimeZone("Pacific/Fakaofo");
+      /** IANA Time Zone database entry for Pacific/Fiji.  UTC offset +12:00/+12:00. */
+      static PACIFIC_FIJI = new _TimeZone("Pacific/Fiji");
+      /** IANA Time Zone database entry for Pacific/Galapagos.  UTC offset −06:00/−06:00. */
+      static PACIFIC_GALAPAGOS = new _TimeZone("Pacific/Galapagos");
+      /** IANA Time Zone database entry for Pacific/Gambier.  UTC offset −09:00/−09:00. */
+      static PACIFIC_GAMBIER = new _TimeZone("Pacific/Gambier");
+      /** IANA Time Zone database entry for Pacific/Guadalcanal.  UTC offset +11:00/+11:00. */
+      static PACIFIC_GUADALCANAL = new _TimeZone("Pacific/Guadalcanal");
+      /** IANA Time Zone database entry for Pacific/Guam.  UTC offset +10:00/+10:00. */
+      static PACIFIC_GUAM = new _TimeZone("Pacific/Guam");
+      /** IANA Time Zone database entry for Pacific/Honolulu.  UTC offset −10:00/−10:00. */
+      static PACIFIC_HONOLULU = new _TimeZone("Pacific/Honolulu");
+      /** IANA Time Zone database entry for Pacific/Kanton.  UTC offset +13:00/+13:00. */
+      static PACIFIC_KANTON = new _TimeZone("Pacific/Kanton");
+      /** IANA Time Zone database entry for Pacific/Kiritimati.  UTC offset +14:00/+14:00. */
+      static PACIFIC_KIRITIMATI = new _TimeZone("Pacific/Kiritimati");
+      /** IANA Time Zone database entry for Pacific/Kosrae.  UTC offset +11:00/+11:00. */
+      static PACIFIC_KOSRAE = new _TimeZone("Pacific/Kosrae");
+      /** IANA Time Zone database entry for Pacific/Kwajalein.  UTC offset +12:00/+12:00. */
+      static PACIFIC_KWAJALEIN = new _TimeZone("Pacific/Kwajalein");
+      /** IANA Time Zone database entry for Pacific/Marquesas.  UTC offset −09:30/−09:30. */
+      static PACIFIC_MARQUESAS = new _TimeZone("Pacific/Marquesas");
+      /** IANA Time Zone database entry for Pacific/Nauru.  UTC offset +12:00/+12:00. */
+      static PACIFIC_NAURU = new _TimeZone("Pacific/Nauru");
+      /** IANA Time Zone database entry for Pacific/Niue.  UTC offset −11:00/−11:00. */
+      static PACIFIC_NIUE = new _TimeZone("Pacific/Niue");
+      /** IANA Time Zone database entry for Pacific/Norfolk.  UTC offset +11:00/+12:00. */
+      static PACIFIC_NORFOLK = new _TimeZone("Pacific/Norfolk");
+      /** IANA Time Zone database entry for Pacific/Noumea.  UTC offset +11:00/+11:00. */
+      static PACIFIC_NOUMEA = new _TimeZone("Pacific/Noumea");
+      /** IANA Time Zone database entry for Pacific/Pago_Pago.  UTC offset −11:00/−11:00. */
+      static PACIFIC_PAGO_PAGO = new _TimeZone("Pacific/Pago_Pago");
+      /** IANA Time Zone database entry for Pacific/Palau.  UTC offset +09:00/+09:00. */
+      static PACIFIC_PALAU = new _TimeZone("Pacific/Palau");
+      /** IANA Time Zone database entry for Pacific/Pitcairn.  UTC offset −08:00/−08:00. */
+      static PACIFIC_PITCAIRN = new _TimeZone("Pacific/Pitcairn");
+      /** IANA Time Zone database entry for Pacific/Port_Moresby.  UTC offset +10:00/+10:00. */
+      static PACIFIC_PORT_MORESBY = new _TimeZone("Pacific/Port_Moresby");
+      /** IANA Time Zone database entry for Pacific/Rarotonga.  UTC offset −10:00/−10:00. */
+      static PACIFIC_RAROTONGA = new _TimeZone("Pacific/Rarotonga");
+      /** IANA Time Zone database entry for Pacific/Tahiti.  UTC offset −10:00/−10:00. */
+      static PACIFIC_TAHITI = new _TimeZone("Pacific/Tahiti");
+      /** IANA Time Zone database entry for Pacific/Tarawa.  UTC offset +12:00/+12:00. */
+      static PACIFIC_TARAWA = new _TimeZone("Pacific/Tarawa");
+      /** IANA Time Zone database entry for Pacific/Tongatapu.  UTC offset +13:00/+13:00. */
+      static PACIFIC_TONGATAPU = new _TimeZone("Pacific/Tongatapu");
+      /** IANA Time Zone database entry for PST8PDT.  UTC offset −08:00/−07:00. */
+      static PST8PDT = new _TimeZone("PST8PDT");
+      /** IANA Time Zone database entry for WET.  UTC offset +00:00/+01:00. */
+      static WET = new _TimeZone("WET");
+      /**
+       * Use this to add a timezone not in this class.
+       *
+       * @param timezoneName the name of the timezone
+       * @returns a new Timezone
+       */
+      static of(timezoneName) {
+        return new _TimeZone(timezoneName);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/index.ts
+var init_lib3 = __esm({
+  "../../aws-cdk-lib/core/lib/index.ts"() {
+    "use strict";
+    init_aspect();
+    init_tag_aspect();
+    init_mixins2();
+    init_token();
+    init_resolvable();
+    init_type_hints();
+    init_lazy();
+    init_prop_injectors();
+    init_tag_manager();
+    init_string_fragments();
+    init_stack_synthesizers();
+    init_reference();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_hook();
+    init_cfn_codedeploy_blue_green_hook();
+    init_cfn_include();
+    init_cfn_mapping();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_cfn_resource_policy();
+    init_cfn_rule();
+    init_stack();
+    init_stage();
+    init_cfn_element();
+    init_cfn_dynamic_reference();
+    init_cfn_tag();
+    init_cfn_json();
+    init_removal_policy();
+    init_removal_policies();
+    init_cross_stack_reference_strength();
+    init_arn();
+    init_duration();
+    init_bitrate();
+    init_expiration();
+    init_size();
+    init_errors();
+    init_app2();
+    init_context_provider();
+    init_environment();
+    init_annotations();
+    init_runtime();
+    init_secret_value();
+    init_resource();
+    init_physical_name();
+    init_assets();
+    init_tree();
+    init_asset_staging2();
+    init_bundling();
+    init_fs();
+    init_custom_resource();
+    init_nested_stack();
+    init_custom_resource_provider2();
+    init_cfn_capabilities();
+    init_cloudformation_generated();
+    init_feature_flags();
+    init_permissions_boundary();
+    init_validation2();
+    init_eventbridge();
+    init_grants();
+    init_intrinsic();
+    init_names();
+    init_time_zone();
+  }
+});
+
+// ../../aws-cdk-lib/core/index.ts
+var init_core = __esm({
+  "../../aws-cdk-lib/core/index.ts"() {
+    "use strict";
+    init_lib3();
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts
+var assembly_validation_report_exports = {};
+__export(assembly_validation_report_exports, {
+  AssemblyValidationReport: () => AssemblyValidationReport
+});
+function getBooleanContext2(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+var fs18, path22, AssemblyValidationReport, APP_INIT_HOOK_SYMBOL2;
+var init_assembly_validation_report = __esm({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts"() {
+    "use strict";
+    fs18 = __toESM(require("fs"));
+    path22 = __toESM(require("path"));
+    init_core();
+    init_literal_string();
+    init_cx_api();
+    init_match();
+    init_error();
+    AssemblyValidationReport = class _AssemblyValidationReport {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      /**
+       * During testing, create an App() with this as `postCliContext` in order to be able to use `AssemblyValidationReport.fromApp(app)`.
+       */
+      static APP_CONTEXT = {
+        [FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT]: false,
+        [STRICT_CFN_VALIDATE_ERRORS]: false
+      };
+      /**
+       * Disable the test suppressions that are automatically applied to all tests via the global App init hook (jest-global-app-testhook.ts).
+       *
+       * Returns a function that must be called to restore the global App init hook to its previous state.
+       */
+      static disableTestSuppressions() {
+        const previousAppHook = globalThis[APP_INIT_HOOK_SYMBOL2];
+        globalThis[APP_INIT_HOOK_SYMBOL2] = () => {
+        };
+        return () => {
+          globalThis[APP_INIT_HOOK_SYMBOL2] = previousAppHook;
+        };
+      }
+      /**
+       * Synthesize the given app and return its validation report.
+       */
+      static fromApp(app) {
+        if (getBooleanContext2(app, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true) || getBooleanContext2(app, STRICT_CFN_VALIDATE_ERRORS, false)) {
+          throw new AssumptionError(lit`MissingAppContext`, "In order to assert on validations with AssemblyValidationReport, create your App with { postCliContext: AssemblyValidationReport.APP_CONTEXT }");
+        }
+        const asm = app.synth();
+        const newFile = path22.join(asm.directory, "validation-report.json");
+        const newReport = JSON.parse(fs18.readFileSync(newFile, "utf-8"));
+        return new _AssemblyValidationReport(newReport);
+      }
+      pluginReport(pluginName) {
+        const report = this.report.pluginReports.find((r) => r.pluginName === pluginName);
+        if (!report) {
+          throw new AssertionError(`No report found for plugin ${pluginName}`);
+        }
+        return report;
+      }
+      /**
+       * All violations in all reports
+       */
+      allViolations() {
+        return this.report.pluginReports.flatMap((r) => r.violations);
+      }
+      hasViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (r.hasFailed()) {
+          throw new AssertionError("Expected policy violation not found:\n" + r.renderMismatch());
+        }
+      }
+      hasNoViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (!r.hasFailed()) {
+          throw new AssertionError("Expected no policy violations, but found:\n" + JSON.stringify(this.allViolations(), void 0, 2));
+        }
+      }
+    };
+    APP_INIT_HOOK_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/index.js
+var require_helpers_internal = __commonJS({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m)
+        if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p))
+          __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var _noFold;
+    exports2.Match = void 0;
+    Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, get: () => {
+      var value = (init_match(), __toCommonJS(match_exports)).Match;
+      Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.Matcher = void 0;
+    Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).Matcher;
+      Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.MatchResult = void 0;
+    Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).MatchResult;
+      Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.AssemblyValidationReport = void 0;
+    Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, get: () => {
+      var value = (init_assembly_validation_report(), __toCommonJS(assembly_validation_report_exports)).AssemblyValidationReport;
+      Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+  }
+});
+
+// ../../../node_modules/@smithy/types/dist-cjs/index.js
+var require_dist_cjs = __commonJS({
+  "../../../node_modules/@smithy/types/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AlgorithmId: () => AlgorithmId,
+      EndpointURLScheme: () => EndpointURLScheme,
+      FieldPosition: () => FieldPosition,
+      HttpApiKeyAuthLocation: () => HttpApiKeyAuthLocation2,
+      HttpAuthLocation: () => HttpAuthLocation,
+      IniSectionType: () => IniSectionType,
+      RequestHandlerProtocol: () => RequestHandlerProtocol,
+      SMITHY_CONTEXT_KEY: () => SMITHY_CONTEXT_KEY4,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var HttpAuthLocation = /* @__PURE__ */ ((HttpAuthLocation2) => {
+      HttpAuthLocation2["HEADER"] = "header";
+      HttpAuthLocation2["QUERY"] = "query";
+      return HttpAuthLocation2;
+    })(HttpAuthLocation || {});
+    var HttpApiKeyAuthLocation2 = /* @__PURE__ */ ((HttpApiKeyAuthLocation22) => {
+      HttpApiKeyAuthLocation22["HEADER"] = "header";
+      HttpApiKeyAuthLocation22["QUERY"] = "query";
+      return HttpApiKeyAuthLocation22;
+    })(HttpApiKeyAuthLocation2 || {});
+    var EndpointURLScheme = /* @__PURE__ */ ((EndpointURLScheme2) => {
+      EndpointURLScheme2["HTTP"] = "http";
+      EndpointURLScheme2["HTTPS"] = "https";
+      return EndpointURLScheme2;
+    })(EndpointURLScheme || {});
+    var AlgorithmId = /* @__PURE__ */ ((AlgorithmId2) => {
+      AlgorithmId2["MD5"] = "md5";
+      AlgorithmId2["CRC32"] = "crc32";
+      AlgorithmId2["CRC32C"] = "crc32c";
+      AlgorithmId2["SHA1"] = "sha1";
+      AlgorithmId2["SHA256"] = "sha256";
+      return AlgorithmId2;
+    })(AlgorithmId || {});
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      if (runtimeConfig.sha256 !== void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "sha256",
+          checksumConstructor: () => runtimeConfig.sha256
+        });
+      }
+      if (runtimeConfig.md5 != void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "md5",
+          checksumConstructor: () => runtimeConfig.md5
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getDefaultClientConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig)
+      };
+    }, "getDefaultClientConfiguration");
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var FieldPosition = /* @__PURE__ */ ((FieldPosition2) => {
+      FieldPosition2[FieldPosition2["HEADER"] = 0] = "HEADER";
+      FieldPosition2[FieldPosition2["TRAILER"] = 1] = "TRAILER";
+      return FieldPosition2;
+    })(FieldPosition || {});
+    var SMITHY_CONTEXT_KEY4 = "__smithy_context";
+    var IniSectionType = /* @__PURE__ */ ((IniSectionType2) => {
+      IniSectionType2["PROFILE"] = "profile";
+      IniSectionType2["SSO_SESSION"] = "sso-session";
+      IniSectionType2["SERVICES"] = "services";
+      return IniSectionType2;
+    })(IniSectionType || {});
+    var RequestHandlerProtocol = /* @__PURE__ */ ((RequestHandlerProtocol2) => {
+      RequestHandlerProtocol2["HTTP_0_9"] = "http/0.9";
+      RequestHandlerProtocol2["HTTP_1_0"] = "http/1.0";
+      RequestHandlerProtocol2["TDS_8_0"] = "tds/8.0";
+      return RequestHandlerProtocol2;
+    })(RequestHandlerProtocol || {});
+  }
+});
+
+// ../../../node_modules/@smithy/protocol-http/dist-cjs/index.js
+var require_dist_cjs2 = __commonJS({
+  "../../../node_modules/@smithy/protocol-http/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Field: () => Field,
+      Fields: () => Fields,
+      HttpRequest: () => HttpRequest7,
+      HttpResponse: () => HttpResponse2,
+      IHttpRequest: () => import_types8.HttpRequest,
+      getHttpHandlerExtensionConfiguration: () => getHttpHandlerExtensionConfiguration,
+      isValidHostname: () => isValidHostname,
+      resolveHttpHandlerRuntimeConfig: () => resolveHttpHandlerRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let httpHandler = runtimeConfig.httpHandler;
+      return {
+        setHttpHandler(handler2) {
+          httpHandler = handler2;
+        },
+        httpHandler() {
+          return httpHandler;
+        },
+        updateHttpClientConfig(key, value) {
+          httpHandler.updateHttpClientConfig(key, value);
+        },
+        httpHandlerConfigs() {
+          return httpHandler.httpHandlerConfigs();
+        }
+      };
+    }, "getHttpHandlerExtensionConfiguration");
+    var resolveHttpHandlerRuntimeConfig = /* @__PURE__ */ __name2((httpHandlerExtensionConfiguration) => {
+      return {
+        httpHandler: httpHandlerExtensionConfiguration.httpHandler()
+      };
+    }, "resolveHttpHandlerRuntimeConfig");
+    var import_types8 = require_dist_cjs();
+    var _Field = class _Field {
+      constructor({ name, kind = import_types8.FieldPosition.HEADER, values = [] }) {
+        this.name = name;
+        this.kind = kind;
+        this.values = values;
+      }
+      /**
+       * Appends a value to the field.
+       *
+       * @param value The value to append.
+       */
+      add(value) {
+        this.values.push(value);
+      }
+      /**
+       * Overwrite existing field values.
+       *
+       * @param values The new field values.
+       */
+      set(values) {
+        this.values = values;
+      }
+      /**
+       * Remove all matching entries from list.
+       *
+       * @param value Value to remove.
+       */
+      remove(value) {
+        this.values = this.values.filter((v) => v !== value);
+      }
+      /**
+       * Get comma-delimited string.
+       *
+       * @returns String representation of {@link Field}.
+       */
+      toString() {
+        return this.values.map((v) => v.includes(",") || v.includes(" ") ? `"${v}"` : v).join(", ");
+      }
+      /**
+       * Get string values as a list
+       *
+       * @returns Values in {@link Field} as a list.
+       */
+      get() {
+        return this.values;
+      }
+    };
+    __name2(_Field, "Field");
+    var Field = _Field;
+    var _Fields = class _Fields {
+      constructor({ fields = [], encoding = "utf-8" }) {
+        this.entries = {};
+        fields.forEach(this.setField.bind(this));
+        this.encoding = encoding;
+      }
+      /**
+       * Set entry for a {@link Field} name. The `name`
+       * attribute will be used to key the collection.
+       *
+       * @param field The {@link Field} to set.
+       */
+      setField(field) {
+        this.entries[field.name.toLowerCase()] = field;
+      }
+      /**
+       *  Retrieve {@link Field} entry by name.
+       *
+       * @param name The name of the {@link Field} entry
+       *  to retrieve
+       * @returns The {@link Field} if it exists.
+       */
+      getField(name) {
+        return this.entries[name.toLowerCase()];
+      }
+      /**
+       * Delete entry from collection.
+       *
+       * @param name Name of the entry to delete.
+       */
+      removeField(name) {
+        delete this.entries[name.toLowerCase()];
+      }
+      /**
+       * Helper function for retrieving specific types of fields.
+       * Used to grab all headers or all trailers.
+       *
+       * @param kind {@link FieldPosition} of entries to retrieve.
+       * @returns The {@link Field} entries with the specified
+       *  {@link FieldPosition}.
+       */
+      getByType(kind) {
+        return Object.values(this.entries).filter((field) => field.kind === kind);
+      }
+    };
+    __name2(_Fields, "Fields");
+    var Fields = _Fields;
+    var _HttpRequest = class _HttpRequest2 {
+      constructor(options) {
+        this.method = options.method || "GET";
+        this.hostname = options.hostname || "localhost";
+        this.port = options.port;
+        this.query = options.query || {};
+        this.headers = options.headers || {};
+        this.body = options.body;
+        this.protocol = options.protocol ? options.protocol.slice(-1) !== ":" ? `${options.protocol}:` : options.protocol : "https:";
+        this.path = options.path ? options.path.charAt(0) !== "/" ? `/${options.path}` : options.path : "/";
+        this.username = options.username;
+        this.password = options.password;
+        this.fragment = options.fragment;
+      }
+      /**
+       * Note: this does not deep-clone the body.
+       */
+      static clone(request2) {
+        const cloned = new _HttpRequest2({
+          ...request2,
+          headers: { ...request2.headers }
+        });
+        if (cloned.query) {
+          cloned.query = cloneQuery(cloned.query);
+        }
+        return cloned;
+      }
+      /**
+       * This method only actually asserts that request is the interface {@link IHttpRequest},
+       * and not necessarily this concrete class. Left in place for API stability.
+       *
+       * Do not call instance methods on the input of this function, and
+       * do not assume it has the HttpRequest prototype.
+       */
+      static isInstance(request2) {
+        if (!request2) {
+          return false;
+        }
+        const req = request2;
+        return "method" in req && "protocol" in req && "hostname" in req && "path" in req && typeof req["query"] === "object" && typeof req["headers"] === "object";
+      }
+      /**
+       * @deprecated use static HttpRequest.clone(request) instead. It's not safe to call
+       * this method because {@link HttpRequest.isInstance} incorrectly
+       * asserts that IHttpRequest (interface) objects are of type HttpRequest (class).
+       */
+      clone() {
+        return _HttpRequest2.clone(this);
+      }
+    };
+    __name2(_HttpRequest, "HttpRequest");
+    var HttpRequest7 = _HttpRequest;
+    function cloneQuery(query) {
+      return Object.keys(query).reduce((carry, paramName) => {
+        const param = query[paramName];
+        return {
+          ...carry,
+          [paramName]: Array.isArray(param) ? [...param] : param
+        };
+      }, {});
+    }
+    __name2(cloneQuery, "cloneQuery");
+    var _HttpResponse = class _HttpResponse {
+      constructor(options) {
+        this.statusCode = options.statusCode;
+        this.reason = options.reason;
+        this.headers = options.headers || {};
+        this.body = options.body;
+      }
+      static isInstance(response) {
+        if (!response)
+          return false;
+        const resp = response;
+        return typeof resp.statusCode === "number" && typeof resp.headers === "object";
+      }
+    };
+    __name2(_HttpResponse, "HttpResponse");
+    var HttpResponse2 = _HttpResponse;
+    function isValidHostname(hostname) {
+      const hostPattern = /^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/;
+      return hostPattern.test(hostname);
+    }
+    __name2(isValidHostname, "isValidHostname");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js
+var require_dist_cjs3 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getHostHeaderPlugin: () => getHostHeaderPlugin,
+      hostHeaderMiddleware: () => hostHeaderMiddleware,
+      hostHeaderMiddlewareOptions: () => hostHeaderMiddlewareOptions,
+      resolveHostHeaderConfig: () => resolveHostHeaderConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    function resolveHostHeaderConfig(input) {
+      return input;
+    }
+    __name2(resolveHostHeaderConfig, "resolveHostHeaderConfig");
+    var hostHeaderMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      if (!import_protocol_http8.HttpRequest.isInstance(args.request))
+        return next(args);
+      const { request: request2 } = args;
+      const { handlerProtocol = "" } = options.requestHandler.metadata || {};
+      if (handlerProtocol.indexOf("h2") >= 0 && !request2.headers[":authority"]) {
+        delete request2.headers["host"];
+        request2.headers[":authority"] = request2.hostname + (request2.port ? ":" + request2.port : "");
+      } else if (!request2.headers["host"]) {
+        let host = request2.hostname;
+        if (request2.port != null)
+          host += `:${request2.port}`;
+        request2.headers["host"] = host;
+      }
+      return next(args);
+    }, "hostHeaderMiddleware");
+    var hostHeaderMiddlewareOptions = {
+      name: "hostHeaderMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["HOST"],
+      override: true
+    };
+    var getHostHeaderPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);
+      }
+    }), "getHostHeaderPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js
+var require_dist_cjs4 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getLoggerPlugin: () => getLoggerPlugin,
+      loggerMiddleware: () => loggerMiddleware,
+      loggerMiddlewareOptions: () => loggerMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var loggerMiddleware = /* @__PURE__ */ __name2(() => (next, context) => async (args) => {
+      var _a7, _b;
+      try {
+        const response = await next(args);
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;
+        const { $metadata, ...outputWithoutMetadata } = response.output;
+        (_a7 = logger == null ? void 0 : logger.info) == null ? void 0 : _a7.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          output: outputFilterSensitiveLog(outputWithoutMetadata),
+          metadata: $metadata
+        });
+        return response;
+      } catch (error) {
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        (_b = logger == null ? void 0 : logger.error) == null ? void 0 : _b.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          error,
+          metadata: error.$metadata
+        });
+        throw error;
+      }
+    }, "loggerMiddleware");
+    var loggerMiddlewareOptions = {
+      name: "loggerMiddleware",
+      tags: ["LOGGER"],
+      step: "initialize",
+      override: true
+    };
+    var getLoggerPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);
+      }
+    }), "getLoggerPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js
+var require_dist_cjs5 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      addRecursionDetectionMiddlewareOptions: () => addRecursionDetectionMiddlewareOptions,
+      getRecursionDetectionPlugin: () => getRecursionDetectionPlugin,
+      recursionDetectionMiddleware: () => recursionDetectionMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var TRACE_ID_HEADER_NAME = "X-Amzn-Trace-Id";
+    var ENV_LAMBDA_FUNCTION_NAME = "AWS_LAMBDA_FUNCTION_NAME";
+    var ENV_TRACE_ID = "_X_AMZN_TRACE_ID";
+    var recursionDetectionMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2) || options.runtime !== "node" || request2.headers.hasOwnProperty(TRACE_ID_HEADER_NAME)) {
+        return next(args);
+      }
+      const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];
+      const traceId = process.env[ENV_TRACE_ID];
+      const nonEmptyString = /* @__PURE__ */ __name2((str) => typeof str === "string" && str.length > 0, "nonEmptyString");
+      if (nonEmptyString(functionName) && nonEmptyString(traceId)) {
+        request2.headers[TRACE_ID_HEADER_NAME] = traceId;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "recursionDetectionMiddleware");
+    var addRecursionDetectionMiddlewareOptions = {
+      step: "build",
+      tags: ["RECURSION_DETECTION"],
+      name: "recursionDetectionMiddleware",
+      override: true,
+      priority: "low"
+    };
+    var getRecursionDetectionPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(recursionDetectionMiddleware(options), addRecursionDetectionMiddlewareOptions);
+      }
+    }), "getRecursionDetectionPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js
+var require_dist_cjs6 = __commonJS({
+  "../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      EndpointCache: () => EndpointCache,
+      EndpointError: () => EndpointError2,
+      customEndpointFunctions: () => customEndpointFunctions,
+      isIpAddress: () => isIpAddress2,
+      isValidHostLabel: () => isValidHostLabel,
+      resolveEndpoint: () => resolveEndpoint2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _EndpointCache = class _EndpointCache {
+      /**
+       * @param [size] - desired average maximum capacity. A buffer of 10 additional keys will be allowed
+       *                 before keys are dropped.
+       * @param [params] - list of params to consider as part of the cache key.
+       *
+       * If the params list is not populated, no caching will happen.
+       * This may be out of order depending on how the object is created and arrives to this class.
+       */
+      constructor({ size, params }) {
+        this.data = /* @__PURE__ */ new Map();
+        this.parameters = [];
+        this.capacity = size ?? 50;
+        if (params) {
+          this.parameters = params;
+        }
+      }
+      /**
+       * @param endpointParams - query for endpoint.
+       * @param resolver - provider of the value if not present.
+       * @returns endpoint corresponding to the query.
+       */
+      get(endpointParams, resolver) {
+        const key = this.hash(endpointParams);
+        if (key === false) {
+          return resolver();
+        }
+        if (!this.data.has(key)) {
+          if (this.data.size > this.capacity + 10) {
+            const keys = this.data.keys();
+            let i = 0;
+            while (true) {
+              const { value, done } = keys.next();
+              this.data.delete(value);
+              if (done || ++i > 10) {
+                break;
+              }
+            }
+          }
+          this.data.set(key, resolver());
+        }
+        return this.data.get(key);
+      }
+      size() {
+        return this.data.size;
+      }
+      /**
+       * @returns cache key or false if not cachable.
+       */
+      hash(endpointParams) {
+        let buffer = "";
+        const { parameters } = this;
+        if (parameters.length === 0) {
+          return false;
+        }
+        for (const param of parameters) {
+          const val2 = String(endpointParams[param] ?? "");
+          if (val2.includes("|;")) {
+            return false;
+          }
+          buffer += val2 + "|;";
+        }
+        return buffer;
+      }
+    };
+    __name2(_EndpointCache, "EndpointCache");
+    var EndpointCache = _EndpointCache;
+    var IP_V4_REGEX = new RegExp(
+      `^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$`
+    );
+    var isIpAddress2 = /* @__PURE__ */ __name2((value) => IP_V4_REGEX.test(value) || value.startsWith("[") && value.endsWith("]"), "isIpAddress");
+    var VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);
+    var isValidHostLabel = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (!allowSubDomains) {
+        return VALID_HOST_LABEL_REGEX.test(value);
+      }
+      const labels = value.split(".");
+      for (const label of labels) {
+        if (!isValidHostLabel(label)) {
+          return false;
+        }
+      }
+      return true;
+    }, "isValidHostLabel");
+    var customEndpointFunctions = {};
+    var debugId = "endpoints";
+    function toDebugString(input) {
+      if (typeof input !== "object" || input == null) {
+        return input;
+      }
+      if ("ref" in input) {
+        return `$${toDebugString(input.ref)}`;
+      }
+      if ("fn" in input) {
+        return `${input.fn}(${(input.argv || []).map(toDebugString).join(", ")})`;
+      }
+      return JSON.stringify(input, null, 2);
+    }
+    __name2(toDebugString, "toDebugString");
+    var _EndpointError = class _EndpointError extends Error {
+      constructor(message) {
+        super(message);
+        this.name = "EndpointError";
+      }
+    };
+    __name2(_EndpointError, "EndpointError");
+    var EndpointError2 = _EndpointError;
+    var booleanEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "booleanEquals");
+    var getAttrPathList = /* @__PURE__ */ __name2((path23) => {
+      const parts = path23.split(".");
+      const pathList = [];
+      for (const part of parts) {
+        const squareBracketIndex = part.indexOf("[");
+        if (squareBracketIndex !== -1) {
+          if (part.indexOf("]") !== part.length - 1) {
+            throw new EndpointError2(`Path: '${path23}' does not end with ']'`);
+          }
+          const arrayIndex = part.slice(squareBracketIndex + 1, -1);
+          if (Number.isNaN(parseInt(arrayIndex))) {
+            throw new EndpointError2(`Invalid array index: '${arrayIndex}' in path: '${path23}'`);
+          }
+          if (squareBracketIndex !== 0) {
+            pathList.push(part.slice(0, squareBracketIndex));
+          }
+          pathList.push(arrayIndex);
+        } else {
+          pathList.push(part);
+        }
+      }
+      return pathList;
+    }, "getAttrPathList");
+    var getAttr = /* @__PURE__ */ __name2((value, path23) => getAttrPathList(path23).reduce((acc, index) => {
+      if (typeof acc !== "object") {
+        throw new EndpointError2(`Index '${index}' in '${path23}' not found in '${JSON.stringify(value)}'`);
+      } else if (Array.isArray(acc)) {
+        return acc[parseInt(index)];
+      }
+      return acc[index];
+    }, value), "getAttr");
+    var isSet = /* @__PURE__ */ __name2((value) => value != null, "isSet");
+    var not = /* @__PURE__ */ __name2((value) => !value, "not");
+    var import_types32 = require_dist_cjs();
+    var DEFAULT_PORTS = {
+      [import_types32.EndpointURLScheme.HTTP]: 80,
+      [import_types32.EndpointURLScheme.HTTPS]: 443
+    };
+    var parseURL = /* @__PURE__ */ __name2((value) => {
+      const whatwgURL = (() => {
+        try {
+          if (value instanceof URL) {
+            return value;
+          }
+          if (typeof value === "object" && "hostname" in value) {
+            const { hostname: hostname2, port, protocol: protocol2 = "", path: path23 = "", query = {} } = value;
+            const url2 = new URL(`${protocol2}//${hostname2}${port ? `:${port}` : ""}${path23}`);
+            url2.search = Object.entries(query).map(([k, v]) => `${k}=${v}`).join("&");
+            return url2;
+          }
+          return new URL(value);
+        } catch (error) {
+          return null;
+        }
+      })();
+      if (!whatwgURL) {
+        console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);
+        return null;
+      }
+      const urlString = whatwgURL.href;
+      const { host, hostname, pathname, protocol, search } = whatwgURL;
+      if (search) {
+        return null;
+      }
+      const scheme = protocol.slice(0, -1);
+      if (!Object.values(import_types32.EndpointURLScheme).includes(scheme)) {
+        return null;
+      }
+      const isIp = isIpAddress2(hostname);
+      const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) || typeof value === "string" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`);
+      const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;
+      return {
+        scheme,
+        authority,
+        path: pathname,
+        normalizedPath: pathname.endsWith("/") ? pathname : `${pathname}/`,
+        isIp
+      };
+    }, "parseURL");
+    var stringEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "stringEquals");
+    var substring = /* @__PURE__ */ __name2((input, start, stop, reverse) => {
+      if (start >= stop || input.length < stop) {
+        return null;
+      }
+      if (!reverse) {
+        return input.substring(start, stop);
+      }
+      return input.substring(input.length - stop, input.length - start);
+    }, "substring");
+    var uriEncode = /* @__PURE__ */ __name2((value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`), "uriEncode");
+    var endpointFunctions = {
+      booleanEquals,
+      getAttr,
+      isSet,
+      isValidHostLabel,
+      not,
+      parseURL,
+      stringEquals,
+      substring,
+      uriEncode
+    };
+    var evaluateTemplate = /* @__PURE__ */ __name2((template, options) => {
+      const evaluatedTemplateArr = [];
+      const templateContext = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      let currentIndex = 0;
+      while (currentIndex < template.length) {
+        const openingBraceIndex = template.indexOf("{", currentIndex);
+        if (openingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(currentIndex));
+          break;
+        }
+        evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));
+        const closingBraceIndex = template.indexOf("}", openingBraceIndex);
+        if (closingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex));
+          break;
+        }
+        if (template[openingBraceIndex + 1] === "{" && template[closingBraceIndex + 1] === "}") {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));
+          currentIndex = closingBraceIndex + 2;
+        }
+        const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);
+        if (parameterName.includes("#")) {
+          const [refName, attrName] = parameterName.split("#");
+          evaluatedTemplateArr.push(getAttr(templateContext[refName], attrName));
+        } else {
+          evaluatedTemplateArr.push(templateContext[parameterName]);
+        }
+        currentIndex = closingBraceIndex + 1;
+      }
+      return evaluatedTemplateArr.join("");
+    }, "evaluateTemplate");
+    var getReferenceValue = /* @__PURE__ */ __name2(({ ref }, options) => {
+      const referenceRecord = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      return referenceRecord[ref];
+    }, "getReferenceValue");
+    var evaluateExpression = /* @__PURE__ */ __name2((obj, keyName, options) => {
+      if (typeof obj === "string") {
+        return evaluateTemplate(obj, options);
+      } else if (obj["fn"]) {
+        return callFunction(obj, options);
+      } else if (obj["ref"]) {
+        return getReferenceValue(obj, options);
+      }
+      throw new EndpointError2(`'${keyName}': ${String(obj)} is not a string, function or reference.`);
+    }, "evaluateExpression");
+    var callFunction = /* @__PURE__ */ __name2(({ fn, argv }, options) => {
+      const evaluatedArgs = argv.map(
+        (arg) => ["boolean", "number"].includes(typeof arg) ? arg : evaluateExpression(arg, "arg", options)
+      );
+      const fnSegments = fn.split(".");
+      if (fnSegments[0] in customEndpointFunctions && fnSegments[1] != null) {
+        return customEndpointFunctions[fnSegments[0]][fnSegments[1]](...evaluatedArgs);
+      }
+      return endpointFunctions[fn](...evaluatedArgs);
+    }, "callFunction");
+    var evaluateCondition = /* @__PURE__ */ __name2(({ assign, ...fnArgs }, options) => {
+      var _a7, _b;
+      if (assign && assign in options.referenceRecord) {
+        throw new EndpointError2(`'${assign}' is already defined in Reference Record.`);
+      }
+      const value = callFunction(fnArgs, options);
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} evaluateCondition: ${toDebugString(fnArgs)} = ${toDebugString(value)}`);
+      return {
+        result: value === "" ? true : !!value,
+        ...assign != null && { toAssign: { name: assign, value } }
+      };
+    }, "evaluateCondition");
+    var evaluateConditions = /* @__PURE__ */ __name2((conditions = [], options) => {
+      var _a7, _b;
+      const conditionsReferenceRecord = {};
+      for (const condition of conditions) {
+        const { result, toAssign } = evaluateCondition(condition, {
+          ...options,
+          referenceRecord: {
+            ...options.referenceRecord,
+            ...conditionsReferenceRecord
+          }
+        });
+        if (!result) {
+          return { result };
+        }
+        if (toAssign) {
+          conditionsReferenceRecord[toAssign.name] = toAssign.value;
+          (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);
+        }
+      }
+      return { result: true, referenceRecord: conditionsReferenceRecord };
+    }, "evaluateConditions");
+    var getEndpointHeaders = /* @__PURE__ */ __name2((headers, options) => Object.entries(headers).reduce(
+      (acc, [headerKey, headerVal]) => ({
+        ...acc,
+        [headerKey]: headerVal.map((headerValEntry) => {
+          const processedExpr = evaluateExpression(headerValEntry, "Header value entry", options);
+          if (typeof processedExpr !== "string") {
+            throw new EndpointError2(`Header '${headerKey}' value '${processedExpr}' is not a string`);
+          }
+          return processedExpr;
+        })
+      }),
+      {}
+    ), "getEndpointHeaders");
+    var getEndpointProperty = /* @__PURE__ */ __name2((property, options) => {
+      if (Array.isArray(property)) {
+        return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));
+      }
+      switch (typeof property) {
+        case "string":
+          return evaluateTemplate(property, options);
+        case "object":
+          if (property === null) {
+            throw new EndpointError2(`Unexpected endpoint property: ${property}`);
+          }
+          return getEndpointProperties(property, options);
+        case "boolean":
+          return property;
+        default:
+          throw new EndpointError2(`Unexpected endpoint property type: ${typeof property}`);
+      }
+    }, "getEndpointProperty");
+    var getEndpointProperties = /* @__PURE__ */ __name2((properties, options) => Object.entries(properties).reduce(
+      (acc, [propertyKey, propertyVal]) => ({
+        ...acc,
+        [propertyKey]: getEndpointProperty(propertyVal, options)
+      }),
+      {}
+    ), "getEndpointProperties");
+    var getEndpointUrl = /* @__PURE__ */ __name2((endpointUrl, options) => {
+      const expression = evaluateExpression(endpointUrl, "Endpoint URL", options);
+      if (typeof expression === "string") {
+        try {
+          return new URL(expression);
+        } catch (error) {
+          console.error(`Failed to construct URL with ${expression}`, error);
+          throw error;
+        }
+      }
+      throw new EndpointError2(`Endpoint URL must be a string, got ${typeof expression}`);
+    }, "getEndpointUrl");
+    var evaluateEndpointRule = /* @__PURE__ */ __name2((endpointRule, options) => {
+      var _a7, _b;
+      const { conditions, endpoint } = endpointRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      const endpointRuleOptions = {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      };
+      const { url: url2, properties, headers } = endpoint;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);
+      return {
+        ...headers != void 0 && {
+          headers: getEndpointHeaders(headers, endpointRuleOptions)
+        },
+        ...properties != void 0 && {
+          properties: getEndpointProperties(properties, endpointRuleOptions)
+        },
+        url: getEndpointUrl(url2, endpointRuleOptions)
+      };
+    }, "evaluateEndpointRule");
+    var evaluateErrorRule = /* @__PURE__ */ __name2((errorRule, options) => {
+      const { conditions, error } = errorRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      throw new EndpointError2(
+        evaluateExpression(error, "Error", {
+          ...options,
+          referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+        })
+      );
+    }, "evaluateErrorRule");
+    var evaluateTreeRule = /* @__PURE__ */ __name2((treeRule, options) => {
+      const { conditions, rules } = treeRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      return evaluateRules(rules, {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      });
+    }, "evaluateTreeRule");
+    var evaluateRules = /* @__PURE__ */ __name2((rules, options) => {
+      for (const rule of rules) {
+        if (rule.type === "endpoint") {
+          const endpointOrUndefined = evaluateEndpointRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else if (rule.type === "error") {
+          evaluateErrorRule(rule, options);
+        } else if (rule.type === "tree") {
+          const endpointOrUndefined = evaluateTreeRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else {
+          throw new EndpointError2(`Unknown endpoint rule: ${rule}`);
+        }
+      }
+      throw new EndpointError2(`Rules evaluation failed`);
+    }, "evaluateRules");
+    var resolveEndpoint2 = /* @__PURE__ */ __name2((ruleSetObject, options) => {
+      var _a7, _b, _c, _d;
+      const { endpointParams, logger } = options;
+      const { parameters, rules } = ruleSetObject;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);
+      const paramsWithDefault = Object.entries(parameters).filter(([, v]) => v.default != null).map(([k, v]) => [k, v.default]);
+      if (paramsWithDefault.length > 0) {
+        for (const [paramKey, paramDefaultValue] of paramsWithDefault) {
+          endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;
+        }
+      }
+      const requiredParams = Object.entries(parameters).filter(([, v]) => v.required).map(([k]) => k);
+      for (const requiredParam of requiredParams) {
+        if (endpointParams[requiredParam] == null) {
+          throw new EndpointError2(`Missing required parameter: '${requiredParam}'`);
+        }
+      }
+      const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });
+      (_d = (_c = options.logger) == null ? void 0 : _c.debug) == null ? void 0 : _d.call(_c, `${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);
+      return endpoint;
+    }, "resolveEndpoint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js
+var require_dist_cjs7 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ConditionObject: () => import_util_endpoints.ConditionObject,
+      DeprecatedObject: () => import_util_endpoints.DeprecatedObject,
+      EndpointError: () => import_util_endpoints.EndpointError,
+      EndpointObject: () => import_util_endpoints.EndpointObject,
+      EndpointObjectHeaders: () => import_util_endpoints.EndpointObjectHeaders,
+      EndpointObjectProperties: () => import_util_endpoints.EndpointObjectProperties,
+      EndpointParams: () => import_util_endpoints.EndpointParams,
+      EndpointResolverOptions: () => import_util_endpoints.EndpointResolverOptions,
+      EndpointRuleObject: () => import_util_endpoints.EndpointRuleObject,
+      ErrorRuleObject: () => import_util_endpoints.ErrorRuleObject,
+      EvaluateOptions: () => import_util_endpoints.EvaluateOptions,
+      Expression: () => import_util_endpoints.Expression,
+      FunctionArgv: () => import_util_endpoints.FunctionArgv,
+      FunctionObject: () => import_util_endpoints.FunctionObject,
+      FunctionReturn: () => import_util_endpoints.FunctionReturn,
+      ParameterObject: () => import_util_endpoints.ParameterObject,
+      ReferenceObject: () => import_util_endpoints.ReferenceObject,
+      ReferenceRecord: () => import_util_endpoints.ReferenceRecord,
+      RuleSetObject: () => import_util_endpoints.RuleSetObject,
+      RuleSetRules: () => import_util_endpoints.RuleSetRules,
+      TreeRuleObject: () => import_util_endpoints.TreeRuleObject,
+      awsEndpointFunctions: () => awsEndpointFunctions,
+      getUserAgentPrefix: () => getUserAgentPrefix,
+      isIpAddress: () => import_util_endpoints.isIpAddress,
+      partition: () => partition,
+      resolveEndpoint: () => import_util_endpoints.resolveEndpoint,
+      setPartitionInfo: () => setPartitionInfo,
+      useDefaultPartitionInfo: () => useDefaultPartitionInfo
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_endpoints = require_dist_cjs6();
+    var isVirtualHostableS3Bucket = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (allowSubDomains) {
+        for (const label of value.split(".")) {
+          if (!isVirtualHostableS3Bucket(label)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      if (!(0, import_util_endpoints.isValidHostLabel)(value)) {
+        return false;
+      }
+      if (value.length < 3 || value.length > 63) {
+        return false;
+      }
+      if (value !== value.toLowerCase()) {
+        return false;
+      }
+      if ((0, import_util_endpoints.isIpAddress)(value)) {
+        return false;
+      }
+      return true;
+    }, "isVirtualHostableS3Bucket");
+    var ARN_DELIMITER = ":";
+    var RESOURCE_DELIMITER = "/";
+    var parseArn = /* @__PURE__ */ __name2((value) => {
+      const segments = value.split(ARN_DELIMITER);
+      if (segments.length < 6)
+        return null;
+      const [arn, partition2, service, region, accountId, ...resourcePath] = segments;
+      if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "")
+        return null;
+      const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();
+      return {
+        partition: partition2,
+        service,
+        region,
+        accountId,
+        resourceId
+      };
+    }, "parseArn");
+    var partitions_default = {
+      partitions: [{
+        id: "aws",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-east-1",
+          name: "aws",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$",
+        regions: {
+          "af-south-1": {
+            description: "Africa (Cape Town)"
+          },
+          "ap-east-1": {
+            description: "Asia Pacific (Hong Kong)"
+          },
+          "ap-northeast-1": {
+            description: "Asia Pacific (Tokyo)"
+          },
+          "ap-northeast-2": {
+            description: "Asia Pacific (Seoul)"
+          },
+          "ap-northeast-3": {
+            description: "Asia Pacific (Osaka)"
+          },
+          "ap-south-1": {
+            description: "Asia Pacific (Mumbai)"
+          },
+          "ap-south-2": {
+            description: "Asia Pacific (Hyderabad)"
+          },
+          "ap-southeast-1": {
+            description: "Asia Pacific (Singapore)"
+          },
+          "ap-southeast-2": {
+            description: "Asia Pacific (Sydney)"
+          },
+          "ap-southeast-3": {
+            description: "Asia Pacific (Jakarta)"
+          },
+          "ap-southeast-4": {
+            description: "Asia Pacific (Melbourne)"
+          },
+          "aws-global": {
+            description: "AWS Standard global region"
+          },
+          "ca-central-1": {
+            description: "Canada (Central)"
+          },
+          "ca-west-1": {
+            description: "Canada West (Calgary)"
+          },
+          "eu-central-1": {
+            description: "Europe (Frankfurt)"
+          },
+          "eu-central-2": {
+            description: "Europe (Zurich)"
+          },
+          "eu-north-1": {
+            description: "Europe (Stockholm)"
+          },
+          "eu-south-1": {
+            description: "Europe (Milan)"
+          },
+          "eu-south-2": {
+            description: "Europe (Spain)"
+          },
+          "eu-west-1": {
+            description: "Europe (Ireland)"
+          },
+          "eu-west-2": {
+            description: "Europe (London)"
+          },
+          "eu-west-3": {
+            description: "Europe (Paris)"
+          },
+          "il-central-1": {
+            description: "Israel (Tel Aviv)"
+          },
+          "me-central-1": {
+            description: "Middle East (UAE)"
+          },
+          "me-south-1": {
+            description: "Middle East (Bahrain)"
+          },
+          "sa-east-1": {
+            description: "South America (Sao Paulo)"
+          },
+          "us-east-1": {
+            description: "US East (N. Virginia)"
+          },
+          "us-east-2": {
+            description: "US East (Ohio)"
+          },
+          "us-west-1": {
+            description: "US West (N. California)"
+          },
+          "us-west-2": {
+            description: "US West (Oregon)"
+          }
+        }
+      }, {
+        id: "aws-cn",
+        outputs: {
+          dnsSuffix: "amazonaws.com.cn",
+          dualStackDnsSuffix: "api.amazonwebservices.com.cn",
+          implicitGlobalRegion: "cn-northwest-1",
+          name: "aws-cn",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^cn\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-cn-global": {
+            description: "AWS China global region"
+          },
+          "cn-north-1": {
+            description: "China (Beijing)"
+          },
+          "cn-northwest-1": {
+            description: "China (Ningxia)"
+          }
+        }
+      }, {
+        id: "aws-us-gov",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-gov-west-1",
+          name: "aws-us-gov",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-gov\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-us-gov-global": {
+            description: "AWS GovCloud (US) global region"
+          },
+          "us-gov-east-1": {
+            description: "AWS GovCloud (US-East)"
+          },
+          "us-gov-west-1": {
+            description: "AWS GovCloud (US-West)"
+          }
+        }
+      }, {
+        id: "aws-iso",
+        outputs: {
+          dnsSuffix: "c2s.ic.gov",
+          dualStackDnsSuffix: "c2s.ic.gov",
+          implicitGlobalRegion: "us-iso-east-1",
+          name: "aws-iso",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-iso\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-global": {
+            description: "AWS ISO (US) global region"
+          },
+          "us-iso-east-1": {
+            description: "US ISO East"
+          },
+          "us-iso-west-1": {
+            description: "US ISO WEST"
+          }
+        }
+      }, {
+        id: "aws-iso-b",
+        outputs: {
+          dnsSuffix: "sc2s.sgov.gov",
+          dualStackDnsSuffix: "sc2s.sgov.gov",
+          implicitGlobalRegion: "us-isob-east-1",
+          name: "aws-iso-b",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isob\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-b-global": {
+            description: "AWS ISOB (US) global region"
+          },
+          "us-isob-east-1": {
+            description: "US ISOB East (Ohio)"
+          }
+        }
+      }, {
+        id: "aws-iso-e",
+        outputs: {
+          dnsSuffix: "cloud.adc-e.uk",
+          dualStackDnsSuffix: "cloud.adc-e.uk",
+          implicitGlobalRegion: "eu-isoe-west-1",
+          name: "aws-iso-e",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$",
+        regions: {
+          "eu-isoe-west-1": {
+            description: "EU ISOE West"
+          }
+        }
+      }, {
+        id: "aws-iso-f",
+        outputs: {
+          dnsSuffix: "csp.hci.ic.gov",
+          dualStackDnsSuffix: "csp.hci.ic.gov",
+          implicitGlobalRegion: "us-isof-south-1",
+          name: "aws-iso-f",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isof\\-\\w+\\-\\d+$",
+        regions: {}
+      }],
+      version: "1.1"
+    };
+    var selectedPartitionsInfo = partitions_default;
+    var selectedUserAgentPrefix = "";
+    var partition = /* @__PURE__ */ __name2((value) => {
+      const { partitions } = selectedPartitionsInfo;
+      for (const partition2 of partitions) {
+        const { regions, outputs } = partition2;
+        for (const [region, regionData] of Object.entries(regions)) {
+          if (region === value) {
+            return {
+              ...outputs,
+              ...regionData
+            };
+          }
+        }
+      }
+      for (const partition2 of partitions) {
+        const { regionRegex, outputs } = partition2;
+        if (new RegExp(regionRegex).test(value)) {
+          return {
+            ...outputs
+          };
+        }
+      }
+      const DEFAULT_PARTITION = partitions.find((partition2) => partition2.id === "aws");
+      if (!DEFAULT_PARTITION) {
+        throw new Error(
+          "Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist."
+        );
+      }
+      return {
+        ...DEFAULT_PARTITION.outputs
+      };
+    }, "partition");
+    var setPartitionInfo = /* @__PURE__ */ __name2((partitionsInfo, userAgentPrefix = "") => {
+      selectedPartitionsInfo = partitionsInfo;
+      selectedUserAgentPrefix = userAgentPrefix;
+    }, "setPartitionInfo");
+    var useDefaultPartitionInfo = /* @__PURE__ */ __name2(() => {
+      setPartitionInfo(partitions_default, "");
+    }, "useDefaultPartitionInfo");
+    var getUserAgentPrefix = /* @__PURE__ */ __name2(() => selectedUserAgentPrefix, "getUserAgentPrefix");
+    var awsEndpointFunctions = {
+      isVirtualHostableS3Bucket,
+      parseArn,
+      partition
+    };
+    import_util_endpoints.customEndpointFunctions.aws = awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js
+var require_dist_cjs8 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getUserAgentMiddlewareOptions: () => getUserAgentMiddlewareOptions,
+      getUserAgentPlugin: () => getUserAgentPlugin,
+      resolveUserAgentConfig: () => resolveUserAgentConfig,
+      userAgentMiddleware: () => userAgentMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function resolveUserAgentConfig(input) {
+      return {
+        ...input,
+        customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent
+      };
+    }
+    __name2(resolveUserAgentConfig, "resolveUserAgentConfig");
+    var import_util_endpoints = require_dist_cjs7();
+    var import_protocol_http8 = require_dist_cjs2();
+    var USER_AGENT = "user-agent";
+    var X_AMZ_USER_AGENT = "x-amz-user-agent";
+    var SPACE = " ";
+    var UA_NAME_SEPARATOR = "/";
+    var UA_NAME_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w]/g;
+    var UA_VALUE_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w\#]/g;
+    var UA_ESCAPE_CHAR = "-";
+    var userAgentMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7, _b;
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2))
+        return next(args);
+      const { headers } = request2;
+      const userAgent = ((_a7 = context == null ? void 0 : context.userAgent) == null ? void 0 : _a7.map(escapeUserAgent)) || [];
+      const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);
+      const customUserAgent = ((_b = options == null ? void 0 : options.customUserAgent) == null ? void 0 : _b.map(escapeUserAgent)) || [];
+      const prefix = (0, import_util_endpoints.getUserAgentPrefix)();
+      const sdkUserAgentValue = (prefix ? [prefix] : []).concat([...defaultUserAgent, ...userAgent, ...customUserAgent]).join(SPACE);
+      const normalUAValue = [
+        ...defaultUserAgent.filter((section) => section.startsWith("aws-sdk-")),
+        ...customUserAgent
+      ].join(SPACE);
+      if (options.runtime !== "browser") {
+        if (normalUAValue) {
+          headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT] ? `${headers[USER_AGENT]} ${normalUAValue}` : normalUAValue;
+        }
+        headers[USER_AGENT] = sdkUserAgentValue;
+      } else {
+        headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "userAgentMiddleware");
+    var escapeUserAgent = /* @__PURE__ */ __name2((userAgentPair) => {
+      var _a7;
+      const name = userAgentPair[0].split(UA_NAME_SEPARATOR).map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR)).join(UA_NAME_SEPARATOR);
+      const version3 = (_a7 = userAgentPair[1]) == null ? void 0 : _a7.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);
+      const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);
+      const prefix = name.substring(0, prefixSeparatorIndex);
+      let uaName = name.substring(prefixSeparatorIndex + 1);
+      if (prefix === "api") {
+        uaName = uaName.toLowerCase();
+      }
+      return [prefix, uaName, version3].filter((item) => item && item.length > 0).reduce((acc, item, index) => {
+        switch (index) {
+          case 0:
+            return item;
+          case 1:
+            return `${acc}/${item}`;
+          default:
+            return `${acc}#${item}`;
+        }
+      }, "");
+    }, "escapeUserAgent");
+    var getUserAgentMiddlewareOptions = {
+      name: "getUserAgentMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["SET_USER_AGENT", "USER_AGENT"],
+      override: true
+    };
+    var getUserAgentPlugin = /* @__PURE__ */ __name2((config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);
+      }
+    }), "getUserAgentPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js
+var require_dist_cjs9 = __commonJS({
+  "../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SelectorType: () => SelectorType,
+      booleanSelector: () => booleanSelector,
+      numberSelector: () => numberSelector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var booleanSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      if (obj[key] === "true")
+        return true;
+      if (obj[key] === "false")
+        return false;
+      throw new Error(`Cannot load ${type} "${key}". Expected "true" or "false", got ${obj[key]}.`);
+    }, "booleanSelector");
+    var numberSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      const numberValue = parseInt(obj[key], 10);
+      if (Number.isNaN(numberValue)) {
+        throw new TypeError(`Cannot load ${type} '${key}'. Expected number, got '${obj[key]}'.`);
+      }
+      return numberValue;
+    }, "numberSelector");
+    var SelectorType = /* @__PURE__ */ ((SelectorType2) => {
+      SelectorType2["ENV"] = "env";
+      SelectorType2["CONFIG"] = "shared config entry";
+      return SelectorType2;
+    })(SelectorType || {});
+  }
+});
+
+// ../../../node_modules/@smithy/util-middleware/dist-cjs/index.js
+var require_dist_cjs10 = __commonJS({
+  "../../../node_modules/@smithy/util-middleware/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getSmithyContext: () => getSmithyContext4,
+      normalizeProvider: () => normalizeProvider2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_types8 = require_dist_cjs();
+    var getSmithyContext4 = /* @__PURE__ */ __name2((context) => context[import_types8.SMITHY_CONTEXT_KEY] || (context[import_types8.SMITHY_CONTEXT_KEY] = {}), "getSmithyContext");
+    var normalizeProvider2 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    }, "normalizeProvider");
+  }
+});
+
+// ../../../node_modules/@smithy/config-resolver/dist-cjs/index.js
+var require_dist_cjs11 = __commonJS({
+  "../../../node_modules/@smithy/config-resolver/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_USE_DUALSTACK_ENDPOINT: () => CONFIG_USE_DUALSTACK_ENDPOINT,
+      CONFIG_USE_FIPS_ENDPOINT: () => CONFIG_USE_FIPS_ENDPOINT,
+      DEFAULT_USE_DUALSTACK_ENDPOINT: () => DEFAULT_USE_DUALSTACK_ENDPOINT,
+      DEFAULT_USE_FIPS_ENDPOINT: () => DEFAULT_USE_FIPS_ENDPOINT,
+      ENV_USE_DUALSTACK_ENDPOINT: () => ENV_USE_DUALSTACK_ENDPOINT,
+      ENV_USE_FIPS_ENDPOINT: () => ENV_USE_FIPS_ENDPOINT,
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,
+      NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getRegionInfo: () => getRegionInfo,
+      resolveCustomEndpointsConfig: () => resolveCustomEndpointsConfig,
+      resolveEndpointsConfig: () => resolveEndpointsConfig,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_config_provider = require_dist_cjs9();
+    var ENV_USE_DUALSTACK_ENDPOINT = "AWS_USE_DUALSTACK_ENDPOINT";
+    var CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint";
+    var DEFAULT_USE_DUALSTACK_ENDPOINT = false;
+    var NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var ENV_USE_FIPS_ENDPOINT = "AWS_USE_FIPS_ENDPOINT";
+    var CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint";
+    var DEFAULT_USE_FIPS_ENDPOINT = false;
+    var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var import_util_middleware3 = require_dist_cjs10();
+    var resolveCustomEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const { endpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint),
+        isCustomEndpoint: true,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false)
+      };
+    }, "resolveCustomEndpointsConfig");
+    var getEndpointFromRegion = /* @__PURE__ */ __name2(async (input) => {
+      const { tls = true } = input;
+      const region = await input.region();
+      const dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/);
+      if (!dnsHostRegex.test(region)) {
+        throw new Error("Invalid region in client config");
+      }
+      const useDualstackEndpoint = await input.useDualstackEndpoint();
+      const useFipsEndpoint = await input.useFipsEndpoint();
+      const { hostname } = await input.regionInfoProvider(region, { useDualstackEndpoint, useFipsEndpoint }) ?? {};
+      if (!hostname) {
+        throw new Error("Cannot resolve hostname from client config");
+      }
+      return input.urlParser(`${tls ? "https:" : "http:"}//${hostname}`);
+    }, "getEndpointFromRegion");
+    var resolveEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const useDualstackEndpoint = (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false);
+      const { endpoint, useFipsEndpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: endpoint ? (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint) : () => getEndpointFromRegion({ ...input, useDualstackEndpoint, useFipsEndpoint }),
+        isCustomEndpoint: !!endpoint,
+        useDualstackEndpoint
+      };
+    }, "resolveEndpointsConfig");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+    var getHostnameFromVariants = /* @__PURE__ */ __name2((variants = [], { useFipsEndpoint, useDualstackEndpoint }) => {
+      var _a7;
+      return (_a7 = variants.find(
+        ({ tags }) => useFipsEndpoint === tags.includes("fips") && useDualstackEndpoint === tags.includes("dualstack")
+      )) == null ? void 0 : _a7.hostname;
+    }, "getHostnameFromVariants");
+    var getResolvedHostname = /* @__PURE__ */ __name2((resolvedRegion, { regionHostname, partitionHostname }) => regionHostname ? regionHostname : partitionHostname ? partitionHostname.replace("{region}", resolvedRegion) : void 0, "getResolvedHostname");
+    var getResolvedPartition = /* @__PURE__ */ __name2((region, { partitionHash }) => Object.keys(partitionHash || {}).find((key) => partitionHash[key].regions.includes(region)) ?? "aws", "getResolvedPartition");
+    var getResolvedSigningRegion = /* @__PURE__ */ __name2((hostname, { signingRegion, regionRegex, useFipsEndpoint }) => {
+      if (signingRegion) {
+        return signingRegion;
+      } else if (useFipsEndpoint) {
+        const regionRegexJs = regionRegex.replace("\\\\", "\\").replace(/^\^/g, "\\.").replace(/\$$/g, "\\.");
+        const regionRegexmatchArray = hostname.match(regionRegexJs);
+        if (regionRegexmatchArray) {
+          return regionRegexmatchArray[0].slice(1, -1);
+        }
+      }
+    }, "getResolvedSigningRegion");
+    var getRegionInfo = /* @__PURE__ */ __name2((region, {
+      useFipsEndpoint = false,
+      useDualstackEndpoint = false,
+      signingService,
+      regionHash,
+      partitionHash
+    }) => {
+      var _a7, _b, _c, _d, _e;
+      const partition = getResolvedPartition(region, { partitionHash });
+      const resolvedRegion = region in regionHash ? region : ((_a7 = partitionHash[partition]) == null ? void 0 : _a7.endpoint) ?? region;
+      const hostnameOptions = { useFipsEndpoint, useDualstackEndpoint };
+      const regionHostname = getHostnameFromVariants((_b = regionHash[resolvedRegion]) == null ? void 0 : _b.variants, hostnameOptions);
+      const partitionHostname = getHostnameFromVariants((_c = partitionHash[partition]) == null ? void 0 : _c.variants, hostnameOptions);
+      const hostname = getResolvedHostname(resolvedRegion, { regionHostname, partitionHostname });
+      if (hostname === void 0) {
+        throw new Error(`Endpoint resolution failed for: ${{ resolvedRegion, useFipsEndpoint, useDualstackEndpoint }}`);
+      }
+      const signingRegion = getResolvedSigningRegion(hostname, {
+        signingRegion: (_d = regionHash[resolvedRegion]) == null ? void 0 : _d.signingRegion,
+        regionRegex: partitionHash[partition].regionRegex,
+        useFipsEndpoint
+      });
+      return {
+        partition,
+        signingService,
+        hostname,
+        ...signingRegion && { signingRegion },
+        ...((_e = regionHash[resolvedRegion]) == null ? void 0 : _e.signingService) && {
+          signingService: regionHash[resolvedRegion].signingService
+        }
+      };
+    }, "getRegionInfo");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/getSmithyContext.js
+var import_types4, getSmithyContext;
+var init_getSmithyContext = __esm({
+  "../../../node_modules/@smithy/core/dist-es/getSmithyContext.js"() {
+    import_types4 = __toESM(require_dist_cjs());
+    getSmithyContext = (context) => context[import_types4.SMITHY_CONTEXT_KEY] || (context[import_types4.SMITHY_CONTEXT_KEY] = {});
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js
+function convertHttpAuthSchemesToMap(httpAuthSchemes) {
+  const map = /* @__PURE__ */ new Map();
+  for (const scheme of httpAuthSchemes) {
+    map.set(scheme.schemeId, scheme);
+  }
+  return map;
+}
+var import_types5, import_util_middleware, httpAuthSchemeMiddleware;
+var init_httpAuthSchemeMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js"() {
+    import_types5 = __toESM(require_dist_cjs());
+    import_util_middleware = __toESM(require_dist_cjs10());
+    httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {
+      const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));
+      const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);
+      const smithyContext = (0, import_util_middleware.getSmithyContext)(context);
+      const failureReasons = [];
+      for (const option of options) {
+        const scheme = authSchemes.get(option.schemeId);
+        if (!scheme) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` was not enabled for this service.`);
+          continue;
+        }
+        const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));
+        if (!identityProvider) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` did not have an IdentityProvider configured.`);
+          continue;
+        }
+        const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};
+        option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);
+        option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);
+        smithyContext.selectedHttpAuthScheme = {
+          httpAuthOption: option,
+          identity: await identityProvider(option.identityProperties),
+          signer: scheme.signer
+        };
+        break;
+      }
+      if (!smithyContext.selectedHttpAuthScheme) {
+        throw new Error(failureReasons.join("\n"));
+      }
+      return next(args);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js
+var httpAuthSchemeEndpointRuleSetMiddlewareOptions, getHttpAuthSchemeEndpointRuleSetPlugin;
+var init_getHttpAuthSchemeEndpointRuleSetPlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js"() {
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeEndpointRuleSetMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: "endpointV2Middleware"
+    };
+    getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js
+var require_dist_cjs12 = __commonJS({
+  "../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      deserializerMiddleware: () => deserializerMiddleware,
+      deserializerMiddlewareOption: () => deserializerMiddlewareOption,
+      getSerdePlugin: () => getSerdePlugin,
+      serializerMiddleware: () => serializerMiddleware,
+      serializerMiddlewareOption: () => serializerMiddlewareOption2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var deserializerMiddleware = /* @__PURE__ */ __name2((options, deserializer) => (next) => async (args) => {
+      const { response } = await next(args);
+      try {
+        const parsed = await deserializer(response, options);
+        return {
+          response,
+          output: parsed
+        };
+      } catch (error) {
+        Object.defineProperty(error, "$response", {
+          value: response
+        });
+        if (!("$metadata" in error)) {
+          const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;
+          error.message += "\n  " + hint;
+          if (typeof error.$responseBodyText !== "undefined") {
+            if (error.$response) {
+              error.$response.body = error.$responseBodyText;
+            }
+          }
+        }
+        throw error;
+      }
+    }, "deserializerMiddleware");
+    var serializerMiddleware = /* @__PURE__ */ __name2((options, serializer) => (next, context) => async (args) => {
+      var _a7;
+      const endpoint = ((_a7 = context.endpointV2) == null ? void 0 : _a7.url) && options.urlParser ? async () => options.urlParser(context.endpointV2.url) : options.endpoint;
+      if (!endpoint) {
+        throw new Error("No valid endpoint provider available.");
+      }
+      const request2 = await serializer(args.input, { ...options, endpoint });
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "serializerMiddleware");
+    var deserializerMiddlewareOption = {
+      name: "deserializerMiddleware",
+      step: "deserialize",
+      tags: ["DESERIALIZER"],
+      override: true
+    };
+    var serializerMiddlewareOption2 = {
+      name: "serializerMiddleware",
+      step: "serialize",
+      tags: ["SERIALIZER"],
+      override: true
+    };
+    function getSerdePlugin(config, serializer, deserializer) {
+      return {
+        applyToStack: (commandStack) => {
+          commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);
+          commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption2);
+        }
+      };
+    }
+    __name2(getSerdePlugin, "getSerdePlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js
+var import_middleware_serde, httpAuthSchemeMiddlewareOptions, getHttpAuthSchemePlugin;
+var init_getHttpAuthSchemePlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js"() {
+    import_middleware_serde = __toESM(require_dist_cjs12());
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde.serializerMiddlewareOption.name
+    };
+    getHttpAuthSchemePlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js
+var init_middleware_http_auth_scheme = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js"() {
+    init_httpAuthSchemeMiddleware();
+    init_getHttpAuthSchemeEndpointRuleSetPlugin();
+    init_getHttpAuthSchemePlugin();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js
+var import_protocol_http, import_types6, import_util_middleware2, defaultErrorHandler, defaultSuccessHandler, httpSigningMiddleware;
+var init_httpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js"() {
+    import_protocol_http = __toESM(require_dist_cjs2());
+    import_types6 = __toESM(require_dist_cjs());
+    import_util_middleware2 = __toESM(require_dist_cjs10());
+    defaultErrorHandler = (signingProperties) => (error) => {
+      throw error;
+    };
+    defaultSuccessHandler = (httpResponse, signingProperties) => {
+    };
+    httpSigningMiddleware = (config) => (next, context) => async (args) => {
+      if (!import_protocol_http.HttpRequest.isInstance(args.request)) {
+        return next(args);
+      }
+      const smithyContext = (0, import_util_middleware2.getSmithyContext)(context);
+      const scheme = smithyContext.selectedHttpAuthScheme;
+      if (!scheme) {
+        throw new Error(`No HttpAuthScheme was selected: unable to sign request`);
+      }
+      const { httpAuthOption: { signingProperties = {} }, identity, signer } = scheme;
+      const output = await next({
+        ...args,
+        request: await signer.sign(args.request, identity, signingProperties)
+      }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));
+      (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);
+      return output;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js
+var httpSigningMiddlewareOptions, getHttpSigningPlugin;
+var init_getHttpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js"() {
+    init_httpSigningMiddleware();
+    httpSigningMiddlewareOptions = {
+      step: "finalizeRequest",
+      tags: ["HTTP_SIGNING"],
+      name: "httpSigningMiddleware",
+      aliases: ["apiKeyMiddleware", "tokenMiddleware", "awsAuthMiddleware"],
+      override: true,
+      relation: "after",
+      toMiddleware: "retryMiddleware"
+    };
+    getHttpSigningPlugin = (config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js
+var init_middleware_http_signing = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js"() {
+    init_httpSigningMiddleware();
+    init_getHttpSigningMiddleware();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/normalizeProvider.js
+var normalizeProvider;
+var init_normalizeProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/normalizeProvider.js"() {
+    normalizeProvider = (input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js
+function createPaginator(ClientCtor, CommandCtor, inputTokenName, outputTokenName, pageSizeTokenName) {
+  return async function* paginateOperation(config, input, ...additionalArguments) {
+    let token = config.startingToken || void 0;
+    let hasNext = true;
+    let page;
+    while (hasNext) {
+      input[inputTokenName] = token;
+      if (pageSizeTokenName) {
+        input[pageSizeTokenName] = input[pageSizeTokenName] ?? config.pageSize;
+      }
+      if (config.client instanceof ClientCtor) {
+        page = await makePagedClientRequest(CommandCtor, config.client, input, ...additionalArguments);
+      } else {
+        throw new Error(`Invalid client, expected instance of ${ClientCtor.name}`);
+      }
+      yield page;
+      const prevToken = token;
+      token = get(page, outputTokenName);
+      hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
+    }
+    return void 0;
+  };
+}
+var makePagedClientRequest, get;
+var init_createPaginator = __esm({
+  "../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js"() {
+    makePagedClientRequest = async (CommandCtor, client, input, ...args) => {
+      return await client.send(new CommandCtor(input), ...args);
+    };
+    get = (fromObject, path23) => {
+      let cursor = fromObject;
+      const pathComponents = path23.split(".");
+      for (const step of pathComponents) {
+        if (!cursor || typeof cursor !== "object") {
+          return void 0;
+        }
+        cursor = cursor[step];
+      }
+      return cursor;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js
+var require_dist_cjs13 = __commonJS({
+  "../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isArrayBuffer: () => isArrayBuffer
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isArrayBuffer = /* @__PURE__ */ __name2((arg) => typeof ArrayBuffer === "function" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === "[object ArrayBuffer]", "isArrayBuffer");
+  }
+});
+
+// ../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js
+var require_dist_cjs14 = __commonJS({
+  "../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromArrayBuffer: () => fromArrayBuffer,
+      fromString: () => fromString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_buffer = require("buffer");
+    var fromArrayBuffer = /* @__PURE__ */ __name2((input, offset = 0, length = input.byteLength - offset) => {
+      if (!(0, import_is_array_buffer.isArrayBuffer)(input)) {
+        throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);
+      }
+      return import_buffer.Buffer.from(input, offset, length);
+    }, "fromArrayBuffer");
+    var fromString = /* @__PURE__ */ __name2((input, encoding) => {
+      if (typeof input !== "string") {
+        throw new TypeError(`The "input" argument must be of type string. Received type ${typeof input} (${input})`);
+      }
+      return encoding ? import_buffer.Buffer.from(input, encoding) : import_buffer.Buffer.from(input);
+    }, "fromString");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js
+var require_fromBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;
+    var fromBase642 = (input) => {
+      if (input.length * 3 % 4 !== 0) {
+        throw new TypeError(`Incorrect padding on base64 string.`);
+      }
+      if (!BASE64_REGEX.exec(input)) {
+        throw new TypeError(`Invalid base64 string.`);
+      }
+      const buffer = (0, util_buffer_from_1.fromString)(input, "base64");
+      return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
+    };
+    exports2.fromBase64 = fromBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-utf8/dist-cjs/index.js
+var require_dist_cjs15 = __commonJS({
+  "../../../node_modules/@smithy/util-utf8/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromUtf8: () => fromUtf8,
+      toUint8Array: () => toUint8Array,
+      toUtf8: () => toUtf8
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var fromUtf8 = /* @__PURE__ */ __name2((input) => {
+      const buf = (0, import_util_buffer_from.fromString)(input, "utf8");
+      return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+    }, "fromUtf8");
+    var toUint8Array = /* @__PURE__ */ __name2((data) => {
+      if (typeof data === "string") {
+        return fromUtf8(data);
+      }
+      if (ArrayBuffer.isView(data)) {
+        return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+      }
+      return new Uint8Array(data);
+    }, "toUint8Array");
+    var toUtf8 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "string") {
+        return input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("utf8");
+    }, "toUtf8");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js
+var require_toBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.toBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var util_utf8_1 = require_dist_cjs15();
+    var toBase642 = (_input) => {
+      let input;
+      if (typeof _input === "string") {
+        input = (0, util_utf8_1.fromUtf8)(_input);
+      } else {
+        input = _input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("base64");
+    };
+    exports2.toBase64 = toBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/index.js
+var require_dist_cjs16 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromBase64(), module2.exports);
+    __reExport2(src_exports, require_toBase64(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js
+var require_getAwsChunkedEncodingStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getAwsChunkedEncodingStream = void 0;
+    var stream_1 = require("stream");
+    var getAwsChunkedEncodingStream2 = (readableStream, options) => {
+      const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;
+      const checksumRequired = base64Encoder !== void 0 && checksumAlgorithmFn !== void 0 && checksumLocationName !== void 0 && streamHasher !== void 0;
+      const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : void 0;
+      const awsChunkedEncodingStream = new stream_1.Readable({ read: () => {
+      } });
+      readableStream.on("data", (data) => {
+        const length = bodyLengthChecker(data) || 0;
+        awsChunkedEncodingStream.push(`${length.toString(16)}\r
+`);
+        awsChunkedEncodingStream.push(data);
+        awsChunkedEncodingStream.push("\r\n");
+      });
+      readableStream.on("end", async () => {
+        awsChunkedEncodingStream.push(`0\r
+`);
+        if (checksumRequired) {
+          const checksum = base64Encoder(await digest);
+          awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\r
+`);
+          awsChunkedEncodingStream.push(`\r
+`);
+        }
+        awsChunkedEncodingStream.push(null);
+      });
+      return awsChunkedEncodingStream;
+    };
+    exports2.getAwsChunkedEncodingStream = getAwsChunkedEncodingStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js
+var require_dist_cjs17 = __commonJS({
+  "../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      escapeUri: () => escapeUri,
+      escapeUriPath: () => escapeUriPath
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var escapeUri = /* @__PURE__ */ __name2((uri) => (
+      // AWS percent-encodes some extra non-standard characters in a URI
+      encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode)
+    ), "escapeUri");
+    var hexEncode = /* @__PURE__ */ __name2((c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, "hexEncode");
+    var escapeUriPath = /* @__PURE__ */ __name2((uri) => uri.split("/").map(escapeUri).join("/"), "escapeUriPath");
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js
+var require_dist_cjs18 = __commonJS({
+  "../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      buildQueryString: () => buildQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_uri_escape = require_dist_cjs17();
+    function buildQueryString(query) {
+      const parts = [];
+      for (let key of Object.keys(query).sort()) {
+        const value = query[key];
+        key = (0, import_util_uri_escape.escapeUri)(key);
+        if (Array.isArray(value)) {
+          for (let i = 0, iLen = value.length; i < iLen; i++) {
+            parts.push(`${key}=${(0, import_util_uri_escape.escapeUri)(value[i])}`);
+          }
+        } else {
+          let qsEntry = key;
+          if (value || typeof value === "string") {
+            qsEntry += `=${(0, import_util_uri_escape.escapeUri)(value)}`;
+          }
+          parts.push(qsEntry);
+        }
+      }
+      return parts.join("&");
+    }
+    __name2(buildQueryString, "buildQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js
+var require_dist_cjs19 = __commonJS({
+  "../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_REQUEST_TIMEOUT: () => DEFAULT_REQUEST_TIMEOUT,
+      NodeHttp2Handler: () => NodeHttp2Handler,
+      NodeHttpHandler: () => NodeHttpHandler,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    var import_http2 = require("http");
+    var import_https = require("https");
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "EPIPE", "ETIMEDOUT"];
+    var getTransformedHeaders = /* @__PURE__ */ __name2((headers) => {
+      const transformedHeaders = {};
+      for (const name of Object.keys(headers)) {
+        const headerValues = headers[name];
+        transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(",") : headerValues;
+      }
+      return transformedHeaders;
+    }, "getTransformedHeaders");
+    var timing = {
+      setTimeout: (cb, ms) => setTimeout(cb, ms),
+      clearTimeout: (timeoutId) => clearTimeout(timeoutId)
+    };
+    var DEFER_EVENT_LISTENER_TIME = 1e3;
+    var setConnectionTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      if (!timeoutInMs) {
+        return -1;
+      }
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeoutId = timing.setTimeout(() => {
+          request2.destroy();
+          reject(
+            Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {
+              name: "TimeoutError"
+            })
+          );
+        }, timeoutInMs - offset);
+        const doWithSocket = /* @__PURE__ */ __name2((socket) => {
+          if (socket == null ? void 0 : socket.connecting) {
+            socket.on("connect", () => {
+              timing.clearTimeout(timeoutId);
+            });
+          } else {
+            timing.clearTimeout(timeoutId);
+          }
+        }, "doWithSocket");
+        if (request2.socket) {
+          doWithSocket(request2.socket);
+        } else {
+          request2.on("socket", doWithSocket);
+        }
+      }, "registerTimeout");
+      if (timeoutInMs < 2e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(registerTimeout.bind(null, DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);
+    }, "setConnectionTimeout");
+    var DEFER_EVENT_LISTENER_TIME2 = 3e3;
+    var setSocketKeepAlive = /* @__PURE__ */ __name2((request2, { keepAlive, keepAliveMsecs }, deferTimeMs = DEFER_EVENT_LISTENER_TIME2) => {
+      if (keepAlive !== true) {
+        return -1;
+      }
+      const registerListener = /* @__PURE__ */ __name2(() => {
+        if (request2.socket) {
+          request2.socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+        } else {
+          request2.on("socket", (socket) => {
+            socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+          });
+        }
+      }, "registerListener");
+      if (deferTimeMs === 0) {
+        registerListener();
+        return 0;
+      }
+      return timing.setTimeout(registerListener, deferTimeMs);
+    }, "setSocketKeepAlive");
+    var DEFER_EVENT_LISTENER_TIME3 = 3e3;
+    var setSocketTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeout = timeoutInMs - offset;
+        const onTimeout2 = /* @__PURE__ */ __name2(() => {
+          request2.destroy();
+          reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: "TimeoutError" }));
+        }, "onTimeout");
+        if (request2.socket) {
+          request2.socket.setTimeout(timeout, onTimeout2);
+        } else {
+          request2.setTimeout(timeout, onTimeout2);
+        }
+      }, "registerTimeout");
+      if (0 < timeoutInMs && timeoutInMs < 6e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(
+        registerTimeout.bind(null, timeoutInMs === 0 ? 0 : DEFER_EVENT_LISTENER_TIME3),
+        DEFER_EVENT_LISTENER_TIME3
+      );
+    }, "setSocketTimeout");
+    var import_stream = require("stream");
+    var MIN_WAIT_TIME = 1e3;
+    async function writeRequestBody(httpRequest, request2, maxContinueTimeoutMs = MIN_WAIT_TIME) {
+      const headers = request2.headers ?? {};
+      const expect = headers["Expect"] || headers["expect"];
+      let timeoutId = -1;
+      let sendBody = true;
+      if (expect === "100-continue") {
+        sendBody = await Promise.race([
+          new Promise((resolve6) => {
+            timeoutId = Number(timing.setTimeout(resolve6, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));
+          }),
+          new Promise((resolve6) => {
+            httpRequest.on("continue", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(true);
+            });
+            httpRequest.on("response", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+            httpRequest.on("error", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+          })
+        ]);
+      }
+      if (sendBody) {
+        writeBody(httpRequest, request2.body);
+      }
+    }
+    __name2(writeRequestBody, "writeRequestBody");
+    function writeBody(httpRequest, body) {
+      if (body instanceof import_stream.Readable) {
+        body.pipe(httpRequest);
+        return;
+      }
+      if (body) {
+        if (Buffer.isBuffer(body) || typeof body === "string") {
+          httpRequest.end(body);
+          return;
+        }
+        const uint8 = body;
+        if (typeof uint8 === "object" && uint8.buffer && typeof uint8.byteOffset === "number" && typeof uint8.byteLength === "number") {
+          httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));
+          return;
+        }
+        httpRequest.end(Buffer.from(body));
+        return;
+      }
+      httpRequest.end();
+    }
+    __name2(writeBody, "writeBody");
+    var DEFAULT_REQUEST_TIMEOUT = 0;
+    var _NodeHttpHandler = class _NodeHttpHandler2 {
+      constructor(options) {
+        this.socketWarningTimestamp = 0;
+        this.metadata = { handlerProtocol: "http/1.1" };
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((_options) => {
+              resolve6(this.resolveDefaultConfig(_options));
+            }).catch(reject);
+          } else {
+            resolve6(this.resolveDefaultConfig(options));
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttpHandler2(instanceOrOptions);
+      }
+      /**
+       * @internal
+       *
+       * @param agent - http(s) agent in use by the NodeHttpHandler instance.
+       * @param socketWarningTimestamp - last socket usage check timestamp.
+       * @param logger - channel for the warning.
+       * @returns timestamp of last emitted warning.
+       */
+      static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {
+        var _a7, _b, _c;
+        const { sockets, requests, maxSockets } = agent;
+        if (typeof maxSockets !== "number" || maxSockets === Infinity) {
+          return socketWarningTimestamp;
+        }
+        const interval = 15e3;
+        if (Date.now() - interval < socketWarningTimestamp) {
+          return socketWarningTimestamp;
+        }
+        if (sockets && requests) {
+          for (const origin in sockets) {
+            const socketsInUse = ((_a7 = sockets[origin]) == null ? void 0 : _a7.length) ?? 0;
+            const requestsEnqueued = ((_b = requests[origin]) == null ? void 0 : _b.length) ?? 0;
+            if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {
+              (_c = logger == null ? void 0 : logger.warn) == null ? void 0 : _c.call(
+                logger,
+                `@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.
+See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html
+or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`
+              );
+              return Date.now();
+            }
+          }
+        }
+        return socketWarningTimestamp;
+      }
+      resolveDefaultConfig(options) {
+        const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {};
+        const keepAlive = true;
+        const maxSockets = 50;
+        return {
+          connectionTimeout,
+          requestTimeout: requestTimeout ?? socketTimeout,
+          httpAgent: (() => {
+            if (httpAgent instanceof import_http2.Agent || typeof (httpAgent == null ? void 0 : httpAgent.destroy) === "function") {
+              return httpAgent;
+            }
+            return new import_http2.Agent({ keepAlive, maxSockets, ...httpAgent });
+          })(),
+          httpsAgent: (() => {
+            if (httpsAgent instanceof import_https.Agent || typeof (httpsAgent == null ? void 0 : httpsAgent.destroy) === "function") {
+              return httpsAgent;
+            }
+            return new import_https.Agent({ keepAlive, maxSockets, ...httpsAgent });
+          })(),
+          logger: console
+        };
+      }
+      destroy() {
+        var _a7, _b, _c, _d;
+        (_b = (_a7 = this.config) == null ? void 0 : _a7.httpAgent) == null ? void 0 : _b.destroy();
+        (_d = (_c = this.config) == null ? void 0 : _c.httpsAgent) == null ? void 0 : _d.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        return new Promise((_resolve2, _reject) => {
+          let writeRequestBodyPromise = void 0;
+          const timeouts = [];
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _reject(arg);
+          }, "reject");
+          if (!this.config) {
+            throw new Error("Node HTTP request handler config is not resolved");
+          }
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const isSSL = request2.protocol === "https:";
+          const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;
+          timeouts.push(
+            timing.setTimeout(
+              () => {
+                this.socketWarningTimestamp = _NodeHttpHandler2.checkSocketUsage(
+                  agent,
+                  this.socketWarningTimestamp,
+                  this.config.logger
+                );
+              },
+              this.config.socketAcquisitionWarningTimeout ?? (this.config.requestTimeout ?? 2e3) + (this.config.connectionTimeout ?? 1e3)
+            )
+          );
+          const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+          let auth = void 0;
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}`;
+          }
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          let hostname = request2.hostname ?? "";
+          if (hostname[0] === "[" && hostname.endsWith("]")) {
+            hostname = request2.hostname.slice(1, -1);
+          } else {
+            hostname = request2.hostname;
+          }
+          const nodeHttpsOptions = {
+            headers: request2.headers,
+            host: hostname,
+            method: request2.method,
+            path: path23,
+            port: request2.port,
+            agent,
+            auth
+          };
+          const requestFunc = isSSL ? import_https.request : import_http2.request;
+          const req = requestFunc(nodeHttpsOptions, (res) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: res.statusCode || -1,
+              reason: res.statusMessage,
+              headers: getTransformedHeaders(res.headers),
+              body: res
+            });
+            resolve6({ response: httpResponse });
+          });
+          req.on("error", (err) => {
+            if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) {
+              reject(Object.assign(err, { name: "TimeoutError" }));
+            } else {
+              reject(err);
+            }
+          });
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.destroy();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              reject(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          timeouts.push(setConnectionTimeout(req, reject, this.config.connectionTimeout));
+          timeouts.push(setSocketTimeout(req, reject, this.config.requestTimeout));
+          const httpAgent = nodeHttpsOptions.agent;
+          if (typeof httpAgent === "object" && "keepAlive" in httpAgent) {
+            timeouts.push(
+              setSocketKeepAlive(req, {
+                // @ts-expect-error keepAlive is not public on httpAgent.
+                keepAlive: httpAgent.keepAlive,
+                // @ts-expect-error keepAliveMsecs is not public on httpAgent.
+                keepAliveMsecs: httpAgent.keepAliveMsecs
+              })
+            );
+          }
+          writeRequestBodyPromise = writeRequestBody(req, request2, this.config.requestTimeout).catch((e) => {
+            timeouts.forEach(timing.clearTimeout);
+            return _reject(e);
+          });
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_NodeHttpHandler, "NodeHttpHandler");
+    var NodeHttpHandler = _NodeHttpHandler;
+    var import_http22 = require("http2");
+    var import_http23 = __toESM2(require("http2"));
+    var _NodeHttp2ConnectionPool = class _NodeHttp2ConnectionPool {
+      constructor(sessions) {
+        this.sessions = [];
+        this.sessions = sessions ?? [];
+      }
+      poll() {
+        if (this.sessions.length > 0) {
+          return this.sessions.shift();
+        }
+      }
+      offerLast(session) {
+        this.sessions.push(session);
+      }
+      contains(session) {
+        return this.sessions.includes(session);
+      }
+      remove(session) {
+        this.sessions = this.sessions.filter((s) => s !== session);
+      }
+      [Symbol.iterator]() {
+        return this.sessions[Symbol.iterator]();
+      }
+      destroy(connection) {
+        for (const session of this.sessions) {
+          if (session === connection) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+          }
+        }
+      }
+    };
+    __name2(_NodeHttp2ConnectionPool, "NodeHttp2ConnectionPool");
+    var NodeHttp2ConnectionPool = _NodeHttp2ConnectionPool;
+    var _NodeHttp2ConnectionManager = class _NodeHttp2ConnectionManager {
+      constructor(config) {
+        this.sessionCache = /* @__PURE__ */ new Map();
+        this.config = config;
+        if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {
+          throw new RangeError("maxConcurrency must be greater than zero.");
+        }
+      }
+      lease(requestContext, connectionConfiguration) {
+        const url2 = this.getUrlString(requestContext);
+        const existingPool = this.sessionCache.get(url2);
+        if (existingPool) {
+          const existingSession = existingPool.poll();
+          if (existingSession && !this.config.disableConcurrency) {
+            return existingSession;
+          }
+        }
+        const session = import_http23.default.connect(url2);
+        if (this.config.maxConcurrency) {
+          session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => {
+            if (err) {
+              throw new Error(
+                "Fail to set maxConcurrentStreams to " + this.config.maxConcurrency + "when creating new session for " + requestContext.destination.toString()
+              );
+            }
+          });
+        }
+        session.unref();
+        const destroySessionCb = /* @__PURE__ */ __name2(() => {
+          session.destroy();
+          this.deleteSession(url2, session);
+        }, "destroySessionCb");
+        session.on("goaway", destroySessionCb);
+        session.on("error", destroySessionCb);
+        session.on("frameError", destroySessionCb);
+        session.on("close", () => this.deleteSession(url2, session));
+        if (connectionConfiguration.requestTimeout) {
+          session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb);
+        }
+        const connectionPool = this.sessionCache.get(url2) || new NodeHttp2ConnectionPool();
+        connectionPool.offerLast(session);
+        this.sessionCache.set(url2, connectionPool);
+        return session;
+      }
+      /**
+       * Delete a session from the connection pool.
+       * @param authority The authority of the session to delete.
+       * @param session The session to delete.
+       */
+      deleteSession(authority, session) {
+        const existingConnectionPool = this.sessionCache.get(authority);
+        if (!existingConnectionPool) {
+          return;
+        }
+        if (!existingConnectionPool.contains(session)) {
+          return;
+        }
+        existingConnectionPool.remove(session);
+        this.sessionCache.set(authority, existingConnectionPool);
+      }
+      release(requestContext, session) {
+        var _a7;
+        const cacheKey = this.getUrlString(requestContext);
+        (_a7 = this.sessionCache.get(cacheKey)) == null ? void 0 : _a7.offerLast(session);
+      }
+      destroy() {
+        for (const [key, connectionPool] of this.sessionCache) {
+          for (const session of connectionPool) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+            connectionPool.remove(session);
+          }
+          this.sessionCache.delete(key);
+        }
+      }
+      setMaxConcurrentStreams(maxConcurrentStreams) {
+        if (maxConcurrentStreams && maxConcurrentStreams <= 0) {
+          throw new RangeError("maxConcurrentStreams must be greater than zero.");
+        }
+        this.config.maxConcurrency = maxConcurrentStreams;
+      }
+      setDisableConcurrentStreams(disableConcurrentStreams) {
+        this.config.disableConcurrency = disableConcurrentStreams;
+      }
+      getUrlString(request2) {
+        return request2.destination.toString();
+      }
+    };
+    __name2(_NodeHttp2ConnectionManager, "NodeHttp2ConnectionManager");
+    var NodeHttp2ConnectionManager = _NodeHttp2ConnectionManager;
+    var _NodeHttp2Handler = class _NodeHttp2Handler2 {
+      constructor(options) {
+        this.metadata = { handlerProtocol: "h2" };
+        this.connectionManager = new NodeHttp2ConnectionManager({});
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((opts) => {
+              resolve6(opts || {});
+            }).catch(reject);
+          } else {
+            resolve6(options || {});
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttp2Handler2(instanceOrOptions);
+      }
+      destroy() {
+        this.connectionManager.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+          this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false);
+          if (this.config.maxConcurrentStreams) {
+            this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams);
+          }
+        }
+        const { requestTimeout, disableConcurrentStreams } = this.config;
+        return new Promise((_resolve2, _reject) => {
+          var _a7;
+          let fulfilled = false;
+          let writeRequestBodyPromise = void 0;
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _reject(arg);
+          }, "reject");
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            fulfilled = true;
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const { hostname, method, port, protocol, query } = request2;
+          let auth = "";
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}@`;
+          }
+          const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : ""}`;
+          const requestContext = { destination: new URL(authority) };
+          const session = this.connectionManager.lease(requestContext, {
+            requestTimeout: (_a7 = this.config) == null ? void 0 : _a7.sessionTimeout,
+            disableConcurrentStreams: disableConcurrentStreams || false
+          });
+          const rejectWithDestroy = /* @__PURE__ */ __name2((err) => {
+            if (disableConcurrentStreams) {
+              this.destroySession(session);
+            }
+            fulfilled = true;
+            reject(err);
+          }, "rejectWithDestroy");
+          const queryString = (0, import_querystring_builder.buildQueryString)(query || {});
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          const req = session.request({
+            ...request2.headers,
+            [import_http22.constants.HTTP2_HEADER_PATH]: path23,
+            [import_http22.constants.HTTP2_HEADER_METHOD]: method
+          });
+          session.ref();
+          req.on("response", (headers) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: headers[":status"] || -1,
+              headers: getTransformedHeaders(headers),
+              body: req
+            });
+            fulfilled = true;
+            resolve6({ response: httpResponse });
+            if (disableConcurrentStreams) {
+              session.close();
+              this.connectionManager.deleteSession(authority, session);
+            }
+          });
+          if (requestTimeout) {
+            req.setTimeout(requestTimeout, () => {
+              req.close();
+              const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`);
+              timeoutError.name = "TimeoutError";
+              rejectWithDestroy(timeoutError);
+            });
+          }
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.close();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              rejectWithDestroy(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          req.on("frameError", (type, code, id) => {
+            rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`));
+          });
+          req.on("error", rejectWithDestroy);
+          req.on("aborted", () => {
+            rejectWithDestroy(
+              new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`)
+            );
+          });
+          req.on("close", () => {
+            session.unref();
+            if (disableConcurrentStreams) {
+              session.destroy();
+            }
+            if (!fulfilled) {
+              rejectWithDestroy(new Error("Unexpected error: http2 request did not get a response"));
+            }
+          });
+          writeRequestBodyPromise = writeRequestBody(req, request2, requestTimeout);
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+      /**
+       * Destroys a session.
+       * @param session The session to destroy.
+       */
+      destroySession(session) {
+        if (!session.destroyed) {
+          session.destroy();
+        }
+      }
+    };
+    __name2(_NodeHttp2Handler, "NodeHttp2Handler");
+    var NodeHttp2Handler = _NodeHttp2Handler;
+    var _Collector = class _Collector extends import_stream.Writable {
+      constructor() {
+        super(...arguments);
+        this.bufferedBytes = [];
+      }
+      _write(chunk, encoding, callback) {
+        this.bufferedBytes.push(chunk);
+        callback();
+      }
+    };
+    __name2(_Collector, "Collector");
+    var Collector = _Collector;
+    var streamCollector = /* @__PURE__ */ __name2((stream) => {
+      if (isReadableStreamInstance(stream)) {
+        return collectReadableStream(stream);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));
+          resolve6(bytes);
+        });
+      });
+    }, "streamCollector");
+    var isReadableStreamInstance = /* @__PURE__ */ __name2((stream) => typeof ReadableStream === "function" && stream instanceof ReadableStream, "isReadableStreamInstance");
+    async function collectReadableStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectReadableStream, "collectReadableStream");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js
+var require_dist_cjs20 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      FetchHttpHandler: () => FetchHttpHandler,
+      keepAliveSupport: () => keepAliveSupport,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    function createRequest(url2, requestOptions) {
+      return new Request(url2, requestOptions);
+    }
+    __name2(createRequest, "createRequest");
+    function requestTimeout(timeoutInMs = 0) {
+      return new Promise((resolve6, reject) => {
+        if (timeoutInMs) {
+          setTimeout(() => {
+            const timeoutError = new Error(`Request did not complete within ${timeoutInMs} ms`);
+            timeoutError.name = "TimeoutError";
+            reject(timeoutError);
+          }, timeoutInMs);
+        }
+      });
+    }
+    __name2(requestTimeout, "requestTimeout");
+    var keepAliveSupport = {
+      supported: void 0
+    };
+    var _FetchHttpHandler = class _FetchHttpHandler2 {
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _FetchHttpHandler2(instanceOrOptions);
+      }
+      constructor(options) {
+        if (typeof options === "function") {
+          this.configProvider = options().then((opts) => opts || {});
+        } else {
+          this.config = options ?? {};
+          this.configProvider = Promise.resolve(this.config);
+        }
+        if (keepAliveSupport.supported === void 0) {
+          keepAliveSupport.supported = Boolean(
+            typeof Request !== "undefined" && "keepalive" in createRequest("https://[::1]")
+          );
+        }
+      }
+      destroy() {
+      }
+      async handle(request2, { abortSignal } = {}) {
+        var _a7;
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        const requestTimeoutInMs = this.config.requestTimeout;
+        const keepAlive = this.config.keepAlive === true;
+        const credentials = this.config.credentials;
+        if (abortSignal == null ? void 0 : abortSignal.aborted) {
+          const abortError = new Error("Request aborted");
+          abortError.name = "AbortError";
+          return Promise.reject(abortError);
+        }
+        let path23 = request2.path;
+        const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+        if (queryString) {
+          path23 += `?${queryString}`;
+        }
+        if (request2.fragment) {
+          path23 += `#${request2.fragment}`;
+        }
+        let auth = "";
+        if (request2.username != null || request2.password != null) {
+          const username = request2.username ?? "";
+          const password = request2.password ?? "";
+          auth = `${username}:${password}@`;
+        }
+        const { port, method } = request2;
+        const url2 = `${request2.protocol}//${auth}${request2.hostname}${port ? `:${port}` : ""}${path23}`;
+        const body = method === "GET" || method === "HEAD" ? void 0 : request2.body;
+        const requestOptions = {
+          body,
+          headers: new Headers(request2.headers),
+          method,
+          credentials
+        };
+        if ((_a7 = this.config) == null ? void 0 : _a7.cache) {
+          requestOptions.cache = this.config.cache;
+        }
+        if (body) {
+          requestOptions.duplex = "half";
+        }
+        if (typeof AbortController !== "undefined") {
+          requestOptions.signal = abortSignal;
+        }
+        if (keepAliveSupport.supported) {
+          requestOptions.keepalive = keepAlive;
+        }
+        if (typeof this.config.requestInit === "function") {
+          Object.assign(requestOptions, this.config.requestInit(request2));
+        }
+        let removeSignalEventListener = /* @__PURE__ */ __name2(() => {
+        }, "removeSignalEventListener");
+        const fetchRequest = createRequest(url2, requestOptions);
+        const raceOfPromises = [
+          fetch(fetchRequest).then((response) => {
+            const fetchHeaders = response.headers;
+            const transformedHeaders = {};
+            for (const pair of fetchHeaders.entries()) {
+              transformedHeaders[pair[0]] = pair[1];
+            }
+            const hasReadableStream = response.body != void 0;
+            if (!hasReadableStream) {
+              return response.blob().then((body2) => ({
+                response: new import_protocol_http8.HttpResponse({
+                  headers: transformedHeaders,
+                  reason: response.statusText,
+                  statusCode: response.status,
+                  body: body2
+                })
+              }));
+            }
+            return {
+              response: new import_protocol_http8.HttpResponse({
+                headers: transformedHeaders,
+                reason: response.statusText,
+                statusCode: response.status,
+                body: response.body
+              })
+            };
+          }),
+          requestTimeout(requestTimeoutInMs)
+        ];
+        if (abortSignal) {
+          raceOfPromises.push(
+            new Promise((resolve6, reject) => {
+              const onAbort = /* @__PURE__ */ __name2(() => {
+                const abortError = new Error("Request aborted");
+                abortError.name = "AbortError";
+                reject(abortError);
+              }, "onAbort");
+              if (typeof abortSignal.addEventListener === "function") {
+                const signal = abortSignal;
+                signal.addEventListener("abort", onAbort, { once: true });
+                removeSignalEventListener = /* @__PURE__ */ __name2(() => signal.removeEventListener("abort", onAbort), "removeSignalEventListener");
+              } else {
+                abortSignal.onabort = onAbort;
+              }
+            })
+          );
+        }
+        return Promise.race(raceOfPromises).finally(removeSignalEventListener);
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          config[key] = value;
+          return config;
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_FetchHttpHandler, "FetchHttpHandler");
+    var FetchHttpHandler = _FetchHttpHandler;
+    var import_util_base64 = require_dist_cjs16();
+    var streamCollector = /* @__PURE__ */ __name2(async (stream) => {
+      var _a7;
+      if (typeof Blob === "function" && stream instanceof Blob || ((_a7 = stream.constructor) == null ? void 0 : _a7.name) === "Blob") {
+        if (Blob.prototype.arrayBuffer !== void 0) {
+          return new Uint8Array(await stream.arrayBuffer());
+        }
+        return collectBlob(stream);
+      }
+      return collectStream(stream);
+    }, "streamCollector");
+    async function collectBlob(blob) {
+      const base64 = await readToBase64(blob);
+      const arrayBuffer = (0, import_util_base64.fromBase64)(base64);
+      return new Uint8Array(arrayBuffer);
+    }
+    __name2(collectBlob, "collectBlob");
+    async function collectStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectStream, "collectStream");
+    function readToBase64(blob) {
+      return new Promise((resolve6, reject) => {
+        const reader = new FileReader();
+        reader.onloadend = () => {
+          if (reader.readyState !== 2) {
+            return reject(new Error("Reader aborted too early"));
+          }
+          const result = reader.result ?? "";
+          const commaIndex = result.indexOf(",");
+          const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;
+          resolve6(result.substring(dataOffset));
+        };
+        reader.onabort = () => reject(new Error("Read aborted"));
+        reader.onerror = () => reject(reader.error);
+        reader.readAsDataURL(blob);
+      });
+    }
+    __name2(readToBase64, "readToBase64");
+  }
+});
+
+// ../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js
+var require_dist_cjs21 = __commonJS({
+  "../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromHex: () => fromHex,
+      toHex: () => toHex
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var SHORT_TO_HEX = {};
+    var HEX_TO_SHORT = {};
+    for (let i = 0; i < 256; i++) {
+      let encodedByte = i.toString(16).toLowerCase();
+      if (encodedByte.length === 1) {
+        encodedByte = `0${encodedByte}`;
+      }
+      SHORT_TO_HEX[i] = encodedByte;
+      HEX_TO_SHORT[encodedByte] = i;
+    }
+    function fromHex(encoded) {
+      if (encoded.length % 2 !== 0) {
+        throw new Error("Hex encoded strings must have an even number length");
+      }
+      const out = new Uint8Array(encoded.length / 2);
+      for (let i = 0; i < encoded.length; i += 2) {
+        const encodedByte = encoded.slice(i, i + 2).toLowerCase();
+        if (encodedByte in HEX_TO_SHORT) {
+          out[i / 2] = HEX_TO_SHORT[encodedByte];
+        } else {
+          throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);
+        }
+      }
+      return out;
+    }
+    __name2(fromHex, "fromHex");
+    function toHex(bytes) {
+      let out = "";
+      for (let i = 0; i < bytes.byteLength; i++) {
+        out += SHORT_TO_HEX[bytes[i]];
+      }
+      return out;
+    }
+    __name2(toHex, "toHex");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js
+var require_stream_type_check = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isBlob = exports2.isReadableStream = void 0;
+    var isReadableStream2 = (stream) => {
+      var _a7;
+      return typeof ReadableStream === "function" && (((_a7 = stream === null || stream === void 0 ? void 0 : stream.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === ReadableStream.name || stream instanceof ReadableStream);
+    };
+    exports2.isReadableStream = isReadableStream2;
+    var isBlob2 = (blob) => {
+      var _a7;
+      return typeof Blob === "function" && (((_a7 = blob === null || blob === void 0 ? void 0 : blob.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === Blob.name || blob instanceof Blob);
+    };
+    exports2.isBlob = isBlob2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js
+var require_sdk_stream_mixin_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var fetch_http_handler_1 = require_dist_cjs20();
+    var util_base64_1 = require_dist_cjs16();
+    var util_hex_encoding_1 = require_dist_cjs21();
+    var util_utf8_1 = require_dist_cjs15();
+    var stream_type_check_1 = require_stream_type_check();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!isBlobInstance(stream) && !(0, stream_type_check_1.isReadableStream)(stream)) {
+        const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+        throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, fetch_http_handler_1.streamCollector)(stream);
+      };
+      const blobToWebStream = (blob) => {
+        if (typeof blob.stream !== "function") {
+          throw new Error("Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\nIf you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body");
+        }
+        return blob.stream();
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === "base64") {
+            return (0, util_base64_1.toBase64)(buf);
+          } else if (encoding === "hex") {
+            return (0, util_hex_encoding_1.toHex)(buf);
+          } else if (encoding === void 0 || encoding === "utf8" || encoding === "utf-8") {
+            return (0, util_utf8_1.toUtf8)(buf);
+          } else if (typeof TextDecoder === "function") {
+            return new TextDecoder(encoding).decode(buf);
+          } else {
+            throw new Error("TextDecoder is not available, please make sure polyfill is provided.");
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          transformed = true;
+          if (isBlobInstance(stream)) {
+            return blobToWebStream(stream);
+          } else if ((0, stream_type_check_1.isReadableStream)(stream)) {
+            return stream;
+          } else {
+            throw new Error(`Cannot transform payload to web stream, got ${stream}`);
+          }
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+    var isBlobInstance = (stream) => typeof Blob === "function" && stream instanceof Blob;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js
+var require_sdk_stream_mixin = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_buffer_from_1 = require_dist_cjs14();
+    var stream_1 = require("stream");
+    var sdk_stream_mixin_browser_1 = require_sdk_stream_mixin_browser();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!(stream instanceof stream_1.Readable)) {
+        try {
+          return (0, sdk_stream_mixin_browser_1.sdkStreamMixin)(stream);
+        } catch (e) {
+          const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+          throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);
+        }
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, node_http_handler_1.streamCollector)(stream);
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === void 0 || Buffer.isEncoding(encoding)) {
+            return (0, util_buffer_from_1.fromArrayBuffer)(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);
+          } else {
+            const decoder2 = new TextDecoder(encoding);
+            return decoder2.decode(buf);
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          if (stream.readableFlowing !== null) {
+            throw new Error("The stream has been consumed by other callbacks.");
+          }
+          if (typeof stream_1.Readable.toWeb !== "function") {
+            throw new Error("Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.");
+          }
+          transformed = true;
+          return stream_1.Readable.toWeb(stream);
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js
+var require_splitStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    async function splitStream2(stream) {
+      if (typeof stream.stream === "function") {
+        stream = stream.stream();
+      }
+      const readableStream = stream;
+      return readableStream.tee();
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js
+var require_splitStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    var stream_1 = require("stream");
+    var splitStream_browser_1 = require_splitStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    async function splitStream2(stream) {
+      if ((0, stream_type_check_1.isReadableStream)(stream) || (0, stream_type_check_1.isBlob)(stream)) {
+        return (0, splitStream_browser_1.splitStream)(stream);
+      }
+      const stream1 = new stream_1.PassThrough();
+      const stream2 = new stream_1.PassThrough();
+      stream.pipe(stream1);
+      stream.pipe(stream2);
+      return [stream1, stream2];
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js
+var require_headStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    async function headStream2(stream, bytes) {
+      var _a7;
+      let byteLengthCounter = 0;
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          byteLengthCounter += (_a7 = value === null || value === void 0 ? void 0 : value.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        }
+        if (byteLengthCounter >= bytes) {
+          break;
+        }
+        isDone = done;
+      }
+      reader.releaseLock();
+      const collected = new Uint8Array(Math.min(bytes, byteLengthCounter));
+      let offset = 0;
+      for (const chunk of chunks) {
+        if (chunk.byteLength > collected.byteLength - offset) {
+          collected.set(chunk.subarray(0, collected.byteLength - offset), offset);
+          break;
+        } else {
+          collected.set(chunk, offset);
+        }
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    exports2.headStream = headStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js
+var require_headStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    var stream_1 = require("stream");
+    var headStream_browser_1 = require_headStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    var headStream2 = (stream, bytes) => {
+      if ((0, stream_type_check_1.isReadableStream)(stream)) {
+        return (0, headStream_browser_1.headStream)(stream, bytes);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        collector.limit = bytes;
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes2 = new Uint8Array(Buffer.concat(this.buffers));
+          resolve6(bytes2);
+        });
+      });
+    };
+    exports2.headStream = headStream2;
+    var Collector = class extends stream_1.Writable {
+      constructor() {
+        super(...arguments);
+        this.buffers = [];
+        this.limit = Infinity;
+        this.bytesBuffered = 0;
+      }
+      _write(chunk, encoding, callback) {
+        var _a7;
+        this.buffers.push(chunk);
+        this.bytesBuffered += (_a7 = chunk.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        if (this.bytesBuffered >= this.limit) {
+          const excess = this.bytesBuffered - this.limit;
+          const tailBuffer = this.buffers[this.buffers.length - 1];
+          this.buffers[this.buffers.length - 1] = tailBuffer.subarray(0, tailBuffer.byteLength - excess);
+          this.emit("finish");
+        }
+        callback();
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js
+var require_ChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_1 = require("stream");
+    var ChecksumStream2 = class extends stream_1.Duplex {
+      constructor({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) {
+        var _a7, _b;
+        super();
+        if (typeof source.pipe === "function") {
+          this.source = source;
+        } else {
+          throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+        }
+        this.base64Encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+        this.expectedChecksum = expectedChecksum;
+        this.checksum = checksum;
+        this.checksumSourceLocation = checksumSourceLocation;
+        this.source.pipe(this);
+      }
+      _read(size) {
+      }
+      _write(chunk, encoding, callback) {
+        try {
+          this.checksum.update(chunk);
+          this.push(chunk);
+        } catch (e) {
+          return callback(e);
+        }
+        return callback();
+      }
+      async _final(callback) {
+        try {
+          const digest = await this.checksum.digest();
+          const received = this.base64Encoder(digest);
+          if (this.expectedChecksum !== received) {
+            return callback(new Error(`Checksum mismatch: expected "${this.expectedChecksum}" but received "${received}" in response header "${this.checksumSourceLocation}".`));
+          }
+        } catch (e) {
+          return callback(e);
+        }
+        this.push(null);
+        return callback();
+      }
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js
+var require_ChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var ReadableStreamRef = typeof ReadableStream === "function" ? ReadableStream : function() {
+    };
+    var ChecksumStream2 = class extends ReadableStreamRef {
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js
+var require_createChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_browser_1 = require_ChecksumStream_browser();
+    var createChecksumStream2 = ({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) => {
+      var _a7, _b;
+      if (!(0, stream_type_check_1.isReadableStream)(source)) {
+        throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+      }
+      const encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+      if (typeof TransformStream !== "function") {
+        throw new Error("@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.");
+      }
+      const transform = new TransformStream({
+        start() {
+        },
+        async transform(chunk, controller) {
+          checksum.update(chunk);
+          controller.enqueue(chunk);
+        },
+        async flush(controller) {
+          const digest = await checksum.digest();
+          const received = encoder(digest);
+          if (expectedChecksum !== received) {
+            const error = new Error(`Checksum mismatch: expected "${expectedChecksum}" but received "${received}" in response header "${checksumSourceLocation}".`);
+            controller.error(error);
+          } else {
+            controller.terminate();
+          }
+        }
+      });
+      source.pipeThrough(transform);
+      const readable = transform.readable;
+      Object.setPrototypeOf(readable, ChecksumStream_browser_1.ChecksumStream.prototype);
+      return readable;
+    };
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js
+var require_createChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_1 = require_ChecksumStream();
+    var createChecksumStream_browser_1 = require_createChecksumStream_browser();
+    function createChecksumStream2(init) {
+      if (typeof ReadableStream === "function" && (0, stream_type_check_1.isReadableStream)(init.source)) {
+        return (0, createChecksumStream_browser_1.createChecksumStream)(init);
+      }
+      return new ChecksumStream_1.ChecksumStream(init);
+    }
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/index.js
+var require_dist_cjs22 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Uint8ArrayBlobAdapter: () => Uint8ArrayBlobAdapter2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_base64 = require_dist_cjs16();
+    var import_util_utf8 = require_dist_cjs15();
+    function transformToString(payload, encoding = "utf-8") {
+      if (encoding === "base64") {
+        return (0, import_util_base64.toBase64)(payload);
+      }
+      return (0, import_util_utf8.toUtf8)(payload);
+    }
+    __name2(transformToString, "transformToString");
+    function transformFromString(str, encoding) {
+      if (encoding === "base64") {
+        return Uint8ArrayBlobAdapter2.mutate((0, import_util_base64.fromBase64)(str));
+      }
+      return Uint8ArrayBlobAdapter2.mutate((0, import_util_utf8.fromUtf8)(str));
+    }
+    __name2(transformFromString, "transformFromString");
+    var _Uint8ArrayBlobAdapter = class _Uint8ArrayBlobAdapter2 extends Uint8Array {
+      /**
+       * @param source - such as a string or Stream.
+       * @returns a new Uint8ArrayBlobAdapter extending Uint8Array.
+       */
+      static fromString(source, encoding = "utf-8") {
+        switch (typeof source) {
+          case "string":
+            return transformFromString(source, encoding);
+          default:
+            throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);
+        }
+      }
+      /**
+       * @param source - Uint8Array to be mutated.
+       * @returns the same Uint8Array but with prototype switched to Uint8ArrayBlobAdapter.
+       */
+      static mutate(source) {
+        Object.setPrototypeOf(source, _Uint8ArrayBlobAdapter2.prototype);
+        return source;
+      }
+      /**
+       * @param encoding - default 'utf-8'.
+       * @returns the blob as string.
+       */
+      transformToString(encoding = "utf-8") {
+        return transformToString(this, encoding);
+      }
+    };
+    __name2(_Uint8ArrayBlobAdapter, "Uint8ArrayBlobAdapter");
+    var Uint8ArrayBlobAdapter2 = _Uint8ArrayBlobAdapter;
+    __reExport2(src_exports, require_getAwsChunkedEncodingStream(), module2.exports);
+    __reExport2(src_exports, require_sdk_stream_mixin(), module2.exports);
+    __reExport2(src_exports, require_splitStream(), module2.exports);
+    __reExport2(src_exports, require_headStream(), module2.exports);
+    __reExport2(src_exports, require_stream_type_check(), module2.exports);
+    __reExport2(src_exports, require_createChecksumStream(), module2.exports);
+    __reExport2(src_exports, require_ChecksumStream(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js
+var import_util_stream, collectBody2;
+var init_collect_stream_body = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js"() {
+    import_util_stream = __toESM(require_dist_cjs22());
+    collectBody2 = async (streamBody = new Uint8Array(), context) => {
+      if (streamBody instanceof Uint8Array) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(streamBody);
+      }
+      if (!streamBody) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(new Uint8Array());
+      }
+      const fromContext = context.streamCollector(streamBody);
+      return import_util_stream.Uint8ArrayBlobAdapter.mutate(await fromContext);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js
+function extendedEncodeURIComponent2(str) {
+  return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
+    return "%" + c.charCodeAt(0).toString(16).toUpperCase();
+  });
+}
+var init_extended_encode_uri_component = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js
+var resolvedPath2;
+var init_resolve_path = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js"() {
+    init_extended_encode_uri_component();
+    resolvedPath2 = (resolvedPath3, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => {
+      if (input != null && input[memberName] !== void 0) {
+        const labelValue = labelValueProvider();
+        if (labelValue.length <= 0) {
+          throw new Error("Empty value provided for input HTTP label: " + memberName + ".");
+        }
+        resolvedPath3 = resolvedPath3.replace(uriLabel, isGreedyLabel ? labelValue.split("/").map((segment) => extendedEncodeURIComponent2(segment)).join("/") : extendedEncodeURIComponent2(labelValue));
+      } else {
+        throw new Error("No value provided for input HTTP label: " + memberName + ".");
+      }
+      return resolvedPath3;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js
+function requestBuilder(input, context) {
+  return new RequestBuilder(input, context);
+}
+var import_protocol_http2, RequestBuilder;
+var init_requestBuilder = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js"() {
+    import_protocol_http2 = __toESM(require_dist_cjs2());
+    init_resolve_path();
+    RequestBuilder = class {
+      constructor(input, context) {
+        this.input = input;
+        this.context = context;
+        this.query = {};
+        this.method = "";
+        this.headers = {};
+        this.path = "";
+        this.body = null;
+        this.hostname = "";
+        this.resolvePathStack = [];
+      }
+      async build() {
+        const { hostname, protocol = "https", port, path: basePath } = await this.context.endpoint();
+        this.path = basePath;
+        for (const resolvePath of this.resolvePathStack) {
+          resolvePath(this.path);
+        }
+        return new import_protocol_http2.HttpRequest({
+          protocol,
+          hostname: this.hostname || hostname,
+          port,
+          method: this.method,
+          path: this.path,
+          query: this.query,
+          body: this.body,
+          headers: this.headers
+        });
+      }
+      hn(hostname) {
+        this.hostname = hostname;
+        return this;
+      }
+      bp(uriLabel) {
+        this.resolvePathStack.push((basePath) => {
+          this.path = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + uriLabel;
+        });
+        return this;
+      }
+      p(memberName, labelValueProvider, uriLabel, isGreedyLabel) {
+        this.resolvePathStack.push((path23) => {
+          this.path = resolvedPath2(path23, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);
+        });
+        return this;
+      }
+      h(headers) {
+        this.headers = headers;
+        return this;
+      }
+      q(query) {
+        this.query = query;
+        return this;
+      }
+      b(body) {
+        this.body = body;
+        return this;
+      }
+      m(method) {
+        this.method = method;
+        return this;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js
+var protocols_exports = {};
+__export(protocols_exports, {
+  RequestBuilder: () => RequestBuilder,
+  collectBody: () => collectBody2,
+  extendedEncodeURIComponent: () => extendedEncodeURIComponent2,
+  requestBuilder: () => requestBuilder,
+  resolvedPath: () => resolvedPath2
+});
+var init_protocols = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js"() {
+    init_collect_stream_body();
+    init_extended_encode_uri_component();
+    init_requestBuilder();
+    init_resolve_path();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js
+var init_requestBuilder2 = __esm({
+  "../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js"() {
+    init_protocols();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/setFeature.js
+function setFeature(context, feature, value) {
+  if (!context.__smithy_context) {
+    context.__smithy_context = {
+      features: {}
+    };
+  } else if (!context.__smithy_context.features) {
+    context.__smithy_context.features = {};
+  }
+  context.__smithy_context.features[feature] = value;
+}
+var init_setFeature = __esm({
+  "../../../node_modules/@smithy/core/dist-es/setFeature.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js
+var DefaultIdentityProviderConfig;
+var init_DefaultIdentityProviderConfig = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js"() {
+    DefaultIdentityProviderConfig = class {
+      constructor(config) {
+        this.authSchemes = /* @__PURE__ */ new Map();
+        for (const [key, value] of Object.entries(config)) {
+          if (value !== void 0) {
+            this.authSchemes.set(key, value);
+          }
+        }
+      }
+      getIdentityProvider(schemeId) {
+        return this.authSchemes.get(schemeId);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js
+var import_protocol_http3, import_types7, HttpApiKeyAuthSigner;
+var init_httpApiKeyAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js"() {
+    import_protocol_http3 = __toESM(require_dist_cjs2());
+    import_types7 = __toESM(require_dist_cjs());
+    HttpApiKeyAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!signingProperties) {
+          throw new Error("request could not be signed with `apiKey` since the `name` and `in` signer properties are missing");
+        }
+        if (!signingProperties.name) {
+          throw new Error("request could not be signed with `apiKey` since the `name` signer property is missing");
+        }
+        if (!signingProperties.in) {
+          throw new Error("request could not be signed with `apiKey` since the `in` signer property is missing");
+        }
+        if (!identity.apiKey) {
+          throw new Error("request could not be signed with `apiKey` since the `apiKey` is not defined");
+        }
+        const clonedRequest = import_protocol_http3.HttpRequest.clone(httpRequest);
+        if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.QUERY) {
+          clonedRequest.query[signingProperties.name] = identity.apiKey;
+        } else if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.HEADER) {
+          clonedRequest.headers[signingProperties.name] = signingProperties.scheme ? `${signingProperties.scheme} ${identity.apiKey}` : identity.apiKey;
+        } else {
+          throw new Error("request can only be signed with `apiKey` locations `query` or `header`, but found: `" + signingProperties.in + "`");
+        }
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js
+var import_protocol_http4, HttpBearerAuthSigner;
+var init_httpBearerAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js"() {
+    import_protocol_http4 = __toESM(require_dist_cjs2());
+    HttpBearerAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        const clonedRequest = import_protocol_http4.HttpRequest.clone(httpRequest);
+        if (!identity.token) {
+          throw new Error("request could not be signed with `token` since the `token` is not defined");
+        }
+        clonedRequest.headers["Authorization"] = `Bearer ${identity.token}`;
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js
+var NoAuthSigner;
+var init_noAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js"() {
+    NoAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        return httpRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js
+var init_httpAuthSchemes = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js"() {
+    init_httpApiKeyAuth();
+    init_httpBearerAuth();
+    init_noAuth();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js
+var createIsIdentityExpiredFunction, EXPIRATION_MS, isIdentityExpired, doesIdentityRequireRefresh, memoizeIdentityProvider;
+var init_memoizeIdentityProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js"() {
+    createIsIdentityExpiredFunction = (expirationMs) => (identity) => doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;
+    EXPIRATION_MS = 3e5;
+    isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);
+    doesIdentityRequireRefresh = (identity) => identity.expiration !== void 0;
+    memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {
+      if (provider === void 0) {
+        return void 0;
+      }
+      const normalizedProvider = typeof provider !== "function" ? async () => Promise.resolve(provider) : provider;
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = async (options) => {
+        if (!pending) {
+          pending = normalizedProvider(options);
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      };
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || options?.forceRefresh) {
+            resolved = await coalesceProvider(options);
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || options?.forceRefresh) {
+          resolved = await coalesceProvider(options);
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (!requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider(options);
+          return resolved;
+        }
+        return resolved;
+      };
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js
+var init_util_identity_and_auth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js"() {
+    init_DefaultIdentityProviderConfig();
+    init_httpAuthSchemes();
+    init_memoizeIdentityProvider();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/index.js
+var dist_es_exports = {};
+__export(dist_es_exports, {
+  DefaultIdentityProviderConfig: () => DefaultIdentityProviderConfig,
+  EXPIRATION_MS: () => EXPIRATION_MS,
+  HttpApiKeyAuthSigner: () => HttpApiKeyAuthSigner,
+  HttpBearerAuthSigner: () => HttpBearerAuthSigner,
+  NoAuthSigner: () => NoAuthSigner,
+  createIsIdentityExpiredFunction: () => createIsIdentityExpiredFunction,
+  createPaginator: () => createPaginator,
+  doesIdentityRequireRefresh: () => doesIdentityRequireRefresh,
+  getHttpAuthSchemeEndpointRuleSetPlugin: () => getHttpAuthSchemeEndpointRuleSetPlugin,
+  getHttpAuthSchemePlugin: () => getHttpAuthSchemePlugin,
+  getHttpSigningPlugin: () => getHttpSigningPlugin,
+  getSmithyContext: () => getSmithyContext,
+  httpAuthSchemeEndpointRuleSetMiddlewareOptions: () => httpAuthSchemeEndpointRuleSetMiddlewareOptions,
+  httpAuthSchemeMiddleware: () => httpAuthSchemeMiddleware,
+  httpAuthSchemeMiddlewareOptions: () => httpAuthSchemeMiddlewareOptions,
+  httpSigningMiddleware: () => httpSigningMiddleware,
+  httpSigningMiddlewareOptions: () => httpSigningMiddlewareOptions,
+  isIdentityExpired: () => isIdentityExpired,
+  memoizeIdentityProvider: () => memoizeIdentityProvider,
+  normalizeProvider: () => normalizeProvider,
+  requestBuilder: () => requestBuilder,
+  setFeature: () => setFeature
+});
+var init_dist_es = __esm({
+  "../../../node_modules/@smithy/core/dist-es/index.js"() {
+    init_getSmithyContext();
+    init_middleware_http_auth_scheme();
+    init_middleware_http_signing();
+    init_normalizeProvider();
+    init_createPaginator();
+    init_requestBuilder2();
+    init_setFeature();
+    init_util_identity_and_auth();
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js
+var require_dist_cjs23 = __commonJS({
+  "../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      contentLengthMiddleware: () => contentLengthMiddleware,
+      contentLengthMiddlewareOptions: () => contentLengthMiddlewareOptions,
+      getContentLengthPlugin: () => getContentLengthPlugin
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var CONTENT_LENGTH_HEADER = "content-length";
+    function contentLengthMiddleware(bodyLengthChecker) {
+      return (next) => async (args) => {
+        const request2 = args.request;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          const { body, headers } = request2;
+          if (body && Object.keys(headers).map((str) => str.toLowerCase()).indexOf(CONTENT_LENGTH_HEADER) === -1) {
+            try {
+              const length = bodyLengthChecker(body);
+              request2.headers = {
+                ...request2.headers,
+                [CONTENT_LENGTH_HEADER]: String(length)
+              };
+            } catch (error) {
+            }
+          }
+        }
+        return next({
+          ...args,
+          request: request2
+        });
+      };
+    }
+    __name2(contentLengthMiddleware, "contentLengthMiddleware");
+    var contentLengthMiddlewareOptions = {
+      step: "build",
+      tags: ["SET_CONTENT_LENGTH", "CONTENT_LENGTH"],
+      name: "contentLengthMiddleware",
+      override: true
+    };
+    var getContentLengthPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);
+      }
+    }), "getContentLengthPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/property-provider/dist-cjs/index.js
+var require_dist_cjs24 = __commonJS({
+  "../../../node_modules/@smithy/property-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CredentialsProviderError: () => CredentialsProviderError,
+      ProviderError: () => ProviderError2,
+      TokenProviderError: () => TokenProviderError,
+      chain: () => chain,
+      fromStatic: () => fromStatic,
+      memoize: () => memoize
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _ProviderError = class _ProviderError2 extends Error {
+      constructor(message, options = true) {
+        var _a7;
+        let logger;
+        let tryNextLink = true;
+        if (typeof options === "boolean") {
+          logger = void 0;
+          tryNextLink = options;
+        } else if (options != null && typeof options === "object") {
+          logger = options.logger;
+          tryNextLink = options.tryNextLink ?? true;
+        }
+        super(message);
+        this.name = "ProviderError";
+        this.tryNextLink = tryNextLink;
+        Object.setPrototypeOf(this, _ProviderError2.prototype);
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `@smithy/property-provider ${tryNextLink ? "->" : "(!)"} ${message}`);
+      }
+      /**
+       * @deprecated use new operator.
+       */
+      static from(error, options = true) {
+        return Object.assign(new this(error.message, options), error);
+      }
+    };
+    __name2(_ProviderError, "ProviderError");
+    var ProviderError2 = _ProviderError;
+    var _CredentialsProviderError = class _CredentialsProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "CredentialsProviderError";
+        Object.setPrototypeOf(this, _CredentialsProviderError2.prototype);
+      }
+    };
+    __name2(_CredentialsProviderError, "CredentialsProviderError");
+    var CredentialsProviderError = _CredentialsProviderError;
+    var _TokenProviderError = class _TokenProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "TokenProviderError";
+        Object.setPrototypeOf(this, _TokenProviderError2.prototype);
+      }
+    };
+    __name2(_TokenProviderError, "TokenProviderError");
+    var TokenProviderError = _TokenProviderError;
+    var chain = /* @__PURE__ */ __name2((...providers) => async () => {
+      if (providers.length === 0) {
+        throw new ProviderError2("No providers in chain");
+      }
+      let lastProviderError;
+      for (const provider of providers) {
+        try {
+          const credentials = await provider();
+          return credentials;
+        } catch (err) {
+          lastProviderError = err;
+          if (err == null ? void 0 : err.tryNextLink) {
+            continue;
+          }
+          throw err;
+        }
+      }
+      throw lastProviderError;
+    }, "chain");
+    var fromStatic = /* @__PURE__ */ __name2((staticValue) => () => Promise.resolve(staticValue), "fromStatic");
+    var memoize = /* @__PURE__ */ __name2((provider, isExpired, requiresRefresh) => {
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = /* @__PURE__ */ __name2(async () => {
+        if (!pending) {
+          pending = provider();
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      }, "coalesceProvider");
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+            resolved = await coalesceProvider();
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+          resolved = await coalesceProvider();
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (requiresRefresh && !requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider();
+          return resolved;
+        }
+        return resolved;
+      };
+    }, "memoize");
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js
+var require_getHomeDir = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getHomeDir = void 0;
+    var os_1 = require("os");
+    var path_1 = require("path");
+    var homeDirCache = {};
+    var getHomeDirCacheKey = () => {
+      if (process && process.geteuid) {
+        return `${process.geteuid()}`;
+      }
+      return "DEFAULT";
+    };
+    var getHomeDir2 = () => {
+      const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env;
+      if (HOME)
+        return HOME;
+      if (USERPROFILE)
+        return USERPROFILE;
+      if (HOMEPATH)
+        return `${HOMEDRIVE}${HOMEPATH}`;
+      const homeDirCacheKey = getHomeDirCacheKey();
+      if (!homeDirCache[homeDirCacheKey])
+        homeDirCache[homeDirCacheKey] = (0, os_1.homedir)();
+      return homeDirCache[homeDirCacheKey];
+    };
+    exports2.getHomeDir = getHomeDir2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js
+var require_getSSOTokenFilepath = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFilepath = void 0;
+    var crypto_1 = require("crypto");
+    var path_1 = require("path");
+    var getHomeDir_1 = require_getHomeDir();
+    var getSSOTokenFilepath2 = (id) => {
+      const hasher = (0, crypto_1.createHash)("sha1");
+      const cacheName = hasher.update(id).digest("hex");
+      return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`);
+    };
+    exports2.getSSOTokenFilepath = getSSOTokenFilepath2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js
+var require_getSSOTokenFromFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFromFile = void 0;
+    var fs_1 = require("fs");
+    var getSSOTokenFilepath_1 = require_getSSOTokenFilepath();
+    var { readFile } = fs_1.promises;
+    var getSSOTokenFromFile2 = async (id) => {
+      const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id);
+      const ssoTokenText = await readFile(ssoTokenFilepath, "utf8");
+      return JSON.parse(ssoTokenText);
+    };
+    exports2.getSSOTokenFromFile = getSSOTokenFromFile2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js
+var require_slurpFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.slurpFile = void 0;
+    var fs_1 = require("fs");
+    var { readFile } = fs_1.promises;
+    var filePromisesHash = {};
+    var slurpFile = (path23, options) => {
+      if (!filePromisesHash[path23] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) {
+        filePromisesHash[path23] = readFile(path23, "utf8");
+      }
+      return filePromisesHash[path23];
+    };
+    exports2.slurpFile = slurpFile;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js
+var require_dist_cjs25 = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR,
+      DEFAULT_PROFILE: () => DEFAULT_PROFILE,
+      ENV_PROFILE: () => ENV_PROFILE,
+      getProfileName: () => getProfileName,
+      loadSharedConfigFiles: () => loadSharedConfigFiles,
+      loadSsoSessionData: () => loadSsoSessionData,
+      parseKnownFiles: () => parseKnownFiles
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_getHomeDir(), module2.exports);
+    var ENV_PROFILE = "AWS_PROFILE";
+    var DEFAULT_PROFILE = "default";
+    var getProfileName = /* @__PURE__ */ __name2((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName");
+    __reExport2(src_exports, require_getSSOTokenFilepath(), module2.exports);
+    __reExport2(src_exports, require_getSSOTokenFromFile(), module2.exports);
+    var import_types8 = require_dist_cjs();
+    var getConfigData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => {
+      const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+      if (indexOfSeparator === -1) {
+        return false;
+      }
+      return Object.values(import_types8.IniSectionType).includes(key.substring(0, indexOfSeparator));
+    }).reduce(
+      (acc, [key, value]) => {
+        const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+        const updatedKey = key.substring(0, indexOfSeparator) === import_types8.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;
+        acc[updatedKey] = value;
+        return acc;
+      },
+      {
+        // Populate default profile, if present.
+        ...data.default && { default: data.default }
+      }
+    ), "getConfigData");
+    var import_path3 = require("path");
+    var import_getHomeDir = require_getHomeDir();
+    var ENV_CONFIG_PATH = "AWS_CONFIG_FILE";
+    var getConfigFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CONFIG_PATH] || (0, import_path3.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath");
+    var import_getHomeDir2 = require_getHomeDir();
+    var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE";
+    var getCredentialsFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path3.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath");
+    var import_getHomeDir3 = require_getHomeDir();
+    var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/;
+    var profileNameBlockList = ["__proto__", "profile __proto__"];
+    var parseIni = /* @__PURE__ */ __name2((iniData) => {
+      const map = {};
+      let currentSection;
+      let currentSubSection;
+      for (const iniLine of iniData.split(/\r?\n/)) {
+        const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim();
+        const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]";
+        if (isSection) {
+          currentSection = void 0;
+          currentSubSection = void 0;
+          const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);
+          const matches = prefixKeyRegex.exec(sectionName);
+          if (matches) {
+            const [, prefix, , name] = matches;
+            if (Object.values(import_types8.IniSectionType).includes(prefix)) {
+              currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);
+            }
+          } else {
+            currentSection = sectionName;
+          }
+          if (profileNameBlockList.includes(sectionName)) {
+            throw new Error(`Found invalid profile name "${sectionName}"`);
+          }
+        } else if (currentSection) {
+          const indexOfEqualsSign = trimmedLine.indexOf("=");
+          if (![0, -1].includes(indexOfEqualsSign)) {
+            const [name, value] = [
+              trimmedLine.substring(0, indexOfEqualsSign).trim(),
+              trimmedLine.substring(indexOfEqualsSign + 1).trim()
+            ];
+            if (value === "") {
+              currentSubSection = name;
+            } else {
+              if (currentSubSection && iniLine.trimStart() === iniLine) {
+                currentSubSection = void 0;
+              }
+              map[currentSection] = map[currentSection] || {};
+              const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;
+              map[currentSection][key] = value;
+            }
+          }
+        }
+      }
+      return map;
+    }, "parseIni");
+    var import_slurpFile = require_slurpFile();
+    var swallowError = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var CONFIG_PREFIX_SEPARATOR = ".";
+    var loadSharedConfigFiles = /* @__PURE__ */ __name2(async (init = {}) => {
+      const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;
+      const homeDir = (0, import_getHomeDir3.getHomeDir)();
+      const relativeHomeDirPrefix = "~/";
+      let resolvedFilepath = filepath;
+      if (filepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedFilepath = (0, import_path3.join)(homeDir, filepath.slice(2));
+      }
+      let resolvedConfigFilepath = configFilepath;
+      if (configFilepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedConfigFilepath = (0, import_path3.join)(homeDir, configFilepath.slice(2));
+      }
+      const parsedFiles = await Promise.all([
+        (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).then(getConfigData).catch(swallowError),
+        (0, import_slurpFile.slurpFile)(resolvedFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).catch(swallowError)
+      ]);
+      return {
+        configFile: parsedFiles[0],
+        credentialsFile: parsedFiles[1]
+      };
+    }, "loadSharedConfigFiles");
+    var getSsoSessionData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types8.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData");
+    var import_slurpFile2 = require_slurpFile();
+    var swallowError2 = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var loadSsoSessionData = /* @__PURE__ */ __name2(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData");
+    var mergeConfigFiles = /* @__PURE__ */ __name2((...files) => {
+      const merged = {};
+      for (const file of files) {
+        for (const [key, values] of Object.entries(file)) {
+          if (merged[key] !== void 0) {
+            Object.assign(merged[key], values);
+          } else {
+            merged[key] = values;
+          }
+        }
+      }
+      return merged;
+    }, "mergeConfigFiles");
+    var parseKnownFiles = /* @__PURE__ */ __name2(async (init) => {
+      const parsedFiles = await loadSharedConfigFiles(init);
+      return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);
+    }, "parseKnownFiles");
+  }
+});
+
+// ../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js
+var require_dist_cjs26 = __commonJS({
+  "../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      loadConfig: () => loadConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    function getSelectorName(functionString) {
+      try {
+        const constants2 = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? []));
+        constants2.delete("CONFIG");
+        constants2.delete("CONFIG_PREFIX_SEPARATOR");
+        constants2.delete("ENV");
+        return [...constants2].join(", ");
+      } catch (e) {
+        return functionString;
+      }
+    }
+    __name2(getSelectorName, "getSelectorName");
+    var fromEnv = /* @__PURE__ */ __name2((envVarSelector, logger) => async () => {
+      try {
+        const config = envVarSelector(process.env);
+        if (config === void 0) {
+          throw new Error();
+        }
+        return config;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`,
+          { logger }
+        );
+      }
+    }, "fromEnv");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var fromSharedConfigFiles = /* @__PURE__ */ __name2((configSelector, { preferredFile = "config", ...init } = {}) => async () => {
+      const profile = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init);
+      const profileFromCredentials = credentialsFile[profile] || {};
+      const profileFromConfig = configFile[profile] || {};
+      const mergedProfile = preferredFile === "config" ? { ...profileFromCredentials, ...profileFromConfig } : { ...profileFromConfig, ...profileFromCredentials };
+      try {
+        const cfgFile = preferredFile === "config" ? configFile : credentialsFile;
+        const configValue = configSelector(mergedProfile, cfgFile);
+        if (configValue === void 0) {
+          throw new Error();
+        }
+        return configValue;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`,
+          { logger: init.logger }
+        );
+      }
+    }, "fromSharedConfigFiles");
+    var isFunction2 = /* @__PURE__ */ __name2((func) => typeof func === "function", "isFunction");
+    var fromStatic = /* @__PURE__ */ __name2((defaultValue) => isFunction2(defaultValue) ? async () => await defaultValue() : (0, import_property_provider2.fromStatic)(defaultValue), "fromStatic");
+    var loadConfig = /* @__PURE__ */ __name2(({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        fromEnv(environmentVariableSelector),
+        fromSharedConfigFiles(configFileSelector, configuration),
+        fromStatic(defaultValue)
+      )
+    ), "loadConfig");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js
+var require_getEndpointUrlConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointUrlConfig = void 0;
+    var shared_ini_file_loader_1 = require_dist_cjs25();
+    var ENV_ENDPOINT_URL = "AWS_ENDPOINT_URL";
+    var CONFIG_ENDPOINT_URL = "endpoint_url";
+    var getEndpointUrlConfig = (serviceId) => ({
+      environmentVariableSelector: (env2) => {
+        const serviceSuffixParts = serviceId.split(" ").map((w) => w.toUpperCase());
+        const serviceEndpointUrl = env2[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join("_")];
+        if (serviceEndpointUrl)
+          return serviceEndpointUrl;
+        const endpointUrl = env2[ENV_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      configFileSelector: (profile, config) => {
+        if (config && profile.services) {
+          const servicesSection = config[["services", profile.services].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+          if (servicesSection) {
+            const servicePrefixParts = serviceId.split(" ").map((w) => w.toLowerCase());
+            const endpointUrl2 = servicesSection[[servicePrefixParts.join("_"), CONFIG_ENDPOINT_URL].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+            if (endpointUrl2)
+              return endpointUrl2;
+          }
+        }
+        const endpointUrl = profile[CONFIG_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      default: void 0
+    });
+    exports2.getEndpointUrlConfig = getEndpointUrlConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js
+var require_getEndpointFromConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointFromConfig = void 0;
+    var node_config_provider_1 = require_dist_cjs26();
+    var getEndpointUrlConfig_1 = require_getEndpointUrlConfig();
+    var getEndpointFromConfig = async (serviceId) => (0, node_config_provider_1.loadConfig)((0, getEndpointUrlConfig_1.getEndpointUrlConfig)(serviceId !== null && serviceId !== void 0 ? serviceId : ""))();
+    exports2.getEndpointFromConfig = getEndpointFromConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js
+var require_dist_cjs27 = __commonJS({
+  "../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseQueryString: () => parseQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function parseQueryString(querystring) {
+      const query = {};
+      querystring = querystring.replace(/^\?/, "");
+      if (querystring) {
+        for (const pair of querystring.split("&")) {
+          let [key, value = null] = pair.split("=");
+          key = decodeURIComponent(key);
+          if (value) {
+            value = decodeURIComponent(value);
+          }
+          if (!(key in query)) {
+            query[key] = value;
+          } else if (Array.isArray(query[key])) {
+            query[key].push(value);
+          } else {
+            query[key] = [query[key], value];
+          }
+        }
+      }
+      return query;
+    }
+    __name2(parseQueryString, "parseQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/url-parser/dist-cjs/index.js
+var require_dist_cjs28 = __commonJS({
+  "../../../node_modules/@smithy/url-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseUrl: () => parseUrl
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_querystring_parser = require_dist_cjs27();
+    var parseUrl = /* @__PURE__ */ __name2((url2) => {
+      if (typeof url2 === "string") {
+        return parseUrl(new URL(url2));
+      }
+      const { hostname, pathname, port, protocol, search } = url2;
+      let query;
+      if (search) {
+        query = (0, import_querystring_parser.parseQueryString)(search);
+      }
+      return {
+        hostname,
+        port: port ? parseInt(port) : void 0,
+        protocol,
+        path: pathname,
+        query
+      };
+    }, "parseUrl");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js
+var require_dist_cjs29 = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      endpointMiddleware: () => endpointMiddleware,
+      endpointMiddlewareOptions: () => endpointMiddlewareOptions,
+      getEndpointFromInstructions: () => getEndpointFromInstructions,
+      getEndpointPlugin: () => getEndpointPlugin,
+      resolveEndpointConfig: () => resolveEndpointConfig,
+      resolveParams: () => resolveParams,
+      toEndpointV1: () => toEndpointV1
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var resolveParamsForS3 = /* @__PURE__ */ __name2(async (endpointParams) => {
+      const bucket = (endpointParams == null ? void 0 : endpointParams.Bucket) || "";
+      if (typeof endpointParams.Bucket === "string") {
+        endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent("#")).replace(/\?/g, encodeURIComponent("?"));
+      }
+      if (isArnBucketName(bucket)) {
+        if (endpointParams.ForcePathStyle === true) {
+          throw new Error("Path-style addressing cannot be used with ARN buckets");
+        }
+      } else if (!isDnsCompatibleBucketName(bucket) || bucket.indexOf(".") !== -1 && !String(endpointParams.Endpoint).startsWith("http:") || bucket.toLowerCase() !== bucket || bucket.length < 3) {
+        endpointParams.ForcePathStyle = true;
+      }
+      if (endpointParams.DisableMultiRegionAccessPoints) {
+        endpointParams.disableMultiRegionAccessPoints = true;
+        endpointParams.DisableMRAP = true;
+      }
+      return endpointParams;
+    }, "resolveParamsForS3");
+    var DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/;
+    var IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/;
+    var DOTS_PATTERN = /\.\./;
+    var isDnsCompatibleBucketName = /* @__PURE__ */ __name2((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), "isDnsCompatibleBucketName");
+    var isArnBucketName = /* @__PURE__ */ __name2((bucketName) => {
+      const [arn, partition, service, , , bucket] = bucketName.split(":");
+      const isArn = arn === "arn" && bucketName.split(":").length >= 6;
+      const isValidArn = Boolean(isArn && partition && service && bucket);
+      if (isArn && !isValidArn) {
+        throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);
+      }
+      return isValidArn;
+    }, "isArnBucketName");
+    var createConfigValueProvider = /* @__PURE__ */ __name2((configKey, canonicalEndpointParamKey, config) => {
+      const configProvider = /* @__PURE__ */ __name2(async () => {
+        const configValue = config[configKey] ?? config[canonicalEndpointParamKey];
+        if (typeof configValue === "function") {
+          return configValue();
+        }
+        return configValue;
+      }, "configProvider");
+      if (configKey === "credentialScope" || canonicalEndpointParamKey === "CredentialScope") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.credentialScope) ?? (credentials == null ? void 0 : credentials.CredentialScope);
+          return configValue;
+        };
+      }
+      if (configKey === "accountId" || canonicalEndpointParamKey === "AccountId") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.accountId) ?? (credentials == null ? void 0 : credentials.AccountId);
+          return configValue;
+        };
+      }
+      if (configKey === "endpoint" || canonicalEndpointParamKey === "endpoint") {
+        return async () => {
+          const endpoint = await configProvider();
+          if (endpoint && typeof endpoint === "object") {
+            if ("url" in endpoint) {
+              return endpoint.url.href;
+            }
+            if ("hostname" in endpoint) {
+              const { protocol, hostname, port, path: path23 } = endpoint;
+              return `${protocol}//${hostname}${port ? ":" + port : ""}${path23}`;
+            }
+          }
+          return endpoint;
+        };
+      }
+      return configProvider;
+    }, "createConfigValueProvider");
+    var import_getEndpointFromConfig = require_getEndpointFromConfig();
+    var import_url_parser = require_dist_cjs28();
+    var toEndpointV1 = /* @__PURE__ */ __name2((endpoint) => {
+      if (typeof endpoint === "object") {
+        if ("url" in endpoint) {
+          return (0, import_url_parser.parseUrl)(endpoint.url);
+        }
+        return endpoint;
+      }
+      return (0, import_url_parser.parseUrl)(endpoint);
+    }, "toEndpointV1");
+    var getEndpointFromInstructions = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig, context) => {
+      if (!clientConfig.endpoint) {
+        let endpointFromConfig;
+        if (clientConfig.serviceConfiguredEndpoint) {
+          endpointFromConfig = await clientConfig.serviceConfiguredEndpoint();
+        } else {
+          endpointFromConfig = await (0, import_getEndpointFromConfig.getEndpointFromConfig)(clientConfig.serviceId);
+        }
+        if (endpointFromConfig) {
+          clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));
+        }
+      }
+      const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);
+      if (typeof clientConfig.endpointProvider !== "function") {
+        throw new Error("config.endpointProvider is not set.");
+      }
+      const endpoint = clientConfig.endpointProvider(endpointParams, context);
+      return endpoint;
+    }, "getEndpointFromInstructions");
+    var resolveParams = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig) => {
+      var _a7;
+      const endpointParams = {};
+      const instructions = ((_a7 = instructionsSupplier == null ? void 0 : instructionsSupplier.getEndpointParameterInstructions) == null ? void 0 : _a7.call(instructionsSupplier)) || {};
+      for (const [name, instruction] of Object.entries(instructions)) {
+        switch (instruction.type) {
+          case "staticContextParams":
+            endpointParams[name] = instruction.value;
+            break;
+          case "contextParams":
+            endpointParams[name] = commandInput[instruction.name];
+            break;
+          case "clientContextParams":
+          case "builtInParams":
+            endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();
+            break;
+          case "operationContextParams":
+            endpointParams[name] = instruction.get(commandInput);
+            break;
+          default:
+            throw new Error("Unrecognized endpoint parameter instruction: " + JSON.stringify(instruction));
+        }
+      }
+      if (Object.keys(instructions).length === 0) {
+        Object.assign(endpointParams, clientConfig);
+      }
+      if (String(clientConfig.serviceId).toLowerCase() === "s3") {
+        await resolveParamsForS3(endpointParams);
+      }
+      return endpointParams;
+    }, "resolveParams");
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_util_middleware3 = require_dist_cjs10();
+    var endpointMiddleware = /* @__PURE__ */ __name2(({
+      config,
+      instructions
+    }) => {
+      return (next, context) => async (args) => {
+        var _a7, _b, _c;
+        if (config.endpoint) {
+          (0, import_core4.setFeature)(context, "ENDPOINT_OVERRIDE", "N");
+        }
+        const endpoint = await getEndpointFromInstructions(
+          args.input,
+          {
+            getEndpointParameterInstructions() {
+              return instructions;
+            }
+          },
+          { ...config },
+          context
+        );
+        context.endpointV2 = endpoint;
+        context.authSchemes = (_a7 = endpoint.properties) == null ? void 0 : _a7.authSchemes;
+        const authScheme = (_b = context.authSchemes) == null ? void 0 : _b[0];
+        if (authScheme) {
+          context["signing_region"] = authScheme.signingRegion;
+          context["signing_service"] = authScheme.signingName;
+          const smithyContext = (0, import_util_middleware3.getSmithyContext)(context);
+          const httpAuthOption = (_c = smithyContext == null ? void 0 : smithyContext.selectedHttpAuthScheme) == null ? void 0 : _c.httpAuthOption;
+          if (httpAuthOption) {
+            httpAuthOption.signingProperties = Object.assign(
+              httpAuthOption.signingProperties || {},
+              {
+                signing_region: authScheme.signingRegion,
+                signingRegion: authScheme.signingRegion,
+                signing_service: authScheme.signingName,
+                signingName: authScheme.signingName,
+                signingRegionSet: authScheme.signingRegionSet
+              },
+              authScheme.properties
+            );
+          }
+        }
+        return next({
+          ...args
+        });
+      };
+    }, "endpointMiddleware");
+    var import_middleware_serde2 = require_dist_cjs12();
+    var endpointMiddlewareOptions = {
+      step: "serialize",
+      tags: ["ENDPOINT_PARAMETERS", "ENDPOINT_V2", "ENDPOINT"],
+      name: "endpointV2Middleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde2.serializerMiddlewareOption.name
+    };
+    var getEndpointPlugin = /* @__PURE__ */ __name2((config, instructions) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(
+          endpointMiddleware({
+            config,
+            instructions
+          }),
+          endpointMiddlewareOptions
+        );
+      }
+    }), "getEndpointPlugin");
+    var import_getEndpointFromConfig2 = require_getEndpointFromConfig();
+    var resolveEndpointConfig = /* @__PURE__ */ __name2((input) => {
+      const tls = input.tls ?? true;
+      const { endpoint } = input;
+      const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await (0, import_util_middleware3.normalizeProvider)(endpoint)()) : void 0;
+      const isCustomEndpoint = !!endpoint;
+      const resolvedConfig = {
+        ...input,
+        endpoint: customEndpointProvider,
+        tls,
+        isCustomEndpoint,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false),
+        useFipsEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useFipsEndpoint ?? false)
+      };
+      let configuredEndpointPromise = void 0;
+      resolvedConfig.serviceConfiguredEndpoint = async () => {
+        if (input.serviceId && !configuredEndpointPromise) {
+          configuredEndpointPromise = (0, import_getEndpointFromConfig2.getEndpointFromConfig)(input.serviceId);
+        }
+        return configuredEndpointPromise;
+      };
+      return resolvedConfig;
+    }, "resolveEndpointConfig");
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/rng.js
+function rng() {
+  if (poolPtr > rnds8Pool.length - 16) {
+    import_crypto.default.randomFillSync(rnds8Pool);
+    poolPtr = 0;
+  }
+  return rnds8Pool.slice(poolPtr, poolPtr += 16);
+}
+var import_crypto, rnds8Pool, poolPtr;
+var init_rng = __esm({
+  "../../../node_modules/uuid/dist/esm-node/rng.js"() {
+    import_crypto = __toESM(require("crypto"));
+    rnds8Pool = new Uint8Array(256);
+    poolPtr = rnds8Pool.length;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/regex.js
+var regex_default;
+var init_regex = __esm({
+  "../../../node_modules/uuid/dist/esm-node/regex.js"() {
+    regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/validate.js
+function validate(uuid) {
+  return typeof uuid === "string" && regex_default.test(uuid);
+}
+var validate_default;
+var init_validate = __esm({
+  "../../../node_modules/uuid/dist/esm-node/validate.js"() {
+    init_regex();
+    validate_default = validate;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/stringify.js
+function unsafeStringify(arr, offset = 0) {
+  return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
+}
+function stringify2(arr, offset = 0) {
+  const uuid = unsafeStringify(arr, offset);
+  if (!validate_default(uuid)) {
+    throw TypeError("Stringified UUID is invalid");
+  }
+  return uuid;
+}
+var byteToHex, stringify_default;
+var init_stringify = __esm({
+  "../../../node_modules/uuid/dist/esm-node/stringify.js"() {
+    init_validate();
+    byteToHex = [];
+    for (let i = 0; i < 256; ++i) {
+      byteToHex.push((i + 256).toString(16).slice(1));
+    }
+    stringify_default = stringify2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v1.js
+function v1(options, buf, offset) {
+  let i = buf && offset || 0;
+  const b = buf || new Array(16);
+  options = options || {};
+  let node = options.node || _nodeId;
+  let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq;
+  if (node == null || clockseq == null) {
+    const seedBytes = options.random || (options.rng || rng)();
+    if (node == null) {
+      node = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]];
+    }
+    if (clockseq == null) {
+      clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383;
+    }
+  }
+  let msecs = options.msecs !== void 0 ? options.msecs : Date.now();
+  let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1;
+  const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4;
+  if (dt < 0 && options.clockseq === void 0) {
+    clockseq = clockseq + 1 & 16383;
+  }
+  if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) {
+    nsecs = 0;
+  }
+  if (nsecs >= 1e4) {
+    throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");
+  }
+  _lastMSecs = msecs;
+  _lastNSecs = nsecs;
+  _clockseq = clockseq;
+  msecs += 122192928e5;
+  const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296;
+  b[i++] = tl >>> 24 & 255;
+  b[i++] = tl >>> 16 & 255;
+  b[i++] = tl >>> 8 & 255;
+  b[i++] = tl & 255;
+  const tmh = msecs / 4294967296 * 1e4 & 268435455;
+  b[i++] = tmh >>> 8 & 255;
+  b[i++] = tmh & 255;
+  b[i++] = tmh >>> 24 & 15 | 16;
+  b[i++] = tmh >>> 16 & 255;
+  b[i++] = clockseq >>> 8 | 128;
+  b[i++] = clockseq & 255;
+  for (let n = 0; n < 6; ++n) {
+    b[i + n] = node[n];
+  }
+  return buf || unsafeStringify(b);
+}
+var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default;
+var init_v1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v1.js"() {
+    init_rng();
+    init_stringify();
+    _lastMSecs = 0;
+    _lastNSecs = 0;
+    v1_default = v1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/parse.js
+function parse(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  let v;
+  const arr = new Uint8Array(16);
+  arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;
+  arr[1] = v >>> 16 & 255;
+  arr[2] = v >>> 8 & 255;
+  arr[3] = v & 255;
+  arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8;
+  arr[5] = v & 255;
+  arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8;
+  arr[7] = v & 255;
+  arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8;
+  arr[9] = v & 255;
+  arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255;
+  arr[11] = v / 4294967296 & 255;
+  arr[12] = v >>> 24 & 255;
+  arr[13] = v >>> 16 & 255;
+  arr[14] = v >>> 8 & 255;
+  arr[15] = v & 255;
+  return arr;
+}
+var parse_default;
+var init_parse = __esm({
+  "../../../node_modules/uuid/dist/esm-node/parse.js"() {
+    init_validate();
+    parse_default = parse;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v35.js
+function stringToBytes(str) {
+  str = unescape(encodeURIComponent(str));
+  const bytes = [];
+  for (let i = 0; i < str.length; ++i) {
+    bytes.push(str.charCodeAt(i));
+  }
+  return bytes;
+}
+function v35(name, version3, hashfunc) {
+  function generateUUID(value, namespace, buf, offset) {
+    var _namespace;
+    if (typeof value === "string") {
+      value = stringToBytes(value);
+    }
+    if (typeof namespace === "string") {
+      namespace = parse_default(namespace);
+    }
+    if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) {
+      throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");
+    }
+    let bytes = new Uint8Array(16 + value.length);
+    bytes.set(namespace);
+    bytes.set(value, namespace.length);
+    bytes = hashfunc(bytes);
+    bytes[6] = bytes[6] & 15 | version3;
+    bytes[8] = bytes[8] & 63 | 128;
+    if (buf) {
+      offset = offset || 0;
+      for (let i = 0; i < 16; ++i) {
+        buf[offset + i] = bytes[i];
+      }
+      return buf;
+    }
+    return unsafeStringify(bytes);
+  }
+  try {
+    generateUUID.name = name;
+  } catch (err) {
+  }
+  generateUUID.DNS = DNS;
+  generateUUID.URL = URL2;
+  return generateUUID;
+}
+var DNS, URL2;
+var init_v35 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v35.js"() {
+    init_stringify();
+    init_parse();
+    DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8";
+    URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/md5.js
+function md5(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto2.default.createHash("md5").update(bytes).digest();
+}
+var import_crypto2, md5_default;
+var init_md52 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/md5.js"() {
+    import_crypto2 = __toESM(require("crypto"));
+    md5_default = md5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v3.js
+var v3, v3_default;
+var init_v3 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v3.js"() {
+    init_v35();
+    init_md52();
+    v3 = v35("v3", 48, md5_default);
+    v3_default = v3;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/native.js
+var import_crypto3, native_default;
+var init_native = __esm({
+  "../../../node_modules/uuid/dist/esm-node/native.js"() {
+    import_crypto3 = __toESM(require("crypto"));
+    native_default = {
+      randomUUID: import_crypto3.default.randomUUID
+    };
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v4.js
+function v4(options, buf, offset) {
+  if (native_default.randomUUID && !buf && !options) {
+    return native_default.randomUUID();
+  }
+  options = options || {};
+  const rnds = options.random || (options.rng || rng)();
+  rnds[6] = rnds[6] & 15 | 64;
+  rnds[8] = rnds[8] & 63 | 128;
+  if (buf) {
+    offset = offset || 0;
+    for (let i = 0; i < 16; ++i) {
+      buf[offset + i] = rnds[i];
+    }
+    return buf;
+  }
+  return unsafeStringify(rnds);
+}
+var v4_default;
+var init_v4 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v4.js"() {
+    init_native();
+    init_rng();
+    init_stringify();
+    v4_default = v4;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/sha1.js
+function sha1(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto4.default.createHash("sha1").update(bytes).digest();
+}
+var import_crypto4, sha1_default;
+var init_sha1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/sha1.js"() {
+    import_crypto4 = __toESM(require("crypto"));
+    sha1_default = sha1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v5.js
+var v5, v5_default;
+var init_v5 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v5.js"() {
+    init_v35();
+    init_sha1();
+    v5 = v35("v5", 80, sha1_default);
+    v5_default = v5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/nil.js
+var nil_default;
+var init_nil = __esm({
+  "../../../node_modules/uuid/dist/esm-node/nil.js"() {
+    nil_default = "00000000-0000-0000-0000-000000000000";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/version.js
+function version2(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  return parseInt(uuid.slice(14, 15), 16);
+}
+var version_default;
+var init_version = __esm({
+  "../../../node_modules/uuid/dist/esm-node/version.js"() {
+    init_validate();
+    version_default = version2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/index.js
+var esm_node_exports = {};
+__export(esm_node_exports, {
+  NIL: () => nil_default,
+  parse: () => parse_default,
+  stringify: () => stringify_default,
+  v1: () => v1_default,
+  v3: () => v3_default,
+  v4: () => v4_default,
+  v5: () => v5_default,
+  validate: () => validate_default,
+  version: () => version_default
+});
+var init_esm_node = __esm({
+  "../../../node_modules/uuid/dist/esm-node/index.js"() {
+    init_v1();
+    init_v3();
+    init_v4();
+    init_v5();
+    init_nil();
+    init_version();
+    init_validate();
+    init_stringify();
+    init_parse();
+  }
+});
+
+// ../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js
+var require_dist_cjs30 = __commonJS({
+  "../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isClockSkewCorrectedError: () => isClockSkewCorrectedError,
+      isClockSkewError: () => isClockSkewError,
+      isRetryableByTrait: () => isRetryableByTrait,
+      isServerError: () => isServerError,
+      isThrottlingError: () => isThrottlingError,
+      isTransientError: () => isTransientError
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var CLOCK_SKEW_ERROR_CODES = [
+      "AuthFailure",
+      "InvalidSignatureException",
+      "RequestExpired",
+      "RequestInTheFuture",
+      "RequestTimeTooSkewed",
+      "SignatureDoesNotMatch"
+    ];
+    var THROTTLING_ERROR_CODES = [
+      "BandwidthLimitExceeded",
+      "EC2ThrottledException",
+      "LimitExceededException",
+      "PriorRequestNotComplete",
+      "ProvisionedThroughputExceededException",
+      "RequestLimitExceeded",
+      "RequestThrottled",
+      "RequestThrottledException",
+      "SlowDown",
+      "ThrottledException",
+      "Throttling",
+      "ThrottlingException",
+      "TooManyRequestsException",
+      "TransactionInProgressException"
+      // DynamoDB
+    ];
+    var TRANSIENT_ERROR_CODES = ["TimeoutError", "RequestTimeout", "RequestTimeoutException"];
+    var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"];
+    var isRetryableByTrait = /* @__PURE__ */ __name2((error) => error.$retryable !== void 0, "isRetryableByTrait");
+    var isClockSkewError = /* @__PURE__ */ __name2((error) => CLOCK_SKEW_ERROR_CODES.includes(error.name), "isClockSkewError");
+    var isClockSkewCorrectedError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      return (_a7 = error.$metadata) == null ? void 0 : _a7.clockSkewCorrected;
+    }, "isClockSkewCorrectedError");
+    var isThrottlingError = /* @__PURE__ */ __name2((error) => {
+      var _a7, _b;
+      return ((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) === 429 || THROTTLING_ERROR_CODES.includes(error.name) || ((_b = error.$retryable) == null ? void 0 : _b.throttling) == true;
+    }, "isThrottlingError");
+    var isTransientError = /* @__PURE__ */ __name2((error, depth = 0) => {
+      var _a7;
+      return isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || "") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) || 0) || error.cause !== void 0 && depth <= 10 && isTransientError(error.cause, depth + 1);
+    }, "isTransientError");
+    var isServerError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      if (((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) !== void 0) {
+        const statusCode = error.$metadata.httpStatusCode;
+        if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {
+          return true;
+        }
+        return false;
+      }
+      return false;
+    }, "isServerError");
+  }
+});
+
+// ../../../node_modules/@smithy/util-retry/dist-cjs/index.js
+var require_dist_cjs31 = __commonJS({
+  "../../../node_modules/@smithy/util-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      ConfiguredRetryStrategy: () => ConfiguredRetryStrategy,
+      DEFAULT_MAX_ATTEMPTS: () => DEFAULT_MAX_ATTEMPTS,
+      DEFAULT_RETRY_DELAY_BASE: () => DEFAULT_RETRY_DELAY_BASE,
+      DEFAULT_RETRY_MODE: () => DEFAULT_RETRY_MODE,
+      DefaultRateLimiter: () => DefaultRateLimiter,
+      INITIAL_RETRY_TOKENS: () => INITIAL_RETRY_TOKENS,
+      INVOCATION_ID_HEADER: () => INVOCATION_ID_HEADER,
+      MAXIMUM_RETRY_DELAY: () => MAXIMUM_RETRY_DELAY,
+      NO_RETRY_INCREMENT: () => NO_RETRY_INCREMENT,
+      REQUEST_HEADER: () => REQUEST_HEADER,
+      RETRY_COST: () => RETRY_COST,
+      RETRY_MODES: () => RETRY_MODES,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      THROTTLING_RETRY_DELAY_BASE: () => THROTTLING_RETRY_DELAY_BASE,
+      TIMEOUT_RETRY_COST: () => TIMEOUT_RETRY_COST
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var RETRY_MODES = /* @__PURE__ */ ((RETRY_MODES2) => {
+      RETRY_MODES2["STANDARD"] = "standard";
+      RETRY_MODES2["ADAPTIVE"] = "adaptive";
+      return RETRY_MODES2;
+    })(RETRY_MODES || {});
+    var DEFAULT_MAX_ATTEMPTS = 3;
+    var DEFAULT_RETRY_MODE = "standard";
+    var import_service_error_classification = require_dist_cjs30();
+    var _DefaultRateLimiter = class _DefaultRateLimiter2 {
+      constructor(options) {
+        this.currentCapacity = 0;
+        this.enabled = false;
+        this.lastMaxRate = 0;
+        this.measuredTxRate = 0;
+        this.requestCount = 0;
+        this.lastTimestamp = 0;
+        this.timeWindow = 0;
+        this.beta = (options == null ? void 0 : options.beta) ?? 0.7;
+        this.minCapacity = (options == null ? void 0 : options.minCapacity) ?? 1;
+        this.minFillRate = (options == null ? void 0 : options.minFillRate) ?? 0.5;
+        this.scaleConstant = (options == null ? void 0 : options.scaleConstant) ?? 0.4;
+        this.smooth = (options == null ? void 0 : options.smooth) ?? 0.8;
+        const currentTimeInSeconds = this.getCurrentTimeInSeconds();
+        this.lastThrottleTime = currentTimeInSeconds;
+        this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());
+        this.fillRate = this.minFillRate;
+        this.maxCapacity = this.minCapacity;
+      }
+      getCurrentTimeInSeconds() {
+        return Date.now() / 1e3;
+      }
+      async getSendToken() {
+        return this.acquireTokenBucket(1);
+      }
+      async acquireTokenBucket(amount) {
+        if (!this.enabled) {
+          return;
+        }
+        this.refillTokenBucket();
+        if (amount > this.currentCapacity) {
+          const delay = (amount - this.currentCapacity) / this.fillRate * 1e3;
+          await new Promise((resolve6) => _DefaultRateLimiter2.setTimeoutFn(resolve6, delay));
+        }
+        this.currentCapacity = this.currentCapacity - amount;
+      }
+      refillTokenBucket() {
+        const timestamp = this.getCurrentTimeInSeconds();
+        if (!this.lastTimestamp) {
+          this.lastTimestamp = timestamp;
+          return;
+        }
+        const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;
+        this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);
+        this.lastTimestamp = timestamp;
+      }
+      updateClientSendingRate(response) {
+        let calculatedRate;
+        this.updateMeasuredRate();
+        if ((0, import_service_error_classification.isThrottlingError)(response)) {
+          const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);
+          this.lastMaxRate = rateToUse;
+          this.calculateTimeWindow();
+          this.lastThrottleTime = this.getCurrentTimeInSeconds();
+          calculatedRate = this.cubicThrottle(rateToUse);
+          this.enableTokenBucket();
+        } else {
+          this.calculateTimeWindow();
+          calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());
+        }
+        const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);
+        this.updateTokenBucketRate(newRate);
+      }
+      calculateTimeWindow() {
+        this.timeWindow = this.getPrecise(Math.pow(this.lastMaxRate * (1 - this.beta) / this.scaleConstant, 1 / 3));
+      }
+      cubicThrottle(rateToUse) {
+        return this.getPrecise(rateToUse * this.beta);
+      }
+      cubicSuccess(timestamp) {
+        return this.getPrecise(
+          this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate
+        );
+      }
+      enableTokenBucket() {
+        this.enabled = true;
+      }
+      updateTokenBucketRate(newRate) {
+        this.refillTokenBucket();
+        this.fillRate = Math.max(newRate, this.minFillRate);
+        this.maxCapacity = Math.max(newRate, this.minCapacity);
+        this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);
+      }
+      updateMeasuredRate() {
+        const t = this.getCurrentTimeInSeconds();
+        const timeBucket = Math.floor(t * 2) / 2;
+        this.requestCount++;
+        if (timeBucket > this.lastTxRateBucket) {
+          const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);
+          this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));
+          this.requestCount = 0;
+          this.lastTxRateBucket = timeBucket;
+        }
+      }
+      getPrecise(num) {
+        return parseFloat(num.toFixed(8));
+      }
+    };
+    __name2(_DefaultRateLimiter, "DefaultRateLimiter");
+    _DefaultRateLimiter.setTimeoutFn = setTimeout;
+    var DefaultRateLimiter = _DefaultRateLimiter;
+    var DEFAULT_RETRY_DELAY_BASE = 100;
+    var MAXIMUM_RETRY_DELAY = 20 * 1e3;
+    var THROTTLING_RETRY_DELAY_BASE = 500;
+    var INITIAL_RETRY_TOKENS = 500;
+    var RETRY_COST = 5;
+    var TIMEOUT_RETRY_COST = 10;
+    var NO_RETRY_INCREMENT = 1;
+    var INVOCATION_ID_HEADER = "amz-sdk-invocation-id";
+    var REQUEST_HEADER = "amz-sdk-request";
+    var getDefaultRetryBackoffStrategy = /* @__PURE__ */ __name2(() => {
+      let delayBase = DEFAULT_RETRY_DELAY_BASE;
+      const computeNextBackoffDelay = /* @__PURE__ */ __name2((attempts) => {
+        return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));
+      }, "computeNextBackoffDelay");
+      const setDelayBase = /* @__PURE__ */ __name2((delay) => {
+        delayBase = delay;
+      }, "setDelayBase");
+      return {
+        computeNextBackoffDelay,
+        setDelayBase
+      };
+    }, "getDefaultRetryBackoffStrategy");
+    var createDefaultRetryToken = /* @__PURE__ */ __name2(({
+      retryDelay,
+      retryCount,
+      retryCost
+    }) => {
+      const getRetryCount = /* @__PURE__ */ __name2(() => retryCount, "getRetryCount");
+      const getRetryDelay = /* @__PURE__ */ __name2(() => Math.min(MAXIMUM_RETRY_DELAY, retryDelay), "getRetryDelay");
+      const getRetryCost = /* @__PURE__ */ __name2(() => retryCost, "getRetryCost");
+      return {
+        getRetryCount,
+        getRetryDelay,
+        getRetryCost
+      };
+    }, "createDefaultRetryToken");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttempts) {
+        this.maxAttempts = maxAttempts;
+        this.mode = "standard";
+        this.capacity = INITIAL_RETRY_TOKENS;
+        this.retryBackoffStrategy = getDefaultRetryBackoffStrategy();
+        this.maxAttemptsProvider = typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts;
+      }
+      // eslint-disable-next-line @typescript-eslint/no-unused-vars
+      async acquireInitialRetryToken(retryTokenScope) {
+        return createDefaultRetryToken({
+          retryDelay: DEFAULT_RETRY_DELAY_BASE,
+          retryCount: 0
+        });
+      }
+      async refreshRetryTokenForRetry(token, errorInfo) {
+        const maxAttempts = await this.getMaxAttempts();
+        if (this.shouldRetry(token, errorInfo, maxAttempts)) {
+          const errorType = errorInfo.errorType;
+          this.retryBackoffStrategy.setDelayBase(
+            errorType === "THROTTLING" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE
+          );
+          const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());
+          const retryDelay = errorInfo.retryAfterHint ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType) : delayFromErrorType;
+          const capacityCost = this.getCapacityCost(errorType);
+          this.capacity -= capacityCost;
+          return createDefaultRetryToken({
+            retryDelay,
+            retryCount: token.getRetryCount() + 1,
+            retryCost: capacityCost
+          });
+        }
+        throw new Error("No retry token available");
+      }
+      recordSuccess(token) {
+        this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));
+      }
+      /**
+       * @returns the current available retry capacity.
+       *
+       * This number decreases when retries are executed and refills when requests or retries succeed.
+       */
+      getCapacity() {
+        return this.capacity;
+      }
+      async getMaxAttempts() {
+        try {
+          return await this.maxAttemptsProvider();
+        } catch (error) {
+          console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);
+          return DEFAULT_MAX_ATTEMPTS;
+        }
+      }
+      shouldRetry(tokenToRenew, errorInfo, maxAttempts) {
+        const attempts = tokenToRenew.getRetryCount() + 1;
+        return attempts < maxAttempts && this.capacity >= this.getCapacityCost(errorInfo.errorType) && this.isRetryableError(errorInfo.errorType);
+      }
+      getCapacityCost(errorType) {
+        return errorType === "TRANSIENT" ? TIMEOUT_RETRY_COST : RETRY_COST;
+      }
+      isRetryableError(errorType) {
+        return errorType === "THROTTLING" || errorType === "TRANSIENT";
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = "adaptive";
+        const { rateLimiter } = options ?? {};
+        this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();
+        this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);
+      }
+      async acquireInitialRetryToken(retryTokenScope) {
+        await this.rateLimiter.getSendToken();
+        return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        this.rateLimiter.updateClientSendingRate(errorInfo);
+        return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+      }
+      recordSuccess(token) {
+        this.rateLimiter.updateClientSendingRate({});
+        this.standardRetryStrategy.recordSuccess(token);
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var _ConfiguredRetryStrategy = class _ConfiguredRetryStrategy extends StandardRetryStrategy {
+      /**
+       * @param maxAttempts - the maximum number of retry attempts allowed.
+       *                      e.g., if set to 3, then 4 total requests are possible.
+       * @param computeNextBackoffDelay - a millisecond delay for each retry or a function that takes the retry attempt
+       *                                  and returns the delay.
+       *
+       * @example exponential backoff.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, (attempt) => attempt ** 2)
+       * });
+       * ```
+       * @example constant delay.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, 2000)
+       * });
+       * ```
+       */
+      constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) {
+        super(typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts);
+        if (typeof computeNextBackoffDelay === "number") {
+          this.computeNextBackoffDelay = () => computeNextBackoffDelay;
+        } else {
+          this.computeNextBackoffDelay = computeNextBackoffDelay;
+        }
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+        token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount());
+        return token;
+      }
+    };
+    __name2(_ConfiguredRetryStrategy, "ConfiguredRetryStrategy");
+    var ConfiguredRetryStrategy = _ConfiguredRetryStrategy;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js
+var require_dist_cjs32 = __commonJS({
+  "../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      constructStack: () => constructStack
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAllAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      const _aliases = [];
+      if (name) {
+        _aliases.push(name);
+      }
+      if (aliases) {
+        for (const alias of aliases) {
+          _aliases.push(alias);
+        }
+      }
+      return _aliases;
+    }, "getAllAliases");
+    var getMiddlewareNameWithAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      return `${name || "anonymous"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(",")})` : ""}`;
+    }, "getMiddlewareNameWithAliases");
+    var constructStack = /* @__PURE__ */ __name2(() => {
+      let absoluteEntries = [];
+      let relativeEntries = [];
+      let identifyOnResolve = false;
+      const entriesNameSet = /* @__PURE__ */ new Set();
+      const sort = /* @__PURE__ */ __name2((entries) => entries.sort(
+        (a, b) => stepWeights[b.step] - stepWeights[a.step] || priorityWeights[b.priority || "normal"] - priorityWeights[a.priority || "normal"]
+      ), "sort");
+      const removeByName = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          const aliases = getAllAliases(entry.name, entry.aliases);
+          if (aliases.includes(toRemove)) {
+            isRemoved = true;
+            for (const alias of aliases) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByName");
+      const removeByReference = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          if (entry.middleware === toRemove) {
+            isRemoved = true;
+            for (const alias of getAllAliases(entry.name, entry.aliases)) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByReference");
+      const cloneTo = /* @__PURE__ */ __name2((toStack) => {
+        var _a7;
+        absoluteEntries.forEach((entry) => {
+          toStack.add(entry.middleware, { ...entry });
+        });
+        relativeEntries.forEach((entry) => {
+          toStack.addRelativeTo(entry.middleware, { ...entry });
+        });
+        (_a7 = toStack.identifyOnResolve) == null ? void 0 : _a7.call(toStack, stack.identifyOnResolve());
+        return toStack;
+      }, "cloneTo");
+      const expandRelativeMiddlewareList = /* @__PURE__ */ __name2((from) => {
+        const expandedMiddlewareList = [];
+        from.before.forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        expandedMiddlewareList.push(from);
+        from.after.reverse().forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        return expandedMiddlewareList;
+      }, "expandRelativeMiddlewareList");
+      const getMiddlewareList = /* @__PURE__ */ __name2((debug = false) => {
+        const normalizedAbsoluteEntries = [];
+        const normalizedRelativeEntries = [];
+        const normalizedEntriesNameMap = {};
+        absoluteEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedAbsoluteEntries.push(normalizedEntry);
+        });
+        relativeEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedRelativeEntries.push(normalizedEntry);
+        });
+        normalizedRelativeEntries.forEach((entry) => {
+          if (entry.toMiddleware) {
+            const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];
+            if (toMiddleware === void 0) {
+              if (debug) {
+                return;
+              }
+              throw new Error(
+                `${entry.toMiddleware} is not found when adding ${getMiddlewareNameWithAliases(entry.name, entry.aliases)} middleware ${entry.relation} ${entry.toMiddleware}`
+              );
+            }
+            if (entry.relation === "after") {
+              toMiddleware.after.push(entry);
+            }
+            if (entry.relation === "before") {
+              toMiddleware.before.push(entry);
+            }
+          }
+        });
+        const mainChain = sort(normalizedAbsoluteEntries).map(expandRelativeMiddlewareList).reduce(
+          (wholeList, expandedMiddlewareList) => {
+            wholeList.push(...expandedMiddlewareList);
+            return wholeList;
+          },
+          []
+        );
+        return mainChain;
+      }, "getMiddlewareList");
+      const stack = {
+        add: (middleware, options = {}) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            step: "initialize",
+            priority: "normal",
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = absoluteEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = absoluteEntries[toOverrideIndex];
+                if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware with ${toOverride.priority} priority in ${toOverride.step} step cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware with ${entry.priority} priority in ${entry.step} step.`
+                  );
+                }
+                absoluteEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          absoluteEntries.push(entry);
+        },
+        addRelativeTo: (middleware, options) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = relativeEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = relativeEntries[toOverrideIndex];
+                if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware ${toOverride.relation} "${toOverride.toMiddleware}" middleware cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware ${entry.relation} "${entry.toMiddleware}" middleware.`
+                  );
+                }
+                relativeEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          relativeEntries.push(entry);
+        },
+        clone: () => cloneTo(constructStack()),
+        use: (plugin) => {
+          plugin.applyToStack(stack);
+        },
+        remove: (toRemove) => {
+          if (typeof toRemove === "string")
+            return removeByName(toRemove);
+          else
+            return removeByReference(toRemove);
+        },
+        removeByTag: (toRemove) => {
+          let isRemoved = false;
+          const filterCb = /* @__PURE__ */ __name2((entry) => {
+            const { tags, name, aliases: _aliases } = entry;
+            if (tags && tags.includes(toRemove)) {
+              const aliases = getAllAliases(name, _aliases);
+              for (const alias of aliases) {
+                entriesNameSet.delete(alias);
+              }
+              isRemoved = true;
+              return false;
+            }
+            return true;
+          }, "filterCb");
+          absoluteEntries = absoluteEntries.filter(filterCb);
+          relativeEntries = relativeEntries.filter(filterCb);
+          return isRemoved;
+        },
+        concat: (from) => {
+          var _a7;
+          const cloned = cloneTo(constructStack());
+          cloned.use(from);
+          cloned.identifyOnResolve(
+            identifyOnResolve || cloned.identifyOnResolve() || (((_a7 = from.identifyOnResolve) == null ? void 0 : _a7.call(from)) ?? false)
+          );
+          return cloned;
+        },
+        applyToStack: cloneTo,
+        identify: () => {
+          return getMiddlewareList(true).map((mw) => {
+            const step = mw.step ?? mw.relation + " " + mw.toMiddleware;
+            return getMiddlewareNameWithAliases(mw.name, mw.aliases) + " - " + step;
+          });
+        },
+        identifyOnResolve(toggle) {
+          if (typeof toggle === "boolean")
+            identifyOnResolve = toggle;
+          return identifyOnResolve;
+        },
+        resolve: (handler2, context) => {
+          for (const middleware of getMiddlewareList().map((entry) => entry.middleware).reverse()) {
+            handler2 = middleware(handler2, context);
+          }
+          if (identifyOnResolve) {
+            console.log(stack.identify());
+          }
+          return handler2;
+        }
+      };
+      return stack;
+    }, "constructStack");
+    var stepWeights = {
+      initialize: 5,
+      serialize: 4,
+      build: 3,
+      finalizeRequest: 2,
+      deserialize: 1
+    };
+    var priorityWeights = {
+      high: 3,
+      normal: 2,
+      low: 1
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/smithy-client/dist-cjs/index.js
+var require_dist_cjs33 = __commonJS({
+  "../../../node_modules/@smithy/smithy-client/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Client: () => Client,
+      Command: () => Command,
+      LazyJsonString: () => LazyJsonString,
+      NoOpLogger: () => NoOpLogger,
+      SENSITIVE_STRING: () => SENSITIVE_STRING,
+      ServiceException: () => ServiceException,
+      _json: () => _json,
+      collectBody: () => import_protocols2.collectBody,
+      convertMap: () => convertMap,
+      createAggregatedClient: () => createAggregatedClient,
+      dateToUtcString: () => dateToUtcString,
+      decorateServiceException: () => decorateServiceException,
+      emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion2,
+      expectBoolean: () => expectBoolean,
+      expectByte: () => expectByte,
+      expectFloat32: () => expectFloat32,
+      expectInt: () => expectInt,
+      expectInt32: () => expectInt32,
+      expectLong: () => expectLong,
+      expectNonNull: () => expectNonNull,
+      expectNumber: () => expectNumber,
+      expectObject: () => expectObject,
+      expectShort: () => expectShort,
+      expectString: () => expectString,
+      expectUnion: () => expectUnion2,
+      extendedEncodeURIComponent: () => import_protocols2.extendedEncodeURIComponent,
+      getArrayIfSingleItem: () => getArrayIfSingleItem,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      getDefaultExtensionConfiguration: () => getDefaultExtensionConfiguration,
+      getValueFromTextNode: () => getValueFromTextNode2,
+      handleFloat: () => handleFloat,
+      isSerializableHeaderValue: () => isSerializableHeaderValue,
+      limitedParseDouble: () => limitedParseDouble,
+      limitedParseFloat: () => limitedParseFloat,
+      limitedParseFloat32: () => limitedParseFloat32,
+      loadConfigsForDefaultMode: () => loadConfigsForDefaultMode,
+      logger: () => logger,
+      map: () => map,
+      parseBoolean: () => parseBoolean,
+      parseEpochTimestamp: () => parseEpochTimestamp,
+      parseRfc3339DateTime: () => parseRfc3339DateTime,
+      parseRfc3339DateTimeWithOffset: () => parseRfc3339DateTimeWithOffset,
+      parseRfc7231DateTime: () => parseRfc7231DateTime,
+      quoteHeader: () => quoteHeader,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig,
+      resolvedPath: () => import_protocols2.resolvedPath,
+      serializeDateTime: () => serializeDateTime,
+      serializeFloat: () => serializeFloat,
+      splitEvery: () => splitEvery,
+      splitHeader: () => splitHeader,
+      strictParseByte: () => strictParseByte,
+      strictParseDouble: () => strictParseDouble,
+      strictParseFloat: () => strictParseFloat,
+      strictParseFloat32: () => strictParseFloat32,
+      strictParseInt: () => strictParseInt,
+      strictParseInt32: () => strictParseInt32,
+      strictParseLong: () => strictParseLong,
+      strictParseShort: () => strictParseShort,
+      take: () => take,
+      throwDefaultError: () => throwDefaultError,
+      withBaseException: () => withBaseException
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_stack = require_dist_cjs32();
+    var _Client = class _Client {
+      constructor(config) {
+        this.config = config;
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      send(command, optionsOrCb, cb) {
+        const options = typeof optionsOrCb !== "function" ? optionsOrCb : void 0;
+        const callback = typeof optionsOrCb === "function" ? optionsOrCb : cb;
+        const useHandlerCache = options === void 0 && this.config.cacheMiddleware === true;
+        let handler2;
+        if (useHandlerCache) {
+          if (!this.handlers) {
+            this.handlers = /* @__PURE__ */ new WeakMap();
+          }
+          const handlers = this.handlers;
+          if (handlers.has(command.constructor)) {
+            handler2 = handlers.get(command.constructor);
+          } else {
+            handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+            handlers.set(command.constructor, handler2);
+          }
+        } else {
+          delete this.handlers;
+          handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+        }
+        if (callback) {
+          handler2(command).then(
+            (result) => callback(null, result.output),
+            (err) => callback(err)
+          ).catch(
+            // prevent any errors thrown in the callback from triggering an
+            // unhandled promise rejection
+            () => {
+            }
+          );
+        } else {
+          return handler2(command).then((result) => result.output);
+        }
+      }
+      destroy() {
+        var _a7, _b, _c;
+        (_c = (_b = (_a7 = this.config) == null ? void 0 : _a7.requestHandler) == null ? void 0 : _b.destroy) == null ? void 0 : _c.call(_b);
+        delete this.handlers;
+      }
+    };
+    __name2(_Client, "Client");
+    var Client = _Client;
+    var import_protocols2 = (init_protocols(), __toCommonJS(protocols_exports));
+    var import_types8 = require_dist_cjs();
+    var _Command = class _Command {
+      constructor() {
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      /**
+       * Factory for Command ClassBuilder.
+       * @internal
+       */
+      static classBuilder() {
+        return new ClassBuilder();
+      }
+      /**
+       * @internal
+       */
+      resolveMiddlewareWithContext(clientStack, configuration, options, {
+        middlewareFn,
+        clientName,
+        commandName,
+        inputFilterSensitiveLog,
+        outputFilterSensitiveLog,
+        smithyContext,
+        additionalContext,
+        CommandCtor
+      }) {
+        for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {
+          this.middlewareStack.use(mw);
+        }
+        const stack = clientStack.concat(this.middlewareStack);
+        const { logger: logger2 } = configuration;
+        const handlerExecutionContext = {
+          logger: logger2,
+          clientName,
+          commandName,
+          inputFilterSensitiveLog,
+          outputFilterSensitiveLog,
+          [import_types8.SMITHY_CONTEXT_KEY]: {
+            commandInstance: this,
+            ...smithyContext
+          },
+          ...additionalContext
+        };
+        const { requestHandler } = configuration;
+        return stack.resolve(
+          (request2) => requestHandler.handle(request2.request, options || {}),
+          handlerExecutionContext
+        );
+      }
+    };
+    __name2(_Command, "Command");
+    var Command = _Command;
+    var _ClassBuilder = class _ClassBuilder {
+      constructor() {
+        this._init = () => {
+        };
+        this._ep = {};
+        this._middlewareFn = () => [];
+        this._commandName = "";
+        this._clientName = "";
+        this._additionalContext = {};
+        this._smithyContext = {};
+        this._inputFilterSensitiveLog = (_) => _;
+        this._outputFilterSensitiveLog = (_) => _;
+        this._serializer = null;
+        this._deserializer = null;
+      }
+      /**
+       * Optional init callback.
+       */
+      init(cb) {
+        this._init = cb;
+      }
+      /**
+       * Set the endpoint parameter instructions.
+       */
+      ep(endpointParameterInstructions) {
+        this._ep = endpointParameterInstructions;
+        return this;
+      }
+      /**
+       * Add any number of middleware.
+       */
+      m(middlewareSupplier) {
+        this._middlewareFn = middlewareSupplier;
+        return this;
+      }
+      /**
+       * Set the initial handler execution context Smithy field.
+       */
+      s(service, operation, smithyContext = {}) {
+        this._smithyContext = {
+          service,
+          operation,
+          ...smithyContext
+        };
+        return this;
+      }
+      /**
+       * Set the initial handler execution context.
+       */
+      c(additionalContext = {}) {
+        this._additionalContext = additionalContext;
+        return this;
+      }
+      /**
+       * Set constant string identifiers for the operation.
+       */
+      n(clientName, commandName) {
+        this._clientName = clientName;
+        this._commandName = commandName;
+        return this;
+      }
+      /**
+       * Set the input and output sensistive log filters.
+       */
+      f(inputFilter = (_) => _, outputFilter = (_) => _) {
+        this._inputFilterSensitiveLog = inputFilter;
+        this._outputFilterSensitiveLog = outputFilter;
+        return this;
+      }
+      /**
+       * Sets the serializer.
+       */
+      ser(serializer) {
+        this._serializer = serializer;
+        return this;
+      }
+      /**
+       * Sets the deserializer.
+       */
+      de(deserializer) {
+        this._deserializer = deserializer;
+        return this;
+      }
+      /**
+       * @returns a Command class with the classBuilder properties.
+       */
+      build() {
+        var _a7;
+        const closure = this;
+        let CommandRef;
+        return CommandRef = (_a7 = class extends Command {
+          /**
+           * @public
+           */
+          constructor(...[input]) {
+            super();
+            this.serialize = closure._serializer;
+            this.deserialize = closure._deserializer;
+            this.input = input ?? {};
+            closure._init(this);
+          }
+          /**
+           * @public
+           */
+          static getEndpointParameterInstructions() {
+            return closure._ep;
+          }
+          /**
+           * @internal
+           */
+          resolveMiddleware(stack, configuration, options) {
+            return this.resolveMiddlewareWithContext(stack, configuration, options, {
+              CommandCtor: CommandRef,
+              middlewareFn: closure._middlewareFn,
+              clientName: closure._clientName,
+              commandName: closure._commandName,
+              inputFilterSensitiveLog: closure._inputFilterSensitiveLog,
+              outputFilterSensitiveLog: closure._outputFilterSensitiveLog,
+              smithyContext: closure._smithyContext,
+              additionalContext: closure._additionalContext
+            });
+          }
+        }, __name2(_a7, "CommandRef"), _a7);
+      }
+    };
+    __name2(_ClassBuilder, "ClassBuilder");
+    var ClassBuilder = _ClassBuilder;
+    var SENSITIVE_STRING = "***SensitiveInformation***";
+    var createAggregatedClient = /* @__PURE__ */ __name2((commands, Client2) => {
+      for (const command of Object.keys(commands)) {
+        const CommandCtor = commands[command];
+        const methodImpl = /* @__PURE__ */ __name2(async function(args, optionsOrCb, cb) {
+          const command2 = new CommandCtor(args);
+          if (typeof optionsOrCb === "function") {
+            this.send(command2, optionsOrCb);
+          } else if (typeof cb === "function") {
+            if (typeof optionsOrCb !== "object")
+              throw new Error(`Expected http options but got ${typeof optionsOrCb}`);
+            this.send(command2, optionsOrCb || {}, cb);
+          } else {
+            return this.send(command2, optionsOrCb);
+          }
+        }, "methodImpl");
+        const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
+        Client2.prototype[methodName] = methodImpl;
+      }
+    }, "createAggregatedClient");
+    var parseBoolean = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "true":
+          return true;
+        case "false":
+          return false;
+        default:
+          throw new Error(`Unable to parse boolean value "${value}"`);
+      }
+    }, "parseBoolean");
+    var expectBoolean = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "number") {
+        if (value === 0 || value === 1) {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (value === 0) {
+          return false;
+        }
+        if (value === 1) {
+          return true;
+        }
+      }
+      if (typeof value === "string") {
+        const lower = value.toLowerCase();
+        if (lower === "false" || lower === "true") {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (lower === "false") {
+          return false;
+        }
+        if (lower === "true") {
+          return true;
+        }
+      }
+      if (typeof value === "boolean") {
+        return value;
+      }
+      throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);
+    }, "expectBoolean");
+    var expectNumber = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        const parsed = parseFloat(value);
+        if (!Number.isNaN(parsed)) {
+          if (String(parsed) !== String(value)) {
+            logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));
+          }
+          return parsed;
+        }
+      }
+      if (typeof value === "number") {
+        return value;
+      }
+      throw new TypeError(`Expected number, got ${typeof value}: ${value}`);
+    }, "expectNumber");
+    var MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));
+    var expectFloat32 = /* @__PURE__ */ __name2((value) => {
+      const expected = expectNumber(value);
+      if (expected !== void 0 && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {
+        if (Math.abs(expected) > MAX_FLOAT) {
+          throw new TypeError(`Expected 32-bit float, got ${value}`);
+        }
+      }
+      return expected;
+    }, "expectFloat32");
+    var expectLong = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (Number.isInteger(value) && !Number.isNaN(value)) {
+        return value;
+      }
+      throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);
+    }, "expectLong");
+    var expectInt = expectLong;
+    var expectInt32 = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 32), "expectInt32");
+    var expectShort = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 16), "expectShort");
+    var expectByte = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 8), "expectByte");
+    var expectSizedInt = /* @__PURE__ */ __name2((value, size) => {
+      const expected = expectLong(value);
+      if (expected !== void 0 && castInt(expected, size) !== expected) {
+        throw new TypeError(`Expected ${size}-bit integer, got ${value}`);
+      }
+      return expected;
+    }, "expectSizedInt");
+    var castInt = /* @__PURE__ */ __name2((value, size) => {
+      switch (size) {
+        case 32:
+          return Int32Array.of(value)[0];
+        case 16:
+          return Int16Array.of(value)[0];
+        case 8:
+          return Int8Array.of(value)[0];
+      }
+    }, "castInt");
+    var expectNonNull = /* @__PURE__ */ __name2((value, location) => {
+      if (value === null || value === void 0) {
+        if (location) {
+          throw new TypeError(`Expected a non-null value for ${location}`);
+        }
+        throw new TypeError("Expected a non-null value");
+      }
+      return value;
+    }, "expectNonNull");
+    var expectObject = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "object" && !Array.isArray(value)) {
+        return value;
+      }
+      const receivedType = Array.isArray(value) ? "array" : typeof value;
+      throw new TypeError(`Expected object, got ${receivedType}: ${value}`);
+    }, "expectObject");
+    var expectString = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        return value;
+      }
+      if (["boolean", "number", "bigint"].includes(typeof value)) {
+        logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));
+        return String(value);
+      }
+      throw new TypeError(`Expected string, got ${typeof value}: ${value}`);
+    }, "expectString");
+    var expectUnion2 = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      const asObject = expectObject(value);
+      const setKeys = Object.entries(asObject).filter(([, v]) => v != null).map(([k]) => k);
+      if (setKeys.length === 0) {
+        throw new TypeError(`Unions must have exactly one non-null member. None were found.`);
+      }
+      if (setKeys.length > 1) {
+        throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);
+      }
+      return asObject;
+    }, "expectUnion");
+    var strictParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectNumber(parseNumber(value));
+      }
+      return expectNumber(value);
+    }, "strictParseDouble");
+    var strictParseFloat = strictParseDouble;
+    var strictParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectFloat32(parseNumber(value));
+      }
+      return expectFloat32(value);
+    }, "strictParseFloat32");
+    var NUMBER_REGEX = /(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g;
+    var parseNumber = /* @__PURE__ */ __name2((value) => {
+      const matches = value.match(NUMBER_REGEX);
+      if (matches === null || matches[0].length !== value.length) {
+        throw new TypeError(`Expected real number, got implicit NaN`);
+      }
+      return parseFloat(value);
+    }, "parseNumber");
+    var limitedParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectNumber(value);
+    }, "limitedParseDouble");
+    var handleFloat = limitedParseDouble;
+    var limitedParseFloat = limitedParseDouble;
+    var limitedParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectFloat32(value);
+    }, "limitedParseFloat32");
+    var parseFloatString = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "NaN":
+          return NaN;
+        case "Infinity":
+          return Infinity;
+        case "-Infinity":
+          return -Infinity;
+        default:
+          throw new Error(`Unable to parse float value: ${value}`);
+      }
+    }, "parseFloatString");
+    var strictParseLong = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectLong(parseNumber(value));
+      }
+      return expectLong(value);
+    }, "strictParseLong");
+    var strictParseInt = strictParseLong;
+    var strictParseInt32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectInt32(parseNumber(value));
+      }
+      return expectInt32(value);
+    }, "strictParseInt32");
+    var strictParseShort = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectShort(parseNumber(value));
+      }
+      return expectShort(value);
+    }, "strictParseShort");
+    var strictParseByte = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectByte(parseNumber(value));
+      }
+      return expectByte(value);
+    }, "strictParseByte");
+    var stackTraceWarning = /* @__PURE__ */ __name2((message) => {
+      return String(new TypeError(message).stack || message).split("\n").slice(0, 5).filter((s) => !s.includes("stackTraceWarning")).join("\n");
+    }, "stackTraceWarning");
+    var logger = {
+      warn: console.warn
+    };
+    var DAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
+    var MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
+    function dateToUtcString(date) {
+      const year = date.getUTCFullYear();
+      const month = date.getUTCMonth();
+      const dayOfWeek = date.getUTCDay();
+      const dayOfMonthInt = date.getUTCDate();
+      const hoursInt = date.getUTCHours();
+      const minutesInt = date.getUTCMinutes();
+      const secondsInt = date.getUTCSeconds();
+      const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;
+      const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;
+      const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;
+      const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;
+      return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;
+    }
+    __name2(dateToUtcString, "dateToUtcString");
+    var RFC3339 = new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/);
+    var parseRfc3339DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+    }, "parseRfc3339DateTime");
+    var RFC3339_WITH_OFFSET = new RegExp(
+      /^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/
+    );
+    var parseRfc3339DateTimeWithOffset = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339_WITH_OFFSET.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+      if (offsetStr.toUpperCase() != "Z") {
+        date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));
+      }
+      return date;
+    }, "parseRfc3339DateTimeWithOffset");
+    var IMF_FIXDATE = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var RFC_850_DATE = new RegExp(
+      /^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var ASC_TIME = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/
+    );
+    var parseRfc7231DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-7231 date-times must be expressed as strings");
+      }
+      let match = IMF_FIXDATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr, "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      match = RFC_850_DATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return adjustRfc850Year(
+          buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, "day", 1, 31), {
+            hours,
+            minutes,
+            seconds,
+            fractionalMilliseconds
+          })
+        );
+      }
+      match = ASC_TIME.exec(value);
+      if (match) {
+        const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr.trimLeft(), "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      throw new TypeError("Invalid RFC-7231 date-time value");
+    }, "parseRfc7231DateTime");
+    var parseEpochTimestamp = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      let valueAsDouble;
+      if (typeof value === "number") {
+        valueAsDouble = value;
+      } else if (typeof value === "string") {
+        valueAsDouble = strictParseDouble(value);
+      } else if (typeof value === "object" && value.tag === 1) {
+        valueAsDouble = value.value;
+      } else {
+        throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");
+      }
+      if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {
+        throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");
+      }
+      return new Date(Math.round(valueAsDouble * 1e3));
+    }, "parseEpochTimestamp");
+    var buildDate = /* @__PURE__ */ __name2((year, month, day, time) => {
+      const adjustedMonth = month - 1;
+      validateDayOfMonth(year, adjustedMonth, day);
+      return new Date(
+        Date.UTC(
+          year,
+          adjustedMonth,
+          day,
+          parseDateValue(time.hours, "hour", 0, 23),
+          parseDateValue(time.minutes, "minute", 0, 59),
+          // seconds can go up to 60 for leap seconds
+          parseDateValue(time.seconds, "seconds", 0, 60),
+          parseMilliseconds(time.fractionalMilliseconds)
+        )
+      );
+    }, "buildDate");
+    var parseTwoDigitYear = /* @__PURE__ */ __name2((value) => {
+      const thisYear = (/* @__PURE__ */ new Date()).getUTCFullYear();
+      const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));
+      if (valueInThisCentury < thisYear) {
+        return valueInThisCentury + 100;
+      }
+      return valueInThisCentury;
+    }, "parseTwoDigitYear");
+    var FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1e3;
+    var adjustRfc850Year = /* @__PURE__ */ __name2((input) => {
+      if (input.getTime() - (/* @__PURE__ */ new Date()).getTime() > FIFTY_YEARS_IN_MILLIS) {
+        return new Date(
+          Date.UTC(
+            input.getUTCFullYear() - 100,
+            input.getUTCMonth(),
+            input.getUTCDate(),
+            input.getUTCHours(),
+            input.getUTCMinutes(),
+            input.getUTCSeconds(),
+            input.getUTCMilliseconds()
+          )
+        );
+      }
+      return input;
+    }, "adjustRfc850Year");
+    var parseMonthByShortName = /* @__PURE__ */ __name2((value) => {
+      const monthIdx = MONTHS.indexOf(value);
+      if (monthIdx < 0) {
+        throw new TypeError(`Invalid month: ${value}`);
+      }
+      return monthIdx + 1;
+    }, "parseMonthByShortName");
+    var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+    var validateDayOfMonth = /* @__PURE__ */ __name2((year, month, day) => {
+      let maxDays = DAYS_IN_MONTH[month];
+      if (month === 1 && isLeapYear(year)) {
+        maxDays = 29;
+      }
+      if (day > maxDays) {
+        throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);
+      }
+    }, "validateDayOfMonth");
+    var isLeapYear = /* @__PURE__ */ __name2((year) => {
+      return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
+    }, "isLeapYear");
+    var parseDateValue = /* @__PURE__ */ __name2((value, type, lower, upper) => {
+      const dateVal = strictParseByte(stripLeadingZeroes(value));
+      if (dateVal < lower || dateVal > upper) {
+        throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);
+      }
+      return dateVal;
+    }, "parseDateValue");
+    var parseMilliseconds = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return 0;
+      }
+      return strictParseFloat32("0." + value) * 1e3;
+    }, "parseMilliseconds");
+    var parseOffsetToMilliseconds = /* @__PURE__ */ __name2((value) => {
+      const directionStr = value[0];
+      let direction = 1;
+      if (directionStr == "+") {
+        direction = 1;
+      } else if (directionStr == "-") {
+        direction = -1;
+      } else {
+        throw new TypeError(`Offset direction, ${directionStr}, must be "+" or "-"`);
+      }
+      const hour = Number(value.substring(1, 3));
+      const minute = Number(value.substring(4, 6));
+      return direction * (hour * 60 + minute) * 60 * 1e3;
+    }, "parseOffsetToMilliseconds");
+    var stripLeadingZeroes = /* @__PURE__ */ __name2((value) => {
+      let idx = 0;
+      while (idx < value.length - 1 && value.charAt(idx) === "0") {
+        idx++;
+      }
+      if (idx === 0) {
+        return value;
+      }
+      return value.slice(idx);
+    }, "stripLeadingZeroes");
+    var _ServiceException = class _ServiceException2 extends Error {
+      constructor(options) {
+        super(options.message);
+        Object.setPrototypeOf(this, _ServiceException2.prototype);
+        this.name = options.name;
+        this.$fault = options.$fault;
+        this.$metadata = options.$metadata;
+      }
+      /**
+       * Checks if a value is an instance of ServiceException (duck typed)
+       */
+      static isInstance(value) {
+        if (!value)
+          return false;
+        const candidate = value;
+        return Boolean(candidate.$fault) && Boolean(candidate.$metadata) && (candidate.$fault === "client" || candidate.$fault === "server");
+      }
+    };
+    __name2(_ServiceException, "ServiceException");
+    var ServiceException = _ServiceException;
+    var decorateServiceException = /* @__PURE__ */ __name2((exception, additions = {}) => {
+      Object.entries(additions).filter(([, v]) => v !== void 0).forEach(([k, v]) => {
+        if (exception[k] == void 0 || exception[k] === "") {
+          exception[k] = v;
+        }
+      });
+      const message = exception.message || exception.Message || "UnknownError";
+      exception.message = message;
+      delete exception.Message;
+      return exception;
+    }, "decorateServiceException");
+    var throwDefaultError = /* @__PURE__ */ __name2(({ output, parsedBody, exceptionCtor, errorCode }) => {
+      const $metadata = deserializeMetadata(output);
+      const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + "" : void 0;
+      const response = new exceptionCtor({
+        name: (parsedBody == null ? void 0 : parsedBody.code) || (parsedBody == null ? void 0 : parsedBody.Code) || errorCode || statusCode || "UnknownError",
+        $fault: "client",
+        $metadata
+      });
+      throw decorateServiceException(response, parsedBody);
+    }, "throwDefaultError");
+    var withBaseException = /* @__PURE__ */ __name2((ExceptionCtor) => {
+      return ({ output, parsedBody, errorCode }) => {
+        throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });
+      };
+    }, "withBaseException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var loadConfigsForDefaultMode = /* @__PURE__ */ __name2((mode) => {
+      switch (mode) {
+        case "standard":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "in-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 1100
+          };
+        case "cross-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "mobile":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3e4
+          };
+        default:
+          return {};
+      }
+    }, "loadConfigsForDefaultMode");
+    var warningEmitted2 = false;
+    var emitWarningIfUnsupportedVersion2 = /* @__PURE__ */ __name2((version3) => {
+      if (version3 && !warningEmitted2 && parseInt(version3.substring(1, version3.indexOf("."))) < 16) {
+        warningEmitted2 = true;
+      }
+    }, "emitWarningIfUnsupportedVersion");
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      for (const id in import_types8.AlgorithmId) {
+        const algorithmId = import_types8.AlgorithmId[id];
+        if (runtimeConfig[algorithmId] === void 0) {
+          continue;
+        }
+        checksumAlgorithms.push({
+          algorithmId: () => algorithmId,
+          checksumConstructor: () => runtimeConfig[algorithmId]
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getRetryConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let _retryStrategy = runtimeConfig.retryStrategy;
+      return {
+        setRetryStrategy(retryStrategy) {
+          _retryStrategy = retryStrategy;
+        },
+        retryStrategy() {
+          return _retryStrategy;
+        }
+      };
+    }, "getRetryConfiguration");
+    var resolveRetryRuntimeConfig = /* @__PURE__ */ __name2((retryStrategyConfiguration) => {
+      const runtimeConfig = {};
+      runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();
+      return runtimeConfig;
+    }, "resolveRetryRuntimeConfig");
+    var getDefaultExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig),
+        ...getRetryConfiguration(runtimeConfig)
+      };
+    }, "getDefaultExtensionConfiguration");
+    var getDefaultClientConfiguration = getDefaultExtensionConfiguration;
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config),
+        ...resolveRetryRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var getArrayIfSingleItem = /* @__PURE__ */ __name2((mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray], "getArrayIfSingleItem");
+    var getValueFromTextNode2 = /* @__PURE__ */ __name2((obj) => {
+      const textNodeName = "#text";
+      for (const key in obj) {
+        if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== void 0) {
+          obj[key] = obj[key][textNodeName];
+        } else if (typeof obj[key] === "object" && obj[key] !== null) {
+          obj[key] = getValueFromTextNode2(obj[key]);
+        }
+      }
+      return obj;
+    }, "getValueFromTextNode");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => {
+      return value != null;
+    }, "isSerializableHeaderValue");
+    var LazyJsonString = /* @__PURE__ */ __name2(function LazyJsonString2(val2) {
+      const str = Object.assign(new String(val2), {
+        deserializeJSON() {
+          return JSON.parse(String(val2));
+        },
+        toString() {
+          return String(val2);
+        },
+        toJSON() {
+          return String(val2);
+        }
+      });
+      return str;
+    }, "LazyJsonString");
+    LazyJsonString.from = (object) => {
+      if (object && typeof object === "object" && (object instanceof LazyJsonString || "deserializeJSON" in object)) {
+        return object;
+      } else if (typeof object === "string" || Object.getPrototypeOf(object) === String.prototype) {
+        return LazyJsonString(String(object));
+      }
+      return LazyJsonString(JSON.stringify(object));
+    };
+    LazyJsonString.fromObject = LazyJsonString.from;
+    var _NoOpLogger = class _NoOpLogger {
+      trace() {
+      }
+      debug() {
+      }
+      info() {
+      }
+      warn() {
+      }
+      error() {
+      }
+    };
+    __name2(_NoOpLogger, "NoOpLogger");
+    var NoOpLogger = _NoOpLogger;
+    function map(arg0, arg1, arg2) {
+      let target;
+      let filter;
+      let instructions;
+      if (typeof arg1 === "undefined" && typeof arg2 === "undefined") {
+        target = {};
+        instructions = arg0;
+      } else {
+        target = arg0;
+        if (typeof arg1 === "function") {
+          filter = arg1;
+          instructions = arg2;
+          return mapWithFilter(target, filter, instructions);
+        } else {
+          instructions = arg1;
+        }
+      }
+      for (const key of Object.keys(instructions)) {
+        if (!Array.isArray(instructions[key])) {
+          target[key] = instructions[key];
+          continue;
+        }
+        applyInstruction(target, null, instructions, key);
+      }
+      return target;
+    }
+    __name2(map, "map");
+    var convertMap = /* @__PURE__ */ __name2((target) => {
+      const output = {};
+      for (const [k, v] of Object.entries(target || {})) {
+        output[k] = [, v];
+      }
+      return output;
+    }, "convertMap");
+    var take = /* @__PURE__ */ __name2((source, instructions) => {
+      const out = {};
+      for (const key in instructions) {
+        applyInstruction(out, source, instructions, key);
+      }
+      return out;
+    }, "take");
+    var mapWithFilter = /* @__PURE__ */ __name2((target, filter, instructions) => {
+      return map(
+        target,
+        Object.entries(instructions).reduce(
+          (_instructions, [key, value]) => {
+            if (Array.isArray(value)) {
+              _instructions[key] = value;
+            } else {
+              if (typeof value === "function") {
+                _instructions[key] = [filter, value()];
+              } else {
+                _instructions[key] = [filter, value];
+              }
+            }
+            return _instructions;
+          },
+          {}
+        )
+      );
+    }, "mapWithFilter");
+    var applyInstruction = /* @__PURE__ */ __name2((target, source, instructions, targetKey) => {
+      if (source !== null) {
+        let instruction = instructions[targetKey];
+        if (typeof instruction === "function") {
+          instruction = [, instruction];
+        }
+        const [filter2 = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;
+        if (typeof filter2 === "function" && filter2(source[sourceKey]) || typeof filter2 !== "function" && !!filter2) {
+          target[targetKey] = valueFn(source[sourceKey]);
+        }
+        return;
+      }
+      let [filter, value] = instructions[targetKey];
+      if (typeof value === "function") {
+        let _value;
+        const defaultFilterPassed = filter === void 0 && (_value = value()) != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(void 0) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed) {
+          target[targetKey] = _value;
+        } else if (customFilterPassed) {
+          target[targetKey] = value();
+        }
+      } else {
+        const defaultFilterPassed = filter === void 0 && value != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(value) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed || customFilterPassed) {
+          target[targetKey] = value;
+        }
+      }
+    }, "applyInstruction");
+    var nonNullish = /* @__PURE__ */ __name2((_) => _ != null, "nonNullish");
+    var pass = /* @__PURE__ */ __name2((_) => _, "pass");
+    function quoteHeader(part) {
+      if (part.includes(",") || part.includes('"')) {
+        part = `"${part.replace(/"/g, '\\"')}"`;
+      }
+      return part;
+    }
+    __name2(quoteHeader, "quoteHeader");
+    var serializeFloat = /* @__PURE__ */ __name2((value) => {
+      if (value !== value) {
+        return "NaN";
+      }
+      switch (value) {
+        case Infinity:
+          return "Infinity";
+        case -Infinity:
+          return "-Infinity";
+        default:
+          return value;
+      }
+    }, "serializeFloat");
+    var serializeDateTime = /* @__PURE__ */ __name2((date) => date.toISOString().replace(".000Z", "Z"), "serializeDateTime");
+    var _json = /* @__PURE__ */ __name2((obj) => {
+      if (obj == null) {
+        return {};
+      }
+      if (Array.isArray(obj)) {
+        return obj.filter((_) => _ != null).map(_json);
+      }
+      if (typeof obj === "object") {
+        const target = {};
+        for (const key of Object.keys(obj)) {
+          if (obj[key] == null) {
+            continue;
+          }
+          target[key] = _json(obj[key]);
+        }
+        return target;
+      }
+      return obj;
+    }, "_json");
+    function splitEvery(value, delimiter, numDelimiters) {
+      if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) {
+        throw new Error("Invalid number of delimiters (" + numDelimiters + ") for splitEvery.");
+      }
+      const segments = value.split(delimiter);
+      if (numDelimiters === 1) {
+        return segments;
+      }
+      const compoundSegments = [];
+      let currentSegment = "";
+      for (let i = 0; i < segments.length; i++) {
+        if (currentSegment === "") {
+          currentSegment = segments[i];
+        } else {
+          currentSegment += delimiter + segments[i];
+        }
+        if ((i + 1) % numDelimiters === 0) {
+          compoundSegments.push(currentSegment);
+          currentSegment = "";
+        }
+      }
+      if (currentSegment !== "") {
+        compoundSegments.push(currentSegment);
+      }
+      return compoundSegments;
+    }
+    __name2(splitEvery, "splitEvery");
+    var splitHeader = /* @__PURE__ */ __name2((value) => {
+      const z = value.length;
+      const values = [];
+      let withinQuotes = false;
+      let prevChar = void 0;
+      let anchor = 0;
+      for (let i = 0; i < z; ++i) {
+        const char = value[i];
+        switch (char) {
+          case `"`:
+            if (prevChar !== "\\") {
+              withinQuotes = !withinQuotes;
+            }
+            break;
+          case ",":
+            if (!withinQuotes) {
+              values.push(value.slice(anchor, i));
+              anchor = i + 1;
+            }
+            break;
+          default:
+        }
+        prevChar = char;
+      }
+      values.push(value.slice(anchor));
+      return values.map((v) => {
+        v = v.trim();
+        const z2 = v.length;
+        if (z2 < 2) {
+          return v;
+        }
+        if (v[0] === `"` && v[z2 - 1] === `"`) {
+          v = v.slice(1, z2 - 1);
+        }
+        return v.replace(/\\"/g, '"');
+      });
+    }, "splitHeader");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js
+var require_isStreamingPayload = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isStreamingPayload = void 0;
+    var stream_1 = require("stream");
+    var isStreamingPayload = (request2) => (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof stream_1.Readable || typeof ReadableStream !== "undefined" && (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof ReadableStream;
+    exports2.isStreamingPayload = isStreamingPayload;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js
+var require_dist_cjs34 = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      CONFIG_MAX_ATTEMPTS: () => CONFIG_MAX_ATTEMPTS,
+      CONFIG_RETRY_MODE: () => CONFIG_RETRY_MODE,
+      ENV_MAX_ATTEMPTS: () => ENV_MAX_ATTEMPTS,
+      ENV_RETRY_MODE: () => ENV_RETRY_MODE,
+      NODE_MAX_ATTEMPT_CONFIG_OPTIONS: () => NODE_MAX_ATTEMPT_CONFIG_OPTIONS,
+      NODE_RETRY_MODE_CONFIG_OPTIONS: () => NODE_RETRY_MODE_CONFIG_OPTIONS,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      defaultDelayDecider: () => defaultDelayDecider,
+      defaultRetryDecider: () => defaultRetryDecider,
+      getOmitRetryHeadersPlugin: () => getOmitRetryHeadersPlugin,
+      getRetryAfterHint: () => getRetryAfterHint,
+      getRetryPlugin: () => getRetryPlugin,
+      omitRetryHeadersMiddleware: () => omitRetryHeadersMiddleware,
+      omitRetryHeadersMiddlewareOptions: () => omitRetryHeadersMiddlewareOptions,
+      resolveRetryConfig: () => resolveRetryConfig,
+      retryMiddleware: () => retryMiddleware,
+      retryMiddlewareOptions: () => retryMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var import_util_retry = require_dist_cjs31();
+    var getDefaultRetryQuota = /* @__PURE__ */ __name2((initialRetryTokens, options) => {
+      const MAX_CAPACITY = initialRetryTokens;
+      const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT;
+      const retryCost = (options == null ? void 0 : options.retryCost) ?? import_util_retry.RETRY_COST;
+      const timeoutRetryCost = (options == null ? void 0 : options.timeoutRetryCost) ?? import_util_retry.TIMEOUT_RETRY_COST;
+      let availableCapacity = initialRetryTokens;
+      const getCapacityAmount = /* @__PURE__ */ __name2((error) => error.name === "TimeoutError" ? timeoutRetryCost : retryCost, "getCapacityAmount");
+      const hasRetryTokens = /* @__PURE__ */ __name2((error) => getCapacityAmount(error) <= availableCapacity, "hasRetryTokens");
+      const retrieveRetryTokens = /* @__PURE__ */ __name2((error) => {
+        if (!hasRetryTokens(error)) {
+          throw new Error("No retry token available");
+        }
+        const capacityAmount = getCapacityAmount(error);
+        availableCapacity -= capacityAmount;
+        return capacityAmount;
+      }, "retrieveRetryTokens");
+      const releaseRetryTokens = /* @__PURE__ */ __name2((capacityReleaseAmount) => {
+        availableCapacity += capacityReleaseAmount ?? noRetryIncrement;
+        availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);
+      }, "releaseRetryTokens");
+      return Object.freeze({
+        hasRetryTokens,
+        retrieveRetryTokens,
+        releaseRetryTokens
+      });
+    }, "getDefaultRetryQuota");
+    var defaultDelayDecider = /* @__PURE__ */ __name2((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), "defaultDelayDecider");
+    var import_service_error_classification = require_dist_cjs30();
+    var defaultRetryDecider = /* @__PURE__ */ __name2((error) => {
+      if (!error) {
+        return false;
+      }
+      return (0, import_service_error_classification.isRetryableByTrait)(error) || (0, import_service_error_classification.isClockSkewError)(error) || (0, import_service_error_classification.isThrottlingError)(error) || (0, import_service_error_classification.isTransientError)(error);
+    }, "defaultRetryDecider");
+    var asSdkError = /* @__PURE__ */ __name2((error) => {
+      if (error instanceof Error)
+        return error;
+      if (error instanceof Object)
+        return Object.assign(new Error(), error);
+      if (typeof error === "string")
+        return new Error(error);
+      return new Error(`AWS SDK error wrapper for ${error}`);
+    }, "asSdkError");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = import_util_retry.RETRY_MODES.STANDARD;
+        this.retryDecider = (options == null ? void 0 : options.retryDecider) ?? defaultRetryDecider;
+        this.delayDecider = (options == null ? void 0 : options.delayDecider) ?? defaultDelayDecider;
+        this.retryQuota = (options == null ? void 0 : options.retryQuota) ?? getDefaultRetryQuota(import_util_retry.INITIAL_RETRY_TOKENS);
+      }
+      shouldRetry(error, attempts, maxAttempts) {
+        return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);
+      }
+      async getMaxAttempts() {
+        let maxAttempts;
+        try {
+          maxAttempts = await this.maxAttemptsProvider();
+        } catch (error) {
+          maxAttempts = import_util_retry.DEFAULT_MAX_ATTEMPTS;
+        }
+        return maxAttempts;
+      }
+      async retry(next, args, options) {
+        let retryTokenAmount;
+        let attempts = 0;
+        let totalDelay = 0;
+        const maxAttempts = await this.getMaxAttempts();
+        const { request: request2 } = args;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            if (options == null ? void 0 : options.beforeRequest) {
+              await options.beforeRequest();
+            }
+            const { response, output } = await next(args);
+            if (options == null ? void 0 : options.afterRequest) {
+              options.afterRequest(response);
+            }
+            this.retryQuota.releaseRetryTokens(retryTokenAmount);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalDelay;
+            return { response, output };
+          } catch (e) {
+            const err = asSdkError(e);
+            attempts++;
+            if (this.shouldRetry(err, attempts, maxAttempts)) {
+              retryTokenAmount = this.retryQuota.retrieveRetryTokens(err);
+              const delayFromDecider = this.delayDecider(
+                (0, import_service_error_classification.isThrottlingError)(err) ? import_util_retry.THROTTLING_RETRY_DELAY_BASE : import_util_retry.DEFAULT_RETRY_DELAY_BASE,
+                attempts
+              );
+              const delayFromResponse = getDelayFromRetryAfterHeader(err.$response);
+              const delay = Math.max(delayFromResponse || 0, delayFromDecider);
+              totalDelay += delay;
+              await new Promise((resolve6) => setTimeout(resolve6, delay));
+              continue;
+            }
+            if (!err.$metadata) {
+              err.$metadata = {};
+            }
+            err.$metadata.attempts = attempts;
+            err.$metadata.totalRetryDelay = totalDelay;
+            throw err;
+          }
+        }
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var getDelayFromRetryAfterHeader = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return retryAfterSeconds * 1e3;
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate.getTime() - Date.now();
+    }, "getDelayFromRetryAfterHeader");
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy extends StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        const { rateLimiter, ...superOptions } = options ?? {};
+        super(maxAttemptsProvider, superOptions);
+        this.rateLimiter = rateLimiter ?? new import_util_retry.DefaultRateLimiter();
+        this.mode = import_util_retry.RETRY_MODES.ADAPTIVE;
+      }
+      async retry(next, args) {
+        return super.retry(next, args, {
+          beforeRequest: async () => {
+            return this.rateLimiter.getSendToken();
+          },
+          afterRequest: (response) => {
+            this.rateLimiter.updateClientSendingRate(response);
+          }
+        });
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var import_util_middleware3 = require_dist_cjs10();
+    var ENV_MAX_ATTEMPTS = "AWS_MAX_ATTEMPTS";
+    var CONFIG_MAX_ATTEMPTS = "max_attempts";
+    var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        const value = env2[ENV_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      configFileSelector: (profile) => {
+        const value = profile[CONFIG_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      default: import_util_retry.DEFAULT_MAX_ATTEMPTS
+    };
+    var resolveRetryConfig = /* @__PURE__ */ __name2((input) => {
+      const { retryStrategy } = input;
+      const maxAttempts = (0, import_util_middleware3.normalizeProvider)(input.maxAttempts ?? import_util_retry.DEFAULT_MAX_ATTEMPTS);
+      return {
+        ...input,
+        maxAttempts,
+        retryStrategy: async () => {
+          if (retryStrategy) {
+            return retryStrategy;
+          }
+          const retryMode = await (0, import_util_middleware3.normalizeProvider)(input.retryMode)();
+          if (retryMode === import_util_retry.RETRY_MODES.ADAPTIVE) {
+            return new import_util_retry.AdaptiveRetryStrategy(maxAttempts);
+          }
+          return new import_util_retry.StandardRetryStrategy(maxAttempts);
+        }
+      };
+    }, "resolveRetryConfig");
+    var ENV_RETRY_MODE = "AWS_RETRY_MODE";
+    var CONFIG_RETRY_MODE = "retry_mode";
+    var NODE_RETRY_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_RETRY_MODE],
+      configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],
+      default: import_util_retry.DEFAULT_RETRY_MODE
+    };
+    var omitRetryHeadersMiddleware = /* @__PURE__ */ __name2(() => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+        delete request2.headers[import_util_retry.INVOCATION_ID_HEADER];
+        delete request2.headers[import_util_retry.REQUEST_HEADER];
+      }
+      return next(args);
+    }, "omitRetryHeadersMiddleware");
+    var omitRetryHeadersMiddlewareOptions = {
+      name: "omitRetryHeadersMiddleware",
+      tags: ["RETRY", "HEADERS", "OMIT_RETRY_HEADERS"],
+      relation: "before",
+      toMiddleware: "awsAuthMiddleware",
+      override: true
+    };
+    var getOmitRetryHeadersPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions);
+      }
+    }), "getOmitRetryHeadersPlugin");
+    var import_smithy_client4 = require_dist_cjs33();
+    var import_isStreamingPayload = require_isStreamingPayload();
+    var retryMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7;
+      let retryStrategy = await options.retryStrategy();
+      const maxAttempts = await options.maxAttempts();
+      if (isRetryStrategyV2(retryStrategy)) {
+        retryStrategy = retryStrategy;
+        let retryToken = await retryStrategy.acquireInitialRetryToken(context["partition_id"]);
+        let lastError = new Error();
+        let attempts = 0;
+        let totalRetryDelay = 0;
+        const { request: request2 } = args;
+        const isRequest = import_protocol_http8.HttpRequest.isInstance(request2);
+        if (isRequest) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (isRequest) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            const { response, output } = await next(args);
+            retryStrategy.recordSuccess(retryToken);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalRetryDelay;
+            return { response, output };
+          } catch (e) {
+            const retryErrorInfo = getRetryErrorInfo(e);
+            lastError = asSdkError(e);
+            if (isRequest && (0, import_isStreamingPayload.isStreamingPayload)(request2)) {
+              (_a7 = context.logger instanceof import_smithy_client4.NoOpLogger ? console : context.logger) == null ? void 0 : _a7.warn(
+                "An error was encountered in a non-retryable streaming request."
+              );
+              throw lastError;
+            }
+            try {
+              retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);
+            } catch (refreshError) {
+              if (!lastError.$metadata) {
+                lastError.$metadata = {};
+              }
+              lastError.$metadata.attempts = attempts + 1;
+              lastError.$metadata.totalRetryDelay = totalRetryDelay;
+              throw lastError;
+            }
+            attempts = retryToken.getRetryCount();
+            const delay = retryToken.getRetryDelay();
+            totalRetryDelay += delay;
+            await new Promise((resolve6) => setTimeout(resolve6, delay));
+          }
+        }
+      } else {
+        retryStrategy = retryStrategy;
+        if (retryStrategy == null ? void 0 : retryStrategy.mode)
+          context.userAgent = [...context.userAgent || [], ["cfg/retry-mode", retryStrategy.mode]];
+        return retryStrategy.retry(next, args);
+      }
+    }, "retryMiddleware");
+    var isRetryStrategyV2 = /* @__PURE__ */ __name2((retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== "undefined" && typeof retryStrategy.refreshRetryTokenForRetry !== "undefined" && typeof retryStrategy.recordSuccess !== "undefined", "isRetryStrategyV2");
+    var getRetryErrorInfo = /* @__PURE__ */ __name2((error) => {
+      const errorInfo = {
+        error,
+        errorType: getRetryErrorType(error)
+      };
+      const retryAfterHint = getRetryAfterHint(error.$response);
+      if (retryAfterHint) {
+        errorInfo.retryAfterHint = retryAfterHint;
+      }
+      return errorInfo;
+    }, "getRetryErrorInfo");
+    var getRetryErrorType = /* @__PURE__ */ __name2((error) => {
+      if ((0, import_service_error_classification.isThrottlingError)(error))
+        return "THROTTLING";
+      if ((0, import_service_error_classification.isTransientError)(error))
+        return "TRANSIENT";
+      if ((0, import_service_error_classification.isServerError)(error))
+        return "SERVER_ERROR";
+      return "CLIENT_ERROR";
+    }, "getRetryErrorType");
+    var retryMiddlewareOptions = {
+      name: "retryMiddleware",
+      tags: ["RETRY"],
+      step: "finalizeRequest",
+      priority: "high",
+      override: true
+    };
+    var getRetryPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(retryMiddleware(options), retryMiddlewareOptions);
+      }
+    }), "getRetryPlugin");
+    var getRetryAfterHint = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return new Date(retryAfterSeconds * 1e3);
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate;
+    }, "getRetryAfterHint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js
+var warningEmitted, emitWarningIfUnsupportedVersion;
+var init_emitWarningIfUnsupportedVersion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js"() {
+    warningEmitted = false;
+    emitWarningIfUnsupportedVersion = (version3) => {
+      if (version3 && !warningEmitted && parseInt(version3.substring(1, version3.indexOf("."))) < 18) {
+        warningEmitted = true;
+        process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
+no longer support Node.js 16.x on January 6, 2025.
+
+To continue receiving updates to AWS services, bug fixes, and security
+updates please upgrade to a supported Node.js LTS version.
+
+More information can be found at: https://a.co/74kJMmI`);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js
+var init_client = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js"() {
+    init_emitWarningIfUnsupportedVersion();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js
+var import_protocol_http5, getDateHeader;
+var init_getDateHeader = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js"() {
+    import_protocol_http5 = __toESM(require_dist_cjs2());
+    getDateHeader = (response) => import_protocol_http5.HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : void 0;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js
+var getSkewCorrectedDate;
+var init_getSkewCorrectedDate = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js"() {
+    getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js
+var isClockSkewed;
+var init_isClockSkewed = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js"() {
+    init_getSkewCorrectedDate();
+    isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 3e5;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js
+var getUpdatedSystemClockOffset;
+var init_getUpdatedSystemClockOffset = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js"() {
+    init_isClockSkewed();
+    getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {
+      const clockTimeInMs = Date.parse(clockTime);
+      if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {
+        return clockTimeInMs - Date.now();
+      }
+      return currentSystemClockOffset;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js
+var init_utils2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js"() {
+    init_getDateHeader();
+    init_getSkewCorrectedDate();
+    init_getUpdatedSystemClockOffset();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js
+var import_protocol_http6, throwSigningPropertyError, validateSigningProperties, AwsSdkSigV4Signer, AWSSDKSigV4Signer;
+var init_AwsSdkSigV4Signer = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js"() {
+    import_protocol_http6 = __toESM(require_dist_cjs2());
+    init_utils2();
+    throwSigningPropertyError = (name, property) => {
+      if (!property) {
+        throw new Error(`Property \`${name}\` is not resolved for AWS SDK SigV4Auth`);
+      }
+      return property;
+    };
+    validateSigningProperties = async (signingProperties) => {
+      const context = throwSigningPropertyError("context", signingProperties.context);
+      const config = throwSigningPropertyError("config", signingProperties.config);
+      const authScheme = context.endpointV2?.properties?.authSchemes?.[0];
+      const signerFunction = throwSigningPropertyError("signer", config.signer);
+      const signer = await signerFunction(authScheme);
+      const signingRegion = signingProperties?.signingRegion;
+      const signingRegionSet = signingProperties?.signingRegionSet;
+      const signingName = signingProperties?.signingName;
+      return {
+        config,
+        signer,
+        signingRegion,
+        signingRegionSet,
+        signingName
+      };
+    };
+    AwsSdkSigV4Signer = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http6.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const validatedProps = await validateSigningProperties(signingProperties);
+        const { config, signer } = validatedProps;
+        let { signingRegion, signingName } = validatedProps;
+        const handlerExecutionContext = signingProperties.context;
+        if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {
+          const [first, second] = handlerExecutionContext.authSchemes;
+          if (first?.name === "sigv4a" && second?.name === "sigv4") {
+            signingRegion = second?.signingRegion ?? signingRegion;
+            signingName = second?.signingName ?? signingName;
+          }
+        }
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+      errorHandler(signingProperties) {
+        return (error) => {
+          const serverTime = error.ServerTime ?? getDateHeader(error.$response);
+          if (serverTime) {
+            const config = throwSigningPropertyError("config", signingProperties.config);
+            const initialSystemClockOffset = config.systemClockOffset;
+            config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);
+            const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;
+            if (clockSkewCorrected && error.$metadata) {
+              error.$metadata.clockSkewCorrected = true;
+            }
+          }
+          throw error;
+        };
+      }
+      successHandler(httpResponse, signingProperties) {
+        const dateHeader = getDateHeader(httpResponse);
+        if (dateHeader) {
+          const config = throwSigningPropertyError("config", signingProperties.config);
+          config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);
+        }
+      }
+    };
+    AWSSDKSigV4Signer = AwsSdkSigV4Signer;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js
+var import_protocol_http7, AwsSdkSigV4ASigner;
+var init_AwsSdkSigV4ASigner = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js"() {
+    import_protocol_http7 = __toESM(require_dist_cjs2());
+    init_utils2();
+    init_AwsSdkSigV4Signer();
+    AwsSdkSigV4ASigner = class extends AwsSdkSigV4Signer {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http7.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const { config, signer, signingRegion, signingRegionSet, signingName } = await validateSigningProperties(signingProperties);
+        const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();
+        const multiRegionOverride = (configResolvedSigningRegionSet ?? signingRegionSet ?? [signingRegion]).join(",");
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion: multiRegionOverride,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js
+var import_property_provider, resolveAwsSdkSigV4AConfig, NODE_SIGV4A_CONFIG_OPTIONS;
+var init_resolveAwsSdkSigV4AConfig = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js"() {
+    init_dist_es();
+    import_property_provider = __toESM(require_dist_cjs24());
+    resolveAwsSdkSigV4AConfig = (config) => {
+      config.sigv4aSigningRegionSet = normalizeProvider(config.sigv4aSigningRegionSet);
+      return config;
+    };
+    NODE_SIGV4A_CONFIG_OPTIONS = {
+      environmentVariableSelector(env2) {
+        if (env2.AWS_SIGV4A_SIGNING_REGION_SET) {
+          return env2.AWS_SIGV4A_SIGNING_REGION_SET.split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("AWS_SIGV4A_SIGNING_REGION_SET not set in env.", {
+          tryNextLink: true
+        });
+      },
+      configFileSelector(profile) {
+        if (profile.sigv4a_signing_region_set) {
+          return (profile.sigv4a_signing_region_set ?? "").split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("sigv4a_signing_region_set not set in profile.", {
+          tryNextLink: true
+        });
+      },
+      default: void 0
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/signature-v4/dist-cjs/index.js
+var require_dist_cjs35 = __commonJS({
+  "../../../node_modules/@smithy/signature-v4/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SignatureV4: () => SignatureV42,
+      clearCredentialCache: () => clearCredentialCache,
+      createScope: () => createScope,
+      getCanonicalHeaders: () => getCanonicalHeaders,
+      getCanonicalQuery: () => getCanonicalQuery,
+      getPayloadHash: () => getPayloadHash,
+      getSigningKey: () => getSigningKey,
+      moveHeadersToQuery: () => moveHeadersToQuery,
+      prepareRequest: () => prepareRequest
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_middleware3 = require_dist_cjs10();
+    var import_util_utf84 = require_dist_cjs15();
+    var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm";
+    var CREDENTIAL_QUERY_PARAM = "X-Amz-Credential";
+    var AMZ_DATE_QUERY_PARAM = "X-Amz-Date";
+    var SIGNED_HEADERS_QUERY_PARAM = "X-Amz-SignedHeaders";
+    var EXPIRES_QUERY_PARAM = "X-Amz-Expires";
+    var SIGNATURE_QUERY_PARAM = "X-Amz-Signature";
+    var TOKEN_QUERY_PARAM = "X-Amz-Security-Token";
+    var AUTH_HEADER = "authorization";
+    var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();
+    var DATE_HEADER = "date";
+    var GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];
+    var SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();
+    var SHA256_HEADER = "x-amz-content-sha256";
+    var TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();
+    var ALWAYS_UNSIGNABLE_HEADERS = {
+      authorization: true,
+      "cache-control": true,
+      connection: true,
+      expect: true,
+      from: true,
+      "keep-alive": true,
+      "max-forwards": true,
+      pragma: true,
+      referer: true,
+      te: true,
+      trailer: true,
+      "transfer-encoding": true,
+      upgrade: true,
+      "user-agent": true,
+      "x-amzn-trace-id": true
+    };
+    var PROXY_HEADER_PATTERN = /^proxy-/;
+    var SEC_HEADER_PATTERN = /^sec-/;
+    var ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256";
+    var EVENT_ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256-PAYLOAD";
+    var UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD";
+    var MAX_CACHE_SIZE = 50;
+    var KEY_TYPE_IDENTIFIER = "aws4_request";
+    var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;
+    var import_util_hex_encoding = require_dist_cjs21();
+    var import_util_utf8 = require_dist_cjs15();
+    var signingKeyCache = {};
+    var cacheQueue = [];
+    var createScope = /* @__PURE__ */ __name2((shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`, "createScope");
+    var getSigningKey = /* @__PURE__ */ __name2(async (sha256Constructor, credentials, shortDate, region, service) => {
+      const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);
+      const cacheKey = `${shortDate}:${region}:${service}:${(0, import_util_hex_encoding.toHex)(credsHash)}:${credentials.sessionToken}`;
+      if (cacheKey in signingKeyCache) {
+        return signingKeyCache[cacheKey];
+      }
+      cacheQueue.push(cacheKey);
+      while (cacheQueue.length > MAX_CACHE_SIZE) {
+        delete signingKeyCache[cacheQueue.shift()];
+      }
+      let key = `AWS4${credentials.secretAccessKey}`;
+      for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {
+        key = await hmac(sha256Constructor, key, signable);
+      }
+      return signingKeyCache[cacheKey] = key;
+    }, "getSigningKey");
+    var clearCredentialCache = /* @__PURE__ */ __name2(() => {
+      cacheQueue.length = 0;
+      Object.keys(signingKeyCache).forEach((cacheKey) => {
+        delete signingKeyCache[cacheKey];
+      });
+    }, "clearCredentialCache");
+    var hmac = /* @__PURE__ */ __name2((ctor, secret, data) => {
+      const hash = new ctor(secret);
+      hash.update((0, import_util_utf8.toUint8Array)(data));
+      return hash.digest();
+    }, "hmac");
+    var getCanonicalHeaders = /* @__PURE__ */ __name2(({ headers }, unsignableHeaders, signableHeaders) => {
+      const canonical = {};
+      for (const headerName of Object.keys(headers).sort()) {
+        if (headers[headerName] == void 0) {
+          continue;
+        }
+        const canonicalHeaderName = headerName.toLowerCase();
+        if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS || (unsignableHeaders == null ? void 0 : unsignableHeaders.has(canonicalHeaderName)) || PROXY_HEADER_PATTERN.test(canonicalHeaderName) || SEC_HEADER_PATTERN.test(canonicalHeaderName)) {
+          if (!signableHeaders || signableHeaders && !signableHeaders.has(canonicalHeaderName)) {
+            continue;
+          }
+        }
+        canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\s+/g, " ");
+      }
+      return canonical;
+    }, "getCanonicalHeaders");
+    var import_util_uri_escape = require_dist_cjs17();
+    var getCanonicalQuery = /* @__PURE__ */ __name2(({ query = {} }) => {
+      const keys = [];
+      const serialized = {};
+      for (const key of Object.keys(query)) {
+        if (key.toLowerCase() === SIGNATURE_HEADER) {
+          continue;
+        }
+        const encodedKey = (0, import_util_uri_escape.escapeUri)(key);
+        keys.push(encodedKey);
+        const value = query[key];
+        if (typeof value === "string") {
+          serialized[encodedKey] = `${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value)}`;
+        } else if (Array.isArray(value)) {
+          serialized[encodedKey] = value.slice(0).reduce((encoded, value2) => encoded.concat([`${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value2)}`]), []).sort().join("&");
+        }
+      }
+      return keys.sort().map((key) => serialized[key]).filter((serialized2) => serialized2).join("&");
+    }, "getCanonicalQuery");
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_util_utf82 = require_dist_cjs15();
+    var getPayloadHash = /* @__PURE__ */ __name2(async ({ headers, body }, hashConstructor) => {
+      for (const headerName of Object.keys(headers)) {
+        if (headerName.toLowerCase() === SHA256_HEADER) {
+          return headers[headerName];
+        }
+      }
+      if (body == void 0) {
+        return "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
+      } else if (typeof body === "string" || ArrayBuffer.isView(body) || (0, import_is_array_buffer.isArrayBuffer)(body)) {
+        const hashCtor = new hashConstructor();
+        hashCtor.update((0, import_util_utf82.toUint8Array)(body));
+        return (0, import_util_hex_encoding.toHex)(await hashCtor.digest());
+      }
+      return UNSIGNED_PAYLOAD;
+    }, "getPayloadHash");
+    var import_util_utf83 = require_dist_cjs15();
+    var _HeaderFormatter = class _HeaderFormatter {
+      format(headers) {
+        const chunks = [];
+        for (const headerName of Object.keys(headers)) {
+          const bytes = (0, import_util_utf83.fromUtf8)(headerName);
+          chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));
+        }
+        const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));
+        let position = 0;
+        for (const chunk of chunks) {
+          out.set(chunk, position);
+          position += chunk.byteLength;
+        }
+        return out;
+      }
+      formatHeaderValue(header) {
+        switch (header.type) {
+          case "boolean":
+            return Uint8Array.from([
+              header.value ? 0 : 1
+              /* boolFalse */
+            ]);
+          case "byte":
+            return Uint8Array.from([2, header.value]);
+          case "short":
+            const shortView = new DataView(new ArrayBuffer(3));
+            shortView.setUint8(
+              0,
+              3
+              /* short */
+            );
+            shortView.setInt16(1, header.value, false);
+            return new Uint8Array(shortView.buffer);
+          case "integer":
+            const intView = new DataView(new ArrayBuffer(5));
+            intView.setUint8(
+              0,
+              4
+              /* integer */
+            );
+            intView.setInt32(1, header.value, false);
+            return new Uint8Array(intView.buffer);
+          case "long":
+            const longBytes = new Uint8Array(9);
+            longBytes[0] = 5;
+            longBytes.set(header.value.bytes, 1);
+            return longBytes;
+          case "binary":
+            const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));
+            binView.setUint8(
+              0,
+              6
+              /* byteArray */
+            );
+            binView.setUint16(1, header.value.byteLength, false);
+            const binBytes = new Uint8Array(binView.buffer);
+            binBytes.set(header.value, 3);
+            return binBytes;
+          case "string":
+            const utf8Bytes = (0, import_util_utf83.fromUtf8)(header.value);
+            const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));
+            strView.setUint8(
+              0,
+              7
+              /* string */
+            );
+            strView.setUint16(1, utf8Bytes.byteLength, false);
+            const strBytes = new Uint8Array(strView.buffer);
+            strBytes.set(utf8Bytes, 3);
+            return strBytes;
+          case "timestamp":
+            const tsBytes = new Uint8Array(9);
+            tsBytes[0] = 8;
+            tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);
+            return tsBytes;
+          case "uuid":
+            if (!UUID_PATTERN.test(header.value)) {
+              throw new Error(`Invalid UUID received: ${header.value}`);
+            }
+            const uuidBytes = new Uint8Array(17);
+            uuidBytes[0] = 9;
+            uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1);
+            return uuidBytes;
+        }
+      }
+    };
+    __name2(_HeaderFormatter, "HeaderFormatter");
+    var HeaderFormatter = _HeaderFormatter;
+    var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
+    var _Int64 = class _Int642 {
+      constructor(bytes) {
+        this.bytes = bytes;
+        if (bytes.byteLength !== 8) {
+          throw new Error("Int64 buffers must be exactly 8 bytes");
+        }
+      }
+      static fromNumber(number) {
+        if (number > 9223372036854776e3 || number < -9223372036854776e3) {
+          throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);
+        }
+        const bytes = new Uint8Array(8);
+        for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {
+          bytes[i] = remaining;
+        }
+        if (number < 0) {
+          negate(bytes);
+        }
+        return new _Int642(bytes);
+      }
+      /**
+       * Called implicitly by infix arithmetic operators.
+       */
+      valueOf() {
+        const bytes = this.bytes.slice(0);
+        const negative = bytes[0] & 128;
+        if (negative) {
+          negate(bytes);
+        }
+        return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1);
+      }
+      toString() {
+        return String(this.valueOf());
+      }
+    };
+    __name2(_Int64, "Int64");
+    var Int64 = _Int64;
+    function negate(bytes) {
+      for (let i = 0; i < 8; i++) {
+        bytes[i] ^= 255;
+      }
+      for (let i = 7; i > -1; i--) {
+        bytes[i]++;
+        if (bytes[i] !== 0)
+          break;
+      }
+    }
+    __name2(negate, "negate");
+    var hasHeader = /* @__PURE__ */ __name2((soughtHeader, headers) => {
+      soughtHeader = soughtHeader.toLowerCase();
+      for (const headerName of Object.keys(headers)) {
+        if (soughtHeader === headerName.toLowerCase()) {
+          return true;
+        }
+      }
+      return false;
+    }, "hasHeader");
+    var import_protocol_http8 = require_dist_cjs2();
+    var moveHeadersToQuery = /* @__PURE__ */ __name2((request2, options = {}) => {
+      var _a7, _b;
+      const { headers, query = {} } = import_protocol_http8.HttpRequest.clone(request2);
+      for (const name of Object.keys(headers)) {
+        const lname = name.toLowerCase();
+        if (lname.slice(0, 6) === "x-amz-" && !((_a7 = options.unhoistableHeaders) == null ? void 0 : _a7.has(lname)) || ((_b = options.hoistableHeaders) == null ? void 0 : _b.has(lname))) {
+          query[name] = headers[name];
+          delete headers[name];
+        }
+      }
+      return {
+        ...request2,
+        headers,
+        query
+      };
+    }, "moveHeadersToQuery");
+    var prepareRequest = /* @__PURE__ */ __name2((request2) => {
+      request2 = import_protocol_http8.HttpRequest.clone(request2);
+      for (const headerName of Object.keys(request2.headers)) {
+        if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {
+          delete request2.headers[headerName];
+        }
+      }
+      return request2;
+    }, "prepareRequest");
+    var iso8601 = /* @__PURE__ */ __name2((time) => toDate(time).toISOString().replace(/\.\d{3}Z$/, "Z"), "iso8601");
+    var toDate = /* @__PURE__ */ __name2((time) => {
+      if (typeof time === "number") {
+        return new Date(time * 1e3);
+      }
+      if (typeof time === "string") {
+        if (Number(time)) {
+          return new Date(Number(time) * 1e3);
+        }
+        return new Date(time);
+      }
+      return time;
+    }, "toDate");
+    var _SignatureV4 = class _SignatureV4 {
+      constructor({
+        applyChecksum,
+        credentials,
+        region,
+        service,
+        sha256,
+        uriEscapePath = true
+      }) {
+        this.headerFormatter = new HeaderFormatter();
+        this.service = service;
+        this.sha256 = sha256;
+        this.uriEscapePath = uriEscapePath;
+        this.applyChecksum = typeof applyChecksum === "boolean" ? applyChecksum : true;
+        this.regionProvider = (0, import_util_middleware3.normalizeProvider)(region);
+        this.credentialProvider = (0, import_util_middleware3.normalizeProvider)(credentials);
+      }
+      async presign(originalRequest, options = {}) {
+        const {
+          signingDate = /* @__PURE__ */ new Date(),
+          expiresIn = 3600,
+          unsignableHeaders,
+          unhoistableHeaders,
+          signableHeaders,
+          hoistableHeaders,
+          signingRegion,
+          signingService
+        } = options;
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { longDate, shortDate } = formatDate(signingDate);
+        if (expiresIn > MAX_PRESIGNED_TTL) {
+          return Promise.reject(
+            "Signature version 4 presigned URLs must have an expiration date less than one week in the future"
+          );
+        }
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const request2 = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders, hoistableHeaders });
+        if (credentials.sessionToken) {
+          request2.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;
+        }
+        request2.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;
+        request2.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;
+        request2.query[AMZ_DATE_QUERY_PARAM] = longDate;
+        request2.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        request2.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders);
+        request2.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256))
+        );
+        return request2;
+      }
+      async sign(toSign, options) {
+        if (typeof toSign === "string") {
+          return this.signString(toSign, options);
+        } else if (toSign.headers && toSign.payload) {
+          return this.signEvent(toSign, options);
+        } else if (toSign.message) {
+          return this.signMessage(toSign, options);
+        } else {
+          return this.signRequest(toSign, options);
+        }
+      }
+      async signEvent({ headers, payload }, { signingDate = /* @__PURE__ */ new Date(), priorSignature, signingRegion, signingService }) {
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate, longDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);
+        const hash = new this.sha256();
+        hash.update(headers);
+        const hashedHeaders = (0, import_util_hex_encoding.toHex)(await hash.digest());
+        const stringToSign = [
+          EVENT_ALGORITHM_IDENTIFIER,
+          longDate,
+          scope,
+          priorSignature,
+          hashedHeaders,
+          hashedPayload
+        ].join("\n");
+        return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });
+      }
+      async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) {
+        const promise = this.signEvent(
+          {
+            headers: this.headerFormatter.format(signableMessage.message.headers),
+            payload: signableMessage.message.body
+          },
+          {
+            signingDate,
+            signingRegion,
+            signingService,
+            priorSignature: signableMessage.priorSignature
+          }
+        );
+        return promise.then((signature) => {
+          return { message: signableMessage.message, signature };
+        });
+      }
+      async signString(stringToSign, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate } = formatDate(signingDate);
+        const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      async signRequest(requestToSign, {
+        signingDate = /* @__PURE__ */ new Date(),
+        signableHeaders,
+        unsignableHeaders,
+        signingRegion,
+        signingService
+      } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const request2 = prepareRequest(requestToSign);
+        const { longDate, shortDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        request2.headers[AMZ_DATE_HEADER] = longDate;
+        if (credentials.sessionToken) {
+          request2.headers[TOKEN_HEADER] = credentials.sessionToken;
+        }
+        const payloadHash = await getPayloadHash(request2, this.sha256);
+        if (!hasHeader(SHA256_HEADER, request2.headers) && this.applyChecksum) {
+          request2.headers[SHA256_HEADER] = payloadHash;
+        }
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        const signature = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, payloadHash)
+        );
+        request2.headers[AUTH_HEADER] = `${ALGORITHM_IDENTIFIER} Credential=${credentials.accessKeyId}/${scope}, SignedHeaders=${getCanonicalHeaderList(canonicalHeaders)}, Signature=${signature}`;
+        return request2;
+      }
+      createCanonicalRequest(request2, canonicalHeaders, payloadHash) {
+        const sortedHeaders = Object.keys(canonicalHeaders).sort();
+        return `${request2.method}
+${this.getCanonicalPath(request2)}
+${getCanonicalQuery(request2)}
+${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join("\n")}
+
+${sortedHeaders.join(";")}
+${payloadHash}`;
+      }
+      async createStringToSign(longDate, credentialScope, canonicalRequest) {
+        const hash = new this.sha256();
+        hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest));
+        const hashedRequest = await hash.digest();
+        return `${ALGORITHM_IDENTIFIER}
+${longDate}
+${credentialScope}
+${(0, import_util_hex_encoding.toHex)(hashedRequest)}`;
+      }
+      getCanonicalPath({ path: path23 }) {
+        if (this.uriEscapePath) {
+          const normalizedPathSegments = [];
+          for (const pathSegment of path23.split("/")) {
+            if ((pathSegment == null ? void 0 : pathSegment.length) === 0)
+              continue;
+            if (pathSegment === ".")
+              continue;
+            if (pathSegment === "..") {
+              normalizedPathSegments.pop();
+            } else {
+              normalizedPathSegments.push(pathSegment);
+            }
+          }
+          const normalizedPath = `${(path23 == null ? void 0 : path23.startsWith("/")) ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && (path23 == null ? void 0 : path23.endsWith("/")) ? "/" : ""}`;
+          const doubleEncoded = (0, import_util_uri_escape.escapeUri)(normalizedPath);
+          return doubleEncoded.replace(/%2F/g, "/");
+        }
+        return path23;
+      }
+      async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {
+        const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest);
+        const hash = new this.sha256(await keyPromise);
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      getSigningKey(credentials, region, shortDate, service) {
+        return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);
+      }
+      validateResolvedCredentials(credentials) {
+        if (typeof credentials !== "object" || // @ts-expect-error: Property 'accessKeyId' does not exist on type 'object'.ts(2339)
+        typeof credentials.accessKeyId !== "string" || // @ts-expect-error: Property 'secretAccessKey' does not exist on type 'object'.ts(2339)
+        typeof credentials.secretAccessKey !== "string") {
+          throw new Error("Resolved credential object is not valid");
+        }
+      }
+    };
+    __name2(_SignatureV4, "SignatureV4");
+    var SignatureV42 = _SignatureV4;
+    var formatDate = /* @__PURE__ */ __name2((now) => {
+      const longDate = iso8601(now).replace(/[\-:]/g, "");
+      return {
+        longDate,
+        shortDate: longDate.slice(0, 8)
+      };
+    }, "formatDate");
+    var getCanonicalHeaderList = /* @__PURE__ */ __name2((headers) => Object.keys(headers).sort().join(";"), "getCanonicalHeaderList");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js
+var import_signature_v4, resolveAwsSdkSigV4Config, resolveAWSSDKSigV4Config;
+var init_resolveAwsSdkSigV4Config = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js"() {
+    init_dist_es();
+    import_signature_v4 = __toESM(require_dist_cjs35());
+    resolveAwsSdkSigV4Config = (config) => {
+      let normalizedCreds;
+      if (config.credentials) {
+        normalizedCreds = memoizeIdentityProvider(config.credentials, isIdentityExpired, doesIdentityRequireRefresh);
+      }
+      if (!normalizedCreds) {
+        if (config.credentialDefaultProvider) {
+          normalizedCreds = normalizeProvider(config.credentialDefaultProvider(Object.assign({}, config, {
+            parentClientConfig: config
+          })));
+        } else {
+          normalizedCreds = async () => {
+            throw new Error("`credentials` is missing");
+          };
+        }
+      }
+      const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256 } = config;
+      let signer;
+      if (config.signer) {
+        signer = normalizeProvider(config.signer);
+      } else if (config.regionInfoProvider) {
+        signer = () => normalizeProvider(config.region)().then(async (region) => [
+          await config.regionInfoProvider(region, {
+            useFipsEndpoint: await config.useFipsEndpoint(),
+            useDualstackEndpoint: await config.useDualstackEndpoint()
+          }) || {},
+          region
+        ]).then(([regionInfo, region]) => {
+          const { signingRegion, signingService } = regionInfo;
+          config.signingRegion = config.signingRegion || signingRegion || region;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        });
+      } else {
+        signer = async (authScheme) => {
+          authScheme = Object.assign({}, {
+            name: "sigv4",
+            signingName: config.signingName || config.defaultSigningName,
+            signingRegion: await normalizeProvider(config.region)(),
+            properties: {}
+          }, authScheme);
+          const signingRegion = authScheme.signingRegion;
+          const signingService = authScheme.signingName;
+          config.signingRegion = config.signingRegion || signingRegion;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        };
+      }
+      return {
+        ...config,
+        systemClockOffset,
+        signingEscapePath,
+        credentials: normalizedCreds,
+        signer
+      };
+    };
+    resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js
+var init_aws_sdk = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js"() {
+    init_AwsSdkSigV4Signer();
+    init_AwsSdkSigV4ASigner();
+    init_resolveAwsSdkSigV4AConfig();
+    init_resolveAwsSdkSigV4Config();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js
+var init_httpAuthSchemes2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js"() {
+    init_aws_sdk();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js
+var _toStr, _toBool, _toNum;
+var init_coercing_serializers = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js"() {
+    _toStr = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number" || typeof val2 === "bigint") {
+        const warning = new Error(`Received number ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      if (typeof val2 === "boolean") {
+        const warning = new Error(`Received boolean ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      return val2;
+    };
+    _toBool = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number") {
+      }
+      if (typeof val2 === "string") {
+        const lowercase = val2.toLowerCase();
+        if (val2 !== "" && lowercase !== "false" && lowercase !== "true") {
+          const warning = new Error(`Received string "${val2}" where a boolean was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+        }
+        return val2 !== "" && lowercase !== "false";
+      }
+      return val2;
+    };
+    _toNum = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "boolean") {
+      }
+      if (typeof val2 === "string") {
+        const num = Number(val2);
+        if (num.toString() !== val2) {
+          const warning = new Error(`Received string "${val2}" where a number was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+          return val2;
+        }
+        return num;
+      }
+      return val2;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js
+var import_smithy_client, awsExpectUnion;
+var init_awsExpectUnion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js"() {
+    import_smithy_client = __toESM(require_dist_cjs33());
+    awsExpectUnion = (value) => {
+      if (value == null) {
+        return void 0;
+      }
+      if (typeof value === "object" && "__type" in value) {
+        delete value.__type;
+      }
+      return (0, import_smithy_client.expectUnion)(value);
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js
+var import_smithy_client2, collectBodyString;
+var init_common = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js"() {
+    import_smithy_client2 = __toESM(require_dist_cjs33());
+    collectBodyString = (streamBody, context) => (0, import_smithy_client2.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body));
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js
+var parseJsonBody, parseJsonErrorBody, loadRestJsonErrorCode;
+var init_parseJsonBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js"() {
+    init_common();
+    parseJsonBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        try {
+          return JSON.parse(encoded);
+        } catch (e) {
+          if (e?.name === "SyntaxError") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+      }
+      return {};
+    });
+    parseJsonErrorBody = async (errorBody, context) => {
+      const value = await parseJsonBody(errorBody, context);
+      value.message = value.message ?? value.Message;
+      return value;
+    };
+    loadRestJsonErrorCode = (output, data) => {
+      const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase());
+      const sanitizeErrorCode = (rawValue) => {
+        let cleanValue = rawValue;
+        if (typeof cleanValue === "number") {
+          cleanValue = cleanValue.toString();
+        }
+        if (cleanValue.indexOf(",") >= 0) {
+          cleanValue = cleanValue.split(",")[0];
+        }
+        if (cleanValue.indexOf(":") >= 0) {
+          cleanValue = cleanValue.split(":")[0];
+        }
+        if (cleanValue.indexOf("#") >= 0) {
+          cleanValue = cleanValue.split("#")[1];
+        }
+        return cleanValue;
+      };
+      const headerKey = findKey(output.headers, "x-amzn-errortype");
+      if (headerKey !== void 0) {
+        return sanitizeErrorCode(output.headers[headerKey]);
+      }
+      if (data.code !== void 0) {
+        return sanitizeErrorCode(data.code);
+      }
+      if (data["__type"] !== void 0) {
+        return sanitizeErrorCode(data["__type"]);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/util.js
+var require_util = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/util.js"(exports2) {
+    "use strict";
+    var nameStartChar = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD";
+    var nameChar = nameStartChar + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040";
+    var nameRegexp = "[" + nameStartChar + "][" + nameChar + "]*";
+    var regexName = new RegExp("^" + nameRegexp + "$");
+    var getAllMatches = function(string, regex) {
+      const matches = [];
+      let match = regex.exec(string);
+      while (match) {
+        const allmatches = [];
+        allmatches.startIndex = regex.lastIndex - match[0].length;
+        const len = match.length;
+        for (let index = 0; index < len; index++) {
+          allmatches.push(match[index]);
+        }
+        matches.push(allmatches);
+        match = regex.exec(string);
+      }
+      return matches;
+    };
+    var isName = function(string) {
+      const match = regexName.exec(string);
+      return !(match === null || typeof match === "undefined");
+    };
+    exports2.isExist = function(v) {
+      return typeof v !== "undefined";
+    };
+    exports2.isEmptyObject = function(obj) {
+      return Object.keys(obj).length === 0;
+    };
+    exports2.merge = function(target, a, arrayMode) {
+      if (a) {
+        const keys = Object.keys(a);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          if (arrayMode === "strict") {
+            target[keys[i]] = [a[keys[i]]];
+          } else {
+            target[keys[i]] = a[keys[i]];
+          }
+        }
+      }
+    };
+    exports2.getValue = function(v) {
+      if (exports2.isExist(v)) {
+        return v;
+      } else {
+        return "";
+      }
+    };
+    exports2.isName = isName;
+    exports2.getAllMatches = getAllMatches;
+    exports2.nameRegexp = nameRegexp;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/validator.js
+var require_validator2 = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/validator.js"(exports2) {
+    "use strict";
+    var util = require_util();
+    var defaultOptions = {
+      allowBooleanAttributes: false,
+      //A tag can have attributes without any value
+      unpairedTags: []
+    };
+    exports2.validate = function(xmlData, options) {
+      options = Object.assign({}, defaultOptions, options);
+      const tags = [];
+      let tagFound = false;
+      let reachedRoot = false;
+      if (xmlData[0] === "\uFEFF") {
+        xmlData = xmlData.substr(1);
+      }
+      for (let i = 0; i < xmlData.length; i++) {
+        if (xmlData[i] === "<" && xmlData[i + 1] === "?") {
+          i += 2;
+          i = readPI(xmlData, i);
+          if (i.err) return i;
+        } else if (xmlData[i] === "<") {
+          let tagStartPos = i;
+          i++;
+          if (xmlData[i] === "!") {
+            i = readCommentAndCDATA(xmlData, i);
+            continue;
+          } else {
+            let closingTag = false;
+            if (xmlData[i] === "/") {
+              closingTag = true;
+              i++;
+            }
+            let tagName = "";
+            for (; i < xmlData.length && xmlData[i] !== ">" && xmlData[i] !== " " && xmlData[i] !== "	" && xmlData[i] !== "\n" && xmlData[i] !== "\r"; i++) {
+              tagName += xmlData[i];
+            }
+            tagName = tagName.trim();
+            if (tagName[tagName.length - 1] === "/") {
+              tagName = tagName.substring(0, tagName.length - 1);
+              i--;
+            }
+            if (!validateTagName(tagName)) {
+              let msg;
+              if (tagName.trim().length === 0) {
+                msg = "Invalid space after '<'.";
+              } else {
+                msg = "Tag '" + tagName + "' is an invalid name.";
+              }
+              return getErrorObject("InvalidTag", msg, getLineNumberForPosition(xmlData, i));
+            }
+            const result = readAttributeStr(xmlData, i);
+            if (result === false) {
+              return getErrorObject("InvalidAttr", "Attributes for '" + tagName + "' have open quote.", getLineNumberForPosition(xmlData, i));
+            }
+            let attrStr = result.value;
+            i = result.index;
+            if (attrStr[attrStr.length - 1] === "/") {
+              const attrStrStart = i - attrStr.length;
+              attrStr = attrStr.substring(0, attrStr.length - 1);
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid === true) {
+                tagFound = true;
+              } else {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));
+              }
+            } else if (closingTag) {
+              if (!result.tagClosed) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' doesn't have proper closing.", getLineNumberForPosition(xmlData, i));
+              } else if (attrStr.trim().length > 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' can't have attributes or invalid starting.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else if (tags.length === 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' has not been opened.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else {
+                const otg = tags.pop();
+                if (tagName !== otg.tagName) {
+                  let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);
+                  return getErrorObject(
+                    "InvalidTag",
+                    "Expected closing tag '" + otg.tagName + "' (opened in line " + openPos.line + ", col " + openPos.col + ") instead of closing tag '" + tagName + "'.",
+                    getLineNumberForPosition(xmlData, tagStartPos)
+                  );
+                }
+                if (tags.length == 0) {
+                  reachedRoot = true;
+                }
+              }
+            } else {
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid !== true) {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));
+              }
+              if (reachedRoot === true) {
+                return getErrorObject("InvalidXml", "Multiple possible root nodes found.", getLineNumberForPosition(xmlData, i));
+              } else if (options.unpairedTags.indexOf(tagName) !== -1) {
+              } else {
+                tags.push({ tagName, tagStartPos });
+              }
+              tagFound = true;
+            }
+            for (i++; i < xmlData.length; i++) {
+              if (xmlData[i] === "<") {
+                if (xmlData[i + 1] === "!") {
+                  i++;
+                  i = readCommentAndCDATA(xmlData, i);
+                  continue;
+                } else if (xmlData[i + 1] === "?") {
+                  i = readPI(xmlData, ++i);
+                  if (i.err) return i;
+                } else {
+                  break;
+                }
+              } else if (xmlData[i] === "&") {
+                const afterAmp = validateAmpersand(xmlData, i);
+                if (afterAmp == -1)
+                  return getErrorObject("InvalidChar", "char '&' is not expected.", getLineNumberForPosition(xmlData, i));
+                i = afterAmp;
+              } else {
+                if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {
+                  return getErrorObject("InvalidXml", "Extra text at the end", getLineNumberForPosition(xmlData, i));
+                }
+              }
+            }
+            if (xmlData[i] === "<") {
+              i--;
+            }
+          }
+        } else {
+          if (isWhiteSpace(xmlData[i])) {
+            continue;
+          }
+          return getErrorObject("InvalidChar", "char '" + xmlData[i] + "' is not expected.", getLineNumberForPosition(xmlData, i));
+        }
+      }
+      if (!tagFound) {
+        return getErrorObject("InvalidXml", "Start tag expected.", 1);
+      } else if (tags.length == 1) {
+        return getErrorObject("InvalidTag", "Unclosed tag '" + tags[0].tagName + "'.", getLineNumberForPosition(xmlData, tags[0].tagStartPos));
+      } else if (tags.length > 0) {
+        return getErrorObject("InvalidXml", "Invalid '" + JSON.stringify(tags.map((t) => t.tagName), null, 4).replace(/\r?\n/g, "") + "' found.", { line: 1, col: 1 });
+      }
+      return true;
+    };
+    function isWhiteSpace(char) {
+      return char === " " || char === "	" || char === "\n" || char === "\r";
+    }
+    function readPI(xmlData, i) {
+      const start = i;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] == "?" || xmlData[i] == " ") {
+          const tagname = xmlData.substr(start, i - start);
+          if (i > 5 && tagname === "xml") {
+            return getErrorObject("InvalidXml", "XML declaration allowed only at the start of the document.", getLineNumberForPosition(xmlData, i));
+          } else if (xmlData[i] == "?" && xmlData[i + 1] == ">") {
+            i++;
+            break;
+          } else {
+            continue;
+          }
+        }
+      }
+      return i;
+    }
+    function readCommentAndCDATA(xmlData, i) {
+      if (xmlData.length > i + 5 && xmlData[i + 1] === "-" && xmlData[i + 2] === "-") {
+        for (i += 3; i < xmlData.length; i++) {
+          if (xmlData[i] === "-" && xmlData[i + 1] === "-" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      } else if (xmlData.length > i + 8 && xmlData[i + 1] === "D" && xmlData[i + 2] === "O" && xmlData[i + 3] === "C" && xmlData[i + 4] === "T" && xmlData[i + 5] === "Y" && xmlData[i + 6] === "P" && xmlData[i + 7] === "E") {
+        let angleBracketsCount = 1;
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "<") {
+            angleBracketsCount++;
+          } else if (xmlData[i] === ">") {
+            angleBracketsCount--;
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          }
+        }
+      } else if (xmlData.length > i + 9 && xmlData[i + 1] === "[" && xmlData[i + 2] === "C" && xmlData[i + 3] === "D" && xmlData[i + 4] === "A" && xmlData[i + 5] === "T" && xmlData[i + 6] === "A" && xmlData[i + 7] === "[") {
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "]" && xmlData[i + 1] === "]" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      }
+      return i;
+    }
+    var doubleQuote = '"';
+    var singleQuote = "'";
+    function readAttributeStr(xmlData, i) {
+      let attrStr = "";
+      let startChar = "";
+      let tagClosed = false;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {
+          if (startChar === "") {
+            startChar = xmlData[i];
+          } else if (startChar !== xmlData[i]) {
+          } else {
+            startChar = "";
+          }
+        } else if (xmlData[i] === ">") {
+          if (startChar === "") {
+            tagClosed = true;
+            break;
+          }
+        }
+        attrStr += xmlData[i];
+      }
+      if (startChar !== "") {
+        return false;
+      }
+      return {
+        value: attrStr,
+        index: i,
+        tagClosed
+      };
+    }
+    var validAttrStrRegxp = new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`, "g");
+    function validateAttributeString(attrStr, options) {
+      const matches = util.getAllMatches(attrStr, validAttrStrRegxp);
+      const attrNames = {};
+      for (let i = 0; i < matches.length; i++) {
+        if (matches[i][1].length === 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' has no space in starting.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] !== void 0 && matches[i][4] === void 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' is without value.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] === void 0 && !options.allowBooleanAttributes) {
+          return getErrorObject("InvalidAttr", "boolean attribute '" + matches[i][2] + "' is not allowed.", getPositionFromMatch(matches[i]));
+        }
+        const attrName = matches[i][2];
+        if (!validateAttrName(attrName)) {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is an invalid name.", getPositionFromMatch(matches[i]));
+        }
+        if (!attrNames.hasOwnProperty(attrName)) {
+          attrNames[attrName] = 1;
+        } else {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is repeated.", getPositionFromMatch(matches[i]));
+        }
+      }
+      return true;
+    }
+    function validateNumberAmpersand(xmlData, i) {
+      let re = /\d/;
+      if (xmlData[i] === "x") {
+        i++;
+        re = /[\da-fA-F]/;
+      }
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === ";")
+          return i;
+        if (!xmlData[i].match(re))
+          break;
+      }
+      return -1;
+    }
+    function validateAmpersand(xmlData, i) {
+      i++;
+      if (xmlData[i] === ";")
+        return -1;
+      if (xmlData[i] === "#") {
+        i++;
+        return validateNumberAmpersand(xmlData, i);
+      }
+      let count2 = 0;
+      for (; i < xmlData.length; i++, count2++) {
+        if (xmlData[i].match(/\w/) && count2 < 20)
+          continue;
+        if (xmlData[i] === ";")
+          break;
+        return -1;
+      }
+      return i;
+    }
+    function getErrorObject(code, message, lineNumber) {
+      return {
+        err: {
+          code,
+          msg: message,
+          line: lineNumber.line || lineNumber,
+          col: lineNumber.col
+        }
+      };
+    }
+    function validateAttrName(attrName) {
+      return util.isName(attrName);
+    }
+    function validateTagName(tagname) {
+      return util.isName(tagname);
+    }
+    function getLineNumberForPosition(xmlData, index) {
+      const lines = xmlData.substring(0, index).split(/\r?\n/);
+      return {
+        line: lines.length,
+        // column number is last line's length + 1, because column numbering starts at 1:
+        col: lines[lines.length - 1].length + 1
+      };
+    }
+    function getPositionFromMatch(match) {
+      return match.startIndex + match[1].length;
+    }
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js
+var require_OptionsBuilder = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js"(exports2) {
+    var defaultOptions = {
+      preserveOrder: false,
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      removeNSPrefix: false,
+      // remove NS from tag name or attribute name if true
+      allowBooleanAttributes: false,
+      //a tag can have attributes without any value
+      //ignoreRootElement : false,
+      parseTagValue: true,
+      parseAttributeValue: false,
+      trimValues: true,
+      //Trim string values of tag and attributes
+      cdataPropName: false,
+      numberParseOptions: {
+        hex: true,
+        leadingZeros: true,
+        eNotation: true
+      },
+      tagValueProcessor: function(tagName, val2) {
+        return val2;
+      },
+      attributeValueProcessor: function(attrName, val2) {
+        return val2;
+      },
+      stopNodes: [],
+      //nested tags will not be parsed even for errors
+      alwaysCreateTextNode: false,
+      isArray: () => false,
+      commentPropName: false,
+      unpairedTags: [],
+      processEntities: true,
+      htmlEntities: false,
+      ignoreDeclaration: false,
+      ignorePiTags: false,
+      transformTagName: false,
+      transformAttributeName: false,
+      updateTag: function(tagName, jPath, attrs) {
+        return tagName;
+      }
+      // skipEmptyListItem: false
+    };
+    var buildOptions = function(options) {
+      return Object.assign({}, defaultOptions, options);
+    };
+    exports2.buildOptions = buildOptions;
+    exports2.defaultOptions = defaultOptions;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js
+var require_xmlNode = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js"(exports2, module2) {
+    "use strict";
+    var XmlNode = class {
+      constructor(tagname) {
+        this.tagname = tagname;
+        this.child = [];
+        this[":@"] = {};
+      }
+      add(key, val2) {
+        if (key === "__proto__") key = "#__proto__";
+        this.child.push({ [key]: val2 });
+      }
+      addChild(node) {
+        if (node.tagname === "__proto__") node.tagname = "#__proto__";
+        if (node[":@"] && Object.keys(node[":@"]).length > 0) {
+          this.child.push({ [node.tagname]: node.child, [":@"]: node[":@"] });
+        } else {
+          this.child.push({ [node.tagname]: node.child });
+        }
+      }
+    };
+    module2.exports = XmlNode;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js
+var require_DocTypeReader = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js"(exports2, module2) {
+    var util = require_util();
+    function readDocType(xmlData, i) {
+      const entities = {};
+      if (xmlData[i + 3] === "O" && xmlData[i + 4] === "C" && xmlData[i + 5] === "T" && xmlData[i + 6] === "Y" && xmlData[i + 7] === "P" && xmlData[i + 8] === "E") {
+        i = i + 9;
+        let angleBracketsCount = 1;
+        let hasBody = false, comment = false;
+        let exp = "";
+        for (; i < xmlData.length; i++) {
+          if (xmlData[i] === "<" && !comment) {
+            if (hasBody && isEntity(xmlData, i)) {
+              i += 7;
+              [entityName, val, i] = readEntityExp(xmlData, i + 1);
+              if (val.indexOf("&") === -1)
+                entities[validateEntityName(entityName)] = {
+                  regx: RegExp(`&${entityName};`, "g"),
+                  val
+                };
+            } else if (hasBody && isElement(xmlData, i)) i += 8;
+            else if (hasBody && isAttlist(xmlData, i)) i += 8;
+            else if (hasBody && isNotation(xmlData, i)) i += 9;
+            else if (isComment) comment = true;
+            else throw new Error("Invalid DOCTYPE");
+            angleBracketsCount++;
+            exp = "";
+          } else if (xmlData[i] === ">") {
+            if (comment) {
+              if (xmlData[i - 1] === "-" && xmlData[i - 2] === "-") {
+                comment = false;
+                angleBracketsCount--;
+              }
+            } else {
+              angleBracketsCount--;
+            }
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          } else if (xmlData[i] === "[") {
+            hasBody = true;
+          } else {
+            exp += xmlData[i];
+          }
+        }
+        if (angleBracketsCount !== 0) {
+          throw new Error(`Unclosed DOCTYPE`);
+        }
+      } else {
+        throw new Error(`Invalid Tag instead of DOCTYPE`);
+      }
+      return { entities, i };
+    }
+    function readEntityExp(xmlData, i) {
+      let entityName2 = "";
+      for (; i < xmlData.length && (xmlData[i] !== "'" && xmlData[i] !== '"'); i++) {
+        entityName2 += xmlData[i];
+      }
+      entityName2 = entityName2.trim();
+      if (entityName2.indexOf(" ") !== -1) throw new Error("External entites are not supported");
+      const startChar = xmlData[i++];
+      let val2 = "";
+      for (; i < xmlData.length && xmlData[i] !== startChar; i++) {
+        val2 += xmlData[i];
+      }
+      return [entityName2, val2, i];
+    }
+    function isComment(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "-" && xmlData[i + 3] === "-") return true;
+      return false;
+    }
+    function isEntity(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "N" && xmlData[i + 4] === "T" && xmlData[i + 5] === "I" && xmlData[i + 6] === "T" && xmlData[i + 7] === "Y") return true;
+      return false;
+    }
+    function isElement(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "L" && xmlData[i + 4] === "E" && xmlData[i + 5] === "M" && xmlData[i + 6] === "E" && xmlData[i + 7] === "N" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isAttlist(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "A" && xmlData[i + 3] === "T" && xmlData[i + 4] === "T" && xmlData[i + 5] === "L" && xmlData[i + 6] === "I" && xmlData[i + 7] === "S" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isNotation(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "N" && xmlData[i + 3] === "O" && xmlData[i + 4] === "T" && xmlData[i + 5] === "A" && xmlData[i + 6] === "T" && xmlData[i + 7] === "I" && xmlData[i + 8] === "O" && xmlData[i + 9] === "N") return true;
+      return false;
+    }
+    function validateEntityName(name) {
+      if (util.isName(name))
+        return name;
+      else
+        throw new Error(`Invalid entity name ${name}`);
+    }
+    module2.exports = readDocType;
+  }
+});
+
+// ../../../node_modules/strnum/strnum.js
+var require_strnum = __commonJS({
+  "../../../node_modules/strnum/strnum.js"(exports2, module2) {
+    var hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;
+    var numRegex = /^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/;
+    var consider = {
+      hex: true,
+      // oct: false,
+      leadingZeros: true,
+      decimalPoint: ".",
+      eNotation: true
+      //skipLike: /regex/
+    };
+    function toNumber(str, options = {}) {
+      options = Object.assign({}, consider, options);
+      if (!str || typeof str !== "string") return str;
+      let trimmedStr = str.trim();
+      if (options.skipLike !== void 0 && options.skipLike.test(trimmedStr)) return str;
+      else if (str === "0") return 0;
+      else if (options.hex && hexRegex.test(trimmedStr)) {
+        return parse_int(trimmedStr, 16);
+      } else if (trimmedStr.search(/[eE]/) !== -1) {
+        const notation = trimmedStr.match(/^([-\+])?(0*)([0-9]*(\.[0-9]*)?[eE][-\+]?[0-9]+)$/);
+        if (notation) {
+          if (options.leadingZeros) {
+            trimmedStr = (notation[1] || "") + notation[3];
+          } else {
+            if (notation[2] === "0" && notation[3][0] === ".") {
+            } else {
+              return str;
+            }
+          }
+          return options.eNotation ? Number(trimmedStr) : str;
+        } else {
+          return str;
+        }
+      } else {
+        const match = numRegex.exec(trimmedStr);
+        if (match) {
+          const sign = match[1];
+          const leadingZeros = match[2];
+          let numTrimmedByZeros = trimZeros(match[3]);
+          if (!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== ".") return str;
+          else if (!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== ".") return str;
+          else if (options.leadingZeros && leadingZeros === str) return 0;
+          else {
+            const num = Number(trimmedStr);
+            const numStr = "" + num;
+            if (numStr.search(/[eE]/) !== -1) {
+              if (options.eNotation) return num;
+              else return str;
+            } else if (trimmedStr.indexOf(".") !== -1) {
+              if (numStr === "0" && numTrimmedByZeros === "") return num;
+              else if (numStr === numTrimmedByZeros) return num;
+              else if (sign && numStr === "-" + numTrimmedByZeros) return num;
+              else return str;
+            }
+            if (leadingZeros) {
+              return numTrimmedByZeros === numStr || sign + numTrimmedByZeros === numStr ? num : str;
+            } else {
+              return trimmedStr === numStr || trimmedStr === sign + numStr ? num : str;
+            }
+          }
+        } else {
+          return str;
+        }
+      }
+    }
+    function trimZeros(numStr) {
+      if (numStr && numStr.indexOf(".") !== -1) {
+        numStr = numStr.replace(/0+$/, "");
+        if (numStr === ".") numStr = "0";
+        else if (numStr[0] === ".") numStr = "0" + numStr;
+        else if (numStr[numStr.length - 1] === ".") numStr = numStr.substr(0, numStr.length - 1);
+        return numStr;
+      }
+      return numStr;
+    }
+    function parse_int(numStr, base) {
+      if (parseInt) return parseInt(numStr, base);
+      else if (Number.parseInt) return Number.parseInt(numStr, base);
+      else if (window && window.parseInt) return window.parseInt(numStr, base);
+      else throw new Error("parseInt, Number.parseInt, window.parseInt are not supported");
+    }
+    module2.exports = toNumber;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js
+var require_OrderedObjParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js"(exports2, module2) {
+    "use strict";
+    var util = require_util();
+    var xmlNode = require_xmlNode();
+    var readDocType = require_DocTypeReader();
+    var toNumber = require_strnum();
+    var OrderedObjParser = class {
+      constructor(options) {
+        this.options = options;
+        this.currentNode = null;
+        this.tagsNodeStack = [];
+        this.docTypeEntities = {};
+        this.lastEntities = {
+          "apos": { regex: /&(apos|#39|#x27);/g, val: "'" },
+          "gt": { regex: /&(gt|#62|#x3E);/g, val: ">" },
+          "lt": { regex: /&(lt|#60|#x3C);/g, val: "<" },
+          "quot": { regex: /&(quot|#34|#x22);/g, val: '"' }
+        };
+        this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: "&" };
+        this.htmlEntities = {
+          "space": { regex: /&(nbsp|#160);/g, val: " " },
+          // "lt" : { regex: /&(lt|#60);/g, val: "<" },
+          // "gt" : { regex: /&(gt|#62);/g, val: ">" },
+          // "amp" : { regex: /&(amp|#38);/g, val: "&" },
+          // "quot" : { regex: /&(quot|#34);/g, val: "\"" },
+          // "apos" : { regex: /&(apos|#39);/g, val: "'" },
+          "cent": { regex: /&(cent|#162);/g, val: "\xA2" },
+          "pound": { regex: /&(pound|#163);/g, val: "\xA3" },
+          "yen": { regex: /&(yen|#165);/g, val: "\xA5" },
+          "euro": { regex: /&(euro|#8364);/g, val: "\u20AC" },
+          "copyright": { regex: /&(copy|#169);/g, val: "\xA9" },
+          "reg": { regex: /&(reg|#174);/g, val: "\xAE" },
+          "inr": { regex: /&(inr|#8377);/g, val: "\u20B9" },
+          "num_dec": { regex: /&#([0-9]{1,7});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 10)) },
+          "num_hex": { regex: /&#x([0-9a-fA-F]{1,6});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 16)) }
+        };
+        this.addExternalEntities = addExternalEntities;
+        this.parseXml = parseXml;
+        this.parseTextData = parseTextData;
+        this.resolveNameSpace = resolveNameSpace;
+        this.buildAttributesMap = buildAttributesMap;
+        this.isItStopNode = isItStopNode;
+        this.replaceEntitiesValue = replaceEntitiesValue;
+        this.readStopNodeData = readStopNodeData;
+        this.saveTextToParentTag = saveTextToParentTag;
+        this.addChild = addChild;
+      }
+    };
+    function addExternalEntities(externalEntities) {
+      const entKeys = Object.keys(externalEntities);
+      for (let i = 0; i < entKeys.length; i++) {
+        const ent = entKeys[i];
+        this.lastEntities[ent] = {
+          regex: new RegExp("&" + ent + ";", "g"),
+          val: externalEntities[ent]
+        };
+      }
+    }
+    function parseTextData(val2, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {
+      if (val2 !== void 0) {
+        if (this.options.trimValues && !dontTrim) {
+          val2 = val2.trim();
+        }
+        if (val2.length > 0) {
+          if (!escapeEntities) val2 = this.replaceEntitiesValue(val2);
+          const newval = this.options.tagValueProcessor(tagName, val2, jPath, hasAttributes, isLeafNode);
+          if (newval === null || newval === void 0) {
+            return val2;
+          } else if (typeof newval !== typeof val2 || newval !== val2) {
+            return newval;
+          } else if (this.options.trimValues) {
+            return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+          } else {
+            const trimmedVal = val2.trim();
+            if (trimmedVal === val2) {
+              return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+            } else {
+              return val2;
+            }
+          }
+        }
+      }
+    }
+    function resolveNameSpace(tagname) {
+      if (this.options.removeNSPrefix) {
+        const tags = tagname.split(":");
+        const prefix = tagname.charAt(0) === "/" ? "/" : "";
+        if (tags[0] === "xmlns") {
+          return "";
+        }
+        if (tags.length === 2) {
+          tagname = prefix + tags[1];
+        }
+      }
+      return tagname;
+    }
+    var attrsRegx = new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`, "gm");
+    function buildAttributesMap(attrStr, jPath, tagName) {
+      if (!this.options.ignoreAttributes && typeof attrStr === "string") {
+        const matches = util.getAllMatches(attrStr, attrsRegx);
+        const len = matches.length;
+        const attrs = {};
+        for (let i = 0; i < len; i++) {
+          const attrName = this.resolveNameSpace(matches[i][1]);
+          let oldVal = matches[i][4];
+          let aName = this.options.attributeNamePrefix + attrName;
+          if (attrName.length) {
+            if (this.options.transformAttributeName) {
+              aName = this.options.transformAttributeName(aName);
+            }
+            if (aName === "__proto__") aName = "#__proto__";
+            if (oldVal !== void 0) {
+              if (this.options.trimValues) {
+                oldVal = oldVal.trim();
+              }
+              oldVal = this.replaceEntitiesValue(oldVal);
+              const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);
+              if (newVal === null || newVal === void 0) {
+                attrs[aName] = oldVal;
+              } else if (typeof newVal !== typeof oldVal || newVal !== oldVal) {
+                attrs[aName] = newVal;
+              } else {
+                attrs[aName] = parseValue(
+                  oldVal,
+                  this.options.parseAttributeValue,
+                  this.options.numberParseOptions
+                );
+              }
+            } else if (this.options.allowBooleanAttributes) {
+              attrs[aName] = true;
+            }
+          }
+        }
+        if (!Object.keys(attrs).length) {
+          return;
+        }
+        if (this.options.attributesGroupName) {
+          const attrCollection = {};
+          attrCollection[this.options.attributesGroupName] = attrs;
+          return attrCollection;
+        }
+        return attrs;
+      }
+    }
+    var parseXml = function(xmlData) {
+      xmlData = xmlData.replace(/\r\n?/g, "\n");
+      const xmlObj = new xmlNode("!xml");
+      let currentNode = xmlObj;
+      let textData = "";
+      let jPath = "";
+      for (let i = 0; i < xmlData.length; i++) {
+        const ch = xmlData[i];
+        if (ch === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, "Closing Tag is not closed.");
+            let tagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (this.options.removeNSPrefix) {
+              const colonIndex = tagName.indexOf(":");
+              if (colonIndex !== -1) {
+                tagName = tagName.substr(colonIndex + 1);
+              }
+            }
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode) {
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            }
+            const lastTagName = jPath.substring(jPath.lastIndexOf(".") + 1);
+            if (tagName && this.options.unpairedTags.indexOf(tagName) !== -1) {
+              throw new Error(`Unpaired tag can not be used as closing tag: `);
+            }
+            let propIndex = 0;
+            if (lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1) {
+              propIndex = jPath.lastIndexOf(".", jPath.lastIndexOf(".") - 1);
+              this.tagsNodeStack.pop();
+            } else {
+              propIndex = jPath.lastIndexOf(".");
+            }
+            jPath = jPath.substring(0, propIndex);
+            currentNode = this.tagsNodeStack.pop();
+            textData = "";
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            let tagData = readTagExp(xmlData, i, false, "?>");
+            if (!tagData) throw new Error("Pi Tag is not closed.");
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            if (this.options.ignoreDeclaration && tagData.tagName === "?xml" || this.options.ignorePiTags) {
+            } else {
+              const childNode = new xmlNode(tagData.tagName);
+              childNode.add(this.options.textNodeName, "");
+              if (tagData.tagName !== tagData.tagExp && tagData.attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName);
+              }
+              this.addChild(currentNode, childNode, jPath);
+            }
+            i = tagData.closeIndex + 1;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const endIndex = findClosingIndex(xmlData, "-->", i + 4, "Comment is not closed.");
+            if (this.options.commentPropName) {
+              const comment = xmlData.substring(i + 4, endIndex - 2);
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+              currentNode.add(this.options.commentPropName, [{ [this.options.textNodeName]: comment }]);
+            }
+            i = endIndex;
+          } else if (xmlData.substr(i + 1, 2) === "!D") {
+            const result = readDocType(xmlData, i);
+            this.docTypeEntities = result.entities;
+            i = result.i;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "CDATA is not closed.") - 2;
+            const tagExp = xmlData.substring(i + 9, closeIndex);
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            let val2 = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);
+            if (val2 == void 0) val2 = "";
+            if (this.options.cdataPropName) {
+              currentNode.add(this.options.cdataPropName, [{ [this.options.textNodeName]: tagExp }]);
+            } else {
+              currentNode.add(this.options.textNodeName, val2);
+            }
+            i = closeIndex + 2;
+          } else {
+            let result = readTagExp(xmlData, i, this.options.removeNSPrefix);
+            let tagName = result.tagName;
+            const rawTagName = result.rawTagName;
+            let tagExp = result.tagExp;
+            let attrExpPresent = result.attrExpPresent;
+            let closeIndex = result.closeIndex;
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode && textData) {
+              if (currentNode.tagname !== "!xml") {
+                textData = this.saveTextToParentTag(textData, currentNode, jPath, false);
+              }
+            }
+            const lastTag = currentNode;
+            if (lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1) {
+              currentNode = this.tagsNodeStack.pop();
+              jPath = jPath.substring(0, jPath.lastIndexOf("."));
+            }
+            if (tagName !== xmlObj.tagname) {
+              jPath += jPath ? "." + tagName : tagName;
+            }
+            if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) {
+              let tagContent = "";
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                i = result.closeIndex;
+              } else if (this.options.unpairedTags.indexOf(tagName) !== -1) {
+                i = result.closeIndex;
+              } else {
+                const result2 = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);
+                if (!result2) throw new Error(`Unexpected end of ${rawTagName}`);
+                i = result2.i;
+                tagContent = result2.tagContent;
+              }
+              const childNode = new xmlNode(tagName);
+              if (tagName !== tagExp && attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+              }
+              if (tagContent) {
+                tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);
+              }
+              jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              childNode.add(this.options.textNodeName, tagContent);
+              this.addChild(currentNode, childNode, jPath);
+            } else {
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                if (this.options.transformTagName) {
+                  tagName = this.options.transformTagName(tagName);
+                }
+                const childNode = new xmlNode(tagName);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              } else {
+                const childNode = new xmlNode(tagName);
+                this.tagsNodeStack.push(currentNode);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                currentNode = childNode;
+              }
+              textData = "";
+              i = closeIndex;
+            }
+          }
+        } else {
+          textData += xmlData[i];
+        }
+      }
+      return xmlObj.child;
+    };
+    function addChild(currentNode, childNode, jPath) {
+      const result = this.options.updateTag(childNode.tagname, jPath, childNode[":@"]);
+      if (result === false) {
+      } else if (typeof result === "string") {
+        childNode.tagname = result;
+        currentNode.addChild(childNode);
+      } else {
+        currentNode.addChild(childNode);
+      }
+    }
+    var replaceEntitiesValue = function(val2) {
+      if (this.options.processEntities) {
+        for (let entityName2 in this.docTypeEntities) {
+          const entity = this.docTypeEntities[entityName2];
+          val2 = val2.replace(entity.regx, entity.val);
+        }
+        for (let entityName2 in this.lastEntities) {
+          const entity = this.lastEntities[entityName2];
+          val2 = val2.replace(entity.regex, entity.val);
+        }
+        if (this.options.htmlEntities) {
+          for (let entityName2 in this.htmlEntities) {
+            const entity = this.htmlEntities[entityName2];
+            val2 = val2.replace(entity.regex, entity.val);
+          }
+        }
+        val2 = val2.replace(this.ampEntity.regex, this.ampEntity.val);
+      }
+      return val2;
+    };
+    function saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {
+      if (textData) {
+        if (isLeafNode === void 0) isLeafNode = Object.keys(currentNode.child).length === 0;
+        textData = this.parseTextData(
+          textData,
+          currentNode.tagname,
+          jPath,
+          false,
+          currentNode[":@"] ? Object.keys(currentNode[":@"]).length !== 0 : false,
+          isLeafNode
+        );
+        if (textData !== void 0 && textData !== "")
+          currentNode.add(this.options.textNodeName, textData);
+        textData = "";
+      }
+      return textData;
+    }
+    function isItStopNode(stopNodes, jPath, currentTagName) {
+      const allNodesExp = "*." + currentTagName;
+      for (const stopNodePath in stopNodes) {
+        const stopNodeExp = stopNodes[stopNodePath];
+        if (allNodesExp === stopNodeExp || jPath === stopNodeExp) return true;
+      }
+      return false;
+    }
+    function tagExpWithClosingIndex(xmlData, i, closingChar = ">") {
+      let attrBoundary;
+      let tagExp = "";
+      for (let index = i; index < xmlData.length; index++) {
+        let ch = xmlData[index];
+        if (attrBoundary) {
+          if (ch === attrBoundary) attrBoundary = "";
+        } else if (ch === '"' || ch === "'") {
+          attrBoundary = ch;
+        } else if (ch === closingChar[0]) {
+          if (closingChar[1]) {
+            if (xmlData[index + 1] === closingChar[1]) {
+              return {
+                data: tagExp,
+                index
+              };
+            }
+          } else {
+            return {
+              data: tagExp,
+              index
+            };
+          }
+        } else if (ch === "	") {
+          ch = " ";
+        }
+        tagExp += ch;
+      }
+    }
+    function findClosingIndex(xmlData, str, i, errMsg) {
+      const closingIndex = xmlData.indexOf(str, i);
+      if (closingIndex === -1) {
+        throw new Error(errMsg);
+      } else {
+        return closingIndex + str.length - 1;
+      }
+    }
+    function readTagExp(xmlData, i, removeNSPrefix, closingChar = ">") {
+      const result = tagExpWithClosingIndex(xmlData, i + 1, closingChar);
+      if (!result) return;
+      let tagExp = result.data;
+      const closeIndex = result.index;
+      const separatorIndex = tagExp.search(/\s/);
+      let tagName = tagExp;
+      let attrExpPresent = true;
+      if (separatorIndex !== -1) {
+        tagName = tagExp.substring(0, separatorIndex);
+        tagExp = tagExp.substring(separatorIndex + 1).trimStart();
+      }
+      const rawTagName = tagName;
+      if (removeNSPrefix) {
+        const colonIndex = tagName.indexOf(":");
+        if (colonIndex !== -1) {
+          tagName = tagName.substr(colonIndex + 1);
+          attrExpPresent = tagName !== result.data.substr(colonIndex + 1);
+        }
+      }
+      return {
+        tagName,
+        tagExp,
+        closeIndex,
+        attrExpPresent,
+        rawTagName
+      };
+    }
+    function readStopNodeData(xmlData, tagName, i) {
+      const startIndex = i;
+      let openTagCount = 1;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, `${tagName} is not closed`);
+            let closeTagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (closeTagName === tagName) {
+              openTagCount--;
+              if (openTagCount === 0) {
+                return {
+                  tagContent: xmlData.substring(startIndex, i),
+                  i: closeIndex
+                };
+              }
+            }
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            const closeIndex = findClosingIndex(xmlData, "?>", i + 1, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const closeIndex = findClosingIndex(xmlData, "-->", i + 3, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "StopNode is not closed.") - 2;
+            i = closeIndex;
+          } else {
+            const tagData = readTagExp(xmlData, i, ">");
+            if (tagData) {
+              const openTagName = tagData && tagData.tagName;
+              if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length - 1] !== "/") {
+                openTagCount++;
+              }
+              i = tagData.closeIndex;
+            }
+          }
+        }
+      }
+    }
+    function parseValue(val2, shouldParse, options) {
+      if (shouldParse && typeof val2 === "string") {
+        const newval = val2.trim();
+        if (newval === "true") return true;
+        else if (newval === "false") return false;
+        else return toNumber(val2, options);
+      } else {
+        if (util.isExist(val2)) {
+          return val2;
+        } else {
+          return "";
+        }
+      }
+    }
+    module2.exports = OrderedObjParser;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js
+var require_node2json = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js"(exports2) {
+    "use strict";
+    function prettify(node, options) {
+      return compress(node, options);
+    }
+    function compress(arr, options, jPath) {
+      let text;
+      const compressedObj = {};
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const property = propName(tagObj);
+        let newJpath = "";
+        if (jPath === void 0) newJpath = property;
+        else newJpath = jPath + "." + property;
+        if (property === options.textNodeName) {
+          if (text === void 0) text = tagObj[property];
+          else text += "" + tagObj[property];
+        } else if (property === void 0) {
+          continue;
+        } else if (tagObj[property]) {
+          let val2 = compress(tagObj[property], options, newJpath);
+          const isLeaf = isLeafTag(val2, options);
+          if (tagObj[":@"]) {
+            assignAttributes(val2, tagObj[":@"], newJpath, options);
+          } else if (Object.keys(val2).length === 1 && val2[options.textNodeName] !== void 0 && !options.alwaysCreateTextNode) {
+            val2 = val2[options.textNodeName];
+          } else if (Object.keys(val2).length === 0) {
+            if (options.alwaysCreateTextNode) val2[options.textNodeName] = "";
+            else val2 = "";
+          }
+          if (compressedObj[property] !== void 0 && compressedObj.hasOwnProperty(property)) {
+            if (!Array.isArray(compressedObj[property])) {
+              compressedObj[property] = [compressedObj[property]];
+            }
+            compressedObj[property].push(val2);
+          } else {
+            if (options.isArray(property, newJpath, isLeaf)) {
+              compressedObj[property] = [val2];
+            } else {
+              compressedObj[property] = val2;
+            }
+          }
+        }
+      }
+      if (typeof text === "string") {
+        if (text.length > 0) compressedObj[options.textNodeName] = text;
+      } else if (text !== void 0) compressedObj[options.textNodeName] = text;
+      return compressedObj;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (key !== ":@") return key;
+      }
+    }
+    function assignAttributes(obj, attrMap, jpath, options) {
+      if (attrMap) {
+        const keys = Object.keys(attrMap);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          const atrrName = keys[i];
+          if (options.isArray(atrrName, jpath + "." + atrrName, true, true)) {
+            obj[atrrName] = [attrMap[atrrName]];
+          } else {
+            obj[atrrName] = attrMap[atrrName];
+          }
+        }
+      }
+    }
+    function isLeafTag(obj, options) {
+      const { textNodeName } = options;
+      const propCount = Object.keys(obj).length;
+      if (propCount === 0) {
+        return true;
+      }
+      if (propCount === 1 && (obj[textNodeName] || typeof obj[textNodeName] === "boolean" || obj[textNodeName] === 0)) {
+        return true;
+      }
+      return false;
+    }
+    exports2.prettify = prettify;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js
+var require_XMLParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js"(exports2, module2) {
+    var { buildOptions } = require_OptionsBuilder();
+    var OrderedObjParser = require_OrderedObjParser();
+    var { prettify } = require_node2json();
+    var validator = require_validator2();
+    var XMLParser2 = class {
+      constructor(options) {
+        this.externalEntities = {};
+        this.options = buildOptions(options);
+      }
+      /**
+       * Parse XML dats to JS object 
+       * @param {string|Buffer} xmlData 
+       * @param {boolean|Object} validationOption 
+       */
+      parse(xmlData, validationOption) {
+        if (typeof xmlData === "string") {
+        } else if (xmlData.toString) {
+          xmlData = xmlData.toString();
+        } else {
+          throw new Error("XML data is accepted in String or Bytes[] form.");
+        }
+        if (validationOption) {
+          if (validationOption === true) validationOption = {};
+          const result = validator.validate(xmlData, validationOption);
+          if (result !== true) {
+            throw Error(`${result.err.msg}:${result.err.line}:${result.err.col}`);
+          }
+        }
+        const orderedObjParser = new OrderedObjParser(this.options);
+        orderedObjParser.addExternalEntities(this.externalEntities);
+        const orderedResult = orderedObjParser.parseXml(xmlData);
+        if (this.options.preserveOrder || orderedResult === void 0) return orderedResult;
+        else return prettify(orderedResult, this.options);
+      }
+      /**
+       * Add Entity which is not by default supported by this library
+       * @param {string} key 
+       * @param {string} value 
+       */
+      addEntity(key, value) {
+        if (value.indexOf("&") !== -1) {
+          throw new Error("Entity value can't have '&'");
+        } else if (key.indexOf("&") !== -1 || key.indexOf(";") !== -1) {
+          throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '
'");
+        } else if (value === "&") {
+          throw new Error("An entity with value '&' is not permitted");
+        } else {
+          this.externalEntities[key] = value;
+        }
+      }
+    };
+    module2.exports = XMLParser2;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js
+var require_orderedJs2Xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js"(exports2, module2) {
+    var EOL = "\n";
+    function toXml(jArray, options) {
+      let indentation = "";
+      if (options.format && options.indentBy.length > 0) {
+        indentation = EOL;
+      }
+      return arrToStr(jArray, options, "", indentation);
+    }
+    function arrToStr(arr, options, jPath, indentation) {
+      let xmlStr = "";
+      let isPreviousElementTag = false;
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const tagName = propName(tagObj);
+        if (tagName === void 0) continue;
+        let newJPath = "";
+        if (jPath.length === 0) newJPath = tagName;
+        else newJPath = `${jPath}.${tagName}`;
+        if (tagName === options.textNodeName) {
+          let tagText = tagObj[tagName];
+          if (!isStopNode(newJPath, options)) {
+            tagText = options.tagValueProcessor(tagName, tagText);
+            tagText = replaceEntitiesValue(tagText, options);
+          }
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += tagText;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.cdataPropName) {
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += ``;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.commentPropName) {
+          xmlStr += indentation + ``;
+          isPreviousElementTag = true;
+          continue;
+        } else if (tagName[0] === "?") {
+          const attStr2 = attr_to_str(tagObj[":@"], options);
+          const tempInd = tagName === "?xml" ? "" : indentation;
+          let piTextNodeName = tagObj[tagName][0][options.textNodeName];
+          piTextNodeName = piTextNodeName.length !== 0 ? " " + piTextNodeName : "";
+          xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr2}?>`;
+          isPreviousElementTag = true;
+          continue;
+        }
+        let newIdentation = indentation;
+        if (newIdentation !== "") {
+          newIdentation += options.indentBy;
+        }
+        const attStr = attr_to_str(tagObj[":@"], options);
+        const tagStart = indentation + `<${tagName}${attStr}`;
+        const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);
+        if (options.unpairedTags.indexOf(tagName) !== -1) {
+          if (options.suppressUnpairedNode) xmlStr += tagStart + ">";
+          else xmlStr += tagStart + "/>";
+        } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {
+          xmlStr += tagStart + "/>";
+        } else if (tagValue && tagValue.endsWith(">")) {
+          xmlStr += tagStart + `>${tagValue}${indentation}`;
+        } else {
+          xmlStr += tagStart + ">";
+          if (tagValue && indentation !== "" && (tagValue.includes("/>") || tagValue.includes("`;
+        }
+        isPreviousElementTag = true;
+      }
+      return xmlStr;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (!obj.hasOwnProperty(key)) continue;
+        if (key !== ":@") return key;
+      }
+    }
+    function attr_to_str(attrMap, options) {
+      let attrStr = "";
+      if (attrMap && !options.ignoreAttributes) {
+        for (let attr in attrMap) {
+          if (!attrMap.hasOwnProperty(attr)) continue;
+          let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);
+          attrVal = replaceEntitiesValue(attrVal, options);
+          if (attrVal === true && options.suppressBooleanAttributes) {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;
+          } else {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}="${attrVal}"`;
+          }
+        }
+      }
+      return attrStr;
+    }
+    function isStopNode(jPath, options) {
+      jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);
+      let tagName = jPath.substr(jPath.lastIndexOf(".") + 1);
+      for (let index in options.stopNodes) {
+        if (options.stopNodes[index] === jPath || options.stopNodes[index] === "*." + tagName) return true;
+      }
+      return false;
+    }
+    function replaceEntitiesValue(textValue, options) {
+      if (textValue && textValue.length > 0 && options.processEntities) {
+        for (let i = 0; i < options.entities.length; i++) {
+          const entity = options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    }
+    module2.exports = toXml;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js
+var require_json2xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js"(exports2, module2) {
+    "use strict";
+    var buildFromOrderedJs = require_orderedJs2Xml();
+    var defaultOptions = {
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      cdataPropName: false,
+      format: false,
+      indentBy: "  ",
+      suppressEmptyNode: false,
+      suppressUnpairedNode: true,
+      suppressBooleanAttributes: true,
+      tagValueProcessor: function(key, a) {
+        return a;
+      },
+      attributeValueProcessor: function(attrName, a) {
+        return a;
+      },
+      preserveOrder: false,
+      commentPropName: false,
+      unpairedTags: [],
+      entities: [
+        { regex: new RegExp("&", "g"), val: "&" },
+        //it must be on top
+        { regex: new RegExp(">", "g"), val: ">" },
+        { regex: new RegExp("<", "g"), val: "<" },
+        { regex: new RegExp("'", "g"), val: "'" },
+        { regex: new RegExp('"', "g"), val: """ }
+      ],
+      processEntities: true,
+      stopNodes: [],
+      // transformTagName: false,
+      // transformAttributeName: false,
+      oneListGroup: false
+    };
+    function Builder(options) {
+      this.options = Object.assign({}, defaultOptions, options);
+      if (this.options.ignoreAttributes || this.options.attributesGroupName) {
+        this.isAttribute = function() {
+          return false;
+        };
+      } else {
+        this.attrPrefixLen = this.options.attributeNamePrefix.length;
+        this.isAttribute = isAttribute;
+      }
+      this.processTextOrObjNode = processTextOrObjNode;
+      if (this.options.format) {
+        this.indentate = indentate;
+        this.tagEndChar = ">\n";
+        this.newLine = "\n";
+      } else {
+        this.indentate = function() {
+          return "";
+        };
+        this.tagEndChar = ">";
+        this.newLine = "";
+      }
+    }
+    Builder.prototype.build = function(jObj) {
+      if (this.options.preserveOrder) {
+        return buildFromOrderedJs(jObj, this.options);
+      } else {
+        if (Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1) {
+          jObj = {
+            [this.options.arrayNodeName]: jObj
+          };
+        }
+        return this.j2x(jObj, 0).val;
+      }
+    };
+    Builder.prototype.j2x = function(jObj, level) {
+      let attrStr = "";
+      let val2 = "";
+      for (let key in jObj) {
+        if (!Object.prototype.hasOwnProperty.call(jObj, key)) continue;
+        if (typeof jObj[key] === "undefined") {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          }
+        } else if (jObj[key] === null) {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          } else if (key[0] === "?") {
+            val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+          } else {
+            val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+          }
+        } else if (jObj[key] instanceof Date) {
+          val2 += this.buildTextValNode(jObj[key], key, "", level);
+        } else if (typeof jObj[key] !== "object") {
+          const attr = this.isAttribute(key);
+          if (attr) {
+            attrStr += this.buildAttrPairStr(attr, "" + jObj[key]);
+          } else {
+            if (key === this.options.textNodeName) {
+              let newval = this.options.tagValueProcessor(key, "" + jObj[key]);
+              val2 += this.replaceEntitiesValue(newval);
+            } else {
+              val2 += this.buildTextValNode(jObj[key], key, "", level);
+            }
+          }
+        } else if (Array.isArray(jObj[key])) {
+          const arrLen = jObj[key].length;
+          let listTagVal = "";
+          let listTagAttr = "";
+          for (let j = 0; j < arrLen; j++) {
+            const item = jObj[key][j];
+            if (typeof item === "undefined") {
+            } else if (item === null) {
+              if (key[0] === "?") val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+              else val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+            } else if (typeof item === "object") {
+              if (this.options.oneListGroup) {
+                const result = this.j2x(item, level + 1);
+                listTagVal += result.val;
+                if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {
+                  listTagAttr += result.attrStr;
+                }
+              } else {
+                listTagVal += this.processTextOrObjNode(item, key, level);
+              }
+            } else {
+              if (this.options.oneListGroup) {
+                let textValue = this.options.tagValueProcessor(key, item);
+                textValue = this.replaceEntitiesValue(textValue);
+                listTagVal += textValue;
+              } else {
+                listTagVal += this.buildTextValNode(item, key, "", level);
+              }
+            }
+          }
+          if (this.options.oneListGroup) {
+            listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);
+          }
+          val2 += listTagVal;
+        } else {
+          if (this.options.attributesGroupName && key === this.options.attributesGroupName) {
+            const Ks = Object.keys(jObj[key]);
+            const L = Ks.length;
+            for (let j = 0; j < L; j++) {
+              attrStr += this.buildAttrPairStr(Ks[j], "" + jObj[key][Ks[j]]);
+            }
+          } else {
+            val2 += this.processTextOrObjNode(jObj[key], key, level);
+          }
+        }
+      }
+      return { attrStr, val: val2 };
+    };
+    Builder.prototype.buildAttrPairStr = function(attrName, val2) {
+      val2 = this.options.attributeValueProcessor(attrName, "" + val2);
+      val2 = this.replaceEntitiesValue(val2);
+      if (this.options.suppressBooleanAttributes && val2 === "true") {
+        return " " + attrName;
+      } else return " " + attrName + '="' + val2 + '"';
+    };
+    function processTextOrObjNode(object, key, level) {
+      const result = this.j2x(object, level + 1);
+      if (object[this.options.textNodeName] !== void 0 && Object.keys(object).length === 1) {
+        return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);
+      } else {
+        return this.buildObjectNode(result.val, key, result.attrStr, level);
+      }
+    }
+    Builder.prototype.buildObjectNode = function(val2, key, attrStr, level) {
+      if (val2 === "") {
+        if (key[0] === "?") return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+        else {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        }
+      } else {
+        let tagEndExp = "" + val2 + tagEndExp;
+        } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {
+          return this.indentate(level) + `` + this.newLine;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + piClosingChar + this.tagEndChar + val2 + this.indentate(level) + tagEndExp;
+        }
+      }
+    };
+    Builder.prototype.closeTag = function(key) {
+      let closeTag = "";
+      if (this.options.unpairedTags.indexOf(key) !== -1) {
+        if (!this.options.suppressUnpairedNode) closeTag = "/";
+      } else if (this.options.suppressEmptyNode) {
+        closeTag = "/";
+      } else {
+        closeTag = `>` + this.newLine;
+      } else if (this.options.commentPropName !== false && key === this.options.commentPropName) {
+        return this.indentate(level) + `` + this.newLine;
+      } else if (key[0] === "?") {
+        return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+      } else {
+        let textValue = this.options.tagValueProcessor(key, val2);
+        textValue = this.replaceEntitiesValue(textValue);
+        if (textValue === "") {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + ">" + textValue + " 0 && this.options.processEntities) {
+        for (let i = 0; i < this.options.entities.length; i++) {
+          const entity = this.options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    };
+    function indentate(level) {
+      return this.options.indentBy.repeat(level);
+    }
+    function isAttribute(name) {
+      if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {
+        return name.substr(this.attrPrefixLen);
+      } else {
+        return false;
+      }
+    }
+    module2.exports = Builder;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/fxp.js
+var require_fxp = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/fxp.js"(exports2, module2) {
+    "use strict";
+    var validator = require_validator2();
+    var XMLParser2 = require_XMLParser();
+    var XMLBuilder = require_json2xml();
+    module2.exports = {
+      XMLParser: XMLParser2,
+      XMLValidator: validator,
+      XMLBuilder
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js
+var import_smithy_client3, import_fast_xml_parser, parseXmlBody, parseXmlErrorBody, loadRestXmlErrorCode;
+var init_parseXmlBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js"() {
+    import_smithy_client3 = __toESM(require_dist_cjs33());
+    import_fast_xml_parser = __toESM(require_fxp());
+    init_common();
+    parseXmlBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        const parser = new import_fast_xml_parser.XMLParser({
+          attributeNamePrefix: "",
+          htmlEntities: true,
+          ignoreAttributes: false,
+          ignoreDeclaration: true,
+          parseTagValue: false,
+          trimValues: false,
+          tagValueProcessor: (_, val2) => val2.trim() === "" && val2.includes("\n") ? "" : void 0
+        });
+        parser.addEntity("#xD", "\r");
+        parser.addEntity("#10", "\n");
+        let parsedObj;
+        try {
+          parsedObj = parser.parse(encoded, true);
+        } catch (e) {
+          if (e && typeof e === "object") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+        const textNodeName = "#text";
+        const key = Object.keys(parsedObj)[0];
+        const parsedObjToReturn = parsedObj[key];
+        if (parsedObjToReturn[textNodeName]) {
+          parsedObjToReturn[key] = parsedObjToReturn[textNodeName];
+          delete parsedObjToReturn[textNodeName];
+        }
+        return (0, import_smithy_client3.getValueFromTextNode)(parsedObjToReturn);
+      }
+      return {};
+    });
+    parseXmlErrorBody = async (errorBody, context) => {
+      const value = await parseXmlBody(errorBody, context);
+      if (value.Error) {
+        value.Error.message = value.Error.message ?? value.Error.Message;
+      }
+      return value;
+    };
+    loadRestXmlErrorCode = (output, data) => {
+      if (data?.Error?.Code !== void 0) {
+        return data.Error.Code;
+      }
+      if (data?.Code !== void 0) {
+        return data.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js
+var init_protocols2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js"() {
+    init_coercing_serializers();
+    init_awsExpectUnion();
+    init_parseJsonBody();
+    init_parseXmlBody();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/index.js
+var dist_es_exports2 = {};
+__export(dist_es_exports2, {
+  AWSSDKSigV4Signer: () => AWSSDKSigV4Signer,
+  AwsSdkSigV4ASigner: () => AwsSdkSigV4ASigner,
+  AwsSdkSigV4Signer: () => AwsSdkSigV4Signer,
+  NODE_SIGV4A_CONFIG_OPTIONS: () => NODE_SIGV4A_CONFIG_OPTIONS,
+  _toBool: () => _toBool,
+  _toNum: () => _toNum,
+  _toStr: () => _toStr,
+  awsExpectUnion: () => awsExpectUnion,
+  emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion,
+  loadRestJsonErrorCode: () => loadRestJsonErrorCode,
+  loadRestXmlErrorCode: () => loadRestXmlErrorCode,
+  parseJsonBody: () => parseJsonBody,
+  parseJsonErrorBody: () => parseJsonErrorBody,
+  parseXmlBody: () => parseXmlBody,
+  parseXmlErrorBody: () => parseXmlErrorBody,
+  resolveAWSSDKSigV4Config: () => resolveAWSSDKSigV4Config,
+  resolveAwsSdkSigV4AConfig: () => resolveAwsSdkSigV4AConfig,
+  resolveAwsSdkSigV4Config: () => resolveAwsSdkSigV4Config,
+  validateSigningProperties: () => validateSigningProperties
+});
+var init_dist_es2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/index.js"() {
+    init_client();
+    init_httpAuthSchemes2();
+    init_protocols2();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSFNHttpAuthSchemeProvider = exports2.defaultSFNHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSFNHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSFNHttpAuthSchemeParametersProvider = defaultSFNHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "states",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    var defaultSFNHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSFNHttpAuthSchemeProvider = defaultSFNHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/tslib/tslib.es6.mjs
+var tslib_es6_exports = {};
+__export(tslib_es6_exports, {
+  __addDisposableResource: () => __addDisposableResource,
+  __assign: () => __assign,
+  __asyncDelegator: () => __asyncDelegator,
+  __asyncGenerator: () => __asyncGenerator,
+  __asyncValues: () => __asyncValues,
+  __await: () => __await,
+  __awaiter: () => __awaiter,
+  __classPrivateFieldGet: () => __classPrivateFieldGet,
+  __classPrivateFieldIn: () => __classPrivateFieldIn,
+  __classPrivateFieldSet: () => __classPrivateFieldSet,
+  __createBinding: () => __createBinding,
+  __decorate: () => __decorate,
+  __disposeResources: () => __disposeResources,
+  __esDecorate: () => __esDecorate,
+  __exportStar: () => __exportStar,
+  __extends: () => __extends,
+  __generator: () => __generator,
+  __importDefault: () => __importDefault,
+  __importStar: () => __importStar,
+  __makeTemplateObject: () => __makeTemplateObject,
+  __metadata: () => __metadata,
+  __param: () => __param,
+  __propKey: () => __propKey,
+  __read: () => __read,
+  __rest: () => __rest,
+  __rewriteRelativeImportExtension: () => __rewriteRelativeImportExtension,
+  __runInitializers: () => __runInitializers2,
+  __setFunctionName: () => __setFunctionName,
+  __spread: () => __spread,
+  __spreadArray: () => __spreadArray,
+  __spreadArrays: () => __spreadArrays,
+  __values: () => __values,
+  default: () => tslib_es6_default
+});
+function __extends(d, b) {
+  if (typeof b !== "function" && b !== null)
+    throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+  extendStatics(d, b);
+  function __() {
+    this.constructor = d;
+  }
+  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+}
+function __rest(s, e) {
+  var t = {};
+  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+    t[p] = s[p];
+  if (s != null && typeof Object.getOwnPropertySymbols === "function")
+    for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+      if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+        t[p[i]] = s[p[i]];
+    }
+  return t;
+}
+function __decorate(decorators, target, key, desc) {
+  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+  return c > 3 && r && Object.defineProperty(target, key, r), r;
+}
+function __param(paramIndex, decorator) {
+  return function(target, key) {
+    decorator(target, key, paramIndex);
+  };
+}
+function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
+  function accept(f) {
+    if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected");
+    return f;
+  }
+  var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
+  var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
+  var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
+  var _, done = false;
+  for (var i = decorators.length - 1; i >= 0; i--) {
+    var context = {};
+    for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
+    for (var p in contextIn.access) context.access[p] = contextIn.access[p];
+    context.addInitializer = function(f) {
+      if (done) throw new TypeError("Cannot add initializers after decoration has completed");
+      extraInitializers.push(accept(f || null));
+    };
+    var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
+    if (kind === "accessor") {
+      if (result === void 0) continue;
+      if (result === null || typeof result !== "object") throw new TypeError("Object expected");
+      if (_ = accept(result.get)) descriptor.get = _;
+      if (_ = accept(result.set)) descriptor.set = _;
+      if (_ = accept(result.init)) initializers.unshift(_);
+    } else if (_ = accept(result)) {
+      if (kind === "field") initializers.unshift(_);
+      else descriptor[key] = _;
+    }
+  }
+  if (target) Object.defineProperty(target, contextIn.name, descriptor);
+  done = true;
+}
+function __runInitializers2(thisArg, initializers, value) {
+  var useValue = arguments.length > 2;
+  for (var i = 0; i < initializers.length; i++) {
+    value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
+  }
+  return useValue ? value : void 0;
+}
+function __propKey(x) {
+  return typeof x === "symbol" ? x : "".concat(x);
+}
+function __setFunctionName(f, name, prefix) {
+  if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
+  return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
+}
+function __metadata(metadataKey, metadataValue) {
+  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
+}
+function __awaiter(thisArg, _arguments, P, generator) {
+  function adopt(value) {
+    return value instanceof P ? value : new P(function(resolve6) {
+      resolve6(value);
+    });
+  }
+  return new (P || (P = Promise))(function(resolve6, reject) {
+    function fulfilled(value) {
+      try {
+        step(generator.next(value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function rejected(value) {
+      try {
+        step(generator["throw"](value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function step(result) {
+      result.done ? resolve6(result.value) : adopt(result.value).then(fulfilled, rejected);
+    }
+    step((generator = generator.apply(thisArg, _arguments || [])).next());
+  });
+}
+function __generator(thisArg, body) {
+  var _ = { label: 0, sent: function() {
+    if (t[0] & 1) throw t[1];
+    return t[1];
+  }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
+  return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
+    return this;
+  }), g;
+  function verb(n) {
+    return function(v) {
+      return step([n, v]);
+    };
+  }
+  function step(op) {
+    if (f) throw new TypeError("Generator is already executing.");
+    while (g && (g = 0, op[0] && (_ = 0)), _) try {
+      if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
+      if (y = 0, t) op = [op[0] & 2, t.value];
+      switch (op[0]) {
+        case 0:
+        case 1:
+          t = op;
+          break;
+        case 4:
+          _.label++;
+          return { value: op[1], done: false };
+        case 5:
+          _.label++;
+          y = op[1];
+          op = [0];
+          continue;
+        case 7:
+          op = _.ops.pop();
+          _.trys.pop();
+          continue;
+        default:
+          if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
+            _ = 0;
+            continue;
+          }
+          if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
+            _.label = op[1];
+            break;
+          }
+          if (op[0] === 6 && _.label < t[1]) {
+            _.label = t[1];
+            t = op;
+            break;
+          }
+          if (t && _.label < t[2]) {
+            _.label = t[2];
+            _.ops.push(op);
+            break;
+          }
+          if (t[2]) _.ops.pop();
+          _.trys.pop();
+          continue;
+      }
+      op = body.call(thisArg, _);
+    } catch (e) {
+      op = [6, e];
+      y = 0;
+    } finally {
+      f = t = 0;
+    }
+    if (op[0] & 5) throw op[1];
+    return { value: op[0] ? op[1] : void 0, done: true };
+  }
+}
+function __exportStar(m, o) {
+  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
+}
+function __values(o) {
+  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
+  if (m) return m.call(o);
+  if (o && typeof o.length === "number") return {
+    next: function() {
+      if (o && i >= o.length) o = void 0;
+      return { value: o && o[i++], done: !o };
+    }
+  };
+  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
+}
+function __read(o, n) {
+  var m = typeof Symbol === "function" && o[Symbol.iterator];
+  if (!m) return o;
+  var i = m.call(o), r, ar = [], e;
+  try {
+    while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
+  } catch (error) {
+    e = { error };
+  } finally {
+    try {
+      if (r && !r.done && (m = i["return"])) m.call(i);
+    } finally {
+      if (e) throw e.error;
+    }
+  }
+  return ar;
+}
+function __spread() {
+  for (var ar = [], i = 0; i < arguments.length; i++)
+    ar = ar.concat(__read(arguments[i]));
+  return ar;
+}
+function __spreadArrays() {
+  for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
+  for (var r = Array(s), k = 0, i = 0; i < il; i++)
+    for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
+      r[k] = a[j];
+  return r;
+}
+function __spreadArray(to, from, pack) {
+  if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
+    if (ar || !(i in from)) {
+      if (!ar) ar = Array.prototype.slice.call(from, 0, i);
+      ar[i] = from[i];
+    }
+  }
+  return to.concat(ar || Array.prototype.slice.call(from));
+}
+function __await(v) {
+  return this instanceof __await ? (this.v = v, this) : new __await(v);
+}
+function __asyncGenerator(thisArg, _arguments, generator) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var g = generator.apply(thisArg, _arguments || []), i, q = [];
+  return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i;
+  function awaitReturn(f) {
+    return function(v) {
+      return Promise.resolve(v).then(f, reject);
+    };
+  }
+  function verb(n, f) {
+    if (g[n]) {
+      i[n] = function(v) {
+        return new Promise(function(a, b) {
+          q.push([n, v, a, b]) > 1 || resume(n, v);
+        });
+      };
+      if (f) i[n] = f(i[n]);
+    }
+  }
+  function resume(n, v) {
+    try {
+      step(g[n](v));
+    } catch (e) {
+      settle(q[0][3], e);
+    }
+  }
+  function step(r) {
+    r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r);
+  }
+  function fulfill(value) {
+    resume("next", value);
+  }
+  function reject(value) {
+    resume("throw", value);
+  }
+  function settle(f, v) {
+    if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);
+  }
+}
+function __asyncDelegator(o) {
+  var i, p;
+  return i = {}, verb("next"), verb("throw", function(e) {
+    throw e;
+  }), verb("return"), i[Symbol.iterator] = function() {
+    return this;
+  }, i;
+  function verb(n, f) {
+    i[n] = o[n] ? function(v) {
+      return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v;
+    } : f;
+  }
+}
+function __asyncValues(o) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var m = o[Symbol.asyncIterator], i;
+  return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i);
+  function verb(n) {
+    i[n] = o[n] && function(v) {
+      return new Promise(function(resolve6, reject) {
+        v = o[n](v), settle(resolve6, reject, v.done, v.value);
+      });
+    };
+  }
+  function settle(resolve6, reject, d, v) {
+    Promise.resolve(v).then(function(v2) {
+      resolve6({ value: v2, done: d });
+    }, reject);
+  }
+}
+function __makeTemplateObject(cooked, raw) {
+  if (Object.defineProperty) {
+    Object.defineProperty(cooked, "raw", { value: raw });
+  } else {
+    cooked.raw = raw;
+  }
+  return cooked;
+}
+function __importStar(mod) {
+  if (mod && mod.__esModule) return mod;
+  var result = {};
+  if (mod != null) {
+    for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
+  }
+  __setModuleDefault(result, mod);
+  return result;
+}
+function __importDefault(mod) {
+  return mod && mod.__esModule ? mod : { default: mod };
+}
+function __classPrivateFieldGet(receiver, state, kind, f) {
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+}
+function __classPrivateFieldSet(receiver, state, value, kind, f) {
+  if (kind === "m") throw new TypeError("Private method is not writable");
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+  return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
+}
+function __classPrivateFieldIn(state, receiver) {
+  if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") throw new TypeError("Cannot use 'in' operator on non-object");
+  return typeof state === "function" ? receiver === state : state.has(receiver);
+}
+function __addDisposableResource(env2, value, async) {
+  if (value !== null && value !== void 0) {
+    if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
+    var dispose, inner;
+    if (async) {
+      if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
+      dispose = value[Symbol.asyncDispose];
+    }
+    if (dispose === void 0) {
+      if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
+      dispose = value[Symbol.dispose];
+      if (async) inner = dispose;
+    }
+    if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
+    if (inner) dispose = function() {
+      try {
+        inner.call(this);
+      } catch (e) {
+        return Promise.reject(e);
+      }
+    };
+    env2.stack.push({ value, dispose, async });
+  } else if (async) {
+    env2.stack.push({ async: true });
+  }
+  return value;
+}
+function __disposeResources(env2) {
+  function fail(e) {
+    env2.error = env2.hasError ? new _SuppressedError(e, env2.error, "An error was suppressed during disposal.") : e;
+    env2.hasError = true;
+  }
+  var r, s = 0;
+  function next() {
+    while (r = env2.stack.pop()) {
+      try {
+        if (!r.async && s === 1) return s = 0, env2.stack.push(r), Promise.resolve().then(next);
+        if (r.dispose) {
+          var result = r.dispose.call(r.value);
+          if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
+            fail(e);
+            return next();
+          });
+        } else s |= 1;
+      } catch (e) {
+        fail(e);
+      }
+    }
+    if (s === 1) return env2.hasError ? Promise.reject(env2.error) : Promise.resolve();
+    if (env2.hasError) throw env2.error;
+  }
+  return next();
+}
+function __rewriteRelativeImportExtension(path23, preserveJsx) {
+  if (typeof path23 === "string" && /^\.\.?\//.test(path23)) {
+    return path23.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d, ext, cm) {
+      return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : d + ext + "." + cm.toLowerCase() + "js";
+    });
+  }
+  return path23;
+}
+var extendStatics, __assign, __createBinding, __setModuleDefault, ownKeys, _SuppressedError, tslib_es6_default;
+var init_tslib_es6 = __esm({
+  "../../../node_modules/tslib/tslib.es6.mjs"() {
+    extendStatics = function(d, b) {
+      extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
+        d2.__proto__ = b2;
+      } || function(d2, b2) {
+        for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
+      };
+      return extendStatics(d, b);
+    };
+    __assign = function() {
+      __assign = Object.assign || function __assign2(t) {
+        for (var s, i = 1, n = arguments.length; i < n; i++) {
+          s = arguments[i];
+          for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+        }
+        return t;
+      };
+      return __assign.apply(this, arguments);
+    };
+    __createBinding = Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    });
+    __setModuleDefault = Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    };
+    ownKeys = function(o) {
+      ownKeys = Object.getOwnPropertyNames || function(o2) {
+        var ar = [];
+        for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
+        return ar;
+      };
+      return ownKeys(o);
+    };
+    _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
+      var e = new Error(message);
+      return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
+    };
+    tslib_es6_default = {
+      __extends,
+      __assign,
+      __rest,
+      __decorate,
+      __param,
+      __esDecorate,
+      __runInitializers: __runInitializers2,
+      __propKey,
+      __setFunctionName,
+      __metadata,
+      __awaiter,
+      __generator,
+      __createBinding,
+      __exportStar,
+      __values,
+      __read,
+      __spread,
+      __spreadArrays,
+      __spreadArray,
+      __await,
+      __asyncGenerator,
+      __asyncDelegator,
+      __asyncValues,
+      __makeTemplateObject,
+      __importStar,
+      __importDefault,
+      __classPrivateFieldGet,
+      __classPrivateFieldSet,
+      __classPrivateFieldIn,
+      __addDisposableResource,
+      __disposeResources,
+      __rewriteRelativeImportExtension
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/package.json
+var require_package = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sfn",
+      description: "AWS SDK for JavaScript Sfn Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sfn",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sfn"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/client-sts": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2",
+        uuid: "^9.0.1"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        "@types/uuid": "^9.0.4",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sfn",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sfn"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js
+var require_dist_cjs36 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ENV_ACCOUNT_ID: () => ENV_ACCOUNT_ID,
+      ENV_CREDENTIAL_SCOPE: () => ENV_CREDENTIAL_SCOPE,
+      ENV_EXPIRATION: () => ENV_EXPIRATION,
+      ENV_KEY: () => ENV_KEY,
+      ENV_SECRET: () => ENV_SECRET,
+      ENV_SESSION: () => ENV_SESSION,
+      fromEnv: () => fromEnv
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_KEY = "AWS_ACCESS_KEY_ID";
+    var ENV_SECRET = "AWS_SECRET_ACCESS_KEY";
+    var ENV_SESSION = "AWS_SESSION_TOKEN";
+    var ENV_EXPIRATION = "AWS_CREDENTIAL_EXPIRATION";
+    var ENV_CREDENTIAL_SCOPE = "AWS_CREDENTIAL_SCOPE";
+    var ENV_ACCOUNT_ID = "AWS_ACCOUNT_ID";
+    var fromEnv = /* @__PURE__ */ __name2((init) => async () => {
+      var _a7;
+      (_a7 = init == null ? void 0 : init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-env - fromEnv");
+      const accessKeyId = process.env[ENV_KEY];
+      const secretAccessKey = process.env[ENV_SECRET];
+      const sessionToken = process.env[ENV_SESSION];
+      const expiry = process.env[ENV_EXPIRATION];
+      const credentialScope = process.env[ENV_CREDENTIAL_SCOPE];
+      const accountId = process.env[ENV_ACCOUNT_ID];
+      if (accessKeyId && secretAccessKey) {
+        return {
+          accessKeyId,
+          secretAccessKey,
+          ...sessionToken && { sessionToken },
+          ...expiry && { expiration: new Date(expiry) },
+          ...credentialScope && { credentialScope },
+          ...accountId && { accountId }
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError("Unable to find environment variable credentials.", { logger: init == null ? void 0 : init.logger });
+    }, "fromEnv");
+  }
+});
+
+// ../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js
+var require_dist_cjs37 = __commonJS({
+  "../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_MAX_RETRIES: () => DEFAULT_MAX_RETRIES,
+      DEFAULT_TIMEOUT: () => DEFAULT_TIMEOUT,
+      ENV_CMDS_AUTH_TOKEN: () => ENV_CMDS_AUTH_TOKEN,
+      ENV_CMDS_FULL_URI: () => ENV_CMDS_FULL_URI,
+      ENV_CMDS_RELATIVE_URI: () => ENV_CMDS_RELATIVE_URI,
+      Endpoint: () => Endpoint,
+      fromContainerMetadata: () => fromContainerMetadata,
+      fromInstanceMetadata: () => fromInstanceMetadata,
+      getInstanceMetadataEndpoint: () => getInstanceMetadataEndpoint,
+      httpRequest: () => httpRequest,
+      providerConfigFromInit: () => providerConfigFromInit
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_url = require("url");
+    var import_property_provider2 = require_dist_cjs24();
+    var import_buffer = require("buffer");
+    var import_http2 = require("http");
+    function httpRequest(options) {
+      return new Promise((resolve6, reject) => {
+        var _a7;
+        const req = (0, import_http2.request)({
+          method: "GET",
+          ...options,
+          // Node.js http module doesn't accept hostname with square brackets
+          // Refs: https://github.com/nodejs/node/issues/39738
+          hostname: (_a7 = options.hostname) == null ? void 0 : _a7.replace(/^\[(.+)\]$/, "$1")
+        });
+        req.on("error", (err) => {
+          reject(Object.assign(new import_property_provider2.ProviderError("Unable to connect to instance metadata service"), err));
+          req.destroy();
+        });
+        req.on("timeout", () => {
+          reject(new import_property_provider2.ProviderError("TimeoutError from instance metadata service"));
+          req.destroy();
+        });
+        req.on("response", (res) => {
+          const { statusCode = 400 } = res;
+          if (statusCode < 200 || 300 <= statusCode) {
+            reject(
+              Object.assign(new import_property_provider2.ProviderError("Error response received from instance metadata service"), { statusCode })
+            );
+            req.destroy();
+          }
+          const chunks = [];
+          res.on("data", (chunk) => {
+            chunks.push(chunk);
+          });
+          res.on("end", () => {
+            resolve6(import_buffer.Buffer.concat(chunks));
+            req.destroy();
+          });
+        });
+        req.end();
+      });
+    }
+    __name2(httpRequest, "httpRequest");
+    var isImdsCredentials = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.AccessKeyId === "string" && typeof arg.SecretAccessKey === "string" && typeof arg.Token === "string" && typeof arg.Expiration === "string", "isImdsCredentials");
+    var fromImdsCredentials = /* @__PURE__ */ __name2((creds) => ({
+      accessKeyId: creds.AccessKeyId,
+      secretAccessKey: creds.SecretAccessKey,
+      sessionToken: creds.Token,
+      expiration: new Date(creds.Expiration),
+      ...creds.AccountId && { accountId: creds.AccountId }
+    }), "fromImdsCredentials");
+    var DEFAULT_TIMEOUT = 1e3;
+    var DEFAULT_MAX_RETRIES = 0;
+    var providerConfigFromInit = /* @__PURE__ */ __name2(({
+      maxRetries = DEFAULT_MAX_RETRIES,
+      timeout = DEFAULT_TIMEOUT
+    }) => ({ maxRetries, timeout }), "providerConfigFromInit");
+    var retry = /* @__PURE__ */ __name2((toRetry, maxRetries) => {
+      let promise = toRetry();
+      for (let i = 0; i < maxRetries; i++) {
+        promise = promise.catch(toRetry);
+      }
+      return promise;
+    }, "retry");
+    var ENV_CMDS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var ENV_CMDS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var ENV_CMDS_AUTH_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromContainerMetadata = /* @__PURE__ */ __name2((init = {}) => {
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      return () => retry(async () => {
+        const requestOptions = await getCmdsUri({ logger: init.logger });
+        const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions));
+        if (!isImdsCredentials(credsResponse)) {
+          throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+            logger: init.logger
+          });
+        }
+        return fromImdsCredentials(credsResponse);
+      }, maxRetries);
+    }, "fromContainerMetadata");
+    var requestFromEcsImds = /* @__PURE__ */ __name2(async (timeout, options) => {
+      if (process.env[ENV_CMDS_AUTH_TOKEN]) {
+        options.headers = {
+          ...options.headers,
+          Authorization: process.env[ENV_CMDS_AUTH_TOKEN]
+        };
+      }
+      const buffer = await httpRequest({
+        ...options,
+        timeout
+      });
+      return buffer.toString();
+    }, "requestFromEcsImds");
+    var CMDS_IP = "169.254.170.2";
+    var GREENGRASS_HOSTS = {
+      localhost: true,
+      "127.0.0.1": true
+    };
+    var GREENGRASS_PROTOCOLS = {
+      "http:": true,
+      "https:": true
+    };
+    var getCmdsUri = /* @__PURE__ */ __name2(async ({ logger }) => {
+      if (process.env[ENV_CMDS_RELATIVE_URI]) {
+        return {
+          hostname: CMDS_IP,
+          path: process.env[ENV_CMDS_RELATIVE_URI]
+        };
+      }
+      if (process.env[ENV_CMDS_FULL_URI]) {
+        const parsed = (0, import_url.parse)(process.env[ENV_CMDS_FULL_URI]);
+        if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        return {
+          ...parsed,
+          port: parsed.port ? parseInt(parsed.port, 10) : void 0
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `The container metadata credential provider cannot be used unless the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment variable is set`,
+        {
+          tryNextLink: false,
+          logger
+        }
+      );
+    }, "getCmdsUri");
+    var _InstanceMetadataV1FallbackError = class _InstanceMetadataV1FallbackError2 extends import_property_provider2.CredentialsProviderError {
+      constructor(message, tryNextLink = true) {
+        super(message, tryNextLink);
+        this.tryNextLink = tryNextLink;
+        this.name = "InstanceMetadataV1FallbackError";
+        Object.setPrototypeOf(this, _InstanceMetadataV1FallbackError2.prototype);
+      }
+    };
+    __name2(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError");
+    var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError;
+    var import_node_config_provider = require_dist_cjs26();
+    var import_url_parser = require_dist_cjs28();
+    var Endpoint = /* @__PURE__ */ ((Endpoint2) => {
+      Endpoint2["IPv4"] = "http://169.254.169.254";
+      Endpoint2["IPv6"] = "http://[fd00:ec2::254]";
+      return Endpoint2;
+    })(Endpoint || {});
+    var ENV_ENDPOINT_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT";
+    var CONFIG_ENDPOINT_NAME = "ec2_metadata_service_endpoint";
+    var ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME],
+      default: void 0
+    };
+    var EndpointMode = /* @__PURE__ */ ((EndpointMode2) => {
+      EndpointMode2["IPv4"] = "IPv4";
+      EndpointMode2["IPv6"] = "IPv6";
+      return EndpointMode2;
+    })(EndpointMode || {});
+    var ENV_ENDPOINT_MODE_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE";
+    var CONFIG_ENDPOINT_MODE_NAME = "ec2_metadata_service_endpoint_mode";
+    var ENDPOINT_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_MODE_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME],
+      default: "IPv4"
+      /* IPv4 */
+    };
+    var getInstanceMetadataEndpoint = /* @__PURE__ */ __name2(async () => (0, import_url_parser.parseUrl)(await getFromEndpointConfig() || await getFromEndpointModeConfig()), "getInstanceMetadataEndpoint");
+    var getFromEndpointConfig = /* @__PURE__ */ __name2(async () => (0, import_node_config_provider.loadConfig)(ENDPOINT_CONFIG_OPTIONS)(), "getFromEndpointConfig");
+    var getFromEndpointModeConfig = /* @__PURE__ */ __name2(async () => {
+      const endpointMode = await (0, import_node_config_provider.loadConfig)(ENDPOINT_MODE_CONFIG_OPTIONS)();
+      switch (endpointMode) {
+        case "IPv4":
+          return "http://169.254.169.254";
+        case "IPv6":
+          return "http://[fd00:ec2::254]";
+        default:
+          throw new Error(`Unsupported endpoint mode: ${endpointMode}. Select from ${Object.values(EndpointMode)}`);
+      }
+    }, "getFromEndpointModeConfig");
+    var STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60;
+    var STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60;
+    var STATIC_STABILITY_DOC_URL = "https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html";
+    var getExtendedInstanceMetadataCredentials = /* @__PURE__ */ __name2((credentials, logger) => {
+      const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS + Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS);
+      const newExpiration = new Date(Date.now() + refreshInterval * 1e3);
+      logger.warn(
+        `Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(newExpiration)}.
+For more information, please visit: ` + STATIC_STABILITY_DOC_URL
+      );
+      const originalExpiration = credentials.originalExpiration ?? credentials.expiration;
+      return {
+        ...credentials,
+        ...originalExpiration ? { originalExpiration } : {},
+        expiration: newExpiration
+      };
+    }, "getExtendedInstanceMetadataCredentials");
+    var staticStabilityProvider = /* @__PURE__ */ __name2((provider, options = {}) => {
+      const logger = (options == null ? void 0 : options.logger) || console;
+      let pastCredentials;
+      return async () => {
+        let credentials;
+        try {
+          credentials = await provider();
+          if (credentials.expiration && credentials.expiration.getTime() < Date.now()) {
+            credentials = getExtendedInstanceMetadataCredentials(credentials, logger);
+          }
+        } catch (e) {
+          if (pastCredentials) {
+            logger.warn("Credential renew failed: ", e);
+            credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger);
+          } else {
+            throw e;
+          }
+        }
+        pastCredentials = credentials;
+        return credentials;
+      };
+    }, "staticStabilityProvider");
+    var IMDS_PATH = "/latest/meta-data/iam/security-credentials/";
+    var IMDS_TOKEN_PATH = "/latest/api/token";
+    var AWS_EC2_METADATA_V1_DISABLED = "AWS_EC2_METADATA_V1_DISABLED";
+    var PROFILE_AWS_EC2_METADATA_V1_DISABLED = "ec2_metadata_v1_disabled";
+    var X_AWS_EC2_METADATA_TOKEN = "x-aws-ec2-metadata-token";
+    var fromInstanceMetadata = /* @__PURE__ */ __name2((init = {}) => staticStabilityProvider(getInstanceMetadataProvider(init), { logger: init.logger }), "fromInstanceMetadata");
+    var getInstanceMetadataProvider = /* @__PURE__ */ __name2((init = {}) => {
+      let disableFetchToken = false;
+      const { logger, profile } = init;
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      const getCredentials = /* @__PURE__ */ __name2(async (maxRetries2, options) => {
+        var _a7;
+        const isImdsV1Fallback = disableFetchToken || ((_a7 = options.headers) == null ? void 0 : _a7[X_AWS_EC2_METADATA_TOKEN]) == null;
+        if (isImdsV1Fallback) {
+          let fallbackBlockedFromProfile = false;
+          let fallbackBlockedFromProcessEnv = false;
+          const configValue = await (0, import_node_config_provider.loadConfig)(
+            {
+              environmentVariableSelector: (env2) => {
+                const envValue = env2[AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProcessEnv = !!envValue && envValue !== "false";
+                if (envValue === void 0) {
+                  throw new import_property_provider2.CredentialsProviderError(
+                    `${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.`,
+                    { logger: init.logger }
+                  );
+                }
+                return fallbackBlockedFromProcessEnv;
+              },
+              configFileSelector: (profile2) => {
+                const profileValue = profile2[PROFILE_AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProfile = !!profileValue && profileValue !== "false";
+                return fallbackBlockedFromProfile;
+              },
+              default: false
+            },
+            {
+              profile
+            }
+          )();
+          if (init.ec2MetadataV1Disabled || configValue) {
+            const causes = [];
+            if (init.ec2MetadataV1Disabled)
+              causes.push("credential provider initialization (runtime option ec2MetadataV1Disabled)");
+            if (fallbackBlockedFromProfile)
+              causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`);
+            if (fallbackBlockedFromProcessEnv)
+              causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`);
+            throw new InstanceMetadataV1FallbackError(
+              `AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join(
+                ", "
+              )}].`
+            );
+          }
+        }
+        const imdsProfile = (await retry(async () => {
+          let profile2;
+          try {
+            profile2 = await getProfile(options);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return profile2;
+        }, maxRetries2)).trim();
+        return retry(async () => {
+          let creds;
+          try {
+            creds = await getCredentialsFromProfile(imdsProfile, options, init);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return creds;
+        }, maxRetries2);
+      }, "getCredentials");
+      return async () => {
+        const endpoint = await getInstanceMetadataEndpoint();
+        if (disableFetchToken) {
+          logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (no token fetch)");
+          return getCredentials(maxRetries, { ...endpoint, timeout });
+        } else {
+          let token;
+          try {
+            token = (await getMetadataToken({ ...endpoint, timeout })).toString();
+          } catch (error) {
+            if ((error == null ? void 0 : error.statusCode) === 400) {
+              throw Object.assign(error, {
+                message: "EC2 Metadata token request returned error"
+              });
+            } else if (error.message === "TimeoutError" || [403, 404, 405].includes(error.statusCode)) {
+              disableFetchToken = true;
+            }
+            logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (initial)");
+            return getCredentials(maxRetries, { ...endpoint, timeout });
+          }
+          return getCredentials(maxRetries, {
+            ...endpoint,
+            headers: {
+              [X_AWS_EC2_METADATA_TOKEN]: token
+            },
+            timeout
+          });
+        }
+      };
+    }, "getInstanceMetadataProvider");
+    var getMetadataToken = /* @__PURE__ */ __name2(async (options) => httpRequest({
+      ...options,
+      path: IMDS_TOKEN_PATH,
+      method: "PUT",
+      headers: {
+        "x-aws-ec2-metadata-token-ttl-seconds": "21600"
+      }
+    }), "getMetadataToken");
+    var getProfile = /* @__PURE__ */ __name2(async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString(), "getProfile");
+    var getCredentialsFromProfile = /* @__PURE__ */ __name2(async (profile, options, init) => {
+      const credentialsResponse = JSON.parse(
+        (await httpRequest({
+          ...options,
+          path: IMDS_PATH + profile
+        })).toString()
+      );
+      if (!isImdsCredentials(credentialsResponse)) {
+        throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+          logger: init.logger
+        });
+      }
+      return fromImdsCredentials(credentialsResponse);
+    }, "getCredentialsFromProfile");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js
+var require_checkUrl = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.checkUrl = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var ECS_CONTAINER_HOST = "169.254.170.2";
+    var EKS_CONTAINER_HOST_IPv4 = "169.254.170.23";
+    var EKS_CONTAINER_HOST_IPv6 = "[fd00:ec2::23]";
+    var checkUrl = (url2, logger) => {
+      if (url2.protocol === "https:") {
+        return;
+      }
+      if (url2.hostname === ECS_CONTAINER_HOST || url2.hostname === EKS_CONTAINER_HOST_IPv4 || url2.hostname === EKS_CONTAINER_HOST_IPv6) {
+        return;
+      }
+      if (url2.hostname.includes("[")) {
+        if (url2.hostname === "[::1]" || url2.hostname === "[0000:0000:0000:0000:0000:0000:0000:0001]") {
+          return;
+        }
+      } else {
+        if (url2.hostname === "localhost") {
+          return;
+        }
+        const ipComponents = url2.hostname.split(".");
+        const inRange = (component) => {
+          const num = parseInt(component, 10);
+          return 0 <= num && num <= 255;
+        };
+        if (ipComponents[0] === "127" && inRange(ipComponents[1]) && inRange(ipComponents[2]) && inRange(ipComponents[3]) && ipComponents.length === 4) {
+          return;
+        }
+      }
+      throw new property_provider_1.CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following:
+  - loopback CIDR 127.0.0.0/8 or [::1/128]
+  - ECS container host 169.254.170.2
+  - EKS container host 169.254.170.23 or [fd00:ec2::23]`, { logger });
+    };
+    exports2.checkUrl = checkUrl;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js
+var require_requestHelpers = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getCredentials = exports2.createGetRequest = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_stream_1 = require_dist_cjs22();
+    function createGetRequest(url2) {
+      return new protocol_http_1.HttpRequest({
+        protocol: url2.protocol,
+        hostname: url2.hostname,
+        port: Number(url2.port),
+        path: url2.pathname,
+        query: Array.from(url2.searchParams.entries()).reduce((acc, [k, v]) => {
+          acc[k] = v;
+          return acc;
+        }, {}),
+        fragment: url2.hash
+      });
+    }
+    exports2.createGetRequest = createGetRequest;
+    async function getCredentials(response, logger) {
+      const stream = (0, util_stream_1.sdkStreamMixin)(response.body);
+      const str = await stream.transformToString();
+      if (response.statusCode === 200) {
+        const parsed = JSON.parse(str);
+        if (typeof parsed.AccessKeyId !== "string" || typeof parsed.SecretAccessKey !== "string" || typeof parsed.Token !== "string" || typeof parsed.Expiration !== "string") {
+          throw new property_provider_1.CredentialsProviderError("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }", { logger });
+        }
+        return {
+          accessKeyId: parsed.AccessKeyId,
+          secretAccessKey: parsed.SecretAccessKey,
+          sessionToken: parsed.Token,
+          expiration: (0, smithy_client_1.parseRfc3339DateTime)(parsed.Expiration)
+        };
+      }
+      if (response.statusCode >= 400 && response.statusCode < 500) {
+        let parsedBody = {};
+        try {
+          parsedBody = JSON.parse(str);
+        } catch (e) {
+        }
+        throw Object.assign(new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger }), {
+          Code: parsedBody.Code,
+          Message: parsedBody.Message
+        });
+      }
+      throw new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger });
+    }
+    exports2.getCredentials = getCredentials;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js
+var require_retry_wrapper = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.retryWrapper = void 0;
+    var retryWrapper = (toRetry, maxRetries, delayMs) => {
+      return async () => {
+        for (let i = 0; i < maxRetries; ++i) {
+          try {
+            return await toRetry();
+          } catch (e) {
+            await new Promise((resolve6) => setTimeout(resolve6, delayMs));
+          }
+        }
+        return await toRetry();
+      };
+    };
+    exports2.retryWrapper = retryWrapper;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js
+var require_fromHttp = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var node_http_handler_1 = require_dist_cjs19();
+    var property_provider_1 = require_dist_cjs24();
+    var promises_1 = tslib_1.__importDefault(require("fs/promises"));
+    var checkUrl_1 = require_checkUrl();
+    var requestHelpers_1 = require_requestHelpers();
+    var retry_wrapper_1 = require_retry_wrapper();
+    var AWS_CONTAINER_CREDENTIALS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var DEFAULT_LINK_LOCAL_HOST = "http://169.254.170.2";
+    var AWS_CONTAINER_CREDENTIALS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE = "AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromHttp = (options = {}) => {
+      options.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");
+      let host;
+      const relative7 = options.awsContainerCredentialsRelativeUri ?? process.env[AWS_CONTAINER_CREDENTIALS_RELATIVE_URI];
+      const full = options.awsContainerCredentialsFullUri ?? process.env[AWS_CONTAINER_CREDENTIALS_FULL_URI];
+      const token = options.awsContainerAuthorizationToken ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN];
+      const tokenFile = options.awsContainerAuthorizationTokenFile ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE];
+      const warn = options.logger?.constructor?.name === "NoOpLogger" || !options.logger ? console.warn : options.logger.warn;
+      if (relative7 && full) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri.");
+        warn("awsContainerCredentialsFullUri will take precedence.");
+      }
+      if (token && tokenFile) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile.");
+        warn("awsContainerAuthorizationToken will take precedence.");
+      }
+      if (full) {
+        host = full;
+      } else if (relative7) {
+        host = `${DEFAULT_LINK_LOCAL_HOST}${relative7}`;
+      } else {
+        throw new property_provider_1.CredentialsProviderError(`No HTTP credential provider host provided.
+Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`, { logger: options.logger });
+      }
+      const url2 = new URL(host);
+      (0, checkUrl_1.checkUrl)(url2, options.logger);
+      const requestHandler = new node_http_handler_1.NodeHttpHandler({
+        requestTimeout: options.timeout ?? 1e3,
+        connectionTimeout: options.timeout ?? 1e3
+      });
+      return (0, retry_wrapper_1.retryWrapper)(async () => {
+        const request2 = (0, requestHelpers_1.createGetRequest)(url2);
+        if (token) {
+          request2.headers.Authorization = token;
+        } else if (tokenFile) {
+          request2.headers.Authorization = (await promises_1.default.readFile(tokenFile)).toString();
+        }
+        try {
+          const result = await requestHandler.handle(request2);
+          return (0, requestHelpers_1.getCredentials)(result.response);
+        } catch (e) {
+          throw new property_provider_1.CredentialsProviderError(String(e), { logger: options.logger });
+        }
+      }, options.maxRetries ?? 3, options.timeout ?? 1e3);
+    };
+    exports2.fromHttp = fromHttp;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js
+var require_dist_cjs38 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var fromHttp_1 = require_fromHttp();
+    Object.defineProperty(exports2, "fromHttp", { enumerable: true, get: function() {
+      return fromHttp_1.fromHttp;
+    } });
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOHttpAuthSchemeProvider = exports2.defaultSSOHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOHttpAuthSchemeParametersProvider = defaultSSOHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "awsssoportal",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "GetRoleCredentials": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccountRoles": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccounts": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "Logout": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOHttpAuthSchemeProvider = defaultSSOHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/package.json
+var require_package2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso",
+      description: "AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js
+var require_dist_cjs39 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      UA_APP_ID_ENV_NAME: () => UA_APP_ID_ENV_NAME,
+      UA_APP_ID_INI_NAME: () => UA_APP_ID_INI_NAME,
+      crtAvailability: () => crtAvailability,
+      defaultUserAgent: () => defaultUserAgent
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_node_config_provider = require_dist_cjs26();
+    var import_os = require("os");
+    var import_process2 = require("process");
+    var crtAvailability = {
+      isCrtAvailable: false
+    };
+    var isCrtAvailable = /* @__PURE__ */ __name2(() => {
+      if (crtAvailability.isCrtAvailable) {
+        return ["md/crt-avail"];
+      }
+      return null;
+    }, "isCrtAvailable");
+    var UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
+    var UA_APP_ID_INI_NAME = "sdk-ua-app-id";
+    var defaultUserAgent = /* @__PURE__ */ __name2(({ serviceId, clientVersion }) => {
+      const sections = [
+        // sdk-metadata
+        ["aws-sdk-js", clientVersion],
+        // ua-metadata
+        ["ua", "2.0"],
+        // os-metadata
+        [`os/${(0, import_os.platform)()}`, (0, import_os.release)()],
+        // language-metadata
+        // ECMAScript edition doesn't matter in JS, so no version needed.
+        ["lang/js"],
+        ["md/nodejs", `${import_process2.versions.node}`]
+      ];
+      const crtAvailable = isCrtAvailable();
+      if (crtAvailable) {
+        sections.push(crtAvailable);
+      }
+      if (serviceId) {
+        sections.push([`api/${serviceId}`, clientVersion]);
+      }
+      if (import_process2.env.AWS_EXECUTION_ENV) {
+        sections.push([`exec-env/${import_process2.env.AWS_EXECUTION_ENV}`]);
+      }
+      const appIdPromise = (0, import_node_config_provider.loadConfig)({
+        environmentVariableSelector: (env2) => env2[UA_APP_ID_ENV_NAME],
+        configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME],
+        default: void 0
+      })();
+      let resolvedUserAgent = void 0;
+      return async () => {
+        if (!resolvedUserAgent) {
+          const appId = await appIdPromise;
+          resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
+        }
+        return resolvedUserAgent;
+      };
+    }, "defaultUserAgent");
+  }
+});
+
+// ../../../node_modules/@smithy/hash-node/dist-cjs/index.js
+var require_dist_cjs40 = __commonJS({
+  "../../../node_modules/@smithy/hash-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Hash: () => Hash
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var import_util_utf8 = require_dist_cjs15();
+    var import_buffer = require("buffer");
+    var import_crypto5 = require("crypto");
+    var _Hash = class _Hash {
+      constructor(algorithmIdentifier, secret) {
+        this.algorithmIdentifier = algorithmIdentifier;
+        this.secret = secret;
+        this.reset();
+      }
+      update(toHash, encoding) {
+        this.hash.update((0, import_util_utf8.toUint8Array)(castSourceData(toHash, encoding)));
+      }
+      digest() {
+        return Promise.resolve(this.hash.digest());
+      }
+      reset() {
+        this.hash = this.secret ? (0, import_crypto5.createHmac)(this.algorithmIdentifier, castSourceData(this.secret)) : (0, import_crypto5.createHash)(this.algorithmIdentifier);
+      }
+    };
+    __name2(_Hash, "Hash");
+    var Hash = _Hash;
+    function castSourceData(toCast, encoding) {
+      if (import_buffer.Buffer.isBuffer(toCast)) {
+        return toCast;
+      }
+      if (typeof toCast === "string") {
+        return (0, import_util_buffer_from.fromString)(toCast, encoding);
+      }
+      if (ArrayBuffer.isView(toCast)) {
+        return (0, import_util_buffer_from.fromArrayBuffer)(toCast.buffer, toCast.byteOffset, toCast.byteLength);
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(toCast);
+    }
+    __name2(castSourceData, "castSourceData");
+  }
+});
+
+// ../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js
+var require_dist_cjs41 = __commonJS({
+  "../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      calculateBodyLength: () => calculateBodyLength
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_fs4 = require("fs");
+    var calculateBodyLength = /* @__PURE__ */ __name2((body) => {
+      if (!body) {
+        return 0;
+      }
+      if (typeof body === "string") {
+        return Buffer.byteLength(body);
+      } else if (typeof body.byteLength === "number") {
+        return body.byteLength;
+      } else if (typeof body.size === "number") {
+        return body.size;
+      } else if (typeof body.start === "number" && typeof body.end === "number") {
+        return body.end + 1 - body.start;
+      } else if (typeof body.path === "string" || Buffer.isBuffer(body.path)) {
+        return (0, import_fs4.lstatSync)(body.path).size;
+      } else if (typeof body.fd === "number") {
+        return (0, import_fs4.fstatSync)(body.fd).size;
+      }
+      throw new Error(`Body Length computation failed for ${body}`);
+    }, "calculateBodyLength");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js
+var require_ruleset = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://portal.sso.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider2();
+    var endpointResolver_1 = require_endpointResolver();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js
+var require_dist_cjs42 = __commonJS({
+  "../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      resolveDefaultsModeConfig: () => resolveDefaultsModeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_config_resolver = require_dist_cjs11();
+    var import_node_config_provider = require_dist_cjs26();
+    var import_property_provider2 = require_dist_cjs24();
+    var AWS_EXECUTION_ENV = "AWS_EXECUTION_ENV";
+    var AWS_REGION_ENV = "AWS_REGION";
+    var AWS_DEFAULT_REGION_ENV = "AWS_DEFAULT_REGION";
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var DEFAULTS_MODE_OPTIONS = ["in-region", "cross-region", "mobile", "standard", "legacy"];
+    var IMDS_REGION_PATH = "/latest/meta-data/placement/region";
+    var AWS_DEFAULTS_MODE_ENV = "AWS_DEFAULTS_MODE";
+    var AWS_DEFAULTS_MODE_CONFIG = "defaults_mode";
+    var NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        return env2[AWS_DEFAULTS_MODE_ENV];
+      },
+      configFileSelector: (profile) => {
+        return profile[AWS_DEFAULTS_MODE_CONFIG];
+      },
+      default: "legacy"
+    };
+    var resolveDefaultsModeConfig = /* @__PURE__ */ __name2(({
+      region = (0, import_node_config_provider.loadConfig)(import_config_resolver.NODE_REGION_CONFIG_OPTIONS),
+      defaultsMode = (0, import_node_config_provider.loadConfig)(NODE_DEFAULTS_MODE_CONFIG_OPTIONS)
+    } = {}) => (0, import_property_provider2.memoize)(async () => {
+      const mode = typeof defaultsMode === "function" ? await defaultsMode() : defaultsMode;
+      switch (mode == null ? void 0 : mode.toLowerCase()) {
+        case "auto":
+          return resolveNodeDefaultsModeAuto(region);
+        case "in-region":
+        case "cross-region":
+        case "mobile":
+        case "standard":
+        case "legacy":
+          return Promise.resolve(mode == null ? void 0 : mode.toLocaleLowerCase());
+        case void 0:
+          return Promise.resolve("legacy");
+        default:
+          throw new Error(
+            `Invalid parameter for "defaultsMode", expect ${DEFAULTS_MODE_OPTIONS.join(", ")}, got ${mode}`
+          );
+      }
+    }), "resolveDefaultsModeConfig");
+    var resolveNodeDefaultsModeAuto = /* @__PURE__ */ __name2(async (clientRegion) => {
+      if (clientRegion) {
+        const resolvedRegion = typeof clientRegion === "function" ? await clientRegion() : clientRegion;
+        const inferredRegion = await inferPhysicalRegion();
+        if (!inferredRegion) {
+          return "standard";
+        }
+        if (resolvedRegion === inferredRegion) {
+          return "in-region";
+        } else {
+          return "cross-region";
+        }
+      }
+      return "standard";
+    }, "resolveNodeDefaultsModeAuto");
+    var inferPhysicalRegion = /* @__PURE__ */ __name2(async () => {
+      if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {
+        return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];
+      }
+      if (!process.env[ENV_IMDS_DISABLED]) {
+        try {
+          const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          const endpoint = await getInstanceMetadataEndpoint();
+          return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString();
+        } catch (e) {
+        }
+      }
+    }, "inferPhysicalRegion");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js
+var require_runtimeConfig = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package2());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js
+var require_dist_cjs43 = __commonJS({
+  "../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getAwsRegionExtensionConfiguration: () => getAwsRegionExtensionConfiguration,
+      resolveAwsRegionExtensionConfiguration: () => resolveAwsRegionExtensionConfiguration,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let runtimeConfigRegion = /* @__PURE__ */ __name2(async () => {
+        if (runtimeConfig.region === void 0) {
+          throw new Error("Region is missing from runtimeConfig");
+        }
+        const region = runtimeConfig.region;
+        if (typeof region === "string") {
+          return region;
+        }
+        return region();
+      }, "runtimeConfigRegion");
+      return {
+        setRegion(region) {
+          runtimeConfigRegion = region;
+        },
+        region() {
+          return runtimeConfigRegion;
+        }
+      };
+    }, "getAwsRegionExtensionConfiguration");
+    var resolveAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((awsRegionExtensionConfiguration) => {
+      return {
+        region: awsRegionExtensionConfiguration.region()
+      };
+    }, "resolveAwsRegionExtensionConfiguration");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js
+var require_dist_cjs44 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      GetRoleCredentialsCommand: () => GetRoleCredentialsCommand,
+      GetRoleCredentialsRequestFilterSensitiveLog: () => GetRoleCredentialsRequestFilterSensitiveLog,
+      GetRoleCredentialsResponseFilterSensitiveLog: () => GetRoleCredentialsResponseFilterSensitiveLog,
+      InvalidRequestException: () => InvalidRequestException,
+      ListAccountRolesCommand: () => ListAccountRolesCommand,
+      ListAccountRolesRequestFilterSensitiveLog: () => ListAccountRolesRequestFilterSensitiveLog,
+      ListAccountsCommand: () => ListAccountsCommand,
+      ListAccountsRequestFilterSensitiveLog: () => ListAccountsRequestFilterSensitiveLog,
+      LogoutCommand: () => LogoutCommand,
+      LogoutRequestFilterSensitiveLog: () => LogoutRequestFilterSensitiveLog,
+      ResourceNotFoundException: () => ResourceNotFoundException,
+      RoleCredentialsFilterSensitiveLog: () => RoleCredentialsFilterSensitiveLog,
+      SSO: () => SSO,
+      SSOClient: () => SSOClient,
+      SSOServiceException: () => SSOServiceException,
+      TooManyRequestsException: () => TooManyRequestsException,
+      UnauthorizedException: () => UnauthorizedException,
+      __Client: () => import_smithy_client4.Client,
+      paginateListAccountRoles: () => paginateListAccountRoles,
+      paginateListAccounts: () => paginateListAccounts
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider2();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "awsssoportal"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOClient = class _SSOClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOClient, "SSOClient");
+    var SSOClient = _SSOClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOServiceException = class _SSOServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOServiceException2.prototype);
+      }
+    };
+    __name2(_SSOServiceException, "SSOServiceException");
+    var SSOServiceException = _SSOServiceException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _ResourceNotFoundException = class _ResourceNotFoundException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFoundException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFoundException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFoundException2.prototype);
+      }
+    };
+    __name2(_ResourceNotFoundException, "ResourceNotFoundException");
+    var ResourceNotFoundException = _ResourceNotFoundException;
+    var _TooManyRequestsException = class _TooManyRequestsException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyRequestsException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyRequestsException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyRequestsException2.prototype);
+      }
+    };
+    __name2(_TooManyRequestsException, "TooManyRequestsException");
+    var TooManyRequestsException = _TooManyRequestsException;
+    var _UnauthorizedException = class _UnauthorizedException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedException2.prototype);
+      }
+    };
+    __name2(_UnauthorizedException, "UnauthorizedException");
+    var UnauthorizedException = _UnauthorizedException;
+    var GetRoleCredentialsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetRoleCredentialsRequestFilterSensitiveLog");
+    var RoleCredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.secretAccessKey && { secretAccessKey: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.sessionToken && { sessionToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "RoleCredentialsFilterSensitiveLog");
+    var GetRoleCredentialsResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.roleCredentials && { roleCredentials: RoleCredentialsFilterSensitiveLog(obj.roleCredentials) }
+    }), "GetRoleCredentialsResponseFilterSensitiveLog");
+    var ListAccountRolesRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountRolesRequestFilterSensitiveLog");
+    var ListAccountsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountsRequestFilterSensitiveLog");
+    var LogoutRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "LogoutRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/federation/credentials");
+      const query = (0, import_smithy_client4.map)({
+        [_rn]: [, (0, import_smithy_client4.expectNonNull)(input[_rN], `roleName`)],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_GetRoleCredentialsCommand");
+    var se_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/roles");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountRolesCommand");
+    var se_ListAccountsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/accounts");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountsCommand");
+    var se_LogoutCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/logout");
+      let body;
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_LogoutCommand");
+    var de_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        roleCredentials: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_GetRoleCredentialsCommand");
+    var de_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        nextToken: import_smithy_client4.expectString,
+        roleList: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountRolesCommand");
+    var de_ListAccountsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accountList: import_smithy_client4._json,
+        nextToken: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountsCommand");
+    var de_LogoutCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      await (0, import_smithy_client4.collectBody)(output.body, context);
+      return contents;
+    }, "de_LogoutCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "InvalidRequestException":
+        case "com.amazonaws.sso#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "ResourceNotFoundException":
+        case "com.amazonaws.sso#ResourceNotFoundException":
+          throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+        case "TooManyRequestsException":
+        case "com.amazonaws.sso#TooManyRequestsException":
+          throw await de_TooManyRequestsExceptionRes(parsedOutput, context);
+        case "UnauthorizedException":
+        case "com.amazonaws.sso#UnauthorizedException":
+          throw await de_UnauthorizedExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOServiceException);
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_ResourceNotFoundExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ResourceNotFoundException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ResourceNotFoundExceptionRes");
+    var de_TooManyRequestsExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new TooManyRequestsException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_TooManyRequestsExceptionRes");
+    var de_UnauthorizedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => value !== void 0 && value !== null && value !== "" && (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0), "isSerializableHeaderValue");
+    var _aI = "accountId";
+    var _aT = "accessToken";
+    var _ai = "account_id";
+    var _mR = "maxResults";
+    var _mr = "max_result";
+    var _nT = "nextToken";
+    var _nt = "next_token";
+    var _rN = "roleName";
+    var _rn = "role_name";
+    var _xasbt = "x-amz-sso_bearer_token";
+    var _GetRoleCredentialsCommand = class _GetRoleCredentialsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "GetRoleCredentials", {}).n("SSOClient", "GetRoleCredentialsCommand").f(GetRoleCredentialsRequestFilterSensitiveLog, GetRoleCredentialsResponseFilterSensitiveLog).ser(se_GetRoleCredentialsCommand).de(de_GetRoleCredentialsCommand).build() {
+    };
+    __name2(_GetRoleCredentialsCommand, "GetRoleCredentialsCommand");
+    var GetRoleCredentialsCommand = _GetRoleCredentialsCommand;
+    var _ListAccountRolesCommand = class _ListAccountRolesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccountRoles", {}).n("SSOClient", "ListAccountRolesCommand").f(ListAccountRolesRequestFilterSensitiveLog, void 0).ser(se_ListAccountRolesCommand).de(de_ListAccountRolesCommand).build() {
+    };
+    __name2(_ListAccountRolesCommand, "ListAccountRolesCommand");
+    var ListAccountRolesCommand = _ListAccountRolesCommand;
+    var _ListAccountsCommand = class _ListAccountsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccounts", {}).n("SSOClient", "ListAccountsCommand").f(ListAccountsRequestFilterSensitiveLog, void 0).ser(se_ListAccountsCommand).de(de_ListAccountsCommand).build() {
+    };
+    __name2(_ListAccountsCommand, "ListAccountsCommand");
+    var ListAccountsCommand = _ListAccountsCommand;
+    var _LogoutCommand = class _LogoutCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "Logout", {}).n("SSOClient", "LogoutCommand").f(LogoutRequestFilterSensitiveLog, void 0).ser(se_LogoutCommand).de(de_LogoutCommand).build() {
+    };
+    __name2(_LogoutCommand, "LogoutCommand");
+    var LogoutCommand = _LogoutCommand;
+    var commands = {
+      GetRoleCredentialsCommand,
+      ListAccountRolesCommand,
+      ListAccountsCommand,
+      LogoutCommand
+    };
+    var _SSO = class _SSO extends SSOClient {
+    };
+    __name2(_SSO, "SSO");
+    var SSO = _SSO;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSO);
+    var paginateListAccountRoles = (0, import_core4.createPaginator)(SSOClient, ListAccountRolesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListAccounts = (0, import_core4.createPaginator)(SSOClient, ListAccountsCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOOIDCHttpAuthSchemeProvider = exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOOIDCHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = defaultSSOOIDCHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sso-oauth",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOOIDCHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "CreateToken": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "RegisterClient": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "StartDeviceAuthorization": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeProvider = defaultSSOOIDCHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/package.json
+var require_package3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso-oidc",
+      description: "AWS SDK for JavaScript Sso Oidc Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso-oidc",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso-oidc"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      peerDependencies: {
+        "@aws-sdk/client-sts": "^3.632.0"
+      },
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso-oidc",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso-oidc"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js
+var require_ruleset2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://oidc.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://oidc.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset2();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider3();
+    var endpointResolver_1 = require_endpointResolver2();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOOIDCHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO OIDC",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js
+var require_runtimeConfig2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package3());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js
+var require_dist_cjs45 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AccessDeniedException: () => AccessDeniedException,
+      AuthorizationPendingException: () => AuthorizationPendingException,
+      CreateTokenCommand: () => CreateTokenCommand,
+      CreateTokenRequestFilterSensitiveLog: () => CreateTokenRequestFilterSensitiveLog,
+      CreateTokenResponseFilterSensitiveLog: () => CreateTokenResponseFilterSensitiveLog,
+      CreateTokenWithIAMCommand: () => CreateTokenWithIAMCommand,
+      CreateTokenWithIAMRequestFilterSensitiveLog: () => CreateTokenWithIAMRequestFilterSensitiveLog,
+      CreateTokenWithIAMResponseFilterSensitiveLog: () => CreateTokenWithIAMResponseFilterSensitiveLog,
+      ExpiredTokenException: () => ExpiredTokenException,
+      InternalServerException: () => InternalServerException,
+      InvalidClientException: () => InvalidClientException,
+      InvalidClientMetadataException: () => InvalidClientMetadataException,
+      InvalidGrantException: () => InvalidGrantException,
+      InvalidRedirectUriException: () => InvalidRedirectUriException,
+      InvalidRequestException: () => InvalidRequestException,
+      InvalidRequestRegionException: () => InvalidRequestRegionException,
+      InvalidScopeException: () => InvalidScopeException,
+      RegisterClientCommand: () => RegisterClientCommand,
+      RegisterClientResponseFilterSensitiveLog: () => RegisterClientResponseFilterSensitiveLog,
+      SSOOIDC: () => SSOOIDC,
+      SSOOIDCClient: () => SSOOIDCClient,
+      SSOOIDCServiceException: () => SSOOIDCServiceException,
+      SlowDownException: () => SlowDownException,
+      StartDeviceAuthorizationCommand: () => StartDeviceAuthorizationCommand,
+      StartDeviceAuthorizationRequestFilterSensitiveLog: () => StartDeviceAuthorizationRequestFilterSensitiveLog,
+      UnauthorizedClientException: () => UnauthorizedClientException,
+      UnsupportedGrantTypeException: () => UnsupportedGrantTypeException,
+      __Client: () => import_smithy_client4.Client
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider3();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "sso-oauth"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig2();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOOIDCClient = class _SSOOIDCClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOOIDCHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOOIDCClient, "SSOOIDCClient");
+    var SSOOIDCClient = _SSOOIDCClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOOIDCServiceException = class _SSOOIDCServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOOIDCServiceException2.prototype);
+      }
+    };
+    __name2(_SSOOIDCServiceException, "SSOOIDCServiceException");
+    var SSOOIDCServiceException = _SSOOIDCServiceException;
+    var _AccessDeniedException = class _AccessDeniedException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AccessDeniedException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AccessDeniedException, "AccessDeniedException");
+    var AccessDeniedException = _AccessDeniedException;
+    var _AuthorizationPendingException = class _AuthorizationPendingException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AuthorizationPendingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AuthorizationPendingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AuthorizationPendingException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AuthorizationPendingException, "AuthorizationPendingException");
+    var AuthorizationPendingException = _AuthorizationPendingException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _InternalServerException = class _InternalServerException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InternalServerException",
+          $fault: "server",
+          ...opts
+        });
+        this.name = "InternalServerException";
+        this.$fault = "server";
+        Object.setPrototypeOf(this, _InternalServerException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InternalServerException, "InternalServerException");
+    var InternalServerException = _InternalServerException;
+    var _InvalidClientException = class _InvalidClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientException, "InvalidClientException");
+    var InvalidClientException = _InvalidClientException;
+    var _InvalidGrantException = class _InvalidGrantException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidGrantException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidGrantException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidGrantException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidGrantException, "InvalidGrantException");
+    var InvalidGrantException = _InvalidGrantException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _InvalidScopeException = class _InvalidScopeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidScopeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidScopeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidScopeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidScopeException, "InvalidScopeException");
+    var InvalidScopeException = _InvalidScopeException;
+    var _SlowDownException = class _SlowDownException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "SlowDownException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "SlowDownException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _SlowDownException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_SlowDownException, "SlowDownException");
+    var SlowDownException = _SlowDownException;
+    var _UnauthorizedClientException = class _UnauthorizedClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnauthorizedClientException, "UnauthorizedClientException");
+    var UnauthorizedClientException = _UnauthorizedClientException;
+    var _UnsupportedGrantTypeException = class _UnsupportedGrantTypeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnsupportedGrantTypeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnsupportedGrantTypeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnsupportedGrantTypeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnsupportedGrantTypeException, "UnsupportedGrantTypeException");
+    var UnsupportedGrantTypeException = _UnsupportedGrantTypeException;
+    var _InvalidRequestRegionException = class _InvalidRequestRegionException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestRegionException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestRegionException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestRegionException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+        this.endpoint = opts.endpoint;
+        this.region = opts.region;
+      }
+    };
+    __name2(_InvalidRequestRegionException, "InvalidRequestRegionException");
+    var InvalidRequestRegionException = _InvalidRequestRegionException;
+    var _InvalidClientMetadataException = class _InvalidClientMetadataException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientMetadataException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientMetadataException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientMetadataException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientMetadataException, "InvalidClientMetadataException");
+    var InvalidClientMetadataException = _InvalidClientMetadataException;
+    var _InvalidRedirectUriException = class _InvalidRedirectUriException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRedirectUriException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRedirectUriException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRedirectUriException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRedirectUriException, "InvalidRedirectUriException");
+    var InvalidRedirectUriException = _InvalidRedirectUriException;
+    var CreateTokenRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenRequestFilterSensitiveLog");
+    var CreateTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenResponseFilterSensitiveLog");
+    var CreateTokenWithIAMRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.assertion && { assertion: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.subjectToken && { subjectToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMRequestFilterSensitiveLog");
+    var CreateTokenWithIAMResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMResponseFilterSensitiveLog");
+    var RegisterClientResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "RegisterClientResponseFilterSensitiveLog");
+    var StartDeviceAuthorizationRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartDeviceAuthorizationRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_CreateTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          code: [],
+          codeVerifier: [],
+          deviceCode: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          scope: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_CreateTokenCommand");
+    var se_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      const query = (0, import_smithy_client4.map)({
+        [_ai]: [, "t"]
+      });
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          assertion: [],
+          clientId: [],
+          code: [],
+          codeVerifier: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          requestedTokenType: [],
+          scope: (_) => (0, import_smithy_client4._json)(_),
+          subjectToken: [],
+          subjectTokenType: []
+        })
+      );
+      b.m("POST").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_CreateTokenWithIAMCommand");
+    var se_RegisterClientCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/client/register");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientName: [],
+          clientType: [],
+          entitledApplicationArn: [],
+          grantTypes: (_) => (0, import_smithy_client4._json)(_),
+          issuerUrl: [],
+          redirectUris: (_) => (0, import_smithy_client4._json)(_),
+          scopes: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_RegisterClientCommand");
+    var se_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/device_authorization");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          startUrl: []
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_StartDeviceAuthorizationCommand");
+    var de_CreateTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenCommand");
+    var de_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        issuedTokenType: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        scope: import_smithy_client4._json,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenWithIAMCommand");
+    var de_RegisterClientCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        authorizationEndpoint: import_smithy_client4.expectString,
+        clientId: import_smithy_client4.expectString,
+        clientIdIssuedAt: import_smithy_client4.expectLong,
+        clientSecret: import_smithy_client4.expectString,
+        clientSecretExpiresAt: import_smithy_client4.expectLong,
+        tokenEndpoint: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_RegisterClientCommand");
+    var de_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        deviceCode: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        interval: import_smithy_client4.expectInt32,
+        userCode: import_smithy_client4.expectString,
+        verificationUri: import_smithy_client4.expectString,
+        verificationUriComplete: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_StartDeviceAuthorizationCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "AccessDeniedException":
+        case "com.amazonaws.ssooidc#AccessDeniedException":
+          throw await de_AccessDeniedExceptionRes(parsedOutput, context);
+        case "AuthorizationPendingException":
+        case "com.amazonaws.ssooidc#AuthorizationPendingException":
+          throw await de_AuthorizationPendingExceptionRes(parsedOutput, context);
+        case "ExpiredTokenException":
+        case "com.amazonaws.ssooidc#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "InternalServerException":
+        case "com.amazonaws.ssooidc#InternalServerException":
+          throw await de_InternalServerExceptionRes(parsedOutput, context);
+        case "InvalidClientException":
+        case "com.amazonaws.ssooidc#InvalidClientException":
+          throw await de_InvalidClientExceptionRes(parsedOutput, context);
+        case "InvalidGrantException":
+        case "com.amazonaws.ssooidc#InvalidGrantException":
+          throw await de_InvalidGrantExceptionRes(parsedOutput, context);
+        case "InvalidRequestException":
+        case "com.amazonaws.ssooidc#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "InvalidScopeException":
+        case "com.amazonaws.ssooidc#InvalidScopeException":
+          throw await de_InvalidScopeExceptionRes(parsedOutput, context);
+        case "SlowDownException":
+        case "com.amazonaws.ssooidc#SlowDownException":
+          throw await de_SlowDownExceptionRes(parsedOutput, context);
+        case "UnauthorizedClientException":
+        case "com.amazonaws.ssooidc#UnauthorizedClientException":
+          throw await de_UnauthorizedClientExceptionRes(parsedOutput, context);
+        case "UnsupportedGrantTypeException":
+        case "com.amazonaws.ssooidc#UnsupportedGrantTypeException":
+          throw await de_UnsupportedGrantTypeExceptionRes(parsedOutput, context);
+        case "InvalidRequestRegionException":
+        case "com.amazonaws.ssooidc#InvalidRequestRegionException":
+          throw await de_InvalidRequestRegionExceptionRes(parsedOutput, context);
+        case "InvalidClientMetadataException":
+        case "com.amazonaws.ssooidc#InvalidClientMetadataException":
+          throw await de_InvalidClientMetadataExceptionRes(parsedOutput, context);
+        case "InvalidRedirectUriException":
+        case "com.amazonaws.ssooidc#InvalidRedirectUriException":
+          throw await de_InvalidRedirectUriExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOOIDCServiceException);
+    var de_AccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AccessDeniedExceptionRes");
+    var de_AuthorizationPendingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AuthorizationPendingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AuthorizationPendingExceptionRes");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_InternalServerExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InternalServerException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InternalServerExceptionRes");
+    var de_InvalidClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientExceptionRes");
+    var de_InvalidClientMetadataExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientMetadataException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientMetadataExceptionRes");
+    var de_InvalidGrantExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidGrantException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidGrantExceptionRes");
+    var de_InvalidRedirectUriExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRedirectUriException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRedirectUriExceptionRes");
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_InvalidRequestRegionExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        endpoint: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString,
+        region: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestRegionException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestRegionExceptionRes");
+    var de_InvalidScopeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidScopeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidScopeExceptionRes");
+    var de_SlowDownExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new SlowDownException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_SlowDownExceptionRes");
+    var de_UnauthorizedClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedClientExceptionRes");
+    var de_UnsupportedGrantTypeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnsupportedGrantTypeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnsupportedGrantTypeExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var _ai = "aws_iam";
+    var _CreateTokenCommand = class _CreateTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateToken", {}).n("SSOOIDCClient", "CreateTokenCommand").f(CreateTokenRequestFilterSensitiveLog, CreateTokenResponseFilterSensitiveLog).ser(se_CreateTokenCommand).de(de_CreateTokenCommand).build() {
+    };
+    __name2(_CreateTokenCommand, "CreateTokenCommand");
+    var CreateTokenCommand = _CreateTokenCommand;
+    var _CreateTokenWithIAMCommand = class _CreateTokenWithIAMCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateTokenWithIAM", {}).n("SSOOIDCClient", "CreateTokenWithIAMCommand").f(CreateTokenWithIAMRequestFilterSensitiveLog, CreateTokenWithIAMResponseFilterSensitiveLog).ser(se_CreateTokenWithIAMCommand).de(de_CreateTokenWithIAMCommand).build() {
+    };
+    __name2(_CreateTokenWithIAMCommand, "CreateTokenWithIAMCommand");
+    var CreateTokenWithIAMCommand = _CreateTokenWithIAMCommand;
+    var _RegisterClientCommand = class _RegisterClientCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "RegisterClient", {}).n("SSOOIDCClient", "RegisterClientCommand").f(void 0, RegisterClientResponseFilterSensitiveLog).ser(se_RegisterClientCommand).de(de_RegisterClientCommand).build() {
+    };
+    __name2(_RegisterClientCommand, "RegisterClientCommand");
+    var RegisterClientCommand = _RegisterClientCommand;
+    var _StartDeviceAuthorizationCommand = class _StartDeviceAuthorizationCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "StartDeviceAuthorization", {}).n("SSOOIDCClient", "StartDeviceAuthorizationCommand").f(StartDeviceAuthorizationRequestFilterSensitiveLog, void 0).ser(se_StartDeviceAuthorizationCommand).de(de_StartDeviceAuthorizationCommand).build() {
+    };
+    __name2(_StartDeviceAuthorizationCommand, "StartDeviceAuthorizationCommand");
+    var StartDeviceAuthorizationCommand = _StartDeviceAuthorizationCommand;
+    var commands = {
+      CreateTokenCommand,
+      CreateTokenWithIAMCommand,
+      RegisterClientCommand,
+      StartDeviceAuthorizationCommand
+    };
+    var _SSOOIDC = class _SSOOIDC extends SSOOIDCClient {
+    };
+    __name2(_SSOOIDC, "SSOOIDC");
+    var SSOOIDC = _SSOOIDC;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSOOIDC);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js
+var require_dist_cjs46 = __commonJS({
+  "../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSso: () => fromSso,
+      fromStatic: () => fromStatic,
+      nodeProvider: () => nodeProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var EXPIRE_WINDOW_MS = 5 * 60 * 1e3;
+    var REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;
+    var ssoOidcClientsHash = {};
+    var getSsoOidcClient = /* @__PURE__ */ __name2(async (ssoRegion) => {
+      const { SSOOIDCClient } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      if (ssoOidcClientsHash[ssoRegion]) {
+        return ssoOidcClientsHash[ssoRegion];
+      }
+      const ssoOidcClient = new SSOOIDCClient({ region: ssoRegion });
+      ssoOidcClientsHash[ssoRegion] = ssoOidcClient;
+      return ssoOidcClient;
+    }, "getSsoOidcClient");
+    var getNewSsoOidcToken = /* @__PURE__ */ __name2(async (ssoToken, ssoRegion) => {
+      const { CreateTokenCommand } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      const ssoOidcClient = await getSsoOidcClient(ssoRegion);
+      return ssoOidcClient.send(
+        new CreateTokenCommand({
+          clientId: ssoToken.clientId,
+          clientSecret: ssoToken.clientSecret,
+          refreshToken: ssoToken.refreshToken,
+          grantType: "refresh_token"
+        })
+      );
+    }, "getNewSsoOidcToken");
+    var import_property_provider2 = require_dist_cjs24();
+    var validateTokenExpiry = /* @__PURE__ */ __name2((token) => {
+      if (token.expiration && token.expiration.getTime() < Date.now()) {
+        throw new import_property_provider2.TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);
+      }
+    }, "validateTokenExpiry");
+    var validateTokenKey = /* @__PURE__ */ __name2((key, value, forRefresh = false) => {
+      if (typeof value === "undefined") {
+        throw new import_property_provider2.TokenProviderError(
+          `Value not present for '${key}' in SSO Token${forRefresh ? ". Cannot refresh" : ""}. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+    }, "validateTokenKey");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_fs4 = require("fs");
+    var { writeFile } = import_fs4.promises;
+    var writeSSOTokenToFile = /* @__PURE__ */ __name2((id, ssoToken) => {
+      const tokenFilepath = (0, import_shared_ini_file_loader.getSSOTokenFilepath)(id);
+      const tokenString = JSON.stringify(ssoToken, null, 2);
+      return writeFile(tokenFilepath, tokenString);
+    }, "writeSSOTokenToFile");
+    var lastRefreshAttemptTime = /* @__PURE__ */ new Date(0);
+    var fromSso = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/token-providers - fromSso");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const profile = profiles[profileName];
+      if (!profile) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);
+      } else if (!profile["sso_session"]) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);
+      }
+      const ssoSessionName = profile["sso_session"];
+      const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+      const ssoSession = ssoSessions[ssoSessionName];
+      if (!ssoSession) {
+        throw new import_property_provider2.TokenProviderError(
+          `Sso session '${ssoSessionName}' could not be found in shared credentials file.`,
+          false
+        );
+      }
+      for (const ssoSessionRequiredKey of ["sso_start_url", "sso_region"]) {
+        if (!ssoSession[ssoSessionRequiredKey]) {
+          throw new import_property_provider2.TokenProviderError(
+            `Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`,
+            false
+          );
+        }
+      }
+      const ssoStartUrl = ssoSession["sso_start_url"];
+      const ssoRegion = ssoSession["sso_region"];
+      let ssoToken;
+      try {
+        ssoToken = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoSessionName);
+      } catch (e) {
+        throw new import_property_provider2.TokenProviderError(
+          `The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+      validateTokenKey("accessToken", ssoToken.accessToken);
+      validateTokenKey("expiresAt", ssoToken.expiresAt);
+      const { accessToken, expiresAt } = ssoToken;
+      const existingToken = { token: accessToken, expiration: new Date(expiresAt) };
+      if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {
+        return existingToken;
+      }
+      if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1e3) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+      validateTokenKey("clientId", ssoToken.clientId, true);
+      validateTokenKey("clientSecret", ssoToken.clientSecret, true);
+      validateTokenKey("refreshToken", ssoToken.refreshToken, true);
+      try {
+        lastRefreshAttemptTime.setTime(Date.now());
+        const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion);
+        validateTokenKey("accessToken", newSsoOidcToken.accessToken);
+        validateTokenKey("expiresIn", newSsoOidcToken.expiresIn);
+        const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1e3);
+        try {
+          await writeSSOTokenToFile(ssoSessionName, {
+            ...ssoToken,
+            accessToken: newSsoOidcToken.accessToken,
+            expiresAt: newTokenExpiration.toISOString(),
+            refreshToken: newSsoOidcToken.refreshToken
+          });
+        } catch (error) {
+        }
+        return {
+          token: newSsoOidcToken.accessToken,
+          expiration: newTokenExpiration
+        };
+      } catch (error) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+    }, "fromSso");
+    var fromStatic = /* @__PURE__ */ __name2(({ token, logger }) => async () => {
+      logger == null ? void 0 : logger.debug("@aws-sdk/token-providers - fromStatic");
+      if (!token || !token.token) {
+        throw new import_property_provider2.TokenProviderError(`Please pass a valid token to fromStatic`, false);
+      }
+      return token;
+    }, "fromStatic");
+    var nodeProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(fromSso(init), async () => {
+        throw new import_property_provider2.TokenProviderError("Could not load token from any providers", false);
+      }),
+      (token) => token.expiration !== void 0 && token.expiration.getTime() - Date.now() < 3e5,
+      (token) => token.expiration !== void 0
+    ), "nodeProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js
+var require_dist_cjs47 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __esm2 = (fn, res) => function __init() {
+      return fn && (res = (0, fn[__getOwnPropNames2(fn)[0]])(fn = 0)), res;
+    };
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var loadSso_exports = {};
+    __export2(loadSso_exports, {
+      GetRoleCredentialsCommand: () => import_client_sso.GetRoleCredentialsCommand,
+      SSOClient: () => import_client_sso.SSOClient
+    });
+    var import_client_sso;
+    var init_loadSso = __esm2({
+      "src/loadSso.ts"() {
+        "use strict";
+        import_client_sso = require_dist_cjs44();
+      }
+    });
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSSO: () => fromSSO,
+      isSsoProfile: () => isSsoProfile,
+      validateSsoProfile: () => validateSsoProfile
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var import_token_providers = require_dist_cjs46();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var SHOULD_FAIL_CREDENTIAL_CHAIN = false;
+    var resolveSSOCredentials = /* @__PURE__ */ __name2(async ({
+      ssoStartUrl,
+      ssoSession,
+      ssoAccountId,
+      ssoRegion,
+      ssoRoleName,
+      ssoClient,
+      clientConfig,
+      profile,
+      logger
+    }) => {
+      let token;
+      const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;
+      if (ssoSession) {
+        try {
+          const _token = await (0, import_token_providers.fromSso)({ profile })();
+          token = {
+            accessToken: _token.token,
+            expiresAt: new Date(_token.expiration).toISOString()
+          };
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(e.message, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      } else {
+        try {
+          token = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoStartUrl);
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      }
+      if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {
+        throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const { accessToken } = token;
+      const { SSOClient: SSOClient2, GetRoleCredentialsCommand: GetRoleCredentialsCommand2 } = await Promise.resolve().then(() => (init_loadSso(), loadSso_exports));
+      const sso = ssoClient || new SSOClient2(
+        Object.assign({}, clientConfig ?? {}, {
+          region: (clientConfig == null ? void 0 : clientConfig.region) ?? ssoRegion
+        })
+      );
+      let ssoResp;
+      try {
+        ssoResp = await sso.send(
+          new GetRoleCredentialsCommand2({
+            accountId: ssoAccountId,
+            roleName: ssoRoleName,
+            accessToken
+          })
+        );
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(e, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const {
+        roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}
+      } = ssoResp;
+      if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {
+        throw new import_property_provider2.CredentialsProviderError("SSO returns an invalid temporary credential.", {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      return {
+        accessKeyId,
+        secretAccessKey,
+        sessionToken,
+        expiration: new Date(expiration),
+        ...credentialScope && { credentialScope },
+        ...accountId && { accountId }
+      };
+    }, "resolveSSOCredentials");
+    var validateSsoProfile = /* @__PURE__ */ __name2((profile, logger) => {
+      const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;
+      if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(
+            ", "
+          )}
+Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,
+          { tryNextLink: false, logger }
+        );
+      }
+      return profile;
+    }, "validateSsoProfile");
+    var fromSSO = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-sso - fromSSO");
+      const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+      const { ssoClient } = init;
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+        const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+        const profile = profiles[profileName];
+        if (!profile) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });
+        }
+        if (!isSsoProfile(profile)) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {
+            logger: init.logger
+          });
+        }
+        if (profile == null ? void 0 : profile.sso_session) {
+          const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+          const session = ssoSessions[profile.sso_session];
+          const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;
+          if (ssoRegion && ssoRegion !== session.sso_region) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          profile.sso_region = session.sso_region;
+          profile.sso_start_url = session.sso_start_url;
+        }
+        const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(
+          profile,
+          init.logger
+        );
+        return resolveSSOCredentials({
+          ssoStartUrl: sso_start_url,
+          ssoSession: sso_session,
+          ssoAccountId: sso_account_id,
+          ssoRegion: sso_region,
+          ssoRoleName: sso_role_name,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      } else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {
+        throw new import_property_provider2.CredentialsProviderError(
+          'Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',
+          { tryNextLink: false, logger: init.logger }
+        );
+      } else {
+        return resolveSSOCredentials({
+          ssoStartUrl,
+          ssoSession,
+          ssoAccountId,
+          ssoRegion,
+          ssoRoleName,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      }
+    }, "fromSSO");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.resolveStsAuthConfig = exports2.defaultSTSHttpAuthSchemeProvider = exports2.defaultSTSHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var STSClient_1 = require_STSClient();
+    var defaultSTSHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSTSHttpAuthSchemeParametersProvider = defaultSTSHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sts",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSTSHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "AssumeRoleWithSAML": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "AssumeRoleWithWebIdentity": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSTSHttpAuthSchemeProvider = defaultSTSHttpAuthSchemeProvider;
+    var resolveStsAuthConfig = (input) => ({
+      ...input,
+      stsClientCtor: STSClient_1.STSClient
+    });
+    exports2.resolveStsAuthConfig = resolveStsAuthConfig;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, exports2.resolveStsAuthConfig)(config);
+      const config_1 = (0, core_1.resolveAwsSdkSigV4Config)(config_0);
+      return {
+        ...config_1
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js
+var require_EndpointParameters = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.commonParams = exports2.resolveClientEndpointParameters = void 0;
+    var resolveClientEndpointParameters = (options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        useGlobalEndpoint: options.useGlobalEndpoint ?? false,
+        defaultSigningName: "sts"
+      };
+    };
+    exports2.resolveClientEndpointParameters = resolveClientEndpointParameters;
+    exports2.commonParams = {
+      UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" },
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/package.json
+var require_package4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sts",
+      description: "AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sts",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "rimraf ./dist-types tsconfig.types.tsbuildinfo && tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sts",
+        test: "yarn test:unit",
+        "test:unit": "jest"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sts",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sts"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js
+var require_ruleset3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var F2 = "required";
+    var G2 = "type";
+    var H2 = "fn";
+    var I2 = "argv";
+    var J = "ref";
+    var a = false;
+    var b = true;
+    var c = "booleanEquals";
+    var d = "stringEquals";
+    var e = "sigv4";
+    var f = "sts";
+    var g = "us-east-1";
+    var h = "endpoint";
+    var i = "https://sts.{Region}.{PartitionResult#dnsSuffix}";
+    var j = "tree";
+    var k = "error";
+    var l = "getAttr";
+    var m = { [F2]: false, [G2]: "String" };
+    var n = { [F2]: true, "default": false, [G2]: "Boolean" };
+    var o = { [J]: "Endpoint" };
+    var p = { [H2]: "isSet", [I2]: [{ [J]: "Region" }] };
+    var q = { [J]: "Region" };
+    var r = { [H2]: "aws.partition", [I2]: [q], "assign": "PartitionResult" };
+    var s = { [J]: "UseFIPS" };
+    var t = { [J]: "UseDualStack" };
+    var u = { "url": "https://sts.amazonaws.com", "properties": { "authSchemes": [{ "name": e, "signingName": f, "signingRegion": g }] }, "headers": {} };
+    var v = {};
+    var w = { "conditions": [{ [H2]: d, [I2]: [q, "aws-global"] }], [h]: u, [G2]: h };
+    var x = { [H2]: c, [I2]: [s, true] };
+    var y = { [H2]: c, [I2]: [t, true] };
+    var z = { [H2]: l, [I2]: [{ [J]: "PartitionResult" }, "supportsFIPS"] };
+    var A = { [J]: "PartitionResult" };
+    var B = { [H2]: c, [I2]: [true, { [H2]: l, [I2]: [A, "supportsDualStack"] }] };
+    var C = [{ [H2]: "isSet", [I2]: [o] }];
+    var D = [x];
+    var E = [y];
+    var _data = { version: "1.0", parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n }, rules: [{ conditions: [{ [H2]: c, [I2]: [{ [J]: "UseGlobalEndpoint" }, b] }, { [H2]: "not", [I2]: C }, p, r, { [H2]: c, [I2]: [s, a] }, { [H2]: c, [I2]: [t, a] }], rules: [{ conditions: [{ [H2]: d, [I2]: [q, "ap-northeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-south-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-2"] }], endpoint: u, [G2]: h }, w, { conditions: [{ [H2]: d, [I2]: [q, "ca-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-north-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-3"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "sa-east-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, g] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-east-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-2"] }], endpoint: u, [G2]: h }, { endpoint: { url: i, properties: { authSchemes: [{ name: e, signingName: f, signingRegion: "{Region}" }] }, headers: v }, [G2]: h }], [G2]: j }, { conditions: C, rules: [{ conditions: D, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [G2]: k }, { conditions: E, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [G2]: k }, { endpoint: { url: o, properties: v, headers: v }, [G2]: h }], [G2]: j }, { conditions: [p], rules: [{ conditions: [r], rules: [{ conditions: [x, y], rules: [{ conditions: [{ [H2]: c, [I2]: [b, z] }, B], rules: [{ endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", [G2]: k }], [G2]: j }, { conditions: D, rules: [{ conditions: [{ [H2]: c, [I2]: [z, b] }], rules: [{ conditions: [{ [H2]: d, [I2]: [{ [H2]: l, [I2]: [A, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://sts.{Region}.amazonaws.com", properties: v, headers: v }, [G2]: h }, { endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS is enabled but this partition does not support FIPS", [G2]: k }], [G2]: j }, { conditions: E, rules: [{ conditions: [B], rules: [{ endpoint: { url: "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "DualStack is enabled but this partition does not support DualStack", [G2]: k }], [G2]: j }, w, { endpoint: { url: i, properties: v, headers: v }, [G2]: h }], [G2]: j }], [G2]: j }, { error: "Invalid Configuration: Missing Region", [G2]: k }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset3();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var endpointResolver_1 = require_endpointResolver3();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2011-06-15",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "STS",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js
+var require_runtimeConfig3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package4());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared3();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4") || (async (idProps) => await (0, credential_provider_node_1.defaultProvider)(idProps?.__config || {})()),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js
+var require_httpAuthExtensionConfiguration = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthRuntimeConfig = exports2.getHttpAuthExtensionConfiguration = void 0;
+    var getHttpAuthExtensionConfiguration = (runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    };
+    exports2.getHttpAuthExtensionConfiguration = getHttpAuthExtensionConfiguration;
+    var resolveHttpAuthRuntimeConfig = (config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    };
+    exports2.resolveHttpAuthRuntimeConfig = resolveHttpAuthRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js
+var require_runtimeExtensions = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveRuntimeExtensions = void 0;
+    var region_config_resolver_1 = require_dist_cjs43();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var httpAuthExtensionConfiguration_1 = require_httpAuthExtensionConfiguration();
+    var asPartial = (t) => t;
+    var resolveRuntimeExtensions = (runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...(0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration)
+      };
+    };
+    exports2.resolveRuntimeExtensions = resolveRuntimeExtensions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js
+var require_STSClient = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.STSClient = exports2.__Client = void 0;
+    var middleware_host_header_1 = require_dist_cjs3();
+    var middleware_logger_1 = require_dist_cjs4();
+    var middleware_recursion_detection_1 = require_dist_cjs5();
+    var middleware_user_agent_1 = require_dist_cjs8();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_1 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var middleware_content_length_1 = require_dist_cjs23();
+    var middleware_endpoint_1 = require_dist_cjs29();
+    var middleware_retry_1 = require_dist_cjs34();
+    var smithy_client_1 = require_dist_cjs33();
+    Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() {
+      return smithy_client_1.Client;
+    } });
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var EndpointParameters_1 = require_EndpointParameters();
+    var runtimeConfig_1 = require_runtimeConfig3();
+    var runtimeExtensions_1 = require_runtimeExtensions();
+    var STSClient2 = class extends smithy_client_1.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {});
+        const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0);
+        const _config_2 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, middleware_retry_1.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, config_resolver_1.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, httpAuthSchemeProvider_1.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_7, configuration?.extensions || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use((0, core_1.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+          httpAuthSchemeParametersProvider: httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeParametersProvider,
+          identityProviderConfigProvider: async (config) => new core_1.DefaultIdentityProviderConfig({
+            "aws.auth#sigv4": config.credentials
+          })
+        }));
+        this.middlewareStack.use((0, core_1.getHttpSigningPlugin)(this.config));
+      }
+      destroy() {
+        super.destroy();
+      }
+    };
+    exports2.STSClient = STSClient2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js
+var require_dist_cjs48 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AssumeRoleCommand: () => AssumeRoleCommand,
+      AssumeRoleResponseFilterSensitiveLog: () => AssumeRoleResponseFilterSensitiveLog,
+      AssumeRoleWithSAMLCommand: () => AssumeRoleWithSAMLCommand,
+      AssumeRoleWithSAMLRequestFilterSensitiveLog: () => AssumeRoleWithSAMLRequestFilterSensitiveLog,
+      AssumeRoleWithSAMLResponseFilterSensitiveLog: () => AssumeRoleWithSAMLResponseFilterSensitiveLog,
+      AssumeRoleWithWebIdentityCommand: () => AssumeRoleWithWebIdentityCommand,
+      AssumeRoleWithWebIdentityRequestFilterSensitiveLog: () => AssumeRoleWithWebIdentityRequestFilterSensitiveLog,
+      AssumeRoleWithWebIdentityResponseFilterSensitiveLog: () => AssumeRoleWithWebIdentityResponseFilterSensitiveLog,
+      ClientInputEndpointParameters: () => import_EndpointParameters9.ClientInputEndpointParameters,
+      CredentialsFilterSensitiveLog: () => CredentialsFilterSensitiveLog,
+      DecodeAuthorizationMessageCommand: () => DecodeAuthorizationMessageCommand,
+      ExpiredTokenException: () => ExpiredTokenException,
+      GetAccessKeyInfoCommand: () => GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand: () => GetCallerIdentityCommand,
+      GetFederationTokenCommand: () => GetFederationTokenCommand,
+      GetFederationTokenResponseFilterSensitiveLog: () => GetFederationTokenResponseFilterSensitiveLog,
+      GetSessionTokenCommand: () => GetSessionTokenCommand,
+      GetSessionTokenResponseFilterSensitiveLog: () => GetSessionTokenResponseFilterSensitiveLog,
+      IDPCommunicationErrorException: () => IDPCommunicationErrorException,
+      IDPRejectedClaimException: () => IDPRejectedClaimException,
+      InvalidAuthorizationMessageException: () => InvalidAuthorizationMessageException,
+      InvalidIdentityTokenException: () => InvalidIdentityTokenException,
+      MalformedPolicyDocumentException: () => MalformedPolicyDocumentException,
+      PackedPolicyTooLargeException: () => PackedPolicyTooLargeException,
+      RegionDisabledException: () => RegionDisabledException,
+      STS: () => STS,
+      STSServiceException: () => STSServiceException,
+      decorateDefaultCredentialProvider: () => decorateDefaultCredentialProvider,
+      getDefaultRoleAssumer: () => getDefaultRoleAssumer2,
+      getDefaultRoleAssumerWithWebIdentity: () => getDefaultRoleAssumerWithWebIdentity2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_STSClient(), module2.exports);
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_EndpointParameters = require_EndpointParameters();
+    var import_smithy_client4 = require_dist_cjs33();
+    var _STSServiceException = class _STSServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _STSServiceException2.prototype);
+      }
+    };
+    __name2(_STSServiceException, "STSServiceException");
+    var STSServiceException = _STSServiceException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _MalformedPolicyDocumentException = class _MalformedPolicyDocumentException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MalformedPolicyDocumentException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MalformedPolicyDocumentException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MalformedPolicyDocumentException2.prototype);
+      }
+    };
+    __name2(_MalformedPolicyDocumentException, "MalformedPolicyDocumentException");
+    var MalformedPolicyDocumentException = _MalformedPolicyDocumentException;
+    var _PackedPolicyTooLargeException = class _PackedPolicyTooLargeException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "PackedPolicyTooLargeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "PackedPolicyTooLargeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _PackedPolicyTooLargeException2.prototype);
+      }
+    };
+    __name2(_PackedPolicyTooLargeException, "PackedPolicyTooLargeException");
+    var PackedPolicyTooLargeException = _PackedPolicyTooLargeException;
+    var _RegionDisabledException = class _RegionDisabledException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "RegionDisabledException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "RegionDisabledException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _RegionDisabledException2.prototype);
+      }
+    };
+    __name2(_RegionDisabledException, "RegionDisabledException");
+    var RegionDisabledException = _RegionDisabledException;
+    var _IDPRejectedClaimException = class _IDPRejectedClaimException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPRejectedClaimException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPRejectedClaimException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPRejectedClaimException2.prototype);
+      }
+    };
+    __name2(_IDPRejectedClaimException, "IDPRejectedClaimException");
+    var IDPRejectedClaimException = _IDPRejectedClaimException;
+    var _InvalidIdentityTokenException = class _InvalidIdentityTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidIdentityTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidIdentityTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidIdentityTokenException2.prototype);
+      }
+    };
+    __name2(_InvalidIdentityTokenException, "InvalidIdentityTokenException");
+    var InvalidIdentityTokenException = _InvalidIdentityTokenException;
+    var _IDPCommunicationErrorException = class _IDPCommunicationErrorException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPCommunicationErrorException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPCommunicationErrorException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPCommunicationErrorException2.prototype);
+      }
+    };
+    __name2(_IDPCommunicationErrorException, "IDPCommunicationErrorException");
+    var IDPCommunicationErrorException = _IDPCommunicationErrorException;
+    var _InvalidAuthorizationMessageException = class _InvalidAuthorizationMessageException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidAuthorizationMessageException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidAuthorizationMessageException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidAuthorizationMessageException2.prototype);
+      }
+    };
+    __name2(_InvalidAuthorizationMessageException, "InvalidAuthorizationMessageException");
+    var InvalidAuthorizationMessageException = _InvalidAuthorizationMessageException;
+    var CredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SecretAccessKey && { SecretAccessKey: import_smithy_client4.SENSITIVE_STRING }
+    }), "CredentialsFilterSensitiveLog");
+    var AssumeRoleResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleResponseFilterSensitiveLog");
+    var AssumeRoleWithSAMLRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SAMLAssertion && { SAMLAssertion: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithSAMLRequestFilterSensitiveLog");
+    var AssumeRoleWithSAMLResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithSAMLResponseFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.WebIdentityToken && { WebIdentityToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithWebIdentityRequestFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithWebIdentityResponseFilterSensitiveLog");
+    var GetFederationTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetFederationTokenResponseFilterSensitiveLog");
+    var GetSessionTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetSessionTokenResponseFilterSensitiveLog");
+    var import_core4 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_protocol_http8 = require_dist_cjs2();
+    var se_AssumeRoleCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleRequest(input, context),
+        [_A]: _AR,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleCommand");
+    var se_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithSAMLRequest(input, context),
+        [_A]: _ARWSAML,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithSAMLCommand");
+    var se_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithWebIdentityRequest(input, context),
+        [_A]: _ARWWI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithWebIdentityCommand");
+    var se_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_DecodeAuthorizationMessageRequest(input, context),
+        [_A]: _DAM,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DecodeAuthorizationMessageCommand");
+    var se_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetAccessKeyInfoRequest(input, context),
+        [_A]: _GAKI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetAccessKeyInfoCommand");
+    var se_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetCallerIdentityRequest(input, context),
+        [_A]: _GCI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetCallerIdentityCommand");
+    var se_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetFederationTokenRequest(input, context),
+        [_A]: _GFT,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetFederationTokenCommand");
+    var se_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetSessionTokenRequest(input, context),
+        [_A]: _GST,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetSessionTokenCommand");
+    var de_AssumeRoleCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleResponse(data.AssumeRoleResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleCommand");
+    var de_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithSAMLCommand");
+    var de_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithWebIdentityCommand");
+    var de_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_DecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DecodeAuthorizationMessageCommand");
+    var de_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetAccessKeyInfoCommand");
+    var de_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetCallerIdentityResponse(data.GetCallerIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetCallerIdentityCommand");
+    var de_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetFederationTokenResponse(data.GetFederationTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetFederationTokenCommand");
+    var de_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetSessionTokenResponse(data.GetSessionTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetSessionTokenCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core4.parseXmlErrorBody)(output.body, context)
+      };
+      const errorCode = loadQueryErrorCode(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ExpiredTokenException":
+        case "com.amazonaws.sts#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "MalformedPolicyDocument":
+        case "com.amazonaws.sts#MalformedPolicyDocumentException":
+          throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context);
+        case "PackedPolicyTooLarge":
+        case "com.amazonaws.sts#PackedPolicyTooLargeException":
+          throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context);
+        case "RegionDisabledException":
+        case "com.amazonaws.sts#RegionDisabledException":
+          throw await de_RegionDisabledExceptionRes(parsedOutput, context);
+        case "IDPRejectedClaim":
+        case "com.amazonaws.sts#IDPRejectedClaimException":
+          throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context);
+        case "InvalidIdentityToken":
+        case "com.amazonaws.sts#InvalidIdentityTokenException":
+          throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context);
+        case "IDPCommunicationError":
+        case "com.amazonaws.sts#IDPCommunicationErrorException":
+          throw await de_IDPCommunicationErrorExceptionRes(parsedOutput, context);
+        case "InvalidAuthorizationMessageException":
+        case "com.amazonaws.sts#InvalidAuthorizationMessageException":
+          throw await de_InvalidAuthorizationMessageExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody: parsedBody.Error,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_ExpiredTokenException(body.Error, context);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_IDPCommunicationErrorExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPCommunicationErrorException(body.Error, context);
+      const exception = new IDPCommunicationErrorException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPCommunicationErrorExceptionRes");
+    var de_IDPRejectedClaimExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPRejectedClaimException(body.Error, context);
+      const exception = new IDPRejectedClaimException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPRejectedClaimExceptionRes");
+    var de_InvalidAuthorizationMessageExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidAuthorizationMessageException(body.Error, context);
+      const exception = new InvalidAuthorizationMessageException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidAuthorizationMessageExceptionRes");
+    var de_InvalidIdentityTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidIdentityTokenException(body.Error, context);
+      const exception = new InvalidIdentityTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidIdentityTokenExceptionRes");
+    var de_MalformedPolicyDocumentExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_MalformedPolicyDocumentException(body.Error, context);
+      const exception = new MalformedPolicyDocumentException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MalformedPolicyDocumentExceptionRes");
+    var de_PackedPolicyTooLargeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_PackedPolicyTooLargeException(body.Error, context);
+      const exception = new PackedPolicyTooLargeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_PackedPolicyTooLargeExceptionRes");
+    var de_RegionDisabledExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_RegionDisabledException(body.Error, context);
+      const exception = new RegionDisabledException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_RegionDisabledExceptionRes");
+    var se_AssumeRoleRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b, _c, _d;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_TTK] != null) {
+        const memberEntries = se_tagKeyListType(input[_TTK], context);
+        if (((_c = input[_TTK]) == null ? void 0 : _c.length) === 0) {
+          entries.TransitiveTagKeys = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `TransitiveTagKeys.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_EI] != null) {
+        entries[_EI] = input[_EI];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      if (input[_SI] != null) {
+        entries[_SI] = input[_SI];
+      }
+      if (input[_PC] != null) {
+        const memberEntries = se_ProvidedContextsListType(input[_PC], context);
+        if (((_d = input[_PC]) == null ? void 0 : _d.length) === 0) {
+          entries.ProvidedContexts = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `ProvidedContexts.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_AssumeRoleRequest");
+    var se_AssumeRoleWithSAMLRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_PAr] != null) {
+        entries[_PAr] = input[_PAr];
+      }
+      if (input[_SAMLA] != null) {
+        entries[_SAMLA] = input[_SAMLA];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithSAMLRequest");
+    var se_AssumeRoleWithWebIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_WIT] != null) {
+        entries[_WIT] = input[_WIT];
+      }
+      if (input[_PI] != null) {
+        entries[_PI] = input[_PI];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithWebIdentityRequest");
+    var se_DecodeAuthorizationMessageRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_EM] != null) {
+        entries[_EM] = input[_EM];
+      }
+      return entries;
+    }, "se_DecodeAuthorizationMessageRequest");
+    var se_GetAccessKeyInfoRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_AKI] != null) {
+        entries[_AKI] = input[_AKI];
+      }
+      return entries;
+    }, "se_GetAccessKeyInfoRequest");
+    var se_GetCallerIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      return entries;
+    }, "se_GetCallerIdentityRequest");
+    var se_GetFederationTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b;
+      const entries = {};
+      if (input[_N] != null) {
+        entries[_N] = input[_N];
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_GetFederationTokenRequest");
+    var se_GetSessionTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      return entries;
+    }, "se_GetSessionTokenRequest");
+    var se_policyDescriptorListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_PolicyDescriptorType(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_policyDescriptorListType");
+    var se_PolicyDescriptorType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_a7] != null) {
+        entries[_a7] = input[_a7];
+      }
+      return entries;
+    }, "se_PolicyDescriptorType");
+    var se_ProvidedContext = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_PAro] != null) {
+        entries[_PAro] = input[_PAro];
+      }
+      if (input[_CA] != null) {
+        entries[_CA] = input[_CA];
+      }
+      return entries;
+    }, "se_ProvidedContext");
+    var se_ProvidedContextsListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_ProvidedContext(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_ProvidedContextsListType");
+    var se_Tag = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_K] != null) {
+        entries[_K] = input[_K];
+      }
+      if (input[_Va] != null) {
+        entries[_Va] = input[_Va];
+      }
+      return entries;
+    }, "se_Tag");
+    var se_tagKeyListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        entries[`member.${counter}`] = entry;
+        counter++;
+      }
+      return entries;
+    }, "se_tagKeyListType");
+    var se_tagListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_Tag(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_tagListType");
+    var de_AssumedRoleUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_ARI] != null) {
+        contents[_ARI] = (0, import_smithy_client4.expectString)(output[_ARI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_AssumedRoleUser");
+    var de_AssumeRoleResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleResponse");
+    var de_AssumeRoleWithSAMLResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_S] != null) {
+        contents[_S] = (0, import_smithy_client4.expectString)(output[_S]);
+      }
+      if (output[_ST] != null) {
+        contents[_ST] = (0, import_smithy_client4.expectString)(output[_ST]);
+      }
+      if (output[_I] != null) {
+        contents[_I] = (0, import_smithy_client4.expectString)(output[_I]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_NQ] != null) {
+        contents[_NQ] = (0, import_smithy_client4.expectString)(output[_NQ]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithSAMLResponse");
+    var de_AssumeRoleWithWebIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_SFWIT] != null) {
+        contents[_SFWIT] = (0, import_smithy_client4.expectString)(output[_SFWIT]);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_Pr] != null) {
+        contents[_Pr] = (0, import_smithy_client4.expectString)(output[_Pr]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithWebIdentityResponse");
+    var de_Credentials = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_AKI] != null) {
+        contents[_AKI] = (0, import_smithy_client4.expectString)(output[_AKI]);
+      }
+      if (output[_SAK] != null) {
+        contents[_SAK] = (0, import_smithy_client4.expectString)(output[_SAK]);
+      }
+      if (output[_STe] != null) {
+        contents[_STe] = (0, import_smithy_client4.expectString)(output[_STe]);
+      }
+      if (output[_E] != null) {
+        contents[_E] = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseRfc3339DateTimeWithOffset)(output[_E]));
+      }
+      return contents;
+    }, "de_Credentials");
+    var de_DecodeAuthorizationMessageResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_DM] != null) {
+        contents[_DM] = (0, import_smithy_client4.expectString)(output[_DM]);
+      }
+      return contents;
+    }, "de_DecodeAuthorizationMessageResponse");
+    var de_ExpiredTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_ExpiredTokenException");
+    var de_FederatedUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_FUI] != null) {
+        contents[_FUI] = (0, import_smithy_client4.expectString)(output[_FUI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_FederatedUser");
+    var de_GetAccessKeyInfoResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      return contents;
+    }, "de_GetAccessKeyInfoResponse");
+    var de_GetCallerIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_UI] != null) {
+        contents[_UI] = (0, import_smithy_client4.expectString)(output[_UI]);
+      }
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_GetCallerIdentityResponse");
+    var de_GetFederationTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_FU] != null) {
+        contents[_FU] = de_FederatedUser(output[_FU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      return contents;
+    }, "de_GetFederationTokenResponse");
+    var de_GetSessionTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      return contents;
+    }, "de_GetSessionTokenResponse");
+    var de_IDPCommunicationErrorException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPCommunicationErrorException");
+    var de_IDPRejectedClaimException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPRejectedClaimException");
+    var de_InvalidAuthorizationMessageException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidAuthorizationMessageException");
+    var de_InvalidIdentityTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidIdentityTokenException");
+    var de_MalformedPolicyDocumentException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_MalformedPolicyDocumentException");
+    var de_PackedPolicyTooLargeException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_PackedPolicyTooLargeException");
+    var de_RegionDisabledException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_RegionDisabledException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(STSServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    var SHARED_HEADERS = {
+      "content-type": "application/x-www-form-urlencoded"
+    };
+    var _ = "2011-06-15";
+    var _A = "Action";
+    var _AKI = "AccessKeyId";
+    var _AR = "AssumeRole";
+    var _ARI = "AssumedRoleId";
+    var _ARU = "AssumedRoleUser";
+    var _ARWSAML = "AssumeRoleWithSAML";
+    var _ARWWI = "AssumeRoleWithWebIdentity";
+    var _Ac = "Account";
+    var _Ar = "Arn";
+    var _Au = "Audience";
+    var _C = "Credentials";
+    var _CA = "ContextAssertion";
+    var _DAM = "DecodeAuthorizationMessage";
+    var _DM = "DecodedMessage";
+    var _DS = "DurationSeconds";
+    var _E = "Expiration";
+    var _EI = "ExternalId";
+    var _EM = "EncodedMessage";
+    var _FU = "FederatedUser";
+    var _FUI = "FederatedUserId";
+    var _GAKI = "GetAccessKeyInfo";
+    var _GCI = "GetCallerIdentity";
+    var _GFT = "GetFederationToken";
+    var _GST = "GetSessionToken";
+    var _I = "Issuer";
+    var _K = "Key";
+    var _N = "Name";
+    var _NQ = "NameQualifier";
+    var _P = "Policy";
+    var _PA = "PolicyArns";
+    var _PAr = "PrincipalArn";
+    var _PAro = "ProviderArn";
+    var _PC = "ProvidedContexts";
+    var _PI = "ProviderId";
+    var _PPS = "PackedPolicySize";
+    var _Pr = "Provider";
+    var _RA = "RoleArn";
+    var _RSN = "RoleSessionName";
+    var _S = "Subject";
+    var _SAK = "SecretAccessKey";
+    var _SAMLA = "SAMLAssertion";
+    var _SFWIT = "SubjectFromWebIdentityToken";
+    var _SI = "SourceIdentity";
+    var _SN = "SerialNumber";
+    var _ST = "SubjectType";
+    var _STe = "SessionToken";
+    var _T = "Tags";
+    var _TC = "TokenCode";
+    var _TTK = "TransitiveTagKeys";
+    var _UI = "UserId";
+    var _V = "Version";
+    var _Va = "Value";
+    var _WIT = "WebIdentityToken";
+    var _a7 = "arn";
+    var _m = "message";
+    var buildFormUrlencodedString = /* @__PURE__ */ __name2((formEntries) => Object.entries(formEntries).map(([key, value]) => (0, import_smithy_client4.extendedEncodeURIComponent)(key) + "=" + (0, import_smithy_client4.extendedEncodeURIComponent)(value)).join("&"), "buildFormUrlencodedString");
+    var loadQueryErrorCode = /* @__PURE__ */ __name2((output, data) => {
+      var _a22;
+      if (((_a22 = data.Error) == null ? void 0 : _a22.Code) !== void 0) {
+        return data.Error.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    }, "loadQueryErrorCode");
+    var _AssumeRoleCommand = class _AssumeRoleCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRole", {}).n("STSClient", "AssumeRoleCommand").f(void 0, AssumeRoleResponseFilterSensitiveLog).ser(se_AssumeRoleCommand).de(de_AssumeRoleCommand).build() {
+    };
+    __name2(_AssumeRoleCommand, "AssumeRoleCommand");
+    var AssumeRoleCommand = _AssumeRoleCommand;
+    var import_EndpointParameters2 = require_EndpointParameters();
+    var _AssumeRoleWithSAMLCommand = class _AssumeRoleWithSAMLCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters2.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithSAML", {}).n("STSClient", "AssumeRoleWithSAMLCommand").f(AssumeRoleWithSAMLRequestFilterSensitiveLog, AssumeRoleWithSAMLResponseFilterSensitiveLog).ser(se_AssumeRoleWithSAMLCommand).de(de_AssumeRoleWithSAMLCommand).build() {
+    };
+    __name2(_AssumeRoleWithSAMLCommand, "AssumeRoleWithSAMLCommand");
+    var AssumeRoleWithSAMLCommand = _AssumeRoleWithSAMLCommand;
+    var import_EndpointParameters3 = require_EndpointParameters();
+    var _AssumeRoleWithWebIdentityCommand = class _AssumeRoleWithWebIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters3.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithWebIdentity", {}).n("STSClient", "AssumeRoleWithWebIdentityCommand").f(AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog).ser(se_AssumeRoleWithWebIdentityCommand).de(de_AssumeRoleWithWebIdentityCommand).build() {
+    };
+    __name2(_AssumeRoleWithWebIdentityCommand, "AssumeRoleWithWebIdentityCommand");
+    var AssumeRoleWithWebIdentityCommand = _AssumeRoleWithWebIdentityCommand;
+    var import_EndpointParameters4 = require_EndpointParameters();
+    var _DecodeAuthorizationMessageCommand = class _DecodeAuthorizationMessageCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters4.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "DecodeAuthorizationMessage", {}).n("STSClient", "DecodeAuthorizationMessageCommand").f(void 0, void 0).ser(se_DecodeAuthorizationMessageCommand).de(de_DecodeAuthorizationMessageCommand).build() {
+    };
+    __name2(_DecodeAuthorizationMessageCommand, "DecodeAuthorizationMessageCommand");
+    var DecodeAuthorizationMessageCommand = _DecodeAuthorizationMessageCommand;
+    var import_EndpointParameters5 = require_EndpointParameters();
+    var _GetAccessKeyInfoCommand = class _GetAccessKeyInfoCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters5.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetAccessKeyInfo", {}).n("STSClient", "GetAccessKeyInfoCommand").f(void 0, void 0).ser(se_GetAccessKeyInfoCommand).de(de_GetAccessKeyInfoCommand).build() {
+    };
+    __name2(_GetAccessKeyInfoCommand, "GetAccessKeyInfoCommand");
+    var GetAccessKeyInfoCommand = _GetAccessKeyInfoCommand;
+    var import_EndpointParameters6 = require_EndpointParameters();
+    var _GetCallerIdentityCommand = class _GetCallerIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters6.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetCallerIdentity", {}).n("STSClient", "GetCallerIdentityCommand").f(void 0, void 0).ser(se_GetCallerIdentityCommand).de(de_GetCallerIdentityCommand).build() {
+    };
+    __name2(_GetCallerIdentityCommand, "GetCallerIdentityCommand");
+    var GetCallerIdentityCommand = _GetCallerIdentityCommand;
+    var import_EndpointParameters7 = require_EndpointParameters();
+    var _GetFederationTokenCommand = class _GetFederationTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters7.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetFederationToken", {}).n("STSClient", "GetFederationTokenCommand").f(void 0, GetFederationTokenResponseFilterSensitiveLog).ser(se_GetFederationTokenCommand).de(de_GetFederationTokenCommand).build() {
+    };
+    __name2(_GetFederationTokenCommand, "GetFederationTokenCommand");
+    var GetFederationTokenCommand = _GetFederationTokenCommand;
+    var import_EndpointParameters8 = require_EndpointParameters();
+    var _GetSessionTokenCommand = class _GetSessionTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters8.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetSessionToken", {}).n("STSClient", "GetSessionTokenCommand").f(void 0, GetSessionTokenResponseFilterSensitiveLog).ser(se_GetSessionTokenCommand).de(de_GetSessionTokenCommand).build() {
+    };
+    __name2(_GetSessionTokenCommand, "GetSessionTokenCommand");
+    var GetSessionTokenCommand = _GetSessionTokenCommand;
+    var import_STSClient = require_STSClient();
+    var commands = {
+      AssumeRoleCommand,
+      AssumeRoleWithSAMLCommand,
+      AssumeRoleWithWebIdentityCommand,
+      DecodeAuthorizationMessageCommand,
+      GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand,
+      GetFederationTokenCommand,
+      GetSessionTokenCommand
+    };
+    var _STS = class _STS extends import_STSClient.STSClient {
+    };
+    __name2(_STS, "STS");
+    var STS = _STS;
+    (0, import_smithy_client4.createAggregatedClient)(commands, STS);
+    var import_EndpointParameters9 = require_EndpointParameters();
+    var ASSUME_ROLE_DEFAULT_REGION = "us-east-1";
+    var getAccountIdFromAssumedRoleUser = /* @__PURE__ */ __name2((assumedRoleUser) => {
+      if (typeof (assumedRoleUser == null ? void 0 : assumedRoleUser.Arn) === "string") {
+        const arnComponents = assumedRoleUser.Arn.split(":");
+        if (arnComponents.length > 4 && arnComponents[4] !== "") {
+          return arnComponents[4];
+        }
+      }
+      return void 0;
+    }, "getAccountIdFromAssumedRoleUser");
+    var resolveRegion = /* @__PURE__ */ __name2(async (_region, _parentRegion, credentialProviderLogger) => {
+      var _a22;
+      const region = typeof _region === "function" ? await _region() : _region;
+      const parentRegion = typeof _parentRegion === "function" ? await _parentRegion() : _parentRegion;
+      (_a22 = credentialProviderLogger == null ? void 0 : credentialProviderLogger.debug) == null ? void 0 : _a22.call(
+        credentialProviderLogger,
+        "@aws-sdk/client-sts::resolveRegion",
+        "accepting first of:",
+        `${region} (provider)`,
+        `${parentRegion} (parent client)`,
+        `${ASSUME_ROLE_DEFAULT_REGION} (STS default)`
+      );
+      return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION;
+    }, "resolveRegion");
+    var getDefaultRoleAssumer = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      let closureSourceCreds;
+      return async (sourceCreds, params) => {
+        var _a22, _b, _c;
+        closureSourceCreds = sourceCreds;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            // A hack to make sts client uses the credential in current closure.
+            credentialDefaultProvider: () => async () => closureSourceCreds,
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      return async (params) => {
+        var _a22, _b, _c;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleWithWebIdentityCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumerWithWebIdentity");
+    var isH2 = /* @__PURE__ */ __name2((requestHandler) => {
+      var _a22;
+      return ((_a22 = requestHandler == null ? void 0 : requestHandler.metadata) == null ? void 0 : _a22.handlerProtocol) === "h2";
+    }, "isH2");
+    var import_STSClient2 = require_STSClient();
+    var getCustomizableStsClientCtor = /* @__PURE__ */ __name2((baseCtor, customizations) => {
+      var _a22;
+      if (!customizations)
+        return baseCtor;
+      else
+        return _a22 = class extends baseCtor {
+          constructor(config) {
+            super(config);
+            for (const customization of customizations) {
+              this.middlewareStack.use(customization);
+            }
+          }
+        }, __name2(_a22, "CustomizableSTSClient"), _a22;
+    }, "getCustomizableStsClientCtor");
+    var getDefaultRoleAssumer2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumer(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumerWithWebIdentity(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumerWithWebIdentity");
+    var decorateDefaultCredentialProvider = /* @__PURE__ */ __name2((provider) => (input) => provider({
+      roleAssumer: getDefaultRoleAssumer2(input),
+      roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity2(input),
+      ...input
+    }), "decorateDefaultCredentialProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js
+var require_dist_cjs49 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromProcess: () => fromProcess
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_child_process3 = require("child_process");
+    var import_util7 = require("util");
+    var getValidatedProcessCredentials = /* @__PURE__ */ __name2((profileName, data, profiles) => {
+      var _a7;
+      if (data.Version !== 1) {
+        throw Error(`Profile ${profileName} credential_process did not return Version 1.`);
+      }
+      if (data.AccessKeyId === void 0 || data.SecretAccessKey === void 0) {
+        throw Error(`Profile ${profileName} credential_process returned invalid credentials.`);
+      }
+      if (data.Expiration) {
+        const currentTime = /* @__PURE__ */ new Date();
+        const expireTime = new Date(data.Expiration);
+        if (expireTime < currentTime) {
+          throw Error(`Profile ${profileName} credential_process returned expired credentials.`);
+        }
+      }
+      let accountId = data.AccountId;
+      if (!accountId && ((_a7 = profiles == null ? void 0 : profiles[profileName]) == null ? void 0 : _a7.aws_account_id)) {
+        accountId = profiles[profileName].aws_account_id;
+      }
+      return {
+        accessKeyId: data.AccessKeyId,
+        secretAccessKey: data.SecretAccessKey,
+        ...data.SessionToken && { sessionToken: data.SessionToken },
+        ...data.Expiration && { expiration: new Date(data.Expiration) },
+        ...data.CredentialScope && { credentialScope: data.CredentialScope },
+        ...accountId && { accountId }
+      };
+    }, "getValidatedProcessCredentials");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, logger) => {
+      const profile = profiles[profileName];
+      if (profiles[profileName]) {
+        const credentialProcess = profile["credential_process"];
+        if (credentialProcess !== void 0) {
+          const execPromise = (0, import_util7.promisify)(import_child_process3.exec);
+          try {
+            const { stdout } = await execPromise(credentialProcess);
+            let data;
+            try {
+              data = JSON.parse(stdout.trim());
+            } catch {
+              throw Error(`Profile ${profileName} credential_process returned invalid JSON.`);
+            }
+            return getValidatedProcessCredentials(profileName, data, profiles);
+          } catch (error) {
+            throw new import_property_provider2.CredentialsProviderError(error.message, { logger });
+          }
+        } else {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} did not contain credential_process.`, { logger });
+        }
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} could not be found in shared credentials file.`, {
+          logger
+        });
+      }
+    }, "resolveProcessCredentials");
+    var fromProcess = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-process - fromProcess");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProcessCredentials((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init.logger);
+    }, "fromProcess");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js
+var require_fromWebToken = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    });
+    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
+      if (mod && mod.__esModule) return mod;
+      var result = {};
+      if (mod != null) {
+        for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k);
+      }
+      __setModuleDefault2(result, mod);
+      return result;
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromWebToken = void 0;
+    var fromWebToken2 = (init) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromWebToken");
+      const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds } = init;
+      let { roleAssumerWithWebIdentity } = init;
+      if (!roleAssumerWithWebIdentity) {
+        const { getDefaultRoleAssumerWithWebIdentity } = await Promise.resolve().then(() => __importStar2(require_dist_cjs48()));
+        roleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity({
+          ...init.clientConfig,
+          credentialProviderLogger: init.logger,
+          parentClientConfig: init.parentClientConfig
+        }, init.clientPlugins);
+      }
+      return roleAssumerWithWebIdentity({
+        RoleArn: roleArn,
+        RoleSessionName: roleSessionName ?? `aws-sdk-js-session-${Date.now()}`,
+        WebIdentityToken: webIdentityToken,
+        ProviderId: providerId,
+        PolicyArns: policyArns,
+        Policy: policy,
+        DurationSeconds: durationSeconds
+      });
+    };
+    exports2.fromWebToken = fromWebToken2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js
+var require_fromTokenFile = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromTokenFile = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var fs_1 = require("fs");
+    var fromWebToken_1 = require_fromWebToken();
+    var ENV_TOKEN_FILE = "AWS_WEB_IDENTITY_TOKEN_FILE";
+    var ENV_ROLE_ARN = "AWS_ROLE_ARN";
+    var ENV_ROLE_SESSION_NAME = "AWS_ROLE_SESSION_NAME";
+    var fromTokenFile2 = (init = {}) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromTokenFile");
+      const webIdentityTokenFile = init?.webIdentityTokenFile ?? process.env[ENV_TOKEN_FILE];
+      const roleArn = init?.roleArn ?? process.env[ENV_ROLE_ARN];
+      const roleSessionName = init?.roleSessionName ?? process.env[ENV_ROLE_SESSION_NAME];
+      if (!webIdentityTokenFile || !roleArn) {
+        throw new property_provider_1.CredentialsProviderError("Web identity configuration not specified", {
+          logger: init.logger
+        });
+      }
+      return (0, fromWebToken_1.fromWebToken)({
+        ...init,
+        webIdentityToken: (0, fs_1.readFileSync)(webIdentityTokenFile, { encoding: "ascii" }),
+        roleArn,
+        roleSessionName
+      })();
+    };
+    exports2.fromTokenFile = fromTokenFile2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js
+var require_dist_cjs50 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromTokenFile(), module2.exports);
+    __reExport2(src_exports, require_fromWebToken(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js
+var require_dist_cjs51 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromIni: () => fromIni
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var resolveCredentialSource = /* @__PURE__ */ __name2((credentialSource, profileName, logger) => {
+      const sourceProvidersMap = {
+        EcsContainer: async (options) => {
+          const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+          const { fromContainerMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer");
+          return (0, import_property_provider2.chain)(fromHttp(options ?? {}), fromContainerMetadata(options));
+        },
+        Ec2InstanceMetadata: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata");
+          const { fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          return fromInstanceMetadata(options);
+        },
+        Environment: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Environment");
+          const { fromEnv } = await Promise.resolve().then(() => __toESM2(require_dist_cjs36()));
+          return fromEnv(options);
+        }
+      };
+      if (credentialSource in sourceProvidersMap) {
+        return sourceProvidersMap[credentialSource];
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Unsupported credential source in profile ${profileName}. Got ${credentialSource}, expected EcsContainer or Ec2InstanceMetadata or Environment.`,
+          { logger }
+        );
+      }
+    }, "resolveCredentialSource");
+    var isAssumeRoleProfile = /* @__PURE__ */ __name2((arg, { profile = "default", logger } = {}) => {
+      return Boolean(arg) && typeof arg === "object" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 && ["undefined", "string"].indexOf(typeof arg.external_id) > -1 && ["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 && (isAssumeRoleWithSourceProfile(arg, { profile, logger }) || isCredentialSourceProfile(arg, { profile, logger }));
+    }, "isAssumeRoleProfile");
+    var isAssumeRoleWithSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withSourceProfile = typeof arg.source_profile === "string" && typeof arg.credential_source === "undefined";
+      if (withSourceProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isAssumeRoleWithSourceProfile source_profile=${arg.source_profile}`);
+      }
+      return withSourceProfile;
+    }, "isAssumeRoleWithSourceProfile");
+    var isCredentialSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withProviderProfile = typeof arg.credential_source === "string" && typeof arg.source_profile === "undefined";
+      if (withProviderProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isCredentialSourceProfile credential_source=${arg.credential_source}`);
+      }
+      return withProviderProfile;
+    }, "isCredentialSourceProfile");
+    var resolveAssumeRoleCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      var _a7, _b;
+      (_a7 = options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)");
+      const data = profiles[profileName];
+      if (!options.roleAssumer) {
+        const { getDefaultRoleAssumer } = await Promise.resolve().then(() => __toESM2(require_dist_cjs48()));
+        options.roleAssumer = getDefaultRoleAssumer(
+          {
+            ...options.clientConfig,
+            credentialProviderLogger: options.logger,
+            parentClientConfig: options == null ? void 0 : options.parentClientConfig
+          },
+          options.clientPlugins
+        );
+      }
+      const { source_profile } = data;
+      if (source_profile && source_profile in visitedProfiles) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Detected a cycle attempting to resolve credentials for profile ${(0, import_shared_ini_file_loader.getProfileName)(options)}. Profiles visited: ` + Object.keys(visitedProfiles).join(", "),
+          { logger: options.logger }
+        );
+      }
+      (_b = options.logger) == null ? void 0 : _b.debug(
+        `@aws-sdk/credential-provider-ini - finding credential resolver using ${source_profile ? `source_profile=[${source_profile}]` : `profile=[${profileName}]`}`
+      );
+      const sourceCredsProvider = source_profile ? resolveProfileData(
+        source_profile,
+        {
+          ...profiles,
+          [source_profile]: {
+            ...profiles[source_profile],
+            // This assigns the role_arn of the "root" profile
+            // to the credential_source profile so this recursive call knows
+            // what role to assume.
+            role_arn: data.role_arn ?? profiles[source_profile].role_arn
+          }
+        },
+        options,
+        {
+          ...visitedProfiles,
+          [source_profile]: true
+        }
+      ) : (await resolveCredentialSource(data.credential_source, profileName, options.logger)(options))();
+      const params = {
+        RoleArn: data.role_arn,
+        RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`,
+        ExternalId: data.external_id,
+        DurationSeconds: parseInt(data.duration_seconds || "3600", 10)
+      };
+      const { mfa_serial } = data;
+      if (mfa_serial) {
+        if (!options.mfaCodeProvider) {
+          throw new import_property_provider2.CredentialsProviderError(
+            `Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`,
+            { logger: options.logger, tryNextLink: false }
+          );
+        }
+        params.SerialNumber = mfa_serial;
+        params.TokenCode = await options.mfaCodeProvider(mfa_serial);
+      }
+      const sourceCreds = await sourceCredsProvider;
+      return options.roleAssumer(sourceCreds, params);
+    }, "resolveAssumeRoleCredentials");
+    var isProcessProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string", "isProcessProfile");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (options, profile) => Promise.resolve().then(() => __toESM2(require_dist_cjs49())).then(
+      ({ fromProcess }) => fromProcess({
+        ...options,
+        profile
+      })()
+    ), "resolveProcessCredentials");
+    var resolveSsoCredentials = /* @__PURE__ */ __name2(async (profile, options = {}) => {
+      const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+      return fromSSO({
+        profile,
+        logger: options.logger
+      })();
+    }, "resolveSsoCredentials");
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var isStaticCredsProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.aws_access_key_id === "string" && typeof arg.aws_secret_access_key === "string" && ["undefined", "string"].indexOf(typeof arg.aws_session_token) > -1 && ["undefined", "string"].indexOf(typeof arg.aws_account_id) > -1, "isStaticCredsProfile");
+    var resolveStaticCredentials = /* @__PURE__ */ __name2((profile, options) => {
+      var _a7;
+      (_a7 = options == null ? void 0 : options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveStaticCredentials");
+      return Promise.resolve({
+        accessKeyId: profile.aws_access_key_id,
+        secretAccessKey: profile.aws_secret_access_key,
+        sessionToken: profile.aws_session_token,
+        ...profile.aws_credential_scope && { credentialScope: profile.aws_credential_scope },
+        ...profile.aws_account_id && { accountId: profile.aws_account_id }
+      });
+    }, "resolveStaticCredentials");
+    var isWebIdentityProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1, "isWebIdentityProfile");
+    var resolveWebIdentityCredentials = /* @__PURE__ */ __name2(async (profile, options) => Promise.resolve().then(() => __toESM2(require_dist_cjs50())).then(
+      ({ fromTokenFile: fromTokenFile2 }) => fromTokenFile2({
+        webIdentityTokenFile: profile.web_identity_token_file,
+        roleArn: profile.role_arn,
+        roleSessionName: profile.role_session_name,
+        roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,
+        logger: options.logger,
+        parentClientConfig: options.parentClientConfig
+      })()
+    ), "resolveWebIdentityCredentials");
+    var resolveProfileData = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      const data = profiles[profileName];
+      if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {
+        return resolveAssumeRoleCredentials(profileName, profiles, options, visitedProfiles);
+      }
+      if (isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isWebIdentityProfile(data)) {
+        return resolveWebIdentityCredentials(data, options);
+      }
+      if (isProcessProfile(data)) {
+        return resolveProcessCredentials(options, profileName);
+      }
+      if (isSsoProfile(data)) {
+        return await resolveSsoCredentials(profileName, options);
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`,
+        { logger: options.logger }
+      );
+    }, "resolveProfileData");
+    var fromIni = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - fromIni");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProfileData((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init);
+    }, "fromIni");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js
+var require_dist_cjs52 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      credentialsTreatedAsExpired: () => credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh: () => credentialsWillNeedRefresh,
+      defaultProvider: () => defaultProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_credential_provider_env = require_dist_cjs36();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var remoteProvider = /* @__PURE__ */ __name2(async (init) => {
+      var _a7, _b;
+      const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+      if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {
+        (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");
+        const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+        return (0, import_property_provider2.chain)(fromHttp(init), fromContainerMetadata(init));
+      }
+      if (process.env[ENV_IMDS_DISABLED]) {
+        return async () => {
+          throw new import_property_provider2.CredentialsProviderError("EC2 Instance Metadata Service access disabled", { logger: init.logger });
+        };
+      }
+      (_b = init.logger) == null ? void 0 : _b.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata");
+      return fromInstanceMetadata(init);
+    }, "remoteProvider");
+    var multipleCredentialSourceWarningEmitted = false;
+    var defaultProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        async () => {
+          var _a7, _b, _c, _d;
+          const profile = init.profile ?? process.env[import_shared_ini_file_loader.ENV_PROFILE];
+          if (profile) {
+            const envStaticCredentialsAreSet = process.env[import_credential_provider_env.ENV_KEY] && process.env[import_credential_provider_env.ENV_SECRET];
+            if (envStaticCredentialsAreSet) {
+              if (!multipleCredentialSourceWarningEmitted) {
+                const warnFn = ((_a7 = init.logger) == null ? void 0 : _a7.warn) && ((_c = (_b = init.logger) == null ? void 0 : _b.constructor) == null ? void 0 : _c.name) !== "NoOpLogger" ? init.logger.warn : console.warn;
+                warnFn(
+                  `@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:
+    Multiple credential sources detected: 
+    Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.
+    This SDK will proceed with the AWS_PROFILE value.
+    
+    However, a future version may change this behavior to prefer the ENV static credentials.
+    Please ensure that your environment only sets either the AWS_PROFILE or the
+    AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
+`
+                );
+                multipleCredentialSourceWarningEmitted = true;
+              }
+            }
+            throw new import_property_provider2.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.", {
+              logger: init.logger,
+              tryNextLink: true
+            });
+          }
+          (_d = init.logger) == null ? void 0 : _d.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv");
+          return (0, import_credential_provider_env.fromEnv)(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");
+          const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+          if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+            throw new import_property_provider2.CredentialsProviderError(
+              "Skipping SSO provider in default chain (inputs do not include SSO fields).",
+              { logger: init.logger }
+            );
+          }
+          const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+          return fromSSO(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");
+          const { fromIni } = await Promise.resolve().then(() => __toESM2(require_dist_cjs51()));
+          return fromIni(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");
+          const { fromProcess } = await Promise.resolve().then(() => __toESM2(require_dist_cjs49()));
+          return fromProcess(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");
+          const { fromTokenFile: fromTokenFile2 } = await Promise.resolve().then(() => __toESM2(require_dist_cjs50()));
+          return fromTokenFile2(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider");
+          return (await remoteProvider(init))();
+        },
+        async () => {
+          throw new import_property_provider2.CredentialsProviderError("Could not load credentials from any providers", {
+            tryNextLink: false,
+            logger: init.logger
+          });
+        }
+      ),
+      credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh
+    ), "defaultProvider");
+    var credentialsWillNeedRefresh = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0, "credentialsWillNeedRefresh");
+    var credentialsTreatedAsExpired = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5, "credentialsTreatedAsExpired");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js
+var require_ruleset4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var t = "required";
+    var u = "fn";
+    var v = "argv";
+    var w = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = { [t]: false, "type": "String" };
+    var i = { [t]: true, "default": false, "type": "Boolean" };
+    var j = { [w]: "Endpoint" };
+    var k = { [u]: c, [v]: [{ [w]: "UseFIPS" }, true] };
+    var l = { [u]: c, [v]: [{ [w]: "UseDualStack" }, true] };
+    var m = {};
+    var n = { [w]: "Region" };
+    var o = { [u]: "getAttr", [v]: [{ [w]: g }, "supportsFIPS"] };
+    var p = { [u]: c, [v]: [true, { [u]: "getAttr", [v]: [{ [w]: g }, "supportsDualStack"] }] };
+    var q = [k];
+    var r = [l];
+    var s = [n];
+    var _data = { version: "1.0", parameters: { Region: h, UseDualStack: i, UseFIPS: i, Endpoint: h }, rules: [{ conditions: [{ [u]: b, [v]: [j] }], rules: [{ conditions: q, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: r, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: j, properties: m, headers: m }, type: e }], type: f }, { conditions: [{ [u]: b, [v]: s }], rules: [{ conditions: [{ [u]: "aws.partition", [v]: s, assign: g }], rules: [{ conditions: [k, l], rules: [{ conditions: [{ [u]: c, [v]: [a, o] }, p], rules: [{ endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: q, rules: [{ conditions: [{ [u]: c, [v]: [o, a] }], rules: [{ conditions: [{ [u]: "stringEquals", [v]: [n, "us-gov-west-1"] }], endpoint: { url: "https://states.us-gov-west-1.amazonaws.com", properties: m, headers: m }, type: e }, { endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: r, rules: [{ conditions: [p], rules: [{ endpoint: { url: "https://states.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://states.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset4();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider();
+    var endpointResolver_1 = require_endpointResolver4();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2016-11-23",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSFNHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SFN",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js
+var require_runtimeConfig4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared4();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js
+var require_dist_cjs53 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ActivityAlreadyExists: () => ActivityAlreadyExists,
+      ActivityDoesNotExist: () => ActivityDoesNotExist,
+      ActivityFailedEventDetailsFilterSensitiveLog: () => ActivityFailedEventDetailsFilterSensitiveLog,
+      ActivityLimitExceeded: () => ActivityLimitExceeded,
+      ActivityScheduleFailedEventDetailsFilterSensitiveLog: () => ActivityScheduleFailedEventDetailsFilterSensitiveLog,
+      ActivityScheduledEventDetailsFilterSensitiveLog: () => ActivityScheduledEventDetailsFilterSensitiveLog,
+      ActivitySucceededEventDetailsFilterSensitiveLog: () => ActivitySucceededEventDetailsFilterSensitiveLog,
+      ActivityTimedOutEventDetailsFilterSensitiveLog: () => ActivityTimedOutEventDetailsFilterSensitiveLog,
+      ActivityWorkerLimitExceeded: () => ActivityWorkerLimitExceeded,
+      ConflictException: () => ConflictException,
+      CreateActivityCommand: () => CreateActivityCommand,
+      CreateStateMachineAliasCommand: () => CreateStateMachineAliasCommand,
+      CreateStateMachineAliasInputFilterSensitiveLog: () => CreateStateMachineAliasInputFilterSensitiveLog,
+      CreateStateMachineCommand: () => CreateStateMachineCommand,
+      CreateStateMachineInputFilterSensitiveLog: () => CreateStateMachineInputFilterSensitiveLog,
+      DeleteActivityCommand: () => DeleteActivityCommand,
+      DeleteStateMachineAliasCommand: () => DeleteStateMachineAliasCommand,
+      DeleteStateMachineCommand: () => DeleteStateMachineCommand,
+      DeleteStateMachineVersionCommand: () => DeleteStateMachineVersionCommand,
+      DescribeActivityCommand: () => DescribeActivityCommand,
+      DescribeExecutionCommand: () => DescribeExecutionCommand,
+      DescribeExecutionOutputFilterSensitiveLog: () => DescribeExecutionOutputFilterSensitiveLog,
+      DescribeMapRunCommand: () => DescribeMapRunCommand,
+      DescribeStateMachineAliasCommand: () => DescribeStateMachineAliasCommand,
+      DescribeStateMachineAliasOutputFilterSensitiveLog: () => DescribeStateMachineAliasOutputFilterSensitiveLog,
+      DescribeStateMachineCommand: () => DescribeStateMachineCommand,
+      DescribeStateMachineForExecutionCommand: () => DescribeStateMachineForExecutionCommand,
+      DescribeStateMachineForExecutionOutputFilterSensitiveLog: () => DescribeStateMachineForExecutionOutputFilterSensitiveLog,
+      DescribeStateMachineOutputFilterSensitiveLog: () => DescribeStateMachineOutputFilterSensitiveLog,
+      EncryptionType: () => EncryptionType,
+      ExecutionAbortedEventDetailsFilterSensitiveLog: () => ExecutionAbortedEventDetailsFilterSensitiveLog,
+      ExecutionAlreadyExists: () => ExecutionAlreadyExists,
+      ExecutionDoesNotExist: () => ExecutionDoesNotExist,
+      ExecutionFailedEventDetailsFilterSensitiveLog: () => ExecutionFailedEventDetailsFilterSensitiveLog,
+      ExecutionLimitExceeded: () => ExecutionLimitExceeded,
+      ExecutionNotRedrivable: () => ExecutionNotRedrivable,
+      ExecutionRedriveFilter: () => ExecutionRedriveFilter,
+      ExecutionRedriveStatus: () => ExecutionRedriveStatus,
+      ExecutionStartedEventDetailsFilterSensitiveLog: () => ExecutionStartedEventDetailsFilterSensitiveLog,
+      ExecutionStatus: () => ExecutionStatus,
+      ExecutionSucceededEventDetailsFilterSensitiveLog: () => ExecutionSucceededEventDetailsFilterSensitiveLog,
+      ExecutionTimedOutEventDetailsFilterSensitiveLog: () => ExecutionTimedOutEventDetailsFilterSensitiveLog,
+      GetActivityTaskCommand: () => GetActivityTaskCommand,
+      GetActivityTaskOutputFilterSensitiveLog: () => GetActivityTaskOutputFilterSensitiveLog,
+      GetExecutionHistoryCommand: () => GetExecutionHistoryCommand,
+      GetExecutionHistoryOutputFilterSensitiveLog: () => GetExecutionHistoryOutputFilterSensitiveLog,
+      HistoryEventFilterSensitiveLog: () => HistoryEventFilterSensitiveLog,
+      HistoryEventType: () => HistoryEventType,
+      IncludedData: () => IncludedData,
+      InspectionDataFilterSensitiveLog: () => InspectionDataFilterSensitiveLog,
+      InspectionLevel: () => InspectionLevel,
+      InvalidArn: () => InvalidArn,
+      InvalidDefinition: () => InvalidDefinition,
+      InvalidEncryptionConfiguration: () => InvalidEncryptionConfiguration,
+      InvalidExecutionInput: () => InvalidExecutionInput,
+      InvalidLoggingConfiguration: () => InvalidLoggingConfiguration,
+      InvalidName: () => InvalidName,
+      InvalidOutput: () => InvalidOutput,
+      InvalidToken: () => InvalidToken,
+      InvalidTracingConfiguration: () => InvalidTracingConfiguration,
+      KmsAccessDeniedException: () => KmsAccessDeniedException,
+      KmsInvalidStateException: () => KmsInvalidStateException,
+      KmsKeyState: () => KmsKeyState,
+      KmsThrottlingException: () => KmsThrottlingException,
+      LambdaFunctionFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduledEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduledEventDetailsFilterSensitiveLog,
+      LambdaFunctionStartFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionStartFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionSucceededEventDetailsFilterSensitiveLog: () => LambdaFunctionSucceededEventDetailsFilterSensitiveLog,
+      LambdaFunctionTimedOutEventDetailsFilterSensitiveLog: () => LambdaFunctionTimedOutEventDetailsFilterSensitiveLog,
+      ListActivitiesCommand: () => ListActivitiesCommand,
+      ListExecutionsCommand: () => ListExecutionsCommand,
+      ListMapRunsCommand: () => ListMapRunsCommand,
+      ListStateMachineAliasesCommand: () => ListStateMachineAliasesCommand,
+      ListStateMachineVersionsCommand: () => ListStateMachineVersionsCommand,
+      ListStateMachinesCommand: () => ListStateMachinesCommand,
+      ListTagsForResourceCommand: () => ListTagsForResourceCommand,
+      LogLevel: () => LogLevel,
+      MapRunFailedEventDetailsFilterSensitiveLog: () => MapRunFailedEventDetailsFilterSensitiveLog,
+      MapRunStatus: () => MapRunStatus,
+      MissingRequiredParameter: () => MissingRequiredParameter,
+      PublishStateMachineVersionCommand: () => PublishStateMachineVersionCommand,
+      PublishStateMachineVersionInputFilterSensitiveLog: () => PublishStateMachineVersionInputFilterSensitiveLog,
+      RedriveExecutionCommand: () => RedriveExecutionCommand,
+      ResourceNotFound: () => ResourceNotFound,
+      SFN: () => SFN2,
+      SFNClient: () => SFNClient,
+      SFNServiceException: () => SFNServiceException,
+      SendTaskFailureCommand: () => SendTaskFailureCommand,
+      SendTaskFailureInputFilterSensitiveLog: () => SendTaskFailureInputFilterSensitiveLog,
+      SendTaskHeartbeatCommand: () => SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand: () => SendTaskSuccessCommand,
+      SendTaskSuccessInputFilterSensitiveLog: () => SendTaskSuccessInputFilterSensitiveLog,
+      ServiceQuotaExceededException: () => ServiceQuotaExceededException,
+      StartExecutionCommand: () => StartExecutionCommand,
+      StartExecutionInputFilterSensitiveLog: () => StartExecutionInputFilterSensitiveLog,
+      StartSyncExecutionCommand: () => StartSyncExecutionCommand,
+      StartSyncExecutionInputFilterSensitiveLog: () => StartSyncExecutionInputFilterSensitiveLog,
+      StartSyncExecutionOutputFilterSensitiveLog: () => StartSyncExecutionOutputFilterSensitiveLog,
+      StateEnteredEventDetailsFilterSensitiveLog: () => StateEnteredEventDetailsFilterSensitiveLog,
+      StateExitedEventDetailsFilterSensitiveLog: () => StateExitedEventDetailsFilterSensitiveLog,
+      StateMachineAlreadyExists: () => StateMachineAlreadyExists,
+      StateMachineDeleting: () => StateMachineDeleting,
+      StateMachineDoesNotExist: () => StateMachineDoesNotExist,
+      StateMachineLimitExceeded: () => StateMachineLimitExceeded,
+      StateMachineStatus: () => StateMachineStatus,
+      StateMachineType: () => StateMachineType,
+      StateMachineTypeNotSupported: () => StateMachineTypeNotSupported,
+      StopExecutionCommand: () => StopExecutionCommand,
+      StopExecutionInputFilterSensitiveLog: () => StopExecutionInputFilterSensitiveLog,
+      SyncExecutionStatus: () => SyncExecutionStatus,
+      TagResourceCommand: () => TagResourceCommand,
+      TaskDoesNotExist: () => TaskDoesNotExist,
+      TaskFailedEventDetailsFilterSensitiveLog: () => TaskFailedEventDetailsFilterSensitiveLog,
+      TaskScheduledEventDetailsFilterSensitiveLog: () => TaskScheduledEventDetailsFilterSensitiveLog,
+      TaskStartFailedEventDetailsFilterSensitiveLog: () => TaskStartFailedEventDetailsFilterSensitiveLog,
+      TaskSubmitFailedEventDetailsFilterSensitiveLog: () => TaskSubmitFailedEventDetailsFilterSensitiveLog,
+      TaskSubmittedEventDetailsFilterSensitiveLog: () => TaskSubmittedEventDetailsFilterSensitiveLog,
+      TaskSucceededEventDetailsFilterSensitiveLog: () => TaskSucceededEventDetailsFilterSensitiveLog,
+      TaskTimedOut: () => TaskTimedOut,
+      TaskTimedOutEventDetailsFilterSensitiveLog: () => TaskTimedOutEventDetailsFilterSensitiveLog,
+      TestExecutionStatus: () => TestExecutionStatus,
+      TestStateCommand: () => TestStateCommand,
+      TestStateInputFilterSensitiveLog: () => TestStateInputFilterSensitiveLog,
+      TestStateOutputFilterSensitiveLog: () => TestStateOutputFilterSensitiveLog,
+      TooManyTags: () => TooManyTags,
+      UntagResourceCommand: () => UntagResourceCommand,
+      UpdateMapRunCommand: () => UpdateMapRunCommand,
+      UpdateStateMachineAliasCommand: () => UpdateStateMachineAliasCommand,
+      UpdateStateMachineAliasInputFilterSensitiveLog: () => UpdateStateMachineAliasInputFilterSensitiveLog,
+      UpdateStateMachineCommand: () => UpdateStateMachineCommand,
+      UpdateStateMachineInputFilterSensitiveLog: () => UpdateStateMachineInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionCommand: () => ValidateStateMachineDefinitionCommand,
+      ValidateStateMachineDefinitionInputFilterSensitiveLog: () => ValidateStateMachineDefinitionInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionResultCode: () => ValidateStateMachineDefinitionResultCode,
+      ValidateStateMachineDefinitionSeverity: () => ValidateStateMachineDefinitionSeverity,
+      ValidationException: () => ValidationException,
+      ValidationExceptionReason: () => ValidationExceptionReason,
+      __Client: () => import_smithy_client4.Client,
+      paginateGetExecutionHistory: () => paginateGetExecutionHistory,
+      paginateListActivities: () => paginateListActivities,
+      paginateListExecutions: () => paginateListExecutions,
+      paginateListMapRuns: () => paginateListMapRuns,
+      paginateListStateMachines: () => paginateListStateMachines
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "states"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig4();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SFNClient = class _SFNClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSFNHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SFNClient, "SFNClient");
+    var SFNClient = _SFNClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var _SFNServiceException = class _SFNServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SFNServiceException2.prototype);
+      }
+    };
+    __name2(_SFNServiceException, "SFNServiceException");
+    var SFNServiceException = _SFNServiceException;
+    var _ActivityAlreadyExists = class _ActivityAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ActivityAlreadyExists, "ActivityAlreadyExists");
+    var ActivityAlreadyExists = _ActivityAlreadyExists;
+    var _ActivityDoesNotExist = class _ActivityDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ActivityDoesNotExist, "ActivityDoesNotExist");
+    var ActivityDoesNotExist = _ActivityDoesNotExist;
+    var _ActivityLimitExceeded = class _ActivityLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityLimitExceeded, "ActivityLimitExceeded");
+    var ActivityLimitExceeded = _ActivityLimitExceeded;
+    var _ActivityWorkerLimitExceeded = class _ActivityWorkerLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityWorkerLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityWorkerLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityWorkerLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityWorkerLimitExceeded, "ActivityWorkerLimitExceeded");
+    var ActivityWorkerLimitExceeded = _ActivityWorkerLimitExceeded;
+    var EncryptionType = {
+      AWS_OWNED_KEY: "AWS_OWNED_KEY",
+      CUSTOMER_MANAGED_KMS_KEY: "CUSTOMER_MANAGED_KMS_KEY"
+    };
+    var _InvalidEncryptionConfiguration = class _InvalidEncryptionConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidEncryptionConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidEncryptionConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidEncryptionConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidEncryptionConfiguration, "InvalidEncryptionConfiguration");
+    var InvalidEncryptionConfiguration = _InvalidEncryptionConfiguration;
+    var _InvalidName = class _InvalidName2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidName",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidName";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidName2.prototype);
+      }
+    };
+    __name2(_InvalidName, "InvalidName");
+    var InvalidName = _InvalidName;
+    var _KmsAccessDeniedException = class _KmsAccessDeniedException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsAccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsAccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsAccessDeniedException2.prototype);
+      }
+    };
+    __name2(_KmsAccessDeniedException, "KmsAccessDeniedException");
+    var KmsAccessDeniedException = _KmsAccessDeniedException;
+    var _KmsThrottlingException = class _KmsThrottlingException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsThrottlingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsThrottlingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsThrottlingException2.prototype);
+      }
+    };
+    __name2(_KmsThrottlingException, "KmsThrottlingException");
+    var KmsThrottlingException = _KmsThrottlingException;
+    var _TooManyTags = class _TooManyTags2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyTags",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyTags";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyTags2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_TooManyTags, "TooManyTags");
+    var TooManyTags = _TooManyTags;
+    var _ConflictException = class _ConflictException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ConflictException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ConflictException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ConflictException2.prototype);
+      }
+    };
+    __name2(_ConflictException, "ConflictException");
+    var ConflictException = _ConflictException;
+    var LogLevel = {
+      ALL: "ALL",
+      ERROR: "ERROR",
+      FATAL: "FATAL",
+      OFF: "OFF"
+    };
+    var StateMachineType = {
+      EXPRESS: "EXPRESS",
+      STANDARD: "STANDARD"
+    };
+    var _InvalidArn = class _InvalidArn2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidArn",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidArn";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidArn2.prototype);
+      }
+    };
+    __name2(_InvalidArn, "InvalidArn");
+    var InvalidArn = _InvalidArn;
+    var _InvalidDefinition = class _InvalidDefinition2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidDefinition",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidDefinition";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidDefinition2.prototype);
+      }
+    };
+    __name2(_InvalidDefinition, "InvalidDefinition");
+    var InvalidDefinition = _InvalidDefinition;
+    var _InvalidLoggingConfiguration = class _InvalidLoggingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidLoggingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidLoggingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidLoggingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidLoggingConfiguration, "InvalidLoggingConfiguration");
+    var InvalidLoggingConfiguration = _InvalidLoggingConfiguration;
+    var _InvalidTracingConfiguration = class _InvalidTracingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidTracingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidTracingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidTracingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidTracingConfiguration, "InvalidTracingConfiguration");
+    var InvalidTracingConfiguration = _InvalidTracingConfiguration;
+    var _StateMachineAlreadyExists = class _StateMachineAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineAlreadyExists2.prototype);
+      }
+    };
+    __name2(_StateMachineAlreadyExists, "StateMachineAlreadyExists");
+    var StateMachineAlreadyExists = _StateMachineAlreadyExists;
+    var _StateMachineDeleting = class _StateMachineDeleting2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDeleting",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDeleting";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDeleting2.prototype);
+      }
+    };
+    __name2(_StateMachineDeleting, "StateMachineDeleting");
+    var StateMachineDeleting = _StateMachineDeleting;
+    var _StateMachineLimitExceeded = class _StateMachineLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineLimitExceeded2.prototype);
+      }
+    };
+    __name2(_StateMachineLimitExceeded, "StateMachineLimitExceeded");
+    var StateMachineLimitExceeded = _StateMachineLimitExceeded;
+    var _StateMachineTypeNotSupported = class _StateMachineTypeNotSupported2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineTypeNotSupported",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineTypeNotSupported";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineTypeNotSupported2.prototype);
+      }
+    };
+    __name2(_StateMachineTypeNotSupported, "StateMachineTypeNotSupported");
+    var StateMachineTypeNotSupported = _StateMachineTypeNotSupported;
+    var ValidationExceptionReason = {
+      API_DOES_NOT_SUPPORT_LABELED_ARNS: "API_DOES_NOT_SUPPORT_LABELED_ARNS",
+      CANNOT_UPDATE_COMPLETED_MAP_RUN: "CANNOT_UPDATE_COMPLETED_MAP_RUN",
+      INVALID_ROUTING_CONFIGURATION: "INVALID_ROUTING_CONFIGURATION",
+      MISSING_REQUIRED_PARAMETER: "MISSING_REQUIRED_PARAMETER"
+    };
+    var _ValidationException = class _ValidationException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ValidationException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ValidationException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ValidationException2.prototype);
+        this.reason = opts.reason;
+      }
+    };
+    __name2(_ValidationException, "ValidationException");
+    var ValidationException = _ValidationException;
+    var _ResourceNotFound = class _ResourceNotFound2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFound",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFound";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFound2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_ResourceNotFound, "ResourceNotFound");
+    var ResourceNotFound = _ResourceNotFound;
+    var _ServiceQuotaExceededException = class _ServiceQuotaExceededException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ServiceQuotaExceededException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ServiceQuotaExceededException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ServiceQuotaExceededException2.prototype);
+      }
+    };
+    __name2(_ServiceQuotaExceededException, "ServiceQuotaExceededException");
+    var ServiceQuotaExceededException = _ServiceQuotaExceededException;
+    var IncludedData = {
+      ALL_DATA: "ALL_DATA",
+      METADATA_ONLY: "METADATA_ONLY"
+    };
+    var ExecutionRedriveStatus = {
+      NOT_REDRIVABLE: "NOT_REDRIVABLE",
+      REDRIVABLE: "REDRIVABLE",
+      REDRIVABLE_BY_MAP_RUN: "REDRIVABLE_BY_MAP_RUN"
+    };
+    var ExecutionStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      PENDING_REDRIVE: "PENDING_REDRIVE",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var _ExecutionDoesNotExist = class _ExecutionDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ExecutionDoesNotExist, "ExecutionDoesNotExist");
+    var ExecutionDoesNotExist = _ExecutionDoesNotExist;
+    var KmsKeyState = {
+      CREATING: "CREATING",
+      DISABLED: "DISABLED",
+      PENDING_DELETION: "PENDING_DELETION",
+      PENDING_IMPORT: "PENDING_IMPORT",
+      UNAVAILABLE: "UNAVAILABLE"
+    };
+    var _KmsInvalidStateException = class _KmsInvalidStateException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsInvalidStateException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsInvalidStateException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsInvalidStateException2.prototype);
+        this.kmsKeyState = opts.kmsKeyState;
+      }
+    };
+    __name2(_KmsInvalidStateException, "KmsInvalidStateException");
+    var KmsInvalidStateException = _KmsInvalidStateException;
+    var MapRunStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var StateMachineStatus = {
+      ACTIVE: "ACTIVE",
+      DELETING: "DELETING"
+    };
+    var _StateMachineDoesNotExist = class _StateMachineDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDoesNotExist2.prototype);
+      }
+    };
+    __name2(_StateMachineDoesNotExist, "StateMachineDoesNotExist");
+    var StateMachineDoesNotExist = _StateMachineDoesNotExist;
+    var HistoryEventType = {
+      ActivityFailed: "ActivityFailed",
+      ActivityScheduleFailed: "ActivityScheduleFailed",
+      ActivityScheduled: "ActivityScheduled",
+      ActivityStarted: "ActivityStarted",
+      ActivitySucceeded: "ActivitySucceeded",
+      ActivityTimedOut: "ActivityTimedOut",
+      ChoiceStateEntered: "ChoiceStateEntered",
+      ChoiceStateExited: "ChoiceStateExited",
+      ExecutionAborted: "ExecutionAborted",
+      ExecutionFailed: "ExecutionFailed",
+      ExecutionRedriven: "ExecutionRedriven",
+      ExecutionStarted: "ExecutionStarted",
+      ExecutionSucceeded: "ExecutionSucceeded",
+      ExecutionTimedOut: "ExecutionTimedOut",
+      FailStateEntered: "FailStateEntered",
+      LambdaFunctionFailed: "LambdaFunctionFailed",
+      LambdaFunctionScheduleFailed: "LambdaFunctionScheduleFailed",
+      LambdaFunctionScheduled: "LambdaFunctionScheduled",
+      LambdaFunctionStartFailed: "LambdaFunctionStartFailed",
+      LambdaFunctionStarted: "LambdaFunctionStarted",
+      LambdaFunctionSucceeded: "LambdaFunctionSucceeded",
+      LambdaFunctionTimedOut: "LambdaFunctionTimedOut",
+      MapIterationAborted: "MapIterationAborted",
+      MapIterationFailed: "MapIterationFailed",
+      MapIterationStarted: "MapIterationStarted",
+      MapIterationSucceeded: "MapIterationSucceeded",
+      MapRunAborted: "MapRunAborted",
+      MapRunFailed: "MapRunFailed",
+      MapRunRedriven: "MapRunRedriven",
+      MapRunStarted: "MapRunStarted",
+      MapRunSucceeded: "MapRunSucceeded",
+      MapStateAborted: "MapStateAborted",
+      MapStateEntered: "MapStateEntered",
+      MapStateExited: "MapStateExited",
+      MapStateFailed: "MapStateFailed",
+      MapStateStarted: "MapStateStarted",
+      MapStateSucceeded: "MapStateSucceeded",
+      ParallelStateAborted: "ParallelStateAborted",
+      ParallelStateEntered: "ParallelStateEntered",
+      ParallelStateExited: "ParallelStateExited",
+      ParallelStateFailed: "ParallelStateFailed",
+      ParallelStateStarted: "ParallelStateStarted",
+      ParallelStateSucceeded: "ParallelStateSucceeded",
+      PassStateEntered: "PassStateEntered",
+      PassStateExited: "PassStateExited",
+      SucceedStateEntered: "SucceedStateEntered",
+      SucceedStateExited: "SucceedStateExited",
+      TaskFailed: "TaskFailed",
+      TaskScheduled: "TaskScheduled",
+      TaskStartFailed: "TaskStartFailed",
+      TaskStarted: "TaskStarted",
+      TaskStateAborted: "TaskStateAborted",
+      TaskStateEntered: "TaskStateEntered",
+      TaskStateExited: "TaskStateExited",
+      TaskSubmitFailed: "TaskSubmitFailed",
+      TaskSubmitted: "TaskSubmitted",
+      TaskSucceeded: "TaskSucceeded",
+      TaskTimedOut: "TaskTimedOut",
+      WaitStateAborted: "WaitStateAborted",
+      WaitStateEntered: "WaitStateEntered",
+      WaitStateExited: "WaitStateExited"
+    };
+    var _InvalidToken = class _InvalidToken2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidToken",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidToken";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidToken2.prototype);
+      }
+    };
+    __name2(_InvalidToken, "InvalidToken");
+    var InvalidToken = _InvalidToken;
+    var ExecutionRedriveFilter = {
+      NOT_REDRIVEN: "NOT_REDRIVEN",
+      REDRIVEN: "REDRIVEN"
+    };
+    var _ExecutionLimitExceeded = class _ExecutionLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ExecutionLimitExceeded, "ExecutionLimitExceeded");
+    var ExecutionLimitExceeded = _ExecutionLimitExceeded;
+    var _ExecutionNotRedrivable = class _ExecutionNotRedrivable2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionNotRedrivable",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionNotRedrivable";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionNotRedrivable2.prototype);
+      }
+    };
+    __name2(_ExecutionNotRedrivable, "ExecutionNotRedrivable");
+    var ExecutionNotRedrivable = _ExecutionNotRedrivable;
+    var _TaskDoesNotExist = class _TaskDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskDoesNotExist2.prototype);
+      }
+    };
+    __name2(_TaskDoesNotExist, "TaskDoesNotExist");
+    var TaskDoesNotExist = _TaskDoesNotExist;
+    var _TaskTimedOut = class _TaskTimedOut2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskTimedOut",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskTimedOut";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskTimedOut2.prototype);
+      }
+    };
+    __name2(_TaskTimedOut, "TaskTimedOut");
+    var TaskTimedOut = _TaskTimedOut;
+    var _InvalidOutput = class _InvalidOutput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidOutput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidOutput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidOutput2.prototype);
+      }
+    };
+    __name2(_InvalidOutput, "InvalidOutput");
+    var InvalidOutput = _InvalidOutput;
+    var _ExecutionAlreadyExists = class _ExecutionAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ExecutionAlreadyExists, "ExecutionAlreadyExists");
+    var ExecutionAlreadyExists = _ExecutionAlreadyExists;
+    var _InvalidExecutionInput = class _InvalidExecutionInput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidExecutionInput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidExecutionInput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidExecutionInput2.prototype);
+      }
+    };
+    __name2(_InvalidExecutionInput, "InvalidExecutionInput");
+    var InvalidExecutionInput = _InvalidExecutionInput;
+    var SyncExecutionStatus = {
+      FAILED: "FAILED",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var InspectionLevel = {
+      DEBUG: "DEBUG",
+      INFO: "INFO",
+      TRACE: "TRACE"
+    };
+    var TestExecutionStatus = {
+      CAUGHT_ERROR: "CAUGHT_ERROR",
+      FAILED: "FAILED",
+      RETRIABLE: "RETRIABLE",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var _MissingRequiredParameter = class _MissingRequiredParameter2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MissingRequiredParameter",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MissingRequiredParameter";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MissingRequiredParameter2.prototype);
+      }
+    };
+    __name2(_MissingRequiredParameter, "MissingRequiredParameter");
+    var MissingRequiredParameter = _MissingRequiredParameter;
+    var ValidateStateMachineDefinitionSeverity = {
+      ERROR: "ERROR"
+    };
+    var ValidateStateMachineDefinitionResultCode = {
+      FAIL: "FAIL",
+      OK: "OK"
+    };
+    var ActivityFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityFailedEventDetailsFilterSensitiveLog");
+    var ActivityScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduledEventDetailsFilterSensitiveLog");
+    var ActivityScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduleFailedEventDetailsFilterSensitiveLog");
+    var ActivitySucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivitySucceededEventDetailsFilterSensitiveLog");
+    var ActivityTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityTimedOutEventDetailsFilterSensitiveLog");
+    var CreateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineInputFilterSensitiveLog");
+    var CreateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineAliasInputFilterSensitiveLog");
+    var DescribeExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.redriveStatusReason && { redriveStatusReason: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeExecutionOutputFilterSensitiveLog");
+    var DescribeStateMachineOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineOutputFilterSensitiveLog");
+    var DescribeStateMachineAliasOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineAliasOutputFilterSensitiveLog");
+    var DescribeStateMachineForExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineForExecutionOutputFilterSensitiveLog");
+    var GetActivityTaskOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetActivityTaskOutputFilterSensitiveLog");
+    var ExecutionAbortedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionAbortedEventDetailsFilterSensitiveLog");
+    var ExecutionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionFailedEventDetailsFilterSensitiveLog");
+    var ExecutionStartedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionStartedEventDetailsFilterSensitiveLog");
+    var ExecutionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionSucceededEventDetailsFilterSensitiveLog");
+    var ExecutionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionTimedOutEventDetailsFilterSensitiveLog");
+    var LambdaFunctionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduledEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionStartFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionSucceededEventDetailsFilterSensitiveLog");
+    var LambdaFunctionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionTimedOutEventDetailsFilterSensitiveLog");
+    var MapRunFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "MapRunFailedEventDetailsFilterSensitiveLog");
+    var StateEnteredEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateEnteredEventDetailsFilterSensitiveLog");
+    var StateExitedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateExitedEventDetailsFilterSensitiveLog");
+    var TaskFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskFailedEventDetailsFilterSensitiveLog");
+    var TaskScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.parameters && { parameters: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskScheduledEventDetailsFilterSensitiveLog");
+    var TaskStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskStartFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmitFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmitFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmittedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmittedEventDetailsFilterSensitiveLog");
+    var TaskSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSucceededEventDetailsFilterSensitiveLog");
+    var TaskTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskTimedOutEventDetailsFilterSensitiveLog");
+    var HistoryEventFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.activityFailedEventDetails && {
+        activityFailedEventDetails: ActivityFailedEventDetailsFilterSensitiveLog(obj.activityFailedEventDetails)
+      },
+      ...obj.activityScheduleFailedEventDetails && {
+        activityScheduleFailedEventDetails: ActivityScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.activityScheduleFailedEventDetails
+        )
+      },
+      ...obj.activityScheduledEventDetails && {
+        activityScheduledEventDetails: ActivityScheduledEventDetailsFilterSensitiveLog(obj.activityScheduledEventDetails)
+      },
+      ...obj.activitySucceededEventDetails && {
+        activitySucceededEventDetails: ActivitySucceededEventDetailsFilterSensitiveLog(obj.activitySucceededEventDetails)
+      },
+      ...obj.activityTimedOutEventDetails && {
+        activityTimedOutEventDetails: ActivityTimedOutEventDetailsFilterSensitiveLog(obj.activityTimedOutEventDetails)
+      },
+      ...obj.taskFailedEventDetails && {
+        taskFailedEventDetails: TaskFailedEventDetailsFilterSensitiveLog(obj.taskFailedEventDetails)
+      },
+      ...obj.taskScheduledEventDetails && {
+        taskScheduledEventDetails: TaskScheduledEventDetailsFilterSensitiveLog(obj.taskScheduledEventDetails)
+      },
+      ...obj.taskStartFailedEventDetails && {
+        taskStartFailedEventDetails: TaskStartFailedEventDetailsFilterSensitiveLog(obj.taskStartFailedEventDetails)
+      },
+      ...obj.taskSubmitFailedEventDetails && {
+        taskSubmitFailedEventDetails: TaskSubmitFailedEventDetailsFilterSensitiveLog(obj.taskSubmitFailedEventDetails)
+      },
+      ...obj.taskSubmittedEventDetails && {
+        taskSubmittedEventDetails: TaskSubmittedEventDetailsFilterSensitiveLog(obj.taskSubmittedEventDetails)
+      },
+      ...obj.taskSucceededEventDetails && {
+        taskSucceededEventDetails: TaskSucceededEventDetailsFilterSensitiveLog(obj.taskSucceededEventDetails)
+      },
+      ...obj.taskTimedOutEventDetails && {
+        taskTimedOutEventDetails: TaskTimedOutEventDetailsFilterSensitiveLog(obj.taskTimedOutEventDetails)
+      },
+      ...obj.executionFailedEventDetails && {
+        executionFailedEventDetails: ExecutionFailedEventDetailsFilterSensitiveLog(obj.executionFailedEventDetails)
+      },
+      ...obj.executionStartedEventDetails && {
+        executionStartedEventDetails: ExecutionStartedEventDetailsFilterSensitiveLog(obj.executionStartedEventDetails)
+      },
+      ...obj.executionSucceededEventDetails && {
+        executionSucceededEventDetails: ExecutionSucceededEventDetailsFilterSensitiveLog(
+          obj.executionSucceededEventDetails
+        )
+      },
+      ...obj.executionAbortedEventDetails && {
+        executionAbortedEventDetails: ExecutionAbortedEventDetailsFilterSensitiveLog(obj.executionAbortedEventDetails)
+      },
+      ...obj.executionTimedOutEventDetails && {
+        executionTimedOutEventDetails: ExecutionTimedOutEventDetailsFilterSensitiveLog(obj.executionTimedOutEventDetails)
+      },
+      ...obj.lambdaFunctionFailedEventDetails && {
+        lambdaFunctionFailedEventDetails: LambdaFunctionFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduleFailedEventDetails && {
+        lambdaFunctionScheduleFailedEventDetails: LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduleFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduledEventDetails && {
+        lambdaFunctionScheduledEventDetails: LambdaFunctionScheduledEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduledEventDetails
+        )
+      },
+      ...obj.lambdaFunctionStartFailedEventDetails && {
+        lambdaFunctionStartFailedEventDetails: LambdaFunctionStartFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionStartFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionSucceededEventDetails && {
+        lambdaFunctionSucceededEventDetails: LambdaFunctionSucceededEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionSucceededEventDetails
+        )
+      },
+      ...obj.lambdaFunctionTimedOutEventDetails && {
+        lambdaFunctionTimedOutEventDetails: LambdaFunctionTimedOutEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionTimedOutEventDetails
+        )
+      },
+      ...obj.stateEnteredEventDetails && {
+        stateEnteredEventDetails: StateEnteredEventDetailsFilterSensitiveLog(obj.stateEnteredEventDetails)
+      },
+      ...obj.stateExitedEventDetails && {
+        stateExitedEventDetails: StateExitedEventDetailsFilterSensitiveLog(obj.stateExitedEventDetails)
+      },
+      ...obj.mapRunFailedEventDetails && {
+        mapRunFailedEventDetails: MapRunFailedEventDetailsFilterSensitiveLog(obj.mapRunFailedEventDetails)
+      }
+    }), "HistoryEventFilterSensitiveLog");
+    var GetExecutionHistoryOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.events && { events: obj.events.map((item) => HistoryEventFilterSensitiveLog(item)) }
+    }), "GetExecutionHistoryOutputFilterSensitiveLog");
+    var PublishStateMachineVersionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "PublishStateMachineVersionInputFilterSensitiveLog");
+    var SendTaskFailureInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskFailureInputFilterSensitiveLog");
+    var SendTaskSuccessInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskSuccessInputFilterSensitiveLog");
+    var StartExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionOutputFilterSensitiveLog");
+    var StopExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "StopExecutionInputFilterSensitiveLog");
+    var TestStateInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateInputFilterSensitiveLog");
+    var InspectionDataFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterInputPath && { afterInputPath: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterParameters && { afterParameters: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.result && { result: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultSelector && { afterResultSelector: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultPath && { afterResultPath: import_smithy_client4.SENSITIVE_STRING }
+    }), "InspectionDataFilterSensitiveLog");
+    var TestStateOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.inspectionData && { inspectionData: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateOutputFilterSensitiveLog");
+    var UpdateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineInputFilterSensitiveLog");
+    var UpdateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineAliasInputFilterSensitiveLog");
+    var ValidateStateMachineDefinitionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "ValidateStateMachineDefinitionInputFilterSensitiveLog");
+    var se_CreateActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateActivityCommand");
+    var se_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineCommand");
+    var se_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineAliasCommand");
+    var se_DeleteActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteActivityCommand");
+    var se_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineCommand");
+    var se_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineAliasCommand");
+    var se_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineVersionCommand");
+    var se_DescribeActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeActivityCommand");
+    var se_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeExecutionCommand");
+    var se_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeMapRun");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeMapRunCommand");
+    var se_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineCommand");
+    var se_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineAliasCommand");
+    var se_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineForExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineForExecutionCommand");
+    var se_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetActivityTask");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetActivityTaskCommand");
+    var se_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetExecutionHistory");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetExecutionHistoryCommand");
+    var se_ListActivitiesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListActivities");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListActivitiesCommand");
+    var se_ListExecutionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListExecutions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListExecutionsCommand");
+    var se_ListMapRunsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListMapRuns");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListMapRunsCommand");
+    var se_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineAliases");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineAliasesCommand");
+    var se_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachines");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachinesCommand");
+    var se_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineVersions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineVersionsCommand");
+    var se_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListTagsForResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListTagsForResourceCommand");
+    var se_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("PublishStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_PublishStateMachineVersionCommand");
+    var se_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("RedriveExecution");
+      let body;
+      body = JSON.stringify(se_RedriveExecutionInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_RedriveExecutionCommand");
+    var se_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskFailure");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskFailureCommand");
+    var se_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskHeartbeat");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskHeartbeatCommand");
+    var se_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskSuccess");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskSuccessCommand");
+    var se_StartExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StartExecutionCommand");
+    var se_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartSyncExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_StartSyncExecutionCommand");
+    var se_StopExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StopExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StopExecutionCommand");
+    var se_TagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_TagResourceCommand");
+    var se_TestStateCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TestState");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_TestStateCommand");
+    var se_UntagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UntagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UntagResourceCommand");
+    var se_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateMapRun");
+      let body;
+      body = JSON.stringify(se_UpdateMapRunInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateMapRunCommand");
+    var se_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineCommand");
+    var se_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineAliasCommand");
+    var se_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ValidateStateMachineDefinition");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ValidateStateMachineDefinitionCommand");
+    var de_CreateActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateActivityCommand");
+    var de_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineCommand");
+    var de_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineAliasCommand");
+    var de_DeleteActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteActivityCommand");
+    var de_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineCommand");
+    var de_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineAliasCommand");
+    var de_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineVersionCommand");
+    var de_DescribeActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeActivityCommand");
+    var de_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeExecutionCommand");
+    var de_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeMapRunOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeMapRunCommand");
+    var de_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineCommand");
+    var de_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineAliasCommand");
+    var de_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineForExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineForExecutionCommand");
+    var de_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetActivityTaskCommand");
+    var de_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_GetExecutionHistoryOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetExecutionHistoryCommand");
+    var de_ListActivitiesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListActivitiesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListActivitiesCommand");
+    var de_ListExecutionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListExecutionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListExecutionsCommand");
+    var de_ListMapRunsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListMapRunsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListMapRunsCommand");
+    var de_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineAliasesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineAliasesCommand");
+    var de_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachinesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachinesCommand");
+    var de_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineVersionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineVersionsCommand");
+    var de_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListTagsForResourceCommand");
+    var de_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_PublishStateMachineVersionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_PublishStateMachineVersionCommand");
+    var de_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_RedriveExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_RedriveExecutionCommand");
+    var de_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskFailureCommand");
+    var de_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskHeartbeatCommand");
+    var de_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskSuccessCommand");
+    var de_StartExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartExecutionCommand");
+    var de_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartSyncExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartSyncExecutionCommand");
+    var de_StopExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StopExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StopExecutionCommand");
+    var de_TagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TagResourceCommand");
+    var de_TestStateCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TestStateCommand");
+    var de_UntagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UntagResourceCommand");
+    var de_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateMapRunCommand");
+    var de_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineCommand");
+    var de_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineAliasCommand");
+    var de_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ValidateStateMachineDefinitionCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ActivityAlreadyExists":
+        case "com.amazonaws.sfn#ActivityAlreadyExists":
+          throw await de_ActivityAlreadyExistsRes(parsedOutput, context);
+        case "ActivityLimitExceeded":
+        case "com.amazonaws.sfn#ActivityLimitExceeded":
+          throw await de_ActivityLimitExceededRes(parsedOutput, context);
+        case "InvalidEncryptionConfiguration":
+        case "com.amazonaws.sfn#InvalidEncryptionConfiguration":
+          throw await de_InvalidEncryptionConfigurationRes(parsedOutput, context);
+        case "InvalidName":
+        case "com.amazonaws.sfn#InvalidName":
+          throw await de_InvalidNameRes(parsedOutput, context);
+        case "KmsAccessDeniedException":
+        case "com.amazonaws.sfn#KmsAccessDeniedException":
+          throw await de_KmsAccessDeniedExceptionRes(parsedOutput, context);
+        case "KmsThrottlingException":
+        case "com.amazonaws.sfn#KmsThrottlingException":
+          throw await de_KmsThrottlingExceptionRes(parsedOutput, context);
+        case "TooManyTags":
+        case "com.amazonaws.sfn#TooManyTags":
+          throw await de_TooManyTagsRes(parsedOutput, context);
+        case "ConflictException":
+        case "com.amazonaws.sfn#ConflictException":
+          throw await de_ConflictExceptionRes(parsedOutput, context);
+        case "InvalidArn":
+        case "com.amazonaws.sfn#InvalidArn":
+          throw await de_InvalidArnRes(parsedOutput, context);
+        case "InvalidDefinition":
+        case "com.amazonaws.sfn#InvalidDefinition":
+          throw await de_InvalidDefinitionRes(parsedOutput, context);
+        case "InvalidLoggingConfiguration":
+        case "com.amazonaws.sfn#InvalidLoggingConfiguration":
+          throw await de_InvalidLoggingConfigurationRes(parsedOutput, context);
+        case "InvalidTracingConfiguration":
+        case "com.amazonaws.sfn#InvalidTracingConfiguration":
+          throw await de_InvalidTracingConfigurationRes(parsedOutput, context);
+        case "StateMachineAlreadyExists":
+        case "com.amazonaws.sfn#StateMachineAlreadyExists":
+          throw await de_StateMachineAlreadyExistsRes(parsedOutput, context);
+        case "StateMachineDeleting":
+        case "com.amazonaws.sfn#StateMachineDeleting":
+          throw await de_StateMachineDeletingRes(parsedOutput, context);
+        case "StateMachineLimitExceeded":
+        case "com.amazonaws.sfn#StateMachineLimitExceeded":
+          throw await de_StateMachineLimitExceededRes(parsedOutput, context);
+        case "StateMachineTypeNotSupported":
+        case "com.amazonaws.sfn#StateMachineTypeNotSupported":
+          throw await de_StateMachineTypeNotSupportedRes(parsedOutput, context);
+        case "ValidationException":
+        case "com.amazonaws.sfn#ValidationException":
+          throw await de_ValidationExceptionRes(parsedOutput, context);
+        case "ResourceNotFound":
+        case "com.amazonaws.sfn#ResourceNotFound":
+          throw await de_ResourceNotFoundRes(parsedOutput, context);
+        case "ServiceQuotaExceededException":
+        case "com.amazonaws.sfn#ServiceQuotaExceededException":
+          throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context);
+        case "ActivityDoesNotExist":
+        case "com.amazonaws.sfn#ActivityDoesNotExist":
+          throw await de_ActivityDoesNotExistRes(parsedOutput, context);
+        case "ExecutionDoesNotExist":
+        case "com.amazonaws.sfn#ExecutionDoesNotExist":
+          throw await de_ExecutionDoesNotExistRes(parsedOutput, context);
+        case "KmsInvalidStateException":
+        case "com.amazonaws.sfn#KmsInvalidStateException":
+          throw await de_KmsInvalidStateExceptionRes(parsedOutput, context);
+        case "StateMachineDoesNotExist":
+        case "com.amazonaws.sfn#StateMachineDoesNotExist":
+          throw await de_StateMachineDoesNotExistRes(parsedOutput, context);
+        case "ActivityWorkerLimitExceeded":
+        case "com.amazonaws.sfn#ActivityWorkerLimitExceeded":
+          throw await de_ActivityWorkerLimitExceededRes(parsedOutput, context);
+        case "InvalidToken":
+        case "com.amazonaws.sfn#InvalidToken":
+          throw await de_InvalidTokenRes(parsedOutput, context);
+        case "ExecutionLimitExceeded":
+        case "com.amazonaws.sfn#ExecutionLimitExceeded":
+          throw await de_ExecutionLimitExceededRes(parsedOutput, context);
+        case "ExecutionNotRedrivable":
+        case "com.amazonaws.sfn#ExecutionNotRedrivable":
+          throw await de_ExecutionNotRedrivableRes(parsedOutput, context);
+        case "TaskDoesNotExist":
+        case "com.amazonaws.sfn#TaskDoesNotExist":
+          throw await de_TaskDoesNotExistRes(parsedOutput, context);
+        case "TaskTimedOut":
+        case "com.amazonaws.sfn#TaskTimedOut":
+          throw await de_TaskTimedOutRes(parsedOutput, context);
+        case "InvalidOutput":
+        case "com.amazonaws.sfn#InvalidOutput":
+          throw await de_InvalidOutputRes(parsedOutput, context);
+        case "ExecutionAlreadyExists":
+        case "com.amazonaws.sfn#ExecutionAlreadyExists":
+          throw await de_ExecutionAlreadyExistsRes(parsedOutput, context);
+        case "InvalidExecutionInput":
+        case "com.amazonaws.sfn#InvalidExecutionInput":
+          throw await de_InvalidExecutionInputRes(parsedOutput, context);
+        case "MissingRequiredParameter":
+        case "com.amazonaws.sfn#MissingRequiredParameter":
+          throw await de_MissingRequiredParameterRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ActivityAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityAlreadyExistsRes");
+    var de_ActivityDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityDoesNotExistRes");
+    var de_ActivityLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityLimitExceededRes");
+    var de_ActivityWorkerLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityWorkerLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityWorkerLimitExceededRes");
+    var de_ConflictExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ConflictException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ConflictExceptionRes");
+    var de_ExecutionAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionAlreadyExistsRes");
+    var de_ExecutionDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionDoesNotExistRes");
+    var de_ExecutionLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionLimitExceededRes");
+    var de_ExecutionNotRedrivableRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionNotRedrivable({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionNotRedrivableRes");
+    var de_InvalidArnRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidArn({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidArnRes");
+    var de_InvalidDefinitionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidDefinition({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidDefinitionRes");
+    var de_InvalidEncryptionConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidEncryptionConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidEncryptionConfigurationRes");
+    var de_InvalidExecutionInputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidExecutionInput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidExecutionInputRes");
+    var de_InvalidLoggingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidLoggingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidLoggingConfigurationRes");
+    var de_InvalidNameRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidName({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidNameRes");
+    var de_InvalidOutputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidOutput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidOutputRes");
+    var de_InvalidTokenRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidToken({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTokenRes");
+    var de_InvalidTracingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidTracingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTracingConfigurationRes");
+    var de_KmsAccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsAccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsAccessDeniedExceptionRes");
+    var de_KmsInvalidStateExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsInvalidStateException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsInvalidStateExceptionRes");
+    var de_KmsThrottlingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsThrottlingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsThrottlingExceptionRes");
+    var de_MissingRequiredParameterRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new MissingRequiredParameter({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MissingRequiredParameterRes");
+    var de_ResourceNotFoundRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ResourceNotFound({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ResourceNotFoundRes");
+    var de_ServiceQuotaExceededExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ServiceQuotaExceededException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ServiceQuotaExceededExceptionRes");
+    var de_StateMachineAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineAlreadyExistsRes");
+    var de_StateMachineDeletingRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDeleting({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDeletingRes");
+    var de_StateMachineDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDoesNotExistRes");
+    var de_StateMachineLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineLimitExceededRes");
+    var de_StateMachineTypeNotSupportedRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineTypeNotSupported({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineTypeNotSupportedRes");
+    var de_TaskDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskDoesNotExistRes");
+    var de_TaskTimedOutRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskTimedOut({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskTimedOutRes");
+    var de_TooManyTagsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TooManyTags({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TooManyTagsRes");
+    var de_ValidationExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ValidationException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ValidationExceptionRes");
+    var se_RedriveExecutionInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        clientToken: [true, (_) => _ ?? (0, import_uuid.v4)()],
+        executionArn: []
+      });
+    }, "se_RedriveExecutionInput");
+    var se_UpdateMapRunInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        mapRunArn: [],
+        maxConcurrency: [],
+        toleratedFailureCount: [],
+        toleratedFailurePercentage: import_smithy_client4.serializeFloat
+      });
+    }, "se_UpdateMapRunInput");
+    var de_ActivityList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ActivityListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ActivityList");
+    var de_ActivityListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString
+      });
+    }, "de_ActivityListItem");
+    var de_CreateActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_CreateActivityOutput");
+    var de_CreateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineAliasOutput");
+    var de_CreateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineOutput");
+    var de_DescribeActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        encryptionConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString
+      });
+    }, "de_DescribeActivityOutput");
+    var de_DescribeExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        redriveStatus: import_smithy_client4.expectString,
+        redriveStatusReason: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_DescribeExecutionOutput");
+    var de_DescribeMapRunOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        executionCounts: import_smithy_client4._json,
+        itemCounts: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        maxConcurrency: import_smithy_client4.expectInt32,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        toleratedFailureCount: import_smithy_client4.expectLong,
+        toleratedFailurePercentage: import_smithy_client4.limitedParseFloat32
+      });
+    }, "de_DescribeMapRunOutput");
+    var de_DescribeStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        description: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        routingConfiguration: import_smithy_client4._json,
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineAliasOutput");
+    var de_DescribeStateMachineForExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        definition: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineForExecutionOutput");
+    var de_DescribeStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        definition: import_smithy_client4.expectString,
+        description: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_DescribeStateMachineOutput");
+    var de_ExecutionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ExecutionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ExecutionList");
+    var de_ExecutionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        itemCount: import_smithy_client4.expectInt32,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_ExecutionListItem");
+    var de_GetExecutionHistoryOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        events: (_) => de_HistoryEventList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_GetExecutionHistoryOutput");
+    var de_HistoryEvent = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityFailedEventDetails: import_smithy_client4._json,
+        activityScheduleFailedEventDetails: import_smithy_client4._json,
+        activityScheduledEventDetails: import_smithy_client4._json,
+        activityStartedEventDetails: import_smithy_client4._json,
+        activitySucceededEventDetails: import_smithy_client4._json,
+        activityTimedOutEventDetails: import_smithy_client4._json,
+        executionAbortedEventDetails: import_smithy_client4._json,
+        executionFailedEventDetails: import_smithy_client4._json,
+        executionRedrivenEventDetails: import_smithy_client4._json,
+        executionStartedEventDetails: import_smithy_client4._json,
+        executionSucceededEventDetails: import_smithy_client4._json,
+        executionTimedOutEventDetails: import_smithy_client4._json,
+        id: import_smithy_client4.expectLong,
+        lambdaFunctionFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduleFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduledEventDetails: import_smithy_client4._json,
+        lambdaFunctionStartFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionSucceededEventDetails: import_smithy_client4._json,
+        lambdaFunctionTimedOutEventDetails: import_smithy_client4._json,
+        mapIterationAbortedEventDetails: import_smithy_client4._json,
+        mapIterationFailedEventDetails: import_smithy_client4._json,
+        mapIterationStartedEventDetails: import_smithy_client4._json,
+        mapIterationSucceededEventDetails: import_smithy_client4._json,
+        mapRunFailedEventDetails: import_smithy_client4._json,
+        mapRunRedrivenEventDetails: import_smithy_client4._json,
+        mapRunStartedEventDetails: import_smithy_client4._json,
+        mapStateStartedEventDetails: import_smithy_client4._json,
+        previousEventId: import_smithy_client4.expectLong,
+        stateEnteredEventDetails: import_smithy_client4._json,
+        stateExitedEventDetails: import_smithy_client4._json,
+        taskFailedEventDetails: import_smithy_client4._json,
+        taskScheduledEventDetails: import_smithy_client4._json,
+        taskStartFailedEventDetails: import_smithy_client4._json,
+        taskStartedEventDetails: import_smithy_client4._json,
+        taskSubmitFailedEventDetails: import_smithy_client4._json,
+        taskSubmittedEventDetails: import_smithy_client4._json,
+        taskSucceededEventDetails: import_smithy_client4._json,
+        taskTimedOutEventDetails: import_smithy_client4._json,
+        timestamp: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        type: import_smithy_client4.expectString
+      });
+    }, "de_HistoryEvent");
+    var de_HistoryEventList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_HistoryEvent(entry, context);
+      });
+      return retVal;
+    }, "de_HistoryEventList");
+    var de_ListActivitiesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activities: (_) => de_ActivityList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListActivitiesOutput");
+    var de_ListExecutionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executions: (_) => de_ExecutionList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListExecutionsOutput");
+    var de_ListMapRunsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        mapRuns: (_) => de_MapRunList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListMapRunsOutput");
+    var de_ListStateMachineAliasesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineAliases: (_) => de_StateMachineAliasList(_, context)
+      });
+    }, "de_ListStateMachineAliasesOutput");
+    var de_ListStateMachinesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachines: (_) => de_StateMachineList(_, context)
+      });
+    }, "de_ListStateMachinesOutput");
+    var de_ListStateMachineVersionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineVersions: (_) => de_StateMachineVersionList(_, context)
+      });
+    }, "de_ListStateMachineVersionsOutput");
+    var de_MapRunList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_MapRunListItem(entry, context);
+      });
+      return retVal;
+    }, "de_MapRunList");
+    var de_MapRunListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        mapRunArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_MapRunListItem");
+    var de_PublishStateMachineVersionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_PublishStateMachineVersionOutput");
+    var de_RedriveExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_RedriveExecutionOutput");
+    var de_StartExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StartExecutionOutput");
+    var de_StartSyncExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        billingDetails: import_smithy_client4._json,
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_StartSyncExecutionOutput");
+    var de_StateMachineAliasList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineAliasListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineAliasList");
+    var de_StateMachineAliasListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineAliasListItem");
+    var de_StateMachineList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineList");
+    var de_StateMachineListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineListItem");
+    var de_StateMachineVersionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineVersionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineVersionList");
+    var de_StateMachineVersionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineVersionListItem");
+    var de_StopExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StopExecutionOutput");
+    var de_UpdateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineAliasOutput");
+    var de_UpdateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        revisionId: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineOutput");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SFNServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    function sharedHeaders(operation) {
+      return {
+        "content-type": "application/x-amz-json-1.0",
+        "x-amz-target": `AWSStepFunctions.${operation}`
+      };
+    }
+    __name2(sharedHeaders, "sharedHeaders");
+    var _CreateActivityCommand = class _CreateActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateActivity", {}).n("SFNClient", "CreateActivityCommand").f(void 0, void 0).ser(se_CreateActivityCommand).de(de_CreateActivityCommand).build() {
+    };
+    __name2(_CreateActivityCommand, "CreateActivityCommand");
+    var CreateActivityCommand = _CreateActivityCommand;
+    var _CreateStateMachineAliasCommand = class _CreateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachineAlias", {}).n("SFNClient", "CreateStateMachineAliasCommand").f(CreateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineAliasCommand).de(de_CreateStateMachineAliasCommand).build() {
+    };
+    __name2(_CreateStateMachineAliasCommand, "CreateStateMachineAliasCommand");
+    var CreateStateMachineAliasCommand = _CreateStateMachineAliasCommand;
+    var _CreateStateMachineCommand = class _CreateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachine", {}).n("SFNClient", "CreateStateMachineCommand").f(CreateStateMachineInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineCommand).de(de_CreateStateMachineCommand).build() {
+    };
+    __name2(_CreateStateMachineCommand, "CreateStateMachineCommand");
+    var CreateStateMachineCommand = _CreateStateMachineCommand;
+    var _DeleteActivityCommand = class _DeleteActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteActivity", {}).n("SFNClient", "DeleteActivityCommand").f(void 0, void 0).ser(se_DeleteActivityCommand).de(de_DeleteActivityCommand).build() {
+    };
+    __name2(_DeleteActivityCommand, "DeleteActivityCommand");
+    var DeleteActivityCommand = _DeleteActivityCommand;
+    var _DeleteStateMachineAliasCommand = class _DeleteStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineAlias", {}).n("SFNClient", "DeleteStateMachineAliasCommand").f(void 0, void 0).ser(se_DeleteStateMachineAliasCommand).de(de_DeleteStateMachineAliasCommand).build() {
+    };
+    __name2(_DeleteStateMachineAliasCommand, "DeleteStateMachineAliasCommand");
+    var DeleteStateMachineAliasCommand = _DeleteStateMachineAliasCommand;
+    var _DeleteStateMachineCommand = class _DeleteStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachine", {}).n("SFNClient", "DeleteStateMachineCommand").f(void 0, void 0).ser(se_DeleteStateMachineCommand).de(de_DeleteStateMachineCommand).build() {
+    };
+    __name2(_DeleteStateMachineCommand, "DeleteStateMachineCommand");
+    var DeleteStateMachineCommand = _DeleteStateMachineCommand;
+    var _DeleteStateMachineVersionCommand = class _DeleteStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineVersion", {}).n("SFNClient", "DeleteStateMachineVersionCommand").f(void 0, void 0).ser(se_DeleteStateMachineVersionCommand).de(de_DeleteStateMachineVersionCommand).build() {
+    };
+    __name2(_DeleteStateMachineVersionCommand, "DeleteStateMachineVersionCommand");
+    var DeleteStateMachineVersionCommand = _DeleteStateMachineVersionCommand;
+    var _DescribeActivityCommand = class _DescribeActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeActivity", {}).n("SFNClient", "DescribeActivityCommand").f(void 0, void 0).ser(se_DescribeActivityCommand).de(de_DescribeActivityCommand).build() {
+    };
+    __name2(_DescribeActivityCommand, "DescribeActivityCommand");
+    var DescribeActivityCommand = _DescribeActivityCommand;
+    var _DescribeExecutionCommand = class _DescribeExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeExecution", {}).n("SFNClient", "DescribeExecutionCommand").f(void 0, DescribeExecutionOutputFilterSensitiveLog).ser(se_DescribeExecutionCommand).de(de_DescribeExecutionCommand).build() {
+    };
+    __name2(_DescribeExecutionCommand, "DescribeExecutionCommand");
+    var DescribeExecutionCommand = _DescribeExecutionCommand;
+    var _DescribeMapRunCommand = class _DescribeMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeMapRun", {}).n("SFNClient", "DescribeMapRunCommand").f(void 0, void 0).ser(se_DescribeMapRunCommand).de(de_DescribeMapRunCommand).build() {
+    };
+    __name2(_DescribeMapRunCommand, "DescribeMapRunCommand");
+    var DescribeMapRunCommand = _DescribeMapRunCommand;
+    var _DescribeStateMachineAliasCommand = class _DescribeStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineAlias", {}).n("SFNClient", "DescribeStateMachineAliasCommand").f(void 0, DescribeStateMachineAliasOutputFilterSensitiveLog).ser(se_DescribeStateMachineAliasCommand).de(de_DescribeStateMachineAliasCommand).build() {
+    };
+    __name2(_DescribeStateMachineAliasCommand, "DescribeStateMachineAliasCommand");
+    var DescribeStateMachineAliasCommand = _DescribeStateMachineAliasCommand;
+    var _DescribeStateMachineCommand = class _DescribeStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachine", {}).n("SFNClient", "DescribeStateMachineCommand").f(void 0, DescribeStateMachineOutputFilterSensitiveLog).ser(se_DescribeStateMachineCommand).de(de_DescribeStateMachineCommand).build() {
+    };
+    __name2(_DescribeStateMachineCommand, "DescribeStateMachineCommand");
+    var DescribeStateMachineCommand = _DescribeStateMachineCommand;
+    var _DescribeStateMachineForExecutionCommand = class _DescribeStateMachineForExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineForExecution", {}).n("SFNClient", "DescribeStateMachineForExecutionCommand").f(void 0, DescribeStateMachineForExecutionOutputFilterSensitiveLog).ser(se_DescribeStateMachineForExecutionCommand).de(de_DescribeStateMachineForExecutionCommand).build() {
+    };
+    __name2(_DescribeStateMachineForExecutionCommand, "DescribeStateMachineForExecutionCommand");
+    var DescribeStateMachineForExecutionCommand = _DescribeStateMachineForExecutionCommand;
+    var _GetActivityTaskCommand = class _GetActivityTaskCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetActivityTask", {}).n("SFNClient", "GetActivityTaskCommand").f(void 0, GetActivityTaskOutputFilterSensitiveLog).ser(se_GetActivityTaskCommand).de(de_GetActivityTaskCommand).build() {
+    };
+    __name2(_GetActivityTaskCommand, "GetActivityTaskCommand");
+    var GetActivityTaskCommand = _GetActivityTaskCommand;
+    var _GetExecutionHistoryCommand = class _GetExecutionHistoryCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetExecutionHistory", {}).n("SFNClient", "GetExecutionHistoryCommand").f(void 0, GetExecutionHistoryOutputFilterSensitiveLog).ser(se_GetExecutionHistoryCommand).de(de_GetExecutionHistoryCommand).build() {
+    };
+    __name2(_GetExecutionHistoryCommand, "GetExecutionHistoryCommand");
+    var GetExecutionHistoryCommand = _GetExecutionHistoryCommand;
+    var _ListActivitiesCommand = class _ListActivitiesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListActivities", {}).n("SFNClient", "ListActivitiesCommand").f(void 0, void 0).ser(se_ListActivitiesCommand).de(de_ListActivitiesCommand).build() {
+    };
+    __name2(_ListActivitiesCommand, "ListActivitiesCommand");
+    var ListActivitiesCommand = _ListActivitiesCommand;
+    var _ListExecutionsCommand = class _ListExecutionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListExecutions", {}).n("SFNClient", "ListExecutionsCommand").f(void 0, void 0).ser(se_ListExecutionsCommand).de(de_ListExecutionsCommand).build() {
+    };
+    __name2(_ListExecutionsCommand, "ListExecutionsCommand");
+    var ListExecutionsCommand = _ListExecutionsCommand;
+    var _ListMapRunsCommand = class _ListMapRunsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListMapRuns", {}).n("SFNClient", "ListMapRunsCommand").f(void 0, void 0).ser(se_ListMapRunsCommand).de(de_ListMapRunsCommand).build() {
+    };
+    __name2(_ListMapRunsCommand, "ListMapRunsCommand");
+    var ListMapRunsCommand = _ListMapRunsCommand;
+    var _ListStateMachineAliasesCommand = class _ListStateMachineAliasesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineAliases", {}).n("SFNClient", "ListStateMachineAliasesCommand").f(void 0, void 0).ser(se_ListStateMachineAliasesCommand).de(de_ListStateMachineAliasesCommand).build() {
+    };
+    __name2(_ListStateMachineAliasesCommand, "ListStateMachineAliasesCommand");
+    var ListStateMachineAliasesCommand = _ListStateMachineAliasesCommand;
+    var _ListStateMachinesCommand = class _ListStateMachinesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachines", {}).n("SFNClient", "ListStateMachinesCommand").f(void 0, void 0).ser(se_ListStateMachinesCommand).de(de_ListStateMachinesCommand).build() {
+    };
+    __name2(_ListStateMachinesCommand, "ListStateMachinesCommand");
+    var ListStateMachinesCommand = _ListStateMachinesCommand;
+    var _ListStateMachineVersionsCommand = class _ListStateMachineVersionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineVersions", {}).n("SFNClient", "ListStateMachineVersionsCommand").f(void 0, void 0).ser(se_ListStateMachineVersionsCommand).de(de_ListStateMachineVersionsCommand).build() {
+    };
+    __name2(_ListStateMachineVersionsCommand, "ListStateMachineVersionsCommand");
+    var ListStateMachineVersionsCommand = _ListStateMachineVersionsCommand;
+    var _ListTagsForResourceCommand = class _ListTagsForResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListTagsForResource", {}).n("SFNClient", "ListTagsForResourceCommand").f(void 0, void 0).ser(se_ListTagsForResourceCommand).de(de_ListTagsForResourceCommand).build() {
+    };
+    __name2(_ListTagsForResourceCommand, "ListTagsForResourceCommand");
+    var ListTagsForResourceCommand = _ListTagsForResourceCommand;
+    var _PublishStateMachineVersionCommand = class _PublishStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "PublishStateMachineVersion", {}).n("SFNClient", "PublishStateMachineVersionCommand").f(PublishStateMachineVersionInputFilterSensitiveLog, void 0).ser(se_PublishStateMachineVersionCommand).de(de_PublishStateMachineVersionCommand).build() {
+    };
+    __name2(_PublishStateMachineVersionCommand, "PublishStateMachineVersionCommand");
+    var PublishStateMachineVersionCommand = _PublishStateMachineVersionCommand;
+    var _RedriveExecutionCommand = class _RedriveExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "RedriveExecution", {}).n("SFNClient", "RedriveExecutionCommand").f(void 0, void 0).ser(se_RedriveExecutionCommand).de(de_RedriveExecutionCommand).build() {
+    };
+    __name2(_RedriveExecutionCommand, "RedriveExecutionCommand");
+    var RedriveExecutionCommand = _RedriveExecutionCommand;
+    var _SendTaskFailureCommand = class _SendTaskFailureCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskFailure", {}).n("SFNClient", "SendTaskFailureCommand").f(SendTaskFailureInputFilterSensitiveLog, void 0).ser(se_SendTaskFailureCommand).de(de_SendTaskFailureCommand).build() {
+    };
+    __name2(_SendTaskFailureCommand, "SendTaskFailureCommand");
+    var SendTaskFailureCommand = _SendTaskFailureCommand;
+    var _SendTaskHeartbeatCommand = class _SendTaskHeartbeatCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskHeartbeat", {}).n("SFNClient", "SendTaskHeartbeatCommand").f(void 0, void 0).ser(se_SendTaskHeartbeatCommand).de(de_SendTaskHeartbeatCommand).build() {
+    };
+    __name2(_SendTaskHeartbeatCommand, "SendTaskHeartbeatCommand");
+    var SendTaskHeartbeatCommand = _SendTaskHeartbeatCommand;
+    var _SendTaskSuccessCommand = class _SendTaskSuccessCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskSuccess", {}).n("SFNClient", "SendTaskSuccessCommand").f(SendTaskSuccessInputFilterSensitiveLog, void 0).ser(se_SendTaskSuccessCommand).de(de_SendTaskSuccessCommand).build() {
+    };
+    __name2(_SendTaskSuccessCommand, "SendTaskSuccessCommand");
+    var SendTaskSuccessCommand = _SendTaskSuccessCommand;
+    var _StartExecutionCommand = class _StartExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartExecution", {}).n("SFNClient", "StartExecutionCommand").f(StartExecutionInputFilterSensitiveLog, void 0).ser(se_StartExecutionCommand).de(de_StartExecutionCommand).build() {
+    };
+    __name2(_StartExecutionCommand, "StartExecutionCommand");
+    var StartExecutionCommand = _StartExecutionCommand;
+    var _StartSyncExecutionCommand = class _StartSyncExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartSyncExecution", {}).n("SFNClient", "StartSyncExecutionCommand").f(StartSyncExecutionInputFilterSensitiveLog, StartSyncExecutionOutputFilterSensitiveLog).ser(se_StartSyncExecutionCommand).de(de_StartSyncExecutionCommand).build() {
+    };
+    __name2(_StartSyncExecutionCommand, "StartSyncExecutionCommand");
+    var StartSyncExecutionCommand = _StartSyncExecutionCommand;
+    var _StopExecutionCommand = class _StopExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StopExecution", {}).n("SFNClient", "StopExecutionCommand").f(StopExecutionInputFilterSensitiveLog, void 0).ser(se_StopExecutionCommand).de(de_StopExecutionCommand).build() {
+    };
+    __name2(_StopExecutionCommand, "StopExecutionCommand");
+    var StopExecutionCommand = _StopExecutionCommand;
+    var _TagResourceCommand = class _TagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TagResource", {}).n("SFNClient", "TagResourceCommand").f(void 0, void 0).ser(se_TagResourceCommand).de(de_TagResourceCommand).build() {
+    };
+    __name2(_TagResourceCommand, "TagResourceCommand");
+    var TagResourceCommand = _TagResourceCommand;
+    var _TestStateCommand = class _TestStateCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TestState", {}).n("SFNClient", "TestStateCommand").f(TestStateInputFilterSensitiveLog, TestStateOutputFilterSensitiveLog).ser(se_TestStateCommand).de(de_TestStateCommand).build() {
+    };
+    __name2(_TestStateCommand, "TestStateCommand");
+    var TestStateCommand = _TestStateCommand;
+    var _UntagResourceCommand = class _UntagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UntagResource", {}).n("SFNClient", "UntagResourceCommand").f(void 0, void 0).ser(se_UntagResourceCommand).de(de_UntagResourceCommand).build() {
+    };
+    __name2(_UntagResourceCommand, "UntagResourceCommand");
+    var UntagResourceCommand = _UntagResourceCommand;
+    var _UpdateMapRunCommand = class _UpdateMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateMapRun", {}).n("SFNClient", "UpdateMapRunCommand").f(void 0, void 0).ser(se_UpdateMapRunCommand).de(de_UpdateMapRunCommand).build() {
+    };
+    __name2(_UpdateMapRunCommand, "UpdateMapRunCommand");
+    var UpdateMapRunCommand = _UpdateMapRunCommand;
+    var _UpdateStateMachineAliasCommand = class _UpdateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachineAlias", {}).n("SFNClient", "UpdateStateMachineAliasCommand").f(UpdateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineAliasCommand).de(de_UpdateStateMachineAliasCommand).build() {
+    };
+    __name2(_UpdateStateMachineAliasCommand, "UpdateStateMachineAliasCommand");
+    var UpdateStateMachineAliasCommand = _UpdateStateMachineAliasCommand;
+    var _UpdateStateMachineCommand = class _UpdateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachine", {}).n("SFNClient", "UpdateStateMachineCommand").f(UpdateStateMachineInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineCommand).de(de_UpdateStateMachineCommand).build() {
+    };
+    __name2(_UpdateStateMachineCommand, "UpdateStateMachineCommand");
+    var UpdateStateMachineCommand = _UpdateStateMachineCommand;
+    var _ValidateStateMachineDefinitionCommand = class _ValidateStateMachineDefinitionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ValidateStateMachineDefinition", {}).n("SFNClient", "ValidateStateMachineDefinitionCommand").f(ValidateStateMachineDefinitionInputFilterSensitiveLog, void 0).ser(se_ValidateStateMachineDefinitionCommand).de(de_ValidateStateMachineDefinitionCommand).build() {
+    };
+    __name2(_ValidateStateMachineDefinitionCommand, "ValidateStateMachineDefinitionCommand");
+    var ValidateStateMachineDefinitionCommand = _ValidateStateMachineDefinitionCommand;
+    var commands = {
+      CreateActivityCommand,
+      CreateStateMachineCommand,
+      CreateStateMachineAliasCommand,
+      DeleteActivityCommand,
+      DeleteStateMachineCommand,
+      DeleteStateMachineAliasCommand,
+      DeleteStateMachineVersionCommand,
+      DescribeActivityCommand,
+      DescribeExecutionCommand,
+      DescribeMapRunCommand,
+      DescribeStateMachineCommand,
+      DescribeStateMachineAliasCommand,
+      DescribeStateMachineForExecutionCommand,
+      GetActivityTaskCommand,
+      GetExecutionHistoryCommand,
+      ListActivitiesCommand,
+      ListExecutionsCommand,
+      ListMapRunsCommand,
+      ListStateMachineAliasesCommand,
+      ListStateMachinesCommand,
+      ListStateMachineVersionsCommand,
+      ListTagsForResourceCommand,
+      PublishStateMachineVersionCommand,
+      RedriveExecutionCommand,
+      SendTaskFailureCommand,
+      SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand,
+      StartExecutionCommand,
+      StartSyncExecutionCommand,
+      StopExecutionCommand,
+      TagResourceCommand,
+      TestStateCommand,
+      UntagResourceCommand,
+      UpdateMapRunCommand,
+      UpdateStateMachineCommand,
+      UpdateStateMachineAliasCommand,
+      ValidateStateMachineDefinitionCommand
+    };
+    var _SFN = class _SFN extends SFNClient {
+    };
+    __name2(_SFN, "SFN");
+    var SFN2 = _SFN;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SFN2);
+    var paginateGetExecutionHistory = (0, import_core4.createPaginator)(SFNClient, GetExecutionHistoryCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListActivities = (0, import_core4.createPaginator)(SFNClient, ListActivitiesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListExecutions = (0, import_core4.createPaginator)(SFNClient, ListExecutionsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListMapRuns = (0, import_core4.createPaginator)(SFNClient, ListMapRunsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListStateMachines = (0, import_core4.createPaginator)(SFNClient, ListStateMachinesCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/parameter-types.ts
+var zlib2, typeCoercionStateMachine;
+var init_parameter_types = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/parameter-types.ts"() {
+    "use strict";
+    zlib2 = __toESM(require("zlib"));
+    typeCoercionStateMachine = () => {
+      const encoded = "Wyh0NiJJL6a5QDm2R+wa3nasIiZ8rauGeZab052kM0x6bT8EU0/HwbGSGrFuzuBbg02JZCzlwCgshy6qvkrFpm00Rthzgqs8/isVpWM0Rti0Dkzk+gC1msuWI3d05cm3trr8vSo57d7/ci3JNiKBbZ5RCeB2xaKj+ntgSfPFW9e2q7AoEuIRCMspciESLNZrqX2UbxDJ2n+lPCSbvuQv0lcIoDHwPDYKvdU9w6F8M1+r030Ot3Zmf0fZStLq2G2NpaR39gaRTxLKlMAQgNPca5rZ9S5TpuPTcwKJYcH2peOzrAtGMqB4Anqw1IXm+wE24MgH7/L/f1oaFrXxSlpNcwcwOADZfTQpjZHVfe99Hf8/2vLHVdri2gelS251dpELSjqhjYaS4FAW//u+Uuvf7I0uPC4cwUAkgYSUeCyl8jXT7o//rDwioCwShDqSqrQqSu9Npomz1jnbBA93N2NEIOwz0JiJFGlWUuZrlJW/6fbe51z36w3AaEBmRABSkpTqfaWy7Fvma9rh78d/OPzjSQTIZ0a9Vlmj/E3nf5lZSbN3+iNr4tDbTTk8CsOj41RlFW4klbK823wv86+ACBJoIHjAAFTS2qMl82fWLLsbiCOA2YsAMHvapTQMj7a59vypnLVRo82/7Hs1ybIizyFcEVxUq9fUxex7gQNw/pORyUnLcddWGIwUbQfCYGbORgfkpnnWWjlokQ8ISicsFRgsomt7/yzGyW1vVr/pq+ol6enPF8RhzCGEELZjY7/8T22ceC/baT6bB+i6EcjdZawqWnt69qmn6+4vk4AIiKgQktQuS5PaSdu9TMo3lgTGmG6KLLjF32fVVic9O1eVSv5ugyT7DRgwfsjy4pvW4zqZ3b7a4+SvjQCQt6ib4gEiy/75TC1g/I9+xZfzUWlv4+9bMQMt+XxPn6brewz4xhqOS2fE29IUqrR0k2Ws90++ahPMHnOi1N3i9cHHfX810RD7cp4VHB149M+svX7cOruD3sWT73oQHgrmuj6PGl3Ea5Kw2le4QVYzj6ECYZI5hvT9a4rQbc9Y4lnmhA18DwPdlUA+5FoA2Q5zVvni+HeWZHvi7TUiB1p3hpYbJGcW1gxLLBvvNucqXDcBBkk1w6GA3rr9nEvCVqmeyLo/RDdVaHBnYqVzYF+EBWungdUBcXOYbUNr8tTFE9nhoEM2GB3kBP6hX0bG5XFt8rQts9cR8YDuz8Gf8QNpqYZ/Jj3PpKmhWAoopciPuKAdXW9viWwuw9wjp0TOd7EZsDnwqXHyv2p7IcYFajl3WIBazW3znW2HJRPNLm3hzB4NKn+kLGzJUPP1D2UEA0XL1lE8wkN7hrxAxn9m3hvBvkFPWLgy2UA6J7cLC3mqU83unWGEfBPYhJv/hAU8tlL3gRm4FQ8TLNPGS0GubqefcExWfBoA2DTkLYjqa0KCwo0/CRuctiUNr0eyOPP7rWsO5fqJ2Vd0HvGGFttFbId2VuWa32lZM5/CSOwEnKh/c6ZgWGpTt2p2Z8mjKRcDLDzIUWXMDm4KuP8rMPSQzEi5b6BfYKy9PvDu8m6fWealr8lIEBhxaYRoo/aMmrSqMgVAiUcdGvu/cvciCrsq6BXoWROwE3Iw9a7tRVbRbAExTbbP8lati6c/cmyvohiQJJWeWr4uh1DrLJs70E+FFl4B8eb9WqRGmYsN8xr/HwNkSrgf30ynxwyoK3w/9JrtXykksA78yIgimD/IIXcLWSTa1CrenZLKpdqfV1uCwn3yV/yNhmBqjxshdHArh1ZypY9tXD5mefPIm9Qek8Sz8VBjdD9ClgA+tnVQdPSmfvz8Ky0gf3Ljn1UUUI8kO+CBGplNgZ9hRL74Z+FYWeYWMQ/MULYMG9eOd1zKxgB0Q/aZ9RPf67SU7pVAjR+NQieW9IH8JLMx5CDC7OS8b+VOSYHrihxngHxecdlHGIlvEGdPzKrwN6xbUd3gotyZQicnOSouTy9eIEQxI6oIZ/WphPuQ8yGPBw3c5LG+c9c4uyWq1nvrMpX3GFZoYwY8jvW5v5obJfLxzOYUBMLjUdvrA/FK9LSQ1NnqGZW3hIo0Hddwh0lT1DsS0nGU0Fdqatcwq5Aukb4Z6mVIRCyVOmPxu2OccxVKUZwr9cdjfEQ0Z9rHnCtINM5ssy+YqqGqAWn7kaIRfGqPDANMAGTgd3IhMVXlBXezmXx5zVdy4DsjE9WzG2jgr68mkreGQPxyDUBncoisCnhyWNUUo7Nnrkio1RVlbCtQ58bIQPtTxNPrvlQLvLDwbim1iXC2g/QMDcL15YPWg6ptgnEFaUfZ0+jsjyGfvC5QkcQUl+bNKzrmyIfMTSuzQ7ePIbAc3Q1M6GAdaYUqLWi+kQkqUA0aMc2IFkOZXCPywHr69IOi5uQboBg53QpTPdJUeFDFmke1SiEayAe74u3lTEClez/lddOv3xsNfvTundQkC9D5AIcvDarwj6EiqKPh3oDB4t2+vMOAhihKw3SNIenaOLNyCLRb8xuj5eia6sC4Po2HcGHb4Tbkk/rpPCql9OfjsIoZ76bU5rTXlBWGa7TEIAAcnrk2TVXYBdRuIRrSSGUeI9EN3tNQPIBaIiMze1i1cnJyXUUaGdqDiU9yWPtknKPUJTkGyMB46yXeOmNEx6omRoRd4Sxv2NuP07iE0bYjuPMH4oOacBWatduJJLXh30FWKtn7SWVf9ziP+RmWyzXCs0uvhBymy4TGI9CeugwH42SEXE9Gdl08MOULwRA/xXChbxf689YLv+dUVL2zX3RYPT1Ndsw8u/zOnMx4T7vC9NCI0XgvD9AunyQ3YO7pEZv68siqL4VHRUwngrtZNukUBvgUHvNeEA0giXU6NkOqAY+pD2yyyYohkBtCk33lVWNJfhapnLxvUh9OjWLIvKlzopZ35igI9Cv5ELRKGb2s6mugt78CpP2kOASe5il8hRJJmm/jnukMpmy8corKgGsGbPDdcmxRFSfMt1MH4z2YOABTd00p10nh5fTI0R9CQ/9/NwndXSpWFtjonk6KfNYP+6oAZw1IOCEmG3FzcAn3ae//vlXrU487dlB6jMrsjgSfcdRXDuY1Zt2nMqOMbM5bc9QkecqvJw/AJBzzKMqjJehuykMAYvVLoabSqwSm2MM8vRH4gQCHX08jaTPxMyBTA64rKYM8ABs3GKgufW9+qnzCe9CBtpFsKoZrAaY7pHsXc00k25OhvVVWXzqWmEw3kMojAbtHYZ/77txiPN1uyYuaIPh4XMs/OzMkxrk072AHM+dBj5qwIUrxKpENltITNi5j3brNlCIlJubd3DDvW1/5nDDsbGhQzJEHQ0iPucbzUawDDGcUKzf7eQAYAJgAN6k31TBUnUFJ6a1QTtbyZQw9ogUowKFHaFQxG03Y3i7BR1vIy1Ode85hBRpjyUAslXF9EIWCnt9/Zt/b38urinE9RHjNuZ5Hu0jd+veID6jgwwiYYi9pRDfm80XUF2nbMoZiruhAktdKUasm9EjIMmgysXxoFFtgFigb+gcKl1/xwAF6Jqd6+8DtEETNECBoOTyZaDD+Wl+497Xac5fUajlEV5Kexgf6jEhZHTQ9QgXKxBjFoPEDaDqPmi8I6p7dSyW8cjV7TuSV9XzqR4GlzBH4qo0DLducyiithlpG61aF8/z1XGGUqdVAGNqbDrUS3ot5NHVAGJy9PsSRvAazVjAt6+wZg3B6mkcNLqEQaUCJrQiSH5ybX43h0wjNNpCl76obxYaj8VMiczK4//+1p3BzS21FLDYkxGSlZQbI8EqxFz0zaIqIYz7P07sV/mBfVEHKZhvdGCWra3l3vpangq/q2AyW1dSQH/31v5Yj+x0yv6cmdrtbXNmo1FWNTQGq922jNld8ttOi999qHaDd9jfiG7vleW8d2WmkJGBn32VbZuVbHf6hRXsrB5d0j/9BC4U0nEzPxBSZy0+U+4Maix0AEAZ3tBjAMgDo6da8vvdTojEzgKE5WjZlOvcFbW2R4wI0DBI2xjiRNZ3IFuDMi0PEXNX7h0eT34zg/pZeKN4n1/XAS0g0DTQCYzv9vU+4f3IGsfQC/Ej07dRnSrKvkAtdxLCknhhNrctskmQrxUAJ7W2yXK+ZWiwCUCu2RerWzSCqrd+dReDrkLTRrfFBUt/tv3xCve6/6wt5lZHFb/NybhCHd+Y1ztfTryg/jwC23eTwTQwyEIensR+sv3DzBod9rNFl4+SKAExvNDAIR8YMdqkJpwQTh/rO84khgeUhTFQGmGIx+H7jhDyN28J9fYwXCXZ7wo7h5bcRNJizqFAYG3xl3Ow0SNl4p5ehsGDDil8SvkGlO7ejM1FXEbXvFFq7GG/5+qG54Sdw/LrxbVzJFFJ1Y9nqbuaDC3ucbrkbwELnF0m6EwLC3y80dPXC4qFXexv1k22uknGoqbdnr8S9ALGRTywKgelBmGcA9sUtdr2mA8J3zYeA+GnyS1SZiNjLCdsEcEGphljZqddHd6grNtpHAog/0gFUPBsA+6CpQVz4KxwaSvCkFcIDSvLiOhDHMh6+JzTerWa8H26LRxsuivCsDqqin6N8g3swAPwpHzlwr+DvebQzeUo5x593iVDgNjHPEONT81PnzMiI7xoFZdxa6nP2vzZa6qBTrJY1f0cg1uIcZ4UpTVRpvSucQ3XBQZCWc4827asrayyeB1T6pg7MGN7/E762FglL+OtMpROndXDwBH/FOdVECZHlmHaYClyB4NGEY1afJuJ/589rTqQPcq+P/0LjjrFEhwtrYjeM6YIpE52Jy6+9lmNBJJysWyP9fdvP5zW7v7l/yLBNbJrERh/PeeQvPvIG1voNF/iWEsAapgSq15ZQakrZ66eE7zShpp87j3C0r2km88jIRh2bVyttLbwt77zKwWHvbibV2h1rKboni+iEiq09hHepwhumuj3AXr9nC4vhbTLrWO40YtatBNKPizVmJh8VZyWMMhZ7MAsbjoCZnXLit+Rq6h1zIEQK4+VtdvN50gwS3Z14AB0ZZkiTSqIhupHW7sHCmhidxcY9vPq6WbvYMDb4Ffv/hv8xAOuzZtIMZHjWVR4IsJviKc7egKxHj0kArJGNTmDXWYJqlgWNNJUCw6qNp7twqU88rTH3BEw3+RxRgd/2trUviwr53dbH6FEnZSxfkLL3gyNdkctdFDVlUuOmZE6qvow8smS0lYeIAyxARlZZjk3LrRkPzAZxUlb43frJAxpHy+NnZ4NwpxmXqPSVGWIFpwBUY+q8zmSWyT9SEU/NpZSt5UXE/MTkiAmgev8RY4HTabZpYHspoC+UxumsRWPPY0dY+wSHpH8QuZ6XOfYwsQ41g3OUDgvwpcIm2U9AlvFAMHCdJqawFL7FFbPeAFQj2IYr6X64HguomhKQviNR6Oo+jWyf2ntIJe0yEHT6LjRy6aJda75TD2HO1YkaxIPSiSBiMxi5h6/lVIgQXdWLLPcKkjoypzXX0tHJm8Z/l8k7Tz/8sT5ja1ibPUTfrk8KhanIV1xZoUXnA+2O8E7I2h9Ej8rYptiuG28MeoH3D9NE8IrAjXLWpjD5r485c4x9gw6Y5cM2B/GsQIRcvhnlnic6FjGs4a9OsJVBROMGEahxQi7kMAhCvdviZDSc+PnBWuCbKGKdMqi2TT3N5QmM6pY9wl/v80RfeYE5Wznddpj8/soC7lJddFgP50Akb3RmaQSxmgdehLx5Em08fM5D63bGAVLD/i94IKWcUFDhn4P8cMcYy+6cgF1fWG2KH71OpWBETPFxKihuKLvLq3nFhYr7icPD4jsVWNex8fa8cGk/kROWgPpCNdqcIpgpZSMZsPrMaU1viPZ23zP6IWAk1VI9epKn3IB4YB8nUc3xfUSrfhaW+R2ZQ8HIznzVVbCW9DLznBqRlQM94iwtBanbYadWcuIHjEY2cYUOlAjHBoqhVU84PaL9HdGHSe42ZFFDvnWy2yJf491yjBrlQPIj4KfgBK9yYtgpL0t8ezOZj/OYyGhu1KTDOZccbGyoILLq5mYs3ZbZndSir91eltpOiYU5YntAmB2YgWDdDTsWAe/hK+feo7jIOuhSVsb2WPWSu0Ofugrwwa1IKUfDfW5bk/MP8NfT1E5IbLub+1bYTonlIO/qEO3N3JnbcZ99xymzOeS/B3wf7F+lr2BebcFl9vf67PdV2m7PQD+HzWEA1pJNpwBlkzVu4AzIOmI77Zl9sE3YVTdu/Qy/Ls8D22OYZgNE5hOtr/sTziATf2J1tov2yuw5stSGhdse03zGtZCcO2oRJzHRIseSaD3bC1xxG1/fMGuLvbay6znnzivxZIsubmsHgAHWQIfPFl36tTzimR7yqFj9X9OY8HDvJA3Bz0OfCIHiPjO9LRwbkcrHw2FLa7y7XAz34Y8kRla4t1J3cjeasDIOtapfYiEopnf4K7B6LH9wxmQNm56v3AVgHT7TLPRQuC8pLM+ZcfdDraHx5Jaz1Mec3LNxc3evNbwr2KmupoowLpPm0Y7SePwMbKqfeUqD1qFn1sFV6k3wIk15x8fpBqsZP/c8twDNI0aWi/p5S8NteBrfB4p7n4TV7m1nouoCG4bCdXdly1TOUFsLSnSua5dQzQe5PkkXHpvMk+nRA7nBALoG0iwiVK79s5dQED2UXZUsLUD2SG/hAOKSbcThuV4Uvxu+1zuAerrroHyZ3wuLs7qT7TeJaM1sgZD1cLhR1A9ckyTxGV7kyOQac0u4rqUywpY9jNoTN+1AFHghDIt3NLNYAjZLVu5alzDLyWXS16n62H9a5Ee5isrYw9rip5IEElt7DU0dksKk6wc9qDFIPQOfTGr3MoGIpwhKhqKVCWgdyoc52K3W5x6IaX+HrHYN303eDlvFPHcBZi118vY+v3NUPkdYFoL35fuuZG9zuBNEFpzw6ipMlnECLwC7TnJiAqhb7P7Z/kwOvXgvbaUIIDIkKSvtge0feIZVg+t/RGagcH3JuKgTBdAETgRwUgNTn1hOWF1hXcBttS8FA6961AOwGumBz/X27lStCfea9MHt9GrW1SrwVeGq1/unShvug4xFuUcDEUq4Zd4Iibm6pmsf8B5ECpfuCKFdDUVhqtdQoJqGNtG/MHlgbpTPkN2GZbtK2tbu6HP4qqqVDDfAKk4HMbwdbH7b6Y6rBQr+6MvPlUjujyMvQve2FD8S9bBZekQRSOkhwg+Uk51AINfHznUP0M4FRkKoPxOnFKGFxiHIneMQ0XZ8py336X3A2lsTc38ON19s/SHHXg2o1rOMYTH9IFxLgVP6fPMOIRc+ZCywpxy/kNtksOOzz04AGaqS9T1bliaRYZ93ea15RrGr17FlVidwTdWVLGCHWSjsTwwwcqvCQ8MS56czb/Ls7Zhd3hlw9WghfLKGja8urC/kUW+SPANID+P+NnzXohy4yGWDr9p0dUt4rwMJcCE4mDPq8t4ugSOdvo0gRwJinaohxDLALUmiE7FuQNWDOLMBvwhjT72Q/6adXgZzXGPhUUtSCZYM3NY5Tob7IHB8ADDals1PAWK7MDlh3+4SyMfb7H63A+prvP5fh6vBh0DYIScPmeYeVPqZ6z1+Ngfw6lfesDgS4TAc+ufsa9NoWmUkzXAD8YRlrokw0Rb72qHbLp11a5ZLY/+nGBkUwjZ7RSSbQsgPIKhsJ1+yWeOcx8OTQebOY2AGDFUbRVXFCmW4+xQGyoIB0FKSiMe7uf7en2ROBnz3BIqurRLCGUi+psr+6B1YvfiYKObw9qV4yc55MLDuiEDKO4q8MUA8ZdzsAML1llPCxKxHwmpZH9GjxN6gbfgDZZ2GwZ2+X3ClbhRnG+pN21MfKFI9cXRPQ9Ox+GwLYG8hzohz/9AuYhh2oHqCznzJRppAsHEDYtM7YnLGEt9EbDRHHqE5jm8Zq+CEaE3ScDWtwS+j5ivRczA5FDEdCCsUF8k99gKXu0EqM/HZJXeSlIPL7FfQ173jZtVkV/kTd8XdRLyqRU3PB48yz1iQ++W+ipMyb4VdXjRcNMwq6OEMaei+bPrrWiAIqG4opdhbCdrHTWL7hoP3ju5gk/g/fPcgQbcIOcj8vLRZL+Czl/cliZziPjE3IPIMKW/22NSWGZd6EhmhAFz82KiemZZR6qTf47AAoHe4B4xVAFA9CEKsf5BlKLDaKPubnFTh1yORB+tLfgpSmCFOOmwxDsAlR2plXZUmWWrPc0/tseXp/YoQiz8K1ctdg43CS/qAYO2Wz5gnDTFfsjMEqdejpnTsWttv255Mdyo3UySLVx3z3+zauXVNhOUrrbwPzJLdj18LFXCsR1SyRavgT/tn7zBVO+TJduGDZfkig+UebqiSLYG6FXVyPrzyc3tbfBA3dzL1XlxkVX8kzGJHASIlx0oeDjbwYEKaAxcCcdAcECAYuofvwJTpAAEBhKHa9oJTS4azCDhxKwjlExxoIEf3ELIkWti+rFr/cGaBvcJSlkdpQpeS6PWZEEDU8QjJveRsRgAfyAfESQp4jMu3L7zHVhe89r9LGXjKeiREqex7lynbysQMPsXZC/btPFg/eJmu1mYONcTAx7DRher1tvsHH6fD6+/qGYeXb6IkeXG0ft09IOSUCCk8+27jeO9Cm5PKSyHmAnvfpvtWx/RYKBFBOExCPMJm/71XK4ZQiB9Sh0blQXw9d2FQi8DDeMYzm1K6521PnDZJf6JaD+jLjSt3WyxT9psz7w9Ty6NmlVFmd+BBQB22ij9llnuPQz485YPY6hn3ZjzfALZWN+hcVT5Bd/pYl4PwjFj+1XLOUuuB8urQaV+adIzL+XItKjDpFvXxvXmQZ/A7pts8s++ze6a3H/CPeRmYv0O/vq7nCe4LC+ZjKjz5dH6D+J9hXoBjEdIi3ipJ66893eP459kTADNDZy7OUH+HlG5pQXcrHVHEuiH2lPrEQt3MEWaPLe/sNWPLOyRpq170ALpTkPCIY6T4MGl0aPtT+ZWmSXVz+Pv57yWevQ6g+TNthJYY1nu7xoCROj44I/HAOKAhfXEVFUn970uVZi5kGWL4ziN6Al33ODkXLX1xG0UfRo1AEXkLHDntFihalBV01+0+y6D4/ja2uKLqqOABtu4lHTfArVu1gHPCeg/xGhDdkbgAsEZQBxQ9fEALsK9VUaZAAaoFNT53ITIwUSqArS2pBVAd0WqUJqaAuqHbP1Xfh3td66RPcwt+4p/wuoFJDodHDWabGFcXrfISYDXjI1HOFuzwqQYxkK1nmwarTiafAte97IMEdeP8wHLegcPzBURUe5XoTmZ0LRk5gGowq/AlLBy21I5ys/ErMwWBoCt+JHNdu8ElcuPIExSbXdMJW/HY4/LE6vWxR+t+E7RbrnF9d1+zubKTTi0n/OjOVu5wrB6ZNTjuxZA6XA3YDmYMihOddYzI/vQ+TslDf7NG/V+UFRc5iMbBjIdmmBnZnV5O5xNsXfLtwIF8wnUnYZ9pgKV2eiQ/Sp/17QCsMN44nAGk40jIyCUGEfvhwQ3Mu9fp9D+anGlYX2KCPDkRkIPcWMWRguRvISOKfss7ZS0ciYER+T9r7w6uWYGRzujSsCheUZ7kcBNKAzKPc7tE+rwKWs7+sxx1Zz5QfCGD2afA8s/zn3B0yBbJ5OWDLblcTHRu8j0VJgaWkQPPUomOtUpL0ZipxMdW23uE+VbIJ8lXqGW15jcjV14z3vI9yzRFvmYtKigYls0f6c3phdRIXZ+AvMjQ68HxHwHqiqsFdh2h1TWPnHt3FH+JwU7F+QbUJYmDgMY+mO9H4urcTlz03BFTNRDudT3/b3PV1aH2o1v/BUw11JGJDtb17MuENSC7zngi3Oqa2N0NLczcNrNDIrrUfo2B5dudE4pNDjxOHCanO5YRLpdsNBkY7uzFIQxLoBw0HY5MYNEjWmcsTgEW/FP57R/JsxoYvWPKUXXHlu+Splfb6Vq59Hc7LDRtKw5WuZy+QdkrmECUFFIvnoQ7jIED6S8fUehukUDt+sQDFz5Y6VIzKoUEPU/4GSSP1a8ix4b5uoIoKHPglU7GopDOrHNdxgsKfJ2/Kv1xQZR6uLVwq07l3qk+mYfkJAaiBepprnHdz9t4v5bHme/M9z8ebUUHVxACHWqKY/DtKG0BNowSmuiD/im3DqGs3r5/Id9Tly7gSPbAFvoXTnjlfbx/YvgiyzCbst6ip1i+X/VB1jzBMO9tefbI6ILU6bCaSMCVmaDZ1/DPBiXMvLKUnb0XJ532t/NtAdmheodObz1DW0uAH+uFloRt+06yj2x3J5JhgHqS++LcRpuY7zSfGjYBKE9phuSq2eP2MhDq4ukTSNx6ASvKKeKbGAjQDn9UHI1PbjJCeRm2zsgHxCkOZFqdGR0DMsdX3zd/yzvVtCfFR4oUwfEVvGB1VC6fXJXLuDXI/xsKp60tz77zeTCtiboejVDasImYsZDHsnWA2J+vC2xpMCVWyigRphaart5YhImzsppwyAsa4NfPJrbl0i79LclemxzaVxFLFZeX3J7tF/PdYpc3vMK+Hs3eC/ep1UC3yTqOy/niGQ/wL5THHxSLTSlxtofHbZQOoNPNnJ+uR++3NLbKXRFEEXpY9A+wEPi3ZdgPVDf1ds/2Bcd2NqyJuPV3mOb9kzvDCjeIj0a8xGpuKJGBOMNiyjNaOXu63hPrf8i5DCdLIoCp4XsAGOrcv30+jF94UuaICr6hjz6YmsLuuQALWUCThPtj2r7Qzgr7yV90N8jMcLCF+awEDb80zm92gEXF5OFenQEkFqoHicHCjxZv3RMd+ncIHJQX1aW+ew9sbys3vBKHRdoLa/8nOFCEmI7yWwPNDS6u8FiX4smMdetKHxYgSqMJX+saPu6JdcD65dLpOAkEbtTJoEtMjvoyQQ3g7nhWvFjY+Of4YITzQdWp2bvheJWtwWvQlhfFPW/KwjPlH76dPKaoHbd3gOIs18oS4WbEz6mTfgr/yL1kjCt75Vt5UK1120XHcHbMMP0hB7kkzrJhGHaHaCerxJXQhDmAOsrI4GDToqGvl8Qsq+dsnizIL9N+JE+mpTm7Vi8ifPtxy4BlsUw63/z/dr5FY7xJicMZCKI6G5fF9ltS3fGzWcRt3Bmy9RzkVESVzltc8evFqOEaZu5HzlSBg2GUuTW/tJHoLcjF7f268571GD5//WdflRUIk1hwg1eDB2MfTMOhZw6eny3MXpaAr28Au7GO7AFxQREEGx8QlAipH0PO8CoJ4idmHo04IHp2DOGMVcHTGhAvf+QU8vlIiIfIMjNpCl7vwKVM5s88uoPs7Hd5UJn+0NEbTw+iTkfwiRl96LRHST9vHet1eXdniUX3sEiS0na+ci/BoxZt3Ck+iCzmJ4egJkbblgYQ2UDecWydhiEAbX1NfYbnRg3gofjf46lpqMQ3TLME1MWBEsP3QoAzmCS0rNo39HMgvsTmEbot5bYwiboT728HyVUQtzlszkkRmo8cZunlJ8Q5IKe9DdDOhTP6hkOt+GY6VSfF5dtJcmnCDGM6t24Jvhq4t7OL87YEEEWc7rDyL/OVveYbV/rlceVyn5zjW276+I2EB9ebUxTCqf75Jgfx5clfNl+VrPr+q5gx2cBAXPDfosbDKW/JPIA7kjMXRwaB+wN3wwRu+mMWxGopZA2+26ljrxS8gIPSwA0xKbkyiPBYKbXbgeC12efD7+hfu/PxE0S0vGDz/oXJ/Z0scL2V1Mc4wbEbMfuXTCC/M6vhqGBDbM6BIXypjpY4hVSgTd0exVcmwtmGRV65a/kTc0oAI883MVxVP1KZH9aBRYIKsnaHgVxiOloxrRUWwrPWXJXl23AWZvffmUrOCdjQMAMURmmzXl3OW0KmaTBwy32QcOwd838JA9kisaDZD/bSSZ5OuRysYv860oX73otWW+vUzY3vu8U+a7DvFn6QMGcVoAWhSJ9MbGc/PXk5JYDdyc7/A9QQYBBf7kRKEnE6ulCAe3gksiEGX13hs+sVPUJSSJBCWD3ZU5t/FGSq/pPj/IR6dow9zvjI9yHDzAqba21qdLMAjoe2DnUwTwgSy4CbO5/B+npp+22BbfcHz6Y1y0MAq3Na+9PF5DlX6O/rUrbgXtrplQOGwydS+S9Z5pQ5M3zGO8ocyQqjCi8UQ8qZ76aXJ5GhzUeeFNpfsiJbPRGA4qH4dzhbcZ09gy6g9JMxCxmwMevijE08WFPossChQzsYAmsYt/Gs93aidygybyKyZvQZALVyD3xuZD7agUeNLFrN/5zDAcoC6VjG807F8vO0fY8AwQyojSgySFNfWSzaSOmPkEAIhin+cpApE9MBz/lDP6Xv7Tyw3AKkO/nbsR2oMnZXbqKAeifBhrc6e3luplyQwcnPpdcSVCbDULdX+p7HIiFnLJnjzjyhug5pk1aDL++Tte6REMcLvsc9d0NHlAxTkB5DyFbrnhr2QWboTIYK49lJVmGW484Z5cmPApj0tIW8l3ZKbMrFAqp2gFnXBNYJB51SnQbAew5XdeP0z5cWz53zAeKRpgT+swHKi7kpm8sLc+r6PM2dVbl49OiYxTjpY2HNBKLb86CpmU1oC5bTqHnah5+CfCY/tiVG1wlEG1081xts38G2PwO0X0tlxTB+fz37QPLrMJJiLG/f2ygHl9UimUE5hWB1qdEAIvuKT/5SywVNAMLBDzfycYYOvseL5cII6RHwy0kDQZAXdPm6tBJ7hC+HyWAD2eUf4/u0iPuq1QxJjDusoNBnpwuSzLUiAkE8sldEybusX9X5LXzG3UUnpcW1veJCdzvwdXifCWMXoKvL4O+oCgfV08QdIyypQpM0T6cbkRHnzroTZ0oAcZIgnIUwrB78bKcOkh4xRLvTlcHI2auv/1aYk4ltSjQsoBQw7nSxQHQ2yWQXwB1ScrwwCDqcXCIMoF2zmSzuW/nhSyyyHnJsuJpJqgeMVGXMs2v19nlNQAJcRhdTivBA4Adjnji2wAg9oWJTlZObJ+jCvFMxU53fHEKjPH9KK1n39PCqLPilZyzZwvFnlnN3CdkffnK5n8IMYoXEkUcnFL088aXHRernx/53ox6rwg4gbM6I17JHiP3X9AznshHUotlcvI7hAYouJ3ujd8artZgwF+ROkQDCdX4IpUMEwLsNazo66nPrW9Z4EXT35S+6tyhTM6yJZfpppiGMa8o0/ASA6t0piPvYITzKzBIQSeMKWUskgaRNtqil/qRCjtO8iMaKPjGTbEWKJ4RfXKnkjieD1Wz+sJsLundF121UArqrW8w6PTMVqMlHRlOAn/VfdHfyxr/5X3mhghjlZX+0nGFWkJQOsCH6Oymyam9OUZHtN5xtKiC6ym0OHyotLizxLVNN8qk8ERYu/En90TO+puOSrQvCbd75aDJffnF37/l66M2KiN8B14PmS+DXJU4LZS5qHN/zEaD1qzxeh131ZHaX+mLf0R2fS9OlHOFn7OfaxlhewjxX1+bMA/Ibye/c+ORNCJixx78p57fFkqW/iHklkIBmcA6CywpQIMqvWiB6WRkqDB4U5rvRFiYBoRKilKeV7WvGZ6op/p0Ungy/PyIY4nGqCET4VgE0OC1N8HjF2rOKhJpzfXjolkdUrwNBsNMIIFGPLLbHgErsulZW67KjAbjdJDiZMiV8fKwgAZZJcfB9tIQM2U/OiqDyQMchA3d1EgxZoDwEJB8WwwiRCkzLmGuSM0y/f7xBiMK8azmGbuohmOLcFqChT5HnZlAV6PaJht76yYMzjY2w7IjyTd3KWGUZJ1JLsdxyrh0alX/+w3xbwZe6yDgbRq4Y5blT010ObH6aBciWXg2px+rVZ0VAeWaaWJRLc8GXUAP9iC2xbxON6ykajCujB80TJaiOWpsVFko09xqxcAO4t+GCLxmhnPzzHlLlYsDLA3Rf4znMQDTYKhXAgz8YwCiA3C1ndAYh+KWYu7MwqOTG9LHROvKaFc++aRQ8eSiJx3ih0sI/35cEuqGwwwfq+vadkfUKcfmu5+LrkTqnztYcAgt0BVgsUm3ag3izYJX0b3G9/ZaeCCFLnyjJjrSIBWE9Se7gwEX3XeXkqJkYCRPXxIDobj53SThqmgnQjXRwquv3FgvZxtaZnY8biAQ7nI0Oj/lHtXfHfb3C9/ziMzmHi311v2xGOtrzyucq+rwxJGOQZOO988VTaDP91MxsG3cUd0MKsRc566Xt7oA9ZlfMMfSkTmFhAJr6Sm+41023AFnNk1uCbjRFU2pEk1IbzkcLub03nZUDwDXNlhPHAgCyViZfbLLj2pSpde+OO6iOnzuAqi+TH8THuvlSJKBX70kOAaiafQ2RGR7SO0ZvRwHa3fxmLURdmimAazXZK1Rnf+WncO/GhLy+ouJcug/lJ+lJVDZJl6KySfoW2UKat0NGa1QG3dGMQAGQak6fbeDoY7GCp9++jKG6Zr/Vwbsgd9n9BlHv+3cho1xwDz53HO0MIMsLpSNF3taQqhithFKDK/B+jwe3uxWdz1qCvgX0q/oZr0GzMYYkm13x1outgRsXQmhNw/zhh+2uPy8dLFtRdCflar6XR5X+2bZAUXYSb+8MxqV9to6S2dccAYPTSArFZmKcJdoEVLyJpzLTLvbqZZCiSZ03gC4ARS/E10i8gQNi+RgzjnUUEFWYDdCLHrTDA4T3y5XRQy5U0ArSJLZJ+NTLfiieYFgJo2kIoukDAvAIfdlacilOKoGoStJqTgsqjvCGaw0Y2qwIvfBsKNDi7pcgb7jHwAjA/iBFIkCj3TZN4Od5Ze2ss2GczH1bgd2e0nYKMtThoXodBUlPuTa/aU1+VlLwVk4rZ+SvzdMgbzYiCU7cFp77iS3xcSO923f8HthAJdUDAziEga0GwvtUHL0d7tEDyBT8f9Vuw5S6lXqlUer8RTtG1KrBdoD1WISoDHq3B2GZIIVSuOx94poDLJQNG0+QaV+12sJMG37Ti6AJIfoZSXg06vu3yEIfDJpUGETZtOEbu/e8eNoeZV/43mDzpXboFjwYD3wfRQU79CyEwoXC0EVHZzvSKoWzviK9S0IPrgQ5teGCeYJ5ThGo+V0R6xHpXnUmH2h/8Z1V2NbzYeT+YSZ+Az96+OMlJc0cA2xuAiQFBkogXl0XgASo0+0J1+ChUqNTfDzD421v+nABY1kGwg7iBeyf5WOdxXzH2qhTgznyUSt7lccbeNzrPWp3PmV1LvQrut3LM7xSnSK694K7utDhOrhbnBj48KSQ8KeqSd9IF7PCt8UHP/nTGQsWAaAOCVEFA+x/IlXwu2IGy70Tpg3FVMK0nv/K5y2Lw/v1wqEMTz+jlORneNZ8YkSi9WWK0BBH9ZQHMZ/80lY2W5ad+mQ1Nb9XzXuTLzc/EnqRshsaPPdUVthFb+/TdEdihdT83HsW4oumViQfptwRffND2QnWHsa0px7TDrThrmtSu5DJb/ByHTky7L9NDcuKKI4ygCM3T8TMB5erOUnk6ztfO472DN7acoVTIw9RvwPA6eGQFjuS4yeB5S7OJFdRqxC0LcVZMfg3c0eclDNBQHLEoeDg0guik4YBgUqzkekMMDv64AbUt5gmPmU/QPMz65rJcF0mDJIxFe2q7Z83WMltoW9Ngcw10YjZvaGThTyNwIN75KsOJPBSrjRhEPd7kUJ2cmBmazxyAJ0+kPypIz7zWZ9zI6IuGzVEDVFwewUeAfUk3gIUIzp4B9xMnFgGrF4OPs6fIdvTIjiEVGKepnItmlhG+WY48C3nX20UjvDMTHFQAI4pGAcOAnhlVvTkBaBDZgS/74T0Cpcnarbn43pucyGEGMTs2D2NR58q93uy5KUrhJ2aGy4HVJyG+SSyUm1o+dOCG3WNNArqD1DMxQ5xX3/HrBwfhMzkxUi+2tri7k/upG3D2DiHzzpRmxqNjJ2uSHNDx6+61k6I3PZW+UKnQjRn355qoxygeoa0NUhw+xXg+K52+/Awk67PWQmGQDuhc84LUxOGKXyPfKkjkx6ViTHTtrEzSZIpi2yc93qQdWmTLk4gff68f8BgpZy0v9/u99vkeEvWc+u3rWN+NNOKgNMCzr4sXDA/jRUFVf6xQpRabcKDDVUtY1hS1hQOrnh2ZEf9khODaTYxo0gSRFjX9/LxfJC9pqyHiM8Ri5bpz9WPdL0DZQaG97esuhMS4fUDBCe2JCPAKb0mmRVZ3Fjxx44/c/yrP02QTlo18gDW1ClNEx5pYgiaHkeVrgYMXz/tut2RYoPTZUtlQboOr+Tp1SLi0oQXLm8TvBa8psl7z7KCQS2R+LrEWEUgcB21KhtSYi9ZmkXGC9j86omRisgstzrOHEvSCrwoz7CFxEdaW1SaCY4FLhN4myuoRibhiaw3+UXQetybhWsNlC/kMGB8OsHsF2LiOHwfUnSx5TVowNsSuYLzcs2cQSeoTlFuprxvQTEoYS0rf0ZipRU5N7tzL9Rv826Vefc5WeIuZMEYSb3HTzlqbye6OtNFkmvkETzf3Q3QV2vODd+5+aW0ez9Je85u0rlhu99v0QtMqJkVHZVB6bJnO5wbjtgkCBwibPxRqQyFKPVILLFzaIszjpzKBuiZzH9s3jz/KClxY2ULzHruK2y9IGYQT0BeOndpdNxTHrtJnW97pqjSQLIzBmZp1GEeQL1QaoQBMb09T/0FscyKDlngE8zyygs44EvWlkTjqofbCl70SMHqscFtY6DXoD3+ZrOQ3rb9CKp2m/6/YwFCMt3yPDv0KiCPpPsugxzJZeMPCzo7iYeTO0RkS22e55IhyMd5rEhPQvSQVSddFMVaQ694n6RAfq5IlJCnuGlaQzS9LUFo2JEHTqVuvTzT9FA5crofDCXGrlD2XbtuPlHQ+N9LVBWt90bZZWi4VHYDILkT6xLXZmk5rsm4KtqqKRUcXYA3P9Lar4CFyI6RjRCAZURZYQNFMoHVxSE/lAUAYhBdLoRwEzHaPXtcuhV8w/BK3pNXIYKU7hFjfTASviNaocBdWFQSqS/qlyfKaPyQq8/sd0BUQ3EeSxrzATe1DVIJqBmJ4A3Ba0XIWscuK1QoD9gNQ0R9OtiEbtBtRvDC9y4f5zP/tcyJ3e7t8ugMm9K8MJSIrV48fwGIby3FM0BW9L33esjfUSk+gKZ6uLYpA7iltDXy4P3jAbdADqYgNtz7IvJ/ZAWIiJjekA8PPDKig5kHRS6NAQG+blSNUEbXCET/SiXESbZVP6xVX+fr0YEhtBeRcM0Gf7UTfNeMi9vEc1ogN9irNodKimA6m8rdD10UMZQxgvluJY4C8GCeXHoAdEcHg6zWZzspIdKYKP7uZ5mKl0UyGJSZwWRe9MIZrKY6mezoLW52EwxWFsDNdJSyeYU3u40wT+YxOPthBopCvHSO9Az5pnoj37nrzhFvHGjONKCtgOHoZkv/NFKLCoiRkyqcVNuvM/iuuFDr3GZUVQTpOqPoouKNCO5A2wYKqjDFJOJWxP+5leOUBJBKy/gczNeQzPvgdpQzRYgMvlNAXlzq/FH2fp0scJWhev4D/GzoDfBkI99iijKZkOQzmyBTplusOWbg/A3COq8esG4QztE6nJ1S6XldMqBAV2cMj3NBJ6DdHqEFjdaIct9d0LFxIC6FpLpCT82gOEGP0NjjQ06uDUaCwaiVp+hmCkQvsb/0LOrCZYNiXall8GfJWstQwJaSC22sKSSVS8NRuZw+xq+ZrdJmCUMwlI5G4SbyEe6wRh1PZxBVjw55X6E1vPp1dnkgrhYrlDRn2Znqx+e05StqfUKl0e0bBWCgp75bx3ONta8qDw7xlPATCxRrz582wZAUcYSZ4eziYxLhQxyXvcidS3iOfXAMrh7cRpL3e+Ld1UoSfPVrqvGljrtA3WnUujb+Ax+v3Fu5meF9s4E6g7sE//Dej6Azv3cqj7oziREjPXK+akzQZBQPBipHlE/33BXpY3irrwFna6ptGYzYgKgVdJi015uIO1OsnHwlILhELOnQ+3ByVPF0jHRgEK5qWRf7MdqYRKE9Rt8jpGoUs6m6qUEu4Gf1ghLBbQXM3lPC2EfBUCX9k0YnINo3HzBUBrcSpxYUP/Ek0iUoV1fsJ7ceLUGZiULIByOPkN9EiTigc8XF2z3oDKEMhWux80wUfN+VsAaJanDoVjguY1T6wGQlu1dDPsjHY/kOVPIV4UPaVz+j8dhAjgOen/+hOXhqRK845HmGxGZDOSOI7NJ5ozh6WbeOcz25QW4LVE/FdBGOfrxJV17gNySdztTGm3bb8utsbaUPVoT6xzzqjs1Toua/WOTixw6VnbdZESLDn/ca+34bVVs39zKDASSmL3SszmQAM+WSwMPzMJhUdZKvnh8zDkfQqA1lPOIFxHcSiOlR14m/NqFR3m1j4FYLwKWFwsXQxlhQFzjwlU3qLQO8pEDF7M92gUAsxXrlk+gmODYdpPmNnShAF/j4ptF9RATfdxs7igGWoPQBOc/K2gLHaeBhFrmyu1PtpNlVLOWso24Qcg0rrgXpKlPXZRi4BYDqdnbwuQmPFa4uO/aR3nWyv/gwBqWHHqLeMjy5sl3lG2gWag28g3H5l4dIXJzLA/h8+ZCXwjMPYnpN3fJ02zUBKV/jIaYle3jfZqjz2hGqcxGTPYn9wF9j95bhHY5bCtIwyduJ+Sfbbxu5YmZRcVxm0zdwYptNvvp3M+fWfLfs/kbl/SGNIkM5xCXMgdyKsikdyLZUJOCD4+IxoGHwkPqxctrnDyrNbJbdgetNAIXrSVgDOpVqK34A6DZeH4ee3XtTof1pwL94L3gXBl8DbN2lxlkBc9M+uaRzDYVdoeWurAvnayYlaJPqyUS5DOkegA9E7bDQu9w5tmOq4wSViHWOoG7p8bfse3vKCCmgaocaYvqdPRQEeTupowq/qiJ8ZhAz1aIJi08DAvIpAXwtNQFW252AqZObnnnfNQUtGy6mAiTnFADNSog8oXYnnaPsn3L8F5VST9KDxEECQBu6J4ZsS3a0O99dTluiqiT+x5izMoiIpXqIaWn58z08yD9m4A4JSJIoW5rlZJRBg0clzxFKDl1sBGcQ4/0kgvyS2BsRw5wnLF1DdyZy2XDhR45CHVugA/HwJlHPP6Rz94XoxrlVLbOVexAV7SAJ9d8NS8HxZp3JAyayYKgYH07VMC82zMdnKLue/4QuT8j+yuHyB2Axhw9noQ76RjXw9khc7TPeaIB1Z7+Wouc76FdT94unKhDSL4mSBSpDNxPyHTsKGkSOB0ocFfsBQAtM8/xWXb48IzcBq7WCVCVieyoYPCnGoVbTtxcUsi94lqxZlDfaUv/Vu8xIuPu1vxy80U5cHM04wvaXn6xJwxloom4LyceCNv1h5wqaATmqRA4qD9Hj0mc71kbCxzAF/BnOfGGzRVohgoTpVnEjZh5QYwnsEjXgbPDWqGlNxfsZ53RO1bQE9zmgpwYoPEtnB+KsRkUjaz7rCYKrzas3Y/d1JNEy/oamhvp5IXSyNNxABRnbXNfu+NINyOS5t+gqBCpHfrxadPEdvIFYSmV1jew08SiBniJnFzMCn4Haofisj/1Hwx8U/yRM7OWPb/o+371dwBdpA/wFU6T+Jm3++GL3j282YXz7gnH6TaN9PEv5v9YZ+XWWUqXWGZn+XlvGnabJPPlns2Iyv9u7+zj8ter3v8Ilfnv4s7EXgq1xel65oJd2dMu/94xDefwH2aVDgqFnKI6+6Z5i387Fl3TespdB1FBxcMiGD66YuI4D0i3dPWQVQChLUHe3HBjqZ54v5jmo2HhwG9IRgZQXZ6CarzR1cOMgRb0/QhFNF0DBAA5tKYxC36Bc4tNZkj9Logz3ibVplqo2lXrPopfyoESVaL7pii56LuS+VM8vab0Dile7Z+uVv8k3KiKZZvhWO6TxkZ750/dnPySy5YqxOPS/uAiQFSMqypLO6y7vNaSOIsCEtuh0si4x2Qb+JLsk62U6uwmKXkvQlPE2uHWBbpH0yk0h2BZSfY3Hk6va5zW1K6yCHchura+v2BscWdbLClNkeElTt5SIHkbaG6QfxkfXw3re400zTYdO+djsinQ96VPiCRCI6TpIsvHJtSAdVSyDcnkzWrHDZGno/jfjkQtOO4zXz0G8/uQT37pYB8rAHilj8yo9KJe2YaCXmFu4dYRpSc3DueTy4C2lIH8lQ4ZIanyJ70rvORdLlSXDc3Xi4MucVxqdfaeqx27UyRaDm8TXKIyZ29boVb1FS6oZQbpAIrJWWANR9wHgha6JwoAaWXv+xK6VyTAjCofvpdUbiF1zOl9S0ZZ2GHcQZ+se6GooAqhEv5NQIOkihxns/isTVUDO4FnszwHeP55EF22MomsepySKuebXG5oHg0cW3BAqO4SVjoJAAvtI6fHZfOmz2NYk1+kuE8kEdhmJS5Ix5JR7/HoEummpzWzOaVNsednTEdMh8uUkzeh4o4hZ7DxuzoZninvV6iTo5tedgtTQULLA028UfWbI0tuD5VXjnhtYcS3U8fp5bJLJa3dhx8MQ809GkWuiwV9YjmUb2OlB7aTU6WAs++Hg4r4G9unIksr6m+JrtTS7bIkah6CgiJOBZEHwijN+0qfDIFV7OZykdmQIsLu4bgB5Cv1JYyOjgJ1piysFjCOsAnMi0xBu4flK9op0aHnNPBqsIQGONgqIabTn83KMizCxFj0yLVg5fqtihYEV1F26vbdydWLqvbUnqko6lnhYFwCn5vaSczAAppOwZgqfXol4U0Ewv8m53lZp8pMEAMupASqCi7wtKUn6Gsx5kF/A+mnNS8az4TgkRGycziUxvonbgtUvJyY18bLLSeiFearRuDTE+UWouJLWREoia5HM+JV77KdcIUn5urQI89rGwxKLUTvDjNo2SDIARMmm8kTHGSfOQ4JE9SKIeOeqpqO8S/KTRorYumNsSXY7Kg8EoC/Zd/g4wLdmWWAQncJ6zRYUjo8AWRQhsKwE28FFXJucF1UIxW+yG4jBlNSKak6XHpaIraa8O+NLYkme3XGHeoZeGIXkSNQP1SAu3vqXmCnBx0v7fQEsin0kzBhEONVKkh04tfP6WTHoBA9Ic/9PrlxJDGv1WVrd2d2RHoqzMqF45tTAbvbHWgak5bLxc4tyZZDAqVwW8afPhPtCmDuYKkPtJgrM3G9UUUGiQUOkQ22z4sstnwQ54smbk9l8iHBOR2FnQe3WxG4NfLnTnGnurmMyyI28FwFuigX6XrgF2L0xmSgDudXzsNIuI0Dfv4fkMfetOZUlbDVUdCbAhmVu+ysmbgTZ49UVDW6W506A3dV3nCBwzZeWDTlWn/QnIWMihV09sD6sKDfWEz+nhX0hMA7FXIln39qsDRrH+o4LP065pXHuFdHJGTn5bqdtAzzxhLKQPVeKjpIg6l96SG8axsiZj2rFI9C2iSmKmizQc0y1AHzAwGFNULm52PgssuPJtG3+HHzyVyl6jZ83B16OqDIw96RiRnGd3GskjfT9tqGoGAvBP3hp2YNOwF5eXERbM+Gw2JN8pkiZ72itbRmFHAu5oteSOSWiKc0NO6K9L2Qks0AdLTAVVFd2dLgxrcnkEFbGpIHzlnzqOBlJEvP9jFOSfg5YaI61Y3S6nqXh4Hh9+x2QC64qR5mjpGjwL8mRiJVTHJXMjGK1vo+OpsrN3MGclhIQ40vPdmjobNT4q6My5D7Hi/adtcHssHeZwl2yK0PK1Pe9vZK5WXCz7K1nGUMxd2hIOFuTzo5IZn/m+NuGVhKrJKm0a5aIvZLGMfn/F1y57UMiEoCHI4tEMNSlvlG+iMyEyA2QU8+JOjdOUVVksPsXzl0tqrN8+5qNFQmhHhYArpyhn+iHKgOWjmR0m7vDzpgqMVf60M4hpkIwPGZ4mFNBTUrM/Abe3NnP8sqV/p5hKsKkk+3EGP9pST8Vv7ifXu/xae9fKKdHEE8A1kLSrTE3eBOGBbnIDdQybtEsXS3vv6wLOKD64H9YiRfnZ54oIQdmNQbooEWBPYYQjWgKYBRpR274rnjoQjKWqeKRh+xRyy0mHU8XTU2weOWSoQC2T2h7Tnele79g3tVxV+xLEBPzLx7sSm5sQExjzCM6e27pEEeYaae+Tlj5cQ4PwXa4dGZy+/SMLTSsdDqirhES1k5rCmS5hkQOKSYvrnRhflfMjLiqKxWTFXPH/JmRFfNY+xIOI8zhHvnD+9bN5sfNClFciDp0oUcqmJ2oI9FBPeTkCsfiaOSR+7JkzPx5eD7rNKkSTjkeyh0C2SOX0sP7rLCJWJNhtgO871xLnjQJYRzRWgOkkGOMyx5MKR8/1TMeqHSd2AFS4YkG/xgIFpqVKIDNjLY1zt22KvBQvLHveNamdSvYae76dN5J/vCj/PQGL1gmY3mFv+PVGs+wXmyrsxw5Nm5LrEyveBN9oNkHnjQiUwDC9Jp3hBOKvzLBtUUe86cznH+rkoy8lv0a3vJCCeEKHzp0eoXtNsrQijl9wvSFLVFBmIyEi0iRI/3L3vmxyUE22vLJ9mqraY4RJVfbXBux9dloSk4bmxQGcsnx9GIZzczmgzRA3C97tppPIx4q0JkzuGQuGV3Ww6XD8trQLhFnwoG8kP62Sst7w7bJYbZfb01KNfy6q9b23kVkeZ0nWZOQqcmOvC2MjNMIM3lr2kjATa67wtwqL6b1vBcPrujdmqY4BcNP5iktE2Kv1j1Lj2R/oU0DxWH5NKVcM/kZWncWI9bkE6s7eMAa5T1x+0gOVB1AlmbqjW5L85xO96MWsjV/l5E6IqczkB+CD2PGBgKaLWRlPB9Aalu/CK8v8yByqUGmeGULa4Cv5CWFDQFcGmWv61B7iORL0DrOJgbkwK27yazXXo8LUK7LZKZuQdfCiJB/SJ/GWLxYsjEokw3N7CBL77OPVN9ji2SQLTVebpyyjWlMFKYhmawtr9OSeZGf0VldpHnoRqXE20aNTdsPZ9bUchiUN7L0p0tJYz1YFQlqNYwOZfAjuIobZNma1MzuwoVZOtqThaj2ZVugJMIps22R1vZMr3hxM2vwcMVqolG/qPjHD8ABrqYinpwpKSZ9ws8Yb+LuAEtFVtTH6IexIMfkKSa/CpP0tPk0IhntYn9x5x9jrNxtQpbu9A0drNsfjbKTmEXVvm+phkaFicHM5jxsYJlOc/CujOfiqlvau+wPzjXqcbsLlInWrTKmJ7OVjNrUMUdoFHH4ZOeN8W8ImeaQw9HKHoB3T9dPg8T0oc1KQL84iA2gnGXVUMhk4UP8OWoXzb/TwWUz88MMX5d3okEVMb+EaEtDrnuEL20K1btqMGhFLbCqXgEia5XHGOluzC1PB0zWiEt0asZc5khXhNY1MY77IXx8U5S9zNE1GPh63PWZplCXoYYnX8TWG4NLIsLXJ50TdyMyzcGOhW65BgMtMumIqePnET7rk/QDaF7HLrwWvUw4gJGGPSZvyKFNw01DZGfnREjNzHRQOkOa+PFzu+80nSCqQ70XevNSFg/6SqmlFDScbJRXnc0PWp6R1RkX3fohPAtcbukThRzshy14GEUiAlfvBBqY/VYcOkOZoRrX6B8+C0nVbiLewjKw5wk0shgGJ0vie8TRnhnZuDjLuBkVo1bVjl4GotHsEZYzDJYaqfWB9jBMCh16cantXs3dEHzheSWad1HjgemwhXP78ihcHp5uc9e+SZge2dcw4srrILQPaBt8nJqp/Vl2AoENCu5C6YUha1uWDcGcWKZ4M1hkB3putKt8EKw0EtmjjpV9s+WMLcl6svhtdypMGJA93G66b7z5WvbOnwsAohgpdlBEfvkDIZZtSSXF3WDbtr0yNB+sfPE7+fK0SRkm/YKs5REHUYJf75p5BmWBKpl/3oZG3ydDm0un434fIrH1xG3e8ilrpzeNEl0h23q28F3pItOZTDz7FIe4Xktn7cxcnJmxMnPtykHcxJhxjJj2KYdb3pqa2ODr1997+uKtGX0R3AfyJiTWv6ia8KdFq7Q/722FHEOYz+bwnPh20nCTq9k0F0rWHAc5i4YfjIbv3JMVv0JpEiMO3F5h3uukdG6BzwFDeX2Zu2NncBAPBv1rbcpssaJHbEM1JwAFldYMRaohykzlLxjiqIXSEXlSgHIHOTRh/sZpyG1zB0WrmnPJLYXoZ/DQxTxsQ7WtkaSbh0FCbsJPMrMmWYPS+aXcNqCY+leRDSslCF+NRgb66n6G8mSZxLP+EDPgXnvedf4mUX+pYJQZ3djIDlos37KMRhb7pN7xHDn+HoZqEUkXw5bYFvPN6ZlVdSUvs03XAJ4kfdRb67VgxdOd+cHNNf2E72M+WDmTAOmm9oOnH1xroLTrf3YD1LHmYk3cwIKp2+M+nwOSheFvcyNXXcRTKd02bmuJlrwE8HlQrNZsfYgNX0+WdgL+2/SNeUOfPHw+b8+uv/3t6lVg8nrPm+p8c4nfGz6TUEsWf6GfIljE2Qt5/UqvQdX8tQupJPyuEMw2cupSQF3tQFkg0D6nKV/9+Xzrx/pyPMUMd2lRVf4z+5AvdfiLQ6v7a8e9oO4Aq3pnMlakue2/lxjwxJ1e/Wb54C92+XZztjKiBc5lGi2fZNUluVz/+pkOsoNmXxoSWvUAPM2/0Hen1hUsrJqRNvaehQ+QBsd1FNPWSwB1QkVp81rRpyPSBLPS/2JnScI+AFWnYId8GS9JjhRSw7M4H+29BM/4eQTN1YAASUYBOY9kvv92SfLtHhzSiEAT/TDaPbWWtqfSo41gT/lC2yXNt3HIpr/fj1iGn68brnP8SIgk9JOLiHyaFMYHyMwBmTWhHGQ9AafsP27h1kVYERSWzPdRzJaVWYaHAjtUwmELAunIsgVIltAmnWK9lf7LG99u+IdvAgrm7Ydu5pY1hhfbsAr/1lQ7PTnaacstnyCi/rdIpZOP1/I8UCZ7XXCebMJPM5dFfW6IbZq/m2fkH5IYLmO+OHEC+GEM/0JSyZWlCLjOxQxLjz8a2y6U7CmY0r8sjLclnPiREQRycZQ+gwDJwEZFegsypl5RB8SzqLw4+YRK+z8LlJ/YzGQAtX9tlDXSR/35BXDicKKqt39u/qVt9xY+RIMRxsEcZ4Xeq55/TlRNzBa84ytIxwcyFq1pOU/dHDOPeOKJvPcfOq30BwA56b8ACkq5Fm5F0dtb/IaBAET4wa2z4rg14pw4LpMQCW+8tc+eeFwzx5G41FleahFI0GT+sgJxOWwxnxtjS6+zxhUASGgiCy+RTgA564SnxE6UFZ92JMu6E//Z8T4JGXPAUiPkxx9CZ77C4nORoDjxJOH1Qtsdhcq1ALeHO4D6OPuSLGYGKG7w2/0X6rvv4uo2RirLxpT7tdGoN/aaxjXj6lxyS2KgfwEP6hVJnfUZqqRWZzXqk0YzAHT2udfVkh1QkMyMIXTChcLiyEOd5YeSxevrUmE0MygVSJM8EuBto/oZW46cfO6xGWbyecTmAFv+wSbPAZzkOBZQX39PT/GVBiklZi0IaW/7F30GunVFHudqJTM2e8usnRa2S+77ZkorLtGOHghkYhTw/0C0iV6DajjI1hl4kJ3xAyTsNX+JwgrWJPzwUxKjbtyAzIDDlqykcaxg9qXuIo8Wqd9Z46yeH8YPHi/ocO8LgnWzp9sE7l4655oG/lPWDUsj/IlDgOaDfy0Q9Qb/FKdmwHvIWRlFx1ACLrsfs7KAd5OfQFCfnQCuK9OJzpu3AdidMfeEPoD9vzCBEyj+hrtRRmvc22X6R20oPoPsvlGB3UHLVCznuLXi0VK6H14fC/OEZMbgmoQawjGFy2P88bDvDTUkEpOdi+0rNRixgTnjsX7eYteftTVU1XAxmZ/uLErPKO0YoM55ic7neroyKTC3qFI0/XXB0cZaXOk+HWaGu1e8UcFglm1CK1Yr5F6DOD/CkOywTjZf/o2rz4efhK6pCk6AGMPt/1VDXSnXAz6HiH6ywMmZHREdrVXhHd213eu+qn2uGhJxbkxSEtEFIbKmCUG+oI3EKed8PntEsM92kPX3u5DvC4zI96NwS8RSWAobkYAqa7fwfs6He1pRINxEMwgS5pDaX9wrlxec9YCHKPWtglcDNUudI3y2ytc7PKUjSQbYSzvTxPvzMkDMj7/h5RKweS5j8S02zv3tLt8KAE75pX+o50H0nBNFFdCeRi63VnzT06rX+oiwnhFqbJREbgTCe1Y3veCz4pNuWAU2ti7ZoVIZ3TyqeZ2g+TlrSz15liPNQ767wmZKqnGGHt4EUROLWOFKiijfgex9Gb/tY3brWraM+N6ytY83KYaj4dAM891Brwvcu0Z9G1M30UbpAEV2mw1X7jfK3cpYvYl8H2TdKnxyC/SGzzOPbk66ZqR419UdBIkxZAyzq7WQxzVgBELJO5MJ0Plz2LxHtFfF01KNHWiM5sX5GumzfNoWwuq1NmIn/BL3cwDrsJpEQH1mTBiM1a8FKh2VtatdTvj+s76nKJDmivKkzWCf5AICmtQ74K0O5fVBXrsIOKDJBQ8fKI4t5wgoOw+OsZHjEPit2oAhWq9ZV5vm3enwb+nxbheL2sbNH+iu3gpkj3dZnAtiZ1+1dGsyeeBZeMW7NCMMiNXCazPKe71paTGsxKxDe8ab+I0ldsDFc2MTM4pKFHpAMMFVl/rtJoPTA1o1/nuBpUAf03uPEcMeHQ9hEKtiDdCabqoBU0smgFJHRo6Nrab0Qa/uY1gHZ3S86i0YtHqYeYH9+/7BYeDvB2dx++WICvx57wmXh4XIQ+7ZhxYd8ll+SNaA3yZJ+CanJsZm/5samQE0jFkvXTN7CcODQv9eva//CfgjJJ05kSiMN/NuEixzk9gfju+5iB/l9gb80P5BKAVgiYqXnLdEQH42H6uD708xe4VrAr2H70HMjyxukc30839yy2exLUSq9HGHmgy+j/hb4EbzsxQ30HRyV9nFP9ny/JN68wRoRTfcKGUmkGvmoSwuHytu5roD52vSg/isE9l22CHYfo4eUKswbkc412BhXZa5Gsp6JyGqZZK35bjmu3176IJrXGGptz5oUL1hbOXqNdIByi7o99cD6kxwYfimcA9bqG/v9fuwIxGBnZdfQVapLOw3AROh+eA1j/fxkUU+Irq7U8g+Jww0+XwVUon5YoUW2J6Ln9dA/KgV5CMfAFFPKc139vaynWgtiuwvbcbjn1hyRiWoK+pFyUAmOwUD382eUputrzzc1ZKk9FGRt+LHgAM72amiFFfZpz5oTp8zQl9d/f6Y1F9LhP8Rb1/DkYR1ZHdVUdnWpp0Uca1/OC15VjgkEADDOiUTBLNdeH5q9gO4UUiuh4nwbd++m3HrU7T+0e0UQ67gy8q+bevfsMY5/3/GM6R9k9sl5H3YHPNGk/tjYYDeO75KmfcHdiJYfjwMf+XAgp3fk1bk5jpLeYxJ5p1gPNGH8ccOHTaNE6LPxenwpzc4j1drm2PqdSmgXfN3VoyfA3qWZGaCpnNsIIgnIQDtLeZf7hcqL6QFop7gJSnlWoZ2be8ETFO4HUy1VPiodhA+yKsZzbZJnup4Q/azstJ52nPYNCIfkGKwPvF9GleMKqc6786Q3NuipSsRlxo5g/gfcRTj3Qq+/csaydRb+6SkospzonvxJ3cyXSXAPYuPgIKwivwkJl4iCePP2TK0NqF1/pityPKlLPRpLtkRU5d9BKVDMTALnIhjuMkOIep9PHuKJBB1ocL9N+B2yF1q5z81pErLUN2PgbPSYEq/ePBzhoIlIkawdXKzwLKwEYML8XoxYpHbeR51bN6dYvQ6YfQlSWxxBG8q08hClk6x1SVNlaxvvkPLPgTTblHMDC5U98T1U0ENlhcCeFSKlT56GlqmAYKbXYSi7mzsEyT3IQMr853YxQ5u4dud18AqkgNUbfgkxqJFbeQ55BrLfCV8iBzKt3legWkNoxRD+7sXrgS9Yf/jr6obwdiK+bh0K61r5pGcDPSehPUIc2cysVChYVrkwz55FEPWyZZBaWoJJp/N4xHJaLrI+pJmXgKms8i4LzDsKYDpgXjlXDEl1Q0vCdalwDdU3IkQv8aW9wQfvZFVI2LN6Wu2fPWUnsYzRfkVmImLyYQtOiwuiO8BPz8Gs/JHYNkg6HVoD18ekTwQSDZUl3KJTQAv2ab/MhKt1iTUQaT5lAKg2OC2TBrBhP/a7N60aj0gb3y1fCe/d4t02ab/JlZ2k3r+dxKbdJxbAlOVYIo7Z5OMDaUPzUmgtq9qdmjgOp0t+yuPv4Xie1yGTcEG4p+3ZV8b+BSZ+KbIGUkGbVIQ8BhTwaE80uzgKvZihDe7/bhc7nFg+Y763wkmhj0nnwoAkoVThGTZyi5kNw9qPt5EwKshgxZ46m+QoaatQzYKQwwJw8HEWlsA1LWf87ScmQZy9R6Xyl/1sHCDz4TW4BIJqFeTQDZICeHOiYMU3o5c6oA8lEoMZ/g+0IfLrfxy550aCO8qpLiLEdJXaM8yweQ5J/oaqkhq4RqkWWnWd4muTQ/D/KUBKe5rG5sOaclvAknS9CfmCIRtl68uscIR3TeI7EFnB7jp7RYepqAQNh7hpDf+H4+eQWMd2jeRbfuwi6F9PHRSFgzgK3ofRuPFPi3lJe6TTI4V6QH8a/xJj/lBFqsWFTzG96xbMD9yGPkc76QD1cc0fkafU7aFA7yCfIp5M4GqNpi6zIOplVjxnCF/Wf4PExN93Vc7wNGT3dzlGVxkO3jjkX3yjnlp425c+HDe0+e/h+Da0XE8ncCBrmqTjpHWiUN87zP7VB1mTQbNvjG97bMbR+Kg4GxXV4JXz3IFp4VJzjsjQvFhmxRjbeUWnL0s8i7XEOTtZG2UwJyiSSArJzi/gbl87UegXMyxBoabCvBv/W55MoL5CQcFi5xM7vJKA/kk/1Ajk0geQy4VZosALV9SyIQlpFxDa81ZgGeeu+zsEOWTMvX5KExQwWcTNv/69dlFSW1y6th2cHLpYaM+GAzT3GQgM8OSPwIk30kRIDujK+VOpRk+3s7wNpl32XOdSmaBmeNQKage92l435+dGX4GGLSWYKTM+JTmcHPytHk/M2atIeatfldeI4wwesHhZbyEzDNBQpeJoC/rSFPxora0A/mUaDdpo7jQU3TkOz+nw403G3/G6s8ZnUYTlVzDu8mYp5Eh7E1FeN23uAArjWtt1M4bi+CuQf+Bj5SqaTsrs9Eex3Cud4cWry1HEjlNLbVcsVitNWRHE9lZw73k7z+90p91vlTVNcyBpkGaWO/4A0HyQezWaPUITC4vA1ICii0bKFY4Q4nps6YZD2I9rfGT76TYfhogMe53CPQY9pmmc5PX0c9/NM9knIfDbeqal3ebBsL5UMJoMpLVrizHqaNS23HUvpHJF06A1XxfnRuz0jTfTbpUeBsciyoBIJFmQONrnIwnPPr6XkPo5cmbM8toJH2d2r3Sa1HvpaNz/QcQ2FyDOoQhfJ4kJQAyiQXTdixdwjns38aR/SzvTosOQUbWSdANxD9SkJPO+NSF63qDerCOR/kECGxRLqd6Kk1PlF4aSTM9hNmbgvINrXGHM3JNAB3NJkafPwssBfPegiODv2J7/JOxEyAcUcMNKi3WpxNQjTBQ8WPVPCHxwk3YM5wFsO2E3ocP7rW2gGzfA2sOKvcryY3YfsAqfOynchZOjJvEhfqAswaKQXON8T4hZaGfrB2wiYKoAiHvaGzKGff9Bd1P6rsB/ap5n5qq5sSpD1AOHTSlA40Da5q8fuS9p2MindJUJMUzBpRzppkVrX6ado6bb4RsDYBDtCNeRqNMv4EWZ04QMFdeTkiD+QTMK8xT1pZ+QAt17rGnR1Ks/we6HRtnHsSbwhw1p0MrhHlAyhk3D6hrdJCfppIAK6gX7VPJGJ1SrGjfWvO75a0yPO5Qwza7S9yfU0YwExmaP4LAXTkUiU3WQbNWBqf4+zHBLyOWGSjZ5MEBESlbKd+0MYuwqV/oQgsk/Y5tk/Cz4erHGrsWljGxwmky27aG7ga8j7DBV/IVoHBLOwuQhd9hDputWdnrMgPRRm7Agwi6q+YcTJUsDVm1sirwfqTZZflEv9q7vOkecsl0kekqczGbqlr821xltmCV8EYayiC81VpYsX4uSHfk1DSMOg9Jgaa5ephIiYfFXiFIP7QMGUn26vdI0ZkLFg4giWwhTm9ZaLGiPgkUrdUwOMUyyjo6Cb20DosUfUpOl199hi/lT1/YO0Z0LyRq3zdkthCa4FbzBd1xsN6zHge3Bd2zfd+3hiwO7pkO498w12Jp2saMBbf7Xp3Y2ZIdUZYWfYh+EMIR2+LxRNeuQcGXrjQxysuP8bVlOJzo3IHxRc86vn1HWFMThd7le99neSEz4rsZJOIyB6q+iVTDQKxnCWrxoTn1xqgpqaUatJQbb80wexKI9UWtOfttXzRBdPXqsEHV0zjTb6YcEpSLedU0CCn8g8PSMVBA0gOq7VkM1UlcD/Ol+/VJfelR6BhGTylIBpioTqzH4W/7/qlRn6ok3+GeJnYaU/1ZM+lqYAMcui3wNNFGsGeSJvkcPpNoBzCNTUjuWYJ8DG3DCe/o2uOfpmtcSjsS2RObtCRNc/YX4Squ85NoR60nMosH/u3t0+T2HJQMGKIGoG4Y0n8NlqRdnt8hfpzIlsJkRy3FoV2bSYHTsGGxqSS/iW8d5wRO00/4aZon0IFY8OW/fHhHv5hghLuLI3GTfscg4bC1+vVScwmk8Ep/c7baSDjQRLcSZwTpLFFDtK5k+c+wOgF5ezzNa+H7GT0WcfwV2+NP3/mMpp5hIU2Dyq8NMxdakz2xEclCLGZhiO0XMR1bz/8WRZDCakYz43b496pHipeFUSiQQIoR+CEkbohqYcfCTiLQD0nZul9/i9M8hOCe+zPjyliR+HYfzhLppncx78EEfkp8gWjgUJcudBeWwrOYLjzzaPNdRmrDrTDZWEj83Bp3MUVgK3vhwVoZlUsm1fCCYnGvnpnmc8gwN8DXLt4B5baeJGt2ZAacz52QNIOEGe07KTSoNWgH+TAjXCiadVDYRAUemi/9Z6Pi8sT0ZppfvUr087fEPiIHTfC/hQNaFKWy06JHX3THFIKQaBAzty+t/STPFvo5KMquigp3ZBINCtqf6UCZoGwdIw8C/TXpjEDxG+o9hljAtOcwh0IKxmLRzlDVRfVZB21eLDCJcR6jQNXdZPHlGQS4nERZqYD23an0g6U0/SamPzFSsCeS1ANP0yD6M7ggeH5e9MAl4z8/Q8h7OGa3wfpViHPNtlbMCgUAdUQAviJdUgNHTjFU433JYaCwDHhJteQt5CVBMb1acRPYvwCBNJa5KHQbLxUa5OPQx9wKaaajbXhr+wHRVDZLGWpip00zF4agFr826vYY40igmmQMIqfezIDuO/ofTaeDqq8pl6i2vL0v5UAzRjaI606mpkFFv+kW8xZlnzjZOlWcy0YQTPVG+YUl+91KUcnUb3BJD2SSLD2aM794lslJpqcJleQQQrl1QEovssSlA3L6HHAzPr04lzsboqcYlRLI1rRbTiw7Ov4uWrJwXKxcpt6BeHJI2Gs9jcqwO0kltei7boirH3HZXqYdEf0y/QWqmZ4pCUYnUvCzJJhMXvIGgEN0S/x1DDeZ8Q2a+Tn3Swl2wNzoNRCVaiT28efOKK16TzMDJ5v0qPxOGGJOuxNt2VYLp4AeaiT5QeNSLBMn0l1G71rmSzY8bs17fV2yF2Dj6WDLFtmL/xF3HdzWyh/x9FHLHWOrRe7oSqIxpvFavTaQLilYBMxdOUDDq2uxrMBaVHPl4AuvDnmgBbBTJWcLrHMxdxe+5n0MqYyBnvhpRDaKJM7V/BF+mlgvDYy7cdcRTzwm5AOQJgpuO+9T2BdPInCdm7tejzJWetV4MhGXJqYDqnec4hYhGKEfx8KyFJD1bL6I4pghGcMiWACoc3CA3qVO4JaqgyZJal/1vniS5aQDunasAVpsNeY741iEC6IubNEEEJ196irXyiFAb0z+8HlBhziM1TekwNoUY7duAS+xL/qVxJ3YPwk3HKtVhQ93oopOyzPS43tJM/Wbu2jkXzu1Ne1aVZL9PsX3Ca3MaqS76zO1wXIiv7gzp8oO8/uQmj8e7fHP3bHpJvwAclFbyFsiHv35LZ9Scy/2a/SHHtHQKC3HYYcFJtzuy9yQsabYX0iETtRs8Oei9GJfj6ay2j0G4kpNTCOSEg+TcS6E0pMfa5vFvUz3eberMHa14OVMHe5VK2ST0jkOngdc35v9p7864SCxrMYujRwH4K9D9xkiVWXhQM/tX6kpXhj2cRuHWz4xfDeav4PuvEsu0Scw0eoKmPuHQrbRS/Q9MZZwTsVK2EBAdJE1v1hP0XCJevKa9zPwx3jJjR8z/0zztS4UjtTT6adp2tZVApahX94VagmbG0AVe0h+65L7+95UswnTKHEL89eOd2UDsyoX9feFe7gnuZFiOT6PxCc0dX5Wast01VVUeXt+Asip2bkVgjn+fMx8+jJbhzaL+gn0gnni84twT2jV7hN2tMB7ArPIPPH89cITO23vE5v/NYFPEQ6G08NToCgJU6zQ4T85yncP5bREv9WM3cPKnvQ+LdPmzg1iz4eCWZUun2LN2DR2yGnIs54D54NLyyGQDO7g9LtTGECM9ubrV7X0zX8f9ikuY49dfpPVQqFnl5a41L+V/S5dH9wumxhHtmQgWloks5S51IQm+WkutKFvxsjHAKw+/6zaCWdf2DlGsscBD3fE64Lc5JAO1UjRcujMuZY1yhe+oDsnn/ifo8ULfgieMUH9wwWtfv/sSf8NG/5zkgj9GIf9D2FygJNIjNKJTVN4kevDnZ6FXEInH42Wi1te9nwIMKi/tDJ04+5lbPO0aUEivGFKvjh5O8bP4zrk2d/35uFmWzJfAj7QbOZC2ebeJPTEapJbsmmSXJJPkA/EX1aVbNunhHgitwsCxmItPxjLlpOllJDKu9qdzogQOmFzE+wHeQcMahorKLYZAgmiBaYn41/lFkTKaRqH/bWI4PjphLnaWDNWIqUHbJiFae7MJ+6AG58Q68YssDS44Ws+v4J0keka8fryXVuOTTodA7dYxvYULBxwvavsJs7GFOiYbIUOnu6Srp//TSD7W3jGl5kk4hqQ+s407yK+ToYscFjTxcyV1Tt2SJwiGuUbtR0cpWeTedt6VeEThKWQbJJvirg8TixiTuI8g6zuhIq6jfhDrIaQkRzHh5WtSeC+LmNDelEtI80xxrqTcl7aQla8fV2Ga4AqkbBi3aM9jRo8NnWxjAv23h0HbjDoUqh8aEwShX1O1UaPF+8GHv/TFK64v/jb/zNFBs6lmzJvVBRY/CVPImLV6gAN5+MWvEHz7tp6w7Pfa7NkPZAcEsk4pADKFIaUKs0QS6EQXG5hyVBJc1SrLmfwzyMAZ51ha6fo0HxK7jwRfF5xmj9v+k0cdor/w6J9Z7jpo0RYy+PUW3pyzWt63kVkP/kAxUYz5zGcIXuHnz4kifGCTqdqGmwGWjUGhnfHCoWoHQUOrKH1pnmaxP1b7Xd7r7jZzPVUrpbpw+BY7Va4zSiLLvKH9+G9Jnh+OKLzP/9g/2UgwMO2UNia5SxaGNhC+d8APyJfi7W7LLb9GkEJ2bsxgtrtyhC4fRznKHPKhonux1l2ewu44Yhs6zt1pNXksiC8K6cJXIBSKSr1VzG3/7MJpkpN5U0O+EwzQZv8hJoHMHYAeGpMgTzr7AlLt0G/aYTlJv88BXCQ60Su/jFpJVWEeI0qYaXIw+7CgzCEMXgE0+HMUEeXxfKboTFqplqRYQdfg3DA+Nq89+Lc9v64gg0AQHzwwRvuQ+OCgja5uSyf7LgC76+RoddpXuGB3a7SUZBUuiWrXJSmWNwm/zteGZly+ZeGUi2yGf4pKFcysq9Ux9YcaHc1cb75uHHDXrmu37J13tqa45Fnt29GwTZr+RvlDoniapq33wSLtmGyES7dpyvYli6f8ho0iMjOXwNbd3STg27F4flnCF/zy35vnkavqlMuWpEDiZcOLSStjqmr9xnXEt3fSdJTm8We8qio2uk+yy1LBf0gv+7f691m/Drlp3Drx4vQ4+eddyGG8KTthk/UMtjm182tfpRnaA+bPGr2GC657sEfjGfpSrnmBD6ybXL/T4mnDXGFSHJck40587C8evbFnwKNvu79I3FG78iaaKrvUyjSPUFA5cju5XBkZw1r202k7klTtrYRav7RS0IN46rZKttaOO1t12n/92LE8kqR2ZR6+Lzq3eaxcMlOG1aBLKqO+YI399946lQ/o5en6Bf26ovk8zXsntHr6F6qV8rO/+tFaprlK8Hesre8El/eD+fzjD+dOae9+FwXns+y1Hla6CVukYVIyUFGE/nI79poZBIKyoMdr37qd2bmDZr3bNZzXVbO5tmaqnsWEjSGpshTuVn5cVYpfcNmaZYv1jzG5nwXVli0kFznru4A98lVeK9bKaySSzVz28yq6JQ2DwXOaqlz1u2XAqXjYJGjzqmy5/yw77D1Grsx+hbnRRnYbnOFXxrZgXxzKEm13zi9cMH5AztcIfJheRi8k4kGhAuIlBdbjr50u+1LadT/7+2TZIap8juF4S708nhLmRWXRUPJG94I2T3TG/XLWPLN4jD8oe474hQn4v6Jq+EAsipNTamf1Tl7n1fMsDLRYrpKTPeq4g3oLfdJMdJNqyjTH304a3/zbxkQm+zpsp2wi4xCcHwH9fHGRdCcm4XLE+6wHwgOl44p76z7mofHKPfGa+eql4i60iQesNV50TD8qkfmh0MaKANXI5pUsZHGl7VLyDraner8FgJZOxyluteJtMgTgN8wRPQcN3lLFvFo8lbUxgy4+EcIdM84e8TPBb7lAIeNIW+hVL6Hd2+kovWumoiIge82qPBQwqeGf36BqyUuBaA6fKiVqwBMfdYVRQmxqFFAOCtOxpkiDozt5iMJoJ1Mb/O/ZMvkoxBYooLA1yajSqJukTG3lSUKYzeFIrhrSfTrfb0Xi9xuca9J8Ft5wehA4xGmMMRE5POfE9zk5M/bqdClrzpVG08f8y25nY1EMPUaXb6Qx54j/OLmlbx0BmIZQl5sPgajrK5DcbM2Jay98zHXCpaCaz6UdCXx9+9r3B/0KJgSExi39TSaXfaUfv4mCeUy9w8wV55DJv2eIQ9H07YPoWzTud973kMyD/CORlsK0MyYCw/GrV5+Y/+au8Ei13IvkBpnsbgLEW7QOZpkuj1pIuStmKNoW9aaRu4i1Jk3W/OQQ2b/JtWlYBQhZZmXg3a460/+xvVrEQHC65T6sW5vRhttHQlNNMz7yuYdG60zRMdP8dmDHSBnZ2JoAJy+Z/rTThmOeAidU9pM1yqI19iZAkDV4sNp5naymrzL5MdABX2PU7luqnCuQQ0lEjEBxOTnpOZ9BbXEw/d9E1oWVISOqW1IGFcBRVikOKHQkcc4omXFu47PzIiX3dmjexZsTFBjFS/cibH5xRW+9+ZhUNvHcXK3ztB6QcQ/K5Q/tTDELLQuXo7qAOnEmztcpXIhB+C/Ucw/Y7WOQXQpUfNBvvinMmytdHFTp7lDFBLq0F5GweKK9dppIuANuUCUcrsQS6WM8Jho6vKU5K1Fn4nSY8Jnm9uRjInSJTKNDOelDsMexPP17sSKBWgBqMoLGgV9fZ8OJtiNEj0G8ZdO60pET090WToeXE7yN83hH/bhmc6snykBczbXk7WHKHfgsOU8S6QwXIX3lYxY4xgAgerUnqV87TbgIVV7pJlD4zTeeljOGKCDf8VS6xHduGFU5wepDKf3o865rC4vRNPxKrEUzU0oLu5BvepCzHDusO2AMq0zIxkBbSqFR8eSxNtSCagrN6mgw35HZ0BHy644CV6zKEhKz5rYEbdn6h79c2pqRxPwu07JAfNR38dm4sIXOBELVAZF9AAgONjHqRsh9YgN8rtGlaNuZsQT/tRLv8HPityQb+4bb3C8UeAhtkc0yigrUKwkM0NFoxOBnbFgK381KBp2rwrC/pNiIKyUIr1m8/2ukJ3uvoMTUCGxoHLxw32W+xrXiaHHNXfdH76XGx+sekU0txGUw/f1vYeaJdgYy5uZ2elX4o1FjXo9WmHRl6Zl2BEFpkbMOmeNJRahzZ1iGimkDnQcCV1m5SkitP2t9OKFySxWz89mrHF37N67ZCeQ1lA5Y9/Lr2xCQHE2GQH1+MyJJC7PLEw+ekgLbohsCdwRZmJ2RkkGnoPZ6Gtu13SU7EEb0f3yjRWdw7+gw+hpcQQYrlaKbiXVcvphk0PMoAJ1ybJbzSYRKTYIwd2zE/YYUZcql10cwb7vaIqtiLg05sD4XBdM5+LhMuGFK+YmIgHNhrxKrPptQxHBvq+zCqP03UCz6HXODHS35hzf5cDCA9tdeI9lbu5jmeQSDSw8tAt8uyL0j1O9FK19iuLR320K+fKs37HltRvqCWbdxmHZc4hT/uSNPvTHX2YJuJHF/KxBVYQZ51xN83KgVEIevTqX5TkNyQjl+mM6vCPq1OsQsujysbUfW1fXn9Pj1KzSZr8MOlu+606HssneydnIz4Bytl42PeKIBzobPYcILyLnadOarqGCtmWPsN2Jj2RRfNkOLL2AIrcQpjZoKiOFX+i87Oj+zX2IxZxZxzABF1BigyGqnvEtSBjFwazwfFcu841BAwxCWey+09DUg2nVoojf4+Vx0HRhog3AN1wb66zIT6wgWDRR3pOqsdbInZQbhL1yvHn9S8+Pfe/XFHuCdH3DFsgVaVzLCOwGHsQ3lgMyxRn7fa5L7P6LNjMqTblBqzZHXunuNLd2FdIsSSqFqoDL+DwCy/TxKYlY8Px9ftNqMqM5k1pS0HtnaYCpbRVTtcszCF9Dzf7dtbM+yTqHHeuEqxX+uAvJW0je8sppZVLfgoFW8rCkm7CxPd8HTLuSpbw9W5ieMWKWIDXYHmjiN+/efbhUh/mK9ejkpBVWMkrO+Lrqx/y7jT1J5qiCF7UAKaAeqKqJp3JVprDNYFQqq9m+W/qIRZAAjEoZWiP2FbVeLH9uJFjnPLbL+byhAnmzPtt5PAnWG4/btzdyhbejWZvfJKyHBXZIoh4VoOd4WMpgVpwk4m80MtYCCS+d6waIvaHaYRhP73tjOTKPTFzvWEU9MFK442fP7ix+oglfRwRV/kg2uFfQ18k9Wh1sw3wB3m1WxyeawYWris7yIAB1F57lAqWGwig9jaBLLG7IvcgBVum0Bn8b3M0AQVDSvF8Hk/C1/QMIO3DOZcOgBol+vyDhYfLpHNd/Hv8HoKiyO7T874SawULU1CwSCnYuapGT8jyW+RRUMax4tKdpqGMZLyOCvpr32UEaXrUAegQI4rQhTo7UbUYz+3YkYkO+ncud9C/rcoo/m3K9V34JZWKa0+AMB5e+m257rvXRHPcEDvMsuZ9cmEAejEDNcKaZtyF9SqHZ2vlE5IrexxLaTN5bywF6ekWeRAI8yTk7std1veMTneTum6uTq2Dmpvo4El0gMOPcExaud98LR9zZu9szJGkS2PaMMRL1coaqPNnFuNrjUHJphVt9QOcwNWEPJFXYTPER1fx+iLQcJs+I1VXK94FdypbbwrAx4Km74+SQ24s6AFU3v1eZS+6j+GiiAYiuJ+obdqHOXZsDWzW3GyiR69E5FyEX266VTGtJK7XBV81h9oopBvwLcnEAWO0JtoftCzE7ilGz8tYvw2llrND0CWgE12sOygn9awbSJND273y94IlCkQG2Bw4Fpb6I6c513COXyJrn4tL6E/+eb7dGfpzMVpD8JFY+ly3XvFbULGmuQOYEJlF4RHchVioDJeTimc8mgJwdT8BBr1J/9xu6Tst+jR5hb9AhOj14HMLPymHwE6rmxmkIuARp5gJovZ6uxNRM+VWbhSB+Wjxt67z1qNIJoBHwNjvc4puKdFGm52o99bhJhZNlK4c9OEuTB59PuKI3eN042FujiIVfVQgoE3DEHD+bl/P8R/f12Upd+cljBdgotezMCbl4vtyvd62MF5hGQbxaPw1VWfAr2VAYFkaJBvRlx7joerBAeoCJrtQ4z+rsXHtLDUPi6hh9CJbsuc6ZXzr/KKoahP2Ncp7WLHPyG5hL0XLz1Nil84do9/L57/DeI4ve2+4FSLb7ifaIbdtpwej5dEwNEJ0TSNWgp9doukpMdVwWiBnM3bxreampf74znvDIN5m/Vu/TMEuPNrmubEILWN9ZfjRmxzxBtW6Fa46/JRN1zCSBPWCgpLcwM230+U4/WJs3vV3Sto1yRvtGw9/EVFMOZQeeyp0wvFUT9lqERPqsdAdNX5KVtN77eJVyW4pm9oxhDRCL+eyWJAbM/5NEhhTdbSedavDPx3SrRIHmWuqw7HT5XrwDbWzAXriAE8s5E1zuxc7hwposazjXve8kWWT5l0FmzWyRITp1tkCAzc0k1tx80lAnNeGoZmCcblg43E+eSKPDCPQjH1h9DT1rAVLe3V7prpT54TN/aS2MuzMelH9YtTSL7OU80YEHoFVN+4gl0rCKSz1PQmh1Wuu5vb4lIQ07T5QJJ/BiIJwKWSJqpPS7dmNvSKBmMyX8MVjHAJzygbJhRP1ojwhq27p1SRbVABg4GlQyi5B1viC9HDgFqDm2KQXxrEIgXQeUY24yg2hyEhDEhZriDDyISLywKAejWTJRxOoSz0t1hady8c8E85ptzZIbqFru4J/Q80+jf03eACogCBwi4hPnWjIGAjTL/0l6ltkhTo9yxDY3VAgP4N0RWGQIoh6w7by9A9wisd1sEdEZR/8w3s53weNAMgsE6NdjyYSPc/3Ppf89HvymPESaXeqT7CPQyxbzlgC3SQLNCr0Jj48tZ4kAfWCmN+ftQfBf/SU8guFjW1yPpVoVm2yRRLTpx/QwzZyx+UUerYNuRJgk6KdfcskMvqTaBBVe+gXmFfT+aKoewMuEJSpYwesDV0kdPhDl/sr6deKNQO3syr/DyIh9+e/uPrn+Pnz/Kk9KQN7zFp5vMTomiLfw685CWM0s1RhXywH3mTCX1KoRvtxpAOPhWrTNPM9wXZEINxqyW0nuJEiP67KA1Ty2jATe0W+NBc28dpJ+yi8UA6LqQLyibdF0alVSneqM4qo/qLSCDVvzayhe8NPNNDM/g3EIzrW3IWHHMx6VNj0uzXRlEtcLckaVV9wMToK1w3XNs6fzLiwy21iYEUt5Y/echj8nk3+zi8Hu67nfBEk3CN985fHBP9qVSHHuEvtKe0pTEqGKpZcyvXXE+RIv1z2wWXVOeezz0i+IDAOblbl++UmSoEomBCCyi/8+7/CZwcmiRnHgfX13hBGYU8m+hsiIfth8OR4YxAdMkndOuu/YgJ33jq5Cyx8NlYx058P+Ed+//dRdkCWNtbrKf6pLK+GO/RP7BMsdNq19pt7jOQvXdYr3uNxN4w0/+fBEVzn0BZgu0JdSXp3H//DHggwuRFVOE8N0FILT94xfrkfVBga/cGGB6t2ZxUxX/NOfQsFfPDnuNJtsChavRw+/57B2jqlMXisj5I6MljOPGdZK0n+2xPSIy7HKj0NXYojHFp3z6uf0MH6T+/6xNUJU5j4YqZFpX608d/ww8nauvSKfJswDkVuRqkQR9pR6GSTJYeJ1B+xaRIk7rESc+Ka0rlG6gTGugMQREfl++Gy1MKN6f5UkfnqND6cbuZqrTgG0PXoF3hAPviQbfFpc+SKdkmisw9+Q0z/K4agMF1YEpu4w7x+sTKrw6yEGa+RsJwdPUWcNk+z2VrkbZX6W8zbEr86Tr8evnyOeb4kb3T2FVIywzxIOX5MnnxcFS0wYqy++yuCbOzteS1T64+GZID+IuiGdlReripxlz2Kgj72zQirNM3uEvIYoWDhV7yVkzVM7zI8JJYspmZOn9rOcFNDMvxSJ/Z7RpEj+fWBfGiSHbU/yIv+qcHTJeExQ8O+1KQn+9E1CwEPaBnjuzVFHzz0rqqy2OwTDXbfM+BG/OdU3mmCYaLh9Y4gqU27B0ARJlWM3JdpfqgFzI7r3Em88AaA+IU9iizGQ0/AgWa8ErvJljCKyHmqTlQEifk+BSHgGuFPzH54kKnMRs40ekST67Wzg7Oz4r/UP1mnnrXjr1N0Voyov7CiFmniobXq36jL/FVS919fsOPcZCznQF7tluXnS0HtVT/MrVMx9Is2DyCn0yjUaQ3i98e5T/qmZ5EVMW8BnQvWMMGW2sYTWUawQT9IXlf6/NR0XnMTp+OwXIHmVlsf4ihYUspVQfxH2X/muBHPyo5m7o2d/OtxvWXiRJ34g41hsQVKphVWrkkGzXIeRQOuRIJxSzW7xVhUiwx4PBCMriJtYwDpRJ+8os6xa2xmHBffJtwfYctQqu9XFtuEM2bEFiLWXYuriAayFBxcf7zb8RGrZEl9ciZqGgi1uJjptJclSWolJibza2hJ+SDvCLfDFmyBLZgd4kleug9drUXKN4eR0wcKNbqLWkpBaUV7SeOy7zRWzkTdrw6eJrpMsRoQYNn0/8TWjXQqV3FDh49vxHiH1RK/hzfz7DWaRaD0QVi89MDZ0l/A1dOxP9IYigu0OiYA4Jrs6Sx9EsjHsj9GLmS3iGrFy70eU7tdJwhgjtbkbwGQOMxeKr86hwLB7Q7/sOkE03H5c3R/ho+FuerAsHKAIBJdMbZ3ETMn/c8ocR84oRxBS9pFDiFncKCvxhz4zR46EX/OxsrKwuXCGyQTGXunb18kPiKX/CgT3Fs6xgNxYYQizDV5+INCbo4BiuyJxPUI2OIC/bN4os+ZKcEuTTCFkCSyrEIldwDrLzDJKF8B7qIjrxFZmw7oEL92DRHmxLu79UmLcsYsHHGrTF/FaGqXdZSAKjxsBS3u/uC4tUSSnDS9uWlznELOYxb/jbyCSQE/e2LnI6Yo/pqB9CsiU5/pLYO66ygyTkmpwnvOAEKZJQMjQZlYE0Ia1+VHybOoPKp++8xGFqjWAnUJJvbiSD+AcFeCL1wZnej/2KYDtd0CA3ETPoTel+hCGwN/1exU6kHQbjfyQoAfyQ3jvyg+HxI/oDUnEHJVAQXCvma0h3kQVxSSMNJdCb4nAxW5VHbmcyPIgPyKvZGJA6zEhw8Ql5Sv3Lcj9VO8cVsfVAz+/184oEo8bn/F390D7JHYLYttmsH6c2YeBzo0C01/G3a3oNPIQp2RavRY3ohklFNuGkOk2qszcX5HVs9waVX/1AiODv8D5D2DA/14AM2ctT6+LyST/scITNuHyTFlOCANKQ2xB/vL18kmm4zHYAzX8BxUZsyr8qaGRdiahehjPyIPv9aDKs2crdgcnbAQyuIqSozr3WkyOSFknpfIDuawQYBc/9VWSv9cgZmcKAqu5Ra6tZE+5DMbS7/z4AwU0YeI+4Tum+bpwtmJ8ybp1o+pLlQjKZgZ7Kj4+1sm1pU+gUYa9vZNdN81oUW3olqLklgcIwaOlejPc7yXWsMGC+zxi3RpQGCJXCh8NXEwsCBNaUI2cFTYDfTVGRtcojcTJaCweT/V4x3GQZ21QyDFdDm92DNEpgG+aTavUR8EO5sbwodG9sb4T+bPZ/+Tfb1Dzs2+kpUhz4Y1TR7Hbxuup76av4OZnLfCYRMsciPd1fxUcShi8snoVQeOiyubVaaNul/j6QPp1+56RoJbLFgyOQQDnCO6/UV757MU90LiwXghAdLBOxzpidduyPp6qwqMuLZATSN+kXN/48oE3IwHh29RqjpLmPuaMCcRPo9zntTggEHh94srWQD790YDgs/+IadWausAbF4Ak65/IoRsStEBB8DMW+LxYcVI6gC/+2cEtnjrIPVwWx5GOwcvFrCaklRv1JMkOmp/3u7E7WD5ZVUrEtIfLgtK6Rox3CRSmSEaQiGsOv2rSWQKo8t2iGPz7y/GIHKwN2A7o9/kQtIm7hYA3q4EeoNnYqBZ8Hpj21F+gcVtaY4FytF9AdHWRhZXzAumcOxVgl+qWTCt3HfcAjWuUm7UyfuZntnW8EjkGf9hTBytYkp90XjOSvENCWi/VqMT7wWQ3tv+2cAG5nVSuD4Kgh5ungtR0leTAp0Hg16YFu0SBY7Y9ac6LUlV5yzTkiPFDncnyXjOj3aFVF0VtMIfv6w6ugm6gCvzr4xdkTiwQ+85HyP6PzcucSYZ0KmaJ1/I5eq77OjskcwtwB2jINq0EKT3NWrnIbn+IgzOKeojtdGl8NlQLuZ5+Jnb4FUdG34Xfkri4XGeHKx6YDzhRTCscNfIzFa1fKjw/eUWJjnFNBDIVFm1dQBWxsnthLc3gF2bfiNRHI9F2KZebEWheJqFP8bibAnIYnezclEVEaCrbxxFqv+tdfspnN0t+cXyfDVCypmr1Y6neVGuDtLDei70Ac38+HIVPXNEQc2dcgwqLT/5hG4WKmJ8KysN54rAy89lYfraa59+1mX2Iyebz+TyA4+jZcmXyhdXYVcpflQ7fK30mv2qJ4c1XtGn/xBVMhoFllY2rTHiYt11Rqa6H64jYoY2TWgj4qmPX4hXecPasrVaAWqXLG10yxjXhtSw8P1I10w3z90F8o0rVl8i3rtDFF+6ScSZVsLu8N7IhyZqIMe6kNclCMu2zfLzZ5L2p9lT59yd6yoZJf29zz0q8rRWHPPZYbtVLLI9AInxD70w1+ywIRMR9zAtwDjNKVozjqLXahCyZ8mb9JFc0fWcSUgOgVte878dwZruIXA/erGJ/xMrMj62kB7WjDHBjLNIFoC5Fjta3iIXJABFrpBLVo+FzFBZG8IkDWaYkMW9aM1lO27VSXCl1i9zX2Lx18zH2GCX2eSKg1ei+2FfSAlEEVBsj1dADgq4yartnyFnHxxOh2qzVymOlhTWA1is9FiSsJorWjtFS3d9OgvVlM23/1tbaxze8TqF3kai+/JP4jRo2vUqe3/5J4HskU9O4+YG+HsdCgNcQOwAk5zny9gRBl1ZHfA6FsOQxkzlJMyv8ldyM1EaXb40XVKze5Cgy2l+5/ZDHw1/ZgVNpj7+2lDvy8X01omkTTGsqoNPyNVfvmYzmbeB0bolM25zYPlsqM6QGqnKvKA4Ofzv7fAf4jn+uBXDeusjlWYXEa3LZMlQn8p3lYZZHlJsXYVgAgLLljgJ6KawRQi6xeGoTdJf6bqFb2hAUxzEe6FywbjwCWJYVeGHRzUlPYlsZwHOdte0tngs3gDTQ5Md9WvwaAKBrFUNIYJpDSaUAzcPEGlK8Nl91EIYTpiBot4SJLepR1lAti0OnE1sYRIBAR86FP7K1YFGdhJr2IUzEUGKJPwR3QsD0tDgmvKRZgOLnel+OYZaNQuh0WOw5lx24MN0bW7K4NI8LBE6tXwRNrzKSimfoWYls5IhXTADtmY915MKAkq0X8w70lLqiADIVIhSWWqaSlbyieYTKMbYRMO2eD/jiCcS1eSboL6R5NOv61weYb/Gyrx3kvLyyTR/IKVPMj+GjHO3X+EuYeGykvEQc20KOcSDkYgwkpF38s45UUZZHnaic/2dRXjTJA0nierDRhx8k/AFpP687mBOvz0Em0n/qNZlga4LwFfcRLcjXP0JlsVqFJWG+ChEq0jZaESbmGsFviV1JCN+6a3CItLBNTb4z44tvfsgg13ZsfgHBU2iMIwi1sFmr2LVhSTKcYSR+X3VHj3zlXIPaz3aJB7ejojQo5N4oWpFUOvahz1WJ1V8EmGuY1johgHUTALqh0A2VduVn/D4eHyJ9ACTGrhyLEvsA2NXacZ7HQAHEjVpyHhTiFzBu+UWQY4pFeK27HaOoJzTedHjCV9roNifLgp2dQyeIQuEJBI7kLflqtKjqbwk16Yzc8FV5C3fawq0iMaEg/j4gTsAhGADAwQwpc2f/xbYdBpWsXTxT6OoVzjLH9wLl5kNG4etcvjrrQLyCQXkLJ+R4BIfcZydcGKBK8tI/LMbALI7OiivY4zVQq1wEY87WbY1lRd5POjp6Qvb7knl1rQk6XRmbQKK0o2dYqeicvcLNsIe8x6EqdEPSt4JcxEsCYYI/i5sXd1kJ6rCKZ8eauQus4vyV3Sjp6WQXJlJTwOzyg5Mr+xozTElyrpJRwe5zmc/OVYEdiK4aVc37Xy0m8p+gEdW+J7uRDlQNICyfy9ejb+D++gB0AslE1qBOwZc/9VjRC/FXPzsThA35f7iDWOaV/qmWzF4KJw+U5JACc4E/ytwkfh+qVJ3Nb41pU0VoXOVKxgXXQCvnWoIZOGwZh2ODz5g3MEL9C0W8JTWcXky1Msj5ddks6NhuYxyMShWO5XlOKTBcZfSHiWPcbt74BvTo6lecV2LMZyCF80fxPQ15UEPzbAyLJt9FhNWTgjdACw8XlDtKSC3c1BRg3vHib+fBjzb25D1aXaTQlLxmGOVu3owZXgQ0Vd+hZkWFeJsfCS1XKszuafA8Qvhu1R0CbeKCwh+2Evf4kRDOcORuB9Bk3f8BnuncyFv2YwY5ZKaIoJ5hgyes1qlhIpT9Jydad+0OtZlngkgzO7JUQqZ2snKV8TAqsWjfaG/6fwrVvWUQH+YoZ/MOKUsTSULa/M5J3KST+cGYZp3fLSh89fGThTThihNkDym11IIqYuQazXc5Aw4pq3k/m4xonjIgwzrELh+pkyiWnOvQrziRTIOGL6l695LmNbr/rp15JfxfkrQ+n4xyZElDczis65tbQjTzZ8YYUTi6J+V6TC3DlFLdh7M0i8+gQhuY0EIn7qqwkP7BkcW/wpUM4KSIhxWmOFnoBzL0U1fZucRdQNkqOMlKnifN0jScjaxcfsXXHjmdc3k+863/qhUTBLbGqASwD6tPnbHXPWUHB4KUPrRRRVdpXL5ZC4LHh3xYz/BFWTZYeZ5+ZHUvOw7+xdBD9jiWclSmKrUjqwydtYY9RrZuHpvXjCmyUGXMpiByYfM+mkE1K7hrQVpkgqiM8vl13U9WhD9vYVcp6lPr73adv9u/1l3N5TBFWWnfzg1pVluBTEDLsW9QN8zzCTC2Dc/CaMelUdnpveapwuY0+dNh+bTo5M9h8ZSpEr5antP9F5D2msTsqVtREw6U8WhJfCmob47ijo/x/umGIuHJkmsXw3d1cTYHlP0ZdkCyi57LniDP2GUfmyj6vPQPfCiKVb9ttXo8cWohckL0y67JxAcU5j7PCV1IEMdsn+MpIhYW8jAAUbnZSiBG3zB5o/LawqXt9xLI+F+GmbtvG+jvI+m9QdZNG+Tf33xmtW0aBSbyLl4/m19pIK9KpUzh/wcr3xn3s35yIn8KodGeIX+U3/xwPJ47VoHyUUYHreVHlp7UK9gbNa8qV4TVmT10DtQ7YlMhIW6d5jWYUaFdjEIU/A5jlj+syzao+ZakH/vTIknoezCveiJ93licXv5o4R3zBm+jwc9A2xdtMxeB7jDpaUMKyI60yPwAFKK6tLA0G019O22U5q7L+85K3y6XDAG7HeesFJBTdtorT9cmQdHtWtJB+jCQIruNUiJogiaYcyP8eZuK3NmwHbzsibUr7Cv3hAAH8tWpGHFHYVfwrMFE1aO0IbCGsg4f9YqU87rYmiIUvp49FlV8PmZYJH7++BWFjTmkU0kSBehfiOKidf+Mttuoh35PioribY3AEtOfhhWk85X+YICq/k2N/C+haNS9jrcsCLykgPq5DWjbz6At1ILoDrFsj31vR2rrh8uPytfj/SCEU3hmT/0heVXc9cTxa356uzh6VYPFjlkAnWpH305nwwapDG/a/2asxo2xkrUscNnE2ELJXJMi4U4i70/l4F2bbwOGJgfxyfXQX6c30SQLfqTg0KD+fUUuRcaUwYqHPrUyfPBi7Bap/xZE2MklmNOln1xu2e24+U0YdYnbG1ru99eYZt7eK58hy2Mgc+CxuUohuIVLmklYOZPwlCdmS8KAqZwLZsLBsbKg4tRysH+5GkZmw0jkfh7VJZrZGl83cs249Q/k9IRrUgmeX/I+XUbzqf+RNt/M0QjiKRQD8q5+EQUSA5gFPZpndq08wfnGlFRlgwJqCbCeB5cRVmDCGZCaUqouXrVoaX7VjibyNTNsxeTPxXvXFLE8q4zG/B6wHknqUUJRrO8i4XeNOIFTbp+7UCOlcAzt95tKetAFJuKfsvtJGGJE0bdHe/PXZW+cMA1B4s8Z5GZ560q5RU/gof2PrJPvcrgqlIXMd5fXPM8gzTfDGyGzTui5VilMCvfp5nObWLD41FDeTyd/cuv5YmZzQPNYJmt7ktzjwnpIrlr2iGWEI4G9sWQ1m2lOssmYofUduR4IW495fXslJW0DXlQitV5Bj7wPPZ1EtCg6VzJBXrZbjzZJ1K2ZYa/uPRBhyCKf4THDq15uqrVFL2yz6SzztEB5crFUYFk+Ma/MIey/ii1wqRkBj5dlXsl9Gqeuv815E219hoykoHkI6CypFf7gbCncUVFqVzJDnC0FiIFmSUrA42Z7AOUiJxXYeXxQLCVxrGNEzQyeEm0f5UjCIZtZzwf5EsFkBuzyPXGEFAR2im8ksQUOiHefEL0OgrfY5zr7D7qDNdXGhs9+/adWxsy2wVyuY0cNFeAFjiWl+Nm4QXEK3qP7HqEYbiDrOb7NdDBbV8GEuF6ORScTksLpCyGpGZ1LSK9GlW7Kb3OUvdrowCD00sXFbsVJX8577yn1ZDXBaNmEtM2LJe5GIIrrjZLh7P+taZiGRHAtHXn47DEXeyJGTl+jlSRMiKrqTIcmuUNYYt+xzMMIA1D0z6yRq9Ekl82aoIsYnUYRwDVvEHE+HxdGhTO5mEZy9bCmXWtJ4PzQsELu/5TA2wPXJHrLRtqRYCD+jhUk21W+XMGsZF436GdGVkWyx74nA7B0CYC1F8eIAYhX7lNmvbjjyFO0/996M6xiBGoGz5KysE29CT8tHDxhXVhPIKbesidpauKZMbMlnLTODuDa1pvwK5EbhfDeM3atq3S4ome7A0NUPaVeTqoa8pSGXqXbZ0l0Q0vkejQ7nVUpSlC1GRIRYmsnsPFioteJZ/KM+yaorjHKUSQJe3Hlu0aBnQ+wsrcqix0g6q4NSCBqNov3chdd9nHA7n6Je+b4WubmuM4PASXHbZeDrZihu5jOEZR3hsBeejWeQD1aq3eHgZEmS2drSZL2qOPFXv3g3LBCWSeLtgdCALLAn1G6VL9VfM1VlXuvBI3XUafwXtl9lGdnl9oHEyCpSPnV0gpzWVLpQOg1hhzfxs4/3LOdMcM7ko8e2xfYnPYVJE5inT/VxBnJQ76oNyGfswAyYT5yAlmaYmgCvXAtLY/gzeNwPo5KKkPG/sFUeDzIkPKIK0baR6SvEtcONsRdavvto/KQhK873CDwp1bGNnzX9nk6yWd9tK3A6pqd6/57bUoye/3lQ3SicsmRt+3qmwB7mPFRIYdWwsktrRoFbbXJZAVKTZP1CbEXJA/OPAw2gyfQuPedDyPi79HW/uhty2Jzl22YrPXH7m83v5EYnPkaa6N5tCny7YxINjCRtTPb7DI0E/RpxXVqumeXdLOEiKuHanOp1dXCat7SkcLcmmqLtUn5Na1T0TlUrCV1ma3rXaekhtgrZA/vvRa40CD3ktRv3aOPEtCFO56eRK5dQqZ4QYzPtgqZQC9wCNw0Y96Dq3gkxron96JU5IV8i4kF2OHzLn1du1ku6eeDnC91SvxStbA+zN26ZRjpvJlXMAdQpPt521nn7bFAV+C9WEo/zEKu8p/s8O7YBW112DWFCU+wCwEh9UJxcRSQeNZKOyeyInrjmrfiWXLz8nkymkWBg2I8FEdevve2Z9/9c78bVKxxiHGdSYMLheUO+lEgTbi2MypRnMQtQAs4+EFS+LEsMXsOXHgs29jTSol+uAViLbPLUdLCBVIeqcPWktJr/SMs4PgvV2IDpLM7DjfVSNDLr/nLKCKFlJQbcZSEEq6AQ6uYHGAi+QAkkHangkcQFkbYEEAttQKYISMNM28WBTgqUdLbNDTHPea12n0LrYFbWVrUkeIe9gP+WHcZb/KpgNfF0Lq6SuHhFTYEyr4u1040/JmZOHsFXIEce4ssNQDdcQD4wrxLezKvaCzqlpr3XKtk/tkyx46jUbKyQMoGC8M1P9L1cEljT6Bxh09fRm3E0C3lJpUPQUQ2+1ho4gyQKqPqyycqXQlcV/GUCXFeoGlV8wK3P/VhtMBjEaAE9xbLcg4l6wLieRbF9xQ5jsk8YgusTmJFw/sTVedii7F+eJywhZHCJs9VLvQsO+6d3ya/hc1tI7Ksx3zR/DMa7qpTmx51rJqjoboKcBE9ixxpxszGoZy2dinyK5Td4BZoS+5YkjX+fB+eNw+Z8YelacWqEaDMe2f9FaFBsKiL/uGOzdjp6iuXUqdcOBu3IACTJc1AC/qnZvK37jvHjCU/wN0s8EipMJKU5Udt+Z5usNx8WTtRaRLKdNvBzlJtLMvE5fIsXK4lSmdvBNVuHYBdOQzHAcY0Vd/VrNsk+90wD5ib3kQO5OB1I3W75fcJrhT2CCwvJUlruhrZp330eMNmbPutrvUOwnsXV7mtQ7QQyoK2JlZo56AMyFritYTVdp5EbJzdqarHZ32xJXJJONVzpjttatTHWamh1eJnGaX7ODx4lyQQ4TVs8MdXvUVeRpINSURXNhLwVbs8gpBOj7fCISFeCeya82PqqNItZj29EmGOduq48Eptlal9nvMCprspHADrMh2DW1zXjsWBqZNdye41uH3iX36ln838pcv+xUSux4JCCFnnFKcOzo/6AsdAoKRbt/YufIV5KYG5H6H75H1/Zv79HclYOHowo/xAI+9t64LaUr8l0qqi0eMyinppffveLAVZqY+g5ZxDL7BEOMWk8KV6ELDbBKz/bAVxRELoTKHrjdMZXbqQdBq8RlwgO2fmq0QyPKtVbJ/GqPRkOvzGt0/Ywf88yvnj2++H3xtgZ79/+u/+qTjsiuy+dqed7tTGRz7zy1omr6jujqNEaCLXg7oHDwtxPIV0itjpHaNrPKRqXUI+Fqluihz39f1kv6tK91jW6St9nC450ZCDnTjHPGqY9RXAIbKnqBQ/9XS5AAVTXrl4I/e2rVytPWL7L+80pqLulqAgSv48h5cxlKWQjFB+8RG2IlD2DoGm6WqB7dzdNz7Vp4ndrhbv3viZy+gBE0dBFUWfbC9upP4CtnT7pco1blie/aGOGkiW54a3d7wACPrYzJEfOj5TsPP3l+/LgbN1S6bPYHQ/PCy/Sx//7n3dyrfuvO1INgrh3+Dm9NQSdhTaex6BFN75qCi5USQJjBq193aYKGfUzlvVqrdWKdewc3+yBwkn1gv+bNzd73J8bs37nUIeE1tlLp3gHZaVbBT+t7NzU+e0OfY9HMLq+acoF0s90QxBYpRpkvoo0M6G5uIgYzOrf4ensCWI9hvcvTVaTo++f88+8q49piX/cvGzrW3xp1jiHPbAOSyw9WaHQuxqVeSNsvp0Whw2HG+P98/iqsXlkGX10p6yiweLHrOLWc56TttYWjYOvIUt4elIa+mjAMK8Pa0WeRNFxw+MHmEf3NJYX9kURL54R+dBDbY7LCYLdeIZSSV51z1RTP/lzPo52CjL6wlq98myZTROcx8pgNMupzLhjC2NfWPhKfP0xofPwoA0ZzrS5Wwk9md0Z31q9dIfkjR7GBcJ3qxONxNQyuvbLJg8RWHJS9ssJk14rWJcjgnpq5XyyUQbTaK4qEUu3KcEjGGXwJ27M1DMqK7hUt4xue26BN5ki5ByCVY8uzQl4T8UTYn3mMfRapqAclbl7KfOzZoqjVOXfdqdUarvjP70unX4zEtpf1vdb23eH1Qz+dSzTdgqOaf0zmftb2RntGNcCIfwkEScUzyTBpDl+Wc8txLA128qacFiG3mmj/M24LMRdAAKoBxzd+O2CYiRqNqwNJ62QDVC0j9A5gDGnJ6td55YpT/cSEFfgM/3RRHfv2krUsa6F2AH46t4uc34L3YTC8sYI5mw7rSDtS+sA4BzyYb5PWdlqxwc5s3ezHmQRKEfJ9yTPPTrMOEFshkfC6jPL7QDNZ0oughLVgXpIgXKHsimDwwxG3xfS8wdSowE8TNeuie4fX++cbD58fy3egApBzecfAHRQs+uC0S1J1PgoGLXDaCsiWl8C68Hul2DL1EZ6jcktgkYSfFUN5WtH4oQW5EcYzLAN/wu+oz0TJIOH33NDB3lQ8KsiInYs4nECvOVjVARRViMALGJ8bsqoQ5ADghWHbybo26XtqcXv98vr4yUoVWRP5JQQdF/iJLVTSBhGyhmYsW4sB6ZG4mQ+oMISVyf+NG+g3orDjFShRllt91DwReJ6J/Dx+GPoLrtoVrZsRsnUglLAogVAtRsHEAo0j1JNEf8VzpJFzuhmLGJaImyYw3aEiFX2lDzNaD7M6MUA8nNvrpRAZDhn+yGPWC8KOmND9lsb0BdNxKosR7Itgrh//Yacfg4oNoxwosVVnjmYKMWVz0q4tsNy79u3rvB2HAC6xk6TL/awI3OgMlqOiC/ukO0j4SJlo8DZxIhUU9EiHX3xUu0QByEn3GqGT51RJAhijwAxHuWR28/A9XjeUcNmVjWrwLrfeGZv8WdFXCOxhcBd9LEjkWK7QNgCR5YdFdda4F31ZUwAOd4pegMlBtN0E3G5p0BoFlr+ccgV+uy3ilRQxsgTV+9PFoYjcxS5tVTRLquYS7mXjTJhxMWIgvRAIeGZp60vwDWrw3Tr40v/+YkmkOGvD5fqs5r9RYHeBq7qEvd4bvfrMqcZwfH3pngBwpJZ9TQOVtOz+u1vt7jH2hPvtY9mbrCdEyBebkCfmDZL/R7/IG2Y0dqQ0CaM/CxZUIwS/lz1VwL4xsXG3R241iZtQtjX1ks+/djb/pDcmPH5ZbgMmu85/dAMt0bKdiuotdoRGVJCOx78SUdK4HgdgG/fJGmcCpo+cXdBwz4wjHmNo949LXhtRA9zogqgDbr+6nm+ABZHdj2ZPKgZ8ZJLYsxC+ENUeUDoDXF2aW52SBbXXWiQbJyt3EdSfVNoKjFGGY39PCNXXZ5ov16ZU5PN4cSOYspIsBEhqn/mBfsEvdCMKjuyQUWiuZX2jfsvCWd90SYa6CyOuxi3XcU6F1IKl24xRNqIDOZ6bC4nS+3MrN+AtA6XTu3U5DfFn86lQyxmV39BKCl+b/icQrddf7My2e9i6doehquEO/5EbIFYnCAD1YrUwWhkkcNBvwqVWhykwGYMfQNBXfgHOsg7mju1uaLzXNPTtz6E/Wzxl/nEDBxd03Aqec/CpR/PIdNe/4/Jh9Ry/eMeb3ljETnWRhWJXKW+hHMCNr9/U+zKlygpLOpNB6mgcoOkCe/w/t1dmCbP7CQg/hoz4ml9/x82dkk05j90jclf9vPp3kQ+ToMoBf3xbYG49GFlFsX3ofxhN6Ez5kV66ZTPGrccDyBQcRaElJLzOK7dnryWeVBcXym2XoBRHUUxqZokaBZ+JG7UZKafcQMIHvY8zT+It/mIZlx7WM0L/vYb90NhS+Vcn3qoHdrzSiVvCEo7EkDW+lbbUET/DuyjC9sNgC6wLx+IpcmWfm2jTewgM5yAiMmwQFOI3egATMrjENWz3AFUxpWi0UYwhJFbL/NlNmzj+ES9n5AunD0qC9zfgA12q4B0AFlwN6um6Kiw3DGNuML09Is5kbgeYoMaceLtmKX4yrLV3lIpxik5pwPIrdy5pJYxjqWRljhx7n/ldN5poxGA3v/iiuLdJzYPlBiOp1ysJ8jZQ2Wo8oF3H4zjjdi8+RuHpv38zO7Kk0moDlUXbPmQZ59yeMIZocOeiwXDLbtH3HCewT1B/K+LJzFdXBZmtI+sMTNJCDoGHj4Rd1ZmXjZQ4KeXZ/MQZ26vgSSlk5583rEk8SK4tmwp0xSoo2146Xe/B7Ha5cWnf0haA5/Sst83TXfE164UFYlAfhchOps+gPvgegSo4hyHfiU8CQLcu8iprOHFNhAS1TJE8GXYi9NA9lv9b1aduClWY2ctLcfa7xxq8BeAZAKhVYC/tLmbYP3Er25/NWX678Zauo1T0xjINz2G4CAOtAJGV5EZI/wO0nWvWhm0nVmsQC+fJ5D//IZM5VAiOsFv2Yucxs0pmaYcSNSWDDhtfSMBsmYNMuid0WY03sqftUX7xPioy7DH89pDAEaXUDw2iFkFgbbjG+23sIMjb8VrV4msmy0YxZesg6C0TxXhLWs7J2ycBq7g5AlT6tb7HxDixZVdpQicPfj2NQEncgN8gC07rzt8lQSNn9Nh58EqcTE+bc540pIRH8Ns+dIROIE8ZwpK+naR9lh7nfQUgh6IuTZ+l8icN6LX8zZOkNioUzOWVyZRbIGE5x/Wz/6/ACQSU6hoeZBcpf/spErb8j5PojKgfJrATTo3PRjfZCtcmxgzFAyKpzAPp7Yp9wRgHeHFfjYt25Ue9wkbu63r8dsAmX06oBdUs6AKYPzCuMuwJaqGY9iiS5oSzcQMhpyxgV3+WBWR2K6Y1zCZxe0ayqMjqh11lHXJYKDEMkA4/rkXRqe8Sym34VVPe6ZFzUhVT6IrwTlmqdQkQtA+RWiOd0EAbPZcCInN8++jSYfKJIKzqQ0l1lbPRzr2QiIy4psEQLkCE/i+LLP6gxot/nU8KHZEo0Bq2XtQnhtrowRUic1aidxCz+lHldzTspVjbjQNrC8757M1QSVgPRM2iwQPB+bDLzrVVJuCpgk9qybgKhlfPiQc2rrOvReH5rrEL4dWsZlef4sICah6A4sQdUssQMHK0jLsC2bP4O/iG11EwuBah3VsImywcVflv1svjPRKwoIlDgdFvsrMtwgSgOZE6+WDTkwmnFAKJuveCW2ENnDjtRpDH74nkvKRaJR8+3BZhOVBqlYifF26nkmK1EhWE5X1LDWkdSp3rjJUWhyxFHhFi9vkE7N2o2hnz59/icdyyOvXwch4AcuES2LHjWwDtwZIBQ2zj1x30M20RBxIP9Qc9RLIFocG8DzeuCcyfoAgD3kFteKDOBkjSF6ClNjIPesV9uCmY+BWp+E1pI6QAirDStzeU0ewvVdX+5QnA/Jy6ydGz6l9EvxmLcX80wzjyS2JPdjjqMUsgAhT9ZLU09mOlz6mHyMVi6b9Mjti/iazj6FaGXtTZAsGiGR6LnSPuWZVHWVYdF7eKsSlcePzj8yv2QyOmg5h4rtachfPRSSbJPxUgRf2Sf+kVsXn28AL2f+b+8MRCIVv4/OoSuDrfr01dmFSjA/fYcBICbMdfji9XgUNrTSIyaY3lkLy4OXPLA6DB/4xCsZmSzhHTlKIX94gkE9yGSKca8EkrTF6hvnlQ5XfcUpE1hTzvSKV68bZkGw1wBRjHmBeDRHpnITs061oEzpU7bSYu0CY0kwNTfWpE3cgQWMgGzLRQmv2MgLWPYj0fVAZ8iO5ogFQbrc59UwqXo0NNENyYdZRL3zv4aP21ckj4Lsbc3QVezJ6MutkyiygqhRN5BjUaSOWHTg9eIY4qWDLbZCW7zyaOvwsYiUzZoh0Pxz8kbkBtvxJS/XgrYeB2C3/lpsuO1vUTyxEEmmUMO5SNO++PmqNhopwnBB1I2QNjsovalgrRNdnbwlqaq+TKy4KMzOFn2X4bH1Y80PF+tJ/MHYFgJr/FhDoT6jSPiqN+MlKncIZ8dmn7mtAV5HMamFd20JPesO4NeruCc+r+S5Kl/MaAN5ANTH9hA+PoQKmhFtKtrtj4Db110lUTnTO4QixAN1Ct6FLmZWFQE5P0xDIEAITWOCqUuWCUaIA1+451JplrccuR4oZ5nPUBx8ZcMs8r5l8YQLq6aSV0tpqcvecUUNlYuoKAibIPKvCRjvzUeI8JXu9BaQs4WceUjCpnT/PicYEH90NVnZQ0sRnQDHCgfumC4FS1UyulaPOq454XPWdmAYii9Yec7USd/U0SI2UcO2z+Bg8IVDGRTSlWARveFjm3QhWMPonoPZe6lu755qjHYtNOvzr0TIlRuGxlKPzxHOxGdP4p+5tJUNw6OuIXNrfVe6f/dftfM3oviPHKp835eqjk7kbjuuRFlsX/9Wid9Y4K3Ohfqdzjcs0oEy9tORSgyufHOZbjmjBnKq6xrfS/OEyEgeR95gkyFoEDWUTFsP+TZ7j+AAnVvB6H9oTm83pFSA2LTkgNu3T9jz9NwnAmJ6RgyHkOj9VhAg7TaLRLWVPQhcN/q6wwwK6VCccTGAr/KpKTtEYD33ZvpnqUaaFkSxeIh7ikBaSWSCaMi/ZythfhhtsZBMs7ASAGq5PoTa4wKYNFL+wktwWgAhRxuyvr7Mw7/4tWpsezYCbCTe0yXJrAKMqUU/eFU+51ROQYtfrpUZUqCYSoQN+894u+t1Pp7CJ4kBBaRlpGIQMhY6F06Pm9b8tPjFE8vFkWTwH55PL1zWFr4j5lYvEcHkpeHkebS0xG3OUIPHaQIJ/h0fMa56gjGdjwYacWRrpNRCcCJnHvhZy8Ou8BDSJXeIZxoa2wt3zyBljbkJjD/clg2CGXd8ZP08POnwVvL1zEfv4vU8OocaYETqUBptBnmBT0lU/BoFQN5DPjU5NfORji2O2Cpm0RmK7gxtZ5P1RU0TzUXcjG3nkCzvmPJG7eVzkLRFVAnGWyzpLoiIwA61vuV4fRPG8BBGtIK9/86kN4NDb1XYcbkLMMXarH2JGl3sOhT1SJEBGn3fjMS+0XmrckVPWws7Gozs361aXlqDgv6Cfwmx0XTB7SqXadK73d7c3GjAi6g4/3RH/3LJNMLC/ZHzVUNFpPNYZilLdWKWsHHg8pP7Lf74m7jLvV9t/rkWUI62qDHZr/Jo5nh6mjRwfiRva2cReuGGgnRjE7xzH8sCROOUv1cOq5mticPnvREnGmXG3MG4idhtiNvQC4VTA51jxwFyT0chBUqizZLE7gB0qOZvnJElA/mhpKBUruVo2Yl1aTYA8r49Tg9t7IWYA05pisbBJ8JTRP2kNokkKk98x5ZNbh+j6cB816543ZmUIzWbz+qS63iTRSh3zXfgSr8f0rkWGBCG9mnkjcJKBECYoygsPjhL20OlDLE2O6RtIHnleA7VzlWhlKsINFwuyCcIxFIln9JhvDGeA0TOUqrnLBzgurLKTqG8iR6YQY2YPSZEjGMX+VynYjzNa1XQEWyAUcHoSQG9N9+Q0pU99Rl+CVQeVLuAqdotFyjt4HG0sfoCfWfn18cN1A2ada6xn3FnNopWaehZvtZn69TIZGJJ2joxtpTHComwTsUK5zKCHrAynSHUrHWK18juiplQnUeK6tuA2Fjqjlk5Whet1r0HssTfdSsMyHMOQg/tI+NlFMcgxRBL+YjgjSD3elcOiWWXMn01CcBdNPM8Une3qSeJknUpP0B21eAHlBs5nWcBupsG3vmsesfiN+LjZlrj7Anr0zXvh9B6chYktkbGUD6rHRRJQPUCS5Vy6ILb4jBqq/nJ3LxfTsGS+GR1wMYMC3qalQBuuKvfUNvzRyGo3NHl4V38EQKaUENQKEa+XKPQlOon/0wEw/b6OB69AjRSL1R8oWDTMi+f0ep4vrDIYGeccq/Zz/+DgtHT4kKldhxGbyoxyz/Rg2+9gUrUQJxNZb1JrNGiFky75Tpdb1vvY/cjz58IJVyplgrSx27fLGoiHASZ/Pogt/aihwLj1eeJBHrNz9qTJ5zTdSj/dRiwJmkdZt76JLj8WpXXfOZbt/I0C8waRnyz9UyI6JX+umU0MTgNlTVPHWEpTmLX9rfb2vojbb2Nlp+2r2QUJWSewnHakWrRkV3adFAHvoZpnwLXRW/wvYK21zC5oXFzouDHiP+0Cu1c8q3v4VrC7otWV7Tsc3EH42/T5cNsez48dxPtbx2ukF8HdUs0p9FP30hS/0d2fZV11ZijMB50VAr4Z1qTfnYorbj5qqXI/IokaHDntGaaCFXDEnP6gprH+F4/lzYw6L4jMFvbXF/4X7kQeIIbuXPwnbfM7996Bj59OIPNNmWXH0A4dY/qo0tsod835+mYTxszA3ERZa+8SP6mTYfmjYjsg6NmYu28s5fa0IXfKD/GbjXVq4ao9UlMBrDevGruflC4bnBxzBkORV7dPYDYkbzaZ7mOB38nUhnfVyHL7FarMgjqumYDNTuVMQx1YxZ0tJpxVwIKWxiY3H0ORLdYe5WEm/g237lHl/eWfQe5ao080PKd3rbQNRx2sbzeedFsPovynDkUprLA/VM7rXE0dMRmPbcJG5qn5fYxPF1z1pdhqwgXAbSKgSwHDNb9xOMKV3JljJoGQjuTp/e9lk1hMfYTHperCaboh97KTWZTkd8yZDcCzaOHv3KtHAPsokv0TSUuTll6zY3CKY+yKZaXAibJbXP0ewtQMHu2kRFcMakWmjmVo6QphEbEGhAwvVcTlC33lxxXwWKvqLKyCLL5VogF8ClrLwApa/ae33h2gNiEXF6miJofmtqNZDON/P0HbSJX1h6oU/lx4WG4Xc7qWa5BuXsKmb3xu1aDX2YemXRkIlVhB7+e9ywrGV8yYYDovFVzOPFc7H3yOmrBzJIPuI7SzKkZLlelEiaX/eLAPt2G7xcJssudvJX21XGrzq3/bS+A65X3OAXEzeelibD5Tk40F7IKop7Z61QAPeDEWAOsveNzlCajGn6czscCUAtjps/nkoPKeIMVgd2I0/m6dFyqq0ViCdAX8d4Oph8q88g8Ye2BI9QdAq8exF0FEBd2m9tvFTmv2vB7V9FrouiN/CO2FfRBzZdjmbuQCJchmSy06a6ypflb5sWXKPYj+rKSsv4XjGSQulLcIBly8ib4gLw6vcsfq+6R6bOHQdg0Lz1dxy2wZvJG/Y0YpbOX+XCkZ7KNFs5l6Lw32KWwKZPqHAS7QwXjquMMf1MzZ5ntbgxraGizIWIaVnnVcmJpc1HkXdxWrDRLfWiUBVUlAFf3JfZlH1uSd2hIFRxMyg0GurlUI3SyKjRshplTCTezL+RdaNLyUYGoZSdoWDiRswl1tZfT3Gqz5I2Y3nC5vugRQuZtHQBa5YM74j1G0h8j4uvRI11LqBT6I30K25qqFYjsLjW2mCnK+2aaRnCAy41WbkBNMzXYXH6NmvfZIK+fDy3vdsEvau/23SBkxw8XzvOZp563ALpy0IeZ9oMVOu/JHJ1YJfPOIO7fC78M+qKInQTAip47X0zQqcp48VFFblDLdWXsYQHormZEVcybDaw/m1gAW7cPnSk79a59BdrYBHCeHPKB60tqEbxqm9XH4fduMM/XAOhe2OQlOe6V9PTpdpMVo7RLm/NmTk7yEldPxkP4qpGeIKLxRosZS0PQejx8qhbAZy3fc/msjSeX6xj/I7g+fc+MlqIoo2NdKIW1THDv3msMkhiQEJ0Re2q9gbu0eY8CxRJLLcgf6c9YYfwWSQLmA4A62Qew9alHCA/A1693jHrCfQR594GoO/m1ZdH25sOThcTTbM2Cq6iI/YqEeyXbY76zK9K8fQB1yiTPTyseB42J31b28tbMN+EaMEMYip467QedNUrXcTWoOvcQyz3t95dr71Nyhu07AE1r69uCLGVW0J8GJFIs+81gXD8m9BGnefF+J1WFkPpfps7bKRc14QnM5Fb43h/j6Ls7LgrIENi2gT5PF1W+jKf54PEio+vZ3kVPnutcEtNLTRjfav+8X5XLV9VcGE1gPZtouNnVEPXET0naYbkkKJ7y1vy1ILorLnQdd1mE1flJn9UYHFf5s+buaZJ8xXgvVZEez3vLUXOCl4Z82BTQEkRHPNeu1QH75WBt/N4RDcLPgXkCIst3tmqf5/qD9ffIiBvTKyp/widivyi2e0ZUfW+ThGY/HDryqPdOTn7yQyUFNW4PqG1tK9fzci3vcONmpnxUZ9XNaaAmiV/GLeHPUdyenEV++94NNhrBY4xHNn2FVYiThTyre4heJEolQooBhYrE0Suzo5aH2PVQzIVAnb1YKevIzoSBWFjjnaezh7PDtWWNjzO9AlaT8y+Usg9TTIdTC4kUp3/jOrUfXMQomfUB7IprG7673vak9FCOrLzd8zDWQPUdW1e2XoDdRIgZsYmpV6xC2CU6fXwkris5bRLP+gr+krlUR20QrQ1mHo6vunZ7CfgVP/Piu55scBA9hbHBJqDel3GvSTNZqTjBaxROpRG4xgSsTThJZXSpT8/hQKOybsxrYQUBLWBfmad1Xc3IypcOXq0frWaXDaaJvHuu9gOKjUh4j4Z6hY2PtSakjkTUjFtmHd68pVRuVZGEEo8kEOzce/mRFbjp2WcBUCdZUsXd8KmO3W4fLHYl6wiAXTPY8F1HVthj915hG2qKn4aUa7znXJq1u/rbhhNyjVS+DNhgS/dKxDZ/bz4GbaG/EfVl2qPAOJyYEaVxR6Im3MTR2X3Gwa2OUkqqey+JnnVr0tRcABdpdzeSvxvSnX01YR1Bd6fLrK3NIbiv8i20spj56soMadOuOKNGcnVezmLWGP7kDrEdRZeDK6NgU3O8rQQ3Oj18DDJEPsW2GZyivPRs0RaDLiApuI0FuY2DSP7JGSBu/4j5dul71fPA5KhIdQSxOzdIRpqgwt5pBIwKhyUW67K4okH/k3/MBw3i5GD1P7Zp37jPmuZbtImXT8pEwJL4PXnrpJSDZOcn6mi9+mLSdElcZKdmOOH5X/N+NLNYCt1uVqeAIckqy/5MxMQzrdNkPp6XITTBh08UWvPo9AxS0jOxn6V6KzS4woNZs/mskQz4GasBs9kA3uHPTdhGVEfDMD5TGvzYHCHjAUBmY7Nydzt4tT6DfavfP8gAtwgofjP60jAqiRcy9Ci/WynMJGz8tLM0pdCN4MXSo7DCxudU0ouH5YZP0L/r9PDLVA+eJ7oPppSWprTx1XsIgGAZfMdK0+hDWB5F/jmldXxLjs0w0i5pXVlN9alkBSCPz0mNYiNcKz7sJ0qPySX7hyA5jAFcWvipYxjAsB+15WkQwBZ49tidceyrDL7Bs3mD834fhykR51aJAHUnmAO1SKYCCfCsK4VUvdqdskv2sYwnyWEFq2YgS9uWkQ3USir8wzQ2G23qGMyWiZloWPCvXExymmpbipvLm8rpz/CfKP4kB3xr8bepYOrqQXka4mqrmSppvlOvL0g4OflZLpJ2za/6UGvn1X3k/bs3xrHE1xOl7sN3V3t52ZhOFgjm12NndkO0Psw8qA/k3xVw2nHwbLNTEuxZ7rO2hITrIXwnTbpEyeMAeAymj9m/yqzhCtv4NiRTJFB1ouQqZ3Wxd9dTSX1ZOqLXLd0jzS768umV+wzp1g4h68AkLkyhLqDsrvFYajJN+XihpxC+vjK92wHZOrZ2nB9MXpP6krVlss7vCeurLoIff/b7NQ68NOBVNfJl+BpN4yivoek5tTvzpNXyus1maBUgg07/hacUuZG3c+3xCFJsakOcKnTELQu/HCn71QU4OxA2uYsdEMWGVlqoB8WelKpOyBvyE6DPbnI+wwImEXCYIJlpl8QKiAIdV6XZYgJPbCcucBvHDjFIoHoxA9HEDctrYMQaAbi8lK4DPpc8Nsejm1R38l3S/Ki+7qNrGZ0RY0AgliqueTtJA165ZxzpqPytm5GLJBYeSzAO8VQtbQoAD7VE41gPvaSMm5kTDAQ34uMqjeZG4pm2eTWkl8QXSv0xW7Qdli73ldDKVYd87Dqy24EPwLssGUxTkAxVNWwsMP7a2TMeHKBYpzkRd8dXBJdgaf/IRAhSLNaxf1C8gghkK3kZbqXbGo7zZ0Qd0BEndCi3m4xJxWj69BenvGiVKwah991+aAraIH6XZnZYCRiPZaXpxSuMqH/KtOpmYpm3cQpdyumahGxL5s9TnFutzj5pvtVYZ8n6+RVqkdDkpUUi/1xmtmgrOnK95QU+0Z0r4AQiapOem0j+g1h0hci6CWwhuxTwNg2A7v1OF+l2l2iJo9bkGfoem9eA0dxtYJWCkZVrQDkCrkNIvWJfbr+BWI/2AvZv9WVcSmRtPJH1hsDecLk+OISPusZpAK/Oy3kLsfX8FQqosIMRwEjim6eFXH+7O4vNOAePmmWBMpqu+qP90bFGeLviNBdoa4nhQSNL62H8qe4T7SSq8vCMeSPlmty4mgU/mkDXuNPdzNYiAms6ynbaFbZ9IvZLHlaH82TR4u64zQgtBZh7iVc3GBLASYWIr7BphC2PHnJvzG+Ddr2TmP1kE8ASoW8OEdnZppBXc6bqAhGJHBhBEm6XXCFsJmatsN2JjYekhUizgaW5o0BvEGmvBF/1iTMJkxsgxEfu7gPYx+byOy/Q/HgAlBvCkpM6NCiR6yiQTR2vTdEnVAvMLYUtWo/plD5m/pRi74LO6XDjlXtGcx0n76mMVQz/GOQztnFDrHCc8DZ3WWyWJ7saQFyvuOzIxBHfMXsJifApd9rkzOPZHuHxjMgN4KEFg6LGrWcGfKZCMSOEotxg5aBKtAPkVor8dOH6J3E5otppONcnSoy0akj5YUTkBR6Sjx7t6ymopI0ICYbPDyw3P6Min0yk5KbTF6ZVmDajfLYJjvLntTITIIcKnczh5VZgtMNi++AAnGqXRs3n67omPD5QrXz4H8IuMjHVXEZxnb0LiDS1fBcSVzv75E+d+CSke8bNRMxrX0k/4eZ1A4eAR5iekZJkCueOpX8Dsiujq/VZb0tTn3cZmr9MSSWuNEk7AmOT8BeF8iiR0T6I6cazIV48ryvmN+N3MlhamzU79a5VLw5S2MGAB7gz06GxFO3dTMNMmcZaNB9S6wuUGp3RT04nu1ypAfI6z4/ku1X7fMmV5RbkXvEwuWK/TzGgc8N1f8ruauU2SIClJHqIIfN9bhf1/Po95S44B03MW26BHN35B+Sj03gjhJ4XkfJKPu/mQGvs9GJ1IntKlQ7eaxhpnvhO+NqJ5R/haxppzH6ZNAc2tlGY1ZPwLs0Djw9SPY8x/qOxsToZMH4qd3GL69xH9yWyN++sFlE/Qlp7811+1RTOdAFoHd1/SNDGJiSfihsnXOtdGrXXkpBodKcDqVdBb0KKIpNSPjcOzTxcEYN5FMV6hHdI8XMFQ+jj6RznN6/zJ/PeFCaEkMcGix4DuB4LxSmSxy4wDwjMAvxOJ9e9S2dElj3O2mva+S6T0T/M2JWDNkVnYGC98eGGaBvGfgoW6kwvD3mah/mGze6YiZjzFWCD9zgqj0vs/So4ULXq1z7q0IPprcA8aN0+bh6HjoRm1EpOSN4+AQln44s3MqYU6G+eN/14Rm5ET4b/IWMu6gRAr53LmSsAq6Jfc6obMYTQ+vgkoC6eeB7My7yBbymNTjJA5fyo3wB3ly9AuhSXMJPC+4NYKxlJeByO14zuccczkSoKrGA8ynAyvLuTZgtJW/fbciJgmGurFpH9i09HbrQpoV2O95z6656+4e/PbWKT5TFJK//ERDDiyNj+wUa8A5c9HLT/yAGRQg9gC0RU+FUzV9WiVuB1SdXP0EYdrq5Ds4EUm2ULkFF8RWfvzfwQQyOmVD7CugEVZ5E+98Uj56hl7d+laMKJKeoEvZQBKv2iuii3ACz0hc3bReynXbrBaTPKlxmeMJwGPHe0s++J+9gy3ydN4yjb9fqL72OC8f48kh/mCbAoQgH6+qdesQwerbq3UxuL7kkWp42eucKvPJL/2InOW8xa3sEdi6I6m8MGvVOP3FxM2cp0WIK0y9t5xp9jDRxhyAiwU7QD0X69HiRkxEhwKByt+1sbsyz+EH2g/7kXBi4OoOa7WLSiYefsmel8bfb2hcuBn0Ks6Ds8p/Mve0yDZ8z3Z/wH6xMkQt59RK95gA82YHKvlmwpdoqudTPHmMmDzuUp/3k4whYUTHRbXyMV/gRmb3IRiUaYyRD84AjIDKzyUxAEOFExgvmVMyrbUSP8aXD/f2d8h9kSvb2CmDGRkRjmU85R1XsIsbTWDkaqALZxHe1WNC5rmH2CBKcfUzSdwbowbOrX58XfGB7hKcnjnaXyvVEicZkoxxbj9GU+zZiLsc7sMCWDy1Js3gGTjF2QGmLh9MbHllAqJxRzogKZcqyZOszZsRY0fi+Wbw939QvATVe92lvIyGyQTZPZgMw7XqXSQLS9AaQQBGc+WyIL4cveAhYDUZxRTBAIpthGD1ms2DwBbso4TUEsIU/5i9iN+/SSwkxLyCDt0bNOWnmI55M9wUmSgGVvUvO/mTzzb3Z2sWPga+8qyxUhXiIm1ooRZMnSVxBpjJebRPOgu6piEJeCic1L7g/mQpHOmbxNp45l4wmQKNgIvGDcvaGUS/Ly1aIEk9B+NG65HLBEUKIHae7sCmBwP3uKyMP1ZQSH0rAgwh4FfC7lKaMYonVGL8o5VtHcqCeE+HSy0RQ4/bsl9V/ia+eCqfCUISm04n8BocMmI9bX1GXYP/O8Xkc2vPvPHguXe5/orq4/HugNEjBA+i83/58DDe2HuFMGubn1C4GlA9vum54VQQ9YoVYmFXoyLvyv0P0nruCnIUPMFc3okEeUWxeOu4DJfMtCJF0naKvMUuo9cYDMJM7dMfschrIQO3mSJ81k5wFWuLKtescZcumiX8g6+LmObGK5I/s2KfqKGM1mmvf47XlO51nqULs7s9Wk6cOffVjzLoEy4iAeMTKBv9wFXoqkznbnmC4k87npFDPV2iybWAdeaWUyFR/gvfN91smfLF6/IV2PMR4FjkWiGcnMSidReQJc8Ml5mv+t8p/NUnnatU0cXJ99VD3YJVOuznsnRT48O7P2qcInF3P/CBupnyKc+A3OIplev+7oSxZ72ZXSDDq0mNkvvgs3anPnfbPi3Fj7d7m8ynBGvnvhWlIJeO/sHBq+7vtUu5kKAecf1hpx8mRGHdxn5a4/f3advC+fMWruQtmZyurWRIybhAHNvcCmeafNSwu82Zli6f6pnDuDYNg9CyV/983bvVD0iXRKjbNlZ+Pz0zuBTVuWApdvnTFhFBoK+pNSPEHrI+/Wfzcv5FH/3XwzsNjuH6NR/zuU4RWo5+/JuZKLu7Pj5AlsB+uQLdiDY/DVv9gO0X73XJ88/NU2kDACpXfy6b//QS70QP7z6wW8V/6eR1O0onKHDZmQZQUBGhmSD2ao3Dadf8U6mgnl/cXH9JPDM33BbjLEoXOFmgbUs0ZTS9kboX3YhQsghIqQt9xh7EeEsiba055zBoWd4sIjhOr4/TRJYe64DIXzMHvTvLJZGokAiQoUcJ6PnEJS0tcfBcPf/24neDBz6uSGEKCyGpks5anMynnYwI7wBzrhXydDlofqv++7efMhZjoCImQDrWdGpjThxJaP4vMfa/yceGScTsyO0+cP77SGwWxoM/AAz70GQWDbSB64JPDywLaZ4CSuf0ozRTTpNoTg+dcy73D1s2zoORtbTh0uM+AkWr95oNJ/JlpDBysErYI0Ed+sm9Wp7mTPE6DqJ4aD+X1531pV+Isiox2++4zVk4Q/Ku03uJRfHIToVD55DU//LuSV+d+dW/ufqiHizINdd8fOBD6lF1vCsoO4mEQ3j1krrgxYOOWAyaowph98Me7K9Kk0Vq1gIMMR84HSNDOBRoTJ2OHcM6nITEVvTdInNkgnEkschFRvn0hCPh9594YSuTPgWpzywrpvAa0B8vSb/OYThhYOFuw31rTCfzkdLobbBIuATIBk09uLO9J49SmT7XjjfZG/bmdkrMny85RIvbifl8Ri05iy+WsyyLH5pCbg9rlH2MSezTFqeUA8Vz03fu/YpEQK56g/r+TpNkfrVb9H0K7ZsjI/ixaxTNBeFNjaJAcfPsE25mzpdPIWgOjtDNqm7/1M7ttFTmrof8css+MV4gXSmXgtlBBZK0rO3Btt9SCszIdMI8DIW8WYCVWBijWRg9PMiVdKl445auebzp9x8NoQfQIopBEaiVPI+igOfcWHdyHCj/39fiUxigy+yJBuOu1/enp3uP+RplIje5ukxES8LI4/0MN+8pHOtlC7q2hMioMEyU4mYsrVGs3IIc8+kFitFFk6TTlpFDWkg4A+GcVSfXetqgt9QOg02tj8j2dsi6+llkc41/Fhm6vLkbvlh41fVPJv/SjCj/+PYnT//T/CUYUSxyd+aGP1I/e06H1zjGcfLzfdgb1pdTWTDupmcg43MLROmNbwpvpnQZLMnSY4t/nhNBmPMTcASVefBdTM1FgmgK6UUkAN5AykT8x+sAMS5MIJQHfTmCO/swE3QOx6GODmiBVTAHUqPeMw280dxTfr+X2EyIyxdq706iAjRaGgrYQI8zG5Haq2UtP+6iLjQwz/Yw3CCfUnlR+d2PZxul3bnXNAzvjU+3cBlCmGClGFC4gIyR/8Emp3hwEkWilRkt/iM418xSRhaylKwnIj+9b4nQ2vTa1ITgDNNOOjqzuVSpFEHpUEIP4McJfiMQB2LxuPR9Y+eA6mu6s9AuCRs66IV0lMXbEIpNW2WqlJSR2Hws7mKzdcRCYxYYBlSWzd4mmQDrHTmpIHY2eU/f6WpLt3ft0DJy6ULL5LVOAGAWixA7Xq2WLFHgf7CJ56RCJZO1xe5/WaB7ISHefv+GKlQ5FDb9w/7xMt4j/6g2pUP3pAy+E3NzT23TlzjEdRlatav9a6FiGW9p/h9Jn882PvxnJujW47PGdypFx1JFU/N4QCyTLkv/Mrr22dpp3nmJcgG+vQXcP2mrAnntLPDXLkHS1UBjXvks1Px5Dwg4YM6SXfzuEQLX0MSG2XxgPsCJtIhGFNen+4RvLrd6ZnKtlWe05FwV4HD9fw6gl8BUCsPoj702qn/Qz8Z/6k6t389eunM08ELCH2Zbw1gFmUBhNwLQsZWfJL7jMjvPUHhncNNSXxPxgLK5NsEn/Pv3iU74nm4lJ5fa9XFHPGo78Hk/epmOn+BB/SnQq275RnsbPv9zSj/pwxyJxt0sDKKFbFn4px6Q74nJTq9xoTFxY4NsA4YZyLJ8SrCT4ARrLqRrrvAMBvA/tPlf1irfYHxud5E6R6vnpW9k2bJ5UVYYEno8tNvY/agNbdFB7eSXxaiiRib8nfTwus6o99UZQj/HccKWA23XWuoC/JK4HjoAaSmW90eV/o8tDvFgSZ0Zw/nRtuFcsdNv8U2zK42qOMfA15Yhc9lBWSMU3F658JC2H3XcTRYtdIwF0C9Yhd+fXmfugrjE6e4v5TBesfGv6kGGU4Ju5WAzxPZfxvFRuC4K9trtRp/l//wgabB1v1VmOp3DSfT5gQv5f5/tpfyJFW8IzZCNvsYOUcdkecwdK/+b0pyhUuyYFS/xzBZbc/RuMoyOdfOeKHxp183DXP6Pto/GlTVju4MqfJlJwBY9xLJrZKTnPzEGIGvux5GhT76gNV5m54ZNnXTwMrYvsM0JNcbC79eh0aC1vCeiPIlTt5S1Fx0uwfdVFZ17FLsEoEZv9Mi4KVaYzLagh7ieagG0Irl0fNSzrm5UtfW8GaQ4gpbcChkE7XjgdXq+MkJi2w+YnVyYdis4DIp74lSS5wk+GN2nqueQw2R0sW09ijLaQprfycPPB+e6Sc9vL5aoyuPa1Dyc0t7dlE1tnkCCR5vdjCLs7w++wQm634fFbBQZev48vBlku7Ph15Uq3Umb0irK+N8DoiA5qdSmwIw0hdS6ssdt2gtfVBjvxJc/HC5vdicT5ZLoD1+aNBRiAGsvVIPpggSXkwWLidQYnP274oxDWBgCTgwF85L44m5yYbzsVSmJNIYF8oB+CkAmvyIdO482x5ij0v6Umw2cH06D2g7pxOGiPjv517FWsLGmVEp+LNTh8c+TO5IpvBzt/RTHrl4BuyE2itaEXFM5CE9h+r+xY8EOMYNX4Ln2nnBM/b2r84WqCJB/dusFNOmKlmLOblRG4B9wyoxD+EOvKi4/R96mbiC3cc25fg7zRpaXf4pp2kt40sXwoa2/OBudQiqzETyyKCCbo32onulhpijODF7JtHyKKZ3hh6r4tWgqx+Rz0+6Fycjf5bIfU2y/3+Ou2ym+TecBKkjP6lG4oRBSnmvGWBhKsrheXgPV2LdWsUKjuTGhGbMrIaoi1ScR5fpnTfC8sE8uXI1X0nCcZAFy2mtXkCIfOrsvM+KIn0zU5v5gSiPMZ9Lq40P5CJ/8uwZcPju3nX/JOZ5Oft7bBOawBPiGeRNobKbas7M6KLXkYbREupDU0pGVjhhq9WXR11KE7bNYMHn+LKebHJO707Glv7gW0oN1UCW9mx89qm9Cn8wrRFhoapxOSrWYZGyNbB8tAkQGasWu/FZGF92XGZRJ412Em62lqYSVBo4ZDN57/3fJrHBxWfjnOfszydHch/ErgJxvDt8SQwTY6/af85gZmIkLm71ux8hm6V8/+AgwWzREocLBNojMw3eIKL0v2CV1o66jDluGTwjQiJVremA7VEy4erOhc5LPfJmW4bKcFlOyk/WA9ZYtS5nuoWZEweY2Uz8YDF42qIYUFsfVXPt6f0iG/jCns6j69fMykf44RLXDIVPHPk9rDXsbm8P3lzvDmEHXytW4PUQQm4SBjjDRa15imhwnxGAVRZY4x7wkWesr53hvtV9l6BDRpYb5TE5d3DotBa/Unzv+0uBE0DtrLMcHOv/Eqhg9Bg0fPG4MJ2L2wa9qDtK2zGuwpWwCh77gJNqn+0Z1y4/7VCaic7oiyGFoBjHUv/frAjW4ZZc6uO35sOE6rgcZwVO83bY2K7DjsXxBTT7n8Oe8zyvFr9aCU+UEw3gbUdLYhg5SV5/Y/qxdqbn27ad9NiWM08M5+HPQCZmrdJHrTOCOp0Ru8UDK/sBumtX/KRY3h8tZdKmllW8z/Qdi4Vdjhn+cZz1KRmHd8Tljv8X94y+TlFECzWc66X9sfuiX8IRb5xGOHAkQ/Ics/OO7LaSfr5GY0YnvdP3MjxJxHnfhYNwRML4bQDO/WVpb7E5LyxtH8rNdtMiNSms7dRGu1geCxEH7ht6ull63eZT8qqV8R4m3tQKeRuqiehu0qwwif3RMS0YfzwKOleGg7NJxY7exMaqDaZjECpJSxwrSiKN9shtI162WNytC5tTRGBiOiRFFfYMKTA7JMRYDmNs5R3z6hkCVMM6sjtjE90ZBGwTlH6xeARqt5DCN5oTAaerVDfJyHmOiEOuH+DNb1lv1eSQno2EhJaymXLrwlB2CXnzCfBQmF5UyI3OsLntA+Q00U0z8J9KHNVzTNyp2ex3wQuCC5gtlNiZrD7sAlq6cqbvF3wx608H0B1ioJPhour9HC1be71AMfEmLvhWtTl5sTzy/ynzy+A3/PP+U6RRrhWB+/NwB+hQZPviux8qZ/LtA9PaSUcw99Yvxgk7qtkC69P0gxfvxK6jljtRiJqg52fOF2H8198f8EvqHz3DG2+l+64YxIvHEcKTPHnFbiPWzvSEL7Rcs4mtmZq/TzTtDBE16JZjpmV+7nF2F3X4M8wOGuyev9Xw809XAzagibF6/M3DeGtRqH1aV6CaolCNtaJz3mhkkQHcfkQE1UZXAm/IPTctoyFk5GWLvwq9LLV0sKSmQREZYaFudQjmOhawi7ShE172Fi9zYoAA7yOMYG9qge6j4ny4JgEIs/j6D9PHdV/9w2SR+TeqyQP420DZjtgZ4ap3B67bsKRksFNMQ+BMjuYpsgMrUyMLvKlpKsxopKSyqJ4BtJycSRc1h/OBQwKU2fYIvkRBZDAELvXSfiKmB0JUvtN2FmvDRDGtSMUuQ/odeWwUCRJYnjzk4AmVQZ9bRiB15VVECnIvbY3Ty7wFw//DAjrf5m3l/CNXpQJQwe4jEUKOKm9zJVnSe5/cXDJK77lmnw1+K7JVFZpMPBsr6zdUGRpstchjAPo5X3BHIPpjrWNfMdFRt5s6RuU9wTuIloC4Jq3XZzqCooLzKmd9TlqUcdXS1x9bBjKkM6J0VOFcyMzFvZaHPJlvccQIHv1Abpm0H61Wbu3NK4FVJt+aL3lo0Apb42Va0CCPEgKK65ZqFkFjtAoSMnAv8HJQulmntjkd9GxoRyy5Va15kl2jOIwhzFNdmFr8qxC4yzi607c8uOxz9jcl06vihIAB/Y2JznkLXC6htv+HKRQ52H4U0oreZ4tv/HHUCNnpNoZ8CCWfPALefVDQpJ17dS7RzMkr2RI1gvx62xr7TOf5pui11cgITe7/B+DWFDz60O3hL4u9HWgW0M3QVmLr6lj41fgebtBrgtTzL+aolPj3u9/TQTC1qEtHBjxXWXYXPPfAAR/7wh5M4R7U4R+T2jf94Z2vne04A+q+0Kf4OPQs7v/HqF5PWSdZxTmhe1iukJbjdhAcyKbte9znC03n//9mn/WItf4o80+emz+8sYxqTj6jN/K5ZzIOT5tYrGm2JQJscqzI7o5RRCE1epvpZJSNVcSbNeynAKwG9tSZqJm+pDSuyXyGrURPr2qeQ6PH/IDX0uK6T3+SVlYp47klENXJ8RhrAgscgDs9lgkLbmEPxRo48jfVk2UecyEVVP4KrItOiLqeJ3bydc6R1CrDVORGZaHPw/lYQmvRxxIWEGTNABRb9bpRtd473oYGEdnKqC9+tGc3FcYVwT9QACmG3kAWF+jxzDdtQlNL/UtchTnvcl1uIi3XhbBy9yEundzzTxAslslwUWFua/oNQz7o8eCWBE2IM9k6a6myJ7JcJQ4GnMEs/F5C1CxVVDwgh4AsT9J8O6Mdca73iBW/jLmaAaq9UHoaC10RbTm69H2CKKOUF4JdXQR4GynCfGlOUqHk1XpAk2hrPHI13tjcj3EwzOM0Wfd09Eejk+2VJwFRzB918ubvUT08AOVC/3tt+cXgKc7h/hvSs3eHFs627qxunkgSkpveRzxOjow8B6mW9uVdUMW78K2hTVo/NX9SIdHdWzaDKuFFBoCBDPTyUCA1aesmHYzCr6up6neVjmy70OMXe24TgOmhsPijK4F9nfZ+ZfTSwwe6JOOhODfJUeD7bhBIXbDmJZ6IdGGR8Sa6sapfQe/94CYFApT84YL5Qq8ntQbQRp1TWjSwRo57ZvAmlp3vmoVRTaSrG9C56RsNvEoJ4shgtU9Eko9VeT0hDgYZ/NRYdezxVg8H5zwzMDZxPRMMODW66OTK5FA0GESjR0mO+1DjE2r/sCSiq3lUqHxEjYHzNRsvGSNlX8W/xQRjdDcw/PRT8+3HM2deF8cNVnrkn5gtrYtOpFNsJbn8iivBJ+gfDw1zuMk/l8UY/g44U3wnl1wnfSWaxOyBEfy8WjCm2COy3gIJLtBEL3wcmLCm2CS4DmqPSGedmQy6j1xxC0S/k3Asz7DsgnqkP6zmOXLhPC5qucOMXM86zELh0XFonTpD6hSuXriEiLJ8Rtpzut/AYumUQIB78qzE/4sHs44+AcxIMCKHusbrGBhlwNGrWrB5kyDVBFjg2nxZCYDnB3eT/g3BWN/D0P/EAx/DxgZKzMn4DQvY+1HL38nwNkj2PKFfdBIIzujvoqZQWH8XKtgQwnmdcQp2W0I8CIedhvPfT5UqF/PGQZWkB6Dk5AgePxz72+q/E/5rFjsjLxoaqBt7cBlkNv0qPbKx/XRehw6/HKH68FwbgrP8TYob4GqD7rI0FOItVcCwHD0yf6iB4muOkQhf7neDoAaGsn8MszicdwhXH8ApOwtE9OeLGX7oPexN6FomTPfXgvbzuQ+xxCEMo27W9zH7AzFama67hPczdPW351y2bm9eQUG7dQ6u45agRmTHtoazUjOBpns4v/E6hHlZoXFhslyxayDWc+wffihmMf9JM2SCU2TEmWRmYx2haVKLCTlNlF7COU797STCJCD2S8MFkZrj6O1gzNIfoEjXONuVae60bgwmRrqKMw6N5HCMn5HeB9+07GzALpdRsBnz1IDAguGrj4QstqjDZznw1T0yjOXipcbI42gndxXnYGwe7Nu3wPqYg/edC9BbmMiFl1MRhIrIPUwAJL+sofhyKK5srlzZFtIsN4aaWVA3UBUEwK35PSVrtj1lLd/bQP9VaQO9pLVhtO0ZH3x6Asha2qbNPJ3yPtRkRH6VfIXmOyVpp8dAX6rqn2VPKYX/VhmTUuYtsW94jaWtzZFUwW0E0/hwBd3QpL/J812Hq12YAYpMt7Ep7JtnJVwhPcup2vi3EY9BusNAyvGE7m/nJGBUovasb/ccEEgoHXgPE7XF9981017UUcZ+/PGGIC7I/sBAJT+VxqezJU+BFsmUkC0zwj5oniDUb5F9VouYpN0nxuXcjxY5e6uYDywIkaB5jyJP0Lc9Sj9RMoNYrH1cdc/AWsbj+jvz7Ycy8OpyH2dBNsznJzG7hApZSBQr9wl5NefYTvmct59rBBjk3uKBP2YdrU3AejJPmO66asB5nuEmNQ0h3BHCbjhxFSx4awyrerpag/OonIPR0rWIYgentsc5t1934SRRjvYCwIs1rS9vyffcI/T5Z95K+estTsNfIccSlr6UWVoyarhs4QJahnzYUa0qYC+VfZZwCSPrRM/qyOV9npaJbNbZVChTRw63ceipR4RZ87iPV6BXVQ4SaVgkCh9mSgLT11zYtxsAab+Oi1R1TrLtduKilFAO82Tc3NYiFUzSpqC2hOeDxkHJ0T6W0MNig7AuivO2QLBFym33AAsppm+4XDGboITswVTX3oSpLu9O9XzNJHPOPahZzkPBTV/+sv7uyAHPtYuIdMcthJXqdwJtv1rQkDtODj7ZkWR2klxIyHOci09Ad2K7wN6oK/D7PhZTwoPvteB3v99aroD4QOwLrWJAHdlQvxD15Fa+A3aNH3Mbg9wbZDsEbsfS4mRKw/SdOe5bESSrbQGnTDV0LC/4r5nlsndDJFqnNGUOlxxb5LnbeK71X2SMeN7+veaO8sbunWguEW4jGq0LYRVRjCSHaX58m1jYdnO9BbCG7e/V/YzOWD8EV9iMy+iVbhFGqdV8q9ZA9M5XRKK9UFHaVxb1tF3mzvbQ55MpgifBa47TxSiA4nWU1aj2mWW5PMxZ9g+4hSnrWNVnGUXNemwIkXBM5jlTKrmnZbafLDHSFtcw5yvfWXGvHaP1jWT3jXgnHi6hdD2kH7srhAPau03jAPv0fXeeDwit8emwJo8mCsFO9aqYmxwzaXaGA1ETzKlJjF1iqxEkvpoukNoViVWbzhueewwyR4cny1oG/S/+iM2LZwjTT3WAGn1PF6OAqpNtPo4jMEk5mQlNYLU4ZrWdf0fxF+QcOeaqUIlqPDYU3T7ccZWhNoWxzbPgWq2pOXjL+Gtr6FFNteffTybK/qsjPLuLWmDkH492tlgCWZkhRizsj4lcd2cZaZOLIOWGW7G8QJ7sWN3nG/lkI/VJqebKKMMCO2Z/4VhBpEl2o2OyLW4LYUIS8SlNcMwiK8eYuYBqFfsPX9rUZJccolX8X0DwRhvVM1xRsobPebdBKIbKFC3wse9YZ55N+fINcYu4YbgSrFQ9Cxm43tkAfcq7C1S0WEemU1Ut0iXDql09ksIJT12myU9Ikl92VCL3bdIDYVznKCmrnGWdzLmvdNLm1Ap/1hBSUDrCRm3mmcN9IOAgXa2HXpo/4hWItkSqWnxc0k0pfxzhrmuTXJZK18OPv8Bfm/tnmndGad4Kv559QJVTZxxAqI4xOJq25jf/t6Q66eT3Q0B+GL0xzPI8k5bILqJ8m0GoHndqeJeiHNan4YTCUDYuWklMgPr9/6PFlwz4y+PkqX9ryVHu/jPGdnNdr9zqQXnSEAu4r5EBgbY6hpZmxjiajOtKaFPL3la+fZCnFpud7ACti77ujcJmNqZQNipDJAHQPUUPkBTwz64m5BMG0wbp50SiCQzWklkkSBGmJ1QdJV/H6JRluCqLTmx5uGFtUx3j/SfOCMDfHtJPZDCxcqWN85kXWrFU6y1rxdbB8gZjC7bR6EBaar9NPRtBsBfxDSL/ys3w/Xeh/Ynzf7CiMby53zO4Xa9b5/lxo5jMVO3j+ayKtzuMhC/V7kAHN3w93YHujdOv0iVs/sULm+QhwASPVg2dncDa83LUDKA9Mq1hY2xZ99ITDA7vEybh5uOzVPWRPpU/dDRciUuiBz08NRGmUbJ7PNlifpRaGfpP5fvSUN0AjI1UftgG8Pu983Wg9w9CTDlYysHwW2Ryg8kwEc7I0HfAe6sKZSAVUvZoCWquMvS0hw8AmjrlmwwctBbRSZ7ZhsFjryLFqaPekFzRL9ostf3UPRZ2LN+qYSAIMIYfGO7MShhsyun81umib/5eG4LjKJjK+o9opuPqHxptql7Mu90lwg+OrVJXKoEUP/GO6cEF0dzzPaD6faCiBuDF9kxFb+VJlJFq6a7jxikueg3Z2f2N9THyG3hajGy7omnVwhexuYJXcyHzFYxRqnHUX1fp9x9Q9IEZJ2qKVWO9LrySeQQF01GfQhrbcRvneoOJdlo6r2Tx2JdRHtEa05kZKsWHaNwYgcSwcLfClEL/DxL8+D1Yol+VM5EskIshnZsNZHkGR95SZ+R4rt2W4XC5TOb1d9b1l7vjoZUgMzGMRBZ0srfTXnkSDIPaLpizT1R0Bo6zOTuqNwLd2k+5XqRrrVDHf94N4UJ9kdV7bTcz1lEtQV3qVpD0FhFGW/9GpezHpuBxBahQGuywonLPVmonVJi/S2X6DVPw8pXKSVSG9s0j82iDjONUdxJmouu8D4sq2vxSkOzdQQe1ShOMb/ZWuxBQzlWKc5b4gBShwuK+HrdzYGapDxxTXYTYl8W4UtVAxDgq9QPPH9baYRNcBe+CBqmfLVbmpx28ez19i1IlGI6A44Id61XkPIw+MMtxzSRzrPXqvoKrR2enIxVkeFLJYgqSwrREDHudmmXMATYPBGu1YEw28GEirVL7r9b+QA6Lj2nTaEAXhqnua9eokGPB6BeefAxig9+tdaHfGYfRIzSw075VMP8gVc1h+60Lj/EQYiVmOhwVmgIsbUp593F4yd0jKGTaSC0v0Nvtlb6abXLxkTY99cL9yIyd459Ibe3Gdq55Xf/HoK6lD+w3WoHRfaC8it/uvafBC+iRkEjrnZyBkGmr7P4VV/c+8F3XbaK3C4V8/bPA2NftUGtN1KNOLzmYXgqAIy7SkiVlwBQ9YJhc0+lOqACNeXxD4vI1HMrt/awyG/32KCRq0DUih7TipLfgPP8rXXNXqJ3X9PxEi3qo5xGWdKOOEPihq9Bo/Dz7HGF/5qztZ0ZFLpVOQWoQxU7sYIK8Cz1oJ16TUcBIbPcpq75pO7Vezdvb366yenmp1s73eR0C6ebnV6lt9qKg9y5u5q845WiRd1ah8+hFqWWq4vJ+pH08nNRZ+O0trzf+M4qEUbxKRblBg3rMZK4UU5Iy6Kj8RrLudSxzfmhYeuYpFWPYBIgRh3aJbra+h/7w1Ow3fIosY1zhdnYGL71wfFDB/fGgV6YFHLu5I+C3+cdE38iLRwuQBIwjh963hMANTH9O8gC0nV1pE+60ezLjSkpl3CaqiZHk9RSNJ+49bJHeLESahH4Jb2bx2dvNlcSTLcbUFD1/L0Q9MsbtLFj9TShAJuxdkjUPniqNaIBsg8u3wN0HkbpKxEv1AdqXsVjCYR5g4r8A9H0YkWHPtF7cB4A3amYfazpWwR1MmAO+sBLNrMSYELahl8m71qr/hKD82P7IGiFcu0ib8IRoL2XOCmkSNbUWvcteNCCDRaYzEmraO2W09qnltq6mIXrkOGYFKj6N6t7r752ypAnei41fxLb+6rXJWXATB2XOhYeZ/HErxqAmNt0kiWw9YAj0f4+N/fZPoztRE7bthjIQoMogdqcMN/G0yT4WWiDa0LK69AEihkhWIMjgjshoHNmCxY4abHjygLmWT5Oyyw59SZblpk/sQMR+y4ORLIppHNe6+VaGrUqSqcVwkTaxrR8rLiHCYpukNiUJarZcAiCPDUBNNPLkqJdQNvD6TasBqYXBPghVCa9IqwlTl7mdqwk/CDD6+nok3LdJPS92/fYFJNDbcFXEmj7E5h55diEaTTl2ynqSFhjjaMEu/BNkDu6FE/XzE/2czlfdX4EemvUhjEj6fSh9wLRxB4wB33g5V8dJegx8EDkGN0PUCN9AiouLgiJkuiDMHf2AYS0+JiUUD4AkBn5uFkM36qV82HP1k8F80cI8i6/o76U9WcBNOT96OVqi3azDjHaMkpwYtSTiHkBwPt/nN2e+Jwm20tSTWr8JQDwJ+Vuox+BghIQDVNuhWDEQfv43NYKrI0xcWXH3QhwnU39UBzFHuws1bMjJaisODiPAf8w/nTNsgSjeLeStlb8v1TVOmM7sWOjH5WcsWvjx8hXuhlnox/UwwkjBA0g+w0dtAS4wicOzG6vmOUfzhu7rAg5DpQBqrPphlVFJENmZ1GCvuvXDapFj/aMeayS7xUpybErEzg5yqHt04SqOnV0tskntiRil7FSOKZlKNaNxLjm6hp/lHpOcw9kmK949Vy+z8R0lOSeESkADX6K2/8qyHJeNHLw3KPeGnVpMc9reJUk7rBC3Gr7K3asaUaz7Ru4fEXgBWyL1Z1FP9o8lYWPODjtMpGvk4jTc/p+nwYUHGvm4zG1O1gtQwbyKNHxHXTy1Hi4i3qccIduD4XUX6DQ5SPh9587Ko5iGD4Rqca8/lW6KSQSCXIdW60nb1nEiBgSUDo8yMsYKQtqb2B1jcmQOF5oeYzVxx9yL06LETm2jRxzOHyRgkWtj+EBcHdvxsj43cwQeuxDcXdR9VGdwtHjbjCoXtyRRFFN3bIquyDEn6oxmS0iONhl6pP8Y2aGDHLfgYMXXEHKav3oHYp4TsHnhJKLYPFF5pmeD2ytZD6139hdbZRvJG90rz/vfQ0FDoo7sEHfV+hgi8nJnytTdA/gtW9ubcaq2VmuyUSQVrG8Uetcx4bPAh0yDcfUB6XEm/ppkYNA27cO01Pc0VFIrswbzmCjUet9Qok/HQgK9vHnrYcz+9CjFhkTMxQk3hoFCNY1YFOZjUx8lRnHxDGZVWy8ECt16pt7F0/mEzDwABnNSHdDxX80HO5KooQL07LBc3mQGaIv/Ahil8vjTh71lVByj/poOA3oUccsW2LGIdM5jcxiqU3PdRqLCJ0W9wUKEZurF0njErj06bOcfkiMB8eeUII1ruw8+SJJHZ9GMzRjfVPXR+/FmFfdipoB68vSp1jwks1dsJPNX4ll65OAWEbUU/okpFfxwrmBp/hqxPIAQrhLA6qlmII7fiEDXiDaJt7TG2ecfRotDdAX+O5heBnFrU4XFESIlwO6cHvsVigG9b7gzZE1+hRoOT429ePkTl/JYo2GW/tO2JoFe13d1aGSYSvM3irRVb3q/YKAQ/QKshWNoQY3UPpbjmDIf50oK+MU4oUi5AexC4YZwVUcA6/y7Sd0QXXKVeKh7K5BEjJp4IXsCWMWg+px2CIdDzs4YVc/At5lUpXB9zGHxz1xx6YvFi7EpP8K9XXTKX2412ysfPu+kQ73zi9oml72k7vGhNADbDkLqeqVSuLS8u0WiiGZeeK05ZsoHuQwMdCKgJgtBc/Rer3AboY2RWwTuiwHOfsFEfFloO1uTwR9Dabz0g6ie6NpuR/+GHdrBTYmxVRT7lNj4c9BC97cbTXZIrrFBTASQ19J1YEuz6GjUA7Jy3jVilP+a6deo2Dzb8zV2D3e9X6DJbkqKCth48MgcWyrh1APsCVuQ31tYxswqTzwU5VB+7yOoVYnZQomCgObPIDOOfhIlfq8NSTrMj5Pqdatigf8/C4vZnU24tVKTn5W83xoe56+1geIZ1kd+VG/eRtFfNjPncE6MlMG3j6iIqM39AZSZzTaOfGqjDdjiJSTB6oYl9clnlu4IZbo8Ji1iFxlyREClcPsbjICFvcUyZR/63P44AG/ATLYbOIbJND8sxmIJjMo0s9oYh+p0kzEUDQrR85aMr+yQKoDuWtQLzJRVEKfmLsV53oumgpThka7iTBTT/626aRyrF81uEf6sONEHHAo8OU0AXQ0mPb2Cutg8VJMxWPTnWKHRazCk1Px9gQ4x8nMsnooTJHuAij0Tjm8OQnwxvBe8yL7Kt6kt30YzETGsylTF7lCPV9uvxaegi9I8RaVKMfxsEQVKNtbWDw7HtGtn8NG8rKLk/EborDBLkgdU9D/Pb2/V2WHyXJ7+eh5tRmpfZT97cyjDUwh/igfGRD8a0yfSWzpR1he2TxKb2009XV1ZAHCHbnylQPrhdciDv+b4aWD7a8iL258tFTnyuKkE1VbA2Tqss43bCoHsp9e6KDF3u8Hrt7WssmA8urYDV7C5IPIzJhk5muAcF0ng0KTa3jMyNZGI84B3jx08WMSrjDYqWgPlke4JTbBKzujPSF9dNVfHPKafJunl1tbZpLErayO2mZK1tvLHwfW8Qj1VGL/VvbGmRHHExhPysklr8IeIPgQOpnscj9MjVEPjlwHE5nXcRuA4UjF20VEwldBqZZ2qAcxa+tBUvW7CjpumR8h5cPNVTut0vEK74y1AzfObVf09mtCZVcoexBugAw2/81FfsNOhPEAzVPERyVlkA8vI0eL9UoR5JJsqaStUZ1LOc1n6obLKSaewanwK/wXMgX1ao74/x48214MH0tk7BqRPNsYTkbs4aIRTm3XCqjsizEtrxROuSVbpkFXBLHkKy+OSXUXcOCSN7RPY+PGVPTuccxIWLMTS1Xc5LjgneQqo8bihMDgwbOa2x22dRO3+TiX3OxTrBt+uKMvrNiiSO5Ex+TLotkNOGHi+r/7ksGE1qJfKW1OIB2gRUF9995FCihsyj4+RrNojVhlAmwIsS4HT49uWY1hi2T4/4B2yWtMCCBtyWKEq1vIFhXY63DAoDdhHxluOqQKAK2Ol5I9FVz7rg1VvA7tof6oqQkZzAigz50zAy0QM+FS1mdhHCiMcvfPoDfdUZlZTsZCgp0CfSDxSKelXmNsuyYLNcg91AAZg772JpbLnSrXsFWJahFnvt+bW2TXB3m4psv/xoQ9PvJOVeFVqq2iYURjoYVaNjxRSf7c1wWDtmYRLdWydI+2ZBBoQ7LiSr3ThNjAm2MBmjo6S/3OLtVxbN87nRL2jkTA3KE3mt/KKZh8PA53XLVt2qXBD59v8VOiC1O4x933DI2WEghNVg7XojUrSfnCDlzzgD6DRFxdJK011/fdd7yvmGekMEywmk0qZ3zsDXfgiAbVskeEwXd3p56NWDLgxbbwLxffBDsA4QE3tv2dXxSiXkH+La2LAMKaGy5BWrAyjCu8hvgp8PDqyym639npZy4VsKctzKIHqPVqf1C1VhjFvp0F0lzOiVr1pS88rwzxXq32y3ULncfpKhuAhOpTO6S/fo6+k3kVtXgopv1fyQwJfm1VIy1V61d/932BGWcoA3BDmI5k/LCyiDHsPVZ2xz/BHNeiOf7+Ge26XnJsNwPAybpDvUa8vO98qby9cbeh/oyWJltT2ilmNfyt2b2mvxPLRx6qPTIPHbS3/gRA5KFCjJ5JqkoTcVTnaCuenv7vUHQTyrJe29lPA+wBexuyecOcVtyNlwftm/QaqKcZFcWVpOac1bytybdCNc+G3yjeR85mhptpuKqcBgn+lXrlSXxijO7zEtBPqCVNX3vznmnF8BycCIxGVEMPEhgDQZGthHTKgnqG+A///MrfuvIbXAVOBu9qD8gG9taPUmRQtWaaqiX0GIEWTLvetIkzPUyD4T1MDweaxIX7ptUCLKGa5ub9xzfrI7sJTBurFC/FghqEYo81Wao2P3F+dY3KsEBeljIEhA3xTq9w/bfjN+vHynXnSpOhW45P9WzRLHnYTwD9BkbeBuCZf2qxbQxCPz5gwYUxhXi3M+JQ43rR9c3sbpISXg+3skJbgCzGNo7+Z7B59eWIONfeSrLvnu+8pRcSv4nMBVVggYwoy8KWyk0rQyNqhyyO5TxF5HRtbwqLms4qFt4jr/xCc1T30Z6aaBHaRumE6a2ch11eqtuK8AgiUfVae/mdvcPLqaK9V+uzzy98G1nLg/yIblK8lXKlttKXRcE0sxsdg7mV5WTytYx5eKRbz7g3h2LRg4oTY5/1sdExVfNh8reCDyxnI72qK75PkmoYY1tqtQ3m+7yxrCQgpcLSHfw3REP0fXrZ8z0JJ9ZgFmaziHgaSxw+Ix9JpH+eIxXWp/EJUbwBvjudA7LptTl7jcO4lfCnOsTG6DHgnsqXngcyiBfKonpQfxRG8iHzhHPybEVRncaZcqFcGieH8/1COEtBMaDGXDJf5/g6J3hNKgT/PuAW0s3T2J8Zpv3wDRB4PcJRMr0oHexiJ0jVgN3t+dxULowapqwxJZBMA/aaVC2jwTFj2FsnBJcUoktvxpuLYeXDmcxJke8vLuUfct9OiTgW5UZpqYuNXTZvWRtnRlDjZ8TdcuqNcLl/ryODzmYrW4GXBckM4ZaHXOP7vwXc0DdaPJ+9//USi/MdNeGxFvuYeeA2O2Xam/j2FBJIcT+3i6UYWU9d9+b1bp3atoX/e6Nm8Q3x6Uw1cBlw6cRjdSBk9ABcNtMV+M5Ad/Pm94AYJa7T+BopYvKao4ue7O1IT3/TI6muq9epVCFvacO+6HcD+dWNeRv/IzP7ZYSN0WjLBqYyGKvdWTbNQ/fpG/dIGQ9NNdQzwSAhnplVCe2y2Rn+bNAcPdHqxxiMkm3d9HGf2ZDhKTaDQjlxHgxuu9V8XzojaYZAb+49mCNH/Q4A7VgkTl6ZYjUrp1osfhqFRHK3H1QGnp6DH16POITGo5ilGIyNmFPJRcUIY2jPA1/YOdUEGWh5HrRSma0q92WhqLyPVpoVyntX96sgE+/AqjKg9xxErF5nn4K9ykNUs6fBnHO95wV8WmEIsNookhk9sDOG957HP3L5ZC8smYIMD0eeH9ACUKbsxrllwG92L8VPWcsX3PkMcmGvBCEZLY7A4KHUVwnMlsH/5dVAss5AEtmhw4nWqWg7nbUbbD+lXrJoog432rzEF/jENdPu0ZK9qhoUM6apkyfWeLVnVsxOTd4UKZCSFGN2hO/nBVrc/bk7AKnXAx1FRsATI+lYTB7s0ezj8ks53C0olurPjD2eSAbMED3McWFiOgLoaNvK9/xHajuStvvHbBaXTrKyV2n0raDaJfipytbNwC4VDoTreARU9hJiQtXC4MNGYSKkdYpXJEn2CF0OF/F1+leum9ymWfMc+Jpv5uUT5TOyfTb21W9/JSa/pjL5lYnyhbMUczvmWsvWBDdNpfzwaq7MCqoz7YwFQPRULGLuExr+wxpnbvyL95yjkCaWis8NGsAi1lVi8XqVIiEETT3K0sYGwK+FALtrfEJws9g9tITVip3mmjcRsp4MpF0by9bJBpK86zMcucd31WKDQbI8727FqArOhvOmI4x6mtuqjBN+1jrrrNyEyas9pwA2tuCYPdeyj+/H71l2HcDkZoahhaAlg1yZTvfVcu5GAkSGB8cA3PT4fwq6ojjZeM0SqFx4J5SzP12pbQIi/y4d6Uov3ZgslPulpfzQcaHbcsZWtfmDqu8HJkYS1DKjD8hf7c8lyYL/w+9ds/z9jkQPmt6KIoEM7y1/W7VYvoGWrMv4v86GtSmUHUWXO3rf3T+S/2k5eW0FFS18CHR3HVVzWDZuQDfI7WYgjfsLgp6DRC4BqKdouvgkXE1M2ROzNuwrRdmAkHrdm9Kiayx1GMk2WvEzEjwCS/79vd0UqW7Y/Fg3An+E+/yub/ZNbz3PT0i34RCxBv9YkjazwtcsRGlczgZr6PgQ0RuLmB4zEg3Y4JkBy+CHJHbdM8wYzO8bKXCv8HOK2MPvNWNriM9nDySqy9ealRAFYkOijH3CskwkW1DFL/836La/19t5k9v3Pdzuk93yK2H1zpXMnLj5YDYnYnq2P0yC29ti6Hzi+XoMKvP593jHJMsxR67SjwQ3flKYTlBeqpSydthMetm9XMx44SaW1FXm2ODrcUmrRjJHbPkCSV1SCcFA011BAniJYnG8uoozE0BdZ2ZCYLuRWSTBu5WQ4/NuX7GV3CXO7HI1bt5zQbgIS9zef8I9ksrj/r3cNUh6ItYI+siMzff8IxLLzCvSNWkUYXlVmNBrztEFfTUUGXRhf25uoQsSKVI8lo+HjdLQ/SWFNycqFspQJkv5BK5AFzFW9hFNvkzxlh9Iye3ODcuzni/F+c+5V6U9z1M9BhelPl04E4WmmRR50SDAiOahvJfoqA5gxqm1r37yZbg/lLbnmQsHW4r3CBlXtDqXls5bUDhbiDyIb8JaM7ap6hNybeF9BxPE/NEtsv1nEQAvqAMLNkTZqJnncOGsqvMPEDY+tPxHIkD7LnbEZ5c6CTz/AVIUUVwYKbCGqf1np6XipOuAcH6S9PziJ+zi+lMdz66pgsD90eaZcpR2MksAw5pn6bYOWD+ecTi2oW2GQ5IELZVgEgyMdLETXPbEExC2R2mMMa4Ey9nTR7gs5JgP4YQ74nl4KXm9o/800itWckPqz0n1bcxrP5E5RRjOMK5bdbhGm3TtlQfS/I8baJ8fF2wwQkoj76JfLw/lcUCUAjRRnXST5TUVHpZvtwiQU6WESWEIpq/NO30G8qPjUfNm1QT67BV89gD1OO7tqO3o5YCwvVUMA0Sx3/wAcqzSi8pFBQfKOSlIJMCtV8ivxbIaXDy4fXBuhUvATt8ncaq/FvAt1Heik2bgEu0noX7Z/bQk8VvdDaw/Zl8rvv2H1Jcof/Pd40+yz8ouLz2+q1Ql/lbEEWTCe3E+C/umBCRDluXIiI+Go/cWP5xVWyeyVNTE9djySQxILsue5N9q9vjV6rv/6CYb2h4I36dZuBB95WF0Mr5bKGNa+yBEmsI5o7qM+5ijfxqilpJUoXuAJRR2/itPtVKLaXDdoJzHpBsQ3b0MkgFH1HhRGnXn0b+aSoTUCQXkJr5nkj58bsISgTs46QjiO0s7L8Q8ASJiX31jYuwDOM9mif6ed1IHUEOCO24fpk4xvaqfV0MeCobVBIK2aX7lCNOj2AUCQD7kxyKA9W3yCnw5loIUDyfzVeoTF5A5FxYBn8Op52T6A4rJUYjA2mWV7v3GPu+qtXE4nKJ/dIYGAzS/dtKYJl92+fz3o2llyhvuszx0c/s0L9vQcF+7WkrzvG145JpDnr+/pBqFerTmFt07Ec1nFTUst/HzX7pA2ffnSvvTnieh3zwtyMHG2rsm47fiOUvXeNLrfrAWAM4eYR9pQ9N/2ueZTjbzOtmU0Fbo9Pz5barcAoiCcAbv90LR6JBD0rldeIbN1BWM/UagiyJ0glsfxJSkxJi2PhpQ+TpgVAjzrt9BrYZE7lcgD3BzBq2mDPi8D3YHwE1O5IAKXyI+5bgtKa+WnqwQYHxAO58ZtmmuvRVEym8mEgdihDi7N0jekpAmKuYRYFvoqNBmWTwDgB6R7ijQTsU+PkzSfBDgR9YBPGxVPApcUIBODh1fCJMxnUtxG1IB+LZ5zf5LeGdoWz4FqvH1WYH6E8uKgEKEAyWMMSCeJU6EqBSn+DIsvIPJ1bShfAqipI2WiSGz0XoB+9N49Xrgh4GJjo/OCMKSDvDhhzpw9erwBbCm9wailu9TeF+0M7cAUTcfBXb2fXreiGetTARRYmwpE/IVIyan4V3uAK6oLtnmGIxSN9VvnGLJcyj67YNkE14NyIhBAn2B9G5SfX2q8HLJilK6Rw5/fCkJw+7SBYj6CttXP8oj1bvXSQJfIt2qnrGPysb4YW7yY72t7R1lA42Qty8m5m7DMOgmYcg3BgM17zDTTpwiRzGDBDEE2ab78I9V3cD0ILduVI5NikHnhOM490qa0HSx8420KrIaIBukwqfj/61+2quc1MiQHbQC1oCZvGSt0NSWg4+1OQ7yW5HUo0HF3iu3OPtE2k/D0ijGvEWoEKn34GmvI5eJQx5CIo/re8+Pa+Yax6UQOV3y55edS+cozznFdA19wfSCYGFa7OrSXNH4U4o8ucrNXVLkh4fwprl+coYHdu7pNv6meLbz3s5t50epQl299FuI0Es8fvIKRziqFs5x7WJbwAfkR/L7z1od/V5lvY4fZcLpwu+jrp0fp4NOGwQ+dm/6gPJ8ZVQwJ9q4G18aTcdYzK0Aat4DP1q+FIttIU21HVAEtkL8b8oS3tdv90VYK8tZ4hrw6Ucu/hzsgopIXG/LbwwNrwWkCY5F+KPHApk6rUzJhLMoIWGleGQgGrSVFmS6L2UifzfxGr7ZKonmzb0GsX1THaLR5FImQo4T0BHanzXoAMBQK1XyHMYahyCGfIT6HR5mOzUNZkKXag3EVWTHvYR9JjnP6bYcw9YrxptC/forUCdPdmHianXH2DGvVOVNMdpvd/DE1LZGOb8rJi7xUr/rDiQQdI8kqIIipu2ZJ/crLaHIhMA4GKDw3QbjxGQOHew7V5mrz8pGPMpitFFs2ZCsz7wG1f7tC+HNsWrb1hgS9LRm40Ueyi9HGxDRDKcaxA0pozMJvHuzoFuI+D2IRHpFoK2AAQES6yptOGsSuJMUG5oDxnVL02VcLmW86eI9VcU+6xGhyVhg2uqhsrmmR727jpqxlPiQFPwoH025BaWmVN5Z1878RMlyYuaP3WIfz5VLeMEPcBL3i4te9wRNKM93ee/OP8CPDE9bEcKs4Hd/FyeyPcoJzz6vkqqVlun8eKO8/+vclGa4NFa1gekdsQbgvcC06e2zvbqHi9wA9VvMG0+p5oTYY/O+ktQAPR8VrMkb6PMMGPdk6ea/B6s8IcEg4nrfg8RxRKnWDFZ2SBod+wpvg506OF0vZMOjORUCqF7yo5ayka+itrUzz1gjdqMQXh+cxAsYBVHXdy2RL8fjdO+YhcOouyMz1gNyxnbNgNrkStwKJjLOTCj8xo2M/Tgh2yg+Gt6plJfxf6QwBujOy+1gT/0heSNDtJzVBMbyg3Knj2Obh/9y9u/gO0MaBRYuO9Ku9W078XASYB2GcIu3z8FZp4LrKlXADLCWtexExyc5TAMmTpCfFfmCtQMCPt0zM5aUGIIW8mROxN2WScJB3iYIyeELST5lff4DENmH/cJBS3Kc0TnUVUGzOdMMpJHtzany3pRhAP0NgaOxHMhTggCN8q1w2+RsP1infRWcsJ3TO/qQpSWKgHqk3sCEtVEYXE7rgQegjNpZjnVUDWhJ1BNq2CzXOZEDyR2IKqH4jJF5OwBArI98a2H3ol4rKvJ2NG1jHU/UzrgVNyPGN+8IKsvRWWA0WTzyilSwQkyOutvCZFuggKCueepyXa4KlF6DYE/DWCUjqKF8B9gqWcRzy46xlGN6Qc/7nA8jtW/l0f+4zJS+AjHM3Q/wrBuWdlwD0xdw71bn8FoCIHiANAONcS2nIw7MaTopRZ62FsBd2keU8x14zhfeWpxrTeJR/ujih4cN90vSigKip42YKBygViUjO6puIRAD36I79DpuWO60apmVX3oZ6fwHlwconxVzEh9zUGwkSY+7E5H0Lkwvgpge5hqSlf611Bs/EZuCSOC5qXJNym0sbhT6xk7Jm97cEUb+E6j2fPhuXh1nB0r+yZhlkpSmWSXYURYl6lgLPWe4d7gJqRXNhmyiJLi2tVt811GWIFAyc/JsN2yOhH3WUSgBA+vc3CGdZXq49TFWUQy3khHRaKLbMcwJi4bKzsVWiXWl7Po93jy3GihWpXLWzIK42WmkJ2VmL8hyE88cGSXZpai2T7/UUBCIHIYdqzZdj3ki0sjaMWtdbmlmzWJEgV2obM7xgKY91Z40dR3DgVi9Zw3mc/Yw/TGhNSSaHnUbcs93AFyYH0F4V98zyOQ/PlEyXRPyHxcrJQO0OuZa9XJorRfnGGSAz/tYVTwVmHJAuUkwVRRDOmkWiyAKhEdcNQzTRPaaCEnZAcb3QDbkiOvpB/gXfe+V3EmMTHrSOUR48H/EXRUF3V3NESwbRIQkGkCiPEK376ms4jHOB+1gk0Biwq2siecyf7pKq1X5i755NiIR7mZ08IHOoRQQQLlNL9W+Ull1rSVpymn3C10stdFS/WrhdCZSjDi6B3q7vad8PQeBNotX0ijAL9BcQpFeWh/50b5RqNp2vZ8o0Y5j/wsFNLn8Kx/CDJrp8rUDZY4Mp3FBE6E90g0doHusLZqPRydMEwD1X5gbtbH02PUNJOwvmwmHLHYRiGZ8kL6aG+mOFfIPPqcEeSvDFC0440bcqlooiisZTiv3d9nLokDUFjOiUsy2Lg+gsuJju4+463bUFmX5fl+2+fNTlyYB7FyNCTeS5ujJG6T+zDcslJtZ5W2Y+PufgKcfe1adM9Ebnt+qx9qC7AhC9NN6Vuhx7UVHi2ZHTuuX2oqH15eBS8BJDmuQ2SMPzwBgrJEB2F09eR2Yq6ufciKzDXIvTMZ+83RJuEEPvrVBdKDfPl0Q8oUlOykid6r8ruFf7yZJxdrKWaC2UffIB9mxP05tHa4c53ScM9T0Bv2/9RnQ1zRj1gVmbA37fpw9q4eTqOigvaYB1h0JKrwq9BcdVnbHpSzJVkafA+MA87kwDhHCpyTQvsZpieZd0fj8BThj/cKmY21zOerv+hj80DnwdYuSsq7DL1yTyntCgWqn3wwk6V/1GJ/wczWj+WhO3Nvhkc9bAt0s9eG1LLqAoaMNUp2YLpgdLXqek/lax+4nERKkorRI9J2EopBkHA46NKV9Cix2lcBYkcrxC8bBdlgc+1HgleoVv8M9d/Rd9mXX63jyCLDVimGs6TKAI1VLRfbPANphlu/yBWcSLt/u+x2R8IGKMQPWOfY4l3p2ytGiI4/9efprRxzMiJWz1OBGQKQiBUqD8vEVtUA6lDtB8qASSZj08IXevBKVs5Op9fHS5Fx6f09YnHXks+qFpDk5h1y599CqLFOlaWHyxNJrzvo9wxA4M575oGj2dSZ1FeKAqBCas0aTxrU1vZZWFYDsSuVq5VmXmNp8ErA2W48DqHvmejDA6wZtw+TxeW9N8F4QgnpHC4vPn2dcKTeofup5Wut8Y/P6pQHE047Pvklf1KcB3ztybTzgKtNYrd0wQrSC37zUiIiq9OTb3wqmX8EJUQqwAXowW4I+9SIQcLw+oj8tm0VYxzoXUe7PvtDmbJdbJMmtXGLsG2E2u3sL94fD2I7Vy36mp9UzpqUW+7R3bPi4chZ/Ll8JhHljpBZvycuJhiFOfEUN7FM4unPtZYYc1UNW+ko0tboV+EuJb7hePOrsB+PsmIwyoM64KZa9YgiQYYySwzA+2U8OvtSmX3l3/WpyVUBm6iEQaQl8fd4+4zy2VpWWQ7ORaY0zWncccXz2ZHgrUA3XFL9t5l2fme98Bq81s986w+9oRt/ZTF5z5v4AB+//Mc74nz/Hmar+s8CsR37bYK8P+DoDvfGBX3eQ1x/0jQ1OcHIPszkb2eNMweP4XGWh9OxeCq3M96AXF/h57vLFM+AdalZads7NcCjLt/rjjpJ4UB3U/kyPcX2aJHDUkw2lEUBDDzxzS1Zfy7GGo122RUCU1cdh5w0VFAe2WMFyOaKI0CJ9em6myvTmmMnqUKo5jl6P7T/BrRSbcZRMuA/TIKBH300yTLvHWqkUQg8rqHnKcB2E7kHjXY04TdDz8bKgTsSkFoBWRKcYkWak1GJFmxf7NTmJ3OjlxSFQLxcO0brlNryQq/GoNMLYprOiLlrROidoIL0cDEDndrV1ZQvepjxjHs+oGPmaORrOMLBAJAGmWrQEjuCQJ/XOqFYk21x3/CXHWpzPlftz7KzWFCOh/LD7YOjdViDWbbaXWz/p5M3EwkYDeTYttuzWe2DkUF8Pbq5KPZJhkumi9l3uXJVRQgNmfsY9JgLTPgXgizuHjwO4MoiEfph4AGnfRKkxTzDIhXwpzXqCcTyHE7J6EnCXnCFdS7KD7QEBqS0JyHzf3SrLqe+nORH25SQ7ehKvrdNwBMzbzIFzKXLyQToicRMeqqAFq8+ju39qzqBxad64NyBx1Upy6zVSAfviQhl/nS9viqfI0Jz7+9xPWGqBW3Z6C+uHTpw8GO4vhuJOIJ5kD2x3C5xjXtGry1grecC7HhMrnuy+bLBKpIgJrEMaXBDxKCBxLkZojkZ3zPcSF4vdsNzr86DYWMa1CbA5n1IzzkY1txPYTzah6JVym2H7KCRa/xZdkugcbYPzAOGEKxkBcMXRmYxyrmgD80T4M94LTho78XbKBxc4wNo740iW4r4mwEvZrdYTlYvNo7FJBzDN1JIA4BuUTV9ks7gMME8Uq4p8RDtDUY91sQAMABJNoQlbu27P5ae0kGYDsbjHqQ0jYjMJ2owOxCNUVhN2woQq/lBDyCoB/ojMoBkAtGtCXKrhRoKtuyEyBJSIcTVLCjwXffok2A16XZAQwahlB0ksc53huiVCOyRAxPmVD3ElfhHZiumZKf6VKyxJiPA0gG7n4x15vmXMQodvQeHJt+zp6tm7kkYbCYwzBHGNOOV81Kkl1HZnqGTM8owUhrkAOd2uMXQ2r7LkI1Km+NSXYOyTVDvcM4NRCvNFJKF+hbmIjWRzmDqBHR3neVjNJtXEnmi5EYtfvqWVJ5AvwiPMN8brZ8D45bWStjdVPw7gNq3o3AGuRwS3XZ19SdMOp+WypT6aqi+2RQvw/YXaF+7TfgIjVqayTsGnoPgsHdkg5YAlSlha++BTlD0JLHGvT8naVwpuaVDtOZ11QxxWYtB5CsUzPruCQXiBG2sIKXVoVWwoCWJksT7CaSHWz7MU+X2Swou16sW6b0HrDZ7mRiIlSyNiuXy9h9BOdc4eudL+APXosUwAWMasQfHhYJ58t5fTwnyNitBcEhSG7OMjTGxdrhLVIKZFgKQBwlGOJAGXDQNG/OzGuFAzxgZBuhp2hGaTDfG7lnQDqdcUFdaBgBHpRidA4uqWqCrzJbXQDFDuzPoF4K66kfmYKdUuGTDvLL8wmkKTPP875ep0DmbRDbi4vF6sbQBX3RQEduBYHswGaUt1/5+fC8k4Sop6kk43Zncl98aLa1QMYIu+qroc9NjgGAA45IYJuFlrTZA458YDeEOYT5NOlHq184c4WfRKP+OtzEkNbmgfVVr9sEJxC+XNlyLz+LjWdQKRKuU+FLXDWtgCW76HsXRkWFgU4NbaZnDNsnJ8mpPCrRT406PK+LAYvl9kX50buaVKQUMFLHJlsyEong+D5MAhb9G7wNjgbOQu6CycbaViXnkekRV/1wpj6/BLN77r0En+TWcvrLOatwVCY3qvsZyrmw6iKv83+nKrBp4pYzGgdn/IHcp8Zd7H3b47JpKh2LQ6Uwkj4cTRNHnxvVBtOZxyj2F45hZQWmQKo9XRnh50b7qlrkDdmbWCdCBXNCsMQhHBwX6Ah2imZyhHpTNT+hyWS2OjeJ0mp+iL1Ra1jRkItsfQrFewvh3o3VsHGktfVqywXwKeZOwjfxvvCRPbp9KIwuGGZuEJinOFybMifn7UdVwX7w2JJxA7qiSo+FB9Um1Q+8mCN5y8gE1jrQtJlFHG1N8mXLmDLpq80yhHrB3uFn1HzLvcUq7nLevwamlWG6ipJskjrQKsf1xF/KFFex2YPXMuSsNqgGUhtYLxLnIuXJLIvQTBfefanIP3wXk1R3gcCqiRpBTfVdNklODVSs9djCXngbcJeKNEL3Pht2mmLjPgHszbsR2LkWpsZ7fb/4hfZy10FLIoBVjVIlqWC0qflmqprUCIYnrgMMgRe8lRQezXnMZtB6Bl4c825cvesoWnXoB4Dc77MbGzLDnhIGIfp8jZMlSalOUOWyzyrKaz9svFslRXMudbzNyynarwbYGcyKNEtizU7PCzKdJ06jP0fTut7h3l5ZiiLJGKcbfGkCi9u1m65AsQk7eohJFiZhUbGjMegY0DM6ZKw2eQ+bUYq/lvKr6gHqiMOl0jF95YMInwLnncBZuSiuisirl0tKwDOT+1WPe1yi88YktfJwHJ4y4+ljUlS5b94tNtXaFMAwJauc7jI4047/HPo7sGgbK6Jy2C7mu/yuOEI+kGVr64k4VWfuEnOjR3VOkysrlFIGKO5RwIHSJxbZDNZm3A1UXxoW2i/bKq5HJtlIPZ+F/l2DrwRViVS63WLcN5sOrkgPyAVIlZry4wdK8eTED/Z8+rduclDzlP2PJYvW3TiAXIBlpKcpnddrK3bdeLJLOME+X2DtuwvySislUqM6LbRuV9O8ddZ1FSEk2i92QWk4KIgaJXG2SMlSQ10hpIPxTWaTEhlqQGFcuabG9TrP1xYS+fPUvKAsUHFgqFS80jrvXF9gG5Q2/vzDB93Ll+FT6KsnMkvjpyTIeP5TW0xbCa0ex8NAlLBIWTjzXMqW8+7eWfV/TayDYc+cpjGeLMkOfIQYIna0u13F9xw1/7VEO7dSJLKOCjMHYyrXxV0GKOdlSNyJTIWRGHVG5lBDZ17EdzmD21bk5Iyv1t0fs276+bvsys+05DKFo5rcFy6ujYlnyGe98uK6A2skQT3h48tpyBalk0h1dgoUk1iduitLkVxDr5jcu7uOVdSiu0VaLrzbgGzODy677WZ4Kc28jZbLDGJqeoOdJOY0H+EG7CU/nO1w40FiFoTm0k328hcIXfYakDjV7lvWSE+gzCq7iMj5toTygTRG4DFqNgJlU9X75rWi+x2H3lOi475ceGnQ7O9ogkx9xUa1m7AA0psuuy9ex1ac/sIktYuq+vIJJ4IHhgHxIbR1uhkGxNCahMJ6UAfUK/xdOnPhn1jOFUyZtFzbEXl42LNntkNw1Jc6C3wx7ecx9IoGBQwr+93J+V1u4QUmNs6l3I5DJ0ytP3TZppvrcQ6C87C/jr8to+FVJWzFbaL1n+AZx84tHI/f5t92UXW5lFpHBt9Aj3eFHWAqw1Hl9qnvxw0czT4IZCDZhX7Y8knrQ1CMztma9VaC06ZxmHEFtpomZdJx+DTLcxVV3sRLIbKh5mTSmBNBbBXv/admFTdtyR0sJq4Tz0WI0SmNygYxc6AWW5RPwtTQ/Ho+gNGWBmCa4GKoNzE7IgywqamjAZ0pTsoE/hj3jhEPevuhhB25zIN1K43HeEDXEpx2JjHITlKWp+3N+iBXhvnMbDE3H8gjXz0PSzjIv12hdG/5U3Mr6xRa4vrr/TLW9HLJ/TDEf0b9XuhL+0DNeDRtuH7Opb3+O+DuFyX+H79UHHxcBlsH3063nJEiHlDHPp6urlvXGN0JDSESfyFZej0bUwTBRmnLAfJm9/fDMsAkQmXt/A0qcvjzkO4BclN5cr/syrxyp9xtVwQ/98VmR9P/tKLM+nrcDQfuOrbexghuMMndpFvGRc9KJlMaSW3KlUVCkhujNRuc8PVuDYn7mnMiMY4knV/E5/6M0GydEI4s4tGeMXTCDq9piGP9WaEgtCBrlDutjoZMj8PB1tqzmnr01Zy5y3wt5zKrkFTUlOMS1Z2mveNGbcBsamR6jWGCgnEuyQd5EqO8TzRx4o93YI+Uhrc54AdYdE3cmcJdWLvCgkRvdw1Pf3TY5JrCWNoX2A4i3HtTOxWvBiR1ywQnUskw73TYgLXYdn/c8WU29vQTa6K88LgcVwKDa/9J/aeo/5FhN9/y7saCr8PZl0qylwG2kfXvfBWme4w624EO7o1t1axQuvgvl4RzB+uvv2+1eQF7gSSm4Pf6KECzqgFcZg3TiMHThLczITVBJl1ifc4ofh+ej4fhQWYh7ow2dwkSQKxuwtudzXyqldi7HDHzwh2X0x9/wpE+4q0NGVdhfU+rmRExBV76/n34/t3RQCO03JvUGkQ0KeoujYX8zOUgOkhfI4Q9PZ2LcO+fLoXq/JpzASKB+f7Dj3Yhmfb4DJ6zP3Wkx9ue+zI+ndNK38e8PDJzpa2A/0WXjb2eUPlkc6MrZ+N5JgcjM2UZFO/9iLvBHQAGwqIpRvOm+KxRrql4p1+PIHf/9Z/qxYyQu4C1WYeDN8HvvIanMF9RCgMLCpynfPIG6PKLX+5j8sMRuPlNlbafEIICMJQj0VRfAsSNkkHVTPoseOFZfMg00nEWxSxRwPUoJ/mHp5M/WOcCn4lib+zZjH3zKSxy450ibWh2CfyoKVYECkFYD0I94LF9dxKGZcHDm0DkhIS08ZEN24zYJBQRJ9O1T3GkVCMoJRjyfClOcUBKbhjRrVZyfHCtE5ncdnWLB+Yodk2LXzrPDTFkm12UAjNTBupBPZod30sqjIIOkrIzT+kx4Gr5WOrsYHnipg5osX03gvdqC7Fpkh8QmPat5CLcY0gOoJCyIaoT0nIjIa4I2q7qW94w0z7ig2o63KafFCeMzRDeA1IOXSRlcQEPPMynln+s74yoDRN2TTgNckrBPtn/zk3iwMaFDMPy4y3haqz3Yf/Gt6/k48k8STdkPRr1VOeqSp1w0S13GSLVdRFFq2nFgJWG2JWHh249kMKOZNY2YLucxgv1DbZUzdTrcYYqZEJLI+vBtQsbyJmqdhsJUq9PS+4nU9ESYuNTDwawCgrjNYCePdvQGpHM9exYS+worv6kbAhb4/9GZyKmE4XZj3rq57o0Ey6qWBP/ifftPG+ECaHD2KpVQpoBUyjUvUcOVtG0DoRul+v3Myli7Gc3ClI0iFIgAI0kCHsUvUx3vnSGmOTF47s3w4MAfztRHPsPhMTkCX+tG2ulp0nlExUjz5aNfWuG2XIjGBLFWekHPnslbOEGdUqcBOqeHEyGZPsejCmJw1Yg1DXEHqziqxa85smQA/wS9QlinrCzb/iHzQiBGd6O1E2dWRpsie+g9R8T6M0x+JxPybisMutimfGctHWDPu1GrGsccnlF6DnYtaDtFg2SXiuDGetXy3lVkR9YbXE57pAA1pCn+2A5qCilrSvvMoHfP9XIsWUhDkMUQeHvM9+9U3ZBnf/RvnrRgd5VYe/jBsPgD0d85M9hWRnSFO7lQBExYwekZYCleKgNQZvgTluud48Hl7iFQ+Dy/osMm7aSWjWtUykhbjQ6o8a11DG6+YArZDJZhKh6o2JSc2nT+FCrW7vu69diA7kn68m8c7Rny3YLSqxaZuKxfPenN7PwpfSo44SlYyYkv86dYAbOtQWPWdpaUlTwWNnCNPvsX460+4HOLuu5xgpKx+UEPxLf0wyAMlwF90b/lxUHH78ZG9t/xx7qUw9OHi8V9JlVzG81r5D9hrGGhe2K3xBja+p2a5uY2k8vx+/QZhxY0nvqeH6kSqwEf/g8Gs4ePZeT9QBCYQefDtxgwRtgCfYU9FMDgfozi/xmvK1+2myyDCnPN7R6WdgkBLODYeJtNRTtDpnT2Xw0UF9z7yruvxBmm0OlgldgjBAjPny4Z6UoAuvKX29wXOnR14agGxyEPBrQFxu34ZXV7AOHLHET4bXTv2VSUgtrynlxsE0Pw2diwHHs7h+kl7tdrSNdIOAqqUW+zrvMOtTSPIMMBjBLjoUt9heB4IMrl9gump47B1YGHnAJX8+aZvUDi9gnzWA7hdVGWee0CB2l7cuejdA2bZGFSpwegLDUcPql5pQ9KDYFoz/KrgpZn3bAv/cIvaTjYA0Cst0jCQrUuRE9BWDfXMiIW0zo3Z9u4NDFsCgBy6Zg+8RMeMbI0xR/couFckSnh+/gykzOGncgY9ALKHum07ILeLA9Zsym/6RdONoou3gy8C0STewb9C4D0bBHI58uwX8px5kQJjFMyrWx4HcOugI9Hj+j1qSLw9XbmAP15LkLxXw1ansjDWPiAv+I+5BNNCos8XYrUfiHwx9sWKMcxp6Q6V5aLAGKSjvA1oUjLP+BGR1KF9SwX4Ivy16SCvDa9LIgi19rPSNxk9msteY5I8GO281rud4keiikX6aV74nsLoxSglWYH8YksisuabBhwmZ0XU6sf0e16e3vhRXhMSSqveKs0MQGL60XK2HD87P4oEUyho64XJR8gLFC2/RNHkXnSUPyp6PBP+3rXoMlpPmP+9rwf/YmJ0lQjHQ/l2NTk55gf4LIkuP4Dafv2CevKvpRrVuBW8jGTxA2Y0MUo2yjHxBVOZ4QfTpvA6k51MJhv21wzN74XYmrgvW3mHJhJHATpHCddgtqJKOHnvY3pnhCtiKtXC2uErYAmypYVZDn58Jppc94Yto05B9LxT5dgFOgQt9wjrMx9mKWsVQNKybh2Ng9638piHz3E2Tf6Q29RVFvt+Zq5yb80cPD8Cw69q5hccewMC6Q1W8u9AM6kqfL8xzTfTem+i1WjQQb/372njWzTfoObERyT5d6T5xjRLB3zxd68136UWgJ2zY7cY0JpKm8U0Pov//03L//wDWgmT/xV7j+Yjy/zTtWec7Z7/IfubH/zKdoSFfEybjpip0bIFWMsPTn6gGTnlttV1oeGcel9+TPD+Cp35QNx9T4Q45EMG3ZAhovbT9bryEQBukxmdRNxJbD+2fI29h/BJfTO+i4Wwdbaks584x6FevM7ze9b3sqrO0WPGZSZZOSS5OI9NXc+/kX1G6qche55iozEzW3mMn5SelzwN8wOxIP7yLAh76ARqrDlS00XlS3pXbokqJYM8B8hO/dHh+rUO6/DK6s2Cod9KcAsO+RpurhiVt1+TqOzMxoToG1jvkGR24OZA8VDL9TBxLE/aLvmI7B4HJFpBzY44WgCrmxKPGxFr5a5pUlqvmm7+4KKtDVR80DuGhKbFxw3AulDr67pfMk/UKOhCCKDR8GmpO5SRNaT7v1GmNGnH89lYoAW2k4X1o3SQNkL9427HLuR7beGf0MzriIVNPBxAlwbTDbdQPhPx8GGGI5YmQ1wpP+49iatOS9HJ1FjxQMzfked51kYWKA3rOLkB048xIwfUjt/P78JMvwuD92+iwWxOgyRUjTRT67OX9kOBIyrUrraYSKXXRlL7i4CzKYSimIXyy/kubG7HbxmeCRFQagWYf0Kzj7Ge6ODVnV0BXWkuW6GU3FDTYTEfNeaOACEeFffaC2hasdhYe9nldQy/c8PXN7xu+B0bvgHDN2L4Goavafgxo2eNsT2o4OvU+Ansb6R2KFR+T0Ycf8W+5BhglOyIeFbOLMyOVMRSR7mxcUXIilEJajxBC+cSU318/UT8agMmibFLMPaKjPGEonQ5mogIyj+/eGpLJztJJ19Fs6YaCXF5II23kicxJpmx+o+d7PShWQykD0K1QikPhpFrdqbN/SBTV5mxe4Vva1uu2mjDY68UrH/oNr4xdkE+3RQs0ypjeYkN/quOKrlkKVDFEH94ioclmYtTxd4qK8nPLxr3K6LM9SR9n1Cp8YfPFPTnegKvXHW5wvs0p/IL+fOayb7xROKEIYk86PpOZxM8Sa6YNm8waf56rfyVE99pDlvTxtZFoS/6ngGLCwY2nocNDTtS51TEc7OBWOOhnY1qFmWCCtJ5Pw/WVQkoUfj0s9yg/HXekEfsvkO4qvNDqJEUyv0quvZPdMr/xEj+TzTyf/KX/5MYEYmFQrVktpelS7VUmBgMRSNMtNbwDRKfPX70kJxir9uT9153g6v3pmADN6HXQsNq4iwD2tmkJkM174OgOGZh7Zz88J6YZNoPs+PXH499c1xr/+Ri3gqDM61X4mlxbt+9me9MZnbTcaiOIr2yJjTRptXOmsZJozVUBSXb7yF06th+6Kuqy8xkOFJqF4ZZjXHsmnH3ZnxlBNlaw5ERlVi9i8dAs+5GeXZiJkFZ5goDAqstuOLs5I6XPFA34t87XFTpsyFHbLbV04VdUDhxaD26hemdfiUfHokdcZPTmW5HgE96O0+aiJ0D0rXSX5k7khMsyMxhVgzIU0owrOx7UvbPGVXhnywVYnMaF31bALyVhY0/GMcfqZa2kErytdvIxZVxyzNozaWd+Wjtw9BGJYaxrNDdIyJdPTqaPVChA4W+2GRhPmQPajivIwq+73u5Thz+gJyk8h2xMg7lDU02hbIRzqu40yHRk9q6gHMJW3p/sWE/B5buGXRDoBk119tp3ZbOZI48tp2UNUUZYnLoMBrYF4BrwiT2HZK8IKgk+VLgglMIZH82bKTbsLtwzRSEuhd05/rSkJjtPW/T9rzPwc8YgHLMZUPDV2ZxjXSmj1h4eShmZJ3ZT+Gl5iSOrG6XvnaCugw7J5rO+QDB+iR0femL9J/tYrmQCeSCK6U0J8cMZ1auO+iyHD/L5VxRV6mRUkVKEVu+dPdyGhNZT1bdfCCOz0JrgOwcDqJsuY5c+k4QpUijzeeJIcnlYuyY4cW33FmKNJYqrZFRRM6cou4pQOLR7qwFYthQAsJ65XMeXWmGUklogRdN8LIC7wRMCwZgTsbGiCoUqJdE9WYR65Gw9QTrqJT90Lp1HXzr1inwbhox57gwPJVdKegm/SaTYtaBli9b1TX/wk35hkHDd4zYxhDoeqyGfYVvCLrVtxPI56106JSHcSf/1qRlxMxKQm3+27Q0OcnoREVSgTYLW7db5Bf+B9SVeQU6qiJgF1j/8EHPLHw+MakjnBYjnPjmtkL4+6wDQkh1llGY83wsmZPLl9Uojzd/rTvOptP/mTX7T+zlHVayNqUiUiKtL3eUhB7glOC5DqPTsY9kTLs1VQiU1DGUMmp1qc2ucvWFQF9fxq7TBQPCrq4o1vv2nJL/s4whIquGBOexZ3biCVnczC0HWRE681B2bYtlWH4GxeeMj80MqvDftpvykZLlBsBcxxAIT9RAlQKIjYHlKIkBJabiXdGpSAhhcyZQZdiHZl0IdL3mYZ/12QdzWjD1uxs6iGcP2xXY8R5c0Y+dSP0fMjps3JvsIwXX0oF1ztXR4LXirhONHFgjlQ3A9e4+7NKupfWmyIPPbaeG2rCbQy9+derldIvBlNd0g7663s01bYhGszcob00sCqt8J4JAJ8voQUa+cKAPPlJaRso60t8WhNXnEGJN7E8gTrLAFdt+03uFbvri/cFomFX7X31szlAYMFDYIRWmjKZ3BPaOuk+PGINXDFF1W+b+M2BGO5KK4Dqn4zziL/sOgcS23Zf2tf+Etd+5Ml/GIqFdra+ok0m+F5shTZemnIlH9vqe5Lu3p+/GnoGajlBUCz8QuvYIeUyNYE/U16cl35vtfO+2eFPbJaJmznK1xHsJq/1K7rNTAH1Tfr2ntle5MiLqKhGU7/Bo77AhMuuGTHTtsSpG94jTQSffc+/hq723geOh4TkA1ZZJXt6uyil6ve5P3bw+NhlQZ3SvL9nAdgSKgFNeskmJOQ7euI9Qfs9G+HHH36CHxauKzsjj9N6boW2PO69aOnVQXcWkYgXsdQhpphka1gETFDklySOQngVwwW16dPneXUE3Cplz0GEq56uPVc6/lfJRePxdwPJ7vcfvrfck15owjkJNJ36092cZLm80G3h/rDevehK3RxwbhoBvCJTyEkjmTyklXJOtwRd7SvwTAVZH6Pmo7482suKAur6h1OUIPCTBG0zcKU6sbDnQKEC6a16Ad5l3/C7EQvEWbcpxOqhqB0rOhMqe+IRemXm0vycINdYj1uwng1ORa2lYpLvnRLW7CqvPtS3K/UTcGpF9JlmMmdUm7l95O0o3C2zeo4DtvRZpJRJgbrqPQLdSO4cx1OKPkWk8MGehLgsUPp0/7Y7njMD4rOZrorxzpLh9mJv6sO40x1lLWKkCcK3SyOMmZh0zb3I+Y+7L9gnw6MTHhY9Z5guwyFV7+JoepnW3pSXON+SOUKZSqMuNJ3KYx34cl+uihdurE0f2BheJcFOjHNLNMg6fPxiisS3xlR5X80YvQEt0aAlfVylBXqal83E5rapjyb8yujJzEjwa6G617j7Ni0JMWvNP7sHJO/igweB0HrfFU9aEPWw6D9lghvk0BHrmuanBIj0UV4gUjPuT3+3p4YfO0H/N6TpWF+2OnFY926KyBip6tLHliDmpP4iEgPX2PWt5Dimy0qVe9tvVjdqzzofyDD6LvHWPYzMXHnrzQVdQ7qBsnzj/Cz0zxVadnbiuxdFXe5mo9LaZwLUgpF5h0WoWvJKYmqK61t9JgmW0iT37VhzyX7EezHJA2F31dp1qNSeOBKiuPHbvFfVK6vZveJdmiBKKQXd/cbxinTa/ABkwGJZeWXCVp+rXG7x9FbFwS2F36qLG7yJRobJu/pUHNXXY3if9W/Kt/Uovz/mNmmBlt8HzrH+am7t6gn4jnSHu9jzQV3uH+7qp9ImUfiRK+NFymiMmLhH7+wB5LHGpbO/LxXQ0QaWZ1WVEdyy3QGmm6aoQ5n1BDXruUWoMj7JtdrT6vSPwzz1T50OKY2VH3H0k+eUigLVTMn8T8LWoA4eM+D3yO6a2pq0SOcstfgNmO1mHX2ubrDMacd7kmQYMm29O3OBeOqo98Er36FLN5ON+uvTIYbj0nFGEprJ+uv/5/fI9P8AfzntgZrDuIcXJx+ZNxBueOS2bJEfhi5DCTuqi/PeP1u+PzbMuX6Q4L+/rRZzeLHWGbCfxdxITbwK2blRfHJ1ssJ9cumsdiLUFZHXffWAphwqB9Xw/I8wZA4P27H2fqj6Ar6Xoxu9acay0JFsjX1jqWtt1D1HrFKBVvoxOMykw5gDqwnjkDrej1emtrSlOIKZGiBArs/mOyZB2M6CKHrbFqxkgwKEjIDq2/CiQ5cuxlB84FLgiHl368EaycgVRVXackQW2Idx8wwDbk/E4pc2IrcqpG4oneGiqkTc1qZa/ZVKs1mrG2cHrCkdy3bjtDsc/7AMUL0W9AMZkaJAdHNvT7FDoKeQt/pCKeUWC6DkudSe+bmeTP35161GHhAaGfT2Ls3ua9fQyI1XxY5VcKyhWyltRfPQ3bU94f07+DHI7Izeffzz55Tow1UdTzToGRNy8SDJRn+dKEjF941kBne8CaLemr5WAWNUzxhNcD0T06jajjUcIj2V9FvMBkn3Djq2AqZlxJDeWE73aJ/+VhuZvgJtzu/PVGm8nstaePiFzZ3F/WqOw0zhhM64dXfic1RN9VAAc5ocg7IxfVGGPishC7K73Hc87F/BGlLXWyhGnG0aEsmoEyO69NEy530HdbtqgfGSeiwFhqgmgbNdXRAYbmm/u5FCSodJboZGwbb1qsKTZJaFgIcxLVO2L+djRabvAthr72MW2Advd5pyt+0DTmWTmnl4g7ZsDE5iYZT9dHOo6crc26Ho2H+0vIPAzmQzkEAUj+PnKZ7U/Dg7gqydZ72EA35xy654ykSk/mlbiaSEov+0+wrBppp0CE5V9TYbEQ0H84I13XwXZYGrfPOI9VCSiyUOduaBJmr8JrXYlPd/5w0TT8Pq14WVRgAjf2L8P40FepBO6utKtXmfK1NgpJ7Oc4wnSKTUCAeIx7wQK+DQnYuNlDzB3sSKpeE6rHsGDx0C8YN4v1almivXyWX/AYwLUXUBVxX2UeEy2WKEIQP2kmohc1+Cw0LgdcV0TsjGjaRbhD4T36BnJ9iXBrpj8L/eWCSzBJwryjLH9DNCAYjNcEGOY/wWTbcZwAlQU4zKX1gB3bdbOgHTRwGxcqGAPf5Z4Rg0hkl+6B7cV1pEs68OzVgoZhCrM+HMqyKq1HTCzGxjJjTvK4ongkkaBoLonOxHHVKtnyJvgV+PjEgbI7uRtWlEeuUQHBF3GL4C6cpd+sVTAmf3J3lgwcfZjmzzh8iIFzd330+PazdVTtI2TorECaSZnu1kTIe62V/wdDSOEBuS+bG4RhjHOYgYT7zeZrFsURO3eqCJq5BYMudXQz9cBKVf2uBOCC+qFFEHPf0SzvR3BFPNzg9lAFZ1RLbcPLuB2/4xN2VieTpblzj92fgzL2ydhqq8MqtunBedcs3Vp5iB7KVDSdSdhFqB8lMejsSws1DK4Z5hC/dnGvRwas6+e7wWXHYVV0iE4p4aC9ZPq8oTcoLSPGylwt6KHTdx0WTbo1o57qbLsKUgShDeTl4Jr8Ox9Fhs+m7TCSo7Ari9Ca6duko5MTsC7i6vrQ49g2H9WrpYDqD6jyQKsuK4B22vUVQAd5UdI+IajfX3HJDRAW2PTRPQrGIDx9p2Be9BcV8v7My3AxPg4aK6+EiyBEjIuHjhN2xx2LM62kwLv+F+4xvOu8rCcrRo+5B5mVXdvJcK78xq+Td3dC7IuOgRsDfsOWKOwlfbjiRhkRUbvhwQyMfQcMOvEyqxu4tc5gnr6cLVUC5uXwr19PyItR78absRdpBoAJj7o7ks4eDvyBwgp6DpcILqiP5G6ZRAn6zBU+K7OKVrDnUKcEm2mNCDrVqSg3b1C0WBOAXuLRdqXBqru5p0OgnnZRBUx7gJ8fTYyEV7Xf4jUevcbg4u40dwp054c8BAu+J/ybKSQIfLwUvdGe2V63vlOQEN1Q4L14lUYwLTS3wrTnfg74M+FGtq81UOurvZ3i4HcGP9PjmTwUXK/in8DJGdxFzrZInnk/U6Izu7PkrFqcFHKVD6twKiBWVqX7guSfKvcl2RYxqVCYkvWnrddwr0V1CARfojvRmZ7DVv+plMRaOMefgFlB9b88q3rdEYBTOk7G2jn7AEAzLc59iuEBlRytkF53M6ehcBJWg3P4tMaJjg35pXYI9iWJYlNL023M8vz7lBSm337TQvv8wK+Lh98IfehE9A92hoxzX3o8RfckYiIHcBH6T8pC1zsqjp9Tl9ZUcov+4ev7rwc2g5qApI9rlmV2S+xJ8S2TdZ+zRB+pbA5BKjH9leSBXFeH5MRJLPn8k6zUZyQB3DwM99L4vW1yrl2ux/JLyAGEMQxGSyozFV237pAGrGTANdbbIED4JXXBNQqtZI3zrSUeaPIOc/0q+gi7pmOJb6GRQxDje+2HQPsAhGrcFWd3it9Ytc4GT7ySjXv+7mXd+ahhVbLE3/QZk5eE7/zJrdBccI06Bpge1wduoH6qcjyfSB7zLpWmZP8k8x4pyG3VYJmXsZ8cmzyGXbbbCn/QMuH6cH4BjXvx/8LsKye8gWIDIdlGFINr/8rHViG3FuFM8uhQvf9I6aqjbLiM6tDIdvY8h42qmzL+RUlm3jmh3m0spf0WrBl0Jpz/5iwjzf14XMZrFKJ0+NGW5+CMgK2lLnDIDUlriWKs0faW3Vb+SVs6BlcI68EVyHYJ4A1M3bh1Ve3ce8N49A54JZosuxQ10w8ZRmFwufHxMvFBpeX8cLKp62eICKd4Blo4lrVdf40aErddCfzWkM3x3GblNRBp7v3AeV3GRL03/V7bs0yKS3AlZSy2ba+0noFmJrUCoi1tC1gBeySoqlW3ZI30w1VLFwG+vSPyQyErD2TIMeVa+PcOW3gKh8r02E5Qm1GCPV50vFMJSKW4Rpfb+RuwWdSB67YqOalU7/EHuKMbOFxGVrGAQUrrdKhYrajyfnyyjQ+iROWcUqUJ6psR2O7KGKC5cGj5XiIJsPY9kC10pYNokuuq43DdmdarTssHQmio2r3aSn7Cp+DU0GnV+hFcZqeZnUcqPbpPPOWRNLDlJnSp6p03pwMdWJvBMLbsw8mS5W4YM8STZZPqJtbk2OPWrZcCedZ5uIFnfP7PpR0iX9U74oyA3GsnaTU//2lto8Usf/+c8/2ZHJRrlMLZMXaCU+zMlUf149x9XBXEyPfslLCwoGuKeGdajuI3bY7PDr9afENNq/J7/Cl6NE6FsHBGyZX9gTr9a/4ANr/WQoHleAG8cxwrKrARW+n4ZbyYva6Fffj1yUil6+3xZ5/3/jwRvj27xsfv4VPG3isPlooXrAnr4mkfTbajULTyo+q4mkWvcfVCTZqvBz7d4hHLkpijW0Jr8dGYlE0DZSNm0Kxdo1odASyZoHKWr6SWYYOasdA4yPOML478WfuzZQRdWUn6xpSXFT+g0cfisNpijWhvxJXI/bSbhXXk5vkwLCZG/ZG0h3zGlxZRE22BlbJ8L3sV+Jc+q0dI1czATFi34J54LkqBIYc/peSbpkybuWu4RFFkkNOY6Ue6aTtPn4dxq3ieSn7TkqTySvozfaVK9tdNGgXp1rUZt0VK8Xf6EbSOGoElyaX1oCB9dC/i0L45wPWuX+t61NZnG0/6q1RZKQeRGtTgAMvNbDSxAKwGZS6FPw7T/mYPSR9dFj4u0vLQOYRxbMpGAWbEG+wBOmz2Z+J7GbGiCPYVBrSIXbGH1A8ldg6YVcQCBaxCJjQf/EV/xVvEslzOYfYDGQL3cI8PfUvPxE4fpoLWPruqpx+eSiEzRJA6ygdBky+dNjQR+hK7Z6JrJqAZh9EbBn5lrbQsDUHqZTs4Jj8MK180+jnjTk+Lhay447PuQzaOKKDrCBqxS8Zj4+rgbuqxFOWTUtCWK0oDr2VmBYURdNG828dMAQYUIDFlYoyS+DPoCQZ44g+++fImn1XsstywO7BSHbPNnCeLMDF0lrxJUg52TSus5+u2O96cZenaq9pEDti5yNuw5WJ1aGPx1spqPp7Mf5YTDouHVN5WWEeSr6U7iYJmqrxtwsJNO+8US04kChrN7EtATK1Kldd0xwO5QrlbQq5Jpg8IGa0zKERk8QvIk0wmVpuUyh46IzWpwFJfTtTHV7IOwq1dU8uGNDVvl226QVnqEYQXcPanPCL+ylo2Axp8yG/ww/iu5Y4g7Aec7IOGs9S7vkjWtT3R/qZGGy27Jg/s3VZtqY9Xe8t7oCohyKGmbQ1TvxWNUPzYYnxf8C7tL6GV/fEQgB26zs4IF+cpa0AmZe7xPqtBWXF0uZrxvvsNZiIlVSRbmkPQUfcoc2mwdtxCzC9u5L9TyBLJPH7P2Wjxsk8f2aB5mXt1gFPcBb3Zh1SnGSh71KLwHRQ25uVp+6aWmHLBIoRRiiAENguqEmwQAgjHCOU07427TRowWpXoKVAK2ydvQH2oC3GpyZxSsEWrP0nhf0n4QBECdyEVjO5eIkeoIGFRFSPTyo90JBPqdWuQTsv3BFyPVXFw2fxe6nYi37y2wDjND/2tnu8IELMIM3Xonj4lB9uqvb1+P2Wn9ZUVNblb8GU+x7vsl0BqAUnZbuph7Cyw4zLHpPSAMDzBRxLGZeOJpnIU/TR7mDhA6T5taFVjw3BEXapMtL0XN24+n+a/G4KD1C10hSB+p2RZi7S863Ajnzbd0zMnbvVv3kyCu8y/ybJbK7gFIRowX35UgQHPmrtTKV0KBa9FdyZ2UL6lXMZzrM6KUGjhb9wG+JZxuidDiJWuvDhgCjhikNWQSxXQlCtk6o4yAt82mdiK1R62l0VjFAVACJUbRXoLH+lTk9ZE21nrLRD4ZW8+SmSgR8KjIBUurnOZ/w12X3d0408fcM52260FPMYKfb/BBP+kTeHTv5/e2fEo5KLn7r8OXAv/io2BoHSGS5VHyCdSGb50ba7ubOg1Ofctut7sVniLtPnJxDXLJy51RwYJdDzCR1LuifMKMS3XrI29ct9p7LvYGroTizB31ZEWPPI5wFHqjEDUPWeIRey4CupryjqPGdRhbHVLui/kIb7QZefk/OllZBFx7iWEH55Ij4tv9HNLiPKV3Kh+Hn+SM0FszNKtsJYaMs8dMKT7kG6CylmmSddN/3bJJzpEHqwInpA970M3LNgW+V0kigFfIFa2uUEZnoK0HrU1EvCL2yXd0yAP1zriwbidRFYmSUjdhDaeyZ7mouGkZy+si9awvz2dgF+3SGwB7zaEM96xeJ8zKGwwSPYaRKyDHatCVkbbXJ9tGK6pxp9i+gNC8Qqn9ftBnzVI+Ri3iHEbw0JgtZZTczTpJPHNOyYC59w/FBf40clmyDgC22R5//Dymu26Rq+X92DCvCeiy18R2hPcxlpnWq97v6Np7QRd2n0BlylvJSCN43KTLKeTZt5cgF+JOjlPRlhAyJ6dHdx0LTPTo7Zp33JCtUKyOsvBzyryu/eM9c3UlMytROtSlbltEXYJ6bbujtC3H1w3AxICs0k12h+Vhhv23LUlFfv+oMKgDhTdxnzkoOw9hJWe9iXnl7BM5OG4bwY4KtNRlhQ0FdNzqJQlrwU5NFcbEvmg9tpK5Tfy44uaFdmr8t8C2C318p+zRxeggmECFUXtoMuNEcWC8DVCHfFfDjJds9QotauN2tWkZe6mm7Fkf1B+wQMtSH5sIMox4gaBNeJdt1UlbgclF9eRnqJazaIWluCVu9JIkG+ive5Zdp6P6jyQiMZcNktHX0G90wHPHv/jM+QgIEMVy3PamefPH7GcjGQI9RlkIz790a67tNTfZYxxwyp+q8ibvyB4lltS5av5o6mI7RGbJQO2S8qmUe4Oh9djsgvINqvvTn11elxmleImwsphcpA5D3JLLPL7WjHbTNgi/uEA+/3BEp1LjTmmrJIJIqJOQUDRBuLmB7Hu8BFiQl3XyITrBsYgQSa6Bs7lQySzopELUmSlzMCFUcqcQlHig3G/eVIQbIbApEbLeHrUbyaHzemNswWWbFGX0wyJReY6eTSk0Sf+dODd0wizASQDVNhuUsyaXFtGfkKkqUv0V2I/bwHq6mRj0y8acP0LfLJZQOrRZD2mpTLeY74lzjlPefyiobq9KCo+keZDJ5Bqel2Rr3ZJwSzRnslbToRFEBTYaSgj/vrkWLyv5knyn/BTkx8XAOfKxXlP/PuW6FEtPH3yA2icXUKvHcaDlpTlGE0Q3nUi4Ne7ycyc+ImODL0yUiOj8qP/f/2P26P+u8x+YUMyWQnRh+GrV8QYXLccyXIDdXb8rlkfDGZ6X5iLuF4qP9E0Lq/SG4aJ7ID5V0bIG35gFoD2VMFxNImQ3jqHOE1ebaf0qkTPdycIloVPAA09YUCwTqm8U6fwo4y6ro9Ef0yVCNjQByIaQ2slegbgNfO+NNBVkxUR9jmnlCJUwsz7HRmmazxgMx3IWySLemZuz+LWH00+Ky5JPt6VseybjuO3IgmNwBoeQDysNuUY3XIWAUJszhJSp77cwufKk/0EcQI8/J6G8H9+7kFXVWFMQVfw5GyRZbvI7ubWS8QjNRGJPcIl/TkoduZ2fGvgZ8qS8Vf2GBCHOUGdjgA99R//boD1/m3V9USSUUMIP7C7Qoloh1j4wGkWeUA04YfiH8Atm9JW9qAABFhm8HyZ1s0/9HWdwI=";
+      const decoded = JSON.parse(zlib2.brotliDecompressSync(Buffer.from(encoded, "base64")).toString());
+      typeCoercionStateMachine = () => decoded;
+      return decoded;
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts
+var coerce_api_parameters_exports = {};
+__export(coerce_api_parameters_exports, {
+  Coercer: () => Coercer,
+  coerceApiParameters: () => coerceApiParameters
+});
+function coerceApiParameters(v3service, action, parameters = {}) {
+  const typeMachine = typeCoercionStateMachine();
+  return new Coercer(typeMachine).coerceApiParameters(v3service, action, parameters);
+}
+function coerceValueToUint8Array(x) {
+  if (x instanceof Uint8Array) {
+    return x;
+  }
+  if (typeof x === "string" || typeof x === "number") {
+    return new TextEncoder().encode(x.toString());
+  }
+  return x;
+}
+function coerceValueToNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  if (typeof x === "string") {
+    const n = Number(x);
+    return isNaN(n) ? x : n;
+  }
+  return x;
+}
+function coerceValueToDate(x) {
+  if (typeof x === "string" || typeof x === "number") {
+    const date = new Date(x);
+    if (isNaN(date.getTime())) {
+      return x;
+    }
+    return date;
+  }
+  return x;
+}
+var Coercer;
+var init_coerce_api_parameters = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts"() {
+    "use strict";
+    init_parameter_types();
+    Coercer = class {
+      constructor(typeMachine) {
+        this.typeMachine = typeMachine;
+      }
+      typeMachine;
+      coerceApiParameters(v3service, action, parameters = {}) {
+        const actionState = this.progress(action.toLowerCase(), this.progress(v3service.toLowerCase(), 0));
+        return this.recurse(parameters, actionState);
+      }
+      testCoerce(value) {
+        return this.recurse(value, 0);
+      }
+      recurse(value, state) {
+        switch (state) {
+          case void 0:
+            return value;
+          case "b":
+            return coerceValueToUint8Array(value);
+          case "n":
+            return coerceValueToNumber(value);
+          case "d":
+            return coerceValueToDate(value);
+        }
+        if (Array.isArray(value)) {
+          const elState = this.progress("*", state);
+          return elState !== void 0 ? value.map((e) => this.recurse(e, elState)) : value;
+        }
+        if (value && typeof value === "object") {
+          const mapState = this.progress("*", state);
+          for (const key of Object.keys(value)) {
+            const fieldState = this.progress(key, state) ?? mapState;
+            if (fieldState !== void 0) {
+              value[key] = this.recurse(value[key], fieldState);
+            }
+          }
+          return value;
+        }
+        return value;
+      }
+      /**
+       * From a given state, return the state we would end up in if we followed this field
+       */
+      progress(field, s) {
+        if (s === void 0 || typeof s !== "number") {
+          return void 0;
+        }
+        return this.typeMachine[s][field];
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts
+var find_client_constructor_exports = {};
+__export(find_client_constructor_exports, {
+  findV3ClientConstructor: () => findV3ClientConstructor
+});
+function findV3ClientConstructor(pkg) {
+  const [_clientName, ServiceClient] = Object.entries(pkg).find(
+    ([name]) => {
+      return name.endsWith("Client") && name !== "__Client";
+    }
+  );
+  return ServiceClient;
+}
+var init_find_client_constructor = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json
+var require_sdk_v2_to_v3 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json"(exports2, module2) {
+    module2.exports = {
+      acmpca: "acm-pca",
+      apigateway: "api-gateway",
+      arczonalshift: "arc-zonal-shift",
+      appmesh: "app-mesh",
+      applicationautoscaling: "application-auto-scaling",
+      applicationinsights: "application-insights",
+      applicationsignals: "application-signals",
+      augmentedairuntime: "sagemaker-a2i-runtime",
+      autoscaling: "auto-scaling",
+      autoscalingplans: "auto-scaling-plans",
+      bcmdataexports: "bcm-data-exports",
+      backupgateway: "backup-gateway",
+      bedrockagent: "bedrock-agent",
+      bedrockagentruntime: "bedrock-agent-runtime",
+      bedrockruntime: "bedrock-runtime",
+      cur: "cost-and-usage-report-service",
+      chimesdkidentity: "chime-sdk-identity",
+      chimesdkmediapipelines: "chime-sdk-media-pipelines",
+      chimesdkmeetings: "chime-sdk-meetings",
+      chimesdkmessaging: "chime-sdk-messaging",
+      chimesdkvoice: "chime-sdk-voice",
+      cloudhsmv2: "cloudhsm-v2",
+      cloudsearchdomain: "cloudsearch-domain",
+      cloudtraildata: "cloudtrail-data",
+      cloudwatchevents: "cloudwatch-events",
+      cloudwatchlogs: "cloudwatch-logs",
+      codegurureviewer: "codeguru-reviewer",
+      codegurusecurity: "codeguru-security",
+      codestarnotifications: "codestar-notifications",
+      codestarconnections: "codestar-connections",
+      cognitoidentity: "cognito-identity",
+      cognitoidentityserviceprovider: "cognito-identity-provider",
+      cognitosync: "cognito-sync",
+      computeoptimizer: "compute-optimizer",
+      configservice: "config-service",
+      connectcontactlens: "connect-contact-lens",
+      costexplorer: "cost-explorer",
+      costoptimizationhub: "cost-optimization-hub",
+      customerprofiles: "customer-profiles",
+      dms: "database-migration-service",
+      datapipeline: "data-pipeline",
+      devopsguru: "devops-guru",
+      devicefarm: "device-farm",
+      directconnect: "direct-connect",
+      directoryservice: "directory-service",
+      discovery: "application-discovery-service",
+      docdbelastic: "docdb-elastic",
+      dynamodbstreams: "dynamodb-streams",
+      ec2instanceconnect: "ec2-instance-connect",
+      ecrpublic: "ecr-public",
+      eksauth: "eks-auth",
+      elb: "elastic-load-balancing",
+      elbv2: "elastic-load-balancing-v2",
+      emrserverless: "emr-serverless",
+      emrcontainers: "emr-containers",
+      es: "elasticsearch-service",
+      elasticbeanstalk: "elastic-beanstalk",
+      elasticinference: "elastic-inference",
+      elastictranscoder: "elastic-transcoder",
+      finspacedata: "finspace-data",
+      forecastqueryservice: "forecastquery",
+      forecastservice: "forecast",
+      globalaccelerator: "global-accelerator",
+      ivsrealtime: "ivs-realtime",
+      inspectorscan: "inspector-scan",
+      iot1clickdevicesservice: "iot-1click-devices-service",
+      iot1clickprojects: "iot-1click-projects",
+      iotevents: "iot-events",
+      ioteventsdata: "iot-events-data",
+      iotjobsdataplane: "iot-jobs-data-plane",
+      iotwireless: "iot-wireless",
+      iotdata: "iot-data-plane",
+      kendraranking: "kendra-ranking",
+      kinesisanalytics: "kinesis-analytics",
+      kinesisanalyticsv2: "kinesis-analytics-v2",
+      kinesisvideo: "kinesis-video",
+      kinesisvideoarchivedmedia: "kinesis-video-archived-media",
+      kinesisvideomedia: "kinesis-video-media",
+      kinesisvideosignalingchannels: "kinesis-video-signaling",
+      kinesisvideowebrtcstorage: "kinesis-video-webrtc-storage",
+      launchwizard: "launch-wizard",
+      lexmodelbuildingservice: "lex-model-building-service",
+      lexmodelsv2: "lex-models-v2",
+      lexruntime: "lex-runtime-service",
+      lexruntimev2: "lex-runtime-v2",
+      licensemanager: "license-manager",
+      licensemanagerlinuxsubscriptions: "license-manager-linux-subscriptions",
+      licensemanagerusersubscriptions: "license-manager-user-subscriptions",
+      machinelearning: "machine-learning",
+      managedblockchainquery: "managedblockchain-query",
+      marketplaceagreement: "marketplace-agreement",
+      marketplacecatalog: "marketplace-catalog",
+      marketplacecommerceanalytics: "marketplace-commerce-analytics",
+      marketplacedeployment: "marketplace-deployment",
+      marketplaceentitlementservice: "marketplace-entitlement-service",
+      marketplacemetering: "marketplace-metering",
+      mediapackagevod: "mediapackage-vod",
+      mediastoredata: "mediastore-data",
+      medicalimaging: "medical-imaging",
+      migrationhub: "migration-hub",
+      migrationhubconfig: "migrationhub-config",
+      migrationhubrefactorspaces: "migration-hub-refactor-spaces",
+      networkfirewall: "network-firewall",
+      paymentcryptography: "payment-cryptography",
+      paymentcryptographydata: "payment-cryptography-data",
+      pcaconnectorad: "pca-connector-ad",
+      pcaconnectorscep: "pca-connector-scep",
+      personalizeevents: "personalize-events",
+      personalizeruntime: "personalize-runtime",
+      pinpointemail: "pinpoint-email",
+      pinpointsmsvoice: "pinpoint-sms-voice",
+      pinpointsmsvoicev2: "pinpoint-sms-voice-v2",
+      qldbsession: "qldb-session",
+      rdsdataservice: "rds-data",
+      redshiftdata: "redshift-data",
+      redshiftserverless: "redshift-serverless",
+      resourceexplorer2: "resource-explorer-2",
+      resourcegroups: "resource-groups",
+      resourcegroupstaggingapi: "resource-groups-tagging-api",
+      route53: "route-53",
+      route53domains: "route-53-domains",
+      route53recoverycluster: "route53-recovery-cluster",
+      route53recoverycontrolconfig: "route53-recovery-control-config",
+      route53recoveryreadiness: "route53-recovery-readiness",
+      s3control: "s3-control",
+      ssmcontacts: "ssm-contacts",
+      ssmincidents: "ssm-incidents",
+      ssmquicksetup: "ssm-quicksetup",
+      ssoadmin: "sso-admin",
+      ssooidc: "sso-oidc",
+      sagemakerfeaturestoreruntime: "sagemaker-featurestore-runtime",
+      sagemakergeospatial: "sagemaker-geospatial",
+      sagemakermetrics: "sagemaker-metrics",
+      sagemakerruntime: "sagemaker-runtime",
+      sagemakeredge: "sagemaker-edge",
+      secretsmanager: "secrets-manager",
+      servicecatalog: "service-catalog",
+      servicecatalogappregistry: "service-catalog-appregistry",
+      servicequotas: "service-quotas",
+      snowdevicemanagement: "snow-device-management",
+      ssmsap: "ssm-sap",
+      stepfunctions: "sfn",
+      storagegateway: "storage-gateway",
+      supportapp: "support-app",
+      timestreaminfluxdb: "timestream-influxdb",
+      timestreamquery: "timestream-query",
+      timestreamwrite: "timestream-write",
+      transcribeservice: "transcribe",
+      vpclattice: "vpc-lattice",
+      voiceid: "voice-id",
+      wafregional: "waf-regional",
+      workspacesthinclient: "workspaces-thin-client",
+      workspacesweb: "workspaces-web"
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json
+var require_sdk_v3_metadata = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json"(exports2, module2) {
+    module2.exports = {
+      accessanalyzer: {
+        iamPrefix: "access-analyzer"
+      },
+      account: {
+        iamPrefix: "account"
+      },
+      "acm-pca": {
+        iamPrefix: "acm-pca"
+      },
+      acm: {
+        iamPrefix: "acm"
+      },
+      amp: {
+        iamPrefix: "aps"
+      },
+      amplify: {
+        iamPrefix: "amplify"
+      },
+      amplifybackend: {
+        iamPrefix: "amplifybackend"
+      },
+      amplifyuibuilder: {
+        iamPrefix: "amplifyuibuilder"
+      },
+      "api-gateway": {
+        iamPrefix: "apigateway"
+      },
+      apigatewaymanagementapi: {
+        iamPrefix: "execute-api"
+      },
+      apigatewayv2: {
+        iamPrefix: "apigateway"
+      },
+      "app-mesh": {
+        iamPrefix: "appmesh"
+      },
+      appconfig: {
+        iamPrefix: "appconfig"
+      },
+      appconfigdata: {
+        iamPrefix: "appconfig"
+      },
+      appfabric: {
+        iamPrefix: "appfabric"
+      },
+      appflow: {
+        iamPrefix: "appflow"
+      },
+      appintegrations: {
+        iamPrefix: "app-integrations"
+      },
+      "application-auto-scaling": {
+        iamPrefix: "application-autoscaling"
+      },
+      "application-discovery-service": {
+        iamPrefix: "discovery"
+      },
+      "application-insights": {
+        iamPrefix: "applicationinsights"
+      },
+      "application-signals": {
+        iamPrefix: "application-signals"
+      },
+      applicationcostprofiler: {
+        iamPrefix: "application-cost-profiler"
+      },
+      apprunner: {
+        iamPrefix: "apprunner"
+      },
+      appstream: {
+        iamPrefix: "appstream"
+      },
+      appsync: {
+        iamPrefix: "appsync"
+      },
+      apptest: {
+        iamPrefix: "apptest"
+      },
+      "arc-zonal-shift": {
+        iamPrefix: "arc-zonal-shift"
+      },
+      artifact: {
+        iamPrefix: "artifact"
+      },
+      athena: {
+        iamPrefix: "athena"
+      },
+      auditmanager: {
+        iamPrefix: "auditmanager"
+      },
+      "auto-scaling-plans": {
+        iamPrefix: "autoscaling-plans"
+      },
+      "auto-scaling": {
+        iamPrefix: "autoscaling"
+      },
+      b2bi: {
+        iamPrefix: "b2bi"
+      },
+      "backup-gateway": {
+        iamPrefix: "backup-gateway"
+      },
+      backup: {
+        iamPrefix: "backup"
+      },
+      backupsearch: {
+        iamPrefix: "backup-search"
+      },
+      batch: {
+        iamPrefix: "batch"
+      },
+      "bcm-data-exports": {
+        iamPrefix: "bcm-data-exports"
+      },
+      "bcm-pricing-calculator": {
+        iamPrefix: "bcm-pricing-calculator"
+      },
+      "bedrock-agent-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-agent": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-runtime": {
+        iamPrefix: "bedrock"
+      },
+      bedrock: {
+        iamPrefix: "bedrock"
+      },
+      billing: {
+        iamPrefix: "billing"
+      },
+      billingconductor: {
+        iamPrefix: "billingconductor"
+      },
+      braket: {
+        iamPrefix: "braket"
+      },
+      budgets: {
+        iamPrefix: "budgets"
+      },
+      chatbot: {
+        iamPrefix: "chatbot"
+      },
+      "chime-sdk-identity": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-media-pipelines": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-meetings": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-messaging": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-voice": {
+        iamPrefix: "chime"
+      },
+      chime: {
+        iamPrefix: "chime"
+      },
+      cleanrooms: {
+        iamPrefix: "cleanrooms"
+      },
+      cleanroomsml: {
+        iamPrefix: "cleanrooms-ml"
+      },
+      cloud9: {
+        iamPrefix: "cloud9"
+      },
+      cloudcontrol: {
+        iamPrefix: "cloudcontrolapi"
+      },
+      clouddirectory: {
+        iamPrefix: "clouddirectory"
+      },
+      cloudformation: {
+        iamPrefix: "cloudformation"
+      },
+      "cloudfront-keyvaluestore": {
+        iamPrefix: "cloudfront-keyvaluestore"
+      },
+      cloudfront: {
+        iamPrefix: "cloudfront"
+      },
+      "cloudhsm-v2": {
+        iamPrefix: "cloudhsm"
+      },
+      cloudhsm: {
+        iamPrefix: "cloudhsm"
+      },
+      "cloudsearch-domain": {
+        iamPrefix: "cloudsearch"
+      },
+      cloudsearch: {
+        iamPrefix: "cloudsearch"
+      },
+      "cloudtrail-data": {
+        iamPrefix: "cloudtrail-data"
+      },
+      cloudtrail: {
+        iamPrefix: "cloudtrail"
+      },
+      "cloudwatch-events": {
+        iamPrefix: "events"
+      },
+      "cloudwatch-logs": {
+        iamPrefix: "logs"
+      },
+      cloudwatch: {
+        iamPrefix: "cloudwatch"
+      },
+      codeartifact: {
+        iamPrefix: "codeartifact"
+      },
+      codebuild: {
+        iamPrefix: "codebuild"
+      },
+      codecatalyst: {},
+      codecommit: {
+        iamPrefix: "codecommit"
+      },
+      codeconnections: {
+        iamPrefix: "codeconnections"
+      },
+      codedeploy: {
+        iamPrefix: "codedeploy"
+      },
+      "codeguru-reviewer": {
+        iamPrefix: "codeguru-reviewer"
+      },
+      "codeguru-security": {
+        iamPrefix: "codeguru-security"
+      },
+      codeguruprofiler: {
+        iamPrefix: "codeguru-profiler"
+      },
+      codepipeline: {
+        iamPrefix: "codepipeline"
+      },
+      "codestar-connections": {
+        iamPrefix: "codestar-connections"
+      },
+      "codestar-notifications": {
+        iamPrefix: "codestar-notifications"
+      },
+      "cognito-identity-provider": {
+        iamPrefix: "cognito-idp"
+      },
+      "cognito-identity": {
+        iamPrefix: "cognito-identity"
+      },
+      "cognito-sync": {
+        iamPrefix: "cognito-sync"
+      },
+      comprehend: {
+        iamPrefix: "comprehend"
+      },
+      comprehendmedical: {
+        iamPrefix: "comprehendmedical"
+      },
+      "compute-optimizer": {
+        iamPrefix: "compute-optimizer"
+      },
+      "config-service": {
+        iamPrefix: "config"
+      },
+      "connect-contact-lens": {
+        iamPrefix: "connect"
+      },
+      connect: {
+        iamPrefix: "connect"
+      },
+      connectcampaigns: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcampaignsv2: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcases: {
+        iamPrefix: "cases"
+      },
+      connectparticipant: {
+        iamPrefix: "execute-api"
+      },
+      controlcatalog: {
+        iamPrefix: "controlcatalog"
+      },
+      controltower: {
+        iamPrefix: "controltower"
+      },
+      "cost-and-usage-report-service": {
+        iamPrefix: "cur"
+      },
+      "cost-explorer": {
+        iamPrefix: "ce"
+      },
+      "cost-optimization-hub": {
+        iamPrefix: "cost-optimization-hub"
+      },
+      "customer-profiles": {
+        iamPrefix: "profile"
+      },
+      "data-pipeline": {
+        iamPrefix: "datapipeline"
+      },
+      "database-migration-service": {
+        iamPrefix: "dms"
+      },
+      databrew: {
+        iamPrefix: "databrew"
+      },
+      dataexchange: {
+        iamPrefix: "dataexchange"
+      },
+      datasync: {
+        iamPrefix: "datasync"
+      },
+      datazone: {
+        iamPrefix: "datazone"
+      },
+      dax: {
+        iamPrefix: "dax"
+      },
+      deadline: {
+        iamPrefix: "deadline"
+      },
+      detective: {
+        iamPrefix: "detective"
+      },
+      "device-farm": {
+        iamPrefix: "devicefarm"
+      },
+      "devops-guru": {
+        iamPrefix: "devops-guru"
+      },
+      "direct-connect": {
+        iamPrefix: "directconnect"
+      },
+      "directory-service-data": {
+        iamPrefix: "ds-data"
+      },
+      "directory-service": {
+        iamPrefix: "ds"
+      },
+      dlm: {
+        iamPrefix: "dlm"
+      },
+      "docdb-elastic": {
+        iamPrefix: "docdb-elastic"
+      },
+      docdb: {
+        iamPrefix: "rds"
+      },
+      drs: {
+        iamPrefix: "drs"
+      },
+      dsql: {
+        iamPrefix: "dsql"
+      },
+      "dynamodb-streams": {
+        iamPrefix: "dynamodb"
+      },
+      dynamodb: {
+        iamPrefix: "dynamodb"
+      },
+      ebs: {
+        iamPrefix: "ebs"
+      },
+      "ec2-instance-connect": {
+        iamPrefix: "ec2-instance-connect"
+      },
+      ec2: {
+        iamPrefix: "ec2"
+      },
+      "ecr-public": {
+        iamPrefix: "ecr-public"
+      },
+      ecr: {
+        iamPrefix: "ecr"
+      },
+      ecs: {
+        iamPrefix: "ecs",
+        commands: [
+          "ExecuteCommand"
+        ]
+      },
+      efs: {
+        iamPrefix: "elasticfilesystem"
+      },
+      "eks-auth": {
+        iamPrefix: "eks-auth"
+      },
+      eks: {
+        iamPrefix: "eks"
+      },
+      "elastic-beanstalk": {
+        iamPrefix: "elasticbeanstalk"
+      },
+      "elastic-load-balancing-v2": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-load-balancing": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-transcoder": {
+        iamPrefix: "elastictranscoder"
+      },
+      elasticache: {
+        iamPrefix: "elasticache"
+      },
+      "elasticsearch-service": {
+        iamPrefix: "es"
+      },
+      "emr-containers": {
+        iamPrefix: "emr-containers"
+      },
+      "emr-serverless": {
+        iamPrefix: "emr-serverless"
+      },
+      emr: {
+        iamPrefix: "elasticmapreduce"
+      },
+      entityresolution: {
+        iamPrefix: "entityresolution"
+      },
+      eventbridge: {
+        iamPrefix: "events"
+      },
+      evidently: {
+        iamPrefix: "evidently"
+      },
+      "finspace-data": {
+        iamPrefix: "finspace-api"
+      },
+      finspace: {
+        iamPrefix: "finspace"
+      },
+      firehose: {
+        iamPrefix: "firehose"
+      },
+      fis: {
+        iamPrefix: "fis"
+      },
+      fms: {
+        iamPrefix: "fms"
+      },
+      forecast: {
+        iamPrefix: "forecast"
+      },
+      forecastquery: {
+        iamPrefix: "forecast"
+      },
+      frauddetector: {
+        iamPrefix: "frauddetector"
+      },
+      freetier: {
+        iamPrefix: "freetier"
+      },
+      fsx: {
+        iamPrefix: "fsx"
+      },
+      gamelift: {
+        iamPrefix: "gamelift"
+      },
+      gameliftstreams: {
+        iamPrefix: "gameliftstreams"
+      },
+      "geo-maps": {
+        iamPrefix: "geo-maps"
+      },
+      "geo-places": {
+        iamPrefix: "geo-places"
+      },
+      "geo-routes": {
+        iamPrefix: "geo-routes"
+      },
+      glacier: {
+        iamPrefix: "glacier"
+      },
+      "global-accelerator": {
+        iamPrefix: "globalaccelerator"
+      },
+      glue: {
+        iamPrefix: "glue"
+      },
+      grafana: {
+        iamPrefix: "grafana"
+      },
+      greengrass: {
+        iamPrefix: "greengrass"
+      },
+      greengrassv2: {
+        iamPrefix: "greengrass"
+      },
+      groundstation: {
+        iamPrefix: "groundstation"
+      },
+      guardduty: {
+        iamPrefix: "guardduty"
+      },
+      health: {
+        iamPrefix: "health"
+      },
+      healthlake: {
+        iamPrefix: "healthlake"
+      },
+      iam: {
+        iamPrefix: "iam"
+      },
+      identitystore: {
+        iamPrefix: "identitystore"
+      },
+      imagebuilder: {
+        iamPrefix: "imagebuilder"
+      },
+      "inspector-scan": {
+        iamPrefix: "inspector-scan"
+      },
+      inspector: {
+        iamPrefix: "inspector"
+      },
+      inspector2: {
+        iamPrefix: "inspector2"
+      },
+      internetmonitor: {
+        iamPrefix: "internetmonitor"
+      },
+      invoicing: {
+        iamPrefix: "invoicing"
+      },
+      "iot-data-plane": {
+        iamPrefix: "iotdata"
+      },
+      "iot-events-data": {
+        iamPrefix: "ioteventsdata"
+      },
+      "iot-events": {
+        iamPrefix: "iotevents"
+      },
+      "iot-jobs-data-plane": {
+        iamPrefix: "iot-jobs-data"
+      },
+      "iot-managed-integrations": {
+        iamPrefix: "iotmanagedintegrations"
+      },
+      "iot-wireless": {
+        iamPrefix: "iotwireless"
+      },
+      iot: {
+        iamPrefix: "iot",
+        commands: [
+          "CreateCommand",
+          "DeleteCommand",
+          "GetCommand",
+          "UpdateCommand"
+        ]
+      },
+      iotanalytics: {
+        iamPrefix: "iotanalytics"
+      },
+      iotdeviceadvisor: {
+        iamPrefix: "iotdeviceadvisor"
+      },
+      iotfleethub: {
+        iamPrefix: "iotfleethub"
+      },
+      iotfleetwise: {
+        iamPrefix: "iotfleetwise"
+      },
+      iotsecuretunneling: {
+        iamPrefix: "IoTSecuredTunneling"
+      },
+      iotsitewise: {
+        iamPrefix: "iotsitewise"
+      },
+      iotthingsgraph: {
+        iamPrefix: "iotthingsgraph"
+      },
+      iottwinmaker: {
+        iamPrefix: "iottwinmaker"
+      },
+      "ivs-realtime": {
+        iamPrefix: "ivs"
+      },
+      ivs: {
+        iamPrefix: "ivs"
+      },
+      ivschat: {
+        iamPrefix: "ivschat"
+      },
+      kafka: {
+        iamPrefix: "kafka"
+      },
+      kafkaconnect: {
+        iamPrefix: "kafkaconnect"
+      },
+      "kendra-ranking": {
+        iamPrefix: "kendra-ranking"
+      },
+      kendra: {
+        iamPrefix: "kendra"
+      },
+      keyspaces: {
+        iamPrefix: "cassandra"
+      },
+      "kinesis-analytics-v2": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-analytics": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-video-archived-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-signaling": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-webrtc-storage": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video": {
+        iamPrefix: "kinesisvideo"
+      },
+      kinesis: {
+        iamPrefix: "kinesis"
+      },
+      kms: {
+        iamPrefix: "kms"
+      },
+      lakeformation: {
+        iamPrefix: "lakeformation"
+      },
+      lambda: {
+        iamPrefix: "lambda"
+      },
+      "launch-wizard": {
+        iamPrefix: "launchwizard"
+      },
+      "lex-model-building-service": {
+        iamPrefix: "lex"
+      },
+      "lex-models-v2": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-service": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-v2": {
+        iamPrefix: "lex"
+      },
+      "license-manager-linux-subscriptions": {
+        iamPrefix: "license-manager-linux-subscriptions"
+      },
+      "license-manager-user-subscriptions": {
+        iamPrefix: "license-manager-user-subscriptions"
+      },
+      "license-manager": {
+        iamPrefix: "license-manager"
+      },
+      lightsail: {
+        iamPrefix: "lightsail"
+      },
+      location: {
+        iamPrefix: "geo"
+      },
+      lookoutequipment: {
+        iamPrefix: "lookoutequipment"
+      },
+      lookoutmetrics: {
+        iamPrefix: "lookoutmetrics"
+      },
+      lookoutvision: {
+        iamPrefix: "lookoutvision"
+      },
+      m2: {
+        iamPrefix: "m2"
+      },
+      "machine-learning": {
+        iamPrefix: "machinelearning"
+      },
+      macie2: {
+        iamPrefix: "macie2"
+      },
+      mailmanager: {
+        iamPrefix: "ses"
+      },
+      "managedblockchain-query": {
+        iamPrefix: "managedblockchain-query"
+      },
+      managedblockchain: {
+        iamPrefix: "managedblockchain"
+      },
+      "marketplace-agreement": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-catalog": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-commerce-analytics": {
+        iamPrefix: "marketplacecommerceanalytics"
+      },
+      "marketplace-deployment": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-entitlement-service": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-metering": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-reporting": {
+        iamPrefix: "aws-marketplace"
+      },
+      mediaconnect: {
+        iamPrefix: "mediaconnect"
+      },
+      mediaconvert: {
+        iamPrefix: "mediaconvert"
+      },
+      medialive: {
+        iamPrefix: "medialive"
+      },
+      "mediapackage-vod": {
+        iamPrefix: "mediapackage-vod"
+      },
+      mediapackage: {
+        iamPrefix: "mediapackage"
+      },
+      mediapackagev2: {
+        iamPrefix: "mediapackagev2"
+      },
+      "mediastore-data": {
+        iamPrefix: "mediastore"
+      },
+      mediastore: {
+        iamPrefix: "mediastore"
+      },
+      mediatailor: {
+        iamPrefix: "mediatailor"
+      },
+      "medical-imaging": {
+        iamPrefix: "medical-imaging"
+      },
+      memorydb: {
+        iamPrefix: "memorydb"
+      },
+      mgn: {
+        iamPrefix: "mgn"
+      },
+      "migration-hub-refactor-spaces": {
+        iamPrefix: "refactor-spaces"
+      },
+      "migration-hub": {
+        iamPrefix: "mgh"
+      },
+      "migrationhub-config": {
+        iamPrefix: "mgh"
+      },
+      migrationhuborchestrator: {
+        iamPrefix: "migrationhub-orchestrator"
+      },
+      migrationhubstrategy: {
+        iamPrefix: "migrationhub-strategy"
+      },
+      mq: {
+        iamPrefix: "mq"
+      },
+      mturk: {
+        iamPrefix: "mturk-requester"
+      },
+      mwaa: {
+        iamPrefix: "airflow"
+      },
+      "neptune-graph": {
+        iamPrefix: "neptune-graph"
+      },
+      neptune: {
+        iamPrefix: "rds"
+      },
+      neptunedata: {
+        iamPrefix: "neptune-db"
+      },
+      "network-firewall": {
+        iamPrefix: "network-firewall"
+      },
+      networkflowmonitor: {
+        iamPrefix: "networkflowmonitor"
+      },
+      networkmanager: {
+        iamPrefix: "networkmanager"
+      },
+      networkmonitor: {
+        iamPrefix: "networkmonitor"
+      },
+      notifications: {
+        iamPrefix: "notifications"
+      },
+      notificationscontacts: {
+        iamPrefix: "notifications-contacts"
+      },
+      oam: {
+        iamPrefix: "oam"
+      },
+      observabilityadmin: {
+        iamPrefix: "observabilityadmin"
+      },
+      omics: {
+        iamPrefix: "omics"
+      },
+      opensearch: {
+        iamPrefix: "es"
+      },
+      opensearchserverless: {
+        iamPrefix: "aoss"
+      },
+      opsworks: {
+        iamPrefix: "opsworks"
+      },
+      opsworkscm: {
+        iamPrefix: "opsworks-cm"
+      },
+      organizations: {
+        iamPrefix: "organizations"
+      },
+      osis: {
+        iamPrefix: "osis"
+      },
+      outposts: {
+        iamPrefix: "outposts"
+      },
+      panorama: {
+        iamPrefix: "panorama"
+      },
+      "partnercentral-selling": {
+        iamPrefix: "partnercentral-selling"
+      },
+      "payment-cryptography-data": {
+        iamPrefix: "payment-cryptography"
+      },
+      "payment-cryptography": {
+        iamPrefix: "payment-cryptography"
+      },
+      "pca-connector-ad": {
+        iamPrefix: "pca-connector-ad"
+      },
+      "pca-connector-scep": {
+        iamPrefix: "pca-connector-scep"
+      },
+      pcs: {
+        iamPrefix: "pcs"
+      },
+      "personalize-events": {
+        iamPrefix: "personalize"
+      },
+      "personalize-runtime": {
+        iamPrefix: "personalize"
+      },
+      personalize: {
+        iamPrefix: "personalize"
+      },
+      pi: {
+        iamPrefix: "pi"
+      },
+      "pinpoint-email": {
+        iamPrefix: "ses"
+      },
+      "pinpoint-sms-voice-v2": {
+        iamPrefix: "sms-voice"
+      },
+      "pinpoint-sms-voice": {
+        iamPrefix: "sms-voice"
+      },
+      pinpoint: {
+        iamPrefix: "mobiletargeting"
+      },
+      pipes: {
+        iamPrefix: "pipes"
+      },
+      polly: {
+        iamPrefix: "polly"
+      },
+      pricing: {
+        iamPrefix: "pricing"
+      },
+      proton: {
+        iamPrefix: "proton"
+      },
+      qapps: {
+        iamPrefix: "qapps"
+      },
+      qbusiness: {
+        iamPrefix: "qbusiness"
+      },
+      qconnect: {
+        iamPrefix: "wisdom"
+      },
+      "qldb-session": {
+        iamPrefix: "qldb",
+        commands: [
+          "SendCommand"
+        ]
+      },
+      qldb: {
+        iamPrefix: "qldb"
+      },
+      quicksight: {
+        iamPrefix: "quicksight"
+      },
+      ram: {
+        iamPrefix: "ram"
+      },
+      rbin: {
+        iamPrefix: "rbin"
+      },
+      "rds-data": {
+        iamPrefix: "rds-data"
+      },
+      rds: {
+        iamPrefix: "rds"
+      },
+      "redshift-data": {
+        iamPrefix: "redshift-data"
+      },
+      "redshift-serverless": {
+        iamPrefix: "redshift-serverless"
+      },
+      redshift: {
+        iamPrefix: "redshift"
+      },
+      rekognition: {
+        iamPrefix: "rekognition"
+      },
+      rekognitionstreaming: {
+        iamPrefix: "rekognition"
+      },
+      repostspace: {
+        iamPrefix: "repostspace"
+      },
+      resiliencehub: {
+        iamPrefix: "resiliencehub"
+      },
+      "resource-explorer-2": {
+        iamPrefix: "resource-explorer-2"
+      },
+      "resource-groups-tagging-api": {
+        iamPrefix: "tagging"
+      },
+      "resource-groups": {
+        iamPrefix: "resource-groups"
+      },
+      robomaker: {
+        iamPrefix: "robomaker"
+      },
+      rolesanywhere: {
+        iamPrefix: "rolesanywhere"
+      },
+      "route-53-domains": {
+        iamPrefix: "route53domains"
+      },
+      "route-53": {
+        iamPrefix: "route53"
+      },
+      "route53-recovery-cluster": {
+        iamPrefix: "route53-recovery-cluster"
+      },
+      "route53-recovery-control-config": {
+        iamPrefix: "route53-recovery-control-config"
+      },
+      "route53-recovery-readiness": {
+        iamPrefix: "route53-recovery-readiness"
+      },
+      route53profiles: {
+        iamPrefix: "route53profiles"
+      },
+      route53resolver: {
+        iamPrefix: "route53resolver"
+      },
+      rum: {
+        iamPrefix: "rum"
+      },
+      "s3-control": {
+        iamPrefix: "s3"
+      },
+      s3: {
+        iamPrefix: "s3"
+      },
+      s3outposts: {
+        iamPrefix: "s3-outposts"
+      },
+      s3tables: {
+        iamPrefix: "s3tables"
+      },
+      "sagemaker-a2i-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-edge": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-featurestore-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-geospatial": {
+        iamPrefix: "sagemaker-geospatial"
+      },
+      "sagemaker-metrics": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      sagemaker: {
+        iamPrefix: "sagemaker"
+      },
+      savingsplans: {
+        iamPrefix: "savingsplans"
+      },
+      scheduler: {
+        iamPrefix: "scheduler"
+      },
+      schemas: {
+        iamPrefix: "schemas"
+      },
+      "secrets-manager": {
+        iamPrefix: "secretsmanager"
+      },
+      "security-ir": {
+        iamPrefix: "security-ir"
+      },
+      securityhub: {
+        iamPrefix: "securityhub"
+      },
+      securitylake: {
+        iamPrefix: "securitylake"
+      },
+      serverlessapplicationrepository: {
+        iamPrefix: "serverlessrepo"
+      },
+      "service-catalog-appregistry": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-catalog": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-quotas": {
+        iamPrefix: "servicequotas"
+      },
+      servicediscovery: {
+        iamPrefix: "servicediscovery"
+      },
+      ses: {
+        iamPrefix: "ses"
+      },
+      sesv2: {
+        iamPrefix: "ses"
+      },
+      sfn: {
+        iamPrefix: "states"
+      },
+      shield: {
+        iamPrefix: "shield"
+      },
+      signer: {
+        iamPrefix: "signer"
+      },
+      simspaceweaver: {
+        iamPrefix: "simspaceweaver"
+      },
+      sms: {
+        iamPrefix: "sms"
+      },
+      "snow-device-management": {
+        iamPrefix: "snow-device-management"
+      },
+      snowball: {
+        iamPrefix: "snowball"
+      },
+      sns: {
+        iamPrefix: "sns"
+      },
+      socialmessaging: {
+        iamPrefix: "social-messaging"
+      },
+      sqs: {
+        iamPrefix: "sqs"
+      },
+      "ssm-contacts": {
+        iamPrefix: "ssm-contacts"
+      },
+      "ssm-guiconnect": {
+        iamPrefix: "ssm-guiconnect"
+      },
+      "ssm-incidents": {
+        iamPrefix: "ssm-incidents"
+      },
+      "ssm-quicksetup": {
+        iamPrefix: "ssm-quicksetup"
+      },
+      "ssm-sap": {
+        iamPrefix: "ssm-sap"
+      },
+      ssm: {
+        iamPrefix: "ssm",
+        commands: [
+          "CancelCommand",
+          "SendCommand"
+        ]
+      },
+      "sso-admin": {
+        iamPrefix: "sso"
+      },
+      "sso-oidc": {
+        iamPrefix: "sso-oauth"
+      },
+      sso: {
+        iamPrefix: "awsssoportal"
+      },
+      "storage-gateway": {
+        iamPrefix: "storagegateway"
+      },
+      sts: {
+        iamPrefix: "sts"
+      },
+      supplychain: {
+        iamPrefix: "scn"
+      },
+      "support-app": {
+        iamPrefix: "supportapp"
+      },
+      support: {
+        iamPrefix: "support"
+      },
+      swf: {
+        iamPrefix: "swf"
+      },
+      synthetics: {
+        iamPrefix: "synthetics"
+      },
+      taxsettings: {
+        iamPrefix: "tax"
+      },
+      textract: {
+        iamPrefix: "textract"
+      },
+      "timestream-influxdb": {
+        iamPrefix: "timestream-influxdb"
+      },
+      "timestream-query": {
+        iamPrefix: "timestream"
+      },
+      "timestream-write": {
+        iamPrefix: "timestream"
+      },
+      tnb: {
+        iamPrefix: "tnb"
+      },
+      "transcribe-streaming": {
+        iamPrefix: "transcribe"
+      },
+      transcribe: {
+        iamPrefix: "transcribe"
+      },
+      transfer: {
+        iamPrefix: "transfer"
+      },
+      translate: {
+        iamPrefix: "translate"
+      },
+      trustedadvisor: {
+        iamPrefix: "trustedadvisor"
+      },
+      verifiedpermissions: {
+        iamPrefix: "verifiedpermissions"
+      },
+      "voice-id": {
+        iamPrefix: "voiceid"
+      },
+      "vpc-lattice": {
+        iamPrefix: "vpc-lattice"
+      },
+      "waf-regional": {
+        iamPrefix: "waf-regional"
+      },
+      waf: {
+        iamPrefix: "waf"
+      },
+      wafv2: {
+        iamPrefix: "wafv2"
+      },
+      wellarchitected: {
+        iamPrefix: "wellarchitected"
+      },
+      wisdom: {
+        iamPrefix: "wisdom"
+      },
+      workdocs: {
+        iamPrefix: "workdocs"
+      },
+      workmail: {
+        iamPrefix: "workmail"
+      },
+      workmailmessageflow: {
+        iamPrefix: "workmailmessageflow"
+      },
+      "workspaces-thin-client": {
+        iamPrefix: "thinclient"
+      },
+      "workspaces-web": {
+        iamPrefix: "workspaces-web"
+      },
+      workspaces: {
+        iamPrefix: "workspaces"
+      },
+      xray: {
+        iamPrefix: "xray"
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-info.ts
+var sdk_info_exports = {};
+__export(sdk_info_exports, {
+  normalizeActionName: () => normalizeActionName,
+  normalizeServiceName: () => normalizeServiceName
+});
+function normalizeServiceName(service) {
+  service = service.toLowerCase();
+  service = service.replace(/^@aws-sdk\/client-/, "");
+  service = v2ToV3Mapping()?.[service] ?? service;
+  return service;
+}
+function normalizeActionName(v3Service, action) {
+  if (action.charAt(0).toLowerCase() === action.charAt(0)) {
+    return action.charAt(0).toUpperCase() + action.slice(1);
+  }
+  if (v3Metadata()[v3Service]?.commands?.includes(action)) {
+    return action;
+  }
+  return action.replace(/Command$/, "");
+}
+function v2ToV3Mapping() {
+  return require_sdk_v2_to_v3();
+}
+function v3Metadata() {
+  return require_sdk_v3_metadata();
+}
+var init_sdk_info = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-info.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/api-call.ts
+var api_call_exports = {};
+__export(api_call_exports, {
+  ApiCall: () => ApiCall,
+  coerceSdkv3Response: () => coerceSdkv3Response,
+  flatten: () => flatten2
+});
+function flatten2(root) {
+  const ret = {};
+  recurse(root);
+  return ret;
+  function recurse(x, path23 = []) {
+    if (x && typeof x === "object") {
+      for (const [key, value] of Object.entries(x)) {
+        recurse(value, [...path23, key]);
+      }
+      return;
+    }
+    ret[path23.join(".")] = x;
+  }
+}
+async function coerceSdkv3Response(value) {
+  if (value && typeof value === "object" && typeof value.transformToString === "function") {
+    return value.transformToString();
+  }
+  if (Buffer.isBuffer(value)) {
+    return value.toString("utf8");
+  }
+  if (ArrayBuffer.isView(value)) {
+    return decoder.decode(value.buffer);
+  }
+  if (Array.isArray(value)) {
+    const ret = [];
+    for (const x of value) {
+      ret.push(await coerceSdkv3Response(x));
+    }
+    return ret;
+  }
+  if (value && typeof value === "object") {
+    for (const key of Object.keys(value)) {
+      value[key] = await coerceSdkv3Response(value[key]);
+    }
+    return value;
+  }
+  return value;
+}
+var ApiCall, decoder;
+var init_api_call = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/api-call.ts"() {
+    "use strict";
+    init_coerce_api_parameters();
+    init_find_client_constructor();
+    init_sdk_info();
+    ApiCall = class {
+      service;
+      action;
+      v3PackageName;
+      v3Package;
+      // For testing purposes
+      client;
+      // For testing purposes
+      constructor(service, action) {
+        this.service = normalizeServiceName(service);
+        this.action = normalizeActionName(this.service, action);
+        this.v3PackageName = `@aws-sdk/client-${this.service}`;
+      }
+      async invoke(options) {
+        this.initializePackage(options.sdkPackage);
+        this.initializeClient(options);
+        const Command = this.findCommandClass();
+        const response = await this.client.send(
+          new Command(coerceApiParameters(this.service, this.action, options.parameters ?? {}))
+        );
+        delete response.$metadata;
+        const coerced = await coerceSdkv3Response(response);
+        return options.flattenResponse ? flatten2(coerced) : coerced;
+      }
+      initializePackage(packageOverride) {
+        if (this.v3Package) {
+          return;
+        }
+        if (packageOverride) {
+          this.v3Package = packageOverride;
+          return;
+        }
+        try {
+          this.v3Package = require(this.v3PackageName);
+        } catch (e) {
+          throw Error(`Service ${this.service} client package with name '${this.v3PackageName}' does not exist.`);
+        }
+      }
+      initializeClient(options) {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const ServiceClient = this.findConstructor(this.v3Package);
+        this.client = new ServiceClient({
+          apiVersion: options.apiVersion,
+          credentials: options.credentials,
+          region: options.region
+        });
+        return this.client;
+      }
+      findCommandClass() {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const commandName = `${this.action}Command`;
+        const Command = Object.entries(this.v3Package ?? {}).find(
+          ([name]) => name.toLowerCase() === commandName.toLowerCase()
+        )?.[1];
+        if (!Command) {
+          throw new Error(`Unable to find command named: ${commandName} for action: ${this.action} in service package ${this.v3PackageName}`);
+        }
+        return Command;
+      }
+      findConstructor(pkg) {
+        try {
+          const ret = findV3ClientConstructor(pkg);
+          if (!ret) {
+            throw new Error("findV3ClientConstructor returned undefined");
+          }
+          return ret;
+        } catch (e) {
+          console.error(e);
+          throw Error(`No client constructor found within package: ${this.v3PackageName}`);
+        }
+      }
+    };
+    decoder = new TextDecoder();
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/index.js
+var require_lib6 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.normalizeActionName = exports2.normalizeServiceName = exports2.findV3ClientConstructor = exports2.coerceApiParameters = void 0;
+    var coerce_api_parameters_1 = (init_coerce_api_parameters(), __toCommonJS(coerce_api_parameters_exports));
+    Object.defineProperty(exports2, "coerceApiParameters", { enumerable: true, get: function() {
+      return coerce_api_parameters_1.coerceApiParameters;
+    } });
+    var find_client_constructor_1 = (init_find_client_constructor(), __toCommonJS(find_client_constructor_exports));
+    Object.defineProperty(exports2, "findV3ClientConstructor", { enumerable: true, get: function() {
+      return find_client_constructor_1.findV3ClientConstructor;
+    } });
+    var sdk_info_1 = (init_sdk_info(), __toCommonJS(sdk_info_exports));
+    Object.defineProperty(exports2, "normalizeServiceName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeServiceName;
+    } });
+    Object.defineProperty(exports2, "normalizeActionName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeActionName;
+    } });
+    __exportStar2((init_api_call(), __toCommonJS(api_call_exports)), exports2);
+  }
+});
+
+// ../../../node_modules/webidl-conversions/lib/index.js
+var require_lib7 = __commonJS({
+  "../../../node_modules/webidl-conversions/lib/index.js"(exports2, module2) {
+    "use strict";
+    var conversions = {};
+    module2.exports = conversions;
+    function sign(x) {
+      return x < 0 ? -1 : 1;
+    }
+    function evenRound(x) {
+      if (x % 1 === 0.5 && (x & 1) === 0) {
+        return Math.floor(x);
+      } else {
+        return Math.round(x);
+      }
+    }
+    function createNumberConversion(bitLength, typeOpts) {
+      if (!typeOpts.unsigned) {
+        --bitLength;
+      }
+      const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength);
+      const upperBound = Math.pow(2, bitLength) - 1;
+      const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength);
+      const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1);
+      return function(V, opts) {
+        if (!opts) opts = {};
+        let x = +V;
+        if (opts.enforceRange) {
+          if (!Number.isFinite(x)) {
+            throw new TypeError("Argument is not a finite number");
+          }
+          x = sign(x) * Math.floor(Math.abs(x));
+          if (x < lowerBound || x > upperBound) {
+            throw new TypeError("Argument is not in byte range");
+          }
+          return x;
+        }
+        if (!isNaN(x) && opts.clamp) {
+          x = evenRound(x);
+          if (x < lowerBound) x = lowerBound;
+          if (x > upperBound) x = upperBound;
+          return x;
+        }
+        if (!Number.isFinite(x) || x === 0) {
+          return 0;
+        }
+        x = sign(x) * Math.floor(Math.abs(x));
+        x = x % moduloVal;
+        if (!typeOpts.unsigned && x >= moduloBound) {
+          return x - moduloVal;
+        } else if (typeOpts.unsigned) {
+          if (x < 0) {
+            x += moduloVal;
+          } else if (x === -0) {
+            return 0;
+          }
+        }
+        return x;
+      };
+    }
+    conversions["void"] = function() {
+      return void 0;
+    };
+    conversions["boolean"] = function(val2) {
+      return !!val2;
+    };
+    conversions["byte"] = createNumberConversion(8, { unsigned: false });
+    conversions["octet"] = createNumberConversion(8, { unsigned: true });
+    conversions["short"] = createNumberConversion(16, { unsigned: false });
+    conversions["unsigned short"] = createNumberConversion(16, { unsigned: true });
+    conversions["long"] = createNumberConversion(32, { unsigned: false });
+    conversions["unsigned long"] = createNumberConversion(32, { unsigned: true });
+    conversions["long long"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 });
+    conversions["unsigned long long"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 });
+    conversions["double"] = function(V) {
+      const x = +V;
+      if (!Number.isFinite(x)) {
+        throw new TypeError("Argument is not a finite floating-point value");
+      }
+      return x;
+    };
+    conversions["unrestricted double"] = function(V) {
+      const x = +V;
+      if (isNaN(x)) {
+        throw new TypeError("Argument is NaN");
+      }
+      return x;
+    };
+    conversions["float"] = conversions["double"];
+    conversions["unrestricted float"] = conversions["unrestricted double"];
+    conversions["DOMString"] = function(V, opts) {
+      if (!opts) opts = {};
+      if (opts.treatNullAsEmptyString && V === null) {
+        return "";
+      }
+      return String(V);
+    };
+    conversions["ByteString"] = function(V, opts) {
+      const x = String(V);
+      let c = void 0;
+      for (let i = 0; (c = x.codePointAt(i)) !== void 0; ++i) {
+        if (c > 255) {
+          throw new TypeError("Argument is not a valid bytestring");
+        }
+      }
+      return x;
+    };
+    conversions["USVString"] = function(V) {
+      const S = String(V);
+      const n = S.length;
+      const U = [];
+      for (let i = 0; i < n; ++i) {
+        const c = S.charCodeAt(i);
+        if (c < 55296 || c > 57343) {
+          U.push(String.fromCodePoint(c));
+        } else if (56320 <= c && c <= 57343) {
+          U.push(String.fromCodePoint(65533));
+        } else {
+          if (i === n - 1) {
+            U.push(String.fromCodePoint(65533));
+          } else {
+            const d = S.charCodeAt(i + 1);
+            if (56320 <= d && d <= 57343) {
+              const a = c & 1023;
+              const b = d & 1023;
+              U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b));
+              ++i;
+            } else {
+              U.push(String.fromCodePoint(65533));
+            }
+          }
+        }
+      }
+      return U.join("");
+    };
+    conversions["Date"] = function(V, opts) {
+      if (!(V instanceof Date)) {
+        throw new TypeError("Argument is not a Date object");
+      }
+      if (isNaN(V)) {
+        return void 0;
+      }
+      return V;
+    };
+    conversions["RegExp"] = function(V, opts) {
+      if (!(V instanceof RegExp)) {
+        V = new RegExp(V);
+      }
+      return V;
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/utils.js
+var require_utils3 = __commonJS({
+  "../../../node_modules/whatwg-url/lib/utils.js"(exports2, module2) {
+    "use strict";
+    module2.exports.mixin = function mixin(target, source) {
+      const keys = Object.getOwnPropertyNames(source);
+      for (let i = 0; i < keys.length; ++i) {
+        Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));
+      }
+    };
+    module2.exports.wrapperSymbol = /* @__PURE__ */ Symbol("wrapper");
+    module2.exports.implSymbol = /* @__PURE__ */ Symbol("impl");
+    module2.exports.wrapperForImpl = function(impl) {
+      return impl[module2.exports.wrapperSymbol];
+    };
+    module2.exports.implForWrapper = function(wrapper) {
+      return wrapper[module2.exports.implSymbol];
+    };
+  }
+});
+
+// ../../../node_modules/tr46/lib/mappingTable.json
+var require_mappingTable = __commonJS({
+  "../../../node_modules/tr46/lib/mappingTable.json"(exports2, module2) {
+    module2.exports = [[[0, 44], "disallowed_STD3_valid"], [[45, 46], "valid"], [[47, 47], "disallowed_STD3_valid"], [[48, 57], "valid"], [[58, 64], "disallowed_STD3_valid"], [[65, 65], "mapped", [97]], [[66, 66], "mapped", [98]], [[67, 67], "mapped", [99]], [[68, 68], "mapped", [100]], [[69, 69], "mapped", [101]], [[70, 70], "mapped", [102]], [[71, 71], "mapped", [103]], [[72, 72], "mapped", [104]], [[73, 73], "mapped", [105]], [[74, 74], "mapped", [106]], [[75, 75], "mapped", [107]], [[76, 76], "mapped", [108]], [[77, 77], "mapped", [109]], [[78, 78], "mapped", [110]], [[79, 79], "mapped", [111]], [[80, 80], "mapped", [112]], [[81, 81], "mapped", [113]], [[82, 82], "mapped", [114]], [[83, 83], "mapped", [115]], [[84, 84], "mapped", [116]], [[85, 85], "mapped", [117]], [[86, 86], "mapped", [118]], [[87, 87], "mapped", [119]], [[88, 88], "mapped", [120]], [[89, 89], "mapped", [121]], [[90, 90], "mapped", [122]], [[91, 96], "disallowed_STD3_valid"], [[97, 122], "valid"], [[123, 127], "disallowed_STD3_valid"], [[128, 159], "disallowed"], [[160, 160], "disallowed_STD3_mapped", [32]], [[161, 167], "valid", [], "NV8"], [[168, 168], "disallowed_STD3_mapped", [32, 776]], [[169, 169], "valid", [], "NV8"], [[170, 170], "mapped", [97]], [[171, 172], "valid", [], "NV8"], [[173, 173], "ignored"], [[174, 174], "valid", [], "NV8"], [[175, 175], "disallowed_STD3_mapped", [32, 772]], [[176, 177], "valid", [], "NV8"], [[178, 178], "mapped", [50]], [[179, 179], "mapped", [51]], [[180, 180], "disallowed_STD3_mapped", [32, 769]], [[181, 181], "mapped", [956]], [[182, 182], "valid", [], "NV8"], [[183, 183], "valid"], [[184, 184], "disallowed_STD3_mapped", [32, 807]], [[185, 185], "mapped", [49]], [[186, 186], "mapped", [111]], [[187, 187], "valid", [], "NV8"], [[188, 188], "mapped", [49, 8260, 52]], [[189, 189], "mapped", [49, 8260, 50]], [[190, 190], "mapped", [51, 8260, 52]], [[191, 191], "valid", [], "NV8"], [[192, 192], "mapped", [224]], [[193, 193], "mapped", [225]], [[194, 194], "mapped", [226]], [[195, 195], "mapped", [227]], [[196, 196], "mapped", [228]], [[197, 197], "mapped", [229]], [[198, 198], "mapped", [230]], [[199, 199], "mapped", [231]], [[200, 200], "mapped", [232]], [[201, 201], "mapped", [233]], [[202, 202], "mapped", [234]], [[203, 203], "mapped", [235]], [[204, 204], "mapped", [236]], [[205, 205], "mapped", [237]], [[206, 206], "mapped", [238]], [[207, 207], "mapped", [239]], [[208, 208], "mapped", [240]], [[209, 209], "mapped", [241]], [[210, 210], "mapped", [242]], [[211, 211], "mapped", [243]], [[212, 212], "mapped", [244]], [[213, 213], "mapped", [245]], [[214, 214], "mapped", [246]], [[215, 215], "valid", [], "NV8"], [[216, 216], "mapped", [248]], [[217, 217], "mapped", [249]], [[218, 218], "mapped", [250]], [[219, 219], "mapped", [251]], [[220, 220], "mapped", [252]], [[221, 221], "mapped", [253]], [[222, 222], "mapped", [254]], [[223, 223], "deviation", [115, 115]], [[224, 246], "valid"], [[247, 247], "valid", [], "NV8"], [[248, 255], "valid"], [[256, 256], "mapped", [257]], [[257, 257], "valid"], [[258, 258], "mapped", [259]], [[259, 259], "valid"], [[260, 260], "mapped", [261]], [[261, 261], "valid"], [[262, 262], "mapped", [263]], [[263, 263], "valid"], [[264, 264], "mapped", [265]], [[265, 265], "valid"], [[266, 266], "mapped", [267]], [[267, 267], "valid"], [[268, 268], "mapped", [269]], [[269, 269], "valid"], [[270, 270], "mapped", [271]], [[271, 271], "valid"], [[272, 272], "mapped", [273]], [[273, 273], "valid"], [[274, 274], "mapped", [275]], [[275, 275], "valid"], [[276, 276], "mapped", [277]], [[277, 277], "valid"], [[278, 278], "mapped", [279]], [[279, 279], "valid"], [[280, 280], "mapped", [281]], [[281, 281], "valid"], [[282, 282], "mapped", [283]], [[283, 283], "valid"], [[284, 284], "mapped", [285]], [[285, 285], "valid"], [[286, 286], "mapped", [287]], [[287, 287], "valid"], [[288, 288], "mapped", [289]], [[289, 289], "valid"], [[290, 290], "mapped", [291]], [[291, 291], "valid"], [[292, 292], "mapped", [293]], [[293, 293], "valid"], [[294, 294], "mapped", [295]], [[295, 295], "valid"], [[296, 296], "mapped", [297]], [[297, 297], "valid"], [[298, 298], "mapped", [299]], [[299, 299], "valid"], [[300, 300], "mapped", [301]], [[301, 301], "valid"], [[302, 302], "mapped", [303]], [[303, 303], "valid"], [[304, 304], "mapped", [105, 775]], [[305, 305], "valid"], [[306, 307], "mapped", [105, 106]], [[308, 308], "mapped", [309]], [[309, 309], "valid"], [[310, 310], "mapped", [311]], [[311, 312], "valid"], [[313, 313], "mapped", [314]], [[314, 314], "valid"], [[315, 315], "mapped", [316]], [[316, 316], "valid"], [[317, 317], "mapped", [318]], [[318, 318], "valid"], [[319, 320], "mapped", [108, 183]], [[321, 321], "mapped", [322]], [[322, 322], "valid"], [[323, 323], "mapped", [324]], [[324, 324], "valid"], [[325, 325], "mapped", [326]], [[326, 326], "valid"], [[327, 327], "mapped", [328]], [[328, 328], "valid"], [[329, 329], "mapped", [700, 110]], [[330, 330], "mapped", [331]], [[331, 331], "valid"], [[332, 332], "mapped", [333]], [[333, 333], "valid"], [[334, 334], "mapped", [335]], [[335, 335], "valid"], [[336, 336], "mapped", [337]], [[337, 337], "valid"], [[338, 338], "mapped", [339]], [[339, 339], "valid"], [[340, 340], "mapped", [341]], [[341, 341], "valid"], [[342, 342], "mapped", [343]], [[343, 343], "valid"], [[344, 344], "mapped", [345]], [[345, 345], "valid"], [[346, 346], "mapped", [347]], [[347, 347], "valid"], [[348, 348], "mapped", [349]], [[349, 349], "valid"], [[350, 350], "mapped", [351]], [[351, 351], "valid"], [[352, 352], "mapped", [353]], [[353, 353], "valid"], [[354, 354], "mapped", [355]], [[355, 355], "valid"], [[356, 356], "mapped", [357]], [[357, 357], "valid"], [[358, 358], "mapped", [359]], [[359, 359], "valid"], [[360, 360], "mapped", [361]], [[361, 361], "valid"], [[362, 362], "mapped", [363]], [[363, 363], "valid"], [[364, 364], "mapped", [365]], [[365, 365], "valid"], [[366, 366], "mapped", [367]], [[367, 367], "valid"], [[368, 368], "mapped", [369]], [[369, 369], "valid"], [[370, 370], "mapped", [371]], [[371, 371], "valid"], [[372, 372], "mapped", [373]], [[373, 373], "valid"], [[374, 374], "mapped", [375]], [[375, 375], "valid"], [[376, 376], "mapped", [255]], [[377, 377], "mapped", [378]], [[378, 378], "valid"], [[379, 379], "mapped", [380]], [[380, 380], "valid"], [[381, 381], "mapped", [382]], [[382, 382], "valid"], [[383, 383], "mapped", [115]], [[384, 384], "valid"], [[385, 385], "mapped", [595]], [[386, 386], "mapped", [387]], [[387, 387], "valid"], [[388, 388], "mapped", [389]], [[389, 389], "valid"], [[390, 390], "mapped", [596]], [[391, 391], "mapped", [392]], [[392, 392], "valid"], [[393, 393], "mapped", [598]], [[394, 394], "mapped", [599]], [[395, 395], "mapped", [396]], [[396, 397], "valid"], [[398, 398], "mapped", [477]], [[399, 399], "mapped", [601]], [[400, 400], "mapped", [603]], [[401, 401], "mapped", [402]], [[402, 402], "valid"], [[403, 403], "mapped", [608]], [[404, 404], "mapped", [611]], [[405, 405], "valid"], [[406, 406], "mapped", [617]], [[407, 407], "mapped", [616]], [[408, 408], "mapped", [409]], [[409, 411], "valid"], [[412, 412], "mapped", [623]], [[413, 413], "mapped", [626]], [[414, 414], "valid"], [[415, 415], "mapped", [629]], [[416, 416], "mapped", [417]], [[417, 417], "valid"], [[418, 418], "mapped", [419]], [[419, 419], "valid"], [[420, 420], "mapped", [421]], [[421, 421], "valid"], [[422, 422], "mapped", [640]], [[423, 423], "mapped", [424]], [[424, 424], "valid"], [[425, 425], "mapped", [643]], [[426, 427], "valid"], [[428, 428], "mapped", [429]], [[429, 429], "valid"], [[430, 430], "mapped", [648]], [[431, 431], "mapped", [432]], [[432, 432], "valid"], [[433, 433], "mapped", [650]], [[434, 434], "mapped", [651]], [[435, 435], "mapped", [436]], [[436, 436], "valid"], [[437, 437], "mapped", [438]], [[438, 438], "valid"], [[439, 439], "mapped", [658]], [[440, 440], "mapped", [441]], [[441, 443], "valid"], [[444, 444], "mapped", [445]], [[445, 451], "valid"], [[452, 454], "mapped", [100, 382]], [[455, 457], "mapped", [108, 106]], [[458, 460], "mapped", [110, 106]], [[461, 461], "mapped", [462]], [[462, 462], "valid"], [[463, 463], "mapped", [464]], [[464, 464], "valid"], [[465, 465], "mapped", [466]], [[466, 466], "valid"], [[467, 467], "mapped", [468]], [[468, 468], "valid"], [[469, 469], "mapped", [470]], [[470, 470], "valid"], [[471, 471], "mapped", [472]], [[472, 472], "valid"], [[473, 473], "mapped", [474]], [[474, 474], "valid"], [[475, 475], "mapped", [476]], [[476, 477], "valid"], [[478, 478], "mapped", [479]], [[479, 479], "valid"], [[480, 480], "mapped", [481]], [[481, 481], "valid"], [[482, 482], "mapped", [483]], [[483, 483], "valid"], [[484, 484], "mapped", [485]], [[485, 485], "valid"], [[486, 486], "mapped", [487]], [[487, 487], "valid"], [[488, 488], "mapped", [489]], [[489, 489], "valid"], [[490, 490], "mapped", [491]], [[491, 491], "valid"], [[492, 492], "mapped", [493]], [[493, 493], "valid"], [[494, 494], "mapped", [495]], [[495, 496], "valid"], [[497, 499], "mapped", [100, 122]], [[500, 500], "mapped", [501]], [[501, 501], "valid"], [[502, 502], "mapped", [405]], [[503, 503], "mapped", [447]], [[504, 504], "mapped", [505]], [[505, 505], "valid"], [[506, 506], "mapped", [507]], [[507, 507], "valid"], [[508, 508], "mapped", [509]], [[509, 509], "valid"], [[510, 510], "mapped", [511]], [[511, 511], "valid"], [[512, 512], "mapped", [513]], [[513, 513], "valid"], [[514, 514], "mapped", [515]], [[515, 515], "valid"], [[516, 516], "mapped", [517]], [[517, 517], "valid"], [[518, 518], "mapped", [519]], [[519, 519], "valid"], [[520, 520], "mapped", [521]], [[521, 521], "valid"], [[522, 522], "mapped", [523]], [[523, 523], "valid"], [[524, 524], "mapped", [525]], [[525, 525], "valid"], [[526, 526], "mapped", [527]], [[527, 527], "valid"], [[528, 528], "mapped", [529]], [[529, 529], "valid"], [[530, 530], "mapped", [531]], [[531, 531], "valid"], [[532, 532], "mapped", [533]], [[533, 533], "valid"], [[534, 534], "mapped", [535]], [[535, 535], "valid"], [[536, 536], "mapped", [537]], [[537, 537], "valid"], [[538, 538], "mapped", [539]], [[539, 539], "valid"], [[540, 540], "mapped", [541]], [[541, 541], "valid"], [[542, 542], "mapped", [543]], [[543, 543], "valid"], [[544, 544], "mapped", [414]], [[545, 545], "valid"], [[546, 546], "mapped", [547]], [[547, 547], "valid"], [[548, 548], "mapped", [549]], [[549, 549], "valid"], [[550, 550], "mapped", [551]], [[551, 551], "valid"], [[552, 552], "mapped", [553]], [[553, 553], "valid"], [[554, 554], "mapped", [555]], [[555, 555], "valid"], [[556, 556], "mapped", [557]], [[557, 557], "valid"], [[558, 558], "mapped", [559]], [[559, 559], "valid"], [[560, 560], "mapped", [561]], [[561, 561], "valid"], [[562, 562], "mapped", [563]], [[563, 563], "valid"], [[564, 566], "valid"], [[567, 569], "valid"], [[570, 570], "mapped", [11365]], [[571, 571], "mapped", [572]], [[572, 572], "valid"], [[573, 573], "mapped", [410]], [[574, 574], "mapped", [11366]], [[575, 576], "valid"], [[577, 577], "mapped", [578]], [[578, 578], "valid"], [[579, 579], "mapped", [384]], [[580, 580], "mapped", [649]], [[581, 581], "mapped", [652]], [[582, 582], "mapped", [583]], [[583, 583], "valid"], [[584, 584], "mapped", [585]], [[585, 585], "valid"], [[586, 586], "mapped", [587]], [[587, 587], "valid"], [[588, 588], "mapped", [589]], [[589, 589], "valid"], [[590, 590], "mapped", [591]], [[591, 591], "valid"], [[592, 680], "valid"], [[681, 685], "valid"], [[686, 687], "valid"], [[688, 688], "mapped", [104]], [[689, 689], "mapped", [614]], [[690, 690], "mapped", [106]], [[691, 691], "mapped", [114]], [[692, 692], "mapped", [633]], [[693, 693], "mapped", [635]], [[694, 694], "mapped", [641]], [[695, 695], "mapped", [119]], [[696, 696], "mapped", [121]], [[697, 705], "valid"], [[706, 709], "valid", [], "NV8"], [[710, 721], "valid"], [[722, 727], "valid", [], "NV8"], [[728, 728], "disallowed_STD3_mapped", [32, 774]], [[729, 729], "disallowed_STD3_mapped", [32, 775]], [[730, 730], "disallowed_STD3_mapped", [32, 778]], [[731, 731], "disallowed_STD3_mapped", [32, 808]], [[732, 732], "disallowed_STD3_mapped", [32, 771]], [[733, 733], "disallowed_STD3_mapped", [32, 779]], [[734, 734], "valid", [], "NV8"], [[735, 735], "valid", [], "NV8"], [[736, 736], "mapped", [611]], [[737, 737], "mapped", [108]], [[738, 738], "mapped", [115]], [[739, 739], "mapped", [120]], [[740, 740], "mapped", [661]], [[741, 745], "valid", [], "NV8"], [[746, 747], "valid", [], "NV8"], [[748, 748], "valid"], [[749, 749], "valid", [], "NV8"], [[750, 750], "valid"], [[751, 767], "valid", [], "NV8"], [[768, 831], "valid"], [[832, 832], "mapped", [768]], [[833, 833], "mapped", [769]], [[834, 834], "valid"], [[835, 835], "mapped", [787]], [[836, 836], "mapped", [776, 769]], [[837, 837], "mapped", [953]], [[838, 846], "valid"], [[847, 847], "ignored"], [[848, 855], "valid"], [[856, 860], "valid"], [[861, 863], "valid"], [[864, 865], "valid"], [[866, 866], "valid"], [[867, 879], "valid"], [[880, 880], "mapped", [881]], [[881, 881], "valid"], [[882, 882], "mapped", [883]], [[883, 883], "valid"], [[884, 884], "mapped", [697]], [[885, 885], "valid"], [[886, 886], "mapped", [887]], [[887, 887], "valid"], [[888, 889], "disallowed"], [[890, 890], "disallowed_STD3_mapped", [32, 953]], [[891, 893], "valid"], [[894, 894], "disallowed_STD3_mapped", [59]], [[895, 895], "mapped", [1011]], [[896, 899], "disallowed"], [[900, 900], "disallowed_STD3_mapped", [32, 769]], [[901, 901], "disallowed_STD3_mapped", [32, 776, 769]], [[902, 902], "mapped", [940]], [[903, 903], "mapped", [183]], [[904, 904], "mapped", [941]], [[905, 905], "mapped", [942]], [[906, 906], "mapped", [943]], [[907, 907], "disallowed"], [[908, 908], "mapped", [972]], [[909, 909], "disallowed"], [[910, 910], "mapped", [973]], [[911, 911], "mapped", [974]], [[912, 912], "valid"], [[913, 913], "mapped", [945]], [[914, 914], "mapped", [946]], [[915, 915], "mapped", [947]], [[916, 916], "mapped", [948]], [[917, 917], "mapped", [949]], [[918, 918], "mapped", [950]], [[919, 919], "mapped", [951]], [[920, 920], "mapped", [952]], [[921, 921], "mapped", [953]], [[922, 922], "mapped", [954]], [[923, 923], "mapped", [955]], [[924, 924], "mapped", [956]], [[925, 925], "mapped", [957]], [[926, 926], "mapped", [958]], [[927, 927], "mapped", [959]], [[928, 928], "mapped", [960]], [[929, 929], "mapped", [961]], [[930, 930], "disallowed"], [[931, 931], "mapped", [963]], [[932, 932], "mapped", [964]], [[933, 933], "mapped", [965]], [[934, 934], "mapped", [966]], [[935, 935], "mapped", [967]], [[936, 936], "mapped", [968]], [[937, 937], "mapped", [969]], [[938, 938], "mapped", [970]], [[939, 939], "mapped", [971]], [[940, 961], "valid"], [[962, 962], "deviation", [963]], [[963, 974], "valid"], [[975, 975], "mapped", [983]], [[976, 976], "mapped", [946]], [[977, 977], "mapped", [952]], [[978, 978], "mapped", [965]], [[979, 979], "mapped", [973]], [[980, 980], "mapped", [971]], [[981, 981], "mapped", [966]], [[982, 982], "mapped", [960]], [[983, 983], "valid"], [[984, 984], "mapped", [985]], [[985, 985], "valid"], [[986, 986], "mapped", [987]], [[987, 987], "valid"], [[988, 988], "mapped", [989]], [[989, 989], "valid"], [[990, 990], "mapped", [991]], [[991, 991], "valid"], [[992, 992], "mapped", [993]], [[993, 993], "valid"], [[994, 994], "mapped", [995]], [[995, 995], "valid"], [[996, 996], "mapped", [997]], [[997, 997], "valid"], [[998, 998], "mapped", [999]], [[999, 999], "valid"], [[1e3, 1e3], "mapped", [1001]], [[1001, 1001], "valid"], [[1002, 1002], "mapped", [1003]], [[1003, 1003], "valid"], [[1004, 1004], "mapped", [1005]], [[1005, 1005], "valid"], [[1006, 1006], "mapped", [1007]], [[1007, 1007], "valid"], [[1008, 1008], "mapped", [954]], [[1009, 1009], "mapped", [961]], [[1010, 1010], "mapped", [963]], [[1011, 1011], "valid"], [[1012, 1012], "mapped", [952]], [[1013, 1013], "mapped", [949]], [[1014, 1014], "valid", [], "NV8"], [[1015, 1015], "mapped", [1016]], [[1016, 1016], "valid"], [[1017, 1017], "mapped", [963]], [[1018, 1018], "mapped", [1019]], [[1019, 1019], "valid"], [[1020, 1020], "valid"], [[1021, 1021], "mapped", [891]], [[1022, 1022], "mapped", [892]], [[1023, 1023], "mapped", [893]], [[1024, 1024], "mapped", [1104]], [[1025, 1025], "mapped", [1105]], [[1026, 1026], "mapped", [1106]], [[1027, 1027], "mapped", [1107]], [[1028, 1028], "mapped", [1108]], [[1029, 1029], "mapped", [1109]], [[1030, 1030], "mapped", [1110]], [[1031, 1031], "mapped", [1111]], [[1032, 1032], "mapped", [1112]], [[1033, 1033], "mapped", [1113]], [[1034, 1034], "mapped", [1114]], [[1035, 1035], "mapped", [1115]], [[1036, 1036], "mapped", [1116]], [[1037, 1037], "mapped", [1117]], [[1038, 1038], "mapped", [1118]], [[1039, 1039], "mapped", [1119]], [[1040, 1040], "mapped", [1072]], [[1041, 1041], "mapped", [1073]], [[1042, 1042], "mapped", [1074]], [[1043, 1043], "mapped", [1075]], [[1044, 1044], "mapped", [1076]], [[1045, 1045], "mapped", [1077]], [[1046, 1046], "mapped", [1078]], [[1047, 1047], "mapped", [1079]], [[1048, 1048], "mapped", [1080]], [[1049, 1049], "mapped", [1081]], [[1050, 1050], "mapped", [1082]], [[1051, 1051], "mapped", [1083]], [[1052, 1052], "mapped", [1084]], [[1053, 1053], "mapped", [1085]], [[1054, 1054], "mapped", [1086]], [[1055, 1055], "mapped", [1087]], [[1056, 1056], "mapped", [1088]], [[1057, 1057], "mapped", [1089]], [[1058, 1058], "mapped", [1090]], [[1059, 1059], "mapped", [1091]], [[1060, 1060], "mapped", [1092]], [[1061, 1061], "mapped", [1093]], [[1062, 1062], "mapped", [1094]], [[1063, 1063], "mapped", [1095]], [[1064, 1064], "mapped", [1096]], [[1065, 1065], "mapped", [1097]], [[1066, 1066], "mapped", [1098]], [[1067, 1067], "mapped", [1099]], [[1068, 1068], "mapped", [1100]], [[1069, 1069], "mapped", [1101]], [[1070, 1070], "mapped", [1102]], [[1071, 1071], "mapped", [1103]], [[1072, 1103], "valid"], [[1104, 1104], "valid"], [[1105, 1116], "valid"], [[1117, 1117], "valid"], [[1118, 1119], "valid"], [[1120, 1120], "mapped", [1121]], [[1121, 1121], "valid"], [[1122, 1122], "mapped", [1123]], [[1123, 1123], "valid"], [[1124, 1124], "mapped", [1125]], [[1125, 1125], "valid"], [[1126, 1126], "mapped", [1127]], [[1127, 1127], "valid"], [[1128, 1128], "mapped", [1129]], [[1129, 1129], "valid"], [[1130, 1130], "mapped", [1131]], [[1131, 1131], "valid"], [[1132, 1132], "mapped", [1133]], [[1133, 1133], "valid"], [[1134, 1134], "mapped", [1135]], [[1135, 1135], "valid"], [[1136, 1136], "mapped", [1137]], [[1137, 1137], "valid"], [[1138, 1138], "mapped", [1139]], [[1139, 1139], "valid"], [[1140, 1140], "mapped", [1141]], [[1141, 1141], "valid"], [[1142, 1142], "mapped", [1143]], [[1143, 1143], "valid"], [[1144, 1144], "mapped", [1145]], [[1145, 1145], "valid"], [[1146, 1146], "mapped", [1147]], [[1147, 1147], "valid"], [[1148, 1148], "mapped", [1149]], [[1149, 1149], "valid"], [[1150, 1150], "mapped", [1151]], [[1151, 1151], "valid"], [[1152, 1152], "mapped", [1153]], [[1153, 1153], "valid"], [[1154, 1154], "valid", [], "NV8"], [[1155, 1158], "valid"], [[1159, 1159], "valid"], [[1160, 1161], "valid", [], "NV8"], [[1162, 1162], "mapped", [1163]], [[1163, 1163], "valid"], [[1164, 1164], "mapped", [1165]], [[1165, 1165], "valid"], [[1166, 1166], "mapped", [1167]], [[1167, 1167], "valid"], [[1168, 1168], "mapped", [1169]], [[1169, 1169], "valid"], [[1170, 1170], "mapped", [1171]], [[1171, 1171], "valid"], [[1172, 1172], "mapped", [1173]], [[1173, 1173], "valid"], [[1174, 1174], "mapped", [1175]], [[1175, 1175], "valid"], [[1176, 1176], "mapped", [1177]], [[1177, 1177], "valid"], [[1178, 1178], "mapped", [1179]], [[1179, 1179], "valid"], [[1180, 1180], "mapped", [1181]], [[1181, 1181], "valid"], [[1182, 1182], "mapped", [1183]], [[1183, 1183], "valid"], [[1184, 1184], "mapped", [1185]], [[1185, 1185], "valid"], [[1186, 1186], "mapped", [1187]], [[1187, 1187], "valid"], [[1188, 1188], "mapped", [1189]], [[1189, 1189], "valid"], [[1190, 1190], "mapped", [1191]], [[1191, 1191], "valid"], [[1192, 1192], "mapped", [1193]], [[1193, 1193], "valid"], [[1194, 1194], "mapped", [1195]], [[1195, 1195], "valid"], [[1196, 1196], "mapped", [1197]], [[1197, 1197], "valid"], [[1198, 1198], "mapped", [1199]], [[1199, 1199], "valid"], [[1200, 1200], "mapped", [1201]], [[1201, 1201], "valid"], [[1202, 1202], "mapped", [1203]], [[1203, 1203], "valid"], [[1204, 1204], "mapped", [1205]], [[1205, 1205], "valid"], [[1206, 1206], "mapped", [1207]], [[1207, 1207], "valid"], [[1208, 1208], "mapped", [1209]], [[1209, 1209], "valid"], [[1210, 1210], "mapped", [1211]], [[1211, 1211], "valid"], [[1212, 1212], "mapped", [1213]], [[1213, 1213], "valid"], [[1214, 1214], "mapped", [1215]], [[1215, 1215], "valid"], [[1216, 1216], "disallowed"], [[1217, 1217], "mapped", [1218]], [[1218, 1218], "valid"], [[1219, 1219], "mapped", [1220]], [[1220, 1220], "valid"], [[1221, 1221], "mapped", [1222]], [[1222, 1222], "valid"], [[1223, 1223], "mapped", [1224]], [[1224, 1224], "valid"], [[1225, 1225], "mapped", [1226]], [[1226, 1226], "valid"], [[1227, 1227], "mapped", [1228]], [[1228, 1228], "valid"], [[1229, 1229], "mapped", [1230]], [[1230, 1230], "valid"], [[1231, 1231], "valid"], [[1232, 1232], "mapped", [1233]], [[1233, 1233], "valid"], [[1234, 1234], "mapped", [1235]], [[1235, 1235], "valid"], [[1236, 1236], "mapped", [1237]], [[1237, 1237], "valid"], [[1238, 1238], "mapped", [1239]], [[1239, 1239], "valid"], [[1240, 1240], "mapped", [1241]], [[1241, 1241], "valid"], [[1242, 1242], "mapped", [1243]], [[1243, 1243], "valid"], [[1244, 1244], "mapped", [1245]], [[1245, 1245], "valid"], [[1246, 1246], "mapped", [1247]], [[1247, 1247], "valid"], [[1248, 1248], "mapped", [1249]], [[1249, 1249], "valid"], [[1250, 1250], "mapped", [1251]], [[1251, 1251], "valid"], [[1252, 1252], "mapped", [1253]], [[1253, 1253], "valid"], [[1254, 1254], "mapped", [1255]], [[1255, 1255], "valid"], [[1256, 1256], "mapped", [1257]], [[1257, 1257], "valid"], [[1258, 1258], "mapped", [1259]], [[1259, 1259], "valid"], [[1260, 1260], "mapped", [1261]], [[1261, 1261], "valid"], [[1262, 1262], "mapped", [1263]], [[1263, 1263], "valid"], [[1264, 1264], "mapped", [1265]], [[1265, 1265], "valid"], [[1266, 1266], "mapped", [1267]], [[1267, 1267], "valid"], [[1268, 1268], "mapped", [1269]], [[1269, 1269], "valid"], [[1270, 1270], "mapped", [1271]], [[1271, 1271], "valid"], [[1272, 1272], "mapped", [1273]], [[1273, 1273], "valid"], [[1274, 1274], "mapped", [1275]], [[1275, 1275], "valid"], [[1276, 1276], "mapped", [1277]], [[1277, 1277], "valid"], [[1278, 1278], "mapped", [1279]], [[1279, 1279], "valid"], [[1280, 1280], "mapped", [1281]], [[1281, 1281], "valid"], [[1282, 1282], "mapped", [1283]], [[1283, 1283], "valid"], [[1284, 1284], "mapped", [1285]], [[1285, 1285], "valid"], [[1286, 1286], "mapped", [1287]], [[1287, 1287], "valid"], [[1288, 1288], "mapped", [1289]], [[1289, 1289], "valid"], [[1290, 1290], "mapped", [1291]], [[1291, 1291], "valid"], [[1292, 1292], "mapped", [1293]], [[1293, 1293], "valid"], [[1294, 1294], "mapped", [1295]], [[1295, 1295], "valid"], [[1296, 1296], "mapped", [1297]], [[1297, 1297], "valid"], [[1298, 1298], "mapped", [1299]], [[1299, 1299], "valid"], [[1300, 1300], "mapped", [1301]], [[1301, 1301], "valid"], [[1302, 1302], "mapped", [1303]], [[1303, 1303], "valid"], [[1304, 1304], "mapped", [1305]], [[1305, 1305], "valid"], [[1306, 1306], "mapped", [1307]], [[1307, 1307], "valid"], [[1308, 1308], "mapped", [1309]], [[1309, 1309], "valid"], [[1310, 1310], "mapped", [1311]], [[1311, 1311], "valid"], [[1312, 1312], "mapped", [1313]], [[1313, 1313], "valid"], [[1314, 1314], "mapped", [1315]], [[1315, 1315], "valid"], [[1316, 1316], "mapped", [1317]], [[1317, 1317], "valid"], [[1318, 1318], "mapped", [1319]], [[1319, 1319], "valid"], [[1320, 1320], "mapped", [1321]], [[1321, 1321], "valid"], [[1322, 1322], "mapped", [1323]], [[1323, 1323], "valid"], [[1324, 1324], "mapped", [1325]], [[1325, 1325], "valid"], [[1326, 1326], "mapped", [1327]], [[1327, 1327], "valid"], [[1328, 1328], "disallowed"], [[1329, 1329], "mapped", [1377]], [[1330, 1330], "mapped", [1378]], [[1331, 1331], "mapped", [1379]], [[1332, 1332], "mapped", [1380]], [[1333, 1333], "mapped", [1381]], [[1334, 1334], "mapped", [1382]], [[1335, 1335], "mapped", [1383]], [[1336, 1336], "mapped", [1384]], [[1337, 1337], "mapped", [1385]], [[1338, 1338], "mapped", [1386]], [[1339, 1339], "mapped", [1387]], [[1340, 1340], "mapped", [1388]], [[1341, 1341], "mapped", [1389]], [[1342, 1342], "mapped", [1390]], [[1343, 1343], "mapped", [1391]], [[1344, 1344], "mapped", [1392]], [[1345, 1345], "mapped", [1393]], [[1346, 1346], "mapped", [1394]], [[1347, 1347], "mapped", [1395]], [[1348, 1348], "mapped", [1396]], [[1349, 1349], "mapped", [1397]], [[1350, 1350], "mapped", [1398]], [[1351, 1351], "mapped", [1399]], [[1352, 1352], "mapped", [1400]], [[1353, 1353], "mapped", [1401]], [[1354, 1354], "mapped", [1402]], [[1355, 1355], "mapped", [1403]], [[1356, 1356], "mapped", [1404]], [[1357, 1357], "mapped", [1405]], [[1358, 1358], "mapped", [1406]], [[1359, 1359], "mapped", [1407]], [[1360, 1360], "mapped", [1408]], [[1361, 1361], "mapped", [1409]], [[1362, 1362], "mapped", [1410]], [[1363, 1363], "mapped", [1411]], [[1364, 1364], "mapped", [1412]], [[1365, 1365], "mapped", [1413]], [[1366, 1366], "mapped", [1414]], [[1367, 1368], "disallowed"], [[1369, 1369], "valid"], [[1370, 1375], "valid", [], "NV8"], [[1376, 1376], "disallowed"], [[1377, 1414], "valid"], [[1415, 1415], "mapped", [1381, 1410]], [[1416, 1416], "disallowed"], [[1417, 1417], "valid", [], "NV8"], [[1418, 1418], "valid", [], "NV8"], [[1419, 1420], "disallowed"], [[1421, 1422], "valid", [], "NV8"], [[1423, 1423], "valid", [], "NV8"], [[1424, 1424], "disallowed"], [[1425, 1441], "valid"], [[1442, 1442], "valid"], [[1443, 1455], "valid"], [[1456, 1465], "valid"], [[1466, 1466], "valid"], [[1467, 1469], "valid"], [[1470, 1470], "valid", [], "NV8"], [[1471, 1471], "valid"], [[1472, 1472], "valid", [], "NV8"], [[1473, 1474], "valid"], [[1475, 1475], "valid", [], "NV8"], [[1476, 1476], "valid"], [[1477, 1477], "valid"], [[1478, 1478], "valid", [], "NV8"], [[1479, 1479], "valid"], [[1480, 1487], "disallowed"], [[1488, 1514], "valid"], [[1515, 1519], "disallowed"], [[1520, 1524], "valid"], [[1525, 1535], "disallowed"], [[1536, 1539], "disallowed"], [[1540, 1540], "disallowed"], [[1541, 1541], "disallowed"], [[1542, 1546], "valid", [], "NV8"], [[1547, 1547], "valid", [], "NV8"], [[1548, 1548], "valid", [], "NV8"], [[1549, 1551], "valid", [], "NV8"], [[1552, 1557], "valid"], [[1558, 1562], "valid"], [[1563, 1563], "valid", [], "NV8"], [[1564, 1564], "disallowed"], [[1565, 1565], "disallowed"], [[1566, 1566], "valid", [], "NV8"], [[1567, 1567], "valid", [], "NV8"], [[1568, 1568], "valid"], [[1569, 1594], "valid"], [[1595, 1599], "valid"], [[1600, 1600], "valid", [], "NV8"], [[1601, 1618], "valid"], [[1619, 1621], "valid"], [[1622, 1624], "valid"], [[1625, 1630], "valid"], [[1631, 1631], "valid"], [[1632, 1641], "valid"], [[1642, 1645], "valid", [], "NV8"], [[1646, 1647], "valid"], [[1648, 1652], "valid"], [[1653, 1653], "mapped", [1575, 1652]], [[1654, 1654], "mapped", [1608, 1652]], [[1655, 1655], "mapped", [1735, 1652]], [[1656, 1656], "mapped", [1610, 1652]], [[1657, 1719], "valid"], [[1720, 1721], "valid"], [[1722, 1726], "valid"], [[1727, 1727], "valid"], [[1728, 1742], "valid"], [[1743, 1743], "valid"], [[1744, 1747], "valid"], [[1748, 1748], "valid", [], "NV8"], [[1749, 1756], "valid"], [[1757, 1757], "disallowed"], [[1758, 1758], "valid", [], "NV8"], [[1759, 1768], "valid"], [[1769, 1769], "valid", [], "NV8"], [[1770, 1773], "valid"], [[1774, 1775], "valid"], [[1776, 1785], "valid"], [[1786, 1790], "valid"], [[1791, 1791], "valid"], [[1792, 1805], "valid", [], "NV8"], [[1806, 1806], "disallowed"], [[1807, 1807], "disallowed"], [[1808, 1836], "valid"], [[1837, 1839], "valid"], [[1840, 1866], "valid"], [[1867, 1868], "disallowed"], [[1869, 1871], "valid"], [[1872, 1901], "valid"], [[1902, 1919], "valid"], [[1920, 1968], "valid"], [[1969, 1969], "valid"], [[1970, 1983], "disallowed"], [[1984, 2037], "valid"], [[2038, 2042], "valid", [], "NV8"], [[2043, 2047], "disallowed"], [[2048, 2093], "valid"], [[2094, 2095], "disallowed"], [[2096, 2110], "valid", [], "NV8"], [[2111, 2111], "disallowed"], [[2112, 2139], "valid"], [[2140, 2141], "disallowed"], [[2142, 2142], "valid", [], "NV8"], [[2143, 2207], "disallowed"], [[2208, 2208], "valid"], [[2209, 2209], "valid"], [[2210, 2220], "valid"], [[2221, 2226], "valid"], [[2227, 2228], "valid"], [[2229, 2274], "disallowed"], [[2275, 2275], "valid"], [[2276, 2302], "valid"], [[2303, 2303], "valid"], [[2304, 2304], "valid"], [[2305, 2307], "valid"], [[2308, 2308], "valid"], [[2309, 2361], "valid"], [[2362, 2363], "valid"], [[2364, 2381], "valid"], [[2382, 2382], "valid"], [[2383, 2383], "valid"], [[2384, 2388], "valid"], [[2389, 2389], "valid"], [[2390, 2391], "valid"], [[2392, 2392], "mapped", [2325, 2364]], [[2393, 2393], "mapped", [2326, 2364]], [[2394, 2394], "mapped", [2327, 2364]], [[2395, 2395], "mapped", [2332, 2364]], [[2396, 2396], "mapped", [2337, 2364]], [[2397, 2397], "mapped", [2338, 2364]], [[2398, 2398], "mapped", [2347, 2364]], [[2399, 2399], "mapped", [2351, 2364]], [[2400, 2403], "valid"], [[2404, 2405], "valid", [], "NV8"], [[2406, 2415], "valid"], [[2416, 2416], "valid", [], "NV8"], [[2417, 2418], "valid"], [[2419, 2423], "valid"], [[2424, 2424], "valid"], [[2425, 2426], "valid"], [[2427, 2428], "valid"], [[2429, 2429], "valid"], [[2430, 2431], "valid"], [[2432, 2432], "valid"], [[2433, 2435], "valid"], [[2436, 2436], "disallowed"], [[2437, 2444], "valid"], [[2445, 2446], "disallowed"], [[2447, 2448], "valid"], [[2449, 2450], "disallowed"], [[2451, 2472], "valid"], [[2473, 2473], "disallowed"], [[2474, 2480], "valid"], [[2481, 2481], "disallowed"], [[2482, 2482], "valid"], [[2483, 2485], "disallowed"], [[2486, 2489], "valid"], [[2490, 2491], "disallowed"], [[2492, 2492], "valid"], [[2493, 2493], "valid"], [[2494, 2500], "valid"], [[2501, 2502], "disallowed"], [[2503, 2504], "valid"], [[2505, 2506], "disallowed"], [[2507, 2509], "valid"], [[2510, 2510], "valid"], [[2511, 2518], "disallowed"], [[2519, 2519], "valid"], [[2520, 2523], "disallowed"], [[2524, 2524], "mapped", [2465, 2492]], [[2525, 2525], "mapped", [2466, 2492]], [[2526, 2526], "disallowed"], [[2527, 2527], "mapped", [2479, 2492]], [[2528, 2531], "valid"], [[2532, 2533], "disallowed"], [[2534, 2545], "valid"], [[2546, 2554], "valid", [], "NV8"], [[2555, 2555], "valid", [], "NV8"], [[2556, 2560], "disallowed"], [[2561, 2561], "valid"], [[2562, 2562], "valid"], [[2563, 2563], "valid"], [[2564, 2564], "disallowed"], [[2565, 2570], "valid"], [[2571, 2574], "disallowed"], [[2575, 2576], "valid"], [[2577, 2578], "disallowed"], [[2579, 2600], "valid"], [[2601, 2601], "disallowed"], [[2602, 2608], "valid"], [[2609, 2609], "disallowed"], [[2610, 2610], "valid"], [[2611, 2611], "mapped", [2610, 2620]], [[2612, 2612], "disallowed"], [[2613, 2613], "valid"], [[2614, 2614], "mapped", [2616, 2620]], [[2615, 2615], "disallowed"], [[2616, 2617], "valid"], [[2618, 2619], "disallowed"], [[2620, 2620], "valid"], [[2621, 2621], "disallowed"], [[2622, 2626], "valid"], [[2627, 2630], "disallowed"], [[2631, 2632], "valid"], [[2633, 2634], "disallowed"], [[2635, 2637], "valid"], [[2638, 2640], "disallowed"], [[2641, 2641], "valid"], [[2642, 2648], "disallowed"], [[2649, 2649], "mapped", [2582, 2620]], [[2650, 2650], "mapped", [2583, 2620]], [[2651, 2651], "mapped", [2588, 2620]], [[2652, 2652], "valid"], [[2653, 2653], "disallowed"], [[2654, 2654], "mapped", [2603, 2620]], [[2655, 2661], "disallowed"], [[2662, 2676], "valid"], [[2677, 2677], "valid"], [[2678, 2688], "disallowed"], [[2689, 2691], "valid"], [[2692, 2692], "disallowed"], [[2693, 2699], "valid"], [[2700, 2700], "valid"], [[2701, 2701], "valid"], [[2702, 2702], "disallowed"], [[2703, 2705], "valid"], [[2706, 2706], "disallowed"], [[2707, 2728], "valid"], [[2729, 2729], "disallowed"], [[2730, 2736], "valid"], [[2737, 2737], "disallowed"], [[2738, 2739], "valid"], [[2740, 2740], "disallowed"], [[2741, 2745], "valid"], [[2746, 2747], "disallowed"], [[2748, 2757], "valid"], [[2758, 2758], "disallowed"], [[2759, 2761], "valid"], [[2762, 2762], "disallowed"], [[2763, 2765], "valid"], [[2766, 2767], "disallowed"], [[2768, 2768], "valid"], [[2769, 2783], "disallowed"], [[2784, 2784], "valid"], [[2785, 2787], "valid"], [[2788, 2789], "disallowed"], [[2790, 2799], "valid"], [[2800, 2800], "valid", [], "NV8"], [[2801, 2801], "valid", [], "NV8"], [[2802, 2808], "disallowed"], [[2809, 2809], "valid"], [[2810, 2816], "disallowed"], [[2817, 2819], "valid"], [[2820, 2820], "disallowed"], [[2821, 2828], "valid"], [[2829, 2830], "disallowed"], [[2831, 2832], "valid"], [[2833, 2834], "disallowed"], [[2835, 2856], "valid"], [[2857, 2857], "disallowed"], [[2858, 2864], "valid"], [[2865, 2865], "disallowed"], [[2866, 2867], "valid"], [[2868, 2868], "disallowed"], [[2869, 2869], "valid"], [[2870, 2873], "valid"], [[2874, 2875], "disallowed"], [[2876, 2883], "valid"], [[2884, 2884], "valid"], [[2885, 2886], "disallowed"], [[2887, 2888], "valid"], [[2889, 2890], "disallowed"], [[2891, 2893], "valid"], [[2894, 2901], "disallowed"], [[2902, 2903], "valid"], [[2904, 2907], "disallowed"], [[2908, 2908], "mapped", [2849, 2876]], [[2909, 2909], "mapped", [2850, 2876]], [[2910, 2910], "disallowed"], [[2911, 2913], "valid"], [[2914, 2915], "valid"], [[2916, 2917], "disallowed"], [[2918, 2927], "valid"], [[2928, 2928], "valid", [], "NV8"], [[2929, 2929], "valid"], [[2930, 2935], "valid", [], "NV8"], [[2936, 2945], "disallowed"], [[2946, 2947], "valid"], [[2948, 2948], "disallowed"], [[2949, 2954], "valid"], [[2955, 2957], "disallowed"], [[2958, 2960], "valid"], [[2961, 2961], "disallowed"], [[2962, 2965], "valid"], [[2966, 2968], "disallowed"], [[2969, 2970], "valid"], [[2971, 2971], "disallowed"], [[2972, 2972], "valid"], [[2973, 2973], "disallowed"], [[2974, 2975], "valid"], [[2976, 2978], "disallowed"], [[2979, 2980], "valid"], [[2981, 2983], "disallowed"], [[2984, 2986], "valid"], [[2987, 2989], "disallowed"], [[2990, 2997], "valid"], [[2998, 2998], "valid"], [[2999, 3001], "valid"], [[3002, 3005], "disallowed"], [[3006, 3010], "valid"], [[3011, 3013], "disallowed"], [[3014, 3016], "valid"], [[3017, 3017], "disallowed"], [[3018, 3021], "valid"], [[3022, 3023], "disallowed"], [[3024, 3024], "valid"], [[3025, 3030], "disallowed"], [[3031, 3031], "valid"], [[3032, 3045], "disallowed"], [[3046, 3046], "valid"], [[3047, 3055], "valid"], [[3056, 3058], "valid", [], "NV8"], [[3059, 3066], "valid", [], "NV8"], [[3067, 3071], "disallowed"], [[3072, 3072], "valid"], [[3073, 3075], "valid"], [[3076, 3076], "disallowed"], [[3077, 3084], "valid"], [[3085, 3085], "disallowed"], [[3086, 3088], "valid"], [[3089, 3089], "disallowed"], [[3090, 3112], "valid"], [[3113, 3113], "disallowed"], [[3114, 3123], "valid"], [[3124, 3124], "valid"], [[3125, 3129], "valid"], [[3130, 3132], "disallowed"], [[3133, 3133], "valid"], [[3134, 3140], "valid"], [[3141, 3141], "disallowed"], [[3142, 3144], "valid"], [[3145, 3145], "disallowed"], [[3146, 3149], "valid"], [[3150, 3156], "disallowed"], [[3157, 3158], "valid"], [[3159, 3159], "disallowed"], [[3160, 3161], "valid"], [[3162, 3162], "valid"], [[3163, 3167], "disallowed"], [[3168, 3169], "valid"], [[3170, 3171], "valid"], [[3172, 3173], "disallowed"], [[3174, 3183], "valid"], [[3184, 3191], "disallowed"], [[3192, 3199], "valid", [], "NV8"], [[3200, 3200], "disallowed"], [[3201, 3201], "valid"], [[3202, 3203], "valid"], [[3204, 3204], "disallowed"], [[3205, 3212], "valid"], [[3213, 3213], "disallowed"], [[3214, 3216], "valid"], [[3217, 3217], "disallowed"], [[3218, 3240], "valid"], [[3241, 3241], "disallowed"], [[3242, 3251], "valid"], [[3252, 3252], "disallowed"], [[3253, 3257], "valid"], [[3258, 3259], "disallowed"], [[3260, 3261], "valid"], [[3262, 3268], "valid"], [[3269, 3269], "disallowed"], [[3270, 3272], "valid"], [[3273, 3273], "disallowed"], [[3274, 3277], "valid"], [[3278, 3284], "disallowed"], [[3285, 3286], "valid"], [[3287, 3293], "disallowed"], [[3294, 3294], "valid"], [[3295, 3295], "disallowed"], [[3296, 3297], "valid"], [[3298, 3299], "valid"], [[3300, 3301], "disallowed"], [[3302, 3311], "valid"], [[3312, 3312], "disallowed"], [[3313, 3314], "valid"], [[3315, 3328], "disallowed"], [[3329, 3329], "valid"], [[3330, 3331], "valid"], [[3332, 3332], "disallowed"], [[3333, 3340], "valid"], [[3341, 3341], "disallowed"], [[3342, 3344], "valid"], [[3345, 3345], "disallowed"], [[3346, 3368], "valid"], [[3369, 3369], "valid"], [[3370, 3385], "valid"], [[3386, 3386], "valid"], [[3387, 3388], "disallowed"], [[3389, 3389], "valid"], [[3390, 3395], "valid"], [[3396, 3396], "valid"], [[3397, 3397], "disallowed"], [[3398, 3400], "valid"], [[3401, 3401], "disallowed"], [[3402, 3405], "valid"], [[3406, 3406], "valid"], [[3407, 3414], "disallowed"], [[3415, 3415], "valid"], [[3416, 3422], "disallowed"], [[3423, 3423], "valid"], [[3424, 3425], "valid"], [[3426, 3427], "valid"], [[3428, 3429], "disallowed"], [[3430, 3439], "valid"], [[3440, 3445], "valid", [], "NV8"], [[3446, 3448], "disallowed"], [[3449, 3449], "valid", [], "NV8"], [[3450, 3455], "valid"], [[3456, 3457], "disallowed"], [[3458, 3459], "valid"], [[3460, 3460], "disallowed"], [[3461, 3478], "valid"], [[3479, 3481], "disallowed"], [[3482, 3505], "valid"], [[3506, 3506], "disallowed"], [[3507, 3515], "valid"], [[3516, 3516], "disallowed"], [[3517, 3517], "valid"], [[3518, 3519], "disallowed"], [[3520, 3526], "valid"], [[3527, 3529], "disallowed"], [[3530, 3530], "valid"], [[3531, 3534], "disallowed"], [[3535, 3540], "valid"], [[3541, 3541], "disallowed"], [[3542, 3542], "valid"], [[3543, 3543], "disallowed"], [[3544, 3551], "valid"], [[3552, 3557], "disallowed"], [[3558, 3567], "valid"], [[3568, 3569], "disallowed"], [[3570, 3571], "valid"], [[3572, 3572], "valid", [], "NV8"], [[3573, 3584], "disallowed"], [[3585, 3634], "valid"], [[3635, 3635], "mapped", [3661, 3634]], [[3636, 3642], "valid"], [[3643, 3646], "disallowed"], [[3647, 3647], "valid", [], "NV8"], [[3648, 3662], "valid"], [[3663, 3663], "valid", [], "NV8"], [[3664, 3673], "valid"], [[3674, 3675], "valid", [], "NV8"], [[3676, 3712], "disallowed"], [[3713, 3714], "valid"], [[3715, 3715], "disallowed"], [[3716, 3716], "valid"], [[3717, 3718], "disallowed"], [[3719, 3720], "valid"], [[3721, 3721], "disallowed"], [[3722, 3722], "valid"], [[3723, 3724], "disallowed"], [[3725, 3725], "valid"], [[3726, 3731], "disallowed"], [[3732, 3735], "valid"], [[3736, 3736], "disallowed"], [[3737, 3743], "valid"], [[3744, 3744], "disallowed"], [[3745, 3747], "valid"], [[3748, 3748], "disallowed"], [[3749, 3749], "valid"], [[3750, 3750], "disallowed"], [[3751, 3751], "valid"], [[3752, 3753], "disallowed"], [[3754, 3755], "valid"], [[3756, 3756], "disallowed"], [[3757, 3762], "valid"], [[3763, 3763], "mapped", [3789, 3762]], [[3764, 3769], "valid"], [[3770, 3770], "disallowed"], [[3771, 3773], "valid"], [[3774, 3775], "disallowed"], [[3776, 3780], "valid"], [[3781, 3781], "disallowed"], [[3782, 3782], "valid"], [[3783, 3783], "disallowed"], [[3784, 3789], "valid"], [[3790, 3791], "disallowed"], [[3792, 3801], "valid"], [[3802, 3803], "disallowed"], [[3804, 3804], "mapped", [3755, 3737]], [[3805, 3805], "mapped", [3755, 3745]], [[3806, 3807], "valid"], [[3808, 3839], "disallowed"], [[3840, 3840], "valid"], [[3841, 3850], "valid", [], "NV8"], [[3851, 3851], "valid"], [[3852, 3852], "mapped", [3851]], [[3853, 3863], "valid", [], "NV8"], [[3864, 3865], "valid"], [[3866, 3871], "valid", [], "NV8"], [[3872, 3881], "valid"], [[3882, 3892], "valid", [], "NV8"], [[3893, 3893], "valid"], [[3894, 3894], "valid", [], "NV8"], [[3895, 3895], "valid"], [[3896, 3896], "valid", [], "NV8"], [[3897, 3897], "valid"], [[3898, 3901], "valid", [], "NV8"], [[3902, 3906], "valid"], [[3907, 3907], "mapped", [3906, 4023]], [[3908, 3911], "valid"], [[3912, 3912], "disallowed"], [[3913, 3916], "valid"], [[3917, 3917], "mapped", [3916, 4023]], [[3918, 3921], "valid"], [[3922, 3922], "mapped", [3921, 4023]], [[3923, 3926], "valid"], [[3927, 3927], "mapped", [3926, 4023]], [[3928, 3931], "valid"], [[3932, 3932], "mapped", [3931, 4023]], [[3933, 3944], "valid"], [[3945, 3945], "mapped", [3904, 4021]], [[3946, 3946], "valid"], [[3947, 3948], "valid"], [[3949, 3952], "disallowed"], [[3953, 3954], "valid"], [[3955, 3955], "mapped", [3953, 3954]], [[3956, 3956], "valid"], [[3957, 3957], "mapped", [3953, 3956]], [[3958, 3958], "mapped", [4018, 3968]], [[3959, 3959], "mapped", [4018, 3953, 3968]], [[3960, 3960], "mapped", [4019, 3968]], [[3961, 3961], "mapped", [4019, 3953, 3968]], [[3962, 3968], "valid"], [[3969, 3969], "mapped", [3953, 3968]], [[3970, 3972], "valid"], [[3973, 3973], "valid", [], "NV8"], [[3974, 3979], "valid"], [[3980, 3983], "valid"], [[3984, 3986], "valid"], [[3987, 3987], "mapped", [3986, 4023]], [[3988, 3989], "valid"], [[3990, 3990], "valid"], [[3991, 3991], "valid"], [[3992, 3992], "disallowed"], [[3993, 3996], "valid"], [[3997, 3997], "mapped", [3996, 4023]], [[3998, 4001], "valid"], [[4002, 4002], "mapped", [4001, 4023]], [[4003, 4006], "valid"], [[4007, 4007], "mapped", [4006, 4023]], [[4008, 4011], "valid"], [[4012, 4012], "mapped", [4011, 4023]], [[4013, 4013], "valid"], [[4014, 4016], "valid"], [[4017, 4023], "valid"], [[4024, 4024], "valid"], [[4025, 4025], "mapped", [3984, 4021]], [[4026, 4028], "valid"], [[4029, 4029], "disallowed"], [[4030, 4037], "valid", [], "NV8"], [[4038, 4038], "valid"], [[4039, 4044], "valid", [], "NV8"], [[4045, 4045], "disallowed"], [[4046, 4046], "valid", [], "NV8"], [[4047, 4047], "valid", [], "NV8"], [[4048, 4049], "valid", [], "NV8"], [[4050, 4052], "valid", [], "NV8"], [[4053, 4056], "valid", [], "NV8"], [[4057, 4058], "valid", [], "NV8"], [[4059, 4095], "disallowed"], [[4096, 4129], "valid"], [[4130, 4130], "valid"], [[4131, 4135], "valid"], [[4136, 4136], "valid"], [[4137, 4138], "valid"], [[4139, 4139], "valid"], [[4140, 4146], "valid"], [[4147, 4149], "valid"], [[4150, 4153], "valid"], [[4154, 4159], "valid"], [[4160, 4169], "valid"], [[4170, 4175], "valid", [], "NV8"], [[4176, 4185], "valid"], [[4186, 4249], "valid"], [[4250, 4253], "valid"], [[4254, 4255], "valid", [], "NV8"], [[4256, 4293], "disallowed"], [[4294, 4294], "disallowed"], [[4295, 4295], "mapped", [11559]], [[4296, 4300], "disallowed"], [[4301, 4301], "mapped", [11565]], [[4302, 4303], "disallowed"], [[4304, 4342], "valid"], [[4343, 4344], "valid"], [[4345, 4346], "valid"], [[4347, 4347], "valid", [], "NV8"], [[4348, 4348], "mapped", [4316]], [[4349, 4351], "valid"], [[4352, 4441], "valid", [], "NV8"], [[4442, 4446], "valid", [], "NV8"], [[4447, 4448], "disallowed"], [[4449, 4514], "valid", [], "NV8"], [[4515, 4519], "valid", [], "NV8"], [[4520, 4601], "valid", [], "NV8"], [[4602, 4607], "valid", [], "NV8"], [[4608, 4614], "valid"], [[4615, 4615], "valid"], [[4616, 4678], "valid"], [[4679, 4679], "valid"], [[4680, 4680], "valid"], [[4681, 4681], "disallowed"], [[4682, 4685], "valid"], [[4686, 4687], "disallowed"], [[4688, 4694], "valid"], [[4695, 4695], "disallowed"], [[4696, 4696], "valid"], [[4697, 4697], "disallowed"], [[4698, 4701], "valid"], [[4702, 4703], "disallowed"], [[4704, 4742], "valid"], [[4743, 4743], "valid"], [[4744, 4744], "valid"], [[4745, 4745], "disallowed"], [[4746, 4749], "valid"], [[4750, 4751], "disallowed"], [[4752, 4782], "valid"], [[4783, 4783], "valid"], [[4784, 4784], "valid"], [[4785, 4785], "disallowed"], [[4786, 4789], "valid"], [[4790, 4791], "disallowed"], [[4792, 4798], "valid"], [[4799, 4799], "disallowed"], [[4800, 4800], "valid"], [[4801, 4801], "disallowed"], [[4802, 4805], "valid"], [[4806, 4807], "disallowed"], [[4808, 4814], "valid"], [[4815, 4815], "valid"], [[4816, 4822], "valid"], [[4823, 4823], "disallowed"], [[4824, 4846], "valid"], [[4847, 4847], "valid"], [[4848, 4878], "valid"], [[4879, 4879], "valid"], [[4880, 4880], "valid"], [[4881, 4881], "disallowed"], [[4882, 4885], "valid"], [[4886, 4887], "disallowed"], [[4888, 4894], "valid"], [[4895, 4895], "valid"], [[4896, 4934], "valid"], [[4935, 4935], "valid"], [[4936, 4954], "valid"], [[4955, 4956], "disallowed"], [[4957, 4958], "valid"], [[4959, 4959], "valid"], [[4960, 4960], "valid", [], "NV8"], [[4961, 4988], "valid", [], "NV8"], [[4989, 4991], "disallowed"], [[4992, 5007], "valid"], [[5008, 5017], "valid", [], "NV8"], [[5018, 5023], "disallowed"], [[5024, 5108], "valid"], [[5109, 5109], "valid"], [[5110, 5111], "disallowed"], [[5112, 5112], "mapped", [5104]], [[5113, 5113], "mapped", [5105]], [[5114, 5114], "mapped", [5106]], [[5115, 5115], "mapped", [5107]], [[5116, 5116], "mapped", [5108]], [[5117, 5117], "mapped", [5109]], [[5118, 5119], "disallowed"], [[5120, 5120], "valid", [], "NV8"], [[5121, 5740], "valid"], [[5741, 5742], "valid", [], "NV8"], [[5743, 5750], "valid"], [[5751, 5759], "valid"], [[5760, 5760], "disallowed"], [[5761, 5786], "valid"], [[5787, 5788], "valid", [], "NV8"], [[5789, 5791], "disallowed"], [[5792, 5866], "valid"], [[5867, 5872], "valid", [], "NV8"], [[5873, 5880], "valid"], [[5881, 5887], "disallowed"], [[5888, 5900], "valid"], [[5901, 5901], "disallowed"], [[5902, 5908], "valid"], [[5909, 5919], "disallowed"], [[5920, 5940], "valid"], [[5941, 5942], "valid", [], "NV8"], [[5943, 5951], "disallowed"], [[5952, 5971], "valid"], [[5972, 5983], "disallowed"], [[5984, 5996], "valid"], [[5997, 5997], "disallowed"], [[5998, 6e3], "valid"], [[6001, 6001], "disallowed"], [[6002, 6003], "valid"], [[6004, 6015], "disallowed"], [[6016, 6067], "valid"], [[6068, 6069], "disallowed"], [[6070, 6099], "valid"], [[6100, 6102], "valid", [], "NV8"], [[6103, 6103], "valid"], [[6104, 6107], "valid", [], "NV8"], [[6108, 6108], "valid"], [[6109, 6109], "valid"], [[6110, 6111], "disallowed"], [[6112, 6121], "valid"], [[6122, 6127], "disallowed"], [[6128, 6137], "valid", [], "NV8"], [[6138, 6143], "disallowed"], [[6144, 6149], "valid", [], "NV8"], [[6150, 6150], "disallowed"], [[6151, 6154], "valid", [], "NV8"], [[6155, 6157], "ignored"], [[6158, 6158], "disallowed"], [[6159, 6159], "disallowed"], [[6160, 6169], "valid"], [[6170, 6175], "disallowed"], [[6176, 6263], "valid"], [[6264, 6271], "disallowed"], [[6272, 6313], "valid"], [[6314, 6314], "valid"], [[6315, 6319], "disallowed"], [[6320, 6389], "valid"], [[6390, 6399], "disallowed"], [[6400, 6428], "valid"], [[6429, 6430], "valid"], [[6431, 6431], "disallowed"], [[6432, 6443], "valid"], [[6444, 6447], "disallowed"], [[6448, 6459], "valid"], [[6460, 6463], "disallowed"], [[6464, 6464], "valid", [], "NV8"], [[6465, 6467], "disallowed"], [[6468, 6469], "valid", [], "NV8"], [[6470, 6509], "valid"], [[6510, 6511], "disallowed"], [[6512, 6516], "valid"], [[6517, 6527], "disallowed"], [[6528, 6569], "valid"], [[6570, 6571], "valid"], [[6572, 6575], "disallowed"], [[6576, 6601], "valid"], [[6602, 6607], "disallowed"], [[6608, 6617], "valid"], [[6618, 6618], "valid", [], "XV8"], [[6619, 6621], "disallowed"], [[6622, 6623], "valid", [], "NV8"], [[6624, 6655], "valid", [], "NV8"], [[6656, 6683], "valid"], [[6684, 6685], "disallowed"], [[6686, 6687], "valid", [], "NV8"], [[6688, 6750], "valid"], [[6751, 6751], "disallowed"], [[6752, 6780], "valid"], [[6781, 6782], "disallowed"], [[6783, 6793], "valid"], [[6794, 6799], "disallowed"], [[6800, 6809], "valid"], [[6810, 6815], "disallowed"], [[6816, 6822], "valid", [], "NV8"], [[6823, 6823], "valid"], [[6824, 6829], "valid", [], "NV8"], [[6830, 6831], "disallowed"], [[6832, 6845], "valid"], [[6846, 6846], "valid", [], "NV8"], [[6847, 6911], "disallowed"], [[6912, 6987], "valid"], [[6988, 6991], "disallowed"], [[6992, 7001], "valid"], [[7002, 7018], "valid", [], "NV8"], [[7019, 7027], "valid"], [[7028, 7036], "valid", [], "NV8"], [[7037, 7039], "disallowed"], [[7040, 7082], "valid"], [[7083, 7085], "valid"], [[7086, 7097], "valid"], [[7098, 7103], "valid"], [[7104, 7155], "valid"], [[7156, 7163], "disallowed"], [[7164, 7167], "valid", [], "NV8"], [[7168, 7223], "valid"], [[7224, 7226], "disallowed"], [[7227, 7231], "valid", [], "NV8"], [[7232, 7241], "valid"], [[7242, 7244], "disallowed"], [[7245, 7293], "valid"], [[7294, 7295], "valid", [], "NV8"], [[7296, 7359], "disallowed"], [[7360, 7367], "valid", [], "NV8"], [[7368, 7375], "disallowed"], [[7376, 7378], "valid"], [[7379, 7379], "valid", [], "NV8"], [[7380, 7410], "valid"], [[7411, 7414], "valid"], [[7415, 7415], "disallowed"], [[7416, 7417], "valid"], [[7418, 7423], "disallowed"], [[7424, 7467], "valid"], [[7468, 7468], "mapped", [97]], [[7469, 7469], "mapped", [230]], [[7470, 7470], "mapped", [98]], [[7471, 7471], "valid"], [[7472, 7472], "mapped", [100]], [[7473, 7473], "mapped", [101]], [[7474, 7474], "mapped", [477]], [[7475, 7475], "mapped", [103]], [[7476, 7476], "mapped", [104]], [[7477, 7477], "mapped", [105]], [[7478, 7478], "mapped", [106]], [[7479, 7479], "mapped", [107]], [[7480, 7480], "mapped", [108]], [[7481, 7481], "mapped", [109]], [[7482, 7482], "mapped", [110]], [[7483, 7483], "valid"], [[7484, 7484], "mapped", [111]], [[7485, 7485], "mapped", [547]], [[7486, 7486], "mapped", [112]], [[7487, 7487], "mapped", [114]], [[7488, 7488], "mapped", [116]], [[7489, 7489], "mapped", [117]], [[7490, 7490], "mapped", [119]], [[7491, 7491], "mapped", [97]], [[7492, 7492], "mapped", [592]], [[7493, 7493], "mapped", [593]], [[7494, 7494], "mapped", [7426]], [[7495, 7495], "mapped", [98]], [[7496, 7496], "mapped", [100]], [[7497, 7497], "mapped", [101]], [[7498, 7498], "mapped", [601]], [[7499, 7499], "mapped", [603]], [[7500, 7500], "mapped", [604]], [[7501, 7501], "mapped", [103]], [[7502, 7502], "valid"], [[7503, 7503], "mapped", [107]], [[7504, 7504], "mapped", [109]], [[7505, 7505], "mapped", [331]], [[7506, 7506], "mapped", [111]], [[7507, 7507], "mapped", [596]], [[7508, 7508], "mapped", [7446]], [[7509, 7509], "mapped", [7447]], [[7510, 7510], "mapped", [112]], [[7511, 7511], "mapped", [116]], [[7512, 7512], "mapped", [117]], [[7513, 7513], "mapped", [7453]], [[7514, 7514], "mapped", [623]], [[7515, 7515], "mapped", [118]], [[7516, 7516], "mapped", [7461]], [[7517, 7517], "mapped", [946]], [[7518, 7518], "mapped", [947]], [[7519, 7519], "mapped", [948]], [[7520, 7520], "mapped", [966]], [[7521, 7521], "mapped", [967]], [[7522, 7522], "mapped", [105]], [[7523, 7523], "mapped", [114]], [[7524, 7524], "mapped", [117]], [[7525, 7525], "mapped", [118]], [[7526, 7526], "mapped", [946]], [[7527, 7527], "mapped", [947]], [[7528, 7528], "mapped", [961]], [[7529, 7529], "mapped", [966]], [[7530, 7530], "mapped", [967]], [[7531, 7531], "valid"], [[7532, 7543], "valid"], [[7544, 7544], "mapped", [1085]], [[7545, 7578], "valid"], [[7579, 7579], "mapped", [594]], [[7580, 7580], "mapped", [99]], [[7581, 7581], "mapped", [597]], [[7582, 7582], "mapped", [240]], [[7583, 7583], "mapped", [604]], [[7584, 7584], "mapped", [102]], [[7585, 7585], "mapped", [607]], [[7586, 7586], "mapped", [609]], [[7587, 7587], "mapped", [613]], [[7588, 7588], "mapped", [616]], [[7589, 7589], "mapped", [617]], [[7590, 7590], "mapped", [618]], [[7591, 7591], "mapped", [7547]], [[7592, 7592], "mapped", [669]], [[7593, 7593], "mapped", [621]], [[7594, 7594], "mapped", [7557]], [[7595, 7595], "mapped", [671]], [[7596, 7596], "mapped", [625]], [[7597, 7597], "mapped", [624]], [[7598, 7598], "mapped", [626]], [[7599, 7599], "mapped", [627]], [[7600, 7600], "mapped", [628]], [[7601, 7601], "mapped", [629]], [[7602, 7602], "mapped", [632]], [[7603, 7603], "mapped", [642]], [[7604, 7604], "mapped", [643]], [[7605, 7605], "mapped", [427]], [[7606, 7606], "mapped", [649]], [[7607, 7607], "mapped", [650]], [[7608, 7608], "mapped", [7452]], [[7609, 7609], "mapped", [651]], [[7610, 7610], "mapped", [652]], [[7611, 7611], "mapped", [122]], [[7612, 7612], "mapped", [656]], [[7613, 7613], "mapped", [657]], [[7614, 7614], "mapped", [658]], [[7615, 7615], "mapped", [952]], [[7616, 7619], "valid"], [[7620, 7626], "valid"], [[7627, 7654], "valid"], [[7655, 7669], "valid"], [[7670, 7675], "disallowed"], [[7676, 7676], "valid"], [[7677, 7677], "valid"], [[7678, 7679], "valid"], [[7680, 7680], "mapped", [7681]], [[7681, 7681], "valid"], [[7682, 7682], "mapped", [7683]], [[7683, 7683], "valid"], [[7684, 7684], "mapped", [7685]], [[7685, 7685], "valid"], [[7686, 7686], "mapped", [7687]], [[7687, 7687], "valid"], [[7688, 7688], "mapped", [7689]], [[7689, 7689], "valid"], [[7690, 7690], "mapped", [7691]], [[7691, 7691], "valid"], [[7692, 7692], "mapped", [7693]], [[7693, 7693], "valid"], [[7694, 7694], "mapped", [7695]], [[7695, 7695], "valid"], [[7696, 7696], "mapped", [7697]], [[7697, 7697], "valid"], [[7698, 7698], "mapped", [7699]], [[7699, 7699], "valid"], [[7700, 7700], "mapped", [7701]], [[7701, 7701], "valid"], [[7702, 7702], "mapped", [7703]], [[7703, 7703], "valid"], [[7704, 7704], "mapped", [7705]], [[7705, 7705], "valid"], [[7706, 7706], "mapped", [7707]], [[7707, 7707], "valid"], [[7708, 7708], "mapped", [7709]], [[7709, 7709], "valid"], [[7710, 7710], "mapped", [7711]], [[7711, 7711], "valid"], [[7712, 7712], "mapped", [7713]], [[7713, 7713], "valid"], [[7714, 7714], "mapped", [7715]], [[7715, 7715], "valid"], [[7716, 7716], "mapped", [7717]], [[7717, 7717], "valid"], [[7718, 7718], "mapped", [7719]], [[7719, 7719], "valid"], [[7720, 7720], "mapped", [7721]], [[7721, 7721], "valid"], [[7722, 7722], "mapped", [7723]], [[7723, 7723], "valid"], [[7724, 7724], "mapped", [7725]], [[7725, 7725], "valid"], [[7726, 7726], "mapped", [7727]], [[7727, 7727], "valid"], [[7728, 7728], "mapped", [7729]], [[7729, 7729], "valid"], [[7730, 7730], "mapped", [7731]], [[7731, 7731], "valid"], [[7732, 7732], "mapped", [7733]], [[7733, 7733], "valid"], [[7734, 7734], "mapped", [7735]], [[7735, 7735], "valid"], [[7736, 7736], "mapped", [7737]], [[7737, 7737], "valid"], [[7738, 7738], "mapped", [7739]], [[7739, 7739], "valid"], [[7740, 7740], "mapped", [7741]], [[7741, 7741], "valid"], [[7742, 7742], "mapped", [7743]], [[7743, 7743], "valid"], [[7744, 7744], "mapped", [7745]], [[7745, 7745], "valid"], [[7746, 7746], "mapped", [7747]], [[7747, 7747], "valid"], [[7748, 7748], "mapped", [7749]], [[7749, 7749], "valid"], [[7750, 7750], "mapped", [7751]], [[7751, 7751], "valid"], [[7752, 7752], "mapped", [7753]], [[7753, 7753], "valid"], [[7754, 7754], "mapped", [7755]], [[7755, 7755], "valid"], [[7756, 7756], "mapped", [7757]], [[7757, 7757], "valid"], [[7758, 7758], "mapped", [7759]], [[7759, 7759], "valid"], [[7760, 7760], "mapped", [7761]], [[7761, 7761], "valid"], [[7762, 7762], "mapped", [7763]], [[7763, 7763], "valid"], [[7764, 7764], "mapped", [7765]], [[7765, 7765], "valid"], [[7766, 7766], "mapped", [7767]], [[7767, 7767], "valid"], [[7768, 7768], "mapped", [7769]], [[7769, 7769], "valid"], [[7770, 7770], "mapped", [7771]], [[7771, 7771], "valid"], [[7772, 7772], "mapped", [7773]], [[7773, 7773], "valid"], [[7774, 7774], "mapped", [7775]], [[7775, 7775], "valid"], [[7776, 7776], "mapped", [7777]], [[7777, 7777], "valid"], [[7778, 7778], "mapped", [7779]], [[7779, 7779], "valid"], [[7780, 7780], "mapped", [7781]], [[7781, 7781], "valid"], [[7782, 7782], "mapped", [7783]], [[7783, 7783], "valid"], [[7784, 7784], "mapped", [7785]], [[7785, 7785], "valid"], [[7786, 7786], "mapped", [7787]], [[7787, 7787], "valid"], [[7788, 7788], "mapped", [7789]], [[7789, 7789], "valid"], [[7790, 7790], "mapped", [7791]], [[7791, 7791], "valid"], [[7792, 7792], "mapped", [7793]], [[7793, 7793], "valid"], [[7794, 7794], "mapped", [7795]], [[7795, 7795], "valid"], [[7796, 7796], "mapped", [7797]], [[7797, 7797], "valid"], [[7798, 7798], "mapped", [7799]], [[7799, 7799], "valid"], [[7800, 7800], "mapped", [7801]], [[7801, 7801], "valid"], [[7802, 7802], "mapped", [7803]], [[7803, 7803], "valid"], [[7804, 7804], "mapped", [7805]], [[7805, 7805], "valid"], [[7806, 7806], "mapped", [7807]], [[7807, 7807], "valid"], [[7808, 7808], "mapped", [7809]], [[7809, 7809], "valid"], [[7810, 7810], "mapped", [7811]], [[7811, 7811], "valid"], [[7812, 7812], "mapped", [7813]], [[7813, 7813], "valid"], [[7814, 7814], "mapped", [7815]], [[7815, 7815], "valid"], [[7816, 7816], "mapped", [7817]], [[7817, 7817], "valid"], [[7818, 7818], "mapped", [7819]], [[7819, 7819], "valid"], [[7820, 7820], "mapped", [7821]], [[7821, 7821], "valid"], [[7822, 7822], "mapped", [7823]], [[7823, 7823], "valid"], [[7824, 7824], "mapped", [7825]], [[7825, 7825], "valid"], [[7826, 7826], "mapped", [7827]], [[7827, 7827], "valid"], [[7828, 7828], "mapped", [7829]], [[7829, 7833], "valid"], [[7834, 7834], "mapped", [97, 702]], [[7835, 7835], "mapped", [7777]], [[7836, 7837], "valid"], [[7838, 7838], "mapped", [115, 115]], [[7839, 7839], "valid"], [[7840, 7840], "mapped", [7841]], [[7841, 7841], "valid"], [[7842, 7842], "mapped", [7843]], [[7843, 7843], "valid"], [[7844, 7844], "mapped", [7845]], [[7845, 7845], "valid"], [[7846, 7846], "mapped", [7847]], [[7847, 7847], "valid"], [[7848, 7848], "mapped", [7849]], [[7849, 7849], "valid"], [[7850, 7850], "mapped", [7851]], [[7851, 7851], "valid"], [[7852, 7852], "mapped", [7853]], [[7853, 7853], "valid"], [[7854, 7854], "mapped", [7855]], [[7855, 7855], "valid"], [[7856, 7856], "mapped", [7857]], [[7857, 7857], "valid"], [[7858, 7858], "mapped", [7859]], [[7859, 7859], "valid"], [[7860, 7860], "mapped", [7861]], [[7861, 7861], "valid"], [[7862, 7862], "mapped", [7863]], [[7863, 7863], "valid"], [[7864, 7864], "mapped", [7865]], [[7865, 7865], "valid"], [[7866, 7866], "mapped", [7867]], [[7867, 7867], "valid"], [[7868, 7868], "mapped", [7869]], [[7869, 7869], "valid"], [[7870, 7870], "mapped", [7871]], [[7871, 7871], "valid"], [[7872, 7872], "mapped", [7873]], [[7873, 7873], "valid"], [[7874, 7874], "mapped", [7875]], [[7875, 7875], "valid"], [[7876, 7876], "mapped", [7877]], [[7877, 7877], "valid"], [[7878, 7878], "mapped", [7879]], [[7879, 7879], "valid"], [[7880, 7880], "mapped", [7881]], [[7881, 7881], "valid"], [[7882, 7882], "mapped", [7883]], [[7883, 7883], "valid"], [[7884, 7884], "mapped", [7885]], [[7885, 7885], "valid"], [[7886, 7886], "mapped", [7887]], [[7887, 7887], "valid"], [[7888, 7888], "mapped", [7889]], [[7889, 7889], "valid"], [[7890, 7890], "mapped", [7891]], [[7891, 7891], "valid"], [[7892, 7892], "mapped", [7893]], [[7893, 7893], "valid"], [[7894, 7894], "mapped", [7895]], [[7895, 7895], "valid"], [[7896, 7896], "mapped", [7897]], [[7897, 7897], "valid"], [[7898, 7898], "mapped", [7899]], [[7899, 7899], "valid"], [[7900, 7900], "mapped", [7901]], [[7901, 7901], "valid"], [[7902, 7902], "mapped", [7903]], [[7903, 7903], "valid"], [[7904, 7904], "mapped", [7905]], [[7905, 7905], "valid"], [[7906, 7906], "mapped", [7907]], [[7907, 7907], "valid"], [[7908, 7908], "mapped", [7909]], [[7909, 7909], "valid"], [[7910, 7910], "mapped", [7911]], [[7911, 7911], "valid"], [[7912, 7912], "mapped", [7913]], [[7913, 7913], "valid"], [[7914, 7914], "mapped", [7915]], [[7915, 7915], "valid"], [[7916, 7916], "mapped", [7917]], [[7917, 7917], "valid"], [[7918, 7918], "mapped", [7919]], [[7919, 7919], "valid"], [[7920, 7920], "mapped", [7921]], [[7921, 7921], "valid"], [[7922, 7922], "mapped", [7923]], [[7923, 7923], "valid"], [[7924, 7924], "mapped", [7925]], [[7925, 7925], "valid"], [[7926, 7926], "mapped", [7927]], [[7927, 7927], "valid"], [[7928, 7928], "mapped", [7929]], [[7929, 7929], "valid"], [[7930, 7930], "mapped", [7931]], [[7931, 7931], "valid"], [[7932, 7932], "mapped", [7933]], [[7933, 7933], "valid"], [[7934, 7934], "mapped", [7935]], [[7935, 7935], "valid"], [[7936, 7943], "valid"], [[7944, 7944], "mapped", [7936]], [[7945, 7945], "mapped", [7937]], [[7946, 7946], "mapped", [7938]], [[7947, 7947], "mapped", [7939]], [[7948, 7948], "mapped", [7940]], [[7949, 7949], "mapped", [7941]], [[7950, 7950], "mapped", [7942]], [[7951, 7951], "mapped", [7943]], [[7952, 7957], "valid"], [[7958, 7959], "disallowed"], [[7960, 7960], "mapped", [7952]], [[7961, 7961], "mapped", [7953]], [[7962, 7962], "mapped", [7954]], [[7963, 7963], "mapped", [7955]], [[7964, 7964], "mapped", [7956]], [[7965, 7965], "mapped", [7957]], [[7966, 7967], "disallowed"], [[7968, 7975], "valid"], [[7976, 7976], "mapped", [7968]], [[7977, 7977], "mapped", [7969]], [[7978, 7978], "mapped", [7970]], [[7979, 7979], "mapped", [7971]], [[7980, 7980], "mapped", [7972]], [[7981, 7981], "mapped", [7973]], [[7982, 7982], "mapped", [7974]], [[7983, 7983], "mapped", [7975]], [[7984, 7991], "valid"], [[7992, 7992], "mapped", [7984]], [[7993, 7993], "mapped", [7985]], [[7994, 7994], "mapped", [7986]], [[7995, 7995], "mapped", [7987]], [[7996, 7996], "mapped", [7988]], [[7997, 7997], "mapped", [7989]], [[7998, 7998], "mapped", [7990]], [[7999, 7999], "mapped", [7991]], [[8e3, 8005], "valid"], [[8006, 8007], "disallowed"], [[8008, 8008], "mapped", [8e3]], [[8009, 8009], "mapped", [8001]], [[8010, 8010], "mapped", [8002]], [[8011, 8011], "mapped", [8003]], [[8012, 8012], "mapped", [8004]], [[8013, 8013], "mapped", [8005]], [[8014, 8015], "disallowed"], [[8016, 8023], "valid"], [[8024, 8024], "disallowed"], [[8025, 8025], "mapped", [8017]], [[8026, 8026], "disallowed"], [[8027, 8027], "mapped", [8019]], [[8028, 8028], "disallowed"], [[8029, 8029], "mapped", [8021]], [[8030, 8030], "disallowed"], [[8031, 8031], "mapped", [8023]], [[8032, 8039], "valid"], [[8040, 8040], "mapped", [8032]], [[8041, 8041], "mapped", [8033]], [[8042, 8042], "mapped", [8034]], [[8043, 8043], "mapped", [8035]], [[8044, 8044], "mapped", [8036]], [[8045, 8045], "mapped", [8037]], [[8046, 8046], "mapped", [8038]], [[8047, 8047], "mapped", [8039]], [[8048, 8048], "valid"], [[8049, 8049], "mapped", [940]], [[8050, 8050], "valid"], [[8051, 8051], "mapped", [941]], [[8052, 8052], "valid"], [[8053, 8053], "mapped", [942]], [[8054, 8054], "valid"], [[8055, 8055], "mapped", [943]], [[8056, 8056], "valid"], [[8057, 8057], "mapped", [972]], [[8058, 8058], "valid"], [[8059, 8059], "mapped", [973]], [[8060, 8060], "valid"], [[8061, 8061], "mapped", [974]], [[8062, 8063], "disallowed"], [[8064, 8064], "mapped", [7936, 953]], [[8065, 8065], "mapped", [7937, 953]], [[8066, 8066], "mapped", [7938, 953]], [[8067, 8067], "mapped", [7939, 953]], [[8068, 8068], "mapped", [7940, 953]], [[8069, 8069], "mapped", [7941, 953]], [[8070, 8070], "mapped", [7942, 953]], [[8071, 8071], "mapped", [7943, 953]], [[8072, 8072], "mapped", [7936, 953]], [[8073, 8073], "mapped", [7937, 953]], [[8074, 8074], "mapped", [7938, 953]], [[8075, 8075], "mapped", [7939, 953]], [[8076, 8076], "mapped", [7940, 953]], [[8077, 8077], "mapped", [7941, 953]], [[8078, 8078], "mapped", [7942, 953]], [[8079, 8079], "mapped", [7943, 953]], [[8080, 8080], "mapped", [7968, 953]], [[8081, 8081], "mapped", [7969, 953]], [[8082, 8082], "mapped", [7970, 953]], [[8083, 8083], "mapped", [7971, 953]], [[8084, 8084], "mapped", [7972, 953]], [[8085, 8085], "mapped", [7973, 953]], [[8086, 8086], "mapped", [7974, 953]], [[8087, 8087], "mapped", [7975, 953]], [[8088, 8088], "mapped", [7968, 953]], [[8089, 8089], "mapped", [7969, 953]], [[8090, 8090], "mapped", [7970, 953]], [[8091, 8091], "mapped", [7971, 953]], [[8092, 8092], "mapped", [7972, 953]], [[8093, 8093], "mapped", [7973, 953]], [[8094, 8094], "mapped", [7974, 953]], [[8095, 8095], "mapped", [7975, 953]], [[8096, 8096], "mapped", [8032, 953]], [[8097, 8097], "mapped", [8033, 953]], [[8098, 8098], "mapped", [8034, 953]], [[8099, 8099], "mapped", [8035, 953]], [[8100, 8100], "mapped", [8036, 953]], [[8101, 8101], "mapped", [8037, 953]], [[8102, 8102], "mapped", [8038, 953]], [[8103, 8103], "mapped", [8039, 953]], [[8104, 8104], "mapped", [8032, 953]], [[8105, 8105], "mapped", [8033, 953]], [[8106, 8106], "mapped", [8034, 953]], [[8107, 8107], "mapped", [8035, 953]], [[8108, 8108], "mapped", [8036, 953]], [[8109, 8109], "mapped", [8037, 953]], [[8110, 8110], "mapped", [8038, 953]], [[8111, 8111], "mapped", [8039, 953]], [[8112, 8113], "valid"], [[8114, 8114], "mapped", [8048, 953]], [[8115, 8115], "mapped", [945, 953]], [[8116, 8116], "mapped", [940, 953]], [[8117, 8117], "disallowed"], [[8118, 8118], "valid"], [[8119, 8119], "mapped", [8118, 953]], [[8120, 8120], "mapped", [8112]], [[8121, 8121], "mapped", [8113]], [[8122, 8122], "mapped", [8048]], [[8123, 8123], "mapped", [940]], [[8124, 8124], "mapped", [945, 953]], [[8125, 8125], "disallowed_STD3_mapped", [32, 787]], [[8126, 8126], "mapped", [953]], [[8127, 8127], "disallowed_STD3_mapped", [32, 787]], [[8128, 8128], "disallowed_STD3_mapped", [32, 834]], [[8129, 8129], "disallowed_STD3_mapped", [32, 776, 834]], [[8130, 8130], "mapped", [8052, 953]], [[8131, 8131], "mapped", [951, 953]], [[8132, 8132], "mapped", [942, 953]], [[8133, 8133], "disallowed"], [[8134, 8134], "valid"], [[8135, 8135], "mapped", [8134, 953]], [[8136, 8136], "mapped", [8050]], [[8137, 8137], "mapped", [941]], [[8138, 8138], "mapped", [8052]], [[8139, 8139], "mapped", [942]], [[8140, 8140], "mapped", [951, 953]], [[8141, 8141], "disallowed_STD3_mapped", [32, 787, 768]], [[8142, 8142], "disallowed_STD3_mapped", [32, 787, 769]], [[8143, 8143], "disallowed_STD3_mapped", [32, 787, 834]], [[8144, 8146], "valid"], [[8147, 8147], "mapped", [912]], [[8148, 8149], "disallowed"], [[8150, 8151], "valid"], [[8152, 8152], "mapped", [8144]], [[8153, 8153], "mapped", [8145]], [[8154, 8154], "mapped", [8054]], [[8155, 8155], "mapped", [943]], [[8156, 8156], "disallowed"], [[8157, 8157], "disallowed_STD3_mapped", [32, 788, 768]], [[8158, 8158], "disallowed_STD3_mapped", [32, 788, 769]], [[8159, 8159], "disallowed_STD3_mapped", [32, 788, 834]], [[8160, 8162], "valid"], [[8163, 8163], "mapped", [944]], [[8164, 8167], "valid"], [[8168, 8168], "mapped", [8160]], [[8169, 8169], "mapped", [8161]], [[8170, 8170], "mapped", [8058]], [[8171, 8171], "mapped", [973]], [[8172, 8172], "mapped", [8165]], [[8173, 8173], "disallowed_STD3_mapped", [32, 776, 768]], [[8174, 8174], "disallowed_STD3_mapped", [32, 776, 769]], [[8175, 8175], "disallowed_STD3_mapped", [96]], [[8176, 8177], "disallowed"], [[8178, 8178], "mapped", [8060, 953]], [[8179, 8179], "mapped", [969, 953]], [[8180, 8180], "mapped", [974, 953]], [[8181, 8181], "disallowed"], [[8182, 8182], "valid"], [[8183, 8183], "mapped", [8182, 953]], [[8184, 8184], "mapped", [8056]], [[8185, 8185], "mapped", [972]], [[8186, 8186], "mapped", [8060]], [[8187, 8187], "mapped", [974]], [[8188, 8188], "mapped", [969, 953]], [[8189, 8189], "disallowed_STD3_mapped", [32, 769]], [[8190, 8190], "disallowed_STD3_mapped", [32, 788]], [[8191, 8191], "disallowed"], [[8192, 8202], "disallowed_STD3_mapped", [32]], [[8203, 8203], "ignored"], [[8204, 8205], "deviation", []], [[8206, 8207], "disallowed"], [[8208, 8208], "valid", [], "NV8"], [[8209, 8209], "mapped", [8208]], [[8210, 8214], "valid", [], "NV8"], [[8215, 8215], "disallowed_STD3_mapped", [32, 819]], [[8216, 8227], "valid", [], "NV8"], [[8228, 8230], "disallowed"], [[8231, 8231], "valid", [], "NV8"], [[8232, 8238], "disallowed"], [[8239, 8239], "disallowed_STD3_mapped", [32]], [[8240, 8242], "valid", [], "NV8"], [[8243, 8243], "mapped", [8242, 8242]], [[8244, 8244], "mapped", [8242, 8242, 8242]], [[8245, 8245], "valid", [], "NV8"], [[8246, 8246], "mapped", [8245, 8245]], [[8247, 8247], "mapped", [8245, 8245, 8245]], [[8248, 8251], "valid", [], "NV8"], [[8252, 8252], "disallowed_STD3_mapped", [33, 33]], [[8253, 8253], "valid", [], "NV8"], [[8254, 8254], "disallowed_STD3_mapped", [32, 773]], [[8255, 8262], "valid", [], "NV8"], [[8263, 8263], "disallowed_STD3_mapped", [63, 63]], [[8264, 8264], "disallowed_STD3_mapped", [63, 33]], [[8265, 8265], "disallowed_STD3_mapped", [33, 63]], [[8266, 8269], "valid", [], "NV8"], [[8270, 8274], "valid", [], "NV8"], [[8275, 8276], "valid", [], "NV8"], [[8277, 8278], "valid", [], "NV8"], [[8279, 8279], "mapped", [8242, 8242, 8242, 8242]], [[8280, 8286], "valid", [], "NV8"], [[8287, 8287], "disallowed_STD3_mapped", [32]], [[8288, 8288], "ignored"], [[8289, 8291], "disallowed"], [[8292, 8292], "ignored"], [[8293, 8293], "disallowed"], [[8294, 8297], "disallowed"], [[8298, 8303], "disallowed"], [[8304, 8304], "mapped", [48]], [[8305, 8305], "mapped", [105]], [[8306, 8307], "disallowed"], [[8308, 8308], "mapped", [52]], [[8309, 8309], "mapped", [53]], [[8310, 8310], "mapped", [54]], [[8311, 8311], "mapped", [55]], [[8312, 8312], "mapped", [56]], [[8313, 8313], "mapped", [57]], [[8314, 8314], "disallowed_STD3_mapped", [43]], [[8315, 8315], "mapped", [8722]], [[8316, 8316], "disallowed_STD3_mapped", [61]], [[8317, 8317], "disallowed_STD3_mapped", [40]], [[8318, 8318], "disallowed_STD3_mapped", [41]], [[8319, 8319], "mapped", [110]], [[8320, 8320], "mapped", [48]], [[8321, 8321], "mapped", [49]], [[8322, 8322], "mapped", [50]], [[8323, 8323], "mapped", [51]], [[8324, 8324], "mapped", [52]], [[8325, 8325], "mapped", [53]], [[8326, 8326], "mapped", [54]], [[8327, 8327], "mapped", [55]], [[8328, 8328], "mapped", [56]], [[8329, 8329], "mapped", [57]], [[8330, 8330], "disallowed_STD3_mapped", [43]], [[8331, 8331], "mapped", [8722]], [[8332, 8332], "disallowed_STD3_mapped", [61]], [[8333, 8333], "disallowed_STD3_mapped", [40]], [[8334, 8334], "disallowed_STD3_mapped", [41]], [[8335, 8335], "disallowed"], [[8336, 8336], "mapped", [97]], [[8337, 8337], "mapped", [101]], [[8338, 8338], "mapped", [111]], [[8339, 8339], "mapped", [120]], [[8340, 8340], "mapped", [601]], [[8341, 8341], "mapped", [104]], [[8342, 8342], "mapped", [107]], [[8343, 8343], "mapped", [108]], [[8344, 8344], "mapped", [109]], [[8345, 8345], "mapped", [110]], [[8346, 8346], "mapped", [112]], [[8347, 8347], "mapped", [115]], [[8348, 8348], "mapped", [116]], [[8349, 8351], "disallowed"], [[8352, 8359], "valid", [], "NV8"], [[8360, 8360], "mapped", [114, 115]], [[8361, 8362], "valid", [], "NV8"], [[8363, 8363], "valid", [], "NV8"], [[8364, 8364], "valid", [], "NV8"], [[8365, 8367], "valid", [], "NV8"], [[8368, 8369], "valid", [], "NV8"], [[8370, 8373], "valid", [], "NV8"], [[8374, 8376], "valid", [], "NV8"], [[8377, 8377], "valid", [], "NV8"], [[8378, 8378], "valid", [], "NV8"], [[8379, 8381], "valid", [], "NV8"], [[8382, 8382], "valid", [], "NV8"], [[8383, 8399], "disallowed"], [[8400, 8417], "valid", [], "NV8"], [[8418, 8419], "valid", [], "NV8"], [[8420, 8426], "valid", [], "NV8"], [[8427, 8427], "valid", [], "NV8"], [[8428, 8431], "valid", [], "NV8"], [[8432, 8432], "valid", [], "NV8"], [[8433, 8447], "disallowed"], [[8448, 8448], "disallowed_STD3_mapped", [97, 47, 99]], [[8449, 8449], "disallowed_STD3_mapped", [97, 47, 115]], [[8450, 8450], "mapped", [99]], [[8451, 8451], "mapped", [176, 99]], [[8452, 8452], "valid", [], "NV8"], [[8453, 8453], "disallowed_STD3_mapped", [99, 47, 111]], [[8454, 8454], "disallowed_STD3_mapped", [99, 47, 117]], [[8455, 8455], "mapped", [603]], [[8456, 8456], "valid", [], "NV8"], [[8457, 8457], "mapped", [176, 102]], [[8458, 8458], "mapped", [103]], [[8459, 8462], "mapped", [104]], [[8463, 8463], "mapped", [295]], [[8464, 8465], "mapped", [105]], [[8466, 8467], "mapped", [108]], [[8468, 8468], "valid", [], "NV8"], [[8469, 8469], "mapped", [110]], [[8470, 8470], "mapped", [110, 111]], [[8471, 8472], "valid", [], "NV8"], [[8473, 8473], "mapped", [112]], [[8474, 8474], "mapped", [113]], [[8475, 8477], "mapped", [114]], [[8478, 8479], "valid", [], "NV8"], [[8480, 8480], "mapped", [115, 109]], [[8481, 8481], "mapped", [116, 101, 108]], [[8482, 8482], "mapped", [116, 109]], [[8483, 8483], "valid", [], "NV8"], [[8484, 8484], "mapped", [122]], [[8485, 8485], "valid", [], "NV8"], [[8486, 8486], "mapped", [969]], [[8487, 8487], "valid", [], "NV8"], [[8488, 8488], "mapped", [122]], [[8489, 8489], "valid", [], "NV8"], [[8490, 8490], "mapped", [107]], [[8491, 8491], "mapped", [229]], [[8492, 8492], "mapped", [98]], [[8493, 8493], "mapped", [99]], [[8494, 8494], "valid", [], "NV8"], [[8495, 8496], "mapped", [101]], [[8497, 8497], "mapped", [102]], [[8498, 8498], "disallowed"], [[8499, 8499], "mapped", [109]], [[8500, 8500], "mapped", [111]], [[8501, 8501], "mapped", [1488]], [[8502, 8502], "mapped", [1489]], [[8503, 8503], "mapped", [1490]], [[8504, 8504], "mapped", [1491]], [[8505, 8505], "mapped", [105]], [[8506, 8506], "valid", [], "NV8"], [[8507, 8507], "mapped", [102, 97, 120]], [[8508, 8508], "mapped", [960]], [[8509, 8510], "mapped", [947]], [[8511, 8511], "mapped", [960]], [[8512, 8512], "mapped", [8721]], [[8513, 8516], "valid", [], "NV8"], [[8517, 8518], "mapped", [100]], [[8519, 8519], "mapped", [101]], [[8520, 8520], "mapped", [105]], [[8521, 8521], "mapped", [106]], [[8522, 8523], "valid", [], "NV8"], [[8524, 8524], "valid", [], "NV8"], [[8525, 8525], "valid", [], "NV8"], [[8526, 8526], "valid"], [[8527, 8527], "valid", [], "NV8"], [[8528, 8528], "mapped", [49, 8260, 55]], [[8529, 8529], "mapped", [49, 8260, 57]], [[8530, 8530], "mapped", [49, 8260, 49, 48]], [[8531, 8531], "mapped", [49, 8260, 51]], [[8532, 8532], "mapped", [50, 8260, 51]], [[8533, 8533], "mapped", [49, 8260, 53]], [[8534, 8534], "mapped", [50, 8260, 53]], [[8535, 8535], "mapped", [51, 8260, 53]], [[8536, 8536], "mapped", [52, 8260, 53]], [[8537, 8537], "mapped", [49, 8260, 54]], [[8538, 8538], "mapped", [53, 8260, 54]], [[8539, 8539], "mapped", [49, 8260, 56]], [[8540, 8540], "mapped", [51, 8260, 56]], [[8541, 8541], "mapped", [53, 8260, 56]], [[8542, 8542], "mapped", [55, 8260, 56]], [[8543, 8543], "mapped", [49, 8260]], [[8544, 8544], "mapped", [105]], [[8545, 8545], "mapped", [105, 105]], [[8546, 8546], "mapped", [105, 105, 105]], [[8547, 8547], "mapped", [105, 118]], [[8548, 8548], "mapped", [118]], [[8549, 8549], "mapped", [118, 105]], [[8550, 8550], "mapped", [118, 105, 105]], [[8551, 8551], "mapped", [118, 105, 105, 105]], [[8552, 8552], "mapped", [105, 120]], [[8553, 8553], "mapped", [120]], [[8554, 8554], "mapped", [120, 105]], [[8555, 8555], "mapped", [120, 105, 105]], [[8556, 8556], "mapped", [108]], [[8557, 8557], "mapped", [99]], [[8558, 8558], "mapped", [100]], [[8559, 8559], "mapped", [109]], [[8560, 8560], "mapped", [105]], [[8561, 8561], "mapped", [105, 105]], [[8562, 8562], "mapped", [105, 105, 105]], [[8563, 8563], "mapped", [105, 118]], [[8564, 8564], "mapped", [118]], [[8565, 8565], "mapped", [118, 105]], [[8566, 8566], "mapped", [118, 105, 105]], [[8567, 8567], "mapped", [118, 105, 105, 105]], [[8568, 8568], "mapped", [105, 120]], [[8569, 8569], "mapped", [120]], [[8570, 8570], "mapped", [120, 105]], [[8571, 8571], "mapped", [120, 105, 105]], [[8572, 8572], "mapped", [108]], [[8573, 8573], "mapped", [99]], [[8574, 8574], "mapped", [100]], [[8575, 8575], "mapped", [109]], [[8576, 8578], "valid", [], "NV8"], [[8579, 8579], "disallowed"], [[8580, 8580], "valid"], [[8581, 8584], "valid", [], "NV8"], [[8585, 8585], "mapped", [48, 8260, 51]], [[8586, 8587], "valid", [], "NV8"], [[8588, 8591], "disallowed"], [[8592, 8682], "valid", [], "NV8"], [[8683, 8691], "valid", [], "NV8"], [[8692, 8703], "valid", [], "NV8"], [[8704, 8747], "valid", [], "NV8"], [[8748, 8748], "mapped", [8747, 8747]], [[8749, 8749], "mapped", [8747, 8747, 8747]], [[8750, 8750], "valid", [], "NV8"], [[8751, 8751], "mapped", [8750, 8750]], [[8752, 8752], "mapped", [8750, 8750, 8750]], [[8753, 8799], "valid", [], "NV8"], [[8800, 8800], "disallowed_STD3_valid"], [[8801, 8813], "valid", [], "NV8"], [[8814, 8815], "disallowed_STD3_valid"], [[8816, 8945], "valid", [], "NV8"], [[8946, 8959], "valid", [], "NV8"], [[8960, 8960], "valid", [], "NV8"], [[8961, 8961], "valid", [], "NV8"], [[8962, 9e3], "valid", [], "NV8"], [[9001, 9001], "mapped", [12296]], [[9002, 9002], "mapped", [12297]], [[9003, 9082], "valid", [], "NV8"], [[9083, 9083], "valid", [], "NV8"], [[9084, 9084], "valid", [], "NV8"], [[9085, 9114], "valid", [], "NV8"], [[9115, 9166], "valid", [], "NV8"], [[9167, 9168], "valid", [], "NV8"], [[9169, 9179], "valid", [], "NV8"], [[9180, 9191], "valid", [], "NV8"], [[9192, 9192], "valid", [], "NV8"], [[9193, 9203], "valid", [], "NV8"], [[9204, 9210], "valid", [], "NV8"], [[9211, 9215], "disallowed"], [[9216, 9252], "valid", [], "NV8"], [[9253, 9254], "valid", [], "NV8"], [[9255, 9279], "disallowed"], [[9280, 9290], "valid", [], "NV8"], [[9291, 9311], "disallowed"], [[9312, 9312], "mapped", [49]], [[9313, 9313], "mapped", [50]], [[9314, 9314], "mapped", [51]], [[9315, 9315], "mapped", [52]], [[9316, 9316], "mapped", [53]], [[9317, 9317], "mapped", [54]], [[9318, 9318], "mapped", [55]], [[9319, 9319], "mapped", [56]], [[9320, 9320], "mapped", [57]], [[9321, 9321], "mapped", [49, 48]], [[9322, 9322], "mapped", [49, 49]], [[9323, 9323], "mapped", [49, 50]], [[9324, 9324], "mapped", [49, 51]], [[9325, 9325], "mapped", [49, 52]], [[9326, 9326], "mapped", [49, 53]], [[9327, 9327], "mapped", [49, 54]], [[9328, 9328], "mapped", [49, 55]], [[9329, 9329], "mapped", [49, 56]], [[9330, 9330], "mapped", [49, 57]], [[9331, 9331], "mapped", [50, 48]], [[9332, 9332], "disallowed_STD3_mapped", [40, 49, 41]], [[9333, 9333], "disallowed_STD3_mapped", [40, 50, 41]], [[9334, 9334], "disallowed_STD3_mapped", [40, 51, 41]], [[9335, 9335], "disallowed_STD3_mapped", [40, 52, 41]], [[9336, 9336], "disallowed_STD3_mapped", [40, 53, 41]], [[9337, 9337], "disallowed_STD3_mapped", [40, 54, 41]], [[9338, 9338], "disallowed_STD3_mapped", [40, 55, 41]], [[9339, 9339], "disallowed_STD3_mapped", [40, 56, 41]], [[9340, 9340], "disallowed_STD3_mapped", [40, 57, 41]], [[9341, 9341], "disallowed_STD3_mapped", [40, 49, 48, 41]], [[9342, 9342], "disallowed_STD3_mapped", [40, 49, 49, 41]], [[9343, 9343], "disallowed_STD3_mapped", [40, 49, 50, 41]], [[9344, 9344], "disallowed_STD3_mapped", [40, 49, 51, 41]], [[9345, 9345], "disallowed_STD3_mapped", [40, 49, 52, 41]], [[9346, 9346], "disallowed_STD3_mapped", [40, 49, 53, 41]], [[9347, 9347], "disallowed_STD3_mapped", [40, 49, 54, 41]], [[9348, 9348], "disallowed_STD3_mapped", [40, 49, 55, 41]], [[9349, 9349], "disallowed_STD3_mapped", [40, 49, 56, 41]], [[9350, 9350], "disallowed_STD3_mapped", [40, 49, 57, 41]], [[9351, 9351], "disallowed_STD3_mapped", [40, 50, 48, 41]], [[9352, 9371], "disallowed"], [[9372, 9372], "disallowed_STD3_mapped", [40, 97, 41]], [[9373, 9373], "disallowed_STD3_mapped", [40, 98, 41]], [[9374, 9374], "disallowed_STD3_mapped", [40, 99, 41]], [[9375, 9375], "disallowed_STD3_mapped", [40, 100, 41]], [[9376, 9376], "disallowed_STD3_mapped", [40, 101, 41]], [[9377, 9377], "disallowed_STD3_mapped", [40, 102, 41]], [[9378, 9378], "disallowed_STD3_mapped", [40, 103, 41]], [[9379, 9379], "disallowed_STD3_mapped", [40, 104, 41]], [[9380, 9380], "disallowed_STD3_mapped", [40, 105, 41]], [[9381, 9381], "disallowed_STD3_mapped", [40, 106, 41]], [[9382, 9382], "disallowed_STD3_mapped", [40, 107, 41]], [[9383, 9383], "disallowed_STD3_mapped", [40, 108, 41]], [[9384, 9384], "disallowed_STD3_mapped", [40, 109, 41]], [[9385, 9385], "disallowed_STD3_mapped", [40, 110, 41]], [[9386, 9386], "disallowed_STD3_mapped", [40, 111, 41]], [[9387, 9387], "disallowed_STD3_mapped", [40, 112, 41]], [[9388, 9388], "disallowed_STD3_mapped", [40, 113, 41]], [[9389, 9389], "disallowed_STD3_mapped", [40, 114, 41]], [[9390, 9390], "disallowed_STD3_mapped", [40, 115, 41]], [[9391, 9391], "disallowed_STD3_mapped", [40, 116, 41]], [[9392, 9392], "disallowed_STD3_mapped", [40, 117, 41]], [[9393, 9393], "disallowed_STD3_mapped", [40, 118, 41]], [[9394, 9394], "disallowed_STD3_mapped", [40, 119, 41]], [[9395, 9395], "disallowed_STD3_mapped", [40, 120, 41]], [[9396, 9396], "disallowed_STD3_mapped", [40, 121, 41]], [[9397, 9397], "disallowed_STD3_mapped", [40, 122, 41]], [[9398, 9398], "mapped", [97]], [[9399, 9399], "mapped", [98]], [[9400, 9400], "mapped", [99]], [[9401, 9401], "mapped", [100]], [[9402, 9402], "mapped", [101]], [[9403, 9403], "mapped", [102]], [[9404, 9404], "mapped", [103]], [[9405, 9405], "mapped", [104]], [[9406, 9406], "mapped", [105]], [[9407, 9407], "mapped", [106]], [[9408, 9408], "mapped", [107]], [[9409, 9409], "mapped", [108]], [[9410, 9410], "mapped", [109]], [[9411, 9411], "mapped", [110]], [[9412, 9412], "mapped", [111]], [[9413, 9413], "mapped", [112]], [[9414, 9414], "mapped", [113]], [[9415, 9415], "mapped", [114]], [[9416, 9416], "mapped", [115]], [[9417, 9417], "mapped", [116]], [[9418, 9418], "mapped", [117]], [[9419, 9419], "mapped", [118]], [[9420, 9420], "mapped", [119]], [[9421, 9421], "mapped", [120]], [[9422, 9422], "mapped", [121]], [[9423, 9423], "mapped", [122]], [[9424, 9424], "mapped", [97]], [[9425, 9425], "mapped", [98]], [[9426, 9426], "mapped", [99]], [[9427, 9427], "mapped", [100]], [[9428, 9428], "mapped", [101]], [[9429, 9429], "mapped", [102]], [[9430, 9430], "mapped", [103]], [[9431, 9431], "mapped", [104]], [[9432, 9432], "mapped", [105]], [[9433, 9433], "mapped", [106]], [[9434, 9434], "mapped", [107]], [[9435, 9435], "mapped", [108]], [[9436, 9436], "mapped", [109]], [[9437, 9437], "mapped", [110]], [[9438, 9438], "mapped", [111]], [[9439, 9439], "mapped", [112]], [[9440, 9440], "mapped", [113]], [[9441, 9441], "mapped", [114]], [[9442, 9442], "mapped", [115]], [[9443, 9443], "mapped", [116]], [[9444, 9444], "mapped", [117]], [[9445, 9445], "mapped", [118]], [[9446, 9446], "mapped", [119]], [[9447, 9447], "mapped", [120]], [[9448, 9448], "mapped", [121]], [[9449, 9449], "mapped", [122]], [[9450, 9450], "mapped", [48]], [[9451, 9470], "valid", [], "NV8"], [[9471, 9471], "valid", [], "NV8"], [[9472, 9621], "valid", [], "NV8"], [[9622, 9631], "valid", [], "NV8"], [[9632, 9711], "valid", [], "NV8"], [[9712, 9719], "valid", [], "NV8"], [[9720, 9727], "valid", [], "NV8"], [[9728, 9747], "valid", [], "NV8"], [[9748, 9749], "valid", [], "NV8"], [[9750, 9751], "valid", [], "NV8"], [[9752, 9752], "valid", [], "NV8"], [[9753, 9753], "valid", [], "NV8"], [[9754, 9839], "valid", [], "NV8"], [[9840, 9841], "valid", [], "NV8"], [[9842, 9853], "valid", [], "NV8"], [[9854, 9855], "valid", [], "NV8"], [[9856, 9865], "valid", [], "NV8"], [[9866, 9873], "valid", [], "NV8"], [[9874, 9884], "valid", [], "NV8"], [[9885, 9885], "valid", [], "NV8"], [[9886, 9887], "valid", [], "NV8"], [[9888, 9889], "valid", [], "NV8"], [[9890, 9905], "valid", [], "NV8"], [[9906, 9906], "valid", [], "NV8"], [[9907, 9916], "valid", [], "NV8"], [[9917, 9919], "valid", [], "NV8"], [[9920, 9923], "valid", [], "NV8"], [[9924, 9933], "valid", [], "NV8"], [[9934, 9934], "valid", [], "NV8"], [[9935, 9953], "valid", [], "NV8"], [[9954, 9954], "valid", [], "NV8"], [[9955, 9955], "valid", [], "NV8"], [[9956, 9959], "valid", [], "NV8"], [[9960, 9983], "valid", [], "NV8"], [[9984, 9984], "valid", [], "NV8"], [[9985, 9988], "valid", [], "NV8"], [[9989, 9989], "valid", [], "NV8"], [[9990, 9993], "valid", [], "NV8"], [[9994, 9995], "valid", [], "NV8"], [[9996, 10023], "valid", [], "NV8"], [[10024, 10024], "valid", [], "NV8"], [[10025, 10059], "valid", [], "NV8"], [[10060, 10060], "valid", [], "NV8"], [[10061, 10061], "valid", [], "NV8"], [[10062, 10062], "valid", [], "NV8"], [[10063, 10066], "valid", [], "NV8"], [[10067, 10069], "valid", [], "NV8"], [[10070, 10070], "valid", [], "NV8"], [[10071, 10071], "valid", [], "NV8"], [[10072, 10078], "valid", [], "NV8"], [[10079, 10080], "valid", [], "NV8"], [[10081, 10087], "valid", [], "NV8"], [[10088, 10101], "valid", [], "NV8"], [[10102, 10132], "valid", [], "NV8"], [[10133, 10135], "valid", [], "NV8"], [[10136, 10159], "valid", [], "NV8"], [[10160, 10160], "valid", [], "NV8"], [[10161, 10174], "valid", [], "NV8"], [[10175, 10175], "valid", [], "NV8"], [[10176, 10182], "valid", [], "NV8"], [[10183, 10186], "valid", [], "NV8"], [[10187, 10187], "valid", [], "NV8"], [[10188, 10188], "valid", [], "NV8"], [[10189, 10189], "valid", [], "NV8"], [[10190, 10191], "valid", [], "NV8"], [[10192, 10219], "valid", [], "NV8"], [[10220, 10223], "valid", [], "NV8"], [[10224, 10239], "valid", [], "NV8"], [[10240, 10495], "valid", [], "NV8"], [[10496, 10763], "valid", [], "NV8"], [[10764, 10764], "mapped", [8747, 8747, 8747, 8747]], [[10765, 10867], "valid", [], "NV8"], [[10868, 10868], "disallowed_STD3_mapped", [58, 58, 61]], [[10869, 10869], "disallowed_STD3_mapped", [61, 61]], [[10870, 10870], "disallowed_STD3_mapped", [61, 61, 61]], [[10871, 10971], "valid", [], "NV8"], [[10972, 10972], "mapped", [10973, 824]], [[10973, 11007], "valid", [], "NV8"], [[11008, 11021], "valid", [], "NV8"], [[11022, 11027], "valid", [], "NV8"], [[11028, 11034], "valid", [], "NV8"], [[11035, 11039], "valid", [], "NV8"], [[11040, 11043], "valid", [], "NV8"], [[11044, 11084], "valid", [], "NV8"], [[11085, 11087], "valid", [], "NV8"], [[11088, 11092], "valid", [], "NV8"], [[11093, 11097], "valid", [], "NV8"], [[11098, 11123], "valid", [], "NV8"], [[11124, 11125], "disallowed"], [[11126, 11157], "valid", [], "NV8"], [[11158, 11159], "disallowed"], [[11160, 11193], "valid", [], "NV8"], [[11194, 11196], "disallowed"], [[11197, 11208], "valid", [], "NV8"], [[11209, 11209], "disallowed"], [[11210, 11217], "valid", [], "NV8"], [[11218, 11243], "disallowed"], [[11244, 11247], "valid", [], "NV8"], [[11248, 11263], "disallowed"], [[11264, 11264], "mapped", [11312]], [[11265, 11265], "mapped", [11313]], [[11266, 11266], "mapped", [11314]], [[11267, 11267], "mapped", [11315]], [[11268, 11268], "mapped", [11316]], [[11269, 11269], "mapped", [11317]], [[11270, 11270], "mapped", [11318]], [[11271, 11271], "mapped", [11319]], [[11272, 11272], "mapped", [11320]], [[11273, 11273], "mapped", [11321]], [[11274, 11274], "mapped", [11322]], [[11275, 11275], "mapped", [11323]], [[11276, 11276], "mapped", [11324]], [[11277, 11277], "mapped", [11325]], [[11278, 11278], "mapped", [11326]], [[11279, 11279], "mapped", [11327]], [[11280, 11280], "mapped", [11328]], [[11281, 11281], "mapped", [11329]], [[11282, 11282], "mapped", [11330]], [[11283, 11283], "mapped", [11331]], [[11284, 11284], "mapped", [11332]], [[11285, 11285], "mapped", [11333]], [[11286, 11286], "mapped", [11334]], [[11287, 11287], "mapped", [11335]], [[11288, 11288], "mapped", [11336]], [[11289, 11289], "mapped", [11337]], [[11290, 11290], "mapped", [11338]], [[11291, 11291], "mapped", [11339]], [[11292, 11292], "mapped", [11340]], [[11293, 11293], "mapped", [11341]], [[11294, 11294], "mapped", [11342]], [[11295, 11295], "mapped", [11343]], [[11296, 11296], "mapped", [11344]], [[11297, 11297], "mapped", [11345]], [[11298, 11298], "mapped", [11346]], [[11299, 11299], "mapped", [11347]], [[11300, 11300], "mapped", [11348]], [[11301, 11301], "mapped", [11349]], [[11302, 11302], "mapped", [11350]], [[11303, 11303], "mapped", [11351]], [[11304, 11304], "mapped", [11352]], [[11305, 11305], "mapped", [11353]], [[11306, 11306], "mapped", [11354]], [[11307, 11307], "mapped", [11355]], [[11308, 11308], "mapped", [11356]], [[11309, 11309], "mapped", [11357]], [[11310, 11310], "mapped", [11358]], [[11311, 11311], "disallowed"], [[11312, 11358], "valid"], [[11359, 11359], "disallowed"], [[11360, 11360], "mapped", [11361]], [[11361, 11361], "valid"], [[11362, 11362], "mapped", [619]], [[11363, 11363], "mapped", [7549]], [[11364, 11364], "mapped", [637]], [[11365, 11366], "valid"], [[11367, 11367], "mapped", [11368]], [[11368, 11368], "valid"], [[11369, 11369], "mapped", [11370]], [[11370, 11370], "valid"], [[11371, 11371], "mapped", [11372]], [[11372, 11372], "valid"], [[11373, 11373], "mapped", [593]], [[11374, 11374], "mapped", [625]], [[11375, 11375], "mapped", [592]], [[11376, 11376], "mapped", [594]], [[11377, 11377], "valid"], [[11378, 11378], "mapped", [11379]], [[11379, 11379], "valid"], [[11380, 11380], "valid"], [[11381, 11381], "mapped", [11382]], [[11382, 11383], "valid"], [[11384, 11387], "valid"], [[11388, 11388], "mapped", [106]], [[11389, 11389], "mapped", [118]], [[11390, 11390], "mapped", [575]], [[11391, 11391], "mapped", [576]], [[11392, 11392], "mapped", [11393]], [[11393, 11393], "valid"], [[11394, 11394], "mapped", [11395]], [[11395, 11395], "valid"], [[11396, 11396], "mapped", [11397]], [[11397, 11397], "valid"], [[11398, 11398], "mapped", [11399]], [[11399, 11399], "valid"], [[11400, 11400], "mapped", [11401]], [[11401, 11401], "valid"], [[11402, 11402], "mapped", [11403]], [[11403, 11403], "valid"], [[11404, 11404], "mapped", [11405]], [[11405, 11405], "valid"], [[11406, 11406], "mapped", [11407]], [[11407, 11407], "valid"], [[11408, 11408], "mapped", [11409]], [[11409, 11409], "valid"], [[11410, 11410], "mapped", [11411]], [[11411, 11411], "valid"], [[11412, 11412], "mapped", [11413]], [[11413, 11413], "valid"], [[11414, 11414], "mapped", [11415]], [[11415, 11415], "valid"], [[11416, 11416], "mapped", [11417]], [[11417, 11417], "valid"], [[11418, 11418], "mapped", [11419]], [[11419, 11419], "valid"], [[11420, 11420], "mapped", [11421]], [[11421, 11421], "valid"], [[11422, 11422], "mapped", [11423]], [[11423, 11423], "valid"], [[11424, 11424], "mapped", [11425]], [[11425, 11425], "valid"], [[11426, 11426], "mapped", [11427]], [[11427, 11427], "valid"], [[11428, 11428], "mapped", [11429]], [[11429, 11429], "valid"], [[11430, 11430], "mapped", [11431]], [[11431, 11431], "valid"], [[11432, 11432], "mapped", [11433]], [[11433, 11433], "valid"], [[11434, 11434], "mapped", [11435]], [[11435, 11435], "valid"], [[11436, 11436], "mapped", [11437]], [[11437, 11437], "valid"], [[11438, 11438], "mapped", [11439]], [[11439, 11439], "valid"], [[11440, 11440], "mapped", [11441]], [[11441, 11441], "valid"], [[11442, 11442], "mapped", [11443]], [[11443, 11443], "valid"], [[11444, 11444], "mapped", [11445]], [[11445, 11445], "valid"], [[11446, 11446], "mapped", [11447]], [[11447, 11447], "valid"], [[11448, 11448], "mapped", [11449]], [[11449, 11449], "valid"], [[11450, 11450], "mapped", [11451]], [[11451, 11451], "valid"], [[11452, 11452], "mapped", [11453]], [[11453, 11453], "valid"], [[11454, 11454], "mapped", [11455]], [[11455, 11455], "valid"], [[11456, 11456], "mapped", [11457]], [[11457, 11457], "valid"], [[11458, 11458], "mapped", [11459]], [[11459, 11459], "valid"], [[11460, 11460], "mapped", [11461]], [[11461, 11461], "valid"], [[11462, 11462], "mapped", [11463]], [[11463, 11463], "valid"], [[11464, 11464], "mapped", [11465]], [[11465, 11465], "valid"], [[11466, 11466], "mapped", [11467]], [[11467, 11467], "valid"], [[11468, 11468], "mapped", [11469]], [[11469, 11469], "valid"], [[11470, 11470], "mapped", [11471]], [[11471, 11471], "valid"], [[11472, 11472], "mapped", [11473]], [[11473, 11473], "valid"], [[11474, 11474], "mapped", [11475]], [[11475, 11475], "valid"], [[11476, 11476], "mapped", [11477]], [[11477, 11477], "valid"], [[11478, 11478], "mapped", [11479]], [[11479, 11479], "valid"], [[11480, 11480], "mapped", [11481]], [[11481, 11481], "valid"], [[11482, 11482], "mapped", [11483]], [[11483, 11483], "valid"], [[11484, 11484], "mapped", [11485]], [[11485, 11485], "valid"], [[11486, 11486], "mapped", [11487]], [[11487, 11487], "valid"], [[11488, 11488], "mapped", [11489]], [[11489, 11489], "valid"], [[11490, 11490], "mapped", [11491]], [[11491, 11492], "valid"], [[11493, 11498], "valid", [], "NV8"], [[11499, 11499], "mapped", [11500]], [[11500, 11500], "valid"], [[11501, 11501], "mapped", [11502]], [[11502, 11505], "valid"], [[11506, 11506], "mapped", [11507]], [[11507, 11507], "valid"], [[11508, 11512], "disallowed"], [[11513, 11519], "valid", [], "NV8"], [[11520, 11557], "valid"], [[11558, 11558], "disallowed"], [[11559, 11559], "valid"], [[11560, 11564], "disallowed"], [[11565, 11565], "valid"], [[11566, 11567], "disallowed"], [[11568, 11621], "valid"], [[11622, 11623], "valid"], [[11624, 11630], "disallowed"], [[11631, 11631], "mapped", [11617]], [[11632, 11632], "valid", [], "NV8"], [[11633, 11646], "disallowed"], [[11647, 11647], "valid"], [[11648, 11670], "valid"], [[11671, 11679], "disallowed"], [[11680, 11686], "valid"], [[11687, 11687], "disallowed"], [[11688, 11694], "valid"], [[11695, 11695], "disallowed"], [[11696, 11702], "valid"], [[11703, 11703], "disallowed"], [[11704, 11710], "valid"], [[11711, 11711], "disallowed"], [[11712, 11718], "valid"], [[11719, 11719], "disallowed"], [[11720, 11726], "valid"], [[11727, 11727], "disallowed"], [[11728, 11734], "valid"], [[11735, 11735], "disallowed"], [[11736, 11742], "valid"], [[11743, 11743], "disallowed"], [[11744, 11775], "valid"], [[11776, 11799], "valid", [], "NV8"], [[11800, 11803], "valid", [], "NV8"], [[11804, 11805], "valid", [], "NV8"], [[11806, 11822], "valid", [], "NV8"], [[11823, 11823], "valid"], [[11824, 11824], "valid", [], "NV8"], [[11825, 11825], "valid", [], "NV8"], [[11826, 11835], "valid", [], "NV8"], [[11836, 11842], "valid", [], "NV8"], [[11843, 11903], "disallowed"], [[11904, 11929], "valid", [], "NV8"], [[11930, 11930], "disallowed"], [[11931, 11934], "valid", [], "NV8"], [[11935, 11935], "mapped", [27597]], [[11936, 12018], "valid", [], "NV8"], [[12019, 12019], "mapped", [40863]], [[12020, 12031], "disallowed"], [[12032, 12032], "mapped", [19968]], [[12033, 12033], "mapped", [20008]], [[12034, 12034], "mapped", [20022]], [[12035, 12035], "mapped", [20031]], [[12036, 12036], "mapped", [20057]], [[12037, 12037], "mapped", [20101]], [[12038, 12038], "mapped", [20108]], [[12039, 12039], "mapped", [20128]], [[12040, 12040], "mapped", [20154]], [[12041, 12041], "mapped", [20799]], [[12042, 12042], "mapped", [20837]], [[12043, 12043], "mapped", [20843]], [[12044, 12044], "mapped", [20866]], [[12045, 12045], "mapped", [20886]], [[12046, 12046], "mapped", [20907]], [[12047, 12047], "mapped", [20960]], [[12048, 12048], "mapped", [20981]], [[12049, 12049], "mapped", [20992]], [[12050, 12050], "mapped", [21147]], [[12051, 12051], "mapped", [21241]], [[12052, 12052], "mapped", [21269]], [[12053, 12053], "mapped", [21274]], [[12054, 12054], "mapped", [21304]], [[12055, 12055], "mapped", [21313]], [[12056, 12056], "mapped", [21340]], [[12057, 12057], "mapped", [21353]], [[12058, 12058], "mapped", [21378]], [[12059, 12059], "mapped", [21430]], [[12060, 12060], "mapped", [21448]], [[12061, 12061], "mapped", [21475]], [[12062, 12062], "mapped", [22231]], [[12063, 12063], "mapped", [22303]], [[12064, 12064], "mapped", [22763]], [[12065, 12065], "mapped", [22786]], [[12066, 12066], "mapped", [22794]], [[12067, 12067], "mapped", [22805]], [[12068, 12068], "mapped", [22823]], [[12069, 12069], "mapped", [22899]], [[12070, 12070], "mapped", [23376]], [[12071, 12071], "mapped", [23424]], [[12072, 12072], "mapped", [23544]], [[12073, 12073], "mapped", [23567]], [[12074, 12074], "mapped", [23586]], [[12075, 12075], "mapped", [23608]], [[12076, 12076], "mapped", [23662]], [[12077, 12077], "mapped", [23665]], [[12078, 12078], "mapped", [24027]], [[12079, 12079], "mapped", [24037]], [[12080, 12080], "mapped", [24049]], [[12081, 12081], "mapped", [24062]], [[12082, 12082], "mapped", [24178]], [[12083, 12083], "mapped", [24186]], [[12084, 12084], "mapped", [24191]], [[12085, 12085], "mapped", [24308]], [[12086, 12086], "mapped", [24318]], [[12087, 12087], "mapped", [24331]], [[12088, 12088], "mapped", [24339]], [[12089, 12089], "mapped", [24400]], [[12090, 12090], "mapped", [24417]], [[12091, 12091], "mapped", [24435]], [[12092, 12092], "mapped", [24515]], [[12093, 12093], "mapped", [25096]], [[12094, 12094], "mapped", [25142]], [[12095, 12095], "mapped", [25163]], [[12096, 12096], "mapped", [25903]], [[12097, 12097], "mapped", [25908]], [[12098, 12098], "mapped", [25991]], [[12099, 12099], "mapped", [26007]], [[12100, 12100], "mapped", [26020]], [[12101, 12101], "mapped", [26041]], [[12102, 12102], "mapped", [26080]], [[12103, 12103], "mapped", [26085]], [[12104, 12104], "mapped", [26352]], [[12105, 12105], "mapped", [26376]], [[12106, 12106], "mapped", [26408]], [[12107, 12107], "mapped", [27424]], [[12108, 12108], "mapped", [27490]], [[12109, 12109], "mapped", [27513]], [[12110, 12110], "mapped", [27571]], [[12111, 12111], "mapped", [27595]], [[12112, 12112], "mapped", [27604]], [[12113, 12113], "mapped", [27611]], [[12114, 12114], "mapped", [27663]], [[12115, 12115], "mapped", [27668]], [[12116, 12116], "mapped", [27700]], [[12117, 12117], "mapped", [28779]], [[12118, 12118], "mapped", [29226]], [[12119, 12119], "mapped", [29238]], [[12120, 12120], "mapped", [29243]], [[12121, 12121], "mapped", [29247]], [[12122, 12122], "mapped", [29255]], [[12123, 12123], "mapped", [29273]], [[12124, 12124], "mapped", [29275]], [[12125, 12125], "mapped", [29356]], [[12126, 12126], "mapped", [29572]], [[12127, 12127], "mapped", [29577]], [[12128, 12128], "mapped", [29916]], [[12129, 12129], "mapped", [29926]], [[12130, 12130], "mapped", [29976]], [[12131, 12131], "mapped", [29983]], [[12132, 12132], "mapped", [29992]], [[12133, 12133], "mapped", [3e4]], [[12134, 12134], "mapped", [30091]], [[12135, 12135], "mapped", [30098]], [[12136, 12136], "mapped", [30326]], [[12137, 12137], "mapped", [30333]], [[12138, 12138], "mapped", [30382]], [[12139, 12139], "mapped", [30399]], [[12140, 12140], "mapped", [30446]], [[12141, 12141], "mapped", [30683]], [[12142, 12142], "mapped", [30690]], [[12143, 12143], "mapped", [30707]], [[12144, 12144], "mapped", [31034]], [[12145, 12145], "mapped", [31160]], [[12146, 12146], "mapped", [31166]], [[12147, 12147], "mapped", [31348]], [[12148, 12148], "mapped", [31435]], [[12149, 12149], "mapped", [31481]], [[12150, 12150], "mapped", [31859]], [[12151, 12151], "mapped", [31992]], [[12152, 12152], "mapped", [32566]], [[12153, 12153], "mapped", [32593]], [[12154, 12154], "mapped", [32650]], [[12155, 12155], "mapped", [32701]], [[12156, 12156], "mapped", [32769]], [[12157, 12157], "mapped", [32780]], [[12158, 12158], "mapped", [32786]], [[12159, 12159], "mapped", [32819]], [[12160, 12160], "mapped", [32895]], [[12161, 12161], "mapped", [32905]], [[12162, 12162], "mapped", [33251]], [[12163, 12163], "mapped", [33258]], [[12164, 12164], "mapped", [33267]], [[12165, 12165], "mapped", [33276]], [[12166, 12166], "mapped", [33292]], [[12167, 12167], "mapped", [33307]], [[12168, 12168], "mapped", [33311]], [[12169, 12169], "mapped", [33390]], [[12170, 12170], "mapped", [33394]], [[12171, 12171], "mapped", [33400]], [[12172, 12172], "mapped", [34381]], [[12173, 12173], "mapped", [34411]], [[12174, 12174], "mapped", [34880]], [[12175, 12175], "mapped", [34892]], [[12176, 12176], "mapped", [34915]], [[12177, 12177], "mapped", [35198]], [[12178, 12178], "mapped", [35211]], [[12179, 12179], "mapped", [35282]], [[12180, 12180], "mapped", [35328]], [[12181, 12181], "mapped", [35895]], [[12182, 12182], "mapped", [35910]], [[12183, 12183], "mapped", [35925]], [[12184, 12184], "mapped", [35960]], [[12185, 12185], "mapped", [35997]], [[12186, 12186], "mapped", [36196]], [[12187, 12187], "mapped", [36208]], [[12188, 12188], "mapped", [36275]], [[12189, 12189], "mapped", [36523]], [[12190, 12190], "mapped", [36554]], [[12191, 12191], "mapped", [36763]], [[12192, 12192], "mapped", [36784]], [[12193, 12193], "mapped", [36789]], [[12194, 12194], "mapped", [37009]], [[12195, 12195], "mapped", [37193]], [[12196, 12196], "mapped", [37318]], [[12197, 12197], "mapped", [37324]], [[12198, 12198], "mapped", [37329]], [[12199, 12199], "mapped", [38263]], [[12200, 12200], "mapped", [38272]], [[12201, 12201], "mapped", [38428]], [[12202, 12202], "mapped", [38582]], [[12203, 12203], "mapped", [38585]], [[12204, 12204], "mapped", [38632]], [[12205, 12205], "mapped", [38737]], [[12206, 12206], "mapped", [38750]], [[12207, 12207], "mapped", [38754]], [[12208, 12208], "mapped", [38761]], [[12209, 12209], "mapped", [38859]], [[12210, 12210], "mapped", [38893]], [[12211, 12211], "mapped", [38899]], [[12212, 12212], "mapped", [38913]], [[12213, 12213], "mapped", [39080]], [[12214, 12214], "mapped", [39131]], [[12215, 12215], "mapped", [39135]], [[12216, 12216], "mapped", [39318]], [[12217, 12217], "mapped", [39321]], [[12218, 12218], "mapped", [39340]], [[12219, 12219], "mapped", [39592]], [[12220, 12220], "mapped", [39640]], [[12221, 12221], "mapped", [39647]], [[12222, 12222], "mapped", [39717]], [[12223, 12223], "mapped", [39727]], [[12224, 12224], "mapped", [39730]], [[12225, 12225], "mapped", [39740]], [[12226, 12226], "mapped", [39770]], [[12227, 12227], "mapped", [40165]], [[12228, 12228], "mapped", [40565]], [[12229, 12229], "mapped", [40575]], [[12230, 12230], "mapped", [40613]], [[12231, 12231], "mapped", [40635]], [[12232, 12232], "mapped", [40643]], [[12233, 12233], "mapped", [40653]], [[12234, 12234], "mapped", [40657]], [[12235, 12235], "mapped", [40697]], [[12236, 12236], "mapped", [40701]], [[12237, 12237], "mapped", [40718]], [[12238, 12238], "mapped", [40723]], [[12239, 12239], "mapped", [40736]], [[12240, 12240], "mapped", [40763]], [[12241, 12241], "mapped", [40778]], [[12242, 12242], "mapped", [40786]], [[12243, 12243], "mapped", [40845]], [[12244, 12244], "mapped", [40860]], [[12245, 12245], "mapped", [40864]], [[12246, 12271], "disallowed"], [[12272, 12283], "disallowed"], [[12284, 12287], "disallowed"], [[12288, 12288], "disallowed_STD3_mapped", [32]], [[12289, 12289], "valid", [], "NV8"], [[12290, 12290], "mapped", [46]], [[12291, 12292], "valid", [], "NV8"], [[12293, 12295], "valid"], [[12296, 12329], "valid", [], "NV8"], [[12330, 12333], "valid"], [[12334, 12341], "valid", [], "NV8"], [[12342, 12342], "mapped", [12306]], [[12343, 12343], "valid", [], "NV8"], [[12344, 12344], "mapped", [21313]], [[12345, 12345], "mapped", [21316]], [[12346, 12346], "mapped", [21317]], [[12347, 12347], "valid", [], "NV8"], [[12348, 12348], "valid"], [[12349, 12349], "valid", [], "NV8"], [[12350, 12350], "valid", [], "NV8"], [[12351, 12351], "valid", [], "NV8"], [[12352, 12352], "disallowed"], [[12353, 12436], "valid"], [[12437, 12438], "valid"], [[12439, 12440], "disallowed"], [[12441, 12442], "valid"], [[12443, 12443], "disallowed_STD3_mapped", [32, 12441]], [[12444, 12444], "disallowed_STD3_mapped", [32, 12442]], [[12445, 12446], "valid"], [[12447, 12447], "mapped", [12424, 12426]], [[12448, 12448], "valid", [], "NV8"], [[12449, 12542], "valid"], [[12543, 12543], "mapped", [12467, 12488]], [[12544, 12548], "disallowed"], [[12549, 12588], "valid"], [[12589, 12589], "valid"], [[12590, 12592], "disallowed"], [[12593, 12593], "mapped", [4352]], [[12594, 12594], "mapped", [4353]], [[12595, 12595], "mapped", [4522]], [[12596, 12596], "mapped", [4354]], [[12597, 12597], "mapped", [4524]], [[12598, 12598], "mapped", [4525]], [[12599, 12599], "mapped", [4355]], [[12600, 12600], "mapped", [4356]], [[12601, 12601], "mapped", [4357]], [[12602, 12602], "mapped", [4528]], [[12603, 12603], "mapped", [4529]], [[12604, 12604], "mapped", [4530]], [[12605, 12605], "mapped", [4531]], [[12606, 12606], "mapped", [4532]], [[12607, 12607], "mapped", [4533]], [[12608, 12608], "mapped", [4378]], [[12609, 12609], "mapped", [4358]], [[12610, 12610], "mapped", [4359]], [[12611, 12611], "mapped", [4360]], [[12612, 12612], "mapped", [4385]], [[12613, 12613], "mapped", [4361]], [[12614, 12614], "mapped", [4362]], [[12615, 12615], "mapped", [4363]], [[12616, 12616], "mapped", [4364]], [[12617, 12617], "mapped", [4365]], [[12618, 12618], "mapped", [4366]], [[12619, 12619], "mapped", [4367]], [[12620, 12620], "mapped", [4368]], [[12621, 12621], "mapped", [4369]], [[12622, 12622], "mapped", [4370]], [[12623, 12623], "mapped", [4449]], [[12624, 12624], "mapped", [4450]], [[12625, 12625], "mapped", [4451]], [[12626, 12626], "mapped", [4452]], [[12627, 12627], "mapped", [4453]], [[12628, 12628], "mapped", [4454]], [[12629, 12629], "mapped", [4455]], [[12630, 12630], "mapped", [4456]], [[12631, 12631], "mapped", [4457]], [[12632, 12632], "mapped", [4458]], [[12633, 12633], "mapped", [4459]], [[12634, 12634], "mapped", [4460]], [[12635, 12635], "mapped", [4461]], [[12636, 12636], "mapped", [4462]], [[12637, 12637], "mapped", [4463]], [[12638, 12638], "mapped", [4464]], [[12639, 12639], "mapped", [4465]], [[12640, 12640], "mapped", [4466]], [[12641, 12641], "mapped", [4467]], [[12642, 12642], "mapped", [4468]], [[12643, 12643], "mapped", [4469]], [[12644, 12644], "disallowed"], [[12645, 12645], "mapped", [4372]], [[12646, 12646], "mapped", [4373]], [[12647, 12647], "mapped", [4551]], [[12648, 12648], "mapped", [4552]], [[12649, 12649], "mapped", [4556]], [[12650, 12650], "mapped", [4558]], [[12651, 12651], "mapped", [4563]], [[12652, 12652], "mapped", [4567]], [[12653, 12653], "mapped", [4569]], [[12654, 12654], "mapped", [4380]], [[12655, 12655], "mapped", [4573]], [[12656, 12656], "mapped", [4575]], [[12657, 12657], "mapped", [4381]], [[12658, 12658], "mapped", [4382]], [[12659, 12659], "mapped", [4384]], [[12660, 12660], "mapped", [4386]], [[12661, 12661], "mapped", [4387]], [[12662, 12662], "mapped", [4391]], [[12663, 12663], "mapped", [4393]], [[12664, 12664], "mapped", [4395]], [[12665, 12665], "mapped", [4396]], [[12666, 12666], "mapped", [4397]], [[12667, 12667], "mapped", [4398]], [[12668, 12668], "mapped", [4399]], [[12669, 12669], "mapped", [4402]], [[12670, 12670], "mapped", [4406]], [[12671, 12671], "mapped", [4416]], [[12672, 12672], "mapped", [4423]], [[12673, 12673], "mapped", [4428]], [[12674, 12674], "mapped", [4593]], [[12675, 12675], "mapped", [4594]], [[12676, 12676], "mapped", [4439]], [[12677, 12677], "mapped", [4440]], [[12678, 12678], "mapped", [4441]], [[12679, 12679], "mapped", [4484]], [[12680, 12680], "mapped", [4485]], [[12681, 12681], "mapped", [4488]], [[12682, 12682], "mapped", [4497]], [[12683, 12683], "mapped", [4498]], [[12684, 12684], "mapped", [4500]], [[12685, 12685], "mapped", [4510]], [[12686, 12686], "mapped", [4513]], [[12687, 12687], "disallowed"], [[12688, 12689], "valid", [], "NV8"], [[12690, 12690], "mapped", [19968]], [[12691, 12691], "mapped", [20108]], [[12692, 12692], "mapped", [19977]], [[12693, 12693], "mapped", [22235]], [[12694, 12694], "mapped", [19978]], [[12695, 12695], "mapped", [20013]], [[12696, 12696], "mapped", [19979]], [[12697, 12697], "mapped", [30002]], [[12698, 12698], "mapped", [20057]], [[12699, 12699], "mapped", [19993]], [[12700, 12700], "mapped", [19969]], [[12701, 12701], "mapped", [22825]], [[12702, 12702], "mapped", [22320]], [[12703, 12703], "mapped", [20154]], [[12704, 12727], "valid"], [[12728, 12730], "valid"], [[12731, 12735], "disallowed"], [[12736, 12751], "valid", [], "NV8"], [[12752, 12771], "valid", [], "NV8"], [[12772, 12783], "disallowed"], [[12784, 12799], "valid"], [[12800, 12800], "disallowed_STD3_mapped", [40, 4352, 41]], [[12801, 12801], "disallowed_STD3_mapped", [40, 4354, 41]], [[12802, 12802], "disallowed_STD3_mapped", [40, 4355, 41]], [[12803, 12803], "disallowed_STD3_mapped", [40, 4357, 41]], [[12804, 12804], "disallowed_STD3_mapped", [40, 4358, 41]], [[12805, 12805], "disallowed_STD3_mapped", [40, 4359, 41]], [[12806, 12806], "disallowed_STD3_mapped", [40, 4361, 41]], [[12807, 12807], "disallowed_STD3_mapped", [40, 4363, 41]], [[12808, 12808], "disallowed_STD3_mapped", [40, 4364, 41]], [[12809, 12809], "disallowed_STD3_mapped", [40, 4366, 41]], [[12810, 12810], "disallowed_STD3_mapped", [40, 4367, 41]], [[12811, 12811], "disallowed_STD3_mapped", [40, 4368, 41]], [[12812, 12812], "disallowed_STD3_mapped", [40, 4369, 41]], [[12813, 12813], "disallowed_STD3_mapped", [40, 4370, 41]], [[12814, 12814], "disallowed_STD3_mapped", [40, 44032, 41]], [[12815, 12815], "disallowed_STD3_mapped", [40, 45208, 41]], [[12816, 12816], "disallowed_STD3_mapped", [40, 45796, 41]], [[12817, 12817], "disallowed_STD3_mapped", [40, 46972, 41]], [[12818, 12818], "disallowed_STD3_mapped", [40, 47560, 41]], [[12819, 12819], "disallowed_STD3_mapped", [40, 48148, 41]], [[12820, 12820], "disallowed_STD3_mapped", [40, 49324, 41]], [[12821, 12821], "disallowed_STD3_mapped", [40, 50500, 41]], [[12822, 12822], "disallowed_STD3_mapped", [40, 51088, 41]], [[12823, 12823], "disallowed_STD3_mapped", [40, 52264, 41]], [[12824, 12824], "disallowed_STD3_mapped", [40, 52852, 41]], [[12825, 12825], "disallowed_STD3_mapped", [40, 53440, 41]], [[12826, 12826], "disallowed_STD3_mapped", [40, 54028, 41]], [[12827, 12827], "disallowed_STD3_mapped", [40, 54616, 41]], [[12828, 12828], "disallowed_STD3_mapped", [40, 51452, 41]], [[12829, 12829], "disallowed_STD3_mapped", [40, 50724, 51204, 41]], [[12830, 12830], "disallowed_STD3_mapped", [40, 50724, 54980, 41]], [[12831, 12831], "disallowed"], [[12832, 12832], "disallowed_STD3_mapped", [40, 19968, 41]], [[12833, 12833], "disallowed_STD3_mapped", [40, 20108, 41]], [[12834, 12834], "disallowed_STD3_mapped", [40, 19977, 41]], [[12835, 12835], "disallowed_STD3_mapped", [40, 22235, 41]], [[12836, 12836], "disallowed_STD3_mapped", [40, 20116, 41]], [[12837, 12837], "disallowed_STD3_mapped", [40, 20845, 41]], [[12838, 12838], "disallowed_STD3_mapped", [40, 19971, 41]], [[12839, 12839], "disallowed_STD3_mapped", [40, 20843, 41]], [[12840, 12840], "disallowed_STD3_mapped", [40, 20061, 41]], [[12841, 12841], "disallowed_STD3_mapped", [40, 21313, 41]], [[12842, 12842], "disallowed_STD3_mapped", [40, 26376, 41]], [[12843, 12843], "disallowed_STD3_mapped", [40, 28779, 41]], [[12844, 12844], "disallowed_STD3_mapped", [40, 27700, 41]], [[12845, 12845], "disallowed_STD3_mapped", [40, 26408, 41]], [[12846, 12846], "disallowed_STD3_mapped", [40, 37329, 41]], [[12847, 12847], "disallowed_STD3_mapped", [40, 22303, 41]], [[12848, 12848], "disallowed_STD3_mapped", [40, 26085, 41]], [[12849, 12849], "disallowed_STD3_mapped", [40, 26666, 41]], [[12850, 12850], "disallowed_STD3_mapped", [40, 26377, 41]], [[12851, 12851], "disallowed_STD3_mapped", [40, 31038, 41]], [[12852, 12852], "disallowed_STD3_mapped", [40, 21517, 41]], [[12853, 12853], "disallowed_STD3_mapped", [40, 29305, 41]], [[12854, 12854], "disallowed_STD3_mapped", [40, 36001, 41]], [[12855, 12855], "disallowed_STD3_mapped", [40, 31069, 41]], [[12856, 12856], "disallowed_STD3_mapped", [40, 21172, 41]], [[12857, 12857], "disallowed_STD3_mapped", [40, 20195, 41]], [[12858, 12858], "disallowed_STD3_mapped", [40, 21628, 41]], [[12859, 12859], "disallowed_STD3_mapped", [40, 23398, 41]], [[12860, 12860], "disallowed_STD3_mapped", [40, 30435, 41]], [[12861, 12861], "disallowed_STD3_mapped", [40, 20225, 41]], [[12862, 12862], "disallowed_STD3_mapped", [40, 36039, 41]], [[12863, 12863], "disallowed_STD3_mapped", [40, 21332, 41]], [[12864, 12864], "disallowed_STD3_mapped", [40, 31085, 41]], [[12865, 12865], "disallowed_STD3_mapped", [40, 20241, 41]], [[12866, 12866], "disallowed_STD3_mapped", [40, 33258, 41]], [[12867, 12867], "disallowed_STD3_mapped", [40, 33267, 41]], [[12868, 12868], "mapped", [21839]], [[12869, 12869], "mapped", [24188]], [[12870, 12870], "mapped", [25991]], [[12871, 12871], "mapped", [31631]], [[12872, 12879], "valid", [], "NV8"], [[12880, 12880], "mapped", [112, 116, 101]], [[12881, 12881], "mapped", [50, 49]], [[12882, 12882], "mapped", [50, 50]], [[12883, 12883], "mapped", [50, 51]], [[12884, 12884], "mapped", [50, 52]], [[12885, 12885], "mapped", [50, 53]], [[12886, 12886], "mapped", [50, 54]], [[12887, 12887], "mapped", [50, 55]], [[12888, 12888], "mapped", [50, 56]], [[12889, 12889], "mapped", [50, 57]], [[12890, 12890], "mapped", [51, 48]], [[12891, 12891], "mapped", [51, 49]], [[12892, 12892], "mapped", [51, 50]], [[12893, 12893], "mapped", [51, 51]], [[12894, 12894], "mapped", [51, 52]], [[12895, 12895], "mapped", [51, 53]], [[12896, 12896], "mapped", [4352]], [[12897, 12897], "mapped", [4354]], [[12898, 12898], "mapped", [4355]], [[12899, 12899], "mapped", [4357]], [[12900, 12900], "mapped", [4358]], [[12901, 12901], "mapped", [4359]], [[12902, 12902], "mapped", [4361]], [[12903, 12903], "mapped", [4363]], [[12904, 12904], "mapped", [4364]], [[12905, 12905], "mapped", [4366]], [[12906, 12906], "mapped", [4367]], [[12907, 12907], "mapped", [4368]], [[12908, 12908], "mapped", [4369]], [[12909, 12909], "mapped", [4370]], [[12910, 12910], "mapped", [44032]], [[12911, 12911], "mapped", [45208]], [[12912, 12912], "mapped", [45796]], [[12913, 12913], "mapped", [46972]], [[12914, 12914], "mapped", [47560]], [[12915, 12915], "mapped", [48148]], [[12916, 12916], "mapped", [49324]], [[12917, 12917], "mapped", [50500]], [[12918, 12918], "mapped", [51088]], [[12919, 12919], "mapped", [52264]], [[12920, 12920], "mapped", [52852]], [[12921, 12921], "mapped", [53440]], [[12922, 12922], "mapped", [54028]], [[12923, 12923], "mapped", [54616]], [[12924, 12924], "mapped", [52280, 44256]], [[12925, 12925], "mapped", [51452, 51032]], [[12926, 12926], "mapped", [50864]], [[12927, 12927], "valid", [], "NV8"], [[12928, 12928], "mapped", [19968]], [[12929, 12929], "mapped", [20108]], [[12930, 12930], "mapped", [19977]], [[12931, 12931], "mapped", [22235]], [[12932, 12932], "mapped", [20116]], [[12933, 12933], "mapped", [20845]], [[12934, 12934], "mapped", [19971]], [[12935, 12935], "mapped", [20843]], [[12936, 12936], "mapped", [20061]], [[12937, 12937], "mapped", [21313]], [[12938, 12938], "mapped", [26376]], [[12939, 12939], "mapped", [28779]], [[12940, 12940], "mapped", [27700]], [[12941, 12941], "mapped", [26408]], [[12942, 12942], "mapped", [37329]], [[12943, 12943], "mapped", [22303]], [[12944, 12944], "mapped", [26085]], [[12945, 12945], "mapped", [26666]], [[12946, 12946], "mapped", [26377]], [[12947, 12947], "mapped", [31038]], [[12948, 12948], "mapped", [21517]], [[12949, 12949], "mapped", [29305]], [[12950, 12950], "mapped", [36001]], [[12951, 12951], "mapped", [31069]], [[12952, 12952], "mapped", [21172]], [[12953, 12953], "mapped", [31192]], [[12954, 12954], "mapped", [30007]], [[12955, 12955], "mapped", [22899]], [[12956, 12956], "mapped", [36969]], [[12957, 12957], "mapped", [20778]], [[12958, 12958], "mapped", [21360]], [[12959, 12959], "mapped", [27880]], [[12960, 12960], "mapped", [38917]], [[12961, 12961], "mapped", [20241]], [[12962, 12962], "mapped", [20889]], [[12963, 12963], "mapped", [27491]], [[12964, 12964], "mapped", [19978]], [[12965, 12965], "mapped", [20013]], [[12966, 12966], "mapped", [19979]], [[12967, 12967], "mapped", [24038]], [[12968, 12968], "mapped", [21491]], [[12969, 12969], "mapped", [21307]], [[12970, 12970], "mapped", [23447]], [[12971, 12971], "mapped", [23398]], [[12972, 12972], "mapped", [30435]], [[12973, 12973], "mapped", [20225]], [[12974, 12974], "mapped", [36039]], [[12975, 12975], "mapped", [21332]], [[12976, 12976], "mapped", [22812]], [[12977, 12977], "mapped", [51, 54]], [[12978, 12978], "mapped", [51, 55]], [[12979, 12979], "mapped", [51, 56]], [[12980, 12980], "mapped", [51, 57]], [[12981, 12981], "mapped", [52, 48]], [[12982, 12982], "mapped", [52, 49]], [[12983, 12983], "mapped", [52, 50]], [[12984, 12984], "mapped", [52, 51]], [[12985, 12985], "mapped", [52, 52]], [[12986, 12986], "mapped", [52, 53]], [[12987, 12987], "mapped", [52, 54]], [[12988, 12988], "mapped", [52, 55]], [[12989, 12989], "mapped", [52, 56]], [[12990, 12990], "mapped", [52, 57]], [[12991, 12991], "mapped", [53, 48]], [[12992, 12992], "mapped", [49, 26376]], [[12993, 12993], "mapped", [50, 26376]], [[12994, 12994], "mapped", [51, 26376]], [[12995, 12995], "mapped", [52, 26376]], [[12996, 12996], "mapped", [53, 26376]], [[12997, 12997], "mapped", [54, 26376]], [[12998, 12998], "mapped", [55, 26376]], [[12999, 12999], "mapped", [56, 26376]], [[13e3, 13e3], "mapped", [57, 26376]], [[13001, 13001], "mapped", [49, 48, 26376]], [[13002, 13002], "mapped", [49, 49, 26376]], [[13003, 13003], "mapped", [49, 50, 26376]], [[13004, 13004], "mapped", [104, 103]], [[13005, 13005], "mapped", [101, 114, 103]], [[13006, 13006], "mapped", [101, 118]], [[13007, 13007], "mapped", [108, 116, 100]], [[13008, 13008], "mapped", [12450]], [[13009, 13009], "mapped", [12452]], [[13010, 13010], "mapped", [12454]], [[13011, 13011], "mapped", [12456]], [[13012, 13012], "mapped", [12458]], [[13013, 13013], "mapped", [12459]], [[13014, 13014], "mapped", [12461]], [[13015, 13015], "mapped", [12463]], [[13016, 13016], "mapped", [12465]], [[13017, 13017], "mapped", [12467]], [[13018, 13018], "mapped", [12469]], [[13019, 13019], "mapped", [12471]], [[13020, 13020], "mapped", [12473]], [[13021, 13021], "mapped", [12475]], [[13022, 13022], "mapped", [12477]], [[13023, 13023], "mapped", [12479]], [[13024, 13024], "mapped", [12481]], [[13025, 13025], "mapped", [12484]], [[13026, 13026], "mapped", [12486]], [[13027, 13027], "mapped", [12488]], [[13028, 13028], "mapped", [12490]], [[13029, 13029], "mapped", [12491]], [[13030, 13030], "mapped", [12492]], [[13031, 13031], "mapped", [12493]], [[13032, 13032], "mapped", [12494]], [[13033, 13033], "mapped", [12495]], [[13034, 13034], "mapped", [12498]], [[13035, 13035], "mapped", [12501]], [[13036, 13036], "mapped", [12504]], [[13037, 13037], "mapped", [12507]], [[13038, 13038], "mapped", [12510]], [[13039, 13039], "mapped", [12511]], [[13040, 13040], "mapped", [12512]], [[13041, 13041], "mapped", [12513]], [[13042, 13042], "mapped", [12514]], [[13043, 13043], "mapped", [12516]], [[13044, 13044], "mapped", [12518]], [[13045, 13045], "mapped", [12520]], [[13046, 13046], "mapped", [12521]], [[13047, 13047], "mapped", [12522]], [[13048, 13048], "mapped", [12523]], [[13049, 13049], "mapped", [12524]], [[13050, 13050], "mapped", [12525]], [[13051, 13051], "mapped", [12527]], [[13052, 13052], "mapped", [12528]], [[13053, 13053], "mapped", [12529]], [[13054, 13054], "mapped", [12530]], [[13055, 13055], "disallowed"], [[13056, 13056], "mapped", [12450, 12497, 12540, 12488]], [[13057, 13057], "mapped", [12450, 12523, 12501, 12449]], [[13058, 13058], "mapped", [12450, 12531, 12506, 12450]], [[13059, 13059], "mapped", [12450, 12540, 12523]], [[13060, 13060], "mapped", [12452, 12491, 12531, 12464]], [[13061, 13061], "mapped", [12452, 12531, 12481]], [[13062, 13062], "mapped", [12454, 12457, 12531]], [[13063, 13063], "mapped", [12456, 12473, 12463, 12540, 12489]], [[13064, 13064], "mapped", [12456, 12540, 12459, 12540]], [[13065, 13065], "mapped", [12458, 12531, 12473]], [[13066, 13066], "mapped", [12458, 12540, 12512]], [[13067, 13067], "mapped", [12459, 12452, 12522]], [[13068, 13068], "mapped", [12459, 12521, 12483, 12488]], [[13069, 13069], "mapped", [12459, 12525, 12522, 12540]], [[13070, 13070], "mapped", [12460, 12525, 12531]], [[13071, 13071], "mapped", [12460, 12531, 12510]], [[13072, 13072], "mapped", [12462, 12460]], [[13073, 13073], "mapped", [12462, 12491, 12540]], [[13074, 13074], "mapped", [12461, 12517, 12522, 12540]], [[13075, 13075], "mapped", [12462, 12523, 12480, 12540]], [[13076, 13076], "mapped", [12461, 12525]], [[13077, 13077], "mapped", [12461, 12525, 12464, 12521, 12512]], [[13078, 13078], "mapped", [12461, 12525, 12513, 12540, 12488, 12523]], [[13079, 13079], "mapped", [12461, 12525, 12527, 12483, 12488]], [[13080, 13080], "mapped", [12464, 12521, 12512]], [[13081, 13081], "mapped", [12464, 12521, 12512, 12488, 12531]], [[13082, 13082], "mapped", [12463, 12523, 12476, 12452, 12525]], [[13083, 13083], "mapped", [12463, 12525, 12540, 12493]], [[13084, 13084], "mapped", [12465, 12540, 12473]], [[13085, 13085], "mapped", [12467, 12523, 12490]], [[13086, 13086], "mapped", [12467, 12540, 12509]], [[13087, 13087], "mapped", [12469, 12452, 12463, 12523]], [[13088, 13088], "mapped", [12469, 12531, 12481, 12540, 12512]], [[13089, 13089], "mapped", [12471, 12522, 12531, 12464]], [[13090, 13090], "mapped", [12475, 12531, 12481]], [[13091, 13091], "mapped", [12475, 12531, 12488]], [[13092, 13092], "mapped", [12480, 12540, 12473]], [[13093, 13093], "mapped", [12487, 12471]], [[13094, 13094], "mapped", [12489, 12523]], [[13095, 13095], "mapped", [12488, 12531]], [[13096, 13096], "mapped", [12490, 12494]], [[13097, 13097], "mapped", [12494, 12483, 12488]], [[13098, 13098], "mapped", [12495, 12452, 12484]], [[13099, 13099], "mapped", [12497, 12540, 12475, 12531, 12488]], [[13100, 13100], "mapped", [12497, 12540, 12484]], [[13101, 13101], "mapped", [12496, 12540, 12524, 12523]], [[13102, 13102], "mapped", [12500, 12450, 12473, 12488, 12523]], [[13103, 13103], "mapped", [12500, 12463, 12523]], [[13104, 13104], "mapped", [12500, 12467]], [[13105, 13105], "mapped", [12499, 12523]], [[13106, 13106], "mapped", [12501, 12449, 12521, 12483, 12489]], [[13107, 13107], "mapped", [12501, 12451, 12540, 12488]], [[13108, 13108], "mapped", [12502, 12483, 12471, 12455, 12523]], [[13109, 13109], "mapped", [12501, 12521, 12531]], [[13110, 13110], "mapped", [12504, 12463, 12479, 12540, 12523]], [[13111, 13111], "mapped", [12506, 12477]], [[13112, 13112], "mapped", [12506, 12491, 12498]], [[13113, 13113], "mapped", [12504, 12523, 12484]], [[13114, 13114], "mapped", [12506, 12531, 12473]], [[13115, 13115], "mapped", [12506, 12540, 12472]], [[13116, 13116], "mapped", [12505, 12540, 12479]], [[13117, 13117], "mapped", [12509, 12452, 12531, 12488]], [[13118, 13118], "mapped", [12508, 12523, 12488]], [[13119, 13119], "mapped", [12507, 12531]], [[13120, 13120], "mapped", [12509, 12531, 12489]], [[13121, 13121], "mapped", [12507, 12540, 12523]], [[13122, 13122], "mapped", [12507, 12540, 12531]], [[13123, 13123], "mapped", [12510, 12452, 12463, 12525]], [[13124, 13124], "mapped", [12510, 12452, 12523]], [[13125, 13125], "mapped", [12510, 12483, 12495]], [[13126, 13126], "mapped", [12510, 12523, 12463]], [[13127, 13127], "mapped", [12510, 12531, 12471, 12519, 12531]], [[13128, 13128], "mapped", [12511, 12463, 12525, 12531]], [[13129, 13129], "mapped", [12511, 12522]], [[13130, 13130], "mapped", [12511, 12522, 12496, 12540, 12523]], [[13131, 13131], "mapped", [12513, 12460]], [[13132, 13132], "mapped", [12513, 12460, 12488, 12531]], [[13133, 13133], "mapped", [12513, 12540, 12488, 12523]], [[13134, 13134], "mapped", [12516, 12540, 12489]], [[13135, 13135], "mapped", [12516, 12540, 12523]], [[13136, 13136], "mapped", [12518, 12450, 12531]], [[13137, 13137], "mapped", [12522, 12483, 12488, 12523]], [[13138, 13138], "mapped", [12522, 12521]], [[13139, 13139], "mapped", [12523, 12500, 12540]], [[13140, 13140], "mapped", [12523, 12540, 12502, 12523]], [[13141, 13141], "mapped", [12524, 12512]], [[13142, 13142], "mapped", [12524, 12531, 12488, 12466, 12531]], [[13143, 13143], "mapped", [12527, 12483, 12488]], [[13144, 13144], "mapped", [48, 28857]], [[13145, 13145], "mapped", [49, 28857]], [[13146, 13146], "mapped", [50, 28857]], [[13147, 13147], "mapped", [51, 28857]], [[13148, 13148], "mapped", [52, 28857]], [[13149, 13149], "mapped", [53, 28857]], [[13150, 13150], "mapped", [54, 28857]], [[13151, 13151], "mapped", [55, 28857]], [[13152, 13152], "mapped", [56, 28857]], [[13153, 13153], "mapped", [57, 28857]], [[13154, 13154], "mapped", [49, 48, 28857]], [[13155, 13155], "mapped", [49, 49, 28857]], [[13156, 13156], "mapped", [49, 50, 28857]], [[13157, 13157], "mapped", [49, 51, 28857]], [[13158, 13158], "mapped", [49, 52, 28857]], [[13159, 13159], "mapped", [49, 53, 28857]], [[13160, 13160], "mapped", [49, 54, 28857]], [[13161, 13161], "mapped", [49, 55, 28857]], [[13162, 13162], "mapped", [49, 56, 28857]], [[13163, 13163], "mapped", [49, 57, 28857]], [[13164, 13164], "mapped", [50, 48, 28857]], [[13165, 13165], "mapped", [50, 49, 28857]], [[13166, 13166], "mapped", [50, 50, 28857]], [[13167, 13167], "mapped", [50, 51, 28857]], [[13168, 13168], "mapped", [50, 52, 28857]], [[13169, 13169], "mapped", [104, 112, 97]], [[13170, 13170], "mapped", [100, 97]], [[13171, 13171], "mapped", [97, 117]], [[13172, 13172], "mapped", [98, 97, 114]], [[13173, 13173], "mapped", [111, 118]], [[13174, 13174], "mapped", [112, 99]], [[13175, 13175], "mapped", [100, 109]], [[13176, 13176], "mapped", [100, 109, 50]], [[13177, 13177], "mapped", [100, 109, 51]], [[13178, 13178], "mapped", [105, 117]], [[13179, 13179], "mapped", [24179, 25104]], [[13180, 13180], "mapped", [26157, 21644]], [[13181, 13181], "mapped", [22823, 27491]], [[13182, 13182], "mapped", [26126, 27835]], [[13183, 13183], "mapped", [26666, 24335, 20250, 31038]], [[13184, 13184], "mapped", [112, 97]], [[13185, 13185], "mapped", [110, 97]], [[13186, 13186], "mapped", [956, 97]], [[13187, 13187], "mapped", [109, 97]], [[13188, 13188], "mapped", [107, 97]], [[13189, 13189], "mapped", [107, 98]], [[13190, 13190], "mapped", [109, 98]], [[13191, 13191], "mapped", [103, 98]], [[13192, 13192], "mapped", [99, 97, 108]], [[13193, 13193], "mapped", [107, 99, 97, 108]], [[13194, 13194], "mapped", [112, 102]], [[13195, 13195], "mapped", [110, 102]], [[13196, 13196], "mapped", [956, 102]], [[13197, 13197], "mapped", [956, 103]], [[13198, 13198], "mapped", [109, 103]], [[13199, 13199], "mapped", [107, 103]], [[13200, 13200], "mapped", [104, 122]], [[13201, 13201], "mapped", [107, 104, 122]], [[13202, 13202], "mapped", [109, 104, 122]], [[13203, 13203], "mapped", [103, 104, 122]], [[13204, 13204], "mapped", [116, 104, 122]], [[13205, 13205], "mapped", [956, 108]], [[13206, 13206], "mapped", [109, 108]], [[13207, 13207], "mapped", [100, 108]], [[13208, 13208], "mapped", [107, 108]], [[13209, 13209], "mapped", [102, 109]], [[13210, 13210], "mapped", [110, 109]], [[13211, 13211], "mapped", [956, 109]], [[13212, 13212], "mapped", [109, 109]], [[13213, 13213], "mapped", [99, 109]], [[13214, 13214], "mapped", [107, 109]], [[13215, 13215], "mapped", [109, 109, 50]], [[13216, 13216], "mapped", [99, 109, 50]], [[13217, 13217], "mapped", [109, 50]], [[13218, 13218], "mapped", [107, 109, 50]], [[13219, 13219], "mapped", [109, 109, 51]], [[13220, 13220], "mapped", [99, 109, 51]], [[13221, 13221], "mapped", [109, 51]], [[13222, 13222], "mapped", [107, 109, 51]], [[13223, 13223], "mapped", [109, 8725, 115]], [[13224, 13224], "mapped", [109, 8725, 115, 50]], [[13225, 13225], "mapped", [112, 97]], [[13226, 13226], "mapped", [107, 112, 97]], [[13227, 13227], "mapped", [109, 112, 97]], [[13228, 13228], "mapped", [103, 112, 97]], [[13229, 13229], "mapped", [114, 97, 100]], [[13230, 13230], "mapped", [114, 97, 100, 8725, 115]], [[13231, 13231], "mapped", [114, 97, 100, 8725, 115, 50]], [[13232, 13232], "mapped", [112, 115]], [[13233, 13233], "mapped", [110, 115]], [[13234, 13234], "mapped", [956, 115]], [[13235, 13235], "mapped", [109, 115]], [[13236, 13236], "mapped", [112, 118]], [[13237, 13237], "mapped", [110, 118]], [[13238, 13238], "mapped", [956, 118]], [[13239, 13239], "mapped", [109, 118]], [[13240, 13240], "mapped", [107, 118]], [[13241, 13241], "mapped", [109, 118]], [[13242, 13242], "mapped", [112, 119]], [[13243, 13243], "mapped", [110, 119]], [[13244, 13244], "mapped", [956, 119]], [[13245, 13245], "mapped", [109, 119]], [[13246, 13246], "mapped", [107, 119]], [[13247, 13247], "mapped", [109, 119]], [[13248, 13248], "mapped", [107, 969]], [[13249, 13249], "mapped", [109, 969]], [[13250, 13250], "disallowed"], [[13251, 13251], "mapped", [98, 113]], [[13252, 13252], "mapped", [99, 99]], [[13253, 13253], "mapped", [99, 100]], [[13254, 13254], "mapped", [99, 8725, 107, 103]], [[13255, 13255], "disallowed"], [[13256, 13256], "mapped", [100, 98]], [[13257, 13257], "mapped", [103, 121]], [[13258, 13258], "mapped", [104, 97]], [[13259, 13259], "mapped", [104, 112]], [[13260, 13260], "mapped", [105, 110]], [[13261, 13261], "mapped", [107, 107]], [[13262, 13262], "mapped", [107, 109]], [[13263, 13263], "mapped", [107, 116]], [[13264, 13264], "mapped", [108, 109]], [[13265, 13265], "mapped", [108, 110]], [[13266, 13266], "mapped", [108, 111, 103]], [[13267, 13267], "mapped", [108, 120]], [[13268, 13268], "mapped", [109, 98]], [[13269, 13269], "mapped", [109, 105, 108]], [[13270, 13270], "mapped", [109, 111, 108]], [[13271, 13271], "mapped", [112, 104]], [[13272, 13272], "disallowed"], [[13273, 13273], "mapped", [112, 112, 109]], [[13274, 13274], "mapped", [112, 114]], [[13275, 13275], "mapped", [115, 114]], [[13276, 13276], "mapped", [115, 118]], [[13277, 13277], "mapped", [119, 98]], [[13278, 13278], "mapped", [118, 8725, 109]], [[13279, 13279], "mapped", [97, 8725, 109]], [[13280, 13280], "mapped", [49, 26085]], [[13281, 13281], "mapped", [50, 26085]], [[13282, 13282], "mapped", [51, 26085]], [[13283, 13283], "mapped", [52, 26085]], [[13284, 13284], "mapped", [53, 26085]], [[13285, 13285], "mapped", [54, 26085]], [[13286, 13286], "mapped", [55, 26085]], [[13287, 13287], "mapped", [56, 26085]], [[13288, 13288], "mapped", [57, 26085]], [[13289, 13289], "mapped", [49, 48, 26085]], [[13290, 13290], "mapped", [49, 49, 26085]], [[13291, 13291], "mapped", [49, 50, 26085]], [[13292, 13292], "mapped", [49, 51, 26085]], [[13293, 13293], "mapped", [49, 52, 26085]], [[13294, 13294], "mapped", [49, 53, 26085]], [[13295, 13295], "mapped", [49, 54, 26085]], [[13296, 13296], "mapped", [49, 55, 26085]], [[13297, 13297], "mapped", [49, 56, 26085]], [[13298, 13298], "mapped", [49, 57, 26085]], [[13299, 13299], "mapped", [50, 48, 26085]], [[13300, 13300], "mapped", [50, 49, 26085]], [[13301, 13301], "mapped", [50, 50, 26085]], [[13302, 13302], "mapped", [50, 51, 26085]], [[13303, 13303], "mapped", [50, 52, 26085]], [[13304, 13304], "mapped", [50, 53, 26085]], [[13305, 13305], "mapped", [50, 54, 26085]], [[13306, 13306], "mapped", [50, 55, 26085]], [[13307, 13307], "mapped", [50, 56, 26085]], [[13308, 13308], "mapped", [50, 57, 26085]], [[13309, 13309], "mapped", [51, 48, 26085]], [[13310, 13310], "mapped", [51, 49, 26085]], [[13311, 13311], "mapped", [103, 97, 108]], [[13312, 19893], "valid"], [[19894, 19903], "disallowed"], [[19904, 19967], "valid", [], "NV8"], [[19968, 40869], "valid"], [[40870, 40891], "valid"], [[40892, 40899], "valid"], [[40900, 40907], "valid"], [[40908, 40908], "valid"], [[40909, 40917], "valid"], [[40918, 40959], "disallowed"], [[40960, 42124], "valid"], [[42125, 42127], "disallowed"], [[42128, 42145], "valid", [], "NV8"], [[42146, 42147], "valid", [], "NV8"], [[42148, 42163], "valid", [], "NV8"], [[42164, 42164], "valid", [], "NV8"], [[42165, 42176], "valid", [], "NV8"], [[42177, 42177], "valid", [], "NV8"], [[42178, 42180], "valid", [], "NV8"], [[42181, 42181], "valid", [], "NV8"], [[42182, 42182], "valid", [], "NV8"], [[42183, 42191], "disallowed"], [[42192, 42237], "valid"], [[42238, 42239], "valid", [], "NV8"], [[42240, 42508], "valid"], [[42509, 42511], "valid", [], "NV8"], [[42512, 42539], "valid"], [[42540, 42559], "disallowed"], [[42560, 42560], "mapped", [42561]], [[42561, 42561], "valid"], [[42562, 42562], "mapped", [42563]], [[42563, 42563], "valid"], [[42564, 42564], "mapped", [42565]], [[42565, 42565], "valid"], [[42566, 42566], "mapped", [42567]], [[42567, 42567], "valid"], [[42568, 42568], "mapped", [42569]], [[42569, 42569], "valid"], [[42570, 42570], "mapped", [42571]], [[42571, 42571], "valid"], [[42572, 42572], "mapped", [42573]], [[42573, 42573], "valid"], [[42574, 42574], "mapped", [42575]], [[42575, 42575], "valid"], [[42576, 42576], "mapped", [42577]], [[42577, 42577], "valid"], [[42578, 42578], "mapped", [42579]], [[42579, 42579], "valid"], [[42580, 42580], "mapped", [42581]], [[42581, 42581], "valid"], [[42582, 42582], "mapped", [42583]], [[42583, 42583], "valid"], [[42584, 42584], "mapped", [42585]], [[42585, 42585], "valid"], [[42586, 42586], "mapped", [42587]], [[42587, 42587], "valid"], [[42588, 42588], "mapped", [42589]], [[42589, 42589], "valid"], [[42590, 42590], "mapped", [42591]], [[42591, 42591], "valid"], [[42592, 42592], "mapped", [42593]], [[42593, 42593], "valid"], [[42594, 42594], "mapped", [42595]], [[42595, 42595], "valid"], [[42596, 42596], "mapped", [42597]], [[42597, 42597], "valid"], [[42598, 42598], "mapped", [42599]], [[42599, 42599], "valid"], [[42600, 42600], "mapped", [42601]], [[42601, 42601], "valid"], [[42602, 42602], "mapped", [42603]], [[42603, 42603], "valid"], [[42604, 42604], "mapped", [42605]], [[42605, 42607], "valid"], [[42608, 42611], "valid", [], "NV8"], [[42612, 42619], "valid"], [[42620, 42621], "valid"], [[42622, 42622], "valid", [], "NV8"], [[42623, 42623], "valid"], [[42624, 42624], "mapped", [42625]], [[42625, 42625], "valid"], [[42626, 42626], "mapped", [42627]], [[42627, 42627], "valid"], [[42628, 42628], "mapped", [42629]], [[42629, 42629], "valid"], [[42630, 42630], "mapped", [42631]], [[42631, 42631], "valid"], [[42632, 42632], "mapped", [42633]], [[42633, 42633], "valid"], [[42634, 42634], "mapped", [42635]], [[42635, 42635], "valid"], [[42636, 42636], "mapped", [42637]], [[42637, 42637], "valid"], [[42638, 42638], "mapped", [42639]], [[42639, 42639], "valid"], [[42640, 42640], "mapped", [42641]], [[42641, 42641], "valid"], [[42642, 42642], "mapped", [42643]], [[42643, 42643], "valid"], [[42644, 42644], "mapped", [42645]], [[42645, 42645], "valid"], [[42646, 42646], "mapped", [42647]], [[42647, 42647], "valid"], [[42648, 42648], "mapped", [42649]], [[42649, 42649], "valid"], [[42650, 42650], "mapped", [42651]], [[42651, 42651], "valid"], [[42652, 42652], "mapped", [1098]], [[42653, 42653], "mapped", [1100]], [[42654, 42654], "valid"], [[42655, 42655], "valid"], [[42656, 42725], "valid"], [[42726, 42735], "valid", [], "NV8"], [[42736, 42737], "valid"], [[42738, 42743], "valid", [], "NV8"], [[42744, 42751], "disallowed"], [[42752, 42774], "valid", [], "NV8"], [[42775, 42778], "valid"], [[42779, 42783], "valid"], [[42784, 42785], "valid", [], "NV8"], [[42786, 42786], "mapped", [42787]], [[42787, 42787], "valid"], [[42788, 42788], "mapped", [42789]], [[42789, 42789], "valid"], [[42790, 42790], "mapped", [42791]], [[42791, 42791], "valid"], [[42792, 42792], "mapped", [42793]], [[42793, 42793], "valid"], [[42794, 42794], "mapped", [42795]], [[42795, 42795], "valid"], [[42796, 42796], "mapped", [42797]], [[42797, 42797], "valid"], [[42798, 42798], "mapped", [42799]], [[42799, 42801], "valid"], [[42802, 42802], "mapped", [42803]], [[42803, 42803], "valid"], [[42804, 42804], "mapped", [42805]], [[42805, 42805], "valid"], [[42806, 42806], "mapped", [42807]], [[42807, 42807], "valid"], [[42808, 42808], "mapped", [42809]], [[42809, 42809], "valid"], [[42810, 42810], "mapped", [42811]], [[42811, 42811], "valid"], [[42812, 42812], "mapped", [42813]], [[42813, 42813], "valid"], [[42814, 42814], "mapped", [42815]], [[42815, 42815], "valid"], [[42816, 42816], "mapped", [42817]], [[42817, 42817], "valid"], [[42818, 42818], "mapped", [42819]], [[42819, 42819], "valid"], [[42820, 42820], "mapped", [42821]], [[42821, 42821], "valid"], [[42822, 42822], "mapped", [42823]], [[42823, 42823], "valid"], [[42824, 42824], "mapped", [42825]], [[42825, 42825], "valid"], [[42826, 42826], "mapped", [42827]], [[42827, 42827], "valid"], [[42828, 42828], "mapped", [42829]], [[42829, 42829], "valid"], [[42830, 42830], "mapped", [42831]], [[42831, 42831], "valid"], [[42832, 42832], "mapped", [42833]], [[42833, 42833], "valid"], [[42834, 42834], "mapped", [42835]], [[42835, 42835], "valid"], [[42836, 42836], "mapped", [42837]], [[42837, 42837], "valid"], [[42838, 42838], "mapped", [42839]], [[42839, 42839], "valid"], [[42840, 42840], "mapped", [42841]], [[42841, 42841], "valid"], [[42842, 42842], "mapped", [42843]], [[42843, 42843], "valid"], [[42844, 42844], "mapped", [42845]], [[42845, 42845], "valid"], [[42846, 42846], "mapped", [42847]], [[42847, 42847], "valid"], [[42848, 42848], "mapped", [42849]], [[42849, 42849], "valid"], [[42850, 42850], "mapped", [42851]], [[42851, 42851], "valid"], [[42852, 42852], "mapped", [42853]], [[42853, 42853], "valid"], [[42854, 42854], "mapped", [42855]], [[42855, 42855], "valid"], [[42856, 42856], "mapped", [42857]], [[42857, 42857], "valid"], [[42858, 42858], "mapped", [42859]], [[42859, 42859], "valid"], [[42860, 42860], "mapped", [42861]], [[42861, 42861], "valid"], [[42862, 42862], "mapped", [42863]], [[42863, 42863], "valid"], [[42864, 42864], "mapped", [42863]], [[42865, 42872], "valid"], [[42873, 42873], "mapped", [42874]], [[42874, 42874], "valid"], [[42875, 42875], "mapped", [42876]], [[42876, 42876], "valid"], [[42877, 42877], "mapped", [7545]], [[42878, 42878], "mapped", [42879]], [[42879, 42879], "valid"], [[42880, 42880], "mapped", [42881]], [[42881, 42881], "valid"], [[42882, 42882], "mapped", [42883]], [[42883, 42883], "valid"], [[42884, 42884], "mapped", [42885]], [[42885, 42885], "valid"], [[42886, 42886], "mapped", [42887]], [[42887, 42888], "valid"], [[42889, 42890], "valid", [], "NV8"], [[42891, 42891], "mapped", [42892]], [[42892, 42892], "valid"], [[42893, 42893], "mapped", [613]], [[42894, 42894], "valid"], [[42895, 42895], "valid"], [[42896, 42896], "mapped", [42897]], [[42897, 42897], "valid"], [[42898, 42898], "mapped", [42899]], [[42899, 42899], "valid"], [[42900, 42901], "valid"], [[42902, 42902], "mapped", [42903]], [[42903, 42903], "valid"], [[42904, 42904], "mapped", [42905]], [[42905, 42905], "valid"], [[42906, 42906], "mapped", [42907]], [[42907, 42907], "valid"], [[42908, 42908], "mapped", [42909]], [[42909, 42909], "valid"], [[42910, 42910], "mapped", [42911]], [[42911, 42911], "valid"], [[42912, 42912], "mapped", [42913]], [[42913, 42913], "valid"], [[42914, 42914], "mapped", [42915]], [[42915, 42915], "valid"], [[42916, 42916], "mapped", [42917]], [[42917, 42917], "valid"], [[42918, 42918], "mapped", [42919]], [[42919, 42919], "valid"], [[42920, 42920], "mapped", [42921]], [[42921, 42921], "valid"], [[42922, 42922], "mapped", [614]], [[42923, 42923], "mapped", [604]], [[42924, 42924], "mapped", [609]], [[42925, 42925], "mapped", [620]], [[42926, 42927], "disallowed"], [[42928, 42928], "mapped", [670]], [[42929, 42929], "mapped", [647]], [[42930, 42930], "mapped", [669]], [[42931, 42931], "mapped", [43859]], [[42932, 42932], "mapped", [42933]], [[42933, 42933], "valid"], [[42934, 42934], "mapped", [42935]], [[42935, 42935], "valid"], [[42936, 42998], "disallowed"], [[42999, 42999], "valid"], [[43e3, 43e3], "mapped", [295]], [[43001, 43001], "mapped", [339]], [[43002, 43002], "valid"], [[43003, 43007], "valid"], [[43008, 43047], "valid"], [[43048, 43051], "valid", [], "NV8"], [[43052, 43055], "disallowed"], [[43056, 43065], "valid", [], "NV8"], [[43066, 43071], "disallowed"], [[43072, 43123], "valid"], [[43124, 43127], "valid", [], "NV8"], [[43128, 43135], "disallowed"], [[43136, 43204], "valid"], [[43205, 43213], "disallowed"], [[43214, 43215], "valid", [], "NV8"], [[43216, 43225], "valid"], [[43226, 43231], "disallowed"], [[43232, 43255], "valid"], [[43256, 43258], "valid", [], "NV8"], [[43259, 43259], "valid"], [[43260, 43260], "valid", [], "NV8"], [[43261, 43261], "valid"], [[43262, 43263], "disallowed"], [[43264, 43309], "valid"], [[43310, 43311], "valid", [], "NV8"], [[43312, 43347], "valid"], [[43348, 43358], "disallowed"], [[43359, 43359], "valid", [], "NV8"], [[43360, 43388], "valid", [], "NV8"], [[43389, 43391], "disallowed"], [[43392, 43456], "valid"], [[43457, 43469], "valid", [], "NV8"], [[43470, 43470], "disallowed"], [[43471, 43481], "valid"], [[43482, 43485], "disallowed"], [[43486, 43487], "valid", [], "NV8"], [[43488, 43518], "valid"], [[43519, 43519], "disallowed"], [[43520, 43574], "valid"], [[43575, 43583], "disallowed"], [[43584, 43597], "valid"], [[43598, 43599], "disallowed"], [[43600, 43609], "valid"], [[43610, 43611], "disallowed"], [[43612, 43615], "valid", [], "NV8"], [[43616, 43638], "valid"], [[43639, 43641], "valid", [], "NV8"], [[43642, 43643], "valid"], [[43644, 43647], "valid"], [[43648, 43714], "valid"], [[43715, 43738], "disallowed"], [[43739, 43741], "valid"], [[43742, 43743], "valid", [], "NV8"], [[43744, 43759], "valid"], [[43760, 43761], "valid", [], "NV8"], [[43762, 43766], "valid"], [[43767, 43776], "disallowed"], [[43777, 43782], "valid"], [[43783, 43784], "disallowed"], [[43785, 43790], "valid"], [[43791, 43792], "disallowed"], [[43793, 43798], "valid"], [[43799, 43807], "disallowed"], [[43808, 43814], "valid"], [[43815, 43815], "disallowed"], [[43816, 43822], "valid"], [[43823, 43823], "disallowed"], [[43824, 43866], "valid"], [[43867, 43867], "valid", [], "NV8"], [[43868, 43868], "mapped", [42791]], [[43869, 43869], "mapped", [43831]], [[43870, 43870], "mapped", [619]], [[43871, 43871], "mapped", [43858]], [[43872, 43875], "valid"], [[43876, 43877], "valid"], [[43878, 43887], "disallowed"], [[43888, 43888], "mapped", [5024]], [[43889, 43889], "mapped", [5025]], [[43890, 43890], "mapped", [5026]], [[43891, 43891], "mapped", [5027]], [[43892, 43892], "mapped", [5028]], [[43893, 43893], "mapped", [5029]], [[43894, 43894], "mapped", [5030]], [[43895, 43895], "mapped", [5031]], [[43896, 43896], "mapped", [5032]], [[43897, 43897], "mapped", [5033]], [[43898, 43898], "mapped", [5034]], [[43899, 43899], "mapped", [5035]], [[43900, 43900], "mapped", [5036]], [[43901, 43901], "mapped", [5037]], [[43902, 43902], "mapped", [5038]], [[43903, 43903], "mapped", [5039]], [[43904, 43904], "mapped", [5040]], [[43905, 43905], "mapped", [5041]], [[43906, 43906], "mapped", [5042]], [[43907, 43907], "mapped", [5043]], [[43908, 43908], "mapped", [5044]], [[43909, 43909], "mapped", [5045]], [[43910, 43910], "mapped", [5046]], [[43911, 43911], "mapped", [5047]], [[43912, 43912], "mapped", [5048]], [[43913, 43913], "mapped", [5049]], [[43914, 43914], "mapped", [5050]], [[43915, 43915], "mapped", [5051]], [[43916, 43916], "mapped", [5052]], [[43917, 43917], "mapped", [5053]], [[43918, 43918], "mapped", [5054]], [[43919, 43919], "mapped", [5055]], [[43920, 43920], "mapped", [5056]], [[43921, 43921], "mapped", [5057]], [[43922, 43922], "mapped", [5058]], [[43923, 43923], "mapped", [5059]], [[43924, 43924], "mapped", [5060]], [[43925, 43925], "mapped", [5061]], [[43926, 43926], "mapped", [5062]], [[43927, 43927], "mapped", [5063]], [[43928, 43928], "mapped", [5064]], [[43929, 43929], "mapped", [5065]], [[43930, 43930], "mapped", [5066]], [[43931, 43931], "mapped", [5067]], [[43932, 43932], "mapped", [5068]], [[43933, 43933], "mapped", [5069]], [[43934, 43934], "mapped", [5070]], [[43935, 43935], "mapped", [5071]], [[43936, 43936], "mapped", [5072]], [[43937, 43937], "mapped", [5073]], [[43938, 43938], "mapped", [5074]], [[43939, 43939], "mapped", [5075]], [[43940, 43940], "mapped", [5076]], [[43941, 43941], "mapped", [5077]], [[43942, 43942], "mapped", [5078]], [[43943, 43943], "mapped", [5079]], [[43944, 43944], "mapped", [5080]], [[43945, 43945], "mapped", [5081]], [[43946, 43946], "mapped", [5082]], [[43947, 43947], "mapped", [5083]], [[43948, 43948], "mapped", [5084]], [[43949, 43949], "mapped", [5085]], [[43950, 43950], "mapped", [5086]], [[43951, 43951], "mapped", [5087]], [[43952, 43952], "mapped", [5088]], [[43953, 43953], "mapped", [5089]], [[43954, 43954], "mapped", [5090]], [[43955, 43955], "mapped", [5091]], [[43956, 43956], "mapped", [5092]], [[43957, 43957], "mapped", [5093]], [[43958, 43958], "mapped", [5094]], [[43959, 43959], "mapped", [5095]], [[43960, 43960], "mapped", [5096]], [[43961, 43961], "mapped", [5097]], [[43962, 43962], "mapped", [5098]], [[43963, 43963], "mapped", [5099]], [[43964, 43964], "mapped", [5100]], [[43965, 43965], "mapped", [5101]], [[43966, 43966], "mapped", [5102]], [[43967, 43967], "mapped", [5103]], [[43968, 44010], "valid"], [[44011, 44011], "valid", [], "NV8"], [[44012, 44013], "valid"], [[44014, 44015], "disallowed"], [[44016, 44025], "valid"], [[44026, 44031], "disallowed"], [[44032, 55203], "valid"], [[55204, 55215], "disallowed"], [[55216, 55238], "valid", [], "NV8"], [[55239, 55242], "disallowed"], [[55243, 55291], "valid", [], "NV8"], [[55292, 55295], "disallowed"], [[55296, 57343], "disallowed"], [[57344, 63743], "disallowed"], [[63744, 63744], "mapped", [35912]], [[63745, 63745], "mapped", [26356]], [[63746, 63746], "mapped", [36554]], [[63747, 63747], "mapped", [36040]], [[63748, 63748], "mapped", [28369]], [[63749, 63749], "mapped", [20018]], [[63750, 63750], "mapped", [21477]], [[63751, 63752], "mapped", [40860]], [[63753, 63753], "mapped", [22865]], [[63754, 63754], "mapped", [37329]], [[63755, 63755], "mapped", [21895]], [[63756, 63756], "mapped", [22856]], [[63757, 63757], "mapped", [25078]], [[63758, 63758], "mapped", [30313]], [[63759, 63759], "mapped", [32645]], [[63760, 63760], "mapped", [34367]], [[63761, 63761], "mapped", [34746]], [[63762, 63762], "mapped", [35064]], [[63763, 63763], "mapped", [37007]], [[63764, 63764], "mapped", [27138]], [[63765, 63765], "mapped", [27931]], [[63766, 63766], "mapped", [28889]], [[63767, 63767], "mapped", [29662]], [[63768, 63768], "mapped", [33853]], [[63769, 63769], "mapped", [37226]], [[63770, 63770], "mapped", [39409]], [[63771, 63771], "mapped", [20098]], [[63772, 63772], "mapped", [21365]], [[63773, 63773], "mapped", [27396]], [[63774, 63774], "mapped", [29211]], [[63775, 63775], "mapped", [34349]], [[63776, 63776], "mapped", [40478]], [[63777, 63777], "mapped", [23888]], [[63778, 63778], "mapped", [28651]], [[63779, 63779], "mapped", [34253]], [[63780, 63780], "mapped", [35172]], [[63781, 63781], "mapped", [25289]], [[63782, 63782], "mapped", [33240]], [[63783, 63783], "mapped", [34847]], [[63784, 63784], "mapped", [24266]], [[63785, 63785], "mapped", [26391]], [[63786, 63786], "mapped", [28010]], [[63787, 63787], "mapped", [29436]], [[63788, 63788], "mapped", [37070]], [[63789, 63789], "mapped", [20358]], [[63790, 63790], "mapped", [20919]], [[63791, 63791], "mapped", [21214]], [[63792, 63792], "mapped", [25796]], [[63793, 63793], "mapped", [27347]], [[63794, 63794], "mapped", [29200]], [[63795, 63795], "mapped", [30439]], [[63796, 63796], "mapped", [32769]], [[63797, 63797], "mapped", [34310]], [[63798, 63798], "mapped", [34396]], [[63799, 63799], "mapped", [36335]], [[63800, 63800], "mapped", [38706]], [[63801, 63801], "mapped", [39791]], [[63802, 63802], "mapped", [40442]], [[63803, 63803], "mapped", [30860]], [[63804, 63804], "mapped", [31103]], [[63805, 63805], "mapped", [32160]], [[63806, 63806], "mapped", [33737]], [[63807, 63807], "mapped", [37636]], [[63808, 63808], "mapped", [40575]], [[63809, 63809], "mapped", [35542]], [[63810, 63810], "mapped", [22751]], [[63811, 63811], "mapped", [24324]], [[63812, 63812], "mapped", [31840]], [[63813, 63813], "mapped", [32894]], [[63814, 63814], "mapped", [29282]], [[63815, 63815], "mapped", [30922]], [[63816, 63816], "mapped", [36034]], [[63817, 63817], "mapped", [38647]], [[63818, 63818], "mapped", [22744]], [[63819, 63819], "mapped", [23650]], [[63820, 63820], "mapped", [27155]], [[63821, 63821], "mapped", [28122]], [[63822, 63822], "mapped", [28431]], [[63823, 63823], "mapped", [32047]], [[63824, 63824], "mapped", [32311]], [[63825, 63825], "mapped", [38475]], [[63826, 63826], "mapped", [21202]], [[63827, 63827], "mapped", [32907]], [[63828, 63828], "mapped", [20956]], [[63829, 63829], "mapped", [20940]], [[63830, 63830], "mapped", [31260]], [[63831, 63831], "mapped", [32190]], [[63832, 63832], "mapped", [33777]], [[63833, 63833], "mapped", [38517]], [[63834, 63834], "mapped", [35712]], [[63835, 63835], "mapped", [25295]], [[63836, 63836], "mapped", [27138]], [[63837, 63837], "mapped", [35582]], [[63838, 63838], "mapped", [20025]], [[63839, 63839], "mapped", [23527]], [[63840, 63840], "mapped", [24594]], [[63841, 63841], "mapped", [29575]], [[63842, 63842], "mapped", [30064]], [[63843, 63843], "mapped", [21271]], [[63844, 63844], "mapped", [30971]], [[63845, 63845], "mapped", [20415]], [[63846, 63846], "mapped", [24489]], [[63847, 63847], "mapped", [19981]], [[63848, 63848], "mapped", [27852]], [[63849, 63849], "mapped", [25976]], [[63850, 63850], "mapped", [32034]], [[63851, 63851], "mapped", [21443]], [[63852, 63852], "mapped", [22622]], [[63853, 63853], "mapped", [30465]], [[63854, 63854], "mapped", [33865]], [[63855, 63855], "mapped", [35498]], [[63856, 63856], "mapped", [27578]], [[63857, 63857], "mapped", [36784]], [[63858, 63858], "mapped", [27784]], [[63859, 63859], "mapped", [25342]], [[63860, 63860], "mapped", [33509]], [[63861, 63861], "mapped", [25504]], [[63862, 63862], "mapped", [30053]], [[63863, 63863], "mapped", [20142]], [[63864, 63864], "mapped", [20841]], [[63865, 63865], "mapped", [20937]], [[63866, 63866], "mapped", [26753]], [[63867, 63867], "mapped", [31975]], [[63868, 63868], "mapped", [33391]], [[63869, 63869], "mapped", [35538]], [[63870, 63870], "mapped", [37327]], [[63871, 63871], "mapped", [21237]], [[63872, 63872], "mapped", [21570]], [[63873, 63873], "mapped", [22899]], [[63874, 63874], "mapped", [24300]], [[63875, 63875], "mapped", [26053]], [[63876, 63876], "mapped", [28670]], [[63877, 63877], "mapped", [31018]], [[63878, 63878], "mapped", [38317]], [[63879, 63879], "mapped", [39530]], [[63880, 63880], "mapped", [40599]], [[63881, 63881], "mapped", [40654]], [[63882, 63882], "mapped", [21147]], [[63883, 63883], "mapped", [26310]], [[63884, 63884], "mapped", [27511]], [[63885, 63885], "mapped", [36706]], [[63886, 63886], "mapped", [24180]], [[63887, 63887], "mapped", [24976]], [[63888, 63888], "mapped", [25088]], [[63889, 63889], "mapped", [25754]], [[63890, 63890], "mapped", [28451]], [[63891, 63891], "mapped", [29001]], [[63892, 63892], "mapped", [29833]], [[63893, 63893], "mapped", [31178]], [[63894, 63894], "mapped", [32244]], [[63895, 63895], "mapped", [32879]], [[63896, 63896], "mapped", [36646]], [[63897, 63897], "mapped", [34030]], [[63898, 63898], "mapped", [36899]], [[63899, 63899], "mapped", [37706]], [[63900, 63900], "mapped", [21015]], [[63901, 63901], "mapped", [21155]], [[63902, 63902], "mapped", [21693]], [[63903, 63903], "mapped", [28872]], [[63904, 63904], "mapped", [35010]], [[63905, 63905], "mapped", [35498]], [[63906, 63906], "mapped", [24265]], [[63907, 63907], "mapped", [24565]], [[63908, 63908], "mapped", [25467]], [[63909, 63909], "mapped", [27566]], [[63910, 63910], "mapped", [31806]], [[63911, 63911], "mapped", [29557]], [[63912, 63912], "mapped", [20196]], [[63913, 63913], "mapped", [22265]], [[63914, 63914], "mapped", [23527]], [[63915, 63915], "mapped", [23994]], [[63916, 63916], "mapped", [24604]], [[63917, 63917], "mapped", [29618]], [[63918, 63918], "mapped", [29801]], [[63919, 63919], "mapped", [32666]], [[63920, 63920], "mapped", [32838]], [[63921, 63921], "mapped", [37428]], [[63922, 63922], "mapped", [38646]], [[63923, 63923], "mapped", [38728]], [[63924, 63924], "mapped", [38936]], [[63925, 63925], "mapped", [20363]], [[63926, 63926], "mapped", [31150]], [[63927, 63927], "mapped", [37300]], [[63928, 63928], "mapped", [38584]], [[63929, 63929], "mapped", [24801]], [[63930, 63930], "mapped", [20102]], [[63931, 63931], "mapped", [20698]], [[63932, 63932], "mapped", [23534]], [[63933, 63933], "mapped", [23615]], [[63934, 63934], "mapped", [26009]], [[63935, 63935], "mapped", [27138]], [[63936, 63936], "mapped", [29134]], [[63937, 63937], "mapped", [30274]], [[63938, 63938], "mapped", [34044]], [[63939, 63939], "mapped", [36988]], [[63940, 63940], "mapped", [40845]], [[63941, 63941], "mapped", [26248]], [[63942, 63942], "mapped", [38446]], [[63943, 63943], "mapped", [21129]], [[63944, 63944], "mapped", [26491]], [[63945, 63945], "mapped", [26611]], [[63946, 63946], "mapped", [27969]], [[63947, 63947], "mapped", [28316]], [[63948, 63948], "mapped", [29705]], [[63949, 63949], "mapped", [30041]], [[63950, 63950], "mapped", [30827]], [[63951, 63951], "mapped", [32016]], [[63952, 63952], "mapped", [39006]], [[63953, 63953], "mapped", [20845]], [[63954, 63954], "mapped", [25134]], [[63955, 63955], "mapped", [38520]], [[63956, 63956], "mapped", [20523]], [[63957, 63957], "mapped", [23833]], [[63958, 63958], "mapped", [28138]], [[63959, 63959], "mapped", [36650]], [[63960, 63960], "mapped", [24459]], [[63961, 63961], "mapped", [24900]], [[63962, 63962], "mapped", [26647]], [[63963, 63963], "mapped", [29575]], [[63964, 63964], "mapped", [38534]], [[63965, 63965], "mapped", [21033]], [[63966, 63966], "mapped", [21519]], [[63967, 63967], "mapped", [23653]], [[63968, 63968], "mapped", [26131]], [[63969, 63969], "mapped", [26446]], [[63970, 63970], "mapped", [26792]], [[63971, 63971], "mapped", [27877]], [[63972, 63972], "mapped", [29702]], [[63973, 63973], "mapped", [30178]], [[63974, 63974], "mapped", [32633]], [[63975, 63975], "mapped", [35023]], [[63976, 63976], "mapped", [35041]], [[63977, 63977], "mapped", [37324]], [[63978, 63978], "mapped", [38626]], [[63979, 63979], "mapped", [21311]], [[63980, 63980], "mapped", [28346]], [[63981, 63981], "mapped", [21533]], [[63982, 63982], "mapped", [29136]], [[63983, 63983], "mapped", [29848]], [[63984, 63984], "mapped", [34298]], [[63985, 63985], "mapped", [38563]], [[63986, 63986], "mapped", [40023]], [[63987, 63987], "mapped", [40607]], [[63988, 63988], "mapped", [26519]], [[63989, 63989], "mapped", [28107]], [[63990, 63990], "mapped", [33256]], [[63991, 63991], "mapped", [31435]], [[63992, 63992], "mapped", [31520]], [[63993, 63993], "mapped", [31890]], [[63994, 63994], "mapped", [29376]], [[63995, 63995], "mapped", [28825]], [[63996, 63996], "mapped", [35672]], [[63997, 63997], "mapped", [20160]], [[63998, 63998], "mapped", [33590]], [[63999, 63999], "mapped", [21050]], [[64e3, 64e3], "mapped", [20999]], [[64001, 64001], "mapped", [24230]], [[64002, 64002], "mapped", [25299]], [[64003, 64003], "mapped", [31958]], [[64004, 64004], "mapped", [23429]], [[64005, 64005], "mapped", [27934]], [[64006, 64006], "mapped", [26292]], [[64007, 64007], "mapped", [36667]], [[64008, 64008], "mapped", [34892]], [[64009, 64009], "mapped", [38477]], [[64010, 64010], "mapped", [35211]], [[64011, 64011], "mapped", [24275]], [[64012, 64012], "mapped", [20800]], [[64013, 64013], "mapped", [21952]], [[64014, 64015], "valid"], [[64016, 64016], "mapped", [22618]], [[64017, 64017], "valid"], [[64018, 64018], "mapped", [26228]], [[64019, 64020], "valid"], [[64021, 64021], "mapped", [20958]], [[64022, 64022], "mapped", [29482]], [[64023, 64023], "mapped", [30410]], [[64024, 64024], "mapped", [31036]], [[64025, 64025], "mapped", [31070]], [[64026, 64026], "mapped", [31077]], [[64027, 64027], "mapped", [31119]], [[64028, 64028], "mapped", [38742]], [[64029, 64029], "mapped", [31934]], [[64030, 64030], "mapped", [32701]], [[64031, 64031], "valid"], [[64032, 64032], "mapped", [34322]], [[64033, 64033], "valid"], [[64034, 64034], "mapped", [35576]], [[64035, 64036], "valid"], [[64037, 64037], "mapped", [36920]], [[64038, 64038], "mapped", [37117]], [[64039, 64041], "valid"], [[64042, 64042], "mapped", [39151]], [[64043, 64043], "mapped", [39164]], [[64044, 64044], "mapped", [39208]], [[64045, 64045], "mapped", [40372]], [[64046, 64046], "mapped", [37086]], [[64047, 64047], "mapped", [38583]], [[64048, 64048], "mapped", [20398]], [[64049, 64049], "mapped", [20711]], [[64050, 64050], "mapped", [20813]], [[64051, 64051], "mapped", [21193]], [[64052, 64052], "mapped", [21220]], [[64053, 64053], "mapped", [21329]], [[64054, 64054], "mapped", [21917]], [[64055, 64055], "mapped", [22022]], [[64056, 64056], "mapped", [22120]], [[64057, 64057], "mapped", [22592]], [[64058, 64058], "mapped", [22696]], [[64059, 64059], "mapped", [23652]], [[64060, 64060], "mapped", [23662]], [[64061, 64061], "mapped", [24724]], [[64062, 64062], "mapped", [24936]], [[64063, 64063], "mapped", [24974]], [[64064, 64064], "mapped", [25074]], [[64065, 64065], "mapped", [25935]], [[64066, 64066], "mapped", [26082]], [[64067, 64067], "mapped", [26257]], [[64068, 64068], "mapped", [26757]], [[64069, 64069], "mapped", [28023]], [[64070, 64070], "mapped", [28186]], [[64071, 64071], "mapped", [28450]], [[64072, 64072], "mapped", [29038]], [[64073, 64073], "mapped", [29227]], [[64074, 64074], "mapped", [29730]], [[64075, 64075], "mapped", [30865]], [[64076, 64076], "mapped", [31038]], [[64077, 64077], "mapped", [31049]], [[64078, 64078], "mapped", [31048]], [[64079, 64079], "mapped", [31056]], [[64080, 64080], "mapped", [31062]], [[64081, 64081], "mapped", [31069]], [[64082, 64082], "mapped", [31117]], [[64083, 64083], "mapped", [31118]], [[64084, 64084], "mapped", [31296]], [[64085, 64085], "mapped", [31361]], [[64086, 64086], "mapped", [31680]], [[64087, 64087], "mapped", [32244]], [[64088, 64088], "mapped", [32265]], [[64089, 64089], "mapped", [32321]], [[64090, 64090], "mapped", [32626]], [[64091, 64091], "mapped", [32773]], [[64092, 64092], "mapped", [33261]], [[64093, 64094], "mapped", [33401]], [[64095, 64095], "mapped", [33879]], [[64096, 64096], "mapped", [35088]], [[64097, 64097], "mapped", [35222]], [[64098, 64098], "mapped", [35585]], [[64099, 64099], "mapped", [35641]], [[64100, 64100], "mapped", [36051]], [[64101, 64101], "mapped", [36104]], [[64102, 64102], "mapped", [36790]], [[64103, 64103], "mapped", [36920]], [[64104, 64104], "mapped", [38627]], [[64105, 64105], "mapped", [38911]], [[64106, 64106], "mapped", [38971]], [[64107, 64107], "mapped", [24693]], [[64108, 64108], "mapped", [148206]], [[64109, 64109], "mapped", [33304]], [[64110, 64111], "disallowed"], [[64112, 64112], "mapped", [20006]], [[64113, 64113], "mapped", [20917]], [[64114, 64114], "mapped", [20840]], [[64115, 64115], "mapped", [20352]], [[64116, 64116], "mapped", [20805]], [[64117, 64117], "mapped", [20864]], [[64118, 64118], "mapped", [21191]], [[64119, 64119], "mapped", [21242]], [[64120, 64120], "mapped", [21917]], [[64121, 64121], "mapped", [21845]], [[64122, 64122], "mapped", [21913]], [[64123, 64123], "mapped", [21986]], [[64124, 64124], "mapped", [22618]], [[64125, 64125], "mapped", [22707]], [[64126, 64126], "mapped", [22852]], [[64127, 64127], "mapped", [22868]], [[64128, 64128], "mapped", [23138]], [[64129, 64129], "mapped", [23336]], [[64130, 64130], "mapped", [24274]], [[64131, 64131], "mapped", [24281]], [[64132, 64132], "mapped", [24425]], [[64133, 64133], "mapped", [24493]], [[64134, 64134], "mapped", [24792]], [[64135, 64135], "mapped", [24910]], [[64136, 64136], "mapped", [24840]], [[64137, 64137], "mapped", [24974]], [[64138, 64138], "mapped", [24928]], [[64139, 64139], "mapped", [25074]], [[64140, 64140], "mapped", [25140]], [[64141, 64141], "mapped", [25540]], [[64142, 64142], "mapped", [25628]], [[64143, 64143], "mapped", [25682]], [[64144, 64144], "mapped", [25942]], [[64145, 64145], "mapped", [26228]], [[64146, 64146], "mapped", [26391]], [[64147, 64147], "mapped", [26395]], [[64148, 64148], "mapped", [26454]], [[64149, 64149], "mapped", [27513]], [[64150, 64150], "mapped", [27578]], [[64151, 64151], "mapped", [27969]], [[64152, 64152], "mapped", [28379]], [[64153, 64153], "mapped", [28363]], [[64154, 64154], "mapped", [28450]], [[64155, 64155], "mapped", [28702]], [[64156, 64156], "mapped", [29038]], [[64157, 64157], "mapped", [30631]], [[64158, 64158], "mapped", [29237]], [[64159, 64159], "mapped", [29359]], [[64160, 64160], "mapped", [29482]], [[64161, 64161], "mapped", [29809]], [[64162, 64162], "mapped", [29958]], [[64163, 64163], "mapped", [30011]], [[64164, 64164], "mapped", [30237]], [[64165, 64165], "mapped", [30239]], [[64166, 64166], "mapped", [30410]], [[64167, 64167], "mapped", [30427]], [[64168, 64168], "mapped", [30452]], [[64169, 64169], "mapped", [30538]], [[64170, 64170], "mapped", [30528]], [[64171, 64171], "mapped", [30924]], [[64172, 64172], "mapped", [31409]], [[64173, 64173], "mapped", [31680]], [[64174, 64174], "mapped", [31867]], [[64175, 64175], "mapped", [32091]], [[64176, 64176], "mapped", [32244]], [[64177, 64177], "mapped", [32574]], [[64178, 64178], "mapped", [32773]], [[64179, 64179], "mapped", [33618]], [[64180, 64180], "mapped", [33775]], [[64181, 64181], "mapped", [34681]], [[64182, 64182], "mapped", [35137]], [[64183, 64183], "mapped", [35206]], [[64184, 64184], "mapped", [35222]], [[64185, 64185], "mapped", [35519]], [[64186, 64186], "mapped", [35576]], [[64187, 64187], "mapped", [35531]], [[64188, 64188], "mapped", [35585]], [[64189, 64189], "mapped", [35582]], [[64190, 64190], "mapped", [35565]], [[64191, 64191], "mapped", [35641]], [[64192, 64192], "mapped", [35722]], [[64193, 64193], "mapped", [36104]], [[64194, 64194], "mapped", [36664]], [[64195, 64195], "mapped", [36978]], [[64196, 64196], "mapped", [37273]], [[64197, 64197], "mapped", [37494]], [[64198, 64198], "mapped", [38524]], [[64199, 64199], "mapped", [38627]], [[64200, 64200], "mapped", [38742]], [[64201, 64201], "mapped", [38875]], [[64202, 64202], "mapped", [38911]], [[64203, 64203], "mapped", [38923]], [[64204, 64204], "mapped", [38971]], [[64205, 64205], "mapped", [39698]], [[64206, 64206], "mapped", [40860]], [[64207, 64207], "mapped", [141386]], [[64208, 64208], "mapped", [141380]], [[64209, 64209], "mapped", [144341]], [[64210, 64210], "mapped", [15261]], [[64211, 64211], "mapped", [16408]], [[64212, 64212], "mapped", [16441]], [[64213, 64213], "mapped", [152137]], [[64214, 64214], "mapped", [154832]], [[64215, 64215], "mapped", [163539]], [[64216, 64216], "mapped", [40771]], [[64217, 64217], "mapped", [40846]], [[64218, 64255], "disallowed"], [[64256, 64256], "mapped", [102, 102]], [[64257, 64257], "mapped", [102, 105]], [[64258, 64258], "mapped", [102, 108]], [[64259, 64259], "mapped", [102, 102, 105]], [[64260, 64260], "mapped", [102, 102, 108]], [[64261, 64262], "mapped", [115, 116]], [[64263, 64274], "disallowed"], [[64275, 64275], "mapped", [1396, 1398]], [[64276, 64276], "mapped", [1396, 1381]], [[64277, 64277], "mapped", [1396, 1387]], [[64278, 64278], "mapped", [1406, 1398]], [[64279, 64279], "mapped", [1396, 1389]], [[64280, 64284], "disallowed"], [[64285, 64285], "mapped", [1497, 1460]], [[64286, 64286], "valid"], [[64287, 64287], "mapped", [1522, 1463]], [[64288, 64288], "mapped", [1506]], [[64289, 64289], "mapped", [1488]], [[64290, 64290], "mapped", [1491]], [[64291, 64291], "mapped", [1492]], [[64292, 64292], "mapped", [1499]], [[64293, 64293], "mapped", [1500]], [[64294, 64294], "mapped", [1501]], [[64295, 64295], "mapped", [1512]], [[64296, 64296], "mapped", [1514]], [[64297, 64297], "disallowed_STD3_mapped", [43]], [[64298, 64298], "mapped", [1513, 1473]], [[64299, 64299], "mapped", [1513, 1474]], [[64300, 64300], "mapped", [1513, 1468, 1473]], [[64301, 64301], "mapped", [1513, 1468, 1474]], [[64302, 64302], "mapped", [1488, 1463]], [[64303, 64303], "mapped", [1488, 1464]], [[64304, 64304], "mapped", [1488, 1468]], [[64305, 64305], "mapped", [1489, 1468]], [[64306, 64306], "mapped", [1490, 1468]], [[64307, 64307], "mapped", [1491, 1468]], [[64308, 64308], "mapped", [1492, 1468]], [[64309, 64309], "mapped", [1493, 1468]], [[64310, 64310], "mapped", [1494, 1468]], [[64311, 64311], "disallowed"], [[64312, 64312], "mapped", [1496, 1468]], [[64313, 64313], "mapped", [1497, 1468]], [[64314, 64314], "mapped", [1498, 1468]], [[64315, 64315], "mapped", [1499, 1468]], [[64316, 64316], "mapped", [1500, 1468]], [[64317, 64317], "disallowed"], [[64318, 64318], "mapped", [1502, 1468]], [[64319, 64319], "disallowed"], [[64320, 64320], "mapped", [1504, 1468]], [[64321, 64321], "mapped", [1505, 1468]], [[64322, 64322], "disallowed"], [[64323, 64323], "mapped", [1507, 1468]], [[64324, 64324], "mapped", [1508, 1468]], [[64325, 64325], "disallowed"], [[64326, 64326], "mapped", [1510, 1468]], [[64327, 64327], "mapped", [1511, 1468]], [[64328, 64328], "mapped", [1512, 1468]], [[64329, 64329], "mapped", [1513, 1468]], [[64330, 64330], "mapped", [1514, 1468]], [[64331, 64331], "mapped", [1493, 1465]], [[64332, 64332], "mapped", [1489, 1471]], [[64333, 64333], "mapped", [1499, 1471]], [[64334, 64334], "mapped", [1508, 1471]], [[64335, 64335], "mapped", [1488, 1500]], [[64336, 64337], "mapped", [1649]], [[64338, 64341], "mapped", [1659]], [[64342, 64345], "mapped", [1662]], [[64346, 64349], "mapped", [1664]], [[64350, 64353], "mapped", [1658]], [[64354, 64357], "mapped", [1663]], [[64358, 64361], "mapped", [1657]], [[64362, 64365], "mapped", [1700]], [[64366, 64369], "mapped", [1702]], [[64370, 64373], "mapped", [1668]], [[64374, 64377], "mapped", [1667]], [[64378, 64381], "mapped", [1670]], [[64382, 64385], "mapped", [1671]], [[64386, 64387], "mapped", [1677]], [[64388, 64389], "mapped", [1676]], [[64390, 64391], "mapped", [1678]], [[64392, 64393], "mapped", [1672]], [[64394, 64395], "mapped", [1688]], [[64396, 64397], "mapped", [1681]], [[64398, 64401], "mapped", [1705]], [[64402, 64405], "mapped", [1711]], [[64406, 64409], "mapped", [1715]], [[64410, 64413], "mapped", [1713]], [[64414, 64415], "mapped", [1722]], [[64416, 64419], "mapped", [1723]], [[64420, 64421], "mapped", [1728]], [[64422, 64425], "mapped", [1729]], [[64426, 64429], "mapped", [1726]], [[64430, 64431], "mapped", [1746]], [[64432, 64433], "mapped", [1747]], [[64434, 64449], "valid", [], "NV8"], [[64450, 64466], "disallowed"], [[64467, 64470], "mapped", [1709]], [[64471, 64472], "mapped", [1735]], [[64473, 64474], "mapped", [1734]], [[64475, 64476], "mapped", [1736]], [[64477, 64477], "mapped", [1735, 1652]], [[64478, 64479], "mapped", [1739]], [[64480, 64481], "mapped", [1733]], [[64482, 64483], "mapped", [1737]], [[64484, 64487], "mapped", [1744]], [[64488, 64489], "mapped", [1609]], [[64490, 64491], "mapped", [1574, 1575]], [[64492, 64493], "mapped", [1574, 1749]], [[64494, 64495], "mapped", [1574, 1608]], [[64496, 64497], "mapped", [1574, 1735]], [[64498, 64499], "mapped", [1574, 1734]], [[64500, 64501], "mapped", [1574, 1736]], [[64502, 64504], "mapped", [1574, 1744]], [[64505, 64507], "mapped", [1574, 1609]], [[64508, 64511], "mapped", [1740]], [[64512, 64512], "mapped", [1574, 1580]], [[64513, 64513], "mapped", [1574, 1581]], [[64514, 64514], "mapped", [1574, 1605]], [[64515, 64515], "mapped", [1574, 1609]], [[64516, 64516], "mapped", [1574, 1610]], [[64517, 64517], "mapped", [1576, 1580]], [[64518, 64518], "mapped", [1576, 1581]], [[64519, 64519], "mapped", [1576, 1582]], [[64520, 64520], "mapped", [1576, 1605]], [[64521, 64521], "mapped", [1576, 1609]], [[64522, 64522], "mapped", [1576, 1610]], [[64523, 64523], "mapped", [1578, 1580]], [[64524, 64524], "mapped", [1578, 1581]], [[64525, 64525], "mapped", [1578, 1582]], [[64526, 64526], "mapped", [1578, 1605]], [[64527, 64527], "mapped", [1578, 1609]], [[64528, 64528], "mapped", [1578, 1610]], [[64529, 64529], "mapped", [1579, 1580]], [[64530, 64530], "mapped", [1579, 1605]], [[64531, 64531], "mapped", [1579, 1609]], [[64532, 64532], "mapped", [1579, 1610]], [[64533, 64533], "mapped", [1580, 1581]], [[64534, 64534], "mapped", [1580, 1605]], [[64535, 64535], "mapped", [1581, 1580]], [[64536, 64536], "mapped", [1581, 1605]], [[64537, 64537], "mapped", [1582, 1580]], [[64538, 64538], "mapped", [1582, 1581]], [[64539, 64539], "mapped", [1582, 1605]], [[64540, 64540], "mapped", [1587, 1580]], [[64541, 64541], "mapped", [1587, 1581]], [[64542, 64542], "mapped", [1587, 1582]], [[64543, 64543], "mapped", [1587, 1605]], [[64544, 64544], "mapped", [1589, 1581]], [[64545, 64545], "mapped", [1589, 1605]], [[64546, 64546], "mapped", [1590, 1580]], [[64547, 64547], "mapped", [1590, 1581]], [[64548, 64548], "mapped", [1590, 1582]], [[64549, 64549], "mapped", [1590, 1605]], [[64550, 64550], "mapped", [1591, 1581]], [[64551, 64551], "mapped", [1591, 1605]], [[64552, 64552], "mapped", [1592, 1605]], [[64553, 64553], "mapped", [1593, 1580]], [[64554, 64554], "mapped", [1593, 1605]], [[64555, 64555], "mapped", [1594, 1580]], [[64556, 64556], "mapped", [1594, 1605]], [[64557, 64557], "mapped", [1601, 1580]], [[64558, 64558], "mapped", [1601, 1581]], [[64559, 64559], "mapped", [1601, 1582]], [[64560, 64560], "mapped", [1601, 1605]], [[64561, 64561], "mapped", [1601, 1609]], [[64562, 64562], "mapped", [1601, 1610]], [[64563, 64563], "mapped", [1602, 1581]], [[64564, 64564], "mapped", [1602, 1605]], [[64565, 64565], "mapped", [1602, 1609]], [[64566, 64566], "mapped", [1602, 1610]], [[64567, 64567], "mapped", [1603, 1575]], [[64568, 64568], "mapped", [1603, 1580]], [[64569, 64569], "mapped", [1603, 1581]], [[64570, 64570], "mapped", [1603, 1582]], [[64571, 64571], "mapped", [1603, 1604]], [[64572, 64572], "mapped", [1603, 1605]], [[64573, 64573], "mapped", [1603, 1609]], [[64574, 64574], "mapped", [1603, 1610]], [[64575, 64575], "mapped", [1604, 1580]], [[64576, 64576], "mapped", [1604, 1581]], [[64577, 64577], "mapped", [1604, 1582]], [[64578, 64578], "mapped", [1604, 1605]], [[64579, 64579], "mapped", [1604, 1609]], [[64580, 64580], "mapped", [1604, 1610]], [[64581, 64581], "mapped", [1605, 1580]], [[64582, 64582], "mapped", [1605, 1581]], [[64583, 64583], "mapped", [1605, 1582]], [[64584, 64584], "mapped", [1605, 1605]], [[64585, 64585], "mapped", [1605, 1609]], [[64586, 64586], "mapped", [1605, 1610]], [[64587, 64587], "mapped", [1606, 1580]], [[64588, 64588], "mapped", [1606, 1581]], [[64589, 64589], "mapped", [1606, 1582]], [[64590, 64590], "mapped", [1606, 1605]], [[64591, 64591], "mapped", [1606, 1609]], [[64592, 64592], "mapped", [1606, 1610]], [[64593, 64593], "mapped", [1607, 1580]], [[64594, 64594], "mapped", [1607, 1605]], [[64595, 64595], "mapped", [1607, 1609]], [[64596, 64596], "mapped", [1607, 1610]], [[64597, 64597], "mapped", [1610, 1580]], [[64598, 64598], "mapped", [1610, 1581]], [[64599, 64599], "mapped", [1610, 1582]], [[64600, 64600], "mapped", [1610, 1605]], [[64601, 64601], "mapped", [1610, 1609]], [[64602, 64602], "mapped", [1610, 1610]], [[64603, 64603], "mapped", [1584, 1648]], [[64604, 64604], "mapped", [1585, 1648]], [[64605, 64605], "mapped", [1609, 1648]], [[64606, 64606], "disallowed_STD3_mapped", [32, 1612, 1617]], [[64607, 64607], "disallowed_STD3_mapped", [32, 1613, 1617]], [[64608, 64608], "disallowed_STD3_mapped", [32, 1614, 1617]], [[64609, 64609], "disallowed_STD3_mapped", [32, 1615, 1617]], [[64610, 64610], "disallowed_STD3_mapped", [32, 1616, 1617]], [[64611, 64611], "disallowed_STD3_mapped", [32, 1617, 1648]], [[64612, 64612], "mapped", [1574, 1585]], [[64613, 64613], "mapped", [1574, 1586]], [[64614, 64614], "mapped", [1574, 1605]], [[64615, 64615], "mapped", [1574, 1606]], [[64616, 64616], "mapped", [1574, 1609]], [[64617, 64617], "mapped", [1574, 1610]], [[64618, 64618], "mapped", [1576, 1585]], [[64619, 64619], "mapped", [1576, 1586]], [[64620, 64620], "mapped", [1576, 1605]], [[64621, 64621], "mapped", [1576, 1606]], [[64622, 64622], "mapped", [1576, 1609]], [[64623, 64623], "mapped", [1576, 1610]], [[64624, 64624], "mapped", [1578, 1585]], [[64625, 64625], "mapped", [1578, 1586]], [[64626, 64626], "mapped", [1578, 1605]], [[64627, 64627], "mapped", [1578, 1606]], [[64628, 64628], "mapped", [1578, 1609]], [[64629, 64629], "mapped", [1578, 1610]], [[64630, 64630], "mapped", [1579, 1585]], [[64631, 64631], "mapped", [1579, 1586]], [[64632, 64632], "mapped", [1579, 1605]], [[64633, 64633], "mapped", [1579, 1606]], [[64634, 64634], "mapped", [1579, 1609]], [[64635, 64635], "mapped", [1579, 1610]], [[64636, 64636], "mapped", [1601, 1609]], [[64637, 64637], "mapped", [1601, 1610]], [[64638, 64638], "mapped", [1602, 1609]], [[64639, 64639], "mapped", [1602, 1610]], [[64640, 64640], "mapped", [1603, 1575]], [[64641, 64641], "mapped", [1603, 1604]], [[64642, 64642], "mapped", [1603, 1605]], [[64643, 64643], "mapped", [1603, 1609]], [[64644, 64644], "mapped", [1603, 1610]], [[64645, 64645], "mapped", [1604, 1605]], [[64646, 64646], "mapped", [1604, 1609]], [[64647, 64647], "mapped", [1604, 1610]], [[64648, 64648], "mapped", [1605, 1575]], [[64649, 64649], "mapped", [1605, 1605]], [[64650, 64650], "mapped", [1606, 1585]], [[64651, 64651], "mapped", [1606, 1586]], [[64652, 64652], "mapped", [1606, 1605]], [[64653, 64653], "mapped", [1606, 1606]], [[64654, 64654], "mapped", [1606, 1609]], [[64655, 64655], "mapped", [1606, 1610]], [[64656, 64656], "mapped", [1609, 1648]], [[64657, 64657], "mapped", [1610, 1585]], [[64658, 64658], "mapped", [1610, 1586]], [[64659, 64659], "mapped", [1610, 1605]], [[64660, 64660], "mapped", [1610, 1606]], [[64661, 64661], "mapped", [1610, 1609]], [[64662, 64662], "mapped", [1610, 1610]], [[64663, 64663], "mapped", [1574, 1580]], [[64664, 64664], "mapped", [1574, 1581]], [[64665, 64665], "mapped", [1574, 1582]], [[64666, 64666], "mapped", [1574, 1605]], [[64667, 64667], "mapped", [1574, 1607]], [[64668, 64668], "mapped", [1576, 1580]], [[64669, 64669], "mapped", [1576, 1581]], [[64670, 64670], "mapped", [1576, 1582]], [[64671, 64671], "mapped", [1576, 1605]], [[64672, 64672], "mapped", [1576, 1607]], [[64673, 64673], "mapped", [1578, 1580]], [[64674, 64674], "mapped", [1578, 1581]], [[64675, 64675], "mapped", [1578, 1582]], [[64676, 64676], "mapped", [1578, 1605]], [[64677, 64677], "mapped", [1578, 1607]], [[64678, 64678], "mapped", [1579, 1605]], [[64679, 64679], "mapped", [1580, 1581]], [[64680, 64680], "mapped", [1580, 1605]], [[64681, 64681], "mapped", [1581, 1580]], [[64682, 64682], "mapped", [1581, 1605]], [[64683, 64683], "mapped", [1582, 1580]], [[64684, 64684], "mapped", [1582, 1605]], [[64685, 64685], "mapped", [1587, 1580]], [[64686, 64686], "mapped", [1587, 1581]], [[64687, 64687], "mapped", [1587, 1582]], [[64688, 64688], "mapped", [1587, 1605]], [[64689, 64689], "mapped", [1589, 1581]], [[64690, 64690], "mapped", [1589, 1582]], [[64691, 64691], "mapped", [1589, 1605]], [[64692, 64692], "mapped", [1590, 1580]], [[64693, 64693], "mapped", [1590, 1581]], [[64694, 64694], "mapped", [1590, 1582]], [[64695, 64695], "mapped", [1590, 1605]], [[64696, 64696], "mapped", [1591, 1581]], [[64697, 64697], "mapped", [1592, 1605]], [[64698, 64698], "mapped", [1593, 1580]], [[64699, 64699], "mapped", [1593, 1605]], [[64700, 64700], "mapped", [1594, 1580]], [[64701, 64701], "mapped", [1594, 1605]], [[64702, 64702], "mapped", [1601, 1580]], [[64703, 64703], "mapped", [1601, 1581]], [[64704, 64704], "mapped", [1601, 1582]], [[64705, 64705], "mapped", [1601, 1605]], [[64706, 64706], "mapped", [1602, 1581]], [[64707, 64707], "mapped", [1602, 1605]], [[64708, 64708], "mapped", [1603, 1580]], [[64709, 64709], "mapped", [1603, 1581]], [[64710, 64710], "mapped", [1603, 1582]], [[64711, 64711], "mapped", [1603, 1604]], [[64712, 64712], "mapped", [1603, 1605]], [[64713, 64713], "mapped", [1604, 1580]], [[64714, 64714], "mapped", [1604, 1581]], [[64715, 64715], "mapped", [1604, 1582]], [[64716, 64716], "mapped", [1604, 1605]], [[64717, 64717], "mapped", [1604, 1607]], [[64718, 64718], "mapped", [1605, 1580]], [[64719, 64719], "mapped", [1605, 1581]], [[64720, 64720], "mapped", [1605, 1582]], [[64721, 64721], "mapped", [1605, 1605]], [[64722, 64722], "mapped", [1606, 1580]], [[64723, 64723], "mapped", [1606, 1581]], [[64724, 64724], "mapped", [1606, 1582]], [[64725, 64725], "mapped", [1606, 1605]], [[64726, 64726], "mapped", [1606, 1607]], [[64727, 64727], "mapped", [1607, 1580]], [[64728, 64728], "mapped", [1607, 1605]], [[64729, 64729], "mapped", [1607, 1648]], [[64730, 64730], "mapped", [1610, 1580]], [[64731, 64731], "mapped", [1610, 1581]], [[64732, 64732], "mapped", [1610, 1582]], [[64733, 64733], "mapped", [1610, 1605]], [[64734, 64734], "mapped", [1610, 1607]], [[64735, 64735], "mapped", [1574, 1605]], [[64736, 64736], "mapped", [1574, 1607]], [[64737, 64737], "mapped", [1576, 1605]], [[64738, 64738], "mapped", [1576, 1607]], [[64739, 64739], "mapped", [1578, 1605]], [[64740, 64740], "mapped", [1578, 1607]], [[64741, 64741], "mapped", [1579, 1605]], [[64742, 64742], "mapped", [1579, 1607]], [[64743, 64743], "mapped", [1587, 1605]], [[64744, 64744], "mapped", [1587, 1607]], [[64745, 64745], "mapped", [1588, 1605]], [[64746, 64746], "mapped", [1588, 1607]], [[64747, 64747], "mapped", [1603, 1604]], [[64748, 64748], "mapped", [1603, 1605]], [[64749, 64749], "mapped", [1604, 1605]], [[64750, 64750], "mapped", [1606, 1605]], [[64751, 64751], "mapped", [1606, 1607]], [[64752, 64752], "mapped", [1610, 1605]], [[64753, 64753], "mapped", [1610, 1607]], [[64754, 64754], "mapped", [1600, 1614, 1617]], [[64755, 64755], "mapped", [1600, 1615, 1617]], [[64756, 64756], "mapped", [1600, 1616, 1617]], [[64757, 64757], "mapped", [1591, 1609]], [[64758, 64758], "mapped", [1591, 1610]], [[64759, 64759], "mapped", [1593, 1609]], [[64760, 64760], "mapped", [1593, 1610]], [[64761, 64761], "mapped", [1594, 1609]], [[64762, 64762], "mapped", [1594, 1610]], [[64763, 64763], "mapped", [1587, 1609]], [[64764, 64764], "mapped", [1587, 1610]], [[64765, 64765], "mapped", [1588, 1609]], [[64766, 64766], "mapped", [1588, 1610]], [[64767, 64767], "mapped", [1581, 1609]], [[64768, 64768], "mapped", [1581, 1610]], [[64769, 64769], "mapped", [1580, 1609]], [[64770, 64770], "mapped", [1580, 1610]], [[64771, 64771], "mapped", [1582, 1609]], [[64772, 64772], "mapped", [1582, 1610]], [[64773, 64773], "mapped", [1589, 1609]], [[64774, 64774], "mapped", [1589, 1610]], [[64775, 64775], "mapped", [1590, 1609]], [[64776, 64776], "mapped", [1590, 1610]], [[64777, 64777], "mapped", [1588, 1580]], [[64778, 64778], "mapped", [1588, 1581]], [[64779, 64779], "mapped", [1588, 1582]], [[64780, 64780], "mapped", [1588, 1605]], [[64781, 64781], "mapped", [1588, 1585]], [[64782, 64782], "mapped", [1587, 1585]], [[64783, 64783], "mapped", [1589, 1585]], [[64784, 64784], "mapped", [1590, 1585]], [[64785, 64785], "mapped", [1591, 1609]], [[64786, 64786], "mapped", [1591, 1610]], [[64787, 64787], "mapped", [1593, 1609]], [[64788, 64788], "mapped", [1593, 1610]], [[64789, 64789], "mapped", [1594, 1609]], [[64790, 64790], "mapped", [1594, 1610]], [[64791, 64791], "mapped", [1587, 1609]], [[64792, 64792], "mapped", [1587, 1610]], [[64793, 64793], "mapped", [1588, 1609]], [[64794, 64794], "mapped", [1588, 1610]], [[64795, 64795], "mapped", [1581, 1609]], [[64796, 64796], "mapped", [1581, 1610]], [[64797, 64797], "mapped", [1580, 1609]], [[64798, 64798], "mapped", [1580, 1610]], [[64799, 64799], "mapped", [1582, 1609]], [[64800, 64800], "mapped", [1582, 1610]], [[64801, 64801], "mapped", [1589, 1609]], [[64802, 64802], "mapped", [1589, 1610]], [[64803, 64803], "mapped", [1590, 1609]], [[64804, 64804], "mapped", [1590, 1610]], [[64805, 64805], "mapped", [1588, 1580]], [[64806, 64806], "mapped", [1588, 1581]], [[64807, 64807], "mapped", [1588, 1582]], [[64808, 64808], "mapped", [1588, 1605]], [[64809, 64809], "mapped", [1588, 1585]], [[64810, 64810], "mapped", [1587, 1585]], [[64811, 64811], "mapped", [1589, 1585]], [[64812, 64812], "mapped", [1590, 1585]], [[64813, 64813], "mapped", [1588, 1580]], [[64814, 64814], "mapped", [1588, 1581]], [[64815, 64815], "mapped", [1588, 1582]], [[64816, 64816], "mapped", [1588, 1605]], [[64817, 64817], "mapped", [1587, 1607]], [[64818, 64818], "mapped", [1588, 1607]], [[64819, 64819], "mapped", [1591, 1605]], [[64820, 64820], "mapped", [1587, 1580]], [[64821, 64821], "mapped", [1587, 1581]], [[64822, 64822], "mapped", [1587, 1582]], [[64823, 64823], "mapped", [1588, 1580]], [[64824, 64824], "mapped", [1588, 1581]], [[64825, 64825], "mapped", [1588, 1582]], [[64826, 64826], "mapped", [1591, 1605]], [[64827, 64827], "mapped", [1592, 1605]], [[64828, 64829], "mapped", [1575, 1611]], [[64830, 64831], "valid", [], "NV8"], [[64832, 64847], "disallowed"], [[64848, 64848], "mapped", [1578, 1580, 1605]], [[64849, 64850], "mapped", [1578, 1581, 1580]], [[64851, 64851], "mapped", [1578, 1581, 1605]], [[64852, 64852], "mapped", [1578, 1582, 1605]], [[64853, 64853], "mapped", [1578, 1605, 1580]], [[64854, 64854], "mapped", [1578, 1605, 1581]], [[64855, 64855], "mapped", [1578, 1605, 1582]], [[64856, 64857], "mapped", [1580, 1605, 1581]], [[64858, 64858], "mapped", [1581, 1605, 1610]], [[64859, 64859], "mapped", [1581, 1605, 1609]], [[64860, 64860], "mapped", [1587, 1581, 1580]], [[64861, 64861], "mapped", [1587, 1580, 1581]], [[64862, 64862], "mapped", [1587, 1580, 1609]], [[64863, 64864], "mapped", [1587, 1605, 1581]], [[64865, 64865], "mapped", [1587, 1605, 1580]], [[64866, 64867], "mapped", [1587, 1605, 1605]], [[64868, 64869], "mapped", [1589, 1581, 1581]], [[64870, 64870], "mapped", [1589, 1605, 1605]], [[64871, 64872], "mapped", [1588, 1581, 1605]], [[64873, 64873], "mapped", [1588, 1580, 1610]], [[64874, 64875], "mapped", [1588, 1605, 1582]], [[64876, 64877], "mapped", [1588, 1605, 1605]], [[64878, 64878], "mapped", [1590, 1581, 1609]], [[64879, 64880], "mapped", [1590, 1582, 1605]], [[64881, 64882], "mapped", [1591, 1605, 1581]], [[64883, 64883], "mapped", [1591, 1605, 1605]], [[64884, 64884], "mapped", [1591, 1605, 1610]], [[64885, 64885], "mapped", [1593, 1580, 1605]], [[64886, 64887], "mapped", [1593, 1605, 1605]], [[64888, 64888], "mapped", [1593, 1605, 1609]], [[64889, 64889], "mapped", [1594, 1605, 1605]], [[64890, 64890], "mapped", [1594, 1605, 1610]], [[64891, 64891], "mapped", [1594, 1605, 1609]], [[64892, 64893], "mapped", [1601, 1582, 1605]], [[64894, 64894], "mapped", [1602, 1605, 1581]], [[64895, 64895], "mapped", [1602, 1605, 1605]], [[64896, 64896], "mapped", [1604, 1581, 1605]], [[64897, 64897], "mapped", [1604, 1581, 1610]], [[64898, 64898], "mapped", [1604, 1581, 1609]], [[64899, 64900], "mapped", [1604, 1580, 1580]], [[64901, 64902], "mapped", [1604, 1582, 1605]], [[64903, 64904], "mapped", [1604, 1605, 1581]], [[64905, 64905], "mapped", [1605, 1581, 1580]], [[64906, 64906], "mapped", [1605, 1581, 1605]], [[64907, 64907], "mapped", [1605, 1581, 1610]], [[64908, 64908], "mapped", [1605, 1580, 1581]], [[64909, 64909], "mapped", [1605, 1580, 1605]], [[64910, 64910], "mapped", [1605, 1582, 1580]], [[64911, 64911], "mapped", [1605, 1582, 1605]], [[64912, 64913], "disallowed"], [[64914, 64914], "mapped", [1605, 1580, 1582]], [[64915, 64915], "mapped", [1607, 1605, 1580]], [[64916, 64916], "mapped", [1607, 1605, 1605]], [[64917, 64917], "mapped", [1606, 1581, 1605]], [[64918, 64918], "mapped", [1606, 1581, 1609]], [[64919, 64920], "mapped", [1606, 1580, 1605]], [[64921, 64921], "mapped", [1606, 1580, 1609]], [[64922, 64922], "mapped", [1606, 1605, 1610]], [[64923, 64923], "mapped", [1606, 1605, 1609]], [[64924, 64925], "mapped", [1610, 1605, 1605]], [[64926, 64926], "mapped", [1576, 1582, 1610]], [[64927, 64927], "mapped", [1578, 1580, 1610]], [[64928, 64928], "mapped", [1578, 1580, 1609]], [[64929, 64929], "mapped", [1578, 1582, 1610]], [[64930, 64930], "mapped", [1578, 1582, 1609]], [[64931, 64931], "mapped", [1578, 1605, 1610]], [[64932, 64932], "mapped", [1578, 1605, 1609]], [[64933, 64933], "mapped", [1580, 1605, 1610]], [[64934, 64934], "mapped", [1580, 1581, 1609]], [[64935, 64935], "mapped", [1580, 1605, 1609]], [[64936, 64936], "mapped", [1587, 1582, 1609]], [[64937, 64937], "mapped", [1589, 1581, 1610]], [[64938, 64938], "mapped", [1588, 1581, 1610]], [[64939, 64939], "mapped", [1590, 1581, 1610]], [[64940, 64940], "mapped", [1604, 1580, 1610]], [[64941, 64941], "mapped", [1604, 1605, 1610]], [[64942, 64942], "mapped", [1610, 1581, 1610]], [[64943, 64943], "mapped", [1610, 1580, 1610]], [[64944, 64944], "mapped", [1610, 1605, 1610]], [[64945, 64945], "mapped", [1605, 1605, 1610]], [[64946, 64946], "mapped", [1602, 1605, 1610]], [[64947, 64947], "mapped", [1606, 1581, 1610]], [[64948, 64948], "mapped", [1602, 1605, 1581]], [[64949, 64949], "mapped", [1604, 1581, 1605]], [[64950, 64950], "mapped", [1593, 1605, 1610]], [[64951, 64951], "mapped", [1603, 1605, 1610]], [[64952, 64952], "mapped", [1606, 1580, 1581]], [[64953, 64953], "mapped", [1605, 1582, 1610]], [[64954, 64954], "mapped", [1604, 1580, 1605]], [[64955, 64955], "mapped", [1603, 1605, 1605]], [[64956, 64956], "mapped", [1604, 1580, 1605]], [[64957, 64957], "mapped", [1606, 1580, 1581]], [[64958, 64958], "mapped", [1580, 1581, 1610]], [[64959, 64959], "mapped", [1581, 1580, 1610]], [[64960, 64960], "mapped", [1605, 1580, 1610]], [[64961, 64961], "mapped", [1601, 1605, 1610]], [[64962, 64962], "mapped", [1576, 1581, 1610]], [[64963, 64963], "mapped", [1603, 1605, 1605]], [[64964, 64964], "mapped", [1593, 1580, 1605]], [[64965, 64965], "mapped", [1589, 1605, 1605]], [[64966, 64966], "mapped", [1587, 1582, 1610]], [[64967, 64967], "mapped", [1606, 1580, 1610]], [[64968, 64975], "disallowed"], [[64976, 65007], "disallowed"], [[65008, 65008], "mapped", [1589, 1604, 1746]], [[65009, 65009], "mapped", [1602, 1604, 1746]], [[65010, 65010], "mapped", [1575, 1604, 1604, 1607]], [[65011, 65011], "mapped", [1575, 1603, 1576, 1585]], [[65012, 65012], "mapped", [1605, 1581, 1605, 1583]], [[65013, 65013], "mapped", [1589, 1604, 1593, 1605]], [[65014, 65014], "mapped", [1585, 1587, 1608, 1604]], [[65015, 65015], "mapped", [1593, 1604, 1610, 1607]], [[65016, 65016], "mapped", [1608, 1587, 1604, 1605]], [[65017, 65017], "mapped", [1589, 1604, 1609]], [[65018, 65018], "disallowed_STD3_mapped", [1589, 1604, 1609, 32, 1575, 1604, 1604, 1607, 32, 1593, 1604, 1610, 1607, 32, 1608, 1587, 1604, 1605]], [[65019, 65019], "disallowed_STD3_mapped", [1580, 1604, 32, 1580, 1604, 1575, 1604, 1607]], [[65020, 65020], "mapped", [1585, 1740, 1575, 1604]], [[65021, 65021], "valid", [], "NV8"], [[65022, 65023], "disallowed"], [[65024, 65039], "ignored"], [[65040, 65040], "disallowed_STD3_mapped", [44]], [[65041, 65041], "mapped", [12289]], [[65042, 65042], "disallowed"], [[65043, 65043], "disallowed_STD3_mapped", [58]], [[65044, 65044], "disallowed_STD3_mapped", [59]], [[65045, 65045], "disallowed_STD3_mapped", [33]], [[65046, 65046], "disallowed_STD3_mapped", [63]], [[65047, 65047], "mapped", [12310]], [[65048, 65048], "mapped", [12311]], [[65049, 65049], "disallowed"], [[65050, 65055], "disallowed"], [[65056, 65059], "valid"], [[65060, 65062], "valid"], [[65063, 65069], "valid"], [[65070, 65071], "valid"], [[65072, 65072], "disallowed"], [[65073, 65073], "mapped", [8212]], [[65074, 65074], "mapped", [8211]], [[65075, 65076], "disallowed_STD3_mapped", [95]], [[65077, 65077], "disallowed_STD3_mapped", [40]], [[65078, 65078], "disallowed_STD3_mapped", [41]], [[65079, 65079], "disallowed_STD3_mapped", [123]], [[65080, 65080], "disallowed_STD3_mapped", [125]], [[65081, 65081], "mapped", [12308]], [[65082, 65082], "mapped", [12309]], [[65083, 65083], "mapped", [12304]], [[65084, 65084], "mapped", [12305]], [[65085, 65085], "mapped", [12298]], [[65086, 65086], "mapped", [12299]], [[65087, 65087], "mapped", [12296]], [[65088, 65088], "mapped", [12297]], [[65089, 65089], "mapped", [12300]], [[65090, 65090], "mapped", [12301]], [[65091, 65091], "mapped", [12302]], [[65092, 65092], "mapped", [12303]], [[65093, 65094], "valid", [], "NV8"], [[65095, 65095], "disallowed_STD3_mapped", [91]], [[65096, 65096], "disallowed_STD3_mapped", [93]], [[65097, 65100], "disallowed_STD3_mapped", [32, 773]], [[65101, 65103], "disallowed_STD3_mapped", [95]], [[65104, 65104], "disallowed_STD3_mapped", [44]], [[65105, 65105], "mapped", [12289]], [[65106, 65106], "disallowed"], [[65107, 65107], "disallowed"], [[65108, 65108], "disallowed_STD3_mapped", [59]], [[65109, 65109], "disallowed_STD3_mapped", [58]], [[65110, 65110], "disallowed_STD3_mapped", [63]], [[65111, 65111], "disallowed_STD3_mapped", [33]], [[65112, 65112], "mapped", [8212]], [[65113, 65113], "disallowed_STD3_mapped", [40]], [[65114, 65114], "disallowed_STD3_mapped", [41]], [[65115, 65115], "disallowed_STD3_mapped", [123]], [[65116, 65116], "disallowed_STD3_mapped", [125]], [[65117, 65117], "mapped", [12308]], [[65118, 65118], "mapped", [12309]], [[65119, 65119], "disallowed_STD3_mapped", [35]], [[65120, 65120], "disallowed_STD3_mapped", [38]], [[65121, 65121], "disallowed_STD3_mapped", [42]], [[65122, 65122], "disallowed_STD3_mapped", [43]], [[65123, 65123], "mapped", [45]], [[65124, 65124], "disallowed_STD3_mapped", [60]], [[65125, 65125], "disallowed_STD3_mapped", [62]], [[65126, 65126], "disallowed_STD3_mapped", [61]], [[65127, 65127], "disallowed"], [[65128, 65128], "disallowed_STD3_mapped", [92]], [[65129, 65129], "disallowed_STD3_mapped", [36]], [[65130, 65130], "disallowed_STD3_mapped", [37]], [[65131, 65131], "disallowed_STD3_mapped", [64]], [[65132, 65135], "disallowed"], [[65136, 65136], "disallowed_STD3_mapped", [32, 1611]], [[65137, 65137], "mapped", [1600, 1611]], [[65138, 65138], "disallowed_STD3_mapped", [32, 1612]], [[65139, 65139], "valid"], [[65140, 65140], "disallowed_STD3_mapped", [32, 1613]], [[65141, 65141], "disallowed"], [[65142, 65142], "disallowed_STD3_mapped", [32, 1614]], [[65143, 65143], "mapped", [1600, 1614]], [[65144, 65144], "disallowed_STD3_mapped", [32, 1615]], [[65145, 65145], "mapped", [1600, 1615]], [[65146, 65146], "disallowed_STD3_mapped", [32, 1616]], [[65147, 65147], "mapped", [1600, 1616]], [[65148, 65148], "disallowed_STD3_mapped", [32, 1617]], [[65149, 65149], "mapped", [1600, 1617]], [[65150, 65150], "disallowed_STD3_mapped", [32, 1618]], [[65151, 65151], "mapped", [1600, 1618]], [[65152, 65152], "mapped", [1569]], [[65153, 65154], "mapped", [1570]], [[65155, 65156], "mapped", [1571]], [[65157, 65158], "mapped", [1572]], [[65159, 65160], "mapped", [1573]], [[65161, 65164], "mapped", [1574]], [[65165, 65166], "mapped", [1575]], [[65167, 65170], "mapped", [1576]], [[65171, 65172], "mapped", [1577]], [[65173, 65176], "mapped", [1578]], [[65177, 65180], "mapped", [1579]], [[65181, 65184], "mapped", [1580]], [[65185, 65188], "mapped", [1581]], [[65189, 65192], "mapped", [1582]], [[65193, 65194], "mapped", [1583]], [[65195, 65196], "mapped", [1584]], [[65197, 65198], "mapped", [1585]], [[65199, 65200], "mapped", [1586]], [[65201, 65204], "mapped", [1587]], [[65205, 65208], "mapped", [1588]], [[65209, 65212], "mapped", [1589]], [[65213, 65216], "mapped", [1590]], [[65217, 65220], "mapped", [1591]], [[65221, 65224], "mapped", [1592]], [[65225, 65228], "mapped", [1593]], [[65229, 65232], "mapped", [1594]], [[65233, 65236], "mapped", [1601]], [[65237, 65240], "mapped", [1602]], [[65241, 65244], "mapped", [1603]], [[65245, 65248], "mapped", [1604]], [[65249, 65252], "mapped", [1605]], [[65253, 65256], "mapped", [1606]], [[65257, 65260], "mapped", [1607]], [[65261, 65262], "mapped", [1608]], [[65263, 65264], "mapped", [1609]], [[65265, 65268], "mapped", [1610]], [[65269, 65270], "mapped", [1604, 1570]], [[65271, 65272], "mapped", [1604, 1571]], [[65273, 65274], "mapped", [1604, 1573]], [[65275, 65276], "mapped", [1604, 1575]], [[65277, 65278], "disallowed"], [[65279, 65279], "ignored"], [[65280, 65280], "disallowed"], [[65281, 65281], "disallowed_STD3_mapped", [33]], [[65282, 65282], "disallowed_STD3_mapped", [34]], [[65283, 65283], "disallowed_STD3_mapped", [35]], [[65284, 65284], "disallowed_STD3_mapped", [36]], [[65285, 65285], "disallowed_STD3_mapped", [37]], [[65286, 65286], "disallowed_STD3_mapped", [38]], [[65287, 65287], "disallowed_STD3_mapped", [39]], [[65288, 65288], "disallowed_STD3_mapped", [40]], [[65289, 65289], "disallowed_STD3_mapped", [41]], [[65290, 65290], "disallowed_STD3_mapped", [42]], [[65291, 65291], "disallowed_STD3_mapped", [43]], [[65292, 65292], "disallowed_STD3_mapped", [44]], [[65293, 65293], "mapped", [45]], [[65294, 65294], "mapped", [46]], [[65295, 65295], "disallowed_STD3_mapped", [47]], [[65296, 65296], "mapped", [48]], [[65297, 65297], "mapped", [49]], [[65298, 65298], "mapped", [50]], [[65299, 65299], "mapped", [51]], [[65300, 65300], "mapped", [52]], [[65301, 65301], "mapped", [53]], [[65302, 65302], "mapped", [54]], [[65303, 65303], "mapped", [55]], [[65304, 65304], "mapped", [56]], [[65305, 65305], "mapped", [57]], [[65306, 65306], "disallowed_STD3_mapped", [58]], [[65307, 65307], "disallowed_STD3_mapped", [59]], [[65308, 65308], "disallowed_STD3_mapped", [60]], [[65309, 65309], "disallowed_STD3_mapped", [61]], [[65310, 65310], "disallowed_STD3_mapped", [62]], [[65311, 65311], "disallowed_STD3_mapped", [63]], [[65312, 65312], "disallowed_STD3_mapped", [64]], [[65313, 65313], "mapped", [97]], [[65314, 65314], "mapped", [98]], [[65315, 65315], "mapped", [99]], [[65316, 65316], "mapped", [100]], [[65317, 65317], "mapped", [101]], [[65318, 65318], "mapped", [102]], [[65319, 65319], "mapped", [103]], [[65320, 65320], "mapped", [104]], [[65321, 65321], "mapped", [105]], [[65322, 65322], "mapped", [106]], [[65323, 65323], "mapped", [107]], [[65324, 65324], "mapped", [108]], [[65325, 65325], "mapped", [109]], [[65326, 65326], "mapped", [110]], [[65327, 65327], "mapped", [111]], [[65328, 65328], "mapped", [112]], [[65329, 65329], "mapped", [113]], [[65330, 65330], "mapped", [114]], [[65331, 65331], "mapped", [115]], [[65332, 65332], "mapped", [116]], [[65333, 65333], "mapped", [117]], [[65334, 65334], "mapped", [118]], [[65335, 65335], "mapped", [119]], [[65336, 65336], "mapped", [120]], [[65337, 65337], "mapped", [121]], [[65338, 65338], "mapped", [122]], [[65339, 65339], "disallowed_STD3_mapped", [91]], [[65340, 65340], "disallowed_STD3_mapped", [92]], [[65341, 65341], "disallowed_STD3_mapped", [93]], [[65342, 65342], "disallowed_STD3_mapped", [94]], [[65343, 65343], "disallowed_STD3_mapped", [95]], [[65344, 65344], "disallowed_STD3_mapped", [96]], [[65345, 65345], "mapped", [97]], [[65346, 65346], "mapped", [98]], [[65347, 65347], "mapped", [99]], [[65348, 65348], "mapped", [100]], [[65349, 65349], "mapped", [101]], [[65350, 65350], "mapped", [102]], [[65351, 65351], "mapped", [103]], [[65352, 65352], "mapped", [104]], [[65353, 65353], "mapped", [105]], [[65354, 65354], "mapped", [106]], [[65355, 65355], "mapped", [107]], [[65356, 65356], "mapped", [108]], [[65357, 65357], "mapped", [109]], [[65358, 65358], "mapped", [110]], [[65359, 65359], "mapped", [111]], [[65360, 65360], "mapped", [112]], [[65361, 65361], "mapped", [113]], [[65362, 65362], "mapped", [114]], [[65363, 65363], "mapped", [115]], [[65364, 65364], "mapped", [116]], [[65365, 65365], "mapped", [117]], [[65366, 65366], "mapped", [118]], [[65367, 65367], "mapped", [119]], [[65368, 65368], "mapped", [120]], [[65369, 65369], "mapped", [121]], [[65370, 65370], "mapped", [122]], [[65371, 65371], "disallowed_STD3_mapped", [123]], [[65372, 65372], "disallowed_STD3_mapped", [124]], [[65373, 65373], "disallowed_STD3_mapped", [125]], [[65374, 65374], "disallowed_STD3_mapped", [126]], [[65375, 65375], "mapped", [10629]], [[65376, 65376], "mapped", [10630]], [[65377, 65377], "mapped", [46]], [[65378, 65378], "mapped", [12300]], [[65379, 65379], "mapped", [12301]], [[65380, 65380], "mapped", [12289]], [[65381, 65381], "mapped", [12539]], [[65382, 65382], "mapped", [12530]], [[65383, 65383], "mapped", [12449]], [[65384, 65384], "mapped", [12451]], [[65385, 65385], "mapped", [12453]], [[65386, 65386], "mapped", [12455]], [[65387, 65387], "mapped", [12457]], [[65388, 65388], "mapped", [12515]], [[65389, 65389], "mapped", [12517]], [[65390, 65390], "mapped", [12519]], [[65391, 65391], "mapped", [12483]], [[65392, 65392], "mapped", [12540]], [[65393, 65393], "mapped", [12450]], [[65394, 65394], "mapped", [12452]], [[65395, 65395], "mapped", [12454]], [[65396, 65396], "mapped", [12456]], [[65397, 65397], "mapped", [12458]], [[65398, 65398], "mapped", [12459]], [[65399, 65399], "mapped", [12461]], [[65400, 65400], "mapped", [12463]], [[65401, 65401], "mapped", [12465]], [[65402, 65402], "mapped", [12467]], [[65403, 65403], "mapped", [12469]], [[65404, 65404], "mapped", [12471]], [[65405, 65405], "mapped", [12473]], [[65406, 65406], "mapped", [12475]], [[65407, 65407], "mapped", [12477]], [[65408, 65408], "mapped", [12479]], [[65409, 65409], "mapped", [12481]], [[65410, 65410], "mapped", [12484]], [[65411, 65411], "mapped", [12486]], [[65412, 65412], "mapped", [12488]], [[65413, 65413], "mapped", [12490]], [[65414, 65414], "mapped", [12491]], [[65415, 65415], "mapped", [12492]], [[65416, 65416], "mapped", [12493]], [[65417, 65417], "mapped", [12494]], [[65418, 65418], "mapped", [12495]], [[65419, 65419], "mapped", [12498]], [[65420, 65420], "mapped", [12501]], [[65421, 65421], "mapped", [12504]], [[65422, 65422], "mapped", [12507]], [[65423, 65423], "mapped", [12510]], [[65424, 65424], "mapped", [12511]], [[65425, 65425], "mapped", [12512]], [[65426, 65426], "mapped", [12513]], [[65427, 65427], "mapped", [12514]], [[65428, 65428], "mapped", [12516]], [[65429, 65429], "mapped", [12518]], [[65430, 65430], "mapped", [12520]], [[65431, 65431], "mapped", [12521]], [[65432, 65432], "mapped", [12522]], [[65433, 65433], "mapped", [12523]], [[65434, 65434], "mapped", [12524]], [[65435, 65435], "mapped", [12525]], [[65436, 65436], "mapped", [12527]], [[65437, 65437], "mapped", [12531]], [[65438, 65438], "mapped", [12441]], [[65439, 65439], "mapped", [12442]], [[65440, 65440], "disallowed"], [[65441, 65441], "mapped", [4352]], [[65442, 65442], "mapped", [4353]], [[65443, 65443], "mapped", [4522]], [[65444, 65444], "mapped", [4354]], [[65445, 65445], "mapped", [4524]], [[65446, 65446], "mapped", [4525]], [[65447, 65447], "mapped", [4355]], [[65448, 65448], "mapped", [4356]], [[65449, 65449], "mapped", [4357]], [[65450, 65450], "mapped", [4528]], [[65451, 65451], "mapped", [4529]], [[65452, 65452], "mapped", [4530]], [[65453, 65453], "mapped", [4531]], [[65454, 65454], "mapped", [4532]], [[65455, 65455], "mapped", [4533]], [[65456, 65456], "mapped", [4378]], [[65457, 65457], "mapped", [4358]], [[65458, 65458], "mapped", [4359]], [[65459, 65459], "mapped", [4360]], [[65460, 65460], "mapped", [4385]], [[65461, 65461], "mapped", [4361]], [[65462, 65462], "mapped", [4362]], [[65463, 65463], "mapped", [4363]], [[65464, 65464], "mapped", [4364]], [[65465, 65465], "mapped", [4365]], [[65466, 65466], "mapped", [4366]], [[65467, 65467], "mapped", [4367]], [[65468, 65468], "mapped", [4368]], [[65469, 65469], "mapped", [4369]], [[65470, 65470], "mapped", [4370]], [[65471, 65473], "disallowed"], [[65474, 65474], "mapped", [4449]], [[65475, 65475], "mapped", [4450]], [[65476, 65476], "mapped", [4451]], [[65477, 65477], "mapped", [4452]], [[65478, 65478], "mapped", [4453]], [[65479, 65479], "mapped", [4454]], [[65480, 65481], "disallowed"], [[65482, 65482], "mapped", [4455]], [[65483, 65483], "mapped", [4456]], [[65484, 65484], "mapped", [4457]], [[65485, 65485], "mapped", [4458]], [[65486, 65486], "mapped", [4459]], [[65487, 65487], "mapped", [4460]], [[65488, 65489], "disallowed"], [[65490, 65490], "mapped", [4461]], [[65491, 65491], "mapped", [4462]], [[65492, 65492], "mapped", [4463]], [[65493, 65493], "mapped", [4464]], [[65494, 65494], "mapped", [4465]], [[65495, 65495], "mapped", [4466]], [[65496, 65497], "disallowed"], [[65498, 65498], "mapped", [4467]], [[65499, 65499], "mapped", [4468]], [[65500, 65500], "mapped", [4469]], [[65501, 65503], "disallowed"], [[65504, 65504], "mapped", [162]], [[65505, 65505], "mapped", [163]], [[65506, 65506], "mapped", [172]], [[65507, 65507], "disallowed_STD3_mapped", [32, 772]], [[65508, 65508], "mapped", [166]], [[65509, 65509], "mapped", [165]], [[65510, 65510], "mapped", [8361]], [[65511, 65511], "disallowed"], [[65512, 65512], "mapped", [9474]], [[65513, 65513], "mapped", [8592]], [[65514, 65514], "mapped", [8593]], [[65515, 65515], "mapped", [8594]], [[65516, 65516], "mapped", [8595]], [[65517, 65517], "mapped", [9632]], [[65518, 65518], "mapped", [9675]], [[65519, 65528], "disallowed"], [[65529, 65531], "disallowed"], [[65532, 65532], "disallowed"], [[65533, 65533], "disallowed"], [[65534, 65535], "disallowed"], [[65536, 65547], "valid"], [[65548, 65548], "disallowed"], [[65549, 65574], "valid"], [[65575, 65575], "disallowed"], [[65576, 65594], "valid"], [[65595, 65595], "disallowed"], [[65596, 65597], "valid"], [[65598, 65598], "disallowed"], [[65599, 65613], "valid"], [[65614, 65615], "disallowed"], [[65616, 65629], "valid"], [[65630, 65663], "disallowed"], [[65664, 65786], "valid"], [[65787, 65791], "disallowed"], [[65792, 65794], "valid", [], "NV8"], [[65795, 65798], "disallowed"], [[65799, 65843], "valid", [], "NV8"], [[65844, 65846], "disallowed"], [[65847, 65855], "valid", [], "NV8"], [[65856, 65930], "valid", [], "NV8"], [[65931, 65932], "valid", [], "NV8"], [[65933, 65935], "disallowed"], [[65936, 65947], "valid", [], "NV8"], [[65948, 65951], "disallowed"], [[65952, 65952], "valid", [], "NV8"], [[65953, 65999], "disallowed"], [[66e3, 66044], "valid", [], "NV8"], [[66045, 66045], "valid"], [[66046, 66175], "disallowed"], [[66176, 66204], "valid"], [[66205, 66207], "disallowed"], [[66208, 66256], "valid"], [[66257, 66271], "disallowed"], [[66272, 66272], "valid"], [[66273, 66299], "valid", [], "NV8"], [[66300, 66303], "disallowed"], [[66304, 66334], "valid"], [[66335, 66335], "valid"], [[66336, 66339], "valid", [], "NV8"], [[66340, 66351], "disallowed"], [[66352, 66368], "valid"], [[66369, 66369], "valid", [], "NV8"], [[66370, 66377], "valid"], [[66378, 66378], "valid", [], "NV8"], [[66379, 66383], "disallowed"], [[66384, 66426], "valid"], [[66427, 66431], "disallowed"], [[66432, 66461], "valid"], [[66462, 66462], "disallowed"], [[66463, 66463], "valid", [], "NV8"], [[66464, 66499], "valid"], [[66500, 66503], "disallowed"], [[66504, 66511], "valid"], [[66512, 66517], "valid", [], "NV8"], [[66518, 66559], "disallowed"], [[66560, 66560], "mapped", [66600]], [[66561, 66561], "mapped", [66601]], [[66562, 66562], "mapped", [66602]], [[66563, 66563], "mapped", [66603]], [[66564, 66564], "mapped", [66604]], [[66565, 66565], "mapped", [66605]], [[66566, 66566], "mapped", [66606]], [[66567, 66567], "mapped", [66607]], [[66568, 66568], "mapped", [66608]], [[66569, 66569], "mapped", [66609]], [[66570, 66570], "mapped", [66610]], [[66571, 66571], "mapped", [66611]], [[66572, 66572], "mapped", [66612]], [[66573, 66573], "mapped", [66613]], [[66574, 66574], "mapped", [66614]], [[66575, 66575], "mapped", [66615]], [[66576, 66576], "mapped", [66616]], [[66577, 66577], "mapped", [66617]], [[66578, 66578], "mapped", [66618]], [[66579, 66579], "mapped", [66619]], [[66580, 66580], "mapped", [66620]], [[66581, 66581], "mapped", [66621]], [[66582, 66582], "mapped", [66622]], [[66583, 66583], "mapped", [66623]], [[66584, 66584], "mapped", [66624]], [[66585, 66585], "mapped", [66625]], [[66586, 66586], "mapped", [66626]], [[66587, 66587], "mapped", [66627]], [[66588, 66588], "mapped", [66628]], [[66589, 66589], "mapped", [66629]], [[66590, 66590], "mapped", [66630]], [[66591, 66591], "mapped", [66631]], [[66592, 66592], "mapped", [66632]], [[66593, 66593], "mapped", [66633]], [[66594, 66594], "mapped", [66634]], [[66595, 66595], "mapped", [66635]], [[66596, 66596], "mapped", [66636]], [[66597, 66597], "mapped", [66637]], [[66598, 66598], "mapped", [66638]], [[66599, 66599], "mapped", [66639]], [[66600, 66637], "valid"], [[66638, 66717], "valid"], [[66718, 66719], "disallowed"], [[66720, 66729], "valid"], [[66730, 66815], "disallowed"], [[66816, 66855], "valid"], [[66856, 66863], "disallowed"], [[66864, 66915], "valid"], [[66916, 66926], "disallowed"], [[66927, 66927], "valid", [], "NV8"], [[66928, 67071], "disallowed"], [[67072, 67382], "valid"], [[67383, 67391], "disallowed"], [[67392, 67413], "valid"], [[67414, 67423], "disallowed"], [[67424, 67431], "valid"], [[67432, 67583], "disallowed"], [[67584, 67589], "valid"], [[67590, 67591], "disallowed"], [[67592, 67592], "valid"], [[67593, 67593], "disallowed"], [[67594, 67637], "valid"], [[67638, 67638], "disallowed"], [[67639, 67640], "valid"], [[67641, 67643], "disallowed"], [[67644, 67644], "valid"], [[67645, 67646], "disallowed"], [[67647, 67647], "valid"], [[67648, 67669], "valid"], [[67670, 67670], "disallowed"], [[67671, 67679], "valid", [], "NV8"], [[67680, 67702], "valid"], [[67703, 67711], "valid", [], "NV8"], [[67712, 67742], "valid"], [[67743, 67750], "disallowed"], [[67751, 67759], "valid", [], "NV8"], [[67760, 67807], "disallowed"], [[67808, 67826], "valid"], [[67827, 67827], "disallowed"], [[67828, 67829], "valid"], [[67830, 67834], "disallowed"], [[67835, 67839], "valid", [], "NV8"], [[67840, 67861], "valid"], [[67862, 67865], "valid", [], "NV8"], [[67866, 67867], "valid", [], "NV8"], [[67868, 67870], "disallowed"], [[67871, 67871], "valid", [], "NV8"], [[67872, 67897], "valid"], [[67898, 67902], "disallowed"], [[67903, 67903], "valid", [], "NV8"], [[67904, 67967], "disallowed"], [[67968, 68023], "valid"], [[68024, 68027], "disallowed"], [[68028, 68029], "valid", [], "NV8"], [[68030, 68031], "valid"], [[68032, 68047], "valid", [], "NV8"], [[68048, 68049], "disallowed"], [[68050, 68095], "valid", [], "NV8"], [[68096, 68099], "valid"], [[68100, 68100], "disallowed"], [[68101, 68102], "valid"], [[68103, 68107], "disallowed"], [[68108, 68115], "valid"], [[68116, 68116], "disallowed"], [[68117, 68119], "valid"], [[68120, 68120], "disallowed"], [[68121, 68147], "valid"], [[68148, 68151], "disallowed"], [[68152, 68154], "valid"], [[68155, 68158], "disallowed"], [[68159, 68159], "valid"], [[68160, 68167], "valid", [], "NV8"], [[68168, 68175], "disallowed"], [[68176, 68184], "valid", [], "NV8"], [[68185, 68191], "disallowed"], [[68192, 68220], "valid"], [[68221, 68223], "valid", [], "NV8"], [[68224, 68252], "valid"], [[68253, 68255], "valid", [], "NV8"], [[68256, 68287], "disallowed"], [[68288, 68295], "valid"], [[68296, 68296], "valid", [], "NV8"], [[68297, 68326], "valid"], [[68327, 68330], "disallowed"], [[68331, 68342], "valid", [], "NV8"], [[68343, 68351], "disallowed"], [[68352, 68405], "valid"], [[68406, 68408], "disallowed"], [[68409, 68415], "valid", [], "NV8"], [[68416, 68437], "valid"], [[68438, 68439], "disallowed"], [[68440, 68447], "valid", [], "NV8"], [[68448, 68466], "valid"], [[68467, 68471], "disallowed"], [[68472, 68479], "valid", [], "NV8"], [[68480, 68497], "valid"], [[68498, 68504], "disallowed"], [[68505, 68508], "valid", [], "NV8"], [[68509, 68520], "disallowed"], [[68521, 68527], "valid", [], "NV8"], [[68528, 68607], "disallowed"], [[68608, 68680], "valid"], [[68681, 68735], "disallowed"], [[68736, 68736], "mapped", [68800]], [[68737, 68737], "mapped", [68801]], [[68738, 68738], "mapped", [68802]], [[68739, 68739], "mapped", [68803]], [[68740, 68740], "mapped", [68804]], [[68741, 68741], "mapped", [68805]], [[68742, 68742], "mapped", [68806]], [[68743, 68743], "mapped", [68807]], [[68744, 68744], "mapped", [68808]], [[68745, 68745], "mapped", [68809]], [[68746, 68746], "mapped", [68810]], [[68747, 68747], "mapped", [68811]], [[68748, 68748], "mapped", [68812]], [[68749, 68749], "mapped", [68813]], [[68750, 68750], "mapped", [68814]], [[68751, 68751], "mapped", [68815]], [[68752, 68752], "mapped", [68816]], [[68753, 68753], "mapped", [68817]], [[68754, 68754], "mapped", [68818]], [[68755, 68755], "mapped", [68819]], [[68756, 68756], "mapped", [68820]], [[68757, 68757], "mapped", [68821]], [[68758, 68758], "mapped", [68822]], [[68759, 68759], "mapped", [68823]], [[68760, 68760], "mapped", [68824]], [[68761, 68761], "mapped", [68825]], [[68762, 68762], "mapped", [68826]], [[68763, 68763], "mapped", [68827]], [[68764, 68764], "mapped", [68828]], [[68765, 68765], "mapped", [68829]], [[68766, 68766], "mapped", [68830]], [[68767, 68767], "mapped", [68831]], [[68768, 68768], "mapped", [68832]], [[68769, 68769], "mapped", [68833]], [[68770, 68770], "mapped", [68834]], [[68771, 68771], "mapped", [68835]], [[68772, 68772], "mapped", [68836]], [[68773, 68773], "mapped", [68837]], [[68774, 68774], "mapped", [68838]], [[68775, 68775], "mapped", [68839]], [[68776, 68776], "mapped", [68840]], [[68777, 68777], "mapped", [68841]], [[68778, 68778], "mapped", [68842]], [[68779, 68779], "mapped", [68843]], [[68780, 68780], "mapped", [68844]], [[68781, 68781], "mapped", [68845]], [[68782, 68782], "mapped", [68846]], [[68783, 68783], "mapped", [68847]], [[68784, 68784], "mapped", [68848]], [[68785, 68785], "mapped", [68849]], [[68786, 68786], "mapped", [68850]], [[68787, 68799], "disallowed"], [[68800, 68850], "valid"], [[68851, 68857], "disallowed"], [[68858, 68863], "valid", [], "NV8"], [[68864, 69215], "disallowed"], [[69216, 69246], "valid", [], "NV8"], [[69247, 69631], "disallowed"], [[69632, 69702], "valid"], [[69703, 69709], "valid", [], "NV8"], [[69710, 69713], "disallowed"], [[69714, 69733], "valid", [], "NV8"], [[69734, 69743], "valid"], [[69744, 69758], "disallowed"], [[69759, 69759], "valid"], [[69760, 69818], "valid"], [[69819, 69820], "valid", [], "NV8"], [[69821, 69821], "disallowed"], [[69822, 69825], "valid", [], "NV8"], [[69826, 69839], "disallowed"], [[69840, 69864], "valid"], [[69865, 69871], "disallowed"], [[69872, 69881], "valid"], [[69882, 69887], "disallowed"], [[69888, 69940], "valid"], [[69941, 69941], "disallowed"], [[69942, 69951], "valid"], [[69952, 69955], "valid", [], "NV8"], [[69956, 69967], "disallowed"], [[69968, 70003], "valid"], [[70004, 70005], "valid", [], "NV8"], [[70006, 70006], "valid"], [[70007, 70015], "disallowed"], [[70016, 70084], "valid"], [[70085, 70088], "valid", [], "NV8"], [[70089, 70089], "valid", [], "NV8"], [[70090, 70092], "valid"], [[70093, 70093], "valid", [], "NV8"], [[70094, 70095], "disallowed"], [[70096, 70105], "valid"], [[70106, 70106], "valid"], [[70107, 70107], "valid", [], "NV8"], [[70108, 70108], "valid"], [[70109, 70111], "valid", [], "NV8"], [[70112, 70112], "disallowed"], [[70113, 70132], "valid", [], "NV8"], [[70133, 70143], "disallowed"], [[70144, 70161], "valid"], [[70162, 70162], "disallowed"], [[70163, 70199], "valid"], [[70200, 70205], "valid", [], "NV8"], [[70206, 70271], "disallowed"], [[70272, 70278], "valid"], [[70279, 70279], "disallowed"], [[70280, 70280], "valid"], [[70281, 70281], "disallowed"], [[70282, 70285], "valid"], [[70286, 70286], "disallowed"], [[70287, 70301], "valid"], [[70302, 70302], "disallowed"], [[70303, 70312], "valid"], [[70313, 70313], "valid", [], "NV8"], [[70314, 70319], "disallowed"], [[70320, 70378], "valid"], [[70379, 70383], "disallowed"], [[70384, 70393], "valid"], [[70394, 70399], "disallowed"], [[70400, 70400], "valid"], [[70401, 70403], "valid"], [[70404, 70404], "disallowed"], [[70405, 70412], "valid"], [[70413, 70414], "disallowed"], [[70415, 70416], "valid"], [[70417, 70418], "disallowed"], [[70419, 70440], "valid"], [[70441, 70441], "disallowed"], [[70442, 70448], "valid"], [[70449, 70449], "disallowed"], [[70450, 70451], "valid"], [[70452, 70452], "disallowed"], [[70453, 70457], "valid"], [[70458, 70459], "disallowed"], [[70460, 70468], "valid"], [[70469, 70470], "disallowed"], [[70471, 70472], "valid"], [[70473, 70474], "disallowed"], [[70475, 70477], "valid"], [[70478, 70479], "disallowed"], [[70480, 70480], "valid"], [[70481, 70486], "disallowed"], [[70487, 70487], "valid"], [[70488, 70492], "disallowed"], [[70493, 70499], "valid"], [[70500, 70501], "disallowed"], [[70502, 70508], "valid"], [[70509, 70511], "disallowed"], [[70512, 70516], "valid"], [[70517, 70783], "disallowed"], [[70784, 70853], "valid"], [[70854, 70854], "valid", [], "NV8"], [[70855, 70855], "valid"], [[70856, 70863], "disallowed"], [[70864, 70873], "valid"], [[70874, 71039], "disallowed"], [[71040, 71093], "valid"], [[71094, 71095], "disallowed"], [[71096, 71104], "valid"], [[71105, 71113], "valid", [], "NV8"], [[71114, 71127], "valid", [], "NV8"], [[71128, 71133], "valid"], [[71134, 71167], "disallowed"], [[71168, 71232], "valid"], [[71233, 71235], "valid", [], "NV8"], [[71236, 71236], "valid"], [[71237, 71247], "disallowed"], [[71248, 71257], "valid"], [[71258, 71295], "disallowed"], [[71296, 71351], "valid"], [[71352, 71359], "disallowed"], [[71360, 71369], "valid"], [[71370, 71423], "disallowed"], [[71424, 71449], "valid"], [[71450, 71452], "disallowed"], [[71453, 71467], "valid"], [[71468, 71471], "disallowed"], [[71472, 71481], "valid"], [[71482, 71487], "valid", [], "NV8"], [[71488, 71839], "disallowed"], [[71840, 71840], "mapped", [71872]], [[71841, 71841], "mapped", [71873]], [[71842, 71842], "mapped", [71874]], [[71843, 71843], "mapped", [71875]], [[71844, 71844], "mapped", [71876]], [[71845, 71845], "mapped", [71877]], [[71846, 71846], "mapped", [71878]], [[71847, 71847], "mapped", [71879]], [[71848, 71848], "mapped", [71880]], [[71849, 71849], "mapped", [71881]], [[71850, 71850], "mapped", [71882]], [[71851, 71851], "mapped", [71883]], [[71852, 71852], "mapped", [71884]], [[71853, 71853], "mapped", [71885]], [[71854, 71854], "mapped", [71886]], [[71855, 71855], "mapped", [71887]], [[71856, 71856], "mapped", [71888]], [[71857, 71857], "mapped", [71889]], [[71858, 71858], "mapped", [71890]], [[71859, 71859], "mapped", [71891]], [[71860, 71860], "mapped", [71892]], [[71861, 71861], "mapped", [71893]], [[71862, 71862], "mapped", [71894]], [[71863, 71863], "mapped", [71895]], [[71864, 71864], "mapped", [71896]], [[71865, 71865], "mapped", [71897]], [[71866, 71866], "mapped", [71898]], [[71867, 71867], "mapped", [71899]], [[71868, 71868], "mapped", [71900]], [[71869, 71869], "mapped", [71901]], [[71870, 71870], "mapped", [71902]], [[71871, 71871], "mapped", [71903]], [[71872, 71913], "valid"], [[71914, 71922], "valid", [], "NV8"], [[71923, 71934], "disallowed"], [[71935, 71935], "valid"], [[71936, 72383], "disallowed"], [[72384, 72440], "valid"], [[72441, 73727], "disallowed"], [[73728, 74606], "valid"], [[74607, 74648], "valid"], [[74649, 74649], "valid"], [[74650, 74751], "disallowed"], [[74752, 74850], "valid", [], "NV8"], [[74851, 74862], "valid", [], "NV8"], [[74863, 74863], "disallowed"], [[74864, 74867], "valid", [], "NV8"], [[74868, 74868], "valid", [], "NV8"], [[74869, 74879], "disallowed"], [[74880, 75075], "valid"], [[75076, 77823], "disallowed"], [[77824, 78894], "valid"], [[78895, 82943], "disallowed"], [[82944, 83526], "valid"], [[83527, 92159], "disallowed"], [[92160, 92728], "valid"], [[92729, 92735], "disallowed"], [[92736, 92766], "valid"], [[92767, 92767], "disallowed"], [[92768, 92777], "valid"], [[92778, 92781], "disallowed"], [[92782, 92783], "valid", [], "NV8"], [[92784, 92879], "disallowed"], [[92880, 92909], "valid"], [[92910, 92911], "disallowed"], [[92912, 92916], "valid"], [[92917, 92917], "valid", [], "NV8"], [[92918, 92927], "disallowed"], [[92928, 92982], "valid"], [[92983, 92991], "valid", [], "NV8"], [[92992, 92995], "valid"], [[92996, 92997], "valid", [], "NV8"], [[92998, 93007], "disallowed"], [[93008, 93017], "valid"], [[93018, 93018], "disallowed"], [[93019, 93025], "valid", [], "NV8"], [[93026, 93026], "disallowed"], [[93027, 93047], "valid"], [[93048, 93052], "disallowed"], [[93053, 93071], "valid"], [[93072, 93951], "disallowed"], [[93952, 94020], "valid"], [[94021, 94031], "disallowed"], [[94032, 94078], "valid"], [[94079, 94094], "disallowed"], [[94095, 94111], "valid"], [[94112, 110591], "disallowed"], [[110592, 110593], "valid"], [[110594, 113663], "disallowed"], [[113664, 113770], "valid"], [[113771, 113775], "disallowed"], [[113776, 113788], "valid"], [[113789, 113791], "disallowed"], [[113792, 113800], "valid"], [[113801, 113807], "disallowed"], [[113808, 113817], "valid"], [[113818, 113819], "disallowed"], [[113820, 113820], "valid", [], "NV8"], [[113821, 113822], "valid"], [[113823, 113823], "valid", [], "NV8"], [[113824, 113827], "ignored"], [[113828, 118783], "disallowed"], [[118784, 119029], "valid", [], "NV8"], [[119030, 119039], "disallowed"], [[119040, 119078], "valid", [], "NV8"], [[119079, 119080], "disallowed"], [[119081, 119081], "valid", [], "NV8"], [[119082, 119133], "valid", [], "NV8"], [[119134, 119134], "mapped", [119127, 119141]], [[119135, 119135], "mapped", [119128, 119141]], [[119136, 119136], "mapped", [119128, 119141, 119150]], [[119137, 119137], "mapped", [119128, 119141, 119151]], [[119138, 119138], "mapped", [119128, 119141, 119152]], [[119139, 119139], "mapped", [119128, 119141, 119153]], [[119140, 119140], "mapped", [119128, 119141, 119154]], [[119141, 119154], "valid", [], "NV8"], [[119155, 119162], "disallowed"], [[119163, 119226], "valid", [], "NV8"], [[119227, 119227], "mapped", [119225, 119141]], [[119228, 119228], "mapped", [119226, 119141]], [[119229, 119229], "mapped", [119225, 119141, 119150]], [[119230, 119230], "mapped", [119226, 119141, 119150]], [[119231, 119231], "mapped", [119225, 119141, 119151]], [[119232, 119232], "mapped", [119226, 119141, 119151]], [[119233, 119261], "valid", [], "NV8"], [[119262, 119272], "valid", [], "NV8"], [[119273, 119295], "disallowed"], [[119296, 119365], "valid", [], "NV8"], [[119366, 119551], "disallowed"], [[119552, 119638], "valid", [], "NV8"], [[119639, 119647], "disallowed"], [[119648, 119665], "valid", [], "NV8"], [[119666, 119807], "disallowed"], [[119808, 119808], "mapped", [97]], [[119809, 119809], "mapped", [98]], [[119810, 119810], "mapped", [99]], [[119811, 119811], "mapped", [100]], [[119812, 119812], "mapped", [101]], [[119813, 119813], "mapped", [102]], [[119814, 119814], "mapped", [103]], [[119815, 119815], "mapped", [104]], [[119816, 119816], "mapped", [105]], [[119817, 119817], "mapped", [106]], [[119818, 119818], "mapped", [107]], [[119819, 119819], "mapped", [108]], [[119820, 119820], "mapped", [109]], [[119821, 119821], "mapped", [110]], [[119822, 119822], "mapped", [111]], [[119823, 119823], "mapped", [112]], [[119824, 119824], "mapped", [113]], [[119825, 119825], "mapped", [114]], [[119826, 119826], "mapped", [115]], [[119827, 119827], "mapped", [116]], [[119828, 119828], "mapped", [117]], [[119829, 119829], "mapped", [118]], [[119830, 119830], "mapped", [119]], [[119831, 119831], "mapped", [120]], [[119832, 119832], "mapped", [121]], [[119833, 119833], "mapped", [122]], [[119834, 119834], "mapped", [97]], [[119835, 119835], "mapped", [98]], [[119836, 119836], "mapped", [99]], [[119837, 119837], "mapped", [100]], [[119838, 119838], "mapped", [101]], [[119839, 119839], "mapped", [102]], [[119840, 119840], "mapped", [103]], [[119841, 119841], "mapped", [104]], [[119842, 119842], "mapped", [105]], [[119843, 119843], "mapped", [106]], [[119844, 119844], "mapped", [107]], [[119845, 119845], "mapped", [108]], [[119846, 119846], "mapped", [109]], [[119847, 119847], "mapped", [110]], [[119848, 119848], "mapped", [111]], [[119849, 119849], "mapped", [112]], [[119850, 119850], "mapped", [113]], [[119851, 119851], "mapped", [114]], [[119852, 119852], "mapped", [115]], [[119853, 119853], "mapped", [116]], [[119854, 119854], "mapped", [117]], [[119855, 119855], "mapped", [118]], [[119856, 119856], "mapped", [119]], [[119857, 119857], "mapped", [120]], [[119858, 119858], "mapped", [121]], [[119859, 119859], "mapped", [122]], [[119860, 119860], "mapped", [97]], [[119861, 119861], "mapped", [98]], [[119862, 119862], "mapped", [99]], [[119863, 119863], "mapped", [100]], [[119864, 119864], "mapped", [101]], [[119865, 119865], "mapped", [102]], [[119866, 119866], "mapped", [103]], [[119867, 119867], "mapped", [104]], [[119868, 119868], "mapped", [105]], [[119869, 119869], "mapped", [106]], [[119870, 119870], "mapped", [107]], [[119871, 119871], "mapped", [108]], [[119872, 119872], "mapped", [109]], [[119873, 119873], "mapped", [110]], [[119874, 119874], "mapped", [111]], [[119875, 119875], "mapped", [112]], [[119876, 119876], "mapped", [113]], [[119877, 119877], "mapped", [114]], [[119878, 119878], "mapped", [115]], [[119879, 119879], "mapped", [116]], [[119880, 119880], "mapped", [117]], [[119881, 119881], "mapped", [118]], [[119882, 119882], "mapped", [119]], [[119883, 119883], "mapped", [120]], [[119884, 119884], "mapped", [121]], [[119885, 119885], "mapped", [122]], [[119886, 119886], "mapped", [97]], [[119887, 119887], "mapped", [98]], [[119888, 119888], "mapped", [99]], [[119889, 119889], "mapped", [100]], [[119890, 119890], "mapped", [101]], [[119891, 119891], "mapped", [102]], [[119892, 119892], "mapped", [103]], [[119893, 119893], "disallowed"], [[119894, 119894], "mapped", [105]], [[119895, 119895], "mapped", [106]], [[119896, 119896], "mapped", [107]], [[119897, 119897], "mapped", [108]], [[119898, 119898], "mapped", [109]], [[119899, 119899], "mapped", [110]], [[119900, 119900], "mapped", [111]], [[119901, 119901], "mapped", [112]], [[119902, 119902], "mapped", [113]], [[119903, 119903], "mapped", [114]], [[119904, 119904], "mapped", [115]], [[119905, 119905], "mapped", [116]], [[119906, 119906], "mapped", [117]], [[119907, 119907], "mapped", [118]], [[119908, 119908], "mapped", [119]], [[119909, 119909], "mapped", [120]], [[119910, 119910], "mapped", [121]], [[119911, 119911], "mapped", [122]], [[119912, 119912], "mapped", [97]], [[119913, 119913], "mapped", [98]], [[119914, 119914], "mapped", [99]], [[119915, 119915], "mapped", [100]], [[119916, 119916], "mapped", [101]], [[119917, 119917], "mapped", [102]], [[119918, 119918], "mapped", [103]], [[119919, 119919], "mapped", [104]], [[119920, 119920], "mapped", [105]], [[119921, 119921], "mapped", [106]], [[119922, 119922], "mapped", [107]], [[119923, 119923], "mapped", [108]], [[119924, 119924], "mapped", [109]], [[119925, 119925], "mapped", [110]], [[119926, 119926], "mapped", [111]], [[119927, 119927], "mapped", [112]], [[119928, 119928], "mapped", [113]], [[119929, 119929], "mapped", [114]], [[119930, 119930], "mapped", [115]], [[119931, 119931], "mapped", [116]], [[119932, 119932], "mapped", [117]], [[119933, 119933], "mapped", [118]], [[119934, 119934], "mapped", [119]], [[119935, 119935], "mapped", [120]], [[119936, 119936], "mapped", [121]], [[119937, 119937], "mapped", [122]], [[119938, 119938], "mapped", [97]], [[119939, 119939], "mapped", [98]], [[119940, 119940], "mapped", [99]], [[119941, 119941], "mapped", [100]], [[119942, 119942], "mapped", [101]], [[119943, 119943], "mapped", [102]], [[119944, 119944], "mapped", [103]], [[119945, 119945], "mapped", [104]], [[119946, 119946], "mapped", [105]], [[119947, 119947], "mapped", [106]], [[119948, 119948], "mapped", [107]], [[119949, 119949], "mapped", [108]], [[119950, 119950], "mapped", [109]], [[119951, 119951], "mapped", [110]], [[119952, 119952], "mapped", [111]], [[119953, 119953], "mapped", [112]], [[119954, 119954], "mapped", [113]], [[119955, 119955], "mapped", [114]], [[119956, 119956], "mapped", [115]], [[119957, 119957], "mapped", [116]], [[119958, 119958], "mapped", [117]], [[119959, 119959], "mapped", [118]], [[119960, 119960], "mapped", [119]], [[119961, 119961], "mapped", [120]], [[119962, 119962], "mapped", [121]], [[119963, 119963], "mapped", [122]], [[119964, 119964], "mapped", [97]], [[119965, 119965], "disallowed"], [[119966, 119966], "mapped", [99]], [[119967, 119967], "mapped", [100]], [[119968, 119969], "disallowed"], [[119970, 119970], "mapped", [103]], [[119971, 119972], "disallowed"], [[119973, 119973], "mapped", [106]], [[119974, 119974], "mapped", [107]], [[119975, 119976], "disallowed"], [[119977, 119977], "mapped", [110]], [[119978, 119978], "mapped", [111]], [[119979, 119979], "mapped", [112]], [[119980, 119980], "mapped", [113]], [[119981, 119981], "disallowed"], [[119982, 119982], "mapped", [115]], [[119983, 119983], "mapped", [116]], [[119984, 119984], "mapped", [117]], [[119985, 119985], "mapped", [118]], [[119986, 119986], "mapped", [119]], [[119987, 119987], "mapped", [120]], [[119988, 119988], "mapped", [121]], [[119989, 119989], "mapped", [122]], [[119990, 119990], "mapped", [97]], [[119991, 119991], "mapped", [98]], [[119992, 119992], "mapped", [99]], [[119993, 119993], "mapped", [100]], [[119994, 119994], "disallowed"], [[119995, 119995], "mapped", [102]], [[119996, 119996], "disallowed"], [[119997, 119997], "mapped", [104]], [[119998, 119998], "mapped", [105]], [[119999, 119999], "mapped", [106]], [[12e4, 12e4], "mapped", [107]], [[120001, 120001], "mapped", [108]], [[120002, 120002], "mapped", [109]], [[120003, 120003], "mapped", [110]], [[120004, 120004], "disallowed"], [[120005, 120005], "mapped", [112]], [[120006, 120006], "mapped", [113]], [[120007, 120007], "mapped", [114]], [[120008, 120008], "mapped", [115]], [[120009, 120009], "mapped", [116]], [[120010, 120010], "mapped", [117]], [[120011, 120011], "mapped", [118]], [[120012, 120012], "mapped", [119]], [[120013, 120013], "mapped", [120]], [[120014, 120014], "mapped", [121]], [[120015, 120015], "mapped", [122]], [[120016, 120016], "mapped", [97]], [[120017, 120017], "mapped", [98]], [[120018, 120018], "mapped", [99]], [[120019, 120019], "mapped", [100]], [[120020, 120020], "mapped", [101]], [[120021, 120021], "mapped", [102]], [[120022, 120022], "mapped", [103]], [[120023, 120023], "mapped", [104]], [[120024, 120024], "mapped", [105]], [[120025, 120025], "mapped", [106]], [[120026, 120026], "mapped", [107]], [[120027, 120027], "mapped", [108]], [[120028, 120028], "mapped", [109]], [[120029, 120029], "mapped", [110]], [[120030, 120030], "mapped", [111]], [[120031, 120031], "mapped", [112]], [[120032, 120032], "mapped", [113]], [[120033, 120033], "mapped", [114]], [[120034, 120034], "mapped", [115]], [[120035, 120035], "mapped", [116]], [[120036, 120036], "mapped", [117]], [[120037, 120037], "mapped", [118]], [[120038, 120038], "mapped", [119]], [[120039, 120039], "mapped", [120]], [[120040, 120040], "mapped", [121]], [[120041, 120041], "mapped", [122]], [[120042, 120042], "mapped", [97]], [[120043, 120043], "mapped", [98]], [[120044, 120044], "mapped", [99]], [[120045, 120045], "mapped", [100]], [[120046, 120046], "mapped", [101]], [[120047, 120047], "mapped", [102]], [[120048, 120048], "mapped", [103]], [[120049, 120049], "mapped", [104]], [[120050, 120050], "mapped", [105]], [[120051, 120051], "mapped", [106]], [[120052, 120052], "mapped", [107]], [[120053, 120053], "mapped", [108]], [[120054, 120054], "mapped", [109]], [[120055, 120055], "mapped", [110]], [[120056, 120056], "mapped", [111]], [[120057, 120057], "mapped", [112]], [[120058, 120058], "mapped", [113]], [[120059, 120059], "mapped", [114]], [[120060, 120060], "mapped", [115]], [[120061, 120061], "mapped", [116]], [[120062, 120062], "mapped", [117]], [[120063, 120063], "mapped", [118]], [[120064, 120064], "mapped", [119]], [[120065, 120065], "mapped", [120]], [[120066, 120066], "mapped", [121]], [[120067, 120067], "mapped", [122]], [[120068, 120068], "mapped", [97]], [[120069, 120069], "mapped", [98]], [[120070, 120070], "disallowed"], [[120071, 120071], "mapped", [100]], [[120072, 120072], "mapped", [101]], [[120073, 120073], "mapped", [102]], [[120074, 120074], "mapped", [103]], [[120075, 120076], "disallowed"], [[120077, 120077], "mapped", [106]], [[120078, 120078], "mapped", [107]], [[120079, 120079], "mapped", [108]], [[120080, 120080], "mapped", [109]], [[120081, 120081], "mapped", [110]], [[120082, 120082], "mapped", [111]], [[120083, 120083], "mapped", [112]], [[120084, 120084], "mapped", [113]], [[120085, 120085], "disallowed"], [[120086, 120086], "mapped", [115]], [[120087, 120087], "mapped", [116]], [[120088, 120088], "mapped", [117]], [[120089, 120089], "mapped", [118]], [[120090, 120090], "mapped", [119]], [[120091, 120091], "mapped", [120]], [[120092, 120092], "mapped", [121]], [[120093, 120093], "disallowed"], [[120094, 120094], "mapped", [97]], [[120095, 120095], "mapped", [98]], [[120096, 120096], "mapped", [99]], [[120097, 120097], "mapped", [100]], [[120098, 120098], "mapped", [101]], [[120099, 120099], "mapped", [102]], [[120100, 120100], "mapped", [103]], [[120101, 120101], "mapped", [104]], [[120102, 120102], "mapped", [105]], [[120103, 120103], "mapped", [106]], [[120104, 120104], "mapped", [107]], [[120105, 120105], "mapped", [108]], [[120106, 120106], "mapped", [109]], [[120107, 120107], "mapped", [110]], [[120108, 120108], "mapped", [111]], [[120109, 120109], "mapped", [112]], [[120110, 120110], "mapped", [113]], [[120111, 120111], "mapped", [114]], [[120112, 120112], "mapped", [115]], [[120113, 120113], "mapped", [116]], [[120114, 120114], "mapped", [117]], [[120115, 120115], "mapped", [118]], [[120116, 120116], "mapped", [119]], [[120117, 120117], "mapped", [120]], [[120118, 120118], "mapped", [121]], [[120119, 120119], "mapped", [122]], [[120120, 120120], "mapped", [97]], [[120121, 120121], "mapped", [98]], [[120122, 120122], "disallowed"], [[120123, 120123], "mapped", [100]], [[120124, 120124], "mapped", [101]], [[120125, 120125], "mapped", [102]], [[120126, 120126], "mapped", [103]], [[120127, 120127], "disallowed"], [[120128, 120128], "mapped", [105]], [[120129, 120129], "mapped", [106]], [[120130, 120130], "mapped", [107]], [[120131, 120131], "mapped", [108]], [[120132, 120132], "mapped", [109]], [[120133, 120133], "disallowed"], [[120134, 120134], "mapped", [111]], [[120135, 120137], "disallowed"], [[120138, 120138], "mapped", [115]], [[120139, 120139], "mapped", [116]], [[120140, 120140], "mapped", [117]], [[120141, 120141], "mapped", [118]], [[120142, 120142], "mapped", [119]], [[120143, 120143], "mapped", [120]], [[120144, 120144], "mapped", [121]], [[120145, 120145], "disallowed"], [[120146, 120146], "mapped", [97]], [[120147, 120147], "mapped", [98]], [[120148, 120148], "mapped", [99]], [[120149, 120149], "mapped", [100]], [[120150, 120150], "mapped", [101]], [[120151, 120151], "mapped", [102]], [[120152, 120152], "mapped", [103]], [[120153, 120153], "mapped", [104]], [[120154, 120154], "mapped", [105]], [[120155, 120155], "mapped", [106]], [[120156, 120156], "mapped", [107]], [[120157, 120157], "mapped", [108]], [[120158, 120158], "mapped", [109]], [[120159, 120159], "mapped", [110]], [[120160, 120160], "mapped", [111]], [[120161, 120161], "mapped", [112]], [[120162, 120162], "mapped", [113]], [[120163, 120163], "mapped", [114]], [[120164, 120164], "mapped", [115]], [[120165, 120165], "mapped", [116]], [[120166, 120166], "mapped", [117]], [[120167, 120167], "mapped", [118]], [[120168, 120168], "mapped", [119]], [[120169, 120169], "mapped", [120]], [[120170, 120170], "mapped", [121]], [[120171, 120171], "mapped", [122]], [[120172, 120172], "mapped", [97]], [[120173, 120173], "mapped", [98]], [[120174, 120174], "mapped", [99]], [[120175, 120175], "mapped", [100]], [[120176, 120176], "mapped", [101]], [[120177, 120177], "mapped", [102]], [[120178, 120178], "mapped", [103]], [[120179, 120179], "mapped", [104]], [[120180, 120180], "mapped", [105]], [[120181, 120181], "mapped", [106]], [[120182, 120182], "mapped", [107]], [[120183, 120183], "mapped", [108]], [[120184, 120184], "mapped", [109]], [[120185, 120185], "mapped", [110]], [[120186, 120186], "mapped", [111]], [[120187, 120187], "mapped", [112]], [[120188, 120188], "mapped", [113]], [[120189, 120189], "mapped", [114]], [[120190, 120190], "mapped", [115]], [[120191, 120191], "mapped", [116]], [[120192, 120192], "mapped", [117]], [[120193, 120193], "mapped", [118]], [[120194, 120194], "mapped", [119]], [[120195, 120195], "mapped", [120]], [[120196, 120196], "mapped", [121]], [[120197, 120197], "mapped", [122]], [[120198, 120198], "mapped", [97]], [[120199, 120199], "mapped", [98]], [[120200, 120200], "mapped", [99]], [[120201, 120201], "mapped", [100]], [[120202, 120202], "mapped", [101]], [[120203, 120203], "mapped", [102]], [[120204, 120204], "mapped", [103]], [[120205, 120205], "mapped", [104]], [[120206, 120206], "mapped", [105]], [[120207, 120207], "mapped", [106]], [[120208, 120208], "mapped", [107]], [[120209, 120209], "mapped", [108]], [[120210, 120210], "mapped", [109]], [[120211, 120211], "mapped", [110]], [[120212, 120212], "mapped", [111]], [[120213, 120213], "mapped", [112]], [[120214, 120214], "mapped", [113]], [[120215, 120215], "mapped", [114]], [[120216, 120216], "mapped", [115]], [[120217, 120217], "mapped", [116]], [[120218, 120218], "mapped", [117]], [[120219, 120219], "mapped", [118]], [[120220, 120220], "mapped", [119]], [[120221, 120221], "mapped", [120]], [[120222, 120222], "mapped", [121]], [[120223, 120223], "mapped", [122]], [[120224, 120224], "mapped", [97]], [[120225, 120225], "mapped", [98]], [[120226, 120226], "mapped", [99]], [[120227, 120227], "mapped", [100]], [[120228, 120228], "mapped", [101]], [[120229, 120229], "mapped", [102]], [[120230, 120230], "mapped", [103]], [[120231, 120231], "mapped", [104]], [[120232, 120232], "mapped", [105]], [[120233, 120233], "mapped", [106]], [[120234, 120234], "mapped", [107]], [[120235, 120235], "mapped", [108]], [[120236, 120236], "mapped", [109]], [[120237, 120237], "mapped", [110]], [[120238, 120238], "mapped", [111]], [[120239, 120239], "mapped", [112]], [[120240, 120240], "mapped", [113]], [[120241, 120241], "mapped", [114]], [[120242, 120242], "mapped", [115]], [[120243, 120243], "mapped", [116]], [[120244, 120244], "mapped", [117]], [[120245, 120245], "mapped", [118]], [[120246, 120246], "mapped", [119]], [[120247, 120247], "mapped", [120]], [[120248, 120248], "mapped", [121]], [[120249, 120249], "mapped", [122]], [[120250, 120250], "mapped", [97]], [[120251, 120251], "mapped", [98]], [[120252, 120252], "mapped", [99]], [[120253, 120253], "mapped", [100]], [[120254, 120254], "mapped", [101]], [[120255, 120255], "mapped", [102]], [[120256, 120256], "mapped", [103]], [[120257, 120257], "mapped", [104]], [[120258, 120258], "mapped", [105]], [[120259, 120259], "mapped", [106]], [[120260, 120260], "mapped", [107]], [[120261, 120261], "mapped", [108]], [[120262, 120262], "mapped", [109]], [[120263, 120263], "mapped", [110]], [[120264, 120264], "mapped", [111]], [[120265, 120265], "mapped", [112]], [[120266, 120266], "mapped", [113]], [[120267, 120267], "mapped", [114]], [[120268, 120268], "mapped", [115]], [[120269, 120269], "mapped", [116]], [[120270, 120270], "mapped", [117]], [[120271, 120271], "mapped", [118]], [[120272, 120272], "mapped", [119]], [[120273, 120273], "mapped", [120]], [[120274, 120274], "mapped", [121]], [[120275, 120275], "mapped", [122]], [[120276, 120276], "mapped", [97]], [[120277, 120277], "mapped", [98]], [[120278, 120278], "mapped", [99]], [[120279, 120279], "mapped", [100]], [[120280, 120280], "mapped", [101]], [[120281, 120281], "mapped", [102]], [[120282, 120282], "mapped", [103]], [[120283, 120283], "mapped", [104]], [[120284, 120284], "mapped", [105]], [[120285, 120285], "mapped", [106]], [[120286, 120286], "mapped", [107]], [[120287, 120287], "mapped", [108]], [[120288, 120288], "mapped", [109]], [[120289, 120289], "mapped", [110]], [[120290, 120290], "mapped", [111]], [[120291, 120291], "mapped", [112]], [[120292, 120292], "mapped", [113]], [[120293, 120293], "mapped", [114]], [[120294, 120294], "mapped", [115]], [[120295, 120295], "mapped", [116]], [[120296, 120296], "mapped", [117]], [[120297, 120297], "mapped", [118]], [[120298, 120298], "mapped", [119]], [[120299, 120299], "mapped", [120]], [[120300, 120300], "mapped", [121]], [[120301, 120301], "mapped", [122]], [[120302, 120302], "mapped", [97]], [[120303, 120303], "mapped", [98]], [[120304, 120304], "mapped", [99]], [[120305, 120305], "mapped", [100]], [[120306, 120306], "mapped", [101]], [[120307, 120307], "mapped", [102]], [[120308, 120308], "mapped", [103]], [[120309, 120309], "mapped", [104]], [[120310, 120310], "mapped", [105]], [[120311, 120311], "mapped", [106]], [[120312, 120312], "mapped", [107]], [[120313, 120313], "mapped", [108]], [[120314, 120314], "mapped", [109]], [[120315, 120315], "mapped", [110]], [[120316, 120316], "mapped", [111]], [[120317, 120317], "mapped", [112]], [[120318, 120318], "mapped", [113]], [[120319, 120319], "mapped", [114]], [[120320, 120320], "mapped", [115]], [[120321, 120321], "mapped", [116]], [[120322, 120322], "mapped", [117]], [[120323, 120323], "mapped", [118]], [[120324, 120324], "mapped", [119]], [[120325, 120325], "mapped", [120]], [[120326, 120326], "mapped", [121]], [[120327, 120327], "mapped", [122]], [[120328, 120328], "mapped", [97]], [[120329, 120329], "mapped", [98]], [[120330, 120330], "mapped", [99]], [[120331, 120331], "mapped", [100]], [[120332, 120332], "mapped", [101]], [[120333, 120333], "mapped", [102]], [[120334, 120334], "mapped", [103]], [[120335, 120335], "mapped", [104]], [[120336, 120336], "mapped", [105]], [[120337, 120337], "mapped", [106]], [[120338, 120338], "mapped", [107]], [[120339, 120339], "mapped", [108]], [[120340, 120340], "mapped", [109]], [[120341, 120341], "mapped", [110]], [[120342, 120342], "mapped", [111]], [[120343, 120343], "mapped", [112]], [[120344, 120344], "mapped", [113]], [[120345, 120345], "mapped", [114]], [[120346, 120346], "mapped", [115]], [[120347, 120347], "mapped", [116]], [[120348, 120348], "mapped", [117]], [[120349, 120349], "mapped", [118]], [[120350, 120350], "mapped", [119]], [[120351, 120351], "mapped", [120]], [[120352, 120352], "mapped", [121]], [[120353, 120353], "mapped", [122]], [[120354, 120354], "mapped", [97]], [[120355, 120355], "mapped", [98]], [[120356, 120356], "mapped", [99]], [[120357, 120357], "mapped", [100]], [[120358, 120358], "mapped", [101]], [[120359, 120359], "mapped", [102]], [[120360, 120360], "mapped", [103]], [[120361, 120361], "mapped", [104]], [[120362, 120362], "mapped", [105]], [[120363, 120363], "mapped", [106]], [[120364, 120364], "mapped", [107]], [[120365, 120365], "mapped", [108]], [[120366, 120366], "mapped", [109]], [[120367, 120367], "mapped", [110]], [[120368, 120368], "mapped", [111]], [[120369, 120369], "mapped", [112]], [[120370, 120370], "mapped", [113]], [[120371, 120371], "mapped", [114]], [[120372, 120372], "mapped", [115]], [[120373, 120373], "mapped", [116]], [[120374, 120374], "mapped", [117]], [[120375, 120375], "mapped", [118]], [[120376, 120376], "mapped", [119]], [[120377, 120377], "mapped", [120]], [[120378, 120378], "mapped", [121]], [[120379, 120379], "mapped", [122]], [[120380, 120380], "mapped", [97]], [[120381, 120381], "mapped", [98]], [[120382, 120382], "mapped", [99]], [[120383, 120383], "mapped", [100]], [[120384, 120384], "mapped", [101]], [[120385, 120385], "mapped", [102]], [[120386, 120386], "mapped", [103]], [[120387, 120387], "mapped", [104]], [[120388, 120388], "mapped", [105]], [[120389, 120389], "mapped", [106]], [[120390, 120390], "mapped", [107]], [[120391, 120391], "mapped", [108]], [[120392, 120392], "mapped", [109]], [[120393, 120393], "mapped", [110]], [[120394, 120394], "mapped", [111]], [[120395, 120395], "mapped", [112]], [[120396, 120396], "mapped", [113]], [[120397, 120397], "mapped", [114]], [[120398, 120398], "mapped", [115]], [[120399, 120399], "mapped", [116]], [[120400, 120400], "mapped", [117]], [[120401, 120401], "mapped", [118]], [[120402, 120402], "mapped", [119]], [[120403, 120403], "mapped", [120]], [[120404, 120404], "mapped", [121]], [[120405, 120405], "mapped", [122]], [[120406, 120406], "mapped", [97]], [[120407, 120407], "mapped", [98]], [[120408, 120408], "mapped", [99]], [[120409, 120409], "mapped", [100]], [[120410, 120410], "mapped", [101]], [[120411, 120411], "mapped", [102]], [[120412, 120412], "mapped", [103]], [[120413, 120413], "mapped", [104]], [[120414, 120414], "mapped", [105]], [[120415, 120415], "mapped", [106]], [[120416, 120416], "mapped", [107]], [[120417, 120417], "mapped", [108]], [[120418, 120418], "mapped", [109]], [[120419, 120419], "mapped", [110]], [[120420, 120420], "mapped", [111]], [[120421, 120421], "mapped", [112]], [[120422, 120422], "mapped", [113]], [[120423, 120423], "mapped", [114]], [[120424, 120424], "mapped", [115]], [[120425, 120425], "mapped", [116]], [[120426, 120426], "mapped", [117]], [[120427, 120427], "mapped", [118]], [[120428, 120428], "mapped", [119]], [[120429, 120429], "mapped", [120]], [[120430, 120430], "mapped", [121]], [[120431, 120431], "mapped", [122]], [[120432, 120432], "mapped", [97]], [[120433, 120433], "mapped", [98]], [[120434, 120434], "mapped", [99]], [[120435, 120435], "mapped", [100]], [[120436, 120436], "mapped", [101]], [[120437, 120437], "mapped", [102]], [[120438, 120438], "mapped", [103]], [[120439, 120439], "mapped", [104]], [[120440, 120440], "mapped", [105]], [[120441, 120441], "mapped", [106]], [[120442, 120442], "mapped", [107]], [[120443, 120443], "mapped", [108]], [[120444, 120444], "mapped", [109]], [[120445, 120445], "mapped", [110]], [[120446, 120446], "mapped", [111]], [[120447, 120447], "mapped", [112]], [[120448, 120448], "mapped", [113]], [[120449, 120449], "mapped", [114]], [[120450, 120450], "mapped", [115]], [[120451, 120451], "mapped", [116]], [[120452, 120452], "mapped", [117]], [[120453, 120453], "mapped", [118]], [[120454, 120454], "mapped", [119]], [[120455, 120455], "mapped", [120]], [[120456, 120456], "mapped", [121]], [[120457, 120457], "mapped", [122]], [[120458, 120458], "mapped", [97]], [[120459, 120459], "mapped", [98]], [[120460, 120460], "mapped", [99]], [[120461, 120461], "mapped", [100]], [[120462, 120462], "mapped", [101]], [[120463, 120463], "mapped", [102]], [[120464, 120464], "mapped", [103]], [[120465, 120465], "mapped", [104]], [[120466, 120466], "mapped", [105]], [[120467, 120467], "mapped", [106]], [[120468, 120468], "mapped", [107]], [[120469, 120469], "mapped", [108]], [[120470, 120470], "mapped", [109]], [[120471, 120471], "mapped", [110]], [[120472, 120472], "mapped", [111]], [[120473, 120473], "mapped", [112]], [[120474, 120474], "mapped", [113]], [[120475, 120475], "mapped", [114]], [[120476, 120476], "mapped", [115]], [[120477, 120477], "mapped", [116]], [[120478, 120478], "mapped", [117]], [[120479, 120479], "mapped", [118]], [[120480, 120480], "mapped", [119]], [[120481, 120481], "mapped", [120]], [[120482, 120482], "mapped", [121]], [[120483, 120483], "mapped", [122]], [[120484, 120484], "mapped", [305]], [[120485, 120485], "mapped", [567]], [[120486, 120487], "disallowed"], [[120488, 120488], "mapped", [945]], [[120489, 120489], "mapped", [946]], [[120490, 120490], "mapped", [947]], [[120491, 120491], "mapped", [948]], [[120492, 120492], "mapped", [949]], [[120493, 120493], "mapped", [950]], [[120494, 120494], "mapped", [951]], [[120495, 120495], "mapped", [952]], [[120496, 120496], "mapped", [953]], [[120497, 120497], "mapped", [954]], [[120498, 120498], "mapped", [955]], [[120499, 120499], "mapped", [956]], [[120500, 120500], "mapped", [957]], [[120501, 120501], "mapped", [958]], [[120502, 120502], "mapped", [959]], [[120503, 120503], "mapped", [960]], [[120504, 120504], "mapped", [961]], [[120505, 120505], "mapped", [952]], [[120506, 120506], "mapped", [963]], [[120507, 120507], "mapped", [964]], [[120508, 120508], "mapped", [965]], [[120509, 120509], "mapped", [966]], [[120510, 120510], "mapped", [967]], [[120511, 120511], "mapped", [968]], [[120512, 120512], "mapped", [969]], [[120513, 120513], "mapped", [8711]], [[120514, 120514], "mapped", [945]], [[120515, 120515], "mapped", [946]], [[120516, 120516], "mapped", [947]], [[120517, 120517], "mapped", [948]], [[120518, 120518], "mapped", [949]], [[120519, 120519], "mapped", [950]], [[120520, 120520], "mapped", [951]], [[120521, 120521], "mapped", [952]], [[120522, 120522], "mapped", [953]], [[120523, 120523], "mapped", [954]], [[120524, 120524], "mapped", [955]], [[120525, 120525], "mapped", [956]], [[120526, 120526], "mapped", [957]], [[120527, 120527], "mapped", [958]], [[120528, 120528], "mapped", [959]], [[120529, 120529], "mapped", [960]], [[120530, 120530], "mapped", [961]], [[120531, 120532], "mapped", [963]], [[120533, 120533], "mapped", [964]], [[120534, 120534], "mapped", [965]], [[120535, 120535], "mapped", [966]], [[120536, 120536], "mapped", [967]], [[120537, 120537], "mapped", [968]], [[120538, 120538], "mapped", [969]], [[120539, 120539], "mapped", [8706]], [[120540, 120540], "mapped", [949]], [[120541, 120541], "mapped", [952]], [[120542, 120542], "mapped", [954]], [[120543, 120543], "mapped", [966]], [[120544, 120544], "mapped", [961]], [[120545, 120545], "mapped", [960]], [[120546, 120546], "mapped", [945]], [[120547, 120547], "mapped", [946]], [[120548, 120548], "mapped", [947]], [[120549, 120549], "mapped", [948]], [[120550, 120550], "mapped", [949]], [[120551, 120551], "mapped", [950]], [[120552, 120552], "mapped", [951]], [[120553, 120553], "mapped", [952]], [[120554, 120554], "mapped", [953]], [[120555, 120555], "mapped", [954]], [[120556, 120556], "mapped", [955]], [[120557, 120557], "mapped", [956]], [[120558, 120558], "mapped", [957]], [[120559, 120559], "mapped", [958]], [[120560, 120560], "mapped", [959]], [[120561, 120561], "mapped", [960]], [[120562, 120562], "mapped", [961]], [[120563, 120563], "mapped", [952]], [[120564, 120564], "mapped", [963]], [[120565, 120565], "mapped", [964]], [[120566, 120566], "mapped", [965]], [[120567, 120567], "mapped", [966]], [[120568, 120568], "mapped", [967]], [[120569, 120569], "mapped", [968]], [[120570, 120570], "mapped", [969]], [[120571, 120571], "mapped", [8711]], [[120572, 120572], "mapped", [945]], [[120573, 120573], "mapped", [946]], [[120574, 120574], "mapped", [947]], [[120575, 120575], "mapped", [948]], [[120576, 120576], "mapped", [949]], [[120577, 120577], "mapped", [950]], [[120578, 120578], "mapped", [951]], [[120579, 120579], "mapped", [952]], [[120580, 120580], "mapped", [953]], [[120581, 120581], "mapped", [954]], [[120582, 120582], "mapped", [955]], [[120583, 120583], "mapped", [956]], [[120584, 120584], "mapped", [957]], [[120585, 120585], "mapped", [958]], [[120586, 120586], "mapped", [959]], [[120587, 120587], "mapped", [960]], [[120588, 120588], "mapped", [961]], [[120589, 120590], "mapped", [963]], [[120591, 120591], "mapped", [964]], [[120592, 120592], "mapped", [965]], [[120593, 120593], "mapped", [966]], [[120594, 120594], "mapped", [967]], [[120595, 120595], "mapped", [968]], [[120596, 120596], "mapped", [969]], [[120597, 120597], "mapped", [8706]], [[120598, 120598], "mapped", [949]], [[120599, 120599], "mapped", [952]], [[120600, 120600], "mapped", [954]], [[120601, 120601], "mapped", [966]], [[120602, 120602], "mapped", [961]], [[120603, 120603], "mapped", [960]], [[120604, 120604], "mapped", [945]], [[120605, 120605], "mapped", [946]], [[120606, 120606], "mapped", [947]], [[120607, 120607], "mapped", [948]], [[120608, 120608], "mapped", [949]], [[120609, 120609], "mapped", [950]], [[120610, 120610], "mapped", [951]], [[120611, 120611], "mapped", [952]], [[120612, 120612], "mapped", [953]], [[120613, 120613], "mapped", [954]], [[120614, 120614], "mapped", [955]], [[120615, 120615], "mapped", [956]], [[120616, 120616], "mapped", [957]], [[120617, 120617], "mapped", [958]], [[120618, 120618], "mapped", [959]], [[120619, 120619], "mapped", [960]], [[120620, 120620], "mapped", [961]], [[120621, 120621], "mapped", [952]], [[120622, 120622], "mapped", [963]], [[120623, 120623], "mapped", [964]], [[120624, 120624], "mapped", [965]], [[120625, 120625], "mapped", [966]], [[120626, 120626], "mapped", [967]], [[120627, 120627], "mapped", [968]], [[120628, 120628], "mapped", [969]], [[120629, 120629], "mapped", [8711]], [[120630, 120630], "mapped", [945]], [[120631, 120631], "mapped", [946]], [[120632, 120632], "mapped", [947]], [[120633, 120633], "mapped", [948]], [[120634, 120634], "mapped", [949]], [[120635, 120635], "mapped", [950]], [[120636, 120636], "mapped", [951]], [[120637, 120637], "mapped", [952]], [[120638, 120638], "mapped", [953]], [[120639, 120639], "mapped", [954]], [[120640, 120640], "mapped", [955]], [[120641, 120641], "mapped", [956]], [[120642, 120642], "mapped", [957]], [[120643, 120643], "mapped", [958]], [[120644, 120644], "mapped", [959]], [[120645, 120645], "mapped", [960]], [[120646, 120646], "mapped", [961]], [[120647, 120648], "mapped", [963]], [[120649, 120649], "mapped", [964]], [[120650, 120650], "mapped", [965]], [[120651, 120651], "mapped", [966]], [[120652, 120652], "mapped", [967]], [[120653, 120653], "mapped", [968]], [[120654, 120654], "mapped", [969]], [[120655, 120655], "mapped", [8706]], [[120656, 120656], "mapped", [949]], [[120657, 120657], "mapped", [952]], [[120658, 120658], "mapped", [954]], [[120659, 120659], "mapped", [966]], [[120660, 120660], "mapped", [961]], [[120661, 120661], "mapped", [960]], [[120662, 120662], "mapped", [945]], [[120663, 120663], "mapped", [946]], [[120664, 120664], "mapped", [947]], [[120665, 120665], "mapped", [948]], [[120666, 120666], "mapped", [949]], [[120667, 120667], "mapped", [950]], [[120668, 120668], "mapped", [951]], [[120669, 120669], "mapped", [952]], [[120670, 120670], "mapped", [953]], [[120671, 120671], "mapped", [954]], [[120672, 120672], "mapped", [955]], [[120673, 120673], "mapped", [956]], [[120674, 120674], "mapped", [957]], [[120675, 120675], "mapped", [958]], [[120676, 120676], "mapped", [959]], [[120677, 120677], "mapped", [960]], [[120678, 120678], "mapped", [961]], [[120679, 120679], "mapped", [952]], [[120680, 120680], "mapped", [963]], [[120681, 120681], "mapped", [964]], [[120682, 120682], "mapped", [965]], [[120683, 120683], "mapped", [966]], [[120684, 120684], "mapped", [967]], [[120685, 120685], "mapped", [968]], [[120686, 120686], "mapped", [969]], [[120687, 120687], "mapped", [8711]], [[120688, 120688], "mapped", [945]], [[120689, 120689], "mapped", [946]], [[120690, 120690], "mapped", [947]], [[120691, 120691], "mapped", [948]], [[120692, 120692], "mapped", [949]], [[120693, 120693], "mapped", [950]], [[120694, 120694], "mapped", [951]], [[120695, 120695], "mapped", [952]], [[120696, 120696], "mapped", [953]], [[120697, 120697], "mapped", [954]], [[120698, 120698], "mapped", [955]], [[120699, 120699], "mapped", [956]], [[120700, 120700], "mapped", [957]], [[120701, 120701], "mapped", [958]], [[120702, 120702], "mapped", [959]], [[120703, 120703], "mapped", [960]], [[120704, 120704], "mapped", [961]], [[120705, 120706], "mapped", [963]], [[120707, 120707], "mapped", [964]], [[120708, 120708], "mapped", [965]], [[120709, 120709], "mapped", [966]], [[120710, 120710], "mapped", [967]], [[120711, 120711], "mapped", [968]], [[120712, 120712], "mapped", [969]], [[120713, 120713], "mapped", [8706]], [[120714, 120714], "mapped", [949]], [[120715, 120715], "mapped", [952]], [[120716, 120716], "mapped", [954]], [[120717, 120717], "mapped", [966]], [[120718, 120718], "mapped", [961]], [[120719, 120719], "mapped", [960]], [[120720, 120720], "mapped", [945]], [[120721, 120721], "mapped", [946]], [[120722, 120722], "mapped", [947]], [[120723, 120723], "mapped", [948]], [[120724, 120724], "mapped", [949]], [[120725, 120725], "mapped", [950]], [[120726, 120726], "mapped", [951]], [[120727, 120727], "mapped", [952]], [[120728, 120728], "mapped", [953]], [[120729, 120729], "mapped", [954]], [[120730, 120730], "mapped", [955]], [[120731, 120731], "mapped", [956]], [[120732, 120732], "mapped", [957]], [[120733, 120733], "mapped", [958]], [[120734, 120734], "mapped", [959]], [[120735, 120735], "mapped", [960]], [[120736, 120736], "mapped", [961]], [[120737, 120737], "mapped", [952]], [[120738, 120738], "mapped", [963]], [[120739, 120739], "mapped", [964]], [[120740, 120740], "mapped", [965]], [[120741, 120741], "mapped", [966]], [[120742, 120742], "mapped", [967]], [[120743, 120743], "mapped", [968]], [[120744, 120744], "mapped", [969]], [[120745, 120745], "mapped", [8711]], [[120746, 120746], "mapped", [945]], [[120747, 120747], "mapped", [946]], [[120748, 120748], "mapped", [947]], [[120749, 120749], "mapped", [948]], [[120750, 120750], "mapped", [949]], [[120751, 120751], "mapped", [950]], [[120752, 120752], "mapped", [951]], [[120753, 120753], "mapped", [952]], [[120754, 120754], "mapped", [953]], [[120755, 120755], "mapped", [954]], [[120756, 120756], "mapped", [955]], [[120757, 120757], "mapped", [956]], [[120758, 120758], "mapped", [957]], [[120759, 120759], "mapped", [958]], [[120760, 120760], "mapped", [959]], [[120761, 120761], "mapped", [960]], [[120762, 120762], "mapped", [961]], [[120763, 120764], "mapped", [963]], [[120765, 120765], "mapped", [964]], [[120766, 120766], "mapped", [965]], [[120767, 120767], "mapped", [966]], [[120768, 120768], "mapped", [967]], [[120769, 120769], "mapped", [968]], [[120770, 120770], "mapped", [969]], [[120771, 120771], "mapped", [8706]], [[120772, 120772], "mapped", [949]], [[120773, 120773], "mapped", [952]], [[120774, 120774], "mapped", [954]], [[120775, 120775], "mapped", [966]], [[120776, 120776], "mapped", [961]], [[120777, 120777], "mapped", [960]], [[120778, 120779], "mapped", [989]], [[120780, 120781], "disallowed"], [[120782, 120782], "mapped", [48]], [[120783, 120783], "mapped", [49]], [[120784, 120784], "mapped", [50]], [[120785, 120785], "mapped", [51]], [[120786, 120786], "mapped", [52]], [[120787, 120787], "mapped", [53]], [[120788, 120788], "mapped", [54]], [[120789, 120789], "mapped", [55]], [[120790, 120790], "mapped", [56]], [[120791, 120791], "mapped", [57]], [[120792, 120792], "mapped", [48]], [[120793, 120793], "mapped", [49]], [[120794, 120794], "mapped", [50]], [[120795, 120795], "mapped", [51]], [[120796, 120796], "mapped", [52]], [[120797, 120797], "mapped", [53]], [[120798, 120798], "mapped", [54]], [[120799, 120799], "mapped", [55]], [[120800, 120800], "mapped", [56]], [[120801, 120801], "mapped", [57]], [[120802, 120802], "mapped", [48]], [[120803, 120803], "mapped", [49]], [[120804, 120804], "mapped", [50]], [[120805, 120805], "mapped", [51]], [[120806, 120806], "mapped", [52]], [[120807, 120807], "mapped", [53]], [[120808, 120808], "mapped", [54]], [[120809, 120809], "mapped", [55]], [[120810, 120810], "mapped", [56]], [[120811, 120811], "mapped", [57]], [[120812, 120812], "mapped", [48]], [[120813, 120813], "mapped", [49]], [[120814, 120814], "mapped", [50]], [[120815, 120815], "mapped", [51]], [[120816, 120816], "mapped", [52]], [[120817, 120817], "mapped", [53]], [[120818, 120818], "mapped", [54]], [[120819, 120819], "mapped", [55]], [[120820, 120820], "mapped", [56]], [[120821, 120821], "mapped", [57]], [[120822, 120822], "mapped", [48]], [[120823, 120823], "mapped", [49]], [[120824, 120824], "mapped", [50]], [[120825, 120825], "mapped", [51]], [[120826, 120826], "mapped", [52]], [[120827, 120827], "mapped", [53]], [[120828, 120828], "mapped", [54]], [[120829, 120829], "mapped", [55]], [[120830, 120830], "mapped", [56]], [[120831, 120831], "mapped", [57]], [[120832, 121343], "valid", [], "NV8"], [[121344, 121398], "valid"], [[121399, 121402], "valid", [], "NV8"], [[121403, 121452], "valid"], [[121453, 121460], "valid", [], "NV8"], [[121461, 121461], "valid"], [[121462, 121475], "valid", [], "NV8"], [[121476, 121476], "valid"], [[121477, 121483], "valid", [], "NV8"], [[121484, 121498], "disallowed"], [[121499, 121503], "valid"], [[121504, 121504], "disallowed"], [[121505, 121519], "valid"], [[121520, 124927], "disallowed"], [[124928, 125124], "valid"], [[125125, 125126], "disallowed"], [[125127, 125135], "valid", [], "NV8"], [[125136, 125142], "valid"], [[125143, 126463], "disallowed"], [[126464, 126464], "mapped", [1575]], [[126465, 126465], "mapped", [1576]], [[126466, 126466], "mapped", [1580]], [[126467, 126467], "mapped", [1583]], [[126468, 126468], "disallowed"], [[126469, 126469], "mapped", [1608]], [[126470, 126470], "mapped", [1586]], [[126471, 126471], "mapped", [1581]], [[126472, 126472], "mapped", [1591]], [[126473, 126473], "mapped", [1610]], [[126474, 126474], "mapped", [1603]], [[126475, 126475], "mapped", [1604]], [[126476, 126476], "mapped", [1605]], [[126477, 126477], "mapped", [1606]], [[126478, 126478], "mapped", [1587]], [[126479, 126479], "mapped", [1593]], [[126480, 126480], "mapped", [1601]], [[126481, 126481], "mapped", [1589]], [[126482, 126482], "mapped", [1602]], [[126483, 126483], "mapped", [1585]], [[126484, 126484], "mapped", [1588]], [[126485, 126485], "mapped", [1578]], [[126486, 126486], "mapped", [1579]], [[126487, 126487], "mapped", [1582]], [[126488, 126488], "mapped", [1584]], [[126489, 126489], "mapped", [1590]], [[126490, 126490], "mapped", [1592]], [[126491, 126491], "mapped", [1594]], [[126492, 126492], "mapped", [1646]], [[126493, 126493], "mapped", [1722]], [[126494, 126494], "mapped", [1697]], [[126495, 126495], "mapped", [1647]], [[126496, 126496], "disallowed"], [[126497, 126497], "mapped", [1576]], [[126498, 126498], "mapped", [1580]], [[126499, 126499], "disallowed"], [[126500, 126500], "mapped", [1607]], [[126501, 126502], "disallowed"], [[126503, 126503], "mapped", [1581]], [[126504, 126504], "disallowed"], [[126505, 126505], "mapped", [1610]], [[126506, 126506], "mapped", [1603]], [[126507, 126507], "mapped", [1604]], [[126508, 126508], "mapped", [1605]], [[126509, 126509], "mapped", [1606]], [[126510, 126510], "mapped", [1587]], [[126511, 126511], "mapped", [1593]], [[126512, 126512], "mapped", [1601]], [[126513, 126513], "mapped", [1589]], [[126514, 126514], "mapped", [1602]], [[126515, 126515], "disallowed"], [[126516, 126516], "mapped", [1588]], [[126517, 126517], "mapped", [1578]], [[126518, 126518], "mapped", [1579]], [[126519, 126519], "mapped", [1582]], [[126520, 126520], "disallowed"], [[126521, 126521], "mapped", [1590]], [[126522, 126522], "disallowed"], [[126523, 126523], "mapped", [1594]], [[126524, 126529], "disallowed"], [[126530, 126530], "mapped", [1580]], [[126531, 126534], "disallowed"], [[126535, 126535], "mapped", [1581]], [[126536, 126536], "disallowed"], [[126537, 126537], "mapped", [1610]], [[126538, 126538], "disallowed"], [[126539, 126539], "mapped", [1604]], [[126540, 126540], "disallowed"], [[126541, 126541], "mapped", [1606]], [[126542, 126542], "mapped", [1587]], [[126543, 126543], "mapped", [1593]], [[126544, 126544], "disallowed"], [[126545, 126545], "mapped", [1589]], [[126546, 126546], "mapped", [1602]], [[126547, 126547], "disallowed"], [[126548, 126548], "mapped", [1588]], [[126549, 126550], "disallowed"], [[126551, 126551], "mapped", [1582]], [[126552, 126552], "disallowed"], [[126553, 126553], "mapped", [1590]], [[126554, 126554], "disallowed"], [[126555, 126555], "mapped", [1594]], [[126556, 126556], "disallowed"], [[126557, 126557], "mapped", [1722]], [[126558, 126558], "disallowed"], [[126559, 126559], "mapped", [1647]], [[126560, 126560], "disallowed"], [[126561, 126561], "mapped", [1576]], [[126562, 126562], "mapped", [1580]], [[126563, 126563], "disallowed"], [[126564, 126564], "mapped", [1607]], [[126565, 126566], "disallowed"], [[126567, 126567], "mapped", [1581]], [[126568, 126568], "mapped", [1591]], [[126569, 126569], "mapped", [1610]], [[126570, 126570], "mapped", [1603]], [[126571, 126571], "disallowed"], [[126572, 126572], "mapped", [1605]], [[126573, 126573], "mapped", [1606]], [[126574, 126574], "mapped", [1587]], [[126575, 126575], "mapped", [1593]], [[126576, 126576], "mapped", [1601]], [[126577, 126577], "mapped", [1589]], [[126578, 126578], "mapped", [1602]], [[126579, 126579], "disallowed"], [[126580, 126580], "mapped", [1588]], [[126581, 126581], "mapped", [1578]], [[126582, 126582], "mapped", [1579]], [[126583, 126583], "mapped", [1582]], [[126584, 126584], "disallowed"], [[126585, 126585], "mapped", [1590]], [[126586, 126586], "mapped", [1592]], [[126587, 126587], "mapped", [1594]], [[126588, 126588], "mapped", [1646]], [[126589, 126589], "disallowed"], [[126590, 126590], "mapped", [1697]], [[126591, 126591], "disallowed"], [[126592, 126592], "mapped", [1575]], [[126593, 126593], "mapped", [1576]], [[126594, 126594], "mapped", [1580]], [[126595, 126595], "mapped", [1583]], [[126596, 126596], "mapped", [1607]], [[126597, 126597], "mapped", [1608]], [[126598, 126598], "mapped", [1586]], [[126599, 126599], "mapped", [1581]], [[126600, 126600], "mapped", [1591]], [[126601, 126601], "mapped", [1610]], [[126602, 126602], "disallowed"], [[126603, 126603], "mapped", [1604]], [[126604, 126604], "mapped", [1605]], [[126605, 126605], "mapped", [1606]], [[126606, 126606], "mapped", [1587]], [[126607, 126607], "mapped", [1593]], [[126608, 126608], "mapped", [1601]], [[126609, 126609], "mapped", [1589]], [[126610, 126610], "mapped", [1602]], [[126611, 126611], "mapped", [1585]], [[126612, 126612], "mapped", [1588]], [[126613, 126613], "mapped", [1578]], [[126614, 126614], "mapped", [1579]], [[126615, 126615], "mapped", [1582]], [[126616, 126616], "mapped", [1584]], [[126617, 126617], "mapped", [1590]], [[126618, 126618], "mapped", [1592]], [[126619, 126619], "mapped", [1594]], [[126620, 126624], "disallowed"], [[126625, 126625], "mapped", [1576]], [[126626, 126626], "mapped", [1580]], [[126627, 126627], "mapped", [1583]], [[126628, 126628], "disallowed"], [[126629, 126629], "mapped", [1608]], [[126630, 126630], "mapped", [1586]], [[126631, 126631], "mapped", [1581]], [[126632, 126632], "mapped", [1591]], [[126633, 126633], "mapped", [1610]], [[126634, 126634], "disallowed"], [[126635, 126635], "mapped", [1604]], [[126636, 126636], "mapped", [1605]], [[126637, 126637], "mapped", [1606]], [[126638, 126638], "mapped", [1587]], [[126639, 126639], "mapped", [1593]], [[126640, 126640], "mapped", [1601]], [[126641, 126641], "mapped", [1589]], [[126642, 126642], "mapped", [1602]], [[126643, 126643], "mapped", [1585]], [[126644, 126644], "mapped", [1588]], [[126645, 126645], "mapped", [1578]], [[126646, 126646], "mapped", [1579]], [[126647, 126647], "mapped", [1582]], [[126648, 126648], "mapped", [1584]], [[126649, 126649], "mapped", [1590]], [[126650, 126650], "mapped", [1592]], [[126651, 126651], "mapped", [1594]], [[126652, 126703], "disallowed"], [[126704, 126705], "valid", [], "NV8"], [[126706, 126975], "disallowed"], [[126976, 127019], "valid", [], "NV8"], [[127020, 127023], "disallowed"], [[127024, 127123], "valid", [], "NV8"], [[127124, 127135], "disallowed"], [[127136, 127150], "valid", [], "NV8"], [[127151, 127152], "disallowed"], [[127153, 127166], "valid", [], "NV8"], [[127167, 127167], "valid", [], "NV8"], [[127168, 127168], "disallowed"], [[127169, 127183], "valid", [], "NV8"], [[127184, 127184], "disallowed"], [[127185, 127199], "valid", [], "NV8"], [[127200, 127221], "valid", [], "NV8"], [[127222, 127231], "disallowed"], [[127232, 127232], "disallowed"], [[127233, 127233], "disallowed_STD3_mapped", [48, 44]], [[127234, 127234], "disallowed_STD3_mapped", [49, 44]], [[127235, 127235], "disallowed_STD3_mapped", [50, 44]], [[127236, 127236], "disallowed_STD3_mapped", [51, 44]], [[127237, 127237], "disallowed_STD3_mapped", [52, 44]], [[127238, 127238], "disallowed_STD3_mapped", [53, 44]], [[127239, 127239], "disallowed_STD3_mapped", [54, 44]], [[127240, 127240], "disallowed_STD3_mapped", [55, 44]], [[127241, 127241], "disallowed_STD3_mapped", [56, 44]], [[127242, 127242], "disallowed_STD3_mapped", [57, 44]], [[127243, 127244], "valid", [], "NV8"], [[127245, 127247], "disallowed"], [[127248, 127248], "disallowed_STD3_mapped", [40, 97, 41]], [[127249, 127249], "disallowed_STD3_mapped", [40, 98, 41]], [[127250, 127250], "disallowed_STD3_mapped", [40, 99, 41]], [[127251, 127251], "disallowed_STD3_mapped", [40, 100, 41]], [[127252, 127252], "disallowed_STD3_mapped", [40, 101, 41]], [[127253, 127253], "disallowed_STD3_mapped", [40, 102, 41]], [[127254, 127254], "disallowed_STD3_mapped", [40, 103, 41]], [[127255, 127255], "disallowed_STD3_mapped", [40, 104, 41]], [[127256, 127256], "disallowed_STD3_mapped", [40, 105, 41]], [[127257, 127257], "disallowed_STD3_mapped", [40, 106, 41]], [[127258, 127258], "disallowed_STD3_mapped", [40, 107, 41]], [[127259, 127259], "disallowed_STD3_mapped", [40, 108, 41]], [[127260, 127260], "disallowed_STD3_mapped", [40, 109, 41]], [[127261, 127261], "disallowed_STD3_mapped", [40, 110, 41]], [[127262, 127262], "disallowed_STD3_mapped", [40, 111, 41]], [[127263, 127263], "disallowed_STD3_mapped", [40, 112, 41]], [[127264, 127264], "disallowed_STD3_mapped", [40, 113, 41]], [[127265, 127265], "disallowed_STD3_mapped", [40, 114, 41]], [[127266, 127266], "disallowed_STD3_mapped", [40, 115, 41]], [[127267, 127267], "disallowed_STD3_mapped", [40, 116, 41]], [[127268, 127268], "disallowed_STD3_mapped", [40, 117, 41]], [[127269, 127269], "disallowed_STD3_mapped", [40, 118, 41]], [[127270, 127270], "disallowed_STD3_mapped", [40, 119, 41]], [[127271, 127271], "disallowed_STD3_mapped", [40, 120, 41]], [[127272, 127272], "disallowed_STD3_mapped", [40, 121, 41]], [[127273, 127273], "disallowed_STD3_mapped", [40, 122, 41]], [[127274, 127274], "mapped", [12308, 115, 12309]], [[127275, 127275], "mapped", [99]], [[127276, 127276], "mapped", [114]], [[127277, 127277], "mapped", [99, 100]], [[127278, 127278], "mapped", [119, 122]], [[127279, 127279], "disallowed"], [[127280, 127280], "mapped", [97]], [[127281, 127281], "mapped", [98]], [[127282, 127282], "mapped", [99]], [[127283, 127283], "mapped", [100]], [[127284, 127284], "mapped", [101]], [[127285, 127285], "mapped", [102]], [[127286, 127286], "mapped", [103]], [[127287, 127287], "mapped", [104]], [[127288, 127288], "mapped", [105]], [[127289, 127289], "mapped", [106]], [[127290, 127290], "mapped", [107]], [[127291, 127291], "mapped", [108]], [[127292, 127292], "mapped", [109]], [[127293, 127293], "mapped", [110]], [[127294, 127294], "mapped", [111]], [[127295, 127295], "mapped", [112]], [[127296, 127296], "mapped", [113]], [[127297, 127297], "mapped", [114]], [[127298, 127298], "mapped", [115]], [[127299, 127299], "mapped", [116]], [[127300, 127300], "mapped", [117]], [[127301, 127301], "mapped", [118]], [[127302, 127302], "mapped", [119]], [[127303, 127303], "mapped", [120]], [[127304, 127304], "mapped", [121]], [[127305, 127305], "mapped", [122]], [[127306, 127306], "mapped", [104, 118]], [[127307, 127307], "mapped", [109, 118]], [[127308, 127308], "mapped", [115, 100]], [[127309, 127309], "mapped", [115, 115]], [[127310, 127310], "mapped", [112, 112, 118]], [[127311, 127311], "mapped", [119, 99]], [[127312, 127318], "valid", [], "NV8"], [[127319, 127319], "valid", [], "NV8"], [[127320, 127326], "valid", [], "NV8"], [[127327, 127327], "valid", [], "NV8"], [[127328, 127337], "valid", [], "NV8"], [[127338, 127338], "mapped", [109, 99]], [[127339, 127339], "mapped", [109, 100]], [[127340, 127343], "disallowed"], [[127344, 127352], "valid", [], "NV8"], [[127353, 127353], "valid", [], "NV8"], [[127354, 127354], "valid", [], "NV8"], [[127355, 127356], "valid", [], "NV8"], [[127357, 127358], "valid", [], "NV8"], [[127359, 127359], "valid", [], "NV8"], [[127360, 127369], "valid", [], "NV8"], [[127370, 127373], "valid", [], "NV8"], [[127374, 127375], "valid", [], "NV8"], [[127376, 127376], "mapped", [100, 106]], [[127377, 127386], "valid", [], "NV8"], [[127387, 127461], "disallowed"], [[127462, 127487], "valid", [], "NV8"], [[127488, 127488], "mapped", [12411, 12363]], [[127489, 127489], "mapped", [12467, 12467]], [[127490, 127490], "mapped", [12469]], [[127491, 127503], "disallowed"], [[127504, 127504], "mapped", [25163]], [[127505, 127505], "mapped", [23383]], [[127506, 127506], "mapped", [21452]], [[127507, 127507], "mapped", [12487]], [[127508, 127508], "mapped", [20108]], [[127509, 127509], "mapped", [22810]], [[127510, 127510], "mapped", [35299]], [[127511, 127511], "mapped", [22825]], [[127512, 127512], "mapped", [20132]], [[127513, 127513], "mapped", [26144]], [[127514, 127514], "mapped", [28961]], [[127515, 127515], "mapped", [26009]], [[127516, 127516], "mapped", [21069]], [[127517, 127517], "mapped", [24460]], [[127518, 127518], "mapped", [20877]], [[127519, 127519], "mapped", [26032]], [[127520, 127520], "mapped", [21021]], [[127521, 127521], "mapped", [32066]], [[127522, 127522], "mapped", [29983]], [[127523, 127523], "mapped", [36009]], [[127524, 127524], "mapped", [22768]], [[127525, 127525], "mapped", [21561]], [[127526, 127526], "mapped", [28436]], [[127527, 127527], "mapped", [25237]], [[127528, 127528], "mapped", [25429]], [[127529, 127529], "mapped", [19968]], [[127530, 127530], "mapped", [19977]], [[127531, 127531], "mapped", [36938]], [[127532, 127532], "mapped", [24038]], [[127533, 127533], "mapped", [20013]], [[127534, 127534], "mapped", [21491]], [[127535, 127535], "mapped", [25351]], [[127536, 127536], "mapped", [36208]], [[127537, 127537], "mapped", [25171]], [[127538, 127538], "mapped", [31105]], [[127539, 127539], "mapped", [31354]], [[127540, 127540], "mapped", [21512]], [[127541, 127541], "mapped", [28288]], [[127542, 127542], "mapped", [26377]], [[127543, 127543], "mapped", [26376]], [[127544, 127544], "mapped", [30003]], [[127545, 127545], "mapped", [21106]], [[127546, 127546], "mapped", [21942]], [[127547, 127551], "disallowed"], [[127552, 127552], "mapped", [12308, 26412, 12309]], [[127553, 127553], "mapped", [12308, 19977, 12309]], [[127554, 127554], "mapped", [12308, 20108, 12309]], [[127555, 127555], "mapped", [12308, 23433, 12309]], [[127556, 127556], "mapped", [12308, 28857, 12309]], [[127557, 127557], "mapped", [12308, 25171, 12309]], [[127558, 127558], "mapped", [12308, 30423, 12309]], [[127559, 127559], "mapped", [12308, 21213, 12309]], [[127560, 127560], "mapped", [12308, 25943, 12309]], [[127561, 127567], "disallowed"], [[127568, 127568], "mapped", [24471]], [[127569, 127569], "mapped", [21487]], [[127570, 127743], "disallowed"], [[127744, 127776], "valid", [], "NV8"], [[127777, 127788], "valid", [], "NV8"], [[127789, 127791], "valid", [], "NV8"], [[127792, 127797], "valid", [], "NV8"], [[127798, 127798], "valid", [], "NV8"], [[127799, 127868], "valid", [], "NV8"], [[127869, 127869], "valid", [], "NV8"], [[127870, 127871], "valid", [], "NV8"], [[127872, 127891], "valid", [], "NV8"], [[127892, 127903], "valid", [], "NV8"], [[127904, 127940], "valid", [], "NV8"], [[127941, 127941], "valid", [], "NV8"], [[127942, 127946], "valid", [], "NV8"], [[127947, 127950], "valid", [], "NV8"], [[127951, 127955], "valid", [], "NV8"], [[127956, 127967], "valid", [], "NV8"], [[127968, 127984], "valid", [], "NV8"], [[127985, 127991], "valid", [], "NV8"], [[127992, 127999], "valid", [], "NV8"], [[128e3, 128062], "valid", [], "NV8"], [[128063, 128063], "valid", [], "NV8"], [[128064, 128064], "valid", [], "NV8"], [[128065, 128065], "valid", [], "NV8"], [[128066, 128247], "valid", [], "NV8"], [[128248, 128248], "valid", [], "NV8"], [[128249, 128252], "valid", [], "NV8"], [[128253, 128254], "valid", [], "NV8"], [[128255, 128255], "valid", [], "NV8"], [[128256, 128317], "valid", [], "NV8"], [[128318, 128319], "valid", [], "NV8"], [[128320, 128323], "valid", [], "NV8"], [[128324, 128330], "valid", [], "NV8"], [[128331, 128335], "valid", [], "NV8"], [[128336, 128359], "valid", [], "NV8"], [[128360, 128377], "valid", [], "NV8"], [[128378, 128378], "disallowed"], [[128379, 128419], "valid", [], "NV8"], [[128420, 128420], "disallowed"], [[128421, 128506], "valid", [], "NV8"], [[128507, 128511], "valid", [], "NV8"], [[128512, 128512], "valid", [], "NV8"], [[128513, 128528], "valid", [], "NV8"], [[128529, 128529], "valid", [], "NV8"], [[128530, 128532], "valid", [], "NV8"], [[128533, 128533], "valid", [], "NV8"], [[128534, 128534], "valid", [], "NV8"], [[128535, 128535], "valid", [], "NV8"], [[128536, 128536], "valid", [], "NV8"], [[128537, 128537], "valid", [], "NV8"], [[128538, 128538], "valid", [], "NV8"], [[128539, 128539], "valid", [], "NV8"], [[128540, 128542], "valid", [], "NV8"], [[128543, 128543], "valid", [], "NV8"], [[128544, 128549], "valid", [], "NV8"], [[128550, 128551], "valid", [], "NV8"], [[128552, 128555], "valid", [], "NV8"], [[128556, 128556], "valid", [], "NV8"], [[128557, 128557], "valid", [], "NV8"], [[128558, 128559], "valid", [], "NV8"], [[128560, 128563], "valid", [], "NV8"], [[128564, 128564], "valid", [], "NV8"], [[128565, 128576], "valid", [], "NV8"], [[128577, 128578], "valid", [], "NV8"], [[128579, 128580], "valid", [], "NV8"], [[128581, 128591], "valid", [], "NV8"], [[128592, 128639], "valid", [], "NV8"], [[128640, 128709], "valid", [], "NV8"], [[128710, 128719], "valid", [], "NV8"], [[128720, 128720], "valid", [], "NV8"], [[128721, 128735], "disallowed"], [[128736, 128748], "valid", [], "NV8"], [[128749, 128751], "disallowed"], [[128752, 128755], "valid", [], "NV8"], [[128756, 128767], "disallowed"], [[128768, 128883], "valid", [], "NV8"], [[128884, 128895], "disallowed"], [[128896, 128980], "valid", [], "NV8"], [[128981, 129023], "disallowed"], [[129024, 129035], "valid", [], "NV8"], [[129036, 129039], "disallowed"], [[129040, 129095], "valid", [], "NV8"], [[129096, 129103], "disallowed"], [[129104, 129113], "valid", [], "NV8"], [[129114, 129119], "disallowed"], [[129120, 129159], "valid", [], "NV8"], [[129160, 129167], "disallowed"], [[129168, 129197], "valid", [], "NV8"], [[129198, 129295], "disallowed"], [[129296, 129304], "valid", [], "NV8"], [[129305, 129407], "disallowed"], [[129408, 129412], "valid", [], "NV8"], [[129413, 129471], "disallowed"], [[129472, 129472], "valid", [], "NV8"], [[129473, 131069], "disallowed"], [[131070, 131071], "disallowed"], [[131072, 173782], "valid"], [[173783, 173823], "disallowed"], [[173824, 177972], "valid"], [[177973, 177983], "disallowed"], [[177984, 178205], "valid"], [[178206, 178207], "disallowed"], [[178208, 183969], "valid"], [[183970, 194559], "disallowed"], [[194560, 194560], "mapped", [20029]], [[194561, 194561], "mapped", [20024]], [[194562, 194562], "mapped", [20033]], [[194563, 194563], "mapped", [131362]], [[194564, 194564], "mapped", [20320]], [[194565, 194565], "mapped", [20398]], [[194566, 194566], "mapped", [20411]], [[194567, 194567], "mapped", [20482]], [[194568, 194568], "mapped", [20602]], [[194569, 194569], "mapped", [20633]], [[194570, 194570], "mapped", [20711]], [[194571, 194571], "mapped", [20687]], [[194572, 194572], "mapped", [13470]], [[194573, 194573], "mapped", [132666]], [[194574, 194574], "mapped", [20813]], [[194575, 194575], "mapped", [20820]], [[194576, 194576], "mapped", [20836]], [[194577, 194577], "mapped", [20855]], [[194578, 194578], "mapped", [132380]], [[194579, 194579], "mapped", [13497]], [[194580, 194580], "mapped", [20839]], [[194581, 194581], "mapped", [20877]], [[194582, 194582], "mapped", [132427]], [[194583, 194583], "mapped", [20887]], [[194584, 194584], "mapped", [20900]], [[194585, 194585], "mapped", [20172]], [[194586, 194586], "mapped", [20908]], [[194587, 194587], "mapped", [20917]], [[194588, 194588], "mapped", [168415]], [[194589, 194589], "mapped", [20981]], [[194590, 194590], "mapped", [20995]], [[194591, 194591], "mapped", [13535]], [[194592, 194592], "mapped", [21051]], [[194593, 194593], "mapped", [21062]], [[194594, 194594], "mapped", [21106]], [[194595, 194595], "mapped", [21111]], [[194596, 194596], "mapped", [13589]], [[194597, 194597], "mapped", [21191]], [[194598, 194598], "mapped", [21193]], [[194599, 194599], "mapped", [21220]], [[194600, 194600], "mapped", [21242]], [[194601, 194601], "mapped", [21253]], [[194602, 194602], "mapped", [21254]], [[194603, 194603], "mapped", [21271]], [[194604, 194604], "mapped", [21321]], [[194605, 194605], "mapped", [21329]], [[194606, 194606], "mapped", [21338]], [[194607, 194607], "mapped", [21363]], [[194608, 194608], "mapped", [21373]], [[194609, 194611], "mapped", [21375]], [[194612, 194612], "mapped", [133676]], [[194613, 194613], "mapped", [28784]], [[194614, 194614], "mapped", [21450]], [[194615, 194615], "mapped", [21471]], [[194616, 194616], "mapped", [133987]], [[194617, 194617], "mapped", [21483]], [[194618, 194618], "mapped", [21489]], [[194619, 194619], "mapped", [21510]], [[194620, 194620], "mapped", [21662]], [[194621, 194621], "mapped", [21560]], [[194622, 194622], "mapped", [21576]], [[194623, 194623], "mapped", [21608]], [[194624, 194624], "mapped", [21666]], [[194625, 194625], "mapped", [21750]], [[194626, 194626], "mapped", [21776]], [[194627, 194627], "mapped", [21843]], [[194628, 194628], "mapped", [21859]], [[194629, 194630], "mapped", [21892]], [[194631, 194631], "mapped", [21913]], [[194632, 194632], "mapped", [21931]], [[194633, 194633], "mapped", [21939]], [[194634, 194634], "mapped", [21954]], [[194635, 194635], "mapped", [22294]], [[194636, 194636], "mapped", [22022]], [[194637, 194637], "mapped", [22295]], [[194638, 194638], "mapped", [22097]], [[194639, 194639], "mapped", [22132]], [[194640, 194640], "mapped", [20999]], [[194641, 194641], "mapped", [22766]], [[194642, 194642], "mapped", [22478]], [[194643, 194643], "mapped", [22516]], [[194644, 194644], "mapped", [22541]], [[194645, 194645], "mapped", [22411]], [[194646, 194646], "mapped", [22578]], [[194647, 194647], "mapped", [22577]], [[194648, 194648], "mapped", [22700]], [[194649, 194649], "mapped", [136420]], [[194650, 194650], "mapped", [22770]], [[194651, 194651], "mapped", [22775]], [[194652, 194652], "mapped", [22790]], [[194653, 194653], "mapped", [22810]], [[194654, 194654], "mapped", [22818]], [[194655, 194655], "mapped", [22882]], [[194656, 194656], "mapped", [136872]], [[194657, 194657], "mapped", [136938]], [[194658, 194658], "mapped", [23020]], [[194659, 194659], "mapped", [23067]], [[194660, 194660], "mapped", [23079]], [[194661, 194661], "mapped", [23e3]], [[194662, 194662], "mapped", [23142]], [[194663, 194663], "mapped", [14062]], [[194664, 194664], "disallowed"], [[194665, 194665], "mapped", [23304]], [[194666, 194667], "mapped", [23358]], [[194668, 194668], "mapped", [137672]], [[194669, 194669], "mapped", [23491]], [[194670, 194670], "mapped", [23512]], [[194671, 194671], "mapped", [23527]], [[194672, 194672], "mapped", [23539]], [[194673, 194673], "mapped", [138008]], [[194674, 194674], "mapped", [23551]], [[194675, 194675], "mapped", [23558]], [[194676, 194676], "disallowed"], [[194677, 194677], "mapped", [23586]], [[194678, 194678], "mapped", [14209]], [[194679, 194679], "mapped", [23648]], [[194680, 194680], "mapped", [23662]], [[194681, 194681], "mapped", [23744]], [[194682, 194682], "mapped", [23693]], [[194683, 194683], "mapped", [138724]], [[194684, 194684], "mapped", [23875]], [[194685, 194685], "mapped", [138726]], [[194686, 194686], "mapped", [23918]], [[194687, 194687], "mapped", [23915]], [[194688, 194688], "mapped", [23932]], [[194689, 194689], "mapped", [24033]], [[194690, 194690], "mapped", [24034]], [[194691, 194691], "mapped", [14383]], [[194692, 194692], "mapped", [24061]], [[194693, 194693], "mapped", [24104]], [[194694, 194694], "mapped", [24125]], [[194695, 194695], "mapped", [24169]], [[194696, 194696], "mapped", [14434]], [[194697, 194697], "mapped", [139651]], [[194698, 194698], "mapped", [14460]], [[194699, 194699], "mapped", [24240]], [[194700, 194700], "mapped", [24243]], [[194701, 194701], "mapped", [24246]], [[194702, 194702], "mapped", [24266]], [[194703, 194703], "mapped", [172946]], [[194704, 194704], "mapped", [24318]], [[194705, 194706], "mapped", [140081]], [[194707, 194707], "mapped", [33281]], [[194708, 194709], "mapped", [24354]], [[194710, 194710], "mapped", [14535]], [[194711, 194711], "mapped", [144056]], [[194712, 194712], "mapped", [156122]], [[194713, 194713], "mapped", [24418]], [[194714, 194714], "mapped", [24427]], [[194715, 194715], "mapped", [14563]], [[194716, 194716], "mapped", [24474]], [[194717, 194717], "mapped", [24525]], [[194718, 194718], "mapped", [24535]], [[194719, 194719], "mapped", [24569]], [[194720, 194720], "mapped", [24705]], [[194721, 194721], "mapped", [14650]], [[194722, 194722], "mapped", [14620]], [[194723, 194723], "mapped", [24724]], [[194724, 194724], "mapped", [141012]], [[194725, 194725], "mapped", [24775]], [[194726, 194726], "mapped", [24904]], [[194727, 194727], "mapped", [24908]], [[194728, 194728], "mapped", [24910]], [[194729, 194729], "mapped", [24908]], [[194730, 194730], "mapped", [24954]], [[194731, 194731], "mapped", [24974]], [[194732, 194732], "mapped", [25010]], [[194733, 194733], "mapped", [24996]], [[194734, 194734], "mapped", [25007]], [[194735, 194735], "mapped", [25054]], [[194736, 194736], "mapped", [25074]], [[194737, 194737], "mapped", [25078]], [[194738, 194738], "mapped", [25104]], [[194739, 194739], "mapped", [25115]], [[194740, 194740], "mapped", [25181]], [[194741, 194741], "mapped", [25265]], [[194742, 194742], "mapped", [25300]], [[194743, 194743], "mapped", [25424]], [[194744, 194744], "mapped", [142092]], [[194745, 194745], "mapped", [25405]], [[194746, 194746], "mapped", [25340]], [[194747, 194747], "mapped", [25448]], [[194748, 194748], "mapped", [25475]], [[194749, 194749], "mapped", [25572]], [[194750, 194750], "mapped", [142321]], [[194751, 194751], "mapped", [25634]], [[194752, 194752], "mapped", [25541]], [[194753, 194753], "mapped", [25513]], [[194754, 194754], "mapped", [14894]], [[194755, 194755], "mapped", [25705]], [[194756, 194756], "mapped", [25726]], [[194757, 194757], "mapped", [25757]], [[194758, 194758], "mapped", [25719]], [[194759, 194759], "mapped", [14956]], [[194760, 194760], "mapped", [25935]], [[194761, 194761], "mapped", [25964]], [[194762, 194762], "mapped", [143370]], [[194763, 194763], "mapped", [26083]], [[194764, 194764], "mapped", [26360]], [[194765, 194765], "mapped", [26185]], [[194766, 194766], "mapped", [15129]], [[194767, 194767], "mapped", [26257]], [[194768, 194768], "mapped", [15112]], [[194769, 194769], "mapped", [15076]], [[194770, 194770], "mapped", [20882]], [[194771, 194771], "mapped", [20885]], [[194772, 194772], "mapped", [26368]], [[194773, 194773], "mapped", [26268]], [[194774, 194774], "mapped", [32941]], [[194775, 194775], "mapped", [17369]], [[194776, 194776], "mapped", [26391]], [[194777, 194777], "mapped", [26395]], [[194778, 194778], "mapped", [26401]], [[194779, 194779], "mapped", [26462]], [[194780, 194780], "mapped", [26451]], [[194781, 194781], "mapped", [144323]], [[194782, 194782], "mapped", [15177]], [[194783, 194783], "mapped", [26618]], [[194784, 194784], "mapped", [26501]], [[194785, 194785], "mapped", [26706]], [[194786, 194786], "mapped", [26757]], [[194787, 194787], "mapped", [144493]], [[194788, 194788], "mapped", [26766]], [[194789, 194789], "mapped", [26655]], [[194790, 194790], "mapped", [26900]], [[194791, 194791], "mapped", [15261]], [[194792, 194792], "mapped", [26946]], [[194793, 194793], "mapped", [27043]], [[194794, 194794], "mapped", [27114]], [[194795, 194795], "mapped", [27304]], [[194796, 194796], "mapped", [145059]], [[194797, 194797], "mapped", [27355]], [[194798, 194798], "mapped", [15384]], [[194799, 194799], "mapped", [27425]], [[194800, 194800], "mapped", [145575]], [[194801, 194801], "mapped", [27476]], [[194802, 194802], "mapped", [15438]], [[194803, 194803], "mapped", [27506]], [[194804, 194804], "mapped", [27551]], [[194805, 194805], "mapped", [27578]], [[194806, 194806], "mapped", [27579]], [[194807, 194807], "mapped", [146061]], [[194808, 194808], "mapped", [138507]], [[194809, 194809], "mapped", [146170]], [[194810, 194810], "mapped", [27726]], [[194811, 194811], "mapped", [146620]], [[194812, 194812], "mapped", [27839]], [[194813, 194813], "mapped", [27853]], [[194814, 194814], "mapped", [27751]], [[194815, 194815], "mapped", [27926]], [[194816, 194816], "mapped", [27966]], [[194817, 194817], "mapped", [28023]], [[194818, 194818], "mapped", [27969]], [[194819, 194819], "mapped", [28009]], [[194820, 194820], "mapped", [28024]], [[194821, 194821], "mapped", [28037]], [[194822, 194822], "mapped", [146718]], [[194823, 194823], "mapped", [27956]], [[194824, 194824], "mapped", [28207]], [[194825, 194825], "mapped", [28270]], [[194826, 194826], "mapped", [15667]], [[194827, 194827], "mapped", [28363]], [[194828, 194828], "mapped", [28359]], [[194829, 194829], "mapped", [147153]], [[194830, 194830], "mapped", [28153]], [[194831, 194831], "mapped", [28526]], [[194832, 194832], "mapped", [147294]], [[194833, 194833], "mapped", [147342]], [[194834, 194834], "mapped", [28614]], [[194835, 194835], "mapped", [28729]], [[194836, 194836], "mapped", [28702]], [[194837, 194837], "mapped", [28699]], [[194838, 194838], "mapped", [15766]], [[194839, 194839], "mapped", [28746]], [[194840, 194840], "mapped", [28797]], [[194841, 194841], "mapped", [28791]], [[194842, 194842], "mapped", [28845]], [[194843, 194843], "mapped", [132389]], [[194844, 194844], "mapped", [28997]], [[194845, 194845], "mapped", [148067]], [[194846, 194846], "mapped", [29084]], [[194847, 194847], "disallowed"], [[194848, 194848], "mapped", [29224]], [[194849, 194849], "mapped", [29237]], [[194850, 194850], "mapped", [29264]], [[194851, 194851], "mapped", [149e3]], [[194852, 194852], "mapped", [29312]], [[194853, 194853], "mapped", [29333]], [[194854, 194854], "mapped", [149301]], [[194855, 194855], "mapped", [149524]], [[194856, 194856], "mapped", [29562]], [[194857, 194857], "mapped", [29579]], [[194858, 194858], "mapped", [16044]], [[194859, 194859], "mapped", [29605]], [[194860, 194861], "mapped", [16056]], [[194862, 194862], "mapped", [29767]], [[194863, 194863], "mapped", [29788]], [[194864, 194864], "mapped", [29809]], [[194865, 194865], "mapped", [29829]], [[194866, 194866], "mapped", [29898]], [[194867, 194867], "mapped", [16155]], [[194868, 194868], "mapped", [29988]], [[194869, 194869], "mapped", [150582]], [[194870, 194870], "mapped", [30014]], [[194871, 194871], "mapped", [150674]], [[194872, 194872], "mapped", [30064]], [[194873, 194873], "mapped", [139679]], [[194874, 194874], "mapped", [30224]], [[194875, 194875], "mapped", [151457]], [[194876, 194876], "mapped", [151480]], [[194877, 194877], "mapped", [151620]], [[194878, 194878], "mapped", [16380]], [[194879, 194879], "mapped", [16392]], [[194880, 194880], "mapped", [30452]], [[194881, 194881], "mapped", [151795]], [[194882, 194882], "mapped", [151794]], [[194883, 194883], "mapped", [151833]], [[194884, 194884], "mapped", [151859]], [[194885, 194885], "mapped", [30494]], [[194886, 194887], "mapped", [30495]], [[194888, 194888], "mapped", [30538]], [[194889, 194889], "mapped", [16441]], [[194890, 194890], "mapped", [30603]], [[194891, 194891], "mapped", [16454]], [[194892, 194892], "mapped", [16534]], [[194893, 194893], "mapped", [152605]], [[194894, 194894], "mapped", [30798]], [[194895, 194895], "mapped", [30860]], [[194896, 194896], "mapped", [30924]], [[194897, 194897], "mapped", [16611]], [[194898, 194898], "mapped", [153126]], [[194899, 194899], "mapped", [31062]], [[194900, 194900], "mapped", [153242]], [[194901, 194901], "mapped", [153285]], [[194902, 194902], "mapped", [31119]], [[194903, 194903], "mapped", [31211]], [[194904, 194904], "mapped", [16687]], [[194905, 194905], "mapped", [31296]], [[194906, 194906], "mapped", [31306]], [[194907, 194907], "mapped", [31311]], [[194908, 194908], "mapped", [153980]], [[194909, 194910], "mapped", [154279]], [[194911, 194911], "disallowed"], [[194912, 194912], "mapped", [16898]], [[194913, 194913], "mapped", [154539]], [[194914, 194914], "mapped", [31686]], [[194915, 194915], "mapped", [31689]], [[194916, 194916], "mapped", [16935]], [[194917, 194917], "mapped", [154752]], [[194918, 194918], "mapped", [31954]], [[194919, 194919], "mapped", [17056]], [[194920, 194920], "mapped", [31976]], [[194921, 194921], "mapped", [31971]], [[194922, 194922], "mapped", [32e3]], [[194923, 194923], "mapped", [155526]], [[194924, 194924], "mapped", [32099]], [[194925, 194925], "mapped", [17153]], [[194926, 194926], "mapped", [32199]], [[194927, 194927], "mapped", [32258]], [[194928, 194928], "mapped", [32325]], [[194929, 194929], "mapped", [17204]], [[194930, 194930], "mapped", [156200]], [[194931, 194931], "mapped", [156231]], [[194932, 194932], "mapped", [17241]], [[194933, 194933], "mapped", [156377]], [[194934, 194934], "mapped", [32634]], [[194935, 194935], "mapped", [156478]], [[194936, 194936], "mapped", [32661]], [[194937, 194937], "mapped", [32762]], [[194938, 194938], "mapped", [32773]], [[194939, 194939], "mapped", [156890]], [[194940, 194940], "mapped", [156963]], [[194941, 194941], "mapped", [32864]], [[194942, 194942], "mapped", [157096]], [[194943, 194943], "mapped", [32880]], [[194944, 194944], "mapped", [144223]], [[194945, 194945], "mapped", [17365]], [[194946, 194946], "mapped", [32946]], [[194947, 194947], "mapped", [33027]], [[194948, 194948], "mapped", [17419]], [[194949, 194949], "mapped", [33086]], [[194950, 194950], "mapped", [23221]], [[194951, 194951], "mapped", [157607]], [[194952, 194952], "mapped", [157621]], [[194953, 194953], "mapped", [144275]], [[194954, 194954], "mapped", [144284]], [[194955, 194955], "mapped", [33281]], [[194956, 194956], "mapped", [33284]], [[194957, 194957], "mapped", [36766]], [[194958, 194958], "mapped", [17515]], [[194959, 194959], "mapped", [33425]], [[194960, 194960], "mapped", [33419]], [[194961, 194961], "mapped", [33437]], [[194962, 194962], "mapped", [21171]], [[194963, 194963], "mapped", [33457]], [[194964, 194964], "mapped", [33459]], [[194965, 194965], "mapped", [33469]], [[194966, 194966], "mapped", [33510]], [[194967, 194967], "mapped", [158524]], [[194968, 194968], "mapped", [33509]], [[194969, 194969], "mapped", [33565]], [[194970, 194970], "mapped", [33635]], [[194971, 194971], "mapped", [33709]], [[194972, 194972], "mapped", [33571]], [[194973, 194973], "mapped", [33725]], [[194974, 194974], "mapped", [33767]], [[194975, 194975], "mapped", [33879]], [[194976, 194976], "mapped", [33619]], [[194977, 194977], "mapped", [33738]], [[194978, 194978], "mapped", [33740]], [[194979, 194979], "mapped", [33756]], [[194980, 194980], "mapped", [158774]], [[194981, 194981], "mapped", [159083]], [[194982, 194982], "mapped", [158933]], [[194983, 194983], "mapped", [17707]], [[194984, 194984], "mapped", [34033]], [[194985, 194985], "mapped", [34035]], [[194986, 194986], "mapped", [34070]], [[194987, 194987], "mapped", [160714]], [[194988, 194988], "mapped", [34148]], [[194989, 194989], "mapped", [159532]], [[194990, 194990], "mapped", [17757]], [[194991, 194991], "mapped", [17761]], [[194992, 194992], "mapped", [159665]], [[194993, 194993], "mapped", [159954]], [[194994, 194994], "mapped", [17771]], [[194995, 194995], "mapped", [34384]], [[194996, 194996], "mapped", [34396]], [[194997, 194997], "mapped", [34407]], [[194998, 194998], "mapped", [34409]], [[194999, 194999], "mapped", [34473]], [[195e3, 195e3], "mapped", [34440]], [[195001, 195001], "mapped", [34574]], [[195002, 195002], "mapped", [34530]], [[195003, 195003], "mapped", [34681]], [[195004, 195004], "mapped", [34600]], [[195005, 195005], "mapped", [34667]], [[195006, 195006], "mapped", [34694]], [[195007, 195007], "disallowed"], [[195008, 195008], "mapped", [34785]], [[195009, 195009], "mapped", [34817]], [[195010, 195010], "mapped", [17913]], [[195011, 195011], "mapped", [34912]], [[195012, 195012], "mapped", [34915]], [[195013, 195013], "mapped", [161383]], [[195014, 195014], "mapped", [35031]], [[195015, 195015], "mapped", [35038]], [[195016, 195016], "mapped", [17973]], [[195017, 195017], "mapped", [35066]], [[195018, 195018], "mapped", [13499]], [[195019, 195019], "mapped", [161966]], [[195020, 195020], "mapped", [162150]], [[195021, 195021], "mapped", [18110]], [[195022, 195022], "mapped", [18119]], [[195023, 195023], "mapped", [35488]], [[195024, 195024], "mapped", [35565]], [[195025, 195025], "mapped", [35722]], [[195026, 195026], "mapped", [35925]], [[195027, 195027], "mapped", [162984]], [[195028, 195028], "mapped", [36011]], [[195029, 195029], "mapped", [36033]], [[195030, 195030], "mapped", [36123]], [[195031, 195031], "mapped", [36215]], [[195032, 195032], "mapped", [163631]], [[195033, 195033], "mapped", [133124]], [[195034, 195034], "mapped", [36299]], [[195035, 195035], "mapped", [36284]], [[195036, 195036], "mapped", [36336]], [[195037, 195037], "mapped", [133342]], [[195038, 195038], "mapped", [36564]], [[195039, 195039], "mapped", [36664]], [[195040, 195040], "mapped", [165330]], [[195041, 195041], "mapped", [165357]], [[195042, 195042], "mapped", [37012]], [[195043, 195043], "mapped", [37105]], [[195044, 195044], "mapped", [37137]], [[195045, 195045], "mapped", [165678]], [[195046, 195046], "mapped", [37147]], [[195047, 195047], "mapped", [37432]], [[195048, 195048], "mapped", [37591]], [[195049, 195049], "mapped", [37592]], [[195050, 195050], "mapped", [37500]], [[195051, 195051], "mapped", [37881]], [[195052, 195052], "mapped", [37909]], [[195053, 195053], "mapped", [166906]], [[195054, 195054], "mapped", [38283]], [[195055, 195055], "mapped", [18837]], [[195056, 195056], "mapped", [38327]], [[195057, 195057], "mapped", [167287]], [[195058, 195058], "mapped", [18918]], [[195059, 195059], "mapped", [38595]], [[195060, 195060], "mapped", [23986]], [[195061, 195061], "mapped", [38691]], [[195062, 195062], "mapped", [168261]], [[195063, 195063], "mapped", [168474]], [[195064, 195064], "mapped", [19054]], [[195065, 195065], "mapped", [19062]], [[195066, 195066], "mapped", [38880]], [[195067, 195067], "mapped", [168970]], [[195068, 195068], "mapped", [19122]], [[195069, 195069], "mapped", [169110]], [[195070, 195071], "mapped", [38923]], [[195072, 195072], "mapped", [38953]], [[195073, 195073], "mapped", [169398]], [[195074, 195074], "mapped", [39138]], [[195075, 195075], "mapped", [19251]], [[195076, 195076], "mapped", [39209]], [[195077, 195077], "mapped", [39335]], [[195078, 195078], "mapped", [39362]], [[195079, 195079], "mapped", [39422]], [[195080, 195080], "mapped", [19406]], [[195081, 195081], "mapped", [170800]], [[195082, 195082], "mapped", [39698]], [[195083, 195083], "mapped", [4e4]], [[195084, 195084], "mapped", [40189]], [[195085, 195085], "mapped", [19662]], [[195086, 195086], "mapped", [19693]], [[195087, 195087], "mapped", [40295]], [[195088, 195088], "mapped", [172238]], [[195089, 195089], "mapped", [19704]], [[195090, 195090], "mapped", [172293]], [[195091, 195091], "mapped", [172558]], [[195092, 195092], "mapped", [172689]], [[195093, 195093], "mapped", [40635]], [[195094, 195094], "mapped", [19798]], [[195095, 195095], "mapped", [40697]], [[195096, 195096], "mapped", [40702]], [[195097, 195097], "mapped", [40709]], [[195098, 195098], "mapped", [40719]], [[195099, 195099], "mapped", [40726]], [[195100, 195100], "mapped", [40763]], [[195101, 195101], "mapped", [173568]], [[195102, 196605], "disallowed"], [[196606, 196607], "disallowed"], [[196608, 262141], "disallowed"], [[262142, 262143], "disallowed"], [[262144, 327677], "disallowed"], [[327678, 327679], "disallowed"], [[327680, 393213], "disallowed"], [[393214, 393215], "disallowed"], [[393216, 458749], "disallowed"], [[458750, 458751], "disallowed"], [[458752, 524285], "disallowed"], [[524286, 524287], "disallowed"], [[524288, 589821], "disallowed"], [[589822, 589823], "disallowed"], [[589824, 655357], "disallowed"], [[655358, 655359], "disallowed"], [[655360, 720893], "disallowed"], [[720894, 720895], "disallowed"], [[720896, 786429], "disallowed"], [[786430, 786431], "disallowed"], [[786432, 851965], "disallowed"], [[851966, 851967], "disallowed"], [[851968, 917501], "disallowed"], [[917502, 917503], "disallowed"], [[917504, 917504], "disallowed"], [[917505, 917505], "disallowed"], [[917506, 917535], "disallowed"], [[917536, 917631], "disallowed"], [[917632, 917759], "disallowed"], [[917760, 917999], "ignored"], [[918e3, 983037], "disallowed"], [[983038, 983039], "disallowed"], [[983040, 1048573], "disallowed"], [[1048574, 1048575], "disallowed"], [[1048576, 1114109], "disallowed"], [[1114110, 1114111], "disallowed"]];
+  }
+});
+
+// ../../../node_modules/tr46/index.js
+var require_tr46 = __commonJS({
+  "../../../node_modules/tr46/index.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var mappingTable = require_mappingTable();
+    var PROCESSING_OPTIONS = {
+      TRANSITIONAL: 0,
+      NONTRANSITIONAL: 1
+    };
+    function normalize(str) {
+      return str.split("\0").map(function(s) {
+        return s.normalize("NFC");
+      }).join("\0");
+    }
+    function findStatus(val2) {
+      var start = 0;
+      var end = mappingTable.length - 1;
+      while (start <= end) {
+        var mid = Math.floor((start + end) / 2);
+        var target = mappingTable[mid];
+        if (target[0][0] <= val2 && target[0][1] >= val2) {
+          return target;
+        } else if (target[0][0] > val2) {
+          end = mid - 1;
+        } else {
+          start = mid + 1;
+        }
+      }
+      return null;
+    }
+    var regexAstralSymbols = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
+    function countSymbols(string) {
+      return string.replace(regexAstralSymbols, "_").length;
+    }
+    function mapChars(domain_name, useSTD3, processing_option) {
+      var hasError = false;
+      var processed = "";
+      var len = countSymbols(domain_name);
+      for (var i = 0; i < len; ++i) {
+        var codePoint = domain_name.codePointAt(i);
+        var status = findStatus(codePoint);
+        switch (status[1]) {
+          case "disallowed":
+            hasError = true;
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "ignored":
+            break;
+          case "mapped":
+            processed += String.fromCodePoint.apply(String, status[2]);
+            break;
+          case "deviation":
+            if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            } else {
+              processed += String.fromCodePoint(codePoint);
+            }
+            break;
+          case "valid":
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "disallowed_STD3_mapped":
+            if (useSTD3) {
+              hasError = true;
+              processed += String.fromCodePoint(codePoint);
+            } else {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            }
+            break;
+          case "disallowed_STD3_valid":
+            if (useSTD3) {
+              hasError = true;
+            }
+            processed += String.fromCodePoint(codePoint);
+            break;
+        }
+      }
+      return {
+        string: processed,
+        error: hasError
+      };
+    }
+    var combiningMarksRegex = /[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/;
+    function validateLabel(label, processing_option) {
+      if (label.substr(0, 4) === "xn--") {
+        label = punycode.toUnicode(label);
+        processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL;
+      }
+      var error = false;
+      if (normalize(label) !== label || label[3] === "-" && label[4] === "-" || label[0] === "-" || label[label.length - 1] === "-" || label.indexOf(".") !== -1 || label.search(combiningMarksRegex) === 0) {
+        error = true;
+      }
+      var len = countSymbols(label);
+      for (var i = 0; i < len; ++i) {
+        var status = findStatus(label.codePointAt(i));
+        if (processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== "valid" || processing === PROCESSING_OPTIONS.NONTRANSITIONAL && status[1] !== "valid" && status[1] !== "deviation") {
+          error = true;
+          break;
+        }
+      }
+      return {
+        label,
+        error
+      };
+    }
+    function processing(domain_name, useSTD3, processing_option) {
+      var result = mapChars(domain_name, useSTD3, processing_option);
+      result.string = normalize(result.string);
+      var labels = result.string.split(".");
+      for (var i = 0; i < labels.length; ++i) {
+        try {
+          var validation = validateLabel(labels[i]);
+          labels[i] = validation.label;
+          result.error = result.error || validation.error;
+        } catch (e) {
+          result.error = true;
+        }
+      }
+      return {
+        string: labels.join("."),
+        error: result.error
+      };
+    }
+    module2.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) {
+      var result = processing(domain_name, useSTD3, processing_option);
+      var labels = result.string.split(".");
+      labels = labels.map(function(l) {
+        try {
+          return punycode.toASCII(l);
+        } catch (e) {
+          result.error = true;
+          return l;
+        }
+      });
+      if (verifyDnsLength) {
+        var total = labels.slice(0, labels.length - 1).join(".").length;
+        if (total.length > 253 || total.length === 0) {
+          result.error = true;
+        }
+        for (var i = 0; i < labels.length; ++i) {
+          if (labels.length > 63 || labels.length === 0) {
+            result.error = true;
+            break;
+          }
+        }
+      }
+      if (result.error) return null;
+      return labels.join(".");
+    };
+    module2.exports.toUnicode = function(domain_name, useSTD3) {
+      var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL);
+      return {
+        domain: result.string,
+        error: result.error
+      };
+    };
+    module2.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS;
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/url-state-machine.js
+var require_url_state_machine = __commonJS({
+  "../../../node_modules/whatwg-url/lib/url-state-machine.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var tr46 = require_tr46();
+    var specialSchemes = {
+      ftp: 21,
+      file: null,
+      gopher: 70,
+      http: 80,
+      https: 443,
+      ws: 80,
+      wss: 443
+    };
+    var failure = /* @__PURE__ */ Symbol("failure");
+    function countSymbols(str) {
+      return punycode.ucs2.decode(str).length;
+    }
+    function at(input, idx) {
+      const c = input[idx];
+      return isNaN(c) ? void 0 : String.fromCodePoint(c);
+    }
+    function isASCIIDigit(c) {
+      return c >= 48 && c <= 57;
+    }
+    function isASCIIAlpha(c) {
+      return c >= 65 && c <= 90 || c >= 97 && c <= 122;
+    }
+    function isASCIIAlphanumeric(c) {
+      return isASCIIAlpha(c) || isASCIIDigit(c);
+    }
+    function isASCIIHex(c) {
+      return isASCIIDigit(c) || c >= 65 && c <= 70 || c >= 97 && c <= 102;
+    }
+    function isSingleDot(buffer) {
+      return buffer === "." || buffer.toLowerCase() === "%2e";
+    }
+    function isDoubleDot(buffer) {
+      buffer = buffer.toLowerCase();
+      return buffer === ".." || buffer === "%2e." || buffer === ".%2e" || buffer === "%2e%2e";
+    }
+    function isWindowsDriveLetterCodePoints(cp1, cp2) {
+      return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124);
+    }
+    function isWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === ":" || string[1] === "|");
+    }
+    function isNormalizedWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === ":";
+    }
+    function containsForbiddenHostCodePoint(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function containsForbiddenHostCodePointExcludingPercent(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function isSpecialScheme(scheme) {
+      return specialSchemes[scheme] !== void 0;
+    }
+    function isSpecial(url2) {
+      return isSpecialScheme(url2.scheme);
+    }
+    function defaultPort(scheme) {
+      return specialSchemes[scheme];
+    }
+    function percentEncode(c) {
+      let hex2 = c.toString(16).toUpperCase();
+      if (hex2.length === 1) {
+        hex2 = "0" + hex2;
+      }
+      return "%" + hex2;
+    }
+    function utf8PercentEncode(c) {
+      const buf = new Buffer(c);
+      let str = "";
+      for (let i = 0; i < buf.length; ++i) {
+        str += percentEncode(buf[i]);
+      }
+      return str;
+    }
+    function utf8PercentDecode(str) {
+      const input = new Buffer(str);
+      const output = [];
+      for (let i = 0; i < input.length; ++i) {
+        if (input[i] !== 37) {
+          output.push(input[i]);
+        } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) {
+          output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16));
+          i += 2;
+        } else {
+          output.push(input[i]);
+        }
+      }
+      return new Buffer(output).toString();
+    }
+    function isC0ControlPercentEncode(c) {
+      return c <= 31 || c > 126;
+    }
+    var extraPathPercentEncodeSet = /* @__PURE__ */ new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]);
+    function isPathPercentEncode(c) {
+      return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c);
+    }
+    var extraUserinfoPercentEncodeSet = /* @__PURE__ */ new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]);
+    function isUserinfoPercentEncode(c) {
+      return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c);
+    }
+    function percentEncodeChar(c, encodeSetPredicate) {
+      const cStr = String.fromCodePoint(c);
+      if (encodeSetPredicate(c)) {
+        return utf8PercentEncode(cStr);
+      }
+      return cStr;
+    }
+    function parseIPv4Number(input) {
+      let R = 10;
+      if (input.length >= 2 && input.charAt(0) === "0" && input.charAt(1).toLowerCase() === "x") {
+        input = input.substring(2);
+        R = 16;
+      } else if (input.length >= 2 && input.charAt(0) === "0") {
+        input = input.substring(1);
+        R = 8;
+      }
+      if (input === "") {
+        return 0;
+      }
+      const regex = R === 10 ? /[^0-9]/ : R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/;
+      if (regex.test(input)) {
+        return failure;
+      }
+      return parseInt(input, R);
+    }
+    function parseIPv4(input) {
+      const parts = input.split(".");
+      if (parts[parts.length - 1] === "") {
+        if (parts.length > 1) {
+          parts.pop();
+        }
+      }
+      if (parts.length > 4) {
+        return input;
+      }
+      const numbers = [];
+      for (const part of parts) {
+        if (part === "") {
+          return input;
+        }
+        const n = parseIPv4Number(part);
+        if (n === failure) {
+          return input;
+        }
+        numbers.push(n);
+      }
+      for (let i = 0; i < numbers.length - 1; ++i) {
+        if (numbers[i] > 255) {
+          return failure;
+        }
+      }
+      if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) {
+        return failure;
+      }
+      let ipv4 = numbers.pop();
+      let counter = 0;
+      for (const n of numbers) {
+        ipv4 += n * Math.pow(256, 3 - counter);
+        ++counter;
+      }
+      return ipv4;
+    }
+    function serializeIPv4(address) {
+      let output = "";
+      let n = address;
+      for (let i = 1; i <= 4; ++i) {
+        output = String(n % 256) + output;
+        if (i !== 4) {
+          output = "." + output;
+        }
+        n = Math.floor(n / 256);
+      }
+      return output;
+    }
+    function parseIPv6(input) {
+      const address = [0, 0, 0, 0, 0, 0, 0, 0];
+      let pieceIndex = 0;
+      let compress = null;
+      let pointer = 0;
+      input = punycode.ucs2.decode(input);
+      if (input[pointer] === 58) {
+        if (input[pointer + 1] !== 58) {
+          return failure;
+        }
+        pointer += 2;
+        ++pieceIndex;
+        compress = pieceIndex;
+      }
+      while (pointer < input.length) {
+        if (pieceIndex === 8) {
+          return failure;
+        }
+        if (input[pointer] === 58) {
+          if (compress !== null) {
+            return failure;
+          }
+          ++pointer;
+          ++pieceIndex;
+          compress = pieceIndex;
+          continue;
+        }
+        let value = 0;
+        let length = 0;
+        while (length < 4 && isASCIIHex(input[pointer])) {
+          value = value * 16 + parseInt(at(input, pointer), 16);
+          ++pointer;
+          ++length;
+        }
+        if (input[pointer] === 46) {
+          if (length === 0) {
+            return failure;
+          }
+          pointer -= length;
+          if (pieceIndex > 6) {
+            return failure;
+          }
+          let numbersSeen = 0;
+          while (input[pointer] !== void 0) {
+            let ipv4Piece = null;
+            if (numbersSeen > 0) {
+              if (input[pointer] === 46 && numbersSeen < 4) {
+                ++pointer;
+              } else {
+                return failure;
+              }
+            }
+            if (!isASCIIDigit(input[pointer])) {
+              return failure;
+            }
+            while (isASCIIDigit(input[pointer])) {
+              const number = parseInt(at(input, pointer));
+              if (ipv4Piece === null) {
+                ipv4Piece = number;
+              } else if (ipv4Piece === 0) {
+                return failure;
+              } else {
+                ipv4Piece = ipv4Piece * 10 + number;
+              }
+              if (ipv4Piece > 255) {
+                return failure;
+              }
+              ++pointer;
+            }
+            address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;
+            ++numbersSeen;
+            if (numbersSeen === 2 || numbersSeen === 4) {
+              ++pieceIndex;
+            }
+          }
+          if (numbersSeen !== 4) {
+            return failure;
+          }
+          break;
+        } else if (input[pointer] === 58) {
+          ++pointer;
+          if (input[pointer] === void 0) {
+            return failure;
+          }
+        } else if (input[pointer] !== void 0) {
+          return failure;
+        }
+        address[pieceIndex] = value;
+        ++pieceIndex;
+      }
+      if (compress !== null) {
+        let swaps = pieceIndex - compress;
+        pieceIndex = 7;
+        while (pieceIndex !== 0 && swaps > 0) {
+          const temp = address[compress + swaps - 1];
+          address[compress + swaps - 1] = address[pieceIndex];
+          address[pieceIndex] = temp;
+          --pieceIndex;
+          --swaps;
+        }
+      } else if (compress === null && pieceIndex !== 8) {
+        return failure;
+      }
+      return address;
+    }
+    function serializeIPv6(address) {
+      let output = "";
+      const seqResult = findLongestZeroSequence(address);
+      const compress = seqResult.idx;
+      let ignore0 = false;
+      for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) {
+        if (ignore0 && address[pieceIndex] === 0) {
+          continue;
+        } else if (ignore0) {
+          ignore0 = false;
+        }
+        if (compress === pieceIndex) {
+          const separator = pieceIndex === 0 ? "::" : ":";
+          output += separator;
+          ignore0 = true;
+          continue;
+        }
+        output += address[pieceIndex].toString(16);
+        if (pieceIndex !== 7) {
+          output += ":";
+        }
+      }
+      return output;
+    }
+    function parseHost(input, isSpecialArg) {
+      if (input[0] === "[") {
+        if (input[input.length - 1] !== "]") {
+          return failure;
+        }
+        return parseIPv6(input.substring(1, input.length - 1));
+      }
+      if (!isSpecialArg) {
+        return parseOpaqueHost(input);
+      }
+      const domain = utf8PercentDecode(input);
+      const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false);
+      if (asciiDomain === null) {
+        return failure;
+      }
+      if (containsForbiddenHostCodePoint(asciiDomain)) {
+        return failure;
+      }
+      const ipv4Host = parseIPv4(asciiDomain);
+      if (typeof ipv4Host === "number" || ipv4Host === failure) {
+        return ipv4Host;
+      }
+      return asciiDomain;
+    }
+    function parseOpaqueHost(input) {
+      if (containsForbiddenHostCodePointExcludingPercent(input)) {
+        return failure;
+      }
+      let output = "";
+      const decoded = punycode.ucs2.decode(input);
+      for (let i = 0; i < decoded.length; ++i) {
+        output += percentEncodeChar(decoded[i], isC0ControlPercentEncode);
+      }
+      return output;
+    }
+    function findLongestZeroSequence(arr) {
+      let maxIdx = null;
+      let maxLen = 1;
+      let currStart = null;
+      let currLen = 0;
+      for (let i = 0; i < arr.length; ++i) {
+        if (arr[i] !== 0) {
+          if (currLen > maxLen) {
+            maxIdx = currStart;
+            maxLen = currLen;
+          }
+          currStart = null;
+          currLen = 0;
+        } else {
+          if (currStart === null) {
+            currStart = i;
+          }
+          ++currLen;
+        }
+      }
+      if (currLen > maxLen) {
+        maxIdx = currStart;
+        maxLen = currLen;
+      }
+      return {
+        idx: maxIdx,
+        len: maxLen
+      };
+    }
+    function serializeHost(host) {
+      if (typeof host === "number") {
+        return serializeIPv4(host);
+      }
+      if (host instanceof Array) {
+        return "[" + serializeIPv6(host) + "]";
+      }
+      return host;
+    }
+    function trimControlChars(url2) {
+      return url2.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g, "");
+    }
+    function trimTabAndNewline(url2) {
+      return url2.replace(/\u0009|\u000A|\u000D/g, "");
+    }
+    function shortenPath(url2) {
+      const path23 = url2.path;
+      if (path23.length === 0) {
+        return;
+      }
+      if (url2.scheme === "file" && path23.length === 1 && isNormalizedWindowsDriveLetter(path23[0])) {
+        return;
+      }
+      path23.pop();
+    }
+    function includesCredentials(url2) {
+      return url2.username !== "" || url2.password !== "";
+    }
+    function cannotHaveAUsernamePasswordPort(url2) {
+      return url2.host === null || url2.host === "" || url2.cannotBeABaseURL || url2.scheme === "file";
+    }
+    function isNormalizedWindowsDriveLetter(string) {
+      return /^[A-Za-z]:$/.test(string);
+    }
+    function URLStateMachine(input, base, encodingOverride, url2, stateOverride) {
+      this.pointer = 0;
+      this.input = input;
+      this.base = base || null;
+      this.encodingOverride = encodingOverride || "utf-8";
+      this.stateOverride = stateOverride;
+      this.url = url2;
+      this.failure = false;
+      this.parseError = false;
+      if (!this.url) {
+        this.url = {
+          scheme: "",
+          username: "",
+          password: "",
+          host: null,
+          port: null,
+          path: [],
+          query: null,
+          fragment: null,
+          cannotBeABaseURL: false
+        };
+        const res2 = trimControlChars(this.input);
+        if (res2 !== this.input) {
+          this.parseError = true;
+        }
+        this.input = res2;
+      }
+      const res = trimTabAndNewline(this.input);
+      if (res !== this.input) {
+        this.parseError = true;
+      }
+      this.input = res;
+      this.state = stateOverride || "scheme start";
+      this.buffer = "";
+      this.atFlag = false;
+      this.arrFlag = false;
+      this.passwordTokenSeenFlag = false;
+      this.input = punycode.ucs2.decode(this.input);
+      for (; this.pointer <= this.input.length; ++this.pointer) {
+        const c = this.input[this.pointer];
+        const cStr = isNaN(c) ? void 0 : String.fromCodePoint(c);
+        const ret = this["parse " + this.state](c, cStr);
+        if (!ret) {
+          break;
+        } else if (ret === failure) {
+          this.failure = true;
+          break;
+        }
+      }
+    }
+    URLStateMachine.prototype["parse scheme start"] = function parseSchemeStart(c, cStr) {
+      if (isASCIIAlpha(c)) {
+        this.buffer += cStr.toLowerCase();
+        this.state = "scheme";
+      } else if (!this.stateOverride) {
+        this.state = "no scheme";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse scheme"] = function parseScheme(c, cStr) {
+      if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) {
+        this.buffer += cStr.toLowerCase();
+      } else if (c === 58) {
+        if (this.stateOverride) {
+          if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === "file") {
+            return false;
+          }
+          if (this.url.scheme === "file" && (this.url.host === "" || this.url.host === null)) {
+            return false;
+          }
+        }
+        this.url.scheme = this.buffer;
+        this.buffer = "";
+        if (this.stateOverride) {
+          return false;
+        }
+        if (this.url.scheme === "file") {
+          if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) {
+            this.parseError = true;
+          }
+          this.state = "file";
+        } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) {
+          this.state = "special relative or authority";
+        } else if (isSpecial(this.url)) {
+          this.state = "special authority slashes";
+        } else if (this.input[this.pointer + 1] === 47) {
+          this.state = "path or authority";
+          ++this.pointer;
+        } else {
+          this.url.cannotBeABaseURL = true;
+          this.url.path.push("");
+          this.state = "cannot-be-a-base-URL path";
+        }
+      } else if (!this.stateOverride) {
+        this.buffer = "";
+        this.state = "no scheme";
+        this.pointer = -1;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse no scheme"] = function parseNoScheme(c) {
+      if (this.base === null || this.base.cannotBeABaseURL && c !== 35) {
+        return failure;
+      } else if (this.base.cannotBeABaseURL && c === 35) {
+        this.url.scheme = this.base.scheme;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.url.cannotBeABaseURL = true;
+        this.state = "fragment";
+      } else if (this.base.scheme === "file") {
+        this.state = "file";
+        --this.pointer;
+      } else {
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special relative or authority"] = function parseSpecialRelativeOrAuthority(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path or authority"] = function parsePathOrAuthority(c) {
+      if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative"] = function parseRelative(c) {
+      this.url.scheme = this.base.scheme;
+      if (isNaN(c)) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+      } else if (c === 47) {
+        this.state = "relative slash";
+      } else if (c === 63) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (isSpecial(this.url) && c === 92) {
+        this.parseError = true;
+        this.state = "relative slash";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice(0, this.base.path.length - 1);
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative slash"] = function parseRelativeSlash(c) {
+      if (isSpecial(this.url) && (c === 47 || c === 92)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "special authority ignore slashes";
+      } else if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority slashes"] = function parseSpecialAuthoritySlashes(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "special authority ignore slashes";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority ignore slashes"] = function parseSpecialAuthorityIgnoreSlashes(c) {
+      if (c !== 47 && c !== 92) {
+        this.state = "authority";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse authority"] = function parseAuthority(c, cStr) {
+      if (c === 64) {
+        this.parseError = true;
+        if (this.atFlag) {
+          this.buffer = "%40" + this.buffer;
+        }
+        this.atFlag = true;
+        const len = countSymbols(this.buffer);
+        for (let pointer = 0; pointer < len; ++pointer) {
+          const codePoint = this.buffer.codePointAt(pointer);
+          if (codePoint === 58 && !this.passwordTokenSeenFlag) {
+            this.passwordTokenSeenFlag = true;
+            continue;
+          }
+          const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode);
+          if (this.passwordTokenSeenFlag) {
+            this.url.password += encodedCodePoints;
+          } else {
+            this.url.username += encodedCodePoints;
+          }
+        }
+        this.buffer = "";
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        if (this.atFlag && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        this.pointer -= countSymbols(this.buffer) + 1;
+        this.buffer = "";
+        this.state = "host";
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse hostname"] = URLStateMachine.prototype["parse host"] = function parseHostName(c, cStr) {
+      if (this.stateOverride && this.url.scheme === "file") {
+        --this.pointer;
+        this.state = "file host";
+      } else if (c === 58 && !this.arrFlag) {
+        if (this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "port";
+        if (this.stateOverride === "hostname") {
+          return false;
+        }
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        --this.pointer;
+        if (isSpecial(this.url) && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        } else if (this.stateOverride && this.buffer === "" && (includesCredentials(this.url) || this.url.port !== null)) {
+          this.parseError = true;
+          return false;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "path start";
+        if (this.stateOverride) {
+          return false;
+        }
+      } else {
+        if (c === 91) {
+          this.arrFlag = true;
+        } else if (c === 93) {
+          this.arrFlag = false;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse port"] = function parsePort(c, cStr) {
+      if (isASCIIDigit(c)) {
+        this.buffer += cStr;
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92 || this.stateOverride) {
+        if (this.buffer !== "") {
+          const port = parseInt(this.buffer);
+          if (port > Math.pow(2, 16) - 1) {
+            this.parseError = true;
+            return failure;
+          }
+          this.url.port = port === defaultPort(this.url.scheme) ? null : port;
+          this.buffer = "";
+        }
+        if (this.stateOverride) {
+          return false;
+        }
+        this.state = "path start";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    var fileOtherwiseCodePoints = /* @__PURE__ */ new Set([47, 92, 63, 35]);
+    URLStateMachine.prototype["parse file"] = function parseFile(c) {
+      this.url.scheme = "file";
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file slash";
+      } else if (this.base !== null && this.base.scheme === "file") {
+        if (isNaN(c)) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+        } else if (c === 63) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = "";
+          this.state = "query";
+        } else if (c === 35) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+          this.url.fragment = "";
+          this.state = "fragment";
+        } else {
+          if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points
+          !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) || this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points
+          !fileOtherwiseCodePoints.has(this.input[this.pointer + 2])) {
+            this.url.host = this.base.host;
+            this.url.path = this.base.path.slice();
+            shortenPath(this.url);
+          } else {
+            this.parseError = true;
+          }
+          this.state = "path";
+          --this.pointer;
+        }
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file slash"] = function parseFileSlash(c) {
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file host";
+      } else {
+        if (this.base !== null && this.base.scheme === "file") {
+          if (isNormalizedWindowsDriveLetterString(this.base.path[0])) {
+            this.url.path.push(this.base.path[0]);
+          } else {
+            this.url.host = this.base.host;
+          }
+        }
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file host"] = function parseFileHost(c, cStr) {
+      if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) {
+        --this.pointer;
+        if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) {
+          this.parseError = true;
+          this.state = "path";
+        } else if (this.buffer === "") {
+          this.url.host = "";
+          if (this.stateOverride) {
+            return false;
+          }
+          this.state = "path start";
+        } else {
+          let host = parseHost(this.buffer, isSpecial(this.url));
+          if (host === failure) {
+            return failure;
+          }
+          if (host === "localhost") {
+            host = "";
+          }
+          this.url.host = host;
+          if (this.stateOverride) {
+            return false;
+          }
+          this.buffer = "";
+          this.state = "path start";
+        }
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path start"] = function parsePathStart(c) {
+      if (isSpecial(this.url)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "path";
+        if (c !== 47 && c !== 92) {
+          --this.pointer;
+        }
+      } else if (!this.stateOverride && c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (!this.stateOverride && c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (c !== void 0) {
+        this.state = "path";
+        if (c !== 47) {
+          --this.pointer;
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path"] = function parsePath(c) {
+      if (isNaN(c) || c === 47 || isSpecial(this.url) && c === 92 || !this.stateOverride && (c === 63 || c === 35)) {
+        if (isSpecial(this.url) && c === 92) {
+          this.parseError = true;
+        }
+        if (isDoubleDot(this.buffer)) {
+          shortenPath(this.url);
+          if (c !== 47 && !(isSpecial(this.url) && c === 92)) {
+            this.url.path.push("");
+          }
+        } else if (isSingleDot(this.buffer) && c !== 47 && !(isSpecial(this.url) && c === 92)) {
+          this.url.path.push("");
+        } else if (!isSingleDot(this.buffer)) {
+          if (this.url.scheme === "file" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) {
+            if (this.url.host !== "" && this.url.host !== null) {
+              this.parseError = true;
+              this.url.host = "";
+            }
+            this.buffer = this.buffer[0] + ":";
+          }
+          this.url.path.push(this.buffer);
+        }
+        this.buffer = "";
+        if (this.url.scheme === "file" && (c === void 0 || c === 63 || c === 35)) {
+          while (this.url.path.length > 1 && this.url.path[0] === "") {
+            this.parseError = true;
+            this.url.path.shift();
+          }
+        }
+        if (c === 63) {
+          this.url.query = "";
+          this.state = "query";
+        }
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += percentEncodeChar(c, isPathPercentEncode);
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse cannot-be-a-base-URL path"] = function parseCannotBeABaseURLPath(c) {
+      if (c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else {
+        if (!isNaN(c) && c !== 37) {
+          this.parseError = true;
+        }
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        if (!isNaN(c)) {
+          this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode);
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse query"] = function parseQuery(c, cStr) {
+      if (isNaN(c) || !this.stateOverride && c === 35) {
+        if (!isSpecial(this.url) || this.url.scheme === "ws" || this.url.scheme === "wss") {
+          this.encodingOverride = "utf-8";
+        }
+        const buffer = new Buffer(this.buffer);
+        for (let i = 0; i < buffer.length; ++i) {
+          if (buffer[i] < 33 || buffer[i] > 126 || buffer[i] === 34 || buffer[i] === 35 || buffer[i] === 60 || buffer[i] === 62) {
+            this.url.query += percentEncode(buffer[i]);
+          } else {
+            this.url.query += String.fromCodePoint(buffer[i]);
+          }
+        }
+        this.buffer = "";
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse fragment"] = function parseFragment(c) {
+      if (isNaN(c)) {
+      } else if (c === 0) {
+        this.parseError = true;
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode);
+      }
+      return true;
+    };
+    function serializeURL(url2, excludeFragment) {
+      let output = url2.scheme + ":";
+      if (url2.host !== null) {
+        output += "//";
+        if (url2.username !== "" || url2.password !== "") {
+          output += url2.username;
+          if (url2.password !== "") {
+            output += ":" + url2.password;
+          }
+          output += "@";
+        }
+        output += serializeHost(url2.host);
+        if (url2.port !== null) {
+          output += ":" + url2.port;
+        }
+      } else if (url2.host === null && url2.scheme === "file") {
+        output += "//";
+      }
+      if (url2.cannotBeABaseURL) {
+        output += url2.path[0];
+      } else {
+        for (const string of url2.path) {
+          output += "/" + string;
+        }
+      }
+      if (url2.query !== null) {
+        output += "?" + url2.query;
+      }
+      if (!excludeFragment && url2.fragment !== null) {
+        output += "#" + url2.fragment;
+      }
+      return output;
+    }
+    function serializeOrigin(tuple) {
+      let result = tuple.scheme + "://";
+      result += serializeHost(tuple.host);
+      if (tuple.port !== null) {
+        result += ":" + tuple.port;
+      }
+      return result;
+    }
+    module2.exports.serializeURL = serializeURL;
+    module2.exports.serializeURLOrigin = function(url2) {
+      switch (url2.scheme) {
+        case "blob":
+          try {
+            return module2.exports.serializeURLOrigin(module2.exports.parseURL(url2.path[0]));
+          } catch (e) {
+            return "null";
+          }
+        case "ftp":
+        case "gopher":
+        case "http":
+        case "https":
+        case "ws":
+        case "wss":
+          return serializeOrigin({
+            scheme: url2.scheme,
+            host: url2.host,
+            port: url2.port
+          });
+        case "file":
+          return "file://";
+        default:
+          return "null";
+      }
+    };
+    module2.exports.basicURLParse = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride);
+      if (usm.failure) {
+        return "failure";
+      }
+      return usm.url;
+    };
+    module2.exports.setTheUsername = function(url2, username) {
+      url2.username = "";
+      const decoded = punycode.ucs2.decode(username);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.setThePassword = function(url2, password) {
+      url2.password = "";
+      const decoded = punycode.ucs2.decode(password);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.serializeHost = serializeHost;
+    module2.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort;
+    module2.exports.serializeInteger = function(integer) {
+      return String(integer);
+    };
+    module2.exports.parseURL = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      return module2.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride });
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL-impl.js
+var require_URL_impl = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL-impl.js"(exports2) {
+    "use strict";
+    var usm = require_url_state_machine();
+    exports2.implementation = class URLImpl {
+      constructor(constructorArgs) {
+        const url2 = constructorArgs[0];
+        const base = constructorArgs[1];
+        let parsedBase = null;
+        if (base !== void 0) {
+          parsedBase = usm.basicURLParse(base);
+          if (parsedBase === "failure") {
+            throw new TypeError("Invalid base URL");
+          }
+        }
+        const parsedURL = usm.basicURLParse(url2, { baseURL: parsedBase });
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get href() {
+        return usm.serializeURL(this._url);
+      }
+      set href(v) {
+        const parsedURL = usm.basicURLParse(v);
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get origin() {
+        return usm.serializeURLOrigin(this._url);
+      }
+      get protocol() {
+        return this._url.scheme + ":";
+      }
+      set protocol(v) {
+        usm.basicURLParse(v + ":", { url: this._url, stateOverride: "scheme start" });
+      }
+      get username() {
+        return this._url.username;
+      }
+      set username(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setTheUsername(this._url, v);
+      }
+      get password() {
+        return this._url.password;
+      }
+      set password(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setThePassword(this._url, v);
+      }
+      get host() {
+        const url2 = this._url;
+        if (url2.host === null) {
+          return "";
+        }
+        if (url2.port === null) {
+          return usm.serializeHost(url2.host);
+        }
+        return usm.serializeHost(url2.host) + ":" + usm.serializeInteger(url2.port);
+      }
+      set host(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "host" });
+      }
+      get hostname() {
+        if (this._url.host === null) {
+          return "";
+        }
+        return usm.serializeHost(this._url.host);
+      }
+      set hostname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "hostname" });
+      }
+      get port() {
+        if (this._url.port === null) {
+          return "";
+        }
+        return usm.serializeInteger(this._url.port);
+      }
+      set port(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        if (v === "") {
+          this._url.port = null;
+        } else {
+          usm.basicURLParse(v, { url: this._url, stateOverride: "port" });
+        }
+      }
+      get pathname() {
+        if (this._url.cannotBeABaseURL) {
+          return this._url.path[0];
+        }
+        if (this._url.path.length === 0) {
+          return "";
+        }
+        return "/" + this._url.path.join("/");
+      }
+      set pathname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        this._url.path = [];
+        usm.basicURLParse(v, { url: this._url, stateOverride: "path start" });
+      }
+      get search() {
+        if (this._url.query === null || this._url.query === "") {
+          return "";
+        }
+        return "?" + this._url.query;
+      }
+      set search(v) {
+        const url2 = this._url;
+        if (v === "") {
+          url2.query = null;
+          return;
+        }
+        const input = v[0] === "?" ? v.substring(1) : v;
+        url2.query = "";
+        usm.basicURLParse(input, { url: url2, stateOverride: "query" });
+      }
+      get hash() {
+        if (this._url.fragment === null || this._url.fragment === "") {
+          return "";
+        }
+        return "#" + this._url.fragment;
+      }
+      set hash(v) {
+        if (v === "") {
+          this._url.fragment = null;
+          return;
+        }
+        const input = v[0] === "#" ? v.substring(1) : v;
+        this._url.fragment = "";
+        usm.basicURLParse(input, { url: this._url, stateOverride: "fragment" });
+      }
+      toJSON() {
+        return this.href;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL.js
+var require_URL = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL.js"(exports2, module2) {
+    "use strict";
+    var conversions = require_lib7();
+    var utils = require_utils3();
+    var Impl = require_URL_impl();
+    var impl = utils.implSymbol;
+    function URL3(url2) {
+      if (!this || this[impl] || !(this instanceof URL3)) {
+        throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");
+      }
+      if (arguments.length < 1) {
+        throw new TypeError("Failed to construct 'URL': 1 argument required, but only " + arguments.length + " present.");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 2; ++i) {
+        args[i] = arguments[i];
+      }
+      args[0] = conversions["USVString"](args[0]);
+      if (args[1] !== void 0) {
+        args[1] = conversions["USVString"](args[1]);
+      }
+      module2.exports.setup(this, args);
+    }
+    URL3.prototype.toJSON = function toJSON() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 0; ++i) {
+        args[i] = arguments[i];
+      }
+      return this[impl].toJSON.apply(this[impl], args);
+    };
+    Object.defineProperty(URL3.prototype, "href", {
+      get() {
+        return this[impl].href;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].href = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    URL3.prototype.toString = function() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      return this.href;
+    };
+    Object.defineProperty(URL3.prototype, "origin", {
+      get() {
+        return this[impl].origin;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "protocol", {
+      get() {
+        return this[impl].protocol;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].protocol = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "username", {
+      get() {
+        return this[impl].username;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].username = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "password", {
+      get() {
+        return this[impl].password;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].password = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "host", {
+      get() {
+        return this[impl].host;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].host = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hostname", {
+      get() {
+        return this[impl].hostname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hostname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "port", {
+      get() {
+        return this[impl].port;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].port = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "pathname", {
+      get() {
+        return this[impl].pathname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].pathname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "search", {
+      get() {
+        return this[impl].search;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].search = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hash", {
+      get() {
+        return this[impl].hash;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hash = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    module2.exports = {
+      is(obj) {
+        return !!obj && obj[impl] instanceof Impl.implementation;
+      },
+      create(constructorArgs, privateData) {
+        let obj = Object.create(URL3.prototype);
+        this.setup(obj, constructorArgs, privateData);
+        return obj;
+      },
+      setup(obj, constructorArgs, privateData) {
+        if (!privateData) privateData = {};
+        privateData.wrapper = obj;
+        obj[impl] = new Impl.implementation(constructorArgs, privateData);
+        obj[impl][utils.wrapperSymbol] = obj;
+      },
+      interface: URL3,
+      expose: {
+        Window: { URL: URL3 },
+        Worker: { URL: URL3 }
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/public-api.js
+var require_public_api = __commonJS({
+  "../../../node_modules/whatwg-url/lib/public-api.js"(exports2) {
+    "use strict";
+    exports2.URL = require_URL().interface;
+    exports2.serializeURL = require_url_state_machine().serializeURL;
+    exports2.serializeURLOrigin = require_url_state_machine().serializeURLOrigin;
+    exports2.basicURLParse = require_url_state_machine().basicURLParse;
+    exports2.setTheUsername = require_url_state_machine().setTheUsername;
+    exports2.setThePassword = require_url_state_machine().setThePassword;
+    exports2.serializeHost = require_url_state_machine().serializeHost;
+    exports2.serializeInteger = require_url_state_machine().serializeInteger;
+    exports2.parseURL = require_url_state_machine().parseURL;
+  }
+});
+
+// ../../../node_modules/safer-buffer/safer.js
+var require_safer = __commonJS({
+  "../../../node_modules/safer-buffer/safer.js"(exports2, module2) {
+    "use strict";
+    var buffer = require("buffer");
+    var Buffer2 = buffer.Buffer;
+    var safer = {};
+    var key;
+    for (key in buffer) {
+      if (!buffer.hasOwnProperty(key)) continue;
+      if (key === "SlowBuffer" || key === "Buffer") continue;
+      safer[key] = buffer[key];
+    }
+    var Safer = safer.Buffer = {};
+    for (key in Buffer2) {
+      if (!Buffer2.hasOwnProperty(key)) continue;
+      if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue;
+      Safer[key] = Buffer2[key];
+    }
+    safer.Buffer.prototype = Buffer2.prototype;
+    if (!Safer.from || Safer.from === Uint8Array.from) {
+      Safer.from = function(value, encodingOrOffset, length) {
+        if (typeof value === "number") {
+          throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value);
+        }
+        if (value && typeof value.length === "undefined") {
+          throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value);
+        }
+        return Buffer2(value, encodingOrOffset, length);
+      };
+    }
+    if (!Safer.alloc) {
+      Safer.alloc = function(size, fill, encoding) {
+        if (typeof size !== "number") {
+          throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size);
+        }
+        if (size < 0 || size >= 2 * (1 << 30)) {
+          throw new RangeError('The value "' + size + '" is invalid for option "size"');
+        }
+        var buf = Buffer2(size);
+        if (!fill || fill.length === 0) {
+          buf.fill(0);
+        } else if (typeof encoding === "string") {
+          buf.fill(fill, encoding);
+        } else {
+          buf.fill(fill);
+        }
+        return buf;
+      };
+    }
+    if (!safer.kStringMaxLength) {
+      try {
+        safer.kStringMaxLength = process.binding("buffer").kStringMaxLength;
+      } catch (e) {
+      }
+    }
+    if (!safer.constants) {
+      safer.constants = {
+        MAX_LENGTH: safer.kMaxLength
+      };
+      if (safer.kStringMaxLength) {
+        safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength;
+      }
+    }
+    module2.exports = safer;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js
+var require_bom_handling = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js"(exports2) {
+    "use strict";
+    var BOMChar = "\uFEFF";
+    exports2.PrependBOM = PrependBOMWrapper;
+    function PrependBOMWrapper(encoder, options) {
+      this.encoder = encoder;
+      this.addBOM = true;
+    }
+    PrependBOMWrapper.prototype.write = function(str) {
+      if (this.addBOM) {
+        str = BOMChar + str;
+        this.addBOM = false;
+      }
+      return this.encoder.write(str);
+    };
+    PrependBOMWrapper.prototype.end = function() {
+      return this.encoder.end();
+    };
+    exports2.StripBOM = StripBOMWrapper;
+    function StripBOMWrapper(decoder2, options) {
+      this.decoder = decoder2;
+      this.pass = false;
+      this.options = options || {};
+    }
+    StripBOMWrapper.prototype.write = function(buf) {
+      var res = this.decoder.write(buf);
+      if (this.pass || !res)
+        return res;
+      if (res[0] === BOMChar) {
+        res = res.slice(1);
+        if (typeof this.options.stripBOM === "function")
+          this.options.stripBOM();
+      }
+      this.pass = true;
+      return res;
+    };
+    StripBOMWrapper.prototype.end = function() {
+      return this.decoder.end();
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js
+var require_internal = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = {
+      // Encodings
+      utf8: { type: "_internal", bomAware: true },
+      cesu8: { type: "_internal", bomAware: true },
+      unicode11utf8: "utf8",
+      ucs2: { type: "_internal", bomAware: true },
+      utf16le: "ucs2",
+      binary: { type: "_internal" },
+      base64: { type: "_internal" },
+      hex: { type: "_internal" },
+      // Codec.
+      _internal: InternalCodec
+    };
+    function InternalCodec(codecOptions, iconv) {
+      this.enc = codecOptions.encodingName;
+      this.bomAware = codecOptions.bomAware;
+      if (this.enc === "base64")
+        this.encoder = InternalEncoderBase64;
+      else if (this.enc === "cesu8") {
+        this.enc = "utf8";
+        this.encoder = InternalEncoderCesu8;
+        if (Buffer2.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") {
+          this.decoder = InternalDecoderCesu8;
+          this.defaultCharUnicode = iconv.defaultCharUnicode;
+        }
+      }
+    }
+    InternalCodec.prototype.encoder = InternalEncoder;
+    InternalCodec.prototype.decoder = InternalDecoder;
+    var StringDecoder = require("string_decoder").StringDecoder;
+    if (!StringDecoder.prototype.end)
+      StringDecoder.prototype.end = function() {
+      };
+    function InternalDecoder(options, codec) {
+      this.decoder = new StringDecoder(codec.enc);
+    }
+    InternalDecoder.prototype.write = function(buf) {
+      if (!Buffer2.isBuffer(buf)) {
+        buf = Buffer2.from(buf);
+      }
+      return this.decoder.write(buf);
+    };
+    InternalDecoder.prototype.end = function() {
+      return this.decoder.end();
+    };
+    function InternalEncoder(options, codec) {
+      this.enc = codec.enc;
+    }
+    InternalEncoder.prototype.write = function(str) {
+      return Buffer2.from(str, this.enc);
+    };
+    InternalEncoder.prototype.end = function() {
+    };
+    function InternalEncoderBase64(options, codec) {
+      this.prevStr = "";
+    }
+    InternalEncoderBase64.prototype.write = function(str) {
+      str = this.prevStr + str;
+      var completeQuads = str.length - str.length % 4;
+      this.prevStr = str.slice(completeQuads);
+      str = str.slice(0, completeQuads);
+      return Buffer2.from(str, "base64");
+    };
+    InternalEncoderBase64.prototype.end = function() {
+      return Buffer2.from(this.prevStr, "base64");
+    };
+    function InternalEncoderCesu8(options, codec) {
+    }
+    InternalEncoderCesu8.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length * 3), bufIdx = 0;
+      for (var i = 0; i < str.length; i++) {
+        var charCode = str.charCodeAt(i);
+        if (charCode < 128)
+          buf[bufIdx++] = charCode;
+        else if (charCode < 2048) {
+          buf[bufIdx++] = 192 + (charCode >>> 6);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        } else {
+          buf[bufIdx++] = 224 + (charCode >>> 12);
+          buf[bufIdx++] = 128 + (charCode >>> 6 & 63);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        }
+      }
+      return buf.slice(0, bufIdx);
+    };
+    InternalEncoderCesu8.prototype.end = function() {
+    };
+    function InternalDecoderCesu8(options, codec) {
+      this.acc = 0;
+      this.contBytes = 0;
+      this.accBytes = 0;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+    }
+    InternalDecoderCesu8.prototype.write = function(buf) {
+      var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes, res = "";
+      for (var i = 0; i < buf.length; i++) {
+        var curByte = buf[i];
+        if ((curByte & 192) !== 128) {
+          if (contBytes > 0) {
+            res += this.defaultCharUnicode;
+            contBytes = 0;
+          }
+          if (curByte < 128) {
+            res += String.fromCharCode(curByte);
+          } else if (curByte < 224) {
+            acc = curByte & 31;
+            contBytes = 1;
+            accBytes = 1;
+          } else if (curByte < 240) {
+            acc = curByte & 15;
+            contBytes = 2;
+            accBytes = 1;
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        } else {
+          if (contBytes > 0) {
+            acc = acc << 6 | curByte & 63;
+            contBytes--;
+            accBytes++;
+            if (contBytes === 0) {
+              if (accBytes === 2 && acc < 128 && acc > 0)
+                res += this.defaultCharUnicode;
+              else if (accBytes === 3 && acc < 2048)
+                res += this.defaultCharUnicode;
+              else
+                res += String.fromCharCode(acc);
+            }
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        }
+      }
+      this.acc = acc;
+      this.contBytes = contBytes;
+      this.accBytes = accBytes;
+      return res;
+    };
+    InternalDecoderCesu8.prototype.end = function() {
+      var res = 0;
+      if (this.contBytes > 0)
+        res += this.defaultCharUnicode;
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js
+var require_utf32 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._utf32 = Utf32Codec;
+    function Utf32Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+      this.bomAware = true;
+      this.isLE = codecOptions.isLE;
+    }
+    exports2.utf32le = { type: "_utf32", isLE: true };
+    exports2.utf32be = { type: "_utf32", isLE: false };
+    exports2.ucs4le = "utf32le";
+    exports2.ucs4be = "utf32be";
+    Utf32Codec.prototype.encoder = Utf32Encoder;
+    Utf32Codec.prototype.decoder = Utf32Decoder;
+    function Utf32Encoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.highSurrogate = 0;
+    }
+    Utf32Encoder.prototype.write = function(str) {
+      var src = Buffer2.from(str, "ucs2");
+      var dst = Buffer2.alloc(src.length * 2);
+      var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE;
+      var offset = 0;
+      for (var i = 0; i < src.length; i += 2) {
+        var code = src.readUInt16LE(i);
+        var isHighSurrogate = 55296 <= code && code < 56320;
+        var isLowSurrogate = 56320 <= code && code < 57344;
+        if (this.highSurrogate) {
+          if (isHighSurrogate || !isLowSurrogate) {
+            write32.call(dst, this.highSurrogate, offset);
+            offset += 4;
+          } else {
+            var codepoint = (this.highSurrogate - 55296 << 10 | code - 56320) + 65536;
+            write32.call(dst, codepoint, offset);
+            offset += 4;
+            this.highSurrogate = 0;
+            continue;
+          }
+        }
+        if (isHighSurrogate)
+          this.highSurrogate = code;
+        else {
+          write32.call(dst, code, offset);
+          offset += 4;
+          this.highSurrogate = 0;
+        }
+      }
+      if (offset < dst.length)
+        dst = dst.slice(0, offset);
+      return dst;
+    };
+    Utf32Encoder.prototype.end = function() {
+      if (!this.highSurrogate)
+        return;
+      var buf = Buffer2.alloc(4);
+      if (this.isLE)
+        buf.writeUInt32LE(this.highSurrogate, 0);
+      else
+        buf.writeUInt32BE(this.highSurrogate, 0);
+      this.highSurrogate = 0;
+      return buf;
+    };
+    function Utf32Decoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.badChar = codec.iconv.defaultCharUnicode.charCodeAt(0);
+      this.overflow = [];
+    }
+    Utf32Decoder.prototype.write = function(src) {
+      if (src.length === 0)
+        return "";
+      var i = 0;
+      var codepoint = 0;
+      var dst = Buffer2.alloc(src.length + 4);
+      var offset = 0;
+      var isLE = this.isLE;
+      var overflow = this.overflow;
+      var badChar = this.badChar;
+      if (overflow.length > 0) {
+        for (; i < src.length && overflow.length < 4; i++)
+          overflow.push(src[i]);
+        if (overflow.length === 4) {
+          if (isLE) {
+            codepoint = overflow[i] | overflow[i + 1] << 8 | overflow[i + 2] << 16 | overflow[i + 3] << 24;
+          } else {
+            codepoint = overflow[i + 3] | overflow[i + 2] << 8 | overflow[i + 1] << 16 | overflow[i] << 24;
+          }
+          overflow.length = 0;
+          offset = _writeCodepoint(dst, offset, codepoint, badChar);
+        }
+      }
+      for (; i < src.length - 3; i += 4) {
+        if (isLE) {
+          codepoint = src[i] | src[i + 1] << 8 | src[i + 2] << 16 | src[i + 3] << 24;
+        } else {
+          codepoint = src[i + 3] | src[i + 2] << 8 | src[i + 1] << 16 | src[i] << 24;
+        }
+        offset = _writeCodepoint(dst, offset, codepoint, badChar);
+      }
+      for (; i < src.length; i++) {
+        overflow.push(src[i]);
+      }
+      return dst.slice(0, offset).toString("ucs2");
+    };
+    function _writeCodepoint(dst, offset, codepoint, badChar) {
+      if (codepoint < 0 || codepoint > 1114111) {
+        codepoint = badChar;
+      }
+      if (codepoint >= 65536) {
+        codepoint -= 65536;
+        var high = 55296 | codepoint >> 10;
+        dst[offset++] = high & 255;
+        dst[offset++] = high >> 8;
+        var codepoint = 56320 | codepoint & 1023;
+      }
+      dst[offset++] = codepoint & 255;
+      dst[offset++] = codepoint >> 8;
+      return offset;
+    }
+    Utf32Decoder.prototype.end = function() {
+      this.overflow.length = 0;
+    };
+    exports2.utf32 = Utf32AutoCodec;
+    exports2.ucs4 = "utf32";
+    function Utf32AutoCodec(options, iconv) {
+      this.iconv = iconv;
+    }
+    Utf32AutoCodec.prototype.encoder = Utf32AutoEncoder;
+    Utf32AutoCodec.prototype.decoder = Utf32AutoDecoder;
+    function Utf32AutoEncoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder(options.defaultEncoding || "utf-32le", options);
+    }
+    Utf32AutoEncoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf32AutoEncoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf32AutoDecoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf32AutoDecoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 32)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf32AutoDecoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var invalidLE = 0, invalidBE = 0;
+      var bmpCharsLE = 0, bmpCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 4) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254 && b[2] === 0 && b[3] === 0) {
+                  return "utf-32le";
+                }
+                if (b[0] === 0 && b[1] === 0 && b[2] === 254 && b[3] === 255) {
+                  return "utf-32be";
+                }
+              }
+              if (b[0] !== 0 || b[1] > 16) invalidBE++;
+              if (b[3] !== 0 || b[2] > 16) invalidLE++;
+              if (b[0] === 0 && b[1] === 0 && (b[2] !== 0 || b[3] !== 0)) bmpCharsBE++;
+              if ((b[0] !== 0 || b[1] !== 0) && b[2] === 0 && b[3] === 0) bmpCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (bmpCharsBE - invalidBE > bmpCharsLE - invalidLE) return "utf-32be";
+      if (bmpCharsBE - invalidBE < bmpCharsLE - invalidLE) return "utf-32le";
+      return defaultEncoding || "utf-32le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js
+var require_utf16 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf16be = Utf16BECodec;
+    function Utf16BECodec() {
+    }
+    Utf16BECodec.prototype.encoder = Utf16BEEncoder;
+    Utf16BECodec.prototype.decoder = Utf16BEDecoder;
+    Utf16BECodec.prototype.bomAware = true;
+    function Utf16BEEncoder() {
+    }
+    Utf16BEEncoder.prototype.write = function(str) {
+      var buf = Buffer2.from(str, "ucs2");
+      for (var i = 0; i < buf.length; i += 2) {
+        var tmp = buf[i];
+        buf[i] = buf[i + 1];
+        buf[i + 1] = tmp;
+      }
+      return buf;
+    };
+    Utf16BEEncoder.prototype.end = function() {
+    };
+    function Utf16BEDecoder() {
+      this.overflowByte = -1;
+    }
+    Utf16BEDecoder.prototype.write = function(buf) {
+      if (buf.length == 0)
+        return "";
+      var buf2 = Buffer2.alloc(buf.length + 1), i = 0, j = 0;
+      if (this.overflowByte !== -1) {
+        buf2[0] = buf[0];
+        buf2[1] = this.overflowByte;
+        i = 1;
+        j = 2;
+      }
+      for (; i < buf.length - 1; i += 2, j += 2) {
+        buf2[j] = buf[i + 1];
+        buf2[j + 1] = buf[i];
+      }
+      this.overflowByte = i == buf.length - 1 ? buf[buf.length - 1] : -1;
+      return buf2.slice(0, j).toString("ucs2");
+    };
+    Utf16BEDecoder.prototype.end = function() {
+      this.overflowByte = -1;
+    };
+    exports2.utf16 = Utf16Codec;
+    function Utf16Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf16Codec.prototype.encoder = Utf16Encoder;
+    Utf16Codec.prototype.decoder = Utf16Decoder;
+    function Utf16Encoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder("utf-16le", options);
+    }
+    Utf16Encoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf16Encoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf16Decoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf16Decoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 16)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf16Decoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var asciiCharsLE = 0, asciiCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 2) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254) return "utf-16le";
+                if (b[0] === 254 && b[1] === 255) return "utf-16be";
+              }
+              if (b[0] === 0 && b[1] !== 0) asciiCharsBE++;
+              if (b[0] !== 0 && b[1] === 0) asciiCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (asciiCharsBE > asciiCharsLE) return "utf-16be";
+      if (asciiCharsBE < asciiCharsLE) return "utf-16le";
+      return defaultEncoding || "utf-16le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js
+var require_utf7 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf7 = Utf7Codec;
+    exports2.unicode11utf7 = "utf7";
+    function Utf7Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7Codec.prototype.encoder = Utf7Encoder;
+    Utf7Codec.prototype.decoder = Utf7Decoder;
+    Utf7Codec.prototype.bomAware = true;
+    var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;
+    function Utf7Encoder(options, codec) {
+      this.iconv = codec.iconv;
+    }
+    Utf7Encoder.prototype.write = function(str) {
+      return Buffer2.from(str.replace(nonDirectChars, function(chunk) {
+        return "+" + (chunk === "+" ? "" : this.iconv.encode(chunk, "utf16-be").toString("base64").replace(/=+$/, "")) + "-";
+      }.bind(this)));
+    };
+    Utf7Encoder.prototype.end = function() {
+    };
+    function Utf7Decoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64Regex = /[A-Za-z0-9\/+]/;
+    var base64Chars = [];
+    for (i = 0; i < 256; i++)
+      base64Chars[i] = base64Regex.test(String.fromCharCode(i));
+    var i;
+    var plusChar = "+".charCodeAt(0);
+    var minusChar = "-".charCodeAt(0);
+    var andChar = "&".charCodeAt(0);
+    Utf7Decoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == plusChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64Chars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "+";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7Decoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+    exports2.utf7imap = Utf7IMAPCodec;
+    function Utf7IMAPCodec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder;
+    Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder;
+    Utf7IMAPCodec.prototype.bomAware = true;
+    function Utf7IMAPEncoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = Buffer2.alloc(6);
+      this.base64AccumIdx = 0;
+    }
+    Utf7IMAPEncoder.prototype.write = function(str) {
+      var inBase64 = this.inBase64, base64Accum = this.base64Accum, base64AccumIdx = this.base64AccumIdx, buf = Buffer2.alloc(str.length * 5 + 10), bufIdx = 0;
+      for (var i2 = 0; i2 < str.length; i2++) {
+        var uChar = str.charCodeAt(i2);
+        if (32 <= uChar && uChar <= 126) {
+          if (inBase64) {
+            if (base64AccumIdx > 0) {
+              bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+              base64AccumIdx = 0;
+            }
+            buf[bufIdx++] = minusChar;
+            inBase64 = false;
+          }
+          if (!inBase64) {
+            buf[bufIdx++] = uChar;
+            if (uChar === andChar)
+              buf[bufIdx++] = minusChar;
+          }
+        } else {
+          if (!inBase64) {
+            buf[bufIdx++] = andChar;
+            inBase64 = true;
+          }
+          if (inBase64) {
+            base64Accum[base64AccumIdx++] = uChar >> 8;
+            base64Accum[base64AccumIdx++] = uChar & 255;
+            if (base64AccumIdx == base64Accum.length) {
+              bufIdx += buf.write(base64Accum.toString("base64").replace(/\//g, ","), bufIdx);
+              base64AccumIdx = 0;
+            }
+          }
+        }
+      }
+      this.inBase64 = inBase64;
+      this.base64AccumIdx = base64AccumIdx;
+      return buf.slice(0, bufIdx);
+    };
+    Utf7IMAPEncoder.prototype.end = function() {
+      var buf = Buffer2.alloc(10), bufIdx = 0;
+      if (this.inBase64) {
+        if (this.base64AccumIdx > 0) {
+          bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+          this.base64AccumIdx = 0;
+        }
+        buf[bufIdx++] = minusChar;
+        this.inBase64 = false;
+      }
+      return buf.slice(0, bufIdx);
+    };
+    function Utf7IMAPDecoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64IMAPChars = base64Chars.slice();
+    base64IMAPChars[",".charCodeAt(0)] = true;
+    Utf7IMAPDecoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == andChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64IMAPChars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "&";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii").replace(/,/g, "/");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii").replace(/,/g, "/");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7IMAPDecoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js
+var require_sbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._sbcs = SBCSCodec;
+    function SBCSCodec(codecOptions, iconv) {
+      if (!codecOptions)
+        throw new Error("SBCS codec is called without the data.");
+      if (!codecOptions.chars || codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256)
+        throw new Error("Encoding '" + codecOptions.type + "' has incorrect 'chars' (must be of len 128 or 256)");
+      if (codecOptions.chars.length === 128) {
+        var asciiString = "";
+        for (var i = 0; i < 128; i++)
+          asciiString += String.fromCharCode(i);
+        codecOptions.chars = asciiString + codecOptions.chars;
+      }
+      this.decodeBuf = Buffer2.from(codecOptions.chars, "ucs2");
+      var encodeBuf = Buffer2.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0));
+      for (var i = 0; i < codecOptions.chars.length; i++)
+        encodeBuf[codecOptions.chars.charCodeAt(i)] = i;
+      this.encodeBuf = encodeBuf;
+    }
+    SBCSCodec.prototype.encoder = SBCSEncoder;
+    SBCSCodec.prototype.decoder = SBCSDecoder;
+    function SBCSEncoder(options, codec) {
+      this.encodeBuf = codec.encodeBuf;
+    }
+    SBCSEncoder.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length);
+      for (var i = 0; i < str.length; i++)
+        buf[i] = this.encodeBuf[str.charCodeAt(i)];
+      return buf;
+    };
+    SBCSEncoder.prototype.end = function() {
+    };
+    function SBCSDecoder(options, codec) {
+      this.decodeBuf = codec.decodeBuf;
+    }
+    SBCSDecoder.prototype.write = function(buf) {
+      var decodeBuf = this.decodeBuf;
+      var newBuf = Buffer2.alloc(buf.length * 2);
+      var idx1 = 0, idx2 = 0;
+      for (var i = 0; i < buf.length; i++) {
+        idx1 = buf[i] * 2;
+        idx2 = i * 2;
+        newBuf[idx2] = decodeBuf[idx1];
+        newBuf[idx2 + 1] = decodeBuf[idx1 + 1];
+      }
+      return newBuf.toString("ucs2");
+    };
+    SBCSDecoder.prototype.end = function() {
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js
+var require_sbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // Not supported by iconv, not sure why.
+      "10029": "maccenteuro",
+      "maccenteuro": {
+        "type": "_sbcs",
+        "chars": "\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"
+      },
+      "808": "cp808",
+      "ibm808": "cp808",
+      "cp808": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"
+      },
+      "mik": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "cp720": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      // Aliases of generated encodings.
+      "ascii8bit": "ascii",
+      "usascii": "ascii",
+      "ansix34": "ascii",
+      "ansix341968": "ascii",
+      "ansix341986": "ascii",
+      "csascii": "ascii",
+      "cp367": "ascii",
+      "ibm367": "ascii",
+      "isoir6": "ascii",
+      "iso646us": "ascii",
+      "iso646irv": "ascii",
+      "us": "ascii",
+      "latin1": "iso88591",
+      "latin2": "iso88592",
+      "latin3": "iso88593",
+      "latin4": "iso88594",
+      "latin5": "iso88599",
+      "latin6": "iso885910",
+      "latin7": "iso885913",
+      "latin8": "iso885914",
+      "latin9": "iso885915",
+      "latin10": "iso885916",
+      "csisolatin1": "iso88591",
+      "csisolatin2": "iso88592",
+      "csisolatin3": "iso88593",
+      "csisolatin4": "iso88594",
+      "csisolatincyrillic": "iso88595",
+      "csisolatinarabic": "iso88596",
+      "csisolatingreek": "iso88597",
+      "csisolatinhebrew": "iso88598",
+      "csisolatin5": "iso88599",
+      "csisolatin6": "iso885910",
+      "l1": "iso88591",
+      "l2": "iso88592",
+      "l3": "iso88593",
+      "l4": "iso88594",
+      "l5": "iso88599",
+      "l6": "iso885910",
+      "l7": "iso885913",
+      "l8": "iso885914",
+      "l9": "iso885915",
+      "l10": "iso885916",
+      "isoir14": "iso646jp",
+      "isoir57": "iso646cn",
+      "isoir100": "iso88591",
+      "isoir101": "iso88592",
+      "isoir109": "iso88593",
+      "isoir110": "iso88594",
+      "isoir144": "iso88595",
+      "isoir127": "iso88596",
+      "isoir126": "iso88597",
+      "isoir138": "iso88598",
+      "isoir148": "iso88599",
+      "isoir157": "iso885910",
+      "isoir166": "tis620",
+      "isoir179": "iso885913",
+      "isoir199": "iso885914",
+      "isoir203": "iso885915",
+      "isoir226": "iso885916",
+      "cp819": "iso88591",
+      "ibm819": "iso88591",
+      "cyrillic": "iso88595",
+      "arabic": "iso88596",
+      "arabic8": "iso88596",
+      "ecma114": "iso88596",
+      "asmo708": "iso88596",
+      "greek": "iso88597",
+      "greek8": "iso88597",
+      "ecma118": "iso88597",
+      "elot928": "iso88597",
+      "hebrew": "iso88598",
+      "hebrew8": "iso88598",
+      "turkish": "iso88599",
+      "turkish8": "iso88599",
+      "thai": "iso885911",
+      "thai8": "iso885911",
+      "celtic": "iso885914",
+      "celtic8": "iso885914",
+      "isoceltic": "iso885914",
+      "tis6200": "tis620",
+      "tis62025291": "tis620",
+      "tis62025330": "tis620",
+      "10000": "macroman",
+      "10006": "macgreek",
+      "10007": "maccyrillic",
+      "10079": "maciceland",
+      "10081": "macturkish",
+      "cspc8codepage437": "cp437",
+      "cspc775baltic": "cp775",
+      "cspc850multilingual": "cp850",
+      "cspcp852": "cp852",
+      "cspc862latinhebrew": "cp862",
+      "cpgr": "cp869",
+      "msee": "cp1250",
+      "mscyrl": "cp1251",
+      "msansi": "cp1252",
+      "msgreek": "cp1253",
+      "msturk": "cp1254",
+      "mshebr": "cp1255",
+      "msarab": "cp1256",
+      "winbaltrim": "cp1257",
+      "cp20866": "koi8r",
+      "20866": "koi8r",
+      "ibm878": "koi8r",
+      "cskoi8r": "koi8r",
+      "cp21866": "koi8u",
+      "21866": "koi8u",
+      "ibm1168": "koi8u",
+      "strk10482002": "rk1048",
+      "tcvn5712": "tcvn",
+      "tcvn57121": "tcvn",
+      "gb198880": "iso646cn",
+      "cn": "iso646cn",
+      "csiso14jisc6220ro": "iso646jp",
+      "jisc62201969ro": "iso646jp",
+      "jp": "iso646jp",
+      "cshproman8": "hproman8",
+      "r8": "hproman8",
+      "roman8": "hproman8",
+      "xroman8": "hproman8",
+      "ibm1051": "hproman8",
+      "mac": "macintosh",
+      "csmacintosh": "macintosh"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js
+var require_sbcs_data_generated = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      "437": "cp437",
+      "737": "cp737",
+      "775": "cp775",
+      "850": "cp850",
+      "852": "cp852",
+      "855": "cp855",
+      "856": "cp856",
+      "857": "cp857",
+      "858": "cp858",
+      "860": "cp860",
+      "861": "cp861",
+      "862": "cp862",
+      "863": "cp863",
+      "864": "cp864",
+      "865": "cp865",
+      "866": "cp866",
+      "869": "cp869",
+      "874": "windows874",
+      "922": "cp922",
+      "1046": "cp1046",
+      "1124": "cp1124",
+      "1125": "cp1125",
+      "1129": "cp1129",
+      "1133": "cp1133",
+      "1161": "cp1161",
+      "1162": "cp1162",
+      "1163": "cp1163",
+      "1250": "windows1250",
+      "1251": "windows1251",
+      "1252": "windows1252",
+      "1253": "windows1253",
+      "1254": "windows1254",
+      "1255": "windows1255",
+      "1256": "windows1256",
+      "1257": "windows1257",
+      "1258": "windows1258",
+      "28591": "iso88591",
+      "28592": "iso88592",
+      "28593": "iso88593",
+      "28594": "iso88594",
+      "28595": "iso88595",
+      "28596": "iso88596",
+      "28597": "iso88597",
+      "28598": "iso88598",
+      "28599": "iso88599",
+      "28600": "iso885910",
+      "28601": "iso885911",
+      "28603": "iso885913",
+      "28604": "iso885914",
+      "28605": "iso885915",
+      "28606": "iso885916",
+      "windows874": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "win874": "windows874",
+      "cp874": "windows874",
+      "windows1250": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "win1250": "windows1250",
+      "cp1250": "windows1250",
+      "windows1251": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "win1251": "windows1251",
+      "cp1251": "windows1251",
+      "windows1252": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "win1252": "windows1252",
+      "cp1252": "windows1252",
+      "windows1253": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "win1253": "windows1253",
+      "cp1253": "windows1253",
+      "windows1254": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "win1254": "windows1254",
+      "cp1254": "windows1254",
+      "windows1255": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "win1255": "windows1255",
+      "cp1255": "windows1255",
+      "windows1256": {
+        "type": "_sbcs",
+        "chars": "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"
+      },
+      "win1256": "windows1256",
+      "cp1256": "windows1256",
+      "windows1257": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"
+      },
+      "win1257": "windows1257",
+      "cp1257": "windows1257",
+      "windows1258": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "win1258": "windows1258",
+      "cp1258": "windows1258",
+      "iso88591": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28591": "iso88591",
+      "iso88592": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "cp28592": "iso88592",
+      "iso88593": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"
+      },
+      "cp28593": "iso88593",
+      "iso88594": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"
+      },
+      "cp28594": "iso88594",
+      "iso88595": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "cp28595": "iso88595",
+      "iso88596": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28596": "iso88596",
+      "iso88597": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "cp28597": "iso88597",
+      "iso88598": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "cp28598": "iso88598",
+      "iso88599": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "cp28599": "iso88599",
+      "iso885910": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"
+      },
+      "cp28600": "iso885910",
+      "iso885911": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28601": "iso885911",
+      "iso885913": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"
+      },
+      "cp28603": "iso885913",
+      "iso885914": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"
+      },
+      "cp28604": "iso885914",
+      "iso885915": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28605": "iso885915",
+      "iso885916": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"
+      },
+      "cp28606": "iso885916",
+      "cp437": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm437": "cp437",
+      "csibm437": "cp437",
+      "cp737": {
+        "type": "_sbcs",
+        "chars": "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm737": "cp737",
+      "csibm737": "cp737",
+      "cp775": {
+        "type": "_sbcs",
+        "chars": "\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm775": "cp775",
+      "csibm775": "cp775",
+      "cp850": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm850": "cp850",
+      "csibm850": "cp850",
+      "cp852": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"
+      },
+      "ibm852": "cp852",
+      "csibm852": "cp852",
+      "cp855": {
+        "type": "_sbcs",
+        "chars": "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"
+      },
+      "ibm855": "cp855",
+      "csibm855": "cp855",
+      "cp856": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm856": "cp856",
+      "csibm856": "cp856",
+      "cp857": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm857": "cp857",
+      "csibm857": "cp857",
+      "cp858": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm858": "cp858",
+      "csibm858": "cp858",
+      "cp860": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm860": "cp860",
+      "csibm860": "cp860",
+      "cp861": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm861": "cp861",
+      "csibm861": "cp861",
+      "cp862": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm862": "cp862",
+      "csibm862": "cp862",
+      "cp863": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm863": "cp863",
+      "csibm863": "cp863",
+      "cp864": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD"
+      },
+      "ibm864": "cp864",
+      "csibm864": "cp864",
+      "cp865": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm865": "cp865",
+      "csibm865": "cp865",
+      "cp866": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm866": "cp866",
+      "csibm866": "cp866",
+      "cp869": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"
+      },
+      "ibm869": "cp869",
+      "csibm869": "cp869",
+      "cp922": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"
+      },
+      "ibm922": "cp922",
+      "csibm922": "cp922",
+      "cp1046": {
+        "type": "_sbcs",
+        "chars": "\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"
+      },
+      "ibm1046": "cp1046",
+      "csibm1046": "cp1046",
+      "cp1124": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "ibm1124": "cp1124",
+      "csibm1124": "cp1124",
+      "cp1125": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm1125": "cp1125",
+      "csibm1125": "cp1125",
+      "cp1129": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1129": "cp1129",
+      "csibm1129": "cp1129",
+      "cp1133": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"
+      },
+      "ibm1133": "cp1133",
+      "csibm1133": "cp1133",
+      "cp1161": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"
+      },
+      "ibm1161": "cp1161",
+      "csibm1161": "cp1161",
+      "cp1162": {
+        "type": "_sbcs",
+        "chars": "\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "ibm1162": "cp1162",
+      "csibm1162": "cp1162",
+      "cp1163": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1163": "cp1163",
+      "csibm1163": "cp1163",
+      "maccroatian": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"
+      },
+      "maccyrillic": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "macgreek": {
+        "type": "_sbcs",
+        "chars": "\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"
+      },
+      "maciceland": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macroman": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macromania": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macthai": {
+        "type": "_sbcs",
+        "chars": "\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "macturkish": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macukraine": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "koi8r": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8u": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8ru": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8t": {
+        "type": "_sbcs",
+        "chars": "\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "armscii8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"
+      },
+      "rk1048": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "tcvn": {
+        "type": "_sbcs",
+        "chars": "\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b	\n\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0"
+      },
+      "georgianacademy": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "georgianps": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "pt154": {
+        "type": "_sbcs",
+        "chars": "\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "viscii": {
+        "type": "_sbcs",
+        "chars": "\0\u1EB2\u1EB4\u1EAA\x07\b	\n\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE"
+      },
+      "iso646cn": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "iso646jp": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "hproman8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"
+      },
+      "macintosh": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "ascii": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "tis620": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js
+var require_dbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._dbcs = DBCSCodec;
+    var UNASSIGNED = -1;
+    var GB18030_CODE = -2;
+    var SEQ_START = -10;
+    var NODE_START = -1e3;
+    var UNASSIGNED_NODE = new Array(256);
+    var DEF_CHAR = -1;
+    for (i = 0; i < 256; i++)
+      UNASSIGNED_NODE[i] = UNASSIGNED;
+    var i;
+    function DBCSCodec(codecOptions, iconv) {
+      this.encodingName = codecOptions.encodingName;
+      if (!codecOptions)
+        throw new Error("DBCS codec is called without the data.");
+      if (!codecOptions.table)
+        throw new Error("Encoding '" + this.encodingName + "' has no data.");
+      var mappingTable = codecOptions.table();
+      this.decodeTables = [];
+      this.decodeTables[0] = UNASSIGNED_NODE.slice(0);
+      this.decodeTableSeq = [];
+      for (var i2 = 0; i2 < mappingTable.length; i2++)
+        this._addDecodeChunk(mappingTable[i2]);
+      if (typeof codecOptions.gb18030 === "function") {
+        this.gb18030 = codecOptions.gb18030();
+        var commonThirdByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var commonFourthByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var firstByteNode = this.decodeTables[0];
+        for (var i2 = 129; i2 <= 254; i2++) {
+          var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i2]];
+          for (var j = 48; j <= 57; j++) {
+            if (secondByteNode[j] === UNASSIGNED) {
+              secondByteNode[j] = NODE_START - commonThirdByteNodeIdx;
+            } else if (secondByteNode[j] > NODE_START) {
+              throw new Error("gb18030 decode tables conflict at byte 2");
+            }
+            var thirdByteNode = this.decodeTables[NODE_START - secondByteNode[j]];
+            for (var k = 129; k <= 254; k++) {
+              if (thirdByteNode[k] === UNASSIGNED) {
+                thirdByteNode[k] = NODE_START - commonFourthByteNodeIdx;
+              } else if (thirdByteNode[k] === NODE_START - commonFourthByteNodeIdx) {
+                continue;
+              } else if (thirdByteNode[k] > NODE_START) {
+                throw new Error("gb18030 decode tables conflict at byte 3");
+              }
+              var fourthByteNode = this.decodeTables[NODE_START - thirdByteNode[k]];
+              for (var l = 48; l <= 57; l++) {
+                if (fourthByteNode[l] === UNASSIGNED)
+                  fourthByteNode[l] = GB18030_CODE;
+              }
+            }
+          }
+        }
+      }
+      this.defaultCharUnicode = iconv.defaultCharUnicode;
+      this.encodeTable = [];
+      this.encodeTableSeq = [];
+      var skipEncodeChars = {};
+      if (codecOptions.encodeSkipVals)
+        for (var i2 = 0; i2 < codecOptions.encodeSkipVals.length; i2++) {
+          var val2 = codecOptions.encodeSkipVals[i2];
+          if (typeof val2 === "number")
+            skipEncodeChars[val2] = true;
+          else
+            for (var j = val2.from; j <= val2.to; j++)
+              skipEncodeChars[j] = true;
+        }
+      this._fillEncodeTable(0, 0, skipEncodeChars);
+      if (codecOptions.encodeAdd) {
+        for (var uChar in codecOptions.encodeAdd)
+          if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar))
+            this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]);
+      }
+      this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]["?"];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0);
+    }
+    DBCSCodec.prototype.encoder = DBCSEncoder;
+    DBCSCodec.prototype.decoder = DBCSDecoder;
+    DBCSCodec.prototype._getDecodeTrieNode = function(addr) {
+      var bytes = [];
+      for (; addr > 0; addr >>>= 8)
+        bytes.push(addr & 255);
+      if (bytes.length == 0)
+        bytes.push(0);
+      var node = this.decodeTables[0];
+      for (var i2 = bytes.length - 1; i2 > 0; i2--) {
+        var val2 = node[bytes[i2]];
+        if (val2 == UNASSIGNED) {
+          node[bytes[i2]] = NODE_START - this.decodeTables.length;
+          this.decodeTables.push(node = UNASSIGNED_NODE.slice(0));
+        } else if (val2 <= NODE_START) {
+          node = this.decodeTables[NODE_START - val2];
+        } else
+          throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr.toString(16));
+      }
+      return node;
+    };
+    DBCSCodec.prototype._addDecodeChunk = function(chunk) {
+      var curAddr = parseInt(chunk[0], 16);
+      var writeTable = this._getDecodeTrieNode(curAddr);
+      curAddr = curAddr & 255;
+      for (var k = 1; k < chunk.length; k++) {
+        var part = chunk[k];
+        if (typeof part === "string") {
+          for (var l = 0; l < part.length; ) {
+            var code = part.charCodeAt(l++);
+            if (55296 <= code && code < 56320) {
+              var codeTrail = part.charCodeAt(l++);
+              if (56320 <= codeTrail && codeTrail < 57344)
+                writeTable[curAddr++] = 65536 + (code - 55296) * 1024 + (codeTrail - 56320);
+              else
+                throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]);
+            } else if (4080 < code && code <= 4095) {
+              var len = 4095 - code + 2;
+              var seq = [];
+              for (var m = 0; m < len; m++)
+                seq.push(part.charCodeAt(l++));
+              writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length;
+              this.decodeTableSeq.push(seq);
+            } else
+              writeTable[curAddr++] = code;
+          }
+        } else if (typeof part === "number") {
+          var charCode = writeTable[curAddr - 1] + 1;
+          for (var l = 0; l < part; l++)
+            writeTable[curAddr++] = charCode++;
+        } else
+          throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]);
+      }
+      if (curAddr > 255)
+        throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr);
+    };
+    DBCSCodec.prototype._getEncodeBucket = function(uCode) {
+      var high = uCode >> 8;
+      if (this.encodeTable[high] === void 0)
+        this.encodeTable[high] = UNASSIGNED_NODE.slice(0);
+      return this.encodeTable[high];
+    };
+    DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) {
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      if (bucket[low] <= SEQ_START)
+        this.encodeTableSeq[SEQ_START - bucket[low]][DEF_CHAR] = dbcsCode;
+      else if (bucket[low] == UNASSIGNED)
+        bucket[low] = dbcsCode;
+    };
+    DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) {
+      var uCode = seq[0];
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      var node;
+      if (bucket[low] <= SEQ_START) {
+        node = this.encodeTableSeq[SEQ_START - bucket[low]];
+      } else {
+        node = {};
+        if (bucket[low] !== UNASSIGNED) node[DEF_CHAR] = bucket[low];
+        bucket[low] = SEQ_START - this.encodeTableSeq.length;
+        this.encodeTableSeq.push(node);
+      }
+      for (var j = 1; j < seq.length - 1; j++) {
+        var oldVal = node[uCode];
+        if (typeof oldVal === "object")
+          node = oldVal;
+        else {
+          node = node[uCode] = {};
+          if (oldVal !== void 0)
+            node[DEF_CHAR] = oldVal;
+        }
+      }
+      uCode = seq[seq.length - 1];
+      node[uCode] = dbcsCode;
+    };
+    DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) {
+      var node = this.decodeTables[nodeIdx];
+      var hasValues = false;
+      var subNodeEmpty = {};
+      for (var i2 = 0; i2 < 256; i2++) {
+        var uCode = node[i2];
+        var mbCode = prefix + i2;
+        if (skipEncodeChars[mbCode])
+          continue;
+        if (uCode >= 0) {
+          this._setEncodeChar(uCode, mbCode);
+          hasValues = true;
+        } else if (uCode <= NODE_START) {
+          var subNodeIdx = NODE_START - uCode;
+          if (!subNodeEmpty[subNodeIdx]) {
+            var newPrefix = mbCode << 8 >>> 0;
+            if (this._fillEncodeTable(subNodeIdx, newPrefix, skipEncodeChars))
+              hasValues = true;
+            else
+              subNodeEmpty[subNodeIdx] = true;
+          }
+        } else if (uCode <= SEQ_START) {
+          this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode);
+          hasValues = true;
+        }
+      }
+      return hasValues;
+    };
+    function DBCSEncoder(options, codec) {
+      this.leadSurrogate = -1;
+      this.seqObj = void 0;
+      this.encodeTable = codec.encodeTable;
+      this.encodeTableSeq = codec.encodeTableSeq;
+      this.defaultCharSingleByte = codec.defCharSB;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSEncoder.prototype.write = function(str) {
+      var newBuf = Buffer2.alloc(str.length * (this.gb18030 ? 4 : 3)), leadSurrogate = this.leadSurrogate, seqObj = this.seqObj, nextChar = -1, i2 = 0, j = 0;
+      while (true) {
+        if (nextChar === -1) {
+          if (i2 == str.length) break;
+          var uCode = str.charCodeAt(i2++);
+        } else {
+          var uCode = nextChar;
+          nextChar = -1;
+        }
+        if (55296 <= uCode && uCode < 57344) {
+          if (uCode < 56320) {
+            if (leadSurrogate === -1) {
+              leadSurrogate = uCode;
+              continue;
+            } else {
+              leadSurrogate = uCode;
+              uCode = UNASSIGNED;
+            }
+          } else {
+            if (leadSurrogate !== -1) {
+              uCode = 65536 + (leadSurrogate - 55296) * 1024 + (uCode - 56320);
+              leadSurrogate = -1;
+            } else {
+              uCode = UNASSIGNED;
+            }
+          }
+        } else if (leadSurrogate !== -1) {
+          nextChar = uCode;
+          uCode = UNASSIGNED;
+          leadSurrogate = -1;
+        }
+        var dbcsCode = UNASSIGNED;
+        if (seqObj !== void 0 && uCode != UNASSIGNED) {
+          var resCode = seqObj[uCode];
+          if (typeof resCode === "object") {
+            seqObj = resCode;
+            continue;
+          } else if (typeof resCode == "number") {
+            dbcsCode = resCode;
+          } else if (resCode == void 0) {
+            resCode = seqObj[DEF_CHAR];
+            if (resCode !== void 0) {
+              dbcsCode = resCode;
+              nextChar = uCode;
+            } else {
+            }
+          }
+          seqObj = void 0;
+        } else if (uCode >= 0) {
+          var subtable = this.encodeTable[uCode >> 8];
+          if (subtable !== void 0)
+            dbcsCode = subtable[uCode & 255];
+          if (dbcsCode <= SEQ_START) {
+            seqObj = this.encodeTableSeq[SEQ_START - dbcsCode];
+            continue;
+          }
+          if (dbcsCode == UNASSIGNED && this.gb18030) {
+            var idx = findIdx(this.gb18030.uChars, uCode);
+            if (idx != -1) {
+              var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]);
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 12600);
+              dbcsCode = dbcsCode % 12600;
+              newBuf[j++] = 48 + Math.floor(dbcsCode / 1260);
+              dbcsCode = dbcsCode % 1260;
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 10);
+              dbcsCode = dbcsCode % 10;
+              newBuf[j++] = 48 + dbcsCode;
+              continue;
+            }
+          }
+        }
+        if (dbcsCode === UNASSIGNED)
+          dbcsCode = this.defaultCharSingleByte;
+        if (dbcsCode < 256) {
+          newBuf[j++] = dbcsCode;
+        } else if (dbcsCode < 65536) {
+          newBuf[j++] = dbcsCode >> 8;
+          newBuf[j++] = dbcsCode & 255;
+        } else if (dbcsCode < 16777216) {
+          newBuf[j++] = dbcsCode >> 16;
+          newBuf[j++] = dbcsCode >> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        } else {
+          newBuf[j++] = dbcsCode >>> 24;
+          newBuf[j++] = dbcsCode >>> 16 & 255;
+          newBuf[j++] = dbcsCode >>> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        }
+      }
+      this.seqObj = seqObj;
+      this.leadSurrogate = leadSurrogate;
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.end = function() {
+      if (this.leadSurrogate === -1 && this.seqObj === void 0)
+        return;
+      var newBuf = Buffer2.alloc(10), j = 0;
+      if (this.seqObj) {
+        var dbcsCode = this.seqObj[DEF_CHAR];
+        if (dbcsCode !== void 0) {
+          if (dbcsCode < 256) {
+            newBuf[j++] = dbcsCode;
+          } else {
+            newBuf[j++] = dbcsCode >> 8;
+            newBuf[j++] = dbcsCode & 255;
+          }
+        } else {
+        }
+        this.seqObj = void 0;
+      }
+      if (this.leadSurrogate !== -1) {
+        newBuf[j++] = this.defaultCharSingleByte;
+        this.leadSurrogate = -1;
+      }
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.findIdx = findIdx;
+    function DBCSDecoder(options, codec) {
+      this.nodeIdx = 0;
+      this.prevBytes = [];
+      this.decodeTables = codec.decodeTables;
+      this.decodeTableSeq = codec.decodeTableSeq;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSDecoder.prototype.write = function(buf) {
+      var newBuf = Buffer2.alloc(buf.length * 2), nodeIdx = this.nodeIdx, prevBytes = this.prevBytes, prevOffset = this.prevBytes.length, seqStart = -this.prevBytes.length, uCode;
+      for (var i2 = 0, j = 0; i2 < buf.length; i2++) {
+        var curByte = i2 >= 0 ? buf[i2] : prevBytes[i2 + prevOffset];
+        var uCode = this.decodeTables[nodeIdx][curByte];
+        if (uCode >= 0) {
+        } else if (uCode === UNASSIGNED) {
+          uCode = this.defaultCharUnicode.charCodeAt(0);
+          i2 = seqStart;
+        } else if (uCode === GB18030_CODE) {
+          if (i2 >= 3) {
+            var ptr = (buf[i2 - 3] - 129) * 12600 + (buf[i2 - 2] - 48) * 1260 + (buf[i2 - 1] - 129) * 10 + (curByte - 48);
+          } else {
+            var ptr = (prevBytes[i2 - 3 + prevOffset] - 129) * 12600 + ((i2 - 2 >= 0 ? buf[i2 - 2] : prevBytes[i2 - 2 + prevOffset]) - 48) * 1260 + ((i2 - 1 >= 0 ? buf[i2 - 1] : prevBytes[i2 - 1 + prevOffset]) - 129) * 10 + (curByte - 48);
+          }
+          var idx = findIdx(this.gb18030.gbChars, ptr);
+          uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx];
+        } else if (uCode <= NODE_START) {
+          nodeIdx = NODE_START - uCode;
+          continue;
+        } else if (uCode <= SEQ_START) {
+          var seq = this.decodeTableSeq[SEQ_START - uCode];
+          for (var k = 0; k < seq.length - 1; k++) {
+            uCode = seq[k];
+            newBuf[j++] = uCode & 255;
+            newBuf[j++] = uCode >> 8;
+          }
+          uCode = seq[seq.length - 1];
+        } else
+          throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte);
+        if (uCode >= 65536) {
+          uCode -= 65536;
+          var uCodeLead = 55296 | uCode >> 10;
+          newBuf[j++] = uCodeLead & 255;
+          newBuf[j++] = uCodeLead >> 8;
+          uCode = 56320 | uCode & 1023;
+        }
+        newBuf[j++] = uCode & 255;
+        newBuf[j++] = uCode >> 8;
+        nodeIdx = 0;
+        seqStart = i2 + 1;
+      }
+      this.nodeIdx = nodeIdx;
+      this.prevBytes = seqStart >= 0 ? Array.prototype.slice.call(buf, seqStart) : prevBytes.slice(seqStart + prevOffset).concat(Array.prototype.slice.call(buf));
+      return newBuf.slice(0, j).toString("ucs2");
+    };
+    DBCSDecoder.prototype.end = function() {
+      var ret = "";
+      while (this.prevBytes.length > 0) {
+        ret += this.defaultCharUnicode;
+        var bytesArr = this.prevBytes.slice(1);
+        this.prevBytes = [];
+        this.nodeIdx = 0;
+        if (bytesArr.length > 0)
+          ret += this.write(bytesArr);
+      }
+      this.prevBytes = [];
+      this.nodeIdx = 0;
+      return ret;
+    };
+    function findIdx(table, val2) {
+      if (table[0] > val2)
+        return -1;
+      var l = 0, r = table.length;
+      while (l < r - 1) {
+        var mid = l + (r - l + 1 >> 1);
+        if (table[mid] <= val2)
+          l = mid;
+        else
+          r = mid;
+      }
+      return l;
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json
+var require_shiftjis = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 128],
+      ["a1", "\uFF61", 62],
+      ["8140", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7"],
+      ["8180", "\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["81b8", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["81c8", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["81da", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["81f0", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["81fc", "\u25EF"],
+      ["824f", "\uFF10", 9],
+      ["8260", "\uFF21", 25],
+      ["8281", "\uFF41", 25],
+      ["829f", "\u3041", 82],
+      ["8340", "\u30A1", 62],
+      ["8380", "\u30E0", 22],
+      ["839f", "\u0391", 16, "\u03A3", 6],
+      ["83bf", "\u03B1", 16, "\u03C3", 6],
+      ["8440", "\u0410", 5, "\u0401\u0416", 25],
+      ["8470", "\u0430", 5, "\u0451\u0436", 7],
+      ["8480", "\u043E", 17],
+      ["849f", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["8740", "\u2460", 19, "\u2160", 9],
+      ["875f", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["877e", "\u337B"],
+      ["8780", "\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["889f", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["8940", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],
+      ["8980", "\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["8a40", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],
+      ["8a80", "\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["8b40", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],
+      ["8b80", "\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["8c40", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],
+      ["8c80", "\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["8d40", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],
+      ["8d80", "\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["8e40", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],
+      ["8e80", "\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["8f40", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],
+      ["8f80", "\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["9040", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],
+      ["9080", "\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["9140", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],
+      ["9180", "\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["9240", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],
+      ["9280", "\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["9340", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],
+      ["9380", "\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["9440", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],
+      ["9480", "\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["9540", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],
+      ["9580", "\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["9640", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],
+      ["9680", "\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["9740", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],
+      ["9780", "\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["9840", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["989f", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["9940", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],
+      ["9980", "\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["9a40", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],
+      ["9a80", "\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["9b40", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],
+      ["9b80", "\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["9c40", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],
+      ["9c80", "\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["9d40", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],
+      ["9d80", "\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["9e40", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],
+      ["9e80", "\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["9f40", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],
+      ["9f80", "\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["e040", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],
+      ["e080", "\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e140", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],
+      ["e180", "\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e240", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],
+      ["e280", "\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e340", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],
+      ["e380", "\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e440", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],
+      ["e480", "\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e540", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],
+      ["e580", "\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["e640", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],
+      ["e680", "\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["e740", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],
+      ["e780", "\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["e840", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],
+      ["e880", "\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["e940", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],
+      ["e980", "\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["ea40", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],
+      ["ea80", "\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["ed40", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],
+      ["ed80", "\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["ee40", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],
+      ["ee80", "\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["eeef", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["f040", "\uE000", 62],
+      ["f080", "\uE03F", 124],
+      ["f140", "\uE0BC", 62],
+      ["f180", "\uE0FB", 124],
+      ["f240", "\uE178", 62],
+      ["f280", "\uE1B7", 124],
+      ["f340", "\uE234", 62],
+      ["f380", "\uE273", 124],
+      ["f440", "\uE2F0", 62],
+      ["f480", "\uE32F", 124],
+      ["f540", "\uE3AC", 62],
+      ["f580", "\uE3EB", 124],
+      ["f640", "\uE468", 62],
+      ["f680", "\uE4A7", 124],
+      ["f740", "\uE524", 62],
+      ["f780", "\uE563", 124],
+      ["f840", "\uE5E0", 62],
+      ["f880", "\uE61F", 124],
+      ["f940", "\uE69C"],
+      ["fa40", "\u2170", 9, "\u2160", 9, "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],
+      ["fa80", "\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],
+      ["fb40", "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],
+      ["fb80", "\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],
+      ["fc40", "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json
+var require_eucjp = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8ea1", "\uFF61", 62],
+      ["a1a1", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],
+      ["a2a1", "\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["a2ba", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["a2ca", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["a2dc", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["a2f2", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["a2fe", "\u25EF"],
+      ["a3b0", "\uFF10", 9],
+      ["a3c1", "\uFF21", 25],
+      ["a3e1", "\uFF41", 25],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a8a1", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["ada1", "\u2460", 19, "\u2160", 9],
+      ["adc0", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["addf", "\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["b0a1", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["b1a1", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],
+      ["b2a1", "\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["b3a1", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],
+      ["b4a1", "\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["b5a1", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],
+      ["b6a1", "\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["b7a1", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],
+      ["b8a1", "\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["b9a1", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],
+      ["baa1", "\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["bba1", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],
+      ["bca1", "\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["bda1", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],
+      ["bea1", "\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["bfa1", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],
+      ["c0a1", "\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["c1a1", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],
+      ["c2a1", "\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["c3a1", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],
+      ["c4a1", "\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["c5a1", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],
+      ["c6a1", "\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["c7a1", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],
+      ["c8a1", "\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["c9a1", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],
+      ["caa1", "\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["cba1", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],
+      ["cca1", "\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["cda1", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],
+      ["cea1", "\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["cfa1", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["d0a1", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["d1a1", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],
+      ["d2a1", "\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["d3a1", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],
+      ["d4a1", "\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["d5a1", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],
+      ["d6a1", "\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["d7a1", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],
+      ["d8a1", "\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["d9a1", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],
+      ["daa1", "\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["dba1", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],
+      ["dca1", "\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["dda1", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],
+      ["dea1", "\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["dfa1", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],
+      ["e0a1", "\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e1a1", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],
+      ["e2a1", "\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e3a1", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],
+      ["e4a1", "\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e5a1", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],
+      ["e6a1", "\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e7a1", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],
+      ["e8a1", "\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e9a1", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],
+      ["eaa1", "\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["eba1", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],
+      ["eca1", "\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["eda1", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],
+      ["eea1", "\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["efa1", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],
+      ["f0a1", "\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["f1a1", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],
+      ["f2a1", "\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["f3a1", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],
+      ["f4a1", "\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["f9a1", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],
+      ["faa1", "\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["fba1", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],
+      ["fca1", "\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["fcf1", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["8fa2af", "\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],
+      ["8fa2c2", "\xA1\xA6\xBF"],
+      ["8fa2eb", "\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],
+      ["8fa6e1", "\u0386\u0388\u0389\u038A\u03AA"],
+      ["8fa6e7", "\u038C"],
+      ["8fa6e9", "\u038E\u03AB"],
+      ["8fa6ec", "\u038F"],
+      ["8fa6f1", "\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],
+      ["8fa7c2", "\u0402", 10, "\u040E\u040F"],
+      ["8fa7f2", "\u0452", 10, "\u045E\u045F"],
+      ["8fa9a1", "\xC6\u0110"],
+      ["8fa9a4", "\u0126"],
+      ["8fa9a6", "\u0132"],
+      ["8fa9a8", "\u0141\u013F"],
+      ["8fa9ab", "\u014A\xD8\u0152"],
+      ["8fa9af", "\u0166\xDE"],
+      ["8fa9c1", "\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],
+      ["8faaa1", "\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],
+      ["8faaba", "\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],
+      ["8faba1", "\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],
+      ["8fabbd", "\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],
+      ["8fabc5", "\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],
+      ["8fb0a1", "\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],
+      ["8fb1a1", "\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],
+      ["8fb2a1", "\u5092\u5093\u5094\u5096\u509B\u509C\u509E", 4, "\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],
+      ["8fb3a1", "\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],
+      ["8fb4a1", "\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],
+      ["8fb5a1", "\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],
+      ["8fb6a1", "\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D", 5, "\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4", 4, "\u56F1\u56EB\u56ED"],
+      ["8fb7a1", "\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D", 4, "\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],
+      ["8fb8a1", "\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],
+      ["8fb9a1", "\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],
+      ["8fbaa1", "\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6", 4, "\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],
+      ["8fbba1", "\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],
+      ["8fbca1", "\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A", 4, "\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],
+      ["8fbda1", "\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0", 4, "\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],
+      ["8fbea1", "\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110", 4, "\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],
+      ["8fbfa1", "\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],
+      ["8fc0a1", "\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],
+      ["8fc1a1", "\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],
+      ["8fc2a1", "\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],
+      ["8fc3a1", "\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E", 4, "\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],
+      ["8fc4a1", "\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],
+      ["8fc5a1", "\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],
+      ["8fc6a1", "\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],
+      ["8fc7a1", "\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],
+      ["8fc8a1", "\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],
+      ["8fc9a1", "\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094", 4, "\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103", 4, "\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],
+      ["8fcaa1", "\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],
+      ["8fcba1", "\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],
+      ["8fcca1", "\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428", 9, "\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],
+      ["8fcda1", "\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579", 5, "\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],
+      ["8fcea1", "\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2", 6, "\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],
+      ["8fcfa1", "\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],
+      ["8fd0a1", "\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],
+      ["8fd1a1", "\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],
+      ["8fd2a1", "\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59", 5],
+      ["8fd3a1", "\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],
+      ["8fd4a1", "\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2", 4, "\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],
+      ["8fd5a1", "\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],
+      ["8fd6a1", "\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],
+      ["8fd7a1", "\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],
+      ["8fd8a1", "\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],
+      ["8fd9a1", "\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F", 4, "\u8556\u8559\u855C", 6, "\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],
+      ["8fdaa1", "\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660", 4, "\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],
+      ["8fdba1", "\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783", 6, "\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],
+      ["8fdca1", "\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA", 4, "\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],
+      ["8fdda1", "\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4", 4, "\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],
+      ["8fdea1", "\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42", 4, "\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],
+      ["8fdfa1", "\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],
+      ["8fe0a1", "\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],
+      ["8fe1a1", "\u8F43\u8F47\u8F4F\u8F51", 4, "\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],
+      ["8fe2a1", "\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],
+      ["8fe3a1", "\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC", 5, "\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275", 4, "\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],
+      ["8fe4a1", "\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF", 4, "\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],
+      ["8fe5a1", "\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9", 4, "\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],
+      ["8fe6a1", "\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],
+      ["8fe7a1", "\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],
+      ["8fe8a1", "\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931", 4, "\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],
+      ["8fe9a1", "\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF", 4],
+      ["8feaa1", "\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A", 4, "\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],
+      ["8feba1", "\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26", 4, "\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],
+      ["8feca1", "\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],
+      ["8feda1", "\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43", 4, "\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D", 4, "\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json
+var require_cp936 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127, "\u20AC"],
+      ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"],
+      ["8180", "\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02", 6, "\u4F0B\u4F0C\u4F12", 4, "\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E", 4, "\u4F44\u4F45\u4F47", 5, "\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],
+      ["8240", "\u4FA4\u4FAB\u4FAD\u4FB0", 4, "\u4FB6", 8, "\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2", 4, "\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF", 11],
+      ["8280", "\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F", 10, "\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050", 4, "\u5056\u5057\u5058\u5059\u505B\u505D", 7, "\u5066", 5, "\u506D", 8, "\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E", 20, "\u50A4\u50A6\u50AA\u50AB\u50AD", 4, "\u50B3", 6, "\u50BC"],
+      ["8340", "\u50BD", 17, "\u50D0", 5, "\u50D7\u50D8\u50D9\u50DB", 10, "\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6", 4, "\u50FC", 9, "\u5108"],
+      ["8380", "\u5109\u510A\u510C", 5, "\u5113", 13, "\u5122", 28, "\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D", 4, "\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6", 4, "\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2", 5],
+      ["8440", "\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5", 5, "\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244", 5, "\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],
+      ["8480", "\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273", 9, "\u527E\u5280\u5283", 4, "\u5289", 6, "\u5291\u5292\u5294", 6, "\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4", 9, "\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9", 5, "\u52E0\u52E1\u52E2\u52E3\u52E5", 10, "\u52F1", 7, "\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],
+      ["8540", "\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F", 9, "\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],
+      ["8580", "\u5390", 4, "\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF", 6, "\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3", 4, "\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D", 4, "\u5463\u5465\u5467\u5469", 7, "\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],
+      ["8640", "\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0", 4, "\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4", 5, "\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A", 4, "\u5512\u5513\u5515", 5, "\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],
+      ["8680", "\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B", 4, "\u5551\u5552\u5553\u5554\u5557", 4, "\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F", 5, "\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0", 6, "\u55A8", 8, "\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF", 4, "\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7", 4, "\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8", 4, "\u55FF\u5602\u5603\u5604\u5605"],
+      ["8740", "\u5606\u5607\u560A\u560B\u560D\u5610", 7, "\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640", 11, "\u564F", 4, "\u5655\u5656\u565A\u565B\u565D", 4],
+      ["8780", "\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D", 7, "\u5687", 6, "\u5690\u5691\u5692\u5694", 14, "\u56A4", 10, "\u56B0", 6, "\u56B8\u56B9\u56BA\u56BB\u56BD", 12, "\u56CB", 8, "\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5", 5, "\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B", 6],
+      ["8840", "\u5712", 9, "\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734", 4, "\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752", 4, "\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],
+      ["8880", "\u5781\u5787\u5788\u5789\u578A\u578D", 4, "\u5794", 6, "\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9", 8, "\u57C4", 6, "\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5", 7, "\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825", 4, "\u582B", 4, "\u5831\u5832\u5833\u5834\u5836", 7],
+      ["8940", "\u583E", 5, "\u5845", 6, "\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859", 4, "\u585F", 5, "\u5866", 4, "\u586D", 16, "\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],
+      ["8980", "\u588D", 4, "\u5894", 4, "\u589B\u589C\u589D\u58A0", 7, "\u58AA", 17, "\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6", 10, "\u58D2\u58D3\u58D4\u58D6", 13, "\u58E5", 5, "\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA", 7, "\u5903\u5905\u5906\u5908", 4, "\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],
+      ["8a40", "\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B", 4, "\u5961\u5963\u5964\u5966", 12, "\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],
+      ["8a80", "\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3", 5, "\u59BA\u59BC\u59BD\u59BF", 6, "\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE", 4, "\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED", 11, "\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A", 6, "\u5A33\u5A35\u5A37", 4, "\u5A3D\u5A3E\u5A3F\u5A41", 4, "\u5A47\u5A48\u5A4B", 9, "\u5A56\u5A57\u5A58\u5A59\u5A5B", 5],
+      ["8b40", "\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B", 8, "\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80", 17, "\u5A93", 6, "\u5A9C", 13, "\u5AAB\u5AAC"],
+      ["8b80", "\u5AAD", 4, "\u5AB4\u5AB6\u5AB7\u5AB9", 4, "\u5ABF\u5AC0\u5AC3", 5, "\u5ACA\u5ACB\u5ACD", 4, "\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC", 4, "\u5AF2", 22, "\u5B0A", 11, "\u5B18", 25, "\u5B33\u5B35\u5B36\u5B38", 7, "\u5B41", 6],
+      ["8c40", "\u5B48", 7, "\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],
+      ["8c80", "\u5BD1\u5BD4", 8, "\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9", 4, "\u5BEF\u5BF1", 6, "\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67", 6, "\u5C70\u5C72", 6, "\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83", 4, "\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D", 4, "\u5CA4", 4],
+      ["8d40", "\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5", 5, "\u5CCC", 5, "\u5CD3", 5, "\u5CDA", 6, "\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1", 9, "\u5CFC", 4],
+      ["8d80", "\u5D01\u5D04\u5D05\u5D08", 5, "\u5D0F", 4, "\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F", 4, "\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F", 4, "\u5D35", 7, "\u5D3F", 7, "\u5D48\u5D49\u5D4D", 10, "\u5D59\u5D5A\u5D5C\u5D5E", 10, "\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75", 12, "\u5D83", 21, "\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],
+      ["8e40", "\u5DA1", 21, "\u5DB8", 12, "\u5DC6", 6, "\u5DCE", 12, "\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],
+      ["8e80", "\u5DF0\u5DF5\u5DF6\u5DF8", 4, "\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E", 7, "\u5E28", 4, "\u5E2F\u5E30\u5E32", 4, "\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46", 5, "\u5E4D", 6, "\u5E56", 4, "\u5E5C\u5E5D\u5E5F\u5E60\u5E63", 14, "\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8", 4, "\u5EAE", 4, "\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF", 6],
+      ["8f40", "\u5EC6\u5EC7\u5EC8\u5ECB", 5, "\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC", 11, "\u5EE9\u5EEB", 8, "\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],
+      ["8f80", "\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32", 6, "\u5F3B\u5F3D\u5F3E\u5F3F\u5F41", 14, "\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2", 5, "\u5FA9\u5FAB\u5FAC\u5FAF", 5, "\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE", 4, "\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],
+      ["9040", "\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030", 4, "\u6036", 4, "\u603D\u603E\u6040\u6044", 6, "\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],
+      ["9080", "\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD", 7, "\u60C7\u60C8\u60C9\u60CC", 4, "\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1", 4, "\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB", 4, "\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110", 4, "\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C", 18, "\u6140", 6],
+      ["9140", "\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156", 6, "\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169", 6, "\u6171\u6172\u6173\u6174\u6176\u6178", 18, "\u618C\u618D\u618F", 4, "\u6195"],
+      ["9180", "\u6196", 6, "\u619E", 8, "\u61AA\u61AB\u61AD", 9, "\u61B8", 5, "\u61BF\u61C0\u61C1\u61C3", 4, "\u61C9\u61CC", 4, "\u61D3\u61D5", 16, "\u61E7", 13, "\u61F6", 8, "\u6200", 5, "\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238", 4, "\u6242\u6244\u6245\u6246\u624A"],
+      ["9240", "\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C", 6, "\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B", 5, "\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],
+      ["9280", "\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333", 5, "\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356", 7, "\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399", 6, "\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],
+      ["9340", "\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7", 6, "\u63DF\u63E2\u63E4", 4, "\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406", 4, "\u640D\u640E\u6411\u6412\u6415", 5, "\u641D\u641F\u6422\u6423\u6424"],
+      ["9380", "\u6425\u6427\u6428\u6429\u642B\u642E", 5, "\u6435", 4, "\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B", 6, "\u6453\u6455\u6456\u6457\u6459", 4, "\u645F", 7, "\u6468\u646A\u646B\u646C\u646E", 9, "\u647B", 6, "\u6483\u6486\u6488", 8, "\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F", 4, "\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6", 6, "\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],
+      ["9440", "\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7", 24, "\u6501", 7, "\u650A", 7, "\u6513", 4, "\u6519", 8],
+      ["9480", "\u6522\u6523\u6524\u6526", 4, "\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540", 4, "\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578", 14, "\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1", 7, "\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8", 7, "\u65E1\u65E3\u65E4\u65EA\u65EB"],
+      ["9540", "\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB", 4, "\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637", 4, "\u663D\u663F\u6640\u6642\u6644", 6, "\u664D\u664E\u6650\u6651\u6658"],
+      ["9580", "\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669", 4, "\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698", 4, "\u669E", 8, "\u66A9", 4, "\u66AF", 4, "\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF", 25, "\u66DA\u66DE", 7, "\u66E7\u66E8\u66EA", 5, "\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],
+      ["9640", "\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720", 5, "\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757", 4, "\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],
+      ["9680", "\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9", 7, "\u67C2\u67C5", 9, "\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5", 7, "\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818", 4, "\u681E\u681F\u6820\u6822", 6, "\u682B", 6, "\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856", 5],
+      ["9740", "\u685C\u685D\u685E\u685F\u686A\u686C", 7, "\u6875\u6878", 8, "\u6882\u6884\u6887", 7, "\u6890\u6891\u6892\u6894\u6895\u6896\u6898", 9, "\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],
+      ["9780", "\u68B9", 6, "\u68C1\u68C3", 5, "\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB", 4, "\u68E1\u68E2\u68E4", 9, "\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906", 4, "\u690C\u690F\u6911\u6913", 11, "\u6921\u6922\u6923\u6925", 7, "\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943", 16, "\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],
+      ["9840", "\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972", 4, "\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E", 5, "\u6996\u6997\u6999\u699A\u699D", 9, "\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],
+      ["9880", "\u69BE\u69BF\u69C0\u69C2", 7, "\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5", 5, "\u69DC\u69DD\u69DE\u69E1", 11, "\u69EE\u69EF\u69F0\u69F1\u69F3", 9, "\u69FE\u6A00", 9, "\u6A0B", 11, "\u6A19", 5, "\u6A20\u6A22", 5, "\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36", 6, "\u6A3F", 4, "\u6A45\u6A46\u6A48", 7, "\u6A51", 6, "\u6A5A"],
+      ["9940", "\u6A5C", 4, "\u6A62\u6A63\u6A64\u6A66", 10, "\u6A72", 6, "\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85", 8, "\u6A8F\u6A92", 4, "\u6A98", 7, "\u6AA1", 5],
+      ["9980", "\u6AA7\u6AA8\u6AAA\u6AAD", 114, "\u6B25\u6B26\u6B28", 6],
+      ["9a40", "\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D", 11, "\u6B5A", 7, "\u6B68\u6B69\u6B6B", 13, "\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],
+      ["9a80", "\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C", 4, "\u6BA2", 7, "\u6BAB", 7, "\u6BB6\u6BB8", 6, "\u6BC0\u6BC3\u6BC4\u6BC6", 4, "\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC", 4, "\u6BE2", 7, "\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE", 6, "\u6C08", 4, "\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B", 4, "\u6C51\u6C52\u6C53\u6C56\u6C58"],
+      ["9b40", "\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B", 4, "\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],
+      ["9b80", "\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F", 5, "\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D", 4, "\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96", 4, "\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9", 5, "\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],
+      ["9c40", "\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD", 7, "\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],
+      ["9c80", "\u6E36\u6E37\u6E39\u6E3B", 7, "\u6E45", 7, "\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60", 10, "\u6E6C\u6E6D\u6E6F", 14, "\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A", 4, "\u6E91", 6, "\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA", 5],
+      ["9d40", "\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA", 7, "\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A", 4, "\u6F10\u6F11\u6F12\u6F16", 9, "\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37", 6, "\u6F3F\u6F40\u6F41\u6F42"],
+      ["9d80", "\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E", 9, "\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67", 5, "\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D", 6, "\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F", 12, "\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2", 4, "\u6FA8", 10, "\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA", 5, "\u6FC1\u6FC3", 5, "\u6FCA", 6, "\u6FD3", 10, "\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],
+      ["9e40", "\u6FE6", 7, "\u6FF0", 32, "\u7012", 7, "\u701C", 6, "\u7024", 6],
+      ["9e80", "\u702B", 9, "\u7036\u7037\u7038\u703A", 17, "\u704D\u704E\u7050", 13, "\u705F", 11, "\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E", 12, "\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB", 12, "\u70DA"],
+      ["9f40", "\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0", 6, "\u70F8\u70FA\u70FB\u70FC\u70FE", 10, "\u710B", 4, "\u7111\u7112\u7114\u7117\u711B", 10, "\u7127", 7, "\u7132\u7133\u7134"],
+      ["9f80", "\u7135\u7137", 13, "\u7146\u7147\u7148\u7149\u714B\u714D\u714F", 12, "\u715D\u715F", 4, "\u7165\u7169", 4, "\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E", 5, "\u7185", 4, "\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A", 4, "\u71A1", 6, "\u71A9\u71AA\u71AB\u71AD", 5, "\u71B4\u71B6\u71B7\u71B8\u71BA", 8, "\u71C4", 9, "\u71CF", 4],
+      ["a040", "\u71D6", 9, "\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8", 5, "\u71EF", 9, "\u71FA", 11, "\u7207", 19],
+      ["a080", "\u721B\u721C\u721E", 9, "\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240", 6, "\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285", 4, "\u728C\u728E\u7290\u7291\u7293", 11, "\u72A0", 11, "\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA", 6, "\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],
+      ["a1a1", "\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 7, "\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],
+      ["a2a1", "\u2170", 9],
+      ["a2b1", "\u2488", 19, "\u2474", 19, "\u2460", 9],
+      ["a2e5", "\u3220", 9],
+      ["a2f1", "\u2160", 11],
+      ["a3a1", "\uFF01\uFF02\uFF03\uFFE5\uFF05", 88, "\uFFE3"],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a6e0", "\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],
+      ["a6ee", "\uFE3B\uFE3C\uFE37\uFE38\uFE31"],
+      ["a6f4", "\uFE33\uFE34"],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a840", "\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550", 35, "\u2581", 6],
+      ["a880", "\u2588", 7, "\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],
+      ["a8a1", "\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],
+      ["a8bd", "\u0144\u0148"],
+      ["a8c0", "\u0261"],
+      ["a8c5", "\u3105", 36],
+      ["a940", "\u3021", 8, "\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],
+      ["a959", "\u2121\u3231"],
+      ["a95c", "\u2010"],
+      ["a960", "\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49", 9, "\uFE54\uFE55\uFE56\uFE57\uFE59", 8],
+      ["a980", "\uFE62", 4, "\uFE68\uFE69\uFE6A\uFE6B"],
+      ["a996", "\u3007"],
+      ["a9a4", "\u2500", 75],
+      ["aa40", "\u72DC\u72DD\u72DF\u72E2", 5, "\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304", 5, "\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340", 8],
+      ["aa80", "\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358", 7, "\u7361", 10, "\u736E\u7370\u7371"],
+      ["ab40", "\u7372", 11, "\u737F", 4, "\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3", 5, "\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3", 4],
+      ["ab80", "\u73CB\u73CC\u73CE\u73D2", 6, "\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3", 4],
+      ["ac40", "\u73F8", 10, "\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411", 8, "\u741C", 5, "\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437", 4, "\u743D\u743E\u743F\u7440\u7442", 11],
+      ["ac80", "\u744E", 6, "\u7456\u7458\u745D\u7460", 12, "\u746E\u746F\u7471", 4, "\u7478\u7479\u747A"],
+      ["ad40", "\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491", 10, "\u749D\u749F", 7, "\u74AA", 15, "\u74BB", 12],
+      ["ad80", "\u74C8", 9, "\u74D3", 8, "\u74DD\u74DF\u74E1\u74E5\u74E7", 6, "\u74F0\u74F1\u74F2"],
+      ["ae40", "\u74F3\u74F5\u74F8", 6, "\u7500\u7501\u7502\u7503\u7505", 7, "\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520", 4, "\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],
+      ["ae80", "\u755D", 7, "\u7567\u7568\u7569\u756B", 6, "\u7573\u7575\u7576\u7577\u757A", 4, "\u7580\u7581\u7582\u7584\u7585\u7587"],
+      ["af40", "\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6", 4, "\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],
+      ["af80", "\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],
+      ["b040", "\u7645", 6, "\u764E", 5, "\u7655\u7657", 4, "\u765D\u765F\u7660\u7661\u7662\u7664", 6, "\u766C\u766D\u766E\u7670", 7, "\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],
+      ["b080", "\u769C", 7, "\u76A5", 8, "\u76AF\u76B0\u76B3\u76B5", 9, "\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],
+      ["b140", "\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0", 4, "\u76E6", 7, "\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E", 10, "\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],
+      ["b180", "\u772C\u772E\u7730", 4, "\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748", 7, "\u7752", 7, "\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],
+      ["b240", "\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D", 11, "\u777A\u777B\u777C\u7781\u7782\u7783\u7786", 5, "\u778F\u7790\u7793", 11, "\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6", 4],
+      ["b280", "\u77BC\u77BE\u77C0", 12, "\u77CE", 8, "\u77D8\u77D9\u77DA\u77DD", 4, "\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],
+      ["b340", "\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803", 5, "\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],
+      ["b380", "\u785B\u785C\u785E", 11, "\u786F", 7, "\u7878\u7879\u787A\u787B\u787D", 6, "\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],
+      ["b440", "\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8", 7, "\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA", 9],
+      ["b480", "\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED", 4, "\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB", 5, "\u7902\u7903\u7904\u7906", 6, "\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],
+      ["b540", "\u790D", 5, "\u7914", 9, "\u791F", 4, "\u7925", 14, "\u7935", 4, "\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A", 8, "\u7954\u7955\u7958\u7959\u7961\u7963"],
+      ["b580", "\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970", 6, "\u7979\u797B", 4, "\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],
+      ["b640", "\u7993", 6, "\u799B", 11, "\u79A8", 10, "\u79B4", 4, "\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9", 5, "\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],
+      ["b680", "\u79EC\u79EE\u79F1", 6, "\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F", 4, "\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],
+      ["b740", "\u7A1D\u7A1F\u7A21\u7A22\u7A24", 14, "\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40", 5, "\u7A47", 9, "\u7A52", 4, "\u7A58", 16],
+      ["b780", "\u7A69", 6, "\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],
+      ["b840", "\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE", 4, "\u7AB4", 10, "\u7AC0", 10, "\u7ACC", 9, "\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7", 5, "\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],
+      ["b880", "\u7AF4", 4, "\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],
+      ["b940", "\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F", 5, "\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63", 10, "\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86", 6, "\u7B8E\u7B8F"],
+      ["b980", "\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9", 7, "\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],
+      ["ba40", "\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4", 4, "\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2", 4, "\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF", 7, "\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10", 5, "\u7C17\u7C18\u7C19"],
+      ["ba80", "\u7C1A", 4, "\u7C20", 5, "\u7C28\u7C29\u7C2B", 12, "\u7C39", 5, "\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],
+      ["bb40", "\u7C43", 9, "\u7C4E", 36, "\u7C75", 5, "\u7C7E", 9],
+      ["bb80", "\u7C88\u7C8A", 6, "\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4", 4, "\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],
+      ["bc40", "\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE", 6, "\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1", 6, "\u7CE9", 5, "\u7CF0", 7, "\u7CF9\u7CFA\u7CFC", 13, "\u7D0B", 5],
+      ["bc80", "\u7D11", 14, "\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30", 6, "\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],
+      ["bd40", "\u7D37", 54, "\u7D6F", 7],
+      ["bd80", "\u7D78", 32, "\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],
+      ["be40", "\u7D99", 12, "\u7DA7", 6, "\u7DAF", 42],
+      ["be80", "\u7DDA", 32, "\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],
+      ["bf40", "\u7DFB", 62],
+      ["bf80", "\u7E3A\u7E3C", 4, "\u7E42", 4, "\u7E48", 21, "\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],
+      ["c040", "\u7E5E", 35, "\u7E83", 23, "\u7E9C\u7E9D\u7E9E"],
+      ["c080", "\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B", 6, "\u7F43\u7F46", 9, "\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],
+      ["c140", "\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63", 4, "\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82", 7, "\u7F8B\u7F8D\u7F8F", 4, "\u7F95", 4, "\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8", 6, "\u7FB1"],
+      ["c180", "\u7FB3", 4, "\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF", 4, "\u7FD6\u7FD7\u7FD9", 5, "\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],
+      ["c240", "\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4", 6, "\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B", 5, "\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],
+      ["c280", "\u8059\u805B", 13, "\u806B", 5, "\u8072", 11, "\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],
+      ["c340", "\u807E\u8081\u8082\u8085\u8088\u808A\u808D", 5, "\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7", 4, "\u80CF", 6, "\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],
+      ["c380", "\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F", 12, "\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139", 4, "\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],
+      ["c440", "\u8140", 5, "\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B", 4, "\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183", 4, "\u8189\u818B\u818C\u818D\u818E\u8190\u8192", 5, "\u8199\u819A\u819E", 4, "\u81A4\u81A5"],
+      ["c480", "\u81A7\u81A9\u81AB", 7, "\u81B4", 5, "\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD", 6, "\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],
+      ["c540", "\u81D4", 14, "\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE", 4, "\u81F5", 5, "\u81FD\u81FF\u8203\u8207", 4, "\u820E\u820F\u8211\u8213\u8215", 5, "\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],
+      ["c580", "\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250", 7, "\u8259\u825B\u825C\u825D\u825E\u8260", 7, "\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],
+      ["c640", "\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],
+      ["c680", "\u82FA\u82FC", 4, "\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D", 9, "\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],
+      ["c740", "\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A", 4, "\u8353\u8355", 4, "\u835D\u8362\u8370", 6, "\u8379\u837A\u837E", 6, "\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1", 6, "\u83AC\u83AD\u83AE"],
+      ["c780", "\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],
+      ["c840", "\u83EE\u83EF\u83F3", 4, "\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412", 5, "\u8419\u841A\u841B\u841E", 5, "\u8429", 7, "\u8432", 5, "\u8439\u843A\u843B\u843E", 7, "\u8447\u8448\u8449"],
+      ["c880", "\u844A", 6, "\u8452", 4, "\u8458\u845D\u845E\u845F\u8460\u8462\u8464", 4, "\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],
+      ["c940", "\u847D", 4, "\u8483\u8484\u8485\u8486\u848A\u848D\u848F", 7, "\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2", 12, "\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],
+      ["c980", "\u84D8", 4, "\u84DE\u84E1\u84E2\u84E4\u84E7", 4, "\u84ED\u84EE\u84EF\u84F1", 10, "\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],
+      ["ca40", "\u8503", 8, "\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522", 8, "\u852D", 9, "\u853E", 4, "\u8544\u8545\u8546\u8547\u854B", 10],
+      ["ca80", "\u8557\u8558\u855A\u855B\u855C\u855D\u855F", 4, "\u8565\u8566\u8567\u8569", 8, "\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],
+      ["cb40", "\u8582\u8583\u8586\u8588", 6, "\u8590", 10, "\u859D", 6, "\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1", 5, "\u85B8\u85BA", 6, "\u85C2", 6, "\u85CA", 4, "\u85D1\u85D2"],
+      ["cb80", "\u85D4\u85D6", 5, "\u85DD", 6, "\u85E5\u85E6\u85E7\u85E8\u85EA", 14, "\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],
+      ["cc40", "\u85F9\u85FA\u85FC\u85FD\u85FE\u8600", 4, "\u8606", 10, "\u8612\u8613\u8614\u8615\u8617", 15, "\u8628\u862A", 13, "\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],
+      ["cc80", "\u8641", 11, "\u8652\u8653\u8655", 4, "\u865B\u865C\u865D\u865F\u8660\u8661\u8663", 7, "\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],
+      ["cd40", "\u866D\u866F\u8670\u8672", 6, "\u8683", 6, "\u868E", 4, "\u8694\u8696", 5, "\u869E", 4, "\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB", 4, "\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],
+      ["cd80", "\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],
+      ["ce40", "\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740", 6, "\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A", 5, "\u8761\u8762\u8766", 7, "\u876F\u8771\u8772\u8773\u8775"],
+      ["ce80", "\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E", 4, "\u8794\u8795\u8796\u8798", 6, "\u87A0", 4, "\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],
+      ["cf40", "\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1", 4, "\u87C7\u87C8\u87C9\u87CC", 4, "\u87D4", 6, "\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF", 9],
+      ["cf80", "\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804", 5, "\u880B", 7, "\u8814\u8817\u8818\u8819\u881A\u881C", 4, "\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],
+      ["d040", "\u8824", 13, "\u8833", 5, "\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846", 5, "\u884E", 5, "\u8855\u8856\u8858\u885A", 6, "\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],
+      ["d080", "\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897", 4, "\u889D", 4, "\u88A3\u88A5", 5, "\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],
+      ["d140", "\u88AC\u88AE\u88AF\u88B0\u88B2", 4, "\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA", 4, "\u88E0\u88E1\u88E6\u88E7\u88E9", 6, "\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903", 5],
+      ["d180", "\u8909\u890B", 4, "\u8911\u8914", 4, "\u891C", 4, "\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],
+      ["d240", "\u8938", 8, "\u8942\u8943\u8945", 24, "\u8960", 5, "\u8967", 19, "\u897C"],
+      ["d280", "\u897D\u897E\u8980\u8982\u8984\u8985\u8987", 26, "\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],
+      ["d340", "\u89A2", 30, "\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4", 6],
+      ["d380", "\u89FB", 4, "\u8A01", 5, "\u8A08", 21, "\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],
+      ["d440", "\u8A1E", 31, "\u8A3F", 8, "\u8A49", 21],
+      ["d480", "\u8A5F", 25, "\u8A7A", 6, "\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],
+      ["d540", "\u8A81", 7, "\u8A8B", 7, "\u8A94", 46],
+      ["d580", "\u8AC3", 32, "\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],
+      ["d640", "\u8AE4", 34, "\u8B08", 27],
+      ["d680", "\u8B24\u8B25\u8B27", 30, "\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],
+      ["d740", "\u8B46", 31, "\u8B67", 4, "\u8B6D", 25],
+      ["d780", "\u8B87", 24, "\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],
+      ["d840", "\u8C38", 8, "\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D", 7, "\u8C56\u8C57\u8C58\u8C59\u8C5B", 5, "\u8C63", 6, "\u8C6C", 6, "\u8C74\u8C75\u8C76\u8C77\u8C7B", 6, "\u8C83\u8C84\u8C86\u8C87"],
+      ["d880", "\u8C88\u8C8B\u8C8D", 6, "\u8C95\u8C96\u8C97\u8C99", 20, "\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],
+      ["d940", "\u8CAE", 62],
+      ["d980", "\u8CED", 32, "\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],
+      ["da40", "\u8D0E", 14, "\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78", 8, "\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C", 4, "\u8D92\u8D93\u8D95", 9, "\u8DA0\u8DA1"],
+      ["da80", "\u8DA2\u8DA4", 12, "\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],
+      ["db40", "\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE", 6, "\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15", 7, "\u8E20\u8E21\u8E24", 4, "\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],
+      ["db80", "\u8E3F\u8E43\u8E45\u8E46\u8E4C", 4, "\u8E53", 5, "\u8E5A", 11, "\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],
+      ["dc40", "\u8E73\u8E75\u8E77", 4, "\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88", 6, "\u8E91\u8E92\u8E93\u8E95", 6, "\u8E9D\u8E9F", 11, "\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3", 6, "\u8EBB", 7],
+      ["dc80", "\u8EC3", 10, "\u8ECF", 21, "\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],
+      ["dd40", "\u8EE5", 62],
+      ["dd80", "\u8F24", 32, "\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],
+      ["de40", "\u8F45", 32, "\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],
+      ["de80", "\u8FC9", 4, "\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],
+      ["df40", "\u9019\u901C\u9023\u9024\u9025\u9027", 5, "\u9030", 4, "\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048", 4, "\u904E\u9054\u9055\u9056\u9059\u905A\u905C", 5, "\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F", 4, "\u9076", 6, "\u907E\u9081"],
+      ["df80", "\u9084\u9085\u9086\u9087\u9089\u908A\u908C", 4, "\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],
+      ["e040", "\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105", 19, "\u911A\u911B\u911C"],
+      ["e080", "\u911D\u911F\u9120\u9121\u9124", 10, "\u9130\u9132", 6, "\u913A", 8, "\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],
+      ["e140", "\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180", 4, "\u9186\u9188\u918A\u918E\u918F\u9193", 6, "\u919C", 5, "\u91A4", 5, "\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],
+      ["e180", "\u91BC", 10, "\u91C8\u91CB\u91D0\u91D2", 9, "\u91DD", 8, "\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],
+      ["e240", "\u91E6", 62],
+      ["e280", "\u9225", 32, "\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967", 5, "\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],
+      ["e340", "\u9246", 45, "\u9275", 16],
+      ["e380", "\u9286", 7, "\u928F", 24, "\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],
+      ["e440", "\u92A8", 5, "\u92AF", 24, "\u92C9", 31],
+      ["e480", "\u92E9", 32, "\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],
+      ["e540", "\u930A", 51, "\u933F", 10],
+      ["e580", "\u934A", 31, "\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],
+      ["e640", "\u936C", 34, "\u9390", 27],
+      ["e680", "\u93AC", 29, "\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],
+      ["e740", "\u93CE", 7, "\u93D7", 54],
+      ["e780", "\u940E", 32, "\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21", 6, "\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F", 4, "\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],
+      ["e840", "\u942F", 14, "\u943F", 43, "\u946C\u946D\u946E\u946F"],
+      ["e880", "\u9470", 20, "\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],
+      ["e940", "\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577", 7, "\u9580", 42],
+      ["e980", "\u95AB", 32, "\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],
+      ["ea40", "\u95CC", 27, "\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623", 6, "\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],
+      ["ea80", "\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D", 4, "\u9673\u9678", 12, "\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],
+      ["eb40", "\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D", 9, "\u96A8", 7, "\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6", 9, "\u96E1", 6, "\u96EB"],
+      ["eb80", "\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717", 4, "\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],
+      ["ec40", "\u9721", 8, "\u972B\u972C\u972E\u972F\u9731\u9733", 4, "\u973A\u973B\u973C\u973D\u973F", 18, "\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A", 7],
+      ["ec80", "\u9772\u9775\u9777", 4, "\u977D", 7, "\u9786", 4, "\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799", 4, "\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],
+      ["ed40", "\u979E\u979F\u97A1\u97A2\u97A4", 6, "\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5", 46],
+      ["ed80", "\u97E4\u97E5\u97E8\u97EE", 4, "\u97F4\u97F7", 23, "\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],
+      ["ee40", "\u980F", 62],
+      ["ee80", "\u984E", 32, "\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6", 4, "\u94BC\u94BD\u94BF\u94C4\u94C8", 6, "\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],
+      ["ef40", "\u986F", 5, "\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8", 37, "\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0", 4],
+      ["ef80", "\u98E5\u98E6\u98E9", 30, "\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512", 4, "\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564", 8, "\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],
+      ["f040", "\u9908", 4, "\u990E\u990F\u9911", 28, "\u992F", 26],
+      ["f080", "\u994A", 9, "\u9956", 12, "\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28", 4, "\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66", 6, "\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],
+      ["f140", "\u998C\u998E\u999A", 10, "\u99A6\u99A7\u99A9", 47],
+      ["f180", "\u99D9", 32, "\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],
+      ["f240", "\u99FA", 62],
+      ["f280", "\u9A39", 32, "\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],
+      ["f340", "\u9A5A", 17, "\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9", 6, "\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6", 4, "\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],
+      ["f380", "\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0", 8, "\u9AFA\u9AFC", 6, "\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],
+      ["f440", "\u9B07\u9B09", 5, "\u9B10\u9B11\u9B12\u9B14", 10, "\u9B20\u9B21\u9B22\u9B24", 10, "\u9B30\u9B31\u9B33", 7, "\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55", 5],
+      ["f480", "\u9B5B", 32, "\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],
+      ["f540", "\u9B7C", 62],
+      ["f580", "\u9BBB", 32, "\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],
+      ["f640", "\u9BDC", 62],
+      ["f680", "\u9C1B", 32, "\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85", 5, "\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E", 5, "\u9CA5", 4, "\u9CAB\u9CAD\u9CAE\u9CB0", 7, "\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],
+      ["f740", "\u9C3C", 62],
+      ["f780", "\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE", 4, "\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC", 4, "\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],
+      ["f840", "\u9CE3", 62],
+      ["f880", "\u9D22", 32],
+      ["f940", "\u9D43", 62],
+      ["f980", "\u9D82", 32],
+      ["fa40", "\u9DA3", 62],
+      ["fa80", "\u9DE2", 32],
+      ["fb40", "\u9E03", 27, "\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74", 9, "\u9E80"],
+      ["fb80", "\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C", 5, "\u9E94", 8, "\u9E9E\u9EA0", 5, "\u9EA7\u9EA8\u9EA9\u9EAA"],
+      ["fc40", "\u9EAB", 8, "\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF", 4, "\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0", 8, "\u9EFA\u9EFD\u9EFF", 6],
+      ["fc80", "\u9F06", 4, "\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A", 5, "\u9F21\u9F23", 8, "\u9F2D\u9F2E\u9F30\u9F31"],
+      ["fd40", "\u9F32", 4, "\u9F38\u9F3A\u9F3C\u9F3F", 4, "\u9F45", 10, "\u9F52", 38],
+      ["fd80", "\u9F79", 5, "\u9F81\u9F82\u9F8D", 11, "\u9F9C\u9F9D\u9F9E\u9FA1", 4, "\uF92C\uF979\uF995\uF9E7\uF9F1"],
+      ["fe40", "\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json
+var require_gbk_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) {
+    module2.exports = [
+      ["a140", "\uE4C6", 62],
+      ["a180", "\uE505", 32],
+      ["a240", "\uE526", 62],
+      ["a280", "\uE565", 32],
+      ["a2ab", "\uE766", 5],
+      ["a2e3", "\u20AC\uE76D"],
+      ["a2ef", "\uE76E\uE76F"],
+      ["a2fd", "\uE770\uE771"],
+      ["a340", "\uE586", 62],
+      ["a380", "\uE5C5", 31, "\u3000"],
+      ["a440", "\uE5E6", 62],
+      ["a480", "\uE625", 32],
+      ["a4f4", "\uE772", 10],
+      ["a540", "\uE646", 62],
+      ["a580", "\uE685", 32],
+      ["a5f7", "\uE77D", 7],
+      ["a640", "\uE6A6", 62],
+      ["a680", "\uE6E5", 32],
+      ["a6b9", "\uE785", 7],
+      ["a6d9", "\uE78D", 6],
+      ["a6ec", "\uE794\uE795"],
+      ["a6f3", "\uE796"],
+      ["a6f6", "\uE797", 8],
+      ["a740", "\uE706", 62],
+      ["a780", "\uE745", 32],
+      ["a7c2", "\uE7A0", 14],
+      ["a7f2", "\uE7AF", 12],
+      ["a896", "\uE7BC", 10],
+      ["a8bc", "\u1E3F"],
+      ["a8bf", "\u01F9"],
+      ["a8c1", "\uE7C9\uE7CA\uE7CB\uE7CC"],
+      ["a8ea", "\uE7CD", 20],
+      ["a958", "\uE7E2"],
+      ["a95b", "\uE7E3"],
+      ["a95d", "\uE7E4\uE7E5\uE7E6"],
+      ["a989", "\u303E\u2FF0", 11],
+      ["a997", "\uE7F4", 12],
+      ["a9f0", "\uE801", 14],
+      ["aaa1", "\uE000", 93],
+      ["aba1", "\uE05E", 93],
+      ["aca1", "\uE0BC", 93],
+      ["ada1", "\uE11A", 93],
+      ["aea1", "\uE178", 93],
+      ["afa1", "\uE1D6", 93],
+      ["d7fa", "\uE810", 4],
+      ["f8a1", "\uE234", 93],
+      ["f9a1", "\uE292", 93],
+      ["faa1", "\uE2F0", 93],
+      ["fba1", "\uE34E", 93],
+      ["fca1", "\uE3AC", 93],
+      ["fda1", "\uE40A", 93],
+      ["fe50", "\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],
+      ["fe80", "\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13", 6, "\u4DAE\uE864\uE468", 93],
+      ["8135f437", "\uE7C7"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json
+var require_gb18030_ranges = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) {
+    module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json
+var require_cp949 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"],
+      ["8161", "\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41", 9, "\uAC4C\uAC4E", 5, "\uAC55"],
+      ["8181", "\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D", 18, "\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B", 4, "\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95", 6, "\uAC9E\uACA2", 5, "\uACAB\uACAD\uACAE\uACB1", 6, "\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD", 7, "\uACD6\uACD8", 7, "\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7", 4, "\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07", 4, "\uAD0E\uAD10\uAD12\uAD13"],
+      ["8241", "\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21", 7, "\uAD2A\uAD2B\uAD2E", 5],
+      ["8261", "\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D", 6, "\uAD46\uAD48\uAD4A", 5, "\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],
+      ["8281", "\uAD59", 7, "\uAD62\uAD64", 7, "\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83", 4, "\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91", 10, "\uAD9E", 5, "\uADA5", 17, "\uADB8", 7, "\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9", 6, "\uADD2\uADD4", 7, "\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5", 18],
+      ["8341", "\uADFA\uADFB\uADFD\uADFE\uAE02", 5, "\uAE0A\uAE0C\uAE0E", 5, "\uAE15", 7],
+      ["8361", "\uAE1D", 18, "\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],
+      ["8381", "\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57", 4, "\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71", 6, "\uAE7A\uAE7E", 5, "\uAE86", 5, "\uAE8D", 46, "\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5", 6, "\uAECE\uAED2", 5, "\uAEDA\uAEDB\uAEDD", 8],
+      ["8441", "\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE", 5, "\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD", 8],
+      ["8461", "\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11", 18],
+      ["8481", "\uAF24", 7, "\uAF2E\uAF2F\uAF31\uAF33\uAF35", 6, "\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A", 5, "\uAF51", 10, "\uAF5E", 5, "\uAF66", 18, "\uAF7A", 5, "\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89", 6, "\uAF92\uAF93\uAF94\uAF96", 5, "\uAF9D", 26, "\uAFBA\uAFBB\uAFBD\uAFBE"],
+      ["8541", "\uAFBF\uAFC1", 5, "\uAFCA\uAFCC\uAFCF", 4, "\uAFD5", 6, "\uAFDD", 4],
+      ["8561", "\uAFE2", 5, "\uAFEA", 5, "\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9", 6, "\uB002\uB003"],
+      ["8581", "\uB005", 6, "\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015", 6, "\uB01E", 9, "\uB029", 26, "\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E", 29, "\uB07E\uB07F\uB081\uB082\uB083\uB085", 6, "\uB08E\uB090\uB092", 5, "\uB09B\uB09D\uB09E\uB0A3\uB0A4"],
+      ["8641", "\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD", 6, "\uB0C6\uB0CA", 5, "\uB0D2"],
+      ["8661", "\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9", 6, "\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6", 10],
+      ["8681", "\uB0F1", 22, "\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E", 4, "\uB126\uB127\uB129\uB12A\uB12B\uB12D", 6, "\uB136\uB13A", 5, "\uB142\uB143\uB145\uB146\uB147\uB149", 6, "\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161", 22, "\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183", 4, "\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],
+      ["8741", "\uB19E", 9, "\uB1A9", 15],
+      ["8761", "\uB1B9", 18, "\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],
+      ["8781", "\uB1D6", 5, "\uB1DE\uB1E0", 7, "\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1", 7, "\uB1FA\uB1FC\uB1FE", 5, "\uB206\uB207\uB209\uB20A\uB20D", 6, "\uB216\uB218\uB21A", 5, "\uB221", 18, "\uB235", 6, "\uB23D", 26, "\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261", 6, "\uB26A", 4],
+      ["8841", "\uB26F", 4, "\uB276", 5, "\uB27D", 6, "\uB286\uB287\uB288\uB28A", 4],
+      ["8861", "\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B", 4, "\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],
+      ["8881", "\uB2B8", 15, "\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3", 4, "\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309", 6, "\uB312\uB316", 5, "\uB31D", 54, "\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],
+      ["8941", "\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379", 6, "\uB382\uB386", 5, "\uB38D"],
+      ["8961", "\uB38E\uB38F\uB391\uB392\uB393\uB395", 10, "\uB3A2", 5, "\uB3A9\uB3AA\uB3AB\uB3AD"],
+      ["8981", "\uB3AE", 21, "\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9", 18, "\uB3FD", 18, "\uB411", 6, "\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421", 6, "\uB42A\uB42C", 7, "\uB435", 15],
+      ["8a41", "\uB445", 10, "\uB452\uB453\uB455\uB456\uB457\uB459", 6, "\uB462\uB464\uB466"],
+      ["8a61", "\uB467", 4, "\uB46D", 18, "\uB481\uB482"],
+      ["8a81", "\uB483", 4, "\uB489", 19, "\uB49E", 5, "\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD", 7, "\uB4B6\uB4B8\uB4BA", 5, "\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9", 6, "\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6", 5, "\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7", 4, "\uB4EE\uB4F0\uB4F2", 5, "\uB4F9", 26, "\uB516\uB517\uB519\uB51A\uB51D"],
+      ["8b41", "\uB51E", 5, "\uB526\uB52B", 4, "\uB532\uB533\uB535\uB536\uB537\uB539", 6, "\uB542\uB546"],
+      ["8b61", "\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555", 6, "\uB55E\uB562", 8],
+      ["8b81", "\uB56B", 52, "\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6", 4, "\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5", 6, "\uB5CE\uB5D2", 5, "\uB5D9", 18, "\uB5ED", 18],
+      ["8c41", "\uB600", 15, "\uB612\uB613\uB615\uB616\uB617\uB619", 4],
+      ["8c61", "\uB61E", 6, "\uB626", 5, "\uB62D", 6, "\uB635", 5],
+      ["8c81", "\uB63B", 12, "\uB649", 26, "\uB665\uB666\uB667\uB669", 50, "\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5", 5, "\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2", 16],
+      ["8d41", "\uB6C3", 16, "\uB6D5", 8],
+      ["8d61", "\uB6DE", 17, "\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],
+      ["8d81", "\uB6FB", 4, "\uB702\uB703\uB704\uB706", 33, "\uB72A\uB72B\uB72D\uB72E\uB731", 6, "\uB73A\uB73C", 7, "\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D", 6, "\uB756", 9, "\uB761\uB762\uB763\uB765\uB766\uB767\uB769", 6, "\uB772\uB774\uB776", 5, "\uB77E\uB77F\uB781\uB782\uB783\uB785", 6, "\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],
+      ["8e41", "\uB79F\uB7A1", 6, "\uB7AA\uB7AE", 5, "\uB7B6\uB7B7\uB7B9", 8],
+      ["8e61", "\uB7C2", 4, "\uB7C8\uB7CA", 19],
+      ["8e81", "\uB7DE", 13, "\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5", 6, "\uB7FE\uB802", 4, "\uB80A\uB80B\uB80D\uB80E\uB80F\uB811", 6, "\uB81A\uB81C\uB81E", 5, "\uB826\uB827\uB829\uB82A\uB82B\uB82D", 6, "\uB836\uB83A", 5, "\uB841\uB842\uB843\uB845", 11, "\uB852\uB854", 7, "\uB85E\uB85F\uB861\uB862\uB863\uB865", 6, "\uB86E\uB870\uB872", 5, "\uB879\uB87A\uB87B\uB87D", 7],
+      ["8f41", "\uB885", 7, "\uB88E", 17],
+      ["8f61", "\uB8A0", 7, "\uB8A9", 6, "\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9", 4],
+      ["8f81", "\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6", 5, "\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5", 7, "\uB8DE\uB8E0\uB8E2", 5, "\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1", 6, "\uB8FA\uB8FC\uB8FE", 5, "\uB905", 18, "\uB919", 6, "\uB921", 26, "\uB93E\uB93F\uB941\uB942\uB943\uB945", 6, "\uB94D\uB94E\uB950\uB952", 5],
+      ["9041", "\uB95A\uB95B\uB95D\uB95E\uB95F\uB961", 6, "\uB96A\uB96C\uB96E", 5, "\uB976\uB977\uB979\uB97A\uB97B\uB97D"],
+      ["9061", "\uB97E", 5, "\uB986\uB988\uB98B\uB98C\uB98F", 15],
+      ["9081", "\uB99F", 12, "\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5", 6, "\uB9BE\uB9C0\uB9C2", 5, "\uB9CA\uB9CB\uB9CD\uB9D3", 4, "\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED", 6, "\uB9F6\uB9FB", 4, "\uBA02", 5, "\uBA09", 11, "\uBA16", 33, "\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],
+      ["9141", "\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D", 6, "\uBA66\uBA6A", 5],
+      ["9161", "\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79", 9, "\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D", 5],
+      ["9181", "\uBA93", 20, "\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3", 4, "\uBABA\uBABC\uBABE", 5, "\uBAC5\uBAC6\uBAC7\uBAC9", 14, "\uBADA", 33, "\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05", 7, "\uBB0E\uBB10\uBB12", 5, "\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21", 6],
+      ["9241", "\uBB28\uBB2A\uBB2C", 7, "\uBB37\uBB39\uBB3A\uBB3F", 4, "\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],
+      ["9261", "\uBB53\uBB55\uBB56\uBB57\uBB59", 7, "\uBB62\uBB64", 7, "\uBB6D", 4],
+      ["9281", "\uBB72", 21, "\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91", 18, "\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD", 6, "\uBBB5\uBBB6\uBBB8", 7, "\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9", 6, "\uBBD1\uBBD2\uBBD4", 35, "\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],
+      ["9341", "\uBC03", 4, "\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],
+      ["9361", "\uBC36\uBC37\uBC39", 6, "\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51", 8],
+      ["9381", "\uBC5A\uBC5B\uBC5C\uBC5E", 37, "\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F", 4, "\uBC96\uBC98\uBC9B", 4, "\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9", 6, "\uBCB2\uBCB6", 5, "\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5", 7, "\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD", 22, "\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],
+      ["9441", "\uBCFE", 5, "\uBD06\uBD08\uBD0A", 5, "\uBD11\uBD12\uBD13\uBD15", 8],
+      ["9461", "\uBD1E", 5, "\uBD25", 6, "\uBD2D", 12],
+      ["9481", "\uBD3A", 5, "\uBD41", 6, "\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51", 6, "\uBD5A", 9, "\uBD65\uBD66\uBD67\uBD69", 22, "\uBD82\uBD83\uBD85\uBD86\uBD8B", 4, "\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D", 6, "\uBDA5", 10, "\uBDB1", 6, "\uBDB9", 24],
+      ["9541", "\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD", 11, "\uBDEA", 5, "\uBDF1"],
+      ["9561", "\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9", 6, "\uBE01\uBE02\uBE04\uBE06", 5, "\uBE0E\uBE0F\uBE11\uBE12\uBE13"],
+      ["9581", "\uBE15", 6, "\uBE1E\uBE20", 35, "\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F", 4, "\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B", 4, "\uBE72\uBE76", 4, "\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85", 6, "\uBE8E\uBE92", 5, "\uBE9A", 13, "\uBEA9", 14],
+      ["9641", "\uBEB8", 23, "\uBED2\uBED3"],
+      ["9661", "\uBED5\uBED6\uBED9", 6, "\uBEE1\uBEE2\uBEE6", 5, "\uBEED", 8],
+      ["9681", "\uBEF6", 10, "\uBF02", 5, "\uBF0A", 13, "\uBF1A\uBF1E", 33, "\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49", 6, "\uBF52\uBF53\uBF54\uBF56", 44],
+      ["9741", "\uBF83", 16, "\uBF95", 8],
+      ["9761", "\uBF9E", 17, "\uBFB1", 7],
+      ["9781", "\uBFB9", 11, "\uBFC6", 5, "\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5", 6, "\uBFDD\uBFDE\uBFE0\uBFE2", 89, "\uC03D\uC03E\uC03F"],
+      ["9841", "\uC040", 16, "\uC052", 5, "\uC059\uC05A\uC05B"],
+      ["9861", "\uC05D\uC05E\uC05F\uC061", 6, "\uC06A", 15],
+      ["9881", "\uC07A", 21, "\uC092\uC093\uC095\uC096\uC097\uC099", 6, "\uC0A2\uC0A4\uC0A6", 5, "\uC0AE\uC0B1\uC0B2\uC0B7", 4, "\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1", 6, "\uC0DA\uC0DE", 5, "\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED", 6, "\uC0F6\uC0F8\uC0FA", 5, "\uC101\uC102\uC103\uC105\uC106\uC107\uC109", 6, "\uC111\uC112\uC113\uC114\uC116", 5, "\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],
+      ["9941", "\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141", 6, "\uC14A\uC14E", 5, "\uC156\uC157"],
+      ["9961", "\uC159\uC15A\uC15B\uC15D", 6, "\uC166\uC16A", 5, "\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],
+      ["9981", "\uC17C", 8, "\uC186", 5, "\uC18F\uC191\uC192\uC193\uC195\uC197", 4, "\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1", 11, "\uC1BE", 5, "\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD", 6, "\uC1D5\uC1D6\uC1D9", 6, "\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9", 6, "\uC1F2\uC1F4", 7, "\uC1FE\uC1FF\uC201\uC202\uC203\uC205", 6, "\uC20E\uC210\uC212", 5, "\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],
+      ["9a41", "\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235", 16],
+      ["9a61", "\uC246\uC247\uC249", 6, "\uC252\uC253\uC255\uC256\uC257\uC259", 6, "\uC261\uC262\uC263\uC264\uC266"],
+      ["9a81", "\uC267", 4, "\uC26E\uC26F\uC271\uC272\uC273\uC275", 6, "\uC27E\uC280\uC282", 5, "\uC28A", 5, "\uC291", 6, "\uC299\uC29A\uC29C\uC29E", 5, "\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE", 5, "\uC2B6\uC2B8\uC2BA", 33, "\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5", 5, "\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301", 6, "\uC30A\uC30B\uC30E\uC30F"],
+      ["9b41", "\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D", 6, "\uC326\uC327\uC32A", 8],
+      ["9b61", "\uC333", 17, "\uC346", 7],
+      ["9b81", "\uC34E", 25, "\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373", 4, "\uC37A\uC37B\uC37E", 5, "\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D", 50, "\uC3C1", 22, "\uC3DA"],
+      ["9c41", "\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3", 4, "\uC3EA\uC3EB\uC3EC\uC3EE", 5, "\uC3F6\uC3F7\uC3F9", 5],
+      ["9c61", "\uC3FF", 8, "\uC409", 6, "\uC411", 9],
+      ["9c81", "\uC41B", 8, "\uC425", 6, "\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435", 6, "\uC43E", 9, "\uC449", 26, "\uC466\uC467\uC469\uC46A\uC46B\uC46D", 6, "\uC476\uC477\uC478\uC47A", 5, "\uC481", 18, "\uC495", 6, "\uC49D", 12],
+      ["9d41", "\uC4AA", 13, "\uC4B9\uC4BA\uC4BB\uC4BD", 8],
+      ["9d61", "\uC4C6", 25],
+      ["9d81", "\uC4E0", 8, "\uC4EA", 5, "\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502", 9, "\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515", 6, "\uC51D", 10, "\uC52A\uC52B\uC52D\uC52E\uC52F\uC531", 6, "\uC53A\uC53C\uC53E", 5, "\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569", 6, "\uC572\uC576", 5, "\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],
+      ["9e41", "\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1", 7, "\uC5AA", 9, "\uC5B6"],
+      ["9e61", "\uC5B7\uC5BA\uC5BF", 4, "\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9", 6, "\uC5E2\uC5E4\uC5E6\uC5E7"],
+      ["9e81", "\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611", 6, "\uC61A\uC61D", 6, "\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649", 6, "\uC652\uC656", 5, "\uC65E\uC65F\uC661", 10, "\uC66D\uC66E\uC670\uC672", 5, "\uC67A\uC67B\uC67D\uC67E\uC67F\uC681", 6, "\uC68A\uC68C\uC68E", 5, "\uC696\uC697\uC699\uC69A\uC69B\uC69D", 6, "\uC6A6"],
+      ["9f41", "\uC6A8\uC6AA", 5, "\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB", 4, "\uC6C2\uC6C4\uC6C6", 5, "\uC6CE"],
+      ["9f61", "\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5", 6, "\uC6DE\uC6DF\uC6E2", 5, "\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],
+      ["9f81", "\uC6F3", 4, "\uC6FA\uC6FB\uC6FC\uC6FE", 5, "\uC706\uC707\uC709\uC70A\uC70B\uC70D", 6, "\uC716\uC718\uC71A", 5, "\uC722\uC723\uC725\uC726\uC727\uC729", 6, "\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745", 4, "\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761", 6, "\uC769\uC76A\uC76C", 7, "\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B", 4, "\uC7A2\uC7A7", 4, "\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],
+      ["a041", "\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2", 5, "\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1", 6, "\uC7D9\uC7DA\uC7DB\uC7DC"],
+      ["a061", "\uC7DE", 5, "\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED", 13],
+      ["a081", "\uC7FB", 4, "\uC802\uC803\uC805\uC806\uC807\uC809\uC80B", 4, "\uC812\uC814\uC817", 4, "\uC81E\uC81F\uC821\uC822\uC823\uC825", 6, "\uC82E\uC830\uC832", 5, "\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841", 6, "\uC84A\uC84B\uC84E", 5, "\uC855", 26, "\uC872\uC873\uC875\uC876\uC877\uC879\uC87B", 4, "\uC882\uC884\uC888\uC889\uC88A\uC88E", 5, "\uC895", 7, "\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],
+      ["a141", "\uC8A5\uC8A6\uC8A7\uC8A9", 18, "\uC8BE\uC8BF\uC8C0\uC8C1"],
+      ["a161", "\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD", 6, "\uC8D6\uC8D8\uC8DA", 5, "\uC8E2\uC8E3\uC8E5"],
+      ["a181", "\uC8E6", 14, "\uC8F6", 5, "\uC8FE\uC8FF\uC901\uC902\uC903\uC907", 4, "\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 9, "\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],
+      ["a241", "\uC910\uC912", 5, "\uC919", 18],
+      ["a261", "\uC92D", 6, "\uC935", 18],
+      ["a281", "\uC948", 7, "\uC952\uC953\uC955\uC956\uC957\uC959", 6, "\uC962\uC964", 7, "\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],
+      ["a341", "\uC971\uC972\uC973\uC975", 6, "\uC97D", 10, "\uC98A\uC98B\uC98D\uC98E\uC98F"],
+      ["a361", "\uC991", 6, "\uC99A\uC99C\uC99E", 16],
+      ["a381", "\uC9AF", 16, "\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB", 4, "\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01", 58, "\uFFE6\uFF3D", 32, "\uFFE3"],
+      ["a441", "\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2", 5, "\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],
+      ["a461", "\uCA05\uCA06\uCA07\uCA0A\uCA0E", 5, "\uCA15\uCA16\uCA17\uCA19", 12],
+      ["a481", "\uCA26\uCA27\uCA28\uCA2A", 28, "\u3131", 93],
+      ["a541", "\uCA47", 4, "\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55", 6, "\uCA5E\uCA62", 5, "\uCA69\uCA6A"],
+      ["a561", "\uCA6B", 17, "\uCA7E", 5, "\uCA85\uCA86"],
+      ["a581", "\uCA87", 16, "\uCA99", 14, "\u2170", 9],
+      ["a5b0", "\u2160", 9],
+      ["a5c1", "\u0391", 16, "\u03A3", 6],
+      ["a5e1", "\u03B1", 16, "\u03C3", 6],
+      ["a641", "\uCAA8", 19, "\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],
+      ["a661", "\uCAC6", 5, "\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA", 5, "\uCAE1", 6],
+      ["a681", "\uCAE8\uCAE9\uCAEA\uCAEB\uCAED", 6, "\uCAF5", 18, "\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543", 7],
+      ["a741", "\uCB0B", 4, "\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19", 6, "\uCB22", 7],
+      ["a761", "\uCB2A", 22, "\uCB42\uCB43\uCB44"],
+      ["a781", "\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51", 6, "\uCB5A\uCB5B\uCB5C\uCB5E", 5, "\uCB65", 7, "\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399", 9, "\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0", 9, "\u3380", 4, "\u33BA", 5, "\u3390", 4, "\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],
+      ["a841", "\uCB6D", 10, "\uCB7A", 14],
+      ["a861", "\uCB89", 18, "\uCB9D", 6],
+      ["a881", "\uCBA4", 19, "\uCBB9", 11, "\xC6\xD0\xAA\u0126"],
+      ["a8a6", "\u0132"],
+      ["a8a8", "\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],
+      ["a8b1", "\u3260", 27, "\u24D0", 25, "\u2460", 14, "\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],
+      ["a941", "\uCBC5", 14, "\uCBD5", 10],
+      ["a961", "\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA", 18],
+      ["a981", "\uCBFD", 14, "\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15", 6, "\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200", 27, "\u249C", 25, "\u2474", 14, "\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],
+      ["aa41", "\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31", 6, "\uCC3A\uCC3F", 4, "\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],
+      ["aa61", "\uCC4F", 4, "\uCC56\uCC5A", 5, "\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69", 6, "\uCC71\uCC72"],
+      ["aa81", "\uCC73\uCC74\uCC76", 29, "\u3041", 82],
+      ["ab41", "\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1", 6, "\uCCAA\uCCAE", 5, "\uCCB6\uCCB7\uCCB9"],
+      ["ab61", "\uCCBA\uCCBB\uCCBD", 6, "\uCCC6\uCCC8\uCCCA", 5, "\uCCD1\uCCD2\uCCD3\uCCD5", 5],
+      ["ab81", "\uCCDB", 8, "\uCCE5", 6, "\uCCED\uCCEE\uCCEF\uCCF1", 12, "\u30A1", 85],
+      ["ac41", "\uCCFE\uCCFF\uCD00\uCD02", 5, "\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11", 6, "\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],
+      ["ac61", "\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D", 11, "\uCD3A", 4],
+      ["ac81", "\uCD3F", 28, "\uCD5D\uCD5E\uCD5F\u0410", 5, "\u0401\u0416", 25],
+      ["acd1", "\u0430", 5, "\u0451\u0436", 25],
+      ["ad41", "\uCD61\uCD62\uCD63\uCD65", 6, "\uCD6E\uCD70\uCD72", 5, "\uCD79", 7],
+      ["ad61", "\uCD81", 6, "\uCD89", 10, "\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],
+      ["ad81", "\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA", 5, "\uCDB1", 18, "\uCDC5"],
+      ["ae41", "\uCDC6", 5, "\uCDCD\uCDCE\uCDCF\uCDD1", 16],
+      ["ae61", "\uCDE2", 5, "\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1", 6, "\uCDFA\uCDFC\uCDFE", 4],
+      ["ae81", "\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D", 6, "\uCE15\uCE16\uCE17\uCE18\uCE1A", 5, "\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],
+      ["af41", "\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36", 19],
+      ["af61", "\uCE4A", 13, "\uCE5A\uCE5B\uCE5D\uCE5E\uCE62", 5, "\uCE6A\uCE6C"],
+      ["af81", "\uCE6E", 5, "\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D", 6, "\uCE86\uCE88\uCE8A", 5, "\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],
+      ["b041", "\uCE9A", 5, "\uCEA2\uCEA6", 5, "\uCEAE", 12],
+      ["b061", "\uCEBB", 5, "\uCEC2", 19],
+      ["b081", "\uCED6", 13, "\uCEE6\uCEE7\uCEE9\uCEEA\uCEED", 6, "\uCEF6\uCEFA", 5, "\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10", 7, "\uAC19", 4, "\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],
+      ["b141", "\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09", 6, "\uCF12\uCF14\uCF16", 5, "\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],
+      ["b161", "\uCF25", 6, "\uCF2E\uCF32", 5, "\uCF39", 11],
+      ["b181", "\uCF45", 14, "\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D", 6, "\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],
+      ["b241", "\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79", 6, "\uCF81\uCF82\uCF83\uCF84\uCF86", 5, "\uCF8D"],
+      ["b261", "\uCF8E", 18, "\uCFA2", 5, "\uCFA9"],
+      ["b281", "\uCFAA", 5, "\uCFB1", 18, "\uCFC5", 6, "\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],
+      ["b341", "\uCFCC", 19, "\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],
+      ["b361", "\uCFEA", 5, "\uCFF2\uCFF4\uCFF6", 5, "\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005", 5],
+      ["b381", "\uD00B", 5, "\uD012", 5, "\uD019", 19, "\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB", 4, "\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],
+      ["b441", "\uD02E", 5, "\uD036\uD037\uD039\uD03A\uD03B\uD03D", 6, "\uD046\uD048\uD04A", 5],
+      ["b461", "\uD051\uD052\uD053\uD055\uD056\uD057\uD059", 6, "\uD061", 10, "\uD06E\uD06F"],
+      ["b481", "\uD071\uD072\uD073\uD075", 6, "\uD07E\uD07F\uD080\uD082", 18, "\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB", 4, "\uB2F3\uB2F4\uB2F5\uB2F7", 4, "\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],
+      ["b541", "\uD095", 14, "\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD", 5],
+      ["b561", "\uD0B3\uD0B6\uD0B8\uD0BA", 5, "\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA", 5, "\uD0D2\uD0D6", 4],
+      ["b581", "\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5", 6, "\uD0EE\uD0F2", 5, "\uD0F9", 11, "\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],
+      ["b641", "\uD105", 7, "\uD10E", 17],
+      ["b661", "\uD120", 15, "\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],
+      ["b681", "\uD13F\uD142\uD146", 5, "\uD14E\uD14F\uD151\uD152\uD153\uD155", 6, "\uD15E\uD160\uD162", 5, "\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],
+      ["b741", "\uD16E", 13, "\uD17D", 6, "\uD185\uD186\uD187\uD189\uD18A"],
+      ["b761", "\uD18B", 20, "\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],
+      ["b781", "\uD1A9", 6, "\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1", 14, "\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],
+      ["b841", "\uD1D0", 7, "\uD1D9", 17],
+      ["b861", "\uD1EB", 8, "\uD1F5\uD1F6\uD1F7\uD1F9", 13],
+      ["b881", "\uD208\uD20A", 5, "\uD211", 24, "\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE", 4, "\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],
+      ["b941", "\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235", 6, "\uD23E\uD240\uD242", 5, "\uD249\uD24A\uD24B\uD24C"],
+      ["b961", "\uD24D", 14, "\uD25D", 6, "\uD265\uD266\uD267\uD268"],
+      ["b981", "\uD269", 22, "\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14", 4, "\uBC1B", 4, "\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],
+      ["ba41", "\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296", 5, "\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5", 6, "\uD2AD"],
+      ["ba61", "\uD2AE\uD2AF\uD2B0\uD2B2", 5, "\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3", 4, "\uD2CA\uD2CC", 5],
+      ["ba81", "\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD", 6, "\uD2E6", 9, "\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],
+      ["bb41", "\uD2FB", 4, "\uD302\uD304\uD306", 5, "\uD30F\uD311\uD312\uD313\uD315\uD317", 4, "\uD31E\uD322\uD323"],
+      ["bb61", "\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331", 6, "\uD33A\uD33E", 5, "\uD346\uD347\uD348\uD349"],
+      ["bb81", "\uD34A", 31, "\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],
+      ["bc41", "\uD36A", 17, "\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],
+      ["bc61", "\uD388\uD389\uD38A\uD38B\uD38E\uD392", 5, "\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1", 6, "\uD3AA\uD3AC\uD3AE"],
+      ["bc81", "\uD3AF", 4, "\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD", 6, "\uD3C6\uD3C7\uD3CA", 5, "\uD3D1", 5, "\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C", 4, "\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],
+      ["bd41", "\uD3D7\uD3D9", 7, "\uD3E2\uD3E4", 7, "\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],
+      ["bd61", "\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402", 5, "\uD409", 13],
+      ["bd81", "\uD417", 5, "\uD41E", 25, "\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],
+      ["be41", "\uD438", 7, "\uD441\uD442\uD443\uD445", 14],
+      ["be61", "\uD454", 7, "\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465", 7, "\uD46E\uD470\uD471\uD472"],
+      ["be81", "\uD473", 4, "\uD47A\uD47B\uD47D\uD47E\uD481\uD483", 4, "\uD48A\uD48C\uD48E", 5, "\uD495", 8, "\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4", 6, "\uC5CC\uC5CE"],
+      ["bf41", "\uD49E", 10, "\uD4AA", 14],
+      ["bf61", "\uD4B9", 18, "\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],
+      ["bf81", "\uD4D6", 5, "\uD4DD\uD4DE\uD4E0", 7, "\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1", 6, "\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC", 5, "\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],
+      ["c041", "\uD4FE", 5, "\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D", 6, "\uD516\uD518", 5],
+      ["c061", "\uD51E", 25],
+      ["c081", "\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545", 6, "\uD54E\uD550\uD552", 5, "\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751", 7, "\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],
+      ["c141", "\uD564\uD566\uD567\uD56A\uD56C\uD56E", 5, "\uD576\uD577\uD579\uD57A\uD57B\uD57D", 6, "\uD586\uD58A\uD58B"],
+      ["c161", "\uD58C\uD58D\uD58E\uD58F\uD591", 19, "\uD5A6\uD5A7"],
+      ["c181", "\uD5A8", 31, "\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],
+      ["c241", "\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3", 4, "\uD5DA\uD5DC\uD5DE", 5, "\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],
+      ["c261", "\uD5EF", 4, "\uD5F6\uD5F8\uD5FA", 5, "\uD602\uD603\uD605\uD606\uD607\uD609", 6, "\uD612"],
+      ["c281", "\uD616", 5, "\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625", 7, "\uD62E", 9, "\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],
+      ["c341", "\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D", 4],
+      ["c361", "\uD662", 4, "\uD668\uD66A", 5, "\uD672\uD673\uD675", 11],
+      ["c381", "\uD681\uD682\uD684\uD686", 5, "\uD68E\uD68F\uD691\uD692\uD693\uD695", 7, "\uD69E\uD6A0\uD6A2", 5, "\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],
+      ["c441", "\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1", 7, "\uD6BA\uD6BC", 7, "\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],
+      ["c461", "\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA", 5, "\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9", 4],
+      ["c481", "\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6", 5, "\uD6FE\uD6FF\uD701\uD702\uD703\uD705", 11, "\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],
+      ["c541", "\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721", 6, "\uD72A\uD72C\uD72E", 5, "\uD736\uD737\uD739"],
+      ["c561", "\uD73A\uD73B\uD73D", 6, "\uD745\uD746\uD748\uD74A", 5, "\uD752\uD753\uD755\uD75A", 4],
+      ["c581", "\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775", 6, "\uD77E\uD77F\uD780\uD782", 5, "\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],
+      ["c641", "\uD78D\uD78E\uD78F\uD791", 6, "\uD79A\uD79C\uD79E", 5],
+      ["c6a1", "\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],
+      ["c7a1", "\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],
+      ["c8a1", "\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],
+      ["caa1", "\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],
+      ["cba1", "\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],
+      ["cca1", "\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],
+      ["cda1", "\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],
+      ["cea1", "\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],
+      ["cfa1", "\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],
+      ["d0a1", "\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],
+      ["d1a1", "\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E", 5, "\u90A3\uF914", 4, "\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],
+      ["d2a1", "\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928", 4, "\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933", 5, "\u99D1\uF939", 10, "\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A", 7, "\u5AE9\u8A25\u677B\u7D10\uF952", 5, "\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],
+      ["d3a1", "\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],
+      ["d4a1", "\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],
+      ["d5a1", "\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],
+      ["d6a1", "\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],
+      ["d7a1", "\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],
+      ["d8a1", "\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],
+      ["d9a1", "\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],
+      ["daa1", "\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],
+      ["dba1", "\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],
+      ["dca1", "\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],
+      ["dda1", "\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],
+      ["dea1", "\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],
+      ["dfa1", "\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],
+      ["e0a1", "\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],
+      ["e1a1", "\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],
+      ["e2a1", "\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],
+      ["e3a1", "\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],
+      ["e4a1", "\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],
+      ["e5a1", "\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],
+      ["e6a1", "\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],
+      ["e7a1", "\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],
+      ["e8a1", "\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],
+      ["e9a1", "\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],
+      ["eaa1", "\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],
+      ["eba1", "\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],
+      ["eca1", "\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],
+      ["eda1", "\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],
+      ["eea1", "\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],
+      ["efa1", "\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],
+      ["f0a1", "\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],
+      ["f1a1", "\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],
+      ["f2a1", "\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],
+      ["f3a1", "\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],
+      ["f4a1", "\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],
+      ["f5a1", "\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],
+      ["f6a1", "\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],
+      ["f7a1", "\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],
+      ["f8a1", "\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],
+      ["f9a1", "\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],
+      ["faa1", "\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],
+      ["fba1", "\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],
+      ["fca1", "\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],
+      ["fda1", "\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json
+var require_cp950 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],
+      ["a1a1", "\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62", 4, "\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],
+      ["a240", "\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581", 7, "\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],
+      ["a2a1", "\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10", 9, "\u2160", 9, "\u3021", 8, "\u5341\u5344\u5345\uFF21", 25, "\uFF41", 21],
+      ["a340", "\uFF57\uFF58\uFF59\uFF5A\u0391", 16, "\u03A3", 6, "\u03B1", 16, "\u03C3", 6, "\u3105", 10],
+      ["a3a1", "\u3110", 25, "\u02D9\u02C9\u02CA\u02C7\u02CB"],
+      ["a3e1", "\u20AC"],
+      ["a440", "\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],
+      ["a4a1", "\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],
+      ["a540", "\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],
+      ["a5a1", "\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],
+      ["a640", "\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],
+      ["a6a1", "\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],
+      ["a740", "\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],
+      ["a7a1", "\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],
+      ["a840", "\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],
+      ["a8a1", "\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],
+      ["a940", "\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],
+      ["a9a1", "\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],
+      ["aa40", "\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],
+      ["aaa1", "\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],
+      ["ab40", "\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],
+      ["aba1", "\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],
+      ["ac40", "\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],
+      ["aca1", "\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],
+      ["ad40", "\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],
+      ["ada1", "\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],
+      ["ae40", "\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],
+      ["aea1", "\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],
+      ["af40", "\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],
+      ["afa1", "\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],
+      ["b040", "\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],
+      ["b0a1", "\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],
+      ["b140", "\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],
+      ["b1a1", "\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],
+      ["b240", "\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],
+      ["b2a1", "\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],
+      ["b340", "\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],
+      ["b3a1", "\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],
+      ["b440", "\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],
+      ["b4a1", "\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],
+      ["b540", "\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],
+      ["b5a1", "\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],
+      ["b640", "\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],
+      ["b6a1", "\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],
+      ["b740", "\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],
+      ["b7a1", "\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],
+      ["b840", "\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],
+      ["b8a1", "\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],
+      ["b940", "\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],
+      ["b9a1", "\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],
+      ["ba40", "\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],
+      ["baa1", "\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],
+      ["bb40", "\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],
+      ["bba1", "\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],
+      ["bc40", "\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],
+      ["bca1", "\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],
+      ["bd40", "\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],
+      ["bda1", "\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],
+      ["be40", "\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],
+      ["bea1", "\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],
+      ["bf40", "\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],
+      ["bfa1", "\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],
+      ["c040", "\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],
+      ["c0a1", "\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],
+      ["c140", "\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],
+      ["c1a1", "\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],
+      ["c240", "\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],
+      ["c2a1", "\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],
+      ["c340", "\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],
+      ["c3a1", "\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],
+      ["c440", "\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],
+      ["c4a1", "\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],
+      ["c540", "\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],
+      ["c5a1", "\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],
+      ["c640", "\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],
+      ["c940", "\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],
+      ["c9a1", "\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],
+      ["ca40", "\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],
+      ["caa1", "\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],
+      ["cb40", "\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],
+      ["cba1", "\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],
+      ["cc40", "\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],
+      ["cca1", "\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],
+      ["cd40", "\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],
+      ["cda1", "\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],
+      ["ce40", "\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],
+      ["cea1", "\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],
+      ["cf40", "\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],
+      ["cfa1", "\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],
+      ["d040", "\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],
+      ["d0a1", "\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],
+      ["d140", "\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],
+      ["d1a1", "\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],
+      ["d240", "\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],
+      ["d2a1", "\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],
+      ["d340", "\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],
+      ["d3a1", "\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],
+      ["d440", "\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],
+      ["d4a1", "\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],
+      ["d540", "\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],
+      ["d5a1", "\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],
+      ["d640", "\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],
+      ["d6a1", "\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],
+      ["d740", "\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],
+      ["d7a1", "\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],
+      ["d840", "\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],
+      ["d8a1", "\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],
+      ["d940", "\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],
+      ["d9a1", "\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],
+      ["da40", "\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],
+      ["daa1", "\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],
+      ["db40", "\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],
+      ["dba1", "\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],
+      ["dc40", "\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],
+      ["dca1", "\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],
+      ["dd40", "\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],
+      ["dda1", "\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],
+      ["de40", "\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],
+      ["dea1", "\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],
+      ["df40", "\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],
+      ["dfa1", "\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],
+      ["e040", "\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],
+      ["e0a1", "\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],
+      ["e140", "\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],
+      ["e1a1", "\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],
+      ["e240", "\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],
+      ["e2a1", "\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],
+      ["e340", "\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],
+      ["e3a1", "\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],
+      ["e440", "\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],
+      ["e4a1", "\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],
+      ["e540", "\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],
+      ["e5a1", "\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],
+      ["e640", "\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],
+      ["e6a1", "\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],
+      ["e740", "\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],
+      ["e7a1", "\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],
+      ["e840", "\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],
+      ["e8a1", "\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],
+      ["e940", "\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],
+      ["e9a1", "\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],
+      ["ea40", "\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],
+      ["eaa1", "\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],
+      ["eb40", "\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],
+      ["eba1", "\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],
+      ["ec40", "\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],
+      ["eca1", "\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],
+      ["ed40", "\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],
+      ["eda1", "\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],
+      ["ee40", "\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],
+      ["eea1", "\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],
+      ["ef40", "\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],
+      ["efa1", "\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],
+      ["f040", "\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],
+      ["f0a1", "\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],
+      ["f140", "\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],
+      ["f1a1", "\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],
+      ["f240", "\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],
+      ["f2a1", "\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],
+      ["f340", "\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],
+      ["f3a1", "\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],
+      ["f440", "\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],
+      ["f4a1", "\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],
+      ["f540", "\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],
+      ["f5a1", "\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],
+      ["f640", "\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],
+      ["f6a1", "\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],
+      ["f740", "\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],
+      ["f7a1", "\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],
+      ["f840", "\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],
+      ["f8a1", "\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],
+      ["f940", "\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],
+      ["f9a1", "\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json
+var require_big5_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) {
+    module2.exports = [
+      ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],
+      ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],
+      ["87a1", "\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],
+      ["8840", "\u31C0", 4, "\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],
+      ["88a1", "\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],
+      ["8940", "\u{2A3A9}\u{21145}"],
+      ["8943", "\u650A"],
+      ["8946", "\u4E3D\u6EDD\u9D4E\u91DF"],
+      ["894c", "\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],
+      ["89a1", "\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],
+      ["89ab", "\u918C\u78B8\u915E\u80BC"],
+      ["89b0", "\u8D0B\u80F6\u{209E7}"],
+      ["89b5", "\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],
+      ["89c1", "\u6E9A\u823E\u7519"],
+      ["89c5", "\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],
+      ["8a40", "\u{27D84}\u5525"],
+      ["8a43", "\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],
+      ["8a64", "\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],
+      ["8a76", "\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],
+      ["8aa1", "\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],
+      ["8aac", "\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],
+      ["8ab2", "\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],
+      ["8abb", "\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],
+      ["8ac9", "\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],
+      ["8ace", "\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],
+      ["8adf", "\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],
+      ["8af6", "\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],
+      ["8b40", "\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],
+      ["8b55", "\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],
+      ["8ba1", "\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],
+      ["8bde", "\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],
+      ["8c40", "\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],
+      ["8ca1", "\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],
+      ["8ca7", "\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],
+      ["8cc9", "\u9868\u676B\u4276\u573D"],
+      ["8cce", "\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],
+      ["8ce6", "\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],
+      ["8d40", "\u{20B9F}"],
+      ["8d42", "\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],
+      ["8da1", "\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],
+      ["8e40", "\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],
+      ["8ea1", "\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],
+      ["8f40", "\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],
+      ["8fa1", "\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],
+      ["9040", "\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],
+      ["90a1", "\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],
+      ["9140", "\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],
+      ["91a1", "\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],
+      ["9240", "\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],
+      ["92a1", "\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],
+      ["9340", "\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],
+      ["93a1", "\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],
+      ["9440", "\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],
+      ["94a1", "\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],
+      ["9540", "\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],
+      ["95a1", "\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],
+      ["9640", "\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],
+      ["96a1", "\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],
+      ["9740", "\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],
+      ["97a1", "\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],
+      ["9840", "\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],
+      ["98a1", "\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],
+      ["9940", "\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],
+      ["99a1", "\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],
+      ["9a40", "\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],
+      ["9aa1", "\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],
+      ["9b40", "\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],
+      ["9b62", "\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],
+      ["9ba1", "\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],
+      ["9c40", "\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],
+      ["9ca1", "\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],
+      ["9d40", "\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],
+      ["9da1", "\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],
+      ["9e40", "\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],
+      ["9ea1", "\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],
+      ["9ead", "\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],
+      ["9ec5", "\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],
+      ["9ef5", "\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],
+      ["9f40", "\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],
+      ["9f4f", "\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],
+      ["9fa1", "\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],
+      ["9fae", "\u9159\u9681\u915C"],
+      ["9fb2", "\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],
+      ["9fc1", "\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],
+      ["9fc9", "\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],
+      ["9fdb", "\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],
+      ["9fe7", "\u6BFA\u8818\u7F78"],
+      ["9feb", "\u5620\u{2A64A}\u8E77\u9F53"],
+      ["9ff0", "\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],
+      ["a040", "\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],
+      ["a055", "\u{2183B}\u{26E05}"],
+      ["a058", "\u8A7E\u{2251B}"],
+      ["a05b", "\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],
+      ["a063", "\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],
+      ["a073", "\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],
+      ["a0a1", "\u5D57\u{28BC2}\u8FDA\u{28E39}"],
+      ["a0a6", "\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],
+      ["a0ae", "\u77FE"],
+      ["a0b0", "\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],
+      ["a0d4", "\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],
+      ["a0e2", "\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],
+      ["a3c0", "\u2400", 31, "\u2421"],
+      ["c6a1", "\u2460", 9, "\u2474", 9, "\u2170", 9, "\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041", 23],
+      ["c740", "\u3059", 58, "\u30A1\u30A2\u30A3\u30A4"],
+      ["c7a1", "\u30A5", 81, "\u0410", 5, "\u0401\u0416", 4],
+      ["c840", "\u041B", 26, "\u0451\u0436", 25, "\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],
+      ["c8a1", "\u9FB0\u5188\u9FB1\u{27607}"],
+      ["c8cd", "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],
+      ["c8f5", "\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],
+      ["f9fe", "\uFFED"],
+      ["fa40", "\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],
+      ["faa1", "\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],
+      ["fb40", "\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],
+      ["fba1", "\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],
+      ["fc40", "\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],
+      ["fca1", "\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],
+      ["fd40", "\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],
+      ["fda1", "\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],
+      ["fe40", "\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],
+      ["fea1", "\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js
+var require_dbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // == Japanese/ShiftJIS ====================================================
+      // All japanese encodings are based on JIS X set of standards:
+      // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF.
+      // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes. 
+      //              Has several variations in 1978, 1983, 1990 and 1997.
+      // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead.
+      // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233.
+      //              2 planes, first is superset of 0208, second - revised 0212.
+      //              Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx)
+      // Byte encodings are:
+      //  * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte
+      //               encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC.
+      //               Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI.
+      //  * EUC-JP:    Up to 3 bytes per character. Used mostly on *nixes.
+      //               0x00-0x7F       - lower part of 0201
+      //               0x8E, 0xA1-0xDF - upper part of 0201
+      //               (0xA1-0xFE)x2   - 0208 plane (94x94).
+      //               0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94).
+      //  * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon.
+      //               Used as-is in ISO2022 family.
+      //  * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII, 
+      //                0201-1976 Roman, 0208-1978, 0208-1983.
+      //  * ISO2022-JP-1: Adds esc seq for 0212-1990.
+      //  * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7.
+      //  * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2.
+      //  * ISO2022-JP-2004: Adds 0213-2004 Plane 1.
+      //
+      // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes.
+      //
+      // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html
+      "shiftjis": {
+        type: "_dbcs",
+        table: function() {
+          return require_shiftjis();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 },
+        encodeSkipVals: [{ from: 60736, to: 63808 }]
+      },
+      "csshiftjis": "shiftjis",
+      "mskanji": "shiftjis",
+      "sjis": "shiftjis",
+      "windows31j": "shiftjis",
+      "ms31j": "shiftjis",
+      "xsjis": "shiftjis",
+      "windows932": "shiftjis",
+      "ms932": "shiftjis",
+      "932": "shiftjis",
+      "cp932": "shiftjis",
+      "eucjp": {
+        type: "_dbcs",
+        table: function() {
+          return require_eucjp();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 }
+      },
+      // TODO: KDDI extension to Shift_JIS
+      // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes.
+      // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars.
+      // == Chinese/GBK ==========================================================
+      // http://en.wikipedia.org/wiki/GBK
+      // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder
+      // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936
+      "gb2312": "cp936",
+      "gb231280": "cp936",
+      "gb23121980": "cp936",
+      "csgb2312": "cp936",
+      "csiso58gb231280": "cp936",
+      "euccn": "cp936",
+      // Microsoft's CP936 is a subset and approximation of GBK.
+      "windows936": "cp936",
+      "ms936": "cp936",
+      "936": "cp936",
+      "cp936": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936();
+        }
+      },
+      // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other.
+      "gbk": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        }
+      },
+      "xgbk": "gbk",
+      "isoir58": "gbk",
+      // GB18030 is an algorithmic extension of GBK.
+      // Main source: https://www.w3.org/TR/encoding/#gbk-encoder
+      // http://icu-project.org/docs/papers/gb18030.html
+      // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml
+      // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0
+      "gb18030": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        },
+        gb18030: function() {
+          return require_gb18030_ranges();
+        },
+        encodeSkipVals: [128],
+        encodeAdd: { "\u20AC": 41699 }
+      },
+      "chinese": "gb18030",
+      // == Korean ===============================================================
+      // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same.
+      "windows949": "cp949",
+      "ms949": "cp949",
+      "949": "cp949",
+      "cp949": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp949();
+        }
+      },
+      "cseuckr": "cp949",
+      "csksc56011987": "cp949",
+      "euckr": "cp949",
+      "isoir149": "cp949",
+      "korean": "cp949",
+      "ksc56011987": "cp949",
+      "ksc56011989": "cp949",
+      "ksc5601": "cp949",
+      // == Big5/Taiwan/Hong Kong ================================================
+      // There are lots of tables for Big5 and cp950. Please see the following links for history:
+      // http://moztw.org/docs/big5/  http://www.haible.de/bruno/charsets/conversion-tables/Big5.html
+      // Variations, in roughly number of defined chars:
+      //  * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT
+      //  * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/
+      //  * Big5-2003 (Taiwan standard) almost superset of cp950.
+      //  * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers.
+      //  * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard. 
+      //    many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years.
+      //    Plus, it has 4 combining sequences.
+      //    Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299
+      //    because big5-hkscs is the only encoding to include astral characters in non-algorithmic way.
+      //    Implementations are not consistent within browsers; sometimes labeled as just big5.
+      //    MS Internet Explorer switches from big5 to big5-hkscs when a patch applied.
+      //    Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31
+      //    In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s.
+      //    Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt
+      //                   http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt
+      // 
+      // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder
+      // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong.
+      "windows950": "cp950",
+      "ms950": "cp950",
+      "950": "cp950",
+      "cp950": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950();
+        }
+      },
+      // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus.
+      "big5": "big5hkscs",
+      "big5hkscs": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950().concat(require_big5_added());
+        },
+        encodeSkipVals: [
+          // Although Encoding Standard says we should avoid encoding to HKSCS area (See Step 1 of
+          // https://encoding.spec.whatwg.org/#index-big5-pointer), we still do it to increase compatibility with ICU.
+          // But if a single unicode point can be encoded both as HKSCS and regular Big5, we prefer the latter.
+          36457,
+          36463,
+          36478,
+          36523,
+          36532,
+          36557,
+          36560,
+          36695,
+          36713,
+          36718,
+          36811,
+          36862,
+          36973,
+          36986,
+          37060,
+          37084,
+          37105,
+          37311,
+          37551,
+          37552,
+          37553,
+          37554,
+          37585,
+          37959,
+          38090,
+          38361,
+          38652,
+          39285,
+          39798,
+          39800,
+          39803,
+          39878,
+          39902,
+          39916,
+          39926,
+          40002,
+          40019,
+          40034,
+          40040,
+          40043,
+          40055,
+          40124,
+          40125,
+          40144,
+          40279,
+          40282,
+          40388,
+          40431,
+          40443,
+          40617,
+          40687,
+          40701,
+          40800,
+          40907,
+          41079,
+          41180,
+          41183,
+          36812,
+          37576,
+          38468,
+          38637,
+          // Step 2 of https://encoding.spec.whatwg.org/#index-big5-pointer: Use last pointer for U+2550, U+255E, U+2561, U+256A, U+5341, or U+5345
+          41636,
+          41637,
+          41639,
+          41638,
+          41676,
+          41678
+        ]
+      },
+      "cnbig5": "big5hkscs",
+      "csbig5": "big5hkscs",
+      "xxbig5": "big5hkscs"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js
+var require_encodings = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js"(exports2, module2) {
+    "use strict";
+    var modules = [
+      require_internal(),
+      require_utf32(),
+      require_utf16(),
+      require_utf7(),
+      require_sbcs_codec(),
+      require_sbcs_data(),
+      require_sbcs_data_generated(),
+      require_dbcs_codec(),
+      require_dbcs_data()
+    ];
+    for (i = 0; i < modules.length; i++) {
+      module2 = modules[i];
+      for (enc in module2)
+        if (Object.prototype.hasOwnProperty.call(module2, enc))
+          exports2[enc] = module2[enc];
+    }
+    var module2;
+    var enc;
+    var i;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js
+var require_streams = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = function(stream_module) {
+      var Transform = stream_module.Transform;
+      function IconvLiteEncoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.decodeStrings = false;
+        Transform.call(this, options);
+      }
+      IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteEncoderStream }
+      });
+      IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (typeof chunk != "string")
+          return done(new Error("Iconv encoding stream needs strings as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype.collect = function(cb) {
+        var chunks = [];
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          chunks.push(chunk);
+        });
+        this.on("end", function() {
+          cb(null, Buffer2.concat(chunks));
+        });
+        return this;
+      };
+      function IconvLiteDecoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.encoding = this.encoding = "utf8";
+        Transform.call(this, options);
+      }
+      IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteDecoderStream }
+      });
+      IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (!Buffer2.isBuffer(chunk) && !(chunk instanceof Uint8Array))
+          return done(new Error("Iconv decoding stream needs buffers as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype.collect = function(cb) {
+        var res = "";
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          res += chunk;
+        });
+        this.on("end", function() {
+          cb(null, res);
+        });
+        return this;
+      };
+      return {
+        IconvLiteEncoderStream,
+        IconvLiteDecoderStream
+      };
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js
+var require_lib8 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    var bomHandling = require_bom_handling();
+    var iconv = module2.exports;
+    iconv.encodings = null;
+    iconv.defaultCharUnicode = "\uFFFD";
+    iconv.defaultCharSingleByte = "?";
+    iconv.encode = function encode(str, encoding, options) {
+      str = "" + (str || "");
+      var encoder = iconv.getEncoder(encoding, options);
+      var res = encoder.write(str);
+      var trail = encoder.end();
+      return trail && trail.length > 0 ? Buffer2.concat([res, trail]) : res;
+    };
+    iconv.decode = function decode(buf, encoding, options) {
+      if (typeof buf === "string") {
+        if (!iconv.skipDecodeWarning) {
+          console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding");
+          iconv.skipDecodeWarning = true;
+        }
+        buf = Buffer2.from("" + (buf || ""), "binary");
+      }
+      var decoder2 = iconv.getDecoder(encoding, options);
+      var res = decoder2.write(buf);
+      var trail = decoder2.end();
+      return trail ? res + trail : res;
+    };
+    iconv.encodingExists = function encodingExists(enc) {
+      try {
+        iconv.getCodec(enc);
+        return true;
+      } catch (e) {
+        return false;
+      }
+    };
+    iconv.toEncoding = iconv.encode;
+    iconv.fromEncoding = iconv.decode;
+    iconv._codecDataCache = {};
+    iconv.getCodec = function getCodec(encoding) {
+      if (!iconv.encodings)
+        iconv.encodings = require_encodings();
+      var enc = iconv._canonicalizeEncoding(encoding);
+      var codecOptions = {};
+      while (true) {
+        var codec = iconv._codecDataCache[enc];
+        if (codec)
+          return codec;
+        var codecDef = iconv.encodings[enc];
+        switch (typeof codecDef) {
+          case "string":
+            enc = codecDef;
+            break;
+          case "object":
+            for (var key in codecDef)
+              codecOptions[key] = codecDef[key];
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            enc = codecDef.type;
+            break;
+          case "function":
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            codec = new codecDef(codecOptions, iconv);
+            iconv._codecDataCache[codecOptions.encodingName] = codec;
+            return codec;
+          default:
+            throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '" + enc + "')");
+        }
+      }
+    };
+    iconv._canonicalizeEncoding = function(encoding) {
+      return ("" + encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, "");
+    };
+    iconv.getEncoder = function getEncoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), encoder = new codec.encoder(options, codec);
+      if (codec.bomAware && options && options.addBOM)
+        encoder = new bomHandling.PrependBOM(encoder, options);
+      return encoder;
+    };
+    iconv.getDecoder = function getDecoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), decoder2 = new codec.decoder(options, codec);
+      if (codec.bomAware && !(options && options.stripBOM === false))
+        decoder2 = new bomHandling.StripBOM(decoder2, options);
+      return decoder2;
+    };
+    iconv.enableStreamingAPI = function enableStreamingAPI(stream_module2) {
+      if (iconv.supportsStreams)
+        return;
+      var streams = require_streams()(stream_module2);
+      iconv.IconvLiteEncoderStream = streams.IconvLiteEncoderStream;
+      iconv.IconvLiteDecoderStream = streams.IconvLiteDecoderStream;
+      iconv.encodeStream = function encodeStream(encoding, options) {
+        return new iconv.IconvLiteEncoderStream(iconv.getEncoder(encoding, options), options);
+      };
+      iconv.decodeStream = function decodeStream(encoding, options) {
+        return new iconv.IconvLiteDecoderStream(iconv.getDecoder(encoding, options), options);
+      };
+      iconv.supportsStreams = true;
+    };
+    var stream_module;
+    try {
+      stream_module = require("stream");
+    } catch (e) {
+    }
+    if (stream_module && stream_module.Transform) {
+      iconv.enableStreamingAPI(stream_module);
+    } else {
+      iconv.encodeStream = iconv.decodeStream = function() {
+        throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.");
+      };
+    }
+    if (false) {
+      console.error("iconv-lite warning: js files use non-utf8 encoding. See https://github.com/ashtuchkin/iconv-lite/wiki/Javascript-source-file-encodings for more info.");
+    }
+  }
+});
+
+// ../../../node_modules/encoding/lib/encoding.js
+var require_encoding = __commonJS({
+  "../../../node_modules/encoding/lib/encoding.js"(exports2, module2) {
+    "use strict";
+    var iconvLite = require_lib8();
+    module2.exports.convert = convert3;
+    function convert3(str, to, from) {
+      from = checkEncoding(from || "UTF-8");
+      to = checkEncoding(to || "UTF-8");
+      str = str || "";
+      var result;
+      if (from !== "UTF-8" && typeof str === "string") {
+        str = Buffer.from(str, "binary");
+      }
+      if (from === to) {
+        if (typeof str === "string") {
+          result = Buffer.from(str);
+        } else {
+          result = str;
+        }
+      } else {
+        try {
+          result = convertIconvLite(str, to, from);
+        } catch (E) {
+          console.error(E);
+          result = str;
+        }
+      }
+      if (typeof result === "string") {
+        result = Buffer.from(result, "utf-8");
+      }
+      return result;
+    }
+    function convertIconvLite(str, to, from) {
+      if (to === "UTF-8") {
+        return iconvLite.decode(str, from);
+      } else if (from === "UTF-8") {
+        return iconvLite.encode(str, to);
+      } else {
+        return iconvLite.encode(iconvLite.decode(str, from), to);
+      }
+    }
+    function checkEncoding(name) {
+      return (name || "").toString().trim().replace(/^latin[\-_]?(\d+)$/i, "ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i, "WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i, "UTF-$1").replace(/^ks_c_5601\-1987$/i, "CP949").replace(/^us[\-_]?ascii$/i, "ASCII").toUpperCase();
+    }
+  }
+});
+
+// node_modules/node-fetch/lib/index.js
+var require_lib9 = __commonJS({
+  "node_modules/node-fetch/lib/index.js"(exports2, module2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    function _interopDefault(ex) {
+      return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex;
+    }
+    var Stream = _interopDefault(require("stream"));
+    var http = _interopDefault(require("http"));
+    var Url = _interopDefault(require("url"));
+    var whatwgUrl = _interopDefault(require_public_api());
+    var https2 = _interopDefault(require("https"));
+    var zlib3 = _interopDefault(require("zlib"));
+    var Readable = Stream.Readable;
+    var BUFFER = /* @__PURE__ */ Symbol("buffer");
+    var TYPE = /* @__PURE__ */ Symbol("type");
+    var Blob2 = class _Blob {
+      constructor() {
+        this[TYPE] = "";
+        const blobParts = arguments[0];
+        const options = arguments[1];
+        const buffers = [];
+        let size = 0;
+        if (blobParts) {
+          const a = blobParts;
+          const length = Number(a.length);
+          for (let i = 0; i < length; i++) {
+            const element = a[i];
+            let buffer;
+            if (element instanceof Buffer) {
+              buffer = element;
+            } else if (ArrayBuffer.isView(element)) {
+              buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);
+            } else if (element instanceof ArrayBuffer) {
+              buffer = Buffer.from(element);
+            } else if (element instanceof _Blob) {
+              buffer = element[BUFFER];
+            } else {
+              buffer = Buffer.from(typeof element === "string" ? element : String(element));
+            }
+            size += buffer.length;
+            buffers.push(buffer);
+          }
+        }
+        this[BUFFER] = Buffer.concat(buffers);
+        let type = options && options.type !== void 0 && String(options.type).toLowerCase();
+        if (type && !/[^\u0020-\u007E]/.test(type)) {
+          this[TYPE] = type;
+        }
+      }
+      get size() {
+        return this[BUFFER].length;
+      }
+      get type() {
+        return this[TYPE];
+      }
+      text() {
+        return Promise.resolve(this[BUFFER].toString());
+      }
+      arrayBuffer() {
+        const buf = this[BUFFER];
+        const ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        return Promise.resolve(ab);
+      }
+      stream() {
+        const readable = new Readable();
+        readable._read = function() {
+        };
+        readable.push(this[BUFFER]);
+        readable.push(null);
+        return readable;
+      }
+      toString() {
+        return "[object Blob]";
+      }
+      slice() {
+        const size = this.size;
+        const start = arguments[0];
+        const end = arguments[1];
+        let relativeStart, relativeEnd;
+        if (start === void 0) {
+          relativeStart = 0;
+        } else if (start < 0) {
+          relativeStart = Math.max(size + start, 0);
+        } else {
+          relativeStart = Math.min(start, size);
+        }
+        if (end === void 0) {
+          relativeEnd = size;
+        } else if (end < 0) {
+          relativeEnd = Math.max(size + end, 0);
+        } else {
+          relativeEnd = Math.min(end, size);
+        }
+        const span = Math.max(relativeEnd - relativeStart, 0);
+        const buffer = this[BUFFER];
+        const slicedBuffer = buffer.slice(relativeStart, relativeStart + span);
+        const blob = new _Blob([], { type: arguments[2] });
+        blob[BUFFER] = slicedBuffer;
+        return blob;
+      }
+    };
+    Object.defineProperties(Blob2.prototype, {
+      size: { enumerable: true },
+      type: { enumerable: true },
+      slice: { enumerable: true }
+    });
+    Object.defineProperty(Blob2.prototype, Symbol.toStringTag, {
+      value: "Blob",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function FetchError(message, type, systemError) {
+      Error.call(this, message);
+      this.message = message;
+      this.type = type;
+      if (systemError) {
+        this.code = this.errno = systemError.code;
+      }
+      Error.captureStackTrace(this, this.constructor);
+    }
+    FetchError.prototype = Object.create(Error.prototype);
+    FetchError.prototype.constructor = FetchError;
+    FetchError.prototype.name = "FetchError";
+    var convert3;
+    try {
+      convert3 = require_encoding().convert;
+    } catch (e) {
+    }
+    var INTERNALS = /* @__PURE__ */ Symbol("Body internals");
+    var PassThrough = Stream.PassThrough;
+    function Body(body) {
+      var _this = this;
+      var _ref = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, _ref$size = _ref.size;
+      let size = _ref$size === void 0 ? 0 : _ref$size;
+      var _ref$timeout = _ref.timeout;
+      let timeout = _ref$timeout === void 0 ? 0 : _ref$timeout;
+      if (body == null) {
+        body = null;
+      } else if (isURLSearchParams(body)) {
+        body = Buffer.from(body.toString());
+      } else if (isBlob2(body)) ;
+      else if (Buffer.isBuffer(body)) ;
+      else if (Object.prototype.toString.call(body) === "[object ArrayBuffer]") {
+        body = Buffer.from(body);
+      } else if (ArrayBuffer.isView(body)) {
+        body = Buffer.from(body.buffer, body.byteOffset, body.byteLength);
+      } else if (body instanceof Stream) ;
+      else {
+        body = Buffer.from(String(body));
+      }
+      this[INTERNALS] = {
+        body,
+        disturbed: false,
+        error: null
+      };
+      this.size = size;
+      this.timeout = timeout;
+      if (body instanceof Stream) {
+        body.on("error", function(err) {
+          const error = err.name === "AbortError" ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, "system", err);
+          _this[INTERNALS].error = error;
+        });
+      }
+    }
+    Body.prototype = {
+      get body() {
+        return this[INTERNALS].body;
+      },
+      get bodyUsed() {
+        return this[INTERNALS].disturbed;
+      },
+      /**
+       * Decode response as ArrayBuffer
+       *
+       * @return  Promise
+       */
+      arrayBuffer() {
+        return consumeBody.call(this).then(function(buf) {
+          return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        });
+      },
+      /**
+       * Return raw response as Blob
+       *
+       * @return Promise
+       */
+      blob() {
+        let ct = this.headers && this.headers.get("content-type") || "";
+        return consumeBody.call(this).then(function(buf) {
+          return Object.assign(
+            // Prevent copying
+            new Blob2([], {
+              type: ct.toLowerCase()
+            }),
+            {
+              [BUFFER]: buf
+            }
+          );
+        });
+      },
+      /**
+       * Decode response as json
+       *
+       * @return  Promise
+       */
+      json() {
+        var _this2 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          try {
+            return JSON.parse(buffer.toString());
+          } catch (err) {
+            return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, "invalid-json"));
+          }
+        });
+      },
+      /**
+       * Decode response as text
+       *
+       * @return  Promise
+       */
+      text() {
+        return consumeBody.call(this).then(function(buffer) {
+          return buffer.toString();
+        });
+      },
+      /**
+       * Decode response as buffer (non-spec api)
+       *
+       * @return  Promise
+       */
+      buffer() {
+        return consumeBody.call(this);
+      },
+      /**
+       * Decode response as text, while automatically detecting the encoding and
+       * trying to decode to UTF-8 (non-spec api)
+       *
+       * @return  Promise
+       */
+      textConverted() {
+        var _this3 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          return convertBody(buffer, _this3.headers);
+        });
+      }
+    };
+    Object.defineProperties(Body.prototype, {
+      body: { enumerable: true },
+      bodyUsed: { enumerable: true },
+      arrayBuffer: { enumerable: true },
+      blob: { enumerable: true },
+      json: { enumerable: true },
+      text: { enumerable: true }
+    });
+    Body.mixIn = function(proto) {
+      for (const name of Object.getOwnPropertyNames(Body.prototype)) {
+        if (!(name in proto)) {
+          const desc = Object.getOwnPropertyDescriptor(Body.prototype, name);
+          Object.defineProperty(proto, name, desc);
+        }
+      }
+    };
+    function consumeBody() {
+      var _this4 = this;
+      if (this[INTERNALS].disturbed) {
+        return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));
+      }
+      this[INTERNALS].disturbed = true;
+      if (this[INTERNALS].error) {
+        return Body.Promise.reject(this[INTERNALS].error);
+      }
+      let body = this.body;
+      if (body === null) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      if (isBlob2(body)) {
+        body = body.stream();
+      }
+      if (Buffer.isBuffer(body)) {
+        return Body.Promise.resolve(body);
+      }
+      if (!(body instanceof Stream)) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      let accum = [];
+      let accumBytes = 0;
+      let abort = false;
+      return new Body.Promise(function(resolve6, reject) {
+        let resTimeout;
+        if (_this4.timeout) {
+          resTimeout = setTimeout(function() {
+            abort = true;
+            reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, "body-timeout"));
+          }, _this4.timeout);
+        }
+        body.on("error", function(err) {
+          if (err.name === "AbortError") {
+            abort = true;
+            reject(err);
+          } else {
+            reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+        body.on("data", function(chunk) {
+          if (abort || chunk === null) {
+            return;
+          }
+          if (_this4.size && accumBytes + chunk.length > _this4.size) {
+            abort = true;
+            reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, "max-size"));
+            return;
+          }
+          accumBytes += chunk.length;
+          accum.push(chunk);
+        });
+        body.on("end", function() {
+          if (abort) {
+            return;
+          }
+          clearTimeout(resTimeout);
+          try {
+            resolve6(Buffer.concat(accum, accumBytes));
+          } catch (err) {
+            reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+      });
+    }
+    function convertBody(buffer, headers) {
+      if (typeof convert3 !== "function") {
+        throw new Error("The package `encoding` must be installed to use the textConverted() function");
+      }
+      const ct = headers.get("content-type");
+      let charset = "utf-8";
+      let res, str;
+      if (ct) {
+        res = /charset=([^;]*)/i.exec(ct);
+      }
+      str = buffer.slice(0, 1024).toString();
+      if (!res && str) {
+        res = / 0 && arguments[0] !== void 0 ? arguments[0] : void 0;
+        this[MAP] = /* @__PURE__ */ Object.create(null);
+        if (init instanceof _Headers) {
+          const rawHeaders = init.raw();
+          const headerNames = Object.keys(rawHeaders);
+          for (const headerName of headerNames) {
+            for (const value of rawHeaders[headerName]) {
+              this.append(headerName, value);
+            }
+          }
+          return;
+        }
+        if (init == null) ;
+        else if (typeof init === "object") {
+          const method = init[Symbol.iterator];
+          if (method != null) {
+            if (typeof method !== "function") {
+              throw new TypeError("Header pairs must be iterable");
+            }
+            const pairs = [];
+            for (const pair of init) {
+              if (typeof pair !== "object" || typeof pair[Symbol.iterator] !== "function") {
+                throw new TypeError("Each header pair must be iterable");
+              }
+              pairs.push(Array.from(pair));
+            }
+            for (const pair of pairs) {
+              if (pair.length !== 2) {
+                throw new TypeError("Each header pair must be a name/value tuple");
+              }
+              this.append(pair[0], pair[1]);
+            }
+          } else {
+            for (const key of Object.keys(init)) {
+              const value = init[key];
+              this.append(key, value);
+            }
+          }
+        } else {
+          throw new TypeError("Provided initializer must be an object");
+        }
+      }
+      /**
+       * Return combined header value given name
+       *
+       * @param   String  name  Header name
+       * @return  Mixed
+       */
+      get(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key === void 0) {
+          return null;
+        }
+        return this[MAP][key].join(", ");
+      }
+      /**
+       * Iterate over all headers
+       *
+       * @param   Function  callback  Executed for each item with parameters (value, name, thisArg)
+       * @param   Boolean   thisArg   `this` context for callback function
+       * @return  Void
+       */
+      forEach(callback) {
+        let thisArg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : void 0;
+        let pairs = getHeaders(this);
+        let i = 0;
+        while (i < pairs.length) {
+          var _pairs$i = pairs[i];
+          const name = _pairs$i[0], value = _pairs$i[1];
+          callback.call(thisArg, value, name, this);
+          pairs = getHeaders(this);
+          i++;
+        }
+      }
+      /**
+       * Overwrite header values given name
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      set(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        this[MAP][key !== void 0 ? key : name] = [value];
+      }
+      /**
+       * Append a value onto existing header
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      append(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          this[MAP][key].push(value);
+        } else {
+          this[MAP][name] = [value];
+        }
+      }
+      /**
+       * Check for header name existence
+       *
+       * @param   String   name  Header name
+       * @return  Boolean
+       */
+      has(name) {
+        name = `${name}`;
+        validateName(name);
+        return find(this[MAP], name) !== void 0;
+      }
+      /**
+       * Delete all header values given name
+       *
+       * @param   String  name  Header name
+       * @return  Void
+       */
+      delete(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          delete this[MAP][key];
+        }
+      }
+      /**
+       * Return raw headers (non-spec api)
+       *
+       * @return  Object
+       */
+      raw() {
+        return this[MAP];
+      }
+      /**
+       * Get an iterator on keys.
+       *
+       * @return  Iterator
+       */
+      keys() {
+        return createHeadersIterator(this, "key");
+      }
+      /**
+       * Get an iterator on values.
+       *
+       * @return  Iterator
+       */
+      values() {
+        return createHeadersIterator(this, "value");
+      }
+      /**
+       * Get an iterator on entries.
+       *
+       * This is the default iterator of the Headers object.
+       *
+       * @return  Iterator
+       */
+      [Symbol.iterator]() {
+        return createHeadersIterator(this, "key+value");
+      }
+    };
+    Headers2.prototype.entries = Headers2.prototype[Symbol.iterator];
+    Object.defineProperty(Headers2.prototype, Symbol.toStringTag, {
+      value: "Headers",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Headers2.prototype, {
+      get: { enumerable: true },
+      forEach: { enumerable: true },
+      set: { enumerable: true },
+      append: { enumerable: true },
+      has: { enumerable: true },
+      delete: { enumerable: true },
+      keys: { enumerable: true },
+      values: { enumerable: true },
+      entries: { enumerable: true }
+    });
+    function getHeaders(headers) {
+      let kind = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "key+value";
+      const keys = Object.keys(headers[MAP]).sort();
+      return keys.map(kind === "key" ? function(k) {
+        return k.toLowerCase();
+      } : kind === "value" ? function(k) {
+        return headers[MAP][k].join(", ");
+      } : function(k) {
+        return [k.toLowerCase(), headers[MAP][k].join(", ")];
+      });
+    }
+    var INTERNAL = /* @__PURE__ */ Symbol("internal");
+    function createHeadersIterator(target, kind) {
+      const iterator = Object.create(HeadersIteratorPrototype);
+      iterator[INTERNAL] = {
+        target,
+        kind,
+        index: 0
+      };
+      return iterator;
+    }
+    var HeadersIteratorPrototype = Object.setPrototypeOf({
+      next() {
+        if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {
+          throw new TypeError("Value of `this` is not a HeadersIterator");
+        }
+        var _INTERNAL = this[INTERNAL];
+        const target = _INTERNAL.target, kind = _INTERNAL.kind, index = _INTERNAL.index;
+        const values = getHeaders(target, kind);
+        const len = values.length;
+        if (index >= len) {
+          return {
+            value: void 0,
+            done: true
+          };
+        }
+        this[INTERNAL].index = index + 1;
+        return {
+          value: values[index],
+          done: false
+        };
+      }
+    }, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));
+    Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {
+      value: "HeadersIterator",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function exportNodeCompatibleHeaders(headers) {
+      const obj = Object.assign({ __proto__: null }, headers[MAP]);
+      const hostHeaderKey = find(headers[MAP], "Host");
+      if (hostHeaderKey !== void 0) {
+        obj[hostHeaderKey] = obj[hostHeaderKey][0];
+      }
+      return obj;
+    }
+    function createHeadersLenient(obj) {
+      const headers = new Headers2();
+      for (const name of Object.keys(obj)) {
+        if (invalidTokenRegex.test(name)) {
+          continue;
+        }
+        if (Array.isArray(obj[name])) {
+          for (const val2 of obj[name]) {
+            if (invalidHeaderCharRegex.test(val2)) {
+              continue;
+            }
+            if (headers[MAP][name] === void 0) {
+              headers[MAP][name] = [val2];
+            } else {
+              headers[MAP][name].push(val2);
+            }
+          }
+        } else if (!invalidHeaderCharRegex.test(obj[name])) {
+          headers[MAP][name] = [obj[name]];
+        }
+      }
+      return headers;
+    }
+    var INTERNALS$1 = /* @__PURE__ */ Symbol("Response internals");
+    var STATUS_CODES = http.STATUS_CODES;
+    var Response = class _Response {
+      constructor() {
+        let body = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
+        let opts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        Body.call(this, body, opts);
+        const status = opts.status || 200;
+        const headers = new Headers2(opts.headers);
+        if (body != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(body);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        this[INTERNALS$1] = {
+          url: opts.url,
+          status,
+          statusText: opts.statusText || STATUS_CODES[status],
+          headers,
+          counter: opts.counter
+        };
+      }
+      get url() {
+        return this[INTERNALS$1].url || "";
+      }
+      get status() {
+        return this[INTERNALS$1].status;
+      }
+      /**
+       * Convenience property representing if the request ended normally
+       */
+      get ok() {
+        return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;
+      }
+      get redirected() {
+        return this[INTERNALS$1].counter > 0;
+      }
+      get statusText() {
+        return this[INTERNALS$1].statusText;
+      }
+      get headers() {
+        return this[INTERNALS$1].headers;
+      }
+      /**
+       * Clone this response
+       *
+       * @return  Response
+       */
+      clone() {
+        return new _Response(clone(this), {
+          url: this.url,
+          status: this.status,
+          statusText: this.statusText,
+          headers: this.headers,
+          ok: this.ok,
+          redirected: this.redirected
+        });
+      }
+    };
+    Body.mixIn(Response.prototype);
+    Object.defineProperties(Response.prototype, {
+      url: { enumerable: true },
+      status: { enumerable: true },
+      ok: { enumerable: true },
+      redirected: { enumerable: true },
+      statusText: { enumerable: true },
+      headers: { enumerable: true },
+      clone: { enumerable: true }
+    });
+    Object.defineProperty(Response.prototype, Symbol.toStringTag, {
+      value: "Response",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    var INTERNALS$2 = /* @__PURE__ */ Symbol("Request internals");
+    var URL3 = Url.URL || whatwgUrl.URL;
+    var parse_url = Url.parse;
+    var format_url = Url.format;
+    function parseURL(urlStr) {
+      if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) {
+        urlStr = new URL3(urlStr).toString();
+      }
+      return parse_url(urlStr);
+    }
+    var streamDestructionSupported = "destroy" in Stream.Readable.prototype;
+    function isRequest(input) {
+      return typeof input === "object" && typeof input[INTERNALS$2] === "object";
+    }
+    function isAbortSignal(signal) {
+      const proto = signal && typeof signal === "object" && Object.getPrototypeOf(signal);
+      return !!(proto && proto.constructor.name === "AbortSignal");
+    }
+    var Request2 = class _Request {
+      constructor(input) {
+        let init = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        let parsedURL;
+        if (!isRequest(input)) {
+          if (input && input.href) {
+            parsedURL = parseURL(input.href);
+          } else {
+            parsedURL = parseURL(`${input}`);
+          }
+          input = {};
+        } else {
+          parsedURL = parseURL(input.url);
+        }
+        let method = init.method || input.method || "GET";
+        method = method.toUpperCase();
+        if ((init.body != null || isRequest(input) && input.body !== null) && (method === "GET" || method === "HEAD")) {
+          throw new TypeError("Request with GET/HEAD method cannot have body");
+        }
+        let inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;
+        Body.call(this, inputBody, {
+          timeout: init.timeout || input.timeout || 0,
+          size: init.size || input.size || 0
+        });
+        const headers = new Headers2(init.headers || input.headers || {});
+        if (inputBody != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(inputBody);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        let signal = isRequest(input) ? input.signal : null;
+        if ("signal" in init) signal = init.signal;
+        if (signal != null && !isAbortSignal(signal)) {
+          throw new TypeError("Expected signal to be an instanceof AbortSignal");
+        }
+        this[INTERNALS$2] = {
+          method,
+          redirect: init.redirect || input.redirect || "follow",
+          headers,
+          parsedURL,
+          signal
+        };
+        this.follow = init.follow !== void 0 ? init.follow : input.follow !== void 0 ? input.follow : 20;
+        this.compress = init.compress !== void 0 ? init.compress : input.compress !== void 0 ? input.compress : true;
+        this.counter = init.counter || input.counter || 0;
+        this.agent = init.agent || input.agent;
+      }
+      get method() {
+        return this[INTERNALS$2].method;
+      }
+      get url() {
+        return format_url(this[INTERNALS$2].parsedURL);
+      }
+      get headers() {
+        return this[INTERNALS$2].headers;
+      }
+      get redirect() {
+        return this[INTERNALS$2].redirect;
+      }
+      get signal() {
+        return this[INTERNALS$2].signal;
+      }
+      /**
+       * Clone this request
+       *
+       * @return  Request
+       */
+      clone() {
+        return new _Request(this);
+      }
+    };
+    Body.mixIn(Request2.prototype);
+    Object.defineProperty(Request2.prototype, Symbol.toStringTag, {
+      value: "Request",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Request2.prototype, {
+      method: { enumerable: true },
+      url: { enumerable: true },
+      headers: { enumerable: true },
+      redirect: { enumerable: true },
+      clone: { enumerable: true },
+      signal: { enumerable: true }
+    });
+    function getNodeRequestOptions(request2) {
+      const parsedURL = request2[INTERNALS$2].parsedURL;
+      const headers = new Headers2(request2[INTERNALS$2].headers);
+      if (!headers.has("Accept")) {
+        headers.set("Accept", "*/*");
+      }
+      if (!parsedURL.protocol || !parsedURL.hostname) {
+        throw new TypeError("Only absolute URLs are supported");
+      }
+      if (!/^https?:$/.test(parsedURL.protocol)) {
+        throw new TypeError("Only HTTP(S) protocols are supported");
+      }
+      if (request2.signal && request2.body instanceof Stream.Readable && !streamDestructionSupported) {
+        throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");
+      }
+      let contentLengthValue = null;
+      if (request2.body == null && /^(POST|PUT)$/i.test(request2.method)) {
+        contentLengthValue = "0";
+      }
+      if (request2.body != null) {
+        const totalBytes = getTotalBytes(request2);
+        if (typeof totalBytes === "number") {
+          contentLengthValue = String(totalBytes);
+        }
+      }
+      if (contentLengthValue) {
+        headers.set("Content-Length", contentLengthValue);
+      }
+      if (!headers.has("User-Agent")) {
+        headers.set("User-Agent", "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)");
+      }
+      if (request2.compress && !headers.has("Accept-Encoding")) {
+        headers.set("Accept-Encoding", "gzip,deflate");
+      }
+      let agent = request2.agent;
+      if (typeof agent === "function") {
+        agent = agent(parsedURL);
+      }
+      return Object.assign({}, parsedURL, {
+        method: request2.method,
+        headers: exportNodeCompatibleHeaders(headers),
+        agent
+      });
+    }
+    function AbortError(message) {
+      Error.call(this, message);
+      this.type = "aborted";
+      this.message = message;
+      Error.captureStackTrace(this, this.constructor);
+    }
+    AbortError.prototype = Object.create(Error.prototype);
+    AbortError.prototype.constructor = AbortError;
+    AbortError.prototype.name = "AbortError";
+    var URL$1 = Url.URL || whatwgUrl.URL;
+    var PassThrough$1 = Stream.PassThrough;
+    var isDomainOrSubdomain = function isDomainOrSubdomain2(destination, original) {
+      const orig = new URL$1(original).hostname;
+      const dest = new URL$1(destination).hostname;
+      return orig === dest || orig[orig.length - dest.length - 1] === "." && orig.endsWith(dest);
+    };
+    var isSameProtocol = function isSameProtocol2(destination, original) {
+      const orig = new URL$1(original).protocol;
+      const dest = new URL$1(destination).protocol;
+      return orig === dest;
+    };
+    function fetch3(url2, opts) {
+      if (!fetch3.Promise) {
+        throw new Error("native promise missing, set fetch.Promise to your favorite alternative");
+      }
+      Body.Promise = fetch3.Promise;
+      return new fetch3.Promise(function(resolve6, reject) {
+        const request2 = new Request2(url2, opts);
+        const options = getNodeRequestOptions(request2);
+        const send = (options.protocol === "https:" ? https2 : http).request;
+        const signal = request2.signal;
+        let response = null;
+        const abort = function abort2() {
+          let error = new AbortError("The user aborted a request.");
+          reject(error);
+          if (request2.body && request2.body instanceof Stream.Readable) {
+            destroyStream(request2.body, error);
+          }
+          if (!response || !response.body) return;
+          response.body.emit("error", error);
+        };
+        if (signal && signal.aborted) {
+          abort();
+          return;
+        }
+        const abortAndFinalize = function abortAndFinalize2() {
+          abort();
+          finalize();
+        };
+        const req = send(options);
+        let reqTimeout;
+        if (signal) {
+          signal.addEventListener("abort", abortAndFinalize);
+        }
+        function finalize() {
+          req.abort();
+          if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          clearTimeout(reqTimeout);
+        }
+        if (request2.timeout) {
+          req.once("socket", function(socket) {
+            reqTimeout = setTimeout(function() {
+              reject(new FetchError(`network timeout at: ${request2.url}`, "request-timeout"));
+              finalize();
+            }, request2.timeout);
+          });
+        }
+        req.on("error", function(err) {
+          reject(new FetchError(`request to ${request2.url} failed, reason: ${err.message}`, "system", err));
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+          finalize();
+        });
+        fixResponseChunkedTransferBadEnding(req, function(err) {
+          if (signal && signal.aborted) {
+            return;
+          }
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+        });
+        if (parseInt(process.version.substring(1)) < 14) {
+          req.on("socket", function(s) {
+            s.addListener("close", function(hadError) {
+              const hasDataListener = s.listenerCount("data") > 0;
+              if (response && hasDataListener && !hadError && !(signal && signal.aborted)) {
+                const err = new Error("Premature close");
+                err.code = "ERR_STREAM_PREMATURE_CLOSE";
+                response.body.emit("error", err);
+              }
+            });
+          });
+        }
+        req.on("response", function(res) {
+          clearTimeout(reqTimeout);
+          const headers = createHeadersLenient(res.headers);
+          if (fetch3.isRedirect(res.statusCode)) {
+            const location = headers.get("Location");
+            let locationURL = null;
+            try {
+              locationURL = location === null ? null : new URL$1(location, request2.url).toString();
+            } catch (err) {
+              if (request2.redirect !== "manual") {
+                reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, "invalid-redirect"));
+                finalize();
+                return;
+              }
+            }
+            switch (request2.redirect) {
+              case "error":
+                reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request2.url}`, "no-redirect"));
+                finalize();
+                return;
+              case "manual":
+                if (locationURL !== null) {
+                  try {
+                    headers.set("Location", locationURL);
+                  } catch (err) {
+                    reject(err);
+                  }
+                }
+                break;
+              case "follow":
+                if (locationURL === null) {
+                  break;
+                }
+                if (request2.counter >= request2.follow) {
+                  reject(new FetchError(`maximum redirect reached at: ${request2.url}`, "max-redirect"));
+                  finalize();
+                  return;
+                }
+                const requestOpts = {
+                  headers: new Headers2(request2.headers),
+                  follow: request2.follow,
+                  counter: request2.counter + 1,
+                  agent: request2.agent,
+                  compress: request2.compress,
+                  method: request2.method,
+                  body: request2.body,
+                  signal: request2.signal,
+                  timeout: request2.timeout,
+                  size: request2.size
+                };
+                if (!isDomainOrSubdomain(request2.url, locationURL) || !isSameProtocol(request2.url, locationURL)) {
+                  for (const name of ["authorization", "www-authenticate", "cookie", "cookie2"]) {
+                    requestOpts.headers.delete(name);
+                  }
+                }
+                if (res.statusCode !== 303 && request2.body && getTotalBytes(request2) === null) {
+                  reject(new FetchError("Cannot follow redirect with body being a readable stream", "unsupported-redirect"));
+                  finalize();
+                  return;
+                }
+                if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request2.method === "POST") {
+                  requestOpts.method = "GET";
+                  requestOpts.body = void 0;
+                  requestOpts.headers.delete("content-length");
+                }
+                resolve6(fetch3(new Request2(locationURL, requestOpts)));
+                finalize();
+                return;
+            }
+          }
+          res.once("end", function() {
+            if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          });
+          let body = res.pipe(new PassThrough$1());
+          const response_options = {
+            url: request2.url,
+            status: res.statusCode,
+            statusText: res.statusMessage,
+            headers,
+            size: request2.size,
+            timeout: request2.timeout,
+            counter: request2.counter
+          };
+          const codings = headers.get("Content-Encoding");
+          if (!request2.compress || request2.method === "HEAD" || codings === null || res.statusCode === 204 || res.statusCode === 304) {
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          const zlibOptions = {
+            flush: zlib3.Z_SYNC_FLUSH,
+            finishFlush: zlib3.Z_SYNC_FLUSH
+          };
+          if (codings == "gzip" || codings == "x-gzip") {
+            body = body.pipe(zlib3.createGunzip(zlibOptions));
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          if (codings == "deflate" || codings == "x-deflate") {
+            const raw = res.pipe(new PassThrough$1());
+            raw.once("data", function(chunk) {
+              if ((chunk[0] & 15) === 8) {
+                body = body.pipe(zlib3.createInflate());
+              } else {
+                body = body.pipe(zlib3.createInflateRaw());
+              }
+              response = new Response(body, response_options);
+              resolve6(response);
+            });
+            raw.on("end", function() {
+              if (!response) {
+                response = new Response(body, response_options);
+                resolve6(response);
+              }
+            });
+            return;
+          }
+          if (codings == "br" && typeof zlib3.createBrotliDecompress === "function") {
+            body = body.pipe(zlib3.createBrotliDecompress());
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          response = new Response(body, response_options);
+          resolve6(response);
+        });
+        writeToStream(req, request2);
+      });
+    }
+    function fixResponseChunkedTransferBadEnding(request2, errorCallback) {
+      let socket;
+      request2.on("socket", function(s) {
+        socket = s;
+      });
+      request2.on("response", function(response) {
+        const headers = response.headers;
+        if (headers["transfer-encoding"] === "chunked" && !headers["content-length"]) {
+          response.once("close", function(hadError) {
+            const hasDataListener = socket && socket.listenerCount("data") > 0;
+            if (hasDataListener && !hadError) {
+              const err = new Error("Premature close");
+              err.code = "ERR_STREAM_PREMATURE_CLOSE";
+              errorCallback(err);
+            }
+          });
+        }
+      });
+    }
+    function destroyStream(stream, err) {
+      if (stream.destroy) {
+        stream.destroy(err);
+      } else {
+        stream.emit("error", err);
+        stream.end();
+      }
+    }
+    fetch3.isRedirect = function(code) {
+      return code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
+    };
+    fetch3.Promise = global.Promise;
+    module2.exports = exports2 = fetch3;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.default = exports2;
+    exports2.Headers = Headers2;
+    exports2.Request = Request2;
+    exports2.Response = Response;
+    exports2.FetchError = FetchError;
+    exports2.AbortError = AbortError;
+  }
+});
+
+// lib/assertions/providers/lambda-handler/index.ts
+var index_exports = {};
+__export(index_exports, {
+  handler: () => handler,
+  isComplete: () => isComplete,
+  onTimeout: () => onTimeout
+});
+module.exports = __toCommonJS(index_exports);
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var import_helpers_internal8 = __toESM(require_helpers_internal());
+
+// lib/assertions/providers/lambda-handler/base.ts
+var https = __toESM(require("https"));
+var url = __toESM(require("url"));
+var import_client_sfn = __toESM(require_dist_cjs53());
+var CustomResourceHandler = class {
+  constructor(event, context) {
+    this.event = event;
+    this.context = context;
+    this.timeout = setTimeout(async () => {
+      await this.respond({
+        status: "FAILED",
+        reason: "Lambda Function Timeout",
+        data: this.context.logStreamName
+      });
+      this.timedOut = true;
+    }, context.getRemainingTimeInMillis() - 1200);
+    this.event = event;
+    this.physicalResourceId = extractPhysicalResourceId(event);
+  }
+  event;
+  context;
+  physicalResourceId;
+  timeout;
+  timedOut = false;
+  /**
+   * Handles executing the custom resource event. If `stateMachineArn` is present
+   * in the props then trigger the waiter statemachine
+   */
+  async handle() {
+    try {
+      if ("stateMachineArn" in this.event.ResourceProperties) {
+        const req = {
+          stateMachineArn: this.event.ResourceProperties.stateMachineArn,
+          name: this.event.RequestId,
+          input: JSON.stringify(this.event)
+        };
+        await this.startExecution(req);
+        return;
+      } else {
+        const response = await this.processEvent(this.event.ResourceProperties);
+        return response;
+      }
+    } catch (e) {
+      console.log(e);
+      throw e;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Handle async requests from the waiter state machine
+   */
+  async handleIsComplete() {
+    try {
+      const result = await this.processEvent(this.event.ResourceProperties);
+      return result;
+    } catch (e) {
+      console.log(e);
+      return;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Start a step function state machine which will wait for the request
+   * to be successful.
+   */
+  async startExecution(req) {
+    try {
+      const sfn = new import_client_sfn.SFN({});
+      await sfn.startExecution(req);
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  respond(response) {
+    if (this.timedOut) {
+      return;
+    }
+    const cfResponse = {
+      Status: response.status,
+      Reason: response.reason,
+      PhysicalResourceId: this.physicalResourceId,
+      StackId: this.event.StackId,
+      RequestId: this.event.RequestId,
+      LogicalResourceId: this.event.LogicalResourceId,
+      NoEcho: false,
+      Data: response.data
+    };
+    const responseBody = JSON.stringify(cfResponse);
+    console.log("Responding to CloudFormation", responseBody);
+    const parsedUrl = url.parse(this.event.ResponseURL);
+    const requestOptions = {
+      hostname: parsedUrl.hostname,
+      path: parsedUrl.path,
+      method: "PUT",
+      headers: {
+        "content-type": "",
+        "content-length": Buffer.byteLength(responseBody, "utf8")
+      }
+    };
+    return new Promise((resolve6, reject) => {
+      try {
+        const request2 = https.request(requestOptions, resolve6);
+        request2.on("error", reject);
+        request2.write(responseBody);
+        request2.end();
+      } catch (e) {
+        reject(e);
+      } finally {
+        clearTimeout(this.timeout);
+      }
+    });
+  }
+};
+function extractPhysicalResourceId(event) {
+  switch (event.RequestType) {
+    case "Create":
+      return event.LogicalResourceId;
+    case "Update":
+    case "Delete":
+      return event.PhysicalResourceId;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var AssertionHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    let actual = decodeCall(request2.actual);
+    const expected = decodeCall(request2.expected);
+    let result;
+    const matcher = new MatchCreator(expected).getMatcher();
+    console.log(`Testing equality between ${JSON.stringify(request2.actual)} and ${JSON.stringify(request2.expected)}`);
+    const matchResult = matcher.test(actual);
+    matchResult.finished();
+    if (matchResult.hasFailed()) {
+      result = {
+        failed: true,
+        assertion: JSON.stringify({
+          status: "fail",
+          message: matchResult.renderMismatch()
+        })
+      };
+      if (request2.failDeployment) {
+        throw new Error(result.assertion);
+      }
+    } else {
+      result = {
+        assertion: JSON.stringify({
+          status: "success"
+        })
+      };
+    }
+    return result;
+  }
+};
+var MatchCreator = class {
+  parsedObj;
+  constructor(obj) {
+    this.parsedObj = {
+      matcher: obj
+    };
+  }
+  /**
+   * Return a Matcher that can be tested against the actual results.
+   * This will convert the encoded matchers into their corresponding
+   * assertions matcher.
+   *
+   * For example:
+   *
+   * ExpectedResult.objectLike({
+   *   Messages: [{
+   *     Body: Match.objectLike({
+   *       Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *       Payload: Match.serializedJson({ key: 'value' }),
+   *     }),
+   *   }],
+   * });
+   *
+   * Will be encoded as:
+   * {
+   *   $ObjectLike: {
+   *     Messages: [{
+   *       Body: {
+   *         $ObjectLike: {
+   *           Elements: {
+   *             $ArrayWith: [{ Asdf: 3 }],
+   *           },
+   *           Payload: {
+   *             $SerializedJson: { key: 'value' }
+   *           }
+   *         },
+   *       },
+   *     }],
+   *   },
+   * }
+   *
+   * Which can then be parsed by this function. For each key (recursively)
+   * the parser will check if the value has one of the encoded matchers as a key
+   * and if so, it will set the value as the Matcher. So,
+   *
+   * {
+   *   Body: {
+   *     $ObjectLike: {
+   *       Elements: {
+   *         $ArrayWith: [{ Asdf: 3 }],
+   *       },
+   *       Payload: {
+   *         $SerializedJson: { key: 'value' }
+   *       }
+   *     },
+   *   },
+   * }
+   *
+   * Will be converted to
+   * {
+   *   Body: Match.objectLike({
+   *     Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *     Payload: Match.serializedJson({ key: 'value' }),
+   *   }),
+   * }
+   */
+  getMatcher() {
+    try {
+      const final = JSON.parse(JSON.stringify(this.parsedObj), function(_k, v) {
+        const nested = Object.keys(v)[0];
+        switch (nested) {
+          case "$ArrayWith":
+            return import_helpers_internal8.Match.arrayWith(v[nested]);
+          case "$ObjectLike":
+            return import_helpers_internal8.Match.objectLike(v[nested]);
+          case "$StringLike":
+            return import_helpers_internal8.Match.stringLikeRegexp(v[nested]);
+          case "$SerializedJson":
+            return import_helpers_internal8.Match.serializedJson(v[nested]);
+          default:
+            return v;
+        }
+      });
+      if (import_helpers_internal8.Matcher.isMatcher(final.matcher)) {
+        return final.matcher;
+      }
+      return import_helpers_internal8.Match.exact(final.matcher);
+    } catch {
+      return import_helpers_internal8.Match.exact(this.parsedObj.matcher);
+    }
+  }
+};
+function decodeCall(call) {
+  if (!call) {
+    return void 0;
+  }
+  try {
+    const parsed = JSON.parse(call);
+    return parsed;
+  } catch {
+    return call;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var import_aws_custom_resource_sdk_adapter = __toESM(require_lib6());
+var import_node_fetch = __toESM(require_lib9());
+
+// lib/assertions/providers/lambda-handler/utils.ts
+function deepParseJson(x) {
+  if (typeof x === "string") {
+    return tryJsonParse(x);
+  }
+  if (Array.isArray(x)) {
+    return x.map(deepParseJson);
+  }
+  if (x && typeof x === "object") {
+    for (const [key, value] of Object.entries(x)) {
+      x[key] = deepParseJson(value);
+    }
+    return x;
+  }
+  return x;
+}
+function tryJsonParse(v) {
+  if (typeof v !== "string") {
+    return v;
+  }
+  try {
+    return JSON.parse(v);
+  } catch {
+    return v;
+  }
+}
+function decodeParameters(obj) {
+  return Object.fromEntries(Object.entries(obj).map(([key, value]) => {
+    try {
+      return [key, decodeValue(value)];
+    } catch {
+      return [key, value];
+    }
+  }));
+}
+function decodeValue(value) {
+  if (value != null && !Array.isArray(value) && typeof value === "object") {
+    if (value.$type === "ArrayBufferView") {
+      return new TextEncoder().encode(value.string);
+    }
+  }
+  return JSON.parse(value);
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var HttpHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    console.log("request", request2);
+    const response = await (0, import_node_fetch.default)(request2.parameters.url, request2.parameters.fetchOptions);
+    const result = {
+      ok: response.ok,
+      status: response.status,
+      statusText: response.statusText,
+      headers: response.headers.raw()
+    };
+    result.body = await response.text();
+    try {
+      result.body = JSON.parse(result.body);
+    } catch (e) {
+    }
+    let resp;
+    if (request2.flattenResponse === "true") {
+      resp = (0, import_aws_custom_resource_sdk_adapter.flatten)(deepParseJson({ apiCallResponse: result }));
+    } else {
+      resp = { apiCallResponse: result };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+
+// lib/assertions/providers/lambda-handler/sdk.ts
+var import_aws_custom_resource_sdk_adapter2 = __toESM(require_lib6());
+var AwsApiCallHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    const apiCall = new import_aws_custom_resource_sdk_adapter2.ApiCall(request2.service, request2.api);
+    const parameters = request2.parameters ? decodeParameters(request2.parameters) : {};
+    console.log(`SDK request to ${apiCall.service}.${apiCall.action} with parameters ${JSON.stringify(parameters)}`);
+    const response = await apiCall.invoke({ parameters });
+    console.log(`SDK response received ${JSON.stringify(response)}`);
+    delete response.$metadata;
+    let resp;
+    if (request2.outputPaths || request2.flattenResponse === "true") {
+      const flattened = (0, import_aws_custom_resource_sdk_adapter2.flatten)(deepParseJson({ apiCallResponse: response }));
+      resp = request2.outputPaths ? filterKeys(flattened, request2.outputPaths) : flattened;
+    } else {
+      resp = { apiCallResponse: response };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+function filterKeys(object, searchStrings) {
+  return Object.entries(object).reduce((filteredObject, [key, value]) => {
+    for (const searchString of searchStrings) {
+      if (key.startsWith(`apiCallResponse.${searchString}`)) {
+        filteredObject[key] = value;
+      }
+    }
+    return filteredObject;
+  }, {});
+}
+
+// lib/assertions/providers/lambda-handler/types.ts
+var ASSERT_RESOURCE_TYPE = "Custom::DeployAssert@AssertEquals";
+var SDK_RESOURCE_TYPE_PREFIX = "Custom::DeployAssert@SdkCall";
+var HTTP_RESOURCE_TYPE = "Custom::DeployAssert@HttpCall";
+
+// lib/assertions/providers/lambda-handler/index.ts
+async function handler(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    if (event.RequestType === "Delete") {
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK"
+      });
+      return;
+    }
+    const result = await provider.handle();
+    if ("stateMachineArn" in event.ResourceProperties) {
+      console.info('Found "stateMachineArn", waiter statemachine started');
+      return;
+    } else if ("expected" in event.ResourceProperties) {
+      console.info('Found "expected", testing assertions');
+      const actualPath = event.ResourceProperties.actualPath;
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      const assertion = new AssertionHandler({
+        ...event,
+        ResourceProperties: {
+          ServiceToken: event.ServiceToken,
+          actual,
+          expected: event.ResourceProperties.expected
+        }
+      }, context);
+      try {
+        const assertionResult = await assertion.handle();
+        await provider.respond({
+          status: "SUCCESS",
+          reason: "OK",
+          // return both the result of the API call _and_ the assertion results
+          data: {
+            ...assertionResult,
+            ...result
+          }
+        });
+        return;
+      } catch (e) {
+        await provider.respond({
+          status: "FAILED",
+          reason: e.message ?? "Internal Error"
+        });
+        return;
+      }
+    }
+    await provider.respond({
+      status: "SUCCESS",
+      reason: "OK",
+      data: result
+    });
+  } catch (e) {
+    await provider.respond({
+      status: "FAILED",
+      reason: e.message ?? "Internal Error"
+    });
+    return;
+  }
+  return;
+}
+async function onTimeout(timeoutEvent) {
+  const eventPayload = JSON.parse(JSON.parse(timeoutEvent.Cause).errorMessage);
+  const provider = createResourceHandler(eventPayload, standardContext);
+  await provider.respond({
+    status: "FAILED",
+    // Only the properties to the IsComplete Resource need to be included.
+    reason: "Operation timed out: " + JSON.stringify(eventPayload.ResourceProperties)
+  });
+}
+async function isComplete(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    const result = await provider.handleIsComplete();
+    const actualPath = event.ResourceProperties.actualPath;
+    if (result) {
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      if ("expected" in event.ResourceProperties) {
+        const assertion = new AssertionHandler({
+          ...event,
+          ResourceProperties: {
+            ServiceToken: event.ServiceToken,
+            actual,
+            expected: event.ResourceProperties.expected
+          }
+        }, context);
+        const assertionResult = await assertion.handleIsComplete();
+        if (!assertionResult?.failed) {
+          await provider.respond({
+            status: "SUCCESS",
+            reason: "OK",
+            data: {
+              ...assertionResult,
+              ...result
+            }
+          });
+          return;
+        } else {
+          console.log(`Assertion Failed: ${JSON.stringify(assertionResult)}`);
+          throw new Error(JSON.stringify(event));
+        }
+      }
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK",
+        data: result
+      });
+    } else {
+      console.log("No result");
+      throw new Error(JSON.stringify(event));
+    }
+    return;
+  } catch (e) {
+    console.log(e);
+    throw new Error(JSON.stringify(event));
+  }
+}
+function createResourceHandler(event, context) {
+  if (event.ResourceType.startsWith(SDK_RESOURCE_TYPE_PREFIX)) {
+    return new AwsApiCallHandler(event, context);
+  } else if (event.ResourceType.startsWith(ASSERT_RESOURCE_TYPE)) {
+    return new AssertionHandler(event, context);
+  } else if (event.ResourceType.startsWith(HTTP_RESOURCE_TYPE)) {
+    return new HttpHandler(event, context);
+  } else {
+    throw new Error(`Unsupported resource type "${event.ResourceType}`);
+  }
+}
+var standardContext = {
+  getRemainingTimeInMillis: () => 9e4
+};
+// Annotate the CommonJS export names for ESM import in node:
+0 && (module.exports = {
+  handler,
+  isComplete,
+  onTimeout
+});
+/*! Bundled license information:
+
+@balena/dockerignore/ignore.js:
+  (**
+   * @license
+   * Copyright 2020 Balena Ltd.
+   *
+   * Licensed under the Apache License, Version 2.0 (the "License");
+   * you may not use this file except in compliance with the License.
+   * You may obtain a copy of the License at
+   *
+   *    http://www.apache.org/licenses/LICENSE-2.0
+   *
+   * Unless required by applicable law or agreed to in writing, software
+   * distributed under the License is distributed on an "AS IS" BASIS,
+   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   * See the License for the specific language governing permissions and
+   * limitations under the License.
+   *
+   * ------------------------------------------------------------------------
+   *
+   * Copyright 2018 Zeit, Inc.
+   * Licensed under the MIT License. See file LICENSE.md for a full copy.
+   *
+   * ------------------------------------------------------------------------
+   *)
+*/
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d/index.js
new file mode 100644
index 0000000000000..ed5892d7e6e42
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d/index.js
@@ -0,0 +1 @@
+"use strict";var k=Object.create;var a=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var O=Object.getPrototypeOf,x=Object.prototype.hasOwnProperty;var L=(e,t)=>{for(var o in t)a(e,o,{get:t[o],enumerable:!0})},R=(e,t,o,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of D(t))!x.call(e,n)&&n!==o&&a(e,n,{get:()=>t[n],enumerable:!(s=A(t,n))||s.enumerable});return e};var p=(e,t,o)=>(o=e!=null?k(O(e)):{},R(t||!e||!e.__esModule?a(o,"default",{value:e,enumerable:!0}):o,e)),B=e=>R(a({},"__esModule",{value:!0}),e);var U={};L(U,{destinationKey:()=>m,handler:()=>j,s3:()=>y,s3ObjectCopyHandler:()=>w});module.exports=B(U);var C=require("crypto"),E=require("@aws-sdk/client-s3");var f=p(require("https")),I=p(require("url")),i={sendHttpRequest:N,log:K,includeStackTraces:!0,userHandlerIndex:"./index"},h="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",$="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function g(e){return async(t,o)=>{let s={...t,ResponseURL:"..."};if(i.log(JSON.stringify(s,void 0,2)),t.RequestType==="Delete"&&t.PhysicalResourceId===h){i.log("ignoring DELETE event caused by a failed CREATE event"),await c("SUCCESS",t);return}try{let n=await e(s,o),r=H(t,n);await c("SUCCESS",r)}catch(n){let r={...t,Reason:i.includeStackTraces?n.stack:n.message};r.PhysicalResourceId||(t.RequestType==="Create"?(i.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),r.PhysicalResourceId=h):i.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(t)}`)),await c("FAILED",r)}}}function H(e,t={}){let o=t.PhysicalResourceId??e.PhysicalResourceId??e.RequestId;if(e.RequestType==="Delete"&&o!==e.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${e.PhysicalResourceId}" to "${t.PhysicalResourceId}" during deletion`);return{...e,...t,PhysicalResourceId:o}}async function c(e,t){let o={Status:e,Reason:t.Reason??e,StackId:t.StackId,RequestId:t.RequestId,PhysicalResourceId:t.PhysicalResourceId||$,LogicalResourceId:t.LogicalResourceId,NoEcho:t.NoEcho,Data:t.Data},s=I.parse(t.ResponseURL),n=`${s.protocol}//${s.hostname}/${s.pathname}?***`;i.log("submit response to cloudformation",n,o);let r=JSON.stringify(o),b={hostname:s.hostname,path:s.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(r,"utf8")}};await T({attempts:5,sleep:1e3},i.sendHttpRequest)(b,r)}async function N(e,t){return new Promise((o,s)=>{try{let n=f.request(e,r=>{r.resume(),!r.statusCode||r.statusCode>=400?s(new Error(`Unsuccessful HTTP response: ${r.statusCode}`)):o()});n.on("error",s),n.write(t),n.end()}catch(n){s(n)}})}function K(e,...t){console.log(e,...t)}function T(e,t){return async(...o)=>{let s=e.attempts,n=e.sleep;for(;;)try{return await t(...o)}catch(r){if(s--<=0)throw r;await V(Math.floor(Math.random()*n)),n*=2}}}async function V(e){return new Promise(t=>setTimeout(t,e))}var y=new E.S3({followRegionRedirects:!0}),j=g(w);async function w(e){let t=e.ResourceProperties;switch(e.RequestType){case"Create":return u(await P(t));case"Update":{let o=S(e.PhysicalResourceId);return o&&o.Bucket===t.DestinationBucketName&&o.Key===m(t)?u(o):u(await P(t))}case"Delete":{let o=S(e.PhysicalResourceId);return o?await q(o):console.log(`Physical resource ID '${e.PhysicalResourceId}' names no object version; nothing to delete`),{PhysicalResourceId:e.PhysicalResourceId}}}}function m(e){let t=d([e.ContentHash,e.Configuration??null]),o=(0,C.createHash)("sha256").update(t).digest("hex").slice(0,32);return`${e.DestinationKeyPrefix}${o}.zip`}function d(e){return Array.isArray(e)?`[${e.map(d).join(",")}]`:e!==null&&typeof e=="object"?`{${Object.keys(e).sort().map(o=>`${JSON.stringify(o)}:${d(e[o])}`).join(",")}}`:JSON.stringify(e)}var l="?versionId=";function u(e){return{PhysicalResourceId:`${e.Bucket}/${e.Key}${l}${e.VersionId}`,Data:e}}function S(e){let t=e.lastIndexOf(l),o=e.indexOf("/");if(t<0||o<=0||o+1>=t)return;let s=e.slice(t+l.length);if(s)return{Bucket:e.slice(0,o),Key:e.slice(o+1,t),VersionId:s}}function F(e){return e.split("/").map(encodeURIComponent).join("/")}async function P(e){let t=m(e),o=await y.copyObject({Bucket:e.DestinationBucketName,Key:t,CopySource:`${e.SourceBucketName}/${F(e.SourceObjectKey)}`});if(!o.VersionId)throw new Error(`Copied s3://${e.DestinationBucketName}/${t} but S3 returned no VersionId. Enable versioning on the destination bucket.`);return{Bucket:e.DestinationBucketName,Key:t,VersionId:o.VersionId}}async function q(e){try{await y.deleteObject({Bucket:e.Bucket,Key:e.Key,VersionId:e.VersionId})}catch(t){if(t.name==="NoSuchBucket"){console.log(`Bucket '${e.Bucket}' does not exist; nothing to delete.`);return}throw t}}0&&(module.exports={destinationKey,handler,s3,s3ObjectCopyHandler});
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/cdk.out
new file mode 100644
index 0000000000000..a130d293db2dd
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/cdk.out
@@ -0,0 +1 @@
+{"version":"55.0.0"}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/integ.json
new file mode 100644
index 0000000000000..db0524c887e6d
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/integ.json
@@ -0,0 +1,15 @@
+{
+  "version": "55.0.0",
+  "testCases": {
+    "WebFunctionEndpointsTest/DefaultTest": {
+      "stacks": [
+        "WebFunctionEndpointsStack"
+      ],
+      "diffAssets": false,
+      "assertionStack": "WebFunctionEndpointsTest/DefaultTest/DeployAssert",
+      "assertionStackName": "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653"
+    }
+  },
+  "enableLookups": true,
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/manifest.json
new file mode 100644
index 0000000000000..217ba7ece99c8
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/manifest.json
@@ -0,0 +1,640 @@
+{
+  "version": "55.0.0",
+  "artifacts": {
+    "WebFunctionEndpointsStack.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionEndpointsStack.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionEndpointsStack": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionEndpointsStack.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/0d95a4444586c1078658365812baa8a9abe583654b1b4981f0acaad9cb778c39.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionEndpointsStack.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionEndpointsStack.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionEndpointsStack.metadata.json",
+      "displayName": "WebFunctionEndpointsStack"
+    },
+    "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/953882a037064c2d7ef85739a1140df3f0dee51b9388b26efad49917f82182fe.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionEndpointsStack",
+        "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionEndpointsTestDefaultTestDeployAssert8F720653.metadata.json",
+      "displayName": "WebFunctionEndpointsTest/DefaultTest/DeployAssert"
+    },
+    "Tree": {
+      "type": "cdk:tree",
+      "properties": {
+        "file": "tree.json"
+      }
+    },
+    "aws-cdk-lib/feature-flag-report": {
+      "type": "cdk:feature-flag-report",
+      "properties": {
+        "module": "aws-cdk-lib",
+        "flags": {
+          "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Pass signingProfileName to CfnSigningProfile"
+          },
+          "@aws-cdk/core:newStyleStackSynthesis": {
+            "recommendedValue": true,
+            "explanation": "Switch to new stack synthesis method which enables CI/CD",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:stackRelativeExports": {
+            "recommendedValue": true,
+            "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Disable implicit openListener when custom security groups are provided"
+          },
+          "@aws-cdk/aws-rds:lowercaseDbIdentifier": {
+            "recommendedValue": true,
+            "explanation": "Force lowercasing of RDS Cluster names in CDK",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": {
+            "recommendedValue": true,
+            "explanation": "Allow adding/removing multiple UsagePlanKeys independently",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeVersionProps": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the  `fn.currentVersion`.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeLayerVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`."
+          },
+          "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:checkSecretUsage": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations"
+          },
+          "@aws-cdk/core:target-partitions": {
+            "recommendedValue": [
+              "aws",
+              "aws-cn"
+            ],
+            "explanation": "What regions to include in lookup tables of environment agnostic stacks"
+          },
+          "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ECS extensions will automatically add an `awslogs` driver if no logging is specified"
+          },
+          "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names."
+          },
+          "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID."
+          },
+          "@aws-cdk/aws-iam:minimizePolicies": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Minimize IAM policies by combining Statements"
+          },
+          "@aws-cdk/core:validateSnapshotRemovalPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Error on snapshot removal policies on resources that do not support it."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate key aliases that include the stack name"
+          },
+          "@aws-cdk/aws-s3:createDefaultLoggingPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist."
+          },
+          "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict KMS key policy for encrypted Queues a bit more"
+          },
+          "@aws-cdk/aws-apigateway:disableCloudWatchRole": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment"
+          },
+          "@aws-cdk/core:enablePartitionLiterals": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make ARNs concrete if AWS partition is known"
+          },
+          "@aws-cdk/aws-events:eventsTargetQueueSameAccount": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Event Rules may only push to encrypted SQS queues in the same account"
+          },
+          "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Avoid setting the \"ECS\" deployment controller when adding a circuit breaker"
+          },
+          "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in."
+          },
+          "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use S3 Bucket Policy instead of ACLs for Server Access Logging"
+          },
+          "@aws-cdk/aws-route53-patters:useCertificate": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the official `Certificate` resource instead of `DnsValidatedCertificate`"
+          },
+          "@aws-cdk/customresources:installLatestAwsSdkDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "Whether to install the latest SDK by default in AwsCustomResource"
+          },
+          "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use unique resource name for Database Proxy"
+          },
+          "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Remove CloudWatch alarms from deployment group"
+          },
+          "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include authorizer configuration in the calculation of the API deployment logical ID."
+          },
+          "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Define user data for a launch template by default when a machine image is provided."
+          },
+          "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "SecretTargetAttachments uses the ResourcePolicy of the attached Secret."
+          },
+          "@aws-cdk/aws-redshift:columnId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Whether to use an ID to track Redshift column changes"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable AmazonEMRServicePolicy_v2 managed policies"
+          },
+          "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict access to the VPC default security group"
+          },
+          "@aws-cdk/aws-apigateway:requestValidatorUniqueId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a unique id for each RequestValidator added to a method"
+          },
+          "@aws-cdk/aws-kms:aliasNameRef": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "KMS Alias name and keyArn will have implicit reference to KMS Key"
+          },
+          "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition"
+          },
+          "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a launch template when creating an AutoScalingGroup"
+          },
+          "@aws-cdk/core:includePrefixInUniqueNameGeneration": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include the stack prefix in the stack name generation process"
+          },
+          "@aws-cdk/aws-efs:denyAnonymousAccess": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "EFS denies anonymous clients accesses"
+          },
+          "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables support for Multi-AZ with Standby deployment for opensearch domains"
+          },
+          "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default"
+          },
+          "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet."
+          },
+          "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change."
+          },
+          "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id."
+          },
+          "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials."
+          },
+          "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the CodeCommit source action is using the default branch name 'main'."
+          },
+          "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default value for crossAccountKeys to false."
+          },
+          "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default pipeline type to V2."
+          },
+          "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only."
+          },
+          "@aws-cdk/pipelines:reduceAssetRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-eks:nodegroupNameAttribute": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix."
+          },
+          "@aws-cdk/aws-eks:useNativeOidcProvider": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider)."
+          },
+          "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default volume type of the EBS volume will be GP3"
+          },
+          "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, remove default deployment alarm settings"
+          },
+          "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default"
+          },
+          "@aws-cdk/aws-s3:keepNotificationInImportedBucket": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": {
+            "recommendedValue": true,
+            "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:explicitStackTags": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, stack tags need to be assigned explicitly on a Stack."
+          },
+          "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration"
+          },
+          "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas"
+          },
+          "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together."
+          },
+          "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn."
+          },
+          "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`"
+          },
+          "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values."
+          },
+          "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN."
+          },
+          "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2."
+          },
+          "@aws-cdk/core:aspectStabilization": {
+            "recommendedValue": true,
+            "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource."
+          },
+          "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere"
+          },
+          "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default behaviour of OIDC provider will reject unauthorized connections"
+          },
+          "@aws-cdk/core:enableAdditionalMetadataCollection": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues."
+          },
+          "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement"
+          },
+          "@aws-cdk/aws-s3:setUniqueReplicationRoleName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication."
+          },
+          "@aws-cdk/pipelines:reduceStageRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from Stage addActions trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-events:requireEventBusPolicySid": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals."
+          },
+          "@aws-cdk/core:aspectPrioritiesMutating": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING."
+          },
+          "@aws-cdk/aws-dynamodb:retainTableReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, table replica will be default to the removal policy of source table unless specified otherwise."
+          },
+          "@aws-cdk/cognito:logUserPoolClientSecretValue": {
+            "recommendedValue": false,
+            "explanation": "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs."
+          },
+          "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "When enabled, scopes down the trust policy for the cross-account action role",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter"
+          },
+          "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions."
+          },
+          "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC."
+          },
+          "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration": {
+            "recommendedValue": false,
+            "explanation": "When enabled, use resource IDs for VPC V2 migration"
+          },
+          "@aws-cdk/aws-s3:publicAccessBlockedByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined."
+          },
+          "@aws-cdk/aws-lambda:useCdkManagedLogGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK creates and manages loggroup for the lambda function"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, Network Load Balancer will be created with a security group by default."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": {
+            "recommendedValue": true,
+            "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement"
+          },
+          "@aws-cdk/aws-route53-patterns:useDistribution": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the `Distribution` resource instead of `CloudFrontWebDistribution`"
+          },
+          "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default"
+          },
+          "@aws-cdk/core:automaticL1Traits": {
+            "recommendedValue": true,
+            "explanation": "Automatically use the default L1 traits for L1 constructs`",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-batch:defaultToAL2023": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2"
+          },
+          "@aws-cdk/aws-eks:defaultToAL2023": {
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2"
+          },
+          "@aws-cdk/core:annotationsInValidationReport": {
+            "recommendedValue": true,
+            "explanation": "Include construct annotations (warnings and errors) in the policy validation report"
+          },
+          "@aws-cdk/core:defaultCrossStackReferences": {
+            "recommendedValue": "weak",
+            "explanation": "Controls whether cross-stack references are strong, weak, or both",
+            "unconfiguredBehavesLike": {
+              "v2": "strong"
+            }
+          },
+          "@aws-cdk/core:validateAgainstDefaultRules": {
+            "recommendedValue": true,
+            "explanation": "Treat CloudFormation Validate findings as errors"
+          },
+          "@aws-cdk/aws-ecs:removeEmptyLoadBalancers": {
+            "recommendedValue": true,
+            "explanation": "Render an empty `LoadBalancers` array on an ECS service that has no target groups"
+          },
+          "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps": {
+            "recommendedValue": true,
+            "explanation": "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS"
+          },
+          "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard": {
+            "recommendedValue": true,
+            "explanation": "Render the API Gateway access log destination ARN without the trailing `:*`"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:evaluateExpressionDedicatedFunction": {
+            "recommendedValue": true,
+            "explanation": "When enabled, each EvaluateExpression task gets its own Lambda function",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          }
+        }
+      }
+    }
+  },
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/tree.json
new file mode 100644
index 0000000000000..a71e25585c0af
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/tree.json
@@ -0,0 +1 @@
+{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"WebFunctionEndpointsStack":{"id":"WebFunctionEndpointsStack","path":"WebFunctionEndpointsStack","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Function":{"id":"Function","path":"WebFunctionEndpointsStack/Function","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunction","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionEndpointsStack/Function/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/Function/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"FunctionServiceRole675BB04A","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}}}},"Code":{"id":"Code","path":"WebFunctionEndpointsStack/Function/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionEndpointsStack/Function/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionEndpointsStack/Function/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"CodeCopyd6190910":{"id":"CodeCopyd6190910","path":"WebFunctionEndpointsStack/Function/CodeCopyd6190910","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"CustomResourceHandler":{"id":"CustomResourceHandler","path":"WebFunctionEndpointsStack/Function/CodeCopyd6190910/CustomResourceHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.SingletonFunction","version":"0.0.0"}},"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/Function/CodeCopyd6190910/Resource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionEndpointsStack/Function/CodeCopyd6190910/Resource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionEndpointsStack/Function/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/Function/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"FunctionLogGroup55B80E27","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"Function":{"id":"Function","path":"WebFunctionEndpointsStack/Function/Function","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunction","aws:cdk:cloudformation:logicalId":"Function042596DC","aws:cdk:cloudformation:props":{"functionName":"WebFunctionEndpontsStackFunctionCD78E45E"}}},"Revision":{"id":"Revision","path":"WebFunctionEndpointsStack/Function/Revision","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionRevision","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionRevision","aws:cdk:cloudformation:logicalId":"FunctionRevision22F51A9C","aws:cdk:cloudformation:props":{"buildConfig":{"codeConfig":{"s3Object":{"bucket":{"Fn::GetAtt":["FunctionCodeCopyd61909107AB50639","Bucket"]},"key":{"Fn::GetAtt":["FunctionCodeCopyd61909107AB50639","Key"]},"versionId":{"Fn::GetAtt":["FunctionCodeCopyd61909107AB50639","VersionId"]}}},"runtimeConfig":{"runtime":"nodejs24.x"}},"functionName":{"Ref":"Function042596DC"},"serviceConfig":{"executionRoleArn":{"Fn::GetAtt":["FunctionServiceRole675BB04A","Arn"]},"telemetryConfig":{"loggingConfig":{"logGroup":{"Ref":"FunctionLogGroup55B80E27"}}},"timeoutSeconds":30}}}},"Endpoint":{"id":"Endpoint","path":"WebFunctionEndpointsStack/Function/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunctionEndpoint","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionEndpointsStack/Function/Endpoint/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionEndpoint","aws:cdk:cloudformation:logicalId":"FunctionEndpoint85BE574A","aws:cdk:cloudformation:props":{"authType":"IamAuth","endpointName":"prod","endpointType":"HomeRegion","functionName":{"Fn::GetAtt":["Function042596DC","FunctionArn"]},"revisionWeights":[{"revisionId":{"Fn::GetAtt":["FunctionRevision22F51A9C","RevisionId"]},"weight":100}]}}}}},"MultiRegion":{"id":"MultiRegion","path":"WebFunctionEndpointsStack/Function/MultiRegion","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunctionEndpoint","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionEndpointsStack/Function/MultiRegion/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionEndpoint","aws:cdk:cloudformation:logicalId":"FunctionMultiRegion7EEB9354","aws:cdk:cloudformation:props":{"authType":"IamAuth","endpointName":"WebFunctionEndpointsStackFunctionMultiRegion0DDEC83B-a679dbcc","endpointType":"MultiRegion","functionName":{"Fn::GetAtt":["Function042596DC","FunctionArn"]},"regions":["us-east-1"],"revisionWeights":[{"revisionId":{"Fn::GetAtt":["FunctionRevision22F51A9C","RevisionId"]},"weight":100}]}}}}},"PerRegion":{"id":"PerRegion","path":"WebFunctionEndpointsStack/Function/PerRegion","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunctionEndpoint","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionEndpointsStack/Function/PerRegion/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionEndpoint","aws:cdk:cloudformation:logicalId":"FunctionPerRegion025706AB","aws:cdk:cloudformation:props":{"authType":"IamAuth","endpointName":"WebFunctionEndpointsStackFunctionPerRegion97EC7827-011e961f","endpointType":"PerRegion","functionName":{"Fn::GetAtt":["Function042596DC","FunctionArn"]},"regions":["us-east-1"],"revisionWeights":[{"revisionId":{"Fn::GetAtt":["FunctionRevision22F51A9C","RevisionId"]},"weight":100}]}}}}},"ResourcePolicy":{"id":"ResourcePolicy","path":"WebFunctionEndpointsStack/Function/ResourcePolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnResourcePolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::ResourcePolicy","aws:cdk:cloudformation:logicalId":"FunctionResourcePolicy7171D69F","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":"lambda:InvokeWebFunctionEndpoint","Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["SignerServiceRole18A0DCD3","Arn"]}},"Resource":{"Fn::GetAtt":["FunctionEndpoint85BE574A","EndpointArn"]},"Sid":"0"}],"Version":"2012-10-17"},"resourceArn":{"Fn::GetAtt":["Function042596DC","FunctionArn"]}}}}}},"AWSCDKWebFunctionAssetBucket":{"id":"AWSCDKWebFunctionAssetBucket","path":"WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:logicalId":"AWSCDKWebFunctionAssetBucket5B596593","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:logicalId":"AWSCDKWebFunctionAssetBucketPolicy406CF5E7","aws:cdk:cloudformation:props":{"bucket":{"Ref":"AWSCDKWebFunctionAssetBucket5B596593"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/*"]]}]},{"Action":["s3:GetObject","s3:GetObjectVersion"],"Condition":{"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}},"ArnLike":{"aws:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":lambda:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":web-function/*/revision/*"]]}}},"Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/web-function/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionEndpointsStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"WebFunctionEndpointsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"WebFunctionEndpointsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionEndpointsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionEndpointsStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312":{"id":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","path":"WebFunctionEndpointsStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312":{"id":"Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","path":"WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["s3:GetObject","s3:GetObjectVersion"],"Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":s3:::",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/*"]]}},{"Action":["s3:Abort*","s3:DeleteObject*","s3:PutObject","s3:PutObjectLegalHold","s3:PutObjectRetention","s3:PutObjectTagging","s3:PutObjectVersionTagging"],"Effect":"Allow","Resource":{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/web-function/*"]]}}],"Version":"2012-10-17"},"policyName":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207","roles":[{"Ref":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"}]}}}}}}},"Code":{"id":"Code","path":"WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085","aws:cdk:cloudformation:props":{"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip"},"handler":"index.handler","loggingConfig":{"logGroup":{"Ref":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C"}},"role":{"Fn::GetAtt":["CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE","Arn"]},"runtime":"nodejs24.x","timeout":900}}}}},"Signer":{"id":"Signer","path":"WebFunctionEndpointsStack/Signer","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionEndpointsStack/Signer/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/Signer/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"SignerServiceRole18A0DCD3","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}}}},"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/Signer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:logicalId":"Signer046C0E68","aws:cdk:cloudformation:props":{"code":{"zipFile":"\nconst crypto = require('crypto');\nconst https = require('https');\nconst hash = (data) => crypto.createHash('sha256').update(data).digest('hex');\nconst hmac = (key, data) => crypto.createHmac('sha256', key).update(data).digest();\nexports.handler = async ({ url }) => {\n  const { hostname, pathname } = new URL(url);\n  const region = process.env.AWS_REGION;\n  const service = 'lambda';\n  const amzDate = new Date().toISOString().replace(/[:-]|\\.\\d{3}/g, '');\n  const date = amzDate.slice(0, 8);\n  const payloadHash = hash('');\n  const headers = {\n    'host': hostname,\n    'x-amz-content-sha256': payloadHash,\n    'x-amz-date': amzDate,\n    'x-amz-security-token': process.env.AWS_SESSION_TOKEN,\n  };\n  const names = Object.keys(headers).sort();\n  const canonical = ['GET', pathname || '/', '', ...names.map((n) => n + ':' + headers[n]), '', names.join(';'), payloadHash].join('\\n');\n  const scope = date + '/' + region + '/' + service + '/aws4_request';\n  const toSign = ['AWS4-HMAC-SHA256', amzDate, scope, hash(canonical)].join('\\n');\n  let key = hmac('AWS4' + process.env.AWS_SECRET_ACCESS_KEY, date);\n  for (const part of [region, service, 'aws4_request']) { key = hmac(key, part); }\n  const signature = crypto.createHmac('sha256', key).update(toSign).digest('hex');\n  headers.authorization = 'AWS4-HMAC-SHA256 Credential=' + process.env.AWS_ACCESS_KEY_ID + '/' + scope +\n    ', SignedHeaders=' + names.join(';') + ', Signature=' + signature;\n  const status = await new Promise((resolve, reject) => {\n    https.get({ hostname, path: pathname || '/', headers }, (res) => { res.resume(); resolve(res.statusCode); })\n      .on('error', reject);\n  });\n  return { status };\n};\n"},"handler":"index.handler","role":{"Fn::GetAtt":["SignerServiceRole18A0DCD3","Arn"]},"runtime":"nodejs22.x","timeout":30}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionEndpointsStack/Signer/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionEndpointsStack/Signer/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"SignerLogGroup0DE99B5E","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"Signer046C0E68"}]]},"retentionInDays":731}}}}}}},"Exports":{"id":"Exports","path":"WebFunctionEndpointsStack/Exports","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Output{\"Ref\":\"Signer046C0E68\"}":{"id":"Output{\"Ref\":\"Signer046C0E68\"}","path":"WebFunctionEndpointsStack/Exports/Output{\"Ref\":\"Signer046C0E68\"}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Fn::GetAtt\":[\"FunctionEndpoint85BE574A\",\"DomainName\"]}":{"id":"Output{\"Fn::GetAtt\":[\"FunctionEndpoint85BE574A\",\"DomainName\"]}","path":"WebFunctionEndpointsStack/Exports/Output{\"Fn::GetAtt\":[\"FunctionEndpoint85BE574A\",\"DomainName\"]}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Fn::GetAtt\":[\"FunctionMultiRegion7EEB9354\",\"DomainName\"]}":{"id":"Output{\"Fn::GetAtt\":[\"FunctionMultiRegion7EEB9354\",\"DomainName\"]}","path":"WebFunctionEndpointsStack/Exports/Output{\"Fn::GetAtt\":[\"FunctionMultiRegion7EEB9354\",\"DomainName\"]}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Fn::GetAtt\":[\"FunctionPerRegion025706AB\",\"DomainName\"]}":{"id":"Output{\"Fn::GetAtt\":[\"FunctionPerRegion025706AB\",\"DomainName\"]}","path":"WebFunctionEndpointsStack/Exports/Output{\"Fn::GetAtt\":[\"FunctionPerRegion025706AB\",\"DomainName\"]}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionEndpointsStack/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionEndpointsStack/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"WebFunctionEndpointsTest":{"id":"WebFunctionEndpointsTest","path":"WebFunctionEndpointsTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"WebFunctionEndpointsTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionEndpointsTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}},"DeployAssert":{"id":"DeployAssert","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18":{"id":"LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.LambdaInvokeFunction","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"Invoke":{"id":"Invoke","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/Invoke","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"AssertionResults":{"id":"AssertionResults","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/LambdaInvoke49ffbfd3972dfb55dec5376309e4fc18/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"SingletonFunction1488541a7b23466481b69b4408076b81":{"id":"SingletonFunction1488541a7b23466481b69b4408076b81","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Staging":{"id":"Staging","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"HttpApiCall20b4594c5720cee4a43f5b376b00efe5":{"id":"HttpApiCall20b4594c5720cee4a43f5b376b00efe5","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall20b4594c5720cee4a43f5b376b00efe5","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.HttpApiCall","version":"0.0.0"},"children":{"HttpProvider":{"id":"HttpProvider","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall20b4594c5720cee4a43f5b376b00efe5/HttpProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall20b4594c5720cee4a43f5b376b00efe5/HttpProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall20b4594c5720cee4a43f5b376b00efe5/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall20b4594c5720cee4a43f5b376b00efe5/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall20b4594c5720cee4a43f5b376b00efe5/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f":{"id":"HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.HttpApiCall","version":"0.0.0"},"children":{"HttpProvider":{"id":"HttpProvider","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f/HttpProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f/HttpProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/HttpApiCall8ee5a7c2d2acd13e26c90a5d8475c92f/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionEndpointsTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}}}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/validation-report.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/validation-report.json
new file mode 100644
index 0000000000000..6e40fa68c963a
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.js.snapshot/validation-report.json
@@ -0,0 +1,5 @@
+{
+  "version": "55.0.0",
+  "title": "Validation Report",
+  "pluginReports": []
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.ts
new file mode 100644
index 0000000000000..667851e557e13
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-endpoints.ts
@@ -0,0 +1,103 @@
+import * as path from 'path';
+import * as iam from 'aws-cdk-lib/aws-iam';
+import * as lambda from 'aws-cdk-lib/aws-lambda';
+import * as cdk from 'aws-cdk-lib/core';
+import * as integ from '@aws-cdk/integ-tests-alpha';
+import {
+  WebFunction,
+  WebFunctionAuthType,
+  WebFunctionCode,
+  WebFunctionEndpointLocation,
+  WebFunctionRuntime,
+} from 'aws-cdk-lib/aws-lambda';
+
+/**
+ * Deploys the endpoint features that only the service can accept or reject:
+ *
+ * - an `IAM_AUTH` endpoint reached by a caller whose only permission is the statement
+ *   `grants.invoke()` adds to the function's resource policy. A helper Lambda signs a request
+ *   with SigV4, including `X-Amz-Content-SHA256`, and must get a 200;
+ * - a `MULTI_REGION` and a `PER_REGION` endpoint added with `addEndpoint()`, which must be
+ *   created and reject an unsigned request with 403.
+ */
+const app = new cdk.App({ analyticsReporting: false });
+const stack = new cdk.Stack(app, 'WebFunctionEndpointsStack');
+
+const webFunction = new WebFunction(stack, 'Function', {
+  code: WebFunctionCode.fromAssetToManagedBucket(path.join(__dirname, 'webfunction-ok-handler')),
+  runtime: WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+});
+
+const multiRegion = webFunction.addEndpoint('MultiRegion', {
+  authType: WebFunctionAuthType.IAM_AUTH,
+  endpointLocation: WebFunctionEndpointLocation.multiRegion(['us-east-1']),
+});
+const perRegion = webFunction.addEndpoint('PerRegion', {
+  authType: WebFunctionAuthType.IAM_AUTH,
+  endpointLocation: WebFunctionEndpointLocation.perRegion(['us-east-1']),
+});
+
+// Signs a GET to the given URL with SigV4 for the `lambda` service in its own Region, using
+// the function's credentials, and returns the response status.
+const signer = new lambda.Function(stack, 'Signer', {
+  runtime: lambda.Runtime.NODEJS_22_X,
+  handler: 'index.handler',
+  timeout: cdk.Duration.seconds(30),
+  code: lambda.Code.fromInline(`
+const crypto = require('crypto');
+const https = require('https');
+const hash = (data) => crypto.createHash('sha256').update(data).digest('hex');
+const hmac = (key, data) => crypto.createHmac('sha256', key).update(data).digest();
+exports.handler = async ({ url }) => {
+  const { hostname, pathname } = new URL(url);
+  const region = process.env.AWS_REGION;
+  const service = 'lambda';
+  const amzDate = new Date().toISOString().replace(/[:-]|\\.\\d{3}/g, '');
+  const date = amzDate.slice(0, 8);
+  const payloadHash = hash('');
+  const headers = {
+    'host': hostname,
+    'x-amz-content-sha256': payloadHash,
+    'x-amz-date': amzDate,
+    'x-amz-security-token': process.env.AWS_SESSION_TOKEN,
+  };
+  const names = Object.keys(headers).sort();
+  const canonical = ['GET', pathname || '/', '', ...names.map((n) => n + ':' + headers[n]), '', names.join(';'), payloadHash].join('\\n');
+  const scope = date + '/' + region + '/' + service + '/aws4_request';
+  const toSign = ['AWS4-HMAC-SHA256', amzDate, scope, hash(canonical)].join('\\n');
+  let key = hmac('AWS4' + process.env.AWS_SECRET_ACCESS_KEY, date);
+  for (const part of [region, service, 'aws4_request']) { key = hmac(key, part); }
+  const signature = crypto.createHmac('sha256', key).update(toSign).digest('hex');
+  headers.authorization = 'AWS4-HMAC-SHA256 Credential=' + process.env.AWS_ACCESS_KEY_ID + '/' + scope +
+    ', SignedHeaders=' + names.join(';') + ', Signature=' + signature;
+  const status = await new Promise((resolve, reject) => {
+    https.get({ hostname, path: pathname || '/', headers }, (res) => { res.resume(); resolve(res.statusCode); })
+      .on('error', reject);
+  });
+  return { status };
+};
+`),
+});
+
+// An ArnPrincipal has no policy CDK can add to, so the grant lands in the function's
+// resource policy: the signer's own role has no permission on the endpoint.
+webFunction.endpoint.grants.invoke(new iam.ArnPrincipal(signer.role!.roleArn));
+
+const testCase = new integ.IntegTest(app, 'WebFunctionEndpointsTest', {
+  testCases: [stack],
+  diffAssets: false,
+});
+
+testCase.assertions
+  .invokeFunction({
+    functionName: signer.functionName,
+    payload: JSON.stringify({ url: `https://${webFunction.endpoint.domainName}/` }),
+  })
+  .expect(integ.ExpectedResult.objectLike({ Payload: '{"status":200}' }));
+
+for (const endpoint of [multiRegion, perRegion]) {
+  testCase.assertions
+    .httpApiCall(`https://${endpoint.domainName}/`)
+    .expect(integ.ExpectedResult.objectLike({ status: 403 }));
+}
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalStack.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalStack.assets.json
new file mode 100644
index 0000000000000..cb1ff82905369
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalStack.assets.json
@@ -0,0 +1,76 @@
+{
+  "version": "55.0.0",
+  "files": {
+    "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61": {
+      "displayName": "WebFunctionMinimalStack/Custom::S3AutoDeleteObjectsCustomResourceProvider Code",
+      "source": {
+        "path": "asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-094cbf39": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec": {
+      "displayName": "DeployCode/AwsCliLayer/Code",
+      "source": {
+        "path": "asset.98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip",
+        "packaging": "file"
+      },
+      "destinations": {
+        "current_account-current_region-b4dd16f5": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0": {
+      "displayName": "Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code",
+      "source": {
+        "path": "asset.35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-8e526f6a": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0": {
+      "displayName": "DeployCode/Asset1",
+      "source": {
+        "path": "asset.3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-0a89c7eb": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "b3d0bc1545a9e3cb3437e4258d7c6e41c943b419cae1ead0e4b59fe483a807bd": {
+      "displayName": "WebFunctionMinimalStack Template",
+      "source": {
+        "path": "WebFunctionMinimalStack.template.json",
+        "packaging": "file"
+      },
+      "destinations": {
+        "current_account-current_region-2649e8f6": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "b3d0bc1545a9e3cb3437e4258d7c6e41c943b419cae1ead0e4b59fe483a807bd.json",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    }
+  },
+  "dockerImages": {}
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalStack.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalStack.metadata.json
new file mode 100644
index 0000000000000..2a7a1578b5409
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalStack.metadata.json
@@ -0,0 +1,423 @@
+{
+  "/WebFunctionMinimalStack": [
+    {
+      "type": "aws:cdk:templateFile",
+      "data": "WebFunctionMinimalStack.template.json"
+    }
+  ],
+  "/WebFunctionMinimalStack/CodeBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "versioned": true,
+        "removalPolicy": "destroy",
+        "autoDeleteObjects": true
+      }
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::S3AutoDeleteObjectsCustomResourceProvider": [
+    {
+      "type": "aws:cdk:is-custom-resource-handler-customResourceProvider",
+      "data": true
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "architecture": "*",
+        "layers": [
+          "*"
+        ],
+        "environment": "*",
+        "timeout": "*",
+        "role": "*",
+        "memorySize": "*",
+        "ephemeralStorageSize": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "filesystem": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addEnvironment": [
+          "*",
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addLayers": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-singleton",
+      "data": true
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-runtime-family",
+      "data": 2
+    }
+  ],
+  "/WebFunctionMinimalStack/MinimalBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionMinimalStack/BootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "BootstrapVersion"
+    }
+  ],
+  "/WebFunctionMinimalStack/CheckBootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CheckBootstrapVersion"
+    }
+  ],
+  "/WebFunctionMinimalStack/CodeBucket/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CodeBucketFF4C7AD6"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
+      }
+    }
+  ],
+  "/WebFunctionMinimalStack/CodeBucket/Policy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "bucket": "*"
+      }
+    }
+  ],
+  "/WebFunctionMinimalStack/CodeBucket/AutoDeleteObjectsCustomResource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092"
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F"
+    }
+  ],
+  "/WebFunctionMinimalStack/DeployCode/AwsCliLayer": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {}
+    }
+  ],
+  "/WebFunctionMinimalStack/DeployCode/CustomResourceHandler": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "uuid": "*",
+        "architecture": "*",
+        "layers": [
+          "*"
+        ],
+        "environment": "*",
+        "lambdaPurpose": "*",
+        "timeout": "*",
+        "role": "*",
+        "memorySize": "*",
+        "ephemeralStorageSize": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "filesystem": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          true
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          "*"
+        ]
+      }
+    }
+  ],
+  "/WebFunctionMinimalStack/DeployCode/CustomResource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536"
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/LogGroup": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "logGroupName": "*"
+      }
+    }
+  ],
+  "/WebFunctionMinimalStack/MinimalBucket/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    }
+  ],
+  "/WebFunctionMinimalStack/MinimalBucket/LogGroup": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionMinimalStack/MinimalBucket/Function": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "MinimalBucketFunction70777F34"
+    }
+  ],
+  "/WebFunctionMinimalStack/MinimalBucket/Revision": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "MinimalBucketRevision0400274F"
+    }
+  ],
+  "/WebFunctionMinimalStack/MinimalBucket/Endpoint": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionMinimalStack/Exports/Output{\"Fn::GetAtt\":[\"MinimalBucketEndpoint910239E5\",\"DomainName\"]}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputFnGetAttMinimalBucketEndpoint910239E5DomainName9EFF7663"
+    }
+  ],
+  "/WebFunctionMinimalStack/CodeBucket/Policy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CodeBucketPolicy637E7C14"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
+      }
+    }
+  ],
+  "/WebFunctionMinimalStack/CodeBucket/AutoDeleteObjectsCustomResource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CodeBucketAutoDeleteObjectsCustomResourceA4EDF0CF"
+    }
+  ],
+  "/WebFunctionMinimalStack/DeployCode/AwsCliLayer/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "DeployCodeAwsCliLayerB38BC350"
+    }
+  ],
+  "/WebFunctionMinimalStack/DeployCode/Asset1/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionMinimalStack/DeployCode/CustomResource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "DeployCodeCustomResource46A14DA0"
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265"
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/DefaultPolicy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/LogGroup/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CLogGroup817B64E9"
+    }
+  ],
+  "/WebFunctionMinimalStack/MinimalBucket/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "MinimalBucketServiceRoleA9DCB6ED"
+    }
+  ],
+  "/WebFunctionMinimalStack/MinimalBucket/LogGroup/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "MinimalBucketLogGroup04559959"
+    }
+  ],
+  "/WebFunctionMinimalStack/MinimalBucket/Endpoint/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "MinimalBucketEndpoint910239E5"
+    }
+  ],
+  "/WebFunctionMinimalStack/DeployCode/AwsCliLayer/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/DefaultPolicy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalStack.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalStack.template.json
new file mode 100644
index 0000000000000..7e38af0cab0cb
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalStack.template.json
@@ -0,0 +1,651 @@
+{
+ "Resources": {
+  "CodeBucketFF4C7AD6": {
+   "Type": "AWS::S3::Bucket",
+   "Properties": {
+    "Tags": [
+     {
+      "Key": "aws-cdk:auto-delete-objects",
+      "Value": "true"
+     },
+     {
+      "Key": "aws-cdk:cr-owned:10e7eda2",
+      "Value": "true"
+     }
+    ],
+    "VersioningConfiguration": {
+     "Status": "Enabled"
+    }
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "CodeBucketPolicy637E7C14": {
+   "Type": "AWS::S3::BucketPolicy",
+   "Properties": {
+    "Bucket": {
+     "Ref": "CodeBucketFF4C7AD6"
+    },
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": [
+        "s3:DeleteObject*",
+        "s3:GetBucket*",
+        "s3:List*",
+        "s3:PutBucketPolicy"
+       ],
+       "Effect": "Allow",
+       "Principal": {
+        "AWS": {
+         "Fn::GetAtt": [
+          "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+          "Arn"
+         ]
+        }
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "CodeBucketFF4C7AD6",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "CodeBucketFF4C7AD6",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:GetObject",
+        "s3:GetObjectVersion"
+       ],
+       "Condition": {
+        "StringEquals": {
+         "aws:SourceAccount": {
+          "Ref": "AWS::AccountId"
+         }
+        },
+        "ArnLike": {
+         "aws:SourceArn": {
+          "Fn::Join": [
+           "",
+           [
+            "arn:",
+            {
+             "Ref": "AWS::Partition"
+            },
+            ":lambda:",
+            {
+             "Ref": "AWS::Region"
+            },
+            ":",
+            {
+             "Ref": "AWS::AccountId"
+            },
+            ":web-function/WebFunctionMinimackMinimalBucket31833657/revision/*"
+           ]
+          ]
+         }
+        }
+       },
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       },
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "CodeBucketFF4C7AD6",
+            "Arn"
+           ]
+          },
+          "/",
+          {
+           "Fn::Select": [
+            0,
+            {
+             "Fn::GetAtt": [
+              "DeployCodeCustomResource46A14DA0",
+              "SourceObjectKeys"
+             ]
+            }
+           ]
+          }
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    }
+   }
+  },
+  "CodeBucketAutoDeleteObjectsCustomResourceA4EDF0CF": {
+   "Type": "Custom::S3AutoDeleteObjects",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F",
+      "Arn"
+     ]
+    },
+    "BucketName": {
+     "Ref": "CodeBucketFF4C7AD6"
+    }
+   },
+   "DependsOn": [
+    "CodeBucketPolicy637E7C14"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Version": "2012-10-17",
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ]
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+     }
+    ]
+   }
+  },
+  "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip"
+    },
+    "Timeout": 900,
+    "MemorySize": 128,
+    "Handler": "index.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs24.x",
+    "Description": {
+     "Fn::Join": [
+      "",
+      [
+       "Lambda function for auto-deleting objects in ",
+       {
+        "Ref": "CodeBucketFF4C7AD6"
+       },
+       " S3 bucket."
+      ]
+     ]
+    }
+   },
+   "DependsOn": [
+    "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092"
+   ]
+  },
+  "DeployCodeAwsCliLayerB38BC350": {
+   "Type": "AWS::Lambda::LayerVersion",
+   "Properties": {
+    "Content": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip"
+    },
+    "Description": "/opt/awscli/aws"
+   }
+  },
+  "DeployCodeCustomResource46A14DA0": {
+   "Type": "Custom::CDKBucketDeployment",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536",
+      "Arn"
+     ]
+    },
+    "SourceBucketNames": [
+     {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     }
+    ],
+    "SourceObjectKeys": [
+     "3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0.zip"
+    ],
+    "DestinationBucketName": {
+     "Ref": "CodeBucketFF4C7AD6"
+    },
+    "WaitForDistributionInvalidation": true,
+    "Extract": false,
+    "Prune": true,
+    "OutputObjectKeys": true,
+    "OutputObjectVersionIds": true
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   }
+  },
+  "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF": {
+   "Type": "AWS::IAM::Policy",
+   "Properties": {
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": [
+        "s3:GetBucket*",
+        "s3:GetObject*",
+        "s3:List*"
+       ],
+       "Effect": "Allow",
+       "Resource": [
+        {
+         "Fn::Join": [
+          "",
+          [
+           "arn:",
+           {
+            "Ref": "AWS::Partition"
+           },
+           ":s3:::",
+           {
+            "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+           },
+           "/*"
+          ]
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           "arn:",
+           {
+            "Ref": "AWS::Partition"
+           },
+           ":s3:::",
+           {
+            "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+           }
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:Abort*",
+        "s3:DeleteObject*",
+        "s3:GetBucket*",
+        "s3:GetObject*",
+        "s3:List*",
+        "s3:PutObject",
+        "s3:PutObjectLegalHold",
+        "s3:PutObjectRetention",
+        "s3:PutObjectTagging",
+        "s3:PutObjectVersionTagging"
+       ],
+       "Effect": "Allow",
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "CodeBucketFF4C7AD6",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "CodeBucketFF4C7AD6",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "PolicyName": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF",
+    "Roles": [
+     {
+      "Ref": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265"
+     }
+    ]
+   }
+  },
+  "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Architectures": [
+     "arm64"
+    ],
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0.zip"
+    },
+    "Environment": {
+     "Variables": {
+      "AWS_CA_BUNDLE": "/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"
+     }
+    },
+    "Handler": "index.handler",
+    "Layers": [
+     {
+      "Ref": "DeployCodeAwsCliLayerB38BC350"
+     }
+    ],
+    "MemorySize": 1024,
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265",
+      "Arn"
+     ]
+    },
+    "Runtime": "python3.13",
+    "Timeout": 900
+   },
+   "DependsOn": [
+    "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF",
+    "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265"
+   ]
+  },
+  "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CLogGroup817B64E9": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "LogGroupName": {
+     "Fn::Join": [
+      "",
+      [
+       "/aws/lambda/",
+       {
+        "Ref": "CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536"
+       }
+      ]
+     ]
+    },
+    "RetentionInDays": 731
+   },
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "MinimalBucketServiceRoleA9DCB6ED": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ],
+    "Tags": [
+     {
+      "Key": "App",
+      "Value": "integ-test"
+     }
+    ]
+   },
+   "DependsOn": [
+    "CodeBucketPolicy637E7C14"
+   ]
+  },
+  "MinimalBucketLogGroup04559959": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731,
+    "Tags": [
+     {
+      "Key": "App",
+      "Value": "integ-test"
+     }
+    ]
+   },
+   "DependsOn": [
+    "CodeBucketPolicy637E7C14"
+   ],
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "MinimalBucketFunction70777F34": {
+   "Type": "AWS::Lambda::WebFunction",
+   "Properties": {
+    "FunctionName": "WebFunctionMinimackMinimalBucket31833657",
+    "Tags": [
+     {
+      "Key": "App",
+      "Value": "integ-test"
+     }
+    ]
+   },
+   "DependsOn": [
+    "CodeBucketPolicy637E7C14"
+   ]
+  },
+  "MinimalBucketRevision0400274F": {
+   "Type": "AWS::Lambda::WebFunctionRevision",
+   "Properties": {
+    "BuildConfig": {
+     "CodeConfig": {
+      "S3Object": {
+       "Bucket": {
+        "Ref": "CodeBucketFF4C7AD6"
+       },
+       "Key": {
+        "Fn::Select": [
+         0,
+         {
+          "Fn::GetAtt": [
+           "DeployCodeCustomResource46A14DA0",
+           "SourceObjectKeys"
+          ]
+         }
+        ]
+       },
+       "VersionId": {
+        "Fn::Select": [
+         0,
+         {
+          "Fn::GetAtt": [
+           "DeployCodeCustomResource46A14DA0",
+           "SourceObjectVersionIds"
+          ]
+         }
+        ]
+       }
+      }
+     },
+     "RuntimeConfig": {
+      "Runtime": "nodejs24.x"
+     }
+    },
+    "FunctionName": {
+     "Ref": "MinimalBucketFunction70777F34"
+    },
+    "ServiceConfig": {
+     "ExecutionRoleArn": {
+      "Fn::GetAtt": [
+       "MinimalBucketServiceRoleA9DCB6ED",
+       "Arn"
+      ]
+     },
+     "TelemetryConfig": {
+      "LoggingConfig": {
+       "LogGroup": {
+        "Ref": "MinimalBucketLogGroup04559959"
+       }
+      }
+     },
+     "TimeoutSeconds": 30
+    }
+   },
+   "DependsOn": [
+    "CodeBucketPolicy637E7C14",
+    "MinimalBucketFunction70777F34"
+   ]
+  },
+  "MinimalBucketEndpoint910239E5": {
+   "Type": "AWS::Lambda::WebFunctionEndpoint",
+   "Properties": {
+    "AuthType": "IamAuth",
+    "EndpointName": "prod",
+    "EndpointType": "HomeRegion",
+    "FunctionName": {
+     "Fn::GetAtt": [
+      "MinimalBucketFunction70777F34",
+      "FunctionArn"
+     ]
+    },
+    "RevisionWeights": [
+     {
+      "RevisionId": {
+       "Fn::GetAtt": [
+        "MinimalBucketRevision0400274F",
+        "RevisionId"
+       ]
+      },
+      "Weight": 100
+     }
+    ]
+   },
+   "DependsOn": [
+    "CodeBucketPolicy637E7C14",
+    "MinimalBucketFunction70777F34",
+    "MinimalBucketRevision0400274F"
+   ]
+  }
+ },
+ "Outputs": {
+  "ExportsOutputFnGetAttMinimalBucketEndpoint910239E5DomainName9EFF7663": {
+   "Value": {
+    "Fn::GetAtt": [
+     "MinimalBucketEndpoint910239E5",
+     "DomainName"
+    ]
+   },
+   "Export": {
+    "Name": "WebFunctionMinimalStack:ExportsOutputFnGetAttMinimalBucketEndpoint910239E5DomainName9EFF7663"
+   }
+  }
+ },
+ "Parameters": {
+  "BootstrapVersion": {
+   "Type": "AWS::SSM::Parameter::Value",
+   "Default": "/cdk-bootstrap/hnb659fds/version",
+   "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
+  }
+ },
+ "Rules": {
+  "CheckBootstrapVersion": {
+   "Assertions": [
+    {
+     "Assert": {
+      "Fn::Not": [
+       {
+        "Fn::Contains": [
+         [
+          "1",
+          "2",
+          "3",
+          "4",
+          "5"
+         ],
+         {
+          "Ref": "BootstrapVersion"
+         }
+        ]
+       }
+      ]
+     },
+     "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
+    }
+   ]
+  }
+ }
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.assets.json
new file mode 100644
index 0000000000000..be9603cdc7796
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.assets.json
@@ -0,0 +1,33 @@
+{
+  "version": "55.0.0",
+  "files": {
+    "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57": {
+      "source": {
+        "path": "asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-d3646850": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "f84de0662392fabbf75adb53c4ee05b4b92d58c814beae1dc3a45ba3c0633e8a": {
+      "displayName": "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8 Template",
+      "source": {
+        "path": "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.template.json",
+        "packaging": "file"
+      },
+      "destinations": {
+        "current_account-current_region-e80cab13": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "f84de0662392fabbf75adb53c4ee05b4b92d58c814beae1dc3a45ba3c0633e8a.json",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    }
+  },
+  "dockerImages": {}
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.metadata.json
new file mode 100644
index 0000000000000..b34be8ffb466a
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.metadata.json
@@ -0,0 +1,76 @@
+{
+  "/WebFunctionMinimalTest/DefaultTest/DeployAssert": [
+    {
+      "type": "aws:cdk:warning",
+      "data": "No cross-stack-reference strength configured, defaulting to \"strong\". We recommend you set feature flag \"@aws-cdk/core:defaultCrossStackReferences\" to \"both\", then deploy everywhere, then set it to \"weak\". Alternatively, set it to \"strong\" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength) [ack: @aws-cdk/core:crossStackReferencesDefaultStrong]",
+      "trace": [
+        "Annotations.addMessage (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:244:29)",
+        "Annotations.addWarningV2 (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:113:18)",
+        "resolveValue (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:215:54)",
+        "resolveReferencesInElements (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:139:30)",
+        "resolveReferences (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:124:5)",
+        "prepareApp (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/prepare-app.js:35:36)",
+        "synthesize (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/synthesis.js:72:36)",
+        "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/stage.js:230:96)",
+        "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:231:27)",
+        "process. (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:178:51)",
+        "Object.onceWrapper (node:events:634:26)",
+        "process.emit (node:events:519:28)"
+      ]
+    },
+    {
+      "type": "aws:cdk:templateFile",
+      "data": "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.template.json"
+    }
+  ],
+  "/WebFunctionMinimalTest/DefaultTest/DeployAssert/BootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "BootstrapVersion"
+    }
+  ],
+  "/WebFunctionMinimalTest/DefaultTest/DeployAssert/CheckBootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CheckBootstrapVersion"
+    }
+  ],
+  "/WebFunctionMinimalTest/DefaultTest/DeployAssert/HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e/Default": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionMinimalTest/DefaultTest/DeployAssert/HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e/AssertionResults": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AssertionResultsHttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e"
+    }
+  ],
+  "/WebFunctionMinimalTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73"
+    }
+  ],
+  "/WebFunctionMinimalTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F"
+    }
+  ],
+  "/WebFunctionMinimalTest/DefaultTest/DeployAssert/HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e/Default/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.template.json
new file mode 100644
index 0000000000000..fa7e4ee26c27b
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.template.json
@@ -0,0 +1,124 @@
+{
+ "Resources": {
+  "HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e": {
+   "Type": "Custom::DeployAssert@HttpCall",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F",
+      "Arn"
+     ]
+    },
+    "parameters": {
+     "url": {
+      "Fn::Join": [
+       "",
+       [
+        "https://",
+        {
+         "Fn::ImportValue": "WebFunctionMinimalStack:ExportsOutputFnGetAttMinimalBucketEndpoint910239E5DomainName9EFF7663"
+        },
+        "/"
+       ]
+      ]
+     }
+    },
+    "expected": "{\"$ObjectLike\":{\"status\":403}}",
+    "flattenResponse": "false",
+    "salt": "1793224566570"
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Version": "2012-10-17",
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ]
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+     }
+    ]
+   }
+  },
+  "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Runtime": "nodejs24.x",
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip"
+    },
+    "Timeout": 120,
+    "Handler": "index.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73",
+      "Arn"
+     ]
+    },
+    "LoggingConfig": {
+     "LogFormat": "JSON",
+     "ApplicationLogLevel": "FATAL"
+    }
+   }
+  }
+ },
+ "Outputs": {
+  "AssertionResultsHttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e": {
+   "Value": {
+    "Fn::GetAtt": [
+     "HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e",
+     "assertion"
+    ]
+   }
+  }
+ },
+ "Parameters": {
+  "BootstrapVersion": {
+   "Type": "AWS::SSM::Parameter::Value",
+   "Default": "/cdk-bootstrap/hnb659fds/version",
+   "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
+  }
+ },
+ "Rules": {
+  "CheckBootstrapVersion": {
+   "Assertions": [
+    {
+     "Assert": {
+      "Fn::Not": [
+       {
+        "Fn::Contains": [
+         [
+          "1",
+          "2",
+          "3",
+          "4",
+          "5"
+         ],
+         {
+          "Ref": "BootstrapVersion"
+         }
+        ]
+       }
+      ]
+     },
+     "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
+    }
+   ]
+  }
+ }
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0/index.js
new file mode 100644
index 0000000000000..089e0b243c16b
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.3437dc7d3d65e4b56b80ec84ded8af0f79779de4328120cca5195282b97295b0/index.js
@@ -0,0 +1,7 @@
+// A WebFunction runs this file as a long-lived server process: it must listen on PORT.
+const http = require('http');
+
+http.createServer((req, res) => {
+  res.writeHead(200, { 'Content-Type': 'application/json' });
+  res.end(JSON.stringify({ status: 'ok' }));
+}).listen(process.env.PORT || 3000);
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0/index.py b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0/index.py
new file mode 100644
index 0000000000000..2c67e1f71116e
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0/index.py
@@ -0,0 +1,453 @@
+import contextlib
+import json
+import logging
+import os
+import shutil
+import subprocess
+import tempfile
+import urllib.parse
+from urllib.request import Request, urlopen
+from uuid import uuid4
+from zipfile import ZipFile
+
+import boto3
+from botocore.config import Config
+from botocore.exceptions import ClientError, WaiterError
+
+logger = logging.getLogger()
+logger.setLevel(logging.INFO)
+
+cloudfront = boto3.client('cloudfront', config=Config(
+    retries = {
+        'max_attempts': 10,
+        'mode': 'standard',
+    }
+))
+s3 = boto3.client('s3')
+
+CFN_SUCCESS = "SUCCESS"
+CFN_FAILED = "FAILED"
+ENV_KEY_MOUNT_PATH = "MOUNT_PATH"
+ENV_KEY_SKIP_CLEANUP = "SKIP_CLEANUP"
+
+AWS_CLI_CONFIG_FILE = "/tmp/aws_cli_config"
+CUSTOM_RESOURCE_OWNER_TAG = "aws-cdk:cr-owned"
+
+os.putenv('AWS_CONFIG_FILE', AWS_CLI_CONFIG_FILE)
+
+def handler(event, context):
+
+    def cfn_error(message=None):
+        if message:
+            logger.error("| cfn_error: %s" % sanitize_message(message))
+        cfn_send(event, context, CFN_FAILED, reason=message, physicalResourceId=event.get('PhysicalResourceId', None))
+
+
+    try:
+        # We are not logging ResponseURL as this is a pre-signed S3 URL, and could be used to tamper
+        # with the response CloudFormation sees from this Custom Resource execution.
+        logger.info(sanitize_message({ key:value for (key, value) in event.items() if key != 'ResponseURL'}))
+
+        # cloudformation request type (create/update/delete)
+        request_type = event['RequestType']
+
+        # extract resource properties
+        props = event['ResourceProperties']
+        old_props = event.get('OldResourceProperties', {})
+        physical_id = event.get('PhysicalResourceId', None)
+
+        try:
+            source_bucket_names = props['SourceBucketNames']
+            source_object_keys  = props['SourceObjectKeys']
+            source_markers      = props.get('SourceMarkers', None)
+            source_markers_config = props.get('SourceMarkersConfig', None)
+            dest_bucket_name    = props['DestinationBucketName']
+            dest_bucket_prefix  = props.get('DestinationBucketKeyPrefix', '')
+            extract             = props.get('Extract', 'true') == 'true'
+            retain_on_delete    = props.get('RetainOnDelete', "true") == "true"
+            distribution_id     = props.get('DistributionId', '')
+            wait_for_distribution_invalidation = props.get('WaitForDistributionInvalidation', True)
+            user_metadata       = props.get('UserMetadata', {})
+            system_metadata     = props.get('SystemMetadata', {})
+            prune               = props.get('Prune', 'true').lower() == 'true'
+            exclude             = props.get('Exclude', [])
+            include             = props.get('Include', [])
+            sign_content        = props.get('SignContent', 'false').lower() == 'true'
+            output_object_keys  = props.get('OutputObjectKeys', 'true') == 'true'
+            output_object_version_ids = props.get('OutputObjectVersionIds', 'false') == 'true'
+
+            # backwards compatibility - if "SourceMarkers" is not specified,
+            # assume all sources have an empty market map
+            if source_markers is None:
+                source_markers = [{} for i in range(len(source_bucket_names))]
+            if source_markers_config is None:
+                source_markers_config = [{} for i in range(len(source_bucket_names))]
+
+            default_distribution_path = dest_bucket_prefix
+            if not default_distribution_path.endswith("/"):
+                default_distribution_path += "/"
+            if not default_distribution_path.startswith("/"):
+                default_distribution_path = "/" + default_distribution_path
+            default_distribution_path += "*"
+
+            distribution_paths = props.get('DistributionPaths', [default_distribution_path])
+        except KeyError as e:
+            cfn_error("missing request resource property %s. props: %s" % (str(e), props))
+            return
+
+        # configure aws cli options after resetting back to the defaults for each request
+        if os.path.exists(AWS_CLI_CONFIG_FILE):
+                os.remove(AWS_CLI_CONFIG_FILE)
+        if sign_content:
+                aws_command("configure", "set", "default.s3.payload_signing_enabled", "true")
+
+        # treat "/" as if no prefix was specified
+        if dest_bucket_prefix == "/":
+            dest_bucket_prefix = ""
+
+        s3_source_zips = list(map(lambda name, key: "s3://%s/%s" % (name, key), source_bucket_names, source_object_keys))
+        s3_dest = "s3://%s/%s" % (dest_bucket_name, dest_bucket_prefix)
+        old_s3_dest = "s3://%s/%s" % (old_props.get("DestinationBucketName", ""), old_props.get("DestinationBucketKeyPrefix", ""))
+
+
+        # obviously this is not
+        if old_s3_dest == "s3:///":
+            old_s3_dest = None
+
+        logger.info("| s3_dest: %s" % sanitize_message(s3_dest))
+        logger.info("| old_s3_dest: %s" % sanitize_message(old_s3_dest))
+
+        # if we are creating a new resource, allocate a physical id for it
+        # otherwise, we expect physical id to be relayed by cloudformation
+        if request_type == "Create":
+            physical_id = "aws.cdk.s3deployment.%s" % str(uuid4())
+        else:
+            if not physical_id:
+                cfn_error("invalid request: request type is '%s' but 'PhysicalResourceId' is not defined" % request_type)
+                return
+
+        # delete or create/update (only if "retain_on_delete" is false)
+        if request_type == "Delete" and not retain_on_delete:
+            if not bucket_owned(dest_bucket_name, dest_bucket_prefix):
+                aws_command("s3", "rm", s3_dest, "--recursive")
+
+        # if we are updating without retention and the destination changed, delete first
+        if request_type == "Update" and not retain_on_delete and old_s3_dest != s3_dest:
+            if not old_s3_dest:
+                logger.warn("cannot delete old resource without old resource properties")
+                return
+
+            aws_command("s3", "rm", old_s3_dest, "--recursive")
+
+        if request_type == "Update" or request_type == "Create":
+            s3_deploy(s3_source_zips, s3_dest, user_metadata, system_metadata, prune, exclude, include, source_markers, extract, source_markers_config)
+
+        # after the sync has run, optionally look up the S3 version IDs of the deployed objects.
+        # only performed when the consumer opted in by reading `objectVersionIds` (extract=false).
+        object_version_ids = []
+        if output_object_version_ids and (request_type == "Update" or request_type == "Create"):
+            object_version_ids = get_object_version_ids(dest_bucket_name, dest_bucket_prefix, source_object_keys)
+
+        if distribution_id:
+            cloudfront_invalidate(distribution_id, distribution_paths, wait_for_distribution_invalidation)
+
+        cfn_send(event, context, CFN_SUCCESS, physicalResourceId=physical_id, responseData={
+            # Passing through the ARN sequences dependencees on the deployment
+            'DestinationBucketArn': props.get('DestinationBucketArn'),
+            **({'SourceObjectKeys': props.get('SourceObjectKeys')} if output_object_keys else {'SourceObjectKeys': []}),
+            # When requested, always include the key (even on delete/no-op, where the list is empty)
+            # so Fn::GetAtt on SourceObjectVersionIds never fails. Omitted entirely when not requested.
+            **({'SourceObjectVersionIds': object_version_ids} if output_object_version_ids else {})
+        })
+    except KeyError as e:
+        cfn_error("invalid request. Missing key %s" % str(e))
+    except Exception as e:
+        logger.exception("| unhandled error: %s" % sanitize_message(str(e)))
+        cfn_error(str(e))
+
+#---------------------------------------------------------------------------------------------------
+# Sanitize the message to mitigate CWE-117 and CWE-93 vulnerabilities
+def sanitize_message(message):
+    if not message:
+        return message
+
+    # Convert non-string types to string for sanitization
+    if not isinstance(message, str):
+        message = str(message)
+
+    # Sanitize the message to prevent log injection and HTTP response splitting
+    sanitized_message = message.replace('\n', '').replace('\r', '')
+
+    # Encode the message to handle special characters
+    encoded_message = urllib.parse.quote(sanitized_message)
+
+    return encoded_message
+
+#---------------------------------------------------------------------------------------------------
+# populate all files from s3_source_zips to a destination bucket
+def s3_deploy(s3_source_zips, s3_dest, user_metadata, system_metadata, prune, exclude, include, source_markers, extract, source_markers_config):
+    # list lengths are equal
+    if len(s3_source_zips) != len(source_markers):
+        raise Exception("'source_markers' and 's3_source_zips' must be the same length")
+
+    # create a temporary working directory in /tmp or if enabled an attached efs volume
+    if ENV_KEY_MOUNT_PATH in os.environ:
+        workdir = os.getenv(ENV_KEY_MOUNT_PATH) + "/" + str(uuid4())
+        os.mkdir(workdir)
+    else:
+        workdir = tempfile.mkdtemp()
+
+    logger.info("| workdir: %s" % workdir)
+
+    # create a directory into which we extract the contents of the zip file
+    contents_dir=os.path.join(workdir, 'contents')
+    os.mkdir(contents_dir)
+
+    try:
+        # download the archive from the source and extract to "contents"
+        for i in range(len(s3_source_zips)):
+            s3_source_zip = s3_source_zips[i]
+            markers       = source_markers[i]
+            markers_config = source_markers_config[i]
+
+            if extract:
+                archive=os.path.join(workdir, str(uuid4()))
+                logger.info("archive: %s" % archive)
+                aws_command("s3", "cp", s3_source_zip, archive)
+                logger.info("| extracting archive to: %s\n" % contents_dir)
+                logger.info("| markers: %s" % sanitize_message(markers))
+                extract_and_replace_markers(archive, contents_dir, markers, markers_config)
+            else:
+                logger.info("| copying archive to: %s\n" % contents_dir)
+                aws_command("s3", "cp", s3_source_zip, contents_dir)
+
+        # sync from "contents" to destination
+
+        s3_command = ["s3", "sync"]
+
+        if prune:
+          s3_command.append("--delete")
+
+        if exclude:
+          for filter in exclude:
+            s3_command.extend(["--exclude", filter])
+
+        if include:
+          for filter in include:
+            s3_command.extend(["--include", filter])
+
+        s3_command.extend([contents_dir, s3_dest])
+        s3_command.extend(create_metadata_args(user_metadata, system_metadata))
+        aws_command(*s3_command)
+    finally:
+        if not os.getenv(ENV_KEY_SKIP_CLEANUP):
+            shutil.rmtree(workdir)
+
+#---------------------------------------------------------------------------------------------------
+# look up the S3 version IDs of the deployed objects.
+#
+# for extract=false each source zip is copied through unchanged, so the destination key is
+# "" (aws s3 cp preserves the basename and
+# aws s3 sync mirrors the working directory). the returned list positionally matches
+# source_object_keys. head_object on an unversioned bucket returns no VersionId, in which case
+# an empty string is returned for that entry.
+def get_object_version_ids(dest_bucket_name, dest_bucket_prefix, source_object_keys):
+    # Normalize the prefix the same way `aws s3 sync` does: syncing a directory to
+    # "s3://bucket/" writes objects at "/" even when  has no
+    # trailing slash, so join with a single "/" to match the key that was actually written.
+    prefix = dest_bucket_prefix
+    if prefix and not prefix.endswith("/"):
+        prefix += "/"
+    version_ids = []
+    for key in source_object_keys:
+        dest_key = prefix + os.path.basename(key)
+        try:
+            resp = s3.head_object(Bucket=dest_bucket_name, Key=dest_key)
+            version_ids.append(resp.get('VersionId', ''))
+        except ClientError as e:
+            # The object may legitimately be absent at this point (for example when an
+            # include/exclude filter skipped it during the sync). Return an empty version id for it
+            # rather than failing the whole deployment, and log the key so an unexpected miss is
+            # still diagnosable in CloudWatch.
+            if e.response.get('Error', {}).get('Code') in ('404', 'NoSuchKey', 'NotFound'):
+                logger.info("| no object found at s3://%s/%s; returning empty version id" % (sanitize_message(dest_bucket_name), sanitize_message(dest_key)))
+                version_ids.append('')
+            else:
+                raise
+    return version_ids
+
+#---------------------------------------------------------------------------------------------------
+# invalidate files in the CloudFront distribution edge caches
+def cloudfront_invalidate(distribution_id, distribution_paths, wait_for_invalidation):
+    invalidation_resp = cloudfront.create_invalidation(
+        DistributionId=distribution_id,
+        InvalidationBatch={
+            'Paths': {
+                'Quantity': len(distribution_paths),
+                'Items': distribution_paths
+            },
+            'CallerReference': str(uuid4()),
+        })
+    if wait_for_invalidation:
+        try:
+            # Wait for a maximum of 13 minutes for invalidation to complete.
+            cloudfront.get_waiter('invalidation_completed').wait(
+                DistributionId=distribution_id,
+                Id=invalidation_resp['Invalidation']['Id'],
+                WaiterConfig={
+                    'Delay': 20,
+                    'MaxAttempts': (13*60)//20,
+                }
+            )
+        except WaiterError as e:
+            raise RuntimeError(f"Unable to confirm that cache invalidation was successful. This may be a CloudFront regression as reported in https://github.com/aws/aws-cdk/issues/15891") from e
+
+
+#---------------------------------------------------------------------------------------------------
+# set metadata
+def create_metadata_args(raw_user_metadata, raw_system_metadata):
+    if len(raw_user_metadata) == 0 and len(raw_system_metadata) == 0:
+        return []
+
+    format_system_metadata_key = lambda k: k.lower()
+    format_user_metadata_key = lambda k: k.lower()
+
+    system_metadata = { format_system_metadata_key(k): v for k, v in raw_system_metadata.items() }
+    user_metadata = { format_user_metadata_key(k): v for k, v in raw_user_metadata.items() }
+
+    flatten = lambda l: [item for sublist in l for item in sublist]
+    system_args = flatten([[f"--{k}", v] for k, v in system_metadata.items()])
+    user_args = ["--metadata", json.dumps(user_metadata, separators=(',', ':'))] if len(user_metadata) > 0 else []
+
+    return system_args + user_args + ["--metadata-directive", "REPLACE"]
+
+#---------------------------------------------------------------------------------------------------
+# executes an "aws" cli command
+def aws_command(*args):
+    aws="/opt/awscli/aws" # from AwsCliLayer
+    logger.info("| aws %s" % sanitize_message(' '.join(args)))
+    subprocess.check_call([aws] + list(args))
+
+#---------------------------------------------------------------------------------------------------
+# sends a response to cloudformation
+def cfn_send(event, context, responseStatus, responseData={}, physicalResourceId=None, noEcho=False, reason=None):
+
+    responseUrl = event['ResponseURL']
+
+    responseBody = {}
+    responseBody['Status'] = responseStatus
+    responseBody['Reason'] = reason or ('See the details in CloudWatch Log Stream: ' + context.log_stream_name)
+    responseBody['PhysicalResourceId'] = physicalResourceId or context.log_stream_name
+    responseBody['StackId'] = event['StackId']
+    responseBody['RequestId'] = event['RequestId']
+    responseBody['LogicalResourceId'] = event['LogicalResourceId']
+    responseBody['NoEcho'] = noEcho
+    responseBody['Data'] = responseData
+
+    body = json.dumps(responseBody)
+    logger.info("| response body: " + sanitize_message(body))
+
+    headers = {
+        'content-type' : '',
+        'content-length' : str(len(body))
+    }
+
+    try:
+        request = Request(responseUrl, method='PUT', data=bytes(body.encode('utf-8')), headers=headers)
+        with contextlib.closing(urlopen(request)) as response:
+            logger.info("| status code: " + response.reason)
+    except Exception as e:
+        logger.error("| unable to send response to CloudFormation")
+        logger.exception("| unable to send response: %s" % sanitize_message(str(e)))
+
+
+#---------------------------------------------------------------------------------------------------
+# check if bucket is owned by a custom resource
+# if it is then we don't want to delete content
+def bucket_owned(bucketName, keyPrefix):
+    tag = CUSTOM_RESOURCE_OWNER_TAG
+    if keyPrefix != "":
+        tag = tag + ':' + keyPrefix
+    try:
+        request = s3.get_bucket_tagging(
+            Bucket=bucketName,
+        )
+        return any((x["Key"].startswith(tag)) for x in request["TagSet"])
+    except Exception as e:
+        logger.info("| error getting tags from bucket")
+        logger.exception("| error getting tags: %s" % sanitize_message(str(e)))
+        return False
+
+# extract archive and replace markers in output files
+def extract_and_replace_markers(archive, contents_dir, markers, markers_config):
+    with ZipFile(archive, "r") as zip:
+        zip.extractall(contents_dir)
+
+        # replace markers for this source
+        for file in zip.namelist():
+            file_path = os.path.join(contents_dir, file)
+            if os.path.isdir(file_path): continue
+            replace_markers(file_path, markers, markers_config)
+
+def prepare_json_safe_markers(markers):
+    """Pre-process markers to ensure JSON-safe values"""
+    safe_markers = {}
+    for key, value in markers.items():
+        # Serialize the value as JSON to handle escaping if the value is a string
+        serialized = json.dumps(value)
+        if serialized.startswith('"') and serialized.endswith('"'):
+            json_safe_value = json.dumps(value)[1:-1]  # Remove surrounding quotes
+        else:
+            json_safe_value = serialized
+        safe_markers[key.encode('utf-8')] = json_safe_value.encode('utf-8')
+    return safe_markers
+
+def replace_markers(filename, markers, markers_config):
+    """Replace markers in a file, with special handling for JSON files."""
+    # if there are no markers, skip
+    if not markers:
+        return
+    
+    outfile = filename + '.new'
+    json_escape = markers_config.get('jsonEscape', 'false').lower()
+    if json_escape == 'true':
+        replace_tokens = prepare_json_safe_markers(markers)
+    else:
+        replace_tokens = dict([(k.encode('utf-8'), v.encode('utf-8')) for k, v in markers.items()])
+
+    # Handle content with line-by-line binary replacement
+    with open(filename, 'rb') as fi, open(outfile, 'wb') as fo:
+        # Process line by line to handle large files
+        for line in fi:
+            for token, replacement in replace_tokens.items():
+                line = line.replace(token, replacement)
+            fo.write(line)
+
+    # Delete the original file and rename the new one to the original
+    os.remove(filename)
+    os.rename(outfile, filename)
+
+def replace_markers_in_json(json_object, replace_tokens):
+    """Replace markers in JSON content with proper escaping."""
+    try:
+        def replace_in_structure(obj):
+            if isinstance(obj, str):
+                # Convert string to bytes for consistent replacement
+                result = obj.encode('utf-8')
+                for token, replacement in replace_tokens.items():
+                    result = result.replace(token, replacement)
+                # Convert back to string
+                return result.decode('utf-8')
+            elif isinstance(obj, dict):
+                return {k: replace_in_structure(v) for k, v in obj.items()}
+            elif isinstance(obj, list):
+                return [replace_in_structure(item) for item in obj]
+            return obj
+
+        # Process the whole structure
+        processed = replace_in_structure(json_object)
+        return json.dumps(processed)
+    except Exception as e:
+        logger.error("| error processing JSON: %s" % sanitize_message(str(e)))
+        logger.exception("| error processing JSON: %s" % sanitize_message(str(e)))
+        return json_object
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js
new file mode 100644
index 0000000000000..1002ba018e9fb
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js
@@ -0,0 +1 @@
+"use strict";var f=Object.create;var i=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var A=(t,e)=>{for(var o in e)i(t,o,{get:e[o],enumerable:!0})},d=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of C(e))!P.call(t,s)&&s!==o&&i(t,s,{get:()=>e[s],enumerable:!(r=I(e,s))||r.enumerable});return t};var l=(t,e,o)=>(o=t!=null?f(w(t)):{},d(e||!t||!t.__esModule?i(o,"default",{value:t,enumerable:!0}):o,t)),B=t=>d(i({},"__esModule",{value:!0}),t);var q={};A(q,{autoDeleteHandler:()=>S,handler:()=>H});module.exports=B(q);var h=require("@aws-sdk/client-s3");var y=l(require("https")),m=l(require("url")),a={sendHttpRequest:D,log:T,includeStackTraces:!0,userHandlerIndex:"./index"},p="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",L="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function R(t){return async(e,o)=>{let r={...e,ResponseURL:"..."};if(a.log(JSON.stringify(r,void 0,2)),e.RequestType==="Delete"&&e.PhysicalResourceId===p){a.log("ignoring DELETE event caused by a failed CREATE event"),await u("SUCCESS",e);return}try{let s=await t(r,o),n=k(e,s);await u("SUCCESS",n)}catch(s){let n={...e,Reason:a.includeStackTraces?s.stack:s.message};n.PhysicalResourceId||(e.RequestType==="Create"?(a.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),n.PhysicalResourceId=p):a.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(e)}`)),await u("FAILED",n)}}}function k(t,e={}){let o=e.PhysicalResourceId??t.PhysicalResourceId??t.RequestId;if(t.RequestType==="Delete"&&o!==t.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${t.PhysicalResourceId}" to "${e.PhysicalResourceId}" during deletion`);return{...t,...e,PhysicalResourceId:o}}async function u(t,e){let o={Status:t,Reason:e.Reason??t,StackId:e.StackId,RequestId:e.RequestId,PhysicalResourceId:e.PhysicalResourceId||L,LogicalResourceId:e.LogicalResourceId,NoEcho:e.NoEcho,Data:e.Data},r=m.parse(e.ResponseURL),s=`${r.protocol}//${r.hostname}/${r.pathname}?***`;a.log("submit response to cloudformation",s,o);let n=JSON.stringify(o),E={hostname:r.hostname,path:r.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(n,"utf8")}};await O({attempts:5,sleep:1e3},a.sendHttpRequest)(E,n)}async function D(t,e){return new Promise((o,r)=>{try{let s=y.request(t,n=>{n.resume(),!n.statusCode||n.statusCode>=400?r(new Error(`Unsuccessful HTTP response: ${n.statusCode}`)):o()});s.on("error",r),s.write(e),s.end()}catch(s){r(s)}})}function T(t,...e){console.log(t,...e)}function O(t,e){return async(...o)=>{let r=t.attempts,s=t.sleep;for(;;)try{return await e(...o)}catch(n){if(r--<=0)throw n;await b(Math.floor(Math.random()*s)),s*=2}}}async function b(t){return new Promise(e=>setTimeout(e,t))}var g="aws-cdk:auto-delete-objects",x=JSON.stringify({Version:"2012-10-17",Statement:[]}),c=new h.S3({}),H=R(S);async function S(t){switch(t.RequestType){case"Create":return;case"Update":return{PhysicalResourceId:(await F(t)).PhysicalResourceId};case"Delete":return N(t.ResourceProperties?.BucketName)}}async function F(t){let e=t,o=e.OldResourceProperties?.BucketName;return{PhysicalResourceId:e.ResourceProperties?.BucketName??o}}async function _(t){try{let e=(await c.getBucketPolicy({Bucket:t}))?.Policy??x,o=JSON.parse(e);o.Statement.push({Principal:"*",Effect:"Deny",Action:["s3:PutObject"],Resource:[`arn:aws:s3:::${t}/*`]}),await c.putBucketPolicy({Bucket:t,Policy:JSON.stringify(o)})}catch(e){if(e.name==="NoSuchBucket")throw e;console.log(`Could not set new object deny policy on bucket '${t}' prior to deletion.`)}}async function U(t){let e;do{e=await c.listObjectVersions({Bucket:t});let o=[...e.Versions??[],...e.DeleteMarkers??[]];if(o.length===0)return;let r=o.map(s=>({Key:s.Key,VersionId:s.VersionId}));await c.deleteObjects({Bucket:t,Delete:{Objects:r}})}while(e?.IsTruncated)}async function N(t){if(!t)throw new Error("No BucketName was provided.");try{if(!await W(t)){console.log(`Bucket does not have '${g}' tag, skipping cleaning.`);return}await _(t),await U(t)}catch(e){if(e.name==="NoSuchBucket"){console.log(`Bucket '${t}' does not exist.`);return}throw e}}async function W(t){return(await c.getBucketTagging({Bucket:t})).TagSet?.some(o=>o.Key===g&&o.Value==="true")}0&&(module.exports={autoDeleteHandler,handler});
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js
new file mode 100644
index 0000000000000..44fb7e8727ea5
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js
@@ -0,0 +1,117765 @@
+"use strict";
+var __create = Object.create;
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __getProtoOf = Object.getPrototypeOf;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
+var __typeError = (msg) => {
+  throw TypeError(msg);
+};
+var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
+var __esm = (fn, res, err) => function __init() {
+  if (err) throw err[0];
+  try {
+    return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
+  } catch (e) {
+    throw err = [e], e;
+  }
+};
+var __commonJS = (cb, mod) => function __require() {
+  try {
+    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
+  } catch (e) {
+    throw mod = 0, e;
+  }
+};
+var __export = (target, all) => {
+  for (var name in all)
+    __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+  if (from && typeof from === "object" || typeof from === "function") {
+    for (let key of __getOwnPropNames(from))
+      if (!__hasOwnProp.call(to, key) && key !== except)
+        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+  }
+  return to;
+};
+var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
+var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
+  // If the importer is in node compatibility mode or this is not an ESM
+  // file that has been converted to a CommonJS file using a Babel-
+  // compatible transform (i.e. "__esModule" has not been set), then set
+  // "default" to the CommonJS "module.exports" for node compatibility.
+  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
+  mod
+));
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
+var __decoratorStart = (base) => [, , , __create(base?.[__knownSymbol("metadata")] ?? null)];
+var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
+var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn;
+var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null)) });
+var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]);
+var __runInitializers = (array, flags, self2, value) => {
+  for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self2) : value = fns[i].call(self2, value);
+  return value;
+};
+var __decorateElement = (array, flags, name, decorators, target, extra) => {
+  var fn, it, done, ctx, access, k = flags & 7, s = !!(flags & 8), p = !!(flags & 16);
+  var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0, key = __decoratorStrings[k + 5];
+  var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
+  var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [name]() {
+    return __privateGet(this, extra);
+  }, set [name](x) {
+    return __privateSet(this, extra, x);
+  } }, name));
+  k ? p && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name(target, name);
+  for (var i = decorators.length - 1; i >= 0; i--) {
+    ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
+    if (k) {
+      ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) => name in x };
+      if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];
+      if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y;
+    }
+    it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;
+    if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it);
+    else if (typeof it !== "object" || it === null) __typeError("Object expected");
+    else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);
+  }
+  return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;
+};
+var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
+var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
+var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the "in" operator on this value') : member.has(obj);
+var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
+var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
+var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
+var __using = (stack, value, async) => {
+  if (value != null) {
+    if (typeof value !== "object" && typeof value !== "function") __typeError("Object expected");
+    var dispose, inner;
+    if (async) dispose = value[__knownSymbol("asyncDispose")];
+    if (dispose === void 0) {
+      dispose = value[__knownSymbol("dispose")];
+      if (async) inner = dispose;
+    }
+    if (typeof dispose !== "function") __typeError("Object not disposable");
+    if (inner) dispose = function() {
+      try {
+        inner.call(this);
+      } catch (e) {
+        return Promise.reject(e);
+      }
+    };
+    stack.push([async, dispose, value]);
+  } else if (async) {
+    stack.push([async]);
+  }
+  return value;
+};
+var __callDispose = (stack, error, hasError) => {
+  var E = typeof SuppressedError === "function" ? SuppressedError : function(e, s, m, _) {
+    return _ = Error(m), _.name = "SuppressedError", _.error = e, _.suppressed = s, _;
+  };
+  var fail = (e) => error = hasError ? new E(e, error, "An error was suppressed during disposal") : (hasError = true, e);
+  var next = (it) => {
+    while (it = stack.pop()) {
+      try {
+        var result = it[1] && it[1].call(it[2]);
+        if (it[0]) return Promise.resolve(result).then(next, (e) => (fail(e), next()));
+      } catch (e) {
+        fail(e);
+      }
+    }
+    if (hasError) throw error;
+  };
+  return next();
+};
+
+// ../../aws-cdk-lib/assertions/lib/matcher.ts
+var matcher_exports = {};
+__export(matcher_exports, {
+  MatchResult: () => MatchResult,
+  Matcher: () => Matcher
+});
+function* range(n) {
+  for (let i = 0; i < n; i++) {
+    yield i;
+  }
+}
+function* enumFirst(xs) {
+  let first = true;
+  for (const x of xs) {
+    yield [first, x];
+    first = false;
+  }
+}
+var Matcher, MatchResult;
+var init_matcher = __esm({
+  "../../aws-cdk-lib/assertions/lib/matcher.ts"() {
+    "use strict";
+    Matcher = class _Matcher {
+      /**
+       * Check whether the provided object is a subtype of the `IMatcher`.
+       */
+      static isMatcher(x) {
+        return x && x instanceof _Matcher;
+      }
+    };
+    MatchResult = class {
+      /**
+       * The target for which this result was generated.
+       */
+      target;
+      failuresHere = /* @__PURE__ */ new Map();
+      captures = /* @__PURE__ */ new Map();
+      finalized = false;
+      innerMatchFailures = /* @__PURE__ */ new Map();
+      _hasFailed = false;
+      _failCount = 0;
+      _cost = 0;
+      constructor(target) {
+        this.target = target;
+      }
+      /**
+       * DEPRECATED
+       * @deprecated use recordFailure()
+       */
+      push(matcher, path23, message) {
+        return this.recordFailure({ matcher, path: path23, message });
+      }
+      /**
+       * Record a new failure into this result at a specific path.
+       */
+      recordFailure(failure) {
+        const failKey = failure.path.join(".");
+        let list = this.failuresHere.get(failKey);
+        if (!list) {
+          list = [];
+          this.failuresHere.set(failKey, list);
+        }
+        this._failCount += 1;
+        this._cost += failure.cost ?? 1;
+        list.push(failure);
+        this._hasFailed = true;
+        return this;
+      }
+      /** Whether the match is a success */
+      get isSuccess() {
+        return !this._hasFailed;
+      }
+      /** Does the result contain any failures. If not, the result is a success */
+      hasFailed() {
+        return this._hasFailed;
+      }
+      /** The number of failures */
+      get failCount() {
+        return this._failCount;
+      }
+      /** The cost of the failures so far */
+      get failCost() {
+        return this._cost;
+      }
+      /**
+       * Compose the results of a previous match as a subtree.
+       * @param id the id of the parent tree.
+       */
+      compose(id, inner) {
+        if (inner.hasFailed()) {
+          this._hasFailed = true;
+          this._failCount += inner.failCount;
+          this._cost += inner._cost;
+          this.innerMatchFailures.set(id, inner);
+        }
+        inner.captures.forEach((vals, capture) => {
+          vals.forEach((value) => this.recordCapture({ capture, value }));
+        });
+        return this;
+      }
+      /**
+       * Prepare the result to be analyzed.
+       * This API *must* be called prior to analyzing these results.
+       */
+      finished() {
+        if (this.finalized) {
+          return this;
+        }
+        if (this.failCount === 0) {
+          this.captures.forEach((vals, cap) => cap._captured.push(...vals));
+        }
+        this.finalized = true;
+        return this;
+      }
+      /**
+       * Render the failed match in a presentable way
+       *
+       * Prefer using `renderMismatch` over this method. It is left for backwards
+       * compatibility for test suites that expect it, but `renderMismatch()` will
+       * produce better output.
+       */
+      toHumanStrings() {
+        const failures = new Array();
+        recurse(this, []);
+        return failures.map((r) => {
+          const loc = r.path.length === 0 ? "" : ` at /${r.path.join("/")}`;
+          return "" + r.message + loc + ` (using ${r.matcher.name} matcher)`;
+        });
+        function recurse(x, prefix) {
+          for (const fail of Array.from(x.failuresHere.values()).flat()) {
+            failures.push({
+              matcher: fail.matcher,
+              message: fail.message,
+              path: [...prefix, ...fail.path]
+            });
+          }
+          for (const [key, inner] of x.innerMatchFailures.entries()) {
+            recurse(inner, [...prefix, key]);
+          }
+        }
+      }
+      /**
+       * Do a deep render of the match result, showing the structure mismatches in context
+       */
+      renderMismatch() {
+        if (!this.hasFailed()) {
+          return "";
+        }
+        const parts = new Array();
+        const indents = new Array();
+        emitFailures(this, "");
+        recurse(this);
+        return moveMarkersToFront(parts.join("").trimEnd());
+        function emit(x) {
+          if (x === void 0) {
+            debugger;
+          }
+          parts.push(x.replace(/\n/g, `
+${indents.join("")}`));
+        }
+        function emitFailures(r, path23, scrapSet) {
+          for (const fail of r.failuresHere.get(path23) ?? []) {
+            emit(`!! ${fail.message}
+`);
+          }
+          scrapSet?.delete(path23);
+        }
+        function recurse(r) {
+          const remainingFailures = new Set(Array.from(r.failuresHere.keys()).filter((x) => x !== ""));
+          if (Array.isArray(r.target)) {
+            indents.push("  ");
+            emit("[\n");
+            for (const [first, i] of enumFirst(range(r.target.length))) {
+              if (!first) {
+                emit(",\n");
+              }
+              emitFailures(r, `${i}`, remainingFailures);
+              const innerMatcher = r.innerMatchFailures.get(`${i}`);
+              if (innerMatcher) {
+                emitFailures(innerMatcher, "");
+                recurseComparingValues(innerMatcher, r.target[i]);
+              } else {
+                emit(renderAbridged(r.target[i]));
+              }
+            }
+            emitRemaining();
+            indents.pop();
+            emit("\n]");
+            return;
+          }
+          if (r.target && typeof r.target === "object") {
+            indents.push("  ");
+            emit("{\n");
+            const keys = Array.from(/* @__PURE__ */ new Set([
+              ...Object.keys(r.target),
+              ...Array.from(remainingFailures)
+            ])).sort();
+            for (const [first, key] of enumFirst(keys)) {
+              if (!first) {
+                emit(",\n");
+              }
+              emitFailures(r, key, remainingFailures);
+              const innerMatcher = r.innerMatchFailures.get(key);
+              if (innerMatcher) {
+                emitFailures(innerMatcher, "");
+                emit(`${jsonify(key)}: `);
+                recurseComparingValues(innerMatcher, r.target[key]);
+              } else {
+                emit(`${jsonify(key)}: `);
+                emit(renderAbridged(r.target[key]));
+              }
+            }
+            emitRemaining();
+            indents.pop();
+            emit("\n}");
+            return;
+          }
+          emitRemaining();
+          emit(jsonify(r.target));
+          function emitRemaining() {
+            if (remainingFailures.size > 0) {
+              emit("\n");
+            }
+            for (const key of remainingFailures) {
+              emitFailures(r, key);
+            }
+          }
+        }
+        function recurseComparingValues(inner, actualValue) {
+          if (inner.target === actualValue) {
+            return recurse(inner);
+          }
+          emit(renderAbridged(actualValue));
+          emit(" <*> ");
+          recurse(inner);
+        }
+        function renderAbridged(x) {
+          if (Array.isArray(x)) {
+            switch (x.length) {
+              case 0:
+                return "[]";
+              case 1:
+                return `[ ${renderAbridged(x[0])} ]`;
+              case 2:
+                if (x.every((e) => ["number", "boolean", "string"].includes(typeof e))) {
+                  return `[ ${x.map(renderAbridged).join(", ")} ]`;
+                }
+                return "[ ... ]";
+              default:
+                return "[ ... ]";
+            }
+          }
+          if (x && typeof x === "object") {
+            const keys = Object.keys(x);
+            switch (keys.length) {
+              case 0:
+                return "{}";
+              case 1:
+                return `{ ${JSON.stringify(keys[0])}: ${renderAbridged(x[keys[0]])} }`;
+              default:
+                return "{ ... }";
+            }
+          }
+          return jsonify(x);
+        }
+        function jsonify(x) {
+          return JSON.stringify(x) ?? "undefined";
+        }
+        function moveMarkersToFront(x) {
+          const re = /^(\s+)!!/gm;
+          return x.replace(re, (_, spaces) => `!!${spaces.substring(0, spaces.length - 2)}`);
+        }
+      }
+      /**
+       * Record a capture against in this match result.
+       */
+      recordCapture(options) {
+        let values = this.captures.get(options.capture);
+        if (values === void 0) {
+          values = [];
+        }
+        values.push(options.value);
+        this.captures.set(options.capture, values);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/error.ts
+var ASSERTION_ERROR_SYMBOL, AssertionError;
+var init_error = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/error.ts"() {
+    "use strict";
+    ASSERTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/assertions.AssertionError");
+    AssertionError = class _AssertionError extends Error {
+      #time;
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return this.#time;
+      }
+      get type() {
+        return "assertion";
+      }
+      constructor(msg) {
+        super(msg);
+        Object.setPrototypeOf(this, _AssertionError.prototype);
+        Object.defineProperty(this, ASSERTION_ERROR_SYMBOL, { value: true });
+        this.name = new.target.name;
+        this.#time = (/* @__PURE__ */ new Date()).toISOString();
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts
+var AbsentMatch;
+var init_absent = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts"() {
+    "use strict";
+    init_matcher();
+    AbsentMatch = class extends Matcher {
+      constructor(name) {
+        super();
+        this.name = name;
+      }
+      name;
+      test(actual) {
+        const result = new MatchResult(actual);
+        if (actual !== void 0) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Received ${actual}, but key should be absent`
+          });
+        }
+        return result;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/sorting.ts
+function sortKeyComparator(keyFn) {
+  return (a, b) => {
+    const ak = keyFn(a);
+    const bk = keyFn(b);
+    for (let i = 0; i < ak.length && i < bk.length; i++) {
+      const av = ak[i];
+      const bv = bk[i];
+      let diff = 0;
+      if (typeof av === "number" && typeof bv === "number") {
+        diff = av - bv;
+      } else if (typeof av === "string" && typeof bv === "string") {
+        diff = av.localeCompare(bv);
+      }
+      if (diff !== 0) {
+        return diff;
+      }
+    }
+    return bk.length - ak.length;
+  };
+}
+var init_sorting = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/sorting.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts
+var SparseMatrix;
+var init_sparse_matrix = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts"() {
+    "use strict";
+    SparseMatrix = class {
+      matrix = /* @__PURE__ */ new Map();
+      get(row, col) {
+        return this.matrix.get(row)?.get(col);
+      }
+      row(row) {
+        return Array.from(this.matrix.get(row)?.entries() ?? []);
+      }
+      set(row, col, value) {
+        let r = this.matrix.get(row);
+        if (!r) {
+          r = /* @__PURE__ */ new Map();
+          this.matrix.set(row, r);
+        }
+        r.set(col, value);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/type.ts
+function getType(obj) {
+  return Array.isArray(obj) ? "array" : typeof obj;
+}
+var init_type = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/type.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/match.ts
+var match_exports = {};
+__export(match_exports, {
+  Match: () => Match
+});
+var Match, LiteralMatch, ArrayMatch, ObjectMatch, SerializedJson, NotMatch, AnyMatch, StringLikeRegexpMatch;
+var init_match = __esm({
+  "../../aws-cdk-lib/assertions/lib/match.ts"() {
+    "use strict";
+    init_matcher();
+    init_error();
+    init_absent();
+    init_sorting();
+    init_sparse_matrix();
+    init_type();
+    Match = class {
+      /**
+       * Use this matcher in the place of a field's value, if the field must not be present.
+       */
+      static absent() {
+        return new AbsentMatch("absent");
+      }
+      /**
+       * Matches the specified pattern with the array found in the same relative path of the target.
+       * The set of elements (or matchers) must be in the same order as would be found.
+       * @param pattern the pattern to match
+       */
+      static arrayWith(pattern) {
+        return new ArrayMatch("arrayWith", pattern);
+      }
+      /**
+       * Matches the specified pattern with the array found in the same relative path of the target.
+       * The set of elements (or matchers) must match exactly and in order.
+       * @param pattern the pattern to match
+       */
+      static arrayEquals(pattern) {
+        return new ArrayMatch("arrayEquals", pattern, { subsequence: false });
+      }
+      /**
+       * Deep exact matching of the specified pattern to the target.
+       * @param pattern the pattern to match
+       */
+      static exact(pattern) {
+        return new LiteralMatch("exact", pattern, { partialObjects: false });
+      }
+      /**
+       * Matches the specified pattern to an object found in the same relative path of the target.
+       * The keys and their values (or matchers) must be present in the target but the target can be a superset.
+       * @param pattern the pattern to match
+       */
+      static objectLike(pattern) {
+        return new ObjectMatch("objectLike", pattern);
+      }
+      /**
+       * Matches the specified pattern to an object found in the same relative path of the target.
+       * The keys and their values (or matchers) must match exactly with the target.
+       * @param pattern the pattern to match
+       */
+      static objectEquals(pattern) {
+        return new ObjectMatch("objectEquals", pattern, { partial: false });
+      }
+      /**
+       * Matches any target which does NOT follow the specified pattern.
+       * @param pattern the pattern to NOT match
+       */
+      static not(pattern) {
+        return new NotMatch("not", pattern);
+      }
+      /**
+       * Matches any string-encoded JSON and applies the specified pattern after parsing it.
+       * @param pattern the pattern to match after parsing the encoded JSON.
+       */
+      static serializedJson(pattern) {
+        return new SerializedJson("serializedJson", pattern);
+      }
+      /**
+       * Matches any non-null value at the target.
+       */
+      static anyValue() {
+        return new AnyMatch("anyValue");
+      }
+      /**
+       * Matches targets according to a regular expression
+       */
+      static stringLikeRegexp(pattern) {
+        return new StringLikeRegexpMatch("stringLikeRegexp", pattern);
+      }
+    };
+    LiteralMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.partialObjects = options.partialObjects ?? false;
+        if (Matcher.isMatcher(this.pattern)) {
+          throw new AssertionError("LiteralMatch cannot directly contain another matcher. Remove the top-level matcher or nest it more deeply.");
+        }
+      }
+      name;
+      pattern;
+      partialObjects;
+      test(actual) {
+        if (Array.isArray(this.pattern)) {
+          return new ArrayMatch(this.name, this.pattern, { subsequence: false, partialObjects: this.partialObjects }).test(actual);
+        }
+        if (typeof this.pattern === "object") {
+          return new ObjectMatch(this.name, this.pattern, { partial: this.partialObjects }).test(actual);
+        }
+        const result = new MatchResult(actual);
+        if (typeof this.pattern !== typeof actual) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type ${typeof this.pattern} but received ${getType(actual)}`
+          });
+          return result;
+        }
+        if (actual !== this.pattern) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected ${this.pattern} but received ${actual}`
+          });
+        }
+        return result;
+      }
+    };
+    ArrayMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.subsequence = options.subsequence ?? true;
+        this.partialObjects = options.partialObjects ?? false;
+      }
+      name;
+      pattern;
+      subsequence;
+      partialObjects;
+      test(actual) {
+        if (!Array.isArray(actual)) {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type array but received ${getType(actual)}`
+          });
+        }
+        return this.subsequence ? this.testSubsequence(actual) : this.testFullArray(actual);
+      }
+      testFullArray(actual) {
+        const result = new MatchResult(actual);
+        let i = 0;
+        for (; i < this.pattern.length && i < actual.length; i++) {
+          const patternElement = this.pattern[i];
+          const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects });
+          const innerResult = matcher.test(actual[i]);
+          result.compose(`${i}`, innerResult);
+        }
+        if (i < this.pattern.length) {
+          result.recordFailure({
+            matcher: this,
+            message: `Not enough elements in array (expecting ${this.pattern.length}, got ${actual.length})`,
+            path: [`${i}`]
+          });
+        }
+        if (i < actual.length) {
+          result.recordFailure({
+            matcher: this,
+            message: `Too many elements in array (expecting ${this.pattern.length}, got ${actual.length})`,
+            path: [`${i}`]
+          });
+        }
+        return result;
+      }
+      testSubsequence(actual) {
+        const result = new MatchResult(actual);
+        let patternIdx = 0;
+        let actualIdx = 0;
+        const matches = new SparseMatrix();
+        while (patternIdx < this.pattern.length && actualIdx < actual.length) {
+          const patternElement = this.pattern[patternIdx];
+          const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects });
+          const matcherName = matcher.name;
+          if (matcherName == "absent" || matcherName == "anyValue") {
+            throw new AssertionError(`The Matcher ${matcherName}() cannot be nested within arrayWith()`);
+          }
+          const innerResult = matcher.test(actual[actualIdx]);
+          matches.set(patternIdx, actualIdx, innerResult);
+          actualIdx++;
+          if (innerResult.isSuccess) {
+            result.compose(`${actualIdx}`, innerResult);
+            patternIdx++;
+          }
+        }
+        if (patternIdx < this.pattern.length) {
+          for (let spi = 0; spi < patternIdx; spi++) {
+            const foundMatch = matches.row(spi).find(([, r]) => r.isSuccess);
+            if (!foundMatch) {
+              continue;
+            }
+            const [index] = foundMatch;
+            result.compose(`${index}`, new MatchResult(actual[index]).recordFailure({
+              matcher: this,
+              message: `arrayWith pattern ${spi} matched here`,
+              path: [],
+              cost: 0
+              // This is an informational message so it would be unfair to assign it cost
+            }));
+          }
+          const failedMatches = matches.row(patternIdx);
+          failedMatches.sort(sortKeyComparator(([i, r]) => [r.failCost, i]));
+          if (failedMatches.length > 0) {
+            const [index, innerResult] = failedMatches[0];
+            result.recordFailure({
+              matcher: this,
+              message: `Could not match arrayWith pattern ${patternIdx}. This is the closest match`,
+              path: [`${index}`],
+              cost: 0
+              //  Informational message
+            });
+            result.compose(`${index}`, innerResult);
+          } else {
+            result.recordFailure({
+              matcher: this,
+              message: `Could not match arrayWith pattern ${patternIdx}. No more elements to try`,
+              path: [`${actual.length}`]
+            });
+          }
+        }
+        return result;
+      }
+    };
+    ObjectMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.partial = options.partial ?? true;
+      }
+      name;
+      pattern;
+      partial;
+      test(actual) {
+        if (typeof actual !== "object" || Array.isArray(actual)) {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type object but received ${getType(actual)}`
+          });
+        }
+        const result = new MatchResult(actual);
+        if (!this.partial) {
+          for (const a of Object.keys(actual)) {
+            if (!(a in this.pattern)) {
+              result.recordFailure({
+                matcher: this,
+                path: [a],
+                message: `Unexpected key ${a}`
+              });
+            }
+          }
+        }
+        for (const [patternKey, patternVal] of Object.entries(this.pattern)) {
+          if (!(patternKey in actual) && !(patternVal instanceof AbsentMatch)) {
+            result.recordFailure({
+              matcher: this,
+              path: [patternKey],
+              message: `Missing key '${patternKey}'`
+            });
+            continue;
+          }
+          const matcher = Matcher.isMatcher(patternVal) ? patternVal : new LiteralMatch(this.name, patternVal, { partialObjects: this.partial });
+          const inner = matcher.test(actual[patternKey]);
+          result.compose(patternKey, inner);
+        }
+        return result;
+      }
+    };
+    SerializedJson = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        if (getType(actual) !== "string") {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected JSON as a string but found ${getType(actual)}`
+          });
+        }
+        let parsed;
+        try {
+          parsed = JSON.parse(actual);
+        } catch (err) {
+          if (err instanceof SyntaxError) {
+            return new MatchResult(actual).recordFailure({
+              matcher: this,
+              path: [],
+              message: `Invalid JSON string: ${actual}`
+            });
+          } else {
+            throw err;
+          }
+        }
+        const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern);
+        const innerResult = matcher.test(parsed);
+        if (innerResult.hasFailed()) {
+          innerResult.recordFailure({
+            matcher: this,
+            path: [],
+            message: "Encoded JSON value does not match"
+          });
+        }
+        return innerResult;
+      }
+    };
+    NotMatch = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern);
+        const innerResult = matcher.test(actual);
+        const result = new MatchResult(actual);
+        if (innerResult.failCount === 0) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Found unexpected match: ${JSON.stringify(actual, void 0, 2)}`
+          });
+        }
+        return result;
+      }
+    };
+    AnyMatch = class extends Matcher {
+      constructor(name) {
+        super();
+        this.name = name;
+      }
+      name;
+      test(actual) {
+        const result = new MatchResult(actual);
+        if (actual == null) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: "Expected a value but found none"
+          });
+        }
+        return result;
+      }
+    };
+    StringLikeRegexpMatch = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        const result = new MatchResult(actual);
+        const regex = new RegExp(this.pattern, "gm");
+        if (typeof actual !== "string") {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected a string, but got '${typeof actual}'`
+          });
+        }
+        if (!regex.test(actual)) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `String '${actual}' did not match pattern '${this.pattern}'`
+          });
+        }
+        return result;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/literal-string.ts
+function lit(x) {
+  if (x.length !== 1) {
+    throw new AssumptionError("NotLiteral", `String literal may not contain any variables, got \`${x.join("${...}")}\``);
+  }
+  return x[0];
+}
+var init_literal_string = __esm({
+  "../../aws-cdk-lib/core/lib/private/literal-string.ts"() {
+    "use strict";
+    init_errors();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/runtime-info.ts
+function constructInfoFromConstruct(construct) {
+  const jsiiRuntimeInfo = Object.getPrototypeOf(construct).constructor[JSII_RUNTIME_SYMBOL];
+  if (typeof jsiiRuntimeInfo === "object" && jsiiRuntimeInfo !== null && typeof jsiiRuntimeInfo.fqn === "string" && typeof jsiiRuntimeInfo.version === "string") {
+    return {
+      fqn: jsiiRuntimeInfo.fqn,
+      version: jsiiRuntimeInfo.version
+    };
+  } else if (jsiiRuntimeInfo) {
+    throw new AssumptionError(lit`MalformedJsiiRuntimeInfo`, `malformed jsii runtime info for construct: '${construct.node.path}'`);
+  }
+  return void 0;
+}
+var JSII_RUNTIME_SYMBOL;
+var init_runtime_info = __esm({
+  "../../aws-cdk-lib/core/lib/private/runtime-info.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    JSII_RUNTIME_SYMBOL = /* @__PURE__ */ Symbol.for("jsii.rtti");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/stack-trace.ts
+function captureStackTrace(below = captureStackTrace, limit = void 0) {
+  if (!limit) {
+    return enhancedStackTrace(below, false);
+  }
+  const previousLimit = Error.stackTraceLimit;
+  try {
+    Error.stackTraceLimit = limit;
+    return enhancedStackTrace(below, false);
+  } finally {
+    Error.stackTraceLimit = previousLimit;
+  }
+}
+function enhancedStackTrace(upTo, indent = true) {
+  return withExternalTrace(renderCallStackJustMyCode(captureCallStack(upTo), indent));
+}
+function withExternalTrace(internal) {
+  const hostTrace = global[/* @__PURE__ */ Symbol.for("jsii.context.hostStackTrace")];
+  if (hostTrace != null) {
+    return internal.concat(hostTrace.slice(1).map(formatExternalFrame));
+  }
+  return internal;
+}
+function captureCallStack(upTo) {
+  const obj = {};
+  Error.captureStackTrace(obj, upTo);
+  let trace = parseErrorStack(obj.stack);
+  if (trace.length === 0) {
+    Error.captureStackTrace(obj);
+    trace = parseErrorStack(obj.stack);
+  }
+  return trace;
+}
+function formatExternalFrame(trace) {
+  const [filename, line, column, name] = trace;
+  return `${name} (${filename}:${line}${column > 0 ? ":" + column : ""})`;
+}
+function parseErrorStack(stack) {
+  const lines = stack.split("\n");
+  const framePrefix = "    at ";
+  return lines.filter((line) => line.startsWith(framePrefix)).map((line) => {
+    line = line.slice(framePrefix.length);
+    const frame = parseStackFrame(line);
+    if (frame.functionName === "Object.") {
+      frame.functionName = "";
+    }
+    return frame;
+  });
+}
+function parseStackFrame(frame) {
+  let fileName;
+  let functionName;
+  let sourceLocation;
+  const paren = frame.indexOf("(");
+  if (paren) {
+    functionName = frame.slice(0, paren - 1);
+    frame = frame.slice(paren + 1, -1);
+  } else {
+    functionName = "";
+  }
+  let asI = functionName.indexOf(" [as ");
+  if (asI > -1) {
+    const endOfAlias = functionName.indexOf("]", asI);
+    const lastPeriod = functionName.lastIndexOf(".", asI);
+    functionName = functionName.slice(0, lastPeriod + 1) + functionName.slice(asI + 5, endOfAlias);
+  }
+  const m = frame.match(/(:[0-9]+){0,2}$/);
+  fileName = m ? frame.slice(0, -m[0].length) : frame;
+  sourceLocation = m ? m[0].slice(1) : "";
+  return {
+    fileName,
+    functionName,
+    sourceLocation
+  };
+}
+function renderCallStackJustMyCode(stack, indent = true) {
+  const lines = [];
+  let skipped = new Array();
+  let sawMyCode = false;
+  let i = 0;
+  while (i < stack.length) {
+    const frame = stack[i++];
+    if (frame.fileName.match(DECORATOR_RE)) {
+      continue;
+    }
+    const pat = frame.fileName.match(MODULE_RE);
+    if (pat) {
+      while (i < stack.length && stack[i].fileName.includes(pat[0])) {
+        i++;
+      }
+      skip({ functionName: stack[i - 1].functionName, fileName: pat[3] });
+    } else if (frame.fileName.includes("node:")) {
+      skip({ fileName: "node internals" });
+      while (i < stack.length && stack[i].fileName.includes("node:")) {
+        i++;
+      }
+    } else if (isHostInternalFrame(frame)) {
+      skip({ fileName: "jsii runtime" });
+      while (i < stack.length && isHostInternalFrame(stack[i])) {
+        i++;
+      }
+    } else {
+      reportSkipped(true);
+      const prefix = indent ? "    at " : "";
+      lines.push(`${prefix}${frame.functionName} (${frame.fileName}:${frame.sourceLocation})`);
+      sawMyCode = true;
+    }
+  }
+  reportSkipped(false);
+  if (!sawMyCode) {
+    lines.push(`${indent ? "    " : ""}(no user code in ${Error.stackTraceLimit} frames, use --stack-trace-limit to capture more)`);
+  }
+  return lines;
+  function skip(what) {
+    if (!skipped.find((x) => x.fileName === what.fileName && x.functionName === what.functionName)) {
+      skipped.push(what);
+    }
+  }
+  function reportSkipped(includeFunction) {
+    if (skipped.length > 0) {
+      const rendered = skipped.map((s, j) => (
+        // Only render the function name of the last frame before user code
+        j === skipped.length - 1 && s.functionName && includeFunction ? `${s.functionName} in ${s.fileName}` : s.fileName
+      ));
+      const prefix = indent ? "    " : "";
+      lines.push(`${prefix}...${rendered.join(", ")}...`);
+    }
+    skipped = [];
+  }
+}
+function topUserFrame(stackTrace, frameFinder) {
+  for (const frame of stackTrace) {
+    if (frameFinder.isUserCodeFrame(frame)) {
+      return parseStackFrame(frame);
+    }
+  }
+  return void 0;
+}
+function isHostInternalFrame(frame) {
+  const hostDirName = global[/* @__PURE__ */ Symbol.for("jsii.context.hostDirName")];
+  return frame.fileName.includes(hostDirName);
+}
+var MODULE_RE, DECORATOR_RE, DEFAULT_STACK_FRAME_FINDER;
+var init_stack_trace = __esm({
+  "../../aws-cdk-lib/core/lib/private/stack-trace.ts"() {
+    "use strict";
+    MODULE_RE = /(\/|\\)node_modules(\/|\\)(@[^/\\]+[/\\][^/\\]+|[^@][^/\\]*)/;
+    DECORATOR_RE = /(\/|\\)(prop-injectable|no-box-stack-traces)\./;
+    DEFAULT_STACK_FRAME_FINDER = {
+      isUserCodeFrame(frame) {
+        return frame.includes(" (") && frame.endsWith(")");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js
+var require_vpc = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.VpcSubnetGroupType = void 0;
+    var VpcSubnetGroupType;
+    (function(VpcSubnetGroupType2) {
+      VpcSubnetGroupType2["PUBLIC"] = "Public";
+      VpcSubnetGroupType2["PRIVATE"] = "Private";
+      VpcSubnetGroupType2["ISOLATED"] = "Isolated";
+    })(VpcSubnetGroupType || (exports2.VpcSubnetGroupType = VpcSubnetGroupType = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js
+var require_ami = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js
+var require_load_balancer = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.LoadBalancerIpAddressType = void 0;
+    var LoadBalancerIpAddressType;
+    (function(LoadBalancerIpAddressType2) {
+      LoadBalancerIpAddressType2["IPV4"] = "ipv4";
+      LoadBalancerIpAddressType2["DUAL_STACK"] = "dualstack";
+      LoadBalancerIpAddressType2["DUAL_STACK_WITHOUT_PUBLIC_IPV4"] = "dualstack-without-public-ipv4";
+    })(LoadBalancerIpAddressType || (exports2.LoadBalancerIpAddressType = LoadBalancerIpAddressType = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js
+var require_availability_zones = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = void 0;
+    exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = "aws:cdk:availability-zones:fallback";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js
+var require_endpoint_service_availability_zones = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = void 0;
+    exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = "endpoint-service-availability-zones";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js
+var require_security_group = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js
+var require_key = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js
+var require_generic = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.PROVIDER_ERROR_KEY = void 0;
+    exports2.PROVIDER_ERROR_KEY = "$providerError";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js
+var require_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ArtifactType = void 0;
+    var ArtifactType5;
+    (function(ArtifactType6) {
+      ArtifactType6["NONE"] = "none";
+      ArtifactType6["AWS_CLOUDFORMATION_STACK"] = "aws:cloudformation:stack";
+      ArtifactType6["CDK_TREE"] = "cdk:tree";
+      ArtifactType6["ASSET_MANIFEST"] = "cdk:asset-manifest";
+      ArtifactType6["NESTED_CLOUD_ASSEMBLY"] = "cdk:cloud-assembly";
+      ArtifactType6["FEATURE_FLAG_REPORT"] = "cdk:feature-flag-report";
+    })(ArtifactType5 || (exports2.ArtifactType = ArtifactType5 = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js
+var require_metadata_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = exports2.ArtifactMetadataEntryType = void 0;
+    var ArtifactMetadataEntryType9;
+    (function(ArtifactMetadataEntryType10) {
+      ArtifactMetadataEntryType10["ASSET"] = "aws:cdk:asset";
+      ArtifactMetadataEntryType10["INFO"] = "aws:cdk:info";
+      ArtifactMetadataEntryType10["WARN"] = "aws:cdk:warning";
+      ArtifactMetadataEntryType10["ERROR"] = "aws:cdk:error";
+      ArtifactMetadataEntryType10["LOGICAL_ID"] = "aws:cdk:logicalId";
+      ArtifactMetadataEntryType10["STACK_TAGS"] = "aws:cdk:stack-tags";
+      ArtifactMetadataEntryType10["DO_NOT_REFACTOR"] = "aws:cdk:do-not-refactor";
+      ArtifactMetadataEntryType10["CREATION_STACK"] = "aws:cdk:creationStack";
+      ArtifactMetadataEntryType10["PROPERTY_ASSIGNMENT"] = "aws:cdk:propertyAssignment";
+    })(ArtifactMetadataEntryType9 || (exports2.ArtifactMetadataEntryType = ArtifactMetadataEntryType9 = {}));
+    exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = "aws:cdk:cloudformation:type";
+    exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = "aws:cdk:cloudformation:props";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js
+var require_artifact_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js
+var require_context_queries = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.LoadBalancerListenerProtocol = exports2.LoadBalancerType = exports2.ContextProvider = void 0;
+    var ContextProvider3;
+    (function(ContextProvider4) {
+      ContextProvider4["AMI_PROVIDER"] = "ami";
+      ContextProvider4["AVAILABILITY_ZONE_PROVIDER"] = "availability-zones";
+      ContextProvider4["HOSTED_ZONE_PROVIDER"] = "hosted-zone";
+      ContextProvider4["SSM_PARAMETER_PROVIDER"] = "ssm";
+      ContextProvider4["VPC_PROVIDER"] = "vpc-provider";
+      ContextProvider4["ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER"] = "endpoint-service-availability-zones";
+      ContextProvider4["LOAD_BALANCER_PROVIDER"] = "load-balancer";
+      ContextProvider4["LOAD_BALANCER_LISTENER_PROVIDER"] = "load-balancer-listener";
+      ContextProvider4["SECURITY_GROUP_PROVIDER"] = "security-group";
+      ContextProvider4["KEY_PROVIDER"] = "key-provider";
+      ContextProvider4["CC_API_PROVIDER"] = "cc-api-provider";
+      ContextProvider4["PLUGIN"] = "plugin";
+    })(ContextProvider3 || (exports2.ContextProvider = ContextProvider3 = {}));
+    var LoadBalancerType;
+    (function(LoadBalancerType2) {
+      LoadBalancerType2["NETWORK"] = "network";
+      LoadBalancerType2["APPLICATION"] = "application";
+    })(LoadBalancerType || (exports2.LoadBalancerType = LoadBalancerType = {}));
+    var LoadBalancerListenerProtocol;
+    (function(LoadBalancerListenerProtocol2) {
+      LoadBalancerListenerProtocol2["HTTP"] = "HTTP";
+      LoadBalancerListenerProtocol2["HTTPS"] = "HTTPS";
+      LoadBalancerListenerProtocol2["TCP"] = "TCP";
+      LoadBalancerListenerProtocol2["TLS"] = "TLS";
+      LoadBalancerListenerProtocol2["UDP"] = "UDP";
+      LoadBalancerListenerProtocol2["TCP_UDP"] = "TCP_UDP";
+    })(LoadBalancerListenerProtocol || (exports2.LoadBalancerListenerProtocol = LoadBalancerListenerProtocol = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js
+var require_interfaces = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js
+var require_validation_report_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js
+var require_cloud_assembly = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema(), exports2);
+    __exportStar2(require_metadata_schema(), exports2);
+    __exportStar2(require_artifact_schema(), exports2);
+    __exportStar2(require_context_queries(), exports2);
+    __exportStar2(require_interfaces(), exports2);
+    __exportStar2(require_validation_report_schema(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js
+var require_schema2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js
+var require_docker_image_asset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js
+var require_file_asset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.FileAssetPackaging = void 0;
+    var FileAssetPackaging2;
+    (function(FileAssetPackaging3) {
+      FileAssetPackaging3["FILE"] = "file";
+      FileAssetPackaging3["ZIP_DIRECTORY"] = "zip";
+    })(FileAssetPackaging2 || (exports2.FileAssetPackaging = FileAssetPackaging2 = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js
+var require_aws_destination = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js
+var require_assets = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema2(), exports2);
+    __exportStar2(require_docker_image_asset(), exports2);
+    __exportStar2(require_file_asset(), exports2);
+    __exportStar2(require_aws_destination(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js
+var require_helpers = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js"(exports2, module2) {
+    "use strict";
+    var ValidationError2 = exports2.ValidationError = function ValidationError3(message, instance, schema, path23, name, argument) {
+      if (Array.isArray(path23)) {
+        this.path = path23;
+        this.property = path23.reduce(function(sum, item) {
+          return sum + makeSuffix(item);
+        }, "instance");
+      } else if (path23 !== void 0) {
+        this.property = path23;
+      }
+      if (message) {
+        this.message = message;
+      }
+      if (schema) {
+        var id = schema.$id || schema.id;
+        this.schema = id || schema;
+      }
+      if (instance !== void 0) {
+        this.instance = instance;
+      }
+      this.name = name;
+      this.argument = argument;
+      this.stack = this.toString();
+    };
+    ValidationError2.prototype.toString = function toString2() {
+      return this.property + " " + this.message;
+    };
+    var ValidatorResult = exports2.ValidatorResult = function ValidatorResult2(instance, schema, options, ctx) {
+      this.instance = instance;
+      this.schema = schema;
+      this.options = options;
+      this.path = ctx.path;
+      this.propertyPath = ctx.propertyPath;
+      this.errors = [];
+      this.throwError = options && options.throwError;
+      this.throwFirst = options && options.throwFirst;
+      this.throwAll = options && options.throwAll;
+      this.disableFormat = options && options.disableFormat === true;
+    };
+    ValidatorResult.prototype.addError = function addError(detail) {
+      var err;
+      if (typeof detail == "string") {
+        err = new ValidationError2(detail, this.instance, this.schema, this.path);
+      } else {
+        if (!detail) throw new Error("Missing error detail");
+        if (!detail.message) throw new Error("Missing error message");
+        if (!detail.name) throw new Error("Missing validator type");
+        err = new ValidationError2(detail.message, this.instance, this.schema, this.path, detail.name, detail.argument);
+      }
+      this.errors.push(err);
+      if (this.throwFirst) {
+        throw new ValidatorResultError(this);
+      } else if (this.throwError) {
+        throw err;
+      }
+      return err;
+    };
+    ValidatorResult.prototype.importErrors = function importErrors(res) {
+      if (typeof res == "string" || res && res.validatorType) {
+        this.addError(res);
+      } else if (res && res.errors) {
+        this.errors = this.errors.concat(res.errors);
+      }
+    };
+    function stringizer(v, i) {
+      return i + ": " + v.toString() + "\n";
+    }
+    ValidatorResult.prototype.toString = function toString2(res) {
+      return this.errors.map(stringizer).join("");
+    };
+    Object.defineProperty(ValidatorResult.prototype, "valid", { get: function() {
+      return !this.errors.length;
+    } });
+    module2.exports.ValidatorResultError = ValidatorResultError;
+    function ValidatorResultError(result) {
+      if (typeof Error.captureStackTrace === "function") {
+        Error.captureStackTrace(this, ValidatorResultError);
+      }
+      this.instance = result.instance;
+      this.schema = result.schema;
+      this.options = result.options;
+      this.errors = result.errors;
+    }
+    ValidatorResultError.prototype = new Error();
+    ValidatorResultError.prototype.constructor = ValidatorResultError;
+    ValidatorResultError.prototype.name = "Validation Error";
+    var SchemaError = exports2.SchemaError = function SchemaError2(msg, schema) {
+      this.message = msg;
+      this.schema = schema;
+      Error.call(this, msg);
+      if (typeof Error.captureStackTrace === "function") {
+        Error.captureStackTrace(this, SchemaError2);
+      }
+    };
+    SchemaError.prototype = Object.create(
+      Error.prototype,
+      {
+        constructor: { value: SchemaError, enumerable: false },
+        name: { value: "SchemaError", enumerable: false }
+      }
+    );
+    var SchemaContext = exports2.SchemaContext = function SchemaContext2(schema, options, path23, base, schemas) {
+      this.schema = schema;
+      this.options = options;
+      if (Array.isArray(path23)) {
+        this.path = path23;
+        this.propertyPath = path23.reduce(function(sum, item) {
+          return sum + makeSuffix(item);
+        }, "instance");
+      } else {
+        this.propertyPath = path23;
+      }
+      this.base = base;
+      this.schemas = schemas;
+    };
+    SchemaContext.prototype.resolve = function resolve6(target) {
+      return (() => resolveUrl(this.base, target))();
+    };
+    SchemaContext.prototype.makeChild = function makeChild(schema, propertyName) {
+      var path23 = propertyName === void 0 ? this.path : this.path.concat([propertyName]);
+      var id = schema.$id || schema.id;
+      let base = (() => resolveUrl(this.base, id || ""))();
+      var ctx = new SchemaContext(schema, this.options, path23, base, Object.create(this.schemas));
+      if (id && !ctx.schemas[base]) {
+        ctx.schemas[base] = schema;
+      }
+      return ctx;
+    };
+    var FORMAT_REGEXPS = exports2.FORMAT_REGEXPS = {
+      // 7.3.1. Dates, Times, and Duration
+      "date-time": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])[tT ](2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])(\.\d+)?([zZ]|[+-]([0-5][0-9]):(60|[0-5][0-9]))$/,
+      "date": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])$/,
+      "time": /^(2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])$/,
+      "duration": /P(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S)|\d+(D|M(\d+D)?|Y(\d+M(\d+D)?)?)(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S))?|\d+W)/i,
+      // 7.3.2. Email Addresses
+      // TODO: fix the email production
+      "email": /^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/,
+      "idn-email": /^("(?:[!#-\[\]-\u{10FFFF}]|\\[\t -\u{10FFFF}])*"|[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*)@([!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*|\[[!-Z\^-\u{10FFFF}]*\])$/u,
+      // 7.3.3. Hostnames
+      // 7.3.4. IP Addresses
+      "ip-address": /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,
+      // FIXME whitespace is invalid
+      "ipv6": /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/,
+      // 7.3.5. Resource Identifiers
+      // TODO: A more accurate regular expression for "uri" goes:
+      // [A-Za-z][+\-.0-9A-Za-z]*:((/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?)?#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])|/?%[0-9A-Fa-f]{2}|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*(#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?)?
+      "uri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,
+      "uri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/,
+      "iri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,
+      "iri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~-\u{10FFFF}]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~-\u{10FFFF}])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/u,
+      "uuid": /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i,
+      // 7.3.6. uri-template
+      "uri-template": /(%[0-9a-f]{2}|[!#$&(-;=?@\[\]_a-z~]|\{[!#&+,./;=?@|]?(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?(,(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?)*\})*/iu,
+      // 7.3.7. JSON Pointers
+      "json-pointer": /^(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*$/iu,
+      "relative-json-pointer": /^\d+(#|(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*)$/iu,
+      // hostname regex from: http://stackoverflow.com/a/1420225/5628
+      "hostname": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,
+      "host-name": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,
+      "utc-millisec": function(input) {
+        return typeof input === "string" && parseFloat(input) === parseInt(input, 10) && !isNaN(input);
+      },
+      // 7.3.8. regex
+      "regex": function(input) {
+        var result = true;
+        try {
+          new RegExp(input);
+        } catch (e) {
+          result = false;
+        }
+        return result;
+      },
+      // Other definitions
+      // "style" was removed from JSON Schema in draft-4 and is deprecated
+      "style": /[\r\n\t ]*[^\r\n\t ][^:]*:[\r\n\t ]*[^\r\n\t ;]*[\r\n\t ]*;?/,
+      // "color" was removed from JSON Schema in draft-4 and is deprecated
+      "color": /^(#?([0-9A-Fa-f]{3}){1,2}\b|aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|(rgb\(\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*\))|(rgb\(\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*\)))$/,
+      "phone": /^\+(?:[0-9] ?){6,14}[0-9]$/,
+      "alpha": /^[a-zA-Z]+$/,
+      "alphanumeric": /^[a-zA-Z0-9]+$/
+    };
+    FORMAT_REGEXPS.regexp = FORMAT_REGEXPS.regex;
+    FORMAT_REGEXPS.pattern = FORMAT_REGEXPS.regex;
+    FORMAT_REGEXPS.ipv4 = FORMAT_REGEXPS["ip-address"];
+    exports2.isFormat = function isFormat(input, format, validator) {
+      if (typeof input === "string" && FORMAT_REGEXPS[format] !== void 0) {
+        if (FORMAT_REGEXPS[format] instanceof RegExp) {
+          return FORMAT_REGEXPS[format].test(input);
+        }
+        if (typeof FORMAT_REGEXPS[format] === "function") {
+          return FORMAT_REGEXPS[format](input);
+        }
+      } else if (validator && validator.customFormats && typeof validator.customFormats[format] === "function") {
+        return validator.customFormats[format](input);
+      }
+      return true;
+    };
+    var makeSuffix = exports2.makeSuffix = function makeSuffix2(key) {
+      key = key.toString();
+      if (!key.match(/[.\s\[\]]/) && !key.match(/^[\d]/)) {
+        return "." + key;
+      }
+      if (key.match(/^\d+$/)) {
+        return "[" + key + "]";
+      }
+      return "[" + JSON.stringify(key) + "]";
+    };
+    exports2.deepCompareStrict = function deepCompareStrict(a, b) {
+      if (typeof a !== typeof b) {
+        return false;
+      }
+      if (Array.isArray(a)) {
+        if (!Array.isArray(b)) {
+          return false;
+        }
+        if (a.length !== b.length) {
+          return false;
+        }
+        return a.every(function(v, i) {
+          return deepCompareStrict(a[i], b[i]);
+        });
+      }
+      if (typeof a === "object") {
+        if (!a || !b) {
+          return a === b;
+        }
+        var aKeys = Object.keys(a);
+        var bKeys = Object.keys(b);
+        if (aKeys.length !== bKeys.length) {
+          return false;
+        }
+        return aKeys.every(function(v) {
+          return deepCompareStrict(a[v], b[v]);
+        });
+      }
+      return a === b;
+    };
+    function deepMerger(target, dst, e, i) {
+      if (typeof e === "object") {
+        dst[i] = deepMerge2(target[i], e);
+      } else {
+        if (target.indexOf(e) === -1) {
+          dst.push(e);
+        }
+      }
+    }
+    function copyist(src, dst, key) {
+      dst[key] = src[key];
+    }
+    function copyistWithDeepMerge(target, src, dst, key) {
+      if (typeof src[key] !== "object" || !src[key]) {
+        dst[key] = src[key];
+      } else {
+        if (!target[key]) {
+          dst[key] = src[key];
+        } else {
+          dst[key] = deepMerge2(target[key], src[key]);
+        }
+      }
+    }
+    function deepMerge2(target, src) {
+      var array = Array.isArray(src);
+      var dst = array && [] || {};
+      if (array) {
+        target = target || [];
+        dst = dst.concat(target);
+        src.forEach(deepMerger.bind(null, target, dst));
+      } else {
+        if (target && typeof target === "object") {
+          Object.keys(target).forEach(copyist.bind(null, target, dst));
+        }
+        Object.keys(src).forEach(copyistWithDeepMerge.bind(null, target, src, dst));
+      }
+      return dst;
+    }
+    module2.exports.deepMerge = deepMerge2;
+    exports2.objectGetPath = function objectGetPath(o, s) {
+      var parts = s.split("/").slice(1);
+      var k;
+      while (typeof (k = parts.shift()) == "string") {
+        var n = decodeURIComponent(k.replace(/~0/, "~").replace(/~1/g, "/"));
+        if (!(n in o)) return;
+        o = o[n];
+      }
+      return o;
+    };
+    function pathEncoder(v) {
+      return "/" + encodeURIComponent(v).replace(/~/g, "%7E");
+    }
+    exports2.encodePath = function encodePointer(a) {
+      return a.map(pathEncoder).join("");
+    };
+    exports2.getDecimalPlaces = function getDecimalPlaces(number) {
+      var decimalPlaces = 0;
+      if (isNaN(number)) return decimalPlaces;
+      if (typeof number !== "number") {
+        number = Number(number);
+      }
+      var parts = number.toString().split("e");
+      if (parts.length === 2) {
+        if (parts[1][0] !== "-") {
+          return decimalPlaces;
+        } else {
+          decimalPlaces = Number(parts[1].slice(1));
+        }
+      }
+      var decimalParts = parts[0].split(".");
+      if (decimalParts.length === 2) {
+        decimalPlaces += decimalParts[1].length;
+      }
+      return decimalPlaces;
+    };
+    exports2.isSchema = function isSchema(val2) {
+      return typeof val2 === "object" && val2 || typeof val2 === "boolean";
+    };
+    var resolveUrl = exports2.resolveUrl = function resolveUrl2(from, to) {
+      const resolvedUrl = new URL(to, new URL(from, "resolve://"));
+      if (resolvedUrl.protocol === "resolve:") {
+        const { pathname, search, hash } = resolvedUrl;
+        return pathname + search + hash;
+      }
+      return resolvedUrl.toString();
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js
+var require_attribute = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js"(exports2, module2) {
+    "use strict";
+    var helpers = require_helpers();
+    var ValidatorResult = helpers.ValidatorResult;
+    var SchemaError = helpers.SchemaError;
+    var attribute = {};
+    attribute.ignoreProperties = {
+      // informative properties
+      "id": true,
+      "default": true,
+      "description": true,
+      "title": true,
+      // arguments to other properties
+      "additionalItems": true,
+      "then": true,
+      "else": true,
+      // special-handled properties
+      "$schema": true,
+      "$ref": true,
+      "extends": true
+    };
+    var validators = attribute.validators = {};
+    validators.type = function validateType(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var types2 = Array.isArray(schema.type) ? schema.type : [schema.type];
+      if (!types2.some(this.testType.bind(this, instance, schema, options, ctx))) {
+        var list = types2.map(function(v) {
+          if (!v) return;
+          var id = v.$id || v.id;
+          return id ? "<" + id + ">" : v + "";
+        });
+        result.addError({
+          name: "type",
+          argument: list,
+          message: "is not of a type(s) " + list
+        });
+      }
+      return result;
+    };
+    function testSchemaNoThrow(instance, options, ctx, callback, schema) {
+      var throwError = options.throwError;
+      var throwAll = options.throwAll;
+      options.throwError = false;
+      options.throwAll = false;
+      var res = this.validateSchema(instance, schema, options, ctx);
+      options.throwError = throwError;
+      options.throwAll = throwAll;
+      if (!res.valid && callback instanceof Function) {
+        callback(res);
+      }
+      return res.valid;
+    }
+    validators.anyOf = function validateAnyOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var inner = new ValidatorResult(instance, schema, options, ctx);
+      if (!Array.isArray(schema.anyOf)) {
+        throw new SchemaError("anyOf must be an array");
+      }
+      if (!schema.anyOf.some(
+        testSchemaNoThrow.bind(
+          this,
+          instance,
+          options,
+          ctx,
+          function(res) {
+            inner.importErrors(res);
+          }
+        )
+      )) {
+        var list = schema.anyOf.map(function(v, i) {
+          var id = v.$id || v.id;
+          if (id) return "<" + id + ">";
+          return v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+        });
+        if (options.nestedErrors) {
+          result.importErrors(inner);
+        }
+        result.addError({
+          name: "anyOf",
+          argument: list,
+          message: "is not any of " + list.join(",")
+        });
+      }
+      return result;
+    };
+    validators.allOf = function validateAllOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema.allOf)) {
+        throw new SchemaError("allOf must be an array");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var self2 = this;
+      schema.allOf.forEach(function(v, i) {
+        var valid = self2.validateSchema(instance, v, options, ctx);
+        if (!valid.valid) {
+          var id = v.$id || v.id;
+          var msg = id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+          result.addError({
+            name: "allOf",
+            argument: { id: msg, length: valid.errors.length, valid },
+            message: "does not match allOf schema " + msg + " with " + valid.errors.length + " error[s]:"
+          });
+          result.importErrors(valid);
+        }
+      });
+      return result;
+    };
+    validators.oneOf = function validateOneOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema.oneOf)) {
+        throw new SchemaError("oneOf must be an array");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var inner = new ValidatorResult(instance, schema, options, ctx);
+      var count2 = schema.oneOf.filter(
+        testSchemaNoThrow.bind(
+          this,
+          instance,
+          options,
+          ctx,
+          function(res) {
+            inner.importErrors(res);
+          }
+        )
+      ).length;
+      var list = schema.oneOf.map(function(v, i) {
+        var id = v.$id || v.id;
+        return id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+      });
+      if (count2 !== 1) {
+        if (options.nestedErrors) {
+          result.importErrors(inner);
+        }
+        result.addError({
+          name: "oneOf",
+          argument: list,
+          message: "is not exactly one from " + list.join(",")
+        });
+      }
+      return result;
+    };
+    validators.if = function validateIf(instance, schema, options, ctx) {
+      if (instance === void 0) return null;
+      if (!helpers.isSchema(schema.if)) throw new Error('Expected "if" keyword to be a schema');
+      var ifValid = testSchemaNoThrow.call(this, instance, options, ctx, null, schema.if);
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var res;
+      if (ifValid) {
+        if (schema.then === void 0) return;
+        if (!helpers.isSchema(schema.then)) throw new Error('Expected "then" keyword to be a schema');
+        res = this.validateSchema(instance, schema.then, options, ctx.makeChild(schema.then));
+        result.importErrors(res);
+      } else {
+        if (schema.else === void 0) return;
+        if (!helpers.isSchema(schema.else)) throw new Error('Expected "else" keyword to be a schema');
+        res = this.validateSchema(instance, schema.else, options, ctx.makeChild(schema.else));
+        result.importErrors(res);
+      }
+      return result;
+    };
+    function getEnumerableProperty(object, key) {
+      if (Object.hasOwnProperty.call(object, key)) return object[key];
+      if (!(key in object)) return;
+      while (object = Object.getPrototypeOf(object)) {
+        if (Object.propertyIsEnumerable.call(object, key)) return object[key];
+      }
+    }
+    validators.propertyNames = function validatePropertyNames(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var subschema = schema.propertyNames !== void 0 ? schema.propertyNames : {};
+      if (!helpers.isSchema(subschema)) throw new SchemaError('Expected "propertyNames" to be a schema (object or boolean)');
+      for (var property in instance) {
+        if (getEnumerableProperty(instance, property) !== void 0) {
+          var res = this.validateSchema(property, subschema, options, ctx.makeChild(subschema));
+          result.importErrors(res);
+        }
+      }
+      return result;
+    };
+    validators.properties = function validateProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var properties = schema.properties || {};
+      for (var property in properties) {
+        var subschema = properties[property];
+        if (subschema === void 0) {
+          continue;
+        } else if (subschema === null) {
+          throw new SchemaError('Unexpected null, expected schema in "properties"');
+        }
+        if (typeof options.preValidateProperty == "function") {
+          options.preValidateProperty(instance, property, subschema, options, ctx);
+        }
+        var prop = getEnumerableProperty(instance, property);
+        var res = this.validateSchema(prop, subschema, options, ctx.makeChild(subschema, property));
+        if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+        result.importErrors(res);
+      }
+      return result;
+    };
+    function testAdditionalProperty(instance, schema, options, ctx, property, result) {
+      if (!this.types.object(instance)) return;
+      if (schema.properties && schema.properties[property] !== void 0) {
+        return;
+      }
+      if (schema.additionalProperties === false) {
+        result.addError({
+          name: "additionalProperties",
+          argument: property,
+          message: "is not allowed to have the additional property " + JSON.stringify(property)
+        });
+      } else {
+        var additionalProperties = schema.additionalProperties || {};
+        if (typeof options.preValidateProperty == "function") {
+          options.preValidateProperty(instance, property, additionalProperties, options, ctx);
+        }
+        var res = this.validateSchema(instance[property], additionalProperties, options, ctx.makeChild(additionalProperties, property));
+        if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+        result.importErrors(res);
+      }
+    }
+    validators.patternProperties = function validatePatternProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var patternProperties = schema.patternProperties || {};
+      for (var property in instance) {
+        var test = true;
+        for (var pattern in patternProperties) {
+          var subschema = patternProperties[pattern];
+          if (subschema === void 0) {
+            continue;
+          } else if (subschema === null) {
+            throw new SchemaError('Unexpected null, expected schema in "patternProperties"');
+          }
+          try {
+            var regexp = new RegExp(pattern, "u");
+          } catch (_e) {
+            regexp = new RegExp(pattern);
+          }
+          if (!regexp.test(property)) {
+            continue;
+          }
+          test = false;
+          if (typeof options.preValidateProperty == "function") {
+            options.preValidateProperty(instance, property, subschema, options, ctx);
+          }
+          var res = this.validateSchema(instance[property], subschema, options, ctx.makeChild(subschema, property));
+          if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+          result.importErrors(res);
+        }
+        if (test) {
+          testAdditionalProperty.call(this, instance, schema, options, ctx, property, result);
+        }
+      }
+      return result;
+    };
+    validators.additionalProperties = function validateAdditionalProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      if (schema.patternProperties) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      for (var property in instance) {
+        testAdditionalProperty.call(this, instance, schema, options, ctx, property, result);
+      }
+      return result;
+    };
+    validators.minProperties = function validateMinProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var keys = Object.keys(instance);
+      if (!(keys.length >= schema.minProperties)) {
+        result.addError({
+          name: "minProperties",
+          argument: schema.minProperties,
+          message: "does not meet minimum property length of " + schema.minProperties
+        });
+      }
+      return result;
+    };
+    validators.maxProperties = function validateMaxProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var keys = Object.keys(instance);
+      if (!(keys.length <= schema.maxProperties)) {
+        result.addError({
+          name: "maxProperties",
+          argument: schema.maxProperties,
+          message: "does not meet maximum property length of " + schema.maxProperties
+        });
+      }
+      return result;
+    };
+    validators.items = function validateItems(instance, schema, options, ctx) {
+      var self2 = this;
+      if (!this.types.array(instance)) return;
+      if (schema.items === void 0) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      instance.every(function(value, i) {
+        if (Array.isArray(schema.items)) {
+          var items = schema.items[i] === void 0 ? schema.additionalItems : schema.items[i];
+        } else {
+          var items = schema.items;
+        }
+        if (items === void 0) {
+          return true;
+        }
+        if (items === false) {
+          result.addError({
+            name: "items",
+            message: "additionalItems not permitted"
+          });
+          return false;
+        }
+        var res = self2.validateSchema(value, items, options, ctx.makeChild(items, i));
+        if (res.instance !== result.instance[i]) result.instance[i] = res.instance;
+        result.importErrors(res);
+        return true;
+      });
+      return result;
+    };
+    validators.contains = function validateContains(instance, schema, options, ctx) {
+      var self2 = this;
+      if (!this.types.array(instance)) return;
+      if (schema.contains === void 0) return;
+      if (!helpers.isSchema(schema.contains)) throw new Error('Expected "contains" keyword to be a schema');
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var count2 = instance.some(function(value, i) {
+        var res = self2.validateSchema(value, schema.contains, options, ctx.makeChild(schema.contains, i));
+        return res.errors.length === 0;
+      });
+      if (count2 === false) {
+        result.addError({
+          name: "contains",
+          argument: schema.contains,
+          message: "must contain an item matching given schema"
+        });
+      }
+      return result;
+    };
+    validators.minimum = function validateMinimum(instance, schema, options, ctx) {
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (schema.exclusiveMinimum && schema.exclusiveMinimum === true) {
+        if (!(instance > schema.minimum)) {
+          result.addError({
+            name: "minimum",
+            argument: schema.minimum,
+            message: "must be greater than " + schema.minimum
+          });
+        }
+      } else {
+        if (!(instance >= schema.minimum)) {
+          result.addError({
+            name: "minimum",
+            argument: schema.minimum,
+            message: "must be greater than or equal to " + schema.minimum
+          });
+        }
+      }
+      return result;
+    };
+    validators.maximum = function validateMaximum(instance, schema, options, ctx) {
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (schema.exclusiveMaximum && schema.exclusiveMaximum === true) {
+        if (!(instance < schema.maximum)) {
+          result.addError({
+            name: "maximum",
+            argument: schema.maximum,
+            message: "must be less than " + schema.maximum
+          });
+        }
+      } else {
+        if (!(instance <= schema.maximum)) {
+          result.addError({
+            name: "maximum",
+            argument: schema.maximum,
+            message: "must be less than or equal to " + schema.maximum
+          });
+        }
+      }
+      return result;
+    };
+    validators.exclusiveMinimum = function validateExclusiveMinimum(instance, schema, options, ctx) {
+      if (typeof schema.exclusiveMinimum === "boolean") return;
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var valid = instance > schema.exclusiveMinimum;
+      if (!valid) {
+        result.addError({
+          name: "exclusiveMinimum",
+          argument: schema.exclusiveMinimum,
+          message: "must be strictly greater than " + schema.exclusiveMinimum
+        });
+      }
+      return result;
+    };
+    validators.exclusiveMaximum = function validateExclusiveMaximum(instance, schema, options, ctx) {
+      if (typeof schema.exclusiveMaximum === "boolean") return;
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var valid = instance < schema.exclusiveMaximum;
+      if (!valid) {
+        result.addError({
+          name: "exclusiveMaximum",
+          argument: schema.exclusiveMaximum,
+          message: "must be strictly less than " + schema.exclusiveMaximum
+        });
+      }
+      return result;
+    };
+    var validateMultipleOfOrDivisbleBy = function validateMultipleOfOrDivisbleBy2(instance, schema, options, ctx, validationType, errorMessage) {
+      if (!this.types.number(instance)) return;
+      var validationArgument = schema[validationType];
+      if (validationArgument == 0) {
+        throw new SchemaError(validationType + " cannot be zero");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var instanceDecimals = helpers.getDecimalPlaces(instance);
+      var divisorDecimals = helpers.getDecimalPlaces(validationArgument);
+      var maxDecimals = Math.max(instanceDecimals, divisorDecimals);
+      var multiplier = Math.pow(10, maxDecimals);
+      if (Math.round(instance * multiplier) % Math.round(validationArgument * multiplier) !== 0) {
+        result.addError({
+          name: validationType,
+          argument: validationArgument,
+          message: errorMessage + JSON.stringify(validationArgument)
+        });
+      }
+      return result;
+    };
+    validators.multipleOf = function validateMultipleOf(instance, schema, options, ctx) {
+      return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "multipleOf", "is not a multiple of (divisible by) ");
+    };
+    validators.divisibleBy = function validateDivisibleBy(instance, schema, options, ctx) {
+      return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "divisibleBy", "is not divisible by (multiple of) ");
+    };
+    validators.required = function validateRequired(instance, schema, options, ctx) {
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (instance === void 0 && schema.required === true) {
+        result.addError({
+          name: "required",
+          message: "is required"
+        });
+      } else if (this.types.object(instance) && Array.isArray(schema.required)) {
+        schema.required.forEach(function(n) {
+          if (getEnumerableProperty(instance, n) === void 0) {
+            result.addError({
+              name: "required",
+              argument: n,
+              message: "requires property " + JSON.stringify(n)
+            });
+          }
+        });
+      }
+      return result;
+    };
+    validators.pattern = function validatePattern(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var pattern = schema.pattern;
+      try {
+        var regexp = new RegExp(pattern, "u");
+      } catch (_e) {
+        regexp = new RegExp(pattern);
+      }
+      if (!instance.match(regexp)) {
+        result.addError({
+          name: "pattern",
+          argument: schema.pattern,
+          message: "does not match pattern " + JSON.stringify(schema.pattern.toString())
+        });
+      }
+      return result;
+    };
+    validators.format = function validateFormat(instance, schema, options, ctx) {
+      if (instance === void 0) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!result.disableFormat && !helpers.isFormat(instance, schema.format, this)) {
+        result.addError({
+          name: "format",
+          argument: schema.format,
+          message: "does not conform to the " + JSON.stringify(schema.format) + " format"
+        });
+      }
+      return result;
+    };
+    validators.minLength = function validateMinLength(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var hsp = instance.match(/[\uDC00-\uDFFF]/g);
+      var length = instance.length - (hsp ? hsp.length : 0);
+      if (!(length >= schema.minLength)) {
+        result.addError({
+          name: "minLength",
+          argument: schema.minLength,
+          message: "does not meet minimum length of " + schema.minLength
+        });
+      }
+      return result;
+    };
+    validators.maxLength = function validateMaxLength(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var hsp = instance.match(/[\uDC00-\uDFFF]/g);
+      var length = instance.length - (hsp ? hsp.length : 0);
+      if (!(length <= schema.maxLength)) {
+        result.addError({
+          name: "maxLength",
+          argument: schema.maxLength,
+          message: "does not meet maximum length of " + schema.maxLength
+        });
+      }
+      return result;
+    };
+    validators.minItems = function validateMinItems(instance, schema, options, ctx) {
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!(instance.length >= schema.minItems)) {
+        result.addError({
+          name: "minItems",
+          argument: schema.minItems,
+          message: "does not meet minimum length of " + schema.minItems
+        });
+      }
+      return result;
+    };
+    validators.maxItems = function validateMaxItems(instance, schema, options, ctx) {
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!(instance.length <= schema.maxItems)) {
+        result.addError({
+          name: "maxItems",
+          argument: schema.maxItems,
+          message: "does not meet maximum length of " + schema.maxItems
+        });
+      }
+      return result;
+    };
+    function testArrays(v, i, a) {
+      var j, len = a.length;
+      for (j = i + 1, len; j < len; j++) {
+        if (helpers.deepCompareStrict(v, a[j])) {
+          return false;
+        }
+      }
+      return true;
+    }
+    validators.uniqueItems = function validateUniqueItems(instance, schema, options, ctx) {
+      if (schema.uniqueItems !== true) return;
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!instance.every(testArrays)) {
+        result.addError({
+          name: "uniqueItems",
+          message: "contains duplicate item"
+        });
+      }
+      return result;
+    };
+    validators.dependencies = function validateDependencies(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      for (var property in schema.dependencies) {
+        if (instance[property] === void 0) {
+          continue;
+        }
+        var dep = schema.dependencies[property];
+        var childContext = ctx.makeChild(dep, property);
+        if (typeof dep == "string") {
+          dep = [dep];
+        }
+        if (Array.isArray(dep)) {
+          dep.forEach(function(prop) {
+            if (instance[prop] === void 0) {
+              result.addError({
+                // FIXME there's two different "dependencies" errors here with slightly different outputs
+                // Can we make these the same? Or should we create different error types?
+                name: "dependencies",
+                argument: childContext.propertyPath,
+                message: "property " + prop + " not found, required by " + childContext.propertyPath
+              });
+            }
+          });
+        } else {
+          var res = this.validateSchema(instance, dep, options, childContext);
+          if (result.instance !== res.instance) result.instance = res.instance;
+          if (res && res.errors.length) {
+            result.addError({
+              name: "dependencies",
+              argument: childContext.propertyPath,
+              message: "does not meet dependency required by " + childContext.propertyPath
+            });
+            result.importErrors(res);
+          }
+        }
+      }
+      return result;
+    };
+    validators["enum"] = function validateEnum(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema["enum"])) {
+        throw new SchemaError("enum expects an array", schema);
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!schema["enum"].some(helpers.deepCompareStrict.bind(null, instance))) {
+        result.addError({
+          name: "enum",
+          argument: schema["enum"],
+          message: "is not one of enum values: " + schema["enum"].map(String).join(",")
+        });
+      }
+      return result;
+    };
+    validators["const"] = function validateEnum(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!helpers.deepCompareStrict(schema["const"], instance)) {
+        result.addError({
+          name: "const",
+          argument: schema["const"],
+          message: "does not exactly match expected constant: " + schema["const"]
+        });
+      }
+      return result;
+    };
+    validators.not = validators.disallow = function validateNot(instance, schema, options, ctx) {
+      var self2 = this;
+      if (instance === void 0) return null;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var notTypes = schema.not || schema.disallow;
+      if (!notTypes) return null;
+      if (!Array.isArray(notTypes)) notTypes = [notTypes];
+      notTypes.forEach(function(type) {
+        if (self2.testType(instance, schema, options, ctx, type)) {
+          var id = type && (type.$id || type.id);
+          var schemaId = id || type;
+          result.addError({
+            name: "not",
+            argument: schemaId,
+            message: "is of prohibited type " + schemaId
+          });
+        }
+      });
+      return result;
+    };
+    module2.exports = attribute;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js
+var require_scan = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js"(exports2, module2) {
+    "use strict";
+    var helpers = require_helpers();
+    module2.exports.SchemaScanResult = SchemaScanResult;
+    function SchemaScanResult(found, ref) {
+      this.id = found;
+      this.ref = ref;
+    }
+    module2.exports.scan = function scan(base, schema) {
+      function scanSchema(baseuri, schema2) {
+        if (!schema2 || typeof schema2 != "object") return;
+        if (schema2.$ref) {
+          let resolvedUri = helpers.resolveUrl(baseuri, schema2.$ref);
+          ref[resolvedUri] = ref[resolvedUri] ? ref[resolvedUri] + 1 : 0;
+          return;
+        }
+        var id = schema2.$id || schema2.id;
+        let resolvedBase = helpers.resolveUrl(baseuri, id);
+        var ourBase = id ? resolvedBase : baseuri;
+        if (ourBase) {
+          if (ourBase.indexOf("#") < 0) ourBase += "#";
+          if (found[ourBase]) {
+            if (!helpers.deepCompareStrict(found[ourBase], schema2)) {
+              throw new Error("Schema <" + ourBase + "> already exists with different definition");
+            }
+            return found[ourBase];
+          }
+          found[ourBase] = schema2;
+          if (ourBase[ourBase.length - 1] == "#") {
+            found[ourBase.substring(0, ourBase.length - 1)] = schema2;
+          }
+        }
+        scanArray(ourBase + "/items", Array.isArray(schema2.items) ? schema2.items : [schema2.items]);
+        scanArray(ourBase + "/extends", Array.isArray(schema2.extends) ? schema2.extends : [schema2.extends]);
+        scanSchema(ourBase + "/additionalItems", schema2.additionalItems);
+        scanObject(ourBase + "/properties", schema2.properties);
+        scanSchema(ourBase + "/additionalProperties", schema2.additionalProperties);
+        scanObject(ourBase + "/definitions", schema2.definitions);
+        scanObject(ourBase + "/patternProperties", schema2.patternProperties);
+        scanObject(ourBase + "/dependencies", schema2.dependencies);
+        scanArray(ourBase + "/disallow", schema2.disallow);
+        scanArray(ourBase + "/allOf", schema2.allOf);
+        scanArray(ourBase + "/anyOf", schema2.anyOf);
+        scanArray(ourBase + "/oneOf", schema2.oneOf);
+        scanSchema(ourBase + "/not", schema2.not);
+      }
+      function scanArray(baseuri, schemas) {
+        if (!Array.isArray(schemas)) return;
+        for (var i = 0; i < schemas.length; i++) {
+          scanSchema(baseuri + "/" + i, schemas[i]);
+        }
+      }
+      function scanObject(baseuri, schemas) {
+        if (!schemas || typeof schemas != "object") return;
+        for (var p in schemas) {
+          scanSchema(baseuri + "/" + p, schemas[p]);
+        }
+      }
+      var found = {};
+      var ref = {};
+      scanSchema(base, schema);
+      return new SchemaScanResult(found, ref);
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js
+var require_validator = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js"(exports2, module2) {
+    "use strict";
+    var attribute = require_attribute();
+    var helpers = require_helpers();
+    var scanSchema = require_scan().scan;
+    var ValidatorResult = helpers.ValidatorResult;
+    var ValidatorResultError = helpers.ValidatorResultError;
+    var SchemaError = helpers.SchemaError;
+    var SchemaContext = helpers.SchemaContext;
+    var anonymousBase = "/";
+    var Validator = function Validator2() {
+      this.customFormats = Object.create(Validator2.prototype.customFormats);
+      this.schemas = {};
+      this.unresolvedRefs = [];
+      this.types = Object.create(types2);
+      this.attributes = Object.create(attribute.validators);
+    };
+    Validator.prototype.customFormats = {};
+    Validator.prototype.schemas = null;
+    Validator.prototype.types = null;
+    Validator.prototype.attributes = null;
+    Validator.prototype.unresolvedRefs = null;
+    Validator.prototype.addSchema = function addSchema(schema, base) {
+      var self2 = this;
+      if (!schema) {
+        return null;
+      }
+      var scan = scanSchema(base || anonymousBase, schema);
+      var ourUri = base || schema.$id || schema.id;
+      for (var uri in scan.id) {
+        this.schemas[uri] = scan.id[uri];
+      }
+      for (var uri in scan.ref) {
+        this.unresolvedRefs.push(uri);
+      }
+      this.unresolvedRefs = this.unresolvedRefs.filter(function(uri2) {
+        return typeof self2.schemas[uri2] === "undefined";
+      });
+      return this.schemas[ourUri];
+    };
+    Validator.prototype.addSubSchemaArray = function addSubSchemaArray(baseuri, schemas) {
+      if (!Array.isArray(schemas)) return;
+      for (var i = 0; i < schemas.length; i++) {
+        this.addSubSchema(baseuri, schemas[i]);
+      }
+    };
+    Validator.prototype.addSubSchemaObject = function addSubSchemaArray(baseuri, schemas) {
+      if (!schemas || typeof schemas != "object") return;
+      for (var p in schemas) {
+        this.addSubSchema(baseuri, schemas[p]);
+      }
+    };
+    Validator.prototype.setSchemas = function setSchemas(schemas) {
+      this.schemas = schemas;
+    };
+    Validator.prototype.getSchema = function getSchema(urn) {
+      return this.schemas[urn];
+    };
+    Validator.prototype.validate = function validate2(instance, schema, options, ctx) {
+      if (typeof schema !== "boolean" && typeof schema !== "object" || schema === null) {
+        throw new SchemaError("Expected `schema` to be an object or boolean");
+      }
+      if (!options) {
+        options = {};
+      }
+      var id = schema.$id || schema.id;
+      let base = helpers.resolveUrl(options.base, id || "");
+      if (!ctx) {
+        ctx = new SchemaContext(schema, options, [], base, Object.create(this.schemas));
+        if (!ctx.schemas[base]) {
+          ctx.schemas[base] = schema;
+        }
+        var found = scanSchema(base, schema);
+        for (var n in found.id) {
+          var sch = found.id[n];
+          ctx.schemas[n] = sch;
+        }
+      }
+      if (options.required && instance === void 0) {
+        var result = new ValidatorResult(instance, schema, options, ctx);
+        result.addError("is required, but is undefined");
+        return result;
+      }
+      var result = this.validateSchema(instance, schema, options, ctx);
+      if (!result) {
+        throw new Error("Result undefined");
+      } else if (options.throwAll && result.errors.length) {
+        throw new ValidatorResultError(result);
+      }
+      return result;
+    };
+    function shouldResolve(schema) {
+      var ref = typeof schema === "string" ? schema : schema.$ref;
+      if (typeof ref == "string") return ref;
+      return false;
+    }
+    Validator.prototype.validateSchema = function validateSchema(instance, schema, options, ctx) {
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (typeof schema === "boolean") {
+        if (schema === true) {
+          schema = {};
+        } else if (schema === false) {
+          schema = { type: [] };
+        }
+      } else if (!schema) {
+        throw new Error("schema is undefined");
+      }
+      if (schema["extends"]) {
+        if (Array.isArray(schema["extends"])) {
+          var schemaobj = { schema, ctx };
+          schema["extends"].forEach(this.schemaTraverser.bind(this, schemaobj));
+          schema = schemaobj.schema;
+          schemaobj.schema = null;
+          schemaobj.ctx = null;
+          schemaobj = null;
+        } else {
+          schema = helpers.deepMerge(schema, this.superResolve(schema["extends"], ctx));
+        }
+      }
+      var switchSchema = shouldResolve(schema);
+      if (switchSchema) {
+        var resolved = this.resolve(schema, switchSchema, ctx);
+        var subctx = new SchemaContext(resolved.subschema, options, ctx.path, resolved.switchSchema, ctx.schemas);
+        return this.validateSchema(instance, resolved.subschema, options, subctx);
+      }
+      var skipAttributes = options && options.skipAttributes || [];
+      for (var key in schema) {
+        if (!attribute.ignoreProperties[key] && skipAttributes.indexOf(key) < 0) {
+          var validatorErr = null;
+          var validator = this.attributes[key];
+          if (validator) {
+            validatorErr = validator.call(this, instance, schema, options, ctx);
+          } else if (options.allowUnknownAttributes === false) {
+            throw new SchemaError("Unsupported attribute: " + key, schema);
+          }
+          if (validatorErr) {
+            result.importErrors(validatorErr);
+          }
+        }
+      }
+      if (typeof options.rewrite == "function") {
+        var value = options.rewrite.call(this, instance, schema, options, ctx);
+        result.instance = value;
+      }
+      return result;
+    };
+    Validator.prototype.schemaTraverser = function schemaTraverser(schemaobj, s) {
+      schemaobj.schema = helpers.deepMerge(schemaobj.schema, this.superResolve(s, schemaobj.ctx));
+    };
+    Validator.prototype.superResolve = function superResolve(schema, ctx) {
+      var ref = shouldResolve(schema);
+      if (ref) {
+        return this.resolve(schema, ref, ctx).subschema;
+      }
+      return schema;
+    };
+    Validator.prototype.resolve = function resolve6(schema, switchSchema, ctx) {
+      switchSchema = ctx.resolve(switchSchema);
+      if (ctx.schemas[switchSchema]) {
+        return { subschema: ctx.schemas[switchSchema], switchSchema };
+      }
+      let hashIndex = switchSchema.indexOf("#");
+      let fragment = hashIndex === -1 || hashIndex === switchSchema.length - 1 ? "" : switchSchema.substr(hashIndex);
+      var document = fragment && fragment.length && switchSchema.substr(0, switchSchema.length - fragment.length);
+      if (!document || !ctx.schemas[document]) {
+        throw new SchemaError("no such schema <" + switchSchema + ">", schema);
+      }
+      var subschema = helpers.objectGetPath(ctx.schemas[document], fragment.substr(1));
+      if (subschema === void 0) {
+        throw new SchemaError("no such schema " + fragment + " located in <" + document + ">", schema);
+      }
+      return { subschema, switchSchema };
+    };
+    Validator.prototype.testType = function validateType(instance, schema, options, ctx, type) {
+      if (type === void 0) {
+        return;
+      } else if (type === null) {
+        throw new SchemaError('Unexpected null in "type" keyword');
+      }
+      if (typeof this.types[type] == "function") {
+        return this.types[type].call(this, instance);
+      }
+      if (type && typeof type == "object") {
+        var res = this.validateSchema(instance, type, options, ctx);
+        return res === void 0 || !(res && res.errors.length);
+      }
+      return true;
+    };
+    var types2 = Validator.prototype.types = {};
+    types2.string = function testString(instance) {
+      return typeof instance == "string";
+    };
+    types2.number = function testNumber(instance) {
+      return typeof instance == "number" && isFinite(instance);
+    };
+    types2.integer = function testInteger(instance) {
+      return typeof instance == "number" && instance % 1 === 0;
+    };
+    types2.boolean = function testBoolean(instance) {
+      return typeof instance == "boolean";
+    };
+    types2.array = function testArray(instance) {
+      return Array.isArray(instance);
+    };
+    types2["null"] = function testNull(instance) {
+      return instance === null;
+    };
+    types2.date = function testDate(instance) {
+      return instance instanceof Date;
+    };
+    types2.any = function testAny(instance) {
+      return true;
+    };
+    types2.object = function testObject(instance) {
+      return instance && typeof instance === "object" && !Array.isArray(instance) && !(instance instanceof Date);
+    };
+    module2.exports = Validator;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js
+var require_lib = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js"(exports2, module2) {
+    "use strict";
+    var Validator = module2.exports.Validator = require_validator();
+    module2.exports.ValidatorResult = require_helpers().ValidatorResult;
+    module2.exports.ValidatorResultError = require_helpers().ValidatorResultError;
+    module2.exports.ValidationError = require_helpers().ValidationError;
+    module2.exports.SchemaError = require_helpers().SchemaError;
+    module2.exports.SchemaScanResult = require_scan().SchemaScanResult;
+    module2.exports.scan = require_scan().scan;
+    module2.exports.validate = function(instance, schema, options) {
+      var v = new Validator();
+      return v.validate(instance, schema, options);
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js
+var require_constants = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js"(exports2, module2) {
+    "use strict";
+    var SEMVER_SPEC_VERSION = "2.0.0";
+    var MAX_LENGTH = 256;
+    var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */
+    9007199254740991;
+    var MAX_SAFE_COMPONENT_LENGTH = 16;
+    var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6;
+    var RELEASE_TYPES = [
+      "major",
+      "premajor",
+      "minor",
+      "preminor",
+      "patch",
+      "prepatch",
+      "prerelease"
+    ];
+    module2.exports = {
+      MAX_LENGTH,
+      MAX_SAFE_COMPONENT_LENGTH,
+      MAX_SAFE_BUILD_LENGTH,
+      MAX_SAFE_INTEGER,
+      RELEASE_TYPES,
+      SEMVER_SPEC_VERSION,
+      FLAG_INCLUDE_PRERELEASE: 1,
+      FLAG_LOOSE: 2
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js
+var require_debug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js"(exports2, module2) {
+    "use strict";
+    var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {
+    };
+    module2.exports = debug;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js
+var require_re = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js"(exports2, module2) {
+    "use strict";
+    var {
+      MAX_SAFE_COMPONENT_LENGTH,
+      MAX_SAFE_BUILD_LENGTH,
+      MAX_LENGTH
+    } = require_constants();
+    var debug = require_debug();
+    exports2 = module2.exports = {};
+    var re = exports2.re = [];
+    var safeRe = exports2.safeRe = [];
+    var src = exports2.src = [];
+    var safeSrc = exports2.safeSrc = [];
+    var t = exports2.t = {};
+    var R = 0;
+    var LETTERDASHNUMBER = "[a-zA-Z0-9-]";
+    var safeRegexReplacements = [
+      ["\\s", 1],
+      ["\\d", MAX_LENGTH],
+      [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH]
+    ];
+    var makeSafeRegex = (value) => {
+      for (const [token, max] of safeRegexReplacements) {
+        value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`);
+      }
+      return value;
+    };
+    var createToken = (name, value, isGlobal) => {
+      const safe = makeSafeRegex(value);
+      const index = R++;
+      debug(name, index, value);
+      t[name] = index;
+      src[index] = value;
+      safeSrc[index] = safe;
+      re[index] = new RegExp(value, isGlobal ? "g" : void 0);
+      safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0);
+    };
+    createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*");
+    createToken("NUMERICIDENTIFIERLOOSE", "\\d+");
+    createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`);
+    createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`);
+    createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`);
+    createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIER]})`);
+    createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIERLOOSE]})`);
+    createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`);
+    createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`);
+    createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`);
+    createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`);
+    createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`);
+    createToken("FULL", `^${src[t.FULLPLAIN]}$`);
+    createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`);
+    createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`);
+    createToken("GTLT", "((?:<|>)?=?)");
+    createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);
+    createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`);
+    createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`);
+    createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`);
+    createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`);
+    createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);
+    createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`);
+    createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?(?:${src[t.BUILD]})?(?:$|[^\\d])`);
+    createToken("COERCERTL", src[t.COERCE], true);
+    createToken("COERCERTLFULL", src[t.COERCEFULL], true);
+    createToken("LONETILDE", "(?:~>?)");
+    createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true);
+    exports2.tildeTrimReplace = "$1~";
+    createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`);
+    createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("LONECARET", "(?:\\^)");
+    createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true);
+    exports2.caretTrimReplace = "$1^";
+    createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`);
+    createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`);
+    createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`);
+    createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true);
+    exports2.comparatorTrimReplace = "$1$2$3";
+    createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`);
+    createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`);
+    createToken("STAR", "(<|>)?=?\\s*\\*");
+    createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$");
+    createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$");
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js
+var require_parse_options = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js"(exports2, module2) {
+    "use strict";
+    var looseOption = Object.freeze({ loose: true });
+    var emptyOpts = Object.freeze({});
+    var parseOptions = (options) => {
+      if (!options) {
+        return emptyOpts;
+      }
+      if (typeof options !== "object") {
+        return looseOption;
+      }
+      return options;
+    };
+    module2.exports = parseOptions;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js
+var require_identifiers = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js"(exports2, module2) {
+    "use strict";
+    var numeric = /^[0-9]+$/;
+    var compareIdentifiers = (a, b) => {
+      if (typeof a === "number" && typeof b === "number") {
+        return a === b ? 0 : a < b ? -1 : 1;
+      }
+      const anum = numeric.test(a);
+      const bnum = numeric.test(b);
+      if (anum && bnum) {
+        a = +a;
+        b = +b;
+      }
+      return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1;
+    };
+    var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a);
+    module2.exports = {
+      compareIdentifiers,
+      rcompareIdentifiers
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js
+var require_semver = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js"(exports2, module2) {
+    "use strict";
+    var debug = require_debug();
+    var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
+    var { safeRe: re, t } = require_re();
+    var parseOptions = require_parse_options();
+    var { compareIdentifiers } = require_identifiers();
+    var isPrereleaseIdentifier = (prerelease, identifier) => {
+      const identifiers = identifier.split(".");
+      if (identifiers.length > prerelease.length) {
+        return false;
+      }
+      for (let i = 0; i < identifiers.length; i++) {
+        if (compareIdentifiers(prerelease[i], identifiers[i]) !== 0) {
+          return false;
+        }
+      }
+      return true;
+    };
+    var SemVer = class _SemVer {
+      constructor(version3, options) {
+        options = parseOptions(options);
+        if (version3 instanceof _SemVer) {
+          if (version3.loose === !!options.loose && version3.includePrerelease === !!options.includePrerelease) {
+            return version3;
+          } else {
+            version3 = version3.version;
+          }
+        } else if (typeof version3 !== "string") {
+          throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version3}".`);
+        }
+        if (version3.length > MAX_LENGTH) {
+          throw new TypeError(
+            `version is longer than ${MAX_LENGTH} characters`
+          );
+        }
+        debug("SemVer", version3, options);
+        this.options = options;
+        this.loose = !!options.loose;
+        this.includePrerelease = !!options.includePrerelease;
+        const m = version3.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]);
+        if (!m) {
+          throw new TypeError(`Invalid Version: ${version3}`);
+        }
+        this.raw = version3;
+        this.major = +m[1];
+        this.minor = +m[2];
+        this.patch = +m[3];
+        if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
+          throw new TypeError("Invalid major version");
+        }
+        if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
+          throw new TypeError("Invalid minor version");
+        }
+        if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
+          throw new TypeError("Invalid patch version");
+        }
+        if (!m[4]) {
+          this.prerelease = [];
+        } else {
+          this.prerelease = m[4].split(".").map((id) => {
+            if (/^[0-9]+$/.test(id)) {
+              const num = +id;
+              if (num >= 0 && num < MAX_SAFE_INTEGER) {
+                return num;
+              }
+            }
+            return id;
+          });
+        }
+        this.build = m[5] ? m[5].split(".") : [];
+        this.format();
+      }
+      format() {
+        this.version = `${this.major}.${this.minor}.${this.patch}`;
+        if (this.prerelease.length) {
+          this.version += `-${this.prerelease.join(".")}`;
+        }
+        return this.version;
+      }
+      toString() {
+        return this.version;
+      }
+      compare(other) {
+        debug("SemVer.compare", this.version, this.options, other);
+        if (!(other instanceof _SemVer)) {
+          if (typeof other === "string" && other === this.version) {
+            return 0;
+          }
+          other = new _SemVer(other, this.options);
+        }
+        if (other.version === this.version) {
+          return 0;
+        }
+        return this.compareMain(other) || this.comparePre(other);
+      }
+      compareMain(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        if (this.major < other.major) {
+          return -1;
+        }
+        if (this.major > other.major) {
+          return 1;
+        }
+        if (this.minor < other.minor) {
+          return -1;
+        }
+        if (this.minor > other.minor) {
+          return 1;
+        }
+        if (this.patch < other.patch) {
+          return -1;
+        }
+        if (this.patch > other.patch) {
+          return 1;
+        }
+        return 0;
+      }
+      comparePre(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        if (this.prerelease.length && !other.prerelease.length) {
+          return -1;
+        } else if (!this.prerelease.length && other.prerelease.length) {
+          return 1;
+        } else if (!this.prerelease.length && !other.prerelease.length) {
+          return 0;
+        }
+        let i = 0;
+        do {
+          const a = this.prerelease[i];
+          const b = other.prerelease[i];
+          debug("prerelease compare", i, a, b);
+          if (a === void 0 && b === void 0) {
+            return 0;
+          } else if (b === void 0) {
+            return 1;
+          } else if (a === void 0) {
+            return -1;
+          } else if (a === b) {
+            continue;
+          } else {
+            return compareIdentifiers(a, b);
+          }
+        } while (++i);
+      }
+      compareBuild(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        let i = 0;
+        do {
+          const a = this.build[i];
+          const b = other.build[i];
+          debug("build compare", i, a, b);
+          if (a === void 0 && b === void 0) {
+            return 0;
+          } else if (b === void 0) {
+            return 1;
+          } else if (a === void 0) {
+            return -1;
+          } else if (a === b) {
+            continue;
+          } else {
+            return compareIdentifiers(a, b);
+          }
+        } while (++i);
+      }
+      // preminor will bump the version up to the next minor release, and immediately
+      // down to pre-release. premajor and prepatch work the same way.
+      inc(release, identifier, identifierBase) {
+        if (release.startsWith("pre")) {
+          if (!identifier && identifierBase === false) {
+            throw new Error("invalid increment argument: identifier is empty");
+          }
+          if (identifier) {
+            const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]);
+            if (!match || match[1] !== identifier) {
+              throw new Error(`invalid identifier: ${identifier}`);
+            }
+          }
+        }
+        switch (release) {
+          case "premajor":
+            this.prerelease.length = 0;
+            this.patch = 0;
+            this.minor = 0;
+            this.major++;
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "preminor":
+            this.prerelease.length = 0;
+            this.patch = 0;
+            this.minor++;
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "prepatch":
+            this.prerelease.length = 0;
+            this.inc("patch", identifier, identifierBase);
+            this.inc("pre", identifier, identifierBase);
+            break;
+          // If the input is a non-prerelease version, this acts the same as
+          // prepatch.
+          case "prerelease":
+            if (this.prerelease.length === 0) {
+              this.inc("patch", identifier, identifierBase);
+            }
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "release":
+            if (this.prerelease.length === 0) {
+              throw new Error(`version ${this.raw} is not a prerelease`);
+            }
+            this.prerelease.length = 0;
+            break;
+          case "major":
+            if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {
+              this.major++;
+            }
+            this.minor = 0;
+            this.patch = 0;
+            this.prerelease = [];
+            break;
+          case "minor":
+            if (this.patch !== 0 || this.prerelease.length === 0) {
+              this.minor++;
+            }
+            this.patch = 0;
+            this.prerelease = [];
+            break;
+          case "patch":
+            if (this.prerelease.length === 0) {
+              this.patch++;
+            }
+            this.prerelease = [];
+            break;
+          // This probably shouldn't be used publicly.
+          // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
+          case "pre": {
+            const base = Number(identifierBase) ? 1 : 0;
+            if (this.prerelease.length === 0) {
+              this.prerelease = [base];
+            } else {
+              let i = this.prerelease.length;
+              while (--i >= 0) {
+                if (typeof this.prerelease[i] === "number") {
+                  this.prerelease[i]++;
+                  i = -2;
+                }
+              }
+              if (i === -1) {
+                if (identifier === this.prerelease.join(".") && identifierBase === false) {
+                  throw new Error("invalid increment argument: identifier already exists");
+                }
+                this.prerelease.push(base);
+              }
+            }
+            if (identifier) {
+              let prerelease = [identifier, base];
+              if (identifierBase === false) {
+                prerelease = [identifier];
+              }
+              if (isPrereleaseIdentifier(this.prerelease, identifier)) {
+                const prereleaseBase = this.prerelease[identifier.split(".").length];
+                if (isNaN(prereleaseBase)) {
+                  this.prerelease = prerelease;
+                }
+              } else {
+                this.prerelease = prerelease;
+              }
+            }
+            break;
+          }
+          default:
+            throw new Error(`invalid increment argument: ${release}`);
+        }
+        this.raw = this.format();
+        if (this.build.length) {
+          this.raw += `+${this.build.join(".")}`;
+        }
+        return this;
+      }
+    };
+    module2.exports = SemVer;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js
+var require_parse = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var parse3 = (version3, options, throwErrors = false) => {
+      if (version3 instanceof SemVer) {
+        return version3;
+      }
+      try {
+        return new SemVer(version3, options);
+      } catch (er) {
+        if (!throwErrors) {
+          return null;
+        }
+        throw er;
+      }
+    };
+    module2.exports = parse3;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js
+var require_valid = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var valid = (version3, options) => {
+      const v = parse3(version3, options);
+      return v ? v.version : null;
+    };
+    module2.exports = valid;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js
+var require_clean = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var clean = (version3, options) => {
+      const s = parse3(version3.trim().replace(/^[=v]+/, ""), options);
+      return s ? s.version : null;
+    };
+    module2.exports = clean;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js
+var require_inc = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var inc = (version3, release, options, identifier, identifierBase) => {
+      if (typeof options === "string") {
+        identifierBase = identifier;
+        identifier = options;
+        options = void 0;
+      }
+      try {
+        return new SemVer(
+          version3 instanceof SemVer ? version3.version : version3,
+          options
+        ).inc(release, identifier, identifierBase).version;
+      } catch (er) {
+        return null;
+      }
+    };
+    module2.exports = inc;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js
+var require_diff = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var diff = (version1, version22) => {
+      const v12 = parse3(version1, null, true);
+      const v2 = parse3(version22, null, true);
+      const comparison = v12.compare(v2);
+      if (comparison === 0) {
+        return null;
+      }
+      const v1Higher = comparison > 0;
+      const highVersion = v1Higher ? v12 : v2;
+      const lowVersion = v1Higher ? v2 : v12;
+      const highHasPre = !!highVersion.prerelease.length;
+      const lowHasPre = !!lowVersion.prerelease.length;
+      if (lowHasPre && !highHasPre) {
+        if (!lowVersion.patch && !lowVersion.minor) {
+          return "major";
+        }
+        if (lowVersion.compareMain(highVersion) === 0) {
+          if (lowVersion.minor && !lowVersion.patch) {
+            return "minor";
+          }
+          return "patch";
+        }
+      }
+      const prefix = highHasPre ? "pre" : "";
+      if (v12.major !== v2.major) {
+        return prefix + "major";
+      }
+      if (v12.minor !== v2.minor) {
+        return prefix + "minor";
+      }
+      if (v12.patch !== v2.patch) {
+        return prefix + "patch";
+      }
+      return "prerelease";
+    };
+    module2.exports = diff;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js
+var require_major = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var major = (a, loose) => new SemVer(a, loose).major;
+    module2.exports = major;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js
+var require_minor = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var minor = (a, loose) => new SemVer(a, loose).minor;
+    module2.exports = minor;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js
+var require_patch = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var patch = (a, loose) => new SemVer(a, loose).patch;
+    module2.exports = patch;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js
+var require_prerelease = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var prerelease = (version3, options) => {
+      const parsed = parse3(version3, options);
+      return parsed && parsed.prerelease.length ? parsed.prerelease : null;
+    };
+    module2.exports = prerelease;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js
+var require_compare = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
+    module2.exports = compare;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js
+var require_rcompare = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var rcompare = (a, b, loose) => compare(b, a, loose);
+    module2.exports = rcompare;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js
+var require_compare_loose = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var compareLoose = (a, b) => compare(a, b, true);
+    module2.exports = compareLoose;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js
+var require_compare_build = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var compareBuild = (a, b, loose) => {
+      const versionA = new SemVer(a, loose);
+      const versionB = new SemVer(b, loose);
+      return versionA.compare(versionB) || versionA.compareBuild(versionB);
+    };
+    module2.exports = compareBuild;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js
+var require_sort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js"(exports2, module2) {
+    "use strict";
+    var compareBuild = require_compare_build();
+    var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
+    module2.exports = sort;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js
+var require_rsort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js"(exports2, module2) {
+    "use strict";
+    var compareBuild = require_compare_build();
+    var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
+    module2.exports = rsort;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js
+var require_gt = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var gt = (a, b, loose) => compare(a, b, loose) > 0;
+    module2.exports = gt;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js
+var require_lt = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var lt = (a, b, loose) => compare(a, b, loose) < 0;
+    module2.exports = lt;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js
+var require_eq = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var eq = (a, b, loose) => compare(a, b, loose) === 0;
+    module2.exports = eq;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js
+var require_neq = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var neq = (a, b, loose) => compare(a, b, loose) !== 0;
+    module2.exports = neq;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js
+var require_gte = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var gte = (a, b, loose) => compare(a, b, loose) >= 0;
+    module2.exports = gte;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js
+var require_lte = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var lte = (a, b, loose) => compare(a, b, loose) <= 0;
+    module2.exports = lte;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js
+var require_cmp = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js"(exports2, module2) {
+    "use strict";
+    var eq = require_eq();
+    var neq = require_neq();
+    var gt = require_gt();
+    var gte = require_gte();
+    var lt = require_lt();
+    var lte = require_lte();
+    var cmp = (a, op, b, loose) => {
+      switch (op) {
+        case "===":
+          if (typeof a === "object") {
+            a = a.version;
+          }
+          if (typeof b === "object") {
+            b = b.version;
+          }
+          return a === b;
+        case "!==":
+          if (typeof a === "object") {
+            a = a.version;
+          }
+          if (typeof b === "object") {
+            b = b.version;
+          }
+          return a !== b;
+        case "":
+        case "=":
+        case "==":
+          return eq(a, b, loose);
+        case "!=":
+          return neq(a, b, loose);
+        case ">":
+          return gt(a, b, loose);
+        case ">=":
+          return gte(a, b, loose);
+        case "<":
+          return lt(a, b, loose);
+        case "<=":
+          return lte(a, b, loose);
+        default:
+          throw new TypeError(`Invalid operator: ${op}`);
+      }
+    };
+    module2.exports = cmp;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js
+var require_coerce = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var parse3 = require_parse();
+    var { safeRe: re, t } = require_re();
+    var coerce = (version3, options) => {
+      if (version3 instanceof SemVer) {
+        return version3;
+      }
+      if (typeof version3 === "number") {
+        version3 = String(version3);
+      }
+      if (typeof version3 !== "string") {
+        return null;
+      }
+      options = options || {};
+      let match = null;
+      if (!options.rtl) {
+        match = version3.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
+      } else {
+        const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL];
+        let next;
+        while ((next = coerceRtlRegex.exec(version3)) && (!match || match.index + match[0].length !== version3.length)) {
+          if (!match || next.index + next[0].length !== match.index + match[0].length) {
+            match = next;
+          }
+          coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
+        }
+        coerceRtlRegex.lastIndex = -1;
+      }
+      if (match === null) {
+        return null;
+      }
+      const major = match[2];
+      const minor = match[3] || "0";
+      const patch = match[4] || "0";
+      const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
+      const build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
+      return parse3(`${major}.${minor}.${patch}${prerelease}${build}`, options);
+    };
+    module2.exports = coerce;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js
+var require_truncate = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var constants2 = require_constants();
+    var SemVer = require_semver();
+    var truncate = (version3, truncation, options) => {
+      if (!constants2.RELEASE_TYPES.includes(truncation)) {
+        return null;
+      }
+      const clonedVersion = cloneInputVersion(version3, options);
+      return clonedVersion && doTruncation(clonedVersion, truncation);
+    };
+    var cloneInputVersion = (version3, options) => {
+      const versionStringToParse = version3 instanceof SemVer ? version3.version : version3;
+      return parse3(versionStringToParse, options);
+    };
+    var doTruncation = (version3, truncation) => {
+      if (isPrerelease(truncation)) {
+        return version3.version;
+      }
+      version3.prerelease = [];
+      switch (truncation) {
+        case "major":
+          version3.minor = 0;
+          version3.patch = 0;
+          break;
+        case "minor":
+          version3.patch = 0;
+          break;
+      }
+      return version3.format();
+    };
+    var isPrerelease = (type) => {
+      return type.startsWith("pre");
+    };
+    module2.exports = truncate;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js
+var require_lrucache = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js"(exports2, module2) {
+    "use strict";
+    var LRUCache = class {
+      constructor() {
+        this.max = 1e3;
+        this.map = /* @__PURE__ */ new Map();
+      }
+      get(key) {
+        const value = this.map.get(key);
+        if (value === void 0) {
+          return void 0;
+        } else {
+          this.map.delete(key);
+          this.map.set(key, value);
+          return value;
+        }
+      }
+      delete(key) {
+        return this.map.delete(key);
+      }
+      set(key, value) {
+        const deleted = this.delete(key);
+        if (!deleted && value !== void 0) {
+          if (this.map.size >= this.max) {
+            const firstKey = this.map.keys().next().value;
+            this.delete(firstKey);
+          }
+          this.map.set(key, value);
+        }
+        return this;
+      }
+    };
+    module2.exports = LRUCache;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js
+var require_range = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js"(exports2, module2) {
+    "use strict";
+    var SPACE_CHARACTERS = /\s+/g;
+    var Range = class _Range {
+      constructor(range4, options) {
+        options = parseOptions(options);
+        if (range4 instanceof _Range) {
+          if (range4.loose === !!options.loose && range4.includePrerelease === !!options.includePrerelease) {
+            return range4;
+          } else {
+            return new _Range(range4.raw, options);
+          }
+        }
+        if (range4 instanceof Comparator) {
+          this.raw = range4.value;
+          this.set = [[range4]];
+          this.formatted = void 0;
+          return this;
+        }
+        this.options = options;
+        this.loose = !!options.loose;
+        this.includePrerelease = !!options.includePrerelease;
+        this.raw = range4.trim().replace(SPACE_CHARACTERS, " ");
+        this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length);
+        if (!this.set.length) {
+          throw new TypeError(`Invalid SemVer Range: ${this.raw}`);
+        }
+        if (this.set.length > 1) {
+          const first = this.set[0];
+          this.set = this.set.filter((c) => !isNullSet(c[0]));
+          if (this.set.length === 0) {
+            this.set = [first];
+          } else if (this.set.length > 1) {
+            for (const c of this.set) {
+              if (c.length === 1 && isAny(c[0])) {
+                this.set = [c];
+                break;
+              }
+            }
+          }
+        }
+        this.formatted = void 0;
+      }
+      get range() {
+        if (this.formatted === void 0) {
+          this.formatted = "";
+          for (let i = 0; i < this.set.length; i++) {
+            if (i > 0) {
+              this.formatted += "||";
+            }
+            const comps = this.set[i];
+            for (let k = 0; k < comps.length; k++) {
+              if (k > 0) {
+                this.formatted += " ";
+              }
+              this.formatted += comps[k].toString().trim();
+            }
+          }
+        }
+        return this.formatted;
+      }
+      format() {
+        return this.range;
+      }
+      toString() {
+        return this.range;
+      }
+      parseRange(range4) {
+        range4 = range4.replace(BUILDSTRIPRE, "");
+        const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE);
+        const memoKey = memoOpts + ":" + range4;
+        const cached = cache.get(memoKey);
+        if (cached) {
+          return cached;
+        }
+        const loose = this.options.loose;
+        const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE];
+        range4 = range4.replace(hr, hyphenReplace(this.options.includePrerelease));
+        debug("hyphen replace", range4);
+        range4 = range4.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
+        debug("comparator trim", range4);
+        range4 = range4.replace(re[t.TILDETRIM], tildeTrimReplace);
+        debug("tilde trim", range4);
+        range4 = range4.replace(re[t.CARETTRIM], caretTrimReplace);
+        debug("caret trim", range4);
+        let rangeList = range4.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options));
+        if (loose) {
+          rangeList = rangeList.filter((comp) => {
+            debug("loose invalid filter", comp, this.options);
+            return !!comp.match(re[t.COMPARATORLOOSE]);
+          });
+        }
+        debug("range list", rangeList);
+        const rangeMap = /* @__PURE__ */ new Map();
+        const comparators = rangeList.map((comp) => new Comparator(comp, this.options));
+        for (const comp of comparators) {
+          if (isNullSet(comp)) {
+            return [comp];
+          }
+          rangeMap.set(comp.value, comp);
+        }
+        if (rangeMap.size > 1 && rangeMap.has("")) {
+          rangeMap.delete("");
+        }
+        const result = [...rangeMap.values()];
+        cache.set(memoKey, result);
+        return result;
+      }
+      intersects(range4, options) {
+        if (!(range4 instanceof _Range)) {
+          throw new TypeError("a Range is required");
+        }
+        return this.set.some((thisComparators) => {
+          return isSatisfiable(thisComparators, options) && range4.set.some((rangeComparators) => {
+            return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => {
+              return rangeComparators.every((rangeComparator) => {
+                return thisComparator.intersects(rangeComparator, options);
+              });
+            });
+          });
+        });
+      }
+      // if ANY of the sets match ALL of its comparators, then pass
+      test(version3) {
+        if (!version3) {
+          return false;
+        }
+        if (typeof version3 === "string") {
+          try {
+            version3 = new SemVer(version3, this.options);
+          } catch (er) {
+            return false;
+          }
+        }
+        for (let i = 0; i < this.set.length; i++) {
+          if (testSet(this.set[i], version3, this.options)) {
+            return true;
+          }
+        }
+        return false;
+      }
+    };
+    module2.exports = Range;
+    var LRU = require_lrucache();
+    var cache = new LRU();
+    var parseOptions = require_parse_options();
+    var Comparator = require_comparator();
+    var debug = require_debug();
+    var SemVer = require_semver();
+    var {
+      safeRe: re,
+      src,
+      t,
+      comparatorTrimReplace,
+      tildeTrimReplace,
+      caretTrimReplace
+    } = require_re();
+    var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants();
+    var BUILDSTRIPRE = new RegExp(src[t.BUILD], "g");
+    var isNullSet = (c) => c.value === "<0.0.0-0";
+    var isAny = (c) => c.value === "";
+    var isSatisfiable = (comparators, options) => {
+      let result = true;
+      const remainingComparators = comparators.slice();
+      let testComparator = remainingComparators.pop();
+      while (result && remainingComparators.length) {
+        result = remainingComparators.every((otherComparator) => {
+          return testComparator.intersects(otherComparator, options);
+        });
+        testComparator = remainingComparators.pop();
+      }
+      return result;
+    };
+    var parseComparator = (comp, options) => {
+      comp = comp.replace(re[t.BUILD], "");
+      debug("comp", comp, options);
+      comp = replaceCarets(comp, options);
+      debug("caret", comp);
+      comp = replaceTildes(comp, options);
+      debug("tildes", comp);
+      comp = replaceXRanges(comp, options);
+      debug("xrange", comp);
+      comp = replaceStars(comp, options);
+      debug("stars", comp);
+      return comp;
+    };
+    var isX = (id) => !id || id.toLowerCase() === "x" || id === "*";
+    var invalidXRangeOrder = (M, m, p) => isX(M) && !isX(m) || isX(m) && p && !isX(p);
+    var replaceTildes = (comp, options) => {
+      return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" ");
+    };
+    var replaceTilde = (comp, options) => {
+      const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
+      const z = options.includePrerelease ? "-0" : "";
+      return comp.replace(r, (_, M, m, p, pr) => {
+        debug("tilde", comp, _, M, m, p, pr);
+        let ret;
+        if (isX(M)) {
+          ret = "";
+        } else if (isX(m)) {
+          ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
+        } else if (isX(p)) {
+          ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
+        } else if (pr) {
+          debug("replaceTilde pr", pr);
+          ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
+        } else {
+          ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
+        }
+        debug("tilde return", ret);
+        return ret;
+      });
+    };
+    var replaceCarets = (comp, options) => {
+      return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" ");
+    };
+    var replaceCaret = (comp, options) => {
+      debug("caret", comp, options);
+      const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET];
+      const z = options.includePrerelease ? "-0" : "";
+      return comp.replace(r, (_, M, m, p, pr) => {
+        debug("caret", comp, _, M, m, p, pr);
+        let ret;
+        if (isX(M)) {
+          ret = "";
+        } else if (isX(m)) {
+          ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
+        } else if (isX(p)) {
+          if (M === "0") {
+            ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
+          } else {
+            ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`;
+          }
+        } else if (pr) {
+          debug("replaceCaret pr", pr);
+          if (M === "0") {
+            if (m === "0") {
+              ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`;
+            } else {
+              ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
+            }
+          } else {
+            ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`;
+          }
+        } else {
+          debug("no pr");
+          if (M === "0") {
+            if (m === "0") {
+              ret = `>=${M}.${m}.${p} <${M}.${m}.${+p + 1}-0`;
+            } else {
+              ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
+            }
+          } else {
+            ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`;
+          }
+        }
+        debug("caret return", ret);
+        return ret;
+      });
+    };
+    var replaceXRanges = (comp, options) => {
+      debug("replaceXRanges", comp, options);
+      return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" ");
+    };
+    var replaceXRange = (comp, options) => {
+      comp = comp.trim();
+      const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE];
+      return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
+        debug("xRange", comp, ret, gtlt, M, m, p, pr);
+        if (invalidXRangeOrder(M, m, p)) {
+          return comp;
+        }
+        const xM = isX(M);
+        const xm = xM || isX(m);
+        const xp = xm || isX(p);
+        const anyX = xp;
+        if (gtlt === "=" && anyX) {
+          gtlt = "";
+        }
+        pr = options.includePrerelease ? "-0" : "";
+        if (xM) {
+          if (gtlt === ">" || gtlt === "<") {
+            ret = "<0.0.0-0";
+          } else {
+            ret = "*";
+          }
+        } else if (gtlt && anyX) {
+          if (xm) {
+            m = 0;
+          }
+          p = 0;
+          if (gtlt === ">") {
+            gtlt = ">=";
+            if (xm) {
+              M = +M + 1;
+              m = 0;
+              p = 0;
+            } else {
+              m = +m + 1;
+              p = 0;
+            }
+          } else if (gtlt === "<=") {
+            gtlt = "<";
+            if (xm) {
+              M = +M + 1;
+            } else {
+              m = +m + 1;
+            }
+          }
+          if (gtlt === "<") {
+            pr = "-0";
+          }
+          ret = `${gtlt + M}.${m}.${p}${pr}`;
+        } else if (xm) {
+          ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`;
+        } else if (xp) {
+          ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`;
+        }
+        debug("xRange return", ret);
+        return ret;
+      });
+    };
+    var replaceStars = (comp, options) => {
+      debug("replaceStars", comp, options);
+      return comp.trim().replace(re[t.STAR], "");
+    };
+    var replaceGTE0 = (comp, options) => {
+      debug("replaceGTE0", comp, options);
+      return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], "");
+    };
+    var hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => {
+      if (isX(fM)) {
+        from = "";
+      } else if (isX(fm)) {
+        from = `>=${fM}.0.0${incPr ? "-0" : ""}`;
+      } else if (isX(fp)) {
+        from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`;
+      } else if (fpr) {
+        from = `>=${from}`;
+      } else {
+        from = `>=${from}${incPr ? "-0" : ""}`;
+      }
+      if (isX(tM)) {
+        to = "";
+      } else if (isX(tm)) {
+        to = `<${+tM + 1}.0.0-0`;
+      } else if (isX(tp)) {
+        to = `<${tM}.${+tm + 1}.0-0`;
+      } else if (tpr) {
+        to = `<=${tM}.${tm}.${tp}-${tpr}`;
+      } else if (incPr) {
+        to = `<${tM}.${tm}.${+tp + 1}-0`;
+      } else {
+        to = `<=${to}`;
+      }
+      return `${from} ${to}`.trim();
+    };
+    var testSet = (set, version3, options) => {
+      for (let i = 0; i < set.length; i++) {
+        if (!set[i].test(version3)) {
+          return false;
+        }
+      }
+      if (version3.prerelease.length && !options.includePrerelease) {
+        for (let i = 0; i < set.length; i++) {
+          debug(set[i].semver);
+          if (set[i].semver === Comparator.ANY) {
+            continue;
+          }
+          if (set[i].semver.prerelease.length > 0) {
+            const allowed = set[i].semver;
+            if (allowed.major === version3.major && allowed.minor === version3.minor && allowed.patch === version3.patch) {
+              return true;
+            }
+          }
+        }
+        return false;
+      }
+      return true;
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js
+var require_comparator = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js"(exports2, module2) {
+    "use strict";
+    var ANY = /* @__PURE__ */ Symbol("SemVer ANY");
+    var Comparator = class _Comparator {
+      static get ANY() {
+        return ANY;
+      }
+      constructor(comp, options) {
+        options = parseOptions(options);
+        if (comp instanceof _Comparator) {
+          if (comp.loose === !!options.loose) {
+            return comp;
+          } else {
+            comp = comp.value;
+          }
+        }
+        comp = comp.trim().split(/\s+/).join(" ");
+        debug("comparator", comp, options);
+        this.options = options;
+        this.loose = !!options.loose;
+        this.parse(comp);
+        if (this.semver === ANY) {
+          this.value = "";
+        } else {
+          this.value = this.operator + this.semver.version;
+        }
+        debug("comp", this);
+      }
+      parse(comp) {
+        const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR];
+        const m = comp.match(r);
+        if (!m) {
+          throw new TypeError(`Invalid comparator: ${comp}`);
+        }
+        this.operator = m[1] !== void 0 ? m[1] : "";
+        if (this.operator === "=") {
+          this.operator = "";
+        }
+        if (!m[2]) {
+          this.semver = ANY;
+        } else {
+          this.semver = new SemVer(m[2], this.options.loose);
+        }
+      }
+      toString() {
+        return this.value;
+      }
+      test(version3) {
+        debug("Comparator.test", version3, this.options.loose);
+        if (this.semver === ANY || version3 === ANY) {
+          return true;
+        }
+        if (typeof version3 === "string") {
+          try {
+            version3 = new SemVer(version3, this.options);
+          } catch (er) {
+            return false;
+          }
+        }
+        return cmp(version3, this.operator, this.semver, this.options);
+      }
+      intersects(comp, options) {
+        if (!(comp instanceof _Comparator)) {
+          throw new TypeError("a Comparator is required");
+        }
+        if (this.operator === "") {
+          if (this.value === "") {
+            return true;
+          }
+          return new Range(comp.value, options).test(this.value);
+        } else if (comp.operator === "") {
+          if (comp.value === "") {
+            return true;
+          }
+          return new Range(this.value, options).test(comp.semver);
+        }
+        options = parseOptions(options);
+        if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) {
+          return false;
+        }
+        if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) {
+          return false;
+        }
+        if (this.operator.startsWith(">") && comp.operator.startsWith(">")) {
+          return true;
+        }
+        if (this.operator.startsWith("<") && comp.operator.startsWith("<")) {
+          return true;
+        }
+        if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) {
+          return true;
+        }
+        if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) {
+          return true;
+        }
+        if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) {
+          return true;
+        }
+        return false;
+      }
+    };
+    module2.exports = Comparator;
+    var parseOptions = require_parse_options();
+    var { safeRe: re, t } = require_re();
+    var cmp = require_cmp();
+    var debug = require_debug();
+    var SemVer = require_semver();
+    var Range = require_range();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js
+var require_satisfies = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var satisfies = (version3, range4, options) => {
+      try {
+        range4 = new Range(range4, options);
+      } catch (er) {
+        return false;
+      }
+      return range4.test(version3);
+    };
+    module2.exports = satisfies;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js
+var require_to_comparators = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var toComparators = (range4, options) => new Range(range4, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" "));
+    module2.exports = toComparators;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js
+var require_max_satisfying = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var maxSatisfying = (versions, range4, options) => {
+      let max = null;
+      let maxSV = null;
+      let rangeObj = null;
+      try {
+        rangeObj = new Range(range4, options);
+      } catch (er) {
+        return null;
+      }
+      versions.forEach((v) => {
+        if (rangeObj.test(v)) {
+          if (!max || maxSV.compare(v) === -1) {
+            max = v;
+            maxSV = new SemVer(max, options);
+          }
+        }
+      });
+      return max;
+    };
+    module2.exports = maxSatisfying;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js
+var require_min_satisfying = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var minSatisfying = (versions, range4, options) => {
+      let min = null;
+      let minSV = null;
+      let rangeObj = null;
+      try {
+        rangeObj = new Range(range4, options);
+      } catch (er) {
+        return null;
+      }
+      versions.forEach((v) => {
+        if (rangeObj.test(v)) {
+          if (!min || minSV.compare(v) === 1) {
+            min = v;
+            minSV = new SemVer(min, options);
+          }
+        }
+      });
+      return min;
+    };
+    module2.exports = minSatisfying;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js
+var require_min_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var gt = require_gt();
+    var minVersion = (range4, loose) => {
+      range4 = new Range(range4, loose);
+      let minver = new SemVer("0.0.0");
+      if (range4.test(minver)) {
+        return minver;
+      }
+      minver = new SemVer("0.0.0-0");
+      if (range4.test(minver)) {
+        return minver;
+      }
+      minver = null;
+      for (let i = 0; i < range4.set.length; ++i) {
+        const comparators = range4.set[i];
+        let setMin = null;
+        comparators.forEach((comparator) => {
+          const compver = new SemVer(comparator.semver.version);
+          switch (comparator.operator) {
+            case ">":
+              if (compver.prerelease.length === 0) {
+                compver.patch++;
+              } else {
+                compver.prerelease.push(0);
+              }
+              compver.raw = compver.format();
+            /* fallthrough */
+            case "":
+            case ">=":
+              if (!setMin || gt(compver, setMin)) {
+                setMin = compver;
+              }
+              break;
+            case "<":
+            case "<=":
+              break;
+            /* istanbul ignore next */
+            default:
+              throw new Error(`Unexpected operation: ${comparator.operator}`);
+          }
+        });
+        if (setMin && (!minver || gt(minver, setMin))) {
+          minver = setMin;
+        }
+      }
+      if (minver && range4.test(minver)) {
+        return minver;
+      }
+      return null;
+    };
+    module2.exports = minVersion;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js
+var require_valid2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var validRange = (range4, options) => {
+      try {
+        return new Range(range4, options).range || "*";
+      } catch (er) {
+        return null;
+      }
+    };
+    module2.exports = validRange;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js
+var require_outside = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Comparator = require_comparator();
+    var { ANY } = Comparator;
+    var Range = require_range();
+    var satisfies = require_satisfies();
+    var gt = require_gt();
+    var lt = require_lt();
+    var lte = require_lte();
+    var gte = require_gte();
+    var outside = (version3, range4, hilo, options) => {
+      version3 = new SemVer(version3, options);
+      range4 = new Range(range4, options);
+      let gtfn, ltefn, ltfn, comp, ecomp;
+      switch (hilo) {
+        case ">":
+          gtfn = gt;
+          ltefn = lte;
+          ltfn = lt;
+          comp = ">";
+          ecomp = ">=";
+          break;
+        case "<":
+          gtfn = lt;
+          ltefn = gte;
+          ltfn = gt;
+          comp = "<";
+          ecomp = "<=";
+          break;
+        default:
+          throw new TypeError('Must provide a hilo val of "<" or ">"');
+      }
+      if (satisfies(version3, range4, options)) {
+        return false;
+      }
+      for (let i = 0; i < range4.set.length; ++i) {
+        const comparators = range4.set[i];
+        let high = null;
+        let low = null;
+        comparators.forEach((comparator) => {
+          if (comparator.semver === ANY) {
+            comparator = new Comparator(">=0.0.0");
+          }
+          high = high || comparator;
+          low = low || comparator;
+          if (gtfn(comparator.semver, high.semver, options)) {
+            high = comparator;
+          } else if (ltfn(comparator.semver, low.semver, options)) {
+            low = comparator;
+          }
+        });
+        if (high.operator === comp || high.operator === ecomp) {
+          return false;
+        }
+        if ((!low.operator || low.operator === comp) && ltefn(version3, low.semver)) {
+          return false;
+        } else if (low.operator === ecomp && ltfn(version3, low.semver)) {
+          return false;
+        }
+      }
+      return true;
+    };
+    module2.exports = outside;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js
+var require_gtr = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js"(exports2, module2) {
+    "use strict";
+    var outside = require_outside();
+    var gtr = (version3, range4, options) => outside(version3, range4, ">", options);
+    module2.exports = gtr;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js
+var require_ltr = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js"(exports2, module2) {
+    "use strict";
+    var outside = require_outside();
+    var ltr = (version3, range4, options) => outside(version3, range4, "<", options);
+    module2.exports = ltr;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js
+var require_intersects = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var intersects = (r1, r2, options) => {
+      r1 = new Range(r1, options);
+      r2 = new Range(r2, options);
+      return r1.intersects(r2, options);
+    };
+    module2.exports = intersects;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js
+var require_simplify = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js"(exports2, module2) {
+    "use strict";
+    var satisfies = require_satisfies();
+    var compare = require_compare();
+    module2.exports = (versions, range4, options) => {
+      const set = [];
+      let first = null;
+      let prev = null;
+      const v = versions.sort((a, b) => compare(a, b, options));
+      for (const version3 of v) {
+        const included = satisfies(version3, range4, options);
+        if (included) {
+          prev = version3;
+          if (!first) {
+            first = version3;
+          }
+        } else {
+          if (prev) {
+            set.push([first, prev]);
+          }
+          prev = null;
+          first = null;
+        }
+      }
+      if (first) {
+        set.push([first, null]);
+      }
+      const ranges = [];
+      for (const [min, max] of set) {
+        if (min === max) {
+          ranges.push(min);
+        } else if (!max && min === v[0]) {
+          ranges.push("*");
+        } else if (!max) {
+          ranges.push(`>=${min}`);
+        } else if (min === v[0]) {
+          ranges.push(`<=${max}`);
+        } else {
+          ranges.push(`${min} - ${max}`);
+        }
+      }
+      const simplified = ranges.join(" || ");
+      const original = typeof range4.raw === "string" ? range4.raw : String(range4);
+      return simplified.length < original.length ? simplified : range4;
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js
+var require_subset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var Comparator = require_comparator();
+    var { ANY } = Comparator;
+    var satisfies = require_satisfies();
+    var compare = require_compare();
+    var subset = (sub, dom, options = {}) => {
+      if (sub === dom) {
+        return true;
+      }
+      sub = new Range(sub, options);
+      dom = new Range(dom, options);
+      let sawNonNull = false;
+      OUTER: for (const simpleSub of sub.set) {
+        for (const simpleDom of dom.set) {
+          const isSub = simpleSubset(simpleSub, simpleDom, options);
+          sawNonNull = sawNonNull || isSub !== null;
+          if (isSub) {
+            continue OUTER;
+          }
+        }
+        if (sawNonNull) {
+          return false;
+        }
+      }
+      return true;
+    };
+    var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")];
+    var minimumVersion = [new Comparator(">=0.0.0")];
+    var simpleSubset = (sub, dom, options) => {
+      if (sub === dom) {
+        return true;
+      }
+      if (sub.length === 1 && sub[0].semver === ANY) {
+        if (dom.length === 1 && dom[0].semver === ANY) {
+          return true;
+        } else if (options.includePrerelease) {
+          sub = minimumVersionWithPreRelease;
+        } else {
+          sub = minimumVersion;
+        }
+      }
+      if (dom.length === 1 && dom[0].semver === ANY) {
+        if (options.includePrerelease) {
+          return true;
+        } else {
+          dom = minimumVersion;
+        }
+      }
+      const eqSet = /* @__PURE__ */ new Set();
+      let gt, lt;
+      for (const c of sub) {
+        if (c.operator === ">" || c.operator === ">=") {
+          gt = higherGT(gt, c, options);
+        } else if (c.operator === "<" || c.operator === "<=") {
+          lt = lowerLT(lt, c, options);
+        } else {
+          eqSet.add(c.semver);
+        }
+      }
+      if (eqSet.size > 1) {
+        return null;
+      }
+      let gtltComp;
+      if (gt && lt) {
+        gtltComp = compare(gt.semver, lt.semver, options);
+        if (gtltComp > 0) {
+          return null;
+        } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) {
+          return null;
+        }
+      }
+      for (const eq of eqSet) {
+        if (gt && !satisfies(eq, String(gt), options)) {
+          return null;
+        }
+        if (lt && !satisfies(eq, String(lt), options)) {
+          return null;
+        }
+        for (const c of dom) {
+          if (!satisfies(eq, String(c), options)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      let higher, lower;
+      let hasDomLT, hasDomGT;
+      let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false;
+      let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
+      if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) {
+        needDomLTPre = false;
+      }
+      for (const c of dom) {
+        hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">=";
+        hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<=";
+        if (gt) {
+          if (needDomGTPre) {
+            if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) {
+              needDomGTPre = false;
+            }
+          }
+          if (c.operator === ">" || c.operator === ">=") {
+            higher = higherGT(gt, c, options);
+            if (higher === c && higher !== gt) {
+              return false;
+            }
+          } else if (gt.operator === ">=" && !c.test(gt.semver)) {
+            return false;
+          }
+        }
+        if (lt) {
+          if (needDomLTPre) {
+            if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) {
+              needDomLTPre = false;
+            }
+          }
+          if (c.operator === "<" || c.operator === "<=") {
+            lower = lowerLT(lt, c, options);
+            if (lower === c && lower !== lt) {
+              return false;
+            }
+          } else if (lt.operator === "<=" && !c.test(lt.semver)) {
+            return false;
+          }
+        }
+        if (!c.operator && (lt || gt) && gtltComp !== 0) {
+          return false;
+        }
+      }
+      if (gt && hasDomLT && !lt && gtltComp !== 0) {
+        return false;
+      }
+      if (lt && hasDomGT && !gt && gtltComp !== 0) {
+        return false;
+      }
+      if (needDomGTPre || needDomLTPre) {
+        return false;
+      }
+      return true;
+    };
+    var higherGT = (a, b, options) => {
+      if (!a) {
+        return b;
+      }
+      const comp = compare(a.semver, b.semver, options);
+      return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a;
+    };
+    var lowerLT = (a, b, options) => {
+      if (!a) {
+        return b;
+      }
+      const comp = compare(a.semver, b.semver, options);
+      return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a;
+    };
+    module2.exports = subset;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js
+var require_semver2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js"(exports2, module2) {
+    "use strict";
+    var internalRe = require_re();
+    var constants2 = require_constants();
+    var SemVer = require_semver();
+    var identifiers = require_identifiers();
+    var parse3 = require_parse();
+    var valid = require_valid();
+    var clean = require_clean();
+    var inc = require_inc();
+    var diff = require_diff();
+    var major = require_major();
+    var minor = require_minor();
+    var patch = require_patch();
+    var prerelease = require_prerelease();
+    var compare = require_compare();
+    var rcompare = require_rcompare();
+    var compareLoose = require_compare_loose();
+    var compareBuild = require_compare_build();
+    var sort = require_sort();
+    var rsort = require_rsort();
+    var gt = require_gt();
+    var lt = require_lt();
+    var eq = require_eq();
+    var neq = require_neq();
+    var gte = require_gte();
+    var lte = require_lte();
+    var cmp = require_cmp();
+    var coerce = require_coerce();
+    var truncate = require_truncate();
+    var Comparator = require_comparator();
+    var Range = require_range();
+    var satisfies = require_satisfies();
+    var toComparators = require_to_comparators();
+    var maxSatisfying = require_max_satisfying();
+    var minSatisfying = require_min_satisfying();
+    var minVersion = require_min_version();
+    var validRange = require_valid2();
+    var outside = require_outside();
+    var gtr = require_gtr();
+    var ltr = require_ltr();
+    var intersects = require_intersects();
+    var simplifyRange = require_simplify();
+    var subset = require_subset();
+    module2.exports = {
+      parse: parse3,
+      valid,
+      clean,
+      inc,
+      diff,
+      major,
+      minor,
+      patch,
+      prerelease,
+      compare,
+      rcompare,
+      compareLoose,
+      compareBuild,
+      sort,
+      rsort,
+      gt,
+      lt,
+      eq,
+      neq,
+      gte,
+      lte,
+      cmp,
+      coerce,
+      truncate,
+      Comparator,
+      Range,
+      satisfies,
+      toComparators,
+      maxSatisfying,
+      minSatisfying,
+      minVersion,
+      validRange,
+      outside,
+      gtr,
+      ltr,
+      intersects,
+      simplifyRange,
+      subset,
+      SemVer,
+      re: internalRe.re,
+      src: internalRe.src,
+      tokens: internalRe.t,
+      SEMVER_SPEC_VERSION: constants2.SEMVER_SPEC_VERSION,
+      RELEASE_TYPES: constants2.RELEASE_TYPES,
+      compareIdentifiers: identifiers.compareIdentifiers,
+      rcompareIdentifiers: identifiers.rcompareIdentifiers
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json
+var require_cli_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json"(exports2, module2) {
+    module2.exports = { version: "2.1142.0" };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json
+var require_assets_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/AssetManifest",
+      definitions: {
+        AssetManifest: {
+          description: "Definitions for the asset manifest",
+          type: "object",
+          properties: {
+            version: {
+              description: "Version of the manifest",
+              type: "string"
+            },
+            files: {
+              description: "The file assets in this manifest (Default - No files)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FileAsset"
+              }
+            },
+            dockerImages: {
+              description: "The Docker image assets in this manifest (Default - No Docker images)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/DockerImageAsset"
+              }
+            }
+          },
+          required: [
+            "version"
+          ]
+        },
+        FileAsset: {
+          description: "A file asset",
+          type: "object",
+          properties: {
+            displayName: {
+              description: "A display name for this asset (Default - The identifier will be used as the display name)",
+              type: "string"
+            },
+            source: {
+              $ref: "#/definitions/FileSource",
+              description: "Source description for file assets"
+            },
+            destinations: {
+              description: "Destinations for this file asset",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FileDestination"
+              }
+            }
+          },
+          required: [
+            "destinations",
+            "source"
+          ]
+        },
+        FileSource: {
+          description: "Describe the source of a file asset",
+          type: "object",
+          properties: {
+            executable: {
+              description: "External command which will produce the file asset to upload. (Default - Exactly one of `executable` and `path` is required.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            path: {
+              description: "The filesystem object to upload\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `executable` and `path` is required.)",
+              type: "string"
+            },
+            packaging: {
+              description: "Packaging method\n\nOnly allowed when `path` is specified. (Default FILE)",
+              enum: [
+                "file",
+                "zip"
+              ],
+              type: "string"
+            }
+          }
+        },
+        FileDestination: {
+          description: "Where in S3 a file asset needs to be published",
+          type: "object",
+          properties: {
+            bucketName: {
+              description: "The name of the bucket",
+              type: "string"
+            },
+            objectKey: {
+              description: "The destination object key",
+              type: "string"
+            },
+            region: {
+              description: "The region where this asset will need to be published (Default - Current region)",
+              type: "string"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "bucketName",
+            "objectKey"
+          ]
+        },
+        DockerImageAsset: {
+          description: "A file asset",
+          type: "object",
+          properties: {
+            displayName: {
+              description: "A display name for this asset (Default - The identifier will be used as the display name)",
+              type: "string"
+            },
+            source: {
+              $ref: "#/definitions/DockerImageSource",
+              description: "Source description for container assets"
+            },
+            destinations: {
+              description: "Destinations for this container asset",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/DockerImageDestination"
+              }
+            }
+          },
+          required: [
+            "destinations",
+            "source"
+          ]
+        },
+        DockerImageSource: {
+          description: "Properties for how to produce a Docker image from a source",
+          type: "object",
+          properties: {
+            directory: {
+              description: "The directory containing the Docker image build instructions.\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `directory` and `executable` is required)",
+              type: "string"
+            },
+            executable: {
+              description: "A command-line executable that returns the name of a local\nDocker image on stdout after being run. (Default - Exactly one of `directory` and `executable` is required)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            dockerFile: {
+              description: "The name of the file with build instructions\n\nOnly allowed when `directory` is set. (Default Dockerfile)",
+              type: "string"
+            },
+            dockerBuildTarget: {
+              description: "Target build stage in a Dockerfile with multiple build stages\n\nOnly allowed when `directory` is set. (Default - The last stage in the Dockerfile)",
+              type: "string"
+            },
+            dockerBuildArgs: {
+              description: "Additional build arguments\n\nOnly allowed when `directory` is set. (Default - No additional build arguments)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            dockerBuildContexts: {
+              description: "Additional build contexts\n\nOnly allowed when `directory` is set. (Default - No additional build contexts)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            dockerBuildSsh: {
+              description: "SSH agent socket or keys\n\nRequires building with docker buildkit. (Default - No ssh flag is set)",
+              type: "string"
+            },
+            dockerBuildSecrets: {
+              description: "Additional build secrets\n\nOnly allowed when `directory` is set. (Default - No additional build secrets)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            networkMode: {
+              description: "Networking mode for the RUN commands during build. _Requires Docker Engine API v1.25+_.\n\nSpecify this property to build images on a specific networking mode. (Default - no networking mode specified)",
+              type: "string"
+            },
+            platform: {
+              description: "Platform to build for. _Requires Docker Buildx_.\n\nSpecify this property to build images on a specific platform/architecture. (Default - current machine platform)",
+              type: "string"
+            },
+            dockerOutputs: {
+              description: "Outputs (Default - no outputs are passed to the build command (default outputs are used))",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            cacheFrom: {
+              description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/DockerCacheOption"
+              }
+            },
+            cacheTo: {
+              description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)",
+              $ref: "#/definitions/DockerCacheOption"
+            },
+            cacheDisabled: {
+              description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)",
+              type: "boolean"
+            }
+          }
+        },
+        DockerCacheOption: {
+          description: "Options for configuring the Docker cache backend",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)",
+              type: "string"
+            },
+            params: {
+              description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        DockerImageDestination: {
+          description: "Where to publish docker images",
+          type: "object",
+          properties: {
+            repositoryName: {
+              description: "Name of the ECR repository to publish to",
+              type: "string"
+            },
+            imageTag: {
+              description: "Tag of the image to publish",
+              type: "string"
+            },
+            region: {
+              description: "The region where this asset will need to be published (Default - Current region)",
+              type: "string"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "imageTag",
+            "repositoryName"
+          ]
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json
+var require_cloud_assembly_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/AssemblyManifest",
+      definitions: {
+        AssemblyManifest: {
+          description: "A manifest which describes the cloud assembly.",
+          type: "object",
+          properties: {
+            version: {
+              description: "Protocol version",
+              type: "string"
+            },
+            minimumCliVersion: {
+              description: "Required CLI version, if available\n\nIf the manifest producer knows, it can put the minimum version of the CLI\nhere that supports reading this assembly.\n\nIf set, it can be used to show a more informative error message to users. (Default - Minimum CLI version unknown)",
+              type: "string"
+            },
+            artifacts: {
+              description: "The set of artifacts in this assembly. (Default - no artifacts.)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/ArtifactManifest"
+              }
+            },
+            missing: {
+              description: "Missing context information. If this field has values, it means that the\ncloud assembly is not complete and should not be deployed. (Default - no missing context.)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/MissingContext"
+              }
+            },
+            runtime: {
+              description: "Runtime information. (Default - no info.)",
+              $ref: "#/definitions/RuntimeInfo"
+            }
+          },
+          required: [
+            "version"
+          ]
+        },
+        ArtifactManifest: {
+          description: "A manifest for a single artifact within the cloud assembly.",
+          type: "object",
+          properties: {
+            type: {
+              $ref: "#/definitions/ArtifactType",
+              description: "The type of artifact."
+            },
+            environment: {
+              description: "The environment into which this artifact is deployed. (Default - no envrionment.)",
+              type: "string"
+            },
+            metadata: {
+              description: "Associated metadata.\n\nMetadata can be stored directly in the assembly manifest, as well as in a\nseparate file (see `additionalMetadataFile`). It should prefer to be stored\nin the additional file, as that will reduce the size of the assembly\nmanifest in cases of a lot of metdata (which CDK does emit by default). (Default - no metadata.)",
+              type: "object",
+              additionalProperties: {
+                type: "array",
+                items: {
+                  $ref: "#/definitions/MetadataEntry"
+                }
+              }
+            },
+            additionalMetadataFile: {
+              description: "A file with additional metadata entries.\n\nThe schema of this file is exactly the same as the type of the `metadata` field.\nIn other words, that file contains an object mapping construct paths to arrays\nof metadata entries. (Default - no additional metadata)",
+              type: "string"
+            },
+            dependencies: {
+              description: "IDs of artifacts that must be deployed before this artifact. (Default - no dependencies.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            properties: {
+              description: "The set of properties for this artifact (depends on type) (Default - no properties.)",
+              anyOf: [
+                {
+                  $ref: "#/definitions/AwsCloudFormationStackProperties"
+                },
+                {
+                  $ref: "#/definitions/AssetManifestProperties"
+                },
+                {
+                  $ref: "#/definitions/TreeArtifactProperties"
+                },
+                {
+                  $ref: "#/definitions/NestedCloudAssemblyProperties"
+                },
+                {
+                  $ref: "#/definitions/FeatureFlagReportProperties"
+                }
+              ]
+            },
+            displayName: {
+              description: `A string that can be shown to a user to uniquely identify this artifact inside a cloud assembly tree
+
+Is used by the CLI to present a list of stacks to the user in a way that
+makes sense to them. Even though the property name "display name" doesn't
+imply it, this field is used to select stacks as well, so all stacks should
+have a unique display name. (Default - no display name)`,
+              type: "string"
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        ArtifactType: {
+          description: "Type of cloud artifact.",
+          type: "string",
+          enum: [
+            "none",
+            "aws:cloudformation:stack",
+            "cdk:tree",
+            "cdk:asset-manifest",
+            "cdk:cloud-assembly",
+            "cdk:feature-flag-report"
+          ]
+        },
+        MetadataEntry: {
+          description: "A metadata entry in a cloud assembly artifact.",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of the metadata entry.",
+              type: "string"
+            },
+            data: {
+              description: "The data. (Default - no data.)",
+              anyOf: [
+                {
+                  $ref: "#/definitions/FileAssetMetadataEntry"
+                },
+                {
+                  $ref: "#/definitions/ContainerImageAssetMetadataEntry"
+                },
+                {
+                  $ref: "#/definitions/PropertyMutationMetadataEntry"
+                },
+                {
+                  type: "array",
+                  items: {
+                    anyOf: [
+                      {
+                        $ref: "#/definitions/Tag"
+                      },
+                      {
+                        type: "string"
+                      }
+                    ]
+                  }
+                },
+                {
+                  type: [
+                    "string",
+                    "number",
+                    "boolean"
+                  ]
+                },
+                {
+                  description: "Free form data."
+                }
+              ]
+            },
+            trace: {
+              description: "A stack trace for when the entry was created. (Default - no trace.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        FileAssetMetadataEntry: {
+          description: "Metadata Entry spec for files.",
+          type: "object",
+          properties: {
+            packaging: {
+              description: "Requested packaging style",
+              enum: [
+                "file",
+                "zip"
+              ],
+              type: "string"
+            },
+            s3BucketParameter: {
+              description: "Name of parameter where S3 bucket should be passed in",
+              type: "string"
+            },
+            s3KeyParameter: {
+              description: "Name of parameter where S3 key should be passed in",
+              type: "string"
+            },
+            artifactHashParameter: {
+              description: "The name of the parameter where the hash of the bundled asset should be passed in.",
+              type: "string"
+            },
+            id: {
+              description: "Logical identifier for the asset",
+              type: "string"
+            },
+            sourceHash: {
+              description: "The hash of the asset source.",
+              type: "string"
+            },
+            path: {
+              description: "Path on disk to the asset",
+              type: "string"
+            }
+          },
+          required: [
+            "artifactHashParameter",
+            "id",
+            "packaging",
+            "path",
+            "s3BucketParameter",
+            "s3KeyParameter",
+            "sourceHash"
+          ]
+        },
+        ContainerImageAssetMetadataEntry: {
+          description: "Metadata Entry spec for container images.",
+          type: "object",
+          properties: {
+            packaging: {
+              description: "Type of asset",
+              type: "string",
+              const: "container-image"
+            },
+            imageNameParameter: {
+              description: 'ECR Repository name and repo digest (separated by "@sha256:") where this\nimage is stored. (Default undefined If not specified, `repositoryName` and `imageTag` are\nrequired because otherwise how will the stack know where to find the asset,\nha?)',
+              type: "string"
+            },
+            repositoryName: {
+              description: "ECR repository name, if omitted a default name based on the asset's ID is\nused instead. Specify this property if you need to statically address the\nimage, e.g. from a Kubernetes Pod. Note, this is only the repository name,\nwithout the registry and the tag parts. (Default - this parameter is REQUIRED after 1.21.0)",
+              type: "string"
+            },
+            imageTag: {
+              description: "The docker image tag to use for tagging pushed images. This field is\nrequired if `imageParameterName` is ommited (otherwise, the app won't be\nable to find the image). (Default - this parameter is REQUIRED after 1.21.0)",
+              type: "string"
+            },
+            buildArgs: {
+              description: "Build args to pass to the `docker build` command (Default no build args are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            buildContexts: {
+              description: "Build contexts to pass to the `docker build` command (Default no build contexts are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            buildSsh: {
+              description: "SSH agent socket or keys to pass to the `docker build` command (Default no ssh arg is passed)",
+              type: "string"
+            },
+            buildSecrets: {
+              description: "Build secrets to pass to the `docker build` command (Default no build secrets are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            target: {
+              description: "Docker target to build to (Default no build target)",
+              type: "string"
+            },
+            file: {
+              description: "Path to the Dockerfile (relative to the directory). (Default - no file is passed)",
+              type: "string"
+            },
+            networkMode: {
+              description: "Networking mode for the RUN commands during build. (Default - no networking mode specified)",
+              type: "string"
+            },
+            platform: {
+              description: "Platform to build for. _Requires Docker Buildx_. (Default - current machine platform)",
+              type: "string"
+            },
+            outputs: {
+              description: "Outputs to pass to the `docker build` command. (Default - no outputs are passed to the build command (default outputs are used))",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            cacheFrom: {
+              description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ContainerImageAssetCacheOption"
+              }
+            },
+            cacheTo: {
+              description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)",
+              $ref: "#/definitions/ContainerImageAssetCacheOption"
+            },
+            cacheDisabled: {
+              description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)",
+              type: "boolean"
+            },
+            id: {
+              description: "Logical identifier for the asset",
+              type: "string"
+            },
+            sourceHash: {
+              description: "The hash of the asset source.",
+              type: "string"
+            },
+            path: {
+              description: "Path on disk to the asset",
+              type: "string"
+            }
+          },
+          required: [
+            "id",
+            "packaging",
+            "path",
+            "sourceHash"
+          ]
+        },
+        ContainerImageAssetCacheOption: {
+          description: "Options for configuring the Docker cache backend",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)",
+              type: "string"
+            },
+            params: {
+              description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        PropertyMutationMetadataEntry: {
+          description: "Metadata type of a PropertyMutation",
+          type: "object",
+          properties: {
+            propertyName: {
+              description: "Name of the property",
+              type: "string"
+            },
+            stackTrace: {
+              description: "Stack trace of the mutation",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "propertyName",
+            "stackTrace"
+          ]
+        },
+        Tag: {
+          description: "Metadata Entry spec for stack tag.",
+          type: "object",
+          properties: {
+            key: {
+              description: 'Tag key.\n\n(In the actual file on disk this will be cased as "Key", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)',
+              type: "string"
+            },
+            value: {
+              description: 'Tag value.\n\n(In the actual file on disk this will be cased as "Value", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)',
+              type: "string"
+            }
+          },
+          required: [
+            "key",
+            "value"
+          ]
+        },
+        AwsCloudFormationStackProperties: {
+          description: "Artifact properties for CloudFormation stacks.",
+          type: "object",
+          properties: {
+            templateFile: {
+              description: "A file relative to the assembly root which contains the CloudFormation template for this stack.",
+              type: "string"
+            },
+            parameters: {
+              description: "Values for CloudFormation stack parameters that should be passed when the stack is deployed. (Default - No parameters)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            tags: {
+              description: "Values for CloudFormation stack tags that should be passed when the stack is deployed.\n\nN.B.: Tags are also written to stack metadata, under the path of the Stack\nconstruct. Only in CDK CLI v1 are those tags found in metadata used for\nactual deployments; in all stable versions of CDK only the stack tags\ndirectly found in the `tags` property of `AwsCloudFormationStack` artifact\n(i.e., this property) are used. (Default - No tags)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            notificationArns: {
+              description: "SNS Notification ARNs that should receive CloudFormation Stack Events. (Default - No notification arns)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            stackName: {
+              description: "The name to use for the CloudFormation stack. (Default - name derived from artifact ID)",
+              type: "string"
+            },
+            terminationProtection: {
+              description: "Whether to enable termination protection for this stack.",
+              default: false,
+              type: "boolean"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed to deploy the stack (Default - No role is assumed (current credentials are used))",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "External ID to use when assuming role for cloudformation deployments (Default - No external ID)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            },
+            cloudFormationExecutionRoleArn: {
+              description: "The role that is passed to CloudFormation to execute the change set (Default - No role is passed (currently assumed role/credentials are used))",
+              type: "string"
+            },
+            lookupRole: {
+              description: "The role to use to look up values from the target AWS account (Default - No role is assumed (current credentials are used))",
+              $ref: "#/definitions/BootstrapRole"
+            },
+            stackTemplateAssetObjectUrl: {
+              description: "If the stack template has already been included in the asset manifest, its asset URL (Default - Not uploaded yet, upload just before deploying)",
+              type: "string"
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to deploy this stack (Default - No bootstrap stack required)",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "SSM parameter where the bootstrap stack version number can be found\n\nOnly used if `requiresBootstrapStackVersion` is set.\n\n- If this value is not set, the bootstrap stack name must be known at\n  deployment time so the stack version can be looked up from the stack\n  outputs.\n- If this value is set, the bootstrap stack can have any name because\n  we won't need to look it up. (Default - Bootstrap stack version number looked up)",
+              type: "string"
+            },
+            validateOnSynth: {
+              description: "Whether this stack should be validated by the CLI after synthesis (Default - false)",
+              type: "boolean"
+            }
+          },
+          required: [
+            "templateFile"
+          ]
+        },
+        BootstrapRole: {
+          description: "Information needed to access an IAM role created\nas part of the bootstrap process",
+          type: "object",
+          properties: {
+            arn: {
+              description: "The ARN of the IAM role created as part of bootrapping\ne.g. lookupRoleArn",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "External ID to use when assuming the bootstrap role (Default - No external ID)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `arn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to use this role (Default - No bootstrap stack required)",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "Name of SSM parameter with bootstrap stack version (Default - Discover SSM parameter by reading stack)",
+              type: "string"
+            }
+          },
+          required: [
+            "arn"
+          ]
+        },
+        AssetManifestProperties: {
+          description: "Artifact properties for the Asset Manifest",
+          type: "object",
+          properties: {
+            file: {
+              description: "Filename of the asset manifest",
+              type: "string"
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to deploy this stack (Default - Version 1 (basic modern bootstrap stack))",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "SSM parameter where the bootstrap stack version number can be found\n\n- If this value is not set, the bootstrap stack name must be known at\n  deployment time so the stack version can be looked up from the stack\n  outputs.\n- If this value is set, the bootstrap stack can have any name because\n  we won't need to look it up. (Default - Bootstrap stack version number looked up)",
+              type: "string"
+            }
+          },
+          required: [
+            "file"
+          ]
+        },
+        TreeArtifactProperties: {
+          description: "Artifact properties for the Construct Tree Artifact",
+          type: "object",
+          properties: {
+            file: {
+              description: "Filename of the tree artifact",
+              type: "string"
+            }
+          },
+          required: [
+            "file"
+          ]
+        },
+        NestedCloudAssemblyProperties: {
+          description: "Artifact properties for nested cloud assemblies",
+          type: "object",
+          properties: {
+            directoryName: {
+              description: "Relative path to the nested cloud assembly",
+              type: "string"
+            },
+            displayName: {
+              description: "Display name for the cloud assembly (Default - The artifact ID)",
+              type: "string"
+            }
+          },
+          required: [
+            "directoryName"
+          ]
+        },
+        FeatureFlagReportProperties: {
+          description: "Artifact properties for a feature flag report\n\nA feature flag report is small enough that all the properties can be inlined\nhere, and doesn't need an additional file.",
+          type: "object",
+          properties: {
+            module: {
+              description: "The library that this feature flag report applies to.",
+              type: "string"
+            },
+            flags: {
+              description: "Information about every feature flag supported by this library.",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FeatureFlag"
+              }
+            }
+          },
+          required: [
+            "flags",
+            "module"
+          ]
+        },
+        FeatureFlag: {
+          description: "A single feature flag",
+          type: "object",
+          properties: {
+            recommendedValue: {
+              description: "The library-recommended value for this flag, if any\n\nIt is possible that there is no recommended value. (Default - No recommended value.)"
+            },
+            userValue: {
+              description: "The value configured by the user\n\nThis is the value configured at the root of the tree. Users may also have\nconfigured values at specific locations in the tree; we don't report on\nthose. (Default - Not configured by the user)"
+            },
+            explanation: {
+              description: "Explanation about the purpose of this flag that can be shown to the user. (Default - No description)",
+              type: "string"
+            },
+            unconfiguredBehavesLike: {
+              description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nThe structure of this field is a historical accident. The type of this field\nshould have been boolean, which should have contained the default value for\nthe flag appropriate for the *current* version of the CDK library. We are\nnot rectifying this accident because doing so\n\nInstead, the canonical way to access this value is by evaluating\n`unconfiguredBehavesLike?.v2 ?? false`.",
+              default: false,
+              $ref: "#/definitions/UnconfiguredBehavesLike"
+            }
+          }
+        },
+        UnconfiguredBehavesLike: {
+          type: "object",
+          properties: {
+            v1: {
+              description: "Historical accident, don't use.\n\nThis value may be present, but it should never be used. The actual value is\nin the `v2` field, regardless of the version of the CDK library. (Default - ignore)"
+            },
+            v2: {
+              description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nEven though it is called 'v2', this is the official name of this field. In\nany future versions of CDK (v3, v4, ...), this field will still be called 'v2'.\n\nThe structure of this field is a historical accident. See the comment on\n`unconfiguredBehavesLike` for more information.",
+              default: false
+            }
+          }
+        },
+        MissingContext: {
+          description: "Represents a missing piece of context.",
+          type: "object",
+          properties: {
+            key: {
+              description: "The missing context key.",
+              type: "string"
+            },
+            provider: {
+              $ref: "#/definitions/ContextProvider",
+              description: "The provider from which we expect this context key to be obtained."
+            },
+            props: {
+              $ref: "#/definitions/ContextQueryProperties",
+              description: "A set of provider-specific options."
+            }
+          },
+          required: [
+            "key",
+            "props",
+            "provider"
+          ]
+        },
+        ContextProvider: {
+          description: "Identifier for the context provider",
+          type: "string",
+          enum: [
+            "ami",
+            "availability-zones",
+            "hosted-zone",
+            "ssm",
+            "vpc-provider",
+            "endpoint-service-availability-zones",
+            "load-balancer",
+            "load-balancer-listener",
+            "security-group",
+            "key-provider",
+            "cc-api-provider",
+            "plugin"
+          ]
+        },
+        ContextQueryProperties: {
+          anyOf: [
+            {
+              $ref: "#/definitions/AmiContextQuery"
+            },
+            {
+              $ref: "#/definitions/AvailabilityZonesContextQuery"
+            },
+            {
+              $ref: "#/definitions/HostedZoneContextQuery"
+            },
+            {
+              $ref: "#/definitions/SSMParameterContextQuery"
+            },
+            {
+              $ref: "#/definitions/VpcContextQuery"
+            },
+            {
+              $ref: "#/definitions/EndpointServiceAvailabilityZonesContextQuery"
+            },
+            {
+              $ref: "#/definitions/LoadBalancerContextQuery"
+            },
+            {
+              $ref: "#/definitions/LoadBalancerListenerContextQuery"
+            },
+            {
+              $ref: "#/definitions/SecurityGroupContextQuery"
+            },
+            {
+              $ref: "#/definitions/KeyContextQuery"
+            },
+            {
+              $ref: "#/definitions/CcApiContextQuery"
+            },
+            {
+              $ref: "#/definitions/PluginContextQuery"
+            }
+          ]
+        },
+        AmiContextQuery: {
+          description: "Query to AMI context provider",
+          type: "object",
+          properties: {
+            owners: {
+              description: "Owners to DescribeImages call (Default - All owners)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            filters: {
+              description: "Filters to DescribeImages call",
+              type: "object",
+              additionalProperties: {
+                type: "array",
+                items: {
+                  type: "string"
+                }
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "filters",
+            "region"
+          ]
+        },
+        AvailabilityZonesContextQuery: {
+          description: "Query to availability zone context provider",
+          type: "object",
+          properties: {
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region"
+          ]
+        },
+        HostedZoneContextQuery: {
+          description: "Query to hosted zone context provider",
+          type: "object",
+          properties: {
+            domainName: {
+              description: "The domain name e.g. example.com to lookup",
+              type: "string"
+            },
+            privateZone: {
+              description: "True if the zone you want to find is a private hosted zone",
+              default: false,
+              type: "boolean"
+            },
+            vpcId: {
+              description: "The VPC ID to that the private zone must be associated with\n\nIf you provide VPC ID and privateZone is false, this will return no results\nand raise an error. (Default - Required if privateZone=true)",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "domainName",
+            "region"
+          ]
+        },
+        SSMParameterContextQuery: {
+          description: "Query to SSM Parameter Context Provider",
+          type: "object",
+          properties: {
+            parameterName: {
+              description: "Parameter name to query",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "parameterName",
+            "region"
+          ]
+        },
+        VpcContextQuery: {
+          description: "Query input for looking up a VPC",
+          type: "object",
+          properties: {
+            filter: {
+              description: "Filters to apply to the VPC\n\nFilter parameters are the same as passed to DescribeVpcs.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            returnAsymmetricSubnets: {
+              description: "Whether to populate the subnetGroups field of the `VpcContextResponse`,\nwhich contains potentially asymmetric subnet groups.",
+              default: false,
+              type: "boolean"
+            },
+            subnetGroupNameTag: {
+              description: "Optional tag for subnet group name.\nIf not provided, we'll look at the aws-cdk:subnet-name tag.\nIf the subnet does not have the specified tag,\nwe'll use its type as the name. (Default 'aws-cdk:subnet-name')",
+              type: "string"
+            },
+            returnVpnGateways: {
+              description: "Whether to populate the `vpnGatewayId` field of the `VpcContextResponse`,\nwhich contains the VPN Gateway ID, if one exists. You can explicitly\ndisable this in order to avoid the lookup if you know the VPC does not have\na VPN Gatway attached. (Default true)",
+              type: "boolean"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "filter",
+            "region"
+          ]
+        },
+        EndpointServiceAvailabilityZonesContextQuery: {
+          description: "Query to endpoint service context provider",
+          type: "object",
+          properties: {
+            serviceName: {
+              description: "Query service name",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region",
+            "serviceName"
+          ]
+        },
+        LoadBalancerContextQuery: {
+          description: "Query input for looking up a load balancer",
+          type: "object",
+          properties: {
+            loadBalancerType: {
+              $ref: "#/definitions/LoadBalancerType",
+              description: "Filter load balancers by their type"
+            },
+            loadBalancerArn: {
+              description: "Find by load balancer's ARN (Default - does not search by load balancer arn)",
+              type: "string"
+            },
+            loadBalancerTags: {
+              description: "Match load balancer tags (Default - does not match load balancers by tags)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/Tag"
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "loadBalancerType",
+            "region"
+          ]
+        },
+        LoadBalancerType: {
+          description: "Type of load balancer",
+          type: "string",
+          enum: [
+            "network",
+            "application"
+          ]
+        },
+        LoadBalancerListenerContextQuery: {
+          description: "Query input for looking up a load balancer listener",
+          type: "object",
+          properties: {
+            listenerArn: {
+              description: "Find by listener's arn (Default - does not find by listener arn)",
+              type: "string"
+            },
+            listenerProtocol: {
+              description: "Filter by listener protocol (Default - does not filter by listener protocol)",
+              enum: [
+                "HTTP",
+                "HTTPS",
+                "TCP",
+                "TCP_UDP",
+                "TLS",
+                "UDP"
+              ],
+              type: "string"
+            },
+            listenerPort: {
+              description: "Filter listeners by listener port (Default - does not filter by a listener port)",
+              type: "number"
+            },
+            loadBalancerType: {
+              $ref: "#/definitions/LoadBalancerType",
+              description: "Filter load balancers by their type"
+            },
+            loadBalancerArn: {
+              description: "Find by load balancer's ARN (Default - does not search by load balancer arn)",
+              type: "string"
+            },
+            loadBalancerTags: {
+              description: "Match load balancer tags (Default - does not match load balancers by tags)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/Tag"
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "loadBalancerType",
+            "region"
+          ]
+        },
+        SecurityGroupContextQuery: {
+          description: "Query input for looking up a security group",
+          type: "object",
+          properties: {
+            securityGroupId: {
+              description: "Security group id (Default - None)",
+              type: "string"
+            },
+            securityGroupName: {
+              description: "Security group name (Default - None)",
+              type: "string"
+            },
+            vpcId: {
+              description: "VPC ID (Default - None)",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region"
+          ]
+        },
+        KeyContextQuery: {
+          description: "Query input for looking up a KMS Key",
+          type: "object",
+          properties: {
+            aliasName: {
+              description: "Alias name used to search the Key",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "aliasName",
+            "region"
+          ]
+        },
+        CcApiContextQuery: {
+          description: "Query input for lookup up CloudFormation resources using CC API\n\nThe example below is required to successfully compile CDK (otherwise,\nthe CDK build will generate a synthetic example for the below, but it\ndoesn't have enough type information about the literal string union\nto generate a validly compiling example).",
+          type: "object",
+          properties: {
+            typeName: {
+              description: "The CloudFormation resource type.\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/supported-resources.html",
+              type: "string"
+            },
+            exactIdentifier: {
+              description: "Identifier of the resource to look up using `GetResource`.\n\nSpecifying exactIdentifier will return exactly one result, or throw an error\nunless `ignoreErrorOnMissingContext` is set. (Default - Either exactIdentifier or propertyMatch should be specified.)",
+              type: "string"
+            },
+            resourceModel: {
+              description: "The resource model to use to select the resources, using `ListResources`..\n\nThis is needed for sub-resources where the parent Arn is required.\n\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-list.html#resource-operations-list-containers (Default - no resource Model is provided)",
+              $ref: "#/definitions/Record%3Cstring%2Cunknown%3E"
+            },
+            propertyMatch: {
+              description: "Returns any resources matching these properties, using `ListResources`.\n\nBy default, specifying propertyMatch will successfully return 0 or more\nresults. To throw an error if the number of results is unexpected (and\nprevent the query results from being committed to context), specify\n`expectedMatchCount`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe resources that `propertyMatch` matches against will *only ever* be the\nproperties returned by the `ListResources` call. (Default - Either exactIdentifier or propertyMatch should be specified.)",
+              $ref: "#/definitions/Record%3Cstring%2Cunknown%3E"
+            },
+            propertiesToReturn: {
+              description: "This is a set of properties returned from CC API that we want to return from ContextQuery.\n\nIf any properties listed here are absent from the target resource, an error will be thrown.\n\nThe returned object will always include the key `Identifier` with the CC-API returned\nfield `Identifier`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe returned properties here are *currently* selected from the response\nobject that CloudControl API returns to the CDK CLI.\n\nHowever, if we find there is need to do so, we may decide to change this\nbehavior in the future: we might change it to perform an additional\n`GetResource` call for resources matched by `propertyMatch`.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            expectedMatchCount: {
+              description: "Expected count of results if `propertyMatch` is specified.\n\nIf the expected result count does not match the actual count,\nby default an error is produced and the result is not committed to cached\ncontext, and the user can correct the situation and try again without\nhaving to manually clear out the context key using `cdk context --remove`\n\nIf the value of * `ignoreErrorOnMissingContext` is `true`, the value of\n`expectedMatchCount` is `at-least-one | exactly-one` and the number\nof found resources is 0, `dummyValue` is returned and committed to context\ninstead. (Default 'any')",
+              enum: [
+                "any",
+                "at-least-one",
+                "at-most-one",
+                "exactly-one"
+              ],
+              type: "string"
+            },
+            dummyValue: {
+              description: "The value to return if the resource was not found and `ignoreErrorOnMissingContext` is true.\n\nIf supplied, `dummyValue` should be an array of objects.\n\n`dummyValue` does not have to have elements, and it may have objects with\ndifferent properties than the properties in `propertiesToReturn`, but it\nwill be easiest for downstream code if the `dummyValue` conforms to\nthe expected response shape. (Default - No dummy value available)"
+            },
+            ignoreErrorOnMissingContext: {
+              description: "Ignore an error and return the `dummyValue` instead if the resource was not found.\n\n- In case of an `exactIdentifier` lookup, return the `dummyValue` if the resource with\n  that identifier was not found.\n- In case of a `propertyMatch` lookup, return the `dummyValue` if `expectedMatchCount`\n  is `at-least-one | exactly-one` and the number of resources found was 0.\n\nif `ignoreErrorOnMissingContext` is set, `dummyValue` should be set and be an array.",
+              default: false,
+              type: "boolean"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "propertiesToReturn",
+            "region",
+            "typeName"
+          ]
+        },
+        "Record": {
+          type: "object"
+        },
+        PluginContextQuery: {
+          description: "Query input for plugins\n\nThis alternate branch is necessary because it needs to be able to escape all type checking\nwe do on on the cloud assembly -- we cannot know the properties that will be used a priori.",
+          type: "object",
+          additionalProperties: {},
+          properties: {
+            pluginName: {
+              description: "The name of the plugin",
+              type: "string"
+            }
+          },
+          required: [
+            "pluginName"
+          ]
+        },
+        RuntimeInfo: {
+          description: "Information about the application's runtime components.",
+          type: "object",
+          properties: {
+            libraries: {
+              description: "The list of libraries loaded in the application, associated with their versions.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "libraries"
+          ]
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json
+var require_integ_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/IntegManifest",
+      definitions: {
+        IntegManifest: {
+          description: "Definitions for the integration testing manifest",
+          type: "object",
+          properties: {
+            version: {
+              description: "Version of the manifest",
+              type: "string"
+            },
+            enableLookups: {
+              description: "Enable lookups for this test. If lookups are enabled\nthen `stackUpdateWorkflow` must be set to false.\nLookups should only be enabled when you are explicitly testing\nlookups.",
+              default: false,
+              type: "boolean"
+            },
+            synthContext: {
+              description: "Additional context to use when performing\na synth. Any context provided here will override\nany default context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            testCases: {
+              description: "test cases",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/TestCase"
+              }
+            }
+          },
+          required: [
+            "testCases",
+            "version"
+          ]
+        },
+        TestCase: {
+          description: "Represents an integration test case",
+          type: "object",
+          properties: {
+            stacks: {
+              description: "Stacks that should be tested as part of this test case\nThe stackNames will be passed as args to the cdk commands\nso dependent stacks will be automatically deployed unless\n`exclusively` is passed",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            assertionStack: {
+              description: "The node id of the stack that contains assertions.\nThis is the value that can be used to deploy the stack with the CDK CLI (Default - no assertion stack)",
+              type: "string"
+            },
+            assertionStackName: {
+              description: "The name of the stack that contains assertions (Default - no assertion stack)",
+              type: "string"
+            },
+            stackUpdateWorkflow: {
+              description: "Run update workflow on this test case\nThis should only be set to false to test scenarios\nthat are not possible to test as part of the update workflow (Default true)",
+              type: "boolean"
+            },
+            cdkCommandOptions: {
+              description: "Additional options to use for each CDK command (Default - runner default options)",
+              $ref: "#/definitions/CdkCommands"
+            },
+            hooks: {
+              description: "Additional commands to run at predefined points in the test workflow\n\ne.g. { postDeploy: ['yarn', 'test'] } (Default - no hooks)",
+              $ref: "#/definitions/Hooks"
+            },
+            allowDeleteFailures: {
+              description: "Whether to allow resources that fail to delete during a stack update.\n\nWhen false, the test will fail if CloudFormation skips deleting a resource\nduring a stack update. When true, only a warning is printed.",
+              default: false,
+              type: "boolean"
+            },
+            diffAssets: {
+              description: "Whether or not to include asset hashes in the diff\nAsset hashes can introduces a lot of unneccessary noise into tests,\nbut there are some cases where asset hashes _should_ be included. For example\nany tests involving custom resources or bundling",
+              default: false,
+              type: "boolean"
+            },
+            allowDestroy: {
+              description: "List of CloudFormation resource types in this stack that can\nbe destroyed as part of an update without failing the test.\n\nThis list should only include resources that for this specific\nintegration test we are sure will not cause errors or an outage if\ndestroyed. For example, maybe we know that a new resource will be created\nfirst before the old resource is destroyed which prevents any outage.\n\ne.g. ['AWS::IAM::Role'] (Default - do not allow destruction of any resources on update)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            regions: {
+              description: "Limit deployment to these regions (Default - can run in any region)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "stacks"
+          ]
+        },
+        CdkCommands: {
+          description: "Options for specific cdk commands that are run\nas part of the integration test workflow",
+          type: "object",
+          properties: {
+            deploy: {
+              description: "Options to for the cdk deploy command (Default - default deploy options)",
+              $ref: "#/definitions/DeployCommand"
+            },
+            destroy: {
+              description: "Options to for the cdk destroy command (Default - default destroy options)",
+              $ref: "#/definitions/DestroyCommand"
+            }
+          }
+        },
+        DeployCommand: {
+          description: "Represents a cdk deploy command",
+          type: "object",
+          properties: {
+            args: {
+              description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)",
+              $ref: "#/definitions/DeployOptions"
+            },
+            enabled: {
+              description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)",
+              type: "boolean"
+            },
+            expectError: {
+              description: "If the runner should expect this command to fail",
+              default: false,
+              type: "boolean"
+            },
+            expectedMessage: {
+              description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)",
+              type: "string"
+            }
+          }
+        },
+        DeployOptions: {
+          description: "Options to use with cdk deploy",
+          type: "object",
+          properties: {
+            exclusively: {
+              description: "Only perform action on the given stack",
+              default: false,
+              type: "boolean"
+            },
+            toolkitStackName: {
+              description: "Name of the toolkit stack to use/deploy (Default CDKToolkit)",
+              type: "string"
+            },
+            reuseAssets: {
+              description: "Reuse the assets with the given asset IDs (Default - do not reuse assets)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            changeSetName: {
+              description: "Optional name to use for the CloudFormation change set.\nIf not provided, a name will be generated automatically. (Default - auto generate a name)",
+              type: "string"
+            },
+            force: {
+              description: "Always deploy, even if templates are identical.",
+              default: false,
+              type: "boolean"
+            },
+            rollback: {
+              description: "Rollback failed deployments (Default true)",
+              type: "boolean"
+            },
+            notificationArns: {
+              description: "ARNs of SNS topics that CloudFormation will notify with stack related events (Default - no notifications)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            requireApproval: {
+              description: "What kind of security changes require approval (Default RequireApproval.NEVER)",
+              enum: [
+                "any-change",
+                "broadening",
+                "never"
+              ],
+              type: "string"
+            },
+            execute: {
+              description: "Whether to execute the ChangeSet\nNot providing `execute` parameter will result in execution of ChangeSet (Default true)",
+              type: "boolean"
+            },
+            parameters: {
+              description: "Additional parameters for CloudFormation at deploy time (Default [object Object])",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            usePreviousParameters: {
+              description: "Use previous values for unspecified parameters\n\nIf not set, all parameters must be specified for every deployment. (Default true)",
+              type: "boolean"
+            },
+            outputsFile: {
+              description: "Path to file where stack outputs will be written after a successful deploy as JSON (Default - Outputs are not written to any file)",
+              type: "string"
+            },
+            ci: {
+              description: "Whether we are on a CI system",
+              default: false,
+              type: "boolean"
+            },
+            concurrency: {
+              description: "Deploy multiple stacks in parallel (Default 1)",
+              type: "number"
+            },
+            stacks: {
+              description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            all: {
+              description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)",
+              type: "boolean"
+            },
+            app: {
+              description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)',
+              type: "string"
+            },
+            roleArn: {
+              description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)",
+              type: "string"
+            },
+            context: {
+              description: "Additional context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            trace: {
+              description: "Print trace for stack warnings",
+              default: false,
+              type: "boolean"
+            },
+            strict: {
+              description: "Do not construct stacks with warnings",
+              default: false,
+              type: "boolean"
+            },
+            lookups: {
+              description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)",
+              type: "boolean"
+            },
+            ignoreErrors: {
+              description: "Ignores synthesis errors, which will likely produce an invalid output",
+              default: false,
+              type: "boolean"
+            },
+            json: {
+              description: "Use JSON output instead of YAML when templates are printed\nto STDOUT",
+              default: false,
+              type: "boolean"
+            },
+            verbose: {
+              description: "show debug logs",
+              default: false,
+              type: "boolean"
+            },
+            debug: {
+              description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens",
+              default: false,
+              type: "boolean"
+            },
+            profile: {
+              description: "Use the indicated AWS profile as the default environment (Default - no profile is used)",
+              type: "string"
+            },
+            proxy: {
+              description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)",
+              type: "string"
+            },
+            caBundlePath: {
+              description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)",
+              type: "string"
+            },
+            ec2Creds: {
+              description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)",
+              type: "boolean"
+            },
+            versionReporting: {
+              description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)',
+              type: "boolean"
+            },
+            pathMetadata: {
+              description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)',
+              type: "boolean"
+            },
+            assetMetadata: {
+              description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)',
+              type: "boolean"
+            },
+            staging: {
+              description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI",
+              default: false,
+              type: "boolean"
+            },
+            output: {
+              description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)",
+              type: "string"
+            },
+            notices: {
+              description: "Show relevant notices (Default true)",
+              type: "boolean"
+            },
+            color: {
+              description: "Show colors and other style from console output (Default true)",
+              type: "boolean"
+            }
+          }
+        },
+        DestroyCommand: {
+          description: "Represents a cdk destroy command",
+          type: "object",
+          properties: {
+            args: {
+              description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)",
+              $ref: "#/definitions/DestroyOptions"
+            },
+            enabled: {
+              description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)",
+              type: "boolean"
+            },
+            expectError: {
+              description: "If the runner should expect this command to fail",
+              default: false,
+              type: "boolean"
+            },
+            expectedMessage: {
+              description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)",
+              type: "string"
+            }
+          }
+        },
+        DestroyOptions: {
+          description: "Options to use with cdk destroy",
+          type: "object",
+          properties: {
+            force: {
+              description: "Do not ask for permission before destroying stacks",
+              default: false,
+              type: "boolean"
+            },
+            exclusively: {
+              description: "Only destroy the given stack",
+              default: false,
+              type: "boolean"
+            },
+            stacks: {
+              description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            all: {
+              description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)",
+              type: "boolean"
+            },
+            app: {
+              description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)',
+              type: "string"
+            },
+            roleArn: {
+              description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)",
+              type: "string"
+            },
+            context: {
+              description: "Additional context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            trace: {
+              description: "Print trace for stack warnings",
+              default: false,
+              type: "boolean"
+            },
+            strict: {
+              description: "Do not construct stacks with warnings",
+              default: false,
+              type: "boolean"
+            },
+            lookups: {
+              description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)",
+              type: "boolean"
+            },
+            ignoreErrors: {
+              description: "Ignores synthesis errors, which will likely produce an invalid output",
+              default: false,
+              type: "boolean"
+            },
+            json: {
+              description: "Use JSON output instead of YAML when templates are printed\nto STDOUT",
+              default: false,
+              type: "boolean"
+            },
+            verbose: {
+              description: "show debug logs",
+              default: false,
+              type: "boolean"
+            },
+            debug: {
+              description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens",
+              default: false,
+              type: "boolean"
+            },
+            profile: {
+              description: "Use the indicated AWS profile as the default environment (Default - no profile is used)",
+              type: "string"
+            },
+            proxy: {
+              description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)",
+              type: "string"
+            },
+            caBundlePath: {
+              description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)",
+              type: "string"
+            },
+            ec2Creds: {
+              description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)",
+              type: "boolean"
+            },
+            versionReporting: {
+              description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)',
+              type: "boolean"
+            },
+            pathMetadata: {
+              description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)',
+              type: "boolean"
+            },
+            assetMetadata: {
+              description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)',
+              type: "boolean"
+            },
+            staging: {
+              description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI",
+              default: false,
+              type: "boolean"
+            },
+            output: {
+              description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)",
+              type: "string"
+            },
+            notices: {
+              description: "Show relevant notices (Default true)",
+              type: "boolean"
+            },
+            color: {
+              description: "Show colors and other style from console output (Default true)",
+              type: "boolean"
+            }
+          }
+        },
+        Hooks: {
+          description: "Commands to run at predefined points during the\nintegration test workflow",
+          type: "object",
+          properties: {
+            preDeploy: {
+              description: "Commands to run prior to deploying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            postDeploy: {
+              description: "Commands to run prior after deploying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            preDestroy: {
+              description: "Commands to run prior to destroying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            postDestroy: {
+              description: "Commands to run after destroying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          }
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json
+var require_validation_report_schema2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/PolicyValidationReportJson",
+      definitions: {
+        PolicyValidationReportJson: {
+          description: "The top-level structure of the policy validation report file.",
+          type: "object",
+          properties: {
+            version: {
+              description: "Protocol version",
+              type: "string"
+            },
+            title: {
+              description: "Report title, if present.",
+              type: "string"
+            },
+            pluginReports: {
+              description: "Reports from all validation plugins that ran during synthesis.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/PluginReportJson"
+              }
+            }
+          },
+          required: ["version", "pluginReports"]
+        },
+        PluginReportJson: {
+          description: "A report from a single validation plugin.",
+          type: "object",
+          properties: {
+            pluginName: {
+              description: "The name of the plugin that produced this report.",
+              type: "string"
+            },
+            pluginVersion: {
+              description: "Version of the plugin that produced this report.",
+              type: "string"
+            },
+            conclusion: {
+              description: "Whether the plugin's validation passed or failed.",
+              $ref: "#/definitions/PolicyValidationReportConclusion"
+            },
+            metadata: {
+              description: "Additional plugin-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violations: {
+              description: "Violations found by this plugin.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/PolicyViolationJson"
+              }
+            },
+            suppressedViolations: {
+              description: "Violations that were suppressed via acknowledgement.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/SuppressedViolationJson"
+              }
+            }
+          },
+          required: ["pluginName", "conclusion", "violations"]
+        },
+        PolicyValidationReportConclusion: {
+          description: "The final conclusion of a validation report.",
+          type: "string",
+          enum: ["success", "failure"]
+        },
+        PolicyViolationJson: {
+          description: "A single policy violation found by a validation plugin.",
+          type: "object",
+          properties: {
+            ruleName: {
+              description: "The name of the rule that was violated.",
+              type: "string"
+            },
+            description: {
+              description: "A description of the violation.",
+              type: "string"
+            },
+            suggestedFix: {
+              description: "How to fix the violation.",
+              type: "string"
+            },
+            severity: {
+              description: "The severity of the violation.",
+              $ref: "#/definitions/PolicyViolationSeverity"
+            },
+            customSeverity: {
+              description: "If the plugin wants to report using a non-standard severity, put it here.",
+              type: "string"
+            },
+            ruleMetadata: {
+              description: "Additional rule-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violatingConstructs: {
+              description: "Constructs that violated the rule.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ViolatingConstructJson"
+              }
+            }
+          },
+          required: ["ruleName", "description", "severity", "violatingConstructs"]
+        },
+        PolicyViolationSeverity: {
+          description: "The severity of a policy violation.",
+          type: "string",
+          enum: ["fatal", "error", "warning", "info", "custom"]
+        },
+        SuppressedViolationJson: {
+          description: "A violation that was acknowledged/suppressed and excluded from the active violation set.",
+          type: "object",
+          properties: {
+            ruleName: {
+              description: "The name of the rule that was violated.",
+              type: "string"
+            },
+            description: {
+              description: "A description of the violation.",
+              type: "string"
+            },
+            suggestedFix: {
+              description: "How to fix the violation.",
+              type: "string"
+            },
+            severity: {
+              description: "The severity of the violation.",
+              $ref: "#/definitions/PolicyViolationSeverity"
+            },
+            customSeverity: {
+              description: "If the plugin wants to report using a non-standard severity, put it here.",
+              type: "string"
+            },
+            ruleMetadata: {
+              description: "Additional rule-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violatingConstructs: {
+              description: "Constructs that violated the rule.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ViolatingConstructJson"
+              }
+            },
+            acknowledgedId: {
+              description: "The acknowledgement ID that caused this violation to be suppressed.",
+              type: "string"
+            },
+            reason: {
+              description: "The reason given for the acknowledgement, if provided.",
+              type: "string"
+            },
+            acknowledgedAt: {
+              description: "The construct path where the acknowledgement was declared.",
+              type: "string"
+            },
+            acknowledgedStackTrace: {
+              description: "Stack trace showing where the acknowledgement was declared.",
+              type: "string"
+            }
+          },
+          required: ["ruleName", "description", "severity", "violatingConstructs", "acknowledgedId"]
+        },
+        ViolatingConstructJson: {
+          description: "A construct that violated a policy rule.",
+          type: "object",
+          properties: {
+            constructPath: {
+              description: "The construct path as defined in the application.",
+              type: "string"
+            },
+            constructFqn: {
+              description: "The fully qualified name of the construct class (includes the library name).",
+              type: "string"
+            },
+            libraryVersion: {
+              description: "The version of the library that contains this construct.",
+              type: "string"
+            },
+            cloudFormationResource: {
+              description: "If this construct violation regards a CloudFormation resource, a reference to the resource details.",
+              $ref: "#/definitions/CloudFormationResourceJson"
+            },
+            stackTraces: {
+              description: "Stack traces associated with this violation.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: ["constructPath"]
+        },
+        CloudFormationResourceJson: {
+          description: "CloudFormation resource details for a violating construct.",
+          type: "object",
+          properties: {
+            templatePath: {
+              description: "The path to the CloudFormation template containing this resource.",
+              type: "string"
+            },
+            logicalId: {
+              description: "The logical ID of the resource in the CloudFormation template.",
+              type: "string"
+            },
+            propertyPaths: {
+              description: "Properties within the construct where the violation was detected.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: ["templatePath", "logicalId"]
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json
+var require_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json"(exports2, module2) {
+    module2.exports = {
+      schemaHash: "095859ad1d3d89d3bc4f9cbe9393d219798972dbd2389287bcc66b49f323cef1",
+      $comment: "Do not hold back the version on additions: jsonschema validation of the manifest by the consumer will trigger errors on unexpected fields.",
+      revision: 54
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js
+var require_manifest = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    });
+    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
+      var ownKeys2 = function(o) {
+        ownKeys2 = Object.getOwnPropertyNames || function(o2) {
+          var ar = [];
+          for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
+          return ar;
+        };
+        return ownKeys2(o);
+      };
+      return function(mod) {
+        if (mod && mod.__esModule) return mod;
+        var result = {};
+        if (mod != null) {
+          for (var k = ownKeys2(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding2(result, mod, k[i]);
+        }
+        __setModuleDefault2(result, mod);
+        return result;
+      };
+    })();
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.Manifest = exports2.VALIDATION_REPORT_FILE = exports2.VERSION_MISMATCH = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var fs19 = __importStar2(require("fs"));
+    var jsonschema = __importStar2(require_lib());
+    var semver = __importStar2(require_semver2());
+    var assembly = __importStar2(require_cloud_assembly());
+    exports2.VERSION_MISMATCH = "Cloud assembly schema version mismatch";
+    exports2.VALIDATION_REPORT_FILE = "validation-report.json";
+    var CLI_VERSION = require_cli_version();
+    var ASSETS_SCHEMA = require_assets_schema();
+    var ASSEMBLY_SCHEMA = require_cloud_assembly_schema();
+    var INTEG_SCHEMA = require_integ_schema();
+    var VALIDATION_REPORT_SCHEMA = require_validation_report_schema2();
+    var SCHEMA_VERSION = require_version();
+    var Manifest2 = class _Manifest {
+      static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/cloud-assembly-schema.Manifest", version: "54.24.0" };
+      /**
+       * Validates and saves the cloud assembly manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveAssemblyManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, ASSEMBLY_SCHEMA);
+      }
+      /**
+       * Load and validates the cloud assembly manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadAssemblyManifest(filePath, options) {
+        return _Manifest.loadManifest(filePath, ASSEMBLY_SCHEMA, _Manifest.patchStackTagsOnRead, options);
+      }
+      /**
+       * Validates and saves the asset manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveAssetManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, ASSETS_SCHEMA);
+      }
+      /**
+       * Load and validates the asset manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadAssetManifest(filePath) {
+        return _Manifest.loadManifest(filePath, ASSETS_SCHEMA);
+      }
+      /**
+       * Validates and saves the integ manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveIntegManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, INTEG_SCHEMA);
+      }
+      /**
+       * Load and validates the integ manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadIntegManifest(filePath) {
+        const manifest = this.loadManifest(filePath, INTEG_SCHEMA);
+        return {
+          ...manifest,
+          testCases: manifest.testCases ?? []
+        };
+      }
+      /**
+       * Load and validate the policy validation report from file.
+       *
+       * @param filePath - path to the validation report file.
+       */
+      static loadValidationReport(filePath) {
+        return _Manifest.loadManifest(filePath, VALIDATION_REPORT_SCHEMA);
+      }
+      /**
+       * Fetch the current schema version number.
+       */
+      static version() {
+        return `${SCHEMA_VERSION.revision}.0.0`;
+      }
+      /**
+       * Return the CLI version that supports this Cloud Assembly Schema version
+       */
+      static cliVersion() {
+        const version3 = CLI_VERSION.version;
+        return version3 ? version3 : void 0;
+      }
+      /**
+       * Deprecated
+       * @deprecated use `saveAssemblyManifest()`
+       */
+      static save(manifest, filePath) {
+        return this.saveAssemblyManifest(manifest, filePath);
+      }
+      /**
+       * Deprecated
+       * @deprecated use `loadAssemblyManifest()`
+       */
+      static load(filePath) {
+        return this.loadAssemblyManifest(filePath);
+      }
+      static validate(manifest, schema, options) {
+        function parseVersion(version3) {
+          const ver = semver.valid(version3);
+          if (!ver) {
+            throw new Error(`Invalid semver string: "${version3}"`);
+          }
+          return ver;
+        }
+        const maxSupported = semver.major(parseVersion(_Manifest.version()));
+        const actual = parseVersion(manifest.version);
+        if (maxSupported < semver.major(actual) && !options?.skipVersionCheck) {
+          const cliVersion = manifest.minimumCliVersion;
+          let cliWarning = "";
+          if (cliVersion) {
+            cliWarning = `. You need at least CLI version ${cliVersion} to read this manifest.`;
+          }
+          throw new Error(`${exports2.VERSION_MISMATCH}: Maximum schema version supported is ${maxSupported}.x.x, but found ${actual}${cliWarning}`);
+        }
+        if (options?.validateSchema ?? process.env.TESTING_CDK === "1") {
+          const validator = new jsonschema.Validator();
+          const result = validator.validate(manifest, schema, {
+            nestedErrors: true,
+            allowUnknownAttributes: false,
+            preValidateProperty: _Manifest.validateAssumeRoleAdditionalOptions
+          });
+          let errors = result.errors;
+          if (options?.skipEnumCheck) {
+            errors = stripEnumErrors(errors);
+          }
+          if (errors.length > 0) {
+            throw new Error(`Invalid assembly manifest:
+${errors.map((e) => e.stack).join("\n")}`);
+          }
+        }
+      }
+      static saveManifest(manifest, filePath, schema, preprocess) {
+        let withVersion = {
+          ...manifest,
+          version: _Manifest.version(),
+          minimumCliVersion: _Manifest.cliVersion()
+        };
+        _Manifest.validate(withVersion, schema);
+        if (preprocess) {
+          withVersion = preprocess(withVersion);
+        }
+        fs19.writeFileSync(filePath, JSON.stringify(withVersion, void 0, 2));
+      }
+      static loadManifest(filePath, schema, preprocess, options) {
+        const contents = fs19.readFileSync(filePath, { encoding: "utf-8" });
+        let obj;
+        try {
+          obj = JSON.parse(contents);
+        } catch (e) {
+          throw new Error(`${e.message}, while parsing ${JSON.stringify(contents)}`);
+        }
+        if (preprocess) {
+          obj = preprocess(obj);
+        }
+        _Manifest.validate(obj, schema, options);
+        return obj;
+      }
+      /**
+       * Fix the casing of stack tags entries
+       *
+       * At the very beginning of the CDK we used to emit stack tags as an object with
+       * `{ Key, Value }` keys; this had the "advantage" that we could stick those
+       * tags directly into the `CreateChangeSet` call.
+       *
+       * Then we later on used jsii on the assembly schema and we were forced to type
+       * the in-memory objects as `{ key, value }` with lowercase letters. Now the
+       * objects have a different on-disk and in-memory format, and we need to convert
+       * between them.
+       *
+       * For backwards compatibility reasons, we used to convert lowercase in-memory
+       * to uppercase on-disk variant until very recently. This is now unnecessary,
+       * since no officially supported CDK tools read the stack tags from the
+       * metadata; the CLI and toolkit library read stack tags from the artifact
+       * properties.
+       *
+       * So although we don't emit uppercase stack tag objects anymore, we might still read
+       * manifests that have them. Because the manifest we read must pass JSON Schema
+       * validation (which expects lowercase tag objects), we have to fix the casing
+       * of these objects after reading from disk and before validating.
+       *
+       * That's what this function does.
+       */
+      static patchStackTagsOnRead(manifest) {
+        const artifacts = Object.values(manifest.artifacts ?? {}).filter((artifact) => artifact.type === assembly.ArtifactType.AWS_CLOUDFORMATION_STACK);
+        for (const artifact of artifacts) {
+          const tagMetadata = Object.values(artifact.metadata ?? {}).flatMap((x) => x).filter((entry) => entry.type === assembly.ArtifactMetadataEntryType.STACK_TAGS);
+          for (const entry of tagMetadata) {
+            const tags = entry.data;
+            for (const tag of tags ?? []) {
+              const t = tag;
+              if ("Key" in t) {
+                t.key = t.Key;
+                delete t.Key;
+              }
+              if ("Value" in t) {
+                t.value = t.Value;
+                delete t.Value;
+              }
+            }
+          }
+        }
+        return manifest;
+      }
+      /**
+       * Validates that `assumeRoleAdditionalOptions` doesn't contain nor `ExternalId` neither `RoleArn`, as they
+       * should have dedicated properties preceding this (e.g `assumeRoleArn` and `assumeRoleExternalId`).
+       */
+      static validateAssumeRoleAdditionalOptions(instance, key, _schema, _options, _ctx) {
+        if (key !== "assumeRoleAdditionalOptions") {
+          return;
+        }
+        const assumeRoleOptions = instance[key];
+        if (assumeRoleOptions?.RoleArn) {
+          throw new Error(`RoleArn is not allowed inside '${key}'`);
+        }
+        if (assumeRoleOptions?.ExternalId) {
+          throw new Error(`ExternalId is not allowed inside '${key}'`);
+        }
+      }
+    };
+    exports2.Manifest = Manifest2;
+    function stripEnumErrors(errors) {
+      return errors.filter((e) => typeof e.schema === "string" || !("enum" in e.schema));
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js
+var require_schema3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js
+var require_common = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.RequireApproval = void 0;
+    var RequireApproval;
+    (function(RequireApproval2) {
+      RequireApproval2["NEVER"] = "never";
+      RequireApproval2["ANYCHANGE"] = "any-change";
+      RequireApproval2["BROADENING"] = "broadening";
+    })(RequireApproval || (exports2.RequireApproval = RequireApproval = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js
+var require_deploy = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js
+var require_destroy = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js
+var require_commands = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_common(), exports2);
+    __exportStar2(require_deploy(), exports2);
+    __exportStar2(require_destroy(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js
+var require_test_case = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js
+var require_integ_tests = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema3(), exports2);
+    __exportStar2(require_commands(), exports2);
+    __exportStar2(require_test_case(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js
+var require_lib2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_cloud_assembly(), exports2);
+    __exportStar2(require_assets(), exports2);
+    __exportStar2(require_manifest(), exports2);
+    __exportStar2(require_integ_tests(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js
+var require_metadata = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.SynthesisMessageLevel = exports2.PATH_METADATA_KEY = void 0;
+    exports2.PATH_METADATA_KEY = "aws:cdk:path";
+    var SynthesisMessageLevel;
+    (function(SynthesisMessageLevel2) {
+      SynthesisMessageLevel2["INFO"] = "info";
+      SynthesisMessageLevel2["WARNING"] = "warning";
+      SynthesisMessageLevel2["ERROR"] = "error";
+    })(SynthesisMessageLevel || (exports2.SynthesisMessageLevel = SynthesisMessageLevel = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js
+var require_error = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js"(exports2) {
+    "use strict";
+    var __classPrivateFieldGet2 = exports2 && exports2.__classPrivateFieldGet || function(receiver, state, kind, f) {
+      if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+      if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+      return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+    };
+    var __classPrivateFieldSet2 = exports2 && exports2.__classPrivateFieldSet || function(receiver, state, value, kind, f) {
+      if (kind === "m") throw new TypeError("Private method is not writable");
+      if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+      if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+      return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
+    };
+    var _CloudAssemblyError_time;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudAssemblyError = void 0;
+    var ASSEMBLY_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssemblyError");
+    var CloudAssemblyError = class _CloudAssemblyError extends Error {
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return __classPrivateFieldGet2(this, _CloudAssemblyError_time, "f");
+      }
+      get type() {
+        return "assembly";
+      }
+      constructor(msg) {
+        super(msg);
+        _CloudAssemblyError_time.set(this, void 0);
+        Object.setPrototypeOf(this, _CloudAssemblyError.prototype);
+        Object.defineProperty(this, ASSEMBLY_ERROR_SYMBOL, { value: true });
+        this.name = new.target.name;
+        __classPrivateFieldSet2(this, _CloudAssemblyError_time, (/* @__PURE__ */ new Date()).toISOString(), "f");
+      }
+    };
+    exports2.CloudAssemblyError = CloudAssemblyError;
+    _CloudAssemblyError_time = /* @__PURE__ */ new WeakMap();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js
+var require_cloud_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var metadata_1 = require_metadata();
+    var error_1 = require_error();
+    var CloudArtifact = class _CloudArtifact {
+      /**
+       * Read the metadata for the given artifact
+       *
+       * HISTORICAL OR PRIVATE USE ONLY
+       *
+       * This is publicly exposed as a static function for downstream libraries that
+       * don't use the `CloudAssembly`/`CloudArtifact` API, yet still need to read
+       * an artifact's metadata.
+       *
+       * 99% of consumers should just access `artifact.metadata`.
+       */
+      static readMetadata(assemblyDirectory, x) {
+        const ret = {};
+        if (x.additionalMetadataFile) {
+          Object.assign(ret, JSON.parse(fs19.readFileSync(path23.join(assemblyDirectory, x.additionalMetadataFile), "utf-8")));
+        }
+        for (const [p, entries] of Object.entries(x.metadata ?? {})) {
+          if (ret[p]) {
+            ret[p].push(...entries);
+          } else {
+            ret[p] = entries;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest.
+       *
+       * @param assembly - The cloud assembly from which to load the artifact
+       * @param id - The artifact ID
+       * @param artifact - The artifact manifest
+       * @returns the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module.
+       */
+      static fromManifest(assembly, id, artifact) {
+        void assembly, void id, void artifact;
+        throw new error_1.CloudAssemblyError("Implementation not overridden yet");
+      }
+      constructor(assembly, id, manifest) {
+        this.assembly = assembly;
+        this.id = id;
+        this.manifest = manifest;
+        this.messages = this.renderMessages();
+        this._dependencyIDs = manifest.dependencies || [];
+      }
+      /**
+       * Returns the metadata associated with this Cloud Artifact
+       */
+      get metadata() {
+        return _CloudArtifact.readMetadata(this.assembly.directory, this.manifest);
+      }
+      /**
+       * Returns all the artifacts that this artifact depends on.
+       */
+      get dependencies() {
+        if (this._deps) {
+          return this._deps;
+        }
+        this._deps = this._dependencyIDs.map((id) => {
+          const dep = this.assembly.tryGetArtifact(id);
+          if (!dep) {
+            throw new error_1.CloudAssemblyError(`Artifact ${this.id} depends on non-existing artifact ${id}`);
+          }
+          return dep;
+        });
+        return this._deps;
+      }
+      /**
+       * @returns all the metadata entries of a specific type in this artifact.
+       */
+      findMetadataByType(type) {
+        const metadata = this.metadata;
+        const result = new Array();
+        for (const p of Object.keys(metadata || {})) {
+          for (const entry of (metadata || {})[p]) {
+            if (entry.type === type) {
+              result.push({ path: p, ...entry });
+            }
+          }
+        }
+        return result;
+      }
+      renderMessages() {
+        const messages = new Array();
+        for (const [id, metadata] of Object.entries(this.metadata || {})) {
+          for (const entry of metadata) {
+            let level;
+            switch (entry.type) {
+              case cxschema2.ArtifactMetadataEntryType.WARN:
+                level = metadata_1.SynthesisMessageLevel.WARNING;
+                break;
+              case cxschema2.ArtifactMetadataEntryType.ERROR:
+                level = metadata_1.SynthesisMessageLevel.ERROR;
+                break;
+              case cxschema2.ArtifactMetadataEntryType.INFO:
+                level = metadata_1.SynthesisMessageLevel.INFO;
+                break;
+              default:
+                continue;
+            }
+            messages.push({ level, entry, id });
+          }
+        }
+        return messages;
+      }
+      /**
+       * An identifier that shows where this artifact is located in the tree
+       * of nested assemblies, based on their manifests. Defaults to the normal
+       * id. Should only be used in user interfaces.
+       */
+      get hierarchicalId() {
+        return this.manifest.displayName ?? this.id;
+      }
+    };
+    exports2.CloudArtifact = CloudArtifact;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js
+var require_asset_manifest_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AssetManifestArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var ASSET_MANIFEST_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.AssetManifestArtifact");
+    var AssetManifestArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `AssetManifestArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `AssetManifestArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isAssetManifestArtifact(art) {
+        return art && typeof art === "object" && art[ASSET_MANIFEST_ARTIFACT_SYM];
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.file) {
+          throw new error_1.CloudAssemblyError('Invalid AssetManifestArtifact. Missing "file" property');
+        }
+        this.file = path23.resolve(this.assembly.directory, properties.file);
+        this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion;
+        this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter;
+      }
+      /**
+       * The Asset Manifest contents
+       */
+      get contents() {
+        if (this._contents !== void 0) {
+          return this._contents;
+        }
+        const contents = this._contents = JSON.parse(fs19.readFileSync(this.file, "utf-8"));
+        return contents;
+      }
+    };
+    exports2.AssetManifestArtifact = AssetManifestArtifact;
+    Object.defineProperty(AssetManifestArtifact.prototype, ASSET_MANIFEST_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js
+var require_environment = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EnvironmentUtils = exports2.UNKNOWN_REGION = exports2.UNKNOWN_ACCOUNT = void 0;
+    var error_1 = require_error();
+    var AWS_ENV_REGEX = /aws\:\/\/([a-z0-9A-Z\-\@\.\_]+)\/([a-z\-0-9]+)/;
+    exports2.UNKNOWN_ACCOUNT = "unknown-account";
+    exports2.UNKNOWN_REGION = "unknown-region";
+    var EnvironmentUtils2 = class {
+      static parse(environment) {
+        const env2 = AWS_ENV_REGEX.exec(environment);
+        if (!env2) {
+          throw new error_1.CloudAssemblyError(`Unable to parse environment specification "${environment}". Expected format: aws://account/region`);
+        }
+        const [, account, region] = env2;
+        if (!account || !region) {
+          throw new error_1.CloudAssemblyError(`Invalid environment specification: ${environment}`);
+        }
+        return { account, region, name: environment };
+      }
+      /**
+       * Build an environment object from an account and region
+       */
+      static make(account, region) {
+        return { account, region, name: this.format(account, region) };
+      }
+      /**
+       * Format an environment string from an account and region
+       */
+      static format(account, region) {
+        return `aws://${account}/${region}`;
+      }
+    };
+    exports2.EnvironmentUtils = EnvironmentUtils2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js
+var require_cloudformation_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudFormationStackArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var cloud_artifact_1 = require_cloud_artifact();
+    var environment_1 = require_environment();
+    var error_1 = require_error();
+    var CLOUDFORMATION_STACK_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudFormationStackArtifact");
+    var CloudFormationStackArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `CloudFormationStackArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `CloudFormationStackArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isCloudFormationStackArtifact(art) {
+        return art && typeof art === "object" && CLOUDFORMATION_STACK_ARTIFACT_SYM in art;
+      }
+      constructor(assembly, artifactId, artifact) {
+        super(assembly, artifactId, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.templateFile) {
+          throw new error_1.CloudAssemblyError('Invalid CloudFormation stack artifact. Missing "templateFile" property in cloud assembly manifest');
+        }
+        if (!artifact.environment) {
+          throw new error_1.CloudAssemblyError("Invalid CloudFormation stack artifact. Missing environment");
+        }
+        this.environment = environment_1.EnvironmentUtils.parse(artifact.environment);
+        this.templateFile = properties.templateFile;
+        this.parameters = properties.parameters ?? {};
+        this.tags = properties.tags ?? {};
+        this.notificationArns = properties.notificationArns;
+        this.assumeRoleArn = properties.assumeRoleArn;
+        this.assumeRoleExternalId = properties.assumeRoleExternalId;
+        this.assumeRoleAdditionalOptions = properties.assumeRoleAdditionalOptions;
+        this.cloudFormationExecutionRoleArn = properties.cloudFormationExecutionRoleArn;
+        this.stackTemplateAssetObjectUrl = properties.stackTemplateAssetObjectUrl;
+        this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion;
+        this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter;
+        this.terminationProtection = properties.terminationProtection;
+        this.validateOnSynth = properties.validateOnSynth;
+        this.lookupRole = properties.lookupRole;
+        this.stackName = properties.stackName || artifactId;
+        this.assets = this.findMetadataByType(cxschema2.ArtifactMetadataEntryType.ASSET).map((e) => e.data);
+        this.displayName = this.stackName === artifactId ? this.hierarchicalId : `${this.hierarchicalId} (${this.stackName})`;
+        this.name = this.stackName;
+        this.originalName = this.stackName;
+      }
+      /**
+       * Full path to the template file
+       */
+      get templateFullPath() {
+        return path23.join(this.assembly.directory, this.templateFile);
+      }
+      /**
+       * The CloudFormation template for this stack.
+       */
+      get template() {
+        if (this._template === void 0) {
+          this._template = JSON.parse(fs19.readFileSync(this.templateFullPath, "utf-8"));
+        }
+        return this._template;
+      }
+    };
+    exports2.CloudFormationStackArtifact = CloudFormationStackArtifact;
+    Object.defineProperty(CloudFormationStackArtifact.prototype, CLOUDFORMATION_STACK_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js
+var require_nested_cloud_assembly_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.NestedCloudAssemblyArtifact = void 0;
+    var path23 = require("path");
+    var cloud_artifact_1 = require_cloud_artifact();
+    var NESTED_CLOUD_ASSEMBLY_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.NestedCloudAssemblyArtifact");
+    var NestedCloudAssemblyArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `NestedCloudAssemblyArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `NestedCloudAssemblyArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isNestedCloudAssemblyArtifact(art) {
+        return art && typeof art === "object" && NESTED_CLOUD_ASSEMBLY_SYM in art;
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        this.directoryName = properties.directoryName;
+        this.displayName = properties.displayName ?? name;
+      }
+      /**
+       * Full path to the nested assembly directory
+       */
+      get fullPath() {
+        return path23.join(this.assembly.directory, this.directoryName);
+      }
+    };
+    exports2.NestedCloudAssemblyArtifact = NestedCloudAssemblyArtifact;
+    Object.defineProperty(NestedCloudAssemblyArtifact.prototype, NESTED_CLOUD_ASSEMBLY_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js
+var require_tree_cloud_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.TreeCloudArtifact = void 0;
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var TREE_CLOUD_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.TreeCloudArtifact");
+    var TreeCloudArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `TreeCloudArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `TreeCloudArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isTreeCloudArtifact(art) {
+        return art && typeof art === "object" && TREE_CLOUD_ARTIFACT_SYM in art;
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.file) {
+          throw new error_1.CloudAssemblyError('Invalid TreeCloudArtifact. Missing "file" property');
+        }
+        this.file = properties.file;
+      }
+    };
+    exports2.TreeCloudArtifact = TreeCloudArtifact;
+    Object.defineProperty(TreeCloudArtifact.prototype, TREE_CLOUD_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js
+var require_cloud_artifact_aug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var cxschema2 = require_lib2();
+    var asset_manifest_artifact_1 = require_asset_manifest_artifact();
+    var cloudformation_artifact_1 = require_cloudformation_artifact();
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var tree_cloud_artifact_1 = require_tree_cloud_artifact();
+    var cloud_artifact_1 = require_cloud_artifact();
+    cloud_artifact_1.CloudArtifact.fromManifest = function fromManifest(assembly, id, artifact) {
+      switch (artifact.type) {
+        case cxschema2.ArtifactType.AWS_CLOUDFORMATION_STACK:
+          return new cloudformation_artifact_1.CloudFormationStackArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.CDK_TREE:
+          return new tree_cloud_artifact_1.TreeCloudArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.ASSET_MANIFEST:
+          return new asset_manifest_artifact_1.AssetManifestArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY:
+          return new nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact(assembly, id, artifact);
+        default:
+          return void 0;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js
+var require_toposort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.topologicalSort = topologicalSort;
+    var error_1 = require_error();
+    function topologicalSort(xs, keyFn, depFn) {
+      const remaining = /* @__PURE__ */ new Map();
+      for (const element of xs) {
+        const key = keyFn(element);
+        remaining.set(key, { key, element, dependencies: depFn(element) });
+      }
+      const ret = new Array();
+      while (remaining.size > 0) {
+        const selectable = Array.from(remaining.values()).filter((e) => e.dependencies.every((d) => !remaining.has(d)));
+        selectable.sort((a, b) => a.key < b.key ? -1 : b.key < a.key ? 1 : 0);
+        for (const selected of selectable) {
+          ret.push(selected.element);
+          remaining.delete(selected.key);
+        }
+        if (selectable.length === 0) {
+          throw new error_1.CloudAssemblyError(`Could not determine ordering between: ${Array.from(remaining.keys()).join(", ")}`);
+        }
+      }
+      return ret;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js
+var require_cloud_assembly2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudAssemblyBuilder = exports2.CloudAssembly = void 0;
+    var fs19 = require("fs");
+    var os4 = require("os");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var cloudformation_artifact_1 = require_cloudformation_artifact();
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var tree_cloud_artifact_1 = require_tree_cloud_artifact();
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var toposort_1 = require_toposort();
+    var CLOUD_ASSEMBLY_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssembly");
+    var MANIFEST_FILE = "manifest.json";
+    var CloudAssembly = class {
+      /**
+       * Return whether the given object is a CloudAssembly.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static isCloudAssembly(x) {
+        return x !== null && typeof x === "object" && CLOUD_ASSEMBLY_SYMBOL in x;
+      }
+      /**
+       * Cleans up any temporary assembly directories that got created in this process
+       *
+       * If a Cloud Assembly is emitted to a temporary directory, its directory gets
+       * added to a list. This function iterates over that list and deletes each
+       * directory in it, to free up disk space.
+       *
+       * This function will normally be called automatically during Node process
+       * exit and so you don't need to call this. However, some test environments do
+       * not properly trigger Node's `exit` event. Notably: Jest does not trigger
+       * the `exit` event ().
+       *
+       * ## Cleaning up temporary directories in jest
+       *
+       * For Jest, you have to make sure this function is called at the end of the
+       * test suite instead:
+       *
+       * ```js
+       * import { CloudAssembly } from 'aws-cdk-lib/cx-api';
+       *
+       * afterAll(CloudAssembly.cleanupTemporaryDirectories);
+       * ```
+       *
+       * Alternatively, you can use the `setupFilesAfterEnv` feature and use a
+       * provided helper script to automatically inject the above into every
+       * test file, so you don't have to do it by hand.
+       *
+       * ```
+       * $ npx jest --setupFilesAfterEnv aws-cdk-lib/testhelpers/jest-autoclean
+       * ```
+       *
+       * Or put the following into `jest.config.js`:
+       *
+       * ```js
+       * module.exports = {
+       *   // ...
+       *   setupFilesAfterEnv: ['aws-cdk-lib/testhelpers/jest-cleanup'],
+       * };
+       * ```
+       */
+      static cleanupTemporaryDirectories() {
+        for (const dir of TEMPORARY_ASSEMBLY_DIRS) {
+          fs19.rmSync(dir, { recursive: true, force: true });
+        }
+        TEMPORARY_ASSEMBLY_DIRS.splice(0, TEMPORARY_ASSEMBLY_DIRS.length);
+      }
+      /**
+       * Reads a cloud assembly from the specified directory.
+       * @param directory - The root directory of the assembly.
+       */
+      constructor(directory, loadOptions) {
+        this.directory = directory;
+        this.loadOptions = loadOptions;
+        this.manifest = cxschema2.Manifest.loadAssemblyManifest(path23.join(directory, MANIFEST_FILE), this.loadOptions);
+        this.version = this.manifest.version;
+        this.artifacts = this.renderArtifacts(this.loadOptions?.topoSort ?? true);
+        this.runtime = this.manifest.runtime || { libraries: {} };
+        Object.defineProperty(this, CLOUD_ASSEMBLY_SYMBOL, { value: true });
+        this.validateDeps();
+      }
+      /**
+       * Attempts to find an artifact with a specific identity.
+       * @returns A `CloudArtifact` object or `undefined` if the artifact does not exist in this assembly.
+       * @param id - The artifact ID
+       */
+      tryGetArtifact(id) {
+        return this.artifacts.find((a) => a.id === id);
+      }
+      /**
+       * Returns a CloudFormation stack artifact from this assembly.
+       *
+       * Will only search the current assembly.
+       *
+       * @param stackName - the name of the CloudFormation stack.
+       * @throws if there is no stack artifact by that name
+       * @throws if there is more than one stack with the same stack name. You can
+       * use `getStackArtifact(stack.artifactId)` instead.
+       * @returns a `CloudFormationStackArtifact` object.
+       */
+      getStackByName(stackName) {
+        const artifacts = this.artifacts.filter((a) => a instanceof cloudformation_artifact_1.CloudFormationStackArtifact && a.stackName === stackName);
+        if (!artifacts || artifacts.length === 0) {
+          throw new error_1.CloudAssemblyError(`Unable to find stack with stack name "${stackName}"`);
+        }
+        if (artifacts.length > 1) {
+          throw new error_1.CloudAssemblyError(`There are multiple stacks with the stack name "${stackName}" (${artifacts.map((a) => a.id).join(",")}). Use "getStackArtifact(id)" instead`);
+        }
+        return artifacts[0];
+      }
+      /**
+       * Returns a CloudFormation stack artifact by name from this assembly.
+       * @deprecated renamed to `getStackByName` (or `getStackArtifact(id)`)
+       */
+      getStack(stackName) {
+        return this.getStackByName(stackName);
+      }
+      /**
+       * Returns a CloudFormation stack artifact from this assembly.
+       *
+       * @param artifactId - the artifact id of the stack (can be obtained through `stack.artifactId`).
+       * @throws if there is no stack artifact with that id
+       * @returns a `CloudFormationStackArtifact` object.
+       */
+      getStackArtifact(artifactId) {
+        const artifact = this.tryGetArtifactRecursively(artifactId);
+        if (!artifact) {
+          throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`);
+        }
+        if (!(artifact instanceof cloudformation_artifact_1.CloudFormationStackArtifact)) {
+          throw new error_1.CloudAssemblyError(`Artifact ${artifactId} is not a CloudFormation stack`);
+        }
+        return artifact;
+      }
+      tryGetArtifactRecursively(artifactId) {
+        return this.stacksRecursively.find((a) => a.id === artifactId);
+      }
+      /**
+       * Returns all the stacks, including the ones in nested assemblies
+       */
+      get stacksRecursively() {
+        function search(stackArtifacts, assemblies) {
+          if (assemblies.length === 0) {
+            return stackArtifacts;
+          }
+          const [head, ...tail] = assemblies;
+          const nestedAssemblies = head.nestedAssemblies.map((asm) => asm.nestedAssembly);
+          return search(stackArtifacts.concat(head.stacks), tail.concat(nestedAssemblies));
+        }
+        return search([], [this]);
+      }
+      /**
+       * Returns a nested assembly artifact.
+       *
+       * @param artifactId - The artifact ID of the nested assembly
+       */
+      getNestedAssemblyArtifact(artifactId) {
+        const artifact = this.tryGetArtifact(artifactId);
+        if (!artifact) {
+          throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`);
+        }
+        if (!(artifact instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact)) {
+          throw new error_1.CloudAssemblyError(`Found artifact '${artifactId}' but it's not a nested cloud assembly`);
+        }
+        return artifact;
+      }
+      /**
+       * Returns a nested assembly.
+       *
+       * @param artifactId - The artifact ID of the nested assembly
+       */
+      getNestedAssembly(artifactId) {
+        return this.getNestedAssemblyArtifact(artifactId).nestedAssembly;
+      }
+      /**
+       * Returns the tree metadata artifact from this assembly.
+       * @throws if there is no metadata artifact by that name
+       * @returns a `TreeCloudArtifact` object if there is one defined in the manifest, `undefined` otherwise.
+       */
+      tree() {
+        const trees = this.artifacts.filter((a) => a.manifest.type === cxschema2.ArtifactType.CDK_TREE);
+        if (trees.length === 0) {
+          return void 0;
+        } else if (trees.length > 1) {
+          throw new error_1.CloudAssemblyError(`Multiple artifacts of type ${cxschema2.ArtifactType.CDK_TREE} found in manifest`);
+        }
+        const tree = trees[0];
+        if (!(tree instanceof tree_cloud_artifact_1.TreeCloudArtifact)) {
+          throw new error_1.CloudAssemblyError('"Tree" artifact is not of expected type');
+        }
+        return tree;
+      }
+      /**
+       * @returns all the CloudFormation stack artifacts that are included in this assembly.
+       */
+      get stacks() {
+        return this.artifacts.filter(isCloudFormationStackArtifact);
+        function isCloudFormationStackArtifact(x) {
+          return x instanceof cloudformation_artifact_1.CloudFormationStackArtifact;
+        }
+      }
+      /**
+       * The nested assembly artifacts in this assembly
+       */
+      get nestedAssemblies() {
+        return this.artifacts.filter(isNestedCloudAssemblyArtifact);
+        function isNestedCloudAssemblyArtifact(x) {
+          return x instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact;
+        }
+      }
+      validateDeps() {
+        for (const artifact of this.artifacts) {
+          ignore(artifact.dependencies);
+        }
+      }
+      renderArtifacts(topoSort) {
+        const result = new Array();
+        for (const [name, artifact] of Object.entries(this.manifest.artifacts || {})) {
+          const cloudartifact = cloud_artifact_1.CloudArtifact.fromManifest(this, name, artifact);
+          if (cloudartifact) {
+            result.push(cloudartifact);
+          }
+        }
+        return topoSort ? (0, toposort_1.topologicalSort)(result, (x) => x.id, (x) => x._dependencyIDs) : result;
+      }
+    };
+    exports2.CloudAssembly = CloudAssembly;
+    var CloudAssemblyBuilder3 = class _CloudAssemblyBuilder {
+      /**
+       * Initializes a cloud assembly builder.
+       * @param outdir - The output directory, uses temporary directory if undefined
+       */
+      constructor(outdir, props = {}) {
+        this.artifacts = {};
+        this.missing = new Array();
+        this.outdir = determineOutputDirectory(outdir);
+        this.assetOutdir = props.assetOutdir ?? this.outdir;
+        this.parentBuilder = props.parentBuilder;
+        ensureDirSync2(this.outdir);
+      }
+      /**
+       * Adds an artifact into the cloud assembly.
+       * @param id - The ID of the artifact.
+       * @param manifest - The artifact manifest
+       */
+      addArtifact(id, manifest) {
+        this.artifacts[id] = filterUndefined2(manifest);
+      }
+      /**
+       * Reports that some context is missing in order for this cloud assembly to be fully synthesized.
+       * @param missing - Missing context information.
+       */
+      addMissing(missing) {
+        if (this.missing.every((m) => m.key !== missing.key)) {
+          this.missing.push(missing);
+        }
+        this.parentBuilder?.addMissing(missing);
+      }
+      /**
+       * Finalizes the cloud assembly into the output directory returns a
+       * `CloudAssembly` object that can be used to inspect the assembly.
+       */
+      buildAssembly(options = {}) {
+        let manifest = {
+          version: cxschema2.Manifest.version(),
+          artifacts: this.artifacts,
+          runtime: options.runtimeInfo,
+          missing: this.missing.length > 0 ? this.missing : void 0
+        };
+        manifest = filterUndefined2(manifest);
+        const manifestFilePath = path23.join(this.outdir, MANIFEST_FILE);
+        cxschema2.Manifest.saveAssemblyManifest(manifest, manifestFilePath);
+        fs19.writeFileSync(path23.join(this.outdir, "cdk.out"), JSON.stringify({ version: manifest.version }));
+        return new CloudAssembly(this.outdir);
+      }
+      /**
+       * Creates a nested cloud assembly
+       */
+      createNestedAssembly(artifactId, displayName) {
+        const directoryName = artifactId;
+        const innerAsmDir = path23.join(this.outdir, directoryName);
+        this.addArtifact(artifactId, {
+          type: cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY,
+          properties: {
+            directoryName,
+            displayName
+          }
+        });
+        return new _CloudAssemblyBuilder(innerAsmDir, {
+          // Reuse the same asset output directory as the current Casm builder
+          assetOutdir: this.assetOutdir,
+          parentBuilder: this
+        });
+      }
+      /**
+       * Delete the cloud assembly directory
+       */
+      delete() {
+        fs19.rmSync(this.outdir, { recursive: true, force: true });
+      }
+    };
+    exports2.CloudAssemblyBuilder = CloudAssemblyBuilder3;
+    function filterUndefined2(obj) {
+      if (Array.isArray(obj)) {
+        return obj.filter((x) => x !== void 0).map((x) => filterUndefined2(x));
+      }
+      if (typeof obj === "object") {
+        const ret = {};
+        for (const [key, value] of Object.entries(obj)) {
+          if (value === void 0) {
+            continue;
+          }
+          ret[key] = filterUndefined2(value);
+        }
+        return ret;
+      }
+      return obj;
+    }
+    function ignore(_x) {
+      return;
+    }
+    function determineOutputDirectory(outdir) {
+      if (outdir) {
+        return outdir;
+      }
+      const tmpDir = fs19.mkdtempSync(path23.join(fs19.realpathSync(os4.tmpdir()), "cdk.out"));
+      TEMPORARY_ASSEMBLY_DIRS.push(tmpDir);
+      return outdir ?? tmpDir;
+    }
+    function ensureDirSync2(dir) {
+      if (fs19.existsSync(dir)) {
+        if (!fs19.statSync(dir).isDirectory()) {
+          throw new error_1.CloudAssemblyError(`${dir} must be a directory`);
+        }
+      } else {
+        fs19.mkdirSync(dir, { recursive: true });
+      }
+    }
+    var TEMPORARY_ASSEMBLY_DIRS = [];
+    process.on("exit", () => CloudAssembly.cleanupTemporaryDirectories());
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js
+var require_nested_cloud_assembly_artifact_aug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var cloud_assembly_1 = require_cloud_assembly2();
+    var cacheSym = /* @__PURE__ */ Symbol();
+    Object.defineProperty(nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact.prototype, "nestedAssembly", {
+      get() {
+        if (!this[cacheSym]) {
+          this[cacheSym] = new cloud_assembly_1.CloudAssembly(this.fullPath, this.assembly.loadOptions);
+        }
+        return this[cacheSym];
+      }
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js
+var require_assets2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ASSET_PREFIX_SEPARATOR = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = void 0;
+    exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = "aws:cdk:enable-asset-metadata";
+    exports2.ASSET_RESOURCE_METADATA_PATH_KEY = "aws:asset:path";
+    exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = "aws:asset:dockerfile-path";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = "aws:asset:docker-build-args";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = "aws:asset:docker-build-contexts";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = "aws:asset:docker-build-secrets";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = "aws:asset:docker-build-ssh";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = "aws:asset:docker-build-target";
+    exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = "aws:asset:property";
+    exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = "aws:asset:is-bundled";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = "aws:asset:docker-outputs";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = "aws:asset:docker-cache-from";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = "aws:asset:docker-cache-to";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = "aws:asset:docker-cache-disabled";
+    exports2.ASSET_PREFIX_SEPARATOR = "||";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js
+var require_placeholders = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EnvironmentPlaceholders = void 0;
+    var EnvironmentPlaceholders4 = class _EnvironmentPlaceholders {
+      /**
+       * Replace the environment placeholders in all strings found in a complex object.
+       *
+       * Duplicated between cdk-assets and aws-cdk CLI because we don't have a good single place to put it
+       * (they're nominally independent tools).
+       */
+      static replace(object, values) {
+        return this.recurse(object, (value) => {
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, values.region);
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, values.accountId);
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, values.partition);
+          return value;
+        });
+      }
+      /**
+       * Like 'replace', but asynchronous
+       */
+      static async replaceAsync(object, provider) {
+        let needRegion = false;
+        let needAccountId = false;
+        let needPartition = false;
+        this.recurse(object, (value) => {
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_REGION) > 1) {
+            needRegion = true;
+          }
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_ACCOUNT) > 1) {
+            needAccountId = true;
+          }
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_PARTITION) > 1) {
+            needPartition = true;
+          }
+          return value;
+        });
+        const region = needRegion ? await provider.region() : void 0;
+        const accountId = needAccountId ? await provider.accountId() : void 0;
+        const partition = needPartition ? await provider.partition() : void 0;
+        return this.recurse(object, (value) => {
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, region ?? "WONTHAPPEN");
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, accountId ?? "WONTHAPPEN");
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, partition ?? "WONTHAPPEN");
+          return value;
+        });
+      }
+      static recurse(value, cb) {
+        if (typeof value === "string") {
+          return cb(value);
+        }
+        if (typeof value !== "object" || value === null) {
+          return value;
+        }
+        if (Array.isArray(value)) {
+          return value.map((x) => this.recurse(x, cb));
+        }
+        const ret = {};
+        for (const [key, inner] of Object.entries(value)) {
+          ret[key] = this.recurse(inner, cb);
+        }
+        return ret;
+      }
+    };
+    exports2.EnvironmentPlaceholders = EnvironmentPlaceholders4;
+    EnvironmentPlaceholders4.CURRENT_REGION = "${AWS::Region}";
+    EnvironmentPlaceholders4.CURRENT_ACCOUNT = "${AWS::AccountId}";
+    EnvironmentPlaceholders4.CURRENT_PARTITION = "${AWS::Partition}";
+    function replaceAll3(s, search, replace) {
+      return s.split(search).join(replace);
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js
+var require_bootstrap = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.SSMPARAM_NO_INVALIDATE = void 0;
+    exports2.SSMPARAM_NO_INVALIDATE = "[cdk:skip]";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js
+var require_lib3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_vpc(), exports2);
+    __exportStar2(require_ami(), exports2);
+    __exportStar2(require_load_balancer(), exports2);
+    __exportStar2(require_availability_zones(), exports2);
+    __exportStar2(require_endpoint_service_availability_zones(), exports2);
+    __exportStar2(require_security_group(), exports2);
+    __exportStar2(require_key(), exports2);
+    __exportStar2(require_generic(), exports2);
+    __exportStar2(require_cloud_artifact(), exports2);
+    require_cloud_artifact_aug();
+    __exportStar2(require_asset_manifest_artifact(), exports2);
+    __exportStar2(require_cloudformation_artifact(), exports2);
+    __exportStar2(require_tree_cloud_artifact(), exports2);
+    __exportStar2(require_nested_cloud_assembly_artifact(), exports2);
+    require_nested_cloud_assembly_artifact_aug();
+    __exportStar2(require_cloud_assembly2(), exports2);
+    __exportStar2(require_assets2(), exports2);
+    __exportStar2(require_metadata(), exports2);
+    __exportStar2(require_placeholders(), exports2);
+    __exportStar2(require_environment(), exports2);
+    __exportStar2(require_bootstrap(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/legacy-moved.ts
+function _convertCloudAssembly(x) {
+  return x;
+}
+function _convertCloudAssemblyBuilder(x) {
+  return x;
+}
+var import_cloud_assembly_api;
+var init_legacy_moved = __esm({
+  "../../aws-cdk-lib/cx-api/lib/legacy-moved.ts"() {
+    "use strict";
+    import_cloud_assembly_api = __toESM(require_lib3());
+    exports.CloudAssembly = import_cloud_assembly_api.CloudAssembly;
+    exports.CloudArtifact = import_cloud_assembly_api.CloudArtifact;
+    exports.CloudFormationStackArtifact = import_cloud_assembly_api.CloudFormationStackArtifact;
+    exports.AssetManifestArtifact = import_cloud_assembly_api.AssetManifestArtifact;
+    exports.NestedCloudAssemblyArtifact = import_cloud_assembly_api.NestedCloudAssemblyArtifact;
+    exports.TreeCloudArtifact = import_cloud_assembly_api.TreeCloudArtifact;
+    exports.CloudAssemblyBuilder = import_cloud_assembly_api.CloudAssemblyBuilder;
+    exports.EnvironmentPlaceholders = import_cloud_assembly_api.EnvironmentPlaceholders;
+    exports.EnvironmentUtils = import_cloud_assembly_api.EnvironmentUtils;
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/cxapi.ts
+var OUTDIR_ENV, CONTEXT_ENV, ERRORFILE_ENV, PERF_COUNTERS_FILE_ENV, CONTEXT_OVERFLOW_LOCATION_ENV, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, VALIDATION_REPORT_FILE, VALIDATION_REPORT_JSON_CONTEXT, STRICT_CFN_VALIDATE_ERRORS, CDK_APP_MODE_ENV, CDK_APP_MODE_CONTEXT, CDK_TEMPLATE_FILE_KEY;
+var init_cxapi = __esm({
+  "../../aws-cdk-lib/cx-api/lib/cxapi.ts"() {
+    "use strict";
+    OUTDIR_ENV = "CDK_OUTDIR";
+    CONTEXT_ENV = "CDK_CONTEXT_JSON";
+    ERRORFILE_ENV = "CDK_ERROR_FILE";
+    PERF_COUNTERS_FILE_ENV = "CDK_PERF_COUNTERS_FILE";
+    CONTEXT_OVERFLOW_LOCATION_ENV = "CONTEXT_OVERFLOW_LOCATION_ENV";
+    FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT = "@aws-cdk/core:failSynthOnValidationErrors";
+    VALIDATION_REPORT_FILE = "validation-report.json";
+    VALIDATION_REPORT_JSON_CONTEXT = "@aws-cdk/core:validationReportJson";
+    STRICT_CFN_VALIDATE_ERRORS = "@aws-cdk/core:strictCfnValidateErrors";
+    CDK_APP_MODE_ENV = "CDK_APP_MODE";
+    CDK_APP_MODE_CONTEXT = "@aws-cdk/core:appMode";
+    CDK_TEMPLATE_FILE_KEY = "aws:cdk:templateFile";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts
+var init_flag_modeling = __esm({
+  "../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/features.ts
+function futureFlagDefault(flag) {
+  const value = CURRENT_VERSION_FLAG_DEFAULTS[flag] ?? false;
+  if (typeof value !== "boolean") {
+    throw new Error(`futureFlagDefault: default type of flag '${flag}' should be boolean, got '${typeof value}'`);
+  }
+  return value;
+}
+var ENABLE_STACK_NAME_DUPLICATES_CONTEXT, ENABLE_DIFF_NO_FAIL_CONTEXT, NEW_STYLE_STACK_SYNTHESIS_CONTEXT, STACK_RELATIVE_EXPORTS_CONTEXT, DOCKER_IGNORE_SUPPORT, SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME, KMS_DEFAULT_KEY_POLICIES, S3_GRANT_WRITE_WITHOUT_ACL, ECS_REMOVE_DEFAULT_DESIRED_COUNT, RDS_LOWERCASE_DB_IDENTIFIER, APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID, EFS_DEFAULT_ENCRYPTION_AT_REST, LAMBDA_RECOGNIZE_VERSION_PROPS, LAMBDA_RECOGNIZE_LAYER_VERSION, CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021, CHECK_SECRET_USAGE, TARGET_PARTITIONS, ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER, EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME, ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME, IAM_MINIMIZE_POLICIES, IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME, VALIDATE_SNAPSHOT_REMOVAL_POLICY, CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME, S3_CREATE_DEFAULT_LOGGING_POLICY, SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY, APIGATEWAY_DISABLE_CLOUDWATCH_ROLE, ENABLE_PARTITION_LITERALS, EVENTS_TARGET_QUEUE_SAME_ACCOUNT, ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER, ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER, S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY, ROUTE53_PATTERNS_USE_CERTIFICATE, ROUTE53_PATTERNS_USE_DISTRIBUTION, AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT, DATABASE_PROXY_UNIQUE_RESOURCE_NAME, CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP, APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID, EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA, SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY, REDSHIFT_COLUMN_ID, ENABLE_EMR_SERVICE_POLICY_V2, EC2_RESTRICT_DEFAULT_SECURITY_GROUP, APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID, APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD, INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION, KMS_ALIAS_NAME_REF, KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL, EFS_DENY_ANONYMOUS_ACCESS, EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID, AUTOSCALING_GENERATE_LAUNCH_TEMPLATE, ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY, LAMBDA_NODEJS_USE_LATEST_RUNTIME, RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS, AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS, APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION, CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME, LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION, CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE, CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2, KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE, PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE, EKS_NODEGROUP_NAME, EKS_USE_NATIVE_OIDC_PROVIDER, ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID, EBS_DEFAULT_GP3, ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM, LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT, S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET, USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK, EXPLICIT_STACK_TAGS, REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS, DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA, EC2_SUM_TIMEOUT_ENABLED, APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION, USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY, CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS, LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES, STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY, STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2, BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT, ASPECT_STABILIZATION, SIGNER_PROFILE_NAME_PASSED_TO_CFN, USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE, ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT, IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS, ENABLE_ADDITIONAL_METADATA_COLLECTION, LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY, SET_UNIQUE_REPLICATION_ROLE_NAME, PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE, EVENTBUS_POLICY_SID_REQUIRED, ASPECT_PRIORITIES_MUTATING, DYNAMODB_TABLE_RETAIN_TABLE_REPLICA, LOG_USER_POOL_CLIENT_SECRET_VALUE, PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE, S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS, EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY, USE_RESOURCEID_FOR_VPCV2_MIGRATION, S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT, USE_CDK_MANAGED_LAMBDA_LOGGROUP, NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT, STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT, CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0, ELB_USE_POST_QUANTUM_TLS_POLICY, AUTOMATIC_L1_TRAITS, BATCH_DEFAULT_AL2023, EKS_DEFAULT_AL2023, ANNOTATIONS_IN_VALIDATION_REPORT, DEFAULT_CROSS_STACK_REFERENCES, VALIDATE_AGAINST_DEFAULT_RULES, ECS_REMOVE_EMPTY_LOAD_BALANCERS, CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS, FLAGS, CURRENT_MV, CURRENT_VERSION_EXPIRED_FLAGS, CURRENTLY_RECOMMENDED_FLAGS, CURRENT_VERSION_FLAG_DEFAULTS, FUTURE_FLAGS, NEW_PROJECT_DEFAULT_CONTEXT;
+var init_features = __esm({
+  "../../aws-cdk-lib/cx-api/lib/features.ts"() {
+    "use strict";
+    init_flag_modeling();
+    ENABLE_STACK_NAME_DUPLICATES_CONTEXT = "@aws-cdk/core:enableStackNameDuplicates";
+    ENABLE_DIFF_NO_FAIL_CONTEXT = "aws-cdk:enableDiffNoFail";
+    NEW_STYLE_STACK_SYNTHESIS_CONTEXT = "@aws-cdk/core:newStyleStackSynthesis";
+    STACK_RELATIVE_EXPORTS_CONTEXT = "@aws-cdk/core:stackRelativeExports";
+    DOCKER_IGNORE_SUPPORT = "@aws-cdk/aws-ecr-assets:dockerIgnoreSupport";
+    SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME = "@aws-cdk/aws-secretsmanager:parseOwnedSecretName";
+    KMS_DEFAULT_KEY_POLICIES = "@aws-cdk/aws-kms:defaultKeyPolicies";
+    S3_GRANT_WRITE_WITHOUT_ACL = "@aws-cdk/aws-s3:grantWriteWithoutAcl";
+    ECS_REMOVE_DEFAULT_DESIRED_COUNT = "@aws-cdk/aws-ecs-patterns:removeDefaultDesiredCount";
+    RDS_LOWERCASE_DB_IDENTIFIER = "@aws-cdk/aws-rds:lowercaseDbIdentifier";
+    APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID = "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId";
+    EFS_DEFAULT_ENCRYPTION_AT_REST = "@aws-cdk/aws-efs:defaultEncryptionAtRest";
+    LAMBDA_RECOGNIZE_VERSION_PROPS = "@aws-cdk/aws-lambda:recognizeVersionProps";
+    LAMBDA_RECOGNIZE_LAYER_VERSION = "@aws-cdk/aws-lambda:recognizeLayerVersion";
+    CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021 = "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021";
+    CHECK_SECRET_USAGE = "@aws-cdk/core:checkSecretUsage";
+    TARGET_PARTITIONS = "@aws-cdk/core:target-partitions";
+    ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER = "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver";
+    EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME = "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName";
+    ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME = "@aws-cdk/aws-ecs:arnFormatIncludesClusterName";
+    IAM_MINIMIZE_POLICIES = "@aws-cdk/aws-iam:minimizePolicies";
+    IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME = "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName";
+    VALIDATE_SNAPSHOT_REMOVAL_POLICY = "@aws-cdk/core:validateSnapshotRemovalPolicy";
+    CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME = "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName";
+    S3_CREATE_DEFAULT_LOGGING_POLICY = "@aws-cdk/aws-s3:createDefaultLoggingPolicy";
+    SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY = "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption";
+    APIGATEWAY_DISABLE_CLOUDWATCH_ROLE = "@aws-cdk/aws-apigateway:disableCloudWatchRole";
+    ENABLE_PARTITION_LITERALS = "@aws-cdk/core:enablePartitionLiterals";
+    EVENTS_TARGET_QUEUE_SAME_ACCOUNT = "@aws-cdk/aws-events:eventsTargetQueueSameAccount";
+    ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER = "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker";
+    ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER = "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener";
+    S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY = "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy";
+    ROUTE53_PATTERNS_USE_CERTIFICATE = "@aws-cdk/aws-route53-patters:useCertificate";
+    ROUTE53_PATTERNS_USE_DISTRIBUTION = "@aws-cdk/aws-route53-patterns:useDistribution";
+    AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT = "@aws-cdk/customresources:installLatestAwsSdkDefault";
+    DATABASE_PROXY_UNIQUE_RESOURCE_NAME = "@aws-cdk/aws-rds:databaseProxyUniqueResourceName";
+    CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP = "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup";
+    APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID = "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId";
+    EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA = "@aws-cdk/aws-ec2:launchTemplateDefaultUserData";
+    SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY = "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments";
+    REDSHIFT_COLUMN_ID = "@aws-cdk/aws-redshift:columnId";
+    ENABLE_EMR_SERVICE_POLICY_V2 = "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2";
+    EC2_RESTRICT_DEFAULT_SECURITY_GROUP = "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup";
+    APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID = "@aws-cdk/aws-apigateway:requestValidatorUniqueId";
+    APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD = "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard";
+    INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION = "@aws-cdk/core:includePrefixInUniqueNameGeneration";
+    KMS_ALIAS_NAME_REF = "@aws-cdk/aws-kms:aliasNameRef";
+    KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL = "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal";
+    EFS_DENY_ANONYMOUS_ACCESS = "@aws-cdk/aws-efs:denyAnonymousAccess";
+    EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID = "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId";
+    AUTOSCALING_GENERATE_LAUNCH_TEMPLATE = "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig";
+    ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY = "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby";
+    LAMBDA_NODEJS_USE_LATEST_RUNTIME = "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion";
+    RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS = "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials";
+    AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS = "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters";
+    APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION = "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier";
+    CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME = "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource";
+    LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION = "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction";
+    CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE = "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse";
+    CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2 = "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2";
+    KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE = "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope";
+    PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceAssetRoleTrustScope";
+    EKS_NODEGROUP_NAME = "@aws-cdk/aws-eks:nodegroupNameAttribute";
+    EKS_USE_NATIVE_OIDC_PROVIDER = "@aws-cdk/aws-eks:useNativeOidcProvider";
+    ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID = "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId";
+    EBS_DEFAULT_GP3 = "@aws-cdk/aws-ec2:ebsDefaultGp3Volume";
+    ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM = "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm";
+    LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT = "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault";
+    S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET = "@aws-cdk/aws-s3:keepNotificationInImportedBucket";
+    USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK = "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask";
+    EXPLICIT_STACK_TAGS = "@aws-cdk/core:explicitStackTags";
+    REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS = "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions";
+    DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA = "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica";
+    EC2_SUM_TIMEOUT_ENABLED = "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled";
+    APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION = "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission";
+    USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY = "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId";
+    CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS = "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics";
+    LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES = "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages";
+    STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY = "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy";
+    STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2 = "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2";
+    BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT = "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault";
+    ASPECT_STABILIZATION = "@aws-cdk/core:aspectStabilization";
+    SIGNER_PROFILE_NAME_PASSED_TO_CFN = "@aws-cdk/aws-signer:signingProfileNamePassedToCfn";
+    USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE = "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource";
+    ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT = "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault";
+    IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS = "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections";
+    ENABLE_ADDITIONAL_METADATA_COLLECTION = "@aws-cdk/core:enableAdditionalMetadataCollection";
+    LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY = "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy";
+    SET_UNIQUE_REPLICATION_ROLE_NAME = "@aws-cdk/aws-s3:setUniqueReplicationRoleName";
+    PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceStageRoleTrustScope";
+    EVENTBUS_POLICY_SID_REQUIRED = "@aws-cdk/aws-events:requireEventBusPolicySid";
+    ASPECT_PRIORITIES_MUTATING = "@aws-cdk/core:aspectPrioritiesMutating";
+    DYNAMODB_TABLE_RETAIN_TABLE_REPLICA = "@aws-cdk/aws-dynamodb:retainTableReplica";
+    LOG_USER_POOL_CLIENT_SECRET_VALUE = "@aws-cdk/cognito:logUserPoolClientSecretValue";
+    PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope";
+    S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS = "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions";
+    EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY = "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway";
+    USE_RESOURCEID_FOR_VPCV2_MIGRATION = "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration";
+    S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT = "@aws-cdk/aws-s3:publicAccessBlockedByDefault";
+    USE_CDK_MANAGED_LAMBDA_LOGGROUP = "@aws-cdk/aws-lambda:useCdkManagedLogGroup";
+    NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT = "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault";
+    STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT = "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint";
+    CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0 = "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0";
+    ELB_USE_POST_QUANTUM_TLS_POLICY = "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy";
+    AUTOMATIC_L1_TRAITS = "@aws-cdk/core:automaticL1Traits";
+    BATCH_DEFAULT_AL2023 = "@aws-cdk/aws-batch:defaultToAL2023";
+    EKS_DEFAULT_AL2023 = "@aws-cdk/aws-eks:defaultToAL2023";
+    ANNOTATIONS_IN_VALIDATION_REPORT = "@aws-cdk/core:annotationsInValidationReport";
+    DEFAULT_CROSS_STACK_REFERENCES = "@aws-cdk/core:defaultCrossStackReferences";
+    VALIDATE_AGAINST_DEFAULT_RULES = "@aws-cdk/core:validateAgainstDefaultRules";
+    ECS_REMOVE_EMPTY_LOAD_BALANCERS = "@aws-cdk/aws-ecs:removeEmptyLoadBalancers";
+    CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS = "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps";
+    FLAGS = {
+      //////////////////////////////////////////////////////////////////////
+      [SIGNER_PROFILE_NAME_PASSED_TO_CFN]: {
+        type: 1 /* BugFix */,
+        summary: "Pass signingProfileName to CfnSigningProfile",
+        detailsMd: `
+      When enabled, the \`signingProfileName\` property is passed to the L1 \`CfnSigningProfile\` construct,
+      which ensures that the AWS Signer profile is created with the specified name.
+
+      When disabled, the \`signingProfileName\` is not passed to CloudFormation, maintaining backward
+      compatibility with existing deployments where CloudFormation auto-generated profile names.
+
+      This feature flag is needed because enabling it can cause existing signing profiles to be
+      replaced during deployment if a \`signingProfileName\` was specified but not previously used
+      in the CloudFormation template.`,
+        introducedIn: { v2: "2.212.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_STACK_NAME_DUPLICATES_CONTEXT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Allow multiple stacks with the same name",
+        detailsMd: `
+      If this is set, multiple stacks can use the same stack name (e.g. deployed to
+      different environments). This means that the name of the synthesized template
+      file will be based on the construct path and not on the defined \`stackName\`
+      of the stack.`,
+        recommendedValue: true,
+        introducedIn: { v1: "1.16.0" },
+        unconfiguredBehavesLike: { v2: true },
+        compatibilityWithOldBehaviorMd: "Pass stack identifiers to the CLI instead of stack names."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_DIFF_NO_FAIL_CONTEXT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Make `cdk diff` not fail when there are differences",
+        detailsMd: `
+      Determines what status code \`cdk diff\` should return when the specified stack
+      differs from the deployed stack or the local CloudFormation template:
+
+      * \`aws-cdk:enableDiffNoFail=true\` => status code == 0
+      * \`aws-cdk:enableDiffNoFail=false\` => status code == 1
+
+      You can override this behavior with the --fail flag:
+
+      * \`--fail\` => status code == 1
+      * \`--no-fail\` => status code == 0`,
+        introducedIn: { v1: "1.19.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Specify `--fail` to the CLI."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [NEW_STYLE_STACK_SYNTHESIS_CONTEXT]: {
+        type: 1 /* BugFix */,
+        summary: "Switch to new stack synthesis method which enables CI/CD",
+        detailsMd: `
+      If this flag is specified, all \`Stack\`s will use the \`DefaultStackSynthesizer\` by
+      default. If it is not set, they will use the \`LegacyStackSynthesizer\`.`,
+        introducedIn: { v1: "1.39.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STACK_RELATIVE_EXPORTS_CONTEXT]: {
+        type: 1 /* BugFix */,
+        summary: "Name exports based on the construct paths relative to the stack, rather than the global construct path",
+        detailsMd: `
+      Combined with the stack name this relative construct path is good enough to
+      ensure uniqueness, and makes the export names robust against refactoring
+      the location of the stack in the construct tree (specifically, moving the Stack
+      into a Stage).`,
+        introducedIn: { v1: "1.58.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DOCKER_IGNORE_SUPPORT]: {
+        type: 0 /* ApiDefault */,
+        summary: "DockerImageAsset properly supports `.dockerignore` files by default",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`DockerImageAsset\` is to use
+      glob semantics for \`.dockerignore\` files. If this flag is set, the default behavior
+      is standard Docker ignore semantics.
+
+      This is a feature flag as the old behavior was technically incorrect but
+      users may have come to depend on it.`,
+        introducedIn: { v1: "1.73.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Update your `.dockerignore` file to match standard Docker ignore rules, if necessary."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME]: {
+        type: 0 /* ApiDefault */,
+        summary: "Fix the referencing of SecretsManager names from ARNs",
+        detailsMd: `
+      Secret.secretName for an "owned" secret will attempt to parse the secretName from the ARN,
+      rather than the default full resource name, which includes the SecretsManager suffix.
+
+      If this flag is not set, Secret.secretName will include the SecretsManager suffix, which cannot be directly
+      used by SecretsManager.DescribeSecret, and must be parsed by the user first (e.g., Fn:Join, Fn:Select, Fn:Split).`,
+        introducedIn: { v1: "1.77.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Use `parseArn(secret.secretName).resourceName` to emulate the incorrect old parsing."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_DEFAULT_KEY_POLICIES]: {
+        type: 0 /* ApiDefault */,
+        summary: "Tighten default KMS key policies",
+        detailsMd: `
+      KMS Keys start with a default key policy that grants the account access to administer the key,
+      mirroring the behavior of the KMS SDK/CLI/Console experience. Users may override the default key
+      policy by specifying their own.
+
+      If this flag is not set, the default key policy depends on the setting of the \`trustAccountIdentities\`
+      flag. If false (the default, for backwards-compatibility reasons), the default key policy somewhat
+      resembles the default admin key policy, but with the addition of 'GenerateDataKey' permissions. If
+      true, the policy matches what happens when this feature flag is set.
+
+      Additionally, if this flag is not set and the user supplies a custom key policy, this will be appended
+      to the key's default policy (rather than replacing it).`,
+        introducedIn: { v1: "1.78.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `trustAccountIdentities: false` to `Key` construct to restore the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_GRANT_WRITE_WITHOUT_ACL]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove `PutObjectAcl` from Bucket.grantWrite",
+        detailsMd: `
+      Change the old 's3:PutObject*' permission to 's3:PutObject' on Bucket,
+      as the former includes 's3:PutObjectAcl',
+      which could be used to grant read/write object access to IAM principals in other accounts.
+      Use a feature flag to make sure existing customers who might be relying
+      on the overly-broad permissions are not broken.`,
+        introducedIn: { v1: "1.85.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Call `bucket.grantPutAcl()` in addition to `bucket.grantWrite()` to grant ACL permissions."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_DEFAULT_DESIRED_COUNT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Do not specify a default DesiredCount for ECS services",
+        detailsMd: `
+      ApplicationLoadBalancedServiceBase, ApplicationMultipleTargetGroupServiceBase,
+      NetworkLoadBalancedServiceBase, NetworkMultipleTargetGroupServiceBase, and
+      QueueProcessingServiceBase currently determine a default value for the desired count of
+      a CfnService if a desiredCount is not provided. The result of this is that on every
+      deployment, the service count is reset to the fixed value, even if it was autoscaled.
+
+      If this flag is not set, the default behaviour for CfnService.desiredCount is to set a
+      desiredCount of 1, if one is not provided. If true, a default will not be defined for
+      CfnService.desiredCount and as such desiredCount will be undefined, if one is not provided.`,
+        introducedIn: { v1: "1.92.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `desiredCount: 1` explicitly, but you should never need this."
+      },
+      [ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER]: {
+        type: 0 /* ApiDefault */,
+        summary: "Disable implicit openListener when custom security groups are provided",
+        detailsMd: `
+      ApplicationLoadBalancedServiceBase currently defaults openListener to true, which creates
+      security group rules allowing ingress from 0.0.0.0/0. This can be a security risk when
+      users provide custom security groups on their load balancer, expecting those to be the
+      only ingress rules.
+
+      If this flag is not set, openListener will always default to true for backward compatibility.
+      If true, openListener will default to false when custom security groups are detected on the
+      load balancer, and true otherwise. Users can still explicitly set openListener: true to
+      override this behavior.`,
+        introducedIn: { v2: "2.214.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `openListener: true` explicitly to maintain the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [RDS_LOWERCASE_DB_IDENTIFIER]: {
+        type: 1 /* BugFix */,
+        summary: "Force lowercasing of RDS Cluster names in CDK",
+        detailsMd: `
+      Cluster names must be lowercase, and the service will lowercase the name when the cluster
+      is created. However, CDK did not use to know about this, and would use the user-provided name
+      referencing the cluster, which would fail if it happened to be mixed-case.
+
+      With this flag, lowercase the name in CDK so we can reference it properly.
+
+      Must be behind a permanent flag because changing a name from mixed case to lowercase between deployments
+      would lead CloudFormation to think the name was changed and would trigger a cluster replacement
+      (losing data!).`,
+        introducedIn: { v1: "1.97.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Allow adding/removing multiple UsagePlanKeys independently",
+        detailsMd: `
+      The UsagePlanKey resource connects an ApiKey with a UsagePlan. API Gateway does not allow more than one UsagePlanKey
+      for any given UsagePlan and ApiKey combination. For this reason, CloudFormation cannot replace this resource without
+      either the UsagePlan or ApiKey changing.
+
+      The feature addition to support multiple UsagePlanKey resources - 142bd0e2 - recognized this and attempted to keep
+      existing UsagePlanKey logical ids unchanged.
+      However, this intentionally caused the logical id of the UsagePlanKey to be sensitive to order. That is, when
+      the 'first' UsagePlanKey resource is removed, the logical id of the 'second' assumes what was originally the 'first',
+      which again is disallowed.
+
+      In effect, there is no way to get out of this mess in a backwards compatible way, while supporting existing stacks.
+      This flag changes the logical id layout of UsagePlanKey to not be sensitive to order.`,
+        introducedIn: { v1: "1.98.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_DEFAULT_ENCRYPTION_AT_REST]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enable this feature flag to have elastic file systems encrypted at rest by default.",
+        detailsMd: `
+      Encryption can also be configured explicitly using the \`encrypted\` property.
+      `,
+        introducedIn: { v1: "1.98.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass the `encrypted: false` property to the `FileSystem` construct to disable encryption."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_RECOGNIZE_VERSION_PROPS]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the  `fn.currentVersion`.",
+        detailsMd: `
+      The previous calculation incorrectly considered properties of the \`AWS::Lambda::Function\` resource that did
+      not constitute creating a new Version.
+
+      See 'currentVersion' section in the aws-lambda module's README for more details.`,
+        introducedIn: { v1: "1.106.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_RECOGNIZE_LAYER_VERSION]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.",
+        detailsMd: `
+      This flag correct incorporates Lambda Layer properties into the Lambda Function Version.
+
+      See 'currentVersion' section in the aws-lambda module's README for more details.`,
+        introducedIn: { v1: "1.159.0", v2: "2.27.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
+        detailsMd: `
+      The security policy can also be configured explicitly using the \`minimumProtocolVersion\` property.`,
+        introducedIn: { v1: "1.117.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CHECK_SECRET_USAGE]: {
+        type: 2 /* VisibleContext */,
+        summary: "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations",
+        detailsMd: `
+      With this flag enabled, \`SecretValue\` instances can only be passed to
+      constructs that accept \`SecretValue\`s; otherwise, \`unsafeUnwrap()\` must be
+      called to use it as a regular string.`,
+        introducedIn: { v1: "1.153.0", v2: "2.21.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [TARGET_PARTITIONS]: {
+        type: 2 /* VisibleContext */,
+        summary: "What regions to include in lookup tables of environment agnostic stacks",
+        detailsMd: `
+      Has no effect on stacks that have a defined region, but will limit the amount
+      of unnecessary regions included in stacks without a known region.
+
+      The type of this value should be a list of strings.`,
+        introducedIn: { v1: "1.137.0", v2: "2.4.0" },
+        recommendedValue: ["aws", "aws-cn"]
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER]: {
+        type: 0 /* ApiDefault */,
+        summary: "ECS extensions will automatically add an `awslogs` driver if no logging is specified",
+        detailsMd: `
+      Enable this feature flag to configure default logging behavior for the ECS Service Extensions. This will enable the
+      \`awslogs\` log driver for the application container of the service to send the container logs to CloudWatch Logs.
+
+      This is a feature flag as the new behavior provides a better default experience for the users.`,
+        introducedIn: { v1: "1.140.0", v2: "2.8.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Specify a log driver explicitly."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names.",
+        detailsMd: `
+      Previously, the generated Launch Template names were only unique within a stack because they were based only on the
+      \`Instance\` construct ID. If another stack that has an \`Instance\` with the same construct ID is deployed in the same
+      account and region, the deployments would always fail as the generated Launch Template names were the same.
+
+      The new implementation addresses this issue by generating the Launch Template name with the \`Names.uniqueId\` method.`,
+        introducedIn: { v1: "1.140.0", v2: "2.8.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID.",
+        detailsMd: `
+      If this flag is not set, the old ARN format (without cluster name) for ECS is used.
+      If this flag is set, the new ARN format (with cluster name) for ECS is used.
+
+      This is a feature flag as the old format is still valid for existing ECS clusters.
+
+      See https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#ecs-resource-ids
+      `,
+        introducedIn: { v2: "2.35.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_MINIMIZE_POLICIES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Minimize IAM policies by combining Statements",
+        detailsMd: `
+      Minimize IAM policies by combining Principals, Actions and Resources of two
+      Statements in the policies, as long as it doesn't change the meaning of the
+      policy.`,
+        introducedIn: { v1: "1.150.0", v2: "2.18.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [VALIDATE_SNAPSHOT_REMOVAL_POLICY]: {
+        type: 0 /* ApiDefault */,
+        summary: "Error on snapshot removal policies on resources that do not support it.",
+        detailsMd: `
+      Makes sure we do not allow snapshot removal policy on resources that do not support it.
+      If supplied on an unsupported resource, CloudFormation ignores the policy altogether.
+      This flag will reduce confusion and unexpected loss of data when erroneously supplying
+      the snapshot removal policy.`,
+        introducedIn: { v2: "2.28.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "The old behavior was incorrect. Update your source to not specify SNAPSHOT policies on resources that do not support it."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Generate key aliases that include the stack name",
+        detailsMd: `
+      Enable this feature flag to have CodePipeline generate a unique cross account key alias name using the stack name.
+
+      Previously, when creating multiple pipelines with similar naming conventions and when crossAccountKeys is true,
+      the KMS key alias name created for these pipelines may be the same due to how the uniqueId is generated.
+
+      This new implementation creates a stack safe resource name for the alias using the stack name instead of the stack ID.
+      `,
+        introducedIn: { v2: "2.29.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_CREATE_DEFAULT_LOGGING_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist.",
+        detailsMd: `
+      For example, in order to send VPC flow logs to an S3 bucket, there is a specific Bucket Policy
+      that needs to be attached to the bucket. If you create the bucket without a policy and then add the
+      bucket as the flow log destination, the service will automatically create the bucket policy with the
+      necessary permissions. If you were to then try and add your own bucket policy CloudFormation will throw
+      and error indicating that a bucket policy already exists.
+
+      In cases where we know what the required policy is we can go ahead and create the policy so we can
+      remain in control of it.
+
+      @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-S3
+      `,
+        introducedIn: { v2: "2.31.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Restrict KMS key policy for encrypted Queues a bit more",
+        detailsMd: `
+      Enable this feature flag to restrict the decryption of a SQS queue, which is subscribed to a SNS topic, to
+      only the topic which it is subscribed to and not the whole SNS service of an account.
+
+      Previously the decryption was only restricted to the SNS service principal. To make the SQS subscription more
+      secure, it is a good practice to restrict the decryption further and only allow the connected SNS topic to decryption
+      the subscribed queue.`,
+        introducedIn: { v2: "2.32.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_DISABLE_CLOUDWATCH_ROLE]: {
+        type: 1 /* BugFix */,
+        summary: "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment",
+        detailsMd: `
+      Enable this feature flag to change the default behavior for aws-apigateway.RestApi and aws-apigateway.SpecRestApi
+      to _not_ create a CloudWatch role and Account. There is only a single ApiGateway account per AWS
+      environment which means that each time you create a RestApi in your account the ApiGateway account
+      is overwritten. If at some point the newest RestApi is deleted, the ApiGateway Account and CloudWatch
+      role will also be deleted, breaking any existing ApiGateways that were depending on them.
+
+      When this flag is enabled you should either create the ApiGateway account and CloudWatch role
+      separately _or_ only enable the cloudWatchRole on a single RestApi.
+      `,
+        introducedIn: { v2: "2.38.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_PARTITION_LITERALS]: {
+        type: 1 /* BugFix */,
+        summary: "Make ARNs concrete if AWS partition is known",
+        // eslint-disable-next-line @cdklabs/no-literal-partition
+        detailsMd: `
+      Enable this feature flag to get partition names as string literals in Stacks with known regions defined in
+      their environment, such as "aws" or "aws-cn".  Previously the CloudFormation intrinsic function
+      "Ref: AWS::Partition" was used.  For example:
+
+      \`\`\`yaml
+      Principal:
+        AWS:
+          Fn::Join:
+            - ""
+            - - "arn:"
+              - Ref: AWS::Partition
+              - :iam::123456789876:root
+      \`\`\`
+
+      becomes:
+
+      \`\`\`yaml
+      Principal:
+        AWS: "arn:aws:iam::123456789876:root"
+      \`\`\`
+
+      The intrinsic function will still be used in Stacks where no region is defined or the region's partition
+      is unknown.
+      `,
+        introducedIn: { v2: "2.38.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EVENTS_TARGET_QUEUE_SAME_ACCOUNT]: {
+        type: 1 /* BugFix */,
+        summary: "Event Rules may only push to encrypted SQS queues in the same account",
+        detailsMd: `
+      This flag applies to SQS Queues that are used as the target of event Rules. When enabled, only principals
+      from the same account as the Rule can send messages. If a queue is unencrypted, this restriction will
+      always apply, regardless of the value of this flag.
+      `,
+        introducedIn: { v2: "2.51.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER]: {
+        type: 1 /* BugFix */,
+        summary: 'Avoid setting the "ECS" deployment controller when adding a circuit breaker',
+        detailsMd: `
+      Enable this feature flag to avoid setting the "ECS" deployment controller when adding a circuit breaker to an
+      ECS Service, as this will trigger a full replacement which fails to deploy when using set service names.
+      This does not change any behaviour as the default deployment controller when it is not defined is ECS.
+
+      This is a feature flag as the new behavior provides a better default experience for the users.
+      `,
+        introducedIn: { v2: "2.51.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature to create default policy names for imported roles that depend on the stack the role is in.",
+        detailsMd: `
+      Without this, importing the same role in multiple places could lead to the permissions given for one version of the imported role
+      to overwrite permissions given to the role at a different place where it was imported. This was due to all imported instances
+      of a role using the same default policy name.
+
+      This new implementation creates default policy names based on the constructs node path in their stack.
+      `,
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Use S3 Bucket Policy instead of ACLs for Server Access Logging",
+        detailsMd: `
+      Enable this feature flag to use S3 Bucket Policy for granting permission for Server Access Logging
+      rather than using the canned \`LogDeliveryWrite\` ACL. ACLs do not work when Object Ownership is
+      enabled on the bucket.
+
+      This flag uses a Bucket Policy statement to allow Server Access Log delivery, following best
+      practices for S3.
+
+      @see https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html
+    `,
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ROUTE53_PATTERNS_USE_CERTIFICATE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use the official `Certificate` resource instead of `DnsValidatedCertificate`",
+        detailsMd: `
+      Enable this feature flag to use the official CloudFormation supported \`Certificate\` resource instead
+      of the deprecated \`DnsValidatedCertificate\` construct. If this flag is enabled and you are creating
+      the stack in a region other than us-east-1 then you must also set \`crossRegionReferences=true\` on the
+      stack.
+      `,
+        introducedIn: { v2: "2.61.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Define a `DnsValidatedCertificate` explicitly and pass in the `certificate` property"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Whether to install the latest SDK by default in AwsCustomResource",
+        detailsMd: `
+      This was originally introduced and enabled by default to not be limited by the SDK version
+      that's installed on AWS Lambda. However, it creates issues for Lambdas bound to VPCs that
+      do not have internet access, or in environments where 'npmjs.com' is not available.
+
+      The recommended setting is to disable the default installation behavior, and pass the
+      flag on a resource-by-resource basis to enable it if necessary.
+    `,
+        compatibilityWithOldBehaviorMd: "Set installLatestAwsSdk: true on all resources that need it.",
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DATABASE_PROXY_UNIQUE_RESOURCE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Use unique resource name for Database Proxy",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`DatabaseProxy\` is
+      to use \`id\` of the constructor for \`dbProxyName\` when it's not specified in the argument.
+      In this case, users can't deploy \`DatabaseProxy\`s that have the same \`id\` in the same region.
+
+      If this flag is set, the default behavior is to use unique resource names for each \`DatabaseProxy\`.
+
+      This is a feature flag as the old behavior was technically incorrect, but users may have come to depend on it.
+    `,
+        introducedIn: { v2: "2.65.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP]: {
+        type: 1 /* BugFix */,
+        summary: "Remove CloudWatch alarms from deployment group",
+        detailsMd: `
+      Enable this flag to be able to remove all CloudWatch alarms from a deployment group by removing
+      the alarms from the construct. If this flag is not set, removing all alarms from the construct
+      will still leave the alarms configured for the deployment group.
+    `,
+        introducedIn: { v2: "2.65.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Include authorizer configuration in the calculation of the API deployment logical ID.",
+        detailsMd: `
+      The logical ID of the AWS::ApiGateway::Deployment resource is calculated by hashing
+      the API configuration, including methods, and resources, etc. Enable this feature flag
+      to also include the configuration of any authorizer attached to the API in the
+      calculation, so any changes made to an authorizer will create a new deployment.
+      `,
+        introducedIn: { v2: "2.66.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA]: {
+        type: 1 /* BugFix */,
+        summary: "Define user data for a launch template by default when a machine image is provided.",
+        detailsMd: `
+      The ec2.LaunchTemplate construct did not define user data when a machine image is
+      provided despite the document. If this is set, a user data is automatically defined
+      according to the OS of the machine image.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.67.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "SecretTargetAttachments uses the ResourcePolicy of the attached Secret.",
+        detailsMd: `
+      Enable this feature flag to make SecretTargetAttachments use the ResourcePolicy of the attached Secret.
+      SecretTargetAttachments are created to connect a Secret to a target resource.
+      In CDK code, they behave like regular Secret and can be used as a stand-in in most situations.
+      Previously, adding to the ResourcePolicy of a SecretTargetAttachment did attempt to create a separate ResourcePolicy for the same Secret.
+      However Secrets can only have a single ResourcePolicy, causing the CloudFormation deployment to fail.
+
+      When enabling this feature flag for an existing Stack, ResourcePolicies created via a SecretTargetAttachment will need replacement.
+      This won't be possible without intervention due to limitation outlined above.
+      First remove all permissions granted to the Secret and deploy without the ResourcePolicies.
+      Then you can re-add the permissions and deploy again.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.67.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [REDSHIFT_COLUMN_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Whether to use an ID to track Redshift column changes",
+        detailsMd: `
+      Redshift columns are identified by their \`name\`. If a column is renamed, the old column
+      will be dropped and a new column will be created. This can cause data loss.
+
+      This flag enables the use of an \`id\` attribute for Redshift columns. If this flag is enabled, the
+      internal CDK architecture will track changes of Redshift columns through their \`id\`, rather
+      than their \`name\`. This will prevent data loss when columns are renamed.
+
+      **NOTE** - Enabling this flag comes at a **risk**. When enabled, update the \`id\`s of all columns,
+      **however** do not change the \`names\`s of the columns. If the \`name\`s of the columns are changed during
+      initial deployment, the columns will be dropped and recreated, causing data loss. After the initial deployment
+      of the \`id\`s, the \`name\`s of the columns can be changed without data loss.
+      `,
+        introducedIn: { v2: "2.68.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_EMR_SERVICE_POLICY_V2]: {
+        type: 1 /* BugFix */,
+        summary: "Enable AmazonEMRServicePolicy_v2 managed policies",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`EmrCreateCluster\` is
+      to use \`AmazonElasticMapReduceRole\` managed policies.
+
+      If this flag is set, the default behavior is to use the new \`AmazonEMRServicePolicy_v2\`
+      managed policies.
+
+      This is a feature flag as the old behavior will be deprecated, but some resources may require manual
+      intervention since they might not have the appropriate tags propagated automatically.
+      `,
+        introducedIn: { v2: "2.72.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_RESTRICT_DEFAULT_SECURITY_GROUP]: {
+        type: 0 /* ApiDefault */,
+        summary: "Restrict access to the VPC default security group",
+        detailsMd: `
+      Enable this feature flag to remove the default ingress/egress rules from the
+      VPC default security group.
+
+      When a VPC is created, a default security group is created as well and this cannot
+      be deleted. The default security group is created with ingress/egress rules that allow
+      _all_ traffic. [AWS Security best practices recommend](https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-2)
+      removing these ingress/egress rules in order to restrict access to the default security group.
+    `,
+        introducedIn: { v2: "2.78.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: `
+      To allow all ingress/egress traffic to the VPC default security group you
+      can set the \`restrictDefaultSecurityGroup: false\`.
+    `
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Generate a unique id for each RequestValidator added to a method",
+        detailsMd: `
+      This flag allows multiple RequestValidators to be added to a RestApi when
+      providing the \`RequestValidatorOptions\` in the \`addMethod()\` method.
+
+      If the flag is not set then only a single RequestValidator can be added in this way.
+      Any additional RequestValidators have to be created directly with \`new RequestValidator\`.
+    `,
+        introducedIn: { v2: "2.78.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_ALIAS_NAME_REF]: {
+        type: 1 /* BugFix */,
+        summary: "KMS Alias name and keyArn will have implicit reference to KMS Key",
+        detailsMd: `
+      This flag allows an implicit dependency to be created between KMS Alias and KMS Key
+      when referencing key.aliasName or key.keyArn.
+
+      If the flag is not set then a raw string is passed as the Alias name and no
+      implicit dependencies will be set.
+    `,
+        introducedIn: { v2: "2.83.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL]: {
+        type: 1 /* BugFix */,
+        summary: "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition",
+        detailsMd: `
+      This flag enables the grant methods (grant, grantDecrypt, grantEncrypt, etc.) on Aliases imported
+      by name to grant permissions based on the 'kms:ResourceAliases' condition rather than no-op grants.
+      When disabled, grant calls on imported aliases will be dropped (no-op) to maintain compatibility.
+    `,
+        introducedIn: { v2: "2.202.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Remove calls to the grant* methods on the aliases referenced by name"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AUTOSCALING_GENERATE_LAUNCH_TEMPLATE]: {
+        type: 1 /* BugFix */,
+        summary: "Generate a launch template when creating an AutoScalingGroup",
+        detailsMd: `
+      Enable this flag to allow AutoScalingGroups to generate a launch template when being created.
+      Launch configurations have been deprecated and cannot be created in AWS Accounts created after
+      December 31, 2023. Existing 'AutoScalingGroup' properties used for creating a launch configuration
+      will now create an equivalent 'launchTemplate'. Alternatively, users can provide an explicit
+      'launchTemplate' or 'mixedInstancesPolicy'. When this flag is enabled a 'launchTemplate' will
+      attempt to set user data according to the OS of the machine image if explicit user data is not
+      provided.
+    `,
+        introducedIn: { v2: "2.88.0" },
+        compatibilityWithOldBehaviorMd: `
+      If backwards compatibility needs to be maintained due to an existing autoscaling group
+      using a launch config, set this flag to false.
+    `,
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION]: {
+        type: 1 /* BugFix */,
+        summary: "Include the stack prefix in the stack name generation process",
+        detailsMd: `
+      This flag prevents the prefix of a stack from making the stack's name longer than the 128 character limit.
+
+      If the flag is set, the prefix is included in the stack name generation process.
+      If the flag is not set, then the prefix of the stack is prepended to the generated stack name.
+
+      **NOTE** - Enabling this flag comes at a **risk**. If you have already deployed stacks, changing the status of this
+      feature flag can lead to a change in stacks' name. Changing a stack name mean recreating the whole stack, which
+      is not viable in some productive setups.
+    `,
+        introducedIn: { v2: "2.84.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_DENY_ANONYMOUS_ACCESS]: {
+        type: 0 /* ApiDefault */,
+        summary: "EFS denies anonymous clients accesses",
+        detailsMd: `
+      This flag adds the file system policy that denies anonymous clients
+      access to \`efs.FileSystem\`.
+
+      If this flag is not set, \`efs.FileSystem\` will allow all anonymous clients
+      that can access over the network.`,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `allowAnonymousAccess: true` so allow anonymous clients access."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables support for Multi-AZ with Standby deployment for opensearch domains",
+        detailsMd: `
+      If this is set, an opensearch domain will automatically be created with
+      multi-az with standby enabled.
+    `,
+        introducedIn: { v2: "2.88.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `capacity.multiAzWithStandbyEnabled: false` to `Domain` construct to restore the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_NODEJS_USE_LATEST_RUNTIME]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default",
+        detailsMd: `
+      If this is set, and a \`runtime\` prop is not passed to, Lambda NodeJs
+      functions will use the latest version of the runtime provided by the Lambda
+      service. Do not use this if you your lambda function is reliant on dependencies
+      shipped as part of the runtime environment.
+    `,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `runtime: lambda.Runtime.NODEJS_16_X` to `Function` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet.",
+        detailsMd: `
+      When this feature flag is enabled, each mount target will have a stable
+      logicalId that is linked to the associated subnet. If the flag is set to
+      false then the logicalIds of the mount targets can change if the number of
+      subnets changes.
+
+      Set this flag to false for existing mount targets.
+    `,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change.",
+        detailsMd: `
+      When this feature flag is enabled, a scope of \`InstanceParameterGroup\` for
+      \`AuroraClusterInstance\` with each parameters will change to AuroraClusterInstance
+      from AuroraCluster.
+
+      If the flag is set to false then it can only make one \`AuroraClusterInstance\`
+      with each \`InstanceParameterGroup\` in the AuroraCluster.
+    `,
+        introducedIn: { v2: "2.97.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id.",
+        detailsMd: `
+      When this feature flag is enabled, we use the IGraphqlApi ARN rather than ID when creating or updating CfnSourceApiAssociation in
+      the GraphqlApi construct. Using the ARN allows the association to support an association with a source api or merged api in another account.
+      Note that for existing source api associations created with this flag disabled, enabling the flag will lead to a resource replacement.
+    `,
+        introducedIn: { v2: "2.97.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials.",
+        detailsMd: `
+      The \`credentials\` property on the \`DatabaseClusterFromSnapshotProps\`
+      interface was deprecated with the new \`snapshotCredentials\` property being
+      recommended. Before deprecating \`credentials\`, a secret would be generated
+      while rendering credentials if the \`credentials\` property was undefined or
+      if a secret wasn't provided via the \`credentials\` property. This behavior
+      is replicated with the new \`snapshotCredentials\` property, but the original
+      \`credentials\` secret can still be created resulting in an extra database
+      secret.
+
+      Set this flag to prevent rendering deprecated \`credentials\` and creating an
+      extra database secret when only using \`snapshotCredentials\` to create an RDS
+      database cluster from a snapshot.
+    `,
+        introducedIn: { v2: "2.98.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the CodeCommit source action is using the default branch name 'main'.",
+        detailsMd: `
+      When setting up a CodeCommit source action for the source stage of a pipeline, please note that the
+      default branch is 'master'.
+      However, with the activation of this feature flag, the default branch is updated to 'main'.
+    `,
+        introducedIn: { v2: "2.103.1" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID.",
+        detailsMd: `
+      When this feature flag is enabled, a logical ID of \`LambdaPermission\` for a
+      \`LambdaAction\` will include an alarm ID. Therefore multiple alarms for the same Lambda
+      can be created with \`LambdaAction\`.
+
+      If the flag is set to false then it can only make one alarm for the Lambda with
+      \`LambdaAction\`.
+    `,
+        introducedIn: { v2: "2.124.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables Pipeline to set the default value for crossAccountKeys to false.",
+        detailsMd: `
+      When this feature flag is enabled, and the \`crossAccountKeys\` property is not provided in a \`Pipeline\`
+      construct, the construct automatically defaults the value of this property to false.
+    `,
+        introducedIn: { v2: "2.127.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `crossAccountKeys: true` to `Pipeline` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables Pipeline to set the default pipeline type to V2.",
+        detailsMd: `
+      When this feature flag is enabled, and the \`pipelineType\` property is not provided in a \`Pipeline\`
+      construct, the construct automatically defaults the value of this property to \`PipelineType.V2\`.
+    `,
+        introducedIn: { v2: "2.133.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `pipelineType: PipelineType.V1` to `Pipeline` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only.",
+        detailsMd: `
+      When this feature flag is enabled and calling KMS key grant method, the created IAM policy will reduce the resource scope from
+      '*' to this specific granting KMS key.
+    `,
+        introducedIn: { v2: "2.134.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove the root account principal from PipelineAssetsFileRole trust policy",
+        detailsMd: `
+      When this feature flag is enabled, the root account principal will not be added to the trust policy of asset role.
+      When this feature flag is disabled, it will keep the root account principal in the trust policy.
+    `,
+        introducedIn: { v2: "2.141.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_NODEGROUP_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix.",
+        detailsMd: `
+      When this feature flag is enabled, the nodegroupName attribute will be exactly the name of the nodegroup without
+      any prefix.
+    `,
+        introducedIn: { v2: "2.139.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_USE_NATIVE_OIDC_PROVIDER]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider).",
+        detailsMd: `
+      When this feature flag is enabled, EKS clusters will use the native AWS::IAM::OIDCProvider
+      CloudFormation resource instead of the custom resource provider for creating OIDC providers.
+
+			WARNING: Enabling this flag on a cluster with an existing OIDC provider created by the custom resource (iam.OpenIDConnectProvider)
+			will cause the OIDC provider to be replaced with the native resource, which may lead to disruption.
+
+			To migrate in place without disruption, follow the guide at: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/aws-eks/README.md#migrating-from-the-deprecated-eksopenidconnectprovider-to-eksoidcprovidernative
+    `,
+        introducedIn: { v2: "2.237.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use the custom resource provider."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EBS_DEFAULT_GP3]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the default volume type of the EBS volume will be GP3",
+        detailsMd: `
+      When this featuer flag is enabled, the default volume type of the EBS volume will be \`EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3\`.
+    `,
+        introducedIn: { v2: "2.140.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `volumeType: EbsDeviceVolumeType.GENERAL_PURPOSE_SSD` to `Volume` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, remove default deployment alarm settings",
+        detailsMd: `
+      When this feature flag is enabled, remove the default deployment alarm settings when creating a AWS ECS service.
+    `,
+        introducedIn: { v2: "2.143.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Set AWS::ECS::Service 'DeploymentAlarms' manually to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default",
+        detailsMd: `
+      This results in 'logApiResponseData' being passed as true to the custom resource provider. This will cause the custom resource handler to receive an 'Update' event. If you don't
+      have an SDK call configured for the 'Update' event and you're dependent on specific SDK call response data, you will see this error from CFN:
+
+      CustomResource attribute error: Vendor response doesn't contain  attribute in object. See https://github.com/aws/aws-cdk/issues/29949) for more details.
+
+      Unlike most feature flags, we don't recommend setting this feature flag to true. However, if you're using the 'AwsCustomResource' construct with 'logApiResponseData' as true in
+      the event object, then setting this feature flag will keep this behavior. Otherwise, setting this feature flag to false will trigger an 'Update' event by removing the 'logApiResponseData'
+      property from the event object.
+    `,
+        introducedIn: { v2: "2.145.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack.",
+        detailsMd: `
+      Currently, adding notifications to a bucket where it was created by ourselves will override notification added where it is imported.
+
+      When this feature flag is enabled, adding notifications to a bucket in the current stack will only update notification defined in this stack.
+      Other notifications that are not managed by this stack will be kept.
+    `,
+        introducedIn: { v2: "2.155.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
+        detailsMd: `
+    Currently, 'inputPath' and 'outputPath' from the TaskStateBase Props is being used under BedrockInvokeModelProps to define S3URI under 'input' and 'output' fields
+    of State Machine Task definition.
+
+    When this feature flag is enabled, specify newly introduced props 's3InputUri' and
+    's3OutputUri' to populate S3 uri under input and output fields in state machine task definition for Bedrock invoke model.
+
+    `,
+        introducedIn: { v2: "2.156.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use input and output path fields for s3 URI"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EXPLICIT_STACK_TAGS]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, stack tags need to be assigned explicitly on a Stack.",
+        detailsMd: `
+    Without this feature flag enabled, if tags are added to a Stack using
+    \`Tags.of(scope).add(...)\`, they will be added to both the stack and all resources
+    in the stack template.
+
+    That leads to the tags being applied twice: once in the template, and once
+    again automatically by CloudFormation, which will apply all stack tags to
+    all resources in the stack. This leads to loss of control, as the
+    \`excludeResourceTypes\` option of the Tags API will not have any effect.
+
+    With this flag enabled, tags added to a stack using \`Tags.of(...)\` are ignored,
+    and Stack tags must be configured explicitly on the Stack object.
+    `,
+        introducedIn: { v2: "2.205.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Configure stack-level tags using `new Stack(..., { tags: { ... } })`."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration",
+        detailsMd: `
+    Currently, we automatically add a number of cloudwatch permissions to the task role when no cloudwatch log group is
+    specified as logConfiguration and it will grant 'Resources': ['*'] to the task role.
+
+    When this feature flag is enabled, we will only grant the necessary permissions when users specify cloudwatch log group.
+    `,
+        introducedIn: { v2: "2.159.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to continue grant permissions to log group when no log group is specified"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`TableV2\` is to use a different \`resourcePolicy\` for each replica.
+
+      If this flag is set to false, the behavior is that each replica shares the same \`resourcePolicy\` as the source table.
+      This will prevent you from creating a new table which has an additional replica and a resource policy.
+
+      This is a feature flag as the old behavior was technically incorrect but users may have come to depend on it.`,
+        introducedIn: { v2: "2.164.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_SUM_TIMEOUT_ENABLED]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together.",
+        detailsMd: `
+      Currently is both initOptions.timeout and resourceSignalTimeout are both specified in the options for creating an EC2 Instance,
+      only the value from 'resourceSignalTimeout' will be used.
+
+      When this feature flag is enabled, if both initOptions.timeout and resourceSignalTimeout are specified, the values will to be summed together.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.160.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn.",
+        detailsMd: `
+        Currently, when using a Lambda authorizer with an AppSync GraphQL API, the AWS CDK automatically generates the necessary AWS::Lambda::Permission
+        to allow the AppSync API to invoke the Lambda authorizer. This permission is overly permissive because it lacks a SourceArn, meaning
+        it allows invocations from any source.
+
+        When this feature flag is enabled, the AWS::Lambda::Permission will be properly scoped with the SourceArn corresponding to the
+        specific AppSync GraphQL API.
+        `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.161.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`",
+        detailsMd: `
+      Currently, the value of the property 'instanceResourceId' in construct 'DatabaseInstanceReadReplica' is not correct, and set to 'DbInstanceArn' which is not correct when it is used to create the IAM Policy in the grantConnect method.
+
+      When this feature flag is enabled, the value of that property will be as expected set to 'DbiResourceId' attribute, and that will fix the grantConnect method.
+    `,
+        introducedIn: { v2: "2.161.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use `DbInstanceArn` as value for property `instanceResourceId`"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values.",
+        detailsMd: `
+    Without enabling this feature flag, \`cfn-include\` will silently drop resource update or create policies that contain CFN Intrinsics if they include non-primitive values.
+
+    Enabling this feature flag will make \`cfn-include\` throw on these templates, unless you specify the logical ID of the resource in the 'unhydratedResources' property.
+    `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.161.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications.",
+        detailsMd: `
+      Currently, when bundling Lambda functions with the non-latest runtime that supports AWS SDK JavaScript (v3), only the '@aws-sdk/*' packages are excluded by default.
+      However, this can cause version mismatches between the '@aws-sdk/*' and '@smithy/*' packages, as they are tightly coupled dependencies in AWS SDK v3.
+
+      When this feature flag is enabled, both '@aws-sdk/*' and '@smithy/*' packages will be excluded during the bundling process. This ensures that no mismatches
+      occur between these tightly coupled dependencies when using the AWS SDK v3 in Lambda functions.
+    `,
+        introducedIn: { v2: "2.161.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN.",
+        detailsMd: `
+      Currently, in the IAM Run Ecs policy generated by SFN EcsRunTask(), CDK will construct the ARN with wildcard attached at the end.
+      The revision number at the end will be replaced with a wildcard which it shouldn't.
+
+      When this feature flag is enabled, if the task definition is created in the stack, the 'Resource' section will 'Ref' the taskDefinition.
+    `,
+        introducedIn: { v2: "2.163.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2.",
+        detailsMd: `
+      Currently, if the machineImage property of the BastionHost construct defaults to using the latest Amazon Linux 2
+      AMI. Amazon Linux 2 hits end-of-life in June 2025, so using Amazon Linux 2023 by default is a more future-proof
+      and secure option.
+
+      When this feature flag is enabled, if you do not pass the machineImage property to the BastionHost construct,
+      the latest Amazon Linux 2023 version will be used instead of Amazon Linux 2.
+    `,
+        introducedIn: { v2: "2.172.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag or explicitly pass an Amazon Linux 2 machine image to the BastionHost construct."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ASPECT_STABILIZATION]: {
+        type: 2 /* VisibleContext */,
+        summary: "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
+        detailsMd: `
+      Previously, Aspects were invoked in a single pass of the construct tree.
+      This meant that Aspects which created other Aspects were not run, and Aspects that created new nodes in the tree sometimes did not inherit their parent Aspects.
+
+      When this feature flag is enabled, a stabilization loop is run to recurse the construct tree multiple times when invoking Aspects.
+    `,
+        unconfiguredBehavesLike: { v2: true },
+        introducedIn: { v2: "2.172.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource.",
+        detailsMd: `
+    When this feature flag is enabled, a new method will be used to get the DNS Name of the user pool domain target. The old method
+    creates a custom resource internally, but the new method doesn't need a custom resource.
+
+    If the flag is set to false then a custom resource will be created when using \`UserPoolDomainTarget\`.
+    `,
+        introducedIn: { v2: "2.174.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere",
+        detailsMd: `
+      For internet facing ALBs with 'dualstack-without-public-ipv4' IP address type, the default security group rules
+      will allow IPv6 ingress from anywhere (::/0). Previously, the default security group rules would only allow IPv4 ingress.
+
+      Using a feature flag to make sure existing customers who might be relying
+      on the overly restrictive permissions are not broken.`,
+        introducedIn: { v2: "2.176.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to only allow IPv4 ingress in the default security group rules."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the default behaviour of OIDC provider will reject unauthorized connections",
+        detailsMd: `
+      When this feature flag is enabled, the default behaviour of OIDC Provider's custom resource handler will
+      default to reject unauthorized connections when downloading CA Certificates.
+
+      When this feature flag is disabled, the behaviour will be the same as current and will allow downloading
+      thumbprints from unsecure connections.`,
+        introducedIn: { v2: "2.177.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to allow unsecure OIDC connection."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_ADDITIONAL_METADATA_COLLECTION]: {
+        type: 2 /* VisibleContext */,
+        summary: "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues.",
+        detailsMd: `
+    When this feature flag is enabled, CDK expands the scope of usage data collection to include the following:
+      * L2 construct property keys - Collect which property keys you use from the L2 constructs in your app. This includes property keys nested in dictionary objects.
+      * L2 construct property values of BOOL and ENUM types - Collect property key values of only BOOL and ENUM types. All other types, such as string values or construct references will be redacted.
+      * L2 construct method usage - Collection method name, parameter keys and parameter values of BOOL and ENUM type.
+    `,
+        introducedIn: { v2: "2.178.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY]: {
+        type: 1 /* BugFix */,
+        summary: "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement",
+        detailsMd: `
+      [Deprecated default feature] When this feature flag is enabled, Lambda will create new inline policies with AddToRolePolicy.
+      The purpose of this is to prevent lambda from creating a dependency on the Default Policy Statement.
+      This solves an issue where a circular dependency could occur if adding lambda to something like a Cognito Trigger, then adding the User Pool to the lambda execution role permissions.
+      However in the current implementation, we have removed a dependency of the lambda function on the policy. In addition to this, a Role will be attached to the Policy instead of an inline policy being attached to the role.
+      This will create a data race condition in the CloudFormation template because the creation of the Lambda function no longer waits for the policy to be created. Having said that, we are not deprecating the feature (we are defaulting the feature flag to false for new stacks) since this feature can still be used to get around the circular dependency issue (issue-7016) particularly in cases where the lambda resource creation doesnt need to depend on the policy resource creation.
+      We recommend to unset the feature flag if already set which will restore the original behavior.
+    `,
+        introducedIn: { v2: "2.180.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SET_UNIQUE_REPLICATION_ROLE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication.",
+        detailsMd: `
+      When performing cross-account S3 replication, we need to explicitly specify a role name for the replication execution role.
+      When this feature flag is enabled, a unique role name is specified only when performing cross-account replication.
+      When disabled, 'CDKReplicationRole' is always specified.
+    `,
+        introducedIn: { v2: "2.182.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove the root account principal from Stage addActions trust policy",
+        detailsMd: `
+      When this feature flag is enabled, the root account principal will not be added to the trust policy of stage role.
+      When this feature flag is disabled, it will keep the root account principal in the trust policy.
+
+      For cross-account cases, when this feature flag is enabled the trust policy will be scoped to the role only.
+      If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED.
+    `,
+        introducedIn: { v2: "2.184.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EVENTBUS_POLICY_SID_REQUIRED]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals.",
+        detailsMd: `
+      Currently, when granting permissions to service principals using grantPutEventsTo(), the operation silently fails
+      because service principals require resource policies with Statement IDs.
+
+      When this flag is enabled:
+      - Resource policies will be created with Statement IDs for service principals
+      - The operation will succeed as expected
+
+      When this flag is disabled:
+      - A warning will be emitted
+      - The grant operation will be dropped
+      - No permissions will be added
+
+      This fixes the issue where permissions were silently not being added for service principals.
+    `,
+        introducedIn: { v2: "2.186.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ASPECT_PRIORITIES_MUTATING]: {
+        type: 0 /* ApiDefault */,
+        summary: "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING.",
+        detailsMd: `
+      Custom Aspects you add have a priority of DEFAULT (500) if you don't
+      assign a more specific priority, which is higher than MUTATING (200). This
+      is relevant if a custom Aspect you add and an Aspect added by CDK try to
+      configure the same value.
+
+      If this flag is set to false (old behavior), Aspects added by CDK are also
+      added with a priority of DEFAULT; because their priorities are equal, the
+      Aspects that is closest to the target construct executes last (either
+      yours or the Aspect added by the CDK).
+
+      If this flag is set to true (recommended behavior), Aspects added by CDK are added
+      with a priority of MUTATING, and custom Aspects you add with DEFAULT
+      priority will always execute last and "win" the write. If you need Aspects
+      added by CDK to run after yours, your Aspect needs to have a priority of
+      MUTATING or lower.
+
+      This setting only applies to Aspects that were already being added for you
+      before version 2.172.0. Aspects introduced since that version will always
+      be added with a priority of MUTATING, independent of this feature flag.
+    `,
+        introducedIn: { v2: "2.189.1" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: `
+      To add mutating Aspects controlling construct values that can be overridden
+      by Aspects added by CDK, give them MUTATING priority:
+
+      \`\`\`
+      Aspects.of(stack).add(new MyCustomAspect(), {
+        priority: AspectPriority.MUTATING,
+      });
+      \`\`\`
+    `
+      },
+      [DYNAMODB_TABLE_RETAIN_TABLE_REPLICA]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, table replica will be default to the removal policy of source table unless specified otherwise.",
+        detailsMd: `
+      Currently, table replica will always be deleted when stack deletes regardless of source table's deletion policy.
+      When enabled, table replica will be default to the removal policy of source table unless specified otherwise.
+    `,
+        introducedIn: { v2: "2.187.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LOG_USER_POOL_CLIENT_SECRET_VALUE]: {
+        type: 0 /* ApiDefault */,
+        summary: "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs.",
+        detailsMd: `
+      When this feature flag is enabled, the SDK API call response to describe user pool client values will be logged in the custom
+      resource lambda function logs.
+
+      When this feature flag is disabled, the SDK API call response to describe user pool client values will not be logged in the custom
+      resource lambda function logs.
+    `,
+        introducedIn: { v2: "2.187.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: false,
+        compatibilityWithOldBehaviorMd: "Enable the feature flag to keep the old behavior and log the client secret values"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, scopes down the trust policy for the cross-account action role",
+        detailsMd: `
+        When this feature flag is enabled, the trust policy of the cross-account action role will be scoped to the pipeline role.
+        If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED.
+        When this feature flag is disabled, it will keep the root account principal in the trust policy.
+      `,
+        introducedIn: { v2: "2.189.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter",
+        detailsMd: `
+      When this feature flag is enabled, the resultWriterV2 property is used instead of resultWriter in DistributedMap class.
+      resultWriterV2 uses ResultWriterV2 class in StepFunctions ASL and can have either Bucket/Prefix or WriterConfig or both.
+    `,
+        introducedIn: { v2: "2.188.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag and set resultWriter in DistributedMap"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS]: {
+        type: 1 /* BugFix */,
+        summary: "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions.",
+        detailsMd: `
+      When this feature flag is enabled, a S3 trust policy will be added to the KMS key resource policy for encrypted SNS subscriptions.
+          `,
+        introducedIn: { v2: "2.195.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC.",
+        detailsMd: `
+      When this feature flag is enabled, EgressOnlyGateway resource will not be created when you create a vpc with only public subnets.
+          `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: true
+      },
+      /// ///////////////////////////////////////////////////////////////////
+      [USE_RESOURCEID_FOR_VPCV2_MIGRATION]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, use resource IDs for VPC V2 migration",
+        detailsMd: `
+        When this feature flag is enabled, the VPC V2 migration will use resource IDs instead of getAtt references
+        for migrating resources from VPC V1 to VPC V2. This helps ensure a smoother migration path between
+        the two versions.
+      `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: false,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use getAtt references for VPC V2 migration"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined.",
+        detailsMd: `
+      When BlockPublicAccess is not set at all, s3's default behavior will be to set all options to true in aws console.
+      The previous behavior in cdk before this feature was; if only some of the BlockPublicAccessOptions were set (not all 4), then the ones undefined would default to false.
+      This is counter intuitive to the console behavior where the options would start in true state and a user would uncheck the boxes as needed.
+      The new behavior from this feature will allow a user, for example, to set 1 of the 4 BlockPublicAccessOpsions to false, and on deployment the other 3 will remain true.
+    `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_CDK_MANAGED_LAMBDA_LOGGROUP]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, CDK creates and manages loggroup for the lambda function",
+        detailsMd: `
+        When this feature flag is enabled, CDK will create a loggroup for lambda function with default properties
+        which supports CDK features Tag propagation, Property Injectors, Aspects
+        if the cdk app doesnt pass a 'logRetention' or 'logGroup' explicitly.
+        LogGroups created via 'logRetention' do not support Tag propagation, Property Injectors, Aspects.
+        LogGroups created via 'logGroup' created in CDK support Tag propagation, Property Injectors, Aspects.
+
+        When this feature flag is disabled, a loggroup is created by Lambda service on first invocation
+        of the function (existing behavior).
+        LogGroups created in this way do not support Tag propagation, Property Injectors, Aspects.
+
+        DO NOT ENABLE: If you have an existing app defining a lambda function and
+        have not supplied a logGroup or logRetention prop and your lambda function has
+        executed at least once, the logGroup has been already created with the same name
+        so your deployment will start failing.
+        Refer aws-lambda/README.md for more details on Customizing Log Group creation.
+      `,
+        introducedIn: { v2: "2.200.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to let lambda service create logGroup or specify logGroup or logRetention"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, Network Load Balancer will be created with a security group by default.",
+        detailsMd: `
+      When this feature flag is enabled, Network Load Balancer will be created with a security group by default.
+    `,
+        introducedIn: { v2: "2.222.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to create Network Load Balancer without a security group by default."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
+        detailsMd: `
+      When this feature flag is enabled, the JSONPath apiEndpoint value will be resolved dynamically at runtime, while slightly increasing the size of the state machine definition.
+      When disabled, the JSONPath apiEndpoint property will only support a static string value.
+    `,
+        introducedIn: { v2: "2.221.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement",
+        detailsMd: `
+      When this feature flag is enabled, ECS patterns will generate unique target group IDs that include
+      both the load balancer type (public/private) and load balancer name. This prevents CloudFormation
+      conflicts when switching between public and private load balancers or when changing load balancer names.
+
+      Without this flag, target groups use generic IDs like 'ECS' which can cause conflicts when the
+      underlying load balancer is replaced due to changes in internetFacing or loadBalancerName properties.
+
+      This is a breaking change as it will cause target group replacement when the flag is enabled.
+    `,
+        introducedIn: { v2: "2.221.0" },
+        recommendedValue: true
+      },
+      [ROUTE53_PATTERNS_USE_DISTRIBUTION]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use the `Distribution` resource instead of `CloudFrontWebDistribution`",
+        detailsMd: `
+      Enable this feature flag to use the new \`Distribution\` resource instead
+      of the deprecated \`CloudFrontWebDistribution\` construct.
+      `,
+        introducedIn: { v2: "2.233.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Define a `CloudFrontWebDistribution` explicitly"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions",
+        detailsMd: `
+      When enabled, CloudFront Functions will use cloudfront-js-2.0 runtime by default instead of cloudfront-js-1.0.
+      The runtime can still be configured explicitly using the \`runtime\` property.
+
+      If \`keyValueStore\` is specified, the runtime will always be cloudfront-js-2.0 regardless of this flag.`,
+        introducedIn: { v2: "2.245.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Set `runtime: FunctionRuntime.JS_1_0` explicitly to use the v1.0 runtime."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ELB_USE_POST_QUANTUM_TLS_POLICY]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default",
+        detailsMd: `
+      When this feature flag is enabled, HTTPS and TLS listeners that do not have an explicit
+      \`sslPolicy\` will use the post-quantum cryptography policy
+      \`ELBSecurityPolicy-TLS13-1-2-PQ-2025-09\` by default.
+
+      This policy uses the non-restricted variant (without -Res-) to maintain AES-CBC cipher support
+      for TLS 1.2 clients, ensuring nearly 100% backward compatibility with the previous CDK default.
+      Post-quantum policies provide protection against "Harvest Now, Decrypt Later" attacks using
+      hybrid ML-KEM key exchange.
+
+      When disabled (default), no explicit SSL policy is set, preserving the existing CDK behavior
+      where \`RECOMMENDED_TLS\` (\`ELBSecurityPolicy-TLS13-1-2-2021-06\`) is used.
+    `,
+        introducedIn: { v2: "2.245.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable this feature flag to preserve existing behavior where no explicit SSL policy is set."
+      },
+      [AUTOMATIC_L1_TRAITS]: {
+        type: 0 /* ApiDefault */,
+        summary: "Automatically use the default L1 traits for L1 constructs`",
+        detailsMd: `
+      When enabled, the construct library will apply default L1 traits for types that
+      have no traits defined yet. Traits regulate behaviors such as how to create
+      resource policies, or how to find an encryption key for a given L1 construct.
+      `,
+        introducedIn: { v2: "2.239.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: true },
+        compatibilityWithOldBehaviorMd: "Register traits explicitly for each resource type"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [BATCH_DEFAULT_AL2023]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2",
+        detailsMd: `
+      When enabled, EC2 Batch compute environments (both ECS and EKS) that do not specify an \`imageType\`
+      will default to \`ECS_AL2023\` or \`EKS_AL2023\` instead of the deprecated \`ECS_AL2\` or \`EKS_AL2\`
+      (Amazon Linux 2, reaching EOL June 2026 for ECS; already EOL for EKS).
+
+      For EKS compute environments with a launch template, \`userdataType\` will automatically be set
+      to \`EKS_NODEADM\` when an AL2023 image type is used, as required by the AWS Batch API.
+
+      When disabled, the default \`imageType\` remains \`ECS_AL2\` / \`EKS_AL2\` for backward compatibility.`,
+        introducedIn: { v2: "2.249.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: `Explicitly set \`imageType\` to \`ECS_AL2\` or \`EKS_AL2\` in your compute environment images configuration.
+
+**Warning**: Enabling this flag on existing stacks may cause compute environment replacement, which terminates running jobs. To migrate safely, first pin existing environments to their current imageType explicitly, then enable the flag.`
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_DEFAULT_AL2023]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2",
+        detailsMd: `
+      When enabled, EKS managed node groups that do not specify an \`amiType\` will default to
+      AL2023 AMI types (AL2023_x86_64_STANDARD, AL2023_ARM_64_STANDARD) instead of the deprecated
+      AL2 types (AL2_x86_64, AL2_ARM_64).
+
+      This only affects non-GPU instance types. GPU instances continue to default to AL2_x86_64_GPU
+      because AL2023 splits GPU support into separate NVIDIA and Neuron AMI variants.
+
+      Amazon Linux 2 reached end of support on November 26, 2025. AL2023 is the AWS-recommended default.
+
+      When disabled, the default AMI types remain AL2 for backward compatibility.`,
+        introducedIn: { v2: "2.259.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: `Explicitly set \`amiType\` to the desired AL2 type (e.g., \`NodegroupAmiType.AL2_X86_64\`) in your nodegroup configuration.
+
+**Warning**: Enabling this flag on existing stacks will cause node group replacement, which terminates running pods. To migrate safely, first pin existing node groups to their current amiType explicitly, then enable the flag for new node groups.`
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ANNOTATIONS_IN_VALIDATION_REPORT]: {
+        type: 2 /* VisibleContext */,
+        summary: "Include construct annotations (warnings and errors) in the policy validation report",
+        detailsMd: `
+      When enabled, construct annotations added via \`Annotations.of()\` or \`Validations.of()\`
+      are collected post-synthesis and included in the policy validation report alongside
+      plugin violations. Annotations appear under a "Construct Annotations" source entry.
+
+      When disabled, annotations are only displayed through the CLI's standard metadata
+      output (e.g. \`[Warning at /path] message\`) and do not appear in the validation report.
+
+      Note: enabling this flag may cause annotations to appear twice \u2014 once in the CLI's
+      standard output and once in the validation report \u2014 until the CLI is updated to
+      consolidate both displays.`,
+        introducedIn: { v2: "2.253.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DEFAULT_CROSS_STACK_REFERENCES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Controls whether cross-stack references are strong, weak, or both",
+        detailsMd: `
+      Controls the default type of cross-stack references. Accepted values are
+      \`"strong"\`, \`"weak"\`, and \`"both"\`.
+
+      The flag is read from the **consumer** stack's context, not the producer's.
+
+      - \`"strong"\` (default): Uses ExportWriter/ExportReader custom resources that
+        write values to SSM Parameters in the consuming region. This prevents the
+        producing stack from being deleted while consumers exist.
+      - \`"weak"\`: Uses Fn::GetStackOutput to read an output directly from the
+        producing stack. Simpler (no extra infrastructure), but the producing stack
+        can be deleted independently of consumers.
+      - \`"both"\`: A transitional state for migrating from strong to weak. The producer
+        keeps the ExportWriter (continues writing to SSM) and also adds an Output. The
+        consumer switches to Fn::GetStackOutput. This allows removing the ExportReader
+        without breaking anything.
+
+      **Migration from strong to weak**: set to \`"both"\` and deploy, then set to
+      \`"weak"\` and deploy again.
+
+      **Migration from weak to strong**: set directly to \`"strong"\` (single deployment).`,
+        introducedIn: { v2: "2.254.0" },
+        recommendedValue: "weak",
+        unconfiguredBehavesLike: { v2: "strong" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [VALIDATE_AGAINST_DEFAULT_RULES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Treat CloudFormation Validate findings as errors",
+        detailsMd: `
+      The CDK always validates synthesized templates against a default set of CloudFormation
+      rules during synthesis. These rules include schema validation, best-practice linting,
+      and common misconfiguration detection.
+
+      When this flag is explicitly set to \`true\`, violations are treated as errors and will
+      fail synthesis. When unconfigured, violations are reported as warnings only.`,
+        introducedIn: { v2: "2.262.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_EMPTY_LOAD_BALANCERS]: {
+        type: 1 /* BugFix */,
+        summary: "Render an empty `LoadBalancers` array on an ECS service that has no target groups",
+        detailsMd: `
+      CloudFormation distinguishes between an absent \`LoadBalancers\` property, which leaves the live
+      service configuration untouched, and an empty array, which removes the existing load balancer
+      registrations. Without this flag the CDK omits the property when a service has no target groups,
+      so removing the last target group from a service never reaches the deployed service: it keeps
+      serving traffic from the target groups it was registered in, and a later deployment can fail with
+      \`The target group with targetGroupArn ... does not have an associated load balancer\`.
+
+      When this flag is enabled, a service with no target groups renders \`LoadBalancers: []\` and
+      CloudFormation removes the registrations.
+
+      Enabling this adds \`LoadBalancers: []\` to every ECS service that has no target groups, including
+      services that never had any. Amazon ECS starts a new deployment when a load balancer configuration
+      is added, updated or removed, so expect a one-time deployment of those services.`,
+        introducedIn: { v2: "2.269.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Set this flag to `false` to keep omitting the property, and remove the registrations with `aws ecs update-service --load-balancers '[]'` instead."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS]: {
+        type: 0 /* ApiDefault */,
+        summary: "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS",
+        detailsMd: `
+      When enabled, cache behaviors on a \`Distribution\` that do not specify an explicit
+      \`viewerProtocolPolicy\` default to \`ViewerProtocolPolicy.REDIRECT_TO_HTTPS\` instead of
+      \`ViewerProtocolPolicy.ALLOW_ALL\`, so viewers are redirected from HTTP to HTTPS rather
+      than being served over plaintext HTTP.
+
+      This applies to the default behavior, to \`additionalBehaviors\`, and to behaviors added
+      later with \`addBehavior()\`. An explicitly specified \`viewerProtocolPolicy\` always wins,
+      regardless of this flag.
+
+      Note that \`REDIRECT_TO_HTTPS\` answers an HTTP request with an HTTP 301 redirect, which the
+      viewer then follows with a second request. That additional request is billable.`,
+        introducedIn: { v2: "2.273.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Set `viewerProtocolPolicy: ViewerProtocolPolicy.ALLOW_ALL` explicitly on each behavior to keep the old default."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD]: {
+        type: 1 /* BugFix */,
+        summary: "Render the API Gateway access log destination ARN without the trailing `:*`",
+        detailsMd: `
+      API Gateway stores the access log destination ARN without the trailing \`:*\` that
+      \`LogGroup.logGroupArn\` carries. When the CDK renders the log group \`Arn\` attribute,
+      CloudFormation drift detection reports the stage as \`MODIFIED\` on every run, even
+      though the access logging configuration has not changed.
+
+      When this flag is enabled, \`LogGroupLogDestination\` rebuilds the ARN from the log
+      group name, so the synthesized template matches the value stored by the service and
+      drift detection reports the stage as \`IN_SYNC\`.
+
+      When disabled, the destination ARN keeps using the log group \`Arn\` attribute.
+    `,
+        introducedIn: { v2: "V2NEXT" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Disable this flag to keep using the log group `Arn` attribute as the destination ARN."
+      }
+    };
+    CURRENT_MV = "v2";
+    CURRENT_VERSION_EXPIRED_FLAGS = Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] === void 0).map(([name, _]) => name).sort();
+    CURRENTLY_RECOMMENDED_FLAGS = Object.fromEntries(
+      Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] !== void 0).filter(([_, flag]) => flag.recommendedValue !== flag.unconfiguredBehavesLike?.[CURRENT_MV]).map(([name, flag]) => [name, flag.recommendedValue])
+    );
+    CURRENT_VERSION_FLAG_DEFAULTS = Object.fromEntries(Object.entries(FLAGS).filter(([_, flag]) => flag.unconfiguredBehavesLike?.[CURRENT_MV] !== void 0).map(([name, flag]) => [name, flag.unconfiguredBehavesLike?.[CURRENT_MV]]));
+    FUTURE_FLAGS = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v === "boolean"));
+    NEW_PROJECT_DEFAULT_CONTEXT = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v !== "boolean"));
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/app.ts
+var PATH_METADATA_ENABLE_CONTEXT, ANALYTICS_REPORTING_ENABLED_CONTEXT, PERFORMANCE_REPORTING_ENABLED_CONTEXT, DISABLE_ASSET_STAGING_CONTEXT, DISABLE_METADATA_STACK_TRACE, DISABLE_LOGICAL_ID_METADATA, DISABLE_CREATION_STACK_TRACES, BUNDLING_STACKS;
+var init_app = __esm({
+  "../../aws-cdk-lib/cx-api/lib/app.ts"() {
+    "use strict";
+    PATH_METADATA_ENABLE_CONTEXT = "aws:cdk:enable-path-metadata";
+    ANALYTICS_REPORTING_ENABLED_CONTEXT = "aws:cdk:version-reporting";
+    PERFORMANCE_REPORTING_ENABLED_CONTEXT = "aws:cdk:performance-reporting";
+    DISABLE_ASSET_STAGING_CONTEXT = "aws:cdk:disable-asset-staging";
+    DISABLE_METADATA_STACK_TRACE = "aws:cdk:disable-stack-trace";
+    DISABLE_LOGICAL_ID_METADATA = "aws:cdk:disable-logicalId-metadata";
+    DISABLE_CREATION_STACK_TRACES = "aws:cdk:disable-creation-stack-traces";
+    BUNDLING_STACKS = "aws:cdk:bundling-stacks";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/index.ts
+var init_lib = __esm({
+  "../../aws-cdk-lib/cx-api/lib/index.ts"() {
+    "use strict";
+    init_legacy_moved();
+    init_cxapi();
+    init_features();
+    init_app();
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/index.ts
+var init_cx_api = __esm({
+  "../../aws-cdk-lib/cx-api/index.ts"() {
+    "use strict";
+    init_lib();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/errors.ts
+function renderConstructRootPath(construct) {
+  const rootPath = [];
+  let cur = construct;
+  while (cur !== void 0) {
+    rootPath.push(cur);
+    cur = cur.node.scope;
+  }
+  rootPath.reverse();
+  const ret = new Array();
+  for (let i = 0; i < rootPath.length; i++) {
+    const constructId = rootPath[i].node.id || "<.>";
+    let suffix = "";
+    try {
+      const constructInfo = constructInfoFromConstruct(rootPath[i]);
+      suffix = ` (${constructInfo?.fqn})`;
+    } catch (_) {
+    }
+    const branch = " \u2514\u2500 ";
+    const indent = i > 0 ? " ".repeat(branch.length * (i - 1)) + branch : "";
+    ret.push(`    ${indent}${constructId}${suffix}`);
+  }
+  return ret.join("\n");
+}
+function maybeWriteErrorCode(errorCode) {
+  const file = process.env[ERRORFILE_ENV];
+  if (!file) {
+    return;
+  }
+  fs.writeFileSync(file, errorCode, "utf-8");
+}
+var fs, CONSTRUCT_ERROR_SYMBOL, VALIDATION_ERROR_SYMBOL, ASSUMPTION_ERROR_SYMBOL, EXECUTION_ERROR_SYMBOL, ConstructError, ValidationError, UnscopedValidationError, AssumptionError, ExecutionError;
+var init_errors = __esm({
+  "../../aws-cdk-lib/core/lib/errors.ts"() {
+    "use strict";
+    fs = __toESM(require("fs"));
+    init_runtime_info();
+    init_stack_trace();
+    init_cx_api();
+    CONSTRUCT_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError");
+    VALIDATION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ValidationError");
+    ASSUMPTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.AssumptionError");
+    EXECUTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ExecutionError");
+    ConstructError = class _ConstructError extends Error {
+      #time;
+      #constructPath;
+      #constructInfo;
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return this.#time;
+      }
+      /**
+       * The level. Always `'error'`.
+       */
+      get level() {
+        return "error";
+      }
+      /**
+       * The path of the construct this error is thrown from, if available.
+       */
+      get constructPath() {
+        return this.#constructPath;
+      }
+      /**
+       * Information on the construct this error is thrown from, if available.
+       */
+      get constructInfo() {
+        return this.#constructInfo;
+      }
+      constructor(msg, scope, name) {
+        super(msg);
+        const ctr = this.constructor;
+        Object.setPrototypeOf(this, _ConstructError.prototype);
+        Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL, { value: true });
+        this.name = name ?? ctr.name;
+        this.#time = (/* @__PURE__ */ new Date()).toISOString();
+        this.#constructPath = scope?.node.path;
+        if (scope) {
+          try {
+            this.#constructInfo = constructInfoFromConstruct(scope);
+          } catch (_) {
+          }
+        }
+        this.stack = `\xAB${this.name}\xBB ${msg}
+${enhancedStackTrace(ctr).join("\n")}`;
+        if (scope) {
+          this.stack += `
+Relates to construct:
+${renderConstructRootPath(scope)}`;
+        }
+        maybeWriteErrorCode(this.name);
+      }
+    };
+    ValidationError = class _ValidationError extends ConstructError {
+      get type() {
+        return "validation";
+      }
+      constructor(name, msg, scope) {
+        super(msg, scope, name);
+        Object.setPrototypeOf(this, _ValidationError.prototype);
+        Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    UnscopedValidationError = class _UnscopedValidationError extends ConstructError {
+      get type() {
+        return "validation";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _UnscopedValidationError.prototype);
+        Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    AssumptionError = class _AssumptionError extends ConstructError {
+      get type() {
+        return "assumption";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _AssumptionError.prototype);
+        Object.defineProperty(this, ASSUMPTION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    ExecutionError = class _ExecutionError extends ConstructError {
+      get type() {
+        return "exec";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _ExecutionError.prototype);
+        Object.defineProperty(this, EXECUTION_ERROR_SYMBOL, { value: true });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/aspect.ts
+function bumpAspectTreeRevision(construct) {
+  const root = construct.node.root;
+  const rev = root[TREE_REVISION_SYM] ?? 0;
+  root[TREE_REVISION_SYM] = rev + 1;
+}
+function _aspectTreeRevisionReader(construct) {
+  const root = construct.node.root;
+  return () => root[TREE_REVISION_SYM] ?? 0;
+}
+var ASPECTS_SYMBOL, AspectPriority, Aspects, AspectApplication, TREE_REVISION_SYM;
+var init_aspect = __esm({
+  "../../aws-cdk-lib/core/lib/aspect.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ASPECTS_SYMBOL = /* @__PURE__ */ Symbol.for("cdk-aspects");
+    AspectPriority = class {
+      /**
+       * Suggested priority for Aspects that mutate the construct tree.
+       */
+      static MUTATING = 200;
+      /**
+       * Suggested priority for Aspects that only read the construct tree.
+       */
+      static READONLY = 1e3;
+      /**
+       * Default priority for Aspects that are applied without a priority.
+       */
+      static DEFAULT = 500;
+    };
+    Aspects = class _Aspects {
+      /**
+       * Returns the `Aspects` object associated with a construct scope.
+       * @param scope The scope for which these aspects will apply.
+       */
+      static of(scope) {
+        let aspects = scope[ASPECTS_SYMBOL];
+        if (!aspects) {
+          aspects = new _Aspects(scope);
+          Object.defineProperty(scope, ASPECTS_SYMBOL, {
+            value: aspects,
+            configurable: false,
+            enumerable: false
+          });
+        }
+        return aspects;
+      }
+      _scope;
+      _appliedAspects;
+      constructor(scope) {
+        this._appliedAspects = [];
+        this._scope = scope;
+      }
+      /**
+       * Adds an aspect to apply this scope before synthesis.
+       * @param aspect The aspect to add.
+       * @param options Options to apply on this aspect.
+       */
+      add(aspect, options) {
+        const newApplication = new AspectApplication(this._scope, aspect, options?.priority ?? AspectPriority.DEFAULT);
+        if (this._appliedAspects.some((a) => a.aspect === newApplication.aspect && a.priority === newApplication.priority)) {
+          return;
+        }
+        this._appliedAspects.push(newApplication);
+        bumpAspectTreeRevision(this._scope);
+      }
+      /**
+       * The list of aspects which were directly applied on this scope.
+       */
+      get all() {
+        return this._appliedAspects.map((application) => application.aspect);
+      }
+      /**
+       * The list of aspects with priority which were directly applied on this scope.
+       *
+       * Also returns inherited Aspects of this node.
+       */
+      get applied() {
+        return [...this._appliedAspects];
+      }
+    };
+    AspectApplication = class {
+      /**
+       * The construct that the Aspect was applied to.
+       */
+      construct;
+      /**
+       * The Aspect that was applied.
+       */
+      aspect;
+      /**
+       * The priority value of this Aspect. Must be non-negative integer.
+       */
+      _priority;
+      /**
+       * Initializes AspectApplication object
+       */
+      constructor(construct, aspect, priority) {
+        this.construct = construct;
+        this.aspect = aspect;
+        this._priority = priority;
+      }
+      /**
+       * Gets the priority value.
+       */
+      get priority() {
+        return this._priority;
+      }
+      /**
+       * Sets the priority value.
+       */
+      set priority(priority) {
+        if (priority < 0) {
+          throw new ValidationError(lit`PriorityNonNegativeNumber`, "Priority must be a non-negative number", this.construct);
+        }
+        this._priority = priority;
+        bumpAspectTreeRevision(this.construct);
+      }
+    };
+    TREE_REVISION_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Aspects.treeRevision");
+  }
+});
+
+// ../../aws-cdk-lib/cloud-assembly-schema/index.ts
+var cloud_assembly_schema_exports = {};
+var init_cloud_assembly_schema = __esm({
+  "../../aws-cdk-lib/cloud-assembly-schema/index.ts"() {
+    "use strict";
+    __reExport(cloud_assembly_schema_exports, __toESM(require_lib2()));
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/core-construct-finders.ts
+function stackOf(construct) {
+  const cache = construct[MY_STACK_CACHE];
+  if (cache) {
+    return cache;
+  } else {
+    const value = _lookup(construct);
+    Object.defineProperty(construct, MY_STACK_CACHE, {
+      enumerable: false,
+      writable: false,
+      configurable: false,
+      value
+    });
+    return value;
+  }
+  function _lookup(c) {
+    if (STACK_TYPE.isMarked(c)) {
+      return c;
+    }
+    const _scope = c.node.scope;
+    if (STAGE_TYPE.isMarked(c) || !_scope) {
+      throw new ValidationError(lit`ShouldBeCreatedInStackScope`, `${construct.constructor?.name ?? "Construct"} at '${construct.node.path}' should be created in the scope of a Stack, but no Stack found`, c);
+    }
+    return _lookup(_scope);
+  }
+}
+function stageOf(construct) {
+  return construct.node.scopes.reverse().slice(1).find(STAGE_TYPE.isMarked.bind(STAGE_TYPE));
+}
+function appOf(construct) {
+  const root = construct.node.root;
+  return APP_TYPE.isMarked(root) ? root : void 0;
+}
+function isCfnResource(x) {
+  return x !== null && typeof x === "object" && x.cfnResourceType !== void 0;
+}
+var ConstructType, APP_TYPE, STACK_TYPE, STAGE_TYPE, NESTED_STACK_TYPE, MY_STACK_CACHE;
+var init_core_construct_finders = __esm({
+  "../../aws-cdk-lib/core/lib/private/core-construct-finders.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ConstructType = class {
+      constructor(sym) {
+        this.sym = sym;
+      }
+      sym;
+      mark(x) {
+        Object.defineProperty(x, this.sym, { value: true });
+      }
+      isMarked(x) {
+        return x !== null && typeof x === "object" && this.sym in x;
+      }
+    };
+    APP_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.App"));
+    STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack"));
+    STAGE_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stage"));
+    NESTED_STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.NestedStack"));
+    MY_STACK_CACHE = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack.myStack");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/annotations.ts
+function removeWarningDeep(construct, id) {
+  const stack = [construct];
+  while (stack.length > 0) {
+    const next = stack.pop();
+    removeWarning(next, id);
+    stack.push(...next.node.children);
+  }
+}
+function removeWarning(construct, id) {
+  const meta = construct.node._metadata;
+  if (!meta) {
+    return;
+  }
+  let i = 0;
+  while (i < meta.length) {
+    const m = meta[i];
+    if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && m.data.includes(ackTag(id))) {
+      meta.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+}
+function removeInfoDeep(construct, id) {
+  const stack = [construct];
+  while (stack.length > 0) {
+    const next = stack.pop();
+    removeInfo(next, id);
+    stack.push(...next.node.children);
+  }
+}
+function removeInfo(construct, id) {
+  const meta = construct.node._metadata;
+  if (!meta) {
+    return;
+  }
+  let i = 0;
+  while (i < meta.length) {
+    const m = meta[i];
+    if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO && m.data.includes(ackTag(id))) {
+      meta.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+}
+function ackTag(id) {
+  return `[ack: ${id}]`;
+}
+var Annotations, Acknowledgements;
+var init_annotations = __esm({
+  "../../aws-cdk-lib/core/lib/annotations.ts"() {
+    "use strict";
+    init_errors();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_core_construct_finders();
+    init_literal_string();
+    Annotations = class _Annotations {
+      constructor(scope) {
+        this.scope = scope;
+        const disableTrace = scope.node.tryGetContext(DISABLE_METADATA_STACK_TRACE) || process.env.CDK_DISABLE_STACK_TRACE;
+        this.stackTraces = !disableTrace;
+      }
+      scope;
+      /**
+       * Returns the annotations API for a construct scope.
+       * @param scope The scope
+       */
+      static of(scope) {
+        return new _Annotations(scope);
+      }
+      stackTraces;
+      /**
+       * Acknowledge a warning. When a warning is acknowledged for a scope
+       * all warnings that match the id will be ignored.
+       *
+       * The acknowledgement will apply to all child scopes
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).acknowledgeWarning('SomeWarningId', 'This warning can be ignored because...');
+       *
+       * @param id - the id of the warning message to acknowledge
+       * @param message optional message to explain the reason for acknowledgement
+       */
+      acknowledgeWarning(id, message) {
+        Acknowledgements.of(this.scope).add(this.scope, id);
+        void message;
+        removeWarningDeep(this.scope, id);
+      }
+      /**
+       * Adds an acknowledgeable warning metadata entry to this construct.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * If the warning is acknowledged using `acknowledgeWarning()`, it will not be shown by
+       * the CLI, and will not cause `--strict` mode to fail synthesis.
+       *
+       * Prefer using `Validations.of(scope).addWarning()` instead.
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).addWarningV2('my-library:Construct.someWarning', 'Some message explaining the warning');
+       *
+       * @param id the unique identifier for the warning. This can be used to acknowledge the warning
+       * @param message The warning message.
+       */
+      addWarningV2(id, message) {
+        if (!Acknowledgements.of(this.scope).has(this.scope, id)) {
+          this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, `${message} ${ackTag(id)}`);
+        }
+      }
+      /**
+       * Adds a warning metadata entry to this construct. Prefer using `Validations.of(scope).addWarning()`.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * Warnings added by this call cannot be acknowledged. This will block users from
+       * running in `--strict` mode until the deal with the warning, which makes it
+       * effectively not very different from `addError`. Prefer using `addWarningV2` instead.
+       *
+       * @param message The warning message.
+       */
+      addWarning(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, message);
+      }
+      /**
+       * Acknowledge a info. When a info is acknowledged for a scope
+       * all infos that match the id will be ignored.
+       *
+       * The acknowledgement will apply to all child scopes
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).acknowledgeInfo('SomeInfoId', 'This info can be ignored because...');
+       *
+       * @param id - the id of the info message to acknowledge
+       * @param message optional message to explain the reason for acknowledgement
+       */
+      acknowledgeInfo(id, message) {
+        Acknowledgements.of(this.scope).add(this.scope, id);
+        void message;
+        removeInfoDeep(this.scope, id);
+      }
+      /**
+       * Adds an acknowledgeable info metadata entry to this construct.
+       *
+       * The CLI will display the info when an app is synthesized.
+       *
+       * If the info is acknowledged using `acknowledgeInfo()`, it will not be shown by the CLI.
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).addInfoV2('my-library:Construct.someInfo', 'Some message explaining the info');
+       *
+       * @param id the unique identifier for the info. This can be used to acknowledge the info
+       * @param message The info message.
+       */
+      addInfoV2(id, message) {
+        if (!Acknowledgements.of(this.scope).has(this.scope, id)) {
+          this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, `${message} ${ackTag(id)}`);
+        }
+      }
+      /**
+       * Adds an info metadata entry to this construct.
+       *
+       * The CLI will display the info message when apps are synthesized.
+       *
+       * @param message The info message.
+       */
+      addInfo(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, message);
+      }
+      /**
+       * Adds an { "error":  } metadata entry to this construct.
+       * The toolkit will fail deployment of any stack that has errors reported against it.
+       * Prefer using `Validations.of(scope).addError()` instead.
+       * @param message The error message.
+       */
+      addError(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR, message);
+      }
+      /**
+       * Add an error annotation to this construct, along with a tracking ID
+       *
+       * The toolkit will fail deployment of any stack that has errors reported against it.
+       *
+       * The error code will be tracked by telemetry; this method should only be used
+       * by CDK source code.
+       *
+       * @param id The error ID.
+       * @param message The error message.
+       * @internal
+       */
+      _addTrackableError(id, message) {
+        this.addError(message);
+        const type = "aws:cdk:error-code";
+        const isNew = !this.scope.node.metadata.find((x) => x.type === type && x.data === id);
+        if (isNew) {
+          this.scope.node.addMetadata(type, id);
+        }
+      }
+      /**
+       * Adds a deprecation warning for a specific API.
+       *
+       * Deprecations will be added only once per construct as a warning and will be
+       * deduplicated based on the `api`.
+       *
+       * If the environment variable `CDK_BLOCK_DEPRECATIONS` is set, this method
+       * will throw an error instead with the deprecation message.
+       *
+       * @param api The API being deprecated in the format `module.Class.property`
+       * (e.g. `@aws-cdk/core.Construct.node`).
+       * @param message The deprecation message to display, with information about
+       * alternatives.
+       */
+      addDeprecation(api, message) {
+        const text = `The API ${api} is deprecated: ${message}. This API will be removed in the next major release`;
+        if (process.env.CDK_BLOCK_DEPRECATIONS) {
+          throw new UnscopedValidationError(lit`ValidationError`, `${this.scope.node.path}: ${text}`);
+        }
+        this.addWarningV2(`Deprecated:${api}`, text);
+      }
+      /**
+       * Adds a message metadata entry to the construct node, to be displayed by the CDK CLI.
+       *
+       * Records the message once per construct.
+       * @param level The message level
+       * @param message The message itself
+       */
+      addMessage(level, message) {
+        const isNew = !this.scope.node.metadata.find((x) => x.data === message);
+        if (isNew) {
+          let normalizedMessage = typeof message === "string" ? message : JSON.stringify(message);
+          this.scope.node.addMetadata(level, normalizedMessage, { stackTrace: this.stackTraces });
+        }
+      }
+    };
+    Acknowledgements = class _Acknowledgements {
+      static of(scope) {
+        const app = appOf(scope);
+        if (!app) {
+          return new _Acknowledgements();
+        }
+        const existing = app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM];
+        if (existing) {
+          return existing;
+        }
+        const fresh = new _Acknowledgements();
+        app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM] = fresh;
+        return fresh;
+      }
+      static ACKNOWLEDGEMENTS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Acknowledgements");
+      acks = /* @__PURE__ */ new Map();
+      constructor() {
+      }
+      add(node, ack) {
+        const nodePath = this.nodePath(node);
+        let arr = this.acks.get(nodePath);
+        if (!arr) {
+          arr = /* @__PURE__ */ new Set();
+          this.acks.set(nodePath, arr);
+        }
+        arr.add(ack);
+      }
+      has(node, ack) {
+        for (const candidate of this.searchPaths(this.nodePath(node))) {
+          if (this.acks.get(candidate)?.has(ack)) {
+            return true;
+          }
+        }
+        return false;
+      }
+      nodePath(node) {
+        return (typeof node === "string" ? node : node.node.path).replace(/^\//, "");
+      }
+      /**
+       * Given 'a/b/c', return ['a/b/c', 'a/b', 'a']
+       */
+      searchPaths(path23) {
+        const ret = new Array();
+        let start = 0;
+        while (start < path23.length) {
+          let i = path23.indexOf("/", start);
+          if (i !== -1) {
+            ret.push(path23.substring(0, i));
+            start = i + 1;
+          } else {
+            start = path23.length;
+          }
+        }
+        ret.push(path23);
+        return ret.reverse();
+      }
+    };
+  }
+});
+
+// ../../../node_modules/constructs/lib/dependency.js
+var require_dependency = __commonJS({
+  "../../../node_modules/constructs/lib/dependency.js"(exports2) {
+    "use strict";
+    var _a7;
+    var _b;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.Dependable = exports2.DependencyGroup = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var DependencyGroup = class {
+      constructor(...deps) {
+        this._deps = new Array();
+        const self2 = this;
+        Dependable2.implement(this, {
+          get dependencyRoots() {
+            const result = new Array();
+            for (const d of self2._deps) {
+              result.push(...Dependable2.of(d).dependencyRoots);
+            }
+            return result;
+          }
+        });
+        this.add(...deps);
+      }
+      /**
+       * Add a construct to the dependency roots
+       */
+      add(...scopes) {
+        this._deps.push(...scopes);
+      }
+    };
+    exports2.DependencyGroup = DependencyGroup;
+    _a7 = JSII_RTTI_SYMBOL_1;
+    DependencyGroup[_a7] = { fqn: "constructs.DependencyGroup", version: "10.6.0" };
+    var DEPENDABLE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.DependableTrait");
+    var Dependable2 = class {
+      /**
+       * Turn any object into an IDependable.
+       */
+      static implement(instance, trait) {
+        instance[DEPENDABLE_SYMBOL] = trait;
+      }
+      /**
+       * Return the matching Dependable for the given class instance.
+       */
+      static of(instance) {
+        const ret = instance[DEPENDABLE_SYMBOL];
+        if (!ret) {
+          throw new Error(`${instance} does not implement IDependable. Use "Dependable.implement()" to implement`);
+        }
+        return ret;
+      }
+      /**
+       * Return the matching Dependable for the given class instance.
+       * @deprecated use `of`
+       */
+      static get(instance) {
+        return this.of(instance);
+      }
+    };
+    exports2.Dependable = Dependable2;
+    _b = JSII_RTTI_SYMBOL_1;
+    Dependable2[_b] = { fqn: "constructs.Dependable", version: "10.6.0" };
+  }
+});
+
+// ../../../node_modules/constructs/lib/private/stack-trace.js
+var require_stack_trace = __commonJS({
+  "../../../node_modules/constructs/lib/private/stack-trace.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.captureStackTrace = captureStackTrace2;
+    function captureStackTrace2(below) {
+      below = below || captureStackTrace2;
+      const object = { stack: "" };
+      const previousLimit = Error.stackTraceLimit;
+      try {
+        Error.stackTraceLimit = Number.MAX_SAFE_INTEGER;
+        Error.captureStackTrace(object, below);
+      } finally {
+        Error.stackTraceLimit = previousLimit;
+      }
+      if (!object.stack) {
+        return [];
+      }
+      return object.stack.split("\n").slice(1).map((s) => s.replace(/^\s*at\s+/, ""));
+    }
+  }
+});
+
+// ../../../node_modules/constructs/lib/private/uniqueid.js
+var require_uniqueid = __commonJS({
+  "../../../node_modules/constructs/lib/private/uniqueid.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.addressOf = addressOf;
+    var crypto13 = require("crypto");
+    var HIDDEN_ID3 = "Default";
+    function addressOf(components) {
+      const hash = crypto13.createHash("sha1");
+      for (const c of components) {
+        if (c === HIDDEN_ID3) {
+          continue;
+        }
+        hash.update(c);
+        hash.update("\n");
+      }
+      return "c8" + hash.digest("hex");
+    }
+  }
+});
+
+// ../../../node_modules/constructs/lib/construct.js
+var require_construct = __commonJS({
+  "../../../node_modules/constructs/lib/construct.js"(exports2) {
+    "use strict";
+    var _a7;
+    var _b;
+    var _c;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.RootConstruct = exports2.ConstructOrder = exports2.Construct = exports2.Node = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var dependency_1 = require_dependency();
+    var stack_trace_1 = require_stack_trace();
+    var uniqueid_1 = require_uniqueid();
+    var CONSTRUCT_SYM = /* @__PURE__ */ Symbol.for("constructs.Construct");
+    var Node11 = class _Node {
+      /**
+       * Returns the node associated with a construct.
+       * @param construct the construct
+       *
+       * @deprecated use `construct.node` instead
+       */
+      static of(construct) {
+        return construct.node;
+      }
+      constructor(host, scope, id) {
+        this.host = host;
+        this._locked = false;
+        id = id ?? "";
+        this.id = sanitizeId(id);
+        this.scope = scope;
+        if (scope && !this.id) {
+          throw new Error("Only root constructs may have an empty ID");
+        }
+        scope?.node.addChild(host, this.id);
+      }
+      /**
+       * The full, absolute path of this construct in the tree.
+       *
+       * Components are separated by '/'.
+       */
+      get path() {
+        const components = [];
+        for (const scope of this.scopes) {
+          if (scope.node.id) {
+            components.push(scope.node.id);
+          }
+        }
+        return components.join(_Node.PATH_SEP);
+      }
+      /**
+       * Returns an opaque tree-unique address for this construct.
+       *
+       * Addresses are 42 characters hexadecimal strings. They begin with "c8"
+       * followed by 40 lowercase hexadecimal characters (0-9a-f).
+       *
+       * Addresses are calculated using a SHA-1 of the components of the construct
+       * path.
+       *
+       * To enable refactoring of construct trees, constructs with the ID `Default`
+       * will be excluded from the calculation. In those cases constructs in the
+       * same tree may have the same address.
+       *
+       * @example c83a2846e506bcc5f10682b564084bca2d275709ee
+       */
+      get addr() {
+        if (!this._addr) {
+          this._addr = (0, uniqueid_1.addressOf)(this.scopes.map((c) => c.node.id));
+        }
+        return this._addr;
+      }
+      /**
+       * Return a direct child by id, or undefined
+       *
+       * @param id Identifier of direct child
+       * @returns the child if found, or undefined
+       */
+      tryFindChild(id) {
+        return this._children?.[sanitizeId(id)];
+      }
+      /**
+       * Return a direct child by id
+       *
+       * Throws an error if the child is not found.
+       *
+       * @param id Identifier of direct child
+       * @returns Child with the given id.
+       */
+      findChild(id) {
+        const ret = this.tryFindChild(id);
+        if (!ret) {
+          throw new Error(`No child with id: '${id}'`);
+        }
+        return ret;
+      }
+      /**
+       * Returns the child construct that has the id `Default` or `Resource`.
+       * This is usually the construct that provides the bulk of the underlying functionality.
+       * Useful for modifications of the underlying construct that are not available at the higher levels.
+       *
+       * @throws if there is more than one child
+       * @returns a construct or undefined if there is no default child
+       */
+      get defaultChild() {
+        if (this._defaultChild !== void 0) {
+          return this._defaultChild;
+        }
+        const resourceChild = this.tryFindChild("Resource");
+        const defaultChild = this.tryFindChild("Default");
+        if (resourceChild && defaultChild) {
+          throw new Error(`Cannot determine default child for ${this.path}. There is both a child with id "Resource" and id "Default"`);
+        }
+        return defaultChild || resourceChild;
+      }
+      /**
+       * Override the defaultChild property.
+       *
+       * This should only be used in the cases where the correct
+       * default child is not named 'Resource' or 'Default' as it
+       * should be.
+       *
+       * If you set this to undefined, the default behavior of finding
+       * the child named 'Resource' or 'Default' will be used.
+       */
+      set defaultChild(value) {
+        this._defaultChild = value;
+      }
+      /**
+       * All direct children of this construct.
+       */
+      get children() {
+        return Object.values(this._children ?? {});
+      }
+      /**
+       * Return this construct and all of its children in the given order
+       */
+      findAll(order = ConstructOrder.PREORDER) {
+        const ret = new Array();
+        visit2(this.host);
+        return ret;
+        function visit2(c) {
+          if (order === ConstructOrder.PREORDER) {
+            ret.push(c);
+          }
+          for (const child of c.node.children) {
+            visit2(child);
+          }
+          if (order === ConstructOrder.POSTORDER) {
+            ret.push(c);
+          }
+        }
+      }
+      /**
+       * This can be used to set contextual values.
+       * Context must be set before any children are added, since children may consult context info during construction.
+       * If the key already exists, it will be overridden.
+       * @param key The context key
+       * @param value The context value
+       */
+      setContext(key, value) {
+        if (this.children.length > 0) {
+          const names = this.children.map((c) => c.node.id);
+          throw new Error("Cannot set context after children have been added: " + names.join(","));
+        }
+        if (!this._context) {
+          this._context = {};
+        }
+        this._context[key] = value;
+      }
+      /**
+       * Retrieves a value from tree context if present. Otherwise, would throw an error.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param key The context key
+       * @returns The context value or throws error if there is no context value for this key
+       */
+      getContext(key) {
+        const value = this._context?.[key];
+        if (value !== void 0) {
+          return value;
+        }
+        if (value === void 0 && !this.scope?.node) {
+          throw new Error(`No context value present for ${key} key`);
+        }
+        return this.scope && this.scope.node.getContext(key);
+      }
+      /**
+       * Retrieves the all context of a node from tree context.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param defaults Any keys to override the retrieved context
+       * @returns The context object or an empty object if there is discovered context
+       */
+      getAllContext(defaults) {
+        return this.scopes.reverse().reduce((a, s) => ({ ...s.node._context, ...a }), { ...defaults });
+      }
+      /**
+       * Retrieves a value from tree context.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param key The context key
+       * @returns The context value or `undefined` if there is no context value for this key.
+       */
+      tryGetContext(key) {
+        const value = this._context?.[key];
+        if (value !== void 0) {
+          return value;
+        }
+        return this.scope && this.scope.node.tryGetContext(key);
+      }
+      /**
+       * An immutable array of metadata objects associated with this construct.
+       * This can be used, for example, to implement support for deprecation notices, source mapping, etc.
+       */
+      get metadata() {
+        return [...this._metadata ?? []];
+      }
+      /**
+       * Adds a metadata entry to this construct.
+       * Entries are arbitrary values and will also include a stack trace to allow tracing back to
+       * the code location for when the entry was added. It can be used, for example, to include source
+       * mapping in CloudFormation templates to improve diagnostics.
+       * Note that construct metadata is not the same as CloudFormation resource metadata and is never written to the CloudFormation template.
+       * The metadata entries are written to the Cloud Assembly Manifest if the `treeMetadata` property is specified in the props of the App that contains this Construct.
+       *
+       * @param type a string denoting the type of metadata
+       * @param data the value of the metadata (can be a Token). If null/undefined, metadata will not be added.
+       * @param options options
+       */
+      addMetadata(type, data, options = {}) {
+        if (data == null) {
+          return;
+        }
+        const node = this;
+        function getTrace() {
+          if (options.stackTraceOverride && options.stackTraceOverride.length > 0) {
+            return options.stackTraceOverride;
+          }
+          const shouldTrace = options.stackTrace ?? false;
+          return shouldTrace ? (0, stack_trace_1.captureStackTrace)(options.traceFromFunction ?? node.addMetadata) : void 0;
+        }
+        if (!this._metadata) {
+          this._metadata = [];
+        }
+        this._metadata.push({ type, data, trace: getTrace() });
+      }
+      /**
+       * All parent scopes of this construct.
+       *
+       * @returns a list of parent scopes. The last element in the list will always
+       * be the current construct and the first element will be the root of the
+       * tree.
+       */
+      get scopes() {
+        const ret = new Array();
+        let curr = this.host;
+        while (curr) {
+          ret.unshift(curr);
+          curr = curr.node.scope;
+        }
+        return ret;
+      }
+      /**
+       * Returns the root of the construct tree.
+       * @returns The root of the construct tree.
+       */
+      get root() {
+        return this.scopes[0];
+      }
+      /**
+       * Returns true if this construct or the scopes in which it is defined are
+       * locked.
+       */
+      get locked() {
+        if (this._locked) {
+          return true;
+        }
+        if (this.scope && this.scope.node.locked) {
+          return true;
+        }
+        return false;
+      }
+      /**
+       * Add an ordering dependency on another construct.
+       *
+       * An `IDependable`
+       */
+      addDependency(...deps) {
+        if (!this._dependencies) {
+          this._dependencies = /* @__PURE__ */ new Set();
+        }
+        for (const d of deps) {
+          this._dependencies.add(d);
+        }
+      }
+      /**
+       * Return all dependencies registered on this node (non-recursive).
+       */
+      get dependencies() {
+        const result = new Array();
+        if (this._dependencies) {
+          for (const dep of this._dependencies) {
+            for (const root of dependency_1.Dependable.of(dep).dependencyRoots) {
+              result.push(root);
+            }
+          }
+        }
+        return result;
+      }
+      /**
+       * Remove the child with the given name, if present.
+       *
+       * @returns Whether a child with the given name was deleted.
+       */
+      tryRemoveChild(childName) {
+        if (!this._children || !(childName in this._children)) {
+          return false;
+        }
+        delete this._children[childName];
+        return true;
+      }
+      /**
+       * Adds a validation to this construct.
+       *
+       * When `node.validate()` is called, the `validate()` method will be called on
+       * all validations and all errors will be returned.
+       *
+       * @param validation The validation object
+       */
+      addValidation(validation) {
+        if (!this._validations) {
+          this._validations = [];
+        }
+        this._validations.push(validation);
+      }
+      /**
+       * Validates this construct.
+       *
+       * Invokes the `validate()` method on all validations added through
+       * `addValidation()`.
+       *
+       * @returns an array of validation error messages associated with this
+       * construct.
+       */
+      validate() {
+        return (this._validations ?? []).flatMap((v) => v.validate());
+      }
+      /**
+       * Locks this construct from allowing more children to be added. After this
+       * call, no more children can be added to this construct or to any children.
+       */
+      lock() {
+        this._locked = true;
+      }
+      /**
+       * Applies one or more mixins to this construct.
+       *
+       * Mixins are applied in order. The list of constructs is captured at the
+       * start of the call, so constructs added by a mixin will not be visited.
+       * Use multiple `with()` calls if subsequent mixins should apply to added
+       * constructs.
+       *
+       * @param mixins The mixins to apply
+       * @returns This construct for chaining
+       */
+      with(...mixins) {
+        const allConstructs = this.findAll();
+        for (const mixin of mixins) {
+          for (const construct of allConstructs) {
+            if (mixin.supports(construct)) {
+              mixin.applyTo(construct);
+            }
+          }
+        }
+        return this.host;
+      }
+      /**
+       * Adds a child construct to this node.
+       *
+       * @param child The child construct
+       * @param childName The type name of the child construct.
+       * @returns The resolved path part name of the child
+       */
+      addChild(child, childName) {
+        if (this.locked) {
+          if (!this.path) {
+            throw new Error("Cannot add children during synthesis");
+          }
+          throw new Error(`Cannot add children to "${this.path}" during synthesis`);
+        }
+        if (!this._children) {
+          this._children = {};
+        }
+        if (this._children[childName]) {
+          const name = this.id ?? "";
+          const typeName = this.host.constructor.name;
+          throw new Error(`There is already a Construct with name '${childName}' in ${typeName}${name.length > 0 ? " [" + name + "]" : ""}`);
+        }
+        this._children[childName] = child;
+      }
+    };
+    exports2.Node = Node11;
+    _a7 = JSII_RTTI_SYMBOL_1;
+    Node11[_a7] = { fqn: "constructs.Node", version: "10.6.0" };
+    Node11.PATH_SEP = "/";
+    var Construct19 = class {
+      /**
+       * Checks if `x` is a construct.
+       *
+       * Use this method instead of `instanceof` to properly detect `Construct`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `constructs` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `Construct` in each copy of the `constructs` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `constructs`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       *
+       * @returns true if `x` is an object created from a class which extends `Construct`.
+       * @param x Any object
+       */
+      static isConstruct(x) {
+        return x && typeof x === "object" && x[CONSTRUCT_SYM];
+      }
+      /**
+       * Creates a new construct node.
+       *
+       * @param scope The scope in which to define this construct
+       * @param id The scoped construct ID. Must be unique amongst siblings. If
+       * the ID includes a path separator (`/`), then it will be replaced by double
+       * dash `--`.
+       */
+      constructor(scope, id) {
+        this.node = new Node11(this, scope, id);
+        dependency_1.Dependable.implement(this, {
+          dependencyRoots: [this]
+        });
+      }
+      /**
+       * Applies one or more mixins to this construct.
+       *
+       * Mixins are applied in order. The list of constructs is captured at the
+       * start of the call, so constructs added by a mixin will not be visited.
+       * Use multiple `with()` calls if subsequent mixins should apply to added
+       * constructs.
+       *
+       * @param mixins The mixins to apply
+       * @returns This construct for chaining
+       */
+      with(...mixins) {
+        return this.node.with(...mixins);
+      }
+      /**
+       * Returns a string representation of this construct.
+       */
+      toString() {
+        return this.node.path || "";
+      }
+    };
+    exports2.Construct = Construct19;
+    _b = JSII_RTTI_SYMBOL_1;
+    Construct19[_b] = { fqn: "constructs.Construct", version: "10.6.0" };
+    var ConstructOrder;
+    (function(ConstructOrder2) {
+      ConstructOrder2[ConstructOrder2["PREORDER"] = 0] = "PREORDER";
+      ConstructOrder2[ConstructOrder2["POSTORDER"] = 1] = "POSTORDER";
+    })(ConstructOrder || (exports2.ConstructOrder = ConstructOrder = {}));
+    var PATH_SEP_REGEX = new RegExp(`${Node11.PATH_SEP}`, "g");
+    function sanitizeId(id) {
+      return id.replace(PATH_SEP_REGEX, "--");
+    }
+    Object.defineProperty(Construct19.prototype, CONSTRUCT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+    var RootConstruct = class extends Construct19 {
+      /**
+       * Creates a new root construct node.
+       *
+       * @param id The scoped construct ID. Must be unique amongst siblings. If
+       * the ID includes a path separator (`/`), then it will be replaced by double
+       * dash `--`.
+       */
+      constructor(id) {
+        super(void 0, id ?? "");
+      }
+    };
+    exports2.RootConstruct = RootConstruct;
+    _c = JSII_RTTI_SYMBOL_1;
+    RootConstruct[_c] = { fqn: "constructs.RootConstruct", version: "10.6.0" };
+  }
+});
+
+// ../../../node_modules/constructs/lib/index.js
+var require_lib4 = __commonJS({
+  "../../../node_modules/constructs/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_construct(), exports2);
+    __exportStar2(require_dependency(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/feature-flags.ts
+var import_constructs, FeatureFlags;
+var init_feature_flags = __esm({
+  "../../aws-cdk-lib/core/lib/feature-flags.ts"() {
+    "use strict";
+    import_constructs = __toESM(require_lib4());
+    init_errors();
+    init_cx_api();
+    init_literal_string();
+    FeatureFlags = class _FeatureFlags {
+      constructor(construct) {
+        this.construct = construct;
+      }
+      construct;
+      /**
+       * Inspect feature flags on the construct node's context.
+       */
+      static of(scope) {
+        return new _FeatureFlags(scope);
+      }
+      /**
+       * Check whether a feature flag is enabled. If configured, the flag is present in
+       * the construct node context. Falls back to the defaults defined in the `cx-api`
+       * module.
+       */
+      isEnabled(featureFlag) {
+        const context = import_constructs.Node.of(this.construct).tryGetContext(featureFlag);
+        if (CURRENT_VERSION_EXPIRED_FLAGS.includes(featureFlag)) {
+          if (context !== void 0) {
+            throw new UnscopedValidationError(lit`UnsupportedFeatureFlag`, `Unsupported feature flag '${featureFlag}'. This flag existed on CDKv1 but has been removed in CDKv2. CDK will now behave as the same as when the flag is enabled.`);
+          }
+          return true;
+        }
+        return context !== void 0 ? Boolean(context) : futureFlagDefault(featureFlag);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/aspect-prio.ts
+function mutatingAspectPrio32333(scope) {
+  return FeatureFlags.of(scope).isEnabled(ASPECT_PRIORITIES_MUTATING) ? AspectPriority.MUTATING : void 0;
+}
+var init_aspect_prio = __esm({
+  "../../aws-cdk-lib/core/lib/private/aspect-prio.ts"() {
+    "use strict";
+    init_cx_api();
+    init_aspect();
+    init_feature_flags();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/debug.ts
+function debugModeEnabled() {
+  return isTruthy(import_process.env[CDK_DEBUG]);
+}
+function isTruthy(value) {
+  if (!value) {
+    return false;
+  }
+  return TRUTHY_VALUES.has(value.toLowerCase());
+}
+var import_process, CDK_DEBUG, TRUTHY_VALUES;
+var init_debug = __esm({
+  "../../aws-cdk-lib/core/lib/debug.ts"() {
+    "use strict";
+    import_process = require("process");
+    CDK_DEBUG = "CDK_DEBUG";
+    TRUTHY_VALUES = /* @__PURE__ */ new Set(["1", "on", "true"]);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/box.ts
+var BOX_SYM, stackTraceCollectionEnabled, globalSeq, Box, BaseReadableBox, Combined, Computed, ReadonlyState, State, ArrayState, MapState, SetState;
+var init_box = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/box.ts"() {
+    "use strict";
+    init_debug();
+    init_stack_trace();
+    BOX_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Box");
+    stackTraceCollectionEnabled = true;
+    globalSeq = 0;
+    Box = class {
+      /**
+       * Creates a mutable box holding a single value.
+       *
+       * @param value the initial value.
+       * @param options.equals optional equality function used to skip no-op `set` calls.
+       *   Defaults to reference equality (`===`).
+       * @returns a new `Box`.
+       */
+      static fromValue(value, options) {
+        return new State(value, options);
+      }
+      /**
+       * Creates a read-only box that combines multiple source boxes through a function.
+       *
+       * The resulting box collects stack traces from all source boxes, sorted by
+       * the global mutation order. This is useful when a single CloudFormation
+       * property depends on multiple pieces of L2 state.
+       *
+       * @param boxes a record of named source boxes.
+       * @param fn a pure function that receives the unwrapped values and produces the result.
+       * @returns a new read-only `IReadableBox`.
+       * @example
+       *   const a = Boxes.fromValue(10);
+       *   const b = Boxes.fromValue(20);
+       *   const result = Boxes.combine({ a, b }, (x) => x.a + x.b).derive((x) => x * 2);
+       *   result.get(); // 60
+       */
+      static combine(boxes, fn) {
+        return new Combined(boxes, fn);
+      }
+      /**
+       * Type guard that checks whether a value is a box.
+       *
+       * Used internally by `PropertyAssignmentMetadataWriter` to decide whether a
+       * resolved token should contribute `aws:cdk:propertyAssignment` metadata.
+       */
+      static isBox(x) {
+        return typeof x === "object" && x && BOX_SYM in x;
+      }
+      /**
+       * Creates a mutable array box.
+       *
+       * @param as the initial array contents.
+       * @param options.omitEmpty if true (the default), the box resolves to `undefined` when the
+       *   array is empty. This behavior propagates through `map`, `derive`, and
+       *   `reduce`, so derived boxes also resolve to `undefined` when the source
+       *   array is empty. Set to `false` to resolve to an empty array instead.
+       * @returns a new `ArrayBox`.
+       */
+      static fromArray(as = [], options) {
+        return new ArrayState(as, options?.omitEmpty ?? true);
+      }
+      /**
+       * Creates a mutable map box.
+       *
+       * @param map the initial map contents.
+       * @returns a new `MapBox`.
+       */
+      static fromMap(map = /* @__PURE__ */ new Map()) {
+        return new MapState(map);
+      }
+      /**
+       * Creates a mutable set box.
+       *
+       * @param set the initial set contents.
+       * @returns a new `SetBox`.
+       */
+      static fromSet(set = /* @__PURE__ */ new Set()) {
+        return new SetState(set);
+      }
+      /**
+       * Globally disables stack trace collection for all box mutations.
+       *
+       * Called by the `@noBoxStackTraces` decorator before entering an L2
+       * constructor, so that default/initial values set during construction
+       * do not produce misleading stack traces.
+       */
+      static disableStackTraceCollection() {
+        stackTraceCollectionEnabled = false;
+      }
+      /**
+       * Re-enables stack trace collection for all box mutations.
+       *
+       * Called by the `@noBoxStackTraces` decorator after the L2 constructor
+       * returns, so that subsequent mutations (from user code) are tracked.
+       */
+      static enableStackTraceCollection() {
+        stackTraceCollectionEnabled = true;
+      }
+    };
+    BaseReadableBox = class {
+      creationStack = [];
+      constructor() {
+        Object.defineProperty(this, BOX_SYM, { value: true });
+      }
+      derive(fn) {
+        return new Computed(this, fn);
+      }
+      resolve(_) {
+        return this.get();
+      }
+    };
+    Combined = class extends BaseReadableBox {
+      constructor(boxes, fn) {
+        super();
+        this.boxes = boxes;
+        this.fn = fn;
+      }
+      boxes;
+      fn;
+      get() {
+        const values = Object.fromEntries(
+          Object.entries(this.boxes).map(([k, b]) => [k, b.get()])
+        );
+        return this.fn(values);
+      }
+      getMutable() {
+        return this.get();
+      }
+      getStackTraces() {
+        const all = Object.values(this.boxes).flatMap((b) => b.getOrderedStackTraces?.() ?? []);
+        all.sort((a, b) => a.seq - b.seq);
+        return all.map((t) => t.trace);
+      }
+    };
+    Computed = class extends BaseReadableBox {
+      constructor(source, fn) {
+        super();
+        this.source = source;
+        this.fn = fn;
+      }
+      source;
+      fn;
+      get() {
+        return this.fn(this.source.get());
+      }
+      getMutable() {
+        return this.get();
+      }
+      resolve(context) {
+        const sourceResolved = this.source.resolve(context);
+        if (sourceResolved === void 0) {
+          return void 0;
+        }
+        return this.fn(sourceResolved);
+      }
+      getStackTraces() {
+        return this.source.getStackTraces();
+      }
+      getOrderedStackTraces() {
+        return this.source.getOrderedStackTraces?.() ?? [];
+      }
+    };
+    ReadonlyState = class extends BaseReadableBox {
+      constructor(value) {
+        super();
+        this.value = value;
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces = [{ trace: captureStackTrace(this.constructor), seq: globalSeq++ }];
+        }
+      }
+      value;
+      orderedTraces = [];
+      get() {
+        return this.value;
+      }
+      getMutable() {
+        return this.value;
+      }
+      getStackTraces() {
+        return this.orderedTraces.map((t) => t.trace);
+      }
+      getOrderedStackTraces() {
+        return this.orderedTraces;
+      }
+    };
+    State = class _State extends ReadonlyState {
+      equals;
+      constructor(value, options) {
+        super(value);
+        this.equals = options?.equals ?? ((a, b) => a === b);
+      }
+      set(value) {
+        if (this.equals(this.value, value)) {
+          return;
+        }
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces = [{ trace: captureStackTrace(_State.prototype.set), seq: globalSeq++ }];
+        }
+        this.value = value;
+      }
+      update(fn) {
+        this.set(fn(this.value));
+      }
+    };
+    ArrayState = class _ArrayState extends State {
+      constructor(array, omitEmptyFlag) {
+        super(array);
+        this.array = array;
+        this.omitEmptyFlag = omitEmptyFlag;
+      }
+      array;
+      omitEmptyFlag;
+      resolve(_) {
+        if (this.omitEmptyFlag && this.array.length === 0) {
+          return void 0;
+        }
+        return this.get();
+      }
+      set(value) {
+        super.set(value);
+        this.array = value;
+      }
+      push(...items) {
+        this.array.push(...items);
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.push));
+      }
+      pop() {
+        const result = this.array.pop();
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.pop));
+        return result;
+      }
+      findIndex(predicate) {
+        return this.array.findIndex(predicate);
+      }
+      find(predicate) {
+        return this.array.find(predicate);
+      }
+      get length() {
+        return this.array.length;
+      }
+      splice(start, deleteCount, ...items) {
+        const result = this.array.splice(start, deleteCount, ...items);
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.splice));
+        return result;
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      some(predicate) {
+        return this.array.some(predicate);
+      }
+      includes(searchElement) {
+        return this.array.includes(searchElement);
+      }
+      map(fn) {
+        return this.derive((arr) => arr.map(fn));
+      }
+      filter(fn) {
+        return this.derive((arr) => arr.filter(fn));
+      }
+      [Symbol.iterator]() {
+        return this.array[Symbol.iterator]();
+      }
+    };
+    MapState = class _MapState extends State {
+      constructor(map) {
+        super(map);
+        this.map = map;
+      }
+      map;
+      set(value) {
+        super.set(value);
+        this.map = value;
+      }
+      get size() {
+        return this.map.size;
+      }
+      put(key, value) {
+        this.map.set(key, value);
+        this.appendTrace(() => captureStackTrace(_MapState.prototype.put));
+      }
+      delete(key) {
+        const result = this.map.delete(key);
+        this.appendTrace(() => captureStackTrace(_MapState.prototype.delete));
+        return result;
+      }
+      has(key) {
+        return this.map.has(key);
+      }
+      getEntry(key) {
+        return this.map.get(key);
+      }
+      keys() {
+        return this.map.keys();
+      }
+      values() {
+        return this.map.values();
+      }
+      entries() {
+        return this.map.entries();
+      }
+      forEach(callbackfn) {
+        this.map.forEach(callbackfn);
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      [Symbol.iterator]() {
+        return this.map[Symbol.iterator]();
+      }
+    };
+    SetState = class _SetState extends State {
+      constructor(_set) {
+        super(_set);
+        this._set = _set;
+      }
+      _set;
+      set(value) {
+        super.set(value);
+        this._set = value;
+      }
+      get size() {
+        return this._set.size;
+      }
+      add(value) {
+        this._set.add(value);
+        this.appendTrace(() => captureStackTrace(_SetState.prototype.add));
+      }
+      delete(value) {
+        const result = this._set.delete(value);
+        this.appendTrace(() => captureStackTrace(_SetState.prototype.delete));
+        return result;
+      }
+      has(value) {
+        return this._set.has(value);
+      }
+      values() {
+        return this._set.values();
+      }
+      entries() {
+        return this._set.entries();
+      }
+      forEach(callbackfn) {
+        this._set.forEach(callbackfn);
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      [Symbol.iterator]() {
+        return this._set[Symbol.iterator]();
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/string-fragments.ts
+function fragmentValue(fragment) {
+  switch (fragment.type) {
+    case "literal":
+      return fragment.lit;
+    case "token":
+      return fragment.token.toString();
+    case "intrinsic":
+      return fragment.value;
+  }
+}
+var TokenizedStringFragments;
+var init_string_fragments = __esm({
+  "../../aws-cdk-lib/core/lib/string-fragments.ts"() {
+    "use strict";
+    init_token();
+    TokenizedStringFragments = class _TokenizedStringFragments {
+      fragments = new Array();
+      get firstToken() {
+        const first = this.fragments[0];
+        if (first.type === "token") {
+          return first.token;
+        }
+        return void 0;
+      }
+      get firstValue() {
+        return fragmentValue(this.fragments[0]);
+      }
+      get length() {
+        return this.fragments.length;
+      }
+      addLiteral(lit2) {
+        this.fragments.push({ type: "literal", lit: lit2 });
+      }
+      addToken(token) {
+        this.fragments.push({ type: "token", token });
+      }
+      addIntrinsic(value) {
+        this.fragments.push({ type: "intrinsic", value });
+      }
+      /**
+       * Return all Tokens from this string
+       */
+      get tokens() {
+        const ret = new Array();
+        for (const f of this.fragments) {
+          if (f.type === "token") {
+            ret.push(f.token);
+          }
+        }
+        return ret;
+      }
+      /**
+       * Apply a transformation function to all tokens in the string
+       */
+      mapTokens(mapper) {
+        const ret = new _TokenizedStringFragments();
+        for (const f of this.fragments) {
+          switch (f.type) {
+            case "literal":
+              ret.addLiteral(f.lit);
+              break;
+            case "token":
+              const mapped = mapper.mapToken(f.token);
+              if (isResolvableObject(mapped)) {
+                ret.addToken(mapped);
+              } else if (Token.isUnresolved(mapped)) {
+                ret.addIntrinsic(mapped);
+              } else {
+                ret.addLiteral(mapped);
+              }
+              break;
+            case "intrinsic":
+              ret.addIntrinsic(f.value);
+              break;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Combine the string fragments using the given joiner.
+       *
+       * If there are any
+       */
+      join(concat) {
+        if (this.fragments.length === 0) {
+          return concat.join(void 0, void 0);
+        }
+        if (this.fragments.length === 1) {
+          return this.firstValue;
+        }
+        const values = this.fragments.map(fragmentValue);
+        while (values.length > 1) {
+          const prefix = values.splice(0, 2);
+          values.splice(0, 0, concat.join(prefix[0], prefix[1]));
+        }
+        return values[0];
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/encoding.ts
+function regexQuote(s) {
+  return s.replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&");
+}
+function unresolved(obj) {
+  if (typeof obj === "string") {
+    return obj.includes(ANY_TOKEN_MARKER) && TokenString.forString(obj).test();
+  } else if (typeof obj === "number") {
+    return extractTokenDouble(obj) !== void 0;
+  } else if (Array.isArray(obj) && obj.length === 1) {
+    return typeof obj[0] === "string" && TokenString.forListToken(obj[0]).test();
+  } else {
+    return isResolvableObject(obj);
+  }
+}
+function createTokenDouble(x) {
+  if (Math.floor(x) !== x || x < 0) {
+    throw new UnscopedValidationError(lit`OnlyEncodePositiveIntegers`, "Can only encode positive integers");
+  }
+  if (x > MAX_ENCODABLE_INTEGER) {
+    throw new UnscopedValidationError(lit`IndexLargeEncode`, `Got an index too large to encode: ${x}`);
+  }
+  const buf = new ArrayBuffer(8);
+  const ints = new Uint32Array(buf);
+  ints[0] = x & 4294967295;
+  ints[1] = shr32(x) & 65535 | DOUBLE_TOKEN_MARKER_BITS;
+  return new Float64Array(buf)[0];
+}
+function shr32(x) {
+  return Math.floor(x / BITS32);
+}
+function shl32(x) {
+  return x * BITS32;
+}
+function extractTokenDouble(encoded) {
+  const buf = new ArrayBuffer(8);
+  new Float64Array(buf)[0] = encoded;
+  const ints = new Uint32Array(buf);
+  if ((ints[1] & 4294901760) !== DOUBLE_TOKEN_MARKER_BITS) {
+    return void 0;
+  }
+  return ints[0] + shl32(ints[1] & 65535);
+}
+var ANY_TOKEN_MARKER, BEGIN_STRING_TOKEN_MARKER, BEGIN_LIST_TOKEN_MARKER, END_TOKEN_MARKER, VALID_KEY_CHARS, QUOTED_BEGIN_STRING_TOKEN_MARKER, QUOTED_BEGIN_LIST_TOKEN_MARKER, QUOTED_END_TOKEN_MARKER, STRINGIFIED_NUMBER_PATTERN, STRING_TOKEN_REGEX, LIST_TOKEN_REGEX, TokenString, DOUBLE_TOKEN_MARKER_BITS, MAX_ENCODABLE_INTEGER, BITS32, STRINGIFIED_NUMBER_REGEX;
+var init_encoding = __esm({
+  "../../aws-cdk-lib/core/lib/private/encoding.ts"() {
+    "use strict";
+    init_errors();
+    init_string_fragments();
+    init_token();
+    init_literal_string();
+    ANY_TOKEN_MARKER = "Token[";
+    BEGIN_STRING_TOKEN_MARKER = "${Token[";
+    BEGIN_LIST_TOKEN_MARKER = "#{Token[";
+    END_TOKEN_MARKER = "]}";
+    VALID_KEY_CHARS = "a-zA-Z0-9:._-";
+    QUOTED_BEGIN_STRING_TOKEN_MARKER = regexQuote(BEGIN_STRING_TOKEN_MARKER);
+    QUOTED_BEGIN_LIST_TOKEN_MARKER = regexQuote(BEGIN_LIST_TOKEN_MARKER);
+    QUOTED_END_TOKEN_MARKER = regexQuote(END_TOKEN_MARKER);
+    STRINGIFIED_NUMBER_PATTERN = "-1\\.\\d{10,16}e\\+289";
+    STRING_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_STRING_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}|(${STRINGIFIED_NUMBER_PATTERN})`, "g");
+    LIST_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_LIST_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}`, "g");
+    TokenString = class _TokenString {
+      constructor(str, re) {
+        this.str = str;
+        this.re = re;
+      }
+      str;
+      re;
+      /**
+       * Returns a `TokenString` for this string.
+       */
+      static forString(s) {
+        return new _TokenString(s, STRING_TOKEN_REGEX);
+      }
+      /**
+       * Returns a `TokenString` for this string (must be the first string element of the list)
+       */
+      static forListToken(s) {
+        return new _TokenString(s, LIST_TOKEN_REGEX);
+      }
+      /**
+       * Split string on markers, substituting markers with Tokens
+       */
+      split(lookup) {
+        const ret = new TokenizedStringFragments();
+        let rest = 0;
+        this.re.lastIndex = 0;
+        let m = this.re.exec(this.str);
+        while (m) {
+          if (m.index > rest) {
+            ret.addLiteral(this.str.substring(rest, m.index));
+          }
+          ret.addToken(lookup(m[1] ?? m[2]));
+          rest = this.re.lastIndex;
+          m = this.re.exec(this.str);
+        }
+        if (rest < (this.str ?? "").length) {
+          ret.addLiteral(this.str.substring(rest));
+        }
+        return ret;
+      }
+      /**
+       * Indicates if this string includes tokens.
+       */
+      test() {
+        this.re.lastIndex = 0;
+        return this.re.test(this.str);
+      }
+    };
+    DOUBLE_TOKEN_MARKER_BITS = 64511 << 16;
+    MAX_ENCODABLE_INTEGER = Math.pow(2, 48) - 1;
+    BITS32 = Math.pow(2, 32);
+    STRINGIFIED_NUMBER_REGEX = new RegExp(STRINGIFIED_NUMBER_PATTERN);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/type-hints.ts
+var init_type_hints = __esm({
+  "../../aws-cdk-lib/core/lib/type-hints.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/intrinsic.ts
+function isFunction(x) {
+  return typeof x === "function";
+}
+var Intrinsic;
+var init_intrinsic = __esm({
+  "../../aws-cdk-lib/core/lib/private/intrinsic.ts"() {
+    "use strict";
+    init_errors();
+    init_token();
+    init_type_hints();
+    init_literal_string();
+    Intrinsic = class {
+      /**
+       * The captured stack trace which represents the location in which this token was created.
+       */
+      creationStack;
+      /**
+       * Type that the Intrinsic is expected to evaluate to.
+       */
+      typeHint;
+      value;
+      constructor(value, options = {}) {
+        if (isFunction(value)) {
+          throw new UnscopedValidationError(lit`MustBeArgumentIntrinsicPlain`, `Argument to Intrinsic must be a plain value object, got ${value}`);
+        }
+        this.value = value;
+        this.typeHint = options.typeHint ?? "string" /* STRING */;
+      }
+      resolve(_context) {
+        return this.value;
+      }
+      /**
+       * Convert an instance of this Token to a string
+       *
+       * This method will be called implicitly by language runtimes if the object
+       * is embedded into a string. We treat it the same as an explicit
+       * stringification.
+       */
+      toString() {
+        return Token.asString(this);
+      }
+      /**
+       * Convert an instance of this Token to a string list
+       *
+       * This method will be called implicitly by language runtimes if the object
+       * is embedded into a list. We treat it the same as an explicit
+       * stringification.
+       */
+      toStringList() {
+        return Token.asList(this);
+      }
+      /**
+       * Turn this Token into JSON
+       *
+       * Called automatically when JSON.stringify() is called on a Token.
+       */
+      toJSON() {
+        return "";
+      }
+      /**
+       * Creates a throwable Error object that contains the token creation stack trace.
+       * @param message Error message
+       */
+      newError(message) {
+        return new Error(`${message}
+Token created:
+    at ${this.creationStack.join("\n    at ")}
+Error thrown:`);
+      }
+    };
+    Intrinsic.prototype.creationStack = ["Token stack traces are no longer captured"];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/token-map.ts
+function cachedValue(x, sym, prod) {
+  let cached = x[sym];
+  if (cached === void 0) {
+    cached = prod();
+    Object.defineProperty(x, sym, { value: cached });
+  }
+  return cached;
+}
+var glob, STRING_SYMBOL, LIST_SYMBOL, NUMBER_SYMBOL, TokenMap;
+var init_token_map = __esm({
+  "../../aws-cdk-lib/core/lib/private/token-map.ts"() {
+    "use strict";
+    init_encoding();
+    init_errors();
+    init_token();
+    init_literal_string();
+    glob = global;
+    STRING_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.STRING");
+    LIST_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.LIST");
+    NUMBER_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.NUMBER");
+    TokenMap = class _TokenMap {
+      /**
+       * Singleton instance of the token string map
+       */
+      static instance() {
+        if (!glob.__cdkTokenMap) {
+          glob.__cdkTokenMap = new _TokenMap();
+        }
+        return glob.__cdkTokenMap;
+      }
+      stringTokenMap = /* @__PURE__ */ new Map();
+      numberTokenMap = /* @__PURE__ */ new Map();
+      /**
+       * Counter to assign unique IDs to tokens
+       *
+       * Start at a random number to prevent people from accidentally taking
+       * dependencies on token values between runs.
+       *
+       * This is most prominent in tests, where people will write:
+       *
+       * ```ts
+       * sha256(JSON.stringify({ ...some structure that can contain tokens ... }))
+       * ```
+       *
+       * This should have been:
+       *
+       * ```ts
+       * sha256(JSON.stringify(stack.resolve({ ...some structure that can contain tokens ... })))
+       * ```
+       *
+       * The hash value is hard to inspect for correctness. It will LOOK consistent
+       * during testing, but will break as soon as someone stringifies another
+       * token before the run.
+       *
+       * By changing the starting number for tokens, we ensure that the hash is almost
+       * guaranteed to be different during a few test runs, so the hashing of unresolved
+       * tokens can be detected.
+       */
+      tokenCounter = Math.floor(Math.random() * 10);
+      /**
+       * Generate a unique string for this Token, returning a key
+       *
+       * Every call for the same Token will produce a new unique string, no
+       * attempt is made to deduplicate. Token objects should cache the
+       * value themselves, if required.
+       *
+       * The token can choose (part of) its own representation string with a
+       * hint. This may be used to produce aesthetically pleasing and
+       * recognizable token representations for humans.
+       */
+      registerString(token, displayHint) {
+        return cachedValue(token, STRING_SYMBOL, () => {
+          const key = this.registerStringKey(token, displayHint);
+          return `${BEGIN_STRING_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`;
+        });
+      }
+      /**
+       * Generate a unique string for this Token, returning a key
+       */
+      registerList(token, displayHint) {
+        return cachedValue(token, LIST_SYMBOL, () => {
+          const key = this.registerStringKey(token, displayHint);
+          return [`${BEGIN_LIST_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`];
+        });
+      }
+      /**
+       * Create a unique number representation for this Token and return it
+       */
+      registerNumber(token) {
+        return cachedValue(token, NUMBER_SYMBOL, () => {
+          return this.registerNumberKey(token);
+        });
+      }
+      /**
+       * Lookup a token from an encoded value
+       */
+      tokenFromEncoding(x) {
+        if (isResolvableObject(x)) {
+          return x;
+        }
+        if (typeof x === "string") {
+          return this.lookupString(x);
+        }
+        if (Array.isArray(x)) {
+          return this.lookupList(x);
+        }
+        if (Token.isUnresolved(x)) {
+          return x;
+        }
+        return void 0;
+      }
+      /**
+       * Reverse a string representation into a Token object
+       */
+      lookupString(s) {
+        const fragments = this.splitString(s);
+        if (fragments.tokens.length > 0 && fragments.length === 1) {
+          return fragments.firstToken;
+        }
+        return void 0;
+      }
+      /**
+       * Reverse a string representation into a Token object
+       */
+      lookupList(xs) {
+        if (xs.length !== 1) {
+          return void 0;
+        }
+        const str = TokenString.forListToken(xs[0]);
+        const fragments = str.split(this.lookupToken.bind(this));
+        if (fragments.length === 1) {
+          return fragments.firstToken;
+        }
+        return void 0;
+      }
+      /**
+       * Split a string into literals and Tokens
+       */
+      splitString(s) {
+        const str = TokenString.forString(s);
+        return str.split(this.lookupToken.bind(this));
+      }
+      /**
+       * Reverse a number encoding into a Token, or undefined if the number wasn't a Token
+       */
+      lookupNumberToken(x) {
+        const tokenIndex = extractTokenDouble(x);
+        if (tokenIndex === void 0) {
+          return void 0;
+        }
+        const t = this.numberTokenMap.get(tokenIndex);
+        if (t === void 0) {
+          throw new UnscopedValidationError(lit`EncodedRepresentationUnknownNumber`, "Encoded representation of unknown number Token found");
+        }
+        return t;
+      }
+      /**
+       * Find a Token by key.
+       *
+       * This excludes the token markers.
+       */
+      lookupToken(key) {
+        const token = this.stringTokenMap.get(key);
+        if (!token) {
+          throw new UnscopedValidationError(lit`UnrecognizedTokenKey`, `Unrecognized token key: ${key}`);
+        }
+        return token;
+      }
+      registerStringKey(token, displayHint) {
+        const counter = this.tokenCounter++;
+        const representation = (displayHint || "TOKEN").replace(new RegExp(`[^${VALID_KEY_CHARS}]`, "g"), ".");
+        const key = `${representation}.${counter}`;
+        this.stringTokenMap.set(key, token);
+        return key;
+      }
+      registerNumberKey(token) {
+        const counter = this.tokenCounter++;
+        const dbl = createTokenDouble(counter);
+        this.numberTokenMap.set(counter, token);
+        this.stringTokenMap.set(`${dbl}`, token);
+        return dbl;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/resolvable.ts
+var StringConcat, DefaultTokenResolver;
+var init_resolvable = __esm({
+  "../../aws-cdk-lib/core/lib/resolvable.ts"() {
+    "use strict";
+    init_errors();
+    init_encoding();
+    init_literal_string();
+    init_token_map();
+    StringConcat = class {
+      join(left, right) {
+        if (left === void 0) {
+          return right !== void 0 ? `${right}` : void 0;
+        }
+        if (right === void 0) {
+          return `${left}`;
+        }
+        return `${left}${right}`;
+      }
+    };
+    DefaultTokenResolver = class {
+      constructor(concat) {
+        this.concat = concat;
+      }
+      concat;
+      /**
+       * Default Token resolution
+       *
+       * Resolve the Token, recurse into whatever it returns,
+       * then finally post-process it.
+       */
+      resolveToken(t, context, postProcessor) {
+        try {
+          let resolved = t.resolve(context);
+          resolved = context.resolve(resolved);
+          resolved = postProcessor.postProcess(resolved, context);
+          return resolved;
+        } catch (e) {
+          let message = `Resolution error: ${e.message}.`;
+          e.message = message;
+          throw e;
+        }
+      }
+      /**
+       * Resolve string fragments to Tokens
+       */
+      resolveString(fragments, context) {
+        return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).join(this.concat);
+      }
+      resolveList(xs, context) {
+        if (xs.length !== 1) {
+          throw new UnscopedValidationError(lit`CannotAddElementsListToken`, `Cannot add elements to list token, got: ${xs}`);
+        }
+        const str = TokenString.forListToken(xs[0]);
+        const tokenMap2 = TokenMap.instance();
+        const fragments = str.split(tokenMap2.lookupToken.bind(tokenMap2));
+        if (fragments.length !== 1) {
+          throw new UnscopedValidationError(lit`CannotConcatenateStringsTokenizedString`, `Cannot concatenate strings in a tokenized string array, got: ${xs[0]}`);
+        }
+        return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).firstValue;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/resolve.ts
+function couldContainToken(s) {
+  return s.includes(ANY_TOKEN_MARKER) || s.length >= MIN_NUMBER_TOKEN_LENGTH && s.includes("e+289");
+}
+function hasListTokenMarker(s) {
+  return s.includes(BEGIN_LIST_TOKEN_MARKER);
+}
+function resolve(obj, options) {
+  const prefix = options.prefix || [];
+  const leaveEmpty = options.removeEmpty === false;
+  return _resolve(obj, options, prefix, leaveEmpty);
+}
+function _resolve(obj, options, prefix, leaveEmpty) {
+  const t = typeof obj;
+  if (t === "string") {
+    const hasTokenBracket = obj.includes("Token[");
+    if (!hasTokenBracket && !(obj.length >= MIN_NUMBER_TOKEN_LENGTH && obj.includes("e+289"))) {
+      return obj;
+    }
+    if (hasTokenBracket && obj.includes(BEGIN_LIST_TOKEN_MARKER)) {
+      if (TokenString.forListToken(obj).test()) {
+        throw new UnscopedValidationError(lit`EncodedListTokenInScalarContext`, "Found an encoded list token string in a scalar string context. Use 'Fn.select(0, list)' (not 'list[0]') to extract elements from token lists.");
+      }
+    }
+    const str = TokenString.forString(obj);
+    if (str.test()) {
+      const fragments = str.split(lookupToken);
+      return tagResolvedValue(options.resolver.resolveString(fragments, makeContext(options, prefix)), "string" /* STRING */);
+    }
+    return obj;
+  }
+  if (obj === void 0) {
+    return void 0;
+  }
+  if (obj === null) {
+    return null;
+  }
+  if (t === "number") {
+    if (obj > -1e287 && obj < 1e287) {
+      return obj;
+    }
+    return tagResolvedValue(resolveNumberToken(obj, makeContext(options, prefix)), "number" /* NUMBER */);
+  }
+  if (t === "boolean") {
+    return obj;
+  }
+  if (t === "function") {
+    throw new UnscopedValidationError(lit`TryingToResolveNonDataObject`, `Trying to resolve a non-data object. Only token are supported for lazy evaluation. Path: /${prefix.join("/")}. Object: ${obj}`);
+  }
+  if (obj instanceof Date) {
+    return obj;
+  }
+  if (prefix.length > 200) {
+    throw new UnscopedValidationError(lit`CircularReferenceDetected`, "Unable to resolve object tree with circular reference. Path: /" + prefix.join("/"));
+  }
+  if (Array.isArray(obj)) {
+    return resolveArray(obj, options, prefix, leaveEmpty);
+  }
+  if (t === "object" && obj.resolve !== void 0 && typeof obj.resolve === "function") {
+    const context = makeContext(options, prefix);
+    const postProcessor = makePostProcessor(context);
+    return tagResolvedValue(options.resolver.resolveToken(obj, context, postProcessor), "string" /* STRING */);
+  }
+  if (obj._children !== void 0 && obj._metadata !== void 0) {
+    throw new UnscopedValidationError(lit`TryingToResolveConstruct`, "Trying to resolve() a Construct at /" + prefix.join("/"));
+  }
+  return resolveObject(obj, options, prefix, leaveEmpty);
+}
+function resolveArray(obj, options, prefix, leaveEmpty) {
+  for (let i = 0; i < obj.length; i++) {
+    const x = obj[i];
+    if (typeof x === "string" && hasListTokenMarker(x) && TokenString.forListToken(x).test()) {
+      return tagResolvedValue(options.resolver.resolveList(obj, makeContext(options, prefix)), "string-list" /* STRING_LIST */);
+    }
+  }
+  const len = obj.length;
+  const arr = [];
+  for (let i = 0; i < len; i++) {
+    prefix.push(String(i));
+    const value = _resolve(obj[i], options, prefix, leaveEmpty);
+    prefix.pop();
+    if (value === void 0 && !leaveEmpty) {
+      continue;
+    }
+    arr.push(value);
+  }
+  return arr;
+}
+function resolveObject(obj, options, prefix, leaveEmpty) {
+  const keys = Object.keys(obj);
+  const result = {};
+  let intrinsicKeyCtr = 0;
+  for (let ki = 0; ki < keys.length; ki++) {
+    const key = keys[ki];
+    const raw = obj[key];
+    let value;
+    const rawType = typeof raw;
+    if (rawType === "string") {
+      value = couldContainToken(raw) ? _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) : raw;
+    } else if (raw === void 0) {
+      value = void 0;
+    } else if (raw === null) {
+      value = null;
+    } else if (rawType === "number") {
+      value = raw > -1e287 && raw < 1e287 ? raw : _resolveWithPrefix(raw, options, prefix, leaveEmpty, key);
+    } else if (rawType === "boolean") {
+      value = raw;
+    } else {
+      value = _resolveWithPrefix(raw, options, prefix, leaveEmpty, key);
+    }
+    if (value === void 0) {
+      if (leaveEmpty) {
+        result[key] = void 0;
+      }
+      continue;
+    }
+    if (key.length < 5 || !couldContainToken(key)) {
+      result[key] = value;
+      continue;
+    }
+    if (!unresolved(key)) {
+      result[key] = value;
+      continue;
+    }
+    const resolvedKey = makeContext(options, prefix).resolve(key);
+    if (typeof resolvedKey === "string") {
+      result[resolvedKey] = value;
+    } else {
+      if (!options.allowIntrinsicKeys) {
+        throw new UnscopedValidationError(lit`KeyMustResolveToString`, `"${String(key)}" is used as the key in a map so must resolve to a string, but it resolves to: ${JSON.stringify(resolvedKey)}. Consider using "CfnJson" to delay resolution to deployment-time`);
+      }
+      result[`${INTRINSIC_KEY_PREFIX}${intrinsicKeyCtr++}`] = [resolvedKey, value];
+    }
+  }
+  const previousTypeHint = resolvedTypeHint(obj);
+  return previousTypeHint ? tagResolvedValue(result, previousTypeHint) : result;
+}
+function _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) {
+  prefix.push(key);
+  const value = _resolve(raw, options, prefix, leaveEmpty);
+  prefix.pop();
+  return value;
+}
+function makeContext(options, prefix) {
+  const documentPath = prefix.slice();
+  const context = {
+    preparing: options.preparing,
+    scope: options.scope,
+    documentPath,
+    registerPostProcessor(pp) {
+      context._postProcessor = pp;
+    },
+    resolve(x, changeOptions) {
+      const newOptions = changeOptions ? { ...options, ...changeOptions, prefix: documentPath } : { ...options, prefix: documentPath };
+      return resolve(x, newOptions);
+    }
+  };
+  return context;
+}
+function makePostProcessor(context) {
+  return {
+    postProcess(x) {
+      const pp = context._postProcessor;
+      return pp ? pp.postProcess(x, context) : x;
+    }
+  };
+}
+function findTokens(scope, fn) {
+  const resolver = new RememberingTokenResolver(new StringConcat());
+  resolve(fn(), { scope, prefix: [], resolver, preparing: true });
+  return resolver.tokens;
+}
+function writePropertyAssignmentMetadataForConstruct(scope, fn, lookupTable) {
+  const resolver = new PropertyAssignmentMetadataWriter(new StringConcat(), lookupTable);
+  resolve(fn(), { scope, prefix: [], resolver, preparing: true });
+}
+function resolveNumberToken(x, context) {
+  const token = tokenMap.lookupNumberToken(x);
+  if (token === void 0) {
+    return x;
+  }
+  return context.resolve(token);
+}
+function tagResolvedValue(value, typeHint) {
+  if (typeof value !== "object" || value == null) {
+    return value;
+  }
+  Object.defineProperty(value, RESOLUTION_TYPEHINT_SYM, {
+    value: typeHint,
+    configurable: true
+  });
+  return value;
+}
+function resolvedTypeHint(value) {
+  if (typeof value !== "object" || value == null) {
+    return void 0;
+  }
+  return value[RESOLUTION_TYPEHINT_SYM];
+}
+var tokenMap, lookupToken, MIN_NUMBER_TOKEN_LENGTH, RESOLUTION_TYPEHINT_SYM, INTRINSIC_KEY_PREFIX, PropertyAssignmentMetadataWriter, RememberingTokenResolver;
+var init_resolve = __esm({
+  "../../aws-cdk-lib/core/lib/private/resolve.ts"() {
+    "use strict";
+    init_encoding();
+    init_token_map();
+    init_errors();
+    init_resolvable();
+    init_type_hints();
+    init_literal_string();
+    init_box();
+    tokenMap = TokenMap.instance();
+    lookupToken = tokenMap.lookupToken.bind(tokenMap);
+    MIN_NUMBER_TOKEN_LENGTH = 16;
+    RESOLUTION_TYPEHINT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.resolvedTypeHint");
+    INTRINSIC_KEY_PREFIX = "$IntrinsicKey$";
+    PropertyAssignmentMetadataWriter = class extends DefaultTokenResolver {
+      lookupTable;
+      seenDocumentPaths = /* @__PURE__ */ new Set();
+      constructor(concat, lookupTable) {
+        super(concat);
+        this.lookupTable = lookupTable;
+      }
+      resolveToken(t, context, postProcessor) {
+        const result = super.resolveToken(t, context, postProcessor);
+        const lookupTable = this.lookupTable;
+        function propertyNameFromContext(ctx) {
+          const documentPath = ctx.documentPath;
+          if (documentPath.length < 4 || documentPath[0] !== "Resources" || documentPath[2] !== "Properties") {
+            return void 0;
+          }
+          return lookupTable.cfnPropertyName(documentPath[3]);
+        }
+        const propertyName = propertyNameFromContext(context);
+        const documentPathKey = context.documentPath.join("/");
+        if (Box.isBox(t) && propertyName && !this.seenDocumentPaths.has(documentPathKey)) {
+          for (let stackTrace of t.getStackTraces()) {
+            context.scope.node.addMetadata("aws:cdk:propertyAssignment", {
+              propertyName,
+              stackTrace
+            });
+            this.seenDocumentPaths.add(documentPathKey);
+          }
+        }
+        return result;
+      }
+    };
+    RememberingTokenResolver = class extends DefaultTokenResolver {
+      tokensSeen = /* @__PURE__ */ new Set();
+      resolveToken(t, context, postProcessor) {
+        this.tokensSeen.add(t);
+        return super.resolveToken(t, context, postProcessor);
+      }
+      resolveString(s, context) {
+        const ret = super.resolveString(s, context);
+        return ret;
+      }
+      get tokens() {
+        return Array.from(this.tokensSeen);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/token.ts
+function isResolvableObject(x) {
+  return typeof x === "object" && x !== null && typeof x.resolve === "function";
+}
+var TokenComparison, Token, Tokenization, JsonNull;
+var init_token = __esm({
+  "../../aws-cdk-lib/core/lib/token.ts"() {
+    "use strict";
+    init_errors();
+    init_lazy();
+    init_encoding();
+    init_intrinsic();
+    init_literal_string();
+    init_resolve();
+    init_token_map();
+    TokenComparison = class _TokenComparison {
+      /**
+       * This means we're certain the two components are NOT
+       * Tokens, and identical.
+       */
+      static SAME = new _TokenComparison();
+      /**
+       * This means we're certain the two components are NOT
+       * Tokens, and different.
+       */
+      static DIFFERENT = new _TokenComparison();
+      /** This means exactly one of the components is a Token. */
+      static ONE_UNRESOLVED = new _TokenComparison();
+      /** This means both components are Tokens. */
+      static BOTH_UNRESOLVED = new _TokenComparison();
+      constructor() {
+      }
+    };
+    Token = class _Token {
+      /**
+       * Returns true if obj represents an unresolved value
+       *
+       * One of these must be true:
+       *
+       * - `obj` is an IResolvable
+       * - `obj` is a string containing at least one encoded `IResolvable`
+       * - `obj` is either an encoded number or list
+       *
+       * This does NOT recurse into lists or objects to see if they
+       * contain resolvables.
+       *
+       * @param obj The object to test.
+       */
+      static isUnresolved(obj) {
+        return unresolved(obj);
+      }
+      /**
+       * The negation of `Token.isUnresolved()`. In TypeScript, narrows the type
+       * to exclude `IResolvable`.
+       * @param obj The object to test.
+       */
+      static isResolved(obj) {
+        return !_Token.isUnresolved(obj);
+      }
+      /**
+       * Return a reversible string representation of this token
+       *
+       * If the Token is initialized with a literal, the stringified value of the
+       * literal is returned. Otherwise, a special quoted string representation
+       * of the Token is returned that can be embedded into other strings.
+       *
+       * Strings with quoted Tokens in them can be restored back into
+       * complex values with the Tokens restored by calling `resolve()`
+       * on the string.
+       */
+      static asString(value, options = {}) {
+        if (typeof value === "string") {
+          return value;
+        }
+        return TokenMap.instance().registerString(_Token.asAny(value), options.displayHint);
+      }
+      /**
+       * Return a reversible number representation of this token
+       */
+      static asNumber(value) {
+        if (typeof value === "number") {
+          return value;
+        }
+        return TokenMap.instance().registerNumber(_Token.asAny(value));
+      }
+      /**
+       * Return a reversible list representation of this token
+       */
+      static asList(value, options = {}) {
+        if (Array.isArray(value) && value.every((x) => typeof x === "string")) {
+          return value;
+        }
+        return TokenMap.instance().registerList(_Token.asAny(value), options.displayHint);
+      }
+      /**
+       * Return a resolvable representation of the given value
+       */
+      static asAny(value) {
+        value = Tokenization.reverse(value) ?? value;
+        return isResolvableObject(value) ? value : new Intrinsic(value);
+      }
+      /** Compare two strings that might contain Tokens with each other. */
+      static compareStrings(possibleToken1, possibleToken2) {
+        const firstIsUnresolved = _Token.isUnresolved(possibleToken1);
+        const secondIsUnresolved = _Token.isUnresolved(possibleToken2);
+        if (firstIsUnresolved && secondIsUnresolved) {
+          return TokenComparison.BOTH_UNRESOLVED;
+        }
+        if (firstIsUnresolved || secondIsUnresolved) {
+          return TokenComparison.ONE_UNRESOLVED;
+        }
+        return possibleToken1 === possibleToken2 ? TokenComparison.SAME : TokenComparison.DIFFERENT;
+      }
+      constructor() {
+      }
+    };
+    Tokenization = class _Tokenization {
+      /**
+       * Un-encode a string potentially containing encoded tokens
+       */
+      static reverseString(s) {
+        return TokenMap.instance().splitString(s);
+      }
+      /**
+       * Un-encode a string which is either a complete encoded token, or doesn't contain tokens at all
+       *
+       * It's illegal for the string to be a concatenation of an encoded token and something else.
+       */
+      static reverseCompleteString(s) {
+        const fragments = _Tokenization.reverseString(s);
+        if (fragments.length !== 1) {
+          throw new UnscopedValidationError(lit`TokenzationReverseCompleteStringArgument`, `Tokenzation.reverseCompleteString: argument must not be a concatenation, got '${s}'`);
+        }
+        return fragments.firstToken;
+      }
+      /**
+       * Un-encode a Tokenized value from a number
+       */
+      static reverseNumber(n) {
+        return TokenMap.instance().lookupNumberToken(n);
+      }
+      /**
+       * Un-encode a Tokenized value from a list
+       */
+      static reverseList(l) {
+        return TokenMap.instance().lookupList(l);
+      }
+      /**
+       * Reverse any value into a Resolvable, if possible
+       *
+       * In case of a string, the string must not be a concatenation.
+       */
+      static reverse(x, options = {}) {
+        if (_Tokenization.isResolvable(x)) {
+          return x;
+        }
+        if (typeof x === "string") {
+          if (options.failConcat === false) {
+            const fragments = _Tokenization.reverseString(x);
+            return fragments.length === 1 ? fragments.firstToken : void 0;
+          }
+          return _Tokenization.reverseCompleteString(x);
+        }
+        if (Array.isArray(x)) {
+          return _Tokenization.reverseList(x);
+        }
+        if (typeof x === "number") {
+          return _Tokenization.reverseNumber(x);
+        }
+        return void 0;
+      }
+      /**
+       * Resolves an object by evaluating all tokens and removing any undefined or empty objects or arrays.
+       * Values can only be primitives, arrays or tokens. Other objects (i.e. with methods) will be rejected.
+       *
+       * @param obj The object to resolve.
+       * @param options Prefix key path components for diagnostics.
+       */
+      static resolve(obj, options) {
+        return resolve(obj, {
+          scope: options.scope,
+          resolver: options.resolver,
+          preparing: options.preparing ?? false,
+          removeEmpty: options.removeEmpty
+        });
+      }
+      /**
+       * Return whether the given object is an IResolvable object
+       *
+       * This is different from Token.isUnresolved() which will also check for
+       * encoded Tokens, whereas this method will only do a type check on the given
+       * object.
+       */
+      static isResolvable(obj) {
+        return isResolvableObject(obj);
+      }
+      /**
+       * Stringify a number directly or lazily if it's a Token. If it is an object (i.e., { Ref: 'SomeLogicalId' }), return it as-is.
+       */
+      static stringifyNumber(x) {
+        if (Token.isUnresolved(x)) {
+          return Lazy.uncachedString({
+            produce: (context) => {
+              const resolved = context.resolve(x);
+              return typeof resolved !== "number" ? resolved : `${resolved}`;
+            }
+          });
+        } else {
+          return typeof x !== "number" ? x : `${x}`;
+        }
+      }
+      constructor() {
+      }
+    };
+    JsonNull = class _JsonNull {
+      /** The canonical instance of `JsonNull`. */
+      static INSTANCE = new _JsonNull();
+      creationStack = ["Token stack traces are no longer captured"];
+      constructor() {
+      }
+      resolve(_ctx) {
+        return null;
+      }
+      /** Obtains the JSON representation of this object (`null`) */
+      toJSON() {
+        return null;
+      }
+      /** Obtains the string representation of this object (`'null'`) */
+      toString() {
+        return "null";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/lazy.ts
+var Lazy, LazyBase, LazyBox, LazyString, LazyNumber, LazyList, LazyAny;
+var init_lazy = __esm({
+  "../../aws-cdk-lib/core/lib/lazy.ts"() {
+    "use strict";
+    init_box();
+    init_token();
+    Lazy = class {
+      /**
+       * Defer the calculation of a string value to synthesis time
+       *
+       * Use this if you want to render a string to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string` type and don't need
+       * the calculation to be deferred, use `Token.asString()` instead.
+       *
+       * @deprecated Use `Lazy.string()` or `Lazy.uncachedString()` instead.
+       */
+      static stringValue(producer, options = {}) {
+        return Token.asString(new LazyString(producer, false), options);
+      }
+      /**
+       * Defer the one-time calculation of a string value to synthesis time
+       *
+       * Use this if you want to render a string to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string` type and don't need
+       * the calculation to be deferred, use `Token.asString()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static string(producer, options = {}) {
+        return Token.asString(new LazyBox(new LazyString(producer, true)), options);
+      }
+      /**
+       * Defer the calculation of a string value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.string()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedString(producer, options = {}) {
+        return Token.asString(new LazyString(producer, false), options);
+      }
+      /**
+       * Defer the one-time calculation of a number value to synthesis time
+       *
+       * Use this if you want to render a number to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `number` type and don't need
+       * the calculation to be deferred, use `Token.asNumber()` instead.
+       *
+       * @deprecated Use `Lazy.number()` or `Lazy.uncachedNumber()` instead.
+       */
+      static numberValue(producer) {
+        return Token.asNumber(new LazyNumber(producer, false));
+      }
+      /**
+       * Defer the one-time calculation of a number value to synthesis time
+       *
+       * Use this if you want to render a number to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `number` type and don't need
+       * the calculation to be deferred, use `Token.asNumber()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static number(producer) {
+        return Token.asNumber(new LazyBox(new LazyNumber(producer, true)));
+      }
+      /**
+       * Defer the calculation of a number value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.number()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedNumber(producer) {
+        return Token.asNumber(new LazyNumber(producer, false));
+      }
+      /**
+       * Defer the one-time calculation of a list value to synthesis time
+       *
+       * Use this if you want to render a list to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string[]` type and don't need
+       * the calculation to be deferred, use `Token.asList()` instead.
+       *
+       * @deprecated Use `Lazy.list()` or `Lazy.uncachedList()` instead.
+       */
+      static listValue(producer, options = {}) {
+        return Token.asList(new LazyList(producer, false, options), options);
+      }
+      /**
+       * Defer the calculation of a list value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.list()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedList(producer, options = {}) {
+        return Token.asList(new LazyList(producer, false, options), options);
+      }
+      /**
+       * Defer the one-time calculation of a list value to synthesis time
+       *
+       * Use this if you want to render a list to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string[]` type and don't need
+       * the calculation to be deferred, use `Token.asList()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static list(producer, options = {}) {
+        return Token.asList(new LazyBox(new LazyList(producer, true, options)), options);
+      }
+      /**
+       * Defer the one-time calculation of an arbitrarily typed value to synthesis time
+       *
+       * Use this if you want to render an object to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * @deprecated Use `Lazy.any()` or `Lazy.uncachedAny()` instead.
+       */
+      static anyValue(producer, options = {}) {
+        return new LazyAny(producer, false, options);
+      }
+      /**
+       * Defer the one-time calculation of an arbitrarily typed value to synthesis time
+       *
+       * Use this if you want to render an object to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * The inner function will only be invoked one time and cannot depend on
+       * resolution context.
+       */
+      static any(producer, options = {}) {
+        return new LazyBox(new LazyAny(producer, true, options));
+      }
+      /**
+       * Defer the calculation of an untyped value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.any()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedAny(producer, options = {}) {
+        return new LazyAny(producer, false, options);
+      }
+      constructor() {
+      }
+    };
+    LazyBase = class {
+      constructor(producer, cache) {
+        this.producer = producer;
+        this.cache = cache;
+      }
+      producer;
+      cache;
+      creationStack;
+      _cached;
+      resolve(context) {
+        if (this.cache) {
+          return this._cached ?? (this._cached = this.producer.produce(context));
+        } else {
+          return this.producer.produce(context);
+        }
+      }
+      toString() {
+        return Token.asString(this);
+      }
+      /**
+       * Turn this Token into JSON
+       *
+       * Called automatically when JSON.stringify() is called on a Token.
+       */
+      toJSON() {
+        return "";
+      }
+    };
+    LazyBase.prototype.creationStack = ["Token stack traces are no longer captured"];
+    LazyBox = class extends ReadonlyState {
+      inner;
+      constructor(inner) {
+        super(void 0);
+        this.inner = inner;
+      }
+      get() {
+        return this.inner.resolve(void 0);
+      }
+      toString() {
+        return Token.asString(this);
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    LazyString = class extends LazyBase {
+    };
+    LazyNumber = class extends LazyBase {
+    };
+    LazyList = class extends LazyBase {
+      constructor(producer, cache, options = {}) {
+        super(producer, cache);
+        this.options = options;
+      }
+      options;
+      resolve(context) {
+        const resolved = super.resolve(context);
+        if (resolved?.length === 0 && this.options.omitEmpty) {
+          return void 0;
+        }
+        return resolved;
+      }
+    };
+    LazyAny = class extends LazyBase {
+      constructor(producer, cache, options = {}) {
+        super(producer, cache);
+        this.options = options;
+      }
+      options;
+      resolve(context) {
+        const resolved = super.resolve(context);
+        if (Array.isArray(resolved) && resolved.length === 0 && this.options.omitEmptyArray) {
+          return void 0;
+        }
+        return resolved;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/reference.ts
+var REFERENCE_SYMBOL, Reference;
+var init_reference = __esm({
+  "../../aws-cdk-lib/core/lib/reference.ts"() {
+    "use strict";
+    init_intrinsic();
+    REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Reference");
+    Reference = class extends Intrinsic {
+      /**
+       * Check whether this is actually a Reference
+       */
+      static isReference(x) {
+        return typeof x === "object" && x !== null && REFERENCE_SYMBOL in x;
+      }
+      target;
+      displayName;
+      constructor(value, target, displayName, typeHint) {
+        super(value, { typeHint });
+        Object.defineProperty(this, REFERENCE_SYMBOL, { value: true });
+        this.target = target;
+        this.displayName = displayName || "Reference";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-reference.ts
+var CFN_REFERENCE_SYMBOL, CfnReference;
+var init_cfn_reference = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-reference.ts"() {
+    "use strict";
+    init_reference();
+    init_token();
+    init_errors();
+    init_literal_string();
+    init_core_construct_finders();
+    CFN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnReference");
+    CfnReference = class _CfnReference extends Reference {
+      constructor(value, displayName, target, typeHint) {
+        super(value, target, displayName, typeHint);
+        this.target = target;
+        this.replacementTokens = /* @__PURE__ */ new Map();
+        this.targetStack = stackOf(target);
+        Object.defineProperty(this, CFN_REFERENCE_SYMBOL, { value: true });
+      }
+      target;
+      /**
+       * Check whether this is actually a Reference
+       */
+      static isCfnReference(x) {
+        return CFN_REFERENCE_SYMBOL in x;
+      }
+      /**
+       * Return the CfnReference for the indicated target
+       *
+       * Will make sure that multiple invocations for the same target and intrinsic
+       * return the same CfnReference. Because CfnReferences accumulate state in
+       * the prepare() phase (for the purpose of cross-stack references), it's
+       * important that the state isn't lost if it's lazily created, like so:
+       *
+       *     Lazy.string({ produce: () => new CfnReference(...) })
+       *
+       */
+      static for(target, attribute, refRender, typeHint) {
+        return _CfnReference.singletonReference(target, attribute, refRender, () => {
+          const cfnIntrinsic = refRender === 0 /* FN_SUB */ ? "${" + target.logicalId + (attribute === "Ref" ? "" : `.${attribute}`) + "}" : attribute === "Ref" ? { Ref: target.logicalId } : {
+            "Fn::GetAtt": refRender === 1 /* GET_ATT_STRING */ ? `${target.logicalId}.${attribute}` : [target.logicalId, attribute]
+          };
+          return new _CfnReference(cfnIntrinsic, attribute, target, typeHint);
+        });
+      }
+      /**
+       * Return a CfnReference that references a pseudo referenced
+       */
+      static forPseudo(pseudoName, scope) {
+        return _CfnReference.singletonReference(scope, `Pseudo:${pseudoName}`, void 0, () => {
+          const cfnIntrinsic = { Ref: pseudoName };
+          return new _CfnReference(cfnIntrinsic, pseudoName, scope);
+        });
+      }
+      /**
+       * Static table where we keep singleton CfnReference instances
+       */
+      static referenceTable = /* @__PURE__ */ new Map();
+      /**
+       * Get or create the table.
+       * Passing fnSub = true allows cloudformation-include to correctly handle Fn::Sub.
+       */
+      static singletonReference(target, attribKey, refRender, fresh) {
+        let attribs = _CfnReference.referenceTable.get(target);
+        if (!attribs) {
+          attribs = /* @__PURE__ */ new Map();
+          _CfnReference.referenceTable.set(target, attribs);
+        }
+        let cacheKey = attribKey;
+        switch (refRender) {
+          case 0 /* FN_SUB */:
+            cacheKey += "Fn::Sub";
+            break;
+          case 1 /* GET_ATT_STRING */:
+            cacheKey += "Fn::GetAtt::String";
+            break;
+        }
+        let ref = attribs.get(cacheKey);
+        if (!ref) {
+          ref = fresh();
+          attribs.set(cacheKey, ref);
+        }
+        return ref;
+      }
+      /**
+       * The Tokens that should be returned for each consuming stack (as decided by the producing Stack)
+       */
+      replacementTokens;
+      targetStack;
+      resolve(context) {
+        const consumingStack = stackOf(context.scope);
+        const token = this.replacementTokens.get(consumingStack);
+        if (token) {
+          return token.resolve(context);
+        } else {
+          return super.resolve(context);
+        }
+      }
+      hasValueForStack(stack) {
+        if (stack === this.targetStack) {
+          return true;
+        }
+        return this.replacementTokens.has(stack);
+      }
+      assignValueForStack(stack, value) {
+        if (stack === this.targetStack) {
+          throw new UnscopedValidationError(lit`CannotAssignValueStack`, "cannot assign a value for the same stack");
+        }
+        if (this.hasValueForStack(stack)) {
+          throw new UnscopedValidationError(lit`CannotAssignReferenceValueTwice`, "Cannot assign a reference value twice to the same stack. Use hasValueForStack to check first");
+        }
+        this.replacementTokens.set(stack, value);
+      }
+      /**
+       * Implementation of toString() that will use the display name
+       */
+      toString() {
+        return Token.asString(this, {
+          displayHint: `${this.target.node.id}.${this.displayName}`
+        });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/universalify/index.js
+var require_universalify = __commonJS({
+  "../../aws-cdk-lib/node_modules/universalify/index.js"(exports2) {
+    "use strict";
+    exports2.fromCallback = function(fn) {
+      return Object.defineProperty(function(...args) {
+        if (typeof args[args.length - 1] === "function") fn.apply(this, args);
+        else {
+          return new Promise((resolve6, reject) => {
+            args.push((err, res) => err != null ? reject(err) : resolve6(res));
+            fn.apply(this, args);
+          });
+        }
+      }, "name", { value: fn.name });
+    };
+    exports2.fromPromise = function(fn) {
+      return Object.defineProperty(function(...args) {
+        const cb = args[args.length - 1];
+        if (typeof cb !== "function") return fn.apply(this, args);
+        else {
+          args.pop();
+          fn.apply(this, args).then((r) => cb(null, r), cb);
+        }
+      }, "name", { value: fn.name });
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js
+var require_polyfills = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js"(exports2, module2) {
+    var constants2 = require("constants");
+    var origCwd = process.cwd;
+    var cwd = null;
+    var platform = process.env.GRACEFUL_FS_PLATFORM || process.platform;
+    process.cwd = function() {
+      if (!cwd)
+        cwd = origCwd.call(process);
+      return cwd;
+    };
+    try {
+      process.cwd();
+    } catch (er) {
+    }
+    if (typeof process.chdir === "function") {
+      chdir = process.chdir;
+      process.chdir = function(d) {
+        cwd = null;
+        chdir.call(process, d);
+      };
+      if (Object.setPrototypeOf) Object.setPrototypeOf(process.chdir, chdir);
+    }
+    var chdir;
+    module2.exports = patch;
+    function patch(fs19) {
+      if (constants2.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) {
+        patchLchmod(fs19);
+      }
+      if (!fs19.lutimes) {
+        patchLutimes(fs19);
+      }
+      fs19.chown = chownFix(fs19.chown);
+      fs19.fchown = chownFix(fs19.fchown);
+      fs19.lchown = chownFix(fs19.lchown);
+      fs19.chmod = chmodFix(fs19.chmod);
+      fs19.fchmod = chmodFix(fs19.fchmod);
+      fs19.lchmod = chmodFix(fs19.lchmod);
+      fs19.chownSync = chownFixSync(fs19.chownSync);
+      fs19.fchownSync = chownFixSync(fs19.fchownSync);
+      fs19.lchownSync = chownFixSync(fs19.lchownSync);
+      fs19.chmodSync = chmodFixSync(fs19.chmodSync);
+      fs19.fchmodSync = chmodFixSync(fs19.fchmodSync);
+      fs19.lchmodSync = chmodFixSync(fs19.lchmodSync);
+      fs19.stat = statFix(fs19.stat);
+      fs19.fstat = statFix(fs19.fstat);
+      fs19.lstat = statFix(fs19.lstat);
+      fs19.statSync = statFixSync(fs19.statSync);
+      fs19.fstatSync = statFixSync(fs19.fstatSync);
+      fs19.lstatSync = statFixSync(fs19.lstatSync);
+      if (fs19.chmod && !fs19.lchmod) {
+        fs19.lchmod = function(path23, mode, cb) {
+          if (cb) process.nextTick(cb);
+        };
+        fs19.lchmodSync = function() {
+        };
+      }
+      if (fs19.chown && !fs19.lchown) {
+        fs19.lchown = function(path23, uid, gid, cb) {
+          if (cb) process.nextTick(cb);
+        };
+        fs19.lchownSync = function() {
+        };
+      }
+      if (platform === "win32") {
+        fs19.rename = typeof fs19.rename !== "function" ? fs19.rename : (function(fs$rename) {
+          function rename(from, to, cb) {
+            var start = Date.now();
+            var backoff = 0;
+            fs$rename(from, to, function CB(er) {
+              if (er && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") && Date.now() - start < 6e4) {
+                setTimeout(function() {
+                  fs19.stat(to, function(stater, st) {
+                    if (stater && stater.code === "ENOENT")
+                      fs$rename(from, to, CB);
+                    else
+                      cb(er);
+                  });
+                }, backoff);
+                if (backoff < 100)
+                  backoff += 10;
+                return;
+              }
+              if (cb) cb(er);
+            });
+          }
+          if (Object.setPrototypeOf) Object.setPrototypeOf(rename, fs$rename);
+          return rename;
+        })(fs19.rename);
+      }
+      fs19.read = typeof fs19.read !== "function" ? fs19.read : (function(fs$read) {
+        function read(fd, buffer, offset, length, position, callback_) {
+          var callback;
+          if (callback_ && typeof callback_ === "function") {
+            var eagCounter = 0;
+            callback = function(er, _, __) {
+              if (er && er.code === "EAGAIN" && eagCounter < 10) {
+                eagCounter++;
+                return fs$read.call(fs19, fd, buffer, offset, length, position, callback);
+              }
+              callback_.apply(this, arguments);
+            };
+          }
+          return fs$read.call(fs19, fd, buffer, offset, length, position, callback);
+        }
+        if (Object.setPrototypeOf) Object.setPrototypeOf(read, fs$read);
+        return read;
+      })(fs19.read);
+      fs19.readSync = typeof fs19.readSync !== "function" ? fs19.readSync : /* @__PURE__ */ (function(fs$readSync) {
+        return function(fd, buffer, offset, length, position) {
+          var eagCounter = 0;
+          while (true) {
+            try {
+              return fs$readSync.call(fs19, fd, buffer, offset, length, position);
+            } catch (er) {
+              if (er.code === "EAGAIN" && eagCounter < 10) {
+                eagCounter++;
+                continue;
+              }
+              throw er;
+            }
+          }
+        };
+      })(fs19.readSync);
+      function patchLchmod(fs20) {
+        fs20.lchmod = function(path23, mode, callback) {
+          fs20.open(
+            path23,
+            constants2.O_WRONLY | constants2.O_SYMLINK,
+            mode,
+            function(err, fd) {
+              if (err) {
+                if (callback) callback(err);
+                return;
+              }
+              fs20.fchmod(fd, mode, function(err2) {
+                fs20.close(fd, function(err22) {
+                  if (callback) callback(err2 || err22);
+                });
+              });
+            }
+          );
+        };
+        fs20.lchmodSync = function(path23, mode) {
+          var fd = fs20.openSync(path23, constants2.O_WRONLY | constants2.O_SYMLINK, mode);
+          var threw = true;
+          var ret;
+          try {
+            ret = fs20.fchmodSync(fd, mode);
+            threw = false;
+          } finally {
+            if (threw) {
+              try {
+                fs20.closeSync(fd);
+              } catch (er) {
+              }
+            } else {
+              fs20.closeSync(fd);
+            }
+          }
+          return ret;
+        };
+      }
+      function patchLutimes(fs20) {
+        if (constants2.hasOwnProperty("O_SYMLINK") && fs20.futimes) {
+          fs20.lutimes = function(path23, at, mt, cb) {
+            fs20.open(path23, constants2.O_SYMLINK, function(er, fd) {
+              if (er) {
+                if (cb) cb(er);
+                return;
+              }
+              fs20.futimes(fd, at, mt, function(er2) {
+                fs20.close(fd, function(er22) {
+                  if (cb) cb(er2 || er22);
+                });
+              });
+            });
+          };
+          fs20.lutimesSync = function(path23, at, mt) {
+            var fd = fs20.openSync(path23, constants2.O_SYMLINK);
+            var ret;
+            var threw = true;
+            try {
+              ret = fs20.futimesSync(fd, at, mt);
+              threw = false;
+            } finally {
+              if (threw) {
+                try {
+                  fs20.closeSync(fd);
+                } catch (er) {
+                }
+              } else {
+                fs20.closeSync(fd);
+              }
+            }
+            return ret;
+          };
+        } else if (fs20.futimes) {
+          fs20.lutimes = function(_a7, _b, _c, cb) {
+            if (cb) process.nextTick(cb);
+          };
+          fs20.lutimesSync = function() {
+          };
+        }
+      }
+      function chmodFix(orig) {
+        if (!orig) return orig;
+        return function(target, mode, cb) {
+          return orig.call(fs19, target, mode, function(er) {
+            if (chownErOk(er)) er = null;
+            if (cb) cb.apply(this, arguments);
+          });
+        };
+      }
+      function chmodFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, mode) {
+          try {
+            return orig.call(fs19, target, mode);
+          } catch (er) {
+            if (!chownErOk(er)) throw er;
+          }
+        };
+      }
+      function chownFix(orig) {
+        if (!orig) return orig;
+        return function(target, uid, gid, cb) {
+          return orig.call(fs19, target, uid, gid, function(er) {
+            if (chownErOk(er)) er = null;
+            if (cb) cb.apply(this, arguments);
+          });
+        };
+      }
+      function chownFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, uid, gid) {
+          try {
+            return orig.call(fs19, target, uid, gid);
+          } catch (er) {
+            if (!chownErOk(er)) throw er;
+          }
+        };
+      }
+      function statFix(orig) {
+        if (!orig) return orig;
+        return function(target, options, cb) {
+          if (typeof options === "function") {
+            cb = options;
+            options = null;
+          }
+          function callback(er, stats) {
+            if (stats) {
+              if (stats.uid < 0) stats.uid += 4294967296;
+              if (stats.gid < 0) stats.gid += 4294967296;
+            }
+            if (cb) cb.apply(this, arguments);
+          }
+          return options ? orig.call(fs19, target, options, callback) : orig.call(fs19, target, callback);
+        };
+      }
+      function statFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, options) {
+          var stats = options ? orig.call(fs19, target, options) : orig.call(fs19, target);
+          if (stats) {
+            if (stats.uid < 0) stats.uid += 4294967296;
+            if (stats.gid < 0) stats.gid += 4294967296;
+          }
+          return stats;
+        };
+      }
+      function chownErOk(er) {
+        if (!er)
+          return true;
+        if (er.code === "ENOSYS")
+          return true;
+        var nonroot = !process.getuid || process.getuid() !== 0;
+        if (nonroot) {
+          if (er.code === "EINVAL" || er.code === "EPERM")
+            return true;
+        }
+        return false;
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js
+var require_legacy_streams = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) {
+    var Stream = require("stream").Stream;
+    module2.exports = legacy;
+    function legacy(fs19) {
+      return {
+        ReadStream,
+        WriteStream
+      };
+      function ReadStream(path23, options) {
+        if (!(this instanceof ReadStream)) return new ReadStream(path23, options);
+        Stream.call(this);
+        var self2 = this;
+        this.path = path23;
+        this.fd = null;
+        this.readable = true;
+        this.paused = false;
+        this.flags = "r";
+        this.mode = 438;
+        this.bufferSize = 64 * 1024;
+        options = options || {};
+        var keys = Object.keys(options);
+        for (var index = 0, length = keys.length; index < length; index++) {
+          var key = keys[index];
+          this[key] = options[key];
+        }
+        if (this.encoding) this.setEncoding(this.encoding);
+        if (this.start !== void 0) {
+          if ("number" !== typeof this.start) {
+            throw TypeError("start must be a Number");
+          }
+          if (this.end === void 0) {
+            this.end = Infinity;
+          } else if ("number" !== typeof this.end) {
+            throw TypeError("end must be a Number");
+          }
+          if (this.start > this.end) {
+            throw new Error("start must be <= end");
+          }
+          this.pos = this.start;
+        }
+        if (this.fd !== null) {
+          process.nextTick(function() {
+            self2._read();
+          });
+          return;
+        }
+        fs19.open(this.path, this.flags, this.mode, function(err, fd) {
+          if (err) {
+            self2.emit("error", err);
+            self2.readable = false;
+            return;
+          }
+          self2.fd = fd;
+          self2.emit("open", fd);
+          self2._read();
+        });
+      }
+      function WriteStream(path23, options) {
+        if (!(this instanceof WriteStream)) return new WriteStream(path23, options);
+        Stream.call(this);
+        this.path = path23;
+        this.fd = null;
+        this.writable = true;
+        this.flags = "w";
+        this.encoding = "binary";
+        this.mode = 438;
+        this.bytesWritten = 0;
+        options = options || {};
+        var keys = Object.keys(options);
+        for (var index = 0, length = keys.length; index < length; index++) {
+          var key = keys[index];
+          this[key] = options[key];
+        }
+        if (this.start !== void 0) {
+          if ("number" !== typeof this.start) {
+            throw TypeError("start must be a Number");
+          }
+          if (this.start < 0) {
+            throw new Error("start must be >= zero");
+          }
+          this.pos = this.start;
+        }
+        this.busy = false;
+        this._queue = [];
+        if (this.fd === null) {
+          this._open = fs19.open;
+          this._queue.push([this._open, this.path, this.flags, this.mode, void 0]);
+          this.flush();
+        }
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/clone.js
+var require_clone = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/clone.js"(exports2, module2) {
+    "use strict";
+    module2.exports = clone;
+    var getPrototypeOf = Object.getPrototypeOf || function(obj) {
+      return obj.__proto__;
+    };
+    function clone(obj) {
+      if (obj === null || typeof obj !== "object")
+        return obj;
+      if (obj instanceof Object)
+        var copy = { __proto__: getPrototypeOf(obj) };
+      else
+        var copy = /* @__PURE__ */ Object.create(null);
+      Object.getOwnPropertyNames(obj).forEach(function(key) {
+        Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key));
+      });
+      return copy;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js
+var require_graceful_fs = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) {
+    var fs19 = require("fs");
+    var polyfills = require_polyfills();
+    var legacy = require_legacy_streams();
+    var clone = require_clone();
+    var util = require("util");
+    var gracefulQueue;
+    var previousSymbol;
+    if (typeof Symbol === "function" && typeof Symbol.for === "function") {
+      gracefulQueue = /* @__PURE__ */ Symbol.for("graceful-fs.queue");
+      previousSymbol = /* @__PURE__ */ Symbol.for("graceful-fs.previous");
+    } else {
+      gracefulQueue = "___graceful-fs.queue";
+      previousSymbol = "___graceful-fs.previous";
+    }
+    function noop() {
+    }
+    function publishQueue(context, queue2) {
+      Object.defineProperty(context, gracefulQueue, {
+        get: function() {
+          return queue2;
+        }
+      });
+    }
+    var debug = noop;
+    if (util.debuglog)
+      debug = util.debuglog("gfs4");
+    else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || ""))
+      debug = function() {
+        var m = util.format.apply(util, arguments);
+        m = "GFS4: " + m.split(/\n/).join("\nGFS4: ");
+        console.error(m);
+      };
+    if (!fs19[gracefulQueue]) {
+      queue = global[gracefulQueue] || [];
+      publishQueue(fs19, queue);
+      fs19.close = (function(fs$close) {
+        function close(fd, cb) {
+          return fs$close.call(fs19, fd, function(err) {
+            if (!err) {
+              resetQueue();
+            }
+            if (typeof cb === "function")
+              cb.apply(this, arguments);
+          });
+        }
+        Object.defineProperty(close, previousSymbol, {
+          value: fs$close
+        });
+        return close;
+      })(fs19.close);
+      fs19.closeSync = (function(fs$closeSync) {
+        function closeSync3(fd) {
+          fs$closeSync.apply(fs19, arguments);
+          resetQueue();
+        }
+        Object.defineProperty(closeSync3, previousSymbol, {
+          value: fs$closeSync
+        });
+        return closeSync3;
+      })(fs19.closeSync);
+      if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) {
+        process.on("exit", function() {
+          debug(fs19[gracefulQueue]);
+          require("assert").equal(fs19[gracefulQueue].length, 0);
+        });
+      }
+    }
+    var queue;
+    if (!global[gracefulQueue]) {
+      publishQueue(global, fs19[gracefulQueue]);
+    }
+    module2.exports = patch(clone(fs19));
+    if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs19.__patched) {
+      module2.exports = patch(fs19);
+      fs19.__patched = true;
+    }
+    function patch(fs20) {
+      polyfills(fs20);
+      fs20.gracefulify = patch;
+      fs20.createReadStream = createReadStream;
+      fs20.createWriteStream = createWriteStream;
+      var fs$readFile = fs20.readFile;
+      fs20.readFile = readFile;
+      function readFile(path23, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$readFile(path23, options, cb);
+        function go$readFile(path24, options2, cb2, startTime) {
+          return fs$readFile(path24, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$readFile, [path24, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$writeFile = fs20.writeFile;
+      fs20.writeFile = writeFile;
+      function writeFile(path23, data, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$writeFile(path23, data, options, cb);
+        function go$writeFile(path24, data2, options2, cb2, startTime) {
+          return fs$writeFile(path24, data2, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$writeFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$appendFile = fs20.appendFile;
+      if (fs$appendFile)
+        fs20.appendFile = appendFile;
+      function appendFile(path23, data, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$appendFile(path23, data, options, cb);
+        function go$appendFile(path24, data2, options2, cb2, startTime) {
+          return fs$appendFile(path24, data2, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$appendFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$copyFile = fs20.copyFile;
+      if (fs$copyFile)
+        fs20.copyFile = copyFile;
+      function copyFile(src, dest, flags, cb) {
+        if (typeof flags === "function") {
+          cb = flags;
+          flags = 0;
+        }
+        return go$copyFile(src, dest, flags, cb);
+        function go$copyFile(src2, dest2, flags2, cb2, startTime) {
+          return fs$copyFile(src2, dest2, flags2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$copyFile, [src2, dest2, flags2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$readdir = fs20.readdir;
+      fs20.readdir = readdir;
+      var noReaddirOptionVersions = /^v[0-5]\./;
+      function readdir(path23, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path24, options2, cb2, startTime) {
+          return fs$readdir(path24, fs$readdirCallback(
+            path24,
+            options2,
+            cb2,
+            startTime
+          ));
+        } : function go$readdir2(path24, options2, cb2, startTime) {
+          return fs$readdir(path24, options2, fs$readdirCallback(
+            path24,
+            options2,
+            cb2,
+            startTime
+          ));
+        };
+        return go$readdir(path23, options, cb);
+        function fs$readdirCallback(path24, options2, cb2, startTime) {
+          return function(err, files) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([
+                go$readdir,
+                [path24, options2, cb2],
+                err,
+                startTime || Date.now(),
+                Date.now()
+              ]);
+            else {
+              if (files && files.sort)
+                files.sort();
+              if (typeof cb2 === "function")
+                cb2.call(this, err, files);
+            }
+          };
+        }
+      }
+      if (process.version.substr(0, 4) === "v0.8") {
+        var legStreams = legacy(fs20);
+        ReadStream = legStreams.ReadStream;
+        WriteStream = legStreams.WriteStream;
+      }
+      var fs$ReadStream = fs20.ReadStream;
+      if (fs$ReadStream) {
+        ReadStream.prototype = Object.create(fs$ReadStream.prototype);
+        ReadStream.prototype.open = ReadStream$open;
+      }
+      var fs$WriteStream = fs20.WriteStream;
+      if (fs$WriteStream) {
+        WriteStream.prototype = Object.create(fs$WriteStream.prototype);
+        WriteStream.prototype.open = WriteStream$open;
+      }
+      Object.defineProperty(fs20, "ReadStream", {
+        get: function() {
+          return ReadStream;
+        },
+        set: function(val2) {
+          ReadStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      Object.defineProperty(fs20, "WriteStream", {
+        get: function() {
+          return WriteStream;
+        },
+        set: function(val2) {
+          WriteStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      var FileReadStream = ReadStream;
+      Object.defineProperty(fs20, "FileReadStream", {
+        get: function() {
+          return FileReadStream;
+        },
+        set: function(val2) {
+          FileReadStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      var FileWriteStream = WriteStream;
+      Object.defineProperty(fs20, "FileWriteStream", {
+        get: function() {
+          return FileWriteStream;
+        },
+        set: function(val2) {
+          FileWriteStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      function ReadStream(path23, options) {
+        if (this instanceof ReadStream)
+          return fs$ReadStream.apply(this, arguments), this;
+        else
+          return ReadStream.apply(Object.create(ReadStream.prototype), arguments);
+      }
+      function ReadStream$open() {
+        var that = this;
+        open(that.path, that.flags, that.mode, function(err, fd) {
+          if (err) {
+            if (that.autoClose)
+              that.destroy();
+            that.emit("error", err);
+          } else {
+            that.fd = fd;
+            that.emit("open", fd);
+            that.read();
+          }
+        });
+      }
+      function WriteStream(path23, options) {
+        if (this instanceof WriteStream)
+          return fs$WriteStream.apply(this, arguments), this;
+        else
+          return WriteStream.apply(Object.create(WriteStream.prototype), arguments);
+      }
+      function WriteStream$open() {
+        var that = this;
+        open(that.path, that.flags, that.mode, function(err, fd) {
+          if (err) {
+            that.destroy();
+            that.emit("error", err);
+          } else {
+            that.fd = fd;
+            that.emit("open", fd);
+          }
+        });
+      }
+      function createReadStream(path23, options) {
+        return new fs20.ReadStream(path23, options);
+      }
+      function createWriteStream(path23, options) {
+        return new fs20.WriteStream(path23, options);
+      }
+      var fs$open = fs20.open;
+      fs20.open = open;
+      function open(path23, flags, mode, cb) {
+        if (typeof mode === "function")
+          cb = mode, mode = null;
+        return go$open(path23, flags, mode, cb);
+        function go$open(path24, flags2, mode2, cb2, startTime) {
+          return fs$open(path24, flags2, mode2, function(err, fd) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$open, [path24, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      return fs20;
+    }
+    function enqueue(elem) {
+      debug("ENQUEUE", elem[0].name, elem[1]);
+      fs19[gracefulQueue].push(elem);
+      retry();
+    }
+    var retryTimer;
+    function resetQueue() {
+      var now = Date.now();
+      for (var i = 0; i < fs19[gracefulQueue].length; ++i) {
+        if (fs19[gracefulQueue][i].length > 2) {
+          fs19[gracefulQueue][i][3] = now;
+          fs19[gracefulQueue][i][4] = now;
+        }
+      }
+      retry();
+    }
+    function retry() {
+      clearTimeout(retryTimer);
+      retryTimer = void 0;
+      if (fs19[gracefulQueue].length === 0)
+        return;
+      var elem = fs19[gracefulQueue].shift();
+      var fn = elem[0];
+      var args = elem[1];
+      var err = elem[2];
+      var startTime = elem[3];
+      var lastTime = elem[4];
+      if (startTime === void 0) {
+        debug("RETRY", fn.name, args);
+        fn.apply(null, args);
+      } else if (Date.now() - startTime >= 6e4) {
+        debug("TIMEOUT", fn.name, args);
+        var cb = args.pop();
+        if (typeof cb === "function")
+          cb.call(null, err);
+      } else {
+        var sinceAttempt = Date.now() - lastTime;
+        var sinceStart = Math.max(lastTime - startTime, 1);
+        var desiredDelay = Math.min(sinceStart * 1.2, 100);
+        if (sinceAttempt >= desiredDelay) {
+          debug("RETRY", fn.name, args);
+          fn.apply(null, args.concat([startTime]));
+        } else {
+          fs19[gracefulQueue].push(elem);
+        }
+      }
+      if (retryTimer === void 0) {
+        retryTimer = setTimeout(retry, 0);
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js
+var require_fs = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js"(exports2) {
+    "use strict";
+    var u = require_universalify().fromCallback;
+    var fs19 = require_graceful_fs();
+    var api = [
+      "access",
+      "appendFile",
+      "chmod",
+      "chown",
+      "close",
+      "copyFile",
+      "cp",
+      "fchmod",
+      "fchown",
+      "fdatasync",
+      "fstat",
+      "fsync",
+      "ftruncate",
+      "futimes",
+      "glob",
+      "lchmod",
+      "lchown",
+      "lutimes",
+      "link",
+      "lstat",
+      "mkdir",
+      "mkdtemp",
+      "open",
+      "opendir",
+      "readdir",
+      "readFile",
+      "readlink",
+      "realpath",
+      "rename",
+      "rm",
+      "rmdir",
+      "stat",
+      "statfs",
+      "symlink",
+      "truncate",
+      "unlink",
+      "utimes",
+      "writeFile"
+    ].filter((key) => {
+      return typeof fs19[key] === "function";
+    });
+    Object.assign(exports2, fs19);
+    api.forEach((method) => {
+      exports2[method] = u(fs19[method]);
+    });
+    exports2.exists = function(filename, callback) {
+      if (typeof callback === "function") {
+        return fs19.exists(filename, callback);
+      }
+      return new Promise((resolve6) => {
+        return fs19.exists(filename, resolve6);
+      });
+    };
+    exports2.read = function(fd, buffer, offset, length, position, callback) {
+      if (typeof callback === "function") {
+        return fs19.read(fd, buffer, offset, length, position, callback);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.read(fd, buffer, offset, length, position, (err, bytesRead, buffer2) => {
+          if (err) return reject(err);
+          resolve6({ bytesRead, buffer: buffer2 });
+        });
+      });
+    };
+    exports2.write = function(fd, buffer, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.write(fd, buffer, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.write(fd, buffer, ...args, (err, bytesWritten, buffer2) => {
+          if (err) return reject(err);
+          resolve6({ bytesWritten, buffer: buffer2 });
+        });
+      });
+    };
+    exports2.readv = function(fd, buffers, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.readv(fd, buffers, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.readv(fd, buffers, ...args, (err, bytesRead, buffers2) => {
+          if (err) return reject(err);
+          resolve6({ bytesRead, buffers: buffers2 });
+        });
+      });
+    };
+    exports2.writev = function(fd, buffers, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.writev(fd, buffers, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.writev(fd, buffers, ...args, (err, bytesWritten, buffers2) => {
+          if (err) return reject(err);
+          resolve6({ bytesWritten, buffers: buffers2 });
+        });
+      });
+    };
+    if (typeof fs19.realpath.native === "function") {
+      exports2.realpath.native = u(fs19.realpath.native);
+    } else {
+      process.emitWarning(
+        "fs.realpath.native is not a function. Is fs being monkey-patched?",
+        "Warning",
+        "fs-extra-WARN0003"
+      );
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js
+var require_utils = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    module2.exports.checkPath = function checkPath(pth) {
+      if (process.platform === "win32") {
+        const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path23.parse(pth).root, ""));
+        if (pathHasInvalidWinCharacters) {
+          const error = new Error(`Path contains invalid characters: ${pth}`);
+          error.code = "EINVAL";
+          throw error;
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js
+var require_make_dir = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var { checkPath } = require_utils();
+    var getMode = (options) => {
+      const defaults = { mode: 511 };
+      if (typeof options === "number") return options;
+      return { ...defaults, ...options }.mode;
+    };
+    module2.exports.makeDir = async (dir, options) => {
+      checkPath(dir);
+      return fs19.mkdir(dir, {
+        mode: getMode(options),
+        recursive: true
+      });
+    };
+    module2.exports.makeDirSync = (dir, options) => {
+      checkPath(dir);
+      return fs19.mkdirSync(dir, {
+        mode: getMode(options),
+        recursive: true
+      });
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js
+var require_mkdirs = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var { makeDir: _makeDir, makeDirSync } = require_make_dir();
+    var makeDir = u(_makeDir);
+    module2.exports = {
+      mkdirs: makeDir,
+      mkdirsSync: makeDirSync,
+      // alias
+      mkdirp: makeDir,
+      mkdirpSync: makeDirSync,
+      ensureDir: makeDir,
+      ensureDirSync: makeDirSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js
+var require_path_exists = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    function pathExists(path23) {
+      return fs19.access(path23).then(() => true).catch(() => false);
+    }
+    module2.exports = {
+      pathExists: u(pathExists),
+      pathExistsSync: fs19.existsSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js
+var require_utimes = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var u = require_universalify().fromPromise;
+    async function utimesMillis(path23, atime, mtime) {
+      const fd = await fs19.open(path23, "r+");
+      let error = null;
+      try {
+        await fs19.futimes(fd, atime, mtime);
+      } catch (futimesErr) {
+        error = futimesErr;
+      } finally {
+        try {
+          await fs19.close(fd);
+        } catch (closeErr) {
+          if (!error) error = closeErr;
+        }
+      }
+      if (error) {
+        throw error;
+      }
+    }
+    function utimesMillisSync(path23, atime, mtime) {
+      const fd = fs19.openSync(path23, "r+");
+      let error = null;
+      try {
+        fs19.futimesSync(fd, atime, mtime);
+      } catch (futimesErr) {
+        error = futimesErr;
+      } finally {
+        try {
+          fs19.closeSync(fd);
+        } catch (closeErr) {
+          if (!error) error = closeErr;
+        }
+      }
+      if (error) {
+        throw error;
+      }
+    }
+    module2.exports = {
+      utimesMillis: u(utimesMillis),
+      utimesMillisSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js
+var require_stat = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var u = require_universalify().fromPromise;
+    function getStats(src, dest, opts) {
+      const statFunc = opts.dereference ? (file) => fs19.stat(file, { bigint: true }) : (file) => fs19.lstat(file, { bigint: true });
+      return Promise.all([
+        statFunc(src),
+        statFunc(dest).catch((err) => {
+          if (err.code === "ENOENT") return null;
+          throw err;
+        })
+      ]).then(([srcStat, destStat]) => ({ srcStat, destStat }));
+    }
+    function getStatsSync(src, dest, opts) {
+      let destStat;
+      const statFunc = opts.dereference ? (file) => fs19.statSync(file, { bigint: true }) : (file) => fs19.lstatSync(file, { bigint: true });
+      const srcStat = statFunc(src);
+      try {
+        destStat = statFunc(dest);
+      } catch (err) {
+        if (err.code === "ENOENT") return { srcStat, destStat: null };
+        throw err;
+      }
+      return { srcStat, destStat };
+    }
+    async function checkPaths(src, dest, funcName, opts) {
+      const { srcStat, destStat } = await getStats(src, dest, opts);
+      if (destStat) {
+        if (areIdentical(srcStat, destStat)) {
+          const srcBaseName = path23.basename(src);
+          const destBaseName = path23.basename(dest);
+          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
+            return { srcStat, destStat, isChangingCase: true };
+          }
+          throw new Error("Source and destination must not be the same.");
+        }
+        if (srcStat.isDirectory() && !destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`);
+        }
+        if (!srcStat.isDirectory() && destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`);
+        }
+      }
+      if (srcStat.isDirectory() && isSrcSubdir(src, dest)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return { srcStat, destStat };
+    }
+    function checkPathsSync(src, dest, funcName, opts) {
+      const { srcStat, destStat } = getStatsSync(src, dest, opts);
+      if (destStat) {
+        if (areIdentical(srcStat, destStat)) {
+          const srcBaseName = path23.basename(src);
+          const destBaseName = path23.basename(dest);
+          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
+            return { srcStat, destStat, isChangingCase: true };
+          }
+          throw new Error("Source and destination must not be the same.");
+        }
+        if (srcStat.isDirectory() && !destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`);
+        }
+        if (!srcStat.isDirectory() && destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`);
+        }
+      }
+      if (srcStat.isDirectory() && isSrcSubdir(src, dest)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return { srcStat, destStat };
+    }
+    async function checkParentPaths(src, srcStat, dest, funcName) {
+      const srcParent = path23.resolve(path23.dirname(src));
+      const destParent = path23.resolve(path23.dirname(dest));
+      if (destParent === srcParent || destParent === path23.parse(destParent).root) return;
+      let destStat;
+      try {
+        destStat = await fs19.stat(destParent, { bigint: true });
+      } catch (err) {
+        if (err.code === "ENOENT") return checkParentPaths(src, srcStat, destParent, funcName);
+        throw err;
+      }
+      if (areIdentical(srcStat, destStat)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return checkParentPaths(src, srcStat, destParent, funcName);
+    }
+    function checkParentPathsSync(src, srcStat, dest, funcName) {
+      const srcParent = path23.resolve(path23.dirname(src));
+      const destParent = path23.resolve(path23.dirname(dest));
+      if (destParent === srcParent || destParent === path23.parse(destParent).root) return;
+      let destStat;
+      try {
+        destStat = fs19.statSync(destParent, { bigint: true });
+      } catch (err) {
+        if (err.code === "ENOENT") return checkParentPathsSync(src, srcStat, destParent, funcName);
+        throw err;
+      }
+      if (areIdentical(srcStat, destStat)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return checkParentPathsSync(src, srcStat, destParent, funcName);
+    }
+    function areIdentical(srcStat, destStat) {
+      return destStat.ino !== void 0 && destStat.dev !== void 0 && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev;
+    }
+    function isSrcSubdir(src, dest) {
+      const srcArr = path23.resolve(src).split(path23.sep).filter((i) => i);
+      const destArr = path23.resolve(dest).split(path23.sep).filter((i) => i);
+      return srcArr.every((cur, i) => destArr[i] === cur);
+    }
+    function errMsg(src, dest, funcName) {
+      return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.`;
+    }
+    module2.exports = {
+      // checkPaths
+      checkPaths: u(checkPaths),
+      checkPathsSync,
+      // checkParent
+      checkParentPaths: u(checkParentPaths),
+      checkParentPathsSync,
+      // Misc
+      isSrcSubdir,
+      areIdentical
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js
+var require_async = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js"(exports2, module2) {
+    "use strict";
+    async function asyncIteratorConcurrentProcess(iterator, fn) {
+      const promises = [];
+      for await (const item of iterator) {
+        promises.push(
+          fn(item).then(
+            () => null,
+            (err) => err ?? new Error("unknown error")
+          )
+        );
+      }
+      await Promise.all(
+        promises.map(
+          (promise) => promise.then((possibleErr) => {
+            if (possibleErr !== null) throw possibleErr;
+          })
+        )
+      );
+    }
+    module2.exports = {
+      asyncIteratorConcurrentProcess
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js
+var require_copy = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var { mkdirs } = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var { utimesMillis } = require_utimes();
+    var stat = require_stat();
+    var { asyncIteratorConcurrentProcess } = require_async();
+    async function copy(src, dest, opts = {}) {
+      if (typeof opts === "function") {
+        opts = { filter: opts };
+      }
+      opts.clobber = "clobber" in opts ? !!opts.clobber : true;
+      opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber;
+      if (opts.preserveTimestamps && process.arch === "ia32") {
+        process.emitWarning(
+          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
+          "Warning",
+          "fs-extra-WARN0001"
+        );
+      }
+      const { srcStat, destStat } = await stat.checkPaths(src, dest, "copy", opts);
+      await stat.checkParentPaths(src, srcStat, dest, "copy");
+      const include = await runFilter(src, dest, opts);
+      if (!include) return;
+      const destParent = path23.dirname(dest);
+      const dirExists = await pathExists(destParent);
+      if (!dirExists) {
+        await mkdirs(destParent);
+      }
+      await getStatsAndPerformCopy(destStat, src, dest, opts);
+    }
+    async function runFilter(src, dest, opts) {
+      if (!opts.filter) return true;
+      return opts.filter(src, dest);
+    }
+    async function getStatsAndPerformCopy(destStat, src, dest, opts) {
+      const statFn = opts.dereference ? fs19.stat : fs19.lstat;
+      const srcStat = await statFn(src);
+      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts);
+      if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts);
+      if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts);
+      if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`);
+      if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`);
+      throw new Error(`Unknown file: ${src}`);
+    }
+    async function onFile(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return copyFile(srcStat, src, dest, opts);
+      if (opts.overwrite) {
+        await fs19.unlink(dest);
+        return copyFile(srcStat, src, dest, opts);
+      }
+      if (opts.errorOnExist) {
+        throw new Error(`'${dest}' already exists`);
+      }
+    }
+    async function copyFile(srcStat, src, dest, opts) {
+      await fs19.copyFile(src, dest);
+      if (opts.preserveTimestamps) {
+        if (fileIsNotWritable(srcStat.mode)) {
+          await makeFileWritable(dest, srcStat.mode);
+        }
+        const updatedSrcStat = await fs19.stat(src);
+        await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
+      }
+      return fs19.chmod(dest, srcStat.mode);
+    }
+    function fileIsNotWritable(srcMode) {
+      return (srcMode & 128) === 0;
+    }
+    function makeFileWritable(dest, srcMode) {
+      return fs19.chmod(dest, srcMode | 128);
+    }
+    async function onDir(srcStat, destStat, src, dest, opts) {
+      if (!destStat) {
+        await fs19.mkdir(dest);
+      }
+      await asyncIteratorConcurrentProcess(await fs19.opendir(src), async (item) => {
+        const srcItem = path23.join(src, item.name);
+        const destItem = path23.join(dest, item.name);
+        const include = await runFilter(srcItem, destItem, opts);
+        if (include) {
+          const { destStat: destStat2 } = await stat.checkPaths(srcItem, destItem, "copy", opts);
+          await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts);
+        }
+      });
+      if (!destStat) {
+        await fs19.chmod(dest, srcStat.mode);
+      }
+    }
+    async function onLink(destStat, src, dest, opts) {
+      let resolvedSrc = await fs19.readlink(src);
+      if (opts.dereference) {
+        resolvedSrc = path23.resolve(process.cwd(), resolvedSrc);
+      }
+      if (!destStat) {
+        return fs19.symlink(resolvedSrc, dest);
+      }
+      let resolvedDest = null;
+      try {
+        resolvedDest = await fs19.readlink(dest);
+      } catch (e) {
+        if (e.code === "EINVAL" || e.code === "UNKNOWN") return fs19.symlink(resolvedSrc, dest);
+        throw e;
+      }
+      if (opts.dereference) {
+        resolvedDest = path23.resolve(process.cwd(), resolvedDest);
+      }
+      if (resolvedSrc !== resolvedDest) {
+        if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
+          throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
+        }
+        if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) {
+          throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
+        }
+      }
+      await fs19.unlink(dest);
+      return fs19.symlink(resolvedSrc, dest);
+    }
+    module2.exports = copy;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js
+var require_copy_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var path23 = require("path");
+    var mkdirsSync = require_mkdirs().mkdirsSync;
+    var utimesMillisSync = require_utimes().utimesMillisSync;
+    var stat = require_stat();
+    function copySync2(src, dest, opts) {
+      if (typeof opts === "function") {
+        opts = { filter: opts };
+      }
+      opts = opts || {};
+      opts.clobber = "clobber" in opts ? !!opts.clobber : true;
+      opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber;
+      if (opts.preserveTimestamps && process.arch === "ia32") {
+        process.emitWarning(
+          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
+          "Warning",
+          "fs-extra-WARN0002"
+        );
+      }
+      const { srcStat, destStat } = stat.checkPathsSync(src, dest, "copy", opts);
+      stat.checkParentPathsSync(src, srcStat, dest, "copy");
+      if (opts.filter && !opts.filter(src, dest)) return;
+      const destParent = path23.dirname(dest);
+      if (!fs19.existsSync(destParent)) mkdirsSync(destParent);
+      return getStats(destStat, src, dest, opts);
+    }
+    function getStats(destStat, src, dest, opts) {
+      const statSync6 = opts.dereference ? fs19.statSync : fs19.lstatSync;
+      const srcStat = statSync6(src);
+      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts);
+      else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts);
+      else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts);
+      else if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`);
+      else if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`);
+      throw new Error(`Unknown file: ${src}`);
+    }
+    function onFile(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return copyFile(srcStat, src, dest, opts);
+      return mayCopyFile(srcStat, src, dest, opts);
+    }
+    function mayCopyFile(srcStat, src, dest, opts) {
+      if (opts.overwrite) {
+        fs19.unlinkSync(dest);
+        return copyFile(srcStat, src, dest, opts);
+      } else if (opts.errorOnExist) {
+        throw new Error(`'${dest}' already exists`);
+      }
+    }
+    function copyFile(srcStat, src, dest, opts) {
+      fs19.copyFileSync(src, dest);
+      if (opts.preserveTimestamps) handleTimestamps(srcStat.mode, src, dest);
+      return setDestMode(dest, srcStat.mode);
+    }
+    function handleTimestamps(srcMode, src, dest) {
+      if (fileIsNotWritable(srcMode)) makeFileWritable(dest, srcMode);
+      return setDestTimestamps(src, dest);
+    }
+    function fileIsNotWritable(srcMode) {
+      return (srcMode & 128) === 0;
+    }
+    function makeFileWritable(dest, srcMode) {
+      return setDestMode(dest, srcMode | 128);
+    }
+    function setDestMode(dest, srcMode) {
+      return fs19.chmodSync(dest, srcMode);
+    }
+    function setDestTimestamps(src, dest) {
+      const updatedSrcStat = fs19.statSync(src);
+      return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
+    }
+    function onDir(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return mkDirAndCopy(srcStat.mode, src, dest, opts);
+      return copyDir(src, dest, opts);
+    }
+    function mkDirAndCopy(srcMode, src, dest, opts) {
+      fs19.mkdirSync(dest);
+      copyDir(src, dest, opts);
+      return setDestMode(dest, srcMode);
+    }
+    function copyDir(src, dest, opts) {
+      const dir = fs19.opendirSync(src);
+      try {
+        let dirent;
+        while ((dirent = dir.readSync()) !== null) {
+          copyDirItem(dirent.name, src, dest, opts);
+        }
+      } finally {
+        dir.closeSync();
+      }
+    }
+    function copyDirItem(item, src, dest, opts) {
+      const srcItem = path23.join(src, item);
+      const destItem = path23.join(dest, item);
+      if (opts.filter && !opts.filter(srcItem, destItem)) return;
+      const { destStat } = stat.checkPathsSync(srcItem, destItem, "copy", opts);
+      return getStats(destStat, srcItem, destItem, opts);
+    }
+    function onLink(destStat, src, dest, opts) {
+      let resolvedSrc = fs19.readlinkSync(src);
+      if (opts.dereference) {
+        resolvedSrc = path23.resolve(process.cwd(), resolvedSrc);
+      }
+      if (!destStat) {
+        return fs19.symlinkSync(resolvedSrc, dest);
+      } else {
+        let resolvedDest;
+        try {
+          resolvedDest = fs19.readlinkSync(dest);
+        } catch (err) {
+          if (err.code === "EINVAL" || err.code === "UNKNOWN") return fs19.symlinkSync(resolvedSrc, dest);
+          throw err;
+        }
+        if (opts.dereference) {
+          resolvedDest = path23.resolve(process.cwd(), resolvedDest);
+        }
+        if (resolvedSrc !== resolvedDest) {
+          if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
+            throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
+          }
+          if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) {
+            throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
+          }
+        }
+        return copyLink(resolvedSrc, dest);
+      }
+    }
+    function copyLink(resolvedSrc, dest) {
+      fs19.unlinkSync(dest);
+      return fs19.symlinkSync(resolvedSrc, dest);
+    }
+    module2.exports = copySync2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js
+var require_copy2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    module2.exports = {
+      copy: u(require_copy()),
+      copySync: require_copy_sync()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js
+var require_remove = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var u = require_universalify().fromCallback;
+    function remove(path23, callback) {
+      fs19.rm(path23, { recursive: true, force: true }, callback);
+    }
+    function removeSync2(path23) {
+      fs19.rmSync(path23, { recursive: true, force: true });
+    }
+    module2.exports = {
+      remove: u(remove),
+      removeSync: removeSync2
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js
+var require_empty = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var mkdir = require_mkdirs();
+    var remove = require_remove();
+    var emptyDir = u(async function emptyDir2(dir) {
+      let items;
+      try {
+        items = await fs19.readdir(dir);
+      } catch {
+        return mkdir.mkdirs(dir);
+      }
+      return Promise.all(items.map((item) => remove.remove(path23.join(dir, item))));
+    });
+    function emptyDirSync(dir) {
+      let items;
+      try {
+        items = fs19.readdirSync(dir);
+      } catch {
+        return mkdir.mkdirsSync(dir);
+      }
+      items.forEach((item) => {
+        item = path23.join(dir, item);
+        remove.removeSync(item);
+      });
+    }
+    module2.exports = {
+      emptyDirSync,
+      emptydirSync: emptyDirSync,
+      emptyDir,
+      emptydir: emptyDir
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js
+var require_file = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var mkdir = require_mkdirs();
+    async function createFile(file) {
+      let stats;
+      try {
+        stats = await fs19.stat(file);
+      } catch {
+      }
+      if (stats && stats.isFile()) return;
+      const dir = path23.dirname(file);
+      let dirStats = null;
+      try {
+        dirStats = await fs19.stat(dir);
+      } catch (err) {
+        if (err.code === "ENOENT") {
+          await mkdir.mkdirs(dir);
+          await fs19.writeFile(file, "");
+          return;
+        } else {
+          throw err;
+        }
+      }
+      if (dirStats.isDirectory()) {
+        await fs19.writeFile(file, "");
+      } else {
+        await fs19.readdir(dir);
+      }
+    }
+    function createFileSync(file) {
+      let stats;
+      try {
+        stats = fs19.statSync(file);
+      } catch {
+      }
+      if (stats && stats.isFile()) return;
+      const dir = path23.dirname(file);
+      try {
+        if (!fs19.statSync(dir).isDirectory()) {
+          fs19.readdirSync(dir);
+        }
+      } catch (err) {
+        if (err && err.code === "ENOENT") mkdir.mkdirsSync(dir);
+        else throw err;
+      }
+      fs19.writeFileSync(file, "");
+    }
+    module2.exports = {
+      createFile: u(createFile),
+      createFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js
+var require_link = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var mkdir = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var { areIdentical } = require_stat();
+    async function createLink(srcpath, dstpath) {
+      let dstStat;
+      try {
+        dstStat = await fs19.lstat(dstpath, { bigint: true });
+      } catch {
+      }
+      let srcStat;
+      try {
+        srcStat = await fs19.lstat(srcpath, { bigint: true });
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureLink");
+        throw err;
+      }
+      if (dstStat && areIdentical(srcStat, dstStat)) return;
+      const dir = path23.dirname(dstpath);
+      const dirExists = await pathExists(dir);
+      if (!dirExists) {
+        await mkdir.mkdirs(dir);
+      }
+      await fs19.link(srcpath, dstpath);
+    }
+    function createLinkSync(srcpath, dstpath) {
+      let dstStat;
+      try {
+        dstStat = fs19.lstatSync(dstpath, { bigint: true });
+      } catch {
+      }
+      try {
+        const srcStat = fs19.lstatSync(srcpath, { bigint: true });
+        if (dstStat && areIdentical(srcStat, dstStat)) return;
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureLink");
+        throw err;
+      }
+      const dir = path23.dirname(dstpath);
+      const dirExists = fs19.existsSync(dir);
+      if (dirExists) return fs19.linkSync(srcpath, dstpath);
+      mkdir.mkdirsSync(dir);
+      return fs19.linkSync(srcpath, dstpath);
+    }
+    module2.exports = {
+      createLink: u(createLink),
+      createLinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js
+var require_symlink_paths = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var { pathExists } = require_path_exists();
+    var u = require_universalify().fromPromise;
+    async function symlinkPaths(srcpath, dstpath) {
+      if (path23.isAbsolute(srcpath)) {
+        try {
+          await fs19.lstat(srcpath);
+        } catch (err) {
+          err.message = err.message.replace("lstat", "ensureSymlink");
+          throw err;
+        }
+        return {
+          toCwd: srcpath,
+          toDst: srcpath
+        };
+      }
+      const dstdir = path23.dirname(dstpath);
+      const relativeToDst = path23.join(dstdir, srcpath);
+      const exists = await pathExists(relativeToDst);
+      if (exists) {
+        return {
+          toCwd: relativeToDst,
+          toDst: srcpath
+        };
+      }
+      try {
+        await fs19.lstat(srcpath);
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureSymlink");
+        throw err;
+      }
+      return {
+        toCwd: srcpath,
+        toDst: path23.relative(dstdir, srcpath)
+      };
+    }
+    function symlinkPathsSync(srcpath, dstpath) {
+      if (path23.isAbsolute(srcpath)) {
+        const exists2 = fs19.existsSync(srcpath);
+        if (!exists2) throw new Error("absolute srcpath does not exist");
+        return {
+          toCwd: srcpath,
+          toDst: srcpath
+        };
+      }
+      const dstdir = path23.dirname(dstpath);
+      const relativeToDst = path23.join(dstdir, srcpath);
+      const exists = fs19.existsSync(relativeToDst);
+      if (exists) {
+        return {
+          toCwd: relativeToDst,
+          toDst: srcpath
+        };
+      }
+      const srcExists = fs19.existsSync(srcpath);
+      if (!srcExists) throw new Error("relative srcpath does not exist");
+      return {
+        toCwd: srcpath,
+        toDst: path23.relative(dstdir, srcpath)
+      };
+    }
+    module2.exports = {
+      symlinkPaths: u(symlinkPaths),
+      symlinkPathsSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js
+var require_symlink_type = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var u = require_universalify().fromPromise;
+    async function symlinkType(srcpath, type) {
+      if (type) return type;
+      let stats;
+      try {
+        stats = await fs19.lstat(srcpath);
+      } catch {
+        return "file";
+      }
+      return stats && stats.isDirectory() ? "dir" : "file";
+    }
+    function symlinkTypeSync(srcpath, type) {
+      if (type) return type;
+      let stats;
+      try {
+        stats = fs19.lstatSync(srcpath);
+      } catch {
+        return "file";
+      }
+      return stats && stats.isDirectory() ? "dir" : "file";
+    }
+    module2.exports = {
+      symlinkType: u(symlinkType),
+      symlinkTypeSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js
+var require_symlink = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var { mkdirs, mkdirsSync } = require_mkdirs();
+    var { symlinkPaths, symlinkPathsSync } = require_symlink_paths();
+    var { symlinkType, symlinkTypeSync } = require_symlink_type();
+    var { pathExists } = require_path_exists();
+    var { areIdentical } = require_stat();
+    async function createSymlink(srcpath, dstpath, type) {
+      let stats;
+      try {
+        stats = await fs19.lstat(dstpath);
+      } catch {
+      }
+      if (stats && stats.isSymbolicLink()) {
+        let srcStat;
+        if (path23.isAbsolute(srcpath)) {
+          srcStat = await fs19.stat(srcpath, { bigint: true });
+        } else {
+          const dstdir = path23.dirname(dstpath);
+          const relativeToDst = path23.join(dstdir, srcpath);
+          try {
+            srcStat = await fs19.stat(relativeToDst, { bigint: true });
+          } catch {
+            srcStat = await fs19.stat(srcpath, { bigint: true });
+          }
+        }
+        const dstStat = await fs19.stat(dstpath, { bigint: true });
+        if (areIdentical(srcStat, dstStat)) return;
+      }
+      const relative7 = await symlinkPaths(srcpath, dstpath);
+      srcpath = relative7.toDst;
+      const toType = await symlinkType(relative7.toCwd, type);
+      const dir = path23.dirname(dstpath);
+      if (!await pathExists(dir)) {
+        await mkdirs(dir);
+      }
+      return fs19.symlink(srcpath, dstpath, toType);
+    }
+    function createSymlinkSync(srcpath, dstpath, type) {
+      let stats;
+      try {
+        stats = fs19.lstatSync(dstpath);
+      } catch {
+      }
+      if (stats && stats.isSymbolicLink()) {
+        let srcStat;
+        if (path23.isAbsolute(srcpath)) {
+          srcStat = fs19.statSync(srcpath, { bigint: true });
+        } else {
+          const dstdir = path23.dirname(dstpath);
+          const relativeToDst = path23.join(dstdir, srcpath);
+          try {
+            srcStat = fs19.statSync(relativeToDst, { bigint: true });
+          } catch {
+            srcStat = fs19.statSync(srcpath, { bigint: true });
+          }
+        }
+        const dstStat = fs19.statSync(dstpath, { bigint: true });
+        if (areIdentical(srcStat, dstStat)) return;
+      }
+      const relative7 = symlinkPathsSync(srcpath, dstpath);
+      srcpath = relative7.toDst;
+      type = symlinkTypeSync(relative7.toCwd, type);
+      const dir = path23.dirname(dstpath);
+      const exists = fs19.existsSync(dir);
+      if (exists) return fs19.symlinkSync(srcpath, dstpath, type);
+      mkdirsSync(dir);
+      return fs19.symlinkSync(srcpath, dstpath, type);
+    }
+    module2.exports = {
+      createSymlink: u(createSymlink),
+      createSymlinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js
+var require_ensure = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) {
+    "use strict";
+    var { createFile, createFileSync } = require_file();
+    var { createLink, createLinkSync } = require_link();
+    var { createSymlink, createSymlinkSync } = require_symlink();
+    module2.exports = {
+      // file
+      createFile,
+      createFileSync,
+      ensureFile: createFile,
+      ensureFileSync: createFileSync,
+      // link
+      createLink,
+      createLinkSync,
+      ensureLink: createLink,
+      ensureLinkSync: createLinkSync,
+      // symlink
+      createSymlink,
+      createSymlinkSync,
+      ensureSymlink: createSymlink,
+      ensureSymlinkSync: createSymlinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/jsonfile/utils.js
+var require_utils2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/jsonfile/utils.js"(exports2, module2) {
+    function stringify3(obj, { EOL = "\n", finalEOL = true, replacer = null, spaces } = {}) {
+      const EOF = finalEOL ? EOL : "";
+      const str = JSON.stringify(obj, replacer, spaces);
+      if (str === void 0) {
+        throw new TypeError(`Converting ${typeof obj} value to JSON is not supported`);
+      }
+      return str.replace(/\n/g, EOL) + EOF;
+    }
+    function stripBom(content) {
+      if (Buffer.isBuffer(content)) content = content.toString("utf8");
+      return content.replace(/^\uFEFF/, "");
+    }
+    module2.exports = { stringify: stringify3, stripBom };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/jsonfile/index.js
+var require_jsonfile = __commonJS({
+  "../../aws-cdk-lib/node_modules/jsonfile/index.js"(exports2, module2) {
+    var _fs;
+    try {
+      _fs = require_graceful_fs();
+    } catch (_) {
+      _fs = require("fs");
+    }
+    var universalify = require_universalify();
+    var { stringify: stringify3, stripBom } = require_utils2();
+    async function _readFile(file, options = {}) {
+      if (typeof options === "string") {
+        options = { encoding: options };
+      }
+      const fs19 = options.fs || _fs;
+      const shouldThrow = "throws" in options ? options.throws : true;
+      let data = await universalify.fromCallback(fs19.readFile)(file, options);
+      data = stripBom(data);
+      let obj;
+      try {
+        obj = JSON.parse(data, options ? options.reviver : null);
+      } catch (err) {
+        if (shouldThrow) {
+          err.message = `${file}: ${err.message}`;
+          throw err;
+        } else {
+          return null;
+        }
+      }
+      return obj;
+    }
+    var readFile = universalify.fromPromise(_readFile);
+    function readFileSync7(file, options = {}) {
+      if (typeof options === "string") {
+        options = { encoding: options };
+      }
+      const fs19 = options.fs || _fs;
+      const shouldThrow = "throws" in options ? options.throws : true;
+      try {
+        let content = fs19.readFileSync(file, options);
+        content = stripBom(content);
+        return JSON.parse(content, options.reviver);
+      } catch (err) {
+        if (shouldThrow) {
+          err.message = `${file}: ${err.message}`;
+          throw err;
+        } else {
+          return null;
+        }
+      }
+    }
+    async function _writeFile(file, obj, options = {}) {
+      const fs19 = options.fs || _fs;
+      const str = stringify3(obj, options);
+      await universalify.fromCallback(fs19.writeFile)(file, str, options);
+    }
+    var writeFile = universalify.fromPromise(_writeFile);
+    function writeFileSync10(file, obj, options = {}) {
+      const fs19 = options.fs || _fs;
+      const str = stringify3(obj, options);
+      return fs19.writeFileSync(file, str, options);
+    }
+    module2.exports = {
+      readFile,
+      readFileSync: readFileSync7,
+      writeFile,
+      writeFileSync: writeFileSync10
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js
+var require_jsonfile2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) {
+    "use strict";
+    var jsonFile = require_jsonfile();
+    module2.exports = {
+      // jsonfile exports
+      readJson: jsonFile.readFile,
+      readJsonSync: jsonFile.readFileSync,
+      writeJson: jsonFile.writeFile,
+      writeJsonSync: jsonFile.writeFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js
+var require_output_file = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var mkdir = require_mkdirs();
+    var pathExists = require_path_exists().pathExists;
+    async function outputFile(file, data, encoding = "utf-8") {
+      const dir = path23.dirname(file);
+      if (!await pathExists(dir)) {
+        await mkdir.mkdirs(dir);
+      }
+      return fs19.writeFile(file, data, encoding);
+    }
+    function outputFileSync(file, ...args) {
+      const dir = path23.dirname(file);
+      if (!fs19.existsSync(dir)) {
+        mkdir.mkdirsSync(dir);
+      }
+      fs19.writeFileSync(file, ...args);
+    }
+    module2.exports = {
+      outputFile: u(outputFile),
+      outputFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js
+var require_output_json = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) {
+    "use strict";
+    var { stringify: stringify3 } = require_utils2();
+    var { outputFile } = require_output_file();
+    async function outputJson(file, data, options = {}) {
+      const str = stringify3(data, options);
+      await outputFile(file, str, options);
+    }
+    module2.exports = outputJson;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js
+var require_output_json_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) {
+    "use strict";
+    var { stringify: stringify3 } = require_utils2();
+    var { outputFileSync } = require_output_file();
+    function outputJsonSync(file, data, options) {
+      const str = stringify3(data, options);
+      outputFileSync(file, str, options);
+    }
+    module2.exports = outputJsonSync;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js
+var require_json = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var jsonFile = require_jsonfile2();
+    jsonFile.outputJson = u(require_output_json());
+    jsonFile.outputJsonSync = require_output_json_sync();
+    jsonFile.outputJSON = jsonFile.outputJson;
+    jsonFile.outputJSONSync = jsonFile.outputJsonSync;
+    jsonFile.writeJSON = jsonFile.writeJson;
+    jsonFile.writeJSONSync = jsonFile.writeJsonSync;
+    jsonFile.readJSON = jsonFile.readJson;
+    jsonFile.readJSONSync = jsonFile.readJsonSync;
+    module2.exports = jsonFile;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js
+var require_move = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var { copy } = require_copy2();
+    var { remove } = require_remove();
+    var { mkdirp } = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var stat = require_stat();
+    async function move(src, dest, opts = {}) {
+      const overwrite = opts.overwrite || opts.clobber || false;
+      const { srcStat, isChangingCase = false } = await stat.checkPaths(src, dest, "move", opts);
+      await stat.checkParentPaths(src, srcStat, dest, "move");
+      const destParent = path23.dirname(dest);
+      const parsedParentPath = path23.parse(destParent);
+      if (parsedParentPath.root !== destParent) {
+        await mkdirp(destParent);
+      }
+      return doRename(src, dest, overwrite, isChangingCase);
+    }
+    async function doRename(src, dest, overwrite, isChangingCase) {
+      if (!isChangingCase) {
+        if (overwrite) {
+          await remove(dest);
+        } else if (await pathExists(dest)) {
+          throw new Error("dest already exists.");
+        }
+      }
+      try {
+        await fs19.rename(src, dest);
+      } catch (err) {
+        if (err.code !== "EXDEV") {
+          throw err;
+        }
+        await moveAcrossDevice(src, dest, overwrite);
+      }
+    }
+    async function moveAcrossDevice(src, dest, overwrite) {
+      const opts = {
+        overwrite,
+        errorOnExist: true,
+        preserveTimestamps: true
+      };
+      await copy(src, dest, opts);
+      return remove(src);
+    }
+    module2.exports = move;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js
+var require_move_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var path23 = require("path");
+    var copySync2 = require_copy2().copySync;
+    var removeSync2 = require_remove().removeSync;
+    var mkdirpSync = require_mkdirs().mkdirpSync;
+    var stat = require_stat();
+    function moveSync(src, dest, opts) {
+      opts = opts || {};
+      const overwrite = opts.overwrite || opts.clobber || false;
+      const { srcStat, isChangingCase = false } = stat.checkPathsSync(src, dest, "move", opts);
+      stat.checkParentPathsSync(src, srcStat, dest, "move");
+      if (!isParentRoot(dest)) mkdirpSync(path23.dirname(dest));
+      return doRename(src, dest, overwrite, isChangingCase);
+    }
+    function isParentRoot(dest) {
+      const parent = path23.dirname(dest);
+      const parsedPath = path23.parse(parent);
+      return parsedPath.root === parent;
+    }
+    function doRename(src, dest, overwrite, isChangingCase) {
+      if (isChangingCase) return rename(src, dest, overwrite);
+      if (overwrite) {
+        removeSync2(dest);
+        return rename(src, dest, overwrite);
+      }
+      if (fs19.existsSync(dest)) throw new Error("dest already exists.");
+      return rename(src, dest, overwrite);
+    }
+    function rename(src, dest, overwrite) {
+      try {
+        fs19.renameSync(src, dest);
+      } catch (err) {
+        if (err.code !== "EXDEV") throw err;
+        return moveAcrossDevice(src, dest, overwrite);
+      }
+    }
+    function moveAcrossDevice(src, dest, overwrite) {
+      const opts = {
+        overwrite,
+        errorOnExist: true,
+        preserveTimestamps: true
+      };
+      copySync2(src, dest, opts);
+      return removeSync2(src);
+    }
+    module2.exports = moveSync;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js
+var require_move2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    module2.exports = {
+      move: u(require_move()),
+      moveSync: require_move_sync()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/index.js
+var require_lib5 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/index.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // Export promiseified graceful-fs:
+      ...require_fs(),
+      // Export extra methods:
+      ...require_copy2(),
+      ...require_empty(),
+      ...require_ensure(),
+      ...require_json(),
+      ...require_mkdirs(),
+      ...require_move2(),
+      ...require_output_file(),
+      ...require_path_exists(),
+      ...require_remove()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts
+var AWS_CDK_CONSTRUCTOR_PROPS;
+var init_classes = __esm({
+  "../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts"() {
+    "use strict";
+    AWS_CDK_CONSTRUCTOR_PROPS = {
+      "@aws-cdk.aws-amplify-alpha": {
+        "App": {
+          "appName": "*",
+          "sourceCodeProvider": "*",
+          "autoBranchCreation": {
+            "patterns": "*",
+            "basicAuth": "*",
+            "buildSpec": "*",
+            "autoBuild": "boolean",
+            "pullRequestPreview": "boolean",
+            "environmentVariables": "*",
+            "pullRequestEnvironmentName": "*",
+            "stage": "*"
+          },
+          "autoBranchDeletion": "boolean",
+          "basicAuth": "*",
+          "buildSpec": "*",
+          "customResponseHeaders": {
+            "appRoot": "*",
+            "pattern": "*",
+            "headers": "*"
+          },
+          "customRules": "*",
+          "description": "*",
+          "environmentVariables": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "platform": "Platform",
+          "cacheConfigType": "CacheConfigType",
+          "computeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "buildComputeType": "BuildComputeType",
+          "addCustomRule": [
+            "*"
+          ],
+          "addEnvironment": [
+            "*",
+            "*"
+          ],
+          "addAutoBranchEnvironment": [
+            "*",
+            "*"
+          ],
+          "addBranch": [
+            "*",
+            {
+              "basicAuth": "*",
+              "branchName": "*",
+              "buildSpec": "*",
+              "description": "*",
+              "autoBuild": "boolean",
+              "pullRequestPreview": "boolean",
+              "environmentVariables": "*",
+              "pullRequestEnvironmentName": "*",
+              "stage": "*",
+              "asset": "*",
+              "performanceMode": "boolean",
+              "skewProtection": "boolean",
+              "computeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ],
+          "addDomain": [
+            "*",
+            {
+              "domainName": "*",
+              "subDomains": {
+                "branch": {
+                  "branchName": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "prefix": "*"
+              },
+              "enableAutoSubdomain": "boolean",
+              "autoSubdomainCreationPatterns": "*",
+              "customCertificate": {
+                "certificateArn": "*"
+              }
+            }
+          ]
+        },
+        "Branch": {
+          "app": {
+            "appId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "basicAuth": "*",
+          "branchName": "*",
+          "buildSpec": "*",
+          "description": "*",
+          "autoBuild": "boolean",
+          "pullRequestPreview": "boolean",
+          "environmentVariables": "*",
+          "pullRequestEnvironmentName": "*",
+          "stage": "*",
+          "asset": "*",
+          "performanceMode": "boolean",
+          "skewProtection": "boolean",
+          "computeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addEnvironment": [
+            "*",
+            "*"
+          ]
+        },
+        "Domain": {
+          "app": {
+            "appId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoSubDomainIamRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "domainName": "*",
+          "subDomains": {
+            "branch": {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "prefix": "*"
+          },
+          "enableAutoSubdomain": "boolean",
+          "autoSubdomainCreationPatterns": "*",
+          "customCertificate": {
+            "certificateArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mapSubDomain": [
+            {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "*"
+          ],
+          "mapRoot": [
+            {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-apprunner-alpha": {
+        "AutoScalingConfiguration": {
+          "autoScalingConfigurationName": "*",
+          "maxConcurrency": "*",
+          "maxSize": "*",
+          "minSize": "*"
+        },
+        "ObservabilityConfiguration": {
+          "observabilityConfigurationName": "*",
+          "traceConfigurationVendor": "TraceConfigurationVendor"
+        },
+        "Service": {
+          "source": "*",
+          "autoDeploymentsEnabled": "boolean",
+          "autoScalingConfiguration": {
+            "autoScalingConfigurationArn": "*",
+            "autoScalingConfigurationName": "*",
+            "autoScalingConfigurationRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cpu": "*",
+          "memory": "*",
+          "accessRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serviceName": "*",
+          "vpcConnector": {
+            "vpcConnectorName": "*",
+            "vpcConnectorArn": "*",
+            "vpcConnectorRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "isPubliclyAccessible": "boolean",
+          "healthCheck": "*",
+          "kmsKey": "*",
+          "ipAddressType": "IpAddressType",
+          "observabilityConfiguration": {
+            "observabilityConfigurationName": "*",
+            "observabilityConfigurationArn": "*",
+            "observabilityConfigurationRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addToRolePolicy": [
+            "*"
+          ],
+          "addEnvironmentVariable": [
+            "*",
+            "*"
+          ],
+          "addSecret": [
+            "*",
+            "*"
+          ]
+        },
+        "VpcConnector": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcConnectorName": "*"
+        },
+        "VpcIngressConnection": {
+          "vpcIngressConnectionName": "*",
+          "service": {
+            "serviceName": "*",
+            "serviceArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "interfaceVpcEndpoint": {
+            "vpcEndpointId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          }
+        }
+      },
+      "@aws-cdk.aws-cloud9-alpha": {
+        "Ec2Environment": {
+          "owner": "*",
+          "instanceType": "*",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ec2EnvironmentName": "*",
+          "description": "*",
+          "clonedRepositories": "*",
+          "connectionType": "ConnectionType",
+          "imageId": "ImageId",
+          "automaticStop": "*"
+        }
+      },
+      "@aws-cdk.aws-codestar-alpha": {
+        "GitHubRepository": {
+          "owner": "*",
+          "repositoryName": "*",
+          "accessToken": "*",
+          "contentsBucket": "*",
+          "contentsKey": "*",
+          "contentsS3Version": "*",
+          "enableIssues": "boolean",
+          "visibility": "RepositoryVisibility",
+          "description": "*"
+        }
+      },
+      "@aws-cdk.aws-dsql-alpha": {
+        "Cluster": {}
+      },
+      "@aws-cdk.aws-ec2-alpha": {
+        "IpamPool": {
+          "ipamScopeId": "*",
+          "addressFamily": "AddressFamily",
+          "ipv4ProvisionedCidrs": "*",
+          "locale": "*",
+          "publicIpSource": "IpamPoolPublicIpSource",
+          "awsService": "AwsServiceName",
+          "ipamPoolName": "*",
+          "provisionCidr": [
+            "*",
+            {
+              "netmaskLength": "*",
+              "cidr": "*"
+            }
+          ]
+        },
+        "IpamScope": {
+          "ipamId": "*",
+          "ipamOperatingRegions": "*",
+          "ipamScopeId": "*",
+          "ipamScopeName": "*"
+        },
+        "Ipam": {
+          "addScope": [
+            "*",
+            "*",
+            {
+              "ipamScopeName": "*"
+            }
+          ]
+        },
+        "EgressOnlyInternetGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "egressOnlyInternetGatewayName": "*"
+        },
+        "InternetGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetGatewayName": "*"
+        },
+        "VPNGatewayV2": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "type": "VpnConnectionType",
+          "amazonSideAsn": "*",
+          "vpnGatewayName": "*",
+          "vpnRoutePropagation": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "NatGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnet": {
+            "ipv6CidrBlock": "*",
+            "subnetType": "SubnetType",
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "allocationId": "*",
+          "connectivityType": "NatConnectivityType",
+          "maxDrainDuration": "*",
+          "privateIpAddress": "*",
+          "secondaryAllocationIds": "*",
+          "secondaryPrivateIpAddressCount": "*",
+          "secondaryPrivateIpAddresses": "*",
+          "natGatewayName": "*"
+        },
+        "VPCPeeringConnection": {
+          "requestorVpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "acceptorVpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "peerRoleArn": "*",
+          "vpcPeeringConnectionName": "*"
+        },
+        "Route": {
+          "routeTable": {
+            "routeTableId": "*"
+          },
+          "destination": "*",
+          "target": "*",
+          "routeName": "*"
+        },
+        "RouteTable": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "routeTableName": "*",
+          "addRoute": [
+            "*",
+            "*",
+            "*",
+            "*"
+          ]
+        },
+        "SubnetV2": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv4CidrBlock": "*",
+          "ipv6CidrBlock": "*",
+          "availabilityZone": "*",
+          "routeTable": {
+            "routeTableId": "*"
+          },
+          "defaultRouteTableName": "*",
+          "subnetType": "SubnetType",
+          "subnetName": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "mapPublicIpOnLaunch": "boolean",
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "TransitGatewayRouteTableAssociation": {
+          "transitGatewayVpcAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteTableAssociationName": "*"
+        },
+        "TransitGatewayRouteTablePropagation": {
+          "transitGatewayVpcAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteTablePropagationName": "*"
+        },
+        "TransitGatewayRouteTable": {
+          "transitGateway": {
+            "transitGatewayId": "*",
+            "transitGatewayArn": "*",
+            "defaultRouteTable": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "routeTableId": "*"
+            },
+            "defaultRouteTableAssociation": "boolean",
+            "defaultRouteTablePropagation": "boolean",
+            "dnsSupport": "boolean",
+            "securityGroupReferencingSupport": "boolean",
+            "routerType": "RouterType",
+            "routerTargetId": "*"
+          },
+          "transitGatewayRouteTableName": "*"
+        },
+        "TransitGatewayRoute": {
+          "transitGatewayAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "destinationCidrBlock": "*",
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteName": "*"
+        },
+        "TransitGatewayBlackholeRoute": {
+          "destinationCidrBlock": "*",
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteName": "*"
+        },
+        "TransitGatewayVpcAttachment": {
+          "transitGateway": {
+            "transitGatewayId": "*",
+            "transitGatewayArn": "*",
+            "defaultRouteTable": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "routeTableId": "*"
+            },
+            "defaultRouteTableAssociation": "boolean",
+            "defaultRouteTablePropagation": "boolean",
+            "dnsSupport": "boolean",
+            "securityGroupReferencingSupport": "boolean",
+            "routerType": "RouterType",
+            "routerTargetId": "*"
+          },
+          "subnets": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcAttachmentOptions": {
+            "applianceModeSupport": "boolean",
+            "dnsSupport": "boolean",
+            "ipv6Support": "boolean",
+            "securityGroupReferencingSupport": "boolean"
+          },
+          "transitGatewayAttachmentName": "*"
+        },
+        "TransitGateway": {
+          "transitGatewayName": "*",
+          "amazonSideAsn": "*",
+          "autoAcceptSharedAttachments": "boolean",
+          "defaultRouteTableAssociation": "boolean",
+          "defaultRouteTablePropagation": "boolean",
+          "description": "*",
+          "dnsSupport": "boolean",
+          "securityGroupReferencingSupport": "boolean",
+          "transitGatewayCidrBlocks": "*"
+        },
+        "VpcV2": {
+          "primaryAddressBlock": "*",
+          "secondaryAddressBlocks": "*",
+          "enableDnsHostnames": "boolean",
+          "enableDnsSupport": "boolean",
+          "defaultInstanceTenancy": "DefaultInstanceTenancy",
+          "vpcName": "*"
+        },
+        "VPCCidrBlock": {
+          "vpcId": "*",
+          "amazonProvidedIpv6CidrBlock": "boolean",
+          "cidrBlock": "*",
+          "cidrBlockName": "*",
+          "ipv6NetmaskLength": "*",
+          "ipv4NetmaskLength": "*",
+          "ipv6IpamPoolId": "*",
+          "ipv4IpamPoolId": "*",
+          "ipv4IpamProvisionedCidrs": "*",
+          "ipv6CidrBlock": "*",
+          "ipv6Pool": "*"
+        }
+      },
+      "@aws-cdk.aws-elasticache-alpha": {
+        "IamUser": {
+          "userName": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*",
+          "grantConnect": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "NoPasswordUser": {
+          "userName": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*"
+        },
+        "PasswordUser": {
+          "userName": "*",
+          "passwords": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*"
+        },
+        "ServerlessCache": {
+          "engine": "*",
+          "serverlessCacheName": "*",
+          "description": "*",
+          "cacheUsageLimits": {
+            "dataStorageMinimumSize": "*",
+            "requestRateLimitMinimum": "*",
+            "requestRateLimitMaximum": "*"
+          },
+          "backup": {
+            "backupTime": "*",
+            "backupRetentionLimit": "*",
+            "backupNameBeforeDeletion": "*",
+            "backupArnsToRestore": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "userGroup": {
+            "userGroupName": "*",
+            "engine": "*",
+            "users": {
+              "userId": "*",
+              "userName": "*",
+              "userArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "userGroupArn": "*"
+          }
+        },
+        "UserGroup": {
+          "userGroupName": "*",
+          "engine": "*",
+          "users": {
+            "userId": "*",
+            "engine": "*",
+            "userName": "*",
+            "userArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addUser": [
+            {
+              "userId": "*",
+              "engine": "*",
+              "userName": "*",
+              "userArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-gamelift-alpha": {
+        "Alias": {
+          "aliasName": "*",
+          "description": "*",
+          "fleet": {
+            "fleetId": "*",
+            "fleetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "resourceArnForDestination": "*"
+          },
+          "terminalMessage": "*"
+        },
+        "BuildFleet": {
+          "content": {
+            "buildId": "*",
+            "buildArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "ingressRules": {
+            "port": "*",
+            "source": {
+              "uniqueId": "*"
+            }
+          },
+          "fleetName": "*",
+          "description": "*",
+          "useSpot": "boolean",
+          "useCertificate": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "peerVpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "metricGroup": "*",
+          "instanceType": "*",
+          "desiredCapacity": "*",
+          "minSize": "*",
+          "maxSize": "*",
+          "protectNewGameSession": "boolean",
+          "runtimeConfiguration": {
+            "gameSessionActivationTimeout": "*",
+            "maxConcurrentGameSessionActivations": "*",
+            "serverProcesses": {
+              "concurrentExecutions": "*",
+              "launchPath": "*",
+              "parameters": "*"
+            }
+          },
+          "locations": {
+            "region": "*",
+            "capacity": {
+              "desiredCapacity": "*",
+              "maxSize": "*",
+              "minSize": "*"
+            }
+          },
+          "resourceCreationLimitPolicy": {
+            "newGameSessionsPerCreator": "*",
+            "policyPeriod": "*"
+          },
+          "addIngressRule": [
+            {
+              "uniqueId": "*"
+            },
+            "*"
+          ]
+        },
+        "Build": {
+          "buildName": "*",
+          "buildVersion": "*",
+          "operatingSystem": "OperatingSystem",
+          "content": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serverSdkVersion": "*"
+        },
+        "GameServerGroup": {
+          "gameServerGroupName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minSize": "*",
+          "maxSize": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceDefinitions": {
+            "instanceType": "*",
+            "weight": "*"
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "protectGameServer": "boolean",
+          "autoScalingPolicy": {
+            "estimatedInstanceWarmup": "*",
+            "targetTrackingConfiguration": "*"
+          },
+          "deleteOption": "DeleteOption",
+          "balancingStrategy": "BalancingStrategy"
+        },
+        "GameSessionQueue": {
+          "gameSessionQueueName": "*",
+          "customEventData": "*",
+          "allowedLocations": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "playerLatencyPolicies": {
+            "maximumIndividualPlayerLatency": "*"
+          },
+          "priorityConfiguration": {
+            "locationOrder": "*",
+            "priorityOrder": "PriorityType"
+          },
+          "timeout": "*",
+          "destinations": {
+            "resourceArnForDestination": "*"
+          },
+          "addDestination": [
+            {
+              "resourceArnForDestination": "*"
+            }
+          ]
+        },
+        "MatchmakingRuleSet": {
+          "matchmakingRuleSetName": "*",
+          "content": "*"
+        },
+        "QueuedMatchmakingConfiguration": {
+          "additionalPlayerCount": "*",
+          "manualBackfillMode": "boolean",
+          "gameProperties": {
+            "key": "*",
+            "value": "*"
+          },
+          "gameSessionData": "*",
+          "gameSessionQueues": {
+            "gameSessionQueueName": "*",
+            "gameSessionQueueArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "matchmakingConfigurationName": "*",
+          "description": "*",
+          "requireAcceptance": "boolean",
+          "acceptanceTimeout": "*",
+          "customEventData": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "requestTimeout": "*",
+          "ruleSet": {
+            "matchmakingRuleSetName": "*",
+            "matchmakingRuleSetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addGameSessionQueue": [
+            {
+              "gameSessionQueueName": "*",
+              "gameSessionQueueArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Script": {
+          "scriptName": "*",
+          "scriptVersion": "*",
+          "content": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "StandaloneMatchmakingConfiguration": {
+          "matchmakingConfigurationName": "*",
+          "description": "*",
+          "requireAcceptance": "boolean",
+          "acceptanceTimeout": "*",
+          "customEventData": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "requestTimeout": "*",
+          "ruleSet": {
+            "matchmakingRuleSetName": "*",
+            "matchmakingRuleSetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-glue-alpha": {
+        "Catalog": {
+          "catalogName": "*",
+          "description": "*",
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "AccountCatalog": {
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "ImportedCatalog": {},
+        "Connection": {
+          "type": "*",
+          "connectionName": "*",
+          "description": "*",
+          "properties": "*",
+          "secret": "*",
+          "matchCriteria": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "network": "*",
+          "addProperty": [
+            "*",
+            "*"
+          ]
+        },
+        "DataQualityRuleset": {
+          "rulesetName": "*",
+          "description": "*",
+          "dqdl": "*",
+          "tags": "*",
+          "targetTable": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Database": {
+          "databaseName": "*",
+          "locationUri": "*",
+          "description": "*",
+          "catalog": {
+            "catalogId": "*",
+            "catalogArn": "*",
+            "encryptionKey": "*",
+            "connectionPasswordKey": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ExternalTable": {
+          "connection": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "externalDataLocation": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "S3Table": {
+          "storage": "*",
+          "s3Prefix": "*",
+          "clientSideEncryption": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "SecurityConfiguration": {
+          "securityConfigurationName": "*",
+          "cloudWatchEncryption": "*",
+          "jobBookmarksEncryption": "*",
+          "s3Encryption": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-imagebuilder-alpha": {
+        "Component": {
+          "data": "*",
+          "platform": "Platform",
+          "componentName": "*",
+          "componentVersion": "*",
+          "description": "*",
+          "changeDescription": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "supportedOsVersions": "*",
+          "tags": "*"
+        },
+        "ContainerRecipe": {
+          "baseImage": "*",
+          "targetRepository": "*",
+          "containerRecipeName": "*",
+          "containerRecipeVersion": "*",
+          "description": "*",
+          "dockerfile": "*",
+          "components": {
+            "component": {
+              "componentArn": "*",
+              "componentName": "*",
+              "componentVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "parameters": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workingDirectory": "*",
+          "osVersion": "*",
+          "instanceBlockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "instanceImage": "*",
+          "tags": "*",
+          "addInstanceBlockDevice": [
+            {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            }
+          ]
+        },
+        "DistributionConfiguration": {
+          "amiDistributions": {
+            "region": "*",
+            "amiTags": "*",
+            "amiDescription": "*",
+            "amiKmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "amiLaunchPermission": {
+              "organizationalUnitArns": "*",
+              "organizationArns": "*",
+              "isPublicUserGroup": "boolean",
+              "accountIds": "*"
+            },
+            "amiName": "*",
+            "amiTargetAccountIds": "*",
+            "ssmParameters": {
+              "amiAccount": "*",
+              "dataType": "ParameterDataType",
+              "parameter": {
+                "stringValue": "*",
+                "parameterArn": "*",
+                "parameterName": "*",
+                "parameterType": "*"
+              }
+            },
+            "launchTemplates": {
+              "launchTemplate": {
+                "versionNumber": "*",
+                "launchTemplateId": "*",
+                "launchTemplateName": "*"
+              },
+              "accountId": "*",
+              "setDefaultVersion": "boolean"
+            },
+            "fastLaunchConfigurations": {
+              "enabled": "boolean",
+              "maxParallelLaunches": "*",
+              "targetSnapshotCount": "*"
+            },
+            "licenseConfigurationArns": "*"
+          },
+          "containerDistributions": {
+            "region": "*",
+            "containerRepository": "*",
+            "containerDescription": "*",
+            "containerTags": "*"
+          },
+          "distributionConfigurationName": "*",
+          "description": "*",
+          "tags": "*",
+          "addAmiDistributions": [
+            {
+              "region": "*",
+              "amiTags": "*",
+              "amiDescription": "*",
+              "amiKmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "amiLaunchPermission": {
+                "organizationalUnitArns": "*",
+                "organizationArns": "*",
+                "isPublicUserGroup": "boolean",
+                "accountIds": "*"
+              },
+              "amiName": "*",
+              "amiTargetAccountIds": "*",
+              "ssmParameters": {
+                "amiAccount": "*",
+                "dataType": "ParameterDataType",
+                "parameter": {
+                  "stringValue": "*",
+                  "parameterArn": "*",
+                  "parameterName": "*",
+                  "parameterType": "*"
+                }
+              },
+              "launchTemplates": {
+                "launchTemplate": {
+                  "versionNumber": "*",
+                  "launchTemplateId": "*",
+                  "launchTemplateName": "*"
+                },
+                "accountId": "*",
+                "setDefaultVersion": "boolean"
+              },
+              "fastLaunchConfigurations": {
+                "enabled": "boolean",
+                "maxParallelLaunches": "*",
+                "targetSnapshotCount": "*"
+              },
+              "licenseConfigurationArns": "*"
+            }
+          ],
+          "addContainerDistributions": [
+            {
+              "region": "*",
+              "containerRepository": "*",
+              "containerDescription": "*",
+              "containerTags": "*"
+            }
+          ]
+        },
+        "ImagePipeline": {
+          "recipe": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imagePipelineName": "*",
+          "description": "*",
+          "schedule": {
+            "expression": "*",
+            "autoDisableFailureCount": "*",
+            "startCondition": "ScheduleStartCondition"
+          },
+          "status": "ImagePipelineStatus",
+          "infrastructureConfiguration": {
+            "infrastructureConfigurationArn": "*",
+            "infrastructureConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "distributionConfiguration": {
+            "distributionConfigurationArn": "*",
+            "distributionConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workflows": {
+            "workflow": {
+              "workflowArn": "*",
+              "workflowName": "*",
+              "workflowType": "*",
+              "workflowVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "onFailure": "WorkflowOnFailure",
+            "parallelGroup": "*",
+            "parameters": "*"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imagePipelineLogGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageLogGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageScanningEnabled": "boolean",
+          "imageScanningEcrRepository": {
+            "repositoryName": "*",
+            "repositoryArn": "*",
+            "repositoryUri": "*",
+            "registryUri": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imageScanningEcrTags": "*",
+          "enhancedImageMetadataEnabled": "boolean",
+          "imageTestsEnabled": "boolean",
+          "tags": "*",
+          "grantDefaultExecutionRolePermissions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ImageRecipe": {
+          "baseImage": "*",
+          "imageRecipeName": "*",
+          "imageRecipeVersion": "*",
+          "description": "*",
+          "components": {
+            "component": {
+              "componentArn": "*",
+              "componentName": "*",
+              "componentVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "parameters": "*"
+          },
+          "amiTags": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "workingDirectory": "*",
+          "uninstallSsmAgentAfterBuild": "boolean",
+          "userDataOverride": "*",
+          "tags": "*",
+          "addBlockDevice": [
+            {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            }
+          ]
+        },
+        "Image": {
+          "recipe": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "infrastructureConfiguration": {
+            "infrastructureConfigurationArn": "*",
+            "infrastructureConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "distributionConfiguration": {
+            "distributionConfigurationArn": "*",
+            "distributionConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workflows": {
+            "workflow": {
+              "workflowArn": "*",
+              "workflowName": "*",
+              "workflowType": "*",
+              "workflowVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "onFailure": "WorkflowOnFailure",
+            "parallelGroup": "*",
+            "parameters": "*"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageScanningEnabled": "boolean",
+          "imageScanningEcrRepository": {
+            "repositoryName": "*",
+            "repositoryArn": "*",
+            "repositoryUri": "*",
+            "registryUri": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imageScanningEcrTags": "*",
+          "enhancedImageMetadataEnabled": "boolean",
+          "imageTestsEnabled": "boolean",
+          "deletionExecutionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "grantDefaultExecutionRolePermissions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "InfrastructureConfiguration": {
+          "infrastructureConfigurationName": "*",
+          "description": "*",
+          "instanceTypes": "*",
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "terminateInstanceOnFailure": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "HttpTokens",
+          "notificationTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "logging": {
+            "s3Bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "s3KeyPrefix": "*"
+          },
+          "ec2InstanceAvailabilityZone": "*",
+          "ec2InstanceHostId": "*",
+          "ec2InstanceHostResourceGroupArn": "*",
+          "ec2InstanceTenancy": "Tenancy",
+          "resourceTags": "*",
+          "tags": "*",
+          "_bind": [
+            {
+              "isContainerBuild": "boolean"
+            }
+          ]
+        },
+        "LifecyclePolicy": {
+          "resourceType": "LifecyclePolicyResourceType",
+          "details": {
+            "action": {
+              "type": "LifecyclePolicyActionType",
+              "includeAmis": "boolean",
+              "includeContainers": "boolean",
+              "includeSnapshots": "boolean"
+            },
+            "filter": {
+              "ageFilter": {
+                "age": "*",
+                "retainAtLeast": "*"
+              },
+              "countFilter": {
+                "count": "*"
+              }
+            },
+            "exclusionRules": {
+              "imageExclusionRules": {
+                "tags": "*"
+              },
+              "amiExclusionRules": {
+                "isPublic": "boolean",
+                "regions": "*",
+                "sharedAccounts": "*",
+                "tags": "*"
+              }
+            }
+          },
+          "resourceSelection": {
+            "recipes": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "tags": "*"
+          },
+          "lifecyclePolicyName": "*",
+          "description": "*",
+          "status": "LifecyclePolicyStatus",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*"
+        },
+        "Workflow": {
+          "data": "*",
+          "workflowType": "WorkflowType",
+          "workflowName": "*",
+          "workflowVersion": "*",
+          "description": "*",
+          "changeDescription": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-iot-alpha": {
+        "AccountAuditConfiguration": {},
+        "Logging": {},
+        "ScheduledAudit": {
+          "auditChecks": "AuditCheck",
+          "accountAuditConfiguration": {
+            "accountId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dayOfWeek": "DayOfWeek",
+          "dayOfMonth": "*",
+          "frequency": "Frequency",
+          "scheduledAuditName": "*"
+        },
+        "TopicRule": {
+          "topicRuleName": "*",
+          "actions": "*",
+          "description": "*",
+          "errorAction": "*",
+          "enabled": "boolean",
+          "sql": "*",
+          "addAction": [
+            "*"
+          ]
+        }
+      },
+      "@aws-cdk.aws-iotevents-alpha": {
+        "DetectorModel": {
+          "detectorModelName": "*",
+          "description": "*",
+          "evaluationMethod": "EventEvaluation",
+          "detectorKey": "*",
+          "initialState": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Input": {
+          "inputName": "*",
+          "attributeJsonPaths": "*"
+        }
+      },
+      "@aws-cdk.aws-ivs-alpha": {
+        "Channel": {
+          "authorized": "boolean",
+          "containerFormat": "ContainerFormat",
+          "insecureIngest": "boolean",
+          "latencyMode": "LatencyMode",
+          "channelName": "*",
+          "multitrackInputConfiguration": {
+            "maximumResolution": "MaximumResolution",
+            "policy": "Policy"
+          },
+          "type": "ChannelType",
+          "preset": "Preset",
+          "recordingConfiguration": {
+            "recordingConfigurationId": "*",
+            "recordingConfigurationArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "PlaybackKeyPair": {
+          "publicKeyMaterial": "*",
+          "playbackKeyPairName": "*"
+        },
+        "RecordingConfiguration": {
+          "bucket": "*",
+          "recordingConfigurationName": "*",
+          "recordingReconnectWindow": "*",
+          "renditionConfiguration": "*",
+          "thumbnailConfiguration": "*"
+        },
+        "StreamKey": {
+          "channel": {
+            "channelArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-kinesisanalytics-flink-alpha": {
+        "Import": {
+          "applicationArn": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        },
+        "Application": {
+          "applicationName": "*",
+          "runtime": "*",
+          "code": "*",
+          "checkpointingEnabled": "boolean",
+          "checkpointInterval": "*",
+          "minPauseBetweenCheckpoints": "*",
+          "logLevel": "LogLevel",
+          "metricsLevel": "MetricsLevel",
+          "autoScalingEnabled": "boolean",
+          "parallelism": "*",
+          "parallelismPerKpu": "*",
+          "snapshotsEnabled": "boolean",
+          "propertyGroups": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "logGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        }
+      },
+      "@aws-cdk.aws-lambda-go-alpha": {
+        "GoFunction": {
+          "entry": "*",
+          "runtime": "*",
+          "moduleDir": "*",
+          "bundling": {
+            "forcedDockerBundling": "boolean",
+            "dockerImage": "*",
+            "goBuildFlags": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "cgoEnabled": "boolean",
+            "goProxies": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        }
+      },
+      "@aws-cdk.aws-lambda-python-alpha": {
+        "PythonFunction": {
+          "entry": "*",
+          "runtime": "*",
+          "index": "*",
+          "handler": "*",
+          "bundling": {
+            "poetryIncludeHashes": "boolean",
+            "poetryWithoutUrls": "boolean",
+            "assetExcludes": "*",
+            "outputPathSuffix": "*",
+            "image": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "PythonLayerVersion": {
+          "entry": "*",
+          "compatibleRuntimes": "*",
+          "compatibleArchitectures": "*",
+          "bundling": {
+            "poetryIncludeHashes": "boolean",
+            "poetryWithoutUrls": "boolean",
+            "assetExcludes": "*",
+            "outputPathSuffix": "*",
+            "image": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "license": "*",
+          "layerVersionName": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-location-alpha": {
+        "ApiKey": {
+          "apiKeyName": "*",
+          "description": "*",
+          "expireTime": "*",
+          "forceDelete": "boolean",
+          "forceUpdate": "boolean",
+          "noExpiry": "boolean",
+          "allowMapsActions": "AllowMapsAction",
+          "allowPlacesActions": "AllowPlacesAction",
+          "allowRoutesActions": "AllowRoutesAction",
+          "allowReferers": "*"
+        },
+        "GeofenceCollection": {
+          "geofenceCollectionName": "*",
+          "description": "*",
+          "kmsKey": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Map": {
+          "mapName": "*",
+          "description": "*",
+          "style": "Style",
+          "customLayers": "CustomLayer",
+          "politicalView": "PoliticalView",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRendering": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "PlaceIndex": {
+          "placeIndexName": "*",
+          "dataSource": "DataSource",
+          "intendedUse": "IntendedUse",
+          "description": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantSearch": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "RouteCalculator": {
+          "routeCalculatorName": "*",
+          "dataSource": "DataSource",
+          "description": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Tracker": {
+          "trackerName": "*",
+          "description": "*",
+          "eventBridgeEnabled": "boolean",
+          "kmsKey": "*",
+          "kmsKeyEnableGeospatialQueries": "boolean",
+          "positionFiltering": "PositionFiltering",
+          "geofenceCollections": {
+            "geofenceCollectionName": "*",
+            "geofenceCollectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addGeofenceCollections": [
+            {
+              "geofenceCollectionName": "*",
+              "geofenceCollectionArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantUpdateDevicePositions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-mediaconnect-alpha": {
+        "BridgeOutput": {
+          "bridgeOutputName": "*",
+          "bridge": {
+            "bridgeArn": "*",
+            "bridgeName": "*",
+            "bridgeType": "*",
+            "bridgeState": "*",
+            "isFailoverEnabled": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "output": "*"
+        },
+        "BridgeSource": {
+          "bridgeSourceName": "*",
+          "bridge": {
+            "bridgeArn": "*",
+            "bridgeName": "*",
+            "bridgeType": "*",
+            "bridgeState": "*",
+            "isFailoverEnabled": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "source": "*"
+        },
+        "Bridge": {
+          "bridgeName": "*",
+          "config": "*",
+          "gateway": {
+            "gatewayArn": "*",
+            "gatewayState": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "sourceFailoverConfig": "*"
+        },
+        "FlowEntitlement": {
+          "flowEntitlementName": "*",
+          "dataTransferSubscriberFeePercent": "*",
+          "description": "*",
+          "encryption": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secret": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "algorithm": "*"
+          },
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subscribers": "*",
+          "entitlementStatus": "EntitlementStatus"
+        },
+        "FlowOutput": {
+          "flowOutputName": "*",
+          "description": "*",
+          "outputStatus": "State",
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "output": "*"
+        },
+        "FlowSource": {
+          "source": "*",
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Flow": {
+          "flowName": "*",
+          "availabilityZone": "*",
+          "flowSize": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "mediaStreams": "*",
+          "ndiConfig": {
+            "machineName": "*",
+            "ndiDiscoveryServers": {
+              "discoveryServerAddress": "*",
+              "discoveryServerPort": "*",
+              "vpcInterface": {
+                "name": "*",
+                "networkInterfaceIds": "*",
+                "networkInterfaceType": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "securityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                },
+                "subnet": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              }
+            },
+            "ndiState": "State"
+          },
+          "encodingConfig": {
+            "encodingProfile": "EncodingProfile",
+            "videoMaxBitrate": "*"
+          },
+          "source": "*",
+          "sourceFailoverConfig": "*",
+          "sourceMonitoringConfig": {
+            "contentQualityAnalysisState": "State",
+            "thumbnailState": "State",
+            "silentAudio": {
+              "state": "State",
+              "threshold": "*"
+            }
+          },
+          "vpcInterfaces": {
+            "name": "*",
+            "networkInterfaceIds": "*",
+            "networkInterfaceType": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "subnet": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            }
+          },
+          "addVpcInterface": [
+            {
+              "name": "*",
+              "networkInterfaceIds": "*",
+              "networkInterfaceType": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              },
+              "subnet": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              }
+            }
+          ]
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "egressCidrBlocks": "*",
+          "networks": "*",
+          "addNetwork": [
+            "*"
+          ]
+        },
+        "RouterInput": {
+          "routerInputName": "*",
+          "maximumBitrate": "*",
+          "routingScope": "*",
+          "tier": "*",
+          "configuration": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "regionName": "*",
+          "tags": "*",
+          "transitEncryption": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secret": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            }
+          }
+        },
+        "RouterNetworkInterface": {
+          "routerNetworkInterfaceName": "*",
+          "configuration": "*",
+          "regionName": "*",
+          "tags": "*"
+        },
+        "RouterOutput": {
+          "routerOutputName": "*",
+          "maximumBitrate": "*",
+          "routingScope": "*",
+          "tier": "*",
+          "configuration": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "regionName": "*",
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-medialive-alpha": {
+        "ChannelPlacementGroup": {
+          "channelPlacementGroupName": "*",
+          "cluster": "*",
+          "nodes": "*",
+          "tags": "*"
+        },
+        "Channel": {
+          "channelName": "*",
+          "channelClass": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "inputs": {
+            "input": {
+              "inputArn": "*",
+              "inputId": "*",
+              "inputClass": "*",
+              "inputType": "*",
+              "inputDestinations": "*",
+              "inputSources": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "inputAttachmentName": "*",
+            "sourceEndBehavior": "*",
+            "inputFilter": "*",
+            "filterStrength": "*",
+            "deblockFilter": "boolean",
+            "denoiseFilter": "boolean",
+            "smpte2038DataPreference": "*",
+            "audioSelectors": "*",
+            "captionSelectors": "*",
+            "scte35Pid": "*",
+            "videoSelector": {
+              "colorSpace": "*",
+              "colorSpaceUsage": "*",
+              "hdr10": {
+                "maxContentLightLevel": "*",
+                "maxFrameAverageLightLevel": "*"
+              },
+              "selectBy": "*"
+            },
+            "networkInputSettings": {
+              "serverValidation": "*",
+              "hlsInputSettings": {
+                "bandwidth": "*",
+                "bufferSegments": "*",
+                "retries": "*",
+                "retryInterval": "*",
+                "scte35Source": "*"
+              },
+              "multicastSourceIp": "*"
+            },
+            "logicalInterfaceNames": "*",
+            "automaticInputFailover": {
+              "failoverConditions": "*",
+              "inputPreference": "*"
+            }
+          },
+          "outputGroups": "*",
+          "logLevel": "*",
+          "inputSpecification": "*",
+          "globalConfiguration": {
+            "initialAudioGain": "*",
+            "inputEndAction": "*",
+            "outputTimingSource": "*",
+            "supportLowFramerateInputs": "boolean",
+            "inputLossBehavior": {
+              "blackFrame": "*",
+              "imageType": "*",
+              "imageColor": "*",
+              "imageSlate": "*"
+            },
+            "outputLocking": "*"
+          },
+          "tags": "*",
+          "maintenance": {
+            "day": "*",
+            "time": "*"
+          },
+          "timecodeConfig": {
+            "source": "*",
+            "syncThreshold": "*"
+          },
+          "vpc": {
+            "subnets": "*",
+            "securityGroups": "*",
+            "publicAddressAllocationIds": "*"
+          },
+          "availBlanking": {
+            "state": "*",
+            "image": "*"
+          },
+          "availSettings": "*",
+          "scte35SegmentationScope": "*",
+          "featureActivations": {
+            "inputPrepareScheduleActions": "*"
+          },
+          "motionGraphicsConfiguration": {
+            "motionGraphicsInsertion": "*"
+          },
+          "nielsenConfiguration": {
+            "distributorId": "*",
+            "nielsenPcmToId3Tagging": "*"
+          },
+          "thumbnailConfiguration": {
+            "state": "*"
+          },
+          "blackoutSlate": {
+            "state": "*",
+            "image": "*",
+            "networkEndBlackout": "*",
+            "networkId": "*"
+          },
+          "colorCorrections": {
+            "inputColorSpace": "*",
+            "lut": "*"
+          },
+          "anywhereSettings": {
+            "cluster": "*",
+            "channelPlacementGroup": "*"
+          },
+          "channelEngineVersion": "*",
+          "linkedChannelSettings": "*",
+          "channelSecurityGroups": "*",
+          "inferenceFeedArn": "*",
+          "addInput": [
+            {
+              "input": {
+                "inputArn": "*",
+                "inputId": "*",
+                "inputClass": "*",
+                "inputType": "*",
+                "inputDestinations": "*",
+                "inputSources": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "inputAttachmentName": "*",
+              "sourceEndBehavior": "*",
+              "inputFilter": "*",
+              "filterStrength": "*",
+              "deblockFilter": "boolean",
+              "denoiseFilter": "boolean",
+              "smpte2038DataPreference": "*",
+              "audioSelectors": "*",
+              "captionSelectors": "*",
+              "scte35Pid": "*",
+              "videoSelector": {
+                "colorSpace": "*",
+                "colorSpaceUsage": "*",
+                "hdr10": {
+                  "maxContentLightLevel": "*",
+                  "maxFrameAverageLightLevel": "*"
+                },
+                "selectBy": "*"
+              },
+              "networkInputSettings": {
+                "serverValidation": "*",
+                "hlsInputSettings": {
+                  "bandwidth": "*",
+                  "bufferSegments": "*",
+                  "retries": "*",
+                  "retryInterval": "*",
+                  "scte35Source": "*"
+                },
+                "multicastSourceIp": "*"
+              },
+              "logicalInterfaceNames": "*",
+              "automaticInputFailover": {
+                "failoverConditions": "*",
+                "inputPreference": "*"
+              }
+            }
+          ],
+          "addOutputGroup": [
+            "*"
+          ]
+        },
+        "Cluster": {
+          "clusterName": "*",
+          "clusterType": "*",
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkSettings": {
+            "defaultRoute": "*",
+            "interfaceMappings": {
+              "logicalInterfaceName": "*",
+              "networkId": "*"
+            }
+          },
+          "tags": "*"
+        },
+        "InputSecurityGroup": {
+          "allowlistRules": "*",
+          "tags": "*"
+        },
+        "Input": {
+          "inputName": "*",
+          "input": "*",
+          "inputNetworkLocation": "*",
+          "tags": "*",
+          "_grantPermissions": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Network": {
+          "networkName": "*",
+          "ipPools": "*",
+          "routes": {
+            "cidr": "*",
+            "gateway": "*"
+          },
+          "tags": "*"
+        },
+        "SdiSource": {
+          "sdiSourceName": "*",
+          "type": "*",
+          "mode": "*",
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-mediapackagev2-alpha": {
+        "ChannelPolicy": {
+          "channel": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "channelArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "ingestEndpointUrls": "*",
+            "channelGroup": {
+              "channelGroupName": "*",
+              "channelGroupArn": "*",
+              "egressDomain": "*",
+              "createdAt": "*",
+              "modifiedAt": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "region": "*",
+            "grants": "*"
+          },
+          "policyDocument": "*"
+        },
+        "Channel": {
+          "channelGroup": {
+            "channelGroupName": "*",
+            "channelGroupArn": "*",
+            "egressDomain": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "channelName": "*",
+          "input": "*",
+          "description": "*",
+          "tags": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OriginEndpoint": {
+          "channel": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "channelArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "ingestEndpointUrls": "*",
+            "channelGroup": {
+              "channelGroupName": "*",
+              "channelGroupArn": "*",
+              "egressDomain": "*",
+              "createdAt": "*",
+              "modifiedAt": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "region": "*",
+            "grants": "*"
+          },
+          "originEndpointName": "*",
+          "description": "*",
+          "tags": "*",
+          "manifests": "*",
+          "startoverWindow": "*",
+          "segment": {
+            "containerType": "ContainerType",
+            "includeIframeOnlyStreams": "boolean",
+            "scteFilter": "ScteMessageType",
+            "scteInSegments": "ScteInSegments",
+            "segmentDuration": "*",
+            "segmentName": "*",
+            "tsIncludeDvbSubtitles": "boolean",
+            "tsUseAudioRenditionGroup": "boolean",
+            "encryption": "*"
+          },
+          "forceEndpointConfigurationConditions": "EndpointErrorConfiguration",
+          "cdnAuth": {
+            "secrets": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ChannelGroup": {},
+        "OriginEndpointPolicy": {
+          "originEndpoint": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "originEndpointName": "*",
+            "originEndpointArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "hlsManifestUrls": "*",
+            "lowLatencyHlsManifestUrls": "*",
+            "dashManifestUrls": "*",
+            "mssManifestUrls": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "policyDocument": "*",
+          "cdnAuth": {
+            "secrets": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-msk-alpha": {
+        "Cluster": {
+          "clusterName": "*",
+          "kafkaVersion": "*",
+          "numberOfBrokerNodes": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceType": "*",
+          "brokerType": "BrokerType",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ebsStorageInfo": {
+            "volumeSize": "*",
+            "encryptionKey": "*"
+          },
+          "storageMode": "StorageMode",
+          "configurationInfo": {
+            "arn": "*",
+            "revision": "*"
+          },
+          "monitoring": {
+            "clusterMonitoringLevel": "ClusterMonitoringLevel",
+            "enablePrometheusJmxExporter": "boolean",
+            "enablePrometheusNodeExporter": "boolean"
+          },
+          "logging": {
+            "firehoseDeliveryStreamName": "*",
+            "cloudwatchLogGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "s3": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*"
+            }
+          },
+          "encryptionInTransit": {
+            "clientBroker": "ClientBrokerEncryption",
+            "enableInCluster": "boolean"
+          },
+          "clientAuthentication": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addUser": [
+            "*"
+          ]
+        },
+        "ServerlessCluster": {
+          "clusterName": "*",
+          "vpcConfigs": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-neptune-alpha": {
+        "DatabaseCluster": {
+          "engineVersion": "*",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "kmsKey": "*",
+          "storageEncrypted": "boolean",
+          "instances": "*",
+          "dbClusterName": "*",
+          "iamAuthentication": "boolean",
+          "instanceIdentifierBase": "*",
+          "instanceType": "*",
+          "associatedRoles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "clusterParameterGroup": {
+            "clusterParameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameterGroup": {
+            "parameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": {
+            "subnetGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "autoMinorVersionUpgrade": "boolean",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serverlessScalingConfiguration": {
+            "minCapacity": "*",
+            "maxCapacity": "*"
+          },
+          "copyTagsToSnapshot": "boolean",
+          "port": "*"
+        },
+        "DatabaseInstance": {
+          "cluster": {
+            "clusterIdentifier": "*",
+            "clusterResourceIdentifier": "*",
+            "clusterEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "availabilityZone": "*",
+          "dbInstanceName": "*",
+          "parameterGroup": {
+            "parameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "autoMinorVersionUpgrade": "boolean"
+        },
+        "ClusterParameterGroup": {
+          "clusterParameterGroupName": "*",
+          "description": "*",
+          "parameters": "*",
+          "family": "*"
+        },
+        "ParameterGroup": {
+          "parameterGroupName": "*",
+          "description": "*",
+          "parameters": "*",
+          "family": "*"
+        },
+        "SubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetGroupName": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-pipes-alpha": {
+        "ImportedPipe": {},
+        "Pipe": {
+          "source": {
+            "sourceArn": "*"
+          },
+          "filter": {
+            "filters": {
+              "pattern": "*"
+            }
+          },
+          "enrichment": {
+            "enrichmentArn": "*"
+          },
+          "target": {
+            "targetArn": "*"
+          },
+          "pipeName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logDestinations": "*",
+          "logLevel": "LogLevel",
+          "logIncludeExecutionData": "IncludeExecutionData",
+          "description": "*",
+          "desiredState": "DesiredState",
+          "tags": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-redshift-alpha": {
+        "Cluster": {
+          "clusterName": "*",
+          "parameterGroup": {
+            "clusterParameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "numberOfNodes": "*",
+          "nodeType": "NodeType",
+          "clusterType": "ClusterType",
+          "port": "*",
+          "encrypted": "boolean",
+          "encryptionKey": "*",
+          "preferredMaintenanceWindow": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "subnetGroup": {
+            "clusterSubnetGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "masterUser": {
+            "masterUsername": "*",
+            "masterPassword": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "excludeCharacters": "*"
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultDatabaseName": "*",
+          "logging": "*",
+          "removalPolicy": "RemovalPolicy",
+          "publiclyAccessible": "boolean",
+          "classicResizing": "boolean",
+          "elasticIp": "*",
+          "rebootForParameterChanges": "boolean",
+          "enhancedVpcRouting": "boolean",
+          "multiAz": "boolean",
+          "resourceAction": "ResourceAction",
+          "availabilityZoneRelocation": "boolean",
+          "maintenanceTrackName": "MaintenanceTrackName",
+          "addRotationSingleUser": [
+            "*"
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*"
+            }
+          ],
+          "addToParameterGroup": [
+            "*",
+            "*"
+          ],
+          "enableRebootForParameterChanges": [],
+          "addDefaultIamRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addIamRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "excludeCharacters": "*"
+        },
+        "ClusterParameterGroup": {
+          "description": "*",
+          "parameters": "*",
+          "addParameter": [
+            "*",
+            "*"
+          ]
+        },
+        "ClusterSubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-route53resolver-alpha": {
+        "FirewallDomainList": {
+          "name": "*",
+          "domains": "*"
+        },
+        "FirewallRuleGroupAssociation": {
+          "firewallRuleGroup": {
+            "firewallRuleGroupId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mutationProtection": "boolean",
+          "name": "*",
+          "priority": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          }
+        },
+        "FirewallRuleGroup": {
+          "name": "*",
+          "rules": {
+            "action": "*",
+            "firewallDomainList": {
+              "firewallDomainListId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "priority": "*"
+          },
+          "addRule": [
+            {
+              "action": "*",
+              "firewallDomainList": {
+                "firewallDomainListId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "priority": "*"
+            }
+          ],
+          "associate": [
+            "*",
+            {
+              "mutationProtection": "boolean",
+              "name": "*",
+              "priority": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-s3objectlambda-alpha": {
+        "AccessPoint": {
+          "bucket": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "accessPointName": "*",
+          "cloudWatchMetricsEnabled": "boolean",
+          "supportsGetObjectRange": "boolean",
+          "supportsGetObjectPartNumber": "boolean",
+          "payload": "*"
+        }
+      },
+      "@aws-cdk.aws-s3tables-alpha": {
+        "Namespace": {
+          "namespaceName": "*",
+          "tableBucket": {
+            "tableBucketArn": "*",
+            "tableBucketName": "*",
+            "account": "*",
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "TableBucketPolicy": {
+          "tableBucket": {
+            "tableBucketArn": "*",
+            "tableBucketName": "*",
+            "account": "*",
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "resourcePolicy": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "TableBucket": {
+          "tableBucketName": "*",
+          "unreferencedFileRemoval": {
+            "noncurrentDays": "*",
+            "status": "UnreferencedFileRemovalStatus",
+            "unreferencedDays": "*"
+          },
+          "region": "*",
+          "account": "*",
+          "encryption": "TableBucketEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "requestMetricsStatus": "RequestMetricsStatus",
+          "storageClass": "StorageClass"
+        },
+        "TablePolicy": {
+          "table": {
+            "tableArn": "*",
+            "tableName": "*",
+            "account": "*",
+            "region": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "resourcePolicy": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Table": {
+          "tableName": "*",
+          "namespace": {
+            "namespaceName": "*",
+            "tableBucket": {
+              "tableBucketArn": "*",
+              "tableBucketName": "*",
+              "account": "*",
+              "region": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          },
+          "openTableFormat": "OpenTableFormat",
+          "compaction": {
+            "status": "Status",
+            "targetFileSizeMb": "*"
+          },
+          "icebergMetadata": {
+            "icebergSchema": {
+              "schemaFieldList": {
+                "id": "*",
+                "name": "*",
+                "required": "boolean",
+                "type": "*"
+              }
+            },
+            "icebergPartitionSpec": {
+              "fields": {
+                "sourceId": "*",
+                "transform": "*",
+                "name": "*",
+                "fieldId": "*"
+              },
+              "specId": "*"
+            },
+            "icebergSortOrder": {
+              "fields": {
+                "sourceId": "*",
+                "direction": "SortDirection",
+                "nullOrder": "NullOrder"
+              },
+              "orderId": "*"
+            },
+            "tableProperties": {
+              "key": "*",
+              "value": "*"
+            }
+          },
+          "snapshotManagement": {
+            "maxSnapshotAgeHours": "*",
+            "minSnapshotsToKeep": "*",
+            "status": "Status"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "withoutMetadata": "boolean",
+          "storageClass": "StorageClass"
+        }
+      },
+      "@aws-cdk.aws-sagemaker-alpha": {
+        "EndpointConfig": {
+          "endpointConfigName": "*",
+          "encryptionKey": "*",
+          "instanceProductionVariants": {
+            "acceleratorType": "*",
+            "initialInstanceCount": "*",
+            "instanceType": "*",
+            "containerStartupHealthCheckTimeout": "*",
+            "initialVariantWeight": "*",
+            "model": {
+              "modelArn": "*",
+              "modelName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "connections": "*"
+            },
+            "variantName": "*"
+          },
+          "serverlessProductionVariant": {
+            "maxConcurrency": "*",
+            "memorySizeInMB": "*",
+            "provisionedConcurrency": "*",
+            "initialVariantWeight": "*",
+            "model": {
+              "modelArn": "*",
+              "modelName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "connections": "*"
+            },
+            "variantName": "*"
+          },
+          "addInstanceProductionVariant": [
+            {
+              "acceleratorType": "*",
+              "initialInstanceCount": "*",
+              "instanceType": "*",
+              "containerStartupHealthCheckTimeout": "*",
+              "initialVariantWeight": "*",
+              "model": {
+                "modelArn": "*",
+                "modelName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "connections": "*"
+              },
+              "variantName": "*"
+            }
+          ],
+          "addServerlessProductionVariant": [
+            {
+              "maxConcurrency": "*",
+              "memorySizeInMB": "*",
+              "provisionedConcurrency": "*",
+              "initialVariantWeight": "*",
+              "model": {
+                "modelArn": "*",
+                "modelName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "connections": "*"
+              },
+              "variantName": "*"
+            }
+          ],
+          "_findInstanceProductionVariant": [
+            "*"
+          ]
+        },
+        "Endpoint": {
+          "endpointName": "*",
+          "endpointConfig": {
+            "endpointConfigArn": "*",
+            "endpointConfigName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "findInstanceProductionVariant": [
+            "*"
+          ]
+        },
+        "Model": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "modelName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "containers": {
+            "image": "*",
+            "environment": "*",
+            "containerHostname": "*",
+            "modelData": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "networkIsolation": "boolean",
+          "addContainer": [
+            {
+              "image": "*",
+              "environment": "*",
+              "containerHostname": "*",
+              "modelData": "*"
+            }
+          ]
+        },
+        "Pipeline": {
+          "grantStartPipelineExecution": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-servicecatalogappregistry-alpha": {
+        "Application": {
+          "applicationName": "*",
+          "description": "*"
+        },
+        "AttributeGroup": {
+          "attributeGroupName": "*",
+          "description": "*",
+          "attributes": "*"
+        }
+      },
+      "@aws-cdk.example-construct-library": {
+        "ExampleResource": {
+          "waitConditionHandleName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-apigateway": {
+        "ApiKey": {
+          "resources": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "stages": {
+            "stageName": "*",
+            "restApi": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "RateLimitedApiKey": {
+          "apiStages": {
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "throttle": {
+              "method": "*",
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              }
+            }
+          },
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "resources": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "stages": {
+            "stageName": "*",
+            "restApi": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "BasePathMapping": {
+          "domainName": "*",
+          "restApi": "*",
+          "basePath": "*",
+          "stage": "*",
+          "attachToStage": "boolean"
+        },
+        "Deployment": {
+          "api": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "description": "*",
+          "retainDeployments": "boolean",
+          "stageName": "*",
+          "addToLogicalId": [
+            "*"
+          ],
+          "_addMethodDependency": [
+            "*"
+          ]
+        },
+        "DomainName": {
+          "mapping": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "domainName": "*",
+          "certificate": "*",
+          "endpointType": "EndpointType",
+          "securityPolicy": "SecurityPolicy",
+          "endpointAccessMode": "EndpointAccessMode",
+          "mtls": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "key": "*",
+            "version": "*"
+          },
+          "basePath": "*",
+          "addBasePathMapping": [
+            "*",
+            {
+              "basePath": "*",
+              "stage": "*",
+              "attachToStage": "boolean"
+            }
+          ],
+          "addApiMapping": [
+            "*",
+            {
+              "basePath": "*"
+            }
+          ]
+        },
+        "GatewayResponse": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "type": "*",
+          "statusCode": "*",
+          "responseHeaders": "*",
+          "templates": "*"
+        },
+        "LambdaRestApi": {
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "integrationOptions": {
+            "proxy": "boolean",
+            "allowTestInvoke": "boolean",
+            "scopePermissionToMethod": "boolean",
+            "cacheKeyParameters": "*",
+            "cacheNamespace": "*",
+            "contentHandling": "ContentHandling",
+            "credentialsRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "credentialsPassthrough": "boolean",
+            "passthroughBehavior": "PassthroughBehavior",
+            "requestParameters": "*",
+            "requestTemplates": "*",
+            "timeout": "*",
+            "integrationResponses": {
+              "selectionPattern": "*",
+              "statusCode": "*",
+              "contentHandling": "ContentHandling",
+              "responseParameters": "*",
+              "responseTemplates": "*"
+            },
+            "connectionType": "ConnectionType",
+            "vpcLink": {
+              "vpcLinkId": "*"
+            },
+            "responseTransferMode": "ResponseTransferMode"
+          },
+          "proxy": "boolean",
+          "options": {
+            "binaryMediaTypes": "*",
+            "minimumCompressionSize": "*",
+            "minCompressionSize": "*",
+            "cloneFrom": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "apiKeySourceType": "ApiKeySourceType",
+            "deploy": "boolean",
+            "deployOptions": {
+              "stageName": "*",
+              "accessLogDestination": "*",
+              "accessLogFormat": "*",
+              "tracingEnabled": "boolean",
+              "cacheClusterEnabled": "boolean",
+              "cacheClusterSize": "*",
+              "clientCertificateId": "*",
+              "description": "*",
+              "documentationVersion": "*",
+              "variables": "*",
+              "methodOptions": "*",
+              "metricsEnabled": "boolean",
+              "loggingLevel": "MethodLoggingLevel",
+              "dataTraceEnabled": "boolean",
+              "throttlingBurstLimit": "*",
+              "throttlingRateLimit": "*",
+              "cachingEnabled": "boolean",
+              "cacheDataEncrypted": "boolean"
+            },
+            "retainDeployments": "boolean",
+            "restApiName": "*",
+            "parameters": "*",
+            "policy": "*",
+            "failOnWarnings": "boolean",
+            "domainName": {
+              "domainName": "*",
+              "certificate": "*",
+              "endpointType": "EndpointType",
+              "securityPolicy": "SecurityPolicy",
+              "endpointAccessMode": "EndpointAccessMode",
+              "mtls": {
+                "bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "encryptionKey": {
+                    "keyArn": "*",
+                    "keyId": "*"
+                  },
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "key": "*",
+                "version": "*"
+              },
+              "basePath": "*"
+            },
+            "cloudWatchRole": "boolean",
+            "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+            "endpointExportName": "*",
+            "endpointTypes": "EndpointType",
+            "endpointConfiguration": {
+              "types": "EndpointType",
+              "vpcEndpoints": {
+                "vpcEndpointId": "*"
+              },
+              "ipAddressType": "IpAddressType"
+            },
+            "disableExecuteApiEndpoint": "boolean",
+            "description": "*"
+          },
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "Method": {
+          "resource": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "httpMethod": "*",
+          "integration": "*",
+          "options": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "addMethodResponse": [
+            {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricClientError": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricServerError": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheHitCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheMissCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIntegrationLatency": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricLatency": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "grantExecute": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Model": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "contentType": "*",
+          "description": "*",
+          "modelName": "*",
+          "schema": {
+            "schema": "JsonSchemaVersion",
+            "id": "*",
+            "ref": "*",
+            "type": "JsonSchemaType",
+            "title": "*",
+            "description": "*",
+            "enum": "*",
+            "default": "*",
+            "format": "*",
+            "definitions": "*",
+            "multipleOf": "*",
+            "maximum": "*",
+            "exclusiveMaximum": "boolean",
+            "minimum": "*",
+            "exclusiveMinimum": "boolean",
+            "maxLength": "*",
+            "minLength": "*",
+            "pattern": "*",
+            "additionalItems": "boolean",
+            "maxItems": "*",
+            "minItems": "*",
+            "uniqueItems": "boolean",
+            "maxProperties": "*",
+            "minProperties": "*",
+            "required": "*",
+            "properties": "*",
+            "additionalProperties": "boolean",
+            "patternProperties": "*",
+            "dependencies": "*"
+          }
+        },
+        "RequestValidator": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "requestValidatorName": "*",
+          "validateRequestBody": "boolean",
+          "validateRequestParameters": "boolean"
+        },
+        "Resource": {
+          "parent": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "pathPart": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "ProxyResource": {
+          "parent": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "anyMethod": "boolean",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          },
+          "addMethod": [
+            "*",
+            "*",
+            {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            }
+          ]
+        },
+        "SpecRestApi": {
+          "apiDefinition": "*",
+          "binaryMediaTypes": "*",
+          "minCompressionSize": "*",
+          "mode": "RestApiMode",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "RestApi": {
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          },
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addModel": [
+            "*",
+            {
+              "contentType": "*",
+              "description": "*",
+              "modelName": "*",
+              "schema": {
+                "schema": "JsonSchemaVersion",
+                "id": "*",
+                "ref": "*",
+                "type": "JsonSchemaType",
+                "title": "*",
+                "description": "*",
+                "enum": "*",
+                "default": "*",
+                "format": "*",
+                "definitions": "*",
+                "multipleOf": "*",
+                "maximum": "*",
+                "exclusiveMaximum": "boolean",
+                "minimum": "*",
+                "exclusiveMinimum": "boolean",
+                "maxLength": "*",
+                "minLength": "*",
+                "pattern": "*",
+                "additionalItems": "boolean",
+                "maxItems": "*",
+                "minItems": "*",
+                "uniqueItems": "boolean",
+                "maxProperties": "*",
+                "minProperties": "*",
+                "required": "*",
+                "properties": "*",
+                "additionalProperties": "boolean",
+                "patternProperties": "*",
+                "dependencies": "*"
+              }
+            }
+          ],
+          "addRequestValidator": [
+            "*",
+            {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          ],
+          "_attachMethod": [
+            "*"
+          ],
+          "_attachDeployment": [
+            "*"
+          ]
+        },
+        "RootResource": {},
+        "Stage": {
+          "deployment": "*",
+          "stageName": "*",
+          "accessLogDestination": "*",
+          "accessLogFormat": "*",
+          "tracingEnabled": "boolean",
+          "cacheClusterEnabled": "boolean",
+          "cacheClusterSize": "*",
+          "clientCertificateId": "*",
+          "description": "*",
+          "documentationVersion": "*",
+          "variables": "*",
+          "methodOptions": "*",
+          "metricsEnabled": "boolean",
+          "loggingLevel": "MethodLoggingLevel",
+          "dataTraceEnabled": "boolean",
+          "throttlingBurstLimit": "*",
+          "throttlingRateLimit": "*",
+          "cachingEnabled": "boolean",
+          "cacheTtl": "*",
+          "cacheDataEncrypted": "boolean"
+        },
+        "StepFunctionsRestApi": {
+          "stateMachine": {
+            "stateMachineArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "requestContext": {
+            "accountId": "boolean",
+            "apiId": "boolean",
+            "apiKey": "boolean",
+            "authorizerPrincipalId": "boolean",
+            "caller": "boolean",
+            "cognitoAuthenticationProvider": "boolean",
+            "cognitoAuthenticationType": "boolean",
+            "cognitoIdentityId": "boolean",
+            "cognitoIdentityPoolId": "boolean",
+            "httpMethod": "boolean",
+            "stage": "boolean",
+            "sourceIp": "boolean",
+            "user": "boolean",
+            "userAgent": "boolean",
+            "userArn": "boolean",
+            "requestId": "boolean",
+            "resourceId": "boolean",
+            "resourcePath": "boolean"
+          },
+          "querystring": "boolean",
+          "path": "boolean",
+          "headers": "boolean",
+          "authorizer": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "useDefaultMethodResponses": "boolean",
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "UsagePlan": {
+          "apiStages": {
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "throttle": {
+              "method": "*",
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              }
+            }
+          },
+          "description": "*",
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "name": "*",
+          "apiKey": {
+            "keyId": "*",
+            "keyArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addApiStage": [
+            {
+              "api": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "throttle": {
+                "method": "*",
+                "throttle": {
+                  "rateLimit": "*",
+                  "burstLimit": "*"
+                }
+              }
+            }
+          ]
+        },
+        "VpcLink": {
+          "vpcLinkName": "*",
+          "description": "*",
+          "targets": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "metrics": "*",
+            "securityGroups": "*",
+            "ipAddressType": "IpAddressType",
+            "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "loadBalancerArn": "*",
+            "connections": "*"
+          },
+          "addTargets": [
+            {
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "metrics": "*",
+              "securityGroups": "*",
+              "ipAddressType": "IpAddressType",
+              "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+              "loadBalancerCanonicalHostedZoneId": "*",
+              "loadBalancerDnsName": "*",
+              "loadBalancerArn": "*",
+              "connections": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-appconfig": {
+        "Application": {
+          "applicationName": "*",
+          "description": "*"
+        },
+        "DeploymentStrategy": {
+          "rolloutStrategy": "*",
+          "deploymentStrategyName": "*",
+          "description": "*"
+        },
+        "Environment": {
+          "application": {
+            "description": "*",
+            "name": "*",
+            "applicationId": "*",
+            "applicationArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "environmentName": "*",
+          "description": "*",
+          "monitors": "*",
+          "deletionProtectionCheck": "DeletionProtectionCheck"
+        },
+        "Extension": {
+          "actions": "*",
+          "extensionName": "*",
+          "description": "*",
+          "latestVersionNumber": "*",
+          "parameters": "*"
+        }
+      },
+      "aws-cdk-lib.aws-applicationautoscaling": {
+        "ScalableTarget": {
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "resourceId": "*",
+          "scalableDimension": "*",
+          "serviceNamespace": "ServiceNamespace",
+          "addToRolePolicy": [
+            "*"
+          ],
+          "scaleOnSchedule": [
+            "*",
+            {
+              "schedule": "*",
+              "startTime": "*",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "timeZone": "*"
+            }
+          ],
+          "scaleOnMetric": [
+            "*",
+            {
+              "metric": {
+                "warnings": "*",
+                "warningsV2": "*"
+              },
+              "scalingSteps": {
+                "lower": "*",
+                "upper": "*",
+                "change": "*"
+              },
+              "adjustmentType": "AdjustmentType",
+              "cooldown": "*",
+              "minAdjustmentMagnitude": "*",
+              "evaluationPeriods": "*",
+              "datapointsToAlarm": "*",
+              "metricAggregationType": "MetricAggregationType"
+            }
+          ],
+          "scaleToTrackMetric": [
+            "*",
+            {
+              "targetValue": "*",
+              "predefinedMetric": "PredefinedMetric",
+              "resourceLabel": "*",
+              "customMetric": {
+                "warnings": "*",
+                "warningsV2": "*"
+              },
+              "policyName": "*",
+              "disableScaleIn": "boolean",
+              "scaleInCooldown": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-appmesh": {
+        "GatewayRoute": {
+          "virtualGateway": {
+            "virtualGatewayName": "*",
+            "virtualGatewayArn": "*",
+            "mesh": {
+              "meshName": "*",
+              "meshArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "gatewayRouteName": "*",
+          "routeSpec": "*"
+        },
+        "Mesh": {
+          "meshName": "*",
+          "egressFilter": "MeshFilterType",
+          "serviceDiscovery": {
+            "ipPreference": "IpPreference"
+          }
+        },
+        "Route": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualRouter": {
+            "virtualRouterName": "*",
+            "virtualRouterArn": "*",
+            "mesh": {
+              "meshName": "*",
+              "meshArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "routeName": "*",
+          "routeSpec": "*"
+        },
+        "VirtualGateway": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualGatewayName": "*",
+          "listeners": "*",
+          "accessLog": "*",
+          "backendDefaults": {
+            "tlsClientPolicy": {
+              "enforce": "boolean",
+              "ports": "*",
+              "validation": {
+                "trust": "*",
+                "subjectAlternativeNames": "*"
+              },
+              "mutualTlsCertificate": "*"
+            }
+          }
+        },
+        "VirtualNode": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualNodeName": "*",
+          "serviceDiscovery": "*",
+          "backends": "*",
+          "listeners": "*",
+          "accessLog": "*",
+          "backendDefaults": {
+            "tlsClientPolicy": {
+              "enforce": "boolean",
+              "ports": "*",
+              "validation": {
+                "trust": "*",
+                "subjectAlternativeNames": "*"
+              },
+              "mutualTlsCertificate": "*"
+            }
+          },
+          "addListener": [
+            "*"
+          ],
+          "addBackend": [
+            "*"
+          ]
+        },
+        "VirtualRouter": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "listeners": "*",
+          "virtualRouterName": "*"
+        },
+        "VirtualService": {
+          "virtualServiceName": "*",
+          "virtualServiceProvider": "*"
+        }
+      },
+      "aws-cdk-lib.aws-appsync": {
+        "AppsyncFunction": {
+          "api": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dataSource": "*",
+          "name": "*",
+          "description": "*",
+          "requestMappingTemplate": "*",
+          "responseMappingTemplate": "*",
+          "runtime": "*",
+          "code": "*",
+          "maxBatchSize": "*"
+        },
+        "ChannelNamespace": {
+          "api": {
+            "authProviderTypes": "AppSyncAuthorizationType",
+            "httpDns": "*",
+            "realtimeDns": "*",
+            "apiId": "*",
+            "apiArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "channelNamespaceName": "*",
+          "code": "*",
+          "publishHandlerConfig": {
+            "direct": "boolean",
+            "dataSource": "*",
+            "lambdaInvokeType": "LambdaInvokeType"
+          },
+          "subscribeHandlerConfig": {
+            "direct": "boolean",
+            "dataSource": "*",
+            "lambdaInvokeType": "LambdaInvokeType"
+          },
+          "authorizationConfig": {
+            "publishAuthModeTypes": "AppSyncAuthorizationType",
+            "subscribeAuthModeTypes": "AppSyncAuthorizationType"
+          },
+          "grantSubscribe": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantPublish": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantPublishAndSubscribe": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "EventApi": {
+          "apiName": "*",
+          "authorizationConfig": {
+            "authProviders": {
+              "authorizationType": "AppSyncAuthorizationType",
+              "cognitoConfig": {
+                "userPool": {
+                  "userPoolId": "*",
+                  "userPoolArn": "*",
+                  "userPoolProviderName": "*",
+                  "identityProviders": {
+                    "providerName": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  }
+                },
+                "appIdClientRegex": "*"
+              },
+              "apiKeyConfig": {
+                "name": "*",
+                "description": "*",
+                "expires": "*"
+              },
+              "openIdConnectConfig": {
+                "tokenExpiryFromAuth": "*",
+                "tokenExpiryFromIssue": "*",
+                "clientId": "*",
+                "oidcProvider": "*"
+              },
+              "lambdaAuthorizerConfig": {
+                "handler": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "latestVersion": {
+                    "version": "*",
+                    "edgeArn": "*",
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "resultsCacheTtl": "*",
+                "validationRegex": "*"
+              }
+            },
+            "connectionAuthModeTypes": "AppSyncAuthorizationType",
+            "defaultPublishAuthModeTypes": "AppSyncAuthorizationType",
+            "defaultSubscribeAuthModeTypes": "AppSyncAuthorizationType"
+          },
+          "logConfig": {
+            "excludeVerboseContent": "boolean",
+            "fieldLogLevel": "AppSyncFieldLogLevel",
+            "role": "*",
+            "retention": "RetentionDays"
+          },
+          "ownerContact": "*",
+          "domainName": {
+            "certificate": "*",
+            "domainName": "*"
+          }
+        },
+        "GraphqlApi": {
+          "name": "*",
+          "authorizationConfig": {
+            "defaultAuthorization": {
+              "authorizationType": "AuthorizationType",
+              "userPoolConfig": {
+                "userPool": {
+                  "userPoolId": "*",
+                  "userPoolArn": "*",
+                  "userPoolProviderName": "*",
+                  "identityProviders": {
+                    "providerName": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  }
+                },
+                "appIdClientRegex": "*",
+                "defaultAction": "UserPoolDefaultAction"
+              },
+              "apiKeyConfig": {
+                "name": "*",
+                "description": "*",
+                "expires": "*"
+              },
+              "openIdConnectConfig": {
+                "tokenExpiryFromAuth": "*",
+                "tokenExpiryFromIssue": "*",
+                "clientId": "*",
+                "oidcProvider": "*"
+              },
+              "lambdaAuthorizerConfig": {
+                "handler": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "latestVersion": {
+                    "version": "*",
+                    "edgeArn": "*",
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "resultsCacheTtl": "*",
+                "validationRegex": "*"
+              }
+            }
+          },
+          "logConfig": {
+            "excludeVerboseContent": "boolean",
+            "fieldLogLevel": "FieldLogLevel",
+            "role": "*",
+            "retention": "RetentionDays"
+          },
+          "definition": "*",
+          "schema": "*",
+          "xrayEnabled": "boolean",
+          "visibility": "Visibility",
+          "domainName": {
+            "certificate": "*",
+            "domainName": "*"
+          },
+          "introspectionConfig": "IntrospectionConfig",
+          "queryDepthLimit": "*",
+          "resolverCountLimit": "*",
+          "environmentVariables": "*",
+          "ownerContact": "*",
+          "enhancedMetricsConfig": {
+            "dataSourceLevelMetricsBehavior": "DataSourceLevelMetricsBehavior",
+            "operationLevelMetricsConfig": "OperationLevelMetricsConfig",
+            "resolverLevelMetricsBehavior": "ResolverLevelMetricsBehavior"
+          },
+          "addSchemaDependency": [
+            "*"
+          ],
+          "addEnvironmentVariable": [
+            "*",
+            "*"
+          ]
+        },
+        "SourceApiAssociation": {
+          "sourceApi": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergedApi": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergedApiExecutionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergeType": "MergeType",
+          "description": "*"
+        }
+      },
+      "aws-cdk-lib.aws-autoscaling": {
+        "AutoScalingGroup": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "migrateToLaunchTemplate": "boolean",
+          "mixedInstancesPolicy": {
+            "instancesDistribution": {
+              "onDemandAllocationStrategy": "OnDemandAllocationStrategy",
+              "onDemandBaseCapacity": "*",
+              "onDemandPercentageAboveBaseCapacity": "*",
+              "spotAllocationStrategy": "SpotAllocationStrategy",
+              "spotInstancePools": "*",
+              "spotMaxPrice": "*"
+            },
+            "launchTemplate": {
+              "versionNumber": "*",
+              "launchTemplateId": "*",
+              "launchTemplateName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "launchTemplateOverrides": {
+              "instanceRequirements": "*",
+              "instanceType": "*",
+              "weightedCapacity": "*"
+            }
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "userData": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "maxHealthyPercentage": "*",
+          "minHealthyPercentage": "*",
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "desiredCapacity": "*",
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "notificationsTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "notifications": {
+            "topic": {
+              "topicArn": "*",
+              "topicName": "*",
+              "masterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            },
+            "scalingEvents": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "updateType": "UpdateType",
+          "rollingUpdateConfiguration": {
+            "maxBatchSize": "*",
+            "minInstancesInService": "*",
+            "minSuccessfulInstancesPercent": "*",
+            "pauseTime": "*",
+            "waitOnResourceSignals": "boolean",
+            "suspendProcesses": "ScalingProcess"
+          },
+          "replacingUpdateMinSuccessfulInstancesPercent": "*",
+          "ignoreUnmodifiedSizeProperties": "boolean",
+          "resourceSignalCount": "*",
+          "resourceSignalTimeout": "*",
+          "cooldown": "*",
+          "associatePublicIpAddress": "boolean",
+          "spotPrice": "*",
+          "healthCheck": "*",
+          "healthChecks": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "maxInstanceLifetime": "*",
+          "instanceMonitoring": "Monitoring",
+          "groupMetrics": "*",
+          "signals": "*",
+          "updatePolicy": "*",
+          "newInstancesProtectedFromScaleIn": "boolean",
+          "autoScalingGroupName": "*",
+          "terminationPolicies": "TerminationPolicy",
+          "terminationPolicyCustomLambdaFunctionArn": "*",
+          "defaultInstanceWarmup": "*",
+          "capacityRebalance": "boolean",
+          "ssmSessionPermissions": "boolean",
+          "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+          "deletionProtection": "DeletionProtection",
+          "instanceLifecyclePolicy": {
+            "retentionTriggers": {
+              "terminateHookAbandon": "TerminateHookAbandonAction"
+            }
+          },
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "attachToClassicLB": [
+            "*"
+          ],
+          "attachToApplicationTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            }
+          ],
+          "attachToNetworkTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*",
+              "isNetworkTargetGroup": "boolean"
+            }
+          ],
+          "addUserData": [
+            "*"
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "applyCloudFormationInit": [
+            "*",
+            {
+              "configSets": "*",
+              "embedFingerprint": "boolean",
+              "printLog": "boolean",
+              "ignoreFailures": "boolean",
+              "includeUrl": "boolean",
+              "includeRole": "boolean"
+            }
+          ],
+          "protectNewInstancesFromScaleIn": [],
+          "areNewInstancesProtectedFromScaleIn": []
+        },
+        "LifecycleHook": {
+          "autoScalingGroup": "*",
+          "lifecycleHookName": "*",
+          "defaultResult": "DefaultResult",
+          "heartbeatTimeout": "*",
+          "lifecycleTransition": "LifecycleTransition",
+          "notificationMetadata": "*",
+          "notificationTarget": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "ScheduledAction": {
+          "autoScalingGroup": "*",
+          "timeZone": "*",
+          "schedule": "*",
+          "startTime": "*",
+          "endTime": "*",
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "desiredCapacity": "*"
+        },
+        "WarmPool": {
+          "autoScalingGroup": "*",
+          "reuseOnScaleIn": "boolean",
+          "maxGroupPreparedCapacity": "*",
+          "minSize": "*",
+          "poolState": "PoolState"
+        }
+      },
+      "aws-cdk-lib.aws-backup": {
+        "BackupPlan": {
+          "backupPlanName": "*",
+          "backupVault": "*",
+          "backupPlanRules": "*",
+          "windowsVss": "boolean",
+          "addRule": [
+            "*"
+          ],
+          "addSelection": [
+            "*",
+            {
+              "resources": "*",
+              "backupSelectionName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "disableDefaultBackupPolicy": "boolean",
+              "allowRestores": "boolean"
+            }
+          ]
+        },
+        "BackupSelection": {
+          "backupPlan": "*",
+          "resources": "*",
+          "backupSelectionName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "disableDefaultBackupPolicy": "boolean",
+          "allowRestores": "boolean"
+        },
+        "BackupVault": {
+          "backupVaultName": "*",
+          "accessPolicy": "*",
+          "encryptionKey": "*",
+          "notificationTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "notificationEvents": "BackupVaultEvents",
+          "removalPolicy": "RemovalPolicy",
+          "blockRecoveryPointDeletion": [],
+          "lockConfiguration": {
+            "minRetention": "*"
+          },
+          "addToAccessPolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-batch": {
+        "ConsumableResource": {
+          "consumableResourceName": "*",
+          "resourceType": "ConsumableResourceType",
+          "totalQuantity": "*",
+          "tags": "*"
+        },
+        "EcsJobDefinition": {
+          "container": {
+            "image": "*",
+            "cpu": "*",
+            "memory": "*",
+            "command": "*",
+            "environment": "*",
+            "executionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "linuxParameters": "*",
+            "logDriverConfig": {
+              "logDriver": "*",
+              "options": "*",
+              "secretOptions": "*"
+            },
+            "readonlyRootFilesystem": "boolean",
+            "secrets": "*",
+            "user": "*",
+            "volumes": "*",
+            "enableExecuteCommand": "boolean"
+          },
+          "propagateTags": "boolean",
+          "jobDefinitionName": "*",
+          "parameters": "*",
+          "retryAttempts": "*",
+          "retryStrategies": "*",
+          "schedulingPriority": "*",
+          "timeout": "*",
+          "skipDeregisterOnUpdate": "boolean",
+          "grantSubmitJob": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "EksJobDefinition": {
+          "container": "*",
+          "dnsPolicy": "DnsPolicy",
+          "useHostNetwork": "boolean",
+          "serviceAccount": "*",
+          "jobDefinitionName": "*",
+          "parameters": "*",
+          "retryAttempts": "*",
+          "retryStrategies": "*",
+          "schedulingPriority": "*",
+          "timeout": "*",
+          "skipDeregisterOnUpdate": "boolean"
+        },
+        "JobQueue": {},
+        "ManagedEc2EcsComputeEnvironment": {
+          "defaultInstanceClasses": "DefaultInstanceClass",
+          "useOptimalInstanceClasses": "boolean",
+          "images": {
+            "imageType": "EcsMachineImageType",
+            "image": "*"
+          },
+          "allocationStrategy": "AllocationStrategy",
+          "spotBidPercentage": "*",
+          "spotFleetRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minvCpus": "*",
+          "placementGroup": "*",
+          "instanceTypes": "*",
+          "instanceClasses": "InstanceClass",
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "ManagedEc2EksComputeEnvironment": {
+          "kubernetesNamespace": "*",
+          "eksCluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "defaultInstanceClasses": "DefaultInstanceClass",
+          "useOptimalInstanceClasses": "boolean",
+          "images": {
+            "imageType": "EksMachineImageType",
+            "image": "*"
+          },
+          "allocationStrategy": "AllocationStrategy",
+          "spotBidPercentage": "*",
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minvCpus": "*",
+          "placementGroup": "*",
+          "instanceTypes": "*",
+          "instanceClasses": "InstanceClass",
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "FargateComputeEnvironment": {
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "MultiNodeJobDefinition": {
+          "addContainer": [
+            {
+              "startNode": "*",
+              "endNode": "*",
+              "container": {
+                "image": "*",
+                "cpu": "*",
+                "memory": "*",
+                "command": "*",
+                "environment": "*",
+                "executionRole": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "linuxParameters": "*",
+                "logDriverConfig": {
+                  "logDriver": "*",
+                  "options": "*",
+                  "secretOptions": "*"
+                },
+                "readonlyRootFilesystem": "boolean",
+                "secrets": "*",
+                "user": "*",
+                "volumes": "*",
+                "enableExecuteCommand": "boolean"
+              }
+            }
+          ]
+        },
+        "FairshareSchedulingPolicy": {
+          "addShare": [
+            {
+              "shareIdentifier": "*",
+              "weightFactor": "*"
+            }
+          ]
+        },
+        "UnmanagedComputeEnvironment": {}
+      },
+      "aws-cdk-lib.aws-certificatemanager": {
+        "Certificate": {
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "validationDomains": "*",
+          "validationMethod": "ValidationMethod",
+          "validation": "*",
+          "allowExport": "boolean",
+          "transparencyLoggingEnabled": "boolean",
+          "certificateName": "*",
+          "keyAlgorithm": "*"
+        },
+        "DnsValidatedCertificate": {
+          "hostedZone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "region": "*",
+          "route53Endpoint": "*",
+          "customResourceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cleanupRoute53Records": "boolean",
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "validationDomains": "*",
+          "validationMethod": "ValidationMethod",
+          "validation": "*",
+          "allowExport": "boolean",
+          "transparencyLoggingEnabled": "boolean",
+          "certificateName": "*",
+          "keyAlgorithm": "*",
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "PrivateCertificate": {
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "certificateAuthority": "*",
+          "keyAlgorithm": "*",
+          "allowExport": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-chatbot": {
+        "SlackChannelConfiguration": {
+          "slackChannelConfigurationName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "slackWorkspaceId": "*",
+          "slackChannelId": "*",
+          "notificationTopics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "loggingLevel": "LoggingLevel",
+          "logRetention": "RetentionDays",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "guardrailPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "userRoleRequired": "boolean",
+          "addNotificationTopic": [
+            {
+              "topicArn": "*",
+              "topicName": "*",
+              "masterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudformation": {
+        "CustomResource": {
+          "provider": "*",
+          "properties": "*",
+          "resourceType": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-cloudfront": {
+        "CachePolicy": {
+          "cachePolicyName": "*",
+          "comment": "*",
+          "defaultTtl": "*",
+          "minTtl": "*",
+          "maxTtl": "*",
+          "cookieBehavior": "*",
+          "headerBehavior": "*",
+          "queryStringBehavior": "*",
+          "enableAcceptEncodingGzip": "boolean",
+          "enableAcceptEncodingBrotli": "boolean"
+        },
+        "Distribution": {
+          "defaultBehavior": {
+            "origin": "*",
+            "allowedMethods": "*",
+            "cachedMethods": "*",
+            "cachePolicy": "*",
+            "compress": "boolean",
+            "originRequestPolicy": "*",
+            "realtimeLogConfig": "*",
+            "responseHeadersPolicy": "*",
+            "smoothStreaming": "boolean",
+            "viewerProtocolPolicy": "ViewerProtocolPolicy",
+            "functionAssociations": {
+              "function": "*",
+              "eventType": "FunctionEventType"
+            },
+            "edgeLambdas": {
+              "functionVersion": {
+                "version": "*",
+                "lambda": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    },
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "eventType": "LambdaEdgeEventType",
+              "includeBody": "boolean"
+            },
+            "trustedKeyGroups": "*",
+            "enableGrpc": "boolean"
+          },
+          "additionalBehaviors": "*",
+          "certificate": "*",
+          "comment": "*",
+          "defaultRootObject": "*",
+          "domainNames": "*",
+          "enabled": "boolean",
+          "enableIpv6": "boolean",
+          "enableLogging": "boolean",
+          "geoRestriction": "*",
+          "httpVersion": "HttpVersion",
+          "logBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "logIncludesCookies": "boolean",
+          "logFilePrefix": "*",
+          "priceClass": "PriceClass",
+          "webAclId": "*",
+          "errorResponses": {
+            "ttl": "*",
+            "httpStatus": "*",
+            "responseHttpStatus": "*",
+            "responsePagePath": "*"
+          },
+          "minimumProtocolVersion": "SecurityPolicyProtocol",
+          "sslSupportMethod": "SSLMethod",
+          "publishAdditionalMetrics": "boolean",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRequests": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricBytesUploaded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricBytesDownloaded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTotalErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric4xxErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric5xxErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricOriginLatency": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheHitRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric401ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric403ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric404ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric502ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric503ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric504ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addBehavior": [
+            "*",
+            "*",
+            {
+              "allowedMethods": "*",
+              "cachedMethods": "*",
+              "cachePolicy": "*",
+              "compress": "boolean",
+              "originRequestPolicy": "*",
+              "realtimeLogConfig": "*",
+              "responseHeadersPolicy": "*",
+              "smoothStreaming": "boolean",
+              "viewerProtocolPolicy": "ViewerProtocolPolicy",
+              "functionAssociations": {
+                "function": "*",
+                "eventType": "FunctionEventType"
+              },
+              "edgeLambdas": {
+                "functionVersion": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "eventType": "LambdaEdgeEventType",
+                "includeBody": "boolean"
+              },
+              "trustedKeyGroups": "*",
+              "enableGrpc": "boolean"
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantCreateInvalidation": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "attachWebAclId": [
+            "*"
+          ]
+        },
+        "Function": {
+          "functionName": "*",
+          "comment": "*",
+          "code": "*",
+          "runtime": "*",
+          "keyValueStore": "*",
+          "autoPublish": "boolean"
+        },
+        "KeyGroup": {
+          "keyGroupName": "*",
+          "comment": "*",
+          "items": "*"
+        },
+        "KeyValueStore": {},
+        "S3OriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "FunctionUrlOriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "MediaPackageV2OriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "OriginAccessIdentity": {},
+        "OriginRequestPolicy": {
+          "originRequestPolicyName": "*",
+          "comment": "*",
+          "cookieBehavior": "*",
+          "headerBehavior": "*",
+          "queryStringBehavior": "*"
+        },
+        "PublicKey": {
+          "publicKeyName": "*",
+          "comment": "*",
+          "encodedKey": "*"
+        },
+        "RealtimeLogConfig": {
+          "realtimeLogConfigName": "*",
+          "fields": "*",
+          "samplingRate": "*",
+          "endPoints": "*"
+        },
+        "ResponseHeadersPolicy": {
+          "responseHeadersPolicyName": "*",
+          "comment": "*",
+          "corsBehavior": {
+            "accessControlAllowCredentials": "boolean",
+            "accessControlAllowHeaders": "*",
+            "accessControlAllowMethods": "*",
+            "accessControlAllowOrigins": "*",
+            "accessControlExposeHeaders": "*",
+            "accessControlMaxAge": "*",
+            "originOverride": "boolean"
+          },
+          "customHeadersBehavior": {
+            "customHeaders": {
+              "header": "*",
+              "override": "boolean",
+              "value": "*"
+            }
+          },
+          "securityHeadersBehavior": {
+            "contentSecurityPolicy": {
+              "contentSecurityPolicy": "*",
+              "override": "boolean"
+            },
+            "contentTypeOptions": {
+              "override": "boolean"
+            },
+            "frameOptions": {
+              "frameOption": "HeadersFrameOption",
+              "override": "boolean"
+            },
+            "referrerPolicy": {
+              "referrerPolicy": "HeadersReferrerPolicy",
+              "override": "boolean"
+            },
+            "strictTransportSecurity": {
+              "accessControlMaxAge": "*",
+              "includeSubdomains": "boolean",
+              "override": "boolean",
+              "preload": "boolean"
+            },
+            "xssProtection": {
+              "modeBlock": "boolean",
+              "override": "boolean",
+              "protection": "boolean",
+              "reportUri": "*"
+            }
+          },
+          "removeHeaders": "*",
+          "serverTimingSamplingRate": "*"
+        },
+        "VpcOrigin": {
+          "endpoint": "*",
+          "httpPort": "*",
+          "httpsPort": "*",
+          "vpcOriginName": "*",
+          "protocolPolicy": "OriginProtocolPolicy",
+          "originSslProtocols": "OriginSslPolicy"
+        },
+        "CloudFrontWebDistribution": {
+          "aliasConfiguration": {
+            "acmCertRef": "*",
+            "names": "*",
+            "sslMethod": "SSLMethod",
+            "securityPolicy": "SecurityPolicyProtocol"
+          },
+          "comment": "*",
+          "enabled": "boolean",
+          "defaultRootObject": "*",
+          "enableIpV6": "boolean",
+          "httpVersion": "HttpVersion",
+          "priceClass": "PriceClass",
+          "viewerProtocolPolicy": "ViewerProtocolPolicy",
+          "originConfigs": {
+            "connectionAttempts": "*",
+            "connectionTimeout": "*",
+            "s3OriginSource": {
+              "s3BucketSource": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "originAccessIdentity": "*",
+              "originPath": "*",
+              "originHeaders": "*",
+              "originShieldRegion": "*"
+            },
+            "customOriginSource": {
+              "domainName": "*",
+              "httpPort": "*",
+              "httpsPort": "*",
+              "originProtocolPolicy": "OriginProtocolPolicy",
+              "allowedOriginSSLVersions": "OriginSslPolicy",
+              "originPath": "*",
+              "originHeaders": "*",
+              "originShieldRegion": "*"
+            },
+            "failoverCriteriaStatusCodes": "FailoverStatusCode",
+            "behaviors": {
+              "compress": "boolean",
+              "isDefaultBehavior": "boolean",
+              "trustedSigners": "*",
+              "trustedKeyGroups": "*",
+              "allowedMethods": "CloudFrontAllowedMethods",
+              "pathPattern": "*",
+              "cachedMethods": "CloudFrontAllowedCachedMethods",
+              "forwardedValues": "*",
+              "lambdaFunctionAssociations": {
+                "eventType": "LambdaEdgeEventType",
+                "lambdaFunction": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "includeBody": "boolean"
+              },
+              "functionAssociations": {
+                "function": "*",
+                "eventType": "FunctionEventType"
+              },
+              "viewerProtocolPolicy": "ViewerProtocolPolicy"
+            },
+            "originPath": "*",
+            "originHeaders": "*",
+            "originShieldRegion": "*"
+          },
+          "loggingConfig": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "includeCookies": "boolean",
+            "prefix": "*"
+          },
+          "errorConfigurations": "*",
+          "webACLId": "*",
+          "viewerCertificate": "*",
+          "geoRestriction": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudtrail": {
+        "Trail": {
+          "includeGlobalServiceEvents": "boolean",
+          "isMultiRegionTrail": "boolean",
+          "managementEvents": "ReadWriteType",
+          "enableFileValidation": "boolean",
+          "sendToCloudWatchLogs": "boolean",
+          "cloudWatchLogsRetention": "RetentionDays",
+          "cloudWatchLogGroup": "*",
+          "kmsKey": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "snsTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "trailName": "*",
+          "s3KeyPrefix": "*",
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "isOrganizationTrail": "boolean",
+          "orgId": "*",
+          "insightTypes": "*",
+          "addEventSelector": [
+            "DataResourceType",
+            "*",
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "addLambdaEventSelector": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "logAllLambdaDataEvents": [
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "addS3EventSelector": [
+            {
+              "bucket": "*",
+              "objectPrefix": "*"
+            },
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "logAllS3DataEvents": [
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "onCloudTrailEvent": [
+            "*",
+            {
+              "target": "*",
+              "description": "*",
+              "ruleName": "*",
+              "eventPattern": {
+                "version": "*",
+                "id": "*",
+                "detailType": "*",
+                "source": "*",
+                "account": "*",
+                "time": "*",
+                "region": "*",
+                "resources": "*",
+                "detail": "*"
+              },
+              "crossStackScope": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudwatch": {
+        "AlarmMuteRule": {
+          "alarms": "*",
+          "alarmMuteRuleName": "*",
+          "description": "*",
+          "schedule": "*",
+          "duration": "*",
+          "start": {
+            "year": "*",
+            "month": "*",
+            "day": "*",
+            "hour": "*",
+            "minute": "*"
+          },
+          "expire": {
+            "year": "*",
+            "month": "*",
+            "day": "*",
+            "hour": "*",
+            "minute": "*"
+          },
+          "tags": "*",
+          "addAlarm": [
+            "*"
+          ]
+        },
+        "Alarm": {
+          "metric": {
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "comparisonOperator": "ComparisonOperator",
+          "threshold": "*",
+          "period": "*",
+          "statistic": "*",
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "evaluationPeriods": "*",
+          "evaluateLowSampleCountPercentile": "*",
+          "treatMissingData": "TreatMissingData",
+          "actionsEnabled": "boolean",
+          "datapointsToAlarm": "*",
+          "toAnnotation": [],
+          "addAlarmAction": [
+            "*"
+          ]
+        },
+        "AnomalyDetectionAlarm": {
+          "metric": {
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "stdDevs": "*",
+          "comparisonOperator": "ComparisonOperator",
+          "period": "*",
+          "statistic": "*",
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "evaluationPeriods": "*",
+          "evaluateLowSampleCountPercentile": "*",
+          "treatMissingData": "TreatMissingData",
+          "actionsEnabled": "boolean",
+          "datapointsToAlarm": "*"
+        },
+        "CompositeAlarm": {
+          "actionsEnabled": "boolean",
+          "alarmDescription": "*",
+          "compositeAlarmName": "*",
+          "alarmRule": "*",
+          "actionsSuppressor": "*",
+          "actionsSuppressorExtensionPeriod": "*",
+          "actionsSuppressorWaitPeriod": "*"
+        },
+        "Dashboard": {
+          "dashboardName": "*",
+          "defaultInterval": "*",
+          "start": "*",
+          "end": "*",
+          "periodOverride": "PeriodOverride",
+          "widgets": {
+            "width": "*",
+            "height": "*",
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "variables": "*",
+          "addWidgets": [
+            {
+              "width": "*",
+              "height": "*",
+              "warnings": "*",
+              "warningsV2": "*"
+            }
+          ],
+          "addVariable": [
+            "*"
+          ]
+        },
+        "PromQLAlarm": {
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "pendingPeriod": "*",
+          "recoveryPeriod": "*",
+          "query": "*",
+          "evaluationInterval": "*",
+          "actionsEnabled": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-codebuild": {
+        "Fleet": {
+          "fleetName": "*",
+          "baseCapacity": "*",
+          "computeType": "FleetComputeType",
+          "environmentType": "EnvironmentType",
+          "computeConfiguration": {
+            "disk": "*",
+            "machineType": "MachineType",
+            "vCpu": "*",
+            "instanceType": "*"
+          },
+          "overflowBehavior": "FleetOverflowBehavior",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        },
+        "PipelineProject": {},
+        "Project": {
+          "source": {
+            "identifier": "*",
+            "type": "*",
+            "badgeSupported": "boolean"
+          },
+          "artifacts": {
+            "identifier": "*",
+            "type": "*"
+          },
+          "secondarySources": {
+            "identifier": "*",
+            "type": "*",
+            "badgeSupported": "boolean"
+          },
+          "secondaryArtifacts": {
+            "identifier": "*",
+            "type": "*"
+          },
+          "description": "*",
+          "buildSpec": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cache": "*",
+          "environment": {
+            "buildImage": {
+              "type": "*",
+              "imageId": "*",
+              "defaultComputeType": "ComputeType",
+              "imagePullPrincipalType": "ImagePullPrincipalType",
+              "secretsManagerCredentials": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "repository": {
+                "repositoryName": "*",
+                "repositoryArn": "*",
+                "repositoryUri": "*",
+                "registryUri": "*"
+              }
+            },
+            "computeType": "ComputeType",
+            "dockerServer": {
+              "computeType": "DockerServerComputeType",
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              }
+            },
+            "fleet": {
+              "fleetArn": "*",
+              "fleetName": "*",
+              "computeType": "FleetComputeType",
+              "environmentType": "EnvironmentType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "hostKernel": "HostKernel",
+            "privileged": "boolean",
+            "certificate": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "objectKey": "*"
+            },
+            "environmentVariables": "*"
+          },
+          "badge": "boolean",
+          "timeout": "*",
+          "environmentVariables": "*",
+          "checkSecretsInPlainTextEnvVariables": "boolean",
+          "projectName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "fileSystemLocations": "*",
+          "grantReportGroupPermissions": "boolean",
+          "logging": {
+            "s3": {
+              "encrypted": "boolean",
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*",
+              "enabled": "boolean"
+            },
+            "cloudWatch": {
+              "logGroup": {
+                "logGroupArn": "*",
+                "logGroupName": "*"
+              },
+              "prefix": "*",
+              "enabled": "boolean"
+            }
+          },
+          "queuedTimeout": "*",
+          "concurrentBuildLimit": "*",
+          "ssmSessionPermissions": "boolean",
+          "visibility": "ProjectVisibility",
+          "autoRetryLimit": "*",
+          "enableBatchBuilds": [],
+          "addSecondarySource": [
+            {
+              "identifier": "*",
+              "type": "*",
+              "badgeSupported": "boolean"
+            }
+          ],
+          "addFileSystemLocation": [
+            "*"
+          ],
+          "addSecondaryArtifact": [
+            {
+              "identifier": "*",
+              "type": "*"
+            }
+          ],
+          "bindToCodePipeline": [
+            "*",
+            {
+              "artifactBucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              }
+            }
+          ]
+        },
+        "ReportGroup": {
+          "reportGroupName": "*",
+          "exportBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "zipExport": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "type": "ReportGroupType",
+          "deleteReports": "boolean"
+        },
+        "GitHubSourceCredentials": {
+          "accessToken": "*"
+        },
+        "GitHubEnterpriseSourceCredentials": {
+          "accessToken": "*"
+        },
+        "BitBucketSourceCredentials": {
+          "username": "*",
+          "password": "*"
+        },
+        "UntrustedCodeBoundaryPolicy": {
+          "managedPolicyName": "*",
+          "additionalStatements": "*"
+        }
+      },
+      "aws-cdk-lib.aws-codecommit": {
+        "Repository": {
+          "repositoryName": "*",
+          "description": "*",
+          "code": "*",
+          "kmsKey": "*",
+          "notify": [
+            "*",
+            {
+              "name": "*",
+              "events": "RepositoryEventTrigger",
+              "branches": "*",
+              "customData": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-codeguruprofiler": {
+        "ProfilingGroup": {
+          "profilingGroupName": "*",
+          "computePlatform": "ComputePlatform"
+        }
+      },
+      "aws-cdk-lib.aws-codepipeline": {
+        "Pipeline": {
+          "artifactBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "restartExecutionOnUpdate": "boolean",
+          "pipelineName": "*",
+          "crossRegionReplicationBuckets": "*",
+          "stages": {
+            "stageName": "*",
+            "actions": {
+              "actionProperties": {
+                "actionName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "region": "*",
+                "account": "*",
+                "resource": "*",
+                "category": "ActionCategory",
+                "provider": "*",
+                "owner": "*",
+                "version": "*",
+                "runOrder": "*",
+                "artifactBounds": {
+                  "minInputs": "*",
+                  "maxInputs": "*",
+                  "minOutputs": "*",
+                  "maxOutputs": "*"
+                },
+                "inputs": "*",
+                "variablesNamespace": "*",
+                "commands": "*",
+                "outputVariables": "*",
+                "timeout": "*"
+              }
+            },
+            "transitionToEnabled": "boolean",
+            "transitionDisabledReason": "*",
+            "beforeEntry": {
+              "conditions": {
+                "rules": "*",
+                "result": "Result"
+              }
+            },
+            "onFailure": {
+              "result": "Result",
+              "retryMode": "RetryMode"
+            }
+          },
+          "crossAccountKeys": "boolean",
+          "enableKeyRotation": "boolean",
+          "reuseCrossRegionSupportStacks": "boolean",
+          "pipelineType": "PipelineType",
+          "variables": "*",
+          "triggers": {
+            "providerType": "ProviderType",
+            "gitConfiguration": {
+              "sourceAction": {
+                "actionProperties": {
+                  "actionName": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    },
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "region": "*",
+                  "account": "*",
+                  "resource": "*",
+                  "category": "ActionCategory",
+                  "provider": "*",
+                  "owner": "*",
+                  "version": "*",
+                  "runOrder": "*",
+                  "artifactBounds": {
+                    "minInputs": "*",
+                    "maxInputs": "*",
+                    "minOutputs": "*",
+                    "maxOutputs": "*"
+                  },
+                  "inputs": "*",
+                  "variablesNamespace": "*",
+                  "commands": "*",
+                  "outputVariables": "*",
+                  "timeout": "*"
+                }
+              },
+              "pushFilter": {
+                "tagsExcludes": "*",
+                "tagsIncludes": "*",
+                "branchesExcludes": "*",
+                "branchesIncludes": "*",
+                "filePathsExcludes": "*",
+                "filePathsIncludes": "*"
+              },
+              "pullRequestFilter": {
+                "events": "GitPullRequestEvent",
+                "branchesExcludes": "*",
+                "branchesIncludes": "*",
+                "filePathsExcludes": "*",
+                "filePathsIncludes": "*"
+              }
+            }
+          },
+          "executionMode": "ExecutionMode",
+          "usePipelineRoleForActions": "boolean",
+          "addStage": [
+            {
+              "placement": {
+                "rightBefore": {
+                  "stageName": "*",
+                  "pipeline": {
+                    "pipelineName": "*",
+                    "pipelineArn": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "actions": {
+                    "actionProperties": {
+                      "actionName": "*",
+                      "role": {
+                        "roleArn": "*",
+                        "roleName": "*",
+                        "assumeRoleAction": "*",
+                        "policyFragment": "*",
+                        "principalAccount": "*",
+                        "grantPrincipal": {
+                          "assumeRoleAction": "*",
+                          "principalAccount": "*"
+                        }
+                      },
+                      "region": "*",
+                      "account": "*",
+                      "resource": "*",
+                      "category": "ActionCategory",
+                      "provider": "*",
+                      "owner": "*",
+                      "version": "*",
+                      "runOrder": "*",
+                      "artifactBounds": {
+                        "minInputs": "*",
+                        "maxInputs": "*",
+                        "minOutputs": "*",
+                        "maxOutputs": "*"
+                      },
+                      "inputs": "*",
+                      "variablesNamespace": "*",
+                      "commands": "*",
+                      "outputVariables": "*",
+                      "timeout": "*"
+                    }
+                  }
+                }
+              },
+              "stageName": "*",
+              "transitionToEnabled": "boolean",
+              "transitionDisabledReason": "*",
+              "beforeEntry": {
+                "conditions": {
+                  "rules": "*",
+                  "result": "Result"
+                }
+              },
+              "onFailure": {
+                "result": "Result",
+                "retryMode": "RetryMode"
+              }
+            }
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "addVariable": [
+            "*"
+          ],
+          "addTrigger": [
+            {
+              "providerType": "ProviderType",
+              "gitConfiguration": {
+                "sourceAction": {
+                  "actionProperties": {
+                    "actionName": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "region": "*",
+                    "account": "*",
+                    "resource": "*",
+                    "category": "ActionCategory",
+                    "provider": "*",
+                    "owner": "*",
+                    "version": "*",
+                    "runOrder": "*",
+                    "artifactBounds": {
+                      "minInputs": "*",
+                      "maxInputs": "*",
+                      "minOutputs": "*",
+                      "maxOutputs": "*"
+                    },
+                    "inputs": "*",
+                    "variablesNamespace": "*",
+                    "commands": "*",
+                    "outputVariables": "*",
+                    "timeout": "*"
+                  }
+                },
+                "pushFilter": {
+                  "tagsExcludes": "*",
+                  "tagsIncludes": "*",
+                  "branchesExcludes": "*",
+                  "branchesIncludes": "*",
+                  "filePathsExcludes": "*",
+                  "filePathsIncludes": "*"
+                },
+                "pullRequestFilter": {
+                  "events": "GitPullRequestEvent",
+                  "branchesExcludes": "*",
+                  "branchesIncludes": "*",
+                  "filePathsExcludes": "*",
+                  "filePathsIncludes": "*"
+                }
+              }
+            }
+          ],
+          "stage": [
+            "*"
+          ],
+          "_attachActionToPipeline": [
+            "*",
+            {
+              "actionProperties": {
+                "actionName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "region": "*",
+                "account": "*",
+                "resource": "*",
+                "category": "ActionCategory",
+                "provider": "*",
+                "owner": "*",
+                "version": "*",
+                "runOrder": "*",
+                "artifactBounds": {
+                  "minInputs": "*",
+                  "maxInputs": "*",
+                  "minOutputs": "*",
+                  "maxOutputs": "*"
+                },
+                "inputs": "*",
+                "variablesNamespace": "*",
+                "commands": "*",
+                "outputVariables": "*",
+                "timeout": "*"
+              }
+            },
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-codestarnotifications": {
+        "NotificationRule": {
+          "events": "*",
+          "source": "*",
+          "targets": "*",
+          "notificationRuleName": "*",
+          "enabled": "boolean",
+          "detailType": "DetailType",
+          "createdBy": "*",
+          "addTarget": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cognito": {
+        "UserPoolClient": {
+          "userPool": "*",
+          "userPoolClientName": "*",
+          "generateSecret": "boolean",
+          "authFlows": {
+            "adminUserPassword": "boolean",
+            "custom": "boolean",
+            "userPassword": "boolean",
+            "userSrp": "boolean",
+            "user": "boolean"
+          },
+          "disableOAuth": "boolean",
+          "oAuth": {
+            "flows": {
+              "authorizationCodeGrant": "boolean",
+              "implicitCodeGrant": "boolean",
+              "clientCredentials": "boolean"
+            },
+            "callbackUrls": "*",
+            "logoutUrls": "*",
+            "scopes": "*",
+            "defaultRedirectUri": "*"
+          },
+          "authSessionValidity": "*",
+          "preventUserExistenceErrors": "boolean",
+          "supportedIdentityProviders": "*",
+          "idTokenValidity": "*",
+          "refreshTokenValidity": "*",
+          "accessTokenValidity": "*",
+          "refreshTokenRotationGracePeriod": "*",
+          "readAttributes": "*",
+          "writeAttributes": "*",
+          "enableTokenRevocation": "boolean",
+          "enablePropagateAdditionalUserContextData": "boolean",
+          "analytics": {
+            "application": "*",
+            "applicationId": "*",
+            "externalId": "*",
+            "role": "*",
+            "shareUserData": "boolean"
+          }
+        },
+        "UserPoolDomain": {
+          "userPool": "*",
+          "customDomain": {
+            "domainName": "*",
+            "certificate": "*"
+          },
+          "cognitoDomain": {
+            "domainPrefix": "*"
+          },
+          "managedLoginVersion": "ManagedLoginVersion",
+          "baseUrl": [
+            {
+              "fips": "boolean"
+            }
+          ],
+          "signInUrl": [
+            "*",
+            {
+              "redirectUri": "*",
+              "signInPath": "*",
+              "fips": "boolean"
+            }
+          ]
+        },
+        "UserPoolGroup": {
+          "userPool": "*",
+          "description": "*",
+          "groupName": "*",
+          "precedence": "*",
+          "role": "*"
+        },
+        "UserPoolResourceServer": {
+          "userPool": "*",
+          "identifier": "*",
+          "userPoolResourceServerName": "*",
+          "scopes": "*"
+        },
+        "UserPool": {
+          "userPoolName": "*",
+          "selfSignUpEnabled": "boolean",
+          "userVerification": {
+            "emailSubject": "*",
+            "emailBody": "*",
+            "emailStyle": "VerificationEmailStyle",
+            "smsMessage": "*"
+          },
+          "userInvitation": {
+            "emailSubject": "*",
+            "emailBody": "*",
+            "smsMessage": "*"
+          },
+          "smsRole": "*",
+          "smsRoleExternalId": "*",
+          "snsRegion": "*",
+          "enableSmsRole": "boolean",
+          "signInAliases": {
+            "username": "boolean",
+            "email": "boolean",
+            "phone": "boolean",
+            "preferredUsername": "boolean"
+          },
+          "autoVerify": {
+            "email": "boolean",
+            "phone": "boolean"
+          },
+          "keepOriginal": {
+            "email": "boolean",
+            "phone": "boolean"
+          },
+          "standardAttributes": {
+            "address": {
+              "mutable": "boolean",
+              "required": "boolean"
+            }
+          },
+          "customAttributes": "*",
+          "mfa": "Mfa",
+          "mfaMessage": "*",
+          "mfaSecondFactor": {
+            "sms": "boolean",
+            "otp": "boolean",
+            "email": "boolean"
+          },
+          "passwordPolicy": {
+            "tempPasswordValidity": "*",
+            "minLength": "*",
+            "requireLowercase": "boolean",
+            "requireUppercase": "boolean",
+            "requireDigits": "boolean",
+            "requireSymbols": "boolean",
+            "passwordHistorySize": "*"
+          },
+          "signInPolicy": {
+            "allowedFirstAuthFactors": {
+              "password": "boolean",
+              "emailOtp": "boolean",
+              "smsOtp": "boolean",
+              "passkey": "boolean"
+            }
+          },
+          "passkeyRelyingPartyId": "*",
+          "passkeyUserVerification": "PasskeyUserVerification",
+          "emailSettings": {
+            "from": "*",
+            "replyTo": "*"
+          },
+          "email": "*",
+          "lambdaTriggers": {
+            "createAuthChallenge": {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          },
+          "signInCaseSensitive": "boolean",
+          "accountRecovery": "AccountRecovery",
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "deviceTracking": {
+            "challengeRequiredOnNewDevice": "boolean",
+            "deviceOnlyRememberedOnUserPrompt": "boolean"
+          },
+          "customSenderKmsKey": "*",
+          "advancedSecurityMode": "AdvancedSecurityMode",
+          "featurePlan": "FeaturePlan",
+          "standardThreatProtectionMode": "StandardThreatProtectionMode",
+          "customThreatProtectionMode": "CustomThreatProtectionMode",
+          "addTrigger": [
+            "*",
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            "LambdaVersion"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cognito-identitypool": {
+        "IdentityPool": {
+          "identityPoolName": "*",
+          "authenticatedRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "unauthenticatedRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "allowUnauthenticatedIdentities": "boolean",
+          "roleMappings": {
+            "providerUrl": "*",
+            "mappingKey": "*",
+            "useToken": "boolean",
+            "resolveAmbiguousRoles": "boolean",
+            "rules": {
+              "claim": "*",
+              "mappedRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "claimValue": "*",
+              "matchType": "RoleMappingMatchType"
+            }
+          },
+          "allowClassicFlow": "boolean",
+          "authenticationProviders": {
+            "facebook": {
+              "appId": "*"
+            },
+            "google": {
+              "clientId": "*"
+            },
+            "amazon": {
+              "appId": "*"
+            },
+            "apple": {
+              "servicesId": "*"
+            },
+            "twitter": {
+              "consumerKey": "*",
+              "consumerSecret": "*"
+            },
+            "userPools": "*",
+            "openIdConnectProviders": "*",
+            "samlProviders": "*",
+            "customProvider": "*"
+          },
+          "addUserPoolAuthentication": [
+            "*"
+          ]
+        },
+        "IdentityPoolRoleAttachment": {
+          "identityPool": {
+            "identityPoolId": "*",
+            "identityPoolArn": "*",
+            "identityPoolName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "authenticatedRole": "*",
+          "unauthenticatedRole": "*",
+          "roleMappings": {
+            "providerUrl": "*",
+            "mappingKey": "*",
+            "useToken": "boolean",
+            "resolveAmbiguousRoles": "boolean",
+            "rules": {
+              "claim": "*",
+              "mappedRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "claimValue": "*",
+              "matchType": "RoleMappingMatchType"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-config": {
+        "AccessKeysRotated": {
+          "maxAge": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CloudFormationStackDriftDetectionCheck": {
+          "ownStackOnly": "boolean",
+          "role": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CloudFormationStackNotificationCheck": {
+          "topics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "ManagedRule": {
+          "identifier": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CustomRule": {
+          "lambdaFunction": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "configurationChanges": "boolean",
+          "periodic": "boolean",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CustomPolicy": {
+          "policyText": "*",
+          "enableDebugLog": "boolean",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        }
+      },
+      "aws-cdk-lib.aws-docdb": {
+        "DatabaseCluster": {
+          "engineVersion": "*",
+          "port": "*",
+          "masterUser": {
+            "username": "*",
+            "password": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "excludeCharacters": "*",
+            "secretName": "*"
+          },
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "storageEncrypted": "boolean",
+          "dbClusterName": "*",
+          "instanceIdentifierBase": "*",
+          "instanceType": "*",
+          "instances": "*",
+          "serverlessV2ScalingConfiguration": {
+            "minCapacity": "*",
+            "maxCapacity": "*"
+          },
+          "caCertificate": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": "*",
+          "preferredMaintenanceWindow": "*",
+          "instanceMaintenanceWindow": "*",
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "exportProfilerLogsToCloudWatch": "boolean",
+          "exportAuditLogsToCloudWatch": "boolean",
+          "cloudWatchLogsRetention": "RetentionDays",
+          "cloudWatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enablePerformanceInsights": "boolean",
+          "instanceRemovalPolicy": "RemovalPolicy",
+          "securityGroupRemovalPolicy": "RemovalPolicy",
+          "copyTagsToSnapshot": "boolean",
+          "storageType": "StorageType",
+          "manageMasterUserPassword": "boolean",
+          "masterUserSecretKmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addRotationSingleUser": [
+            "*"
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*"
+            }
+          ],
+          "addSecurityGroups": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "secretName": "*",
+          "masterSecret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "excludeCharacters": "*"
+        },
+        "DatabaseInstance": {
+          "cluster": "*",
+          "instanceType": "*",
+          "availabilityZone": "*",
+          "dbInstanceName": "*",
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "removalPolicy": "RemovalPolicy",
+          "enablePerformanceInsights": "boolean",
+          "caCertificate": "*"
+        },
+        "ClusterParameterGroup": {
+          "description": "*",
+          "family": "*",
+          "dbClusterParameterGroupName": "*",
+          "parameters": "*"
+        }
+      },
+      "aws-cdk-lib.aws-dynamodb": {
+        "TableV2": {
+          "partitionKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "sortKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "tableName": "*",
+          "timeToLiveAttribute": "*",
+          "dynamoStream": "StreamViewType",
+          "removalPolicy": "RemovalPolicy",
+          "billing": "*",
+          "replicas": {
+            "region": "*",
+            "readCapacity": "*",
+            "maxReadRequestUnits": "*",
+            "globalSecondaryIndexOptions": "*",
+            "contributorInsights": "boolean",
+            "contributorInsightsSpecification": {
+              "enabled": "boolean",
+              "mode": "ContributorInsightsMode"
+            },
+            "deletionProtection": "boolean",
+            "pointInTimeRecovery": "boolean",
+            "pointInTimeRecoverySpecification": {
+              "pointInTimeRecoveryEnabled": "boolean",
+              "recoveryPeriodInDays": "*"
+            },
+            "tableClass": "TableClass",
+            "kinesisStream": {
+              "streamArn": "*",
+              "streamName": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            },
+            "tags": {
+              "key": "*",
+              "value": "*"
+            },
+            "resourcePolicy": "*"
+          },
+          "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode",
+          "witnessRegion": "*",
+          "multiRegionConsistency": "MultiRegionConsistency",
+          "globalSecondaryIndexes": {
+            "partitionKey": {
+              "name": "*",
+              "type": "AttributeType"
+            },
+            "readCapacity": "*",
+            "maxReadRequestUnits": "*",
+            "maxWriteRequestUnits": "*",
+            "warmThroughput": {
+              "readUnitsPerSecond": "*",
+              "writeUnitsPerSecond": "*"
+            },
+            "indexName": "*",
+            "projectionType": "ProjectionType",
+            "nonKeyAttributes": "*"
+          },
+          "localSecondaryIndexes": {
+            "sortKey": {
+              "name": "*",
+              "type": "AttributeType"
+            },
+            "indexName": "*",
+            "projectionType": "ProjectionType",
+            "nonKeyAttributes": "*"
+          },
+          "encryption": "*",
+          "warmThroughput": {
+            "readUnitsPerSecond": "*",
+            "writeUnitsPerSecond": "*"
+          },
+          "contributorInsights": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "tableClass": "TableClass",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tags": {
+            "key": "*",
+            "value": "*"
+          },
+          "resourcePolicy": "*",
+          "streamResourcePolicy": "*",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addToStreamResourcePolicy": [
+            "*"
+          ],
+          "addReplica": [
+            {
+              "region": "*",
+              "readCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "globalSecondaryIndexOptions": "*",
+              "contributorInsights": "boolean",
+              "contributorInsightsSpecification": {
+                "enabled": "boolean",
+                "mode": "ContributorInsightsMode"
+              },
+              "deletionProtection": "boolean",
+              "pointInTimeRecovery": "boolean",
+              "pointInTimeRecoverySpecification": {
+                "pointInTimeRecoveryEnabled": "boolean",
+                "recoveryPeriodInDays": "*"
+              },
+              "tableClass": "TableClass",
+              "kinesisStream": {
+                "streamArn": "*",
+                "streamName": "*",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "tags": {
+                "key": "*",
+                "value": "*"
+              },
+              "resourcePolicy": "*"
+            }
+          ],
+          "addGlobalSecondaryIndex": [
+            {
+              "partitionKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "readCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "maxWriteRequestUnits": "*",
+              "warmThroughput": {
+                "readUnitsPerSecond": "*",
+                "writeUnitsPerSecond": "*"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "addLocalSecondaryIndex": [
+            {
+              "sortKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "replica": [
+            "*"
+          ]
+        },
+        "TableV2MultiAccountReplica": {
+          "replicaSourceTable": {
+            "tableId": "*",
+            "grants": "*",
+            "tableArn": "*",
+            "tableName": "*",
+            "tableStreamArn": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tableName": "*",
+          "encryption": "*",
+          "removalPolicy": "RemovalPolicy",
+          "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode",
+          "grantIndexPermissions": "boolean",
+          "contributorInsights": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "tableClass": "TableClass",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tags": {
+            "key": "*",
+            "value": "*"
+          },
+          "resourcePolicy": "*",
+          "streamResourcePolicy": "*",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addToStreamResourcePolicy": [
+            "*"
+          ]
+        },
+        "Table": {
+          "tableName": "*",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kinesisPrecisionTimestamp": "ApproximateCreationDateTimePrecision",
+          "readCapacity": "*",
+          "writeCapacity": "*",
+          "maxReadRequestUnits": "*",
+          "maxWriteRequestUnits": "*",
+          "billingMode": "BillingMode",
+          "warmThroughput": {
+            "readUnitsPerSecond": "*",
+            "writeUnitsPerSecond": "*"
+          },
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "serverSideEncryption": "boolean",
+          "tableClass": "TableClass",
+          "encryption": "TableEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeToLiveAttribute": "*",
+          "stream": "StreamViewType",
+          "removalPolicy": "RemovalPolicy",
+          "replicaRemovalPolicy": "RemovalPolicy",
+          "replicationRegions": "*",
+          "replicationTimeout": "*",
+          "waitForReplicationToFinish": "boolean",
+          "contributorInsightsEnabled": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "importSource": {
+            "compressionType": "InputCompressionType",
+            "inputFormat": "*",
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "bucketOwner": "*",
+            "keyPrefix": "*"
+          },
+          "resourcePolicy": "*",
+          "partitionKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "sortKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addGlobalSecondaryIndex": [
+            {
+              "partitionKeys": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "readCapacity": "*",
+              "writeCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "maxWriteRequestUnits": "*",
+              "warmThroughput": {
+                "readUnitsPerSecond": "*",
+                "writeUnitsPerSecond": "*"
+              },
+              "contributorInsightsEnabled": "boolean",
+              "contributorInsightsSpecification": {
+                "enabled": "boolean",
+                "mode": "ContributorInsightsMode"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "addLocalSecondaryIndex": [
+            {
+              "sortKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "autoScaleReadCapacity": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleWriteCapacity": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleGlobalSecondaryIndexReadCapacity": [
+            "*",
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleGlobalSecondaryIndexWriteCapacity": [
+            "*",
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "schema": [
+            "*"
+          ],
+          "schemaV2": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ec2": {
+        "BastionHostLinux": {
+          "availabilityZone": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "instanceName": "*",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "timeout": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "userDataCausesReplacement": "boolean",
+          "allowSshAccessFrom": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "ClientVpnAuthorizationRule": {
+          "clientVpnEndpoint": "*",
+          "clientVpnEndoint": "*",
+          "cidr": "*",
+          "groupId": "*",
+          "description": "*"
+        },
+        "ClientVpnEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "cidr": "*",
+          "clientCertificateArn": "*",
+          "userBasedAuthentication": "*",
+          "logging": "boolean",
+          "logGroup": "*",
+          "logStream": "*",
+          "clientConnectionHandler": {
+            "functionName": "*",
+            "functionArn": "*"
+          },
+          "description": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "selfServicePortal": "boolean",
+          "serverCertificateArn": "*",
+          "splitTunnel": "boolean",
+          "transportProtocol": "TransportProtocol",
+          "port": "VpnPort",
+          "dnsServers": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "authorizeAllUsersToVpcCidr": "boolean",
+          "sessionTimeout": "ClientVpnSessionTimeout",
+          "disconnectOnSessionTimeout": "boolean",
+          "clientLoginBanner": "*",
+          "clientRouteEnforcementOptions": {
+            "enforced": "boolean"
+          },
+          "addAuthorizationRule": [
+            "*",
+            {
+              "cidr": "*",
+              "groupId": "*",
+              "description": "*"
+            }
+          ],
+          "addRoute": [
+            "*",
+            {
+              "cidr": "*",
+              "description": "*",
+              "target": "*"
+            }
+          ]
+        },
+        "ClientVpnRoute": {
+          "clientVpnEndpoint": {
+            "endpointId": "*",
+            "targetNetworksAssociated": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "clientVpnEndoint": {
+            "endpointId": "*",
+            "targetNetworksAssociated": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "cidr": "*",
+          "description": "*",
+          "target": "*"
+        },
+        "Instance": {
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "availabilityZone": "*",
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "resourceSignalTimeout": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "userData": "*",
+          "userDataCausesReplacement": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceName": "*",
+          "sourceDestCheck": "boolean",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "privateIpAddress": "*",
+          "propagateTagsToVolumeOnCreation": "boolean",
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "timeout": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "httpEndpoint": "boolean",
+          "httpProtocolIpv6": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "HttpTokens",
+          "instanceMetadataTags": "boolean",
+          "detailedMonitoring": "boolean",
+          "ssmSessionPermissions": "boolean",
+          "associatePublicIpAddress": "boolean",
+          "creditSpecification": "CpuCredits",
+          "ebsOptimized": "boolean",
+          "disableApiTermination": "boolean",
+          "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior",
+          "placementGroup": "*",
+          "enclaveEnabled": "boolean",
+          "hibernationEnabled": "boolean",
+          "ipv6AddressCount": "*",
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "addUserData": [
+            "*"
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "applyCloudFormationInit": [
+            "*",
+            {
+              "configSets": "*",
+              "timeout": "*",
+              "embedFingerprint": "boolean",
+              "printLog": "boolean",
+              "ignoreFailures": "boolean",
+              "includeUrl": "boolean",
+              "includeRole": "boolean"
+            }
+          ]
+        },
+        "KeyPair": {
+          "_isOsCompatible": [
+            "OperatingSystemType"
+          ]
+        },
+        "LaunchTemplate": {
+          "launchTemplateName": "*",
+          "versionDescription": "*",
+          "instanceType": "*",
+          "machineImage": "*",
+          "userData": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "cpuCredits": "CpuCredits",
+          "cpuOptions": {
+            "amdSevSnp": "boolean",
+            "coreCount": "*",
+            "nestedVirtualization": "boolean",
+            "threadsPerCore": "*"
+          },
+          "disableApiTermination": "boolean",
+          "ebsOptimized": "boolean",
+          "nitroEnclaveEnabled": "boolean",
+          "hibernationConfigured": "boolean",
+          "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior",
+          "spotOptions": {
+            "blockDuration": "*",
+            "interruptionBehavior": "SpotInstanceInterruption",
+            "maxPrice": "*",
+            "requestType": "SpotRequestType",
+            "validUntil": "*"
+          },
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "detailedMonitoring": "boolean",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "requireImdsv2": "boolean",
+          "httpEndpoint": "boolean",
+          "httpProtocolIpv6": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "LaunchTemplateHttpTokens",
+          "instanceMetadataTags": "boolean",
+          "associatePublicIpAddress": "boolean",
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "placementGroup": "*",
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "NetworkAcl": {
+          "networkAclName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "associateWithSubnet": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ]
+        },
+        "NetworkAclEntry": {
+          "networkAcl": {
+            "networkAclId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkAclEntryName": "*",
+          "cidr": "*",
+          "traffic": "*",
+          "direction": "TrafficDirection",
+          "ruleAction": "Action",
+          "ruleNumber": "*"
+        },
+        "SubnetNetworkAclAssociation": {
+          "subnetNetworkAclAssociationName": "*",
+          "networkAcl": "*",
+          "subnet": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "PlacementGroup": {},
+        "PrefixList": {},
+        "SecurityGroup": {
+          "securityGroupName": "*",
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "disableInlineRules": "boolean",
+          "addIngressRule": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "*",
+            "*",
+            "boolean"
+          ],
+          "addEgressRule": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "*",
+            "*",
+            "boolean"
+          ]
+        },
+        "Volume": {
+          "volumeName": "*",
+          "availabilityZone": "*",
+          "size": "*",
+          "snapshotId": "*",
+          "enableMultiAttach": "boolean",
+          "encrypted": "boolean",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoEnableIo": "boolean",
+          "volumeType": "EbsDeviceVolumeType",
+          "iops": "*",
+          "removalPolicy": "RemovalPolicy",
+          "throughput": "*",
+          "volumeInitializationRate": "*"
+        },
+        "VpcEndpointService": {
+          "vpcEndpointServiceName": "*",
+          "vpcEndpointServiceLoadBalancers": {
+            "loadBalancerArn": "*"
+          },
+          "acceptanceRequired": "boolean",
+          "contributorInsights": "boolean",
+          "whitelistedPrincipals": "*",
+          "allowedPrincipals": "*",
+          "supportedIpAddressTypes": "IpAddressType",
+          "allowedRegions": "*"
+        },
+        "GatewayVpcEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "service": {
+            "name": "*"
+          },
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "ipAddressType": "VpcEndpointIpAddressType",
+          "dnsRecordIpType": "VpcEndpointDnsRecordIpType"
+        },
+        "InterfaceVpcEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "service": {
+            "name": "*",
+            "port": "*",
+            "privateDnsDefault": "boolean"
+          },
+          "privateDnsEnabled": "boolean",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "open": "boolean",
+          "lookupSupportedAzs": "boolean",
+          "ipAddressType": "VpcEndpointIpAddressType",
+          "dnsRecordIpType": "VpcEndpointDnsRecordIpType",
+          "privateDnsOnlyForInboundResolverEndpoint": "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint",
+          "serviceRegion": "*"
+        },
+        "FlowLog": {
+          "flowLogName": "*",
+          "resourceType": "*",
+          "trafficType": "FlowLogTrafficType",
+          "destination": "*",
+          "logFormat": "*",
+          "maxAggregationInterval": "FlowLogMaxAggregationInterval"
+        },
+        "Vpc": {
+          "ipProtocol": "IpProtocol",
+          "ipAddresses": "*",
+          "cidr": "*",
+          "enableDnsHostnames": "boolean",
+          "enableDnsSupport": "boolean",
+          "defaultInstanceTenancy": "DefaultInstanceTenancy",
+          "maxAzs": "*",
+          "reservedAzs": "*",
+          "availabilityZones": "*",
+          "natGateways": "*",
+          "natGatewaySubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "natGatewayProvider": "*",
+          "subnetConfiguration": {
+            "cidrMask": "*",
+            "subnetType": "SubnetType",
+            "name": "*",
+            "reserved": "boolean",
+            "mapPublicIpOnLaunch": "boolean",
+            "ipv6AssignAddressOnCreation": "boolean"
+          },
+          "vpnGateway": "boolean",
+          "vpnGatewayAsn": "*",
+          "vpnConnections": "*",
+          "vpnRoutePropagation": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "gatewayEndpoints": "*",
+          "flowLogs": "*",
+          "vpcName": "*",
+          "restrictDefaultSecurityGroup": "boolean",
+          "createInternetGateway": "boolean",
+          "ipv6Addresses": {
+            "amazonProvided": "boolean"
+          },
+          "addS3Endpoint": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ],
+          "addDynamoDbEndpoint": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ]
+        },
+        "Subnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "addDefaultInternetRoute": [
+            "*",
+            "*"
+          ],
+          "addIpv6DefaultInternetRoute": [
+            "*",
+            "*"
+          ],
+          "addIpv6DefaultEgressOnlyInternetRoute": [
+            "*"
+          ],
+          "addDefaultNatRoute": [
+            "*"
+          ],
+          "addIpv6Nat64Route": [
+            "*"
+          ],
+          "addRoute": [
+            "*",
+            {
+              "destinationCidrBlock": "*",
+              "destinationIpv6CidrBlock": "*",
+              "routerType": "RouterType",
+              "routerId": "*",
+              "enablesInternetConnectivity": "boolean"
+            }
+          ],
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "PublicSubnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "addNatGateway": [
+            "*",
+            {
+              "maxDrainDuration": "*"
+            }
+          ]
+        },
+        "PrivateSubnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean"
+        },
+        "ImportedVpc": {
+          "vpcId": "*",
+          "vpcCidrBlock": "*",
+          "availabilityZones": "*",
+          "publicSubnetIds": "*",
+          "publicSubnetNames": "*",
+          "publicSubnetRouteTableIds": "*",
+          "publicSubnetIpv4CidrBlocks": "*",
+          "privateSubnetIds": "*",
+          "privateSubnetNames": "*",
+          "privateSubnetRouteTableIds": "*",
+          "privateSubnetIpv4CidrBlocks": "*",
+          "isolatedSubnetIds": "*",
+          "isolatedSubnetNames": "*",
+          "isolatedSubnetRouteTableIds": "*",
+          "isolatedSubnetIpv4CidrBlocks": "*",
+          "vpnGatewayId": "*",
+          "region": "*"
+        },
+        "LookedUpVpc": {
+          "vpcId": "*",
+          "vpcCidrBlock": "*",
+          "availabilityZones": "*",
+          "publicSubnetIds": "*",
+          "publicSubnetNames": "*",
+          "publicSubnetRouteTableIds": "*",
+          "privateSubnetIds": "*",
+          "privateSubnetNames": "*",
+          "privateSubnetRouteTableIds": "*",
+          "isolatedSubnetIds": "*",
+          "isolatedSubnetNames": "*",
+          "isolatedSubnetRouteTableIds": "*",
+          "vpnGatewayId": "*",
+          "subnetGroups": {
+            "name": "*",
+            "type": "VpcSubnetGroupType",
+            "subnets": {
+              "subnetId": "*",
+              "availabilityZone": "*",
+              "routeTableId": "*",
+              "cidr": "*"
+            }
+          },
+          "region": "*",
+          "ownerAccountId": "*"
+        },
+        "ImportedSubnet": {
+          "availabilityZone": "*",
+          "ipv4CidrBlock": "*",
+          "routeTableId": "*",
+          "subnetId": "*",
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "VpnGateway": {
+          "type": "*",
+          "amazonSideAsn": "*"
+        },
+        "VpnConnection": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ip": "*",
+          "asn": "*",
+          "staticRoutes": "*",
+          "tunnelOptions": {
+            "preSharedKey": "*",
+            "preSharedKeySecret": "*",
+            "tunnelInsideCidr": "*"
+          }
+        }
+      },
+      "aws-cdk-lib.aws-ecr": {
+        "Repository": {
+          "repositoryName": "*",
+          "encryption": "*",
+          "encryptionKey": "*",
+          "lifecycleRules": {
+            "rulePriority": "*",
+            "description": "*",
+            "tagStatus": "TagStatus",
+            "tagPrefixList": "*",
+            "tagPatternList": "*",
+            "maxImageCount": "*",
+            "maxImageAge": "*"
+          },
+          "lifecycleRegistryId": "*",
+          "removalPolicy": "RemovalPolicy",
+          "imageScanOnPush": "boolean",
+          "imageTagMutability": "TagMutability",
+          "imageTagMutabilityExclusionFilters": "*",
+          "autoDeleteImages": "boolean",
+          "emptyOnDelete": "boolean",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addLifecycleRule": [
+            {
+              "rulePriority": "*",
+              "description": "*",
+              "tagStatus": "TagStatus",
+              "tagPrefixList": "*",
+              "tagPatternList": "*",
+              "maxImageCount": "*",
+              "maxImageAge": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ecs": {
+        "Cluster": {
+          "clusterName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "defaultCloudMapNamespace": {
+            "name": "*",
+            "type": "NamespaceType",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "useForServiceConnect": "boolean"
+          },
+          "capacity": {
+            "instanceType": "*",
+            "machineImage": "*",
+            "taskDrainTime": "*",
+            "spotInstanceDraining": "boolean",
+            "topicEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "machineImageType": "MachineImageType",
+            "minCapacity": "*",
+            "maxCapacity": "*",
+            "desiredCapacity": "*",
+            "keyName": "*",
+            "keyPair": {
+              "keyPairName": "*",
+              "type": "KeyPairType"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              }
+            },
+            "notificationsTopic": {
+              "topicArn": "*",
+              "topicName": "*",
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            },
+            "notifications": {
+              "scalingEvents": "*"
+            },
+            "allowAllOutbound": "boolean",
+            "updateType": "UpdateType",
+            "rollingUpdateConfiguration": {
+              "maxBatchSize": "*",
+              "minInstancesInService": "*",
+              "minSuccessfulInstancesPercent": "*",
+              "waitOnResourceSignals": "boolean",
+              "suspendProcesses": "ScalingProcess"
+            },
+            "replacingUpdateMinSuccessfulInstancesPercent": "*",
+            "ignoreUnmodifiedSizeProperties": "boolean",
+            "resourceSignalCount": "*",
+            "associatePublicIpAddress": "boolean",
+            "spotPrice": "*",
+            "healthCheck": "*",
+            "healthChecks": "*",
+            "blockDevices": {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            },
+            "instanceMonitoring": "Monitoring",
+            "groupMetrics": "*",
+            "signals": "*",
+            "updatePolicy": "*",
+            "newInstancesProtectedFromScaleIn": "boolean",
+            "autoScalingGroupName": "*",
+            "terminationPolicies": "TerminationPolicy",
+            "terminationPolicyCustomLambdaFunctionArn": "*",
+            "capacityRebalance": "boolean",
+            "ssmSessionPermissions": "boolean",
+            "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+            "deletionProtection": "DeletionProtection",
+            "instanceLifecyclePolicy": {
+              "retentionTriggers": {
+                "terminateHookAbandon": "TerminateHookAbandonAction"
+              }
+            }
+          },
+          "capacityProviders": "*",
+          "enableFargateCapacityProviders": [],
+          "containerInsights": "boolean",
+          "containerInsightsV2": "ContainerInsights",
+          "executeCommandConfiguration": {
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "logConfiguration": {
+              "cloudWatchEncryptionEnabled": "boolean",
+              "cloudWatchLogGroup": "*",
+              "s3Bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "s3EncryptionEnabled": "boolean",
+              "s3KeyPrefix": "*"
+            },
+            "logging": "ExecuteCommandLogging"
+          },
+          "managedStorageConfiguration": {
+            "fargateEphemeralStorageKmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "kmsKey": "*"
+          },
+          "addDefaultCapacityProviderStrategy": [
+            {
+              "capacityProvider": "*",
+              "base": "*",
+              "weight": "*"
+            }
+          ],
+          "addDefaultCloudMapNamespace": [
+            {
+              "name": "*",
+              "type": "NamespaceType",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "useForServiceConnect": "boolean"
+            }
+          ],
+          "addExistingDefaultCloudMapNamespace": [
+            {
+              "namespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "useForServiceConnect": "boolean"
+            }
+          ],
+          "addCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "machineImage": "*",
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType"
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addAsgCapacityProvider": [
+            "*",
+            {
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType"
+            }
+          ],
+          "addManagedInstancesCapacityProvider": [
+            "*"
+          ],
+          "addAutoScalingGroup": [
+            "*",
+            {
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType"
+            }
+          ],
+          "addCapacityProvider": [
+            "*"
+          ],
+          "arnForTasks": [
+            "*"
+          ],
+          "grantTaskProtection": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "metricCpuReservation": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCpuUtilization": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricMemoryReservation": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricMemoryUtilization": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ImportedCluster": {
+          "clusterName": "*",
+          "clusterArn": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "hasEc2Capacity": "boolean",
+          "defaultCloudMapNamespace": {
+            "namespaceName": "*",
+            "namespaceId": "*",
+            "namespaceArn": "*",
+            "type": "NamespaceType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoscalingGroup": {
+            "autoScalingGroupName": "*",
+            "autoScalingGroupArn": "*",
+            "osType": "OperatingSystemType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "executeCommandConfiguration": {
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "logConfiguration": {
+              "cloudWatchEncryptionEnabled": "boolean",
+              "cloudWatchLogGroup": "*",
+              "s3Bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "s3EncryptionEnabled": "boolean",
+              "s3KeyPrefix": "*"
+            },
+            "logging": "ExecuteCommandLogging"
+          }
+        }
+      },
+      "aws-cdk-lib.aws-efs": {
+        "AccessPoint": {
+          "fileSystem": "*",
+          "createAcl": {
+            "ownerUid": "*",
+            "ownerGid": "*",
+            "permissions": "*"
+          },
+          "path": "*",
+          "posixUser": {
+            "uid": "*",
+            "gid": "*",
+            "secondaryGids": "*"
+          },
+          "clientToken": "*"
+        },
+        "ImportedAccessPoint": {
+          "accessPointId": "*",
+          "accessPointArn": "*",
+          "fileSystem": "*"
+        },
+        "FileSystem": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "encrypted": "boolean",
+          "fileSystemName": "*",
+          "kmsKey": "*",
+          "lifecyclePolicy": "LifecyclePolicy",
+          "outOfInfrequentAccessPolicy": "OutOfInfrequentAccessPolicy",
+          "transitionToArchivePolicy": "LifecyclePolicy",
+          "performanceMode": "PerformanceMode",
+          "throughputMode": "ThroughputMode",
+          "provisionedThroughputPerSecond": "*",
+          "removalPolicy": "RemovalPolicy",
+          "enableAutomaticBackups": "boolean",
+          "fileSystemPolicy": "*",
+          "allowAnonymousAccess": "boolean",
+          "oneZone": "boolean",
+          "replicationOverwriteProtection": "ReplicationOverwriteProtection",
+          "replicationConfiguration": "*",
+          "addAccessPoint": [
+            "*",
+            {
+              "createAcl": {
+                "ownerUid": "*",
+                "ownerGid": "*",
+                "permissions": "*"
+              },
+              "path": "*",
+              "posixUser": {
+                "uid": "*",
+                "gid": "*",
+                "secondaryGids": "*"
+              },
+              "clientToken": "*"
+            }
+          ]
+        },
+        "ImportedFileSystem": {
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "fileSystemId": "*",
+          "fileSystemArn": "*"
+        }
+      },
+      "aws-cdk-lib.aws-eks": {
+        "AccessEntry": {
+          "accessEntryName": "*",
+          "accessEntryType": "AccessEntryType",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "accessPolicies": {
+            "accessScope": {
+              "namespaces": "*",
+              "type": "AccessScopeType"
+            },
+            "policy": "*"
+          },
+          "principal": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addAccessPolicies": [
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            }
+          ]
+        },
+        "Addon": {
+          "addonName": "*",
+          "addonVersion": "*",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "preserveOnDelete": "boolean",
+          "configurationValues": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Cluster": {
+          "defaultCapacity": "*",
+          "defaultCapacityInstance": "*",
+          "defaultCapacityType": "DefaultCapacityType",
+          "kubectlLambdaRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "bootstrapClusterCreatorAdminPermissions": "boolean",
+          "bootstrapSelfManagedAddons": "boolean",
+          "tags": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "outputMastersRoleArn": "boolean",
+          "endpointAccess": "*",
+          "kubectlEnvironment": "*",
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerEnvironment": "*",
+          "clusterHandlerSecurityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean",
+          "placeClusterHandlerInVpc": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": {
+              "enableWafv2": "boolean",
+              "enableWaf": "boolean"
+            },
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "authenticationMode": "AuthenticationMode",
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "controlPlaneScalingTier": "ControlPlaneScalingTier",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "outputClusterName": "boolean",
+          "outputConfigCommand": "boolean",
+          "grantAccess": [
+            "*",
+            "*",
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            },
+            {
+              "accessEntryType": "AccessEntryType"
+            }
+          ],
+          "getServiceLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "getIngressLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "addAutoScalingGroupCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "mapRole": "boolean",
+              "bootstrapEnabled": "boolean",
+              "bootstrapOptions": {
+                "useMaxPods": "boolean",
+                "enableDockerBridge": "boolean",
+                "awsApiRetryAttempts": "*",
+                "dockerConfigJson": "*",
+                "dnsClusterIp": "*",
+                "kubeletExtraArgs": "*",
+                "additionalArgs": "*"
+              },
+              "machineImageType": "MachineImageType",
+              "spotInterruptHandler": "boolean",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "masterKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "pauseTime": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addNodegroupCapacity": [
+            "*",
+            {
+              "nodegroupName": "*",
+              "subnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "amiType": "NodegroupAmiType",
+              "diskSize": "*",
+              "desiredSize": "*",
+              "maxSize": "*",
+              "minSize": "*",
+              "forceUpdate": "boolean",
+              "instanceType": "*",
+              "labels": "*",
+              "taints": {
+                "effect": "TaintEffect",
+                "key": "*",
+                "value": "*"
+              },
+              "nodeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "releaseVersion": "*",
+              "remoteAccess": {
+                "sshKeyName": "*",
+                "sourceSecurityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                }
+              },
+              "tags": "*",
+              "launchTemplateSpec": {
+                "id": "*",
+                "version": "*"
+              },
+              "capacityType": "CapacityType",
+              "maxUnavailable": "*",
+              "maxUnavailablePercentage": "*",
+              "enableNodeAutoRepair": "boolean",
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "addFargateProfile": [
+            "*",
+            {
+              "fargateProfileName": "*",
+              "podExecutionRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "selectors": {
+                "namespace": "*",
+                "labels": "*"
+              },
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "subnetSelection": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "_attachFargateProfile": [
+            "*"
+          ],
+          "_attachKubectlResourceScope": [
+            "*"
+          ]
+        },
+        "ImportedCluster": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clusterName": "*",
+          "clusterEndpoint": "*",
+          "clusterCertificateAuthorityData": "*",
+          "clusterSecurityGroupId": "*",
+          "clusterEncryptionConfigKeyArn": "*",
+          "ipFamily": "IpFamily",
+          "securityGroupIds": "*",
+          "kubectlRoleArn": "*",
+          "kubectlLambdaRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlEnvironment": "*",
+          "kubectlSecurityGroupId": "*",
+          "kubectlPrivateSubnetIds": "*",
+          "openIdConnectProvider": {
+            "openIdConnectProviderArn": "*",
+            "openIdConnectProviderIssuer": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlProvider": {
+            "serviceToken": "*",
+            "roleArn": "*",
+            "handlerRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerSecurityGroupId": "*",
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean"
+        },
+        "FargateCluster": {
+          "defaultProfile": {
+            "fargateProfileName": "*",
+            "podExecutionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "selectors": {
+              "namespace": "*",
+              "labels": "*"
+            },
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "subnetSelection": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "outputMastersRoleArn": "boolean",
+          "endpointAccess": "*",
+          "kubectlEnvironment": "*",
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerEnvironment": "*",
+          "clusterHandlerSecurityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean",
+          "placeClusterHandlerInVpc": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": {
+              "enableWafv2": "boolean",
+              "enableWaf": "boolean"
+            },
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "authenticationMode": "AuthenticationMode",
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "controlPlaneScalingTier": "ControlPlaneScalingTier",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "outputClusterName": "boolean",
+          "outputConfigCommand": "boolean"
+        },
+        "Nodegroup": {
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "nodegroupName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "amiType": "NodegroupAmiType",
+          "diskSize": "*",
+          "desiredSize": "*",
+          "maxSize": "*",
+          "minSize": "*",
+          "forceUpdate": "boolean",
+          "instanceType": "*",
+          "instanceTypes": "*",
+          "labels": "*",
+          "taints": {
+            "effect": "TaintEffect",
+            "key": "*",
+            "value": "*"
+          },
+          "nodeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "releaseVersion": "*",
+          "remoteAccess": {
+            "sshKeyName": "*",
+            "sourceSecurityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "tags": "*",
+          "launchTemplateSpec": {
+            "id": "*",
+            "version": "*"
+          },
+          "capacityType": "CapacityType",
+          "maxUnavailable": "*",
+          "maxUnavailablePercentage": "*",
+          "enableNodeAutoRepair": "boolean",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OidcProviderNative": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-eks-v2": {
+        "AccessEntry": {
+          "accessEntryName": "*",
+          "accessEntryType": "AccessEntryType",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "accessPolicies": {
+            "accessScope": {
+              "namespaces": "*",
+              "type": "AccessScopeType"
+            },
+            "policy": "*"
+          },
+          "principal": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addAccessPolicies": [
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            }
+          ]
+        },
+        "Addon": {
+          "addonName": "*",
+          "addonVersion": "*",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "preserveOnDelete": "boolean",
+          "configurationValues": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Cluster": {
+          "compute": {
+            "nodePools": "*",
+            "nodeRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "defaultCapacity": "*",
+          "defaultCapacityInstance": "*",
+          "defaultCapacityType": "DefaultCapacityType",
+          "bootstrapClusterCreatorAdminPermissions": "boolean",
+          "bootstrapSelfManagedAddons": "boolean",
+          "outputConfigCommand": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "endpointAccess": "*",
+          "prune": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": "*",
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "tags": "*",
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "controlPlaneScalingTier": "*",
+          "removalPolicy": "RemovalPolicy",
+          "grantAccess": [
+            "*",
+            "*",
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            },
+            {
+              "accessEntryType": "AccessEntryType"
+            }
+          ],
+          "grantClusterAdmin": [
+            "*",
+            "*"
+          ],
+          "getServiceLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "getIngressLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "addAutoScalingGroupCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "bootstrapEnabled": "boolean",
+              "bootstrapOptions": {
+                "useMaxPods": "boolean",
+                "enableDockerBridge": "boolean",
+                "awsApiRetryAttempts": "*",
+                "dockerConfigJson": "*",
+                "dnsClusterIp": "*",
+                "kubeletExtraArgs": "*",
+                "additionalArgs": "*"
+              },
+              "machineImageType": "MachineImageType",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "masterKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "pauseTime": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addNodegroupCapacity": [
+            "*",
+            {
+              "nodegroupName": "*",
+              "subnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "amiType": "NodegroupAmiType",
+              "diskSize": "*",
+              "desiredSize": "*",
+              "maxSize": "*",
+              "minSize": "*",
+              "forceUpdate": "boolean",
+              "instanceTypes": "*",
+              "labels": "*",
+              "taints": {
+                "effect": "TaintEffect",
+                "key": "*",
+                "value": "*"
+              },
+              "nodeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "releaseVersion": "*",
+              "remoteAccess": {
+                "sshKeyName": "*",
+                "sourceSecurityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                }
+              },
+              "tags": "*",
+              "launchTemplateSpec": {
+                "id": "*",
+                "version": "*"
+              },
+              "capacityType": "CapacityType",
+              "maxUnavailable": "*",
+              "maxUnavailablePercentage": "*",
+              "enableNodeAutoRepair": "boolean",
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "addFargateProfile": [
+            "*",
+            {
+              "fargateProfileName": "*",
+              "podExecutionRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "selectors": {
+                "namespace": "*",
+                "labels": "*"
+              },
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "subnetSelection": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "_attachFargateProfile": [
+            "*"
+          ],
+          "_dependOnKubectlBarrier": [
+            "*"
+          ]
+        },
+        "ImportedCluster": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clusterName": "*",
+          "clusterEndpoint": "*",
+          "clusterCertificateAuthorityData": "*",
+          "clusterSecurityGroupId": "*",
+          "clusterEncryptionConfigKeyArn": "*",
+          "ipFamily": "IpFamily",
+          "securityGroupIds": "*",
+          "openIdConnectProvider": {
+            "openIdConnectProviderArn": "*",
+            "openIdConnectProviderIssuer": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlProvider": {
+            "serviceToken": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "prune": "boolean"
+        },
+        "FargateCluster": {
+          "defaultProfile": {
+            "fargateProfileName": "*",
+            "podExecutionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "selectors": {
+              "namespace": "*",
+              "labels": "*"
+            },
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "subnetSelection": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "endpointAccess": "*",
+          "prune": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": "*",
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "tags": "*",
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "controlPlaneScalingTier": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Nodegroup": {
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "nodegroupName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "amiType": "NodegroupAmiType",
+          "diskSize": "*",
+          "desiredSize": "*",
+          "maxSize": "*",
+          "minSize": "*",
+          "forceUpdate": "boolean",
+          "instanceTypes": "*",
+          "labels": "*",
+          "taints": {
+            "effect": "TaintEffect",
+            "key": "*",
+            "value": "*"
+          },
+          "nodeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "releaseVersion": "*",
+          "remoteAccess": {
+            "sshKeyName": "*",
+            "sourceSecurityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "tags": "*",
+          "launchTemplateSpec": {
+            "id": "*",
+            "version": "*"
+          },
+          "capacityType": "CapacityType",
+          "maxUnavailable": "*",
+          "maxUnavailablePercentage": "*",
+          "enableNodeAutoRepair": "boolean",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OidcProviderNative": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-elasticloadbalancing": {
+        "LoadBalancer": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "listeners": {
+            "externalPort": "*",
+            "externalProtocol": "LoadBalancingProtocol",
+            "internalPort": "*",
+            "internalProtocol": "LoadBalancingProtocol",
+            "policyNames": "*",
+            "sslCertificateId": "*",
+            "sslCertificateArn": "*",
+            "allowConnectionsFrom": {
+              "connections": "*"
+            }
+          },
+          "targets": {
+            "connections": "*"
+          },
+          "healthCheck": {
+            "port": "*",
+            "protocol": "LoadBalancingProtocol",
+            "path": "*",
+            "healthyThreshold": "*",
+            "unhealthyThreshold": "*",
+            "interval": "*"
+          },
+          "crossZone": "boolean",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "accessLoggingPolicy": "*",
+          "addListener": [
+            {
+              "externalPort": "*",
+              "externalProtocol": "LoadBalancingProtocol",
+              "internalPort": "*",
+              "internalProtocol": "LoadBalancingProtocol",
+              "policyNames": "*",
+              "sslCertificateId": "*",
+              "sslCertificateArn": "*",
+              "allowConnectionsFrom": {
+                "connections": "*"
+              }
+            }
+          ],
+          "addTarget": [
+            {
+              "connections": "*"
+            }
+          ],
+          "_addInstanceId": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-elasticsearch": {
+        "Domain": {
+          "accessPolicies": "*",
+          "advancedOptions": "*",
+          "cognitoKibanaAuth": {
+            "identityPoolId": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "userPoolId": "*"
+          },
+          "domainName": "*",
+          "ebs": {
+            "enabled": "boolean",
+            "iops": "*",
+            "volumeSize": "*",
+            "volumeType": "EbsDeviceVolumeType"
+          },
+          "capacity": {
+            "masterNodes": "*",
+            "masterNodeInstanceType": "*",
+            "dataNodes": "*",
+            "dataNodeInstanceType": "*",
+            "warmNodes": "*",
+            "warmInstanceType": "*"
+          },
+          "zoneAwareness": {
+            "enabled": "boolean",
+            "availabilityZoneCount": "*"
+          },
+          "version": "*",
+          "encryptionAtRest": {
+            "enabled": "boolean",
+            "kmsKey": "*"
+          },
+          "logging": {
+            "slowSearchLogEnabled": "boolean",
+            "slowSearchLogGroup": "*",
+            "slowIndexLogEnabled": "boolean",
+            "slowIndexLogGroup": "*",
+            "appLogEnabled": "boolean",
+            "appLogGroup": "*",
+            "auditLogEnabled": "boolean",
+            "auditLogGroup": "*"
+          },
+          "nodeToNodeEncryption": "boolean",
+          "automatedSnapshotStartHour": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "enforceHttps": "boolean",
+          "tlsSecurityPolicy": "TLSSecurityPolicy",
+          "fineGrainedAccessControl": {
+            "masterUserArn": "*",
+            "masterUserName": "*",
+            "masterUserPassword": "*"
+          },
+          "useUnsignedBasicAuth": "boolean",
+          "enableVersionUpgrade": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "customEndpoint": {
+            "domainName": "*",
+            "certificate": "*",
+            "hostedZone": {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            }
+          },
+          "addAccessPolicies": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-events": {
+        "ApiDestination": {
+          "apiDestinationName": "*",
+          "description": "*",
+          "connection": "*",
+          "endpoint": "*",
+          "httpMethod": "HttpMethod",
+          "rateLimitPerSecond": "*"
+        },
+        "Archive": {
+          "sourceEventBus": "*",
+          "archiveName": "*",
+          "description": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "retention": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Connection": {
+          "connectionName": "*",
+          "description": "*",
+          "authorization": "*",
+          "bodyParameters": "*",
+          "headerParameters": "*",
+          "queryStringParameters": "*"
+        },
+        "ImportedConnection": {
+          "connectionName": "*",
+          "connectionArn": "*",
+          "connectionSecretArn": "*"
+        },
+        "EventBus": {
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "ImportedEventBus": {
+          "eventBusName": "*",
+          "eventBusArn": "*",
+          "eventBusPolicy": "*",
+          "eventSourceName": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "EventBusPolicy": {
+          "eventBus": {
+            "eventBusName": "*",
+            "eventBusArn": "*",
+            "eventBusPolicy": "*",
+            "eventSourceName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "statement": "*",
+          "statementId": "*"
+        },
+        "Rule": {
+          "enabled": "boolean",
+          "schedule": "*",
+          "targets": "*",
+          "eventBus": "*",
+          "role": "*",
+          "description": "*",
+          "ruleName": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "crossStackScope": "*",
+          "addTarget": [
+            "*"
+          ],
+          "addEventPattern": [
+            {
+              "version": "*",
+              "id": "*",
+              "detailType": "*",
+              "source": "*",
+              "account": "*",
+              "time": "*",
+              "region": "*",
+              "resources": "*",
+              "detail": "*"
+            }
+          ],
+          "_renderEventPattern": []
+        },
+        "MirrorRule": {
+          "enabled": "boolean",
+          "schedule": "*",
+          "targets": "*",
+          "eventBus": "*",
+          "role": "*",
+          "description": "*",
+          "ruleName": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "crossStackScope": "*",
+          "_renderEventPattern": []
+        }
+      },
+      "aws-cdk-lib.aws-fsx": {
+        "LustreFileSystem": {
+          "lustreConfiguration": {
+            "deploymentType": "LustreDeploymentType",
+            "exportPath": "*",
+            "importedFileChunkSizeMiB": "*",
+            "importPath": "*",
+            "autoImportPolicy": "LustreAutoImportPolicy",
+            "dataCompressionType": "LustreDataCompressionType",
+            "perUnitStorageThroughput": "*",
+            "weeklyMaintenanceStartTime": "*",
+            "automaticBackupRetention": "*",
+            "copyTagsToBackups": "boolean",
+            "dailyAutomaticBackupStartTime": "*",
+            "driveCacheType": "DriveCacheType"
+          },
+          "fileSystemTypeVersion": "FileSystemTypeVersion",
+          "vpcSubnet": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "backupId": "*",
+          "kmsKey": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "storageCapacityGiB": "*",
+          "removalPolicy": "RemovalPolicy",
+          "storageType": "StorageType"
+        }
+      },
+      "aws-cdk-lib.aws-globalaccelerator": {
+        "Accelerator": {
+          "acceleratorName": "*",
+          "enabled": "boolean",
+          "ipAddresses": "*",
+          "ipAddressType": "IpAddressType",
+          "addListener": [
+            "*",
+            {
+              "listenerName": "*",
+              "portRanges": {
+                "fromPort": "*",
+                "toPort": "*"
+              },
+              "protocol": "ConnectionProtocol",
+              "clientAffinity": "ClientAffinity"
+            }
+          ]
+        },
+        "EndpointGroup": {
+          "listener": "*",
+          "endpointGroupName": "*",
+          "region": "*",
+          "healthCheckInterval": "*",
+          "healthCheckPath": "*",
+          "healthCheckPort": "*",
+          "healthCheckProtocol": "HealthCheckProtocol",
+          "healthCheckThreshold": "*",
+          "trafficDialPercentage": "*",
+          "portOverrides": {
+            "listenerPort": "*",
+            "endpointPort": "*"
+          },
+          "endpoints": {
+            "region": "*"
+          },
+          "addEndpoint": [
+            {
+              "region": "*"
+            }
+          ],
+          "connectionsPeer": [
+            "*",
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ]
+        },
+        "Listener": {
+          "accelerator": "*",
+          "listenerName": "*",
+          "portRanges": {
+            "fromPort": "*",
+            "toPort": "*"
+          },
+          "protocol": "ConnectionProtocol",
+          "clientAffinity": "ClientAffinity",
+          "addEndpointGroup": [
+            "*",
+            {
+              "endpointGroupName": "*",
+              "region": "*",
+              "healthCheckInterval": "*",
+              "healthCheckPath": "*",
+              "healthCheckPort": "*",
+              "healthCheckProtocol": "HealthCheckProtocol",
+              "healthCheckThreshold": "*",
+              "trafficDialPercentage": "*",
+              "portOverrides": {
+                "listenerPort": "*",
+                "endpointPort": "*"
+              },
+              "endpoints": {
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-glue": {
+        "Catalog": {
+          "catalogName": "*",
+          "description": "*",
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "AccountCatalog": {
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "ImportedCatalog": {},
+        "Connection": {
+          "type": "*",
+          "connectionName": "*",
+          "description": "*",
+          "properties": "*",
+          "secret": "*",
+          "matchCriteria": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "network": "*",
+          "addProperty": [
+            "*",
+            "*"
+          ]
+        },
+        "DataQualityRuleset": {
+          "rulesetName": "*",
+          "description": "*",
+          "dqdl": "*",
+          "tags": "*",
+          "targetTable": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Database": {
+          "databaseName": "*",
+          "locationUri": "*",
+          "description": "*",
+          "catalog": {
+            "catalogId": "*",
+            "catalogArn": "*",
+            "encryptionKey": "*",
+            "connectionPasswordKey": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ExternalTable": {
+          "connection": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "externalDataLocation": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "S3Table": {
+          "storage": "*",
+          "s3Prefix": "*",
+          "clientSideEncryption": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "SecurityConfiguration": {
+          "securityConfigurationName": "*",
+          "cloudWatchEncryption": "*",
+          "jobBookmarksEncryption": "*",
+          "s3Encryption": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-iam": {
+        "AccessKey": {
+          "serial": "*",
+          "status": "AccessKeyStatus",
+          "user": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Group": {
+          "groupName": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "path": "*",
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ]
+        },
+        "InstanceProfile": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceProfileName": "*",
+          "path": "*"
+        },
+        "LazyRole": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ]
+        },
+        "ManagedPolicy": {
+          "managedPolicyName": "*",
+          "description": "*",
+          "path": "*",
+          "users": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "groups": "*",
+          "statements": "*",
+          "document": "*",
+          "addStatements": [
+            "*"
+          ],
+          "attachToUser": [
+            "*"
+          ],
+          "attachToRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToGroup": [
+            "*"
+          ]
+        },
+        "OidcProviderNative": {
+          "oidcProviderName": "*",
+          "url": "*",
+          "clientIds": "*",
+          "thumbprints": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "clientIds": "*",
+          "thumbprints": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Policy": {
+          "policyName": "*",
+          "users": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "groups": {
+            "groupName": "*",
+            "groupArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "statements": "*",
+          "force": "boolean",
+          "document": "*",
+          "addStatements": [
+            "*"
+          ],
+          "attachToUser": [
+            {
+              "userName": "*",
+              "userArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToGroup": [
+            {
+              "groupName": "*",
+              "groupArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Role": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "withoutPolicyUpdates": [
+            {
+              "addGrantsToResources": "boolean"
+            }
+          ],
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "SamlProvider": {
+          "name": "*",
+          "metadataDocument": "*"
+        },
+        "User": {
+          "groups": {
+            "groupName": "*",
+            "groupArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "userName": "*",
+          "password": "*",
+          "passwordResetRequired": "boolean",
+          "addToGroup": [
+            {
+              "groupName": "*",
+              "groupArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-inspector": {
+        "AssessmentTemplate": {}
+      },
+      "aws-cdk-lib.aws-kinesis": {
+        "ResourcePolicy": {
+          "stream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "streamConsumer": {
+            "streamConsumerArn": "*",
+            "streamConsumerName": "*",
+            "stream": {
+              "streamArn": "*",
+              "streamName": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          },
+          "policyDocument": "*"
+        },
+        "StreamConsumer": {
+          "streamConsumerName": "*",
+          "stream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "Stream": {
+          "streamName": "*",
+          "retentionPeriod": "*",
+          "shardCount": "*",
+          "encryption": "StreamEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "streamMode": "StreamMode",
+          "removalPolicy": "RemovalPolicy",
+          "shardLevelMetrics": "ShardLevelMetrics"
+        }
+      },
+      "aws-cdk-lib.aws-kinesisfirehose": {
+        "DeliveryStream": {
+          "destination": "*",
+          "deliveryStreamName": "*",
+          "source": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "encryption": "*"
+        }
+      },
+      "aws-cdk-lib.aws-kms": {
+        "Alias": {
+          "aliasName": "*",
+          "targetKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Key": {
+          "description": "*",
+          "alias": "*",
+          "enableKeyRotation": "boolean",
+          "rotationPeriod": "*",
+          "enabled": "boolean",
+          "keySpec": "KeySpec",
+          "keyUsage": "KeyUsage",
+          "multiRegion": "boolean",
+          "policy": "*",
+          "admins": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "trustAccountIdentities": "boolean",
+          "pendingWindow": "*",
+          "grantAdmin": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ReferencedKey": {
+          "environmentFromArn": "*",
+          "keyArn": "*",
+          "keyId": "*",
+          "policy": "*",
+          "trustAccountIdentities": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-lambda": {
+        "Alias": {
+          "aliasName": "*",
+          "version": {
+            "version": "*",
+            "lambda": {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "edgeArn": "*",
+            "functionName": "*",
+            "functionArn": "*",
+            "isBoundToVpc": "boolean",
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "description": "*",
+          "additionalVersions": {
+            "version": {
+              "version": "*",
+              "lambda": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "resourceArnsForGrantInvoke": "*"
+            },
+            "weight": "*"
+          },
+          "provisionedConcurrentExecutions": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addAutoScaling": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ]
+        },
+        "CapacityProvider": {
+          "capacityProviderName": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "subnets": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "operatorRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "architectures": "*",
+          "instanceTypeFilter": "*",
+          "maxVCpuCount": "*",
+          "scalingOptions": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "propagateTags": "*",
+          "logGroup": "*",
+          "systemLogLevel": "SystemLogLevel",
+          "addFunction": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            {
+              "perExecutionEnvironmentMaxConcurrency": "*",
+              "executionEnvironmentMemoryGiBPerVCpu": "*",
+              "publishToLatestPublished": "boolean",
+              "latestPublishedScalingConfig": {
+                "minExecutionEnvironments": "*",
+                "maxExecutionEnvironments": "*"
+              }
+            }
+          ]
+        },
+        "CodeSigningConfig": {
+          "signingProfiles": {
+            "signingProfileArn": "*",
+            "signingProfileName": "*",
+            "signingProfileVersion": "*",
+            "signingProfileVersionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "untrustedArtifactOnDeployment": "UntrustedArtifactOnDeployment",
+          "description": "*"
+        },
+        "EventInvokeConfig": {
+          "function": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "qualifier": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "EventSourceMapping": {
+          "target": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "eventSourceArn": "*",
+          "batchSize": "*",
+          "bisectBatchOnError": "boolean",
+          "onFailure": "*",
+          "enabled": "boolean",
+          "startingPosition": "StartingPosition",
+          "startingPositionTimestamp": "*",
+          "reportBatchItemFailures": "boolean",
+          "maxBatchingWindow": "*",
+          "maxConcurrency": "*",
+          "maxRecordAge": "*",
+          "retryAttempts": "*",
+          "parallelizationFactor": "*",
+          "kafkaTopic": "*",
+          "tumblingWindow": "*",
+          "kafkaBootstrapServers": "*",
+          "kafkaConsumerGroupId": "*",
+          "sourceAccessConfigurations": {
+            "type": "*",
+            "uri": "*"
+          },
+          "filters": "*",
+          "filterEncryption": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "supportS3OnFailureDestination": "boolean",
+          "provisionedPollerConfig": {
+            "minimumPollers": "*",
+            "maximumPollers": "*",
+            "pollerGroupName": "*"
+          },
+          "metricsConfig": {
+            "metrics": "MetricType"
+          },
+          "logLevel": "EventSourceMappingLogLevel",
+          "schemaRegistryConfig": "*"
+        },
+        "LatestVersion": {
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ]
+        },
+        "FunctionUrl": {
+          "function": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "authType": "FunctionUrlAuthType",
+          "cors": {
+            "allowCredentials": "boolean",
+            "allowedHeaders": "*",
+            "allowedMethods": "HttpMethod",
+            "allowedOrigins": "*",
+            "exposedHeaders": "*",
+            "maxAge": "*"
+          },
+          "invokeMode": "InvokeMode",
+          "grantInvokeUrl": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Function": {
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addEnvironment": [
+            "*",
+            "*",
+            {
+              "removeInEdge": "boolean"
+            }
+          ],
+          "invalidateVersionBasedOn": [
+            "*"
+          ],
+          "addLayers": [
+            {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addVersion": [
+            "*",
+            "*",
+            "*",
+            "*",
+            {
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "_checkEdgeCompatibility": []
+        },
+        "DockerImageFunction": {
+          "code": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "Version": {
+          "lambda": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "codeSha256": "*",
+          "description": "*",
+          "provisionedConcurrentExecutions": "*",
+          "removalPolicy": "RemovalPolicy",
+          "minExecutionEnvironments": "*",
+          "maxExecutionEnvironments": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ]
+        },
+        "LayerVersion": {
+          "compatibleRuntimes": "*",
+          "compatibleArchitectures": "*",
+          "code": "*",
+          "description": "*",
+          "license": "*",
+          "layerVersionName": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "SingletonFunction": {
+          "uuid": "*",
+          "lambdaPurpose": "*",
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addEnvironment": [
+            "*",
+            "*",
+            {
+              "removeInEdge": "boolean"
+            }
+          ],
+          "addLayers": [
+            {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addPermission": [
+            "*",
+            {
+              "action": "*",
+              "eventSourceToken": "*",
+              "principal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              },
+              "scope": "*",
+              "sourceAccount": "*",
+              "sourceArn": "*",
+              "organizationId": "*",
+              "functionUrlAuthType": "FunctionUrlAuthType",
+              "invokedViaFunctionUrl": "boolean"
+            }
+          ],
+          "addDependency": [
+            "*"
+          ],
+          "addMetadata": [
+            "*",
+            "*",
+            {
+              "stackTrace": "boolean",
+              "traceFromFunction": "*",
+              "stackTraceOverride": "*"
+            }
+          ],
+          "dependOn": [
+            {
+              "node": "*"
+            }
+          ],
+          "_checkEdgeCompatibility": []
+        }
+      },
+      "aws-cdk-lib.aws-lambda-nodejs": {
+        "NodejsFunction": {
+          "entry": "*",
+          "handler": "*",
+          "runtime": "*",
+          "awsSdkConnectionReuse": "boolean",
+          "depsLockFilePath": "*",
+          "bundling": {
+            "minify": "boolean",
+            "sourceMap": "boolean",
+            "sourceMapMode": "SourceMapMode",
+            "sourcesContent": "boolean",
+            "target": "*",
+            "loader": "*",
+            "logLevel": "LogLevel",
+            "keepNames": "boolean",
+            "tsconfig": "*",
+            "metafile": "boolean",
+            "banner": "*",
+            "footer": "*",
+            "charset": "Charset",
+            "define": "*",
+            "externalModules": "*",
+            "bundleAwsSDK": "boolean",
+            "nodeModules": "*",
+            "esbuildVersion": "*",
+            "esbuildArgs": "*",
+            "buildArgs": "*",
+            "forceDockerBundling": "boolean",
+            "preCompilation": "boolean",
+            "dockerImage": "*",
+            "commandHooks": "*",
+            "assetHash": "*",
+            "format": "OutputFormat",
+            "mainFields": "*",
+            "inject": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "projectRoot": "*",
+          "code": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        }
+      },
+      "aws-cdk-lib.aws-logs": {
+        "CrossAccountDestination": {
+          "destinationName": "*",
+          "role": "*",
+          "targetArn": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "bind": [
+            "*",
+            "*"
+          ]
+        },
+        "LogGroup": {
+          "encryptionKey": "*",
+          "logGroupName": "*",
+          "dataProtectionPolicy": "*",
+          "deletionProtectionEnabled": "boolean",
+          "fieldIndexPolicies": "*",
+          "retention": "RetentionDays",
+          "logGroupClass": "LogGroupClass",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "LogStream": {
+          "logGroup": "*",
+          "logStreamName": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "MetricFilter": {
+          "logGroup": "*",
+          "filterPattern": {
+            "logPatternString": "*"
+          },
+          "metricNamespace": "*",
+          "metricName": "*",
+          "metricValue": "*",
+          "defaultValue": "*",
+          "dimensions": "*",
+          "unit": "Unit",
+          "filterName": "*",
+          "applyOnTransformedLogs": "boolean",
+          "metric": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ResourcePolicy": {},
+        "QueryDefinition": {
+          "queryDefinitionName": "*",
+          "queryString": "*",
+          "logGroups": "*"
+        },
+        "SubscriptionFilter": {
+          "logGroup": "*",
+          "destination": "*",
+          "filterPattern": {
+            "logPatternString": "*"
+          },
+          "filterName": "*",
+          "distribution": "Distribution"
+        },
+        "Transformer": {
+          "transformerName": "*",
+          "logGroup": "*",
+          "transformerConfig": "*"
+        }
+      },
+      "aws-cdk-lib.aws-opensearchservice": {
+        "Domain": {
+          "accessPolicies": "*",
+          "advancedOptions": "*",
+          "cognitoDashboardsAuth": {
+            "identityPoolId": "*",
+            "role": "*",
+            "userPoolId": "*"
+          },
+          "domainName": "*",
+          "ebs": {
+            "enabled": "boolean",
+            "iops": "*",
+            "throughput": "*",
+            "volumeSize": "*",
+            "volumeType": "EbsDeviceVolumeType"
+          },
+          "capacity": {
+            "masterNodes": "*",
+            "masterNodeInstanceType": "*",
+            "dataNodes": "*",
+            "dataNodeInstanceType": "*",
+            "warmNodes": "*",
+            "warmInstanceType": "*",
+            "multiAzWithStandbyEnabled": "boolean",
+            "nodeOptions": {
+              "nodeType": "NodeType",
+              "nodeConfig": {
+                "enabled": "boolean",
+                "type": "*",
+                "count": "*"
+              }
+            }
+          },
+          "zoneAwareness": {
+            "enabled": "boolean",
+            "availabilityZoneCount": "*"
+          },
+          "version": "*",
+          "encryptionAtRest": {
+            "enabled": "boolean",
+            "kmsKey": "*"
+          },
+          "logging": {
+            "slowSearchLogEnabled": "boolean",
+            "slowSearchLogGroup": "*",
+            "slowIndexLogEnabled": "boolean",
+            "slowIndexLogGroup": "*",
+            "appLogEnabled": "boolean",
+            "appLogGroup": "*",
+            "auditLogEnabled": "boolean",
+            "auditLogGroup": "*"
+          },
+          "nodeToNodeEncryption": "boolean",
+          "automatedSnapshotStartHour": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "enforceHttps": "boolean",
+          "tlsSecurityPolicy": "TLSSecurityPolicy",
+          "fineGrainedAccessControl": {
+            "masterUserArn": "*",
+            "masterUserName": "*",
+            "masterUserPassword": "*",
+            "samlAuthenticationEnabled": "boolean",
+            "samlAuthenticationOptions": {
+              "idpEntityId": "*",
+              "idpMetadataContent": "*",
+              "masterUserName": "*",
+              "masterBackendRole": "*",
+              "rolesKey": "*",
+              "subjectKey": "*",
+              "sessionTimeoutMinutes": "*"
+            }
+          },
+          "useUnsignedBasicAuth": "boolean",
+          "enableVersionUpgrade": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "customEndpoint": {
+            "domainName": "*",
+            "certificate": "*",
+            "hostedZone": {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            }
+          },
+          "offPeakWindowEnabled": "boolean",
+          "offPeakWindowStart": {
+            "hours": "*",
+            "minutes": "*"
+          },
+          "enableAutoSoftwareUpdate": "boolean",
+          "useLatestServiceSoftwareForBlueGreen": "boolean",
+          "ipAddressType": "IpAddressType",
+          "suppressLogsResourcePolicy": "boolean",
+          "coldStorageEnabled": "boolean",
+          "s3VectorsEngineEnabled": "boolean",
+          "addAccessPolicies": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-rds": {
+        "AuroraClusterInstance": {
+          "cluster": {
+            "clusterIdentifier": "*",
+            "clusterResourceIdentifier": "*",
+            "instanceIdentifiers": "*",
+            "clusterEndpoint": "*",
+            "engine": {
+              "singleUserRotationApplication": "*",
+              "supportedLogTypes": "*",
+              "combineImportAndExportRoles": "boolean",
+              "engineType": "*",
+              "engineVersion": {
+                "fullVersion": "*",
+                "majorVersion": "*"
+              },
+              "parameterGroupFamily": "*",
+              "engineFamily": "*",
+              "defaultUsername": "*"
+            },
+            "clusterArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "promotionTier": "*",
+          "instanceIdentifier": "*",
+          "autoMinorVersionUpgrade": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "publiclyAccessible": "boolean",
+          "availabilityZone": "*",
+          "preferredMaintenanceWindow": "*",
+          "parameters": "*",
+          "allowMajorVersionUpgrade": "boolean",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "isFromLegacyInstanceProps": "boolean",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "removalPolicy": "RemovalPolicy",
+          "subnetGroup": "*"
+        },
+        "ImportedDatabaseCluster": {
+          "clusterIdentifier": "*",
+          "clusterResourceIdentifier": "*",
+          "port": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceIdentifiers": "*",
+          "clusterEndpointAddress": "*",
+          "readerEndpointAddress": "*",
+          "instanceEndpointAddresses": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "dataApiEnabled": "boolean"
+        },
+        "DatabaseCluster": {
+          "credentials": "*",
+          "replicationSourceIdentifier": "*",
+          "manageMasterUserPassword": "boolean",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instances": "*",
+          "instanceProps": {
+            "instanceType": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "parameterGroup": "*",
+            "parameters": "*",
+            "enablePerformanceInsights": "boolean",
+            "performanceInsightRetention": "PerformanceInsightRetention",
+            "performanceInsightEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "autoMinorVersionUpgrade": "boolean",
+            "allowMajorVersionUpgrade": "boolean",
+            "deleteAutomatedBackups": "boolean",
+            "publiclyAccessible": "boolean",
+            "preferredMaintenanceWindow": "*"
+          },
+          "writer": "*",
+          "readers": "*",
+          "serverlessV2MaxCapacity": "*",
+          "serverlessV2MinCapacity": "*",
+          "serverlessV2AutoPauseDuration": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceUpdateBehaviour": "InstanceUpdateBehaviour",
+          "backtrackWindow": "*",
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "port": "*",
+          "clusterIdentifier": "*",
+          "instanceIdentifierBase": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "monitoringInterval": "*",
+          "monitoringRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableClusterLevelEnhancedMonitoring": "boolean",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "subnetGroup": "*",
+          "iamAuthentication": "boolean",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "storageType": "DBClusterStorageType",
+          "copyTagsToSnapshot": "boolean",
+          "networkType": "NetworkType",
+          "domain": "*",
+          "domainRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableDataApi": "boolean",
+          "enableLocalWriteForwarding": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "autoMinorVersionUpgrade": "boolean",
+          "clusterScalabilityType": "ClusterScalabilityType",
+          "clusterScailabilityType": "ClusterScailabilityType",
+          "engineLifecycleSupport": "EngineLifecycleSupport",
+          "deleteAutomatedBackups": "boolean"
+        },
+        "DatabaseClusterFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "credentials": "*",
+          "snapshotCredentials": "*",
+          "manageMasterUserPassword": "boolean",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instances": "*",
+          "instanceProps": {
+            "instanceType": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "parameterGroup": "*",
+            "parameters": "*",
+            "enablePerformanceInsights": "boolean",
+            "performanceInsightRetention": "PerformanceInsightRetention",
+            "performanceInsightEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "autoMinorVersionUpgrade": "boolean",
+            "allowMajorVersionUpgrade": "boolean",
+            "deleteAutomatedBackups": "boolean",
+            "publiclyAccessible": "boolean",
+            "preferredMaintenanceWindow": "*"
+          },
+          "writer": "*",
+          "readers": "*",
+          "serverlessV2MaxCapacity": "*",
+          "serverlessV2MinCapacity": "*",
+          "serverlessV2AutoPauseDuration": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceUpdateBehaviour": "InstanceUpdateBehaviour",
+          "backtrackWindow": "*",
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "port": "*",
+          "clusterIdentifier": "*",
+          "instanceIdentifierBase": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "monitoringInterval": "*",
+          "monitoringRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableClusterLevelEnhancedMonitoring": "boolean",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "subnetGroup": "*",
+          "iamAuthentication": "boolean",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "storageType": "DBClusterStorageType",
+          "copyTagsToSnapshot": "boolean",
+          "networkType": "NetworkType",
+          "domain": "*",
+          "domainRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableDataApi": "boolean",
+          "enableLocalWriteForwarding": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "autoMinorVersionUpgrade": "boolean",
+          "clusterScalabilityType": "ClusterScalabilityType",
+          "clusterScailabilityType": "ClusterScailabilityType",
+          "engineLifecycleSupport": "EngineLifecycleSupport",
+          "deleteAutomatedBackups": "boolean"
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "dbname": "*",
+          "secretName": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "masterSecret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "excludeCharacters": "*",
+          "replaceOnPasswordCriteriaChanges": "boolean",
+          "replicaRegions": {
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "DatabaseInstance": {
+          "credentials": "*",
+          "manageMasterUserPassword": "boolean",
+          "characterSetName": "*",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instanceType": "*",
+          "licenseModel": "LicenseModel",
+          "allowMajorVersionUpgrade": "boolean",
+          "timezone": "*",
+          "allocatedStorage": "*",
+          "databaseName": "*",
+          "parameters": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "DatabaseInstanceFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "clusterSnapshotIdentifier": "*",
+          "credentials": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instanceType": "*",
+          "licenseModel": "LicenseModel",
+          "allowMajorVersionUpgrade": "boolean",
+          "timezone": "*",
+          "allocatedStorage": "*",
+          "databaseName": "*",
+          "parameters": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "DatabaseInstanceReadReplica": {
+          "instanceType": "*",
+          "sourceDatabaseInstance": {
+            "instanceIdentifier": "*",
+            "instanceArn": "*",
+            "dbInstanceEndpointAddress": "*",
+            "dbInstanceEndpointPort": "*",
+            "instanceResourceId": "*",
+            "instanceEndpoint": "*",
+            "engine": {
+              "singleUserRotationApplication": "*",
+              "supportsReadReplicaBackups": "boolean",
+              "engineType": "*",
+              "engineVersion": {
+                "fullVersion": "*",
+                "majorVersion": "*"
+              },
+              "parameterGroupFamily": "*",
+              "engineFamily": "*",
+              "defaultUsername": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "allocatedStorage": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "OptionGroup": {
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "description": "*",
+          "configurations": {
+            "name": "*",
+            "settings": "*",
+            "version": "*",
+            "port": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "optionGroupName": "*",
+          "addConfiguration": [
+            {
+              "name": "*",
+              "settings": "*",
+              "version": "*",
+              "port": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              }
+            }
+          ]
+        },
+        "ParameterGroup": {
+          "engine": {
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "name": "*",
+          "description": "*",
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "bindToCluster": [
+            "*"
+          ],
+          "bindToInstance": [
+            "*"
+          ],
+          "addParameter": [
+            "*",
+            "*"
+          ]
+        },
+        "DatabaseProxyEndpoint": {
+          "dbProxy": "*",
+          "dbProxyEndpointName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "targetRole": "ProxyEndpointTargetRole"
+        },
+        "DatabaseProxy": {
+          "proxyTarget": "*",
+          "dbProxyName": "*",
+          "borrowTimeout": "*",
+          "initQuery": "*",
+          "maxConnectionsPercent": "*",
+          "maxIdleConnectionsPercent": "*",
+          "sessionPinningFilters": "*",
+          "debugLogging": "boolean",
+          "iamAuth": "boolean",
+          "idleClientTimeout": "*",
+          "requireTLS": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "secrets": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clientPasswordAuthType": "ClientPasswordAuthType",
+          "defaultAuthScheme": "DefaultAuthScheme",
+          "addEndpoint": [
+            "*",
+            {
+              "dbProxyEndpointName": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "targetRole": "ProxyEndpointTargetRole"
+            }
+          ],
+          "asSecretAttachmentTarget": [],
+          "grantConnect": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "ServerlessCluster": {
+          "credentials": "*",
+          "storageEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "clusterIdentifier": "*",
+          "backupRetention": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "enableDataApi": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "scaling": {
+            "minCapacity": "AuroraCapacityUnit",
+            "maxCapacity": "AuroraCapacityUnit",
+            "autoPause": "*",
+            "timeoutAction": "TimeoutAction"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": "*",
+          "copyTagsToSnapshot": "boolean",
+          "addRotationSingleUser": [
+            {
+              "automaticallyAfter": "*",
+              "excludeCharacters": "*",
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "endpoint": {
+                "vpcEndpointId": "*",
+                "connections": "*"
+              },
+              "securityGroup": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*"
+              },
+              "rotateImmediatelyOnUpdate": "boolean"
+            }
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*",
+              "excludeCharacters": "*",
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "endpoint": {
+                "vpcEndpointId": "*",
+                "connections": "*"
+              },
+              "securityGroup": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*"
+              },
+              "rotateImmediatelyOnUpdate": "boolean"
+            }
+          ]
+        },
+        "ImportedServerlessCluster": {
+          "clusterIdentifier": "*",
+          "port": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "clusterEndpointAddress": "*",
+          "readerEndpointAddress": "*",
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          }
+        },
+        "ServerlessClusterFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "credentials": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "clusterIdentifier": "*",
+          "backupRetention": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "enableDataApi": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "scaling": {
+            "minCapacity": "AuroraCapacityUnit",
+            "maxCapacity": "AuroraCapacityUnit",
+            "autoPause": "*",
+            "timeoutAction": "TimeoutAction"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": "*",
+          "copyTagsToSnapshot": "boolean"
+        },
+        "SubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetGroupName": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-route53": {
+        "HealthCheck": {
+          "type": "HealthCheckType",
+          "alarmIdentifier": {
+            "region": "*",
+            "name": "*"
+          },
+          "childHealthChecks": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableSNI": "boolean",
+          "failureThreshold": "*",
+          "fqdn": "*",
+          "healthThreshold": "*",
+          "insufficientDataHealthStatus": "InsufficientDataHealthStatusEnum",
+          "inverted": "boolean",
+          "ipAddress": "*",
+          "measureLatency": "boolean",
+          "port": "*",
+          "regions": "*",
+          "requestInterval": "*",
+          "resourcePath": "*",
+          "routingControl": "*",
+          "searchString": "*"
+        },
+        "HostedZone": {
+          "vpcs": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*",
+          "addVpc": [
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ],
+          "grantDelegation": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "delegatedZoneNames": "*"
+            }
+          ],
+          "enableDnssec": [
+            {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "keySigningKeyName": "*"
+            }
+          ]
+        },
+        "PublicHostedZone": {
+          "caaAmazon": "boolean",
+          "acceleratedRecoveryEnabled": "boolean",
+          "crossAccountZoneDelegationPrincipal": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "crossAccountZoneDelegationRoleName": "*",
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*",
+          "addVpc": [
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ],
+          "addDelegation": [
+            {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            },
+            {
+              "comment": "*",
+              "ttl": "*"
+            }
+          ]
+        },
+        "PrivateHostedZone": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*"
+        },
+        "KeySigningKey": {
+          "hostedZone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "keySigningKeyName": "*",
+          "status": "KeySigningKeyStatus"
+        },
+        "RecordSet": {
+          "recordType": "RecordType",
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "ARecord": {
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "AaaaRecord": {
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CnameRecord": {
+          "domainName": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "TxtRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "SrvRecord": {
+          "values": {
+            "priority": "*",
+            "weight": "*",
+            "port": "*",
+            "hostName": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CaaRecord": {
+          "values": {
+            "flag": "*",
+            "tag": "CaaTag",
+            "value": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CaaAmazonRecord": {
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "MxRecord": {
+          "values": {
+            "priority": "*",
+            "hostName": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "NsRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "DsRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "SvcbRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "HttpsRecord": {
+          "values": "*",
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "ZoneDelegationRecord": {
+          "nameServers": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        }
+      },
+      "aws-cdk-lib.aws-s3": {
+        "BucketPolicy": {
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "document": "*",
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "Bucket": {
+          "encryption": "BucketEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "blockedEncryptionTypes": "*",
+          "enforceSSL": "boolean",
+          "bucketKeyEnabled": "boolean",
+          "bucketName": "*",
+          "bucketNamePrefix": "*",
+          "bucketNamespace": "BucketNamespace",
+          "removalPolicy": "RemovalPolicy",
+          "autoDeleteObjects": "boolean",
+          "versioned": "boolean",
+          "objectLockEnabled": "boolean",
+          "abacStatus": "boolean",
+          "objectLockDefaultRetention": "*",
+          "eventBridgeEnabled": "boolean",
+          "lifecycleRules": {
+            "id": "*",
+            "enabled": "boolean",
+            "abortIncompleteMultipartUploadAfter": "*",
+            "expirationDate": "*",
+            "noncurrentVersionsToRetain": "*",
+            "noncurrentVersionTransitions": {
+              "storageClass": "*",
+              "noncurrentVersionsToRetain": "*"
+            },
+            "transitions": "*",
+            "prefix": "*",
+            "tagFilters": "*",
+            "expiredObjectDeleteMarker": "boolean",
+            "objectSizeLessThan": "*",
+            "objectSizeGreaterThan": "*"
+          },
+          "transitionDefaultMinimumObjectSize": "TransitionDefaultMinimumObjectSize",
+          "websiteIndexDocument": "*",
+          "websiteErrorDocument": "*",
+          "websiteRedirect": {
+            "hostName": "*",
+            "protocol": "RedirectProtocol"
+          },
+          "websiteRoutingRules": {
+            "hostName": "*",
+            "httpRedirectCode": "*",
+            "protocol": "RedirectProtocol",
+            "replaceKey": "*",
+            "condition": {
+              "httpErrorCodeReturnedEquals": "*",
+              "keyPrefixEquals": "*"
+            }
+          },
+          "accessControl": "BucketAccessControl",
+          "publicReadAccess": "boolean",
+          "blockPublicAccess": "*",
+          "metrics": {
+            "id": "*",
+            "prefix": "*",
+            "tagFilters": "*"
+          },
+          "cors": {
+            "id": "*",
+            "maxAge": "*",
+            "allowedHeaders": "*",
+            "allowedMethods": "HttpMethods",
+            "allowedOrigins": "*",
+            "exposedHeaders": "*"
+          },
+          "serverAccessLogsBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "serverAccessLogsPrefix": "*",
+          "targetObjectKeyFormat": "*",
+          "inventories": {
+            "destination": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*",
+              "bucketOwner": "*"
+            },
+            "objectsPrefix": "*",
+            "format": "InventoryFormat",
+            "enabled": "boolean",
+            "inventoryId": "*",
+            "frequency": "InventoryFrequency",
+            "includeObjectVersions": "InventoryObjectVersion",
+            "optionalFields": "*"
+          },
+          "objectOwnership": "ObjectOwnership",
+          "transferAcceleration": "boolean",
+          "notificationsHandlerRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "notificationsSkipDestinationValidation": "boolean",
+          "intelligentTieringConfigurations": {
+            "name": "*",
+            "prefix": "*",
+            "tags": {
+              "key": "*",
+              "value": "*"
+            },
+            "archiveAccessTierTime": "*"
+          },
+          "minimumTLSVersion": "*",
+          "replicationRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "replicationRules": {
+            "destination": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "accessControlTransition": "boolean",
+            "replicationTimeControl": "*",
+            "storageClass": "*",
+            "sseKmsEncryptedObjects": "boolean",
+            "replicaModifications": "boolean",
+            "priority": "*",
+            "deleteMarkerReplication": "boolean",
+            "id": "*",
+            "filter": {
+              "prefix": "*",
+              "tags": {
+                "key": "*",
+                "value": "*"
+              }
+            }
+          },
+          "addLifecycleRule": [
+            {
+              "id": "*",
+              "enabled": "boolean",
+              "abortIncompleteMultipartUploadAfter": "*",
+              "expirationDate": "*",
+              "noncurrentVersionsToRetain": "*",
+              "noncurrentVersionTransitions": {
+                "storageClass": "*",
+                "noncurrentVersionsToRetain": "*"
+              },
+              "transitions": "*",
+              "prefix": "*",
+              "tagFilters": "*",
+              "expiredObjectDeleteMarker": "boolean",
+              "objectSizeLessThan": "*",
+              "objectSizeGreaterThan": "*"
+            }
+          ],
+          "addMetric": [
+            {
+              "id": "*",
+              "prefix": "*",
+              "tagFilters": "*"
+            }
+          ],
+          "addCorsRule": [
+            {
+              "id": "*",
+              "maxAge": "*",
+              "allowedHeaders": "*",
+              "allowedMethods": "HttpMethods",
+              "allowedOrigins": "*",
+              "exposedHeaders": "*"
+            }
+          ],
+          "addInventory": [
+            {
+              "destination": {
+                "bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "encryptionKey": {
+                    "keyArn": "*",
+                    "keyId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "prefix": "*",
+                "bucketOwner": "*"
+              },
+              "objectsPrefix": "*",
+              "format": "InventoryFormat",
+              "enabled": "boolean",
+              "inventoryId": "*",
+              "frequency": "InventoryFrequency",
+              "includeObjectVersions": "InventoryObjectVersion",
+              "optionalFields": "*"
+            }
+          ]
+        },
+        "ReferencedBucket": {
+          "account": "*",
+          "region": "*",
+          "bucketArn": "*",
+          "bucketName": "*",
+          "bucketDomainName": "*",
+          "bucketWebsiteUrl": "*",
+          "bucketWebsiteDomainName": "*",
+          "bucketRegionalDomainName": "*",
+          "bucketDualStackDomainName": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "isWebsite": "boolean",
+          "policy": "*",
+          "replicationRoleArn": "*",
+          "autoCreatePolicy": "boolean",
+          "disallowPublicAccess": "boolean",
+          "notificationsHandlerRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-scheduler": {
+        "ScheduleGroup": {},
+        "Schedule": {
+          "schedule": "*",
+          "target": "*",
+          "scheduleName": "*",
+          "description": "*",
+          "scheduleGroup": {
+            "scheduleGroupName": "*",
+            "scheduleGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean",
+          "key": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeWindow": "*",
+          "start": "*",
+          "end": "*"
+        }
+      },
+      "aws-cdk-lib.aws-secretsmanager": {
+        "ResourcePolicy": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          }
+        },
+        "RotationSchedule": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "rotationLambda": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "hostedRotation": "*",
+          "automaticallyAfter": "*",
+          "rotateImmediatelyOnUpdate": "boolean"
+        },
+        "Secret": {
+          "description": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "generateSecretString": {
+            "excludeUppercase": "boolean",
+            "requireEachIncludedType": "boolean",
+            "includeSpace": "boolean",
+            "excludeCharacters": "*",
+            "passwordLength": "*",
+            "excludePunctuation": "boolean",
+            "excludeLowercase": "boolean",
+            "excludeNumbers": "boolean",
+            "secretStringTemplate": "*",
+            "generateStringKey": "*"
+          },
+          "secretName": "*",
+          "secretStringBeta1": "*",
+          "secretStringValue": "*",
+          "secretObjectValue": "*",
+          "removalPolicy": "RemovalPolicy",
+          "replicaRegions": {
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "addTargetAttachment": [
+            "*",
+            {
+              "target": "*"
+            }
+          ],
+          "addReplicaRegion": [
+            "*",
+            "*"
+          ]
+        },
+        "SecretTargetAttachment": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "target": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-servicecatalog": {
+        "Portfolio": {
+          "displayName": "*",
+          "providerName": "*",
+          "messageLanguage": "MessageLanguage",
+          "description": "*",
+          "tagOptions": "*"
+        },
+        "CloudFormationProduct": {
+          "owner": "*",
+          "productName": "*",
+          "productVersions": {
+            "description": "*",
+            "validateTemplate": "boolean",
+            "cloudFormationTemplate": "*",
+            "productVersionName": "*"
+          },
+          "messageLanguage": "MessageLanguage",
+          "description": "*",
+          "distributor": "*",
+          "replaceProductVersionIds": "boolean",
+          "supportDescription": "*",
+          "supportEmail": "*",
+          "supportUrl": "*",
+          "tagOptions": "*"
+        },
+        "TagOptions": {
+          "allowedValuesForTags": "*"
+        }
+      },
+      "aws-cdk-lib.aws-servicediscovery": {
+        "AliasTargetInstance": {
+          "dnsName": "*",
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "CnameInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceCname": "*",
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "HttpNamespace": {
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "IpInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "port": "*",
+          "ipv4": "*",
+          "ipv6": "*",
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "NonIpInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "PrivateDnsNamespace": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "discoveryType": "DiscoveryType",
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "routingPolicy": "RoutingPolicy",
+              "loadBalancer": "boolean",
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "PublicDnsNamespace": {
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "discoveryType": "DiscoveryType",
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "routingPolicy": "RoutingPolicy",
+              "loadBalancer": "boolean",
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "Service": {
+          "namespace": {
+            "namespaceName": "*",
+            "namespaceId": "*",
+            "namespaceArn": "*",
+            "type": "NamespaceType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "discoveryType": "DiscoveryType",
+          "dnsRecordType": "DnsRecordType",
+          "dnsTtl": "*",
+          "routingPolicy": "RoutingPolicy",
+          "loadBalancer": "boolean",
+          "name": "*",
+          "description": "*",
+          "healthCheck": {
+            "type": "HealthCheckType",
+            "resourcePath": "*",
+            "failureThreshold": "*"
+          },
+          "customHealthCheck": {
+            "failureThreshold": "*"
+          },
+          "registerLoadBalancer": [
+            "*",
+            {
+              "loadBalancerCanonicalHostedZoneId": "*",
+              "loadBalancerDnsName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "*"
+          ],
+          "registerNonIpInstance": [
+            "*",
+            {
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ],
+          "registerIpInstance": [
+            "*",
+            {
+              "port": "*",
+              "ipv4": "*",
+              "ipv6": "*",
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ],
+          "registerCnameInstance": [
+            "*",
+            {
+              "instanceCname": "*",
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ses": {
+        "ConfigurationSetEventDestination": {
+          "configurationSet": "*",
+          "configurationSetEventDestinationName": "*",
+          "enabled": "boolean",
+          "destination": "*",
+          "events": "EmailSendingEvent"
+        },
+        "ConfigurationSet": {
+          "configurationSetName": "*",
+          "dedicatedIpPool": "*",
+          "tlsPolicy": "ConfigurationSetTlsPolicy",
+          "reputationMetrics": "boolean",
+          "sendingEnabled": "boolean",
+          "suppressionReasons": "SuppressionReasons",
+          "disableSuppressionList": "boolean",
+          "autoValidationThreshold": "AutoValidationThreshold",
+          "disableAutoValidation": "boolean",
+          "customTrackingRedirectDomain": "*",
+          "customTrackingHttpsPolicy": "HttpsPolicy",
+          "vdmOptions": {
+            "engagementMetrics": "boolean",
+            "optimizedSharedDelivery": "boolean"
+          },
+          "maxDeliveryDuration": "*",
+          "addEventDestination": [
+            "*",
+            {
+              "configurationSetEventDestinationName": "*",
+              "enabled": "boolean",
+              "destination": "*",
+              "events": "EmailSendingEvent"
+            }
+          ]
+        },
+        "DedicatedIpPool": {
+          "dedicatedIpPoolName": "*",
+          "scalingMode": "ScalingMode"
+        },
+        "EmailIdentity": {
+          "identity": "*",
+          "configurationSet": "*",
+          "dkimSigning": "boolean",
+          "dkimIdentity": "*",
+          "feedbackForwarding": "boolean",
+          "mailFromDomain": "*",
+          "mailFromBehaviorOnMxFailure": "MailFromBehaviorOnMxFailure"
+        },
+        "ReceiptFilter": {
+          "receiptFilterName": "*",
+          "ip": "*",
+          "policy": "ReceiptFilterPolicy"
+        },
+        "ReceiptRuleSet": {
+          "receiptRuleSetName": "*",
+          "rules": {
+            "actions": "*",
+            "after": "*",
+            "enabled": "boolean",
+            "receiptRuleName": "*",
+            "recipients": "*",
+            "scanEnabled": "boolean",
+            "tlsPolicy": "TlsPolicy"
+          },
+          "dropSpam": "boolean"
+        },
+        "ReceiptRule": {
+          "ruleSet": "*",
+          "actions": "*",
+          "after": "*",
+          "enabled": "boolean",
+          "receiptRuleName": "*",
+          "recipients": "*",
+          "scanEnabled": "boolean",
+          "tlsPolicy": "TlsPolicy",
+          "addAction": [
+            "*"
+          ]
+        },
+        "VdmAttributes": {
+          "engagementMetrics": "boolean",
+          "optimizedSharedDelivery": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-signer": {
+        "SigningProfile": {
+          "platform": "*",
+          "signatureValidity": "*",
+          "signingProfileName": "*"
+        }
+      },
+      "aws-cdk-lib.aws-sns": {
+        "TopicPolicy": {
+          "topics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "policyDocument": "*",
+          "enforceSSL": "boolean"
+        },
+        "Subscription": {
+          "topic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "protocol": "SubscriptionProtocol",
+          "endpoint": "*",
+          "rawMessageDelivery": "boolean",
+          "filterPolicy": "*",
+          "filterPolicyWithMessageBody": "*",
+          "region": "*",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "subscriptionRoleArn": "*",
+          "deliveryPolicy": {
+            "healthyRetryPolicy": {
+              "minDelayTarget": "*",
+              "numRetries": "*",
+              "numNoDelayRetries": "*",
+              "numMinDelayRetries": "*",
+              "numMaxDelayRetries": "*",
+              "backoffFunction": "BackoffFunction"
+            },
+            "throttlePolicy": {
+              "maxReceivesPerSecond": "*"
+            },
+            "requestPolicy": {
+              "headerContentType": "*"
+            }
+          }
+        },
+        "Topic": {
+          "displayName": "*",
+          "topicName": "*",
+          "masterKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "contentBasedDeduplication": "boolean",
+          "fifo": "boolean",
+          "loggingConfigs": {
+            "protocol": "LoggingProtocol",
+            "failureFeedbackRole": "*",
+            "successFeedbackRole": "*",
+            "successFeedbackSampleRate": "*"
+          },
+          "messageRetentionPeriodInDays": "*",
+          "enforceSSL": "boolean",
+          "signatureVersion": "*",
+          "tracingConfig": "TracingConfig",
+          "fifoThroughputScope": "FifoThroughputScope",
+          "addLoggingConfig": [
+            {
+              "protocol": "LoggingProtocol",
+              "failureFeedbackRole": "*",
+              "successFeedbackRole": "*",
+              "successFeedbackSampleRate": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-sqs": {
+        "QueuePolicy": {
+          "queues": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          }
+        },
+        "Queue": {
+          "queueName": "*",
+          "retentionPeriod": "*",
+          "deliveryDelay": "*",
+          "maxMessageSizeBytes": "*",
+          "receiveMessageWaitTime": "*",
+          "visibilityTimeout": "*",
+          "deadLetterQueue": {
+            "queue": {
+              "queueArn": "*",
+              "queueUrl": "*",
+              "queueName": "*",
+              "encryptionMasterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "fifo": "boolean",
+              "encryptionType": "QueueEncryption"
+            },
+            "maxReceiveCount": "*"
+          },
+          "encryption": "QueueEncryption",
+          "encryptionMasterKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dataKeyReuse": "*",
+          "fifo": "boolean",
+          "contentBasedDeduplication": "boolean",
+          "deduplicationScope": "DeduplicationScope",
+          "fifoThroughputLimit": "FifoThroughputLimit",
+          "removalPolicy": "RemovalPolicy",
+          "enforceSSL": "boolean",
+          "redriveAllowPolicy": {
+            "redrivePermission": "RedrivePermission",
+            "sourceQueues": {
+              "queueArn": "*",
+              "queueUrl": "*",
+              "queueName": "*",
+              "encryptionMasterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "fifo": "boolean",
+              "encryptionType": "QueueEncryption"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-ssm": {
+        "StringParameter": {
+          "stringValue": "*",
+          "type": "ParameterType",
+          "dataType": "ParameterDataType",
+          "allowedPattern": "*",
+          "description": "*",
+          "parameterName": "*",
+          "simpleName": "boolean",
+          "tier": "ParameterTier"
+        },
+        "StringListParameter": {
+          "stringListValue": "*",
+          "allowedPattern": "*",
+          "description": "*",
+          "parameterName": "*",
+          "simpleName": "boolean",
+          "tier": "ParameterTier"
+        }
+      },
+      "aws-cdk-lib.aws-stepfunctions": {
+        "Activity": {
+          "activityName": "*",
+          "encryptionConfiguration": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRunTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricScheduleTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricScheduled": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTimedOut": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricStarted": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricSucceeded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricFailed": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHeartbeatTimedOut": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "StateMachine": {
+          "stateMachineName": "*",
+          "definition": {
+            "id": "*",
+            "startState": "*",
+            "endStates": "*"
+          },
+          "definitionBody": "*",
+          "definitionSubstitutions": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeout": "*",
+          "comment": "*",
+          "queryLanguage": "QueryLanguage",
+          "stateMachineType": "StateMachineType",
+          "logs": {
+            "destination": "*",
+            "includeExecutionData": "boolean",
+            "level": "LogLevel"
+          },
+          "tracingEnabled": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "encryptionConfiguration": "*",
+          "addToRolePolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-synthetics": {
+        "Canary": {
+          "artifactsBucketLocation": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeToLive": "*",
+          "schedule": "*",
+          "maxRetries": "*",
+          "startAfterCreation": "boolean",
+          "successRetentionPeriod": "*",
+          "failureRetentionPeriod": "*",
+          "canaryName": "*",
+          "runtime": "*",
+          "test": "*",
+          "activeTracing": "boolean",
+          "environmentVariables": "*",
+          "memory": "*",
+          "timeout": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "cleanup": "Cleanup",
+          "provisionedResourceCleanup": "boolean",
+          "artifactsBucketLifecycleRules": {
+            "id": "*",
+            "enabled": "boolean",
+            "abortIncompleteMultipartUploadAfter": "*",
+            "expirationDate": "*",
+            "noncurrentVersionsToRetain": "*",
+            "noncurrentVersionTransitions": {
+              "storageClass": "*",
+              "noncurrentVersionsToRetain": "*"
+            },
+            "transitions": "*",
+            "prefix": "*",
+            "tagFilters": "*",
+            "expiredObjectDeleteMarker": "boolean",
+            "objectSizeLessThan": "*",
+            "objectSizeGreaterThan": "*"
+          },
+          "artifactS3EncryptionMode": "ArtifactsEncryptionMode",
+          "artifactS3KmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "environmentEncryption": "*",
+          "dryRunAndUpdate": "boolean",
+          "resourcesToReplicateTags": "ResourceToReplicateTags",
+          "browserConfigs": "BrowserType",
+          "metricDuration": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricSuccessPercent": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricFailed": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "Group": {
+          "groupName": "*",
+          "canaries": {
+            "canaryId": "*",
+            "canaryName": "*",
+            "canaryArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addCanary": [
+            {
+              "canaryId": "*",
+              "canaryName": "*",
+              "canaryArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.core": {
+        "CustomResource": {
+          "serviceToken": "*",
+          "serviceTimeout": "*",
+          "properties": "*",
+          "resourceType": "*",
+          "removalPolicy": "RemovalPolicy",
+          "pascalCaseProperties": "boolean",
+          "getAtt": [
+            "*"
+          ],
+          "getAttString": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.lambda-layer-awscli": {
+        "AwsCliLayer": {}
+      },
+      "aws-cdk-lib.lambda-layer-node-proxy-agent": {
+        "NodeProxyAgentLayer": {}
+      },
+      "aws-cdk-lib.triggers": {
+        "TriggerFunction": {
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "executeAfter": [
+            "*"
+          ],
+          "executeBefore": [
+            "*"
+          ],
+          "executeOnHandlerChange": "boolean"
+        }
+      },
+      "aws-bedrock-agentcore-alpha.lib": {
+        "Evaluator": {
+          "evaluatorName": "*",
+          "evaluatorConfig": "*",
+          "level": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "OnlineEvaluationConfig": {
+          "evaluators": "*",
+          "dataSource": "*",
+          "tags": "*",
+          "onlineEvaluationConfigName": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "samplingPercentage": "*",
+          "filters": {
+            "key": "*",
+            "operator": "*",
+            "value": "*"
+          },
+          "sessionTimeout": "*",
+          "executionStatus": "*"
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "description": "*",
+          "protocolConfiguration": {
+            "protocolType": "*"
+          },
+          "authorizerConfiguration": {
+            "authorizerType": "GatewayAuthorizerType"
+          },
+          "exceptionLevel": "GatewayExceptionLevel",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "interceptorConfigurations": {
+            "interceptionPoint": "InterceptionPoint"
+          },
+          "policyEngineConfiguration": {
+            "policyEngine": {
+              "policyEngineArn": "*",
+              "policyEngineId": "*",
+              "policyEngineName": "*",
+              "description": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "mode": "*"
+          },
+          "addLambdaTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "lambdaFunction": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "latestVersion": {
+                  "version": "*",
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "toolSchema": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addOpenApiTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "apiSchema": "*",
+              "validateOpenApiSchema": "boolean",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addSmithyTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "smithyModel": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addMcpServerTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "endpoint": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addApiGatewayTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "restApi": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "stage": "*",
+              "apiGatewayToolConfiguration": {
+                "toolFilters": {
+                  "filterPath": "*",
+                  "methods": "ApiGatewayHttpMethod"
+                },
+                "toolOverrides": {
+                  "path": "*",
+                  "method": "ApiGatewayHttpMethod",
+                  "name": "*",
+                  "description": "*"
+                }
+              },
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              },
+              "metadataConfiguration": {
+                "allowedQueryParameters": "*",
+                "allowedRequestHeaders": "*",
+                "allowedResponseHeaders": "*"
+              }
+            }
+          ],
+          "addInterceptor": [
+            {
+              "interceptionPoint": "InterceptionPoint"
+            }
+          ]
+        },
+        "ApiKeyCredentialProvider": {
+          "apiKeyCredentialProviderName": "*",
+          "apiKey": "*",
+          "tags": "*",
+          "bindForGatewayApiKeyTarget": []
+        },
+        "OAuth2CredentialProvider": {
+          "oAuth2CredentialProviderName": "*",
+          "credentialProviderVendor": "*",
+          "oauth2ProviderConfigInput": "*",
+          "tags": "*",
+          "bindForGatewayOAuthTarget": [
+            "*",
+            "*"
+          ]
+        },
+        "WorkloadIdentity": {
+          "workloadIdentityName": "*",
+          "allowedResourceOauth2ReturnUrls": "*",
+          "tags": "*"
+        },
+        "Memory": {
+          "memoryName": "*",
+          "expirationDuration": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "memoryStrategies": {
+            "name": "*",
+            "description": "*",
+            "strategyType": "MemoryStrategyType"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addMemoryStrategy": [
+            {
+              "name": "*",
+              "description": "*",
+              "strategyType": "MemoryStrategyType"
+            }
+          ]
+        },
+        "PolicyEngine": {
+          "policyEngineName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addPolicy": [
+            "*",
+            {
+              "definition": "*",
+              "statement": "*",
+              "policyName": "*",
+              "description": "*",
+              "validationMode": "*"
+            }
+          ]
+        },
+        "Policy": {
+          "policyName": "*",
+          "policyEngine": {
+            "policyEngineArn": "*",
+            "policyEngineId": "*",
+            "policyEngineName": "*",
+            "description": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "definition": "*",
+          "statement": "*",
+          "description": "*",
+          "validationMode": "*"
+        },
+        "RuntimeEndpoint": {
+          "endpointName": "*",
+          "agentRuntimeId": "*",
+          "agentRuntimeVersion": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "Runtime": {
+          "runtimeName": "*",
+          "agentRuntimeArtifact": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "description": "*",
+          "protocolConfiguration": "ProtocolType",
+          "environmentVariables": "*",
+          "authorizerConfiguration": "*",
+          "tags": "*",
+          "requestHeaderConfiguration": {
+            "allowlistedHeaders": "*"
+          },
+          "lifecycleConfiguration": {
+            "idleRuntimeSessionTimeout": "*"
+          },
+          "tracingEnabled": "boolean",
+          "loggingConfigs": {
+            "logType": "*",
+            "destination": "*"
+          },
+          "addEndpoint": [
+            "*",
+            {
+              "description": "*",
+              "version": "*"
+            }
+          ]
+        },
+        "BrowserCustom": {
+          "browserCustomName": "*",
+          "description": "*",
+          "networkConfiguration": "*",
+          "recordingConfig": {
+            "enabled": "boolean",
+            "s3Location": {
+              "bucketName": "*",
+              "objectKey": "*",
+              "objectVersion": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "browserSigning": "BrowserSigning"
+        },
+        "CodeInterpreterCustom": {
+          "codeInterpreterCustomName": "*",
+          "description": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "tags": "*"
+        }
+      },
+      "aws-bedrock-alpha.bedrock": {
+        "AgentAlias": {
+          "agentAliasName": "*",
+          "agentVersion": "*",
+          "agent": {
+            "agentArn": "*",
+            "agentId": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "lastUpdated": "*"
+          },
+          "description": "*"
+        },
+        "Agent": {
+          "agentName": "*",
+          "instruction": "*",
+          "foundationModel": {
+            "invokableArn": "*"
+          },
+          "existingRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "shouldPrepareAgent": "boolean",
+          "idleSessionTTL": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "actionGroups": "*",
+          "guardrail": {
+            "guardrailArn": "*",
+            "guardrailId": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "lastUpdated": "*",
+            "guardrailVersion": "*"
+          },
+          "promptOverrideConfiguration": "*",
+          "userInputEnabled": "boolean",
+          "codeInterpreterEnabled": "boolean",
+          "forceDelete": "boolean",
+          "memory": "*",
+          "agentCollaboration": "*",
+          "customOrchestrationExecutor": "*",
+          "addGuardrail": [
+            {
+              "guardrailArn": "*",
+              "guardrailId": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "lastUpdated": "*",
+              "guardrailVersion": "*"
+            }
+          ],
+          "addActionGroup": [
+            "*"
+          ],
+          "addActionGroups": [
+            "*"
+          ]
+        },
+        "GuardrailVersion": {
+          "guardrail": {
+            "guardrailArn": "*",
+            "guardrailId": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "lastUpdated": "*",
+            "guardrailVersion": "*"
+          },
+          "description": "*"
+        },
+        "Guardrail": {
+          "guardrailName": "*",
+          "description": "*",
+          "blockedInputMessaging": "*",
+          "blockedOutputsMessaging": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "contentFilters": {
+            "type": "ContentFilterType",
+            "inputStrength": "ContentFilterStrength",
+            "outputStrength": "ContentFilterStrength",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean",
+            "inputModalities": "ModalityType",
+            "outputModalities": "ModalityType"
+          },
+          "contentFiltersTierConfig": "TierConfig",
+          "deniedTopics": "*",
+          "topicsTierConfig": "TierConfig",
+          "wordFilters": {
+            "text": "*",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "managedWordListFilters": {
+            "type": "ManagedWordFilterType",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "piiFilters": {
+            "type": "*",
+            "action": "GuardrailAction",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "regexFilters": {
+            "name": "*",
+            "description": "*",
+            "action": "GuardrailAction",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean",
+            "pattern": "*"
+          },
+          "contextualGroundingFilters": {
+            "type": "ContextualGroundingFilterType",
+            "action": "GuardrailAction",
+            "enabled": "boolean",
+            "threshold": "*"
+          },
+          "crossRegionConfig": {
+            "guardrailProfileArn": "*"
+          },
+          "addContentFilter": [
+            {
+              "type": "ContentFilterType",
+              "inputStrength": "ContentFilterStrength",
+              "outputStrength": "ContentFilterStrength",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean",
+              "inputModalities": "ModalityType",
+              "outputModalities": "ModalityType"
+            }
+          ],
+          "addPIIFilter": [
+            {
+              "type": "*",
+              "action": "GuardrailAction",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "addRegexFilter": [
+            {
+              "name": "*",
+              "description": "*",
+              "action": "GuardrailAction",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean",
+              "pattern": "*"
+            }
+          ],
+          "addDeniedTopicFilter": [
+            "*"
+          ],
+          "addContextualGroundingFilter": [
+            {
+              "type": "ContextualGroundingFilterType",
+              "action": "GuardrailAction",
+              "enabled": "boolean",
+              "threshold": "*"
+            }
+          ],
+          "addWordFilter": [
+            {
+              "text": "*",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "addWordFilterFromFile": [
+            "*",
+            "GuardrailAction",
+            "GuardrailAction",
+            "boolean",
+            "boolean"
+          ],
+          "addManagedWordListFilter": [
+            {
+              "type": "ManagedWordFilterType",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "createVersion": [
+            "*"
+          ]
+        },
+        "ApplicationInferenceProfile": {
+          "applicationInferenceProfileName": "*",
+          "description": "*",
+          "modelSource": {
+            "invokableArn": "*"
+          },
+          "tags": "*",
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantProfileUsage": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Prompt": {
+          "promptName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultVariant": {
+            "name": "*",
+            "templateType": "PromptTemplateType",
+            "inferenceConfiguration": "*",
+            "modelId": "*",
+            "templateConfiguration": "*",
+            "genAiResource": "*"
+          },
+          "variants": {
+            "name": "*",
+            "templateType": "PromptTemplateType",
+            "inferenceConfiguration": "*",
+            "modelId": "*",
+            "templateConfiguration": "*",
+            "genAiResource": "*"
+          },
+          "tags": "*",
+          "createVersion": [
+            "*"
+          ],
+          "addVariant": [
+            {
+              "name": "*",
+              "templateType": "PromptTemplateType",
+              "inferenceConfiguration": "*",
+              "modelId": "*",
+              "templateConfiguration": "*",
+              "genAiResource": "*"
+            }
+          ]
+        }
+      },
+      "aws-glue-alpha.lib": {
+        "PySparkEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkStreamingJob": {
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PythonShellJob": {
+          "pythonVersion": "PythonVersion",
+          "maxCapacity": "MaxCapacity",
+          "librarySet": "LibrarySet",
+          "extraPythonFiles": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "RayJob": {
+          "runtime": "Runtime",
+          "numberOfWorkers": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkEtlJob": {
+          "className": "*",
+          "notifyDelayAfter": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkStreamingJob": {
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "Workflow": {}
+      },
+      "aws-apigateway.lib": {
+        "CognitoUserPoolsAuthorizer": {
+          "authorizerName": "*",
+          "cognitoUserPools": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "resultsCacheTtl": "*",
+          "identitySource": "*",
+          "_attachToApi": [
+            {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          ]
+        },
+        "TokenAuthorizer": {
+          "validationRegex": "*",
+          "identitySource": "*",
+          "authorizerName": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "resultsCacheTtl": "*",
+          "assumeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "RequestAuthorizer": {
+          "identitySources": "*",
+          "authorizerName": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "resultsCacheTtl": "*",
+          "assumeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "aws-apigatewayv2.lib": {
+        "ApiMapping": {
+          "apiMappingKey": "*",
+          "api": "*",
+          "domainName": "*",
+          "stage": {
+            "stageName": "*",
+            "url": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "DomainName": {
+          "domainName": "*",
+          "mtls": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "key": "*",
+            "version": "*"
+          },
+          "certificate": "*",
+          "certificateName": "*",
+          "endpointType": "EndpointType",
+          "securityPolicy": "SecurityPolicy",
+          "ownershipCertificate": "*",
+          "ipAddressType": "IpAddressType",
+          "addEndpoint": [
+            {
+              "certificate": "*",
+              "certificateName": "*",
+              "endpointType": "EndpointType",
+              "securityPolicy": "SecurityPolicy",
+              "ownershipCertificate": "*",
+              "ipAddressType": "IpAddressType"
+            }
+          ]
+        },
+        "HttpApi": {
+          "addStage": [
+            "*",
+            {
+              "stageName": "*",
+              "autoDeploy": "boolean",
+              "domainMapping": {
+                "domainName": "*",
+                "mappingKey": "*"
+              },
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              },
+              "description": "*",
+              "detailedMetricsEnabled": "boolean",
+              "accessLogSettings": {
+                "destination": "*",
+                "format": "*"
+              },
+              "stageVariables": "*"
+            }
+          ],
+          "addRoutes": [
+            {
+              "path": "*",
+              "methods": "HttpMethod",
+              "authorizer": "*",
+              "authorizationScopes": "*",
+              "integration": "*"
+            }
+          ]
+        },
+        "HttpAuthorizer": {
+          "authorizerName": "*",
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "type": "HttpAuthorizerType",
+          "identitySource": "*",
+          "jwtAudience": "*",
+          "jwtIssuer": "*",
+          "enableSimpleResponses": "boolean",
+          "payloadFormatVersion": "AuthorizerPayloadVersion",
+          "authorizerUri": "*",
+          "resultsCacheTtl": "*",
+          "role": "*"
+        },
+        "HttpIntegration": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "integrationType": "HttpIntegrationType",
+          "integrationSubtype": "HttpIntegrationSubtype",
+          "integrationUri": "*",
+          "method": "HttpMethod",
+          "connectionId": "*",
+          "connectionType": "HttpConnectionType",
+          "payloadFormatVersion": "*",
+          "secureServerName": "*",
+          "timeout": "*",
+          "parameterMapping": "*",
+          "credentials": "*"
+        },
+        "HttpRoute": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "routeKey": "*",
+          "authorizer": "*",
+          "authorizationScopes": "*",
+          "integration": "*",
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "httpMethods": "HttpMethod"
+            }
+          ]
+        },
+        "HttpStage": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "stageName": "*",
+          "autoDeploy": "boolean",
+          "domainMapping": {
+            "domainName": "*",
+            "mappingKey": "*"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "description": "*",
+          "detailedMetricsEnabled": "boolean",
+          "accessLogSettings": {
+            "destination": "*",
+            "format": "*"
+          },
+          "stageVariables": "*"
+        },
+        "VpcLink": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcLinkName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": "*",
+          "addSubnets": [
+            "*"
+          ],
+          "addSecurityGroups": [
+            "*"
+          ]
+        },
+        "ApiKey": {
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*"
+        },
+        "RateLimitedApiKey": {
+          "apiStages": {
+            "api": {
+              "apiId": "*",
+              "apiEndpoint": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "isWebsocketApi": "boolean"
+            },
+            "stage": {
+              "callbackUrl": "*",
+              "stageName": "*",
+              "url": "*"
+            }
+          },
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*"
+        },
+        "WebSocketApi": {
+          "addRoute": [
+            "*",
+            {
+              "integration": "*",
+              "authorizer": "*",
+              "returnResponse": "boolean"
+            }
+          ],
+          "grantManageConnections": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "arnForExecuteApi": [
+            "*",
+            "*",
+            "*"
+          ],
+          "arnForExecuteApiV2": [
+            "*",
+            "*"
+          ]
+        },
+        "WebSocketAuthorizer": {
+          "authorizerName": "*",
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "type": "WebSocketAuthorizerType",
+          "identitySource": "*",
+          "authorizerUri": "*"
+        },
+        "WebSocketIntegration": {
+          "webSocketApi": {
+            "isWebsocketApi": "boolean"
+          },
+          "integrationType": "WebSocketIntegrationType",
+          "integrationUri": "*",
+          "integrationMethod": "*",
+          "contentHandling": "ContentHandling",
+          "credentialsRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "requestParameters": "*",
+          "requestTemplates": "*",
+          "templateSelectionExpression": "*",
+          "timeout": "*",
+          "passthroughBehavior": "PassthroughBehavior"
+        },
+        "WebSocketRoute": {
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "routeKey": "*",
+          "apiKeyRequired": "boolean",
+          "integration": "*",
+          "authorizer": "*",
+          "returnResponse": "boolean"
+        },
+        "WebSocketStage": {
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "stageName": "*",
+          "autoDeploy": "boolean",
+          "domainMapping": {
+            "domainName": "*",
+            "mappingKey": "*"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "description": "*",
+          "detailedMetricsEnabled": "boolean",
+          "accessLogSettings": {
+            "destination": "*",
+            "format": "*"
+          },
+          "stageVariables": "*",
+          "grantManagementApiAccess": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "UsagePlan": {
+          "apiStages": {
+            "api": {
+              "apiId": "*",
+              "apiEndpoint": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "isWebsocketApi": "boolean"
+            },
+            "stage": {
+              "callbackUrl": "*",
+              "stageName": "*",
+              "url": "*"
+            }
+          },
+          "description": "*",
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "usagePlanName": "*",
+          "addApiStage": [
+            {
+              "api": {
+                "apiId": "*",
+                "apiEndpoint": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                },
+                "isWebsocketApi": "boolean"
+              },
+              "stage": {
+                "callbackUrl": "*",
+                "stageName": "*",
+                "url": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-bedrockagentcore.lib": {
+        "Evaluator": {
+          "evaluatorName": "*",
+          "evaluatorConfig": "*",
+          "level": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "OnlineEvaluationConfig": {
+          "evaluators": "*",
+          "dataSource": "*",
+          "tags": "*",
+          "onlineEvaluationConfigName": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "samplingPercentage": "*",
+          "filters": {
+            "key": "*",
+            "operator": "*",
+            "value": "*"
+          },
+          "sessionTimeout": "*",
+          "executionStatus": "*"
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "description": "*",
+          "protocolConfiguration": {
+            "protocolType": "*"
+          },
+          "authorizerConfiguration": {
+            "authorizerType": "GatewayAuthorizerType"
+          },
+          "exceptionLevel": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "interceptorConfigurations": {
+            "interceptionPoint": "InterceptionPoint"
+          },
+          "policyEngineConfiguration": {
+            "policyEngine": {
+              "policyEngineArn": "*",
+              "policyEngineId": "*",
+              "policyEngineName": "*",
+              "description": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "mode": "*"
+          },
+          "addLambdaTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "lambdaFunction": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "latestVersion": {
+                  "version": "*",
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "toolSchema": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addOpenApiTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "apiSchema": "*",
+              "validateOpenApiSchema": "boolean",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addSmithyTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "smithyModel": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addMcpServerTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "endpoint": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addApiGatewayTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "restApi": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "stage": "*",
+              "apiGatewayToolConfiguration": {
+                "toolFilters": {
+                  "filterPath": "*",
+                  "methods": "*"
+                },
+                "toolOverrides": {
+                  "path": "*",
+                  "name": "*",
+                  "description": "*"
+                }
+              },
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              },
+              "metadataConfiguration": {
+                "allowedQueryParameters": "*",
+                "allowedRequestHeaders": "*",
+                "allowedResponseHeaders": "*"
+              }
+            }
+          ],
+          "addInterceptor": [
+            {
+              "interceptionPoint": "InterceptionPoint"
+            }
+          ]
+        },
+        "ApiKeyCredentialProvider": {
+          "apiKeyCredentialProviderName": "*",
+          "apiKey": "*",
+          "tags": "*",
+          "bindForGatewayApiKeyTarget": []
+        },
+        "OAuth2CredentialProvider": {
+          "oAuth2CredentialProviderName": "*",
+          "credentialProviderVendor": "*",
+          "oauth2ProviderConfigInput": "*",
+          "tags": "*",
+          "bindForGatewayOAuthTarget": [
+            "*",
+            "*"
+          ]
+        },
+        "WorkloadIdentity": {
+          "workloadIdentityName": "*",
+          "allowedResourceOauth2ReturnUrls": "*",
+          "tags": "*"
+        },
+        "Memory": {
+          "memoryName": "*",
+          "expirationDuration": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "memoryStrategies": {
+            "strategyName": "*",
+            "description": "*",
+            "strategyType": "MemoryStrategyType"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "streamDeliveryResources": "*",
+          "addMemoryStrategy": [
+            {
+              "strategyName": "*",
+              "description": "*",
+              "strategyType": "MemoryStrategyType"
+            }
+          ],
+          "addStreamDeliveryResource": [
+            "*"
+          ]
+        },
+        "PolicyEngine": {
+          "policyEngineName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addPolicy": [
+            "*",
+            {
+              "statement": "*",
+              "policyName": "*",
+              "description": "*",
+              "validationMode": "*"
+            }
+          ]
+        },
+        "Policy": {
+          "policyName": "*",
+          "policyEngine": {
+            "policyEngineArn": "*",
+            "policyEngineId": "*",
+            "policyEngineName": "*",
+            "description": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "statement": "*",
+          "description": "*",
+          "validationMode": "*"
+        },
+        "RuntimeEndpoint": {
+          "endpointName": "*",
+          "agentRuntimeId": "*",
+          "agentRuntimeVersion": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "Runtime": {
+          "runtimeName": "*",
+          "agentRuntimeArtifact": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "description": "*",
+          "protocolConfiguration": "*",
+          "platformVersion": "*",
+          "environmentVariables": "*",
+          "authorizerConfiguration": "*",
+          "tags": "*",
+          "requestHeaderConfiguration": {
+            "allowlistedHeaders": "*"
+          },
+          "lifecycleConfiguration": {
+            "idleRuntimeSessionTimeout": "*"
+          },
+          "tracingEnabled": "boolean",
+          "loggingConfigs": {
+            "logType": "*",
+            "destination": "*"
+          },
+          "manageDeliveryResourcePolicy": "boolean",
+          "addEndpoint": [
+            "*",
+            {
+              "description": "*",
+              "version": "*"
+            }
+          ]
+        },
+        "BrowserCustom": {
+          "browserCustomName": "*",
+          "description": "*",
+          "networkConfiguration": "*",
+          "recordingConfig": {
+            "enabled": "boolean",
+            "s3Location": {
+              "bucketName": "*",
+              "objectKey": "*",
+              "objectVersion": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "browserSigning": "BrowserSigning"
+        },
+        "CodeInterpreterCustom": {
+          "codeInterpreterCustomName": "*",
+          "description": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "tags": "*"
+        }
+      },
+      "aws-cloudfront.lib": {
+        "EdgeFunction": {
+          "stackId": "*",
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addEventSourceMapping": [
+            "*",
+            {
+              "eventSourceArn": "*",
+              "batchSize": "*",
+              "bisectBatchOnError": "boolean",
+              "onFailure": "*",
+              "enabled": "boolean",
+              "startingPosition": "StartingPosition",
+              "startingPositionTimestamp": "*",
+              "reportBatchItemFailures": "boolean",
+              "maxBatchingWindow": "*",
+              "maxConcurrency": "*",
+              "retryAttempts": "*",
+              "parallelizationFactor": "*",
+              "kafkaTopic": "*",
+              "kafkaBootstrapServers": "*",
+              "kafkaConsumerGroupId": "*",
+              "sourceAccessConfigurations": {
+                "type": "*",
+                "uri": "*"
+              },
+              "filters": "*",
+              "filterEncryption": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "supportS3OnFailureDestination": "boolean",
+              "provisionedPollerConfig": {
+                "minimumPollers": "*",
+                "maximumPollers": "*",
+                "pollerGroupName": "*"
+              },
+              "metricsConfig": {
+                "metrics": "MetricType"
+              },
+              "logLevel": "EventSourceMappingLogLevel",
+              "schemaRegistryConfig": "*"
+            }
+          ],
+          "addPermission": [
+            "*",
+            {
+              "action": "*",
+              "eventSourceToken": "*",
+              "principal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              },
+              "scope": "*",
+              "sourceAccount": "*",
+              "sourceArn": "*",
+              "organizationId": "*",
+              "functionUrlAuthType": "FunctionUrlAuthType",
+              "invokedViaFunctionUrl": "boolean"
+            }
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeLatestVersion": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeVersion": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "version": "*",
+              "lambda": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "grantInvokeUrl": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeCompositePrincipal": [
+            "*"
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricDuration": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricErrors": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricInvocations": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricThrottles": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addEventSource": [
+            "*"
+          ],
+          "configureAsyncInvoke": [
+            {
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addFunctionUrl": [
+            {
+              "authType": "FunctionUrlAuthType",
+              "cors": {
+                "allowCredentials": "boolean",
+                "allowedHeaders": "*",
+                "allowedMethods": "HttpMethod",
+                "allowedOrigins": "*",
+                "exposedHeaders": "*",
+                "maxAge": "*"
+              },
+              "invokeMode": "InvokeMode"
+            }
+          ]
+        }
+      },
+      "aws-codedeploy.lib": {
+        "EcsApplication": {
+          "applicationName": "*"
+        },
+        "EcsDeploymentConfig": {},
+        "EcsDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*",
+          "alarms": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "service": {
+            "cluster": {
+              "clusterName": "*",
+              "clusterArn": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "connections": "*",
+              "hasEc2Capacity": "boolean",
+              "defaultCloudMapNamespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType"
+              },
+              "autoscalingGroup": {
+                "autoScalingGroupName": "*",
+                "autoScalingGroupArn": "*",
+                "osType": "OperatingSystemType",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "executeCommandConfiguration": {
+                "kmsKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "logConfiguration": {
+                  "cloudWatchEncryptionEnabled": "boolean",
+                  "cloudWatchLogGroup": "*",
+                  "s3Bucket": {
+                    "bucketArn": "*",
+                    "bucketName": "*",
+                    "bucketWebsiteUrl": "*",
+                    "bucketWebsiteDomainName": "*",
+                    "bucketDomainName": "*",
+                    "bucketDualStackDomainName": "*",
+                    "bucketRegionalDomainName": "*",
+                    "isWebsite": "boolean",
+                    "policy": "*",
+                    "replicationRoleArn": "*"
+                  },
+                  "s3EncryptionEnabled": "boolean",
+                  "s3KeyPrefix": "*"
+                },
+                "logging": "ExecuteCommandLogging"
+              }
+            },
+            "serviceArn": "*",
+            "serviceName": "*"
+          },
+          "blueGreenDeploymentConfig": {
+            "blueTargetGroup": {
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            },
+            "listener": "*",
+            "testListener": "*",
+            "deploymentApprovalWaitTime": "*"
+          },
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "addAlarm": [
+            "*"
+          ]
+        },
+        "ImportedEcsDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*"
+        },
+        "LambdaApplication": {
+          "applicationName": "*"
+        },
+        "CustomLambdaDeploymentConfig": {
+          "type": "CustomLambdaDeploymentConfigType",
+          "percentage": "*",
+          "interval": "*",
+          "deploymentConfigName": "*",
+          "bindEnvironment": [
+            "*"
+          ]
+        },
+        "LambdaDeploymentConfig": {},
+        "LambdaDeploymentGroup": {
+          "application": {
+            "applicationArn": "*",
+            "applicationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": {
+            "deploymentConfigName": "*",
+            "deploymentConfigArn": "*"
+          },
+          "alarms": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "alias": "*",
+          "preHook": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "postHook": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "addAlarm": [
+            "*"
+          ],
+          "addPreHook": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "addPostHook": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "grantPutLifecycleEventHookExecutionStatus": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ImportedLambdaDeploymentGroup": {
+          "application": {
+            "applicationArn": "*",
+            "applicationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": {
+            "deploymentConfigName": "*",
+            "deploymentConfigArn": "*"
+          }
+        },
+        "ImportedDeploymentGroupBase": {
+          "application": "*",
+          "deploymentGroupName": "*"
+        },
+        "DeploymentGroupBase": {
+          "deploymentGroupName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roleConstructId": "*"
+        },
+        "ServerApplication": {
+          "applicationName": "*"
+        },
+        "ServerDeploymentConfig": {
+          "minimumHealthyHosts": "*",
+          "zonalConfig": {
+            "monitorDuration": "*",
+            "minimumHealthyHostsPerZone": "*"
+          },
+          "deploymentConfigName": "*"
+        },
+        "ImportedServerDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*"
+        },
+        "ServerDeploymentGroup": {
+          "application": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*",
+          "autoScalingGroups": {
+            "autoScalingGroupName": "*",
+            "autoScalingGroupArn": "*",
+            "osType": "OperatingSystemType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "installAgent": "boolean",
+          "loadBalancer": "*",
+          "loadBalancers": "*",
+          "ec2InstanceTags": "*",
+          "onPremiseInstanceTags": "*",
+          "alarms": "*",
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "terminationHook": "boolean",
+          "addAutoScalingGroup": [
+            "*"
+          ],
+          "addAlarm": [
+            "*"
+          ]
+        }
+      },
+      "aws-codepipeline.lib": {
+        "AliasWithShorterGeneratedName": {}
+      },
+      "aws-cognito.lib": {
+        "UserPoolIdentityProviderAmazon": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderApple": {
+          "clientId": "*",
+          "teamId": "*",
+          "keyId": "*",
+          "privateKey": "*",
+          "privateKeyValue": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderFacebook": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "scopes": "*",
+          "apiVersion": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderGoogle": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "clientSecretValue": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderOidc": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "issuerUrl": "*",
+          "name": "*",
+          "scopes": "*",
+          "identifiers": "*",
+          "attributeRequestMethod": "OidcAttributeRequestMethod",
+          "endpoints": {
+            "authorization": "*",
+            "token": "*",
+            "userInfo": "*",
+            "jwksUri": "*"
+          },
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderSaml": {
+          "name": "*",
+          "identifiers": "*",
+          "metadata": "*",
+          "idpSignout": "boolean",
+          "encryptedResponses": "boolean",
+          "requestSigningAlgorithm": "SigningAlgorithm",
+          "idpInitiated": "boolean",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        }
+      },
+      "aws-ecs.lib": {
+        "ImportedTaskDefinition": {
+          "taskDefinitionArn": "*",
+          "compatibility": "Compatibility",
+          "networkMode": "NetworkMode",
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "TaskDefinition": {
+          "networkMode": "NetworkMode",
+          "placementConstraints": "*",
+          "compatibility": "Compatibility",
+          "cpu": "*",
+          "memoryMiB": "*",
+          "ipcMode": "IpcMode",
+          "pidMode": "PidMode",
+          "inferenceAccelerators": {
+            "deviceName": "*",
+            "deviceType": "*"
+          },
+          "ephemeralStorageGiB": "*",
+          "runtimePlatform": {
+            "cpuArchitecture": "*",
+            "operatingSystemFamily": "*"
+          },
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean",
+          "_validateTarget": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "alternateTarget": "*"
+            }
+          ],
+          "_portRangeFromPortMapping": [
+            {
+              "containerPort": "*",
+              "containerPortRange": "*",
+              "hostPort": "*",
+              "protocol": "Protocol",
+              "name": "*",
+              "appProtocol": "*"
+            }
+          ],
+          "addToTaskRolePolicy": [
+            "*"
+          ],
+          "addToExecutionRolePolicy": [
+            "*"
+          ],
+          "addContainer": [
+            "*",
+            {
+              "image": "*",
+              "containerName": "*",
+              "command": "*",
+              "credentialSpecs": "*",
+              "cpu": "*",
+              "disableNetworking": "boolean",
+              "dnsSearchDomains": "*",
+              "dnsServers": "*",
+              "dockerLabels": "*",
+              "dockerSecurityOptions": "*",
+              "entryPoint": "*",
+              "environment": "*",
+              "environmentFiles": "*",
+              "secrets": "*",
+              "startTimeout": "*",
+              "essential": "boolean",
+              "extraHosts": "*",
+              "healthCheck": {
+                "command": "*",
+                "retries": "*"
+              },
+              "hostname": "*",
+              "interactive": "boolean",
+              "memoryLimitMiB": "*",
+              "memoryReservationMiB": "*",
+              "privileged": "boolean",
+              "readonlyRootFilesystem": "boolean",
+              "user": "*",
+              "versionConsistency": "VersionConsistency",
+              "workingDirectory": "*",
+              "logging": "*",
+              "linuxParameters": "*",
+              "gpuCount": "*",
+              "portMappings": {
+                "containerPort": "*",
+                "containerPortRange": "*",
+                "hostPort": "*",
+                "protocol": "Protocol",
+                "name": "*",
+                "appProtocol": "*"
+              },
+              "inferenceAcceleratorResources": "*",
+              "systemControls": {
+                "namespace": "*",
+                "value": "*"
+              },
+              "pseudoTerminal": "boolean",
+              "ulimits": {
+                "name": "UlimitName",
+                "softLimit": "*",
+                "hardLimit": "*"
+              },
+              "enableRestartPolicy": "boolean",
+              "restartIgnoredExitCodes": "*"
+            }
+          ],
+          "addFirelensLogRouter": [
+            "*",
+            {
+              "firelensConfig": {
+                "type": "FirelensLogRouterType",
+                "options": {
+                  "enableECSLogMetadata": "boolean",
+                  "configFileType": "FirelensConfigFileType",
+                  "configFileValue": "*"
+                }
+              },
+              "image": "*",
+              "containerName": "*",
+              "command": "*",
+              "credentialSpecs": "*",
+              "cpu": "*",
+              "disableNetworking": "boolean",
+              "dnsSearchDomains": "*",
+              "dnsServers": "*",
+              "dockerLabels": "*",
+              "dockerSecurityOptions": "*",
+              "entryPoint": "*",
+              "environment": "*",
+              "environmentFiles": "*",
+              "secrets": "*",
+              "startTimeout": "*",
+              "essential": "boolean",
+              "extraHosts": "*",
+              "healthCheck": {
+                "command": "*",
+                "retries": "*"
+              },
+              "hostname": "*",
+              "interactive": "boolean",
+              "memoryLimitMiB": "*",
+              "memoryReservationMiB": "*",
+              "privileged": "boolean",
+              "readonlyRootFilesystem": "boolean",
+              "user": "*",
+              "versionConsistency": "VersionConsistency",
+              "workingDirectory": "*",
+              "logging": "*",
+              "linuxParameters": "*",
+              "gpuCount": "*",
+              "portMappings": {
+                "containerPort": "*",
+                "containerPortRange": "*",
+                "hostPort": "*",
+                "protocol": "Protocol",
+                "name": "*",
+                "appProtocol": "*"
+              },
+              "inferenceAcceleratorResources": "*",
+              "systemControls": {
+                "namespace": "*",
+                "value": "*"
+              },
+              "pseudoTerminal": "boolean",
+              "ulimits": {
+                "name": "UlimitName",
+                "softLimit": "*",
+                "hardLimit": "*"
+              },
+              "enableRestartPolicy": "boolean",
+              "restartIgnoredExitCodes": "*"
+            }
+          ],
+          "_linkContainer": [
+            "*"
+          ],
+          "addVolume": [
+            {
+              "host": {
+                "sourcePath": "*"
+              },
+              "name": "*",
+              "configuredAtLaunch": "boolean",
+              "dockerVolumeConfiguration": {
+                "autoprovision": "boolean",
+                "driver": "*",
+                "driverOpts": "*",
+                "labels": "*",
+                "scope": "Scope"
+              },
+              "efsVolumeConfiguration": {
+                "fileSystemId": "*",
+                "rootDirectory": "*",
+                "transitEncryption": "*",
+                "transitEncryptionPort": "*",
+                "authorizationConfig": {
+                  "accessPointId": "*",
+                  "iam": "*"
+                }
+              }
+            }
+          ],
+          "addPlacementConstraint": [
+            "*"
+          ],
+          "addExtension": [
+            "*"
+          ],
+          "addInferenceAccelerator": [
+            {
+              "deviceName": "*",
+              "deviceType": "*"
+            }
+          ],
+          "grantRun": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "obtainExecutionRole": [],
+          "findPortMappingByName": [
+            "*"
+          ],
+          "findContainer": [
+            "*"
+          ]
+        },
+        "Ec2Service": {
+          "taskDefinition": "*",
+          "assignPublicIp": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "placementConstraints": "*",
+          "placementStrategies": "*",
+          "daemon": "boolean",
+          "availabilityZoneRebalancing": "AvailabilityZoneRebalancing",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "addPlacementStrategies": [
+            "*"
+          ],
+          "addPlacementConstraints": [
+            "*"
+          ],
+          "attachToClassicLB": [
+            "*"
+          ]
+        },
+        "Ec2TaskDefinition": {
+          "networkMode": "NetworkMode",
+          "placementConstraints": "*",
+          "ipcMode": "IpcMode",
+          "pidMode": "PidMode",
+          "inferenceAccelerators": {
+            "deviceName": "*",
+            "deviceType": "*"
+          },
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean"
+        },
+        "ExternalService": {
+          "taskDefinition": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "daemon": "boolean",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "attachToApplicationTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            }
+          ],
+          "loadBalancerTarget": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "alternateTarget": "*"
+            }
+          ],
+          "registerLoadBalancerTargets": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "newTargetGroupId": "*",
+              "listener": "*"
+            }
+          ],
+          "autoScaleTaskCount": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "enableCloudMap": [
+            {
+              "name": "*",
+              "cloudMapNamespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "failureThreshold": "*",
+              "container": "*",
+              "containerPort": "*"
+            }
+          ],
+          "associateCloudMapService": [
+            {
+              "service": {
+                "serviceName": "*",
+                "namespace": {
+                  "namespaceName": "*",
+                  "namespaceId": "*",
+                  "namespaceArn": "*",
+                  "type": "NamespaceType",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "serviceId": "*",
+                "serviceArn": "*",
+                "dnsRecordType": "DnsRecordType",
+                "routingPolicy": "RoutingPolicy",
+                "discoveryType": "DiscoveryType"
+              },
+              "container": "*",
+              "containerPort": "*"
+            }
+          ]
+        },
+        "ExternalTaskDefinition": {
+          "networkMode": "NetworkMode",
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean",
+          "addInferenceAccelerator": [
+            {
+              "deviceName": "*",
+              "deviceType": "*"
+            }
+          ]
+        },
+        "FargateService": {
+          "taskDefinition": "*",
+          "assignPublicIp": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "platformVersion": "FargatePlatformVersion",
+          "availabilityZoneRebalancing": "AvailabilityZoneRebalancing",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "attachToClassicLB": [
+            "*"
+          ]
+        },
+        "FargateTaskDefinition": {
+          "cpu": "*",
+          "memoryLimitMiB": "*",
+          "ephemeralStorageGiB": "*",
+          "runtimePlatform": {
+            "cpuArchitecture": "*",
+            "operatingSystemFamily": "*"
+          },
+          "pidMode": "PidMode",
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean"
+        }
+      },
+      "aws-elasticloadbalancingv2.lib": {
+        "ApplicationListener": {
+          "loadBalancer": {
+            "loadBalancerArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "ipAddressType": "IpAddressType",
+            "listeners": "*",
+            "metrics": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "connections": "*",
+            "isApplicationLoadBalancer": "boolean"
+          },
+          "protocol": "ApplicationProtocol",
+          "port": "*",
+          "certificateArns": "*",
+          "certificates": {
+            "certificateArn": "*"
+          },
+          "sslPolicy": "SslPolicy",
+          "defaultTargetGroups": {
+            "metrics": "*",
+            "targetGroupName": "*",
+            "targetGroupArn": "*",
+            "loadBalancerArns": "*",
+            "loadBalancerAttached": "*",
+            "node": "*"
+          },
+          "defaultAction": "*",
+          "open": "boolean",
+          "mutualAuthentication": {
+            "mutualAuthenticationMode": "MutualAuthenticationMode",
+            "trustStore": "*",
+            "ignoreClientCertificateExpiry": "boolean",
+            "advertiseTrustStoreCaNames": "boolean"
+          },
+          "addCertificateArns": [
+            "*",
+            "*"
+          ],
+          "addCertificates": [
+            "*",
+            {
+              "certificateArn": "*"
+            }
+          ],
+          "addAction": [
+            "*",
+            {
+              "action": "*",
+              "removeSuffix": "boolean",
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addTargetGroups": [
+            "*",
+            {
+              "targetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addTargets": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "protocolVersion": "ApplicationProtocolVersion",
+              "port": "*",
+              "slowStart": "*",
+              "stickinessCookieName": "*",
+              "targets": "*",
+              "targetGroupName": "*",
+              "healthCheck": {
+                "enabled": "boolean",
+                "path": "*",
+                "port": "*",
+                "protocol": "Protocol",
+                "healthyThresholdCount": "*",
+                "unhealthyThresholdCount": "*",
+                "healthyGrpcCodes": "*",
+                "healthyHttpCodes": "*"
+              },
+              "loadBalancingAlgorithmType": "TargetGroupLoadBalancingAlgorithmType",
+              "enableAnomalyMitigation": "boolean",
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addFixedResponse": [
+            "*",
+            {
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*",
+              "statusCode": "*",
+              "contentType": "ContentType",
+              "messageBody": "*"
+            }
+          ],
+          "addRedirectResponse": [
+            "*",
+            {
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*",
+              "host": "*",
+              "path": "*",
+              "port": "*",
+              "protocol": "*",
+              "query": "*",
+              "statusCode": "*"
+            }
+          ],
+          "registerConnectable": [
+            {
+              "connections": "*"
+            },
+            "*"
+          ]
+        },
+        "ImportedApplicationListener": {
+          "listenerArn": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "defaultPort": "*",
+          "securityGroupAllowsAllOutbound": "boolean"
+        },
+        "LookedUpApplicationListener": {
+          "listenerArn": "*",
+          "listenerPort": "*",
+          "securityGroupIds": "*"
+        },
+        "ApplicationLoadBalancer": {
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ipAddressType": "IpAddressType",
+          "http2Enabled": "boolean",
+          "idleTimeout": "*",
+          "dropInvalidHeaderFields": "boolean",
+          "desyncMitigationMode": "DesyncMitigationMode",
+          "clientKeepAlive": "*",
+          "preserveHostHeader": "boolean",
+          "xAmznTlsVersionAndCipherSuiteHeaders": "boolean",
+          "preserveXffClientPort": "boolean",
+          "xffHeaderProcessingMode": "XffHeaderProcessingMode",
+          "wafFailOpen": "boolean",
+          "loadBalancerName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "deletionProtection": "boolean",
+          "crossZoneEnabled": "boolean",
+          "denyAllIgwTraffic": "boolean",
+          "minimumCapacityUnit": "*",
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ],
+          "addRedirect": [
+            {
+              "sourceProtocol": "ApplicationProtocol",
+              "sourcePort": "*",
+              "targetProtocol": "ApplicationProtocol",
+              "targetPort": "*",
+              "open": "boolean"
+            }
+          ],
+          "logAccessLogs": [
+            {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "*"
+          ],
+          "logConnectionLogs": [
+            {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "*"
+          ],
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricActiveConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricClientTlsNegotiationErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricConsumedLCUs": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpFixedResponseCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpRedirectCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpRedirectUrlLimitExceededCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpCodeElb": [
+            "HttpCodeElb",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpCodeTarget": [
+            "HttpCodeTarget",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIpv6ProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIpv6RequestCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricNewConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRejectedConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRequestCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRuleEvaluations": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetConnectionErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetResponseTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetTLSNegotiationErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthError": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthFailure": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthLatency": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthSuccess": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ImportedApplicationLoadBalancer": {
+          "loadBalancerArn": "*",
+          "securityGroupId": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "securityGroupAllowsAllOutbound": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ]
+        },
+        "LookedUpApplicationLoadBalancer": {
+          "loadBalancerArn": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "ipAddressType": "LoadBalancerIpAddressType",
+          "securityGroupIds": "*",
+          "vpcId": "*",
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ]
+        },
+        "TrustStoreRevocation": {
+          "trustStore": "*",
+          "revocationContents": {
+            "revocationType": "RevocationType",
+            "bucket": "*",
+            "key": "*",
+            "version": "*"
+          }
+        },
+        "TrustStore": {
+          "trustStoreName": "*",
+          "bucket": "*",
+          "key": "*",
+          "version": "*"
+        },
+        "NetworkListener": {
+          "loadBalancer": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "metrics": "*",
+            "securityGroups": "*",
+            "ipAddressType": "IpAddressType",
+            "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "loadBalancerArn": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "defaultTargetGroups": {
+            "metrics": "*",
+            "targetGroupName": "*",
+            "targetGroupArn": "*",
+            "loadBalancerArns": "*",
+            "loadBalancerAttached": "*",
+            "node": "*",
+            "isNetworkTargetGroup": "boolean"
+          },
+          "defaultAction": "*",
+          "protocol": "Protocol",
+          "certificates": {
+            "certificateArn": "*"
+          },
+          "sslPolicy": "SslPolicy",
+          "alpnPolicy": "AlpnPolicy",
+          "tcpIdleTimeout": "*",
+          "addCertificates": [
+            "*",
+            {
+              "certificateArn": "*"
+            }
+          ],
+          "addTargetGroups": [
+            "*",
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*",
+              "isNetworkTargetGroup": "boolean"
+            }
+          ],
+          "addAction": [
+            "*",
+            {
+              "action": "*"
+            }
+          ],
+          "addTargets": [
+            "*",
+            {
+              "port": "*",
+              "protocol": "Protocol",
+              "targets": "*",
+              "targetGroupName": "*",
+              "deregistrationDelay": "*",
+              "proxyProtocolV2": "boolean",
+              "preserveClientIp": "boolean",
+              "healthCheck": {
+                "enabled": "boolean",
+                "path": "*",
+                "port": "*",
+                "protocol": "Protocol",
+                "healthyThresholdCount": "*",
+                "unhealthyThresholdCount": "*",
+                "healthyGrpcCodes": "*",
+                "healthyHttpCodes": "*"
+              }
+            }
+          ]
+        },
+        "NetworkLoadBalancer": {
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ipAddressType": "IpAddressType",
+          "clientRoutingPolicy": "ClientRoutingPolicy",
+          "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "boolean",
+          "zonalShift": "boolean",
+          "enablePrefixForIpv6SourceNat": "boolean",
+          "subnetMappings": {
+            "subnet": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "allocationId": "*",
+            "ipv6Address": "*",
+            "privateIpv4Address": "*",
+            "sourceNatIpv6Prefix": "*"
+          },
+          "disableSecurityGroups": "boolean",
+          "loadBalancerName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "deletionProtection": "boolean",
+          "crossZoneEnabled": "boolean",
+          "denyAllIgwTraffic": "boolean",
+          "minimumCapacityUnit": "*",
+          "addListener": [
+            "*",
+            {
+              "port": "*",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*",
+                "isNetworkTargetGroup": "boolean"
+              },
+              "defaultAction": "*",
+              "protocol": "Protocol",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "alpnPolicy": "AlpnPolicy",
+              "tcpIdleTimeout": "*"
+            }
+          ],
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricActiveFlowCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricConsumedLCUs": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHealthyHostCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricUnHealthyHostCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricNewFlowCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpClientResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpElbResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpTargetResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "LookedUpNetworkLoadBalancer": {
+          "loadBalancerArn": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "ipAddressType": "LoadBalancerIpAddressType",
+          "securityGroupIds": "*",
+          "vpcId": "*",
+          "addListener": [
+            "*",
+            {
+              "port": "*",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*",
+                "isNetworkTargetGroup": "boolean"
+              },
+              "defaultAction": "*",
+              "protocol": "Protocol",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "alpnPolicy": "AlpnPolicy",
+              "tcpIdleTimeout": "*"
+            }
+          ]
+        }
+      },
+      "aws-glue.lib": {
+        "PySparkEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkStreamingJob": {
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PythonShellJob": {
+          "pythonVersion": "PythonVersion",
+          "maxCapacity": "MaxCapacity",
+          "librarySet": "LibrarySet",
+          "extraPythonFiles": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkEtlJob": {
+          "className": "*",
+          "notifyDelayAfter": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkStreamingJob": {
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "Workflow": {}
+      },
+      "aws-iam.lib": {
+        "ImmutableRole": {
+          "roleArn": "*",
+          "roleName": "*",
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "assumeRoleAction": "*",
+          "policyFragment": "*",
+          "principalAccount": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "grantPrincipal": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "stack": "*",
+          "applyRemovalPolicy": "*",
+          "node": "*",
+          "with": "*",
+          "env": {
+            "account": "*",
+            "region": "*"
+          }
+        },
+        "ImportedRole": {
+          "roleArn": "*",
+          "roleName": "*",
+          "account": "*",
+          "mutable": "boolean",
+          "addGrantsToResources": "boolean",
+          "defaultPolicyName": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "dedupeString": []
+        },
+        "PrecreatedRole": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "assumeRolePolicy": "*",
+          "missing": "boolean",
+          "rolePath": "*",
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ]
+        }
+      },
+      "pipelines.lib": {
+        "AssetSingletonRole": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addAssumeRole": [
+            "*"
+          ]
+        }
+      },
+      "lib.gateway": {
+        "GatewayTarget": {
+          "gateway": {
+            "gatewayArn": "*",
+            "gatewayId": "*",
+            "gatewayName": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "description": "*",
+            "protocolConfiguration": {
+              "protocolType": "*"
+            },
+            "authorizerConfiguration": {
+              "authorizerType": "GatewayAuthorizerType"
+            },
+            "exceptionLevel": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "gatewayUrl": "*",
+            "status": "*",
+            "statusReason": "*",
+            "createdAt": "*",
+            "updatedAt": "*"
+          },
+          "targetConfiguration": {
+            "targetType": "McpTargetType"
+          },
+          "credentialProviderConfigurations": {
+            "credentialProviderType": "CredentialProviderType"
+          },
+          "gatewayTargetName": "*",
+          "description": "*",
+          "grantSync": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "lib.services": {
+        "ResourcePolicy": {}
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts
+var AWS_CDK_ENUMS;
+var init_enums = __esm({
+  "../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts"() {
+    "use strict";
+    AWS_CDK_ENUMS = {
+      "AcceleratorManufacturer": [
+        "amazon-web-services",
+        "amd",
+        "nvidia",
+        "xilinx",
+        "habana"
+      ],
+      "AcceleratorName": [
+        "a100",
+        "k80",
+        "m60",
+        "radeon-pro-v520",
+        "t4",
+        "v100",
+        "vu9p",
+        "a10g",
+        "h100",
+        "inferentia",
+        "k520",
+        "t4g",
+        "l40s",
+        "l4",
+        "gaudi-hl-205",
+        "inferentia2",
+        "trainium",
+        "trainium2",
+        "u30"
+      ],
+      "AcceleratorType": [
+        "gpu",
+        "fpga",
+        "inference",
+        "media"
+      ],
+      "AccessEntryType": [
+        "STANDARD",
+        "FARGATE_LINUX",
+        "EC2_LINUX",
+        "EC2_WINDOWS",
+        "EC2",
+        "HYBRID_LINUX",
+        "HYPERPOD_LINUX"
+      ],
+      "AccessKeyStatus": [
+        "Active",
+        "Inactive",
+        "Expired"
+      ],
+      "AccessLevel": [
+        "READ",
+        "READ_VERSIONED",
+        "LIST",
+        "WRITE",
+        "DELETE"
+      ],
+      "AccessScopeType": [
+        "namespace",
+        "cluster"
+      ],
+      "AccountRecovery": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5
+      ],
+      "Action": [
+        "allow",
+        "deny"
+      ],
+      "ActionAfterCompletion": [
+        "NONE",
+        "DELETE"
+      ],
+      "ActionCategory": [
+        "Source",
+        "Build",
+        "Test",
+        "Approval",
+        "Deploy",
+        "Invoke",
+        "Compute"
+      ],
+      "ActionOnFailure": [
+        "TERMINATE_CLUSTER",
+        "CANCEL_AND_WAIT",
+        "CONTINUE"
+      ],
+      "ActionPoint": [
+        "PRE_CREATE_HOSTED_CONFIGURATION_VERSION",
+        "PRE_START_DEPLOYMENT",
+        "ON_DEPLOYMENT_START",
+        "ON_DEPLOYMENT_STEP",
+        "ON_DEPLOYMENT_BAKING",
+        "ON_DEPLOYMENT_COMPLETE",
+        "ON_DEPLOYMENT_ROLLED_BACK",
+        "AT_DEPLOYMENT_TICK"
+      ],
+      "ActionScope": [
+        "all",
+        "specific"
+      ],
+      "AdMarkerDash": [
+        "BINARY",
+        "XML"
+      ],
+      "AdMarkerHls": [
+        "DATERANGE",
+        "SCTE35_ENHANCED"
+      ],
+      "AdditionalHealthCheckType": [
+        "ELB",
+        "EBS",
+        "VPC_LATTICE"
+      ],
+      "AddressFamily": [
+        "IPv4",
+        "IPv6"
+      ],
+      "AdjustmentType": [
+        "ChangeInCapacity",
+        "PercentChangeInCapacity",
+        "ExactCapacity"
+      ],
+      "AdotLambdaExecWrapper": [
+        "/opt/otel-handler",
+        "/opt/otel-proxy-handler",
+        "/opt/otel-stream-handler",
+        "/opt/otel-instrument",
+        "/opt/otel-sqs-handler"
+      ],
+      "AdotLambdaLayerType": [
+        "JAVA_SDK",
+        "JAVA_AUTO_INSTRUMENTATION",
+        "JAVASCRIPT_SDK",
+        "PYTHON_SDK",
+        "GENERIC"
+      ],
+      "AdvancedSecurityMode": [
+        "ENFORCED",
+        "AUDIT",
+        "OFF"
+      ],
+      "AgentCollaboratorType": [
+        "SUPERVISOR",
+        "DISABLED",
+        "SUPERVISOR_ROUTER"
+      ],
+      "AgentCoreRuntime": [
+        "PYTHON_3_10",
+        "PYTHON_3_11",
+        "PYTHON_3_12",
+        "PYTHON_3_13",
+        "PYTHON_3_14",
+        "NODE_22"
+      ],
+      "AgentStepType": [
+        "PRE_PROCESSING",
+        "ORCHESTRATION",
+        "POST_PROCESSING",
+        "ROUTING_CLASSIFIER",
+        "MEMORY_SUMMARIZATION",
+        "KNOWLEDGE_BASE_RESPONSE_GENERATION"
+      ],
+      "AlarmBehavior": [
+        "ROLLBACK_ON_ALARM",
+        "FAIL_ON_ALARM"
+      ],
+      "AlarmState": [
+        "ALARM",
+        "OK",
+        "INSUFFICIENT_DATA"
+      ],
+      "AlarmStatusWidgetSortBy": [
+        "default",
+        "stateUpdatedTimestamp",
+        "timestamp"
+      ],
+      "AlbScheme": [
+        "internal",
+        "internet-facing"
+      ],
+      "AllocationStrategy": [
+        "BEST_FIT",
+        "BEST_FIT_PROGRESSIVE",
+        "SPOT_CAPACITY_OPTIMIZED",
+        "SPOT_PRICE_CAPACITY_OPTIMIZED"
+      ],
+      "AllowMapsAction": [
+        "geo-maps:GetStaticMap",
+        "geo-maps:GetTile",
+        "geo-maps:*"
+      ],
+      "AllowPlacesAction": [
+        "geo-places:Autocomplete",
+        "geo-places:Geocode",
+        "geo-places:GetPlace",
+        "geo-places:ReverseGeocode",
+        "geo-places:SearchNearby",
+        "geo-places:SearchText",
+        "geo-places:Suggest",
+        "geo-places:*"
+      ],
+      "AllowRoutesAction": [
+        "geo-routes:CalculateIsolines",
+        "geo-routes:CalculateRoutes",
+        "geo-routes:CalculateRouteMatrix",
+        "geo-routes:OptimizeWaypoints",
+        "geo-routes:SnapToRoads",
+        "geo-routes:*"
+      ],
+      "AlpnPolicy": [
+        "HTTP1Only",
+        "HTTP2Only",
+        "HTTP2Optional",
+        "HTTP2Preferred",
+        "None"
+      ],
+      "AmazonLinuxCpuType": [
+        "arm64",
+        "x86_64"
+      ],
+      "AmazonLinuxEdition": [
+        "standard",
+        "minimal"
+      ],
+      "AmazonLinuxGeneration": [
+        "amzn",
+        "amzn2",
+        "al2022",
+        "al2023"
+      ],
+      "AmazonLinuxKernel": [
+        "kernel-5.10",
+        "kernel-6.1"
+      ],
+      "AmazonLinuxStorage": [
+        "ebs",
+        "s3",
+        "gp2"
+      ],
+      "AmazonLinuxVirt": [
+        "hvm",
+        "pv"
+      ],
+      "AmiHardwareType": [
+        "Standard",
+        "GPU",
+        "ARM64",
+        "Neuron"
+      ],
+      "ApiGatewayHttpMethod": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD",
+        "OPTIONS"
+      ],
+      "ApiKeyCredentialLocationType": [
+        "HEADER",
+        "QUERY_PARAMETER"
+      ],
+      "ApiKeySourceType": [
+        "HEADER",
+        "AUTHORIZER"
+      ],
+      "AppSyncAuthorizationType": [
+        "API_KEY",
+        "AWS_IAM",
+        "AMAZON_COGNITO_USER_POOLS",
+        "OPENID_CONNECT",
+        "AWS_LAMBDA"
+      ],
+      "AppSyncDataSourceType": [
+        "AWS_LAMBDA",
+        "AMAZON_DYNAMODB",
+        "AMAZON_EVENTBRIDGE",
+        "AMAZON_OPENSEARCH_SERVICE",
+        "HTTP",
+        "RELATIONAL_DATABASE",
+        "AMAZON_BEDROCK_RUNTIME",
+        "AMAZON_ELASTICSEARCH"
+      ],
+      "AppSyncFieldLogLevel": [
+        "NONE",
+        "ERROR",
+        "INFO",
+        "DEBUG",
+        "ALL"
+      ],
+      "ApplicationLoadBalancedServiceRecordType": [
+        0,
+        1,
+        2
+      ],
+      "ApplicationLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN",
+        "TRACE",
+        "ERROR",
+        "FATAL"
+      ],
+      "ApplicationProtocol": [
+        "HTTP",
+        "HTTPS"
+      ],
+      "ApplicationProtocolVersion": [
+        "GRPC",
+        "HTTP1",
+        "HTTP2"
+      ],
+      "ApproximateCreationDateTimePrecision": [
+        "MILLISECOND",
+        "MICROSECOND"
+      ],
+      "ArnFormat": [
+        "arn:aws:service:region:account:resource",
+        "arn:aws:service:region:account:resource:resourceName",
+        "arn:aws:service:region:account:resource/resourceName",
+        "arn:aws:service:region:account:/resource/resourceName"
+      ],
+      "ArtifactsEncryptionMode": [
+        "SSE_S3",
+        "SSE_KMS"
+      ],
+      "AssembleWith": [
+        "None",
+        "Line"
+      ],
+      "AssertionType": [
+        "equals",
+        "objectLike",
+        "arrayWith"
+      ],
+      "AssetHashType": [
+        "source",
+        "bundle",
+        "output",
+        "custom"
+      ],
+      "AssetType": [
+        "file",
+        "docker-image"
+      ],
+      "AttachmentTargetType": [
+        "AWS::RDS::DBInstance",
+        "deprecated_AWS::RDS::DBInstance",
+        "AWS::RDS::DBCluster",
+        "deprecated_AWS::RDS::DBCluster",
+        "AWS::RDS::DBProxy",
+        "AWS::Redshift::Cluster",
+        "AWS::DocDB::DBInstance",
+        "AWS::DocDB::DBCluster"
+      ],
+      "AttributeType": [
+        "B",
+        "N",
+        "S"
+      ],
+      "AudioCodec": [
+        "AACL",
+        "AACH",
+        "AC-3",
+        "EC-3"
+      ],
+      "AudioCodecType": [
+        "AAC",
+        "AC3",
+        "EAC3",
+        "EAC3_ATMOS",
+        "MP2",
+        "WAV",
+        "PASSTHROUGH"
+      ],
+      "AuditCheck": [
+        "AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK",
+        "CA_CERTIFICATE_EXPIRING_CHECK",
+        "CA_CERTIFICATE_KEY_QUALITY_CHECK",
+        "CONFLICTING_CLIENT_IDS_CHECK",
+        "DEVICE_CERTIFICATE_EXPIRING_CHECK",
+        "DEVICE_CERTIFICATE_KEY_QUALITY_CHECK",
+        "DEVICE_CERTIFICATE_SHARED_CHECK",
+        "IOT_POLICY_OVERLY_PERMISSIVE_CHECK",
+        "IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK",
+        "IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK",
+        "LOGGING_DISABLED_CHECK",
+        "REVOKED_CA_CERTIFICATE_STILL_ACTIVE_CHECK",
+        "REVOKED_DEVICE_CERTIFICATE_STILL_ACTIVE_CHECK",
+        "UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK"
+      ],
+      "AuroraCapacityUnit": [
+        1,
+        2,
+        4,
+        8,
+        16,
+        32,
+        64,
+        128,
+        192,
+        256,
+        384
+      ],
+      "AuthType": [
+        "NO_AUTH",
+        "IAM_ROLE",
+        "RESOURCE_POLICY"
+      ],
+      "AuthenticationMethod": [
+        "SASL_SCRAM_512_AUTH",
+        "SASL_SCRAM_256_AUTH",
+        "BASIC_AUTH",
+        "CLIENT_CERTIFICATE_TLS_AUTH"
+      ],
+      "AuthenticationMode": [
+        "CONFIG_MAP",
+        "API_AND_CONFIG_MAP",
+        "API"
+      ],
+      "AuthorizationType": [
+        "API_KEY",
+        "BASIC",
+        "OAUTH_CLIENT_CREDENTIALS"
+      ],
+      "AuthorizerPayloadVersion": [
+        "1.0",
+        "2.0"
+      ],
+      "AutoRollbackEvent": [
+        "DEPLOYMENT_FAILURE",
+        "DEPLOYMENT_STOP_ON_ALARM",
+        "DEPLOYMENT_STOP_ON_REQUEST"
+      ],
+      "AutoValidationThreshold": [
+        "MEDIUM",
+        "HIGH",
+        "MANAGED"
+      ],
+      "AvailabilityZoneRebalancing": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "AwsLogDriverMode": [
+        "blocking",
+        "non-blocking"
+      ],
+      "AwsServiceName": [
+        "ec2"
+      ],
+      "BackoffFunction": [
+        "ARITHMETIC",
+        "EXPONENTIAL",
+        "GEOMETRIC",
+        "LINEAR"
+      ],
+      "BackupMode": [
+        0,
+        1
+      ],
+      "BackupVaultEvents": [
+        "BACKUP_JOB_STARTED",
+        "BACKUP_JOB_COMPLETED",
+        "BACKUP_JOB_SUCCESSFUL",
+        "BACKUP_JOB_FAILED",
+        "BACKUP_JOB_EXPIRED",
+        "RESTORE_JOB_STARTED",
+        "RESTORE_JOB_COMPLETED",
+        "RESTORE_JOB_SUCCESSFUL",
+        "RESTORE_JOB_FAILED",
+        "COPY_JOB_STARTED",
+        "COPY_JOB_SUCCESSFUL",
+        "COPY_JOB_FAILED",
+        "RECOVERY_POINT_MODIFIED",
+        "BACKUP_PLAN_CREATED",
+        "BACKUP_PLAN_MODIFIED",
+        "S3_BACKUP_OBJECT_FAILED",
+        "S3_RESTORE_OBJECT_FAILED"
+      ],
+      "BalancingStrategy": [
+        "SPOT_ONLY",
+        "SPOT_PREFERRED",
+        "ON_DEMAND_ONLY"
+      ],
+      "BareMetal": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "BatchStrategy": [
+        "MultiRecord",
+        "SingleRecord"
+      ],
+      "BillingMode": [
+        "PAY_PER_REQUEST",
+        "PROVISIONED"
+      ],
+      "BinPackResource": [
+        "CPU",
+        "MEMORY"
+      ],
+      "BitrateFilterKey": [
+        "audio_bitrate",
+        "video_bitrate"
+      ],
+      "BottlerocketEcsVariant": [
+        "aws-ecs-1",
+        "aws-ecs-1-nvidia",
+        "aws-ecs-2",
+        "aws-ecs-2-nvidia"
+      ],
+      "BrokerType": [
+        "STANDARD",
+        "EXPRESS"
+      ],
+      "BrowserSigning": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "BrowserType": [
+        "CHROME",
+        "FIREFOX"
+      ],
+      "BucketAccessControl": [
+        "Private",
+        "PublicRead",
+        "PublicReadWrite",
+        "AuthenticatedRead",
+        "LogDeliveryWrite",
+        "BucketOwnerRead",
+        "BucketOwnerFullControl",
+        "AwsExecRead"
+      ],
+      "BucketEncryption": [
+        "UNENCRYPTED",
+        "KMS_MANAGED",
+        "S3_MANAGED",
+        "KMS",
+        "DSSE_MANAGED",
+        "DSSE"
+      ],
+      "BucketNamespace": [
+        "global",
+        "account-regional"
+      ],
+      "BucketNotificationDestinationType": [
+        0,
+        1,
+        2
+      ],
+      "BuildComputeType": [
+        "STANDARD_8GB",
+        "LARGE_16GB",
+        "XLARGE_72GB"
+      ],
+      "BuildEnvironmentVariableType": [
+        "PLAINTEXT",
+        "PARAMETER_STORE",
+        "SECRETS_MANAGER"
+      ],
+      "BundlingFileAccess": [
+        "VOLUME_COPY",
+        "BIND_MOUNT"
+      ],
+      "BundlingOutput": [
+        "archived",
+        "not-archived",
+        "auto-discover",
+        "single-file"
+      ],
+      "BurstablePerformance": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "CaaTag": [
+        "issue",
+        "issuewild",
+        "iodef"
+      ],
+      "CacheConfigType": [
+        "AMPLIFY_MANAGED",
+        "AMPLIFY_MANAGED_NO_COOKIES"
+      ],
+      "Capability": [
+        "ALL",
+        "AUDIT_CONTROL",
+        "AUDIT_WRITE",
+        "BLOCK_SUSPEND",
+        "CHOWN",
+        "DAC_OVERRIDE",
+        "DAC_READ_SEARCH",
+        "FOWNER",
+        "FSETID",
+        "IPC_LOCK",
+        "IPC_OWNER",
+        "KILL",
+        "LEASE",
+        "LINUX_IMMUTABLE",
+        "MAC_ADMIN",
+        "MAC_OVERRIDE",
+        "MKNOD",
+        "NET_ADMIN",
+        "NET_BIND_SERVICE",
+        "NET_BROADCAST",
+        "NET_RAW",
+        "SETFCAP",
+        "SETGID",
+        "SETPCAP",
+        "SETUID",
+        "SYS_ADMIN",
+        "SYS_BOOT",
+        "SYS_CHROOT",
+        "SYS_MODULE",
+        "SYS_NICE",
+        "SYS_PACCT",
+        "SYS_PTRACE",
+        "SYS_RAWIO",
+        "SYS_RESOURCE",
+        "SYS_TIME",
+        "SYS_TTY_CONFIG",
+        "SYSLOG",
+        "WAKE_ALARM"
+      ],
+      "CapacityDistributionStrategy": [
+        "balanced-only",
+        "balanced-best-effort"
+      ],
+      "CapacityMode": [
+        "FIXED",
+        "AUTOSCALED"
+      ],
+      "CapacityOptionType": [
+        "ON_DEMAND",
+        "SPOT"
+      ],
+      "CapacityType": [
+        "SPOT",
+        "ON_DEMAND",
+        "CAPACITY_BLOCK"
+      ],
+      "CatalogEncryptionMode": [
+        "DISABLED",
+        "SSE-KMS",
+        "SSE-KMS-WITH-SERVICE-ROLE"
+      ],
+      "CfnCapabilities": [
+        "",
+        "CAPABILITY_IAM",
+        "CAPABILITY_NAMED_IAM",
+        "CAPABILITY_AUTO_EXPAND"
+      ],
+      "CfnDeletionPolicy": [
+        "Delete",
+        "Retain",
+        "RetainExceptOnCreate",
+        "Snapshot"
+      ],
+      "CfnDynamicReferenceService": [
+        "ssm",
+        "ssm-secure",
+        "secretsmanager"
+      ],
+      "CfnParsingContext": [
+        0,
+        1
+      ],
+      "CfnTrafficRoutingType": [
+        "AllAtOnce",
+        "TimeBasedCanary",
+        "TimeBasedLinear"
+      ],
+      "CfnUtilsResourceType": [
+        "Custom::AWSCDKCfnJson",
+        "Custom::AWSCDKCfnJsonStringify"
+      ],
+      "ChannelType": [
+        "STANDARD",
+        "BASIC",
+        "ADVANCED_SD",
+        "ADVANCED_HD"
+      ],
+      "Charset": [
+        "ascii",
+        "utf8"
+      ],
+      "ChatMessageRole": [
+        "user",
+        "assistant"
+      ],
+      "Cleanup": [
+        "nothing",
+        "lambda"
+      ],
+      "ClientAction": [
+        "elasticfilesystem:ClientMount",
+        "elasticfilesystem:ClientWrite",
+        "elasticfilesystem:ClientRootAccess"
+      ],
+      "ClientAffinity": [
+        "NONE",
+        "SOURCE_IP"
+      ],
+      "ClientBrokerEncryption": [
+        "TLS",
+        "TLS_PLAINTEXT",
+        "PLAINTEXT"
+      ],
+      "ClientPasswordAuthType": [
+        "MYSQL_NATIVE_PASSWORD",
+        "POSTGRES_SCRAM_SHA_256",
+        "POSTGRES_MD5",
+        "SQL_SERVER_AUTHENTICATION",
+        "MYSQL_CACHING_SHA2_PASSWORD"
+      ],
+      "ClientRoutingPolicy": [
+        "availability_zone_affinity",
+        "partial_availability_zone_affinity",
+        "any_availability_zone"
+      ],
+      "ClientVpnSessionTimeout": [
+        8,
+        10,
+        12,
+        24
+      ],
+      "CloudFormationCapabilities": [
+        "",
+        "CAPABILITY_IAM",
+        "CAPABILITY_NAMED_IAM",
+        "CAPABILITY_AUTO_EXPAND"
+      ],
+      "CloudFrontAllowedCachedMethods": [
+        "GH",
+        "GHO"
+      ],
+      "CloudFrontAllowedMethods": [
+        "GH",
+        "GHO",
+        "ALL"
+      ],
+      "CloudWatchDimensionSource": [
+        "emailHeader",
+        "linkTag",
+        "messageTag"
+      ],
+      "ClusterLoggingTypes": [
+        "api",
+        "audit",
+        "authenticator",
+        "controllerManager",
+        "scheduler"
+      ],
+      "ClusterMonitoringLevel": [
+        "DEFAULT",
+        "PER_BROKER",
+        "PER_TOPIC_PER_BROKER",
+        "PER_TOPIC_PER_PARTITION"
+      ],
+      "ClusterScailabilityType": [
+        "standard",
+        "limitless"
+      ],
+      "ClusterScalabilityType": [
+        "standard",
+        "limitless"
+      ],
+      "ClusterType": [
+        "single-node",
+        "multi-node"
+      ],
+      "CmafDrmSystem": [
+        "FAIRPLAY",
+        "PLAYREADY",
+        "WIDEVINE",
+        "IRDETO"
+      ],
+      "CmafEncryptionMethod": [
+        "CENC",
+        "CBCS"
+      ],
+      "CodeBuildActionType": [
+        0,
+        1
+      ],
+      "CodeBuildProjectType": [
+        "SYNTH",
+        "ASSETS",
+        "SELF_MUTATE",
+        "STEP"
+      ],
+      "CodeCommitTrigger": [
+        "None",
+        "Poll",
+        "Events"
+      ],
+      "ColumnCountMismatchHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW"
+      ],
+      "ColumnEncoding": [
+        "AUTO",
+        "RAW",
+        "AZ64",
+        "BYTEDICT",
+        "DELTA",
+        "DELTA32K",
+        "LZO",
+        "MOSTLY8",
+        "MOSTLY16",
+        "MOSTLY32",
+        "RUNLENGTH",
+        "TEXT255",
+        "TEXT32K",
+        "ZSTD"
+      ],
+      "ComparisonOperator": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6,
+        7,
+        8,
+        9,
+        10,
+        11,
+        12,
+        13,
+        14,
+        15,
+        16,
+        17,
+        18,
+        19,
+        20,
+        21,
+        22,
+        23,
+        24,
+        25,
+        26,
+        27,
+        28,
+        29,
+        30,
+        31,
+        32,
+        33,
+        34,
+        35,
+        36,
+        37,
+        38
+      ],
+      "Compatibility": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6,
+        7
+      ],
+      "ComponentAction": [
+        "AppendFile",
+        "Assert",
+        "CopyFile",
+        "CopyFolder",
+        "CreateFile",
+        "CreateFolder",
+        "CreateSymlink",
+        "DeleteFile",
+        "DeleteFolder",
+        "ExecuteBash",
+        "ExecuteBinary",
+        "ExecuteDocument",
+        "ExecutePowerShell",
+        "InstallMSI",
+        "ListFiles",
+        "MoveFile",
+        "MoveFolder",
+        "ReadFile",
+        "Reboot",
+        "SetFileEncoding",
+        "SetFileOwner",
+        "SetFolderOwner",
+        "SetFilePermissions",
+        "SetFolderPermissions",
+        "SetRegistry",
+        "S3Download",
+        "S3Upload",
+        "UninstallMSI",
+        "UpdateOS",
+        "WebDownload"
+      ],
+      "ComponentOnFailure": [
+        "Abort",
+        "Continue",
+        "Ignore"
+      ],
+      "ComponentParameterType": [
+        "string"
+      ],
+      "ComponentPhaseName": [
+        "build",
+        "container-host-test",
+        "test",
+        "validate"
+      ],
+      "ComponentSchemaVersion": [
+        "1.0"
+      ],
+      "ComponentType": [
+        "Function",
+        "SingletonFunction",
+        "CustomResourceProvider",
+        "NoOp"
+      ],
+      "CompoundOperator": [
+        0,
+        1
+      ],
+      "CompressionType": [
+        "None",
+        "Gzip"
+      ],
+      "ComputePlatform": [
+        "AWSLambda",
+        "Default"
+      ],
+      "ComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "BUILD_LAMBDA_1GB",
+        "BUILD_LAMBDA_2GB",
+        "BUILD_LAMBDA_4GB",
+        "BUILD_LAMBDA_8GB",
+        "BUILD_LAMBDA_10GB",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "ConditionLogicalOperator": [
+        "EQUALS"
+      ],
+      "ConfigurationSetTlsPolicy": [
+        "REQUIRE",
+        "OPTIONAL"
+      ],
+      "ConfigurationSourceType": [
+        "S3",
+        "SECRETS_MANAGER",
+        "SSM_PARAMETER",
+        "SSM_DOCUMENT",
+        "CODE_PIPELINE"
+      ],
+      "ConfigurationType": [
+        "AWS.Freeform",
+        "AWS.AppConfig.FeatureFlags"
+      ],
+      "ConnectionProtocol": [
+        "TCP",
+        "UDP"
+      ],
+      "ConnectionType": [
+        "INTERNET",
+        "VPC_LINK"
+      ],
+      "ConsumableResourceType": [
+        "REPLENISHABLE",
+        "NON_REPLENISHABLE"
+      ],
+      "ContainerDependencyCondition": [
+        "START",
+        "COMPLETE",
+        "SUCCESS",
+        "HEALTHY"
+      ],
+      "ContainerFormat": [
+        "TS",
+        "FRAGMENTED_MP4"
+      ],
+      "ContainerInsights": [
+        "enabled",
+        "disabled",
+        "enhanced"
+      ],
+      "ContainerProviderTypes": [
+        "EKS"
+      ],
+      "ContainerType": [
+        "TS",
+        "CMAF",
+        "ISM"
+      ],
+      "ContentFilterStrength": [
+        "NONE",
+        "LOW",
+        "MEDIUM",
+        "HIGH"
+      ],
+      "ContentFilterType": [
+        "SEXUAL",
+        "VIOLENCE",
+        "HATE",
+        "INSULTS",
+        "MISCONDUCT",
+        "PROMPT_ATTACK"
+      ],
+      "ContentHandling": [
+        "CONVERT_TO_BINARY",
+        "CONVERT_TO_TEXT"
+      ],
+      "ContentType": [
+        "text/plain",
+        "text/css",
+        "text/html",
+        "application/javascript",
+        "application/json"
+      ],
+      "ContextualGroundingFilterType": [
+        "GROUNDING",
+        "RELEVANCE"
+      ],
+      "Continent": [
+        "AF",
+        "AN",
+        "AS",
+        "EU",
+        "OC",
+        "NA",
+        "SA"
+      ],
+      "ContributorInsightsMode": [
+        "ACCESSED_AND_THROTTLED_KEYS",
+        "THROTTLED_KEYS"
+      ],
+      "ControlPlaneScalingTier": [
+        "standard",
+        "tier-xl",
+        "tier-2xl",
+        "tier-4xl",
+        "tier-8xl"
+      ],
+      "CoreDnsComputeType": [
+        "ec2",
+        "fargate"
+      ],
+      "CorsHttpMethod": [
+        "*",
+        "DELETE",
+        "GET",
+        "HEAD",
+        "OPTIONS",
+        "PATCH",
+        "POST",
+        "PUT"
+      ],
+      "CountType": [
+        "imageCountMoreThan",
+        "sinceImagePushed"
+      ],
+      "CpuArch": [
+        "arm64",
+        "x86_64"
+      ],
+      "CpuCredits": [
+        "standard",
+        "unlimited"
+      ],
+      "CpuManufacturer": [
+        "intel",
+        "amd",
+        "amazon-web-services",
+        "apple"
+      ],
+      "CrawlerState": [
+        "RUNNING",
+        "CANCELLING",
+        "CANCELLED",
+        "SUCCEEDED",
+        "FAILED",
+        "ERROR"
+      ],
+      "CredentialProviderType": [
+        "API_KEY",
+        "OAUTH",
+        "GATEWAY_IAM_ROLE"
+      ],
+      "CrossRegionInferenceProfileRegion": [
+        "global",
+        "eu",
+        "us",
+        "us-gov",
+        "apac",
+        "jp",
+        "au"
+      ],
+      "CsvDelimiter": [
+        "COMMA",
+        "PIPE",
+        "SEMICOLON",
+        "SPACE",
+        "TAB"
+      ],
+      "CsvHeaderLocation": [
+        "FIRST_ROW",
+        "GIVEN"
+      ],
+      "CustomClaimOperator": [
+        "EQUALS",
+        "CONTAINS",
+        "CONTAINS_ANY"
+      ],
+      "CustomClaimValueType": [
+        "STRING",
+        "STRING_ARRAY"
+      ],
+      "CustomControl": [
+        "RETURN_CONTROL"
+      ],
+      "CustomLambdaDeploymentConfigType": [
+        "Canary",
+        "Linear"
+      ],
+      "CustomLayer": [
+        "POI"
+      ],
+      "CustomResourceProviderRuntime": [
+        "nodejs12.x",
+        "deprecated_nodejs12.x",
+        "nodejs14.x",
+        "nodejs16.x",
+        "nodejs18.x",
+        "nodejs20.x",
+        "nodejs22.x",
+        "nodejs24.x"
+      ],
+      "CustomThreatProtectionMode": [
+        "ENFORCED",
+        "AUDIT"
+      ],
+      "CustomizationType": [
+        "FINE_TUNING",
+        "CONTINUED_PRE_TRAINING",
+        "DISTILLATION"
+      ],
+      "DBClusterStorageType": [
+        "aurora",
+        "aurora-iopt1"
+      ],
+      "DashManifestCompactness": [
+        "STANDARD",
+        "NONE"
+      ],
+      "DashPeriodTriggers": [
+        "AVAILS",
+        "DRM_KEY_ROTATION",
+        "SOURCE_CHANGES",
+        "SOURCE_DISRUPTIONS",
+        "NONE"
+      ],
+      "DashUtcTimingMode": [
+        "HTTP_HEAD",
+        "HTTP_ISO",
+        "HTTP_XSDATE",
+        "UTC_DIRECT"
+      ],
+      "DataConverterType": [
+        0,
+        1
+      ],
+      "DataResourceType": [
+        "AWS::Lambda::Function",
+        "AWS::S3::Object"
+      ],
+      "DataSource": [
+        "Esri",
+        "Grab",
+        "Here"
+      ],
+      "DataSourceLevelMetricsBehavior": [
+        "FULL_REQUEST_DATA_SOURCE_METRICS",
+        "PER_DATA_SOURCE_METRICS"
+      ],
+      "DataSourceMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "DataStorageUnit": [
+        "GB"
+      ],
+      "DatabaseInsightsMode": [
+        "standard",
+        "advanced"
+      ],
+      "DateIntervalUnit": [
+        "YEARS",
+        "MONTHS",
+        "WEEKS",
+        "DAYS",
+        "HOURS",
+        "MINUTES",
+        "SECONDS"
+      ],
+      "DateTimeFormat": [
+        "yyyy-MM-dd'T'HH:mm:ss'Z'",
+        "epoch",
+        "custom"
+      ],
+      "DayOfWeek": [
+        "SUN",
+        "MON",
+        "TUE",
+        "WED",
+        "THU",
+        "FRI",
+        "SAT",
+        "UNSET_VALUE"
+      ],
+      "DeduplicationScope": [
+        "messageGroup",
+        "queue"
+      ],
+      "DefaultAuthScheme": [
+        "IAM_AUTH",
+        "NONE"
+      ],
+      "DefaultCapacityType": [
+        0,
+        1,
+        2
+      ],
+      "DefaultInstanceClass": [
+        "default_x86_64",
+        "default_arm64"
+      ],
+      "DefaultInstanceTenancy": [
+        "default",
+        "dedicated",
+        "host"
+      ],
+      "DefaultResult": [
+        "CONTINUE",
+        "ABANDON"
+      ],
+      "DeleteOption": [
+        "SAFE_DELETE",
+        "FORCE_DELETE",
+        "RETAIN"
+      ],
+      "DeletionProtection": [
+        "none",
+        "prevent-force-deletion",
+        "prevent-all-deletion"
+      ],
+      "DeletionProtectionCheck": [
+        "ACCOUNT_DEFAULT",
+        "APPLY",
+        "BYPASS"
+      ],
+      "DelimiterCharacter": [
+        ",",
+        "	",
+        " ",
+        ";",
+        "|"
+      ],
+      "DependenciesFile": [
+        "requirements.txt",
+        "poetry.lock",
+        "Pipfile.lock",
+        "uv.lock",
+        ""
+      ],
+      "DeploymentControllerType": [
+        "ECS",
+        "CODE_DEPLOY",
+        "EXTERNAL"
+      ],
+      "DeploymentLifecycleStage": [
+        "RECONCILE_SERVICE",
+        "PRE_SCALE_UP",
+        "POST_SCALE_UP",
+        "TEST_TRAFFIC_SHIFT",
+        "POST_TEST_TRAFFIC_SHIFT",
+        "PRODUCTION_TRAFFIC_SHIFT",
+        "POST_PRODUCTION_TRAFFIC_SHIFT"
+      ],
+      "DeploymentStrategy": [
+        "ROLLING",
+        "BLUE_GREEN",
+        "LINEAR",
+        "CANARY"
+      ],
+      "DesiredState": [
+        "RUNNING",
+        "STOPPED"
+      ],
+      "DestinationType": [
+        "Failure",
+        "Success"
+      ],
+      "DesyncMitigationMode": [
+        "monitor",
+        "defensive",
+        "strictest"
+      ],
+      "DetailType": [
+        "BASIC",
+        "FULL"
+      ],
+      "DevicePermission": [
+        "read",
+        "write",
+        "mknod"
+      ],
+      "DiscoveryType": [
+        "API",
+        "DNS_AND_API"
+      ],
+      "Distribution": [
+        "ByLogStream",
+        "Random"
+      ],
+      "DnsPolicy": [
+        "Default",
+        "ClusterFirst",
+        "ClusterFirstWithHostNet"
+      ],
+      "DnsRecordType": [
+        "A",
+        "AAAA",
+        "A, AAAA",
+        "SRV",
+        "CNAME"
+      ],
+      "DnsResponseType": [
+        "LOADBALANCER",
+        "ENDPOINTS"
+      ],
+      "DockerCredentialUsage": [
+        "SYNTH",
+        "SELF_UPDATE",
+        "ASSET_PUBLISHING"
+      ],
+      "DockerServerComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "BUILD_LAMBDA_10GB",
+        "BUILD_LAMBDA_1GB",
+        "BUILD_LAMBDA_2GB",
+        "BUILD_LAMBDA_4GB",
+        "BUILD_LAMBDA_8GB",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "DockerVolumeConsistency": [
+        "consistent",
+        "delegated",
+        "cached"
+      ],
+      "DriveCacheType": [
+        "NONE",
+        "READ"
+      ],
+      "DrmSettingsKey": [
+        "exclude_session_keys"
+      ],
+      "DrmSignalling": [
+        "INDIVIDUAL",
+        "REFERENCED"
+      ],
+      "DynamoConsumedCapacity": [
+        "INDEXES",
+        "TOTAL",
+        "NONE"
+      ],
+      "DynamoDBStartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST"
+      ],
+      "DynamoItemCollectionMetrics": [
+        "SIZE",
+        "NONE"
+      ],
+      "DynamoMethod": [
+        "Get",
+        "Put",
+        "Delete",
+        "Update"
+      ],
+      "DynamoReturnValues": [
+        "NONE",
+        "ALL_OLD",
+        "UPDATED_OLD",
+        "ALL_NEW",
+        "UPDATED_NEW"
+      ],
+      "EasyDkimSigningKeyLength": [
+        "RSA_1024_BIT",
+        "RSA_2048_BIT"
+      ],
+      "EbsDeviceVolumeType": [
+        "standard",
+        "io1",
+        "io2",
+        "gp2",
+        "gp3",
+        "st1",
+        "sc1",
+        "gp2",
+        "gp3",
+        "io1",
+        "io2",
+        "st1",
+        "sc1",
+        "standard"
+      ],
+      "EbsPropagatedTagSource": [
+        "SERVICE",
+        "TASK_DEFINITION"
+      ],
+      "Ec2InstanceAction": [
+        "stop",
+        "terminate",
+        "recover",
+        "reboot"
+      ],
+      "Ec2InstanceType": [
+        "EC2",
+        "SSM_MANAGED_NODE"
+      ],
+      "EcsMachineImageType": [
+        "ECS_AL2",
+        "ECS_AL2023",
+        "ECS_AL2_NVIDIA",
+        "ECS_AL2023_NVIDIA"
+      ],
+      "Effect": [
+        "Allow",
+        "Deny"
+      ],
+      "EksMachineImageType": [
+        "EKS_AL2",
+        "EKS_AL2_NVIDIA",
+        "EKS_AL2023",
+        "EKS_AL2023_NVIDIA"
+      ],
+      "EmailEncoding": [
+        "Base64",
+        "UTF-8"
+      ],
+      "EmailSendingEvent": [
+        "send",
+        "reject",
+        "bounce",
+        "complaint",
+        "delivery",
+        "open",
+        "click",
+        "renderingFailure",
+        "deliveryDelay",
+        "subscription"
+      ],
+      "EmptyDirMediumType": [
+        "",
+        "Memory"
+      ],
+      "EncodingProfile": [
+        "CONTRIBUTION_H264_DEFAULT",
+        "DISTRIBUTION_H264_DEFAULT"
+      ],
+      "EncryptionKeyType": [
+        "SECRETS_MANAGER",
+        "AUTOMATIC"
+      ],
+      "EncryptionOption": [
+        "SSE_S3",
+        "SSE_KMS",
+        "CSE_KMS"
+      ],
+      "EndpointAccessMode": [
+        "STRICT",
+        "BASIC"
+      ],
+      "EndpointErrorConfiguration": [
+        "STALE_MANIFEST",
+        "INCOMPLETE_MANIFEST",
+        "MISSING_DRM_KEY",
+        "SLATE_INPUT"
+      ],
+      "EndpointType": [
+        "EDGE",
+        "REGIONAL"
+      ],
+      "EngineLifecycleSupport": [
+        "open-source-rds-extended-support",
+        "open-source-rds-extended-support-disabled"
+      ],
+      "EntitlementStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "EnvironmentFileType": [
+        "s3"
+      ],
+      "EnvironmentType": [
+        "ARM_CONTAINER",
+        "LINUX_CONTAINER",
+        "LINUX_GPU_CONTAINER",
+        "WINDOWS_SERVER_2019_CONTAINER",
+        "WINDOWS_SERVER_2022_CONTAINER",
+        "MAC_ARM",
+        "LINUX_EC2",
+        "ARM_EC2",
+        "WINDOWS_EC2"
+      ],
+      "EventAction": [
+        "PUSH",
+        "PULL_REQUEST_CREATED",
+        "PULL_REQUEST_UPDATED",
+        "PULL_REQUEST_CLOSED",
+        "PULL_REQUEST_MERGED",
+        "PULL_REQUEST_REOPENED",
+        "RELEASED",
+        "PRERELEASED",
+        "WORKFLOW_JOB_QUEUED"
+      ],
+      "EventEvaluation": [
+        "BATCH",
+        "SERIAL"
+      ],
+      "EventSource": [
+        "aws.config"
+      ],
+      "EventSourceMappingLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN"
+      ],
+      "EventType": [
+        "s3:ObjectCreated:*",
+        "s3:ObjectCreated:Put",
+        "s3:ObjectCreated:Post",
+        "s3:ObjectCreated:Copy",
+        "s3:ObjectCreated:CompleteMultipartUpload",
+        "s3:ObjectRemoved:*",
+        "s3:ObjectRemoved:Delete",
+        "s3:ObjectRemoved:DeleteMarkerCreated",
+        "s3:ObjectRestore:Post",
+        "s3:ObjectRestore:Completed",
+        "s3:ObjectRestore:Delete",
+        "s3:ReducedRedundancyLostObject",
+        "s3:Replication:OperationFailedReplication",
+        "s3:Replication:OperationMissedThreshold",
+        "s3:Replication:OperationReplicatedAfterThreshold",
+        "s3:Replication:OperationNotTracked",
+        "s3:LifecycleExpiration:*",
+        "s3:LifecycleExpiration:Delete",
+        "s3:LifecycleExpiration:DeleteMarkerCreated",
+        "s3:LifecycleTransition",
+        "s3:IntelligentTiering",
+        "s3:ObjectTagging:*",
+        "s3:ObjectTagging:Put",
+        "s3:ObjectTagging:Delete",
+        "s3:ObjectAcl:Put",
+        "s3:ObjectRestore:*",
+        "s3:Replication:*"
+      ],
+      "ExecuteCommandLogging": [
+        "NONE",
+        "DEFAULT",
+        "OVERRIDE"
+      ],
+      "ExecutionClass": [
+        "FLEX",
+        "STANDARD"
+      ],
+      "ExecutionMode": [
+        "QUEUED",
+        "SUPERSEDED",
+        "PARALLEL"
+      ],
+      "Failover": [
+        "PRIMARY",
+        "SECONDARY"
+      ],
+      "FailoverStatusCode": [
+        403,
+        404,
+        500,
+        502,
+        503,
+        504
+      ],
+      "FargatePlatformVersion": [
+        "LATEST",
+        "1.4.0",
+        "1.3.0",
+        "1.2.0",
+        "1.1.0",
+        "1.0.0"
+      ],
+      "FeaturePlan": [
+        "LITE",
+        "ESSENTIALS",
+        "PLUS"
+      ],
+      "FieldLogLevel": [
+        "NONE",
+        "ERROR",
+        "INFO",
+        "DEBUG",
+        "ALL"
+      ],
+      "FifoThroughputLimit": [
+        "perQueue",
+        "perMessageGroupId"
+      ],
+      "FifoThroughputScope": [
+        "Topic",
+        "MessageGroup"
+      ],
+      "FileAssetPackaging": [
+        "zip",
+        "file"
+      ],
+      "FileSystemType": [
+        "ext3",
+        "ext4",
+        "xfs",
+        "ntfs"
+      ],
+      "FileSystemTypeVersion": [
+        "2.10",
+        "2.12",
+        "2.15"
+      ],
+      "FilterOrPolicyType": [
+        0,
+        1
+      ],
+      "FirehoseRecordSeparator": [
+        "\n",
+        "	",
+        "\r\n",
+        ","
+      ],
+      "FirelensConfigFileType": [
+        "s3",
+        "file"
+      ],
+      "FirelensLogRouterType": [
+        "fluentbit",
+        "fluentd"
+      ],
+      "FlagType": [
+        0,
+        1,
+        2,
+        3
+      ],
+      "FleetComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "FleetOverflowBehavior": [
+        "QUEUE",
+        "ON_DEMAND"
+      ],
+      "FlowLogDestinationType": [
+        "cloud-watch-logs",
+        "s3",
+        "kinesis-data-firehose"
+      ],
+      "FlowLogFileFormat": [
+        "plain-text",
+        "parquet"
+      ],
+      "FlowLogMaxAggregationInterval": [
+        60,
+        600
+      ],
+      "FlowLogTrafficType": [
+        "ACCEPT",
+        "ALL",
+        "REJECT"
+      ],
+      "FlowOutputProtocol": [
+        "zixi-push",
+        "rtp-fec",
+        "rtp",
+        "zixi-pull",
+        "rist",
+        "srt-listener",
+        "srt-caller",
+        "ndi-speed-hq"
+      ],
+      "FollowMode": [
+        "never",
+        "always",
+        "external",
+        "internal-only"
+      ],
+      "ForwardErrorCorrection": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Frequency": [
+        "DAILY",
+        "WEEKLY",
+        "BIWEEKLY",
+        "MONTHLY"
+      ],
+      "FunctionEventType": [
+        "viewer-request",
+        "viewer-response"
+      ],
+      "FunctionRuntimeFamily": [
+        "APPSYNC_JS"
+      ],
+      "FunctionUrlAuthType": [
+        "AWS_IAM",
+        "NONE"
+      ],
+      "GatewayAuthorizerType": [
+        "CUSTOM_JWT",
+        "AWS_IAM",
+        "NONE"
+      ],
+      "GatewayExceptionLevel": [
+        "DEBUG"
+      ],
+      "GatewayProtocolType": [
+        "MCP"
+      ],
+      "GatewayTargetProtocolType": [
+        "MCP"
+      ],
+      "GelfCompressionType": [
+        "gzip",
+        "zlib",
+        "none"
+      ],
+      "GitHubTrigger": [
+        "None",
+        "Poll",
+        "WebHook"
+      ],
+      "GitPullRequestEvent": [
+        "OPEN",
+        "UPDATED",
+        "CLOSED"
+      ],
+      "GlobalTableSettingsReplicationMode": [
+        "ENABLED"
+      ],
+      "GlueVersion": [
+        "0.9",
+        "1.0",
+        "2.0",
+        "3.0",
+        "4.0",
+        "5.0",
+        "5.1",
+        "6.0"
+      ],
+      "GraphWidgetView": [
+        "timeSeries",
+        "bar",
+        "pie"
+      ],
+      "GrowthType": [
+        "LINEAR",
+        "EXPONENTIAL"
+      ],
+      "GrpcRetryEvent": [
+        "cancelled",
+        "deadline-exceeded",
+        "internal",
+        "resource-exhausted",
+        "unavailable"
+      ],
+      "GuardrailAction": [
+        "BLOCK",
+        "ANONYMIZE",
+        "NONE"
+      ],
+      "HandlerBehavior": [
+        "CODE",
+        "DIRECT"
+      ],
+      "HandlerName": [
+        "user",
+        "table",
+        "user-table-privileges"
+      ],
+      "HeadersFrameOption": [
+        "DENY",
+        "SAMEORIGIN"
+      ],
+      "HeadersReferrerPolicy": [
+        "no-referrer",
+        "no-referrer-when-downgrade",
+        "origin",
+        "origin-when-cross-origin",
+        "same-origin",
+        "strict-origin",
+        "strict-origin-when-cross-origin",
+        "unsafe-url"
+      ],
+      "HealthCheckProtocol": [
+        "TCP",
+        "HTTP",
+        "HTTPS"
+      ],
+      "HealthCheckProtocolType": [
+        "HTTP",
+        "TCP"
+      ],
+      "HealthCheckType": [
+        "HTTP",
+        "HTTPS",
+        "TCP"
+      ],
+      "HostKernel": [
+        "LINUX_KERNEL_4",
+        "LINUX_KERNEL_6",
+        "LINUX_KERNEL_LATEST"
+      ],
+      "HttpAuthorizerType": [
+        "AWS_IAM",
+        "JWT",
+        "REQUEST"
+      ],
+      "HttpBackupMode": [
+        "FailedDataOnly",
+        "AllData"
+      ],
+      "HttpCodeElb": [
+        "HTTPCode_ELB_3XX_Count",
+        "HTTPCode_ELB_4XX_Count",
+        "HTTPCode_ELB_5XX_Count",
+        "HTTPCode_ELB_500_Count",
+        "HTTPCode_ELB_502_Count",
+        "HTTPCode_ELB_503_Count",
+        "HTTPCode_ELB_504_Count"
+      ],
+      "HttpCodeTarget": [
+        "HTTPCode_Target_2XX_Count",
+        "HTTPCode_Target_3XX_Count",
+        "HTTPCode_Target_4XX_Count",
+        "HTTPCode_Target_5XX_Count"
+      ],
+      "HttpCompression": [
+        "GZIP",
+        "NONE"
+      ],
+      "HttpConnectionType": [
+        "VPC_LINK",
+        "INTERNET"
+      ],
+      "HttpIntegrationSubtype": [
+        "EventBridge-PutEvents",
+        "SQS-SendMessage",
+        "SQS-ReceiveMessage",
+        "SQS-DeleteMessage",
+        "SQS-PurgeQueue",
+        "AppConfig-GetConfiguration",
+        "Kinesis-PutRecord",
+        "StepFunctions-StartExecution",
+        "StepFunctions-StartSyncExecution",
+        "StepFunctions-StopExecution"
+      ],
+      "HttpIntegrationType": [
+        "HTTP_PROXY",
+        "AWS_PROXY"
+      ],
+      "HttpLambdaResponseType": [
+        0,
+        1
+      ],
+      "HttpMethod": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD",
+        "OPTIONS"
+      ],
+      "HttpMethods": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD"
+      ],
+      "HttpRetryEvent": [
+        "server-error",
+        "gateway-error",
+        "client-error",
+        "stream-error"
+      ],
+      "HttpRouteAuthorizationType": [
+        "AWS_IAM",
+        "JWT",
+        "CUSTOM",
+        "NONE"
+      ],
+      "HttpRouteMethod": [
+        "GET",
+        "HEAD",
+        "POST",
+        "PUT",
+        "DELETE",
+        "CONNECT",
+        "OPTIONS",
+        "TRACE",
+        "PATCH"
+      ],
+      "HttpRouteProtocol": [
+        "http",
+        "https"
+      ],
+      "HttpTokens": [
+        "optional",
+        "required"
+      ],
+      "HttpVersion": [
+        "http1.1",
+        "http2",
+        "http2and3",
+        "http3"
+      ],
+      "HttpsPolicy": [
+        "REQUIRE",
+        "REQUIRE_OPEN_ONLY",
+        "OPTIONAL"
+      ],
+      "IdentityPoolProviderType": [
+        "Facebook",
+        "Google",
+        "Amazon",
+        "Apple",
+        "Twitter",
+        "OpenId",
+        "Saml",
+        "UserPool",
+        "Custom"
+      ],
+      "IdentityType": [
+        "IRSA",
+        "POD_IDENTITY"
+      ],
+      "IgnoreMode": [
+        "glob",
+        "git",
+        "docker"
+      ],
+      "ImageArchitecture": [
+        "arm64",
+        "x86_64"
+      ],
+      "ImageId": [
+        "amazonlinux-2-x86_64",
+        "amazonlinux-2023-x86_64",
+        "ubuntu-18.04-x86_64",
+        "ubuntu-22.04-x86_64"
+      ],
+      "ImagePipelineStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ImagePullPolicy": [
+        "Always",
+        "IfNotPresent",
+        "Never"
+      ],
+      "ImagePullPrincipalType": [
+        "CODEBUILD",
+        "SERVICE_ROLE"
+      ],
+      "ImageRepositoryType": [
+        "ECR_PUBLIC",
+        "ECR"
+      ],
+      "ImageType": [
+        "AMI",
+        "DOCKER"
+      ],
+      "IncludeDetail": [
+        "FULL",
+        "NONE"
+      ],
+      "IncludeExecutionData": [
+        "ALL"
+      ],
+      "InferenceProfileType": [
+        "SYSTEM_DEFINED",
+        "APPLICATION"
+      ],
+      "IngestEndpoint": [
+        1,
+        2
+      ],
+      "InitElementType": [
+        "PACKAGE",
+        "GROUP",
+        "USER",
+        "SOURCE",
+        "FILE",
+        "COMMAND",
+        "SERVICE"
+      ],
+      "InitPlatform": [
+        "WINDOWS",
+        "LINUX"
+      ],
+      "InputCompressionType": [
+        "GZIP",
+        "ZSTD",
+        "NONE"
+      ],
+      "InputMode": [
+        "Pipe",
+        "File",
+        "FastFile"
+      ],
+      "InputType": [
+        0,
+        1
+      ],
+      "InstanceArchitecture": [
+        "arm64",
+        "x86_64"
+      ],
+      "InstanceClass": [
+        "standard3",
+        "m3",
+        "standard4",
+        "m4",
+        "standard5",
+        "m5",
+        "standard5-nvme-drive",
+        "m5d",
+        "standard5-amd",
+        "m5a",
+        "standard5-amd-nvme-drive",
+        "m5ad",
+        "standard5-high-performance",
+        "m5n",
+        "standard5-nvme-drive-high-performance",
+        "m5dn",
+        "standard5-high-compute",
+        "m5zn",
+        "memory3",
+        "r3",
+        "memory4",
+        "r4",
+        "memory5",
+        "r5",
+        "memory6-amd",
+        "r6a",
+        "memory6-intel",
+        "r6i",
+        "memory6-intel-nvme-drive",
+        "r6id",
+        "memory6-intel-high-performance",
+        "r6in",
+        "memory6-intel-nvme-drive-high-performance",
+        "r6idn",
+        "memory5-high-performance",
+        "r5n",
+        "memory5-nvme-drive",
+        "r5d",
+        "memory5-nvme-drive-high-performance",
+        "r5dn",
+        "memory5-amd",
+        "r5a",
+        "memory5-amd-nvme-drive",
+        "r5ad",
+        "high-memory-3tb-1",
+        "u-3tb1",
+        "high-memory-6tb-1",
+        "u-6tb1",
+        "high-memory-9tb-1",
+        "u-9tb1",
+        "high-memory-12tb-1",
+        "u-12tb1",
+        "high-memory-18tb-1",
+        "u-18tb1",
+        "high-memory-24tb-1",
+        "u-24tb1",
+        "high-memory-6tb-7",
+        "u7i-6tb",
+        "high-memory-8tb-7",
+        "u7i-8tb",
+        "high-memory-12tb-7",
+        "u7i-12tb",
+        "high-memory-high-network-16tb-7",
+        "u7in-16tb",
+        "high-memory-high-network-24tb-7",
+        "u7in-24tb",
+        "high-memory-high-network-32tb-7",
+        "u7in-32tb",
+        "high-memory-high-network-hpe-32tb-7",
+        "u7inh-32tb",
+        "memory5-ebs-optimized",
+        "r5b",
+        "memory6-graviton",
+        "r6g",
+        "memory6-graviton2-nvme-drive",
+        "r6gd",
+        "memory7-graviton",
+        "r7g",
+        "memory7-graviton3-nvme-drive",
+        "r7gd",
+        "memory7-intel-base",
+        "r7i",
+        "memory7-intel",
+        "r7iz",
+        "memory8-intel-base",
+        "r8i",
+        "memory8-intel-flex",
+        "r8i-flex",
+        "memory7-amd",
+        "r7a",
+        "memory8-amd",
+        "r8a",
+        "memory8-graviton",
+        "r8g",
+        "memory8-graviton4-nvme-drive",
+        "r8gd",
+        "memory8-graviton4-high-network-bandwidth",
+        "r8gn",
+        "memory8-graviton4-ebs-optimized",
+        "r8gb",
+        "compute3",
+        "c3",
+        "compute4",
+        "c4",
+        "compute5",
+        "c5",
+        "compute5-nvme-drive",
+        "c5d",
+        "compute5-amd",
+        "c5a",
+        "compute5-amd-nvme-drive",
+        "c5ad",
+        "compute5-high-performance",
+        "c5n",
+        "compute6-intel",
+        "c6i",
+        "compute6-intel-nvme-drive",
+        "c6id",
+        "compute6-intel-high-performance",
+        "c6in",
+        "compute6-amd",
+        "c6a",
+        "compute6-graviton2",
+        "c6g",
+        "compute7-graviton3",
+        "c7g",
+        "compute8-graviton4",
+        "c8g",
+        "compute6-graviton2-nvme-drive",
+        "c6gd",
+        "compute7-graviton3-nvme-drive",
+        "c7gd",
+        "compute8-graviton4-nvme-drive",
+        "c8gd",
+        "compute6-graviton2-high-network-bandwidth",
+        "c6gn",
+        "compute7-graviton3-high-network-bandwidth",
+        "c7gn",
+        "compute8-graviton4-high-network-bandwidth",
+        "c8gn",
+        "compute7-intel",
+        "c7i",
+        "compute7-intel-flex",
+        "c7i-flex",
+        "compute8-intel",
+        "c8i",
+        "compute8-intel-flex",
+        "c8i-flex",
+        "compute7-amd",
+        "c7a",
+        "compute8-amd",
+        "c8a",
+        "storage2",
+        "d2",
+        "storage3",
+        "d3",
+        "storage3-enhanced-network",
+        "d3en",
+        "storage-compute-1",
+        "h1",
+        "training-accelerator1",
+        "trn1",
+        "training-accelerator1-enhanced-network",
+        "trn1n",
+        "training-accelerator2",
+        "trn2",
+        "training-accelerator2-ultraserver",
+        "trn2u",
+        "io3",
+        "i3",
+        "io3-dense-nvme-drive",
+        "i3en",
+        "io4_intel",
+        "i4i",
+        "storage4_graviton",
+        "i4g",
+        "storage4-graviton-network-optimized",
+        "im4gn",
+        "storage4-graviton-network-storage-optimized",
+        "is4gen",
+        "storage7-intel-storage-optimized",
+        "i7ie",
+        "io7_intel",
+        "i7i",
+        "storage8-graviton",
+        "i8g",
+        "storage8-graviton-storage-optimized",
+        "i8ge",
+        "burstable2",
+        "t2",
+        "burstable3",
+        "t3",
+        "burstable3-amd",
+        "t3a",
+        "burstable4-graviton",
+        "t4g",
+        "memory-intensive-1",
+        "x1",
+        "memory-intensive-1-extended",
+        "x1e",
+        "memory-intensive-2-graviton2",
+        "x2g",
+        "memory-intensive-2-graviton2-nvme-drive",
+        "x2gd",
+        "memory_intensive_2_xt_intel",
+        "x2iedn",
+        "memory_intensive_2_intel",
+        "x2idn",
+        "memory_intensive_2_xtz_intel",
+        "x2iezn",
+        "memory-intensive-8-graviton",
+        "x8g",
+        "fpga1",
+        "f1",
+        "fpga2",
+        "f2",
+        "graphics3-small",
+        "g3s",
+        "graphics3",
+        "g3",
+        "graphics4-nvme-drive-high-performance",
+        "g4dn",
+        "graphics4-amd-nvme-drive",
+        "g4ad",
+        "graphics5",
+        "g5",
+        "graphics5-graviton2",
+        "g5g",
+        "graphics6",
+        "g6",
+        "graphics6-efficient",
+        "g6e",
+        "graphics7-efficient",
+        "g7e",
+        "graphics-ram-6",
+        "gr6",
+        "parallel2",
+        "p2",
+        "parallel3",
+        "p3",
+        "parallel3-nvme-drive-high-performance",
+        "p3dn",
+        "parallel4-nvme-drive-extended",
+        "p4de",
+        "parallel4",
+        "p4d",
+        "parallel5",
+        "p5",
+        "parallel5-extended",
+        "p5e",
+        "parallel5-extended-network",
+        "p5en",
+        "arm1",
+        "a1",
+        "standard6-graviton",
+        "m6g",
+        "standard6-intel",
+        "m6i",
+        "standard6-intel-nvme-drive",
+        "m6id",
+        "standard6-intel-high-performance",
+        "m6in",
+        "standard6-intel-nvme-drive-high-performance",
+        "m6idn",
+        "standard6-amd",
+        "m6a",
+        "standard6-graviton2-nvme-drive",
+        "m6gd",
+        "standard7-graviton",
+        "m7g",
+        "standard8-graviton",
+        "m8g",
+        "standard7-graviton3-nvme-drive",
+        "m7gd",
+        "standard8-graviton4-nvme-drive",
+        "m8gd",
+        "standard8-intel",
+        "m8i",
+        "standard8-intel-flex",
+        "m8i-flex",
+        "standard7-intel",
+        "m7i",
+        "standard7-intel-flex",
+        "m7i-flex",
+        "standard7-amd",
+        "m7a",
+        "standard8-amd",
+        "m8a",
+        "standard9-graviton",
+        "m9g",
+        "high-compute-memory1",
+        "z1d",
+        "inference1",
+        "inf1",
+        "inference2",
+        "inf2",
+        "macintosh1-intel",
+        "mac1",
+        "macintosh2-m1",
+        "mac2",
+        "macintosh2-m2",
+        "mac2-m2",
+        "macintosh2-m2-pro",
+        "mac2-m2pro",
+        "macintosh2-m1-ultra",
+        "mac2-m1ultra",
+        "video-transcoding1",
+        "vt1",
+        "high-performance-computing6-amd",
+        "hpc6a",
+        "high-performance-computing6-intel-nvme-drive",
+        "hpc6id",
+        "high-performance-computing7-amd",
+        "hpc7a",
+        "high-performance-computing7-graviton",
+        "hpc7g",
+        "deep-learning1",
+        "dl1",
+        "deep-learning2-qualcomm",
+        "dl2q"
+      ],
+      "InstanceGeneration": [
+        "current",
+        "previous"
+      ],
+      "InstanceInitiatedShutdownBehavior": [
+        "stop",
+        "terminate"
+      ],
+      "InstanceMonitoring": [
+        "BASIC",
+        "DETAILED"
+      ],
+      "InstanceRefreshStrategy": [
+        "Rolling",
+        "ReplaceRootVolume"
+      ],
+      "InstanceSize": [
+        "nano",
+        "micro",
+        "small",
+        "medium",
+        "large",
+        "xlarge",
+        "2xlarge",
+        "3xlarge",
+        "4xlarge",
+        "6xlarge",
+        "8xlarge",
+        "9xlarge",
+        "10xlarge",
+        "12xlarge",
+        "16xlarge",
+        "18xlarge",
+        "24xlarge",
+        "32xlarge",
+        "48xlarge",
+        "56xlarge",
+        "96xlarge",
+        "112xlarge",
+        "224xlarge",
+        "480xlarge",
+        "metal",
+        "metal-16xl",
+        "metal-24xl",
+        "metal-32xl",
+        "metal-48xl"
+      ],
+      "InstanceType": [
+        "PROVISIONED",
+        "SERVERLESS_V2"
+      ],
+      "InstanceUpdateBehaviour": [
+        "BULK",
+        "ROLLING"
+      ],
+      "InsufficientDataHealthStatusEnum": [
+        "Healthy",
+        "Unhealthy",
+        "LastKnownStatus"
+      ],
+      "IntegrationPattern": [
+        "REQUEST_RESPONSE",
+        "RUN_JOB",
+        "WAIT_FOR_TASK_TOKEN"
+      ],
+      "IntegrationType": [
+        "AWS",
+        "AWS_PROXY",
+        "HTTP",
+        "HTTP_PROXY",
+        "MOCK"
+      ],
+      "IntendedUse": [
+        "SingleUse",
+        "Storage"
+      ],
+      "InterceptionPoint": [
+        "REQUEST",
+        "RESPONSE"
+      ],
+      "IntrospectionConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "InvalidCharHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW",
+        "REPLACE"
+      ],
+      "InventoryFormat": [
+        "CSV",
+        "Parquet",
+        "ORC"
+      ],
+      "InventoryFrequency": [
+        "Daily",
+        "Weekly"
+      ],
+      "InventoryObjectVersion": [
+        "All",
+        "Current"
+      ],
+      "InvocationHttpResponseCode": [
+        "Invocation4XXErrors",
+        "Invocation5XXErrors"
+      ],
+      "InvocationType": [
+        "RequestResponse",
+        "Event",
+        "DryRun"
+      ],
+      "InvokeMode": [
+        "BUFFERED",
+        "RESPONSE_STREAM"
+      ],
+      "IpAddressType": [
+        "ipv4",
+        "dualstack",
+        "dualstack-without-public-ipv4"
+      ],
+      "IpFamily": [
+        "ipv4",
+        "ipv6"
+      ],
+      "IpPreference": [
+        "IPv4_ONLY",
+        "IPv4_PREFERRED",
+        "IPv6_ONLY",
+        "IPv6_PREFERRED"
+      ],
+      "IpProtocol": [
+        "Ipv4_Only",
+        "Dual_Stack"
+      ],
+      "IpamPoolPublicIpSource": [
+        "byoip",
+        "amazon"
+      ],
+      "IpamScopeType": [
+        "default",
+        "custom"
+      ],
+      "IpcMode": [
+        "none",
+        "host",
+        "task"
+      ],
+      "IsmDrmSystem": [
+        "PLAYREADY"
+      ],
+      "JenkinsActionType": [
+        0,
+        1
+      ],
+      "JitterType": [
+        "FULL",
+        "NONE"
+      ],
+      "JobLanguage": [
+        "scala",
+        "python"
+      ],
+      "JobState": [
+        "SUCCEEDED",
+        "FAILED",
+        "TIMEOUT",
+        "STARTING",
+        "RUNNING",
+        "STOPPING",
+        "STOPPED"
+      ],
+      "JobStateTimeLimitActionsAction": [
+        "CANCEL",
+        "TERMINATE"
+      ],
+      "JobStateTimeLimitActionsReason": [
+        "CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY",
+        "MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE",
+        "MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT"
+      ],
+      "JobStateTimeLimitActionsState": [
+        "RUNNABLE"
+      ],
+      "JobType": [
+        "glueetl",
+        "gluestreaming",
+        "pythonshell"
+      ],
+      "JsonMutatorType": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5
+      ],
+      "JsonSchemaType": [
+        "null",
+        "boolean",
+        "object",
+        "array",
+        "number",
+        "integer",
+        "string"
+      ],
+      "JsonSchemaVersion": [
+        "http://json-schema.org/draft-04/schema#",
+        "http://json-schema.org/draft-07/schema#"
+      ],
+      "KeyPairFormat": [
+        "ppk",
+        "pem"
+      ],
+      "KeyPairType": [
+        "rsa",
+        "ed25519"
+      ],
+      "KeySigningKeyStatus": [
+        "ACTIVE",
+        "INACTIVE"
+      ],
+      "KeySpec": [
+        "SYMMETRIC_DEFAULT",
+        "RSA_2048",
+        "RSA_3072",
+        "RSA_4096",
+        "ECC_NIST_P256",
+        "ECC_NIST_P384",
+        "ECC_NIST_P521",
+        "ECC_SECG_P256K1",
+        "HMAC_224",
+        "HMAC_256",
+        "HMAC_384",
+        "HMAC_512",
+        "SM2",
+        "ML_DSA_44",
+        "ML_DSA_65",
+        "ML_DSA_87",
+        "ECC_NIST_EDWARDS25519"
+      ],
+      "KeyUsage": [
+        "ENCRYPT_DECRYPT",
+        "SIGN_VERIFY",
+        "GENERATE_VERIFY_MAC",
+        "KEY_AGREEMENT"
+      ],
+      "KeyValueDelimiter": [
+        "=",
+        ":"
+      ],
+      "KeyValuePairDelimiter": [
+        "&",
+        ";",
+        " ",
+        "\n"
+      ],
+      "KinesisStartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST",
+        "AT_TIMESTAMP"
+      ],
+      "LambdaEdgeEventType": [
+        "origin-request",
+        "origin-response",
+        "viewer-request",
+        "viewer-response"
+      ],
+      "LambdaFunctionInvocationType": [
+        "FIRE_AND_FORGET",
+        "REQUEST_RESPONSE"
+      ],
+      "LambdaInvocationType": [
+        "RequestResponse",
+        "Event",
+        "DryRun"
+      ],
+      "LambdaInvokeType": [
+        "EVENT",
+        "REQUEST_RESPONSE"
+      ],
+      "LambdaVersion": [
+        "V1_0",
+        "V2_0",
+        "V3_0"
+      ],
+      "LatencyMode": [
+        "LOW",
+        "NORMAL"
+      ],
+      "LaunchTemplateHttpTokens": [
+        "optional",
+        "required"
+      ],
+      "LaunchType": [
+        "EC2",
+        "FARGATE",
+        "EXTERNAL"
+      ],
+      "LegendPosition": [
+        "bottom",
+        "right",
+        "hidden"
+      ],
+      "Level": [
+        "INFO",
+        "ERROR",
+        "TRACE",
+        "OFF"
+      ],
+      "LibrarySet": [
+        "analytics",
+        "none"
+      ],
+      "LicenseModel": [
+        "license-included",
+        "bring-your-own-license",
+        "general-public-license"
+      ],
+      "LifecycleLabel": [
+        "OnDemand",
+        "Ec2Spot"
+      ],
+      "LifecyclePolicy": [
+        "AFTER_1_DAY",
+        "AFTER_7_DAYS",
+        "AFTER_14_DAYS",
+        "AFTER_30_DAYS",
+        "AFTER_60_DAYS",
+        "AFTER_90_DAYS",
+        "AFTER_180_DAYS",
+        "AFTER_270_DAYS",
+        "AFTER_365_DAYS"
+      ],
+      "LifecyclePolicyActionType": [
+        "DELETE",
+        "DEPRECATE",
+        "DISABLE"
+      ],
+      "LifecyclePolicyResourceType": [
+        "AMI_IMAGE",
+        "CONTAINER_IMAGE"
+      ],
+      "LifecyclePolicyStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "LifecycleTransition": [
+        "autoscaling:EC2_INSTANCE_LAUNCHING",
+        "autoscaling:EC2_INSTANCE_TERMINATING"
+      ],
+      "LinkedChannelType": [
+        "PRIMARY_CHANNEL",
+        "FOLLOWING_CHANNEL"
+      ],
+      "LoadBalancerGeneration": [
+        0,
+        1
+      ],
+      "LoadBalancerIpAddressType": [
+        "ipv4",
+        "dualstack",
+        "dualstack-without-public-ipv4"
+      ],
+      "LoadBalancingProtocol": [
+        "tcp",
+        "ssl",
+        "http",
+        "https"
+      ],
+      "LocalCacheMode": [
+        "LOCAL_SOURCE_CACHE",
+        "LOCAL_DOCKER_LAYER_CACHE",
+        "LOCAL_CUSTOM_CACHE"
+      ],
+      "LocalStorage": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "LocalStorageType": [
+        "hdd",
+        "ssd"
+      ],
+      "LockFile": [
+        "package-lock.json",
+        "yarn.lock",
+        "bun.lockb",
+        "bun.lock",
+        "pnpm-lock.yaml"
+      ],
+      "LogDestinationType": [
+        "s3",
+        "cloudwatch"
+      ],
+      "LogExport": [
+        "connectionlog",
+        "useractivitylog",
+        "userlog"
+      ],
+      "LogFormat": [
+        "Text",
+        "JSON"
+      ],
+      "LogGroupClass": [
+        "STANDARD",
+        "INFREQUENT_ACCESS",
+        "DELIVERY"
+      ],
+      "LogLevel": [
+        "OFF",
+        "ALL",
+        "ERROR",
+        "FATAL"
+      ],
+      "LogQueryLanguage": [
+        "Logs",
+        "SQL",
+        "PPL"
+      ],
+      "LogQueryVisualizationType": [
+        "table",
+        "line",
+        "stackedarea",
+        "bar",
+        "pie"
+      ],
+      "LogType": [
+        "None",
+        "Tail"
+      ],
+      "LoggingFormat": [
+        "Text",
+        "JSON"
+      ],
+      "LoggingLevel": [
+        "ERROR",
+        "INFO",
+        "NONE"
+      ],
+      "LoggingProtocol": [
+        "http/s",
+        "sqs",
+        "lambda",
+        "firehose",
+        "application"
+      ],
+      "LustreAutoImportPolicy": [
+        "NONE",
+        "NEW",
+        "NEW_CHANGED",
+        "NEW_CHANGED_DELETED"
+      ],
+      "LustreDataCompressionType": [
+        "NONE",
+        "LZ4"
+      ],
+      "LustreDeploymentType": [
+        "SCRATCH_1",
+        "SCRATCH_2",
+        "PERSISTENT_1",
+        "PERSISTENT_2"
+      ],
+      "MCPProtocolVersion": [
+        "2025-06-18",
+        "2025-03-26"
+      ],
+      "MachineImageType": [
+        0,
+        1
+      ],
+      "MachineType": [
+        "GENERAL",
+        "NVME"
+      ],
+      "MailFromBehaviorOnMxFailure": [
+        "USE_DEFAULT_VALUE",
+        "REJECT_MESSAGE"
+      ],
+      "MaintenanceDay": [
+        "MONDAY",
+        "TUESDAY",
+        "WEDNESDAY",
+        "THURSDAY",
+        "FRIDAY",
+        "SATURDAY",
+        "SUNDAY"
+      ],
+      "MaintenanceTrackName": [
+        "current",
+        "trailing"
+      ],
+      "ManagedLoginVersion": [
+        1,
+        2
+      ],
+      "ManagedWordFilterType": [
+        "PROFANITY"
+      ],
+      "ManagementEventSources": [
+        "kms.amazonaws.com",
+        "rdsdata.amazonaws.com"
+      ],
+      "MaxCapacity": [
+        0.0625,
+        1
+      ],
+      "MaximumExecutionFrequency": [
+        "One_Hour",
+        "Three_Hours",
+        "Six_Hours",
+        "Twelve_Hours",
+        "TwentyFour_Hours"
+      ],
+      "MaximumResolution": [
+        "FULL_HD",
+        "HD",
+        "SD"
+      ],
+      "McpGatewaySearchType": [
+        "SEMANTIC"
+      ],
+      "McpTargetType": [
+        "OPENAPI_SCHEMA",
+        "SMITHY_MODEL",
+        "LAMBDA",
+        "MCP_SERVER",
+        "API_GATEWAY"
+      ],
+      "MediaLivePipeline": [
+        "PIPELINE_0",
+        "PIPELINE_1"
+      ],
+      "MediaStreamType": [
+        "video",
+        "audio",
+        "ancillary-data"
+      ],
+      "MemoryStrategyType": [
+        "SUMMARIZATION",
+        "SEMANTIC",
+        "USER_PREFERENCE",
+        "EPISODIC",
+        "CUSTOM"
+      ],
+      "MemoryType": [
+        "SESSION_SUMMARY"
+      ],
+      "MergeType": [
+        "MANUAL_MERGE",
+        "AUTO_MERGE"
+      ],
+      "MeshFilterType": [
+        "ALLOW_ALL",
+        "DROP_ALL"
+      ],
+      "MessageAttributeDataType": [
+        "String",
+        "String.Array",
+        "Number",
+        "Binary"
+      ],
+      "MessageLanguage": [
+        "en",
+        "jp",
+        "zh"
+      ],
+      "MessageType": [
+        "ConfigurationItemChangeNotification",
+        "OversizedConfigurationItemChangeNotification",
+        "ScheduledNotification",
+        "ConfigurationSnapshotDeliveryCompleted"
+      ],
+      "MetadataType": [
+        "aws:cdk:analytics:construct",
+        "aws:cdk:analytics:method",
+        "aws:cdk:analytics:featureflag",
+        "aws:cdk:analytics:mixin"
+      ],
+      "MethodLoggingLevel": [
+        "OFF",
+        "ERROR",
+        "INFO"
+      ],
+      "MetricAggregationType": [
+        "Average",
+        "Minimum",
+        "Maximum"
+      ],
+      "MetricType": [
+        "EventCount",
+        "ErrorCount",
+        "KafkaMetrics"
+      ],
+      "MetricsLevel": [
+        "APPLICATION",
+        "TASK",
+        "OPERATOR",
+        "PARALLELISM"
+      ],
+      "Mfa": [
+        "OFF",
+        "OPTIONAL",
+        "ON"
+      ],
+      "ModalityType": [
+        "TEXT",
+        "IMAGE"
+      ],
+      "Mode": [
+        "SingleModel",
+        "MultiModel"
+      ],
+      "MonitorType": [
+        0,
+        1
+      ],
+      "Monitoring": [
+        0,
+        1
+      ],
+      "MqttQualityOfService": [
+        0,
+        1
+      ],
+      "MssManifestLayout": [
+        "FULL",
+        "COMPACT"
+      ],
+      "MultiRegionConsistency": [
+        "EVENTUAL",
+        "STRONG"
+      ],
+      "MutualAuthenticationMode": [
+        "off",
+        "passthrough",
+        "verify"
+      ],
+      "NamespaceType": [
+        "HTTP",
+        "DNS_PRIVATE",
+        "DNS_PUBLIC"
+      ],
+      "NatConnectivityType": [
+        "public",
+        "private"
+      ],
+      "NatTrafficDirection": [
+        "OUTBOUND_ONLY",
+        "INBOUND_AND_OUTBOUND",
+        "NONE"
+      ],
+      "NetworkLoadBalancedServiceRecordType": [
+        0,
+        1,
+        2
+      ],
+      "NetworkMode": [
+        "none",
+        "bridge",
+        "awsvpc",
+        "host",
+        "nat"
+      ],
+      "NetworkType": [
+        "IPV4",
+        "DUAL",
+        "IPV6"
+      ],
+      "NodeType": [
+        "coordinator"
+      ],
+      "NodegroupAmiType": [
+        "AL2_x86_64",
+        "AL2_x86_64_GPU",
+        "AL2_ARM_64",
+        "BOTTLEROCKET_ARM_64",
+        "BOTTLEROCKET_x86_64",
+        "BOTTLEROCKET_ARM_64_NVIDIA",
+        "BOTTLEROCKET_x86_64_NVIDIA",
+        "BOTTLEROCKET_ARM_64_FIPS",
+        "BOTTLEROCKET_x86_64_FIPS",
+        "WINDOWS_CORE_2019_x86_64",
+        "WINDOWS_CORE_2022_x86_64",
+        "WINDOWS_FULL_2019_x86_64",
+        "WINDOWS_FULL_2022_x86_64",
+        "AL2023_x86_64_STANDARD",
+        "AL2023_x86_64_NEURON",
+        "AL2023_x86_64_NVIDIA",
+        "AL2023_ARM_64_NVIDIA",
+        "AL2023_ARM_64_STANDARD"
+      ],
+      "NullOrder": [
+        "nulls-first",
+        "nulls-last"
+      ],
+      "NumericFilterKey": [
+        "audio_channels",
+        "audio_sample_rate",
+        "trickplay_height",
+        "video_framerate",
+        "video_height"
+      ],
+      "NumericOverflowHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW"
+      ],
+      "OAuth2CredentialProviderVendor": [
+        "GoogleOauth2",
+        "GithubOauth2",
+        "SlackOauth2",
+        "SalesforceOauth2",
+        "MicrosoftOauth2",
+        "CustomOauth2",
+        "AtlassianOauth2",
+        "LinkedinOauth2",
+        "XOauth2",
+        "OktaOauth2",
+        "OneLoginOauth2",
+        "PingOneOauth2",
+        "FacebookOauth2",
+        "YandexOauth2",
+        "RedditOauth2",
+        "ZoomOauth2",
+        "TwitchOauth2",
+        "SpotifyOauth2",
+        "DropboxOauth2",
+        "NotionOauth2",
+        "HubspotOauth2",
+        "CyberArkOauth2",
+        "FusionAuthOauth2",
+        "Auth0Oauth2",
+        "CognitoOauth2"
+      ],
+      "OCSFSourceType": [
+        "CloudTrail",
+        "Route53Resolver",
+        "VPCFlow",
+        "EKSAudit",
+        "AWSWAF"
+      ],
+      "OCSFVersion": [
+        "V1.1"
+      ],
+      "ObjectLockMode": [
+        "GOVERNANCE",
+        "COMPLIANCE"
+      ],
+      "ObjectOwnership": [
+        "BucketOwnerEnforced",
+        "BucketOwnerPreferred",
+        "ObjectWriter"
+      ],
+      "OidcAttributeRequestMethod": [
+        "GET",
+        "POST"
+      ],
+      "OnDemandAllocationStrategy": [
+        "prioritized",
+        "lowest-price"
+      ],
+      "OnPartialBatchItemFailure": [
+        "AUTOMATIC_BISECT"
+      ],
+      "OpenTableFormat": [
+        "ICEBERG"
+      ],
+      "OperatingSystem": [
+        "AMAZON_LINUX",
+        "AMAZON_LINUX_2",
+        "AMAZON_LINUX_2023",
+        "WINDOWS_2012",
+        "WINDOWS_2016"
+      ],
+      "OperatingSystemType": [
+        0,
+        1,
+        2
+      ],
+      "Operation": [
+        "GetItem",
+        "BatchGetItem",
+        "Scan",
+        "Query",
+        "GetRecords",
+        "PutItem",
+        "DeleteItem",
+        "UpdateItem",
+        "BatchWriteItem",
+        "TransactWriteItems",
+        "TransactGetItems",
+        "ExecuteTransaction",
+        "BatchExecuteStatement",
+        "ExecuteStatement"
+      ],
+      "OperationLevelMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Operator": [
+        "AND",
+        "OR",
+        "NOT"
+      ],
+      "OpsItemCategory": [
+        "Availability",
+        "Cost",
+        "Performance",
+        "Recovery",
+        "Security"
+      ],
+      "OpsItemSeverity": [
+        "1",
+        "2",
+        "3",
+        "4"
+      ],
+      "OrcColumnMappingType": [
+        "name",
+        "position"
+      ],
+      "OrcFormatVersion": [
+        "V0_11",
+        "V0_12"
+      ],
+      "OrchestrationType": [
+        "DEFAULT",
+        "CUSTOM_ORCHESTRATION"
+      ],
+      "OriginAccessControlOriginType": [
+        "s3",
+        "lambda",
+        "mediastore",
+        "mediapackagev2"
+      ],
+      "OriginIpAddressType": [
+        "ipv4",
+        "ipv6",
+        "dualstack"
+      ],
+      "OriginProtocolPolicy": [
+        "http-only",
+        "match-viewer",
+        "https-only"
+      ],
+      "OriginSelectionCriteria": [
+        "default",
+        "media-quality-based"
+      ],
+      "OriginSslPolicy": [
+        "SSLv3",
+        "TLSv1",
+        "TLSv1.1",
+        "TLSv1.2"
+      ],
+      "OutOfInfrequentAccessPolicy": [
+        "AFTER_1_ACCESS"
+      ],
+      "OutputFormat": [
+        "cjs",
+        "esm"
+      ],
+      "OutputLockingMode": [
+        "PIPELINE_LOCKING",
+        "EPOCH_LOCKING"
+      ],
+      "OutputType": [
+        "JSON",
+        "JSONL"
+      ],
+      "ParameterDataType": [
+        "text",
+        "aws:ec2:image"
+      ],
+      "ParameterTier": [
+        "Advanced",
+        "Intelligent-Tiering",
+        "Standard"
+      ],
+      "ParameterType": [
+        "string",
+        "number",
+        "integer",
+        "boolean",
+        "array",
+        "object"
+      ],
+      "ParameterValueType": [
+        "String",
+        "AWS::EC2::AvailabilityZone::Name",
+        "AWS::EC2::Image::Id",
+        "AWS::EC2::Instance::Id",
+        "AWS::EC2::KeyPair::KeyName",
+        "AWS::EC2::SecurityGroup::GroupName",
+        "AWS::EC2::SecurityGroup::Id",
+        "AWS::EC2::Subnet::Id",
+        "AWS::EC2::Volume::Id",
+        "AWS::EC2::VPC::Id",
+        "AWS::Route53::HostedZone::Id"
+      ],
+      "ParamsAndSecretsLogLevel": [
+        "debug",
+        "info",
+        "warn",
+        "error",
+        "none"
+      ],
+      "ParamsAndSecretsVersions": [
+        "1.0.103"
+      ],
+      "ParquetWriterVersion": [
+        "V1",
+        "V2"
+      ],
+      "ParserProcessorType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "Partition": [
+        "aws",
+        "aws-cn",
+        "aws-us-gov",
+        "aws-iso",
+        "aws-iso-b",
+        "aws-iso-f",
+        "aws-iso-e",
+        "aws-eusc"
+      ],
+      "PartitionDateSource": [
+        "EventTime",
+        "DeliveryTime"
+      ],
+      "PartitionProjectionType": [
+        "integer",
+        "date",
+        "enum",
+        "injected"
+      ],
+      "PasskeyUserVerification": [
+        "preferred",
+        "required"
+      ],
+      "PassthroughBehavior": [
+        "WHEN_NO_MATCH",
+        "NEVER",
+        "WHEN_NO_TEMPLATES"
+      ],
+      "PatchType": [
+        "json",
+        "merge",
+        "strategic"
+      ],
+      "PerformanceInsightRetention": [
+        7,
+        31,
+        62,
+        93,
+        124,
+        155,
+        186,
+        217,
+        248,
+        279,
+        310,
+        341,
+        372,
+        403,
+        434,
+        465,
+        496,
+        527,
+        558,
+        589,
+        620,
+        651,
+        682,
+        713,
+        731
+      ],
+      "PerformanceMode": [
+        "generalPurpose",
+        "maxIO"
+      ],
+      "Period": [
+        "DAY",
+        "WEEK",
+        "MONTH"
+      ],
+      "PeriodOverride": [
+        "auto",
+        "inherit"
+      ],
+      "PidMode": [
+        "host",
+        "task"
+      ],
+      "PipeVariable": [
+        "",
+        "",
+        "",
+        "",
+        "",
+        "",
+        "",
+        ""
+      ],
+      "PipelineNotificationEvents": [
+        "codepipeline-pipeline-pipeline-execution-failed",
+        "codepipeline-pipeline-pipeline-execution-canceled",
+        "codepipeline-pipeline-pipeline-execution-started",
+        "codepipeline-pipeline-pipeline-execution-resumed",
+        "codepipeline-pipeline-pipeline-execution-succeeded",
+        "codepipeline-pipeline-pipeline-execution-superseded",
+        "codepipeline-pipeline-stage-execution-started",
+        "codepipeline-pipeline-stage-execution-succeeded",
+        "codepipeline-pipeline-stage-execution-resumed",
+        "codepipeline-pipeline-stage-execution-canceled",
+        "codepipeline-pipeline-stage-execution-failed",
+        "codepipeline-pipeline-action-execution-succeeded",
+        "codepipeline-pipeline-action-execution-failed",
+        "codepipeline-pipeline-action-execution-canceled",
+        "codepipeline-pipeline-action-execution-started",
+        "codepipeline-pipeline-manual-approval-failed",
+        "codepipeline-pipeline-manual-approval-needed",
+        "codepipeline-pipeline-manual-approval-succeeded"
+      ],
+      "PipelineType": [
+        "V1",
+        "V2"
+      ],
+      "PlacementGroupSpreadLevel": [
+        "host",
+        "rack"
+      ],
+      "PlacementGroupStrategy": [
+        "cluster",
+        "partition",
+        "spread"
+      ],
+      "Platform": [
+        "x86-64",
+        "ARM64"
+      ],
+      "Policy": [
+        "ALLOW",
+        "REQUIRE"
+      ],
+      "PolicyEffect": [
+        "permit",
+        "forbid"
+      ],
+      "PolicyValidationReportStatus": [
+        "success",
+        "failure"
+      ],
+      "PolicyValidationReportStatusBeta1": [
+        "success",
+        "failure"
+      ],
+      "PoliticalView": [
+        "IND"
+      ],
+      "PoolState": [
+        "Hibernated",
+        "Running",
+        "Stopped"
+      ],
+      "PositionFiltering": [
+        "TimeBased",
+        "DistanceBased",
+        "AccuracyBased"
+      ],
+      "PredefinedMetric": [
+        "ASGAverageCPUUtilization",
+        "ASGAverageNetworkIn",
+        "ASGAverageNetworkOut",
+        "ALBRequestCountPerTarget"
+      ],
+      "PredicateLogical": [
+        "AND",
+        "ANY"
+      ],
+      "Preset": [
+        "CONSTRAINED_BANDWIDTH_DELIVERY",
+        "HIGHER_BANDWIDTH_DELIVERY"
+      ],
+      "PresetSpeke20Audio": [
+        "PRESET_AUDIO_1",
+        "PRESET_AUDIO_2",
+        "PRESET_AUDIO_3",
+        "SHARED",
+        "UNENCRYPTED"
+      ],
+      "PresetSpeke20Video": [
+        "PRESET_VIDEO_1",
+        "PRESET_VIDEO_2",
+        "PRESET_VIDEO_3",
+        "PRESET_VIDEO_4",
+        "PRESET_VIDEO_5",
+        "PRESET_VIDEO_6",
+        "PRESET_VIDEO_7",
+        "PRESET_VIDEO_8",
+        "SHARED",
+        "UNENCRYPTED"
+      ],
+      "PriceClass": [
+        "PriceClass_100",
+        "PriceClass_200",
+        "PriceClass_All"
+      ],
+      "PrimarySource": [
+        0,
+        1
+      ],
+      "PrincipalScope": [
+        "all",
+        "specific"
+      ],
+      "PriorityType": [
+        "LATENCY",
+        "COST",
+        "DESTINATION",
+        "LOCATION"
+      ],
+      "ProcessorMode": [
+        "INLINE",
+        "DISTRIBUTED"
+      ],
+      "ProcessorType": [
+        "STANDARD",
+        "EXPRESS"
+      ],
+      "ProjectNotificationEvents": [
+        "codebuild-project-build-state-failed",
+        "codebuild-project-build-state-succeeded",
+        "codebuild-project-build-state-in-progress",
+        "codebuild-project-build-state-stopped",
+        "codebuild-project-build-phase-failure",
+        "codebuild-project-build-phase-success"
+      ],
+      "ProjectVisibility": [
+        "PUBLIC_READ",
+        "PRIVATE"
+      ],
+      "ProjectionType": [
+        "KEYS_ONLY",
+        "INCLUDE",
+        "ALL"
+      ],
+      "PromptTemplateType": [
+        "TEXT",
+        "CHAT"
+      ],
+      "PropagateManagedInstancesTags": [
+        "CAPACITY_PROVIDER",
+        "NONE"
+      ],
+      "PropagatedTagSource": [
+        "SERVICE",
+        "TASK_DEFINITION",
+        "NONE"
+      ],
+      "Protocol": [
+        "HTTP",
+        "HTTPS",
+        "TCP",
+        "TLS",
+        "UDP",
+        "TCP_UDP"
+      ],
+      "ProtocolConfigType": [
+        "failover",
+        "merge"
+      ],
+      "ProtocolType": [
+        "MCP",
+        "HTTP",
+        "A2A",
+        "AGUI"
+      ],
+      "ProviderType": [
+        "CodeStarSourceConnection"
+      ],
+      "ProxyEndpointTargetRole": [
+        "READ_WRITE",
+        "READ_ONLY"
+      ],
+      "PythonVersion": [
+        "2",
+        "3",
+        "3.9"
+      ],
+      "QueryLanguage": [
+        "JSONPath",
+        "JSONata"
+      ],
+      "QueueEncryption": [
+        "NONE",
+        "KMS_MANAGED",
+        "KMS",
+        "SQS_MANAGED"
+      ],
+      "QuoteCharacter": [
+        '"',
+        "'"
+      ],
+      "ReadWriteType": [
+        "ReadOnly",
+        "WriteOnly",
+        "All",
+        "None"
+      ],
+      "ReceiptFilterPolicy": [
+        "Allow",
+        "Block"
+      ],
+      "RecordType": [
+        "A",
+        "AAAA",
+        "CAA",
+        "CNAME",
+        "DS",
+        "HTTPS",
+        "MX",
+        "NAPTR",
+        "NS",
+        "PTR",
+        "SOA",
+        "SPF",
+        "SRV",
+        "SSHFP",
+        "SVCB",
+        "TLSA",
+        "TXT"
+      ],
+      "RecordWrapperType": [
+        "None",
+        "RecordIO"
+      ],
+      "RecordingMode": [
+        "INTERVAL",
+        "DISABLED"
+      ],
+      "RecursiveLoop": [
+        "Allow",
+        "Terminate"
+      ],
+      "RedirectProtocol": [
+        "http",
+        "https"
+      ],
+      "RedirectStatus": [
+        "200",
+        "301",
+        "302",
+        "404",
+        "404-200"
+      ],
+      "RedrivePermission": [
+        "allowAll",
+        "denyAll",
+        "byQueue"
+      ],
+      "ReferenceRendering": [
+        0,
+        1
+      ],
+      "ReferenceStrength": [
+        "strong",
+        "weak",
+        "both"
+      ],
+      "RegistryType": [
+        "private",
+        "public"
+      ],
+      "RelayConversationHistoryType": [
+        "TO_COLLABORATOR",
+        "DISABLED"
+      ],
+      "RemovalPolicy": [
+        "destroy",
+        "retain",
+        "snapshot",
+        "retain-on-update-or-delete"
+      ],
+      "RenditionSelection": [
+        "ALL",
+        "NONE",
+        "CUSTOM"
+      ],
+      "ReplicationOverwriteProtection": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ReportGroupType": [
+        "TEST",
+        "CODE_COVERAGE"
+      ],
+      "RepositoryEventTrigger": [
+        "all",
+        "updateReference",
+        "createReference",
+        "deleteReference"
+      ],
+      "RepositoryNotificationEvents": [
+        "codecommit-repository-comments-on-commits",
+        "codecommit-repository-comments-on-pull-requests",
+        "codecommit-repository-approvals-status-changed",
+        "codecommit-repository-approvals-rule-override",
+        "codecommit-repository-pull-request-created",
+        "codecommit-repository-pull-request-source-updated",
+        "codecommit-repository-pull-request-status-changed",
+        "codecommit-repository-pull-request-merged",
+        "codecommit-repository-branches-and-tags-created",
+        "codecommit-repository-branches-and-tags-deleted",
+        "codecommit-repository-branches-and-tags-updated"
+      ],
+      "RepositoryService": [
+        "ECR"
+      ],
+      "RepositoryVisibility": [
+        0,
+        1
+      ],
+      "RequestMetricsStatus": [
+        "Enabled",
+        "Disabled"
+      ],
+      "RequireConfirmation": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Resolution": [
+        "FULL_HD",
+        "HD",
+        "SD",
+        "LOWEST_RESOLUTION"
+      ],
+      "ResolutionTypeHint": [
+        "string",
+        "number",
+        "string-list"
+      ],
+      "ResolverLevelMetricsBehavior": [
+        "FULL_REQUEST_RESOLVER_METRICS",
+        "PER_RESOLVER_METRICS"
+      ],
+      "ResolverMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ResourceAction": [
+        "pause-cluster",
+        "resume-cluster",
+        "failover-primary-compute"
+      ],
+      "ResourceScope": [
+        "all",
+        "type",
+        "specific"
+      ],
+      "ResourceToReplicateTags": [
+        "lambda-function"
+      ],
+      "ResponseTransferMode": [
+        "BUFFERED",
+        "STREAM"
+      ],
+      "RestApiMode": [
+        "overwrite",
+        "merge"
+      ],
+      "Result": [
+        "ROLLBACK",
+        "FAIL",
+        "RETRY",
+        "SKIP"
+      ],
+      "RetentionDays": [
+        1,
+        3,
+        5,
+        7,
+        14,
+        30,
+        60,
+        90,
+        120,
+        150,
+        180,
+        365,
+        400,
+        545,
+        731,
+        1096,
+        1827,
+        2192,
+        2557,
+        2922,
+        3288,
+        3653,
+        9999
+      ],
+      "RetryMode": [
+        "ALL_ACTIONS",
+        "FAILED_ACTIONS"
+      ],
+      "RevisionType": [
+        "COMMIT_ID",
+        "IMAGE_DIGEST",
+        "S3_OBJECT_VERSION_ID",
+        "S3_OBJECT_KEY"
+      ],
+      "RevocationType": [
+        "CRL"
+      ],
+      "RoleMappingMatchType": [
+        "Equals",
+        "Contains",
+        "StartsWith",
+        "NotEqual"
+      ],
+      "RouterType": [
+        "CarrierGateway",
+        "EgressOnlyInternetGateway",
+        "Gateway",
+        "Instance",
+        "LocalGateway",
+        "NatGateway",
+        "NetworkInterface",
+        "TransitGateway",
+        "VpcPeeringConnection",
+        "VpcEndpoint",
+        "CoreNetwork"
+      ],
+      "RoutingPolicy": [
+        "WEIGHTED",
+        "MULTIVALUE"
+      ],
+      "Runtime": [
+        "nodejs20.x",
+        "python3.9",
+        "python3.10",
+        "python3.11",
+        "python3.13",
+        "python3.13"
+      ],
+      "RuntimeFamily": [
+        0,
+        1,
+        2
+      ],
+      "S3DataDistributionType": [
+        "FullyReplicated",
+        "ShardedByS3Key"
+      ],
+      "S3DataType": [
+        "ManifestFile",
+        "S3Prefix",
+        "AugmentedManifestFile"
+      ],
+      "S3EncryptionMode": [
+        "SSE-S3",
+        "SSE-KMS"
+      ],
+      "S3LogsDeliveryPermissionsVersion": [
+        "V1",
+        "V2"
+      ],
+      "S3ObjectStorageMode": [
+        "COPY",
+        "REFERENCE"
+      ],
+      "S3OutputFormat": [
+        "plain",
+        "json",
+        "w3c"
+      ],
+      "S3Trigger": [
+        "None",
+        "Poll",
+        "Events"
+      ],
+      "SSLMethod": [
+        "sni-only",
+        "vip",
+        "static-ip"
+      ],
+      "ScaleInProtectedInstances": [
+        "Refresh",
+        "Ignore",
+        "Wait"
+      ],
+      "ScalingEvent": [
+        "autoscaling:EC2_INSTANCE_LAUNCH",
+        "autoscaling:EC2_INSTANCE_TERMINATE",
+        "autoscaling:EC2_INSTANCE_TERMINATE_ERROR",
+        "autoscaling:EC2_INSTANCE_LAUNCH_ERROR",
+        "autoscaling:TEST_NOTIFICATION"
+      ],
+      "ScalingMode": [
+        "STANDARD",
+        "MANAGED"
+      ],
+      "ScalingProcess": [
+        "Launch",
+        "Terminate",
+        "HealthCheck",
+        "ReplaceUnhealthy",
+        "AZRebalance",
+        "AlarmNotification",
+        "ScheduledActions",
+        "AddToLoadBalancer",
+        "InstanceRefresh"
+      ],
+      "ScheduleStartCondition": [
+        "EXPRESSION_MATCH_ONLY",
+        "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE"
+      ],
+      "SchemaDefinitionType": [
+        "string",
+        "number",
+        "object",
+        "array",
+        "boolean",
+        "integer"
+      ],
+      "Scope": [
+        "task",
+        "shared"
+      ],
+      "ScteInSegments": [
+        "NONE",
+        "ALL"
+      ],
+      "ScteMessageType": [
+        "SPLICE_INSERT",
+        "BREAK",
+        "PROVIDER_ADVERTISEMENT",
+        "DISTRIBUTOR_ADVERTISEMENT",
+        "PROVIDER_PLACEMENT_OPPORTUNITY",
+        "DISTRIBUTOR_PLACEMENT_OPPORTUNITY",
+        "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY",
+        "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY",
+        "PROGRAM"
+      ],
+      "SecurityPolicy": [
+        "TLS_1_0",
+        "TLS_1_2"
+      ],
+      "SecurityPolicyProtocol": [
+        "SSLv3",
+        "TLSv1",
+        "TLSv1_2016",
+        "TLSv1.1_2016",
+        "TLSv1.2_2018",
+        "TLSv1.2_2019",
+        "TLSv1.2_2021",
+        "TLSv1.2_2025",
+        "TLSv1.3_2025"
+      ],
+      "SegmentLengthUnits": [
+        "MILLISECONDS",
+        "SECONDS"
+      ],
+      "SegmentTemplateFormat": [
+        "NUMBER_WITH_TIMELINE"
+      ],
+      "ServerSideEncryption": [
+        "AES256",
+        "aws:kms",
+        "aws:kms:dsse"
+      ],
+      "ServiceConnectAccessLogFormat": [
+        "TEXT",
+        "JSON"
+      ],
+      "ServiceIntegrationPattern": [
+        "FIRE_AND_FORGET",
+        "SYNC",
+        "WAIT_FOR_TASK_TOKEN"
+      ],
+      "ServiceManager": [
+        0,
+        1,
+        2
+      ],
+      "ServiceNamespace": [
+        "ecs",
+        "elasticmapreduce",
+        "ec2",
+        "appstream",
+        "dynamodb",
+        "rds",
+        "sagemaker",
+        "custom-resource",
+        "lambda",
+        "comprehend",
+        "kafka",
+        "elasticache",
+        "neptune",
+        "cassandra",
+        "workspaces"
+      ],
+      "Shading": [
+        "none",
+        "above",
+        "below"
+      ],
+      "ShardLevelMetrics": [
+        "IncomingBytes",
+        "IncomingRecords",
+        "IteratorAgeMilliseconds",
+        "OutgoingBytes",
+        "OutgoingRecords",
+        "ReadProvisionedThroughputExceeded",
+        "WriteProvisionedThroughputExceeded",
+        "ALL"
+      ],
+      "SharePermission": [
+        0,
+        1
+      ],
+      "SigningAlgorithm": [
+        "rsa-sha256"
+      ],
+      "SigningBehavior": [
+        "always",
+        "never",
+        "no-override"
+      ],
+      "SigningProtocol": [
+        "sigv4"
+      ],
+      "SizeRoundingBehavior": [
+        0,
+        1,
+        2
+      ],
+      "SnsActionMessageFormat": [
+        "RAW",
+        "JSON"
+      ],
+      "SortDirection": [
+        "asc",
+        "desc"
+      ],
+      "SourceMapMode": [
+        "default",
+        "external",
+        "inline",
+        "both"
+      ],
+      "SourcePriorityMode": [
+        "NO_PRIORITY",
+        "PRIMARY_SECONDARY"
+      ],
+      "SourceType": [
+        "lambda",
+        "sqs",
+        "sns",
+        "events"
+      ],
+      "SplitType": [
+        "None",
+        "Line",
+        "RecordIO",
+        "TFRecord"
+      ],
+      "SplunkLogFormat": [
+        "inline",
+        "json",
+        "raw"
+      ],
+      "SpotAllocationStrategy": [
+        "lowest-price",
+        "capacity-optimized",
+        "capacity-optimized-prioritized",
+        "price-capacity-optimized"
+      ],
+      "SpotInstanceInterruption": [
+        "stop",
+        "terminate",
+        "hibernate"
+      ],
+      "SpotRequestType": [
+        "one-time",
+        "persistent"
+      ],
+      "SslPolicy": [
+        "ELBSecurityPolicy-TLS13-1-2-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-PQ-2025-09",
+        "ELBSecurityPolicy-2016-08",
+        "ELBSecurityPolicy-TLS13-1-2-Res-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06",
+        "ELBSecurityPolicy-TLS13-1-0-2021-06",
+        "ELBSecurityPolicy-TLS13-1-1-2021-06",
+        "ELBSecurityPolicy-TLS13-1-3-2021-06",
+        "ELBSecurityPolicy-TLS13-1-3-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Res-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-0-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-3-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-1-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-0-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-3-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-0-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-FS-1-2-Res-2020-10",
+        "ELBSecurityPolicy-FS-1-2-Res-2019-08",
+        "ELBSecurityPolicy-FS-1-2-2019-08",
+        "ELBSecurityPolicy-FS-1-1-2019-08",
+        "ELBSecurityPolicy-FS-2018-06",
+        "ELBSecurityPolicy-TLS-1-2-2017-01",
+        "ELBSecurityPolicy-TLS-1-2-Ext-2018-06",
+        "ELBSecurityPolicy-TLS-1-1-2017-01",
+        "ELBSecurityPolicy-TLS-1-0-2015-04"
+      ],
+      "StackSetOrganizationsAutoDeployment": [
+        "Enabled",
+        "Disabled",
+        "EnabledWithStackRetention"
+      ],
+      "StandardThreatProtectionMode": [
+        "ENFORCED",
+        "AUDIT",
+        "OFF"
+      ],
+      "StandbyInstances": [
+        "Terminate",
+        "Ignore",
+        "Wait"
+      ],
+      "StartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST",
+        "AT_TIMESTAMP"
+      ],
+      "State": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "StateMachineInvocationType": [
+        "FIRE_AND_FORGET",
+        "REQUEST_RESPONSE"
+      ],
+      "StateMachineType": [
+        "EXPRESS",
+        "STANDARD"
+      ],
+      "StateType": [
+        "Pass",
+        "Task",
+        "Choice",
+        "Wait",
+        "Succeed",
+        "Fail",
+        "Parallel",
+        "Map"
+      ],
+      "Statistic": [
+        "SampleCount",
+        "Average",
+        "Sum",
+        "Minimum",
+        "Maximum"
+      ],
+      "Status": [
+        "pass",
+        "fail"
+      ],
+      "Storage": [
+        "SEQUENTIAL",
+        "LATEST"
+      ],
+      "StorageClass": [
+        "STANDARD",
+        "REDUCED_REDUNDANCY",
+        "STANDARD_IA",
+        "ONEZONE_IA",
+        "INTELLIGENT_TIERING",
+        "GLACIER",
+        "DEEP_ARCHIVE"
+      ],
+      "StorageMode": [
+        "LOCAL",
+        "TIERED"
+      ],
+      "StorageParameters": [
+        "skip.header.line.count",
+        "data_cleansing_enabled",
+        "compression_type",
+        "invalid_char_handling",
+        "replacement_char",
+        "numeric_overflow_handling",
+        "surplus_bytes_handling",
+        "surplus_char_handling",
+        "column_count_mismatch_handling",
+        "num_rows",
+        "serialization.null.format",
+        "orc.schema.resolution",
+        "write.parallel",
+        "write.maxfilesize.mb",
+        "write.kms.key.id"
+      ],
+      "StorageType": [
+        "standard",
+        "gp2",
+        "gp3",
+        "io1",
+        "io2"
+      ],
+      "StreamDeliveryContentLevel": [
+        "METADATA_ONLY",
+        "FULL_CONTENT"
+      ],
+      "StreamDeliveryContentType": [
+        "MEMORY_RECORDS"
+      ],
+      "StreamEncryption": [
+        "NONE",
+        "KMS",
+        "MANAGED"
+      ],
+      "StreamEncryptionType": [
+        0,
+        1,
+        2
+      ],
+      "StreamMode": [
+        "PROVISIONED",
+        "ON_DEMAND"
+      ],
+      "StreamViewType": [
+        "NEW_IMAGE",
+        "OLD_IMAGE",
+        "NEW_AND_OLD_IMAGES",
+        "KEYS_ONLY"
+      ],
+      "StringMutatorType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "Style": [
+        "VectorEsriNavigation",
+        "RasterEsriImagery",
+        "VectorEsriLightGrayCanvas",
+        "VectorEsriTopographic",
+        "VectorEsriStreets",
+        "VectorEsriDarkGrayCanvas",
+        "VectorHereExplore",
+        "RasterHereExploreSatellite",
+        "HybridHereExploreSatellite",
+        "VectorHereContrast",
+        "VectorHereExploreTruck",
+        "VectorGrabStandardLight",
+        "VectorGrabStandardDark",
+        "VectorOpenDataStandardLight",
+        "VectorOpenDataStandardDark",
+        "VectorOpenDataVisualizationLight",
+        "VectorOpenDataVisualizationDark"
+      ],
+      "SubRecordType": [
+        "JSON",
+        "DELIMITED"
+      ],
+      "SubnetType": [
+        "Isolated",
+        "Deprecated_Isolated",
+        "Private",
+        "Deprecated_Private_NAT",
+        "Deprecated_Private",
+        "Public"
+      ],
+      "SubscriptionProtocol": [
+        "http",
+        "https",
+        "email",
+        "email-json",
+        "sms",
+        "sqs",
+        "application",
+        "lambda",
+        "firehose"
+      ],
+      "SuppressionReasons": [
+        "BOUNCES_AND_COMPLAINTS",
+        "BOUNCES_ONLY",
+        "COMPLAINTS_ONLY"
+      ],
+      "SurplusBytesHandlingAction": [
+        "SET_TO_NULL",
+        "DISABLED",
+        "FAIL",
+        "DROP_ROW",
+        "TRUNCATE"
+      ],
+      "SurplusCharHandlingAction": [
+        "SET_TO_NULL",
+        "DISABLED",
+        "FAIL",
+        "DROP_ROW",
+        "TRUNCATE"
+      ],
+      "SymlinkFollowMode": [
+        "never",
+        "always",
+        "external",
+        "internal-only"
+      ],
+      "SynthesisMessageLevel": [
+        "info",
+        "warning",
+        "error"
+      ],
+      "SystemLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN"
+      ],
+      "TLSSecurityPolicy": [
+        "Policy-Min-TLS-1-0-2019-07",
+        "Policy-Min-TLS-1-2-2019-07",
+        "Policy-Min-TLS-1-2-PFS-2023-10"
+      ],
+      "TableAction": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6
+      ],
+      "TableBucketEncryption": [
+        "aws:kms",
+        "AES256"
+      ],
+      "TableClass": [
+        "STANDARD",
+        "STANDARD_INFREQUENT_ACCESS"
+      ],
+      "TableDistStyle": [
+        "AUTO",
+        "EVEN",
+        "KEY",
+        "ALL"
+      ],
+      "TableEncryption": [
+        "AWS_OWNED",
+        "CUSTOMER_MANAGED",
+        "AWS_MANAGED"
+      ],
+      "TableLayout": [
+        "horizontal",
+        "vertical"
+      ],
+      "TableSortStyle": [
+        "AUTO",
+        "COMPOUND",
+        "INTERLEAVED"
+      ],
+      "TableSummaryColumn": [
+        "MIN",
+        "MAX",
+        "SUM",
+        "AVG"
+      ],
+      "TagMutability": [
+        "MUTABLE",
+        "IMMUTABLE",
+        "IMMUTABLE_WITH_EXCLUSION",
+        "MUTABLE_WITH_EXCLUSION"
+      ],
+      "TagOperation": [
+        "STRINGEQUALS",
+        "dummy"
+      ],
+      "TagStatus": [
+        "any",
+        "tagged",
+        "untagged"
+      ],
+      "TagType": [
+        "StandardTag",
+        "AutoScalingGroupTag",
+        "StringToStringMap",
+        "KeyValue",
+        "NotTaggable"
+      ],
+      "TaintEffect": [
+        "NO_SCHEDULE",
+        "PREFER_NO_SCHEDULE",
+        "NO_EXECUTE"
+      ],
+      "TargetGroupIpAddressType": [
+        "ipv4",
+        "ipv6"
+      ],
+      "TargetGroupLoadBalancingAlgorithmType": [
+        "round_robin",
+        "least_outstanding_requests",
+        "weighted_random"
+      ],
+      "TargetType": [
+        "instance",
+        "ip",
+        "lambda",
+        "alb"
+      ],
+      "TcpRetryEvent": [
+        "connection-error"
+      ],
+      "TemplateType": [
+        "Text",
+        "Object"
+      ],
+      "Tenancy": [
+        "default",
+        "dedicated",
+        "host"
+      ],
+      "TerminateHookAbandonAction": [
+        "retain",
+        "terminate"
+      ],
+      "TerminationPolicy": [
+        "AllocationStrategy",
+        "ClosestToNextInstanceHour",
+        "Default",
+        "NewestInstance",
+        "OldestInstance",
+        "OldestLaunchConfiguration",
+        "OldestLaunchTemplate",
+        "CustomLambdaFunction"
+      ],
+      "TextFilterKey": [
+        "audio_language",
+        "subtitle_language"
+      ],
+      "TextWidgetBackground": [
+        "solid",
+        "transparent"
+      ],
+      "ThroughputMode": [
+        "bursting",
+        "provisioned",
+        "elastic"
+      ],
+      "TierConfig": [
+        "CLASSIC",
+        "STANDARD"
+      ],
+      "TimeoutAction": [
+        "ForceApplyCapacityChange",
+        "RollbackCapacityChange"
+      ],
+      "TlsMode": [
+        "STRICT",
+        "PERMISSIVE",
+        "DISABLED"
+      ],
+      "TlsPolicy": [
+        "Optional",
+        "Require"
+      ],
+      "TmpfsMountOption": [
+        "defaults",
+        "ro",
+        "rw",
+        "suid",
+        "nosuid",
+        "dev",
+        "nodev",
+        "exec",
+        "noexec",
+        "sync",
+        "async",
+        "dirsync",
+        "remount",
+        "mand",
+        "nomand",
+        "atime",
+        "noatime",
+        "diratime",
+        "nodiratime",
+        "bind",
+        "rbind",
+        "unbindable",
+        "runbindable",
+        "private",
+        "rprivate",
+        "shared",
+        "rshared",
+        "slave",
+        "rslave",
+        "relatime",
+        "norelatime",
+        "strictatime",
+        "nostrictatime",
+        "mode",
+        "uid",
+        "gid",
+        "nr_inodes",
+        "nr_blocks",
+        "mpol"
+      ],
+      "TraceConfigurationVendor": [
+        "AWSXRAY"
+      ],
+      "Tracing": [
+        "Active",
+        "PassThrough",
+        "Disabled"
+      ],
+      "TracingConfig": [
+        "PassThrough",
+        "Active"
+      ],
+      "TrafficDirection": [
+        0,
+        1
+      ],
+      "Transformation": [
+        "NONE",
+        "COMPACT",
+        "FLATTEN"
+      ],
+      "TransitGatewayFeatureStatus": [
+        "enable",
+        "disable"
+      ],
+      "TransitionDefaultMinimumObjectSize": [
+        "all_storage_classes_128K",
+        "varies_by_storage_class"
+      ],
+      "TransportProtocol": [
+        "tcp",
+        "udp"
+      ],
+      "TreatMissingData": [
+        "breaching",
+        "notBreaching",
+        "ignore",
+        "missing"
+      ],
+      "TrickplayType": [
+        "iframe",
+        "image",
+        "none"
+      ],
+      "TriggerInvalidation": [
+        "WHEN_FUNCTION_CHANGES"
+      ],
+      "TsDrmSystem": [
+        "FAIRPLAY",
+        "CLEAR_KEY_AES_128"
+      ],
+      "TsEncryptionMethod": [
+        "AES_128",
+        "SAMPLE_AES"
+      ],
+      "TtmlProfile": [
+        "IMSC_1",
+        "EBU_TT_D_101"
+      ],
+      "TypeConverterType": [
+        "boolean",
+        "integer",
+        "double",
+        "string"
+      ],
+      "URLEncodingFormat": [
+        "BRACKETS",
+        "COMMAS",
+        "DEFAULT",
+        "INDICES",
+        "NONE",
+        "REPEAT"
+      ],
+      "UlimitName": [
+        "core",
+        "cpu",
+        "data",
+        "fsize",
+        "locks",
+        "memlock",
+        "msgqueue",
+        "nice",
+        "nofile",
+        "nproc",
+        "rss",
+        "rtprio",
+        "rttime",
+        "sigpending",
+        "stack"
+      ],
+      "UnauthenticatedAction": [
+        "deny",
+        "allow",
+        "authenticate"
+      ],
+      "Unit": [
+        "Seconds",
+        "Microseconds",
+        "Milliseconds",
+        "Bytes",
+        "Kilobytes",
+        "Megabytes",
+        "Gigabytes",
+        "Terabytes",
+        "Bits",
+        "Kilobits",
+        "Megabits",
+        "Gigabits",
+        "Terabits",
+        "Percent",
+        "Count",
+        "Bytes/Second",
+        "Kilobytes/Second",
+        "Megabytes/Second",
+        "Gigabytes/Second",
+        "Terabytes/Second",
+        "Bits/Second",
+        "Kilobits/Second",
+        "Megabits/Second",
+        "Gigabits/Second",
+        "Terabits/Second",
+        "Count/Second",
+        "None"
+      ],
+      "UnreferencedFileRemovalStatus": [
+        "Enabled",
+        "Disabled"
+      ],
+      "UntrustedArtifactOnDeployment": [
+        "Enforce",
+        "Warn"
+      ],
+      "UpdateType": [
+        "None",
+        "Replace",
+        "RollingUpdate"
+      ],
+      "UsagePlanKeyType": [
+        "API_KEY"
+      ],
+      "UserPoolDefaultAction": [
+        "ALLOW",
+        "DENY"
+      ],
+      "UserPoolIdentityProviderSamlMetadataType": [
+        "url",
+        "file"
+      ],
+      "ValidationMethod": [
+        "EMAIL",
+        "DNS"
+      ],
+      "ValidatorType": [
+        "JSON_SCHEMA",
+        "LAMBDA"
+      ],
+      "VariableInputType": [
+        "input",
+        "radio",
+        "select"
+      ],
+      "VariableType": [
+        "property",
+        "pattern"
+      ],
+      "VectorType": [
+        "FLOAT32",
+        "BINARY"
+      ],
+      "VendedLogType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "VerificationEmailStyle": [
+        "CONFIRM_WITH_CODE",
+        "CONFIRM_WITH_LINK"
+      ],
+      "VersionConsistency": [
+        "enabled",
+        "disabled"
+      ],
+      "VerticalShading": [
+        "none",
+        "before",
+        "after"
+      ],
+      "VideoCodec": [
+        "H264",
+        "H265",
+        "AV1"
+      ],
+      "VideoCodecType": [
+        "H264",
+        "H265",
+        "AV1",
+        "FRAME_CAPTURE"
+      ],
+      "VideoDynamicRange": [
+        "dv",
+        "hdr10",
+        "hlg",
+        "sdr"
+      ],
+      "ViewerProtocolPolicy": [
+        "https-only",
+        "redirect-to-https",
+        "allow-all"
+      ],
+      "Visibility": [
+        "GLOBAL",
+        "PRIVATE"
+      ],
+      "VpcEndpointDnsRecordIpType": [
+        "ipv4",
+        "ipv6",
+        "dualstack",
+        "service-defined"
+      ],
+      "VpcEndpointIpAddressType": [
+        "ipv4",
+        "ipv6",
+        "dualstack"
+      ],
+      "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint": [
+        "AllResolvers",
+        "OnlyInboundResolver"
+      ],
+      "VpcEndpointType": [
+        "Interface",
+        "Gateway",
+        "GatewayLoadBalancer",
+        "ServiceNetwork",
+        "Resource"
+      ],
+      "VpcSubnetGroupType": [
+        "Public",
+        "Private",
+        "Isolated"
+      ],
+      "VpnConnectionType": [
+        "ipsec.1",
+        "dummy"
+      ],
+      "VpnPort": [
+        443,
+        1194
+      ],
+      "WebSocketAuthorizerType": [
+        "REQUEST",
+        "AWS_IAM"
+      ],
+      "WebSocketIntegrationType": [
+        "AWS_PROXY",
+        "MOCK",
+        "AWS"
+      ],
+      "WebhookFilterTypes": [
+        "FILE_PATH",
+        "COMMIT_MESSAGE",
+        "HEAD_REF",
+        "ACTOR_ACCOUNT_ID",
+        "BASE_REF",
+        "REPOSITORY_NAME"
+      ],
+      "Weekday": [
+        "1",
+        "2",
+        "3",
+        "4",
+        "5",
+        "6",
+        "7"
+      ],
+      "WindowsImageType": [
+        "WINDOWS_CONTAINER",
+        "WINDOWS_SERVER_2019_CONTAINER",
+        "WINDOWS_SERVER_2022_CONTAINER"
+      ],
+      "WindowsOptimizedVersion": [
+        "2025",
+        "2022",
+        "2019",
+        "2016"
+      ],
+      "WindowsVersion": [
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.22",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.22",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.23",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.23",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.24",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.24",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.25",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.25",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.26",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.26",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.27",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.27",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.28",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.28",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.23",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.23",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.24",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.24",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.25",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.25",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.26",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.26",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.27",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.27",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.28",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.28",
+        "Windows_Server-1709-English-Core-ContainersLatest",
+        "Windows_Server-1709-English-Core-Base",
+        "Windows_Server-1803-English-Core-Base",
+        "Windows_Server-1803-English-Core-ContainersLatest",
+        "Windows_Server-1809-English-Core-Base",
+        "Windows_Server-1809-English-Core-ContainersLatest",
+        "Windows_Server-2003-R2_SP2-Language_Packs-32Bit-Base",
+        "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Express",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Standard",
+        "Windows_Server-2003-R2_SP2-English-32Bit-Base",
+        "Windows_Server-2003-R2_SP2-English-64Bit-Base",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Express",
+        "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Standard",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-Base",
+        "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Express",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2008-R2_SP1-Korean-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Chinese_Hong_Kong_SAR-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Chinese_PRC-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-SP2-English-32Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-Base",
+        "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-SP2-English-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_RTM_SP2_Enterprise",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-SP2-Portuguese_Brazil-32Bit-Base",
+        "Windows_Server-2008-SP2-Portugese_Brazil-32Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Core_SQL_2012_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Core",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SharePoint_2010_SP2_Foundation",
+        "Windows_Server-2012-R2_RTM-Chinese_Simplified-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Chinese_Traditional-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Dutch-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Enterprise",
+        "Windows_Server-2012-R2_RTM-Hungarian-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Core",
+        "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Core",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-RTM-Italian-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Express",
+        "Windows_Server-2012-R2_RTM-English-Deep-Learning",
+        "Windows_Server-2012-R2_RTM-German-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Express",
+        "Windows_Server-2012-R2_RTM-Russian-64Bit-Base",
+        "Windows_Server-2012-RTM-Chinese_Traditional_Hong_Kong_SAR-64Bit-Base",
+        "Windows_Server-2012-RTM-Hungarian-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-RTM-French-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-French-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Polish-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-Core",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Enterprise",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-RTM-Swedish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portuguese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portugese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Swedish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2012-RTM-Chinese_Traditional-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-RTM-Czech-64Bit-Base",
+        "Windows_Server-2012-RTM-Turkish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-HyperV",
+        "Windows_Server-2012-RTM-Korean-64Bit-Base",
+        "Windows_Server-2012-RTM-Russian-64Bit-Base",
+        "Windows_Server-2012_R2_RTM-English-Full-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-R2_RTM-Italian-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-R2_RTM-Czech-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Standard",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-SP2-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2008-SP2-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2012-RTM-Japanese-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012_RTM-English-Full-Base",
+        "Windows_Server-2012-R2-English-STIG-Full",
+        "Windows_Server-2012-RTM-Portuguese_Portugal-64Bit-Base",
+        "Windows_Server-2012-RTM-Portugese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-Base",
+        "Windows_Server-2012-RTM-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2012-RTM-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-P3",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-Spanish-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Standard",
+        "Windows_Server-2012-R2-English-STIG-Core",
+        "Windows_Server-2012-R2_RTM-Turkish-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2012-RTM-Polish-64Bit-Base",
+        "Windows_Server-2012-RTM-Spanish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Web",
+        "Windows_Server-2012-R2_RTM-Korean-64Bit-Base",
+        "Windows_Server-2012-RTM-Dutch-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Chinese_Traditional_Hong_Kong-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2012-RTM-Chinese_Simplified-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-Core-Containers",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Web",
+        "Windows_Server-2016-German-Full-Base",
+        "Windows_Server-2016-Germal-Full-Base",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Express",
+        "Windows_Server-2016-English-Deep-Learning",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2016-Korean-Full-Base",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Polish-Full-Base",
+        "Windows_Server-2016-English-Full-Containers",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-Russian-Full-Base",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Express",
+        "Windows_Server-2016-Italian-Full-Base",
+        "Windows_Server-2016-Spanish-Full-Base",
+        "Windows_Server-2012-RTM-German-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-English-Full-HyperV",
+        "Windows_Server-2016-English-Core-ContainersLatest",
+        "Windows_Server-2016-Dutch-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2016-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2016-Hungarian-Full-Base",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-Base",
+        "Windows_Server-2016-English-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2017_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Web",
+        "Windows_Server-2016-Swedish-Full-Base",
+        "Windows_Server-2016-Turkish-Full-Base",
+        "Windows_Server-2016-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2016-Portugese_Brazil-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2019_Standard",
+        "Windows_Server-2016-English-Full-SQL_2014_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Express",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Web",
+        "Windows_Server-2016-English-Full-SQL_2017_Standard",
+        "Windows_Server-2016-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2016-Portugese_Portugal-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2014_SP3_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2016-English-Full-SQL_2019_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-STIG-Core",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-English-Full-ECS_Optimized",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Web",
+        "Windows_Server-2016-English-P3",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2016-Japanese-Full-Base",
+        "Windows_Server-2016-Chinese_Simplified-Full-Base",
+        "Windows_Server-2016-French-Full-Base",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-Czech-Full-Base",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Chinese_Traditional-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2016-English-Full-SQL_2017_Express",
+        "Windows_Server-2016-English-Full-SQL_2019_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2016-English-Tesla",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2016-English-STIG-Full",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Express",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2017_Web",
+        "Windows_Server-2019-French-Full-Base",
+        "Windows_Server-2019-Korean-Full-Base",
+        "Windows_Server-2019-Italian-Full-Base",
+        "Windows_Server-2019-Chinese_Simplified-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2019-English-Full-HyperV",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2019-Hungarian-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2019-Turkish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2019_Standard",
+        "Windows_Server-2019-English-Full-SQL_2017_Standard",
+        "Windows_Server-2019-English-Core-ContainersLatest",
+        "Windows_Server-2019-English-Full-SQL_2017_Express",
+        "Windows_Server-2019-Japanese-Full-Base",
+        "Windows_Server-2019-Russian-Full-Base",
+        "Windows_Server-2019-Chinese_Traditional-Full-Base",
+        "Windows_Server-2019-English-Core-Base",
+        "Windows_Server-2019-English-Full-Base",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Enterprise",
+        "Windows_Server-2019-English-Tesla",
+        "Windows_Server-2019-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2019-Spanish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2019-English-STIG-Full",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2019-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2019-Portugese_Portugal-Full-Base",
+        "Windows_Server-2019-Swedish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2022_Express",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2022_Web",
+        "Windows_Server-2019-English-Full-SQL_2019_Web",
+        "Windows_Server-2019-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2019-Portugese_Brazil-Full-Base",
+        "Windows_Server-2019-English-Full-ContainersLatest",
+        "Windows_Server-2019-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2019_Express",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2019-English-STIG-Core",
+        "Windows_Server-2019-English-Core-ECS_Optimized",
+        "Windows_Server-2019-English-Full-SQL_2022_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2019-English-Full-ECS_Optimized",
+        "Windows_Server-2019-English-Deep-Learning",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2019-Czech-Full-Base",
+        "Windows_Server-2019-Polish-Full-Base",
+        "Windows_Server-2019-German-Full-Base",
+        "Windows_Server-2019-Dutch-Full-Base",
+        "Windows_Server-2022-English-STIG-Full",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Web",
+        "Windows_Server-2022-English-Full-SQL_2022_Web",
+        "Windows_Server-2022-English-STIG-Core",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2022-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2022-Italian-Full-Base",
+        "Windows_Server-2022-English-Full-ContainersLatest",
+        "Windows_Server-2022-Russian-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Express",
+        "Windows_Server-2022-Polish-Full-Base",
+        "Windows_Server-2022-English-Core-Base",
+        "Windows_Server-2022-Hungarian-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2017_Express",
+        "Windows_Server-2022-German-Full-Base",
+        "Windows_Server-2022-English-Core-ContainersLatest",
+        "Windows_Server-2022-English-Full-SQL_2019_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2022-English-Full-SQL_2017_Web",
+        "Windows_Server-2022-Japanese-Full-Base",
+        "Windows_Server-2022-Korean-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2022-Chinese_Simplified-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Web",
+        "Windows_Server-2022-Spanish-Full-Base",
+        "Windows_Server-2022-English-Core-ECS_Optimized",
+        "Windows_Server-2022-English-Full-SQL_2017_Standard",
+        "Windows_Server-2022-Chinese_Traditional-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2022-French-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2022-English-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2022-Turkish-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2022-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2022-Czech-Full-Base",
+        "Windows_Server-2022-English-Full-ECS_Optimized",
+        "Windows_Server-2022-Dutch-Full-Base",
+        "Windows_Server-2022-Swedish-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2022-English-Full-SQL_2022_Express",
+        "Windows_Server-2022-English-Full-SQL_2022_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Enterprise",
+        "Windows_Server-2025-Chinese_Simplified-Full-Base",
+        "Windows_Server-2025-Chinese_Traditional-Full-Base",
+        "Windows_Server-2025-English-Core-Base",
+        "Windows_Server-2025-English-Full-Base",
+        "Windows_Server-2025-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2025-English-Full-SQL_2022_Express",
+        "Windows_Server-2025-English-Full-SQL_2022_Standard",
+        "Windows_Server-2025-English-Full-SQL_2022_Web",
+        "Windows_Server-2025-Japanese-Full-Base",
+        "Windows_Server-2025-Korean-Full-Base"
+      ],
+      "WorkerType": [
+        "Standard",
+        "G.025X",
+        "G.1X",
+        "G.2X",
+        "G.4X",
+        "G.8X",
+        "Z.2X"
+      ],
+      "WorkflowAction": [
+        "ApplyImageConfigurations",
+        "BootstrapInstanceForContainer",
+        "CollectImageMetadata",
+        "CollectImageScanFindings",
+        "CreateImage",
+        "DistributeImage",
+        "ExecuteComponents",
+        "ExecuteStateMachine",
+        "LaunchInstance",
+        "ModifyImageAttributes",
+        "RunCommand",
+        "RegisterImage",
+        "RunSysPrep",
+        "SanitizeInstance",
+        "TerminateInstance",
+        "WaitForAction",
+        "WaitForSSMAgent"
+      ],
+      "WorkflowOnFailure": [
+        "Abort",
+        "Continue"
+      ],
+      "WorkflowParameterType": [
+        "boolean",
+        "integer",
+        "string",
+        "stringList"
+      ],
+      "WorkflowSchemaVersion": [
+        "1.0"
+      ],
+      "WorkflowType": [
+        "BUILD",
+        "TEST",
+        "DISTRIBUTION"
+      ],
+      "WriteParallel": [
+        "on",
+        "off"
+      ],
+      "XffHeaderProcessingMode": [
+        "append",
+        "preserve",
+        "remove"
+      ]
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/constants.ts
+var RESOURCE_SYMBOL, JSII_RUNTIME_SYMBOL2;
+var init_constants = __esm({
+  "../../aws-cdk-lib/core/lib/constants.ts"() {
+    "use strict";
+    RESOURCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Resource");
+    JSII_RUNTIME_SYMBOL2 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/metadata-type.ts
+var init_metadata_type = __esm({
+  "../../aws-cdk-lib/core/lib/metadata-type.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/metadata-resource.ts
+function addConstructMetadata(construct, props) {
+  try {
+    addPropsAsMetadata(construct, "aws:cdk:analytics:construct" /* CONSTRUCT */, props);
+  } catch (e) {
+    Annotations.of(construct).addWarningV2("@aws-cdk/core:addConstructMetadataFailed", `Failed to add construct metadata for node [${construct.node.id}]. Reason: ${e}`);
+  }
+}
+function addMethodMetadata(scope, methodName, props) {
+  try {
+    addPropsAsMetadata(scope, "aws:cdk:analytics:method" /* METHOD */, {
+      [methodName]: props
+    });
+  } catch (e) {
+    Annotations.of(scope).addWarningV2("@aws-cdk/core:addMethodMetadataFailed", `Failed to add method metadata for node [${scope.node.id}], method name ${methodName}. Reason: ${e}`);
+  }
+}
+function MethodMetadata() {
+  return function(originalMethod, context) {
+    if (typeof originalMethod !== "function") {
+      return originalMethod;
+    }
+    return function(...args) {
+      if (this instanceof import_constructs2.Construct) {
+        addMethodMetadata(this, context.name.toString(), args);
+      }
+      return originalMethod.apply(this, args);
+    };
+  };
+}
+function addPropsAsMetadata(construct, type, props) {
+  const telemetryEnabled = FeatureFlags.of(construct).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false;
+  if (!telemetryEnabled) {
+    return;
+  }
+  const fqn = construct.constructor[JSII_RUNTIME_SYMBOL2].fqn;
+  construct.node.addMetadata(type, redactMetadata(fqn, props));
+}
+function redactMetadata(fqn, data) {
+  const fqnParts = fqn.replace(/[-_]/g, "-").split(".");
+  if (fqnParts.length !== 3) {
+    return "*";
+  }
+  const module2 = fqnParts.slice(0, 2).join(".");
+  const name = fqnParts[2];
+  if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS).includes(module2)) {
+    return "*";
+  }
+  if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS[module2]).includes(name)) {
+    return "*";
+  }
+  const allowedKeys = AWS_CDK_CONSTRUCTOR_PROPS[module2][name];
+  return redactTelemetryDataHelper(allowedKeys, data);
+}
+function redactTelemetryDataHelper(allowedKeys, data) {
+  if (allowedKeys === void 0) {
+    return "*";
+  }
+  if (typeof data === "boolean") {
+    return data;
+  }
+  if (isEnumValue(allowedKeys, data)) {
+    return data;
+  }
+  if (typeof data === "string" || typeof data === "number") {
+    return "*";
+  }
+  if (data && Token.isUnresolved(data)) {
+    return "*";
+  }
+  if (Array.isArray(data)) {
+    return data.map((item, index) => {
+      if (Array.isArray(allowedKeys)) {
+        return redactTelemetryDataHelper(allowedKeys[index], item);
+      }
+      return redactTelemetryDataHelper(allowedKeys, item);
+    });
+  }
+  if (data && Object.keys(data).length > 0 && typeof data === "object") {
+    if (import_constructs2.Construct.isConstruct(data)) {
+      return "*";
+    }
+    const redactedResult = {};
+    for (const [key, value] of Object.entries(data)) {
+      if (key && Token.isUnresolved(key)) {
+        continue;
+      }
+      if (allowedKeys && typeof allowedKeys === "object") {
+        if (!Object.keys(allowedKeys).includes(key)) {
+          continue;
+        }
+        const allowedValue = allowedKeys[key];
+        if (allowedValue === "*") {
+          redactedResult[key] = "*";
+          continue;
+        }
+        redactedResult[key] = redactTelemetryDataHelper(allowedKeys[key], value);
+      }
+    }
+    return redactedResult;
+  }
+  return "*";
+}
+function isEnumValue(allowedKeys, value) {
+  if (typeof allowedKeys !== "string" || allowedKeys === "*") {
+    return false;
+  }
+  if (!Object.keys(AWS_CDK_ENUMS).includes(allowedKeys)) {
+    return false;
+  }
+  return AWS_CDK_ENUMS[allowedKeys].includes(value);
+}
+var import_constructs2;
+var init_metadata_resource = __esm({
+  "../../aws-cdk-lib/core/lib/metadata-resource.ts"() {
+    "use strict";
+    import_constructs2 = __toESM(require_lib4());
+    init_classes();
+    init_enums();
+    init_annotations();
+    init_constants();
+    init_feature_flags();
+    init_metadata_type();
+    init_token();
+    init_cx_api();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/no-box-stack-traces.ts
+function noBoxStackTraces(constructor) {
+  const NoBoxStackTraces = class extends constructor {
+    constructor(...args) {
+      Box.disableStackTraceCollection();
+      try {
+        super(...args);
+      } finally {
+        Box.enableStackTraceCollection();
+      }
+    }
+  };
+  Object.defineProperty(NoBoxStackTraces, "name", {
+    value: constructor.name,
+    writable: false
+  });
+  return NoBoxStackTraces;
+}
+var init_no_box_stack_traces = __esm({
+  "../../aws-cdk-lib/core/lib/no-box-stack-traces.ts"() {
+    "use strict";
+    init_box();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectors.ts
+var PropertyInjectors;
+var init_prop_injectors = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectors.ts"() {
+    "use strict";
+    init_prop_injectors_helpers();
+    PropertyInjectors = class _PropertyInjectors {
+      /**
+       * Return whether the given object has a PropertyInjectors property.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static hasPropertyInjectors(x) {
+        return x !== null && typeof x === "object" && PROPERTY_INJECTORS_SYMBOL in x;
+      }
+      /**
+       * Returns the `PropertyInjectors` object associated with a construct scope.
+       * If `PropertyInjectors` object doesn't exist on this scope, then it creates one and attaches it to scope.
+       * @param scope The scope for which these PropertyInjectors will apply.
+       */
+      static of(scope) {
+        let propInjectors = scope[PROPERTY_INJECTORS_SYMBOL];
+        if (!propInjectors) {
+          propInjectors = new _PropertyInjectors(scope);
+          Object.defineProperty(scope, PROPERTY_INJECTORS_SYMBOL, {
+            value: propInjectors,
+            configurable: false,
+            enumerable: false
+          });
+        }
+        return propInjectors;
+      }
+      /**
+       * The scope attached to Injectors.
+       */
+      scope;
+      _injectors;
+      constructor(scope) {
+        this._injectors = /* @__PURE__ */ new Map();
+        this.scope = scope;
+      }
+      /**
+       * Add a list of  IPropertyInjectors to this collection of PropertyInjectors.
+       * @param propsInjectors - a list of IPropertyInjector
+       */
+      add(...propsInjectors) {
+        for (const pi of propsInjectors) {
+          this._injectors.set(pi.constructUniqueId, pi);
+        }
+      }
+      /**
+       * Get the PropertyInjector that is registered to the Construct's uniqueId.
+       * @param uniqueId - the construct uniqueId
+       * @returns - the IPropertyInjector for that construct uniqueId
+       */
+      for(uniqueId) {
+        return this._injectors.get(uniqueId);
+      }
+      /**
+       * This returns a list of the Constructs that are supporting by this PropertyInjectors.
+       * @returns a list of string showing the supported Constructs.
+       */
+      supportedClasses() {
+        return Array.from(this._injectors.keys());
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts
+function applyInjectors(uniqueId, originalProps, context) {
+  const injector = findInjectorFromConstruct(context.scope, uniqueId);
+  if (injector === void 0) {
+    return originalProps;
+  }
+  return injector.inject(originalProps, {
+    scope: context.scope,
+    id: context.id
+  });
+}
+function findInjectorFromConstruct(scope, uniqueId) {
+  const result = _lookup(scope);
+  if (result === void 0) {
+    return void 0;
+  }
+  const injectors = _getInjectorsFromConstruct(result);
+  const propsInjector = injectors.for(uniqueId);
+  if (!propsInjector) {
+    const parent = import_constructs3.Node.of(scope).scope;
+    if (parent) {
+      return findInjectorFromConstruct(parent, uniqueId);
+    }
+  }
+  return propsInjector;
+  function _getInjectorsFromConstruct(c) {
+    const k = PROPERTY_INJECTORS_SYMBOL;
+    return c[k];
+  }
+  function _lookup(c) {
+    if (PropertyInjectors.hasPropertyInjectors(c)) {
+      return c;
+    }
+    const n = import_constructs3.Node.of(c);
+    if (n === void 0) {
+      return void 0;
+    }
+    const _scope = n.scope;
+    if (!_scope) {
+      return void 0;
+    }
+    return _lookup(_scope);
+  }
+}
+var import_constructs3, PROPERTY_INJECTORS_SYMBOL;
+var init_prop_injectors_helpers = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts"() {
+    "use strict";
+    import_constructs3 = __toESM(require_lib4());
+    init_prop_injectors();
+    PROPERTY_INJECTORS_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.PropertyInjectors");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectable.ts
+function propertyInjectable(constructor) {
+  const PropertyInjectable = class extends constructor {
+    constructor(scope, id, props, ...args) {
+      const uniqueId = constructor.PROPERTY_INJECTION_ID;
+      if (uniqueId === void 0) {
+        throw new AssumptionError(lit`ConstructStaticPropertyInjectionIdProperty`, "Construct must have a static PROPERTY_INJECTION_ID property");
+      }
+      props = applyInjectors(uniqueId, props, {
+        scope,
+        id
+      });
+      super(scope, id, props, ...args);
+    }
+  };
+  Object.defineProperty(PropertyInjectable, "name", {
+    value: constructor.name,
+    writable: false
+  });
+  return PropertyInjectable;
+}
+var init_prop_injectable = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectable.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_prop_injectors_helpers();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/removal-policy.ts
+var init_removal_policy = __esm({
+  "../../aws-cdk-lib/core/lib/removal-policy.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/util.ts
+function capitalizePropertyNames(construct, obj) {
+  const stack = stackOf(construct);
+  obj = stack.resolve(obj);
+  if (typeof obj !== "object") {
+    return obj;
+  }
+  if (Array.isArray(obj)) {
+    return obj.map((x) => capitalizePropertyNames(construct, x));
+  }
+  const newObj = {};
+  for (const key of Object.keys(obj)) {
+    const value = obj[key];
+    const first = key.charAt(0).toUpperCase();
+    const newKey = first + key.slice(1);
+    newObj[newKey] = capitalizePropertyNames(construct, value);
+  }
+  return newObj;
+}
+function ignoreEmpty(obj) {
+  return new PostResolveToken(obj, (o) => {
+    if (o == null) {
+      return o;
+    }
+    if (Array.isArray(o) && o.length === 0) {
+      return void 0;
+    }
+    if (typeof o === "object" && Object.keys(o).length === 0) {
+      return void 0;
+    }
+    return o;
+  });
+}
+function filterUndefined(obj) {
+  if (Array.isArray(obj)) {
+    return obj.filter((x) => x != null).map((x) => filterUndefined(x));
+  }
+  if (typeof obj === "object") {
+    const ret = {};
+    for (const [key, value] of Object.entries(obj)) {
+      if (value == null) {
+        continue;
+      }
+      ret[key] = filterUndefined(value);
+    }
+    return ret;
+  }
+  return obj;
+}
+var PostResolveToken;
+var init_util = __esm({
+  "../../aws-cdk-lib/core/lib/util.ts"() {
+    "use strict";
+    init_core_construct_finders();
+    init_intrinsic();
+    PostResolveToken = class extends Intrinsic {
+      constructor(value, processor) {
+        super(value, { stackTrace: false });
+        this.processor = processor;
+      }
+      processor;
+      resolve(context) {
+        context.registerPostProcessor(this);
+        return super.resolve(context);
+      }
+      postProcess(o, context) {
+        return this.processor(o, context);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/arn.ts
+function parseTokenArn(arnToken, arnFormat) {
+  const components = Fn.split(":", arnToken);
+  const partition = Fn.select(1, components).toString();
+  const service = Fn.select(2, components).toString();
+  const region = Fn.select(3, components).toString();
+  const account = Fn.select(4, components).toString();
+  let resource;
+  let resourceName;
+  let sep3;
+  if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */ || arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) {
+    resource = Fn.select(5, components);
+    if (arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) {
+      resourceName = Fn.select(6, components);
+      sep3 = ":";
+    } else {
+      resourceName = void 0;
+      sep3 = void 0;
+    }
+  } else {
+    const lastComponents = Fn.split("/", Fn.select(5, components));
+    if (arnFormat === "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */) {
+      resource = Fn.select(0, lastComponents);
+      resourceName = Fn.select(1, lastComponents);
+    } else {
+      resource = Fn.select(1, lastComponents);
+      resourceName = Fn.select(2, lastComponents);
+    }
+    sep3 = "/";
+  }
+  return { partition, service, region, account, resource, resourceName, sep: sep3, arnFormat };
+}
+function parseArnShape(arn) {
+  const looksLikeArn = arn.startsWith("arn:");
+  if (!looksLikeArn) {
+    if (Token.isUnresolved(arn)) {
+      return "token";
+    } else {
+      throw new UnscopedValidationError(lit`ArnsMustStartWithArn`, `ARNs must start with "arn:" and have at least 6 components: ${arn}`);
+    }
+  }
+  const components = arn.split(":");
+  const partition = components.length > 1 ? components[1] : void 0;
+  if (!partition) {
+    throw new UnscopedValidationError(lit`ArnPartitionRequired`, "The `partition` component (2nd component) of an ARN is required: " + arn);
+  }
+  const service = components.length > 2 ? components[2] : void 0;
+  if (!service) {
+    throw new UnscopedValidationError(lit`ArnServiceRequired`, "The `service` component (3rd component) of an ARN is required: " + arn);
+  }
+  const resource = components.length > 5 ? components[5] : void 0;
+  if (!resource) {
+    throw new UnscopedValidationError(lit`ArnResourceRequired`, "The `resource` component (6th component) of an ARN is required: " + arn);
+  }
+  return components;
+}
+var Arn;
+var init_arn = __esm({
+  "../../aws-cdk-lib/core/lib/arn.ts"() {
+    "use strict";
+    init_cfn_fn();
+    init_errors();
+    init_literal_string();
+    init_token();
+    init_util();
+    Arn = class _Arn {
+      /**
+       * Creates an ARN from components.
+       *
+       * If `partition`, `region` or `account` are not specified, the stack's
+       * partition, region and account will be used.
+       *
+       * If any component is the empty string, an empty string will be inserted
+       * into the generated ARN at the location that component corresponds to.
+       *
+       * The ARN will be formatted as follows:
+       *
+       *   arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}
+       *
+       * The required ARN pieces that are omitted will be taken from the stack that
+       * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope
+       * can be 'undefined'.
+       */
+      static format(components, stack) {
+        const partition = components.partition ?? stack?.partition;
+        const region = components.region ?? stack?.region;
+        const account = components.account ?? stack?.account;
+        if (partition == null || region == null || account == null) {
+          throw new UnscopedValidationError(lit`ArnFormatMissingStackInfo`, `Arn.format: partition (${partition}), region (${region}), and account (${account}) must all be passed if stack is not passed.`);
+        }
+        const sep3 = components.sep ?? (components.arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */ ? ":" : "/");
+        const values = [
+          "arn",
+          ":",
+          partition,
+          ":",
+          components.service,
+          ":",
+          region,
+          ":",
+          account,
+          ":",
+          ...components.arnFormat === "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */ ? ["/"] : [],
+          components.resource
+        ];
+        if (sep3 !== "/" && sep3 !== ":" && sep3 !== "") {
+          throw new UnscopedValidationError(lit`InvalidResourcePathSeparator`, 'resourcePathSep may only be ":", "/" or an empty string');
+        }
+        if (components.resourceName != null) {
+          values.push(sep3);
+          values.push(components.resourceName);
+        }
+        return values.join("");
+      }
+      /**
+       * Given an ARN, parses it and returns components.
+       *
+       * IF THE ARN IS A CONCRETE STRING...
+       *
+       * ...it will be parsed and validated. The separator (`sep`) will be set to '/'
+       * if the 6th component includes a '/', in which case, `resource` will be set
+       * to the value before the '/' and `resourceName` will be the rest. In case
+       * there is no '/', `resource` will be set to the 6th components and
+       * `resourceName` will be set to the rest of the string.
+       *
+       * IF THE ARN IS A TOKEN...
+       *
+       * ...it cannot be validated, since we don't have the actual value yet at the
+       * time of this function call. You will have to supply `sepIfToken` and
+       * whether or not ARNs of the expected format usually have resource names
+       * in order to parse it properly. The resulting `ArnComponents` object will
+       * contain tokens for the subexpressions of the ARN, not string literals.
+       *
+       * If the resource name could possibly contain the separator char, the actual
+       * resource name cannot be properly parsed. This only occurs if the separator
+       * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs,
+       * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a
+       * Tokenized ARN, you must know the resource type and call
+       * `Arn.extractResourceName`.
+       *
+       * @param arn The ARN to parse
+       * @param sepIfToken The separator used to separate resource from resourceName
+       * @param hasName Whether there is a name component in the ARN at all. For
+       * example, SNS Topics ARNs have the 'resource' component contain the topic
+       * name, and no 'resourceName' component.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       * components of the ARN.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       *      components of the ARN.
+       *
+       * @deprecated use split instead
+       */
+      static parse(arn, sepIfToken = "/", hasName = true) {
+        let arnFormat;
+        if (!hasName) {
+          arnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+        } else {
+          arnFormat = sepIfToken === "/" ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */;
+        }
+        return this.split(arn, arnFormat);
+      }
+      /**
+       * Splits the provided ARN into its components.
+       * Works both if 'arn' is a string like 'arn:aws:s3:::bucket',
+       * and a Token representing a dynamic CloudFormation expression
+       * (in which case the returned components will also be dynamic CloudFormation expressions,
+       * encoded as Tokens).
+       *
+       * @param arn the ARN to split into its components
+       * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses
+       */
+      static split(arn, arnFormat) {
+        const components = parseArnShape(arn);
+        if (components === "token") {
+          return parseTokenArn(arn, arnFormat);
+        }
+        const [, partition, service, region, account, resourceTypeOrName, ...rest] = components;
+        let resource;
+        let resourceName;
+        let sep3;
+        let resourcePartStartIndex = 0;
+        let detectedArnFormat;
+        let slashIndex = resourceTypeOrName.indexOf("/");
+        if (slashIndex === 0) {
+          slashIndex = resourceTypeOrName.indexOf("/", 1);
+          resourcePartStartIndex = 1;
+          detectedArnFormat = "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */;
+        }
+        if (slashIndex !== -1) {
+          if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */) {
+            sep3 = void 0;
+            slashIndex = -1;
+            detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+          } else {
+            sep3 = "/";
+            detectedArnFormat = resourcePartStartIndex === 0 ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */;
+          }
+        } else if (rest.length > 0) {
+          sep3 = ":";
+          slashIndex = -1;
+          detectedArnFormat = "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */;
+        } else {
+          sep3 = void 0;
+          detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+        }
+        if (slashIndex !== -1) {
+          resource = resourceTypeOrName.substring(resourcePartStartIndex, slashIndex);
+          resourceName = resourceTypeOrName.substring(slashIndex + 1);
+        } else {
+          resource = resourceTypeOrName;
+        }
+        if (rest.length > 0) {
+          if (!resourceName) {
+            resourceName = "";
+          } else {
+            resourceName += ":";
+          }
+          resourceName += rest.join(":");
+        }
+        return filterUndefined({
+          service: service || void 0,
+          resource: resource || void 0,
+          partition: partition || void 0,
+          region,
+          account,
+          resourceName,
+          sep: sep3,
+          arnFormat: detectedArnFormat
+        });
+      }
+      /**
+       * Extract the full resource name from an ARN
+       *
+       * Necessary for resource names (paths) that may contain the separator, like
+       * `arn:aws:iam::111111111111:role/path/to/role/name`.
+       *
+       * Only works if we statically know the expected `resourceType` beforehand, since we're going
+       * to use that to split the string on ':/' (and take the right-hand side).
+       *
+       * We can't extract the 'resourceType' from the ARN at hand, because CloudFormation Expressions
+       * only allow literals in the 'separator' argument to `{ Fn::Split }`, and so it can't be
+       * `{ Fn::Select: [5, { Fn::Split: [':', ARN] }}`.
+       *
+       * Only necessary for ARN formats for which the type-name separator is `/`.
+       */
+      static extractResourceName(arn, resourceType) {
+        const components = parseArnShape(arn);
+        if (components === "token") {
+          return Fn.select(1, Fn.split(`:${resourceType}/`, arn));
+        }
+        const parsed = _Arn.split(arn, "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */);
+        if (!Token.isUnresolved(parsed.resource) && parsed.resource !== resourceType) {
+          throw new UnscopedValidationError(lit`ExpectedResourceType`, `Expected resource type '${resourceType}' in ARN, got '${parsed.resource}' in '${arn}'`);
+        }
+        if (!parsed.resourceName) {
+          throw new UnscopedValidationError(lit`ExpectedResourceName`, `Expected resource name in ARN, didn't find one: '${arn}'`);
+        }
+        return parsed.resourceName;
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts
+function memoizedGetter(target, _context) {
+  let m;
+  function replacementMethod() {
+    if (!m) {
+      m = /* @__PURE__ */ new WeakMap();
+    }
+    if (m.has(this)) {
+      return m.get(this);
+    }
+    const ret = target.call(this);
+    m.set(this, ret);
+    return ret;
+  }
+  return replacementMethod;
+}
+var init_memoize = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/md5.ts
+function md5hash(x) {
+  if (!_impl) {
+    try {
+      crypto.createHash("md5");
+      _impl = cryptoMd5;
+    } catch {
+      _impl = jsMd5;
+    }
+  }
+  return _impl(x);
+}
+function cryptoMd5(x) {
+  const hash = crypto.createHash("md5");
+  hash.update(x);
+  return hash.digest("hex");
+}
+function jsMd5(s) {
+  return hex(md5Buffer(Buffer.from(s, "utf-8")));
+}
+function md5Round(x, k) {
+  let a = x[0], b = x[1], c = x[2], d = x[3];
+  a = F(a, b, c, d, k[0], 7, -680876936);
+  d = F(d, a, b, c, k[1], 12, -389564586);
+  c = F(c, d, a, b, k[2], 17, 606105819);
+  b = F(b, c, d, a, k[3], 22, -1044525330);
+  a = F(a, b, c, d, k[4], 7, -176418897);
+  d = F(d, a, b, c, k[5], 12, 1200080426);
+  c = F(c, d, a, b, k[6], 17, -1473231341);
+  b = F(b, c, d, a, k[7], 22, -45705983);
+  a = F(a, b, c, d, k[8], 7, 1770035416);
+  d = F(d, a, b, c, k[9], 12, -1958414417);
+  c = F(c, d, a, b, k[10], 17, -42063);
+  b = F(b, c, d, a, k[11], 22, -1990404162);
+  a = F(a, b, c, d, k[12], 7, 1804603682);
+  d = F(d, a, b, c, k[13], 12, -40341101);
+  c = F(c, d, a, b, k[14], 17, -1502002290);
+  b = F(b, c, d, a, k[15], 22, 1236535329);
+  a = G(a, b, c, d, k[1], 5, -165796510);
+  d = G(d, a, b, c, k[6], 9, -1069501632);
+  c = G(c, d, a, b, k[11], 14, 643717713);
+  b = G(b, c, d, a, k[0], 20, -373897302);
+  a = G(a, b, c, d, k[5], 5, -701558691);
+  d = G(d, a, b, c, k[10], 9, 38016083);
+  c = G(c, d, a, b, k[15], 14, -660478335);
+  b = G(b, c, d, a, k[4], 20, -405537848);
+  a = G(a, b, c, d, k[9], 5, 568446438);
+  d = G(d, a, b, c, k[14], 9, -1019803690);
+  c = G(c, d, a, b, k[3], 14, -187363961);
+  b = G(b, c, d, a, k[8], 20, 1163531501);
+  a = G(a, b, c, d, k[13], 5, -1444681467);
+  d = G(d, a, b, c, k[2], 9, -51403784);
+  c = G(c, d, a, b, k[7], 14, 1735328473);
+  b = G(b, c, d, a, k[12], 20, -1926607734);
+  a = H(a, b, c, d, k[5], 4, -378558);
+  d = H(d, a, b, c, k[8], 11, -2022574463);
+  c = H(c, d, a, b, k[11], 16, 1839030562);
+  b = H(b, c, d, a, k[14], 23, -35309556);
+  a = H(a, b, c, d, k[1], 4, -1530992060);
+  d = H(d, a, b, c, k[4], 11, 1272893353);
+  c = H(c, d, a, b, k[7], 16, -155497632);
+  b = H(b, c, d, a, k[10], 23, -1094730640);
+  a = H(a, b, c, d, k[13], 4, 681279174);
+  d = H(d, a, b, c, k[0], 11, -358537222);
+  c = H(c, d, a, b, k[3], 16, -722521979);
+  b = H(b, c, d, a, k[6], 23, 76029189);
+  a = H(a, b, c, d, k[9], 4, -640364487);
+  d = H(d, a, b, c, k[12], 11, -421815835);
+  c = H(c, d, a, b, k[15], 16, 530742520);
+  b = H(b, c, d, a, k[2], 23, -995338651);
+  a = I(a, b, c, d, k[0], 6, -198630844);
+  d = I(d, a, b, c, k[7], 10, 1126891415);
+  c = I(c, d, a, b, k[14], 15, -1416354905);
+  b = I(b, c, d, a, k[5], 21, -57434055);
+  a = I(a, b, c, d, k[12], 6, 1700485571);
+  d = I(d, a, b, c, k[3], 10, -1894986606);
+  c = I(c, d, a, b, k[10], 15, -1051523);
+  b = I(b, c, d, a, k[1], 21, -2054922799);
+  a = I(a, b, c, d, k[8], 6, 1873313359);
+  d = I(d, a, b, c, k[15], 10, -30611744);
+  c = I(c, d, a, b, k[6], 15, -1560198380);
+  b = I(b, c, d, a, k[13], 21, 1309151649);
+  a = I(a, b, c, d, k[4], 6, -145523070);
+  d = I(d, a, b, c, k[11], 10, -1120210379);
+  c = I(c, d, a, b, k[2], 15, 718787259);
+  b = I(b, c, d, a, k[9], 21, -343485551);
+  x[0] = add32(a, x[0]);
+  x[1] = add32(b, x[1]);
+  x[2] = add32(c, x[2]);
+  x[3] = add32(d, x[3]);
+}
+function cmn(q, a, b, x, s, t) {
+  a = add32(add32(a, q), add32(x, t));
+  return add32(a << s | a >>> 32 - s, b);
+}
+function F(a, b, c, d, x, s, t) {
+  return cmn(b & c | ~b & d, a, b, x, s, t);
+}
+function G(a, b, c, d, x, s, t) {
+  return cmn(b & d | c & ~d, a, b, x, s, t);
+}
+function H(a, b, c, d, x, s, t) {
+  return cmn(b ^ c ^ d, a, b, x, s, t);
+}
+function I(a, b, c, d, x, s, t) {
+  return cmn(c ^ (b | ~d), a, b, x, s, t);
+}
+function md5Buffer(buf) {
+  let n = buf.length, state = [1732584193, -271733879, -1732584194, 271733878], i = 0;
+  for (; i + 64 <= n; i += 64) {
+    md5Round(state, bytesToWordsBuf(buf, i));
+  }
+  const remainingBytes = n - i;
+  const padding = Buffer.alloc(64 - remainingBytes < 9 ? 128 : 64);
+  buf.copy(padding, 0, i);
+  padding.writeUint8(128, remainingBytes);
+  const bitLength = n * 8;
+  padding.writeUint32LE(n << 3, padding.length - 8);
+  if (bitLength >= 4294967295) {
+    padding.writeUint32LE(Math.floor(bitLength / 4294967295), padding.length - 4);
+  }
+  md5Round(state, bytesToWordsBuf(padding, 0));
+  if (padding.length > 64) {
+    md5Round(state, bytesToWordsBuf(padding, 64));
+  }
+  return state;
+}
+function bytesToWordsBuf(buf, byteOffset) {
+  const ret = new Array(16);
+  let i = 0, j = byteOffset;
+  for (; i < 16; i++, j += 4) {
+    ret[i] = buf.readUint32LE(j);
+  }
+  return ret;
+}
+function hexify(n) {
+  const s = new Array();
+  for (let j = 0; j < 4; j++) {
+    s.push(hex_chr[n >>> j * 8 + 4 & 15] + hex_chr[n >>> j * 8 & 15]);
+  }
+  return s.join("");
+}
+function hex(x) {
+  const ret = new Array(x.length);
+  for (let i = 0; i < x.length; i++) ret[i] = hexify(x[i]);
+  return ret.join("");
+}
+function add32(a, b) {
+  return a + b & 4294967295;
+}
+var crypto, _impl, hex_chr;
+var init_md5 = __esm({
+  "../../aws-cdk-lib/core/lib/private/md5.ts"() {
+    "use strict";
+    crypto = __toESM(require("crypto"));
+    hex_chr = "0123456789abcdef".split("");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/unique-resource-name.ts
+function makeUniqueResourceName(components, options) {
+  const maxLength = options.maxLength ?? 256;
+  const separator = options.separator ?? "";
+  const prefix = options.prefix ?? "";
+  components = components.filter((x) => x !== HIDDEN_ID);
+  if (components.length === 0) {
+    throw new UnscopedValidationError(lit`UnableToUnableCalculateUnique`, "Unable to calculate a unique resource name for an empty set of components");
+  }
+  if (components.length === 1) {
+    const topLevelResource = prefix + removeNonAllowedSpecialCharacters(components[0], separator, options.allowedSpecialCharacters);
+    if (topLevelResource.length <= maxLength) {
+      return topLevelResource;
+    }
+  }
+  const hash = pathHash(components);
+  const human = prefix + removeDupes(components).filter((pathElement) => pathElement !== HIDDEN_FROM_HUMAN_ID).map((pathElement) => removeNonAllowedSpecialCharacters(pathElement, separator, options.allowedSpecialCharacters)).filter((pathElement) => pathElement).join(separator).concat(separator);
+  const maxhumanLength = maxLength - HASH_LEN;
+  return human.length > maxhumanLength ? `${splitInMiddle(human, maxhumanLength)}${hash}` : `${human}${hash}`;
+}
+function pathHash(path23) {
+  const md52 = md5hash(path23.join(PATH_SEP));
+  return md52.slice(0, HASH_LEN).toUpperCase();
+}
+function removeNonAllowedSpecialCharacters(s, _separator, allowedSpecialCharacters) {
+  const pattern = allowedSpecialCharacters ? `[^A-Za-z0-9${allowedSpecialCharacters}]` : "[^A-Za-z0-9]";
+  const regex = new RegExp(pattern, "g");
+  return s.replace(regex, "");
+}
+function removeDupes(path23) {
+  const ret = new Array();
+  for (const component of path23) {
+    if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) {
+      ret.push(component);
+    }
+  }
+  return ret;
+}
+function splitInMiddle(s, maxLength = MAX_LEN - HASH_LEN) {
+  const half = maxLength / 2;
+  return s.slice(0, half) + s.slice(-half);
+}
+var HIDDEN_FROM_HUMAN_ID, HIDDEN_ID, PATH_SEP, MAX_LEN, HASH_LEN;
+var init_unique_resource_name = __esm({
+  "../../aws-cdk-lib/core/lib/private/unique-resource-name.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_md5();
+    HIDDEN_FROM_HUMAN_ID = "Resource";
+    HIDDEN_ID = "Default";
+    PATH_SEP = "/";
+    MAX_LEN = 256;
+    HASH_LEN = 8;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/uniqueid.ts
+function makeUniqueId(components) {
+  components = components.filter((x) => x !== HIDDEN_ID2);
+  if (components.length === 0) {
+    throw new UnscopedValidationError(lit`UnableToCalculateUniqueId`, "Unable to calculate a unique id for an empty set of components");
+  }
+  const unresolvedTokens = components.filter((c) => unresolved(c));
+  if (unresolvedTokens.length > 0) {
+    throw new UnscopedValidationError(lit`ComponentsContainUnresolvedTokens`, `ID components may not include unresolved tokens: ${unresolvedTokens.join(",")}`);
+  }
+  if (components.length === 1) {
+    const candidate = removeNonAlphanumeric(components[0]);
+    if (candidate.length <= MAX_ID_LEN) {
+      return candidate;
+    }
+  }
+  const hash = pathHash2(components);
+  const human = removeDupes2(components).filter((x) => x !== HIDDEN_FROM_HUMAN_ID2).map(removeNonAlphanumeric).join("").slice(0, MAX_HUMAN_LEN);
+  return human + hash;
+}
+function pathHash2(path23) {
+  const md52 = md5hash(path23.join(PATH_SEP2));
+  return md52.slice(0, HASH_LEN2).toUpperCase();
+}
+function removeNonAlphanumeric(s) {
+  return s.replace(/[^A-Za-z0-9]/g, "");
+}
+function removeDupes2(path23) {
+  const ret = new Array();
+  for (const component of path23) {
+    if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) {
+      ret.push(component);
+    }
+  }
+  return ret;
+}
+var HIDDEN_FROM_HUMAN_ID2, HIDDEN_ID2, PATH_SEP2, HASH_LEN2, MAX_HUMAN_LEN, MAX_ID_LEN;
+var init_uniqueid = __esm({
+  "../../aws-cdk-lib/core/lib/private/uniqueid.ts"() {
+    "use strict";
+    init_errors();
+    init_encoding();
+    init_literal_string();
+    init_md5();
+    HIDDEN_FROM_HUMAN_ID2 = "Resource";
+    HIDDEN_ID2 = "Default";
+    PATH_SEP2 = "/";
+    HASH_LEN2 = 8;
+    MAX_HUMAN_LEN = 240;
+    MAX_ID_LEN = 255;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/names.ts
+function isTopLevelStack(x) {
+  return STACK_TYPE.isMarked(x) && !unresolved(x.stackName);
+}
+function findLastIndex(xs, pred) {
+  for (let i = xs.length - 1; i >= 0; i--) {
+    if (pred(xs[i])) {
+      return i;
+    }
+  }
+  return -1;
+}
+var import_constructs4, Names;
+var init_names = __esm({
+  "../../aws-cdk-lib/core/lib/names.ts"() {
+    "use strict";
+    import_constructs4 = __toESM(require_lib4());
+    init_core_construct_finders();
+    init_encoding();
+    init_unique_resource_name();
+    init_uniqueid();
+    Names = class {
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. The identifier includes a human readable portion rendered
+       * from the path components and a hash suffix. uniqueId is not unique if multiple
+       * copies of the stack are deployed. Prefer using uniqueResourceName().
+       *
+       * @param construct The construct
+       * @returns a unique id based on the construct path
+       */
+      static uniqueId(construct) {
+        const node = import_constructs4.Node.of(construct);
+        const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id);
+        return components.length > 0 ? makeUniqueId(components) : "";
+      }
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. The identifier includes a human readable portion rendered
+       * from the path components and a hash suffix.
+       *
+       * TODO (v2): replace with API to use `constructs.Node`.
+       *
+       * @param node The construct node
+       * @returns a unique id based on the construct path
+       */
+      static nodeUniqueId(node) {
+        const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id);
+        return components.length > 0 ? makeUniqueId(components) : "";
+      }
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. This function finds the stackName of the parent stack (non-nested)
+       * to the construct, and the ids of the components in the construct path.
+       *
+       * The user can define allowed special characters, a separator between the elements,
+       * and the maximum length of the resource name. The name includes a human readable portion rendered
+       * from the path components, with or without user defined separators, and a hash suffix.
+       * If the resource name is longer than the maximum length, it is trimmed in the middle.
+       *
+       * @param construct The construct
+       * @param options Options for defining the unique resource name
+       * @returns a unique resource name based on the construct path
+       */
+      static uniqueResourceName(construct, options) {
+        const node = import_constructs4.Node.of(construct);
+        const scopes = node.scopes;
+        const isStack = scopes.map(isTopLevelStack);
+        const lastStackIndex = Math.max(findLastIndex(isStack, (x) => x), 0);
+        const componentsPath = node.scopes.slice(lastStackIndex).map((component) => isTopLevelStack(component) ? component.stackName : import_constructs4.Node.of(component).id);
+        return makeUniqueResourceName(componentsPath, options);
+      }
+      /**
+       * Return the construct path of the given construct, starting at the nearest enclosing Stack
+       *
+       * Skips over Nested Stacks, in other words Nested Stacks are included in the construct
+       * paths.
+       */
+      static stackRelativeConstructPath(construct) {
+        const scopes = construct.node.scopes;
+        const isStack = scopes.map(isTopLevelStack);
+        const lastStackIndex = findLastIndex(isStack, (x) => x);
+        return scopes.slice(lastStackIndex + 1).map((x) => x.node.id).join("/");
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/physical-name-generator.ts
+function generatePhysicalName(resource) {
+  const stack = stackOf(resource);
+  const stackPart = new PrefixNamePart(stack.stackName, 25);
+  const idPart = new SuffixNamePart(Names.nodeUniqueId(resource.node), 24);
+  const region = stack.region;
+  if (Token.isUnresolved(region) || !region) {
+    throw new ValidationError(lit`CannotGeneratePhysicalNameRegionUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the region is un-resolved or missing`, resource);
+  }
+  const account = stack.account;
+  if (Token.isUnresolved(account) || !account) {
+    throw new ValidationError(lit`CannotGeneratePhysicalNameAccountUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the account is un-resolved or missing`, resource);
+  }
+  const parts = [stackPart, idPart].map((part) => part.generate());
+  const hashLength = 12;
+  const sha256 = crypto2.createHash("sha256").update(stackPart.bareStr).update(idPart.bareStr).update(region).update(account);
+  const hash = sha256.digest("hex").slice(0, hashLength);
+  const ret = [...parts, hash].join("");
+  return ret.toLowerCase();
+}
+function isGeneratedWhenNeededMarker(val2) {
+  const token = TokenMap.instance().lookupString(val2);
+  return !!token && GENERATE_IF_NEEDED_SYMBOL in token;
+}
+var crypto2, import_constructs5, NamePart, PrefixNamePart, SuffixNamePart, GENERATE_IF_NEEDED_SYMBOL, GeneratedWhenNeededMarker;
+var init_physical_name_generator = __esm({
+  "../../aws-cdk-lib/core/lib/private/physical-name-generator.ts"() {
+    "use strict";
+    crypto2 = __toESM(require("crypto"));
+    import_constructs5 = __toESM(require_lib4());
+    init_token_map();
+    init_errors();
+    init_names();
+    init_token();
+    init_core_construct_finders();
+    init_literal_string();
+    NamePart = class {
+      bareStr;
+      constructor(bareStr) {
+        this.bareStr = bareStr;
+      }
+    };
+    PrefixNamePart = class extends NamePart {
+      constructor(bareStr, prefixLength) {
+        super(bareStr);
+        this.prefixLength = prefixLength;
+      }
+      prefixLength;
+      generate() {
+        return this.bareStr.slice(0, this.prefixLength);
+      }
+    };
+    SuffixNamePart = class extends NamePart {
+      constructor(str, suffixLength) {
+        super(str);
+        this.suffixLength = suffixLength;
+      }
+      suffixLength;
+      generate() {
+        const strLen = this.bareStr.length;
+        const startIndex = Math.max(strLen - this.suffixLength, 0);
+        return this.bareStr.slice(startIndex, strLen);
+      }
+    };
+    GENERATE_IF_NEEDED_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core..GenerateIfNeeded");
+    GeneratedWhenNeededMarker = class {
+      creationStack = ["Token stack traces are no longer captured"];
+      constructor() {
+        Object.defineProperty(this, GENERATE_IF_NEEDED_SYMBOL, { value: true });
+      }
+      resolve(_ctx) {
+        throw new UnscopedValidationError(lit`InvalidPhysicalNameMarker`, 'Invalid physical name passed to CloudFormation. Use "this.physicalName" instead');
+      }
+      toString() {
+        return "PhysicalName.GENERATE_IF_NEEDED";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/constants.ts
+var ALLOWED_FQN_PREFIXES;
+var init_constants2 = __esm({
+  "../../aws-cdk-lib/core/lib/private/constants.ts"() {
+    "use strict";
+    ALLOWED_FQN_PREFIXES = [
+      // SCOPES
+      "@aws-cdk/",
+      "@aws-cdk-containers/",
+      "@aws-solutions-konstruk/",
+      "@aws-solutions-constructs/",
+      "@amzn/",
+      "@cdklabs/",
+      // PACKAGES
+      "aws-rfdk.",
+      "aws-cdk-lib.",
+      "cdk8s."
+    ];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts
+function addMetadata(construct, mixin) {
+  let reportedValue = "*";
+  const fqn = Object.getPrototypeOf(mixin).constructor[JSII_RUNTIME_SYMBOL2]?.fqn;
+  if (fqn && ALLOWED_FQN_PREFIXES.find((prefix) => fqn.startsWith(prefix))) {
+    reportedValue = fqn;
+  }
+  construct.node.addMetadata(MIXIN_METADATA_KEY, { mixin: reportedValue });
+}
+function applyMixin(construct, mixin) {
+  addMetadata(construct, mixin);
+  mixin.applyTo(construct);
+}
+function withMixins(target, ...mixins) {
+  const allConstructs = target.node.findAll();
+  for (const mixin of mixins) {
+    for (const construct of allConstructs) {
+      if (mixin.supports(construct)) {
+        applyMixin(construct, mixin);
+      }
+    }
+  }
+  return target;
+}
+var MIXIN_METADATA_KEY;
+var init_mixin_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts"() {
+    "use strict";
+    init_constants();
+    init_constants2();
+    MIXIN_METADATA_KEY = "aws:cdk:analytics:mixin";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/resource.ts
+function mimicReference(refSource, producer) {
+  const reference = Tokenization.reverse(refSource, {
+    // If this is an ARN concatenation, just fail to extract a reference.
+    failConcat: false
+  });
+  if (!Reference.isReference(reference)) {
+    return Lazy.uncachedString(producer);
+  }
+  return Token.asString(new class extends Reference {
+    resolve(context) {
+      return producer.produce(context);
+    }
+  }(reference, reference.target, reference.displayName));
+}
+var import_constructs6, _physicalName_dec, _env_dec, _stack_dec, _a, _init, Resource;
+var init_resource = __esm({
+  "../../aws-cdk-lib/core/lib/resource.ts"() {
+    "use strict";
+    import_constructs6 = __toESM(require_lib4());
+    init_arn();
+    init_cfn_resource();
+    init_constants();
+    init_errors();
+    init_helpers_internal();
+    init_memoize();
+    init_lazy();
+    init_core_construct_finders();
+    init_physical_name_generator();
+    init_reference();
+    init_token();
+    init_mixin_metadata();
+    init_literal_string();
+    Resource = class extends (_a = import_constructs6.Construct, _stack_dec = [memoizedGetter], _env_dec = [memoizedGetter], _physicalName_dec = [memoizedGetter], _a) {
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        __runInitializers(_init, 5, this);
+        __publicField(this, "_allowCrossEnvironment");
+        /** Account given in the constructor, if any. Will be same as Stack if not supplied. */
+        __publicField(this, "_customAccount");
+        /** Account given in the constructor, if any. Will be same as Stack if not supplied.*/
+        __publicField(this, "_customRegion");
+        /** What we are doing for the physical name */
+        __publicField(this, "_physicalNameMode");
+        /** The physicalName supplied into the constructor */
+        __publicField(this, "_givenPhysicalName");
+        /** The generated physical name, in case of cross-env access */
+        __publicField(this, "_generatedPhysicalName", Box.fromValue(void 0));
+        if ((props.account !== void 0 || props.region !== void 0) && props.environmentFromArn !== void 0) {
+          throw new ValidationError(lit`ConflictingEnvironmentOptions`, `Supply at most one of 'account'/'region' (${props.account}/${props.region}) and 'environmentFromArn' (${props.environmentFromArn})`, this);
+        }
+        Object.defineProperty(this, RESOURCE_SYMBOL, { value: true });
+        const parsedArn = props.environmentFromArn ? (
+          // Since we only want the region and account, NO_RESOURCE_NAME is good enough
+          Arn.split(props.environmentFromArn, "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */)
+        ) : void 0;
+        this._customAccount = props.account ?? parsedArn?.account;
+        this._customRegion = props.region ?? parsedArn?.region;
+        this._givenPhysicalName = props.physicalName;
+        if (props.physicalName && isGeneratedWhenNeededMarker(props.physicalName)) {
+          this._physicalNameMode = "generate";
+          this._allowCrossEnvironment = true;
+        } else if (props.physicalName && !Token.isUnresolved(props.physicalName)) {
+          this._physicalNameMode = "given-resolved";
+          this._allowCrossEnvironment = true;
+        } else {
+          this._physicalNameMode = "deploy-time";
+          this._allowCrossEnvironment = false;
+        }
+      }
+      /**
+       * Check whether the given construct is a Resource
+       */
+      static isResource(construct) {
+        return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct;
+      }
+      /**
+       * Returns true if the construct was created by CDK, and false otherwise
+       */
+      static isOwnedResource(construct) {
+        return construct.node.defaultChild ? CfnResource.isCfnResource(construct.node.defaultChild) : false;
+      }
+      get stack() {
+        return stackOf(this);
+      }
+      get env() {
+        return {
+          account: this._customAccount ?? this.stack.account,
+          region: this._customRegion ?? this.stack.region
+        };
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      get physicalName() {
+        switch (this._physicalNameMode) {
+          case "generate":
+            return Token.asString(this._generatedPhysicalName);
+          case "given-resolved":
+            return this._givenPhysicalName;
+          case "deploy-time":
+            return this._givenPhysicalName ?? Token.asString(void 0);
+        }
+      }
+      /**
+       * Called when this resource is referenced across environments
+       * (account/region) to order to request that a physical name will be generated
+       * for this resource during synthesis, so the resource can be referenced
+       * through its absolute name/arn.
+       *
+       * @internal
+       */
+      _enableCrossEnvironment() {
+        if (!this._allowCrossEnvironment) {
+          throw new ValidationError(lit`CannotUseCrossEnvironment`, `Cannot use resource '${this.node.path}' in a cross-environment fashion, the resource's physical name must be explicit set or use \`PhysicalName.GENERATE_IF_NEEDED\``, this);
+        }
+        this._generatedPhysicalName.update(
+          (name) => this._physicalNameMode === "generate" && !name ? this.generatePhysicalName() : name
+        );
+      }
+      /**
+       * Apply the given removal policy to this resource
+       *
+       * The Removal Policy controls what happens to this resource when it stops
+       * being managed by CloudFormation, either because you've removed it from the
+       * CDK application or because you've made a change that requires the resource
+       * to be replaced.
+       *
+       * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
+       * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
+       */
+      applyRemovalPolicy(policy) {
+        const child = this.node.defaultChild;
+        if (!child || !CfnResource.isCfnResource(child)) {
+          throw new ValidationError(lit`CannotApplyRemovalPolicy`, "Cannot apply RemovalPolicy: no child or not a CfnResource. Apply the removal policy on the CfnResource directly.", this);
+        }
+        child.applyRemovalPolicy(policy);
+      }
+      /**
+       * Override the cross-stack reference strength for this resource.
+       *
+       * When set, any cross-stack reference to this resource will use the specified
+       * mechanism instead of the global default determined by the
+       * `@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for
+       * selectively weakening specific references to avoid the "deadly embrace" problem
+       * without changing the app-wide default.
+       *
+       * @param strength - The reference strength to use for this resource.
+       */
+      applyCrossStackReferenceStrength(strength) {
+        const child = this.node.defaultChild;
+        if (!child || !CfnResource.isCfnResource(child)) {
+          throw new ValidationError(lit`CannotApplyCrossStackReferenceStrength`, "Cannot apply CrossStackReferenceStrength: no child or not a CfnResource. Apply the override on the CfnResource directly.", this);
+        }
+        child.applyCrossStackReferenceStrength(strength);
+      }
+      generatePhysicalName() {
+        return generatePhysicalName(this);
+      }
+      /**
+       * Returns an environment-sensitive token that should be used for the
+       * resource's "name" attribute (e.g. `bucket.bucketName`).
+       *
+       * Normally, this token will resolve to `nameAttr`, but if the resource is
+       * referenced across environments, it will be resolved to `this.physicalName`,
+       * which will be a concrete name.
+       *
+       * @param nameAttr The CFN attribute which resolves to the resource's name.
+       * Commonly this is the resource's `ref`.
+       */
+      getResourceNameAttribute(nameAttr) {
+        return mimicReference(nameAttr, {
+          produce: (context) => {
+            const consumingStack = stackOf(context.scope);
+            if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) {
+              this._enableCrossEnvironment();
+              return this.physicalName;
+            } else {
+              return nameAttr;
+            }
+          }
+        });
+      }
+      /**
+       * Returns an environment-sensitive token that should be used for the
+       * resource's "ARN" attribute (e.g. `bucket.bucketArn`).
+       *
+       * Normally, this token will resolve to `arnAttr`, but if the resource is
+       * referenced across environments, `arnComponents` will be used to synthesize
+       * a concrete ARN with the resource's physical name. Make sure to reference
+       * `this.physicalName` in `arnComponents`.
+       *
+       * @param arnAttr The CFN attribute which resolves to the ARN of the resource.
+       * Commonly it will be called "Arn" (e.g. `resource.attrArn`), but sometimes
+       * it's the CFN resource's `ref`.
+       * @param arnComponents The format of the ARN of this resource. You must
+       * reference `this.physicalName` somewhere within the ARN in order for
+       * cross-environment references to work.
+       *
+       */
+      getResourceArnAttribute(arnAttr, arnComponents) {
+        return mimicReference(arnAttr, {
+          produce: (context) => {
+            const consumingStack = stackOf(context.scope);
+            if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) {
+              this._enableCrossEnvironment();
+              return this.stack.formatArn(arnComponents);
+            } else {
+              return arnAttr;
+            }
+          }
+        });
+      }
+    };
+    _init = __decoratorStart(_a);
+    __decorateElement(_init, 2, "stack", _stack_dec, Resource);
+    __decorateElement(_init, 2, "env", _env_dec, Resource);
+    __decorateElement(_init, 2, "physicalName", _physicalName_dec, Resource);
+    __decoratorMetadata(_init, Resource);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource.ts
+function uppercaseProperties(props) {
+  const ret = {};
+  Object.keys(props).forEach((key) => {
+    const upper = key.slice(0, 1).toUpperCase() + key.slice(1);
+    ret[upper] = props[key];
+  });
+  return ret;
+}
+function renderResourceType(scope, resourceType) {
+  if (!resourceType) {
+    return "AWS::CloudFormation::CustomResource";
+  }
+  if (!resourceType.startsWith("Custom::")) {
+    throw new ValidationError(lit`MustBeCustomResourceType`, `Custom resource type must begin with "Custom::" (${resourceType})`, scope);
+  }
+  if (resourceType.length > 60) {
+    throw new ValidationError(lit`CustomResourceTypeLength`, `Custom resource type length > 60 (${resourceType})`, scope);
+  }
+  const typeName = resourceType.slice(resourceType.indexOf("::") + 2);
+  if (!/^[a-z0-9_@-]+$/i.test(typeName)) {
+    throw new ValidationError(lit`CustomResourceTypeNameInclude`, `Custom resource type name can only include alphanumeric characters and _@- (${typeName})`, scope);
+  }
+  return resourceType;
+}
+var _getAttString_dec, _getAtt_dec, _a2, _CustomResource_decorators, _init2, CustomResource;
+var init_custom_resource = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource.ts"() {
+    "use strict";
+    init_annotations();
+    init_cfn_resource();
+    init_errors();
+    init_metadata_resource();
+    init_no_box_stack_traces();
+    init_literal_string();
+    init_prop_injectable();
+    init_removal_policy();
+    init_resource();
+    init_token();
+    _CustomResource_decorators = [noBoxStackTraces, propertyInjectable];
+    CustomResource = class extends (_a2 = Resource, _getAtt_dec = [MethodMetadata()], _getAttString_dec = [MethodMetadata()], _a2) {
+      constructor(scope, id, props) {
+        super(scope, id);
+        __runInitializers(_init2, 5, this);
+        __publicField(this, "resource");
+        addConstructMetadata(this, props);
+        const type = renderResourceType(this, props.resourceType);
+        const pascalCaseProperties = props.pascalCaseProperties ?? false;
+        const properties = pascalCaseProperties ? uppercaseProperties(props.properties || {}) : props.properties || {};
+        if (props.serviceTimeout !== void 0 && !props.serviceTimeout.isUnresolved()) {
+          const serviceTimeoutSeconds = props.serviceTimeout.toSeconds();
+          if (serviceTimeoutSeconds < 1 || serviceTimeoutSeconds > 3600) {
+            throw new ValidationError(lit`ServiceTimeoutSeconds`, `serviceTimeout must either be between 1 and 3600 seconds, got ${serviceTimeoutSeconds}`, this);
+          }
+        }
+        const constructPropertiesPassed = {
+          ServiceToken: props.serviceToken,
+          ServiceTimeout: props.serviceTimeout?.toSeconds().toString()
+        };
+        const hasCommonKeys = Object.keys(properties).some((key) => key in constructPropertiesPassed);
+        if (hasCommonKeys) {
+          Annotations.of(this).addWarningV2("@aws-cdk/core:customResourcePropConflict", `The following keys will be overwritten as they exist in the 'properties' prop. Keys found: ${Object.keys(properties).filter((key) => key in constructPropertiesPassed)}`);
+        }
+        this.resource = new CfnResource(this, "Default", {
+          type,
+          properties: {
+            ...constructPropertiesPassed,
+            ...properties
+          }
+        });
+        this.resource.applyRemovalPolicy(props.removalPolicy, {
+          default: "destroy" /* DESTROY */
+        });
+      }
+      /**
+       * The physical name of this custom resource.
+       */
+      get ref() {
+        return this.resource.ref;
+      }
+      getAtt(attributeName) {
+        return this.resource.getAtt(attributeName);
+      }
+      getAttString(attributeName) {
+        return Token.asString(this.getAtt(attributeName));
+      }
+    };
+    _init2 = __decoratorStart(_a2);
+    __decorateElement(_init2, 1, "getAtt", _getAtt_dec, CustomResource);
+    __decorateElement(_init2, 1, "getAttString", _getAttString_dec, CustomResource);
+    CustomResource = __decorateElement(_init2, 0, "CustomResource", _CustomResource_decorators, CustomResource);
+    /** Uniquely identifies this class. */
+    __publicField(CustomResource, "PROPERTY_INJECTION_ID", "aws-cdk-lib.core.CustomResource");
+    __runInitializers(_init2, 1, CustomResource);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts
+var init_consts = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts
+var INLINE_CUSTOM_RESOURCE_CONTEXT;
+var init_shared = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts"() {
+    "use strict";
+    INLINE_CUSTOM_RESOURCE_CONTEXT = "@aws-cdk/core:inlineCustomResourceIfPossible";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/assets.ts
+var init_assets = __esm({
+  "../../aws-cdk-lib/core/lib/assets.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js
+var require_ignore = __commonJS({
+  "../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    var factory = (options) => new IgnoreBase(options);
+    factory.default = factory;
+    module2.exports = factory;
+    function make_array(subject) {
+      return Array.isArray(subject) ? subject : [subject];
+    }
+    var REGEX_TRAILING_SLASH = /(?<=.)\/$/;
+    var REGEX_TRAILING_BACKSLASH = /(?<=.)\\$/;
+    var REGEX_TRAILING_PATH_SEP = path23.sep === "\\" ? REGEX_TRAILING_BACKSLASH : REGEX_TRAILING_SLASH;
+    var KEY_IGNORE = typeof Symbol !== "undefined" ? /* @__PURE__ */ Symbol.for("dockerignore") : "dockerignore";
+    function cleanPath(file) {
+      return path23.normalize(file).replace(REGEX_TRAILING_PATH_SEP, "");
+    }
+    function toSlash(file) {
+      if (path23.sep === "/") {
+        return file;
+      }
+      return file.replace(/\\/g, "/");
+    }
+    function fromSlash(file) {
+      if (path23.sep === "/") {
+        return file;
+      }
+      return file.replace(/\//g, path23.sep);
+    }
+    var IgnoreBase = class {
+      constructor({
+        // https://github.com/kaelzhang/node-ignore/blob/5.1.4/index.js#L372
+        ignorecase = true
+      } = {}) {
+        this._rules = [];
+        this._ignorecase = ignorecase;
+        this[KEY_IGNORE] = true;
+        this._initCache();
+      }
+      _initCache() {
+        this._cache = {};
+      }
+      // @param {Array.|string|Ignore} pattern
+      add(pattern) {
+        this._added = false;
+        if (typeof pattern === "string") {
+          pattern = pattern.split(/\r?\n/g);
+        }
+        make_array(pattern).forEach(this._addPattern, this);
+        if (this._added) {
+          this._initCache();
+        }
+        return this;
+      }
+      // legacy
+      addPattern(pattern) {
+        return this.add(pattern);
+      }
+      _addPattern(pattern) {
+        if (pattern && pattern[KEY_IGNORE]) {
+          this._rules = this._rules.concat(pattern._rules);
+          this._added = true;
+          return;
+        }
+        if (this._checkPattern(pattern)) {
+          const rule = this._createRule(pattern.trim());
+          if (rule !== null) {
+            this._added = true;
+            this._rules.push(rule);
+          }
+        }
+      }
+      _checkPattern(pattern) {
+        return pattern && typeof pattern === "string" && pattern.indexOf("#") !== 0 && pattern.trim() !== "";
+      }
+      filter(paths) {
+        return make_array(paths).filter((path24) => this._filter(path24));
+      }
+      createFilter() {
+        return (path24) => this._filter(path24);
+      }
+      ignores(path24) {
+        return !this._filter(path24);
+      }
+      // https://github.com/moby/moby/blob/v19.03.8/builder/dockerignore/dockerignore.go#L41-L53
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L29-L55
+      _createRule(pattern) {
+        const origin = pattern;
+        let negative = false;
+        if (pattern[0] === "!") {
+          negative = true;
+          pattern = pattern.substring(1).trim();
+        }
+        if (pattern.length > 0) {
+          pattern = cleanPath(pattern);
+          pattern = toSlash(pattern);
+          if (pattern.length > 1 && pattern[0] === "/") {
+            pattern = pattern.slice(1);
+          }
+        }
+        if (negative) {
+          pattern = "!" + pattern;
+        }
+        pattern = pattern.trim();
+        if (pattern === "") {
+          return null;
+        }
+        pattern = cleanPath(pattern);
+        if (pattern[0] === "!") {
+          if (pattern.length === 1) {
+            return null;
+          }
+          negative = true;
+          pattern = pattern.substring(1);
+        } else {
+          negative = false;
+        }
+        return {
+          origin,
+          pattern,
+          // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L54
+          dirs: pattern.split(path23.sep),
+          negative
+        };
+      }
+      // @returns `Boolean` true if the `path` is NOT ignored
+      _filter(path24) {
+        if (!path24) {
+          return false;
+        }
+        if (path24 in this._cache) {
+          return this._cache[path24];
+        }
+        return this._cache[path24] = this._test(path24);
+      }
+      // @returns {Boolean} true if a file is NOT ignored
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L62
+      _test(file) {
+        file = fromSlash(file);
+        const parentPath = cleanPath(path23.dirname(file));
+        const parentPathDirs = parentPath.split(path23.sep);
+        let matched = false;
+        this._rules.forEach((rule) => {
+          let match = this._match(file, rule);
+          if (!match && parentPath !== ".") {
+            if (rule.dirs.includes("**")) {
+              for (let i = rule.dirs.filter((x) => x !== "**").length; i <= parentPathDirs.length; i++) {
+                match = match || this._match(parentPathDirs.slice(0, i).join(path23.sep), rule);
+              }
+            } else if (rule.dirs.length <= parentPathDirs.length) {
+              match = this._match(parentPathDirs.slice(0, rule.dirs.length).join(path23.sep), rule);
+            }
+          }
+          if (match) {
+            matched = !rule.negative;
+          }
+        });
+        return !matched;
+      }
+      // @returns {Boolean} true if a file is matched by a rule
+      _match(file, rule) {
+        return this._compile(rule).regexp.test(file);
+      }
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L139
+      _compile(rule) {
+        if (rule.regexp) {
+          return rule;
+        }
+        let regStr = "^";
+        let escapedSlash = path23.sep === "\\" ? "\\\\" : path23.sep;
+        for (let i = 0; i < rule.pattern.length; i++) {
+          const ch = rule.pattern[i];
+          if (ch === "*") {
+            if (rule.pattern[i + 1] === "*") {
+              i++;
+              if (rule.pattern[i + 1] === path23.sep) {
+                i++;
+              }
+              if (rule.pattern[i + 1] === void 0) {
+                regStr += ".*";
+              } else {
+                regStr += `(.*${escapedSlash})?`;
+              }
+            } else {
+              regStr += `[^${escapedSlash}]*`;
+            }
+          } else if (ch === "?") {
+            regStr += `[^${escapedSlash}]`;
+          } else if (ch === "." || ch === "$") {
+            regStr += `\\${ch}`;
+          } else if (ch === "\\") {
+            if (path23.sep === "\\") {
+              regStr += escapedSlash;
+              continue;
+            }
+            if (rule.pattern[i + 1] !== void 0) {
+              regStr += "\\" + rule.pattern[i + 1];
+              i++;
+            } else {
+              regStr += "\\";
+            }
+          } else {
+            regStr += ch;
+          }
+        }
+        regStr += "$";
+        rule.regexp = new RegExp(regStr, this._ignorecase ? "i" : "");
+        return rule;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/ignore/index.js
+var require_ignore2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/ignore/index.js"(exports2, module2) {
+    function makeArray(subject) {
+      return Array.isArray(subject) ? subject : [subject];
+    }
+    var EMPTY = "";
+    var SPACE = " ";
+    var ESCAPE = "\\";
+    var REGEX_TEST_BLANK_LINE = /^\s+$/;
+    var REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/;
+    var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/;
+    var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/;
+    var REGEX_SPLITALL_CRLF = /\r?\n/g;
+    var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/;
+    var SLASH = "/";
+    var TMP_KEY_IGNORE = "node-ignore";
+    if (typeof Symbol !== "undefined") {
+      TMP_KEY_IGNORE = /* @__PURE__ */ Symbol.for("node-ignore");
+    }
+    var KEY_IGNORE = TMP_KEY_IGNORE;
+    var define = (object, key, value) => Object.defineProperty(object, key, { value });
+    var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g;
+    var RETURN_FALSE = () => false;
+    var sanitizeRange = (range4) => range4.replace(
+      REGEX_REGEXP_RANGE,
+      (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) ? match : EMPTY
+    );
+    var cleanRangeBackSlash = (slashes) => {
+      const { length } = slashes;
+      return slashes.slice(0, length - length % 2);
+    };
+    var REPLACERS = [
+      [
+        // remove BOM
+        // TODO:
+        // Other similar zero-width characters?
+        /^\uFEFF/,
+        () => EMPTY
+      ],
+      // > Trailing spaces are ignored unless they are quoted with backslash ("\")
+      [
+        // (a\ ) -> (a )
+        // (a  ) -> (a)
+        // (a ) -> (a)
+        // (a \ ) -> (a  )
+        /((?:\\\\)*?)(\\?\s+)$/,
+        (_, m1, m2) => m1 + (m2.indexOf("\\") === 0 ? SPACE : EMPTY)
+      ],
+      // replace (\ ) with ' '
+      // (\ ) -> ' '
+      // (\\ ) -> '\\ '
+      // (\\\ ) -> '\\ '
+      [
+        /(\\+?)\s/g,
+        (_, m1) => {
+          const { length } = m1;
+          return m1.slice(0, length - length % 2) + SPACE;
+        }
+      ],
+      // Escape metacharacters
+      // which is written down by users but means special for regular expressions.
+      // > There are 12 characters with special meanings:
+      // > - the backslash \,
+      // > - the caret ^,
+      // > - the dollar sign $,
+      // > - the period or dot .,
+      // > - the vertical bar or pipe symbol |,
+      // > - the question mark ?,
+      // > - the asterisk or star *,
+      // > - the plus sign +,
+      // > - the opening parenthesis (,
+      // > - the closing parenthesis ),
+      // > - and the opening square bracket [,
+      // > - the opening curly brace {,
+      // > These special characters are often called "metacharacters".
+      [
+        /[\\$.|*+(){^]/g,
+        (match) => `\\${match}`
+      ],
+      [
+        // > a question mark (?) matches a single character
+        /(?!\\)\?/g,
+        () => "[^/]"
+      ],
+      // leading slash
+      [
+        // > A leading slash matches the beginning of the pathname.
+        // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c".
+        // A leading slash matches the beginning of the pathname
+        /^\//,
+        () => "^"
+      ],
+      // replace special metacharacter slash after the leading slash
+      [
+        /\//g,
+        () => "\\/"
+      ],
+      [
+        // > A leading "**" followed by a slash means match in all directories.
+        // > For example, "**/foo" matches file or directory "foo" anywhere,
+        // > the same as pattern "foo".
+        // > "**/foo/bar" matches file or directory "bar" anywhere that is directly
+        // >   under directory "foo".
+        // Notice that the '*'s have been replaced as '\\*'
+        /^\^*\\\*\\\*\\\//,
+        // '**/foo' <-> 'foo'
+        () => "^(?:.*\\/)?"
+      ],
+      // starting
+      [
+        // there will be no leading '/'
+        //   (which has been replaced by section "leading slash")
+        // If starts with '**', adding a '^' to the regular expression also works
+        /^(?=[^^])/,
+        function startingReplacer() {
+          return !/\/(?!$)/.test(this) ? "(?:^|\\/)" : "^";
+        }
+      ],
+      // two globstars
+      [
+        // Use lookahead assertions so that we could match more than one `'/**'`
+        /\\\/\\\*\\\*(?=\\\/|$)/g,
+        // Zero, one or several directories
+        // should not use '*', or it will be replaced by the next replacer
+        // Check if it is not the last `'/**'`
+        (_, index, str) => index + 6 < str.length ? "(?:\\/[^\\/]+)*" : "\\/.+"
+      ],
+      // normal intermediate wildcards
+      [
+        // Never replace escaped '*'
+        // ignore rule '\*' will match the path '*'
+        // 'abc.*/' -> go
+        // 'abc.*'  -> skip this rule,
+        //    coz trailing single wildcard will be handed by [trailing wildcard]
+        /(^|[^\\]+)(\\\*)+(?=.+)/g,
+        // '*.js' matches '.js'
+        // '*.js' doesn't match 'abc'
+        (_, p1, p2) => {
+          const unescaped = p2.replace(/\\\*/g, "[^\\/]*");
+          return p1 + unescaped;
+        }
+      ],
+      [
+        // unescape, revert step 3 except for back slash
+        // For example, if a user escape a '\\*',
+        // after step 3, the result will be '\\\\\\*'
+        /\\\\\\(?=[$.|*+(){^])/g,
+        () => ESCAPE
+      ],
+      [
+        // '\\\\' -> '\\'
+        /\\\\/g,
+        () => ESCAPE
+      ],
+      [
+        // > The range notation, e.g. [a-zA-Z],
+        // > can be used to match one of the characters in a range.
+        // `\` is escaped by step 3
+        /(\\)?\[([^\]/]*?)(\\*)($|\])/g,
+        (match, leadEscape, range4, endEscape, close) => leadEscape === ESCAPE ? `\\[${range4}${cleanRangeBackSlash(endEscape)}${close}` : close === "]" ? endEscape.length % 2 === 0 ? `[${sanitizeRange(range4)}${endEscape}]` : "[]" : "[]"
+      ],
+      // ending
+      [
+        // 'js' will not match 'js.'
+        // 'ab' will not match 'abc'
+        /(?:[^*])$/,
+        // WTF!
+        // https://git-scm.com/docs/gitignore
+        // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1)
+        // which re-fixes #24, #38
+        // > If there is a separator at the end of the pattern then the pattern
+        // > will only match directories, otherwise the pattern can match both
+        // > files and directories.
+        // 'js*' will not match 'a.js'
+        // 'js/' will not match 'a.js'
+        // 'js' will match 'a.js' and 'a.js/'
+        (match) => /\/$/.test(match) ? `${match}$` : `${match}(?=$|\\/$)`
+      ],
+      // trailing wildcard
+      [
+        /(\^|\\\/)?\\\*$/,
+        (_, p1) => {
+          const prefix = p1 ? `${p1}[^/]+` : "[^/]*";
+          return `${prefix}(?=$|\\/$)`;
+        }
+      ]
+    ];
+    var regexCache = /* @__PURE__ */ Object.create(null);
+    var makeRegex = (pattern, ignoreCase) => {
+      let source = regexCache[pattern];
+      if (!source) {
+        source = REPLACERS.reduce(
+          (prev, [matcher, replacer]) => prev.replace(matcher, replacer.bind(pattern)),
+          pattern
+        );
+        regexCache[pattern] = source;
+      }
+      return ignoreCase ? new RegExp(source, "i") : new RegExp(source);
+    };
+    var isString = (subject) => typeof subject === "string";
+    var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) && pattern.indexOf("#") !== 0;
+    var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF);
+    var IgnoreRule = class {
+      constructor(origin, pattern, negative, regex) {
+        this.origin = origin;
+        this.pattern = pattern;
+        this.negative = negative;
+        this.regex = regex;
+      }
+    };
+    var createRule = (pattern, ignoreCase) => {
+      const origin = pattern;
+      let negative = false;
+      if (pattern.indexOf("!") === 0) {
+        negative = true;
+        pattern = pattern.substr(1);
+      }
+      pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#");
+      const regex = makeRegex(pattern, ignoreCase);
+      return new IgnoreRule(
+        origin,
+        pattern,
+        negative,
+        regex
+      );
+    };
+    var throwError = (message, Ctor) => {
+      throw new Ctor(message);
+    };
+    var checkPath = (path23, originalPath, doThrow) => {
+      if (!isString(path23)) {
+        return doThrow(
+          `path must be a string, but got \`${originalPath}\``,
+          TypeError
+        );
+      }
+      if (!path23) {
+        return doThrow(`path must not be empty`, TypeError);
+      }
+      if (checkPath.isNotRelative(path23)) {
+        const r = "`path.relative()`d";
+        return doThrow(
+          `path should be a ${r} string, but got "${originalPath}"`,
+          RangeError
+        );
+      }
+      return true;
+    };
+    var isNotRelative = (path23) => REGEX_TEST_INVALID_PATH.test(path23);
+    checkPath.isNotRelative = isNotRelative;
+    checkPath.convert = (p) => p;
+    var Ignore = class {
+      constructor({
+        ignorecase = true,
+        ignoreCase = ignorecase,
+        allowRelativePaths = false
+      } = {}) {
+        define(this, KEY_IGNORE, true);
+        this._rules = [];
+        this._ignoreCase = ignoreCase;
+        this._allowRelativePaths = allowRelativePaths;
+        this._initCache();
+      }
+      _initCache() {
+        this._ignoreCache = /* @__PURE__ */ Object.create(null);
+        this._testCache = /* @__PURE__ */ Object.create(null);
+      }
+      _addPattern(pattern) {
+        if (pattern && pattern[KEY_IGNORE]) {
+          this._rules = this._rules.concat(pattern._rules);
+          this._added = true;
+          return;
+        }
+        if (checkPattern(pattern)) {
+          const rule = createRule(pattern, this._ignoreCase);
+          this._added = true;
+          this._rules.push(rule);
+        }
+      }
+      // @param {Array | string | Ignore} pattern
+      add(pattern) {
+        this._added = false;
+        makeArray(
+          isString(pattern) ? splitPattern(pattern) : pattern
+        ).forEach(this._addPattern, this);
+        if (this._added) {
+          this._initCache();
+        }
+        return this;
+      }
+      // legacy
+      addPattern(pattern) {
+        return this.add(pattern);
+      }
+      //          |           ignored : unignored
+      // negative |   0:0   |   0:1   |   1:0   |   1:1
+      // -------- | ------- | ------- | ------- | --------
+      //     0    |  TEST   |  TEST   |  SKIP   |    X
+      //     1    |  TESTIF |  SKIP   |  TEST   |    X
+      // - SKIP: always skip
+      // - TEST: always test
+      // - TESTIF: only test if checkUnignored
+      // - X: that never happen
+      // @param {boolean} whether should check if the path is unignored,
+      //   setting `checkUnignored` to `false` could reduce additional
+      //   path matching.
+      // @returns {TestResult} true if a file is ignored
+      _testOne(path23, checkUnignored) {
+        let ignored = false;
+        let unignored = false;
+        this._rules.forEach((rule) => {
+          const { negative } = rule;
+          if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) {
+            return;
+          }
+          const matched = rule.regex.test(path23);
+          if (matched) {
+            ignored = !negative;
+            unignored = negative;
+          }
+        });
+        return {
+          ignored,
+          unignored
+        };
+      }
+      // @returns {TestResult}
+      _test(originalPath, cache, checkUnignored, slices) {
+        const path23 = originalPath && checkPath.convert(originalPath);
+        checkPath(
+          path23,
+          originalPath,
+          this._allowRelativePaths ? RETURN_FALSE : throwError
+        );
+        return this._t(path23, cache, checkUnignored, slices);
+      }
+      _t(path23, cache, checkUnignored, slices) {
+        if (path23 in cache) {
+          return cache[path23];
+        }
+        if (!slices) {
+          slices = path23.split(SLASH);
+        }
+        slices.pop();
+        if (!slices.length) {
+          return cache[path23] = this._testOne(path23, checkUnignored);
+        }
+        const parent = this._t(
+          slices.join(SLASH) + SLASH,
+          cache,
+          checkUnignored,
+          slices
+        );
+        return cache[path23] = parent.ignored ? parent : this._testOne(path23, checkUnignored);
+      }
+      ignores(path23) {
+        return this._test(path23, this._ignoreCache, false).ignored;
+      }
+      createFilter() {
+        return (path23) => !this.ignores(path23);
+      }
+      filter(paths) {
+        return makeArray(paths).filter(this.createFilter());
+      }
+      // @returns {TestResult}
+      test(path23) {
+        return this._test(path23, this._testCache, true);
+      }
+    };
+    var factory = (options) => new Ignore(options);
+    var isPathValid = (path23) => checkPath(path23 && checkPath.convert(path23), path23, RETURN_FALSE);
+    factory.isPathValid = isPathValid;
+    factory.default = factory;
+    module2.exports = factory;
+    if (
+      // Detect `process` so that it can run in browsers.
+      typeof process !== "undefined" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32")
+    ) {
+      const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/");
+      checkPath.convert = makePosix;
+      const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i;
+      checkPath.isNotRelative = (path23) => REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path23) || isNotRelative(path23);
+    }
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/options.ts
+var init_options = __esm({
+  "../../aws-cdk-lib/core/lib/fs/options.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js
+var require_commonjs = __commonJS({
+  "../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.range = exports2.balanced = void 0;
+    var balanced = (a, b, str) => {
+      const ma = a instanceof RegExp ? maybeMatch(a, str) : a;
+      const mb = b instanceof RegExp ? maybeMatch(b, str) : b;
+      const r = ma !== null && mb != null && (0, exports2.range)(ma, mb, str);
+      return r && {
+        start: r[0],
+        end: r[1],
+        pre: str.slice(0, r[0]),
+        body: str.slice(r[0] + ma.length, r[1]),
+        post: str.slice(r[1] + mb.length)
+      };
+    };
+    exports2.balanced = balanced;
+    var maybeMatch = (reg, str) => {
+      const m = str.match(reg);
+      return m ? m[0] : null;
+    };
+    var range4 = (a, b, str) => {
+      let begs, beg, left, right = void 0, result;
+      let ai = str.indexOf(a);
+      let bi = str.indexOf(b, ai + 1);
+      let i = ai;
+      if (ai >= 0 && bi > 0) {
+        if (a === b) {
+          return [ai, bi];
+        }
+        begs = [];
+        left = str.length;
+        while (i >= 0 && !result) {
+          if (i === ai) {
+            begs.push(i);
+            ai = str.indexOf(a, i + 1);
+          } else if (begs.length === 1) {
+            const r = begs.pop();
+            if (r !== void 0)
+              result = [r, bi];
+          } else {
+            beg = begs.pop();
+            if (beg !== void 0 && beg < left) {
+              left = beg;
+              right = bi;
+            }
+            bi = str.indexOf(b, i + 1);
+          }
+          i = ai < bi && ai >= 0 ? ai : bi;
+        }
+        if (begs.length && right !== void 0) {
+          result = [left, right];
+        }
+      }
+      return result;
+    };
+    exports2.range = range4;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js
+var require_commonjs2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EXPANSION_MAX_REWRITES = exports2.EXPANSION_MAX_DEPTH = exports2.EXPANSION_MAX_LENGTH = exports2.EXPANSION_MAX = void 0;
+    exports2.expand = expand;
+    var balanced_match_1 = require_commonjs();
+    var escSlash = "\0SLASH" + Math.random() + "\0";
+    var escOpen = "\0OPEN" + Math.random() + "\0";
+    var escClose = "\0CLOSE" + Math.random() + "\0";
+    var escComma = "\0COMMA" + Math.random() + "\0";
+    var escPeriod = "\0PERIOD" + Math.random() + "\0";
+    var escSlashPattern = new RegExp(escSlash, "g");
+    var escOpenPattern = new RegExp(escOpen, "g");
+    var escClosePattern = new RegExp(escClose, "g");
+    var escCommaPattern = new RegExp(escComma, "g");
+    var escPeriodPattern = new RegExp(escPeriod, "g");
+    var slashPattern = /\\\\/g;
+    var openPattern = /\\{/g;
+    var closePattern = /\\}/g;
+    var commaPattern = /\\,/g;
+    var periodPattern = /\\\./g;
+    exports2.EXPANSION_MAX = 1e5;
+    exports2.EXPANSION_MAX_LENGTH = 4e6;
+    exports2.EXPANSION_MAX_DEPTH = 1e3;
+    exports2.EXPANSION_MAX_REWRITES = 1e3;
+    function numeric(str) {
+      return !isNaN(str) ? parseInt(str, 10) : str.charCodeAt(0);
+    }
+    function escapeBraces(str) {
+      return str.replace(slashPattern, escSlash).replace(openPattern, escOpen).replace(closePattern, escClose).replace(commaPattern, escComma).replace(periodPattern, escPeriod);
+    }
+    function unescapeBraces(str) {
+      return str.replace(escSlashPattern, "\\").replace(escOpenPattern, "{").replace(escClosePattern, "}").replace(escCommaPattern, ",").replace(escPeriodPattern, ".");
+    }
+    function pushAll(target, items) {
+      for (let i = 0; i < items.length; i++) {
+        target.push(items[i]);
+      }
+    }
+    function parseCommaParts(str) {
+      const parts = [];
+      let carry = "";
+      for (; ; ) {
+        const m = (0, balanced_match_1.balanced)("{", "}", str);
+        if (!m) {
+          const tail = str.split(",");
+          tail[0] = carry + tail[0];
+          pushAll(parts, tail);
+          return parts;
+        }
+        const { pre, body, post } = m;
+        const p = pre.split(",");
+        p[0] = carry + p[0];
+        p[p.length - 1] += "{" + body + "}";
+        if (!post.length) {
+          pushAll(parts, p);
+          return parts;
+        }
+        carry = p.pop();
+        pushAll(parts, p);
+        str = post;
+      }
+    }
+    function expand(str, options = {}) {
+      if (!str) {
+        return [];
+      }
+      const { max = exports2.EXPANSION_MAX, maxLength = exports2.EXPANSION_MAX_LENGTH, maxDepth = exports2.EXPANSION_MAX_DEPTH, maxRewrites = exports2.EXPANSION_MAX_REWRITES } = options;
+      if (str.slice(0, 2) === "{}") {
+        str = "\\{\\}" + str.slice(2);
+      }
+      return expand_(escapeBraces(str), max, maxLength, maxDepth, 0, maxRewrites, true).map(unescapeBraces);
+    }
+    function embrace(str) {
+      return "{" + str + "}";
+    }
+    function isPadded(el) {
+      return /^-?0\d/.test(el);
+    }
+    function lte(i, y) {
+      return i <= y;
+    }
+    function gte(i, y) {
+      return i >= y;
+    }
+    function combine(acc, pre, values, max, maxLength, dropEmpties) {
+      const out = [];
+      let length = 0;
+      for (let a = 0; a < acc.length; a++) {
+        for (let v = 0; v < values.length; v++) {
+          if (out.length >= max)
+            return out;
+          const expansion = acc[a] + pre + values[v];
+          if (dropEmpties && !expansion)
+            continue;
+          if (length + expansion.length > maxLength)
+            return out;
+          out.push(expansion);
+          length += expansion.length;
+        }
+      }
+      return out;
+    }
+    function expandSequence(body, isAlphaSequence, max, maxLength) {
+      const n = body.split(/\.\./);
+      const N = [];
+      if (n[0] === void 0 || n[1] === void 0) {
+        return N;
+      }
+      const x = numeric(n[0]);
+      const y = numeric(n[1]);
+      const width = Math.max(n[0].length, n[1].length);
+      let incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric(n[2])), 1) : 1;
+      let test = lte;
+      const reverse = y < x;
+      if (reverse) {
+        incr *= -1;
+        test = gte;
+      }
+      const pad = n.some(isPadded);
+      let length = 0;
+      for (let i = x; test(i, y) && N.length < max; i += incr) {
+        let c;
+        if (isAlphaSequence) {
+          c = String.fromCharCode(i);
+          if (c === "\\") {
+            c = "";
+          }
+        } else {
+          c = String(i);
+          if (pad) {
+            const need = width - c.length;
+            if (need > 0) {
+              const z = new Array(need + 1).join("0");
+              if (i < 0) {
+                c = "-" + z + c.slice(1);
+              } else {
+                c = z + c;
+              }
+            }
+          }
+        }
+        if (length + c.length > maxLength)
+          break;
+        N.push(c);
+        length += c.length;
+      }
+      return N;
+    }
+    function expand_(str, max, maxLength, maxDepth, depth, maxRewrites, isTop) {
+      if (depth > maxDepth) {
+        return [str];
+      }
+      let acc = [""];
+      let rewrites = 0;
+      let dropEmpties = false;
+      let firstGroup = true;
+      for (; ; ) {
+        const m = (0, balanced_match_1.balanced)("{", "}", str);
+        if (!m) {
+          return combine(acc, str, [""], max, maxLength, dropEmpties);
+        }
+        const pre = m.pre;
+        if (/\$$/.test(pre)) {
+          acc = combine(acc, pre + "{" + m.body + "}", [""], max, maxLength, dropEmpties && !m.post.length);
+          firstGroup = false;
+          if (!m.post.length)
+            break;
+          str = m.post;
+          continue;
+        }
+        const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
+        const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
+        const isSequence = isNumericSequence || isAlphaSequence;
+        const isOptions = m.body.indexOf(",") >= 0;
+        if (!isSequence && !isOptions) {
+          if (rewrites < maxRewrites && m.post.match(/,(?!,).*\}/)) {
+            rewrites++;
+            str = m.pre + "{" + m.body + escClose + m.post;
+            isTop = true;
+            continue;
+          }
+          return combine(acc, pre + "{" + m.body + "}" + m.post, [""], max, maxLength, dropEmpties);
+        }
+        if (firstGroup) {
+          dropEmpties = isTop && !isSequence;
+          firstGroup = false;
+        }
+        let values;
+        if (isSequence) {
+          values = expandSequence(m.body, isAlphaSequence, max, maxLength);
+        } else {
+          let n = parseCommaParts(m.body);
+          if (n.length === 1 && n[0] !== void 0) {
+            n = expand_(n[0], max, maxLength, maxDepth, depth + 1, maxRewrites, false).map(embrace);
+            if (n.length === 1) {
+              acc = combine(acc, pre + n[0], [""], max, maxLength, dropEmpties && !m.post.length);
+              if (!m.post.length)
+                break;
+              str = m.post;
+              continue;
+            }
+          }
+          let dropsEmpties = dropEmpties && !m.post.length && !pre;
+          for (let d = 0; dropsEmpties && d < acc.length; d++) {
+            if (acc[d]) {
+              dropsEmpties = false;
+            }
+          }
+          values = [];
+          let valuesLength = 0;
+          outer: for (let j = 0; j < n.length; j++) {
+            const expanded = expand_(n[j], max, maxLength, maxDepth, depth + 1, maxRewrites, false);
+            for (let k = 0; k < expanded.length; k++) {
+              const v = expanded[k];
+              if (dropsEmpties && !v)
+                continue;
+              if (values.length >= max || valuesLength + v.length > maxLength) {
+                break outer;
+              }
+              values.push(v);
+              valuesLength += v.length;
+            }
+          }
+        }
+        acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
+        if (!m.post.length)
+          break;
+        str = m.post;
+      }
+      return acc;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js
+var require_assert_valid_pattern = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.assertValidPattern = void 0;
+    var MAX_PATTERN_LENGTH = 1024 * 64;
+    var assertValidPattern = (pattern) => {
+      if (typeof pattern !== "string") {
+        throw new TypeError("invalid pattern");
+      }
+      if (pattern.length > MAX_PATTERN_LENGTH) {
+        throw new TypeError("pattern is too long");
+      }
+    };
+    exports2.assertValidPattern = assertValidPattern;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js
+var require_brace_expressions = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.parseClass = void 0;
+    var posixClasses = {
+      "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true],
+      "[:alpha:]": ["\\p{L}\\p{Nl}", true],
+      "[:ascii:]": ["\\x00-\\x7f", false],
+      "[:blank:]": ["\\p{Zs}\\t", true],
+      "[:cntrl:]": ["\\p{Cc}", true],
+      "[:digit:]": ["\\p{Nd}", true],
+      "[:graph:]": ["\\p{Z}\\p{C}", true, true],
+      "[:lower:]": ["\\p{Ll}", true],
+      "[:print:]": ["\\p{C}", true],
+      "[:punct:]": ["\\p{P}", true],
+      "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true],
+      "[:upper:]": ["\\p{Lu}", true],
+      "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true],
+      "[:xdigit:]": ["A-Fa-f0-9", false]
+    };
+    var braceEscape = (s) => s.replace(/[[\]\\-]/g, "\\$&");
+    var regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var rangesToString = (ranges) => ranges.join("");
+    var parseClass = (glob2, position) => {
+      const pos = position;
+      if (glob2.charAt(pos) !== "[") {
+        throw new Error("not in a brace expression");
+      }
+      const ranges = [];
+      const negs = [];
+      let i = pos + 1;
+      let sawStart = false;
+      let uflag = false;
+      let escaping = false;
+      let negate = false;
+      let endPos = pos;
+      let rangeStart = "";
+      WHILE: while (i < glob2.length) {
+        const c = glob2.charAt(i);
+        if ((c === "!" || c === "^") && i === pos + 1) {
+          negate = true;
+          i++;
+          continue;
+        }
+        if (c === "]" && sawStart && !escaping) {
+          endPos = i + 1;
+          break;
+        }
+        sawStart = true;
+        if (c === "\\") {
+          if (!escaping) {
+            escaping = true;
+            i++;
+            continue;
+          }
+        }
+        if (c === "[" && !escaping) {
+          for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) {
+            if (glob2.startsWith(cls, i)) {
+              if (rangeStart) {
+                return ["$.", false, glob2.length - pos, true];
+              }
+              i += cls.length;
+              if (neg)
+                negs.push(unip);
+              else
+                ranges.push(unip);
+              uflag = uflag || u;
+              continue WHILE;
+            }
+          }
+        }
+        escaping = false;
+        if (rangeStart) {
+          if (c > rangeStart) {
+            ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c));
+          } else if (c === rangeStart) {
+            ranges.push(braceEscape(c));
+          }
+          rangeStart = "";
+          i++;
+          continue;
+        }
+        if (glob2.startsWith("-]", i + 1)) {
+          ranges.push(braceEscape(c + "-"));
+          i += 2;
+          continue;
+        }
+        if (glob2.startsWith("-", i + 1)) {
+          rangeStart = c;
+          i += 2;
+          continue;
+        }
+        ranges.push(braceEscape(c));
+        i++;
+      }
+      if (endPos < i) {
+        return ["", false, 0, false];
+      }
+      if (!ranges.length && !negs.length) {
+        return ["$.", false, glob2.length - pos, true];
+      }
+      if (negs.length === 0 && ranges.length === 1 && /^\\?.$/.test(ranges[0]) && !negate) {
+        const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0];
+        return [regexpEscape(r), false, endPos - pos, false];
+      }
+      const sranges = "[" + (negate ? "^" : "") + rangesToString(ranges) + "]";
+      const snegs = "[" + (negate ? "" : "^") + rangesToString(negs) + "]";
+      const comb = ranges.length && negs.length ? "(" + sranges + "|" + snegs + ")" : ranges.length ? sranges : snegs;
+      return [comb, uflag, endPos - pos, true];
+    };
+    exports2.parseClass = parseClass;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js
+var require_unescape = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.unescape = void 0;
+    var unescape2 = (s, { windowsPathsNoEscape = false, magicalBraces = true } = {}) => {
+      if (magicalBraces) {
+        return windowsPathsNoEscape ? s.replace(/\[([^/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\])\]/g, "$1$2").replace(/\\([^/])/g, "$1");
+      }
+      return windowsPathsNoEscape ? s.replace(/\[([^/\\{}])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\{}])\]/g, "$1$2").replace(/\\([^/{}])/g, "$1");
+    };
+    exports2.unescape = unescape2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js
+var require_ast = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js"(exports2) {
+    "use strict";
+    var _a7;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AST = void 0;
+    var brace_expressions_js_1 = require_brace_expressions();
+    var unescape_js_1 = require_unescape();
+    var types2 = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
+    var isExtglobType = (c) => types2.has(c);
+    var isExtglobAST = (c) => isExtglobType(c.type);
+    var adoptionMap = /* @__PURE__ */ new Map([
+      ["!", ["@"]],
+      ["?", ["?", "@"]],
+      ["@", ["@"]],
+      ["*", ["*", "+", "?", "@"]],
+      ["+", ["+", "@"]]
+    ]);
+    var adoptionWithSpaceMap = /* @__PURE__ */ new Map([
+      ["!", ["?"]],
+      ["@", ["?"]],
+      ["+", ["?", "*"]]
+    ]);
+    var adoptionAnyMap = /* @__PURE__ */ new Map([
+      ["!", ["?", "@"]],
+      ["?", ["?", "@"]],
+      ["@", ["?", "@"]],
+      ["*", ["*", "+", "?", "@"]],
+      ["+", ["+", "@", "?", "*"]]
+    ]);
+    var usurpMap = /* @__PURE__ */ new Map([
+      ["!", /* @__PURE__ */ new Map([["!", "@"]])],
+      [
+        "?",
+        /* @__PURE__ */ new Map([
+          ["*", "*"],
+          ["+", "*"]
+        ])
+      ],
+      [
+        "@",
+        /* @__PURE__ */ new Map([
+          ["!", "!"],
+          ["?", "?"],
+          ["@", "@"],
+          ["*", "*"],
+          ["+", "+"]
+        ])
+      ],
+      [
+        "+",
+        /* @__PURE__ */ new Map([
+          ["?", "*"],
+          ["*", "*"]
+        ])
+      ]
+    ]);
+    var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
+    var startNoDot = "(?!\\.)";
+    var addPatternStart = /* @__PURE__ */ new Set(["[", "."]);
+    var justDots = /* @__PURE__ */ new Set(["..", "."]);
+    var reSpecials = new Set("().*{}+?[]^$\\!");
+    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var qmark = "[^/]";
+    var star = qmark + "*?";
+    var starNoEmpty = qmark + "+?";
+    var ID = 0;
+    var AST = class {
+      type;
+      #root;
+      #hasMagic;
+      #uflag = false;
+      #parts = [];
+      #parent;
+      #parentIndex;
+      #negs;
+      #filledNegs = false;
+      #options;
+      #toString;
+      // set to true if it's an extglob with no children
+      // (which really means one child of '')
+      #emptyExt = false;
+      id = ++ID;
+      get depth() {
+        return (this.#parent?.depth ?? -1) + 1;
+      }
+      [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")]() {
+        return {
+          "@@type": "AST",
+          id: this.id,
+          type: this.type,
+          root: this.#root.id,
+          parent: this.#parent?.id,
+          depth: this.depth,
+          partsLength: this.#parts.length,
+          parts: this.#parts
+        };
+      }
+      constructor(type, parent, options = {}) {
+        this.type = type;
+        if (type)
+          this.#hasMagic = true;
+        this.#parent = parent;
+        this.#root = this.#parent ? this.#parent.#root : this;
+        this.#options = this.#root === this ? options : this.#root.#options;
+        this.#negs = this.#root === this ? [] : this.#root.#negs;
+        if (type === "!" && !this.#root.#filledNegs)
+          this.#negs.push(this);
+        this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0;
+      }
+      get hasMagic() {
+        if (this.#hasMagic !== void 0)
+          return this.#hasMagic;
+        for (const p of this.#parts) {
+          if (typeof p === "string")
+            continue;
+          if (p.type || p.hasMagic)
+            return this.#hasMagic = true;
+        }
+        return this.#hasMagic;
+      }
+      // reconstructs the pattern
+      toString() {
+        return this.#toString !== void 0 ? this.#toString : !this.type ? this.#toString = this.#parts.map((p) => String(p)).join("") : this.#toString = this.type + "(" + this.#parts.map((p) => String(p)).join("|") + ")";
+      }
+      #fillNegs() {
+        if (this !== this.#root)
+          throw new Error("should only call on root");
+        if (this.#filledNegs)
+          return this;
+        this.toString();
+        this.#filledNegs = true;
+        let n;
+        while (n = this.#negs.pop()) {
+          if (n.type !== "!")
+            continue;
+          let p = n;
+          let pp = p.#parent;
+          while (pp) {
+            for (let i = p.#parentIndex + 1; !pp.type && i < pp.#parts.length; i++) {
+              for (const part of n.#parts) {
+                if (typeof part === "string") {
+                  throw new Error("string part in extglob AST??");
+                }
+                part.copyIn(pp.#parts[i]);
+              }
+            }
+            p = pp;
+            pp = p.#parent;
+          }
+        }
+        return this;
+      }
+      push(...parts) {
+        for (const p of parts) {
+          if (p === "")
+            continue;
+          if (typeof p !== "string" && !(p instanceof _a7 && p.#parent === this)) {
+            throw new Error("invalid part: " + p);
+          }
+          this.#parts.push(p);
+        }
+      }
+      toJSON() {
+        const ret = this.type === null ? this.#parts.slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...this.#parts.map((p) => p.toJSON())];
+        if (this.isStart() && !this.type)
+          ret.unshift([]);
+        if (this.isEnd() && (this === this.#root || this.#root.#filledNegs && this.#parent?.type === "!")) {
+          ret.push({});
+        }
+        return ret;
+      }
+      isStart() {
+        if (this.#root === this)
+          return true;
+        if (!this.#parent?.isStart())
+          return false;
+        if (this.#parentIndex === 0)
+          return true;
+        const p = this.#parent;
+        for (let i = 0; i < this.#parentIndex; i++) {
+          const pp = p.#parts[i];
+          if (!(pp instanceof _a7 && pp.type === "!")) {
+            return false;
+          }
+        }
+        return true;
+      }
+      isEnd() {
+        if (this.#root === this)
+          return true;
+        if (this.#parent?.type === "!")
+          return true;
+        if (!this.#parent?.isEnd())
+          return false;
+        if (!this.type)
+          return this.#parent?.isEnd();
+        const pl = this.#parent ? this.#parent.#parts.length : 0;
+        return this.#parentIndex === pl - 1;
+      }
+      copyIn(part) {
+        if (typeof part === "string")
+          this.push(part);
+        else
+          this.push(part.clone(this));
+      }
+      clone(parent) {
+        const c = new _a7(this.type, parent);
+        for (const p of this.#parts) {
+          c.copyIn(p);
+        }
+        return c;
+      }
+      static #parseAST(str, ast, pos, opt, extDepth) {
+        const maxDepth = opt.maxExtglobRecursion ?? 2;
+        let escaping = false;
+        let inBrace = false;
+        let braceStart = -1;
+        let braceNeg = false;
+        if (ast.type === null) {
+          let i2 = pos;
+          let acc2 = "";
+          while (i2 < str.length) {
+            const c = str.charAt(i2++);
+            if (escaping || c === "\\") {
+              escaping = !escaping;
+              acc2 += c;
+              continue;
+            }
+            if (inBrace) {
+              if (i2 === braceStart + 1) {
+                if (c === "^" || c === "!") {
+                  braceNeg = true;
+                }
+              } else if (c === "]" && !(i2 === braceStart + 2 && braceNeg)) {
+                inBrace = false;
+              }
+              acc2 += c;
+              continue;
+            } else if (c === "[") {
+              inBrace = true;
+              braceStart = i2;
+              braceNeg = false;
+              acc2 += c;
+              continue;
+            }
+            const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i2) === "(" && extDepth <= maxDepth;
+            if (doRecurse) {
+              ast.push(acc2);
+              acc2 = "";
+              const ext = new _a7(c, ast);
+              i2 = _a7.#parseAST(str, ext, i2, opt, extDepth + 1);
+              ast.push(ext);
+              continue;
+            }
+            acc2 += c;
+          }
+          ast.push(acc2);
+          return i2;
+        }
+        let i = pos + 1;
+        let part = new _a7(null, ast);
+        const parts = [];
+        let acc = "";
+        while (i < str.length) {
+          const c = str.charAt(i++);
+          if (escaping || c === "\\") {
+            escaping = !escaping;
+            acc += c;
+            continue;
+          }
+          if (inBrace) {
+            if (i === braceStart + 1) {
+              if (c === "^" || c === "!") {
+                braceNeg = true;
+              }
+            } else if (c === "]" && !(i === braceStart + 2 && braceNeg)) {
+              inBrace = false;
+            }
+            acc += c;
+            continue;
+          } else if (c === "[") {
+            inBrace = true;
+            braceStart = i;
+            braceNeg = false;
+            acc += c;
+            continue;
+          }
+          const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i) === "(" && /* c8 ignore start - the maxDepth is sufficient here */
+          (extDepth <= maxDepth || ast && ast.#canAdoptType(c));
+          if (doRecurse) {
+            const depthAdd = ast && ast.#canAdoptType(c) ? 0 : 1;
+            part.push(acc);
+            acc = "";
+            const ext = new _a7(c, part);
+            part.push(ext);
+            i = _a7.#parseAST(str, ext, i, opt, extDepth + depthAdd);
+            continue;
+          }
+          if (c === "|") {
+            part.push(acc);
+            acc = "";
+            parts.push(part);
+            part = new _a7(null, ast);
+            continue;
+          }
+          if (c === ")") {
+            if (acc === "" && ast.#parts.length === 0) {
+              ast.#emptyExt = true;
+            }
+            part.push(acc);
+            acc = "";
+            ast.push(...parts, part);
+            return i;
+          }
+          acc += c;
+        }
+        ast.type = null;
+        ast.#hasMagic = void 0;
+        ast.#parts = [str.substring(pos - 1)];
+        return i;
+      }
+      #canAdoptWithSpace(child) {
+        return this.#canAdopt(child, adoptionWithSpaceMap);
+      }
+      #canAdopt(child, map = adoptionMap) {
+        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null) {
+          return false;
+        }
+        const gc = child.#parts[0];
+        if (!gc || typeof gc !== "object" || gc.type === null) {
+          return false;
+        }
+        return this.#canAdoptType(gc.type, map);
+      }
+      #canAdoptType(c, map = adoptionAnyMap) {
+        return !!map.get(this.type)?.includes(c);
+      }
+      #adoptWithSpace(child, index) {
+        const gc = child.#parts[0];
+        const blank = new _a7(null, gc, this.options);
+        blank.#parts.push("");
+        gc.push(blank);
+        this.#adopt(child, index);
+      }
+      #adopt(child, index) {
+        const gc = child.#parts[0];
+        this.#parts.splice(index, 1, ...gc.#parts);
+        for (const p of gc.#parts) {
+          if (typeof p === "object")
+            p.#parent = this;
+        }
+        this.#toString = void 0;
+      }
+      #canUsurpType(c) {
+        const m = usurpMap.get(this.type);
+        return !!m?.has(c);
+      }
+      #canUsurp(child) {
+        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null || this.#parts.length !== 1) {
+          return false;
+        }
+        const gc = child.#parts[0];
+        if (!gc || typeof gc !== "object" || gc.type === null) {
+          return false;
+        }
+        return this.#canUsurpType(gc.type);
+      }
+      #usurp(child) {
+        const m = usurpMap.get(this.type);
+        const gc = child.#parts[0];
+        const nt = m?.get(gc.type);
+        if (!nt)
+          return false;
+        this.#parts = gc.#parts;
+        for (const p of this.#parts) {
+          if (typeof p === "object") {
+            p.#parent = this;
+          }
+        }
+        this.type = nt;
+        this.#toString = void 0;
+        this.#emptyExt = false;
+      }
+      static fromGlob(pattern, options = {}) {
+        const ast = new _a7(null, void 0, options);
+        _a7.#parseAST(pattern, ast, 0, options, 0);
+        return ast;
+      }
+      // returns the regular expression if there's magic, or the unescaped
+      // string if not.
+      toMMPattern() {
+        if (this !== this.#root)
+          return this.#root.toMMPattern();
+        const glob2 = this.toString();
+        const [re, body, hasMagic, uflag] = this.toRegExpSource();
+        const anyMagic = hasMagic || this.#hasMagic || this.#options.nocase && !this.#options.nocaseMagicOnly && glob2.toUpperCase() !== glob2.toLowerCase();
+        if (!anyMagic) {
+          return body;
+        }
+        const flags = (this.#options.nocase ? "i" : "") + (uflag ? "u" : "");
+        return Object.assign(new RegExp(`^${re}$`, flags), {
+          _src: re,
+          _glob: glob2
+        });
+      }
+      get options() {
+        return this.#options;
+      }
+      // returns the string match, the regexp source, whether there's magic
+      // in the regexp (so a regular expression is required) and whether or
+      // not the uflag is needed for the regular expression (for posix classes)
+      // TODO: instead of injecting the start/end at this point, just return
+      // the BODY of the regexp, along with the start/end portions suitable
+      // for binding the start/end in either a joined full-path makeRe context
+      // (where we bind to (^|/), or a standalone matchPart context (where
+      // we bind to ^, and not /).  Otherwise slashes get duped!
+      //
+      // In part-matching mode, the start is:
+      // - if not isStart: nothing
+      // - if traversal possible, but not allowed: ^(?!\.\.?$)
+      // - if dots allowed or not possible: ^
+      // - if dots possible and not allowed: ^(?!\.)
+      // end is:
+      // - if not isEnd(): nothing
+      // - else: $
+      //
+      // In full-path matching mode, we put the slash at the START of the
+      // pattern, so start is:
+      // - if first pattern: same as part-matching mode
+      // - if not isStart(): nothing
+      // - if traversal possible, but not allowed: /(?!\.\.?(?:$|/))
+      // - if dots allowed or not possible: /
+      // - if dots possible and not allowed: /(?!\.)
+      // end is:
+      // - if last pattern, same as part-matching mode
+      // - else nothing
+      //
+      // Always put the (?:$|/) on negated tails, though, because that has to be
+      // there to bind the end of the negated pattern portion, and it's easier to
+      // just stick it in now rather than try to inject it later in the middle of
+      // the pattern.
+      //
+      // We can just always return the same end, and leave it up to the caller
+      // to know whether it's going to be used joined or in parts.
+      // And, if the start is adjusted slightly, can do the same there:
+      // - if not isStart: nothing
+      // - if traversal possible, but not allowed: (?:/|^)(?!\.\.?$)
+      // - if dots allowed or not possible: (?:/|^)
+      // - if dots possible and not allowed: (?:/|^)(?!\.)
+      //
+      // But it's better to have a simpler binding without a conditional, for
+      // performance, so probably better to return both start options.
+      //
+      // Then the caller just ignores the end if it's not the first pattern,
+      // and the start always gets applied.
+      //
+      // But that's always going to be $ if it's the ending pattern, or nothing,
+      // so the caller can just attach $ at the end of the pattern when building.
+      //
+      // So the todo is:
+      // - better detect what kind of start is needed
+      // - return both flavors of starting pattern
+      // - attach $ at the end of the pattern when creating the actual RegExp
+      //
+      // Ah, but wait, no, that all only applies to the root when the first pattern
+      // is not an extglob. If the first pattern IS an extglob, then we need all
+      // that dot prevention biz to live in the extglob portions, because eg
+      // +(*|.x*) can match .xy but not .yx.
+      //
+      // So, return the two flavors if it's #root and the first child is not an
+      // AST, otherwise leave it to the child AST to handle it, and there,
+      // use the (?:^|/) style of start binding.
+      //
+      // Even simplified further:
+      // - Since the start for a join is eg /(?!\.) and the start for a part
+      // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root
+      // or start or whatever) and prepend ^ or / at the Regexp construction.
+      toRegExpSource(allowDot) {
+        const dot = allowDot ?? !!this.#options.dot;
+        if (this.#root === this) {
+          this.#flatten();
+          this.#fillNegs();
+        }
+        if (!isExtglobAST(this)) {
+          const noEmpty = this.isStart() && this.isEnd() && !this.#parts.some((s) => typeof s !== "string");
+          const src = this.#parts.map((p) => {
+            const [re, _, hasMagic, uflag] = typeof p === "string" ? _a7.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot);
+            this.#hasMagic = this.#hasMagic || hasMagic;
+            this.#uflag = this.#uflag || uflag;
+            return re;
+          }).join("");
+          let start2 = "";
+          if (this.isStart()) {
+            if (typeof this.#parts[0] === "string") {
+              const dotTravAllowed = this.#parts.length === 1 && justDots.has(this.#parts[0]);
+              if (!dotTravAllowed) {
+                const aps = addPatternStart;
+                const needNoTrav = (
+                  // dots are allowed, and the pattern starts with [ or .
+                  dot && aps.has(src.charAt(0)) || // the pattern starts with \., and then [ or .
+                  src.startsWith("\\.") && aps.has(src.charAt(2)) || // the pattern starts with \.\., and then [ or .
+                  src.startsWith("\\.\\.") && aps.has(src.charAt(4))
+                );
+                const needNoDot = !dot && !allowDot && aps.has(src.charAt(0));
+                start2 = needNoTrav ? startNoTraversal : needNoDot ? startNoDot : "";
+              }
+            }
+          }
+          let end = "";
+          if (this.isEnd() && this.#root.#filledNegs && this.#parent?.type === "!") {
+            end = "(?:$|\\/)";
+          }
+          const final2 = start2 + src + end;
+          return [
+            final2,
+            (0, unescape_js_1.unescape)(src),
+            this.#hasMagic = !!this.#hasMagic,
+            this.#uflag
+          ];
+        }
+        const repeated = this.type === "*" || this.type === "+";
+        const start = this.type === "!" ? "(?:(?!(?:" : "(?:";
+        let body = this.#partsToRegExp(dot);
+        if (this.isStart() && this.isEnd() && !body && this.type !== "!") {
+          const s = this.toString();
+          const me = this;
+          me.#parts = [s];
+          me.type = null;
+          me.#hasMagic = void 0;
+          return [s, (0, unescape_js_1.unescape)(this.toString()), false, false];
+        }
+        let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : this.#partsToRegExp(true);
+        if (bodyDotAllowed === body) {
+          bodyDotAllowed = "";
+        }
+        if (bodyDotAllowed) {
+          body = `(?:${body})(?:${bodyDotAllowed})*?`;
+        }
+        let final = "";
+        if (this.type === "!" && this.#emptyExt) {
+          final = (this.isStart() && !dot ? startNoDot : "") + starNoEmpty;
+        } else {
+          const close = this.type === "!" ? (
+            // !() must match something,but !(x) can match ''
+            "))" + (this.isStart() && !dot && !allowDot ? startNoDot : "") + star + ")"
+          ) : this.type === "@" ? ")" : this.type === "?" ? ")?" : this.type === "+" && bodyDotAllowed ? ")" : this.type === "*" && bodyDotAllowed ? `)?` : `)${this.type}`;
+          final = start + body + close;
+        }
+        return [
+          final,
+          (0, unescape_js_1.unescape)(body),
+          this.#hasMagic = !!this.#hasMagic,
+          this.#uflag
+        ];
+      }
+      #flatten() {
+        if (!isExtglobAST(this)) {
+          for (const p of this.#parts) {
+            if (typeof p === "object") {
+              p.#flatten();
+            }
+          }
+        } else {
+          let iterations = 0;
+          let done = false;
+          do {
+            done = true;
+            for (let i = 0; i < this.#parts.length; i++) {
+              const c = this.#parts[i];
+              if (typeof c === "object") {
+                c.#flatten();
+                if (this.#canAdopt(c)) {
+                  done = false;
+                  this.#adopt(c, i);
+                } else if (this.#canAdoptWithSpace(c)) {
+                  done = false;
+                  this.#adoptWithSpace(c, i);
+                } else if (this.#canUsurp(c)) {
+                  done = false;
+                  this.#usurp(c);
+                }
+              }
+            }
+          } while (!done && ++iterations < 10);
+        }
+        this.#toString = void 0;
+      }
+      #partsToRegExp(dot) {
+        return this.#parts.map((p) => {
+          if (typeof p === "string") {
+            throw new Error("string type in extglob ast??");
+          }
+          const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot);
+          this.#uflag = this.#uflag || uflag;
+          return re;
+        }).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|");
+      }
+      static #parseGlob(glob2, hasMagic, noEmpty = false) {
+        let escaping = false;
+        let re = "";
+        let uflag = false;
+        let inStar = false;
+        for (let i = 0; i < glob2.length; i++) {
+          const c = glob2.charAt(i);
+          if (escaping) {
+            escaping = false;
+            re += (reSpecials.has(c) ? "\\" : "") + c;
+            continue;
+          }
+          if (c === "*") {
+            if (inStar)
+              continue;
+            inStar = true;
+            re += noEmpty && /^[*]+$/.test(glob2) ? starNoEmpty : star;
+            hasMagic = true;
+            continue;
+          } else {
+            inStar = false;
+          }
+          if (c === "\\") {
+            if (i === glob2.length - 1) {
+              re += "\\\\";
+            } else {
+              escaping = true;
+            }
+            continue;
+          }
+          if (c === "[") {
+            const [src, needUflag, consumed, magic] = (0, brace_expressions_js_1.parseClass)(glob2, i);
+            if (consumed) {
+              re += src;
+              uflag = uflag || needUflag;
+              i += consumed - 1;
+              hasMagic = hasMagic || magic;
+              continue;
+            }
+          }
+          if (c === "?") {
+            re += qmark;
+            hasMagic = true;
+            continue;
+          }
+          re += regExpEscape(c);
+        }
+        return [re, (0, unescape_js_1.unescape)(glob2), !!hasMagic, uflag];
+      }
+    };
+    exports2.AST = AST;
+    _a7 = AST;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js
+var require_escape = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.escape = void 0;
+    var escape = (s, { windowsPathsNoEscape = false, magicalBraces = false } = {}) => {
+      if (magicalBraces) {
+        return windowsPathsNoEscape ? s.replace(/[?*()[\]{}]/g, "[$&]") : s.replace(/[?*()[\]\\{}]/g, "\\$&");
+      }
+      return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&");
+    };
+    exports2.escape = escape;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js
+var require_commonjs3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.unescape = exports2.escape = exports2.AST = exports2.Minimatch = exports2.match = exports2.makeRe = exports2.braceExpand = exports2.defaults = exports2.filter = exports2.GLOBSTAR = exports2.sep = exports2.minimatch = void 0;
+    var brace_expansion_1 = require_commonjs2();
+    var assert_valid_pattern_js_1 = require_assert_valid_pattern();
+    var ast_js_1 = require_ast();
+    var escape_js_1 = require_escape();
+    var unescape_js_1 = require_unescape();
+    var minimatch4 = (p, pattern, options = {}) => {
+      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+      if (!options.nocomment && pattern.charAt(0) === "#") {
+        return false;
+      }
+      return new Minimatch(pattern, options).match(p);
+    };
+    exports2.minimatch = minimatch4;
+    var starDotExtRE = /^\*+([^+@!?*[(]*)$/;
+    var starDotExtTest = (ext2) => (f) => !f.startsWith(".") && f.endsWith(ext2);
+    var starDotExtTestDot = (ext2) => (f) => f.endsWith(ext2);
+    var starDotExtTestNocase = (ext2) => {
+      ext2 = ext2.toLowerCase();
+      return (f) => !f.startsWith(".") && f.toLowerCase().endsWith(ext2);
+    };
+    var starDotExtTestNocaseDot = (ext2) => {
+      ext2 = ext2.toLowerCase();
+      return (f) => f.toLowerCase().endsWith(ext2);
+    };
+    var starDotStarRE = /^\*+\.\*+$/;
+    var starDotStarTest = (f) => !f.startsWith(".") && f.includes(".");
+    var starDotStarTestDot = (f) => f !== "." && f !== ".." && f.includes(".");
+    var dotStarRE = /^\.\*+$/;
+    var dotStarTest = (f) => f !== "." && f !== ".." && f.startsWith(".");
+    var starRE = /^\*+$/;
+    var starTest = (f) => f.length !== 0 && !f.startsWith(".");
+    var starTestDot = (f) => f.length !== 0 && f !== "." && f !== "..";
+    var qmarksRE = /^\?+([^+@!?*[(]*)?$/;
+    var qmarksTestNocase = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExt([$0]);
+      if (!ext2)
+        return noext;
+      ext2 = ext2.toLowerCase();
+      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
+    };
+    var qmarksTestNocaseDot = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExtDot([$0]);
+      if (!ext2)
+        return noext;
+      ext2 = ext2.toLowerCase();
+      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
+    };
+    var qmarksTestDot = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExtDot([$0]);
+      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
+    };
+    var qmarksTest = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExt([$0]);
+      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
+    };
+    var qmarksTestNoExt = ([$0]) => {
+      const len = $0.length;
+      return (f) => f.length === len && !f.startsWith(".");
+    };
+    var qmarksTestNoExtDot = ([$0]) => {
+      const len = $0.length;
+      return (f) => f.length === len && f !== "." && f !== "..";
+    };
+    var defaultPlatform = typeof process === "object" && process ? typeof process.env === "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix";
+    var path23 = {
+      win32: { sep: "\\" },
+      posix: { sep: "/" }
+    };
+    exports2.sep = defaultPlatform === "win32" ? path23.win32.sep : path23.posix.sep;
+    exports2.minimatch.sep = exports2.sep;
+    exports2.GLOBSTAR = /* @__PURE__ */ Symbol("globstar **");
+    exports2.minimatch.GLOBSTAR = exports2.GLOBSTAR;
+    var qmark = "[^/]";
+    var star = qmark + "*?";
+    var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
+    var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
+    var filter = (pattern, options = {}) => (p) => (0, exports2.minimatch)(p, pattern, options);
+    exports2.filter = filter;
+    exports2.minimatch.filter = exports2.filter;
+    var ext = (a, b = {}) => Object.assign({}, a, b);
+    var defaults = (def) => {
+      if (!def || typeof def !== "object" || !Object.keys(def).length) {
+        return exports2.minimatch;
+      }
+      const orig = exports2.minimatch;
+      const m = (p, pattern, options = {}) => orig(p, pattern, ext(def, options));
+      return Object.assign(m, {
+        Minimatch: class Minimatch extends orig.Minimatch {
+          constructor(pattern, options = {}) {
+            super(pattern, ext(def, options));
+          }
+          static defaults(options) {
+            return orig.defaults(ext(def, options)).Minimatch;
+          }
+        },
+        AST: class AST extends orig.AST {
+          /* c8 ignore start */
+          constructor(type, parent, options = {}) {
+            super(type, parent, ext(def, options));
+          }
+          /* c8 ignore stop */
+          static fromGlob(pattern, options = {}) {
+            return orig.AST.fromGlob(pattern, ext(def, options));
+          }
+        },
+        unescape: (s, options = {}) => orig.unescape(s, ext(def, options)),
+        escape: (s, options = {}) => orig.escape(s, ext(def, options)),
+        filter: (pattern, options = {}) => orig.filter(pattern, ext(def, options)),
+        defaults: (options) => orig.defaults(ext(def, options)),
+        makeRe: (pattern, options = {}) => orig.makeRe(pattern, ext(def, options)),
+        braceExpand: (pattern, options = {}) => orig.braceExpand(pattern, ext(def, options)),
+        match: (list, pattern, options = {}) => orig.match(list, pattern, ext(def, options)),
+        sep: orig.sep,
+        GLOBSTAR: exports2.GLOBSTAR
+      });
+    };
+    exports2.defaults = defaults;
+    exports2.minimatch.defaults = exports2.defaults;
+    var braceExpand = (pattern, options = {}) => {
+      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+      if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
+        return [pattern];
+      }
+      return (0, brace_expansion_1.expand)(pattern, { max: options.braceExpandMax });
+    };
+    exports2.braceExpand = braceExpand;
+    exports2.minimatch.braceExpand = exports2.braceExpand;
+    var makeRe = (pattern, options = {}) => new Minimatch(pattern, options).makeRe();
+    exports2.makeRe = makeRe;
+    exports2.minimatch.makeRe = exports2.makeRe;
+    var match = (list, pattern, options = {}) => {
+      const mm = new Minimatch(pattern, options);
+      list = list.filter((f) => mm.match(f));
+      if (mm.options.nonull && !list.length) {
+        list.push(pattern);
+      }
+      return list;
+    };
+    exports2.match = match;
+    exports2.minimatch.match = exports2.match;
+    var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
+    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var Minimatch = class {
+      options;
+      set;
+      pattern;
+      windowsPathsNoEscape;
+      nonegate;
+      negate;
+      comment;
+      empty;
+      preserveMultipleSlashes;
+      partial;
+      globSet;
+      globParts;
+      nocase;
+      isWindows;
+      platform;
+      windowsNoMagicRoot;
+      maxGlobstarRecursion;
+      regexp;
+      constructor(pattern, options = {}) {
+        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+        options = options || {};
+        this.options = options;
+        this.maxGlobstarRecursion = options.maxGlobstarRecursion ?? 200;
+        this.pattern = pattern;
+        this.platform = options.platform || defaultPlatform;
+        this.isWindows = this.platform === "win32";
+        const awe = "allowWindowsEscape";
+        this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options[awe] === false;
+        if (this.windowsPathsNoEscape) {
+          this.pattern = this.pattern.replace(/\\/g, "/");
+        }
+        this.preserveMultipleSlashes = !!options.preserveMultipleSlashes;
+        this.regexp = null;
+        this.negate = false;
+        this.nonegate = !!options.nonegate;
+        this.comment = false;
+        this.empty = false;
+        this.partial = !!options.partial;
+        this.nocase = !!this.options.nocase;
+        this.windowsNoMagicRoot = options.windowsNoMagicRoot !== void 0 ? options.windowsNoMagicRoot : !!(this.isWindows && this.nocase);
+        this.globSet = [];
+        this.globParts = [];
+        this.set = [];
+        this.make();
+      }
+      hasMagic() {
+        if (this.options.magicalBraces && this.set.length > 1) {
+          return true;
+        }
+        for (const pattern of this.set) {
+          for (const part of pattern) {
+            if (typeof part !== "string")
+              return true;
+          }
+        }
+        return false;
+      }
+      debug(..._) {
+      }
+      make() {
+        const pattern = this.pattern;
+        const options = this.options;
+        if (!options.nocomment && pattern.charAt(0) === "#") {
+          this.comment = true;
+          return;
+        }
+        if (!pattern) {
+          this.empty = true;
+          return;
+        }
+        this.parseNegate();
+        this.globSet = [...new Set(this.braceExpand())];
+        if (options.debug) {
+          this.debug = (...args) => console.error(...args);
+        }
+        this.debug(this.pattern, this.globSet);
+        const rawGlobParts = this.globSet.map((s) => this.slashSplit(s));
+        this.globParts = this.preprocess(rawGlobParts);
+        this.debug(this.pattern, this.globParts);
+        let set = this.globParts.map((s, _, __) => {
+          if (this.isWindows && this.windowsNoMagicRoot) {
+            const isUNC = s[0] === "" && s[1] === "" && (s[2] === "?" || !globMagic.test(s[2])) && !globMagic.test(s[3]);
+            const isDrive = /^[a-z]:/i.test(s[0]);
+            if (isUNC) {
+              return [
+                ...s.slice(0, 4),
+                ...s.slice(4).map((ss) => this.parse(ss))
+              ];
+            } else if (isDrive) {
+              return [s[0], ...s.slice(1).map((ss) => this.parse(ss))];
+            }
+          }
+          return s.map((ss) => this.parse(ss));
+        });
+        this.debug(this.pattern, set);
+        this.set = set.filter((s) => s.indexOf(false) === -1);
+        if (this.isWindows) {
+          for (let i = 0; i < this.set.length; i++) {
+            const p = this.set[i];
+            if (p[0] === "" && p[1] === "" && this.globParts[i][2] === "?" && typeof p[3] === "string" && /^[a-z]:$/i.test(p[3])) {
+              p[2] = "?";
+            }
+          }
+        }
+        this.debug(this.pattern, this.set);
+      }
+      // various transforms to equivalent pattern sets that are
+      // faster to process in a filesystem walk.  The goal is to
+      // eliminate what we can, and push all ** patterns as far
+      // to the right as possible, even if it increases the number
+      // of patterns that we have to process.
+      preprocess(globParts) {
+        if (this.options.noglobstar) {
+          for (const partset of globParts) {
+            for (let j = 0; j < partset.length; j++) {
+              if (partset[j] === "**") {
+                partset[j] = "*";
+              }
+            }
+          }
+        }
+        const { optimizationLevel = 1 } = this.options;
+        if (optimizationLevel >= 2) {
+          globParts = this.firstPhasePreProcess(globParts);
+          globParts = this.secondPhasePreProcess(globParts);
+        } else if (optimizationLevel >= 1) {
+          globParts = this.levelOneOptimize(globParts);
+        } else {
+          globParts = this.adjascentGlobstarOptimize(globParts);
+        }
+        return globParts;
+      }
+      // just get rid of adjascent ** portions
+      adjascentGlobstarOptimize(globParts) {
+        return globParts.map((parts) => {
+          let gs = -1;
+          while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+            let i = gs;
+            while (parts[i + 1] === "**") {
+              i++;
+            }
+            if (i !== gs) {
+              parts.splice(gs, i - gs);
+            }
+          }
+          return parts;
+        });
+      }
+      // get rid of adjascent ** and resolve .. portions
+      levelOneOptimize(globParts) {
+        return globParts.map((parts) => {
+          parts = parts.reduce((set, part) => {
+            const prev = set[set.length - 1];
+            if (part === "**" && prev === "**") {
+              return set;
+            }
+            if (part === "..") {
+              if (prev && prev !== ".." && prev !== "." && prev !== "**") {
+                set.pop();
+                return set;
+              }
+            }
+            set.push(part);
+            return set;
+          }, []);
+          return parts.length === 0 ? [""] : parts;
+        });
+      }
+      levelTwoFileOptimize(parts) {
+        if (!Array.isArray(parts)) {
+          parts = this.slashSplit(parts);
+        }
+        let didSomething = false;
+        do {
+          didSomething = false;
+          if (!this.preserveMultipleSlashes) {
+            for (let i = 1; i < parts.length - 1; i++) {
+              const p = parts[i];
+              if (i === 1 && p === "" && parts[0] === "")
+                continue;
+              if (p === "." || p === "") {
+                didSomething = true;
+                parts.splice(i, 1);
+                i--;
+              }
+            }
+            if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+              didSomething = true;
+              parts.pop();
+            }
+          }
+          let dd = 0;
+          while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+            const p = parts[dd - 1];
+            if (p && p !== "." && p !== ".." && p !== "**" && !(this.isWindows && /^[a-z]:$/i.test(p))) {
+              didSomething = true;
+              parts.splice(dd - 1, 2);
+              dd -= 2;
+            }
+          }
+        } while (didSomething);
+        return parts.length === 0 ? [""] : parts;
+      }
+      // First phase: single-pattern processing
+      // 
 is 1 or more portions
+      //  is 1 or more portions
+      // 

is any portion other than ., .., '', or ** + // is . or '' + // + // **/.. is *brutal* for filesystem walking performance, because + // it effectively resets the recursive walk each time it occurs, + // and ** cannot be reduced out by a .. pattern part like a regexp + // or most strings (other than .., ., and '') can be. + // + //

/**/../

/

/ -> {

/../

/

/,

/**/

/

/} + //

// -> 
/
+      // 
/

/../ ->

/
+      // **/**/ -> **/
+      //
+      // **/*/ -> */**/ <== not valid because ** doesn't follow
+      // this WOULD be allowed if ** did follow symlinks, or * didn't
+      firstPhasePreProcess(globParts) {
+        let didSomething = false;
+        do {
+          didSomething = false;
+          for (let parts of globParts) {
+            let gs = -1;
+            while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+              let gss = gs;
+              while (parts[gss + 1] === "**") {
+                gss++;
+              }
+              if (gss > gs) {
+                parts.splice(gs + 1, gss - gs);
+              }
+              let next = parts[gs + 1];
+              const p = parts[gs + 2];
+              const p2 = parts[gs + 3];
+              if (next !== "..")
+                continue;
+              if (!p || p === "." || p === ".." || !p2 || p2 === "." || p2 === "..") {
+                continue;
+              }
+              didSomething = true;
+              parts.splice(gs, 1);
+              const other = parts.slice(0);
+              other[gs] = "**";
+              globParts.push(other);
+              gs--;
+            }
+            if (!this.preserveMultipleSlashes) {
+              for (let i = 1; i < parts.length - 1; i++) {
+                const p = parts[i];
+                if (i === 1 && p === "" && parts[0] === "")
+                  continue;
+                if (p === "." || p === "") {
+                  didSomething = true;
+                  parts.splice(i, 1);
+                  i--;
+                }
+              }
+              if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+                didSomething = true;
+                parts.pop();
+              }
+            }
+            let dd = 0;
+            while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+              const p = parts[dd - 1];
+              if (p && p !== "." && p !== ".." && p !== "**") {
+                didSomething = true;
+                const needDot = dd === 1 && parts[dd + 1] === "**";
+                const splin = needDot ? ["."] : [];
+                parts.splice(dd - 1, 2, ...splin);
+                if (parts.length === 0)
+                  parts.push("");
+                dd -= 2;
+              }
+            }
+          }
+        } while (didSomething);
+        return globParts;
+      }
+      // second phase: multi-pattern dedupes
+      // {
/*/,
/

/} ->

/*/
+      // {
/,
/} -> 
/
+      // {
/**/,
/} -> 
/**/
+      //
+      // {
/**/,
/**/

/} ->

/**/
+      // ^-- not valid because ** doens't follow symlinks
+      secondPhasePreProcess(globParts) {
+        for (let i = 0; i < globParts.length - 1; i++) {
+          for (let j = i + 1; j < globParts.length; j++) {
+            const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
+            if (matched) {
+              globParts[i] = [];
+              globParts[j] = matched;
+              break;
+            }
+          }
+        }
+        return globParts.filter((gs) => gs.length);
+      }
+      partsMatch(a, b, emptyGSMatch = false) {
+        let ai = 0;
+        let bi = 0;
+        let result = [];
+        let which = "";
+        while (ai < a.length && bi < b.length) {
+          if (a[ai] === b[bi]) {
+            result.push(which === "b" ? b[bi] : a[ai]);
+            ai++;
+            bi++;
+          } else if (emptyGSMatch && a[ai] === "**" && b[bi] === a[ai + 1]) {
+            result.push(a[ai]);
+            ai++;
+          } else if (emptyGSMatch && b[bi] === "**" && a[ai] === b[bi + 1]) {
+            result.push(b[bi]);
+            bi++;
+          } else if (a[ai] === "*" && b[bi] && (this.options.dot || !b[bi].startsWith(".")) && b[bi] !== "**") {
+            if (which === "b")
+              return false;
+            which = "a";
+            result.push(a[ai]);
+            ai++;
+            bi++;
+          } else if (b[bi] === "*" && a[ai] && (this.options.dot || !a[ai].startsWith(".")) && a[ai] !== "**") {
+            if (which === "a")
+              return false;
+            which = "b";
+            result.push(b[bi]);
+            ai++;
+            bi++;
+          } else {
+            return false;
+          }
+        }
+        return a.length === b.length && result;
+      }
+      parseNegate() {
+        if (this.nonegate)
+          return;
+        const pattern = this.pattern;
+        let negate = false;
+        let negateOffset = 0;
+        for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) {
+          negate = !negate;
+          negateOffset++;
+        }
+        if (negateOffset)
+          this.pattern = pattern.slice(negateOffset);
+        this.negate = negate;
+      }
+      // set partial to true to test if, for example,
+      // "/a/b" matches the start of "/*/b/*/d"
+      // Partial means, if you run out of file before you run
+      // out of pattern, then that's fine, as long as all
+      // the parts match.
+      matchOne(file, pattern, partial = false) {
+        let fileStartIndex = 0;
+        let patternStartIndex = 0;
+        if (this.isWindows) {
+          const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
+          const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
+          const patternDrive = typeof pattern[0] === "string" && /^[a-z]:$/i.test(pattern[0]);
+          const patternUNC = !patternDrive && pattern[0] === "" && pattern[1] === "" && pattern[2] === "?" && typeof pattern[3] === "string" && /^[a-z]:$/i.test(pattern[3]);
+          const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
+          const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
+          if (typeof fdi === "number" && typeof pdi === "number") {
+            const [fd, pd] = [
+              file[fdi],
+              pattern[pdi]
+            ];
+            if (fd.toLowerCase() === pd.toLowerCase()) {
+              pattern[pdi] = fd;
+              patternStartIndex = pdi;
+              fileStartIndex = fdi;
+            }
+          }
+        }
+        const { optimizationLevel = 1 } = this.options;
+        if (optimizationLevel >= 2) {
+          file = this.levelTwoFileOptimize(file);
+        }
+        if (pattern.includes(exports2.GLOBSTAR)) {
+          return this.#matchGlobstar(file, pattern, partial, fileStartIndex, patternStartIndex);
+        }
+        return this.#matchOne(file, pattern, partial, fileStartIndex, patternStartIndex);
+      }
+      #matchGlobstar(file, pattern, partial, fileIndex, patternIndex) {
+        const firstgs = pattern.indexOf(exports2.GLOBSTAR, patternIndex);
+        const lastgs = pattern.lastIndexOf(exports2.GLOBSTAR);
+        const [head, body, tail] = partial ? [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1),
+          []
+        ] : [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1, lastgs),
+          pattern.slice(lastgs + 1)
+        ];
+        if (head.length) {
+          const fileHead = file.slice(fileIndex, fileIndex + head.length);
+          if (!this.#matchOne(fileHead, head, partial, 0, 0)) {
+            return false;
+          }
+          fileIndex += head.length;
+          patternIndex += head.length;
+        }
+        let fileTailMatch = 0;
+        if (tail.length) {
+          if (tail.length + fileIndex > file.length)
+            return false;
+          let tailStart = file.length - tail.length;
+          if (this.#matchOne(file, tail, partial, tailStart, 0)) {
+            fileTailMatch = tail.length;
+          } else {
+            if (file[file.length - 1] !== "" || fileIndex + tail.length === file.length) {
+              return false;
+            }
+            tailStart--;
+            if (!this.#matchOne(file, tail, partial, tailStart, 0)) {
+              return false;
+            }
+            fileTailMatch = tail.length + 1;
+          }
+        }
+        if (!body.length) {
+          let sawSome = !!fileTailMatch;
+          for (let i2 = fileIndex; i2 < file.length - fileTailMatch; i2++) {
+            const f = String(file[i2]);
+            sawSome = true;
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return partial || sawSome;
+        }
+        const bodySegments = [[[], 0]];
+        let currentBody = bodySegments[0];
+        let nonGsParts = 0;
+        const nonGsPartsSums = [0];
+        for (const b of body) {
+          if (b === exports2.GLOBSTAR) {
+            nonGsPartsSums.push(nonGsParts);
+            currentBody = [[], 0];
+            bodySegments.push(currentBody);
+          } else {
+            currentBody[0].push(b);
+            nonGsParts++;
+          }
+        }
+        let i = bodySegments.length - 1;
+        const fileLength = file.length - fileTailMatch;
+        for (const b of bodySegments) {
+          b[1] = fileLength - (nonGsPartsSums[i--] + b[0].length);
+        }
+        return !!this.#matchGlobStarBodySections(file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
+      }
+      // return false for "nope, not matching"
+      // return null for "not matching, cannot keep trying"
+      #matchGlobStarBodySections(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
+        const bs = bodySegments[bodyIndex];
+        if (!bs) {
+          for (let i = fileIndex; i < file.length; i++) {
+            sawTail = true;
+            const f = file[i];
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return sawTail;
+        }
+        const [body, after] = bs;
+        while (fileIndex <= after) {
+          const m = this.#matchOne(file.slice(0, fileIndex + body.length), body, partial, fileIndex, 0);
+          if (m && globStarDepth < this.maxGlobstarRecursion) {
+            const sub = this.#matchGlobStarBodySections(file, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
+            if (sub !== false) {
+              return sub;
+            }
+          }
+          const f = file[fileIndex];
+          if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+            return false;
+          }
+          fileIndex++;
+        }
+        return partial || null;
+      }
+      #matchOne(file, pattern, partial, fileIndex, patternIndex) {
+        let fi;
+        let pi;
+        let pl;
+        let fl;
+        for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
+          this.debug("matchOne loop");
+          let p = pattern[pi];
+          let f = file[fi];
+          this.debug(pattern, p, f);
+          if (p === false || p === exports2.GLOBSTAR) {
+            return false;
+          }
+          let hit;
+          if (typeof p === "string") {
+            hit = f === p;
+            this.debug("string match", p, f, hit);
+          } else {
+            hit = p.test(f);
+            this.debug("pattern match", p, f, hit);
+          }
+          if (!hit)
+            return false;
+        }
+        if (fi === fl && pi === pl) {
+          return true;
+        } else if (fi === fl) {
+          return partial;
+        } else if (pi === pl) {
+          return fi === fl - 1 && file[fi] === "";
+        } else {
+          throw new Error("wtf?");
+        }
+      }
+      braceExpand() {
+        return (0, exports2.braceExpand)(this.pattern, this.options);
+      }
+      parse(pattern) {
+        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+        const options = this.options;
+        if (pattern === "**")
+          return exports2.GLOBSTAR;
+        if (pattern === "")
+          return "";
+        let m;
+        let fastTest = null;
+        if (m = pattern.match(starRE)) {
+          fastTest = options.dot ? starTestDot : starTest;
+        } else if (m = pattern.match(starDotExtRE)) {
+          fastTest = (options.nocase ? options.dot ? starDotExtTestNocaseDot : starDotExtTestNocase : options.dot ? starDotExtTestDot : starDotExtTest)(m[1]);
+        } else if (m = pattern.match(qmarksRE)) {
+          fastTest = (options.nocase ? options.dot ? qmarksTestNocaseDot : qmarksTestNocase : options.dot ? qmarksTestDot : qmarksTest)(m);
+        } else if (m = pattern.match(starDotStarRE)) {
+          fastTest = options.dot ? starDotStarTestDot : starDotStarTest;
+        } else if (m = pattern.match(dotStarRE)) {
+          fastTest = dotStarTest;
+        }
+        const re = ast_js_1.AST.fromGlob(pattern, this.options).toMMPattern();
+        if (fastTest && typeof re === "object") {
+          Reflect.defineProperty(re, "test", { value: fastTest });
+        }
+        return re;
+      }
+      makeRe() {
+        if (this.regexp || this.regexp === false)
+          return this.regexp;
+        const set = this.set;
+        if (!set.length) {
+          this.regexp = false;
+          return this.regexp;
+        }
+        const options = this.options;
+        const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
+        const flags = new Set(options.nocase ? ["i"] : []);
+        let re = set.map((pattern) => {
+          const pp = pattern.map((p) => {
+            if (p instanceof RegExp) {
+              for (const f of p.flags.split(""))
+                flags.add(f);
+            }
+            return typeof p === "string" ? regExpEscape(p) : p === exports2.GLOBSTAR ? exports2.GLOBSTAR : p._src;
+          });
+          pp.forEach((p, i) => {
+            const next = pp[i + 1];
+            const prev = pp[i - 1];
+            if (p !== exports2.GLOBSTAR || prev === exports2.GLOBSTAR) {
+              return;
+            }
+            if (prev === void 0) {
+              if (next !== void 0 && next !== exports2.GLOBSTAR) {
+                pp[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + next;
+              } else {
+                pp[i] = twoStar;
+              }
+            } else if (next === void 0) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + ")?";
+            } else if (next !== exports2.GLOBSTAR) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next;
+              pp[i + 1] = exports2.GLOBSTAR;
+            }
+          });
+          const filtered = pp.filter((p) => p !== exports2.GLOBSTAR);
+          if (this.partial && filtered.length >= 1) {
+            const prefixes = [];
+            for (let i = 1; i <= filtered.length; i++) {
+              prefixes.push(filtered.slice(0, i).join("/"));
+            }
+            return "(?:" + prefixes.join("|") + ")";
+          }
+          return filtered.join("/");
+        }).join("|");
+        const [open, close] = set.length > 1 ? ["(?:", ")"] : ["", ""];
+        re = "^" + open + re + close + "$";
+        if (this.partial) {
+          re = "^(?:\\/|" + open + re.slice(1, -1) + close + ")$";
+        }
+        if (this.negate)
+          re = "^(?!" + re + ").+$";
+        try {
+          this.regexp = new RegExp(re, [...flags].join(""));
+        } catch {
+          this.regexp = false;
+        }
+        return this.regexp;
+      }
+      slashSplit(p) {
+        if (this.preserveMultipleSlashes) {
+          return p.split("/");
+        } else if (this.isWindows && /^\/\/[^/]+/.test(p)) {
+          return ["", ...p.split(/\/+/)];
+        } else {
+          return p.split(/\/+/);
+        }
+      }
+      match(f, partial = this.partial) {
+        this.debug("match", f, this.pattern);
+        if (this.comment) {
+          return false;
+        }
+        if (this.empty) {
+          return f === "";
+        }
+        if (f === "/" && partial) {
+          return true;
+        }
+        const options = this.options;
+        if (this.isWindows) {
+          f = f.split("\\").join("/");
+        }
+        const ff = this.slashSplit(f);
+        this.debug(this.pattern, "split", ff);
+        const set = this.set;
+        this.debug(this.pattern, "set", set);
+        let filename = ff[ff.length - 1];
+        if (!filename) {
+          for (let i = ff.length - 2; !filename && i >= 0; i--) {
+            filename = ff[i];
+          }
+        }
+        for (const pattern of set) {
+          let file = ff;
+          if (options.matchBase && pattern.length === 1) {
+            file = [filename];
+          }
+          const hit = this.matchOne(file, pattern, partial);
+          if (hit) {
+            if (options.flipNegate) {
+              return true;
+            }
+            return !this.negate;
+          }
+        }
+        if (options.flipNegate) {
+          return false;
+        }
+        return this.negate;
+      }
+      static defaults(def) {
+        return exports2.minimatch.defaults(def).Minimatch;
+      }
+    };
+    exports2.Minimatch = Minimatch;
+    var ast_js_2 = require_ast();
+    Object.defineProperty(exports2, "AST", { enumerable: true, get: function() {
+      return ast_js_2.AST;
+    } });
+    var escape_js_2 = require_escape();
+    Object.defineProperty(exports2, "escape", { enumerable: true, get: function() {
+      return escape_js_2.escape;
+    } });
+    var unescape_js_2 = require_unescape();
+    Object.defineProperty(exports2, "unescape", { enumerable: true, get: function() {
+      return unescape_js_2.unescape;
+    } });
+    exports2.minimatch.AST = ast_js_1.AST;
+    exports2.minimatch.Minimatch = Minimatch;
+    exports2.minimatch.escape = escape_js_1.escape;
+    exports2.minimatch.unescape = unescape_js_1.unescape;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/ignore.ts
+var path, import_dockerignore, import_ignore, minimatch, IgnoreStrategy, GlobIgnoreStrategy, GitIgnoreStrategy, DockerIgnoreStrategy;
+var init_ignore = __esm({
+  "../../aws-cdk-lib/core/lib/fs/ignore.ts"() {
+    "use strict";
+    path = __toESM(require("path"));
+    import_dockerignore = __toESM(require_ignore());
+    import_ignore = __toESM(require_ignore2());
+    init_options();
+    init_errors();
+    init_literal_string();
+    ({ minimatch } = require_commonjs3());
+    IgnoreStrategy = class {
+      /**
+       * Ignores file paths based on simple glob patterns.
+       *
+       * @returns `GlobIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static glob(absoluteRootPath, patterns) {
+        return new GlobIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.gitignore specification`](https://git-scm.com/docs/gitignore).
+       *
+       * @returns `GitIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static git(absoluteRootPath, patterns) {
+        return new GitIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.dockerignore specification`](https://docs.docker.com/engine/reference/builder/#dockerignore-file).
+       *
+       * @returns `DockerIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static docker(absoluteRootPath, patterns) {
+        return new DockerIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Creates an IgnoreStrategy based on the `ignoreMode` and `exclude` in a `CopyOptions`.
+       *
+       * @returns `IgnoreStrategy` based on the `CopyOptions`
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       * @param options the `CopyOptions` to create the `IgnoreStrategy` from
+       */
+      static fromCopyOptions(options, absoluteRootPath) {
+        const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+        const exclude = options.exclude || [];
+        switch (ignoreMode) {
+          case "glob" /* GLOB */:
+            return this.glob(absoluteRootPath, exclude);
+          case "git" /* GIT */:
+            return this.git(absoluteRootPath, exclude);
+          case "docker" /* DOCKER */:
+            return this.docker(absoluteRootPath, exclude);
+        }
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        return this.ignores(absoluteDirectoryPath);
+      }
+    };
+    GlobIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      patterns;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyExpectsAbsolute`, "GlobIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.patterns = patterns;
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.patterns.push(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyIgnoresExpects`, "GlobIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        let excludeOutput = false;
+        for (const pattern of this.patterns) {
+          const negate = pattern.startsWith("!");
+          const match = minimatch(relativePath, pattern, { matchBase: true, flipNegate: true });
+          if (!negate && match) {
+            excludeOutput = true;
+          }
+          if (negate && match) {
+            excludeOutput = false;
+          }
+        }
+        return excludeOutput;
+      }
+    };
+    GitIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyExpectsAbsolute`, "GitIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.ignore = (0, import_ignore.default)().add(patterns);
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyIgnoresExpects`, "GitIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        return this.ignore.ignores(relativePath);
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        if (!path.isAbsolute(absoluteDirectoryPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyCompletelyIgnores`, "GitIgnoreStrategy.completelyIgnores() expects an absolute path");
+        }
+        const relativePath = path.relative(this.absoluteRootPath, absoluteDirectoryPath);
+        const relativePathWithSep = relativePath.endsWith(path.sep) ? relativePath : relativePath + path.sep;
+        return this.ignore.ignores(relativePathWithSep);
+      }
+    };
+    DockerIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      completeIgnore;
+      // Follows negation rules as describe in @balena/dockerignore
+      // See https://www.npmjs.com/package/@balena/dockerignore#exclusion-patterns
+      negativeIgnoreRegex = /^\s*(\!|\/\!)(.*)/;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyExpectsAbsolute`, "DockerIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.completeIgnore = (0, import_dockerignore.default)();
+        this.ignore = (0, import_dockerignore.default)();
+        for (const pattern of patterns) {
+          this.add(pattern);
+        }
+      }
+      /**
+       * Adds the pattern to completeIgnore. If its an exclude pattern, it also adds an entry for each parent directory.
+       * This is useful in detecting folders that are ignored, but that could have children files which are not ignored.
+       *
+       * @param pattern pattern to add
+       */
+      completelyAdd(pattern) {
+        this.completeIgnore.add(pattern);
+        const negativeMatch = pattern.match(this.negativeIgnoreRegex);
+        if (negativeMatch !== null) {
+          let dirname6 = negativeMatch[2];
+          while (true) {
+            dirname6 = path.dirname(dirname6);
+            if (dirname6 === "/" || dirname6 === ".") {
+              break;
+            }
+            this.completeIgnore.add(negativeMatch[1] + dirname6);
+          }
+        }
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+        this.completelyAdd(pattern);
+      }
+      getRelativePath(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyIgnoresExpects`, "DockerIgnoreStrategy.ignores() expects an absolute path");
+        }
+        return path.relative(this.absoluteRootPath, absoluteFilePath);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        return this.ignore.ignores(this.getRelativePath(absoluteFilePath));
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        const relativePath = this.getRelativePath(absoluteDirectoryPath);
+        return this.ignore.ignores(relativePath) && this.completeIgnore.ignores(relativePath);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/utils.ts
+function isInternalPath(rootPath, targetPath) {
+  return rootPath === targetPath || targetPath.startsWith(rootPath + path2.sep);
+}
+function resolveLinkTarget(realPath, linkTarget) {
+  return path2.isAbsolute(linkTarget) ? path2.resolve(linkTarget) : path2.resolve(path2.dirname(realPath), linkTarget);
+}
+function walkDirectory(directory, options, visitor) {
+  const { follow, ignoreStrategy } = options;
+  const canonicalRoot = realPathOrSelf(options.root ?? directory);
+  const ancestors = /* @__PURE__ */ new Set();
+  walk(directory, directory, realPathOrSelf(directory));
+  function walk(symbolicPath, realPath, canonicalPath) {
+    if (ancestors.has(canonicalPath)) {
+      return;
+    }
+    ancestors.add(canonicalPath);
+    const entries = fs2.readdirSync(realPath, { withFileTypes: true });
+    entries.sort((a, b) => a.name < b.name ? -1 : a.name > b.name ? 1 : 0);
+    for (const entry of entries) {
+      const childPath = path2.join(symbolicPath, entry.name);
+      const childRealPath = path2.join(realPath, entry.name);
+      if (entry.isSymbolicLink()) {
+        visitSymlink(childPath, childRealPath);
+      } else if (entry.isDirectory()) {
+        visitDirectory(childPath, childRealPath, path2.join(canonicalPath, entry.name));
+      } else if (entry.isFile()) {
+        visitFile({ path: childPath, realPath: childRealPath });
+      }
+    }
+    ancestors.delete(canonicalPath);
+  }
+  function visitDirectory(symbolicPath, realPath, canonicalPath) {
+    if (ignoreStrategy.completelyIgnores(symbolicPath)) {
+      return;
+    }
+    if (visitor.onDirectory) {
+      visitor.onDirectory({ path: symbolicPath, realPath, ignored: ignoreStrategy.ignores(symbolicPath) });
+    }
+    walk(symbolicPath, realPath, canonicalPath);
+  }
+  function visitFile(entry) {
+    if (!ignoreStrategy.ignores(entry.path)) {
+      visitor.onFile?.(entry);
+    }
+  }
+  function visitSymlink(symbolicPath, realPath) {
+    const linkTarget = fs2.readlinkSync(realPath);
+    const resolvedLinkTarget = canonicalLinkTarget(resolveLinkTarget(realPath, linkTarget));
+    const internal = isInternalPath(canonicalRoot, resolvedLinkTarget);
+    const targetStats = shouldFollow(internal) ? tryStat(resolvedLinkTarget) : void 0;
+    if (!targetStats) {
+      if (!ignoreStrategy.ignores(symbolicPath)) {
+        visitor.onSymlink?.({ path: symbolicPath, realPath, linkTarget, resolvedLinkTarget, internal });
+      }
+      return;
+    }
+    if (targetStats.isDirectory()) {
+      visitDirectory(symbolicPath, resolvedLinkTarget, realPathOrSelf(resolvedLinkTarget));
+    } else if (targetStats.isFile()) {
+      visitFile({ path: symbolicPath, realPath: resolvedLinkTarget, stats: targetStats });
+    } else if (!ignoreStrategy.ignores(symbolicPath)) {
+      visitor.onUnsupported?.({ path: symbolicPath, realPath: resolvedLinkTarget });
+    }
+  }
+  function shouldFollow(internal) {
+    switch (follow) {
+      case "always" /* ALWAYS */:
+        return true;
+      case "external" /* EXTERNAL */:
+        return !internal;
+      case "internal-only" /* BLOCK_EXTERNAL */:
+        return internal;
+      case "never" /* NEVER */:
+      default:
+        return false;
+    }
+  }
+}
+function canonicalLinkTarget(target) {
+  return path2.join(realPathOrSelf(path2.dirname(target)), path2.basename(target));
+}
+function realPathOrSelf(target) {
+  try {
+    return fs2.realpathSync(target);
+  } catch {
+    return target;
+  }
+}
+function tryStat(target) {
+  try {
+    return fs2.statSync(target, { bigint: true });
+  } catch {
+    return void 0;
+  }
+}
+var fs2, path2;
+var init_utils = __esm({
+  "../../aws-cdk-lib/core/lib/fs/utils.ts"() {
+    "use strict";
+    fs2 = __toESM(require("fs"));
+    path2 = __toESM(require("path"));
+    init_options();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/copy.ts
+function copyDirectory(srcDir, destDir, options = {}, rootDir) {
+  const follow = options.follow ?? "external" /* EXTERNAL */;
+  const root = rootDir || srcDir;
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  if (!fs3.statSync(srcDir).isDirectory()) {
+    throw new UnscopedValidationError(lit`Directory`, `${srcDir} is not a directory`);
+  }
+  const canonicalSrcDir = fs3.realpathSync(srcDir);
+  walkDirectory(srcDir, { follow, ignoreStrategy, root }, {
+    onDirectory: (entry) => {
+      if (!entry.ignored) {
+        fs3.mkdirSync(destinationOf(entry.path), { recursive: true });
+      }
+    },
+    onFile: (entry) => {
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.copyFileSync(entry.realPath, destination);
+    },
+    onSymlink: (entry) => {
+      if (follow === "internal-only" /* BLOCK_EXTERNAL */ && !entry.internal) {
+        throw new UnscopedValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${follow}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`
+        );
+      }
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.symlinkSync(linkTextFor(entry, destination), destination);
+    }
+  });
+  function destinationOf(sourcePath) {
+    return path3.join(destDir, path3.relative(srcDir, sourcePath));
+  }
+  function linkTextFor(entry, destination) {
+    if (!isInternalPath(canonicalSrcDir, entry.resolvedLinkTarget)) {
+      return entry.linkTarget;
+    }
+    const copiedTarget = path3.join(destDir, path3.relative(canonicalSrcDir, entry.resolvedLinkTarget));
+    return path3.relative(path3.dirname(destination), copiedTarget) || ".";
+  }
+}
+var fs3, path3;
+var init_copy = __esm({
+  "../../aws-cdk-lib/core/lib/fs/copy.ts"() {
+    "use strict";
+    fs3 = __toESM(require("fs"));
+    path3 = __toESM(require("path"));
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts
+var crypto3, fs4, os, path4, CACHE_DIR, MAX_ENTRIES, MAX_CACHE_FILES, FingerprintDiskCache;
+var init_fingerprint_disk_cache = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts"() {
+    "use strict";
+    crypto3 = __toESM(require("crypto"));
+    fs4 = __toESM(require("fs"));
+    os = __toESM(require("os"));
+    path4 = __toESM(require("path"));
+    CACHE_DIR = path4.join(os.homedir(), ".cdk", "cache", "fingerprints");
+    MAX_ENTRIES = 1e5;
+    MAX_CACHE_FILES = 50;
+    FingerprintDiskCache = class {
+      cache;
+      dirty = false;
+      cacheFile;
+      /**
+       * Create a FingerprintDiskCache
+       *
+       * The `directoryPath` argument is expected to be pre-resolved to an absolute path.
+       */
+      constructor(directoryPath) {
+        const dirHash = crypto3.createHash("sha256").update(directoryPath).digest("hex").slice(0, 16);
+        this.cacheFile = path4.join(CACHE_DIR, `${dirHash}.json`);
+      }
+      /**
+       * Look up a cached fingerprint or compute it.
+       */
+      obtain(cacheKey, calcFn) {
+        const map = this._load();
+        const existing = map.get(cacheKey);
+        if (existing !== void 0) {
+          return existing;
+        }
+        const value = calcFn();
+        map.set(cacheKey, value);
+        this.dirty = true;
+        return value;
+      }
+      /**
+       * Persist the cache to disk.
+       */
+      save() {
+        if (!this.dirty || !this.cache) {
+          return;
+        }
+        this._evict();
+        try {
+          fs4.mkdirSync(CACHE_DIR, { recursive: true });
+          const entries = Array.from(this.cache.entries());
+          let tempFile = `${this.cacheFile}.${Date.now()}.${Math.random()}`;
+          try {
+            fs4.writeFileSync(tempFile, JSON.stringify(entries));
+            fs4.renameSync(tempFile, this.cacheFile);
+            tempFile = void 0;
+            this.dirty = false;
+            this._evictCacheDir();
+          } finally {
+            if (tempFile) {
+              fs4.rmSync(tempFile, { force: true });
+            }
+          }
+        } catch {
+        }
+      }
+      _load() {
+        if (this.cache) {
+          return this.cache;
+        }
+        this.cache = /* @__PURE__ */ new Map();
+        try {
+          const data = fs4.readFileSync(this.cacheFile, "utf-8");
+          const entries = JSON.parse(data);
+          if (Array.isArray(entries)) {
+            for (const [k, v] of entries) {
+              this.cache.set(k, v);
+            }
+          }
+        } catch {
+        }
+        return this.cache;
+      }
+      _evict() {
+        if (!this.cache || this.cache.size <= MAX_ENTRIES) {
+          return;
+        }
+        const entries = Array.from(this.cache.entries());
+        this.cache = new Map(entries.slice(entries.length - MAX_ENTRIES));
+      }
+      /** Remove oldest cache files if the directory exceeds MAX_CACHE_FILES */
+      _evictCacheDir() {
+        try {
+          const files = fs4.readdirSync(CACHE_DIR).filter((f) => f.endsWith(".json")).map((f) => ({ name: f, mtime: fs4.statSync(path4.join(CACHE_DIR, f)).mtimeMs }));
+          if (files.length <= MAX_CACHE_FILES) return;
+          files.sort((a, b) => a.mtime - b.mtime);
+          const toDelete = files.slice(0, files.length - MAX_CACHE_FILES);
+          for (const f of toDelete) {
+            fs4.unlinkSync(path4.join(CACHE_DIR, f.name));
+          }
+        } catch {
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint.ts
+function clearLargeFileFingerprintCache() {
+}
+function fingerprint(fileOrDirectory, options = {}) {
+  const hash = crypto4.createHash("sha256");
+  _hashField(hash, "options.extra", options.extraHash || "");
+  const follow = options.follow || "external" /* EXTERNAL */;
+  _hashField(hash, "options.follow", follow);
+  const root = fs5.realpathSync(fileOrDirectory);
+  const isDir = fs5.statSync(root).isDirectory();
+  const rootDirectory = isDir ? root : path5.dirname(root);
+  const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+  if (ignoreMode != "glob" /* GLOB */) {
+    _hashField(hash, "options.ignoreMode", ignoreMode);
+  }
+  const resolvedRoot = path5.resolve(rootDirectory);
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  const cache = new FingerprintDiskCache(resolvedRoot);
+  if (isDir) {
+    walkDirectory(root, { follow, ignoreStrategy }, {
+      onFile: (entry) => hashFileContent(entry.path, entry.stats ? contentFingerprintWithStats(entry.realPath, entry.stats, cache) : contentFingerprintOf(entry.realPath)),
+      onSymlink: (entry) => hashLinkTarget(entry),
+      onUnsupported: (entry) => {
+        throw new UnscopedValidationError(
+          lit`UnableToUnableHashNeither`,
+          `Unable to hash ${entry.path}: it is neither a file nor a directory`
+        );
+      }
+    });
+  } else {
+    hashFileContent(root, contentFingerprintOf(root));
+  }
+  cache.save();
+  return hash.digest("hex");
+  function hashKey(symbolicPath) {
+    return path5.relative(root, symbolicPath).replace(/\\/g, "/");
+  }
+  function hashFileContent(symbolicPath, contentHash2) {
+    _hashField(hash, `file:${hashKey(symbolicPath)}`, contentHash2);
+  }
+  function hashLinkTarget(entry) {
+    const target = entry.internal && path5.isAbsolute(entry.linkTarget) ? hashKey(entry.resolvedLinkTarget) : entry.linkTarget;
+    _hashField(hash, `link:${hashKey(entry.path)}`, target);
+  }
+  function contentFingerprintOf(file) {
+    return contentFingerprintWithStats(file, fs5.statSync(file, { bigint: true }), cache);
+  }
+}
+function contentFingerprintWithStats(file, stats, cache) {
+  const cacheKey = `${stats.ino}|${stats.mtimeMs}|${stats.size}`;
+  return cache?.obtain(cacheKey, () => contentFingerprintMiss(file)) ?? contentFingerprintMiss(file);
+}
+function contentFingerprintMiss(file) {
+  const hash = crypto4.createHash("sha256");
+  const buffer = Buffer.alloc(BUFFER_SIZE);
+  const fd = fs5.openSync(file, fs5.constants.O_RDONLY);
+  let size = 0;
+  let isBinary = false;
+  let lastStr = "";
+  let read = 0;
+  try {
+    while ((read = fs5.readSync(fd, buffer, 0, BUFFER_SIZE, null)) !== 0) {
+      const slicedBuffer = buffer.subarray(0, read);
+      if (size === 0) {
+        isBinary = slicedBuffer.indexOf(0) !== -1;
+      }
+      if (isBinary) {
+        size += read;
+        hash.update(slicedBuffer);
+      } else {
+        const str = slicedBuffer.toString();
+        if (TRAILING_CR_RE.test(str)) {
+          lastStr += str;
+          continue;
+        }
+        const data = lastStr + str;
+        lastStr = "";
+        const normalizedData = data.replace(CRLF_RE, "\n");
+        const dataBuffer = Buffer.from(normalizedData);
+        size += dataBuffer.length;
+        hash.update(dataBuffer);
+      }
+    }
+    if (lastStr) {
+      hash.update(Buffer.from(lastStr));
+    }
+  } finally {
+    fs5.closeSync(fd);
+  }
+  return `${size}:${hash.digest("hex")}`;
+}
+function _hashField(hash, header, value) {
+  hash.update(CTRL_SOH).update(header).update(CTRL_SOT).update(value).update(CTRL_ETX);
+}
+var crypto4, fs5, path5, CTRL_SOH, CTRL_SOT, CTRL_ETX, CRLF_RE, TRAILING_CR_RE, BUFFER_SIZE;
+var init_fingerprint = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint.ts"() {
+    "use strict";
+    crypto4 = __toESM(require("crypto"));
+    fs5 = __toESM(require("fs"));
+    path5 = __toESM(require("path"));
+    init_fingerprint_disk_cache();
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+    CTRL_SOH = "";
+    CTRL_SOT = "";
+    CTRL_ETX = "";
+    CRLF_RE = /\r\n/g;
+    TRAILING_CR_RE = /\r$/;
+    BUFFER_SIZE = 8 * 1024;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts
+var init_dispose_polyfill = __esm({
+  "../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts"() {
+    "use strict";
+    Symbol.dispose ??= /* @__PURE__ */ Symbol("Symbol.dispose");
+    Symbol.asyncDispose ??= /* @__PURE__ */ Symbol("Symbol.asyncDispose");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/perf.ts
+function profileFn(key, options) {
+  return function(fn) {
+    const ret = function() {
+      STATE.nesting++;
+      const start = import_perf_hooks.performance.now();
+      try {
+        return fn.apply(this, arguments);
+      } finally {
+        const end = import_perf_hooks.performance.now();
+        STATE.nesting--;
+        if (STATE.nesting === 0) {
+          recordPerformanceEntry(key, {
+            durationMs: end - start,
+            count: options?.skipCount ? 0 : 1,
+            telemetry: !!options?.telemetry
+          });
+        }
+      }
+    };
+    Object.defineProperties(ret, Object.getOwnPropertyDescriptors(fn));
+    return ret;
+  };
+}
+function profileSpan(key, options) {
+  const start = import_perf_hooks.performance.now();
+  return {
+    [Symbol.dispose]() {
+      recordPerformanceEntry(key, {
+        durationMs: import_perf_hooks.performance.now() - start,
+        count: options?.skipCount ? 0 : 1,
+        telemetry: !!options?.telemetry
+      });
+    }
+  };
+}
+function recordPerformanceEntry(key, options) {
+  bumpPerfCounter(STATE.allCounters, key, options?.durationMs, options?.count);
+  if (options?.telemetry) {
+    bumpPerfCounter(STATE.telemetryCounters, key, options?.durationMs, options?.count);
+  }
+}
+function resetCounters() {
+  STATE.allCounters = {};
+  STATE.telemetryCounters = {};
+}
+function bumpPerfCounter(counters, key, durationMs, count2) {
+  const ctr = counters[key];
+  if (ctr) {
+    ctr.count += count2 ?? 1;
+    ctr.total += durationMs ?? 0;
+  } else {
+    counters[key] = {
+      count: count2 ?? 1,
+      total: durationMs ?? 0
+    };
+  }
+}
+function profileObj(objName, options) {
+  return function(obj) {
+    for (const [name, { value }] of Object.entries(Object.getOwnPropertyDescriptors(obj))) {
+      if (typeof value === "function") {
+        const key = `${objName}.${name}`;
+        obj[name] = profileFn(key, options)(value);
+      }
+    }
+    return obj;
+  };
+}
+function readPerfCounters(options) {
+  const counters = options?.telemetry ? STATE.telemetryCounters : STATE.allCounters;
+  let ret = Object.entries(counters).map(([key, { count: count2, total }]) => [key, { count: count2, total: Math.floor(total) }]).sort((a, b) => b[1].total - a[1].total);
+  if (options?.n !== void 0) {
+    ret = ret.slice(0, options.n);
+  }
+  return Object.fromEntries(ret);
+}
+function initializeBuiltinProfiling() {
+  const envYes = ["1", "yes", "true"];
+  if (STATE.builtinsHooked || process.env.NODE_ENV === "test" || envYes.includes(process.env.CDK_NO_PERF_BUILTINS)) {
+    return;
+  }
+  STATE.builtinsHooked = true;
+  profileObj("fs", { telemetry: true })(require("fs"));
+  profileObj("child_process", { telemetry: true })(require("child_process"));
+}
+var import_perf_hooks, STATE;
+var init_perf = __esm({
+  "../../aws-cdk-lib/core/lib/private/perf.ts"() {
+    "use strict";
+    import_perf_hooks = require("perf_hooks");
+    init_dispose_polyfill();
+    STATE = globalThis[/* @__PURE__ */ Symbol.for("@aws-cdk/core:performanceProfilingState")] ??= {
+      builtinsHooked: false,
+      nesting: 0,
+      telemetryCounters: {},
+      allCounters: {}
+    };
+    initializeBuiltinProfiling();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/index.ts
+var fs6, os2, path6, _FileSystem_decorators, _init3, _FileSystem, FileSystem;
+var init_fs = __esm({
+  "../../aws-cdk-lib/core/lib/fs/index.ts"() {
+    "use strict";
+    fs6 = __toESM(require("fs"));
+    os2 = __toESM(require("os"));
+    path6 = __toESM(require("path"));
+    init_copy();
+    init_fingerprint();
+    init_perf();
+    init_ignore();
+    init_options();
+    _FileSystem_decorators = [profileObj("FileSystem", { telemetry: true })];
+    _FileSystem = class _FileSystem {
+      /**
+       * Copies an entire directory structure.
+       * @param srcDir Source directory
+       * @param destDir Destination directory
+       * @param options options
+       * @param rootDir Root directory to calculate exclusions from
+       */
+      static copyDirectory(srcDir, destDir, options = {}, rootDir) {
+        return copyDirectory(srcDir, destDir, options, rootDir);
+      }
+      /**
+       * Produces fingerprint based on the contents of a single file or an entire directory tree.
+       *
+       * Line endings are converted from CRLF to LF.
+       *
+       * The fingerprint will also include:
+       * 1. An extra string if defined in `options.extra`.
+       * 2. The symlink follow mode value.
+       *
+       * @param fileOrDirectory The directory or file to fingerprint
+       * @param options Fingerprinting options
+       */
+      static fingerprint(fileOrDirectory, options = {}) {
+        return fingerprint(fileOrDirectory, options);
+      }
+      /**
+       * Checks whether a directory is empty
+       *
+       * @param dir The directory to check
+       */
+      static isEmpty(dir) {
+        return fs6.readdirSync(dir).length === 0;
+      }
+      /**
+       * The real path of the system temp directory
+       */
+      static get tmpdir() {
+        if (_FileSystem._tmpdir) {
+          return _FileSystem._tmpdir;
+        }
+        _FileSystem._tmpdir = fs6.realpathSync(os2.tmpdir());
+        return _FileSystem._tmpdir;
+      }
+      /**
+       * Creates a unique temporary directory in the **system temp directory**.
+       *
+       * @param prefix A prefix for the directory name. Six random characters
+       * will be generated and appended behind this prefix.
+       */
+      static mkdtemp(prefix) {
+        return fs6.mkdtempSync(path6.join(_FileSystem.tmpdir, prefix));
+      }
+      /**
+       * Deletes a directory
+       */
+      static rmrf(dirname6) {
+        fs6.rmSync(dirname6, { force: true, recursive: true });
+      }
+      static _tmpdir;
+    };
+    _init3 = __decoratorStart(null);
+    _FileSystem = __decorateElement(_init3, 0, "FileSystem", _FileSystem_decorators, _FileSystem);
+    __runInitializers(_init3, 1, _FileSystem);
+    FileSystem = _FileSystem;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-staging.ts
+function dockerExec(args, options) {
+  const prog = process.env.CDK_DOCKER ?? "docker";
+  const proc = (0, import_child_process.spawnSync)(prog, args, options ?? {
+    encoding: "utf-8",
+    stdio: [
+      // show Docker output
+      "ignore",
+      // ignore stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    throw proc.error;
+  }
+  if (proc.status !== 0) {
+    let prependLines2 = function(firstLine, text) {
+      if (!text || text.length === 0) {
+        return [];
+      }
+      const padding = " ".repeat(firstLine.length);
+      return text.toString("utf-8").split("\n").map((line, idx) => `${idx === 0 ? firstLine : padding}${line}`);
+    };
+    var prependLines = prependLines2;
+    const reason = proc.signal != null ? `signal ${proc.signal}` : `status ${proc.status}`;
+    const command = [prog, ...args.map((arg) => /[^a-z0-9_-]/i.test(arg) ? JSON.stringify(arg) : arg)].join(" ");
+    throw new ExecutionError(lit`CommandExecutionFailed`, [
+      `${prog} exited with ${reason}`,
+      ...prependLines2("--> STDOUT:  ", proc.stdout) ?? [],
+      ...prependLines2("--> STDERR:  ", proc.stderr) ?? [],
+      `--> Command: ${command}`
+    ].join("\n"));
+  }
+  return proc;
+}
+var import_child_process, crypto5, os3, AssetBundlingBase, _run_dec, _a3, _init4, AssetBundlingBindMount, _run_dec2, _a4, _init5, AssetBundlingVolumeCopy;
+var init_asset_staging = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-staging.ts"() {
+    "use strict";
+    import_child_process = require("child_process");
+    crypto5 = __toESM(require("crypto"));
+    os3 = __toESM(require("os"));
+    init_asset_staging2();
+    init_errors();
+    init_literal_string();
+    init_perf();
+    AssetBundlingBase = class {
+      options;
+      constructor(options) {
+        this.options = options;
+      }
+      /**
+       * Determines a useful default user if not given otherwise
+       */
+      determineUser() {
+        let user;
+        if (this.options.user) {
+          user = this.options.user;
+        } else {
+          const userInfo2 = os3.userInfo();
+          user = userInfo2.uid !== -1 ? `${userInfo2.uid}:${userInfo2.gid}` : "1000:1000";
+        }
+        return user;
+      }
+    };
+    AssetBundlingBindMount = class extends (_a3 = AssetBundlingBase, _run_dec = [profileFn("AssetBundlingBindMount.run", { telemetry: true })], _a3) {
+      constructor() {
+        super(...arguments);
+        __runInitializers(_init4, 5, this);
+      }
+      run() {
+        this.options.image.run({
+          command: this.options.command,
+          user: this.determineUser(),
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumesFrom: this.options.volumesFrom,
+          volumes: [
+            {
+              hostPath: this.options.sourcePath,
+              containerPath: AssetStaging.BUNDLING_INPUT_DIR
+            },
+            {
+              hostPath: this.options.bundleDir,
+              containerPath: AssetStaging.BUNDLING_OUTPUT_DIR
+            },
+            ...this.options.volumes ?? []
+          ],
+          network: this.options.network,
+          platform: this.options.platform
+        });
+      }
+    };
+    _init4 = __decoratorStart(_a3);
+    __decorateElement(_init4, 1, "run", _run_dec, AssetBundlingBindMount);
+    __decoratorMetadata(_init4, AssetBundlingBindMount);
+    AssetBundlingVolumeCopy = class extends (_a4 = AssetBundlingBase, _run_dec2 = [profileFn("AssetBundlingVolumeCopy.run", { telemetry: true })], _a4) {
+      constructor(options) {
+        super(options);
+        __runInitializers(_init5, 5, this);
+        /**
+         * Name of the Docker volume that is used for the asset input
+         */
+        __publicField(this, "inputVolumeName");
+        /**
+         * Name of the Docker volume that is used for the asset output
+         */
+        __publicField(this, "outputVolumeName");
+        /**
+         * Name of the Docker helper container to copy files into the volume
+         */
+        __publicField(this, "copyContainerName");
+        const copySuffix = crypto5.randomBytes(12).toString("hex");
+        this.inputVolumeName = `assetInput${copySuffix}`;
+        this.outputVolumeName = `assetOutput${copySuffix}`;
+        this.copyContainerName = `copyContainer${copySuffix}`;
+      }
+      /**
+       * Creates volumes for asset input and output
+       */
+      prepareVolumes() {
+        dockerExec(["volume", "create", this.inputVolumeName]);
+        dockerExec(["volume", "create", this.outputVolumeName]);
+      }
+      /**
+       * Removes volumes for asset input and output
+       */
+      cleanVolumes() {
+        dockerExec(["volume", "rm", this.inputVolumeName]);
+        dockerExec(["volume", "rm", this.outputVolumeName]);
+      }
+      /**
+       * runs a helper container that holds volumes and does some preparation tasks
+       * @param user The user that will later access these files and needs permissions to do so
+       */
+      startHelperContainer(user) {
+        dockerExec([
+          "run",
+          "--name",
+          this.copyContainerName,
+          "-v",
+          `${this.inputVolumeName}:${AssetStaging.BUNDLING_INPUT_DIR}`,
+          "-v",
+          `${this.outputVolumeName}:${AssetStaging.BUNDLING_OUTPUT_DIR}`,
+          "public.ecr.aws/docker/library/alpine",
+          "sh",
+          "-c",
+          `mkdir -p ${AssetStaging.BUNDLING_INPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_OUTPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * removes the Docker helper container
+       */
+      cleanHelperContainer() {
+        dockerExec(["rm", this.copyContainerName]);
+      }
+      /**
+       * copy files from the host where this is executed into the input volume
+       * @param sourcePath - path to folder where files should be copied from - without trailing slash
+       */
+      copyInputFrom(sourcePath) {
+        dockerExec([
+          "cp",
+          `${sourcePath}/.`,
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * copy files from the output volume to the host where this is executed
+       * @param outputPath - path to folder where files should be copied to - without trailing slash
+       */
+      copyOutputTo(outputPath) {
+        dockerExec([
+          "cp",
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_OUTPUT_DIR}/.`,
+          outputPath
+        ]);
+      }
+      run() {
+        const user = this.determineUser();
+        this.prepareVolumes();
+        this.startHelperContainer(user);
+        this.copyInputFrom(this.options.sourcePath);
+        this.options.image.run({
+          command: this.options.command,
+          user,
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumes: this.options.volumes,
+          volumesFrom: [
+            this.copyContainerName,
+            ...this.options.volumesFrom ?? []
+          ],
+          platform: this.options.platform
+        });
+        this.copyOutputTo(this.options.bundleDir);
+        this.cleanHelperContainer();
+        this.cleanVolumes();
+      }
+    };
+    _init5 = __decoratorStart(_a4);
+    __decorateElement(_init5, 1, "run", _run_dec2, AssetBundlingVolumeCopy);
+    __decoratorMetadata(_init5, AssetBundlingVolumeCopy);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts
+function quiet() {
+  const deprecated = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  return deprecated;
+}
+function reset(deprecated) {
+  if (deprecated === void 0) {
+    delete process.env.JSII_DEPRECATED;
+  } else {
+    process.env.JSII_DEPRECATED = deprecated;
+  }
+}
+var init_jsii_deprecated = __esm({
+  "../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bundling.ts
+function flatten(x) {
+  return Array.prototype.concat([], ...x);
+}
+function isSeLinux() {
+  if (process.platform != "linux") {
+    return false;
+  }
+  const prog = "selinuxenabled";
+  const proc = (0, import_child_process2.spawnSync)(prog, [], {
+    stdio: [
+      // show selinux status output
+      "pipe",
+      // get value of stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    return false;
+  }
+  if (proc.status == 0) {
+    return true;
+  } else {
+    return false;
+  }
+}
+var import_child_process2, import_path, _cp_dec, _run_dec3, _init6, BundlingDockerImage, _fromBuild_dec, _a5, _init7, _DockerImage, DockerImage, PERF_BUNDLING_SRC_SYM;
+var init_bundling = __esm({
+  "../../aws-cdk-lib/core/lib/bundling.ts"() {
+    "use strict";
+    import_child_process2 = require("child_process");
+    import_path = require("path");
+    init_errors();
+    init_fs();
+    init_asset_staging();
+    init_jsii_deprecated();
+    init_literal_string();
+    init_perf();
+    _run_dec3 = [profileFn("BundlingDockerImage.run", { telemetry: true })], _cp_dec = [profileFn("BundlingDockerImage.cp", { telemetry: true })];
+    BundlingDockerImage = class {
+      /** @param image The Docker image */
+      constructor(image, _imageHash) {
+        this.image = image;
+        this._imageHash = _imageHash;
+        __runInitializers(_init6, 5, this);
+      }
+      image;
+      _imageHash;
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new DockerImage(image);
+      }
+      /**
+       * Reference an image that's built directly from sources on disk.
+       *
+       * @param path The path to the directory containing the Docker file
+       * @param options Docker build options
+       *
+       * @deprecated use DockerImage.fromBuild()
+       */
+      static fromAsset(path23, options = {}) {
+        return DockerImage.fromBuild(path23, options);
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        return this._imageHash ?? this.image;
+      }
+      run(options = {}) {
+        const volumes = options.volumes || [];
+        const environment = options.environment || {};
+        const entrypoint = options.entrypoint?.[0] || null;
+        const command = [
+          ...options.entrypoint?.[1] ? [...options.entrypoint.slice(1)] : [],
+          ...options.command ? [...options.command] : []
+        ];
+        const dockerArgs = [
+          "run",
+          "--rm",
+          ...options.securityOpt ? ["--security-opt", options.securityOpt] : [],
+          ...options.network ? ["--network", options.network] : [],
+          ...options.platform ? ["--platform", options.platform] : [],
+          ...options.user ? ["-u", options.user] : [],
+          ...options.volumesFrom ? flatten(options.volumesFrom.map((v) => ["--volumes-from", v])) : [],
+          ...flatten(volumes.map((v) => ["-v", `${v.hostPath}:${v.containerPath}:${isSeLinux() ? "z," : ""}${v.consistency ?? "delegated" /* DELEGATED */}`])),
+          ...flatten(Object.entries(environment).map(([k, v]) => ["--env", `${k}=${v}`])),
+          ...options.workingDirectory ? ["-w", options.workingDirectory] : [],
+          ...entrypoint ? ["--entrypoint", entrypoint] : [],
+          this.image,
+          ...command
+        ];
+        dockerExec(dockerArgs);
+      }
+      cp(imagePath, outputPath) {
+        const { stdout } = dockerExec(["create", this.image], {});
+        const match = stdout.toString().match(/([0-9a-f]{16,})/);
+        if (!match) {
+          throw new ExecutionError(lit`FailedToFailedExtractContainer`, "Failed to extract container ID from Docker create output");
+        }
+        const containerId = match[1];
+        const containerPath = `${containerId}:${imagePath}`;
+        const destPath = outputPath ?? FileSystem.mkdtemp("cdk-docker-cp-");
+        try {
+          dockerExec(["cp", containerPath, destPath]);
+          return destPath;
+        } catch (err) {
+          throw new ExecutionError(lit`FailedToFailedCopyFiles`, `Failed to copy files from ${containerPath} to ${destPath}: ${err}`);
+        } finally {
+          dockerExec(["rm", "-v", containerId]);
+        }
+      }
+    };
+    _init6 = __decoratorStart(null);
+    __decorateElement(_init6, 1, "run", _run_dec3, BundlingDockerImage);
+    __decorateElement(_init6, 1, "cp", _cp_dec, BundlingDockerImage);
+    __decoratorMetadata(_init6, BundlingDockerImage);
+    _DockerImage = class _DockerImage extends (_a5 = BundlingDockerImage, _fromBuild_dec = [profileFn("DockerImage.fromBuild", { telemetry: true })], _a5) {
+      constructor(image, _imageHash) {
+        const deprecated = quiet();
+        super(image, _imageHash);
+        /** The Docker image */
+        __publicField(this, "image");
+        reset(deprecated);
+        this.image = image;
+      }
+      static fromBuild(path23, options = {}) {
+        const buildArgs = options.buildArgs || {};
+        if (options.file && (0, import_path.isAbsolute)(options.file)) {
+          throw new UnscopedValidationError(lit`MustBeFileRelativeDocker`, `"file" must be relative to the docker build directory. Got ${options.file}`);
+        }
+        const hash = FileSystem.fingerprint(path23, { extraHash: JSON.stringify(options) });
+        const tag = `cdk-${hash}`;
+        const usingBuildContexts = Object.keys(options.buildContexts ?? {}).length > 0;
+        if (usingBuildContexts || !this.imageAlreadyExists(tag)) {
+          const dockerArgs = [
+            "build",
+            "-t",
+            tag,
+            ...options.file ? ["-f", (0, import_path.join)(path23, options.file)] : [],
+            ...options.platform ? ["--platform", options.platform] : [],
+            ...options.network ? ["--network", options.network] : [],
+            ...options.targetStage ? ["--target", options.targetStage] : [],
+            ...options.cacheFrom ? [...options.cacheFrom.map((cacheFrom) => ["--cache-from", this.cacheOptionToFlag(cacheFrom)]).flat()] : [],
+            ...options.cacheTo ? ["--cache-to", this.cacheOptionToFlag(options.cacheTo)] : [],
+            ...options.cacheDisabled ? ["--no-cache"] : [],
+            ...flatten(Object.entries(buildArgs).map(([k, v]) => ["--build-arg", `${k}=${v}`])),
+            ...flatten(Object.entries(options.buildContexts || {}).map(([k, v]) => ["--build-context", `${k}=${v}`])),
+            path23
+          ];
+          dockerExec(dockerArgs);
+        }
+        return new _DockerImage(tag, hash);
+      }
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new _DockerImage(image);
+      }
+      static imageAlreadyExists(tag) {
+        const prog = process.env.CDK_DOCKER ?? "docker";
+        const proc = (0, import_child_process2.spawnSync)(prog, ["image", "inspect", tag], {
+          stdio: "ignore"
+        });
+        return proc.status === 0;
+      }
+      static cacheOptionToFlag(option) {
+        let flag = `type=${option.type}`;
+        if (option.params) {
+          flag += "," + Object.entries(option.params).map(([k, v]) => `${k}=${v}`).join(",");
+        }
+        return flag;
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        const deprecated = quiet();
+        const json = super.toJSON();
+        reset(deprecated);
+        return json;
+      }
+      /**
+       * Runs a Docker image
+       */
+      run(options = {}) {
+        const deprecated = quiet();
+        const result = super.run(options);
+        reset(deprecated);
+        return result;
+      }
+      /**
+       * Copies a file or directory out of the Docker image to the local filesystem.
+       *
+       * If `outputPath` is omitted the destination path is a temporary directory.
+       *
+       * @param imagePath the path in the Docker image
+       * @param outputPath the destination path for the copy operation
+       * @returns the destination path
+       */
+      cp(imagePath, outputPath) {
+        const deprecated = quiet();
+        const result = super.cp(imagePath, outputPath);
+        reset(deprecated);
+        return result;
+      }
+    };
+    _init7 = __decoratorStart(_a5);
+    __decorateElement(_init7, 9, "fromBuild", _fromBuild_dec, _DockerImage);
+    __decoratorMetadata(_init7, _DockerImage);
+    __runInitializers(_init7, 3, _DockerImage);
+    DockerImage = _DockerImage;
+    PERF_BUNDLING_SRC_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.bundlingSource");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cache.ts
+var Cache;
+var init_cache = __esm({
+  "../../aws-cdk-lib/core/lib/private/cache.ts"() {
+    "use strict";
+    Cache = class {
+      cache = /* @__PURE__ */ new Map();
+      /**
+       * Clears the cache
+       */
+      clear() {
+        this.cache.clear();
+      }
+      /**
+       * Get a value from the cache or calculate it
+       */
+      obtain(cacheKey, calcFn) {
+        let value = this.cache.get(cacheKey);
+        if (value) {
+          return value;
+        }
+        value = calcFn();
+        this.cache.set(cacheKey, value);
+        return value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/asset-staging.ts
+function renderAssetFilename(assetHash, extension = "") {
+  return `asset.${assetHash}${extension}`;
+}
+function determineHashType(scope, assetHashType, customSourceFingerprint) {
+  const hashType = customSourceFingerprint ? assetHashType ?? "custom" /* CUSTOM */ : assetHashType ?? "source" /* SOURCE */;
+  if (customSourceFingerprint && hashType !== "custom" /* CUSTOM */) {
+    throw new ValidationError(lit`CannotSpecifyAssetHashTypeWithAssetHash`, `Cannot specify \`${assetHashType}\` for \`assetHashType\` when \`assetHash\` is specified. Use \`CUSTOM\` or leave \`undefined\`.`, scope);
+  }
+  if (hashType === "custom" /* CUSTOM */ && !customSourceFingerprint) {
+    throw new ValidationError(lit`MustBeSpecified`, "`assetHash` must be specified when `assetHashType` is set to `AssetHashType.CUSTOM`.", scope);
+  }
+  return hashType;
+}
+function validateInternalSymlinks(root, scope, followMode, ignoreStrat) {
+  walkDirectory(root, { follow: followMode, ignoreStrategy: ignoreStrat }, {
+    onSymlink: (entry) => {
+      if (!entry.internal) {
+        throw new ValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${followMode}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`,
+          scope
+        );
+      }
+    }
+  });
+}
+function calculateCacheKey(props) {
+  return crypto6.createHash("sha256").update(JSON.stringify(sortObject(props), sanitizeHashValue)).digest("hex");
+}
+function sortObject(object) {
+  if (typeof object !== "object" || object instanceof Array) {
+    return object;
+  }
+  const ret = {};
+  for (const key of Object.keys(object).sort()) {
+    ret[key] = sortObject(object[key]);
+  }
+  return ret;
+}
+function sanitizeHashValue(key, value) {
+  if (key === "PIP_INDEX_URL" || key === "PIP_EXTRA_INDEX_URL") {
+    try {
+      let url2 = new URL(value);
+      if (url2.password) {
+        url2.password = "";
+        return url2.toString();
+      }
+    } catch (e) {
+      if (e.name === "TypeError") {
+        throw new AssumptionError(lit`MustBeValid`, `${key} must be a valid URL, got ${value}.`);
+      }
+      throw e;
+    }
+  }
+  return value;
+}
+function findSingleFile(scope, directory, archiveOnly) {
+  if (!fs7.existsSync(directory)) {
+    throw new ValidationError(lit`DirectoryDoesNotExist`, `Directory ${directory} does not exist.`, scope);
+  }
+  if (!fs7.statSync(directory).isDirectory()) {
+    throw new ValidationError(lit`PathIsNotDirectory`, `${directory} is not a directory.`, scope);
+  }
+  const content = fs7.readdirSync(directory);
+  if (content.length === 1) {
+    const file = path7.join(directory, content[0]);
+    const extension = getExtension(content[0]).toLowerCase();
+    if (fs7.statSync(file).isFile() && (!archiveOnly || ARCHIVE_EXTENSIONS.includes(extension))) {
+      return file;
+    }
+  }
+  return void 0;
+}
+function determineBundledAsset(scope, bundleDir, outputType, ignore, followMode) {
+  const archiveFile = findSingleFile(scope, bundleDir, outputType !== "single-file" /* SINGLE_FILE */);
+  if (outputType === "auto-discover" /* AUTO_DISCOVER */) {
+    outputType = archiveFile ? "archived" /* ARCHIVED */ : "not-archived" /* NOT_ARCHIVED */;
+  }
+  switch (outputType) {
+    case "not-archived" /* NOT_ARCHIVED */:
+      if (followMode == "internal-only" /* BLOCK_EXTERNAL */) {
+        validateInternalSymlinks(bundleDir, scope, followMode, ignore);
+      }
+      return { path: bundleDir, packaging: "zip" /* ZIP_DIRECTORY */ };
+    case "archived" /* ARCHIVED */:
+    case "single-file" /* SINGLE_FILE */:
+      if (!archiveFile) {
+        throw new ValidationError(lit`BundlingOutputDirectoryExpectedSingleFile`, "Bundling output directory is expected to include only a single file when `output` is set to `ARCHIVED` or `SINGLE_FILE`", scope);
+      } else if (fs7.lstatSync(archiveFile).isSymbolicLink()) {
+        throw new ValidationError(lit`SymlinkInBundlingOutput`, "The output from bundling is not allowed to be a symlink.", scope);
+      }
+      return { path: archiveFile, packaging: "file" /* FILE */, extension: getExtension(archiveFile) };
+  }
+}
+function getExtension(source) {
+  for (const ext of ARCHIVE_EXTENSIONS) {
+    if (source.toLowerCase().endsWith(ext)) {
+      return ext;
+    }
+  }
+  return path7.extname(source);
+}
+function timerSpanFromOptions(x) {
+  const src = bundlingSourceFromOptions(x);
+  return src ? profileSpan(`bundle:${src}`, { telemetry: true }) : void 0;
+}
+function bundlingSourceFromOptions(x) {
+  const value = x[PERF_BUNDLING_SRC_SYM];
+  return typeof value === "string" ? value : void 0;
+}
+var crypto6, path7, import_constructs7, fs7, ARCHIVE_EXTENSIONS, ASSET_SALT_CONTEXT_KEY, AssetStaging;
+var init_asset_staging2 = __esm({
+  "../../aws-cdk-lib/core/lib/asset-staging.ts"() {
+    "use strict";
+    crypto6 = __toESM(require("crypto"));
+    path7 = __toESM(require("path"));
+    import_constructs7 = __toESM(require_lib4());
+    fs7 = __toESM(require_lib5());
+    init_assets();
+    init_bundling();
+    init_errors();
+    init_fs();
+    init_fingerprint();
+    init_names();
+    init_asset_staging();
+    init_cache();
+    init_core_construct_finders();
+    init_literal_string();
+    init_perf();
+    init_cx_api();
+    init_utils();
+    ARCHIVE_EXTENSIONS = [".tar.gz", ".zip", ".jar", ".tar", ".tgz"];
+    ASSET_SALT_CONTEXT_KEY = "@aws-cdk/core:assetHashSalt";
+    AssetStaging = class _AssetStaging extends import_constructs7.Construct {
+      /**
+       * The directory inside the bundling container into which the asset sources will be mounted.
+       */
+      static BUNDLING_INPUT_DIR = "/asset-input";
+      /**
+       * The directory inside the bundling container into which the bundled output should be written.
+       */
+      static BUNDLING_OUTPUT_DIR = "/asset-output";
+      /**
+       * Clears the asset hash cache
+       */
+      static clearAssetHashCache() {
+        this.assetCache.clear();
+        clearLargeFileFingerprintCache();
+      }
+      /**
+       * Cache of asset hashes based on asset configuration to avoid repeated file
+       * system and bundling operations.
+       */
+      static assetCache = new Cache();
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       *
+       * @deprecated - Use `absoluteStagedPath` instead.
+       */
+      stagedPath;
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       */
+      absoluteStagedPath;
+      /**
+       * The absolute path of the asset as it was referenced by the user.
+       */
+      sourcePath;
+      /**
+       * A cryptographic hash of the asset.
+       */
+      assetHash;
+      /**
+       * How this asset should be packaged.
+       */
+      packaging;
+      /**
+       * Whether this asset is an archive (zip or jar).
+       */
+      isArchive;
+      fingerprintOptions;
+      hashType;
+      assetOutdir;
+      /**
+       * A custom source fingerprint given by the user
+       *
+       * Will not be used literally, always hashed later on.
+       */
+      customSourceFingerprint;
+      cacheKey;
+      _sourceStats;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const salt = this.node.tryGetContext(ASSET_SALT_CONTEXT_KEY);
+        this.sourcePath = path7.resolve(props.sourcePath);
+        this.fingerprintOptions = {
+          ...props,
+          exclude: [".is_custom_resource", ...props.exclude ?? []],
+          extraHash: props.extraHash || salt ? `${props.extraHash ?? ""}${salt ?? ""}` : void 0
+        };
+        if (!fs7.existsSync(this.sourcePath)) {
+          throw new ValidationError(lit`CannotFindAsset`, `Cannot find asset at ${this.sourcePath}`, this);
+        }
+        const ignoreStrategy = IgnoreStrategy.fromCopyOptions(props, this.sourcePath);
+        if (props.follow == "internal-only" /* BLOCK_EXTERNAL */ && fs7.statSync(this.sourcePath).isDirectory()) {
+          validateInternalSymlinks(this.sourcePath, scope, props.follow, ignoreStrategy);
+        }
+        this._sourceStats = fs7.statSync(this.sourcePath);
+        const outdir = stageOf(this)?.assetOutdir;
+        if (!outdir) {
+          throw new ValidationError(lit`UnableToDetermineCloudAssembly`, 'unable to determine cloud assembly asset output directory. Assets must be defined indirectly within a "Stage" or an "App" scope', this);
+        }
+        this.assetOutdir = outdir;
+        this.customSourceFingerprint = props.assetHash;
+        this.hashType = determineHashType(this, props.assetHashType, this.customSourceFingerprint);
+        let stageThisAsset;
+        let skip = false;
+        if (props.bundling) {
+          skip = !stackOf(this).bundlingRequired;
+          const bundling = props.bundling;
+          stageThisAsset = () => this.stageByBundling(bundling, skip, props);
+        } else {
+          stageThisAsset = () => this.stageByCopying();
+        }
+        this.cacheKey = calculateCacheKey({
+          outdir: this.assetOutdir,
+          sourcePath: path7.resolve(props.sourcePath),
+          bundling: props.bundling,
+          assetHashType: this.hashType,
+          customFingerprint: this.customSourceFingerprint,
+          extraHash: props.extraHash,
+          exclude: props.exclude,
+          ignoreMode: props.ignoreMode,
+          skip
+        });
+        const staged = _AssetStaging.assetCache.obtain(this.cacheKey, stageThisAsset);
+        this.stagedPath = staged.stagedPath;
+        this.absoluteStagedPath = staged.stagedPath;
+        this.assetHash = staged.assetHash;
+        this.packaging = staged.packaging;
+        this.isArchive = staged.isArchive;
+        this._sourceStats = void 0;
+      }
+      get sourceStats() {
+        if (!this._sourceStats) {
+          throw new AssumptionError(lit`SourceStatusUnset`, "_sourceStats has been unset");
+        }
+        return this._sourceStats;
+      }
+      /**
+       * A cryptographic hash of the asset.
+       *
+       * @deprecated see `assetHash`.
+       */
+      get sourceHash() {
+        return this.assetHash;
+      }
+      /**
+       * Return the path to the staged asset, relative to the Cloud Assembly (manifest) directory of the given stack
+       *
+       * Only returns a relative path if the asset was staged, returns an absolute path if
+       * it was not staged.
+       *
+       * A bundled asset might end up in the outDir and still not count as
+       * "staged"; if asset staging is disabled we're technically expected to
+       * reference source directories, but we don't have a source directory for the
+       * bundled outputs (as the bundle output is written to a temporary
+       * directory). Nevertheless, we will still return an absolute path.
+       *
+       * A non-obvious directory layout may look like this:
+       *
+       * ```
+       *   CLOUD ASSEMBLY ROOT
+       *     +-- asset.12345abcdef/
+       *     +-- assembly-Stage
+       *           +-- MyStack.template.json
+       *           +-- MyStack.assets.json <- will contain { "path": "../asset.12345abcdef" }
+       * ```
+       */
+      relativeStagedPath(stack) {
+        const asmManifestDir = stageOf(stack)?.outdir;
+        if (!asmManifestDir) {
+          return this.stagedPath;
+        }
+        const isOutsideAssetDir = path7.relative(this.assetOutdir, this.stagedPath).startsWith("..");
+        if (isOutsideAssetDir || this.stagingDisabled) {
+          return this.stagedPath;
+        }
+        return path7.relative(asmManifestDir, this.stagedPath);
+      }
+      /**
+       * Stage the source to the target by copying
+       *
+       * Optionally skip if staging is disabled, in which case we pretend we did something but we don't really.
+       */
+      stageByCopying() {
+        const assetHash = this.calculateHash(this.hashType);
+        const targetPath = this.stagingDisabled ? this.sourcePath : path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, getExtension(this.sourcePath)));
+        const stagedPath = this.renderStagedPath(this.sourcePath, targetPath);
+        if (!this.sourceStats.isDirectory() && !this.sourceStats.isFile()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryOrFile`, `Asset ${this.sourcePath} is expected to be either a directory or a regular file`, this);
+        }
+        this.stageAsset(this.sourcePath, stagedPath, "copy");
+        return {
+          assetHash,
+          stagedPath,
+          packaging: this.sourceStats.isDirectory() ? "zip" /* ZIP_DIRECTORY */ : "file" /* FILE */,
+          isArchive: this.sourceStats.isDirectory() || ARCHIVE_EXTENSIONS.includes(getExtension(this.sourcePath).toLowerCase())
+        };
+      }
+      /**
+       * Stage the source to the target by bundling
+       *
+       * Optionally skip, in which case we pretend we did something but we don't really.
+       */
+      stageByBundling(bundling, skip, props) {
+        if (!this.sourceStats.isDirectory()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryForBundling`, `Asset ${this.sourcePath} is expected to be a directory when bundling`, this);
+        }
+        if (skip) {
+          let hashType = this.hashType;
+          if (hashType === "output" /* OUTPUT */ || hashType === "bundle" /* BUNDLE */) {
+            this.customSourceFingerprint = Names.uniqueId(this);
+            hashType = "custom" /* CUSTOM */;
+          }
+          return {
+            assetHash: this.calculateHash(hashType, bundling),
+            stagedPath: this.sourcePath,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            isArchive: true
+          };
+        }
+        let assetHash = this.hashType === "source" /* SOURCE */ || this.hashType === "custom" /* CUSTOM */ ? this.calculateHash(this.hashType, bundling) : void 0;
+        const bundleDir = this.determineBundleDir(this.assetOutdir, assetHash);
+        this.bundle(bundling, bundleDir);
+        const bundlingOutputType = bundling.outputType ?? "auto-discover" /* AUTO_DISCOVER */;
+        const ignore = IgnoreStrategy.fromCopyOptions(props, bundleDir);
+        const bundledAsset = determineBundledAsset(this, bundleDir, bundlingOutputType, ignore, props.follow);
+        assetHash = assetHash ?? this.calculateHash(this.hashType, bundling, bundledAsset.path);
+        const stagedPath = this.renderStagedPath(
+          bundledAsset.path,
+          path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, bundledAsset.extension))
+        );
+        this.stageAsset(bundledAsset.path, stagedPath, "move");
+        if (bundledAsset.packaging === "file" /* FILE */) {
+          if (this.hashType === "output" /* OUTPUT */ || this.hashType === "bundle" /* BUNDLE */) {
+            fs7.removeSync(path7.dirname(bundledAsset.path));
+          } else {
+            fs7.closeSync(fs7.openSync(bundledAsset.path, "w"));
+          }
+        }
+        return {
+          assetHash,
+          stagedPath,
+          packaging: bundledAsset.packaging,
+          isArchive: bundlingOutputType !== "single-file" /* SINGLE_FILE */
+        };
+      }
+      /**
+       * Whether staging has been disabled
+       */
+      get stagingDisabled() {
+        return !!this.node.tryGetContext(DISABLE_ASSET_STAGING_CONTEXT);
+      }
+      /**
+       * Copies or moves the files from sourcePath to targetPath.
+       *
+       * Moving implies the source directory is temporary and can be trashed.
+       *
+       * Will not do anything if source and target are the same.
+       */
+      stageAsset(sourcePath, targetPath, style) {
+        const isAlreadyStaged = fs7.existsSync(targetPath);
+        if (isAlreadyStaged) {
+          if (style === "move" && sourcePath !== targetPath) {
+            fs7.removeSync(sourcePath);
+          }
+          return;
+        }
+        if (style === "move") {
+          fs7.renameSync(sourcePath, targetPath);
+          return;
+        }
+        if (this.sourceStats.isFile()) {
+          fs7.copyFileSync(sourcePath, targetPath);
+        } else if (this.sourceStats.isDirectory()) {
+          fs7.mkdirSync(targetPath);
+          FileSystem.copyDirectory(sourcePath, targetPath, this.fingerprintOptions);
+        } else {
+          throw new ValidationError(lit`UnknownFileType`, `Unknown file type: ${sourcePath}`, this);
+        }
+      }
+      /**
+       * Determine the directory where we're going to write the bundling output
+       *
+       * This is the target directory where we're going to write the staged output
+       * files if we can (if the hash is fully known), or a temporary directory
+       * otherwise.
+       */
+      determineBundleDir(outdir, sourceHash) {
+        if (sourceHash) {
+          return path7.resolve(outdir, renderAssetFilename(sourceHash));
+        }
+        return path7.resolve(outdir, `bundling-temp-${this.cacheKey}`);
+      }
+      /**
+       * Bundles an asset to the given directory
+       *
+       * If the given directory already exists, assume that everything's already
+       * in order and don't do anything.
+       *
+       * @param options Bundling options
+       * @param bundleDir Where to create the bundle directory
+       * @returns The fully resolved bundle output directory.
+       */
+      bundle(options, bundleDir) {
+        if (fs7.existsSync(bundleDir)) {
+          return;
+        }
+        const tempDir = `${bundleDir}-building`;
+        fs7.rmSync(tempDir, { recursive: true, force: true });
+        fs7.ensureDirSync(tempDir);
+        fs7.chmodSync(tempDir, 511);
+        let localBundling;
+        try {
+          var _stack = [];
+          try {
+            process.stderr.write(`Bundling asset ${this.node.path}...
+`);
+            const _span = __using(_stack, timerSpanFromOptions(options));
+            localBundling = options.local?.tryBundle(tempDir, options);
+            if (!localBundling) {
+              const assetStagingOptions = {
+                sourcePath: this.sourcePath,
+                bundleDir: tempDir,
+                ...options
+              };
+              switch (options.bundlingFileAccess) {
+                case "VOLUME_COPY" /* VOLUME_COPY */:
+                  new AssetBundlingVolumeCopy(assetStagingOptions).run();
+                  break;
+                case "BIND_MOUNT" /* BIND_MOUNT */:
+                default:
+                  new AssetBundlingBindMount(assetStagingOptions).run();
+                  break;
+              }
+            }
+            fs7.renameSync(tempDir, bundleDir);
+          } catch (_) {
+            var _error = _, _hasError = true;
+          } finally {
+            __callDispose(_stack, _error, _hasError);
+          }
+        } catch (err) {
+          throw new ValidationError(lit`FailedToBundleAsset`, `Failed to bundle asset ${this.node.path}, bundle output is located at ${tempDir}: ${err}`, this);
+        }
+        if (FileSystem.isEmpty(bundleDir)) {
+          const outputDir = localBundling ? bundleDir : _AssetStaging.BUNDLING_OUTPUT_DIR;
+          throw new ValidationError(lit`BundlingProducedNoOutput`, `Bundling did not produce any output. Check that content is written to ${outputDir}.`, this);
+        }
+      }
+      calculateHash(hashType, bundling, outputDir) {
+        if (hashType == "custom" /* CUSTOM */ || hashType == "source" /* SOURCE */ && bundling) {
+          const hash = crypto6.createHash("sha256");
+          hash.update(this.customSourceFingerprint ?? FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions));
+          if (bundling) {
+            hash.update(JSON.stringify(bundling, sanitizeHashValue));
+          }
+          return hash.digest("hex");
+        }
+        switch (hashType) {
+          case "source" /* SOURCE */:
+            return FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions);
+          case "bundle" /* BUNDLE */:
+          case "output" /* OUTPUT */:
+            if (!outputDir) {
+              throw new ValidationError(lit`CannotUseHashTypeWithoutBundling`, `Cannot use \`${hashType}\` hash type when \`bundling\` is not specified.`, this);
+            }
+            return FileSystem.fingerprint(outputDir, this.fingerprintOptions);
+          default:
+            throw new ValidationError(lit`UnknownAssetHashType`, "Unknown asset hash type.", this);
+        }
+      }
+      renderStagedPath(sourcePath, targetPath) {
+        if (this.hashType !== "output" /* OUTPUT */ && path7.dirname(sourcePath) === targetPath) {
+          targetPath = targetPath + "_noext";
+        }
+        return targetPath;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/duration.ts
+function convert(amount, fromUnit, toUnit, { integral = true }) {
+  if (fromUnit.inMillis === toUnit.inMillis) {
+    if (integral && !Token.isUnresolved(amount) && !Number.isInteger(amount)) {
+      throw new UnscopedValidationError(lit`MustBeWholeNumber`, `${amount} must be a whole number of ${toUnit}.`);
+    }
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeDurationSpecifiedDuration`, `Duration must be specified as 'Duration.${toUnit}()' here since its value comes from a token and cannot be converted (got Duration.${fromUnit})`);
+  }
+  const value = amount * fromUnit.inMillis / toUnit.inMillis;
+  if (!Number.isInteger(value) && integral) {
+    throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+  }
+  return value;
+}
+function finestUnit(a, b) {
+  return a.inMillis < b.inMillis ? a : b;
+}
+var Duration, TimeUnit;
+var init_duration = __esm({
+  "../../aws-cdk-lib/core/lib/duration.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Duration = class _Duration {
+      /**
+       * Create a Duration representing an amount of milliseconds
+       *
+       * @param amount the amount of Milliseconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` ms.
+       */
+      static millis(amount) {
+        return new _Duration(amount, TimeUnit.Milliseconds);
+      }
+      /**
+       * Create a Duration representing an amount of seconds
+       *
+       * @param amount the amount of Seconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Seconds.
+       */
+      static seconds(amount) {
+        return new _Duration(amount, TimeUnit.Seconds);
+      }
+      /**
+       * Create a Duration representing an amount of minutes
+       *
+       * @param amount the amount of Minutes the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Minutes.
+       */
+      static minutes(amount) {
+        return new _Duration(amount, TimeUnit.Minutes);
+      }
+      /**
+       * Create a Duration representing an amount of hours
+       *
+       * @param amount the amount of Hours the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Hours.
+       */
+      static hours(amount) {
+        return new _Duration(amount, TimeUnit.Hours);
+      }
+      /**
+       * Create a Duration representing an amount of days
+       *
+       * @param amount the amount of Days the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Days.
+       */
+      static days(amount) {
+        return new _Duration(amount, TimeUnit.Days);
+      }
+      /**
+       * Parse a period formatted according to the ISO 8601 standard
+       *
+       * Days are the largest ISO duration supported, i.e.,
+       * weeks, months, and years are not supported.
+       *
+       * @example
+       * // This represents 1 day, 2 hours, 3 minutes, 4 seconds, and 567 milliseconds.
+       * 'P1DT2H3M4.567S'
+       *
+       * @see https://www.iso.org/standard/70907.html
+       * @param duration an ISO-formatted duration to be parsed.
+       * @returns the parsed `Duration`.
+       */
+      static parse(duration) {
+        const matches = duration.match(/^P(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)\.?(\d{1,3})?S)?)?$/);
+        if (!matches) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const [, days, hours, minutes, seconds, milliseconds] = matches;
+        if (!days && !hours && !minutes && !seconds && !milliseconds) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const millis = milliseconds ? milliseconds.padEnd(3, "0") : "";
+        return _Duration.millis(
+          _toInt(millis) + _toInt(seconds) * TimeUnit.Seconds.inMillis + _toInt(minutes) * TimeUnit.Minutes.inMillis + _toInt(hours) * TimeUnit.Hours.inMillis + _toInt(days) * TimeUnit.Days.inMillis
+        );
+        function _toInt(str) {
+          if (!str) {
+            return 0;
+          }
+          return Number(str);
+        }
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`DurationAmountsCannotNegative`, `Duration amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Add two Durations together
+       */
+      plus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) + convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Substract two Durations together
+       */
+      minus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) - convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Return the total number of milliseconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Milliseconds.
+       */
+      toMilliseconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Milliseconds, opts);
+      }
+      /**
+       * Return the total number of seconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Seconds.
+       */
+      toSeconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Seconds, opts);
+      }
+      /**
+       * Return the total number of minutes in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Minutes.
+       */
+      toMinutes(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Minutes, opts);
+      }
+      /**
+       * Return the total number of hours in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Hours.
+       */
+      toHours(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Hours, opts);
+      }
+      /**
+       * Return the total number of days in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Days.
+       */
+      toDays(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Days, opts);
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       */
+      toIsoString() {
+        if (this.amount === 0) {
+          return "PT0S";
+        }
+        const ret = ["P"];
+        let tee = false;
+        for (const [amount, unit] of this.components(true)) {
+          if ([TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours].includes(unit) && !tee) {
+            ret.push("T");
+            tee = true;
+          }
+          ret.push(`${amount}${unit.isoLabel}`);
+        }
+        return ret.join("");
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       * @deprecated Use `toIsoString()` instead.
+       */
+      toISOString() {
+        return this.toIsoString();
+      }
+      /**
+       * Turn this duration into a human-readable string
+       */
+      toHumanString() {
+        if (this.amount === 0) {
+          return fmtUnit(0, this.unit);
+        }
+        if (Token.isUnresolved(this.amount)) {
+          return ` ${this.unit.label}`;
+        }
+        return this.components(false).slice(0, 2).map(([amount, unit]) => fmtUnit(amount, unit)).join(" ");
+        function fmtUnit(amount, unit) {
+          if (amount === 1) {
+            return `${amount} ${unit.label.substring(0, unit.label.length - 1)}`;
+          }
+          return `${amount} ${unit.label}`;
+        }
+      }
+      /**
+       * Returns a string representation of this `Duration`
+       *
+       * This is never the right function to use when you want to use the `Duration`
+       * object in a template. Use `toSeconds()`, `toMinutes()`, `toDays()`, etc. instead.
+       */
+      toString() {
+        return `Duration.${this.unit.label}(${this.amount})`;
+      }
+      /**
+       * Return the duration in a set of whole numbered time components, ordered from largest to smallest
+       *
+       * Only components != 0 will be returned.
+       *
+       * Can combine millis and seconds together for the benefit of toIsoString,
+       * makes the logic in there simpler.
+       */
+      components(combineMillisWithSeconds) {
+        const ret = new Array();
+        let millis = convert(this.amount, this.unit, TimeUnit.Milliseconds, { integral: false });
+        for (const unit of [TimeUnit.Days, TimeUnit.Hours, TimeUnit.Minutes, TimeUnit.Seconds]) {
+          const count2 = convert(millis, TimeUnit.Milliseconds, unit, { integral: false });
+          const wholeCount = unit === TimeUnit.Seconds && combineMillisWithSeconds ? count2 : Math.floor(count2);
+          if (wholeCount > 0) {
+            ret.push([wholeCount, unit]);
+            millis -= wholeCount * unit.inMillis;
+          }
+        }
+        if (millis > 1e-4) {
+          ret.push([millis, TimeUnit.Milliseconds]);
+        }
+        return ret;
+      }
+      /**
+       * Checks if duration is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Returns unit of the duration
+       */
+      unitLabel() {
+        return this.unit.label;
+      }
+      /**
+       * Returns stringified number of duration
+       */
+      formatTokenToNumber() {
+        const number = Tokenization.stringifyNumber(this.amount);
+        return `${number} ${this.unit.label}`;
+      }
+    };
+    TimeUnit = class _TimeUnit {
+      constructor(label, isoLabel, inMillis) {
+        this.label = label;
+        this.isoLabel = isoLabel;
+        this.inMillis = inMillis;
+      }
+      label;
+      isoLabel;
+      inMillis;
+      static Milliseconds = new _TimeUnit("millis", "", 1);
+      static Seconds = new _TimeUnit("seconds", "S", 1e3);
+      static Minutes = new _TimeUnit("minutes", "M", 6e4);
+      static Hours = new _TimeUnit("hours", "H", 36e5);
+      static Days = new _TimeUnit("days", "D", 864e5);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/size.ts
+function allStorageUnits() {
+  return [
+    StorageUnit.Pebibytes,
+    StorageUnit.Tebibytes,
+    StorageUnit.Gibibytes,
+    StorageUnit.Mebibytes,
+    StorageUnit.Kibibytes,
+    StorageUnit.Bytes
+  ];
+}
+function convert2(amount, fromUnit, toUnit, options = {}) {
+  const rounding = options.rounding ?? 0 /* FAIL */;
+  if (fromUnit.inBytes === toUnit.inBytes) {
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeSizeSpecifiedSize`, `Size must be specified as 'Size.${toUnit}()' here since its value comes from a token and cannot be converted (got Size.${fromUnit})`);
+  }
+  const multiplier = fromUnit.inBytes / toUnit.inBytes;
+  const value = amount * multiplier;
+  switch (rounding) {
+    case 2 /* NONE */:
+      return value;
+    case 1 /* FLOOR */:
+      return Math.floor(value);
+    default:
+    case 0 /* FAIL */:
+      if (!Number.isInteger(value)) {
+        throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+      }
+      return value;
+  }
+}
+var Size, StorageUnit;
+var init_size = __esm({
+  "../../aws-cdk-lib/core/lib/size.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Size = class _Size {
+      /**
+       * Create a Storage representing an amount bytes.
+       *
+       * @param amount the amount of bytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static bytes(amount) {
+        return new _Size(amount, StorageUnit.Bytes);
+      }
+      /**
+       * Create a Storage representing an amount kibibytes.
+       * 1 KiB = 1024 bytes
+       *
+       * @param amount the amount of kibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static kibibytes(amount) {
+        return new _Size(amount, StorageUnit.Kibibytes);
+      }
+      /**
+       * Create a Storage representing an amount mebibytes.
+       * 1 MiB = 1024 KiB
+       *
+       * @param amount the amount of mebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static mebibytes(amount) {
+        return new _Size(amount, StorageUnit.Mebibytes);
+      }
+      /**
+       * Create a Storage representing an amount gibibytes.
+       * 1 GiB = 1024 MiB
+       *
+       * @param amount the amount of gibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static gibibytes(amount) {
+        return new _Size(amount, StorageUnit.Gibibytes);
+      }
+      /**
+       * Create a Storage representing an amount tebibytes.
+       * 1 TiB = 1024 GiB
+       *
+       * @param amount the amount of tebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static tebibytes(amount) {
+        return new _Size(amount, StorageUnit.Tebibytes);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @deprecated use `pebibytes` instead
+       */
+      static pebibyte(amount) {
+        return _Size.pebibytes(amount);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @param amount the amount of pebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static pebibytes(amount) {
+        return new _Size(amount, StorageUnit.Pebibytes);
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`StorageAmountsCannotNegative`, `Storage amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Return this storage as a total number of bytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity expressed in bytes
+       */
+      toBytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Bytes, opts);
+      }
+      /**
+       * Return this storage as a total number of kibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in kibibytes
+       */
+      toKibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Kibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of mebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in mebibytes
+       */
+      toMebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Mebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of gibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in gibibytes
+       */
+      toGibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Gibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of tebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in tebibytes
+       */
+      toTebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Tebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of pebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in pebibytes
+       */
+      toPebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Pebibytes, opts);
+      }
+      /**
+       * Checks if size is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Convert this Size object to the most appropriate readable number.
+       */
+      toHumanString() {
+        if (this.isUnresolved()) {
+          return `${Token.asString(this.amount)} ${this.unit.shortLabel}`;
+        }
+        const bytes = this.toBytes();
+        for (const unit of allStorageUnits()) {
+          if (bytes >= unit.inBytes) {
+            const am = convert2(bytes, StorageUnit.Bytes, unit, { rounding: 2 /* NONE */ });
+            return `${am.toFixed(2).replace(/\.?0+$/, "")} ${unit.shortLabel}`;
+          }
+        }
+        return `${bytes} bytes`;
+      }
+      /**
+       * Convert this Size object to its constructor form
+       */
+      toString() {
+        return `Size.${this.unit.label}(${this.amount})`;
+      }
+    };
+    StorageUnit = class _StorageUnit {
+      constructor(label, shortLabel, inBytes) {
+        this.label = label;
+        this.shortLabel = shortLabel;
+        this.inBytes = inBytes;
+      }
+      label;
+      shortLabel;
+      inBytes;
+      static Bytes = new _StorageUnit("bytes", "bytes", 1);
+      static Kibibytes = new _StorageUnit("kibibytes", "KiB", 1024);
+      static Mebibytes = new _StorageUnit("mebibytes", "MiB", 1024 * 1024);
+      static Gibibytes = new _StorageUnit("gibibytes", "GiB", 1024 * 1024 * 1024);
+      static Tebibytes = new _StorageUnit("tebibytes", "TiB", 1024 * 1024 * 1024 * 1024);
+      static Pebibytes = new _StorageUnit("pebibytes", "PiB", 1024 * 1024 * 1024 * 1024 * 1024);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts
+var path8, import_constructs8, fs8, ENTRYPOINT_FILENAME, ENTRYPOINT_NODEJS_SOURCE, CustomResourceProviderBase;
+var init_custom_resource_provider_base = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts"() {
+    "use strict";
+    path8 = __toESM(require("path"));
+    import_constructs8 = __toESM(require_lib4());
+    fs8 = __toESM(require_lib5());
+    init_shared();
+    init_cx_api();
+    init_asset_staging2();
+    init_assets();
+    init_cfn_resource();
+    init_duration();
+    init_errors();
+    init_fs();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_literal_string();
+    init_size();
+    init_token();
+    ENTRYPOINT_FILENAME = "__entrypoint__";
+    ENTRYPOINT_NODEJS_SOURCE = path8.join(__dirname, "..", "..", "..", "custom-resource-handlers", "dist", "core", "nodejs-entrypoint-handler", "index.js");
+    CustomResourceProviderBase = class extends import_constructs8.Construct {
+      /**
+       * The hash of the lambda code backing this provider. Can be used to trigger updates
+       * on code changes, even when the properties of a custom resource remain unchanged.
+       */
+      get codeHash() {
+        if (!this._codeHash) {
+          throw new ValidationError(lit`CustomResourceUsesInlineCode`, "This custom resource uses inlineCode: true and does not have a codeHash", this);
+        }
+        return this._codeHash;
+      }
+      _codeHash;
+      policyStatements = Box.fromArray();
+      role;
+      handler;
+      /**
+       * The ARN of the provider's AWS Lambda function which should be used as the `serviceToken` when defining a custom
+       * resource.
+       */
+      get serviceToken() {
+        return Token.asString(this.handler.getAtt("Arn"));
+      }
+      _roleArn = "";
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(scope);
+        if (!fs8.existsSync(path8.join(props.codeDirectory, "index.js"))) {
+          throw new ValidationError(lit`CannotFind`, `cannot find ${props.codeDirectory}/index.js`, this);
+        }
+        if (props.policyStatements) {
+          for (const statement of props.policyStatements) {
+            this.addToRolePolicy(statement);
+          }
+        }
+        const { code, codeHandler, metadata } = this.createCodePropAndMetadata(props, stack);
+        const config = getPrecreatedRoleConfig(this, `${this.node.path}/Role`);
+        const assumeRolePolicyDoc = [{ Action: "sts:AssumeRole", Effect: "Allow", Principal: { Service: "lambda.amazonaws.com" } }];
+        const managedPolicyArn = "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole";
+        if (config.enabled) {
+          this.node.addValidation({
+            validate: () => {
+              PolicySynthesizer.getOrCreate(this).addRole(`${this.node.path}/Role`, {
+                missing: !config.precreatedRoleName,
+                roleName: config.precreatedRoleName ?? id + "Role",
+                managedPolicies: [{ managedPolicyArn }],
+                policyStatements: [...this.policyStatements.get()],
+                assumeRolePolicy: assumeRolePolicyDoc
+              });
+              return [];
+            }
+          });
+          this._roleArn = stackOf(this).formatArn({
+            region: "",
+            service: "iam",
+            resource: "role",
+            resourceName: config.precreatedRoleName
+          });
+        }
+        if (!config.preventSynthesis) {
+          this.role = new CfnResource(this, "Role", {
+            type: "AWS::IAM::Role",
+            properties: {
+              AssumeRolePolicyDocument: {
+                Version: "2012-10-17",
+                Statement: assumeRolePolicyDoc
+              },
+              ManagedPolicyArns: [
+                { "Fn::Sub": managedPolicyArn }
+              ],
+              Policies: this.policyStatements.derive((stmts) => stmts.length === 0 ? void 0 : [{
+                PolicyName: "Inline",
+                PolicyDocument: {
+                  Version: "2012-10-17",
+                  Statement: stmts
+                }
+              }])
+            }
+          });
+        }
+        const timeout = props.timeout ?? Duration.minutes(15);
+        const memory = props.memorySize ?? Size.mebibytes(128);
+        this.handler = new CfnResource(this, "Handler", {
+          type: "AWS::Lambda::Function",
+          properties: {
+            Code: code,
+            Timeout: timeout.toSeconds(),
+            MemorySize: memory.toMebibytes(),
+            Handler: codeHandler,
+            Role: this.roleArn,
+            Runtime: props.runtimeName,
+            Environment: this.renderEnvironmentVariables(props.environment),
+            Description: props.description ?? void 0
+          }
+        });
+        if (this.role) {
+          this.handler.addResourceDependency(this.role);
+        }
+        if (metadata) {
+          Object.entries(metadata).forEach(([k, v]) => this.handler.addMetadata(k, v));
+        }
+      }
+      /**
+       * The ARN of the provider's AWS Lambda function role.
+       */
+      get roleArn() {
+        if (this.role) {
+          return Token.asString(this.role.getAtt("Arn"));
+        }
+        return this._roleArn;
+      }
+      /**
+       * Add an IAM policy statement to the inline policy of the
+       * provider's lambda function's role.
+       *
+       * **Please note**: this is a direct IAM JSON policy blob, *not* a `iam.PolicyStatement`
+       * object like you will see in the rest of the CDK.
+       *
+       *
+       * @example
+       * declare const myProvider: CustomResourceProvider;
+       *
+       * myProvider.addToRolePolicy({
+       *   Effect: 'Allow',
+       *   Action: 's3:GetObject',
+       *   Resource: '*',
+       * });
+       */
+      addToRolePolicy(statement) {
+        this.policyStatements.push(statement);
+      }
+      renderEnvironmentVariables(env2) {
+        if (!env2 || Object.keys(env2).length === 0) {
+          return void 0;
+        }
+        env2 = { ...env2 };
+        env2.AWS_STS_REGIONAL_ENDPOINTS = "regional";
+        const variables = {};
+        const keys = Object.keys(env2).sort();
+        for (const key of keys) {
+          variables[key] = env2[key];
+        }
+        return { Variables: variables };
+      }
+      /**
+       * Returns the code property for the custom resource as well as any metadata.
+       * If the code is to be uploaded as an asset, the asset gets created in this function.
+       */
+      createCodePropAndMetadata(props, stack) {
+        let codeHandler = "index.handler";
+        const inlineCode = this.node.tryGetContext(INLINE_CUSTOM_RESOURCE_CONTEXT);
+        if (!inlineCode) {
+          const stagingDirectory = FileSystem.mkdtemp("cdk-custom-resource");
+          fs8.copySync(props.codeDirectory, stagingDirectory, { filter: (src, _dest) => !src.endsWith(".ts") });
+          if (props.useCfnResponseWrapper ?? true) {
+            fs8.copyFileSync(ENTRYPOINT_NODEJS_SOURCE, path8.join(stagingDirectory, `${ENTRYPOINT_FILENAME}.js`));
+            codeHandler = `${ENTRYPOINT_FILENAME}.handler`;
+          }
+          const staging = new AssetStaging(this, "Staging", {
+            sourcePath: stagingDirectory
+          });
+          const assetFileName = staging.relativeStagedPath(stack);
+          const asset = stack.synthesizer.addFileAsset({
+            fileName: assetFileName,
+            sourceHash: staging.assetHash,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            displayName: `${this.node.path} Code`
+          });
+          this._codeHash = staging.assetHash;
+          fs8.rmSync(stagingDirectory, { recursive: true, force: true });
+          return {
+            code: {
+              S3Bucket: asset.bucketName,
+              S3Key: asset.objectKey
+            },
+            codeHandler,
+            metadata: this.node.tryGetContext(import_cloud_assembly_api.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT) ? {
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PATH_KEY]: assetFileName,
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PROPERTY_KEY]: "Code"
+            } : void 0
+          };
+        }
+        return {
+          code: {
+            ZipFile: fs8.readFileSync(path8.join(props.codeDirectory, "index.js"), "utf-8")
+          },
+          codeHandler
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/default.ts
+var init_default = __esm({
+  "../../aws-cdk-lib/region-info/lib/default.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/aws-entities.ts
+function partitionInformation(region) {
+  for (const [prefix, info] of Object.entries(PARTITION_MAP)) {
+    if (region.startsWith(prefix)) {
+      return info;
+    }
+  }
+  return PARTITION_MAP.default;
+}
+var RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN, RULE_CLASSIC_PARTITION_BECOMES_OPT_IN, AWS_REGIONS_AND_RULES, AWS_REGIONS, PARTITION_MAP;
+var init_aws_entities = __esm({
+  "../../aws-cdk-lib/region-info/lib/aws-entities.ts"() {
+    "use strict";
+    RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN = /* @__PURE__ */ Symbol("S3_WEBSITE_REGIONAL_SUBDOMAIN");
+    RULE_CLASSIC_PARTITION_BECOMES_OPT_IN = /* @__PURE__ */ Symbol("CLASSIC_PARTITION_BECOMES_OPT_IN");
+    AWS_REGIONS_AND_RULES = [
+      "us-east-1",
+      // US East (N. Virginia)
+      "eu-west-1",
+      // Europe (Ireland)
+      "us-west-1",
+      // US West (N. California)
+      "ap-southeast-1",
+      // Asia Pacific (Singapore)
+      "ap-northeast-1",
+      // Asia Pacific (Tokyo)
+      "us-gov-west-1",
+      // AWS GovCloud (US-West)
+      "us-west-2",
+      // US West (Oregon)
+      "sa-east-1",
+      // South America (São Paulo)
+      "ap-southeast-2",
+      // Asia Pacific (Sydney)
+      RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN,
+      "cn-north-1",
+      // China (Beijing)
+      "us-iso-east-1",
+      // AWS ISO
+      "eu-central-1",
+      // Europe (Frankfurt)
+      "ap-northeast-2",
+      // Asia Pacific (Seoul)
+      "ap-south-1",
+      // Asia Pacific (Mumbai)
+      "us-east-2",
+      // US East (Ohio)
+      "ca-central-1",
+      // Canada (Central)
+      "eu-west-2",
+      // Europe (London)
+      "us-isob-east-1",
+      // AWS ISO-B
+      "cn-northwest-1",
+      // China (Ningxia)
+      "eu-west-3",
+      // Europe (Paris)
+      "ap-northeast-3",
+      // Asia Pacific (Osaka)
+      "us-gov-east-1",
+      // AWS GovCloud (US-East)
+      "eu-north-1",
+      // Europe (Stockholm)
+      RULE_CLASSIC_PARTITION_BECOMES_OPT_IN,
+      "ap-east-1",
+      // Asia Pacific (Hong Kong)
+      "me-south-1",
+      // Middle East (Bahrain)
+      "af-south-1",
+      // Africa (Cape Town)
+      "eu-south-1",
+      // Europe (Milan)
+      "us-iso-west-1",
+      // US ISO West
+      "ap-southeast-3",
+      // Asia Pacific (Jakarta)
+      "me-central-1",
+      // Middle East (UAE)
+      "eu-central-2",
+      // Europe (Zurich)
+      "eu-south-2",
+      // Europe (Spain)
+      "ap-south-2",
+      // Asia Pacific (Hyderabad)
+      "ap-southeast-4",
+      // Asia Pacific (Melbourne)
+      "il-central-1",
+      // Israel (Tel Aviv)
+      "ca-west-1",
+      // Canada West (Calgary)
+      "ap-southeast-5",
+      // Asia Pacific (Malaysia)
+      "ap-southeast-7",
+      // Asia Pacific (Thailand)
+      "mx-central-1",
+      // Mexico (Central)
+      "eu-isoe-west-1",
+      // EU ISO-E West
+      "us-isob-west-1",
+      // US ISOB West
+      "ap-east-2",
+      // Asia Pacific (Taipei)
+      "eusc-de-east-1",
+      // EU (Germany)
+      "ap-southeast-6",
+      // Asia Pacific (New Zealand)
+      "us-isof-south-1",
+      // US ISOF SOUTH
+      "us-isof-east-1"
+      // US ISOF EAST
+    ];
+    AWS_REGIONS = AWS_REGIONS_AND_RULES.filter((x) => typeof x === "string").sort();
+    PARTITION_MAP = {
+      "default": { partition: "aws", domainSuffix: "amazonaws.com" },
+      "cn-": { partition: "aws-cn", domainSuffix: "amazonaws.com.cn" },
+      "us-gov-": { partition: "aws-us-gov", domainSuffix: "amazonaws.com" },
+      "us-iso-": { partition: "aws-iso", domainSuffix: "c2s.ic.gov" },
+      "us-isob-": { partition: "aws-iso-b", domainSuffix: "sc2s.sgov.gov" },
+      "us-isof-": { partition: "aws-iso-f", domainSuffix: "csp.hci.ic.gov" },
+      "eu-isoe-": { partition: "aws-iso-e", domainSuffix: "cloud.adc-e.uk" },
+      "eusc-de-": { partition: "aws-eusc", domainSuffix: "amazonaws.eu" }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/fact.ts
+var CONSTRUCT_ERROR_SYMBOL2, RegionFactError, Fact, FactName;
+var init_fact = __esm({
+  "../../aws-cdk-lib/region-info/lib/fact.ts"() {
+    "use strict";
+    init_aws_entities();
+    CONSTRUCT_ERROR_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError");
+    RegionFactError = class _RegionFactError extends Error {
+      constructor(msg) {
+        super(msg);
+        Object.setPrototypeOf(this, _RegionFactError.prototype);
+        Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL2, { value: true });
+        this.name = "RegionFactError";
+      }
+    };
+    Fact = class {
+      /**
+       * @returns the list of names of AWS Regions for which there is at least one registered fact. This
+       *          includes Regions defined in AWS_REGIONS plus custom defined regions.
+       */
+      static get regions() {
+        return [.../* @__PURE__ */ new Set([...AWS_REGIONS, ...Object.keys(this.database)])];
+      }
+      /**
+       * Returns the list of names of registered facts.
+       *
+       * All facts will be present in at least one region.
+       */
+      static get names() {
+        return [...new Set(Object.values(this.database).flatMap((regionFacts) => Object.keys(regionFacts)))];
+      }
+      /**
+       * Return all pairs of (region, factName) that are defined
+       */
+      static definedFacts() {
+        return Object.entries(this.database).flatMap(([regionName, regionFacts]) => Object.keys(regionFacts).map((factName) => [regionName, factName]));
+      }
+      /**
+       * Retrieves a fact from this Fact database.
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name   the name of the fact being looked up (see the `FactName` class for details)
+       *
+       * @returns the fact value if it is known, and `undefined` otherwise.
+       */
+      static find(region, name) {
+        const regionFacts = this.database[region];
+        return regionFacts && regionFacts[name];
+      }
+      /**
+       * Retrieve a fact from the Fact database. (retrieval will fail if the specified region or
+       * fact name does not exist.)
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name the name of the fact being looked up (see the `FactName` class for details)
+       */
+      static requireFact(region, name) {
+        const foundFact = this.find(region, name);
+        if (!foundFact) {
+          throw new RegionFactError(`No fact ${name} could be found for region: ${region} and name: ${name}.`);
+        }
+        return foundFact;
+      }
+      /**
+       * Registers a new fact in this Fact database.
+       *
+       * @param fact           the new fact to be registered.
+       * @param allowReplacing whether new facts can replace existing facts or not.
+       */
+      static register(fact, allowReplacing = false) {
+        const regionFacts = this.database[fact.region] || (this.database[fact.region] = /* @__PURE__ */ Object.create(null));
+        if (fact.name in regionFacts && regionFacts[fact.name] !== fact.value && !allowReplacing) {
+          throw new RegionFactError(`Region ${fact.region} already has a fact ${fact.name}, with value ${regionFacts[fact.name]}`);
+        }
+        if (fact.value !== void 0) {
+          regionFacts[fact.name] = fact.value;
+        }
+      }
+      /**
+       * Removes a fact from the database.
+       * @param region the region for which the fact is to be removed.
+       * @param name   the name of the fact to remove.
+       * @param value  the value that should be removed (removal will fail if the value is specified, but does not match the
+       *               current stored value).
+       */
+      static unregister(region, name, value) {
+        const regionFacts = this.database[region] || /* @__PURE__ */ Object.create(null);
+        if (name in regionFacts && value && regionFacts[name] !== value) {
+          throw new RegionFactError(`Attempted to remove ${name} from ${region} with value ${value}, but the fact's value is ${regionFacts[name]}`);
+        }
+        delete regionFacts[name];
+      }
+      static database = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      constructor() {
+        throw new Error("Use the static methods of Fact instead!");
+      }
+    };
+    FactName = class {
+      /**
+       * The name of the partition for a region (e.g: 'aws', 'aws-cn', ...)
+       */
+      static PARTITION = "partition";
+      /**
+       * The domain suffix for a region (e.g: 'amazonaws.com`)
+       */
+      static DOMAIN_SUFFIX = "domainSuffix";
+      /**
+       * Whether the AWS::CDK::Metadata CloudFormation Resource is available in-region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static CDK_METADATA_RESOURCE_AVAILABLE = "cdk:metadata-resource:available";
+      /**
+       * Whether the given region is an opt-in region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static IS_OPT_IN_REGION = "aws:is-opt-in-region";
+      /**
+       * The endpoint used for hosting S3 static websites
+       */
+      static S3_STATIC_WEBSITE_ENDPOINT = "s3-static-website:endpoint";
+      /**
+       * The endpoint used for aliasing S3 static websites in Route 53
+       */
+      static S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID = "s3-static-website:route-53-hosted-zone-id";
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      static EBS_ENV_ENDPOINT_HOSTED_ZONE_ID = "ebs-environment:route-53-hosted-zone-id";
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      static VPC_ENDPOINT_SERVICE_NAME_PREFIX = "vpcEndpointServiceNamePrefix";
+      /**
+       * The account for ELBv2 in this region
+       */
+      static ELBV2_ACCOUNT = "elbv2Account";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS Deep Learning Containers images in a given region.
+       */
+      static DLC_REPOSITORY_ACCOUNT = "dlcRepositoryAccount";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      static APPMESH_ECR_ACCOUNT = "appMeshRepositoryAccount";
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      static FIREHOSE_CIDR_BLOCK = "firehoseCidrBlock";
+      /**
+       * The SAML Sign On URL for partition used by IAM SAML Principal
+       */
+      static SAML_SIGN_ON_URL = "samlSignOnUrl";
+      /**
+       * The latest Lambda NodeJS runtime available in a given region.
+       */
+      static LATEST_NODE_RUNTIME = "latestNodeRuntime";
+      /**
+       * The ARN of CloudWatch Lambda Insights for a version (e.g. 1.0.98.0)
+       */
+      static cloudwatchLambdaInsightsVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `cloudwatch-lambda-insights-version:${suffix}`;
+      }
+      /**
+       * The ARN of AppConfig Lambda Layer for a given version (e.g. 2.0.181)
+       * @param version The layer version.
+       * @param arch The architecture (optional), defaults to x86_64.
+       */
+      static appConfigLambdaLayerVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `appconfig-lambda-layer:${suffix}`;
+      }
+      /**
+       * The name of the regional service principal for a given service.
+       *
+       * @param service the service name, either simple (e.g: `s3`, `codedeploy`) or qualified (e.g: `s3.amazonaws.com`).
+       *                The `.amazonaws.com` and `.amazonaws.com.cn` domains are stripped from service names, so they are
+       *                canonicalized in that respect.
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      static servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The ARN of Amazon Distro for OpenTelemetry (ADOT) Lambda layer for a given lambda type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static adotLambdaLayer(type, version3, architecture) {
+        const suffix = type + "_" + version3.split(".").join("_") + "_" + architecture;
+        return `adot-lambda-layer:${suffix}`;
+      }
+      /**
+       * The ARN of Parameters and Secrets Lambda layer for a given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static paramsAndSecretsLambdaLayer(version3, architecture) {
+        const suffix = version3.split(".").join("_") + `_${architecture}`;
+        return `params-and-secrets-layer:${suffix}`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/region-info.ts
+var RegionInfo;
+var init_region_info = __esm({
+  "../../aws-cdk-lib/region-info/lib/region-info.ts"() {
+    "use strict";
+    init_aws_entities();
+    init_fact();
+    RegionInfo = class _RegionInfo {
+      constructor(name) {
+        this.name = name;
+      }
+      name;
+      /**
+       * @returns the list of names of AWS regions for which there is at least one registered fact. This
+       *          may not be an exaustive list of all available AWS regions.
+       */
+      static get regions() {
+        return Fact.regions.map((x) => _RegionInfo.get(x));
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions that fact is defined in.
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static regionMap(factName) {
+        const ret = {};
+        for (const regionInfo of _RegionInfo.regions) {
+          const fact = Fact.find(regionInfo.name, factName);
+          if (fact) {
+            ret[regionInfo.name] = fact;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions, limited to some partitions
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @param partitions list of partitions to retrieve facts for. Defaults
+       *   to `['aws', 'aws-cn']`.
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static limitedRegionMap(factName, partitions) {
+        const ret = {};
+        for (const [region, value] of Object.entries(_RegionInfo.regionMap(factName))) {
+          if (partitions.includes(partitionInformation(region).partition)) {
+            ret[region] = value;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Obtain region info for a given region name.
+       *
+       * @param name the name of the region (e.g: us-east-1)
+       */
+      static get(name) {
+        return new _RegionInfo(name);
+      }
+      /**
+       * Whether the `AWS::CDK::Metadata` CloudFormation Resource is available in this region or not.
+       */
+      get cdkMetadataResourceAvailable() {
+        return Fact.find(this.name, FactName.CDK_METADATA_RESOURCE_AVAILABLE) === "YES";
+      }
+      /**
+       * Whether the given region is an opt-in region
+       */
+      get isOptInRegion() {
+        return Fact.find(this.name, FactName.IS_OPT_IN_REGION) === "YES";
+      }
+      /**
+       * The domain name suffix (e.g: amazonaws.com) for this region.
+       */
+      get domainSuffix() {
+        return Fact.find(this.name, FactName.DOMAIN_SUFFIX);
+      }
+      /**
+       * The name of the ARN partition for this region (e.g: aws).
+       */
+      get partition() {
+        return Fact.find(this.name, FactName.PARTITION);
+      }
+      /**
+       * The endpoint used by S3 static website hosting in this region (e.g: s3-static-website-us-east-1.amazonaws.com)
+       */
+      get s3StaticWebsiteEndpoint() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ENDPOINT);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a S3 static website in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get s3StaticWebsiteHostedZoneId() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get ebsEnvEndpointHostedZoneId() {
+        return Fact.find(this.name, FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID);
+      }
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      get vpcEndpointServiceNamePrefix() {
+        return Fact.find(this.name, FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX);
+      }
+      /**
+       * The name of the service principal for a given service in this region.
+       * @param service the service name (e.g: s3.amazonaws.com)
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The account ID for ELBv2 in this region
+       */
+      get elbv2Account() {
+        return Fact.find(this.name, FactName.ELBV2_ACCOUNT);
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository containing the
+       * AWS Deep Learning Containers images in this region.
+       */
+      get dlcRepositoryAccount() {
+        return Fact.find(this.name, FactName.DLC_REPOSITORY_ACCOUNT);
+      }
+      /**
+       * The ARN of the CloudWatch Lambda Insights extension, for the given version.
+       * @param insightsVersion the version (e.g. 1.0.98.0)
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      cloudwatchLambdaInsightsArn(insightsVersion, architecture) {
+        return Fact.find(this.name, FactName.cloudwatchLambdaInsightsVersion(insightsVersion, architecture));
+      }
+      /**
+       * The ARN of the AppConfig Lambda Layer, for the given version.
+       * @param layerVersion The layer version (e.g. 2.0.181)
+       * @param architecture The Lambda Function architecture (e.g. 'x86_64' or 'arm64'), defaults to x86_64
+       */
+      appConfigLambdaArn(layerVersion, architecture) {
+        return Fact.find(this.name, FactName.appConfigLambdaLayerVersion(layerVersion, architecture));
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      get appMeshRepositoryAccount() {
+        return Fact.find(this.name, FactName.APPMESH_ECR_ACCOUNT);
+      }
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      get firehoseCidrBlock() {
+        return Fact.find(this.name, FactName.FIREHOSE_CIDR_BLOCK);
+      }
+      /**
+       * The ARN of the ADOT Lambda layer, for the given layer type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      adotLambdaLayerArn(type, version3, architecture) {
+        return Fact.find(this.name, FactName.adotLambdaLayer(type, version3, architecture));
+      }
+      /**
+       * The ARN of the Parameters and Secrets Lambda layer for the given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      paramsAndSecretsLambdaLayerArn(version3, architecture) {
+        return Fact.find(this.name, FactName.paramsAndSecretsLambdaLayer(version3, architecture));
+      }
+      /**
+       * SAML Sign On URL used by IAM SAML Principals.
+       */
+      get samlSignOnUrl() {
+        return Fact.find(this.name, FactName.SAML_SIGN_ON_URL);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/built-ins.generated.ts
+var BuiltIns;
+var init_built_ins_generated = __esm({
+  "../../aws-cdk-lib/region-info/lib/built-ins.generated.ts"() {
+    "use strict";
+    init_fact();
+    BuiltIns = class {
+      /**
+       * Registers all the built in regional data in the RegionInfo database.
+       */
+      static register() {
+        Fact.register({ region: "af-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "af-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.af-south-1.amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11KHD8FBVPUYU" });
+        Fact.register({ region: "af-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1EI3BVKMKK4AM" });
+        Fact.register({ region: "af-south-1", name: FactName.ELBV2_ACCOUNT, value: "098369216593" });
+        Fact.register({ region: "af-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "924023996002" });
+        Fact.register({ region: "af-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "af-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "af-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.244.121.224/27" });
+        Fact.register({ region: "af-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:456" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-1.amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "ZNB98KWMFR0R6" });
+        Fact.register({ region: "ap-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZPWYUBWRU171A" });
+        Fact.register({ region: "ap-east-1", name: FactName.ELBV2_ACCOUNT, value: "754344448648" });
+        Fact.register({ region: "ap-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "871362719292" });
+        Fact.register({ region: "ap-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "856666278305" });
+        Fact.register({ region: "ap-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.162.221.32/27" });
+        Fact.register({ region: "ap-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-east-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-2.amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z064739330DAH7WJVOO93" });
+        Fact.register({ region: "ap-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-east-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "975050140332" });
+        Fact.register({ region: "ap-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "058264503299" });
+        Fact.register({ region: "ap-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.212.53.160/27" });
+        Fact.register({ region: "ap-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-2:145023102084:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-northeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2M4EHUR26P7ZW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.ELBV2_ACCOUNT, value: "582318560864" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.113.196.224/27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:87" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:34" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:83" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:33" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:31" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:80" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:30" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:79" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:29" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:78" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:76" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:72" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:37" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:35" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:62" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3W03O7B5YMIYP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z3JE5OI70TWKCP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.ELBV2_ACCOUNT, value: "600734575887" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.209.1.64/27" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2YQB5RD63NC85" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZNE5GEY1TIAGY" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.ELBV2_ACCOUNT, value: "383597477331" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.208.177.192/27" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:13" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:42" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:576959938190:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-1.amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11RGJOFQNVJUP" });
+        Fact.register({ region: "ap-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z18NTBI3Y7N9TZ" });
+        Fact.register({ region: "ap-south-1", name: FactName.ELBV2_ACCOUNT, value: "718504428378" });
+        Fact.register({ region: "ap-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.232.67.32/27" });
+        Fact.register({ region: "ap-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:58" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:94" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:92" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:55" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-2.amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z02976202B4EZMXIPMXF7" });
+        Fact.register({ region: "ap-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10223522IBWPBF2C2FJS" });
+        Fact.register({ region: "ap-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "772153158452" });
+        Fact.register({ region: "ap-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.60.192.128/27" });
+        Fact.register({ region: "ap-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:22" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-2:070087711984:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3O0J2DXBE1FTB" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z16FZ9L249IFLT" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.ELBV2_ACCOUNT, value: "114774131450" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.228.64.192/27" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:41" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1WCIGYICN2BYD" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2PCDNR3VC2G1N" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.ELBV2_ACCOUNT, value: "783225319266" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.210.67.224/27" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z01846753K324LI26A3VV" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z05913172VM7EAZB40TA8" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.ELBV2_ACCOUNT, value: "589379963580" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "907027046896" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "909464085924" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "108.136.221.64/27" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:37" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:24" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:13" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-4.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0312387243XT5FE14WFO" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z0666869LC74UHAO5YE4" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "457447274322" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.50.161.128/27" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-4:605207715842:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:5" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:307021474294:layer:AWS-AppConfig-Extension:2" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-5.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z08660063OXLMA7F1FJHU" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01812971H0QCYWSL7WOH" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.216.58.0/27" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-6.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01144401H1NECCLJDD4D" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "633930458069" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.APPMESH_ECR_ACCOUNT, value: "637423513210" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-6:727646510379:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-7.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0031014GXUMRZG6I14G" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.208.112.96/27" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-central-1.amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1QDHH18159H29" });
+        Fact.register({ region: "ca-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZJFCZL7SSZB5I" });
+        Fact.register({ region: "ca-central-1", name: FactName.ELBV2_ACCOUNT, value: "985666609251" });
+        Fact.register({ region: "ca-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ca-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ca-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.183.92.128/27" });
+        Fact.register({ region: "ca-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ca-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-west-1.amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03565811Z33SLEZTHOUL" });
+        Fact.register({ region: "ca-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1021028356Y0CYS11DQI" });
+        Fact.register({ region: "ca-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "40.176.98.192/27" });
+        Fact.register({ region: "ca-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-west-1:761377655185:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:15" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-north-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z5CN8UMXT92WN" });
+        Fact.register({ region: "cn-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-north-1", name: FactName.ELBV2_ACCOUNT, value: "638102146993" });
+        Fact.register({ region: "cn-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919366029133" });
+        Fact.register({ region: "cn-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.81.151.32/27" });
+        Fact.register({ region: "cn-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:287114880934:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-northwest-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z282HJ1KT0DH03" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.ELBV2_ACCOUNT, value: "037604701340" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919830735681" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "161.189.23.64/27" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:287310001119:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-1.amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z21DNDUVLTQW6Q" });
+        Fact.register({ region: "eu-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1FRNW7UH4DEZJ" });
+        Fact.register({ region: "eu-central-1", name: FactName.ELBV2_ACCOUNT, value: "054676820928" });
+        Fact.register({ region: "eu-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.158.127.160/27" });
+        Fact.register({ region: "eu-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-central-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-2.amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z030506016YDQGETNASS" });
+        Fact.register({ region: "eu-central-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z00227012FSHBMZNNSJJI" });
+        Fact.register({ region: "eu-central-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "380420809688" });
+        Fact.register({ region: "eu-central-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.62.183.32/27" });
+        Fact.register({ region: "eu-central-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:7" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-2:772501565639:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.PARTITION, value: "aws-iso-e" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DOMAIN_SUFFIX, value: "cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-isoe-west-1.cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "uk.adc-e.cloud.vpce" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-north-1.amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BAZG2TWCNX0D" });
+        Fact.register({ region: "eu-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-north-1", name: FactName.ELBV2_ACCOUNT, value: "897822967062" });
+        Fact.register({ region: "eu-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.53.63.224/27" });
+        Fact.register({ region: "eu-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:57" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:142" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:139" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:111" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:98" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:97" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-1.amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3IXVV8C73GIO3" });
+        Fact.register({ region: "eu-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10VDYYOA2JFKM" });
+        Fact.register({ region: "eu-south-1", name: FactName.ELBV2_ACCOUNT, value: "635631232127" });
+        Fact.register({ region: "eu-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "692866216735" });
+        Fact.register({ region: "eu-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "422531588944" });
+        Fact.register({ region: "eu-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.161.135.128/27" });
+        Fact.register({ region: "eu-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-2.amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0081959F7139GRJC19J" });
+        Fact.register({ region: "eu-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "503227376785" });
+        Fact.register({ region: "eu-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.100.71.96/27" });
+        Fact.register({ region: "eu-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-2:524103009944:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-eu-west-1.amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1BKCTXD74EZPE" });
+        Fact.register({ region: "eu-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2NYPWQ7DFZAZH" });
+        Fact.register({ region: "eu-west-1", name: FactName.ELBV2_ACCOUNT, value: "156460612806" });
+        Fact.register({ region: "eu-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.19.239.192/27" });
+        Fact.register({ region: "eu-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:108" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:7" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:6" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-2.amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3GKZC51ZF0DB4" });
+        Fact.register({ region: "eu-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1GKAAAUGATPF1" });
+        Fact.register({ region: "eu-west-2", name: FactName.ELBV2_ACCOUNT, value: "652711504416" });
+        Fact.register({ region: "eu-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.130.1.96/27" });
+        Fact.register({ region: "eu-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-3.amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3R1K369G5AVDG" });
+        Fact.register({ region: "eu-west-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z5WN6GAYWG5OB" });
+        Fact.register({ region: "eu-west-3", name: FactName.ELBV2_ACCOUNT, value: "009996457667" });
+        Fact.register({ region: "eu-west-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.180.1.96/27" });
+        Fact.register({ region: "eu-west-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:80" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.PARTITION, value: "aws-eusc" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eusc-de-east-1.amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "204133271717" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "eu.amazonaws.vpce" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "il-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.il-central-1.amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z09640613K4A3MN55U7GU" });
+        Fact.register({ region: "il-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z02941091PERNCB1MI5H7" });
+        Fact.register({ region: "il-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "564877687649" });
+        Fact.register({ region: "il-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "il-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "il-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "51.16.102.0/27" });
+        Fact.register({ region: "il-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:il-central-1:066549572091:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-central-1.amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z06143092I8HRXZRUZROF" });
+        Fact.register({ region: "me-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "me-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "914824155844" });
+        Fact.register({ region: "me-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "3.28.159.32/27" });
+        Fact.register({ region: "me-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:34" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:31" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-central-1:858974508948:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-south-1.amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1MPMWCPA7YB62" });
+        Fact.register({ region: "me-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2BBTEKR2I36N2" });
+        Fact.register({ region: "me-south-1", name: FactName.ELBV2_ACCOUNT, value: "076674570225" });
+        Fact.register({ region: "me-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "217643126080" });
+        Fact.register({ region: "me-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "772975370895" });
+        Fact.register({ region: "me-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.185.91.0/27" });
+        Fact.register({ region: "me-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "mx-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "mx-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "mx-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.mx-central-1.amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "mx-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "mx-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "sa-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "sa-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-sa-east-1.amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z7KQH4QJS55SO" });
+        Fact.register({ region: "sa-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10X7K2B4QSOFV" });
+        Fact.register({ region: "sa-east-1", name: FactName.ELBV2_ACCOUNT, value: "507241528517" });
+        Fact.register({ region: "sa-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "sa-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "sa-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "sa-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "sa-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.228.1.128/27" });
+        Fact.register({ region: "sa-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-east-1.amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3AQBSTGFYJSTF" });
+        Fact.register({ region: "us-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z117KPS5GTRQ2G" });
+        Fact.register({ region: "us-east-1", name: FactName.ELBV2_ACCOUNT, value: "127311923021" });
+        Fact.register({ region: "us-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.70.63.192/27" });
+        Fact.register({ region: "us-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-east-2.amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2O1EMRO9K5GLX" });
+        Fact.register({ region: "us-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z14LCN19Q5QHIC" });
+        Fact.register({ region: "us-east-2", name: FactName.ELBV2_ACCOUNT, value: "033677994240" });
+        Fact.register({ region: "us-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.58.135.96/27" });
+        Fact.register({ region: "us-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-gov-east-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2NIFVYYW2VKV1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z35TSARG0EJ4VU" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.ELBV2_ACCOUNT, value: "190560391635" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.253.138.96/27" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:129776340158:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-gov-west-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z31GFT0UA1I2HV" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z4KAURWC4UUUG" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.ELBV2_ACCOUNT, value: "048591011584" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.61.204.160/27" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:127562683043:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-east-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.ELBV2_ACCOUNT, value: "770363063475" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-west-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.ELBV2_ACCOUNT, value: "121062877647" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-east-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.ELBV2_ACCOUNT, value: "740734521339" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-west-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-east-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03373031FTGQH4MNG6ST" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.ELBV2_ACCOUNT, value: "091100254016" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "303241398832" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-south-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03376072I8GXC2DXUFXI" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.ELBV2_ACCOUNT, value: "412137745753" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "454834333376" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-1.amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2F56UZL2M1ACD" });
+        Fact.register({ region: "us-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1LQECGX5PH1X" });
+        Fact.register({ region: "us-west-1", name: FactName.ELBV2_ACCOUNT, value: "027434742980" });
+        Fact.register({ region: "us-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.57.135.192/27" });
+        Fact.register({ region: "us-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:124" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:121" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:78" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:77" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-2.amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BJ6K6RIION7M" });
+        Fact.register({ region: "us-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z38NKT9BP95V3O" });
+        Fact.register({ region: "us-west-2", name: FactName.ELBV2_ACCOUNT, value: "797873946194" });
+        Fact.register({ region: "us-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.89.255.224/27" });
+        Fact.register({ region: "us-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:146" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:45" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:143" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:114" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:101" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:100" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/index.ts
+var init_lib2 = __esm({
+  "../../aws-cdk-lib/region-info/lib/index.ts"() {
+    "use strict";
+    init_default();
+    init_fact();
+    init_region_info();
+    init_built_ins_generated();
+    BuiltIns.register();
+  }
+});
+
+// ../../aws-cdk-lib/region-info/index.ts
+var init_region_info2 = __esm({
+  "../../aws-cdk-lib/region-info/index.ts"() {
+    "use strict";
+    init_lib2();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts
+function determineLatestNodeRuntimeName(scope) {
+  return stackOf(scope).regionalFact(FactName.LATEST_NODE_RUNTIME, "nodejs24.x");
+}
+var init_custom_resource_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_region_info2();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts
+var init_custom_resource_provider2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_custom_resource_provider();
+    init_shared();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts
+var path9, CfnUtilsProvider;
+var init_cfn_utils_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts"() {
+    "use strict";
+    path9 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CfnUtilsProvider = class _CfnUtilsProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CfnUtilsProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path9.join(__dirname, "cfn-utils-provider"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts
+var import_constructs9, CfnUtilsProvider2, CfnUtils;
+var init_cfn_utils_provider = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts"() {
+    "use strict";
+    import_constructs9 = __toESM(require_lib4());
+    init_custom_resource();
+    init_consts();
+    init_cfn_utils_provider_generated();
+    CfnUtilsProvider2 = class extends import_constructs9.Construct {
+      static getOrCreate(scope) {
+        return CfnUtilsProvider.getOrCreate(scope, "AWSCDKCfnUtilsProvider");
+      }
+    };
+    CfnUtils = class {
+      /**
+       * Encode a structure to JSON at CloudFormation deployment time
+       *
+       * This would have been suitable for the JSON-encoding of arbitrary structures, however:
+       *
+       * - It uses a custom resource to do the encoding, and we'd rather not use a custom
+       *   resource if we can avoid it.
+       * - It cannot be used to encode objects where the keys of the objects can contain
+       *   tokens--because those cannot be represented in the JSON encoding that CloudFormation
+       *   templates use.
+       *
+       * This helper is used by `CloudFormationLang.toJSON()` if and only if it encounters
+       * objects that cannot be stringified any other way.
+       */
+      static stringify(scope, id, value) {
+        const resource = new CustomResource(scope, id, {
+          serviceToken: CfnUtilsProvider2.getOrCreate(scope),
+          resourceType: "Custom::AWSCDKCfnJsonStringify" /* CFN_JSON_STRINGIFY */,
+          properties: {
+            Value: value
+          }
+        });
+        return resource.getAttString("Value");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js
+var require_PlainValue_516d5bc2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js"(exports2) {
+    "use strict";
+    var Char = {
+      ANCHOR: "&",
+      COMMENT: "#",
+      TAG: "!",
+      DIRECTIVES_END: "-",
+      DOCUMENT_END: "."
+    };
+    var Type = {
+      ALIAS: "ALIAS",
+      BLANK_LINE: "BLANK_LINE",
+      BLOCK_FOLDED: "BLOCK_FOLDED",
+      BLOCK_LITERAL: "BLOCK_LITERAL",
+      COMMENT: "COMMENT",
+      DIRECTIVE: "DIRECTIVE",
+      DOCUMENT: "DOCUMENT",
+      FLOW_MAP: "FLOW_MAP",
+      FLOW_SEQ: "FLOW_SEQ",
+      MAP: "MAP",
+      MAP_KEY: "MAP_KEY",
+      MAP_VALUE: "MAP_VALUE",
+      PLAIN: "PLAIN",
+      QUOTE_DOUBLE: "QUOTE_DOUBLE",
+      QUOTE_SINGLE: "QUOTE_SINGLE",
+      SEQ: "SEQ",
+      SEQ_ITEM: "SEQ_ITEM"
+    };
+    var defaultTagPrefix = "tag:yaml.org,2002:";
+    var defaultTags = {
+      MAP: "tag:yaml.org,2002:map",
+      SEQ: "tag:yaml.org,2002:seq",
+      STR: "tag:yaml.org,2002:str"
+    };
+    function findLineStarts(src) {
+      const ls = [0];
+      let offset = src.indexOf("\n");
+      while (offset !== -1) {
+        offset += 1;
+        ls.push(offset);
+        offset = src.indexOf("\n", offset);
+      }
+      return ls;
+    }
+    function getSrcInfo(cst) {
+      let lineStarts, src;
+      if (typeof cst === "string") {
+        lineStarts = findLineStarts(cst);
+        src = cst;
+      } else {
+        if (Array.isArray(cst)) cst = cst[0];
+        if (cst && cst.context) {
+          if (!cst.lineStarts) cst.lineStarts = findLineStarts(cst.context.src);
+          lineStarts = cst.lineStarts;
+          src = cst.context.src;
+        }
+      }
+      return {
+        lineStarts,
+        src
+      };
+    }
+    function getLinePos(offset, cst) {
+      if (typeof offset !== "number" || offset < 0) return null;
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !src || offset > src.length) return null;
+      for (let i = 0; i < lineStarts.length; ++i) {
+        const start = lineStarts[i];
+        if (offset < start) {
+          return {
+            line: i,
+            col: offset - lineStarts[i - 1] + 1
+          };
+        }
+        if (offset === start) return {
+          line: i + 1,
+          col: 1
+        };
+      }
+      const line = lineStarts.length;
+      return {
+        line,
+        col: offset - lineStarts[line - 1] + 1
+      };
+    }
+    function getLine(line, cst) {
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !(line >= 1) || line > lineStarts.length) return null;
+      const start = lineStarts[line - 1];
+      let end = lineStarts[line];
+      while (end && end > start && src[end - 1] === "\n") --end;
+      return src.slice(start, end);
+    }
+    function getPrettyContext({
+      start,
+      end
+    }, cst, maxWidth = 80) {
+      let src = getLine(start.line, cst);
+      if (!src) return null;
+      let {
+        col
+      } = start;
+      if (src.length > maxWidth) {
+        if (col <= maxWidth - 10) {
+          src = src.substr(0, maxWidth - 1) + "\u2026";
+        } else {
+          const halfWidth = Math.round(maxWidth / 2);
+          if (src.length > col + halfWidth) src = src.substr(0, col + halfWidth - 1) + "\u2026";
+          col -= src.length - maxWidth;
+          src = "\u2026" + src.substr(1 - maxWidth);
+        }
+      }
+      let errLen = 1;
+      let errEnd = "";
+      if (end) {
+        if (end.line === start.line && col + (end.col - start.col) <= maxWidth + 1) {
+          errLen = end.col - start.col;
+        } else {
+          errLen = Math.min(src.length + 1, maxWidth) - col;
+          errEnd = "\u2026";
+        }
+      }
+      const offset = col > 1 ? " ".repeat(col - 1) : "";
+      const err = "^".repeat(errLen);
+      return `${src}
+${offset}${err}${errEnd}`;
+    }
+    var Range = class _Range {
+      static copy(orig) {
+        return new _Range(orig.start, orig.end);
+      }
+      constructor(start, end) {
+        this.start = start;
+        this.end = end || start;
+      }
+      isEmpty() {
+        return typeof this.start !== "number" || !this.end || this.end <= this.start;
+      }
+      /**
+       * Set `origStart` and `origEnd` to point to the original source range for
+       * this node, which may differ due to dropped CR characters.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRange(cr, offset) {
+        const {
+          start,
+          end
+        } = this;
+        if (cr.length === 0 || end <= cr[0]) {
+          this.origStart = start;
+          this.origEnd = end;
+          return offset;
+        }
+        let i = offset;
+        while (i < cr.length) {
+          if (cr[i] > start) break;
+          else ++i;
+        }
+        this.origStart = start + i;
+        const nextOffset = i;
+        while (i < cr.length) {
+          if (cr[i] >= end) break;
+          else ++i;
+        }
+        this.origEnd = end + i;
+        return nextOffset;
+      }
+    };
+    var Node11 = class _Node {
+      static addStringTerminator(src, offset, str) {
+        if (str[str.length - 1] === "\n") return str;
+        const next = _Node.endOfWhiteSpace(src, offset);
+        return next >= src.length || src[next] === "\n" ? str + "\n" : str;
+      }
+      // ^(---|...)
+      static atDocumentBoundary(src, offset, sep3) {
+        const ch0 = src[offset];
+        if (!ch0) return true;
+        const prev = src[offset - 1];
+        if (prev && prev !== "\n") return false;
+        if (sep3) {
+          if (ch0 !== sep3) return false;
+        } else {
+          if (ch0 !== Char.DIRECTIVES_END && ch0 !== Char.DOCUMENT_END) return false;
+        }
+        const ch1 = src[offset + 1];
+        const ch2 = src[offset + 2];
+        if (ch1 !== ch0 || ch2 !== ch0) return false;
+        const ch3 = src[offset + 3];
+        return !ch3 || ch3 === "\n" || ch3 === "	" || ch3 === " ";
+      }
+      static endOfIdentifier(src, offset) {
+        let ch = src[offset];
+        const isVerbatim = ch === "<";
+        const notOk = isVerbatim ? ["\n", "	", " ", ">"] : ["\n", "	", " ", "[", "]", "{", "}", ","];
+        while (ch && notOk.indexOf(ch) === -1) ch = src[offset += 1];
+        if (isVerbatim && ch === ">") offset += 1;
+        return offset;
+      }
+      static endOfIndent(src, offset) {
+        let ch = src[offset];
+        while (ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfLine(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== "\n") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfWhiteSpace(src, offset) {
+        let ch = src[offset];
+        while (ch === "	" || ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static startOfLine(src, offset) {
+        let ch = src[offset - 1];
+        if (ch === "\n") return offset;
+        while (ch && ch !== "\n") ch = src[offset -= 1];
+        return offset + 1;
+      }
+      /**
+       * End of indentation, or null if the line's indent level is not more
+       * than `indent`
+       *
+       * @param {string} src
+       * @param {number} indent
+       * @param {number} lineStart
+       * @returns {?number}
+       */
+      static endOfBlockIndent(src, indent, lineStart) {
+        const inEnd = _Node.endOfIndent(src, lineStart);
+        if (inEnd > lineStart + indent) {
+          return inEnd;
+        } else {
+          const wsEnd = _Node.endOfWhiteSpace(src, inEnd);
+          const ch = src[wsEnd];
+          if (!ch || ch === "\n") return wsEnd;
+        }
+        return null;
+      }
+      static atBlank(src, offset, endAsBlank) {
+        const ch = src[offset];
+        return ch === "\n" || ch === "	" || ch === " " || endAsBlank && !ch;
+      }
+      static nextNodeIsIndented(ch, indentDiff, indicatorAsIndent) {
+        if (!ch || indentDiff < 0) return false;
+        if (indentDiff > 0) return true;
+        return indicatorAsIndent && ch === "-";
+      }
+      // should be at line or string end, or at next non-whitespace char
+      static normalizeOffset(src, offset) {
+        const ch = src[offset];
+        return !ch ? offset : ch !== "\n" && src[offset - 1] === "\n" ? offset - 1 : _Node.endOfWhiteSpace(src, offset);
+      }
+      // fold single newline into space, multiple newlines to N - 1 newlines
+      // presumes src[offset] === '\n'
+      static foldNewline(src, offset, indent) {
+        let inCount = 0;
+        let error = false;
+        let fold = "";
+        let ch = src[offset + 1];
+        while (ch === " " || ch === "	" || ch === "\n") {
+          switch (ch) {
+            case "\n":
+              inCount = 0;
+              offset += 1;
+              fold += "\n";
+              break;
+            case "	":
+              if (inCount <= indent) error = true;
+              offset = _Node.endOfWhiteSpace(src, offset + 2) - 1;
+              break;
+            case " ":
+              inCount += 1;
+              offset += 1;
+              break;
+          }
+          ch = src[offset + 1];
+        }
+        if (!fold) fold = " ";
+        if (ch && inCount <= indent) error = true;
+        return {
+          fold,
+          offset,
+          error
+        };
+      }
+      constructor(type, props, context) {
+        Object.defineProperty(this, "context", {
+          value: context || null,
+          writable: true
+        });
+        this.error = null;
+        this.range = null;
+        this.valueRange = null;
+        this.props = props || [];
+        this.type = type;
+        this.value = null;
+      }
+      getPropValue(idx, key, skipKey) {
+        if (!this.context) return null;
+        const {
+          src
+        } = this.context;
+        const prop = this.props[idx];
+        return prop && src[prop.start] === key ? src.slice(prop.start + (skipKey ? 1 : 0), prop.end) : null;
+      }
+      get anchor() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const anchor = this.getPropValue(i, Char.ANCHOR, true);
+          if (anchor != null) return anchor;
+        }
+        return null;
+      }
+      get comment() {
+        const comments = [];
+        for (let i = 0; i < this.props.length; ++i) {
+          const comment = this.getPropValue(i, Char.COMMENT, true);
+          if (comment != null) comments.push(comment);
+        }
+        return comments.length > 0 ? comments.join("\n") : null;
+      }
+      commentHasRequiredWhitespace(start) {
+        const {
+          src
+        } = this.context;
+        if (this.header && start === this.header.end) return false;
+        if (!this.valueRange) return false;
+        const {
+          end
+        } = this.valueRange;
+        return start !== end || _Node.atBlank(src, end - 1);
+      }
+      get hasComment() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] === Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get hasProps() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] !== Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get includesTrailingLines() {
+        return false;
+      }
+      get jsonLike() {
+        const jsonLikeTypes = [Type.FLOW_MAP, Type.FLOW_SEQ, Type.QUOTE_DOUBLE, Type.QUOTE_SINGLE];
+        return jsonLikeTypes.indexOf(this.type) !== -1;
+      }
+      get rangeAsLinePos() {
+        if (!this.range || !this.context) return void 0;
+        const start = getLinePos(this.range.start, this.context.root);
+        if (!start) return void 0;
+        const end = getLinePos(this.range.end, this.context.root);
+        return {
+          start,
+          end
+        };
+      }
+      get rawValue() {
+        if (!this.valueRange || !this.context) return null;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        return this.context.src.slice(start, end);
+      }
+      get tag() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const tag = this.getPropValue(i, Char.TAG, false);
+          if (tag != null) {
+            if (tag[1] === "<") {
+              return {
+                verbatim: tag.slice(2, -1)
+              };
+            } else {
+              const [_, handle, suffix] = tag.match(/^(.*!)([^!]*)$/);
+              return {
+                handle,
+                suffix
+              };
+            }
+          }
+        }
+        return null;
+      }
+      get valueRangeContainsNewline() {
+        if (!this.valueRange || !this.context) return false;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        for (let i = start; i < end; ++i) {
+          if (src[i] === "\n") return true;
+        }
+        return false;
+      }
+      parseComment(start) {
+        const {
+          src
+        } = this.context;
+        if (src[start] === Char.COMMENT) {
+          const end = _Node.endOfLine(src, start + 1);
+          const commentRange = new Range(start, end);
+          this.props.push(commentRange);
+          return end;
+        }
+        return start;
+      }
+      /**
+       * Populates the `origStart` and `origEnd` values of all ranges for this
+       * node. Extended by child classes to handle descendant nodes.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRanges(cr, offset) {
+        if (this.range) offset = this.range.setOrigRange(cr, offset);
+        if (this.valueRange) this.valueRange.setOrigRange(cr, offset);
+        this.props.forEach((prop) => prop.setOrigRange(cr, offset));
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = src.slice(range4.start, range4.end);
+        return _Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var YAMLError = class extends Error {
+      constructor(name, source, message) {
+        if (!message || !(source instanceof Node11)) throw new Error(`Invalid arguments for new ${name}`);
+        super();
+        this.name = name;
+        this.message = message;
+        this.source = source;
+      }
+      makePretty() {
+        if (!this.source) return;
+        this.nodeType = this.source.type;
+        const cst = this.source.context && this.source.context.root;
+        if (typeof this.offset === "number") {
+          this.range = new Range(this.offset, this.offset + 1);
+          const start = cst && getLinePos(this.offset, cst);
+          if (start) {
+            const end = {
+              line: start.line,
+              col: start.col + 1
+            };
+            this.linePos = {
+              start,
+              end
+            };
+          }
+          delete this.offset;
+        } else {
+          this.range = this.source.range;
+          this.linePos = this.source.rangeAsLinePos;
+        }
+        if (this.linePos) {
+          const {
+            line,
+            col
+          } = this.linePos.start;
+          this.message += ` at line ${line}, column ${col}`;
+          const ctx = cst && getPrettyContext(this.linePos, cst);
+          if (ctx) this.message += `:
+
+${ctx}
+`;
+        }
+        delete this.source;
+      }
+    };
+    var YAMLReferenceError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLReferenceError", source, message);
+      }
+    };
+    var YAMLSemanticError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSemanticError", source, message);
+      }
+    };
+    var YAMLSyntaxError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSyntaxError", source, message);
+      }
+    };
+    var YAMLWarning = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLWarning", source, message);
+      }
+    };
+    function _defineProperty(e, r, t) {
+      return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
+        value: t,
+        enumerable: true,
+        configurable: true,
+        writable: true
+      }) : e[r] = t, e;
+    }
+    function _toPrimitive(t, r) {
+      if ("object" != typeof t || !t) return t;
+      var e = t[Symbol.toPrimitive];
+      if (void 0 !== e) {
+        var i = e.call(t, r || "default");
+        if ("object" != typeof i) return i;
+        throw new TypeError("@@toPrimitive must return a primitive value.");
+      }
+      return ("string" === r ? String : Number)(t);
+    }
+    function _toPropertyKey(t) {
+      var i = _toPrimitive(t, "string");
+      return "symbol" == typeof i ? i : i + "";
+    }
+    var PlainValue = class _PlainValue extends Node11 {
+      static endOfLine(src, start, inFlow) {
+        let ch = src[start];
+        let offset = start;
+        while (ch && ch !== "\n") {
+          if (inFlow && (ch === "[" || ch === "]" || ch === "{" || ch === "}" || ch === ",")) break;
+          const next = src[offset + 1];
+          if (ch === ":" && (!next || next === "\n" || next === "	" || next === " " || inFlow && next === ",")) break;
+          if ((ch === " " || ch === "	") && next === "#") break;
+          offset += 1;
+          ch = next;
+        }
+        return offset;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        let ch = src[end - 1];
+        while (start < end && (ch === "\n" || ch === "	" || ch === " ")) ch = src[--end - 1];
+        let str = "";
+        for (let i = start; i < end; ++i) {
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            const {
+              fold,
+              offset
+            } = Node11.foldNewline(src, i, -1);
+            str += fold;
+            i = offset;
+          } else if (ch2 === " " || ch2 === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (i < end && (next === " " || next === "	")) {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch2;
+          } else {
+            str += ch2;
+          }
+        }
+        const ch0 = src[start];
+        switch (ch0) {
+          case "	": {
+            const msg = "Plain value cannot start with a tab character";
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          case "@":
+          case "`": {
+            const msg = `Plain value cannot start with reserved character ${ch0}`;
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          default:
+            return str;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          inFlow,
+          src
+        } = this.context;
+        let offset = start;
+        let valueEnd = start;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          if (Node11.atDocumentBoundary(src, offset + 1)) break;
+          const end = Node11.endOfBlockIndent(src, indent, offset + 1);
+          if (end === null || src[end] === "#") break;
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            valueEnd = _PlainValue.endOfLine(src, end, inFlow);
+            offset = valueEnd;
+          }
+        }
+        if (this.valueRange.isEmpty()) this.valueRange.start = start;
+        this.valueRange.end = valueEnd;
+        return valueEnd;
+      }
+      /**
+       * Parses a plain value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * #comment
+       *
+       * first line
+       *
+       * first line #comment
+       *
+       * first line
+       * block
+       * lines
+       *
+       * #comment
+       * block
+       * lines
+       * ```
+       * where block lines are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar, may be `\n`
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          inFlow,
+          src
+        } = context;
+        let offset = start;
+        const ch = src[offset];
+        if (ch && ch !== "#" && ch !== "\n") {
+          offset = _PlainValue.endOfLine(src, start, inFlow);
+        }
+        this.valueRange = new Range(start, offset);
+        offset = Node11.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        if (!this.hasComment || this.valueRange.isEmpty()) {
+          offset = this.parseBlockValue(offset);
+        }
+        return offset;
+      }
+    };
+    exports2.Char = Char;
+    exports2.Node = Node11;
+    exports2.PlainValue = PlainValue;
+    exports2.Range = Range;
+    exports2.Type = Type;
+    exports2.YAMLError = YAMLError;
+    exports2.YAMLReferenceError = YAMLReferenceError;
+    exports2.YAMLSemanticError = YAMLSemanticError;
+    exports2.YAMLSyntaxError = YAMLSyntaxError;
+    exports2.YAMLWarning = YAMLWarning;
+    exports2._defineProperty = _defineProperty;
+    exports2.defaultTagPrefix = defaultTagPrefix;
+    exports2.defaultTags = defaultTags;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js
+var require_parse_cst = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var BlankLine = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.BLANK_LINE);
+      }
+      /* istanbul ignore next */
+      get includesTrailingLines() {
+        return true;
+      }
+      /**
+       * Parses a blank line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first \n character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        this.range = new PlainValue.Range(start, start + 1);
+        return start + 1;
+      }
+    };
+    var CollectionItem = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.node = null;
+      }
+      get includesTrailingLines() {
+        return !!this.node && this.node.includesTrailingLines;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          atLineStart,
+          lineStart
+        } = context;
+        if (!atLineStart && this.type === PlainValue.Type.SEQ_ITEM) this.error = new PlainValue.YAMLSemanticError(this, "Sequence items must not have preceding content on the same line");
+        const indent = atLineStart ? start - lineStart : context.indent;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        let ch = src[offset];
+        const inlineComment = ch === "#";
+        const comments = [];
+        let blankLine = null;
+        while (ch === "\n" || ch === "#") {
+          if (ch === "#") {
+            const end2 = PlainValue.Node.endOfLine(src, offset + 1);
+            comments.push(new PlainValue.Range(offset, end2));
+            offset = end2;
+          } else {
+            atLineStart = true;
+            lineStart = offset + 1;
+            const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+            if (src[wsEnd] === "\n" && comments.length === 0) {
+              blankLine = new BlankLine();
+              lineStart = blankLine.parse({
+                src
+              }, lineStart);
+            }
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+          }
+          ch = src[offset];
+        }
+        if (PlainValue.Node.nextNodeIsIndented(ch, offset - (lineStart + indent), this.type !== PlainValue.Type.SEQ_ITEM)) {
+          this.node = parseNode({
+            atLineStart,
+            inCollection: false,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+        } else if (ch && lineStart > start + 1) {
+          offset = lineStart - 1;
+        }
+        if (this.node) {
+          if (blankLine) {
+            const items = context.parent.items || context.parent.contents;
+            if (items) items.push(blankLine);
+          }
+          if (comments.length) Array.prototype.push.apply(this.props, comments);
+          offset = this.node.range.end;
+        } else {
+          if (inlineComment) {
+            const c = comments[0];
+            this.props.push(c);
+            offset = c.end;
+          } else {
+            offset = PlainValue.Node.endOfLine(src, start + 1);
+          }
+        }
+        const end = this.node ? this.node.valueRange.end : offset;
+        this.valueRange = new PlainValue.Range(start, end);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.node ? this.node.setOrigRanges(cr, offset) : offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          node,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = node ? src.slice(range4.start, node.range.start) + String(node) : src.slice(range4.start, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Comment = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.COMMENT);
+      }
+      /**
+       * Parses a comment line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const offset = this.parseComment(start);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    function grabCollectionEndComments(node) {
+      let cnode = node;
+      while (cnode instanceof CollectionItem) cnode = cnode.node;
+      if (!(cnode instanceof Collection2)) return null;
+      const len = cnode.items.length;
+      let ci = -1;
+      for (let i = len - 1; i >= 0; --i) {
+        const n = cnode.items[i];
+        if (n.type === PlainValue.Type.COMMENT) {
+          const {
+            indent,
+            lineStart
+          } = n.context;
+          if (indent > 0 && n.range.start >= lineStart + indent) break;
+          ci = i;
+        } else if (n.type === PlainValue.Type.BLANK_LINE) ci = i;
+        else break;
+      }
+      if (ci === -1) return null;
+      const ca = cnode.items.splice(ci, len - ci);
+      const prevEnd = ca[0].range.start;
+      while (true) {
+        cnode.range.end = prevEnd;
+        if (cnode.valueRange && cnode.valueRange.end > prevEnd) cnode.valueRange.end = prevEnd;
+        if (cnode === node) break;
+        cnode = cnode.context.parent;
+      }
+      return ca;
+    }
+    var Collection2 = class _Collection extends PlainValue.Node {
+      static nextContentHasIndent(src, offset, indent) {
+        const lineStart = PlainValue.Node.endOfLine(src, offset) + 1;
+        offset = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+        const ch = src[offset];
+        if (!ch) return false;
+        if (offset >= lineStart + indent) return true;
+        if (ch !== "#" && ch !== "\n") return false;
+        return _Collection.nextContentHasIndent(src, offset, indent);
+      }
+      constructor(firstItem) {
+        super(firstItem.type === PlainValue.Type.SEQ_ITEM ? PlainValue.Type.SEQ : PlainValue.Type.MAP);
+        for (let i = firstItem.props.length - 1; i >= 0; --i) {
+          if (firstItem.props[i].start < firstItem.context.lineStart) {
+            this.props = firstItem.props.slice(0, i + 1);
+            firstItem.props = firstItem.props.slice(i + 1);
+            const itemRange = firstItem.props[0] || firstItem.valueRange;
+            firstItem.range.start = itemRange.start;
+            break;
+          }
+        }
+        this.items = [firstItem];
+        const ec = grabCollectionEndComments(firstItem);
+        if (ec) Array.prototype.push.apply(this.items, ec);
+      }
+      get includesTrailingLines() {
+        return this.items.length > 0;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let lineStart = PlainValue.Node.startOfLine(src, start);
+        const firstItem = this.items[0];
+        firstItem.context.parent = this;
+        this.valueRange = PlainValue.Range.copy(firstItem.valueRange);
+        const indent = firstItem.range.start - firstItem.context.lineStart;
+        let offset = start;
+        offset = PlainValue.Node.normalizeOffset(src, offset);
+        let ch = src[offset];
+        let atLineStart = PlainValue.Node.endOfWhiteSpace(src, lineStart) === offset;
+        let prevIncludesTrailingLines = false;
+        while (ch) {
+          while (ch === "\n" || ch === "#") {
+            if (atLineStart && ch === "\n" && !prevIncludesTrailingLines) {
+              const blankLine = new BlankLine();
+              offset = blankLine.parse({
+                src
+              }, offset);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+              this.items.push(blankLine);
+              offset -= 1;
+            } else if (ch === "#") {
+              if (offset < lineStart + indent && !_Collection.nextContentHasIndent(src, offset, indent)) {
+                return offset;
+              }
+              const comment = new Comment();
+              offset = comment.parse({
+                indent,
+                lineStart,
+                src
+              }, offset);
+              this.items.push(comment);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+            }
+            lineStart = offset + 1;
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+            if (PlainValue.Node.atBlank(src, offset)) {
+              const wsEnd = PlainValue.Node.endOfWhiteSpace(src, offset);
+              const next = src[wsEnd];
+              if (!next || next === "\n" || next === "#") {
+                offset = wsEnd;
+              }
+            }
+            ch = src[offset];
+            atLineStart = true;
+          }
+          if (!ch) {
+            break;
+          }
+          if (offset !== lineStart + indent && (atLineStart || ch !== ":")) {
+            if (offset < lineStart + indent) {
+              if (lineStart > start) offset = lineStart;
+              break;
+            } else if (!this.error) {
+              const msg = "All collection items must start at the same column";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          if (firstItem.type === PlainValue.Type.SEQ_ITEM) {
+            if (ch !== "-") {
+              if (lineStart > start) offset = lineStart;
+              break;
+            }
+          } else if (ch === "-" && !this.error) {
+            const next = src[offset + 1];
+            if (!next || next === "\n" || next === "	" || next === " ") {
+              const msg = "A collection cannot be both a mapping and a sequence";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          const node = parseNode({
+            atLineStart,
+            inCollection: true,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+          if (!node) return offset;
+          this.items.push(node);
+          this.valueRange.end = node.valueRange.end;
+          offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+          ch = src[offset];
+          atLineStart = false;
+          prevIncludesTrailingLines = node.includesTrailingLines;
+          if (ch) {
+            let ls = offset - 1;
+            let prev = src[ls];
+            while (prev === " " || prev === "	") prev = src[--ls];
+            if (prev === "\n") {
+              lineStart = ls + 1;
+              atLineStart = true;
+            }
+          }
+          const ec = grabCollectionEndComments(node);
+          if (ec) Array.prototype.push.apply(this.items, ec);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = src.slice(range4.start, items[0].range.start) + String(items[0]);
+        for (let i = 1; i < items.length; ++i) {
+          const item = items[i];
+          const {
+            atLineStart,
+            indent
+          } = item.context;
+          if (atLineStart) for (let i2 = 0; i2 < indent; ++i2) str += " ";
+          str += String(item);
+        }
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Directive = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.DIRECTIVE);
+        this.name = null;
+      }
+      get parameters() {
+        const raw = this.rawValue;
+        return raw ? raw.trim().split(/[ \t]+/) : [];
+      }
+      parseName(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "	" && ch !== " ") ch = src[offset += 1];
+        this.name = src.slice(start, offset);
+        return offset;
+      }
+      parseParameters(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "#") ch = src[offset += 1];
+        this.valueRange = new PlainValue.Range(start, offset);
+        return offset;
+      }
+      parse(context, start) {
+        this.context = context;
+        let offset = this.parseName(start + 1);
+        offset = this.parseParameters(offset);
+        offset = this.parseComment(offset);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    var Document = class _Document extends PlainValue.Node {
+      static startCommentOrEndBlankLine(src, start) {
+        const offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        const ch = src[offset];
+        return ch === "#" || ch === "\n" ? offset : start;
+      }
+      constructor() {
+        super(PlainValue.Type.DOCUMENT);
+        this.directives = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.documentEndMarker = null;
+      }
+      parseDirectives(start) {
+        const {
+          src
+        } = this.context;
+        this.directives = [];
+        let atLineStart = true;
+        let hasDirectives = false;
+        let offset = start;
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DIRECTIVES_END)) {
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.directives.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.directives.push(comment);
+                atLineStart = false;
+              }
+              break;
+            case "%":
+              {
+                const directive = new Directive();
+                offset = directive.parse({
+                  parent: this,
+                  src
+                }, offset);
+                this.directives.push(directive);
+                hasDirectives = true;
+                atLineStart = false;
+              }
+              break;
+            default:
+              if (hasDirectives) {
+                this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+              } else if (this.directives.length > 0) {
+                this.contents = this.directives;
+                this.directives = [];
+              }
+              return offset;
+          }
+        }
+        if (src[offset]) {
+          this.directivesEndMarker = new PlainValue.Range(offset, offset + 3);
+          return offset + 3;
+        }
+        if (hasDirectives) {
+          this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+        } else if (this.directives.length > 0) {
+          this.contents = this.directives;
+          this.directives = [];
+        }
+        return offset;
+      }
+      parseContents(start) {
+        const {
+          parseNode,
+          src
+        } = this.context;
+        if (!this.contents) this.contents = [];
+        let lineStart = start;
+        while (src[lineStart - 1] === "-") lineStart -= 1;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        let atLineStart = lineStart === start;
+        this.valueRange = new PlainValue.Range(offset);
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DOCUMENT_END)) {
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.contents.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              lineStart = offset;
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.contents.push(comment);
+                atLineStart = false;
+              }
+              break;
+            default: {
+              const iEnd = PlainValue.Node.endOfIndent(src, offset);
+              const context = {
+                atLineStart,
+                indent: -1,
+                inFlow: false,
+                inCollection: false,
+                lineStart,
+                parent: this
+              };
+              const node = parseNode(context, iEnd);
+              if (!node) return this.valueRange.end = iEnd;
+              this.contents.push(node);
+              offset = node.range.end;
+              atLineStart = false;
+              const ec = grabCollectionEndComments(node);
+              if (ec) Array.prototype.push.apply(this.contents, ec);
+            }
+          }
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+        }
+        this.valueRange.end = offset;
+        if (src[offset]) {
+          this.documentEndMarker = new PlainValue.Range(offset, offset + 3);
+          offset += 3;
+          if (src[offset]) {
+            offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+            if (src[offset] === "#") {
+              const comment = new Comment();
+              offset = comment.parse({
+                src
+              }, offset);
+              this.contents.push(comment);
+            }
+            switch (src[offset]) {
+              case "\n":
+                offset += 1;
+                break;
+              case void 0:
+                break;
+              default:
+                this.error = new PlainValue.YAMLSyntaxError(this, "Document end marker line cannot have a non-comment suffix");
+            }
+          }
+        }
+        return offset;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        context.root = this;
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = src.charCodeAt(start) === 65279 ? start + 1 : start;
+        offset = this.parseDirectives(offset);
+        offset = this.parseContents(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.directives.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.directivesEndMarker) offset = this.directivesEndMarker.setOrigRange(cr, offset);
+        this.contents.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.documentEndMarker) offset = this.documentEndMarker.setOrigRange(cr, offset);
+        return offset;
+      }
+      toString() {
+        const {
+          contents,
+          directives,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = directives.join("");
+        if (contents.length > 0) {
+          if (directives.length > 0 || contents[0].type === PlainValue.Type.COMMENT) str += "---\n";
+          str += contents.join("");
+        }
+        if (str[str.length - 1] !== "\n") str += "\n";
+        return str;
+      }
+    };
+    var Alias2 = class extends PlainValue.Node {
+      /**
+       * Parses an *alias from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = PlainValue.Node.endOfIdentifier(src, start + 1);
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var Chomp = {
+      CLIP: "CLIP",
+      KEEP: "KEEP",
+      STRIP: "STRIP"
+    };
+    var BlockValue = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.blockIndent = null;
+        this.chomping = Chomp.CLIP;
+        this.header = null;
+      }
+      get includesTrailingLines() {
+        return this.chomping === Chomp.KEEP;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (this.valueRange.isEmpty()) return "";
+        let lastNewLine = null;
+        let ch = src[end - 1];
+        while (ch === "\n" || ch === "	" || ch === " ") {
+          end -= 1;
+          if (end <= start) {
+            if (this.chomping === Chomp.KEEP) break;
+            else return "";
+          }
+          if (ch === "\n") lastNewLine = end;
+          ch = src[end - 1];
+        }
+        let keepStart = end + 1;
+        if (lastNewLine) {
+          if (this.chomping === Chomp.KEEP) {
+            keepStart = lastNewLine;
+            end = this.valueRange.end;
+          } else {
+            end = lastNewLine;
+          }
+        }
+        const bi = indent + this.blockIndent;
+        const folded = this.type === PlainValue.Type.BLOCK_FOLDED;
+        let atStart = true;
+        let str = "";
+        let sep3 = "";
+        let prevMoreIndented = false;
+        for (let i = start; i < end; ++i) {
+          for (let j = 0; j < bi; ++j) {
+            if (src[i] !== " ") break;
+            i += 1;
+          }
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            if (sep3 === "\n") str += "\n";
+            else sep3 = "\n";
+          } else {
+            const lineEnd = PlainValue.Node.endOfLine(src, i);
+            const line = src.slice(i, lineEnd);
+            i = lineEnd;
+            if (folded && (ch2 === " " || ch2 === "	") && i < keepStart) {
+              if (sep3 === " ") sep3 = "\n";
+              else if (!prevMoreIndented && !atStart && sep3 === "\n") sep3 = "\n\n";
+              str += sep3 + line;
+              sep3 = lineEnd < end && src[lineEnd] || "";
+              prevMoreIndented = true;
+            } else {
+              str += sep3 + line;
+              sep3 = folded && i < keepStart ? " " : "\n";
+              prevMoreIndented = false;
+            }
+            if (atStart && line !== "") atStart = false;
+          }
+        }
+        return this.chomping === Chomp.STRIP ? str : str + "\n";
+      }
+      parseBlockHeader(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start + 1;
+        let bi = "";
+        while (true) {
+          const ch = src[offset];
+          switch (ch) {
+            case "-":
+              this.chomping = Chomp.STRIP;
+              break;
+            case "+":
+              this.chomping = Chomp.KEEP;
+              break;
+            case "0":
+            case "1":
+            case "2":
+            case "3":
+            case "4":
+            case "5":
+            case "6":
+            case "7":
+            case "8":
+            case "9":
+              bi += ch;
+              break;
+            default:
+              this.blockIndent = Number(bi) || null;
+              this.header = new PlainValue.Range(start, offset);
+              return offset;
+          }
+          offset += 1;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          src
+        } = this.context;
+        const explicit = !!this.blockIndent;
+        let offset = start;
+        let valueEnd = start;
+        let minBlockIndent = 1;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          offset += 1;
+          if (PlainValue.Node.atDocumentBoundary(src, offset)) break;
+          const end = PlainValue.Node.endOfBlockIndent(src, indent, offset);
+          if (end === null) break;
+          const ch2 = src[end];
+          const lineIndent = end - (offset + indent);
+          if (!this.blockIndent) {
+            if (src[end] !== "\n") {
+              if (lineIndent < minBlockIndent) {
+                const msg = "Block scalars with more-indented leading empty lines must use an explicit indentation indicator";
+                this.error = new PlainValue.YAMLSemanticError(this, msg);
+              }
+              this.blockIndent = lineIndent;
+            } else if (lineIndent > minBlockIndent) {
+              minBlockIndent = lineIndent;
+            }
+          } else if (ch2 && ch2 !== "\n" && lineIndent < this.blockIndent) {
+            if (src[end] === "#") break;
+            if (!this.error) {
+              const src2 = explicit ? "explicit indentation indicator" : "first line";
+              const msg = `Block scalars must not be less indented than their ${src2}`;
+              this.error = new PlainValue.YAMLSemanticError(this, msg);
+            }
+          }
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            offset = valueEnd = PlainValue.Node.endOfLine(src, end);
+          }
+        }
+        if (this.chomping !== Chomp.KEEP) {
+          offset = src[valueEnd] ? valueEnd + 1 : valueEnd;
+        }
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        return offset;
+      }
+      /**
+       * Parses a block value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * BS
+       * block
+       * lines
+       *
+       * BS #comment
+       * block
+       * lines
+       * ```
+       * where the block style BS matches the regexp `[|>][-+1-9]*` and block lines
+       * are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this block
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = this.parseBlockHeader(start);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        offset = this.parseBlockValue(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.header ? this.header.setOrigRange(cr, offset) : offset;
+      }
+    };
+    var FlowCollection = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.items = null;
+      }
+      prevNodeIsJsonLike(idx = this.items.length) {
+        const node = this.items[idx - 1];
+        return !!node && (node.jsonLike || node.type === PlainValue.Type.COMMENT && this.prevNodeIsJsonLike(idx - 1));
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          indent,
+          lineStart
+        } = context;
+        let char = src[start];
+        this.items = [{
+          char,
+          offset: start
+        }];
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        char = src[offset];
+        while (char && char !== "]" && char !== "}") {
+          switch (char) {
+            case "\n":
+              {
+                lineStart = offset + 1;
+                const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+                if (src[wsEnd] === "\n") {
+                  const blankLine = new BlankLine();
+                  lineStart = blankLine.parse({
+                    src
+                  }, lineStart);
+                  this.items.push(blankLine);
+                }
+                offset = PlainValue.Node.endOfIndent(src, lineStart);
+                if (offset <= lineStart + indent) {
+                  char = src[offset];
+                  if (offset < lineStart + indent || char !== "]" && char !== "}") {
+                    const msg = "Insufficient indentation in flow collection";
+                    this.error = new PlainValue.YAMLSemanticError(this, msg);
+                  }
+                }
+              }
+              break;
+            case ",":
+              {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.items.push(comment);
+              }
+              break;
+            case "?":
+            case ":": {
+              const next = src[offset + 1];
+              if (next === "\n" || next === "	" || next === " " || next === "," || // in-flow : after JSON-like key does not need to be followed by whitespace
+              char === ":" && this.prevNodeIsJsonLike()) {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+                break;
+              }
+            }
+            // fallthrough
+            default: {
+              const node = parseNode({
+                atLineStart: false,
+                inCollection: false,
+                inFlow: true,
+                indent: -1,
+                lineStart,
+                parent: this
+              }, offset);
+              if (!node) {
+                this.valueRange = new PlainValue.Range(start, offset);
+                return offset;
+              }
+              this.items.push(node);
+              offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+            }
+          }
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+          char = src[offset];
+        }
+        this.valueRange = new PlainValue.Range(start, offset + 1);
+        if (char) {
+          this.items.push({
+            char,
+            offset
+          });
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset + 1);
+          offset = this.parseComment(offset);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          if (node instanceof PlainValue.Node) {
+            offset = node.setOrigRanges(cr, offset);
+          } else if (cr.length === 0) {
+            node.origOffset = node.offset;
+          } else {
+            let i = offset;
+            while (i < cr.length) {
+              if (cr[i] > node.offset) break;
+              else ++i;
+            }
+            node.origOffset = node.offset + i;
+            offset = i;
+          }
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const nodes = items.filter((item) => item instanceof PlainValue.Node);
+        let str = "";
+        let prevEnd = range4.start;
+        nodes.forEach((node) => {
+          const prefix = src.slice(prevEnd, node.range.start);
+          prevEnd = node.range.end;
+          str += prefix + String(node);
+          if (str[str.length - 1] === "\n" && src[prevEnd - 1] !== "\n" && src[prevEnd] === "\n") {
+            prevEnd += 1;
+          }
+        });
+        str += src.slice(prevEnd, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var QuoteDouble = class _QuoteDouble extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== '"') {
+          offset += ch === "\\" ? 2 : 1;
+          ch = src[offset];
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== '"') errors.push(new PlainValue.YAMLSyntaxError(this, 'Missing closing "quote'));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line double-quoted string needs to be sufficiently indented"));
+          } else if (ch === "\\") {
+            i += 1;
+            switch (src[i]) {
+              case "0":
+                str += "\0";
+                break;
+              // null character
+              case "a":
+                str += "\x07";
+                break;
+              // bell character
+              case "b":
+                str += "\b";
+                break;
+              // backspace
+              case "e":
+                str += "\x1B";
+                break;
+              // escape character
+              case "f":
+                str += "\f";
+                break;
+              // form feed
+              case "n":
+                str += "\n";
+                break;
+              // line feed
+              case "r":
+                str += "\r";
+                break;
+              // carriage return
+              case "t":
+                str += "	";
+                break;
+              // horizontal tab
+              case "v":
+                str += "\v";
+                break;
+              // vertical tab
+              case "N":
+                str += "\x85";
+                break;
+              // Unicode next line
+              case "_":
+                str += "\xA0";
+                break;
+              // Unicode non-breaking space
+              case "L":
+                str += "\u2028";
+                break;
+              // Unicode line separator
+              case "P":
+                str += "\u2029";
+                break;
+              // Unicode paragraph separator
+              case " ":
+                str += " ";
+                break;
+              case '"':
+                str += '"';
+                break;
+              case "/":
+                str += "/";
+                break;
+              case "\\":
+                str += "\\";
+                break;
+              case "	":
+                str += "	";
+                break;
+              case "x":
+                str += this.parseCharCode(i + 1, 2, errors);
+                i += 2;
+                break;
+              case "u":
+                str += this.parseCharCode(i + 1, 4, errors);
+                i += 4;
+                break;
+              case "U":
+                str += this.parseCharCode(i + 1, 8, errors);
+                i += 8;
+                break;
+              case "\n":
+                while (src[i + 1] === " " || src[i + 1] === "	") i += 1;
+                break;
+              default:
+                errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(i - 1, 2)}`));
+                str += "\\" + src[i];
+            }
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      parseCharCode(offset, length, errors) {
+        const {
+          src
+        } = this.context;
+        const cc = src.substr(offset, length);
+        const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc);
+        const code = ok ? parseInt(cc, 16) : NaN;
+        if (isNaN(code)) {
+          errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(offset - 2, length + 2)}`));
+          return src.substr(offset - 2, length + 2);
+        }
+        return String.fromCodePoint(code);
+      }
+      /**
+       * Parses a "double quoted" value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteDouble.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var QuoteSingle = class _QuoteSingle extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch) {
+          if (ch === "'") {
+            if (src[offset + 1] !== "'") break;
+            ch = src[offset += 2];
+          } else {
+            ch = src[offset += 1];
+          }
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Missing closing 'quote"));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line single-quoted string needs to be sufficiently indented"));
+          } else if (ch === "'") {
+            str += ch;
+            i += 1;
+            if (src[i] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Unescaped single quote? This should not happen."));
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      /**
+       * Parses a 'single quoted' value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteSingle.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    function createNewNode(type, props) {
+      switch (type) {
+        case PlainValue.Type.ALIAS:
+          return new Alias2(type, props);
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+          return new BlockValue(type, props);
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.FLOW_SEQ:
+          return new FlowCollection(type, props);
+        case PlainValue.Type.MAP_KEY:
+        case PlainValue.Type.MAP_VALUE:
+        case PlainValue.Type.SEQ_ITEM:
+          return new CollectionItem(type, props);
+        case PlainValue.Type.COMMENT:
+        case PlainValue.Type.PLAIN:
+          return new PlainValue.PlainValue(type, props);
+        case PlainValue.Type.QUOTE_DOUBLE:
+          return new QuoteDouble(type, props);
+        case PlainValue.Type.QUOTE_SINGLE:
+          return new QuoteSingle(type, props);
+        /* istanbul ignore next */
+        default:
+          return null;
+      }
+    }
+    var ParseContext = class _ParseContext {
+      static parseType(src, offset, inFlow) {
+        switch (src[offset]) {
+          case "*":
+            return PlainValue.Type.ALIAS;
+          case ">":
+            return PlainValue.Type.BLOCK_FOLDED;
+          case "|":
+            return PlainValue.Type.BLOCK_LITERAL;
+          case "{":
+            return PlainValue.Type.FLOW_MAP;
+          case "[":
+            return PlainValue.Type.FLOW_SEQ;
+          case "?":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_KEY : PlainValue.Type.PLAIN;
+          case ":":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_VALUE : PlainValue.Type.PLAIN;
+          case "-":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.SEQ_ITEM : PlainValue.Type.PLAIN;
+          case '"':
+            return PlainValue.Type.QUOTE_DOUBLE;
+          case "'":
+            return PlainValue.Type.QUOTE_SINGLE;
+          default:
+            return PlainValue.Type.PLAIN;
+        }
+      }
+      constructor(orig = {}, {
+        atLineStart,
+        inCollection,
+        inFlow,
+        indent,
+        lineStart,
+        parent
+      } = {}) {
+        PlainValue._defineProperty(this, "parseNode", (overlay, start) => {
+          if (PlainValue.Node.atDocumentBoundary(this.src, start)) return null;
+          const context = new _ParseContext(this, overlay);
+          const {
+            props,
+            type,
+            valueStart
+          } = context.parseProps(start);
+          const node = createNewNode(type, props);
+          let offset = start;
+          try {
+            offset = node.parse(context, valueStart);
+          } catch (error) {
+            const msg = error instanceof Error ? error.message : String(error);
+            if (!node.error) node.error = new PlainValue.YAMLSyntaxError(node, msg);
+          }
+          node.range = new PlainValue.Range(start, offset);
+          if (offset <= start) {
+            if (!node.error) node.error = new Error(`Node#parse consumed no characters`);
+            node.error.parseEnd = offset;
+            node.error.source = node;
+            node.range.end = start + 1;
+          }
+          if (context.nodeStartsCollection(node)) {
+            if (!node.error && !context.atLineStart && context.parent.type === PlainValue.Type.DOCUMENT) {
+              node.error = new PlainValue.YAMLSyntaxError(node, "Block collection must not have preceding content here (e.g. directives-end indicator)");
+            }
+            const collection = new Collection2(node);
+            offset = collection.parse(new _ParseContext(context), offset);
+            collection.range = new PlainValue.Range(start, offset);
+            return collection;
+          }
+          return node;
+        });
+        this.atLineStart = atLineStart != null ? atLineStart : orig.atLineStart || false;
+        this.inCollection = inCollection != null ? inCollection : orig.inCollection || false;
+        this.inFlow = inFlow != null ? inFlow : orig.inFlow || false;
+        this.indent = indent != null ? indent : orig.indent;
+        this.lineStart = lineStart != null ? lineStart : orig.lineStart;
+        this.parent = parent != null ? parent : orig.parent || {};
+        this.root = orig.root;
+        this.src = orig.src;
+      }
+      nodeStartsCollection(node) {
+        const {
+          inCollection,
+          inFlow,
+          src
+        } = this;
+        if (inCollection || inFlow) return false;
+        if (node instanceof CollectionItem) return true;
+        let offset = node.range.end;
+        if (src[offset] === "\n" || src[offset - 1] === "\n") return false;
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        return src[offset] === ":";
+      }
+      // Anchor and tag are before type, which determines the node implementation
+      // class; hence this intermediate step.
+      parseProps(offset) {
+        const {
+          inFlow,
+          parent,
+          src
+        } = this;
+        const props = [];
+        let lineHasProps = false;
+        offset = this.atLineStart ? PlainValue.Node.endOfIndent(src, offset) : PlainValue.Node.endOfWhiteSpace(src, offset);
+        let ch = src[offset];
+        while (ch === PlainValue.Char.ANCHOR || ch === PlainValue.Char.COMMENT || ch === PlainValue.Char.TAG || ch === "\n") {
+          if (ch === "\n") {
+            let inEnd = offset;
+            let lineStart;
+            do {
+              lineStart = inEnd + 1;
+              inEnd = PlainValue.Node.endOfIndent(src, lineStart);
+            } while (src[inEnd] === "\n");
+            const indentDiff = inEnd - (lineStart + this.indent);
+            const noIndicatorAsIndent = parent.type === PlainValue.Type.SEQ_ITEM && parent.context.atLineStart;
+            if (src[inEnd] !== "#" && !PlainValue.Node.nextNodeIsIndented(src[inEnd], indentDiff, !noIndicatorAsIndent)) break;
+            this.atLineStart = true;
+            this.lineStart = lineStart;
+            lineHasProps = false;
+            offset = inEnd;
+          } else if (ch === PlainValue.Char.COMMENT) {
+            const end = PlainValue.Node.endOfLine(src, offset + 1);
+            props.push(new PlainValue.Range(offset, end));
+            offset = end;
+          } else {
+            let end = PlainValue.Node.endOfIdentifier(src, offset + 1);
+            if (ch === PlainValue.Char.TAG && src[end] === "," && /^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(src.slice(offset + 1, end + 13))) {
+              end = PlainValue.Node.endOfIdentifier(src, end + 5);
+            }
+            props.push(new PlainValue.Range(offset, end));
+            lineHasProps = true;
+            offset = PlainValue.Node.endOfWhiteSpace(src, end);
+          }
+          ch = src[offset];
+        }
+        if (lineHasProps && ch === ":" && PlainValue.Node.atBlank(src, offset + 1, true)) offset -= 1;
+        const type = _ParseContext.parseType(src, offset, inFlow);
+        return {
+          props,
+          type,
+          valueStart: offset
+        };
+      }
+    };
+    function parse3(src) {
+      const cr = [];
+      if (src.indexOf("\r") !== -1) {
+        src = src.replace(/\r\n?/g, (match, offset2) => {
+          if (match.length > 1) cr.push(offset2);
+          return "\n";
+        });
+      }
+      const documents = [];
+      let offset = 0;
+      do {
+        const doc = new Document();
+        const context = new ParseContext({
+          src
+        });
+        offset = doc.parse(context, offset);
+        documents.push(doc);
+      } while (offset < src.length);
+      documents.setOrigRanges = () => {
+        if (cr.length === 0) return false;
+        for (let i = 1; i < cr.length; ++i) cr[i] -= i;
+        let crOffset = 0;
+        for (let i = 0; i < documents.length; ++i) {
+          crOffset = documents[i].setOrigRanges(cr, crOffset);
+        }
+        cr.splice(0, cr.length);
+        return true;
+      };
+      documents.toString = () => documents.join("...\n");
+      return documents;
+    }
+    exports2.parse = parse3;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js
+var require_resolveSeq_95613e94 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    function addCommentBefore(str, indent, comment) {
+      if (!comment) return str;
+      const cc = comment.replace(/[\s\S]^/gm, `$&${indent}#`);
+      return `#${cc}
+${indent}${str}`;
+    }
+    function addComment(str, indent, comment) {
+      return !comment ? str : comment.indexOf("\n") === -1 ? `${str} #${comment}` : `${str}
+` + comment.replace(/^/gm, `${indent || ""}#`);
+    }
+    var Node11 = class {
+    };
+    function toJSON(value, arg, ctx) {
+      if (Array.isArray(value)) return value.map((v, i) => toJSON(v, String(i), ctx));
+      if (value && typeof value.toJSON === "function") {
+        const anchor = ctx && ctx.anchors && ctx.anchors.get(value);
+        if (anchor) ctx.onCreate = (res2) => {
+          anchor.res = res2;
+          delete ctx.onCreate;
+        };
+        const res = value.toJSON(arg, ctx);
+        if (anchor && ctx.onCreate) ctx.onCreate(res);
+        return res;
+      }
+      if ((!ctx || !ctx.keep) && typeof value === "bigint") return Number(value);
+      return value;
+    }
+    var Scalar2 = class extends Node11 {
+      constructor(value) {
+        super();
+        this.value = value;
+      }
+      toJSON(arg, ctx) {
+        return ctx && ctx.keep ? this.value : toJSON(this.value, arg, ctx);
+      }
+      toString() {
+        return String(this.value);
+      }
+    };
+    function collectionFromPath(schema, path23, value) {
+      let v = value;
+      for (let i = path23.length - 1; i >= 0; --i) {
+        const k = path23[i];
+        if (Number.isInteger(k) && k >= 0) {
+          const a = [];
+          a[k] = v;
+          v = a;
+        } else {
+          const o = {};
+          Object.defineProperty(o, k, {
+            value: v,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          v = o;
+        }
+      }
+      return schema.createNode(v, false);
+    }
+    var isEmptyPath = (path23) => path23 == null || typeof path23 === "object" && path23[Symbol.iterator]().next().done;
+    var Collection2 = class _Collection extends Node11 {
+      constructor(schema) {
+        super();
+        PlainValue._defineProperty(this, "items", []);
+        this.schema = schema;
+      }
+      addIn(path23, value) {
+        if (isEmptyPath(path23)) this.add(value);
+        else {
+          const [key, ...rest] = path23;
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.addIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      deleteIn([key, ...rest]) {
+        if (rest.length === 0) return this.delete(key);
+        const node = this.get(key, true);
+        if (node instanceof _Collection) return node.deleteIn(rest);
+        else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+      }
+      getIn([key, ...rest], keepScalar) {
+        const node = this.get(key, true);
+        if (rest.length === 0) return !keepScalar && node instanceof Scalar2 ? node.value : node;
+        else return node instanceof _Collection ? node.getIn(rest, keepScalar) : void 0;
+      }
+      hasAllNullValues() {
+        return this.items.every((node) => {
+          if (!node || node.type !== "PAIR") return false;
+          const n = node.value;
+          return n == null || n instanceof Scalar2 && n.value == null && !n.commentBefore && !n.comment && !n.tag;
+        });
+      }
+      hasIn([key, ...rest]) {
+        if (rest.length === 0) return this.has(key);
+        const node = this.get(key, true);
+        return node instanceof _Collection ? node.hasIn(rest) : false;
+      }
+      setIn([key, ...rest], value) {
+        if (rest.length === 0) {
+          this.set(key, value);
+        } else {
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.setIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      // overridden in implementations
+      /* istanbul ignore next */
+      toJSON() {
+        return null;
+      }
+      toString(ctx, {
+        blockItem,
+        flowChars,
+        isMap,
+        itemIndent
+      }, onComment, onChompKeep) {
+        const {
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        const inFlow = this.type === PlainValue.Type.FLOW_MAP || this.type === PlainValue.Type.FLOW_SEQ || ctx.inFlow;
+        if (inFlow) itemIndent += indentStep;
+        const allNullValues = isMap && this.hasAllNullValues();
+        ctx = Object.assign({}, ctx, {
+          allNullValues,
+          indent: itemIndent,
+          inFlow,
+          type: null
+        });
+        let chompKeep = false;
+        let hasItemWithNewLine = false;
+        const nodes = this.items.reduce((nodes2, item, i) => {
+          let comment;
+          if (item) {
+            if (!chompKeep && item.spaceBefore) nodes2.push({
+              type: "comment",
+              str: ""
+            });
+            if (item.commentBefore) item.commentBefore.match(/^.*$/gm).forEach((line) => {
+              nodes2.push({
+                type: "comment",
+                str: `#${line}`
+              });
+            });
+            if (item.comment) comment = item.comment;
+            if (inFlow && (!chompKeep && item.spaceBefore || item.commentBefore || item.comment || item.key && (item.key.commentBefore || item.key.comment) || item.value && (item.value.commentBefore || item.value.comment))) hasItemWithNewLine = true;
+          }
+          chompKeep = false;
+          let str2 = stringify3(item, ctx, () => comment = null, () => chompKeep = true);
+          if (inFlow && !hasItemWithNewLine && str2.includes("\n")) hasItemWithNewLine = true;
+          if (inFlow && i < this.items.length - 1) str2 += ",";
+          str2 = addComment(str2, itemIndent, comment);
+          if (chompKeep && (comment || inFlow)) chompKeep = false;
+          nodes2.push({
+            type: "item",
+            str: str2
+          });
+          return nodes2;
+        }, []);
+        let str;
+        if (nodes.length === 0) {
+          str = flowChars.start + flowChars.end;
+        } else if (inFlow) {
+          const {
+            start,
+            end
+          } = flowChars;
+          const strings = nodes.map((n) => n.str);
+          if (hasItemWithNewLine || strings.reduce((sum, str2) => sum + str2.length + 2, 2) > _Collection.maxFlowStringSingleLineLength) {
+            str = start;
+            for (const s of strings) {
+              str += s ? `
+${indentStep}${indent}${s}` : "\n";
+            }
+            str += `
+${indent}${end}`;
+          } else {
+            str = `${start} ${strings.join(" ")} ${end}`;
+          }
+        } else {
+          const strings = nodes.map(blockItem);
+          str = strings.shift();
+          for (const s of strings) str += s ? `
+${indent}${s}` : "\n";
+        }
+        if (this.comment) {
+          str += "\n" + this.comment.replace(/^/gm, `${indent}#`);
+          if (onComment) onComment();
+        } else if (chompKeep && onChompKeep) onChompKeep();
+        return str;
+      }
+    };
+    PlainValue._defineProperty(Collection2, "maxFlowStringSingleLineLength", 60);
+    function asItemIndex(key) {
+      let idx = key instanceof Scalar2 ? key.value : key;
+      if (idx && typeof idx === "string") idx = Number(idx);
+      return Number.isInteger(idx) && idx >= 0 ? idx : null;
+    }
+    var YAMLSeq2 = class extends Collection2 {
+      add(value) {
+        this.items.push(value);
+      }
+      delete(key) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return false;
+        const del = this.items.splice(idx, 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return void 0;
+        const it = this.items[idx];
+        return !keepScalar && it instanceof Scalar2 ? it.value : it;
+      }
+      has(key) {
+        const idx = asItemIndex(key);
+        return typeof idx === "number" && idx < this.items.length;
+      }
+      set(key, value) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") throw new Error(`Expected a valid index, not ${key}.`);
+        this.items[idx] = value;
+      }
+      toJSON(_, ctx) {
+        const seq = [];
+        if (ctx && ctx.onCreate) ctx.onCreate(seq);
+        let i = 0;
+        for (const item of this.items) seq.push(toJSON(item, String(i++), ctx));
+        return seq;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        return super.toString(ctx, {
+          blockItem: (n) => n.type === "comment" ? n.str : `- ${n.str}`,
+          flowChars: {
+            start: "[",
+            end: "]"
+          },
+          isMap: false,
+          itemIndent: (ctx.indent || "") + "  "
+        }, onComment, onChompKeep);
+      }
+    };
+    var stringifyKey = (key, jsKey, ctx) => {
+      if (jsKey === null) return "";
+      if (typeof jsKey !== "object") return String(jsKey);
+      if (key instanceof Node11 && ctx && ctx.doc) return key.toString({
+        anchors: /* @__PURE__ */ Object.create(null),
+        doc: ctx.doc,
+        indent: "",
+        indentStep: ctx.indentStep,
+        inFlow: true,
+        inStringifyKey: true,
+        stringify: ctx.stringify
+      });
+      return JSON.stringify(jsKey);
+    };
+    var Pair2 = class _Pair extends Node11 {
+      constructor(key, value = null) {
+        super();
+        this.key = key;
+        this.value = value;
+        this.type = _Pair.Type.PAIR;
+      }
+      get commentBefore() {
+        return this.key instanceof Node11 ? this.key.commentBefore : void 0;
+      }
+      set commentBefore(cb) {
+        if (this.key == null) this.key = new Scalar2(null);
+        if (this.key instanceof Node11) this.key.commentBefore = cb;
+        else {
+          const msg = "Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";
+          throw new Error(msg);
+        }
+      }
+      addToJSMap(ctx, map) {
+        const key = toJSON(this.key, "", ctx);
+        if (map instanceof Map) {
+          const value = toJSON(this.value, key, ctx);
+          map.set(key, value);
+        } else if (map instanceof Set) {
+          map.add(key);
+        } else {
+          const stringKey = stringifyKey(this.key, key, ctx);
+          const value = toJSON(this.value, stringKey, ctx);
+          if (stringKey in map) Object.defineProperty(map, stringKey, {
+            value,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          else map[stringKey] = value;
+        }
+        return map;
+      }
+      toJSON(_, ctx) {
+        const pair = ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        return this.addToJSMap(ctx, pair);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx || !ctx.doc) return JSON.stringify(this);
+        const {
+          indent: indentSize,
+          indentSeq,
+          simpleKeys
+        } = ctx.doc.options;
+        let {
+          key,
+          value
+        } = this;
+        let keyComment = key instanceof Node11 && key.comment;
+        if (simpleKeys) {
+          if (keyComment) {
+            throw new Error("With simple keys, key nodes cannot have comments");
+          }
+          if (key instanceof Collection2) {
+            const msg = "With simple keys, collection cannot be used as a key value";
+            throw new Error(msg);
+          }
+        }
+        let explicitKey = !simpleKeys && (!key || keyComment || (key instanceof Node11 ? key instanceof Collection2 || key.type === PlainValue.Type.BLOCK_FOLDED || key.type === PlainValue.Type.BLOCK_LITERAL : typeof key === "object"));
+        const {
+          doc,
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        ctx = Object.assign({}, ctx, {
+          implicitKey: !explicitKey,
+          indent: indent + indentStep
+        });
+        let chompKeep = false;
+        let str = stringify3(key, ctx, () => keyComment = null, () => chompKeep = true);
+        str = addComment(str, ctx.indent, keyComment);
+        if (!explicitKey && str.length > 1024) {
+          if (simpleKeys) throw new Error("With simple keys, single line scalar must not span more than 1024 characters");
+          explicitKey = true;
+        }
+        if (ctx.allNullValues && !simpleKeys) {
+          if (this.comment) {
+            str = addComment(str, ctx.indent, this.comment);
+            if (onComment) onComment();
+          } else if (chompKeep && !keyComment && onChompKeep) onChompKeep();
+          return ctx.inFlow && !explicitKey ? str : `? ${str}`;
+        }
+        str = explicitKey ? `? ${str}
+${indent}:` : `${str}:`;
+        if (this.comment) {
+          str = addComment(str, ctx.indent, this.comment);
+          if (onComment) onComment();
+        }
+        let vcb = "";
+        let valueComment = null;
+        if (value instanceof Node11) {
+          if (value.spaceBefore) vcb = "\n";
+          if (value.commentBefore) {
+            const cs = value.commentBefore.replace(/^/gm, `${ctx.indent}#`);
+            vcb += `
+${cs}`;
+          }
+          valueComment = value.comment;
+        } else if (value && typeof value === "object") {
+          value = doc.schema.createNode(value, true);
+        }
+        ctx.implicitKey = false;
+        if (!explicitKey && !this.comment && value instanceof Scalar2) ctx.indentAtStart = str.length + 1;
+        chompKeep = false;
+        if (!indentSeq && indentSize >= 2 && !ctx.inFlow && !explicitKey && value instanceof YAMLSeq2 && value.type !== PlainValue.Type.FLOW_SEQ && !value.tag && !doc.anchors.getName(value)) {
+          ctx.indent = ctx.indent.substr(2);
+        }
+        const valueStr = stringify3(value, ctx, () => valueComment = null, () => chompKeep = true);
+        let ws = " ";
+        if (vcb || this.comment) {
+          ws = `${vcb}
+${ctx.indent}`;
+        } else if (!explicitKey && value instanceof Collection2) {
+          const flow = valueStr[0] === "[" || valueStr[0] === "{";
+          if (!flow || valueStr.includes("\n")) ws = `
+${ctx.indent}`;
+        } else if (valueStr[0] === "\n") ws = "";
+        if (chompKeep && !valueComment && onChompKeep) onChompKeep();
+        return addComment(str + ws + valueStr, ctx.indent, valueComment);
+      }
+    };
+    PlainValue._defineProperty(Pair2, "Type", {
+      PAIR: "PAIR",
+      MERGE_PAIR: "MERGE_PAIR"
+    });
+    var getAliasCount = (node, anchors) => {
+      if (node instanceof Alias2) {
+        const anchor = anchors.get(node.source);
+        return anchor.count * anchor.aliasCount;
+      } else if (node instanceof Collection2) {
+        let count2 = 0;
+        for (const item of node.items) {
+          const c = getAliasCount(item, anchors);
+          if (c > count2) count2 = c;
+        }
+        return count2;
+      } else if (node instanceof Pair2) {
+        const kc = getAliasCount(node.key, anchors);
+        const vc = getAliasCount(node.value, anchors);
+        return Math.max(kc, vc);
+      }
+      return 1;
+    };
+    var Alias2 = class _Alias extends Node11 {
+      static stringify({
+        range: range4,
+        source
+      }, {
+        anchors,
+        doc,
+        implicitKey,
+        inStringifyKey
+      }) {
+        let anchor = Object.keys(anchors).find((a) => anchors[a] === source);
+        if (!anchor && inStringifyKey) anchor = doc.anchors.getName(source) || doc.anchors.newName();
+        if (anchor) return `*${anchor}${implicitKey ? " " : ""}`;
+        const msg = doc.anchors.getName(source) ? "Alias node must be after source node" : "Source node not found for alias node";
+        throw new Error(`${msg} [${range4}]`);
+      }
+      constructor(source) {
+        super();
+        this.source = source;
+        this.type = PlainValue.Type.ALIAS;
+      }
+      set tag(t) {
+        throw new Error("Alias nodes cannot have tags");
+      }
+      toJSON(arg, ctx) {
+        if (!ctx) return toJSON(this.source, arg, ctx);
+        const {
+          anchors,
+          maxAliasCount
+        } = ctx;
+        const anchor = anchors.get(this.source);
+        if (!anchor || anchor.res === void 0) {
+          const msg = "This should not happen: Alias anchor was not resolved?";
+          if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+          else throw new ReferenceError(msg);
+        }
+        if (maxAliasCount >= 0) {
+          anchor.count += 1;
+          if (anchor.aliasCount === 0) anchor.aliasCount = getAliasCount(this.source, anchors);
+          if (anchor.count * anchor.aliasCount > maxAliasCount) {
+            const msg = "Excessive alias count indicates a resource exhaustion attack";
+            if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+            else throw new ReferenceError(msg);
+          }
+        }
+        return anchor.res;
+      }
+      // Only called when stringifying an alias mapping key while constructing
+      // Object output.
+      toString(ctx) {
+        return _Alias.stringify(this, ctx);
+      }
+    };
+    PlainValue._defineProperty(Alias2, "default", true);
+    function findPair(items, key) {
+      const k = key instanceof Scalar2 ? key.value : key;
+      for (const it of items) {
+        if (it instanceof Pair2) {
+          if (it.key === key || it.key === k) return it;
+          if (it.key && it.key.value === k) return it;
+        }
+      }
+      return void 0;
+    }
+    var YAMLMap2 = class extends Collection2 {
+      add(pair, overwrite) {
+        if (!pair) pair = new Pair2(pair);
+        else if (!(pair instanceof Pair2)) pair = new Pair2(pair.key || pair, pair.value);
+        const prev = findPair(this.items, pair.key);
+        const sortEntries = this.schema && this.schema.sortMapEntries;
+        if (prev) {
+          if (overwrite) prev.value = pair.value;
+          else throw new Error(`Key ${pair.key} already set`);
+        } else if (sortEntries) {
+          const i = this.items.findIndex((item) => sortEntries(pair, item) < 0);
+          if (i === -1) this.items.push(pair);
+          else this.items.splice(i, 0, pair);
+        } else {
+          this.items.push(pair);
+        }
+      }
+      delete(key) {
+        const it = findPair(this.items, key);
+        if (!it) return false;
+        const del = this.items.splice(this.items.indexOf(it), 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const it = findPair(this.items, key);
+        const node = it && it.value;
+        return !keepScalar && node instanceof Scalar2 ? node.value : node;
+      }
+      has(key) {
+        return !!findPair(this.items, key);
+      }
+      set(key, value) {
+        this.add(new Pair2(key, value), true);
+      }
+      /**
+       * @param {*} arg ignored
+       * @param {*} ctx Conversion context, originally set in Document#toJSON()
+       * @param {Class} Type If set, forces the returned collection type
+       * @returns {*} Instance of Type, Map, or Object
+       */
+      toJSON(_, ctx, Type) {
+        const map = Type ? new Type() : ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const item of this.items) item.addToJSMap(ctx, map);
+        return map;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        for (const item of this.items) {
+          if (!(item instanceof Pair2)) throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`);
+        }
+        return super.toString(ctx, {
+          blockItem: (n) => n.str,
+          flowChars: {
+            start: "{",
+            end: "}"
+          },
+          isMap: true,
+          itemIndent: ctx.indent || ""
+        }, onComment, onChompKeep);
+      }
+    };
+    var MERGE_KEY = "<<";
+    var Merge2 = class extends Pair2 {
+      constructor(pair) {
+        if (pair instanceof Pair2) {
+          let seq = pair.value;
+          if (!(seq instanceof YAMLSeq2)) {
+            seq = new YAMLSeq2();
+            seq.items.push(pair.value);
+            seq.range = pair.value.range;
+          }
+          super(pair.key, seq);
+          this.range = pair.range;
+        } else {
+          super(new Scalar2(MERGE_KEY), new YAMLSeq2());
+        }
+        this.type = Pair2.Type.MERGE_PAIR;
+      }
+      // If the value associated with a merge key is a single mapping node, each of
+      // its key/value pairs is inserted into the current mapping, unless the key
+      // already exists in it. If the value associated with the merge key is a
+      // sequence, then this sequence is expected to contain mapping nodes and each
+      // of these nodes is merged in turn according to its order in the sequence.
+      // Keys in mapping nodes earlier in the sequence override keys specified in
+      // later mapping nodes. -- http://yaml.org/type/merge.html
+      addToJSMap(ctx, map) {
+        for (const {
+          source
+        } of this.value.items) {
+          if (!(source instanceof YAMLMap2)) throw new Error("Merge sources must be maps");
+          const srcMap = source.toJSON(null, ctx, Map);
+          for (const [key, value] of srcMap) {
+            if (map instanceof Map) {
+              if (!map.has(key)) map.set(key, value);
+            } else if (map instanceof Set) {
+              map.add(key);
+            } else if (!Object.prototype.hasOwnProperty.call(map, key)) {
+              Object.defineProperty(map, key, {
+                value,
+                writable: true,
+                enumerable: true,
+                configurable: true
+              });
+            }
+          }
+        }
+        return map;
+      }
+      toString(ctx, onComment) {
+        const seq = this.value;
+        if (seq.items.length > 1) return super.toString(ctx, onComment);
+        this.value = seq.items[0];
+        const str = super.toString(ctx, onComment);
+        this.value = seq;
+        return str;
+      }
+    };
+    var binaryOptions2 = {
+      defaultType: PlainValue.Type.BLOCK_LITERAL,
+      lineWidth: 76
+    };
+    var boolOptions2 = {
+      trueStr: "true",
+      falseStr: "false"
+    };
+    var intOptions2 = {
+      asBigInt: false
+    };
+    var nullOptions2 = {
+      nullStr: "null"
+    };
+    var strOptions2 = {
+      defaultType: PlainValue.Type.PLAIN,
+      doubleQuoted: {
+        jsonEncoding: false,
+        minMultiLineLength: 40
+      },
+      fold: {
+        lineWidth: 80,
+        minContentWidth: 20
+      }
+    };
+    function resolveScalar(str, tags, scalarFallback) {
+      for (const {
+        format,
+        test,
+        resolve: resolve6
+      } of tags) {
+        if (test) {
+          const match = str.match(test);
+          if (match) {
+            let res = resolve6.apply(null, match);
+            if (!(res instanceof Scalar2)) res = new Scalar2(res);
+            if (format) res.format = format;
+            return res;
+          }
+        }
+      }
+      if (scalarFallback) str = scalarFallback(str);
+      return new Scalar2(str);
+    }
+    var FOLD_FLOW = "flow";
+    var FOLD_BLOCK = "block";
+    var FOLD_QUOTED = "quoted";
+    var consumeMoreIndentedLines = (text, i) => {
+      let ch = text[i + 1];
+      while (ch === " " || ch === "	") {
+        do {
+          ch = text[i += 1];
+        } while (ch && ch !== "\n");
+        ch = text[i + 1];
+      }
+      return i;
+    };
+    function foldFlowLines(text, indent, mode, {
+      indentAtStart,
+      lineWidth = 80,
+      minContentWidth = 20,
+      onFold,
+      onOverflow
+    }) {
+      if (!lineWidth || lineWidth < 0) return text;
+      const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length);
+      if (text.length <= endStep) return text;
+      const folds = [];
+      const escapedFolds = {};
+      let end = lineWidth - indent.length;
+      if (typeof indentAtStart === "number") {
+        if (indentAtStart > lineWidth - Math.max(2, minContentWidth)) folds.push(0);
+        else end = lineWidth - indentAtStart;
+      }
+      let split = void 0;
+      let prev = void 0;
+      let overflow = false;
+      let i = -1;
+      let escStart = -1;
+      let escEnd = -1;
+      if (mode === FOLD_BLOCK) {
+        i = consumeMoreIndentedLines(text, i);
+        if (i !== -1) end = i + endStep;
+      }
+      for (let ch; ch = text[i += 1]; ) {
+        if (mode === FOLD_QUOTED && ch === "\\") {
+          escStart = i;
+          switch (text[i + 1]) {
+            case "x":
+              i += 3;
+              break;
+            case "u":
+              i += 5;
+              break;
+            case "U":
+              i += 9;
+              break;
+            default:
+              i += 1;
+          }
+          escEnd = i;
+        }
+        if (ch === "\n") {
+          if (mode === FOLD_BLOCK) i = consumeMoreIndentedLines(text, i);
+          end = i + endStep;
+          split = void 0;
+        } else {
+          if (ch === " " && prev && prev !== " " && prev !== "\n" && prev !== "	") {
+            const next = text[i + 1];
+            if (next && next !== " " && next !== "\n" && next !== "	") split = i;
+          }
+          if (i >= end) {
+            if (split) {
+              folds.push(split);
+              end = split + endStep;
+              split = void 0;
+            } else if (mode === FOLD_QUOTED) {
+              while (prev === " " || prev === "	") {
+                prev = ch;
+                ch = text[i += 1];
+                overflow = true;
+              }
+              const j = i > escEnd + 1 ? i - 2 : escStart - 1;
+              if (escapedFolds[j]) return text;
+              folds.push(j);
+              escapedFolds[j] = true;
+              end = j + endStep;
+              split = void 0;
+            } else {
+              overflow = true;
+            }
+          }
+        }
+        prev = ch;
+      }
+      if (overflow && onOverflow) onOverflow();
+      if (folds.length === 0) return text;
+      if (onFold) onFold();
+      let res = text.slice(0, folds[0]);
+      for (let i2 = 0; i2 < folds.length; ++i2) {
+        const fold = folds[i2];
+        const end2 = folds[i2 + 1] || text.length;
+        if (fold === 0) res = `
+${indent}${text.slice(0, end2)}`;
+        else {
+          if (mode === FOLD_QUOTED && escapedFolds[fold]) res += `${text[fold]}\\`;
+          res += `
+${indent}${text.slice(fold + 1, end2)}`;
+        }
+      }
+      return res;
+    }
+    var getFoldOptions = ({
+      indentAtStart
+    }) => indentAtStart ? Object.assign({
+      indentAtStart
+    }, strOptions2.fold) : strOptions2.fold;
+    var containsDocumentMarker = (str) => /^(%|---|\.\.\.)/m.test(str);
+    function lineLengthOverLimit(str, lineWidth, indentLength) {
+      if (!lineWidth || lineWidth < 0) return false;
+      const limit = lineWidth - indentLength;
+      const strLen = str.length;
+      if (strLen <= limit) return false;
+      for (let i = 0, start = 0; i < strLen; ++i) {
+        if (str[i] === "\n") {
+          if (i - start > limit) return true;
+          start = i + 1;
+          if (strLen - start <= limit) return false;
+        }
+      }
+      return true;
+    }
+    function doubleQuotedString(value, ctx) {
+      const {
+        implicitKey
+      } = ctx;
+      const {
+        jsonEncoding,
+        minMultiLineLength
+      } = strOptions2.doubleQuoted;
+      const json = JSON.stringify(value);
+      if (jsonEncoding) return json;
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      let str = "";
+      let start = 0;
+      for (let i = 0, ch = json[i]; ch; ch = json[++i]) {
+        if (ch === " " && json[i + 1] === "\\" && json[i + 2] === "n") {
+          str += json.slice(start, i) + "\\ ";
+          i += 1;
+          start = i;
+          ch = "\\";
+        }
+        if (ch === "\\") switch (json[i + 1]) {
+          case "u":
+            {
+              str += json.slice(start, i);
+              const code = json.substr(i + 2, 4);
+              switch (code) {
+                case "0000":
+                  str += "\\0";
+                  break;
+                case "0007":
+                  str += "\\a";
+                  break;
+                case "000b":
+                  str += "\\v";
+                  break;
+                case "001b":
+                  str += "\\e";
+                  break;
+                case "0085":
+                  str += "\\N";
+                  break;
+                case "00a0":
+                  str += "\\_";
+                  break;
+                case "2028":
+                  str += "\\L";
+                  break;
+                case "2029":
+                  str += "\\P";
+                  break;
+                default:
+                  if (code.substr(0, 2) === "00") str += "\\x" + code.substr(2);
+                  else str += json.substr(i, 6);
+              }
+              i += 5;
+              start = i + 1;
+            }
+            break;
+          case "n":
+            if (implicitKey || json[i + 2] === '"' || json.length < minMultiLineLength) {
+              i += 1;
+            } else {
+              str += json.slice(start, i) + "\n\n";
+              while (json[i + 2] === "\\" && json[i + 3] === "n" && json[i + 4] !== '"') {
+                str += "\n";
+                i += 2;
+              }
+              str += indent;
+              if (json[i + 2] === " ") str += "\\";
+              i += 1;
+              start = i + 1;
+            }
+            break;
+          default:
+            i += 1;
+        }
+      }
+      str = start ? str + json.slice(start) : json;
+      return implicitKey ? str : foldFlowLines(str, indent, FOLD_QUOTED, getFoldOptions(ctx));
+    }
+    function singleQuotedString(value, ctx) {
+      if (ctx.implicitKey) {
+        if (/\n/.test(value)) return doubleQuotedString(value, ctx);
+      } else {
+        if (/[ \t]\n|\n[ \t]/.test(value)) return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$&
+${indent}`) + "'";
+      return ctx.implicitKey ? res : foldFlowLines(res, indent, FOLD_FLOW, getFoldOptions(ctx));
+    }
+    function blockString({
+      comment,
+      type,
+      value
+    }, ctx, onComment, onChompKeep) {
+      if (/\n[\t ]+$/.test(value) || /^\s*$/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (ctx.forceBlockIndent || containsDocumentMarker(value) ? "  " : "");
+      const indentSize = indent ? "2" : "1";
+      const literal = type === PlainValue.Type.BLOCK_FOLDED ? false : type === PlainValue.Type.BLOCK_LITERAL ? true : !lineLengthOverLimit(value, strOptions2.fold.lineWidth, indent.length);
+      let header = literal ? "|" : ">";
+      if (!value) return header + "\n";
+      let wsStart = "";
+      let wsEnd = "";
+      value = value.replace(/[\n\t ]*$/, (ws) => {
+        const n = ws.indexOf("\n");
+        if (n === -1) {
+          header += "-";
+        } else if (value === ws || n !== ws.length - 1) {
+          header += "+";
+          if (onChompKeep) onChompKeep();
+        }
+        wsEnd = ws.replace(/\n$/, "");
+        return "";
+      }).replace(/^[\n ]*/, (ws) => {
+        if (ws.indexOf(" ") !== -1) header += indentSize;
+        const m = ws.match(/ +$/);
+        if (m) {
+          wsStart = ws.slice(0, -m[0].length);
+          return m[0];
+        } else {
+          wsStart = ws;
+          return "";
+        }
+      });
+      if (wsEnd) wsEnd = wsEnd.replace(/\n+(?!\n|$)/g, `$&${indent}`);
+      if (wsStart) wsStart = wsStart.replace(/\n+/g, `$&${indent}`);
+      if (comment) {
+        header += " #" + comment.replace(/ ?[\r\n]+/g, " ");
+        if (onComment) onComment();
+      }
+      if (!value) return `${header}${indentSize}
+${indent}${wsEnd}`;
+      if (literal) {
+        value = value.replace(/\n+/g, `$&${indent}`);
+        return `${header}
+${indent}${wsStart}${value}${wsEnd}`;
+      }
+      value = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`);
+      const body = foldFlowLines(`${wsStart}${value}${wsEnd}`, indent, FOLD_BLOCK, strOptions2.fold);
+      return `${header}
+${indent}${body}`;
+    }
+    function plainString(item, ctx, onComment, onChompKeep) {
+      const {
+        comment,
+        type,
+        value
+      } = item;
+      const {
+        actualString,
+        implicitKey,
+        indent,
+        inFlow
+      } = ctx;
+      if (implicitKey && /[\n[\]{},]/.test(value) || inFlow && /[[\]{},]/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      if (!value || /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
+        return implicitKey || inFlow || value.indexOf("\n") === -1 ? value.indexOf('"') !== -1 && value.indexOf("'") === -1 ? singleQuotedString(value, ctx) : doubleQuotedString(value, ctx) : blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (!implicitKey && !inFlow && type !== PlainValue.Type.PLAIN && value.indexOf("\n") !== -1) {
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (indent === "" && containsDocumentMarker(value)) {
+        ctx.forceBlockIndent = true;
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      const str = value.replace(/\n+/g, `$&
+${indent}`);
+      if (actualString) {
+        const {
+          tags
+        } = ctx.doc.schema;
+        const resolved = resolveScalar(str, tags, tags.scalarFallback).value;
+        if (typeof resolved !== "string") return doubleQuotedString(value, ctx);
+      }
+      const body = implicitKey ? str : foldFlowLines(str, indent, FOLD_FLOW, getFoldOptions(ctx));
+      if (comment && !inFlow && (body.indexOf("\n") !== -1 || comment.indexOf("\n") !== -1)) {
+        if (onComment) onComment();
+        return addCommentBefore(body, indent, comment);
+      }
+      return body;
+    }
+    function stringifyString(item, ctx, onComment, onChompKeep) {
+      const {
+        defaultType
+      } = strOptions2;
+      const {
+        implicitKey,
+        inFlow
+      } = ctx;
+      let {
+        type,
+        value
+      } = item;
+      if (typeof value !== "string") {
+        value = String(value);
+        item = Object.assign({}, item, {
+          value
+        });
+      }
+      const _stringify = (_type) => {
+        switch (_type) {
+          case PlainValue.Type.BLOCK_FOLDED:
+          case PlainValue.Type.BLOCK_LITERAL:
+            return blockString(item, ctx, onComment, onChompKeep);
+          case PlainValue.Type.QUOTE_DOUBLE:
+            return doubleQuotedString(value, ctx);
+          case PlainValue.Type.QUOTE_SINGLE:
+            return singleQuotedString(value, ctx);
+          case PlainValue.Type.PLAIN:
+            return plainString(item, ctx, onComment, onChompKeep);
+          default:
+            return null;
+        }
+      };
+      if (type !== PlainValue.Type.QUOTE_DOUBLE && /[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(value)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      } else if ((implicitKey || inFlow) && (type === PlainValue.Type.BLOCK_FOLDED || type === PlainValue.Type.BLOCK_LITERAL)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      }
+      let res = _stringify(type);
+      if (res === null) {
+        res = _stringify(defaultType);
+        if (res === null) throw new Error(`Unsupported default string type ${defaultType}`);
+      }
+      return res;
+    }
+    function stringifyNumber({
+      format,
+      minFractionDigits,
+      tag,
+      value
+    }) {
+      if (typeof value === "bigint") return String(value);
+      if (!isFinite(value)) return isNaN(value) ? ".nan" : value < 0 ? "-.inf" : ".inf";
+      let n = JSON.stringify(value);
+      if (!format && minFractionDigits && (!tag || tag === "tag:yaml.org,2002:float") && /^\d/.test(n)) {
+        let i = n.indexOf(".");
+        if (i < 0) {
+          i = n.length;
+          n += ".";
+        }
+        let d = minFractionDigits - (n.length - i - 1);
+        while (d-- > 0) n += "0";
+      }
+      return n;
+    }
+    function checkFlowCollectionEnd(errors, cst) {
+      let char, name;
+      switch (cst.type) {
+        case PlainValue.Type.FLOW_MAP:
+          char = "}";
+          name = "flow map";
+          break;
+        case PlainValue.Type.FLOW_SEQ:
+          char = "]";
+          name = "flow sequence";
+          break;
+        default:
+          errors.push(new PlainValue.YAMLSemanticError(cst, "Not a flow collection!?"));
+          return;
+      }
+      let lastItem;
+      for (let i = cst.items.length - 1; i >= 0; --i) {
+        const item = cst.items[i];
+        if (!item || item.type !== PlainValue.Type.COMMENT) {
+          lastItem = item;
+          break;
+        }
+      }
+      if (lastItem && lastItem.char !== char) {
+        const msg = `Expected ${name} to end with ${char}`;
+        let err;
+        if (typeof lastItem.offset === "number") {
+          err = new PlainValue.YAMLSemanticError(cst, msg);
+          err.offset = lastItem.offset + 1;
+        } else {
+          err = new PlainValue.YAMLSemanticError(lastItem, msg);
+          if (lastItem.range && lastItem.range.end) err.offset = lastItem.range.end - lastItem.range.start;
+        }
+        errors.push(err);
+      }
+    }
+    function checkFlowCommentSpace(errors, comment) {
+      const prev = comment.context.src[comment.range.start - 1];
+      if (prev !== "\n" && prev !== "	" && prev !== " ") {
+        const msg = "Comments must be separated from other tokens by white space characters";
+        errors.push(new PlainValue.YAMLSemanticError(comment, msg));
+      }
+    }
+    function getLongKeyError(source, key) {
+      const sk = String(key);
+      const k = sk.substr(0, 8) + "..." + sk.substr(-8);
+      return new PlainValue.YAMLSemanticError(source, `The "${k}" key is too long`);
+    }
+    function resolveComments(collection, comments) {
+      for (const {
+        afterKey,
+        before,
+        comment
+      } of comments) {
+        let item = collection.items[before];
+        if (!item) {
+          if (comment !== void 0) {
+            if (collection.comment) collection.comment += "\n" + comment;
+            else collection.comment = comment;
+          }
+        } else {
+          if (afterKey && item.value) item = item.value;
+          if (comment === void 0) {
+            if (afterKey || !item.commentBefore) item.spaceBefore = true;
+          } else {
+            if (item.commentBefore) item.commentBefore += "\n" + comment;
+            else item.commentBefore = comment;
+          }
+        }
+      }
+    }
+    function resolveString(doc, node) {
+      const res = node.strValue;
+      if (!res) return "";
+      if (typeof res === "string") return res;
+      res.errors.forEach((error) => {
+        if (!error.source) error.source = node;
+        doc.errors.push(error);
+      });
+      return res.str;
+    }
+    function resolveTagHandle(doc, node) {
+      const {
+        handle,
+        suffix
+      } = node.tag;
+      let prefix = doc.tagPrefixes.find((p) => p.handle === handle);
+      if (!prefix) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        if (dtp) prefix = dtp.find((p) => p.handle === handle);
+        if (!prefix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag handle is non-default and was not declared.`);
+      }
+      if (!suffix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag has no suffix.`);
+      if (handle === "!" && (doc.version || doc.options.version) === "1.0") {
+        if (suffix[0] === "^") {
+          doc.warnings.push(new PlainValue.YAMLWarning(node, "YAML 1.0 ^ tag expansion is not supported"));
+          return suffix;
+        }
+        if (/[:/]/.test(suffix)) {
+          const vocab = suffix.match(/^([a-z0-9-]+)\/(.*)/i);
+          return vocab ? `tag:${vocab[1]}.yaml.org,2002:${vocab[2]}` : `tag:${suffix}`;
+        }
+      }
+      return prefix.prefix + decodeURIComponent(suffix);
+    }
+    function resolveTagName(doc, node) {
+      const {
+        tag,
+        type
+      } = node;
+      let nonSpecific = false;
+      if (tag) {
+        const {
+          handle,
+          suffix,
+          verbatim
+        } = tag;
+        if (verbatim) {
+          if (verbatim !== "!" && verbatim !== "!!") return verbatim;
+          const msg = `Verbatim tags aren't resolved, so ${verbatim} is invalid.`;
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        } else if (handle === "!" && !suffix) {
+          nonSpecific = true;
+        } else {
+          try {
+            return resolveTagHandle(doc, node);
+          } catch (error) {
+            doc.errors.push(error);
+          }
+        }
+      }
+      switch (type) {
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+        case PlainValue.Type.QUOTE_DOUBLE:
+        case PlainValue.Type.QUOTE_SINGLE:
+          return PlainValue.defaultTags.STR;
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        case PlainValue.Type.PLAIN:
+          return nonSpecific ? PlainValue.defaultTags.STR : null;
+        default:
+          return null;
+      }
+    }
+    function resolveByTagName(doc, node, tagName) {
+      const {
+        tags
+      } = doc.schema;
+      const matchWithTest = [];
+      for (const tag of tags) {
+        if (tag.tag === tagName) {
+          if (tag.test) matchWithTest.push(tag);
+          else {
+            const res = tag.resolve(doc, node);
+            return res instanceof Collection2 ? res : new Scalar2(res);
+          }
+        }
+      }
+      const str = resolveString(doc, node);
+      if (typeof str === "string" && matchWithTest.length > 0) return resolveScalar(str, matchWithTest, tags.scalarFallback);
+      return null;
+    }
+    function getFallbackTagName({
+      type
+    }) {
+      switch (type) {
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        default:
+          return PlainValue.defaultTags.STR;
+      }
+    }
+    function resolveTag(doc, node, tagName) {
+      try {
+        const res = resolveByTagName(doc, node, tagName);
+        if (res) {
+          if (tagName && node.tag) res.tag = tagName;
+          return res;
+        }
+      } catch (error) {
+        if (error instanceof PlainValue.YAMLError) {
+          if (!error.source) error.source = node;
+          doc.errors.push(error);
+        } else {
+          const msg = error instanceof Error ? error.message : String(error);
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        }
+        return null;
+      }
+      try {
+        const fallback = getFallbackTagName(node);
+        if (!fallback) throw new Error(`The tag ${tagName} is unavailable`);
+        const msg = `The tag ${tagName} is unavailable, falling back to ${fallback}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(node, msg));
+        const res = resolveByTagName(doc, node, fallback);
+        res.tag = tagName;
+        return res;
+      } catch (error) {
+        const refError = new PlainValue.YAMLReferenceError(node, error.message);
+        refError.stack = error.stack;
+        doc.errors.push(refError);
+        return null;
+      }
+    }
+    var isCollectionItem = (node) => {
+      if (!node) return false;
+      const {
+        type
+      } = node;
+      return type === PlainValue.Type.MAP_KEY || type === PlainValue.Type.MAP_VALUE || type === PlainValue.Type.SEQ_ITEM;
+    };
+    function resolveNodeProps(errors, node) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let hasAnchor = false;
+      let hasTag = false;
+      const props = isCollectionItem(node.context.parent) ? node.context.parent.props.concat(node.props) : node.props;
+      for (const {
+        start,
+        end
+      } of props) {
+        switch (node.context.src[start]) {
+          case PlainValue.Char.COMMENT: {
+            if (!node.commentHasRequiredWhitespace(start)) {
+              const msg = "Comments must be separated from other tokens by white space characters";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            const {
+              header,
+              valueRange
+            } = node;
+            const cc = valueRange && (start > valueRange.start || header && start > header.start) ? comments.after : comments.before;
+            cc.push(node.context.src.slice(start + 1, end));
+            break;
+          }
+          // Actual anchor & tag resolution is handled by schema, here we just complain
+          case PlainValue.Char.ANCHOR:
+            if (hasAnchor) {
+              const msg = "A node can have at most one anchor";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasAnchor = true;
+            break;
+          case PlainValue.Char.TAG:
+            if (hasTag) {
+              const msg = "A node can have at most one tag";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasTag = true;
+            break;
+        }
+      }
+      return {
+        comments,
+        hasAnchor,
+        hasTag
+      };
+    }
+    function resolveNodeValue(doc, node) {
+      const {
+        anchors,
+        errors,
+        schema
+      } = doc;
+      if (node.type === PlainValue.Type.ALIAS) {
+        const name = node.rawValue;
+        const src = anchors.getNode(name);
+        if (!src) {
+          const msg = `Aliased anchor not found: ${name}`;
+          errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+        const res = new Alias2(src);
+        anchors._cstAliases.push(res);
+        return res;
+      }
+      const tagName = resolveTagName(doc, node);
+      if (tagName) return resolveTag(doc, node, tagName);
+      if (node.type !== PlainValue.Type.PLAIN) {
+        const msg = `Failed to resolve ${node.type} node here`;
+        errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+        return null;
+      }
+      try {
+        const str = resolveString(doc, node);
+        return resolveScalar(str, schema.tags, schema.tags.scalarFallback);
+      } catch (error) {
+        if (!error.source) error.source = node;
+        errors.push(error);
+        return null;
+      }
+    }
+    function resolveNode(doc, node) {
+      if (!node) return null;
+      if (node.error) doc.errors.push(node.error);
+      const {
+        comments,
+        hasAnchor,
+        hasTag
+      } = resolveNodeProps(doc.errors, node);
+      if (hasAnchor) {
+        const {
+          anchors
+        } = doc;
+        const name = node.anchor;
+        const prev = anchors.getNode(name);
+        if (prev) anchors.map[anchors.newName(name)] = prev;
+        anchors.map[name] = node;
+      }
+      if (node.type === PlainValue.Type.ALIAS && (hasAnchor || hasTag)) {
+        const msg = "An alias node must not specify any properties";
+        doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+      }
+      const res = resolveNodeValue(doc, node);
+      if (res) {
+        res.range = [node.range.start, node.range.end];
+        if (doc.options.keepCstNodes) res.cstNode = node;
+        if (doc.options.keepNodeTypes) res.type = node.type;
+        const cb = comments.before.join("\n");
+        if (cb) {
+          res.commentBefore = res.commentBefore ? `${res.commentBefore}
+${cb}` : cb;
+        }
+        const ca = comments.after.join("\n");
+        if (ca) res.comment = res.comment ? `${res.comment}
+${ca}` : ca;
+      }
+      return node.resolved = res;
+    }
+    function resolveMap(doc, cst) {
+      if (cst.type !== PlainValue.Type.MAP && cst.type !== PlainValue.Type.FLOW_MAP) {
+        const msg = `A ${cst.type} node cannot be resolved as a mapping`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_MAP ? resolveFlowMapItems(doc, cst) : resolveBlockMapItems(doc, cst);
+      const map = new YAMLMap2();
+      map.items = items;
+      resolveComments(map, comments);
+      let hasCollectionKey = false;
+      for (let i = 0; i < items.length; ++i) {
+        const {
+          key: iKey
+        } = items[i];
+        if (iKey instanceof Collection2) hasCollectionKey = true;
+        if (doc.schema.merge && iKey && iKey.value === MERGE_KEY) {
+          items[i] = new Merge2(items[i]);
+          const sources = items[i].value.items;
+          let error = null;
+          sources.some((node) => {
+            if (node instanceof Alias2) {
+              const {
+                type
+              } = node.source;
+              if (type === PlainValue.Type.MAP || type === PlainValue.Type.FLOW_MAP) return false;
+              return error = "Merge nodes aliases can only point to maps";
+            }
+            return error = "Merge nodes can only have Alias nodes as values";
+          });
+          if (error) doc.errors.push(new PlainValue.YAMLSemanticError(cst, error));
+        } else {
+          for (let j = i + 1; j < items.length; ++j) {
+            const {
+              key: jKey
+            } = items[j];
+            if (iKey === jKey || iKey && jKey && Object.prototype.hasOwnProperty.call(iKey, "value") && iKey.value === jKey.value) {
+              const msg = `Map keys must be unique; "${iKey}" is repeated`;
+              doc.errors.push(new PlainValue.YAMLSemanticError(cst, msg));
+              break;
+            }
+          }
+        }
+      }
+      if (hasCollectionKey && !doc.options.mapAsMap) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = map;
+      return map;
+    }
+    var valueHasPairComment = ({
+      context: {
+        lineStart,
+        node,
+        src
+      },
+      props
+    }) => {
+      if (props.length === 0) return false;
+      const {
+        start
+      } = props[0];
+      if (node && start > node.valueRange.start) return false;
+      if (src[start] !== PlainValue.Char.COMMENT) return false;
+      for (let i = lineStart; i < start; ++i) if (src[i] === "\n") return false;
+      return true;
+    };
+    function resolvePairComment(item, pair) {
+      if (!valueHasPairComment(item)) return;
+      const comment = item.getPropValue(0, PlainValue.Char.COMMENT, true);
+      let found = false;
+      const cb = pair.value.commentBefore;
+      if (cb && cb.startsWith(comment)) {
+        pair.value.commentBefore = cb.substr(comment.length + 1);
+        found = true;
+      } else {
+        const cc = pair.value.comment;
+        if (!item.node && cc && cc.startsWith(comment)) {
+          pair.value.comment = cc.substr(comment.length + 1);
+          found = true;
+        }
+      }
+      if (found) pair.comment = comment;
+    }
+    function resolveBlockMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let keyStart = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              afterKey: !!key,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              afterKey: !!key,
+              before: items.length,
+              comment: item.comment
+            });
+            break;
+          case PlainValue.Type.MAP_KEY:
+            if (key !== void 0) items.push(new Pair2(key));
+            if (item.error) doc.errors.push(item.error);
+            key = resolveNode(doc, item.node);
+            keyStart = null;
+            break;
+          case PlainValue.Type.MAP_VALUE:
+            {
+              if (key === void 0) key = null;
+              if (item.error) doc.errors.push(item.error);
+              if (!item.context.atLineStart && item.node && item.node.type === PlainValue.Type.MAP && !item.node.context.atLineStart) {
+                const msg = "Nested mappings are not allowed in compact mappings";
+                doc.errors.push(new PlainValue.YAMLSemanticError(item.node, msg));
+              }
+              let valueNode = item.node;
+              if (!valueNode && item.props.length > 0) {
+                valueNode = new PlainValue.PlainValue(PlainValue.Type.PLAIN, []);
+                valueNode.context = {
+                  parent: item,
+                  src: item.context.src
+                };
+                const pos = item.range.start + 1;
+                valueNode.range = {
+                  start: pos,
+                  end: pos
+                };
+                valueNode.valueRange = {
+                  start: pos,
+                  end: pos
+                };
+                if (typeof item.range.origStart === "number") {
+                  const origPos = item.range.origStart + 1;
+                  valueNode.range.origStart = valueNode.range.origEnd = origPos;
+                  valueNode.valueRange.origStart = valueNode.valueRange.origEnd = origPos;
+                }
+              }
+              const pair = new Pair2(key, resolveNode(doc, valueNode));
+              resolvePairComment(item, pair);
+              items.push(pair);
+              if (key && typeof keyStart === "number") {
+                if (item.range.start > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+              }
+              key = void 0;
+              keyStart = null;
+            }
+            break;
+          default:
+            if (key !== void 0) items.push(new Pair2(key));
+            key = resolveNode(doc, item);
+            keyStart = item.range.start;
+            if (item.error) doc.errors.push(item.error);
+            next: for (let j = i + 1; ; ++j) {
+              const nextItem = cst.items[j];
+              switch (nextItem && nextItem.type) {
+                case PlainValue.Type.BLANK_LINE:
+                case PlainValue.Type.COMMENT:
+                  continue next;
+                case PlainValue.Type.MAP_VALUE:
+                  break next;
+                default: {
+                  const msg = "Implicit map keys need to be followed by map values";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+                  break next;
+                }
+              }
+            }
+            if (item.valueRangeContainsNewline) {
+              const msg = "Implicit map keys need to be on a single line";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+        }
+      }
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let explicitKey = false;
+      let next = "{";
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char === "?" && key === void 0 && !explicitKey) {
+            explicitKey = true;
+            next = ":";
+            continue;
+          }
+          if (char === ":") {
+            if (key === void 0) key = null;
+            if (next === ":") {
+              next = ",";
+              continue;
+            }
+          } else {
+            if (explicitKey) {
+              if (key === void 0 && char !== ",") key = null;
+              explicitKey = false;
+            }
+            if (key !== void 0) {
+              items.push(new Pair2(key));
+              key = void 0;
+              if (char === ",") {
+                next = ":";
+                continue;
+              }
+            }
+          }
+          if (char === "}") {
+            if (i === cst.items.length - 1) continue;
+          } else if (char === next) {
+            next = ":";
+            continue;
+          }
+          const msg = `Flow map contains an unexpected ${char}`;
+          const err = new PlainValue.YAMLSyntaxError(cst, msg);
+          err.offset = offset;
+          doc.errors.push(err);
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            afterKey: !!key,
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            afterKey: !!key,
+            before: items.length,
+            comment: item.comment
+          });
+        } else if (key === void 0) {
+          if (next === ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Separator , missing in flow map"));
+          key = resolveNode(doc, item);
+        } else {
+          if (next !== ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Indicator : missing in flow map entry"));
+          items.push(new Pair2(key, resolveNode(doc, item)));
+          key = void 0;
+          explicitKey = false;
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveSeq(doc, cst) {
+      if (cst.type !== PlainValue.Type.SEQ && cst.type !== PlainValue.Type.FLOW_SEQ) {
+        const msg = `A ${cst.type} node cannot be resolved as a sequence`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_SEQ ? resolveFlowSeqItems(doc, cst) : resolveBlockSeqItems(doc, cst);
+      const seq = new YAMLSeq2();
+      seq.items = items;
+      resolveComments(seq, comments);
+      if (!doc.options.mapAsMap && items.some((it) => it instanceof Pair2 && it.key instanceof Collection2)) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = seq;
+      return seq;
+    }
+    function resolveBlockSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              comment: item.comment,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.SEQ_ITEM:
+            if (item.error) doc.errors.push(item.error);
+            items.push(resolveNode(doc, item.node));
+            if (item.hasProps) {
+              const msg = "Sequence items cannot have tags or anchors before the - indicator";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+            break;
+          default:
+            if (item.error) doc.errors.push(item.error);
+            doc.errors.push(new PlainValue.YAMLSyntaxError(item, `Unexpected ${item.type} node in sequence`));
+        }
+      }
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let explicitKey = false;
+      let key = void 0;
+      let keyStart = null;
+      let next = "[";
+      let prevItem = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char !== ":" && (explicitKey || key !== void 0)) {
+            if (explicitKey && key === void 0) key = next ? items.pop() : null;
+            items.push(new Pair2(key));
+            explicitKey = false;
+            key = void 0;
+            keyStart = null;
+          }
+          if (char === next) {
+            next = null;
+          } else if (!next && char === "?") {
+            explicitKey = true;
+          } else if (next !== "[" && char === ":" && key === void 0) {
+            if (next === ",") {
+              key = items.pop();
+              if (key instanceof Pair2) {
+                const msg = "Chaining flow sequence pairs is invalid";
+                const err = new PlainValue.YAMLSemanticError(cst, msg);
+                err.offset = offset;
+                doc.errors.push(err);
+              }
+              if (!explicitKey && typeof keyStart === "number") {
+                const keyEnd = item.range ? item.range.start : item.offset;
+                if (keyEnd > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+                const {
+                  src
+                } = prevItem.context;
+                for (let i2 = keyStart; i2 < keyEnd; ++i2) if (src[i2] === "\n") {
+                  const msg = "Implicit keys of flow sequence pairs need to be on a single line";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(prevItem, msg));
+                  break;
+                }
+              }
+            } else {
+              key = null;
+            }
+            keyStart = null;
+            explicitKey = false;
+            next = null;
+          } else if (next === "[" || char !== "]" || i < cst.items.length - 1) {
+            const msg = `Flow sequence contains an unexpected ${char}`;
+            const err = new PlainValue.YAMLSyntaxError(cst, msg);
+            err.offset = offset;
+            doc.errors.push(err);
+          }
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            comment: item.comment,
+            before: items.length
+          });
+        } else {
+          if (next) {
+            const msg = `Expected a ${next} in flow sequence`;
+            doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+          }
+          const value = resolveNode(doc, item);
+          if (key === void 0) {
+            items.push(value);
+            prevItem = item;
+          } else {
+            items.push(new Pair2(key, value));
+            key = void 0;
+          }
+          keyStart = item.range.start;
+          next = ",";
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    exports2.Alias = Alias2;
+    exports2.Collection = Collection2;
+    exports2.Merge = Merge2;
+    exports2.Node = Node11;
+    exports2.Pair = Pair2;
+    exports2.Scalar = Scalar2;
+    exports2.YAMLMap = YAMLMap2;
+    exports2.YAMLSeq = YAMLSeq2;
+    exports2.addComment = addComment;
+    exports2.binaryOptions = binaryOptions2;
+    exports2.boolOptions = boolOptions2;
+    exports2.findPair = findPair;
+    exports2.intOptions = intOptions2;
+    exports2.isEmptyPath = isEmptyPath;
+    exports2.nullOptions = nullOptions2;
+    exports2.resolveMap = resolveMap;
+    exports2.resolveNode = resolveNode;
+    exports2.resolveSeq = resolveSeq;
+    exports2.resolveString = resolveString;
+    exports2.strOptions = strOptions2;
+    exports2.stringifyNumber = stringifyNumber;
+    exports2.stringifyString = stringifyString;
+    exports2.toJSON = toJSON;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js
+var require_warnings_793925ce = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var binary = {
+      identify: (value) => value instanceof Uint8Array,
+      // Buffer inherits from Uint8Array
+      default: false,
+      tag: "tag:yaml.org,2002:binary",
+      /**
+       * Returns a Buffer in node and an Uint8Array in browsers
+       *
+       * To use the resulting buffer as an image, you'll want to do something like:
+       *
+       *   const blob = new Blob([buffer], { type: 'image/jpeg' })
+       *   document.querySelector('#photo').src = URL.createObjectURL(blob)
+       */
+      resolve: (doc, node) => {
+        const src = resolveSeq.resolveString(doc, node);
+        if (typeof Buffer === "function") {
+          return Buffer.from(src, "base64");
+        } else if (typeof atob === "function") {
+          const str = atob(src.replace(/[\n\r]/g, ""));
+          const buffer = new Uint8Array(str.length);
+          for (let i = 0; i < str.length; ++i) buffer[i] = str.charCodeAt(i);
+          return buffer;
+        } else {
+          const msg = "This environment does not support reading binary tags; either Buffer or atob is required";
+          doc.errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+      },
+      options: resolveSeq.binaryOptions,
+      stringify: ({
+        comment,
+        type,
+        value
+      }, ctx, onComment, onChompKeep) => {
+        let src;
+        if (typeof Buffer === "function") {
+          src = value instanceof Buffer ? value.toString("base64") : Buffer.from(value.buffer).toString("base64");
+        } else if (typeof btoa === "function") {
+          let s = "";
+          for (let i = 0; i < value.length; ++i) s += String.fromCharCode(value[i]);
+          src = btoa(s);
+        } else {
+          throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");
+        }
+        if (!type) type = resolveSeq.binaryOptions.defaultType;
+        if (type === PlainValue.Type.QUOTE_DOUBLE) {
+          value = src;
+        } else {
+          const {
+            lineWidth
+          } = resolveSeq.binaryOptions;
+          const n = Math.ceil(src.length / lineWidth);
+          const lines = new Array(n);
+          for (let i = 0, o = 0; i < n; ++i, o += lineWidth) {
+            lines[i] = src.substr(o, lineWidth);
+          }
+          value = lines.join(type === PlainValue.Type.BLOCK_LITERAL ? "\n" : " ");
+        }
+        return resolveSeq.stringifyString({
+          comment,
+          type,
+          value
+        }, ctx, onComment, onChompKeep);
+      }
+    };
+    function parsePairs(doc, cst) {
+      const seq = resolveSeq.resolveSeq(doc, cst);
+      for (let i = 0; i < seq.items.length; ++i) {
+        let item = seq.items[i];
+        if (item instanceof resolveSeq.Pair) continue;
+        else if (item instanceof resolveSeq.YAMLMap) {
+          if (item.items.length > 1) {
+            const msg = "Each pair must have its own sequence indicator";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          }
+          const pair = item.items[0] || new resolveSeq.Pair();
+          if (item.commentBefore) pair.commentBefore = pair.commentBefore ? `${item.commentBefore}
+${pair.commentBefore}` : item.commentBefore;
+          if (item.comment) pair.comment = pair.comment ? `${item.comment}
+${pair.comment}` : item.comment;
+          item = pair;
+        }
+        seq.items[i] = item instanceof resolveSeq.Pair ? item : new resolveSeq.Pair(item);
+      }
+      return seq;
+    }
+    function createPairs(schema, iterable, ctx) {
+      const pairs2 = new resolveSeq.YAMLSeq(schema);
+      pairs2.tag = "tag:yaml.org,2002:pairs";
+      for (const it of iterable) {
+        let key, value;
+        if (Array.isArray(it)) {
+          if (it.length === 2) {
+            key = it[0];
+            value = it[1];
+          } else throw new TypeError(`Expected [key, value] tuple: ${it}`);
+        } else if (it && it instanceof Object) {
+          const keys = Object.keys(it);
+          if (keys.length === 1) {
+            key = keys[0];
+            value = it[key];
+          } else throw new TypeError(`Expected { key: value } tuple: ${it}`);
+        } else {
+          key = it;
+        }
+        const pair = schema.createPair(key, value, ctx);
+        pairs2.items.push(pair);
+      }
+      return pairs2;
+    }
+    var pairs = {
+      default: false,
+      tag: "tag:yaml.org,2002:pairs",
+      resolve: parsePairs,
+      createNode: createPairs
+    };
+    var YAMLOMap = class _YAMLOMap extends resolveSeq.YAMLSeq {
+      constructor() {
+        super();
+        PlainValue._defineProperty(this, "add", resolveSeq.YAMLMap.prototype.add.bind(this));
+        PlainValue._defineProperty(this, "delete", resolveSeq.YAMLMap.prototype.delete.bind(this));
+        PlainValue._defineProperty(this, "get", resolveSeq.YAMLMap.prototype.get.bind(this));
+        PlainValue._defineProperty(this, "has", resolveSeq.YAMLMap.prototype.has.bind(this));
+        PlainValue._defineProperty(this, "set", resolveSeq.YAMLMap.prototype.set.bind(this));
+        this.tag = _YAMLOMap.tag;
+      }
+      toJSON(_, ctx) {
+        const map = /* @__PURE__ */ new Map();
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const pair of this.items) {
+          let key, value;
+          if (pair instanceof resolveSeq.Pair) {
+            key = resolveSeq.toJSON(pair.key, "", ctx);
+            value = resolveSeq.toJSON(pair.value, key, ctx);
+          } else {
+            key = resolveSeq.toJSON(pair, "", ctx);
+          }
+          if (map.has(key)) throw new Error("Ordered maps must not include duplicate keys");
+          map.set(key, value);
+        }
+        return map;
+      }
+    };
+    PlainValue._defineProperty(YAMLOMap, "tag", "tag:yaml.org,2002:omap");
+    function parseOMap(doc, cst) {
+      const pairs2 = parsePairs(doc, cst);
+      const seenKeys = [];
+      for (const {
+        key
+      } of pairs2.items) {
+        if (key instanceof resolveSeq.Scalar) {
+          if (seenKeys.includes(key.value)) {
+            const msg = "Ordered maps must not include duplicate keys";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          } else {
+            seenKeys.push(key.value);
+          }
+        }
+      }
+      return Object.assign(new YAMLOMap(), pairs2);
+    }
+    function createOMap(schema, iterable, ctx) {
+      const pairs2 = createPairs(schema, iterable, ctx);
+      const omap2 = new YAMLOMap();
+      omap2.items = pairs2.items;
+      return omap2;
+    }
+    var omap = {
+      identify: (value) => value instanceof Map,
+      nodeClass: YAMLOMap,
+      default: false,
+      tag: "tag:yaml.org,2002:omap",
+      resolve: parseOMap,
+      createNode: createOMap
+    };
+    var YAMLSet = class _YAMLSet extends resolveSeq.YAMLMap {
+      constructor() {
+        super();
+        this.tag = _YAMLSet.tag;
+      }
+      add(key) {
+        const pair = key instanceof resolveSeq.Pair ? key : new resolveSeq.Pair(key);
+        const prev = resolveSeq.findPair(this.items, pair.key);
+        if (!prev) this.items.push(pair);
+      }
+      get(key, keepPair) {
+        const pair = resolveSeq.findPair(this.items, key);
+        return !keepPair && pair instanceof resolveSeq.Pair ? pair.key instanceof resolveSeq.Scalar ? pair.key.value : pair.key : pair;
+      }
+      set(key, value) {
+        if (typeof value !== "boolean") throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`);
+        const prev = resolveSeq.findPair(this.items, key);
+        if (prev && !value) {
+          this.items.splice(this.items.indexOf(prev), 1);
+        } else if (!prev && value) {
+          this.items.push(new resolveSeq.Pair(key));
+        }
+      }
+      toJSON(_, ctx) {
+        return super.toJSON(_, ctx, Set);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        if (this.hasAllNullValues()) return super.toString(ctx, onComment, onChompKeep);
+        else throw new Error("Set items must all have null values");
+      }
+    };
+    PlainValue._defineProperty(YAMLSet, "tag", "tag:yaml.org,2002:set");
+    function parseSet(doc, cst) {
+      const map = resolveSeq.resolveMap(doc, cst);
+      if (!map.hasAllNullValues()) throw new PlainValue.YAMLSemanticError(cst, "Set items must all have null values");
+      return Object.assign(new YAMLSet(), map);
+    }
+    function createSet(schema, iterable, ctx) {
+      const set2 = new YAMLSet();
+      for (const value of iterable) set2.items.push(schema.createPair(value, null, ctx));
+      return set2;
+    }
+    var set = {
+      identify: (value) => value instanceof Set,
+      nodeClass: YAMLSet,
+      default: false,
+      tag: "tag:yaml.org,2002:set",
+      resolve: parseSet,
+      createNode: createSet
+    };
+    var parseSexagesimal = (sign, parts) => {
+      const n = parts.split(":").reduce((n2, p) => n2 * 60 + Number(p), 0);
+      return sign === "-" ? -n : n;
+    };
+    var stringifySexagesimal = ({
+      value
+    }) => {
+      if (isNaN(value) || !isFinite(value)) return resolveSeq.stringifyNumber(value);
+      let sign = "";
+      if (value < 0) {
+        sign = "-";
+        value = Math.abs(value);
+      }
+      const parts = [value % 60];
+      if (value < 60) {
+        parts.unshift(0);
+      } else {
+        value = Math.round((value - parts[0]) / 60);
+        parts.unshift(value % 60);
+        if (value >= 60) {
+          value = Math.round((value - parts[0]) / 60);
+          parts.unshift(value);
+        }
+      }
+      return sign + parts.map((n) => n < 10 ? "0" + String(n) : String(n)).join(":").replace(/000000\d*$/, "");
+    };
+    var intTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var floatTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var timestamp = {
+      identify: (value) => value instanceof Date,
+      default: true,
+      tag: "tag:yaml.org,2002:timestamp",
+      // If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part
+      // may be omitted altogether, resulting in a date format. In such a case, the time part is
+      // assumed to be 00:00:00Z (start of day, UTC).
+      test: RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),
+      resolve: (str, year, month, day, hour, minute, second, millisec, tz) => {
+        if (millisec) millisec = (millisec + "00").substr(1, 3);
+        let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec || 0);
+        if (tz && tz !== "Z") {
+          let d = parseSexagesimal(tz[0], tz.slice(1));
+          if (Math.abs(d) < 30) d *= 60;
+          date -= 6e4 * d;
+        }
+        return new Date(date);
+      },
+      stringify: ({
+        value
+      }) => value.toISOString().replace(/((T00:00)?:00)?\.000Z$/, "")
+    };
+    function shouldWarn(deprecation) {
+      const env2 = typeof process !== "undefined" && process.env || {};
+      if (deprecation) {
+        if (typeof YAML_SILENCE_DEPRECATION_WARNINGS !== "undefined") return !YAML_SILENCE_DEPRECATION_WARNINGS;
+        return !env2.YAML_SILENCE_DEPRECATION_WARNINGS;
+      }
+      if (typeof YAML_SILENCE_WARNINGS !== "undefined") return !YAML_SILENCE_WARNINGS;
+      return !env2.YAML_SILENCE_WARNINGS;
+    }
+    function warn(warning, type) {
+      if (shouldWarn(false)) {
+        const emit = typeof process !== "undefined" && process.emitWarning;
+        if (emit) emit(warning, type);
+        else {
+          console.warn(type ? `${type}: ${warning}` : warning);
+        }
+      }
+    }
+    function warnFileDeprecation(filename) {
+      if (shouldWarn(true)) {
+        const path23 = filename.replace(/.*yaml[/\\]/i, "").replace(/\.js$/, "").replace(/\\/g, "/");
+        warn(`The endpoint 'yaml/${path23}' will be removed in a future release.`, "DeprecationWarning");
+      }
+    }
+    var warned = {};
+    function warnOptionDeprecation(name, alternative) {
+      if (!warned[name] && shouldWarn(true)) {
+        warned[name] = true;
+        let msg = `The option '${name}' will be removed in a future release`;
+        msg += alternative ? `, use '${alternative}' instead.` : ".";
+        warn(msg, "DeprecationWarning");
+      }
+    }
+    exports2.binary = binary;
+    exports2.floatTime = floatTime;
+    exports2.intTime = intTime;
+    exports2.omap = omap;
+    exports2.pairs = pairs;
+    exports2.set = set;
+    exports2.timestamp = timestamp;
+    exports2.warn = warn;
+    exports2.warnFileDeprecation = warnFileDeprecation;
+    exports2.warnOptionDeprecation = warnOptionDeprecation;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js
+var require_Schema_bcc6c2d7 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var warnings = require_warnings_793925ce();
+    function createMap(schema, obj, ctx) {
+      const map2 = new resolveSeq.YAMLMap(schema);
+      if (obj instanceof Map) {
+        for (const [key, value] of obj) map2.items.push(schema.createPair(key, value, ctx));
+      } else if (obj && typeof obj === "object") {
+        for (const key of Object.keys(obj)) map2.items.push(schema.createPair(key, obj[key], ctx));
+      }
+      if (typeof schema.sortMapEntries === "function") {
+        map2.items.sort(schema.sortMapEntries);
+      }
+      return map2;
+    }
+    var map = {
+      createNode: createMap,
+      default: true,
+      nodeClass: resolveSeq.YAMLMap,
+      tag: "tag:yaml.org,2002:map",
+      resolve: resolveSeq.resolveMap
+    };
+    function createSeq(schema, obj, ctx) {
+      const seq2 = new resolveSeq.YAMLSeq(schema);
+      if (obj && obj[Symbol.iterator]) {
+        for (const it of obj) {
+          const v = schema.createNode(it, ctx.wrapScalars, null, ctx);
+          seq2.items.push(v);
+        }
+      }
+      return seq2;
+    }
+    var seq = {
+      createNode: createSeq,
+      default: true,
+      nodeClass: resolveSeq.YAMLSeq,
+      tag: "tag:yaml.org,2002:seq",
+      resolve: resolveSeq.resolveSeq
+    };
+    var string = {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify(item, ctx, onComment, onChompKeep) {
+        ctx = Object.assign({
+          actualString: true
+        }, ctx);
+        return resolveSeq.stringifyString(item, ctx, onComment, onChompKeep);
+      },
+      options: resolveSeq.strOptions
+    };
+    var failsafe = [map, seq, string];
+    var intIdentify$2 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var intResolve$1 = (src, part, radix) => resolveSeq.intOptions.asBigInt ? BigInt(src) : parseInt(part, radix);
+    function intStringify$1(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify$2(value) && value >= 0) return prefix + value.toString(radix);
+      return resolveSeq.stringifyNumber(node);
+    }
+    var nullObj = {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    };
+    var boolObj = {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,
+      resolve: (str) => str[0] === "t" || str[0] === "T",
+      options: resolveSeq.boolOptions,
+      stringify: ({
+        value
+      }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr
+    };
+    var octObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^0o([0-7]+)$/,
+      resolve: (str, oct) => intResolve$1(str, oct, 8),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 8, "0o")
+    };
+    var intObj = {
+      identify: intIdentify$2,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^[-+]?[0-9]+$/,
+      resolve: (str) => intResolve$1(str, str, 10),
+      options: resolveSeq.intOptions,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var hexObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^0x([0-9a-fA-F]+)$/,
+      resolve: (str, hex2) => intResolve$1(str, hex2, 16),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 16, "0x")
+    };
+    var nanObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var expObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    };
+    var floatObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,
+      resolve(str, frac1, frac2) {
+        const frac = frac1 || frac2;
+        const node = new resolveSeq.Scalar(parseFloat(str));
+        if (frac && frac[frac.length - 1] === "0") node.minFractionDigits = frac.length;
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    };
+    var core = failsafe.concat([nullObj, boolObj, octObj, intObj, hexObj, nanObj, expObj, floatObj]);
+    var intIdentify$1 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var stringifyJSON = ({
+      value
+    }) => JSON.stringify(value);
+    var json = [map, seq, {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^null$/,
+      resolve: () => null,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^true|false$/,
+      resolve: (str) => str === "true",
+      stringify: stringifyJSON
+    }, {
+      identify: intIdentify$1,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^-?(?:0|[1-9][0-9]*)$/,
+      resolve: (str) => resolveSeq.intOptions.asBigInt ? BigInt(str) : parseInt(str, 10),
+      stringify: ({
+        value
+      }) => intIdentify$1(value) ? value.toString() : JSON.stringify(value)
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,
+      resolve: (str) => parseFloat(str),
+      stringify: stringifyJSON
+    }];
+    json.scalarFallback = (str) => {
+      throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(str)}`);
+    };
+    var boolStringify = ({
+      value
+    }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr;
+    var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
+    function intResolve(sign, src, radix) {
+      let str = src.replace(/_/g, "");
+      if (resolveSeq.intOptions.asBigInt) {
+        switch (radix) {
+          case 2:
+            str = `0b${str}`;
+            break;
+          case 8:
+            str = `0o${str}`;
+            break;
+          case 16:
+            str = `0x${str}`;
+            break;
+        }
+        const n2 = BigInt(str);
+        return sign === "-" ? BigInt(-1) * n2 : n2;
+      }
+      const n = parseInt(str, radix);
+      return sign === "-" ? -1 * n : n;
+    }
+    function intStringify(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify(value)) {
+        const str = value.toString(radix);
+        return value < 0 ? "-" + prefix + str.substr(1) : prefix + str;
+      }
+      return resolveSeq.stringifyNumber(node);
+    }
+    var yaml11 = failsafe.concat([{
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,
+      resolve: () => true,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,
+      resolve: () => false,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "BIN",
+      test: /^([-+]?)0b([0-1_]+)$/,
+      resolve: (str, sign, bin) => intResolve(sign, bin, 2),
+      stringify: (node) => intStringify(node, 2, "0b")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^([-+]?)0([0-7_]+)$/,
+      resolve: (str, sign, oct) => intResolve(sign, oct, 8),
+      stringify: (node) => intStringify(node, 8, "0")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^([-+]?)([0-9][0-9_]*)$/,
+      resolve: (str, sign, abs) => intResolve(sign, abs, 10),
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^([-+]?)0x([0-9a-fA-F_]+)$/,
+      resolve: (str, sign, hex2) => intResolve(sign, hex2, 16),
+      stringify: (node) => intStringify(node, 16, "0x")
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str.replace(/_/g, "")),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,
+      resolve(str, frac) {
+        const node = new resolveSeq.Scalar(parseFloat(str.replace(/_/g, "")));
+        if (frac) {
+          const f = frac.replace(/_/g, "");
+          if (f[f.length - 1] === "0") node.minFractionDigits = f.length;
+        }
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    }], warnings.binary, warnings.omap, warnings.pairs, warnings.set, warnings.intTime, warnings.floatTime, warnings.timestamp);
+    var schemas = {
+      core,
+      failsafe,
+      json,
+      yaml11
+    };
+    var tags = {
+      binary: warnings.binary,
+      bool: boolObj,
+      float: floatObj,
+      floatExp: expObj,
+      floatNaN: nanObj,
+      floatTime: warnings.floatTime,
+      int: intObj,
+      intHex: hexObj,
+      intOct: octObj,
+      intTime: warnings.intTime,
+      map,
+      null: nullObj,
+      omap: warnings.omap,
+      pairs: warnings.pairs,
+      seq,
+      set: warnings.set,
+      timestamp: warnings.timestamp
+    };
+    function findTagObject(value, tagName, tags2) {
+      if (tagName) {
+        const match = tags2.filter((t) => t.tag === tagName);
+        const tagObj = match.find((t) => !t.format) || match[0];
+        if (!tagObj) throw new Error(`Tag ${tagName} not found`);
+        return tagObj;
+      }
+      return tags2.find((t) => (t.identify && t.identify(value) || t.class && value instanceof t.class) && !t.format);
+    }
+    function createNode(value, tagName, ctx) {
+      if (value instanceof resolveSeq.Node) return value;
+      const {
+        defaultPrefix,
+        onTagObj,
+        prevObjects,
+        schema,
+        wrapScalars
+      } = ctx;
+      if (tagName && tagName.startsWith("!!")) tagName = defaultPrefix + tagName.slice(2);
+      let tagObj = findTagObject(value, tagName, schema.tags);
+      if (!tagObj) {
+        if (typeof value.toJSON === "function") value = value.toJSON();
+        if (!value || typeof value !== "object") return wrapScalars ? new resolveSeq.Scalar(value) : value;
+        tagObj = value instanceof Map ? map : value[Symbol.iterator] ? seq : map;
+      }
+      if (onTagObj) {
+        onTagObj(tagObj);
+        delete ctx.onTagObj;
+      }
+      const obj = {
+        value: void 0,
+        node: void 0
+      };
+      if (value && typeof value === "object" && prevObjects) {
+        const prev = prevObjects.get(value);
+        if (prev) {
+          const alias = new resolveSeq.Alias(prev);
+          ctx.aliasNodes.push(alias);
+          return alias;
+        }
+        obj.value = value;
+        prevObjects.set(value, obj);
+      }
+      obj.node = tagObj.createNode ? tagObj.createNode(ctx.schema, value, ctx) : wrapScalars ? new resolveSeq.Scalar(value) : value;
+      if (tagName && obj.node instanceof resolveSeq.Node) obj.node.tag = tagName;
+      return obj.node;
+    }
+    function getSchemaTags(schemas2, knownTags, customTags, schemaId) {
+      let tags2 = schemas2[schemaId.replace(/\W/g, "")];
+      if (!tags2) {
+        const keys = Object.keys(schemas2).map((key) => JSON.stringify(key)).join(", ");
+        throw new Error(`Unknown schema "${schemaId}"; use one of ${keys}`);
+      }
+      if (Array.isArray(customTags)) {
+        for (const tag of customTags) tags2 = tags2.concat(tag);
+      } else if (typeof customTags === "function") {
+        tags2 = customTags(tags2.slice());
+      }
+      for (let i = 0; i < tags2.length; ++i) {
+        const tag = tags2[i];
+        if (typeof tag === "string") {
+          const tagObj = knownTags[tag];
+          if (!tagObj) {
+            const keys = Object.keys(knownTags).map((key) => JSON.stringify(key)).join(", ");
+            throw new Error(`Unknown custom tag "${tag}"; use one of ${keys}`);
+          }
+          tags2[i] = tagObj;
+        }
+      }
+      return tags2;
+    }
+    var sortMapEntriesByKey = (a, b) => a.key < b.key ? -1 : a.key > b.key ? 1 : 0;
+    var Schema2 = class _Schema {
+      // TODO: remove in v2
+      constructor({
+        customTags,
+        merge: merge2,
+        schema,
+        sortMapEntries,
+        tags: deprecatedCustomTags
+      }) {
+        this.merge = !!merge2;
+        this.name = schema;
+        this.sortMapEntries = sortMapEntries === true ? sortMapEntriesByKey : sortMapEntries || null;
+        if (!customTags && deprecatedCustomTags) warnings.warnOptionDeprecation("tags", "customTags");
+        this.tags = getSchemaTags(schemas, tags, customTags || deprecatedCustomTags, schema);
+      }
+      createNode(value, wrapScalars, tagName, ctx) {
+        const baseCtx = {
+          defaultPrefix: _Schema.defaultPrefix,
+          schema: this,
+          wrapScalars
+        };
+        const createCtx = ctx ? Object.assign(ctx, baseCtx) : baseCtx;
+        return createNode(value, tagName, createCtx);
+      }
+      createPair(key, value, ctx) {
+        if (!ctx) ctx = {
+          wrapScalars: true
+        };
+        const k = this.createNode(key, ctx.wrapScalars, null, ctx);
+        const v = this.createNode(value, ctx.wrapScalars, null, ctx);
+        return new resolveSeq.Pair(k, v);
+      }
+    };
+    PlainValue._defineProperty(Schema2, "defaultPrefix", PlainValue.defaultTagPrefix);
+    PlainValue._defineProperty(Schema2, "defaultTags", PlainValue.defaultTags);
+    exports2.Schema = Schema2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js
+var require_Document_a8d0fbf9 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var defaultOptions = {
+      anchorPrefix: "a",
+      customTags: null,
+      indent: 2,
+      indentSeq: true,
+      keepCstNodes: false,
+      keepNodeTypes: true,
+      keepBlobsInJSON: true,
+      mapAsMap: false,
+      maxAliasCount: 100,
+      prettyErrors: false,
+      // TODO Set true in v2
+      simpleKeys: false,
+      version: "1.2"
+    };
+    var scalarOptions = {
+      get binary() {
+        return resolveSeq.binaryOptions;
+      },
+      set binary(opt) {
+        Object.assign(resolveSeq.binaryOptions, opt);
+      },
+      get bool() {
+        return resolveSeq.boolOptions;
+      },
+      set bool(opt) {
+        Object.assign(resolveSeq.boolOptions, opt);
+      },
+      get int() {
+        return resolveSeq.intOptions;
+      },
+      set int(opt) {
+        Object.assign(resolveSeq.intOptions, opt);
+      },
+      get null() {
+        return resolveSeq.nullOptions;
+      },
+      set null(opt) {
+        Object.assign(resolveSeq.nullOptions, opt);
+      },
+      get str() {
+        return resolveSeq.strOptions;
+      },
+      set str(opt) {
+        Object.assign(resolveSeq.strOptions, opt);
+      }
+    };
+    var documentOptions = {
+      "1.0": {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: PlainValue.defaultTagPrefix
+        }, {
+          handle: "!!",
+          prefix: "tag:private.yaml.org,2002:"
+        }]
+      },
+      1.1: {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      },
+      1.2: {
+        schema: "core",
+        merge: false,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      }
+    };
+    function stringifyTag(doc, tag) {
+      if ((doc.version || doc.options.version) === "1.0") {
+        const priv = tag.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);
+        if (priv) return "!" + priv[1];
+        const vocab = tag.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);
+        return vocab ? `!${vocab[1]}/${vocab[2]}` : `!${tag.replace(/^tag:/, "")}`;
+      }
+      let p = doc.tagPrefixes.find((p2) => tag.indexOf(p2.prefix) === 0);
+      if (!p) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        p = dtp && dtp.find((p2) => tag.indexOf(p2.prefix) === 0);
+      }
+      if (!p) return tag[0] === "!" ? tag : `!<${tag}>`;
+      const suffix = tag.substr(p.prefix.length).replace(/[!,[\]{}]/g, (ch) => ({
+        "!": "%21",
+        ",": "%2C",
+        "[": "%5B",
+        "]": "%5D",
+        "{": "%7B",
+        "}": "%7D"
+      })[ch]);
+      return p.handle + suffix;
+    }
+    function getTagObject(tags, item) {
+      if (item instanceof resolveSeq.Alias) return resolveSeq.Alias;
+      if (item.tag) {
+        const match = tags.filter((t) => t.tag === item.tag);
+        if (match.length > 0) return match.find((t) => t.format === item.format) || match[0];
+      }
+      let tagObj, obj;
+      if (item instanceof resolveSeq.Scalar) {
+        obj = item.value;
+        const match = tags.filter((t) => t.identify && t.identify(obj) || t.class && obj instanceof t.class);
+        tagObj = match.find((t) => t.format === item.format) || match.find((t) => !t.format);
+      } else {
+        obj = item;
+        tagObj = tags.find((t) => t.nodeClass && obj instanceof t.nodeClass);
+      }
+      if (!tagObj) {
+        const name = obj && obj.constructor ? obj.constructor.name : typeof obj;
+        throw new Error(`Tag not resolved for ${name} value`);
+      }
+      return tagObj;
+    }
+    function stringifyProps(node, tagObj, {
+      anchors,
+      doc
+    }) {
+      const props = [];
+      const anchor = doc.anchors.getName(node);
+      if (anchor) {
+        anchors[anchor] = node;
+        props.push(`&${anchor}`);
+      }
+      if (node.tag) {
+        props.push(stringifyTag(doc, node.tag));
+      } else if (!tagObj.default) {
+        props.push(stringifyTag(doc, tagObj.tag));
+      }
+      return props.join(" ");
+    }
+    function stringify3(item, ctx, onComment, onChompKeep) {
+      const {
+        anchors,
+        schema
+      } = ctx.doc;
+      let tagObj;
+      if (!(item instanceof resolveSeq.Node)) {
+        const createCtx = {
+          aliasNodes: [],
+          onTagObj: (o) => tagObj = o,
+          prevObjects: /* @__PURE__ */ new Map()
+        };
+        item = schema.createNode(item, true, null, createCtx);
+        for (const alias of createCtx.aliasNodes) {
+          alias.source = alias.source.node;
+          let name = anchors.getName(alias.source);
+          if (!name) {
+            name = anchors.newName();
+            anchors.map[name] = alias.source;
+          }
+        }
+      }
+      if (item instanceof resolveSeq.Pair) return item.toString(ctx, onComment, onChompKeep);
+      if (!tagObj) tagObj = getTagObject(schema.tags, item);
+      const props = stringifyProps(item, tagObj, ctx);
+      if (props.length > 0) ctx.indentAtStart = (ctx.indentAtStart || 0) + props.length + 1;
+      const str = typeof tagObj.stringify === "function" ? tagObj.stringify(item, ctx, onComment, onChompKeep) : item instanceof resolveSeq.Scalar ? resolveSeq.stringifyString(item, ctx, onComment, onChompKeep) : item.toString(ctx, onComment, onChompKeep);
+      if (!props) return str;
+      return item instanceof resolveSeq.Scalar || str[0] === "{" || str[0] === "[" ? `${props} ${str}` : `${props}
+${ctx.indent}${str}`;
+    }
+    var Anchors = class _Anchors {
+      static validAnchorNode(node) {
+        return node instanceof resolveSeq.Scalar || node instanceof resolveSeq.YAMLSeq || node instanceof resolveSeq.YAMLMap;
+      }
+      constructor(prefix) {
+        PlainValue._defineProperty(this, "map", /* @__PURE__ */ Object.create(null));
+        this.prefix = prefix;
+      }
+      createAlias(node, name) {
+        this.setAnchor(node, name);
+        return new resolveSeq.Alias(node);
+      }
+      createMergePair(...sources) {
+        const merge2 = new resolveSeq.Merge();
+        merge2.value.items = sources.map((s) => {
+          if (s instanceof resolveSeq.Alias) {
+            if (s.source instanceof resolveSeq.YAMLMap) return s;
+          } else if (s instanceof resolveSeq.YAMLMap) {
+            return this.createAlias(s);
+          }
+          throw new Error("Merge sources must be Map nodes or their Aliases");
+        });
+        return merge2;
+      }
+      getName(node) {
+        const {
+          map
+        } = this;
+        return Object.keys(map).find((a) => map[a] === node);
+      }
+      getNames() {
+        return Object.keys(this.map);
+      }
+      getNode(name) {
+        return this.map[name];
+      }
+      newName(prefix) {
+        if (!prefix) prefix = this.prefix;
+        const names = Object.keys(this.map);
+        for (let i = 1; true; ++i) {
+          const name = `${prefix}${i}`;
+          if (!names.includes(name)) return name;
+        }
+      }
+      // During parsing, map & aliases contain CST nodes
+      resolveNodes() {
+        const {
+          map,
+          _cstAliases
+        } = this;
+        Object.keys(map).forEach((a) => {
+          map[a] = map[a].resolved;
+        });
+        _cstAliases.forEach((a) => {
+          a.source = a.source.resolved;
+        });
+        delete this._cstAliases;
+      }
+      setAnchor(node, name) {
+        if (node != null && !_Anchors.validAnchorNode(node)) {
+          throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");
+        }
+        if (name && /[\x00-\x19\s,[\]{}]/.test(name)) {
+          throw new Error("Anchor names must not contain whitespace or control characters");
+        }
+        const {
+          map
+        } = this;
+        const prev = node && Object.keys(map).find((a) => map[a] === node);
+        if (prev) {
+          if (!name) {
+            return prev;
+          } else if (prev !== name) {
+            delete map[prev];
+            map[name] = node;
+          }
+        } else {
+          if (!name) {
+            if (!node) return null;
+            name = this.newName();
+          }
+          map[name] = node;
+        }
+        return name;
+      }
+    };
+    var visit2 = (node, tags) => {
+      if (node && typeof node === "object") {
+        const {
+          tag
+        } = node;
+        if (node instanceof resolveSeq.Collection) {
+          if (tag) tags[tag] = true;
+          node.items.forEach((n) => visit2(n, tags));
+        } else if (node instanceof resolveSeq.Pair) {
+          visit2(node.key, tags);
+          visit2(node.value, tags);
+        } else if (node instanceof resolveSeq.Scalar) {
+          if (tag) tags[tag] = true;
+        }
+      }
+      return tags;
+    };
+    var listTagNames = (node) => Object.keys(visit2(node, {}));
+    function parseContents(doc, contents) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let body = void 0;
+      let spaceBefore = false;
+      for (const node of contents) {
+        if (node.valueRange) {
+          if (body !== void 0) {
+            const msg = "Document contains trailing content not separated by a ... or --- line";
+            doc.errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+            break;
+          }
+          const res = resolveSeq.resolveNode(doc, node);
+          if (spaceBefore) {
+            res.spaceBefore = true;
+            spaceBefore = false;
+          }
+          body = res;
+        } else if (node.comment !== null) {
+          const cc = body === void 0 ? comments.before : comments.after;
+          cc.push(node.comment);
+        } else if (node.type === PlainValue.Type.BLANK_LINE) {
+          spaceBefore = true;
+          if (body === void 0 && comments.before.length > 0 && !doc.commentBefore) {
+            doc.commentBefore = comments.before.join("\n");
+            comments.before = [];
+          }
+        }
+      }
+      doc.contents = body || null;
+      if (!body) {
+        doc.comment = comments.before.concat(comments.after).join("\n") || null;
+      } else {
+        const cb = comments.before.join("\n");
+        if (cb) {
+          const cbNode = body instanceof resolveSeq.Collection && body.items[0] ? body.items[0] : body;
+          cbNode.commentBefore = cbNode.commentBefore ? `${cb}
+${cbNode.commentBefore}` : cb;
+        }
+        doc.comment = comments.after.join("\n") || null;
+      }
+    }
+    function resolveTagDirective({
+      tagPrefixes
+    }, directive) {
+      const [handle, prefix] = directive.parameters;
+      if (!handle || !prefix) {
+        const msg = "Insufficient parameters given for %TAG directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (tagPrefixes.some((p) => p.handle === handle)) {
+        const msg = "The %TAG directive must only be given at most once per handle in the same document.";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      return {
+        handle,
+        prefix
+      };
+    }
+    function resolveYamlDirective(doc, directive) {
+      let [version3] = directive.parameters;
+      if (directive.name === "YAML:1.0") version3 = "1.0";
+      if (!version3) {
+        const msg = "Insufficient parameters given for %YAML directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (!documentOptions[version3]) {
+        const v0 = doc.version || doc.options.version;
+        const msg = `Document will be parsed as YAML ${v0} rather than YAML ${version3}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+      }
+      return version3;
+    }
+    function parseDirectives(doc, directives, prevDoc) {
+      const directiveComments = [];
+      let hasDirectives = false;
+      for (const directive of directives) {
+        const {
+          comment,
+          name
+        } = directive;
+        switch (name) {
+          case "TAG":
+            try {
+              doc.tagPrefixes.push(resolveTagDirective(doc, directive));
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          case "YAML":
+          case "YAML:1.0":
+            if (doc.version) {
+              const msg = "The %YAML directive must only be given at most once per document.";
+              doc.errors.push(new PlainValue.YAMLSemanticError(directive, msg));
+            }
+            try {
+              doc.version = resolveYamlDirective(doc, directive);
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          default:
+            if (name) {
+              const msg = `YAML only supports %TAG and %YAML directives, and not %${name}`;
+              doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+            }
+        }
+        if (comment) directiveComments.push(comment);
+      }
+      if (prevDoc && !hasDirectives && "1.1" === (doc.version || prevDoc.version || doc.options.version)) {
+        const copyTagPrefix = ({
+          handle,
+          prefix
+        }) => ({
+          handle,
+          prefix
+        });
+        doc.tagPrefixes = prevDoc.tagPrefixes.map(copyTagPrefix);
+        doc.version = prevDoc.version;
+      }
+      doc.commentBefore = directiveComments.join("\n") || null;
+    }
+    function assertCollection(contents) {
+      if (contents instanceof resolveSeq.Collection) return true;
+      throw new Error("Expected a YAML collection as document contents");
+    }
+    var Document = class _Document {
+      constructor(options) {
+        this.anchors = new Anchors(options.anchorPrefix);
+        this.commentBefore = null;
+        this.comment = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.errors = [];
+        this.options = options;
+        this.schema = null;
+        this.tagPrefixes = [];
+        this.version = null;
+        this.warnings = [];
+      }
+      add(value) {
+        assertCollection(this.contents);
+        return this.contents.add(value);
+      }
+      addIn(path23, value) {
+        assertCollection(this.contents);
+        this.contents.addIn(path23, value);
+      }
+      delete(key) {
+        assertCollection(this.contents);
+        return this.contents.delete(key);
+      }
+      deleteIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) {
+          if (this.contents == null) return false;
+          this.contents = null;
+          return true;
+        }
+        assertCollection(this.contents);
+        return this.contents.deleteIn(path23);
+      }
+      getDefaults() {
+        return _Document.defaults[this.version] || _Document.defaults[this.options.version] || {};
+      }
+      get(key, keepScalar) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.get(key, keepScalar) : void 0;
+      }
+      getIn(path23, keepScalar) {
+        if (resolveSeq.isEmptyPath(path23)) return !keepScalar && this.contents instanceof resolveSeq.Scalar ? this.contents.value : this.contents;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.getIn(path23, keepScalar) : void 0;
+      }
+      has(key) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.has(key) : false;
+      }
+      hasIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) return this.contents !== void 0;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.hasIn(path23) : false;
+      }
+      set(key, value) {
+        assertCollection(this.contents);
+        this.contents.set(key, value);
+      }
+      setIn(path23, value) {
+        if (resolveSeq.isEmptyPath(path23)) this.contents = value;
+        else {
+          assertCollection(this.contents);
+          this.contents.setIn(path23, value);
+        }
+      }
+      setSchema(id, customTags) {
+        if (!id && !customTags && this.schema) return;
+        if (typeof id === "number") id = id.toFixed(1);
+        if (id === "1.0" || id === "1.1" || id === "1.2") {
+          if (this.version) this.version = id;
+          else this.options.version = id;
+          delete this.options.schema;
+        } else if (id && typeof id === "string") {
+          this.options.schema = id;
+        }
+        if (Array.isArray(customTags)) this.options.customTags = customTags;
+        const opt = Object.assign({}, this.getDefaults(), this.options);
+        this.schema = new Schema2.Schema(opt);
+      }
+      parse(node, prevDoc) {
+        if (this.options.keepCstNodes) this.cstNode = node;
+        if (this.options.keepNodeTypes) this.type = "DOCUMENT";
+        const {
+          directives = [],
+          contents = [],
+          directivesEndMarker,
+          error,
+          valueRange
+        } = node;
+        if (error) {
+          if (!error.source) error.source = this;
+          this.errors.push(error);
+        }
+        parseDirectives(this, directives, prevDoc);
+        if (directivesEndMarker) this.directivesEndMarker = true;
+        this.range = valueRange ? [valueRange.start, valueRange.end] : null;
+        this.setSchema();
+        this.anchors._cstAliases = [];
+        parseContents(this, contents);
+        this.anchors.resolveNodes();
+        if (this.options.prettyErrors) {
+          for (const error2 of this.errors) if (error2 instanceof PlainValue.YAMLError) error2.makePretty();
+          for (const warn of this.warnings) if (warn instanceof PlainValue.YAMLError) warn.makePretty();
+        }
+        return this;
+      }
+      listNonDefaultTags() {
+        return listTagNames(this.contents).filter((t) => t.indexOf(Schema2.Schema.defaultPrefix) !== 0);
+      }
+      setTagPrefix(handle, prefix) {
+        if (handle[0] !== "!" || handle[handle.length - 1] !== "!") throw new Error("Handle must start and end with !");
+        if (prefix) {
+          const prev = this.tagPrefixes.find((p) => p.handle === handle);
+          if (prev) prev.prefix = prefix;
+          else this.tagPrefixes.push({
+            handle,
+            prefix
+          });
+        } else {
+          this.tagPrefixes = this.tagPrefixes.filter((p) => p.handle !== handle);
+        }
+      }
+      toJSON(arg, onAnchor) {
+        const {
+          keepBlobsInJSON,
+          mapAsMap,
+          maxAliasCount
+        } = this.options;
+        const keep = keepBlobsInJSON && (typeof arg !== "string" || !(this.contents instanceof resolveSeq.Scalar));
+        const ctx = {
+          doc: this,
+          indentStep: "  ",
+          keep,
+          mapAsMap: keep && !!mapAsMap,
+          maxAliasCount,
+          stringify: stringify3
+          // Requiring directly in Pair would create circular dependencies
+        };
+        const anchorNames = Object.keys(this.anchors.map);
+        if (anchorNames.length > 0) ctx.anchors = new Map(anchorNames.map((name) => [this.anchors.map[name], {
+          alias: [],
+          aliasCount: 0,
+          count: 1
+        }]));
+        const res = resolveSeq.toJSON(this.contents, arg, ctx);
+        if (typeof onAnchor === "function" && ctx.anchors) for (const {
+          count: count2,
+          res: res2
+        } of ctx.anchors.values()) onAnchor(res2, count2);
+        return res;
+      }
+      toString() {
+        if (this.errors.length > 0) throw new Error("Document with errors cannot be stringified");
+        const indentSize = this.options.indent;
+        if (!Number.isInteger(indentSize) || indentSize <= 0) {
+          const s = JSON.stringify(indentSize);
+          throw new Error(`"indent" option must be a positive integer, not ${s}`);
+        }
+        this.setSchema();
+        const lines = [];
+        let hasDirectives = false;
+        if (this.version) {
+          let vd = "%YAML 1.2";
+          if (this.schema.name === "yaml-1.1") {
+            if (this.version === "1.0") vd = "%YAML:1.0";
+            else if (this.version === "1.1") vd = "%YAML 1.1";
+          }
+          lines.push(vd);
+          hasDirectives = true;
+        }
+        const tagNames = this.listNonDefaultTags();
+        this.tagPrefixes.forEach(({
+          handle,
+          prefix
+        }) => {
+          if (tagNames.some((t) => t.indexOf(prefix) === 0)) {
+            lines.push(`%TAG ${handle} ${prefix}`);
+            hasDirectives = true;
+          }
+        });
+        if (hasDirectives || this.directivesEndMarker) lines.push("---");
+        if (this.commentBefore) {
+          if (hasDirectives || !this.directivesEndMarker) lines.unshift("");
+          lines.unshift(this.commentBefore.replace(/^/gm, "#"));
+        }
+        const ctx = {
+          anchors: /* @__PURE__ */ Object.create(null),
+          doc: this,
+          indent: "",
+          indentStep: " ".repeat(indentSize),
+          stringify: stringify3
+          // Requiring directly in nodes would create circular dependencies
+        };
+        let chompKeep = false;
+        let contentComment = null;
+        if (this.contents) {
+          if (this.contents instanceof resolveSeq.Node) {
+            if (this.contents.spaceBefore && (hasDirectives || this.directivesEndMarker)) lines.push("");
+            if (this.contents.commentBefore) lines.push(this.contents.commentBefore.replace(/^/gm, "#"));
+            ctx.forceBlockIndent = !!this.comment;
+            contentComment = this.contents.comment;
+          }
+          const onChompKeep = contentComment ? null : () => chompKeep = true;
+          const body = stringify3(this.contents, ctx, () => contentComment = null, onChompKeep);
+          lines.push(resolveSeq.addComment(body, "", contentComment));
+        } else if (this.contents !== void 0) {
+          lines.push(stringify3(this.contents, ctx));
+        }
+        if (this.comment) {
+          if ((!chompKeep || contentComment) && lines[lines.length - 1] !== "") lines.push("");
+          lines.push(this.comment.replace(/^/gm, "#"));
+        }
+        return lines.join("\n") + "\n";
+      }
+    };
+    PlainValue._defineProperty(Document, "defaults", documentOptions);
+    exports2.Document = Document;
+    exports2.defaultOptions = defaultOptions;
+    exports2.scalarOptions = scalarOptions;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/index.js
+var require_dist = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/index.js"(exports2) {
+    "use strict";
+    var parseCst = require_parse_cst();
+    var Document$1 = require_Document_a8d0fbf9();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var PlainValue = require_PlainValue_516d5bc2();
+    var warnings = require_warnings_793925ce();
+    require_resolveSeq_95613e94();
+    function createNode(value, wrapScalars = true, tag) {
+      if (tag === void 0 && typeof wrapScalars === "string") {
+        tag = wrapScalars;
+        wrapScalars = true;
+      }
+      const options = Object.assign({}, Document$1.Document.defaults[Document$1.defaultOptions.version], Document$1.defaultOptions);
+      const schema = new Schema2.Schema(options);
+      return schema.createNode(value, wrapScalars, tag);
+    }
+    var Document = class extends Document$1.Document {
+      constructor(options) {
+        super(Object.assign({}, Document$1.defaultOptions, options));
+      }
+    };
+    function parseAllDocuments(src, options) {
+      const stream = [];
+      let prev;
+      for (const cstDoc of parseCst.parse(src)) {
+        const doc = new Document(options);
+        doc.parse(cstDoc, prev);
+        stream.push(doc);
+        prev = doc;
+      }
+      return stream;
+    }
+    function parseDocument(src, options) {
+      const cst = parseCst.parse(src);
+      const doc = new Document(options).parse(cst[0]);
+      if (cst.length > 1) {
+        const errMsg = "Source contains multiple documents; please use YAML.parseAllDocuments()";
+        doc.errors.unshift(new PlainValue.YAMLSemanticError(cst[1], errMsg));
+      }
+      return doc;
+    }
+    function parse3(src, options) {
+      const doc = parseDocument(src, options);
+      doc.warnings.forEach((warning) => warnings.warn(warning));
+      if (doc.errors.length > 0) throw doc.errors[0];
+      return doc.toJSON();
+    }
+    function stringify3(value, options) {
+      const doc = new Document(options);
+      doc.contents = value;
+      return String(doc);
+    }
+    var YAML = {
+      createNode,
+      defaultOptions: Document$1.defaultOptions,
+      Document,
+      parse: parse3,
+      parseAllDocuments,
+      parseCST: parseCst.parse,
+      parseDocument,
+      scalarOptions: Document$1.scalarOptions,
+      stringify: stringify3
+    };
+    exports2.YAML = YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/index.js
+var require_yaml = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/index.js"(exports2, module2) {
+    module2.exports = require_dist().YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/types.js
+var require_types = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/types.js"(exports2) {
+    "use strict";
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    require_PlainValue_516d5bc2();
+    require_warnings_793925ce();
+    exports2.Alias = resolveSeq.Alias;
+    exports2.Collection = resolveSeq.Collection;
+    exports2.Merge = resolveSeq.Merge;
+    exports2.Node = resolveSeq.Node;
+    exports2.Pair = resolveSeq.Pair;
+    exports2.Scalar = resolveSeq.Scalar;
+    exports2.YAMLMap = resolveSeq.YAMLMap;
+    exports2.YAMLSeq = resolveSeq.YAMLSeq;
+    exports2.binaryOptions = resolveSeq.binaryOptions;
+    exports2.boolOptions = resolveSeq.boolOptions;
+    exports2.intOptions = resolveSeq.intOptions;
+    exports2.nullOptions = resolveSeq.nullOptions;
+    exports2.strOptions = resolveSeq.strOptions;
+    exports2.Schema = Schema2.Schema;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/types.mjs
+var import_types, binaryOptions, boolOptions, intOptions, nullOptions, strOptions, Schema, Alias, Collection, Merge, Node5, Pair, Scalar, YAMLMap, YAMLSeq;
+var init_types = __esm({
+  "../../aws-cdk-lib/node_modules/yaml/types.mjs"() {
+    import_types = __toESM(require_types(), 1);
+    binaryOptions = import_types.default.binaryOptions;
+    boolOptions = import_types.default.boolOptions;
+    intOptions = import_types.default.intOptions;
+    nullOptions = import_types.default.nullOptions;
+    strOptions = import_types.default.strOptions;
+    Schema = import_types.default.Schema;
+    Alias = import_types.default.Alias;
+    Collection = import_types.default.Collection;
+    Merge = import_types.default.Merge;
+    Node5 = import_types.default.Node;
+    Pair = import_types.default.Pair;
+    Scalar = import_types.default.Scalar;
+    YAMLMap = import_types.default.YAMLMap;
+    YAMLSeq = import_types.default.YAMLSeq;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/yaml-cfn.ts
+function serialize(obj) {
+  const oldFold = strOptions.fold.lineWidth;
+  try {
+    strOptions.fold.lineWidth = 0;
+    return yaml.stringify(obj, { schema: "yaml-1.1" });
+  } finally {
+    strOptions.fold.lineWidth = oldFold;
+  }
+}
+var yaml;
+var init_yaml_cfn = __esm({
+  "../../aws-cdk-lib/core/lib/private/yaml-cfn.ts"() {
+    "use strict";
+    yaml = __toESM(require_yaml());
+    init_types();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts
+function fnJoinConcat(parts) {
+  return { "Fn::Join": ["", minimalCloudFormationJoin("", parts)] };
+}
+function tokenAwareStringify(root, space, ctx) {
+  let indent = 0;
+  const ret = new Array();
+  recurse(ctx.resolve(root, { allowIntrinsicKeys: true }));
+  switch (ret.length) {
+    case 0:
+      return void 0;
+    case 1:
+      return renderSegment(ret[0]);
+    default:
+      return fnJoinConcat(ret.map(renderSegment));
+  }
+  function recurse(obj) {
+    if (obj === void 0) {
+      return;
+    }
+    if (Token.isUnresolved(obj)) {
+      throw new UnscopedValidationError(lit`ShouldNotHappenAnymore`, "This shouldn't happen anymore");
+    }
+    if (Array.isArray(obj)) {
+      return renderCollection("[", "]", obj, recurse);
+    }
+    if (typeof obj === "object" && obj != null && !(obj instanceof Date)) {
+      if (isIntrinsic(obj) && resolvedTypeHint(obj)) {
+        renderIntrinsic(obj);
+        return;
+      }
+      return renderCollection("{", "}", definedEntries(obj), ([key, value]) => {
+        if (key.startsWith(INTRINSIC_KEY_PREFIX)) {
+          [key, value] = value;
+        }
+        recurse(key);
+        pushLiteral(prettyPunctuation(":"));
+        recurse(value);
+      });
+    }
+    pushLiteral(JSON.stringify(obj));
+  }
+  function renderCollection(pre, post, xs, each) {
+    pushLiteral(pre);
+    indent += space;
+    let atLeastOne = false;
+    for (const [comma, item] of sepIter(xs)) {
+      if (comma) {
+        pushLiteral(",");
+      }
+      pushLineBreak();
+      each(item);
+      atLeastOne = true;
+    }
+    indent -= space;
+    if (atLeastOne) {
+      pushLineBreak();
+    }
+    pushLiteral(post);
+  }
+  function renderIntrinsic(intrinsic) {
+    switch (resolvedTypeHint(intrinsic)) {
+      case "string" /* STRING */:
+        pushLiteral('"');
+        pushIntrinsic(deepQuoteStringLiterals(intrinsic));
+        pushLiteral('"');
+        return;
+      case "string-list" /* STRING_LIST */:
+        const stack = stackOf(ctx.scope);
+        const stringifyResponse = stringifyCache.obtain(stack, JSON.stringify(intrinsic), () => {
+          const id = makeUniqueId(["CdkJsonStringify", JSON.stringify(intrinsic)]);
+          return CfnUtils.stringify(stack, id, intrinsic);
+        });
+        pushIntrinsic(stringifyResponse);
+        return;
+      case "number" /* NUMBER */:
+        pushIntrinsic(intrinsic);
+        return;
+    }
+    throw new UnscopedValidationError(lit`UnexpectedTypeHint`, `Unexpected type hint: ${resolvedTypeHint(intrinsic)}`);
+  }
+  function pushLiteral(literal) {
+    let last2 = ret[ret.length - 1];
+    if (last2?.type !== "literal") {
+      last2 = { type: "literal", parts: [] };
+      ret.push(last2);
+    }
+    last2.parts.push(literal);
+  }
+  function pushIntrinsic(intrinsic) {
+    ret.push({ type: "intrinsic", intrinsic });
+  }
+  function pushLineBreak() {
+    if (space > 0) {
+      pushLiteral(`
+${" ".repeat(indent)}`);
+    }
+  }
+  function prettyPunctuation(punc) {
+    return space > 0 ? `${punc} ` : punc;
+  }
+}
+function renderSegment(s) {
+  switch (s.type) {
+    case "literal":
+      return s.parts.join("");
+    case "intrinsic":
+      return s.intrinsic;
+  }
+}
+function minimalCloudFormationJoin(delimiter, values) {
+  let i = 0;
+  while (i < values.length) {
+    const el = values[i];
+    if (isSplicableFnJoinIntrinsic(el)) {
+      values.splice(i, 1, ...el["Fn::Join"][1]);
+    } else if (i > 0 && isConcatable(values[i - 1]) && isConcatable(values[i])) {
+      values[i - 1] = `${values[i - 1]}${delimiter}${values[i]}`;
+      values.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+  return values;
+  function isSplicableFnJoinIntrinsic(obj) {
+    if (!isIntrinsic(obj)) {
+      return false;
+    }
+    if (Object.keys(obj)[0] !== "Fn::Join") {
+      return false;
+    }
+    const [delim, list] = obj["Fn::Join"];
+    if (delim !== delimiter) {
+      return false;
+    }
+    if (Token.isUnresolved(list)) {
+      return false;
+    }
+    if (!Array.isArray(list)) {
+      return false;
+    }
+    return true;
+  }
+}
+function isConcatable(obj) {
+  return ["string", "number"].includes(typeof obj) && !Token.isUnresolved(obj);
+}
+function isIntrinsic(x) {
+  if (Array.isArray(x) || x === null || typeof x !== "object") {
+    return false;
+  }
+  const keys = Object.keys(x);
+  if (keys.length !== 1) {
+    return false;
+  }
+  return keys[0] === "Ref" || isNameOfCloudFormationIntrinsic(keys[0]);
+}
+function isNameOfCloudFormationIntrinsic(name) {
+  if (!name.startsWith("Fn::")) {
+    return false;
+  }
+  return name !== "Fn::GetArtifactAtt" && name !== "Fn::GetParam";
+}
+function* sepIter(xs) {
+  let comma = false;
+  for (const item of xs) {
+    yield [comma, item];
+    comma = true;
+  }
+}
+function* definedEntries(xs) {
+  for (const [key, value] of Object.entries(xs)) {
+    if (value !== void 0) {
+      yield [key, value];
+    }
+  }
+}
+function deepQuoteStringLiterals(x) {
+  if (Array.isArray(x)) {
+    return x.map(deepQuoteStringLiterals);
+  }
+  if (typeof x === "object" && x != null) {
+    const ret = {};
+    for (const [key, value] of Object.entries(x)) {
+      ret[deepQuoteStringLiterals(key)] = deepQuoteStringLiterals(value);
+    }
+    return ret;
+  }
+  if (typeof x === "string") {
+    return quoteString(x);
+  }
+  return x;
+}
+function quoteString(s) {
+  s = JSON.stringify(s);
+  return s.substring(1, s.length - 1);
+}
+var CloudFormationLang, CLOUDFORMATION_CONCAT, CLOUDFORMATION_TOKEN_RESOLVER, ScopedCache, stringifyCache;
+var init_cloudformation_lang = __esm({
+  "../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts"() {
+    "use strict";
+    init_cfn_utils_provider();
+    init_resolve();
+    init_yaml_cfn();
+    init_lazy();
+    init_resolvable();
+    init_token();
+    init_type_hints();
+    init_uniqueid();
+    init_errors();
+    init_literal_string();
+    init_helpers_internal();
+    init_core_construct_finders();
+    CloudFormationLang = class {
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a JSON string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the JSON representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       * @param space Indentation to use (default: no pretty-printing)
+       */
+      static toJSON(obj, space) {
+        return Lazy.uncachedString({
+          // We used to do this by hooking into `JSON.stringify()` by adding in objects
+          // with custom `toJSON()` functions, but it's ultimately simpler just to
+          // reimplement the `stringify()` function from scratch.
+          produce: (ctx) => tokenAwareStringify(obj, space ?? 0, ctx)
+        });
+      }
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a YAML string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the YAML representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       */
+      static toYAML(obj) {
+        return Token.asString(Box.fromValue(obj).derive((data) => serialize(data)));
+      }
+      /**
+       * Produce a CloudFormation expression to concat two arbitrary expressions when resolving
+       */
+      static concat(left, right) {
+        if (left === void 0 && right === void 0) {
+          return "";
+        }
+        const parts = new Array();
+        if (left !== void 0) {
+          parts.push(left);
+        }
+        if (right !== void 0) {
+          parts.push(right);
+        }
+        if (parts.length === 1) {
+          return parts[0];
+        }
+        if (parts.length === 2 && isConcatable(parts[0]) && isConcatable(parts[1])) {
+          return `${parts[0]}${parts[1]}`;
+        }
+        return fnJoinConcat(parts);
+      }
+    };
+    CLOUDFORMATION_CONCAT = {
+      join(left, right) {
+        return CloudFormationLang.concat(left, right);
+      }
+    };
+    CLOUDFORMATION_TOKEN_RESOLVER = new DefaultTokenResolver(CLOUDFORMATION_CONCAT);
+    ScopedCache = class {
+      cache = /* @__PURE__ */ new WeakMap();
+      obtain(object, key, init) {
+        let kvMap = this.cache.get(object);
+        if (!kvMap) {
+          kvMap = /* @__PURE__ */ new Map();
+          this.cache.set(object, kvMap);
+        }
+        let ret = kvMap.get(key);
+        if (ret === void 0) {
+          ret = init();
+          kvMap.set(key, ret);
+        }
+        return ret;
+      }
+    };
+    stringifyCache = new ScopedCache();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-fn.ts
+function _inGroupsOf(array, maxGroup) {
+  const result = new Array();
+  for (let i = 0; i < array.length; i += maxGroup) {
+    result.push(array.slice(i, i + maxGroup));
+  }
+  return result;
+}
+function range2(n) {
+  const ret = [];
+  for (let i = 0; i < n; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+var Fn, FN_BASE_SYMBOL, FnBase, FnRef, FnFindInMap, FnTransform, FnGetAtt, FnGetAZs, FnImportValue, FnGetStackOutput, FnSelect, FnSplit, FnSub, FnBase64, FnCidr, FnConditionBase, FnAnd, FnEquals, FnIf, FnNot, FnOr, FnContains, FnEachMemberEquals, FnEachMemberIn, FnRefAll, FnValueOf, FnValueOfAll, FnJoin, FnToJsonString, FnLength;
+var init_cfn_fn = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-fn.ts"() {
+    "use strict";
+    init_errors();
+    init_cloudformation_lang();
+    init_core_construct_finders();
+    init_intrinsic();
+    init_literal_string();
+    init_reference();
+    init_token();
+    Fn = class _Fn {
+      /**
+       * The ``Ref`` intrinsic function returns the value of the specified parameter or resource.
+       * Note that it doesn't validate the logicalName, it mainly serves parameter/resource reference defined in a ``CfnInclude`` template.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      static ref(logicalName) {
+        return new FnRef(logicalName).toString();
+      }
+      /**
+       * The ``Fn::GetAtt`` intrinsic function returns the value of an attribute
+       * from a resource in the template.
+       * @param logicalNameOfResource The logical name (also called logical ID) of
+       * the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose
+       * value you want. See the resource's reference page for details about the
+       * attributes available for that resource type.
+       * @returns an IResolvable object
+       */
+      static getAtt(logicalNameOfResource, attributeName) {
+        return new FnGetAtt(logicalNameOfResource, attributeName);
+      }
+      /**
+       * The intrinsic function ``Fn::Join`` appends a set of values into a single
+       * value, separated by the specified delimiter. If a delimiter is the empty
+       * string, the set of values are concatenated with no delimiter.
+       * @param delimiter The value you want to occur between fragments. The
+       * delimiter will occur between fragments only. It will not terminate the
+       * final value.
+       * @param listOfValues The list of values you want combined.
+       * @returns a token represented as a string
+       */
+      static join(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        return new FnJoin(delimiter, listOfValues).toString();
+      }
+      /**
+       * Split a string token into a token list of string values.
+       *
+       * Specify the location of splits with a delimiter such as ',' (a comma).
+       * Renders to the `Fn::Split` intrinsic function.
+       *
+       * Lists with unknown lengths (default)
+       * -------------------------------------
+       *
+       * Since this function is used to work with deploy-time values, if `assumedLength`
+       * is not given the CDK cannot know the length of the resulting list at synthesis time.
+       * This brings the following restrictions:
+       *
+       * - You must use `Fn.select(i, list)` to pick elements out of the list (you must not use
+       *   `list[i]`).
+       * - You cannot add elements to the list, remove elements from the list,
+       *   combine two such lists together, or take a slice of the list.
+       * - You cannot pass the list to constructs that do any of the above.
+       *
+       * The only valid operation with such a tokenized list is to pass it unmodified to a
+       * CloudFormation Resource construct.
+       *
+       * Lists with assumed lengths
+       * --------------------------
+       *
+       * Pass `assumedLength` if you know the length of the list that will be
+       * produced by splitting. The actual list length at deploy time may be
+       * *longer* than the number you pass, but not *shorter*.
+       *
+       * The returned list will look like:
+       *
+       * ```
+       * [Fn.select(0, split), Fn.select(1, split), Fn.select(2, split), ...]
+       * ```
+       *
+       * The restrictions from the section "Lists with unknown lengths" will now be lifted,
+       * at the expense of having to know and fix the length of the list.
+       *
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       * @param assumedLength The length of the list that will be produced by splitting
+       * @returns a token represented as a string array
+       */
+      static split(delimiter, source, assumedLength) {
+        if (!Token.isUnresolved(source)) {
+          return source.split(delimiter);
+        }
+        if (Token.isUnresolved(delimiter)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'delimiter' may not be a token value");
+        }
+        const split = Token.asList(new FnSplit(delimiter, source));
+        if (assumedLength === void 0) {
+          return split;
+        }
+        if (Token.isUnresolved(assumedLength)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'assumedLength' may not be a token value");
+        }
+        return range2(assumedLength).map((i) => _Fn.select(i, split));
+      }
+      /**
+       * The intrinsic function ``Fn::Select`` returns a single object from a list of objects by index.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       * @returns a token represented as a string
+       */
+      static select(index, array) {
+        if (!Token.isUnresolved(index) && !Token.isUnresolved(array) && !array.some(Token.isUnresolved)) {
+          return array[index];
+        }
+        return new FnSelect(index, array).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Sub`` substitutes variables in an input string
+       * with values that you specify. In your templates, you can use this function
+       * to construct commands or outputs that include values that aren't available
+       * until you create or update a stack.
+       * @param body A string with variables that AWS CloudFormation substitutes
+       * with their associated values at runtime. Write variables as ${MyVarName}.
+       * Variables can be template parameter names, resource logical IDs, resource
+       * attributes, or a variable in a key-value map. If you specify only template
+       * parameter names, resource logical IDs, and resource attributes, don't
+       * specify a key-value map.
+       * @param variables The name of a variable that you included in the String
+       * parameter. The value that AWS CloudFormation substitutes for the associated
+       * variable name at runtime.
+       * @returns a token represented as a string
+       */
+      static sub(body, variables) {
+        return new FnSub(body, variables).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Base64`` returns the Base64 representation of
+       * the input string. This function is typically used to pass encoded data to
+       * Amazon EC2 instances by way of the UserData property.
+       * @param data The string value you want to convert to Base64.
+       * @returns a token represented as a string
+       */
+      static base64(data) {
+        return new FnBase64(data).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Cidr`` returns the specified Cidr address block.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       * @returns a token represented as a string
+       */
+      static cidr(ipBlock, count2, sizeMask) {
+        return Token.asList(new FnCidr(ipBlock, count2, sizeMask));
+      }
+      /**
+       * Given an url, parse the domain name
+       * @param url the url to parse
+       */
+      static parseDomainName(url2) {
+        const noHttps = _Fn.select(1, _Fn.split("//", url2));
+        return _Fn.select(0, _Fn.split("/", noHttps));
+      }
+      /**
+       * The intrinsic function ``Fn::GetAZs`` returns an array that lists
+       * Availability Zones for a specified region. Because customers have access to
+       * different Availability Zones, the intrinsic function ``Fn::GetAZs`` enables
+       * template authors to write templates that adapt to the calling user's
+       * access. That way you don't have to hard-code a full list of Availability
+       * Zones for a specified region.
+       * @param region The name of the region for which you want to get the
+       * Availability Zones. You can use the AWS::Region pseudo parameter to specify
+       * the region in which the stack is created. Specifying an empty string is
+       * equivalent to specifying AWS::Region.
+       * @returns a token represented as a string array
+       */
+      static getAzs(region) {
+        return Token.asList(new FnGetAZs(region));
+      }
+      /**
+       * The intrinsic function ``Fn::ImportValue`` returns the value of an output
+       * exported by another stack. You typically use this function to create
+       * cross-stack references. In the following example template snippets, Stack A
+       * exports VPC security group values and Stack B imports them.
+       * @param sharedValueToImport The stack output value that you want to import.
+       * @returns a token represented as a string
+       */
+      static importValue(sharedValueToImport) {
+        return new FnImportValue(sharedValueToImport).toString();
+      }
+      /**
+       * The intrinsic function `Fn::GetStackOutput` returns the value of an output
+       * from another stack. This is similar to `Fn::ImportValue`, but it can reference
+       * a normal output, without the need to export anything. As with `Fn::ImportValue`,
+       * you typically use this function to create cross-stack references.
+       * @param stackName The name of the producer stack.
+       * @param outputName The name of the output to get the value from.
+       * @param region The region where the producer stack is deployed. If not provided,
+       * it will default to the same region as the consumer stack.
+       * @param roleArn The role to be used when describing the producer stack. If not
+       * provided, it will default to the role used to create the producer stack.
+       */
+      static getStackOutput(stackName, outputName, region, roleArn) {
+        return new FnGetStackOutput(stackName, outputName, region, roleArn).toString();
+      }
+      /**
+       * Like `Fn.importValue`, but import a list with a known length
+       *
+       * If you explicitly want a list with an unknown length, call `Fn.split(',',
+       * Fn.importValue(exportName))`. See the documentation of `Fn.split` to read
+       * more about the limitations of using lists of unknown length.
+       *
+       * `Fn.importListValue(exportName, assumedLength)` is the same as
+       * `Fn.split(',', Fn.importValue(exportName), assumedLength)`,
+       * but easier to read and impossible to forget to pass `assumedLength`.
+       */
+      static importListValue(sharedValueToImport, assumedLength, delimiter = ",") {
+        return _Fn.split(delimiter, _Fn.importValue(sharedValueToImport), assumedLength);
+      }
+      /**
+       * The intrinsic function ``Fn::FindInMap`` returns the value corresponding to
+       * keys in a two-level map that is declared in the Mappings section.
+       * Warning: do not use with lazy mappings as this function will not guarantee a lazy mapping to render in the template.
+       * Prefer to use `CfnMapping.findInMap` in general.
+       * @returns a token represented as a string
+       */
+      static findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return _Fn._findInMap(mapName, topLevelKey, secondLevelKey, defaultValue).toString();
+      }
+      /**
+       * An additional function used in CfnParser,
+       * as Fn::FindInMap does not always return a string.
+       *
+       * @internal
+       */
+      static _findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return new FnFindInMap(mapName, topLevelKey, secondLevelKey, defaultValue);
+      }
+      /**
+       * Creates a token representing the ``Fn::Transform`` expression
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-transform.html
+       * @param macroName The name of the macro to perform the processing
+       * @param parameters The parameters to be passed to the macro
+       * @returns a token representing the transform expression
+       */
+      static transform(macroName, parameters) {
+        return new FnTransform(macroName, parameters);
+      }
+      /**
+       * Returns true if all the specified conditions evaluate to true, or returns
+       * false if any one of the conditions evaluates to false. ``Fn::And`` acts as
+       * an AND operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions to AND
+       * @returns an FnCondition token
+       */
+      static conditionAnd(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionAnd() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnAnd(...conditions);
+        }
+        return _Fn.conditionAnd(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionAnd(...group)));
+      }
+      /**
+       * Compares if two values are equal. Returns true if the two values are equal
+       * or false if they aren't.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       * @returns an FnCondition token
+       */
+      static conditionEquals(lhs, rhs) {
+        return new FnEquals(lhs, rhs);
+      }
+      /**
+       * Returns one value if the specified condition evaluates to true and another
+       * value if the specified condition evaluates to false. Currently, AWS
+       * CloudFormation supports the ``Fn::If`` intrinsic function in the metadata
+       * attribute, update policy attribute, and property values in the Resources
+       * section and Outputs sections of a template. You can use the AWS::NoValue
+       * pseudo parameter as a return value to remove the corresponding property.
+       * @param conditionId A reference to a condition in the Conditions section. Use
+       * the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition
+       * evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition
+       * evaluates to false.
+       * @returns an FnCondition token
+       */
+      static conditionIf(conditionId, valueIfTrue, valueIfFalse) {
+        return new FnIf(conditionId, valueIfTrue, valueIfFalse);
+      }
+      /**
+       * Returns true for a condition that evaluates to false or returns false for a
+       * condition that evaluates to true. ``Fn::Not`` acts as a NOT operator.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true
+       * or false.
+       * @returns an FnCondition token
+       */
+      static conditionNot(condition) {
+        return new FnNot(condition);
+      }
+      /**
+       * Returns true if any one of the specified conditions evaluate to true, or
+       * returns false if all of the conditions evaluates to false. ``Fn::Or`` acts
+       * as an OR operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions that evaluates to true or false.
+       * @returns an FnCondition token
+       */
+      static conditionOr(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionOr() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnOr(...conditions);
+        }
+        return _Fn.conditionOr(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionOr(...group)));
+      }
+      /**
+       * Returns true if a specified string matches at least one value in a list of
+       * strings.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       * @returns an FnCondition token
+       */
+      static conditionContains(listOfStrings, value) {
+        return new FnContains(listOfStrings, value);
+      }
+      /**
+       * Returns true if a specified string matches all values in a list.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list
+       * of strings.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberEquals(listOfStrings, value) {
+        return new FnEachMemberEquals(listOfStrings, value);
+      }
+      /**
+       * Returns true if each member in a list of strings matches at least one value
+       * in a second list of strings.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS
+       * CloudFormation checks whether each member in the strings_to_check parameter
+       * is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member
+       * in the strings_to_match parameter is compared against the members of the
+       * strings_to_check parameter.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberIn(stringsToCheck, stringsToMatch) {
+        return new FnEachMemberIn(stringsToCheck, stringsToMatch);
+      }
+      /**
+       * Returns all values for a specified parameter type.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @returns a token represented as a string array
+       */
+      static refAll(parameterType) {
+        return Token.asList(new FnRefAll(parameterType));
+      }
+      /**
+       * Returns an attribute value or list of values for a specific parameter and
+       * attribute.
+       * @param parameterOrLogicalId The name of a parameter for which you want to
+       * retrieve attribute values. The parameter must be declared in the Parameters
+       * section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value.
+       * @returns a token represented as a string
+       */
+      static valueOf(parameterOrLogicalId, attribute) {
+        return new FnValueOf(parameterOrLogicalId, attribute).toString();
+      }
+      /**
+       * Returns a list of all attribute values for a given parameter type and
+       * attribute.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value. For more information about attributes, see Supported Attributes.
+       * @returns a token represented as a string array
+       */
+      static valueOfAll(parameterType, attribute) {
+        return Token.asList(new FnValueOfAll(parameterType, attribute));
+      }
+      /**
+       * The `Fn::ToJsonString` intrinsic function converts an object or array to its
+       * corresponding JSON string.
+       *
+       * @param object The object or array to stringify
+       */
+      static toJsonString(object) {
+        if (!Token.isUnresolved(object)) {
+          return JSON.stringify(object);
+        }
+        return new FnToJsonString(object).toString();
+      }
+      /**
+       * The intrinsic function `Fn::Length` returns the number of elements within an array
+       * or an intrinsic function that returns an array.
+       *
+       * @param array The array you want to return the number of elements from
+       */
+      static len(array) {
+        if (!Token.isUnresolved(array)) {
+          if (!Array.isArray(array)) {
+            throw new UnscopedValidationError(lit`ValidationError`, "Fn.length() needs an array");
+          }
+          return array.length;
+        }
+        return Token.asNumber(new FnLength(array));
+      }
+      /**
+       * Test whether the given object extends FnBase class.
+       *
+       * @internal
+       */
+      static _isFnBase(x) {
+        return x !== null && typeof x === "object" && FN_BASE_SYMBOL in x;
+      }
+      constructor() {
+      }
+    };
+    FN_BASE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnFnBase");
+    FnBase = class extends Intrinsic {
+      constructor(name, value) {
+        super({ [name]: value });
+        Object.defineProperty(this, FN_BASE_SYMBOL, { value: true });
+      }
+    };
+    FnRef = class extends FnBase {
+      /**
+       * Creates an ``Ref`` function.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      constructor(logicalName) {
+        super("Ref", logicalName);
+      }
+    };
+    FnFindInMap = class extends FnBase {
+      /**
+       * Creates an ``Fn::FindInMap`` function.
+       * @param mapName The logical name of a mapping declared in the Mappings section that contains the keys and values.
+       * @param topLevelKey The top-level key name. Its value is a list of key-value pairs.
+       * @param secondLevelKey The second-level key name, which is set to one of the keys from the list assigned to TopLevelKey.
+       * @param defaultValue The value of the default value returned if either the key is not found in the map
+       */
+      mapName;
+      topLevelKey;
+      secondLevelKey;
+      defaultValue;
+      constructor(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        super("Fn::FindInMap", [mapName, topLevelKey, secondLevelKey, defaultValue !== void 0 ? { DefaultValue: defaultValue } : void 0]);
+        this.mapName = mapName;
+        this.topLevelKey = topLevelKey;
+        this.secondLevelKey = secondLevelKey;
+        this.defaultValue = defaultValue;
+      }
+      resolve(context) {
+        if (this.defaultValue !== void 0) {
+          stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        }
+        return { "Fn::FindInMap": [this.mapName, this.topLevelKey, this.secondLevelKey, this.defaultValue !== void 0 ? { DefaultValue: this.defaultValue } : void 0] };
+      }
+    };
+    FnTransform = class extends FnBase {
+      /**
+       * creates an ``Fn::Transform`` function.
+       * @param macroName The name of the macro to be invoked
+       * @param parameters the parameters to pass to it
+       */
+      constructor(macroName, parameters) {
+        super("Fn::Transform", { Name: macroName, Parameters: parameters });
+      }
+    };
+    FnGetAtt = class extends FnBase {
+      /**
+       * Creates a ``Fn::GetAtt`` function.
+       * @param logicalNameOfResource The logical name (also called logical ID) of the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose value you want. See the resource's reference page for details about the attributes available for that resource type.
+       */
+      constructor(logicalNameOfResource, attributeName) {
+        super("Fn::GetAtt", [logicalNameOfResource, attributeName]);
+      }
+    };
+    FnGetAZs = class extends FnBase {
+      /**
+       * Creates an ``Fn::GetAZs`` function.
+       * @param region The name of the region for which you want to get the Availability Zones.
+       *         You can use the AWS::Region pseudo parameter to specify the region in
+       *         which the stack is created. Specifying an empty string is equivalent to
+       *         specifying AWS::Region.
+       */
+      constructor(region) {
+        super("Fn::GetAZs", region || "");
+      }
+    };
+    FnImportValue = class extends FnBase {
+      /**
+       * Creates an ``Fn::ImportValue`` function.
+       * @param sharedValueToImport The stack output value that you want to import.
+       */
+      constructor(sharedValueToImport) {
+        super("Fn::ImportValue", sharedValueToImport);
+      }
+    };
+    FnGetStackOutput = class extends FnBase {
+      constructor(stackName, outputName, region, roleArn) {
+        super("Fn::GetStackOutput", {
+          StackName: stackName,
+          Region: region,
+          RoleArn: roleArn,
+          OutputName: outputName
+        });
+      }
+    };
+    FnSelect = class extends FnBase {
+      /**
+       * Creates an ``Fn::Select`` function.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       */
+      constructor(index, array) {
+        super("Fn::Select", [index, array]);
+      }
+    };
+    FnSplit = class extends FnBase {
+      /**
+       * Create an ``Fn::Split`` function.
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       */
+      constructor(delimiter, source) {
+        super("Fn::Split", [delimiter, source]);
+      }
+    };
+    FnSub = class extends FnBase {
+      /**
+       * Creates an ``Fn::Sub`` function.
+       * @param body A string with variables that AWS CloudFormation substitutes with their
+       *       associated values at runtime. Write variables as ${MyVarName}. Variables
+       *       can be template parameter names, resource logical IDs, resource attributes,
+       *       or a variable in a key-value map. If you specify only template parameter names,
+       *       resource logical IDs, and resource attributes, don't specify a key-value map.
+       * @param variables The name of a variable that you included in the String parameter.
+       *          The value that AWS CloudFormation substitutes for the associated variable name at runtime.
+       */
+      constructor(body, variables) {
+        super("Fn::Sub", variables ? [body, variables] : body);
+      }
+    };
+    FnBase64 = class extends FnBase {
+      /**
+       * Creates an ``Fn::Base64`` function.
+       * @param data The string value you want to convert to Base64.
+       */
+      constructor(data) {
+        super("Fn::Base64", data);
+      }
+    };
+    FnCidr = class extends FnBase {
+      /**
+       * Creates an ``Fn::Cidr`` function.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       */
+      constructor(ipBlock, count2, sizeMask) {
+        if (count2 < 1 || count2 > 256) {
+          throw new UnscopedValidationError(lit`MustBeFnCidrSCountAttribute`, `Fn::Cidr's count attribute must be between 1 and 256, ${count2} was provided.`);
+        }
+        super("Fn::Cidr", [ipBlock, count2, sizeMask]);
+      }
+    };
+    FnConditionBase = class extends Intrinsic {
+      disambiguator = true;
+      constructor(type, value) {
+        super({ [type]: value });
+      }
+    };
+    FnAnd = class extends FnConditionBase {
+      constructor(...condition) {
+        super("Fn::And", condition);
+      }
+    };
+    FnEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Equals`` condition function.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       */
+      constructor(lhs, rhs) {
+        super("Fn::Equals", [lhs, rhs]);
+      }
+    };
+    FnIf = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::If`` condition function.
+       * @param condition A reference to a condition in the Conditions section. Use the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition evaluates to false.
+       */
+      constructor(condition, valueIfTrue, valueIfFalse) {
+        super("Fn::If", [condition, valueIfTrue, valueIfFalse]);
+      }
+    };
+    FnNot = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Not`` condition function.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true or false.
+       */
+      constructor(condition) {
+        super("Fn::Not", [condition]);
+      }
+    };
+    FnOr = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Or`` condition function.
+       * @param condition A condition that evaluates to true or false.
+       */
+      constructor(...condition) {
+        super("Fn::Or", condition);
+      }
+    };
+    FnContains = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Contains`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::Contains", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberEquals`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::EachMemberEquals", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberIn = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberIn`` function.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS CloudFormation checks whether each member in the strings_to_check parameter is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member in the strings_to_match parameter is compared against the members of the strings_to_check parameter.
+       */
+      constructor(stringsToCheck, stringsToMatch) {
+        super("Fn::EachMemberIn", [stringsToCheck, stringsToMatch]);
+      }
+    };
+    FnRefAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::RefAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or
+       *            AWS::EC2::VPC::Id. For more information, see Parameters in the AWS
+       *            CloudFormation User Guide.
+       */
+      constructor(parameterType) {
+        super("Fn::RefAll", parameterType);
+      }
+    };
+    FnValueOf = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOf`` function.
+       * @param parameterOrLogicalId The name of a parameter for which you want to retrieve attribute values. The parameter must be declared in the Parameters section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a value.
+       */
+      constructor(parameterOrLogicalId, attribute) {
+        super("Fn::ValueOf", [parameterOrLogicalId, attribute]);
+      }
+    };
+    FnValueOfAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOfAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a value. For more information about attributes, see Supported Attributes.
+       */
+      constructor(parameterType, attribute) {
+        super("Fn::ValueOfAll", [parameterType, attribute]);
+      }
+    };
+    FnJoin = class {
+      creationStack;
+      delimiter;
+      listOfValues;
+      /**
+       * Creates an ``Fn::Join`` function.
+       * @param delimiter The value you want to occur between fragments. The delimiter will occur between fragments only.
+       *          It will not terminate the final value.
+       * @param listOfValues The list of values you want combined.
+       */
+      constructor(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        this.delimiter = delimiter;
+        this.listOfValues = listOfValues;
+      }
+      resolve(context) {
+        if (Token.isUnresolved(this.listOfValues)) {
+          return { "Fn::Join": [this.delimiter, this.listOfValues] };
+        }
+        const resolved = this.resolveValues(context);
+        if (resolved.length === 1) {
+          return resolved[0];
+        }
+        return { "Fn::Join": [this.delimiter, resolved] };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Join" });
+      }
+      toJSON() {
+        return "";
+      }
+      /**
+       * Optimization: if a Fn::Join is nested in another one and they share the same delimiter, then flatten it up. Also,
+       * if two concatenated elements are literal strings (not tokens), then pre-concatenate them with the delimiter, to
+       * generate shorter output.
+       */
+      resolveValues(context) {
+        const resolvedValues = this.listOfValues.map((x) => Reference.isReference(x) ? x : context.resolve(x));
+        return minimalCloudFormationJoin(this.delimiter, resolvedValues);
+      }
+    };
+    FnJoin.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnToJsonString = class {
+      creationStack;
+      object;
+      constructor(object) {
+        this.object = object;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::ToJsonString": this.object };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::ToJsonString" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnToJsonString.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnLength = class {
+      creationStack;
+      array;
+      constructor(array) {
+        this.array = array;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::Length": this.array };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Length" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnLength.prototype.creationStack = ["Token stack traces are no longer captured"];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-pseudo.ts
+function pseudoString(name) {
+  return Token.asString({ Ref: name }, { displayHint: name.replace("::", ".") });
+}
+var AWS_ACCOUNTID, AWS_URLSUFFIX, AWS_NOTIFICATIONARNS, AWS_PARTITION, AWS_REGION, AWS_STACKID, AWS_STACKNAME, AWS_NOVALUE, Aws, ScopedAws;
+var init_cfn_pseudo = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-pseudo.ts"() {
+    "use strict";
+    init_cfn_reference();
+    init_token();
+    AWS_ACCOUNTID = "AWS::AccountId";
+    AWS_URLSUFFIX = "AWS::URLSuffix";
+    AWS_NOTIFICATIONARNS = "AWS::NotificationARNs";
+    AWS_PARTITION = "AWS::Partition";
+    AWS_REGION = "AWS::Region";
+    AWS_STACKID = "AWS::StackId";
+    AWS_STACKNAME = "AWS::StackName";
+    AWS_NOVALUE = "AWS::NoValue";
+    Aws = class {
+      static ACCOUNT_ID = pseudoString(AWS_ACCOUNTID);
+      static URL_SUFFIX = pseudoString(AWS_URLSUFFIX);
+      static NOTIFICATION_ARNS = Token.asList({ Ref: AWS_NOTIFICATIONARNS }, { displayHint: AWS_NOTIFICATIONARNS });
+      static PARTITION = pseudoString(AWS_PARTITION);
+      static REGION = pseudoString(AWS_REGION);
+      static STACK_ID = pseudoString(AWS_STACKID);
+      static STACK_NAME = pseudoString(AWS_STACKNAME);
+      static NO_VALUE = pseudoString(AWS_NOVALUE);
+      constructor() {
+      }
+    };
+    ScopedAws = class {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      get accountId() {
+        return this.asString(AWS_ACCOUNTID);
+      }
+      get urlSuffix() {
+        return this.asString(AWS_URLSUFFIX);
+      }
+      get notificationArns() {
+        return Token.asList(CfnReference.forPseudo(AWS_NOTIFICATIONARNS, this.scope), {
+          displayHint: AWS_NOTIFICATIONARNS
+        });
+      }
+      get partition() {
+        return this.asString(AWS_PARTITION);
+      }
+      get region() {
+        return this.asString(AWS_REGION);
+      }
+      get stackId() {
+        return this.asString(AWS_STACKID);
+      }
+      get stackName() {
+        return this.asString(AWS_STACKNAME);
+      }
+      asString(name) {
+        return Token.asString(CfnReference.forPseudo(name, this.scope), { displayHint: name });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource-policy.ts
+var init_cfn_resource_policy = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource-policy.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts
+var init_cfn_parse = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource_policy();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_cfn_reference();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts
+function getPrecreatedRoleConfig(scope, rolePath) {
+  const precreatedRolePath = rolePath ?? scope.node.path;
+  const customizeRolesContext = scope.node.tryGetContext(CUSTOMIZE_ROLES_CONTEXT_KEY);
+  if (customizeRolesContext !== void 0) {
+    const customizeRoles = customizeRolesContext;
+    if (customizeRoles.preventSynthesis === false) {
+      return {
+        preventSynthesis: false,
+        enabled: true
+      };
+    }
+    if (customizeRoles.usePrecreatedRoles?.hasOwnProperty(precreatedRolePath)) {
+      if (Token.isUnresolved(customizeRoles.usePrecreatedRoles[precreatedRolePath])) {
+        Annotations.of(scope)._addTrackableError(
+          lit`UnresolvablePrecreatedRoleName`,
+          `Cannot resolve precreated role name at path "${precreatedRolePath}". The value may be a token.`
+        );
+      } else {
+        return {
+          enabled: true,
+          preventSynthesis: true,
+          precreatedRoleName: customizeRoles.usePrecreatedRoles[precreatedRolePath]
+        };
+      }
+    } else {
+      Annotations.of(scope)._addTrackableError(
+        lit`MissingPrecreatedRoleName`,
+        `IAM Role is being created at path "${precreatedRolePath}" and customizeRoles.preventSynthesis is enabled. You must provide a precreated role name in customizeRoles.precreatedRoles`
+      );
+    }
+    return {
+      enabled: true,
+      preventSynthesis: true
+    };
+  }
+  return { enabled: false };
+}
+var fs9, path10, import_constructs10, POLICY_SYNTHESIZER_ID, PolicySynthesizerTokenResolver, PolicySynthesizer, CUSTOMIZE_ROLES_CONTEXT_KEY;
+var init_customize_roles = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts"() {
+    "use strict";
+    fs9 = __toESM(require("fs"));
+    path10 = __toESM(require("path"));
+    import_constructs10 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_errors();
+    init_literal_string();
+    init_reference();
+    init_resolvable();
+    init_token();
+    POLICY_SYNTHESIZER_ID = "PolicySynthesizer";
+    PolicySynthesizerTokenResolver = class extends DefaultTokenResolver {
+      constructor(concat) {
+        super(concat);
+      }
+      /**
+       * PolicySynthesizer Token resolution
+       *
+       * Resolve the Token until the token can be resolved into
+       * "(Path/To/SomeResource.Arn)" format. Otherwise, recurse
+       * into whatever it returns,
+       */
+      resolveToken(t, context, postProcessor) {
+        try {
+          let resolved = t.resolve(context);
+          const resolvable = Tokenization.reverseString(resolved);
+          if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+            return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+          }
+          resolved = context.resolve(resolved);
+          resolved = postProcessor.postProcess(resolved, context);
+          return resolved;
+        } catch (e) {
+          let message = `Resolution error: ${e.message}.`;
+          if (t.creationStack && t.creationStack.length > 0) {
+            message += `
+Object creation stack:
+  at ${t.creationStack.join("\n  at ")}`;
+          }
+          e.message = message;
+          throw e;
+        }
+      }
+    };
+    PolicySynthesizer = class _PolicySynthesizer extends import_constructs10.Construct {
+      static getOrCreate(scope) {
+        const synthesizer = scope.node.root.node.tryFindChild(POLICY_SYNTHESIZER_ID);
+        if (synthesizer) {
+          return synthesizer;
+        }
+        return new _PolicySynthesizer(scope);
+      }
+      _scope;
+      roleReport = {};
+      managedPolicyReport = {};
+      constructor(scope) {
+        super(scope.node.root, POLICY_SYNTHESIZER_ID);
+        this._scope = scope;
+        attachCustomSynthesis(this, {
+          onSynthesize: (session) => {
+            const report = this.createJsonReport();
+            if (report.roles?.length > 0) {
+              const filePath = path10.join(session.outdir, "iam-policy-report");
+              fs9.writeFileSync(filePath + ".txt", this.createHumanReport(report));
+              fs9.writeFileSync(filePath + ".json", JSON.stringify(report, void 0, 2));
+            }
+          }
+        });
+      }
+      createJsonReport() {
+        return Object.entries(this.roleReport).reduce((acc, [key, value]) => {
+          const { policyArns, policyStatements } = this.renderManagedPoliciesForRole(key, value.managedPolicies);
+          acc = {
+            roles: [
+              ...acc.roles ?? [],
+              {
+                roleConstructPath: key,
+                roleName: value.missing ? "missing role" : value.roleName,
+                missing: value.missing,
+                assumeRolePolicy: this.resolveReferences(value.assumeRolePolicy),
+                managedPolicyArns: this.resolveReferences(policyArns),
+                managedPolicyStatements: this.resolveReferences(policyStatements),
+                identityPolicyStatements: this.resolveReferences(value.policyStatements)
+              }
+            ]
+          };
+          return acc;
+        }, {});
+      }
+      createHumanReport(report) {
+        return report.roles.map((role) => [
+          `<${role.missing ? "missing role" : role.roleName}> (${role.roleConstructPath})`,
+          "",
+          "AssumeRole Policy:",
+          ...this.toJsonString(role.assumeRolePolicy),
+          "",
+          "Managed Policy ARNs:",
+          ...this.toJsonString(role.managedPolicyArns),
+          "",
+          "Managed Policies Statements:",
+          this.toJsonString(role.managedPolicyStatements),
+          "",
+          "Identity Policy Statements:",
+          this.toJsonString(role.identityPolicyStatements)
+        ].join("\n")).join("\n\n");
+      }
+      /**
+       * Takes a value and returns a formatted JSON string
+       */
+      toJsonString(value) {
+        if (Array.isArray(value) && value.length === 0 || !value) {
+          return ["NONE"];
+        }
+        return [JSON.stringify({ values: value }.values, void 0, 2)];
+      }
+      /**
+       * IAM managed policies can be attached to a role using a couple different methods.
+       *
+       * 1. You can use an existing managed policy, i.e. ManagedPolicy.fromManagedPolicyName()
+       * 2. You can create a managed policy and attach the role, i.e.
+       *   new ManagedPolicy(scope, 'ManagedPolicy', { roles: [myRole] });
+       * 3. You can create a managed policy and attach it to the role, i.e.
+       *   const role = new Role(...);
+       *   role.addManagedPolicy(new ManagedPolicy(...));
+       *
+       * For 1, CDK is not creating the managed policy so we just need to report the ARN
+       * of the policy that needs to be attached to the role.
+       *
+       * For 2 & 3, CDK _is_ creating the managed policy so instead of reporting the name or ARN of the
+       * policy (that we prevented being created) we should instead report the policy statements
+       * that are part of that document. It doesn't really matter if the admins creating the roles then
+       * decide to use managed policies or inline policies, etc.
+       *
+       * There could be managed policies that are created and _not_ attached to any roles, in that case
+       * we do not report anything. That managed policy is not being created automatically by our constructs.
+       */
+      renderManagedPoliciesForRole(rolePath, managedPolicies) {
+        const policyStatements = [];
+        Object.values(this.managedPolicyReport).forEach((value) => {
+          if (value.roles?.includes(rolePath)) {
+            policyStatements.push(...value.policyStatements);
+          }
+        });
+        const policyArns = [];
+        managedPolicies.forEach((policy) => {
+          if (import_constructs10.Construct.isConstruct(policy)) {
+            if (this.managedPolicyReport.hasOwnProperty(policy.node.path)) {
+              policyStatements.push(...this.managedPolicyReport[policy.node.path].policyStatements);
+            } else {
+              policyArns.push(policy.managedPolicyArn);
+            }
+          } else {
+            policyArns.push(policy.managedPolicyArn);
+          }
+        });
+        return {
+          policyArns,
+          policyStatements
+        };
+      }
+      /**
+       * Resolve any references and replace with a more user friendly value. This is the value
+       * that will appear in the report, so instead of getting something like this (not very useful):
+       *
+       *     "Resource": {
+       *       "Fn::Join": [
+       *         "",
+       *         [
+       *           "arn:",
+       *           {
+       *             "Ref": "AWS::Partition"
+       *           },
+       *           ":iam::",
+       *           {
+       *             "Ref": "AWS::AccountId"
+       *           },
+       *           ":role/Role"
+       *         ]
+       *       ]
+       *     }
+       *
+       * We will instead get:
+       *
+       *     "Resource": "arn:(PARTITION):iam::(ACCOUNT):role/Role"
+       *
+       * Or if referencing a resource attribute
+       *
+       *     "Resource": {
+       *       "Fn::GetAtt": [
+       *         "SomeResource",
+       *         "Arn"
+       *       ]
+       *     }
+       *
+       * Becomes
+       *
+       *     "(Path/To/SomeResource.Arn)"
+       */
+      resolveReferences(ref) {
+        if (Array.isArray(ref) && ref.length === 0 || !ref) {
+          return [];
+        }
+        if (Array.isArray(ref)) {
+          return ref.map((r) => this.resolveReferences(r));
+        } else if (typeof ref === "object") {
+          return this.resolveJsonObject(ref);
+        }
+        const resolvable = Tokenization.reverseString(ref);
+        if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+          return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+        } else {
+          const resolvedTokens = resolvable.mapTokens({
+            mapToken: (r) => {
+              if (Reference.isReference(r)) {
+                return `(${r.target.node.path}.${r.displayName})`;
+              }
+              const resolved = Tokenization.resolve(r, {
+                scope: this._scope,
+                resolver: new PolicySynthesizerTokenResolver(new StringConcat())
+              });
+              if (typeof resolved === "object" && resolved.hasOwnProperty("Ref")) {
+                switch (resolved.Ref) {
+                  case "AWS::AccountId":
+                    return "(ACCOUNT)";
+                  case "AWS::Partition":
+                    return "(PARTITION)";
+                  case "AWS::Region":
+                    return "(REGION)";
+                  case "AWS::NoValue":
+                    return "(NOVALUE)";
+                  default:
+                    return r;
+                }
+              }
+              if (Token.isUnresolved(r) && typeof resolved === "string" && resolved) {
+                return resolved;
+              }
+              return r;
+            }
+          });
+          return resolvedTokens.join(new StringConcat());
+        }
+      }
+      resolveJsonObject(statement) {
+        const newStatement = statement;
+        for (const [key, value] of Object.entries(statement)) {
+          newStatement[key] = this.resolveReferences(value);
+        }
+        return newStatement;
+      }
+      /**
+       * Add an IAM role to the report
+       *
+       * @param rolePath the construct path of the role
+       * @param options the values associated with the role
+       */
+      addRole(rolePath, options) {
+        if (this.roleReport.hasOwnProperty(rolePath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryRole`, `IAM Policy Report already has an entry for role: ${rolePath}`, this);
+        }
+        this.roleReport[rolePath] = options;
+      }
+      /**
+       * Add an IAM Managed Policy to the report
+       *
+       * @param policyPath the construct path of the managed policy
+       * @param options the values associated with the managed policy
+       */
+      addManagedPolicy(policyPath, options) {
+        if (this.managedPolicyReport.hasOwnProperty(policyPath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryManaged`, `IAM Policy Report already has an entry for managed policy: ${policyPath}`, this);
+        }
+        this.managedPolicyReport[policyPath] = options;
+      }
+    };
+    CUSTOMIZE_ROLES_CONTEXT_KEY = "@aws-cdk/iam:customizeRoles";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts
+function replaceAll(s, search, replace) {
+  return s.split(search).join(replace);
+}
+function resolvedOr(x, def) {
+  return Token.isUnresolved(x) ? def : x;
+}
+var StringSpecializer, CFN_TOKENS;
+var init_string_specializer = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+    init_token();
+    StringSpecializer = class _StringSpecializer {
+      constructor(stack, qualifier) {
+        this.stack = stack;
+        this.qualifier = qualifier;
+      }
+      stack;
+      qualifier;
+      /**
+       * Validate that the given string does not contain tokens
+       */
+      static validateNoTokens(s, what) {
+        if (Token.isUnresolved(s)) {
+          throw new UnscopedValidationError(lit`TokensNotAllowed`, `${what} may not contain tokens; only the following literal placeholder strings are allowed: ` + [
+            "${Qualifier}",
+            (void 0).CURRENT_REGION,
+            (void 0).CURRENT_ACCOUNT,
+            (void 0).CURRENT_PARTITION
+          ].join(", ") + `. Got: ${s}`);
+        }
+      }
+      /**
+       * Function to replace placeholders in the input string as much as possible
+       *
+       * We replace:
+       * - ${Qualifier}: always
+       * - ${AWS::AccountId}, ${AWS::Region}: only if we have the actual values available
+       * - ${AWS::Partition}: never, since we never have the actual partition value.
+       */
+      specialize(s) {
+        s = replaceAll(s, "${Qualifier}", this.qualifier);
+        return (void 0).replace(s, {
+          region: resolvedOr(this.stack.region, (void 0).CURRENT_REGION),
+          accountId: resolvedOr(this.stack.account, (void 0).CURRENT_ACCOUNT),
+          partition: (void 0).CURRENT_PARTITION
+        });
+      }
+      /**
+       * Specialize the given string, make sure it doesn't contain tokens
+       */
+      specializeNoTokens(s, what) {
+        _StringSpecializer.validateNoTokens(s, what);
+        return this.specialize(s);
+      }
+      /**
+       * Specialize only the qualifier
+       */
+      qualifierOnly(s) {
+        return replaceAll(s, "${Qualifier}", this.qualifier);
+      }
+    };
+    CFN_TOKENS = [Aws.PARTITION, Aws.REGION, Aws.ACCOUNT_ID];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts
+var init_validate_all_props = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/strings.ts
+var init_strings = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/strings.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/feature-flag-report.ts
+function parseFeatureFlagInfo(flagName, info, root) {
+  const userValue = root.node.tryGetContext(flagName) ?? void 0;
+  let parsedFlag = {
+    userValue,
+    recommendedValue: info.recommendedValue,
+    explanation: info.summary,
+    // This is a historical accident. We used to copy all `unconfiguredBehavesLike` data
+    // into the feature flag report, but we only needed to copy the behavior of the current library version.
+    // In order to not break existing reports, we keep the same structure, but we baptize the 'v2' field as
+    // the canonical name of the "current version" field, even for v3, v4, etc.
+    // It looks weird, but it's safe & backwards compatible.
+    unconfiguredBehavesLike: info.unconfiguredBehavesLike?.[CURRENT_MV] ? {
+      v2: info.unconfiguredBehavesLike?.[CURRENT_MV]
+    } : void 0
+  };
+  return parsedFlag;
+}
+function generateFeatureFlagReport(builder, root) {
+  const featureFlags = {};
+  for (const [flagName, flagInfo] of Object.entries(FLAGS)) {
+    if (CURRENT_VERSION_EXPIRED_FLAGS.includes(flagName)) {
+      continue;
+    }
+    featureFlags[flagName] = parseFeatureFlagInfo(flagName, flagInfo, root);
+  }
+  builder.addArtifact("aws-cdk-lib/feature-flag-report", {
+    type: import_cloud_assembly_schema.ArtifactType.FEATURE_FLAG_REPORT,
+    properties: {
+      module: "aws-cdk-lib",
+      flags: featureFlags
+    }
+  });
+}
+var import_cloud_assembly_schema;
+var init_feature_flag_report = __esm({
+  "../../aws-cdk-lib/core/lib/private/feature-flag-report.ts"() {
+    "use strict";
+    import_cloud_assembly_schema = __toESM(require_lib2());
+    init_features();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-condition.ts
+var CfnCondition;
+var init_cfn_condition = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-condition.ts"() {
+    "use strict";
+    init_cfn_element();
+    CfnCondition = class extends CfnElement {
+      /**
+       * The condition statement.
+       */
+      expression;
+      /**
+       * Build a new condition. The condition must be constructed with a condition token,
+       * that the condition is based on.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.expression = props && props.expression;
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.expression) {
+          return {};
+        }
+        return {
+          Conditions: {
+            [this.logicalId]: this.expression
+          }
+        };
+      }
+      /**
+       * Synthesizes the condition.
+       */
+      resolve(_context) {
+        return { Condition: this.logicalId };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/metadata-resource.ts
+function filteredConstructAnalyticsFromStack(scope) {
+  const includeAdditionalTelemetry = FeatureFlags.of(scope).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false;
+  const constructAnalytics = constructAnalyticsFromScope(scope);
+  if (includeAdditionalTelemetry) {
+    return constructAnalytics;
+  }
+  return constructAnalytics.map(retainAlwaysReportedAnalytics);
+  function retainAlwaysReportedAnalytics(analytics) {
+    return {
+      fqn: analytics.fqn,
+      version: analytics.version,
+      metadata: analytics.metadata
+    };
+  }
+}
+function makeCdkMetadataAvailableCondition() {
+  return Fn.conditionOr(...RegionInfo.regions.filter((ri) => ri.cdkMetadataResourceAvailable).map((ri) => Fn.conditionEquals(Aws.REGION, ri.name)));
+}
+function formatAnalytics(infos) {
+  const trie = new Trie();
+  infos.forEach((info) => insertFqnInTrie(`${info.version}!${info.fqn}`, trie, [info.metadata, info.additionalTelemetry].flatMap((a) => a ?? [])));
+  const plaintextEncodedConstructs = prefixEncodeTrie(trie);
+  const compressedConstructsBuffer = zlib.gzipSync(Buffer.from(plaintextEncodedConstructs));
+  setGzipOperatingSystemToUnknown(compressedConstructsBuffer);
+  const compressedConstructs = compressedConstructsBuffer.toString("base64");
+  const analyticsString = `v2:deflate64:${compressedConstructs}`;
+  if (process.env.CDK_CONTEXT_JSON && JSON.parse(process.env.CDK_CONTEXT_JSON)["cdk-migrate"]) {
+    const compressedAppInfoBuffer = zlib.gzipSync(Buffer.from("cdk-migrate"));
+    const compressedAppInfo = compressedAppInfoBuffer.toString("base64");
+    analyticsString.concat(":", compressedAppInfo);
+  }
+  return analyticsString;
+}
+function insertFqnInTrie(fqn, trie, metadata) {
+  for (const fqnPart of fqn.replace(/[^a-z0-9]/gi, "$& ").split(" ")) {
+    const nextLevelTreeRef = trie.get(fqnPart) ?? new Trie();
+    trie.set(fqnPart, nextLevelTreeRef);
+    trie = nextLevelTreeRef;
+  }
+  if (metadata?.length) {
+    trie.set(JSON.stringify(metadata), new Trie());
+  }
+  return trie;
+}
+function prefixEncodeTrie(trie) {
+  let prefixEncoded = "";
+  let isFirstEntryAtLevel = true;
+  [...trie.entries()].forEach(([key, value]) => {
+    if (!isFirstEntryAtLevel) {
+      prefixEncoded += ",";
+    }
+    isFirstEntryAtLevel = false;
+    prefixEncoded += key;
+    if (value.size > 1) {
+      prefixEncoded += "{";
+      prefixEncoded += prefixEncodeTrie(value);
+      prefixEncoded += "}";
+    } else {
+      prefixEncoded += prefixEncodeTrie(value);
+    }
+  });
+  return prefixEncoded;
+}
+function setGzipOperatingSystemToUnknown(gzipBuffer) {
+  if (gzipBuffer[0] !== 31 || gzipBuffer[1] !== 139) {
+    throw new AssumptionError(lit`ExpectingGzipBufferMust`, "Expecting a gzip buffer (must start with 0x1f8b)");
+  }
+  gzipBuffer[9] = 255;
+}
+var zlib, import_constructs11, MetadataResource, Trie;
+var init_metadata_resource2 = __esm({
+  "../../aws-cdk-lib/core/lib/private/metadata-resource.ts"() {
+    "use strict";
+    zlib = __toESM(require("zlib"));
+    import_constructs11 = __toESM(require_lib4());
+    init_cx_api();
+    init_region_info2();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_token();
+    init_literal_string();
+    init_stack_metadata();
+    MetadataResource = class extends import_constructs11.Construct {
+      constructor(scope, id) {
+        super(scope, id);
+        const metadataServiceExists = Token.isUnresolved(scope.region) || RegionInfo.get(scope.region).cdkMetadataResourceAvailable;
+        if (metadataServiceExists) {
+          const constructAnalytics = filteredConstructAnalyticsFromStack(scope);
+          const resource = new CfnResource(this, "Default", {
+            type: "AWS::CDK::Metadata",
+            properties: {
+              Analytics: Lazy.string({ produce: () => formatAnalytics(constructAnalytics) })
+            }
+          });
+          if (Token.isUnresolved(scope.region)) {
+            const condition = new CfnCondition(this, "Condition", {
+              expression: makeCdkMetadataAvailableCondition()
+            });
+            condition.overrideLogicalId("CDKMetadataAvailable");
+            resource.cfnOptions.condition = condition;
+          }
+        }
+      }
+    };
+    Trie = class extends Map {
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-output.ts
+var CfnOutput;
+var init_cfn_output = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-output.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_cfn_fn();
+    init_lazy();
+    init_token();
+    init_errors();
+    init_literal_string();
+    init_core_construct_finders();
+    CfnOutput = class extends CfnElement {
+      _description;
+      _condition;
+      _key;
+      _value;
+      _exportName;
+      /**
+       * Creates a CfnOutput value for this stack.
+       * @param scope The parent construct.
+       * @param props CfnOutput properties.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (props.value === void 0) {
+          throw new ValidationError(lit`MissingValueCloudFormationOutput`, `Missing value for CloudFormation output at path "${this.node.path}"`, this);
+        } else if (Array.isArray(props.value)) {
+          throw new ValidationError(lit`CloudformationOutputGivenString`, `CloudFormation output was given a string list instead of a string at path "${this.node.path}"`, this);
+        }
+        this._description = props.description;
+        this._key = props.key;
+        this._value = props.value;
+        this._condition = props.condition;
+        this._exportName = props.exportName;
+        this.node.addValidation({ validate: () => this.validateOutput() });
+      }
+      /**
+       * A String type that describes the output value.
+       * The description can be a maximum of 4 K in length.
+       *
+       * @default - No description.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(description) {
+        this._description = description;
+      }
+      /**
+       * The value of the property returned by the aws cloudformation describe-stacks command.
+       * The value of an output can include literals, parameter references, pseudo-parameters,
+       * a mapping value, or intrinsic functions.
+       */
+      get value() {
+        return this._value;
+      }
+      set value(value) {
+        this._value = value;
+      }
+      /**
+       * A condition to associate with this output value. If the condition evaluates
+       * to `false`, this output value will not be included in the stack.
+       *
+       * @default - No condition is associated with the output.
+       */
+      get condition() {
+        return this._condition;
+      }
+      set condition(condition) {
+        this._condition = condition;
+      }
+      /**
+       * The name used to export the value of this output across stacks.
+       *
+       * To use the value in another stack, pass the value of
+       * `output.importValue` to it.
+       *
+       * @default - the output is not exported
+       */
+      get exportName() {
+        return this._exportName;
+      }
+      set exportName(exportName) {
+        this._exportName = exportName;
+      }
+      /**
+       * Return the `Fn.importValue` expression to import this value into another stack
+       *
+       * The returned value should not be used in the same stack, but in a
+       * different one. It must be deployed to the same environment, as
+       * CloudFormation exports can only be imported in the same Region and
+       * account.
+       *
+       * The is no automatic registration of dependencies between stacks when using
+       * this mechanism, so you should make sure to deploy them in the right order
+       * yourself.
+       *
+       * You can use this mechanism to share values across Stacks in different
+       * Stages. If you intend to share the value to another Stack inside the same
+       * Stage, the automatic cross-stack referencing mechanism is more convenient.
+       */
+      get importValue() {
+        return Fn.importValue(Lazy.uncachedString({
+          produce: (ctx) => {
+            if (stackOf(ctx.scope) === this.stack) {
+              throw new ValidationError(lit`ImportvaluePropertyShouldOnly`, `'importValue' property of '${this.node.path}' should only be used in a different Stack`, this);
+            }
+            if (!this._exportName) {
+              throw new ValidationError(lit`ExportnameCfnoutputOrderOutput`, `Add an exportName to the CfnOutput at '${this.node.path}' in order to use 'output.importValue'`, this);
+            }
+            return this._exportName;
+          }
+        }));
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Outputs: {
+            [this._key ?? this.logicalId]: {
+              Description: this._description,
+              Value: this._value,
+              Export: this._exportName != null ? { Name: this._exportName } : void 0,
+              Condition: this._condition ? this._condition.logicalId : void 0
+            }
+          }
+        };
+      }
+      validateOutput() {
+        const errors = [];
+        if (this._exportName !== void 0 && !Token.isUnresolved(this._exportName)) {
+          if (this._exportName.length === 0) {
+            errors.push("Export name cannot be empty");
+          }
+          if (this._exportName.length > 255) {
+            errors.push(`Export name cannot exceed 255 characters (got ${this._exportName.length} characters)`);
+          }
+          if (!/^[A-Za-z0-9-:]*$/.test(this._exportName)) {
+            errors.push(`Export name must only include alphanumeric characters, colons, or hyphens (got '${this._exportName}')`);
+          }
+        }
+        return errors;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-parameter.ts
+function isListType(type) {
+  return type.indexOf("List<") >= 0 || type.indexOf("CommaDelimitedList") >= 0;
+}
+function isNumberType(type) {
+  return type === "Number";
+}
+function isStringType(type) {
+  return !isListType(type) && !isNumberType(type);
+}
+function typeToTypeHint(type) {
+  if (isListType(type)) {
+    return "string-list" /* STRING_LIST */;
+  } else if (isNumberType(type)) {
+    return "number" /* NUMBER */;
+  }
+  return "string" /* STRING */;
+}
+var CfnParameter;
+var init_cfn_parameter = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-parameter.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_errors();
+    init_cfn_reference();
+    init_literal_string();
+    init_token();
+    init_type_hints();
+    CfnParameter = class extends CfnElement {
+      _type;
+      _default;
+      _allowedPattern;
+      _allowedValues;
+      _constraintDescription;
+      _description;
+      _maxLength;
+      _maxValue;
+      _minLength;
+      _minValue;
+      _noEcho;
+      typeHint;
+      /**
+       * Creates a parameter construct.
+       * Note that the name (logical ID) of the parameter will derive from its `coname` and location
+       * within the stack. Therefore, it is recommended that parameters are defined at the stack level.
+       *
+       * @param scope The parent construct.
+       * @param props The parameter properties.
+       */
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this._type = props.type || "String";
+        this._default = props.default;
+        this._allowedPattern = props.allowedPattern;
+        this._allowedValues = props.allowedValues;
+        this._constraintDescription = props.constraintDescription;
+        this._description = props.description;
+        this._maxLength = props.maxLength;
+        this._maxValue = props.maxValue;
+        this._minLength = props.minLength;
+        this._minValue = props.minValue;
+        this._noEcho = props.noEcho;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * The data type for the parameter (DataType).
+       *
+       * @default String
+       */
+      get type() {
+        return this._type;
+      }
+      set type(type) {
+        this._type = type;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * A value of the appropriate type for the template to use if no value is specified
+       * when a stack is created. If you define constraints for the parameter, you must specify
+       * a value that adheres to those constraints.
+       *
+       * @default - No default value for parameter.
+       */
+      get default() {
+        return this._default;
+      }
+      set default(value) {
+        this._default = value;
+      }
+      /**
+       * A regular expression that represents the patterns to allow for String types.
+       *
+       * @default - No constraints on patterns allowed for parameter.
+       */
+      get allowedPattern() {
+        return this._allowedPattern;
+      }
+      set allowedPattern(pattern) {
+        this._allowedPattern = pattern;
+      }
+      /**
+       * An array containing the list of values allowed for the parameter.
+       *
+       * @default - No constraints on values allowed for parameter.
+       */
+      get allowedValues() {
+        return this._allowedValues;
+      }
+      set allowedValues(values) {
+        this._allowedValues = values;
+      }
+      /**
+       * A string that explains a constraint when the constraint is violated.
+       * For example, without a constraint description, a parameter that has an allowed
+       * pattern of [A-Za-z0-9]+ displays the following error message when the user specifies
+       * an invalid value:
+       *
+       * @default - No description with customized error message when user specifies invalid values.
+       */
+      get constraintDescription() {
+        return this._constraintDescription;
+      }
+      set constraintDescription(desc) {
+        this._constraintDescription = desc;
+      }
+      /**
+       * A string of up to 4000 characters that describes the parameter.
+       *
+       * @default - No description for the parameter.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(desc) {
+        this._description = desc;
+      }
+      /**
+       * An integer value that determines the largest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get maxLength() {
+        return this._maxLength;
+      }
+      set maxLength(len) {
+        this._maxLength = len;
+      }
+      /**
+       * An integer value that determines the smallest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get minLength() {
+        return this._minLength;
+      }
+      set minLength(len) {
+        this._minLength = len;
+      }
+      /**
+       * A numeric value that determines the largest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get maxValue() {
+        return this._maxValue;
+      }
+      set maxValue(len) {
+        this._maxValue = len;
+      }
+      /**
+       * A numeric value that determines the smallest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get minValue() {
+        return this._minValue;
+      }
+      set minValue(len) {
+        this._minValue = len;
+      }
+      /**
+       * Indicates if this parameter is configured with "NoEcho" enabled.
+       */
+      get noEcho() {
+        return !!this._noEcho;
+      }
+      set noEcho(echo) {
+        this._noEcho = echo;
+      }
+      /**
+       * The parameter value as a Token
+       */
+      get value() {
+        return CfnReference.for(this, "Ref", void 0, this.typeHint);
+      }
+      /**
+       * The parameter value, if it represents a string.
+       */
+      get valueAsString() {
+        if (!isStringType(this.type) && !isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string or number type`, this);
+        }
+        return Token.asString(this.value);
+      }
+      /**
+       * The parameter value, if it represents a string list.
+       */
+      get valueAsList() {
+        if (!isListType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string list type`, this);
+        }
+        return Token.asList(this.value);
+      }
+      /**
+       * The parameter value, if it represents a number.
+       */
+      get valueAsNumber() {
+        if (!isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a number type`, this);
+        }
+        return Token.asNumber(this.value);
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Parameters: {
+            [this.logicalId]: {
+              Type: this.type,
+              Default: this.default,
+              AllowedPattern: this.allowedPattern,
+              AllowedValues: this.allowedValues,
+              ConstraintDescription: this.constraintDescription,
+              Description: this.description,
+              MaxLength: this.maxLength,
+              MaxValue: this.maxValue,
+              MinLength: this.minLength,
+              MinValue: this.minValue,
+              NoEcho: this._noEcho
+            }
+          }
+        };
+      }
+      resolve(_context) {
+        return this.value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts
+var SSM_EXPORT_PATH_PREFIX;
+var init_types2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts"() {
+    "use strict";
+    SSM_EXPORT_PATH_PREFIX = "cdk/exports/";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts
+var path11, CrossRegionSsmReaderProvider;
+var init_cross_region_ssm_reader_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts"() {
+    "use strict";
+    path11 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmReaderProvider = class _CrossRegionSsmReaderProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmReaderProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path11.join(__dirname, "cross-region-ssm-reader-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts
+var import_constructs12, ExportReader;
+var init_export_reader_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts"() {
+    "use strict";
+    import_constructs12 = __toESM(require_lib4());
+    init_types2();
+    init_cfn_resource();
+    init_custom_resource();
+    init_cross_region_ssm_reader_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    ExportReader = class _ExportReader extends import_constructs12.Construct {
+      static getOrCreate(scope, uniqueId, _props = {}) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportReader(stack, uniqueId);
+      }
+      importParameters = Box.fromMap();
+      customResource;
+      constructor(scope, id, _props = {}) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const resourceType = "Custom::CrossRegionExportReader";
+        const serviceToken = CrossRegionSsmReaderProvider.getOrCreate(this, resourceType, {
+          policyStatements: [{
+            Effect: "Allow",
+            Resource: stack.formatArn({
+              service: "ssm",
+              resource: "parameter",
+              resourceName: `${SSM_EXPORT_PATH_PREFIX}${stack.stackName}/*`
+            }),
+            Action: [
+              "ssm:AddTagsToResource",
+              "ssm:RemoveTagsFromResource",
+              "ssm:GetParameters"
+            ]
+          }]
+        });
+        const properties = {
+          region: stack.region,
+          prefix: stack.stackName,
+          imports: this.importParameters.derive((m) => Object.fromEntries(m))
+        };
+        this.customResource = new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken,
+          properties: {
+            ReaderProps: properties
+          }
+        });
+      }
+      /**
+       * This is the only way to add a dependency on a custom resource currently
+       */
+      addDependency(resource) {
+        const customResource = this.customResource.node.tryFindChild("Default");
+        if (customResource && CfnResource.isCfnResource(customResource)) {
+          customResource.addDependsOn(resource);
+        }
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exports map of unique name associated with the export to SSM Dynamic reference
+       */
+      importValue(name, value) {
+        this.importParameters.put(name, value.toString());
+        return this.customResource.getAtt(name);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts
+var CfnDynamicReference;
+var init_cfn_dynamic_reference = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts"() {
+    "use strict";
+    init_intrinsic();
+    CfnDynamicReference = class extends Intrinsic {
+      constructor(service, key) {
+        super("{{resolve:" + service + ":" + key + "}}");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts
+var path12, CrossRegionSsmWriterProvider;
+var init_cross_region_ssm_writer_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts"() {
+    "use strict";
+    path12 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmWriterProvider = class _CrossRegionSsmWriterProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmWriterProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path12.join(__dirname, "cross-region-ssm-writer-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts
+var import_constructs13, CRProvider, ExportWriter;
+var init_export_writer_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts"() {
+    "use strict";
+    import_constructs13 = __toESM(require_lib4());
+    init_export_reader_provider();
+    init_types2();
+    init_cfn_dynamic_reference();
+    init_custom_resource();
+    init_cross_region_ssm_writer_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_uniqueid();
+    init_token();
+    CRProvider = class _CRProvider extends CrossRegionSsmWriterProvider {
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = stackOf(scope);
+        const provider = stack.node.tryFindChild(id) ?? new _CRProvider(stack, id, props);
+        return provider;
+      }
+      resourceArns = Box.fromSet();
+      constructor(scope, id, props) {
+        super(scope, id, props);
+        this.addToRolePolicy({
+          Effect: "Allow",
+          Resource: this.resourceArns.derive(Array.from),
+          Action: [
+            "ssm:DeleteParameters",
+            "ssm:ListTagsForResource",
+            "ssm:GetParameters",
+            "ssm:PutParameter"
+          ]
+        });
+      }
+      /**
+       * Add a resource ARN to the existing policy statement
+       */
+      addResourceArn(arn) {
+        this.resourceArns.add(arn);
+      }
+    };
+    ExportWriter = class _ExportWriter extends import_constructs13.Construct {
+      static getOrCreate(scope, uniqueId, props) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportWriter(stack, uniqueId, {
+          region: props.region
+        });
+      }
+      _references = Box.fromMap();
+      provider;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const region = props.region ?? stack.region;
+        const resourceType = "Custom::CrossRegionExportWriter";
+        this.provider = CRProvider.getOrCreateProvider(this, resourceType);
+        this.addRegionToPolicy(region);
+        const properties = {
+          region,
+          exports: this._references.derive((m) => Object.fromEntries(m))
+        };
+        new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken: this.provider.serviceToken,
+          properties: {
+            WriterProps: properties
+          }
+        });
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exportName the unique name associated with the export
+       * @param reference the value that will be exported
+       * @returns a reference to the reader custom resource
+       */
+      exportValue(exportName, reference, importStack) {
+        const parameterName = this.registerExport(exportName, reference, importStack);
+        const ref = new CfnDynamicReference("ssm" /* SSM */, parameterName);
+        return this.addToExportReader(parameterName, ref, importStack);
+      }
+      /**
+       * Register a reference with the writer without creating an ExportReader in the consumer stack.
+       * Used during the "both" transitional state where the producer still writes to SSM
+       * but the consumer reads via Fn::GetStackOutput instead of the ExportReader.
+       */
+      exportValueWriteOnly(exportName, reference, importStack) {
+        this.registerExport(exportName, reference, importStack);
+      }
+      registerExport(exportName, reference, importStack) {
+        const stack = stackOf(this);
+        const parameterName = `/${SSM_EXPORT_PATH_PREFIX}${exportName}`;
+        this._references.put(parameterName, stack.resolve(reference.toString()));
+        this.addRegionToPolicy(importStack.region);
+        return parameterName;
+      }
+      /**
+       * Add a resource arn for the consuming stack region
+       * Each writer could be writing to multiple regions and needs
+       * permissions to each region.
+       *
+       * If the region is not resolved then do not add anything.
+       */
+      addRegionToPolicy(region) {
+        if (!Token.isUnresolved(region)) {
+          this.provider.addResourceArn(stackOf(this).formatArn({
+            service: "ssm",
+            resource: "parameter",
+            region,
+            resourceName: `${SSM_EXPORT_PATH_PREFIX}*`
+          }));
+        }
+      }
+      /**
+       * Add the export to the export reader which is created in the importing stack
+       */
+      addToExportReader(exportName, exportValueRef, importStack) {
+        const readerConstructName = makeUniqueId(["ExportsReader"]);
+        const exportReader = ExportReader.getOrCreate(importStack.nestedStackParent ?? importStack, readerConstructName);
+        this.addRegionToPolicy(importStack.region);
+        return exportReader.importValue(exportName, exportValueRef);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/linked-queue.ts
+var LinkedQueue;
+var init_linked_queue = __esm({
+  "../../aws-cdk-lib/core/lib/private/linked-queue.ts"() {
+    "use strict";
+    LinkedQueue = class {
+      head;
+      last;
+      constructor(items) {
+        if (items) {
+          for (const x of items) {
+            this.push(x);
+          }
+        }
+      }
+      push(value) {
+        const node = { value };
+        if (this.head && this.last) {
+          this.last.next = node;
+          this.last = node;
+        } else {
+          this.head = node;
+          this.last = node;
+        }
+      }
+      shift() {
+        if (!this.head) {
+          return void 0;
+        }
+        const ret = this.head.value;
+        this.head = this.head.next;
+        if (!this.head) {
+          this.last = void 0;
+        }
+        return ret;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/construct-iteration.ts
+function* iterateDfsPreorder(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    stack.push(...next.node.children.reverse());
+    yield next;
+    next = stack.pop();
+  }
+}
+function* iterateTemplateCfnResources(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    if (NESTED_STACK_TYPE.isMarked(next)) {
+      if (next.nestedStackResource) {
+        yield next.nestedStackResource;
+      }
+    } else if (STACK_TYPE.isMarked(next) || STAGE_TYPE.isMarked(next)) {
+    } else {
+      if (isCfnResource(next)) {
+        yield next;
+      }
+      stack.push(...next.node.children.reverse());
+    }
+    next = stack.pop();
+  }
+}
+function* iterateDfsPostorder(root) {
+  const stack = [{ visit: root }];
+  let next = stack.pop();
+  while (next) {
+    if ("yield" in next) {
+      yield next.yield;
+    } else {
+      stack.push({ yield: next.visit });
+      stack.push(...next.visit.node.children.reverse().map((visit2) => ({ visit: visit2 })));
+    }
+    next = stack.pop();
+  }
+}
+function* iterateBfs(root) {
+  const queue = new LinkedQueue([{ construct: root, parent: void 0 }]);
+  let next = queue.shift();
+  while (next) {
+    for (const child of next.construct.node.children) {
+      queue.push({ construct: child, parent: next.construct });
+    }
+    yield next;
+    next = queue.shift();
+  }
+}
+var init_construct_iteration = __esm({
+  "../../aws-cdk-lib/core/lib/private/construct-iteration.ts"() {
+    "use strict";
+    init_core_construct_finders();
+    init_linked_queue();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts
+var ReferenceStrength;
+var init_cross_stack_reference_strength = __esm({
+  "../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_cx_api();
+    init_literal_string();
+    ReferenceStrength = /* @__PURE__ */ ((ReferenceStrength2) => {
+      ReferenceStrength2["STRONG"] = "strong";
+      ReferenceStrength2["WEAK"] = "weak";
+      ReferenceStrength2["BOTH"] = "both";
+      return ReferenceStrength2;
+    })(ReferenceStrength || {});
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/refs.ts
+function crossStackReferenceStrength(scope) {
+  const value = scope.node.tryGetContext(DEFAULT_CROSS_STACK_REFERENCES);
+  if (value === void 0 || value === null) {
+    return void 0;
+  }
+  if (Object.values(ReferenceStrength).includes(value)) {
+    return value;
+  }
+  throw new UnscopedValidationError(
+    lit`InvalidReferenceStrength`,
+    `Invalid value for ${DEFAULT_CROSS_STACK_REFERENCES}: "${value}". Must be "strong", "weak", or "both".`
+  );
+}
+function resolveReferences(scope) {
+  resolveReferencesInElements(iterateDfsPreorder(scope));
+}
+function resolveReferencesInElements(elements) {
+  const { refs, overrides } = findAllReferences(elements);
+  for (const { source, value } of refs) {
+    const consumer = stackOf(source);
+    if (!value.hasValueForStack(consumer)) {
+      const resolved = resolveValue(consumer, value);
+      value.assignValueForStack(consumer, resolved);
+    }
+  }
+  for (const { source, override } of overrides) {
+    const consumer = stackOf(source);
+    const resolved = resolveValue(consumer, override.reference, override.strength);
+    override.assignValue(resolved);
+  }
+}
+function resolveValue(consumer, reference, strengthOverride) {
+  const producer = stackOf(reference.target);
+  const producerAccount = !Token.isUnresolved(producer.account) ? producer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const producerRegion = !Token.isUnresolved(producer.region) ? producer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const consumerAccount = !Token.isUnresolved(consumer.account) ? consumer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const consumerRegion = !Token.isUnresolved(consumer.region) ? consumer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const resourceStrength = CfnResource.isCfnResource(reference.target) ? reference.target._crossStackReferenceStrengthOverride : void 0;
+  const strength = strengthOverride ?? resourceStrength ?? crossStackReferenceStrength(consumer) ?? "strong";
+  if (producer === consumer) {
+    return reference;
+  }
+  if (producer.node.root !== consumer.node.root) {
+    throw new UnscopedValidationError(lit`CannotReferenceAcrossApps`, "Cannot reference across apps. Consuming and producing stacks must be defined within the same CDK app.");
+  }
+  if (consumer.nestedStackParent && isNested(consumer, producer)) {
+    const parameterValue = resolveValue(consumer.nestedStackParent, reference);
+    return createNestedStackParameter(consumer, reference, parameterValue);
+  }
+  if (producer.nested) {
+    const outputValue = createNestedStackOutput(producer, reference);
+    const resolvedValue = resolveValue(consumer, outputValue);
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(resolvedValue)));
+    } else {
+      return resolvedValue;
+    }
+  }
+  const appRoot = consumer.node.root;
+  if (!appRoot[WEAK_REFS_WARNING_EMITTED]) {
+    const contextStrength = crossStackReferenceStrength(consumer);
+    if (contextStrength === void 0) {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesDefaultStrong",
+        `No cross-stack-reference strength configured, defaulting to "strong". We recommend you set feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" to "both", then deploy everywhere, then set it to "weak". Alternatively, set it to "strong" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    } else if (contextStrength === "both") {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesBothTransitional",
+        `Feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" currently set to "both". This is a transitory state. After you have finished deploying this application everywhere, set it to "weak". (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    }
+  }
+  if (producerAccount !== consumerAccount) {
+    if (strength === "strong") {
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossAccountRefsAreAlwaysWeak",
+        `Strong references requested, but cross-account references can only be weak. Acknowledge this warning or set "${DEFAULT_CROSS_STACK_REFERENCES}" to "weak" to remove this message.`
+      );
+    }
+    if (consumer.synthesizer.cloudFormationExecutionRole == null) {
+      throw new UnscopedValidationError(
+        lit`NoCfnExecutionRoleForCrossAccountRefs`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Could not find a CloudFormation execution role for the consumer stack. Use a stack synthesizer that provides a CloudFormation execution role, such as DefaultStackSynthesizer (that uses the role from the bootstrap stack), or one that you can customize, such as BootstraplessSynthesizer.`
+      );
+    }
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    const producerStackArn = stackOf(reference.target).formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      consumerRoleArn: consumer.synthesizer.cloudFormationExecutionRole,
+      producerAccount,
+      producerRegion,
+      producerStackArn
+    });
+  }
+  if (producerRegion !== consumerRegion) {
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    consumer.addStackDependency(
+      producer,
+      `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+    );
+    if (strength === "strong") {
+      return createCrossRegionImportValue(reference, consumer);
+    }
+    if (strength === "both") {
+      createCrossRegionExportOnly(reference, consumer);
+    }
+    const producerStackArn = producer.formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      producerStackArn
+    });
+  }
+  consumer.addStackDependency(
+    producer,
+    `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+  );
+  if (strength === "strong") {
+    return createImportValue(reference);
+  }
+  if (strength === "both") {
+    createImportValue(reference);
+  }
+  return createGetStackOutput(reference, {});
+}
+function renderReference(ref) {
+  return `{${ref.target.node.path}[${ref.displayName}]}`;
+}
+function findAllReferences(elements) {
+  const refs = new Array();
+  const overrides = new Array();
+  for (const consumer of elements) {
+    if (!CfnElement.isCfnElement(consumer)) {
+      continue;
+    }
+    try {
+      const tokens = findTokens(consumer, () => consumer._toCloudFormation());
+      for (const token of tokens) {
+        if (CustomCoupledReference.isCustomCoupledReference(token)) {
+          overrides.push({ source: consumer, override: token });
+        } else if (CfnReference.isCfnReference(token)) {
+          refs.push({ source: consumer, value: token });
+        }
+      }
+    } catch (e) {
+      if (e.type === "CfnSynthesisError") {
+        continue;
+      }
+      throw e;
+    }
+  }
+  return { refs, overrides };
+}
+function createImportValue(reference) {
+  const exportingStack = stackOf(reference.target);
+  let importExpr;
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    importExpr = exportingStack.exportStringListValue(reference);
+    return Tokenization.reverseList(importExpr);
+  }
+  importExpr = exportingStack.exportValue(reference);
+  return Tokenization.reverseCompleteString(importExpr);
+}
+function getOrCreateExportWriter(reference, importStack) {
+  const referenceStack = stackOf(reference.target);
+  const exportingStack = referenceStack.nestedStackParent ?? referenceStack;
+  const exportable = getExportable(exportingStack, reference);
+  const id = JSON.stringify(exportingStack.resolve(exportable));
+  const exportName = generateExportName(importStack, reference, id);
+  if (Token.isUnresolved(exportName)) {
+    throw new UnscopedValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(exportingStack.resolve(exportName))}`);
+  }
+  const writerConstructName = makeUniqueId(["ExportsWriter", importStack.region]);
+  const exportWriter = ExportWriter.getOrCreate(exportingStack, writerConstructName, {
+    region: importStack.region
+  });
+  return { exportWriter, exportName };
+}
+function createCrossRegionImportValue(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  const exported = exportWriter.exportValue(exportName, reference, importStack);
+  if (importStack.nestedStackParent) {
+    return createNestedStackParameter(importStack, exported, exported);
+  }
+  return exported;
+}
+function createCrossRegionExportOnly(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  exportWriter.exportValueWriteOnly(exportName, reference, importStack);
+}
+function generateExportName(importStack, reference, id) {
+  const referenceStack = stackOf(reference.target);
+  const components = [
+    referenceStack.stackName ?? "",
+    referenceStack.region,
+    id
+  ];
+  const prefix = `${importStack.nestedStackParent?.stackName ?? importStack.stackName}/`;
+  const localPart = makeUniqueId(components);
+  const maxLength = 900;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function createGetStackOutputRole(scope, id, props) {
+  const consumers = /* @__PURE__ */ new Set([props.consumerRoleArn]);
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Role",
+    properties: {
+      AssumeRolePolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Principal: {
+              AWS: Lazy.any({
+                produce: () => {
+                  const arns = [...consumers].map((arn) => ({ "Fn::Sub": arn }));
+                  return arns.length === 1 ? arns[0] : arns;
+                }
+              })
+            },
+            Action: [
+              "sts:AssumeRole"
+            ]
+          }
+        ]
+      }
+    }
+  });
+  ROLE_CONSUMERS.set(resource, consumers);
+  const roleName = Names.uniqueResourceName(resource, {
+    maxLength: 64
+  });
+  resource.addPropertyOverride("RoleName", roleName);
+  const roleArn = stackOf(scope).formatArn({
+    service: "iam",
+    resource: "role",
+    resourceName: roleName,
+    account: props.producerAccount,
+    arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+    region: ""
+  });
+  return { resource, roleRef: { roleArn, roleName } };
+}
+function addConsumerToRole(roleResource, consumerRoleArn) {
+  const consumers = ROLE_CONSUMERS.get(roleResource);
+  if (consumers) {
+    consumers.add(consumerRoleArn);
+  }
+}
+function createGetStackOutputPolicy(scope, id, props) {
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Policy",
+    properties: {
+      Roles: [Fn.ref(props.role.logicalId)],
+      PolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Action: "cloudformation:DescribeStacks",
+            Resource: props.producerStackArn
+          }
+        ]
+      }
+    }
+  });
+  const policyName = Names.uniqueResourceName(resource, {
+    maxLength: 128
+  });
+  resource.addPropertyOverride("PolicyName", policyName);
+  return { resource, policyRef: { policyId: policyName } };
+}
+function createGetStackOutput(reference, options = {}) {
+  const exportingStack = stackOf(reference.target);
+  const resolved = JSON.stringify(exportingStack.resolve(reference));
+  const outputId = "Output" + resolved;
+  const roleId = "GetStackOutputRole";
+  const policyId = "GetStackOutputPolicy";
+  function createScope(stack) {
+    const scopeName = "Publish";
+    let scope2 = stack.node.tryFindChild(scopeName);
+    if (scope2 === void 0) {
+      scope2 = new import_constructs14.Construct(stack, scopeName);
+    }
+    return scope2;
+  }
+  const scope = createScope(exportingStack);
+  let output = scope.node.tryFindChild(outputId);
+  if (output == null) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(scope, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(scope, outputId, {
+        value: Token.asString(reference)
+      });
+    }
+  }
+  let roleArn = void 0;
+  if (options.consumerRoleArn) {
+    let roleResource = scope.node.tryFindChild(roleId);
+    if (roleResource == null) {
+      const { resource, roleRef } = createGetStackOutputRole(scope, roleId, {
+        consumerRoleArn: options.consumerRoleArn,
+        producerAccount: options.producerAccount
+      });
+      roleResource = resource;
+      roleArn = roleRef.roleArn;
+    } else {
+      addConsumerToRole(roleResource, options.consumerRoleArn);
+      const roleName = Names.uniqueResourceName(roleResource, { maxLength: 64 });
+      roleArn = exportingStack.formatArn({
+        service: "iam",
+        resource: "role",
+        resourceName: roleName,
+        account: options.producerAccount,
+        arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+        region: ""
+      });
+    }
+    let policy = scope.node.tryFindChild(policyId);
+    if (policy == null) {
+      createGetStackOutputPolicy(scope, policyId, {
+        role: roleResource,
+        producerStackArn: options.producerStackArn
+      });
+    }
+  }
+  const getStackOutput = Fn.getStackOutput(exportingStack.stackName, output.logicalId, exportingStack.region, roleArn);
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, getStackOutput));
+  }
+  return Tokenization.reverseCompleteString(getStackOutput);
+}
+function getExportable(stack, reference) {
+  if (CfnElement.isCfnElement(reference.target)) {
+    reference.target._lockLogicalId();
+  }
+  return referenceNestedStackValueInParent(reference, stack);
+}
+function createNestedStackParameter(nested, reference, value) {
+  const paramId = generateUniqueId(nested, reference, "reference-to-");
+  let param = nested.node.tryFindChild(paramId);
+  if (!param) {
+    param = new CfnParameter(nested, paramId, { type: "String" });
+    if (!("setParameter" in nested)) {
+      throw new UnscopedValidationError(lit`NestedStackMustHaveSetParameter`, 'assertion failed: nested stack should have a "setParameter" method');
+    }
+    nested.setParameter(param.logicalId, Token.asString(value));
+  }
+  return param.value;
+}
+function createNestedStackOutput(producer, reference) {
+  const outputId = generateUniqueId(producer, reference);
+  let output = producer.node.tryFindChild(outputId);
+  if (!output) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(producer, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(producer, outputId, { value: Token.asString(reference) });
+    }
+  }
+  if (!producer.nestedStackResource) {
+    throw new AssumptionError(lit`AssertionFailed`, "assertion failed");
+  }
+  return producer.nestedStackResource.getAtt(`Outputs.${output.logicalId}`);
+}
+function referenceNestedStackValueInParent(reference, targetStack) {
+  let currentStack = stackOf(reference.target);
+  if (currentStack !== targetStack && !isNested(currentStack, targetStack)) {
+    throw new UnscopedValidationError(lit`ReferencedResourceMustBeInTargetStack`, `Referenced resource must be in stack '${targetStack.node.path}', got '${reference.target.node.path}'`);
+  }
+  const isNestedListReference = currentStack !== targetStack && reference.typeHint === "string-list" /* STRING_LIST */;
+  while (currentStack !== targetStack) {
+    reference = createNestedStackOutput(stackOf(reference.target), reference);
+    currentStack = stackOf(reference.target);
+  }
+  if (isNestedListReference) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(reference)));
+  }
+  return reference;
+}
+function isNested(nested, parent) {
+  if (nested.nestedStackParent === parent) {
+    return true;
+  }
+  if (!nested.nestedStackParent) {
+    return false;
+  }
+  return isNested(nested.nestedStackParent, parent);
+}
+function generateUniqueId(stack, ref, prefix = "") {
+  return stack.resolve(`${prefix}${Names.nodeUniqueId(ref.target.node)}${ref.displayName}`);
+}
+var import_constructs14, STRING_LIST_REFERENCE_DELIMITER, WEAK_REFS_WARNING_EMITTED, OVERRIDDEN_REFERENCE_SYMBOL, CustomCoupledReference, ROLE_CONSUMERS;
+var init_refs = __esm({
+  "../../aws-cdk-lib/core/lib/private/refs.ts"() {
+    "use strict";
+    import_constructs14 = __toESM(require_lib4());
+    init_cfn_reference();
+    init_intrinsic();
+    init_resolve();
+    init_uniqueid();
+    init_cx_api();
+    init_annotations();
+    init_arn();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_export_writer_provider();
+    init_errors();
+    init_lazy();
+    init_names();
+    init_token();
+    init_type_hints();
+    init_construct_iteration();
+    init_cfn_resource();
+    init_literal_string();
+    init_cross_stack_reference_strength();
+    init_core_construct_finders();
+    STRING_LIST_REFERENCE_DELIMITER = "||";
+    WEAK_REFS_WARNING_EMITTED = /* @__PURE__ */ Symbol.for("@aws-cdk/core.WeakRefsWarningEmitted");
+    OVERRIDDEN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CustomCoupledReference");
+    CustomCoupledReference = class extends Intrinsic {
+      static isCustomCoupledReference(x) {
+        return OVERRIDDEN_REFERENCE_SYMBOL in x;
+      }
+      reference;
+      strength;
+      resolvedValue;
+      constructor(reference, strength) {
+        super(reference, { typeHint: reference.typeHint });
+        this.reference = reference;
+        this.strength = strength;
+        Object.defineProperty(this, OVERRIDDEN_REFERENCE_SYMBOL, { value: true });
+      }
+      assignValue(value) {
+        this.resolvedValue = value;
+      }
+      resolve(context) {
+        if (this.resolvedValue) {
+          return this.resolvedValue.resolve(context);
+        }
+        return this.reference.resolve(context);
+      }
+    };
+    ROLE_CONSUMERS = /* @__PURE__ */ new WeakMap();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deps.ts
+function reifyConstructDependencies(root) {
+  for (const dependency of registeredConstructDependencies(root)) {
+    dispatchDependencyOperation(dependency);
+  }
+}
+function dispatchDependencyOperation(op) {
+  if (op.source === op.target) {
+    return;
+  }
+  if (process.env.CDK_DEBUG_DEPS) {
+    if (op.kind === "add") {
+      console.error(`[CDK_DEBUG_DEPS] applying dependency ${op.reason}`);
+    } else {
+      console.error(`[CDK_DEBUG_DEPS] removing construct dependency ${op.source.node.path} -> ${op.target.node.path}`);
+    }
+  }
+  const sourcePath = dependencyContainerPath(op.source);
+  const targetPath = dependencyContainerPath(op.target);
+  const parentI = sharedDependencyContainerIndex(sourcePath, targetPath);
+  validateNoStagesCrossed(sourcePath, targetPath, op);
+  validateNoParentChildDependency(sourcePath, targetPath, parentI, op);
+  if (parentI < sourcePath.length - 1 && parentI < targetPath.length - 1) {
+    doDispatch(sourcePath[parentI + 1], targetPath[parentI + 1], op);
+  }
+}
+function validateNoStagesCrossed(sourcePath, targetPath, op) {
+  const sourceStage = last(sourcePath.filter((c) => c.type === "stage"))?.construct;
+  const targetStage = last(targetPath.filter((c) => c.type === "stage"))?.construct;
+  if (sourceStage !== targetStage) {
+    throw new UnscopedValidationError(lit`NoCrossStageDependency`, `You cannot have a dependency from '${op.source.node.path}' (in ${describeStage(sourceStage)}) to '${op.target.node.path}' (in ${describeStage(targetStage)}): dependency cannot cross stage boundaries`);
+  }
+}
+function validateNoParentChildDependency(sourcePath, targetPath, parentI, op) {
+  if (parentI === targetPath.length - 1) {
+    throw new UnscopedValidationError(lit`CannotDependOnParent`, `'${op.source.node.path}' cannot depend on parent ${targetPath[parentI].type} '${op.target.node.path}'`);
+  }
+  void sourcePath;
+}
+function doDispatch(source, target, op) {
+  switch (source.type) {
+    case "stage":
+      break;
+    case "stack":
+      if (target.type === "stack") {
+        if (op.kind === "add") {
+          source.construct._addStackDependency(target.construct, op);
+        } else {
+          source.construct._removeStackDependency(target.construct, op);
+        }
+      }
+      break;
+    case "nested-stack":
+    case "construct":
+      for (const sourceResource of dependingResourcesFor(source)) {
+        for (const targetResource of dependingResourcesFor(target)) {
+          if (sourceResource === targetResource) {
+            continue;
+          }
+          if (op.kind === "add") {
+            sourceResource._addResourceDependency(targetResource);
+          } else {
+            sourceResource._removeResourceDependency(targetResource);
+          }
+        }
+      }
+      break;
+  }
+}
+function* dependingResourcesFor(construct) {
+  if (construct.type === "nested-stack" && construct.construct.nestedStackResource) {
+    yield construct.construct.nestedStackResource;
+  }
+  if (construct.type === "construct") {
+    yield* iterateTemplateCfnResources(construct.construct);
+  }
+}
+function dependencyContainerPath(start) {
+  const ret = [];
+  let construct = start;
+  while (construct) {
+    let candidate;
+    if (STAGE_TYPE.isMarked(construct)) {
+      candidate = { type: "stage", construct };
+    } else if (NESTED_STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "nested-stack", construct };
+    } else if (STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "stack", construct };
+    } else {
+      if (ret.length === 0) {
+        candidate = { type: "construct", construct };
+      }
+    }
+    if (candidate && (ret.length === 0 || contains(candidate, ret[ret.length - 1]))) {
+      ret.push(candidate);
+    }
+    construct = construct.node.scope;
+  }
+  return ret.reverse();
+  function contains(container, child) {
+    switch (child.type) {
+      case "stage":
+        return container.type == "stage";
+      case "nested-stack":
+        return container.type == "nested-stack" || container.type == "stack";
+      case "stack":
+        return container.type == "stage";
+      case "construct":
+        return true;
+    }
+  }
+}
+function sharedDependencyContainerIndex(as, bs) {
+  const minLength = Math.min(as.length, bs.length);
+  for (let i = minLength - 1; i >= 0; i--) {
+    if (as[i].construct === bs[i].construct) {
+      return i;
+    }
+  }
+  return -1;
+}
+function* registeredConstructDependencies(root) {
+  const found = /* @__PURE__ */ new Map();
+  for (const source of iterateDfsPreorder(root)) {
+    for (const dependable of source.node.dependencies) {
+      for (const target of import_constructs15.Dependable.of(dependable).dependencyRoots) {
+        if (source === target) {
+          continue;
+        }
+        let foundTargets = found.get(source);
+        if (!foundTargets) {
+          found.set(source, foundTargets = /* @__PURE__ */ new Set());
+        }
+        if (!foundTargets.has(target)) {
+          yield { kind: "add", source, target, reason: `<${source.node.path}>.node.addDependency(<${target.node.path}>)` };
+          foundTargets.add(target);
+        }
+      }
+    }
+  }
+}
+function describeStage(assembly) {
+  if (!assembly) {
+    return "an unrooted construct tree";
+  }
+  if (!assembly.parentStage) {
+    return "the App";
+  }
+  return `Stage '${assembly.node.path}'`;
+}
+function last(xs) {
+  return xs[xs.length - 1];
+}
+var import_constructs15;
+var init_deps = __esm({
+  "../../aws-cdk-lib/core/lib/private/deps.ts"() {
+    "use strict";
+    import_constructs15 = __toESM(require_lib4());
+    init_errors();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/prepare-app.ts
+function writePropertyAssignmentMetadata(root) {
+  if (!debugModeEnabled()) return;
+  const lookupTableFor = (c) => ({
+    cfnPropertyName: (cdkPropertyName) => c.cfnPropertyName(cdkPropertyName)
+  });
+  for (const consumer of iterateDfsPreorder(root)) {
+    if (CfnResource.isCfnResource(consumer)) {
+      writePropertyAssignmentMetadataForConstruct(consumer, () => consumer._toCloudFormation(), lookupTableFor(consumer));
+    }
+  }
+}
+function prepareApp(root) {
+  reifyConstructDependencies(root);
+  resolveReferences(root);
+  writePropertyAssignmentMetadata(root);
+  const nestedStacks = findAllNestedStacks(root);
+  if (nestedStacks.length > 0) {
+    for (const nested of nestedStacks) {
+      defineNestedStackAsset(nested);
+    }
+    resolveReferencesInElements(nestedStacks.map((s) => s.nestedStackResource));
+  }
+}
+function defineNestedStackAsset(nestedStack) {
+  const nested = nestedStack;
+  nested._prepareTemplateAsset();
+}
+function findAllNestedStacks(root) {
+  const result = new Array();
+  const includeStack = (stack) => {
+    if (!STACK_TYPE.isMarked(stack)) {
+      return false;
+    }
+    if (!stack.nested) {
+      return false;
+    }
+    if (!stageOf(stack)) {
+      return true;
+    }
+    return stageOf(stack) === root;
+  };
+  for (const node of iterateDfsPostorder(root)) {
+    if (includeStack(node)) {
+      result.push(node);
+    }
+  }
+  return result;
+}
+var init_prepare_app = __esm({
+  "../../aws-cdk-lib/core/lib/private/prepare-app.ts"() {
+    "use strict";
+    init_refs();
+    init_cfn_resource();
+    init_debug();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_deps();
+    init_resolve();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/validation-id.ts
+function parseValidationId(id) {
+  let nsSeparator = void 0;
+  const braceStack = [];
+  for (let i = 0; i < id.length; i++) {
+    const c = id[i];
+    if (c === ":" && id[i + 1] === ":" && braceStack.length === 0) {
+      if (nsSeparator !== void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. The '::' delimiter is reserved for separating the prefix from the rule name (e.g. 'prefix::RuleName').`);
+      }
+      nsSeparator = i;
+      i += 1;
+    } else if (["]", ")", "}"].includes(c)) {
+      const lastBrace = braceStack.pop();
+      if (lastBrace === void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Unmatched closing brace '${c}' at position ${i}.`);
+      }
+      if (lastBrace === "(" && c !== ")" || lastBrace === "[" && c !== "]" || lastBrace === "{" && c !== "}") {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Mismatched closing brace '${c}' at position ${i}. Expected '${lastBrace === "(" ? ")" : lastBrace === "[" ? "]" : "}"}'.`);
+      }
+    } else if (["[", "(", "{"].includes(c)) {
+      braceStack.push(c);
+    }
+  }
+  if (nsSeparator === void 0) {
+    return { ruleId: id };
+  }
+  if (nsSeparator === 0) {
+    throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Missing plugin name before '::'.`);
+  }
+  const namespace = id.substring(0, nsSeparator);
+  const ruleId = id.substring(nsSeparator + 2);
+  return { namespace, ruleId };
+}
+function normalizeValidationId(id, defaultNamespace) {
+  const p = typeof id === "string" ? parseValidationId(id) : id;
+  const parsed = {
+    namespace: p.namespace?.replaceAll(/ /g, "-"),
+    ruleId: p.ruleId.replaceAll(/ /g, "-")
+  };
+  if (parsed.namespace && ["annotation", "Construct-Annotations"].includes(parsed.namespace)) {
+    return `${ANNOTATION_PLUGIN_NAMESPACE}::${parsed.ruleId}`;
+  }
+  return `${parsed.namespace ?? defaultNamespace}::${parsed.ruleId}`;
+}
+function normalizeValidationIdForAnnotations(id) {
+  return normalizeValidationId(id, ANNOTATION_PLUGIN_NAMESPACE);
+}
+function namespaceFromPluginName(pluginName) {
+  if (pluginName === ANNOTATION_PLUGIN_NAME) {
+    return ANNOTATION_PLUGIN_NAMESPACE;
+  }
+  return pluginName.replace(/ /g, "-");
+}
+function pluginNameFromNamespace(namespace) {
+  return namespace.replace(/-/g, " ");
+}
+var ANNOTATION_PLUGIN_NAME, ANNOTATION_PLUGIN_NAMESPACE;
+var init_validation_id = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/validation-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ANNOTATION_PLUGIN_NAME = "Construct Annotations";
+    ANNOTATION_PLUGIN_NAMESPACE = namespaceFromPluginName("Annotation");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/annotation-plugin.ts
+function collectAnnotationReport(root) {
+  const myNamespace = namespaceFromPluginName(AnnotationPlugin.NAME);
+  const violationMap = /* @__PURE__ */ new Map();
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR) {
+        continue;
+      }
+      const severity = entry.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR ? "error" : "warning";
+      let { message, ruleName } = splitDescriptionAndId(String(entry.data));
+      if (ruleName && !ruleName.includes("::")) {
+        ruleName = `${myNamespace}::${ruleName}`;
+      }
+      let templatePath;
+      try {
+        templatePath = path13.join(stageOf(construct)?.outdir ?? ".", stackOf(construct).templateFile);
+      } catch (e) {
+      }
+      const resourceLogicalId = CfnResource.isCfnResource(construct) ? stackOf(construct).resolve(construct.logicalId) : void 0;
+      const violatingResource = {
+        constructPath: construct.node.path,
+        resourceLogicalId,
+        templatePath,
+        locations: []
+      };
+      const key = `${ruleName}|${severity}|${message}`;
+      const existing = violationMap.get(key);
+      if (existing) {
+        existing.violatingResources.push(violatingResource);
+      } else {
+        violationMap.set(key, {
+          ruleName: ruleName ?? `${myNamespace}::${severity}-annotation`,
+          description: message,
+          severity,
+          violatingResources: [violatingResource],
+          ruleMetadata: {
+            "cdk:annotation": "true"
+          }
+        });
+      }
+    }
+  }
+  const violations = Array.from(violationMap.values());
+  if (violations.length === 0) {
+    return void 0;
+  }
+  const hasErrors = violations.some((v) => v.severity === "error");
+  return new AnnotationPlugin({
+    pluginName: AnnotationPlugin.NAME,
+    success: !hasErrors,
+    violations,
+    metadata: {
+      "cdk:annotations": "true"
+    }
+  });
+}
+function splitDescriptionAndId(message) {
+  const ackMatch = message.match(/\[ack: ([^\]]+)\]/);
+  if (ackMatch) {
+    return { message: message.replace(ackMatch[0], "").trim(), ruleName: ackMatch[1] };
+  }
+  const idMatch = message.match(/\(([^()]+::[^()]+)\)$/);
+  if (idMatch) {
+    return { message: message.replace(idMatch[0], "").trim(), ruleName: idMatch[1] };
+  }
+  return { message };
+}
+var path13, AnnotationPlugin;
+var init_annotation_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/private/annotation-plugin.ts"() {
+    "use strict";
+    path13 = __toESM(require("path"));
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_cloud_assembly_schema();
+    init_cfn_resource();
+    init_validation_id();
+    AnnotationPlugin = class _AnnotationPlugin {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      static NAME = "Construct Annotations";
+      name = _AnnotationPlugin.NAME;
+      validate(_context) {
+        return this.report;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts
+function collectAcknowledgedRules(root) {
+  const rules = {};
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type === "aws:cdk:acknowledged-rules" && entry.data) {
+        for (const [id, reason] of Object.entries(entry.data)) {
+          const rule = { reason, acknowledgedId: id, acknowledgedAt: construct.node.path, acknowledgedStackTrace: entry.trace?.join("\n") };
+          const pathMap = rules[id] ??= {};
+          pathMap[rule.acknowledgedAt] = rule;
+        }
+      }
+    }
+  }
+  return rules;
+}
+var init_collect_acknowledged_rule_ids = __esm({
+  "../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts"() {
+    "use strict";
+    init_construct_iteration();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js
+var require_bindings_wasm = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js"(exports2) {
+    var WasmCelEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCelEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcelengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcelengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcelengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcelengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCelEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcelengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcelengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCelEngine.prototype[Symbol.dispose] = WasmCelEngine.prototype.free;
+    exports2.WasmCelEngine = WasmCelEngine;
+    var WasmCompositeEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCompositeEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcompositeengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcompositeengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcompositeengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {CompositeEngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcompositeengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCompositeEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcompositeengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcompositeengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCompositeEngine.prototype[Symbol.dispose] = WasmCompositeEngine.prototype.free;
+    exports2.WasmCompositeEngine = WasmCompositeEngine;
+    var WasmRegoEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmRegoEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmregoengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmregoengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmregoengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmregoengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmRegoEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmregoengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmregoengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmRegoEngine.prototype[Symbol.dispose] = WasmRegoEngine.prototype.free;
+    exports2.WasmRegoEngine = WasmRegoEngine;
+    var WasmSchemaValidator = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSchemaValidatorFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmschemavalidator_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmschemavalidator_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {SchemaValidatorConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmschemavalidator_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmSchemaValidatorFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @returns {number}
+       */
+      schemaCount() {
+        const ret = wasm.wasmschemavalidator_schemaCount(this.__wbg_ptr);
+        return ret >>> 0;
+      }
+      /**
+       * @param {WasmSemanticModel} model
+       * @param {string | null} [region]
+       * @returns {any}
+       */
+      validate(model, region) {
+        _assertClass(model, WasmSemanticModel);
+        var ptr0 = isLikeNone(region) ? 0 : passStringToWasm0(region, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        var len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmschemavalidator_validate(this.__wbg_ptr, model.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSchemaValidator.prototype[Symbol.dispose] = WasmSchemaValidator.prototype.free;
+    exports2.WasmSchemaValidator = WasmSchemaValidator;
+    var WasmSemanticModel = class _WasmSemanticModel {
+      static __wrap(ptr) {
+        const obj = Object.create(_WasmSemanticModel.prototype);
+        obj.__wbg_ptr = ptr;
+        WasmSemanticModelFinalization.register(obj, obj.__wbg_ptr, obj);
+        return obj;
+      }
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSemanticModelFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmsemanticmodel_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      conditions() {
+        const ret = wasm.wasmsemanticmodel_conditions(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      description() {
+        const ret = wasm.wasmsemanticmodel_description(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      formatVersion() {
+        const ret = wasm.wasmsemanticmodel_formatVersion(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {any}
+       */
+      outputs() {
+        const ret = wasm.wasmsemanticmodel_outputs(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      parameters() {
+        const ret = wasm.wasmsemanticmodel_parameters(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @returns {WasmSemanticModel}
+       */
+      static parse(template) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_parse(ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return _WasmSemanticModel.__wrap(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      resources() {
+        const ret = wasm.wasmsemanticmodel_resources(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {string} path
+       * @returns {any}
+       */
+      sourceLocation(path23) {
+        const ptr0 = passStringToWasm0(path23, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_sourceLocation(this.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      toDiagnosticModel() {
+        const ret = wasm.wasmsemanticmodel_toDiagnosticModel(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      transforms() {
+        const ret = wasm.wasmsemanticmodel_transforms(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSemanticModel.prototype[Symbol.dispose] = WasmSemanticModel.prototype.free;
+    exports2.WasmSemanticModel = WasmSemanticModel;
+    function init() {
+      wasm.init();
+    }
+    exports2.init = init;
+    function version3() {
+      let deferred1_0;
+      let deferred1_1;
+      try {
+        const ret = wasm.version();
+        deferred1_0 = ret[0];
+        deferred1_1 = ret[1];
+        return getStringFromWasm0(ret[0], ret[1]);
+      } finally {
+        wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+      }
+    }
+    exports2.version = version3;
+    function __wbg_get_imports() {
+      const import0 = {
+        __proto__: null,
+        __wbg_Error_92b29b0548f8b746: function(arg0, arg1) {
+          const ret = Error(getStringFromWasm0(arg0, arg1));
+          return ret;
+        },
+        __wbg_Number_9a4e0ecb0fa16705: function(arg0) {
+          const ret = Number(arg0);
+          return ret;
+        },
+        __wbg_String_8564e559799eccda: function(arg0, arg1) {
+          const ret = String(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_bigint_get_as_i64_d968e41184ae354f: function(arg0, arg1) {
+          const v = arg1;
+          const ret = typeof v === "bigint" ? v : void 0;
+          getDataViewMemory0().setBigInt64(arg0 + 8 * 1, isLikeNone(ret) ? BigInt(0) : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_boolean_get_fa956cfa2d1bd751: function(arg0) {
+          const v = arg0;
+          const ret = typeof v === "boolean" ? v : void 0;
+          return isLikeNone(ret) ? 16777215 : ret ? 1 : 0;
+        },
+        __wbg___wbindgen_debug_string_c25d447a39f5578f: function(arg0, arg1) {
+          const ret = debugString(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_in_aca499c5de7ff5e5: function(arg0, arg1) {
+          const ret = arg0 in arg1;
+          return ret;
+        },
+        __wbg___wbindgen_is_bigint_2f76dc55065b4273: function(arg0) {
+          const ret = typeof arg0 === "bigint";
+          return ret;
+        },
+        __wbg___wbindgen_is_function_1ff95bcc5517c252: function(arg0) {
+          const ret = typeof arg0 === "function";
+          return ret;
+        },
+        __wbg___wbindgen_is_object_a27215656b807791: function(arg0) {
+          const val2 = arg0;
+          const ret = typeof val2 === "object" && val2 !== null;
+          return ret;
+        },
+        __wbg___wbindgen_is_string_ea5e6cc2e4141dfe: function(arg0) {
+          const ret = typeof arg0 === "string";
+          return ret;
+        },
+        __wbg___wbindgen_is_undefined_c05833b95a3cf397: function(arg0) {
+          const ret = arg0 === void 0;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_eq_e659fcf7b0e32763: function(arg0, arg1) {
+          const ret = arg0 === arg1;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_loose_eq_db4c3b15f63fc170: function(arg0, arg1) {
+          const ret = arg0 == arg1;
+          return ret;
+        },
+        __wbg___wbindgen_number_get_394265ed1e1b84ee: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "number" ? obj : void 0;
+          getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_string_get_b0ca35b86a603356: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "string" ? obj : void 0;
+          var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          var len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_throw_344f42d3211c4765: function(arg0, arg1) {
+          throw new Error(getStringFromWasm0(arg0, arg1));
+        },
+        __wbg_call_8a2dd23819f8a60a: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = arg0.call(arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_done_89b2b13e91a60321: function(arg0) {
+          const ret = arg0.done;
+          return ret;
+        },
+        __wbg_entries_015dc610cd81ede0: function(arg0) {
+          const ret = Object.entries(arg0);
+          return ret;
+        },
+        __wbg_error_a6fa202b58aa1cd3: function(arg0, arg1) {
+          let deferred0_0;
+          let deferred0_1;
+          try {
+            deferred0_0 = arg0;
+            deferred0_1 = arg1;
+            console.error(getStringFromWasm0(arg0, arg1));
+          } finally {
+            wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
+          }
+        },
+        __wbg_getRandomValues_3f44b700395062e5: function() {
+          return handleError(function(arg0, arg1) {
+            globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
+          }, arguments);
+        },
+        __wbg_getTime_d6f070c088c9b5ed: function(arg0) {
+          const ret = arg0.getTime();
+          return ret;
+        },
+        __wbg_get_507a50627bffa49b: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_c7eb1f358a7654df: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = Reflect.get(arg0, arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_get_unchecked_6e0ad6d2a41b06f6: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_with_ref_key_6412cf3094599694: function(arg0, arg1) {
+          const ret = arg0[arg1];
+          return ret;
+        },
+        __wbg_instanceof_ArrayBuffer_4480b9e0068a8adb: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof ArrayBuffer;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Map_e5b5e3db98422fcc: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Map;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Uint8Array_309b927aaf7a3fc7: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Uint8Array;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_isArray_0677c962b281d01a: function(arg0) {
+          const ret = Array.isArray(arg0);
+          return ret;
+        },
+        __wbg_isSafeInteger_04f36e4056f1b851: function(arg0) {
+          const ret = Number.isSafeInteger(arg0);
+          return ret;
+        },
+        __wbg_iterator_6f722e4a93058b71: function() {
+          const ret = Symbol.iterator;
+          return ret;
+        },
+        __wbg_length_1f0964f4a5e2c6d8: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_length_370319915dc99107: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_new_0_3da9e97f24fc69be: function() {
+          const ret = /* @__PURE__ */ new Date();
+          return ret;
+        },
+        __wbg_new_227d7c05414eb861: function() {
+          const ret = new Error();
+          return ret;
+        },
+        __wbg_new_32b398fb48b6d94a: function() {
+          const ret = new Array();
+          return ret;
+        },
+        __wbg_new_7796ffc7ed656783: function() {
+          const ret = /* @__PURE__ */ new Map();
+          return ret;
+        },
+        __wbg_new_cd45aabdf6073e84: function(arg0) {
+          const ret = new Uint8Array(arg0);
+          return ret;
+        },
+        __wbg_new_da52cf8fe3429cb2: function() {
+          const ret = new Object();
+          return ret;
+        },
+        __wbg_next_6dbf2c0ac8cde20f: function(arg0) {
+          const ret = arg0.next;
+          return ret;
+        },
+        __wbg_next_71f2aa1cb3d1e37e: function() {
+          return handleError(function(arg0) {
+            const ret = arg0.next();
+            return ret;
+          }, arguments);
+        },
+        __wbg_now_e7c6795a7f81e10f: function(arg0) {
+          const ret = arg0.now();
+          return ret;
+        },
+        __wbg_performance_3fcf6e32a7e1ed0a: function(arg0) {
+          const ret = arg0.performance;
+          return ret;
+        },
+        __wbg_prototypesetcall_4770620bbe4688a0: function(arg0, arg1, arg2) {
+          Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), arg2);
+        },
+        __wbg_set_575dd786d51585f8: function(arg0, arg1, arg2) {
+          const ret = arg0.set(arg1, arg2);
+          return ret;
+        },
+        __wbg_set_6be42768c690e380: function(arg0, arg1, arg2) {
+          arg0[arg1] = arg2;
+        },
+        __wbg_set_8a16b38e4805b298: function(arg0, arg1, arg2) {
+          arg0[arg1 >>> 0] = arg2;
+        },
+        __wbg_stack_3b0d974bbf31e44f: function(arg0, arg1) {
+          const ret = arg1.stack;
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg_static_accessor_GLOBAL_4ef717fb391d88b7: function() {
+          const ret = typeof global === "undefined" ? null : global;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_GLOBAL_THIS_8d1badc68b5a74f4: function() {
+          const ret = typeof globalThis === "undefined" ? null : globalThis;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_SELF_146583524fe1469b: function() {
+          const ret = typeof self === "undefined" ? null : self;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_WINDOW_f2829a2234d7819e: function() {
+          const ret = typeof window === "undefined" ? null : window;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_value_a5d5488a9589444a: function(arg0) {
+          const ret = arg0.value;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000001: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000002: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000003: function(arg0, arg1) {
+          const ret = getStringFromWasm0(arg0, arg1);
+          return ret;
+        },
+        __wbindgen_cast_0000000000000004: function(arg0) {
+          const ret = BigInt.asUintN(64, arg0);
+          return ret;
+        },
+        __wbindgen_init_externref_table: function() {
+          const table = wasm.__wbindgen_externrefs;
+          const offset = table.grow(4);
+          table.set(0, void 0);
+          table.set(offset + 0, void 0);
+          table.set(offset + 1, null);
+          table.set(offset + 2, true);
+          table.set(offset + 3, false);
+        }
+      };
+      return {
+        __proto__: null,
+        "./bindings_wasm_bg.js": import0
+      };
+    }
+    var WasmCelEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcelengine_free(ptr, 1));
+    var WasmCompositeEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcompositeengine_free(ptr, 1));
+    var WasmRegoEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmregoengine_free(ptr, 1));
+    var WasmSchemaValidatorFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmschemavalidator_free(ptr, 1));
+    var WasmSemanticModelFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmsemanticmodel_free(ptr, 1));
+    function addToExternrefTable0(obj) {
+      const idx = wasm.__externref_table_alloc();
+      wasm.__wbindgen_externrefs.set(idx, obj);
+      return idx;
+    }
+    function _assertClass(instance, klass) {
+      if (!(instance instanceof klass)) {
+        throw new Error(`expected instance of ${klass.name}`);
+      }
+    }
+    function debugString(val2) {
+      const type = typeof val2;
+      if (type == "number" || type == "boolean" || val2 == null) {
+        return `${val2}`;
+      }
+      if (type == "string") {
+        return `"${val2}"`;
+      }
+      if (type == "symbol") {
+        const description = val2.description;
+        if (description == null) {
+          return "Symbol";
+        } else {
+          return `Symbol(${description})`;
+        }
+      }
+      if (type == "function") {
+        const name = val2.name;
+        if (typeof name == "string" && name.length > 0) {
+          return `Function(${name})`;
+        } else {
+          return "Function";
+        }
+      }
+      if (Array.isArray(val2)) {
+        const length = val2.length;
+        let debug = "[";
+        if (length > 0) {
+          debug += debugString(val2[0]);
+        }
+        for (let i = 1; i < length; i++) {
+          debug += ", " + debugString(val2[i]);
+        }
+        debug += "]";
+        return debug;
+      }
+      const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val2));
+      let className;
+      if (builtInMatches && builtInMatches.length > 1) {
+        className = builtInMatches[1];
+      } else {
+        return toString.call(val2);
+      }
+      if (className == "Object") {
+        try {
+          return "Object(" + JSON.stringify(val2) + ")";
+        } catch (_) {
+          return "Object";
+        }
+      }
+      if (val2 instanceof Error) {
+        return `${val2.name}: ${val2.message}
+${val2.stack}`;
+      }
+      return className;
+    }
+    function getArrayU8FromWasm0(ptr, len) {
+      ptr = ptr >>> 0;
+      return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
+    }
+    var cachedDataViewMemory0 = null;
+    function getDataViewMemory0() {
+      if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || cachedDataViewMemory0.buffer.detached === void 0 && cachedDataViewMemory0.buffer !== wasm.memory.buffer) {
+        cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
+      }
+      return cachedDataViewMemory0;
+    }
+    function getStringFromWasm0(ptr, len) {
+      return decodeText(ptr >>> 0, len);
+    }
+    var cachedUint8ArrayMemory0 = null;
+    function getUint8ArrayMemory0() {
+      if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
+        cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
+      }
+      return cachedUint8ArrayMemory0;
+    }
+    function handleError(f, args) {
+      try {
+        return f.apply(this, args);
+      } catch (e) {
+        const idx = addToExternrefTable0(e);
+        wasm.__wbindgen_exn_store(idx);
+      }
+    }
+    function isLikeNone(x) {
+      return x === void 0 || x === null;
+    }
+    function passArray8ToWasm0(arg, malloc) {
+      const ptr = malloc(arg.length * 1, 1) >>> 0;
+      getUint8ArrayMemory0().set(arg, ptr / 1);
+      WASM_VECTOR_LEN = arg.length;
+      return ptr;
+    }
+    function passStringToWasm0(arg, malloc, realloc) {
+      if (realloc === void 0) {
+        const buf = cachedTextEncoder.encode(arg);
+        const ptr2 = malloc(buf.length, 1) >>> 0;
+        getUint8ArrayMemory0().subarray(ptr2, ptr2 + buf.length).set(buf);
+        WASM_VECTOR_LEN = buf.length;
+        return ptr2;
+      }
+      let len = arg.length;
+      let ptr = malloc(len, 1) >>> 0;
+      const mem = getUint8ArrayMemory0();
+      let offset = 0;
+      for (; offset < len; offset++) {
+        const code = arg.charCodeAt(offset);
+        if (code > 127) break;
+        mem[ptr + offset] = code;
+      }
+      if (offset !== len) {
+        if (offset !== 0) {
+          arg = arg.slice(offset);
+        }
+        ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
+        const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
+        const ret = cachedTextEncoder.encodeInto(arg, view);
+        offset += ret.written;
+        ptr = realloc(ptr, len, offset, 1) >>> 0;
+      }
+      WASM_VECTOR_LEN = offset;
+      return ptr;
+    }
+    function takeFromExternrefTable0(idx) {
+      const value = wasm.__wbindgen_externrefs.get(idx);
+      wasm.__externref_table_dealloc(idx);
+      return value;
+    }
+    var cachedTextDecoder = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true });
+    cachedTextDecoder.decode();
+    function decodeText(ptr, len) {
+      return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
+    }
+    var cachedTextEncoder = new TextEncoder();
+    if (!("encodeInto" in cachedTextEncoder)) {
+      cachedTextEncoder.encodeInto = function(arg, view) {
+        const buf = cachedTextEncoder.encode(arg);
+        view.set(buf);
+        return {
+          read: arg.length,
+          written: buf.length
+        };
+      };
+    }
+    var WASM_VECTOR_LEN = 0;
+    var wasmPath = `${__dirname}/bindings_wasm_bg.wasm`;
+    var wasmBytes = require("fs").readFileSync(wasmPath);
+    var wasmModule = new WebAssembly.Module(wasmBytes);
+    var wasmInstance = new WebAssembly.Instance(wasmModule, __wbg_get_imports());
+    var wasm = wasmInstance.exports;
+    wasm.__wbindgen_start();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js
+var require_cloudformation_validate = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CompositeEngine = exports2.CelEngine = exports2.RegoEngine = exports2.SchemaValidator = exports2.TemplateModel = exports2.SchemaFile = exports2.RuleFile = exports2.TemplateContent = exports2.TemplateFile = exports2.DEFAULT_TEMPLATE_NAME = exports2.AwsCliCommand = void 0;
+    exports2.version = version3;
+    var fs_1 = require("fs");
+    var AwsCliCommand = class {
+      constructor(serviceName, operationName, parameters, options = {}) {
+        this.serviceName = serviceName;
+        this.operationName = operationName;
+        if (!isPlainRecord(parameters)) {
+          throw new TypeError("parameters must be a plain object with string keys");
+        }
+        const copiedParameters = /* @__PURE__ */ Object.create(null);
+        for (const key of Reflect.ownKeys(parameters)) {
+          if (typeof key !== "string") {
+            throw new TypeError("request parameter names must be strings");
+          }
+          const descriptor = Object.getOwnPropertyDescriptor(parameters, key);
+          if (descriptor === void 0 || !("value" in descriptor)) {
+            throw new TypeError(`request parameter ${JSON.stringify(key)} must be a value property`);
+          }
+          copiedParameters[key] = descriptor.value;
+        }
+        this.parameters = copiedParameters;
+        this.servicePrefix = options.servicePrefix;
+        this.httpMethod = options.httpMethod;
+        this.isReadOnly = options.isReadOnly;
+      }
+    };
+    exports2.AwsCliCommand = AwsCliCommand;
+    var MIN_SIGNED_64 = -(1n << 63n);
+    var MAX_SIGNED_64 = (1n << 63n) - 1n;
+    var MAX_UNSIGNED_64 = (1n << 64n) - 1n;
+    var MAX_REQUEST_VALUE_DEPTH = 64;
+    var DATE_GET_TIME = Date.prototype.getTime;
+    var DATE_TO_ISO_STRING = Date.prototype.toISOString;
+    var UINT8_ARRAY_FOR_EACH = Uint8Array.prototype.forEach;
+    function isPlainRecord(value) {
+      if (value === null || typeof value !== "object" || Array.isArray(value)) {
+        return false;
+      }
+      const prototype = Object.getPrototypeOf(value);
+      return prototype === Object.prototype || prototype === null;
+    }
+    function unsupportedValue(typeName) {
+      return { type: "UNSUPPORTED", type_name: typeName };
+    }
+    function encodeAwsCliValue(value, depth = 0, ancestors = /* @__PURE__ */ new Set()) {
+      if (depth > MAX_REQUEST_VALUE_DEPTH) {
+        return unsupportedValue("recursion depth exceeded");
+      }
+      if (value === null) {
+        return { type: "NULL" };
+      }
+      if (typeof value === "boolean") {
+        return { type: "BOOLEAN", value };
+      }
+      if (typeof value === "number") {
+        if (!Number.isFinite(value)) {
+          return unsupportedValue("non-finite floating-point number");
+        }
+        if (Number.isInteger(value)) {
+          return Number.isSafeInteger(value) ? { type: "INTEGER", value } : unsupportedValue("integer outside the JavaScript safe range");
+        }
+        return { type: "NUMBER", value };
+      }
+      if (typeof value === "bigint") {
+        if (value >= MIN_SIGNED_64 && value <= MAX_SIGNED_64) {
+          return { type: "INTEGER", value };
+        }
+        if (value >= 0n && value <= MAX_UNSIGNED_64) {
+          return { type: "UNSIGNED_INTEGER", value };
+        }
+        return unsupportedValue("integer outside the 64-bit request range");
+      }
+      if (typeof value === "string") {
+        return { type: "STRING", value };
+      }
+      if (value instanceof Uint8Array) {
+        const bytes = [];
+        try {
+          UINT8_ARRAY_FOR_EACH.call(value, (byte) => {
+            bytes.push(byte);
+          });
+        } catch {
+          return unsupportedValue("invalid Uint8Array");
+        }
+        return { type: "BYTES", value: bytes };
+      }
+      if (value instanceof Date) {
+        try {
+          const timestamp = DATE_GET_TIME.call(value);
+          return Number.isFinite(timestamp) ? { type: "STRING", value: DATE_TO_ISO_STRING.call(value) } : unsupportedValue("invalid Date");
+        } catch {
+          return unsupportedValue("invalid Date");
+        }
+      }
+      if (Array.isArray(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic array");
+        }
+        ancestors.add(value);
+        try {
+          const lengthDescriptor = Object.getOwnPropertyDescriptor(value, "length");
+          if (lengthDescriptor === void 0 || !("value" in lengthDescriptor) || !Number.isSafeInteger(lengthDescriptor.value) || lengthDescriptor.value < 0) {
+            return unsupportedValue("array with invalid length");
+          }
+          const items = [];
+          for (let index = 0; index < lengthDescriptor.value; index += 1) {
+            const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
+            if (descriptor === void 0) {
+              return unsupportedValue("sparse array");
+            }
+            if (!("value" in descriptor)) {
+              return unsupportedValue("array with accessor elements");
+            }
+            items.push(encodeAwsCliValue(descriptor.value, depth + 1, ancestors));
+          }
+          return { type: "ARRAY", items };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      if (isPlainRecord(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic object");
+        }
+        ancestors.add(value);
+        try {
+          const entries = /* @__PURE__ */ Object.create(null);
+          for (const key of Reflect.ownKeys(value)) {
+            if (typeof key !== "string") {
+              return unsupportedValue("mapping with non-string keys");
+            }
+            const descriptor = Object.getOwnPropertyDescriptor(value, key);
+            if (descriptor === void 0 || !("value" in descriptor)) {
+              return unsupportedValue("mapping with accessor properties");
+            }
+            entries[key] = encodeAwsCliValue(descriptor.value, depth + 1, ancestors);
+          }
+          return { type: "OBJECT", entries };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      return unsupportedValue(typeof value);
+    }
+    function toWireAwsCliCommand(request2) {
+      const parameters = /* @__PURE__ */ Object.create(null);
+      for (const [name, value] of Object.entries(request2.parameters)) {
+        try {
+          parameters[name] = encodeAwsCliValue(value);
+        } catch {
+          parameters[name] = unsupportedValue("request value inspection failed");
+        }
+      }
+      return {
+        serviceName: request2.serviceName,
+        operationName: request2.operationName,
+        parameters,
+        ...request2.servicePrefix === void 0 ? {} : { servicePrefix: request2.servicePrefix },
+        ...request2.httpMethod === void 0 ? {} : { httpMethod: request2.httpMethod },
+        ...request2.isReadOnly === void 0 ? {} : { isReadOnly: request2.isReadOnly }
+      };
+    }
+    function fromWireAwsCliCommandValidation(validation) {
+      const template = validation.template;
+      return {
+        ...validation,
+        templateSource: validation.templateSource ?? null,
+        report: validation.report ?? null,
+        template: template == null ? null : Uint8Array.from(template)
+      };
+    }
+    var bridge = require_bindings_wasm();
+    exports2.DEFAULT_TEMPLATE_NAME = "template";
+    var TemplateFile2 = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readBytes() {
+        return (0, fs_1.readFileSync)(this.path);
+      }
+    };
+    exports2.TemplateFile = TemplateFile2;
+    var TemplateContent = class {
+      constructor(content, name = exports2.DEFAULT_TEMPLATE_NAME) {
+        this.content = content;
+        this.name = name;
+        if (typeof content !== "string" && !(content instanceof Uint8Array)) {
+          throw new TypeError("template content must be a string or a Uint8Array");
+        }
+      }
+      readBytes() {
+        return typeof this.content === "string" ? new TextEncoder().encode(this.content) : this.content;
+      }
+    };
+    exports2.TemplateContent = TemplateContent;
+    function templateLabel(template) {
+      return template instanceof TemplateContent ? template.name : template.path;
+    }
+    var RuleFile = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.RuleFile = RuleFile;
+    var SchemaFile = class {
+      constructor(path23, typeName) {
+        this.path = path23;
+        this.typeName = typeName;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.SchemaFile = SchemaFile;
+    function toExternalRuleSources(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof RuleFile ? { name: source.path, content: source.readContent() } : source
+      );
+    }
+    function toAdditionalSchemas(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof SchemaFile ? { typeName: source.typeName, schema: source.readContent() } : source
+      );
+    }
+    function toWasmEngineConfig(config) {
+      return {
+        customRules: toExternalRuleSources(config?.customRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmCompositeEngineConfig(config) {
+      return {
+        regoRules: toExternalRuleSources(config?.regoRules),
+        celRules: toExternalRuleSources(config?.celRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmSchemaValidatorConfig(config) {
+      return {
+        additionalSchemas: toAdditionalSchemas(config?.additionalSchemas)
+      };
+    }
+    var TemplateModel = class {
+      constructor(template) {
+        this.inner = bridge.WasmSemanticModel.parse(template.readBytes());
+      }
+      resources() {
+        return this.inner.resources();
+      }
+      parameters() {
+        return this.inner.parameters();
+      }
+      outputs() {
+        return this.inner.outputs();
+      }
+      conditions() {
+        return this.inner.conditions();
+      }
+      transforms() {
+        return this.inner.transforms();
+      }
+      formatVersion() {
+        return this.inner.formatVersion();
+      }
+      description() {
+        return this.inner.description();
+      }
+      toDiagnosticModel() {
+        return this.inner.toDiagnosticModel();
+      }
+      sourceLocation(path23) {
+        return this.inner.sourceLocation(path23);
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.TemplateModel = TemplateModel;
+    var SchemaValidator = class {
+      constructor(config) {
+        this.inner = new bridge.WasmSchemaValidator(toWasmSchemaValidatorConfig(config));
+      }
+      listRules() {
+        return this.inner.listRules();
+      }
+      schemaCount() {
+        return this.inner.schemaCount();
+      }
+      validate(template, region) {
+        const model = bridge.WasmSemanticModel.parse(template.readBytes());
+        try {
+          return this.inner.validate(model, region).diagnostics;
+        } finally {
+          model.free();
+        }
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.SchemaValidator = SchemaValidator;
+    function createEngineClass(WasmClass, toWasmConfig) {
+      return class {
+        constructor(config) {
+          this.inner = new WasmClass(toWasmConfig(config));
+        }
+        validateTemplate(template, config) {
+          return this.inner.validateTemplate(template.readBytes(), config ?? {}, templateLabel(template));
+        }
+        validateStandard(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "STANDARD" });
+        }
+        validateDetailed(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "DETAILED" });
+        }
+        validateAwsCliCommand(request2) {
+          if (!(request2 instanceof AwsCliCommand)) {
+            throw new TypeError("request must be an AwsCliCommand");
+          }
+          return fromWireAwsCliCommandValidation(this.inner.validateAwsCliCommand(toWireAwsCliCommand(request2)));
+        }
+        listRules() {
+          return this.inner.listRules();
+        }
+        engineName() {
+          return this.inner.engineName();
+        }
+        free() {
+          this.inner.free();
+        }
+      };
+    }
+    exports2.RegoEngine = createEngineClass(bridge.WasmRegoEngine, toWasmEngineConfig);
+    exports2.CelEngine = createEngineClass(bridge.WasmCelEngine, toWasmEngineConfig);
+    exports2.CompositeEngine = createEngineClass(bridge.WasmCompositeEngine, toWasmCompositeEngineConfig);
+    function version3() {
+      return bridge.version();
+    }
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts
+function mapSeverity(severity) {
+  switch (severity) {
+    // FIXME: Temporarily map FATAL to ERROR; FATALs are not suppressible but there are still a lot
+    // of false positives in the engine, and we cannot afford to accidentally present a customer with
+    // an accidentally unsupressible fatal.
+    case "FATAL":
+      return "error";
+    case "ERROR":
+      return "error";
+    case "WARN":
+      return "warning";
+    case "INFO":
+      return "informational";
+    case "DEBUG":
+      return "debug";
+    default:
+      return "warning";
+  }
+}
+function defaultRegoRules() {
+  const rulesDir = path14.join(__dirname, "rules");
+  return fs10.readdirSync(rulesDir).filter((f) => f.endsWith(".rego")).sort().map((f) => ({
+    name: f,
+    content: fs10.readFileSync(path14.join(rulesDir, f), "utf-8")
+  }));
+}
+function isContainedWithin(root, child) {
+  const rel = path14.relative(root, child);
+  return !rel.startsWith("..") && !path14.isAbsolute(rel);
+}
+function loadSchemasFromDirectory(dir) {
+  const schemas = [];
+  if (!fs10.existsSync(dir)) {
+    return schemas;
+  }
+  const rootReal = fs10.realpathSync(dir);
+  function walk(currentDir, depth) {
+    if (depth > MAX_SCHEMA_DIRECTORY_DEPTH) {
+      throw new UnscopedValidationError(
+        lit`SchemaLoadError`,
+        `[CloudFormation Validate] Schema directory exceeds maximum depth of ${MAX_SCHEMA_DIRECTORY_DEPTH}: ${currentDir}`
+      );
+    }
+    const entries = fs10.readdirSync(currentDir, { withFileTypes: true });
+    for (const entry of entries) {
+      const fullPath = path14.join(currentDir, entry.name);
+      if (entry.isSymbolicLink()) {
+        throw new UnscopedValidationError(
+          lit`SchemaLoadError`,
+          `[CloudFormation Validate] Symbolic link found in schema directory (not allowed): ${fullPath}`
+        );
+      }
+      if (entry.isDirectory()) {
+        const resolved = fs10.realpathSync(fullPath);
+        if (!isContainedWithin(rootReal, resolved)) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Path escapes schema root directory: ${fullPath} resolves to ${resolved}`
+          );
+        }
+        walk(fullPath, depth + 1);
+      } else if (entry.isFile() && entry.name.endsWith(".json")) {
+        const content = fs10.readFileSync(fullPath, "utf-8");
+        let parsed;
+        try {
+          parsed = JSON.parse(content);
+        } catch (e) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Invalid JSON in schema file: ${fullPath}: ${e}`
+          );
+        }
+        if (!parsed.typeName) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Schema file missing required "typeName" field: ${fullPath}`
+          );
+        }
+        schemas.push({
+          typeName: parsed.typeName,
+          schema: content
+        });
+      }
+    }
+  }
+  walk(rootReal, 0);
+  if (schemas.length > 0) {
+    const typeNames = schemas.map((s) => s.typeName).join(", ");
+    process.stderr.write(`[CloudFormation Validate] Loaded ${schemas.length} schema overlay(s): ${typeNames}
+`);
+  }
+  return schemas;
+}
+var fs10, path14, import_cloudformation_validate, VALIDATE_METRIC, DIAGNOSTICS_METRIC, CloudFormationValidatePlugin, IGNORE_RULES, MAX_SCHEMA_DIRECTORY_DEPTH;
+var init_cloudformation_validate_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts"() {
+    "use strict";
+    fs10 = __toESM(require("fs"));
+    path14 = __toESM(require("path"));
+    import_cloudformation_validate = __toESM(require_cloudformation_validate());
+    init_errors();
+    init_literal_string();
+    init_perf();
+    VALIDATE_METRIC = "CloudFormationValidate.validate";
+    DIAGNOSTICS_METRIC = "CloudFormationValidate.diagnostics";
+    CloudFormationValidatePlugin = class _CloudFormationValidatePlugin {
+      /**
+       * The default name of this plugin
+       */
+      static PLUGIN_NAME = "CloudFormation Validate";
+      /**
+       * Return a global singleton instance of this plugin.
+       *
+       * This is used because initializing the engine is somewhat expensive, which makes
+       * a noticeable difference in tests.
+       *
+       * @internal
+       */
+      static _singletonInstance() {
+        if (!_CloudFormationValidatePlugin._instance) {
+          _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin();
+        }
+        return _CloudFormationValidatePlugin._instance;
+      }
+      /**
+       * Pre-configure the singleton with specific props before first access.
+       * Used by test infrastructure to inject schema overlays without per-App registration.
+       *
+       * Must be called before any App synthesis triggers `_singletonInstance()`.
+       * Calling this when a singleton already exists replaces it.
+       *
+       * @internal
+       */
+      static _configureSingleton(props) {
+        _CloudFormationValidatePlugin._disposeSingleton();
+        _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin(props);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory and forget the instance
+       *
+       * @internal
+       */
+      static _disposeSingleton() {
+        _CloudFormationValidatePlugin._instance?._dispose();
+        _CloudFormationValidatePlugin._instance = void 0;
+      }
+      static _instance;
+      name = _CloudFormationValidatePlugin.PLUGIN_NAME;
+      engine;
+      disposed = false;
+      constructor(props = {}) {
+        const config = {};
+        const regoRules = [
+          ...props.includeDefaultRules ?? true ? defaultRegoRules() : [],
+          ...props.regoRules ?? []
+        ];
+        if (regoRules.length > 0) {
+          config.regoRules = regoRules;
+        }
+        if (props.guardRules) {
+          config.guardRules = props.guardRules;
+        }
+        if (props._additionalSchemasDirectory) {
+          config.schemaValidatorConfig = {
+            additionalSchemas: loadSchemasFromDirectory(props._additionalSchemasDirectory)
+          };
+        }
+        this.engine = new import_cloudformation_validate.CompositeEngine(config);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory
+       *
+       * @internal
+       */
+      _dispose() {
+        if (this.disposed) {
+          return;
+        }
+        this.disposed = true;
+        this.engine.free();
+      }
+      get version() {
+        return (0, import_cloudformation_validate.version)();
+      }
+      get ruleIds() {
+        return this.engine.listRules().filter((r) => !IGNORE_RULES.has(r.id) && r.severity !== "INFO" && r.severity !== "DEBUG").map((r) => r.id);
+      }
+      validate(context) {
+        const violations = [];
+        for (const { stackConstructPath, templatePath, accountId, region } of context.stackTemplates) {
+          const templateFile = new import_cloudformation_validate.TemplateFile(templatePath);
+          const report = (() => {
+            var _stack = [];
+            try {
+              const _span = __using(_stack, profileSpan(VALIDATE_METRIC, { telemetry: true }));
+              return this.engine.validateTemplate(templateFile, {
+                detailLevel: "STANDARD",
+                pseudoParameterOverrides: {
+                  accountId,
+                  region
+                },
+                exclude: {
+                  ids: [...IGNORE_RULES],
+                  services: [{
+                    // CDK still synthesizes AWS::AutoScaling::LaunchConfiguration for applications using
+                    // the legacy launch-configuration behavior. Auto Scaling remains deployable despite
+                    // its maintenance-mode classification, so suppress only its W3697 lifecycle warning
+                    // rather than hiding lifecycle findings for every service.
+                    // 
+                    ruleId: "W3697",
+                    service: "AWS::AutoScaling"
+                  }]
+                },
+                severityLevel: "WARN"
+              });
+            } catch (_) {
+              var _error = _, _hasError = true;
+            } finally {
+              __callDispose(_stack, _error, _hasError);
+            }
+          })();
+          recordPerformanceEntry(DIAGNOSTICS_METRIC, {
+            count: report.diagnostics.length,
+            telemetry: true
+          });
+          const diagnosticsBySeverity = /* @__PURE__ */ new Map();
+          for (const diagnostic of report.diagnostics) {
+            diagnosticsBySeverity.set(diagnostic.severity, (diagnosticsBySeverity.get(diagnostic.severity) ?? 0) + 1);
+          }
+          for (const [severity, count2] of diagnosticsBySeverity) {
+            recordPerformanceEntry(`${DIAGNOSTICS_METRIC}.${severity}`, {
+              count: count2,
+              telemetry: true
+            });
+          }
+          for (const diagnostic of report.diagnostics) {
+            const severity = mapSeverity(diagnostic.severity);
+            const resourceLogicalId = diagnostic.entity?.entityType === "Resource" ? diagnostic.entity.logicalId : void 0;
+            const violatingResource = {
+              resourceLogicalId,
+              // If this is not about any resources, best we can do is point it to the stack
+              constructPath: !resourceLogicalId ? stackConstructPath : void 0,
+              templatePath,
+              locations: diagnostic.propertyPath ? [diagnostic.propertyPath] : []
+            };
+            const propertyPathPefix = diagnostic.propertyPath ? `${diagnostic.propertyPath.replace(/^Properties\./, "")}: ` : "";
+            const description = `${propertyPathPefix}${diagnostic.message}`;
+            const existing = violations.find(
+              (v) => v.ruleName === diagnostic.ruleId && v.severity === severity && v.description === description
+            );
+            if (existing) {
+              existing.violatingResources.push(violatingResource);
+            } else {
+              violations.push({
+                ruleName: diagnostic.ruleId,
+                description,
+                severity,
+                fix: diagnostic.suggestedFix,
+                violatingResources: [violatingResource],
+                ruleMetadata: diagnostic.category ? { category: diagnostic.category } : void 0
+              });
+            }
+          }
+        }
+        return {
+          success: violations.every((v) => v.severity !== "error" && v.severity !== "fatal"),
+          violations
+        };
+      }
+    };
+    IGNORE_RULES = /* @__PURE__ */ new Set([
+      // WHAT: 'DependsOn' already implied by a 'GetAtt', remove the DependsOn.
+      // WHY: CDK adds both. It doesn't hurt to have both, and it's more effort to remove them.
+      // Will be silenced forever.
+      "W3005",
+      // WHAT: Optimize the format string of Fn::Sub
+      // WHY: CDK is generating these, humans are not authoring them.
+      // Will be silenced forever.
+      "W1020",
+      // WHAT: Fn::GetStackOutput is not an allowed direct source for Fn::Split.
+      // WHY: CDK generates this nesting when deserializing weak string-list cross-stack references,
+      // and customers cannot control the generated expression.
+      // https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-split.html
+      "E1018",
+      // WHAT: Hardcoded ARNs
+      // WHY: Hardcoding an ARN is part of the behavior of some constructs (e.g., setting up multi-account DynamoDB table replicas)
+      "W9002",
+      // WHAT: Hardcoded account IDs in ARNs
+      // WHY: Hardcoding an account ID in ARNs is commonly done in CDK when we are setting up large applications that
+      // span accounts.
+      "W9013",
+      // WHAT: built-in function not recognized
+      // WHY: there are intrinsic functions that the plugin doesn't know about that are nevertheless valid.
+      // This diagnostic is intended to protect against typos in templates, but since the intrinsics
+      // are generated by CDK the chances of mistyping them is tiny, and so this diagnostic is more verbose
+      // than it's worth.
+      "W1103"
+    ]);
+    MAX_SCHEMA_DIRECTORY_DEPTH = 5;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts
+function propertyAssignmentMatchesPropertyPath(meta, propertyPath) {
+  return propertyPath === `Properties.${meta.data.propertyName}` || propertyPath.startsWith(`Properties.${meta.data.propertyName}.`);
+}
+function isPropertyMutationMetadataEntry(entry) {
+  return entry.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT;
+}
+var import_cloud_assembly_schema2, ConstructTree, STACK_TRACE_HINT;
+var init_construct_tree = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts"() {
+    "use strict";
+    import_cloud_assembly_schema2 = __toESM(require_lib2());
+    init_app2();
+    init_cfn_resource();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_runtime_info();
+    ConstructTree = class {
+      /**
+       * A cache of the ConstructTrace by node.path. Each construct
+       */
+      _constructByPath = /* @__PURE__ */ new Map();
+      _constructByTemplatePathAndLogicalId = /* @__PURE__ */ new Map();
+      root;
+      constructor(root) {
+        this.root = App.of(root) ?? root;
+        this._constructByPath.set(this.root.node.path, root);
+        for (const child of iterateDfsPreorder(this.root)) {
+          this._constructByPath.set(child.node.path, child);
+          const defaultChild = child.node.defaultChild;
+          if (defaultChild && CfnResource.isCfnResource(defaultChild)) {
+            const stack = stackOf(defaultChild);
+            const logicalId = stack.resolve(defaultChild.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+        for (const child of iterateDfsPreorder(this.root)) {
+          if (CfnResource.isCfnResource(child)) {
+            const stack = stackOf(child);
+            const logicalId = stackOf(child).resolve(child.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+      }
+      setLogicalId(stack, logicalId, child) {
+        if (!this._constructByTemplatePathAndLogicalId.has(stack.templateFile)) {
+          this._constructByTemplatePathAndLogicalId.set(stack.templateFile, /* @__PURE__ */ new Map([[logicalId, child]]));
+        } else {
+          this._constructByTemplatePathAndLogicalId.get(stack.templateFile)?.set(logicalId, child);
+        }
+      }
+      /**
+       * Turn a construct path into a trace
+       *
+       * The trace contains all constructs from the root to the construct indicated
+       * by the given path. It does not include the root itself.
+       */
+      traceFromPath(constructPath) {
+        const components = constructPath.replace(/^\//, "").split("/");
+        const rootPath = [];
+        const stackTraces = [];
+        let node = this.root;
+        while (node) {
+          rootPath.push(this.constructTraceLevelFromTreeNode(node));
+          stackTraces.push(this.creationTrace(node)?.split("\n"));
+          const component = components.shift();
+          node = component !== void 0 ? node.node.tryFindChild(component) : void 0;
+        }
+        rootPath.shift();
+        stackTraces.shift();
+        let ret = {
+          ...rootPath[rootPath.length - 1],
+          location: stackLocationAt(rootPath.length - 1)
+        };
+        for (let i = rootPath.length - 2; i >= 0; i--) {
+          ret = {
+            ...rootPath[i],
+            child: ret,
+            location: stackLocationAt(i)
+          };
+        }
+        return ret;
+        function stackLocationAt(i) {
+          let j = i;
+          while (j < rootPath.length && !stackTraces[j]) {
+            j++;
+          }
+          if (j === rootPath.length) {
+            return STACK_TRACE_HINT;
+          }
+          return stackTraces[j]?.[0 + j - i] ?? STACK_TRACE_HINT;
+        }
+      }
+      constructTraceLevelFromConstructPath(constructPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return void 0;
+        }
+        return this.constructTraceLevelFromTreeNode(construct);
+      }
+      /**
+       * Convert a Tree Metadata Node into a ConstructTrace object, except its child and stack trace info
+       *
+       * FIXME: This could probably use the construct tree directly.
+       */
+      constructTraceLevelFromTreeNode(node) {
+        const constructInfo = constructInfoFromConstruct(node);
+        return {
+          id: node.node.id,
+          path: node.node.path,
+          construct: constructInfo?.fqn,
+          libraryVersion: constructInfo?.version
+        };
+      }
+      creationTraceByPath(path23) {
+        const construct = this.getConstructByPath(path23);
+        if (!construct) {
+          return void 0;
+        }
+        return this.creationTrace(construct);
+      }
+      /**
+       * Return the stack trace for a given construct path
+       *
+       * Returns a stack trace if stack trace information is found, or `undefined` if not.
+       */
+      creationTrace(construct) {
+        return construct?.node.metadata.find((meta) => meta.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.CREATION_STACK)?.data?.join("\n");
+      }
+      mutationTracesByPath(constructPath, propertyPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return [];
+        }
+        return this.mutationTraces(construct, propertyPath);
+      }
+      /**
+       * Return mutation traces for the given construct and property path
+       *
+       * The `propertyPath` must start with `Properties.`, and can contain nested properties, e.g. `Properties.MyProperty.NestedProperty`.
+       * We will report the best information that we have.
+       */
+      mutationTraces(construct, propertyPath) {
+        return construct?.node.metadata.filter(isPropertyMutationMetadataEntry).filter((meta) => propertyAssignmentMatchesPropertyPath(meta, propertyPath)).map((meta) => meta.data.stackTrace.join("\n"));
+      }
+      /**
+       * Get a specific Construct by the node.addr
+       *
+       * @param path the node.addr of the construct
+       * @returns the Construct
+       */
+      getConstructByPath(path23) {
+        return this._constructByPath.get(path23);
+      }
+      /**
+       * Get a specific Construct by the CfnResource logical ID. This will
+       * be the construct.node.defaultChild with the given ID
+       *
+       * @param logicalId the ID of the CfnResource
+       * @returns the Construct
+       */
+      getConstructByLogicalId(templateFile, logicalId) {
+        return this._constructByTemplatePathAndLogicalId.get(templateFile)?.get(logicalId);
+      }
+    };
+    STACK_TRACE_HINT = "Run with '--debug' to include location info";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/color.ts
+var Col, Colorize;
+var init_color = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/color.ts"() {
+    "use strict";
+    Col = class {
+      static RED = "31";
+      static ORANGE = "38;5;208";
+      static YELLOW = "33";
+      static BLUE = "34";
+      static BOLD = "1";
+      static UNDERLINE = "4";
+      static GREY = "90";
+    };
+    Colorize = class _Colorize {
+      static red(str) {
+        return _Colorize.colorize(Col.RED, str);
+      }
+      static orange(str) {
+        return _Colorize.colorize(Col.ORANGE, str);
+      }
+      static yellow(str) {
+        return _Colorize.colorize(Col.YELLOW, str);
+      }
+      static blue(str) {
+        return _Colorize.colorize(Col.BLUE, str);
+      }
+      static grey(str) {
+        return _Colorize.colorize(Col.GREY, str);
+      }
+      static bold(str) {
+        return _Colorize.colorize(Col.BOLD, str);
+      }
+      static underline(str) {
+        return _Colorize.colorize(Col.UNDERLINE, str);
+      }
+      static colorize(col, str) {
+        if (process.env.FORCE_COLOR === "0" || process.env.NO_COLOR || !process.stdout.isTTY || !process.stderr.isTTY) {
+          return str;
+        }
+        return `\x1B[${col}m${str}\x1B[0m`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/trace.ts
+var STARTER_LINE, VERTICAL_LINE, ReportTrace;
+var init_trace = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/trace.ts"() {
+    "use strict";
+    STARTER_LINE = "\u2514\u2500\u2500 ";
+    VERTICAL_LINE = "\u2502";
+    ReportTrace = class {
+      constructor(tree) {
+        this.tree = tree;
+      }
+      tree;
+      /**
+       * Return a JSON representation of the construct trace
+       */
+      formatJson(constructPath) {
+        return this.tree.traceFromPath(constructPath);
+      }
+      /**
+       * This will render something like this:
+       *
+       *   Creation Stack:
+       *     └──  MyStack (MyStack)
+       *          │ Library: aws-cdk-lib.Stack
+       *          │ Library Version: 2.50.0
+       *          │ Location: Object. (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:25:20)
+       *          └──  MyCustomL3Construct (MyStack/MyCustomL3Construct)
+       *               │ Library: N/A - (Local Construct)
+       *               │ Library Version: N/A
+       *               │ Location: new MyStack (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:15:20)
+       *               └──  Bucket (MyStack/MyCustomL3Construct/Bucket)
+       *                    │ Library: aws-cdk-lib/aws-s3.Bucket
+       *                    │ Library Version: 2.50.0
+       *                    │ Location: new MyCustomL3Construct (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:9:20)/
+       */
+      formatPrettyPrinted(constructPath) {
+        const trace = constructPath ? this.formatJson(constructPath) : void 0;
+        return this.renderPrettyPrintedTraceInfo(trace);
+      }
+      renderPrettyPrintedTraceInfo(info, indent, start = STARTER_LINE) {
+        const notAvailableMessage = "	Construct trace not available. Rerun with `--debug` to see trace information";
+        if (info) {
+          const indentation = indent ?? " ".repeat(STARTER_LINE.length + 1);
+          const result = [
+            `${start} ${info?.id} (${info?.path})`,
+            `${indentation}${VERTICAL_LINE} Construct: ${info?.construct}`,
+            `${indentation}${VERTICAL_LINE} Library Version: ${info?.libraryVersion}`,
+            `${indentation}${VERTICAL_LINE} Location: ${info?.location}`,
+            ...info?.child ? [this.renderPrettyPrintedTraceInfo(info?.child, " ".repeat(indentation.length + STARTER_LINE.length + 1), indentation + STARTER_LINE)] : []
+          ];
+          return result.join("\n	");
+        }
+        return notAvailableMessage;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/report.ts
+var init_report = __esm({
+  "../../aws-cdk-lib/core/lib/validation/report.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/report.ts
+function normalizeSeverity(severity) {
+  if (!severity) {
+    return { severity: "error" };
+  }
+  const lower = severity.toLowerCase();
+  if (KNOWN_SEVERITIES.has(lower)) {
+    return { severity: lower };
+  }
+  return { severity: "custom", customSeverity: severity };
+}
+function mkPluginFailure(plugin, e) {
+  return {
+    success: false,
+    pluginName: plugin.name,
+    pluginVersion: plugin.version,
+    violations: [],
+    metadata: {
+      error: `Validation plugin '${plugin.name}' failed: ${e.message}`
+    }
+  };
+}
+function isSuppressibleViolation(violation) {
+  const isFatal = violation.severity?.toLowerCase() === "fatal";
+  const isErrorAnnotation = violation.ruleMetadata?.["cdk:annotation"] && violation.severity?.toLowerCase() === "error";
+  return !isFatal && !isErrorAnnotation;
+}
+var PolicyValidationReportFormatter, KNOWN_SEVERITIES, ExtraObjectData;
+var init_report2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/report.ts"() {
+    "use strict";
+    init_trace();
+    init_report();
+    PolicyValidationReportFormatter = class {
+      constructor(tree) {
+        this.tree = tree;
+        this.reportTrace = new ReportTrace(tree);
+      }
+      tree;
+      reportTrace;
+      formatLegacyJson(reps) {
+        return {
+          title: "Validation Report",
+          pluginReports: reps.filter((rep) => !rep.success || rep.violations.length > 0).map((rep) => ({
+            version: rep.pluginVersion,
+            summary: {
+              pluginName: rep.pluginName,
+              status: rep.success ? "success" /* SUCCESS */ : "failure" /* FAILURE */,
+              metadata: rep.metadata
+            },
+            violations: rep.violations.map((violation) => ({
+              ruleName: violation.ruleName,
+              description: violation.description,
+              fix: violation.fix,
+              ruleMetadata: violation.ruleMetadata,
+              severity: violation.severity,
+              violatingResources: violation.violatingResources,
+              violatingConstructs: violation.violatingResources.map((resource) => {
+                const constructPath = resource.constructPath;
+                return {
+                  constructStack: constructPath ? this.reportTrace.formatJson(constructPath) : void 0,
+                  constructPath,
+                  locations: resource.locations,
+                  resourceLogicalId: resource.resourceLogicalId ?? "N/A",
+                  templatePath: resource.templatePath ?? "N/A"
+                };
+              })
+            }))
+          }))
+        };
+      }
+      formatJson(reps, schemaVersion, stackTraces, suppressedByReport) {
+        return {
+          version: schemaVersion,
+          title: "Validation Report",
+          pluginReports: this.buildPluginReports(reps, stackTraces, suppressedByReport)
+        };
+      }
+      buildPluginReports(reps, stackTraces, suppressedByReport) {
+        const results = [];
+        for (let idx = 0; idx < reps.length; idx++) {
+          const rep = reps[idx];
+          const suppressed = suppressedByReport?.get(idx);
+          if (rep.success && rep.violations.length === 0 && !suppressed) continue;
+          results.push({
+            pluginName: rep.pluginName,
+            pluginVersion: rep.pluginVersion,
+            conclusion: rep.success ? "success" : "failure",
+            metadata: rep.metadata,
+            violations: rep.violations.map((violation) => this.formatViolationJson(violation, stackTraces)),
+            suppressedViolations: suppressed ? suppressed.map((sv) => this.formatSuppressedViolationJson(sv, stackTraces)) : void 0
+          });
+        }
+        return results;
+      }
+      formatViolationJson(violation, stackTraces) {
+        const severity = normalizeSeverity(violation.severity);
+        return {
+          ruleName: violation.ruleName,
+          description: violation.description,
+          suggestedFix: violation.fix,
+          severity: severity.severity,
+          customSeverity: severity.customSeverity,
+          ruleMetadata: violation.ruleMetadata,
+          violatingConstructs: violation.violatingResources.map((resource) => {
+            let constructPath = resource.constructPath;
+            const constructInfo = constructPath ? this.tree.constructTraceLevelFromConstructPath(constructPath) : void 0;
+            const result = {
+              // The constructPath is not optional in the output JSON, so put an empty string here if we don't have it.
+              constructPath: constructPath ?? "",
+              constructFqn: constructInfo?.construct,
+              libraryVersion: constructInfo?.libraryVersion,
+              cloudFormationResource: resource.resourceLogicalId && resource.templatePath ? {
+                templatePath: resource.templatePath,
+                logicalId: resource.resourceLogicalId,
+                propertyPaths: resource.locations.length > 0 ? resource.locations : void 0
+              } : void 0,
+              stackTraces: stackTraces.get(resource)
+            };
+            return result;
+          })
+        };
+      }
+      formatSuppressedViolationJson(sv, stackTraces) {
+        const base = this.formatViolationJson(sv, stackTraces);
+        return {
+          ...base,
+          acknowledgedId: sv.acknowledgedId,
+          reason: sv.reason || void 0,
+          acknowledgedAt: sv.acknowledgedAt || void 0,
+          acknowledgedStackTrace: sv.acknowledgedStackTrace || void 0
+        };
+      }
+    };
+    KNOWN_SEVERITIES = /* @__PURE__ */ new Set(["fatal", "error", "warning", "info"]);
+    ExtraObjectData = class {
+      extra = /* @__PURE__ */ new WeakMap();
+      constructor() {
+      }
+      attach(obj, data) {
+        this.extra.set(obj, data);
+      }
+      get(obj) {
+        return this.extra.get(obj);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts
+function formatValidationReports(fileRoot, reports, frameFinder) {
+  const successfullyExecutedPlugins = reports.filter((r) => isPluginFailure(r) === void 0);
+  const pluginFailures = reports.map(isPluginFailure).filter((e) => e !== void 0);
+  const violations = flattenViolations(successfullyExecutedPlugins);
+  violations.sort((a, b) => {
+    const aOrder = SEVERITY_ORDER[a.severity.toLowerCase()] ?? 4;
+    const bOrder = SEVERITY_ORDER[b.severity.toLowerCase()] ?? 4;
+    return aOrder - bOrder;
+  });
+  return [
+    ...pluginFailures.map(formatPluginFailure),
+    ...violations.map((v) => formatViolationBlock(fileRoot, v, frameFinder))
+  ];
+}
+function flattenViolations(reports) {
+  return reports.flatMap((report) => {
+    const pluginName = report.pluginName;
+    return report.violations.flatMap((violation) => {
+      return violation.violatingConstructs.map((construct) => ({
+        severity: normalizeSeverity2(violation.severity),
+        description: violation.description,
+        ruleName: violation.ruleName,
+        pluginName,
+        construct,
+        suggestedFix: violation.suggestedFix,
+        ruleMetadata: violation.ruleMetadata
+      }));
+    });
+  });
+}
+function normalizeSeverity2(severity) {
+  switch (severity?.toLowerCase()) {
+    case "fatal":
+      return "FATAL";
+    case "error":
+      return "ERROR";
+    case "warning":
+      return "WARNING";
+    case "info":
+      return "INFO";
+  }
+  if (!severity) return "WARNING";
+  return sanitize(severity);
+}
+function formatViolationBlock(fileRoot, v, frameFinder) {
+  const lines = [];
+  const locations = sourceLocations(fileRoot, v.construct.stackTraces, frameFinder);
+  const maxTraces = 5;
+  let additional = false;
+  for (const location of locations.slice(0, maxTraces)) {
+    lines.push(`${additional ? "or " : ""}${Colorize.underline(sanitize(location))}`);
+    additional = true;
+  }
+  if (locations.length > maxTraces) {
+    lines.push(Colorize.grey(`(and ${locations.length - maxTraces} more...)`));
+  }
+  const pluginNs = namespaceFromPluginName(v.pluginName);
+  const parsed = parseValidationId(v.ruleName);
+  lines.push([
+    Colorize.bold(getSeverityColor(v.severity)(sanitize(v.severity))),
+    Colorize.bold(stripAckTag(sanitize(v.description))),
+    Colorize.grey(`(${sanitize(parsed.namespace ? pluginNameFromNamespace(parsed.namespace) : v.pluginName)})`)
+  ].join(" "));
+  const constructInfo = formatConstructInfo(fileRoot, v.construct);
+  lines.push(`   ${constructInfo}`);
+  if (v.suggestedFix) {
+    lines.push(`   Suggested fix: ${sanitize(v.suggestedFix).replace(/\n/g, "\n   ")}`);
+  }
+  const ackId = normalizeValidationId(v.ruleName, pluginNs);
+  if (isSuppressibleViolation(v)) {
+    lines.push(`   ${Colorize.grey(`Acknowledge with '${sanitize(ackId)}'`)}`);
+  } else {
+    lines.push(`   ${Colorize.grey(`Rule ${sanitize(ackId)}`)}`);
+  }
+  return lines.join("\n");
+}
+function getSeverityColor(severity) {
+  switch (severity.toLowerCase()) {
+    case "fatal":
+      return Colorize.red;
+    case "error":
+      return Colorize.orange;
+    case "warning":
+      return Colorize.yellow;
+    default:
+      return Colorize.blue;
+  }
+}
+function formatConstructInfo(fileRoot, construct) {
+  const parts = [];
+  const logicalId = sanitize(construct.cloudFormationResource?.logicalId);
+  if (construct.constructPath) {
+    const cPath = sanitize(construct.constructPath);
+    parts.push(logicalId ? `${Colorize.bold(cPath)} (${logicalId})` : Colorize.bold(cPath));
+  } else {
+    if (construct.cloudFormationResource?.templatePath) {
+      parts.push(humanFriendlyFilename(fileRoot, sanitize(construct.cloudFormationResource.templatePath)));
+    }
+    if (logicalId) {
+      parts.push(Colorize.bold(logicalId));
+    }
+  }
+  if (construct.constructFqn) {
+    parts.push(Colorize.grey(sanitize(construct.constructFqn)));
+  }
+  return parts.join(" ");
+}
+function stripAckTag(description) {
+  return description.replace(/\s*\[ack:\s*[^\]]+\]\s*/g, "").trim();
+}
+function sourceLocations(fileRoot, stackTraces, frameFinder) {
+  const ret = [];
+  for (const trace of stackTraces ?? []) {
+    const frame = topUserFrame(trace.split("\n"), frameFinder);
+    if (frame && frame.fileName) {
+      const candidate = `${humanFriendlyFilename(fileRoot, frame.fileName)}:${frame.sourceLocation}`;
+      if (!ret.includes(candidate)) {
+        ret.push(candidate);
+      }
+    }
+  }
+  return ret;
+}
+function formatPluginFailure(f) {
+  return `${Colorize.orange("ERROR")} ${sanitize(f.error)}`;
+}
+function sanitize(s) {
+  return (s ?? "").replace(CONTROL_CHARS, "\uFFFD");
+}
+function humanFriendlyFilename(root, filename) {
+  const absPath = filename;
+  const relPath = import_path2.default.relative(root, filename);
+  return relPath.length < absPath.length ? relPath : absPath;
+}
+function isPluginFailure(r) {
+  if (r.conclusion === "success" || r.violations.length > 0 || !r.metadata?.error) {
+    return void 0;
+  }
+  return { error: r.metadata.error };
+}
+function stripAnsi(x) {
+  const pattern = [
+    "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
+    "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
+  ].join("|");
+  const re = new RegExp(pattern, "g");
+  return x.replaceAll(re, "");
+}
+var import_path2, CONTROL_CHARS, SEVERITY_ORDER;
+var init_modern_formatter = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts"() {
+    "use strict";
+    import_path2 = __toESM(require("path"));
+    init_color();
+    init_report2();
+    init_validation_id();
+    init_stack_trace();
+    CONTROL_CHARS = /[\x00-\x08\x0B-\x1F\x7F\x9B]/g;
+    SEVERITY_ORDER = {
+      fatal: 0,
+      error: 1,
+      warning: 2,
+      info: 3
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis-validation.ts
+function validateTemplates(root, outdir, assembly) {
+  var _stack = [];
+  try {
+    if (!App.isApp(root)) return;
+    const _span = __using(_stack, profileSpan("validateTemplates", { telemetry: true }));
+    const assemblies = getAssemblies(root, assembly);
+    const stacksByPlugin = /* @__PURE__ */ new Map();
+    visitAssemblies(root, "post", (construct) => {
+      if (STAGE_TYPE.isMarked(construct)) {
+        const stageAssembly = assemblies.get(construct.artifactId);
+        if (!stageAssembly) throw new AssumptionError(lit`ValidationFailed`, `Validation failed, cannot find cloud assembly for stage ${construct.stageName}`);
+        const plugins = pluginsToEvaluate(root, construct);
+        for (const plugin of plugins) {
+          if (!stacksByPlugin.has(plugin)) {
+            stacksByPlugin.set(plugin, /* @__PURE__ */ new Set());
+          }
+          for (const stack of stageAssembly.stacksRecursively) {
+            stacksByPlugin.get(plugin).add(stack);
+          }
+        }
+      }
+    });
+    if (stacksByPlugin.size === 0) return;
+    const reports = doInvokeValidationPlugins(outdir, Array.from(stacksByPlugin), root);
+    const validateFlagExplicitlyEnabled = getBooleanContext(root, VALIDATE_AGAINST_DEFAULT_RULES, false);
+    let warningifiedAnyErrors = false;
+    if (!validateFlagExplicitlyEnabled) {
+      warningifiedAnyErrors = downgradeCfnValidateErrorsToWarnings(reports);
+    }
+    const tree = new ConstructTree(root);
+    inferConstructPathsFromLogicalIds(reports, tree);
+    const stackTraces = collectViolationStackTraces(reports, tree);
+    const suppressedByReport = collectSuppressions(root, reports);
+    const formatter = new PolicyValidationReportFormatter(new ConstructTree(root));
+    const reportJson = formatter.formatJson(reports, assembly.version, stackTraces, suppressedByReport);
+    const reportFile = path16.join(assembly.directory, VALIDATION_REPORT_FILE);
+    fs11.writeFileSync(reportFile, JSON.stringify(reportJson, void 0, 2));
+    if (getBooleanContext(root, VALIDATION_REPORT_JSON_CONTEXT, false)) {
+      fs11.writeFileSync(
+        path16.join(assembly.directory, LEGACY_POLICY_VALIDATION_FILE_PATH),
+        JSON.stringify(formatter.formatLegacyJson(reports), void 0, 2)
+      );
+    }
+    const cdkAppHandlesValidationReporting = getBooleanContext(root, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true);
+    const appMode = cdkAppMode(root);
+    const constructLibStrictMode = getBooleanContext(root, STRICT_CFN_VALIDATE_ERRORS, false);
+    const validationFails = reports.some((r) => !r.success) || constructLibStrictMode && reports.some((r) => r.violations.some((v) => v.severity === "warning"));
+    const reportText = formatValidationReports(process.cwd(), reportJson.pluginReports, DEFAULT_STACK_FRAME_FINDER);
+    const reportPath = humanFriendlyFilename(process.cwd(), reportFile);
+    let preamble = "";
+    if (warningifiedAnyErrors) {
+      if (constructLibStrictMode) {
+        preamble = "[Warning] Template validation found issues in your templates. Construct library strict mode considers these errors.";
+      } else {
+        preamble = `[Warning] Template validation found issues in your templates (reported as warnings).
+Set feature flag "${VALIDATE_AGAINST_DEFAULT_RULES}" to true to turn these into errors.`;
+      }
+    }
+    if (reportText.length === 0) {
+      return;
+    }
+    if (cdkAppHandlesValidationReporting) {
+      const throwException = validationFails && (appMode === "inmemory" || appMode === "unknown");
+      const exceptionContainsReport = appMode === "inmemory";
+      const fullMessage = [];
+      if (preamble) {
+        fullMessage.push(preamble);
+      }
+      fullMessage.push(...reportText);
+      fullMessage.push(`A copy of this report can be found in: ${reportPath}`);
+      if (throwException && exceptionContainsReport) {
+        throw new UnscopedValidationError(lit`ValidationFailed`, stripAnsi(fullMessage.join("\n\n")));
+      } else if (throwException && !exceptionContainsReport) {
+        console.error([
+          ...preamble ? [preamble] : [],
+          ...reportText
+        ].join("\n\n"));
+        throw new UnscopedValidationError(lit`ValidationFailed`, `Validation failed. A copy of this report can be found in: ${reportPath}`);
+      } else {
+        console.error(fullMessage.join("\n\n"));
+        if (validationFails) {
+          process.exitCode = 1;
+        }
+      }
+    } else {
+      if (preamble) {
+        console.error(preamble);
+      }
+    }
+  } catch (_) {
+    var _error = _, _hasError = true;
+  } finally {
+    __callDispose(_stack, _error, _hasError);
+  }
+}
+function getAssemblies(root, rootAssembly) {
+  const assemblies = /* @__PURE__ */ new Map();
+  assemblies.set(root.artifactId, rootAssembly);
+  visitAssemblies(root, "pre", (construct) => {
+    const stage = construct;
+    if (stage.parentStage && assemblies.has(stage.parentStage.artifactId)) {
+      assemblies.set(
+        stage.artifactId,
+        assemblies.get(stage.parentStage.artifactId).getNestedAssembly(stage.artifactId)
+      );
+    }
+  });
+  return assemblies;
+}
+function pluginsToEvaluate(root, stage) {
+  const ret = [];
+  ret.push(...stage._validationPlugins);
+  if (defaultValidationEnabled() && !hasUserRegisteredCloudFormationValidatePlugin(root)) {
+    ret.push(CloudFormationValidatePlugin._singletonInstance());
+  }
+  if (stage === root && FeatureFlags.of(root).isEnabled(ANNOTATIONS_IN_VALIDATION_REPORT)) {
+    const annotationsPlugin = collectAnnotationReport(stage);
+    if (annotationsPlugin) {
+      ret.push(annotationsPlugin);
+    }
+  }
+  return ret;
+}
+function defaultValidationEnabled() {
+  return process.env.CDK_VALIDATION !== "false";
+}
+function downgradeCfnValidateErrorsToWarnings(reports) {
+  let warningifiedAnyErrors = false;
+  for (const report of reports) {
+    if (report.pluginName !== CloudFormationValidatePlugin.PLUGIN_NAME) {
+      continue;
+    }
+    for (const v of report.violations) {
+      if (v.severity === "error" || v.severity === "fatal") {
+        mutable(v).severity = "warning";
+        warningifiedAnyErrors = true;
+      }
+    }
+    mutable(report).success = true;
+  }
+  return warningifiedAnyErrors;
+}
+function inferConstructPathsFromLogicalIds(reports, tree) {
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        if (!resource.constructPath && resource.templatePath && resource.resourceLogicalId) {
+          mutable(resource).constructPath = tree.getConstructByLogicalId(
+            path16.basename(resource.templatePath),
+            resource.resourceLogicalId
+          )?.node.path;
+        }
+      }
+    }
+  }
+}
+function collectSuppressions(root, reports) {
+  const suppressedByReport = /* @__PURE__ */ new Map();
+  const acknowledgedRules = collectAcknowledgedRules(root);
+  if (Object.keys(acknowledgedRules).length > 0) {
+    for (let i = 0; i < reports.length; i++) {
+      const suppressed = suppressInReport(reports[i]);
+      if (suppressed.length > 0) {
+        suppressedByReport.set(i, suppressed);
+        mutable(reports[i]).success = reports[i].violations.every((v) => v.severity !== "error" && v.severity !== "fatal");
+      }
+    }
+  }
+  return suppressedByReport;
+  function suppressInReport(report) {
+    const ruleNamespace = namespaceFromPluginName(report.pluginName);
+    const ret = [];
+    for (let i = 0; i < report.violations.length; i++) {
+      const v = report.violations[i];
+      if (!isSuppressibleViolation(v)) {
+        continue;
+      }
+      const ruleName = normalizeValidationId(v.ruleName, ruleNamespace);
+      const pathBasedSuppressions = acknowledgedRules[ruleName];
+      if (!pathBasedSuppressions) {
+        continue;
+      }
+      const { suppressedGroups, unsuppressed } = groupResourcesBySuppressions(v.violatingResources, pathBasedSuppressions);
+      mutable(v).violatingResources = unsuppressed;
+      for (const suppressedGroup of suppressedGroups) {
+        ret.push({
+          ...v,
+          ...suppressedGroup.acknowledgement,
+          violatingResources: suppressedGroup.resources
+        });
+      }
+      if (v.violatingResources.length === 0) {
+        report.violations.splice(i, 1);
+        i--;
+      }
+    }
+    return ret;
+  }
+}
+function groupResourcesBySuppressions(resources, pathBasedSuppressions) {
+  const unsuppressed = [];
+  const suppressed = {};
+  for (const r of resources) {
+    const ack = findClosestAck(r);
+    if (ack) {
+      suppressed[ack.acknowledgedAt] ??= { acknowledgement: ack, resources: [] };
+      suppressed[ack.acknowledgedAt].resources.push(r);
+    } else {
+      unsuppressed.push(r);
+    }
+  }
+  return {
+    suppressedGroups: Object.values(suppressed),
+    unsuppressed
+  };
+  function findClosestAck(r) {
+    let constructPath = r.constructPath ?? "";
+    let ret = pathBasedSuppressions[constructPath];
+    while (ret === void 0 && constructPath !== "") {
+      const lastDot = constructPath.lastIndexOf("/");
+      if (lastDot === -1) {
+        constructPath = "";
+      } else {
+        constructPath = constructPath.substring(0, lastDot);
+      }
+      ret = pathBasedSuppressions[constructPath];
+    }
+    return ret;
+  }
+}
+function collectViolationStackTraces(reports, tree) {
+  const ret = new ExtraObjectData();
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        const constructPath = resource.constructPath;
+        if (!constructPath) {
+          continue;
+        }
+        const stacks = [];
+        const creationTrace = tree.creationTraceByPath(constructPath);
+        if (creationTrace) {
+          stacks.push(creationTrace);
+        }
+        stacks.push(...resource.locations.flatMap((location) => tree.mutationTracesByPath(constructPath, location)));
+        if (stacks.length > 0) {
+          ret.attach(resource, stacks);
+        }
+      }
+    }
+  }
+  return ret;
+}
+function doInvokeValidationPlugins(outdir, plugins, root) {
+  const untrustedPlugins = new Set(Array.from(plugins.values()).map((p) => p[0]).filter((p) => !isTrustedPlugin(p)));
+  const preExistingFileHashes = untrustedPlugins.size > 0 ? snapshotFileHashes(outdir) : void 0;
+  const ret = plugins.flatMap(([plugin, stacks]) => invokeSinglePlugin(plugin, Array.from(stacks)));
+  if (preExistingFileHashes) {
+    if (hasModifiedPreExistingFiles(preExistingFileHashes)) {
+      const pluginNames = Array.from(untrustedPlugins).map((p) => p.name);
+      throw new AssumptionError(lit`IllegalPluginOperation`, `One of the validation plugins (${pluginNames.join(", ")}) modified the cloud assembly`);
+    }
+  }
+  return ret;
+  function invokeSinglePlugin(plugin, stackArtifacts) {
+    if (stackArtifacts.length === 0) {
+      return [];
+    }
+    const stackTemplates = stackArtifacts.map((s) => ({
+      stackConstructPath: s.hierarchicalId,
+      templatePath: s.templateFullPath,
+      accountId: s.environment.account !== import_cloud_assembly_api.UNKNOWN_ACCOUNT ? s.environment.account : void 0,
+      region: s.environment.region !== import_cloud_assembly_api.UNKNOWN_REGION ? s.environment.region : void 0
+    }));
+    const accountId = stackTemplates.every((s) => s.accountId === stackTemplates[0].accountId) ? stackTemplates[0].accountId : void 0;
+    const region = stackTemplates.every((s) => s.region === stackTemplates[0].region) ? stackTemplates[0].region : void 0;
+    try {
+      const report = makeTemplatePathsRelative(plugin.validate({
+        templatePaths: stackTemplates.map((s) => s.templatePath),
+        stackTemplates,
+        appConstruct: root,
+        accountId,
+        region
+      }));
+      return [{ ...report, pluginName: plugin.name, pluginVersion: plugin.version }];
+    } catch (e) {
+      if (e instanceof AssumptionError && e.name === "IllegalPluginOperation") {
+        throw e;
+      }
+      return [mkPluginFailure(plugin, e)];
+    }
+  }
+  function makeTemplatePathsRelative(report) {
+    for (const v of report.violations) {
+      for (const r of v.violatingResources) {
+        if (r.templatePath) {
+          mutable(r).templatePath = path16.relative(outdir, path16.resolve(r.templatePath));
+        }
+      }
+    }
+    return report;
+  }
+}
+function isTrustedPlugin(x) {
+  return x instanceof CloudFormationValidatePlugin;
+}
+function visitAssemblies(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (!STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visitAssemblies(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+function getBooleanContext(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+function snapshotFileHashes(dir) {
+  const hashes = /* @__PURE__ */ new Map();
+  for (const filePath of collectFilePaths(dir)) {
+    hashes.set(filePath, hashFile(filePath));
+  }
+  return hashes;
+}
+function hasModifiedPreExistingFiles(snapshot) {
+  for (const [filePath, originalHash] of snapshot) {
+    if (!fileOrSymlinkExists(filePath) || hashFile(filePath) !== originalHash) {
+      return true;
+    }
+  }
+  return false;
+}
+function collectFilePaths(dir) {
+  const results = [];
+  function walk(current) {
+    for (const entry of fs11.readdirSync(current, { withFileTypes: true })) {
+      const full = path16.join(current, entry.name);
+      if (entry.isDirectory()) {
+        walk(full);
+      } else if (entry.isFile()) {
+        results.push(full);
+      } else if (entry.isSymbolicLink()) {
+        let st;
+        try {
+          st = fs11.lstatSync(full);
+        } catch {
+          continue;
+        }
+        if (st.isFile() || st.isSymbolicLink()) {
+          results.push(full);
+        }
+      }
+    }
+  }
+  walk(dir);
+  return results;
+}
+function hashFile(filePath) {
+  const content = fs11.lstatSync(filePath).isSymbolicLink() ? Buffer.from(fs11.readlinkSync(filePath)) : fs11.readFileSync(filePath);
+  return crypto7.createHash("sha256").update(content).digest("hex");
+}
+function fileOrSymlinkExists(p) {
+  try {
+    fs11.lstatSync(p);
+    return true;
+  } catch {
+    return false;
+  }
+}
+function hasUserRegisteredCloudFormationValidatePlugin(root) {
+  let count2 = 0;
+  visitAssemblies(root, "post", (construct) => {
+    if (!STAGE_TYPE.isMarked(construct)) return;
+    for (const plugin of construct._validationPlugins) {
+      if (!(plugin instanceof CloudFormationValidatePlugin)) continue;
+      if (construct !== root) {
+        throw new UnscopedValidationError(lit`CloudFormationValidatePluginNotAtApp`, "CloudFormationValidatePlugin can only be registered at the App level, not on a Stage");
+      }
+      count2++;
+    }
+  });
+  if (count2 > 1) {
+    throw new UnscopedValidationError(lit`DuplicateCloudFormationValidatePlugin`, "only one instance of CloudFormationValidatePlugin can be registered");
+  }
+  return count2 === 1;
+}
+function mutable(obj) {
+  return obj;
+}
+function cdkAppMode(root) {
+  const contextMode = root.node.tryGetContext(CDK_APP_MODE_CONTEXT);
+  if (contextMode === "process" || contextMode === "inmemory") {
+    return contextMode;
+  }
+  const envMode = process.env[CDK_APP_MODE_ENV];
+  if (envMode === "process" || envMode === "inmemory") {
+    return envMode;
+  }
+  if (process.env.NODE_ENV === "test" || process.env.PYTEST_VERSION || process.env.PYTEST_CURRENT_TEST) {
+    return "inmemory";
+  }
+  return "unknown";
+}
+var crypto7, fs11, path16, LEGACY_POLICY_VALIDATION_FILE_PATH;
+var init_synthesis_validation = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis-validation.ts"() {
+    "use strict";
+    crypto7 = __toESM(require("crypto"));
+    fs11 = __toESM(require("fs"));
+    path16 = __toESM(require("path"));
+    init_annotation_plugin();
+    init_collect_acknowledged_rule_ids();
+    init_literal_string();
+    init_cx_api();
+    init_app2();
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_perf();
+    init_stack_trace();
+    init_cloudformation_validate_plugin();
+    init_construct_tree();
+    init_modern_formatter();
+    init_report2();
+    init_validation_id();
+    LEGACY_POLICY_VALIDATION_FILE_PATH = "policy-validation-report.json";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tree.ts
+var TreeInspector;
+var init_tree = __esm({
+  "../../aws-cdk-lib/core/lib/tree.ts"() {
+    "use strict";
+    TreeInspector = class {
+      /**
+       * Represents the bag of attributes as key-value pairs.
+       */
+      attributes = {};
+      /**
+       * Adds attribute to bag. Keys should be added by convention to prevent conflicts
+       * i.e. L1 constructs will contain attributes with keys prefixed with aws:cdk:cloudformation
+       *
+       * @param key - key for metadata
+       * @param value - value of metadata.
+       */
+      addAttribute(key, value) {
+        this.attributes[key] = value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/tree-metadata.ts
+function nodeCount(root) {
+  let count2 = 0;
+  const stack = [root];
+  while (stack.length > 0) {
+    const current = stack.pop();
+    count2 += 1;
+    if (current.children) {
+      for (const child of Object.values(current.children)) {
+        stack.push(child);
+      }
+    }
+  }
+  return count2;
+}
+function setChild(parent, node) {
+  if (!parent.children) {
+    parent.children = {};
+  }
+  parent.children[node.id] = node;
+}
+var fs12, path17, import_constructs16, FILE_PATH, TreeMetadata, FragmentedTreeWriter;
+var init_tree_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/tree-metadata.ts"() {
+    "use strict";
+    fs12 = __toESM(require("fs"));
+    path17 = __toESM(require("path"));
+    import_constructs16 = __toESM(require_lib4());
+    init_runtime_info();
+    init_cloud_assembly_schema();
+    init_annotations();
+    init_tree();
+    init_construct_iteration();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    FILE_PATH = "tree.json";
+    TreeMetadata = class extends import_constructs16.Construct {
+      constructor(scope) {
+        super(scope, "Tree");
+      }
+      /**
+       * Create tree.json
+       * @internal
+       */
+      _synthesizeTree(session) {
+        const maxNodesPerTree = this.node.tryGetContext("@aws-cdk/core.TreeMetadata:maxNodes");
+        const builder = session.assembly;
+        const writer = new FragmentedTreeWriter(builder.outdir, FILE_PATH, { maxNodesPerTree });
+        for (const { construct, parent } of iterateBfs(this.node.root)) {
+          const node = {
+            id: construct.node.id || "App",
+            path: construct.node.path,
+            constructInfo: constructInfoFromConstruct(construct)
+          };
+          try {
+            node.attributes = this.synthAttributes(construct);
+          } catch (e) {
+            Annotations.of(this).addWarningV2(`@aws-cdk/core:failedToRenderTreeMetadata-${construct.node.id}`, `Failed to render tree metadata for node [${construct.node.id}]. Reason: ${e}`);
+          }
+          writer.addNode(construct, parent, node);
+        }
+        const rootFilename = writer.writeForest();
+        builder.addArtifact("Tree", {
+          type: cloud_assembly_schema_exports.ArtifactType.CDK_TREE,
+          properties: {
+            file: rootFilename
+          }
+        });
+      }
+      synthAttributes(construct) {
+        function canInspect2(inspectable) {
+          return inspectable.inspect !== void 0;
+        }
+        const inspector = new TreeInspector();
+        if (canInspect2(construct)) {
+          construct.inspect(inspector);
+          return stackOf(construct).resolve(inspector.attributes);
+        }
+        return void 0;
+      }
+    };
+    FragmentedTreeWriter = class {
+      constructor(outdir, rootFilename, options) {
+        this.outdir = outdir;
+        this.rootFilename = rootFilename;
+        this.maxNodes = options?.maxNodesPerTree ?? 5e5;
+      }
+      outdir;
+      rootFilename;
+      /**
+       * We only care about the identify of this object.
+       *
+       * Whatever tree in the forest is "pointed to" by this pointer is the main tree.
+       */
+      mainTreePointer = {
+        fileName: "yyy",
+        id: "id",
+        path: "path"
+      };
+      forest = new Array();
+      /**
+       * Maps a Construct to its respective Node
+       */
+      constructMap = /* @__PURE__ */ new Map();
+      /**
+       * Map a root Node to its containing Tree
+       */
+      subtreeRoots = /* @__PURE__ */ new Map();
+      /**
+       * Map a Node to its parent Node
+       */
+      parent = /* @__PURE__ */ new Map();
+      maxNodes;
+      /**
+       * Write the forest to disk, return the root file name
+       */
+      writeForest() {
+        const forestFiles = this.allocateSubTreesToForestFiles();
+        const mainTree = this.forest.find((t) => t.referencingNode === this.mainTreePointer);
+        if (mainTree) {
+          const treeFile = { version: "tree-0.1", tree: mainTree.root };
+          fs12.writeFileSync(path17.join(this.outdir, this.rootFilename), JSON.stringify(treeFile), { encoding: "utf-8" });
+        }
+        for (const forestFile of forestFiles) {
+          fs12.writeFileSync(path17.join(this.outdir, forestFile.fileName), JSON.stringify(forestFile.file), { encoding: "utf-8" });
+        }
+        return this.rootFilename;
+      }
+      /**
+       * Find all non-main tree and combine them into forest files
+       *
+       * This will mutate the pointing nodes as a side effect.
+       */
+      allocateSubTreesToForestFiles() {
+        const ret = new Array();
+        for (const tree of this.forest) {
+          if (tree.referencingNode === this.mainTreePointer) {
+            continue;
+          }
+          let targetForest;
+          if (ret.length === 0 || ret[ret.length - 1].nodeCount + tree.nodes > this.maxNodes) {
+            targetForest = {
+              fileName: `trees-${ret.length + 1}.json`,
+              file: { version: "forest-0.1", forest: {} },
+              nodeCount: 0,
+              treeCount: 0
+            };
+            ret.push(targetForest);
+          } else {
+            targetForest = ret[ret.length - 1];
+          }
+          const treeId = `t${targetForest.treeCount++}`;
+          targetForest.file.forest[treeId] = tree.root;
+          targetForest.nodeCount += tree.nodes;
+          tree.referencingNode.fileName = targetForest.fileName;
+          tree.referencingNode.treeId = treeId;
+        }
+        return ret;
+      }
+      addNode(construct, parent, node) {
+        if (parent === void 0) {
+          if (this.forest.length > 0) {
+            throw new AssumptionError(lit`OnlyOneNodeWithoutParent`, "Can only add exactly one node without a parent");
+          }
+          this.addNewTree(node, this.mainTreePointer);
+        } else {
+          const parentNode = this.constructMap.get(parent);
+          if (!parentNode) {
+            return;
+          }
+          this.addToExistingTree(node, parentNode);
+        }
+        this.constructMap.set(construct, node);
+      }
+      /**
+       * Add a new tree with the given Node as root
+       */
+      addNewTree(root, referencingNode) {
+        const tree = {
+          root,
+          referencingNode,
+          nodes: nodeCount(root)
+        };
+        this.forest.push(tree);
+        this.subtreeRoots.set(root, tree);
+        return tree;
+      }
+      /**
+       * Add the given node to an existing tree, potentially splitting it
+       */
+      addToExistingTree(node, parent) {
+        let tree = this.treeForNode(parent);
+        if (this.isTreeFull(tree)) {
+          const grandParent = this.parent.get(parent);
+          if (!grandParent) {
+            throw new AssumptionError(lit`CouldNotFindParent`, `Could not find parent of ${JSON.stringify(parent)}`);
+          }
+          const subtreeReference = {
+            id: parent.id,
+            path: parent.path,
+            fileName: "xxx"
+            // Will be replaced later
+          };
+          tree = this.addNewTree(parent, subtreeReference);
+          setChild(grandParent, subtreeReference);
+          this.subtreeRoots.set(parent, tree);
+        }
+        setChild(parent, node);
+        this.parent.set(node, parent);
+        tree.nodes += 1;
+      }
+      /**
+       * Whether the given tree is full
+       */
+      isTreeFull(t) {
+        return t.nodes >= this.maxNodes;
+      }
+      /**
+       * Return the Tree that contains the given Node
+       */
+      treeForNode(node) {
+        const tried = new Array();
+        let cur = node;
+        tried.push(cur.path);
+        let tree = this.subtreeRoots.get(cur);
+        while (!tree && cur) {
+          cur = this.parent.get(cur);
+          tried.push(cur?.path);
+          tree = cur && this.subtreeRoots.get(cur);
+        }
+        if (tree) {
+          return tree;
+        }
+        throw new AssumptionError(lit`CouldNotFindTreeForNode`, `Could not find tree for node: ${JSON.stringify(node)}, tried ${tried}`);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis.ts
+function synthesize(root, options = {}) {
+  injectTreeMetadata(root);
+  synthNestedAssemblies(root, options);
+  if (options.aspectStabilization) {
+    invokeAspectsV2(root);
+  } else {
+    invokeAspects(root);
+  }
+  injectMetadataResources(root);
+  prepareApp(root);
+  if (!options.skipValidation) {
+    validateTree(root);
+  }
+  const builder = STAGE_TYPE.isMarked(root) ? _convertCloudAssemblyBuilder(root._assemblyBuilder) : new private_cxapi.CloudAssemblyBuilder(options.outdir);
+  synthesizeTree(root, builder, options.validateOnSynthesis);
+  generateFeatureFlagReport(builder, root);
+  const assembly = builder.buildAssembly();
+  validateTemplates(root, builder.outdir, assembly);
+  return assembly;
+}
+function addCustomSynthesis(construct, synthesis) {
+  Object.defineProperty(construct, CUSTOM_SYNTHESIS_SYM, {
+    value: synthesis,
+    enumerable: false
+  });
+}
+function getCustomSynthesis(construct) {
+  return construct[CUSTOM_SYNTHESIS_SYM];
+}
+function synthNestedAssemblies(root, options) {
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      child.synth(options);
+    } else {
+      synthNestedAssemblies(child, options);
+    }
+  }
+}
+function invokeAspects(root) {
+  const invokedByPath = {};
+  let nestedAspectWarning = false;
+  recurse(root, []);
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    const aspects = Aspects.of(construct);
+    let localAspects = getAspectApplications(construct);
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, localAspects);
+    const nodeAspectsCount = aspects.all.length;
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath[node.path];
+      if (!invoked) {
+        invoked = invokedByPath[node.path] = [];
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      aspectApplication.aspect.visit(construct);
+      if (!nestedAspectWarning && nodeAspectsCount !== aspects.all.length) {
+        Annotations.of(construct).addWarningV2("@aws-cdk/core:ignoredAspect", "We detected an Aspect was added via another Aspect, and will not be applied");
+        nestedAspectWarning = true;
+      }
+      invoked.push(aspectApplication);
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        recurse(child, allAspectsHere);
+      }
+    }
+  }
+}
+function invokeAspectsV2(root) {
+  const invokedByPath = /* @__PURE__ */ new Map();
+  recurse(root, []);
+  for (let i = 0; i <= 100; i++) {
+    const didAnythingToTree = recurse(root, []);
+    if (didAnythingToTree === "nothing") {
+      return;
+    }
+  }
+  throw new UnscopedValidationError(lit`PossibleInfiniteLoopDetected`, "We have detected a possible infinite loop while invoking Aspects. Please check your Aspects and verify there is no configuration that would cause infinite Aspect or Node creation.");
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    let ret = "nothing";
+    const currentAspectTreeRevision = _aspectTreeRevisionReader(construct);
+    const versionAtStart = currentAspectTreeRevision();
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, getAspectApplications(construct));
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath.get(node.path);
+      if (!invoked) {
+        invokedByPath.set(node.path, invoked = []);
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      const lastInvokedAspect = invoked[invoked.length - 1];
+      if (lastInvokedAspect && lastInvokedAspect.priority > aspectApplication.priority) {
+        throw new UnscopedValidationError(
+          lit`CannotInvokeAspectWithLowerPriority`,
+          `Cannot invoke Aspect ${aspectApplication.aspect.constructor.name} with priority ${aspectApplication.priority} on node ${node.path}: an Aspect ${lastInvokedAspect.aspect.constructor.name} with a lower priority (added at ${lastInvokedAspect.construct.node.path} with priority ${lastInvokedAspect.priority}) was already invoked on this node.`
+        );
+      }
+      aspectApplication.aspect.visit(construct);
+      ret = "invoked";
+      invoked.push(aspectApplication);
+      if (currentAspectTreeRevision() !== versionAtStart) {
+        return "abort-recursion";
+      }
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        const childDidSomething = recurse(child, allAspectsHere);
+        ret = childDidSomething !== "nothing" ? childDidSomething : ret;
+        if (ret === "abort-recursion") {
+          break;
+        }
+      }
+    }
+    return ret;
+  }
+}
+function sortAspectsByPriority(inheritedAspects, localAspects) {
+  const allAspects = [...inheritedAspects, ...localAspects].sort((a, b) => {
+    if (a.priority !== b.priority) {
+      return a.priority - b.priority;
+    }
+    const isAInherited = inheritedAspects.includes(a);
+    const isBInherited = inheritedAspects.includes(b);
+    if (isAInherited && !isBInherited) return -1;
+    if (!isAInherited && isBInherited) return 1;
+    return 0;
+  });
+  return allAspects;
+}
+function getAspectApplications(node) {
+  const aspects = Aspects.of(node);
+  if (aspects.applied !== void 0) {
+    return aspects.applied;
+  }
+  const typedAspects = aspects;
+  return typedAspects.all.map((aspect) => new AspectApplication(node, aspect, AspectPriority.DEFAULT));
+}
+function injectMetadataResources(root) {
+  visit(root, "post", (construct) => {
+    if (!STACK_TYPE.isMarked(construct) || !construct._versionReportingEnabled) {
+      return;
+    }
+    const CDKMetadata = "CDKMetadata";
+    if (construct.node.tryFindChild(CDKMetadata)) {
+      return;
+    }
+    new MetadataResource(construct, CDKMetadata);
+  });
+}
+function injectTreeMetadata(root) {
+  visit(root, "post", (construct) => {
+    if (!App.isApp(construct) || !construct._treeMetadata) return;
+    const CDKTreeMetadata = "Tree";
+    if (construct.node.tryFindChild(CDKTreeMetadata)) return;
+    new TreeMetadata(construct);
+  });
+}
+function synthesizeTree(root, builder, validateOnSynth = false) {
+  visit(root, "post", (construct) => {
+    const session = {
+      outdir: builder.outdir,
+      assembly: _convertCloudAssemblyBuilder(builder),
+      validateOnSynth
+    };
+    if (STACK_TYPE.isMarked(construct)) {
+      construct.synthesizer.synthesize(session);
+    } else if (construct instanceof TreeMetadata) {
+      construct._synthesizeTree(session);
+    } else {
+      const custom = getCustomSynthesis(construct);
+      custom?.onSynthesize(session);
+    }
+  });
+}
+function validateTree(root) {
+  const errors = new Array();
+  visit(root, "pre", (construct) => {
+    for (const message of construct.node.validate()) {
+      errors.push({ message, source: construct });
+    }
+  });
+  if (errors.length > 0) {
+    const errorList = errors.map((e) => `[${e.source.node.path}] ${e.message}`).join("\n  ");
+    throw new UnscopedValidationError(lit`ValidationFailedWithErrors`, `Validation failed with the following errors:
+  ${errorList}`);
+  }
+}
+function visit(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visit(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+var private_cxapi, CUSTOM_SYNTHESIS_SYM;
+var init_synthesis = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis.ts"() {
+    "use strict";
+    private_cxapi = __toESM(require_lib3());
+    init_core_construct_finders();
+    init_feature_flag_report();
+    init_literal_string();
+    init_metadata_resource2();
+    init_prepare_app();
+    init_synthesis_validation();
+    init_tree_metadata();
+    init_legacy_moved();
+    init_annotations();
+    init_app2();
+    init_aspect();
+    init_errors();
+    CUSTOM_SYNTHESIS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core:customSynthesis");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validation.ts
+function _toBeta1Plugin(plugin) {
+  return {
+    name: plugin.name,
+    version: plugin.version,
+    ruleIds: plugin.ruleIds,
+    validate(context) {
+      const report = plugin.validate({
+        ...context,
+        // This is incorrect information -- it doesn't matter, this function shouldn't be used regardless.
+        stackTemplates: [],
+        accountId: void 0,
+        region: void 0
+      });
+      return {
+        success: report.success,
+        pluginVersion: report.pluginVersion,
+        metadata: report.metadata,
+        violations: report.violations.map((v) => ({
+          ruleName: v.ruleName,
+          description: v.description,
+          fix: v.fix,
+          severity: v.severity,
+          ruleMetadata: v.ruleMetadata,
+          violatingResources: v.violatingResources.map((r) => ({
+            resourceLogicalId: r.resourceLogicalId ?? "",
+            templatePath: r.templatePath ?? "",
+            locations: r.locations
+          }))
+        }))
+      };
+    }
+  };
+}
+var init_validation = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validation.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validations.ts
+var Validations;
+var init_validations = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validations.ts"() {
+    "use strict";
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_stack_trace();
+    init_validation_id();
+    Validations = class _Validations {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      /**
+       * Metadata key used to store acknowledged rules on construct nodes.
+       *
+       * Plugin authors can read this metadata to build audit trails from
+       * acknowledgments recorded via `acknowledge()`.
+       */
+      static ACKNOWLEDGED_RULES_METADATA_KEY = "aws:cdk:acknowledged-rules";
+      /**
+       * Returns the Validations for the given construct scope.
+       *
+       * @param scope any construct
+       */
+      static of(scope) {
+        return new _Validations(scope);
+      }
+      /**
+       * Register one or more validation plugins that will be executed during synthesis.
+       *
+       * Plugins can only be registered within a Stage or App scope.
+       * If any plugin reports a violation, synthesis will be interrupted and the
+       * report displayed to the user.
+       *
+       * @param plugins the validation plugins to add
+       */
+      addPlugins(...plugins) {
+        const stage = STAGE_TYPE.isMarked(this.scope) ? this.scope : stageOf(this.scope);
+        if (!stage) {
+          throw new UnscopedValidationError(lit`NoStageForValidationPlugins`, "Cannot add validation plugins on a construct without an enclosing Stage");
+        }
+        stage._addValidationPlugins(...plugins);
+      }
+      /**
+       * Adds a warning metadata entry to this construct that can be acknowledged.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * The ID will be stored with the `annotation` prefix (e.g. `annotation::MyWarning`).
+       * Use this prefixed ID when calling `acknowledge()` to suppress the warning.
+       *
+       * @param id unique identifier for the warning, used for acknowledgement
+       * @param message the warning message
+       */
+      addWarning(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addWarningV2(id, message);
+      }
+      /**
+       * Adds an error metadata entry to this construct.
+       *
+       * Synthesis will be interrupted when errors are reported.
+       *
+       * Note: Annotation errors are not currently acknowledgeable. The ID is
+       * recorded for identification purposes but `acknowledge()` will not
+       * suppress errors added via this method.
+       *
+       * @param id unique identifier for the error
+       * @param message the error message
+       */
+      addError(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addError(`${message} (${id})`);
+      }
+      /**
+       * Acknowledge one or more rules, suppressing them from validation output.
+       *
+       * Acknowledgments are recorded to construct metadata so that downstream
+       * plugins (e.g. CDK Nag) can read them for audit trails.
+       *
+       * Currently only annotation warnings can be suppressed. Annotation errors
+       * are not yet acknowledgeable.
+       *
+       * If an ID has no well-known prefix, it is assumed to be an annotation rule
+       * for backwards compatibility.
+       *
+       * @param rules the rules to acknowledge
+       */
+      acknowledge(...rules) {
+        for (const rule of rules) {
+          const parsed = parseValidationId(rule.id);
+          const qualifiedId = normalizeValidationIdForAnnotations(parsed);
+          this.recordAcknowledgment(qualifiedId, rule.reason);
+          Annotations.of(this.scope).acknowledgeWarning(qualifiedId);
+          if (qualifiedId.startsWith(`${ANNOTATION_PLUGIN_NAMESPACE}::`)) {
+            const annotationId = qualifiedId.substring(`${ANNOTATION_PLUGIN_NAMESPACE}::`.length);
+            Annotations.of(this.scope).acknowledgeWarning(annotationId);
+          }
+        }
+      }
+      recordAcknowledgment(id, reason) {
+        this.scope.node.addMetadata(
+          _Validations.ACKNOWLEDGED_RULES_METADATA_KEY,
+          { [id]: reason },
+          // eslint-disable-next-line @typescript-eslint/unbound-method
+          { stackTraceOverride: enhancedStackTrace(this.recordAcknowledgment) }
+        );
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/index.ts
+var init_validation2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/index.ts"() {
+    "use strict";
+    init_validation();
+    init_validations();
+    init_report();
+    init_cloudformation_validate_plugin();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stage.ts
+function stripInPlace(arr, startIndex, predicate) {
+  for (let i = startIndex; i < arr.length; i++) {
+    if (predicate(arr[i])) {
+      arr.splice(i, 1);
+      i--;
+    }
+  }
+}
+var private_cxapi2, import_constructs17, Stage;
+var init_stage = __esm({
+  "../../aws-cdk-lib/core/lib/stage.ts"() {
+    "use strict";
+    private_cxapi2 = __toESM(require_lib3());
+    import_constructs17 = __toESM(require_lib4());
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_synthesis();
+    init_prop_injectors();
+    init_validation2();
+    init_cx_api();
+    init_cx_api();
+    init_literal_string();
+    Stage = class _Stage extends import_constructs17.Construct {
+      /**
+       * Return the stage this construct is contained with, if available. If called
+       * on a nested stage, returns its parent.
+       *
+       */
+      static of(construct) {
+        return stageOf(construct);
+      }
+      /**
+       * Test whether the given construct is a stage.
+       *
+       */
+      static isStage(x) {
+        return STAGE_TYPE.isMarked(x);
+      }
+      /**
+       * The default region for all resources defined within this stage.
+       *
+       */
+      region;
+      /**
+       * The default account for all resources defined within this stage.
+       *
+       */
+      account;
+      /**
+       * The cloud assembly builder that is being used for this App
+       *
+       * @internal
+       */
+      _assemblyBuilder;
+      /**
+       * The name of the stage. Based on names of the parent stages separated by
+       * hypens.
+       *
+       */
+      stageName;
+      /**
+       * The parent stage or `undefined` if this is the app.
+       * *
+       */
+      parentStage;
+      /**
+       * The cached assembly if it was already built
+       */
+      assembly;
+      /**
+       * The cached set of construct paths. Empty if assembly was not yet built.
+       */
+      constructPathsCache;
+      /**
+       * Validation plugins to run during synthesis. If any plugin reports any violation,
+       * synthesis will be interrupted and the report displayed to the user.
+       *
+       * @default - no validation plugins are used
+       * @deprecated Do not use this function to look up validation plugins. Use `Validations.of(stage).plugins` instead.
+       */
+      get policyValidationBeta1() {
+        return this._policyValidation.map(_toBeta1Plugin);
+      }
+      _policyValidation = [];
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        if (id !== "" && !/^[a-z][a-z0-9\-\_\.]*$/i.test(id)) {
+          throw new ValidationError(lit`InvalidStageName`, `invalid stage name "${id}". Stage name must start with a letter and contain only alphanumeric characters, hypens ('-'), underscores ('_') and periods ('.')`, this);
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        STAGE_TYPE.mark(this);
+        this.constructPathsCache = /* @__PURE__ */ new Set();
+        this.parentStage = _Stage.of(this);
+        this.region = props.env?.region ?? this.parentStage?.region;
+        this.account = props.env?.account ?? this.parentStage?.account;
+        props.permissionsBoundary?._bind(this);
+        this._assemblyBuilder = this.createBuilder(props.outdir);
+        this.stageName = [this.parentStage?.stageName, props.stageName ?? id].filter((x) => x).join("-");
+        if (props.policyValidationBeta1) {
+          this._policyValidation.push(...props.policyValidationBeta1);
+        }
+      }
+      /**
+       * Register a validation plugin on this stage.
+       *
+       * @internal
+       */
+      _addValidationPlugins(...plugins) {
+        this._policyValidation.push(...plugins);
+      }
+      /**
+       * Returns the raw validation plugins without Beta1 wrapping.
+       *
+       * @internal
+       */
+      get _validationPlugins() {
+        return [...this._policyValidation];
+      }
+      /**
+       * The cloud assembly output directory.
+       */
+      get outdir() {
+        return this._assemblyBuilder.outdir;
+      }
+      /**
+       * The cloud assembly asset output directory.
+       */
+      get assetOutdir() {
+        return this._assemblyBuilder.assetOutdir;
+      }
+      /**
+       * Artifact ID of the assembly if it is a nested stage. The root stage (app)
+       * will return an empty string.
+       *
+       * Derived from the construct path.
+       */
+      get artifactId() {
+        if (!this.node.path) {
+          return "";
+        }
+        return `assembly-${this.node.path.replace(/\//g, "-").replace(/^-+|-+$/g, "")}`;
+      }
+      /**
+       * Synthesize this stage into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        let newConstructPaths = this.listAllConstructPaths(this);
+        if (this.constructPathsCache.size == 0 || !this.assembly || options.force) {
+          this.assembly = _convertCloudAssembly(synthesize(this, {
+            skipValidation: options.skipValidation,
+            validateOnSynthesis: options.validateOnSynthesis,
+            aspectStabilization: options.aspectStabilization ?? FeatureFlags.of(this).isEnabled(ASPECT_STABILIZATION) ?? false
+          }));
+          newConstructPaths = this.listAllConstructPaths(this);
+          this.constructPathsCache = newConstructPaths;
+        }
+        if (!this.constructPathSetsAreEqual(this.constructPathsCache, newConstructPaths)) {
+          const diff = this.constructPathSetsDiff(this.constructPathsCache, newConstructPaths).join(", ");
+          const errorMessage = `Synthesis has been called multiple times and the construct tree was modified after the first synthesis (${diff})`;
+          if (options.errorOnDuplicateSynth ?? true) {
+            throw new ValidationError(lit`ConstructTreeModifiedAfterSynth`, errorMessage + " This is not allowed. Remove multple synth() calls and do not modify the construct tree after the first synth().", this);
+          } else {
+            console.error(errorMessage + " Only the results of the first synth() call are used, and modifications done after it are ignored. Avoid construct tree mutations after synth() has been called unless this is intentional.");
+          }
+        }
+        this.constructPathsCache = newConstructPaths;
+        return this.assembly;
+      }
+      // Function that lists all construct paths and returns them as a set
+      listAllConstructPaths(construct) {
+        const paths = /* @__PURE__ */ new Set();
+        function recurse(root) {
+          paths.add(root.node.path);
+          for (const child of root.node.children) {
+            if (!STAGE_TYPE.isMarked(child)) {
+              recurse(child);
+            }
+          }
+        }
+        recurse(construct);
+        return paths;
+      }
+      // Checks if sets of construct paths are equal
+      constructPathSetsAreEqual(set1, set2) {
+        if (set1.size !== set2.size) return false;
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      /**
+       * Returns a list of +/- marked construct paths that have been added or removed between the 2 sets
+       */
+      constructPathSetsDiff(set1, set2) {
+        const ret = [];
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            ret.push(`-${id}`);
+          }
+        }
+        for (const id of set2) {
+          if (!set1.has(id)) {
+            ret.push(`+${id}`);
+          }
+        }
+        ret.sort((a, b) => a.length - b.length);
+        for (let i = 0; i < ret.length; i++) {
+          const prefix = ret[i] + "/";
+          stripInPlace(ret, i + 1, (x) => x.startsWith(prefix));
+        }
+        return ret;
+      }
+      createBuilder(outdir) {
+        if (this.parentStage && outdir) {
+          throw new ValidationError(lit`OutdirCannotBeSpecifiedForNestedStage`, '"outdir" cannot be specified for nested stages', this);
+        }
+        return this.parentStage ? this.parentStage._assemblyBuilder.createNestedAssembly(this.artifactId, this.node.path) : _convertCloudAssemblyBuilder(new private_cxapi2.CloudAssemblyBuilder(outdir));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/stack-metadata.ts
+function constructAnalyticsFromScope(scope) {
+  const isDefined = (value) => value !== void 0;
+  const allConstructInfos = constructsInScope(scope).map((construct) => [construct, constructInfoFromConstruct(construct)]).filter((c) => {
+    const [_, info] = c;
+    return isDefined(info) && ALLOWED_FQN_PREFIXES.find((prefix) => info.fqn.startsWith(prefix)) != null;
+  }).map(([construct, info]) => injectAnalytics(construct, info));
+  allConstructInfos.push({
+    fqn: "jsii-runtime.Runtime",
+    version: getJsiiAgentVersion()
+  });
+  addValidationPluginInfo(scope, allConstructInfos);
+  const uniqueMap = /* @__PURE__ */ new Map();
+  allConstructInfos.forEach((info) => {
+    const key = `${info.fqn}@${info.version}`;
+    if (uniqueMap.has(key)) {
+      const existingInfo = uniqueMap.get(key);
+      if (existingInfo && existingInfo.additionalTelemetry && info.additionalTelemetry) {
+        existingInfo.additionalTelemetry.push(...info.additionalTelemetry);
+      }
+      if (existingInfo && existingInfo.metadata && info.metadata) {
+        existingInfo.metadata.push(...info.metadata);
+      }
+    } else {
+      uniqueMap.set(key, info);
+    }
+  });
+  return Array.from(uniqueMap.values());
+}
+function injectAnalytics(construct, info) {
+  const metadata = new Array();
+  const additionalTelemetry = new Array();
+  for (const entry of construct.node.metadata) {
+    if (isResource(construct) && ADDITIONAL_TELEMETRY_METADATA_TYPES.has(entry.type)) {
+      additionalTelemetry.push(entry.data);
+    } else if (ALLOWED_METADATA_TYPES.has(entry.type)) {
+      metadata.push(entry.data);
+    }
+  }
+  return {
+    ...info,
+    metadata: metadata.length ? metadata : void 0,
+    additionalTelemetry: additionalTelemetry.length ? additionalTelemetry : void 0
+  };
+}
+function constructsInScope(construct) {
+  const constructs = [construct];
+  construct.node.children.filter((child) => !STAGE_TYPE.isMarked(child) && !STACK_TYPE.isMarked(child)).forEach((child) => constructs.push(...constructsInScope(child)));
+  return constructs;
+}
+function getJsiiAgentVersion() {
+  let jsiiAgent = process.env.JSII_AGENT;
+  if (!jsiiAgent) {
+    jsiiAgent = `node.js/${process.version}`;
+  }
+  jsiiAgent = jsiiAgent.replace(/[^a-z0-9.-/=_]/gi, "-");
+  return jsiiAgent;
+}
+function addValidationPluginInfo(scope, allConstructInfos) {
+  let stage = Stage.of(scope);
+  let done = false;
+  do {
+    if (App.isApp(stage)) {
+      done = true;
+    }
+    if (stage) {
+      allConstructInfos.push(...stage._validationPlugins.map(
+        (plugin) => {
+          return {
+            fqn: pluginFqn(plugin),
+            version: plugin.version ?? "0.0.0"
+          };
+        }
+      ));
+      stage = Stage.of(stage);
+    }
+  } while (!done && stage);
+}
+function pluginFqn(plugin) {
+  let components = [
+    "policyValidation",
+    plugin.name,
+    plugin.ruleIds?.join("|")
+  ];
+  return components.filter((x) => x != null).join(".");
+}
+function isResource(construct) {
+  return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct;
+}
+var ALLOWED_METADATA_TYPES, ADDITIONAL_TELEMETRY_METADATA_TYPES;
+var init_stack_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/stack-metadata.ts"() {
+    "use strict";
+    init_runtime_info();
+    init_app2();
+    init_constants();
+    init_metadata_type();
+    init_stage();
+    init_constants2();
+    init_core_construct_finders();
+    ALLOWED_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:mixin" /* MIXIN */
+    ]);
+    ADDITIONAL_TELEMETRY_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:construct" /* CONSTRUCT */,
+      "aws:cdk:analytics:method" /* METHOD */,
+      "aws:cdk:analytics:featureflag" /* FEATURE_FLAG */
+    ]);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts
+var _defaultChildOwner_dec, _init8, _ConstructReflection, ConstructReflection;
+var init_construct_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_memoize();
+    _defaultChildOwner_dec = [memoizedGetter];
+    _ConstructReflection = class _ConstructReflection {
+      constructor(construct) {
+        __runInitializers(_init8, 5, this);
+        __publicField(this, "construct");
+        this.construct = construct;
+      }
+      /**
+       * Create a reflection for the given construct.
+       */
+      static of(construct) {
+        return new _ConstructReflection(construct);
+      }
+      get defaultChildOwner() {
+        if (this.construct.node.scope && (this.construct.node.id === "Resource" || this.construct.node.id === "Default")) {
+          return this.construct.node.scope;
+        }
+        return void 0;
+      }
+      /**
+       * Finds the CfnResource backing this construct.
+       *
+       * Checks in order: the construct itself, its default child, then searches
+       * the broader construct tree for the closest match.
+       */
+      findCfnResource(matcher) {
+        const isCfnType = (c) => {
+          return CfnResource.isCfnResource(c) && c.cfnResourceType === matcher.cfnResourceType;
+        };
+        if (isCfnType(this.construct)) {
+          return this.construct;
+        }
+        if (this.construct.node.defaultChild && isCfnType(this.construct.node.defaultChild)) {
+          return this.construct.node.defaultChild;
+        }
+        return this.findRelatedCfnResource(matcher);
+      }
+      /**
+       * Finds the closest related CfnResource in the construct tree.
+       *
+       * Searches children first (depth-first), then ancestors (breadth-first).
+       */
+      findRelatedCfnResource(matcher) {
+        let closestMatch;
+        let closestDistance = Infinity;
+        const visited = /* @__PURE__ */ new Set();
+        const isMatch = (child) => {
+          return CfnResource.isCfnResource(child) && child.cfnResourceType === matcher.cfnResourceType;
+        };
+        const checkCandidate = (candidate, distance) => {
+          if (isMatch(candidate) && matcher.matches(candidate) && distance < closestDistance) {
+            closestMatch = candidate;
+            closestDistance = distance;
+          }
+        };
+        const searchChildren = (parent, distance) => {
+          if (distance >= closestDistance) {
+            return;
+          }
+          for (const child of parent.node.children) {
+            if (visited.has(child)) {
+              continue;
+            }
+            visited.add(child);
+            checkCandidate(child, distance);
+            searchChildren(child, distance + 1);
+          }
+        };
+        searchChildren(this.construct, 1);
+        let ancestor = this.construct.node.scope;
+        let ancestorDistance = 1;
+        while (ancestor && ancestorDistance < closestDistance) {
+          for (const sibling of ancestor.node.children) {
+            searchChildren(sibling, ancestorDistance);
+          }
+          ancestor = ancestor.node.scope;
+          ancestorDistance++;
+        }
+        return closestMatch;
+      }
+    };
+    _init8 = __decoratorStart(null);
+    __decorateElement(_init8, 2, "defaultChildOwner", _defaultChildOwner_dec, _ConstructReflection);
+    __decoratorMetadata(_init8, _ConstructReflection);
+    ConstructReflection = _ConstructReflection;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts
+var init_property_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts"() {
+    "use strict";
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/traits.ts
+var init_traits = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/traits.ts"() {
+    "use strict";
+    init_cx_api();
+    init_errors();
+    init_feature_flags();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deep-merge.ts
+function deepMerge(target, ...sources) {
+  for (const source of sources) {
+    if (typeof source !== "object" || typeof target !== "object") {
+      throw new AssumptionError(lit`InvalidDeepMergeArguments`, `Invalid usage. Both source (${JSON.stringify(source)}) and target (${JSON.stringify(target)}) must be objects`);
+    }
+    for (const key of Object.keys(source)) {
+      if (key === "__proto__" || key === "constructor" || key === "prototype") {
+        continue;
+      }
+      const value = source[key];
+      if (typeof value === "object" && value != null && !Array.isArray(value)) {
+        if (typeof target[key] !== "object") {
+          target[key] = {};
+        } else if (Object.keys(target[key]).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(target[key])[0])) {
+            target[key] = {};
+          }
+        }
+        if (Object.keys(value).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(value)[0])) {
+            target[key] = {};
+          }
+        }
+        deepMerge(target[key], value);
+        const output = target[key];
+        if (typeof output === "object" && Object.keys(output).length === 0) {
+          delete target[key];
+        }
+      } else if (value === void 0) {
+        delete target[key];
+      } else {
+        target[key] = value;
+      }
+    }
+  }
+  return target;
+}
+var MERGE_EXCLUDE_KEYS;
+var init_deep_merge = __esm({
+  "../../aws-cdk-lib/core/lib/private/deep-merge.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    MERGE_EXCLUDE_KEYS = [
+      "Ref",
+      "Fn::Base64",
+      "Fn::Cidr",
+      "Fn::FindInMap",
+      "Fn::GetAtt",
+      "Fn::GetAZs",
+      "Fn::ImportValue",
+      "Fn::Join",
+      "Fn::Select",
+      "Fn::Split",
+      "Fn::Sub",
+      "Fn::Transform",
+      "Fn::And",
+      "Fn::Equals",
+      "Fn::If",
+      "Fn::Not",
+      "Fn::Or"
+    ];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts
+var init_property_merge_strategy = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts"() {
+    "use strict";
+    init_box();
+    init_deep_merge();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts
+var init_cfn_props_mixin = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_property_merge_strategy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/shell-escape.ts
+var init_shell_escape = __esm({
+  "../../aws-cdk-lib/core/lib/private/shell-escape.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/index.ts
+var init_helpers_internal = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/index.ts"() {
+    "use strict";
+    init_cfn_parse();
+    init_md5();
+    init_customize_roles();
+    init_string_specializer();
+    init_validate_all_props();
+    init_strings();
+    init_runtime_info();
+    init_stack_metadata();
+    init_memoize();
+    init_construct_reflection();
+    init_property_reflection();
+    init_traits();
+    init_cfn_props_mixin();
+    init_literal_string();
+    init_box();
+    init_no_box_stack_traces();
+    init_perf();
+    init_shell_escape();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/private-context.ts
+var PREFIX, PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER;
+var init_private_context = __esm({
+  "../../aws-cdk-lib/core/lib/private/private-context.ts"() {
+    "use strict";
+    PREFIX = `aws-cdk-private:${Math.random()}:`;
+    PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER = `${PREFIX}core/defaultStackSynthesizer`;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/app.ts
+function countConstructs(construct) {
+  let ret = 0;
+  for (const _ of iterateDfsPreorder(construct)) {
+    ret++;
+  }
+  return ret;
+}
+function attachCustomSynthesis(construct, synthesis) {
+  addCustomSynthesis(construct, synthesis);
+}
+function emitPerformanceCountersFile() {
+  const filename = process.env[PERF_COUNTERS_FILE_ENV];
+  if (!filename) {
+    return;
+  }
+  const counters = {};
+  for (const [name, ctr] of Object.entries(readPerfCounters({ telemetry: true }))) {
+    counters[name] = ctr.total;
+    counters[`${name}(cnt)`] = ctr.count;
+  }
+  fs13.writeFileSync(filename, JSON.stringify({ counters }, void 0, 2), "utf-8");
+}
+function parseAsNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  const r = parseInt(`${x}`, 10);
+  return isNaN(r) ? void 0 : r;
+}
+var import_perf_hooks2, fs13, APP_INIT_HOOK_SYMBOL, DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS, SLOW_SYNTH_THRESHOLD_CTX, App, PERF_STATE;
+var init_app2 = __esm({
+  "../../aws-cdk-lib/core/lib/app.ts"() {
+    "use strict";
+    import_perf_hooks2 = require("perf_hooks");
+    fs13 = __toESM(require_lib5());
+    init_helpers_internal();
+    init_construct_iteration();
+    init_private_context();
+    init_synthesis();
+    init_prop_injectors();
+    init_stage();
+    init_cx_api();
+    init_core_construct_finders();
+    APP_INIT_HOOK_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+    DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS = 1e4;
+    SLOW_SYNTH_THRESHOLD_CTX = "@aws-cdk/core.slowSynthThreshold";
+    App = class extends Stage {
+      /**
+       * Return the app that is the root of the construct tree, if available.
+       */
+      static of(construct) {
+        return appOf(construct);
+      }
+      /**
+       * Checks if an object is an instance of the `App` class.
+       * @returns `true` if `obj` is an `App`.
+       * @param obj The object to evaluate
+       */
+      static isApp(obj) {
+        return APP_TYPE.isMarked(obj);
+      }
+      /**
+       * Include construct tree metadata as part of the Cloud Assembly.
+       *
+       * @internal
+       */
+      _treeMetadata;
+      initMark;
+      performanceReporting;
+      alreadySynthed = false;
+      /**
+       * Initializes a CDK application.
+       * @param props initialization properties
+       */
+      constructor(props = {}) {
+        super(void 0, "", {
+          outdir: props.outdir ?? process.env[OUTDIR_ENV]
+        });
+        this.initMark = import_perf_hooks2.performance.now();
+        if (!PERF_STATE.loadTimeMeasured) {
+          recordPerformanceEntry("phase:Load", {
+            durationMs: this.initMark,
+            telemetry: true
+          });
+          PERF_STATE.loadTimeMeasured = true;
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        if (props.policyValidationBeta1) {
+          this._addValidationPlugins(...props.policyValidationBeta1);
+        }
+        APP_TYPE.mark(this);
+        this.loadContext(props.context, props.postCliContext);
+        if (props.stackTraces === false) {
+          this.node.setContext(DISABLE_METADATA_STACK_TRACE, true);
+        }
+        if (props.defaultStackSynthesizer) {
+          this.node.setContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER, props.defaultStackSynthesizer);
+        }
+        const analyticsReporting = props.analyticsReporting ?? props.runtimeInfo;
+        if (analyticsReporting !== void 0) {
+          this.node.setContext(ANALYTICS_REPORTING_ENABLED_CONTEXT, analyticsReporting);
+        }
+        const autoSynth = props.autoSynth ?? OUTDIR_ENV in process.env;
+        if (autoSynth) {
+          process.once("beforeExit", () => this.synth({ errorOnDuplicateSynth: false }));
+        }
+        this._treeMetadata = props.treeMetadata ?? true;
+        this.performanceReporting = props.performanceReporting ?? this.node.tryGetContext(PERFORMANCE_REPORTING_ENABLED_CONTEXT) ?? true;
+        if (globalThis[APP_INIT_HOOK_SYMBOL]) {
+          globalThis[APP_INIT_HOOK_SYMBOL](this);
+        }
+      }
+      loadContext(defaults = {}, final = {}) {
+        for (const [k, v] of Object.entries(defaults)) {
+          this.node.setContext(k, v);
+        }
+        const context = {
+          ...this.readContextFromEnvironment(),
+          ...this.readContextFromTempFile()
+        };
+        for (const [k, v] of Object.entries(context)) {
+          this.node.setContext(k, v);
+        }
+        for (const [k, v] of Object.entries(final)) {
+          this.node.setContext(k, v);
+        }
+      }
+      /**
+       * Synthesize this App into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        if (this.alreadySynthed) {
+          return super.synth(options);
+        }
+        this.alreadySynthed = true;
+        const startSynthMark = import_perf_hooks2.performance.now();
+        recordPerformanceEntry("phase:Construction", {
+          durationMs: startSynthMark - this.initMark,
+          telemetry: true
+        });
+        const ret = super.synth(options);
+        recordPerformanceEntry("phase:Synthesis", {
+          durationMs: import_perf_hooks2.performance.now() - startSynthMark,
+          telemetry: true
+        });
+        const totalAppTimeMs = import_perf_hooks2.performance.now() - this.initMark;
+        const stackCount = ret.stacksRecursively.length;
+        recordPerformanceEntry("count:Constructs", {
+          count: countConstructs(this),
+          durationMs: 0,
+          telemetry: true
+        });
+        if (this.shouldReportSlowSynth(totalAppTimeMs / stackCount)) {
+          emitPerformanceCountersFile();
+        }
+        resetCounters();
+        return ret;
+      }
+      readContextFromTempFile() {
+        const location = process.env[CONTEXT_OVERFLOW_LOCATION_ENV];
+        return location ? fs13.readJSONSync(location) : {};
+      }
+      readContextFromEnvironment() {
+        const contextJson = process.env[CONTEXT_ENV];
+        return contextJson ? JSON.parse(contextJson) : {};
+      }
+      shouldReportSlowSynth(perStackTime) {
+        if (!this.performanceReporting) {
+          return false;
+        }
+        const threshold = parseAsNumber(this.node.tryGetContext(SLOW_SYNTH_THRESHOLD_CTX)) ?? DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS;
+        return perStackTime >= threshold;
+      }
+    };
+    PERF_STATE = global[/* @__PURE__ */ Symbol.for("@aws-cdk/core.AppPerfState")] ??= {
+      loadTimeMeasured: false
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/context-provider.ts
+function extractProviderError(value) {
+  if (typeof value === "object" && value !== null) {
+    return value[import_cloud_assembly_api.PROVIDER_ERROR_KEY];
+  }
+  return void 0;
+}
+function colonQuote(xs) {
+  return xs.replace(/\$/g, "$$").replace(/:/g, "$:");
+}
+function propsToArray(props, keyPrefix = "") {
+  const ret = [];
+  for (const key of Object.keys(props)) {
+    if (props[key] === void 0) {
+      continue;
+    }
+    switch (typeof props[key]) {
+      case "object": {
+        ret.push(...propsToArray(props[key], `${keyPrefix}${key}.`));
+        break;
+      }
+      case "string": {
+        ret.push(`${keyPrefix}${key}=${colonQuote(props[key])}`);
+        break;
+      }
+      default: {
+        ret.push(`${keyPrefix}${key}=${JSON.stringify(props[key])}`);
+        break;
+      }
+    }
+  }
+  ret.sort();
+  return ret;
+}
+var import_constructs18, ContextProvider;
+var init_context_provider = __esm({
+  "../../aws-cdk-lib/core/lib/context-provider.ts"() {
+    "use strict";
+    import_constructs18 = __toESM(require_lib4());
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_cx_api();
+    ContextProvider = class {
+      /**
+       * @returns the context key or undefined if a key cannot be rendered (due to tokens used in any of the props)
+       */
+      static getKey(scope, options) {
+        const stack = stackOf(scope);
+        const props = {
+          ...options.includeEnvironment ?? true ? { account: stack.account, region: stack.region } : {},
+          ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+          ...options.props
+        };
+        if (Object.values(props).find((x) => Token.isUnresolved(x))) {
+          throw new ValidationError(
+            lit`ContextProviderPropsContainTokens`,
+            `Cannot determine scope for context provider ${options.provider}.
+This usually happens when one or more of the provider props have unresolved tokens`,
+            scope
+          );
+        }
+        const propStrings = propsToArray(props);
+        return {
+          key: `${options.provider}:${propStrings.join(":")}`,
+          props
+        };
+      }
+      static getValue(scope, options) {
+        if (options.mustExist !== void 0 && options.ignoreErrorOnMissingContext !== void 0) {
+          throw new ValidationError(lit`ConflictingMustExistOptions`, "Only supply one of 'mustExist' and 'ignoreErrorOnMissingContext'", scope);
+        }
+        const stack = stackOf(scope);
+        if (Token.isUnresolved(stack.account) || Token.isUnresolved(stack.region)) {
+          throw new ValidationError(lit`StackAccountRegionNotSpecified`, `Cannot retrieve value from context provider ${options.provider} since account/region are not specified at the stack level. Configure "env" with an account and region when you define your stack.See https://docs.aws.amazon.com/cdk/latest/guide/environments.html for more details.`, scope);
+        }
+        const { key, props } = this.getKey(scope, options);
+        const value = import_constructs18.Node.of(scope).tryGetContext(key);
+        const providerError = extractProviderError(value);
+        if (value === void 0 || providerError !== void 0) {
+          const ignoreErrorOnMissingContext = options.mustExist !== void 0 || options.ignoreErrorOnMissingContext !== void 0 ? options.mustExist !== void 0 ? !options.mustExist : options.ignoreErrorOnMissingContext : void 0;
+          const extendedProps = {
+            dummyValue: options.dummyValue,
+            // Even though we renamed the user-facing property, the field in the
+            // cloud assembly still has the original name, which is somewhat wrong
+            // because it's not about missing context.
+            ignoreErrorOnMissingContext,
+            ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+            ...props
+          };
+          stack.reportMissingContextKey({
+            key,
+            provider: options.provider,
+            props: extendedProps
+          });
+          if (providerError !== void 0) {
+            Annotations.of(scope)._addTrackableError(lit`ContextProviderError`, providerError);
+          }
+          return { value: options.dummyValue };
+        }
+        return { value };
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/permissions-boundary.ts
+var PERMISSIONS_BOUNDARY_CONTEXT_KEY;
+var init_permissions_boundary = __esm({
+  "../../aws-cdk-lib/core/lib/permissions-boundary.ts"() {
+    "use strict";
+    PERMISSIONS_BOUNDARY_CONTEXT_KEY = "@aws-cdk/core:permissionsBoundary";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/logical-id.ts
+function validateLogicalId(logicalId) {
+  if (!VALID_LOGICALID_REGEX.test(logicalId)) {
+    throw new UnscopedValidationError(lit`LogicalAdhereRegularExpression`, `Logical ID must adhere to the regular expression: ${VALID_LOGICALID_REGEX.toString()}, got '${logicalId}'`);
+  }
+}
+var LogicalIDs, VALID_LOGICALID_REGEX;
+var init_logical_id = __esm({
+  "../../aws-cdk-lib/core/lib/private/logical-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    LogicalIDs = class {
+      /**
+       * The rename table (old to new)
+       */
+      renames = {};
+      /**
+       * All assigned names (new to old, may be identical)
+       *
+       * This is used to ensure that:
+       *
+       * - No 2 resources end up with the same final logical ID, unless they were the same to begin with.
+       * - All renames have been used at the end of renaming.
+       */
+      reverse = {};
+      /**
+       * Rename a logical ID from an old ID to a new ID
+       */
+      addRename(oldId, newId) {
+        if (oldId in this.renames) {
+          throw new UnscopedValidationError(lit`RenameAlreadyRegistered`, `A rename has already been registered for '${oldId}'`);
+        }
+        this.renames[oldId] = newId;
+      }
+      /**
+       * Return the renamed version of an ID or the original ID.
+       */
+      applyRename(oldId) {
+        let newId = oldId;
+        if (oldId in this.renames) {
+          newId = this.renames[oldId];
+        }
+        if (newId in this.reverse && this.reverse[newId] !== oldId) {
+          throw new UnscopedValidationError(lit`ObjectsAssignedSameLogical`, `Two objects have been assigned the same Logical ID: '${this.reverse[newId]}' and '${oldId}' are now both named '${newId}'.`);
+        }
+        this.reverse[newId] = oldId;
+        validateLogicalId(newId);
+        return newId;
+      }
+      /**
+       * Throw an error if not all renames have been used
+       *
+       * This is to assure that users didn't make typos when registering renames.
+       */
+      assertAllRenamesApplied() {
+        const keys = /* @__PURE__ */ new Set();
+        Object.keys(this.renames).forEach(keys.add.bind(keys));
+        Object.keys(this.reverse).map((newId) => {
+          keys.delete(this.reverse[newId]);
+        });
+        if (keys.size !== 0) {
+          const unusedRenames = Array.from(keys.values());
+          throw new UnscopedValidationError(lit`FollowingLogicalWereAttempted`, `The following Logical IDs were attempted to be renamed, but not found: ${unusedRenames.join(", ")}`);
+        }
+      }
+    };
+    VALID_LOGICALID_REGEX = /^[A-Za-z0-9]{1,255}$/;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts
+function isReusableStackSynthesizer(x) {
+  return !!x.reusableBind;
+}
+var init_types3 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts
+function addStackArtifactToAssembly(session, stack, stackProps, additionalStackDependencies) {
+  const stackTags = stack.tags.tagValues();
+  if (Object.entries(stackTags).length > 0) {
+    const resolvedTags = Object.entries(stackTags).filter(([k, v]) => !(Token.isUnresolved(k) || Token.isUnresolved(v)));
+    const unresolvedTags = Object.entries(stackTags).filter(([k, v]) => Token.isUnresolved(k) || Token.isUnresolved(v));
+    if (unresolvedTags.length > 0) {
+      const rendered = unresolvedTags.map(([k, v]) => `${Token.isUnresolved(k) ? "" : k}=${Token.isUnresolved(v) ? "" : v}`).join(", ");
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+        `Ignoring stack tags that contain deploy-time values (found: ${rendered}). Apply tags containing deploy-time values to resources only, avoid tagging stacks (for example using { excludeResourceTypes: ['aws:cdk:stack'] }).`
+      );
+    }
+    if (resolvedTags.length > 0) {
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.STACK_TAGS,
+        resolvedTags.map(([key, value]) => ({ key, value }))
+      );
+    }
+  }
+  const deps = [
+    ...stack.dependencies.map((s) => s.artifactId),
+    ...additionalStackDependencies
+  ];
+  const meta = collectStackMetadata(stack);
+  const stackNameProperty = stack.stackName === stack.artifactId ? {} : { stackName: stack.stackName };
+  const properties = {
+    templateFile: stack.templateFile,
+    terminationProtection: stack.terminationProtection,
+    tags: nonEmptyDict(stackTags),
+    validateOnSynth: session.validateOnSynth,
+    notificationArns: stack._notificationArns,
+    ...stackProps,
+    ...stackNameProperty
+  };
+  const metaFile = `${stack.artifactId}.metadata.json`;
+  const hasMeta = Object.keys(meta).length > 0;
+  if (hasMeta) {
+    fs14.writeFileSync(path18.join(session.assembly.outdir, metaFile), JSON.stringify(meta, void 0, 2), "utf-8");
+  }
+  session.assembly.addArtifact(stack.artifactId, {
+    type: cloud_assembly_schema_exports.ArtifactType.AWS_CLOUDFORMATION_STACK,
+    environment: stack.environment,
+    properties,
+    dependencies: deps.length > 0 ? deps : void 0,
+    additionalMetadataFile: hasMeta ? metaFile : void 0,
+    displayName: stack.node.path
+  });
+}
+function collectStackMetadata(stack) {
+  const output = {};
+  const queue = [stack];
+  let next;
+  while (next = queue.shift()) {
+    if (STACK_TYPE.isMarked(next) && next._isTopLevelStack && next !== stack) {
+      continue;
+    }
+    handleNode(next);
+    queue.push(...next.node.children);
+  }
+  return output;
+  function handleNode(node) {
+    if (node.node.metadata.length > 0) {
+      output[import_constructs19.Node.PATH_SEP + node.node.path] = node.node.metadata.map((md) => {
+        if ([
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO
+        ].includes(md.type)) {
+          return md;
+        }
+        const resolved = stack.resolve(md);
+        return resolved;
+      });
+    }
+  }
+}
+function contentHash(content) {
+  return crypto8.createHash("sha256").update(content).digest("hex");
+}
+function assertBound(x) {
+  if (x === null && x === void 0) {
+    throw new UnscopedValidationError(lit`CallBindstackFirst`, "You must call bindStack() first");
+  }
+}
+function nonEmptyDict(xs) {
+  return Object.keys(xs).length > 0 ? xs : void 0;
+}
+var crypto8, fs14, path18, import_constructs19;
+var init_shared2 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts"() {
+    "use strict";
+    crypto8 = __toESM(require("crypto"));
+    fs14 = __toESM(require("fs"));
+    path18 = __toESM(require("path"));
+    import_constructs19 = __toESM(require_lib4());
+    init_cloud_assembly_schema();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts
+function validateFileAssetSource(asset) {
+  if (!!asset.executable === !!asset.fileName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyFilenameExecutable`, `Exactly one of 'fileName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (!!asset.packaging !== !!asset.fileName) {
+    throw new UnscopedValidationError(lit`PackagingExpectedCombinationFilename`, `'packaging' is expected in combination with 'fileName', got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+}
+function validateDockerImageAssetSource(asset) {
+  if (!!asset.executable === !!asset.directoryName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyDirectorynameExecutable`, `Exactly one of 'directoryName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+  check("dockerBuildArgs");
+  check("dockerBuildContexts");
+  check("dockerBuildTarget");
+  check("dockerOutputs");
+  check("dockerFile");
+  function check(key) {
+    if (asset[key] && !asset.directoryName) {
+      throw new UnscopedValidationError(lit`OnlyAllowedCombinationDirectoryname`, `'${key}' is only allowed in combination with 'directoryName', got: ${JSON.stringify(asset)}`);
+    }
+  }
+}
+var fs15, path19, AssetManifestBuilder;
+var init_asset_manifest_builder = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts"() {
+    "use strict";
+    fs15 = __toESM(require("fs"));
+    path19 = __toESM(require("path"));
+    init_cloud_assembly_schema();
+    init_assets();
+    init_errors();
+    init_string_specializer();
+    init_token();
+    init_shared2();
+    init_literal_string();
+    AssetManifestBuilder = class {
+      files = {};
+      dockerImages = {};
+      /**
+       * Add a file asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, copy the
+       * file extension over, and set the prefix.
+       */
+      defaultAddFileAsset(stack, asset, target, options) {
+        validateFileAssetSource(asset);
+        const extension = asset.fileName != void 0 ? path19.extname(asset.fileName) : "";
+        const objectKey = (target.bucketPrefix ?? "") + asset.sourceHash + (asset.packaging === "zip" /* ZIP_DIRECTORY */ ? ".zip" : extension);
+        return this.addFileAsset(stack, asset.sourceHash, {
+          path: asset.fileName,
+          executable: asset.executable,
+          packaging: asset.packaging
+        }, {
+          bucketName: target.bucketName,
+          objectKey,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a docker image asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, and set the prefix.
+       */
+      defaultAddDockerImageAsset(stack, asset, target, options) {
+        validateDockerImageAssetSource(asset);
+        const imageTag = `${target.dockerTagPrefix ?? ""}${asset.sourceHash}`;
+        const sourceHash = asset.assetName ? `${asset.assetName}-${asset.sourceHash}` : asset.sourceHash;
+        return this.addDockerImageAsset(stack, sourceHash, {
+          executable: asset.executable,
+          directory: asset.directoryName,
+          dockerBuildArgs: asset.dockerBuildArgs,
+          dockerBuildContexts: asset.dockerBuildContexts,
+          dockerBuildSecrets: asset.dockerBuildSecrets,
+          dockerBuildSsh: asset.dockerBuildSsh,
+          dockerBuildTarget: asset.dockerBuildTarget,
+          dockerFile: asset.dockerFile,
+          networkMode: asset.networkMode,
+          platform: asset.platform,
+          dockerOutputs: asset.dockerOutputs,
+          cacheFrom: asset.dockerCacheFrom,
+          cacheTo: asset.dockerCacheTo,
+          cacheDisabled: asset.dockerCacheDisabled
+        }, {
+          repositoryName: target.repositoryName,
+          imageTag,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a file asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addFileAsset(stack, sourceHash, source, dest, options) {
+        if (!this.files[sourceHash]) {
+          this.files[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.files[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Add a docker asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addDockerImageAsset(stack, sourceHash, source, dest, options) {
+        if (!this.dockerImages[sourceHash]) {
+          this.dockerImages[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.dockerImages[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Whether there are any assets registered in the manifest
+       */
+      get hasAssets() {
+        return Object.keys(this.files).length + Object.keys(this.dockerImages).length > 0;
+      }
+      /**
+       * Write the manifest to disk, and add it to the synthesis session
+       *
+       * Return the artifact id, which should be added to the `additionalDependencies`
+       * field of the stack artifact.
+       */
+      emitManifest(stack, session, options = {}, dependencies = []) {
+        const artifactId = `${stack.artifactId}.assets`;
+        const manifestFile = `${artifactId}.json`;
+        const outPath = path19.join(session.assembly.outdir, manifestFile);
+        const manifest = {
+          version: cloud_assembly_schema_exports.Manifest.version(),
+          files: this.files,
+          dockerImages: this.dockerImages
+        };
+        fs15.writeFileSync(outPath, JSON.stringify(manifest, void 0, 2));
+        session.assembly.addArtifact(artifactId, {
+          type: cloud_assembly_schema_exports.ArtifactType.ASSET_MANIFEST,
+          properties: {
+            file: manifestFile,
+            ...options
+          },
+          dependencies: dependencies.length > 0 ? dependencies : void 0
+        });
+        return artifactId;
+      }
+      manifestEnvName(stack) {
+        return [
+          resolvedOr(stack.account, "current_account"),
+          resolvedOr(stack.region, "current_region")
+        ].join("-");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-rule.ts
+var CfnRule;
+var init_cfn_rule = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-rule.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+    CfnRule = class extends CfnRefElement {
+      ruleCondition;
+      assertions;
+      /**
+       * Creates and adds a rule.
+       * @param scope The parent construct.
+       * @param props The rule props.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.ruleCondition = props && props.ruleCondition;
+        this.assertions = props && props.assertions;
+      }
+      /**
+       * Adds an assertion to the rule.
+       * @param condition The expression to evaluation.
+       * @param description The description of the assertion.
+       */
+      addAssertion(condition, description) {
+        if (!this.assertions) {
+          this.assertions = [];
+        }
+        this.assertions.push({
+          assert: condition,
+          assertDescription: description
+        });
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Rules: {
+            [this.logicalId]: {
+              RuleCondition: this.ruleCondition,
+              Assertions: capitalizePropertyNames(this, this.assertions)
+            }
+          }
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts
+function stackTemplateFileAsset(stack, session) {
+  const templatePath = path20.join(session.assembly.outdir, stack.templateFile);
+  if (!fs16.existsSync(templatePath)) {
+    throw new ValidationError(lit`StackTemplate`, `Stack template ${stack.stackName} not written yet: ${templatePath}`, stack);
+  }
+  const template = fs16.readFileSync(templatePath, { encoding: "utf-8" });
+  const sourceHash = contentHash(template);
+  return {
+    fileName: stack.templateFile,
+    packaging: "file" /* FILE */,
+    sourceHash,
+    deployTime: true,
+    displayName: `${stack.stackName} Template`
+  };
+}
+function addBootstrapVersionRule(stack, requiredVersion, bootstrapStackVersionSsmParameter) {
+  if (stack.node.tryFindChild("BootstrapVersion")) {
+    return;
+  }
+  const param = new CfnParameter(stack, "BootstrapVersion", {
+    type: "AWS::SSM::Parameter::Value",
+    description: `Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. ${import_cloud_assembly_api.SSMPARAM_NO_INVALIDATE}`,
+    default: bootstrapStackVersionSsmParameter
+  });
+  const oldVersions = range3(1, requiredVersion).map((n) => `${n}`);
+  new CfnRule(stack, "CheckBootstrapVersion", {
+    assertions: [
+      {
+        assert: Fn.conditionNot(Fn.conditionContains(oldVersions, param.valueAsString)),
+        assertDescription: `CDK bootstrap stack version ${requiredVersion} required. Please run 'cdk bootstrap' with a recent version of the CDK CLI.`
+      }
+    ]
+  });
+}
+function range3(startIncl, endExcl) {
+  const ret = new Array();
+  for (let i = startIncl; i < endExcl; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+function stackLocationOrInstrinsics(stack) {
+  return {
+    account: resolvedOr(stack.account, "${AWS::AccountId}"),
+    region: resolvedOr(stack.region, "${AWS::Region}"),
+    urlSuffix: resolvedOr(stack.urlSuffix, "${AWS::URLSuffix}")
+  };
+}
+function cfnify(s) {
+  return s.indexOf("${") > -1 ? Fn.sub(s) : s;
+}
+var fs16, path20, StackSynthesizer;
+var init_stack_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts"() {
+    "use strict";
+    fs16 = __toESM(require("fs"));
+    path20 = __toESM(require("path"));
+    init_shared2();
+    init_cx_api();
+    init_assets();
+    init_cfn_fn();
+    init_cfn_parameter();
+    init_cfn_rule();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    StackSynthesizer = class {
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return void 0;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return void 0;
+      }
+      get cloudFormationExecutionRole() {
+        return void 0;
+      }
+      _boundStack;
+      /**
+       * Bind to the stack this environment is going to be used on
+       *
+       * Must be called before any of the other methods are called.
+       */
+      bind(stack) {
+        if (this._boundStack !== void 0) {
+          throw new ValidationError(lit`StackSynthesizerOneStackCreate`, "A StackSynthesizer can only be used for one Stack: create a new instance to use with a different Stack", stack);
+        }
+        this._boundStack = stack;
+      }
+      /**
+       * Have the stack write out its template
+       *
+       * @deprecated Use `synthesizeTemplate` instead
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session);
+      }
+      /**
+       * Write the stack template to the given session
+       *
+       * Return a descriptor that represents the stack template as a file asset
+       * source, for adding to an asset manifest (if desired). This can be used to
+       * have the asset manifest system (`cdk-assets`) upload the template to S3
+       * using the appropriate role, so that afterwards only a CloudFormation
+       * deployment is necessary.
+       *
+       * If the template is uploaded as an asset, the `stackTemplateAssetObjectUrl`
+       * property should be set when calling `emitArtifact.`
+       *
+       * If the template is *NOT* uploaded as an asset first and the template turns
+       * out to be >50KB, it will need to be uploaded to S3 anyway. At that point
+       * the credentials will be the same identity that is doing the `UpdateStack`
+       * call, which may not have the right permissions to write to S3.
+       */
+      synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        this.boundStack._synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions);
+        return stackTemplateFileAsset(this.boundStack, session);
+      }
+      /**
+       * Write the stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session.
+       *
+       * @deprecated Use `emitArtifact` instead
+       */
+      emitStackArtifact(stack, session, options = {}) {
+        addStackArtifactToAssembly(session, stack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Write the CloudFormation stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session. The Stack artifact will control the settings for the
+       * CloudFormation deployment.
+       */
+      emitArtifact(session, options = {}) {
+        addStackArtifactToAssembly(session, this.boundStack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Add a CfnRule to the bound stack that checks whether an SSM parameter exceeds a given version
+       *
+       * This will modify the template, so must be called before the stack is synthesized.
+       */
+      addBootstrapVersionRule(requiredVersion, bootstrapStackVersionSsmParameter) {
+        addBootstrapVersionRule(this.boundStack, requiredVersion, bootstrapStackVersionSsmParameter);
+      }
+      /**
+       * Retrieve the bound stack
+       *
+       * Fails if the stack hasn't been bound yet.
+       */
+      get boundStack() {
+        if (!this._boundStack) {
+          throw new UnscopedValidationError(lit`StackSynthesizerBoundStackFirst`, "The StackSynthesizer must be bound to a Stack first before boundStack() can be called");
+        }
+        return this._boundStack;
+      }
+      /**
+       * Turn a file asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromFileAsset(location) {
+        const { region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        const httpUrl = cfnify(
+          `https://s3.${region}.${urlSuffix2}/${location.bucketName}/${location.objectKey}`
+        );
+        const s3ObjectUrlWithPlaceholders = `s3://${location.bucketName}/${location.objectKey}`;
+        return {
+          bucketName: cfnify(location.bucketName),
+          objectKey: cfnify(location.objectKey),
+          httpUrl,
+          s3ObjectUrl: cfnify(s3ObjectUrlWithPlaceholders),
+          s3ObjectUrlWithPlaceholders,
+          s3Url: httpUrl
+        };
+      }
+      /**
+       * Turn a docker asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromDockerImageAsset(dest) {
+        const { account, region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        return {
+          repositoryName: cfnify(dest.repositoryName),
+          imageUri: cfnify(
+            `${account}.dkr.ecr.${region}.${urlSuffix2}/${dest.repositoryName}:${dest.imageTag}`
+          ),
+          imageTag: cfnify(dest.imageTag)
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts
+var BOOTSTRAP_QUALIFIER_CONTEXT, MIN_BOOTSTRAP_STACK_VERSION, MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION, MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION, DefaultStackSynthesizer;
+var init_default_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+    BOOTSTRAP_QUALIFIER_CONTEXT = "@aws-cdk/core:bootstrapQualifier";
+    MIN_BOOTSTRAP_STACK_VERSION = 6;
+    MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION = 8;
+    MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION = 22;
+    DefaultStackSynthesizer = class _DefaultStackSynthesizer extends StackSynthesizer {
+      constructor(props = {}) {
+        super();
+        this.props = props;
+        this.useLookupRoleForStackOperations = props.useLookupRoleForStackOperations ?? true;
+        for (const key in props) {
+          if (props.hasOwnProperty(key)) {
+            validateNoToken(key);
+          }
+        }
+        function validateNoToken(key) {
+          const prop = props[key];
+          if (typeof prop === "string" && Token.isUnresolved(prop)) {
+            throw new UnscopedValidationError(lit`DefaultSynthesizerTokenInProperty`, `DefaultStackSynthesizer property '${key}' cannot contain tokens; only the following placeholder strings are allowed: ` + [
+              "${Qualifier}",
+              (void 0).CURRENT_REGION,
+              (void 0).CURRENT_ACCOUNT,
+              (void 0).CURRENT_PARTITION
+            ].join(", "));
+          }
+        }
+      }
+      props;
+      /**
+       * Default ARN qualifier
+       */
+      static DEFAULT_QUALIFIER = "hnb659fds";
+      /**
+       * Default CloudFormation role ARN.
+       */
+      static DEFAULT_CLOUDFORMATION_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-cfn-exec-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default deploy role ARN.
+       */
+      static DEFAULT_DEPLOY_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-deploy-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for file (S3) assets.
+       */
+      static DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-file-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for image (ECR) assets.
+       */
+      static DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-image-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default lookup role ARN for missing values.
+       */
+      static DEFAULT_LOOKUP_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-lookup-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default image assets repository name
+       */
+      static DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME = "cdk-${Qualifier}-container-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default file assets bucket name
+       */
+      static DEFAULT_FILE_ASSETS_BUCKET_NAME = "cdk-${Qualifier}-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Name of the CloudFormation Export with the asset key name
+       */
+      static DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME = "CdkBootstrap-${Qualifier}-FileAssetKeyArn";
+      /**
+       * Default file asset prefix
+       */
+      static DEFAULT_FILE_ASSET_PREFIX = "";
+      /**
+       * Default Docker asset prefix
+       */
+      static DEFAULT_DOCKER_ASSET_PREFIX = "";
+      /**
+       * Default bootstrap stack version SSM parameter.
+       */
+      static DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER = "/cdk-bootstrap/${Qualifier}/version";
+      bucketName;
+      repositoryName;
+      _deployRoleArn;
+      _cloudFormationExecutionRoleArn;
+      fileAssetPublishingRoleArn;
+      imageAssetPublishingRoleArn;
+      lookupRoleArn;
+      useLookupRoleForStackOperations;
+      qualifier;
+      bucketPrefix;
+      dockerTagPrefix;
+      bootstrapStackVersionSsmParameter;
+      assetManifest = new AssetManifestBuilder();
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return this.qualifier;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return this.lookupRoleArn;
+      }
+      get cloudFormationExecutionRole() {
+        return this._cloudFormationExecutionRoleArn;
+      }
+      bind(stack) {
+        super.bind(stack);
+        const qualifier = this.props.qualifier ?? stack.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? _DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        this.qualifier = qualifier;
+        const spec = new StringSpecializer(stack, qualifier);
+        this.bucketName = spec.specialize(this.props.fileAssetsBucketName ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSETS_BUCKET_NAME);
+        this.repositoryName = spec.specialize(this.props.imageAssetsRepositoryName ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME);
+        this._deployRoleArn = spec.specialize(this.props.deployRoleArn ?? _DefaultStackSynthesizer.DEFAULT_DEPLOY_ROLE_ARN);
+        this._cloudFormationExecutionRoleArn = spec.specialize(this.props.cloudFormationExecutionRole ?? _DefaultStackSynthesizer.DEFAULT_CLOUDFORMATION_ROLE_ARN);
+        this.fileAssetPublishingRoleArn = spec.specialize(this.props.fileAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN);
+        this.imageAssetPublishingRoleArn = spec.specialize(this.props.imageAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN);
+        this.lookupRoleArn = spec.specialize(this.props.lookupRoleArn ?? _DefaultStackSynthesizer.DEFAULT_LOOKUP_ROLE_ARN);
+        this.bucketPrefix = spec.specialize(this.props.bucketPrefix ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PREFIX);
+        this.dockerTagPrefix = spec.specialize(this.props.dockerTagPrefix ?? _DefaultStackSynthesizer.DEFAULT_DOCKER_ASSET_PREFIX);
+        this.bootstrapStackVersionSsmParameter = spec.qualifierOnly(this.props.bootstrapStackVersionSsmParameter ?? _DefaultStackSynthesizer.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER);
+      }
+      addFileAsset(asset) {
+        assertBound(this.bucketName);
+        const location = this.assetManifest.defaultAddFileAsset(this.boundStack, asset, {
+          bucketName: this.bucketName,
+          bucketPrefix: this.bucketPrefix,
+          role: this.fileAssetPublishingRoleArn ? {
+            assumeRoleArn: this.fileAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.fileAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.fileAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromFileAsset(location);
+      }
+      addDockerImageAsset(asset) {
+        assertBound(this.repositoryName);
+        const location = this.assetManifest.defaultAddDockerImageAsset(this.boundStack, asset, {
+          repositoryName: this.repositoryName,
+          dockerTagPrefix: this.dockerTagPrefix,
+          role: this.imageAssetPublishingRoleArn ? {
+            assumeRoleArn: this.imageAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.imageAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.imageAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromDockerImageAsset(location);
+      }
+      /**
+       * Synthesize the stack template to the given session, passing the configured lookup role ARN
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session, this.lookupRoleArn, this.props.lookupRoleExternalId, this.props.lookupRoleAdditionalOptions);
+      }
+      /**
+       * Return the currently bound stack
+       *
+       * @deprecated Use `boundStack` instead.
+       */
+      get stack() {
+        return this.boundStack;
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        assertBound(this.qualifier);
+        if (this.props.generateBootstrapVersionRule ?? true) {
+          this.addBootstrapVersionRule(this._requiredBootstrapVersionForDeployment, this.bootstrapStackVersionSsmParameter);
+        }
+        const templateAssetSource = this.synthesizeTemplate(
+          session,
+          this.lookupRoleArn,
+          this.props.lookupRoleExternalId,
+          this.props.lookupRoleAdditionalOptions
+        );
+        const templateAsset = this.addFileAsset(templateAssetSource);
+        const assetManifestId = this.assetManifest.emitManifest(this.boundStack, session, {
+          requiresBootstrapStackVersion: this._requiredBoostrapVersionForAssets,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+        });
+        this.emitArtifact(session, {
+          assumeRoleExternalId: this.props.deployRoleExternalId,
+          assumeRoleArn: this._deployRoleArn,
+          assumeRoleAdditionalOptions: this.props.deployRoleAdditionalOptions,
+          cloudFormationExecutionRoleArn: this._cloudFormationExecutionRoleArn,
+          stackTemplateAssetObjectUrl: templateAsset.s3ObjectUrlWithPlaceholders,
+          requiresBootstrapStackVersion: this._requiredBootstrapVersionForDeployment,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter,
+          additionalDependencies: [assetManifestId],
+          lookupRole: this.useLookupRoleForStackOperations && this.lookupRoleArn ? {
+            arn: this.lookupRoleArn,
+            assumeRoleExternalId: this.props.lookupRoleExternalId,
+            assumeRoleAdditionalOptions: this.props.lookupRoleAdditionalOptions,
+            requiresBootstrapStackVersion: this._requiredBootstrapVersionForLookup,
+            bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+          } : void 0
+        });
+      }
+      get _requiredBoostrapVersionForAssets() {
+        if (this.props.fileAssetPublishingRoleAdditionalOptions?.Tags || this.props.imageAssetPublishingRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForDeployment() {
+        if (this.props.deployRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForLookup() {
+        if (this.props.lookupRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION;
+      }
+      /**
+       * Returns the ARN of the deploy Role.
+       */
+      get deployRoleArn() {
+        if (!this._deployRoleArn) {
+          throw new UnscopedValidationError(lit`DeployRoleArnGetterOnlyCalled`, "deployRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._deployRoleArn;
+      }
+      /**
+       * Returns the ARN of the CFN execution Role.
+       */
+      get cloudFormationExecutionRoleArn() {
+        if (!this._cloudFormationExecutionRoleArn) {
+          throw new UnscopedValidationError(lit`CloudFormationExecutionRoleArnGetterOnlyCalled`, "cloudFormationExecutionRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._cloudFormationExecutionRoleArn;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-parameters.ts
+var import_constructs20, FileAssetParameters;
+var init_asset_parameters = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-parameters.ts"() {
+    "use strict";
+    import_constructs20 = __toESM(require_lib4());
+    init_cfn_parameter();
+    FileAssetParameters = class extends import_constructs20.Construct {
+      bucketNameParameter;
+      objectKeyParameter;
+      artifactHashParameter;
+      constructor(scope, id) {
+        super(scope, id);
+        this.bucketNameParameter = new CfnParameter(this, "S3Bucket", {
+          type: "String",
+          description: `S3 bucket for asset "${id}"`
+        });
+        this.objectKeyParameter = new CfnParameter(this, "S3VersionKey", {
+          type: "String",
+          description: `S3 key for asset version "${id}"`
+        });
+        this.artifactHashParameter = new CfnParameter(this, "ArtifactHash", {
+          description: `Artifact hash for asset "${id}"`,
+          type: "String"
+        });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts
+function withoutDeprecationWarnings(block) {
+  const orig = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  try {
+    return block();
+  } finally {
+    process.env.JSII_DEPRECATED = orig;
+  }
+}
+var import_constructs21, ASSETS_ECR_REPOSITORY_NAME, ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY, LegacyStackSynthesizer;
+var init_legacy = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts"() {
+    "use strict";
+    import_constructs21 = __toESM(require_lib4());
+    init_shared2();
+    init_stack_synthesizer();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_fn();
+    init_errors();
+    init_asset_parameters();
+    init_literal_string();
+    ASSETS_ECR_REPOSITORY_NAME = "aws-cdk/assets";
+    ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY = "assets-ecr-repository-name";
+    LegacyStackSynthesizer = class extends StackSynthesizer {
+      cycle = false;
+      /**
+       * Includes all parameters synthesized for assets (lazy).
+       */
+      _assetParameters;
+      /**
+       * The image ID of all the docker image assets that were already added to this
+       * stack (to avoid duplication).
+       */
+      addedImageAssets = /* @__PURE__ */ new Set();
+      addFileAsset(asset) {
+        if (this.cycle) {
+          return this.doAddFileAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addFileAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      addDockerImageAsset(asset) {
+        if (this.cycle) {
+          return this.doAddDockerImageAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addDockerImageAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        this.synthesizeTemplate(session);
+        this.emitArtifact(session);
+      }
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      doAddDockerImageAsset(asset) {
+        const repositoryNameOverride = this.boundStack.node.tryGetContext(ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY);
+        const repositoryName = asset.repositoryName ?? repositoryNameOverride ?? ASSETS_ECR_REPOSITORY_NAME;
+        const imageTag = asset.sourceHash;
+        const assetId = asset.sourceHash;
+        if (!this.addedImageAssets.has(assetId)) {
+          if (!asset.directoryName) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            repositoryName,
+            imageTag,
+            id: assetId,
+            packaging: "container-image",
+            path: asset.directoryName,
+            sourceHash: asset.sourceHash,
+            buildArgs: asset.dockerBuildArgs,
+            buildContexts: asset.dockerBuildContexts,
+            buildSecrets: asset.dockerBuildSecrets,
+            buildSsh: asset.dockerBuildSsh,
+            target: asset.dockerBuildTarget,
+            file: asset.dockerFile,
+            networkMode: asset.networkMode,
+            platform: asset.platform,
+            outputs: asset.dockerOutputs,
+            cacheFrom: asset.dockerCacheFrom,
+            cacheTo: asset.dockerCacheTo,
+            cacheDisabled: asset.dockerCacheDisabled
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+          this.addedImageAssets.add(assetId);
+        }
+        return {
+          imageUri: `${this.boundStack.account}.dkr.ecr.${this.boundStack.region}.${this.boundStack.urlSuffix}/${repositoryName}:${imageTag}`,
+          repositoryName
+        };
+      }
+      doAddFileAsset(asset) {
+        let params = this.assetParameters.node.tryFindChild(asset.sourceHash);
+        if (!params) {
+          params = new FileAssetParameters(this.assetParameters, asset.sourceHash);
+          if (!asset.fileName || !asset.packaging) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            path: asset.fileName,
+            id: asset.sourceHash,
+            packaging: asset.packaging,
+            sourceHash: asset.sourceHash,
+            s3BucketParameter: params.bucketNameParameter.logicalId,
+            s3KeyParameter: params.objectKeyParameter.logicalId,
+            artifactHashParameter: params.artifactHashParameter.logicalId
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+        }
+        const bucketName = params.bucketNameParameter.valueAsString;
+        const encodedKey = params.objectKeyParameter.valueAsString;
+        const s3Prefix = Fn.select(0, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const s3Filename = Fn.select(1, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const objectKey = `${s3Prefix}${s3Filename}`;
+        const httpUrl = `https://s3.${this.boundStack.region}.${this.boundStack.urlSuffix}/${bucketName}/${objectKey}`;
+        const s3ObjectUrl = `s3://${bucketName}/${objectKey}`;
+        return { bucketName, objectKey, httpUrl, s3ObjectUrl, s3Url: httpUrl };
+      }
+      get assetParameters() {
+        assertBound(this.boundStack);
+        if (!this._assetParameters) {
+          this._assetParameters = new import_constructs21.Construct(this.boundStack, "AssetParameters");
+        }
+        return this._assetParameters;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts
+var init_bootstrapless_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts"() {
+    "use strict";
+    init_default_synthesizer();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts
+var init_nested = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts"() {
+    "use strict";
+    init_stack_synthesizer();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts
+var init_cli_credentials_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_default_synthesizer();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts
+var init_stack_synthesizers = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts"() {
+    "use strict";
+    init_types3();
+    init_default_synthesizer();
+    init_legacy();
+    init_bootstrapless_synthesizer();
+    init_nested();
+    init_stack_synthesizer();
+    init_cli_credentials_synthesizer();
+    init_asset_manifest_builder();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-mapping.ts
+var CfnMapping, CfnMappingEmbedder;
+var init_cfn_mapping = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-mapping.ts"() {
+    "use strict";
+    init_annotations();
+    init_cfn_element();
+    init_cfn_fn();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    CfnMapping = class extends CfnRefElement {
+      mapping;
+      lazy;
+      lazyRender = false;
+      // prescribes `_toCloudFormation()` to pass nothing if value from map is returned lazily.
+      lazyInformed = false;
+      // keeps track if user has been sent a message informing them of the possibility to use lazy synthesis.
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this.mapping = props.mapping ? this.validateMapping(props.mapping) : {};
+        this.lazy = props.lazy;
+      }
+      /**
+       * Sets a value in the map based on the two keys.
+       */
+      setValue(key1, key2, value) {
+        if ([key1, key2].some((k) => ["__proto__", "constructor"].includes(k))) {
+          throw new ValidationError(lit`CannotProtoConstructorKeys`, "Cannot use '__proto__' or 'constructor' as keys", this);
+        }
+        this.validateAlphanumeric(key2);
+        if (!(key1 in this.mapping)) {
+          this.mapping[key1] = {};
+        }
+        this.mapping[key1][key2] = value;
+      }
+      /**
+       * @returns A reference to a value in the map based on the two keys.
+       *          If mapping is lazy, the value from the map or default value is returned instead of the reference and the mapping is not rendered in the template.
+       */
+      findInMap(key1, key2, defaultValue) {
+        let fullyResolved = false;
+        let notInMap = false;
+        if (!Token.isUnresolved(key1)) {
+          if (!(key1 in this.mapping)) {
+            if (defaultValue === void 0) {
+              throw new ValidationError(lit`MappingDoesnTContainTopLevel`, `Mapping doesn't contain top-level key '${key1}'`, this);
+            } else {
+              notInMap = true;
+            }
+          } else if (!Token.isUnresolved(key2)) {
+            if (!(key2 in this.mapping[key1])) {
+              if (defaultValue === void 0) {
+                throw new ValidationError(lit`MappingDoesnTContainSecondLevel`, `Mapping doesn't contain second-level key '${key2}'`, this);
+              } else {
+                notInMap = true;
+              }
+            }
+            fullyResolved = true;
+          }
+        }
+        if (this.lazy) {
+          if (notInMap && defaultValue !== void 0) {
+            return defaultValue;
+          } else if (fullyResolved) {
+            return this.mapping[key1][key2];
+          }
+        }
+        this.lazyRender = !fullyResolved;
+        return new CfnMappingEmbedder(this, this.mapping, key1, key2, defaultValue).toString();
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (this.lazy === void 0 && !this.lazyRender) {
+          this.informLazyUse();
+        }
+        if (!this.lazy || this.lazy && this.lazyRender) {
+          return {
+            Mappings: {
+              [this.logicalId]: this.mapping
+            }
+          };
+        } else {
+          return {};
+        }
+      }
+      informLazyUse() {
+        if (!this.lazyInformed) {
+          Annotations.of(this).addInfo("Consider making this CfnMapping a lazy mapping by providing `lazy: true`: either no findInMap was called or every findInMap could be immediately resolved without using Fn::FindInMap");
+        }
+        this.lazyInformed = true;
+      }
+      validateMapping(mapping) {
+        Object.keys(mapping).forEach((m) => Object.keys(mapping[m]).forEach(this.validateAlphanumeric));
+        return mapping;
+      }
+      validateAlphanumeric(value) {
+        if (value.match(/[^a-zA-Z0-9]/g)) {
+          throw new UnscopedValidationError(lit`AttributeNameContainOnly`, `Attribute name '${value}' must contain only alphanumeric characters.`);
+        }
+      }
+    };
+    CfnMappingEmbedder = class {
+      constructor(cfnMapping, mapping, key1, key2, defaultValue) {
+        this.cfnMapping = cfnMapping;
+        this.mapping = mapping;
+        this.key1 = key1;
+        this.key2 = key2;
+        this.defaultValue = defaultValue;
+      }
+      cfnMapping;
+      mapping;
+      key1;
+      key2;
+      defaultValue;
+      creationStack = ["Token stack traces are no longer captured"];
+      resolve(context) {
+        const consumingStack = stackOf(context.scope);
+        if (consumingStack === stackOf(this.cfnMapping)) {
+          return Fn.findInMap(this.cfnMapping.logicalId, this.key1, this.key2, this.defaultValue);
+        }
+        const constructScope = consumingStack;
+        const constructId = `MappingCopy-${this.cfnMapping.node.id}-${this.cfnMapping.node.addr}`;
+        let mappingCopy = constructScope.node.tryFindChild(constructId);
+        if (!mappingCopy) {
+          mappingCopy = new CfnMapping(constructScope, constructId, {
+            mapping: this.mapping
+          });
+        }
+        return Fn.findInMap(mappingCopy.logicalId, this.key1, this.key2, this.defaultValue);
+      }
+      toString() {
+        return Token.asString(this);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/region-lookup.ts
+function deployTimeLookup(stack, factName, lookupMap, defaultValue) {
+  if (Object.values(lookupMap).length === 0) {
+    if (defaultValue === void 0) {
+      throw new UnscopedValidationError(lit`RegionInfoDonTInformation`, `region-info: don't have any information for ${factName}. Use 'Fact.register' to provide values, or add partitions to the '${TARGET_PARTITIONS}' context value.`);
+    }
+    return defaultValue;
+  }
+  const pattern = findValuePattern(lookupMap);
+  if (pattern !== void 0) {
+    return pattern;
+  }
+  const [factClass, factParam] = factName.includes(":") ? factName.split(":") : [factName, "value"];
+  const mapId = `${ucfirst(factClass)}Map`;
+  const factKey = factParam.replace(/[^a-zA-Z0-9]/g, "x");
+  let mapping = stack.node.tryFindChild(mapId);
+  if (!mapping) {
+    mapping = new CfnMapping(stack, mapId);
+  }
+  for (const [region, value] of Object.entries(lookupMap)) {
+    mapping.setValue(region, factKey, value);
+  }
+  return mapping.findInMap(Aws.REGION, factKey);
+}
+function ucfirst(x) {
+  return `${x.slice(0, 1).toUpperCase()}${x.slice(1)}`;
+}
+function findValuePattern(regionMap) {
+  const simplified = { ...regionMap };
+  const urlSuffixes = Object.keys(simplified).map(urlSuffix);
+  if (!allSame(urlSuffixes) && Object.entries(simplified).every(([region, value]) => value.includes(urlSuffix(region)))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], urlSuffix(region), Aws.URL_SUFFIX);
+    }
+  }
+  if (Object.entries(simplified).every(([region, value]) => value.includes(region))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], region, Aws.REGION);
+    }
+  }
+  const values = Object.values(simplified);
+  if (allSame(values)) {
+    return values[0];
+  }
+  return void 0;
+}
+function allSame(xs) {
+  return xs.every((x) => x === xs[0]);
+}
+function urlSuffix(region) {
+  return RegionInfo.get(region)?.domainSuffix ?? "amazonaws.com";
+}
+function replaceAll2(x, pat, replacement) {
+  return x.split(pat).join(replacement);
+}
+var init_region_lookup = __esm({
+  "../../aws-cdk-lib/core/lib/private/region-lookup.ts"() {
+    "use strict";
+    init_cx_api();
+    init_region_info2();
+    init_cfn_mapping();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack.ts
+function merge(template, fragment) {
+  for (const section of Object.keys(fragment)) {
+    const src = fragment[section];
+    const dest = template[section];
+    if (!dest) {
+      template[section] = src;
+    } else {
+      template[section] = mergeSection(section, dest, src);
+    }
+  }
+}
+function mergeSection(section, val1, val2) {
+  switch (section) {
+    case "Description":
+      return `${val1}
+${val2}`;
+    case "AWSTemplateFormatVersion":
+      if (val1 != null && val2 != null && val1 !== val2) {
+        throw new AssumptionError(lit`ConflictingCloudformationTemplateVersions`, `Conflicting CloudFormation template versions provided: '${val1}' and '${val2}`);
+      }
+      return val1 ?? val2;
+    case "Transform":
+      return mergeSets(val1, val2);
+    default:
+      return mergeObjectsWithoutDuplicates(section, val1, val2);
+  }
+}
+function mergeSets(val1, val2) {
+  const array1 = val1 == null ? [] : Array.isArray(val1) ? val1 : [val1];
+  const array2 = val2 == null ? [] : Array.isArray(val2) ? val2 : [val2];
+  for (const value of array2) {
+    if (!array1.includes(value)) {
+      array1.push(value);
+    }
+  }
+  return array1.length === 1 ? array1[0] : array1;
+}
+function mergeObjectsWithoutDuplicates(section, dest, src) {
+  if (typeof dest !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(dest)} to be an object`);
+  }
+  if (typeof src !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(src)} to be an object`);
+  }
+  for (const id of Object.keys(src)) {
+    if (id in dest) {
+      throw new AssumptionError(lit`SectionAlreadyContains`, `section '${section}' already contains '${id}'`);
+    }
+    dest[id] = src[id];
+  }
+  return dest;
+}
+function cfnElements(node, into = []) {
+  if (CfnElement.isCfnElement(node)) {
+    into.push(node);
+  }
+  for (const child of import_constructs22.Node.of(node).children) {
+    if (STACK_TYPE.isMarked(child)) {
+      continue;
+    }
+    cfnElements(child, into);
+  }
+  return into;
+}
+function rootPathTo(construct, ancestor) {
+  const scopes = import_constructs22.Node.of(construct).scopes;
+  for (let i = scopes.length - 2; i >= 0; i--) {
+    if (scopes[i] === ancestor) {
+      return scopes.slice(i + 1);
+    }
+  }
+  return scopes;
+}
+function makeStackName(components, prefix = "") {
+  if (components.length === 1) {
+    const stack_name = prefix + components[0];
+    if (stack_name.length <= 128) {
+      return stack_name;
+    }
+  }
+  return makeUniqueResourceName(components, { maxLength: 128, prefix });
+}
+function getCreateExportsScope(stack) {
+  const exportsName = "Exports";
+  let stackExports = stack.node.tryFindChild(exportsName);
+  if (stackExports === void 0) {
+    stackExports = new import_constructs22.Construct(stack, exportsName);
+  }
+  return stackExports;
+}
+function generateExportName2(stackExports, id) {
+  const stackRelativeExports = FeatureFlags.of(stackExports).isEnabled(STACK_RELATIVE_EXPORTS_CONTEXT);
+  const stack = Stack.of(stackExports);
+  const components = [
+    ...stackExports.node.scopes.slice(stackRelativeExports ? stack.node.scopes.length : 2).map((c) => c.node.id),
+    id
+  ];
+  const prefix = stack.stackName ? stack.stackName + ":" : "";
+  const localPart = makeUniqueId(components);
+  const maxLength = 255;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function count(xs) {
+  const ret = {};
+  for (const x of xs) {
+    if (x in ret) {
+      ret[x] += 1;
+    } else {
+      ret[x] = 1;
+    }
+  }
+  return ret;
+}
+function sameReason(a) {
+  return (b) => a.source === b.source && a.target === b.target;
+}
+function makeCustomCoupledReference(value, strength) {
+  const resolvable = Tokenization.reverse(value);
+  if (!resolvable || !CfnReference.isCfnReference(resolvable)) {
+    throw new UnscopedValidationError(
+      lit`ConsumeReferenceRequiresResourceAttribute`,
+      "consumeReference: the value must be a resource attribute reference (like 'bucket.bucketArn')"
+    );
+  }
+  return new CustomCoupledReference(resolvable, strength);
+}
+var fs17, path21, import_constructs22, minimatch2, STACK_RESOURCE_LIMIT_CONTEXT, SUPPRESS_TEMPLATE_INDENTATION_CONTEXT, TEMPLATE_BODY_MAXIMUM_SIZE, VALID_STACK_NAME_REGEX, MAX_RESOURCES, _resolve_dec, _a6, _init9, _Stack, Stack, firstTwoAgnosticAzs;
+var init_stack = __esm({
+  "../../aws-cdk-lib/core/lib/stack.ts"() {
+    "use strict";
+    fs17 = __toESM(require("fs"));
+    path21 = __toESM(require("path"));
+    import_constructs22 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_arn();
+    init_aspect();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_context_provider();
+    init_feature_flags();
+    init_mixin_metadata();
+    init_permissions_boundary();
+    init_cloudformation_lang();
+    init_logical_id();
+    init_resolve();
+    init_uniqueid();
+    init_prop_injectors();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cx_api();
+    init_perf();
+    init_cfn_output();
+    init_cross_stack_reference_strength();
+    init_names();
+    init_reference();
+    init_stack_synthesizers();
+    init_string_specializer();
+    init_stage();
+    init_tag_manager();
+    init_token();
+    init_refs();
+    init_cfn_reference();
+    init_region_info2();
+    init_region_lookup();
+    init_unique_resource_name();
+    init_private_context();
+    init_aspect_prio();
+    init_errors();
+    init_literal_string();
+    init_debug();
+    init_stack_trace();
+    init_core_construct_finders();
+    init_deps();
+    init_validation2();
+    ({ minimatch: minimatch2 } = require_commonjs3());
+    STACK_RESOURCE_LIMIT_CONTEXT = "@aws-cdk/core:stackResourceLimit";
+    SUPPRESS_TEMPLATE_INDENTATION_CONTEXT = "@aws-cdk/core:suppressTemplateIndentation";
+    TEMPLATE_BODY_MAXIMUM_SIZE = 1e6;
+    VALID_STACK_NAME_REGEX = /^[A-Za-z][A-Za-z0-9-]*$/;
+    MAX_RESOURCES = 500;
+    _Stack = class _Stack extends (_a6 = import_constructs22.Construct, _resolve_dec = [profileFn("Stack.resolve", { telemetry: true })], _a6) {
+      /**
+       * Creates a new stack.
+       *
+       * @param scope Parent of this stack, usually an `App` or a `Stage`, but could be any construct.
+       * @param id The construct ID of this stack. If `stackName` is not explicitly
+       * defined, this id (and any parent IDs) will be used to determine the
+       * physical ID of the stack.
+       * @param props Stack properties.
+       */
+      constructor(scope, id, props = {}) {
+        scope = scope ?? new App({
+          autoSynth: false
+        });
+        id = id ?? "Default";
+        super(scope, id);
+        __runInitializers(_init9, 5, this);
+        /**
+         * Tags to be applied to the stack.
+         */
+        __publicField(this, "tags");
+        /**
+         * Options for CloudFormation template (like version, transform, description).
+         */
+        __publicField(this, "templateOptions");
+        /**
+         * The AWS region into which this stack will be deployed (e.g. `us-west-2`).
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.region` when the stack is defined. This can
+         *    either be a concrete region (e.g. `us-west-2`) or the `Aws.REGION`
+         *    token.
+         * 3. `Aws.REGION`, which is represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::Region" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.region)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into a **region-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other region-agnostic behavior.
+         */
+        __publicField(this, "region");
+        /**
+         * The AWS account into which this stack will be deployed.
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.account` when the stack is defined. This can
+         *    either be a concrete account (e.g. `585695031111`) or the
+         *    `Aws.ACCOUNT_ID` token.
+         * 3. `Aws.ACCOUNT_ID`, which represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::AccountId" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.account)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into an **account-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other account-agnostic behavior.
+         */
+        __publicField(this, "account");
+        /**
+         * The environment coordinates in which this stack is deployed. In the form
+         * `aws://account/region`. Use `stack.account` and `stack.region` to obtain
+         * the specific values, no need to parse.
+         *
+         * You can use this value to determine if two stacks are targeting the same
+         * environment.
+         *
+         * If either `stack.account` or `stack.region` are not concrete values (e.g.
+         * `Aws.ACCOUNT_ID` or `Aws.REGION`) the special strings `unknown-account` and/or
+         * `unknown-region` will be used respectively to indicate this stack is
+         * region/account-agnostic.
+         */
+        __publicField(this, "environment");
+        /**
+         * If this is a nested stack, this represents its `AWS::CloudFormation::Stack`
+         * resource. `undefined` for top-level (non-nested) stacks.
+         *
+         */
+        __publicField(this, "nestedStackResource");
+        /**
+         * The name of the CloudFormation template file emitted to the output
+         * directory during synthesis.
+         *
+         * Example value: `MyStack.template.json`
+         */
+        __publicField(this, "templateFile");
+        /**
+         * The ID of the cloud assembly artifact for this stack.
+         */
+        __publicField(this, "artifactId");
+        /**
+         * Synthesis method for this stack
+         *
+         */
+        __publicField(this, "synthesizer");
+        /**
+         * Whether version reporting is enabled for this stack
+         *
+         * Controls whether the CDK Metadata resource is injected
+         *
+         * @internal
+         */
+        __publicField(this, "_versionReportingEnabled");
+        /**
+         * Whether cross region references are enabled for this stack
+         *
+         * @internal
+         */
+        __publicField(this, "_crossRegionReferences");
+        /**
+         * SNS Notification ARNs to receive stack events.
+         *
+         * @internal
+         */
+        __publicField(this, "_notificationArns");
+        /**
+         * Logical ID generation strategy
+         */
+        __publicField(this, "_logicalIds");
+        /**
+         * Other stacks this stack depends on
+         */
+        __publicField(this, "_stackDependencies");
+        /**
+         * Lists all missing contextual information.
+         * This is returned when the stack is synthesized under the 'missing' attribute
+         * and allows tooling to obtain the context and re-synthesize.
+         */
+        __publicField(this, "_missingContext");
+        __publicField(this, "_stackName");
+        /**
+         * Enable this flag to suppress indentation in generated
+         * CloudFormation templates.
+         *
+         * If not specified, the value of the `@aws-cdk/core:suppressTemplateIndentation`
+         * context key will be used. If that is not specified, then the
+         * default value `false` will be used.
+         *
+         * @default - the value of `@aws-cdk/core:suppressTemplateIndentation`, or `false` if that is not set.
+         */
+        __publicField(this, "_suppressTemplateIndentation");
+        __publicField(this, "_terminationProtection");
+        /**
+         * Silencing a specific diagnostic, should only do this once.
+         */
+        __publicField(this, "azLiteralWarningSilenced", false);
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        this._missingContext = new Array();
+        this._stackDependencies = {};
+        this.templateOptions = {};
+        this._crossRegionReferences = !!props.crossRegionReferences;
+        this._suppressTemplateIndentation = props.suppressTemplateIndentation ?? this.node.tryGetContext(SUPPRESS_TEMPLATE_INDENTATION_CONTEXT) ?? false;
+        STACK_TYPE.mark(this);
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+        this._logicalIds = new LogicalIDs();
+        const { account, region, environment } = this.parseEnvironment(props.env);
+        this.account = account;
+        this.region = region;
+        this.environment = environment;
+        this._terminationProtection = props.terminationProtection ?? false;
+        if (props.description !== void 0) {
+          if (props.description.length > 512) {
+            throw new ValidationError(lit`StackDescriptionTooLong`, `Stack description must be <= 1024 bytes. Received description: '${props.description}'`, this);
+          }
+          this.templateOptions.description = props.description;
+        }
+        this._stackName = props.stackName ?? this.generateStackName();
+        if (this._stackName.length > 128) {
+          throw new ValidationError(lit`StackNameTooLong`, `Stack name must be <= 128 characters. Stack name: '${this._stackName}'`, this);
+        }
+        this.tags = new TagManager("KeyValue" /* KEY_VALUE */, "aws:cdk:stack", props.tags);
+        for (const notificationArn of props.notificationArns ?? []) {
+          if (Token.isUnresolved(notificationArn)) {
+            throw new ValidationError(lit`StackNotificationArnsContainTokens`, `Stack '${id}' includes one or more tokens in its notification ARNs: ${props.notificationArns}`, this);
+          }
+        }
+        this._notificationArns = props.notificationArns;
+        if (!VALID_STACK_NAME_REGEX.test(this.stackName)) {
+          throw new ValidationError(lit`StackNameInvalidFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${this.stackName}'`, this);
+        }
+        const featureFlags = FeatureFlags.of(this);
+        const stackNameDupeContext = featureFlags.isEnabled(ENABLE_STACK_NAME_DUPLICATES_CONTEXT);
+        const newStyleSynthesisContext = featureFlags.isEnabled(NEW_STYLE_STACK_SYNTHESIS_CONTEXT);
+        const artifactId = stackNameDupeContext || newStyleSynthesisContext ? this.generateStackArtifactId() : this.stackName;
+        this.artifactId = artifactId.replace(/[^A-Za-z0-9_\-\.]/g, "_");
+        this.templateFile = `${this.artifactId}.template.json`;
+        this._versionReportingEnabled = (props.analyticsReporting ?? this.node.tryGetContext(ANALYTICS_REPORTING_ENABLED_CONTEXT)) && !this.nestedStackParent;
+        const synthesizer = props.synthesizer ?? this.node.tryGetContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER) ?? (newStyleSynthesisContext ? new DefaultStackSynthesizer() : new LegacyStackSynthesizer());
+        if (isReusableStackSynthesizer(synthesizer)) {
+          this.synthesizer = synthesizer.reusableBind(this);
+        } else {
+          this.synthesizer = synthesizer;
+          this.synthesizer.bind(this);
+        }
+        props.permissionsBoundary?._bind(this);
+        this.addPermissionsBoundaryAspect();
+      }
+      /**
+       * Return whether the given object is a Stack.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static isStack(x) {
+        return STACK_TYPE.isMarked(x);
+      }
+      /**
+       * Looks up the first stack scope in which `construct` is defined. Fails if there is no stack up the tree.
+       *
+       * Will return the closest containing `Stack` or `NestedStack`.
+       *
+       * @param construct The construct to start the search from.
+       */
+      static of(construct) {
+        return stackOf(construct);
+      }
+      /**
+       * Override the reference strength for a specific cross-stack reference value.
+       *
+       * Use this to weaken (or strengthen) an individual reference without
+       * affecting other references to the same resource. For example:
+       *
+       * ```ts
+       * // producerStack defines an SNS topic
+       * declare const topic: sns.Topic;
+       *
+       * // consumerStack subscribes to it with a weak reference,
+       * // so the producer can be torn down without blocking on this consumer
+       * const consumerStack = new Stack(app, 'Consumer', {
+       *   env: { account: '123456789012', region: 'us-east-1' },
+       * });
+       * new sns.Subscription(consumerStack, 'Subscription', {
+       *   topic: sns.Topic.fromTopicArn(consumerStack, 'Topic', Stack.consumeReference(topic.topicArn)),
+       *   endpoint: 'https://example.com/webhook',
+       *   protocol: sns.SubscriptionProtocol.HTTPS,
+       * });
+       * ```
+       *
+       * @param value A tokenized string reference (e.g. `bucket.bucketArn`).
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeReference(value, strength = "both" /* BOTH */) {
+        return Token.asString(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Override the reference strength for a specific cross-stack string list reference.
+       *
+       * This is the string list equivalent of `consumeReference`.
+       *
+       * @param value A tokenized string list reference.
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeListReference(value, strength = "both" /* BOTH */) {
+        return Token.asList(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Whether termination protection is enabled for this stack.
+       */
+      get terminationProtection() {
+        return this._terminationProtection;
+      }
+      set terminationProtection(value) {
+        this._terminationProtection = value;
+      }
+      /**
+       * If a permissions boundary has been applied on this scope or any parent scope
+       * then this will return the ARN of the permissions boundary.
+       *
+       * This will return the permissions boundary that has been applied to the most
+       * specific scope.
+       *
+       * For example:
+       *
+       * const stage = new Stage(app, 'stage', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('stage-pb'),
+       * });
+       *
+       * const stack = new Stack(stage, 'Stack', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'),
+       * });
+       *
+       *  Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';
+       *
+       * @param scope the construct scope to retrieve the permissions boundary name from
+       * @returns the name of the permissions boundary or undefined if not set
+       */
+      get permissionsBoundaryArn() {
+        const qualifier = this.synthesizer.bootstrapQualifier ?? this.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        const spec = new StringSpecializer(this, qualifier);
+        const context = this.node.tryGetContext(PERMISSIONS_BOUNDARY_CONTEXT_KEY);
+        let arn;
+        if (context && context.arn) {
+          arn = spec.specialize(context.arn);
+        } else if (context && context.name) {
+          arn = spec.specialize(this.formatArn({
+            service: "iam",
+            resource: "policy",
+            region: "",
+            resourceName: context.name
+          }));
+        }
+        if (arn && (arn.includes("${Qualifier}") || arn.includes("${AWS::AccountId}") || arn.includes("${AWS::Region}") || arn.includes("${AWS::Partition}"))) {
+          throw new ValidationError(lit`PermissionsBoundaryContainsPseudoParameter`, `The permissions boundary ${arn} includes a pseudo parameter, which is not supported for environment agnostic stacks`, this);
+        }
+        return arn;
+      }
+      /**
+       * Adds an aspect to the stack that will apply the permissions boundary.
+       * This will only add the aspect if the permissions boundary has been set
+       */
+      addPermissionsBoundaryAspect() {
+        const permissionsBoundaryArn = this.permissionsBoundaryArn;
+        if (permissionsBoundaryArn) {
+          Aspects.of(this).add({
+            visit(node) {
+              if (CfnResource.isCfnResource(node) && (node.cfnResourceType == "AWS::IAM::Role" || node.cfnResourceType == "AWS::IAM::User")) {
+                node.addPropertyOverride("PermissionsBoundary", permissionsBoundaryArn);
+              }
+            }
+          }, {
+            priority: mutatingAspectPrio32333(this)
+          });
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      resolve(obj) {
+        return resolve(obj, {
+          scope: this,
+          prefix: [],
+          resolver: CLOUDFORMATION_TOKEN_RESOLVER,
+          preparing: false
+        });
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a JSON string
+       */
+      toJsonString(obj, space) {
+        return CloudFormationLang.toJSON(obj, space).toString();
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a YAML string
+       */
+      toYamlString(obj) {
+        return CloudFormationLang.toYAML(obj).toString();
+      }
+      /**
+       * DEPRECATED
+       * @deprecated use `reportMissingContextKey()`
+       */
+      reportMissingContext(report) {
+        if (!Object.values(cloud_assembly_schema_exports.ContextProvider).includes(report.provider)) {
+          throw new ValidationError(lit`UnknownContextProvider`, `Unknown context provider requested in: ${JSON.stringify(report)}`, this);
+        }
+        this.reportMissingContextKey(report);
+      }
+      /**
+       * Indicate that a context key was expected
+       *
+       * Contains instructions which will be emitted into the cloud assembly on how
+       * the key should be supplied.
+       *
+       * @param report The set of parameters needed to obtain the context
+       */
+      reportMissingContextKey(report) {
+        this._missingContext.push(report);
+      }
+      /**
+       * Rename a generated logical identities
+       *
+       * To modify the naming scheme strategy, extend the `Stack` class and
+       * override the `allocateLogicalId` method.
+       */
+      renameLogicalId(oldId, newId) {
+        this._logicalIds.addRename(oldId, newId);
+      }
+      /**
+       * Allocates a stack-unique CloudFormation-compatible logical identity for a
+       * specific resource.
+       *
+       * This method is called when a `CfnElement` is created and used to render the
+       * initial logical identity of resources. Logical ID renames are applied at
+       * this stage.
+       *
+       * This method uses the protected method `allocateLogicalId` to render the
+       * logical ID for an element. To modify the naming scheme, extend the `Stack`
+       * class and override this method.
+       *
+       * @param element The CloudFormation element for which a logical identity is
+       * needed.
+       */
+      getLogicalId(element) {
+        const logicalId = this.allocateLogicalId(element);
+        return this._logicalIds.applyRename(logicalId);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method has been renamed to `addStackDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addStackDependency` instead.
+       */
+      addDependency(target, reason) {
+        this.addStackDependency(target, reason);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method only adds dependencies between stacks. If you are looking
+       * for a generic construct-to-construct dependency mechanism, use
+       * `construct.node.addDependency` instead.
+       */
+      addStackDependency(target, reason) {
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addStackDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Return the stacks this stack depends on
+       */
+      get dependencies() {
+        return Object.values(this._stackDependencies).map((x) => x.stack);
+      }
+      /**
+       * The concrete CloudFormation physical stack name.
+       *
+       * This is either the name defined explicitly in the `stackName` prop or
+       * allocated based on the stack's location in the construct tree. Stacks that
+       * are directly defined under the app use their construct `id` as their stack
+       * name. Stacks that are defined deeper within the tree will use a hashed naming
+       * scheme based on the construct path to ensure uniqueness.
+       *
+       * If you wish to obtain the deploy-time AWS::StackName intrinsic,
+       * you can use `Aws.STACK_NAME` directly.
+       */
+      get stackName() {
+        return this._stackName;
+      }
+      /**
+       * The partition in which this stack is defined
+       */
+      get partition() {
+        if (!FeatureFlags.of(this).isEnabled(ENABLE_PARTITION_LITERALS) || Token.isUnresolved(this.region)) {
+          return Aws.PARTITION;
+        } else {
+          const partition = RegionInfo.get(this.region).partition;
+          return partition ?? Aws.PARTITION;
+        }
+      }
+      /**
+       * The Amazon domain suffix for the region in which this stack is defined
+       */
+      get urlSuffix() {
+        return Aws.URL_SUFFIX;
+      }
+      /**
+       * The ID of the stack
+       *
+       * @example
+       * // After resolving, looks like
+       * 'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123'
+       */
+      get stackId() {
+        return new ScopedAws(this).stackId;
+      }
+      /**
+       * Returns the list of notification Amazon Resource Names (ARNs) for the current stack.
+       */
+      get notificationArns() {
+        return new ScopedAws(this).notificationArns;
+      }
+      /**
+       * Indicates if this is a nested stack, in which case `parentStack` will include a reference to its parent.
+       */
+      get nested() {
+        return this.nestedStackResource !== void 0;
+      }
+      /**
+       * Creates an ARN from components.
+       *
+       * If `partition`, `region` or `account` are not specified, the stack's
+       * partition, region and account will be used.
+       *
+       * If any component is the empty string, an empty string will be inserted
+       * into the generated ARN at the location that component corresponds to.
+       *
+       * The ARN will be formatted as follows:
+       *
+       *   arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}
+       *
+       * The required ARN pieces that are omitted will be taken from the stack that
+       * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope
+       * can be 'undefined'.
+       */
+      formatArn(components) {
+        return Arn.format(components, this);
+      }
+      /**
+       * Given an ARN, parses it and returns components.
+       *
+       * IF THE ARN IS A CONCRETE STRING...
+       *
+       * ...it will be parsed and validated. The separator (`sep`) will be set to '/'
+       * if the 6th component includes a '/', in which case, `resource` will be set
+       * to the value before the '/' and `resourceName` will be the rest. In case
+       * there is no '/', `resource` will be set to the 6th components and
+       * `resourceName` will be set to the rest of the string.
+       *
+       * IF THE ARN IS A TOKEN...
+       *
+       * ...it cannot be validated, since we don't have the actual value yet at the
+       * time of this function call. You will have to supply `sepIfToken` and
+       * whether or not ARNs of the expected format usually have resource names
+       * in order to parse it properly. The resulting `ArnComponents` object will
+       * contain tokens for the subexpressions of the ARN, not string literals.
+       *
+       * If the resource name could possibly contain the separator char, the actual
+       * resource name cannot be properly parsed. This only occurs if the separator
+       * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs,
+       * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a
+       * Tokenized ARN, you must know the resource type and call
+       * `Arn.extractResourceName`.
+       *
+       * @param arn The ARN string to parse
+       * @param sepIfToken The separator used to separate resource from resourceName
+       * @param hasName Whether there is a name component in the ARN at all. For
+       * example, SNS Topics ARNs have the 'resource' component contain the topic
+       * name, and no 'resourceName' component.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       * components of the ARN.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       *      components of the ARN.
+       *
+       * @deprecated use splitArn instead
+       */
+      parseArn(arn, sepIfToken = "/", hasName = true) {
+        return Arn.parse(arn, sepIfToken, hasName);
+      }
+      /**
+       * Splits the provided ARN into its components.
+       * Works both if 'arn' is a string like 'arn:aws:s3:::bucket',
+       * and a Token representing a dynamic CloudFormation expression
+       * (in which case the returned components will also be dynamic CloudFormation expressions,
+       * encoded as Tokens).
+       *
+       * @param arn the ARN to split into its components
+       * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses
+       */
+      splitArn(arn, arnFormat) {
+        return Arn.split(arn, arnFormat);
+      }
+      /**
+       * Returns the list of AZs that are available in the AWS environment
+       * (account/region) associated with this stack.
+       *
+       * If the stack is environment-agnostic (either account and/or region are
+       * tokens), this property will return an array with 2 tokens that will resolve
+       * at deploy-time to the first two availability zones returned from CloudFormation's
+       * `Fn::GetAZs` intrinsic function.
+       *
+       * If they are not available in the context, returns a set of dummy values and
+       * reports them as missing, and let the CLI resolve them by calling EC2
+       * `DescribeAvailabilityZones` on the target environment.
+       *
+       * To specify a different strategy for selecting availability zones override this method.
+       */
+      get availabilityZones() {
+        this._silenceLiteralAzWarning();
+        const agnostic = Token.isUnresolved(this.account) || Token.isUnresolved(this.region);
+        if (agnostic) {
+          return this.node.tryGetContext(import_cloud_assembly_api.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY) || firstTwoAgnosticAzs();
+        }
+        const value = ContextProvider.getValue(this, {
+          provider: cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER,
+          dummyValue: ["dummy1a", "dummy1b", "dummy1c"]
+        }).value;
+        if (!Array.isArray(value)) {
+          throw new ValidationError(lit`ProviderExpectedList`, `Provider ${cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER} expects a list`, this);
+        }
+        return value;
+      }
+      /**
+       * Register a file asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addFileAsset()` if you are calling,
+       * and a different IStackSynthesizer class if you are implementing.
+       */
+      addFileAsset(asset) {
+        return this.synthesizer.addFileAsset(asset);
+      }
+      /**
+       * Register a docker image asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addDockerImageAsset()` if you are calling,
+       * and a different `IStackSynthesizer` class if you are implementing.
+       */
+      addDockerImageAsset(asset) {
+        return this.synthesizer.addDockerImageAsset(asset);
+      }
+      /**
+       * If this is a nested stack, returns its parent stack.
+       */
+      get nestedStackParent() {
+        return this.nestedStackResource && _Stack.of(this.nestedStackResource);
+      }
+      /**
+       * Returns the parent of a nested stack.
+       *
+       * @deprecated use `nestedStackParent`
+       */
+      get parentStack() {
+        return this.nestedStackParent;
+      }
+      /**
+       * Add a Transform to this stack. A Transform is a macro that AWS
+       * CloudFormation uses to process your template.
+       *
+       * Duplicate values are removed when stack is synthesized.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html
+       * @param transform The transform to add
+       *
+       * @example
+       * declare const stack: Stack;
+       *
+       * stack.addTransform('AWS::Serverless-2016-10-31')
+       */
+      addTransform(transform) {
+        if (!this.templateOptions.transforms) {
+          this.templateOptions.transforms = [];
+        }
+        this.templateOptions.transforms.push(transform);
+      }
+      /**
+       * Adds an arbitrary key-value pair, with information you want to record about the stack.
+       * These get translated to the Metadata section of the generated template.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       */
+      addMetadata(key, value) {
+        if (!this.templateOptions.metadata) {
+          this.templateOptions.metadata = {};
+        }
+        this.templateOptions.metadata[key] = value;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two top-level stacks.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addStackDependency(target, reason) {
+        if (!reason.reason) {
+          throw new ValidationError(lit`MissingDependencyReason`, "A stack dependency reason must be provided", this);
+        }
+        const cycle = target.stackDependencyReasons(this);
+        if (cycle !== void 0) {
+          const cycleDescription = cycle.map((cycleReason) => {
+            return cycleReason.reason;
+          }).join(", ");
+          throw new ValidationError(lit`DependencyCycle`, `'${target.node.path}' depends on '${this.node.path}' (${cycleDescription}). Adding this dependency (${reason.reason}) would create a cyclic reference.`, this);
+        }
+        const dep = this._stackDependencies[Names.uniqueId(target)] ?? (this._stackDependencies[Names.uniqueId(target)] = { stack: target, reasons: [] });
+        if (dep.reasons.find(sameReason(reason))) {
+          return;
+        }
+        dep.reasons.push(reason);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] stack "${reason.source.node.path}" depends on "${reason.target.node.path}"`);
+        }
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two top-level stacks.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeStackDependency(target, reason) {
+        let dep = this._stackDependencies[Names.uniqueId(target)];
+        if (!dep) {
+          return;
+        }
+        const matchedReasons = dep.reasons.filter(sameReason(reason));
+        if (matchedReasons.length === 0) {
+          return;
+        }
+        if (matchedReasons.length > 1) {
+          throw new ValidationError(lit`TooManyDependencyReasons`, `There cannot be more than one reason for dependency removal, found: ${matchedReasons}`, this);
+        }
+        let index = dep.reasons.indexOf(matchedReasons[0]);
+        dep.reasons.splice(index, 1);
+        if (dep.reasons.length == 0) {
+          delete this._stackDependencies[Names.uniqueId(target)];
+        }
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.log(`[CDK_DEBUG_DEPS] stack "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Return the stacks dependencies caused by the given construct.
+       *
+       * Returns the target resources that the dependency has been added for.
+       *
+       * I'm not sure this method is useful in any way, but we are keeping it in
+       * to maintain exact behavior as guaranteed by unit tests.
+       *
+       * @internal
+       */
+      _stackDependenciesCausedBy(source) {
+        return Array.from(new Set(Object.values(this._stackDependencies).flatMap((dep) => dep.reasons).filter((reason) => reason.source === source).map((reason) => reason.target)));
+      }
+      /**
+       * Synthesizes the cloudformation template into a cloud assembly.
+       * @internal
+       */
+      _synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        const builder = session.assembly;
+        this.node.addMetadata(CDK_TEMPLATE_FILE_KEY, this.templateFile);
+        const template = this._toCloudFormation();
+        const outPath = path21.join(builder.outdir, this.templateFile);
+        if (this.maxResources > 0) {
+          const resources = template.Resources || {};
+          const numberOfResources = Object.keys(resources).length;
+          if (numberOfResources > this.maxResources) {
+            const counts = Object.entries(count(Object.values(resources).map((r) => `${r?.Type}`))).map(([type, c]) => `${type} (${c})`).join(", ");
+            throw new ValidationError(lit`TooManyResourcesInStack`, `Number of resources in stack '${this.node.path}': ${numberOfResources} is greater than allowed maximum of ${this.maxResources}: ${counts}`, this);
+          } else if (numberOfResources >= this.maxResources * 0.8) {
+            Annotations.of(this).addInfo(`Number of resources: ${numberOfResources} is approaching allowed maximum of ${this.maxResources}`);
+          }
+        }
+        const indent = this._suppressTemplateIndentation ? void 0 : 1;
+        const templateData = JSON.stringify(template, void 0, indent);
+        if (templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE * 0.8) {
+          const verb = templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE ? "exceeds" : "is approaching";
+          const advice = this._suppressTemplateIndentation ? "Split resources into multiple stacks to reduce template size" : "Split resources into multiple stacks or set suppressTemplateIndentation to reduce template size";
+          const message = `Template size ${verb} limit: ${templateData.length}/${TEMPLATE_BODY_MAXIMUM_SIZE}. ${advice}.`;
+          Annotations.of(this).addWarningV2("@aws-cdk/core:Stack.templateSize", message);
+        }
+        fs17.writeFileSync(outPath, templateData);
+        for (const ctx of this._missingContext) {
+          const queryLookupOptions = {
+            lookupRoleArn,
+            lookupRoleExternalId,
+            assumeRoleAdditionalOptions: lookupRoleAdditionalOptions
+          };
+          builder.addMissing({ ...ctx, props: { ...ctx.props, ...queryLookupOptions } });
+        }
+      }
+      /**
+       * Look up a fact value for the given fact for the region of this stack
+       *
+       * Will return a definite value only if the region of the current stack is resolved.
+       * If not, a lookup map will be added to the stack and the lookup will be done at
+       * CDK deployment time.
+       *
+       * What regions will be included in the lookup map is controlled by the
+       * `@aws-cdk/core:target-partitions` context value: it must be set to a list
+       * of partitions, and only regions from the given partitions will be included.
+       * If no such context key is set, all regions will be included.
+       *
+       * This function is intended to be used by construct library authors. Application
+       * builders can rely on the abstractions offered by construct libraries and do
+       * not have to worry about regional facts.
+       *
+       * If `defaultValue` is not given, it is an error if the fact is unknown for
+       * the given region.
+       */
+      regionalFact(factName, defaultValue) {
+        if (!Token.isUnresolved(this.region)) {
+          const ret = Fact.find(this.region, factName) ?? defaultValue;
+          if (ret === void 0) {
+            throw new ValidationError(lit`RegionFactNotFound`, `region-info: don't know ${factName} for region ${this.region}. Use 'Fact.register' to provide this value.`, this);
+          }
+          return ret;
+        }
+        const partitions = import_constructs22.Node.of(this).tryGetContext(TARGET_PARTITIONS);
+        if (partitions !== void 0 && partitions !== "undefined" && !Array.isArray(partitions)) {
+          throw new ValidationError(lit`TargetPartitionsContextValueInvalid`, `Context value '${TARGET_PARTITIONS}' should be a list of strings, got: ${JSON.stringify(partitions)}`, this);
+        }
+        const lookupMap = partitions !== void 0 && partitions !== "undefined" ? RegionInfo.limitedRegionMap(factName, partitions) : RegionInfo.regionMap(factName);
+        return deployTimeLookup(this, factName, lookupMap, defaultValue);
+      }
+      /**
+       * Create a CloudFormation Export for a string value
+       *
+       * Returns a string representing the corresponding `Fn.importValue()`
+       * expression for this Export. You can control the name for the export by
+       * passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * Here is how the process works. Let's say there are two stacks,
+       * `producerStack` and `consumerStack`, and `producerStack` has a bucket
+       * called `bucket`, which is referenced by `consumerStack` (perhaps because
+       * an AWS Lambda Function writes into it, or something like that).
+       *
+       * It is not safe to remove `producerStack.bucket` because as the bucket is being
+       * deleted, `consumerStack` might still be using it.
+       *
+       * Instead, the process takes two deployments:
+       *
+       * **Deployment 1: break the relationship**:
+       *
+       * - Make sure `consumerStack` no longer references `bucket.bucketName` (maybe the consumer
+       *   stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just
+       *   remove the Lambda Function altogether).
+       * - In the `ProducerStack` class, call `this.exportValue(this.bucket.bucketName)`. This
+       *   will make sure the CloudFormation Export continues to exist while the relationship
+       *   between the two stacks is being broken.
+       * - Deploy (this will effectively only change the `consumerStack`, but it's safe to deploy both).
+       *
+       * **Deployment 2: remove the bucket resource**:
+       *
+       * - You are now free to remove the `bucket` resource from `producerStack`.
+       * - Don't forget to remove the `exportValue()` call as well.
+       * - Deploy again (this time only the `producerStack` will be changed -- the bucket will be deleted).
+       */
+      exportValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: exportedValue,
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.importValue(options.name);
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            value: Token.asString(exportable),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.importValue(exportName);
+        if (Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedListValueFromExportValue`, "Attempted to export a list value from `exportValue()`: use `exportStringListValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Create a CloudFormation Export for a string list value
+       *
+       * Returns a string list representing the corresponding `Fn.importValue()`
+       * expression for this Export. The export expression is automatically wrapped with an
+       * `Fn::Join` and the import value with an `Fn::Split`, since CloudFormation can only
+       * export strings. You can control the name for the export by passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * See `exportValue` for an example of this process.
+       */
+      exportStringListValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, exportedValue),
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(options.name));
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            // this is a list so export an Fn::Join expression
+            // and import an Fn::Split expression,
+            // since CloudFormation Outputs can only be strings
+            // (string lists are invalid)
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(exportable)),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(exportName));
+        if (!Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedStringValueFromExportStringListValue`, "Attempted to export a string value from `exportStringListValue()`: use `exportValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Returns `true` if this stack is a top-level stack (i.e., not a nested stack).
+       *
+       * For better or worse, `Stack` is being subclassed by other constructs to mean "template producer".
+       * For example, `NestedStack` is a subclass of `Stack` but is not a top-level stack, and so
+       * is `CloudFormationProduct`.
+       *
+       * This indicates whether the current class represents a top-level stack
+       * (should only be true for instances of the main `Stack` class), or false for
+       * a construct that simply produces a template and happens to reuse `Stack`
+       * for that purpose.
+       *
+       * Here is the class hierarchy we should have had:
+       *
+       * ```
+       * TemplateProducer
+       * ├── Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * Here is the class hierarchy we actually have:
+       *
+       * ```
+       * Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * @internal
+       */
+      get _isTopLevelStack() {
+        return true;
+      }
+      /**
+       * Returns the naming scheme used to allocate logical IDs. By default, uses
+       * the `HashedAddressingScheme` but this method can be overridden to customize
+       * this behavior.
+       *
+       * In order to make sure logical IDs are unique and stable, we hash the resource
+       * construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as
+       * a suffix to the path components joined without a separator (CloudFormation
+       * IDs only allow alphanumeric characters).
+       *
+       * The result will be:
+       *
+       *   
+       *     "human"      "hash"
+       *
+       * If the "human" part of the ID exceeds 240 characters, we simply trim it so
+       * the total ID doesn't exceed CloudFormation's 255 character limit.
+       *
+       * We only take 8 characters from the md5 hash (0.000005 chance of collision).
+       *
+       * Special cases:
+       *
+       * - If the path only contains a single component (i.e. it's a top-level
+       *   resource), we won't add the hash to it. The hash is not needed for
+       *   disambiguation and also, it allows for a more straightforward migration an
+       *   existing CloudFormation template to a CDK stack without logical ID changes
+       *   (or renames).
+       * - For aesthetic reasons, if the last components of the path are the same
+       *   (i.e. `L1/L2/Pipeline/Pipeline`), they will be de-duplicated to make the
+       *   resulting human portion of the ID more pleasing: `L1L2Pipeline`
+       *   instead of `L1L2PipelinePipeline`
+       * - If a component is named "Default" it will be omitted from the path. This
+       *   allows refactoring higher level abstractions around constructs without affecting
+       *   the IDs of already deployed resources.
+       * - If a component is named "Resource" it will be omitted from the user-visible
+       *   path, but included in the hash. This reduces visual noise in the human readable
+       *   part of the identifier.
+       *
+       * @param cfnElement The element for which the logical ID is allocated.
+       */
+      allocateLogicalId(cfnElement) {
+        const scopes = cfnElement.node.scopes;
+        const stackIndex = scopes.indexOf(cfnElement.stack);
+        const pathComponents = scopes.slice(stackIndex + 1).map((x) => x.node.id);
+        return makeUniqueId(pathComponents);
+      }
+      /**
+       * Validate stack name
+       *
+       * CloudFormation stack names can include dashes in addition to the regular identifier
+       * character classes, and we don't allow one of the magic markers.
+       *
+       * @internal
+       */
+      _validateId(name) {
+        if (name && !VALID_STACK_NAME_REGEX.test(name)) {
+          throw new ValidationError(lit`InvalidStackNameFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${name}'`, this);
+        }
+      }
+      /**
+       * Returns the CloudFormation template for this stack by traversing
+       * the tree and invoking _toCloudFormation() on all Entity objects.
+       *
+       * @internal
+       */
+      _toCloudFormation() {
+        let transform;
+        if (this.templateOptions.transform) {
+          Annotations.of(this).addWarningV2("@aws-cdk/core:stackDeprecatedTransform", "This stack is using the deprecated `templateOptions.transform` property. Consider switching to `addTransform()`.");
+          this.addTransform(this.templateOptions.transform);
+        }
+        if (this.templateOptions.transforms) {
+          if (this.templateOptions.transforms.length === 1) {
+            transform = this.templateOptions.transforms[0];
+          } else {
+            transform = Array.from(new Set(this.templateOptions.transforms));
+          }
+        }
+        const template = {
+          Description: this.templateOptions.description,
+          Transform: transform,
+          AWSTemplateFormatVersion: this.templateOptions.templateFormatVersion,
+          Metadata: this.templateOptions.metadata
+        };
+        const elements = cfnElements(this);
+        const fragments = elements.map((e) => this.resolve(e._toCloudFormation()));
+        for (const fragment of fragments) {
+          merge(template, fragment);
+        }
+        const ret = this.resolve(template) || {};
+        this._logicalIds.assertAllRenamesApplied();
+        return ret;
+      }
+      /**
+       * Deprecated.
+       *
+       * @see https://github.com/aws/aws-cdk/pull/7187
+       * @returns reference itself without any change
+       * @deprecated cross reference handling has been moved to `App.prepare()`.
+       */
+      prepareCrossReference(_sourceStack, reference) {
+        return reference;
+      }
+      /**
+       * Determine the various stack environment attributes.
+       *
+       */
+      parseEnvironment(env2 = {}) {
+        const containingAssembly = Stage.of(this);
+        if (env2.account && typeof env2.account !== "string") {
+          throw new ValidationError(lit`AccountIdMustBeString`, `Account id of stack environment must be a 'string' but received '${typeof env2.account}'`, this);
+        }
+        if (env2.region && typeof env2.region !== "string") {
+          throw new ValidationError(lit`RegionMustBeString`, `Region of stack environment must be a 'string' but received '${typeof env2.region}'`, this);
+        }
+        const account = env2.account ?? containingAssembly?.account ?? Aws.ACCOUNT_ID;
+        const region = env2.region ?? containingAssembly?.region ?? Aws.REGION;
+        const envAccount = !Token.isUnresolved(account) ? account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+        const envRegion = !Token.isUnresolved(region) ? region : import_cloud_assembly_api.UNKNOWN_REGION;
+        return {
+          account,
+          region,
+          environment: (void 0).format(envAccount, envRegion)
+        };
+      }
+      /**
+       * Maximum number of resources in the stack
+       *
+       * Set to 0 to mean "unlimited".
+       */
+      get maxResources() {
+        const contextLimit = this.node.tryGetContext(STACK_RESOURCE_LIMIT_CONTEXT);
+        return contextLimit !== void 0 ? parseInt(contextLimit, 10) : MAX_RESOURCES;
+      }
+      /**
+       * Check whether this stack has a (transitive) dependency on another stack
+       *
+       * Returns the list of reasons on the dependency path, or undefined
+       * if there is no dependency.
+       */
+      stackDependencyReasons(other) {
+        if (this === other) {
+          return [];
+        }
+        for (const dep of Object.values(this._stackDependencies)) {
+          const ret = dep.stack.stackDependencyReasons(other);
+          if (ret !== void 0) {
+            return [...dep.reasons, ...ret];
+          }
+        }
+        return void 0;
+      }
+      /**
+       * Calculate the stack name based on the construct path
+       *
+       * The stack name is the name under which we'll deploy the stack,
+       * and incorporates containing Stage names by default.
+       *
+       * Generally this looks a lot like how logical IDs are calculated.
+       * The stack name is calculated based on the construct root path,
+       * as follows:
+       *
+       * - Path is calculated with respect to containing App or Stage (if any)
+       * - If the path is one component long just use that component, otherwise
+       *   combine them with a hash.
+       *
+       * Since the hash is quite ugly and we'd like to avoid it if possible -- but
+       * we can't anymore in the general case since it has been written into legacy
+       * stacks. The introduction of Stages makes it possible to make this nicer however.
+       * When a Stack is nested inside a Stage, we use the path components below the
+       * Stage, and prefix the path components of the Stage before it.
+       */
+      generateStackName() {
+        const assembly = Stage.of(this);
+        const prefix = assembly && assembly.stageName ? `${assembly.stageName}-` : "";
+        if (FeatureFlags.of(this).isEnabled(INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION)) {
+          return `${this.generateStackId(assembly, prefix)}`;
+        } else {
+          return `${prefix}${this.generateStackId(assembly)}`;
+        }
+      }
+      /**
+       * The artifact ID for this stack
+       *
+       * Stack artifact ID is unique within the App's Cloud Assembly.
+       */
+      generateStackArtifactId() {
+        return this.generateStackId(this.node.root);
+      }
+      /**
+       * Generate an ID with respect to the given container construct.
+       */
+      generateStackId(container, prefix = "") {
+        const rootPath = rootPathTo(this, container);
+        const ids = rootPath.map((c) => import_constructs22.Node.of(c).id);
+        if (ids.length === 1 && !ids[0]) {
+          throw new ValidationError(lit`StackIdMustBeDefined`, "unexpected: stack id must always be defined", this);
+        }
+        return makeStackName(ids, prefix);
+      }
+      /**
+       * Silence CloudFormation validate warning W3010 ("literal AZs limit portability")
+       *
+       * This is true! But the Validation Plugin is looking at the template and cannot tell
+       * the difference between a literal AZ in the template because a user typed it in the
+       * CDK code, vs a user using CDK's facilities to reflect on AZs and using those.
+       *
+       * So once a user calls `stack.availabilityZones`, we will take that as a signal
+       * they are "doing the right thing" and silencing this warning for them.
+       *
+       * @internal
+       */
+      _silenceLiteralAzWarning() {
+        if (this.azLiteralWarningSilenced) {
+          return;
+        }
+        this.azLiteralWarningSilenced = true;
+        Validations.of(this).acknowledge({
+          id: "CloudFormation-Validate::W3010",
+          reason: "Literal AZs in template are the result of accessing stack.availabilityZones, this is expected and safe"
+        });
+      }
+      resolveExportedValue(exportedValue) {
+        const resolvable = Tokenization.reverse(exportedValue);
+        if (!resolvable || !Reference.isReference(resolvable)) {
+          throw new ValidationError(lit`ExportValueRequiresNameOrResourceAttribute`, "exportValue: either supply 'name' or make sure to export a resource attribute (like 'bucket.bucketName')", this);
+        }
+        const exportable = getExportable(this, resolvable);
+        const exportsScope = getCreateExportsScope(this);
+        const resolved = this.resolve(exportable);
+        const id = "Output" + JSON.stringify(resolved);
+        const exportName = generateExportName2(exportsScope, id);
+        if (Token.isUnresolved(exportName)) {
+          throw new ValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(this.resolve(exportName))}`, this);
+        }
+        return {
+          exportable,
+          exportsScope,
+          id,
+          exportName
+        };
+      }
+      /**
+       * Indicates whether the stack requires bundling or not
+       */
+      get bundlingRequired() {
+        const bundlingStacks = this.node.tryGetContext(BUNDLING_STACKS) ?? ["**"];
+        return bundlingStacks.some((pattern) => minimatch2(
+          this.node.path,
+          // use the same value for pattern matching as the aws-cdk CLI (displayName / hierarchicalId)
+          pattern
+        ));
+      }
+      /**
+       * Configure a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      addStackTag(tagName, tagValue) {
+        this.tags.setTag(tagName, tagValue);
+      }
+      /**
+       * Remove a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      removeStackTag(tagName) {
+        this.tags.removeTag(tagName, 0);
+      }
+      /**
+       * The environment this Stack deploys to
+       */
+      get env() {
+        return {
+          account: this.account,
+          region: this.region
+        };
+      }
+    };
+    _init9 = __decoratorStart(_a6);
+    __decorateElement(_init9, 1, "resolve", _resolve_dec, _Stack);
+    __decoratorMetadata(_init9, _Stack);
+    Stack = _Stack;
+    firstTwoAgnosticAzs = /* @__PURE__ */ (() => {
+      let cache;
+      return () => {
+        if (!cache) {
+          cache = [
+            Fn.select(0, Fn.getAzs()),
+            Fn.select(1, Fn.getAzs())
+          ];
+        }
+        return cache;
+      };
+    })();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-element.ts
+function notTooLong(x) {
+  if (x.length < 100) {
+    return x;
+  }
+  return x.slice(0, 47) + "..." + x.slice(-47);
+}
+var import_constructs23, CFN_ELEMENT_SYMBOL, CfnElement, CfnRefElement;
+var init_cfn_element = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-element.ts"() {
+    "use strict";
+    import_constructs23 = __toESM(require_lib4());
+    init_lazy();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_reference();
+    init_stack();
+    init_token();
+    init_errors();
+    init_mixin_metadata();
+    init_literal_string();
+    init_stack_trace();
+    init_debug();
+    CFN_ELEMENT_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnElement");
+    CfnElement = class extends import_constructs23.Construct {
+      /**
+       * Returns `true` if a construct is a stack element (i.e. part of the
+       * synthesized cloudformation template).
+       *
+       * Uses duck-typing instead of `instanceof` to allow stack elements from different
+       * versions of this library to be included in the same stack.
+       *
+       * @returns The construct as a stack element or undefined if it is not a stack element.
+       */
+      static isCfnElement(x) {
+        return CFN_ELEMENT_SYMBOL in x;
+      }
+      /**
+       * The logical ID for this CloudFormation stack element. The logical ID of the element
+       * is calculated from the path of the resource node in the construct tree.
+       *
+       * To override this value, use `overrideLogicalId(newLogicalId)`.
+       *
+       * @returns the logical ID as a stringified token. This value will only get
+       * resolved during synthesis.
+       */
+      logicalId;
+      /**
+       * The stack in which this element is defined. CfnElements must be defined within a stack scope (directly or indirectly).
+       */
+      stack;
+      /**
+       * An explicit logical ID provided by `overrideLogicalId`.
+       */
+      _logicalIdOverride;
+      /**
+       * If the logicalId is locked then it can no longer be overridden.
+       * This is needed for cases where the logicalId is consumed prior to synthesis
+       * (i.e. Stack.exportValue).
+       */
+      _logicalIdLocked;
+      /**
+       * Creates an entity and binds it to a tree.
+       * Note that the root of the tree must be a Stack object (not just any Root).
+       *
+       * @param scope The parent construct
+       * @param props Construct properties
+       */
+      constructor(scope, id) {
+        super(scope, id);
+        Object.defineProperty(this, CFN_ELEMENT_SYMBOL, { value: true });
+        this.stack = Stack.of(this);
+        this.logicalId = Lazy.uncachedString({ produce: () => this._synthesizeLogicalId() }, {
+          displayHint: `${notTooLong(import_constructs23.Node.of(this).path)}.LogicalID`
+        });
+        if (!this.node.tryGetContext(DISABLE_LOGICAL_ID_METADATA)) {
+          import_constructs23.Node.of(this).addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.LOGICAL_ID, this.logicalId);
+        }
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      /**
+       * Overrides the auto-generated logical ID with a specific ID.
+       * @param newLogicalId The new logical ID to use for this stack element.
+       */
+      overrideLogicalId(newLogicalId) {
+        if (this._logicalIdLocked) {
+          throw new ValidationError(lit`LogicalIdLocked`, `The logicalId for resource at path ${import_constructs23.Node.of(this).path} has been locked and cannot be overridden
+Make sure you are calling "overrideLogicalId" before Stack.exportValue`, this);
+        } else {
+          this._logicalIdOverride = newLogicalId;
+        }
+      }
+      /**
+       * Lock the logicalId of the element and do not allow
+       * any updates (e.g. via overrideLogicalId)
+       *
+       * This is needed in cases where you are consuming the LogicalID
+       * of an element prior to synthesis and you need to not allow future
+       * changes to the id since doing so would cause the value you just
+       * consumed to differ from the synth time value of the logicalId.
+       *
+       * For example:
+       *
+       * const bucket = new Bucket(stack, 'Bucket');
+       * stack.exportValue(bucket.bucketArn) <--- consuming the logicalId
+       * bucket.overrideLogicalId('NewLogicalId') <--- updating logicalId
+       *
+       * You should most likely never need to use this method, and if
+       * you are implementing a feature that requires this, make sure
+       * you actually require it.
+       *
+       * @internal
+       */
+      _lockLogicalId() {
+        this._logicalIdLocked = true;
+      }
+      /**
+       * @returns the stack trace of the point where this Resource was created from, sourced
+       *      from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
+       *      node +internal+ entries filtered.
+       */
+      get creationStack() {
+        const trace = import_constructs23.Node.of(this).metadata.find((md) => md.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK)?.data;
+        return trace ?? [];
+      }
+      /**
+       * Called during synthesize to render the logical ID of this element. If
+       * `overrideLogicalId` was it will be used, otherwise, we will allocate the
+       * logical ID through the stack.
+       *
+       * @internal
+       */
+      _synthesizeLogicalId() {
+        if (this._logicalIdOverride) {
+          return this._logicalIdOverride;
+        } else {
+          return this.stack.getLogicalId(this);
+        }
+      }
+    };
+    CfnRefElement = class extends CfnElement {
+      /**
+       * Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
+       *
+       * If, by any chance, the intrinsic reference of a resource is not a string, you could
+       * coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
+       */
+      get ref() {
+        return Token.asString(CfnReference.for(this, "Ref"));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource.ts
+function splitOnPeriods(x) {
+  const ret = [""];
+  for (let i = 0; i < x.length; i++) {
+    if (x[i] === "\\" && i + 1 < x.length) {
+      ret[0] += x[i + 1];
+      i++;
+    } else if (x[i] === ".") {
+      ret.unshift("");
+    } else {
+      ret[0] += x[i];
+    }
+  }
+  ret.reverse();
+  return ret;
+}
+function traceProperty(node, propertyName) {
+  if (debugModeEnabled()) {
+    node.addMetadata(cxschema.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT, {
+      propertyName,
+      stackTrace: captureStackTrace(traceProperty)
+    });
+  }
+}
+var cxschema, CfnResource;
+var init_cfn_resource = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource.ts"() {
+    "use strict";
+    cxschema = __toESM(require_lib2());
+    init_annotations();
+    init_cfn_element();
+    init_cfn_resource_policy();
+    init_deps();
+    init_cfn_reference();
+    init_removal_policy();
+    init_debug();
+    init_tag_manager();
+    init_util();
+    init_feature_flags();
+    init_cx_api();
+    init_errors();
+    init_deep_merge();
+    init_literal_string();
+    init_stack_trace();
+    init_stack();
+    init_core_construct_finders();
+    CfnResource = class _CfnResource extends CfnRefElement {
+      /**
+       * Check whether the given object is a CfnResource
+       */
+      static isCfnResource(x) {
+        return isCfnResource(x);
+      }
+      // MAINTAINERS NOTE: this class serves as the base class for the generated L1
+      // ("CFN") resources (such as `s3.CfnBucket`). These resources will have a
+      // property for each CloudFormation property of the resource. This means that
+      // if at some point in the future a property is introduced with a name similar
+      // to one of the properties here, it will be "masked" by the derived class. To
+      // that end, we prefix all properties in this class with `cfnXxx` with the
+      // hope to avoid those conflicts in the future.
+      /**
+       * Options for this resource, such as condition, update policy etc.
+       */
+      cfnOptions = {};
+      /**
+       * AWS resource type.
+       */
+      cfnResourceType;
+      /**
+       * AWS CloudFormation resource properties.
+       *
+       * This object is returned via cfnProperties
+       * @internal
+       */
+      _cfnProperties;
+      /**
+       * An object to be merged on top of the entire resource definition.
+       */
+      rawOverrides = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      /**
+       * Logical IDs of dependencies.
+       *
+       * Is filled during prepare().
+       */
+      dependsOn;
+      _crossStackReferenceStrength;
+      cfnPropertyNames = {};
+      /**
+       * Creates a resource construct.
+       * @param cfnResourceType The CloudFormation type of this resource (e.g. AWS::DynamoDB::Table)
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (!props.type) {
+          throw new ValidationError(lit`IsRequiredPropertyRequired`, "The `type` property is required", this);
+        }
+        this.cfnResourceType = props.type;
+        this._cfnProperties = props.properties || {};
+        if (this.node.tryGetContext(PATH_METADATA_ENABLE_CONTEXT)) {
+          this.addMetadata(import_cloud_assembly_api.PATH_METADATA_KEY, this.node.path);
+        }
+      }
+      get env() {
+        return {
+          account: this.stack.account,
+          region: this.stack.region
+        };
+      }
+      /**
+       * Sets the deletion policy of the resource based on the removal policy specified.
+       *
+       * The Removal Policy controls what happens to this resource when it stops
+       * being managed by CloudFormation, either because you've removed it from the
+       * CDK application or because you've made a change that requires the resource
+       * to be replaced.
+       *
+       * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
+       * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
+       * cases, a snapshot can be taken of the resource prior to deletion
+       * (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
+       * can be found in the following link:
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
+       */
+      applyRemovalPolicy(policy, options = {}) {
+        policy = policy || options.default || "retain" /* RETAIN */;
+        let deletionPolicy;
+        let updateReplacePolicy;
+        switch (policy) {
+          case "destroy" /* DESTROY */:
+            deletionPolicy = "Delete" /* DELETE */;
+            updateReplacePolicy = "Delete" /* DELETE */;
+            break;
+          case "retain" /* RETAIN */:
+            deletionPolicy = "Retain" /* RETAIN */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "retain-on-update-or-delete" /* RETAIN_ON_UPDATE_OR_DELETE */:
+            deletionPolicy = "RetainExceptOnCreate" /* RETAIN_EXCEPT_ON_CREATE */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "snapshot" /* SNAPSHOT */:
+            const snapshottableResourceTypes = [
+              "AWS::DocDB::DBCluster",
+              "AWS::EC2::Volume",
+              "AWS::ElastiCache::CacheCluster",
+              "AWS::ElastiCache::ReplicationGroup",
+              "AWS::Neptune::DBCluster",
+              "AWS::RDS::DBCluster",
+              "AWS::RDS::DBInstance",
+              "AWS::Redshift::Cluster"
+            ];
+            const problematicSnapshotPolicy = !snapshottableResourceTypes.includes(this.cfnResourceType);
+            if (problematicSnapshotPolicy) {
+              if (FeatureFlags.of(this).isEnabled(VALIDATE_SNAPSHOT_REMOVAL_POLICY)) {
+                throw new ValidationError(lit`SnapshotRemovalNotSupported`, `${this.cfnResourceType} does not support snapshot removal policy`, this);
+              } else {
+                Annotations.of(this).addWarningV2(`@aws-cdk/core:${this.cfnResourceType}SnapshotRemovalPolicyIgnored`, `${this.cfnResourceType} does not support snapshot removal policy. This policy will be ignored.`);
+              }
+            }
+            deletionPolicy = "Snapshot" /* SNAPSHOT */;
+            updateReplacePolicy = "Snapshot" /* SNAPSHOT */;
+            break;
+          default:
+            throw new ValidationError(lit`InvalidRemovalPolicy`, `Invalid removal policy: ${policy}`, this);
+        }
+        this.cfnOptions.deletionPolicy = deletionPolicy;
+        if (options.applyToUpdateReplacePolicy !== false) {
+          this.cfnOptions.updateReplacePolicy = updateReplacePolicy;
+        }
+      }
+      /**
+       * Sets the cross-stack reference strength for this resource.
+       *
+       * When set, any cross-stack reference to this resource will use the specified
+       * strength instead of the global default from the consuming stack's context.
+       *
+       * @param strength - The reference strength to use for this resource.
+       */
+      applyCrossStackReferenceStrength(strength) {
+        this._crossStackReferenceStrength = strength;
+      }
+      /**
+       * @internal
+       */
+      get _crossStackReferenceStrengthOverride() {
+        return this._crossStackReferenceStrength;
+      }
+      /**
+       * Returns a token for an runtime attribute of this resource.
+       * Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
+       * in case there is no generated attribute.
+       * @param attributeName The name of the attribute.
+       */
+      getAtt(attributeName, typeHint) {
+        return CfnReference.for(this, attributeName, void 0, typeHint);
+      }
+      /**
+       * Adds an override to the synthesized CloudFormation resource. To add a
+       * property override, either use `addPropertyOverride` or prefix `path` with
+       * "Properties." (i.e. `Properties.TopicName`).
+       *
+       * If the override is nested, separate each nested level using a dot (.) in the path parameter.
+       * If there is an array as part of the nesting, specify the index in the path.
+       *
+       * To include a literal `.` in the property name, prefix with a `\`. In most
+       * programming languages you will need to write this as `"\\."` because the
+       * `\` itself will need to be escaped.
+       *
+       * For example,
+       * ```typescript
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
+       * ```
+       * would add the overrides
+       * ```json
+       * "Properties": {
+       *   "GlobalSecondaryIndexes": [
+       *     {
+       *       "Projection": {
+       *         "NonKeyAttributes": [ "myattribute" ]
+       *         ...
+       *       }
+       *       ...
+       *     },
+       *     {
+       *       "ProjectionType": "INCLUDE"
+       *       ...
+       *     },
+       *   ]
+       *   ...
+       * }
+       * ```
+       *
+       * The `value` argument to `addOverride` will not be processed or translated
+       * in any way. Pass raw JSON values in here with the correct capitalization
+       * for CloudFormation. If you pass CDK classes or structs, they will be
+       * rendered with lowercased key names, and CloudFormation will reject the
+       * template.
+       *
+       * @param path - The path of the property, you can use dot notation to
+       *        override values in complex types. Any intermediate keys
+       *        will be created as needed.
+       * @param value - The value. Could be primitive or complex.
+       */
+      addOverride(path23, value) {
+        const parts = splitOnPeriods(path23);
+        let curr = this.rawOverrides;
+        while (parts.length > 1) {
+          const key = parts.shift();
+          const isObject = curr[key] != null && typeof curr[key] === "object" && !Array.isArray(curr[key]);
+          if (!isObject) {
+            curr[key] = /* @__PURE__ */ Object.create(null);
+          }
+          curr = curr[key];
+        }
+        const lastKey = parts.shift();
+        curr[lastKey] = value;
+      }
+      /**
+       * Syntactic sugar for `addOverride(path, undefined)`.
+       * @param path The path of the value to delete
+       */
+      addDeletionOverride(path23) {
+        this.addOverride(path23, void 0);
+      }
+      /**
+       * Adds an override to a resource property.
+       *
+       * Syntactic sugar for `addOverride("Properties.<...>", value)`.
+       *
+       * @param propertyPath The path of the property
+       * @param value The value
+       */
+      addPropertyOverride(propertyPath, value) {
+        const parts = splitOnPeriods(propertyPath);
+        traceProperty(this.node, parts[0]);
+        this.addOverride(`Properties.${propertyPath}`, value);
+      }
+      /**
+       * Adds an override that deletes the value of a property from the resource definition.
+       * @param propertyPath The path to the property.
+       */
+      addPropertyDeletionOverride(propertyPath) {
+        this.addPropertyOverride(propertyPath, void 0);
+      }
+      cfnPropertyName(cdkPropertyName) {
+        return this.cfnPropertyNames[cdkPropertyName];
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method has been renamed to `addResourceDependency`, which makes it
+       * more clear that this method operates at a different level from the
+       * construct-level `construct.node.addDependency()` mechanism.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependsOn(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method only adds dependencies between L1 resources. If you are
+       * looking for a generic construct-to-construct dependency mechanism that works
+       * for all constructs including L2s, use `construct.node.addDependency` instead.
+       */
+      addResourceDependency(target, reason) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addResourceDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This method has been renamed to `addResourceDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependency(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       */
+      removeResourceDependency(target) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "remove",
+          source: this,
+          target
+        });
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       *
+       * @deprecated Use `removeResourceDependency` instead
+       */
+      removeDependency(target) {
+        return this.removeResourceDependency(target);
+      }
+      /**
+       * Retrieves an array of resources and stacks this resource depends on.
+       *
+       * For resources depended on directly, returns the `CfnResource` object. For
+       * dependencies on other stacks, returns the `Stack` object. The order of the
+       * array is not guaranteed.
+       */
+      obtainDependencies() {
+        const ret = [];
+        ret.push(...this._directResourceDependencies());
+        let stack = Stack.of(this);
+        while (stack) {
+          ret.push(...stack._stackDependenciesCausedBy(this).filter((x) => STACK_TYPE.isMarked(x) || _CfnResource.isCfnResource(x)));
+          stack = stack.nestedStackParent;
+        }
+        return ret;
+      }
+      /**
+       * Replaces one dependency with another.
+       * @param target The dependency to replace
+       * @param newTarget The new dependency to add
+       */
+      replaceDependency(target, newTarget) {
+        if (this.obtainDependencies().includes(target)) {
+          this.removeResourceDependency(target);
+          this.addResourceDependency(newTarget);
+        } else {
+          throw new ValidationError(lit`CannotReplaceDependency`, `"${this.node.path}" does not depend on "${target.node.path}"`, this);
+        }
+      }
+      /**
+       * Add a value to the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      addMetadata(key, value) {
+        if (!this.cfnOptions.metadata) {
+          this.cfnOptions.metadata = {};
+        }
+        this.cfnOptions.metadata[key] = value;
+      }
+      /**
+       * Retrieve a value value from the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      getMetadata(key) {
+        return this.cfnOptions.metadata?.[key];
+      }
+      /**
+       * @returns a string representation of this resource
+       */
+      toString() {
+        return `${super.toString()} [${this.cfnResourceType}]`;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two resources.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addResourceDependency(target) {
+        if (!this.dependsOn) {
+          this.dependsOn = /* @__PURE__ */ new Set();
+        }
+        this.dependsOn.add(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Get a shallow copy of dependencies between this resource and other resources
+       * in the same stack.
+       *
+       * @internal
+       */
+      _directResourceDependencies() {
+        return Array.from(this.dependsOn?.values() ?? []);
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two resources.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeResourceDependency(target) {
+        this.dependsOn?.delete(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Emits CloudFormation for this resource.
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.shouldSynthesize()) {
+          return {};
+        }
+        try {
+          const ret = {
+            Resources: {
+              // Post-Resolve operation since otherwise deepMerge is going to mix values into
+              // the Token objects returned by ignoreEmpty.
+              [this.logicalId]: new PostResolveToken({
+                Type: this.cfnResourceType,
+                Properties: ignoreEmpty(this.cfnProperties),
+                DependsOn: ignoreEmpty(renderDependsOn(this.dependsOn)),
+                CreationPolicy: capitalizePropertyNames(this, renderCreationPolicy(this.cfnOptions.creationPolicy)),
+                UpdatePolicy: capitalizePropertyNames(this, this.cfnOptions.updatePolicy),
+                UpdateReplacePolicy: capitalizePropertyNames(this, this.cfnOptions.updateReplacePolicy),
+                DeletionPolicy: capitalizePropertyNames(this, this.cfnOptions.deletionPolicy),
+                Version: this.cfnOptions.version,
+                Description: this.cfnOptions.description,
+                Metadata: ignoreEmpty(this.cfnOptions.metadata),
+                Condition: this.cfnOptions.condition && this.cfnOptions.condition.logicalId
+              }, (resourceDef, context) => {
+                const renderedProps = this.renderProperties(resourceDef.Properties || {});
+                if (renderedProps) {
+                  const hasDefined = Object.values(renderedProps).find((v) => v !== void 0);
+                  resourceDef.Properties = hasDefined !== void 0 ? renderedProps : void 0;
+                }
+                const resolvedRawOverrides = context.resolve(this.rawOverrides, {
+                  // we need to preserve the empty elements here,
+                  // as that's how removing overrides are represented as
+                  removeEmpty: false
+                });
+                return deepMerge(resourceDef, resolvedRawOverrides);
+              })
+            }
+          };
+          return ret;
+        } catch (e) {
+          e.message = `While synthesizing ${this.node.path}: ${e.message}`;
+          const trace = this.creationStack;
+          if (trace) {
+            const creationStack = ["--- resource created at ---", ...trace].join("\n  at ");
+            const problemTrace = e.stack.slice(e.stack.indexOf(e.message) + e.message.length);
+            e.stack = `${e.message}
+  ${creationStack}
+  --- problem discovered at ---${problemTrace}`;
+          }
+          throw e;
+        }
+        function renderDependsOn(dependsOn) {
+          if (!dependsOn) {
+            return [];
+          }
+          return Array.from(dependsOn).filter((r) => r.shouldSynthesize()).sort((x, y) => x.node.path.localeCompare(y.node.path)).map((r) => r.logicalId);
+        }
+        function renderCreationPolicy(policy) {
+          if (!policy) {
+            return void 0;
+          }
+          const result = { ...policy };
+          if (policy.resourceSignal && policy.resourceSignal.timeout) {
+            result.resourceSignal = policy.resourceSignal;
+          }
+          return result;
+        }
+      }
+      get cfnProperties() {
+        const props = this._cfnProperties || {};
+        const tagMgr = TagManager.of(this);
+        if (tagMgr) {
+          const tagsProp = {};
+          tagsProp[tagMgr.tagPropertyName] = tagMgr.renderTags();
+          return deepMerge(props, tagsProp);
+        }
+        return props;
+      }
+      renderProperties(props) {
+        return props;
+      }
+      /**
+       * Deprecated
+       * @deprecated use `updatedProperties`
+       *
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperites() {
+        return this.updatedProperties;
+      }
+      /**
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperties() {
+        return this._cfnProperties;
+      }
+      validateProperties(_properties) {
+      }
+      /**
+       * Can be overridden by subclasses to determine if this resource will be rendered
+       * into the cloudformation template.
+       *
+       * @returns `true` if the resource should be included or `false` is the resource
+       * should be omitted.
+       */
+      shouldSynthesize() {
+        return true;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-manager.ts
+function TAG_FORMATTERS() {
+  return _tagFormattersCache ?? (_tagFormattersCache = {
+    ["AutoScalingGroupTag" /* AUTOSCALING_GROUP */]: new AsgFormatter(),
+    ["StandardTag" /* STANDARD */]: new StandardFormatter(),
+    ["StringToStringMap" /* MAP */]: new MapFormatter(),
+    ["KeyValue" /* KEY_VALUE */]: new KeyValueFormatter(),
+    ["NotTaggable" /* NOT_TAGGABLE */]: new NoFormat()
+  });
+}
+var TAG_MANAGER_SYM, StandardFormatter, AsgFormatter, MapFormatter, KeyValueFormatter, NoFormat, _tagFormattersCache, TagManager;
+var init_tag_manager = __esm({
+  "../../aws-cdk-lib/core/lib/tag-manager.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_lazy();
+    init_literal_string();
+    init_token();
+    TAG_MANAGER_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TagManager");
+    StandardFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value
+          });
+        }
+        return cfnTags;
+      }
+    };
+    AsgFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value, propagateAtLaunch} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0 || tag.propagateAtLaunch === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority,
+              applyToLaunchedInstances: !!tag.propagateAtLaunch
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value,
+            propagateAtLaunch: tag.applyToLaunchedInstances !== false
+          });
+        }
+        return cfnTags;
+      }
+    };
+    MapFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (Array.isArray(cfnPropertyTags) || typeof cfnPropertyTags !== "object") {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedMap`, `Invalid tag input expected map of {key: value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        for (const [key, value] of Object.entries(cfnPropertyTags)) {
+          tags.push({
+            key,
+            value: `${value}`,
+            priority
+          });
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(tags) {
+        const cfnTags = {};
+        for (const tag of tags) {
+          cfnTags[`${tag.key}`] = `${tag.value}`;
+        }
+        return cfnTags;
+      }
+    };
+    KeyValueFormatter = class {
+      parseTags(keyValueTags, priority) {
+        const tags = [];
+        for (const key in keyValueTags) {
+          if (keyValueTags.hasOwnProperty(key)) {
+            const value = keyValueTags[key];
+            tags.push({
+              key,
+              value,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(unformattedTags) {
+        const tags = [];
+        unformattedTags.forEach((tag) => {
+          tags.push({
+            Key: tag.key,
+            Value: tag.value
+          });
+        });
+        return tags;
+      }
+    };
+    NoFormat = class {
+      parseTags(_cfnPropertyTags) {
+        return { tags: [], dynamicTags: void 0 };
+      }
+      formatTags(_tags) {
+        return void 0;
+      }
+    };
+    TagManager = class _TagManager {
+      /**
+       * Check whether the given construct is Taggable
+       */
+      static isTaggable(construct) {
+        const tags = construct.tags;
+        return tags !== void 0 && tags !== null && typeof tags === "object" && tags[TAG_MANAGER_SYM];
+      }
+      /**
+       * Check whether the given construct is ITaggableV2
+       */
+      static isTaggableV2(construct) {
+        return construct.cdkTagManager !== void 0;
+      }
+      /**
+       * Return the TagManager associated with the given construct, if any
+       */
+      static of(construct) {
+        return _TagManager.isTaggableV2(construct) ? construct.cdkTagManager : _TagManager.isTaggable(construct) ? construct.tags : void 0;
+      }
+      /**
+       * The property name for tag values
+       *
+       * Normally this is `tags` but some resources choose a different name. Cognito
+       * UserPool uses UserPoolTags
+       */
+      tagPropertyName;
+      /**
+       * A lazy value that represents the rendered tags at synthesis time
+       *
+       * If you need to make a custom construct taggable, use the value of this
+       * property to pass to the `tags` property of the underlying construct.
+       */
+      renderedTags;
+      tags = /* @__PURE__ */ new Map();
+      dynamicTags;
+      priorities = /* @__PURE__ */ new Map();
+      tagFormatter;
+      resourceTypeName;
+      externalTagPriority = 50;
+      didHaveInitialTags;
+      constructor(tagType, resourceTypeName, initialTags, options = {}) {
+        this.resourceTypeName = resourceTypeName;
+        this.tagFormatter = TAG_FORMATTERS()[tagType];
+        this.tagPropertyName = options.tagPropertyName || "tags";
+        this.parseExternalTags(initialTags);
+        this.didHaveInitialTags = initialTags !== void 0;
+        this.renderedTags = Lazy.any({ produce: () => this.renderTags() });
+      }
+      /**
+       * Adds the specified tag to the array of tags
+       *
+       */
+      setTag(key, value, priority = 0, applyToLaunchedInstances = true) {
+        this._setTag({ key, value, priority, applyToLaunchedInstances });
+      }
+      /**
+       * Removes the specified tag from the array if it exists
+       *
+       * @param key The tag to remove
+       * @param priority The priority of the remove operation
+       */
+      removeTag(key, priority) {
+        if (priority >= (this.priorities.get(key) || 0)) {
+          this.tags.delete(key);
+          this.priorities.set(key, priority);
+        }
+      }
+      /**
+       * Renders tags into the proper format based on TagType
+       *
+       * This method will eagerly render the tags currently applied. In
+       * most cases, you should be using `tagManager.renderedTags` instead,
+       * which will return a `Lazy` value that will resolve to the correct
+       * tags at synthesis time.
+       */
+      renderTags(combineWithTags) {
+        if (combineWithTags !== void 0 && this.didHaveInitialTags) {
+          throw new UnscopedValidationError(lit`SpecifyExternalTagsEither`, "Specify external tags either during the creation of TagManager, or as a parameter to renderTags(), but not both");
+        }
+        this.parseExternalTags(combineWithTags);
+        const formattedTags = this.tagFormatter.formatTags(this.sortedTags);
+        if (isResolvableObject(this.dynamicTags)) {
+          if (this.tags.size > 0) {
+            throw new UnscopedValidationError(
+              lit`CombineTagsIntrinsicWithLiteral`,
+              "Cannot combine literal tags with a Tags property that is a single unresolved intrinsic (e.g. Fn::If). Remove the literal tags or resolve the intrinsic at the property level."
+            );
+          }
+          return this.dynamicTags;
+        }
+        if (Array.isArray(formattedTags) || Array.isArray(this.dynamicTags)) {
+          const ret = [...formattedTags ?? [], ...this.dynamicTags ?? []];
+          return ret.length > 0 ? ret : void 0;
+        } else {
+          const ret = { ...formattedTags ?? {}, ...this.dynamicTags ?? {} };
+          return Object.keys(ret).length > 0 ? ret : void 0;
+        }
+      }
+      /**
+       * Render the tags in a readable format
+       */
+      tagValues() {
+        const ret = {};
+        for (const tag of this.sortedTags) {
+          ret[tag.key] = tag.value;
+        }
+        return ret;
+      }
+      /**
+       * Determine if the aspect applies here
+       *
+       * Looks at the include and exclude resourceTypeName arrays to determine if
+       * the aspect applies here
+       */
+      applyTagAspectHere(include, exclude) {
+        if (exclude && exclude.length > 0 && exclude.indexOf(this.resourceTypeName) !== -1) {
+          return false;
+        }
+        if (include && include.length > 0 && include.indexOf(this.resourceTypeName) === -1) {
+          return false;
+        }
+        return true;
+      }
+      /**
+       * Returns true if there are any tags defined
+       */
+      hasTags() {
+        return this.tags.size > 0;
+      }
+      _setTag(...tags) {
+        for (const tag of tags) {
+          if (tag.priority >= (this.priorities.get(tag.key) || 0)) {
+            this.tags.set(tag.key, tag);
+            this.priorities.set(tag.key, tag.priority);
+          }
+        }
+      }
+      get sortedTags() {
+        return Array.from(this.tags.values()).sort((a, b) => a.key.localeCompare(b.key));
+      }
+      /**
+       * Parse external tags.
+       *
+       * Set the parseable ones into this tag manager. Save the rest (tokens, lazies) in `this.dynamicTags`.
+       */
+      parseExternalTags(initialTags) {
+        if (initialTags !== void 0) {
+          if (isResolvableObject(initialTags)) {
+            this.dynamicTags = initialTags;
+            return;
+          }
+          const parseTagsResult = this.tagFormatter.parseTags(initialTags, this.externalTagPriority);
+          this.dynamicTags = parseTagsResult.dynamicTags;
+          this._setTag(...parseTagsResult.tags);
+        }
+      }
+    };
+    TagManager.prototype[TAG_MANAGER_SYM] = true;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-aspect.ts
+var init_tag_aspect = __esm({
+  "../../aws-cdk-lib/core/lib/tag-aspect.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_errors();
+    init_feature_flags();
+    init_cx_api();
+    init_aspect_prio();
+    init_literal_string();
+    init_tag_manager();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/selectors.ts
+var ConstructSelector, AllConstructsSelector, CfnResourceSelector, ResourceTypeSelector, minimatch3, IdPatternSelector, OnlyItselfSelector;
+var init_selectors = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/selectors.ts"() {
+    "use strict";
+    init_cfn_resource();
+    ConstructSelector = class {
+      /**
+       * Selects all constructs in the tree.
+       */
+      static all() {
+        return new AllConstructsSelector();
+      }
+      /**
+       * Selects CfnResource constructs or the default CfnResource child.
+       */
+      static cfnResource() {
+        return new CfnResourceSelector();
+      }
+      /**
+       * Selects only the provided construct.
+       */
+      static onlyItself() {
+        return new OnlyItselfSelector();
+      }
+      /**
+       * Selects constructs of a specific type.
+       */
+      static resourcesOfType(...types2) {
+        return new ResourceTypeSelector(types2);
+      }
+      /**
+       * Selects constructs whose construct IDs match a pattern.
+       * Uses glob like matching.
+       */
+      static byId(pattern) {
+        return new IdPatternSelector(pattern, "id");
+      }
+      /**
+       * Selects constructs whose construct paths match a pattern.
+       * Uses glob like matching.
+       */
+      static byPath(pattern) {
+        return new IdPatternSelector(pattern, "path");
+      }
+    };
+    AllConstructsSelector = class {
+      select(scope) {
+        return scope.node.findAll();
+      }
+    };
+    CfnResourceSelector = class {
+      select(scope) {
+        if (CfnResource.isCfnResource(scope)) {
+          return [scope];
+        }
+        const defaultChild = scope.node.defaultChild;
+        if (CfnResource.isCfnResource(defaultChild)) {
+          return [defaultChild];
+        }
+        return [];
+      }
+    };
+    ResourceTypeSelector = class {
+      constructor(types2) {
+        this.types = types2;
+      }
+      types;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (CfnResource.isCfnResource(node) && this.types.includes(node.cfnResourceType)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    ({ minimatch: minimatch3 } = require_commonjs3());
+    IdPatternSelector = class {
+      constructor(pattern, field) {
+        this.pattern = pattern;
+        this.field = field;
+      }
+      pattern;
+      field;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (minimatch3(node.node[this.field], this.pattern)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    OnlyItselfSelector = class {
+      select(scope) {
+        return [scope];
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/applicator.ts
+var _selectedConstructs_dec, _init10, MixinApplicator;
+var init_applicator = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/applicator.ts"() {
+    "use strict";
+    init_errors();
+    init_mixin_metadata();
+    init_selectors();
+    init_helpers_internal();
+    init_literal_string();
+    _selectedConstructs_dec = [memoizedGetter];
+    MixinApplicator = class {
+      constructor(scope, selector = ConstructSelector.all()) {
+        __runInitializers(_init10, 5, this);
+        __publicField(this, "scope");
+        __publicField(this, "selector");
+        __publicField(this, "applications", []);
+        __publicField(this, "expectAll", false);
+        __publicField(this, "expectAny", false);
+        this.scope = scope;
+        this.selector = selector;
+      }
+      get selectedConstructs() {
+        return this.selector.select(this.scope);
+      }
+      /**
+       * Returns the successful mixin applications.
+       */
+      get report() {
+        return this.applications;
+      }
+      /**
+       * Applies a mixin to selected constructs.
+       */
+      apply(...mixins) {
+        const applications = [];
+        const allConstructs = Array.from(this.selectedConstructs);
+        for (const mixin of mixins) {
+          for (const construct of allConstructs) {
+            if (mixin.supports(construct)) {
+              applyMixin(construct, mixin);
+              applications.push({ construct, mixin });
+            } else if (this.expectAll) {
+              throw new ValidationError(lit`Mixin`, `Mixin ${mixin.constructor.name} could not be applied to ${construct.constructor.name} but was required to.`, this.scope);
+            }
+          }
+        }
+        if (this.expectAny && applications.length <= 0) {
+          throw new ValidationError(lit`LeastOneMixinApplicationRequired`, "At least one mixin application was required, but none of the provided mixins could be applied to any selected construct.", this.scope);
+        }
+        this.applications.push(...applications);
+        return this;
+      }
+      /**
+       * Requires all selected constructs to support the applied mixins.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAll()
+       *   .apply(new MyMixin());
+       */
+      requireAll() {
+        this.expectAll = true;
+        return this;
+      }
+      /**
+       * Requires at least one mixin to be successfully applied.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAny()
+       *   .apply(new MyMixin());
+       */
+      requireAny() {
+        this.expectAny = true;
+        return this;
+      }
+    };
+    _init10 = __decoratorStart(null);
+    __decorateElement(_init10, 2, "selectedConstructs", _selectedConstructs_dec, MixinApplicator);
+    __decoratorMetadata(_init10, MixinApplicator);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/mixins.ts
+var init_mixins = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/mixins.ts"() {
+    "use strict";
+    init_applicator();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/shims.ts
+var init_shims = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/shims.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/index.ts
+var init_mixins2 = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/index.ts"() {
+    "use strict";
+    init_mixins();
+    init_selectors();
+    init_applicator();
+    init_property_merge_strategy();
+    init_shims();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-hook.ts
+var init_cfn_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-hook.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts
+var init_cfn_codedeploy_blue_green_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts"() {
+    "use strict";
+    init_cfn_hook();
+    init_errors();
+    init_literal_string();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-include.ts
+var init_cfn_include = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-include.ts"() {
+    "use strict";
+    init_cfn_element();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-tag.ts
+var init_cfn_tag = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-tag.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-json.ts
+var import_constructs24;
+var init_cfn_json = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-json.ts"() {
+    "use strict";
+    import_constructs24 = __toESM(require_lib4());
+    init_custom_resource();
+    init_cfn_utils_provider();
+    init_consts();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/removal-policies.ts
+var init_removal_policies = __esm({
+  "../../aws-cdk-lib/core/lib/removal-policies.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_cfn_resource();
+    init_aspect_prio();
+    init_removal_policy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bitrate.ts
+var BitrateUnit;
+var init_bitrate = __esm({
+  "../../aws-cdk-lib/core/lib/bitrate.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    BitrateUnit = class _BitrateUnit {
+      constructor(label, inBps) {
+        this.label = label;
+        this.inBps = inBps;
+      }
+      label;
+      inBps;
+      static Bps = new _BitrateUnit("bps", 1);
+      static Kbps = new _BitrateUnit("kbps", 1e3);
+      static Mbps = new _BitrateUnit("mbps", 1e6);
+      static Gbps = new _BitrateUnit("gbps", 1e9);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/expiration.ts
+var init_expiration = __esm({
+  "../../aws-cdk-lib/core/lib/expiration.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/environment.ts
+var init_environment = __esm({
+  "../../aws-cdk-lib/core/lib/environment.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/runtime.ts
+var ValidationResult, ValidationResults, VALIDATION_SUCCESS, CfnSynthesisError;
+var init_runtime = __esm({
+  "../../aws-cdk-lib/core/lib/runtime.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    ValidationResult = class _ValidationResult {
+      constructor(errorMessage = "", results = new ValidationResults()) {
+        this.errorMessage = errorMessage;
+        this.results = results;
+      }
+      errorMessage;
+      results;
+      get isSuccess() {
+        return !this.errorMessage && this.results.isSuccess;
+      }
+      /**
+       * Turn a failed validation into an exception
+       */
+      assertSuccess() {
+        if (!this.isSuccess) {
+          let message = this.errorTree();
+          message = message.slice(0, 1).toUpperCase() + message.slice(1);
+          throw new CfnSynthesisError(message);
+        }
+      }
+      /**
+       * Return a string rendering of the tree of validation failures
+       */
+      errorTree() {
+        const childMessages = this.results.errorTreeList();
+        return this.errorMessage + (childMessages.length ? `
+  ${childMessages.replace(/\n/g, "\n  ")}` : "");
+      }
+      /**
+       * Wrap this result with an error message, if it concerns an error
+       */
+      prefix(message) {
+        if (this.isSuccess) {
+          return this;
+        }
+        return new _ValidationResult(`${message}: ${this.errorMessage}`, this.results);
+      }
+    };
+    ValidationResults = class {
+      constructor(results = []) {
+        this.results = results;
+      }
+      results;
+      collect(result) {
+        if (!result.isSuccess) {
+          this.results.push(result);
+        }
+      }
+      get isSuccess() {
+        return this.results.every((x) => x.isSuccess);
+      }
+      errorTreeList() {
+        return this.results.map((child) => child.errorTree()).join("\n");
+      }
+      /**
+       * Wrap up all validation results into a single tree node
+       *
+       * If there are failures in the collection, add a message, otherwise
+       * return a success.
+       */
+      wrap(message) {
+        if (this.isSuccess) {
+          return VALIDATION_SUCCESS;
+        }
+        return new ValidationResult(message, this);
+      }
+    };
+    VALIDATION_SUCCESS = new ValidationResult();
+    CfnSynthesisError = class extends Error {
+      type = "CfnSynthesisError";
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/secret-value.ts
+var SecretValue, SECRET_VALUE_SYM;
+var init_secret_value = __esm({
+  "../../aws-cdk-lib/core/lib/secret-value.ts"() {
+    "use strict";
+    init_cfn_dynamic_reference();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_cfn_reference();
+    init_intrinsic();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+    SecretValue = class _SecretValue extends Intrinsic {
+      /**
+       * Test whether an object is a SecretValue
+       */
+      static isSecretValue(x) {
+        return typeof x === "object" && x && SECRET_VALUE_SYM in x;
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The only reasonable use case for using this method is when you are testing.
+       *
+       * @deprecated Use `unsafePlainText()` instead.
+       */
+      static plainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The primary use case for using this method is when you are testing.
+       *
+       * The other use case where this is appropriate is when constructing a JSON secret.
+       * For example, a JSON secret might have multiple fields where only some are actual
+       * secret values.
+       *
+       * @example
+       * declare const secret: SecretValue;
+       * const jsonSecret = {
+       *   username: SecretValue.unsafePlainText('myUsername'),
+       *   password: secret,
+       * };
+       */
+      static unsafePlainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Creates a `SecretValue` with a value which is dynamically loaded from AWS Secrets Manager.
+       *
+       * If you rotate the value in the Secret, you must also change at least one property
+       * on the resource where you are using the secret, to force CloudFormation to re-read the secret.
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static secretsManager(secretId, options = {}) {
+        const dyref = new CfnDynamicReference("secretsmanager" /* SECRETS_MANAGER */, _SecretValue.cfnDynamicReferenceKey(secretId, options));
+        return this.cfnDynamicReference(dyref);
+      }
+      /**
+       * Returns a key which can be used within an AWS CloudFormation dynamic reference to dynamically load a
+       * secret from AWS Secrets Manager
+       *
+       * @see https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static cfnDynamicReferenceKey(secretId, options = {}) {
+        if (!secretId) {
+          throw new UnscopedValidationError(lit`SecretIdCannotBeEmpty`, "secretId cannot be empty");
+        }
+        if (!Token.isUnresolved(secretId) && !secretId.startsWith("arn:") && secretId.includes(":")) {
+          throw new UnscopedValidationError(lit`SecretIdContainsColon`, `secret id "${secretId}" is not an ARN but contains ":"`);
+        }
+        if (options.versionStage && options.versionId) {
+          throw new UnscopedValidationError(lit`VersionStageAndVersionIdBothProvided`, `versionStage: '${options.versionStage}' and versionId: '${options.versionId}' were both provided but only one is allowed`);
+        }
+        const parts = [
+          secretId,
+          "SecretString",
+          options.jsonField || "",
+          options.versionStage || "",
+          options.versionId || ""
+        ];
+        return parts.join(":");
+      }
+      /**
+       * Use a secret value stored from a Systems Manager (SSM) parameter.
+       *
+       * This secret source in only supported in a limited set of resources and
+       * properties. [Click here for the list of supported
+       * properties](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html#template-parameters-dynamic-patterns-resources).
+       *
+       * @param parameterName The name of the parameter in the Systems Manager
+       * Parameter Store. The parameter name is case-sensitive.
+       *
+       * @param version An integer that specifies the version of the parameter to
+       * use. If you don't specify the exact version, AWS CloudFormation uses the
+       * latest version of the parameter.
+       */
+      static ssmSecure(parameterName, version3) {
+        return this.cfnDynamicReference(
+          new CfnDynamicReference(
+            "ssm-secure" /* SSM_SECURE */,
+            version3 ? `${parameterName}:${version3}` : parameterName
+          )
+        );
+      }
+      /**
+       * Obtain the secret value through a CloudFormation dynamic reference.
+       *
+       * If possible, use `SecretValue.ssmSecure` or `SecretValue.secretsManager` directly.
+       *
+       * @param ref The dynamic reference to use.
+       */
+      static cfnDynamicReference(ref) {
+        return new _SecretValue(ref);
+      }
+      /**
+       * Obtain the secret value through a CloudFormation parameter.
+       *
+       * Generally, this is not a recommended approach. AWS Secrets Manager is the
+       * recommended way to reference secrets.
+       *
+       * @param param The CloudFormation parameter to use.
+       */
+      static cfnParameter(param) {
+        if (!param.noEcho) {
+          throw new UnscopedValidationError(lit`CloudFormationParameterMustHaveNoEcho`, 'CloudFormation parameter must be configured with "NoEcho"');
+        }
+        return new _SecretValue(param.value);
+      }
+      /**
+       * Use a resource's output as secret value
+       */
+      static resourceAttribute(attr) {
+        const resolved = Tokenization.reverseCompleteString(attr);
+        if (!resolved || !CfnReference.isCfnReference(resolved) || !CfnResource.isCfnResource(resolved.target)) {
+          throw new UnscopedValidationError(lit`SecretValueMustUseResourceAttribute`, "SecretValue.resourceAttribute() must be used with a resource attribute");
+        }
+        return new _SecretValue(attr);
+      }
+      rawValue;
+      /**
+       * Construct a SecretValue (do not use!)
+       *
+       * Do not use the constructor directly: use one of the factory functions on the class
+       * instead.
+       */
+      constructor(protectedValue, options) {
+        super(protectedValue, options);
+        this.rawValue = protectedValue;
+      }
+      /**
+       * Disable usage protection on this secret
+       *
+       * Call this to indicate that you want to use the secret value held by this
+       * object in an unchecked way. If you don't call this method, using the secret
+       * value directly in a string context or as a property value somewhere will
+       * produce an error.
+       *
+       * This method has 'unsafe' in the name on purpose! Make sure that the
+       * construct property you are using the returned value in is does not end up
+       * in a place in your AWS infrastructure where it could be read by anyone
+       * unexpected.
+       *
+       * When in doubt, don't call this method and only pass the object to constructs that
+       * accept `SecretValue` parameters.
+       */
+      unsafeUnwrap() {
+        return Token.asString(this.rawValue);
+      }
+      /**
+       * Resolve the secret
+       *
+       * If the feature flag is not set, resolve as normal. Otherwise, throw a descriptive
+       * error that the usage guard is missing.
+       */
+      resolve(context) {
+        if (FeatureFlags.of(context.scope).isEnabled(CHECK_SECRET_USAGE)) {
+          throw new UnscopedValidationError(
+            lit`SecretValueExposureRisk`,
+            `Synthing a secret value to ${context.documentPath.join("/")}. Using a SecretValue here risks exposing your secret. Only pass SecretValues to constructs that accept a SecretValue property, or call AWS Secrets Manager directly in your runtime code. Call 'secretValue.unsafeUnwrap()' if you understand and accept the risks.`
+          );
+        }
+        return super.resolve(context);
+      }
+    };
+    SECRET_VALUE_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SecretValue");
+    Object.defineProperty(SecretValue.prototype, SECRET_VALUE_SYM, {
+      value: true,
+      configurable: false,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/physical-name.ts
+var PhysicalName;
+var init_physical_name = __esm({
+  "../../aws-cdk-lib/core/lib/physical-name.ts"() {
+    "use strict";
+    init_physical_name_generator();
+    init_token();
+    PhysicalName = class {
+      /**
+       * Use this to automatically generate a physical name for an AWS resource only
+       * if the resource is referenced across environments (account/region).
+       * Otherwise, the name will be allocated during deployment by CloudFormation.
+       *
+       * If you are certain that a resource will be referenced across environments,
+       * you may also specify an explicit physical name for it. This option is
+       * mostly designed for reusable constructs which may or may not be referenced
+       * across environments.
+       */
+      static GENERATE_IF_NEEDED = Token.asString(new GeneratedWhenNeededMarker());
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cloudformation.generated.ts
+var init_cloudformation_generated = __esm({
+  "../../aws-cdk-lib/core/lib/cloudformation.generated.ts"() {
+    "use strict";
+    init_lib3();
+    init_helpers_internal();
+    init_errors();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/nested-stack.ts
+var import_constructs25;
+var init_nested_stack = __esm({
+  "../../aws-cdk-lib/core/lib/nested-stack.ts"() {
+    "use strict";
+    import_constructs25 = __toESM(require_lib4());
+    init_assets();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cloudformation_generated();
+    init_errors();
+    init_box();
+    init_lazy();
+    init_names();
+    init_core_construct_finders();
+    init_removal_policy();
+    init_stack();
+    init_stack_synthesizers();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-capabilities.ts
+var init_cfn_capabilities = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-capabilities.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/eventbridge.ts
+var init_eventbridge = __esm({
+  "../../aws-cdk-lib/core/lib/eventbridge.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/grants.ts
+var init_grants = __esm({
+  "../../aws-cdk-lib/core/lib/grants.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/time-zone.ts
+var TimeZone;
+var init_time_zone = __esm({
+  "../../aws-cdk-lib/core/lib/time-zone.ts"() {
+    "use strict";
+    TimeZone = class _TimeZone {
+      /**
+       *
+       * @param timezoneName The name of the timezone
+       */
+      constructor(timezoneName) {
+        this.timezoneName = timezoneName;
+      }
+      timezoneName;
+      /** IANA Time Zone database entry for Africa/Abidjan.  UTC offset +00:00/+00:00. */
+      static AFRICA_ABIDJAN = new _TimeZone("Africa/Abidjan");
+      /** IANA Time Zone database entry for Africa/Algiers.  UTC offset +01:00/+01:00. */
+      static AFRICA_ALGIERS = new _TimeZone("Africa/Algiers");
+      /** IANA Time Zone database entry for Africa/Bissau.  UTC offset +00:00/+00:00. */
+      static AFRICA_BISSAU = new _TimeZone("Africa/Bissau");
+      /** IANA Time Zone database entry for Africa/Cairo.  UTC offset +02:00/+02:00. */
+      static AFRICA_CAIRO = new _TimeZone("Africa/Cairo");
+      /** IANA Time Zone database entry for Africa/Casablanca.  UTC offset +01:00/+00:00. */
+      static AFRICA_CASABLANCA = new _TimeZone("Africa/Casablanca");
+      /** IANA Time Zone database entry for Africa/Ceuta.  UTC offset +01:00/+02:00. */
+      static AFRICA_CEUTA = new _TimeZone("Africa/Ceuta");
+      /** IANA Time Zone database entry for Africa/El_Aaiun.  UTC offset +01:00/+00:00. */
+      static AFRICA_EL_AAIUN = new _TimeZone("Africa/El_Aaiun");
+      /** IANA Time Zone database entry for Africa/Johannesburg.  UTC offset +02:00/+02:00. */
+      static AFRICA_JOHANNESBURG = new _TimeZone("Africa/Johannesburg");
+      /** IANA Time Zone database entry for Africa/Juba.  UTC offset +02:00/+02:00. */
+      static AFRICA_JUBA = new _TimeZone("Africa/Juba");
+      /** IANA Time Zone database entry for Africa/Khartoum.  UTC offset +02:00/+02:00. */
+      static AFRICA_KHARTOUM = new _TimeZone("Africa/Khartoum");
+      /** IANA Time Zone database entry for Africa/Lagos.  UTC offset +01:00/+01:00. */
+      static AFRICA_LAGOS = new _TimeZone("Africa/Lagos");
+      /** IANA Time Zone database entry for Africa/Maputo.  UTC offset +02:00/+02:00. */
+      static AFRICA_MAPUTO = new _TimeZone("Africa/Maputo");
+      /** IANA Time Zone database entry for Africa/Monrovia.  UTC offset +00:00/+00:00. */
+      static AFRICA_MONROVIA = new _TimeZone("Africa/Monrovia");
+      /** IANA Time Zone database entry for Africa/Nairobi.  UTC offset +03:00/+03:00. */
+      static AFRICA_NAIROBI = new _TimeZone("Africa/Nairobi");
+      /** IANA Time Zone database entry for Africa/Ndjamena.  UTC offset +01:00/+01:00. */
+      static AFRICA_NDJAMENA = new _TimeZone("Africa/Ndjamena");
+      /** IANA Time Zone database entry for Africa/Sao_Tome.  UTC offset +00:00/+00:00. */
+      static AFRICA_SAO_TOME = new _TimeZone("Africa/Sao_Tome");
+      /** IANA Time Zone database entry for Africa/Tripoli.  UTC offset +02:00/+02:00. */
+      static AFRICA_TRIPOLI = new _TimeZone("Africa/Tripoli");
+      /** IANA Time Zone database entry for Africa/Tunis.  UTC offset +01:00/+01:00. */
+      static AFRICA_TUNIS = new _TimeZone("Africa/Tunis");
+      /** IANA Time Zone database entry for Africa/Windhoek.  UTC offset +02:00/+02:00. */
+      static AFRICA_WINDHOEK = new _TimeZone("Africa/Windhoek");
+      /** IANA Time Zone database entry for America/Adak.  UTC offset −10:00/−09:00. */
+      static AMERICA_ADAK = new _TimeZone("America/Adak");
+      /** IANA Time Zone database entry for America/Anchorage.  UTC offset −09:00/−08:00. */
+      static AMERICA_ANCHORAGE = new _TimeZone("America/Anchorage");
+      /** IANA Time Zone database entry for America/Araguaina.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARAGUAINA = new _TimeZone("America/Araguaina");
+      /** IANA Time Zone database entry for America/Argentina/Buenos_Aires.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_BUENOS_AIRES = new _TimeZone("America/Argentina/Buenos_Aires");
+      /** IANA Time Zone database entry for America/Argentina/Catamarca.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CATAMARCA = new _TimeZone("America/Argentina/Catamarca");
+      /** IANA Time Zone database entry for America/Argentina/Cordoba.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CORDOBA = new _TimeZone("America/Argentina/Cordoba");
+      /** IANA Time Zone database entry for America/Argentina/Jujuy.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_JUJUY = new _TimeZone("America/Argentina/Jujuy");
+      /** IANA Time Zone database entry for America/Argentina/La_Rioja.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_LA_RIOJA = new _TimeZone("America/Argentina/La_Rioja");
+      /** IANA Time Zone database entry for America/Argentina/Mendoza.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_MENDOZA = new _TimeZone("America/Argentina/Mendoza");
+      /** IANA Time Zone database entry for America/Argentina/Rio_Gallegos.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_RIO_GALLEGOS = new _TimeZone("America/Argentina/Rio_Gallegos");
+      /** IANA Time Zone database entry for America/Argentina/Salta.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SALTA = new _TimeZone("America/Argentina/Salta");
+      /** IANA Time Zone database entry for America/Argentina/San_Juan.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_JUAN = new _TimeZone("America/Argentina/San_Juan");
+      /** IANA Time Zone database entry for America/Argentina/San_Luis.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_LUIS = new _TimeZone("America/Argentina/San_Luis");
+      /** IANA Time Zone database entry for America/Argentina/Tucuman.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_TUCUMAN = new _TimeZone("America/Argentina/Tucuman");
+      /** IANA Time Zone database entry for America/Argentina/Ushuaia.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_USHUAIA = new _TimeZone("America/Argentina/Ushuaia");
+      /** IANA Time Zone database entry for America/Asuncion.  UTC offset −04:00/−03:00. */
+      static AMERICA_ASUNCION = new _TimeZone("America/Asuncion");
+      /** IANA Time Zone database entry for America/Bahia.  UTC offset −03:00/−03:00. */
+      static AMERICA_BAHIA = new _TimeZone("America/Bahia");
+      /** IANA Time Zone database entry for America/Bahia_Banderas.  UTC offset −06:00/−06:00. */
+      static AMERICA_BAHIA_BANDERAS = new _TimeZone("America/Bahia_Banderas");
+      /** IANA Time Zone database entry for America/Barbados.  UTC offset −04:00/−04:00. */
+      static AMERICA_BARBADOS = new _TimeZone("America/Barbados");
+      /** IANA Time Zone database entry for America/Belem.  UTC offset −03:00/−03:00. */
+      static AMERICA_BELEM = new _TimeZone("America/Belem");
+      /** IANA Time Zone database entry for America/Belize.  UTC offset −06:00/−06:00. */
+      static AMERICA_BELIZE = new _TimeZone("America/Belize");
+      /** IANA Time Zone database entry for America/Boa_Vista.  UTC offset −04:00/−04:00. */
+      static AMERICA_BOA_VISTA = new _TimeZone("America/Boa_Vista");
+      /** IANA Time Zone database entry for America/Bogota.  UTC offset −05:00/−05:00. */
+      static AMERICA_BOGOTA = new _TimeZone("America/Bogota");
+      /** IANA Time Zone database entry for America/Boise.  UTC offset −07:00/−06:00. */
+      static AMERICA_BOISE = new _TimeZone("America/Boise");
+      /** IANA Time Zone database entry for America/Cambridge_Bay.  UTC offset −07:00/−06:00. */
+      static AMERICA_CAMBRIDGE_BAY = new _TimeZone("America/Cambridge_Bay");
+      /** IANA Time Zone database entry for America/Campo_Grande.  UTC offset −04:00/−04:00. */
+      static AMERICA_CAMPO_GRANDE = new _TimeZone("America/Campo_Grande");
+      /** IANA Time Zone database entry for America/Cancun.  UTC offset −05:00/−05:00. */
+      static AMERICA_CANCUN = new _TimeZone("America/Cancun");
+      /** IANA Time Zone database entry for America/Caracas.  UTC offset −04:00/−04:00. */
+      static AMERICA_CARACAS = new _TimeZone("America/Caracas");
+      /** IANA Time Zone database entry for America/Cayenne.  UTC offset −03:00/−03:00. */
+      static AMERICA_CAYENNE = new _TimeZone("America/Cayenne");
+      /** IANA Time Zone database entry for America/Chicago.  UTC offset −06:00/−05:00. */
+      static AMERICA_CHICAGO = new _TimeZone("America/Chicago");
+      /** IANA Time Zone database entry for America/Chihuahua.  UTC offset −06:00/−06:00. */
+      static AMERICA_CHIHUAHUA = new _TimeZone("America/Chihuahua");
+      /** IANA Time Zone database entry for America/Ciudad_Juarez.  UTC offset −07:00/−06:00. */
+      static AMERICA_CIUDAD_JUAREZ = new _TimeZone("America/Ciudad_Juarez");
+      /** IANA Time Zone database entry for America/Costa_Rica.  UTC offset −06:00/−06:00. */
+      static AMERICA_COSTA_RICA = new _TimeZone("America/Costa_Rica");
+      /** IANA Time Zone database entry for America/Cuiaba.  UTC offset −04:00/−04:00. */
+      static AMERICA_CUIABA = new _TimeZone("America/Cuiaba");
+      /** IANA Time Zone database entry for America/Danmarkshavn.  UTC offset +00:00/+00:00. */
+      static AMERICA_DANMARKSHAVN = new _TimeZone("America/Danmarkshavn");
+      /** IANA Time Zone database entry for America/Dawson.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON = new _TimeZone("America/Dawson");
+      /** IANA Time Zone database entry for America/Dawson_Creek.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON_CREEK = new _TimeZone("America/Dawson_Creek");
+      /** IANA Time Zone database entry for America/Denver.  UTC offset −07:00/−06:00. */
+      static AMERICA_DENVER = new _TimeZone("America/Denver");
+      /** IANA Time Zone database entry for America/Detroit.  UTC offset −05:00/−04:00. */
+      static AMERICA_DETROIT = new _TimeZone("America/Detroit");
+      /** IANA Time Zone database entry for America/Edmonton.  UTC offset −07:00/−06:00. */
+      static AMERICA_EDMONTON = new _TimeZone("America/Edmonton");
+      /** IANA Time Zone database entry for America/Eirunepe.  UTC offset −05:00/−05:00. */
+      static AMERICA_EIRUNEPE = new _TimeZone("America/Eirunepe");
+      /** IANA Time Zone database entry for America/El_Salvador.  UTC offset −06:00/−06:00. */
+      static AMERICA_EL_SALVADOR = new _TimeZone("America/El_Salvador");
+      /** IANA Time Zone database entry for America/Fort_Nelson.  UTC offset −07:00/−07:00. */
+      static AMERICA_FORT_NELSON = new _TimeZone("America/Fort_Nelson");
+      /** IANA Time Zone database entry for America/Fortaleza.  UTC offset −03:00/−03:00. */
+      static AMERICA_FORTALEZA = new _TimeZone("America/Fortaleza");
+      /** IANA Time Zone database entry for America/Glace_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GLACE_BAY = new _TimeZone("America/Glace_Bay");
+      /** IANA Time Zone database entry for America/Goose_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GOOSE_BAY = new _TimeZone("America/Goose_Bay");
+      /** IANA Time Zone database entry for America/Grand_Turk.  UTC offset −05:00/−04:00. */
+      static AMERICA_GRAND_TURK = new _TimeZone("America/Grand_Turk");
+      /** IANA Time Zone database entry for America/Guatemala.  UTC offset −06:00/−06:00. */
+      static AMERICA_GUATEMALA = new _TimeZone("America/Guatemala");
+      /** IANA Time Zone database entry for America/Guayaquil.  UTC offset −05:00/−05:00. */
+      static AMERICA_GUAYAQUIL = new _TimeZone("America/Guayaquil");
+      /** IANA Time Zone database entry for America/Guyana.  UTC offset −04:00/−04:00. */
+      static AMERICA_GUYANA = new _TimeZone("America/Guyana");
+      /** IANA Time Zone database entry for America/Halifax.  UTC offset −04:00/−03:00. */
+      static AMERICA_HALIFAX = new _TimeZone("America/Halifax");
+      /** IANA Time Zone database entry for America/Havana.  UTC offset −05:00/−04:00. */
+      static AMERICA_HAVANA = new _TimeZone("America/Havana");
+      /** IANA Time Zone database entry for America/Hermosillo.  UTC offset −07:00/−07:00. */
+      static AMERICA_HERMOSILLO = new _TimeZone("America/Hermosillo");
+      /** IANA Time Zone database entry for America/Indiana/Indianapolis.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_INDIANAPOLIS = new _TimeZone("America/Indiana/Indianapolis");
+      /** IANA Time Zone database entry for America/Indiana/Knox.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_KNOX = new _TimeZone("America/Indiana/Knox");
+      /** IANA Time Zone database entry for America/Indiana/Marengo.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_MARENGO = new _TimeZone("America/Indiana/Marengo");
+      /** IANA Time Zone database entry for America/Indiana/Petersburg.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_PETERSBURG = new _TimeZone("America/Indiana/Petersburg");
+      /** IANA Time Zone database entry for America/Indiana/Tell_City.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_TELL_CITY = new _TimeZone("America/Indiana/Tell_City");
+      /** IANA Time Zone database entry for America/Indiana/Vevay.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VEVAY = new _TimeZone("America/Indiana/Vevay");
+      /** IANA Time Zone database entry for America/Indiana/Vincennes.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VINCENNES = new _TimeZone("America/Indiana/Vincennes");
+      /** IANA Time Zone database entry for America/Indiana/Winamac.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_WINAMAC = new _TimeZone("America/Indiana/Winamac");
+      /** IANA Time Zone database entry for America/Inuvik.  UTC offset −07:00/−06:00. */
+      static AMERICA_INUVIK = new _TimeZone("America/Inuvik");
+      /** IANA Time Zone database entry for America/Iqaluit.  UTC offset −05:00/−04:00. */
+      static AMERICA_IQALUIT = new _TimeZone("America/Iqaluit");
+      /** IANA Time Zone database entry for America/Jamaica.  UTC offset −05:00/−05:00. */
+      static AMERICA_JAMAICA = new _TimeZone("America/Jamaica");
+      /** IANA Time Zone database entry for America/Juneau.  UTC offset −09:00/−08:00. */
+      static AMERICA_JUNEAU = new _TimeZone("America/Juneau");
+      /** IANA Time Zone database entry for America/Kentucky/Louisville.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_LOUISVILLE = new _TimeZone("America/Kentucky/Louisville");
+      /** IANA Time Zone database entry for America/Kentucky/Monticello.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_MONTICELLO = new _TimeZone("America/Kentucky/Monticello");
+      /** IANA Time Zone database entry for America/La_Paz.  UTC offset −04:00/−04:00. */
+      static AMERICA_LA_PAZ = new _TimeZone("America/La_Paz");
+      /** IANA Time Zone database entry for America/Lima.  UTC offset −05:00/−05:00. */
+      static AMERICA_LIMA = new _TimeZone("America/Lima");
+      /** IANA Time Zone database entry for America/Los_Angeles.  UTC offset −08:00/−07:00. */
+      static AMERICA_LOS_ANGELES = new _TimeZone("America/Los_Angeles");
+      /** IANA Time Zone database entry for America/Maceio.  UTC offset −03:00/−03:00. */
+      static AMERICA_MACEIO = new _TimeZone("America/Maceio");
+      /** IANA Time Zone database entry for America/Managua.  UTC offset −06:00/−06:00. */
+      static AMERICA_MANAGUA = new _TimeZone("America/Managua");
+      /** IANA Time Zone database entry for America/Manaus.  UTC offset −04:00/−04:00. */
+      static AMERICA_MANAUS = new _TimeZone("America/Manaus");
+      /** IANA Time Zone database entry for America/Martinique.  UTC offset −04:00/−04:00. */
+      static AMERICA_MARTINIQUE = new _TimeZone("America/Martinique");
+      /** IANA Time Zone database entry for America/Matamoros.  UTC offset −06:00/−05:00. */
+      static AMERICA_MATAMOROS = new _TimeZone("America/Matamoros");
+      /** IANA Time Zone database entry for America/Mazatlan.  UTC offset −07:00/−07:00. */
+      static AMERICA_MAZATLAN = new _TimeZone("America/Mazatlan");
+      /** IANA Time Zone database entry for America/Menominee.  UTC offset −06:00/−05:00. */
+      static AMERICA_MENOMINEE = new _TimeZone("America/Menominee");
+      /** IANA Time Zone database entry for America/Merida.  UTC offset −06:00/−06:00. */
+      static AMERICA_MERIDA = new _TimeZone("America/Merida");
+      /** IANA Time Zone database entry for America/Metlakatla.  UTC offset −09:00/−08:00. */
+      static AMERICA_METLAKATLA = new _TimeZone("America/Metlakatla");
+      /** IANA Time Zone database entry for America/Mexico_City.  UTC offset −06:00/−06:00. */
+      static AMERICA_MEXICO_CITY = new _TimeZone("America/Mexico_City");
+      /** IANA Time Zone database entry for America/Miquelon.  UTC offset −03:00/−02:00. */
+      static AMERICA_MIQUELON = new _TimeZone("America/Miquelon");
+      /** IANA Time Zone database entry for America/Moncton.  UTC offset −04:00/−03:00. */
+      static AMERICA_MONCTON = new _TimeZone("America/Moncton");
+      /** IANA Time Zone database entry for America/Monterrey.  UTC offset −06:00/−06:00. */
+      static AMERICA_MONTERREY = new _TimeZone("America/Monterrey");
+      /** IANA Time Zone database entry for America/Montevideo.  UTC offset −03:00/−03:00. */
+      static AMERICA_MONTEVIDEO = new _TimeZone("America/Montevideo");
+      /** IANA Time Zone database entry for America/New_York.  UTC offset −05:00/−04:00. */
+      static AMERICA_NEW_YORK = new _TimeZone("America/New_York");
+      /** IANA Time Zone database entry for America/Nome.  UTC offset −09:00/−08:00. */
+      static AMERICA_NOME = new _TimeZone("America/Nome");
+      /** IANA Time Zone database entry for America/Noronha.  UTC offset −02:00/−02:00. */
+      static AMERICA_NORONHA = new _TimeZone("America/Noronha");
+      /** IANA Time Zone database entry for America/North_Dakota/Beulah.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_BEULAH = new _TimeZone("America/North_Dakota/Beulah");
+      /** IANA Time Zone database entry for America/North_Dakota/Center.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_CENTER = new _TimeZone("America/North_Dakota/Center");
+      /** IANA Time Zone database entry for America/North_Dakota/New_Salem.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_NEW_SALEM = new _TimeZone("America/North_Dakota/New_Salem");
+      /** IANA Time Zone database entry for America/Nuuk.  UTC offset −03:00/−03:00. */
+      static AMERICA_NUUK = new _TimeZone("America/Nuuk");
+      /** IANA Time Zone database entry for America/Ojinaga.  UTC offset −06:00/−05:00. */
+      static AMERICA_OJINAGA = new _TimeZone("America/Ojinaga");
+      /** IANA Time Zone database entry for America/Panama.  UTC offset −05:00/−05:00. */
+      static AMERICA_PANAMA = new _TimeZone("America/Panama");
+      /** IANA Time Zone database entry for America/Paramaribo.  UTC offset −03:00/−03:00. */
+      static AMERICA_PARAMARIBO = new _TimeZone("America/Paramaribo");
+      /** IANA Time Zone database entry for America/Phoenix.  UTC offset −07:00/−07:00. */
+      static AMERICA_PHOENIX = new _TimeZone("America/Phoenix");
+      /** IANA Time Zone database entry for America/Port-au-Prince.  UTC offset −05:00/−04:00. */
+      static AMERICA_PORT_MINUS_AU_MINUS_PRINCE = new _TimeZone("America/Port-au-Prince");
+      /** IANA Time Zone database entry for America/Porto_Velho.  UTC offset −04:00/−04:00. */
+      static AMERICA_PORTO_VELHO = new _TimeZone("America/Porto_Velho");
+      /** IANA Time Zone database entry for America/Puerto_Rico.  UTC offset −04:00/−04:00. */
+      static AMERICA_PUERTO_RICO = new _TimeZone("America/Puerto_Rico");
+      /** IANA Time Zone database entry for America/Punta_Arenas.  UTC offset −03:00/−03:00. */
+      static AMERICA_PUNTA_ARENAS = new _TimeZone("America/Punta_Arenas");
+      /** IANA Time Zone database entry for America/Rankin_Inlet.  UTC offset −06:00/−05:00. */
+      static AMERICA_RANKIN_INLET = new _TimeZone("America/Rankin_Inlet");
+      /** IANA Time Zone database entry for America/Recife.  UTC offset −03:00/−03:00. */
+      static AMERICA_RECIFE = new _TimeZone("America/Recife");
+      /** IANA Time Zone database entry for America/Regina.  UTC offset −06:00/−06:00. */
+      static AMERICA_REGINA = new _TimeZone("America/Regina");
+      /** IANA Time Zone database entry for America/Resolute.  UTC offset −06:00/−05:00. */
+      static AMERICA_RESOLUTE = new _TimeZone("America/Resolute");
+      /** IANA Time Zone database entry for America/Rio_Branco.  UTC offset −05:00/−05:00. */
+      static AMERICA_RIO_BRANCO = new _TimeZone("America/Rio_Branco");
+      /** IANA Time Zone database entry for America/Santarem.  UTC offset −03:00/−03:00. */
+      static AMERICA_SANTAREM = new _TimeZone("America/Santarem");
+      /** IANA Time Zone database entry for America/Santiago.  UTC offset −04:00/−03:00. */
+      static AMERICA_SANTIAGO = new _TimeZone("America/Santiago");
+      /** IANA Time Zone database entry for America/Santo_Domingo.  UTC offset −04:00/−04:00. */
+      static AMERICA_SANTO_DOMINGO = new _TimeZone("America/Santo_Domingo");
+      /** IANA Time Zone database entry for America/Sao_Paulo.  UTC offset −03:00/−03:00. */
+      static AMERICA_SAO_PAULO = new _TimeZone("America/Sao_Paulo");
+      /** IANA Time Zone database entry for America/Scoresbysund.  UTC offset −01:00/+00:00. */
+      static AMERICA_SCORESBYSUND = new _TimeZone("America/Scoresbysund");
+      /** IANA Time Zone database entry for America/Sitka.  UTC offset −09:00/−08:00. */
+      static AMERICA_SITKA = new _TimeZone("America/Sitka");
+      /** IANA Time Zone database entry for America/St_Johns.  UTC offset −03:30/−02:30. */
+      static AMERICA_ST_JOHNS = new _TimeZone("America/St_Johns");
+      /** IANA Time Zone database entry for America/Swift_Current.  UTC offset −06:00/−06:00. */
+      static AMERICA_SWIFT_CURRENT = new _TimeZone("America/Swift_Current");
+      /** IANA Time Zone database entry for America/Tegucigalpa.  UTC offset −06:00/−06:00. */
+      static AMERICA_TEGUCIGALPA = new _TimeZone("America/Tegucigalpa");
+      /** IANA Time Zone database entry for America/Thule.  UTC offset −04:00/−03:00. */
+      static AMERICA_THULE = new _TimeZone("America/Thule");
+      /** IANA Time Zone database entry for America/Tijuana.  UTC offset −08:00/−07:00. */
+      static AMERICA_TIJUANA = new _TimeZone("America/Tijuana");
+      /** IANA Time Zone database entry for America/Toronto.  UTC offset −05:00/−04:00. */
+      static AMERICA_TORONTO = new _TimeZone("America/Toronto");
+      /** IANA Time Zone database entry for America/Vancouver.  UTC offset −08:00/−07:00. */
+      static AMERICA_VANCOUVER = new _TimeZone("America/Vancouver");
+      /** IANA Time Zone database entry for America/Whitehorse.  UTC offset −07:00/−07:00. */
+      static AMERICA_WHITEHORSE = new _TimeZone("America/Whitehorse");
+      /** IANA Time Zone database entry for America/Winnipeg.  UTC offset −06:00/−05:00. */
+      static AMERICA_WINNIPEG = new _TimeZone("America/Winnipeg");
+      /** IANA Time Zone database entry for America/Yakutat.  UTC offset −09:00/−08:00. */
+      static AMERICA_YAKUTAT = new _TimeZone("America/Yakutat");
+      /** IANA Time Zone database entry for America/Yellowknife.  UTC offset −07:00/−06:00. */
+      static AMERICA_YELLOWKNIFE = new _TimeZone("America/Yellowknife");
+      /** IANA Time Zone database entry for Antarctica/Casey.  UTC offset +11:00/+11:00. */
+      static ANTARCTICA_CASEY = new _TimeZone("Antarctica/Casey");
+      /** IANA Time Zone database entry for Antarctica/Davis.  UTC offset +07:00/+07:00. */
+      static ANTARCTICA_DAVIS = new _TimeZone("Antarctica/Davis");
+      /** IANA Time Zone database entry for Antarctica/Macquarie.  UTC offset +10:00/+11:00. */
+      static ANTARCTICA_MACQUARIE = new _TimeZone("Antarctica/Macquarie");
+      /** IANA Time Zone database entry for Antarctica/Mawson.  UTC offset +05:00/+05:00. */
+      static ANTARCTICA_MAWSON = new _TimeZone("Antarctica/Mawson");
+      /** IANA Time Zone database entry for Antarctica/Palmer.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_PALMER = new _TimeZone("Antarctica/Palmer");
+      /** IANA Time Zone database entry for Antarctica/Rothera.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_ROTHERA = new _TimeZone("Antarctica/Rothera");
+      /** IANA Time Zone database entry for Antarctica/Troll.  UTC offset +00:00/+02:00. */
+      static ANTARCTICA_TROLL = new _TimeZone("Antarctica/Troll");
+      /** IANA Time Zone database entry for Asia/Almaty.  UTC offset +06:00/+06:00. */
+      static ASIA_ALMATY = new _TimeZone("Asia/Almaty");
+      /** IANA Time Zone database entry for Asia/Amman.  UTC offset +03:00/+03:00. */
+      static ASIA_AMMAN = new _TimeZone("Asia/Amman");
+      /** IANA Time Zone database entry for Asia/Anadyr.  UTC offset +12:00/+12:00. */
+      static ASIA_ANADYR = new _TimeZone("Asia/Anadyr");
+      /** IANA Time Zone database entry for Asia/Aqtau.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTAU = new _TimeZone("Asia/Aqtau");
+      /** IANA Time Zone database entry for Asia/Aqtobe.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTOBE = new _TimeZone("Asia/Aqtobe");
+      /** IANA Time Zone database entry for Asia/Ashgabat.  UTC offset +05:00/+05:00. */
+      static ASIA_ASHGABAT = new _TimeZone("Asia/Ashgabat");
+      /** IANA Time Zone database entry for Asia/Atyrau.  UTC offset +05:00/+05:00. */
+      static ASIA_ATYRAU = new _TimeZone("Asia/Atyrau");
+      /** IANA Time Zone database entry for Asia/Baghdad.  UTC offset +03:00/+03:00. */
+      static ASIA_BAGHDAD = new _TimeZone("Asia/Baghdad");
+      /** IANA Time Zone database entry for Asia/Baku.  UTC offset +04:00/+04:00. */
+      static ASIA_BAKU = new _TimeZone("Asia/Baku");
+      /** IANA Time Zone database entry for Asia/Bangkok.  UTC offset +07:00/+07:00. */
+      static ASIA_BANGKOK = new _TimeZone("Asia/Bangkok");
+      /** IANA Time Zone database entry for Asia/Barnaul.  UTC offset +07:00/+07:00. */
+      static ASIA_BARNAUL = new _TimeZone("Asia/Barnaul");
+      /** IANA Time Zone database entry for Asia/Beirut.  UTC offset +02:00/+03:00. */
+      static ASIA_BEIRUT = new _TimeZone("Asia/Beirut");
+      /** IANA Time Zone database entry for Asia/Bishkek.  UTC offset +06:00/+06:00. */
+      static ASIA_BISHKEK = new _TimeZone("Asia/Bishkek");
+      /** IANA Time Zone database entry for Asia/Chita.  UTC offset +09:00/+09:00. */
+      static ASIA_CHITA = new _TimeZone("Asia/Chita");
+      /** IANA Time Zone database entry for Asia/Choibalsan.  UTC offset +08:00/+08:00. */
+      static ASIA_CHOIBALSAN = new _TimeZone("Asia/Choibalsan");
+      /** IANA Time Zone database entry for Asia/Colombo.  UTC offset +05:30/+05:30. */
+      static ASIA_COLOMBO = new _TimeZone("Asia/Colombo");
+      /** IANA Time Zone database entry for Asia/Damascus.  UTC offset +03:00/+03:00. */
+      static ASIA_DAMASCUS = new _TimeZone("Asia/Damascus");
+      /** IANA Time Zone database entry for Asia/Dhaka.  UTC offset +06:00/+06:00. */
+      static ASIA_DHAKA = new _TimeZone("Asia/Dhaka");
+      /** IANA Time Zone database entry for Asia/Dili.  UTC offset +09:00/+09:00. */
+      static ASIA_DILI = new _TimeZone("Asia/Dili");
+      /** IANA Time Zone database entry for Asia/Dubai.  UTC offset +04:00/+04:00. */
+      static ASIA_DUBAI = new _TimeZone("Asia/Dubai");
+      /** IANA Time Zone database entry for Asia/Dushanbe.  UTC offset +05:00/+05:00. */
+      static ASIA_DUSHANBE = new _TimeZone("Asia/Dushanbe");
+      /** IANA Time Zone database entry for Asia/Famagusta.  UTC offset +02:00/+03:00. */
+      static ASIA_FAMAGUSTA = new _TimeZone("Asia/Famagusta");
+      /** IANA Time Zone database entry for Asia/Gaza.  UTC offset +02:00/+03:00. */
+      static ASIA_GAZA = new _TimeZone("Asia/Gaza");
+      /** IANA Time Zone database entry for Asia/Hebron.  UTC offset +02:00/+03:00. */
+      static ASIA_HEBRON = new _TimeZone("Asia/Hebron");
+      /** IANA Time Zone database entry for Asia/Ho_Chi_Minh.  UTC offset +07:00/+07:00. */
+      static ASIA_HO_CHI_MINH = new _TimeZone("Asia/Ho_Chi_Minh");
+      /** IANA Time Zone database entry for Asia/Hong_Kong.  UTC offset +08:00/+08:00. */
+      static ASIA_HONG_KONG = new _TimeZone("Asia/Hong_Kong");
+      /** IANA Time Zone database entry for Asia/Hovd.  UTC offset +07:00/+07:00. */
+      static ASIA_HOVD = new _TimeZone("Asia/Hovd");
+      /** IANA Time Zone database entry for Asia/Irkutsk.  UTC offset +08:00/+08:00. */
+      static ASIA_IRKUTSK = new _TimeZone("Asia/Irkutsk");
+      /** IANA Time Zone database entry for Asia/Jakarta.  UTC offset +07:00/+07:00. */
+      static ASIA_JAKARTA = new _TimeZone("Asia/Jakarta");
+      /** IANA Time Zone database entry for Asia/Jayapura.  UTC offset +09:00/+09:00. */
+      static ASIA_JAYAPURA = new _TimeZone("Asia/Jayapura");
+      /** IANA Time Zone database entry for Asia/Jerusalem.  UTC offset +02:00/+03:00. */
+      static ASIA_JERUSALEM = new _TimeZone("Asia/Jerusalem");
+      /** IANA Time Zone database entry for Asia/Kabul.  UTC offset +04:30/+04:30. */
+      static ASIA_KABUL = new _TimeZone("Asia/Kabul");
+      /** IANA Time Zone database entry for Asia/Kamchatka.  UTC offset +12:00/+12:00. */
+      static ASIA_KAMCHATKA = new _TimeZone("Asia/Kamchatka");
+      /** IANA Time Zone database entry for Asia/Karachi.  UTC offset +05:00/+05:00. */
+      static ASIA_KARACHI = new _TimeZone("Asia/Karachi");
+      /** IANA Time Zone database entry for Asia/Kathmandu.  UTC offset +05:45/+05:45. */
+      static ASIA_KATHMANDU = new _TimeZone("Asia/Kathmandu");
+      /** IANA Time Zone database entry for Asia/Khandyga.  UTC offset +09:00/+09:00. */
+      static ASIA_KHANDYGA = new _TimeZone("Asia/Khandyga");
+      /** IANA Time Zone database entry for Asia/Kolkata.  UTC offset +05:30/+05:30. */
+      static ASIA_KOLKATA = new _TimeZone("Asia/Kolkata");
+      /** IANA Time Zone database entry for Asia/Krasnoyarsk.  UTC offset +07:00/+07:00. */
+      static ASIA_KRASNOYARSK = new _TimeZone("Asia/Krasnoyarsk");
+      /** IANA Time Zone database entry for Asia/Kuching.  UTC offset +08:00/+08:00. */
+      static ASIA_KUCHING = new _TimeZone("Asia/Kuching");
+      /** IANA Time Zone database entry for Asia/Macau.  UTC offset +08:00/+08:00. */
+      static ASIA_MACAU = new _TimeZone("Asia/Macau");
+      /** IANA Time Zone database entry for Asia/Magadan.  UTC offset +11:00/+11:00. */
+      static ASIA_MAGADAN = new _TimeZone("Asia/Magadan");
+      /** IANA Time Zone database entry for Asia/Makassar.  UTC offset +08:00/+08:00. */
+      static ASIA_MAKASSAR = new _TimeZone("Asia/Makassar");
+      /** IANA Time Zone database entry for Asia/Manila.  UTC offset +08:00/+08:00. */
+      static ASIA_MANILA = new _TimeZone("Asia/Manila");
+      /** IANA Time Zone database entry for Asia/Nicosia.  UTC offset +02:00/+03:00. */
+      static ASIA_NICOSIA = new _TimeZone("Asia/Nicosia");
+      /** IANA Time Zone database entry for Asia/Novokuznetsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOKUZNETSK = new _TimeZone("Asia/Novokuznetsk");
+      /** IANA Time Zone database entry for Asia/Novosibirsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOSIBIRSK = new _TimeZone("Asia/Novosibirsk");
+      /** IANA Time Zone database entry for Asia/Omsk.  UTC offset +06:00/+06:00. */
+      static ASIA_OMSK = new _TimeZone("Asia/Omsk");
+      /** IANA Time Zone database entry for Asia/Oral.  UTC offset +05:00/+05:00. */
+      static ASIA_ORAL = new _TimeZone("Asia/Oral");
+      /** IANA Time Zone database entry for Asia/Pontianak.  UTC offset +07:00/+07:00. */
+      static ASIA_PONTIANAK = new _TimeZone("Asia/Pontianak");
+      /** IANA Time Zone database entry for Asia/Pyongyang.  UTC offset +09:00/+09:00. */
+      static ASIA_PYONGYANG = new _TimeZone("Asia/Pyongyang");
+      /** IANA Time Zone database entry for Asia/Qatar.  UTC offset +03:00/+03:00. */
+      static ASIA_QATAR = new _TimeZone("Asia/Qatar");
+      /** IANA Time Zone database entry for Asia/Qostanay.  UTC offset +06:00/+06:00. */
+      static ASIA_QOSTANAY = new _TimeZone("Asia/Qostanay");
+      /** IANA Time Zone database entry for Asia/Qyzylorda.  UTC offset +05:00/+05:00. */
+      static ASIA_QYZYLORDA = new _TimeZone("Asia/Qyzylorda");
+      /** IANA Time Zone database entry for Asia/Riyadh.  UTC offset +03:00/+03:00. */
+      static ASIA_RIYADH = new _TimeZone("Asia/Riyadh");
+      /** IANA Time Zone database entry for Asia/Sakhalin.  UTC offset +11:00/+11:00. */
+      static ASIA_SAKHALIN = new _TimeZone("Asia/Sakhalin");
+      /** IANA Time Zone database entry for Asia/Samarkand.  UTC offset +05:00/+05:00. */
+      static ASIA_SAMARKAND = new _TimeZone("Asia/Samarkand");
+      /** IANA Time Zone database entry for Asia/Seoul.  UTC offset +09:00/+09:00. */
+      static ASIA_SEOUL = new _TimeZone("Asia/Seoul");
+      /** IANA Time Zone database entry for Asia/Shanghai.  UTC offset +08:00/+08:00. */
+      static ASIA_SHANGHAI = new _TimeZone("Asia/Shanghai");
+      /** IANA Time Zone database entry for Asia/Singapore.  UTC offset +08:00/+08:00. */
+      static ASIA_SINGAPORE = new _TimeZone("Asia/Singapore");
+      /** IANA Time Zone database entry for Asia/Srednekolymsk.  UTC offset +11:00/+11:00. */
+      static ASIA_SREDNEKOLYMSK = new _TimeZone("Asia/Srednekolymsk");
+      /** IANA Time Zone database entry for Asia/Taipei.  UTC offset +08:00/+08:00. */
+      static ASIA_TAIPEI = new _TimeZone("Asia/Taipei");
+      /** IANA Time Zone database entry for Asia/Tashkent.  UTC offset +05:00/+05:00. */
+      static ASIA_TASHKENT = new _TimeZone("Asia/Tashkent");
+      /** IANA Time Zone database entry for Asia/Tbilisi.  UTC offset +04:00/+04:00. */
+      static ASIA_TBILISI = new _TimeZone("Asia/Tbilisi");
+      /** IANA Time Zone database entry for Asia/Tehran.  UTC offset +03:30/+03:30. */
+      static ASIA_TEHRAN = new _TimeZone("Asia/Tehran");
+      /** IANA Time Zone database entry for Asia/Thimphu.  UTC offset +06:00/+06:00. */
+      static ASIA_THIMPHU = new _TimeZone("Asia/Thimphu");
+      /** IANA Time Zone database entry for Asia/Tokyo.  UTC offset +09:00/+09:00. */
+      static ASIA_TOKYO = new _TimeZone("Asia/Tokyo");
+      /** IANA Time Zone database entry for Asia/Tomsk.  UTC offset +07:00/+07:00. */
+      static ASIA_TOMSK = new _TimeZone("Asia/Tomsk");
+      /** IANA Time Zone database entry for Asia/Ulaanbaatar.  UTC offset +08:00/+08:00. */
+      static ASIA_ULAANBAATAR = new _TimeZone("Asia/Ulaanbaatar");
+      /** IANA Time Zone database entry for Asia/Urumqi.  UTC offset +06:00/+06:00. */
+      static ASIA_URUMQI = new _TimeZone("Asia/Urumqi");
+      /** IANA Time Zone database entry for Asia/Ust-Nera.  UTC offset +10:00/+10:00. */
+      static ASIA_UST_MINUS_NERA = new _TimeZone("Asia/Ust-Nera");
+      /** IANA Time Zone database entry for Asia/Vladivostok.  UTC offset +10:00/+10:00. */
+      static ASIA_VLADIVOSTOK = new _TimeZone("Asia/Vladivostok");
+      /** IANA Time Zone database entry for Asia/Yakutsk.  UTC offset +09:00/+09:00. */
+      static ASIA_YAKUTSK = new _TimeZone("Asia/Yakutsk");
+      /** IANA Time Zone database entry for Asia/Yangon.  UTC offset +06:30/+06:30. */
+      static ASIA_YANGON = new _TimeZone("Asia/Yangon");
+      /** IANA Time Zone database entry for Asia/Yekaterinburg.  UTC offset +05:00/+05:00. */
+      static ASIA_YEKATERINBURG = new _TimeZone("Asia/Yekaterinburg");
+      /** IANA Time Zone database entry for Asia/Yerevan.  UTC offset +04:00/+04:00. */
+      static ASIA_YEREVAN = new _TimeZone("Asia/Yerevan");
+      /** IANA Time Zone database entry for Atlantic/Azores.  UTC offset −01:00/+00:00. */
+      static ATLANTIC_AZORES = new _TimeZone("Atlantic/Azores");
+      /** IANA Time Zone database entry for Atlantic/Bermuda.  UTC offset −04:00/−03:00. */
+      static ATLANTIC_BERMUDA = new _TimeZone("Atlantic/Bermuda");
+      /** IANA Time Zone database entry for Atlantic/Canary.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_CANARY = new _TimeZone("Atlantic/Canary");
+      /** IANA Time Zone database entry for Atlantic/Cape_Verde.  UTC offset −01:00/−01:00. */
+      static ATLANTIC_CAPE_VERDE = new _TimeZone("Atlantic/Cape_Verde");
+      /** IANA Time Zone database entry for Atlantic/Faroe.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_FAROE = new _TimeZone("Atlantic/Faroe");
+      /** IANA Time Zone database entry for Atlantic/Madeira.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_MADEIRA = new _TimeZone("Atlantic/Madeira");
+      /** IANA Time Zone database entry for Atlantic/South_Georgia.  UTC offset −02:00/−02:00. */
+      static ATLANTIC_SOUTH_GEORGIA = new _TimeZone("Atlantic/South_Georgia");
+      /** IANA Time Zone database entry for Atlantic/Stanley.  UTC offset −03:00/−03:00. */
+      static ATLANTIC_STANLEY = new _TimeZone("Atlantic/Stanley");
+      /** IANA Time Zone database entry for Australia/Adelaide.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_ADELAIDE = new _TimeZone("Australia/Adelaide");
+      /** IANA Time Zone database entry for Australia/Brisbane.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_BRISBANE = new _TimeZone("Australia/Brisbane");
+      /** IANA Time Zone database entry for Australia/Broken_Hill.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_BROKEN_HILL = new _TimeZone("Australia/Broken_Hill");
+      /** IANA Time Zone database entry for Australia/Darwin.  UTC offset +09:30/+09:30. */
+      static AUSTRALIA_DARWIN = new _TimeZone("Australia/Darwin");
+      /** IANA Time Zone database entry for Australia/Eucla.  UTC offset +08:45/+08:45. */
+      static AUSTRALIA_EUCLA = new _TimeZone("Australia/Eucla");
+      /** IANA Time Zone database entry for Australia/Hobart.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_HOBART = new _TimeZone("Australia/Hobart");
+      /** IANA Time Zone database entry for Australia/Lindeman.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_LINDEMAN = new _TimeZone("Australia/Lindeman");
+      /** IANA Time Zone database entry for Australia/Lord_Howe.  UTC offset +10:30/+11:00. */
+      static AUSTRALIA_LORD_HOWE = new _TimeZone("Australia/Lord_Howe");
+      /** IANA Time Zone database entry for Australia/Melbourne.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_MELBOURNE = new _TimeZone("Australia/Melbourne");
+      /** IANA Time Zone database entry for Australia/Perth.  UTC offset +08:00/+08:00. */
+      static AUSTRALIA_PERTH = new _TimeZone("Australia/Perth");
+      /** IANA Time Zone database entry for Australia/Sydney.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_SYDNEY = new _TimeZone("Australia/Sydney");
+      /** IANA Time Zone database entry for CET.  UTC offset +01:00/+02:00. */
+      static CET = new _TimeZone("CET");
+      /** IANA Time Zone database entry for CST6CDT.  UTC offset −06:00/−05:00. */
+      static CST6CDT = new _TimeZone("CST6CDT");
+      /** IANA Time Zone database entry for EET.  UTC offset +02:00/+03:00. */
+      static EET = new _TimeZone("EET");
+      /** IANA Time Zone database entry for EST.  UTC offset −05:00/−05:00. */
+      static EST = new _TimeZone("EST");
+      /** IANA Time Zone database entry for EST5EDT.  UTC offset −05:00/−04:00. */
+      static EST5EDT = new _TimeZone("EST5EDT");
+      /** IANA Time Zone database entry for Etc/GMT.  UTC offset +00:00/+00:00. */
+      static ETC_GMT = new _TimeZone("Etc/GMT");
+      /** IANA Time Zone database entry for Etc/GMT+1.  UTC offset −01:00/−01:00. */
+      static ETC_GMT_PLUS_1 = new _TimeZone("Etc/GMT+1");
+      /** IANA Time Zone database entry for Etc/GMT+10.  UTC offset −10:00/−10:00. */
+      static ETC_GMT_PLUS_10 = new _TimeZone("Etc/GMT+10");
+      /** IANA Time Zone database entry for Etc/GMT+11.  UTC offset −11:00/−11:00. */
+      static ETC_GMT_PLUS_11 = new _TimeZone("Etc/GMT+11");
+      /** IANA Time Zone database entry for Etc/GMT+12.  UTC offset −12:00/−12:00. */
+      static ETC_GMT_PLUS_12 = new _TimeZone("Etc/GMT+12");
+      /** IANA Time Zone database entry for Etc/GMT+2.  UTC offset −02:00/−02:00. */
+      static ETC_GMT_PLUS_2 = new _TimeZone("Etc/GMT+2");
+      /** IANA Time Zone database entry for Etc/GMT+3.  UTC offset −03:00/−03:00. */
+      static ETC_GMT_PLUS_3 = new _TimeZone("Etc/GMT+3");
+      /** IANA Time Zone database entry for Etc/GMT+4.  UTC offset −04:00/−04:00. */
+      static ETC_GMT_PLUS_4 = new _TimeZone("Etc/GMT+4");
+      /** IANA Time Zone database entry for Etc/GMT+5.  UTC offset −05:00/−05:00. */
+      static ETC_GMT_PLUS_5 = new _TimeZone("Etc/GMT+5");
+      /** IANA Time Zone database entry for Etc/GMT+6.  UTC offset −06:00/−06:00. */
+      static ETC_GMT_PLUS_6 = new _TimeZone("Etc/GMT+6");
+      /** IANA Time Zone database entry for Etc/GMT+7.  UTC offset −07:00/−07:00. */
+      static ETC_GMT_PLUS_7 = new _TimeZone("Etc/GMT+7");
+      /** IANA Time Zone database entry for Etc/GMT+8.  UTC offset −08:00/−08:00. */
+      static ETC_GMT_PLUS_8 = new _TimeZone("Etc/GMT+8");
+      /** IANA Time Zone database entry for Etc/GMT+9.  UTC offset −09:00/−09:00. */
+      static ETC_GMT_PLUS_9 = new _TimeZone("Etc/GMT+9");
+      /** IANA Time Zone database entry for Etc/GMT-1.  UTC offset +01:00/+01:00. */
+      static ETC_GMT_MINUS_1 = new _TimeZone("Etc/GMT-1");
+      /** IANA Time Zone database entry for Etc/GMT-10.  UTC offset +10:00/+10:00. */
+      static ETC_GMT_MINUS_10 = new _TimeZone("Etc/GMT-10");
+      /** IANA Time Zone database entry for Etc/GMT-11.  UTC offset +11:00/+11:00. */
+      static ETC_GMT_MINUS_11 = new _TimeZone("Etc/GMT-11");
+      /** IANA Time Zone database entry for Etc/GMT-12.  UTC offset +12:00/+12:00. */
+      static ETC_GMT_MINUS_12 = new _TimeZone("Etc/GMT-12");
+      /** IANA Time Zone database entry for Etc/GMT-13.  UTC offset +13:00/+13:00. */
+      static ETC_GMT_MINUS_13 = new _TimeZone("Etc/GMT-13");
+      /** IANA Time Zone database entry for Etc/GMT-14.  UTC offset +14:00/+14:00. */
+      static ETC_GMT_MINUS_14 = new _TimeZone("Etc/GMT-14");
+      /** IANA Time Zone database entry for Etc/GMT-2.  UTC offset +02:00/+02:00. */
+      static ETC_GMT_MINUS_2 = new _TimeZone("Etc/GMT-2");
+      /** IANA Time Zone database entry for Etc/GMT-3.  UTC offset +03:00/+03:00. */
+      static ETC_GMT_MINUS_3 = new _TimeZone("Etc/GMT-3");
+      /** IANA Time Zone database entry for Etc/GMT-4.  UTC offset +04:00/+04:00. */
+      static ETC_GMT_MINUS_4 = new _TimeZone("Etc/GMT-4");
+      /** IANA Time Zone database entry for Etc/GMT-5.  UTC offset +05:00/+05:00. */
+      static ETC_GMT_MINUS_5 = new _TimeZone("Etc/GMT-5");
+      /** IANA Time Zone database entry for Etc/GMT-6.  UTC offset +06:00/+06:00. */
+      static ETC_GMT_MINUS_6 = new _TimeZone("Etc/GMT-6");
+      /** IANA Time Zone database entry for Etc/GMT-7.  UTC offset +07:00/+07:00. */
+      static ETC_GMT_MINUS_7 = new _TimeZone("Etc/GMT-7");
+      /** IANA Time Zone database entry for Etc/GMT-8.  UTC offset +08:00/+08:00. */
+      static ETC_GMT_MINUS_8 = new _TimeZone("Etc/GMT-8");
+      /** IANA Time Zone database entry for Etc/GMT-9.  UTC offset +09:00/+09:00. */
+      static ETC_GMT_MINUS_9 = new _TimeZone("Etc/GMT-9");
+      /** IANA Time Zone database entry for Etc/UTC.  UTC offset +00:00/+00:00. */
+      static ETC_UTC = new _TimeZone("Etc/UTC");
+      /** IANA Time Zone database entry for Europe/Andorra.  UTC offset +01:00/+02:00. */
+      static EUROPE_ANDORRA = new _TimeZone("Europe/Andorra");
+      /** IANA Time Zone database entry for Europe/Astrakhan.  UTC offset +04:00/+04:00. */
+      static EUROPE_ASTRAKHAN = new _TimeZone("Europe/Astrakhan");
+      /** IANA Time Zone database entry for Europe/Athens.  UTC offset +02:00/+03:00. */
+      static EUROPE_ATHENS = new _TimeZone("Europe/Athens");
+      /** IANA Time Zone database entry for Europe/Belgrade.  UTC offset +01:00/+02:00. */
+      static EUROPE_BELGRADE = new _TimeZone("Europe/Belgrade");
+      /** IANA Time Zone database entry for Europe/Berlin.  UTC offset +01:00/+02:00. */
+      static EUROPE_BERLIN = new _TimeZone("Europe/Berlin");
+      /** IANA Time Zone database entry for Europe/Brussels.  UTC offset +01:00/+02:00. */
+      static EUROPE_BRUSSELS = new _TimeZone("Europe/Brussels");
+      /** IANA Time Zone database entry for Europe/Bucharest.  UTC offset +02:00/+03:00. */
+      static EUROPE_BUCHAREST = new _TimeZone("Europe/Bucharest");
+      /** IANA Time Zone database entry for Europe/Budapest.  UTC offset +01:00/+02:00. */
+      static EUROPE_BUDAPEST = new _TimeZone("Europe/Budapest");
+      /** IANA Time Zone database entry for Europe/Chisinau.  UTC offset +02:00/+03:00. */
+      static EUROPE_CHISINAU = new _TimeZone("Europe/Chisinau");
+      /** IANA Time Zone database entry for Europe/Dublin.  UTC offset +01:00/+00:00. */
+      static EUROPE_DUBLIN = new _TimeZone("Europe/Dublin");
+      /** IANA Time Zone database entry for Europe/Gibraltar.  UTC offset +01:00/+02:00. */
+      static EUROPE_GIBRALTAR = new _TimeZone("Europe/Gibraltar");
+      /** IANA Time Zone database entry for Europe/Helsinki.  UTC offset +02:00/+03:00. */
+      static EUROPE_HELSINKI = new _TimeZone("Europe/Helsinki");
+      /** IANA Time Zone database entry for Europe/Istanbul.  UTC offset +03:00/+03:00. */
+      static EUROPE_ISTANBUL = new _TimeZone("Europe/Istanbul");
+      /** IANA Time Zone database entry for Europe/Kaliningrad.  UTC offset +02:00/+02:00. */
+      static EUROPE_KALININGRAD = new _TimeZone("Europe/Kaliningrad");
+      /** IANA Time Zone database entry for Europe/Kirov.  UTC offset +03:00/+03:00. */
+      static EUROPE_KIROV = new _TimeZone("Europe/Kirov");
+      /** IANA Time Zone database entry for Europe/Kyiv.  UTC offset +02:00/+03:00. */
+      static EUROPE_KYIV = new _TimeZone("Europe/Kyiv");
+      /** IANA Time Zone database entry for Europe/Lisbon.  UTC offset +00:00/+01:00. */
+      static EUROPE_LISBON = new _TimeZone("Europe/Lisbon");
+      /** IANA Time Zone database entry for Europe/London.  UTC offset +00:00/+01:00. */
+      static EUROPE_LONDON = new _TimeZone("Europe/London");
+      /** IANA Time Zone database entry for Europe/Madrid.  UTC offset +01:00/+02:00. */
+      static EUROPE_MADRID = new _TimeZone("Europe/Madrid");
+      /** IANA Time Zone database entry for Europe/Malta.  UTC offset +01:00/+02:00. */
+      static EUROPE_MALTA = new _TimeZone("Europe/Malta");
+      /** IANA Time Zone database entry for Europe/Minsk.  UTC offset +03:00/+03:00. */
+      static EUROPE_MINSK = new _TimeZone("Europe/Minsk");
+      /** IANA Time Zone database entry for Europe/Moscow.  UTC offset +03:00/+03:00. */
+      static EUROPE_MOSCOW = new _TimeZone("Europe/Moscow");
+      /** IANA Time Zone database entry for Europe/Paris.  UTC offset +01:00/+02:00. */
+      static EUROPE_PARIS = new _TimeZone("Europe/Paris");
+      /** IANA Time Zone database entry for Europe/Prague.  UTC offset +01:00/+02:00. */
+      static EUROPE_PRAGUE = new _TimeZone("Europe/Prague");
+      /** IANA Time Zone database entry for Europe/Riga.  UTC offset +02:00/+03:00. */
+      static EUROPE_RIGA = new _TimeZone("Europe/Riga");
+      /** IANA Time Zone database entry for Europe/Rome.  UTC offset +01:00/+02:00. */
+      static EUROPE_ROME = new _TimeZone("Europe/Rome");
+      /** IANA Time Zone database entry for Europe/Samara.  UTC offset +04:00/+04:00. */
+      static EUROPE_SAMARA = new _TimeZone("Europe/Samara");
+      /** IANA Time Zone database entry for Europe/Saratov.  UTC offset +04:00/+04:00. */
+      static EUROPE_SARATOV = new _TimeZone("Europe/Saratov");
+      /** IANA Time Zone database entry for Europe/Simferopol.  UTC offset +03:00/+03:00. */
+      static EUROPE_SIMFEROPOL = new _TimeZone("Europe/Simferopol");
+      /** IANA Time Zone database entry for Europe/Sofia.  UTC offset +02:00/+03:00. */
+      static EUROPE_SOFIA = new _TimeZone("Europe/Sofia");
+      /** IANA Time Zone database entry for Europe/Tallinn.  UTC offset +02:00/+03:00. */
+      static EUROPE_TALLINN = new _TimeZone("Europe/Tallinn");
+      /** IANA Time Zone database entry for Europe/Tirane.  UTC offset +01:00/+02:00. */
+      static EUROPE_TIRANE = new _TimeZone("Europe/Tirane");
+      /** IANA Time Zone database entry for Europe/Ulyanovsk.  UTC offset +04:00/+04:00. */
+      static EUROPE_ULYANOVSK = new _TimeZone("Europe/Ulyanovsk");
+      /** IANA Time Zone database entry for Europe/Vienna.  UTC offset +01:00/+02:00. */
+      static EUROPE_VIENNA = new _TimeZone("Europe/Vienna");
+      /** IANA Time Zone database entry for Europe/Vilnius.  UTC offset +02:00/+03:00. */
+      static EUROPE_VILNIUS = new _TimeZone("Europe/Vilnius");
+      /** IANA Time Zone database entry for Europe/Volgograd.  UTC offset +03:00/+03:00. */
+      static EUROPE_VOLGOGRAD = new _TimeZone("Europe/Volgograd");
+      /** IANA Time Zone database entry for Europe/Warsaw.  UTC offset +01:00/+02:00. */
+      static EUROPE_WARSAW = new _TimeZone("Europe/Warsaw");
+      /** IANA Time Zone database entry for Europe/Zurich.  UTC offset +01:00/+02:00. */
+      static EUROPE_ZURICH = new _TimeZone("Europe/Zurich");
+      /** IANA Time Zone database entry for Factory.  UTC offset +00:00/+00:00. */
+      static FACTORY = new _TimeZone("Factory");
+      /** IANA Time Zone database entry for HST.  UTC offset −10:00/−10:00. */
+      static HST = new _TimeZone("HST");
+      /** IANA Time Zone database entry for Indian/Chagos.  UTC offset +06:00/+06:00. */
+      static INDIAN_CHAGOS = new _TimeZone("Indian/Chagos");
+      /** IANA Time Zone database entry for Indian/Maldives.  UTC offset +05:00/+05:00. */
+      static INDIAN_MALDIVES = new _TimeZone("Indian/Maldives");
+      /** IANA Time Zone database entry for Indian/Mauritius.  UTC offset +04:00/+04:00. */
+      static INDIAN_MAURITIUS = new _TimeZone("Indian/Mauritius");
+      /** IANA Time Zone database entry for MET.  UTC offset +01:00/+02:00. */
+      static MET = new _TimeZone("MET");
+      /** IANA Time Zone database entry for MST.  UTC offset −07:00/−07:00. */
+      static MST = new _TimeZone("MST");
+      /** IANA Time Zone database entry for MST7MDT.  UTC offset −07:00/−06:00. */
+      static MST7MDT = new _TimeZone("MST7MDT");
+      /** IANA Time Zone database entry for Pacific/Apia.  UTC offset +13:00/+13:00. */
+      static PACIFIC_APIA = new _TimeZone("Pacific/Apia");
+      /** IANA Time Zone database entry for Pacific/Auckland.  UTC offset +12:00/+13:00. */
+      static PACIFIC_AUCKLAND = new _TimeZone("Pacific/Auckland");
+      /** IANA Time Zone database entry for Pacific/Bougainville.  UTC offset +11:00/+11:00. */
+      static PACIFIC_BOUGAINVILLE = new _TimeZone("Pacific/Bougainville");
+      /** IANA Time Zone database entry for Pacific/Chatham.  UTC offset +12:45/+13:45. */
+      static PACIFIC_CHATHAM = new _TimeZone("Pacific/Chatham");
+      /** IANA Time Zone database entry for Pacific/Easter.  UTC offset −06:00/−05:00. */
+      static PACIFIC_EASTER = new _TimeZone("Pacific/Easter");
+      /** IANA Time Zone database entry for Pacific/Efate.  UTC offset +11:00/+11:00. */
+      static PACIFIC_EFATE = new _TimeZone("Pacific/Efate");
+      /** IANA Time Zone database entry for Pacific/Fakaofo.  UTC offset +13:00/+13:00. */
+      static PACIFIC_FAKAOFO = new _TimeZone("Pacific/Fakaofo");
+      /** IANA Time Zone database entry for Pacific/Fiji.  UTC offset +12:00/+12:00. */
+      static PACIFIC_FIJI = new _TimeZone("Pacific/Fiji");
+      /** IANA Time Zone database entry for Pacific/Galapagos.  UTC offset −06:00/−06:00. */
+      static PACIFIC_GALAPAGOS = new _TimeZone("Pacific/Galapagos");
+      /** IANA Time Zone database entry for Pacific/Gambier.  UTC offset −09:00/−09:00. */
+      static PACIFIC_GAMBIER = new _TimeZone("Pacific/Gambier");
+      /** IANA Time Zone database entry for Pacific/Guadalcanal.  UTC offset +11:00/+11:00. */
+      static PACIFIC_GUADALCANAL = new _TimeZone("Pacific/Guadalcanal");
+      /** IANA Time Zone database entry for Pacific/Guam.  UTC offset +10:00/+10:00. */
+      static PACIFIC_GUAM = new _TimeZone("Pacific/Guam");
+      /** IANA Time Zone database entry for Pacific/Honolulu.  UTC offset −10:00/−10:00. */
+      static PACIFIC_HONOLULU = new _TimeZone("Pacific/Honolulu");
+      /** IANA Time Zone database entry for Pacific/Kanton.  UTC offset +13:00/+13:00. */
+      static PACIFIC_KANTON = new _TimeZone("Pacific/Kanton");
+      /** IANA Time Zone database entry for Pacific/Kiritimati.  UTC offset +14:00/+14:00. */
+      static PACIFIC_KIRITIMATI = new _TimeZone("Pacific/Kiritimati");
+      /** IANA Time Zone database entry for Pacific/Kosrae.  UTC offset +11:00/+11:00. */
+      static PACIFIC_KOSRAE = new _TimeZone("Pacific/Kosrae");
+      /** IANA Time Zone database entry for Pacific/Kwajalein.  UTC offset +12:00/+12:00. */
+      static PACIFIC_KWAJALEIN = new _TimeZone("Pacific/Kwajalein");
+      /** IANA Time Zone database entry for Pacific/Marquesas.  UTC offset −09:30/−09:30. */
+      static PACIFIC_MARQUESAS = new _TimeZone("Pacific/Marquesas");
+      /** IANA Time Zone database entry for Pacific/Nauru.  UTC offset +12:00/+12:00. */
+      static PACIFIC_NAURU = new _TimeZone("Pacific/Nauru");
+      /** IANA Time Zone database entry for Pacific/Niue.  UTC offset −11:00/−11:00. */
+      static PACIFIC_NIUE = new _TimeZone("Pacific/Niue");
+      /** IANA Time Zone database entry for Pacific/Norfolk.  UTC offset +11:00/+12:00. */
+      static PACIFIC_NORFOLK = new _TimeZone("Pacific/Norfolk");
+      /** IANA Time Zone database entry for Pacific/Noumea.  UTC offset +11:00/+11:00. */
+      static PACIFIC_NOUMEA = new _TimeZone("Pacific/Noumea");
+      /** IANA Time Zone database entry for Pacific/Pago_Pago.  UTC offset −11:00/−11:00. */
+      static PACIFIC_PAGO_PAGO = new _TimeZone("Pacific/Pago_Pago");
+      /** IANA Time Zone database entry for Pacific/Palau.  UTC offset +09:00/+09:00. */
+      static PACIFIC_PALAU = new _TimeZone("Pacific/Palau");
+      /** IANA Time Zone database entry for Pacific/Pitcairn.  UTC offset −08:00/−08:00. */
+      static PACIFIC_PITCAIRN = new _TimeZone("Pacific/Pitcairn");
+      /** IANA Time Zone database entry for Pacific/Port_Moresby.  UTC offset +10:00/+10:00. */
+      static PACIFIC_PORT_MORESBY = new _TimeZone("Pacific/Port_Moresby");
+      /** IANA Time Zone database entry for Pacific/Rarotonga.  UTC offset −10:00/−10:00. */
+      static PACIFIC_RAROTONGA = new _TimeZone("Pacific/Rarotonga");
+      /** IANA Time Zone database entry for Pacific/Tahiti.  UTC offset −10:00/−10:00. */
+      static PACIFIC_TAHITI = new _TimeZone("Pacific/Tahiti");
+      /** IANA Time Zone database entry for Pacific/Tarawa.  UTC offset +12:00/+12:00. */
+      static PACIFIC_TARAWA = new _TimeZone("Pacific/Tarawa");
+      /** IANA Time Zone database entry for Pacific/Tongatapu.  UTC offset +13:00/+13:00. */
+      static PACIFIC_TONGATAPU = new _TimeZone("Pacific/Tongatapu");
+      /** IANA Time Zone database entry for PST8PDT.  UTC offset −08:00/−07:00. */
+      static PST8PDT = new _TimeZone("PST8PDT");
+      /** IANA Time Zone database entry for WET.  UTC offset +00:00/+01:00. */
+      static WET = new _TimeZone("WET");
+      /**
+       * Use this to add a timezone not in this class.
+       *
+       * @param timezoneName the name of the timezone
+       * @returns a new Timezone
+       */
+      static of(timezoneName) {
+        return new _TimeZone(timezoneName);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/index.ts
+var init_lib3 = __esm({
+  "../../aws-cdk-lib/core/lib/index.ts"() {
+    "use strict";
+    init_aspect();
+    init_tag_aspect();
+    init_mixins2();
+    init_token();
+    init_resolvable();
+    init_type_hints();
+    init_lazy();
+    init_prop_injectors();
+    init_tag_manager();
+    init_string_fragments();
+    init_stack_synthesizers();
+    init_reference();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_hook();
+    init_cfn_codedeploy_blue_green_hook();
+    init_cfn_include();
+    init_cfn_mapping();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_cfn_resource_policy();
+    init_cfn_rule();
+    init_stack();
+    init_stage();
+    init_cfn_element();
+    init_cfn_dynamic_reference();
+    init_cfn_tag();
+    init_cfn_json();
+    init_removal_policy();
+    init_removal_policies();
+    init_cross_stack_reference_strength();
+    init_arn();
+    init_duration();
+    init_bitrate();
+    init_expiration();
+    init_size();
+    init_errors();
+    init_app2();
+    init_context_provider();
+    init_environment();
+    init_annotations();
+    init_runtime();
+    init_secret_value();
+    init_resource();
+    init_physical_name();
+    init_assets();
+    init_tree();
+    init_asset_staging2();
+    init_bundling();
+    init_fs();
+    init_custom_resource();
+    init_nested_stack();
+    init_custom_resource_provider2();
+    init_cfn_capabilities();
+    init_cloudformation_generated();
+    init_feature_flags();
+    init_permissions_boundary();
+    init_validation2();
+    init_eventbridge();
+    init_grants();
+    init_intrinsic();
+    init_names();
+    init_time_zone();
+  }
+});
+
+// ../../aws-cdk-lib/core/index.ts
+var init_core = __esm({
+  "../../aws-cdk-lib/core/index.ts"() {
+    "use strict";
+    init_lib3();
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts
+var assembly_validation_report_exports = {};
+__export(assembly_validation_report_exports, {
+  AssemblyValidationReport: () => AssemblyValidationReport
+});
+function getBooleanContext2(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+var fs18, path22, AssemblyValidationReport, APP_INIT_HOOK_SYMBOL2;
+var init_assembly_validation_report = __esm({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts"() {
+    "use strict";
+    fs18 = __toESM(require("fs"));
+    path22 = __toESM(require("path"));
+    init_core();
+    init_literal_string();
+    init_cx_api();
+    init_match();
+    init_error();
+    AssemblyValidationReport = class _AssemblyValidationReport {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      /**
+       * During testing, create an App() with this as `postCliContext` in order to be able to use `AssemblyValidationReport.fromApp(app)`.
+       */
+      static APP_CONTEXT = {
+        [FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT]: false,
+        [STRICT_CFN_VALIDATE_ERRORS]: false
+      };
+      /**
+       * Disable the test suppressions that are automatically applied to all tests via the global App init hook (jest-global-app-testhook.ts).
+       *
+       * Returns a function that must be called to restore the global App init hook to its previous state.
+       */
+      static disableTestSuppressions() {
+        const previousAppHook = globalThis[APP_INIT_HOOK_SYMBOL2];
+        globalThis[APP_INIT_HOOK_SYMBOL2] = () => {
+        };
+        return () => {
+          globalThis[APP_INIT_HOOK_SYMBOL2] = previousAppHook;
+        };
+      }
+      /**
+       * Synthesize the given app and return its validation report.
+       */
+      static fromApp(app) {
+        if (getBooleanContext2(app, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true) || getBooleanContext2(app, STRICT_CFN_VALIDATE_ERRORS, false)) {
+          throw new AssumptionError(lit`MissingAppContext`, "In order to assert on validations with AssemblyValidationReport, create your App with { postCliContext: AssemblyValidationReport.APP_CONTEXT }");
+        }
+        const asm = app.synth();
+        const newFile = path22.join(asm.directory, "validation-report.json");
+        const newReport = JSON.parse(fs18.readFileSync(newFile, "utf-8"));
+        return new _AssemblyValidationReport(newReport);
+      }
+      pluginReport(pluginName) {
+        const report = this.report.pluginReports.find((r) => r.pluginName === pluginName);
+        if (!report) {
+          throw new AssertionError(`No report found for plugin ${pluginName}`);
+        }
+        return report;
+      }
+      /**
+       * All violations in all reports
+       */
+      allViolations() {
+        return this.report.pluginReports.flatMap((r) => r.violations);
+      }
+      hasViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (r.hasFailed()) {
+          throw new AssertionError("Expected policy violation not found:\n" + r.renderMismatch());
+        }
+      }
+      hasNoViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (!r.hasFailed()) {
+          throw new AssertionError("Expected no policy violations, but found:\n" + JSON.stringify(this.allViolations(), void 0, 2));
+        }
+      }
+    };
+    APP_INIT_HOOK_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/index.js
+var require_helpers_internal = __commonJS({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m)
+        if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p))
+          __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var _noFold;
+    exports2.Match = void 0;
+    Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, get: () => {
+      var value = (init_match(), __toCommonJS(match_exports)).Match;
+      Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.Matcher = void 0;
+    Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).Matcher;
+      Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.MatchResult = void 0;
+    Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).MatchResult;
+      Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.AssemblyValidationReport = void 0;
+    Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, get: () => {
+      var value = (init_assembly_validation_report(), __toCommonJS(assembly_validation_report_exports)).AssemblyValidationReport;
+      Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+  }
+});
+
+// ../../../node_modules/@smithy/types/dist-cjs/index.js
+var require_dist_cjs = __commonJS({
+  "../../../node_modules/@smithy/types/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AlgorithmId: () => AlgorithmId,
+      EndpointURLScheme: () => EndpointURLScheme,
+      FieldPosition: () => FieldPosition,
+      HttpApiKeyAuthLocation: () => HttpApiKeyAuthLocation2,
+      HttpAuthLocation: () => HttpAuthLocation,
+      IniSectionType: () => IniSectionType,
+      RequestHandlerProtocol: () => RequestHandlerProtocol,
+      SMITHY_CONTEXT_KEY: () => SMITHY_CONTEXT_KEY4,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var HttpAuthLocation = /* @__PURE__ */ ((HttpAuthLocation2) => {
+      HttpAuthLocation2["HEADER"] = "header";
+      HttpAuthLocation2["QUERY"] = "query";
+      return HttpAuthLocation2;
+    })(HttpAuthLocation || {});
+    var HttpApiKeyAuthLocation2 = /* @__PURE__ */ ((HttpApiKeyAuthLocation22) => {
+      HttpApiKeyAuthLocation22["HEADER"] = "header";
+      HttpApiKeyAuthLocation22["QUERY"] = "query";
+      return HttpApiKeyAuthLocation22;
+    })(HttpApiKeyAuthLocation2 || {});
+    var EndpointURLScheme = /* @__PURE__ */ ((EndpointURLScheme2) => {
+      EndpointURLScheme2["HTTP"] = "http";
+      EndpointURLScheme2["HTTPS"] = "https";
+      return EndpointURLScheme2;
+    })(EndpointURLScheme || {});
+    var AlgorithmId = /* @__PURE__ */ ((AlgorithmId2) => {
+      AlgorithmId2["MD5"] = "md5";
+      AlgorithmId2["CRC32"] = "crc32";
+      AlgorithmId2["CRC32C"] = "crc32c";
+      AlgorithmId2["SHA1"] = "sha1";
+      AlgorithmId2["SHA256"] = "sha256";
+      return AlgorithmId2;
+    })(AlgorithmId || {});
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      if (runtimeConfig.sha256 !== void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "sha256",
+          checksumConstructor: () => runtimeConfig.sha256
+        });
+      }
+      if (runtimeConfig.md5 != void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "md5",
+          checksumConstructor: () => runtimeConfig.md5
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getDefaultClientConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig)
+      };
+    }, "getDefaultClientConfiguration");
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var FieldPosition = /* @__PURE__ */ ((FieldPosition2) => {
+      FieldPosition2[FieldPosition2["HEADER"] = 0] = "HEADER";
+      FieldPosition2[FieldPosition2["TRAILER"] = 1] = "TRAILER";
+      return FieldPosition2;
+    })(FieldPosition || {});
+    var SMITHY_CONTEXT_KEY4 = "__smithy_context";
+    var IniSectionType = /* @__PURE__ */ ((IniSectionType2) => {
+      IniSectionType2["PROFILE"] = "profile";
+      IniSectionType2["SSO_SESSION"] = "sso-session";
+      IniSectionType2["SERVICES"] = "services";
+      return IniSectionType2;
+    })(IniSectionType || {});
+    var RequestHandlerProtocol = /* @__PURE__ */ ((RequestHandlerProtocol2) => {
+      RequestHandlerProtocol2["HTTP_0_9"] = "http/0.9";
+      RequestHandlerProtocol2["HTTP_1_0"] = "http/1.0";
+      RequestHandlerProtocol2["TDS_8_0"] = "tds/8.0";
+      return RequestHandlerProtocol2;
+    })(RequestHandlerProtocol || {});
+  }
+});
+
+// ../../../node_modules/@smithy/protocol-http/dist-cjs/index.js
+var require_dist_cjs2 = __commonJS({
+  "../../../node_modules/@smithy/protocol-http/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Field: () => Field,
+      Fields: () => Fields,
+      HttpRequest: () => HttpRequest7,
+      HttpResponse: () => HttpResponse2,
+      IHttpRequest: () => import_types8.HttpRequest,
+      getHttpHandlerExtensionConfiguration: () => getHttpHandlerExtensionConfiguration,
+      isValidHostname: () => isValidHostname,
+      resolveHttpHandlerRuntimeConfig: () => resolveHttpHandlerRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let httpHandler = runtimeConfig.httpHandler;
+      return {
+        setHttpHandler(handler2) {
+          httpHandler = handler2;
+        },
+        httpHandler() {
+          return httpHandler;
+        },
+        updateHttpClientConfig(key, value) {
+          httpHandler.updateHttpClientConfig(key, value);
+        },
+        httpHandlerConfigs() {
+          return httpHandler.httpHandlerConfigs();
+        }
+      };
+    }, "getHttpHandlerExtensionConfiguration");
+    var resolveHttpHandlerRuntimeConfig = /* @__PURE__ */ __name2((httpHandlerExtensionConfiguration) => {
+      return {
+        httpHandler: httpHandlerExtensionConfiguration.httpHandler()
+      };
+    }, "resolveHttpHandlerRuntimeConfig");
+    var import_types8 = require_dist_cjs();
+    var _Field = class _Field {
+      constructor({ name, kind = import_types8.FieldPosition.HEADER, values = [] }) {
+        this.name = name;
+        this.kind = kind;
+        this.values = values;
+      }
+      /**
+       * Appends a value to the field.
+       *
+       * @param value The value to append.
+       */
+      add(value) {
+        this.values.push(value);
+      }
+      /**
+       * Overwrite existing field values.
+       *
+       * @param values The new field values.
+       */
+      set(values) {
+        this.values = values;
+      }
+      /**
+       * Remove all matching entries from list.
+       *
+       * @param value Value to remove.
+       */
+      remove(value) {
+        this.values = this.values.filter((v) => v !== value);
+      }
+      /**
+       * Get comma-delimited string.
+       *
+       * @returns String representation of {@link Field}.
+       */
+      toString() {
+        return this.values.map((v) => v.includes(",") || v.includes(" ") ? `"${v}"` : v).join(", ");
+      }
+      /**
+       * Get string values as a list
+       *
+       * @returns Values in {@link Field} as a list.
+       */
+      get() {
+        return this.values;
+      }
+    };
+    __name2(_Field, "Field");
+    var Field = _Field;
+    var _Fields = class _Fields {
+      constructor({ fields = [], encoding = "utf-8" }) {
+        this.entries = {};
+        fields.forEach(this.setField.bind(this));
+        this.encoding = encoding;
+      }
+      /**
+       * Set entry for a {@link Field} name. The `name`
+       * attribute will be used to key the collection.
+       *
+       * @param field The {@link Field} to set.
+       */
+      setField(field) {
+        this.entries[field.name.toLowerCase()] = field;
+      }
+      /**
+       *  Retrieve {@link Field} entry by name.
+       *
+       * @param name The name of the {@link Field} entry
+       *  to retrieve
+       * @returns The {@link Field} if it exists.
+       */
+      getField(name) {
+        return this.entries[name.toLowerCase()];
+      }
+      /**
+       * Delete entry from collection.
+       *
+       * @param name Name of the entry to delete.
+       */
+      removeField(name) {
+        delete this.entries[name.toLowerCase()];
+      }
+      /**
+       * Helper function for retrieving specific types of fields.
+       * Used to grab all headers or all trailers.
+       *
+       * @param kind {@link FieldPosition} of entries to retrieve.
+       * @returns The {@link Field} entries with the specified
+       *  {@link FieldPosition}.
+       */
+      getByType(kind) {
+        return Object.values(this.entries).filter((field) => field.kind === kind);
+      }
+    };
+    __name2(_Fields, "Fields");
+    var Fields = _Fields;
+    var _HttpRequest = class _HttpRequest2 {
+      constructor(options) {
+        this.method = options.method || "GET";
+        this.hostname = options.hostname || "localhost";
+        this.port = options.port;
+        this.query = options.query || {};
+        this.headers = options.headers || {};
+        this.body = options.body;
+        this.protocol = options.protocol ? options.protocol.slice(-1) !== ":" ? `${options.protocol}:` : options.protocol : "https:";
+        this.path = options.path ? options.path.charAt(0) !== "/" ? `/${options.path}` : options.path : "/";
+        this.username = options.username;
+        this.password = options.password;
+        this.fragment = options.fragment;
+      }
+      /**
+       * Note: this does not deep-clone the body.
+       */
+      static clone(request2) {
+        const cloned = new _HttpRequest2({
+          ...request2,
+          headers: { ...request2.headers }
+        });
+        if (cloned.query) {
+          cloned.query = cloneQuery(cloned.query);
+        }
+        return cloned;
+      }
+      /**
+       * This method only actually asserts that request is the interface {@link IHttpRequest},
+       * and not necessarily this concrete class. Left in place for API stability.
+       *
+       * Do not call instance methods on the input of this function, and
+       * do not assume it has the HttpRequest prototype.
+       */
+      static isInstance(request2) {
+        if (!request2) {
+          return false;
+        }
+        const req = request2;
+        return "method" in req && "protocol" in req && "hostname" in req && "path" in req && typeof req["query"] === "object" && typeof req["headers"] === "object";
+      }
+      /**
+       * @deprecated use static HttpRequest.clone(request) instead. It's not safe to call
+       * this method because {@link HttpRequest.isInstance} incorrectly
+       * asserts that IHttpRequest (interface) objects are of type HttpRequest (class).
+       */
+      clone() {
+        return _HttpRequest2.clone(this);
+      }
+    };
+    __name2(_HttpRequest, "HttpRequest");
+    var HttpRequest7 = _HttpRequest;
+    function cloneQuery(query) {
+      return Object.keys(query).reduce((carry, paramName) => {
+        const param = query[paramName];
+        return {
+          ...carry,
+          [paramName]: Array.isArray(param) ? [...param] : param
+        };
+      }, {});
+    }
+    __name2(cloneQuery, "cloneQuery");
+    var _HttpResponse = class _HttpResponse {
+      constructor(options) {
+        this.statusCode = options.statusCode;
+        this.reason = options.reason;
+        this.headers = options.headers || {};
+        this.body = options.body;
+      }
+      static isInstance(response) {
+        if (!response)
+          return false;
+        const resp = response;
+        return typeof resp.statusCode === "number" && typeof resp.headers === "object";
+      }
+    };
+    __name2(_HttpResponse, "HttpResponse");
+    var HttpResponse2 = _HttpResponse;
+    function isValidHostname(hostname) {
+      const hostPattern = /^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/;
+      return hostPattern.test(hostname);
+    }
+    __name2(isValidHostname, "isValidHostname");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js
+var require_dist_cjs3 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getHostHeaderPlugin: () => getHostHeaderPlugin,
+      hostHeaderMiddleware: () => hostHeaderMiddleware,
+      hostHeaderMiddlewareOptions: () => hostHeaderMiddlewareOptions,
+      resolveHostHeaderConfig: () => resolveHostHeaderConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    function resolveHostHeaderConfig(input) {
+      return input;
+    }
+    __name2(resolveHostHeaderConfig, "resolveHostHeaderConfig");
+    var hostHeaderMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      if (!import_protocol_http8.HttpRequest.isInstance(args.request))
+        return next(args);
+      const { request: request2 } = args;
+      const { handlerProtocol = "" } = options.requestHandler.metadata || {};
+      if (handlerProtocol.indexOf("h2") >= 0 && !request2.headers[":authority"]) {
+        delete request2.headers["host"];
+        request2.headers[":authority"] = request2.hostname + (request2.port ? ":" + request2.port : "");
+      } else if (!request2.headers["host"]) {
+        let host = request2.hostname;
+        if (request2.port != null)
+          host += `:${request2.port}`;
+        request2.headers["host"] = host;
+      }
+      return next(args);
+    }, "hostHeaderMiddleware");
+    var hostHeaderMiddlewareOptions = {
+      name: "hostHeaderMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["HOST"],
+      override: true
+    };
+    var getHostHeaderPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);
+      }
+    }), "getHostHeaderPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js
+var require_dist_cjs4 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getLoggerPlugin: () => getLoggerPlugin,
+      loggerMiddleware: () => loggerMiddleware,
+      loggerMiddlewareOptions: () => loggerMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var loggerMiddleware = /* @__PURE__ */ __name2(() => (next, context) => async (args) => {
+      var _a7, _b;
+      try {
+        const response = await next(args);
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;
+        const { $metadata, ...outputWithoutMetadata } = response.output;
+        (_a7 = logger == null ? void 0 : logger.info) == null ? void 0 : _a7.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          output: outputFilterSensitiveLog(outputWithoutMetadata),
+          metadata: $metadata
+        });
+        return response;
+      } catch (error) {
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        (_b = logger == null ? void 0 : logger.error) == null ? void 0 : _b.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          error,
+          metadata: error.$metadata
+        });
+        throw error;
+      }
+    }, "loggerMiddleware");
+    var loggerMiddlewareOptions = {
+      name: "loggerMiddleware",
+      tags: ["LOGGER"],
+      step: "initialize",
+      override: true
+    };
+    var getLoggerPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);
+      }
+    }), "getLoggerPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js
+var require_dist_cjs5 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      addRecursionDetectionMiddlewareOptions: () => addRecursionDetectionMiddlewareOptions,
+      getRecursionDetectionPlugin: () => getRecursionDetectionPlugin,
+      recursionDetectionMiddleware: () => recursionDetectionMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var TRACE_ID_HEADER_NAME = "X-Amzn-Trace-Id";
+    var ENV_LAMBDA_FUNCTION_NAME = "AWS_LAMBDA_FUNCTION_NAME";
+    var ENV_TRACE_ID = "_X_AMZN_TRACE_ID";
+    var recursionDetectionMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2) || options.runtime !== "node" || request2.headers.hasOwnProperty(TRACE_ID_HEADER_NAME)) {
+        return next(args);
+      }
+      const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];
+      const traceId = process.env[ENV_TRACE_ID];
+      const nonEmptyString = /* @__PURE__ */ __name2((str) => typeof str === "string" && str.length > 0, "nonEmptyString");
+      if (nonEmptyString(functionName) && nonEmptyString(traceId)) {
+        request2.headers[TRACE_ID_HEADER_NAME] = traceId;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "recursionDetectionMiddleware");
+    var addRecursionDetectionMiddlewareOptions = {
+      step: "build",
+      tags: ["RECURSION_DETECTION"],
+      name: "recursionDetectionMiddleware",
+      override: true,
+      priority: "low"
+    };
+    var getRecursionDetectionPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(recursionDetectionMiddleware(options), addRecursionDetectionMiddlewareOptions);
+      }
+    }), "getRecursionDetectionPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js
+var require_dist_cjs6 = __commonJS({
+  "../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      EndpointCache: () => EndpointCache,
+      EndpointError: () => EndpointError2,
+      customEndpointFunctions: () => customEndpointFunctions,
+      isIpAddress: () => isIpAddress2,
+      isValidHostLabel: () => isValidHostLabel,
+      resolveEndpoint: () => resolveEndpoint2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _EndpointCache = class _EndpointCache {
+      /**
+       * @param [size] - desired average maximum capacity. A buffer of 10 additional keys will be allowed
+       *                 before keys are dropped.
+       * @param [params] - list of params to consider as part of the cache key.
+       *
+       * If the params list is not populated, no caching will happen.
+       * This may be out of order depending on how the object is created and arrives to this class.
+       */
+      constructor({ size, params }) {
+        this.data = /* @__PURE__ */ new Map();
+        this.parameters = [];
+        this.capacity = size ?? 50;
+        if (params) {
+          this.parameters = params;
+        }
+      }
+      /**
+       * @param endpointParams - query for endpoint.
+       * @param resolver - provider of the value if not present.
+       * @returns endpoint corresponding to the query.
+       */
+      get(endpointParams, resolver) {
+        const key = this.hash(endpointParams);
+        if (key === false) {
+          return resolver();
+        }
+        if (!this.data.has(key)) {
+          if (this.data.size > this.capacity + 10) {
+            const keys = this.data.keys();
+            let i = 0;
+            while (true) {
+              const { value, done } = keys.next();
+              this.data.delete(value);
+              if (done || ++i > 10) {
+                break;
+              }
+            }
+          }
+          this.data.set(key, resolver());
+        }
+        return this.data.get(key);
+      }
+      size() {
+        return this.data.size;
+      }
+      /**
+       * @returns cache key or false if not cachable.
+       */
+      hash(endpointParams) {
+        let buffer = "";
+        const { parameters } = this;
+        if (parameters.length === 0) {
+          return false;
+        }
+        for (const param of parameters) {
+          const val2 = String(endpointParams[param] ?? "");
+          if (val2.includes("|;")) {
+            return false;
+          }
+          buffer += val2 + "|;";
+        }
+        return buffer;
+      }
+    };
+    __name2(_EndpointCache, "EndpointCache");
+    var EndpointCache = _EndpointCache;
+    var IP_V4_REGEX = new RegExp(
+      `^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$`
+    );
+    var isIpAddress2 = /* @__PURE__ */ __name2((value) => IP_V4_REGEX.test(value) || value.startsWith("[") && value.endsWith("]"), "isIpAddress");
+    var VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);
+    var isValidHostLabel = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (!allowSubDomains) {
+        return VALID_HOST_LABEL_REGEX.test(value);
+      }
+      const labels = value.split(".");
+      for (const label of labels) {
+        if (!isValidHostLabel(label)) {
+          return false;
+        }
+      }
+      return true;
+    }, "isValidHostLabel");
+    var customEndpointFunctions = {};
+    var debugId = "endpoints";
+    function toDebugString(input) {
+      if (typeof input !== "object" || input == null) {
+        return input;
+      }
+      if ("ref" in input) {
+        return `$${toDebugString(input.ref)}`;
+      }
+      if ("fn" in input) {
+        return `${input.fn}(${(input.argv || []).map(toDebugString).join(", ")})`;
+      }
+      return JSON.stringify(input, null, 2);
+    }
+    __name2(toDebugString, "toDebugString");
+    var _EndpointError = class _EndpointError extends Error {
+      constructor(message) {
+        super(message);
+        this.name = "EndpointError";
+      }
+    };
+    __name2(_EndpointError, "EndpointError");
+    var EndpointError2 = _EndpointError;
+    var booleanEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "booleanEquals");
+    var getAttrPathList = /* @__PURE__ */ __name2((path23) => {
+      const parts = path23.split(".");
+      const pathList = [];
+      for (const part of parts) {
+        const squareBracketIndex = part.indexOf("[");
+        if (squareBracketIndex !== -1) {
+          if (part.indexOf("]") !== part.length - 1) {
+            throw new EndpointError2(`Path: '${path23}' does not end with ']'`);
+          }
+          const arrayIndex = part.slice(squareBracketIndex + 1, -1);
+          if (Number.isNaN(parseInt(arrayIndex))) {
+            throw new EndpointError2(`Invalid array index: '${arrayIndex}' in path: '${path23}'`);
+          }
+          if (squareBracketIndex !== 0) {
+            pathList.push(part.slice(0, squareBracketIndex));
+          }
+          pathList.push(arrayIndex);
+        } else {
+          pathList.push(part);
+        }
+      }
+      return pathList;
+    }, "getAttrPathList");
+    var getAttr = /* @__PURE__ */ __name2((value, path23) => getAttrPathList(path23).reduce((acc, index) => {
+      if (typeof acc !== "object") {
+        throw new EndpointError2(`Index '${index}' in '${path23}' not found in '${JSON.stringify(value)}'`);
+      } else if (Array.isArray(acc)) {
+        return acc[parseInt(index)];
+      }
+      return acc[index];
+    }, value), "getAttr");
+    var isSet = /* @__PURE__ */ __name2((value) => value != null, "isSet");
+    var not = /* @__PURE__ */ __name2((value) => !value, "not");
+    var import_types32 = require_dist_cjs();
+    var DEFAULT_PORTS = {
+      [import_types32.EndpointURLScheme.HTTP]: 80,
+      [import_types32.EndpointURLScheme.HTTPS]: 443
+    };
+    var parseURL = /* @__PURE__ */ __name2((value) => {
+      const whatwgURL = (() => {
+        try {
+          if (value instanceof URL) {
+            return value;
+          }
+          if (typeof value === "object" && "hostname" in value) {
+            const { hostname: hostname2, port, protocol: protocol2 = "", path: path23 = "", query = {} } = value;
+            const url2 = new URL(`${protocol2}//${hostname2}${port ? `:${port}` : ""}${path23}`);
+            url2.search = Object.entries(query).map(([k, v]) => `${k}=${v}`).join("&");
+            return url2;
+          }
+          return new URL(value);
+        } catch (error) {
+          return null;
+        }
+      })();
+      if (!whatwgURL) {
+        console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);
+        return null;
+      }
+      const urlString = whatwgURL.href;
+      const { host, hostname, pathname, protocol, search } = whatwgURL;
+      if (search) {
+        return null;
+      }
+      const scheme = protocol.slice(0, -1);
+      if (!Object.values(import_types32.EndpointURLScheme).includes(scheme)) {
+        return null;
+      }
+      const isIp = isIpAddress2(hostname);
+      const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) || typeof value === "string" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`);
+      const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;
+      return {
+        scheme,
+        authority,
+        path: pathname,
+        normalizedPath: pathname.endsWith("/") ? pathname : `${pathname}/`,
+        isIp
+      };
+    }, "parseURL");
+    var stringEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "stringEquals");
+    var substring = /* @__PURE__ */ __name2((input, start, stop, reverse) => {
+      if (start >= stop || input.length < stop) {
+        return null;
+      }
+      if (!reverse) {
+        return input.substring(start, stop);
+      }
+      return input.substring(input.length - stop, input.length - start);
+    }, "substring");
+    var uriEncode = /* @__PURE__ */ __name2((value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`), "uriEncode");
+    var endpointFunctions = {
+      booleanEquals,
+      getAttr,
+      isSet,
+      isValidHostLabel,
+      not,
+      parseURL,
+      stringEquals,
+      substring,
+      uriEncode
+    };
+    var evaluateTemplate = /* @__PURE__ */ __name2((template, options) => {
+      const evaluatedTemplateArr = [];
+      const templateContext = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      let currentIndex = 0;
+      while (currentIndex < template.length) {
+        const openingBraceIndex = template.indexOf("{", currentIndex);
+        if (openingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(currentIndex));
+          break;
+        }
+        evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));
+        const closingBraceIndex = template.indexOf("}", openingBraceIndex);
+        if (closingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex));
+          break;
+        }
+        if (template[openingBraceIndex + 1] === "{" && template[closingBraceIndex + 1] === "}") {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));
+          currentIndex = closingBraceIndex + 2;
+        }
+        const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);
+        if (parameterName.includes("#")) {
+          const [refName, attrName] = parameterName.split("#");
+          evaluatedTemplateArr.push(getAttr(templateContext[refName], attrName));
+        } else {
+          evaluatedTemplateArr.push(templateContext[parameterName]);
+        }
+        currentIndex = closingBraceIndex + 1;
+      }
+      return evaluatedTemplateArr.join("");
+    }, "evaluateTemplate");
+    var getReferenceValue = /* @__PURE__ */ __name2(({ ref }, options) => {
+      const referenceRecord = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      return referenceRecord[ref];
+    }, "getReferenceValue");
+    var evaluateExpression = /* @__PURE__ */ __name2((obj, keyName, options) => {
+      if (typeof obj === "string") {
+        return evaluateTemplate(obj, options);
+      } else if (obj["fn"]) {
+        return callFunction(obj, options);
+      } else if (obj["ref"]) {
+        return getReferenceValue(obj, options);
+      }
+      throw new EndpointError2(`'${keyName}': ${String(obj)} is not a string, function or reference.`);
+    }, "evaluateExpression");
+    var callFunction = /* @__PURE__ */ __name2(({ fn, argv }, options) => {
+      const evaluatedArgs = argv.map(
+        (arg) => ["boolean", "number"].includes(typeof arg) ? arg : evaluateExpression(arg, "arg", options)
+      );
+      const fnSegments = fn.split(".");
+      if (fnSegments[0] in customEndpointFunctions && fnSegments[1] != null) {
+        return customEndpointFunctions[fnSegments[0]][fnSegments[1]](...evaluatedArgs);
+      }
+      return endpointFunctions[fn](...evaluatedArgs);
+    }, "callFunction");
+    var evaluateCondition = /* @__PURE__ */ __name2(({ assign, ...fnArgs }, options) => {
+      var _a7, _b;
+      if (assign && assign in options.referenceRecord) {
+        throw new EndpointError2(`'${assign}' is already defined in Reference Record.`);
+      }
+      const value = callFunction(fnArgs, options);
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} evaluateCondition: ${toDebugString(fnArgs)} = ${toDebugString(value)}`);
+      return {
+        result: value === "" ? true : !!value,
+        ...assign != null && { toAssign: { name: assign, value } }
+      };
+    }, "evaluateCondition");
+    var evaluateConditions = /* @__PURE__ */ __name2((conditions = [], options) => {
+      var _a7, _b;
+      const conditionsReferenceRecord = {};
+      for (const condition of conditions) {
+        const { result, toAssign } = evaluateCondition(condition, {
+          ...options,
+          referenceRecord: {
+            ...options.referenceRecord,
+            ...conditionsReferenceRecord
+          }
+        });
+        if (!result) {
+          return { result };
+        }
+        if (toAssign) {
+          conditionsReferenceRecord[toAssign.name] = toAssign.value;
+          (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);
+        }
+      }
+      return { result: true, referenceRecord: conditionsReferenceRecord };
+    }, "evaluateConditions");
+    var getEndpointHeaders = /* @__PURE__ */ __name2((headers, options) => Object.entries(headers).reduce(
+      (acc, [headerKey, headerVal]) => ({
+        ...acc,
+        [headerKey]: headerVal.map((headerValEntry) => {
+          const processedExpr = evaluateExpression(headerValEntry, "Header value entry", options);
+          if (typeof processedExpr !== "string") {
+            throw new EndpointError2(`Header '${headerKey}' value '${processedExpr}' is not a string`);
+          }
+          return processedExpr;
+        })
+      }),
+      {}
+    ), "getEndpointHeaders");
+    var getEndpointProperty = /* @__PURE__ */ __name2((property, options) => {
+      if (Array.isArray(property)) {
+        return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));
+      }
+      switch (typeof property) {
+        case "string":
+          return evaluateTemplate(property, options);
+        case "object":
+          if (property === null) {
+            throw new EndpointError2(`Unexpected endpoint property: ${property}`);
+          }
+          return getEndpointProperties(property, options);
+        case "boolean":
+          return property;
+        default:
+          throw new EndpointError2(`Unexpected endpoint property type: ${typeof property}`);
+      }
+    }, "getEndpointProperty");
+    var getEndpointProperties = /* @__PURE__ */ __name2((properties, options) => Object.entries(properties).reduce(
+      (acc, [propertyKey, propertyVal]) => ({
+        ...acc,
+        [propertyKey]: getEndpointProperty(propertyVal, options)
+      }),
+      {}
+    ), "getEndpointProperties");
+    var getEndpointUrl = /* @__PURE__ */ __name2((endpointUrl, options) => {
+      const expression = evaluateExpression(endpointUrl, "Endpoint URL", options);
+      if (typeof expression === "string") {
+        try {
+          return new URL(expression);
+        } catch (error) {
+          console.error(`Failed to construct URL with ${expression}`, error);
+          throw error;
+        }
+      }
+      throw new EndpointError2(`Endpoint URL must be a string, got ${typeof expression}`);
+    }, "getEndpointUrl");
+    var evaluateEndpointRule = /* @__PURE__ */ __name2((endpointRule, options) => {
+      var _a7, _b;
+      const { conditions, endpoint } = endpointRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      const endpointRuleOptions = {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      };
+      const { url: url2, properties, headers } = endpoint;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);
+      return {
+        ...headers != void 0 && {
+          headers: getEndpointHeaders(headers, endpointRuleOptions)
+        },
+        ...properties != void 0 && {
+          properties: getEndpointProperties(properties, endpointRuleOptions)
+        },
+        url: getEndpointUrl(url2, endpointRuleOptions)
+      };
+    }, "evaluateEndpointRule");
+    var evaluateErrorRule = /* @__PURE__ */ __name2((errorRule, options) => {
+      const { conditions, error } = errorRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      throw new EndpointError2(
+        evaluateExpression(error, "Error", {
+          ...options,
+          referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+        })
+      );
+    }, "evaluateErrorRule");
+    var evaluateTreeRule = /* @__PURE__ */ __name2((treeRule, options) => {
+      const { conditions, rules } = treeRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      return evaluateRules(rules, {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      });
+    }, "evaluateTreeRule");
+    var evaluateRules = /* @__PURE__ */ __name2((rules, options) => {
+      for (const rule of rules) {
+        if (rule.type === "endpoint") {
+          const endpointOrUndefined = evaluateEndpointRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else if (rule.type === "error") {
+          evaluateErrorRule(rule, options);
+        } else if (rule.type === "tree") {
+          const endpointOrUndefined = evaluateTreeRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else {
+          throw new EndpointError2(`Unknown endpoint rule: ${rule}`);
+        }
+      }
+      throw new EndpointError2(`Rules evaluation failed`);
+    }, "evaluateRules");
+    var resolveEndpoint2 = /* @__PURE__ */ __name2((ruleSetObject, options) => {
+      var _a7, _b, _c, _d;
+      const { endpointParams, logger } = options;
+      const { parameters, rules } = ruleSetObject;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);
+      const paramsWithDefault = Object.entries(parameters).filter(([, v]) => v.default != null).map(([k, v]) => [k, v.default]);
+      if (paramsWithDefault.length > 0) {
+        for (const [paramKey, paramDefaultValue] of paramsWithDefault) {
+          endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;
+        }
+      }
+      const requiredParams = Object.entries(parameters).filter(([, v]) => v.required).map(([k]) => k);
+      for (const requiredParam of requiredParams) {
+        if (endpointParams[requiredParam] == null) {
+          throw new EndpointError2(`Missing required parameter: '${requiredParam}'`);
+        }
+      }
+      const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });
+      (_d = (_c = options.logger) == null ? void 0 : _c.debug) == null ? void 0 : _d.call(_c, `${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);
+      return endpoint;
+    }, "resolveEndpoint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js
+var require_dist_cjs7 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ConditionObject: () => import_util_endpoints.ConditionObject,
+      DeprecatedObject: () => import_util_endpoints.DeprecatedObject,
+      EndpointError: () => import_util_endpoints.EndpointError,
+      EndpointObject: () => import_util_endpoints.EndpointObject,
+      EndpointObjectHeaders: () => import_util_endpoints.EndpointObjectHeaders,
+      EndpointObjectProperties: () => import_util_endpoints.EndpointObjectProperties,
+      EndpointParams: () => import_util_endpoints.EndpointParams,
+      EndpointResolverOptions: () => import_util_endpoints.EndpointResolverOptions,
+      EndpointRuleObject: () => import_util_endpoints.EndpointRuleObject,
+      ErrorRuleObject: () => import_util_endpoints.ErrorRuleObject,
+      EvaluateOptions: () => import_util_endpoints.EvaluateOptions,
+      Expression: () => import_util_endpoints.Expression,
+      FunctionArgv: () => import_util_endpoints.FunctionArgv,
+      FunctionObject: () => import_util_endpoints.FunctionObject,
+      FunctionReturn: () => import_util_endpoints.FunctionReturn,
+      ParameterObject: () => import_util_endpoints.ParameterObject,
+      ReferenceObject: () => import_util_endpoints.ReferenceObject,
+      ReferenceRecord: () => import_util_endpoints.ReferenceRecord,
+      RuleSetObject: () => import_util_endpoints.RuleSetObject,
+      RuleSetRules: () => import_util_endpoints.RuleSetRules,
+      TreeRuleObject: () => import_util_endpoints.TreeRuleObject,
+      awsEndpointFunctions: () => awsEndpointFunctions,
+      getUserAgentPrefix: () => getUserAgentPrefix,
+      isIpAddress: () => import_util_endpoints.isIpAddress,
+      partition: () => partition,
+      resolveEndpoint: () => import_util_endpoints.resolveEndpoint,
+      setPartitionInfo: () => setPartitionInfo,
+      useDefaultPartitionInfo: () => useDefaultPartitionInfo
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_endpoints = require_dist_cjs6();
+    var isVirtualHostableS3Bucket = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (allowSubDomains) {
+        for (const label of value.split(".")) {
+          if (!isVirtualHostableS3Bucket(label)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      if (!(0, import_util_endpoints.isValidHostLabel)(value)) {
+        return false;
+      }
+      if (value.length < 3 || value.length > 63) {
+        return false;
+      }
+      if (value !== value.toLowerCase()) {
+        return false;
+      }
+      if ((0, import_util_endpoints.isIpAddress)(value)) {
+        return false;
+      }
+      return true;
+    }, "isVirtualHostableS3Bucket");
+    var ARN_DELIMITER = ":";
+    var RESOURCE_DELIMITER = "/";
+    var parseArn = /* @__PURE__ */ __name2((value) => {
+      const segments = value.split(ARN_DELIMITER);
+      if (segments.length < 6)
+        return null;
+      const [arn, partition2, service, region, accountId, ...resourcePath] = segments;
+      if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "")
+        return null;
+      const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();
+      return {
+        partition: partition2,
+        service,
+        region,
+        accountId,
+        resourceId
+      };
+    }, "parseArn");
+    var partitions_default = {
+      partitions: [{
+        id: "aws",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-east-1",
+          name: "aws",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$",
+        regions: {
+          "af-south-1": {
+            description: "Africa (Cape Town)"
+          },
+          "ap-east-1": {
+            description: "Asia Pacific (Hong Kong)"
+          },
+          "ap-northeast-1": {
+            description: "Asia Pacific (Tokyo)"
+          },
+          "ap-northeast-2": {
+            description: "Asia Pacific (Seoul)"
+          },
+          "ap-northeast-3": {
+            description: "Asia Pacific (Osaka)"
+          },
+          "ap-south-1": {
+            description: "Asia Pacific (Mumbai)"
+          },
+          "ap-south-2": {
+            description: "Asia Pacific (Hyderabad)"
+          },
+          "ap-southeast-1": {
+            description: "Asia Pacific (Singapore)"
+          },
+          "ap-southeast-2": {
+            description: "Asia Pacific (Sydney)"
+          },
+          "ap-southeast-3": {
+            description: "Asia Pacific (Jakarta)"
+          },
+          "ap-southeast-4": {
+            description: "Asia Pacific (Melbourne)"
+          },
+          "aws-global": {
+            description: "AWS Standard global region"
+          },
+          "ca-central-1": {
+            description: "Canada (Central)"
+          },
+          "ca-west-1": {
+            description: "Canada West (Calgary)"
+          },
+          "eu-central-1": {
+            description: "Europe (Frankfurt)"
+          },
+          "eu-central-2": {
+            description: "Europe (Zurich)"
+          },
+          "eu-north-1": {
+            description: "Europe (Stockholm)"
+          },
+          "eu-south-1": {
+            description: "Europe (Milan)"
+          },
+          "eu-south-2": {
+            description: "Europe (Spain)"
+          },
+          "eu-west-1": {
+            description: "Europe (Ireland)"
+          },
+          "eu-west-2": {
+            description: "Europe (London)"
+          },
+          "eu-west-3": {
+            description: "Europe (Paris)"
+          },
+          "il-central-1": {
+            description: "Israel (Tel Aviv)"
+          },
+          "me-central-1": {
+            description: "Middle East (UAE)"
+          },
+          "me-south-1": {
+            description: "Middle East (Bahrain)"
+          },
+          "sa-east-1": {
+            description: "South America (Sao Paulo)"
+          },
+          "us-east-1": {
+            description: "US East (N. Virginia)"
+          },
+          "us-east-2": {
+            description: "US East (Ohio)"
+          },
+          "us-west-1": {
+            description: "US West (N. California)"
+          },
+          "us-west-2": {
+            description: "US West (Oregon)"
+          }
+        }
+      }, {
+        id: "aws-cn",
+        outputs: {
+          dnsSuffix: "amazonaws.com.cn",
+          dualStackDnsSuffix: "api.amazonwebservices.com.cn",
+          implicitGlobalRegion: "cn-northwest-1",
+          name: "aws-cn",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^cn\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-cn-global": {
+            description: "AWS China global region"
+          },
+          "cn-north-1": {
+            description: "China (Beijing)"
+          },
+          "cn-northwest-1": {
+            description: "China (Ningxia)"
+          }
+        }
+      }, {
+        id: "aws-us-gov",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-gov-west-1",
+          name: "aws-us-gov",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-gov\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-us-gov-global": {
+            description: "AWS GovCloud (US) global region"
+          },
+          "us-gov-east-1": {
+            description: "AWS GovCloud (US-East)"
+          },
+          "us-gov-west-1": {
+            description: "AWS GovCloud (US-West)"
+          }
+        }
+      }, {
+        id: "aws-iso",
+        outputs: {
+          dnsSuffix: "c2s.ic.gov",
+          dualStackDnsSuffix: "c2s.ic.gov",
+          implicitGlobalRegion: "us-iso-east-1",
+          name: "aws-iso",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-iso\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-global": {
+            description: "AWS ISO (US) global region"
+          },
+          "us-iso-east-1": {
+            description: "US ISO East"
+          },
+          "us-iso-west-1": {
+            description: "US ISO WEST"
+          }
+        }
+      }, {
+        id: "aws-iso-b",
+        outputs: {
+          dnsSuffix: "sc2s.sgov.gov",
+          dualStackDnsSuffix: "sc2s.sgov.gov",
+          implicitGlobalRegion: "us-isob-east-1",
+          name: "aws-iso-b",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isob\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-b-global": {
+            description: "AWS ISOB (US) global region"
+          },
+          "us-isob-east-1": {
+            description: "US ISOB East (Ohio)"
+          }
+        }
+      }, {
+        id: "aws-iso-e",
+        outputs: {
+          dnsSuffix: "cloud.adc-e.uk",
+          dualStackDnsSuffix: "cloud.adc-e.uk",
+          implicitGlobalRegion: "eu-isoe-west-1",
+          name: "aws-iso-e",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$",
+        regions: {
+          "eu-isoe-west-1": {
+            description: "EU ISOE West"
+          }
+        }
+      }, {
+        id: "aws-iso-f",
+        outputs: {
+          dnsSuffix: "csp.hci.ic.gov",
+          dualStackDnsSuffix: "csp.hci.ic.gov",
+          implicitGlobalRegion: "us-isof-south-1",
+          name: "aws-iso-f",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isof\\-\\w+\\-\\d+$",
+        regions: {}
+      }],
+      version: "1.1"
+    };
+    var selectedPartitionsInfo = partitions_default;
+    var selectedUserAgentPrefix = "";
+    var partition = /* @__PURE__ */ __name2((value) => {
+      const { partitions } = selectedPartitionsInfo;
+      for (const partition2 of partitions) {
+        const { regions, outputs } = partition2;
+        for (const [region, regionData] of Object.entries(regions)) {
+          if (region === value) {
+            return {
+              ...outputs,
+              ...regionData
+            };
+          }
+        }
+      }
+      for (const partition2 of partitions) {
+        const { regionRegex, outputs } = partition2;
+        if (new RegExp(regionRegex).test(value)) {
+          return {
+            ...outputs
+          };
+        }
+      }
+      const DEFAULT_PARTITION = partitions.find((partition2) => partition2.id === "aws");
+      if (!DEFAULT_PARTITION) {
+        throw new Error(
+          "Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist."
+        );
+      }
+      return {
+        ...DEFAULT_PARTITION.outputs
+      };
+    }, "partition");
+    var setPartitionInfo = /* @__PURE__ */ __name2((partitionsInfo, userAgentPrefix = "") => {
+      selectedPartitionsInfo = partitionsInfo;
+      selectedUserAgentPrefix = userAgentPrefix;
+    }, "setPartitionInfo");
+    var useDefaultPartitionInfo = /* @__PURE__ */ __name2(() => {
+      setPartitionInfo(partitions_default, "");
+    }, "useDefaultPartitionInfo");
+    var getUserAgentPrefix = /* @__PURE__ */ __name2(() => selectedUserAgentPrefix, "getUserAgentPrefix");
+    var awsEndpointFunctions = {
+      isVirtualHostableS3Bucket,
+      parseArn,
+      partition
+    };
+    import_util_endpoints.customEndpointFunctions.aws = awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js
+var require_dist_cjs8 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getUserAgentMiddlewareOptions: () => getUserAgentMiddlewareOptions,
+      getUserAgentPlugin: () => getUserAgentPlugin,
+      resolveUserAgentConfig: () => resolveUserAgentConfig,
+      userAgentMiddleware: () => userAgentMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function resolveUserAgentConfig(input) {
+      return {
+        ...input,
+        customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent
+      };
+    }
+    __name2(resolveUserAgentConfig, "resolveUserAgentConfig");
+    var import_util_endpoints = require_dist_cjs7();
+    var import_protocol_http8 = require_dist_cjs2();
+    var USER_AGENT = "user-agent";
+    var X_AMZ_USER_AGENT = "x-amz-user-agent";
+    var SPACE = " ";
+    var UA_NAME_SEPARATOR = "/";
+    var UA_NAME_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w]/g;
+    var UA_VALUE_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w\#]/g;
+    var UA_ESCAPE_CHAR = "-";
+    var userAgentMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7, _b;
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2))
+        return next(args);
+      const { headers } = request2;
+      const userAgent = ((_a7 = context == null ? void 0 : context.userAgent) == null ? void 0 : _a7.map(escapeUserAgent)) || [];
+      const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);
+      const customUserAgent = ((_b = options == null ? void 0 : options.customUserAgent) == null ? void 0 : _b.map(escapeUserAgent)) || [];
+      const prefix = (0, import_util_endpoints.getUserAgentPrefix)();
+      const sdkUserAgentValue = (prefix ? [prefix] : []).concat([...defaultUserAgent, ...userAgent, ...customUserAgent]).join(SPACE);
+      const normalUAValue = [
+        ...defaultUserAgent.filter((section) => section.startsWith("aws-sdk-")),
+        ...customUserAgent
+      ].join(SPACE);
+      if (options.runtime !== "browser") {
+        if (normalUAValue) {
+          headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT] ? `${headers[USER_AGENT]} ${normalUAValue}` : normalUAValue;
+        }
+        headers[USER_AGENT] = sdkUserAgentValue;
+      } else {
+        headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "userAgentMiddleware");
+    var escapeUserAgent = /* @__PURE__ */ __name2((userAgentPair) => {
+      var _a7;
+      const name = userAgentPair[0].split(UA_NAME_SEPARATOR).map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR)).join(UA_NAME_SEPARATOR);
+      const version3 = (_a7 = userAgentPair[1]) == null ? void 0 : _a7.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);
+      const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);
+      const prefix = name.substring(0, prefixSeparatorIndex);
+      let uaName = name.substring(prefixSeparatorIndex + 1);
+      if (prefix === "api") {
+        uaName = uaName.toLowerCase();
+      }
+      return [prefix, uaName, version3].filter((item) => item && item.length > 0).reduce((acc, item, index) => {
+        switch (index) {
+          case 0:
+            return item;
+          case 1:
+            return `${acc}/${item}`;
+          default:
+            return `${acc}#${item}`;
+        }
+      }, "");
+    }, "escapeUserAgent");
+    var getUserAgentMiddlewareOptions = {
+      name: "getUserAgentMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["SET_USER_AGENT", "USER_AGENT"],
+      override: true
+    };
+    var getUserAgentPlugin = /* @__PURE__ */ __name2((config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);
+      }
+    }), "getUserAgentPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js
+var require_dist_cjs9 = __commonJS({
+  "../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SelectorType: () => SelectorType,
+      booleanSelector: () => booleanSelector,
+      numberSelector: () => numberSelector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var booleanSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      if (obj[key] === "true")
+        return true;
+      if (obj[key] === "false")
+        return false;
+      throw new Error(`Cannot load ${type} "${key}". Expected "true" or "false", got ${obj[key]}.`);
+    }, "booleanSelector");
+    var numberSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      const numberValue = parseInt(obj[key], 10);
+      if (Number.isNaN(numberValue)) {
+        throw new TypeError(`Cannot load ${type} '${key}'. Expected number, got '${obj[key]}'.`);
+      }
+      return numberValue;
+    }, "numberSelector");
+    var SelectorType = /* @__PURE__ */ ((SelectorType2) => {
+      SelectorType2["ENV"] = "env";
+      SelectorType2["CONFIG"] = "shared config entry";
+      return SelectorType2;
+    })(SelectorType || {});
+  }
+});
+
+// ../../../node_modules/@smithy/util-middleware/dist-cjs/index.js
+var require_dist_cjs10 = __commonJS({
+  "../../../node_modules/@smithy/util-middleware/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getSmithyContext: () => getSmithyContext4,
+      normalizeProvider: () => normalizeProvider2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_types8 = require_dist_cjs();
+    var getSmithyContext4 = /* @__PURE__ */ __name2((context) => context[import_types8.SMITHY_CONTEXT_KEY] || (context[import_types8.SMITHY_CONTEXT_KEY] = {}), "getSmithyContext");
+    var normalizeProvider2 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    }, "normalizeProvider");
+  }
+});
+
+// ../../../node_modules/@smithy/config-resolver/dist-cjs/index.js
+var require_dist_cjs11 = __commonJS({
+  "../../../node_modules/@smithy/config-resolver/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_USE_DUALSTACK_ENDPOINT: () => CONFIG_USE_DUALSTACK_ENDPOINT,
+      CONFIG_USE_FIPS_ENDPOINT: () => CONFIG_USE_FIPS_ENDPOINT,
+      DEFAULT_USE_DUALSTACK_ENDPOINT: () => DEFAULT_USE_DUALSTACK_ENDPOINT,
+      DEFAULT_USE_FIPS_ENDPOINT: () => DEFAULT_USE_FIPS_ENDPOINT,
+      ENV_USE_DUALSTACK_ENDPOINT: () => ENV_USE_DUALSTACK_ENDPOINT,
+      ENV_USE_FIPS_ENDPOINT: () => ENV_USE_FIPS_ENDPOINT,
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,
+      NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getRegionInfo: () => getRegionInfo,
+      resolveCustomEndpointsConfig: () => resolveCustomEndpointsConfig,
+      resolveEndpointsConfig: () => resolveEndpointsConfig,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_config_provider = require_dist_cjs9();
+    var ENV_USE_DUALSTACK_ENDPOINT = "AWS_USE_DUALSTACK_ENDPOINT";
+    var CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint";
+    var DEFAULT_USE_DUALSTACK_ENDPOINT = false;
+    var NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var ENV_USE_FIPS_ENDPOINT = "AWS_USE_FIPS_ENDPOINT";
+    var CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint";
+    var DEFAULT_USE_FIPS_ENDPOINT = false;
+    var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var import_util_middleware3 = require_dist_cjs10();
+    var resolveCustomEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const { endpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint),
+        isCustomEndpoint: true,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false)
+      };
+    }, "resolveCustomEndpointsConfig");
+    var getEndpointFromRegion = /* @__PURE__ */ __name2(async (input) => {
+      const { tls = true } = input;
+      const region = await input.region();
+      const dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/);
+      if (!dnsHostRegex.test(region)) {
+        throw new Error("Invalid region in client config");
+      }
+      const useDualstackEndpoint = await input.useDualstackEndpoint();
+      const useFipsEndpoint = await input.useFipsEndpoint();
+      const { hostname } = await input.regionInfoProvider(region, { useDualstackEndpoint, useFipsEndpoint }) ?? {};
+      if (!hostname) {
+        throw new Error("Cannot resolve hostname from client config");
+      }
+      return input.urlParser(`${tls ? "https:" : "http:"}//${hostname}`);
+    }, "getEndpointFromRegion");
+    var resolveEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const useDualstackEndpoint = (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false);
+      const { endpoint, useFipsEndpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: endpoint ? (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint) : () => getEndpointFromRegion({ ...input, useDualstackEndpoint, useFipsEndpoint }),
+        isCustomEndpoint: !!endpoint,
+        useDualstackEndpoint
+      };
+    }, "resolveEndpointsConfig");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+    var getHostnameFromVariants = /* @__PURE__ */ __name2((variants = [], { useFipsEndpoint, useDualstackEndpoint }) => {
+      var _a7;
+      return (_a7 = variants.find(
+        ({ tags }) => useFipsEndpoint === tags.includes("fips") && useDualstackEndpoint === tags.includes("dualstack")
+      )) == null ? void 0 : _a7.hostname;
+    }, "getHostnameFromVariants");
+    var getResolvedHostname = /* @__PURE__ */ __name2((resolvedRegion, { regionHostname, partitionHostname }) => regionHostname ? regionHostname : partitionHostname ? partitionHostname.replace("{region}", resolvedRegion) : void 0, "getResolvedHostname");
+    var getResolvedPartition = /* @__PURE__ */ __name2((region, { partitionHash }) => Object.keys(partitionHash || {}).find((key) => partitionHash[key].regions.includes(region)) ?? "aws", "getResolvedPartition");
+    var getResolvedSigningRegion = /* @__PURE__ */ __name2((hostname, { signingRegion, regionRegex, useFipsEndpoint }) => {
+      if (signingRegion) {
+        return signingRegion;
+      } else if (useFipsEndpoint) {
+        const regionRegexJs = regionRegex.replace("\\\\", "\\").replace(/^\^/g, "\\.").replace(/\$$/g, "\\.");
+        const regionRegexmatchArray = hostname.match(regionRegexJs);
+        if (regionRegexmatchArray) {
+          return regionRegexmatchArray[0].slice(1, -1);
+        }
+      }
+    }, "getResolvedSigningRegion");
+    var getRegionInfo = /* @__PURE__ */ __name2((region, {
+      useFipsEndpoint = false,
+      useDualstackEndpoint = false,
+      signingService,
+      regionHash,
+      partitionHash
+    }) => {
+      var _a7, _b, _c, _d, _e;
+      const partition = getResolvedPartition(region, { partitionHash });
+      const resolvedRegion = region in regionHash ? region : ((_a7 = partitionHash[partition]) == null ? void 0 : _a7.endpoint) ?? region;
+      const hostnameOptions = { useFipsEndpoint, useDualstackEndpoint };
+      const regionHostname = getHostnameFromVariants((_b = regionHash[resolvedRegion]) == null ? void 0 : _b.variants, hostnameOptions);
+      const partitionHostname = getHostnameFromVariants((_c = partitionHash[partition]) == null ? void 0 : _c.variants, hostnameOptions);
+      const hostname = getResolvedHostname(resolvedRegion, { regionHostname, partitionHostname });
+      if (hostname === void 0) {
+        throw new Error(`Endpoint resolution failed for: ${{ resolvedRegion, useFipsEndpoint, useDualstackEndpoint }}`);
+      }
+      const signingRegion = getResolvedSigningRegion(hostname, {
+        signingRegion: (_d = regionHash[resolvedRegion]) == null ? void 0 : _d.signingRegion,
+        regionRegex: partitionHash[partition].regionRegex,
+        useFipsEndpoint
+      });
+      return {
+        partition,
+        signingService,
+        hostname,
+        ...signingRegion && { signingRegion },
+        ...((_e = regionHash[resolvedRegion]) == null ? void 0 : _e.signingService) && {
+          signingService: regionHash[resolvedRegion].signingService
+        }
+      };
+    }, "getRegionInfo");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/getSmithyContext.js
+var import_types4, getSmithyContext;
+var init_getSmithyContext = __esm({
+  "../../../node_modules/@smithy/core/dist-es/getSmithyContext.js"() {
+    import_types4 = __toESM(require_dist_cjs());
+    getSmithyContext = (context) => context[import_types4.SMITHY_CONTEXT_KEY] || (context[import_types4.SMITHY_CONTEXT_KEY] = {});
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js
+function convertHttpAuthSchemesToMap(httpAuthSchemes) {
+  const map = /* @__PURE__ */ new Map();
+  for (const scheme of httpAuthSchemes) {
+    map.set(scheme.schemeId, scheme);
+  }
+  return map;
+}
+var import_types5, import_util_middleware, httpAuthSchemeMiddleware;
+var init_httpAuthSchemeMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js"() {
+    import_types5 = __toESM(require_dist_cjs());
+    import_util_middleware = __toESM(require_dist_cjs10());
+    httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {
+      const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));
+      const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);
+      const smithyContext = (0, import_util_middleware.getSmithyContext)(context);
+      const failureReasons = [];
+      for (const option of options) {
+        const scheme = authSchemes.get(option.schemeId);
+        if (!scheme) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` was not enabled for this service.`);
+          continue;
+        }
+        const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));
+        if (!identityProvider) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` did not have an IdentityProvider configured.`);
+          continue;
+        }
+        const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};
+        option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);
+        option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);
+        smithyContext.selectedHttpAuthScheme = {
+          httpAuthOption: option,
+          identity: await identityProvider(option.identityProperties),
+          signer: scheme.signer
+        };
+        break;
+      }
+      if (!smithyContext.selectedHttpAuthScheme) {
+        throw new Error(failureReasons.join("\n"));
+      }
+      return next(args);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js
+var httpAuthSchemeEndpointRuleSetMiddlewareOptions, getHttpAuthSchemeEndpointRuleSetPlugin;
+var init_getHttpAuthSchemeEndpointRuleSetPlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js"() {
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeEndpointRuleSetMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: "endpointV2Middleware"
+    };
+    getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js
+var require_dist_cjs12 = __commonJS({
+  "../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      deserializerMiddleware: () => deserializerMiddleware,
+      deserializerMiddlewareOption: () => deserializerMiddlewareOption,
+      getSerdePlugin: () => getSerdePlugin,
+      serializerMiddleware: () => serializerMiddleware,
+      serializerMiddlewareOption: () => serializerMiddlewareOption2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var deserializerMiddleware = /* @__PURE__ */ __name2((options, deserializer) => (next) => async (args) => {
+      const { response } = await next(args);
+      try {
+        const parsed = await deserializer(response, options);
+        return {
+          response,
+          output: parsed
+        };
+      } catch (error) {
+        Object.defineProperty(error, "$response", {
+          value: response
+        });
+        if (!("$metadata" in error)) {
+          const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;
+          error.message += "\n  " + hint;
+          if (typeof error.$responseBodyText !== "undefined") {
+            if (error.$response) {
+              error.$response.body = error.$responseBodyText;
+            }
+          }
+        }
+        throw error;
+      }
+    }, "deserializerMiddleware");
+    var serializerMiddleware = /* @__PURE__ */ __name2((options, serializer) => (next, context) => async (args) => {
+      var _a7;
+      const endpoint = ((_a7 = context.endpointV2) == null ? void 0 : _a7.url) && options.urlParser ? async () => options.urlParser(context.endpointV2.url) : options.endpoint;
+      if (!endpoint) {
+        throw new Error("No valid endpoint provider available.");
+      }
+      const request2 = await serializer(args.input, { ...options, endpoint });
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "serializerMiddleware");
+    var deserializerMiddlewareOption = {
+      name: "deserializerMiddleware",
+      step: "deserialize",
+      tags: ["DESERIALIZER"],
+      override: true
+    };
+    var serializerMiddlewareOption2 = {
+      name: "serializerMiddleware",
+      step: "serialize",
+      tags: ["SERIALIZER"],
+      override: true
+    };
+    function getSerdePlugin(config, serializer, deserializer) {
+      return {
+        applyToStack: (commandStack) => {
+          commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);
+          commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption2);
+        }
+      };
+    }
+    __name2(getSerdePlugin, "getSerdePlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js
+var import_middleware_serde, httpAuthSchemeMiddlewareOptions, getHttpAuthSchemePlugin;
+var init_getHttpAuthSchemePlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js"() {
+    import_middleware_serde = __toESM(require_dist_cjs12());
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde.serializerMiddlewareOption.name
+    };
+    getHttpAuthSchemePlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js
+var init_middleware_http_auth_scheme = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js"() {
+    init_httpAuthSchemeMiddleware();
+    init_getHttpAuthSchemeEndpointRuleSetPlugin();
+    init_getHttpAuthSchemePlugin();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js
+var import_protocol_http, import_types6, import_util_middleware2, defaultErrorHandler, defaultSuccessHandler, httpSigningMiddleware;
+var init_httpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js"() {
+    import_protocol_http = __toESM(require_dist_cjs2());
+    import_types6 = __toESM(require_dist_cjs());
+    import_util_middleware2 = __toESM(require_dist_cjs10());
+    defaultErrorHandler = (signingProperties) => (error) => {
+      throw error;
+    };
+    defaultSuccessHandler = (httpResponse, signingProperties) => {
+    };
+    httpSigningMiddleware = (config) => (next, context) => async (args) => {
+      if (!import_protocol_http.HttpRequest.isInstance(args.request)) {
+        return next(args);
+      }
+      const smithyContext = (0, import_util_middleware2.getSmithyContext)(context);
+      const scheme = smithyContext.selectedHttpAuthScheme;
+      if (!scheme) {
+        throw new Error(`No HttpAuthScheme was selected: unable to sign request`);
+      }
+      const { httpAuthOption: { signingProperties = {} }, identity, signer } = scheme;
+      const output = await next({
+        ...args,
+        request: await signer.sign(args.request, identity, signingProperties)
+      }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));
+      (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);
+      return output;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js
+var httpSigningMiddlewareOptions, getHttpSigningPlugin;
+var init_getHttpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js"() {
+    init_httpSigningMiddleware();
+    httpSigningMiddlewareOptions = {
+      step: "finalizeRequest",
+      tags: ["HTTP_SIGNING"],
+      name: "httpSigningMiddleware",
+      aliases: ["apiKeyMiddleware", "tokenMiddleware", "awsAuthMiddleware"],
+      override: true,
+      relation: "after",
+      toMiddleware: "retryMiddleware"
+    };
+    getHttpSigningPlugin = (config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js
+var init_middleware_http_signing = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js"() {
+    init_httpSigningMiddleware();
+    init_getHttpSigningMiddleware();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/normalizeProvider.js
+var normalizeProvider;
+var init_normalizeProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/normalizeProvider.js"() {
+    normalizeProvider = (input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js
+function createPaginator(ClientCtor, CommandCtor, inputTokenName, outputTokenName, pageSizeTokenName) {
+  return async function* paginateOperation(config, input, ...additionalArguments) {
+    let token = config.startingToken || void 0;
+    let hasNext = true;
+    let page;
+    while (hasNext) {
+      input[inputTokenName] = token;
+      if (pageSizeTokenName) {
+        input[pageSizeTokenName] = input[pageSizeTokenName] ?? config.pageSize;
+      }
+      if (config.client instanceof ClientCtor) {
+        page = await makePagedClientRequest(CommandCtor, config.client, input, ...additionalArguments);
+      } else {
+        throw new Error(`Invalid client, expected instance of ${ClientCtor.name}`);
+      }
+      yield page;
+      const prevToken = token;
+      token = get(page, outputTokenName);
+      hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
+    }
+    return void 0;
+  };
+}
+var makePagedClientRequest, get;
+var init_createPaginator = __esm({
+  "../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js"() {
+    makePagedClientRequest = async (CommandCtor, client, input, ...args) => {
+      return await client.send(new CommandCtor(input), ...args);
+    };
+    get = (fromObject, path23) => {
+      let cursor = fromObject;
+      const pathComponents = path23.split(".");
+      for (const step of pathComponents) {
+        if (!cursor || typeof cursor !== "object") {
+          return void 0;
+        }
+        cursor = cursor[step];
+      }
+      return cursor;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js
+var require_dist_cjs13 = __commonJS({
+  "../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isArrayBuffer: () => isArrayBuffer
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isArrayBuffer = /* @__PURE__ */ __name2((arg) => typeof ArrayBuffer === "function" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === "[object ArrayBuffer]", "isArrayBuffer");
+  }
+});
+
+// ../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js
+var require_dist_cjs14 = __commonJS({
+  "../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromArrayBuffer: () => fromArrayBuffer,
+      fromString: () => fromString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_buffer = require("buffer");
+    var fromArrayBuffer = /* @__PURE__ */ __name2((input, offset = 0, length = input.byteLength - offset) => {
+      if (!(0, import_is_array_buffer.isArrayBuffer)(input)) {
+        throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);
+      }
+      return import_buffer.Buffer.from(input, offset, length);
+    }, "fromArrayBuffer");
+    var fromString = /* @__PURE__ */ __name2((input, encoding) => {
+      if (typeof input !== "string") {
+        throw new TypeError(`The "input" argument must be of type string. Received type ${typeof input} (${input})`);
+      }
+      return encoding ? import_buffer.Buffer.from(input, encoding) : import_buffer.Buffer.from(input);
+    }, "fromString");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js
+var require_fromBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;
+    var fromBase642 = (input) => {
+      if (input.length * 3 % 4 !== 0) {
+        throw new TypeError(`Incorrect padding on base64 string.`);
+      }
+      if (!BASE64_REGEX.exec(input)) {
+        throw new TypeError(`Invalid base64 string.`);
+      }
+      const buffer = (0, util_buffer_from_1.fromString)(input, "base64");
+      return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
+    };
+    exports2.fromBase64 = fromBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-utf8/dist-cjs/index.js
+var require_dist_cjs15 = __commonJS({
+  "../../../node_modules/@smithy/util-utf8/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromUtf8: () => fromUtf8,
+      toUint8Array: () => toUint8Array,
+      toUtf8: () => toUtf8
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var fromUtf8 = /* @__PURE__ */ __name2((input) => {
+      const buf = (0, import_util_buffer_from.fromString)(input, "utf8");
+      return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+    }, "fromUtf8");
+    var toUint8Array = /* @__PURE__ */ __name2((data) => {
+      if (typeof data === "string") {
+        return fromUtf8(data);
+      }
+      if (ArrayBuffer.isView(data)) {
+        return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+      }
+      return new Uint8Array(data);
+    }, "toUint8Array");
+    var toUtf8 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "string") {
+        return input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("utf8");
+    }, "toUtf8");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js
+var require_toBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.toBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var util_utf8_1 = require_dist_cjs15();
+    var toBase642 = (_input) => {
+      let input;
+      if (typeof _input === "string") {
+        input = (0, util_utf8_1.fromUtf8)(_input);
+      } else {
+        input = _input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("base64");
+    };
+    exports2.toBase64 = toBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/index.js
+var require_dist_cjs16 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromBase64(), module2.exports);
+    __reExport2(src_exports, require_toBase64(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js
+var require_getAwsChunkedEncodingStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getAwsChunkedEncodingStream = void 0;
+    var stream_1 = require("stream");
+    var getAwsChunkedEncodingStream2 = (readableStream, options) => {
+      const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;
+      const checksumRequired = base64Encoder !== void 0 && checksumAlgorithmFn !== void 0 && checksumLocationName !== void 0 && streamHasher !== void 0;
+      const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : void 0;
+      const awsChunkedEncodingStream = new stream_1.Readable({ read: () => {
+      } });
+      readableStream.on("data", (data) => {
+        const length = bodyLengthChecker(data) || 0;
+        awsChunkedEncodingStream.push(`${length.toString(16)}\r
+`);
+        awsChunkedEncodingStream.push(data);
+        awsChunkedEncodingStream.push("\r\n");
+      });
+      readableStream.on("end", async () => {
+        awsChunkedEncodingStream.push(`0\r
+`);
+        if (checksumRequired) {
+          const checksum = base64Encoder(await digest);
+          awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\r
+`);
+          awsChunkedEncodingStream.push(`\r
+`);
+        }
+        awsChunkedEncodingStream.push(null);
+      });
+      return awsChunkedEncodingStream;
+    };
+    exports2.getAwsChunkedEncodingStream = getAwsChunkedEncodingStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js
+var require_dist_cjs17 = __commonJS({
+  "../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      escapeUri: () => escapeUri,
+      escapeUriPath: () => escapeUriPath
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var escapeUri = /* @__PURE__ */ __name2((uri) => (
+      // AWS percent-encodes some extra non-standard characters in a URI
+      encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode)
+    ), "escapeUri");
+    var hexEncode = /* @__PURE__ */ __name2((c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, "hexEncode");
+    var escapeUriPath = /* @__PURE__ */ __name2((uri) => uri.split("/").map(escapeUri).join("/"), "escapeUriPath");
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js
+var require_dist_cjs18 = __commonJS({
+  "../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      buildQueryString: () => buildQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_uri_escape = require_dist_cjs17();
+    function buildQueryString(query) {
+      const parts = [];
+      for (let key of Object.keys(query).sort()) {
+        const value = query[key];
+        key = (0, import_util_uri_escape.escapeUri)(key);
+        if (Array.isArray(value)) {
+          for (let i = 0, iLen = value.length; i < iLen; i++) {
+            parts.push(`${key}=${(0, import_util_uri_escape.escapeUri)(value[i])}`);
+          }
+        } else {
+          let qsEntry = key;
+          if (value || typeof value === "string") {
+            qsEntry += `=${(0, import_util_uri_escape.escapeUri)(value)}`;
+          }
+          parts.push(qsEntry);
+        }
+      }
+      return parts.join("&");
+    }
+    __name2(buildQueryString, "buildQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js
+var require_dist_cjs19 = __commonJS({
+  "../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_REQUEST_TIMEOUT: () => DEFAULT_REQUEST_TIMEOUT,
+      NodeHttp2Handler: () => NodeHttp2Handler,
+      NodeHttpHandler: () => NodeHttpHandler,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    var import_http2 = require("http");
+    var import_https = require("https");
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "EPIPE", "ETIMEDOUT"];
+    var getTransformedHeaders = /* @__PURE__ */ __name2((headers) => {
+      const transformedHeaders = {};
+      for (const name of Object.keys(headers)) {
+        const headerValues = headers[name];
+        transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(",") : headerValues;
+      }
+      return transformedHeaders;
+    }, "getTransformedHeaders");
+    var timing = {
+      setTimeout: (cb, ms) => setTimeout(cb, ms),
+      clearTimeout: (timeoutId) => clearTimeout(timeoutId)
+    };
+    var DEFER_EVENT_LISTENER_TIME = 1e3;
+    var setConnectionTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      if (!timeoutInMs) {
+        return -1;
+      }
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeoutId = timing.setTimeout(() => {
+          request2.destroy();
+          reject(
+            Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {
+              name: "TimeoutError"
+            })
+          );
+        }, timeoutInMs - offset);
+        const doWithSocket = /* @__PURE__ */ __name2((socket) => {
+          if (socket == null ? void 0 : socket.connecting) {
+            socket.on("connect", () => {
+              timing.clearTimeout(timeoutId);
+            });
+          } else {
+            timing.clearTimeout(timeoutId);
+          }
+        }, "doWithSocket");
+        if (request2.socket) {
+          doWithSocket(request2.socket);
+        } else {
+          request2.on("socket", doWithSocket);
+        }
+      }, "registerTimeout");
+      if (timeoutInMs < 2e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(registerTimeout.bind(null, DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);
+    }, "setConnectionTimeout");
+    var DEFER_EVENT_LISTENER_TIME2 = 3e3;
+    var setSocketKeepAlive = /* @__PURE__ */ __name2((request2, { keepAlive, keepAliveMsecs }, deferTimeMs = DEFER_EVENT_LISTENER_TIME2) => {
+      if (keepAlive !== true) {
+        return -1;
+      }
+      const registerListener = /* @__PURE__ */ __name2(() => {
+        if (request2.socket) {
+          request2.socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+        } else {
+          request2.on("socket", (socket) => {
+            socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+          });
+        }
+      }, "registerListener");
+      if (deferTimeMs === 0) {
+        registerListener();
+        return 0;
+      }
+      return timing.setTimeout(registerListener, deferTimeMs);
+    }, "setSocketKeepAlive");
+    var DEFER_EVENT_LISTENER_TIME3 = 3e3;
+    var setSocketTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeout = timeoutInMs - offset;
+        const onTimeout2 = /* @__PURE__ */ __name2(() => {
+          request2.destroy();
+          reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: "TimeoutError" }));
+        }, "onTimeout");
+        if (request2.socket) {
+          request2.socket.setTimeout(timeout, onTimeout2);
+        } else {
+          request2.setTimeout(timeout, onTimeout2);
+        }
+      }, "registerTimeout");
+      if (0 < timeoutInMs && timeoutInMs < 6e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(
+        registerTimeout.bind(null, timeoutInMs === 0 ? 0 : DEFER_EVENT_LISTENER_TIME3),
+        DEFER_EVENT_LISTENER_TIME3
+      );
+    }, "setSocketTimeout");
+    var import_stream = require("stream");
+    var MIN_WAIT_TIME = 1e3;
+    async function writeRequestBody(httpRequest, request2, maxContinueTimeoutMs = MIN_WAIT_TIME) {
+      const headers = request2.headers ?? {};
+      const expect = headers["Expect"] || headers["expect"];
+      let timeoutId = -1;
+      let sendBody = true;
+      if (expect === "100-continue") {
+        sendBody = await Promise.race([
+          new Promise((resolve6) => {
+            timeoutId = Number(timing.setTimeout(resolve6, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));
+          }),
+          new Promise((resolve6) => {
+            httpRequest.on("continue", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(true);
+            });
+            httpRequest.on("response", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+            httpRequest.on("error", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+          })
+        ]);
+      }
+      if (sendBody) {
+        writeBody(httpRequest, request2.body);
+      }
+    }
+    __name2(writeRequestBody, "writeRequestBody");
+    function writeBody(httpRequest, body) {
+      if (body instanceof import_stream.Readable) {
+        body.pipe(httpRequest);
+        return;
+      }
+      if (body) {
+        if (Buffer.isBuffer(body) || typeof body === "string") {
+          httpRequest.end(body);
+          return;
+        }
+        const uint8 = body;
+        if (typeof uint8 === "object" && uint8.buffer && typeof uint8.byteOffset === "number" && typeof uint8.byteLength === "number") {
+          httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));
+          return;
+        }
+        httpRequest.end(Buffer.from(body));
+        return;
+      }
+      httpRequest.end();
+    }
+    __name2(writeBody, "writeBody");
+    var DEFAULT_REQUEST_TIMEOUT = 0;
+    var _NodeHttpHandler = class _NodeHttpHandler2 {
+      constructor(options) {
+        this.socketWarningTimestamp = 0;
+        this.metadata = { handlerProtocol: "http/1.1" };
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((_options) => {
+              resolve6(this.resolveDefaultConfig(_options));
+            }).catch(reject);
+          } else {
+            resolve6(this.resolveDefaultConfig(options));
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttpHandler2(instanceOrOptions);
+      }
+      /**
+       * @internal
+       *
+       * @param agent - http(s) agent in use by the NodeHttpHandler instance.
+       * @param socketWarningTimestamp - last socket usage check timestamp.
+       * @param logger - channel for the warning.
+       * @returns timestamp of last emitted warning.
+       */
+      static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {
+        var _a7, _b, _c;
+        const { sockets, requests, maxSockets } = agent;
+        if (typeof maxSockets !== "number" || maxSockets === Infinity) {
+          return socketWarningTimestamp;
+        }
+        const interval = 15e3;
+        if (Date.now() - interval < socketWarningTimestamp) {
+          return socketWarningTimestamp;
+        }
+        if (sockets && requests) {
+          for (const origin in sockets) {
+            const socketsInUse = ((_a7 = sockets[origin]) == null ? void 0 : _a7.length) ?? 0;
+            const requestsEnqueued = ((_b = requests[origin]) == null ? void 0 : _b.length) ?? 0;
+            if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {
+              (_c = logger == null ? void 0 : logger.warn) == null ? void 0 : _c.call(
+                logger,
+                `@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.
+See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html
+or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`
+              );
+              return Date.now();
+            }
+          }
+        }
+        return socketWarningTimestamp;
+      }
+      resolveDefaultConfig(options) {
+        const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {};
+        const keepAlive = true;
+        const maxSockets = 50;
+        return {
+          connectionTimeout,
+          requestTimeout: requestTimeout ?? socketTimeout,
+          httpAgent: (() => {
+            if (httpAgent instanceof import_http2.Agent || typeof (httpAgent == null ? void 0 : httpAgent.destroy) === "function") {
+              return httpAgent;
+            }
+            return new import_http2.Agent({ keepAlive, maxSockets, ...httpAgent });
+          })(),
+          httpsAgent: (() => {
+            if (httpsAgent instanceof import_https.Agent || typeof (httpsAgent == null ? void 0 : httpsAgent.destroy) === "function") {
+              return httpsAgent;
+            }
+            return new import_https.Agent({ keepAlive, maxSockets, ...httpsAgent });
+          })(),
+          logger: console
+        };
+      }
+      destroy() {
+        var _a7, _b, _c, _d;
+        (_b = (_a7 = this.config) == null ? void 0 : _a7.httpAgent) == null ? void 0 : _b.destroy();
+        (_d = (_c = this.config) == null ? void 0 : _c.httpsAgent) == null ? void 0 : _d.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        return new Promise((_resolve2, _reject) => {
+          let writeRequestBodyPromise = void 0;
+          const timeouts = [];
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _reject(arg);
+          }, "reject");
+          if (!this.config) {
+            throw new Error("Node HTTP request handler config is not resolved");
+          }
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const isSSL = request2.protocol === "https:";
+          const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;
+          timeouts.push(
+            timing.setTimeout(
+              () => {
+                this.socketWarningTimestamp = _NodeHttpHandler2.checkSocketUsage(
+                  agent,
+                  this.socketWarningTimestamp,
+                  this.config.logger
+                );
+              },
+              this.config.socketAcquisitionWarningTimeout ?? (this.config.requestTimeout ?? 2e3) + (this.config.connectionTimeout ?? 1e3)
+            )
+          );
+          const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+          let auth = void 0;
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}`;
+          }
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          let hostname = request2.hostname ?? "";
+          if (hostname[0] === "[" && hostname.endsWith("]")) {
+            hostname = request2.hostname.slice(1, -1);
+          } else {
+            hostname = request2.hostname;
+          }
+          const nodeHttpsOptions = {
+            headers: request2.headers,
+            host: hostname,
+            method: request2.method,
+            path: path23,
+            port: request2.port,
+            agent,
+            auth
+          };
+          const requestFunc = isSSL ? import_https.request : import_http2.request;
+          const req = requestFunc(nodeHttpsOptions, (res) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: res.statusCode || -1,
+              reason: res.statusMessage,
+              headers: getTransformedHeaders(res.headers),
+              body: res
+            });
+            resolve6({ response: httpResponse });
+          });
+          req.on("error", (err) => {
+            if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) {
+              reject(Object.assign(err, { name: "TimeoutError" }));
+            } else {
+              reject(err);
+            }
+          });
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.destroy();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              reject(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          timeouts.push(setConnectionTimeout(req, reject, this.config.connectionTimeout));
+          timeouts.push(setSocketTimeout(req, reject, this.config.requestTimeout));
+          const httpAgent = nodeHttpsOptions.agent;
+          if (typeof httpAgent === "object" && "keepAlive" in httpAgent) {
+            timeouts.push(
+              setSocketKeepAlive(req, {
+                // @ts-expect-error keepAlive is not public on httpAgent.
+                keepAlive: httpAgent.keepAlive,
+                // @ts-expect-error keepAliveMsecs is not public on httpAgent.
+                keepAliveMsecs: httpAgent.keepAliveMsecs
+              })
+            );
+          }
+          writeRequestBodyPromise = writeRequestBody(req, request2, this.config.requestTimeout).catch((e) => {
+            timeouts.forEach(timing.clearTimeout);
+            return _reject(e);
+          });
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_NodeHttpHandler, "NodeHttpHandler");
+    var NodeHttpHandler = _NodeHttpHandler;
+    var import_http22 = require("http2");
+    var import_http23 = __toESM2(require("http2"));
+    var _NodeHttp2ConnectionPool = class _NodeHttp2ConnectionPool {
+      constructor(sessions) {
+        this.sessions = [];
+        this.sessions = sessions ?? [];
+      }
+      poll() {
+        if (this.sessions.length > 0) {
+          return this.sessions.shift();
+        }
+      }
+      offerLast(session) {
+        this.sessions.push(session);
+      }
+      contains(session) {
+        return this.sessions.includes(session);
+      }
+      remove(session) {
+        this.sessions = this.sessions.filter((s) => s !== session);
+      }
+      [Symbol.iterator]() {
+        return this.sessions[Symbol.iterator]();
+      }
+      destroy(connection) {
+        for (const session of this.sessions) {
+          if (session === connection) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+          }
+        }
+      }
+    };
+    __name2(_NodeHttp2ConnectionPool, "NodeHttp2ConnectionPool");
+    var NodeHttp2ConnectionPool = _NodeHttp2ConnectionPool;
+    var _NodeHttp2ConnectionManager = class _NodeHttp2ConnectionManager {
+      constructor(config) {
+        this.sessionCache = /* @__PURE__ */ new Map();
+        this.config = config;
+        if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {
+          throw new RangeError("maxConcurrency must be greater than zero.");
+        }
+      }
+      lease(requestContext, connectionConfiguration) {
+        const url2 = this.getUrlString(requestContext);
+        const existingPool = this.sessionCache.get(url2);
+        if (existingPool) {
+          const existingSession = existingPool.poll();
+          if (existingSession && !this.config.disableConcurrency) {
+            return existingSession;
+          }
+        }
+        const session = import_http23.default.connect(url2);
+        if (this.config.maxConcurrency) {
+          session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => {
+            if (err) {
+              throw new Error(
+                "Fail to set maxConcurrentStreams to " + this.config.maxConcurrency + "when creating new session for " + requestContext.destination.toString()
+              );
+            }
+          });
+        }
+        session.unref();
+        const destroySessionCb = /* @__PURE__ */ __name2(() => {
+          session.destroy();
+          this.deleteSession(url2, session);
+        }, "destroySessionCb");
+        session.on("goaway", destroySessionCb);
+        session.on("error", destroySessionCb);
+        session.on("frameError", destroySessionCb);
+        session.on("close", () => this.deleteSession(url2, session));
+        if (connectionConfiguration.requestTimeout) {
+          session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb);
+        }
+        const connectionPool = this.sessionCache.get(url2) || new NodeHttp2ConnectionPool();
+        connectionPool.offerLast(session);
+        this.sessionCache.set(url2, connectionPool);
+        return session;
+      }
+      /**
+       * Delete a session from the connection pool.
+       * @param authority The authority of the session to delete.
+       * @param session The session to delete.
+       */
+      deleteSession(authority, session) {
+        const existingConnectionPool = this.sessionCache.get(authority);
+        if (!existingConnectionPool) {
+          return;
+        }
+        if (!existingConnectionPool.contains(session)) {
+          return;
+        }
+        existingConnectionPool.remove(session);
+        this.sessionCache.set(authority, existingConnectionPool);
+      }
+      release(requestContext, session) {
+        var _a7;
+        const cacheKey = this.getUrlString(requestContext);
+        (_a7 = this.sessionCache.get(cacheKey)) == null ? void 0 : _a7.offerLast(session);
+      }
+      destroy() {
+        for (const [key, connectionPool] of this.sessionCache) {
+          for (const session of connectionPool) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+            connectionPool.remove(session);
+          }
+          this.sessionCache.delete(key);
+        }
+      }
+      setMaxConcurrentStreams(maxConcurrentStreams) {
+        if (maxConcurrentStreams && maxConcurrentStreams <= 0) {
+          throw new RangeError("maxConcurrentStreams must be greater than zero.");
+        }
+        this.config.maxConcurrency = maxConcurrentStreams;
+      }
+      setDisableConcurrentStreams(disableConcurrentStreams) {
+        this.config.disableConcurrency = disableConcurrentStreams;
+      }
+      getUrlString(request2) {
+        return request2.destination.toString();
+      }
+    };
+    __name2(_NodeHttp2ConnectionManager, "NodeHttp2ConnectionManager");
+    var NodeHttp2ConnectionManager = _NodeHttp2ConnectionManager;
+    var _NodeHttp2Handler = class _NodeHttp2Handler2 {
+      constructor(options) {
+        this.metadata = { handlerProtocol: "h2" };
+        this.connectionManager = new NodeHttp2ConnectionManager({});
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((opts) => {
+              resolve6(opts || {});
+            }).catch(reject);
+          } else {
+            resolve6(options || {});
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttp2Handler2(instanceOrOptions);
+      }
+      destroy() {
+        this.connectionManager.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+          this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false);
+          if (this.config.maxConcurrentStreams) {
+            this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams);
+          }
+        }
+        const { requestTimeout, disableConcurrentStreams } = this.config;
+        return new Promise((_resolve2, _reject) => {
+          var _a7;
+          let fulfilled = false;
+          let writeRequestBodyPromise = void 0;
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _reject(arg);
+          }, "reject");
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            fulfilled = true;
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const { hostname, method, port, protocol, query } = request2;
+          let auth = "";
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}@`;
+          }
+          const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : ""}`;
+          const requestContext = { destination: new URL(authority) };
+          const session = this.connectionManager.lease(requestContext, {
+            requestTimeout: (_a7 = this.config) == null ? void 0 : _a7.sessionTimeout,
+            disableConcurrentStreams: disableConcurrentStreams || false
+          });
+          const rejectWithDestroy = /* @__PURE__ */ __name2((err) => {
+            if (disableConcurrentStreams) {
+              this.destroySession(session);
+            }
+            fulfilled = true;
+            reject(err);
+          }, "rejectWithDestroy");
+          const queryString = (0, import_querystring_builder.buildQueryString)(query || {});
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          const req = session.request({
+            ...request2.headers,
+            [import_http22.constants.HTTP2_HEADER_PATH]: path23,
+            [import_http22.constants.HTTP2_HEADER_METHOD]: method
+          });
+          session.ref();
+          req.on("response", (headers) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: headers[":status"] || -1,
+              headers: getTransformedHeaders(headers),
+              body: req
+            });
+            fulfilled = true;
+            resolve6({ response: httpResponse });
+            if (disableConcurrentStreams) {
+              session.close();
+              this.connectionManager.deleteSession(authority, session);
+            }
+          });
+          if (requestTimeout) {
+            req.setTimeout(requestTimeout, () => {
+              req.close();
+              const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`);
+              timeoutError.name = "TimeoutError";
+              rejectWithDestroy(timeoutError);
+            });
+          }
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.close();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              rejectWithDestroy(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          req.on("frameError", (type, code, id) => {
+            rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`));
+          });
+          req.on("error", rejectWithDestroy);
+          req.on("aborted", () => {
+            rejectWithDestroy(
+              new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`)
+            );
+          });
+          req.on("close", () => {
+            session.unref();
+            if (disableConcurrentStreams) {
+              session.destroy();
+            }
+            if (!fulfilled) {
+              rejectWithDestroy(new Error("Unexpected error: http2 request did not get a response"));
+            }
+          });
+          writeRequestBodyPromise = writeRequestBody(req, request2, requestTimeout);
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+      /**
+       * Destroys a session.
+       * @param session The session to destroy.
+       */
+      destroySession(session) {
+        if (!session.destroyed) {
+          session.destroy();
+        }
+      }
+    };
+    __name2(_NodeHttp2Handler, "NodeHttp2Handler");
+    var NodeHttp2Handler = _NodeHttp2Handler;
+    var _Collector = class _Collector extends import_stream.Writable {
+      constructor() {
+        super(...arguments);
+        this.bufferedBytes = [];
+      }
+      _write(chunk, encoding, callback) {
+        this.bufferedBytes.push(chunk);
+        callback();
+      }
+    };
+    __name2(_Collector, "Collector");
+    var Collector = _Collector;
+    var streamCollector = /* @__PURE__ */ __name2((stream) => {
+      if (isReadableStreamInstance(stream)) {
+        return collectReadableStream(stream);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));
+          resolve6(bytes);
+        });
+      });
+    }, "streamCollector");
+    var isReadableStreamInstance = /* @__PURE__ */ __name2((stream) => typeof ReadableStream === "function" && stream instanceof ReadableStream, "isReadableStreamInstance");
+    async function collectReadableStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectReadableStream, "collectReadableStream");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js
+var require_dist_cjs20 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      FetchHttpHandler: () => FetchHttpHandler,
+      keepAliveSupport: () => keepAliveSupport,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    function createRequest(url2, requestOptions) {
+      return new Request(url2, requestOptions);
+    }
+    __name2(createRequest, "createRequest");
+    function requestTimeout(timeoutInMs = 0) {
+      return new Promise((resolve6, reject) => {
+        if (timeoutInMs) {
+          setTimeout(() => {
+            const timeoutError = new Error(`Request did not complete within ${timeoutInMs} ms`);
+            timeoutError.name = "TimeoutError";
+            reject(timeoutError);
+          }, timeoutInMs);
+        }
+      });
+    }
+    __name2(requestTimeout, "requestTimeout");
+    var keepAliveSupport = {
+      supported: void 0
+    };
+    var _FetchHttpHandler = class _FetchHttpHandler2 {
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _FetchHttpHandler2(instanceOrOptions);
+      }
+      constructor(options) {
+        if (typeof options === "function") {
+          this.configProvider = options().then((opts) => opts || {});
+        } else {
+          this.config = options ?? {};
+          this.configProvider = Promise.resolve(this.config);
+        }
+        if (keepAliveSupport.supported === void 0) {
+          keepAliveSupport.supported = Boolean(
+            typeof Request !== "undefined" && "keepalive" in createRequest("https://[::1]")
+          );
+        }
+      }
+      destroy() {
+      }
+      async handle(request2, { abortSignal } = {}) {
+        var _a7;
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        const requestTimeoutInMs = this.config.requestTimeout;
+        const keepAlive = this.config.keepAlive === true;
+        const credentials = this.config.credentials;
+        if (abortSignal == null ? void 0 : abortSignal.aborted) {
+          const abortError = new Error("Request aborted");
+          abortError.name = "AbortError";
+          return Promise.reject(abortError);
+        }
+        let path23 = request2.path;
+        const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+        if (queryString) {
+          path23 += `?${queryString}`;
+        }
+        if (request2.fragment) {
+          path23 += `#${request2.fragment}`;
+        }
+        let auth = "";
+        if (request2.username != null || request2.password != null) {
+          const username = request2.username ?? "";
+          const password = request2.password ?? "";
+          auth = `${username}:${password}@`;
+        }
+        const { port, method } = request2;
+        const url2 = `${request2.protocol}//${auth}${request2.hostname}${port ? `:${port}` : ""}${path23}`;
+        const body = method === "GET" || method === "HEAD" ? void 0 : request2.body;
+        const requestOptions = {
+          body,
+          headers: new Headers(request2.headers),
+          method,
+          credentials
+        };
+        if ((_a7 = this.config) == null ? void 0 : _a7.cache) {
+          requestOptions.cache = this.config.cache;
+        }
+        if (body) {
+          requestOptions.duplex = "half";
+        }
+        if (typeof AbortController !== "undefined") {
+          requestOptions.signal = abortSignal;
+        }
+        if (keepAliveSupport.supported) {
+          requestOptions.keepalive = keepAlive;
+        }
+        if (typeof this.config.requestInit === "function") {
+          Object.assign(requestOptions, this.config.requestInit(request2));
+        }
+        let removeSignalEventListener = /* @__PURE__ */ __name2(() => {
+        }, "removeSignalEventListener");
+        const fetchRequest = createRequest(url2, requestOptions);
+        const raceOfPromises = [
+          fetch(fetchRequest).then((response) => {
+            const fetchHeaders = response.headers;
+            const transformedHeaders = {};
+            for (const pair of fetchHeaders.entries()) {
+              transformedHeaders[pair[0]] = pair[1];
+            }
+            const hasReadableStream = response.body != void 0;
+            if (!hasReadableStream) {
+              return response.blob().then((body2) => ({
+                response: new import_protocol_http8.HttpResponse({
+                  headers: transformedHeaders,
+                  reason: response.statusText,
+                  statusCode: response.status,
+                  body: body2
+                })
+              }));
+            }
+            return {
+              response: new import_protocol_http8.HttpResponse({
+                headers: transformedHeaders,
+                reason: response.statusText,
+                statusCode: response.status,
+                body: response.body
+              })
+            };
+          }),
+          requestTimeout(requestTimeoutInMs)
+        ];
+        if (abortSignal) {
+          raceOfPromises.push(
+            new Promise((resolve6, reject) => {
+              const onAbort = /* @__PURE__ */ __name2(() => {
+                const abortError = new Error("Request aborted");
+                abortError.name = "AbortError";
+                reject(abortError);
+              }, "onAbort");
+              if (typeof abortSignal.addEventListener === "function") {
+                const signal = abortSignal;
+                signal.addEventListener("abort", onAbort, { once: true });
+                removeSignalEventListener = /* @__PURE__ */ __name2(() => signal.removeEventListener("abort", onAbort), "removeSignalEventListener");
+              } else {
+                abortSignal.onabort = onAbort;
+              }
+            })
+          );
+        }
+        return Promise.race(raceOfPromises).finally(removeSignalEventListener);
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          config[key] = value;
+          return config;
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_FetchHttpHandler, "FetchHttpHandler");
+    var FetchHttpHandler = _FetchHttpHandler;
+    var import_util_base64 = require_dist_cjs16();
+    var streamCollector = /* @__PURE__ */ __name2(async (stream) => {
+      var _a7;
+      if (typeof Blob === "function" && stream instanceof Blob || ((_a7 = stream.constructor) == null ? void 0 : _a7.name) === "Blob") {
+        if (Blob.prototype.arrayBuffer !== void 0) {
+          return new Uint8Array(await stream.arrayBuffer());
+        }
+        return collectBlob(stream);
+      }
+      return collectStream(stream);
+    }, "streamCollector");
+    async function collectBlob(blob) {
+      const base64 = await readToBase64(blob);
+      const arrayBuffer = (0, import_util_base64.fromBase64)(base64);
+      return new Uint8Array(arrayBuffer);
+    }
+    __name2(collectBlob, "collectBlob");
+    async function collectStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectStream, "collectStream");
+    function readToBase64(blob) {
+      return new Promise((resolve6, reject) => {
+        const reader = new FileReader();
+        reader.onloadend = () => {
+          if (reader.readyState !== 2) {
+            return reject(new Error("Reader aborted too early"));
+          }
+          const result = reader.result ?? "";
+          const commaIndex = result.indexOf(",");
+          const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;
+          resolve6(result.substring(dataOffset));
+        };
+        reader.onabort = () => reject(new Error("Read aborted"));
+        reader.onerror = () => reject(reader.error);
+        reader.readAsDataURL(blob);
+      });
+    }
+    __name2(readToBase64, "readToBase64");
+  }
+});
+
+// ../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js
+var require_dist_cjs21 = __commonJS({
+  "../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromHex: () => fromHex,
+      toHex: () => toHex
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var SHORT_TO_HEX = {};
+    var HEX_TO_SHORT = {};
+    for (let i = 0; i < 256; i++) {
+      let encodedByte = i.toString(16).toLowerCase();
+      if (encodedByte.length === 1) {
+        encodedByte = `0${encodedByte}`;
+      }
+      SHORT_TO_HEX[i] = encodedByte;
+      HEX_TO_SHORT[encodedByte] = i;
+    }
+    function fromHex(encoded) {
+      if (encoded.length % 2 !== 0) {
+        throw new Error("Hex encoded strings must have an even number length");
+      }
+      const out = new Uint8Array(encoded.length / 2);
+      for (let i = 0; i < encoded.length; i += 2) {
+        const encodedByte = encoded.slice(i, i + 2).toLowerCase();
+        if (encodedByte in HEX_TO_SHORT) {
+          out[i / 2] = HEX_TO_SHORT[encodedByte];
+        } else {
+          throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);
+        }
+      }
+      return out;
+    }
+    __name2(fromHex, "fromHex");
+    function toHex(bytes) {
+      let out = "";
+      for (let i = 0; i < bytes.byteLength; i++) {
+        out += SHORT_TO_HEX[bytes[i]];
+      }
+      return out;
+    }
+    __name2(toHex, "toHex");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js
+var require_stream_type_check = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isBlob = exports2.isReadableStream = void 0;
+    var isReadableStream2 = (stream) => {
+      var _a7;
+      return typeof ReadableStream === "function" && (((_a7 = stream === null || stream === void 0 ? void 0 : stream.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === ReadableStream.name || stream instanceof ReadableStream);
+    };
+    exports2.isReadableStream = isReadableStream2;
+    var isBlob2 = (blob) => {
+      var _a7;
+      return typeof Blob === "function" && (((_a7 = blob === null || blob === void 0 ? void 0 : blob.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === Blob.name || blob instanceof Blob);
+    };
+    exports2.isBlob = isBlob2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js
+var require_sdk_stream_mixin_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var fetch_http_handler_1 = require_dist_cjs20();
+    var util_base64_1 = require_dist_cjs16();
+    var util_hex_encoding_1 = require_dist_cjs21();
+    var util_utf8_1 = require_dist_cjs15();
+    var stream_type_check_1 = require_stream_type_check();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!isBlobInstance(stream) && !(0, stream_type_check_1.isReadableStream)(stream)) {
+        const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+        throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, fetch_http_handler_1.streamCollector)(stream);
+      };
+      const blobToWebStream = (blob) => {
+        if (typeof blob.stream !== "function") {
+          throw new Error("Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\nIf you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body");
+        }
+        return blob.stream();
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === "base64") {
+            return (0, util_base64_1.toBase64)(buf);
+          } else if (encoding === "hex") {
+            return (0, util_hex_encoding_1.toHex)(buf);
+          } else if (encoding === void 0 || encoding === "utf8" || encoding === "utf-8") {
+            return (0, util_utf8_1.toUtf8)(buf);
+          } else if (typeof TextDecoder === "function") {
+            return new TextDecoder(encoding).decode(buf);
+          } else {
+            throw new Error("TextDecoder is not available, please make sure polyfill is provided.");
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          transformed = true;
+          if (isBlobInstance(stream)) {
+            return blobToWebStream(stream);
+          } else if ((0, stream_type_check_1.isReadableStream)(stream)) {
+            return stream;
+          } else {
+            throw new Error(`Cannot transform payload to web stream, got ${stream}`);
+          }
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+    var isBlobInstance = (stream) => typeof Blob === "function" && stream instanceof Blob;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js
+var require_sdk_stream_mixin = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_buffer_from_1 = require_dist_cjs14();
+    var stream_1 = require("stream");
+    var sdk_stream_mixin_browser_1 = require_sdk_stream_mixin_browser();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!(stream instanceof stream_1.Readable)) {
+        try {
+          return (0, sdk_stream_mixin_browser_1.sdkStreamMixin)(stream);
+        } catch (e) {
+          const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+          throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);
+        }
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, node_http_handler_1.streamCollector)(stream);
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === void 0 || Buffer.isEncoding(encoding)) {
+            return (0, util_buffer_from_1.fromArrayBuffer)(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);
+          } else {
+            const decoder2 = new TextDecoder(encoding);
+            return decoder2.decode(buf);
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          if (stream.readableFlowing !== null) {
+            throw new Error("The stream has been consumed by other callbacks.");
+          }
+          if (typeof stream_1.Readable.toWeb !== "function") {
+            throw new Error("Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.");
+          }
+          transformed = true;
+          return stream_1.Readable.toWeb(stream);
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js
+var require_splitStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    async function splitStream2(stream) {
+      if (typeof stream.stream === "function") {
+        stream = stream.stream();
+      }
+      const readableStream = stream;
+      return readableStream.tee();
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js
+var require_splitStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    var stream_1 = require("stream");
+    var splitStream_browser_1 = require_splitStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    async function splitStream2(stream) {
+      if ((0, stream_type_check_1.isReadableStream)(stream) || (0, stream_type_check_1.isBlob)(stream)) {
+        return (0, splitStream_browser_1.splitStream)(stream);
+      }
+      const stream1 = new stream_1.PassThrough();
+      const stream2 = new stream_1.PassThrough();
+      stream.pipe(stream1);
+      stream.pipe(stream2);
+      return [stream1, stream2];
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js
+var require_headStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    async function headStream2(stream, bytes) {
+      var _a7;
+      let byteLengthCounter = 0;
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          byteLengthCounter += (_a7 = value === null || value === void 0 ? void 0 : value.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        }
+        if (byteLengthCounter >= bytes) {
+          break;
+        }
+        isDone = done;
+      }
+      reader.releaseLock();
+      const collected = new Uint8Array(Math.min(bytes, byteLengthCounter));
+      let offset = 0;
+      for (const chunk of chunks) {
+        if (chunk.byteLength > collected.byteLength - offset) {
+          collected.set(chunk.subarray(0, collected.byteLength - offset), offset);
+          break;
+        } else {
+          collected.set(chunk, offset);
+        }
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    exports2.headStream = headStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js
+var require_headStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    var stream_1 = require("stream");
+    var headStream_browser_1 = require_headStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    var headStream2 = (stream, bytes) => {
+      if ((0, stream_type_check_1.isReadableStream)(stream)) {
+        return (0, headStream_browser_1.headStream)(stream, bytes);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        collector.limit = bytes;
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes2 = new Uint8Array(Buffer.concat(this.buffers));
+          resolve6(bytes2);
+        });
+      });
+    };
+    exports2.headStream = headStream2;
+    var Collector = class extends stream_1.Writable {
+      constructor() {
+        super(...arguments);
+        this.buffers = [];
+        this.limit = Infinity;
+        this.bytesBuffered = 0;
+      }
+      _write(chunk, encoding, callback) {
+        var _a7;
+        this.buffers.push(chunk);
+        this.bytesBuffered += (_a7 = chunk.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        if (this.bytesBuffered >= this.limit) {
+          const excess = this.bytesBuffered - this.limit;
+          const tailBuffer = this.buffers[this.buffers.length - 1];
+          this.buffers[this.buffers.length - 1] = tailBuffer.subarray(0, tailBuffer.byteLength - excess);
+          this.emit("finish");
+        }
+        callback();
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js
+var require_ChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_1 = require("stream");
+    var ChecksumStream2 = class extends stream_1.Duplex {
+      constructor({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) {
+        var _a7, _b;
+        super();
+        if (typeof source.pipe === "function") {
+          this.source = source;
+        } else {
+          throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+        }
+        this.base64Encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+        this.expectedChecksum = expectedChecksum;
+        this.checksum = checksum;
+        this.checksumSourceLocation = checksumSourceLocation;
+        this.source.pipe(this);
+      }
+      _read(size) {
+      }
+      _write(chunk, encoding, callback) {
+        try {
+          this.checksum.update(chunk);
+          this.push(chunk);
+        } catch (e) {
+          return callback(e);
+        }
+        return callback();
+      }
+      async _final(callback) {
+        try {
+          const digest = await this.checksum.digest();
+          const received = this.base64Encoder(digest);
+          if (this.expectedChecksum !== received) {
+            return callback(new Error(`Checksum mismatch: expected "${this.expectedChecksum}" but received "${received}" in response header "${this.checksumSourceLocation}".`));
+          }
+        } catch (e) {
+          return callback(e);
+        }
+        this.push(null);
+        return callback();
+      }
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js
+var require_ChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var ReadableStreamRef = typeof ReadableStream === "function" ? ReadableStream : function() {
+    };
+    var ChecksumStream2 = class extends ReadableStreamRef {
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js
+var require_createChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_browser_1 = require_ChecksumStream_browser();
+    var createChecksumStream2 = ({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) => {
+      var _a7, _b;
+      if (!(0, stream_type_check_1.isReadableStream)(source)) {
+        throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+      }
+      const encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+      if (typeof TransformStream !== "function") {
+        throw new Error("@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.");
+      }
+      const transform = new TransformStream({
+        start() {
+        },
+        async transform(chunk, controller) {
+          checksum.update(chunk);
+          controller.enqueue(chunk);
+        },
+        async flush(controller) {
+          const digest = await checksum.digest();
+          const received = encoder(digest);
+          if (expectedChecksum !== received) {
+            const error = new Error(`Checksum mismatch: expected "${expectedChecksum}" but received "${received}" in response header "${checksumSourceLocation}".`);
+            controller.error(error);
+          } else {
+            controller.terminate();
+          }
+        }
+      });
+      source.pipeThrough(transform);
+      const readable = transform.readable;
+      Object.setPrototypeOf(readable, ChecksumStream_browser_1.ChecksumStream.prototype);
+      return readable;
+    };
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js
+var require_createChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_1 = require_ChecksumStream();
+    var createChecksumStream_browser_1 = require_createChecksumStream_browser();
+    function createChecksumStream2(init) {
+      if (typeof ReadableStream === "function" && (0, stream_type_check_1.isReadableStream)(init.source)) {
+        return (0, createChecksumStream_browser_1.createChecksumStream)(init);
+      }
+      return new ChecksumStream_1.ChecksumStream(init);
+    }
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/index.js
+var require_dist_cjs22 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Uint8ArrayBlobAdapter: () => Uint8ArrayBlobAdapter2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_base64 = require_dist_cjs16();
+    var import_util_utf8 = require_dist_cjs15();
+    function transformToString(payload, encoding = "utf-8") {
+      if (encoding === "base64") {
+        return (0, import_util_base64.toBase64)(payload);
+      }
+      return (0, import_util_utf8.toUtf8)(payload);
+    }
+    __name2(transformToString, "transformToString");
+    function transformFromString(str, encoding) {
+      if (encoding === "base64") {
+        return Uint8ArrayBlobAdapter2.mutate((0, import_util_base64.fromBase64)(str));
+      }
+      return Uint8ArrayBlobAdapter2.mutate((0, import_util_utf8.fromUtf8)(str));
+    }
+    __name2(transformFromString, "transformFromString");
+    var _Uint8ArrayBlobAdapter = class _Uint8ArrayBlobAdapter2 extends Uint8Array {
+      /**
+       * @param source - such as a string or Stream.
+       * @returns a new Uint8ArrayBlobAdapter extending Uint8Array.
+       */
+      static fromString(source, encoding = "utf-8") {
+        switch (typeof source) {
+          case "string":
+            return transformFromString(source, encoding);
+          default:
+            throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);
+        }
+      }
+      /**
+       * @param source - Uint8Array to be mutated.
+       * @returns the same Uint8Array but with prototype switched to Uint8ArrayBlobAdapter.
+       */
+      static mutate(source) {
+        Object.setPrototypeOf(source, _Uint8ArrayBlobAdapter2.prototype);
+        return source;
+      }
+      /**
+       * @param encoding - default 'utf-8'.
+       * @returns the blob as string.
+       */
+      transformToString(encoding = "utf-8") {
+        return transformToString(this, encoding);
+      }
+    };
+    __name2(_Uint8ArrayBlobAdapter, "Uint8ArrayBlobAdapter");
+    var Uint8ArrayBlobAdapter2 = _Uint8ArrayBlobAdapter;
+    __reExport2(src_exports, require_getAwsChunkedEncodingStream(), module2.exports);
+    __reExport2(src_exports, require_sdk_stream_mixin(), module2.exports);
+    __reExport2(src_exports, require_splitStream(), module2.exports);
+    __reExport2(src_exports, require_headStream(), module2.exports);
+    __reExport2(src_exports, require_stream_type_check(), module2.exports);
+    __reExport2(src_exports, require_createChecksumStream(), module2.exports);
+    __reExport2(src_exports, require_ChecksumStream(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js
+var import_util_stream, collectBody2;
+var init_collect_stream_body = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js"() {
+    import_util_stream = __toESM(require_dist_cjs22());
+    collectBody2 = async (streamBody = new Uint8Array(), context) => {
+      if (streamBody instanceof Uint8Array) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(streamBody);
+      }
+      if (!streamBody) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(new Uint8Array());
+      }
+      const fromContext = context.streamCollector(streamBody);
+      return import_util_stream.Uint8ArrayBlobAdapter.mutate(await fromContext);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js
+function extendedEncodeURIComponent2(str) {
+  return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
+    return "%" + c.charCodeAt(0).toString(16).toUpperCase();
+  });
+}
+var init_extended_encode_uri_component = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js
+var resolvedPath2;
+var init_resolve_path = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js"() {
+    init_extended_encode_uri_component();
+    resolvedPath2 = (resolvedPath3, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => {
+      if (input != null && input[memberName] !== void 0) {
+        const labelValue = labelValueProvider();
+        if (labelValue.length <= 0) {
+          throw new Error("Empty value provided for input HTTP label: " + memberName + ".");
+        }
+        resolvedPath3 = resolvedPath3.replace(uriLabel, isGreedyLabel ? labelValue.split("/").map((segment) => extendedEncodeURIComponent2(segment)).join("/") : extendedEncodeURIComponent2(labelValue));
+      } else {
+        throw new Error("No value provided for input HTTP label: " + memberName + ".");
+      }
+      return resolvedPath3;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js
+function requestBuilder(input, context) {
+  return new RequestBuilder(input, context);
+}
+var import_protocol_http2, RequestBuilder;
+var init_requestBuilder = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js"() {
+    import_protocol_http2 = __toESM(require_dist_cjs2());
+    init_resolve_path();
+    RequestBuilder = class {
+      constructor(input, context) {
+        this.input = input;
+        this.context = context;
+        this.query = {};
+        this.method = "";
+        this.headers = {};
+        this.path = "";
+        this.body = null;
+        this.hostname = "";
+        this.resolvePathStack = [];
+      }
+      async build() {
+        const { hostname, protocol = "https", port, path: basePath } = await this.context.endpoint();
+        this.path = basePath;
+        for (const resolvePath of this.resolvePathStack) {
+          resolvePath(this.path);
+        }
+        return new import_protocol_http2.HttpRequest({
+          protocol,
+          hostname: this.hostname || hostname,
+          port,
+          method: this.method,
+          path: this.path,
+          query: this.query,
+          body: this.body,
+          headers: this.headers
+        });
+      }
+      hn(hostname) {
+        this.hostname = hostname;
+        return this;
+      }
+      bp(uriLabel) {
+        this.resolvePathStack.push((basePath) => {
+          this.path = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + uriLabel;
+        });
+        return this;
+      }
+      p(memberName, labelValueProvider, uriLabel, isGreedyLabel) {
+        this.resolvePathStack.push((path23) => {
+          this.path = resolvedPath2(path23, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);
+        });
+        return this;
+      }
+      h(headers) {
+        this.headers = headers;
+        return this;
+      }
+      q(query) {
+        this.query = query;
+        return this;
+      }
+      b(body) {
+        this.body = body;
+        return this;
+      }
+      m(method) {
+        this.method = method;
+        return this;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js
+var protocols_exports = {};
+__export(protocols_exports, {
+  RequestBuilder: () => RequestBuilder,
+  collectBody: () => collectBody2,
+  extendedEncodeURIComponent: () => extendedEncodeURIComponent2,
+  requestBuilder: () => requestBuilder,
+  resolvedPath: () => resolvedPath2
+});
+var init_protocols = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js"() {
+    init_collect_stream_body();
+    init_extended_encode_uri_component();
+    init_requestBuilder();
+    init_resolve_path();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js
+var init_requestBuilder2 = __esm({
+  "../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js"() {
+    init_protocols();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/setFeature.js
+function setFeature(context, feature, value) {
+  if (!context.__smithy_context) {
+    context.__smithy_context = {
+      features: {}
+    };
+  } else if (!context.__smithy_context.features) {
+    context.__smithy_context.features = {};
+  }
+  context.__smithy_context.features[feature] = value;
+}
+var init_setFeature = __esm({
+  "../../../node_modules/@smithy/core/dist-es/setFeature.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js
+var DefaultIdentityProviderConfig;
+var init_DefaultIdentityProviderConfig = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js"() {
+    DefaultIdentityProviderConfig = class {
+      constructor(config) {
+        this.authSchemes = /* @__PURE__ */ new Map();
+        for (const [key, value] of Object.entries(config)) {
+          if (value !== void 0) {
+            this.authSchemes.set(key, value);
+          }
+        }
+      }
+      getIdentityProvider(schemeId) {
+        return this.authSchemes.get(schemeId);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js
+var import_protocol_http3, import_types7, HttpApiKeyAuthSigner;
+var init_httpApiKeyAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js"() {
+    import_protocol_http3 = __toESM(require_dist_cjs2());
+    import_types7 = __toESM(require_dist_cjs());
+    HttpApiKeyAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!signingProperties) {
+          throw new Error("request could not be signed with `apiKey` since the `name` and `in` signer properties are missing");
+        }
+        if (!signingProperties.name) {
+          throw new Error("request could not be signed with `apiKey` since the `name` signer property is missing");
+        }
+        if (!signingProperties.in) {
+          throw new Error("request could not be signed with `apiKey` since the `in` signer property is missing");
+        }
+        if (!identity.apiKey) {
+          throw new Error("request could not be signed with `apiKey` since the `apiKey` is not defined");
+        }
+        const clonedRequest = import_protocol_http3.HttpRequest.clone(httpRequest);
+        if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.QUERY) {
+          clonedRequest.query[signingProperties.name] = identity.apiKey;
+        } else if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.HEADER) {
+          clonedRequest.headers[signingProperties.name] = signingProperties.scheme ? `${signingProperties.scheme} ${identity.apiKey}` : identity.apiKey;
+        } else {
+          throw new Error("request can only be signed with `apiKey` locations `query` or `header`, but found: `" + signingProperties.in + "`");
+        }
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js
+var import_protocol_http4, HttpBearerAuthSigner;
+var init_httpBearerAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js"() {
+    import_protocol_http4 = __toESM(require_dist_cjs2());
+    HttpBearerAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        const clonedRequest = import_protocol_http4.HttpRequest.clone(httpRequest);
+        if (!identity.token) {
+          throw new Error("request could not be signed with `token` since the `token` is not defined");
+        }
+        clonedRequest.headers["Authorization"] = `Bearer ${identity.token}`;
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js
+var NoAuthSigner;
+var init_noAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js"() {
+    NoAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        return httpRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js
+var init_httpAuthSchemes = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js"() {
+    init_httpApiKeyAuth();
+    init_httpBearerAuth();
+    init_noAuth();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js
+var createIsIdentityExpiredFunction, EXPIRATION_MS, isIdentityExpired, doesIdentityRequireRefresh, memoizeIdentityProvider;
+var init_memoizeIdentityProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js"() {
+    createIsIdentityExpiredFunction = (expirationMs) => (identity) => doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;
+    EXPIRATION_MS = 3e5;
+    isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);
+    doesIdentityRequireRefresh = (identity) => identity.expiration !== void 0;
+    memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {
+      if (provider === void 0) {
+        return void 0;
+      }
+      const normalizedProvider = typeof provider !== "function" ? async () => Promise.resolve(provider) : provider;
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = async (options) => {
+        if (!pending) {
+          pending = normalizedProvider(options);
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      };
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || options?.forceRefresh) {
+            resolved = await coalesceProvider(options);
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || options?.forceRefresh) {
+          resolved = await coalesceProvider(options);
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (!requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider(options);
+          return resolved;
+        }
+        return resolved;
+      };
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js
+var init_util_identity_and_auth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js"() {
+    init_DefaultIdentityProviderConfig();
+    init_httpAuthSchemes();
+    init_memoizeIdentityProvider();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/index.js
+var dist_es_exports = {};
+__export(dist_es_exports, {
+  DefaultIdentityProviderConfig: () => DefaultIdentityProviderConfig,
+  EXPIRATION_MS: () => EXPIRATION_MS,
+  HttpApiKeyAuthSigner: () => HttpApiKeyAuthSigner,
+  HttpBearerAuthSigner: () => HttpBearerAuthSigner,
+  NoAuthSigner: () => NoAuthSigner,
+  createIsIdentityExpiredFunction: () => createIsIdentityExpiredFunction,
+  createPaginator: () => createPaginator,
+  doesIdentityRequireRefresh: () => doesIdentityRequireRefresh,
+  getHttpAuthSchemeEndpointRuleSetPlugin: () => getHttpAuthSchemeEndpointRuleSetPlugin,
+  getHttpAuthSchemePlugin: () => getHttpAuthSchemePlugin,
+  getHttpSigningPlugin: () => getHttpSigningPlugin,
+  getSmithyContext: () => getSmithyContext,
+  httpAuthSchemeEndpointRuleSetMiddlewareOptions: () => httpAuthSchemeEndpointRuleSetMiddlewareOptions,
+  httpAuthSchemeMiddleware: () => httpAuthSchemeMiddleware,
+  httpAuthSchemeMiddlewareOptions: () => httpAuthSchemeMiddlewareOptions,
+  httpSigningMiddleware: () => httpSigningMiddleware,
+  httpSigningMiddlewareOptions: () => httpSigningMiddlewareOptions,
+  isIdentityExpired: () => isIdentityExpired,
+  memoizeIdentityProvider: () => memoizeIdentityProvider,
+  normalizeProvider: () => normalizeProvider,
+  requestBuilder: () => requestBuilder,
+  setFeature: () => setFeature
+});
+var init_dist_es = __esm({
+  "../../../node_modules/@smithy/core/dist-es/index.js"() {
+    init_getSmithyContext();
+    init_middleware_http_auth_scheme();
+    init_middleware_http_signing();
+    init_normalizeProvider();
+    init_createPaginator();
+    init_requestBuilder2();
+    init_setFeature();
+    init_util_identity_and_auth();
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js
+var require_dist_cjs23 = __commonJS({
+  "../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      contentLengthMiddleware: () => contentLengthMiddleware,
+      contentLengthMiddlewareOptions: () => contentLengthMiddlewareOptions,
+      getContentLengthPlugin: () => getContentLengthPlugin
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var CONTENT_LENGTH_HEADER = "content-length";
+    function contentLengthMiddleware(bodyLengthChecker) {
+      return (next) => async (args) => {
+        const request2 = args.request;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          const { body, headers } = request2;
+          if (body && Object.keys(headers).map((str) => str.toLowerCase()).indexOf(CONTENT_LENGTH_HEADER) === -1) {
+            try {
+              const length = bodyLengthChecker(body);
+              request2.headers = {
+                ...request2.headers,
+                [CONTENT_LENGTH_HEADER]: String(length)
+              };
+            } catch (error) {
+            }
+          }
+        }
+        return next({
+          ...args,
+          request: request2
+        });
+      };
+    }
+    __name2(contentLengthMiddleware, "contentLengthMiddleware");
+    var contentLengthMiddlewareOptions = {
+      step: "build",
+      tags: ["SET_CONTENT_LENGTH", "CONTENT_LENGTH"],
+      name: "contentLengthMiddleware",
+      override: true
+    };
+    var getContentLengthPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);
+      }
+    }), "getContentLengthPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/property-provider/dist-cjs/index.js
+var require_dist_cjs24 = __commonJS({
+  "../../../node_modules/@smithy/property-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CredentialsProviderError: () => CredentialsProviderError,
+      ProviderError: () => ProviderError2,
+      TokenProviderError: () => TokenProviderError,
+      chain: () => chain,
+      fromStatic: () => fromStatic,
+      memoize: () => memoize
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _ProviderError = class _ProviderError2 extends Error {
+      constructor(message, options = true) {
+        var _a7;
+        let logger;
+        let tryNextLink = true;
+        if (typeof options === "boolean") {
+          logger = void 0;
+          tryNextLink = options;
+        } else if (options != null && typeof options === "object") {
+          logger = options.logger;
+          tryNextLink = options.tryNextLink ?? true;
+        }
+        super(message);
+        this.name = "ProviderError";
+        this.tryNextLink = tryNextLink;
+        Object.setPrototypeOf(this, _ProviderError2.prototype);
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `@smithy/property-provider ${tryNextLink ? "->" : "(!)"} ${message}`);
+      }
+      /**
+       * @deprecated use new operator.
+       */
+      static from(error, options = true) {
+        return Object.assign(new this(error.message, options), error);
+      }
+    };
+    __name2(_ProviderError, "ProviderError");
+    var ProviderError2 = _ProviderError;
+    var _CredentialsProviderError = class _CredentialsProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "CredentialsProviderError";
+        Object.setPrototypeOf(this, _CredentialsProviderError2.prototype);
+      }
+    };
+    __name2(_CredentialsProviderError, "CredentialsProviderError");
+    var CredentialsProviderError = _CredentialsProviderError;
+    var _TokenProviderError = class _TokenProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "TokenProviderError";
+        Object.setPrototypeOf(this, _TokenProviderError2.prototype);
+      }
+    };
+    __name2(_TokenProviderError, "TokenProviderError");
+    var TokenProviderError = _TokenProviderError;
+    var chain = /* @__PURE__ */ __name2((...providers) => async () => {
+      if (providers.length === 0) {
+        throw new ProviderError2("No providers in chain");
+      }
+      let lastProviderError;
+      for (const provider of providers) {
+        try {
+          const credentials = await provider();
+          return credentials;
+        } catch (err) {
+          lastProviderError = err;
+          if (err == null ? void 0 : err.tryNextLink) {
+            continue;
+          }
+          throw err;
+        }
+      }
+      throw lastProviderError;
+    }, "chain");
+    var fromStatic = /* @__PURE__ */ __name2((staticValue) => () => Promise.resolve(staticValue), "fromStatic");
+    var memoize = /* @__PURE__ */ __name2((provider, isExpired, requiresRefresh) => {
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = /* @__PURE__ */ __name2(async () => {
+        if (!pending) {
+          pending = provider();
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      }, "coalesceProvider");
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+            resolved = await coalesceProvider();
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+          resolved = await coalesceProvider();
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (requiresRefresh && !requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider();
+          return resolved;
+        }
+        return resolved;
+      };
+    }, "memoize");
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js
+var require_getHomeDir = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getHomeDir = void 0;
+    var os_1 = require("os");
+    var path_1 = require("path");
+    var homeDirCache = {};
+    var getHomeDirCacheKey = () => {
+      if (process && process.geteuid) {
+        return `${process.geteuid()}`;
+      }
+      return "DEFAULT";
+    };
+    var getHomeDir2 = () => {
+      const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env;
+      if (HOME)
+        return HOME;
+      if (USERPROFILE)
+        return USERPROFILE;
+      if (HOMEPATH)
+        return `${HOMEDRIVE}${HOMEPATH}`;
+      const homeDirCacheKey = getHomeDirCacheKey();
+      if (!homeDirCache[homeDirCacheKey])
+        homeDirCache[homeDirCacheKey] = (0, os_1.homedir)();
+      return homeDirCache[homeDirCacheKey];
+    };
+    exports2.getHomeDir = getHomeDir2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js
+var require_getSSOTokenFilepath = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFilepath = void 0;
+    var crypto_1 = require("crypto");
+    var path_1 = require("path");
+    var getHomeDir_1 = require_getHomeDir();
+    var getSSOTokenFilepath2 = (id) => {
+      const hasher = (0, crypto_1.createHash)("sha1");
+      const cacheName = hasher.update(id).digest("hex");
+      return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`);
+    };
+    exports2.getSSOTokenFilepath = getSSOTokenFilepath2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js
+var require_getSSOTokenFromFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFromFile = void 0;
+    var fs_1 = require("fs");
+    var getSSOTokenFilepath_1 = require_getSSOTokenFilepath();
+    var { readFile } = fs_1.promises;
+    var getSSOTokenFromFile2 = async (id) => {
+      const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id);
+      const ssoTokenText = await readFile(ssoTokenFilepath, "utf8");
+      return JSON.parse(ssoTokenText);
+    };
+    exports2.getSSOTokenFromFile = getSSOTokenFromFile2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js
+var require_slurpFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.slurpFile = void 0;
+    var fs_1 = require("fs");
+    var { readFile } = fs_1.promises;
+    var filePromisesHash = {};
+    var slurpFile = (path23, options) => {
+      if (!filePromisesHash[path23] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) {
+        filePromisesHash[path23] = readFile(path23, "utf8");
+      }
+      return filePromisesHash[path23];
+    };
+    exports2.slurpFile = slurpFile;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js
+var require_dist_cjs25 = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR,
+      DEFAULT_PROFILE: () => DEFAULT_PROFILE,
+      ENV_PROFILE: () => ENV_PROFILE,
+      getProfileName: () => getProfileName,
+      loadSharedConfigFiles: () => loadSharedConfigFiles,
+      loadSsoSessionData: () => loadSsoSessionData,
+      parseKnownFiles: () => parseKnownFiles
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_getHomeDir(), module2.exports);
+    var ENV_PROFILE = "AWS_PROFILE";
+    var DEFAULT_PROFILE = "default";
+    var getProfileName = /* @__PURE__ */ __name2((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName");
+    __reExport2(src_exports, require_getSSOTokenFilepath(), module2.exports);
+    __reExport2(src_exports, require_getSSOTokenFromFile(), module2.exports);
+    var import_types8 = require_dist_cjs();
+    var getConfigData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => {
+      const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+      if (indexOfSeparator === -1) {
+        return false;
+      }
+      return Object.values(import_types8.IniSectionType).includes(key.substring(0, indexOfSeparator));
+    }).reduce(
+      (acc, [key, value]) => {
+        const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+        const updatedKey = key.substring(0, indexOfSeparator) === import_types8.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;
+        acc[updatedKey] = value;
+        return acc;
+      },
+      {
+        // Populate default profile, if present.
+        ...data.default && { default: data.default }
+      }
+    ), "getConfigData");
+    var import_path3 = require("path");
+    var import_getHomeDir = require_getHomeDir();
+    var ENV_CONFIG_PATH = "AWS_CONFIG_FILE";
+    var getConfigFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CONFIG_PATH] || (0, import_path3.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath");
+    var import_getHomeDir2 = require_getHomeDir();
+    var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE";
+    var getCredentialsFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path3.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath");
+    var import_getHomeDir3 = require_getHomeDir();
+    var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/;
+    var profileNameBlockList = ["__proto__", "profile __proto__"];
+    var parseIni = /* @__PURE__ */ __name2((iniData) => {
+      const map = {};
+      let currentSection;
+      let currentSubSection;
+      for (const iniLine of iniData.split(/\r?\n/)) {
+        const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim();
+        const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]";
+        if (isSection) {
+          currentSection = void 0;
+          currentSubSection = void 0;
+          const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);
+          const matches = prefixKeyRegex.exec(sectionName);
+          if (matches) {
+            const [, prefix, , name] = matches;
+            if (Object.values(import_types8.IniSectionType).includes(prefix)) {
+              currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);
+            }
+          } else {
+            currentSection = sectionName;
+          }
+          if (profileNameBlockList.includes(sectionName)) {
+            throw new Error(`Found invalid profile name "${sectionName}"`);
+          }
+        } else if (currentSection) {
+          const indexOfEqualsSign = trimmedLine.indexOf("=");
+          if (![0, -1].includes(indexOfEqualsSign)) {
+            const [name, value] = [
+              trimmedLine.substring(0, indexOfEqualsSign).trim(),
+              trimmedLine.substring(indexOfEqualsSign + 1).trim()
+            ];
+            if (value === "") {
+              currentSubSection = name;
+            } else {
+              if (currentSubSection && iniLine.trimStart() === iniLine) {
+                currentSubSection = void 0;
+              }
+              map[currentSection] = map[currentSection] || {};
+              const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;
+              map[currentSection][key] = value;
+            }
+          }
+        }
+      }
+      return map;
+    }, "parseIni");
+    var import_slurpFile = require_slurpFile();
+    var swallowError = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var CONFIG_PREFIX_SEPARATOR = ".";
+    var loadSharedConfigFiles = /* @__PURE__ */ __name2(async (init = {}) => {
+      const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;
+      const homeDir = (0, import_getHomeDir3.getHomeDir)();
+      const relativeHomeDirPrefix = "~/";
+      let resolvedFilepath = filepath;
+      if (filepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedFilepath = (0, import_path3.join)(homeDir, filepath.slice(2));
+      }
+      let resolvedConfigFilepath = configFilepath;
+      if (configFilepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedConfigFilepath = (0, import_path3.join)(homeDir, configFilepath.slice(2));
+      }
+      const parsedFiles = await Promise.all([
+        (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).then(getConfigData).catch(swallowError),
+        (0, import_slurpFile.slurpFile)(resolvedFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).catch(swallowError)
+      ]);
+      return {
+        configFile: parsedFiles[0],
+        credentialsFile: parsedFiles[1]
+      };
+    }, "loadSharedConfigFiles");
+    var getSsoSessionData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types8.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData");
+    var import_slurpFile2 = require_slurpFile();
+    var swallowError2 = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var loadSsoSessionData = /* @__PURE__ */ __name2(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData");
+    var mergeConfigFiles = /* @__PURE__ */ __name2((...files) => {
+      const merged = {};
+      for (const file of files) {
+        for (const [key, values] of Object.entries(file)) {
+          if (merged[key] !== void 0) {
+            Object.assign(merged[key], values);
+          } else {
+            merged[key] = values;
+          }
+        }
+      }
+      return merged;
+    }, "mergeConfigFiles");
+    var parseKnownFiles = /* @__PURE__ */ __name2(async (init) => {
+      const parsedFiles = await loadSharedConfigFiles(init);
+      return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);
+    }, "parseKnownFiles");
+  }
+});
+
+// ../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js
+var require_dist_cjs26 = __commonJS({
+  "../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      loadConfig: () => loadConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    function getSelectorName(functionString) {
+      try {
+        const constants2 = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? []));
+        constants2.delete("CONFIG");
+        constants2.delete("CONFIG_PREFIX_SEPARATOR");
+        constants2.delete("ENV");
+        return [...constants2].join(", ");
+      } catch (e) {
+        return functionString;
+      }
+    }
+    __name2(getSelectorName, "getSelectorName");
+    var fromEnv = /* @__PURE__ */ __name2((envVarSelector, logger) => async () => {
+      try {
+        const config = envVarSelector(process.env);
+        if (config === void 0) {
+          throw new Error();
+        }
+        return config;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`,
+          { logger }
+        );
+      }
+    }, "fromEnv");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var fromSharedConfigFiles = /* @__PURE__ */ __name2((configSelector, { preferredFile = "config", ...init } = {}) => async () => {
+      const profile = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init);
+      const profileFromCredentials = credentialsFile[profile] || {};
+      const profileFromConfig = configFile[profile] || {};
+      const mergedProfile = preferredFile === "config" ? { ...profileFromCredentials, ...profileFromConfig } : { ...profileFromConfig, ...profileFromCredentials };
+      try {
+        const cfgFile = preferredFile === "config" ? configFile : credentialsFile;
+        const configValue = configSelector(mergedProfile, cfgFile);
+        if (configValue === void 0) {
+          throw new Error();
+        }
+        return configValue;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`,
+          { logger: init.logger }
+        );
+      }
+    }, "fromSharedConfigFiles");
+    var isFunction2 = /* @__PURE__ */ __name2((func) => typeof func === "function", "isFunction");
+    var fromStatic = /* @__PURE__ */ __name2((defaultValue) => isFunction2(defaultValue) ? async () => await defaultValue() : (0, import_property_provider2.fromStatic)(defaultValue), "fromStatic");
+    var loadConfig = /* @__PURE__ */ __name2(({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        fromEnv(environmentVariableSelector),
+        fromSharedConfigFiles(configFileSelector, configuration),
+        fromStatic(defaultValue)
+      )
+    ), "loadConfig");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js
+var require_getEndpointUrlConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointUrlConfig = void 0;
+    var shared_ini_file_loader_1 = require_dist_cjs25();
+    var ENV_ENDPOINT_URL = "AWS_ENDPOINT_URL";
+    var CONFIG_ENDPOINT_URL = "endpoint_url";
+    var getEndpointUrlConfig = (serviceId) => ({
+      environmentVariableSelector: (env2) => {
+        const serviceSuffixParts = serviceId.split(" ").map((w) => w.toUpperCase());
+        const serviceEndpointUrl = env2[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join("_")];
+        if (serviceEndpointUrl)
+          return serviceEndpointUrl;
+        const endpointUrl = env2[ENV_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      configFileSelector: (profile, config) => {
+        if (config && profile.services) {
+          const servicesSection = config[["services", profile.services].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+          if (servicesSection) {
+            const servicePrefixParts = serviceId.split(" ").map((w) => w.toLowerCase());
+            const endpointUrl2 = servicesSection[[servicePrefixParts.join("_"), CONFIG_ENDPOINT_URL].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+            if (endpointUrl2)
+              return endpointUrl2;
+          }
+        }
+        const endpointUrl = profile[CONFIG_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      default: void 0
+    });
+    exports2.getEndpointUrlConfig = getEndpointUrlConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js
+var require_getEndpointFromConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointFromConfig = void 0;
+    var node_config_provider_1 = require_dist_cjs26();
+    var getEndpointUrlConfig_1 = require_getEndpointUrlConfig();
+    var getEndpointFromConfig = async (serviceId) => (0, node_config_provider_1.loadConfig)((0, getEndpointUrlConfig_1.getEndpointUrlConfig)(serviceId !== null && serviceId !== void 0 ? serviceId : ""))();
+    exports2.getEndpointFromConfig = getEndpointFromConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js
+var require_dist_cjs27 = __commonJS({
+  "../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseQueryString: () => parseQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function parseQueryString(querystring) {
+      const query = {};
+      querystring = querystring.replace(/^\?/, "");
+      if (querystring) {
+        for (const pair of querystring.split("&")) {
+          let [key, value = null] = pair.split("=");
+          key = decodeURIComponent(key);
+          if (value) {
+            value = decodeURIComponent(value);
+          }
+          if (!(key in query)) {
+            query[key] = value;
+          } else if (Array.isArray(query[key])) {
+            query[key].push(value);
+          } else {
+            query[key] = [query[key], value];
+          }
+        }
+      }
+      return query;
+    }
+    __name2(parseQueryString, "parseQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/url-parser/dist-cjs/index.js
+var require_dist_cjs28 = __commonJS({
+  "../../../node_modules/@smithy/url-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseUrl: () => parseUrl
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_querystring_parser = require_dist_cjs27();
+    var parseUrl = /* @__PURE__ */ __name2((url2) => {
+      if (typeof url2 === "string") {
+        return parseUrl(new URL(url2));
+      }
+      const { hostname, pathname, port, protocol, search } = url2;
+      let query;
+      if (search) {
+        query = (0, import_querystring_parser.parseQueryString)(search);
+      }
+      return {
+        hostname,
+        port: port ? parseInt(port) : void 0,
+        protocol,
+        path: pathname,
+        query
+      };
+    }, "parseUrl");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js
+var require_dist_cjs29 = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      endpointMiddleware: () => endpointMiddleware,
+      endpointMiddlewareOptions: () => endpointMiddlewareOptions,
+      getEndpointFromInstructions: () => getEndpointFromInstructions,
+      getEndpointPlugin: () => getEndpointPlugin,
+      resolveEndpointConfig: () => resolveEndpointConfig,
+      resolveParams: () => resolveParams,
+      toEndpointV1: () => toEndpointV1
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var resolveParamsForS3 = /* @__PURE__ */ __name2(async (endpointParams) => {
+      const bucket = (endpointParams == null ? void 0 : endpointParams.Bucket) || "";
+      if (typeof endpointParams.Bucket === "string") {
+        endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent("#")).replace(/\?/g, encodeURIComponent("?"));
+      }
+      if (isArnBucketName(bucket)) {
+        if (endpointParams.ForcePathStyle === true) {
+          throw new Error("Path-style addressing cannot be used with ARN buckets");
+        }
+      } else if (!isDnsCompatibleBucketName(bucket) || bucket.indexOf(".") !== -1 && !String(endpointParams.Endpoint).startsWith("http:") || bucket.toLowerCase() !== bucket || bucket.length < 3) {
+        endpointParams.ForcePathStyle = true;
+      }
+      if (endpointParams.DisableMultiRegionAccessPoints) {
+        endpointParams.disableMultiRegionAccessPoints = true;
+        endpointParams.DisableMRAP = true;
+      }
+      return endpointParams;
+    }, "resolveParamsForS3");
+    var DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/;
+    var IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/;
+    var DOTS_PATTERN = /\.\./;
+    var isDnsCompatibleBucketName = /* @__PURE__ */ __name2((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), "isDnsCompatibleBucketName");
+    var isArnBucketName = /* @__PURE__ */ __name2((bucketName) => {
+      const [arn, partition, service, , , bucket] = bucketName.split(":");
+      const isArn = arn === "arn" && bucketName.split(":").length >= 6;
+      const isValidArn = Boolean(isArn && partition && service && bucket);
+      if (isArn && !isValidArn) {
+        throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);
+      }
+      return isValidArn;
+    }, "isArnBucketName");
+    var createConfigValueProvider = /* @__PURE__ */ __name2((configKey, canonicalEndpointParamKey, config) => {
+      const configProvider = /* @__PURE__ */ __name2(async () => {
+        const configValue = config[configKey] ?? config[canonicalEndpointParamKey];
+        if (typeof configValue === "function") {
+          return configValue();
+        }
+        return configValue;
+      }, "configProvider");
+      if (configKey === "credentialScope" || canonicalEndpointParamKey === "CredentialScope") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.credentialScope) ?? (credentials == null ? void 0 : credentials.CredentialScope);
+          return configValue;
+        };
+      }
+      if (configKey === "accountId" || canonicalEndpointParamKey === "AccountId") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.accountId) ?? (credentials == null ? void 0 : credentials.AccountId);
+          return configValue;
+        };
+      }
+      if (configKey === "endpoint" || canonicalEndpointParamKey === "endpoint") {
+        return async () => {
+          const endpoint = await configProvider();
+          if (endpoint && typeof endpoint === "object") {
+            if ("url" in endpoint) {
+              return endpoint.url.href;
+            }
+            if ("hostname" in endpoint) {
+              const { protocol, hostname, port, path: path23 } = endpoint;
+              return `${protocol}//${hostname}${port ? ":" + port : ""}${path23}`;
+            }
+          }
+          return endpoint;
+        };
+      }
+      return configProvider;
+    }, "createConfigValueProvider");
+    var import_getEndpointFromConfig = require_getEndpointFromConfig();
+    var import_url_parser = require_dist_cjs28();
+    var toEndpointV1 = /* @__PURE__ */ __name2((endpoint) => {
+      if (typeof endpoint === "object") {
+        if ("url" in endpoint) {
+          return (0, import_url_parser.parseUrl)(endpoint.url);
+        }
+        return endpoint;
+      }
+      return (0, import_url_parser.parseUrl)(endpoint);
+    }, "toEndpointV1");
+    var getEndpointFromInstructions = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig, context) => {
+      if (!clientConfig.endpoint) {
+        let endpointFromConfig;
+        if (clientConfig.serviceConfiguredEndpoint) {
+          endpointFromConfig = await clientConfig.serviceConfiguredEndpoint();
+        } else {
+          endpointFromConfig = await (0, import_getEndpointFromConfig.getEndpointFromConfig)(clientConfig.serviceId);
+        }
+        if (endpointFromConfig) {
+          clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));
+        }
+      }
+      const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);
+      if (typeof clientConfig.endpointProvider !== "function") {
+        throw new Error("config.endpointProvider is not set.");
+      }
+      const endpoint = clientConfig.endpointProvider(endpointParams, context);
+      return endpoint;
+    }, "getEndpointFromInstructions");
+    var resolveParams = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig) => {
+      var _a7;
+      const endpointParams = {};
+      const instructions = ((_a7 = instructionsSupplier == null ? void 0 : instructionsSupplier.getEndpointParameterInstructions) == null ? void 0 : _a7.call(instructionsSupplier)) || {};
+      for (const [name, instruction] of Object.entries(instructions)) {
+        switch (instruction.type) {
+          case "staticContextParams":
+            endpointParams[name] = instruction.value;
+            break;
+          case "contextParams":
+            endpointParams[name] = commandInput[instruction.name];
+            break;
+          case "clientContextParams":
+          case "builtInParams":
+            endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();
+            break;
+          case "operationContextParams":
+            endpointParams[name] = instruction.get(commandInput);
+            break;
+          default:
+            throw new Error("Unrecognized endpoint parameter instruction: " + JSON.stringify(instruction));
+        }
+      }
+      if (Object.keys(instructions).length === 0) {
+        Object.assign(endpointParams, clientConfig);
+      }
+      if (String(clientConfig.serviceId).toLowerCase() === "s3") {
+        await resolveParamsForS3(endpointParams);
+      }
+      return endpointParams;
+    }, "resolveParams");
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_util_middleware3 = require_dist_cjs10();
+    var endpointMiddleware = /* @__PURE__ */ __name2(({
+      config,
+      instructions
+    }) => {
+      return (next, context) => async (args) => {
+        var _a7, _b, _c;
+        if (config.endpoint) {
+          (0, import_core4.setFeature)(context, "ENDPOINT_OVERRIDE", "N");
+        }
+        const endpoint = await getEndpointFromInstructions(
+          args.input,
+          {
+            getEndpointParameterInstructions() {
+              return instructions;
+            }
+          },
+          { ...config },
+          context
+        );
+        context.endpointV2 = endpoint;
+        context.authSchemes = (_a7 = endpoint.properties) == null ? void 0 : _a7.authSchemes;
+        const authScheme = (_b = context.authSchemes) == null ? void 0 : _b[0];
+        if (authScheme) {
+          context["signing_region"] = authScheme.signingRegion;
+          context["signing_service"] = authScheme.signingName;
+          const smithyContext = (0, import_util_middleware3.getSmithyContext)(context);
+          const httpAuthOption = (_c = smithyContext == null ? void 0 : smithyContext.selectedHttpAuthScheme) == null ? void 0 : _c.httpAuthOption;
+          if (httpAuthOption) {
+            httpAuthOption.signingProperties = Object.assign(
+              httpAuthOption.signingProperties || {},
+              {
+                signing_region: authScheme.signingRegion,
+                signingRegion: authScheme.signingRegion,
+                signing_service: authScheme.signingName,
+                signingName: authScheme.signingName,
+                signingRegionSet: authScheme.signingRegionSet
+              },
+              authScheme.properties
+            );
+          }
+        }
+        return next({
+          ...args
+        });
+      };
+    }, "endpointMiddleware");
+    var import_middleware_serde2 = require_dist_cjs12();
+    var endpointMiddlewareOptions = {
+      step: "serialize",
+      tags: ["ENDPOINT_PARAMETERS", "ENDPOINT_V2", "ENDPOINT"],
+      name: "endpointV2Middleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde2.serializerMiddlewareOption.name
+    };
+    var getEndpointPlugin = /* @__PURE__ */ __name2((config, instructions) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(
+          endpointMiddleware({
+            config,
+            instructions
+          }),
+          endpointMiddlewareOptions
+        );
+      }
+    }), "getEndpointPlugin");
+    var import_getEndpointFromConfig2 = require_getEndpointFromConfig();
+    var resolveEndpointConfig = /* @__PURE__ */ __name2((input) => {
+      const tls = input.tls ?? true;
+      const { endpoint } = input;
+      const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await (0, import_util_middleware3.normalizeProvider)(endpoint)()) : void 0;
+      const isCustomEndpoint = !!endpoint;
+      const resolvedConfig = {
+        ...input,
+        endpoint: customEndpointProvider,
+        tls,
+        isCustomEndpoint,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false),
+        useFipsEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useFipsEndpoint ?? false)
+      };
+      let configuredEndpointPromise = void 0;
+      resolvedConfig.serviceConfiguredEndpoint = async () => {
+        if (input.serviceId && !configuredEndpointPromise) {
+          configuredEndpointPromise = (0, import_getEndpointFromConfig2.getEndpointFromConfig)(input.serviceId);
+        }
+        return configuredEndpointPromise;
+      };
+      return resolvedConfig;
+    }, "resolveEndpointConfig");
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/rng.js
+function rng() {
+  if (poolPtr > rnds8Pool.length - 16) {
+    import_crypto.default.randomFillSync(rnds8Pool);
+    poolPtr = 0;
+  }
+  return rnds8Pool.slice(poolPtr, poolPtr += 16);
+}
+var import_crypto, rnds8Pool, poolPtr;
+var init_rng = __esm({
+  "../../../node_modules/uuid/dist/esm-node/rng.js"() {
+    import_crypto = __toESM(require("crypto"));
+    rnds8Pool = new Uint8Array(256);
+    poolPtr = rnds8Pool.length;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/regex.js
+var regex_default;
+var init_regex = __esm({
+  "../../../node_modules/uuid/dist/esm-node/regex.js"() {
+    regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/validate.js
+function validate(uuid) {
+  return typeof uuid === "string" && regex_default.test(uuid);
+}
+var validate_default;
+var init_validate = __esm({
+  "../../../node_modules/uuid/dist/esm-node/validate.js"() {
+    init_regex();
+    validate_default = validate;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/stringify.js
+function unsafeStringify(arr, offset = 0) {
+  return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
+}
+function stringify2(arr, offset = 0) {
+  const uuid = unsafeStringify(arr, offset);
+  if (!validate_default(uuid)) {
+    throw TypeError("Stringified UUID is invalid");
+  }
+  return uuid;
+}
+var byteToHex, stringify_default;
+var init_stringify = __esm({
+  "../../../node_modules/uuid/dist/esm-node/stringify.js"() {
+    init_validate();
+    byteToHex = [];
+    for (let i = 0; i < 256; ++i) {
+      byteToHex.push((i + 256).toString(16).slice(1));
+    }
+    stringify_default = stringify2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v1.js
+function v1(options, buf, offset) {
+  let i = buf && offset || 0;
+  const b = buf || new Array(16);
+  options = options || {};
+  let node = options.node || _nodeId;
+  let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq;
+  if (node == null || clockseq == null) {
+    const seedBytes = options.random || (options.rng || rng)();
+    if (node == null) {
+      node = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]];
+    }
+    if (clockseq == null) {
+      clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383;
+    }
+  }
+  let msecs = options.msecs !== void 0 ? options.msecs : Date.now();
+  let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1;
+  const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4;
+  if (dt < 0 && options.clockseq === void 0) {
+    clockseq = clockseq + 1 & 16383;
+  }
+  if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) {
+    nsecs = 0;
+  }
+  if (nsecs >= 1e4) {
+    throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");
+  }
+  _lastMSecs = msecs;
+  _lastNSecs = nsecs;
+  _clockseq = clockseq;
+  msecs += 122192928e5;
+  const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296;
+  b[i++] = tl >>> 24 & 255;
+  b[i++] = tl >>> 16 & 255;
+  b[i++] = tl >>> 8 & 255;
+  b[i++] = tl & 255;
+  const tmh = msecs / 4294967296 * 1e4 & 268435455;
+  b[i++] = tmh >>> 8 & 255;
+  b[i++] = tmh & 255;
+  b[i++] = tmh >>> 24 & 15 | 16;
+  b[i++] = tmh >>> 16 & 255;
+  b[i++] = clockseq >>> 8 | 128;
+  b[i++] = clockseq & 255;
+  for (let n = 0; n < 6; ++n) {
+    b[i + n] = node[n];
+  }
+  return buf || unsafeStringify(b);
+}
+var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default;
+var init_v1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v1.js"() {
+    init_rng();
+    init_stringify();
+    _lastMSecs = 0;
+    _lastNSecs = 0;
+    v1_default = v1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/parse.js
+function parse(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  let v;
+  const arr = new Uint8Array(16);
+  arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;
+  arr[1] = v >>> 16 & 255;
+  arr[2] = v >>> 8 & 255;
+  arr[3] = v & 255;
+  arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8;
+  arr[5] = v & 255;
+  arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8;
+  arr[7] = v & 255;
+  arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8;
+  arr[9] = v & 255;
+  arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255;
+  arr[11] = v / 4294967296 & 255;
+  arr[12] = v >>> 24 & 255;
+  arr[13] = v >>> 16 & 255;
+  arr[14] = v >>> 8 & 255;
+  arr[15] = v & 255;
+  return arr;
+}
+var parse_default;
+var init_parse = __esm({
+  "../../../node_modules/uuid/dist/esm-node/parse.js"() {
+    init_validate();
+    parse_default = parse;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v35.js
+function stringToBytes(str) {
+  str = unescape(encodeURIComponent(str));
+  const bytes = [];
+  for (let i = 0; i < str.length; ++i) {
+    bytes.push(str.charCodeAt(i));
+  }
+  return bytes;
+}
+function v35(name, version3, hashfunc) {
+  function generateUUID(value, namespace, buf, offset) {
+    var _namespace;
+    if (typeof value === "string") {
+      value = stringToBytes(value);
+    }
+    if (typeof namespace === "string") {
+      namespace = parse_default(namespace);
+    }
+    if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) {
+      throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");
+    }
+    let bytes = new Uint8Array(16 + value.length);
+    bytes.set(namespace);
+    bytes.set(value, namespace.length);
+    bytes = hashfunc(bytes);
+    bytes[6] = bytes[6] & 15 | version3;
+    bytes[8] = bytes[8] & 63 | 128;
+    if (buf) {
+      offset = offset || 0;
+      for (let i = 0; i < 16; ++i) {
+        buf[offset + i] = bytes[i];
+      }
+      return buf;
+    }
+    return unsafeStringify(bytes);
+  }
+  try {
+    generateUUID.name = name;
+  } catch (err) {
+  }
+  generateUUID.DNS = DNS;
+  generateUUID.URL = URL2;
+  return generateUUID;
+}
+var DNS, URL2;
+var init_v35 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v35.js"() {
+    init_stringify();
+    init_parse();
+    DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8";
+    URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/md5.js
+function md5(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto2.default.createHash("md5").update(bytes).digest();
+}
+var import_crypto2, md5_default;
+var init_md52 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/md5.js"() {
+    import_crypto2 = __toESM(require("crypto"));
+    md5_default = md5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v3.js
+var v3, v3_default;
+var init_v3 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v3.js"() {
+    init_v35();
+    init_md52();
+    v3 = v35("v3", 48, md5_default);
+    v3_default = v3;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/native.js
+var import_crypto3, native_default;
+var init_native = __esm({
+  "../../../node_modules/uuid/dist/esm-node/native.js"() {
+    import_crypto3 = __toESM(require("crypto"));
+    native_default = {
+      randomUUID: import_crypto3.default.randomUUID
+    };
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v4.js
+function v4(options, buf, offset) {
+  if (native_default.randomUUID && !buf && !options) {
+    return native_default.randomUUID();
+  }
+  options = options || {};
+  const rnds = options.random || (options.rng || rng)();
+  rnds[6] = rnds[6] & 15 | 64;
+  rnds[8] = rnds[8] & 63 | 128;
+  if (buf) {
+    offset = offset || 0;
+    for (let i = 0; i < 16; ++i) {
+      buf[offset + i] = rnds[i];
+    }
+    return buf;
+  }
+  return unsafeStringify(rnds);
+}
+var v4_default;
+var init_v4 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v4.js"() {
+    init_native();
+    init_rng();
+    init_stringify();
+    v4_default = v4;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/sha1.js
+function sha1(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto4.default.createHash("sha1").update(bytes).digest();
+}
+var import_crypto4, sha1_default;
+var init_sha1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/sha1.js"() {
+    import_crypto4 = __toESM(require("crypto"));
+    sha1_default = sha1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v5.js
+var v5, v5_default;
+var init_v5 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v5.js"() {
+    init_v35();
+    init_sha1();
+    v5 = v35("v5", 80, sha1_default);
+    v5_default = v5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/nil.js
+var nil_default;
+var init_nil = __esm({
+  "../../../node_modules/uuid/dist/esm-node/nil.js"() {
+    nil_default = "00000000-0000-0000-0000-000000000000";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/version.js
+function version2(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  return parseInt(uuid.slice(14, 15), 16);
+}
+var version_default;
+var init_version = __esm({
+  "../../../node_modules/uuid/dist/esm-node/version.js"() {
+    init_validate();
+    version_default = version2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/index.js
+var esm_node_exports = {};
+__export(esm_node_exports, {
+  NIL: () => nil_default,
+  parse: () => parse_default,
+  stringify: () => stringify_default,
+  v1: () => v1_default,
+  v3: () => v3_default,
+  v4: () => v4_default,
+  v5: () => v5_default,
+  validate: () => validate_default,
+  version: () => version_default
+});
+var init_esm_node = __esm({
+  "../../../node_modules/uuid/dist/esm-node/index.js"() {
+    init_v1();
+    init_v3();
+    init_v4();
+    init_v5();
+    init_nil();
+    init_version();
+    init_validate();
+    init_stringify();
+    init_parse();
+  }
+});
+
+// ../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js
+var require_dist_cjs30 = __commonJS({
+  "../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isClockSkewCorrectedError: () => isClockSkewCorrectedError,
+      isClockSkewError: () => isClockSkewError,
+      isRetryableByTrait: () => isRetryableByTrait,
+      isServerError: () => isServerError,
+      isThrottlingError: () => isThrottlingError,
+      isTransientError: () => isTransientError
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var CLOCK_SKEW_ERROR_CODES = [
+      "AuthFailure",
+      "InvalidSignatureException",
+      "RequestExpired",
+      "RequestInTheFuture",
+      "RequestTimeTooSkewed",
+      "SignatureDoesNotMatch"
+    ];
+    var THROTTLING_ERROR_CODES = [
+      "BandwidthLimitExceeded",
+      "EC2ThrottledException",
+      "LimitExceededException",
+      "PriorRequestNotComplete",
+      "ProvisionedThroughputExceededException",
+      "RequestLimitExceeded",
+      "RequestThrottled",
+      "RequestThrottledException",
+      "SlowDown",
+      "ThrottledException",
+      "Throttling",
+      "ThrottlingException",
+      "TooManyRequestsException",
+      "TransactionInProgressException"
+      // DynamoDB
+    ];
+    var TRANSIENT_ERROR_CODES = ["TimeoutError", "RequestTimeout", "RequestTimeoutException"];
+    var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"];
+    var isRetryableByTrait = /* @__PURE__ */ __name2((error) => error.$retryable !== void 0, "isRetryableByTrait");
+    var isClockSkewError = /* @__PURE__ */ __name2((error) => CLOCK_SKEW_ERROR_CODES.includes(error.name), "isClockSkewError");
+    var isClockSkewCorrectedError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      return (_a7 = error.$metadata) == null ? void 0 : _a7.clockSkewCorrected;
+    }, "isClockSkewCorrectedError");
+    var isThrottlingError = /* @__PURE__ */ __name2((error) => {
+      var _a7, _b;
+      return ((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) === 429 || THROTTLING_ERROR_CODES.includes(error.name) || ((_b = error.$retryable) == null ? void 0 : _b.throttling) == true;
+    }, "isThrottlingError");
+    var isTransientError = /* @__PURE__ */ __name2((error, depth = 0) => {
+      var _a7;
+      return isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || "") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) || 0) || error.cause !== void 0 && depth <= 10 && isTransientError(error.cause, depth + 1);
+    }, "isTransientError");
+    var isServerError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      if (((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) !== void 0) {
+        const statusCode = error.$metadata.httpStatusCode;
+        if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {
+          return true;
+        }
+        return false;
+      }
+      return false;
+    }, "isServerError");
+  }
+});
+
+// ../../../node_modules/@smithy/util-retry/dist-cjs/index.js
+var require_dist_cjs31 = __commonJS({
+  "../../../node_modules/@smithy/util-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      ConfiguredRetryStrategy: () => ConfiguredRetryStrategy,
+      DEFAULT_MAX_ATTEMPTS: () => DEFAULT_MAX_ATTEMPTS,
+      DEFAULT_RETRY_DELAY_BASE: () => DEFAULT_RETRY_DELAY_BASE,
+      DEFAULT_RETRY_MODE: () => DEFAULT_RETRY_MODE,
+      DefaultRateLimiter: () => DefaultRateLimiter,
+      INITIAL_RETRY_TOKENS: () => INITIAL_RETRY_TOKENS,
+      INVOCATION_ID_HEADER: () => INVOCATION_ID_HEADER,
+      MAXIMUM_RETRY_DELAY: () => MAXIMUM_RETRY_DELAY,
+      NO_RETRY_INCREMENT: () => NO_RETRY_INCREMENT,
+      REQUEST_HEADER: () => REQUEST_HEADER,
+      RETRY_COST: () => RETRY_COST,
+      RETRY_MODES: () => RETRY_MODES,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      THROTTLING_RETRY_DELAY_BASE: () => THROTTLING_RETRY_DELAY_BASE,
+      TIMEOUT_RETRY_COST: () => TIMEOUT_RETRY_COST
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var RETRY_MODES = /* @__PURE__ */ ((RETRY_MODES2) => {
+      RETRY_MODES2["STANDARD"] = "standard";
+      RETRY_MODES2["ADAPTIVE"] = "adaptive";
+      return RETRY_MODES2;
+    })(RETRY_MODES || {});
+    var DEFAULT_MAX_ATTEMPTS = 3;
+    var DEFAULT_RETRY_MODE = "standard";
+    var import_service_error_classification = require_dist_cjs30();
+    var _DefaultRateLimiter = class _DefaultRateLimiter2 {
+      constructor(options) {
+        this.currentCapacity = 0;
+        this.enabled = false;
+        this.lastMaxRate = 0;
+        this.measuredTxRate = 0;
+        this.requestCount = 0;
+        this.lastTimestamp = 0;
+        this.timeWindow = 0;
+        this.beta = (options == null ? void 0 : options.beta) ?? 0.7;
+        this.minCapacity = (options == null ? void 0 : options.minCapacity) ?? 1;
+        this.minFillRate = (options == null ? void 0 : options.minFillRate) ?? 0.5;
+        this.scaleConstant = (options == null ? void 0 : options.scaleConstant) ?? 0.4;
+        this.smooth = (options == null ? void 0 : options.smooth) ?? 0.8;
+        const currentTimeInSeconds = this.getCurrentTimeInSeconds();
+        this.lastThrottleTime = currentTimeInSeconds;
+        this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());
+        this.fillRate = this.minFillRate;
+        this.maxCapacity = this.minCapacity;
+      }
+      getCurrentTimeInSeconds() {
+        return Date.now() / 1e3;
+      }
+      async getSendToken() {
+        return this.acquireTokenBucket(1);
+      }
+      async acquireTokenBucket(amount) {
+        if (!this.enabled) {
+          return;
+        }
+        this.refillTokenBucket();
+        if (amount > this.currentCapacity) {
+          const delay = (amount - this.currentCapacity) / this.fillRate * 1e3;
+          await new Promise((resolve6) => _DefaultRateLimiter2.setTimeoutFn(resolve6, delay));
+        }
+        this.currentCapacity = this.currentCapacity - amount;
+      }
+      refillTokenBucket() {
+        const timestamp = this.getCurrentTimeInSeconds();
+        if (!this.lastTimestamp) {
+          this.lastTimestamp = timestamp;
+          return;
+        }
+        const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;
+        this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);
+        this.lastTimestamp = timestamp;
+      }
+      updateClientSendingRate(response) {
+        let calculatedRate;
+        this.updateMeasuredRate();
+        if ((0, import_service_error_classification.isThrottlingError)(response)) {
+          const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);
+          this.lastMaxRate = rateToUse;
+          this.calculateTimeWindow();
+          this.lastThrottleTime = this.getCurrentTimeInSeconds();
+          calculatedRate = this.cubicThrottle(rateToUse);
+          this.enableTokenBucket();
+        } else {
+          this.calculateTimeWindow();
+          calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());
+        }
+        const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);
+        this.updateTokenBucketRate(newRate);
+      }
+      calculateTimeWindow() {
+        this.timeWindow = this.getPrecise(Math.pow(this.lastMaxRate * (1 - this.beta) / this.scaleConstant, 1 / 3));
+      }
+      cubicThrottle(rateToUse) {
+        return this.getPrecise(rateToUse * this.beta);
+      }
+      cubicSuccess(timestamp) {
+        return this.getPrecise(
+          this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate
+        );
+      }
+      enableTokenBucket() {
+        this.enabled = true;
+      }
+      updateTokenBucketRate(newRate) {
+        this.refillTokenBucket();
+        this.fillRate = Math.max(newRate, this.minFillRate);
+        this.maxCapacity = Math.max(newRate, this.minCapacity);
+        this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);
+      }
+      updateMeasuredRate() {
+        const t = this.getCurrentTimeInSeconds();
+        const timeBucket = Math.floor(t * 2) / 2;
+        this.requestCount++;
+        if (timeBucket > this.lastTxRateBucket) {
+          const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);
+          this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));
+          this.requestCount = 0;
+          this.lastTxRateBucket = timeBucket;
+        }
+      }
+      getPrecise(num) {
+        return parseFloat(num.toFixed(8));
+      }
+    };
+    __name2(_DefaultRateLimiter, "DefaultRateLimiter");
+    _DefaultRateLimiter.setTimeoutFn = setTimeout;
+    var DefaultRateLimiter = _DefaultRateLimiter;
+    var DEFAULT_RETRY_DELAY_BASE = 100;
+    var MAXIMUM_RETRY_DELAY = 20 * 1e3;
+    var THROTTLING_RETRY_DELAY_BASE = 500;
+    var INITIAL_RETRY_TOKENS = 500;
+    var RETRY_COST = 5;
+    var TIMEOUT_RETRY_COST = 10;
+    var NO_RETRY_INCREMENT = 1;
+    var INVOCATION_ID_HEADER = "amz-sdk-invocation-id";
+    var REQUEST_HEADER = "amz-sdk-request";
+    var getDefaultRetryBackoffStrategy = /* @__PURE__ */ __name2(() => {
+      let delayBase = DEFAULT_RETRY_DELAY_BASE;
+      const computeNextBackoffDelay = /* @__PURE__ */ __name2((attempts) => {
+        return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));
+      }, "computeNextBackoffDelay");
+      const setDelayBase = /* @__PURE__ */ __name2((delay) => {
+        delayBase = delay;
+      }, "setDelayBase");
+      return {
+        computeNextBackoffDelay,
+        setDelayBase
+      };
+    }, "getDefaultRetryBackoffStrategy");
+    var createDefaultRetryToken = /* @__PURE__ */ __name2(({
+      retryDelay,
+      retryCount,
+      retryCost
+    }) => {
+      const getRetryCount = /* @__PURE__ */ __name2(() => retryCount, "getRetryCount");
+      const getRetryDelay = /* @__PURE__ */ __name2(() => Math.min(MAXIMUM_RETRY_DELAY, retryDelay), "getRetryDelay");
+      const getRetryCost = /* @__PURE__ */ __name2(() => retryCost, "getRetryCost");
+      return {
+        getRetryCount,
+        getRetryDelay,
+        getRetryCost
+      };
+    }, "createDefaultRetryToken");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttempts) {
+        this.maxAttempts = maxAttempts;
+        this.mode = "standard";
+        this.capacity = INITIAL_RETRY_TOKENS;
+        this.retryBackoffStrategy = getDefaultRetryBackoffStrategy();
+        this.maxAttemptsProvider = typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts;
+      }
+      // eslint-disable-next-line @typescript-eslint/no-unused-vars
+      async acquireInitialRetryToken(retryTokenScope) {
+        return createDefaultRetryToken({
+          retryDelay: DEFAULT_RETRY_DELAY_BASE,
+          retryCount: 0
+        });
+      }
+      async refreshRetryTokenForRetry(token, errorInfo) {
+        const maxAttempts = await this.getMaxAttempts();
+        if (this.shouldRetry(token, errorInfo, maxAttempts)) {
+          const errorType = errorInfo.errorType;
+          this.retryBackoffStrategy.setDelayBase(
+            errorType === "THROTTLING" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE
+          );
+          const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());
+          const retryDelay = errorInfo.retryAfterHint ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType) : delayFromErrorType;
+          const capacityCost = this.getCapacityCost(errorType);
+          this.capacity -= capacityCost;
+          return createDefaultRetryToken({
+            retryDelay,
+            retryCount: token.getRetryCount() + 1,
+            retryCost: capacityCost
+          });
+        }
+        throw new Error("No retry token available");
+      }
+      recordSuccess(token) {
+        this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));
+      }
+      /**
+       * @returns the current available retry capacity.
+       *
+       * This number decreases when retries are executed and refills when requests or retries succeed.
+       */
+      getCapacity() {
+        return this.capacity;
+      }
+      async getMaxAttempts() {
+        try {
+          return await this.maxAttemptsProvider();
+        } catch (error) {
+          console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);
+          return DEFAULT_MAX_ATTEMPTS;
+        }
+      }
+      shouldRetry(tokenToRenew, errorInfo, maxAttempts) {
+        const attempts = tokenToRenew.getRetryCount() + 1;
+        return attempts < maxAttempts && this.capacity >= this.getCapacityCost(errorInfo.errorType) && this.isRetryableError(errorInfo.errorType);
+      }
+      getCapacityCost(errorType) {
+        return errorType === "TRANSIENT" ? TIMEOUT_RETRY_COST : RETRY_COST;
+      }
+      isRetryableError(errorType) {
+        return errorType === "THROTTLING" || errorType === "TRANSIENT";
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = "adaptive";
+        const { rateLimiter } = options ?? {};
+        this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();
+        this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);
+      }
+      async acquireInitialRetryToken(retryTokenScope) {
+        await this.rateLimiter.getSendToken();
+        return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        this.rateLimiter.updateClientSendingRate(errorInfo);
+        return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+      }
+      recordSuccess(token) {
+        this.rateLimiter.updateClientSendingRate({});
+        this.standardRetryStrategy.recordSuccess(token);
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var _ConfiguredRetryStrategy = class _ConfiguredRetryStrategy extends StandardRetryStrategy {
+      /**
+       * @param maxAttempts - the maximum number of retry attempts allowed.
+       *                      e.g., if set to 3, then 4 total requests are possible.
+       * @param computeNextBackoffDelay - a millisecond delay for each retry or a function that takes the retry attempt
+       *                                  and returns the delay.
+       *
+       * @example exponential backoff.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, (attempt) => attempt ** 2)
+       * });
+       * ```
+       * @example constant delay.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, 2000)
+       * });
+       * ```
+       */
+      constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) {
+        super(typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts);
+        if (typeof computeNextBackoffDelay === "number") {
+          this.computeNextBackoffDelay = () => computeNextBackoffDelay;
+        } else {
+          this.computeNextBackoffDelay = computeNextBackoffDelay;
+        }
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+        token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount());
+        return token;
+      }
+    };
+    __name2(_ConfiguredRetryStrategy, "ConfiguredRetryStrategy");
+    var ConfiguredRetryStrategy = _ConfiguredRetryStrategy;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js
+var require_dist_cjs32 = __commonJS({
+  "../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      constructStack: () => constructStack
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAllAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      const _aliases = [];
+      if (name) {
+        _aliases.push(name);
+      }
+      if (aliases) {
+        for (const alias of aliases) {
+          _aliases.push(alias);
+        }
+      }
+      return _aliases;
+    }, "getAllAliases");
+    var getMiddlewareNameWithAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      return `${name || "anonymous"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(",")})` : ""}`;
+    }, "getMiddlewareNameWithAliases");
+    var constructStack = /* @__PURE__ */ __name2(() => {
+      let absoluteEntries = [];
+      let relativeEntries = [];
+      let identifyOnResolve = false;
+      const entriesNameSet = /* @__PURE__ */ new Set();
+      const sort = /* @__PURE__ */ __name2((entries) => entries.sort(
+        (a, b) => stepWeights[b.step] - stepWeights[a.step] || priorityWeights[b.priority || "normal"] - priorityWeights[a.priority || "normal"]
+      ), "sort");
+      const removeByName = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          const aliases = getAllAliases(entry.name, entry.aliases);
+          if (aliases.includes(toRemove)) {
+            isRemoved = true;
+            for (const alias of aliases) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByName");
+      const removeByReference = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          if (entry.middleware === toRemove) {
+            isRemoved = true;
+            for (const alias of getAllAliases(entry.name, entry.aliases)) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByReference");
+      const cloneTo = /* @__PURE__ */ __name2((toStack) => {
+        var _a7;
+        absoluteEntries.forEach((entry) => {
+          toStack.add(entry.middleware, { ...entry });
+        });
+        relativeEntries.forEach((entry) => {
+          toStack.addRelativeTo(entry.middleware, { ...entry });
+        });
+        (_a7 = toStack.identifyOnResolve) == null ? void 0 : _a7.call(toStack, stack.identifyOnResolve());
+        return toStack;
+      }, "cloneTo");
+      const expandRelativeMiddlewareList = /* @__PURE__ */ __name2((from) => {
+        const expandedMiddlewareList = [];
+        from.before.forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        expandedMiddlewareList.push(from);
+        from.after.reverse().forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        return expandedMiddlewareList;
+      }, "expandRelativeMiddlewareList");
+      const getMiddlewareList = /* @__PURE__ */ __name2((debug = false) => {
+        const normalizedAbsoluteEntries = [];
+        const normalizedRelativeEntries = [];
+        const normalizedEntriesNameMap = {};
+        absoluteEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedAbsoluteEntries.push(normalizedEntry);
+        });
+        relativeEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedRelativeEntries.push(normalizedEntry);
+        });
+        normalizedRelativeEntries.forEach((entry) => {
+          if (entry.toMiddleware) {
+            const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];
+            if (toMiddleware === void 0) {
+              if (debug) {
+                return;
+              }
+              throw new Error(
+                `${entry.toMiddleware} is not found when adding ${getMiddlewareNameWithAliases(entry.name, entry.aliases)} middleware ${entry.relation} ${entry.toMiddleware}`
+              );
+            }
+            if (entry.relation === "after") {
+              toMiddleware.after.push(entry);
+            }
+            if (entry.relation === "before") {
+              toMiddleware.before.push(entry);
+            }
+          }
+        });
+        const mainChain = sort(normalizedAbsoluteEntries).map(expandRelativeMiddlewareList).reduce(
+          (wholeList, expandedMiddlewareList) => {
+            wholeList.push(...expandedMiddlewareList);
+            return wholeList;
+          },
+          []
+        );
+        return mainChain;
+      }, "getMiddlewareList");
+      const stack = {
+        add: (middleware, options = {}) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            step: "initialize",
+            priority: "normal",
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = absoluteEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = absoluteEntries[toOverrideIndex];
+                if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware with ${toOverride.priority} priority in ${toOverride.step} step cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware with ${entry.priority} priority in ${entry.step} step.`
+                  );
+                }
+                absoluteEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          absoluteEntries.push(entry);
+        },
+        addRelativeTo: (middleware, options) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = relativeEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = relativeEntries[toOverrideIndex];
+                if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware ${toOverride.relation} "${toOverride.toMiddleware}" middleware cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware ${entry.relation} "${entry.toMiddleware}" middleware.`
+                  );
+                }
+                relativeEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          relativeEntries.push(entry);
+        },
+        clone: () => cloneTo(constructStack()),
+        use: (plugin) => {
+          plugin.applyToStack(stack);
+        },
+        remove: (toRemove) => {
+          if (typeof toRemove === "string")
+            return removeByName(toRemove);
+          else
+            return removeByReference(toRemove);
+        },
+        removeByTag: (toRemove) => {
+          let isRemoved = false;
+          const filterCb = /* @__PURE__ */ __name2((entry) => {
+            const { tags, name, aliases: _aliases } = entry;
+            if (tags && tags.includes(toRemove)) {
+              const aliases = getAllAliases(name, _aliases);
+              for (const alias of aliases) {
+                entriesNameSet.delete(alias);
+              }
+              isRemoved = true;
+              return false;
+            }
+            return true;
+          }, "filterCb");
+          absoluteEntries = absoluteEntries.filter(filterCb);
+          relativeEntries = relativeEntries.filter(filterCb);
+          return isRemoved;
+        },
+        concat: (from) => {
+          var _a7;
+          const cloned = cloneTo(constructStack());
+          cloned.use(from);
+          cloned.identifyOnResolve(
+            identifyOnResolve || cloned.identifyOnResolve() || (((_a7 = from.identifyOnResolve) == null ? void 0 : _a7.call(from)) ?? false)
+          );
+          return cloned;
+        },
+        applyToStack: cloneTo,
+        identify: () => {
+          return getMiddlewareList(true).map((mw) => {
+            const step = mw.step ?? mw.relation + " " + mw.toMiddleware;
+            return getMiddlewareNameWithAliases(mw.name, mw.aliases) + " - " + step;
+          });
+        },
+        identifyOnResolve(toggle) {
+          if (typeof toggle === "boolean")
+            identifyOnResolve = toggle;
+          return identifyOnResolve;
+        },
+        resolve: (handler2, context) => {
+          for (const middleware of getMiddlewareList().map((entry) => entry.middleware).reverse()) {
+            handler2 = middleware(handler2, context);
+          }
+          if (identifyOnResolve) {
+            console.log(stack.identify());
+          }
+          return handler2;
+        }
+      };
+      return stack;
+    }, "constructStack");
+    var stepWeights = {
+      initialize: 5,
+      serialize: 4,
+      build: 3,
+      finalizeRequest: 2,
+      deserialize: 1
+    };
+    var priorityWeights = {
+      high: 3,
+      normal: 2,
+      low: 1
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/smithy-client/dist-cjs/index.js
+var require_dist_cjs33 = __commonJS({
+  "../../../node_modules/@smithy/smithy-client/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Client: () => Client,
+      Command: () => Command,
+      LazyJsonString: () => LazyJsonString,
+      NoOpLogger: () => NoOpLogger,
+      SENSITIVE_STRING: () => SENSITIVE_STRING,
+      ServiceException: () => ServiceException,
+      _json: () => _json,
+      collectBody: () => import_protocols2.collectBody,
+      convertMap: () => convertMap,
+      createAggregatedClient: () => createAggregatedClient,
+      dateToUtcString: () => dateToUtcString,
+      decorateServiceException: () => decorateServiceException,
+      emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion2,
+      expectBoolean: () => expectBoolean,
+      expectByte: () => expectByte,
+      expectFloat32: () => expectFloat32,
+      expectInt: () => expectInt,
+      expectInt32: () => expectInt32,
+      expectLong: () => expectLong,
+      expectNonNull: () => expectNonNull,
+      expectNumber: () => expectNumber,
+      expectObject: () => expectObject,
+      expectShort: () => expectShort,
+      expectString: () => expectString,
+      expectUnion: () => expectUnion2,
+      extendedEncodeURIComponent: () => import_protocols2.extendedEncodeURIComponent,
+      getArrayIfSingleItem: () => getArrayIfSingleItem,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      getDefaultExtensionConfiguration: () => getDefaultExtensionConfiguration,
+      getValueFromTextNode: () => getValueFromTextNode2,
+      handleFloat: () => handleFloat,
+      isSerializableHeaderValue: () => isSerializableHeaderValue,
+      limitedParseDouble: () => limitedParseDouble,
+      limitedParseFloat: () => limitedParseFloat,
+      limitedParseFloat32: () => limitedParseFloat32,
+      loadConfigsForDefaultMode: () => loadConfigsForDefaultMode,
+      logger: () => logger,
+      map: () => map,
+      parseBoolean: () => parseBoolean,
+      parseEpochTimestamp: () => parseEpochTimestamp,
+      parseRfc3339DateTime: () => parseRfc3339DateTime,
+      parseRfc3339DateTimeWithOffset: () => parseRfc3339DateTimeWithOffset,
+      parseRfc7231DateTime: () => parseRfc7231DateTime,
+      quoteHeader: () => quoteHeader,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig,
+      resolvedPath: () => import_protocols2.resolvedPath,
+      serializeDateTime: () => serializeDateTime,
+      serializeFloat: () => serializeFloat,
+      splitEvery: () => splitEvery,
+      splitHeader: () => splitHeader,
+      strictParseByte: () => strictParseByte,
+      strictParseDouble: () => strictParseDouble,
+      strictParseFloat: () => strictParseFloat,
+      strictParseFloat32: () => strictParseFloat32,
+      strictParseInt: () => strictParseInt,
+      strictParseInt32: () => strictParseInt32,
+      strictParseLong: () => strictParseLong,
+      strictParseShort: () => strictParseShort,
+      take: () => take,
+      throwDefaultError: () => throwDefaultError,
+      withBaseException: () => withBaseException
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_stack = require_dist_cjs32();
+    var _Client = class _Client {
+      constructor(config) {
+        this.config = config;
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      send(command, optionsOrCb, cb) {
+        const options = typeof optionsOrCb !== "function" ? optionsOrCb : void 0;
+        const callback = typeof optionsOrCb === "function" ? optionsOrCb : cb;
+        const useHandlerCache = options === void 0 && this.config.cacheMiddleware === true;
+        let handler2;
+        if (useHandlerCache) {
+          if (!this.handlers) {
+            this.handlers = /* @__PURE__ */ new WeakMap();
+          }
+          const handlers = this.handlers;
+          if (handlers.has(command.constructor)) {
+            handler2 = handlers.get(command.constructor);
+          } else {
+            handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+            handlers.set(command.constructor, handler2);
+          }
+        } else {
+          delete this.handlers;
+          handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+        }
+        if (callback) {
+          handler2(command).then(
+            (result) => callback(null, result.output),
+            (err) => callback(err)
+          ).catch(
+            // prevent any errors thrown in the callback from triggering an
+            // unhandled promise rejection
+            () => {
+            }
+          );
+        } else {
+          return handler2(command).then((result) => result.output);
+        }
+      }
+      destroy() {
+        var _a7, _b, _c;
+        (_c = (_b = (_a7 = this.config) == null ? void 0 : _a7.requestHandler) == null ? void 0 : _b.destroy) == null ? void 0 : _c.call(_b);
+        delete this.handlers;
+      }
+    };
+    __name2(_Client, "Client");
+    var Client = _Client;
+    var import_protocols2 = (init_protocols(), __toCommonJS(protocols_exports));
+    var import_types8 = require_dist_cjs();
+    var _Command = class _Command {
+      constructor() {
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      /**
+       * Factory for Command ClassBuilder.
+       * @internal
+       */
+      static classBuilder() {
+        return new ClassBuilder();
+      }
+      /**
+       * @internal
+       */
+      resolveMiddlewareWithContext(clientStack, configuration, options, {
+        middlewareFn,
+        clientName,
+        commandName,
+        inputFilterSensitiveLog,
+        outputFilterSensitiveLog,
+        smithyContext,
+        additionalContext,
+        CommandCtor
+      }) {
+        for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {
+          this.middlewareStack.use(mw);
+        }
+        const stack = clientStack.concat(this.middlewareStack);
+        const { logger: logger2 } = configuration;
+        const handlerExecutionContext = {
+          logger: logger2,
+          clientName,
+          commandName,
+          inputFilterSensitiveLog,
+          outputFilterSensitiveLog,
+          [import_types8.SMITHY_CONTEXT_KEY]: {
+            commandInstance: this,
+            ...smithyContext
+          },
+          ...additionalContext
+        };
+        const { requestHandler } = configuration;
+        return stack.resolve(
+          (request2) => requestHandler.handle(request2.request, options || {}),
+          handlerExecutionContext
+        );
+      }
+    };
+    __name2(_Command, "Command");
+    var Command = _Command;
+    var _ClassBuilder = class _ClassBuilder {
+      constructor() {
+        this._init = () => {
+        };
+        this._ep = {};
+        this._middlewareFn = () => [];
+        this._commandName = "";
+        this._clientName = "";
+        this._additionalContext = {};
+        this._smithyContext = {};
+        this._inputFilterSensitiveLog = (_) => _;
+        this._outputFilterSensitiveLog = (_) => _;
+        this._serializer = null;
+        this._deserializer = null;
+      }
+      /**
+       * Optional init callback.
+       */
+      init(cb) {
+        this._init = cb;
+      }
+      /**
+       * Set the endpoint parameter instructions.
+       */
+      ep(endpointParameterInstructions) {
+        this._ep = endpointParameterInstructions;
+        return this;
+      }
+      /**
+       * Add any number of middleware.
+       */
+      m(middlewareSupplier) {
+        this._middlewareFn = middlewareSupplier;
+        return this;
+      }
+      /**
+       * Set the initial handler execution context Smithy field.
+       */
+      s(service, operation, smithyContext = {}) {
+        this._smithyContext = {
+          service,
+          operation,
+          ...smithyContext
+        };
+        return this;
+      }
+      /**
+       * Set the initial handler execution context.
+       */
+      c(additionalContext = {}) {
+        this._additionalContext = additionalContext;
+        return this;
+      }
+      /**
+       * Set constant string identifiers for the operation.
+       */
+      n(clientName, commandName) {
+        this._clientName = clientName;
+        this._commandName = commandName;
+        return this;
+      }
+      /**
+       * Set the input and output sensistive log filters.
+       */
+      f(inputFilter = (_) => _, outputFilter = (_) => _) {
+        this._inputFilterSensitiveLog = inputFilter;
+        this._outputFilterSensitiveLog = outputFilter;
+        return this;
+      }
+      /**
+       * Sets the serializer.
+       */
+      ser(serializer) {
+        this._serializer = serializer;
+        return this;
+      }
+      /**
+       * Sets the deserializer.
+       */
+      de(deserializer) {
+        this._deserializer = deserializer;
+        return this;
+      }
+      /**
+       * @returns a Command class with the classBuilder properties.
+       */
+      build() {
+        var _a7;
+        const closure = this;
+        let CommandRef;
+        return CommandRef = (_a7 = class extends Command {
+          /**
+           * @public
+           */
+          constructor(...[input]) {
+            super();
+            this.serialize = closure._serializer;
+            this.deserialize = closure._deserializer;
+            this.input = input ?? {};
+            closure._init(this);
+          }
+          /**
+           * @public
+           */
+          static getEndpointParameterInstructions() {
+            return closure._ep;
+          }
+          /**
+           * @internal
+           */
+          resolveMiddleware(stack, configuration, options) {
+            return this.resolveMiddlewareWithContext(stack, configuration, options, {
+              CommandCtor: CommandRef,
+              middlewareFn: closure._middlewareFn,
+              clientName: closure._clientName,
+              commandName: closure._commandName,
+              inputFilterSensitiveLog: closure._inputFilterSensitiveLog,
+              outputFilterSensitiveLog: closure._outputFilterSensitiveLog,
+              smithyContext: closure._smithyContext,
+              additionalContext: closure._additionalContext
+            });
+          }
+        }, __name2(_a7, "CommandRef"), _a7);
+      }
+    };
+    __name2(_ClassBuilder, "ClassBuilder");
+    var ClassBuilder = _ClassBuilder;
+    var SENSITIVE_STRING = "***SensitiveInformation***";
+    var createAggregatedClient = /* @__PURE__ */ __name2((commands, Client2) => {
+      for (const command of Object.keys(commands)) {
+        const CommandCtor = commands[command];
+        const methodImpl = /* @__PURE__ */ __name2(async function(args, optionsOrCb, cb) {
+          const command2 = new CommandCtor(args);
+          if (typeof optionsOrCb === "function") {
+            this.send(command2, optionsOrCb);
+          } else if (typeof cb === "function") {
+            if (typeof optionsOrCb !== "object")
+              throw new Error(`Expected http options but got ${typeof optionsOrCb}`);
+            this.send(command2, optionsOrCb || {}, cb);
+          } else {
+            return this.send(command2, optionsOrCb);
+          }
+        }, "methodImpl");
+        const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
+        Client2.prototype[methodName] = methodImpl;
+      }
+    }, "createAggregatedClient");
+    var parseBoolean = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "true":
+          return true;
+        case "false":
+          return false;
+        default:
+          throw new Error(`Unable to parse boolean value "${value}"`);
+      }
+    }, "parseBoolean");
+    var expectBoolean = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "number") {
+        if (value === 0 || value === 1) {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (value === 0) {
+          return false;
+        }
+        if (value === 1) {
+          return true;
+        }
+      }
+      if (typeof value === "string") {
+        const lower = value.toLowerCase();
+        if (lower === "false" || lower === "true") {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (lower === "false") {
+          return false;
+        }
+        if (lower === "true") {
+          return true;
+        }
+      }
+      if (typeof value === "boolean") {
+        return value;
+      }
+      throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);
+    }, "expectBoolean");
+    var expectNumber = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        const parsed = parseFloat(value);
+        if (!Number.isNaN(parsed)) {
+          if (String(parsed) !== String(value)) {
+            logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));
+          }
+          return parsed;
+        }
+      }
+      if (typeof value === "number") {
+        return value;
+      }
+      throw new TypeError(`Expected number, got ${typeof value}: ${value}`);
+    }, "expectNumber");
+    var MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));
+    var expectFloat32 = /* @__PURE__ */ __name2((value) => {
+      const expected = expectNumber(value);
+      if (expected !== void 0 && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {
+        if (Math.abs(expected) > MAX_FLOAT) {
+          throw new TypeError(`Expected 32-bit float, got ${value}`);
+        }
+      }
+      return expected;
+    }, "expectFloat32");
+    var expectLong = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (Number.isInteger(value) && !Number.isNaN(value)) {
+        return value;
+      }
+      throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);
+    }, "expectLong");
+    var expectInt = expectLong;
+    var expectInt32 = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 32), "expectInt32");
+    var expectShort = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 16), "expectShort");
+    var expectByte = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 8), "expectByte");
+    var expectSizedInt = /* @__PURE__ */ __name2((value, size) => {
+      const expected = expectLong(value);
+      if (expected !== void 0 && castInt(expected, size) !== expected) {
+        throw new TypeError(`Expected ${size}-bit integer, got ${value}`);
+      }
+      return expected;
+    }, "expectSizedInt");
+    var castInt = /* @__PURE__ */ __name2((value, size) => {
+      switch (size) {
+        case 32:
+          return Int32Array.of(value)[0];
+        case 16:
+          return Int16Array.of(value)[0];
+        case 8:
+          return Int8Array.of(value)[0];
+      }
+    }, "castInt");
+    var expectNonNull = /* @__PURE__ */ __name2((value, location) => {
+      if (value === null || value === void 0) {
+        if (location) {
+          throw new TypeError(`Expected a non-null value for ${location}`);
+        }
+        throw new TypeError("Expected a non-null value");
+      }
+      return value;
+    }, "expectNonNull");
+    var expectObject = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "object" && !Array.isArray(value)) {
+        return value;
+      }
+      const receivedType = Array.isArray(value) ? "array" : typeof value;
+      throw new TypeError(`Expected object, got ${receivedType}: ${value}`);
+    }, "expectObject");
+    var expectString = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        return value;
+      }
+      if (["boolean", "number", "bigint"].includes(typeof value)) {
+        logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));
+        return String(value);
+      }
+      throw new TypeError(`Expected string, got ${typeof value}: ${value}`);
+    }, "expectString");
+    var expectUnion2 = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      const asObject = expectObject(value);
+      const setKeys = Object.entries(asObject).filter(([, v]) => v != null).map(([k]) => k);
+      if (setKeys.length === 0) {
+        throw new TypeError(`Unions must have exactly one non-null member. None were found.`);
+      }
+      if (setKeys.length > 1) {
+        throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);
+      }
+      return asObject;
+    }, "expectUnion");
+    var strictParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectNumber(parseNumber(value));
+      }
+      return expectNumber(value);
+    }, "strictParseDouble");
+    var strictParseFloat = strictParseDouble;
+    var strictParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectFloat32(parseNumber(value));
+      }
+      return expectFloat32(value);
+    }, "strictParseFloat32");
+    var NUMBER_REGEX = /(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g;
+    var parseNumber = /* @__PURE__ */ __name2((value) => {
+      const matches = value.match(NUMBER_REGEX);
+      if (matches === null || matches[0].length !== value.length) {
+        throw new TypeError(`Expected real number, got implicit NaN`);
+      }
+      return parseFloat(value);
+    }, "parseNumber");
+    var limitedParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectNumber(value);
+    }, "limitedParseDouble");
+    var handleFloat = limitedParseDouble;
+    var limitedParseFloat = limitedParseDouble;
+    var limitedParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectFloat32(value);
+    }, "limitedParseFloat32");
+    var parseFloatString = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "NaN":
+          return NaN;
+        case "Infinity":
+          return Infinity;
+        case "-Infinity":
+          return -Infinity;
+        default:
+          throw new Error(`Unable to parse float value: ${value}`);
+      }
+    }, "parseFloatString");
+    var strictParseLong = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectLong(parseNumber(value));
+      }
+      return expectLong(value);
+    }, "strictParseLong");
+    var strictParseInt = strictParseLong;
+    var strictParseInt32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectInt32(parseNumber(value));
+      }
+      return expectInt32(value);
+    }, "strictParseInt32");
+    var strictParseShort = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectShort(parseNumber(value));
+      }
+      return expectShort(value);
+    }, "strictParseShort");
+    var strictParseByte = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectByte(parseNumber(value));
+      }
+      return expectByte(value);
+    }, "strictParseByte");
+    var stackTraceWarning = /* @__PURE__ */ __name2((message) => {
+      return String(new TypeError(message).stack || message).split("\n").slice(0, 5).filter((s) => !s.includes("stackTraceWarning")).join("\n");
+    }, "stackTraceWarning");
+    var logger = {
+      warn: console.warn
+    };
+    var DAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
+    var MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
+    function dateToUtcString(date) {
+      const year = date.getUTCFullYear();
+      const month = date.getUTCMonth();
+      const dayOfWeek = date.getUTCDay();
+      const dayOfMonthInt = date.getUTCDate();
+      const hoursInt = date.getUTCHours();
+      const minutesInt = date.getUTCMinutes();
+      const secondsInt = date.getUTCSeconds();
+      const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;
+      const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;
+      const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;
+      const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;
+      return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;
+    }
+    __name2(dateToUtcString, "dateToUtcString");
+    var RFC3339 = new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/);
+    var parseRfc3339DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+    }, "parseRfc3339DateTime");
+    var RFC3339_WITH_OFFSET = new RegExp(
+      /^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/
+    );
+    var parseRfc3339DateTimeWithOffset = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339_WITH_OFFSET.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+      if (offsetStr.toUpperCase() != "Z") {
+        date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));
+      }
+      return date;
+    }, "parseRfc3339DateTimeWithOffset");
+    var IMF_FIXDATE = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var RFC_850_DATE = new RegExp(
+      /^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var ASC_TIME = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/
+    );
+    var parseRfc7231DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-7231 date-times must be expressed as strings");
+      }
+      let match = IMF_FIXDATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr, "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      match = RFC_850_DATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return adjustRfc850Year(
+          buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, "day", 1, 31), {
+            hours,
+            minutes,
+            seconds,
+            fractionalMilliseconds
+          })
+        );
+      }
+      match = ASC_TIME.exec(value);
+      if (match) {
+        const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr.trimLeft(), "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      throw new TypeError("Invalid RFC-7231 date-time value");
+    }, "parseRfc7231DateTime");
+    var parseEpochTimestamp = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      let valueAsDouble;
+      if (typeof value === "number") {
+        valueAsDouble = value;
+      } else if (typeof value === "string") {
+        valueAsDouble = strictParseDouble(value);
+      } else if (typeof value === "object" && value.tag === 1) {
+        valueAsDouble = value.value;
+      } else {
+        throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");
+      }
+      if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {
+        throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");
+      }
+      return new Date(Math.round(valueAsDouble * 1e3));
+    }, "parseEpochTimestamp");
+    var buildDate = /* @__PURE__ */ __name2((year, month, day, time) => {
+      const adjustedMonth = month - 1;
+      validateDayOfMonth(year, adjustedMonth, day);
+      return new Date(
+        Date.UTC(
+          year,
+          adjustedMonth,
+          day,
+          parseDateValue(time.hours, "hour", 0, 23),
+          parseDateValue(time.minutes, "minute", 0, 59),
+          // seconds can go up to 60 for leap seconds
+          parseDateValue(time.seconds, "seconds", 0, 60),
+          parseMilliseconds(time.fractionalMilliseconds)
+        )
+      );
+    }, "buildDate");
+    var parseTwoDigitYear = /* @__PURE__ */ __name2((value) => {
+      const thisYear = (/* @__PURE__ */ new Date()).getUTCFullYear();
+      const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));
+      if (valueInThisCentury < thisYear) {
+        return valueInThisCentury + 100;
+      }
+      return valueInThisCentury;
+    }, "parseTwoDigitYear");
+    var FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1e3;
+    var adjustRfc850Year = /* @__PURE__ */ __name2((input) => {
+      if (input.getTime() - (/* @__PURE__ */ new Date()).getTime() > FIFTY_YEARS_IN_MILLIS) {
+        return new Date(
+          Date.UTC(
+            input.getUTCFullYear() - 100,
+            input.getUTCMonth(),
+            input.getUTCDate(),
+            input.getUTCHours(),
+            input.getUTCMinutes(),
+            input.getUTCSeconds(),
+            input.getUTCMilliseconds()
+          )
+        );
+      }
+      return input;
+    }, "adjustRfc850Year");
+    var parseMonthByShortName = /* @__PURE__ */ __name2((value) => {
+      const monthIdx = MONTHS.indexOf(value);
+      if (monthIdx < 0) {
+        throw new TypeError(`Invalid month: ${value}`);
+      }
+      return monthIdx + 1;
+    }, "parseMonthByShortName");
+    var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+    var validateDayOfMonth = /* @__PURE__ */ __name2((year, month, day) => {
+      let maxDays = DAYS_IN_MONTH[month];
+      if (month === 1 && isLeapYear(year)) {
+        maxDays = 29;
+      }
+      if (day > maxDays) {
+        throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);
+      }
+    }, "validateDayOfMonth");
+    var isLeapYear = /* @__PURE__ */ __name2((year) => {
+      return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
+    }, "isLeapYear");
+    var parseDateValue = /* @__PURE__ */ __name2((value, type, lower, upper) => {
+      const dateVal = strictParseByte(stripLeadingZeroes(value));
+      if (dateVal < lower || dateVal > upper) {
+        throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);
+      }
+      return dateVal;
+    }, "parseDateValue");
+    var parseMilliseconds = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return 0;
+      }
+      return strictParseFloat32("0." + value) * 1e3;
+    }, "parseMilliseconds");
+    var parseOffsetToMilliseconds = /* @__PURE__ */ __name2((value) => {
+      const directionStr = value[0];
+      let direction = 1;
+      if (directionStr == "+") {
+        direction = 1;
+      } else if (directionStr == "-") {
+        direction = -1;
+      } else {
+        throw new TypeError(`Offset direction, ${directionStr}, must be "+" or "-"`);
+      }
+      const hour = Number(value.substring(1, 3));
+      const minute = Number(value.substring(4, 6));
+      return direction * (hour * 60 + minute) * 60 * 1e3;
+    }, "parseOffsetToMilliseconds");
+    var stripLeadingZeroes = /* @__PURE__ */ __name2((value) => {
+      let idx = 0;
+      while (idx < value.length - 1 && value.charAt(idx) === "0") {
+        idx++;
+      }
+      if (idx === 0) {
+        return value;
+      }
+      return value.slice(idx);
+    }, "stripLeadingZeroes");
+    var _ServiceException = class _ServiceException2 extends Error {
+      constructor(options) {
+        super(options.message);
+        Object.setPrototypeOf(this, _ServiceException2.prototype);
+        this.name = options.name;
+        this.$fault = options.$fault;
+        this.$metadata = options.$metadata;
+      }
+      /**
+       * Checks if a value is an instance of ServiceException (duck typed)
+       */
+      static isInstance(value) {
+        if (!value)
+          return false;
+        const candidate = value;
+        return Boolean(candidate.$fault) && Boolean(candidate.$metadata) && (candidate.$fault === "client" || candidate.$fault === "server");
+      }
+    };
+    __name2(_ServiceException, "ServiceException");
+    var ServiceException = _ServiceException;
+    var decorateServiceException = /* @__PURE__ */ __name2((exception, additions = {}) => {
+      Object.entries(additions).filter(([, v]) => v !== void 0).forEach(([k, v]) => {
+        if (exception[k] == void 0 || exception[k] === "") {
+          exception[k] = v;
+        }
+      });
+      const message = exception.message || exception.Message || "UnknownError";
+      exception.message = message;
+      delete exception.Message;
+      return exception;
+    }, "decorateServiceException");
+    var throwDefaultError = /* @__PURE__ */ __name2(({ output, parsedBody, exceptionCtor, errorCode }) => {
+      const $metadata = deserializeMetadata(output);
+      const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + "" : void 0;
+      const response = new exceptionCtor({
+        name: (parsedBody == null ? void 0 : parsedBody.code) || (parsedBody == null ? void 0 : parsedBody.Code) || errorCode || statusCode || "UnknownError",
+        $fault: "client",
+        $metadata
+      });
+      throw decorateServiceException(response, parsedBody);
+    }, "throwDefaultError");
+    var withBaseException = /* @__PURE__ */ __name2((ExceptionCtor) => {
+      return ({ output, parsedBody, errorCode }) => {
+        throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });
+      };
+    }, "withBaseException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var loadConfigsForDefaultMode = /* @__PURE__ */ __name2((mode) => {
+      switch (mode) {
+        case "standard":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "in-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 1100
+          };
+        case "cross-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "mobile":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3e4
+          };
+        default:
+          return {};
+      }
+    }, "loadConfigsForDefaultMode");
+    var warningEmitted2 = false;
+    var emitWarningIfUnsupportedVersion2 = /* @__PURE__ */ __name2((version3) => {
+      if (version3 && !warningEmitted2 && parseInt(version3.substring(1, version3.indexOf("."))) < 16) {
+        warningEmitted2 = true;
+      }
+    }, "emitWarningIfUnsupportedVersion");
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      for (const id in import_types8.AlgorithmId) {
+        const algorithmId = import_types8.AlgorithmId[id];
+        if (runtimeConfig[algorithmId] === void 0) {
+          continue;
+        }
+        checksumAlgorithms.push({
+          algorithmId: () => algorithmId,
+          checksumConstructor: () => runtimeConfig[algorithmId]
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getRetryConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let _retryStrategy = runtimeConfig.retryStrategy;
+      return {
+        setRetryStrategy(retryStrategy) {
+          _retryStrategy = retryStrategy;
+        },
+        retryStrategy() {
+          return _retryStrategy;
+        }
+      };
+    }, "getRetryConfiguration");
+    var resolveRetryRuntimeConfig = /* @__PURE__ */ __name2((retryStrategyConfiguration) => {
+      const runtimeConfig = {};
+      runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();
+      return runtimeConfig;
+    }, "resolveRetryRuntimeConfig");
+    var getDefaultExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig),
+        ...getRetryConfiguration(runtimeConfig)
+      };
+    }, "getDefaultExtensionConfiguration");
+    var getDefaultClientConfiguration = getDefaultExtensionConfiguration;
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config),
+        ...resolveRetryRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var getArrayIfSingleItem = /* @__PURE__ */ __name2((mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray], "getArrayIfSingleItem");
+    var getValueFromTextNode2 = /* @__PURE__ */ __name2((obj) => {
+      const textNodeName = "#text";
+      for (const key in obj) {
+        if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== void 0) {
+          obj[key] = obj[key][textNodeName];
+        } else if (typeof obj[key] === "object" && obj[key] !== null) {
+          obj[key] = getValueFromTextNode2(obj[key]);
+        }
+      }
+      return obj;
+    }, "getValueFromTextNode");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => {
+      return value != null;
+    }, "isSerializableHeaderValue");
+    var LazyJsonString = /* @__PURE__ */ __name2(function LazyJsonString2(val2) {
+      const str = Object.assign(new String(val2), {
+        deserializeJSON() {
+          return JSON.parse(String(val2));
+        },
+        toString() {
+          return String(val2);
+        },
+        toJSON() {
+          return String(val2);
+        }
+      });
+      return str;
+    }, "LazyJsonString");
+    LazyJsonString.from = (object) => {
+      if (object && typeof object === "object" && (object instanceof LazyJsonString || "deserializeJSON" in object)) {
+        return object;
+      } else if (typeof object === "string" || Object.getPrototypeOf(object) === String.prototype) {
+        return LazyJsonString(String(object));
+      }
+      return LazyJsonString(JSON.stringify(object));
+    };
+    LazyJsonString.fromObject = LazyJsonString.from;
+    var _NoOpLogger = class _NoOpLogger {
+      trace() {
+      }
+      debug() {
+      }
+      info() {
+      }
+      warn() {
+      }
+      error() {
+      }
+    };
+    __name2(_NoOpLogger, "NoOpLogger");
+    var NoOpLogger = _NoOpLogger;
+    function map(arg0, arg1, arg2) {
+      let target;
+      let filter;
+      let instructions;
+      if (typeof arg1 === "undefined" && typeof arg2 === "undefined") {
+        target = {};
+        instructions = arg0;
+      } else {
+        target = arg0;
+        if (typeof arg1 === "function") {
+          filter = arg1;
+          instructions = arg2;
+          return mapWithFilter(target, filter, instructions);
+        } else {
+          instructions = arg1;
+        }
+      }
+      for (const key of Object.keys(instructions)) {
+        if (!Array.isArray(instructions[key])) {
+          target[key] = instructions[key];
+          continue;
+        }
+        applyInstruction(target, null, instructions, key);
+      }
+      return target;
+    }
+    __name2(map, "map");
+    var convertMap = /* @__PURE__ */ __name2((target) => {
+      const output = {};
+      for (const [k, v] of Object.entries(target || {})) {
+        output[k] = [, v];
+      }
+      return output;
+    }, "convertMap");
+    var take = /* @__PURE__ */ __name2((source, instructions) => {
+      const out = {};
+      for (const key in instructions) {
+        applyInstruction(out, source, instructions, key);
+      }
+      return out;
+    }, "take");
+    var mapWithFilter = /* @__PURE__ */ __name2((target, filter, instructions) => {
+      return map(
+        target,
+        Object.entries(instructions).reduce(
+          (_instructions, [key, value]) => {
+            if (Array.isArray(value)) {
+              _instructions[key] = value;
+            } else {
+              if (typeof value === "function") {
+                _instructions[key] = [filter, value()];
+              } else {
+                _instructions[key] = [filter, value];
+              }
+            }
+            return _instructions;
+          },
+          {}
+        )
+      );
+    }, "mapWithFilter");
+    var applyInstruction = /* @__PURE__ */ __name2((target, source, instructions, targetKey) => {
+      if (source !== null) {
+        let instruction = instructions[targetKey];
+        if (typeof instruction === "function") {
+          instruction = [, instruction];
+        }
+        const [filter2 = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;
+        if (typeof filter2 === "function" && filter2(source[sourceKey]) || typeof filter2 !== "function" && !!filter2) {
+          target[targetKey] = valueFn(source[sourceKey]);
+        }
+        return;
+      }
+      let [filter, value] = instructions[targetKey];
+      if (typeof value === "function") {
+        let _value;
+        const defaultFilterPassed = filter === void 0 && (_value = value()) != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(void 0) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed) {
+          target[targetKey] = _value;
+        } else if (customFilterPassed) {
+          target[targetKey] = value();
+        }
+      } else {
+        const defaultFilterPassed = filter === void 0 && value != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(value) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed || customFilterPassed) {
+          target[targetKey] = value;
+        }
+      }
+    }, "applyInstruction");
+    var nonNullish = /* @__PURE__ */ __name2((_) => _ != null, "nonNullish");
+    var pass = /* @__PURE__ */ __name2((_) => _, "pass");
+    function quoteHeader(part) {
+      if (part.includes(",") || part.includes('"')) {
+        part = `"${part.replace(/"/g, '\\"')}"`;
+      }
+      return part;
+    }
+    __name2(quoteHeader, "quoteHeader");
+    var serializeFloat = /* @__PURE__ */ __name2((value) => {
+      if (value !== value) {
+        return "NaN";
+      }
+      switch (value) {
+        case Infinity:
+          return "Infinity";
+        case -Infinity:
+          return "-Infinity";
+        default:
+          return value;
+      }
+    }, "serializeFloat");
+    var serializeDateTime = /* @__PURE__ */ __name2((date) => date.toISOString().replace(".000Z", "Z"), "serializeDateTime");
+    var _json = /* @__PURE__ */ __name2((obj) => {
+      if (obj == null) {
+        return {};
+      }
+      if (Array.isArray(obj)) {
+        return obj.filter((_) => _ != null).map(_json);
+      }
+      if (typeof obj === "object") {
+        const target = {};
+        for (const key of Object.keys(obj)) {
+          if (obj[key] == null) {
+            continue;
+          }
+          target[key] = _json(obj[key]);
+        }
+        return target;
+      }
+      return obj;
+    }, "_json");
+    function splitEvery(value, delimiter, numDelimiters) {
+      if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) {
+        throw new Error("Invalid number of delimiters (" + numDelimiters + ") for splitEvery.");
+      }
+      const segments = value.split(delimiter);
+      if (numDelimiters === 1) {
+        return segments;
+      }
+      const compoundSegments = [];
+      let currentSegment = "";
+      for (let i = 0; i < segments.length; i++) {
+        if (currentSegment === "") {
+          currentSegment = segments[i];
+        } else {
+          currentSegment += delimiter + segments[i];
+        }
+        if ((i + 1) % numDelimiters === 0) {
+          compoundSegments.push(currentSegment);
+          currentSegment = "";
+        }
+      }
+      if (currentSegment !== "") {
+        compoundSegments.push(currentSegment);
+      }
+      return compoundSegments;
+    }
+    __name2(splitEvery, "splitEvery");
+    var splitHeader = /* @__PURE__ */ __name2((value) => {
+      const z = value.length;
+      const values = [];
+      let withinQuotes = false;
+      let prevChar = void 0;
+      let anchor = 0;
+      for (let i = 0; i < z; ++i) {
+        const char = value[i];
+        switch (char) {
+          case `"`:
+            if (prevChar !== "\\") {
+              withinQuotes = !withinQuotes;
+            }
+            break;
+          case ",":
+            if (!withinQuotes) {
+              values.push(value.slice(anchor, i));
+              anchor = i + 1;
+            }
+            break;
+          default:
+        }
+        prevChar = char;
+      }
+      values.push(value.slice(anchor));
+      return values.map((v) => {
+        v = v.trim();
+        const z2 = v.length;
+        if (z2 < 2) {
+          return v;
+        }
+        if (v[0] === `"` && v[z2 - 1] === `"`) {
+          v = v.slice(1, z2 - 1);
+        }
+        return v.replace(/\\"/g, '"');
+      });
+    }, "splitHeader");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js
+var require_isStreamingPayload = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isStreamingPayload = void 0;
+    var stream_1 = require("stream");
+    var isStreamingPayload = (request2) => (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof stream_1.Readable || typeof ReadableStream !== "undefined" && (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof ReadableStream;
+    exports2.isStreamingPayload = isStreamingPayload;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js
+var require_dist_cjs34 = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      CONFIG_MAX_ATTEMPTS: () => CONFIG_MAX_ATTEMPTS,
+      CONFIG_RETRY_MODE: () => CONFIG_RETRY_MODE,
+      ENV_MAX_ATTEMPTS: () => ENV_MAX_ATTEMPTS,
+      ENV_RETRY_MODE: () => ENV_RETRY_MODE,
+      NODE_MAX_ATTEMPT_CONFIG_OPTIONS: () => NODE_MAX_ATTEMPT_CONFIG_OPTIONS,
+      NODE_RETRY_MODE_CONFIG_OPTIONS: () => NODE_RETRY_MODE_CONFIG_OPTIONS,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      defaultDelayDecider: () => defaultDelayDecider,
+      defaultRetryDecider: () => defaultRetryDecider,
+      getOmitRetryHeadersPlugin: () => getOmitRetryHeadersPlugin,
+      getRetryAfterHint: () => getRetryAfterHint,
+      getRetryPlugin: () => getRetryPlugin,
+      omitRetryHeadersMiddleware: () => omitRetryHeadersMiddleware,
+      omitRetryHeadersMiddlewareOptions: () => omitRetryHeadersMiddlewareOptions,
+      resolveRetryConfig: () => resolveRetryConfig,
+      retryMiddleware: () => retryMiddleware,
+      retryMiddlewareOptions: () => retryMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var import_util_retry = require_dist_cjs31();
+    var getDefaultRetryQuota = /* @__PURE__ */ __name2((initialRetryTokens, options) => {
+      const MAX_CAPACITY = initialRetryTokens;
+      const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT;
+      const retryCost = (options == null ? void 0 : options.retryCost) ?? import_util_retry.RETRY_COST;
+      const timeoutRetryCost = (options == null ? void 0 : options.timeoutRetryCost) ?? import_util_retry.TIMEOUT_RETRY_COST;
+      let availableCapacity = initialRetryTokens;
+      const getCapacityAmount = /* @__PURE__ */ __name2((error) => error.name === "TimeoutError" ? timeoutRetryCost : retryCost, "getCapacityAmount");
+      const hasRetryTokens = /* @__PURE__ */ __name2((error) => getCapacityAmount(error) <= availableCapacity, "hasRetryTokens");
+      const retrieveRetryTokens = /* @__PURE__ */ __name2((error) => {
+        if (!hasRetryTokens(error)) {
+          throw new Error("No retry token available");
+        }
+        const capacityAmount = getCapacityAmount(error);
+        availableCapacity -= capacityAmount;
+        return capacityAmount;
+      }, "retrieveRetryTokens");
+      const releaseRetryTokens = /* @__PURE__ */ __name2((capacityReleaseAmount) => {
+        availableCapacity += capacityReleaseAmount ?? noRetryIncrement;
+        availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);
+      }, "releaseRetryTokens");
+      return Object.freeze({
+        hasRetryTokens,
+        retrieveRetryTokens,
+        releaseRetryTokens
+      });
+    }, "getDefaultRetryQuota");
+    var defaultDelayDecider = /* @__PURE__ */ __name2((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), "defaultDelayDecider");
+    var import_service_error_classification = require_dist_cjs30();
+    var defaultRetryDecider = /* @__PURE__ */ __name2((error) => {
+      if (!error) {
+        return false;
+      }
+      return (0, import_service_error_classification.isRetryableByTrait)(error) || (0, import_service_error_classification.isClockSkewError)(error) || (0, import_service_error_classification.isThrottlingError)(error) || (0, import_service_error_classification.isTransientError)(error);
+    }, "defaultRetryDecider");
+    var asSdkError = /* @__PURE__ */ __name2((error) => {
+      if (error instanceof Error)
+        return error;
+      if (error instanceof Object)
+        return Object.assign(new Error(), error);
+      if (typeof error === "string")
+        return new Error(error);
+      return new Error(`AWS SDK error wrapper for ${error}`);
+    }, "asSdkError");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = import_util_retry.RETRY_MODES.STANDARD;
+        this.retryDecider = (options == null ? void 0 : options.retryDecider) ?? defaultRetryDecider;
+        this.delayDecider = (options == null ? void 0 : options.delayDecider) ?? defaultDelayDecider;
+        this.retryQuota = (options == null ? void 0 : options.retryQuota) ?? getDefaultRetryQuota(import_util_retry.INITIAL_RETRY_TOKENS);
+      }
+      shouldRetry(error, attempts, maxAttempts) {
+        return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);
+      }
+      async getMaxAttempts() {
+        let maxAttempts;
+        try {
+          maxAttempts = await this.maxAttemptsProvider();
+        } catch (error) {
+          maxAttempts = import_util_retry.DEFAULT_MAX_ATTEMPTS;
+        }
+        return maxAttempts;
+      }
+      async retry(next, args, options) {
+        let retryTokenAmount;
+        let attempts = 0;
+        let totalDelay = 0;
+        const maxAttempts = await this.getMaxAttempts();
+        const { request: request2 } = args;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            if (options == null ? void 0 : options.beforeRequest) {
+              await options.beforeRequest();
+            }
+            const { response, output } = await next(args);
+            if (options == null ? void 0 : options.afterRequest) {
+              options.afterRequest(response);
+            }
+            this.retryQuota.releaseRetryTokens(retryTokenAmount);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalDelay;
+            return { response, output };
+          } catch (e) {
+            const err = asSdkError(e);
+            attempts++;
+            if (this.shouldRetry(err, attempts, maxAttempts)) {
+              retryTokenAmount = this.retryQuota.retrieveRetryTokens(err);
+              const delayFromDecider = this.delayDecider(
+                (0, import_service_error_classification.isThrottlingError)(err) ? import_util_retry.THROTTLING_RETRY_DELAY_BASE : import_util_retry.DEFAULT_RETRY_DELAY_BASE,
+                attempts
+              );
+              const delayFromResponse = getDelayFromRetryAfterHeader(err.$response);
+              const delay = Math.max(delayFromResponse || 0, delayFromDecider);
+              totalDelay += delay;
+              await new Promise((resolve6) => setTimeout(resolve6, delay));
+              continue;
+            }
+            if (!err.$metadata) {
+              err.$metadata = {};
+            }
+            err.$metadata.attempts = attempts;
+            err.$metadata.totalRetryDelay = totalDelay;
+            throw err;
+          }
+        }
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var getDelayFromRetryAfterHeader = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return retryAfterSeconds * 1e3;
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate.getTime() - Date.now();
+    }, "getDelayFromRetryAfterHeader");
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy extends StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        const { rateLimiter, ...superOptions } = options ?? {};
+        super(maxAttemptsProvider, superOptions);
+        this.rateLimiter = rateLimiter ?? new import_util_retry.DefaultRateLimiter();
+        this.mode = import_util_retry.RETRY_MODES.ADAPTIVE;
+      }
+      async retry(next, args) {
+        return super.retry(next, args, {
+          beforeRequest: async () => {
+            return this.rateLimiter.getSendToken();
+          },
+          afterRequest: (response) => {
+            this.rateLimiter.updateClientSendingRate(response);
+          }
+        });
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var import_util_middleware3 = require_dist_cjs10();
+    var ENV_MAX_ATTEMPTS = "AWS_MAX_ATTEMPTS";
+    var CONFIG_MAX_ATTEMPTS = "max_attempts";
+    var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        const value = env2[ENV_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      configFileSelector: (profile) => {
+        const value = profile[CONFIG_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      default: import_util_retry.DEFAULT_MAX_ATTEMPTS
+    };
+    var resolveRetryConfig = /* @__PURE__ */ __name2((input) => {
+      const { retryStrategy } = input;
+      const maxAttempts = (0, import_util_middleware3.normalizeProvider)(input.maxAttempts ?? import_util_retry.DEFAULT_MAX_ATTEMPTS);
+      return {
+        ...input,
+        maxAttempts,
+        retryStrategy: async () => {
+          if (retryStrategy) {
+            return retryStrategy;
+          }
+          const retryMode = await (0, import_util_middleware3.normalizeProvider)(input.retryMode)();
+          if (retryMode === import_util_retry.RETRY_MODES.ADAPTIVE) {
+            return new import_util_retry.AdaptiveRetryStrategy(maxAttempts);
+          }
+          return new import_util_retry.StandardRetryStrategy(maxAttempts);
+        }
+      };
+    }, "resolveRetryConfig");
+    var ENV_RETRY_MODE = "AWS_RETRY_MODE";
+    var CONFIG_RETRY_MODE = "retry_mode";
+    var NODE_RETRY_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_RETRY_MODE],
+      configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],
+      default: import_util_retry.DEFAULT_RETRY_MODE
+    };
+    var omitRetryHeadersMiddleware = /* @__PURE__ */ __name2(() => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+        delete request2.headers[import_util_retry.INVOCATION_ID_HEADER];
+        delete request2.headers[import_util_retry.REQUEST_HEADER];
+      }
+      return next(args);
+    }, "omitRetryHeadersMiddleware");
+    var omitRetryHeadersMiddlewareOptions = {
+      name: "omitRetryHeadersMiddleware",
+      tags: ["RETRY", "HEADERS", "OMIT_RETRY_HEADERS"],
+      relation: "before",
+      toMiddleware: "awsAuthMiddleware",
+      override: true
+    };
+    var getOmitRetryHeadersPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions);
+      }
+    }), "getOmitRetryHeadersPlugin");
+    var import_smithy_client4 = require_dist_cjs33();
+    var import_isStreamingPayload = require_isStreamingPayload();
+    var retryMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7;
+      let retryStrategy = await options.retryStrategy();
+      const maxAttempts = await options.maxAttempts();
+      if (isRetryStrategyV2(retryStrategy)) {
+        retryStrategy = retryStrategy;
+        let retryToken = await retryStrategy.acquireInitialRetryToken(context["partition_id"]);
+        let lastError = new Error();
+        let attempts = 0;
+        let totalRetryDelay = 0;
+        const { request: request2 } = args;
+        const isRequest = import_protocol_http8.HttpRequest.isInstance(request2);
+        if (isRequest) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (isRequest) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            const { response, output } = await next(args);
+            retryStrategy.recordSuccess(retryToken);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalRetryDelay;
+            return { response, output };
+          } catch (e) {
+            const retryErrorInfo = getRetryErrorInfo(e);
+            lastError = asSdkError(e);
+            if (isRequest && (0, import_isStreamingPayload.isStreamingPayload)(request2)) {
+              (_a7 = context.logger instanceof import_smithy_client4.NoOpLogger ? console : context.logger) == null ? void 0 : _a7.warn(
+                "An error was encountered in a non-retryable streaming request."
+              );
+              throw lastError;
+            }
+            try {
+              retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);
+            } catch (refreshError) {
+              if (!lastError.$metadata) {
+                lastError.$metadata = {};
+              }
+              lastError.$metadata.attempts = attempts + 1;
+              lastError.$metadata.totalRetryDelay = totalRetryDelay;
+              throw lastError;
+            }
+            attempts = retryToken.getRetryCount();
+            const delay = retryToken.getRetryDelay();
+            totalRetryDelay += delay;
+            await new Promise((resolve6) => setTimeout(resolve6, delay));
+          }
+        }
+      } else {
+        retryStrategy = retryStrategy;
+        if (retryStrategy == null ? void 0 : retryStrategy.mode)
+          context.userAgent = [...context.userAgent || [], ["cfg/retry-mode", retryStrategy.mode]];
+        return retryStrategy.retry(next, args);
+      }
+    }, "retryMiddleware");
+    var isRetryStrategyV2 = /* @__PURE__ */ __name2((retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== "undefined" && typeof retryStrategy.refreshRetryTokenForRetry !== "undefined" && typeof retryStrategy.recordSuccess !== "undefined", "isRetryStrategyV2");
+    var getRetryErrorInfo = /* @__PURE__ */ __name2((error) => {
+      const errorInfo = {
+        error,
+        errorType: getRetryErrorType(error)
+      };
+      const retryAfterHint = getRetryAfterHint(error.$response);
+      if (retryAfterHint) {
+        errorInfo.retryAfterHint = retryAfterHint;
+      }
+      return errorInfo;
+    }, "getRetryErrorInfo");
+    var getRetryErrorType = /* @__PURE__ */ __name2((error) => {
+      if ((0, import_service_error_classification.isThrottlingError)(error))
+        return "THROTTLING";
+      if ((0, import_service_error_classification.isTransientError)(error))
+        return "TRANSIENT";
+      if ((0, import_service_error_classification.isServerError)(error))
+        return "SERVER_ERROR";
+      return "CLIENT_ERROR";
+    }, "getRetryErrorType");
+    var retryMiddlewareOptions = {
+      name: "retryMiddleware",
+      tags: ["RETRY"],
+      step: "finalizeRequest",
+      priority: "high",
+      override: true
+    };
+    var getRetryPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(retryMiddleware(options), retryMiddlewareOptions);
+      }
+    }), "getRetryPlugin");
+    var getRetryAfterHint = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return new Date(retryAfterSeconds * 1e3);
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate;
+    }, "getRetryAfterHint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js
+var warningEmitted, emitWarningIfUnsupportedVersion;
+var init_emitWarningIfUnsupportedVersion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js"() {
+    warningEmitted = false;
+    emitWarningIfUnsupportedVersion = (version3) => {
+      if (version3 && !warningEmitted && parseInt(version3.substring(1, version3.indexOf("."))) < 18) {
+        warningEmitted = true;
+        process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
+no longer support Node.js 16.x on January 6, 2025.
+
+To continue receiving updates to AWS services, bug fixes, and security
+updates please upgrade to a supported Node.js LTS version.
+
+More information can be found at: https://a.co/74kJMmI`);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js
+var init_client = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js"() {
+    init_emitWarningIfUnsupportedVersion();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js
+var import_protocol_http5, getDateHeader;
+var init_getDateHeader = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js"() {
+    import_protocol_http5 = __toESM(require_dist_cjs2());
+    getDateHeader = (response) => import_protocol_http5.HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : void 0;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js
+var getSkewCorrectedDate;
+var init_getSkewCorrectedDate = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js"() {
+    getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js
+var isClockSkewed;
+var init_isClockSkewed = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js"() {
+    init_getSkewCorrectedDate();
+    isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 3e5;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js
+var getUpdatedSystemClockOffset;
+var init_getUpdatedSystemClockOffset = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js"() {
+    init_isClockSkewed();
+    getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {
+      const clockTimeInMs = Date.parse(clockTime);
+      if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {
+        return clockTimeInMs - Date.now();
+      }
+      return currentSystemClockOffset;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js
+var init_utils2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js"() {
+    init_getDateHeader();
+    init_getSkewCorrectedDate();
+    init_getUpdatedSystemClockOffset();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js
+var import_protocol_http6, throwSigningPropertyError, validateSigningProperties, AwsSdkSigV4Signer, AWSSDKSigV4Signer;
+var init_AwsSdkSigV4Signer = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js"() {
+    import_protocol_http6 = __toESM(require_dist_cjs2());
+    init_utils2();
+    throwSigningPropertyError = (name, property) => {
+      if (!property) {
+        throw new Error(`Property \`${name}\` is not resolved for AWS SDK SigV4Auth`);
+      }
+      return property;
+    };
+    validateSigningProperties = async (signingProperties) => {
+      const context = throwSigningPropertyError("context", signingProperties.context);
+      const config = throwSigningPropertyError("config", signingProperties.config);
+      const authScheme = context.endpointV2?.properties?.authSchemes?.[0];
+      const signerFunction = throwSigningPropertyError("signer", config.signer);
+      const signer = await signerFunction(authScheme);
+      const signingRegion = signingProperties?.signingRegion;
+      const signingRegionSet = signingProperties?.signingRegionSet;
+      const signingName = signingProperties?.signingName;
+      return {
+        config,
+        signer,
+        signingRegion,
+        signingRegionSet,
+        signingName
+      };
+    };
+    AwsSdkSigV4Signer = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http6.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const validatedProps = await validateSigningProperties(signingProperties);
+        const { config, signer } = validatedProps;
+        let { signingRegion, signingName } = validatedProps;
+        const handlerExecutionContext = signingProperties.context;
+        if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {
+          const [first, second] = handlerExecutionContext.authSchemes;
+          if (first?.name === "sigv4a" && second?.name === "sigv4") {
+            signingRegion = second?.signingRegion ?? signingRegion;
+            signingName = second?.signingName ?? signingName;
+          }
+        }
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+      errorHandler(signingProperties) {
+        return (error) => {
+          const serverTime = error.ServerTime ?? getDateHeader(error.$response);
+          if (serverTime) {
+            const config = throwSigningPropertyError("config", signingProperties.config);
+            const initialSystemClockOffset = config.systemClockOffset;
+            config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);
+            const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;
+            if (clockSkewCorrected && error.$metadata) {
+              error.$metadata.clockSkewCorrected = true;
+            }
+          }
+          throw error;
+        };
+      }
+      successHandler(httpResponse, signingProperties) {
+        const dateHeader = getDateHeader(httpResponse);
+        if (dateHeader) {
+          const config = throwSigningPropertyError("config", signingProperties.config);
+          config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);
+        }
+      }
+    };
+    AWSSDKSigV4Signer = AwsSdkSigV4Signer;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js
+var import_protocol_http7, AwsSdkSigV4ASigner;
+var init_AwsSdkSigV4ASigner = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js"() {
+    import_protocol_http7 = __toESM(require_dist_cjs2());
+    init_utils2();
+    init_AwsSdkSigV4Signer();
+    AwsSdkSigV4ASigner = class extends AwsSdkSigV4Signer {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http7.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const { config, signer, signingRegion, signingRegionSet, signingName } = await validateSigningProperties(signingProperties);
+        const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();
+        const multiRegionOverride = (configResolvedSigningRegionSet ?? signingRegionSet ?? [signingRegion]).join(",");
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion: multiRegionOverride,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js
+var import_property_provider, resolveAwsSdkSigV4AConfig, NODE_SIGV4A_CONFIG_OPTIONS;
+var init_resolveAwsSdkSigV4AConfig = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js"() {
+    init_dist_es();
+    import_property_provider = __toESM(require_dist_cjs24());
+    resolveAwsSdkSigV4AConfig = (config) => {
+      config.sigv4aSigningRegionSet = normalizeProvider(config.sigv4aSigningRegionSet);
+      return config;
+    };
+    NODE_SIGV4A_CONFIG_OPTIONS = {
+      environmentVariableSelector(env2) {
+        if (env2.AWS_SIGV4A_SIGNING_REGION_SET) {
+          return env2.AWS_SIGV4A_SIGNING_REGION_SET.split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("AWS_SIGV4A_SIGNING_REGION_SET not set in env.", {
+          tryNextLink: true
+        });
+      },
+      configFileSelector(profile) {
+        if (profile.sigv4a_signing_region_set) {
+          return (profile.sigv4a_signing_region_set ?? "").split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("sigv4a_signing_region_set not set in profile.", {
+          tryNextLink: true
+        });
+      },
+      default: void 0
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/signature-v4/dist-cjs/index.js
+var require_dist_cjs35 = __commonJS({
+  "../../../node_modules/@smithy/signature-v4/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SignatureV4: () => SignatureV42,
+      clearCredentialCache: () => clearCredentialCache,
+      createScope: () => createScope,
+      getCanonicalHeaders: () => getCanonicalHeaders,
+      getCanonicalQuery: () => getCanonicalQuery,
+      getPayloadHash: () => getPayloadHash,
+      getSigningKey: () => getSigningKey,
+      moveHeadersToQuery: () => moveHeadersToQuery,
+      prepareRequest: () => prepareRequest
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_middleware3 = require_dist_cjs10();
+    var import_util_utf84 = require_dist_cjs15();
+    var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm";
+    var CREDENTIAL_QUERY_PARAM = "X-Amz-Credential";
+    var AMZ_DATE_QUERY_PARAM = "X-Amz-Date";
+    var SIGNED_HEADERS_QUERY_PARAM = "X-Amz-SignedHeaders";
+    var EXPIRES_QUERY_PARAM = "X-Amz-Expires";
+    var SIGNATURE_QUERY_PARAM = "X-Amz-Signature";
+    var TOKEN_QUERY_PARAM = "X-Amz-Security-Token";
+    var AUTH_HEADER = "authorization";
+    var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();
+    var DATE_HEADER = "date";
+    var GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];
+    var SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();
+    var SHA256_HEADER = "x-amz-content-sha256";
+    var TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();
+    var ALWAYS_UNSIGNABLE_HEADERS = {
+      authorization: true,
+      "cache-control": true,
+      connection: true,
+      expect: true,
+      from: true,
+      "keep-alive": true,
+      "max-forwards": true,
+      pragma: true,
+      referer: true,
+      te: true,
+      trailer: true,
+      "transfer-encoding": true,
+      upgrade: true,
+      "user-agent": true,
+      "x-amzn-trace-id": true
+    };
+    var PROXY_HEADER_PATTERN = /^proxy-/;
+    var SEC_HEADER_PATTERN = /^sec-/;
+    var ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256";
+    var EVENT_ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256-PAYLOAD";
+    var UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD";
+    var MAX_CACHE_SIZE = 50;
+    var KEY_TYPE_IDENTIFIER = "aws4_request";
+    var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;
+    var import_util_hex_encoding = require_dist_cjs21();
+    var import_util_utf8 = require_dist_cjs15();
+    var signingKeyCache = {};
+    var cacheQueue = [];
+    var createScope = /* @__PURE__ */ __name2((shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`, "createScope");
+    var getSigningKey = /* @__PURE__ */ __name2(async (sha256Constructor, credentials, shortDate, region, service) => {
+      const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);
+      const cacheKey = `${shortDate}:${region}:${service}:${(0, import_util_hex_encoding.toHex)(credsHash)}:${credentials.sessionToken}`;
+      if (cacheKey in signingKeyCache) {
+        return signingKeyCache[cacheKey];
+      }
+      cacheQueue.push(cacheKey);
+      while (cacheQueue.length > MAX_CACHE_SIZE) {
+        delete signingKeyCache[cacheQueue.shift()];
+      }
+      let key = `AWS4${credentials.secretAccessKey}`;
+      for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {
+        key = await hmac(sha256Constructor, key, signable);
+      }
+      return signingKeyCache[cacheKey] = key;
+    }, "getSigningKey");
+    var clearCredentialCache = /* @__PURE__ */ __name2(() => {
+      cacheQueue.length = 0;
+      Object.keys(signingKeyCache).forEach((cacheKey) => {
+        delete signingKeyCache[cacheKey];
+      });
+    }, "clearCredentialCache");
+    var hmac = /* @__PURE__ */ __name2((ctor, secret, data) => {
+      const hash = new ctor(secret);
+      hash.update((0, import_util_utf8.toUint8Array)(data));
+      return hash.digest();
+    }, "hmac");
+    var getCanonicalHeaders = /* @__PURE__ */ __name2(({ headers }, unsignableHeaders, signableHeaders) => {
+      const canonical = {};
+      for (const headerName of Object.keys(headers).sort()) {
+        if (headers[headerName] == void 0) {
+          continue;
+        }
+        const canonicalHeaderName = headerName.toLowerCase();
+        if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS || (unsignableHeaders == null ? void 0 : unsignableHeaders.has(canonicalHeaderName)) || PROXY_HEADER_PATTERN.test(canonicalHeaderName) || SEC_HEADER_PATTERN.test(canonicalHeaderName)) {
+          if (!signableHeaders || signableHeaders && !signableHeaders.has(canonicalHeaderName)) {
+            continue;
+          }
+        }
+        canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\s+/g, " ");
+      }
+      return canonical;
+    }, "getCanonicalHeaders");
+    var import_util_uri_escape = require_dist_cjs17();
+    var getCanonicalQuery = /* @__PURE__ */ __name2(({ query = {} }) => {
+      const keys = [];
+      const serialized = {};
+      for (const key of Object.keys(query)) {
+        if (key.toLowerCase() === SIGNATURE_HEADER) {
+          continue;
+        }
+        const encodedKey = (0, import_util_uri_escape.escapeUri)(key);
+        keys.push(encodedKey);
+        const value = query[key];
+        if (typeof value === "string") {
+          serialized[encodedKey] = `${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value)}`;
+        } else if (Array.isArray(value)) {
+          serialized[encodedKey] = value.slice(0).reduce((encoded, value2) => encoded.concat([`${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value2)}`]), []).sort().join("&");
+        }
+      }
+      return keys.sort().map((key) => serialized[key]).filter((serialized2) => serialized2).join("&");
+    }, "getCanonicalQuery");
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_util_utf82 = require_dist_cjs15();
+    var getPayloadHash = /* @__PURE__ */ __name2(async ({ headers, body }, hashConstructor) => {
+      for (const headerName of Object.keys(headers)) {
+        if (headerName.toLowerCase() === SHA256_HEADER) {
+          return headers[headerName];
+        }
+      }
+      if (body == void 0) {
+        return "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
+      } else if (typeof body === "string" || ArrayBuffer.isView(body) || (0, import_is_array_buffer.isArrayBuffer)(body)) {
+        const hashCtor = new hashConstructor();
+        hashCtor.update((0, import_util_utf82.toUint8Array)(body));
+        return (0, import_util_hex_encoding.toHex)(await hashCtor.digest());
+      }
+      return UNSIGNED_PAYLOAD;
+    }, "getPayloadHash");
+    var import_util_utf83 = require_dist_cjs15();
+    var _HeaderFormatter = class _HeaderFormatter {
+      format(headers) {
+        const chunks = [];
+        for (const headerName of Object.keys(headers)) {
+          const bytes = (0, import_util_utf83.fromUtf8)(headerName);
+          chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));
+        }
+        const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));
+        let position = 0;
+        for (const chunk of chunks) {
+          out.set(chunk, position);
+          position += chunk.byteLength;
+        }
+        return out;
+      }
+      formatHeaderValue(header) {
+        switch (header.type) {
+          case "boolean":
+            return Uint8Array.from([
+              header.value ? 0 : 1
+              /* boolFalse */
+            ]);
+          case "byte":
+            return Uint8Array.from([2, header.value]);
+          case "short":
+            const shortView = new DataView(new ArrayBuffer(3));
+            shortView.setUint8(
+              0,
+              3
+              /* short */
+            );
+            shortView.setInt16(1, header.value, false);
+            return new Uint8Array(shortView.buffer);
+          case "integer":
+            const intView = new DataView(new ArrayBuffer(5));
+            intView.setUint8(
+              0,
+              4
+              /* integer */
+            );
+            intView.setInt32(1, header.value, false);
+            return new Uint8Array(intView.buffer);
+          case "long":
+            const longBytes = new Uint8Array(9);
+            longBytes[0] = 5;
+            longBytes.set(header.value.bytes, 1);
+            return longBytes;
+          case "binary":
+            const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));
+            binView.setUint8(
+              0,
+              6
+              /* byteArray */
+            );
+            binView.setUint16(1, header.value.byteLength, false);
+            const binBytes = new Uint8Array(binView.buffer);
+            binBytes.set(header.value, 3);
+            return binBytes;
+          case "string":
+            const utf8Bytes = (0, import_util_utf83.fromUtf8)(header.value);
+            const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));
+            strView.setUint8(
+              0,
+              7
+              /* string */
+            );
+            strView.setUint16(1, utf8Bytes.byteLength, false);
+            const strBytes = new Uint8Array(strView.buffer);
+            strBytes.set(utf8Bytes, 3);
+            return strBytes;
+          case "timestamp":
+            const tsBytes = new Uint8Array(9);
+            tsBytes[0] = 8;
+            tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);
+            return tsBytes;
+          case "uuid":
+            if (!UUID_PATTERN.test(header.value)) {
+              throw new Error(`Invalid UUID received: ${header.value}`);
+            }
+            const uuidBytes = new Uint8Array(17);
+            uuidBytes[0] = 9;
+            uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1);
+            return uuidBytes;
+        }
+      }
+    };
+    __name2(_HeaderFormatter, "HeaderFormatter");
+    var HeaderFormatter = _HeaderFormatter;
+    var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
+    var _Int64 = class _Int642 {
+      constructor(bytes) {
+        this.bytes = bytes;
+        if (bytes.byteLength !== 8) {
+          throw new Error("Int64 buffers must be exactly 8 bytes");
+        }
+      }
+      static fromNumber(number) {
+        if (number > 9223372036854776e3 || number < -9223372036854776e3) {
+          throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);
+        }
+        const bytes = new Uint8Array(8);
+        for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {
+          bytes[i] = remaining;
+        }
+        if (number < 0) {
+          negate(bytes);
+        }
+        return new _Int642(bytes);
+      }
+      /**
+       * Called implicitly by infix arithmetic operators.
+       */
+      valueOf() {
+        const bytes = this.bytes.slice(0);
+        const negative = bytes[0] & 128;
+        if (negative) {
+          negate(bytes);
+        }
+        return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1);
+      }
+      toString() {
+        return String(this.valueOf());
+      }
+    };
+    __name2(_Int64, "Int64");
+    var Int64 = _Int64;
+    function negate(bytes) {
+      for (let i = 0; i < 8; i++) {
+        bytes[i] ^= 255;
+      }
+      for (let i = 7; i > -1; i--) {
+        bytes[i]++;
+        if (bytes[i] !== 0)
+          break;
+      }
+    }
+    __name2(negate, "negate");
+    var hasHeader = /* @__PURE__ */ __name2((soughtHeader, headers) => {
+      soughtHeader = soughtHeader.toLowerCase();
+      for (const headerName of Object.keys(headers)) {
+        if (soughtHeader === headerName.toLowerCase()) {
+          return true;
+        }
+      }
+      return false;
+    }, "hasHeader");
+    var import_protocol_http8 = require_dist_cjs2();
+    var moveHeadersToQuery = /* @__PURE__ */ __name2((request2, options = {}) => {
+      var _a7, _b;
+      const { headers, query = {} } = import_protocol_http8.HttpRequest.clone(request2);
+      for (const name of Object.keys(headers)) {
+        const lname = name.toLowerCase();
+        if (lname.slice(0, 6) === "x-amz-" && !((_a7 = options.unhoistableHeaders) == null ? void 0 : _a7.has(lname)) || ((_b = options.hoistableHeaders) == null ? void 0 : _b.has(lname))) {
+          query[name] = headers[name];
+          delete headers[name];
+        }
+      }
+      return {
+        ...request2,
+        headers,
+        query
+      };
+    }, "moveHeadersToQuery");
+    var prepareRequest = /* @__PURE__ */ __name2((request2) => {
+      request2 = import_protocol_http8.HttpRequest.clone(request2);
+      for (const headerName of Object.keys(request2.headers)) {
+        if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {
+          delete request2.headers[headerName];
+        }
+      }
+      return request2;
+    }, "prepareRequest");
+    var iso8601 = /* @__PURE__ */ __name2((time) => toDate(time).toISOString().replace(/\.\d{3}Z$/, "Z"), "iso8601");
+    var toDate = /* @__PURE__ */ __name2((time) => {
+      if (typeof time === "number") {
+        return new Date(time * 1e3);
+      }
+      if (typeof time === "string") {
+        if (Number(time)) {
+          return new Date(Number(time) * 1e3);
+        }
+        return new Date(time);
+      }
+      return time;
+    }, "toDate");
+    var _SignatureV4 = class _SignatureV4 {
+      constructor({
+        applyChecksum,
+        credentials,
+        region,
+        service,
+        sha256,
+        uriEscapePath = true
+      }) {
+        this.headerFormatter = new HeaderFormatter();
+        this.service = service;
+        this.sha256 = sha256;
+        this.uriEscapePath = uriEscapePath;
+        this.applyChecksum = typeof applyChecksum === "boolean" ? applyChecksum : true;
+        this.regionProvider = (0, import_util_middleware3.normalizeProvider)(region);
+        this.credentialProvider = (0, import_util_middleware3.normalizeProvider)(credentials);
+      }
+      async presign(originalRequest, options = {}) {
+        const {
+          signingDate = /* @__PURE__ */ new Date(),
+          expiresIn = 3600,
+          unsignableHeaders,
+          unhoistableHeaders,
+          signableHeaders,
+          hoistableHeaders,
+          signingRegion,
+          signingService
+        } = options;
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { longDate, shortDate } = formatDate(signingDate);
+        if (expiresIn > MAX_PRESIGNED_TTL) {
+          return Promise.reject(
+            "Signature version 4 presigned URLs must have an expiration date less than one week in the future"
+          );
+        }
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const request2 = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders, hoistableHeaders });
+        if (credentials.sessionToken) {
+          request2.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;
+        }
+        request2.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;
+        request2.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;
+        request2.query[AMZ_DATE_QUERY_PARAM] = longDate;
+        request2.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        request2.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders);
+        request2.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256))
+        );
+        return request2;
+      }
+      async sign(toSign, options) {
+        if (typeof toSign === "string") {
+          return this.signString(toSign, options);
+        } else if (toSign.headers && toSign.payload) {
+          return this.signEvent(toSign, options);
+        } else if (toSign.message) {
+          return this.signMessage(toSign, options);
+        } else {
+          return this.signRequest(toSign, options);
+        }
+      }
+      async signEvent({ headers, payload }, { signingDate = /* @__PURE__ */ new Date(), priorSignature, signingRegion, signingService }) {
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate, longDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);
+        const hash = new this.sha256();
+        hash.update(headers);
+        const hashedHeaders = (0, import_util_hex_encoding.toHex)(await hash.digest());
+        const stringToSign = [
+          EVENT_ALGORITHM_IDENTIFIER,
+          longDate,
+          scope,
+          priorSignature,
+          hashedHeaders,
+          hashedPayload
+        ].join("\n");
+        return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });
+      }
+      async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) {
+        const promise = this.signEvent(
+          {
+            headers: this.headerFormatter.format(signableMessage.message.headers),
+            payload: signableMessage.message.body
+          },
+          {
+            signingDate,
+            signingRegion,
+            signingService,
+            priorSignature: signableMessage.priorSignature
+          }
+        );
+        return promise.then((signature) => {
+          return { message: signableMessage.message, signature };
+        });
+      }
+      async signString(stringToSign, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate } = formatDate(signingDate);
+        const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      async signRequest(requestToSign, {
+        signingDate = /* @__PURE__ */ new Date(),
+        signableHeaders,
+        unsignableHeaders,
+        signingRegion,
+        signingService
+      } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const request2 = prepareRequest(requestToSign);
+        const { longDate, shortDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        request2.headers[AMZ_DATE_HEADER] = longDate;
+        if (credentials.sessionToken) {
+          request2.headers[TOKEN_HEADER] = credentials.sessionToken;
+        }
+        const payloadHash = await getPayloadHash(request2, this.sha256);
+        if (!hasHeader(SHA256_HEADER, request2.headers) && this.applyChecksum) {
+          request2.headers[SHA256_HEADER] = payloadHash;
+        }
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        const signature = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, payloadHash)
+        );
+        request2.headers[AUTH_HEADER] = `${ALGORITHM_IDENTIFIER} Credential=${credentials.accessKeyId}/${scope}, SignedHeaders=${getCanonicalHeaderList(canonicalHeaders)}, Signature=${signature}`;
+        return request2;
+      }
+      createCanonicalRequest(request2, canonicalHeaders, payloadHash) {
+        const sortedHeaders = Object.keys(canonicalHeaders).sort();
+        return `${request2.method}
+${this.getCanonicalPath(request2)}
+${getCanonicalQuery(request2)}
+${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join("\n")}
+
+${sortedHeaders.join(";")}
+${payloadHash}`;
+      }
+      async createStringToSign(longDate, credentialScope, canonicalRequest) {
+        const hash = new this.sha256();
+        hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest));
+        const hashedRequest = await hash.digest();
+        return `${ALGORITHM_IDENTIFIER}
+${longDate}
+${credentialScope}
+${(0, import_util_hex_encoding.toHex)(hashedRequest)}`;
+      }
+      getCanonicalPath({ path: path23 }) {
+        if (this.uriEscapePath) {
+          const normalizedPathSegments = [];
+          for (const pathSegment of path23.split("/")) {
+            if ((pathSegment == null ? void 0 : pathSegment.length) === 0)
+              continue;
+            if (pathSegment === ".")
+              continue;
+            if (pathSegment === "..") {
+              normalizedPathSegments.pop();
+            } else {
+              normalizedPathSegments.push(pathSegment);
+            }
+          }
+          const normalizedPath = `${(path23 == null ? void 0 : path23.startsWith("/")) ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && (path23 == null ? void 0 : path23.endsWith("/")) ? "/" : ""}`;
+          const doubleEncoded = (0, import_util_uri_escape.escapeUri)(normalizedPath);
+          return doubleEncoded.replace(/%2F/g, "/");
+        }
+        return path23;
+      }
+      async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {
+        const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest);
+        const hash = new this.sha256(await keyPromise);
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      getSigningKey(credentials, region, shortDate, service) {
+        return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);
+      }
+      validateResolvedCredentials(credentials) {
+        if (typeof credentials !== "object" || // @ts-expect-error: Property 'accessKeyId' does not exist on type 'object'.ts(2339)
+        typeof credentials.accessKeyId !== "string" || // @ts-expect-error: Property 'secretAccessKey' does not exist on type 'object'.ts(2339)
+        typeof credentials.secretAccessKey !== "string") {
+          throw new Error("Resolved credential object is not valid");
+        }
+      }
+    };
+    __name2(_SignatureV4, "SignatureV4");
+    var SignatureV42 = _SignatureV4;
+    var formatDate = /* @__PURE__ */ __name2((now) => {
+      const longDate = iso8601(now).replace(/[\-:]/g, "");
+      return {
+        longDate,
+        shortDate: longDate.slice(0, 8)
+      };
+    }, "formatDate");
+    var getCanonicalHeaderList = /* @__PURE__ */ __name2((headers) => Object.keys(headers).sort().join(";"), "getCanonicalHeaderList");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js
+var import_signature_v4, resolveAwsSdkSigV4Config, resolveAWSSDKSigV4Config;
+var init_resolveAwsSdkSigV4Config = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js"() {
+    init_dist_es();
+    import_signature_v4 = __toESM(require_dist_cjs35());
+    resolveAwsSdkSigV4Config = (config) => {
+      let normalizedCreds;
+      if (config.credentials) {
+        normalizedCreds = memoizeIdentityProvider(config.credentials, isIdentityExpired, doesIdentityRequireRefresh);
+      }
+      if (!normalizedCreds) {
+        if (config.credentialDefaultProvider) {
+          normalizedCreds = normalizeProvider(config.credentialDefaultProvider(Object.assign({}, config, {
+            parentClientConfig: config
+          })));
+        } else {
+          normalizedCreds = async () => {
+            throw new Error("`credentials` is missing");
+          };
+        }
+      }
+      const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256 } = config;
+      let signer;
+      if (config.signer) {
+        signer = normalizeProvider(config.signer);
+      } else if (config.regionInfoProvider) {
+        signer = () => normalizeProvider(config.region)().then(async (region) => [
+          await config.regionInfoProvider(region, {
+            useFipsEndpoint: await config.useFipsEndpoint(),
+            useDualstackEndpoint: await config.useDualstackEndpoint()
+          }) || {},
+          region
+        ]).then(([regionInfo, region]) => {
+          const { signingRegion, signingService } = regionInfo;
+          config.signingRegion = config.signingRegion || signingRegion || region;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        });
+      } else {
+        signer = async (authScheme) => {
+          authScheme = Object.assign({}, {
+            name: "sigv4",
+            signingName: config.signingName || config.defaultSigningName,
+            signingRegion: await normalizeProvider(config.region)(),
+            properties: {}
+          }, authScheme);
+          const signingRegion = authScheme.signingRegion;
+          const signingService = authScheme.signingName;
+          config.signingRegion = config.signingRegion || signingRegion;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        };
+      }
+      return {
+        ...config,
+        systemClockOffset,
+        signingEscapePath,
+        credentials: normalizedCreds,
+        signer
+      };
+    };
+    resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js
+var init_aws_sdk = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js"() {
+    init_AwsSdkSigV4Signer();
+    init_AwsSdkSigV4ASigner();
+    init_resolveAwsSdkSigV4AConfig();
+    init_resolveAwsSdkSigV4Config();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js
+var init_httpAuthSchemes2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js"() {
+    init_aws_sdk();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js
+var _toStr, _toBool, _toNum;
+var init_coercing_serializers = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js"() {
+    _toStr = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number" || typeof val2 === "bigint") {
+        const warning = new Error(`Received number ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      if (typeof val2 === "boolean") {
+        const warning = new Error(`Received boolean ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      return val2;
+    };
+    _toBool = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number") {
+      }
+      if (typeof val2 === "string") {
+        const lowercase = val2.toLowerCase();
+        if (val2 !== "" && lowercase !== "false" && lowercase !== "true") {
+          const warning = new Error(`Received string "${val2}" where a boolean was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+        }
+        return val2 !== "" && lowercase !== "false";
+      }
+      return val2;
+    };
+    _toNum = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "boolean") {
+      }
+      if (typeof val2 === "string") {
+        const num = Number(val2);
+        if (num.toString() !== val2) {
+          const warning = new Error(`Received string "${val2}" where a number was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+          return val2;
+        }
+        return num;
+      }
+      return val2;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js
+var import_smithy_client, awsExpectUnion;
+var init_awsExpectUnion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js"() {
+    import_smithy_client = __toESM(require_dist_cjs33());
+    awsExpectUnion = (value) => {
+      if (value == null) {
+        return void 0;
+      }
+      if (typeof value === "object" && "__type" in value) {
+        delete value.__type;
+      }
+      return (0, import_smithy_client.expectUnion)(value);
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js
+var import_smithy_client2, collectBodyString;
+var init_common = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js"() {
+    import_smithy_client2 = __toESM(require_dist_cjs33());
+    collectBodyString = (streamBody, context) => (0, import_smithy_client2.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body));
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js
+var parseJsonBody, parseJsonErrorBody, loadRestJsonErrorCode;
+var init_parseJsonBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js"() {
+    init_common();
+    parseJsonBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        try {
+          return JSON.parse(encoded);
+        } catch (e) {
+          if (e?.name === "SyntaxError") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+      }
+      return {};
+    });
+    parseJsonErrorBody = async (errorBody, context) => {
+      const value = await parseJsonBody(errorBody, context);
+      value.message = value.message ?? value.Message;
+      return value;
+    };
+    loadRestJsonErrorCode = (output, data) => {
+      const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase());
+      const sanitizeErrorCode = (rawValue) => {
+        let cleanValue = rawValue;
+        if (typeof cleanValue === "number") {
+          cleanValue = cleanValue.toString();
+        }
+        if (cleanValue.indexOf(",") >= 0) {
+          cleanValue = cleanValue.split(",")[0];
+        }
+        if (cleanValue.indexOf(":") >= 0) {
+          cleanValue = cleanValue.split(":")[0];
+        }
+        if (cleanValue.indexOf("#") >= 0) {
+          cleanValue = cleanValue.split("#")[1];
+        }
+        return cleanValue;
+      };
+      const headerKey = findKey(output.headers, "x-amzn-errortype");
+      if (headerKey !== void 0) {
+        return sanitizeErrorCode(output.headers[headerKey]);
+      }
+      if (data.code !== void 0) {
+        return sanitizeErrorCode(data.code);
+      }
+      if (data["__type"] !== void 0) {
+        return sanitizeErrorCode(data["__type"]);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/util.js
+var require_util = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/util.js"(exports2) {
+    "use strict";
+    var nameStartChar = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD";
+    var nameChar = nameStartChar + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040";
+    var nameRegexp = "[" + nameStartChar + "][" + nameChar + "]*";
+    var regexName = new RegExp("^" + nameRegexp + "$");
+    var getAllMatches = function(string, regex) {
+      const matches = [];
+      let match = regex.exec(string);
+      while (match) {
+        const allmatches = [];
+        allmatches.startIndex = regex.lastIndex - match[0].length;
+        const len = match.length;
+        for (let index = 0; index < len; index++) {
+          allmatches.push(match[index]);
+        }
+        matches.push(allmatches);
+        match = regex.exec(string);
+      }
+      return matches;
+    };
+    var isName = function(string) {
+      const match = regexName.exec(string);
+      return !(match === null || typeof match === "undefined");
+    };
+    exports2.isExist = function(v) {
+      return typeof v !== "undefined";
+    };
+    exports2.isEmptyObject = function(obj) {
+      return Object.keys(obj).length === 0;
+    };
+    exports2.merge = function(target, a, arrayMode) {
+      if (a) {
+        const keys = Object.keys(a);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          if (arrayMode === "strict") {
+            target[keys[i]] = [a[keys[i]]];
+          } else {
+            target[keys[i]] = a[keys[i]];
+          }
+        }
+      }
+    };
+    exports2.getValue = function(v) {
+      if (exports2.isExist(v)) {
+        return v;
+      } else {
+        return "";
+      }
+    };
+    exports2.isName = isName;
+    exports2.getAllMatches = getAllMatches;
+    exports2.nameRegexp = nameRegexp;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/validator.js
+var require_validator2 = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/validator.js"(exports2) {
+    "use strict";
+    var util = require_util();
+    var defaultOptions = {
+      allowBooleanAttributes: false,
+      //A tag can have attributes without any value
+      unpairedTags: []
+    };
+    exports2.validate = function(xmlData, options) {
+      options = Object.assign({}, defaultOptions, options);
+      const tags = [];
+      let tagFound = false;
+      let reachedRoot = false;
+      if (xmlData[0] === "\uFEFF") {
+        xmlData = xmlData.substr(1);
+      }
+      for (let i = 0; i < xmlData.length; i++) {
+        if (xmlData[i] === "<" && xmlData[i + 1] === "?") {
+          i += 2;
+          i = readPI(xmlData, i);
+          if (i.err) return i;
+        } else if (xmlData[i] === "<") {
+          let tagStartPos = i;
+          i++;
+          if (xmlData[i] === "!") {
+            i = readCommentAndCDATA(xmlData, i);
+            continue;
+          } else {
+            let closingTag = false;
+            if (xmlData[i] === "/") {
+              closingTag = true;
+              i++;
+            }
+            let tagName = "";
+            for (; i < xmlData.length && xmlData[i] !== ">" && xmlData[i] !== " " && xmlData[i] !== "	" && xmlData[i] !== "\n" && xmlData[i] !== "\r"; i++) {
+              tagName += xmlData[i];
+            }
+            tagName = tagName.trim();
+            if (tagName[tagName.length - 1] === "/") {
+              tagName = tagName.substring(0, tagName.length - 1);
+              i--;
+            }
+            if (!validateTagName(tagName)) {
+              let msg;
+              if (tagName.trim().length === 0) {
+                msg = "Invalid space after '<'.";
+              } else {
+                msg = "Tag '" + tagName + "' is an invalid name.";
+              }
+              return getErrorObject("InvalidTag", msg, getLineNumberForPosition(xmlData, i));
+            }
+            const result = readAttributeStr(xmlData, i);
+            if (result === false) {
+              return getErrorObject("InvalidAttr", "Attributes for '" + tagName + "' have open quote.", getLineNumberForPosition(xmlData, i));
+            }
+            let attrStr = result.value;
+            i = result.index;
+            if (attrStr[attrStr.length - 1] === "/") {
+              const attrStrStart = i - attrStr.length;
+              attrStr = attrStr.substring(0, attrStr.length - 1);
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid === true) {
+                tagFound = true;
+              } else {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));
+              }
+            } else if (closingTag) {
+              if (!result.tagClosed) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' doesn't have proper closing.", getLineNumberForPosition(xmlData, i));
+              } else if (attrStr.trim().length > 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' can't have attributes or invalid starting.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else if (tags.length === 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' has not been opened.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else {
+                const otg = tags.pop();
+                if (tagName !== otg.tagName) {
+                  let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);
+                  return getErrorObject(
+                    "InvalidTag",
+                    "Expected closing tag '" + otg.tagName + "' (opened in line " + openPos.line + ", col " + openPos.col + ") instead of closing tag '" + tagName + "'.",
+                    getLineNumberForPosition(xmlData, tagStartPos)
+                  );
+                }
+                if (tags.length == 0) {
+                  reachedRoot = true;
+                }
+              }
+            } else {
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid !== true) {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));
+              }
+              if (reachedRoot === true) {
+                return getErrorObject("InvalidXml", "Multiple possible root nodes found.", getLineNumberForPosition(xmlData, i));
+              } else if (options.unpairedTags.indexOf(tagName) !== -1) {
+              } else {
+                tags.push({ tagName, tagStartPos });
+              }
+              tagFound = true;
+            }
+            for (i++; i < xmlData.length; i++) {
+              if (xmlData[i] === "<") {
+                if (xmlData[i + 1] === "!") {
+                  i++;
+                  i = readCommentAndCDATA(xmlData, i);
+                  continue;
+                } else if (xmlData[i + 1] === "?") {
+                  i = readPI(xmlData, ++i);
+                  if (i.err) return i;
+                } else {
+                  break;
+                }
+              } else if (xmlData[i] === "&") {
+                const afterAmp = validateAmpersand(xmlData, i);
+                if (afterAmp == -1)
+                  return getErrorObject("InvalidChar", "char '&' is not expected.", getLineNumberForPosition(xmlData, i));
+                i = afterAmp;
+              } else {
+                if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {
+                  return getErrorObject("InvalidXml", "Extra text at the end", getLineNumberForPosition(xmlData, i));
+                }
+              }
+            }
+            if (xmlData[i] === "<") {
+              i--;
+            }
+          }
+        } else {
+          if (isWhiteSpace(xmlData[i])) {
+            continue;
+          }
+          return getErrorObject("InvalidChar", "char '" + xmlData[i] + "' is not expected.", getLineNumberForPosition(xmlData, i));
+        }
+      }
+      if (!tagFound) {
+        return getErrorObject("InvalidXml", "Start tag expected.", 1);
+      } else if (tags.length == 1) {
+        return getErrorObject("InvalidTag", "Unclosed tag '" + tags[0].tagName + "'.", getLineNumberForPosition(xmlData, tags[0].tagStartPos));
+      } else if (tags.length > 0) {
+        return getErrorObject("InvalidXml", "Invalid '" + JSON.stringify(tags.map((t) => t.tagName), null, 4).replace(/\r?\n/g, "") + "' found.", { line: 1, col: 1 });
+      }
+      return true;
+    };
+    function isWhiteSpace(char) {
+      return char === " " || char === "	" || char === "\n" || char === "\r";
+    }
+    function readPI(xmlData, i) {
+      const start = i;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] == "?" || xmlData[i] == " ") {
+          const tagname = xmlData.substr(start, i - start);
+          if (i > 5 && tagname === "xml") {
+            return getErrorObject("InvalidXml", "XML declaration allowed only at the start of the document.", getLineNumberForPosition(xmlData, i));
+          } else if (xmlData[i] == "?" && xmlData[i + 1] == ">") {
+            i++;
+            break;
+          } else {
+            continue;
+          }
+        }
+      }
+      return i;
+    }
+    function readCommentAndCDATA(xmlData, i) {
+      if (xmlData.length > i + 5 && xmlData[i + 1] === "-" && xmlData[i + 2] === "-") {
+        for (i += 3; i < xmlData.length; i++) {
+          if (xmlData[i] === "-" && xmlData[i + 1] === "-" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      } else if (xmlData.length > i + 8 && xmlData[i + 1] === "D" && xmlData[i + 2] === "O" && xmlData[i + 3] === "C" && xmlData[i + 4] === "T" && xmlData[i + 5] === "Y" && xmlData[i + 6] === "P" && xmlData[i + 7] === "E") {
+        let angleBracketsCount = 1;
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "<") {
+            angleBracketsCount++;
+          } else if (xmlData[i] === ">") {
+            angleBracketsCount--;
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          }
+        }
+      } else if (xmlData.length > i + 9 && xmlData[i + 1] === "[" && xmlData[i + 2] === "C" && xmlData[i + 3] === "D" && xmlData[i + 4] === "A" && xmlData[i + 5] === "T" && xmlData[i + 6] === "A" && xmlData[i + 7] === "[") {
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "]" && xmlData[i + 1] === "]" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      }
+      return i;
+    }
+    var doubleQuote = '"';
+    var singleQuote = "'";
+    function readAttributeStr(xmlData, i) {
+      let attrStr = "";
+      let startChar = "";
+      let tagClosed = false;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {
+          if (startChar === "") {
+            startChar = xmlData[i];
+          } else if (startChar !== xmlData[i]) {
+          } else {
+            startChar = "";
+          }
+        } else if (xmlData[i] === ">") {
+          if (startChar === "") {
+            tagClosed = true;
+            break;
+          }
+        }
+        attrStr += xmlData[i];
+      }
+      if (startChar !== "") {
+        return false;
+      }
+      return {
+        value: attrStr,
+        index: i,
+        tagClosed
+      };
+    }
+    var validAttrStrRegxp = new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`, "g");
+    function validateAttributeString(attrStr, options) {
+      const matches = util.getAllMatches(attrStr, validAttrStrRegxp);
+      const attrNames = {};
+      for (let i = 0; i < matches.length; i++) {
+        if (matches[i][1].length === 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' has no space in starting.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] !== void 0 && matches[i][4] === void 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' is without value.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] === void 0 && !options.allowBooleanAttributes) {
+          return getErrorObject("InvalidAttr", "boolean attribute '" + matches[i][2] + "' is not allowed.", getPositionFromMatch(matches[i]));
+        }
+        const attrName = matches[i][2];
+        if (!validateAttrName(attrName)) {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is an invalid name.", getPositionFromMatch(matches[i]));
+        }
+        if (!attrNames.hasOwnProperty(attrName)) {
+          attrNames[attrName] = 1;
+        } else {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is repeated.", getPositionFromMatch(matches[i]));
+        }
+      }
+      return true;
+    }
+    function validateNumberAmpersand(xmlData, i) {
+      let re = /\d/;
+      if (xmlData[i] === "x") {
+        i++;
+        re = /[\da-fA-F]/;
+      }
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === ";")
+          return i;
+        if (!xmlData[i].match(re))
+          break;
+      }
+      return -1;
+    }
+    function validateAmpersand(xmlData, i) {
+      i++;
+      if (xmlData[i] === ";")
+        return -1;
+      if (xmlData[i] === "#") {
+        i++;
+        return validateNumberAmpersand(xmlData, i);
+      }
+      let count2 = 0;
+      for (; i < xmlData.length; i++, count2++) {
+        if (xmlData[i].match(/\w/) && count2 < 20)
+          continue;
+        if (xmlData[i] === ";")
+          break;
+        return -1;
+      }
+      return i;
+    }
+    function getErrorObject(code, message, lineNumber) {
+      return {
+        err: {
+          code,
+          msg: message,
+          line: lineNumber.line || lineNumber,
+          col: lineNumber.col
+        }
+      };
+    }
+    function validateAttrName(attrName) {
+      return util.isName(attrName);
+    }
+    function validateTagName(tagname) {
+      return util.isName(tagname);
+    }
+    function getLineNumberForPosition(xmlData, index) {
+      const lines = xmlData.substring(0, index).split(/\r?\n/);
+      return {
+        line: lines.length,
+        // column number is last line's length + 1, because column numbering starts at 1:
+        col: lines[lines.length - 1].length + 1
+      };
+    }
+    function getPositionFromMatch(match) {
+      return match.startIndex + match[1].length;
+    }
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js
+var require_OptionsBuilder = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js"(exports2) {
+    var defaultOptions = {
+      preserveOrder: false,
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      removeNSPrefix: false,
+      // remove NS from tag name or attribute name if true
+      allowBooleanAttributes: false,
+      //a tag can have attributes without any value
+      //ignoreRootElement : false,
+      parseTagValue: true,
+      parseAttributeValue: false,
+      trimValues: true,
+      //Trim string values of tag and attributes
+      cdataPropName: false,
+      numberParseOptions: {
+        hex: true,
+        leadingZeros: true,
+        eNotation: true
+      },
+      tagValueProcessor: function(tagName, val2) {
+        return val2;
+      },
+      attributeValueProcessor: function(attrName, val2) {
+        return val2;
+      },
+      stopNodes: [],
+      //nested tags will not be parsed even for errors
+      alwaysCreateTextNode: false,
+      isArray: () => false,
+      commentPropName: false,
+      unpairedTags: [],
+      processEntities: true,
+      htmlEntities: false,
+      ignoreDeclaration: false,
+      ignorePiTags: false,
+      transformTagName: false,
+      transformAttributeName: false,
+      updateTag: function(tagName, jPath, attrs) {
+        return tagName;
+      }
+      // skipEmptyListItem: false
+    };
+    var buildOptions = function(options) {
+      return Object.assign({}, defaultOptions, options);
+    };
+    exports2.buildOptions = buildOptions;
+    exports2.defaultOptions = defaultOptions;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js
+var require_xmlNode = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js"(exports2, module2) {
+    "use strict";
+    var XmlNode = class {
+      constructor(tagname) {
+        this.tagname = tagname;
+        this.child = [];
+        this[":@"] = {};
+      }
+      add(key, val2) {
+        if (key === "__proto__") key = "#__proto__";
+        this.child.push({ [key]: val2 });
+      }
+      addChild(node) {
+        if (node.tagname === "__proto__") node.tagname = "#__proto__";
+        if (node[":@"] && Object.keys(node[":@"]).length > 0) {
+          this.child.push({ [node.tagname]: node.child, [":@"]: node[":@"] });
+        } else {
+          this.child.push({ [node.tagname]: node.child });
+        }
+      }
+    };
+    module2.exports = XmlNode;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js
+var require_DocTypeReader = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js"(exports2, module2) {
+    var util = require_util();
+    function readDocType(xmlData, i) {
+      const entities = {};
+      if (xmlData[i + 3] === "O" && xmlData[i + 4] === "C" && xmlData[i + 5] === "T" && xmlData[i + 6] === "Y" && xmlData[i + 7] === "P" && xmlData[i + 8] === "E") {
+        i = i + 9;
+        let angleBracketsCount = 1;
+        let hasBody = false, comment = false;
+        let exp = "";
+        for (; i < xmlData.length; i++) {
+          if (xmlData[i] === "<" && !comment) {
+            if (hasBody && isEntity(xmlData, i)) {
+              i += 7;
+              [entityName, val, i] = readEntityExp(xmlData, i + 1);
+              if (val.indexOf("&") === -1)
+                entities[validateEntityName(entityName)] = {
+                  regx: RegExp(`&${entityName};`, "g"),
+                  val
+                };
+            } else if (hasBody && isElement(xmlData, i)) i += 8;
+            else if (hasBody && isAttlist(xmlData, i)) i += 8;
+            else if (hasBody && isNotation(xmlData, i)) i += 9;
+            else if (isComment) comment = true;
+            else throw new Error("Invalid DOCTYPE");
+            angleBracketsCount++;
+            exp = "";
+          } else if (xmlData[i] === ">") {
+            if (comment) {
+              if (xmlData[i - 1] === "-" && xmlData[i - 2] === "-") {
+                comment = false;
+                angleBracketsCount--;
+              }
+            } else {
+              angleBracketsCount--;
+            }
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          } else if (xmlData[i] === "[") {
+            hasBody = true;
+          } else {
+            exp += xmlData[i];
+          }
+        }
+        if (angleBracketsCount !== 0) {
+          throw new Error(`Unclosed DOCTYPE`);
+        }
+      } else {
+        throw new Error(`Invalid Tag instead of DOCTYPE`);
+      }
+      return { entities, i };
+    }
+    function readEntityExp(xmlData, i) {
+      let entityName2 = "";
+      for (; i < xmlData.length && (xmlData[i] !== "'" && xmlData[i] !== '"'); i++) {
+        entityName2 += xmlData[i];
+      }
+      entityName2 = entityName2.trim();
+      if (entityName2.indexOf(" ") !== -1) throw new Error("External entites are not supported");
+      const startChar = xmlData[i++];
+      let val2 = "";
+      for (; i < xmlData.length && xmlData[i] !== startChar; i++) {
+        val2 += xmlData[i];
+      }
+      return [entityName2, val2, i];
+    }
+    function isComment(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "-" && xmlData[i + 3] === "-") return true;
+      return false;
+    }
+    function isEntity(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "N" && xmlData[i + 4] === "T" && xmlData[i + 5] === "I" && xmlData[i + 6] === "T" && xmlData[i + 7] === "Y") return true;
+      return false;
+    }
+    function isElement(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "L" && xmlData[i + 4] === "E" && xmlData[i + 5] === "M" && xmlData[i + 6] === "E" && xmlData[i + 7] === "N" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isAttlist(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "A" && xmlData[i + 3] === "T" && xmlData[i + 4] === "T" && xmlData[i + 5] === "L" && xmlData[i + 6] === "I" && xmlData[i + 7] === "S" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isNotation(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "N" && xmlData[i + 3] === "O" && xmlData[i + 4] === "T" && xmlData[i + 5] === "A" && xmlData[i + 6] === "T" && xmlData[i + 7] === "I" && xmlData[i + 8] === "O" && xmlData[i + 9] === "N") return true;
+      return false;
+    }
+    function validateEntityName(name) {
+      if (util.isName(name))
+        return name;
+      else
+        throw new Error(`Invalid entity name ${name}`);
+    }
+    module2.exports = readDocType;
+  }
+});
+
+// ../../../node_modules/strnum/strnum.js
+var require_strnum = __commonJS({
+  "../../../node_modules/strnum/strnum.js"(exports2, module2) {
+    var hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;
+    var numRegex = /^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/;
+    var consider = {
+      hex: true,
+      // oct: false,
+      leadingZeros: true,
+      decimalPoint: ".",
+      eNotation: true
+      //skipLike: /regex/
+    };
+    function toNumber(str, options = {}) {
+      options = Object.assign({}, consider, options);
+      if (!str || typeof str !== "string") return str;
+      let trimmedStr = str.trim();
+      if (options.skipLike !== void 0 && options.skipLike.test(trimmedStr)) return str;
+      else if (str === "0") return 0;
+      else if (options.hex && hexRegex.test(trimmedStr)) {
+        return parse_int(trimmedStr, 16);
+      } else if (trimmedStr.search(/[eE]/) !== -1) {
+        const notation = trimmedStr.match(/^([-\+])?(0*)([0-9]*(\.[0-9]*)?[eE][-\+]?[0-9]+)$/);
+        if (notation) {
+          if (options.leadingZeros) {
+            trimmedStr = (notation[1] || "") + notation[3];
+          } else {
+            if (notation[2] === "0" && notation[3][0] === ".") {
+            } else {
+              return str;
+            }
+          }
+          return options.eNotation ? Number(trimmedStr) : str;
+        } else {
+          return str;
+        }
+      } else {
+        const match = numRegex.exec(trimmedStr);
+        if (match) {
+          const sign = match[1];
+          const leadingZeros = match[2];
+          let numTrimmedByZeros = trimZeros(match[3]);
+          if (!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== ".") return str;
+          else if (!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== ".") return str;
+          else if (options.leadingZeros && leadingZeros === str) return 0;
+          else {
+            const num = Number(trimmedStr);
+            const numStr = "" + num;
+            if (numStr.search(/[eE]/) !== -1) {
+              if (options.eNotation) return num;
+              else return str;
+            } else if (trimmedStr.indexOf(".") !== -1) {
+              if (numStr === "0" && numTrimmedByZeros === "") return num;
+              else if (numStr === numTrimmedByZeros) return num;
+              else if (sign && numStr === "-" + numTrimmedByZeros) return num;
+              else return str;
+            }
+            if (leadingZeros) {
+              return numTrimmedByZeros === numStr || sign + numTrimmedByZeros === numStr ? num : str;
+            } else {
+              return trimmedStr === numStr || trimmedStr === sign + numStr ? num : str;
+            }
+          }
+        } else {
+          return str;
+        }
+      }
+    }
+    function trimZeros(numStr) {
+      if (numStr && numStr.indexOf(".") !== -1) {
+        numStr = numStr.replace(/0+$/, "");
+        if (numStr === ".") numStr = "0";
+        else if (numStr[0] === ".") numStr = "0" + numStr;
+        else if (numStr[numStr.length - 1] === ".") numStr = numStr.substr(0, numStr.length - 1);
+        return numStr;
+      }
+      return numStr;
+    }
+    function parse_int(numStr, base) {
+      if (parseInt) return parseInt(numStr, base);
+      else if (Number.parseInt) return Number.parseInt(numStr, base);
+      else if (window && window.parseInt) return window.parseInt(numStr, base);
+      else throw new Error("parseInt, Number.parseInt, window.parseInt are not supported");
+    }
+    module2.exports = toNumber;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js
+var require_OrderedObjParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js"(exports2, module2) {
+    "use strict";
+    var util = require_util();
+    var xmlNode = require_xmlNode();
+    var readDocType = require_DocTypeReader();
+    var toNumber = require_strnum();
+    var OrderedObjParser = class {
+      constructor(options) {
+        this.options = options;
+        this.currentNode = null;
+        this.tagsNodeStack = [];
+        this.docTypeEntities = {};
+        this.lastEntities = {
+          "apos": { regex: /&(apos|#39|#x27);/g, val: "'" },
+          "gt": { regex: /&(gt|#62|#x3E);/g, val: ">" },
+          "lt": { regex: /&(lt|#60|#x3C);/g, val: "<" },
+          "quot": { regex: /&(quot|#34|#x22);/g, val: '"' }
+        };
+        this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: "&" };
+        this.htmlEntities = {
+          "space": { regex: /&(nbsp|#160);/g, val: " " },
+          // "lt" : { regex: /&(lt|#60);/g, val: "<" },
+          // "gt" : { regex: /&(gt|#62);/g, val: ">" },
+          // "amp" : { regex: /&(amp|#38);/g, val: "&" },
+          // "quot" : { regex: /&(quot|#34);/g, val: "\"" },
+          // "apos" : { regex: /&(apos|#39);/g, val: "'" },
+          "cent": { regex: /&(cent|#162);/g, val: "\xA2" },
+          "pound": { regex: /&(pound|#163);/g, val: "\xA3" },
+          "yen": { regex: /&(yen|#165);/g, val: "\xA5" },
+          "euro": { regex: /&(euro|#8364);/g, val: "\u20AC" },
+          "copyright": { regex: /&(copy|#169);/g, val: "\xA9" },
+          "reg": { regex: /&(reg|#174);/g, val: "\xAE" },
+          "inr": { regex: /&(inr|#8377);/g, val: "\u20B9" },
+          "num_dec": { regex: /&#([0-9]{1,7});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 10)) },
+          "num_hex": { regex: /&#x([0-9a-fA-F]{1,6});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 16)) }
+        };
+        this.addExternalEntities = addExternalEntities;
+        this.parseXml = parseXml;
+        this.parseTextData = parseTextData;
+        this.resolveNameSpace = resolveNameSpace;
+        this.buildAttributesMap = buildAttributesMap;
+        this.isItStopNode = isItStopNode;
+        this.replaceEntitiesValue = replaceEntitiesValue;
+        this.readStopNodeData = readStopNodeData;
+        this.saveTextToParentTag = saveTextToParentTag;
+        this.addChild = addChild;
+      }
+    };
+    function addExternalEntities(externalEntities) {
+      const entKeys = Object.keys(externalEntities);
+      for (let i = 0; i < entKeys.length; i++) {
+        const ent = entKeys[i];
+        this.lastEntities[ent] = {
+          regex: new RegExp("&" + ent + ";", "g"),
+          val: externalEntities[ent]
+        };
+      }
+    }
+    function parseTextData(val2, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {
+      if (val2 !== void 0) {
+        if (this.options.trimValues && !dontTrim) {
+          val2 = val2.trim();
+        }
+        if (val2.length > 0) {
+          if (!escapeEntities) val2 = this.replaceEntitiesValue(val2);
+          const newval = this.options.tagValueProcessor(tagName, val2, jPath, hasAttributes, isLeafNode);
+          if (newval === null || newval === void 0) {
+            return val2;
+          } else if (typeof newval !== typeof val2 || newval !== val2) {
+            return newval;
+          } else if (this.options.trimValues) {
+            return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+          } else {
+            const trimmedVal = val2.trim();
+            if (trimmedVal === val2) {
+              return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+            } else {
+              return val2;
+            }
+          }
+        }
+      }
+    }
+    function resolveNameSpace(tagname) {
+      if (this.options.removeNSPrefix) {
+        const tags = tagname.split(":");
+        const prefix = tagname.charAt(0) === "/" ? "/" : "";
+        if (tags[0] === "xmlns") {
+          return "";
+        }
+        if (tags.length === 2) {
+          tagname = prefix + tags[1];
+        }
+      }
+      return tagname;
+    }
+    var attrsRegx = new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`, "gm");
+    function buildAttributesMap(attrStr, jPath, tagName) {
+      if (!this.options.ignoreAttributes && typeof attrStr === "string") {
+        const matches = util.getAllMatches(attrStr, attrsRegx);
+        const len = matches.length;
+        const attrs = {};
+        for (let i = 0; i < len; i++) {
+          const attrName = this.resolveNameSpace(matches[i][1]);
+          let oldVal = matches[i][4];
+          let aName = this.options.attributeNamePrefix + attrName;
+          if (attrName.length) {
+            if (this.options.transformAttributeName) {
+              aName = this.options.transformAttributeName(aName);
+            }
+            if (aName === "__proto__") aName = "#__proto__";
+            if (oldVal !== void 0) {
+              if (this.options.trimValues) {
+                oldVal = oldVal.trim();
+              }
+              oldVal = this.replaceEntitiesValue(oldVal);
+              const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);
+              if (newVal === null || newVal === void 0) {
+                attrs[aName] = oldVal;
+              } else if (typeof newVal !== typeof oldVal || newVal !== oldVal) {
+                attrs[aName] = newVal;
+              } else {
+                attrs[aName] = parseValue(
+                  oldVal,
+                  this.options.parseAttributeValue,
+                  this.options.numberParseOptions
+                );
+              }
+            } else if (this.options.allowBooleanAttributes) {
+              attrs[aName] = true;
+            }
+          }
+        }
+        if (!Object.keys(attrs).length) {
+          return;
+        }
+        if (this.options.attributesGroupName) {
+          const attrCollection = {};
+          attrCollection[this.options.attributesGroupName] = attrs;
+          return attrCollection;
+        }
+        return attrs;
+      }
+    }
+    var parseXml = function(xmlData) {
+      xmlData = xmlData.replace(/\r\n?/g, "\n");
+      const xmlObj = new xmlNode("!xml");
+      let currentNode = xmlObj;
+      let textData = "";
+      let jPath = "";
+      for (let i = 0; i < xmlData.length; i++) {
+        const ch = xmlData[i];
+        if (ch === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, "Closing Tag is not closed.");
+            let tagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (this.options.removeNSPrefix) {
+              const colonIndex = tagName.indexOf(":");
+              if (colonIndex !== -1) {
+                tagName = tagName.substr(colonIndex + 1);
+              }
+            }
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode) {
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            }
+            const lastTagName = jPath.substring(jPath.lastIndexOf(".") + 1);
+            if (tagName && this.options.unpairedTags.indexOf(tagName) !== -1) {
+              throw new Error(`Unpaired tag can not be used as closing tag: `);
+            }
+            let propIndex = 0;
+            if (lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1) {
+              propIndex = jPath.lastIndexOf(".", jPath.lastIndexOf(".") - 1);
+              this.tagsNodeStack.pop();
+            } else {
+              propIndex = jPath.lastIndexOf(".");
+            }
+            jPath = jPath.substring(0, propIndex);
+            currentNode = this.tagsNodeStack.pop();
+            textData = "";
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            let tagData = readTagExp(xmlData, i, false, "?>");
+            if (!tagData) throw new Error("Pi Tag is not closed.");
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            if (this.options.ignoreDeclaration && tagData.tagName === "?xml" || this.options.ignorePiTags) {
+            } else {
+              const childNode = new xmlNode(tagData.tagName);
+              childNode.add(this.options.textNodeName, "");
+              if (tagData.tagName !== tagData.tagExp && tagData.attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName);
+              }
+              this.addChild(currentNode, childNode, jPath);
+            }
+            i = tagData.closeIndex + 1;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const endIndex = findClosingIndex(xmlData, "-->", i + 4, "Comment is not closed.");
+            if (this.options.commentPropName) {
+              const comment = xmlData.substring(i + 4, endIndex - 2);
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+              currentNode.add(this.options.commentPropName, [{ [this.options.textNodeName]: comment }]);
+            }
+            i = endIndex;
+          } else if (xmlData.substr(i + 1, 2) === "!D") {
+            const result = readDocType(xmlData, i);
+            this.docTypeEntities = result.entities;
+            i = result.i;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "CDATA is not closed.") - 2;
+            const tagExp = xmlData.substring(i + 9, closeIndex);
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            let val2 = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);
+            if (val2 == void 0) val2 = "";
+            if (this.options.cdataPropName) {
+              currentNode.add(this.options.cdataPropName, [{ [this.options.textNodeName]: tagExp }]);
+            } else {
+              currentNode.add(this.options.textNodeName, val2);
+            }
+            i = closeIndex + 2;
+          } else {
+            let result = readTagExp(xmlData, i, this.options.removeNSPrefix);
+            let tagName = result.tagName;
+            const rawTagName = result.rawTagName;
+            let tagExp = result.tagExp;
+            let attrExpPresent = result.attrExpPresent;
+            let closeIndex = result.closeIndex;
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode && textData) {
+              if (currentNode.tagname !== "!xml") {
+                textData = this.saveTextToParentTag(textData, currentNode, jPath, false);
+              }
+            }
+            const lastTag = currentNode;
+            if (lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1) {
+              currentNode = this.tagsNodeStack.pop();
+              jPath = jPath.substring(0, jPath.lastIndexOf("."));
+            }
+            if (tagName !== xmlObj.tagname) {
+              jPath += jPath ? "." + tagName : tagName;
+            }
+            if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) {
+              let tagContent = "";
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                i = result.closeIndex;
+              } else if (this.options.unpairedTags.indexOf(tagName) !== -1) {
+                i = result.closeIndex;
+              } else {
+                const result2 = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);
+                if (!result2) throw new Error(`Unexpected end of ${rawTagName}`);
+                i = result2.i;
+                tagContent = result2.tagContent;
+              }
+              const childNode = new xmlNode(tagName);
+              if (tagName !== tagExp && attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+              }
+              if (tagContent) {
+                tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);
+              }
+              jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              childNode.add(this.options.textNodeName, tagContent);
+              this.addChild(currentNode, childNode, jPath);
+            } else {
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                if (this.options.transformTagName) {
+                  tagName = this.options.transformTagName(tagName);
+                }
+                const childNode = new xmlNode(tagName);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              } else {
+                const childNode = new xmlNode(tagName);
+                this.tagsNodeStack.push(currentNode);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                currentNode = childNode;
+              }
+              textData = "";
+              i = closeIndex;
+            }
+          }
+        } else {
+          textData += xmlData[i];
+        }
+      }
+      return xmlObj.child;
+    };
+    function addChild(currentNode, childNode, jPath) {
+      const result = this.options.updateTag(childNode.tagname, jPath, childNode[":@"]);
+      if (result === false) {
+      } else if (typeof result === "string") {
+        childNode.tagname = result;
+        currentNode.addChild(childNode);
+      } else {
+        currentNode.addChild(childNode);
+      }
+    }
+    var replaceEntitiesValue = function(val2) {
+      if (this.options.processEntities) {
+        for (let entityName2 in this.docTypeEntities) {
+          const entity = this.docTypeEntities[entityName2];
+          val2 = val2.replace(entity.regx, entity.val);
+        }
+        for (let entityName2 in this.lastEntities) {
+          const entity = this.lastEntities[entityName2];
+          val2 = val2.replace(entity.regex, entity.val);
+        }
+        if (this.options.htmlEntities) {
+          for (let entityName2 in this.htmlEntities) {
+            const entity = this.htmlEntities[entityName2];
+            val2 = val2.replace(entity.regex, entity.val);
+          }
+        }
+        val2 = val2.replace(this.ampEntity.regex, this.ampEntity.val);
+      }
+      return val2;
+    };
+    function saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {
+      if (textData) {
+        if (isLeafNode === void 0) isLeafNode = Object.keys(currentNode.child).length === 0;
+        textData = this.parseTextData(
+          textData,
+          currentNode.tagname,
+          jPath,
+          false,
+          currentNode[":@"] ? Object.keys(currentNode[":@"]).length !== 0 : false,
+          isLeafNode
+        );
+        if (textData !== void 0 && textData !== "")
+          currentNode.add(this.options.textNodeName, textData);
+        textData = "";
+      }
+      return textData;
+    }
+    function isItStopNode(stopNodes, jPath, currentTagName) {
+      const allNodesExp = "*." + currentTagName;
+      for (const stopNodePath in stopNodes) {
+        const stopNodeExp = stopNodes[stopNodePath];
+        if (allNodesExp === stopNodeExp || jPath === stopNodeExp) return true;
+      }
+      return false;
+    }
+    function tagExpWithClosingIndex(xmlData, i, closingChar = ">") {
+      let attrBoundary;
+      let tagExp = "";
+      for (let index = i; index < xmlData.length; index++) {
+        let ch = xmlData[index];
+        if (attrBoundary) {
+          if (ch === attrBoundary) attrBoundary = "";
+        } else if (ch === '"' || ch === "'") {
+          attrBoundary = ch;
+        } else if (ch === closingChar[0]) {
+          if (closingChar[1]) {
+            if (xmlData[index + 1] === closingChar[1]) {
+              return {
+                data: tagExp,
+                index
+              };
+            }
+          } else {
+            return {
+              data: tagExp,
+              index
+            };
+          }
+        } else if (ch === "	") {
+          ch = " ";
+        }
+        tagExp += ch;
+      }
+    }
+    function findClosingIndex(xmlData, str, i, errMsg) {
+      const closingIndex = xmlData.indexOf(str, i);
+      if (closingIndex === -1) {
+        throw new Error(errMsg);
+      } else {
+        return closingIndex + str.length - 1;
+      }
+    }
+    function readTagExp(xmlData, i, removeNSPrefix, closingChar = ">") {
+      const result = tagExpWithClosingIndex(xmlData, i + 1, closingChar);
+      if (!result) return;
+      let tagExp = result.data;
+      const closeIndex = result.index;
+      const separatorIndex = tagExp.search(/\s/);
+      let tagName = tagExp;
+      let attrExpPresent = true;
+      if (separatorIndex !== -1) {
+        tagName = tagExp.substring(0, separatorIndex);
+        tagExp = tagExp.substring(separatorIndex + 1).trimStart();
+      }
+      const rawTagName = tagName;
+      if (removeNSPrefix) {
+        const colonIndex = tagName.indexOf(":");
+        if (colonIndex !== -1) {
+          tagName = tagName.substr(colonIndex + 1);
+          attrExpPresent = tagName !== result.data.substr(colonIndex + 1);
+        }
+      }
+      return {
+        tagName,
+        tagExp,
+        closeIndex,
+        attrExpPresent,
+        rawTagName
+      };
+    }
+    function readStopNodeData(xmlData, tagName, i) {
+      const startIndex = i;
+      let openTagCount = 1;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, `${tagName} is not closed`);
+            let closeTagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (closeTagName === tagName) {
+              openTagCount--;
+              if (openTagCount === 0) {
+                return {
+                  tagContent: xmlData.substring(startIndex, i),
+                  i: closeIndex
+                };
+              }
+            }
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            const closeIndex = findClosingIndex(xmlData, "?>", i + 1, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const closeIndex = findClosingIndex(xmlData, "-->", i + 3, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "StopNode is not closed.") - 2;
+            i = closeIndex;
+          } else {
+            const tagData = readTagExp(xmlData, i, ">");
+            if (tagData) {
+              const openTagName = tagData && tagData.tagName;
+              if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length - 1] !== "/") {
+                openTagCount++;
+              }
+              i = tagData.closeIndex;
+            }
+          }
+        }
+      }
+    }
+    function parseValue(val2, shouldParse, options) {
+      if (shouldParse && typeof val2 === "string") {
+        const newval = val2.trim();
+        if (newval === "true") return true;
+        else if (newval === "false") return false;
+        else return toNumber(val2, options);
+      } else {
+        if (util.isExist(val2)) {
+          return val2;
+        } else {
+          return "";
+        }
+      }
+    }
+    module2.exports = OrderedObjParser;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js
+var require_node2json = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js"(exports2) {
+    "use strict";
+    function prettify(node, options) {
+      return compress(node, options);
+    }
+    function compress(arr, options, jPath) {
+      let text;
+      const compressedObj = {};
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const property = propName(tagObj);
+        let newJpath = "";
+        if (jPath === void 0) newJpath = property;
+        else newJpath = jPath + "." + property;
+        if (property === options.textNodeName) {
+          if (text === void 0) text = tagObj[property];
+          else text += "" + tagObj[property];
+        } else if (property === void 0) {
+          continue;
+        } else if (tagObj[property]) {
+          let val2 = compress(tagObj[property], options, newJpath);
+          const isLeaf = isLeafTag(val2, options);
+          if (tagObj[":@"]) {
+            assignAttributes(val2, tagObj[":@"], newJpath, options);
+          } else if (Object.keys(val2).length === 1 && val2[options.textNodeName] !== void 0 && !options.alwaysCreateTextNode) {
+            val2 = val2[options.textNodeName];
+          } else if (Object.keys(val2).length === 0) {
+            if (options.alwaysCreateTextNode) val2[options.textNodeName] = "";
+            else val2 = "";
+          }
+          if (compressedObj[property] !== void 0 && compressedObj.hasOwnProperty(property)) {
+            if (!Array.isArray(compressedObj[property])) {
+              compressedObj[property] = [compressedObj[property]];
+            }
+            compressedObj[property].push(val2);
+          } else {
+            if (options.isArray(property, newJpath, isLeaf)) {
+              compressedObj[property] = [val2];
+            } else {
+              compressedObj[property] = val2;
+            }
+          }
+        }
+      }
+      if (typeof text === "string") {
+        if (text.length > 0) compressedObj[options.textNodeName] = text;
+      } else if (text !== void 0) compressedObj[options.textNodeName] = text;
+      return compressedObj;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (key !== ":@") return key;
+      }
+    }
+    function assignAttributes(obj, attrMap, jpath, options) {
+      if (attrMap) {
+        const keys = Object.keys(attrMap);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          const atrrName = keys[i];
+          if (options.isArray(atrrName, jpath + "." + atrrName, true, true)) {
+            obj[atrrName] = [attrMap[atrrName]];
+          } else {
+            obj[atrrName] = attrMap[atrrName];
+          }
+        }
+      }
+    }
+    function isLeafTag(obj, options) {
+      const { textNodeName } = options;
+      const propCount = Object.keys(obj).length;
+      if (propCount === 0) {
+        return true;
+      }
+      if (propCount === 1 && (obj[textNodeName] || typeof obj[textNodeName] === "boolean" || obj[textNodeName] === 0)) {
+        return true;
+      }
+      return false;
+    }
+    exports2.prettify = prettify;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js
+var require_XMLParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js"(exports2, module2) {
+    var { buildOptions } = require_OptionsBuilder();
+    var OrderedObjParser = require_OrderedObjParser();
+    var { prettify } = require_node2json();
+    var validator = require_validator2();
+    var XMLParser2 = class {
+      constructor(options) {
+        this.externalEntities = {};
+        this.options = buildOptions(options);
+      }
+      /**
+       * Parse XML dats to JS object 
+       * @param {string|Buffer} xmlData 
+       * @param {boolean|Object} validationOption 
+       */
+      parse(xmlData, validationOption) {
+        if (typeof xmlData === "string") {
+        } else if (xmlData.toString) {
+          xmlData = xmlData.toString();
+        } else {
+          throw new Error("XML data is accepted in String or Bytes[] form.");
+        }
+        if (validationOption) {
+          if (validationOption === true) validationOption = {};
+          const result = validator.validate(xmlData, validationOption);
+          if (result !== true) {
+            throw Error(`${result.err.msg}:${result.err.line}:${result.err.col}`);
+          }
+        }
+        const orderedObjParser = new OrderedObjParser(this.options);
+        orderedObjParser.addExternalEntities(this.externalEntities);
+        const orderedResult = orderedObjParser.parseXml(xmlData);
+        if (this.options.preserveOrder || orderedResult === void 0) return orderedResult;
+        else return prettify(orderedResult, this.options);
+      }
+      /**
+       * Add Entity which is not by default supported by this library
+       * @param {string} key 
+       * @param {string} value 
+       */
+      addEntity(key, value) {
+        if (value.indexOf("&") !== -1) {
+          throw new Error("Entity value can't have '&'");
+        } else if (key.indexOf("&") !== -1 || key.indexOf(";") !== -1) {
+          throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '
'");
+        } else if (value === "&") {
+          throw new Error("An entity with value '&' is not permitted");
+        } else {
+          this.externalEntities[key] = value;
+        }
+      }
+    };
+    module2.exports = XMLParser2;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js
+var require_orderedJs2Xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js"(exports2, module2) {
+    var EOL = "\n";
+    function toXml(jArray, options) {
+      let indentation = "";
+      if (options.format && options.indentBy.length > 0) {
+        indentation = EOL;
+      }
+      return arrToStr(jArray, options, "", indentation);
+    }
+    function arrToStr(arr, options, jPath, indentation) {
+      let xmlStr = "";
+      let isPreviousElementTag = false;
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const tagName = propName(tagObj);
+        if (tagName === void 0) continue;
+        let newJPath = "";
+        if (jPath.length === 0) newJPath = tagName;
+        else newJPath = `${jPath}.${tagName}`;
+        if (tagName === options.textNodeName) {
+          let tagText = tagObj[tagName];
+          if (!isStopNode(newJPath, options)) {
+            tagText = options.tagValueProcessor(tagName, tagText);
+            tagText = replaceEntitiesValue(tagText, options);
+          }
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += tagText;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.cdataPropName) {
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += ``;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.commentPropName) {
+          xmlStr += indentation + ``;
+          isPreviousElementTag = true;
+          continue;
+        } else if (tagName[0] === "?") {
+          const attStr2 = attr_to_str(tagObj[":@"], options);
+          const tempInd = tagName === "?xml" ? "" : indentation;
+          let piTextNodeName = tagObj[tagName][0][options.textNodeName];
+          piTextNodeName = piTextNodeName.length !== 0 ? " " + piTextNodeName : "";
+          xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr2}?>`;
+          isPreviousElementTag = true;
+          continue;
+        }
+        let newIdentation = indentation;
+        if (newIdentation !== "") {
+          newIdentation += options.indentBy;
+        }
+        const attStr = attr_to_str(tagObj[":@"], options);
+        const tagStart = indentation + `<${tagName}${attStr}`;
+        const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);
+        if (options.unpairedTags.indexOf(tagName) !== -1) {
+          if (options.suppressUnpairedNode) xmlStr += tagStart + ">";
+          else xmlStr += tagStart + "/>";
+        } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {
+          xmlStr += tagStart + "/>";
+        } else if (tagValue && tagValue.endsWith(">")) {
+          xmlStr += tagStart + `>${tagValue}${indentation}`;
+        } else {
+          xmlStr += tagStart + ">";
+          if (tagValue && indentation !== "" && (tagValue.includes("/>") || tagValue.includes("`;
+        }
+        isPreviousElementTag = true;
+      }
+      return xmlStr;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (!obj.hasOwnProperty(key)) continue;
+        if (key !== ":@") return key;
+      }
+    }
+    function attr_to_str(attrMap, options) {
+      let attrStr = "";
+      if (attrMap && !options.ignoreAttributes) {
+        for (let attr in attrMap) {
+          if (!attrMap.hasOwnProperty(attr)) continue;
+          let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);
+          attrVal = replaceEntitiesValue(attrVal, options);
+          if (attrVal === true && options.suppressBooleanAttributes) {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;
+          } else {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}="${attrVal}"`;
+          }
+        }
+      }
+      return attrStr;
+    }
+    function isStopNode(jPath, options) {
+      jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);
+      let tagName = jPath.substr(jPath.lastIndexOf(".") + 1);
+      for (let index in options.stopNodes) {
+        if (options.stopNodes[index] === jPath || options.stopNodes[index] === "*." + tagName) return true;
+      }
+      return false;
+    }
+    function replaceEntitiesValue(textValue, options) {
+      if (textValue && textValue.length > 0 && options.processEntities) {
+        for (let i = 0; i < options.entities.length; i++) {
+          const entity = options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    }
+    module2.exports = toXml;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js
+var require_json2xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js"(exports2, module2) {
+    "use strict";
+    var buildFromOrderedJs = require_orderedJs2Xml();
+    var defaultOptions = {
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      cdataPropName: false,
+      format: false,
+      indentBy: "  ",
+      suppressEmptyNode: false,
+      suppressUnpairedNode: true,
+      suppressBooleanAttributes: true,
+      tagValueProcessor: function(key, a) {
+        return a;
+      },
+      attributeValueProcessor: function(attrName, a) {
+        return a;
+      },
+      preserveOrder: false,
+      commentPropName: false,
+      unpairedTags: [],
+      entities: [
+        { regex: new RegExp("&", "g"), val: "&" },
+        //it must be on top
+        { regex: new RegExp(">", "g"), val: ">" },
+        { regex: new RegExp("<", "g"), val: "<" },
+        { regex: new RegExp("'", "g"), val: "'" },
+        { regex: new RegExp('"', "g"), val: """ }
+      ],
+      processEntities: true,
+      stopNodes: [],
+      // transformTagName: false,
+      // transformAttributeName: false,
+      oneListGroup: false
+    };
+    function Builder(options) {
+      this.options = Object.assign({}, defaultOptions, options);
+      if (this.options.ignoreAttributes || this.options.attributesGroupName) {
+        this.isAttribute = function() {
+          return false;
+        };
+      } else {
+        this.attrPrefixLen = this.options.attributeNamePrefix.length;
+        this.isAttribute = isAttribute;
+      }
+      this.processTextOrObjNode = processTextOrObjNode;
+      if (this.options.format) {
+        this.indentate = indentate;
+        this.tagEndChar = ">\n";
+        this.newLine = "\n";
+      } else {
+        this.indentate = function() {
+          return "";
+        };
+        this.tagEndChar = ">";
+        this.newLine = "";
+      }
+    }
+    Builder.prototype.build = function(jObj) {
+      if (this.options.preserveOrder) {
+        return buildFromOrderedJs(jObj, this.options);
+      } else {
+        if (Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1) {
+          jObj = {
+            [this.options.arrayNodeName]: jObj
+          };
+        }
+        return this.j2x(jObj, 0).val;
+      }
+    };
+    Builder.prototype.j2x = function(jObj, level) {
+      let attrStr = "";
+      let val2 = "";
+      for (let key in jObj) {
+        if (!Object.prototype.hasOwnProperty.call(jObj, key)) continue;
+        if (typeof jObj[key] === "undefined") {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          }
+        } else if (jObj[key] === null) {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          } else if (key[0] === "?") {
+            val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+          } else {
+            val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+          }
+        } else if (jObj[key] instanceof Date) {
+          val2 += this.buildTextValNode(jObj[key], key, "", level);
+        } else if (typeof jObj[key] !== "object") {
+          const attr = this.isAttribute(key);
+          if (attr) {
+            attrStr += this.buildAttrPairStr(attr, "" + jObj[key]);
+          } else {
+            if (key === this.options.textNodeName) {
+              let newval = this.options.tagValueProcessor(key, "" + jObj[key]);
+              val2 += this.replaceEntitiesValue(newval);
+            } else {
+              val2 += this.buildTextValNode(jObj[key], key, "", level);
+            }
+          }
+        } else if (Array.isArray(jObj[key])) {
+          const arrLen = jObj[key].length;
+          let listTagVal = "";
+          let listTagAttr = "";
+          for (let j = 0; j < arrLen; j++) {
+            const item = jObj[key][j];
+            if (typeof item === "undefined") {
+            } else if (item === null) {
+              if (key[0] === "?") val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+              else val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+            } else if (typeof item === "object") {
+              if (this.options.oneListGroup) {
+                const result = this.j2x(item, level + 1);
+                listTagVal += result.val;
+                if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {
+                  listTagAttr += result.attrStr;
+                }
+              } else {
+                listTagVal += this.processTextOrObjNode(item, key, level);
+              }
+            } else {
+              if (this.options.oneListGroup) {
+                let textValue = this.options.tagValueProcessor(key, item);
+                textValue = this.replaceEntitiesValue(textValue);
+                listTagVal += textValue;
+              } else {
+                listTagVal += this.buildTextValNode(item, key, "", level);
+              }
+            }
+          }
+          if (this.options.oneListGroup) {
+            listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);
+          }
+          val2 += listTagVal;
+        } else {
+          if (this.options.attributesGroupName && key === this.options.attributesGroupName) {
+            const Ks = Object.keys(jObj[key]);
+            const L = Ks.length;
+            for (let j = 0; j < L; j++) {
+              attrStr += this.buildAttrPairStr(Ks[j], "" + jObj[key][Ks[j]]);
+            }
+          } else {
+            val2 += this.processTextOrObjNode(jObj[key], key, level);
+          }
+        }
+      }
+      return { attrStr, val: val2 };
+    };
+    Builder.prototype.buildAttrPairStr = function(attrName, val2) {
+      val2 = this.options.attributeValueProcessor(attrName, "" + val2);
+      val2 = this.replaceEntitiesValue(val2);
+      if (this.options.suppressBooleanAttributes && val2 === "true") {
+        return " " + attrName;
+      } else return " " + attrName + '="' + val2 + '"';
+    };
+    function processTextOrObjNode(object, key, level) {
+      const result = this.j2x(object, level + 1);
+      if (object[this.options.textNodeName] !== void 0 && Object.keys(object).length === 1) {
+        return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);
+      } else {
+        return this.buildObjectNode(result.val, key, result.attrStr, level);
+      }
+    }
+    Builder.prototype.buildObjectNode = function(val2, key, attrStr, level) {
+      if (val2 === "") {
+        if (key[0] === "?") return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+        else {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        }
+      } else {
+        let tagEndExp = "" + val2 + tagEndExp;
+        } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {
+          return this.indentate(level) + `` + this.newLine;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + piClosingChar + this.tagEndChar + val2 + this.indentate(level) + tagEndExp;
+        }
+      }
+    };
+    Builder.prototype.closeTag = function(key) {
+      let closeTag = "";
+      if (this.options.unpairedTags.indexOf(key) !== -1) {
+        if (!this.options.suppressUnpairedNode) closeTag = "/";
+      } else if (this.options.suppressEmptyNode) {
+        closeTag = "/";
+      } else {
+        closeTag = `>` + this.newLine;
+      } else if (this.options.commentPropName !== false && key === this.options.commentPropName) {
+        return this.indentate(level) + `` + this.newLine;
+      } else if (key[0] === "?") {
+        return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+      } else {
+        let textValue = this.options.tagValueProcessor(key, val2);
+        textValue = this.replaceEntitiesValue(textValue);
+        if (textValue === "") {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + ">" + textValue + " 0 && this.options.processEntities) {
+        for (let i = 0; i < this.options.entities.length; i++) {
+          const entity = this.options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    };
+    function indentate(level) {
+      return this.options.indentBy.repeat(level);
+    }
+    function isAttribute(name) {
+      if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {
+        return name.substr(this.attrPrefixLen);
+      } else {
+        return false;
+      }
+    }
+    module2.exports = Builder;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/fxp.js
+var require_fxp = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/fxp.js"(exports2, module2) {
+    "use strict";
+    var validator = require_validator2();
+    var XMLParser2 = require_XMLParser();
+    var XMLBuilder = require_json2xml();
+    module2.exports = {
+      XMLParser: XMLParser2,
+      XMLValidator: validator,
+      XMLBuilder
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js
+var import_smithy_client3, import_fast_xml_parser, parseXmlBody, parseXmlErrorBody, loadRestXmlErrorCode;
+var init_parseXmlBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js"() {
+    import_smithy_client3 = __toESM(require_dist_cjs33());
+    import_fast_xml_parser = __toESM(require_fxp());
+    init_common();
+    parseXmlBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        const parser = new import_fast_xml_parser.XMLParser({
+          attributeNamePrefix: "",
+          htmlEntities: true,
+          ignoreAttributes: false,
+          ignoreDeclaration: true,
+          parseTagValue: false,
+          trimValues: false,
+          tagValueProcessor: (_, val2) => val2.trim() === "" && val2.includes("\n") ? "" : void 0
+        });
+        parser.addEntity("#xD", "\r");
+        parser.addEntity("#10", "\n");
+        let parsedObj;
+        try {
+          parsedObj = parser.parse(encoded, true);
+        } catch (e) {
+          if (e && typeof e === "object") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+        const textNodeName = "#text";
+        const key = Object.keys(parsedObj)[0];
+        const parsedObjToReturn = parsedObj[key];
+        if (parsedObjToReturn[textNodeName]) {
+          parsedObjToReturn[key] = parsedObjToReturn[textNodeName];
+          delete parsedObjToReturn[textNodeName];
+        }
+        return (0, import_smithy_client3.getValueFromTextNode)(parsedObjToReturn);
+      }
+      return {};
+    });
+    parseXmlErrorBody = async (errorBody, context) => {
+      const value = await parseXmlBody(errorBody, context);
+      if (value.Error) {
+        value.Error.message = value.Error.message ?? value.Error.Message;
+      }
+      return value;
+    };
+    loadRestXmlErrorCode = (output, data) => {
+      if (data?.Error?.Code !== void 0) {
+        return data.Error.Code;
+      }
+      if (data?.Code !== void 0) {
+        return data.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js
+var init_protocols2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js"() {
+    init_coercing_serializers();
+    init_awsExpectUnion();
+    init_parseJsonBody();
+    init_parseXmlBody();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/index.js
+var dist_es_exports2 = {};
+__export(dist_es_exports2, {
+  AWSSDKSigV4Signer: () => AWSSDKSigV4Signer,
+  AwsSdkSigV4ASigner: () => AwsSdkSigV4ASigner,
+  AwsSdkSigV4Signer: () => AwsSdkSigV4Signer,
+  NODE_SIGV4A_CONFIG_OPTIONS: () => NODE_SIGV4A_CONFIG_OPTIONS,
+  _toBool: () => _toBool,
+  _toNum: () => _toNum,
+  _toStr: () => _toStr,
+  awsExpectUnion: () => awsExpectUnion,
+  emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion,
+  loadRestJsonErrorCode: () => loadRestJsonErrorCode,
+  loadRestXmlErrorCode: () => loadRestXmlErrorCode,
+  parseJsonBody: () => parseJsonBody,
+  parseJsonErrorBody: () => parseJsonErrorBody,
+  parseXmlBody: () => parseXmlBody,
+  parseXmlErrorBody: () => parseXmlErrorBody,
+  resolveAWSSDKSigV4Config: () => resolveAWSSDKSigV4Config,
+  resolveAwsSdkSigV4AConfig: () => resolveAwsSdkSigV4AConfig,
+  resolveAwsSdkSigV4Config: () => resolveAwsSdkSigV4Config,
+  validateSigningProperties: () => validateSigningProperties
+});
+var init_dist_es2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/index.js"() {
+    init_client();
+    init_httpAuthSchemes2();
+    init_protocols2();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSFNHttpAuthSchemeProvider = exports2.defaultSFNHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSFNHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSFNHttpAuthSchemeParametersProvider = defaultSFNHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "states",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    var defaultSFNHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSFNHttpAuthSchemeProvider = defaultSFNHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/tslib/tslib.es6.mjs
+var tslib_es6_exports = {};
+__export(tslib_es6_exports, {
+  __addDisposableResource: () => __addDisposableResource,
+  __assign: () => __assign,
+  __asyncDelegator: () => __asyncDelegator,
+  __asyncGenerator: () => __asyncGenerator,
+  __asyncValues: () => __asyncValues,
+  __await: () => __await,
+  __awaiter: () => __awaiter,
+  __classPrivateFieldGet: () => __classPrivateFieldGet,
+  __classPrivateFieldIn: () => __classPrivateFieldIn,
+  __classPrivateFieldSet: () => __classPrivateFieldSet,
+  __createBinding: () => __createBinding,
+  __decorate: () => __decorate,
+  __disposeResources: () => __disposeResources,
+  __esDecorate: () => __esDecorate,
+  __exportStar: () => __exportStar,
+  __extends: () => __extends,
+  __generator: () => __generator,
+  __importDefault: () => __importDefault,
+  __importStar: () => __importStar,
+  __makeTemplateObject: () => __makeTemplateObject,
+  __metadata: () => __metadata,
+  __param: () => __param,
+  __propKey: () => __propKey,
+  __read: () => __read,
+  __rest: () => __rest,
+  __rewriteRelativeImportExtension: () => __rewriteRelativeImportExtension,
+  __runInitializers: () => __runInitializers2,
+  __setFunctionName: () => __setFunctionName,
+  __spread: () => __spread,
+  __spreadArray: () => __spreadArray,
+  __spreadArrays: () => __spreadArrays,
+  __values: () => __values,
+  default: () => tslib_es6_default
+});
+function __extends(d, b) {
+  if (typeof b !== "function" && b !== null)
+    throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+  extendStatics(d, b);
+  function __() {
+    this.constructor = d;
+  }
+  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+}
+function __rest(s, e) {
+  var t = {};
+  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+    t[p] = s[p];
+  if (s != null && typeof Object.getOwnPropertySymbols === "function")
+    for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+      if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+        t[p[i]] = s[p[i]];
+    }
+  return t;
+}
+function __decorate(decorators, target, key, desc) {
+  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+  return c > 3 && r && Object.defineProperty(target, key, r), r;
+}
+function __param(paramIndex, decorator) {
+  return function(target, key) {
+    decorator(target, key, paramIndex);
+  };
+}
+function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
+  function accept(f) {
+    if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected");
+    return f;
+  }
+  var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
+  var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
+  var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
+  var _, done = false;
+  for (var i = decorators.length - 1; i >= 0; i--) {
+    var context = {};
+    for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
+    for (var p in contextIn.access) context.access[p] = contextIn.access[p];
+    context.addInitializer = function(f) {
+      if (done) throw new TypeError("Cannot add initializers after decoration has completed");
+      extraInitializers.push(accept(f || null));
+    };
+    var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
+    if (kind === "accessor") {
+      if (result === void 0) continue;
+      if (result === null || typeof result !== "object") throw new TypeError("Object expected");
+      if (_ = accept(result.get)) descriptor.get = _;
+      if (_ = accept(result.set)) descriptor.set = _;
+      if (_ = accept(result.init)) initializers.unshift(_);
+    } else if (_ = accept(result)) {
+      if (kind === "field") initializers.unshift(_);
+      else descriptor[key] = _;
+    }
+  }
+  if (target) Object.defineProperty(target, contextIn.name, descriptor);
+  done = true;
+}
+function __runInitializers2(thisArg, initializers, value) {
+  var useValue = arguments.length > 2;
+  for (var i = 0; i < initializers.length; i++) {
+    value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
+  }
+  return useValue ? value : void 0;
+}
+function __propKey(x) {
+  return typeof x === "symbol" ? x : "".concat(x);
+}
+function __setFunctionName(f, name, prefix) {
+  if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
+  return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
+}
+function __metadata(metadataKey, metadataValue) {
+  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
+}
+function __awaiter(thisArg, _arguments, P, generator) {
+  function adopt(value) {
+    return value instanceof P ? value : new P(function(resolve6) {
+      resolve6(value);
+    });
+  }
+  return new (P || (P = Promise))(function(resolve6, reject) {
+    function fulfilled(value) {
+      try {
+        step(generator.next(value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function rejected(value) {
+      try {
+        step(generator["throw"](value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function step(result) {
+      result.done ? resolve6(result.value) : adopt(result.value).then(fulfilled, rejected);
+    }
+    step((generator = generator.apply(thisArg, _arguments || [])).next());
+  });
+}
+function __generator(thisArg, body) {
+  var _ = { label: 0, sent: function() {
+    if (t[0] & 1) throw t[1];
+    return t[1];
+  }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
+  return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
+    return this;
+  }), g;
+  function verb(n) {
+    return function(v) {
+      return step([n, v]);
+    };
+  }
+  function step(op) {
+    if (f) throw new TypeError("Generator is already executing.");
+    while (g && (g = 0, op[0] && (_ = 0)), _) try {
+      if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
+      if (y = 0, t) op = [op[0] & 2, t.value];
+      switch (op[0]) {
+        case 0:
+        case 1:
+          t = op;
+          break;
+        case 4:
+          _.label++;
+          return { value: op[1], done: false };
+        case 5:
+          _.label++;
+          y = op[1];
+          op = [0];
+          continue;
+        case 7:
+          op = _.ops.pop();
+          _.trys.pop();
+          continue;
+        default:
+          if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
+            _ = 0;
+            continue;
+          }
+          if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
+            _.label = op[1];
+            break;
+          }
+          if (op[0] === 6 && _.label < t[1]) {
+            _.label = t[1];
+            t = op;
+            break;
+          }
+          if (t && _.label < t[2]) {
+            _.label = t[2];
+            _.ops.push(op);
+            break;
+          }
+          if (t[2]) _.ops.pop();
+          _.trys.pop();
+          continue;
+      }
+      op = body.call(thisArg, _);
+    } catch (e) {
+      op = [6, e];
+      y = 0;
+    } finally {
+      f = t = 0;
+    }
+    if (op[0] & 5) throw op[1];
+    return { value: op[0] ? op[1] : void 0, done: true };
+  }
+}
+function __exportStar(m, o) {
+  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
+}
+function __values(o) {
+  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
+  if (m) return m.call(o);
+  if (o && typeof o.length === "number") return {
+    next: function() {
+      if (o && i >= o.length) o = void 0;
+      return { value: o && o[i++], done: !o };
+    }
+  };
+  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
+}
+function __read(o, n) {
+  var m = typeof Symbol === "function" && o[Symbol.iterator];
+  if (!m) return o;
+  var i = m.call(o), r, ar = [], e;
+  try {
+    while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
+  } catch (error) {
+    e = { error };
+  } finally {
+    try {
+      if (r && !r.done && (m = i["return"])) m.call(i);
+    } finally {
+      if (e) throw e.error;
+    }
+  }
+  return ar;
+}
+function __spread() {
+  for (var ar = [], i = 0; i < arguments.length; i++)
+    ar = ar.concat(__read(arguments[i]));
+  return ar;
+}
+function __spreadArrays() {
+  for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
+  for (var r = Array(s), k = 0, i = 0; i < il; i++)
+    for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
+      r[k] = a[j];
+  return r;
+}
+function __spreadArray(to, from, pack) {
+  if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
+    if (ar || !(i in from)) {
+      if (!ar) ar = Array.prototype.slice.call(from, 0, i);
+      ar[i] = from[i];
+    }
+  }
+  return to.concat(ar || Array.prototype.slice.call(from));
+}
+function __await(v) {
+  return this instanceof __await ? (this.v = v, this) : new __await(v);
+}
+function __asyncGenerator(thisArg, _arguments, generator) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var g = generator.apply(thisArg, _arguments || []), i, q = [];
+  return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i;
+  function awaitReturn(f) {
+    return function(v) {
+      return Promise.resolve(v).then(f, reject);
+    };
+  }
+  function verb(n, f) {
+    if (g[n]) {
+      i[n] = function(v) {
+        return new Promise(function(a, b) {
+          q.push([n, v, a, b]) > 1 || resume(n, v);
+        });
+      };
+      if (f) i[n] = f(i[n]);
+    }
+  }
+  function resume(n, v) {
+    try {
+      step(g[n](v));
+    } catch (e) {
+      settle(q[0][3], e);
+    }
+  }
+  function step(r) {
+    r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r);
+  }
+  function fulfill(value) {
+    resume("next", value);
+  }
+  function reject(value) {
+    resume("throw", value);
+  }
+  function settle(f, v) {
+    if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);
+  }
+}
+function __asyncDelegator(o) {
+  var i, p;
+  return i = {}, verb("next"), verb("throw", function(e) {
+    throw e;
+  }), verb("return"), i[Symbol.iterator] = function() {
+    return this;
+  }, i;
+  function verb(n, f) {
+    i[n] = o[n] ? function(v) {
+      return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v;
+    } : f;
+  }
+}
+function __asyncValues(o) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var m = o[Symbol.asyncIterator], i;
+  return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i);
+  function verb(n) {
+    i[n] = o[n] && function(v) {
+      return new Promise(function(resolve6, reject) {
+        v = o[n](v), settle(resolve6, reject, v.done, v.value);
+      });
+    };
+  }
+  function settle(resolve6, reject, d, v) {
+    Promise.resolve(v).then(function(v2) {
+      resolve6({ value: v2, done: d });
+    }, reject);
+  }
+}
+function __makeTemplateObject(cooked, raw) {
+  if (Object.defineProperty) {
+    Object.defineProperty(cooked, "raw", { value: raw });
+  } else {
+    cooked.raw = raw;
+  }
+  return cooked;
+}
+function __importStar(mod) {
+  if (mod && mod.__esModule) return mod;
+  var result = {};
+  if (mod != null) {
+    for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
+  }
+  __setModuleDefault(result, mod);
+  return result;
+}
+function __importDefault(mod) {
+  return mod && mod.__esModule ? mod : { default: mod };
+}
+function __classPrivateFieldGet(receiver, state, kind, f) {
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+}
+function __classPrivateFieldSet(receiver, state, value, kind, f) {
+  if (kind === "m") throw new TypeError("Private method is not writable");
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+  return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
+}
+function __classPrivateFieldIn(state, receiver) {
+  if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") throw new TypeError("Cannot use 'in' operator on non-object");
+  return typeof state === "function" ? receiver === state : state.has(receiver);
+}
+function __addDisposableResource(env2, value, async) {
+  if (value !== null && value !== void 0) {
+    if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
+    var dispose, inner;
+    if (async) {
+      if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
+      dispose = value[Symbol.asyncDispose];
+    }
+    if (dispose === void 0) {
+      if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
+      dispose = value[Symbol.dispose];
+      if (async) inner = dispose;
+    }
+    if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
+    if (inner) dispose = function() {
+      try {
+        inner.call(this);
+      } catch (e) {
+        return Promise.reject(e);
+      }
+    };
+    env2.stack.push({ value, dispose, async });
+  } else if (async) {
+    env2.stack.push({ async: true });
+  }
+  return value;
+}
+function __disposeResources(env2) {
+  function fail(e) {
+    env2.error = env2.hasError ? new _SuppressedError(e, env2.error, "An error was suppressed during disposal.") : e;
+    env2.hasError = true;
+  }
+  var r, s = 0;
+  function next() {
+    while (r = env2.stack.pop()) {
+      try {
+        if (!r.async && s === 1) return s = 0, env2.stack.push(r), Promise.resolve().then(next);
+        if (r.dispose) {
+          var result = r.dispose.call(r.value);
+          if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
+            fail(e);
+            return next();
+          });
+        } else s |= 1;
+      } catch (e) {
+        fail(e);
+      }
+    }
+    if (s === 1) return env2.hasError ? Promise.reject(env2.error) : Promise.resolve();
+    if (env2.hasError) throw env2.error;
+  }
+  return next();
+}
+function __rewriteRelativeImportExtension(path23, preserveJsx) {
+  if (typeof path23 === "string" && /^\.\.?\//.test(path23)) {
+    return path23.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d, ext, cm) {
+      return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : d + ext + "." + cm.toLowerCase() + "js";
+    });
+  }
+  return path23;
+}
+var extendStatics, __assign, __createBinding, __setModuleDefault, ownKeys, _SuppressedError, tslib_es6_default;
+var init_tslib_es6 = __esm({
+  "../../../node_modules/tslib/tslib.es6.mjs"() {
+    extendStatics = function(d, b) {
+      extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
+        d2.__proto__ = b2;
+      } || function(d2, b2) {
+        for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
+      };
+      return extendStatics(d, b);
+    };
+    __assign = function() {
+      __assign = Object.assign || function __assign2(t) {
+        for (var s, i = 1, n = arguments.length; i < n; i++) {
+          s = arguments[i];
+          for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+        }
+        return t;
+      };
+      return __assign.apply(this, arguments);
+    };
+    __createBinding = Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    });
+    __setModuleDefault = Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    };
+    ownKeys = function(o) {
+      ownKeys = Object.getOwnPropertyNames || function(o2) {
+        var ar = [];
+        for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
+        return ar;
+      };
+      return ownKeys(o);
+    };
+    _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
+      var e = new Error(message);
+      return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
+    };
+    tslib_es6_default = {
+      __extends,
+      __assign,
+      __rest,
+      __decorate,
+      __param,
+      __esDecorate,
+      __runInitializers: __runInitializers2,
+      __propKey,
+      __setFunctionName,
+      __metadata,
+      __awaiter,
+      __generator,
+      __createBinding,
+      __exportStar,
+      __values,
+      __read,
+      __spread,
+      __spreadArrays,
+      __spreadArray,
+      __await,
+      __asyncGenerator,
+      __asyncDelegator,
+      __asyncValues,
+      __makeTemplateObject,
+      __importStar,
+      __importDefault,
+      __classPrivateFieldGet,
+      __classPrivateFieldSet,
+      __classPrivateFieldIn,
+      __addDisposableResource,
+      __disposeResources,
+      __rewriteRelativeImportExtension
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/package.json
+var require_package = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sfn",
+      description: "AWS SDK for JavaScript Sfn Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sfn",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sfn"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/client-sts": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2",
+        uuid: "^9.0.1"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        "@types/uuid": "^9.0.4",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sfn",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sfn"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js
+var require_dist_cjs36 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ENV_ACCOUNT_ID: () => ENV_ACCOUNT_ID,
+      ENV_CREDENTIAL_SCOPE: () => ENV_CREDENTIAL_SCOPE,
+      ENV_EXPIRATION: () => ENV_EXPIRATION,
+      ENV_KEY: () => ENV_KEY,
+      ENV_SECRET: () => ENV_SECRET,
+      ENV_SESSION: () => ENV_SESSION,
+      fromEnv: () => fromEnv
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_KEY = "AWS_ACCESS_KEY_ID";
+    var ENV_SECRET = "AWS_SECRET_ACCESS_KEY";
+    var ENV_SESSION = "AWS_SESSION_TOKEN";
+    var ENV_EXPIRATION = "AWS_CREDENTIAL_EXPIRATION";
+    var ENV_CREDENTIAL_SCOPE = "AWS_CREDENTIAL_SCOPE";
+    var ENV_ACCOUNT_ID = "AWS_ACCOUNT_ID";
+    var fromEnv = /* @__PURE__ */ __name2((init) => async () => {
+      var _a7;
+      (_a7 = init == null ? void 0 : init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-env - fromEnv");
+      const accessKeyId = process.env[ENV_KEY];
+      const secretAccessKey = process.env[ENV_SECRET];
+      const sessionToken = process.env[ENV_SESSION];
+      const expiry = process.env[ENV_EXPIRATION];
+      const credentialScope = process.env[ENV_CREDENTIAL_SCOPE];
+      const accountId = process.env[ENV_ACCOUNT_ID];
+      if (accessKeyId && secretAccessKey) {
+        return {
+          accessKeyId,
+          secretAccessKey,
+          ...sessionToken && { sessionToken },
+          ...expiry && { expiration: new Date(expiry) },
+          ...credentialScope && { credentialScope },
+          ...accountId && { accountId }
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError("Unable to find environment variable credentials.", { logger: init == null ? void 0 : init.logger });
+    }, "fromEnv");
+  }
+});
+
+// ../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js
+var require_dist_cjs37 = __commonJS({
+  "../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_MAX_RETRIES: () => DEFAULT_MAX_RETRIES,
+      DEFAULT_TIMEOUT: () => DEFAULT_TIMEOUT,
+      ENV_CMDS_AUTH_TOKEN: () => ENV_CMDS_AUTH_TOKEN,
+      ENV_CMDS_FULL_URI: () => ENV_CMDS_FULL_URI,
+      ENV_CMDS_RELATIVE_URI: () => ENV_CMDS_RELATIVE_URI,
+      Endpoint: () => Endpoint,
+      fromContainerMetadata: () => fromContainerMetadata,
+      fromInstanceMetadata: () => fromInstanceMetadata,
+      getInstanceMetadataEndpoint: () => getInstanceMetadataEndpoint,
+      httpRequest: () => httpRequest,
+      providerConfigFromInit: () => providerConfigFromInit
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_url = require("url");
+    var import_property_provider2 = require_dist_cjs24();
+    var import_buffer = require("buffer");
+    var import_http2 = require("http");
+    function httpRequest(options) {
+      return new Promise((resolve6, reject) => {
+        var _a7;
+        const req = (0, import_http2.request)({
+          method: "GET",
+          ...options,
+          // Node.js http module doesn't accept hostname with square brackets
+          // Refs: https://github.com/nodejs/node/issues/39738
+          hostname: (_a7 = options.hostname) == null ? void 0 : _a7.replace(/^\[(.+)\]$/, "$1")
+        });
+        req.on("error", (err) => {
+          reject(Object.assign(new import_property_provider2.ProviderError("Unable to connect to instance metadata service"), err));
+          req.destroy();
+        });
+        req.on("timeout", () => {
+          reject(new import_property_provider2.ProviderError("TimeoutError from instance metadata service"));
+          req.destroy();
+        });
+        req.on("response", (res) => {
+          const { statusCode = 400 } = res;
+          if (statusCode < 200 || 300 <= statusCode) {
+            reject(
+              Object.assign(new import_property_provider2.ProviderError("Error response received from instance metadata service"), { statusCode })
+            );
+            req.destroy();
+          }
+          const chunks = [];
+          res.on("data", (chunk) => {
+            chunks.push(chunk);
+          });
+          res.on("end", () => {
+            resolve6(import_buffer.Buffer.concat(chunks));
+            req.destroy();
+          });
+        });
+        req.end();
+      });
+    }
+    __name2(httpRequest, "httpRequest");
+    var isImdsCredentials = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.AccessKeyId === "string" && typeof arg.SecretAccessKey === "string" && typeof arg.Token === "string" && typeof arg.Expiration === "string", "isImdsCredentials");
+    var fromImdsCredentials = /* @__PURE__ */ __name2((creds) => ({
+      accessKeyId: creds.AccessKeyId,
+      secretAccessKey: creds.SecretAccessKey,
+      sessionToken: creds.Token,
+      expiration: new Date(creds.Expiration),
+      ...creds.AccountId && { accountId: creds.AccountId }
+    }), "fromImdsCredentials");
+    var DEFAULT_TIMEOUT = 1e3;
+    var DEFAULT_MAX_RETRIES = 0;
+    var providerConfigFromInit = /* @__PURE__ */ __name2(({
+      maxRetries = DEFAULT_MAX_RETRIES,
+      timeout = DEFAULT_TIMEOUT
+    }) => ({ maxRetries, timeout }), "providerConfigFromInit");
+    var retry = /* @__PURE__ */ __name2((toRetry, maxRetries) => {
+      let promise = toRetry();
+      for (let i = 0; i < maxRetries; i++) {
+        promise = promise.catch(toRetry);
+      }
+      return promise;
+    }, "retry");
+    var ENV_CMDS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var ENV_CMDS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var ENV_CMDS_AUTH_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromContainerMetadata = /* @__PURE__ */ __name2((init = {}) => {
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      return () => retry(async () => {
+        const requestOptions = await getCmdsUri({ logger: init.logger });
+        const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions));
+        if (!isImdsCredentials(credsResponse)) {
+          throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+            logger: init.logger
+          });
+        }
+        return fromImdsCredentials(credsResponse);
+      }, maxRetries);
+    }, "fromContainerMetadata");
+    var requestFromEcsImds = /* @__PURE__ */ __name2(async (timeout, options) => {
+      if (process.env[ENV_CMDS_AUTH_TOKEN]) {
+        options.headers = {
+          ...options.headers,
+          Authorization: process.env[ENV_CMDS_AUTH_TOKEN]
+        };
+      }
+      const buffer = await httpRequest({
+        ...options,
+        timeout
+      });
+      return buffer.toString();
+    }, "requestFromEcsImds");
+    var CMDS_IP = "169.254.170.2";
+    var GREENGRASS_HOSTS = {
+      localhost: true,
+      "127.0.0.1": true
+    };
+    var GREENGRASS_PROTOCOLS = {
+      "http:": true,
+      "https:": true
+    };
+    var getCmdsUri = /* @__PURE__ */ __name2(async ({ logger }) => {
+      if (process.env[ENV_CMDS_RELATIVE_URI]) {
+        return {
+          hostname: CMDS_IP,
+          path: process.env[ENV_CMDS_RELATIVE_URI]
+        };
+      }
+      if (process.env[ENV_CMDS_FULL_URI]) {
+        const parsed = (0, import_url.parse)(process.env[ENV_CMDS_FULL_URI]);
+        if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        return {
+          ...parsed,
+          port: parsed.port ? parseInt(parsed.port, 10) : void 0
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `The container metadata credential provider cannot be used unless the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment variable is set`,
+        {
+          tryNextLink: false,
+          logger
+        }
+      );
+    }, "getCmdsUri");
+    var _InstanceMetadataV1FallbackError = class _InstanceMetadataV1FallbackError2 extends import_property_provider2.CredentialsProviderError {
+      constructor(message, tryNextLink = true) {
+        super(message, tryNextLink);
+        this.tryNextLink = tryNextLink;
+        this.name = "InstanceMetadataV1FallbackError";
+        Object.setPrototypeOf(this, _InstanceMetadataV1FallbackError2.prototype);
+      }
+    };
+    __name2(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError");
+    var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError;
+    var import_node_config_provider = require_dist_cjs26();
+    var import_url_parser = require_dist_cjs28();
+    var Endpoint = /* @__PURE__ */ ((Endpoint2) => {
+      Endpoint2["IPv4"] = "http://169.254.169.254";
+      Endpoint2["IPv6"] = "http://[fd00:ec2::254]";
+      return Endpoint2;
+    })(Endpoint || {});
+    var ENV_ENDPOINT_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT";
+    var CONFIG_ENDPOINT_NAME = "ec2_metadata_service_endpoint";
+    var ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME],
+      default: void 0
+    };
+    var EndpointMode = /* @__PURE__ */ ((EndpointMode2) => {
+      EndpointMode2["IPv4"] = "IPv4";
+      EndpointMode2["IPv6"] = "IPv6";
+      return EndpointMode2;
+    })(EndpointMode || {});
+    var ENV_ENDPOINT_MODE_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE";
+    var CONFIG_ENDPOINT_MODE_NAME = "ec2_metadata_service_endpoint_mode";
+    var ENDPOINT_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_MODE_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME],
+      default: "IPv4"
+      /* IPv4 */
+    };
+    var getInstanceMetadataEndpoint = /* @__PURE__ */ __name2(async () => (0, import_url_parser.parseUrl)(await getFromEndpointConfig() || await getFromEndpointModeConfig()), "getInstanceMetadataEndpoint");
+    var getFromEndpointConfig = /* @__PURE__ */ __name2(async () => (0, import_node_config_provider.loadConfig)(ENDPOINT_CONFIG_OPTIONS)(), "getFromEndpointConfig");
+    var getFromEndpointModeConfig = /* @__PURE__ */ __name2(async () => {
+      const endpointMode = await (0, import_node_config_provider.loadConfig)(ENDPOINT_MODE_CONFIG_OPTIONS)();
+      switch (endpointMode) {
+        case "IPv4":
+          return "http://169.254.169.254";
+        case "IPv6":
+          return "http://[fd00:ec2::254]";
+        default:
+          throw new Error(`Unsupported endpoint mode: ${endpointMode}. Select from ${Object.values(EndpointMode)}`);
+      }
+    }, "getFromEndpointModeConfig");
+    var STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60;
+    var STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60;
+    var STATIC_STABILITY_DOC_URL = "https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html";
+    var getExtendedInstanceMetadataCredentials = /* @__PURE__ */ __name2((credentials, logger) => {
+      const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS + Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS);
+      const newExpiration = new Date(Date.now() + refreshInterval * 1e3);
+      logger.warn(
+        `Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(newExpiration)}.
+For more information, please visit: ` + STATIC_STABILITY_DOC_URL
+      );
+      const originalExpiration = credentials.originalExpiration ?? credentials.expiration;
+      return {
+        ...credentials,
+        ...originalExpiration ? { originalExpiration } : {},
+        expiration: newExpiration
+      };
+    }, "getExtendedInstanceMetadataCredentials");
+    var staticStabilityProvider = /* @__PURE__ */ __name2((provider, options = {}) => {
+      const logger = (options == null ? void 0 : options.logger) || console;
+      let pastCredentials;
+      return async () => {
+        let credentials;
+        try {
+          credentials = await provider();
+          if (credentials.expiration && credentials.expiration.getTime() < Date.now()) {
+            credentials = getExtendedInstanceMetadataCredentials(credentials, logger);
+          }
+        } catch (e) {
+          if (pastCredentials) {
+            logger.warn("Credential renew failed: ", e);
+            credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger);
+          } else {
+            throw e;
+          }
+        }
+        pastCredentials = credentials;
+        return credentials;
+      };
+    }, "staticStabilityProvider");
+    var IMDS_PATH = "/latest/meta-data/iam/security-credentials/";
+    var IMDS_TOKEN_PATH = "/latest/api/token";
+    var AWS_EC2_METADATA_V1_DISABLED = "AWS_EC2_METADATA_V1_DISABLED";
+    var PROFILE_AWS_EC2_METADATA_V1_DISABLED = "ec2_metadata_v1_disabled";
+    var X_AWS_EC2_METADATA_TOKEN = "x-aws-ec2-metadata-token";
+    var fromInstanceMetadata = /* @__PURE__ */ __name2((init = {}) => staticStabilityProvider(getInstanceMetadataProvider(init), { logger: init.logger }), "fromInstanceMetadata");
+    var getInstanceMetadataProvider = /* @__PURE__ */ __name2((init = {}) => {
+      let disableFetchToken = false;
+      const { logger, profile } = init;
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      const getCredentials = /* @__PURE__ */ __name2(async (maxRetries2, options) => {
+        var _a7;
+        const isImdsV1Fallback = disableFetchToken || ((_a7 = options.headers) == null ? void 0 : _a7[X_AWS_EC2_METADATA_TOKEN]) == null;
+        if (isImdsV1Fallback) {
+          let fallbackBlockedFromProfile = false;
+          let fallbackBlockedFromProcessEnv = false;
+          const configValue = await (0, import_node_config_provider.loadConfig)(
+            {
+              environmentVariableSelector: (env2) => {
+                const envValue = env2[AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProcessEnv = !!envValue && envValue !== "false";
+                if (envValue === void 0) {
+                  throw new import_property_provider2.CredentialsProviderError(
+                    `${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.`,
+                    { logger: init.logger }
+                  );
+                }
+                return fallbackBlockedFromProcessEnv;
+              },
+              configFileSelector: (profile2) => {
+                const profileValue = profile2[PROFILE_AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProfile = !!profileValue && profileValue !== "false";
+                return fallbackBlockedFromProfile;
+              },
+              default: false
+            },
+            {
+              profile
+            }
+          )();
+          if (init.ec2MetadataV1Disabled || configValue) {
+            const causes = [];
+            if (init.ec2MetadataV1Disabled)
+              causes.push("credential provider initialization (runtime option ec2MetadataV1Disabled)");
+            if (fallbackBlockedFromProfile)
+              causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`);
+            if (fallbackBlockedFromProcessEnv)
+              causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`);
+            throw new InstanceMetadataV1FallbackError(
+              `AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join(
+                ", "
+              )}].`
+            );
+          }
+        }
+        const imdsProfile = (await retry(async () => {
+          let profile2;
+          try {
+            profile2 = await getProfile(options);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return profile2;
+        }, maxRetries2)).trim();
+        return retry(async () => {
+          let creds;
+          try {
+            creds = await getCredentialsFromProfile(imdsProfile, options, init);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return creds;
+        }, maxRetries2);
+      }, "getCredentials");
+      return async () => {
+        const endpoint = await getInstanceMetadataEndpoint();
+        if (disableFetchToken) {
+          logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (no token fetch)");
+          return getCredentials(maxRetries, { ...endpoint, timeout });
+        } else {
+          let token;
+          try {
+            token = (await getMetadataToken({ ...endpoint, timeout })).toString();
+          } catch (error) {
+            if ((error == null ? void 0 : error.statusCode) === 400) {
+              throw Object.assign(error, {
+                message: "EC2 Metadata token request returned error"
+              });
+            } else if (error.message === "TimeoutError" || [403, 404, 405].includes(error.statusCode)) {
+              disableFetchToken = true;
+            }
+            logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (initial)");
+            return getCredentials(maxRetries, { ...endpoint, timeout });
+          }
+          return getCredentials(maxRetries, {
+            ...endpoint,
+            headers: {
+              [X_AWS_EC2_METADATA_TOKEN]: token
+            },
+            timeout
+          });
+        }
+      };
+    }, "getInstanceMetadataProvider");
+    var getMetadataToken = /* @__PURE__ */ __name2(async (options) => httpRequest({
+      ...options,
+      path: IMDS_TOKEN_PATH,
+      method: "PUT",
+      headers: {
+        "x-aws-ec2-metadata-token-ttl-seconds": "21600"
+      }
+    }), "getMetadataToken");
+    var getProfile = /* @__PURE__ */ __name2(async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString(), "getProfile");
+    var getCredentialsFromProfile = /* @__PURE__ */ __name2(async (profile, options, init) => {
+      const credentialsResponse = JSON.parse(
+        (await httpRequest({
+          ...options,
+          path: IMDS_PATH + profile
+        })).toString()
+      );
+      if (!isImdsCredentials(credentialsResponse)) {
+        throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+          logger: init.logger
+        });
+      }
+      return fromImdsCredentials(credentialsResponse);
+    }, "getCredentialsFromProfile");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js
+var require_checkUrl = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.checkUrl = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var ECS_CONTAINER_HOST = "169.254.170.2";
+    var EKS_CONTAINER_HOST_IPv4 = "169.254.170.23";
+    var EKS_CONTAINER_HOST_IPv6 = "[fd00:ec2::23]";
+    var checkUrl = (url2, logger) => {
+      if (url2.protocol === "https:") {
+        return;
+      }
+      if (url2.hostname === ECS_CONTAINER_HOST || url2.hostname === EKS_CONTAINER_HOST_IPv4 || url2.hostname === EKS_CONTAINER_HOST_IPv6) {
+        return;
+      }
+      if (url2.hostname.includes("[")) {
+        if (url2.hostname === "[::1]" || url2.hostname === "[0000:0000:0000:0000:0000:0000:0000:0001]") {
+          return;
+        }
+      } else {
+        if (url2.hostname === "localhost") {
+          return;
+        }
+        const ipComponents = url2.hostname.split(".");
+        const inRange = (component) => {
+          const num = parseInt(component, 10);
+          return 0 <= num && num <= 255;
+        };
+        if (ipComponents[0] === "127" && inRange(ipComponents[1]) && inRange(ipComponents[2]) && inRange(ipComponents[3]) && ipComponents.length === 4) {
+          return;
+        }
+      }
+      throw new property_provider_1.CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following:
+  - loopback CIDR 127.0.0.0/8 or [::1/128]
+  - ECS container host 169.254.170.2
+  - EKS container host 169.254.170.23 or [fd00:ec2::23]`, { logger });
+    };
+    exports2.checkUrl = checkUrl;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js
+var require_requestHelpers = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getCredentials = exports2.createGetRequest = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_stream_1 = require_dist_cjs22();
+    function createGetRequest(url2) {
+      return new protocol_http_1.HttpRequest({
+        protocol: url2.protocol,
+        hostname: url2.hostname,
+        port: Number(url2.port),
+        path: url2.pathname,
+        query: Array.from(url2.searchParams.entries()).reduce((acc, [k, v]) => {
+          acc[k] = v;
+          return acc;
+        }, {}),
+        fragment: url2.hash
+      });
+    }
+    exports2.createGetRequest = createGetRequest;
+    async function getCredentials(response, logger) {
+      const stream = (0, util_stream_1.sdkStreamMixin)(response.body);
+      const str = await stream.transformToString();
+      if (response.statusCode === 200) {
+        const parsed = JSON.parse(str);
+        if (typeof parsed.AccessKeyId !== "string" || typeof parsed.SecretAccessKey !== "string" || typeof parsed.Token !== "string" || typeof parsed.Expiration !== "string") {
+          throw new property_provider_1.CredentialsProviderError("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }", { logger });
+        }
+        return {
+          accessKeyId: parsed.AccessKeyId,
+          secretAccessKey: parsed.SecretAccessKey,
+          sessionToken: parsed.Token,
+          expiration: (0, smithy_client_1.parseRfc3339DateTime)(parsed.Expiration)
+        };
+      }
+      if (response.statusCode >= 400 && response.statusCode < 500) {
+        let parsedBody = {};
+        try {
+          parsedBody = JSON.parse(str);
+        } catch (e) {
+        }
+        throw Object.assign(new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger }), {
+          Code: parsedBody.Code,
+          Message: parsedBody.Message
+        });
+      }
+      throw new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger });
+    }
+    exports2.getCredentials = getCredentials;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js
+var require_retry_wrapper = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.retryWrapper = void 0;
+    var retryWrapper = (toRetry, maxRetries, delayMs) => {
+      return async () => {
+        for (let i = 0; i < maxRetries; ++i) {
+          try {
+            return await toRetry();
+          } catch (e) {
+            await new Promise((resolve6) => setTimeout(resolve6, delayMs));
+          }
+        }
+        return await toRetry();
+      };
+    };
+    exports2.retryWrapper = retryWrapper;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js
+var require_fromHttp = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var node_http_handler_1 = require_dist_cjs19();
+    var property_provider_1 = require_dist_cjs24();
+    var promises_1 = tslib_1.__importDefault(require("fs/promises"));
+    var checkUrl_1 = require_checkUrl();
+    var requestHelpers_1 = require_requestHelpers();
+    var retry_wrapper_1 = require_retry_wrapper();
+    var AWS_CONTAINER_CREDENTIALS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var DEFAULT_LINK_LOCAL_HOST = "http://169.254.170.2";
+    var AWS_CONTAINER_CREDENTIALS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE = "AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromHttp = (options = {}) => {
+      options.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");
+      let host;
+      const relative7 = options.awsContainerCredentialsRelativeUri ?? process.env[AWS_CONTAINER_CREDENTIALS_RELATIVE_URI];
+      const full = options.awsContainerCredentialsFullUri ?? process.env[AWS_CONTAINER_CREDENTIALS_FULL_URI];
+      const token = options.awsContainerAuthorizationToken ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN];
+      const tokenFile = options.awsContainerAuthorizationTokenFile ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE];
+      const warn = options.logger?.constructor?.name === "NoOpLogger" || !options.logger ? console.warn : options.logger.warn;
+      if (relative7 && full) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri.");
+        warn("awsContainerCredentialsFullUri will take precedence.");
+      }
+      if (token && tokenFile) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile.");
+        warn("awsContainerAuthorizationToken will take precedence.");
+      }
+      if (full) {
+        host = full;
+      } else if (relative7) {
+        host = `${DEFAULT_LINK_LOCAL_HOST}${relative7}`;
+      } else {
+        throw new property_provider_1.CredentialsProviderError(`No HTTP credential provider host provided.
+Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`, { logger: options.logger });
+      }
+      const url2 = new URL(host);
+      (0, checkUrl_1.checkUrl)(url2, options.logger);
+      const requestHandler = new node_http_handler_1.NodeHttpHandler({
+        requestTimeout: options.timeout ?? 1e3,
+        connectionTimeout: options.timeout ?? 1e3
+      });
+      return (0, retry_wrapper_1.retryWrapper)(async () => {
+        const request2 = (0, requestHelpers_1.createGetRequest)(url2);
+        if (token) {
+          request2.headers.Authorization = token;
+        } else if (tokenFile) {
+          request2.headers.Authorization = (await promises_1.default.readFile(tokenFile)).toString();
+        }
+        try {
+          const result = await requestHandler.handle(request2);
+          return (0, requestHelpers_1.getCredentials)(result.response);
+        } catch (e) {
+          throw new property_provider_1.CredentialsProviderError(String(e), { logger: options.logger });
+        }
+      }, options.maxRetries ?? 3, options.timeout ?? 1e3);
+    };
+    exports2.fromHttp = fromHttp;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js
+var require_dist_cjs38 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var fromHttp_1 = require_fromHttp();
+    Object.defineProperty(exports2, "fromHttp", { enumerable: true, get: function() {
+      return fromHttp_1.fromHttp;
+    } });
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOHttpAuthSchemeProvider = exports2.defaultSSOHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOHttpAuthSchemeParametersProvider = defaultSSOHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "awsssoportal",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "GetRoleCredentials": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccountRoles": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccounts": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "Logout": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOHttpAuthSchemeProvider = defaultSSOHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/package.json
+var require_package2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso",
+      description: "AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js
+var require_dist_cjs39 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      UA_APP_ID_ENV_NAME: () => UA_APP_ID_ENV_NAME,
+      UA_APP_ID_INI_NAME: () => UA_APP_ID_INI_NAME,
+      crtAvailability: () => crtAvailability,
+      defaultUserAgent: () => defaultUserAgent
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_node_config_provider = require_dist_cjs26();
+    var import_os = require("os");
+    var import_process2 = require("process");
+    var crtAvailability = {
+      isCrtAvailable: false
+    };
+    var isCrtAvailable = /* @__PURE__ */ __name2(() => {
+      if (crtAvailability.isCrtAvailable) {
+        return ["md/crt-avail"];
+      }
+      return null;
+    }, "isCrtAvailable");
+    var UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
+    var UA_APP_ID_INI_NAME = "sdk-ua-app-id";
+    var defaultUserAgent = /* @__PURE__ */ __name2(({ serviceId, clientVersion }) => {
+      const sections = [
+        // sdk-metadata
+        ["aws-sdk-js", clientVersion],
+        // ua-metadata
+        ["ua", "2.0"],
+        // os-metadata
+        [`os/${(0, import_os.platform)()}`, (0, import_os.release)()],
+        // language-metadata
+        // ECMAScript edition doesn't matter in JS, so no version needed.
+        ["lang/js"],
+        ["md/nodejs", `${import_process2.versions.node}`]
+      ];
+      const crtAvailable = isCrtAvailable();
+      if (crtAvailable) {
+        sections.push(crtAvailable);
+      }
+      if (serviceId) {
+        sections.push([`api/${serviceId}`, clientVersion]);
+      }
+      if (import_process2.env.AWS_EXECUTION_ENV) {
+        sections.push([`exec-env/${import_process2.env.AWS_EXECUTION_ENV}`]);
+      }
+      const appIdPromise = (0, import_node_config_provider.loadConfig)({
+        environmentVariableSelector: (env2) => env2[UA_APP_ID_ENV_NAME],
+        configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME],
+        default: void 0
+      })();
+      let resolvedUserAgent = void 0;
+      return async () => {
+        if (!resolvedUserAgent) {
+          const appId = await appIdPromise;
+          resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
+        }
+        return resolvedUserAgent;
+      };
+    }, "defaultUserAgent");
+  }
+});
+
+// ../../../node_modules/@smithy/hash-node/dist-cjs/index.js
+var require_dist_cjs40 = __commonJS({
+  "../../../node_modules/@smithy/hash-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Hash: () => Hash
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var import_util_utf8 = require_dist_cjs15();
+    var import_buffer = require("buffer");
+    var import_crypto5 = require("crypto");
+    var _Hash = class _Hash {
+      constructor(algorithmIdentifier, secret) {
+        this.algorithmIdentifier = algorithmIdentifier;
+        this.secret = secret;
+        this.reset();
+      }
+      update(toHash, encoding) {
+        this.hash.update((0, import_util_utf8.toUint8Array)(castSourceData(toHash, encoding)));
+      }
+      digest() {
+        return Promise.resolve(this.hash.digest());
+      }
+      reset() {
+        this.hash = this.secret ? (0, import_crypto5.createHmac)(this.algorithmIdentifier, castSourceData(this.secret)) : (0, import_crypto5.createHash)(this.algorithmIdentifier);
+      }
+    };
+    __name2(_Hash, "Hash");
+    var Hash = _Hash;
+    function castSourceData(toCast, encoding) {
+      if (import_buffer.Buffer.isBuffer(toCast)) {
+        return toCast;
+      }
+      if (typeof toCast === "string") {
+        return (0, import_util_buffer_from.fromString)(toCast, encoding);
+      }
+      if (ArrayBuffer.isView(toCast)) {
+        return (0, import_util_buffer_from.fromArrayBuffer)(toCast.buffer, toCast.byteOffset, toCast.byteLength);
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(toCast);
+    }
+    __name2(castSourceData, "castSourceData");
+  }
+});
+
+// ../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js
+var require_dist_cjs41 = __commonJS({
+  "../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      calculateBodyLength: () => calculateBodyLength
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_fs4 = require("fs");
+    var calculateBodyLength = /* @__PURE__ */ __name2((body) => {
+      if (!body) {
+        return 0;
+      }
+      if (typeof body === "string") {
+        return Buffer.byteLength(body);
+      } else if (typeof body.byteLength === "number") {
+        return body.byteLength;
+      } else if (typeof body.size === "number") {
+        return body.size;
+      } else if (typeof body.start === "number" && typeof body.end === "number") {
+        return body.end + 1 - body.start;
+      } else if (typeof body.path === "string" || Buffer.isBuffer(body.path)) {
+        return (0, import_fs4.lstatSync)(body.path).size;
+      } else if (typeof body.fd === "number") {
+        return (0, import_fs4.fstatSync)(body.fd).size;
+      }
+      throw new Error(`Body Length computation failed for ${body}`);
+    }, "calculateBodyLength");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js
+var require_ruleset = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://portal.sso.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider2();
+    var endpointResolver_1 = require_endpointResolver();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js
+var require_dist_cjs42 = __commonJS({
+  "../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      resolveDefaultsModeConfig: () => resolveDefaultsModeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_config_resolver = require_dist_cjs11();
+    var import_node_config_provider = require_dist_cjs26();
+    var import_property_provider2 = require_dist_cjs24();
+    var AWS_EXECUTION_ENV = "AWS_EXECUTION_ENV";
+    var AWS_REGION_ENV = "AWS_REGION";
+    var AWS_DEFAULT_REGION_ENV = "AWS_DEFAULT_REGION";
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var DEFAULTS_MODE_OPTIONS = ["in-region", "cross-region", "mobile", "standard", "legacy"];
+    var IMDS_REGION_PATH = "/latest/meta-data/placement/region";
+    var AWS_DEFAULTS_MODE_ENV = "AWS_DEFAULTS_MODE";
+    var AWS_DEFAULTS_MODE_CONFIG = "defaults_mode";
+    var NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        return env2[AWS_DEFAULTS_MODE_ENV];
+      },
+      configFileSelector: (profile) => {
+        return profile[AWS_DEFAULTS_MODE_CONFIG];
+      },
+      default: "legacy"
+    };
+    var resolveDefaultsModeConfig = /* @__PURE__ */ __name2(({
+      region = (0, import_node_config_provider.loadConfig)(import_config_resolver.NODE_REGION_CONFIG_OPTIONS),
+      defaultsMode = (0, import_node_config_provider.loadConfig)(NODE_DEFAULTS_MODE_CONFIG_OPTIONS)
+    } = {}) => (0, import_property_provider2.memoize)(async () => {
+      const mode = typeof defaultsMode === "function" ? await defaultsMode() : defaultsMode;
+      switch (mode == null ? void 0 : mode.toLowerCase()) {
+        case "auto":
+          return resolveNodeDefaultsModeAuto(region);
+        case "in-region":
+        case "cross-region":
+        case "mobile":
+        case "standard":
+        case "legacy":
+          return Promise.resolve(mode == null ? void 0 : mode.toLocaleLowerCase());
+        case void 0:
+          return Promise.resolve("legacy");
+        default:
+          throw new Error(
+            `Invalid parameter for "defaultsMode", expect ${DEFAULTS_MODE_OPTIONS.join(", ")}, got ${mode}`
+          );
+      }
+    }), "resolveDefaultsModeConfig");
+    var resolveNodeDefaultsModeAuto = /* @__PURE__ */ __name2(async (clientRegion) => {
+      if (clientRegion) {
+        const resolvedRegion = typeof clientRegion === "function" ? await clientRegion() : clientRegion;
+        const inferredRegion = await inferPhysicalRegion();
+        if (!inferredRegion) {
+          return "standard";
+        }
+        if (resolvedRegion === inferredRegion) {
+          return "in-region";
+        } else {
+          return "cross-region";
+        }
+      }
+      return "standard";
+    }, "resolveNodeDefaultsModeAuto");
+    var inferPhysicalRegion = /* @__PURE__ */ __name2(async () => {
+      if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {
+        return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];
+      }
+      if (!process.env[ENV_IMDS_DISABLED]) {
+        try {
+          const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          const endpoint = await getInstanceMetadataEndpoint();
+          return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString();
+        } catch (e) {
+        }
+      }
+    }, "inferPhysicalRegion");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js
+var require_runtimeConfig = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package2());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js
+var require_dist_cjs43 = __commonJS({
+  "../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getAwsRegionExtensionConfiguration: () => getAwsRegionExtensionConfiguration,
+      resolveAwsRegionExtensionConfiguration: () => resolveAwsRegionExtensionConfiguration,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let runtimeConfigRegion = /* @__PURE__ */ __name2(async () => {
+        if (runtimeConfig.region === void 0) {
+          throw new Error("Region is missing from runtimeConfig");
+        }
+        const region = runtimeConfig.region;
+        if (typeof region === "string") {
+          return region;
+        }
+        return region();
+      }, "runtimeConfigRegion");
+      return {
+        setRegion(region) {
+          runtimeConfigRegion = region;
+        },
+        region() {
+          return runtimeConfigRegion;
+        }
+      };
+    }, "getAwsRegionExtensionConfiguration");
+    var resolveAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((awsRegionExtensionConfiguration) => {
+      return {
+        region: awsRegionExtensionConfiguration.region()
+      };
+    }, "resolveAwsRegionExtensionConfiguration");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js
+var require_dist_cjs44 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      GetRoleCredentialsCommand: () => GetRoleCredentialsCommand,
+      GetRoleCredentialsRequestFilterSensitiveLog: () => GetRoleCredentialsRequestFilterSensitiveLog,
+      GetRoleCredentialsResponseFilterSensitiveLog: () => GetRoleCredentialsResponseFilterSensitiveLog,
+      InvalidRequestException: () => InvalidRequestException,
+      ListAccountRolesCommand: () => ListAccountRolesCommand,
+      ListAccountRolesRequestFilterSensitiveLog: () => ListAccountRolesRequestFilterSensitiveLog,
+      ListAccountsCommand: () => ListAccountsCommand,
+      ListAccountsRequestFilterSensitiveLog: () => ListAccountsRequestFilterSensitiveLog,
+      LogoutCommand: () => LogoutCommand,
+      LogoutRequestFilterSensitiveLog: () => LogoutRequestFilterSensitiveLog,
+      ResourceNotFoundException: () => ResourceNotFoundException,
+      RoleCredentialsFilterSensitiveLog: () => RoleCredentialsFilterSensitiveLog,
+      SSO: () => SSO,
+      SSOClient: () => SSOClient,
+      SSOServiceException: () => SSOServiceException,
+      TooManyRequestsException: () => TooManyRequestsException,
+      UnauthorizedException: () => UnauthorizedException,
+      __Client: () => import_smithy_client4.Client,
+      paginateListAccountRoles: () => paginateListAccountRoles,
+      paginateListAccounts: () => paginateListAccounts
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider2();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "awsssoportal"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOClient = class _SSOClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOClient, "SSOClient");
+    var SSOClient = _SSOClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOServiceException = class _SSOServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOServiceException2.prototype);
+      }
+    };
+    __name2(_SSOServiceException, "SSOServiceException");
+    var SSOServiceException = _SSOServiceException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _ResourceNotFoundException = class _ResourceNotFoundException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFoundException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFoundException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFoundException2.prototype);
+      }
+    };
+    __name2(_ResourceNotFoundException, "ResourceNotFoundException");
+    var ResourceNotFoundException = _ResourceNotFoundException;
+    var _TooManyRequestsException = class _TooManyRequestsException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyRequestsException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyRequestsException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyRequestsException2.prototype);
+      }
+    };
+    __name2(_TooManyRequestsException, "TooManyRequestsException");
+    var TooManyRequestsException = _TooManyRequestsException;
+    var _UnauthorizedException = class _UnauthorizedException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedException2.prototype);
+      }
+    };
+    __name2(_UnauthorizedException, "UnauthorizedException");
+    var UnauthorizedException = _UnauthorizedException;
+    var GetRoleCredentialsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetRoleCredentialsRequestFilterSensitiveLog");
+    var RoleCredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.secretAccessKey && { secretAccessKey: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.sessionToken && { sessionToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "RoleCredentialsFilterSensitiveLog");
+    var GetRoleCredentialsResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.roleCredentials && { roleCredentials: RoleCredentialsFilterSensitiveLog(obj.roleCredentials) }
+    }), "GetRoleCredentialsResponseFilterSensitiveLog");
+    var ListAccountRolesRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountRolesRequestFilterSensitiveLog");
+    var ListAccountsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountsRequestFilterSensitiveLog");
+    var LogoutRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "LogoutRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/federation/credentials");
+      const query = (0, import_smithy_client4.map)({
+        [_rn]: [, (0, import_smithy_client4.expectNonNull)(input[_rN], `roleName`)],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_GetRoleCredentialsCommand");
+    var se_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/roles");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountRolesCommand");
+    var se_ListAccountsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/accounts");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountsCommand");
+    var se_LogoutCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/logout");
+      let body;
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_LogoutCommand");
+    var de_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        roleCredentials: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_GetRoleCredentialsCommand");
+    var de_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        nextToken: import_smithy_client4.expectString,
+        roleList: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountRolesCommand");
+    var de_ListAccountsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accountList: import_smithy_client4._json,
+        nextToken: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountsCommand");
+    var de_LogoutCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      await (0, import_smithy_client4.collectBody)(output.body, context);
+      return contents;
+    }, "de_LogoutCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "InvalidRequestException":
+        case "com.amazonaws.sso#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "ResourceNotFoundException":
+        case "com.amazonaws.sso#ResourceNotFoundException":
+          throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+        case "TooManyRequestsException":
+        case "com.amazonaws.sso#TooManyRequestsException":
+          throw await de_TooManyRequestsExceptionRes(parsedOutput, context);
+        case "UnauthorizedException":
+        case "com.amazonaws.sso#UnauthorizedException":
+          throw await de_UnauthorizedExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOServiceException);
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_ResourceNotFoundExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ResourceNotFoundException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ResourceNotFoundExceptionRes");
+    var de_TooManyRequestsExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new TooManyRequestsException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_TooManyRequestsExceptionRes");
+    var de_UnauthorizedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => value !== void 0 && value !== null && value !== "" && (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0), "isSerializableHeaderValue");
+    var _aI = "accountId";
+    var _aT = "accessToken";
+    var _ai = "account_id";
+    var _mR = "maxResults";
+    var _mr = "max_result";
+    var _nT = "nextToken";
+    var _nt = "next_token";
+    var _rN = "roleName";
+    var _rn = "role_name";
+    var _xasbt = "x-amz-sso_bearer_token";
+    var _GetRoleCredentialsCommand = class _GetRoleCredentialsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "GetRoleCredentials", {}).n("SSOClient", "GetRoleCredentialsCommand").f(GetRoleCredentialsRequestFilterSensitiveLog, GetRoleCredentialsResponseFilterSensitiveLog).ser(se_GetRoleCredentialsCommand).de(de_GetRoleCredentialsCommand).build() {
+    };
+    __name2(_GetRoleCredentialsCommand, "GetRoleCredentialsCommand");
+    var GetRoleCredentialsCommand = _GetRoleCredentialsCommand;
+    var _ListAccountRolesCommand = class _ListAccountRolesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccountRoles", {}).n("SSOClient", "ListAccountRolesCommand").f(ListAccountRolesRequestFilterSensitiveLog, void 0).ser(se_ListAccountRolesCommand).de(de_ListAccountRolesCommand).build() {
+    };
+    __name2(_ListAccountRolesCommand, "ListAccountRolesCommand");
+    var ListAccountRolesCommand = _ListAccountRolesCommand;
+    var _ListAccountsCommand = class _ListAccountsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccounts", {}).n("SSOClient", "ListAccountsCommand").f(ListAccountsRequestFilterSensitiveLog, void 0).ser(se_ListAccountsCommand).de(de_ListAccountsCommand).build() {
+    };
+    __name2(_ListAccountsCommand, "ListAccountsCommand");
+    var ListAccountsCommand = _ListAccountsCommand;
+    var _LogoutCommand = class _LogoutCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "Logout", {}).n("SSOClient", "LogoutCommand").f(LogoutRequestFilterSensitiveLog, void 0).ser(se_LogoutCommand).de(de_LogoutCommand).build() {
+    };
+    __name2(_LogoutCommand, "LogoutCommand");
+    var LogoutCommand = _LogoutCommand;
+    var commands = {
+      GetRoleCredentialsCommand,
+      ListAccountRolesCommand,
+      ListAccountsCommand,
+      LogoutCommand
+    };
+    var _SSO = class _SSO extends SSOClient {
+    };
+    __name2(_SSO, "SSO");
+    var SSO = _SSO;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSO);
+    var paginateListAccountRoles = (0, import_core4.createPaginator)(SSOClient, ListAccountRolesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListAccounts = (0, import_core4.createPaginator)(SSOClient, ListAccountsCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOOIDCHttpAuthSchemeProvider = exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOOIDCHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = defaultSSOOIDCHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sso-oauth",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOOIDCHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "CreateToken": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "RegisterClient": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "StartDeviceAuthorization": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeProvider = defaultSSOOIDCHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/package.json
+var require_package3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso-oidc",
+      description: "AWS SDK for JavaScript Sso Oidc Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso-oidc",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso-oidc"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      peerDependencies: {
+        "@aws-sdk/client-sts": "^3.632.0"
+      },
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso-oidc",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso-oidc"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js
+var require_ruleset2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://oidc.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://oidc.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset2();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider3();
+    var endpointResolver_1 = require_endpointResolver2();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOOIDCHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO OIDC",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js
+var require_runtimeConfig2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package3());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js
+var require_dist_cjs45 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AccessDeniedException: () => AccessDeniedException,
+      AuthorizationPendingException: () => AuthorizationPendingException,
+      CreateTokenCommand: () => CreateTokenCommand,
+      CreateTokenRequestFilterSensitiveLog: () => CreateTokenRequestFilterSensitiveLog,
+      CreateTokenResponseFilterSensitiveLog: () => CreateTokenResponseFilterSensitiveLog,
+      CreateTokenWithIAMCommand: () => CreateTokenWithIAMCommand,
+      CreateTokenWithIAMRequestFilterSensitiveLog: () => CreateTokenWithIAMRequestFilterSensitiveLog,
+      CreateTokenWithIAMResponseFilterSensitiveLog: () => CreateTokenWithIAMResponseFilterSensitiveLog,
+      ExpiredTokenException: () => ExpiredTokenException,
+      InternalServerException: () => InternalServerException,
+      InvalidClientException: () => InvalidClientException,
+      InvalidClientMetadataException: () => InvalidClientMetadataException,
+      InvalidGrantException: () => InvalidGrantException,
+      InvalidRedirectUriException: () => InvalidRedirectUriException,
+      InvalidRequestException: () => InvalidRequestException,
+      InvalidRequestRegionException: () => InvalidRequestRegionException,
+      InvalidScopeException: () => InvalidScopeException,
+      RegisterClientCommand: () => RegisterClientCommand,
+      RegisterClientResponseFilterSensitiveLog: () => RegisterClientResponseFilterSensitiveLog,
+      SSOOIDC: () => SSOOIDC,
+      SSOOIDCClient: () => SSOOIDCClient,
+      SSOOIDCServiceException: () => SSOOIDCServiceException,
+      SlowDownException: () => SlowDownException,
+      StartDeviceAuthorizationCommand: () => StartDeviceAuthorizationCommand,
+      StartDeviceAuthorizationRequestFilterSensitiveLog: () => StartDeviceAuthorizationRequestFilterSensitiveLog,
+      UnauthorizedClientException: () => UnauthorizedClientException,
+      UnsupportedGrantTypeException: () => UnsupportedGrantTypeException,
+      __Client: () => import_smithy_client4.Client
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider3();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "sso-oauth"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig2();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOOIDCClient = class _SSOOIDCClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOOIDCHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOOIDCClient, "SSOOIDCClient");
+    var SSOOIDCClient = _SSOOIDCClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOOIDCServiceException = class _SSOOIDCServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOOIDCServiceException2.prototype);
+      }
+    };
+    __name2(_SSOOIDCServiceException, "SSOOIDCServiceException");
+    var SSOOIDCServiceException = _SSOOIDCServiceException;
+    var _AccessDeniedException = class _AccessDeniedException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AccessDeniedException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AccessDeniedException, "AccessDeniedException");
+    var AccessDeniedException = _AccessDeniedException;
+    var _AuthorizationPendingException = class _AuthorizationPendingException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AuthorizationPendingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AuthorizationPendingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AuthorizationPendingException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AuthorizationPendingException, "AuthorizationPendingException");
+    var AuthorizationPendingException = _AuthorizationPendingException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _InternalServerException = class _InternalServerException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InternalServerException",
+          $fault: "server",
+          ...opts
+        });
+        this.name = "InternalServerException";
+        this.$fault = "server";
+        Object.setPrototypeOf(this, _InternalServerException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InternalServerException, "InternalServerException");
+    var InternalServerException = _InternalServerException;
+    var _InvalidClientException = class _InvalidClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientException, "InvalidClientException");
+    var InvalidClientException = _InvalidClientException;
+    var _InvalidGrantException = class _InvalidGrantException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidGrantException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidGrantException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidGrantException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidGrantException, "InvalidGrantException");
+    var InvalidGrantException = _InvalidGrantException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _InvalidScopeException = class _InvalidScopeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidScopeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidScopeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidScopeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidScopeException, "InvalidScopeException");
+    var InvalidScopeException = _InvalidScopeException;
+    var _SlowDownException = class _SlowDownException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "SlowDownException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "SlowDownException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _SlowDownException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_SlowDownException, "SlowDownException");
+    var SlowDownException = _SlowDownException;
+    var _UnauthorizedClientException = class _UnauthorizedClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnauthorizedClientException, "UnauthorizedClientException");
+    var UnauthorizedClientException = _UnauthorizedClientException;
+    var _UnsupportedGrantTypeException = class _UnsupportedGrantTypeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnsupportedGrantTypeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnsupportedGrantTypeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnsupportedGrantTypeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnsupportedGrantTypeException, "UnsupportedGrantTypeException");
+    var UnsupportedGrantTypeException = _UnsupportedGrantTypeException;
+    var _InvalidRequestRegionException = class _InvalidRequestRegionException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestRegionException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestRegionException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestRegionException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+        this.endpoint = opts.endpoint;
+        this.region = opts.region;
+      }
+    };
+    __name2(_InvalidRequestRegionException, "InvalidRequestRegionException");
+    var InvalidRequestRegionException = _InvalidRequestRegionException;
+    var _InvalidClientMetadataException = class _InvalidClientMetadataException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientMetadataException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientMetadataException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientMetadataException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientMetadataException, "InvalidClientMetadataException");
+    var InvalidClientMetadataException = _InvalidClientMetadataException;
+    var _InvalidRedirectUriException = class _InvalidRedirectUriException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRedirectUriException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRedirectUriException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRedirectUriException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRedirectUriException, "InvalidRedirectUriException");
+    var InvalidRedirectUriException = _InvalidRedirectUriException;
+    var CreateTokenRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenRequestFilterSensitiveLog");
+    var CreateTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenResponseFilterSensitiveLog");
+    var CreateTokenWithIAMRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.assertion && { assertion: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.subjectToken && { subjectToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMRequestFilterSensitiveLog");
+    var CreateTokenWithIAMResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMResponseFilterSensitiveLog");
+    var RegisterClientResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "RegisterClientResponseFilterSensitiveLog");
+    var StartDeviceAuthorizationRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartDeviceAuthorizationRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_CreateTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          code: [],
+          codeVerifier: [],
+          deviceCode: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          scope: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_CreateTokenCommand");
+    var se_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      const query = (0, import_smithy_client4.map)({
+        [_ai]: [, "t"]
+      });
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          assertion: [],
+          clientId: [],
+          code: [],
+          codeVerifier: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          requestedTokenType: [],
+          scope: (_) => (0, import_smithy_client4._json)(_),
+          subjectToken: [],
+          subjectTokenType: []
+        })
+      );
+      b.m("POST").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_CreateTokenWithIAMCommand");
+    var se_RegisterClientCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/client/register");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientName: [],
+          clientType: [],
+          entitledApplicationArn: [],
+          grantTypes: (_) => (0, import_smithy_client4._json)(_),
+          issuerUrl: [],
+          redirectUris: (_) => (0, import_smithy_client4._json)(_),
+          scopes: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_RegisterClientCommand");
+    var se_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/device_authorization");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          startUrl: []
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_StartDeviceAuthorizationCommand");
+    var de_CreateTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenCommand");
+    var de_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        issuedTokenType: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        scope: import_smithy_client4._json,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenWithIAMCommand");
+    var de_RegisterClientCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        authorizationEndpoint: import_smithy_client4.expectString,
+        clientId: import_smithy_client4.expectString,
+        clientIdIssuedAt: import_smithy_client4.expectLong,
+        clientSecret: import_smithy_client4.expectString,
+        clientSecretExpiresAt: import_smithy_client4.expectLong,
+        tokenEndpoint: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_RegisterClientCommand");
+    var de_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        deviceCode: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        interval: import_smithy_client4.expectInt32,
+        userCode: import_smithy_client4.expectString,
+        verificationUri: import_smithy_client4.expectString,
+        verificationUriComplete: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_StartDeviceAuthorizationCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "AccessDeniedException":
+        case "com.amazonaws.ssooidc#AccessDeniedException":
+          throw await de_AccessDeniedExceptionRes(parsedOutput, context);
+        case "AuthorizationPendingException":
+        case "com.amazonaws.ssooidc#AuthorizationPendingException":
+          throw await de_AuthorizationPendingExceptionRes(parsedOutput, context);
+        case "ExpiredTokenException":
+        case "com.amazonaws.ssooidc#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "InternalServerException":
+        case "com.amazonaws.ssooidc#InternalServerException":
+          throw await de_InternalServerExceptionRes(parsedOutput, context);
+        case "InvalidClientException":
+        case "com.amazonaws.ssooidc#InvalidClientException":
+          throw await de_InvalidClientExceptionRes(parsedOutput, context);
+        case "InvalidGrantException":
+        case "com.amazonaws.ssooidc#InvalidGrantException":
+          throw await de_InvalidGrantExceptionRes(parsedOutput, context);
+        case "InvalidRequestException":
+        case "com.amazonaws.ssooidc#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "InvalidScopeException":
+        case "com.amazonaws.ssooidc#InvalidScopeException":
+          throw await de_InvalidScopeExceptionRes(parsedOutput, context);
+        case "SlowDownException":
+        case "com.amazonaws.ssooidc#SlowDownException":
+          throw await de_SlowDownExceptionRes(parsedOutput, context);
+        case "UnauthorizedClientException":
+        case "com.amazonaws.ssooidc#UnauthorizedClientException":
+          throw await de_UnauthorizedClientExceptionRes(parsedOutput, context);
+        case "UnsupportedGrantTypeException":
+        case "com.amazonaws.ssooidc#UnsupportedGrantTypeException":
+          throw await de_UnsupportedGrantTypeExceptionRes(parsedOutput, context);
+        case "InvalidRequestRegionException":
+        case "com.amazonaws.ssooidc#InvalidRequestRegionException":
+          throw await de_InvalidRequestRegionExceptionRes(parsedOutput, context);
+        case "InvalidClientMetadataException":
+        case "com.amazonaws.ssooidc#InvalidClientMetadataException":
+          throw await de_InvalidClientMetadataExceptionRes(parsedOutput, context);
+        case "InvalidRedirectUriException":
+        case "com.amazonaws.ssooidc#InvalidRedirectUriException":
+          throw await de_InvalidRedirectUriExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOOIDCServiceException);
+    var de_AccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AccessDeniedExceptionRes");
+    var de_AuthorizationPendingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AuthorizationPendingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AuthorizationPendingExceptionRes");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_InternalServerExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InternalServerException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InternalServerExceptionRes");
+    var de_InvalidClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientExceptionRes");
+    var de_InvalidClientMetadataExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientMetadataException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientMetadataExceptionRes");
+    var de_InvalidGrantExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidGrantException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidGrantExceptionRes");
+    var de_InvalidRedirectUriExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRedirectUriException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRedirectUriExceptionRes");
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_InvalidRequestRegionExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        endpoint: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString,
+        region: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestRegionException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestRegionExceptionRes");
+    var de_InvalidScopeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidScopeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidScopeExceptionRes");
+    var de_SlowDownExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new SlowDownException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_SlowDownExceptionRes");
+    var de_UnauthorizedClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedClientExceptionRes");
+    var de_UnsupportedGrantTypeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnsupportedGrantTypeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnsupportedGrantTypeExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var _ai = "aws_iam";
+    var _CreateTokenCommand = class _CreateTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateToken", {}).n("SSOOIDCClient", "CreateTokenCommand").f(CreateTokenRequestFilterSensitiveLog, CreateTokenResponseFilterSensitiveLog).ser(se_CreateTokenCommand).de(de_CreateTokenCommand).build() {
+    };
+    __name2(_CreateTokenCommand, "CreateTokenCommand");
+    var CreateTokenCommand = _CreateTokenCommand;
+    var _CreateTokenWithIAMCommand = class _CreateTokenWithIAMCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateTokenWithIAM", {}).n("SSOOIDCClient", "CreateTokenWithIAMCommand").f(CreateTokenWithIAMRequestFilterSensitiveLog, CreateTokenWithIAMResponseFilterSensitiveLog).ser(se_CreateTokenWithIAMCommand).de(de_CreateTokenWithIAMCommand).build() {
+    };
+    __name2(_CreateTokenWithIAMCommand, "CreateTokenWithIAMCommand");
+    var CreateTokenWithIAMCommand = _CreateTokenWithIAMCommand;
+    var _RegisterClientCommand = class _RegisterClientCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "RegisterClient", {}).n("SSOOIDCClient", "RegisterClientCommand").f(void 0, RegisterClientResponseFilterSensitiveLog).ser(se_RegisterClientCommand).de(de_RegisterClientCommand).build() {
+    };
+    __name2(_RegisterClientCommand, "RegisterClientCommand");
+    var RegisterClientCommand = _RegisterClientCommand;
+    var _StartDeviceAuthorizationCommand = class _StartDeviceAuthorizationCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "StartDeviceAuthorization", {}).n("SSOOIDCClient", "StartDeviceAuthorizationCommand").f(StartDeviceAuthorizationRequestFilterSensitiveLog, void 0).ser(se_StartDeviceAuthorizationCommand).de(de_StartDeviceAuthorizationCommand).build() {
+    };
+    __name2(_StartDeviceAuthorizationCommand, "StartDeviceAuthorizationCommand");
+    var StartDeviceAuthorizationCommand = _StartDeviceAuthorizationCommand;
+    var commands = {
+      CreateTokenCommand,
+      CreateTokenWithIAMCommand,
+      RegisterClientCommand,
+      StartDeviceAuthorizationCommand
+    };
+    var _SSOOIDC = class _SSOOIDC extends SSOOIDCClient {
+    };
+    __name2(_SSOOIDC, "SSOOIDC");
+    var SSOOIDC = _SSOOIDC;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSOOIDC);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js
+var require_dist_cjs46 = __commonJS({
+  "../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSso: () => fromSso,
+      fromStatic: () => fromStatic,
+      nodeProvider: () => nodeProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var EXPIRE_WINDOW_MS = 5 * 60 * 1e3;
+    var REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;
+    var ssoOidcClientsHash = {};
+    var getSsoOidcClient = /* @__PURE__ */ __name2(async (ssoRegion) => {
+      const { SSOOIDCClient } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      if (ssoOidcClientsHash[ssoRegion]) {
+        return ssoOidcClientsHash[ssoRegion];
+      }
+      const ssoOidcClient = new SSOOIDCClient({ region: ssoRegion });
+      ssoOidcClientsHash[ssoRegion] = ssoOidcClient;
+      return ssoOidcClient;
+    }, "getSsoOidcClient");
+    var getNewSsoOidcToken = /* @__PURE__ */ __name2(async (ssoToken, ssoRegion) => {
+      const { CreateTokenCommand } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      const ssoOidcClient = await getSsoOidcClient(ssoRegion);
+      return ssoOidcClient.send(
+        new CreateTokenCommand({
+          clientId: ssoToken.clientId,
+          clientSecret: ssoToken.clientSecret,
+          refreshToken: ssoToken.refreshToken,
+          grantType: "refresh_token"
+        })
+      );
+    }, "getNewSsoOidcToken");
+    var import_property_provider2 = require_dist_cjs24();
+    var validateTokenExpiry = /* @__PURE__ */ __name2((token) => {
+      if (token.expiration && token.expiration.getTime() < Date.now()) {
+        throw new import_property_provider2.TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);
+      }
+    }, "validateTokenExpiry");
+    var validateTokenKey = /* @__PURE__ */ __name2((key, value, forRefresh = false) => {
+      if (typeof value === "undefined") {
+        throw new import_property_provider2.TokenProviderError(
+          `Value not present for '${key}' in SSO Token${forRefresh ? ". Cannot refresh" : ""}. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+    }, "validateTokenKey");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_fs4 = require("fs");
+    var { writeFile } = import_fs4.promises;
+    var writeSSOTokenToFile = /* @__PURE__ */ __name2((id, ssoToken) => {
+      const tokenFilepath = (0, import_shared_ini_file_loader.getSSOTokenFilepath)(id);
+      const tokenString = JSON.stringify(ssoToken, null, 2);
+      return writeFile(tokenFilepath, tokenString);
+    }, "writeSSOTokenToFile");
+    var lastRefreshAttemptTime = /* @__PURE__ */ new Date(0);
+    var fromSso = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/token-providers - fromSso");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const profile = profiles[profileName];
+      if (!profile) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);
+      } else if (!profile["sso_session"]) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);
+      }
+      const ssoSessionName = profile["sso_session"];
+      const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+      const ssoSession = ssoSessions[ssoSessionName];
+      if (!ssoSession) {
+        throw new import_property_provider2.TokenProviderError(
+          `Sso session '${ssoSessionName}' could not be found in shared credentials file.`,
+          false
+        );
+      }
+      for (const ssoSessionRequiredKey of ["sso_start_url", "sso_region"]) {
+        if (!ssoSession[ssoSessionRequiredKey]) {
+          throw new import_property_provider2.TokenProviderError(
+            `Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`,
+            false
+          );
+        }
+      }
+      const ssoStartUrl = ssoSession["sso_start_url"];
+      const ssoRegion = ssoSession["sso_region"];
+      let ssoToken;
+      try {
+        ssoToken = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoSessionName);
+      } catch (e) {
+        throw new import_property_provider2.TokenProviderError(
+          `The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+      validateTokenKey("accessToken", ssoToken.accessToken);
+      validateTokenKey("expiresAt", ssoToken.expiresAt);
+      const { accessToken, expiresAt } = ssoToken;
+      const existingToken = { token: accessToken, expiration: new Date(expiresAt) };
+      if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {
+        return existingToken;
+      }
+      if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1e3) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+      validateTokenKey("clientId", ssoToken.clientId, true);
+      validateTokenKey("clientSecret", ssoToken.clientSecret, true);
+      validateTokenKey("refreshToken", ssoToken.refreshToken, true);
+      try {
+        lastRefreshAttemptTime.setTime(Date.now());
+        const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion);
+        validateTokenKey("accessToken", newSsoOidcToken.accessToken);
+        validateTokenKey("expiresIn", newSsoOidcToken.expiresIn);
+        const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1e3);
+        try {
+          await writeSSOTokenToFile(ssoSessionName, {
+            ...ssoToken,
+            accessToken: newSsoOidcToken.accessToken,
+            expiresAt: newTokenExpiration.toISOString(),
+            refreshToken: newSsoOidcToken.refreshToken
+          });
+        } catch (error) {
+        }
+        return {
+          token: newSsoOidcToken.accessToken,
+          expiration: newTokenExpiration
+        };
+      } catch (error) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+    }, "fromSso");
+    var fromStatic = /* @__PURE__ */ __name2(({ token, logger }) => async () => {
+      logger == null ? void 0 : logger.debug("@aws-sdk/token-providers - fromStatic");
+      if (!token || !token.token) {
+        throw new import_property_provider2.TokenProviderError(`Please pass a valid token to fromStatic`, false);
+      }
+      return token;
+    }, "fromStatic");
+    var nodeProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(fromSso(init), async () => {
+        throw new import_property_provider2.TokenProviderError("Could not load token from any providers", false);
+      }),
+      (token) => token.expiration !== void 0 && token.expiration.getTime() - Date.now() < 3e5,
+      (token) => token.expiration !== void 0
+    ), "nodeProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js
+var require_dist_cjs47 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __esm2 = (fn, res) => function __init() {
+      return fn && (res = (0, fn[__getOwnPropNames2(fn)[0]])(fn = 0)), res;
+    };
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var loadSso_exports = {};
+    __export2(loadSso_exports, {
+      GetRoleCredentialsCommand: () => import_client_sso.GetRoleCredentialsCommand,
+      SSOClient: () => import_client_sso.SSOClient
+    });
+    var import_client_sso;
+    var init_loadSso = __esm2({
+      "src/loadSso.ts"() {
+        "use strict";
+        import_client_sso = require_dist_cjs44();
+      }
+    });
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSSO: () => fromSSO,
+      isSsoProfile: () => isSsoProfile,
+      validateSsoProfile: () => validateSsoProfile
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var import_token_providers = require_dist_cjs46();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var SHOULD_FAIL_CREDENTIAL_CHAIN = false;
+    var resolveSSOCredentials = /* @__PURE__ */ __name2(async ({
+      ssoStartUrl,
+      ssoSession,
+      ssoAccountId,
+      ssoRegion,
+      ssoRoleName,
+      ssoClient,
+      clientConfig,
+      profile,
+      logger
+    }) => {
+      let token;
+      const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;
+      if (ssoSession) {
+        try {
+          const _token = await (0, import_token_providers.fromSso)({ profile })();
+          token = {
+            accessToken: _token.token,
+            expiresAt: new Date(_token.expiration).toISOString()
+          };
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(e.message, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      } else {
+        try {
+          token = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoStartUrl);
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      }
+      if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {
+        throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const { accessToken } = token;
+      const { SSOClient: SSOClient2, GetRoleCredentialsCommand: GetRoleCredentialsCommand2 } = await Promise.resolve().then(() => (init_loadSso(), loadSso_exports));
+      const sso = ssoClient || new SSOClient2(
+        Object.assign({}, clientConfig ?? {}, {
+          region: (clientConfig == null ? void 0 : clientConfig.region) ?? ssoRegion
+        })
+      );
+      let ssoResp;
+      try {
+        ssoResp = await sso.send(
+          new GetRoleCredentialsCommand2({
+            accountId: ssoAccountId,
+            roleName: ssoRoleName,
+            accessToken
+          })
+        );
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(e, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const {
+        roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}
+      } = ssoResp;
+      if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {
+        throw new import_property_provider2.CredentialsProviderError("SSO returns an invalid temporary credential.", {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      return {
+        accessKeyId,
+        secretAccessKey,
+        sessionToken,
+        expiration: new Date(expiration),
+        ...credentialScope && { credentialScope },
+        ...accountId && { accountId }
+      };
+    }, "resolveSSOCredentials");
+    var validateSsoProfile = /* @__PURE__ */ __name2((profile, logger) => {
+      const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;
+      if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(
+            ", "
+          )}
+Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,
+          { tryNextLink: false, logger }
+        );
+      }
+      return profile;
+    }, "validateSsoProfile");
+    var fromSSO = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-sso - fromSSO");
+      const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+      const { ssoClient } = init;
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+        const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+        const profile = profiles[profileName];
+        if (!profile) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });
+        }
+        if (!isSsoProfile(profile)) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {
+            logger: init.logger
+          });
+        }
+        if (profile == null ? void 0 : profile.sso_session) {
+          const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+          const session = ssoSessions[profile.sso_session];
+          const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;
+          if (ssoRegion && ssoRegion !== session.sso_region) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          profile.sso_region = session.sso_region;
+          profile.sso_start_url = session.sso_start_url;
+        }
+        const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(
+          profile,
+          init.logger
+        );
+        return resolveSSOCredentials({
+          ssoStartUrl: sso_start_url,
+          ssoSession: sso_session,
+          ssoAccountId: sso_account_id,
+          ssoRegion: sso_region,
+          ssoRoleName: sso_role_name,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      } else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {
+        throw new import_property_provider2.CredentialsProviderError(
+          'Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',
+          { tryNextLink: false, logger: init.logger }
+        );
+      } else {
+        return resolveSSOCredentials({
+          ssoStartUrl,
+          ssoSession,
+          ssoAccountId,
+          ssoRegion,
+          ssoRoleName,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      }
+    }, "fromSSO");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.resolveStsAuthConfig = exports2.defaultSTSHttpAuthSchemeProvider = exports2.defaultSTSHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var STSClient_1 = require_STSClient();
+    var defaultSTSHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSTSHttpAuthSchemeParametersProvider = defaultSTSHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sts",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSTSHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "AssumeRoleWithSAML": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "AssumeRoleWithWebIdentity": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSTSHttpAuthSchemeProvider = defaultSTSHttpAuthSchemeProvider;
+    var resolveStsAuthConfig = (input) => ({
+      ...input,
+      stsClientCtor: STSClient_1.STSClient
+    });
+    exports2.resolveStsAuthConfig = resolveStsAuthConfig;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, exports2.resolveStsAuthConfig)(config);
+      const config_1 = (0, core_1.resolveAwsSdkSigV4Config)(config_0);
+      return {
+        ...config_1
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js
+var require_EndpointParameters = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.commonParams = exports2.resolveClientEndpointParameters = void 0;
+    var resolveClientEndpointParameters = (options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        useGlobalEndpoint: options.useGlobalEndpoint ?? false,
+        defaultSigningName: "sts"
+      };
+    };
+    exports2.resolveClientEndpointParameters = resolveClientEndpointParameters;
+    exports2.commonParams = {
+      UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" },
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/package.json
+var require_package4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sts",
+      description: "AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sts",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "rimraf ./dist-types tsconfig.types.tsbuildinfo && tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sts",
+        test: "yarn test:unit",
+        "test:unit": "jest"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sts",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sts"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js
+var require_ruleset3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var F2 = "required";
+    var G2 = "type";
+    var H2 = "fn";
+    var I2 = "argv";
+    var J = "ref";
+    var a = false;
+    var b = true;
+    var c = "booleanEquals";
+    var d = "stringEquals";
+    var e = "sigv4";
+    var f = "sts";
+    var g = "us-east-1";
+    var h = "endpoint";
+    var i = "https://sts.{Region}.{PartitionResult#dnsSuffix}";
+    var j = "tree";
+    var k = "error";
+    var l = "getAttr";
+    var m = { [F2]: false, [G2]: "String" };
+    var n = { [F2]: true, "default": false, [G2]: "Boolean" };
+    var o = { [J]: "Endpoint" };
+    var p = { [H2]: "isSet", [I2]: [{ [J]: "Region" }] };
+    var q = { [J]: "Region" };
+    var r = { [H2]: "aws.partition", [I2]: [q], "assign": "PartitionResult" };
+    var s = { [J]: "UseFIPS" };
+    var t = { [J]: "UseDualStack" };
+    var u = { "url": "https://sts.amazonaws.com", "properties": { "authSchemes": [{ "name": e, "signingName": f, "signingRegion": g }] }, "headers": {} };
+    var v = {};
+    var w = { "conditions": [{ [H2]: d, [I2]: [q, "aws-global"] }], [h]: u, [G2]: h };
+    var x = { [H2]: c, [I2]: [s, true] };
+    var y = { [H2]: c, [I2]: [t, true] };
+    var z = { [H2]: l, [I2]: [{ [J]: "PartitionResult" }, "supportsFIPS"] };
+    var A = { [J]: "PartitionResult" };
+    var B = { [H2]: c, [I2]: [true, { [H2]: l, [I2]: [A, "supportsDualStack"] }] };
+    var C = [{ [H2]: "isSet", [I2]: [o] }];
+    var D = [x];
+    var E = [y];
+    var _data = { version: "1.0", parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n }, rules: [{ conditions: [{ [H2]: c, [I2]: [{ [J]: "UseGlobalEndpoint" }, b] }, { [H2]: "not", [I2]: C }, p, r, { [H2]: c, [I2]: [s, a] }, { [H2]: c, [I2]: [t, a] }], rules: [{ conditions: [{ [H2]: d, [I2]: [q, "ap-northeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-south-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-2"] }], endpoint: u, [G2]: h }, w, { conditions: [{ [H2]: d, [I2]: [q, "ca-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-north-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-3"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "sa-east-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, g] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-east-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-2"] }], endpoint: u, [G2]: h }, { endpoint: { url: i, properties: { authSchemes: [{ name: e, signingName: f, signingRegion: "{Region}" }] }, headers: v }, [G2]: h }], [G2]: j }, { conditions: C, rules: [{ conditions: D, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [G2]: k }, { conditions: E, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [G2]: k }, { endpoint: { url: o, properties: v, headers: v }, [G2]: h }], [G2]: j }, { conditions: [p], rules: [{ conditions: [r], rules: [{ conditions: [x, y], rules: [{ conditions: [{ [H2]: c, [I2]: [b, z] }, B], rules: [{ endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", [G2]: k }], [G2]: j }, { conditions: D, rules: [{ conditions: [{ [H2]: c, [I2]: [z, b] }], rules: [{ conditions: [{ [H2]: d, [I2]: [{ [H2]: l, [I2]: [A, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://sts.{Region}.amazonaws.com", properties: v, headers: v }, [G2]: h }, { endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS is enabled but this partition does not support FIPS", [G2]: k }], [G2]: j }, { conditions: E, rules: [{ conditions: [B], rules: [{ endpoint: { url: "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "DualStack is enabled but this partition does not support DualStack", [G2]: k }], [G2]: j }, w, { endpoint: { url: i, properties: v, headers: v }, [G2]: h }], [G2]: j }], [G2]: j }, { error: "Invalid Configuration: Missing Region", [G2]: k }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset3();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var endpointResolver_1 = require_endpointResolver3();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2011-06-15",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "STS",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js
+var require_runtimeConfig3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package4());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared3();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4") || (async (idProps) => await (0, credential_provider_node_1.defaultProvider)(idProps?.__config || {})()),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js
+var require_httpAuthExtensionConfiguration = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthRuntimeConfig = exports2.getHttpAuthExtensionConfiguration = void 0;
+    var getHttpAuthExtensionConfiguration = (runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    };
+    exports2.getHttpAuthExtensionConfiguration = getHttpAuthExtensionConfiguration;
+    var resolveHttpAuthRuntimeConfig = (config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    };
+    exports2.resolveHttpAuthRuntimeConfig = resolveHttpAuthRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js
+var require_runtimeExtensions = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveRuntimeExtensions = void 0;
+    var region_config_resolver_1 = require_dist_cjs43();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var httpAuthExtensionConfiguration_1 = require_httpAuthExtensionConfiguration();
+    var asPartial = (t) => t;
+    var resolveRuntimeExtensions = (runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...(0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration)
+      };
+    };
+    exports2.resolveRuntimeExtensions = resolveRuntimeExtensions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js
+var require_STSClient = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.STSClient = exports2.__Client = void 0;
+    var middleware_host_header_1 = require_dist_cjs3();
+    var middleware_logger_1 = require_dist_cjs4();
+    var middleware_recursion_detection_1 = require_dist_cjs5();
+    var middleware_user_agent_1 = require_dist_cjs8();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_1 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var middleware_content_length_1 = require_dist_cjs23();
+    var middleware_endpoint_1 = require_dist_cjs29();
+    var middleware_retry_1 = require_dist_cjs34();
+    var smithy_client_1 = require_dist_cjs33();
+    Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() {
+      return smithy_client_1.Client;
+    } });
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var EndpointParameters_1 = require_EndpointParameters();
+    var runtimeConfig_1 = require_runtimeConfig3();
+    var runtimeExtensions_1 = require_runtimeExtensions();
+    var STSClient2 = class extends smithy_client_1.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {});
+        const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0);
+        const _config_2 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, middleware_retry_1.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, config_resolver_1.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, httpAuthSchemeProvider_1.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_7, configuration?.extensions || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use((0, core_1.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+          httpAuthSchemeParametersProvider: httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeParametersProvider,
+          identityProviderConfigProvider: async (config) => new core_1.DefaultIdentityProviderConfig({
+            "aws.auth#sigv4": config.credentials
+          })
+        }));
+        this.middlewareStack.use((0, core_1.getHttpSigningPlugin)(this.config));
+      }
+      destroy() {
+        super.destroy();
+      }
+    };
+    exports2.STSClient = STSClient2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js
+var require_dist_cjs48 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AssumeRoleCommand: () => AssumeRoleCommand,
+      AssumeRoleResponseFilterSensitiveLog: () => AssumeRoleResponseFilterSensitiveLog,
+      AssumeRoleWithSAMLCommand: () => AssumeRoleWithSAMLCommand,
+      AssumeRoleWithSAMLRequestFilterSensitiveLog: () => AssumeRoleWithSAMLRequestFilterSensitiveLog,
+      AssumeRoleWithSAMLResponseFilterSensitiveLog: () => AssumeRoleWithSAMLResponseFilterSensitiveLog,
+      AssumeRoleWithWebIdentityCommand: () => AssumeRoleWithWebIdentityCommand,
+      AssumeRoleWithWebIdentityRequestFilterSensitiveLog: () => AssumeRoleWithWebIdentityRequestFilterSensitiveLog,
+      AssumeRoleWithWebIdentityResponseFilterSensitiveLog: () => AssumeRoleWithWebIdentityResponseFilterSensitiveLog,
+      ClientInputEndpointParameters: () => import_EndpointParameters9.ClientInputEndpointParameters,
+      CredentialsFilterSensitiveLog: () => CredentialsFilterSensitiveLog,
+      DecodeAuthorizationMessageCommand: () => DecodeAuthorizationMessageCommand,
+      ExpiredTokenException: () => ExpiredTokenException,
+      GetAccessKeyInfoCommand: () => GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand: () => GetCallerIdentityCommand,
+      GetFederationTokenCommand: () => GetFederationTokenCommand,
+      GetFederationTokenResponseFilterSensitiveLog: () => GetFederationTokenResponseFilterSensitiveLog,
+      GetSessionTokenCommand: () => GetSessionTokenCommand,
+      GetSessionTokenResponseFilterSensitiveLog: () => GetSessionTokenResponseFilterSensitiveLog,
+      IDPCommunicationErrorException: () => IDPCommunicationErrorException,
+      IDPRejectedClaimException: () => IDPRejectedClaimException,
+      InvalidAuthorizationMessageException: () => InvalidAuthorizationMessageException,
+      InvalidIdentityTokenException: () => InvalidIdentityTokenException,
+      MalformedPolicyDocumentException: () => MalformedPolicyDocumentException,
+      PackedPolicyTooLargeException: () => PackedPolicyTooLargeException,
+      RegionDisabledException: () => RegionDisabledException,
+      STS: () => STS,
+      STSServiceException: () => STSServiceException,
+      decorateDefaultCredentialProvider: () => decorateDefaultCredentialProvider,
+      getDefaultRoleAssumer: () => getDefaultRoleAssumer2,
+      getDefaultRoleAssumerWithWebIdentity: () => getDefaultRoleAssumerWithWebIdentity2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_STSClient(), module2.exports);
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_EndpointParameters = require_EndpointParameters();
+    var import_smithy_client4 = require_dist_cjs33();
+    var _STSServiceException = class _STSServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _STSServiceException2.prototype);
+      }
+    };
+    __name2(_STSServiceException, "STSServiceException");
+    var STSServiceException = _STSServiceException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _MalformedPolicyDocumentException = class _MalformedPolicyDocumentException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MalformedPolicyDocumentException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MalformedPolicyDocumentException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MalformedPolicyDocumentException2.prototype);
+      }
+    };
+    __name2(_MalformedPolicyDocumentException, "MalformedPolicyDocumentException");
+    var MalformedPolicyDocumentException = _MalformedPolicyDocumentException;
+    var _PackedPolicyTooLargeException = class _PackedPolicyTooLargeException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "PackedPolicyTooLargeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "PackedPolicyTooLargeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _PackedPolicyTooLargeException2.prototype);
+      }
+    };
+    __name2(_PackedPolicyTooLargeException, "PackedPolicyTooLargeException");
+    var PackedPolicyTooLargeException = _PackedPolicyTooLargeException;
+    var _RegionDisabledException = class _RegionDisabledException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "RegionDisabledException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "RegionDisabledException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _RegionDisabledException2.prototype);
+      }
+    };
+    __name2(_RegionDisabledException, "RegionDisabledException");
+    var RegionDisabledException = _RegionDisabledException;
+    var _IDPRejectedClaimException = class _IDPRejectedClaimException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPRejectedClaimException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPRejectedClaimException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPRejectedClaimException2.prototype);
+      }
+    };
+    __name2(_IDPRejectedClaimException, "IDPRejectedClaimException");
+    var IDPRejectedClaimException = _IDPRejectedClaimException;
+    var _InvalidIdentityTokenException = class _InvalidIdentityTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidIdentityTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidIdentityTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidIdentityTokenException2.prototype);
+      }
+    };
+    __name2(_InvalidIdentityTokenException, "InvalidIdentityTokenException");
+    var InvalidIdentityTokenException = _InvalidIdentityTokenException;
+    var _IDPCommunicationErrorException = class _IDPCommunicationErrorException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPCommunicationErrorException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPCommunicationErrorException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPCommunicationErrorException2.prototype);
+      }
+    };
+    __name2(_IDPCommunicationErrorException, "IDPCommunicationErrorException");
+    var IDPCommunicationErrorException = _IDPCommunicationErrorException;
+    var _InvalidAuthorizationMessageException = class _InvalidAuthorizationMessageException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidAuthorizationMessageException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidAuthorizationMessageException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidAuthorizationMessageException2.prototype);
+      }
+    };
+    __name2(_InvalidAuthorizationMessageException, "InvalidAuthorizationMessageException");
+    var InvalidAuthorizationMessageException = _InvalidAuthorizationMessageException;
+    var CredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SecretAccessKey && { SecretAccessKey: import_smithy_client4.SENSITIVE_STRING }
+    }), "CredentialsFilterSensitiveLog");
+    var AssumeRoleResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleResponseFilterSensitiveLog");
+    var AssumeRoleWithSAMLRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SAMLAssertion && { SAMLAssertion: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithSAMLRequestFilterSensitiveLog");
+    var AssumeRoleWithSAMLResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithSAMLResponseFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.WebIdentityToken && { WebIdentityToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithWebIdentityRequestFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithWebIdentityResponseFilterSensitiveLog");
+    var GetFederationTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetFederationTokenResponseFilterSensitiveLog");
+    var GetSessionTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetSessionTokenResponseFilterSensitiveLog");
+    var import_core4 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_protocol_http8 = require_dist_cjs2();
+    var se_AssumeRoleCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleRequest(input, context),
+        [_A]: _AR,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleCommand");
+    var se_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithSAMLRequest(input, context),
+        [_A]: _ARWSAML,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithSAMLCommand");
+    var se_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithWebIdentityRequest(input, context),
+        [_A]: _ARWWI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithWebIdentityCommand");
+    var se_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_DecodeAuthorizationMessageRequest(input, context),
+        [_A]: _DAM,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DecodeAuthorizationMessageCommand");
+    var se_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetAccessKeyInfoRequest(input, context),
+        [_A]: _GAKI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetAccessKeyInfoCommand");
+    var se_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetCallerIdentityRequest(input, context),
+        [_A]: _GCI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetCallerIdentityCommand");
+    var se_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetFederationTokenRequest(input, context),
+        [_A]: _GFT,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetFederationTokenCommand");
+    var se_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetSessionTokenRequest(input, context),
+        [_A]: _GST,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetSessionTokenCommand");
+    var de_AssumeRoleCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleResponse(data.AssumeRoleResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleCommand");
+    var de_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithSAMLCommand");
+    var de_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithWebIdentityCommand");
+    var de_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_DecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DecodeAuthorizationMessageCommand");
+    var de_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetAccessKeyInfoCommand");
+    var de_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetCallerIdentityResponse(data.GetCallerIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetCallerIdentityCommand");
+    var de_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetFederationTokenResponse(data.GetFederationTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetFederationTokenCommand");
+    var de_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetSessionTokenResponse(data.GetSessionTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetSessionTokenCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core4.parseXmlErrorBody)(output.body, context)
+      };
+      const errorCode = loadQueryErrorCode(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ExpiredTokenException":
+        case "com.amazonaws.sts#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "MalformedPolicyDocument":
+        case "com.amazonaws.sts#MalformedPolicyDocumentException":
+          throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context);
+        case "PackedPolicyTooLarge":
+        case "com.amazonaws.sts#PackedPolicyTooLargeException":
+          throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context);
+        case "RegionDisabledException":
+        case "com.amazonaws.sts#RegionDisabledException":
+          throw await de_RegionDisabledExceptionRes(parsedOutput, context);
+        case "IDPRejectedClaim":
+        case "com.amazonaws.sts#IDPRejectedClaimException":
+          throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context);
+        case "InvalidIdentityToken":
+        case "com.amazonaws.sts#InvalidIdentityTokenException":
+          throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context);
+        case "IDPCommunicationError":
+        case "com.amazonaws.sts#IDPCommunicationErrorException":
+          throw await de_IDPCommunicationErrorExceptionRes(parsedOutput, context);
+        case "InvalidAuthorizationMessageException":
+        case "com.amazonaws.sts#InvalidAuthorizationMessageException":
+          throw await de_InvalidAuthorizationMessageExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody: parsedBody.Error,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_ExpiredTokenException(body.Error, context);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_IDPCommunicationErrorExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPCommunicationErrorException(body.Error, context);
+      const exception = new IDPCommunicationErrorException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPCommunicationErrorExceptionRes");
+    var de_IDPRejectedClaimExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPRejectedClaimException(body.Error, context);
+      const exception = new IDPRejectedClaimException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPRejectedClaimExceptionRes");
+    var de_InvalidAuthorizationMessageExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidAuthorizationMessageException(body.Error, context);
+      const exception = new InvalidAuthorizationMessageException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidAuthorizationMessageExceptionRes");
+    var de_InvalidIdentityTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidIdentityTokenException(body.Error, context);
+      const exception = new InvalidIdentityTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidIdentityTokenExceptionRes");
+    var de_MalformedPolicyDocumentExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_MalformedPolicyDocumentException(body.Error, context);
+      const exception = new MalformedPolicyDocumentException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MalformedPolicyDocumentExceptionRes");
+    var de_PackedPolicyTooLargeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_PackedPolicyTooLargeException(body.Error, context);
+      const exception = new PackedPolicyTooLargeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_PackedPolicyTooLargeExceptionRes");
+    var de_RegionDisabledExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_RegionDisabledException(body.Error, context);
+      const exception = new RegionDisabledException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_RegionDisabledExceptionRes");
+    var se_AssumeRoleRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b, _c, _d;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_TTK] != null) {
+        const memberEntries = se_tagKeyListType(input[_TTK], context);
+        if (((_c = input[_TTK]) == null ? void 0 : _c.length) === 0) {
+          entries.TransitiveTagKeys = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `TransitiveTagKeys.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_EI] != null) {
+        entries[_EI] = input[_EI];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      if (input[_SI] != null) {
+        entries[_SI] = input[_SI];
+      }
+      if (input[_PC] != null) {
+        const memberEntries = se_ProvidedContextsListType(input[_PC], context);
+        if (((_d = input[_PC]) == null ? void 0 : _d.length) === 0) {
+          entries.ProvidedContexts = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `ProvidedContexts.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_AssumeRoleRequest");
+    var se_AssumeRoleWithSAMLRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_PAr] != null) {
+        entries[_PAr] = input[_PAr];
+      }
+      if (input[_SAMLA] != null) {
+        entries[_SAMLA] = input[_SAMLA];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithSAMLRequest");
+    var se_AssumeRoleWithWebIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_WIT] != null) {
+        entries[_WIT] = input[_WIT];
+      }
+      if (input[_PI] != null) {
+        entries[_PI] = input[_PI];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithWebIdentityRequest");
+    var se_DecodeAuthorizationMessageRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_EM] != null) {
+        entries[_EM] = input[_EM];
+      }
+      return entries;
+    }, "se_DecodeAuthorizationMessageRequest");
+    var se_GetAccessKeyInfoRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_AKI] != null) {
+        entries[_AKI] = input[_AKI];
+      }
+      return entries;
+    }, "se_GetAccessKeyInfoRequest");
+    var se_GetCallerIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      return entries;
+    }, "se_GetCallerIdentityRequest");
+    var se_GetFederationTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b;
+      const entries = {};
+      if (input[_N] != null) {
+        entries[_N] = input[_N];
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_GetFederationTokenRequest");
+    var se_GetSessionTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      return entries;
+    }, "se_GetSessionTokenRequest");
+    var se_policyDescriptorListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_PolicyDescriptorType(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_policyDescriptorListType");
+    var se_PolicyDescriptorType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_a7] != null) {
+        entries[_a7] = input[_a7];
+      }
+      return entries;
+    }, "se_PolicyDescriptorType");
+    var se_ProvidedContext = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_PAro] != null) {
+        entries[_PAro] = input[_PAro];
+      }
+      if (input[_CA] != null) {
+        entries[_CA] = input[_CA];
+      }
+      return entries;
+    }, "se_ProvidedContext");
+    var se_ProvidedContextsListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_ProvidedContext(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_ProvidedContextsListType");
+    var se_Tag = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_K] != null) {
+        entries[_K] = input[_K];
+      }
+      if (input[_Va] != null) {
+        entries[_Va] = input[_Va];
+      }
+      return entries;
+    }, "se_Tag");
+    var se_tagKeyListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        entries[`member.${counter}`] = entry;
+        counter++;
+      }
+      return entries;
+    }, "se_tagKeyListType");
+    var se_tagListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_Tag(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_tagListType");
+    var de_AssumedRoleUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_ARI] != null) {
+        contents[_ARI] = (0, import_smithy_client4.expectString)(output[_ARI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_AssumedRoleUser");
+    var de_AssumeRoleResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleResponse");
+    var de_AssumeRoleWithSAMLResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_S] != null) {
+        contents[_S] = (0, import_smithy_client4.expectString)(output[_S]);
+      }
+      if (output[_ST] != null) {
+        contents[_ST] = (0, import_smithy_client4.expectString)(output[_ST]);
+      }
+      if (output[_I] != null) {
+        contents[_I] = (0, import_smithy_client4.expectString)(output[_I]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_NQ] != null) {
+        contents[_NQ] = (0, import_smithy_client4.expectString)(output[_NQ]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithSAMLResponse");
+    var de_AssumeRoleWithWebIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_SFWIT] != null) {
+        contents[_SFWIT] = (0, import_smithy_client4.expectString)(output[_SFWIT]);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_Pr] != null) {
+        contents[_Pr] = (0, import_smithy_client4.expectString)(output[_Pr]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithWebIdentityResponse");
+    var de_Credentials = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_AKI] != null) {
+        contents[_AKI] = (0, import_smithy_client4.expectString)(output[_AKI]);
+      }
+      if (output[_SAK] != null) {
+        contents[_SAK] = (0, import_smithy_client4.expectString)(output[_SAK]);
+      }
+      if (output[_STe] != null) {
+        contents[_STe] = (0, import_smithy_client4.expectString)(output[_STe]);
+      }
+      if (output[_E] != null) {
+        contents[_E] = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseRfc3339DateTimeWithOffset)(output[_E]));
+      }
+      return contents;
+    }, "de_Credentials");
+    var de_DecodeAuthorizationMessageResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_DM] != null) {
+        contents[_DM] = (0, import_smithy_client4.expectString)(output[_DM]);
+      }
+      return contents;
+    }, "de_DecodeAuthorizationMessageResponse");
+    var de_ExpiredTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_ExpiredTokenException");
+    var de_FederatedUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_FUI] != null) {
+        contents[_FUI] = (0, import_smithy_client4.expectString)(output[_FUI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_FederatedUser");
+    var de_GetAccessKeyInfoResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      return contents;
+    }, "de_GetAccessKeyInfoResponse");
+    var de_GetCallerIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_UI] != null) {
+        contents[_UI] = (0, import_smithy_client4.expectString)(output[_UI]);
+      }
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_GetCallerIdentityResponse");
+    var de_GetFederationTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_FU] != null) {
+        contents[_FU] = de_FederatedUser(output[_FU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      return contents;
+    }, "de_GetFederationTokenResponse");
+    var de_GetSessionTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      return contents;
+    }, "de_GetSessionTokenResponse");
+    var de_IDPCommunicationErrorException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPCommunicationErrorException");
+    var de_IDPRejectedClaimException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPRejectedClaimException");
+    var de_InvalidAuthorizationMessageException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidAuthorizationMessageException");
+    var de_InvalidIdentityTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidIdentityTokenException");
+    var de_MalformedPolicyDocumentException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_MalformedPolicyDocumentException");
+    var de_PackedPolicyTooLargeException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_PackedPolicyTooLargeException");
+    var de_RegionDisabledException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_RegionDisabledException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(STSServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    var SHARED_HEADERS = {
+      "content-type": "application/x-www-form-urlencoded"
+    };
+    var _ = "2011-06-15";
+    var _A = "Action";
+    var _AKI = "AccessKeyId";
+    var _AR = "AssumeRole";
+    var _ARI = "AssumedRoleId";
+    var _ARU = "AssumedRoleUser";
+    var _ARWSAML = "AssumeRoleWithSAML";
+    var _ARWWI = "AssumeRoleWithWebIdentity";
+    var _Ac = "Account";
+    var _Ar = "Arn";
+    var _Au = "Audience";
+    var _C = "Credentials";
+    var _CA = "ContextAssertion";
+    var _DAM = "DecodeAuthorizationMessage";
+    var _DM = "DecodedMessage";
+    var _DS = "DurationSeconds";
+    var _E = "Expiration";
+    var _EI = "ExternalId";
+    var _EM = "EncodedMessage";
+    var _FU = "FederatedUser";
+    var _FUI = "FederatedUserId";
+    var _GAKI = "GetAccessKeyInfo";
+    var _GCI = "GetCallerIdentity";
+    var _GFT = "GetFederationToken";
+    var _GST = "GetSessionToken";
+    var _I = "Issuer";
+    var _K = "Key";
+    var _N = "Name";
+    var _NQ = "NameQualifier";
+    var _P = "Policy";
+    var _PA = "PolicyArns";
+    var _PAr = "PrincipalArn";
+    var _PAro = "ProviderArn";
+    var _PC = "ProvidedContexts";
+    var _PI = "ProviderId";
+    var _PPS = "PackedPolicySize";
+    var _Pr = "Provider";
+    var _RA = "RoleArn";
+    var _RSN = "RoleSessionName";
+    var _S = "Subject";
+    var _SAK = "SecretAccessKey";
+    var _SAMLA = "SAMLAssertion";
+    var _SFWIT = "SubjectFromWebIdentityToken";
+    var _SI = "SourceIdentity";
+    var _SN = "SerialNumber";
+    var _ST = "SubjectType";
+    var _STe = "SessionToken";
+    var _T = "Tags";
+    var _TC = "TokenCode";
+    var _TTK = "TransitiveTagKeys";
+    var _UI = "UserId";
+    var _V = "Version";
+    var _Va = "Value";
+    var _WIT = "WebIdentityToken";
+    var _a7 = "arn";
+    var _m = "message";
+    var buildFormUrlencodedString = /* @__PURE__ */ __name2((formEntries) => Object.entries(formEntries).map(([key, value]) => (0, import_smithy_client4.extendedEncodeURIComponent)(key) + "=" + (0, import_smithy_client4.extendedEncodeURIComponent)(value)).join("&"), "buildFormUrlencodedString");
+    var loadQueryErrorCode = /* @__PURE__ */ __name2((output, data) => {
+      var _a22;
+      if (((_a22 = data.Error) == null ? void 0 : _a22.Code) !== void 0) {
+        return data.Error.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    }, "loadQueryErrorCode");
+    var _AssumeRoleCommand = class _AssumeRoleCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRole", {}).n("STSClient", "AssumeRoleCommand").f(void 0, AssumeRoleResponseFilterSensitiveLog).ser(se_AssumeRoleCommand).de(de_AssumeRoleCommand).build() {
+    };
+    __name2(_AssumeRoleCommand, "AssumeRoleCommand");
+    var AssumeRoleCommand = _AssumeRoleCommand;
+    var import_EndpointParameters2 = require_EndpointParameters();
+    var _AssumeRoleWithSAMLCommand = class _AssumeRoleWithSAMLCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters2.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithSAML", {}).n("STSClient", "AssumeRoleWithSAMLCommand").f(AssumeRoleWithSAMLRequestFilterSensitiveLog, AssumeRoleWithSAMLResponseFilterSensitiveLog).ser(se_AssumeRoleWithSAMLCommand).de(de_AssumeRoleWithSAMLCommand).build() {
+    };
+    __name2(_AssumeRoleWithSAMLCommand, "AssumeRoleWithSAMLCommand");
+    var AssumeRoleWithSAMLCommand = _AssumeRoleWithSAMLCommand;
+    var import_EndpointParameters3 = require_EndpointParameters();
+    var _AssumeRoleWithWebIdentityCommand = class _AssumeRoleWithWebIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters3.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithWebIdentity", {}).n("STSClient", "AssumeRoleWithWebIdentityCommand").f(AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog).ser(se_AssumeRoleWithWebIdentityCommand).de(de_AssumeRoleWithWebIdentityCommand).build() {
+    };
+    __name2(_AssumeRoleWithWebIdentityCommand, "AssumeRoleWithWebIdentityCommand");
+    var AssumeRoleWithWebIdentityCommand = _AssumeRoleWithWebIdentityCommand;
+    var import_EndpointParameters4 = require_EndpointParameters();
+    var _DecodeAuthorizationMessageCommand = class _DecodeAuthorizationMessageCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters4.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "DecodeAuthorizationMessage", {}).n("STSClient", "DecodeAuthorizationMessageCommand").f(void 0, void 0).ser(se_DecodeAuthorizationMessageCommand).de(de_DecodeAuthorizationMessageCommand).build() {
+    };
+    __name2(_DecodeAuthorizationMessageCommand, "DecodeAuthorizationMessageCommand");
+    var DecodeAuthorizationMessageCommand = _DecodeAuthorizationMessageCommand;
+    var import_EndpointParameters5 = require_EndpointParameters();
+    var _GetAccessKeyInfoCommand = class _GetAccessKeyInfoCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters5.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetAccessKeyInfo", {}).n("STSClient", "GetAccessKeyInfoCommand").f(void 0, void 0).ser(se_GetAccessKeyInfoCommand).de(de_GetAccessKeyInfoCommand).build() {
+    };
+    __name2(_GetAccessKeyInfoCommand, "GetAccessKeyInfoCommand");
+    var GetAccessKeyInfoCommand = _GetAccessKeyInfoCommand;
+    var import_EndpointParameters6 = require_EndpointParameters();
+    var _GetCallerIdentityCommand = class _GetCallerIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters6.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetCallerIdentity", {}).n("STSClient", "GetCallerIdentityCommand").f(void 0, void 0).ser(se_GetCallerIdentityCommand).de(de_GetCallerIdentityCommand).build() {
+    };
+    __name2(_GetCallerIdentityCommand, "GetCallerIdentityCommand");
+    var GetCallerIdentityCommand = _GetCallerIdentityCommand;
+    var import_EndpointParameters7 = require_EndpointParameters();
+    var _GetFederationTokenCommand = class _GetFederationTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters7.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetFederationToken", {}).n("STSClient", "GetFederationTokenCommand").f(void 0, GetFederationTokenResponseFilterSensitiveLog).ser(se_GetFederationTokenCommand).de(de_GetFederationTokenCommand).build() {
+    };
+    __name2(_GetFederationTokenCommand, "GetFederationTokenCommand");
+    var GetFederationTokenCommand = _GetFederationTokenCommand;
+    var import_EndpointParameters8 = require_EndpointParameters();
+    var _GetSessionTokenCommand = class _GetSessionTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters8.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetSessionToken", {}).n("STSClient", "GetSessionTokenCommand").f(void 0, GetSessionTokenResponseFilterSensitiveLog).ser(se_GetSessionTokenCommand).de(de_GetSessionTokenCommand).build() {
+    };
+    __name2(_GetSessionTokenCommand, "GetSessionTokenCommand");
+    var GetSessionTokenCommand = _GetSessionTokenCommand;
+    var import_STSClient = require_STSClient();
+    var commands = {
+      AssumeRoleCommand,
+      AssumeRoleWithSAMLCommand,
+      AssumeRoleWithWebIdentityCommand,
+      DecodeAuthorizationMessageCommand,
+      GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand,
+      GetFederationTokenCommand,
+      GetSessionTokenCommand
+    };
+    var _STS = class _STS extends import_STSClient.STSClient {
+    };
+    __name2(_STS, "STS");
+    var STS = _STS;
+    (0, import_smithy_client4.createAggregatedClient)(commands, STS);
+    var import_EndpointParameters9 = require_EndpointParameters();
+    var ASSUME_ROLE_DEFAULT_REGION = "us-east-1";
+    var getAccountIdFromAssumedRoleUser = /* @__PURE__ */ __name2((assumedRoleUser) => {
+      if (typeof (assumedRoleUser == null ? void 0 : assumedRoleUser.Arn) === "string") {
+        const arnComponents = assumedRoleUser.Arn.split(":");
+        if (arnComponents.length > 4 && arnComponents[4] !== "") {
+          return arnComponents[4];
+        }
+      }
+      return void 0;
+    }, "getAccountIdFromAssumedRoleUser");
+    var resolveRegion = /* @__PURE__ */ __name2(async (_region, _parentRegion, credentialProviderLogger) => {
+      var _a22;
+      const region = typeof _region === "function" ? await _region() : _region;
+      const parentRegion = typeof _parentRegion === "function" ? await _parentRegion() : _parentRegion;
+      (_a22 = credentialProviderLogger == null ? void 0 : credentialProviderLogger.debug) == null ? void 0 : _a22.call(
+        credentialProviderLogger,
+        "@aws-sdk/client-sts::resolveRegion",
+        "accepting first of:",
+        `${region} (provider)`,
+        `${parentRegion} (parent client)`,
+        `${ASSUME_ROLE_DEFAULT_REGION} (STS default)`
+      );
+      return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION;
+    }, "resolveRegion");
+    var getDefaultRoleAssumer = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      let closureSourceCreds;
+      return async (sourceCreds, params) => {
+        var _a22, _b, _c;
+        closureSourceCreds = sourceCreds;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            // A hack to make sts client uses the credential in current closure.
+            credentialDefaultProvider: () => async () => closureSourceCreds,
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      return async (params) => {
+        var _a22, _b, _c;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleWithWebIdentityCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumerWithWebIdentity");
+    var isH2 = /* @__PURE__ */ __name2((requestHandler) => {
+      var _a22;
+      return ((_a22 = requestHandler == null ? void 0 : requestHandler.metadata) == null ? void 0 : _a22.handlerProtocol) === "h2";
+    }, "isH2");
+    var import_STSClient2 = require_STSClient();
+    var getCustomizableStsClientCtor = /* @__PURE__ */ __name2((baseCtor, customizations) => {
+      var _a22;
+      if (!customizations)
+        return baseCtor;
+      else
+        return _a22 = class extends baseCtor {
+          constructor(config) {
+            super(config);
+            for (const customization of customizations) {
+              this.middlewareStack.use(customization);
+            }
+          }
+        }, __name2(_a22, "CustomizableSTSClient"), _a22;
+    }, "getCustomizableStsClientCtor");
+    var getDefaultRoleAssumer2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumer(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumerWithWebIdentity(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumerWithWebIdentity");
+    var decorateDefaultCredentialProvider = /* @__PURE__ */ __name2((provider) => (input) => provider({
+      roleAssumer: getDefaultRoleAssumer2(input),
+      roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity2(input),
+      ...input
+    }), "decorateDefaultCredentialProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js
+var require_dist_cjs49 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromProcess: () => fromProcess
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_child_process3 = require("child_process");
+    var import_util7 = require("util");
+    var getValidatedProcessCredentials = /* @__PURE__ */ __name2((profileName, data, profiles) => {
+      var _a7;
+      if (data.Version !== 1) {
+        throw Error(`Profile ${profileName} credential_process did not return Version 1.`);
+      }
+      if (data.AccessKeyId === void 0 || data.SecretAccessKey === void 0) {
+        throw Error(`Profile ${profileName} credential_process returned invalid credentials.`);
+      }
+      if (data.Expiration) {
+        const currentTime = /* @__PURE__ */ new Date();
+        const expireTime = new Date(data.Expiration);
+        if (expireTime < currentTime) {
+          throw Error(`Profile ${profileName} credential_process returned expired credentials.`);
+        }
+      }
+      let accountId = data.AccountId;
+      if (!accountId && ((_a7 = profiles == null ? void 0 : profiles[profileName]) == null ? void 0 : _a7.aws_account_id)) {
+        accountId = profiles[profileName].aws_account_id;
+      }
+      return {
+        accessKeyId: data.AccessKeyId,
+        secretAccessKey: data.SecretAccessKey,
+        ...data.SessionToken && { sessionToken: data.SessionToken },
+        ...data.Expiration && { expiration: new Date(data.Expiration) },
+        ...data.CredentialScope && { credentialScope: data.CredentialScope },
+        ...accountId && { accountId }
+      };
+    }, "getValidatedProcessCredentials");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, logger) => {
+      const profile = profiles[profileName];
+      if (profiles[profileName]) {
+        const credentialProcess = profile["credential_process"];
+        if (credentialProcess !== void 0) {
+          const execPromise = (0, import_util7.promisify)(import_child_process3.exec);
+          try {
+            const { stdout } = await execPromise(credentialProcess);
+            let data;
+            try {
+              data = JSON.parse(stdout.trim());
+            } catch {
+              throw Error(`Profile ${profileName} credential_process returned invalid JSON.`);
+            }
+            return getValidatedProcessCredentials(profileName, data, profiles);
+          } catch (error) {
+            throw new import_property_provider2.CredentialsProviderError(error.message, { logger });
+          }
+        } else {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} did not contain credential_process.`, { logger });
+        }
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} could not be found in shared credentials file.`, {
+          logger
+        });
+      }
+    }, "resolveProcessCredentials");
+    var fromProcess = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-process - fromProcess");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProcessCredentials((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init.logger);
+    }, "fromProcess");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js
+var require_fromWebToken = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    });
+    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
+      if (mod && mod.__esModule) return mod;
+      var result = {};
+      if (mod != null) {
+        for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k);
+      }
+      __setModuleDefault2(result, mod);
+      return result;
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromWebToken = void 0;
+    var fromWebToken2 = (init) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromWebToken");
+      const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds } = init;
+      let { roleAssumerWithWebIdentity } = init;
+      if (!roleAssumerWithWebIdentity) {
+        const { getDefaultRoleAssumerWithWebIdentity } = await Promise.resolve().then(() => __importStar2(require_dist_cjs48()));
+        roleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity({
+          ...init.clientConfig,
+          credentialProviderLogger: init.logger,
+          parentClientConfig: init.parentClientConfig
+        }, init.clientPlugins);
+      }
+      return roleAssumerWithWebIdentity({
+        RoleArn: roleArn,
+        RoleSessionName: roleSessionName ?? `aws-sdk-js-session-${Date.now()}`,
+        WebIdentityToken: webIdentityToken,
+        ProviderId: providerId,
+        PolicyArns: policyArns,
+        Policy: policy,
+        DurationSeconds: durationSeconds
+      });
+    };
+    exports2.fromWebToken = fromWebToken2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js
+var require_fromTokenFile = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromTokenFile = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var fs_1 = require("fs");
+    var fromWebToken_1 = require_fromWebToken();
+    var ENV_TOKEN_FILE = "AWS_WEB_IDENTITY_TOKEN_FILE";
+    var ENV_ROLE_ARN = "AWS_ROLE_ARN";
+    var ENV_ROLE_SESSION_NAME = "AWS_ROLE_SESSION_NAME";
+    var fromTokenFile2 = (init = {}) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromTokenFile");
+      const webIdentityTokenFile = init?.webIdentityTokenFile ?? process.env[ENV_TOKEN_FILE];
+      const roleArn = init?.roleArn ?? process.env[ENV_ROLE_ARN];
+      const roleSessionName = init?.roleSessionName ?? process.env[ENV_ROLE_SESSION_NAME];
+      if (!webIdentityTokenFile || !roleArn) {
+        throw new property_provider_1.CredentialsProviderError("Web identity configuration not specified", {
+          logger: init.logger
+        });
+      }
+      return (0, fromWebToken_1.fromWebToken)({
+        ...init,
+        webIdentityToken: (0, fs_1.readFileSync)(webIdentityTokenFile, { encoding: "ascii" }),
+        roleArn,
+        roleSessionName
+      })();
+    };
+    exports2.fromTokenFile = fromTokenFile2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js
+var require_dist_cjs50 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromTokenFile(), module2.exports);
+    __reExport2(src_exports, require_fromWebToken(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js
+var require_dist_cjs51 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromIni: () => fromIni
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var resolveCredentialSource = /* @__PURE__ */ __name2((credentialSource, profileName, logger) => {
+      const sourceProvidersMap = {
+        EcsContainer: async (options) => {
+          const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+          const { fromContainerMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer");
+          return (0, import_property_provider2.chain)(fromHttp(options ?? {}), fromContainerMetadata(options));
+        },
+        Ec2InstanceMetadata: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata");
+          const { fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          return fromInstanceMetadata(options);
+        },
+        Environment: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Environment");
+          const { fromEnv } = await Promise.resolve().then(() => __toESM2(require_dist_cjs36()));
+          return fromEnv(options);
+        }
+      };
+      if (credentialSource in sourceProvidersMap) {
+        return sourceProvidersMap[credentialSource];
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Unsupported credential source in profile ${profileName}. Got ${credentialSource}, expected EcsContainer or Ec2InstanceMetadata or Environment.`,
+          { logger }
+        );
+      }
+    }, "resolveCredentialSource");
+    var isAssumeRoleProfile = /* @__PURE__ */ __name2((arg, { profile = "default", logger } = {}) => {
+      return Boolean(arg) && typeof arg === "object" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 && ["undefined", "string"].indexOf(typeof arg.external_id) > -1 && ["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 && (isAssumeRoleWithSourceProfile(arg, { profile, logger }) || isCredentialSourceProfile(arg, { profile, logger }));
+    }, "isAssumeRoleProfile");
+    var isAssumeRoleWithSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withSourceProfile = typeof arg.source_profile === "string" && typeof arg.credential_source === "undefined";
+      if (withSourceProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isAssumeRoleWithSourceProfile source_profile=${arg.source_profile}`);
+      }
+      return withSourceProfile;
+    }, "isAssumeRoleWithSourceProfile");
+    var isCredentialSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withProviderProfile = typeof arg.credential_source === "string" && typeof arg.source_profile === "undefined";
+      if (withProviderProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isCredentialSourceProfile credential_source=${arg.credential_source}`);
+      }
+      return withProviderProfile;
+    }, "isCredentialSourceProfile");
+    var resolveAssumeRoleCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      var _a7, _b;
+      (_a7 = options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)");
+      const data = profiles[profileName];
+      if (!options.roleAssumer) {
+        const { getDefaultRoleAssumer } = await Promise.resolve().then(() => __toESM2(require_dist_cjs48()));
+        options.roleAssumer = getDefaultRoleAssumer(
+          {
+            ...options.clientConfig,
+            credentialProviderLogger: options.logger,
+            parentClientConfig: options == null ? void 0 : options.parentClientConfig
+          },
+          options.clientPlugins
+        );
+      }
+      const { source_profile } = data;
+      if (source_profile && source_profile in visitedProfiles) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Detected a cycle attempting to resolve credentials for profile ${(0, import_shared_ini_file_loader.getProfileName)(options)}. Profiles visited: ` + Object.keys(visitedProfiles).join(", "),
+          { logger: options.logger }
+        );
+      }
+      (_b = options.logger) == null ? void 0 : _b.debug(
+        `@aws-sdk/credential-provider-ini - finding credential resolver using ${source_profile ? `source_profile=[${source_profile}]` : `profile=[${profileName}]`}`
+      );
+      const sourceCredsProvider = source_profile ? resolveProfileData(
+        source_profile,
+        {
+          ...profiles,
+          [source_profile]: {
+            ...profiles[source_profile],
+            // This assigns the role_arn of the "root" profile
+            // to the credential_source profile so this recursive call knows
+            // what role to assume.
+            role_arn: data.role_arn ?? profiles[source_profile].role_arn
+          }
+        },
+        options,
+        {
+          ...visitedProfiles,
+          [source_profile]: true
+        }
+      ) : (await resolveCredentialSource(data.credential_source, profileName, options.logger)(options))();
+      const params = {
+        RoleArn: data.role_arn,
+        RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`,
+        ExternalId: data.external_id,
+        DurationSeconds: parseInt(data.duration_seconds || "3600", 10)
+      };
+      const { mfa_serial } = data;
+      if (mfa_serial) {
+        if (!options.mfaCodeProvider) {
+          throw new import_property_provider2.CredentialsProviderError(
+            `Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`,
+            { logger: options.logger, tryNextLink: false }
+          );
+        }
+        params.SerialNumber = mfa_serial;
+        params.TokenCode = await options.mfaCodeProvider(mfa_serial);
+      }
+      const sourceCreds = await sourceCredsProvider;
+      return options.roleAssumer(sourceCreds, params);
+    }, "resolveAssumeRoleCredentials");
+    var isProcessProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string", "isProcessProfile");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (options, profile) => Promise.resolve().then(() => __toESM2(require_dist_cjs49())).then(
+      ({ fromProcess }) => fromProcess({
+        ...options,
+        profile
+      })()
+    ), "resolveProcessCredentials");
+    var resolveSsoCredentials = /* @__PURE__ */ __name2(async (profile, options = {}) => {
+      const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+      return fromSSO({
+        profile,
+        logger: options.logger
+      })();
+    }, "resolveSsoCredentials");
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var isStaticCredsProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.aws_access_key_id === "string" && typeof arg.aws_secret_access_key === "string" && ["undefined", "string"].indexOf(typeof arg.aws_session_token) > -1 && ["undefined", "string"].indexOf(typeof arg.aws_account_id) > -1, "isStaticCredsProfile");
+    var resolveStaticCredentials = /* @__PURE__ */ __name2((profile, options) => {
+      var _a7;
+      (_a7 = options == null ? void 0 : options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveStaticCredentials");
+      return Promise.resolve({
+        accessKeyId: profile.aws_access_key_id,
+        secretAccessKey: profile.aws_secret_access_key,
+        sessionToken: profile.aws_session_token,
+        ...profile.aws_credential_scope && { credentialScope: profile.aws_credential_scope },
+        ...profile.aws_account_id && { accountId: profile.aws_account_id }
+      });
+    }, "resolveStaticCredentials");
+    var isWebIdentityProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1, "isWebIdentityProfile");
+    var resolveWebIdentityCredentials = /* @__PURE__ */ __name2(async (profile, options) => Promise.resolve().then(() => __toESM2(require_dist_cjs50())).then(
+      ({ fromTokenFile: fromTokenFile2 }) => fromTokenFile2({
+        webIdentityTokenFile: profile.web_identity_token_file,
+        roleArn: profile.role_arn,
+        roleSessionName: profile.role_session_name,
+        roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,
+        logger: options.logger,
+        parentClientConfig: options.parentClientConfig
+      })()
+    ), "resolveWebIdentityCredentials");
+    var resolveProfileData = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      const data = profiles[profileName];
+      if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {
+        return resolveAssumeRoleCredentials(profileName, profiles, options, visitedProfiles);
+      }
+      if (isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isWebIdentityProfile(data)) {
+        return resolveWebIdentityCredentials(data, options);
+      }
+      if (isProcessProfile(data)) {
+        return resolveProcessCredentials(options, profileName);
+      }
+      if (isSsoProfile(data)) {
+        return await resolveSsoCredentials(profileName, options);
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`,
+        { logger: options.logger }
+      );
+    }, "resolveProfileData");
+    var fromIni = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - fromIni");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProfileData((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init);
+    }, "fromIni");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js
+var require_dist_cjs52 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      credentialsTreatedAsExpired: () => credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh: () => credentialsWillNeedRefresh,
+      defaultProvider: () => defaultProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_credential_provider_env = require_dist_cjs36();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var remoteProvider = /* @__PURE__ */ __name2(async (init) => {
+      var _a7, _b;
+      const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+      if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {
+        (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");
+        const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+        return (0, import_property_provider2.chain)(fromHttp(init), fromContainerMetadata(init));
+      }
+      if (process.env[ENV_IMDS_DISABLED]) {
+        return async () => {
+          throw new import_property_provider2.CredentialsProviderError("EC2 Instance Metadata Service access disabled", { logger: init.logger });
+        };
+      }
+      (_b = init.logger) == null ? void 0 : _b.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata");
+      return fromInstanceMetadata(init);
+    }, "remoteProvider");
+    var multipleCredentialSourceWarningEmitted = false;
+    var defaultProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        async () => {
+          var _a7, _b, _c, _d;
+          const profile = init.profile ?? process.env[import_shared_ini_file_loader.ENV_PROFILE];
+          if (profile) {
+            const envStaticCredentialsAreSet = process.env[import_credential_provider_env.ENV_KEY] && process.env[import_credential_provider_env.ENV_SECRET];
+            if (envStaticCredentialsAreSet) {
+              if (!multipleCredentialSourceWarningEmitted) {
+                const warnFn = ((_a7 = init.logger) == null ? void 0 : _a7.warn) && ((_c = (_b = init.logger) == null ? void 0 : _b.constructor) == null ? void 0 : _c.name) !== "NoOpLogger" ? init.logger.warn : console.warn;
+                warnFn(
+                  `@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:
+    Multiple credential sources detected: 
+    Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.
+    This SDK will proceed with the AWS_PROFILE value.
+    
+    However, a future version may change this behavior to prefer the ENV static credentials.
+    Please ensure that your environment only sets either the AWS_PROFILE or the
+    AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
+`
+                );
+                multipleCredentialSourceWarningEmitted = true;
+              }
+            }
+            throw new import_property_provider2.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.", {
+              logger: init.logger,
+              tryNextLink: true
+            });
+          }
+          (_d = init.logger) == null ? void 0 : _d.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv");
+          return (0, import_credential_provider_env.fromEnv)(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");
+          const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+          if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+            throw new import_property_provider2.CredentialsProviderError(
+              "Skipping SSO provider in default chain (inputs do not include SSO fields).",
+              { logger: init.logger }
+            );
+          }
+          const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+          return fromSSO(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");
+          const { fromIni } = await Promise.resolve().then(() => __toESM2(require_dist_cjs51()));
+          return fromIni(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");
+          const { fromProcess } = await Promise.resolve().then(() => __toESM2(require_dist_cjs49()));
+          return fromProcess(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");
+          const { fromTokenFile: fromTokenFile2 } = await Promise.resolve().then(() => __toESM2(require_dist_cjs50()));
+          return fromTokenFile2(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider");
+          return (await remoteProvider(init))();
+        },
+        async () => {
+          throw new import_property_provider2.CredentialsProviderError("Could not load credentials from any providers", {
+            tryNextLink: false,
+            logger: init.logger
+          });
+        }
+      ),
+      credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh
+    ), "defaultProvider");
+    var credentialsWillNeedRefresh = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0, "credentialsWillNeedRefresh");
+    var credentialsTreatedAsExpired = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5, "credentialsTreatedAsExpired");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js
+var require_ruleset4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var t = "required";
+    var u = "fn";
+    var v = "argv";
+    var w = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = { [t]: false, "type": "String" };
+    var i = { [t]: true, "default": false, "type": "Boolean" };
+    var j = { [w]: "Endpoint" };
+    var k = { [u]: c, [v]: [{ [w]: "UseFIPS" }, true] };
+    var l = { [u]: c, [v]: [{ [w]: "UseDualStack" }, true] };
+    var m = {};
+    var n = { [w]: "Region" };
+    var o = { [u]: "getAttr", [v]: [{ [w]: g }, "supportsFIPS"] };
+    var p = { [u]: c, [v]: [true, { [u]: "getAttr", [v]: [{ [w]: g }, "supportsDualStack"] }] };
+    var q = [k];
+    var r = [l];
+    var s = [n];
+    var _data = { version: "1.0", parameters: { Region: h, UseDualStack: i, UseFIPS: i, Endpoint: h }, rules: [{ conditions: [{ [u]: b, [v]: [j] }], rules: [{ conditions: q, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: r, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: j, properties: m, headers: m }, type: e }], type: f }, { conditions: [{ [u]: b, [v]: s }], rules: [{ conditions: [{ [u]: "aws.partition", [v]: s, assign: g }], rules: [{ conditions: [k, l], rules: [{ conditions: [{ [u]: c, [v]: [a, o] }, p], rules: [{ endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: q, rules: [{ conditions: [{ [u]: c, [v]: [o, a] }], rules: [{ conditions: [{ [u]: "stringEquals", [v]: [n, "us-gov-west-1"] }], endpoint: { url: "https://states.us-gov-west-1.amazonaws.com", properties: m, headers: m }, type: e }, { endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: r, rules: [{ conditions: [p], rules: [{ endpoint: { url: "https://states.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://states.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset4();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider();
+    var endpointResolver_1 = require_endpointResolver4();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2016-11-23",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSFNHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SFN",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js
+var require_runtimeConfig4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared4();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js
+var require_dist_cjs53 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ActivityAlreadyExists: () => ActivityAlreadyExists,
+      ActivityDoesNotExist: () => ActivityDoesNotExist,
+      ActivityFailedEventDetailsFilterSensitiveLog: () => ActivityFailedEventDetailsFilterSensitiveLog,
+      ActivityLimitExceeded: () => ActivityLimitExceeded,
+      ActivityScheduleFailedEventDetailsFilterSensitiveLog: () => ActivityScheduleFailedEventDetailsFilterSensitiveLog,
+      ActivityScheduledEventDetailsFilterSensitiveLog: () => ActivityScheduledEventDetailsFilterSensitiveLog,
+      ActivitySucceededEventDetailsFilterSensitiveLog: () => ActivitySucceededEventDetailsFilterSensitiveLog,
+      ActivityTimedOutEventDetailsFilterSensitiveLog: () => ActivityTimedOutEventDetailsFilterSensitiveLog,
+      ActivityWorkerLimitExceeded: () => ActivityWorkerLimitExceeded,
+      ConflictException: () => ConflictException,
+      CreateActivityCommand: () => CreateActivityCommand,
+      CreateStateMachineAliasCommand: () => CreateStateMachineAliasCommand,
+      CreateStateMachineAliasInputFilterSensitiveLog: () => CreateStateMachineAliasInputFilterSensitiveLog,
+      CreateStateMachineCommand: () => CreateStateMachineCommand,
+      CreateStateMachineInputFilterSensitiveLog: () => CreateStateMachineInputFilterSensitiveLog,
+      DeleteActivityCommand: () => DeleteActivityCommand,
+      DeleteStateMachineAliasCommand: () => DeleteStateMachineAliasCommand,
+      DeleteStateMachineCommand: () => DeleteStateMachineCommand,
+      DeleteStateMachineVersionCommand: () => DeleteStateMachineVersionCommand,
+      DescribeActivityCommand: () => DescribeActivityCommand,
+      DescribeExecutionCommand: () => DescribeExecutionCommand,
+      DescribeExecutionOutputFilterSensitiveLog: () => DescribeExecutionOutputFilterSensitiveLog,
+      DescribeMapRunCommand: () => DescribeMapRunCommand,
+      DescribeStateMachineAliasCommand: () => DescribeStateMachineAliasCommand,
+      DescribeStateMachineAliasOutputFilterSensitiveLog: () => DescribeStateMachineAliasOutputFilterSensitiveLog,
+      DescribeStateMachineCommand: () => DescribeStateMachineCommand,
+      DescribeStateMachineForExecutionCommand: () => DescribeStateMachineForExecutionCommand,
+      DescribeStateMachineForExecutionOutputFilterSensitiveLog: () => DescribeStateMachineForExecutionOutputFilterSensitiveLog,
+      DescribeStateMachineOutputFilterSensitiveLog: () => DescribeStateMachineOutputFilterSensitiveLog,
+      EncryptionType: () => EncryptionType,
+      ExecutionAbortedEventDetailsFilterSensitiveLog: () => ExecutionAbortedEventDetailsFilterSensitiveLog,
+      ExecutionAlreadyExists: () => ExecutionAlreadyExists,
+      ExecutionDoesNotExist: () => ExecutionDoesNotExist,
+      ExecutionFailedEventDetailsFilterSensitiveLog: () => ExecutionFailedEventDetailsFilterSensitiveLog,
+      ExecutionLimitExceeded: () => ExecutionLimitExceeded,
+      ExecutionNotRedrivable: () => ExecutionNotRedrivable,
+      ExecutionRedriveFilter: () => ExecutionRedriveFilter,
+      ExecutionRedriveStatus: () => ExecutionRedriveStatus,
+      ExecutionStartedEventDetailsFilterSensitiveLog: () => ExecutionStartedEventDetailsFilterSensitiveLog,
+      ExecutionStatus: () => ExecutionStatus,
+      ExecutionSucceededEventDetailsFilterSensitiveLog: () => ExecutionSucceededEventDetailsFilterSensitiveLog,
+      ExecutionTimedOutEventDetailsFilterSensitiveLog: () => ExecutionTimedOutEventDetailsFilterSensitiveLog,
+      GetActivityTaskCommand: () => GetActivityTaskCommand,
+      GetActivityTaskOutputFilterSensitiveLog: () => GetActivityTaskOutputFilterSensitiveLog,
+      GetExecutionHistoryCommand: () => GetExecutionHistoryCommand,
+      GetExecutionHistoryOutputFilterSensitiveLog: () => GetExecutionHistoryOutputFilterSensitiveLog,
+      HistoryEventFilterSensitiveLog: () => HistoryEventFilterSensitiveLog,
+      HistoryEventType: () => HistoryEventType,
+      IncludedData: () => IncludedData,
+      InspectionDataFilterSensitiveLog: () => InspectionDataFilterSensitiveLog,
+      InspectionLevel: () => InspectionLevel,
+      InvalidArn: () => InvalidArn,
+      InvalidDefinition: () => InvalidDefinition,
+      InvalidEncryptionConfiguration: () => InvalidEncryptionConfiguration,
+      InvalidExecutionInput: () => InvalidExecutionInput,
+      InvalidLoggingConfiguration: () => InvalidLoggingConfiguration,
+      InvalidName: () => InvalidName,
+      InvalidOutput: () => InvalidOutput,
+      InvalidToken: () => InvalidToken,
+      InvalidTracingConfiguration: () => InvalidTracingConfiguration,
+      KmsAccessDeniedException: () => KmsAccessDeniedException,
+      KmsInvalidStateException: () => KmsInvalidStateException,
+      KmsKeyState: () => KmsKeyState,
+      KmsThrottlingException: () => KmsThrottlingException,
+      LambdaFunctionFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduledEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduledEventDetailsFilterSensitiveLog,
+      LambdaFunctionStartFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionStartFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionSucceededEventDetailsFilterSensitiveLog: () => LambdaFunctionSucceededEventDetailsFilterSensitiveLog,
+      LambdaFunctionTimedOutEventDetailsFilterSensitiveLog: () => LambdaFunctionTimedOutEventDetailsFilterSensitiveLog,
+      ListActivitiesCommand: () => ListActivitiesCommand,
+      ListExecutionsCommand: () => ListExecutionsCommand,
+      ListMapRunsCommand: () => ListMapRunsCommand,
+      ListStateMachineAliasesCommand: () => ListStateMachineAliasesCommand,
+      ListStateMachineVersionsCommand: () => ListStateMachineVersionsCommand,
+      ListStateMachinesCommand: () => ListStateMachinesCommand,
+      ListTagsForResourceCommand: () => ListTagsForResourceCommand,
+      LogLevel: () => LogLevel,
+      MapRunFailedEventDetailsFilterSensitiveLog: () => MapRunFailedEventDetailsFilterSensitiveLog,
+      MapRunStatus: () => MapRunStatus,
+      MissingRequiredParameter: () => MissingRequiredParameter,
+      PublishStateMachineVersionCommand: () => PublishStateMachineVersionCommand,
+      PublishStateMachineVersionInputFilterSensitiveLog: () => PublishStateMachineVersionInputFilterSensitiveLog,
+      RedriveExecutionCommand: () => RedriveExecutionCommand,
+      ResourceNotFound: () => ResourceNotFound,
+      SFN: () => SFN2,
+      SFNClient: () => SFNClient,
+      SFNServiceException: () => SFNServiceException,
+      SendTaskFailureCommand: () => SendTaskFailureCommand,
+      SendTaskFailureInputFilterSensitiveLog: () => SendTaskFailureInputFilterSensitiveLog,
+      SendTaskHeartbeatCommand: () => SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand: () => SendTaskSuccessCommand,
+      SendTaskSuccessInputFilterSensitiveLog: () => SendTaskSuccessInputFilterSensitiveLog,
+      ServiceQuotaExceededException: () => ServiceQuotaExceededException,
+      StartExecutionCommand: () => StartExecutionCommand,
+      StartExecutionInputFilterSensitiveLog: () => StartExecutionInputFilterSensitiveLog,
+      StartSyncExecutionCommand: () => StartSyncExecutionCommand,
+      StartSyncExecutionInputFilterSensitiveLog: () => StartSyncExecutionInputFilterSensitiveLog,
+      StartSyncExecutionOutputFilterSensitiveLog: () => StartSyncExecutionOutputFilterSensitiveLog,
+      StateEnteredEventDetailsFilterSensitiveLog: () => StateEnteredEventDetailsFilterSensitiveLog,
+      StateExitedEventDetailsFilterSensitiveLog: () => StateExitedEventDetailsFilterSensitiveLog,
+      StateMachineAlreadyExists: () => StateMachineAlreadyExists,
+      StateMachineDeleting: () => StateMachineDeleting,
+      StateMachineDoesNotExist: () => StateMachineDoesNotExist,
+      StateMachineLimitExceeded: () => StateMachineLimitExceeded,
+      StateMachineStatus: () => StateMachineStatus,
+      StateMachineType: () => StateMachineType,
+      StateMachineTypeNotSupported: () => StateMachineTypeNotSupported,
+      StopExecutionCommand: () => StopExecutionCommand,
+      StopExecutionInputFilterSensitiveLog: () => StopExecutionInputFilterSensitiveLog,
+      SyncExecutionStatus: () => SyncExecutionStatus,
+      TagResourceCommand: () => TagResourceCommand,
+      TaskDoesNotExist: () => TaskDoesNotExist,
+      TaskFailedEventDetailsFilterSensitiveLog: () => TaskFailedEventDetailsFilterSensitiveLog,
+      TaskScheduledEventDetailsFilterSensitiveLog: () => TaskScheduledEventDetailsFilterSensitiveLog,
+      TaskStartFailedEventDetailsFilterSensitiveLog: () => TaskStartFailedEventDetailsFilterSensitiveLog,
+      TaskSubmitFailedEventDetailsFilterSensitiveLog: () => TaskSubmitFailedEventDetailsFilterSensitiveLog,
+      TaskSubmittedEventDetailsFilterSensitiveLog: () => TaskSubmittedEventDetailsFilterSensitiveLog,
+      TaskSucceededEventDetailsFilterSensitiveLog: () => TaskSucceededEventDetailsFilterSensitiveLog,
+      TaskTimedOut: () => TaskTimedOut,
+      TaskTimedOutEventDetailsFilterSensitiveLog: () => TaskTimedOutEventDetailsFilterSensitiveLog,
+      TestExecutionStatus: () => TestExecutionStatus,
+      TestStateCommand: () => TestStateCommand,
+      TestStateInputFilterSensitiveLog: () => TestStateInputFilterSensitiveLog,
+      TestStateOutputFilterSensitiveLog: () => TestStateOutputFilterSensitiveLog,
+      TooManyTags: () => TooManyTags,
+      UntagResourceCommand: () => UntagResourceCommand,
+      UpdateMapRunCommand: () => UpdateMapRunCommand,
+      UpdateStateMachineAliasCommand: () => UpdateStateMachineAliasCommand,
+      UpdateStateMachineAliasInputFilterSensitiveLog: () => UpdateStateMachineAliasInputFilterSensitiveLog,
+      UpdateStateMachineCommand: () => UpdateStateMachineCommand,
+      UpdateStateMachineInputFilterSensitiveLog: () => UpdateStateMachineInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionCommand: () => ValidateStateMachineDefinitionCommand,
+      ValidateStateMachineDefinitionInputFilterSensitiveLog: () => ValidateStateMachineDefinitionInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionResultCode: () => ValidateStateMachineDefinitionResultCode,
+      ValidateStateMachineDefinitionSeverity: () => ValidateStateMachineDefinitionSeverity,
+      ValidationException: () => ValidationException,
+      ValidationExceptionReason: () => ValidationExceptionReason,
+      __Client: () => import_smithy_client4.Client,
+      paginateGetExecutionHistory: () => paginateGetExecutionHistory,
+      paginateListActivities: () => paginateListActivities,
+      paginateListExecutions: () => paginateListExecutions,
+      paginateListMapRuns: () => paginateListMapRuns,
+      paginateListStateMachines: () => paginateListStateMachines
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "states"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig4();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SFNClient = class _SFNClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSFNHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SFNClient, "SFNClient");
+    var SFNClient = _SFNClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var _SFNServiceException = class _SFNServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SFNServiceException2.prototype);
+      }
+    };
+    __name2(_SFNServiceException, "SFNServiceException");
+    var SFNServiceException = _SFNServiceException;
+    var _ActivityAlreadyExists = class _ActivityAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ActivityAlreadyExists, "ActivityAlreadyExists");
+    var ActivityAlreadyExists = _ActivityAlreadyExists;
+    var _ActivityDoesNotExist = class _ActivityDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ActivityDoesNotExist, "ActivityDoesNotExist");
+    var ActivityDoesNotExist = _ActivityDoesNotExist;
+    var _ActivityLimitExceeded = class _ActivityLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityLimitExceeded, "ActivityLimitExceeded");
+    var ActivityLimitExceeded = _ActivityLimitExceeded;
+    var _ActivityWorkerLimitExceeded = class _ActivityWorkerLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityWorkerLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityWorkerLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityWorkerLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityWorkerLimitExceeded, "ActivityWorkerLimitExceeded");
+    var ActivityWorkerLimitExceeded = _ActivityWorkerLimitExceeded;
+    var EncryptionType = {
+      AWS_OWNED_KEY: "AWS_OWNED_KEY",
+      CUSTOMER_MANAGED_KMS_KEY: "CUSTOMER_MANAGED_KMS_KEY"
+    };
+    var _InvalidEncryptionConfiguration = class _InvalidEncryptionConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidEncryptionConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidEncryptionConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidEncryptionConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidEncryptionConfiguration, "InvalidEncryptionConfiguration");
+    var InvalidEncryptionConfiguration = _InvalidEncryptionConfiguration;
+    var _InvalidName = class _InvalidName2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidName",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidName";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidName2.prototype);
+      }
+    };
+    __name2(_InvalidName, "InvalidName");
+    var InvalidName = _InvalidName;
+    var _KmsAccessDeniedException = class _KmsAccessDeniedException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsAccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsAccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsAccessDeniedException2.prototype);
+      }
+    };
+    __name2(_KmsAccessDeniedException, "KmsAccessDeniedException");
+    var KmsAccessDeniedException = _KmsAccessDeniedException;
+    var _KmsThrottlingException = class _KmsThrottlingException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsThrottlingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsThrottlingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsThrottlingException2.prototype);
+      }
+    };
+    __name2(_KmsThrottlingException, "KmsThrottlingException");
+    var KmsThrottlingException = _KmsThrottlingException;
+    var _TooManyTags = class _TooManyTags2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyTags",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyTags";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyTags2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_TooManyTags, "TooManyTags");
+    var TooManyTags = _TooManyTags;
+    var _ConflictException = class _ConflictException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ConflictException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ConflictException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ConflictException2.prototype);
+      }
+    };
+    __name2(_ConflictException, "ConflictException");
+    var ConflictException = _ConflictException;
+    var LogLevel = {
+      ALL: "ALL",
+      ERROR: "ERROR",
+      FATAL: "FATAL",
+      OFF: "OFF"
+    };
+    var StateMachineType = {
+      EXPRESS: "EXPRESS",
+      STANDARD: "STANDARD"
+    };
+    var _InvalidArn = class _InvalidArn2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidArn",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidArn";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidArn2.prototype);
+      }
+    };
+    __name2(_InvalidArn, "InvalidArn");
+    var InvalidArn = _InvalidArn;
+    var _InvalidDefinition = class _InvalidDefinition2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidDefinition",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidDefinition";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidDefinition2.prototype);
+      }
+    };
+    __name2(_InvalidDefinition, "InvalidDefinition");
+    var InvalidDefinition = _InvalidDefinition;
+    var _InvalidLoggingConfiguration = class _InvalidLoggingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidLoggingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidLoggingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidLoggingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidLoggingConfiguration, "InvalidLoggingConfiguration");
+    var InvalidLoggingConfiguration = _InvalidLoggingConfiguration;
+    var _InvalidTracingConfiguration = class _InvalidTracingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidTracingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidTracingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidTracingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidTracingConfiguration, "InvalidTracingConfiguration");
+    var InvalidTracingConfiguration = _InvalidTracingConfiguration;
+    var _StateMachineAlreadyExists = class _StateMachineAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineAlreadyExists2.prototype);
+      }
+    };
+    __name2(_StateMachineAlreadyExists, "StateMachineAlreadyExists");
+    var StateMachineAlreadyExists = _StateMachineAlreadyExists;
+    var _StateMachineDeleting = class _StateMachineDeleting2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDeleting",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDeleting";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDeleting2.prototype);
+      }
+    };
+    __name2(_StateMachineDeleting, "StateMachineDeleting");
+    var StateMachineDeleting = _StateMachineDeleting;
+    var _StateMachineLimitExceeded = class _StateMachineLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineLimitExceeded2.prototype);
+      }
+    };
+    __name2(_StateMachineLimitExceeded, "StateMachineLimitExceeded");
+    var StateMachineLimitExceeded = _StateMachineLimitExceeded;
+    var _StateMachineTypeNotSupported = class _StateMachineTypeNotSupported2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineTypeNotSupported",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineTypeNotSupported";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineTypeNotSupported2.prototype);
+      }
+    };
+    __name2(_StateMachineTypeNotSupported, "StateMachineTypeNotSupported");
+    var StateMachineTypeNotSupported = _StateMachineTypeNotSupported;
+    var ValidationExceptionReason = {
+      API_DOES_NOT_SUPPORT_LABELED_ARNS: "API_DOES_NOT_SUPPORT_LABELED_ARNS",
+      CANNOT_UPDATE_COMPLETED_MAP_RUN: "CANNOT_UPDATE_COMPLETED_MAP_RUN",
+      INVALID_ROUTING_CONFIGURATION: "INVALID_ROUTING_CONFIGURATION",
+      MISSING_REQUIRED_PARAMETER: "MISSING_REQUIRED_PARAMETER"
+    };
+    var _ValidationException = class _ValidationException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ValidationException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ValidationException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ValidationException2.prototype);
+        this.reason = opts.reason;
+      }
+    };
+    __name2(_ValidationException, "ValidationException");
+    var ValidationException = _ValidationException;
+    var _ResourceNotFound = class _ResourceNotFound2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFound",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFound";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFound2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_ResourceNotFound, "ResourceNotFound");
+    var ResourceNotFound = _ResourceNotFound;
+    var _ServiceQuotaExceededException = class _ServiceQuotaExceededException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ServiceQuotaExceededException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ServiceQuotaExceededException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ServiceQuotaExceededException2.prototype);
+      }
+    };
+    __name2(_ServiceQuotaExceededException, "ServiceQuotaExceededException");
+    var ServiceQuotaExceededException = _ServiceQuotaExceededException;
+    var IncludedData = {
+      ALL_DATA: "ALL_DATA",
+      METADATA_ONLY: "METADATA_ONLY"
+    };
+    var ExecutionRedriveStatus = {
+      NOT_REDRIVABLE: "NOT_REDRIVABLE",
+      REDRIVABLE: "REDRIVABLE",
+      REDRIVABLE_BY_MAP_RUN: "REDRIVABLE_BY_MAP_RUN"
+    };
+    var ExecutionStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      PENDING_REDRIVE: "PENDING_REDRIVE",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var _ExecutionDoesNotExist = class _ExecutionDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ExecutionDoesNotExist, "ExecutionDoesNotExist");
+    var ExecutionDoesNotExist = _ExecutionDoesNotExist;
+    var KmsKeyState = {
+      CREATING: "CREATING",
+      DISABLED: "DISABLED",
+      PENDING_DELETION: "PENDING_DELETION",
+      PENDING_IMPORT: "PENDING_IMPORT",
+      UNAVAILABLE: "UNAVAILABLE"
+    };
+    var _KmsInvalidStateException = class _KmsInvalidStateException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsInvalidStateException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsInvalidStateException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsInvalidStateException2.prototype);
+        this.kmsKeyState = opts.kmsKeyState;
+      }
+    };
+    __name2(_KmsInvalidStateException, "KmsInvalidStateException");
+    var KmsInvalidStateException = _KmsInvalidStateException;
+    var MapRunStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var StateMachineStatus = {
+      ACTIVE: "ACTIVE",
+      DELETING: "DELETING"
+    };
+    var _StateMachineDoesNotExist = class _StateMachineDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDoesNotExist2.prototype);
+      }
+    };
+    __name2(_StateMachineDoesNotExist, "StateMachineDoesNotExist");
+    var StateMachineDoesNotExist = _StateMachineDoesNotExist;
+    var HistoryEventType = {
+      ActivityFailed: "ActivityFailed",
+      ActivityScheduleFailed: "ActivityScheduleFailed",
+      ActivityScheduled: "ActivityScheduled",
+      ActivityStarted: "ActivityStarted",
+      ActivitySucceeded: "ActivitySucceeded",
+      ActivityTimedOut: "ActivityTimedOut",
+      ChoiceStateEntered: "ChoiceStateEntered",
+      ChoiceStateExited: "ChoiceStateExited",
+      ExecutionAborted: "ExecutionAborted",
+      ExecutionFailed: "ExecutionFailed",
+      ExecutionRedriven: "ExecutionRedriven",
+      ExecutionStarted: "ExecutionStarted",
+      ExecutionSucceeded: "ExecutionSucceeded",
+      ExecutionTimedOut: "ExecutionTimedOut",
+      FailStateEntered: "FailStateEntered",
+      LambdaFunctionFailed: "LambdaFunctionFailed",
+      LambdaFunctionScheduleFailed: "LambdaFunctionScheduleFailed",
+      LambdaFunctionScheduled: "LambdaFunctionScheduled",
+      LambdaFunctionStartFailed: "LambdaFunctionStartFailed",
+      LambdaFunctionStarted: "LambdaFunctionStarted",
+      LambdaFunctionSucceeded: "LambdaFunctionSucceeded",
+      LambdaFunctionTimedOut: "LambdaFunctionTimedOut",
+      MapIterationAborted: "MapIterationAborted",
+      MapIterationFailed: "MapIterationFailed",
+      MapIterationStarted: "MapIterationStarted",
+      MapIterationSucceeded: "MapIterationSucceeded",
+      MapRunAborted: "MapRunAborted",
+      MapRunFailed: "MapRunFailed",
+      MapRunRedriven: "MapRunRedriven",
+      MapRunStarted: "MapRunStarted",
+      MapRunSucceeded: "MapRunSucceeded",
+      MapStateAborted: "MapStateAborted",
+      MapStateEntered: "MapStateEntered",
+      MapStateExited: "MapStateExited",
+      MapStateFailed: "MapStateFailed",
+      MapStateStarted: "MapStateStarted",
+      MapStateSucceeded: "MapStateSucceeded",
+      ParallelStateAborted: "ParallelStateAborted",
+      ParallelStateEntered: "ParallelStateEntered",
+      ParallelStateExited: "ParallelStateExited",
+      ParallelStateFailed: "ParallelStateFailed",
+      ParallelStateStarted: "ParallelStateStarted",
+      ParallelStateSucceeded: "ParallelStateSucceeded",
+      PassStateEntered: "PassStateEntered",
+      PassStateExited: "PassStateExited",
+      SucceedStateEntered: "SucceedStateEntered",
+      SucceedStateExited: "SucceedStateExited",
+      TaskFailed: "TaskFailed",
+      TaskScheduled: "TaskScheduled",
+      TaskStartFailed: "TaskStartFailed",
+      TaskStarted: "TaskStarted",
+      TaskStateAborted: "TaskStateAborted",
+      TaskStateEntered: "TaskStateEntered",
+      TaskStateExited: "TaskStateExited",
+      TaskSubmitFailed: "TaskSubmitFailed",
+      TaskSubmitted: "TaskSubmitted",
+      TaskSucceeded: "TaskSucceeded",
+      TaskTimedOut: "TaskTimedOut",
+      WaitStateAborted: "WaitStateAborted",
+      WaitStateEntered: "WaitStateEntered",
+      WaitStateExited: "WaitStateExited"
+    };
+    var _InvalidToken = class _InvalidToken2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidToken",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidToken";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidToken2.prototype);
+      }
+    };
+    __name2(_InvalidToken, "InvalidToken");
+    var InvalidToken = _InvalidToken;
+    var ExecutionRedriveFilter = {
+      NOT_REDRIVEN: "NOT_REDRIVEN",
+      REDRIVEN: "REDRIVEN"
+    };
+    var _ExecutionLimitExceeded = class _ExecutionLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ExecutionLimitExceeded, "ExecutionLimitExceeded");
+    var ExecutionLimitExceeded = _ExecutionLimitExceeded;
+    var _ExecutionNotRedrivable = class _ExecutionNotRedrivable2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionNotRedrivable",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionNotRedrivable";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionNotRedrivable2.prototype);
+      }
+    };
+    __name2(_ExecutionNotRedrivable, "ExecutionNotRedrivable");
+    var ExecutionNotRedrivable = _ExecutionNotRedrivable;
+    var _TaskDoesNotExist = class _TaskDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskDoesNotExist2.prototype);
+      }
+    };
+    __name2(_TaskDoesNotExist, "TaskDoesNotExist");
+    var TaskDoesNotExist = _TaskDoesNotExist;
+    var _TaskTimedOut = class _TaskTimedOut2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskTimedOut",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskTimedOut";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskTimedOut2.prototype);
+      }
+    };
+    __name2(_TaskTimedOut, "TaskTimedOut");
+    var TaskTimedOut = _TaskTimedOut;
+    var _InvalidOutput = class _InvalidOutput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidOutput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidOutput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidOutput2.prototype);
+      }
+    };
+    __name2(_InvalidOutput, "InvalidOutput");
+    var InvalidOutput = _InvalidOutput;
+    var _ExecutionAlreadyExists = class _ExecutionAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ExecutionAlreadyExists, "ExecutionAlreadyExists");
+    var ExecutionAlreadyExists = _ExecutionAlreadyExists;
+    var _InvalidExecutionInput = class _InvalidExecutionInput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidExecutionInput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidExecutionInput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidExecutionInput2.prototype);
+      }
+    };
+    __name2(_InvalidExecutionInput, "InvalidExecutionInput");
+    var InvalidExecutionInput = _InvalidExecutionInput;
+    var SyncExecutionStatus = {
+      FAILED: "FAILED",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var InspectionLevel = {
+      DEBUG: "DEBUG",
+      INFO: "INFO",
+      TRACE: "TRACE"
+    };
+    var TestExecutionStatus = {
+      CAUGHT_ERROR: "CAUGHT_ERROR",
+      FAILED: "FAILED",
+      RETRIABLE: "RETRIABLE",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var _MissingRequiredParameter = class _MissingRequiredParameter2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MissingRequiredParameter",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MissingRequiredParameter";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MissingRequiredParameter2.prototype);
+      }
+    };
+    __name2(_MissingRequiredParameter, "MissingRequiredParameter");
+    var MissingRequiredParameter = _MissingRequiredParameter;
+    var ValidateStateMachineDefinitionSeverity = {
+      ERROR: "ERROR"
+    };
+    var ValidateStateMachineDefinitionResultCode = {
+      FAIL: "FAIL",
+      OK: "OK"
+    };
+    var ActivityFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityFailedEventDetailsFilterSensitiveLog");
+    var ActivityScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduledEventDetailsFilterSensitiveLog");
+    var ActivityScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduleFailedEventDetailsFilterSensitiveLog");
+    var ActivitySucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivitySucceededEventDetailsFilterSensitiveLog");
+    var ActivityTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityTimedOutEventDetailsFilterSensitiveLog");
+    var CreateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineInputFilterSensitiveLog");
+    var CreateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineAliasInputFilterSensitiveLog");
+    var DescribeExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.redriveStatusReason && { redriveStatusReason: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeExecutionOutputFilterSensitiveLog");
+    var DescribeStateMachineOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineOutputFilterSensitiveLog");
+    var DescribeStateMachineAliasOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineAliasOutputFilterSensitiveLog");
+    var DescribeStateMachineForExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineForExecutionOutputFilterSensitiveLog");
+    var GetActivityTaskOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetActivityTaskOutputFilterSensitiveLog");
+    var ExecutionAbortedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionAbortedEventDetailsFilterSensitiveLog");
+    var ExecutionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionFailedEventDetailsFilterSensitiveLog");
+    var ExecutionStartedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionStartedEventDetailsFilterSensitiveLog");
+    var ExecutionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionSucceededEventDetailsFilterSensitiveLog");
+    var ExecutionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionTimedOutEventDetailsFilterSensitiveLog");
+    var LambdaFunctionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduledEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionStartFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionSucceededEventDetailsFilterSensitiveLog");
+    var LambdaFunctionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionTimedOutEventDetailsFilterSensitiveLog");
+    var MapRunFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "MapRunFailedEventDetailsFilterSensitiveLog");
+    var StateEnteredEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateEnteredEventDetailsFilterSensitiveLog");
+    var StateExitedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateExitedEventDetailsFilterSensitiveLog");
+    var TaskFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskFailedEventDetailsFilterSensitiveLog");
+    var TaskScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.parameters && { parameters: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskScheduledEventDetailsFilterSensitiveLog");
+    var TaskStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskStartFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmitFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmitFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmittedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmittedEventDetailsFilterSensitiveLog");
+    var TaskSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSucceededEventDetailsFilterSensitiveLog");
+    var TaskTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskTimedOutEventDetailsFilterSensitiveLog");
+    var HistoryEventFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.activityFailedEventDetails && {
+        activityFailedEventDetails: ActivityFailedEventDetailsFilterSensitiveLog(obj.activityFailedEventDetails)
+      },
+      ...obj.activityScheduleFailedEventDetails && {
+        activityScheduleFailedEventDetails: ActivityScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.activityScheduleFailedEventDetails
+        )
+      },
+      ...obj.activityScheduledEventDetails && {
+        activityScheduledEventDetails: ActivityScheduledEventDetailsFilterSensitiveLog(obj.activityScheduledEventDetails)
+      },
+      ...obj.activitySucceededEventDetails && {
+        activitySucceededEventDetails: ActivitySucceededEventDetailsFilterSensitiveLog(obj.activitySucceededEventDetails)
+      },
+      ...obj.activityTimedOutEventDetails && {
+        activityTimedOutEventDetails: ActivityTimedOutEventDetailsFilterSensitiveLog(obj.activityTimedOutEventDetails)
+      },
+      ...obj.taskFailedEventDetails && {
+        taskFailedEventDetails: TaskFailedEventDetailsFilterSensitiveLog(obj.taskFailedEventDetails)
+      },
+      ...obj.taskScheduledEventDetails && {
+        taskScheduledEventDetails: TaskScheduledEventDetailsFilterSensitiveLog(obj.taskScheduledEventDetails)
+      },
+      ...obj.taskStartFailedEventDetails && {
+        taskStartFailedEventDetails: TaskStartFailedEventDetailsFilterSensitiveLog(obj.taskStartFailedEventDetails)
+      },
+      ...obj.taskSubmitFailedEventDetails && {
+        taskSubmitFailedEventDetails: TaskSubmitFailedEventDetailsFilterSensitiveLog(obj.taskSubmitFailedEventDetails)
+      },
+      ...obj.taskSubmittedEventDetails && {
+        taskSubmittedEventDetails: TaskSubmittedEventDetailsFilterSensitiveLog(obj.taskSubmittedEventDetails)
+      },
+      ...obj.taskSucceededEventDetails && {
+        taskSucceededEventDetails: TaskSucceededEventDetailsFilterSensitiveLog(obj.taskSucceededEventDetails)
+      },
+      ...obj.taskTimedOutEventDetails && {
+        taskTimedOutEventDetails: TaskTimedOutEventDetailsFilterSensitiveLog(obj.taskTimedOutEventDetails)
+      },
+      ...obj.executionFailedEventDetails && {
+        executionFailedEventDetails: ExecutionFailedEventDetailsFilterSensitiveLog(obj.executionFailedEventDetails)
+      },
+      ...obj.executionStartedEventDetails && {
+        executionStartedEventDetails: ExecutionStartedEventDetailsFilterSensitiveLog(obj.executionStartedEventDetails)
+      },
+      ...obj.executionSucceededEventDetails && {
+        executionSucceededEventDetails: ExecutionSucceededEventDetailsFilterSensitiveLog(
+          obj.executionSucceededEventDetails
+        )
+      },
+      ...obj.executionAbortedEventDetails && {
+        executionAbortedEventDetails: ExecutionAbortedEventDetailsFilterSensitiveLog(obj.executionAbortedEventDetails)
+      },
+      ...obj.executionTimedOutEventDetails && {
+        executionTimedOutEventDetails: ExecutionTimedOutEventDetailsFilterSensitiveLog(obj.executionTimedOutEventDetails)
+      },
+      ...obj.lambdaFunctionFailedEventDetails && {
+        lambdaFunctionFailedEventDetails: LambdaFunctionFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduleFailedEventDetails && {
+        lambdaFunctionScheduleFailedEventDetails: LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduleFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduledEventDetails && {
+        lambdaFunctionScheduledEventDetails: LambdaFunctionScheduledEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduledEventDetails
+        )
+      },
+      ...obj.lambdaFunctionStartFailedEventDetails && {
+        lambdaFunctionStartFailedEventDetails: LambdaFunctionStartFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionStartFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionSucceededEventDetails && {
+        lambdaFunctionSucceededEventDetails: LambdaFunctionSucceededEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionSucceededEventDetails
+        )
+      },
+      ...obj.lambdaFunctionTimedOutEventDetails && {
+        lambdaFunctionTimedOutEventDetails: LambdaFunctionTimedOutEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionTimedOutEventDetails
+        )
+      },
+      ...obj.stateEnteredEventDetails && {
+        stateEnteredEventDetails: StateEnteredEventDetailsFilterSensitiveLog(obj.stateEnteredEventDetails)
+      },
+      ...obj.stateExitedEventDetails && {
+        stateExitedEventDetails: StateExitedEventDetailsFilterSensitiveLog(obj.stateExitedEventDetails)
+      },
+      ...obj.mapRunFailedEventDetails && {
+        mapRunFailedEventDetails: MapRunFailedEventDetailsFilterSensitiveLog(obj.mapRunFailedEventDetails)
+      }
+    }), "HistoryEventFilterSensitiveLog");
+    var GetExecutionHistoryOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.events && { events: obj.events.map((item) => HistoryEventFilterSensitiveLog(item)) }
+    }), "GetExecutionHistoryOutputFilterSensitiveLog");
+    var PublishStateMachineVersionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "PublishStateMachineVersionInputFilterSensitiveLog");
+    var SendTaskFailureInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskFailureInputFilterSensitiveLog");
+    var SendTaskSuccessInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskSuccessInputFilterSensitiveLog");
+    var StartExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionOutputFilterSensitiveLog");
+    var StopExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "StopExecutionInputFilterSensitiveLog");
+    var TestStateInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateInputFilterSensitiveLog");
+    var InspectionDataFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterInputPath && { afterInputPath: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterParameters && { afterParameters: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.result && { result: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultSelector && { afterResultSelector: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultPath && { afterResultPath: import_smithy_client4.SENSITIVE_STRING }
+    }), "InspectionDataFilterSensitiveLog");
+    var TestStateOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.inspectionData && { inspectionData: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateOutputFilterSensitiveLog");
+    var UpdateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineInputFilterSensitiveLog");
+    var UpdateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineAliasInputFilterSensitiveLog");
+    var ValidateStateMachineDefinitionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "ValidateStateMachineDefinitionInputFilterSensitiveLog");
+    var se_CreateActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateActivityCommand");
+    var se_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineCommand");
+    var se_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineAliasCommand");
+    var se_DeleteActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteActivityCommand");
+    var se_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineCommand");
+    var se_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineAliasCommand");
+    var se_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineVersionCommand");
+    var se_DescribeActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeActivityCommand");
+    var se_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeExecutionCommand");
+    var se_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeMapRun");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeMapRunCommand");
+    var se_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineCommand");
+    var se_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineAliasCommand");
+    var se_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineForExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineForExecutionCommand");
+    var se_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetActivityTask");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetActivityTaskCommand");
+    var se_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetExecutionHistory");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetExecutionHistoryCommand");
+    var se_ListActivitiesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListActivities");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListActivitiesCommand");
+    var se_ListExecutionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListExecutions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListExecutionsCommand");
+    var se_ListMapRunsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListMapRuns");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListMapRunsCommand");
+    var se_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineAliases");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineAliasesCommand");
+    var se_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachines");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachinesCommand");
+    var se_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineVersions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineVersionsCommand");
+    var se_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListTagsForResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListTagsForResourceCommand");
+    var se_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("PublishStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_PublishStateMachineVersionCommand");
+    var se_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("RedriveExecution");
+      let body;
+      body = JSON.stringify(se_RedriveExecutionInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_RedriveExecutionCommand");
+    var se_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskFailure");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskFailureCommand");
+    var se_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskHeartbeat");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskHeartbeatCommand");
+    var se_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskSuccess");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskSuccessCommand");
+    var se_StartExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StartExecutionCommand");
+    var se_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartSyncExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_StartSyncExecutionCommand");
+    var se_StopExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StopExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StopExecutionCommand");
+    var se_TagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_TagResourceCommand");
+    var se_TestStateCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TestState");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_TestStateCommand");
+    var se_UntagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UntagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UntagResourceCommand");
+    var se_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateMapRun");
+      let body;
+      body = JSON.stringify(se_UpdateMapRunInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateMapRunCommand");
+    var se_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineCommand");
+    var se_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineAliasCommand");
+    var se_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ValidateStateMachineDefinition");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ValidateStateMachineDefinitionCommand");
+    var de_CreateActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateActivityCommand");
+    var de_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineCommand");
+    var de_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineAliasCommand");
+    var de_DeleteActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteActivityCommand");
+    var de_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineCommand");
+    var de_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineAliasCommand");
+    var de_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineVersionCommand");
+    var de_DescribeActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeActivityCommand");
+    var de_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeExecutionCommand");
+    var de_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeMapRunOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeMapRunCommand");
+    var de_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineCommand");
+    var de_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineAliasCommand");
+    var de_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineForExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineForExecutionCommand");
+    var de_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetActivityTaskCommand");
+    var de_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_GetExecutionHistoryOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetExecutionHistoryCommand");
+    var de_ListActivitiesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListActivitiesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListActivitiesCommand");
+    var de_ListExecutionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListExecutionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListExecutionsCommand");
+    var de_ListMapRunsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListMapRunsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListMapRunsCommand");
+    var de_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineAliasesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineAliasesCommand");
+    var de_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachinesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachinesCommand");
+    var de_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineVersionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineVersionsCommand");
+    var de_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListTagsForResourceCommand");
+    var de_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_PublishStateMachineVersionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_PublishStateMachineVersionCommand");
+    var de_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_RedriveExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_RedriveExecutionCommand");
+    var de_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskFailureCommand");
+    var de_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskHeartbeatCommand");
+    var de_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskSuccessCommand");
+    var de_StartExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartExecutionCommand");
+    var de_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartSyncExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartSyncExecutionCommand");
+    var de_StopExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StopExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StopExecutionCommand");
+    var de_TagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TagResourceCommand");
+    var de_TestStateCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TestStateCommand");
+    var de_UntagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UntagResourceCommand");
+    var de_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateMapRunCommand");
+    var de_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineCommand");
+    var de_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineAliasCommand");
+    var de_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ValidateStateMachineDefinitionCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ActivityAlreadyExists":
+        case "com.amazonaws.sfn#ActivityAlreadyExists":
+          throw await de_ActivityAlreadyExistsRes(parsedOutput, context);
+        case "ActivityLimitExceeded":
+        case "com.amazonaws.sfn#ActivityLimitExceeded":
+          throw await de_ActivityLimitExceededRes(parsedOutput, context);
+        case "InvalidEncryptionConfiguration":
+        case "com.amazonaws.sfn#InvalidEncryptionConfiguration":
+          throw await de_InvalidEncryptionConfigurationRes(parsedOutput, context);
+        case "InvalidName":
+        case "com.amazonaws.sfn#InvalidName":
+          throw await de_InvalidNameRes(parsedOutput, context);
+        case "KmsAccessDeniedException":
+        case "com.amazonaws.sfn#KmsAccessDeniedException":
+          throw await de_KmsAccessDeniedExceptionRes(parsedOutput, context);
+        case "KmsThrottlingException":
+        case "com.amazonaws.sfn#KmsThrottlingException":
+          throw await de_KmsThrottlingExceptionRes(parsedOutput, context);
+        case "TooManyTags":
+        case "com.amazonaws.sfn#TooManyTags":
+          throw await de_TooManyTagsRes(parsedOutput, context);
+        case "ConflictException":
+        case "com.amazonaws.sfn#ConflictException":
+          throw await de_ConflictExceptionRes(parsedOutput, context);
+        case "InvalidArn":
+        case "com.amazonaws.sfn#InvalidArn":
+          throw await de_InvalidArnRes(parsedOutput, context);
+        case "InvalidDefinition":
+        case "com.amazonaws.sfn#InvalidDefinition":
+          throw await de_InvalidDefinitionRes(parsedOutput, context);
+        case "InvalidLoggingConfiguration":
+        case "com.amazonaws.sfn#InvalidLoggingConfiguration":
+          throw await de_InvalidLoggingConfigurationRes(parsedOutput, context);
+        case "InvalidTracingConfiguration":
+        case "com.amazonaws.sfn#InvalidTracingConfiguration":
+          throw await de_InvalidTracingConfigurationRes(parsedOutput, context);
+        case "StateMachineAlreadyExists":
+        case "com.amazonaws.sfn#StateMachineAlreadyExists":
+          throw await de_StateMachineAlreadyExistsRes(parsedOutput, context);
+        case "StateMachineDeleting":
+        case "com.amazonaws.sfn#StateMachineDeleting":
+          throw await de_StateMachineDeletingRes(parsedOutput, context);
+        case "StateMachineLimitExceeded":
+        case "com.amazonaws.sfn#StateMachineLimitExceeded":
+          throw await de_StateMachineLimitExceededRes(parsedOutput, context);
+        case "StateMachineTypeNotSupported":
+        case "com.amazonaws.sfn#StateMachineTypeNotSupported":
+          throw await de_StateMachineTypeNotSupportedRes(parsedOutput, context);
+        case "ValidationException":
+        case "com.amazonaws.sfn#ValidationException":
+          throw await de_ValidationExceptionRes(parsedOutput, context);
+        case "ResourceNotFound":
+        case "com.amazonaws.sfn#ResourceNotFound":
+          throw await de_ResourceNotFoundRes(parsedOutput, context);
+        case "ServiceQuotaExceededException":
+        case "com.amazonaws.sfn#ServiceQuotaExceededException":
+          throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context);
+        case "ActivityDoesNotExist":
+        case "com.amazonaws.sfn#ActivityDoesNotExist":
+          throw await de_ActivityDoesNotExistRes(parsedOutput, context);
+        case "ExecutionDoesNotExist":
+        case "com.amazonaws.sfn#ExecutionDoesNotExist":
+          throw await de_ExecutionDoesNotExistRes(parsedOutput, context);
+        case "KmsInvalidStateException":
+        case "com.amazonaws.sfn#KmsInvalidStateException":
+          throw await de_KmsInvalidStateExceptionRes(parsedOutput, context);
+        case "StateMachineDoesNotExist":
+        case "com.amazonaws.sfn#StateMachineDoesNotExist":
+          throw await de_StateMachineDoesNotExistRes(parsedOutput, context);
+        case "ActivityWorkerLimitExceeded":
+        case "com.amazonaws.sfn#ActivityWorkerLimitExceeded":
+          throw await de_ActivityWorkerLimitExceededRes(parsedOutput, context);
+        case "InvalidToken":
+        case "com.amazonaws.sfn#InvalidToken":
+          throw await de_InvalidTokenRes(parsedOutput, context);
+        case "ExecutionLimitExceeded":
+        case "com.amazonaws.sfn#ExecutionLimitExceeded":
+          throw await de_ExecutionLimitExceededRes(parsedOutput, context);
+        case "ExecutionNotRedrivable":
+        case "com.amazonaws.sfn#ExecutionNotRedrivable":
+          throw await de_ExecutionNotRedrivableRes(parsedOutput, context);
+        case "TaskDoesNotExist":
+        case "com.amazonaws.sfn#TaskDoesNotExist":
+          throw await de_TaskDoesNotExistRes(parsedOutput, context);
+        case "TaskTimedOut":
+        case "com.amazonaws.sfn#TaskTimedOut":
+          throw await de_TaskTimedOutRes(parsedOutput, context);
+        case "InvalidOutput":
+        case "com.amazonaws.sfn#InvalidOutput":
+          throw await de_InvalidOutputRes(parsedOutput, context);
+        case "ExecutionAlreadyExists":
+        case "com.amazonaws.sfn#ExecutionAlreadyExists":
+          throw await de_ExecutionAlreadyExistsRes(parsedOutput, context);
+        case "InvalidExecutionInput":
+        case "com.amazonaws.sfn#InvalidExecutionInput":
+          throw await de_InvalidExecutionInputRes(parsedOutput, context);
+        case "MissingRequiredParameter":
+        case "com.amazonaws.sfn#MissingRequiredParameter":
+          throw await de_MissingRequiredParameterRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ActivityAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityAlreadyExistsRes");
+    var de_ActivityDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityDoesNotExistRes");
+    var de_ActivityLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityLimitExceededRes");
+    var de_ActivityWorkerLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityWorkerLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityWorkerLimitExceededRes");
+    var de_ConflictExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ConflictException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ConflictExceptionRes");
+    var de_ExecutionAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionAlreadyExistsRes");
+    var de_ExecutionDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionDoesNotExistRes");
+    var de_ExecutionLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionLimitExceededRes");
+    var de_ExecutionNotRedrivableRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionNotRedrivable({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionNotRedrivableRes");
+    var de_InvalidArnRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidArn({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidArnRes");
+    var de_InvalidDefinitionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidDefinition({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidDefinitionRes");
+    var de_InvalidEncryptionConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidEncryptionConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidEncryptionConfigurationRes");
+    var de_InvalidExecutionInputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidExecutionInput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidExecutionInputRes");
+    var de_InvalidLoggingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidLoggingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidLoggingConfigurationRes");
+    var de_InvalidNameRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidName({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidNameRes");
+    var de_InvalidOutputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidOutput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidOutputRes");
+    var de_InvalidTokenRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidToken({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTokenRes");
+    var de_InvalidTracingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidTracingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTracingConfigurationRes");
+    var de_KmsAccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsAccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsAccessDeniedExceptionRes");
+    var de_KmsInvalidStateExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsInvalidStateException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsInvalidStateExceptionRes");
+    var de_KmsThrottlingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsThrottlingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsThrottlingExceptionRes");
+    var de_MissingRequiredParameterRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new MissingRequiredParameter({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MissingRequiredParameterRes");
+    var de_ResourceNotFoundRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ResourceNotFound({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ResourceNotFoundRes");
+    var de_ServiceQuotaExceededExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ServiceQuotaExceededException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ServiceQuotaExceededExceptionRes");
+    var de_StateMachineAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineAlreadyExistsRes");
+    var de_StateMachineDeletingRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDeleting({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDeletingRes");
+    var de_StateMachineDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDoesNotExistRes");
+    var de_StateMachineLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineLimitExceededRes");
+    var de_StateMachineTypeNotSupportedRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineTypeNotSupported({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineTypeNotSupportedRes");
+    var de_TaskDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskDoesNotExistRes");
+    var de_TaskTimedOutRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskTimedOut({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskTimedOutRes");
+    var de_TooManyTagsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TooManyTags({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TooManyTagsRes");
+    var de_ValidationExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ValidationException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ValidationExceptionRes");
+    var se_RedriveExecutionInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        clientToken: [true, (_) => _ ?? (0, import_uuid.v4)()],
+        executionArn: []
+      });
+    }, "se_RedriveExecutionInput");
+    var se_UpdateMapRunInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        mapRunArn: [],
+        maxConcurrency: [],
+        toleratedFailureCount: [],
+        toleratedFailurePercentage: import_smithy_client4.serializeFloat
+      });
+    }, "se_UpdateMapRunInput");
+    var de_ActivityList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ActivityListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ActivityList");
+    var de_ActivityListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString
+      });
+    }, "de_ActivityListItem");
+    var de_CreateActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_CreateActivityOutput");
+    var de_CreateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineAliasOutput");
+    var de_CreateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineOutput");
+    var de_DescribeActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        encryptionConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString
+      });
+    }, "de_DescribeActivityOutput");
+    var de_DescribeExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        redriveStatus: import_smithy_client4.expectString,
+        redriveStatusReason: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_DescribeExecutionOutput");
+    var de_DescribeMapRunOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        executionCounts: import_smithy_client4._json,
+        itemCounts: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        maxConcurrency: import_smithy_client4.expectInt32,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        toleratedFailureCount: import_smithy_client4.expectLong,
+        toleratedFailurePercentage: import_smithy_client4.limitedParseFloat32
+      });
+    }, "de_DescribeMapRunOutput");
+    var de_DescribeStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        description: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        routingConfiguration: import_smithy_client4._json,
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineAliasOutput");
+    var de_DescribeStateMachineForExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        definition: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineForExecutionOutput");
+    var de_DescribeStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        definition: import_smithy_client4.expectString,
+        description: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_DescribeStateMachineOutput");
+    var de_ExecutionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ExecutionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ExecutionList");
+    var de_ExecutionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        itemCount: import_smithy_client4.expectInt32,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_ExecutionListItem");
+    var de_GetExecutionHistoryOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        events: (_) => de_HistoryEventList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_GetExecutionHistoryOutput");
+    var de_HistoryEvent = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityFailedEventDetails: import_smithy_client4._json,
+        activityScheduleFailedEventDetails: import_smithy_client4._json,
+        activityScheduledEventDetails: import_smithy_client4._json,
+        activityStartedEventDetails: import_smithy_client4._json,
+        activitySucceededEventDetails: import_smithy_client4._json,
+        activityTimedOutEventDetails: import_smithy_client4._json,
+        executionAbortedEventDetails: import_smithy_client4._json,
+        executionFailedEventDetails: import_smithy_client4._json,
+        executionRedrivenEventDetails: import_smithy_client4._json,
+        executionStartedEventDetails: import_smithy_client4._json,
+        executionSucceededEventDetails: import_smithy_client4._json,
+        executionTimedOutEventDetails: import_smithy_client4._json,
+        id: import_smithy_client4.expectLong,
+        lambdaFunctionFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduleFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduledEventDetails: import_smithy_client4._json,
+        lambdaFunctionStartFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionSucceededEventDetails: import_smithy_client4._json,
+        lambdaFunctionTimedOutEventDetails: import_smithy_client4._json,
+        mapIterationAbortedEventDetails: import_smithy_client4._json,
+        mapIterationFailedEventDetails: import_smithy_client4._json,
+        mapIterationStartedEventDetails: import_smithy_client4._json,
+        mapIterationSucceededEventDetails: import_smithy_client4._json,
+        mapRunFailedEventDetails: import_smithy_client4._json,
+        mapRunRedrivenEventDetails: import_smithy_client4._json,
+        mapRunStartedEventDetails: import_smithy_client4._json,
+        mapStateStartedEventDetails: import_smithy_client4._json,
+        previousEventId: import_smithy_client4.expectLong,
+        stateEnteredEventDetails: import_smithy_client4._json,
+        stateExitedEventDetails: import_smithy_client4._json,
+        taskFailedEventDetails: import_smithy_client4._json,
+        taskScheduledEventDetails: import_smithy_client4._json,
+        taskStartFailedEventDetails: import_smithy_client4._json,
+        taskStartedEventDetails: import_smithy_client4._json,
+        taskSubmitFailedEventDetails: import_smithy_client4._json,
+        taskSubmittedEventDetails: import_smithy_client4._json,
+        taskSucceededEventDetails: import_smithy_client4._json,
+        taskTimedOutEventDetails: import_smithy_client4._json,
+        timestamp: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        type: import_smithy_client4.expectString
+      });
+    }, "de_HistoryEvent");
+    var de_HistoryEventList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_HistoryEvent(entry, context);
+      });
+      return retVal;
+    }, "de_HistoryEventList");
+    var de_ListActivitiesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activities: (_) => de_ActivityList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListActivitiesOutput");
+    var de_ListExecutionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executions: (_) => de_ExecutionList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListExecutionsOutput");
+    var de_ListMapRunsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        mapRuns: (_) => de_MapRunList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListMapRunsOutput");
+    var de_ListStateMachineAliasesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineAliases: (_) => de_StateMachineAliasList(_, context)
+      });
+    }, "de_ListStateMachineAliasesOutput");
+    var de_ListStateMachinesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachines: (_) => de_StateMachineList(_, context)
+      });
+    }, "de_ListStateMachinesOutput");
+    var de_ListStateMachineVersionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineVersions: (_) => de_StateMachineVersionList(_, context)
+      });
+    }, "de_ListStateMachineVersionsOutput");
+    var de_MapRunList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_MapRunListItem(entry, context);
+      });
+      return retVal;
+    }, "de_MapRunList");
+    var de_MapRunListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        mapRunArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_MapRunListItem");
+    var de_PublishStateMachineVersionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_PublishStateMachineVersionOutput");
+    var de_RedriveExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_RedriveExecutionOutput");
+    var de_StartExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StartExecutionOutput");
+    var de_StartSyncExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        billingDetails: import_smithy_client4._json,
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_StartSyncExecutionOutput");
+    var de_StateMachineAliasList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineAliasListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineAliasList");
+    var de_StateMachineAliasListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineAliasListItem");
+    var de_StateMachineList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineList");
+    var de_StateMachineListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineListItem");
+    var de_StateMachineVersionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineVersionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineVersionList");
+    var de_StateMachineVersionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineVersionListItem");
+    var de_StopExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StopExecutionOutput");
+    var de_UpdateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineAliasOutput");
+    var de_UpdateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        revisionId: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineOutput");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SFNServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    function sharedHeaders(operation) {
+      return {
+        "content-type": "application/x-amz-json-1.0",
+        "x-amz-target": `AWSStepFunctions.${operation}`
+      };
+    }
+    __name2(sharedHeaders, "sharedHeaders");
+    var _CreateActivityCommand = class _CreateActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateActivity", {}).n("SFNClient", "CreateActivityCommand").f(void 0, void 0).ser(se_CreateActivityCommand).de(de_CreateActivityCommand).build() {
+    };
+    __name2(_CreateActivityCommand, "CreateActivityCommand");
+    var CreateActivityCommand = _CreateActivityCommand;
+    var _CreateStateMachineAliasCommand = class _CreateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachineAlias", {}).n("SFNClient", "CreateStateMachineAliasCommand").f(CreateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineAliasCommand).de(de_CreateStateMachineAliasCommand).build() {
+    };
+    __name2(_CreateStateMachineAliasCommand, "CreateStateMachineAliasCommand");
+    var CreateStateMachineAliasCommand = _CreateStateMachineAliasCommand;
+    var _CreateStateMachineCommand = class _CreateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachine", {}).n("SFNClient", "CreateStateMachineCommand").f(CreateStateMachineInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineCommand).de(de_CreateStateMachineCommand).build() {
+    };
+    __name2(_CreateStateMachineCommand, "CreateStateMachineCommand");
+    var CreateStateMachineCommand = _CreateStateMachineCommand;
+    var _DeleteActivityCommand = class _DeleteActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteActivity", {}).n("SFNClient", "DeleteActivityCommand").f(void 0, void 0).ser(se_DeleteActivityCommand).de(de_DeleteActivityCommand).build() {
+    };
+    __name2(_DeleteActivityCommand, "DeleteActivityCommand");
+    var DeleteActivityCommand = _DeleteActivityCommand;
+    var _DeleteStateMachineAliasCommand = class _DeleteStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineAlias", {}).n("SFNClient", "DeleteStateMachineAliasCommand").f(void 0, void 0).ser(se_DeleteStateMachineAliasCommand).de(de_DeleteStateMachineAliasCommand).build() {
+    };
+    __name2(_DeleteStateMachineAliasCommand, "DeleteStateMachineAliasCommand");
+    var DeleteStateMachineAliasCommand = _DeleteStateMachineAliasCommand;
+    var _DeleteStateMachineCommand = class _DeleteStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachine", {}).n("SFNClient", "DeleteStateMachineCommand").f(void 0, void 0).ser(se_DeleteStateMachineCommand).de(de_DeleteStateMachineCommand).build() {
+    };
+    __name2(_DeleteStateMachineCommand, "DeleteStateMachineCommand");
+    var DeleteStateMachineCommand = _DeleteStateMachineCommand;
+    var _DeleteStateMachineVersionCommand = class _DeleteStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineVersion", {}).n("SFNClient", "DeleteStateMachineVersionCommand").f(void 0, void 0).ser(se_DeleteStateMachineVersionCommand).de(de_DeleteStateMachineVersionCommand).build() {
+    };
+    __name2(_DeleteStateMachineVersionCommand, "DeleteStateMachineVersionCommand");
+    var DeleteStateMachineVersionCommand = _DeleteStateMachineVersionCommand;
+    var _DescribeActivityCommand = class _DescribeActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeActivity", {}).n("SFNClient", "DescribeActivityCommand").f(void 0, void 0).ser(se_DescribeActivityCommand).de(de_DescribeActivityCommand).build() {
+    };
+    __name2(_DescribeActivityCommand, "DescribeActivityCommand");
+    var DescribeActivityCommand = _DescribeActivityCommand;
+    var _DescribeExecutionCommand = class _DescribeExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeExecution", {}).n("SFNClient", "DescribeExecutionCommand").f(void 0, DescribeExecutionOutputFilterSensitiveLog).ser(se_DescribeExecutionCommand).de(de_DescribeExecutionCommand).build() {
+    };
+    __name2(_DescribeExecutionCommand, "DescribeExecutionCommand");
+    var DescribeExecutionCommand = _DescribeExecutionCommand;
+    var _DescribeMapRunCommand = class _DescribeMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeMapRun", {}).n("SFNClient", "DescribeMapRunCommand").f(void 0, void 0).ser(se_DescribeMapRunCommand).de(de_DescribeMapRunCommand).build() {
+    };
+    __name2(_DescribeMapRunCommand, "DescribeMapRunCommand");
+    var DescribeMapRunCommand = _DescribeMapRunCommand;
+    var _DescribeStateMachineAliasCommand = class _DescribeStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineAlias", {}).n("SFNClient", "DescribeStateMachineAliasCommand").f(void 0, DescribeStateMachineAliasOutputFilterSensitiveLog).ser(se_DescribeStateMachineAliasCommand).de(de_DescribeStateMachineAliasCommand).build() {
+    };
+    __name2(_DescribeStateMachineAliasCommand, "DescribeStateMachineAliasCommand");
+    var DescribeStateMachineAliasCommand = _DescribeStateMachineAliasCommand;
+    var _DescribeStateMachineCommand = class _DescribeStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachine", {}).n("SFNClient", "DescribeStateMachineCommand").f(void 0, DescribeStateMachineOutputFilterSensitiveLog).ser(se_DescribeStateMachineCommand).de(de_DescribeStateMachineCommand).build() {
+    };
+    __name2(_DescribeStateMachineCommand, "DescribeStateMachineCommand");
+    var DescribeStateMachineCommand = _DescribeStateMachineCommand;
+    var _DescribeStateMachineForExecutionCommand = class _DescribeStateMachineForExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineForExecution", {}).n("SFNClient", "DescribeStateMachineForExecutionCommand").f(void 0, DescribeStateMachineForExecutionOutputFilterSensitiveLog).ser(se_DescribeStateMachineForExecutionCommand).de(de_DescribeStateMachineForExecutionCommand).build() {
+    };
+    __name2(_DescribeStateMachineForExecutionCommand, "DescribeStateMachineForExecutionCommand");
+    var DescribeStateMachineForExecutionCommand = _DescribeStateMachineForExecutionCommand;
+    var _GetActivityTaskCommand = class _GetActivityTaskCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetActivityTask", {}).n("SFNClient", "GetActivityTaskCommand").f(void 0, GetActivityTaskOutputFilterSensitiveLog).ser(se_GetActivityTaskCommand).de(de_GetActivityTaskCommand).build() {
+    };
+    __name2(_GetActivityTaskCommand, "GetActivityTaskCommand");
+    var GetActivityTaskCommand = _GetActivityTaskCommand;
+    var _GetExecutionHistoryCommand = class _GetExecutionHistoryCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetExecutionHistory", {}).n("SFNClient", "GetExecutionHistoryCommand").f(void 0, GetExecutionHistoryOutputFilterSensitiveLog).ser(se_GetExecutionHistoryCommand).de(de_GetExecutionHistoryCommand).build() {
+    };
+    __name2(_GetExecutionHistoryCommand, "GetExecutionHistoryCommand");
+    var GetExecutionHistoryCommand = _GetExecutionHistoryCommand;
+    var _ListActivitiesCommand = class _ListActivitiesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListActivities", {}).n("SFNClient", "ListActivitiesCommand").f(void 0, void 0).ser(se_ListActivitiesCommand).de(de_ListActivitiesCommand).build() {
+    };
+    __name2(_ListActivitiesCommand, "ListActivitiesCommand");
+    var ListActivitiesCommand = _ListActivitiesCommand;
+    var _ListExecutionsCommand = class _ListExecutionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListExecutions", {}).n("SFNClient", "ListExecutionsCommand").f(void 0, void 0).ser(se_ListExecutionsCommand).de(de_ListExecutionsCommand).build() {
+    };
+    __name2(_ListExecutionsCommand, "ListExecutionsCommand");
+    var ListExecutionsCommand = _ListExecutionsCommand;
+    var _ListMapRunsCommand = class _ListMapRunsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListMapRuns", {}).n("SFNClient", "ListMapRunsCommand").f(void 0, void 0).ser(se_ListMapRunsCommand).de(de_ListMapRunsCommand).build() {
+    };
+    __name2(_ListMapRunsCommand, "ListMapRunsCommand");
+    var ListMapRunsCommand = _ListMapRunsCommand;
+    var _ListStateMachineAliasesCommand = class _ListStateMachineAliasesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineAliases", {}).n("SFNClient", "ListStateMachineAliasesCommand").f(void 0, void 0).ser(se_ListStateMachineAliasesCommand).de(de_ListStateMachineAliasesCommand).build() {
+    };
+    __name2(_ListStateMachineAliasesCommand, "ListStateMachineAliasesCommand");
+    var ListStateMachineAliasesCommand = _ListStateMachineAliasesCommand;
+    var _ListStateMachinesCommand = class _ListStateMachinesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachines", {}).n("SFNClient", "ListStateMachinesCommand").f(void 0, void 0).ser(se_ListStateMachinesCommand).de(de_ListStateMachinesCommand).build() {
+    };
+    __name2(_ListStateMachinesCommand, "ListStateMachinesCommand");
+    var ListStateMachinesCommand = _ListStateMachinesCommand;
+    var _ListStateMachineVersionsCommand = class _ListStateMachineVersionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineVersions", {}).n("SFNClient", "ListStateMachineVersionsCommand").f(void 0, void 0).ser(se_ListStateMachineVersionsCommand).de(de_ListStateMachineVersionsCommand).build() {
+    };
+    __name2(_ListStateMachineVersionsCommand, "ListStateMachineVersionsCommand");
+    var ListStateMachineVersionsCommand = _ListStateMachineVersionsCommand;
+    var _ListTagsForResourceCommand = class _ListTagsForResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListTagsForResource", {}).n("SFNClient", "ListTagsForResourceCommand").f(void 0, void 0).ser(se_ListTagsForResourceCommand).de(de_ListTagsForResourceCommand).build() {
+    };
+    __name2(_ListTagsForResourceCommand, "ListTagsForResourceCommand");
+    var ListTagsForResourceCommand = _ListTagsForResourceCommand;
+    var _PublishStateMachineVersionCommand = class _PublishStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "PublishStateMachineVersion", {}).n("SFNClient", "PublishStateMachineVersionCommand").f(PublishStateMachineVersionInputFilterSensitiveLog, void 0).ser(se_PublishStateMachineVersionCommand).de(de_PublishStateMachineVersionCommand).build() {
+    };
+    __name2(_PublishStateMachineVersionCommand, "PublishStateMachineVersionCommand");
+    var PublishStateMachineVersionCommand = _PublishStateMachineVersionCommand;
+    var _RedriveExecutionCommand = class _RedriveExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "RedriveExecution", {}).n("SFNClient", "RedriveExecutionCommand").f(void 0, void 0).ser(se_RedriveExecutionCommand).de(de_RedriveExecutionCommand).build() {
+    };
+    __name2(_RedriveExecutionCommand, "RedriveExecutionCommand");
+    var RedriveExecutionCommand = _RedriveExecutionCommand;
+    var _SendTaskFailureCommand = class _SendTaskFailureCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskFailure", {}).n("SFNClient", "SendTaskFailureCommand").f(SendTaskFailureInputFilterSensitiveLog, void 0).ser(se_SendTaskFailureCommand).de(de_SendTaskFailureCommand).build() {
+    };
+    __name2(_SendTaskFailureCommand, "SendTaskFailureCommand");
+    var SendTaskFailureCommand = _SendTaskFailureCommand;
+    var _SendTaskHeartbeatCommand = class _SendTaskHeartbeatCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskHeartbeat", {}).n("SFNClient", "SendTaskHeartbeatCommand").f(void 0, void 0).ser(se_SendTaskHeartbeatCommand).de(de_SendTaskHeartbeatCommand).build() {
+    };
+    __name2(_SendTaskHeartbeatCommand, "SendTaskHeartbeatCommand");
+    var SendTaskHeartbeatCommand = _SendTaskHeartbeatCommand;
+    var _SendTaskSuccessCommand = class _SendTaskSuccessCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskSuccess", {}).n("SFNClient", "SendTaskSuccessCommand").f(SendTaskSuccessInputFilterSensitiveLog, void 0).ser(se_SendTaskSuccessCommand).de(de_SendTaskSuccessCommand).build() {
+    };
+    __name2(_SendTaskSuccessCommand, "SendTaskSuccessCommand");
+    var SendTaskSuccessCommand = _SendTaskSuccessCommand;
+    var _StartExecutionCommand = class _StartExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartExecution", {}).n("SFNClient", "StartExecutionCommand").f(StartExecutionInputFilterSensitiveLog, void 0).ser(se_StartExecutionCommand).de(de_StartExecutionCommand).build() {
+    };
+    __name2(_StartExecutionCommand, "StartExecutionCommand");
+    var StartExecutionCommand = _StartExecutionCommand;
+    var _StartSyncExecutionCommand = class _StartSyncExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartSyncExecution", {}).n("SFNClient", "StartSyncExecutionCommand").f(StartSyncExecutionInputFilterSensitiveLog, StartSyncExecutionOutputFilterSensitiveLog).ser(se_StartSyncExecutionCommand).de(de_StartSyncExecutionCommand).build() {
+    };
+    __name2(_StartSyncExecutionCommand, "StartSyncExecutionCommand");
+    var StartSyncExecutionCommand = _StartSyncExecutionCommand;
+    var _StopExecutionCommand = class _StopExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StopExecution", {}).n("SFNClient", "StopExecutionCommand").f(StopExecutionInputFilterSensitiveLog, void 0).ser(se_StopExecutionCommand).de(de_StopExecutionCommand).build() {
+    };
+    __name2(_StopExecutionCommand, "StopExecutionCommand");
+    var StopExecutionCommand = _StopExecutionCommand;
+    var _TagResourceCommand = class _TagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TagResource", {}).n("SFNClient", "TagResourceCommand").f(void 0, void 0).ser(se_TagResourceCommand).de(de_TagResourceCommand).build() {
+    };
+    __name2(_TagResourceCommand, "TagResourceCommand");
+    var TagResourceCommand = _TagResourceCommand;
+    var _TestStateCommand = class _TestStateCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TestState", {}).n("SFNClient", "TestStateCommand").f(TestStateInputFilterSensitiveLog, TestStateOutputFilterSensitiveLog).ser(se_TestStateCommand).de(de_TestStateCommand).build() {
+    };
+    __name2(_TestStateCommand, "TestStateCommand");
+    var TestStateCommand = _TestStateCommand;
+    var _UntagResourceCommand = class _UntagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UntagResource", {}).n("SFNClient", "UntagResourceCommand").f(void 0, void 0).ser(se_UntagResourceCommand).de(de_UntagResourceCommand).build() {
+    };
+    __name2(_UntagResourceCommand, "UntagResourceCommand");
+    var UntagResourceCommand = _UntagResourceCommand;
+    var _UpdateMapRunCommand = class _UpdateMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateMapRun", {}).n("SFNClient", "UpdateMapRunCommand").f(void 0, void 0).ser(se_UpdateMapRunCommand).de(de_UpdateMapRunCommand).build() {
+    };
+    __name2(_UpdateMapRunCommand, "UpdateMapRunCommand");
+    var UpdateMapRunCommand = _UpdateMapRunCommand;
+    var _UpdateStateMachineAliasCommand = class _UpdateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachineAlias", {}).n("SFNClient", "UpdateStateMachineAliasCommand").f(UpdateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineAliasCommand).de(de_UpdateStateMachineAliasCommand).build() {
+    };
+    __name2(_UpdateStateMachineAliasCommand, "UpdateStateMachineAliasCommand");
+    var UpdateStateMachineAliasCommand = _UpdateStateMachineAliasCommand;
+    var _UpdateStateMachineCommand = class _UpdateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachine", {}).n("SFNClient", "UpdateStateMachineCommand").f(UpdateStateMachineInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineCommand).de(de_UpdateStateMachineCommand).build() {
+    };
+    __name2(_UpdateStateMachineCommand, "UpdateStateMachineCommand");
+    var UpdateStateMachineCommand = _UpdateStateMachineCommand;
+    var _ValidateStateMachineDefinitionCommand = class _ValidateStateMachineDefinitionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ValidateStateMachineDefinition", {}).n("SFNClient", "ValidateStateMachineDefinitionCommand").f(ValidateStateMachineDefinitionInputFilterSensitiveLog, void 0).ser(se_ValidateStateMachineDefinitionCommand).de(de_ValidateStateMachineDefinitionCommand).build() {
+    };
+    __name2(_ValidateStateMachineDefinitionCommand, "ValidateStateMachineDefinitionCommand");
+    var ValidateStateMachineDefinitionCommand = _ValidateStateMachineDefinitionCommand;
+    var commands = {
+      CreateActivityCommand,
+      CreateStateMachineCommand,
+      CreateStateMachineAliasCommand,
+      DeleteActivityCommand,
+      DeleteStateMachineCommand,
+      DeleteStateMachineAliasCommand,
+      DeleteStateMachineVersionCommand,
+      DescribeActivityCommand,
+      DescribeExecutionCommand,
+      DescribeMapRunCommand,
+      DescribeStateMachineCommand,
+      DescribeStateMachineAliasCommand,
+      DescribeStateMachineForExecutionCommand,
+      GetActivityTaskCommand,
+      GetExecutionHistoryCommand,
+      ListActivitiesCommand,
+      ListExecutionsCommand,
+      ListMapRunsCommand,
+      ListStateMachineAliasesCommand,
+      ListStateMachinesCommand,
+      ListStateMachineVersionsCommand,
+      ListTagsForResourceCommand,
+      PublishStateMachineVersionCommand,
+      RedriveExecutionCommand,
+      SendTaskFailureCommand,
+      SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand,
+      StartExecutionCommand,
+      StartSyncExecutionCommand,
+      StopExecutionCommand,
+      TagResourceCommand,
+      TestStateCommand,
+      UntagResourceCommand,
+      UpdateMapRunCommand,
+      UpdateStateMachineCommand,
+      UpdateStateMachineAliasCommand,
+      ValidateStateMachineDefinitionCommand
+    };
+    var _SFN = class _SFN extends SFNClient {
+    };
+    __name2(_SFN, "SFN");
+    var SFN2 = _SFN;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SFN2);
+    var paginateGetExecutionHistory = (0, import_core4.createPaginator)(SFNClient, GetExecutionHistoryCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListActivities = (0, import_core4.createPaginator)(SFNClient, ListActivitiesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListExecutions = (0, import_core4.createPaginator)(SFNClient, ListExecutionsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListMapRuns = (0, import_core4.createPaginator)(SFNClient, ListMapRunsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListStateMachines = (0, import_core4.createPaginator)(SFNClient, ListStateMachinesCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/parameter-types.ts
+var zlib2, typeCoercionStateMachine;
+var init_parameter_types = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/parameter-types.ts"() {
+    "use strict";
+    zlib2 = __toESM(require("zlib"));
+    typeCoercionStateMachine = () => {
+      const encoded = "Wyh0NiJJL6a5QDm2R+wa3nasIiZ8rauGeZab052kM0x6bT8EU0/HwbGSGrFuzuBbg02JZCzlwCgshy6qvkrFpm00Rthzgqs8/isVpWM0Rti0Dkzk+gC1msuWI3d05cm3trr8vSo57d7/ci3JNiKBbZ5RCeB2xaKj+ntgSfPFW9e2q7AoEuIRCMspciESLNZrqX2UbxDJ2n+lPCSbvuQv0lcIoDHwPDYKvdU9w6F8M1+r030Ot3Zmf0fZStLq2G2NpaR39gaRTxLKlMAQgNPca5rZ9S5TpuPTcwKJYcH2peOzrAtGMqB4Anqw1IXm+wE24MgH7/L/f1oaFrXxSlpNcwcwOADZfTQpjZHVfe99Hf8/2vLHVdri2gelS251dpELSjqhjYaS4FAW//u+Uuvf7I0uPC4cwUAkgYSUeCyl8jXT7o//rDwioCwShDqSqrQqSu9Npomz1jnbBA93N2NEIOwz0JiJFGlWUuZrlJW/6fbe51z36w3AaEBmRABSkpTqfaWy7Fvma9rh78d/OPzjSQTIZ0a9Vlmj/E3nf5lZSbN3+iNr4tDbTTk8CsOj41RlFW4klbK823wv86+ACBJoIHjAAFTS2qMl82fWLLsbiCOA2YsAMHvapTQMj7a59vypnLVRo82/7Hs1ybIizyFcEVxUq9fUxex7gQNw/pORyUnLcddWGIwUbQfCYGbORgfkpnnWWjlokQ8ISicsFRgsomt7/yzGyW1vVr/pq+ol6enPF8RhzCGEELZjY7/8T22ceC/baT6bB+i6EcjdZawqWnt69qmn6+4vk4AIiKgQktQuS5PaSdu9TMo3lgTGmG6KLLjF32fVVic9O1eVSv5ugyT7DRgwfsjy4pvW4zqZ3b7a4+SvjQCQt6ib4gEiy/75TC1g/I9+xZfzUWlv4+9bMQMt+XxPn6brewz4xhqOS2fE29IUqrR0k2Ws90++ahPMHnOi1N3i9cHHfX810RD7cp4VHB149M+svX7cOruD3sWT73oQHgrmuj6PGl3Ea5Kw2le4QVYzj6ECYZI5hvT9a4rQbc9Y4lnmhA18DwPdlUA+5FoA2Q5zVvni+HeWZHvi7TUiB1p3hpYbJGcW1gxLLBvvNucqXDcBBkk1w6GA3rr9nEvCVqmeyLo/RDdVaHBnYqVzYF+EBWungdUBcXOYbUNr8tTFE9nhoEM2GB3kBP6hX0bG5XFt8rQts9cR8YDuz8Gf8QNpqYZ/Jj3PpKmhWAoopciPuKAdXW9viWwuw9wjp0TOd7EZsDnwqXHyv2p7IcYFajl3WIBazW3znW2HJRPNLm3hzB4NKn+kLGzJUPP1D2UEA0XL1lE8wkN7hrxAxn9m3hvBvkFPWLgy2UA6J7cLC3mqU83unWGEfBPYhJv/hAU8tlL3gRm4FQ8TLNPGS0GubqefcExWfBoA2DTkLYjqa0KCwo0/CRuctiUNr0eyOPP7rWsO5fqJ2Vd0HvGGFttFbId2VuWa32lZM5/CSOwEnKh/c6ZgWGpTt2p2Z8mjKRcDLDzIUWXMDm4KuP8rMPSQzEi5b6BfYKy9PvDu8m6fWealr8lIEBhxaYRoo/aMmrSqMgVAiUcdGvu/cvciCrsq6BXoWROwE3Iw9a7tRVbRbAExTbbP8lati6c/cmyvohiQJJWeWr4uh1DrLJs70E+FFl4B8eb9WqRGmYsN8xr/HwNkSrgf30ynxwyoK3w/9JrtXykksA78yIgimD/IIXcLWSTa1CrenZLKpdqfV1uCwn3yV/yNhmBqjxshdHArh1ZypY9tXD5mefPIm9Qek8Sz8VBjdD9ClgA+tnVQdPSmfvz8Ky0gf3Ljn1UUUI8kO+CBGplNgZ9hRL74Z+FYWeYWMQ/MULYMG9eOd1zKxgB0Q/aZ9RPf67SU7pVAjR+NQieW9IH8JLMx5CDC7OS8b+VOSYHrihxngHxecdlHGIlvEGdPzKrwN6xbUd3gotyZQicnOSouTy9eIEQxI6oIZ/WphPuQ8yGPBw3c5LG+c9c4uyWq1nvrMpX3GFZoYwY8jvW5v5obJfLxzOYUBMLjUdvrA/FK9LSQ1NnqGZW3hIo0Hddwh0lT1DsS0nGU0Fdqatcwq5Aukb4Z6mVIRCyVOmPxu2OccxVKUZwr9cdjfEQ0Z9rHnCtINM5ssy+YqqGqAWn7kaIRfGqPDANMAGTgd3IhMVXlBXezmXx5zVdy4DsjE9WzG2jgr68mkreGQPxyDUBncoisCnhyWNUUo7Nnrkio1RVlbCtQ58bIQPtTxNPrvlQLvLDwbim1iXC2g/QMDcL15YPWg6ptgnEFaUfZ0+jsjyGfvC5QkcQUl+bNKzrmyIfMTSuzQ7ePIbAc3Q1M6GAdaYUqLWi+kQkqUA0aMc2IFkOZXCPywHr69IOi5uQboBg53QpTPdJUeFDFmke1SiEayAe74u3lTEClez/lddOv3xsNfvTundQkC9D5AIcvDarwj6EiqKPh3oDB4t2+vMOAhihKw3SNIenaOLNyCLRb8xuj5eia6sC4Po2HcGHb4Tbkk/rpPCql9OfjsIoZ76bU5rTXlBWGa7TEIAAcnrk2TVXYBdRuIRrSSGUeI9EN3tNQPIBaIiMze1i1cnJyXUUaGdqDiU9yWPtknKPUJTkGyMB46yXeOmNEx6omRoRd4Sxv2NuP07iE0bYjuPMH4oOacBWatduJJLXh30FWKtn7SWVf9ziP+RmWyzXCs0uvhBymy4TGI9CeugwH42SEXE9Gdl08MOULwRA/xXChbxf689YLv+dUVL2zX3RYPT1Ndsw8u/zOnMx4T7vC9NCI0XgvD9AunyQ3YO7pEZv68siqL4VHRUwngrtZNukUBvgUHvNeEA0giXU6NkOqAY+pD2yyyYohkBtCk33lVWNJfhapnLxvUh9OjWLIvKlzopZ35igI9Cv5ELRKGb2s6mugt78CpP2kOASe5il8hRJJmm/jnukMpmy8corKgGsGbPDdcmxRFSfMt1MH4z2YOABTd00p10nh5fTI0R9CQ/9/NwndXSpWFtjonk6KfNYP+6oAZw1IOCEmG3FzcAn3ae//vlXrU487dlB6jMrsjgSfcdRXDuY1Zt2nMqOMbM5bc9QkecqvJw/AJBzzKMqjJehuykMAYvVLoabSqwSm2MM8vRH4gQCHX08jaTPxMyBTA64rKYM8ABs3GKgufW9+qnzCe9CBtpFsKoZrAaY7pHsXc00k25OhvVVWXzqWmEw3kMojAbtHYZ/77txiPN1uyYuaIPh4XMs/OzMkxrk072AHM+dBj5qwIUrxKpENltITNi5j3brNlCIlJubd3DDvW1/5nDDsbGhQzJEHQ0iPucbzUawDDGcUKzf7eQAYAJgAN6k31TBUnUFJ6a1QTtbyZQw9ogUowKFHaFQxG03Y3i7BR1vIy1Ode85hBRpjyUAslXF9EIWCnt9/Zt/b38urinE9RHjNuZ5Hu0jd+veID6jgwwiYYi9pRDfm80XUF2nbMoZiruhAktdKUasm9EjIMmgysXxoFFtgFigb+gcKl1/xwAF6Jqd6+8DtEETNECBoOTyZaDD+Wl+497Xac5fUajlEV5Kexgf6jEhZHTQ9QgXKxBjFoPEDaDqPmi8I6p7dSyW8cjV7TuSV9XzqR4GlzBH4qo0DLducyiithlpG61aF8/z1XGGUqdVAGNqbDrUS3ot5NHVAGJy9PsSRvAazVjAt6+wZg3B6mkcNLqEQaUCJrQiSH5ybX43h0wjNNpCl76obxYaj8VMiczK4//+1p3BzS21FLDYkxGSlZQbI8EqxFz0zaIqIYz7P07sV/mBfVEHKZhvdGCWra3l3vpangq/q2AyW1dSQH/31v5Yj+x0yv6cmdrtbXNmo1FWNTQGq922jNld8ttOi999qHaDd9jfiG7vleW8d2WmkJGBn32VbZuVbHf6hRXsrB5d0j/9BC4U0nEzPxBSZy0+U+4Maix0AEAZ3tBjAMgDo6da8vvdTojEzgKE5WjZlOvcFbW2R4wI0DBI2xjiRNZ3IFuDMi0PEXNX7h0eT34zg/pZeKN4n1/XAS0g0DTQCYzv9vU+4f3IGsfQC/Ej07dRnSrKvkAtdxLCknhhNrctskmQrxUAJ7W2yXK+ZWiwCUCu2RerWzSCqrd+dReDrkLTRrfFBUt/tv3xCve6/6wt5lZHFb/NybhCHd+Y1ztfTryg/jwC23eTwTQwyEIensR+sv3DzBod9rNFl4+SKAExvNDAIR8YMdqkJpwQTh/rO84khgeUhTFQGmGIx+H7jhDyN28J9fYwXCXZ7wo7h5bcRNJizqFAYG3xl3Ow0SNl4p5ehsGDDil8SvkGlO7ejM1FXEbXvFFq7GG/5+qG54Sdw/LrxbVzJFFJ1Y9nqbuaDC3ucbrkbwELnF0m6EwLC3y80dPXC4qFXexv1k22uknGoqbdnr8S9ALGRTywKgelBmGcA9sUtdr2mA8J3zYeA+GnyS1SZiNjLCdsEcEGphljZqddHd6grNtpHAog/0gFUPBsA+6CpQVz4KxwaSvCkFcIDSvLiOhDHMh6+JzTerWa8H26LRxsuivCsDqqin6N8g3swAPwpHzlwr+DvebQzeUo5x593iVDgNjHPEONT81PnzMiI7xoFZdxa6nP2vzZa6qBTrJY1f0cg1uIcZ4UpTVRpvSucQ3XBQZCWc4827asrayyeB1T6pg7MGN7/E762FglL+OtMpROndXDwBH/FOdVECZHlmHaYClyB4NGEY1afJuJ/589rTqQPcq+P/0LjjrFEhwtrYjeM6YIpE52Jy6+9lmNBJJysWyP9fdvP5zW7v7l/yLBNbJrERh/PeeQvPvIG1voNF/iWEsAapgSq15ZQakrZ66eE7zShpp87j3C0r2km88jIRh2bVyttLbwt77zKwWHvbibV2h1rKboni+iEiq09hHepwhumuj3AXr9nC4vhbTLrWO40YtatBNKPizVmJh8VZyWMMhZ7MAsbjoCZnXLit+Rq6h1zIEQK4+VtdvN50gwS3Z14AB0ZZkiTSqIhupHW7sHCmhidxcY9vPq6WbvYMDb4Ffv/hv8xAOuzZtIMZHjWVR4IsJviKc7egKxHj0kArJGNTmDXWYJqlgWNNJUCw6qNp7twqU88rTH3BEw3+RxRgd/2trUviwr53dbH6FEnZSxfkLL3gyNdkctdFDVlUuOmZE6qvow8smS0lYeIAyxARlZZjk3LrRkPzAZxUlb43frJAxpHy+NnZ4NwpxmXqPSVGWIFpwBUY+q8zmSWyT9SEU/NpZSt5UXE/MTkiAmgev8RY4HTabZpYHspoC+UxumsRWPPY0dY+wSHpH8QuZ6XOfYwsQ41g3OUDgvwpcIm2U9AlvFAMHCdJqawFL7FFbPeAFQj2IYr6X64HguomhKQviNR6Oo+jWyf2ntIJe0yEHT6LjRy6aJda75TD2HO1YkaxIPSiSBiMxi5h6/lVIgQXdWLLPcKkjoypzXX0tHJm8Z/l8k7Tz/8sT5ja1ibPUTfrk8KhanIV1xZoUXnA+2O8E7I2h9Ej8rYptiuG28MeoH3D9NE8IrAjXLWpjD5r485c4x9gw6Y5cM2B/GsQIRcvhnlnic6FjGs4a9OsJVBROMGEahxQi7kMAhCvdviZDSc+PnBWuCbKGKdMqi2TT3N5QmM6pY9wl/v80RfeYE5Wznddpj8/soC7lJddFgP50Akb3RmaQSxmgdehLx5Em08fM5D63bGAVLD/i94IKWcUFDhn4P8cMcYy+6cgF1fWG2KH71OpWBETPFxKihuKLvLq3nFhYr7icPD4jsVWNex8fa8cGk/kROWgPpCNdqcIpgpZSMZsPrMaU1viPZ23zP6IWAk1VI9epKn3IB4YB8nUc3xfUSrfhaW+R2ZQ8HIznzVVbCW9DLznBqRlQM94iwtBanbYadWcuIHjEY2cYUOlAjHBoqhVU84PaL9HdGHSe42ZFFDvnWy2yJf491yjBrlQPIj4KfgBK9yYtgpL0t8ezOZj/OYyGhu1KTDOZccbGyoILLq5mYs3ZbZndSir91eltpOiYU5YntAmB2YgWDdDTsWAe/hK+feo7jIOuhSVsb2WPWSu0Ofugrwwa1IKUfDfW5bk/MP8NfT1E5IbLub+1bYTonlIO/qEO3N3JnbcZ99xymzOeS/B3wf7F+lr2BebcFl9vf67PdV2m7PQD+HzWEA1pJNpwBlkzVu4AzIOmI77Zl9sE3YVTdu/Qy/Ls8D22OYZgNE5hOtr/sTziATf2J1tov2yuw5stSGhdse03zGtZCcO2oRJzHRIseSaD3bC1xxG1/fMGuLvbay6znnzivxZIsubmsHgAHWQIfPFl36tTzimR7yqFj9X9OY8HDvJA3Bz0OfCIHiPjO9LRwbkcrHw2FLa7y7XAz34Y8kRla4t1J3cjeasDIOtapfYiEopnf4K7B6LH9wxmQNm56v3AVgHT7TLPRQuC8pLM+ZcfdDraHx5Jaz1Mec3LNxc3evNbwr2KmupoowLpPm0Y7SePwMbKqfeUqD1qFn1sFV6k3wIk15x8fpBqsZP/c8twDNI0aWi/p5S8NteBrfB4p7n4TV7m1nouoCG4bCdXdly1TOUFsLSnSua5dQzQe5PkkXHpvMk+nRA7nBALoG0iwiVK79s5dQED2UXZUsLUD2SG/hAOKSbcThuV4Uvxu+1zuAerrroHyZ3wuLs7qT7TeJaM1sgZD1cLhR1A9ckyTxGV7kyOQac0u4rqUywpY9jNoTN+1AFHghDIt3NLNYAjZLVu5alzDLyWXS16n62H9a5Ee5isrYw9rip5IEElt7DU0dksKk6wc9qDFIPQOfTGr3MoGIpwhKhqKVCWgdyoc52K3W5x6IaX+HrHYN303eDlvFPHcBZi118vY+v3NUPkdYFoL35fuuZG9zuBNEFpzw6ipMlnECLwC7TnJiAqhb7P7Z/kwOvXgvbaUIIDIkKSvtge0feIZVg+t/RGagcH3JuKgTBdAETgRwUgNTn1hOWF1hXcBttS8FA6961AOwGumBz/X27lStCfea9MHt9GrW1SrwVeGq1/unShvug4xFuUcDEUq4Zd4Iibm6pmsf8B5ECpfuCKFdDUVhqtdQoJqGNtG/MHlgbpTPkN2GZbtK2tbu6HP4qqqVDDfAKk4HMbwdbH7b6Y6rBQr+6MvPlUjujyMvQve2FD8S9bBZekQRSOkhwg+Uk51AINfHznUP0M4FRkKoPxOnFKGFxiHIneMQ0XZ8py336X3A2lsTc38ON19s/SHHXg2o1rOMYTH9IFxLgVP6fPMOIRc+ZCywpxy/kNtksOOzz04AGaqS9T1bliaRYZ93ea15RrGr17FlVidwTdWVLGCHWSjsTwwwcqvCQ8MS56czb/Ls7Zhd3hlw9WghfLKGja8urC/kUW+SPANID+P+NnzXohy4yGWDr9p0dUt4rwMJcCE4mDPq8t4ugSOdvo0gRwJinaohxDLALUmiE7FuQNWDOLMBvwhjT72Q/6adXgZzXGPhUUtSCZYM3NY5Tob7IHB8ADDals1PAWK7MDlh3+4SyMfb7H63A+prvP5fh6vBh0DYIScPmeYeVPqZ6z1+Ngfw6lfesDgS4TAc+ufsa9NoWmUkzXAD8YRlrokw0Rb72qHbLp11a5ZLY/+nGBkUwjZ7RSSbQsgPIKhsJ1+yWeOcx8OTQebOY2AGDFUbRVXFCmW4+xQGyoIB0FKSiMe7uf7en2ROBnz3BIqurRLCGUi+psr+6B1YvfiYKObw9qV4yc55MLDuiEDKO4q8MUA8ZdzsAML1llPCxKxHwmpZH9GjxN6gbfgDZZ2GwZ2+X3ClbhRnG+pN21MfKFI9cXRPQ9Ox+GwLYG8hzohz/9AuYhh2oHqCznzJRppAsHEDYtM7YnLGEt9EbDRHHqE5jm8Zq+CEaE3ScDWtwS+j5ivRczA5FDEdCCsUF8k99gKXu0EqM/HZJXeSlIPL7FfQ173jZtVkV/kTd8XdRLyqRU3PB48yz1iQ++W+ipMyb4VdXjRcNMwq6OEMaei+bPrrWiAIqG4opdhbCdrHTWL7hoP3ju5gk/g/fPcgQbcIOcj8vLRZL+Czl/cliZziPjE3IPIMKW/22NSWGZd6EhmhAFz82KiemZZR6qTf47AAoHe4B4xVAFA9CEKsf5BlKLDaKPubnFTh1yORB+tLfgpSmCFOOmwxDsAlR2plXZUmWWrPc0/tseXp/YoQiz8K1ctdg43CS/qAYO2Wz5gnDTFfsjMEqdejpnTsWttv255Mdyo3UySLVx3z3+zauXVNhOUrrbwPzJLdj18LFXCsR1SyRavgT/tn7zBVO+TJduGDZfkig+UebqiSLYG6FXVyPrzyc3tbfBA3dzL1XlxkVX8kzGJHASIlx0oeDjbwYEKaAxcCcdAcECAYuofvwJTpAAEBhKHa9oJTS4azCDhxKwjlExxoIEf3ELIkWti+rFr/cGaBvcJSlkdpQpeS6PWZEEDU8QjJveRsRgAfyAfESQp4jMu3L7zHVhe89r9LGXjKeiREqex7lynbysQMPsXZC/btPFg/eJmu1mYONcTAx7DRher1tvsHH6fD6+/qGYeXb6IkeXG0ft09IOSUCCk8+27jeO9Cm5PKSyHmAnvfpvtWx/RYKBFBOExCPMJm/71XK4ZQiB9Sh0blQXw9d2FQi8DDeMYzm1K6521PnDZJf6JaD+jLjSt3WyxT9psz7w9Ty6NmlVFmd+BBQB22ij9llnuPQz485YPY6hn3ZjzfALZWN+hcVT5Bd/pYl4PwjFj+1XLOUuuB8urQaV+adIzL+XItKjDpFvXxvXmQZ/A7pts8s++ze6a3H/CPeRmYv0O/vq7nCe4LC+ZjKjz5dH6D+J9hXoBjEdIi3ipJ66893eP459kTADNDZy7OUH+HlG5pQXcrHVHEuiH2lPrEQt3MEWaPLe/sNWPLOyRpq170ALpTkPCIY6T4MGl0aPtT+ZWmSXVz+Pv57yWevQ6g+TNthJYY1nu7xoCROj44I/HAOKAhfXEVFUn970uVZi5kGWL4ziN6Al33ODkXLX1xG0UfRo1AEXkLHDntFihalBV01+0+y6D4/ja2uKLqqOABtu4lHTfArVu1gHPCeg/xGhDdkbgAsEZQBxQ9fEALsK9VUaZAAaoFNT53ITIwUSqArS2pBVAd0WqUJqaAuqHbP1Xfh3td66RPcwt+4p/wuoFJDodHDWabGFcXrfISYDXjI1HOFuzwqQYxkK1nmwarTiafAte97IMEdeP8wHLegcPzBURUe5XoTmZ0LRk5gGowq/AlLBy21I5ys/ErMwWBoCt+JHNdu8ElcuPIExSbXdMJW/HY4/LE6vWxR+t+E7RbrnF9d1+zubKTTi0n/OjOVu5wrB6ZNTjuxZA6XA3YDmYMihOddYzI/vQ+TslDf7NG/V+UFRc5iMbBjIdmmBnZnV5O5xNsXfLtwIF8wnUnYZ9pgKV2eiQ/Sp/17QCsMN44nAGk40jIyCUGEfvhwQ3Mu9fp9D+anGlYX2KCPDkRkIPcWMWRguRvISOKfss7ZS0ciYER+T9r7w6uWYGRzujSsCheUZ7kcBNKAzKPc7tE+rwKWs7+sxx1Zz5QfCGD2afA8s/zn3B0yBbJ5OWDLblcTHRu8j0VJgaWkQPPUomOtUpL0ZipxMdW23uE+VbIJ8lXqGW15jcjV14z3vI9yzRFvmYtKigYls0f6c3phdRIXZ+AvMjQ68HxHwHqiqsFdh2h1TWPnHt3FH+JwU7F+QbUJYmDgMY+mO9H4urcTlz03BFTNRDudT3/b3PV1aH2o1v/BUw11JGJDtb17MuENSC7zngi3Oqa2N0NLczcNrNDIrrUfo2B5dudE4pNDjxOHCanO5YRLpdsNBkY7uzFIQxLoBw0HY5MYNEjWmcsTgEW/FP57R/JsxoYvWPKUXXHlu+Splfb6Vq59Hc7LDRtKw5WuZy+QdkrmECUFFIvnoQ7jIED6S8fUehukUDt+sQDFz5Y6VIzKoUEPU/4GSSP1a8ix4b5uoIoKHPglU7GopDOrHNdxgsKfJ2/Kv1xQZR6uLVwq07l3qk+mYfkJAaiBepprnHdz9t4v5bHme/M9z8ebUUHVxACHWqKY/DtKG0BNowSmuiD/im3DqGs3r5/Id9Tly7gSPbAFvoXTnjlfbx/YvgiyzCbst6ip1i+X/VB1jzBMO9tefbI6ILU6bCaSMCVmaDZ1/DPBiXMvLKUnb0XJ532t/NtAdmheodObz1DW0uAH+uFloRt+06yj2x3J5JhgHqS++LcRpuY7zSfGjYBKE9phuSq2eP2MhDq4ukTSNx6ASvKKeKbGAjQDn9UHI1PbjJCeRm2zsgHxCkOZFqdGR0DMsdX3zd/yzvVtCfFR4oUwfEVvGB1VC6fXJXLuDXI/xsKp60tz77zeTCtiboejVDasImYsZDHsnWA2J+vC2xpMCVWyigRphaart5YhImzsppwyAsa4NfPJrbl0i79LclemxzaVxFLFZeX3J7tF/PdYpc3vMK+Hs3eC/ep1UC3yTqOy/niGQ/wL5THHxSLTSlxtofHbZQOoNPNnJ+uR++3NLbKXRFEEXpY9A+wEPi3ZdgPVDf1ds/2Bcd2NqyJuPV3mOb9kzvDCjeIj0a8xGpuKJGBOMNiyjNaOXu63hPrf8i5DCdLIoCp4XsAGOrcv30+jF94UuaICr6hjz6YmsLuuQALWUCThPtj2r7Qzgr7yV90N8jMcLCF+awEDb80zm92gEXF5OFenQEkFqoHicHCjxZv3RMd+ncIHJQX1aW+ew9sbys3vBKHRdoLa/8nOFCEmI7yWwPNDS6u8FiX4smMdetKHxYgSqMJX+saPu6JdcD65dLpOAkEbtTJoEtMjvoyQQ3g7nhWvFjY+Of4YITzQdWp2bvheJWtwWvQlhfFPW/KwjPlH76dPKaoHbd3gOIs18oS4WbEz6mTfgr/yL1kjCt75Vt5UK1120XHcHbMMP0hB7kkzrJhGHaHaCerxJXQhDmAOsrI4GDToqGvl8Qsq+dsnizIL9N+JE+mpTm7Vi8ifPtxy4BlsUw63/z/dr5FY7xJicMZCKI6G5fF9ltS3fGzWcRt3Bmy9RzkVESVzltc8evFqOEaZu5HzlSBg2GUuTW/tJHoLcjF7f268571GD5//WdflRUIk1hwg1eDB2MfTMOhZw6eny3MXpaAr28Au7GO7AFxQREEGx8QlAipH0PO8CoJ4idmHo04IHp2DOGMVcHTGhAvf+QU8vlIiIfIMjNpCl7vwKVM5s88uoPs7Hd5UJn+0NEbTw+iTkfwiRl96LRHST9vHet1eXdniUX3sEiS0na+ci/BoxZt3Ck+iCzmJ4egJkbblgYQ2UDecWydhiEAbX1NfYbnRg3gofjf46lpqMQ3TLME1MWBEsP3QoAzmCS0rNo39HMgvsTmEbot5bYwiboT728HyVUQtzlszkkRmo8cZunlJ8Q5IKe9DdDOhTP6hkOt+GY6VSfF5dtJcmnCDGM6t24Jvhq4t7OL87YEEEWc7rDyL/OVveYbV/rlceVyn5zjW276+I2EB9ebUxTCqf75Jgfx5clfNl+VrPr+q5gx2cBAXPDfosbDKW/JPIA7kjMXRwaB+wN3wwRu+mMWxGopZA2+26ljrxS8gIPSwA0xKbkyiPBYKbXbgeC12efD7+hfu/PxE0S0vGDz/oXJ/Z0scL2V1Mc4wbEbMfuXTCC/M6vhqGBDbM6BIXypjpY4hVSgTd0exVcmwtmGRV65a/kTc0oAI883MVxVP1KZH9aBRYIKsnaHgVxiOloxrRUWwrPWXJXl23AWZvffmUrOCdjQMAMURmmzXl3OW0KmaTBwy32QcOwd838JA9kisaDZD/bSSZ5OuRysYv860oX73otWW+vUzY3vu8U+a7DvFn6QMGcVoAWhSJ9MbGc/PXk5JYDdyc7/A9QQYBBf7kRKEnE6ulCAe3gksiEGX13hs+sVPUJSSJBCWD3ZU5t/FGSq/pPj/IR6dow9zvjI9yHDzAqba21qdLMAjoe2DnUwTwgSy4CbO5/B+npp+22BbfcHz6Y1y0MAq3Na+9PF5DlX6O/rUrbgXtrplQOGwydS+S9Z5pQ5M3zGO8ocyQqjCi8UQ8qZ76aXJ5GhzUeeFNpfsiJbPRGA4qH4dzhbcZ09gy6g9JMxCxmwMevijE08WFPossChQzsYAmsYt/Gs93aidygybyKyZvQZALVyD3xuZD7agUeNLFrN/5zDAcoC6VjG807F8vO0fY8AwQyojSgySFNfWSzaSOmPkEAIhin+cpApE9MBz/lDP6Xv7Tyw3AKkO/nbsR2oMnZXbqKAeifBhrc6e3luplyQwcnPpdcSVCbDULdX+p7HIiFnLJnjzjyhug5pk1aDL++Tte6REMcLvsc9d0NHlAxTkB5DyFbrnhr2QWboTIYK49lJVmGW484Z5cmPApj0tIW8l3ZKbMrFAqp2gFnXBNYJB51SnQbAew5XdeP0z5cWz53zAeKRpgT+swHKi7kpm8sLc+r6PM2dVbl49OiYxTjpY2HNBKLb86CpmU1oC5bTqHnah5+CfCY/tiVG1wlEG1081xts38G2PwO0X0tlxTB+fz37QPLrMJJiLG/f2ygHl9UimUE5hWB1qdEAIvuKT/5SywVNAMLBDzfycYYOvseL5cII6RHwy0kDQZAXdPm6tBJ7hC+HyWAD2eUf4/u0iPuq1QxJjDusoNBnpwuSzLUiAkE8sldEybusX9X5LXzG3UUnpcW1veJCdzvwdXifCWMXoKvL4O+oCgfV08QdIyypQpM0T6cbkRHnzroTZ0oAcZIgnIUwrB78bKcOkh4xRLvTlcHI2auv/1aYk4ltSjQsoBQw7nSxQHQ2yWQXwB1ScrwwCDqcXCIMoF2zmSzuW/nhSyyyHnJsuJpJqgeMVGXMs2v19nlNQAJcRhdTivBA4Adjnji2wAg9oWJTlZObJ+jCvFMxU53fHEKjPH9KK1n39PCqLPilZyzZwvFnlnN3CdkffnK5n8IMYoXEkUcnFL088aXHRernx/53ox6rwg4gbM6I17JHiP3X9AznshHUotlcvI7hAYouJ3ujd8artZgwF+ROkQDCdX4IpUMEwLsNazo66nPrW9Z4EXT35S+6tyhTM6yJZfpppiGMa8o0/ASA6t0piPvYITzKzBIQSeMKWUskgaRNtqil/qRCjtO8iMaKPjGTbEWKJ4RfXKnkjieD1Wz+sJsLundF121UArqrW8w6PTMVqMlHRlOAn/VfdHfyxr/5X3mhghjlZX+0nGFWkJQOsCH6Oymyam9OUZHtN5xtKiC6ym0OHyotLizxLVNN8qk8ERYu/En90TO+puOSrQvCbd75aDJffnF37/l66M2KiN8B14PmS+DXJU4LZS5qHN/zEaD1qzxeh131ZHaX+mLf0R2fS9OlHOFn7OfaxlhewjxX1+bMA/Ibye/c+ORNCJixx78p57fFkqW/iHklkIBmcA6CywpQIMqvWiB6WRkqDB4U5rvRFiYBoRKilKeV7WvGZ6op/p0Ungy/PyIY4nGqCET4VgE0OC1N8HjF2rOKhJpzfXjolkdUrwNBsNMIIFGPLLbHgErsulZW67KjAbjdJDiZMiV8fKwgAZZJcfB9tIQM2U/OiqDyQMchA3d1EgxZoDwEJB8WwwiRCkzLmGuSM0y/f7xBiMK8azmGbuohmOLcFqChT5HnZlAV6PaJht76yYMzjY2w7IjyTd3KWGUZJ1JLsdxyrh0alX/+w3xbwZe6yDgbRq4Y5blT010ObH6aBciWXg2px+rVZ0VAeWaaWJRLc8GXUAP9iC2xbxON6ykajCujB80TJaiOWpsVFko09xqxcAO4t+GCLxmhnPzzHlLlYsDLA3Rf4znMQDTYKhXAgz8YwCiA3C1ndAYh+KWYu7MwqOTG9LHROvKaFc++aRQ8eSiJx3ih0sI/35cEuqGwwwfq+vadkfUKcfmu5+LrkTqnztYcAgt0BVgsUm3ag3izYJX0b3G9/ZaeCCFLnyjJjrSIBWE9Se7gwEX3XeXkqJkYCRPXxIDobj53SThqmgnQjXRwquv3FgvZxtaZnY8biAQ7nI0Oj/lHtXfHfb3C9/ziMzmHi311v2xGOtrzyucq+rwxJGOQZOO988VTaDP91MxsG3cUd0MKsRc566Xt7oA9ZlfMMfSkTmFhAJr6Sm+41023AFnNk1uCbjRFU2pEk1IbzkcLub03nZUDwDXNlhPHAgCyViZfbLLj2pSpde+OO6iOnzuAqi+TH8THuvlSJKBX70kOAaiafQ2RGR7SO0ZvRwHa3fxmLURdmimAazXZK1Rnf+WncO/GhLy+ouJcug/lJ+lJVDZJl6KySfoW2UKat0NGa1QG3dGMQAGQak6fbeDoY7GCp9++jKG6Zr/Vwbsgd9n9BlHv+3cho1xwDz53HO0MIMsLpSNF3taQqhithFKDK/B+jwe3uxWdz1qCvgX0q/oZr0GzMYYkm13x1outgRsXQmhNw/zhh+2uPy8dLFtRdCflar6XR5X+2bZAUXYSb+8MxqV9to6S2dccAYPTSArFZmKcJdoEVLyJpzLTLvbqZZCiSZ03gC4ARS/E10i8gQNi+RgzjnUUEFWYDdCLHrTDA4T3y5XRQy5U0ArSJLZJ+NTLfiieYFgJo2kIoukDAvAIfdlacilOKoGoStJqTgsqjvCGaw0Y2qwIvfBsKNDi7pcgb7jHwAjA/iBFIkCj3TZN4Od5Ze2ss2GczH1bgd2e0nYKMtThoXodBUlPuTa/aU1+VlLwVk4rZ+SvzdMgbzYiCU7cFp77iS3xcSO923f8HthAJdUDAziEga0GwvtUHL0d7tEDyBT8f9Vuw5S6lXqlUer8RTtG1KrBdoD1WISoDHq3B2GZIIVSuOx94poDLJQNG0+QaV+12sJMG37Ti6AJIfoZSXg06vu3yEIfDJpUGETZtOEbu/e8eNoeZV/43mDzpXboFjwYD3wfRQU79CyEwoXC0EVHZzvSKoWzviK9S0IPrgQ5teGCeYJ5ThGo+V0R6xHpXnUmH2h/8Z1V2NbzYeT+YSZ+Az96+OMlJc0cA2xuAiQFBkogXl0XgASo0+0J1+ChUqNTfDzD421v+nABY1kGwg7iBeyf5WOdxXzH2qhTgznyUSt7lccbeNzrPWp3PmV1LvQrut3LM7xSnSK694K7utDhOrhbnBj48KSQ8KeqSd9IF7PCt8UHP/nTGQsWAaAOCVEFA+x/IlXwu2IGy70Tpg3FVMK0nv/K5y2Lw/v1wqEMTz+jlORneNZ8YkSi9WWK0BBH9ZQHMZ/80lY2W5ad+mQ1Nb9XzXuTLzc/EnqRshsaPPdUVthFb+/TdEdihdT83HsW4oumViQfptwRffND2QnWHsa0px7TDrThrmtSu5DJb/ByHTky7L9NDcuKKI4ygCM3T8TMB5erOUnk6ztfO472DN7acoVTIw9RvwPA6eGQFjuS4yeB5S7OJFdRqxC0LcVZMfg3c0eclDNBQHLEoeDg0guik4YBgUqzkekMMDv64AbUt5gmPmU/QPMz65rJcF0mDJIxFe2q7Z83WMltoW9Ngcw10YjZvaGThTyNwIN75KsOJPBSrjRhEPd7kUJ2cmBmazxyAJ0+kPypIz7zWZ9zI6IuGzVEDVFwewUeAfUk3gIUIzp4B9xMnFgGrF4OPs6fIdvTIjiEVGKepnItmlhG+WY48C3nX20UjvDMTHFQAI4pGAcOAnhlVvTkBaBDZgS/74T0Cpcnarbn43pucyGEGMTs2D2NR58q93uy5KUrhJ2aGy4HVJyG+SSyUm1o+dOCG3WNNArqD1DMxQ5xX3/HrBwfhMzkxUi+2tri7k/upG3D2DiHzzpRmxqNjJ2uSHNDx6+61k6I3PZW+UKnQjRn355qoxygeoa0NUhw+xXg+K52+/Awk67PWQmGQDuhc84LUxOGKXyPfKkjkx6ViTHTtrEzSZIpi2yc93qQdWmTLk4gff68f8BgpZy0v9/u99vkeEvWc+u3rWN+NNOKgNMCzr4sXDA/jRUFVf6xQpRabcKDDVUtY1hS1hQOrnh2ZEf9khODaTYxo0gSRFjX9/LxfJC9pqyHiM8Ri5bpz9WPdL0DZQaG97esuhMS4fUDBCe2JCPAKb0mmRVZ3Fjxx44/c/yrP02QTlo18gDW1ClNEx5pYgiaHkeVrgYMXz/tut2RYoPTZUtlQboOr+Tp1SLi0oQXLm8TvBa8psl7z7KCQS2R+LrEWEUgcB21KhtSYi9ZmkXGC9j86omRisgstzrOHEvSCrwoz7CFxEdaW1SaCY4FLhN4myuoRibhiaw3+UXQetybhWsNlC/kMGB8OsHsF2LiOHwfUnSx5TVowNsSuYLzcs2cQSeoTlFuprxvQTEoYS0rf0ZipRU5N7tzL9Rv826Vefc5WeIuZMEYSb3HTzlqbye6OtNFkmvkETzf3Q3QV2vODd+5+aW0ez9Je85u0rlhu99v0QtMqJkVHZVB6bJnO5wbjtgkCBwibPxRqQyFKPVILLFzaIszjpzKBuiZzH9s3jz/KClxY2ULzHruK2y9IGYQT0BeOndpdNxTHrtJnW97pqjSQLIzBmZp1GEeQL1QaoQBMb09T/0FscyKDlngE8zyygs44EvWlkTjqofbCl70SMHqscFtY6DXoD3+ZrOQ3rb9CKp2m/6/YwFCMt3yPDv0KiCPpPsugxzJZeMPCzo7iYeTO0RkS22e55IhyMd5rEhPQvSQVSddFMVaQ694n6RAfq5IlJCnuGlaQzS9LUFo2JEHTqVuvTzT9FA5crofDCXGrlD2XbtuPlHQ+N9LVBWt90bZZWi4VHYDILkT6xLXZmk5rsm4KtqqKRUcXYA3P9Lar4CFyI6RjRCAZURZYQNFMoHVxSE/lAUAYhBdLoRwEzHaPXtcuhV8w/BK3pNXIYKU7hFjfTASviNaocBdWFQSqS/qlyfKaPyQq8/sd0BUQ3EeSxrzATe1DVIJqBmJ4A3Ba0XIWscuK1QoD9gNQ0R9OtiEbtBtRvDC9y4f5zP/tcyJ3e7t8ugMm9K8MJSIrV48fwGIby3FM0BW9L33esjfUSk+gKZ6uLYpA7iltDXy4P3jAbdADqYgNtz7IvJ/ZAWIiJjekA8PPDKig5kHRS6NAQG+blSNUEbXCET/SiXESbZVP6xVX+fr0YEhtBeRcM0Gf7UTfNeMi9vEc1ogN9irNodKimA6m8rdD10UMZQxgvluJY4C8GCeXHoAdEcHg6zWZzspIdKYKP7uZ5mKl0UyGJSZwWRe9MIZrKY6mezoLW52EwxWFsDNdJSyeYU3u40wT+YxOPthBopCvHSO9Az5pnoj37nrzhFvHGjONKCtgOHoZkv/NFKLCoiRkyqcVNuvM/iuuFDr3GZUVQTpOqPoouKNCO5A2wYKqjDFJOJWxP+5leOUBJBKy/gczNeQzPvgdpQzRYgMvlNAXlzq/FH2fp0scJWhev4D/GzoDfBkI99iijKZkOQzmyBTplusOWbg/A3COq8esG4QztE6nJ1S6XldMqBAV2cMj3NBJ6DdHqEFjdaIct9d0LFxIC6FpLpCT82gOEGP0NjjQ06uDUaCwaiVp+hmCkQvsb/0LOrCZYNiXall8GfJWstQwJaSC22sKSSVS8NRuZw+xq+ZrdJmCUMwlI5G4SbyEe6wRh1PZxBVjw55X6E1vPp1dnkgrhYrlDRn2Znqx+e05StqfUKl0e0bBWCgp75bx3ONta8qDw7xlPATCxRrz582wZAUcYSZ4eziYxLhQxyXvcidS3iOfXAMrh7cRpL3e+Ld1UoSfPVrqvGljrtA3WnUujb+Ax+v3Fu5meF9s4E6g7sE//Dej6Azv3cqj7oziREjPXK+akzQZBQPBipHlE/33BXpY3irrwFna6ptGYzYgKgVdJi015uIO1OsnHwlILhELOnQ+3ByVPF0jHRgEK5qWRf7MdqYRKE9Rt8jpGoUs6m6qUEu4Gf1ghLBbQXM3lPC2EfBUCX9k0YnINo3HzBUBrcSpxYUP/Ek0iUoV1fsJ7ceLUGZiULIByOPkN9EiTigc8XF2z3oDKEMhWux80wUfN+VsAaJanDoVjguY1T6wGQlu1dDPsjHY/kOVPIV4UPaVz+j8dhAjgOen/+hOXhqRK845HmGxGZDOSOI7NJ5ozh6WbeOcz25QW4LVE/FdBGOfrxJV17gNySdztTGm3bb8utsbaUPVoT6xzzqjs1Toua/WOTixw6VnbdZESLDn/ca+34bVVs39zKDASSmL3SszmQAM+WSwMPzMJhUdZKvnh8zDkfQqA1lPOIFxHcSiOlR14m/NqFR3m1j4FYLwKWFwsXQxlhQFzjwlU3qLQO8pEDF7M92gUAsxXrlk+gmODYdpPmNnShAF/j4ptF9RATfdxs7igGWoPQBOc/K2gLHaeBhFrmyu1PtpNlVLOWso24Qcg0rrgXpKlPXZRi4BYDqdnbwuQmPFa4uO/aR3nWyv/gwBqWHHqLeMjy5sl3lG2gWag28g3H5l4dIXJzLA/h8+ZCXwjMPYnpN3fJ02zUBKV/jIaYle3jfZqjz2hGqcxGTPYn9wF9j95bhHY5bCtIwyduJ+Sfbbxu5YmZRcVxm0zdwYptNvvp3M+fWfLfs/kbl/SGNIkM5xCXMgdyKsikdyLZUJOCD4+IxoGHwkPqxctrnDyrNbJbdgetNAIXrSVgDOpVqK34A6DZeH4ee3XtTof1pwL94L3gXBl8DbN2lxlkBc9M+uaRzDYVdoeWurAvnayYlaJPqyUS5DOkegA9E7bDQu9w5tmOq4wSViHWOoG7p8bfse3vKCCmgaocaYvqdPRQEeTupowq/qiJ8ZhAz1aIJi08DAvIpAXwtNQFW252AqZObnnnfNQUtGy6mAiTnFADNSog8oXYnnaPsn3L8F5VST9KDxEECQBu6J4ZsS3a0O99dTluiqiT+x5izMoiIpXqIaWn58z08yD9m4A4JSJIoW5rlZJRBg0clzxFKDl1sBGcQ4/0kgvyS2BsRw5wnLF1DdyZy2XDhR45CHVugA/HwJlHPP6Rz94XoxrlVLbOVexAV7SAJ9d8NS8HxZp3JAyayYKgYH07VMC82zMdnKLue/4QuT8j+yuHyB2Axhw9noQ76RjXw9khc7TPeaIB1Z7+Wouc76FdT94unKhDSL4mSBSpDNxPyHTsKGkSOB0ocFfsBQAtM8/xWXb48IzcBq7WCVCVieyoYPCnGoVbTtxcUsi94lqxZlDfaUv/Vu8xIuPu1vxy80U5cHM04wvaXn6xJwxloom4LyceCNv1h5wqaATmqRA4qD9Hj0mc71kbCxzAF/BnOfGGzRVohgoTpVnEjZh5QYwnsEjXgbPDWqGlNxfsZ53RO1bQE9zmgpwYoPEtnB+KsRkUjaz7rCYKrzas3Y/d1JNEy/oamhvp5IXSyNNxABRnbXNfu+NINyOS5t+gqBCpHfrxadPEdvIFYSmV1jew08SiBniJnFzMCn4Haofisj/1Hwx8U/yRM7OWPb/o+371dwBdpA/wFU6T+Jm3++GL3j282YXz7gnH6TaN9PEv5v9YZ+XWWUqXWGZn+XlvGnabJPPlns2Iyv9u7+zj8ter3v8Ilfnv4s7EXgq1xel65oJd2dMu/94xDefwH2aVDgqFnKI6+6Z5i387Fl3TespdB1FBxcMiGD66YuI4D0i3dPWQVQChLUHe3HBjqZ54v5jmo2HhwG9IRgZQXZ6CarzR1cOMgRb0/QhFNF0DBAA5tKYxC36Bc4tNZkj9Logz3ibVplqo2lXrPopfyoESVaL7pii56LuS+VM8vab0Dile7Z+uVv8k3KiKZZvhWO6TxkZ750/dnPySy5YqxOPS/uAiQFSMqypLO6y7vNaSOIsCEtuh0si4x2Qb+JLsk62U6uwmKXkvQlPE2uHWBbpH0yk0h2BZSfY3Hk6va5zW1K6yCHchura+v2BscWdbLClNkeElTt5SIHkbaG6QfxkfXw3re400zTYdO+djsinQ96VPiCRCI6TpIsvHJtSAdVSyDcnkzWrHDZGno/jfjkQtOO4zXz0G8/uQT37pYB8rAHilj8yo9KJe2YaCXmFu4dYRpSc3DueTy4C2lIH8lQ4ZIanyJ70rvORdLlSXDc3Xi4MucVxqdfaeqx27UyRaDm8TXKIyZ29boVb1FS6oZQbpAIrJWWANR9wHgha6JwoAaWXv+xK6VyTAjCofvpdUbiF1zOl9S0ZZ2GHcQZ+se6GooAqhEv5NQIOkihxns/isTVUDO4FnszwHeP55EF22MomsepySKuebXG5oHg0cW3BAqO4SVjoJAAvtI6fHZfOmz2NYk1+kuE8kEdhmJS5Ix5JR7/HoEummpzWzOaVNsednTEdMh8uUkzeh4o4hZ7DxuzoZninvV6iTo5tedgtTQULLA028UfWbI0tuD5VXjnhtYcS3U8fp5bJLJa3dhx8MQ809GkWuiwV9YjmUb2OlB7aTU6WAs++Hg4r4G9unIksr6m+JrtTS7bIkah6CgiJOBZEHwijN+0qfDIFV7OZykdmQIsLu4bgB5Cv1JYyOjgJ1piysFjCOsAnMi0xBu4flK9op0aHnNPBqsIQGONgqIabTn83KMizCxFj0yLVg5fqtihYEV1F26vbdydWLqvbUnqko6lnhYFwCn5vaSczAAppOwZgqfXol4U0Ewv8m53lZp8pMEAMupASqCi7wtKUn6Gsx5kF/A+mnNS8az4TgkRGycziUxvonbgtUvJyY18bLLSeiFearRuDTE+UWouJLWREoia5HM+JV77KdcIUn5urQI89rGwxKLUTvDjNo2SDIARMmm8kTHGSfOQ4JE9SKIeOeqpqO8S/KTRorYumNsSXY7Kg8EoC/Zd/g4wLdmWWAQncJ6zRYUjo8AWRQhsKwE28FFXJucF1UIxW+yG4jBlNSKak6XHpaIraa8O+NLYkme3XGHeoZeGIXkSNQP1SAu3vqXmCnBx0v7fQEsin0kzBhEONVKkh04tfP6WTHoBA9Ic/9PrlxJDGv1WVrd2d2RHoqzMqF45tTAbvbHWgak5bLxc4tyZZDAqVwW8afPhPtCmDuYKkPtJgrM3G9UUUGiQUOkQ22z4sstnwQ54smbk9l8iHBOR2FnQe3WxG4NfLnTnGnurmMyyI28FwFuigX6XrgF2L0xmSgDudXzsNIuI0Dfv4fkMfetOZUlbDVUdCbAhmVu+ysmbgTZ49UVDW6W506A3dV3nCBwzZeWDTlWn/QnIWMihV09sD6sKDfWEz+nhX0hMA7FXIln39qsDRrH+o4LP065pXHuFdHJGTn5bqdtAzzxhLKQPVeKjpIg6l96SG8axsiZj2rFI9C2iSmKmizQc0y1AHzAwGFNULm52PgssuPJtG3+HHzyVyl6jZ83B16OqDIw96RiRnGd3GskjfT9tqGoGAvBP3hp2YNOwF5eXERbM+Gw2JN8pkiZ72itbRmFHAu5oteSOSWiKc0NO6K9L2Qks0AdLTAVVFd2dLgxrcnkEFbGpIHzlnzqOBlJEvP9jFOSfg5YaI61Y3S6nqXh4Hh9+x2QC64qR5mjpGjwL8mRiJVTHJXMjGK1vo+OpsrN3MGclhIQ40vPdmjobNT4q6My5D7Hi/adtcHssHeZwl2yK0PK1Pe9vZK5WXCz7K1nGUMxd2hIOFuTzo5IZn/m+NuGVhKrJKm0a5aIvZLGMfn/F1y57UMiEoCHI4tEMNSlvlG+iMyEyA2QU8+JOjdOUVVksPsXzl0tqrN8+5qNFQmhHhYArpyhn+iHKgOWjmR0m7vDzpgqMVf60M4hpkIwPGZ4mFNBTUrM/Abe3NnP8sqV/p5hKsKkk+3EGP9pST8Vv7ifXu/xae9fKKdHEE8A1kLSrTE3eBOGBbnIDdQybtEsXS3vv6wLOKD64H9YiRfnZ54oIQdmNQbooEWBPYYQjWgKYBRpR274rnjoQjKWqeKRh+xRyy0mHU8XTU2weOWSoQC2T2h7Tnele79g3tVxV+xLEBPzLx7sSm5sQExjzCM6e27pEEeYaae+Tlj5cQ4PwXa4dGZy+/SMLTSsdDqirhES1k5rCmS5hkQOKSYvrnRhflfMjLiqKxWTFXPH/JmRFfNY+xIOI8zhHvnD+9bN5sfNClFciDp0oUcqmJ2oI9FBPeTkCsfiaOSR+7JkzPx5eD7rNKkSTjkeyh0C2SOX0sP7rLCJWJNhtgO871xLnjQJYRzRWgOkkGOMyx5MKR8/1TMeqHSd2AFS4YkG/xgIFpqVKIDNjLY1zt22KvBQvLHveNamdSvYae76dN5J/vCj/PQGL1gmY3mFv+PVGs+wXmyrsxw5Nm5LrEyveBN9oNkHnjQiUwDC9Jp3hBOKvzLBtUUe86cznH+rkoy8lv0a3vJCCeEKHzp0eoXtNsrQijl9wvSFLVFBmIyEi0iRI/3L3vmxyUE22vLJ9mqraY4RJVfbXBux9dloSk4bmxQGcsnx9GIZzczmgzRA3C97tppPIx4q0JkzuGQuGV3Ww6XD8trQLhFnwoG8kP62Sst7w7bJYbZfb01KNfy6q9b23kVkeZ0nWZOQqcmOvC2MjNMIM3lr2kjATa67wtwqL6b1vBcPrujdmqY4BcNP5iktE2Kv1j1Lj2R/oU0DxWH5NKVcM/kZWncWI9bkE6s7eMAa5T1x+0gOVB1AlmbqjW5L85xO96MWsjV/l5E6IqczkB+CD2PGBgKaLWRlPB9Aalu/CK8v8yByqUGmeGULa4Cv5CWFDQFcGmWv61B7iORL0DrOJgbkwK27yazXXo8LUK7LZKZuQdfCiJB/SJ/GWLxYsjEokw3N7CBL77OPVN9ji2SQLTVebpyyjWlMFKYhmawtr9OSeZGf0VldpHnoRqXE20aNTdsPZ9bUchiUN7L0p0tJYz1YFQlqNYwOZfAjuIobZNma1MzuwoVZOtqThaj2ZVugJMIps22R1vZMr3hxM2vwcMVqolG/qPjHD8ABrqYinpwpKSZ9ws8Yb+LuAEtFVtTH6IexIMfkKSa/CpP0tPk0IhntYn9x5x9jrNxtQpbu9A0drNsfjbKTmEXVvm+phkaFicHM5jxsYJlOc/CujOfiqlvau+wPzjXqcbsLlInWrTKmJ7OVjNrUMUdoFHH4ZOeN8W8ImeaQw9HKHoB3T9dPg8T0oc1KQL84iA2gnGXVUMhk4UP8OWoXzb/TwWUz88MMX5d3okEVMb+EaEtDrnuEL20K1btqMGhFLbCqXgEia5XHGOluzC1PB0zWiEt0asZc5khXhNY1MY77IXx8U5S9zNE1GPh63PWZplCXoYYnX8TWG4NLIsLXJ50TdyMyzcGOhW65BgMtMumIqePnET7rk/QDaF7HLrwWvUw4gJGGPSZvyKFNw01DZGfnREjNzHRQOkOa+PFzu+80nSCqQ70XevNSFg/6SqmlFDScbJRXnc0PWp6R1RkX3fohPAtcbukThRzshy14GEUiAlfvBBqY/VYcOkOZoRrX6B8+C0nVbiLewjKw5wk0shgGJ0vie8TRnhnZuDjLuBkVo1bVjl4GotHsEZYzDJYaqfWB9jBMCh16cantXs3dEHzheSWad1HjgemwhXP78ihcHp5uc9e+SZge2dcw4srrILQPaBt8nJqp/Vl2AoENCu5C6YUha1uWDcGcWKZ4M1hkB3putKt8EKw0EtmjjpV9s+WMLcl6svhtdypMGJA93G66b7z5WvbOnwsAohgpdlBEfvkDIZZtSSXF3WDbtr0yNB+sfPE7+fK0SRkm/YKs5REHUYJf75p5BmWBKpl/3oZG3ydDm0un434fIrH1xG3e8ilrpzeNEl0h23q28F3pItOZTDz7FIe4Xktn7cxcnJmxMnPtykHcxJhxjJj2KYdb3pqa2ODr1997+uKtGX0R3AfyJiTWv6ia8KdFq7Q/722FHEOYz+bwnPh20nCTq9k0F0rWHAc5i4YfjIbv3JMVv0JpEiMO3F5h3uukdG6BzwFDeX2Zu2NncBAPBv1rbcpssaJHbEM1JwAFldYMRaohykzlLxjiqIXSEXlSgHIHOTRh/sZpyG1zB0WrmnPJLYXoZ/DQxTxsQ7WtkaSbh0FCbsJPMrMmWYPS+aXcNqCY+leRDSslCF+NRgb66n6G8mSZxLP+EDPgXnvedf4mUX+pYJQZ3djIDlos37KMRhb7pN7xHDn+HoZqEUkXw5bYFvPN6ZlVdSUvs03XAJ4kfdRb67VgxdOd+cHNNf2E72M+WDmTAOmm9oOnH1xroLTrf3YD1LHmYk3cwIKp2+M+nwOSheFvcyNXXcRTKd02bmuJlrwE8HlQrNZsfYgNX0+WdgL+2/SNeUOfPHw+b8+uv/3t6lVg8nrPm+p8c4nfGz6TUEsWf6GfIljE2Qt5/UqvQdX8tQupJPyuEMw2cupSQF3tQFkg0D6nKV/9+Xzrx/pyPMUMd2lRVf4z+5AvdfiLQ6v7a8e9oO4Aq3pnMlakue2/lxjwxJ1e/Wb54C92+XZztjKiBc5lGi2fZNUluVz/+pkOsoNmXxoSWvUAPM2/0Hen1hUsrJqRNvaehQ+QBsd1FNPWSwB1QkVp81rRpyPSBLPS/2JnScI+AFWnYId8GS9JjhRSw7M4H+29BM/4eQTN1YAASUYBOY9kvv92SfLtHhzSiEAT/TDaPbWWtqfSo41gT/lC2yXNt3HIpr/fj1iGn68brnP8SIgk9JOLiHyaFMYHyMwBmTWhHGQ9AafsP27h1kVYERSWzPdRzJaVWYaHAjtUwmELAunIsgVIltAmnWK9lf7LG99u+IdvAgrm7Ydu5pY1hhfbsAr/1lQ7PTnaacstnyCi/rdIpZOP1/I8UCZ7XXCebMJPM5dFfW6IbZq/m2fkH5IYLmO+OHEC+GEM/0JSyZWlCLjOxQxLjz8a2y6U7CmY0r8sjLclnPiREQRycZQ+gwDJwEZFegsypl5RB8SzqLw4+YRK+z8LlJ/YzGQAtX9tlDXSR/35BXDicKKqt39u/qVt9xY+RIMRxsEcZ4Xeq55/TlRNzBa84ytIxwcyFq1pOU/dHDOPeOKJvPcfOq30BwA56b8ACkq5Fm5F0dtb/IaBAET4wa2z4rg14pw4LpMQCW+8tc+eeFwzx5G41FleahFI0GT+sgJxOWwxnxtjS6+zxhUASGgiCy+RTgA564SnxE6UFZ92JMu6E//Z8T4JGXPAUiPkxx9CZ77C4nORoDjxJOH1Qtsdhcq1ALeHO4D6OPuSLGYGKG7w2/0X6rvv4uo2RirLxpT7tdGoN/aaxjXj6lxyS2KgfwEP6hVJnfUZqqRWZzXqk0YzAHT2udfVkh1QkMyMIXTChcLiyEOd5YeSxevrUmE0MygVSJM8EuBto/oZW46cfO6xGWbyecTmAFv+wSbPAZzkOBZQX39PT/GVBiklZi0IaW/7F30GunVFHudqJTM2e8usnRa2S+77ZkorLtGOHghkYhTw/0C0iV6DajjI1hl4kJ3xAyTsNX+JwgrWJPzwUxKjbtyAzIDDlqykcaxg9qXuIo8Wqd9Z46yeH8YPHi/ocO8LgnWzp9sE7l4655oG/lPWDUsj/IlDgOaDfy0Q9Qb/FKdmwHvIWRlFx1ACLrsfs7KAd5OfQFCfnQCuK9OJzpu3AdidMfeEPoD9vzCBEyj+hrtRRmvc22X6R20oPoPsvlGB3UHLVCznuLXi0VK6H14fC/OEZMbgmoQawjGFy2P88bDvDTUkEpOdi+0rNRixgTnjsX7eYteftTVU1XAxmZ/uLErPKO0YoM55ic7neroyKTC3qFI0/XXB0cZaXOk+HWaGu1e8UcFglm1CK1Yr5F6DOD/CkOywTjZf/o2rz4efhK6pCk6AGMPt/1VDXSnXAz6HiH6ywMmZHREdrVXhHd213eu+qn2uGhJxbkxSEtEFIbKmCUG+oI3EKed8PntEsM92kPX3u5DvC4zI96NwS8RSWAobkYAqa7fwfs6He1pRINxEMwgS5pDaX9wrlxec9YCHKPWtglcDNUudI3y2ytc7PKUjSQbYSzvTxPvzMkDMj7/h5RKweS5j8S02zv3tLt8KAE75pX+o50H0nBNFFdCeRi63VnzT06rX+oiwnhFqbJREbgTCe1Y3veCz4pNuWAU2ti7ZoVIZ3TyqeZ2g+TlrSz15liPNQ767wmZKqnGGHt4EUROLWOFKiijfgex9Gb/tY3brWraM+N6ytY83KYaj4dAM891Brwvcu0Z9G1M30UbpAEV2mw1X7jfK3cpYvYl8H2TdKnxyC/SGzzOPbk66ZqR419UdBIkxZAyzq7WQxzVgBELJO5MJ0Plz2LxHtFfF01KNHWiM5sX5GumzfNoWwuq1NmIn/BL3cwDrsJpEQH1mTBiM1a8FKh2VtatdTvj+s76nKJDmivKkzWCf5AICmtQ74K0O5fVBXrsIOKDJBQ8fKI4t5wgoOw+OsZHjEPit2oAhWq9ZV5vm3enwb+nxbheL2sbNH+iu3gpkj3dZnAtiZ1+1dGsyeeBZeMW7NCMMiNXCazPKe71paTGsxKxDe8ab+I0ldsDFc2MTM4pKFHpAMMFVl/rtJoPTA1o1/nuBpUAf03uPEcMeHQ9hEKtiDdCabqoBU0smgFJHRo6Nrab0Qa/uY1gHZ3S86i0YtHqYeYH9+/7BYeDvB2dx++WICvx57wmXh4XIQ+7ZhxYd8ll+SNaA3yZJ+CanJsZm/5samQE0jFkvXTN7CcODQv9eva//CfgjJJ05kSiMN/NuEixzk9gfju+5iB/l9gb80P5BKAVgiYqXnLdEQH42H6uD708xe4VrAr2H70HMjyxukc30839yy2exLUSq9HGHmgy+j/hb4EbzsxQ30HRyV9nFP9ny/JN68wRoRTfcKGUmkGvmoSwuHytu5roD52vSg/isE9l22CHYfo4eUKswbkc412BhXZa5Gsp6JyGqZZK35bjmu3176IJrXGGptz5oUL1hbOXqNdIByi7o99cD6kxwYfimcA9bqG/v9fuwIxGBnZdfQVapLOw3AROh+eA1j/fxkUU+Irq7U8g+Jww0+XwVUon5YoUW2J6Ln9dA/KgV5CMfAFFPKc139vaynWgtiuwvbcbjn1hyRiWoK+pFyUAmOwUD382eUputrzzc1ZKk9FGRt+LHgAM72amiFFfZpz5oTp8zQl9d/f6Y1F9LhP8Rb1/DkYR1ZHdVUdnWpp0Uca1/OC15VjgkEADDOiUTBLNdeH5q9gO4UUiuh4nwbd++m3HrU7T+0e0UQ67gy8q+bevfsMY5/3/GM6R9k9sl5H3YHPNGk/tjYYDeO75KmfcHdiJYfjwMf+XAgp3fk1bk5jpLeYxJ5p1gPNGH8ccOHTaNE6LPxenwpzc4j1drm2PqdSmgXfN3VoyfA3qWZGaCpnNsIIgnIQDtLeZf7hcqL6QFop7gJSnlWoZ2be8ETFO4HUy1VPiodhA+yKsZzbZJnup4Q/azstJ52nPYNCIfkGKwPvF9GleMKqc6786Q3NuipSsRlxo5g/gfcRTj3Qq+/csaydRb+6SkospzonvxJ3cyXSXAPYuPgIKwivwkJl4iCePP2TK0NqF1/pityPKlLPRpLtkRU5d9BKVDMTALnIhjuMkOIep9PHuKJBB1ocL9N+B2yF1q5z81pErLUN2PgbPSYEq/ePBzhoIlIkawdXKzwLKwEYML8XoxYpHbeR51bN6dYvQ6YfQlSWxxBG8q08hClk6x1SVNlaxvvkPLPgTTblHMDC5U98T1U0ENlhcCeFSKlT56GlqmAYKbXYSi7mzsEyT3IQMr853YxQ5u4dud18AqkgNUbfgkxqJFbeQ55BrLfCV8iBzKt3legWkNoxRD+7sXrgS9Yf/jr6obwdiK+bh0K61r5pGcDPSehPUIc2cysVChYVrkwz55FEPWyZZBaWoJJp/N4xHJaLrI+pJmXgKms8i4LzDsKYDpgXjlXDEl1Q0vCdalwDdU3IkQv8aW9wQfvZFVI2LN6Wu2fPWUnsYzRfkVmImLyYQtOiwuiO8BPz8Gs/JHYNkg6HVoD18ekTwQSDZUl3KJTQAv2ab/MhKt1iTUQaT5lAKg2OC2TBrBhP/a7N60aj0gb3y1fCe/d4t02ab/JlZ2k3r+dxKbdJxbAlOVYIo7Z5OMDaUPzUmgtq9qdmjgOp0t+yuPv4Xie1yGTcEG4p+3ZV8b+BSZ+KbIGUkGbVIQ8BhTwaE80uzgKvZihDe7/bhc7nFg+Y763wkmhj0nnwoAkoVThGTZyi5kNw9qPt5EwKshgxZ46m+QoaatQzYKQwwJw8HEWlsA1LWf87ScmQZy9R6Xyl/1sHCDz4TW4BIJqFeTQDZICeHOiYMU3o5c6oA8lEoMZ/g+0IfLrfxy550aCO8qpLiLEdJXaM8yweQ5J/oaqkhq4RqkWWnWd4muTQ/D/KUBKe5rG5sOaclvAknS9CfmCIRtl68uscIR3TeI7EFnB7jp7RYepqAQNh7hpDf+H4+eQWMd2jeRbfuwi6F9PHRSFgzgK3ofRuPFPi3lJe6TTI4V6QH8a/xJj/lBFqsWFTzG96xbMD9yGPkc76QD1cc0fkafU7aFA7yCfIp5M4GqNpi6zIOplVjxnCF/Wf4PExN93Vc7wNGT3dzlGVxkO3jjkX3yjnlp425c+HDe0+e/h+Da0XE8ncCBrmqTjpHWiUN87zP7VB1mTQbNvjG97bMbR+Kg4GxXV4JXz3IFp4VJzjsjQvFhmxRjbeUWnL0s8i7XEOTtZG2UwJyiSSArJzi/gbl87UegXMyxBoabCvBv/W55MoL5CQcFi5xM7vJKA/kk/1Ajk0geQy4VZosALV9SyIQlpFxDa81ZgGeeu+zsEOWTMvX5KExQwWcTNv/69dlFSW1y6th2cHLpYaM+GAzT3GQgM8OSPwIk30kRIDujK+VOpRk+3s7wNpl32XOdSmaBmeNQKage92l435+dGX4GGLSWYKTM+JTmcHPytHk/M2atIeatfldeI4wwesHhZbyEzDNBQpeJoC/rSFPxora0A/mUaDdpo7jQU3TkOz+nw403G3/G6s8ZnUYTlVzDu8mYp5Eh7E1FeN23uAArjWtt1M4bi+CuQf+Bj5SqaTsrs9Eex3Cud4cWry1HEjlNLbVcsVitNWRHE9lZw73k7z+90p91vlTVNcyBpkGaWO/4A0HyQezWaPUITC4vA1ICii0bKFY4Q4nps6YZD2I9rfGT76TYfhogMe53CPQY9pmmc5PX0c9/NM9knIfDbeqal3ebBsL5UMJoMpLVrizHqaNS23HUvpHJF06A1XxfnRuz0jTfTbpUeBsciyoBIJFmQONrnIwnPPr6XkPo5cmbM8toJH2d2r3Sa1HvpaNz/QcQ2FyDOoQhfJ4kJQAyiQXTdixdwjns38aR/SzvTosOQUbWSdANxD9SkJPO+NSF63qDerCOR/kECGxRLqd6Kk1PlF4aSTM9hNmbgvINrXGHM3JNAB3NJkafPwssBfPegiODv2J7/JOxEyAcUcMNKi3WpxNQjTBQ8WPVPCHxwk3YM5wFsO2E3ocP7rW2gGzfA2sOKvcryY3YfsAqfOynchZOjJvEhfqAswaKQXON8T4hZaGfrB2wiYKoAiHvaGzKGff9Bd1P6rsB/ap5n5qq5sSpD1AOHTSlA40Da5q8fuS9p2MindJUJMUzBpRzppkVrX6ado6bb4RsDYBDtCNeRqNMv4EWZ04QMFdeTkiD+QTMK8xT1pZ+QAt17rGnR1Ks/we6HRtnHsSbwhw1p0MrhHlAyhk3D6hrdJCfppIAK6gX7VPJGJ1SrGjfWvO75a0yPO5Qwza7S9yfU0YwExmaP4LAXTkUiU3WQbNWBqf4+zHBLyOWGSjZ5MEBESlbKd+0MYuwqV/oQgsk/Y5tk/Cz4erHGrsWljGxwmky27aG7ga8j7DBV/IVoHBLOwuQhd9hDputWdnrMgPRRm7Agwi6q+YcTJUsDVm1sirwfqTZZflEv9q7vOkecsl0kekqczGbqlr821xltmCV8EYayiC81VpYsX4uSHfk1DSMOg9Jgaa5ephIiYfFXiFIP7QMGUn26vdI0ZkLFg4giWwhTm9ZaLGiPgkUrdUwOMUyyjo6Cb20DosUfUpOl199hi/lT1/YO0Z0LyRq3zdkthCa4FbzBd1xsN6zHge3Bd2zfd+3hiwO7pkO498w12Jp2saMBbf7Xp3Y2ZIdUZYWfYh+EMIR2+LxRNeuQcGXrjQxysuP8bVlOJzo3IHxRc86vn1HWFMThd7le99neSEz4rsZJOIyB6q+iVTDQKxnCWrxoTn1xqgpqaUatJQbb80wexKI9UWtOfttXzRBdPXqsEHV0zjTb6YcEpSLedU0CCn8g8PSMVBA0gOq7VkM1UlcD/Ol+/VJfelR6BhGTylIBpioTqzH4W/7/qlRn6ok3+GeJnYaU/1ZM+lqYAMcui3wNNFGsGeSJvkcPpNoBzCNTUjuWYJ8DG3DCe/o2uOfpmtcSjsS2RObtCRNc/YX4Squ85NoR60nMosH/u3t0+T2HJQMGKIGoG4Y0n8NlqRdnt8hfpzIlsJkRy3FoV2bSYHTsGGxqSS/iW8d5wRO00/4aZon0IFY8OW/fHhHv5hghLuLI3GTfscg4bC1+vVScwmk8Ep/c7baSDjQRLcSZwTpLFFDtK5k+c+wOgF5ezzNa+H7GT0WcfwV2+NP3/mMpp5hIU2Dyq8NMxdakz2xEclCLGZhiO0XMR1bz/8WRZDCakYz43b496pHipeFUSiQQIoR+CEkbohqYcfCTiLQD0nZul9/i9M8hOCe+zPjyliR+HYfzhLppncx78EEfkp8gWjgUJcudBeWwrOYLjzzaPNdRmrDrTDZWEj83Bp3MUVgK3vhwVoZlUsm1fCCYnGvnpnmc8gwN8DXLt4B5baeJGt2ZAacz52QNIOEGe07KTSoNWgH+TAjXCiadVDYRAUemi/9Z6Pi8sT0ZppfvUr087fEPiIHTfC/hQNaFKWy06JHX3THFIKQaBAzty+t/STPFvo5KMquigp3ZBINCtqf6UCZoGwdIw8C/TXpjEDxG+o9hljAtOcwh0IKxmLRzlDVRfVZB21eLDCJcR6jQNXdZPHlGQS4nERZqYD23an0g6U0/SamPzFSsCeS1ANP0yD6M7ggeH5e9MAl4z8/Q8h7OGa3wfpViHPNtlbMCgUAdUQAviJdUgNHTjFU433JYaCwDHhJteQt5CVBMb1acRPYvwCBNJa5KHQbLxUa5OPQx9wKaaajbXhr+wHRVDZLGWpip00zF4agFr826vYY40igmmQMIqfezIDuO/ofTaeDqq8pl6i2vL0v5UAzRjaI606mpkFFv+kW8xZlnzjZOlWcy0YQTPVG+YUl+91KUcnUb3BJD2SSLD2aM794lslJpqcJleQQQrl1QEovssSlA3L6HHAzPr04lzsboqcYlRLI1rRbTiw7Ov4uWrJwXKxcpt6BeHJI2Gs9jcqwO0kltei7boirH3HZXqYdEf0y/QWqmZ4pCUYnUvCzJJhMXvIGgEN0S/x1DDeZ8Q2a+Tn3Swl2wNzoNRCVaiT28efOKK16TzMDJ5v0qPxOGGJOuxNt2VYLp4AeaiT5QeNSLBMn0l1G71rmSzY8bs17fV2yF2Dj6WDLFtmL/xF3HdzWyh/x9FHLHWOrRe7oSqIxpvFavTaQLilYBMxdOUDDq2uxrMBaVHPl4AuvDnmgBbBTJWcLrHMxdxe+5n0MqYyBnvhpRDaKJM7V/BF+mlgvDYy7cdcRTzwm5AOQJgpuO+9T2BdPInCdm7tejzJWetV4MhGXJqYDqnec4hYhGKEfx8KyFJD1bL6I4pghGcMiWACoc3CA3qVO4JaqgyZJal/1vniS5aQDunasAVpsNeY741iEC6IubNEEEJ196irXyiFAb0z+8HlBhziM1TekwNoUY7duAS+xL/qVxJ3YPwk3HKtVhQ93oopOyzPS43tJM/Wbu2jkXzu1Ne1aVZL9PsX3Ca3MaqS76zO1wXIiv7gzp8oO8/uQmj8e7fHP3bHpJvwAclFbyFsiHv35LZ9Scy/2a/SHHtHQKC3HYYcFJtzuy9yQsabYX0iETtRs8Oei9GJfj6ay2j0G4kpNTCOSEg+TcS6E0pMfa5vFvUz3eberMHa14OVMHe5VK2ST0jkOngdc35v9p7864SCxrMYujRwH4K9D9xkiVWXhQM/tX6kpXhj2cRuHWz4xfDeav4PuvEsu0Scw0eoKmPuHQrbRS/Q9MZZwTsVK2EBAdJE1v1hP0XCJevKa9zPwx3jJjR8z/0zztS4UjtTT6adp2tZVApahX94VagmbG0AVe0h+65L7+95UswnTKHEL89eOd2UDsyoX9feFe7gnuZFiOT6PxCc0dX5Wast01VVUeXt+Asip2bkVgjn+fMx8+jJbhzaL+gn0gnni84twT2jV7hN2tMB7ArPIPPH89cITO23vE5v/NYFPEQ6G08NToCgJU6zQ4T85yncP5bREv9WM3cPKnvQ+LdPmzg1iz4eCWZUun2LN2DR2yGnIs54D54NLyyGQDO7g9LtTGECM9ubrV7X0zX8f9ikuY49dfpPVQqFnl5a41L+V/S5dH9wumxhHtmQgWloks5S51IQm+WkutKFvxsjHAKw+/6zaCWdf2DlGsscBD3fE64Lc5JAO1UjRcujMuZY1yhe+oDsnn/ifo8ULfgieMUH9wwWtfv/sSf8NG/5zkgj9GIf9D2FygJNIjNKJTVN4kevDnZ6FXEInH42Wi1te9nwIMKi/tDJ04+5lbPO0aUEivGFKvjh5O8bP4zrk2d/35uFmWzJfAj7QbOZC2ebeJPTEapJbsmmSXJJPkA/EX1aVbNunhHgitwsCxmItPxjLlpOllJDKu9qdzogQOmFzE+wHeQcMahorKLYZAgmiBaYn41/lFkTKaRqH/bWI4PjphLnaWDNWIqUHbJiFae7MJ+6AG58Q68YssDS44Ws+v4J0keka8fryXVuOTTodA7dYxvYULBxwvavsJs7GFOiYbIUOnu6Srp//TSD7W3jGl5kk4hqQ+s407yK+ToYscFjTxcyV1Tt2SJwiGuUbtR0cpWeTedt6VeEThKWQbJJvirg8TixiTuI8g6zuhIq6jfhDrIaQkRzHh5WtSeC+LmNDelEtI80xxrqTcl7aQla8fV2Ga4AqkbBi3aM9jRo8NnWxjAv23h0HbjDoUqh8aEwShX1O1UaPF+8GHv/TFK64v/jb/zNFBs6lmzJvVBRY/CVPImLV6gAN5+MWvEHz7tp6w7Pfa7NkPZAcEsk4pADKFIaUKs0QS6EQXG5hyVBJc1SrLmfwzyMAZ51ha6fo0HxK7jwRfF5xmj9v+k0cdor/w6J9Z7jpo0RYy+PUW3pyzWt63kVkP/kAxUYz5zGcIXuHnz4kifGCTqdqGmwGWjUGhnfHCoWoHQUOrKH1pnmaxP1b7Xd7r7jZzPVUrpbpw+BY7Va4zSiLLvKH9+G9Jnh+OKLzP/9g/2UgwMO2UNia5SxaGNhC+d8APyJfi7W7LLb9GkEJ2bsxgtrtyhC4fRznKHPKhonux1l2ewu44Yhs6zt1pNXksiC8K6cJXIBSKSr1VzG3/7MJpkpN5U0O+EwzQZv8hJoHMHYAeGpMgTzr7AlLt0G/aYTlJv88BXCQ60Su/jFpJVWEeI0qYaXIw+7CgzCEMXgE0+HMUEeXxfKboTFqplqRYQdfg3DA+Nq89+Lc9v64gg0AQHzwwRvuQ+OCgja5uSyf7LgC76+RoddpXuGB3a7SUZBUuiWrXJSmWNwm/zteGZly+ZeGUi2yGf4pKFcysq9Ux9YcaHc1cb75uHHDXrmu37J13tqa45Fnt29GwTZr+RvlDoniapq33wSLtmGyES7dpyvYli6f8ho0iMjOXwNbd3STg27F4flnCF/zy35vnkavqlMuWpEDiZcOLSStjqmr9xnXEt3fSdJTm8We8qio2uk+yy1LBf0gv+7f691m/Drlp3Drx4vQ4+eddyGG8KTthk/UMtjm182tfpRnaA+bPGr2GC657sEfjGfpSrnmBD6ybXL/T4mnDXGFSHJck40587C8evbFnwKNvu79I3FG78iaaKrvUyjSPUFA5cju5XBkZw1r202k7klTtrYRav7RS0IN46rZKttaOO1t12n/92LE8kqR2ZR6+Lzq3eaxcMlOG1aBLKqO+YI399946lQ/o5en6Bf26ovk8zXsntHr6F6qV8rO/+tFaprlK8Hesre8El/eD+fzjD+dOae9+FwXns+y1Hla6CVukYVIyUFGE/nI79poZBIKyoMdr37qd2bmDZr3bNZzXVbO5tmaqnsWEjSGpshTuVn5cVYpfcNmaZYv1jzG5nwXVli0kFznru4A98lVeK9bKaySSzVz28yq6JQ2DwXOaqlz1u2XAqXjYJGjzqmy5/yw77D1Grsx+hbnRRnYbnOFXxrZgXxzKEm13zi9cMH5AztcIfJheRi8k4kGhAuIlBdbjr50u+1LadT/7+2TZIap8juF4S708nhLmRWXRUPJG94I2T3TG/XLWPLN4jD8oe474hQn4v6Jq+EAsipNTamf1Tl7n1fMsDLRYrpKTPeq4g3oLfdJMdJNqyjTH304a3/zbxkQm+zpsp2wi4xCcHwH9fHGRdCcm4XLE+6wHwgOl44p76z7mofHKPfGa+eql4i60iQesNV50TD8qkfmh0MaKANXI5pUsZHGl7VLyDraner8FgJZOxyluteJtMgTgN8wRPQcN3lLFvFo8lbUxgy4+EcIdM84e8TPBb7lAIeNIW+hVL6Hd2+kovWumoiIge82qPBQwqeGf36BqyUuBaA6fKiVqwBMfdYVRQmxqFFAOCtOxpkiDozt5iMJoJ1Mb/O/ZMvkoxBYooLA1yajSqJukTG3lSUKYzeFIrhrSfTrfb0Xi9xuca9J8Ft5wehA4xGmMMRE5POfE9zk5M/bqdClrzpVG08f8y25nY1EMPUaXb6Qx54j/OLmlbx0BmIZQl5sPgajrK5DcbM2Jay98zHXCpaCaz6UdCXx9+9r3B/0KJgSExi39TSaXfaUfv4mCeUy9w8wV55DJv2eIQ9H07YPoWzTud973kMyD/CORlsK0MyYCw/GrV5+Y/+au8Ei13IvkBpnsbgLEW7QOZpkuj1pIuStmKNoW9aaRu4i1Jk3W/OQQ2b/JtWlYBQhZZmXg3a460/+xvVrEQHC65T6sW5vRhttHQlNNMz7yuYdG60zRMdP8dmDHSBnZ2JoAJy+Z/rTThmOeAidU9pM1yqI19iZAkDV4sNp5naymrzL5MdABX2PU7luqnCuQQ0lEjEBxOTnpOZ9BbXEw/d9E1oWVISOqW1IGFcBRVikOKHQkcc4omXFu47PzIiX3dmjexZsTFBjFS/cibH5xRW+9+ZhUNvHcXK3ztB6QcQ/K5Q/tTDELLQuXo7qAOnEmztcpXIhB+C/Ucw/Y7WOQXQpUfNBvvinMmytdHFTp7lDFBLq0F5GweKK9dppIuANuUCUcrsQS6WM8Jho6vKU5K1Fn4nSY8Jnm9uRjInSJTKNDOelDsMexPP17sSKBWgBqMoLGgV9fZ8OJtiNEj0G8ZdO60pET090WToeXE7yN83hH/bhmc6snykBczbXk7WHKHfgsOU8S6QwXIX3lYxY4xgAgerUnqV87TbgIVV7pJlD4zTeeljOGKCDf8VS6xHduGFU5wepDKf3o865rC4vRNPxKrEUzU0oLu5BvepCzHDusO2AMq0zIxkBbSqFR8eSxNtSCagrN6mgw35HZ0BHy644CV6zKEhKz5rYEbdn6h79c2pqRxPwu07JAfNR38dm4sIXOBELVAZF9AAgONjHqRsh9YgN8rtGlaNuZsQT/tRLv8HPityQb+4bb3C8UeAhtkc0yigrUKwkM0NFoxOBnbFgK381KBp2rwrC/pNiIKyUIr1m8/2ukJ3uvoMTUCGxoHLxw32W+xrXiaHHNXfdH76XGx+sekU0txGUw/f1vYeaJdgYy5uZ2elX4o1FjXo9WmHRl6Zl2BEFpkbMOmeNJRahzZ1iGimkDnQcCV1m5SkitP2t9OKFySxWz89mrHF37N67ZCeQ1lA5Y9/Lr2xCQHE2GQH1+MyJJC7PLEw+ekgLbohsCdwRZmJ2RkkGnoPZ6Gtu13SU7EEb0f3yjRWdw7+gw+hpcQQYrlaKbiXVcvphk0PMoAJ1ybJbzSYRKTYIwd2zE/YYUZcql10cwb7vaIqtiLg05sD4XBdM5+LhMuGFK+YmIgHNhrxKrPptQxHBvq+zCqP03UCz6HXODHS35hzf5cDCA9tdeI9lbu5jmeQSDSw8tAt8uyL0j1O9FK19iuLR320K+fKs37HltRvqCWbdxmHZc4hT/uSNPvTHX2YJuJHF/KxBVYQZ51xN83KgVEIevTqX5TkNyQjl+mM6vCPq1OsQsujysbUfW1fXn9Pj1KzSZr8MOlu+606HssneydnIz4Bytl42PeKIBzobPYcILyLnadOarqGCtmWPsN2Jj2RRfNkOLL2AIrcQpjZoKiOFX+i87Oj+zX2IxZxZxzABF1BigyGqnvEtSBjFwazwfFcu841BAwxCWey+09DUg2nVoojf4+Vx0HRhog3AN1wb66zIT6wgWDRR3pOqsdbInZQbhL1yvHn9S8+Pfe/XFHuCdH3DFsgVaVzLCOwGHsQ3lgMyxRn7fa5L7P6LNjMqTblBqzZHXunuNLd2FdIsSSqFqoDL+DwCy/TxKYlY8Px9ftNqMqM5k1pS0HtnaYCpbRVTtcszCF9Dzf7dtbM+yTqHHeuEqxX+uAvJW0je8sppZVLfgoFW8rCkm7CxPd8HTLuSpbw9W5ieMWKWIDXYHmjiN+/efbhUh/mK9ejkpBVWMkrO+Lrqx/y7jT1J5qiCF7UAKaAeqKqJp3JVprDNYFQqq9m+W/qIRZAAjEoZWiP2FbVeLH9uJFjnPLbL+byhAnmzPtt5PAnWG4/btzdyhbejWZvfJKyHBXZIoh4VoOd4WMpgVpwk4m80MtYCCS+d6waIvaHaYRhP73tjOTKPTFzvWEU9MFK442fP7ix+oglfRwRV/kg2uFfQ18k9Wh1sw3wB3m1WxyeawYWris7yIAB1F57lAqWGwig9jaBLLG7IvcgBVum0Bn8b3M0AQVDSvF8Hk/C1/QMIO3DOZcOgBol+vyDhYfLpHNd/Hv8HoKiyO7T874SawULU1CwSCnYuapGT8jyW+RRUMax4tKdpqGMZLyOCvpr32UEaXrUAegQI4rQhTo7UbUYz+3YkYkO+ncud9C/rcoo/m3K9V34JZWKa0+AMB5e+m257rvXRHPcEDvMsuZ9cmEAejEDNcKaZtyF9SqHZ2vlE5IrexxLaTN5bywF6ekWeRAI8yTk7std1veMTneTum6uTq2Dmpvo4El0gMOPcExaud98LR9zZu9szJGkS2PaMMRL1coaqPNnFuNrjUHJphVt9QOcwNWEPJFXYTPER1fx+iLQcJs+I1VXK94FdypbbwrAx4Km74+SQ24s6AFU3v1eZS+6j+GiiAYiuJ+obdqHOXZsDWzW3GyiR69E5FyEX266VTGtJK7XBV81h9oopBvwLcnEAWO0JtoftCzE7ilGz8tYvw2llrND0CWgE12sOygn9awbSJND273y94IlCkQG2Bw4Fpb6I6c513COXyJrn4tL6E/+eb7dGfpzMVpD8JFY+ly3XvFbULGmuQOYEJlF4RHchVioDJeTimc8mgJwdT8BBr1J/9xu6Tst+jR5hb9AhOj14HMLPymHwE6rmxmkIuARp5gJovZ6uxNRM+VWbhSB+Wjxt67z1qNIJoBHwNjvc4puKdFGm52o99bhJhZNlK4c9OEuTB59PuKI3eN042FujiIVfVQgoE3DEHD+bl/P8R/f12Upd+cljBdgotezMCbl4vtyvd62MF5hGQbxaPw1VWfAr2VAYFkaJBvRlx7joerBAeoCJrtQ4z+rsXHtLDUPi6hh9CJbsuc6ZXzr/KKoahP2Ncp7WLHPyG5hL0XLz1Nil84do9/L57/DeI4ve2+4FSLb7ifaIbdtpwej5dEwNEJ0TSNWgp9doukpMdVwWiBnM3bxreampf74znvDIN5m/Vu/TMEuPNrmubEILWN9ZfjRmxzxBtW6Fa46/JRN1zCSBPWCgpLcwM230+U4/WJs3vV3Sto1yRvtGw9/EVFMOZQeeyp0wvFUT9lqERPqsdAdNX5KVtN77eJVyW4pm9oxhDRCL+eyWJAbM/5NEhhTdbSedavDPx3SrRIHmWuqw7HT5XrwDbWzAXriAE8s5E1zuxc7hwposazjXve8kWWT5l0FmzWyRITp1tkCAzc0k1tx80lAnNeGoZmCcblg43E+eSKPDCPQjH1h9DT1rAVLe3V7prpT54TN/aS2MuzMelH9YtTSL7OU80YEHoFVN+4gl0rCKSz1PQmh1Wuu5vb4lIQ07T5QJJ/BiIJwKWSJqpPS7dmNvSKBmMyX8MVjHAJzygbJhRP1ojwhq27p1SRbVABg4GlQyi5B1viC9HDgFqDm2KQXxrEIgXQeUY24yg2hyEhDEhZriDDyISLywKAejWTJRxOoSz0t1hady8c8E85ptzZIbqFru4J/Q80+jf03eACogCBwi4hPnWjIGAjTL/0l6ltkhTo9yxDY3VAgP4N0RWGQIoh6w7by9A9wisd1sEdEZR/8w3s53weNAMgsE6NdjyYSPc/3Ppf89HvymPESaXeqT7CPQyxbzlgC3SQLNCr0Jj48tZ4kAfWCmN+ftQfBf/SU8guFjW1yPpVoVm2yRRLTpx/QwzZyx+UUerYNuRJgk6KdfcskMvqTaBBVe+gXmFfT+aKoewMuEJSpYwesDV0kdPhDl/sr6deKNQO3syr/DyIh9+e/uPrn+Pnz/Kk9KQN7zFp5vMTomiLfw685CWM0s1RhXywH3mTCX1KoRvtxpAOPhWrTNPM9wXZEINxqyW0nuJEiP67KA1Ty2jATe0W+NBc28dpJ+yi8UA6LqQLyibdF0alVSneqM4qo/qLSCDVvzayhe8NPNNDM/g3EIzrW3IWHHMx6VNj0uzXRlEtcLckaVV9wMToK1w3XNs6fzLiwy21iYEUt5Y/echj8nk3+zi8Hu67nfBEk3CN985fHBP9qVSHHuEvtKe0pTEqGKpZcyvXXE+RIv1z2wWXVOeezz0i+IDAOblbl++UmSoEomBCCyi/8+7/CZwcmiRnHgfX13hBGYU8m+hsiIfth8OR4YxAdMkndOuu/YgJ33jq5Cyx8NlYx058P+Ed+//dRdkCWNtbrKf6pLK+GO/RP7BMsdNq19pt7jOQvXdYr3uNxN4w0/+fBEVzn0BZgu0JdSXp3H//DHggwuRFVOE8N0FILT94xfrkfVBga/cGGB6t2ZxUxX/NOfQsFfPDnuNJtsChavRw+/57B2jqlMXisj5I6MljOPGdZK0n+2xPSIy7HKj0NXYojHFp3z6uf0MH6T+/6xNUJU5j4YqZFpX608d/ww8nauvSKfJswDkVuRqkQR9pR6GSTJYeJ1B+xaRIk7rESc+Ka0rlG6gTGugMQREfl++Gy1MKN6f5UkfnqND6cbuZqrTgG0PXoF3hAPviQbfFpc+SKdkmisw9+Q0z/K4agMF1YEpu4w7x+sTKrw6yEGa+RsJwdPUWcNk+z2VrkbZX6W8zbEr86Tr8evnyOeb4kb3T2FVIywzxIOX5MnnxcFS0wYqy++yuCbOzteS1T64+GZID+IuiGdlReripxlz2Kgj72zQirNM3uEvIYoWDhV7yVkzVM7zI8JJYspmZOn9rOcFNDMvxSJ/Z7RpEj+fWBfGiSHbU/yIv+qcHTJeExQ8O+1KQn+9E1CwEPaBnjuzVFHzz0rqqy2OwTDXbfM+BG/OdU3mmCYaLh9Y4gqU27B0ARJlWM3JdpfqgFzI7r3Em88AaA+IU9iizGQ0/AgWa8ErvJljCKyHmqTlQEifk+BSHgGuFPzH54kKnMRs40ekST67Wzg7Oz4r/UP1mnnrXjr1N0Voyov7CiFmniobXq36jL/FVS919fsOPcZCznQF7tluXnS0HtVT/MrVMx9Is2DyCn0yjUaQ3i98e5T/qmZ5EVMW8BnQvWMMGW2sYTWUawQT9IXlf6/NR0XnMTp+OwXIHmVlsf4ihYUspVQfxH2X/muBHPyo5m7o2d/OtxvWXiRJ34g41hsQVKphVWrkkGzXIeRQOuRIJxSzW7xVhUiwx4PBCMriJtYwDpRJ+8os6xa2xmHBffJtwfYctQqu9XFtuEM2bEFiLWXYuriAayFBxcf7zb8RGrZEl9ciZqGgi1uJjptJclSWolJibza2hJ+SDvCLfDFmyBLZgd4kleug9drUXKN4eR0wcKNbqLWkpBaUV7SeOy7zRWzkTdrw6eJrpMsRoQYNn0/8TWjXQqV3FDh49vxHiH1RK/hzfz7DWaRaD0QVi89MDZ0l/A1dOxP9IYigu0OiYA4Jrs6Sx9EsjHsj9GLmS3iGrFy70eU7tdJwhgjtbkbwGQOMxeKr86hwLB7Q7/sOkE03H5c3R/ho+FuerAsHKAIBJdMbZ3ETMn/c8ocR84oRxBS9pFDiFncKCvxhz4zR46EX/OxsrKwuXCGyQTGXunb18kPiKX/CgT3Fs6xgNxYYQizDV5+INCbo4BiuyJxPUI2OIC/bN4os+ZKcEuTTCFkCSyrEIldwDrLzDJKF8B7qIjrxFZmw7oEL92DRHmxLu79UmLcsYsHHGrTF/FaGqXdZSAKjxsBS3u/uC4tUSSnDS9uWlznELOYxb/jbyCSQE/e2LnI6Yo/pqB9CsiU5/pLYO66ygyTkmpwnvOAEKZJQMjQZlYE0Ia1+VHybOoPKp++8xGFqjWAnUJJvbiSD+AcFeCL1wZnej/2KYDtd0CA3ETPoTel+hCGwN/1exU6kHQbjfyQoAfyQ3jvyg+HxI/oDUnEHJVAQXCvma0h3kQVxSSMNJdCb4nAxW5VHbmcyPIgPyKvZGJA6zEhw8Ql5Sv3Lcj9VO8cVsfVAz+/184oEo8bn/F390D7JHYLYttmsH6c2YeBzo0C01/G3a3oNPIQp2RavRY3ohklFNuGkOk2qszcX5HVs9waVX/1AiODv8D5D2DA/14AM2ctT6+LyST/scITNuHyTFlOCANKQ2xB/vL18kmm4zHYAzX8BxUZsyr8qaGRdiahehjPyIPv9aDKs2crdgcnbAQyuIqSozr3WkyOSFknpfIDuawQYBc/9VWSv9cgZmcKAqu5Ra6tZE+5DMbS7/z4AwU0YeI+4Tum+bpwtmJ8ybp1o+pLlQjKZgZ7Kj4+1sm1pU+gUYa9vZNdN81oUW3olqLklgcIwaOlejPc7yXWsMGC+zxi3RpQGCJXCh8NXEwsCBNaUI2cFTYDfTVGRtcojcTJaCweT/V4x3GQZ21QyDFdDm92DNEpgG+aTavUR8EO5sbwodG9sb4T+bPZ/+Tfb1Dzs2+kpUhz4Y1TR7Hbxuup76av4OZnLfCYRMsciPd1fxUcShi8snoVQeOiyubVaaNul/j6QPp1+56RoJbLFgyOQQDnCO6/UV757MU90LiwXghAdLBOxzpidduyPp6qwqMuLZATSN+kXN/48oE3IwHh29RqjpLmPuaMCcRPo9zntTggEHh94srWQD790YDgs/+IadWausAbF4Ak65/IoRsStEBB8DMW+LxYcVI6gC/+2cEtnjrIPVwWx5GOwcvFrCaklRv1JMkOmp/3u7E7WD5ZVUrEtIfLgtK6Rox3CRSmSEaQiGsOv2rSWQKo8t2iGPz7y/GIHKwN2A7o9/kQtIm7hYA3q4EeoNnYqBZ8Hpj21F+gcVtaY4FytF9AdHWRhZXzAumcOxVgl+qWTCt3HfcAjWuUm7UyfuZntnW8EjkGf9hTBytYkp90XjOSvENCWi/VqMT7wWQ3tv+2cAG5nVSuD4Kgh5ungtR0leTAp0Hg16YFu0SBY7Y9ac6LUlV5yzTkiPFDncnyXjOj3aFVF0VtMIfv6w6ugm6gCvzr4xdkTiwQ+85HyP6PzcucSYZ0KmaJ1/I5eq77OjskcwtwB2jINq0EKT3NWrnIbn+IgzOKeojtdGl8NlQLuZ5+Jnb4FUdG34Xfkri4XGeHKx6YDzhRTCscNfIzFa1fKjw/eUWJjnFNBDIVFm1dQBWxsnthLc3gF2bfiNRHI9F2KZebEWheJqFP8bibAnIYnezclEVEaCrbxxFqv+tdfspnN0t+cXyfDVCypmr1Y6neVGuDtLDei70Ac38+HIVPXNEQc2dcgwqLT/5hG4WKmJ8KysN54rAy89lYfraa59+1mX2Iyebz+TyA4+jZcmXyhdXYVcpflQ7fK30mv2qJ4c1XtGn/xBVMhoFllY2rTHiYt11Rqa6H64jYoY2TWgj4qmPX4hXecPasrVaAWqXLG10yxjXhtSw8P1I10w3z90F8o0rVl8i3rtDFF+6ScSZVsLu8N7IhyZqIMe6kNclCMu2zfLzZ5L2p9lT59yd6yoZJf29zz0q8rRWHPPZYbtVLLI9AInxD70w1+ywIRMR9zAtwDjNKVozjqLXahCyZ8mb9JFc0fWcSUgOgVte878dwZruIXA/erGJ/xMrMj62kB7WjDHBjLNIFoC5Fjta3iIXJABFrpBLVo+FzFBZG8IkDWaYkMW9aM1lO27VSXCl1i9zX2Lx18zH2GCX2eSKg1ei+2FfSAlEEVBsj1dADgq4yartnyFnHxxOh2qzVymOlhTWA1is9FiSsJorWjtFS3d9OgvVlM23/1tbaxze8TqF3kai+/JP4jRo2vUqe3/5J4HskU9O4+YG+HsdCgNcQOwAk5zny9gRBl1ZHfA6FsOQxkzlJMyv8ldyM1EaXb40XVKze5Cgy2l+5/ZDHw1/ZgVNpj7+2lDvy8X01omkTTGsqoNPyNVfvmYzmbeB0bolM25zYPlsqM6QGqnKvKA4Ofzv7fAf4jn+uBXDeusjlWYXEa3LZMlQn8p3lYZZHlJsXYVgAgLLljgJ6KawRQi6xeGoTdJf6bqFb2hAUxzEe6FywbjwCWJYVeGHRzUlPYlsZwHOdte0tngs3gDTQ5Md9WvwaAKBrFUNIYJpDSaUAzcPEGlK8Nl91EIYTpiBot4SJLepR1lAti0OnE1sYRIBAR86FP7K1YFGdhJr2IUzEUGKJPwR3QsD0tDgmvKRZgOLnel+OYZaNQuh0WOw5lx24MN0bW7K4NI8LBE6tXwRNrzKSimfoWYls5IhXTADtmY915MKAkq0X8w70lLqiADIVIhSWWqaSlbyieYTKMbYRMO2eD/jiCcS1eSboL6R5NOv61weYb/Gyrx3kvLyyTR/IKVPMj+GjHO3X+EuYeGykvEQc20KOcSDkYgwkpF38s45UUZZHnaic/2dRXjTJA0nierDRhx8k/AFpP687mBOvz0Em0n/qNZlga4LwFfcRLcjXP0JlsVqFJWG+ChEq0jZaESbmGsFviV1JCN+6a3CItLBNTb4z44tvfsgg13ZsfgHBU2iMIwi1sFmr2LVhSTKcYSR+X3VHj3zlXIPaz3aJB7ejojQo5N4oWpFUOvahz1WJ1V8EmGuY1johgHUTALqh0A2VduVn/D4eHyJ9ACTGrhyLEvsA2NXacZ7HQAHEjVpyHhTiFzBu+UWQY4pFeK27HaOoJzTedHjCV9roNifLgp2dQyeIQuEJBI7kLflqtKjqbwk16Yzc8FV5C3fawq0iMaEg/j4gTsAhGADAwQwpc2f/xbYdBpWsXTxT6OoVzjLH9wLl5kNG4etcvjrrQLyCQXkLJ+R4BIfcZydcGKBK8tI/LMbALI7OiivY4zVQq1wEY87WbY1lRd5POjp6Qvb7knl1rQk6XRmbQKK0o2dYqeicvcLNsIe8x6EqdEPSt4JcxEsCYYI/i5sXd1kJ6rCKZ8eauQus4vyV3Sjp6WQXJlJTwOzyg5Mr+xozTElyrpJRwe5zmc/OVYEdiK4aVc37Xy0m8p+gEdW+J7uRDlQNICyfy9ejb+D++gB0AslE1qBOwZc/9VjRC/FXPzsThA35f7iDWOaV/qmWzF4KJw+U5JACc4E/ytwkfh+qVJ3Nb41pU0VoXOVKxgXXQCvnWoIZOGwZh2ODz5g3MEL9C0W8JTWcXky1Msj5ddks6NhuYxyMShWO5XlOKTBcZfSHiWPcbt74BvTo6lecV2LMZyCF80fxPQ15UEPzbAyLJt9FhNWTgjdACw8XlDtKSC3c1BRg3vHib+fBjzb25D1aXaTQlLxmGOVu3owZXgQ0Vd+hZkWFeJsfCS1XKszuafA8Qvhu1R0CbeKCwh+2Evf4kRDOcORuB9Bk3f8BnuncyFv2YwY5ZKaIoJ5hgyes1qlhIpT9Jydad+0OtZlngkgzO7JUQqZ2snKV8TAqsWjfaG/6fwrVvWUQH+YoZ/MOKUsTSULa/M5J3KST+cGYZp3fLSh89fGThTThihNkDym11IIqYuQazXc5Aw4pq3k/m4xonjIgwzrELh+pkyiWnOvQrziRTIOGL6l695LmNbr/rp15JfxfkrQ+n4xyZElDczis65tbQjTzZ8YYUTi6J+V6TC3DlFLdh7M0i8+gQhuY0EIn7qqwkP7BkcW/wpUM4KSIhxWmOFnoBzL0U1fZucRdQNkqOMlKnifN0jScjaxcfsXXHjmdc3k+863/qhUTBLbGqASwD6tPnbHXPWUHB4KUPrRRRVdpXL5ZC4LHh3xYz/BFWTZYeZ5+ZHUvOw7+xdBD9jiWclSmKrUjqwydtYY9RrZuHpvXjCmyUGXMpiByYfM+mkE1K7hrQVpkgqiM8vl13U9WhD9vYVcp6lPr73adv9u/1l3N5TBFWWnfzg1pVluBTEDLsW9QN8zzCTC2Dc/CaMelUdnpveapwuY0+dNh+bTo5M9h8ZSpEr5antP9F5D2msTsqVtREw6U8WhJfCmob47ijo/x/umGIuHJkmsXw3d1cTYHlP0ZdkCyi57LniDP2GUfmyj6vPQPfCiKVb9ttXo8cWohckL0y67JxAcU5j7PCV1IEMdsn+MpIhYW8jAAUbnZSiBG3zB5o/LawqXt9xLI+F+GmbtvG+jvI+m9QdZNG+Tf33xmtW0aBSbyLl4/m19pIK9KpUzh/wcr3xn3s35yIn8KodGeIX+U3/xwPJ47VoHyUUYHreVHlp7UK9gbNa8qV4TVmT10DtQ7YlMhIW6d5jWYUaFdjEIU/A5jlj+syzao+ZakH/vTIknoezCveiJ93licXv5o4R3zBm+jwc9A2xdtMxeB7jDpaUMKyI60yPwAFKK6tLA0G019O22U5q7L+85K3y6XDAG7HeesFJBTdtorT9cmQdHtWtJB+jCQIruNUiJogiaYcyP8eZuK3NmwHbzsibUr7Cv3hAAH8tWpGHFHYVfwrMFE1aO0IbCGsg4f9YqU87rYmiIUvp49FlV8PmZYJH7++BWFjTmkU0kSBehfiOKidf+Mttuoh35PioribY3AEtOfhhWk85X+YICq/k2N/C+haNS9jrcsCLykgPq5DWjbz6At1ILoDrFsj31vR2rrh8uPytfj/SCEU3hmT/0heVXc9cTxa356uzh6VYPFjlkAnWpH305nwwapDG/a/2asxo2xkrUscNnE2ELJXJMi4U4i70/l4F2bbwOGJgfxyfXQX6c30SQLfqTg0KD+fUUuRcaUwYqHPrUyfPBi7Bap/xZE2MklmNOln1xu2e24+U0YdYnbG1ru99eYZt7eK58hy2Mgc+CxuUohuIVLmklYOZPwlCdmS8KAqZwLZsLBsbKg4tRysH+5GkZmw0jkfh7VJZrZGl83cs249Q/k9IRrUgmeX/I+XUbzqf+RNt/M0QjiKRQD8q5+EQUSA5gFPZpndq08wfnGlFRlgwJqCbCeB5cRVmDCGZCaUqouXrVoaX7VjibyNTNsxeTPxXvXFLE8q4zG/B6wHknqUUJRrO8i4XeNOIFTbp+7UCOlcAzt95tKetAFJuKfsvtJGGJE0bdHe/PXZW+cMA1B4s8Z5GZ560q5RU/gof2PrJPvcrgqlIXMd5fXPM8gzTfDGyGzTui5VilMCvfp5nObWLD41FDeTyd/cuv5YmZzQPNYJmt7ktzjwnpIrlr2iGWEI4G9sWQ1m2lOssmYofUduR4IW495fXslJW0DXlQitV5Bj7wPPZ1EtCg6VzJBXrZbjzZJ1K2ZYa/uPRBhyCKf4THDq15uqrVFL2yz6SzztEB5crFUYFk+Ma/MIey/ii1wqRkBj5dlXsl9Gqeuv815E219hoykoHkI6CypFf7gbCncUVFqVzJDnC0FiIFmSUrA42Z7AOUiJxXYeXxQLCVxrGNEzQyeEm0f5UjCIZtZzwf5EsFkBuzyPXGEFAR2im8ksQUOiHefEL0OgrfY5zr7D7qDNdXGhs9+/adWxsy2wVyuY0cNFeAFjiWl+Nm4QXEK3qP7HqEYbiDrOb7NdDBbV8GEuF6ORScTksLpCyGpGZ1LSK9GlW7Kb3OUvdrowCD00sXFbsVJX8577yn1ZDXBaNmEtM2LJe5GIIrrjZLh7P+taZiGRHAtHXn47DEXeyJGTl+jlSRMiKrqTIcmuUNYYt+xzMMIA1D0z6yRq9Ekl82aoIsYnUYRwDVvEHE+HxdGhTO5mEZy9bCmXWtJ4PzQsELu/5TA2wPXJHrLRtqRYCD+jhUk21W+XMGsZF436GdGVkWyx74nA7B0CYC1F8eIAYhX7lNmvbjjyFO0/996M6xiBGoGz5KysE29CT8tHDxhXVhPIKbesidpauKZMbMlnLTODuDa1pvwK5EbhfDeM3atq3S4ome7A0NUPaVeTqoa8pSGXqXbZ0l0Q0vkejQ7nVUpSlC1GRIRYmsnsPFioteJZ/KM+yaorjHKUSQJe3Hlu0aBnQ+wsrcqix0g6q4NSCBqNov3chdd9nHA7n6Je+b4WubmuM4PASXHbZeDrZihu5jOEZR3hsBeejWeQD1aq3eHgZEmS2drSZL2qOPFXv3g3LBCWSeLtgdCALLAn1G6VL9VfM1VlXuvBI3XUafwXtl9lGdnl9oHEyCpSPnV0gpzWVLpQOg1hhzfxs4/3LOdMcM7ko8e2xfYnPYVJE5inT/VxBnJQ76oNyGfswAyYT5yAlmaYmgCvXAtLY/gzeNwPo5KKkPG/sFUeDzIkPKIK0baR6SvEtcONsRdavvto/KQhK873CDwp1bGNnzX9nk6yWd9tK3A6pqd6/57bUoye/3lQ3SicsmRt+3qmwB7mPFRIYdWwsktrRoFbbXJZAVKTZP1CbEXJA/OPAw2gyfQuPedDyPi79HW/uhty2Jzl22YrPXH7m83v5EYnPkaa6N5tCny7YxINjCRtTPb7DI0E/RpxXVqumeXdLOEiKuHanOp1dXCat7SkcLcmmqLtUn5Na1T0TlUrCV1ma3rXaekhtgrZA/vvRa40CD3ktRv3aOPEtCFO56eRK5dQqZ4QYzPtgqZQC9wCNw0Y96Dq3gkxron96JU5IV8i4kF2OHzLn1du1ku6eeDnC91SvxStbA+zN26ZRjpvJlXMAdQpPt521nn7bFAV+C9WEo/zEKu8p/s8O7YBW112DWFCU+wCwEh9UJxcRSQeNZKOyeyInrjmrfiWXLz8nkymkWBg2I8FEdevve2Z9/9c78bVKxxiHGdSYMLheUO+lEgTbi2MypRnMQtQAs4+EFS+LEsMXsOXHgs29jTSol+uAViLbPLUdLCBVIeqcPWktJr/SMs4PgvV2IDpLM7DjfVSNDLr/nLKCKFlJQbcZSEEq6AQ6uYHGAi+QAkkHangkcQFkbYEEAttQKYISMNM28WBTgqUdLbNDTHPea12n0LrYFbWVrUkeIe9gP+WHcZb/KpgNfF0Lq6SuHhFTYEyr4u1040/JmZOHsFXIEce4ssNQDdcQD4wrxLezKvaCzqlpr3XKtk/tkyx46jUbKyQMoGC8M1P9L1cEljT6Bxh09fRm3E0C3lJpUPQUQ2+1ho4gyQKqPqyycqXQlcV/GUCXFeoGlV8wK3P/VhtMBjEaAE9xbLcg4l6wLieRbF9xQ5jsk8YgusTmJFw/sTVedii7F+eJywhZHCJs9VLvQsO+6d3ya/hc1tI7Ksx3zR/DMa7qpTmx51rJqjoboKcBE9ixxpxszGoZy2dinyK5Td4BZoS+5YkjX+fB+eNw+Z8YelacWqEaDMe2f9FaFBsKiL/uGOzdjp6iuXUqdcOBu3IACTJc1AC/qnZvK37jvHjCU/wN0s8EipMJKU5Udt+Z5usNx8WTtRaRLKdNvBzlJtLMvE5fIsXK4lSmdvBNVuHYBdOQzHAcY0Vd/VrNsk+90wD5ib3kQO5OB1I3W75fcJrhT2CCwvJUlruhrZp330eMNmbPutrvUOwnsXV7mtQ7QQyoK2JlZo56AMyFritYTVdp5EbJzdqarHZ32xJXJJONVzpjttatTHWamh1eJnGaX7ODx4lyQQ4TVs8MdXvUVeRpINSURXNhLwVbs8gpBOj7fCISFeCeya82PqqNItZj29EmGOduq48Eptlal9nvMCprspHADrMh2DW1zXjsWBqZNdye41uH3iX36ln838pcv+xUSux4JCCFnnFKcOzo/6AsdAoKRbt/YufIV5KYG5H6H75H1/Zv79HclYOHowo/xAI+9t64LaUr8l0qqi0eMyinppffveLAVZqY+g5ZxDL7BEOMWk8KV6ELDbBKz/bAVxRELoTKHrjdMZXbqQdBq8RlwgO2fmq0QyPKtVbJ/GqPRkOvzGt0/Ywf88yvnj2++H3xtgZ79/+u/+qTjsiuy+dqed7tTGRz7zy1omr6jujqNEaCLXg7oHDwtxPIV0itjpHaNrPKRqXUI+Fqluihz39f1kv6tK91jW6St9nC450ZCDnTjHPGqY9RXAIbKnqBQ/9XS5AAVTXrl4I/e2rVytPWL7L+80pqLulqAgSv48h5cxlKWQjFB+8RG2IlD2DoGm6WqB7dzdNz7Vp4ndrhbv3viZy+gBE0dBFUWfbC9upP4CtnT7pco1blie/aGOGkiW54a3d7wACPrYzJEfOj5TsPP3l+/LgbN1S6bPYHQ/PCy/Sx//7n3dyrfuvO1INgrh3+Dm9NQSdhTaex6BFN75qCi5USQJjBq193aYKGfUzlvVqrdWKdewc3+yBwkn1gv+bNzd73J8bs37nUIeE1tlLp3gHZaVbBT+t7NzU+e0OfY9HMLq+acoF0s90QxBYpRpkvoo0M6G5uIgYzOrf4ensCWI9hvcvTVaTo++f88+8q49piX/cvGzrW3xp1jiHPbAOSyw9WaHQuxqVeSNsvp0Whw2HG+P98/iqsXlkGX10p6yiweLHrOLWc56TttYWjYOvIUt4elIa+mjAMK8Pa0WeRNFxw+MHmEf3NJYX9kURL54R+dBDbY7LCYLdeIZSSV51z1RTP/lzPo52CjL6wlq98myZTROcx8pgNMupzLhjC2NfWPhKfP0xofPwoA0ZzrS5Wwk9md0Z31q9dIfkjR7GBcJ3qxONxNQyuvbLJg8RWHJS9ssJk14rWJcjgnpq5XyyUQbTaK4qEUu3KcEjGGXwJ27M1DMqK7hUt4xue26BN5ki5ByCVY8uzQl4T8UTYn3mMfRapqAclbl7KfOzZoqjVOXfdqdUarvjP70unX4zEtpf1vdb23eH1Qz+dSzTdgqOaf0zmftb2RntGNcCIfwkEScUzyTBpDl+Wc8txLA128qacFiG3mmj/M24LMRdAAKoBxzd+O2CYiRqNqwNJ62QDVC0j9A5gDGnJ6td55YpT/cSEFfgM/3RRHfv2krUsa6F2AH46t4uc34L3YTC8sYI5mw7rSDtS+sA4BzyYb5PWdlqxwc5s3ezHmQRKEfJ9yTPPTrMOEFshkfC6jPL7QDNZ0oughLVgXpIgXKHsimDwwxG3xfS8wdSowE8TNeuie4fX++cbD58fy3egApBzecfAHRQs+uC0S1J1PgoGLXDaCsiWl8C68Hul2DL1EZ6jcktgkYSfFUN5WtH4oQW5EcYzLAN/wu+oz0TJIOH33NDB3lQ8KsiInYs4nECvOVjVARRViMALGJ8bsqoQ5ADghWHbybo26XtqcXv98vr4yUoVWRP5JQQdF/iJLVTSBhGyhmYsW4sB6ZG4mQ+oMISVyf+NG+g3orDjFShRllt91DwReJ6J/Dx+GPoLrtoVrZsRsnUglLAogVAtRsHEAo0j1JNEf8VzpJFzuhmLGJaImyYw3aEiFX2lDzNaD7M6MUA8nNvrpRAZDhn+yGPWC8KOmND9lsb0BdNxKosR7Itgrh//Yacfg4oNoxwosVVnjmYKMWVz0q4tsNy79u3rvB2HAC6xk6TL/awI3OgMlqOiC/ukO0j4SJlo8DZxIhUU9EiHX3xUu0QByEn3GqGT51RJAhijwAxHuWR28/A9XjeUcNmVjWrwLrfeGZv8WdFXCOxhcBd9LEjkWK7QNgCR5YdFdda4F31ZUwAOd4pegMlBtN0E3G5p0BoFlr+ccgV+uy3ilRQxsgTV+9PFoYjcxS5tVTRLquYS7mXjTJhxMWIgvRAIeGZp60vwDWrw3Tr40v/+YkmkOGvD5fqs5r9RYHeBq7qEvd4bvfrMqcZwfH3pngBwpJZ9TQOVtOz+u1vt7jH2hPvtY9mbrCdEyBebkCfmDZL/R7/IG2Y0dqQ0CaM/CxZUIwS/lz1VwL4xsXG3R241iZtQtjX1ks+/djb/pDcmPH5ZbgMmu85/dAMt0bKdiuotdoRGVJCOx78SUdK4HgdgG/fJGmcCpo+cXdBwz4wjHmNo949LXhtRA9zogqgDbr+6nm+ABZHdj2ZPKgZ8ZJLYsxC+ENUeUDoDXF2aW52SBbXXWiQbJyt3EdSfVNoKjFGGY39PCNXXZ5ov16ZU5PN4cSOYspIsBEhqn/mBfsEvdCMKjuyQUWiuZX2jfsvCWd90SYa6CyOuxi3XcU6F1IKl24xRNqIDOZ6bC4nS+3MrN+AtA6XTu3U5DfFn86lQyxmV39BKCl+b/icQrddf7My2e9i6doehquEO/5EbIFYnCAD1YrUwWhkkcNBvwqVWhykwGYMfQNBXfgHOsg7mju1uaLzXNPTtz6E/Wzxl/nEDBxd03Aqec/CpR/PIdNe/4/Jh9Ry/eMeb3ljETnWRhWJXKW+hHMCNr9/U+zKlygpLOpNB6mgcoOkCe/w/t1dmCbP7CQg/hoz4ml9/x82dkk05j90jclf9vPp3kQ+ToMoBf3xbYG49GFlFsX3ofxhN6Ez5kV66ZTPGrccDyBQcRaElJLzOK7dnryWeVBcXym2XoBRHUUxqZokaBZ+JG7UZKafcQMIHvY8zT+It/mIZlx7WM0L/vYb90NhS+Vcn3qoHdrzSiVvCEo7EkDW+lbbUET/DuyjC9sNgC6wLx+IpcmWfm2jTewgM5yAiMmwQFOI3egATMrjENWz3AFUxpWi0UYwhJFbL/NlNmzj+ES9n5AunD0qC9zfgA12q4B0AFlwN6um6Kiw3DGNuML09Is5kbgeYoMaceLtmKX4yrLV3lIpxik5pwPIrdy5pJYxjqWRljhx7n/ldN5poxGA3v/iiuLdJzYPlBiOp1ysJ8jZQ2Wo8oF3H4zjjdi8+RuHpv38zO7Kk0moDlUXbPmQZ59yeMIZocOeiwXDLbtH3HCewT1B/K+LJzFdXBZmtI+sMTNJCDoGHj4Rd1ZmXjZQ4KeXZ/MQZ26vgSSlk5583rEk8SK4tmwp0xSoo2146Xe/B7Ha5cWnf0haA5/Sst83TXfE164UFYlAfhchOps+gPvgegSo4hyHfiU8CQLcu8iprOHFNhAS1TJE8GXYi9NA9lv9b1aduClWY2ctLcfa7xxq8BeAZAKhVYC/tLmbYP3Er25/NWX678Zauo1T0xjINz2G4CAOtAJGV5EZI/wO0nWvWhm0nVmsQC+fJ5D//IZM5VAiOsFv2Yucxs0pmaYcSNSWDDhtfSMBsmYNMuid0WY03sqftUX7xPioy7DH89pDAEaXUDw2iFkFgbbjG+23sIMjb8VrV4msmy0YxZesg6C0TxXhLWs7J2ycBq7g5AlT6tb7HxDixZVdpQicPfj2NQEncgN8gC07rzt8lQSNn9Nh58EqcTE+bc540pIRH8Ns+dIROIE8ZwpK+naR9lh7nfQUgh6IuTZ+l8icN6LX8zZOkNioUzOWVyZRbIGE5x/Wz/6/ACQSU6hoeZBcpf/spErb8j5PojKgfJrATTo3PRjfZCtcmxgzFAyKpzAPp7Yp9wRgHeHFfjYt25Ue9wkbu63r8dsAmX06oBdUs6AKYPzCuMuwJaqGY9iiS5oSzcQMhpyxgV3+WBWR2K6Y1zCZxe0ayqMjqh11lHXJYKDEMkA4/rkXRqe8Sym34VVPe6ZFzUhVT6IrwTlmqdQkQtA+RWiOd0EAbPZcCInN8++jSYfKJIKzqQ0l1lbPRzr2QiIy4psEQLkCE/i+LLP6gxot/nU8KHZEo0Bq2XtQnhtrowRUic1aidxCz+lHldzTspVjbjQNrC8757M1QSVgPRM2iwQPB+bDLzrVVJuCpgk9qybgKhlfPiQc2rrOvReH5rrEL4dWsZlef4sICah6A4sQdUssQMHK0jLsC2bP4O/iG11EwuBah3VsImywcVflv1svjPRKwoIlDgdFvsrMtwgSgOZE6+WDTkwmnFAKJuveCW2ENnDjtRpDH74nkvKRaJR8+3BZhOVBqlYifF26nkmK1EhWE5X1LDWkdSp3rjJUWhyxFHhFi9vkE7N2o2hnz59/icdyyOvXwch4AcuES2LHjWwDtwZIBQ2zj1x30M20RBxIP9Qc9RLIFocG8DzeuCcyfoAgD3kFteKDOBkjSF6ClNjIPesV9uCmY+BWp+E1pI6QAirDStzeU0ewvVdX+5QnA/Jy6ydGz6l9EvxmLcX80wzjyS2JPdjjqMUsgAhT9ZLU09mOlz6mHyMVi6b9Mjti/iazj6FaGXtTZAsGiGR6LnSPuWZVHWVYdF7eKsSlcePzj8yv2QyOmg5h4rtachfPRSSbJPxUgRf2Sf+kVsXn28AL2f+b+8MRCIVv4/OoSuDrfr01dmFSjA/fYcBICbMdfji9XgUNrTSIyaY3lkLy4OXPLA6DB/4xCsZmSzhHTlKIX94gkE9yGSKca8EkrTF6hvnlQ5XfcUpE1hTzvSKV68bZkGw1wBRjHmBeDRHpnITs061oEzpU7bSYu0CY0kwNTfWpE3cgQWMgGzLRQmv2MgLWPYj0fVAZ8iO5ogFQbrc59UwqXo0NNENyYdZRL3zv4aP21ckj4Lsbc3QVezJ6MutkyiygqhRN5BjUaSOWHTg9eIY4qWDLbZCW7zyaOvwsYiUzZoh0Pxz8kbkBtvxJS/XgrYeB2C3/lpsuO1vUTyxEEmmUMO5SNO++PmqNhopwnBB1I2QNjsovalgrRNdnbwlqaq+TKy4KMzOFn2X4bH1Y80PF+tJ/MHYFgJr/FhDoT6jSPiqN+MlKncIZ8dmn7mtAV5HMamFd20JPesO4NeruCc+r+S5Kl/MaAN5ANTH9hA+PoQKmhFtKtrtj4Db110lUTnTO4QixAN1Ct6FLmZWFQE5P0xDIEAITWOCqUuWCUaIA1+451JplrccuR4oZ5nPUBx8ZcMs8r5l8YQLq6aSV0tpqcvecUUNlYuoKAibIPKvCRjvzUeI8JXu9BaQs4WceUjCpnT/PicYEH90NVnZQ0sRnQDHCgfumC4FS1UyulaPOq454XPWdmAYii9Yec7USd/U0SI2UcO2z+Bg8IVDGRTSlWARveFjm3QhWMPonoPZe6lu755qjHYtNOvzr0TIlRuGxlKPzxHOxGdP4p+5tJUNw6OuIXNrfVe6f/dftfM3oviPHKp835eqjk7kbjuuRFlsX/9Wid9Y4K3Ohfqdzjcs0oEy9tORSgyufHOZbjmjBnKq6xrfS/OEyEgeR95gkyFoEDWUTFsP+TZ7j+AAnVvB6H9oTm83pFSA2LTkgNu3T9jz9NwnAmJ6RgyHkOj9VhAg7TaLRLWVPQhcN/q6wwwK6VCccTGAr/KpKTtEYD33ZvpnqUaaFkSxeIh7ikBaSWSCaMi/ZythfhhtsZBMs7ASAGq5PoTa4wKYNFL+wktwWgAhRxuyvr7Mw7/4tWpsezYCbCTe0yXJrAKMqUU/eFU+51ROQYtfrpUZUqCYSoQN+894u+t1Pp7CJ4kBBaRlpGIQMhY6F06Pm9b8tPjFE8vFkWTwH55PL1zWFr4j5lYvEcHkpeHkebS0xG3OUIPHaQIJ/h0fMa56gjGdjwYacWRrpNRCcCJnHvhZy8Ou8BDSJXeIZxoa2wt3zyBljbkJjD/clg2CGXd8ZP08POnwVvL1zEfv4vU8OocaYETqUBptBnmBT0lU/BoFQN5DPjU5NfORji2O2Cpm0RmK7gxtZ5P1RU0TzUXcjG3nkCzvmPJG7eVzkLRFVAnGWyzpLoiIwA61vuV4fRPG8BBGtIK9/86kN4NDb1XYcbkLMMXarH2JGl3sOhT1SJEBGn3fjMS+0XmrckVPWws7Gozs361aXlqDgv6Cfwmx0XTB7SqXadK73d7c3GjAi6g4/3RH/3LJNMLC/ZHzVUNFpPNYZilLdWKWsHHg8pP7Lf74m7jLvV9t/rkWUI62qDHZr/Jo5nh6mjRwfiRva2cReuGGgnRjE7xzH8sCROOUv1cOq5mticPnvREnGmXG3MG4idhtiNvQC4VTA51jxwFyT0chBUqizZLE7gB0qOZvnJElA/mhpKBUruVo2Yl1aTYA8r49Tg9t7IWYA05pisbBJ8JTRP2kNokkKk98x5ZNbh+j6cB816543ZmUIzWbz+qS63iTRSh3zXfgSr8f0rkWGBCG9mnkjcJKBECYoygsPjhL20OlDLE2O6RtIHnleA7VzlWhlKsINFwuyCcIxFIln9JhvDGeA0TOUqrnLBzgurLKTqG8iR6YQY2YPSZEjGMX+VynYjzNa1XQEWyAUcHoSQG9N9+Q0pU99Rl+CVQeVLuAqdotFyjt4HG0sfoCfWfn18cN1A2ada6xn3FnNopWaehZvtZn69TIZGJJ2joxtpTHComwTsUK5zKCHrAynSHUrHWK18juiplQnUeK6tuA2Fjqjlk5Whet1r0HssTfdSsMyHMOQg/tI+NlFMcgxRBL+YjgjSD3elcOiWWXMn01CcBdNPM8Une3qSeJknUpP0B21eAHlBs5nWcBupsG3vmsesfiN+LjZlrj7Anr0zXvh9B6chYktkbGUD6rHRRJQPUCS5Vy6ILb4jBqq/nJ3LxfTsGS+GR1wMYMC3qalQBuuKvfUNvzRyGo3NHl4V38EQKaUENQKEa+XKPQlOon/0wEw/b6OB69AjRSL1R8oWDTMi+f0ep4vrDIYGeccq/Zz/+DgtHT4kKldhxGbyoxyz/Rg2+9gUrUQJxNZb1JrNGiFky75Tpdb1vvY/cjz58IJVyplgrSx27fLGoiHASZ/Pogt/aihwLj1eeJBHrNz9qTJ5zTdSj/dRiwJmkdZt76JLj8WpXXfOZbt/I0C8waRnyz9UyI6JX+umU0MTgNlTVPHWEpTmLX9rfb2vojbb2Nlp+2r2QUJWSewnHakWrRkV3adFAHvoZpnwLXRW/wvYK21zC5oXFzouDHiP+0Cu1c8q3v4VrC7otWV7Tsc3EH42/T5cNsez48dxPtbx2ukF8HdUs0p9FP30hS/0d2fZV11ZijMB50VAr4Z1qTfnYorbj5qqXI/IokaHDntGaaCFXDEnP6gprH+F4/lzYw6L4jMFvbXF/4X7kQeIIbuXPwnbfM7996Bj59OIPNNmWXH0A4dY/qo0tsod835+mYTxszA3ERZa+8SP6mTYfmjYjsg6NmYu28s5fa0IXfKD/GbjXVq4ao9UlMBrDevGruflC4bnBxzBkORV7dPYDYkbzaZ7mOB38nUhnfVyHL7FarMgjqumYDNTuVMQx1YxZ0tJpxVwIKWxiY3H0ORLdYe5WEm/g237lHl/eWfQe5ao080PKd3rbQNRx2sbzeedFsPovynDkUprLA/VM7rXE0dMRmPbcJG5qn5fYxPF1z1pdhqwgXAbSKgSwHDNb9xOMKV3JljJoGQjuTp/e9lk1hMfYTHperCaboh97KTWZTkd8yZDcCzaOHv3KtHAPsokv0TSUuTll6zY3CKY+yKZaXAibJbXP0ewtQMHu2kRFcMakWmjmVo6QphEbEGhAwvVcTlC33lxxXwWKvqLKyCLL5VogF8ClrLwApa/ae33h2gNiEXF6miJofmtqNZDON/P0HbSJX1h6oU/lx4WG4Xc7qWa5BuXsKmb3xu1aDX2YemXRkIlVhB7+e9ywrGV8yYYDovFVzOPFc7H3yOmrBzJIPuI7SzKkZLlelEiaX/eLAPt2G7xcJssudvJX21XGrzq3/bS+A65X3OAXEzeelibD5Tk40F7IKop7Z61QAPeDEWAOsveNzlCajGn6czscCUAtjps/nkoPKeIMVgd2I0/m6dFyqq0ViCdAX8d4Oph8q88g8Ye2BI9QdAq8exF0FEBd2m9tvFTmv2vB7V9FrouiN/CO2FfRBzZdjmbuQCJchmSy06a6ypflb5sWXKPYj+rKSsv4XjGSQulLcIBly8ib4gLw6vcsfq+6R6bOHQdg0Lz1dxy2wZvJG/Y0YpbOX+XCkZ7KNFs5l6Lw32KWwKZPqHAS7QwXjquMMf1MzZ5ntbgxraGizIWIaVnnVcmJpc1HkXdxWrDRLfWiUBVUlAFf3JfZlH1uSd2hIFRxMyg0GurlUI3SyKjRshplTCTezL+RdaNLyUYGoZSdoWDiRswl1tZfT3Gqz5I2Y3nC5vugRQuZtHQBa5YM74j1G0h8j4uvRI11LqBT6I30K25qqFYjsLjW2mCnK+2aaRnCAy41WbkBNMzXYXH6NmvfZIK+fDy3vdsEvau/23SBkxw8XzvOZp563ALpy0IeZ9oMVOu/JHJ1YJfPOIO7fC78M+qKInQTAip47X0zQqcp48VFFblDLdWXsYQHormZEVcybDaw/m1gAW7cPnSk79a59BdrYBHCeHPKB60tqEbxqm9XH4fduMM/XAOhe2OQlOe6V9PTpdpMVo7RLm/NmTk7yEldPxkP4qpGeIKLxRosZS0PQejx8qhbAZy3fc/msjSeX6xj/I7g+fc+MlqIoo2NdKIW1THDv3msMkhiQEJ0Re2q9gbu0eY8CxRJLLcgf6c9YYfwWSQLmA4A62Qew9alHCA/A1693jHrCfQR594GoO/m1ZdH25sOThcTTbM2Cq6iI/YqEeyXbY76zK9K8fQB1yiTPTyseB42J31b28tbMN+EaMEMYip467QedNUrXcTWoOvcQyz3t95dr71Nyhu07AE1r69uCLGVW0J8GJFIs+81gXD8m9BGnefF+J1WFkPpfps7bKRc14QnM5Fb43h/j6Ls7LgrIENi2gT5PF1W+jKf54PEio+vZ3kVPnutcEtNLTRjfav+8X5XLV9VcGE1gPZtouNnVEPXET0naYbkkKJ7y1vy1ILorLnQdd1mE1flJn9UYHFf5s+buaZJ8xXgvVZEez3vLUXOCl4Z82BTQEkRHPNeu1QH75WBt/N4RDcLPgXkCIst3tmqf5/qD9ffIiBvTKyp/widivyi2e0ZUfW+ThGY/HDryqPdOTn7yQyUFNW4PqG1tK9fzci3vcONmpnxUZ9XNaaAmiV/GLeHPUdyenEV++94NNhrBY4xHNn2FVYiThTyre4heJEolQooBhYrE0Suzo5aH2PVQzIVAnb1YKevIzoSBWFjjnaezh7PDtWWNjzO9AlaT8y+Usg9TTIdTC4kUp3/jOrUfXMQomfUB7IprG7673vak9FCOrLzd8zDWQPUdW1e2XoDdRIgZsYmpV6xC2CU6fXwkris5bRLP+gr+krlUR20QrQ1mHo6vunZ7CfgVP/Piu55scBA9hbHBJqDel3GvSTNZqTjBaxROpRG4xgSsTThJZXSpT8/hQKOybsxrYQUBLWBfmad1Xc3IypcOXq0frWaXDaaJvHuu9gOKjUh4j4Z6hY2PtSakjkTUjFtmHd68pVRuVZGEEo8kEOzce/mRFbjp2WcBUCdZUsXd8KmO3W4fLHYl6wiAXTPY8F1HVthj915hG2qKn4aUa7znXJq1u/rbhhNyjVS+DNhgS/dKxDZ/bz4GbaG/EfVl2qPAOJyYEaVxR6Im3MTR2X3Gwa2OUkqqey+JnnVr0tRcABdpdzeSvxvSnX01YR1Bd6fLrK3NIbiv8i20spj56soMadOuOKNGcnVezmLWGP7kDrEdRZeDK6NgU3O8rQQ3Oj18DDJEPsW2GZyivPRs0RaDLiApuI0FuY2DSP7JGSBu/4j5dul71fPA5KhIdQSxOzdIRpqgwt5pBIwKhyUW67K4okH/k3/MBw3i5GD1P7Zp37jPmuZbtImXT8pEwJL4PXnrpJSDZOcn6mi9+mLSdElcZKdmOOH5X/N+NLNYCt1uVqeAIckqy/5MxMQzrdNkPp6XITTBh08UWvPo9AxS0jOxn6V6KzS4woNZs/mskQz4GasBs9kA3uHPTdhGVEfDMD5TGvzYHCHjAUBmY7Nydzt4tT6DfavfP8gAtwgofjP60jAqiRcy9Ci/WynMJGz8tLM0pdCN4MXSo7DCxudU0ouH5YZP0L/r9PDLVA+eJ7oPppSWprTx1XsIgGAZfMdK0+hDWB5F/jmldXxLjs0w0i5pXVlN9alkBSCPz0mNYiNcKz7sJ0qPySX7hyA5jAFcWvipYxjAsB+15WkQwBZ49tidceyrDL7Bs3mD834fhykR51aJAHUnmAO1SKYCCfCsK4VUvdqdskv2sYwnyWEFq2YgS9uWkQ3USir8wzQ2G23qGMyWiZloWPCvXExymmpbipvLm8rpz/CfKP4kB3xr8bepYOrqQXka4mqrmSppvlOvL0g4OflZLpJ2za/6UGvn1X3k/bs3xrHE1xOl7sN3V3t52ZhOFgjm12NndkO0Psw8qA/k3xVw2nHwbLNTEuxZ7rO2hITrIXwnTbpEyeMAeAymj9m/yqzhCtv4NiRTJFB1ouQqZ3Wxd9dTSX1ZOqLXLd0jzS768umV+wzp1g4h68AkLkyhLqDsrvFYajJN+XihpxC+vjK92wHZOrZ2nB9MXpP6krVlss7vCeurLoIff/b7NQ68NOBVNfJl+BpN4yivoek5tTvzpNXyus1maBUgg07/hacUuZG3c+3xCFJsakOcKnTELQu/HCn71QU4OxA2uYsdEMWGVlqoB8WelKpOyBvyE6DPbnI+wwImEXCYIJlpl8QKiAIdV6XZYgJPbCcucBvHDjFIoHoxA9HEDctrYMQaAbi8lK4DPpc8Nsejm1R38l3S/Ki+7qNrGZ0RY0AgliqueTtJA165ZxzpqPytm5GLJBYeSzAO8VQtbQoAD7VE41gPvaSMm5kTDAQ34uMqjeZG4pm2eTWkl8QXSv0xW7Qdli73ldDKVYd87Dqy24EPwLssGUxTkAxVNWwsMP7a2TMeHKBYpzkRd8dXBJdgaf/IRAhSLNaxf1C8gghkK3kZbqXbGo7zZ0Qd0BEndCi3m4xJxWj69BenvGiVKwah991+aAraIH6XZnZYCRiPZaXpxSuMqH/KtOpmYpm3cQpdyumahGxL5s9TnFutzj5pvtVYZ8n6+RVqkdDkpUUi/1xmtmgrOnK95QU+0Z0r4AQiapOem0j+g1h0hci6CWwhuxTwNg2A7v1OF+l2l2iJo9bkGfoem9eA0dxtYJWCkZVrQDkCrkNIvWJfbr+BWI/2AvZv9WVcSmRtPJH1hsDecLk+OISPusZpAK/Oy3kLsfX8FQqosIMRwEjim6eFXH+7O4vNOAePmmWBMpqu+qP90bFGeLviNBdoa4nhQSNL62H8qe4T7SSq8vCMeSPlmty4mgU/mkDXuNPdzNYiAms6ynbaFbZ9IvZLHlaH82TR4u64zQgtBZh7iVc3GBLASYWIr7BphC2PHnJvzG+Ddr2TmP1kE8ASoW8OEdnZppBXc6bqAhGJHBhBEm6XXCFsJmatsN2JjYekhUizgaW5o0BvEGmvBF/1iTMJkxsgxEfu7gPYx+byOy/Q/HgAlBvCkpM6NCiR6yiQTR2vTdEnVAvMLYUtWo/plD5m/pRi74LO6XDjlXtGcx0n76mMVQz/GOQztnFDrHCc8DZ3WWyWJ7saQFyvuOzIxBHfMXsJifApd9rkzOPZHuHxjMgN4KEFg6LGrWcGfKZCMSOEotxg5aBKtAPkVor8dOH6J3E5otppONcnSoy0akj5YUTkBR6Sjx7t6ymopI0ICYbPDyw3P6Min0yk5KbTF6ZVmDajfLYJjvLntTITIIcKnczh5VZgtMNi++AAnGqXRs3n67omPD5QrXz4H8IuMjHVXEZxnb0LiDS1fBcSVzv75E+d+CSke8bNRMxrX0k/4eZ1A4eAR5iekZJkCueOpX8Dsiujq/VZb0tTn3cZmr9MSSWuNEk7AmOT8BeF8iiR0T6I6cazIV48ryvmN+N3MlhamzU79a5VLw5S2MGAB7gz06GxFO3dTMNMmcZaNB9S6wuUGp3RT04nu1ypAfI6z4/ku1X7fMmV5RbkXvEwuWK/TzGgc8N1f8ruauU2SIClJHqIIfN9bhf1/Po95S44B03MW26BHN35B+Sj03gjhJ4XkfJKPu/mQGvs9GJ1IntKlQ7eaxhpnvhO+NqJ5R/haxppzH6ZNAc2tlGY1ZPwLs0Djw9SPY8x/qOxsToZMH4qd3GL69xH9yWyN++sFlE/Qlp7811+1RTOdAFoHd1/SNDGJiSfihsnXOtdGrXXkpBodKcDqVdBb0KKIpNSPjcOzTxcEYN5FMV6hHdI8XMFQ+jj6RznN6/zJ/PeFCaEkMcGix4DuB4LxSmSxy4wDwjMAvxOJ9e9S2dElj3O2mva+S6T0T/M2JWDNkVnYGC98eGGaBvGfgoW6kwvD3mah/mGze6YiZjzFWCD9zgqj0vs/So4ULXq1z7q0IPprcA8aN0+bh6HjoRm1EpOSN4+AQln44s3MqYU6G+eN/14Rm5ET4b/IWMu6gRAr53LmSsAq6Jfc6obMYTQ+vgkoC6eeB7My7yBbymNTjJA5fyo3wB3ly9AuhSXMJPC+4NYKxlJeByO14zuccczkSoKrGA8ynAyvLuTZgtJW/fbciJgmGurFpH9i09HbrQpoV2O95z6656+4e/PbWKT5TFJK//ERDDiyNj+wUa8A5c9HLT/yAGRQg9gC0RU+FUzV9WiVuB1SdXP0EYdrq5Ds4EUm2ULkFF8RWfvzfwQQyOmVD7CugEVZ5E+98Uj56hl7d+laMKJKeoEvZQBKv2iuii3ACz0hc3bReynXbrBaTPKlxmeMJwGPHe0s++J+9gy3ydN4yjb9fqL72OC8f48kh/mCbAoQgH6+qdesQwerbq3UxuL7kkWp42eucKvPJL/2InOW8xa3sEdi6I6m8MGvVOP3FxM2cp0WIK0y9t5xp9jDRxhyAiwU7QD0X69HiRkxEhwKByt+1sbsyz+EH2g/7kXBi4OoOa7WLSiYefsmel8bfb2hcuBn0Ks6Ds8p/Mve0yDZ8z3Z/wH6xMkQt59RK95gA82YHKvlmwpdoqudTPHmMmDzuUp/3k4whYUTHRbXyMV/gRmb3IRiUaYyRD84AjIDKzyUxAEOFExgvmVMyrbUSP8aXD/f2d8h9kSvb2CmDGRkRjmU85R1XsIsbTWDkaqALZxHe1WNC5rmH2CBKcfUzSdwbowbOrX58XfGB7hKcnjnaXyvVEicZkoxxbj9GU+zZiLsc7sMCWDy1Js3gGTjF2QGmLh9MbHllAqJxRzogKZcqyZOszZsRY0fi+Wbw939QvATVe92lvIyGyQTZPZgMw7XqXSQLS9AaQQBGc+WyIL4cveAhYDUZxRTBAIpthGD1ms2DwBbso4TUEsIU/5i9iN+/SSwkxLyCDt0bNOWnmI55M9wUmSgGVvUvO/mTzzb3Z2sWPga+8qyxUhXiIm1ooRZMnSVxBpjJebRPOgu6piEJeCic1L7g/mQpHOmbxNp45l4wmQKNgIvGDcvaGUS/Ly1aIEk9B+NG65HLBEUKIHae7sCmBwP3uKyMP1ZQSH0rAgwh4FfC7lKaMYonVGL8o5VtHcqCeE+HSy0RQ4/bsl9V/ia+eCqfCUISm04n8BocMmI9bX1GXYP/O8Xkc2vPvPHguXe5/orq4/HugNEjBA+i83/58DDe2HuFMGubn1C4GlA9vum54VQQ9YoVYmFXoyLvyv0P0nruCnIUPMFc3okEeUWxeOu4DJfMtCJF0naKvMUuo9cYDMJM7dMfschrIQO3mSJ81k5wFWuLKtescZcumiX8g6+LmObGK5I/s2KfqKGM1mmvf47XlO51nqULs7s9Wk6cOffVjzLoEy4iAeMTKBv9wFXoqkznbnmC4k87npFDPV2iybWAdeaWUyFR/gvfN91smfLF6/IV2PMR4FjkWiGcnMSidReQJc8Ml5mv+t8p/NUnnatU0cXJ99VD3YJVOuznsnRT48O7P2qcInF3P/CBupnyKc+A3OIplev+7oSxZ72ZXSDDq0mNkvvgs3anPnfbPi3Fj7d7m8ynBGvnvhWlIJeO/sHBq+7vtUu5kKAecf1hpx8mRGHdxn5a4/f3advC+fMWruQtmZyurWRIybhAHNvcCmeafNSwu82Zli6f6pnDuDYNg9CyV/983bvVD0iXRKjbNlZ+Pz0zuBTVuWApdvnTFhFBoK+pNSPEHrI+/Wfzcv5FH/3XwzsNjuH6NR/zuU4RWo5+/JuZKLu7Pj5AlsB+uQLdiDY/DVv9gO0X73XJ88/NU2kDACpXfy6b//QS70QP7z6wW8V/6eR1O0onKHDZmQZQUBGhmSD2ao3Dadf8U6mgnl/cXH9JPDM33BbjLEoXOFmgbUs0ZTS9kboX3YhQsghIqQt9xh7EeEsiba055zBoWd4sIjhOr4/TRJYe64DIXzMHvTvLJZGokAiQoUcJ6PnEJS0tcfBcPf/24neDBz6uSGEKCyGpks5anMynnYwI7wBzrhXydDlofqv++7efMhZjoCImQDrWdGpjThxJaP4vMfa/yceGScTsyO0+cP77SGwWxoM/AAz70GQWDbSB64JPDywLaZ4CSuf0ozRTTpNoTg+dcy73D1s2zoORtbTh0uM+AkWr95oNJ/JlpDBysErYI0Ed+sm9Wp7mTPE6DqJ4aD+X1531pV+Isiox2++4zVk4Q/Ku03uJRfHIToVD55DU//LuSV+d+dW/ufqiHizINdd8fOBD6lF1vCsoO4mEQ3j1krrgxYOOWAyaowph98Me7K9Kk0Vq1gIMMR84HSNDOBRoTJ2OHcM6nITEVvTdInNkgnEkschFRvn0hCPh9594YSuTPgWpzywrpvAa0B8vSb/OYThhYOFuw31rTCfzkdLobbBIuATIBk09uLO9J49SmT7XjjfZG/bmdkrMny85RIvbifl8Ri05iy+WsyyLH5pCbg9rlH2MSezTFqeUA8Vz03fu/YpEQK56g/r+TpNkfrVb9H0K7ZsjI/ixaxTNBeFNjaJAcfPsE25mzpdPIWgOjtDNqm7/1M7ttFTmrof8css+MV4gXSmXgtlBBZK0rO3Btt9SCszIdMI8DIW8WYCVWBijWRg9PMiVdKl445auebzp9x8NoQfQIopBEaiVPI+igOfcWHdyHCj/39fiUxigy+yJBuOu1/enp3uP+RplIje5ukxES8LI4/0MN+8pHOtlC7q2hMioMEyU4mYsrVGs3IIc8+kFitFFk6TTlpFDWkg4A+GcVSfXetqgt9QOg02tj8j2dsi6+llkc41/Fhm6vLkbvlh41fVPJv/SjCj/+PYnT//T/CUYUSxyd+aGP1I/e06H1zjGcfLzfdgb1pdTWTDupmcg43MLROmNbwpvpnQZLMnSY4t/nhNBmPMTcASVefBdTM1FgmgK6UUkAN5AykT8x+sAMS5MIJQHfTmCO/swE3QOx6GODmiBVTAHUqPeMw280dxTfr+X2EyIyxdq706iAjRaGgrYQI8zG5Haq2UtP+6iLjQwz/Yw3CCfUnlR+d2PZxul3bnXNAzvjU+3cBlCmGClGFC4gIyR/8Emp3hwEkWilRkt/iM418xSRhaylKwnIj+9b4nQ2vTa1ITgDNNOOjqzuVSpFEHpUEIP4McJfiMQB2LxuPR9Y+eA6mu6s9AuCRs66IV0lMXbEIpNW2WqlJSR2Hws7mKzdcRCYxYYBlSWzd4mmQDrHTmpIHY2eU/f6WpLt3ft0DJy6ULL5LVOAGAWixA7Xq2WLFHgf7CJ56RCJZO1xe5/WaB7ISHefv+GKlQ5FDb9w/7xMt4j/6g2pUP3pAy+E3NzT23TlzjEdRlatav9a6FiGW9p/h9Jn882PvxnJujW47PGdypFx1JFU/N4QCyTLkv/Mrr22dpp3nmJcgG+vQXcP2mrAnntLPDXLkHS1UBjXvks1Px5Dwg4YM6SXfzuEQLX0MSG2XxgPsCJtIhGFNen+4RvLrd6ZnKtlWe05FwV4HD9fw6gl8BUCsPoj702qn/Qz8Z/6k6t389eunM08ELCH2Zbw1gFmUBhNwLQsZWfJL7jMjvPUHhncNNSXxPxgLK5NsEn/Pv3iU74nm4lJ5fa9XFHPGo78Hk/epmOn+BB/SnQq275RnsbPv9zSj/pwxyJxt0sDKKFbFn4px6Q74nJTq9xoTFxY4NsA4YZyLJ8SrCT4ARrLqRrrvAMBvA/tPlf1irfYHxud5E6R6vnpW9k2bJ5UVYYEno8tNvY/agNbdFB7eSXxaiiRib8nfTwus6o99UZQj/HccKWA23XWuoC/JK4HjoAaSmW90eV/o8tDvFgSZ0Zw/nRtuFcsdNv8U2zK42qOMfA15Yhc9lBWSMU3F658JC2H3XcTRYtdIwF0C9Yhd+fXmfugrjE6e4v5TBesfGv6kGGU4Ju5WAzxPZfxvFRuC4K9trtRp/l//wgabB1v1VmOp3DSfT5gQv5f5/tpfyJFW8IzZCNvsYOUcdkecwdK/+b0pyhUuyYFS/xzBZbc/RuMoyOdfOeKHxp183DXP6Pto/GlTVju4MqfJlJwBY9xLJrZKTnPzEGIGvux5GhT76gNV5m54ZNnXTwMrYvsM0JNcbC79eh0aC1vCeiPIlTt5S1Fx0uwfdVFZ17FLsEoEZv9Mi4KVaYzLagh7ieagG0Irl0fNSzrm5UtfW8GaQ4gpbcChkE7XjgdXq+MkJi2w+YnVyYdis4DIp74lSS5wk+GN2nqueQw2R0sW09ijLaQprfycPPB+e6Sc9vL5aoyuPa1Dyc0t7dlE1tnkCCR5vdjCLs7w++wQm634fFbBQZev48vBlku7Ph15Uq3Umb0irK+N8DoiA5qdSmwIw0hdS6ssdt2gtfVBjvxJc/HC5vdicT5ZLoD1+aNBRiAGsvVIPpggSXkwWLidQYnP274oxDWBgCTgwF85L44m5yYbzsVSmJNIYF8oB+CkAmvyIdO482x5ij0v6Umw2cH06D2g7pxOGiPjv517FWsLGmVEp+LNTh8c+TO5IpvBzt/RTHrl4BuyE2itaEXFM5CE9h+r+xY8EOMYNX4Ln2nnBM/b2r84WqCJB/dusFNOmKlmLOblRG4B9wyoxD+EOvKi4/R96mbiC3cc25fg7zRpaXf4pp2kt40sXwoa2/OBudQiqzETyyKCCbo32onulhpijODF7JtHyKKZ3hh6r4tWgqx+Rz0+6Fycjf5bIfU2y/3+Ou2ym+TecBKkjP6lG4oRBSnmvGWBhKsrheXgPV2LdWsUKjuTGhGbMrIaoi1ScR5fpnTfC8sE8uXI1X0nCcZAFy2mtXkCIfOrsvM+KIn0zU5v5gSiPMZ9Lq40P5CJ/8uwZcPju3nX/JOZ5Oft7bBOawBPiGeRNobKbas7M6KLXkYbREupDU0pGVjhhq9WXR11KE7bNYMHn+LKebHJO707Glv7gW0oN1UCW9mx89qm9Cn8wrRFhoapxOSrWYZGyNbB8tAkQGasWu/FZGF92XGZRJ412Em62lqYSVBo4ZDN57/3fJrHBxWfjnOfszydHch/ErgJxvDt8SQwTY6/af85gZmIkLm71ux8hm6V8/+AgwWzREocLBNojMw3eIKL0v2CV1o66jDluGTwjQiJVremA7VEy4erOhc5LPfJmW4bKcFlOyk/WA9ZYtS5nuoWZEweY2Uz8YDF42qIYUFsfVXPt6f0iG/jCns6j69fMykf44RLXDIVPHPk9rDXsbm8P3lzvDmEHXytW4PUQQm4SBjjDRa15imhwnxGAVRZY4x7wkWesr53hvtV9l6BDRpYb5TE5d3DotBa/Unzv+0uBE0DtrLMcHOv/Eqhg9Bg0fPG4MJ2L2wa9qDtK2zGuwpWwCh77gJNqn+0Z1y4/7VCaic7oiyGFoBjHUv/frAjW4ZZc6uO35sOE6rgcZwVO83bY2K7DjsXxBTT7n8Oe8zyvFr9aCU+UEw3gbUdLYhg5SV5/Y/qxdqbn27ad9NiWM08M5+HPQCZmrdJHrTOCOp0Ru8UDK/sBumtX/KRY3h8tZdKmllW8z/Qdi4Vdjhn+cZz1KRmHd8Tljv8X94y+TlFECzWc66X9sfuiX8IRb5xGOHAkQ/Ics/OO7LaSfr5GY0YnvdP3MjxJxHnfhYNwRML4bQDO/WVpb7E5LyxtH8rNdtMiNSms7dRGu1geCxEH7ht6ull63eZT8qqV8R4m3tQKeRuqiehu0qwwif3RMS0YfzwKOleGg7NJxY7exMaqDaZjECpJSxwrSiKN9shtI162WNytC5tTRGBiOiRFFfYMKTA7JMRYDmNs5R3z6hkCVMM6sjtjE90ZBGwTlH6xeARqt5DCN5oTAaerVDfJyHmOiEOuH+DNb1lv1eSQno2EhJaymXLrwlB2CXnzCfBQmF5UyI3OsLntA+Q00U0z8J9KHNVzTNyp2ex3wQuCC5gtlNiZrD7sAlq6cqbvF3wx608H0B1ioJPhour9HC1be71AMfEmLvhWtTl5sTzy/ynzy+A3/PP+U6RRrhWB+/NwB+hQZPviux8qZ/LtA9PaSUcw99Yvxgk7qtkC69P0gxfvxK6jljtRiJqg52fOF2H8198f8EvqHz3DG2+l+64YxIvHEcKTPHnFbiPWzvSEL7Rcs4mtmZq/TzTtDBE16JZjpmV+7nF2F3X4M8wOGuyev9Xw809XAzagibF6/M3DeGtRqH1aV6CaolCNtaJz3mhkkQHcfkQE1UZXAm/IPTctoyFk5GWLvwq9LLV0sKSmQREZYaFudQjmOhawi7ShE172Fi9zYoAA7yOMYG9qge6j4ny4JgEIs/j6D9PHdV/9w2SR+TeqyQP420DZjtgZ4ap3B67bsKRksFNMQ+BMjuYpsgMrUyMLvKlpKsxopKSyqJ4BtJycSRc1h/OBQwKU2fYIvkRBZDAELvXSfiKmB0JUvtN2FmvDRDGtSMUuQ/odeWwUCRJYnjzk4AmVQZ9bRiB15VVECnIvbY3Ty7wFw//DAjrf5m3l/CNXpQJQwe4jEUKOKm9zJVnSe5/cXDJK77lmnw1+K7JVFZpMPBsr6zdUGRpstchjAPo5X3BHIPpjrWNfMdFRt5s6RuU9wTuIloC4Jq3XZzqCooLzKmd9TlqUcdXS1x9bBjKkM6J0VOFcyMzFvZaHPJlvccQIHv1Abpm0H61Wbu3NK4FVJt+aL3lo0Apb42Va0CCPEgKK65ZqFkFjtAoSMnAv8HJQulmntjkd9GxoRyy5Va15kl2jOIwhzFNdmFr8qxC4yzi607c8uOxz9jcl06vihIAB/Y2JznkLXC6htv+HKRQ52H4U0oreZ4tv/HHUCNnpNoZ8CCWfPALefVDQpJ17dS7RzMkr2RI1gvx62xr7TOf5pui11cgITe7/B+DWFDz60O3hL4u9HWgW0M3QVmLr6lj41fgebtBrgtTzL+aolPj3u9/TQTC1qEtHBjxXWXYXPPfAAR/7wh5M4R7U4R+T2jf94Z2vne04A+q+0Kf4OPQs7v/HqF5PWSdZxTmhe1iukJbjdhAcyKbte9znC03n//9mn/WItf4o80+emz+8sYxqTj6jN/K5ZzIOT5tYrGm2JQJscqzI7o5RRCE1epvpZJSNVcSbNeynAKwG9tSZqJm+pDSuyXyGrURPr2qeQ6PH/IDX0uK6T3+SVlYp47klENXJ8RhrAgscgDs9lgkLbmEPxRo48jfVk2UecyEVVP4KrItOiLqeJ3bydc6R1CrDVORGZaHPw/lYQmvRxxIWEGTNABRb9bpRtd473oYGEdnKqC9+tGc3FcYVwT9QACmG3kAWF+jxzDdtQlNL/UtchTnvcl1uIi3XhbBy9yEundzzTxAslslwUWFua/oNQz7o8eCWBE2IM9k6a6myJ7JcJQ4GnMEs/F5C1CxVVDwgh4AsT9J8O6Mdca73iBW/jLmaAaq9UHoaC10RbTm69H2CKKOUF4JdXQR4GynCfGlOUqHk1XpAk2hrPHI13tjcj3EwzOM0Wfd09Eejk+2VJwFRzB918ubvUT08AOVC/3tt+cXgKc7h/hvSs3eHFs627qxunkgSkpveRzxOjow8B6mW9uVdUMW78K2hTVo/NX9SIdHdWzaDKuFFBoCBDPTyUCA1aesmHYzCr6up6neVjmy70OMXe24TgOmhsPijK4F9nfZ+ZfTSwwe6JOOhODfJUeD7bhBIXbDmJZ6IdGGR8Sa6sapfQe/94CYFApT84YL5Qq8ntQbQRp1TWjSwRo57ZvAmlp3vmoVRTaSrG9C56RsNvEoJ4shgtU9Eko9VeT0hDgYZ/NRYdezxVg8H5zwzMDZxPRMMODW66OTK5FA0GESjR0mO+1DjE2r/sCSiq3lUqHxEjYHzNRsvGSNlX8W/xQRjdDcw/PRT8+3HM2deF8cNVnrkn5gtrYtOpFNsJbn8iivBJ+gfDw1zuMk/l8UY/g44U3wnl1wnfSWaxOyBEfy8WjCm2COy3gIJLtBEL3wcmLCm2CS4DmqPSGedmQy6j1xxC0S/k3Asz7DsgnqkP6zmOXLhPC5qucOMXM86zELh0XFonTpD6hSuXriEiLJ8Rtpzut/AYumUQIB78qzE/4sHs44+AcxIMCKHusbrGBhlwNGrWrB5kyDVBFjg2nxZCYDnB3eT/g3BWN/D0P/EAx/DxgZKzMn4DQvY+1HL38nwNkj2PKFfdBIIzujvoqZQWH8XKtgQwnmdcQp2W0I8CIedhvPfT5UqF/PGQZWkB6Dk5AgePxz72+q/E/5rFjsjLxoaqBt7cBlkNv0qPbKx/XRehw6/HKH68FwbgrP8TYob4GqD7rI0FOItVcCwHD0yf6iB4muOkQhf7neDoAaGsn8MszicdwhXH8ApOwtE9OeLGX7oPexN6FomTPfXgvbzuQ+xxCEMo27W9zH7AzFama67hPczdPW351y2bm9eQUG7dQ6u45agRmTHtoazUjOBpns4v/E6hHlZoXFhslyxayDWc+wffihmMf9JM2SCU2TEmWRmYx2haVKLCTlNlF7COU797STCJCD2S8MFkZrj6O1gzNIfoEjXONuVae60bgwmRrqKMw6N5HCMn5HeB9+07GzALpdRsBnz1IDAguGrj4QstqjDZznw1T0yjOXipcbI42gndxXnYGwe7Nu3wPqYg/edC9BbmMiFl1MRhIrIPUwAJL+sofhyKK5srlzZFtIsN4aaWVA3UBUEwK35PSVrtj1lLd/bQP9VaQO9pLVhtO0ZH3x6Asha2qbNPJ3yPtRkRH6VfIXmOyVpp8dAX6rqn2VPKYX/VhmTUuYtsW94jaWtzZFUwW0E0/hwBd3QpL/J812Hq12YAYpMt7Ep7JtnJVwhPcup2vi3EY9BusNAyvGE7m/nJGBUovasb/ccEEgoHXgPE7XF9981017UUcZ+/PGGIC7I/sBAJT+VxqezJU+BFsmUkC0zwj5oniDUb5F9VouYpN0nxuXcjxY5e6uYDywIkaB5jyJP0Lc9Sj9RMoNYrH1cdc/AWsbj+jvz7Ycy8OpyH2dBNsznJzG7hApZSBQr9wl5NefYTvmct59rBBjk3uKBP2YdrU3AejJPmO66asB5nuEmNQ0h3BHCbjhxFSx4awyrerpag/OonIPR0rWIYgentsc5t1934SRRjvYCwIs1rS9vyffcI/T5Z95K+estTsNfIccSlr6UWVoyarhs4QJahnzYUa0qYC+VfZZwCSPrRM/qyOV9npaJbNbZVChTRw63ceipR4RZ87iPV6BXVQ4SaVgkCh9mSgLT11zYtxsAab+Oi1R1TrLtduKilFAO82Tc3NYiFUzSpqC2hOeDxkHJ0T6W0MNig7AuivO2QLBFym33AAsppm+4XDGboITswVTX3oSpLu9O9XzNJHPOPahZzkPBTV/+sv7uyAHPtYuIdMcthJXqdwJtv1rQkDtODj7ZkWR2klxIyHOci09Ad2K7wN6oK/D7PhZTwoPvteB3v99aroD4QOwLrWJAHdlQvxD15Fa+A3aNH3Mbg9wbZDsEbsfS4mRKw/SdOe5bESSrbQGnTDV0LC/4r5nlsndDJFqnNGUOlxxb5LnbeK71X2SMeN7+veaO8sbunWguEW4jGq0LYRVRjCSHaX58m1jYdnO9BbCG7e/V/YzOWD8EV9iMy+iVbhFGqdV8q9ZA9M5XRKK9UFHaVxb1tF3mzvbQ55MpgifBa47TxSiA4nWU1aj2mWW5PMxZ9g+4hSnrWNVnGUXNemwIkXBM5jlTKrmnZbafLDHSFtcw5yvfWXGvHaP1jWT3jXgnHi6hdD2kH7srhAPau03jAPv0fXeeDwit8emwJo8mCsFO9aqYmxwzaXaGA1ETzKlJjF1iqxEkvpoukNoViVWbzhueewwyR4cny1oG/S/+iM2LZwjTT3WAGn1PF6OAqpNtPo4jMEk5mQlNYLU4ZrWdf0fxF+QcOeaqUIlqPDYU3T7ccZWhNoWxzbPgWq2pOXjL+Gtr6FFNteffTybK/qsjPLuLWmDkH492tlgCWZkhRizsj4lcd2cZaZOLIOWGW7G8QJ7sWN3nG/lkI/VJqebKKMMCO2Z/4VhBpEl2o2OyLW4LYUIS8SlNcMwiK8eYuYBqFfsPX9rUZJccolX8X0DwRhvVM1xRsobPebdBKIbKFC3wse9YZ55N+fINcYu4YbgSrFQ9Cxm43tkAfcq7C1S0WEemU1Ut0iXDql09ksIJT12myU9Ikl92VCL3bdIDYVznKCmrnGWdzLmvdNLm1Ap/1hBSUDrCRm3mmcN9IOAgXa2HXpo/4hWItkSqWnxc0k0pfxzhrmuTXJZK18OPv8Bfm/tnmndGad4Kv559QJVTZxxAqI4xOJq25jf/t6Q66eT3Q0B+GL0xzPI8k5bILqJ8m0GoHndqeJeiHNan4YTCUDYuWklMgPr9/6PFlwz4y+PkqX9ryVHu/jPGdnNdr9zqQXnSEAu4r5EBgbY6hpZmxjiajOtKaFPL3la+fZCnFpud7ACti77ujcJmNqZQNipDJAHQPUUPkBTwz64m5BMG0wbp50SiCQzWklkkSBGmJ1QdJV/H6JRluCqLTmx5uGFtUx3j/SfOCMDfHtJPZDCxcqWN85kXWrFU6y1rxdbB8gZjC7bR6EBaar9NPRtBsBfxDSL/ys3w/Xeh/Ynzf7CiMby53zO4Xa9b5/lxo5jMVO3j+ayKtzuMhC/V7kAHN3w93YHujdOv0iVs/sULm+QhwASPVg2dncDa83LUDKA9Mq1hY2xZ99ITDA7vEybh5uOzVPWRPpU/dDRciUuiBz08NRGmUbJ7PNlifpRaGfpP5fvSUN0AjI1UftgG8Pu983Wg9w9CTDlYysHwW2Ryg8kwEc7I0HfAe6sKZSAVUvZoCWquMvS0hw8AmjrlmwwctBbRSZ7ZhsFjryLFqaPekFzRL9ostf3UPRZ2LN+qYSAIMIYfGO7MShhsyun81umib/5eG4LjKJjK+o9opuPqHxptql7Mu90lwg+OrVJXKoEUP/GO6cEF0dzzPaD6faCiBuDF9kxFb+VJlJFq6a7jxikueg3Z2f2N9THyG3hajGy7omnVwhexuYJXcyHzFYxRqnHUX1fp9x9Q9IEZJ2qKVWO9LrySeQQF01GfQhrbcRvneoOJdlo6r2Tx2JdRHtEa05kZKsWHaNwYgcSwcLfClEL/DxL8+D1Yol+VM5EskIshnZsNZHkGR95SZ+R4rt2W4XC5TOb1d9b1l7vjoZUgMzGMRBZ0srfTXnkSDIPaLpizT1R0Bo6zOTuqNwLd2k+5XqRrrVDHf94N4UJ9kdV7bTcz1lEtQV3qVpD0FhFGW/9GpezHpuBxBahQGuywonLPVmonVJi/S2X6DVPw8pXKSVSG9s0j82iDjONUdxJmouu8D4sq2vxSkOzdQQe1ShOMb/ZWuxBQzlWKc5b4gBShwuK+HrdzYGapDxxTXYTYl8W4UtVAxDgq9QPPH9baYRNcBe+CBqmfLVbmpx28ez19i1IlGI6A44Id61XkPIw+MMtxzSRzrPXqvoKrR2enIxVkeFLJYgqSwrREDHudmmXMATYPBGu1YEw28GEirVL7r9b+QA6Lj2nTaEAXhqnua9eokGPB6BeefAxig9+tdaHfGYfRIzSw075VMP8gVc1h+60Lj/EQYiVmOhwVmgIsbUp593F4yd0jKGTaSC0v0Nvtlb6abXLxkTY99cL9yIyd459Ibe3Gdq55Xf/HoK6lD+w3WoHRfaC8it/uvafBC+iRkEjrnZyBkGmr7P4VV/c+8F3XbaK3C4V8/bPA2NftUGtN1KNOLzmYXgqAIy7SkiVlwBQ9YJhc0+lOqACNeXxD4vI1HMrt/awyG/32KCRq0DUih7TipLfgPP8rXXNXqJ3X9PxEi3qo5xGWdKOOEPihq9Bo/Dz7HGF/5qztZ0ZFLpVOQWoQxU7sYIK8Cz1oJ16TUcBIbPcpq75pO7Vezdvb366yenmp1s73eR0C6ebnV6lt9qKg9y5u5q845WiRd1ah8+hFqWWq4vJ+pH08nNRZ+O0trzf+M4qEUbxKRblBg3rMZK4UU5Iy6Kj8RrLudSxzfmhYeuYpFWPYBIgRh3aJbra+h/7w1Ow3fIosY1zhdnYGL71wfFDB/fGgV6YFHLu5I+C3+cdE38iLRwuQBIwjh963hMANTH9O8gC0nV1pE+60ezLjSkpl3CaqiZHk9RSNJ+49bJHeLESahH4Jb2bx2dvNlcSTLcbUFD1/L0Q9MsbtLFj9TShAJuxdkjUPniqNaIBsg8u3wN0HkbpKxEv1AdqXsVjCYR5g4r8A9H0YkWHPtF7cB4A3amYfazpWwR1MmAO+sBLNrMSYELahl8m71qr/hKD82P7IGiFcu0ib8IRoL2XOCmkSNbUWvcteNCCDRaYzEmraO2W09qnltq6mIXrkOGYFKj6N6t7r752ypAnei41fxLb+6rXJWXATB2XOhYeZ/HErxqAmNt0kiWw9YAj0f4+N/fZPoztRE7bthjIQoMogdqcMN/G0yT4WWiDa0LK69AEihkhWIMjgjshoHNmCxY4abHjygLmWT5Oyyw59SZblpk/sQMR+y4ORLIppHNe6+VaGrUqSqcVwkTaxrR8rLiHCYpukNiUJarZcAiCPDUBNNPLkqJdQNvD6TasBqYXBPghVCa9IqwlTl7mdqwk/CDD6+nok3LdJPS92/fYFJNDbcFXEmj7E5h55diEaTTl2ynqSFhjjaMEu/BNkDu6FE/XzE/2czlfdX4EemvUhjEj6fSh9wLRxB4wB33g5V8dJegx8EDkGN0PUCN9AiouLgiJkuiDMHf2AYS0+JiUUD4AkBn5uFkM36qV82HP1k8F80cI8i6/o76U9WcBNOT96OVqi3azDjHaMkpwYtSTiHkBwPt/nN2e+Jwm20tSTWr8JQDwJ+Vuox+BghIQDVNuhWDEQfv43NYKrI0xcWXH3QhwnU39UBzFHuws1bMjJaisODiPAf8w/nTNsgSjeLeStlb8v1TVOmM7sWOjH5WcsWvjx8hXuhlnox/UwwkjBA0g+w0dtAS4wicOzG6vmOUfzhu7rAg5DpQBqrPphlVFJENmZ1GCvuvXDapFj/aMeayS7xUpybErEzg5yqHt04SqOnV0tskntiRil7FSOKZlKNaNxLjm6hp/lHpOcw9kmK949Vy+z8R0lOSeESkADX6K2/8qyHJeNHLw3KPeGnVpMc9reJUk7rBC3Gr7K3asaUaz7Ru4fEXgBWyL1Z1FP9o8lYWPODjtMpGvk4jTc/p+nwYUHGvm4zG1O1gtQwbyKNHxHXTy1Hi4i3qccIduD4XUX6DQ5SPh9587Ko5iGD4Rqca8/lW6KSQSCXIdW60nb1nEiBgSUDo8yMsYKQtqb2B1jcmQOF5oeYzVxx9yL06LETm2jRxzOHyRgkWtj+EBcHdvxsj43cwQeuxDcXdR9VGdwtHjbjCoXtyRRFFN3bIquyDEn6oxmS0iONhl6pP8Y2aGDHLfgYMXXEHKav3oHYp4TsHnhJKLYPFF5pmeD2ytZD6139hdbZRvJG90rz/vfQ0FDoo7sEHfV+hgi8nJnytTdA/gtW9ubcaq2VmuyUSQVrG8Uetcx4bPAh0yDcfUB6XEm/ppkYNA27cO01Pc0VFIrswbzmCjUet9Qok/HQgK9vHnrYcz+9CjFhkTMxQk3hoFCNY1YFOZjUx8lRnHxDGZVWy8ECt16pt7F0/mEzDwABnNSHdDxX80HO5KooQL07LBc3mQGaIv/Ahil8vjTh71lVByj/poOA3oUccsW2LGIdM5jcxiqU3PdRqLCJ0W9wUKEZurF0njErj06bOcfkiMB8eeUII1ruw8+SJJHZ9GMzRjfVPXR+/FmFfdipoB68vSp1jwks1dsJPNX4ll65OAWEbUU/okpFfxwrmBp/hqxPIAQrhLA6qlmII7fiEDXiDaJt7TG2ecfRotDdAX+O5heBnFrU4XFESIlwO6cHvsVigG9b7gzZE1+hRoOT429ePkTl/JYo2GW/tO2JoFe13d1aGSYSvM3irRVb3q/YKAQ/QKshWNoQY3UPpbjmDIf50oK+MU4oUi5AexC4YZwVUcA6/y7Sd0QXXKVeKh7K5BEjJp4IXsCWMWg+px2CIdDzs4YVc/At5lUpXB9zGHxz1xx6YvFi7EpP8K9XXTKX2412ysfPu+kQ73zi9oml72k7vGhNADbDkLqeqVSuLS8u0WiiGZeeK05ZsoHuQwMdCKgJgtBc/Rer3AboY2RWwTuiwHOfsFEfFloO1uTwR9Dabz0g6ie6NpuR/+GHdrBTYmxVRT7lNj4c9BC97cbTXZIrrFBTASQ19J1YEuz6GjUA7Jy3jVilP+a6deo2Dzb8zV2D3e9X6DJbkqKCth48MgcWyrh1APsCVuQ31tYxswqTzwU5VB+7yOoVYnZQomCgObPIDOOfhIlfq8NSTrMj5Pqdatigf8/C4vZnU24tVKTn5W83xoe56+1geIZ1kd+VG/eRtFfNjPncE6MlMG3j6iIqM39AZSZzTaOfGqjDdjiJSTB6oYl9clnlu4IZbo8Ji1iFxlyREClcPsbjICFvcUyZR/63P44AG/ATLYbOIbJND8sxmIJjMo0s9oYh+p0kzEUDQrR85aMr+yQKoDuWtQLzJRVEKfmLsV53oumgpThka7iTBTT/626aRyrF81uEf6sONEHHAo8OU0AXQ0mPb2Cutg8VJMxWPTnWKHRazCk1Px9gQ4x8nMsnooTJHuAij0Tjm8OQnwxvBe8yL7Kt6kt30YzETGsylTF7lCPV9uvxaegi9I8RaVKMfxsEQVKNtbWDw7HtGtn8NG8rKLk/EborDBLkgdU9D/Pb2/V2WHyXJ7+eh5tRmpfZT97cyjDUwh/igfGRD8a0yfSWzpR1he2TxKb2009XV1ZAHCHbnylQPrhdciDv+b4aWD7a8iL258tFTnyuKkE1VbA2Tqss43bCoHsp9e6KDF3u8Hrt7WssmA8urYDV7C5IPIzJhk5muAcF0ng0KTa3jMyNZGI84B3jx08WMSrjDYqWgPlke4JTbBKzujPSF9dNVfHPKafJunl1tbZpLErayO2mZK1tvLHwfW8Qj1VGL/VvbGmRHHExhPysklr8IeIPgQOpnscj9MjVEPjlwHE5nXcRuA4UjF20VEwldBqZZ2qAcxa+tBUvW7CjpumR8h5cPNVTut0vEK74y1AzfObVf09mtCZVcoexBugAw2/81FfsNOhPEAzVPERyVlkA8vI0eL9UoR5JJsqaStUZ1LOc1n6obLKSaewanwK/wXMgX1ao74/x48214MH0tk7BqRPNsYTkbs4aIRTm3XCqjsizEtrxROuSVbpkFXBLHkKy+OSXUXcOCSN7RPY+PGVPTuccxIWLMTS1Xc5LjgneQqo8bihMDgwbOa2x22dRO3+TiX3OxTrBt+uKMvrNiiSO5Ex+TLotkNOGHi+r/7ksGE1qJfKW1OIB2gRUF9995FCihsyj4+RrNojVhlAmwIsS4HT49uWY1hi2T4/4B2yWtMCCBtyWKEq1vIFhXY63DAoDdhHxluOqQKAK2Ol5I9FVz7rg1VvA7tof6oqQkZzAigz50zAy0QM+FS1mdhHCiMcvfPoDfdUZlZTsZCgp0CfSDxSKelXmNsuyYLNcg91AAZg772JpbLnSrXsFWJahFnvt+bW2TXB3m4psv/xoQ9PvJOVeFVqq2iYURjoYVaNjxRSf7c1wWDtmYRLdWydI+2ZBBoQ7LiSr3ThNjAm2MBmjo6S/3OLtVxbN87nRL2jkTA3KE3mt/KKZh8PA53XLVt2qXBD59v8VOiC1O4x933DI2WEghNVg7XojUrSfnCDlzzgD6DRFxdJK011/fdd7yvmGekMEywmk0qZ3zsDXfgiAbVskeEwXd3p56NWDLgxbbwLxffBDsA4QE3tv2dXxSiXkH+La2LAMKaGy5BWrAyjCu8hvgp8PDqyym639npZy4VsKctzKIHqPVqf1C1VhjFvp0F0lzOiVr1pS88rwzxXq32y3ULncfpKhuAhOpTO6S/fo6+k3kVtXgopv1fyQwJfm1VIy1V61d/932BGWcoA3BDmI5k/LCyiDHsPVZ2xz/BHNeiOf7+Ge26XnJsNwPAybpDvUa8vO98qby9cbeh/oyWJltT2ilmNfyt2b2mvxPLRx6qPTIPHbS3/gRA5KFCjJ5JqkoTcVTnaCuenv7vUHQTyrJe29lPA+wBexuyecOcVtyNlwftm/QaqKcZFcWVpOac1bytybdCNc+G3yjeR85mhptpuKqcBgn+lXrlSXxijO7zEtBPqCVNX3vznmnF8BycCIxGVEMPEhgDQZGthHTKgnqG+A///MrfuvIbXAVOBu9qD8gG9taPUmRQtWaaqiX0GIEWTLvetIkzPUyD4T1MDweaxIX7ptUCLKGa5ub9xzfrI7sJTBurFC/FghqEYo81Wao2P3F+dY3KsEBeljIEhA3xTq9w/bfjN+vHynXnSpOhW45P9WzRLHnYTwD9BkbeBuCZf2qxbQxCPz5gwYUxhXi3M+JQ43rR9c3sbpISXg+3skJbgCzGNo7+Z7B59eWIONfeSrLvnu+8pRcSv4nMBVVggYwoy8KWyk0rQyNqhyyO5TxF5HRtbwqLms4qFt4jr/xCc1T30Z6aaBHaRumE6a2ch11eqtuK8AgiUfVae/mdvcPLqaK9V+uzzy98G1nLg/yIblK8lXKlttKXRcE0sxsdg7mV5WTytYx5eKRbz7g3h2LRg4oTY5/1sdExVfNh8reCDyxnI72qK75PkmoYY1tqtQ3m+7yxrCQgpcLSHfw3REP0fXrZ8z0JJ9ZgFmaziHgaSxw+Ix9JpH+eIxXWp/EJUbwBvjudA7LptTl7jcO4lfCnOsTG6DHgnsqXngcyiBfKonpQfxRG8iHzhHPybEVRncaZcqFcGieH8/1COEtBMaDGXDJf5/g6J3hNKgT/PuAW0s3T2J8Zpv3wDRB4PcJRMr0oHexiJ0jVgN3t+dxULowapqwxJZBMA/aaVC2jwTFj2FsnBJcUoktvxpuLYeXDmcxJke8vLuUfct9OiTgW5UZpqYuNXTZvWRtnRlDjZ8TdcuqNcLl/ryODzmYrW4GXBckM4ZaHXOP7vwXc0DdaPJ+9//USi/MdNeGxFvuYeeA2O2Xam/j2FBJIcT+3i6UYWU9d9+b1bp3atoX/e6Nm8Q3x6Uw1cBlw6cRjdSBk9ABcNtMV+M5Ad/Pm94AYJa7T+BopYvKao4ue7O1IT3/TI6muq9epVCFvacO+6HcD+dWNeRv/IzP7ZYSN0WjLBqYyGKvdWTbNQ/fpG/dIGQ9NNdQzwSAhnplVCe2y2Rn+bNAcPdHqxxiMkm3d9HGf2ZDhKTaDQjlxHgxuu9V8XzojaYZAb+49mCNH/Q4A7VgkTl6ZYjUrp1osfhqFRHK3H1QGnp6DH16POITGo5ilGIyNmFPJRcUIY2jPA1/YOdUEGWh5HrRSma0q92WhqLyPVpoVyntX96sgE+/AqjKg9xxErF5nn4K9ykNUs6fBnHO95wV8WmEIsNookhk9sDOG957HP3L5ZC8smYIMD0eeH9ACUKbsxrllwG92L8VPWcsX3PkMcmGvBCEZLY7A4KHUVwnMlsH/5dVAss5AEtmhw4nWqWg7nbUbbD+lXrJoog432rzEF/jENdPu0ZK9qhoUM6apkyfWeLVnVsxOTd4UKZCSFGN2hO/nBVrc/bk7AKnXAx1FRsATI+lYTB7s0ezj8ks53C0olurPjD2eSAbMED3McWFiOgLoaNvK9/xHajuStvvHbBaXTrKyV2n0raDaJfipytbNwC4VDoTreARU9hJiQtXC4MNGYSKkdYpXJEn2CF0OF/F1+leum9ymWfMc+Jpv5uUT5TOyfTb21W9/JSa/pjL5lYnyhbMUczvmWsvWBDdNpfzwaq7MCqoz7YwFQPRULGLuExr+wxpnbvyL95yjkCaWis8NGsAi1lVi8XqVIiEETT3K0sYGwK+FALtrfEJws9g9tITVip3mmjcRsp4MpF0by9bJBpK86zMcucd31WKDQbI8727FqArOhvOmI4x6mtuqjBN+1jrrrNyEyas9pwA2tuCYPdeyj+/H71l2HcDkZoahhaAlg1yZTvfVcu5GAkSGB8cA3PT4fwq6ojjZeM0SqFx4J5SzP12pbQIi/y4d6Uov3ZgslPulpfzQcaHbcsZWtfmDqu8HJkYS1DKjD8hf7c8lyYL/w+9ds/z9jkQPmt6KIoEM7y1/W7VYvoGWrMv4v86GtSmUHUWXO3rf3T+S/2k5eW0FFS18CHR3HVVzWDZuQDfI7WYgjfsLgp6DRC4BqKdouvgkXE1M2ROzNuwrRdmAkHrdm9Kiayx1GMk2WvEzEjwCS/79vd0UqW7Y/Fg3An+E+/yub/ZNbz3PT0i34RCxBv9YkjazwtcsRGlczgZr6PgQ0RuLmB4zEg3Y4JkBy+CHJHbdM8wYzO8bKXCv8HOK2MPvNWNriM9nDySqy9ealRAFYkOijH3CskwkW1DFL/836La/19t5k9v3Pdzuk93yK2H1zpXMnLj5YDYnYnq2P0yC29ti6Hzi+XoMKvP593jHJMsxR67SjwQ3flKYTlBeqpSydthMetm9XMx44SaW1FXm2ODrcUmrRjJHbPkCSV1SCcFA011BAniJYnG8uoozE0BdZ2ZCYLuRWSTBu5WQ4/NuX7GV3CXO7HI1bt5zQbgIS9zef8I9ksrj/r3cNUh6ItYI+siMzff8IxLLzCvSNWkUYXlVmNBrztEFfTUUGXRhf25uoQsSKVI8lo+HjdLQ/SWFNycqFspQJkv5BK5AFzFW9hFNvkzxlh9Iye3ODcuzni/F+c+5V6U9z1M9BhelPl04E4WmmRR50SDAiOahvJfoqA5gxqm1r37yZbg/lLbnmQsHW4r3CBlXtDqXls5bUDhbiDyIb8JaM7ap6hNybeF9BxPE/NEtsv1nEQAvqAMLNkTZqJnncOGsqvMPEDY+tPxHIkD7LnbEZ5c6CTz/AVIUUVwYKbCGqf1np6XipOuAcH6S9PziJ+zi+lMdz66pgsD90eaZcpR2MksAw5pn6bYOWD+ecTi2oW2GQ5IELZVgEgyMdLETXPbEExC2R2mMMa4Ey9nTR7gs5JgP4YQ74nl4KXm9o/800itWckPqz0n1bcxrP5E5RRjOMK5bdbhGm3TtlQfS/I8baJ8fF2wwQkoj76JfLw/lcUCUAjRRnXST5TUVHpZvtwiQU6WESWEIpq/NO30G8qPjUfNm1QT67BV89gD1OO7tqO3o5YCwvVUMA0Sx3/wAcqzSi8pFBQfKOSlIJMCtV8ivxbIaXDy4fXBuhUvATt8ncaq/FvAt1Heik2bgEu0noX7Z/bQk8VvdDaw/Zl8rvv2H1Jcof/Pd40+yz8ouLz2+q1Ql/lbEEWTCe3E+C/umBCRDluXIiI+Go/cWP5xVWyeyVNTE9djySQxILsue5N9q9vjV6rv/6CYb2h4I36dZuBB95WF0Mr5bKGNa+yBEmsI5o7qM+5ijfxqilpJUoXuAJRR2/itPtVKLaXDdoJzHpBsQ3b0MkgFH1HhRGnXn0b+aSoTUCQXkJr5nkj58bsISgTs46QjiO0s7L8Q8ASJiX31jYuwDOM9mif6ed1IHUEOCO24fpk4xvaqfV0MeCobVBIK2aX7lCNOj2AUCQD7kxyKA9W3yCnw5loIUDyfzVeoTF5A5FxYBn8Op52T6A4rJUYjA2mWV7v3GPu+qtXE4nKJ/dIYGAzS/dtKYJl92+fz3o2llyhvuszx0c/s0L9vQcF+7WkrzvG145JpDnr+/pBqFerTmFt07Ec1nFTUst/HzX7pA2ffnSvvTnieh3zwtyMHG2rsm47fiOUvXeNLrfrAWAM4eYR9pQ9N/2ueZTjbzOtmU0Fbo9Pz5barcAoiCcAbv90LR6JBD0rldeIbN1BWM/UagiyJ0glsfxJSkxJi2PhpQ+TpgVAjzrt9BrYZE7lcgD3BzBq2mDPi8D3YHwE1O5IAKXyI+5bgtKa+WnqwQYHxAO58ZtmmuvRVEym8mEgdihDi7N0jekpAmKuYRYFvoqNBmWTwDgB6R7ijQTsU+PkzSfBDgR9YBPGxVPApcUIBODh1fCJMxnUtxG1IB+LZ5zf5LeGdoWz4FqvH1WYH6E8uKgEKEAyWMMSCeJU6EqBSn+DIsvIPJ1bShfAqipI2WiSGz0XoB+9N49Xrgh4GJjo/OCMKSDvDhhzpw9erwBbCm9wailu9TeF+0M7cAUTcfBXb2fXreiGetTARRYmwpE/IVIyan4V3uAK6oLtnmGIxSN9VvnGLJcyj67YNkE14NyIhBAn2B9G5SfX2q8HLJilK6Rw5/fCkJw+7SBYj6CttXP8oj1bvXSQJfIt2qnrGPysb4YW7yY72t7R1lA42Qty8m5m7DMOgmYcg3BgM17zDTTpwiRzGDBDEE2ab78I9V3cD0ILduVI5NikHnhOM490qa0HSx8420KrIaIBukwqfj/61+2quc1MiQHbQC1oCZvGSt0NSWg4+1OQ7yW5HUo0HF3iu3OPtE2k/D0ijGvEWoEKn34GmvI5eJQx5CIo/re8+Pa+Yax6UQOV3y55edS+cozznFdA19wfSCYGFa7OrSXNH4U4o8ucrNXVLkh4fwprl+coYHdu7pNv6meLbz3s5t50epQl299FuI0Es8fvIKRziqFs5x7WJbwAfkR/L7z1od/V5lvY4fZcLpwu+jrp0fp4NOGwQ+dm/6gPJ8ZVQwJ9q4G18aTcdYzK0Aat4DP1q+FIttIU21HVAEtkL8b8oS3tdv90VYK8tZ4hrw6Ucu/hzsgopIXG/LbwwNrwWkCY5F+KPHApk6rUzJhLMoIWGleGQgGrSVFmS6L2UifzfxGr7ZKonmzb0GsX1THaLR5FImQo4T0BHanzXoAMBQK1XyHMYahyCGfIT6HR5mOzUNZkKXag3EVWTHvYR9JjnP6bYcw9YrxptC/forUCdPdmHianXH2DGvVOVNMdpvd/DE1LZGOb8rJi7xUr/rDiQQdI8kqIIipu2ZJ/crLaHIhMA4GKDw3QbjxGQOHew7V5mrz8pGPMpitFFs2ZCsz7wG1f7tC+HNsWrb1hgS9LRm40Ueyi9HGxDRDKcaxA0pozMJvHuzoFuI+D2IRHpFoK2AAQES6yptOGsSuJMUG5oDxnVL02VcLmW86eI9VcU+6xGhyVhg2uqhsrmmR727jpqxlPiQFPwoH025BaWmVN5Z1878RMlyYuaP3WIfz5VLeMEPcBL3i4te9wRNKM93ee/OP8CPDE9bEcKs4Hd/FyeyPcoJzz6vkqqVlun8eKO8/+vclGa4NFa1gekdsQbgvcC06e2zvbqHi9wA9VvMG0+p5oTYY/O+ktQAPR8VrMkb6PMMGPdk6ea/B6s8IcEg4nrfg8RxRKnWDFZ2SBod+wpvg506OF0vZMOjORUCqF7yo5ayka+itrUzz1gjdqMQXh+cxAsYBVHXdy2RL8fjdO+YhcOouyMz1gNyxnbNgNrkStwKJjLOTCj8xo2M/Tgh2yg+Gt6plJfxf6QwBujOy+1gT/0heSNDtJzVBMbyg3Knj2Obh/9y9u/gO0MaBRYuO9Ku9W078XASYB2GcIu3z8FZp4LrKlXADLCWtexExyc5TAMmTpCfFfmCtQMCPt0zM5aUGIIW8mROxN2WScJB3iYIyeELST5lff4DENmH/cJBS3Kc0TnUVUGzOdMMpJHtzany3pRhAP0NgaOxHMhTggCN8q1w2+RsP1infRWcsJ3TO/qQpSWKgHqk3sCEtVEYXE7rgQegjNpZjnVUDWhJ1BNq2CzXOZEDyR2IKqH4jJF5OwBArI98a2H3ol4rKvJ2NG1jHU/UzrgVNyPGN+8IKsvRWWA0WTzyilSwQkyOutvCZFuggKCueepyXa4KlF6DYE/DWCUjqKF8B9gqWcRzy46xlGN6Qc/7nA8jtW/l0f+4zJS+AjHM3Q/wrBuWdlwD0xdw71bn8FoCIHiANAONcS2nIw7MaTopRZ62FsBd2keU8x14zhfeWpxrTeJR/ujih4cN90vSigKip42YKBygViUjO6puIRAD36I79DpuWO60apmVX3oZ6fwHlwconxVzEh9zUGwkSY+7E5H0Lkwvgpge5hqSlf611Bs/EZuCSOC5qXJNym0sbhT6xk7Jm97cEUb+E6j2fPhuXh1nB0r+yZhlkpSmWSXYURYl6lgLPWe4d7gJqRXNhmyiJLi2tVt811GWIFAyc/JsN2yOhH3WUSgBA+vc3CGdZXq49TFWUQy3khHRaKLbMcwJi4bKzsVWiXWl7Po93jy3GihWpXLWzIK42WmkJ2VmL8hyE88cGSXZpai2T7/UUBCIHIYdqzZdj3ki0sjaMWtdbmlmzWJEgV2obM7xgKY91Z40dR3DgVi9Zw3mc/Yw/TGhNSSaHnUbcs93AFyYH0F4V98zyOQ/PlEyXRPyHxcrJQO0OuZa9XJorRfnGGSAz/tYVTwVmHJAuUkwVRRDOmkWiyAKhEdcNQzTRPaaCEnZAcb3QDbkiOvpB/gXfe+V3EmMTHrSOUR48H/EXRUF3V3NESwbRIQkGkCiPEK376ms4jHOB+1gk0Biwq2siecyf7pKq1X5i755NiIR7mZ08IHOoRQQQLlNL9W+Ull1rSVpymn3C10stdFS/WrhdCZSjDi6B3q7vad8PQeBNotX0ijAL9BcQpFeWh/50b5RqNp2vZ8o0Y5j/wsFNLn8Kx/CDJrp8rUDZY4Mp3FBE6E90g0doHusLZqPRydMEwD1X5gbtbH02PUNJOwvmwmHLHYRiGZ8kL6aG+mOFfIPPqcEeSvDFC0440bcqlooiisZTiv3d9nLokDUFjOiUsy2Lg+gsuJju4+463bUFmX5fl+2+fNTlyYB7FyNCTeS5ujJG6T+zDcslJtZ5W2Y+PufgKcfe1adM9Ebnt+qx9qC7AhC9NN6Vuhx7UVHi2ZHTuuX2oqH15eBS8BJDmuQ2SMPzwBgrJEB2F09eR2Yq6ufciKzDXIvTMZ+83RJuEEPvrVBdKDfPl0Q8oUlOykid6r8ruFf7yZJxdrKWaC2UffIB9mxP05tHa4c53ScM9T0Bv2/9RnQ1zRj1gVmbA37fpw9q4eTqOigvaYB1h0JKrwq9BcdVnbHpSzJVkafA+MA87kwDhHCpyTQvsZpieZd0fj8BThj/cKmY21zOerv+hj80DnwdYuSsq7DL1yTyntCgWqn3wwk6V/1GJ/wczWj+WhO3Nvhkc9bAt0s9eG1LLqAoaMNUp2YLpgdLXqek/lax+4nERKkorRI9J2EopBkHA46NKV9Cix2lcBYkcrxC8bBdlgc+1HgleoVv8M9d/Rd9mXX63jyCLDVimGs6TKAI1VLRfbPANphlu/yBWcSLt/u+x2R8IGKMQPWOfY4l3p2ytGiI4/9efprRxzMiJWz1OBGQKQiBUqD8vEVtUA6lDtB8qASSZj08IXevBKVs5Op9fHS5Fx6f09YnHXks+qFpDk5h1y599CqLFOlaWHyxNJrzvo9wxA4M575oGj2dSZ1FeKAqBCas0aTxrU1vZZWFYDsSuVq5VmXmNp8ErA2W48DqHvmejDA6wZtw+TxeW9N8F4QgnpHC4vPn2dcKTeofup5Wut8Y/P6pQHE047Pvklf1KcB3ztybTzgKtNYrd0wQrSC37zUiIiq9OTb3wqmX8EJUQqwAXowW4I+9SIQcLw+oj8tm0VYxzoXUe7PvtDmbJdbJMmtXGLsG2E2u3sL94fD2I7Vy36mp9UzpqUW+7R3bPi4chZ/Ll8JhHljpBZvycuJhiFOfEUN7FM4unPtZYYc1UNW+ko0tboV+EuJb7hePOrsB+PsmIwyoM64KZa9YgiQYYySwzA+2U8OvtSmX3l3/WpyVUBm6iEQaQl8fd4+4zy2VpWWQ7ORaY0zWncccXz2ZHgrUA3XFL9t5l2fme98Bq81s986w+9oRt/ZTF5z5v4AB+//Mc74nz/Hmar+s8CsR37bYK8P+DoDvfGBX3eQ1x/0jQ1OcHIPszkb2eNMweP4XGWh9OxeCq3M96AXF/h57vLFM+AdalZads7NcCjLt/rjjpJ4UB3U/kyPcX2aJHDUkw2lEUBDDzxzS1Zfy7GGo122RUCU1cdh5w0VFAe2WMFyOaKI0CJ9em6myvTmmMnqUKo5jl6P7T/BrRSbcZRMuA/TIKBH300yTLvHWqkUQg8rqHnKcB2E7kHjXY04TdDz8bKgTsSkFoBWRKcYkWak1GJFmxf7NTmJ3OjlxSFQLxcO0brlNryQq/GoNMLYprOiLlrROidoIL0cDEDndrV1ZQvepjxjHs+oGPmaORrOMLBAJAGmWrQEjuCQJ/XOqFYk21x3/CXHWpzPlftz7KzWFCOh/LD7YOjdViDWbbaXWz/p5M3EwkYDeTYttuzWe2DkUF8Pbq5KPZJhkumi9l3uXJVRQgNmfsY9JgLTPgXgizuHjwO4MoiEfph4AGnfRKkxTzDIhXwpzXqCcTyHE7J6EnCXnCFdS7KD7QEBqS0JyHzf3SrLqe+nORH25SQ7ehKvrdNwBMzbzIFzKXLyQToicRMeqqAFq8+ju39qzqBxad64NyBx1Upy6zVSAfviQhl/nS9viqfI0Jz7+9xPWGqBW3Z6C+uHTpw8GO4vhuJOIJ5kD2x3C5xjXtGry1grecC7HhMrnuy+bLBKpIgJrEMaXBDxKCBxLkZojkZ3zPcSF4vdsNzr86DYWMa1CbA5n1IzzkY1txPYTzah6JVym2H7KCRa/xZdkugcbYPzAOGEKxkBcMXRmYxyrmgD80T4M94LTho78XbKBxc4wNo740iW4r4mwEvZrdYTlYvNo7FJBzDN1JIA4BuUTV9ks7gMME8Uq4p8RDtDUY91sQAMABJNoQlbu27P5ae0kGYDsbjHqQ0jYjMJ2owOxCNUVhN2woQq/lBDyCoB/ojMoBkAtGtCXKrhRoKtuyEyBJSIcTVLCjwXffok2A16XZAQwahlB0ksc53huiVCOyRAxPmVD3ElfhHZiumZKf6VKyxJiPA0gG7n4x15vmXMQodvQeHJt+zp6tm7kkYbCYwzBHGNOOV81Kkl1HZnqGTM8owUhrkAOd2uMXQ2r7LkI1Km+NSXYOyTVDvcM4NRCvNFJKF+hbmIjWRzmDqBHR3neVjNJtXEnmi5EYtfvqWVJ5AvwiPMN8brZ8D45bWStjdVPw7gNq3o3AGuRwS3XZ19SdMOp+WypT6aqi+2RQvw/YXaF+7TfgIjVqayTsGnoPgsHdkg5YAlSlha++BTlD0JLHGvT8naVwpuaVDtOZ11QxxWYtB5CsUzPruCQXiBG2sIKXVoVWwoCWJksT7CaSHWz7MU+X2Swou16sW6b0HrDZ7mRiIlSyNiuXy9h9BOdc4eudL+APXosUwAWMasQfHhYJ58t5fTwnyNitBcEhSG7OMjTGxdrhLVIKZFgKQBwlGOJAGXDQNG/OzGuFAzxgZBuhp2hGaTDfG7lnQDqdcUFdaBgBHpRidA4uqWqCrzJbXQDFDuzPoF4K66kfmYKdUuGTDvLL8wmkKTPP875ep0DmbRDbi4vF6sbQBX3RQEduBYHswGaUt1/5+fC8k4Sop6kk43Zncl98aLa1QMYIu+qroc9NjgGAA45IYJuFlrTZA458YDeEOYT5NOlHq184c4WfRKP+OtzEkNbmgfVVr9sEJxC+XNlyLz+LjWdQKRKuU+FLXDWtgCW76HsXRkWFgU4NbaZnDNsnJ8mpPCrRT406PK+LAYvl9kX50buaVKQUMFLHJlsyEong+D5MAhb9G7wNjgbOQu6CycbaViXnkekRV/1wpj6/BLN77r0En+TWcvrLOatwVCY3qvsZyrmw6iKv83+nKrBp4pYzGgdn/IHcp8Zd7H3b47JpKh2LQ6Uwkj4cTRNHnxvVBtOZxyj2F45hZQWmQKo9XRnh50b7qlrkDdmbWCdCBXNCsMQhHBwX6Ah2imZyhHpTNT+hyWS2OjeJ0mp+iL1Ra1jRkItsfQrFewvh3o3VsHGktfVqywXwKeZOwjfxvvCRPbp9KIwuGGZuEJinOFybMifn7UdVwX7w2JJxA7qiSo+FB9Um1Q+8mCN5y8gE1jrQtJlFHG1N8mXLmDLpq80yhHrB3uFn1HzLvcUq7nLevwamlWG6ipJskjrQKsf1xF/KFFex2YPXMuSsNqgGUhtYLxLnIuXJLIvQTBfefanIP3wXk1R3gcCqiRpBTfVdNklODVSs9djCXngbcJeKNEL3Pht2mmLjPgHszbsR2LkWpsZ7fb/4hfZy10FLIoBVjVIlqWC0qflmqprUCIYnrgMMgRe8lRQezXnMZtB6Bl4c825cvesoWnXoB4Dc77MbGzLDnhIGIfp8jZMlSalOUOWyzyrKaz9svFslRXMudbzNyynarwbYGcyKNEtizU7PCzKdJ06jP0fTut7h3l5ZiiLJGKcbfGkCi9u1m65AsQk7eohJFiZhUbGjMegY0DM6ZKw2eQ+bUYq/lvKr6gHqiMOl0jF95YMInwLnncBZuSiuisirl0tKwDOT+1WPe1yi88YktfJwHJ4y4+ljUlS5b94tNtXaFMAwJauc7jI4047/HPo7sGgbK6Jy2C7mu/yuOEI+kGVr64k4VWfuEnOjR3VOkysrlFIGKO5RwIHSJxbZDNZm3A1UXxoW2i/bKq5HJtlIPZ+F/l2DrwRViVS63WLcN5sOrkgPyAVIlZry4wdK8eTED/Z8+rduclDzlP2PJYvW3TiAXIBlpKcpnddrK3bdeLJLOME+X2DtuwvySislUqM6LbRuV9O8ddZ1FSEk2i92QWk4KIgaJXG2SMlSQ10hpIPxTWaTEhlqQGFcuabG9TrP1xYS+fPUvKAsUHFgqFS80jrvXF9gG5Q2/vzDB93Ll+FT6KsnMkvjpyTIeP5TW0xbCa0ex8NAlLBIWTjzXMqW8+7eWfV/TayDYc+cpjGeLMkOfIQYIna0u13F9xw1/7VEO7dSJLKOCjMHYyrXxV0GKOdlSNyJTIWRGHVG5lBDZ17EdzmD21bk5Iyv1t0fs276+bvsys+05DKFo5rcFy6ujYlnyGe98uK6A2skQT3h48tpyBalk0h1dgoUk1iduitLkVxDr5jcu7uOVdSiu0VaLrzbgGzODy677WZ4Kc28jZbLDGJqeoOdJOY0H+EG7CU/nO1w40FiFoTm0k328hcIXfYakDjV7lvWSE+gzCq7iMj5toTygTRG4DFqNgJlU9X75rWi+x2H3lOi475ceGnQ7O9ogkx9xUa1m7AA0psuuy9ex1ac/sIktYuq+vIJJ4IHhgHxIbR1uhkGxNCahMJ6UAfUK/xdOnPhn1jOFUyZtFzbEXl42LNntkNw1Jc6C3wx7ecx9IoGBQwr+93J+V1u4QUmNs6l3I5DJ0ytP3TZppvrcQ6C87C/jr8to+FVJWzFbaL1n+AZx84tHI/f5t92UXW5lFpHBt9Aj3eFHWAqw1Hl9qnvxw0czT4IZCDZhX7Y8knrQ1CMztma9VaC06ZxmHEFtpomZdJx+DTLcxVV3sRLIbKh5mTSmBNBbBXv/admFTdtyR0sJq4Tz0WI0SmNygYxc6AWW5RPwtTQ/Ho+gNGWBmCa4GKoNzE7IgywqamjAZ0pTsoE/hj3jhEPevuhhB25zIN1K43HeEDXEpx2JjHITlKWp+3N+iBXhvnMbDE3H8gjXz0PSzjIv12hdG/5U3Mr6xRa4vrr/TLW9HLJ/TDEf0b9XuhL+0DNeDRtuH7Opb3+O+DuFyX+H79UHHxcBlsH3063nJEiHlDHPp6urlvXGN0JDSESfyFZej0bUwTBRmnLAfJm9/fDMsAkQmXt/A0qcvjzkO4BclN5cr/syrxyp9xtVwQ/98VmR9P/tKLM+nrcDQfuOrbexghuMMndpFvGRc9KJlMaSW3KlUVCkhujNRuc8PVuDYn7mnMiMY4knV/E5/6M0GydEI4s4tGeMXTCDq9piGP9WaEgtCBrlDutjoZMj8PB1tqzmnr01Zy5y3wt5zKrkFTUlOMS1Z2mveNGbcBsamR6jWGCgnEuyQd5EqO8TzRx4o93YI+Uhrc54AdYdE3cmcJdWLvCgkRvdw1Pf3TY5JrCWNoX2A4i3HtTOxWvBiR1ywQnUskw73TYgLXYdn/c8WU29vQTa6K88LgcVwKDa/9J/aeo/5FhN9/y7saCr8PZl0qylwG2kfXvfBWme4w624EO7o1t1axQuvgvl4RzB+uvv2+1eQF7gSSm4Pf6KECzqgFcZg3TiMHThLczITVBJl1ifc4ofh+ej4fhQWYh7ow2dwkSQKxuwtudzXyqldi7HDHzwh2X0x9/wpE+4q0NGVdhfU+rmRExBV76/n34/t3RQCO03JvUGkQ0KeoujYX8zOUgOkhfI4Q9PZ2LcO+fLoXq/JpzASKB+f7Dj3Yhmfb4DJ6zP3Wkx9ue+zI+ndNK38e8PDJzpa2A/0WXjb2eUPlkc6MrZ+N5JgcjM2UZFO/9iLvBHQAGwqIpRvOm+KxRrql4p1+PIHf/9Z/qxYyQu4C1WYeDN8HvvIanMF9RCgMLCpynfPIG6PKLX+5j8sMRuPlNlbafEIICMJQj0VRfAsSNkkHVTPoseOFZfMg00nEWxSxRwPUoJ/mHp5M/WOcCn4lib+zZjH3zKSxy450ibWh2CfyoKVYECkFYD0I94LF9dxKGZcHDm0DkhIS08ZEN24zYJBQRJ9O1T3GkVCMoJRjyfClOcUBKbhjRrVZyfHCtE5ncdnWLB+Yodk2LXzrPDTFkm12UAjNTBupBPZod30sqjIIOkrIzT+kx4Gr5WOrsYHnipg5osX03gvdqC7Fpkh8QmPat5CLcY0gOoJCyIaoT0nIjIa4I2q7qW94w0z7ig2o63KafFCeMzRDeA1IOXSRlcQEPPMynln+s74yoDRN2TTgNckrBPtn/zk3iwMaFDMPy4y3haqz3Yf/Gt6/k48k8STdkPRr1VOeqSp1w0S13GSLVdRFFq2nFgJWG2JWHh249kMKOZNY2YLucxgv1DbZUzdTrcYYqZEJLI+vBtQsbyJmqdhsJUq9PS+4nU9ESYuNTDwawCgrjNYCePdvQGpHM9exYS+worv6kbAhb4/9GZyKmE4XZj3rq57o0Ey6qWBP/ifftPG+ECaHD2KpVQpoBUyjUvUcOVtG0DoRul+v3Myli7Gc3ClI0iFIgAI0kCHsUvUx3vnSGmOTF47s3w4MAfztRHPsPhMTkCX+tG2ulp0nlExUjz5aNfWuG2XIjGBLFWekHPnslbOEGdUqcBOqeHEyGZPsejCmJw1Yg1DXEHqziqxa85smQA/wS9QlinrCzb/iHzQiBGd6O1E2dWRpsie+g9R8T6M0x+JxPybisMutimfGctHWDPu1GrGsccnlF6DnYtaDtFg2SXiuDGetXy3lVkR9YbXE57pAA1pCn+2A5qCilrSvvMoHfP9XIsWUhDkMUQeHvM9+9U3ZBnf/RvnrRgd5VYe/jBsPgD0d85M9hWRnSFO7lQBExYwekZYCleKgNQZvgTluud48Hl7iFQ+Dy/osMm7aSWjWtUykhbjQ6o8a11DG6+YArZDJZhKh6o2JSc2nT+FCrW7vu69diA7kn68m8c7Rny3YLSqxaZuKxfPenN7PwpfSo44SlYyYkv86dYAbOtQWPWdpaUlTwWNnCNPvsX460+4HOLuu5xgpKx+UEPxLf0wyAMlwF90b/lxUHH78ZG9t/xx7qUw9OHi8V9JlVzG81r5D9hrGGhe2K3xBja+p2a5uY2k8vx+/QZhxY0nvqeH6kSqwEf/g8Gs4ePZeT9QBCYQefDtxgwRtgCfYU9FMDgfozi/xmvK1+2myyDCnPN7R6WdgkBLODYeJtNRTtDpnT2Xw0UF9z7yruvxBmm0OlgldgjBAjPny4Z6UoAuvKX29wXOnR14agGxyEPBrQFxu34ZXV7AOHLHET4bXTv2VSUgtrynlxsE0Pw2diwHHs7h+kl7tdrSNdIOAqqUW+zrvMOtTSPIMMBjBLjoUt9heB4IMrl9gump47B1YGHnAJX8+aZvUDi9gnzWA7hdVGWee0CB2l7cuejdA2bZGFSpwegLDUcPql5pQ9KDYFoz/KrgpZn3bAv/cIvaTjYA0Cst0jCQrUuRE9BWDfXMiIW0zo3Z9u4NDFsCgBy6Zg+8RMeMbI0xR/couFckSnh+/gykzOGncgY9ALKHum07ILeLA9Zsym/6RdONoou3gy8C0STewb9C4D0bBHI58uwX8px5kQJjFMyrWx4HcOugI9Hj+j1qSLw9XbmAP15LkLxXw1ansjDWPiAv+I+5BNNCos8XYrUfiHwx9sWKMcxp6Q6V5aLAGKSjvA1oUjLP+BGR1KF9SwX4Ivy16SCvDa9LIgi19rPSNxk9msteY5I8GO281rud4keiikX6aV74nsLoxSglWYH8YksisuabBhwmZ0XU6sf0e16e3vhRXhMSSqveKs0MQGL60XK2HD87P4oEUyho64XJR8gLFC2/RNHkXnSUPyp6PBP+3rXoMlpPmP+9rwf/YmJ0lQjHQ/l2NTk55gf4LIkuP4Dafv2CevKvpRrVuBW8jGTxA2Y0MUo2yjHxBVOZ4QfTpvA6k51MJhv21wzN74XYmrgvW3mHJhJHATpHCddgtqJKOHnvY3pnhCtiKtXC2uErYAmypYVZDn58Jppc94Yto05B9LxT5dgFOgQt9wjrMx9mKWsVQNKybh2Ng9638piHz3E2Tf6Q29RVFvt+Zq5yb80cPD8Cw69q5hccewMC6Q1W8u9AM6kqfL8xzTfTem+i1WjQQb/372njWzTfoObERyT5d6T5xjRLB3zxd68136UWgJ2zY7cY0JpKm8U0Pov//03L//wDWgmT/xV7j+Yjy/zTtWec7Z7/IfubH/zKdoSFfEybjpip0bIFWMsPTn6gGTnlttV1oeGcel9+TPD+Cp35QNx9T4Q45EMG3ZAhovbT9bryEQBukxmdRNxJbD+2fI29h/BJfTO+i4Wwdbaks584x6FevM7ze9b3sqrO0WPGZSZZOSS5OI9NXc+/kX1G6qche55iozEzW3mMn5SelzwN8wOxIP7yLAh76ARqrDlS00XlS3pXbokqJYM8B8hO/dHh+rUO6/DK6s2Cod9KcAsO+RpurhiVt1+TqOzMxoToG1jvkGR24OZA8VDL9TBxLE/aLvmI7B4HJFpBzY44WgCrmxKPGxFr5a5pUlqvmm7+4KKtDVR80DuGhKbFxw3AulDr67pfMk/UKOhCCKDR8GmpO5SRNaT7v1GmNGnH89lYoAW2k4X1o3SQNkL9427HLuR7beGf0MzriIVNPBxAlwbTDbdQPhPx8GGGI5YmQ1wpP+49iatOS9HJ1FjxQMzfked51kYWKA3rOLkB048xIwfUjt/P78JMvwuD92+iwWxOgyRUjTRT67OX9kOBIyrUrraYSKXXRlL7i4CzKYSimIXyy/kubG7HbxmeCRFQagWYf0Kzj7Ge6ODVnV0BXWkuW6GU3FDTYTEfNeaOACEeFffaC2hasdhYe9nldQy/c8PXN7xu+B0bvgHDN2L4Goavafgxo2eNsT2o4OvU+Ansb6R2KFR+T0Ycf8W+5BhglOyIeFbOLMyOVMRSR7mxcUXIilEJajxBC+cSU318/UT8agMmibFLMPaKjPGEonQ5mogIyj+/eGpLJztJJ19Fs6YaCXF5II23kicxJpmx+o+d7PShWQykD0K1QikPhpFrdqbN/SBTV5mxe4Vva1uu2mjDY68UrH/oNr4xdkE+3RQs0ypjeYkN/quOKrlkKVDFEH94ioclmYtTxd4qK8nPLxr3K6LM9SR9n1Cp8YfPFPTnegKvXHW5wvs0p/IL+fOayb7xROKEIYk86PpOZxM8Sa6YNm8waf56rfyVE99pDlvTxtZFoS/6ngGLCwY2nocNDTtS51TEc7OBWOOhnY1qFmWCCtJ5Pw/WVQkoUfj0s9yg/HXekEfsvkO4qvNDqJEUyv0quvZPdMr/xEj+TzTyf/KX/5MYEYmFQrVktpelS7VUmBgMRSNMtNbwDRKfPX70kJxir9uT9153g6v3pmADN6HXQsNq4iwD2tmkJkM174OgOGZh7Zz88J6YZNoPs+PXH499c1xr/+Ri3gqDM61X4mlxbt+9me9MZnbTcaiOIr2yJjTRptXOmsZJozVUBSXb7yF06th+6Kuqy8xkOFJqF4ZZjXHsmnH3ZnxlBNlaw5ERlVi9i8dAs+5GeXZiJkFZ5goDAqstuOLs5I6XPFA34t87XFTpsyFHbLbV04VdUDhxaD26hemdfiUfHokdcZPTmW5HgE96O0+aiJ0D0rXSX5k7khMsyMxhVgzIU0owrOx7UvbPGVXhnywVYnMaF31bALyVhY0/GMcfqZa2kErytdvIxZVxyzNozaWd+Wjtw9BGJYaxrNDdIyJdPTqaPVChA4W+2GRhPmQPajivIwq+73u5Thz+gJyk8h2xMg7lDU02hbIRzqu40yHRk9q6gHMJW3p/sWE/B5buGXRDoBk119tp3ZbOZI48tp2UNUUZYnLoMBrYF4BrwiT2HZK8IKgk+VLgglMIZH82bKTbsLtwzRSEuhd05/rSkJjtPW/T9rzPwc8YgHLMZUPDV2ZxjXSmj1h4eShmZJ3ZT+Gl5iSOrG6XvnaCugw7J5rO+QDB+iR0femL9J/tYrmQCeSCK6U0J8cMZ1auO+iyHD/L5VxRV6mRUkVKEVu+dPdyGhNZT1bdfCCOz0JrgOwcDqJsuY5c+k4QpUijzeeJIcnlYuyY4cW33FmKNJYqrZFRRM6cou4pQOLR7qwFYthQAsJ65XMeXWmGUklogRdN8LIC7wRMCwZgTsbGiCoUqJdE9WYR65Gw9QTrqJT90Lp1HXzr1inwbhox57gwPJVdKegm/SaTYtaBli9b1TX/wk35hkHDd4zYxhDoeqyGfYVvCLrVtxPI56106JSHcSf/1qRlxMxKQm3+27Q0OcnoREVSgTYLW7db5Bf+B9SVeQU6qiJgF1j/8EHPLHw+MakjnBYjnPjmtkL4+6wDQkh1llGY83wsmZPLl9Uojzd/rTvOptP/mTX7T+zlHVayNqUiUiKtL3eUhB7glOC5DqPTsY9kTLs1VQiU1DGUMmp1qc2ucvWFQF9fxq7TBQPCrq4o1vv2nJL/s4whIquGBOexZ3biCVnczC0HWRE681B2bYtlWH4GxeeMj80MqvDftpvykZLlBsBcxxAIT9RAlQKIjYHlKIkBJabiXdGpSAhhcyZQZdiHZl0IdL3mYZ/12QdzWjD1uxs6iGcP2xXY8R5c0Y+dSP0fMjps3JvsIwXX0oF1ztXR4LXirhONHFgjlQ3A9e4+7NKupfWmyIPPbaeG2rCbQy9+derldIvBlNd0g7663s01bYhGszcob00sCqt8J4JAJ8voQUa+cKAPPlJaRso60t8WhNXnEGJN7E8gTrLAFdt+03uFbvri/cFomFX7X31szlAYMFDYIRWmjKZ3BPaOuk+PGINXDFF1W+b+M2BGO5KK4Dqn4zziL/sOgcS23Zf2tf+Etd+5Ml/GIqFdra+ok0m+F5shTZemnIlH9vqe5Lu3p+/GnoGajlBUCz8QuvYIeUyNYE/U16cl35vtfO+2eFPbJaJmznK1xHsJq/1K7rNTAH1Tfr2ntle5MiLqKhGU7/Bo77AhMuuGTHTtsSpG94jTQSffc+/hq723geOh4TkA1ZZJXt6uyil6ve5P3bw+NhlQZ3SvL9nAdgSKgFNeskmJOQ7euI9Qfs9G+HHH36CHxauKzsjj9N6boW2PO69aOnVQXcWkYgXsdQhpphka1gETFDklySOQngVwwW16dPneXUE3Cplz0GEq56uPVc6/lfJRePxdwPJ7vcfvrfck15owjkJNJ36092cZLm80G3h/rDevehK3RxwbhoBvCJTyEkjmTyklXJOtwRd7SvwTAVZH6Pmo7482suKAur6h1OUIPCTBG0zcKU6sbDnQKEC6a16Ad5l3/C7EQvEWbcpxOqhqB0rOhMqe+IRemXm0vycINdYj1uwng1ORa2lYpLvnRLW7CqvPtS3K/UTcGpF9JlmMmdUm7l95O0o3C2zeo4DtvRZpJRJgbrqPQLdSO4cx1OKPkWk8MGehLgsUPp0/7Y7njMD4rOZrorxzpLh9mJv6sO40x1lLWKkCcK3SyOMmZh0zb3I+Y+7L9gnw6MTHhY9Z5guwyFV7+JoepnW3pSXON+SOUKZSqMuNJ3KYx34cl+uihdurE0f2BheJcFOjHNLNMg6fPxiisS3xlR5X80YvQEt0aAlfVylBXqal83E5rapjyb8yujJzEjwa6G617j7Ni0JMWvNP7sHJO/igweB0HrfFU9aEPWw6D9lghvk0BHrmuanBIj0UV4gUjPuT3+3p4YfO0H/N6TpWF+2OnFY926KyBip6tLHliDmpP4iEgPX2PWt5Dimy0qVe9tvVjdqzzofyDD6LvHWPYzMXHnrzQVdQ7qBsnzj/Cz0zxVadnbiuxdFXe5mo9LaZwLUgpF5h0WoWvJKYmqK61t9JgmW0iT37VhzyX7EezHJA2F31dp1qNSeOBKiuPHbvFfVK6vZveJdmiBKKQXd/cbxinTa/ABkwGJZeWXCVp+rXG7x9FbFwS2F36qLG7yJRobJu/pUHNXXY3if9W/Kt/Uovz/mNmmBlt8HzrH+am7t6gn4jnSHu9jzQV3uH+7qp9ImUfiRK+NFymiMmLhH7+wB5LHGpbO/LxXQ0QaWZ1WVEdyy3QGmm6aoQ5n1BDXruUWoMj7JtdrT6vSPwzz1T50OKY2VH3H0k+eUigLVTMn8T8LWoA4eM+D3yO6a2pq0SOcstfgNmO1mHX2ubrDMacd7kmQYMm29O3OBeOqo98Er36FLN5ON+uvTIYbj0nFGEprJ+uv/5/fI9P8AfzntgZrDuIcXJx+ZNxBueOS2bJEfhi5DCTuqi/PeP1u+PzbMuX6Q4L+/rRZzeLHWGbCfxdxITbwK2blRfHJ1ssJ9cumsdiLUFZHXffWAphwqB9Xw/I8wZA4P27H2fqj6Ar6Xoxu9acay0JFsjX1jqWtt1D1HrFKBVvoxOMykw5gDqwnjkDrej1emtrSlOIKZGiBArs/mOyZB2M6CKHrbFqxkgwKEjIDq2/CiQ5cuxlB84FLgiHl368EaycgVRVXackQW2Idx8wwDbk/E4pc2IrcqpG4oneGiqkTc1qZa/ZVKs1mrG2cHrCkdy3bjtDsc/7AMUL0W9AMZkaJAdHNvT7FDoKeQt/pCKeUWC6DkudSe+bmeTP35161GHhAaGfT2Ls3ua9fQyI1XxY5VcKyhWyltRfPQ3bU94f07+DHI7Izeffzz55Tow1UdTzToGRNy8SDJRn+dKEjF941kBne8CaLemr5WAWNUzxhNcD0T06jajjUcIj2V9FvMBkn3Djq2AqZlxJDeWE73aJ/+VhuZvgJtzu/PVGm8nstaePiFzZ3F/WqOw0zhhM64dXfic1RN9VAAc5ocg7IxfVGGPishC7K73Hc87F/BGlLXWyhGnG0aEsmoEyO69NEy530HdbtqgfGSeiwFhqgmgbNdXRAYbmm/u5FCSodJboZGwbb1qsKTZJaFgIcxLVO2L+djRabvAthr72MW2Advd5pyt+0DTmWTmnl4g7ZsDE5iYZT9dHOo6crc26Ho2H+0vIPAzmQzkEAUj+PnKZ7U/Dg7gqydZ72EA35xy654ykSk/mlbiaSEov+0+wrBppp0CE5V9TYbEQ0H84I13XwXZYGrfPOI9VCSiyUOduaBJmr8JrXYlPd/5w0TT8Pq14WVRgAjf2L8P40FepBO6utKtXmfK1NgpJ7Oc4wnSKTUCAeIx7wQK+DQnYuNlDzB3sSKpeE6rHsGDx0C8YN4v1almivXyWX/AYwLUXUBVxX2UeEy2WKEIQP2kmohc1+Cw0LgdcV0TsjGjaRbhD4T36BnJ9iXBrpj8L/eWCSzBJwryjLH9DNCAYjNcEGOY/wWTbcZwAlQU4zKX1gB3bdbOgHTRwGxcqGAPf5Z4Rg0hkl+6B7cV1pEs68OzVgoZhCrM+HMqyKq1HTCzGxjJjTvK4ongkkaBoLonOxHHVKtnyJvgV+PjEgbI7uRtWlEeuUQHBF3GL4C6cpd+sVTAmf3J3lgwcfZjmzzh8iIFzd330+PazdVTtI2TorECaSZnu1kTIe62V/wdDSOEBuS+bG4RhjHOYgYT7zeZrFsURO3eqCJq5BYMudXQz9cBKVf2uBOCC+qFFEHPf0SzvR3BFPNzg9lAFZ1RLbcPLuB2/4xN2VieTpblzj92fgzL2ydhqq8MqtunBedcs3Vp5iB7KVDSdSdhFqB8lMejsSws1DK4Z5hC/dnGvRwas6+e7wWXHYVV0iE4p4aC9ZPq8oTcoLSPGylwt6KHTdx0WTbo1o57qbLsKUgShDeTl4Jr8Ox9Fhs+m7TCSo7Ari9Ca6duko5MTsC7i6vrQ49g2H9WrpYDqD6jyQKsuK4B22vUVQAd5UdI+IajfX3HJDRAW2PTRPQrGIDx9p2Be9BcV8v7My3AxPg4aK6+EiyBEjIuHjhN2xx2LM62kwLv+F+4xvOu8rCcrRo+5B5mVXdvJcK78xq+Td3dC7IuOgRsDfsOWKOwlfbjiRhkRUbvhwQyMfQcMOvEyqxu4tc5gnr6cLVUC5uXwr19PyItR78absRdpBoAJj7o7ks4eDvyBwgp6DpcILqiP5G6ZRAn6zBU+K7OKVrDnUKcEm2mNCDrVqSg3b1C0WBOAXuLRdqXBqru5p0OgnnZRBUx7gJ8fTYyEV7Xf4jUevcbg4u40dwp054c8BAu+J/ybKSQIfLwUvdGe2V63vlOQEN1Q4L14lUYwLTS3wrTnfg74M+FGtq81UOurvZ3i4HcGP9PjmTwUXK/in8DJGdxFzrZInnk/U6Izu7PkrFqcFHKVD6twKiBWVqX7guSfKvcl2RYxqVCYkvWnrddwr0V1CARfojvRmZ7DVv+plMRaOMefgFlB9b88q3rdEYBTOk7G2jn7AEAzLc59iuEBlRytkF53M6ehcBJWg3P4tMaJjg35pXYI9iWJYlNL023M8vz7lBSm337TQvv8wK+Lh98IfehE9A92hoxzX3o8RfckYiIHcBH6T8pC1zsqjp9Tl9ZUcov+4ev7rwc2g5qApI9rlmV2S+xJ8S2TdZ+zRB+pbA5BKjH9leSBXFeH5MRJLPn8k6zUZyQB3DwM99L4vW1yrl2ux/JLyAGEMQxGSyozFV237pAGrGTANdbbIED4JXXBNQqtZI3zrSUeaPIOc/0q+gi7pmOJb6GRQxDje+2HQPsAhGrcFWd3it9Ytc4GT7ySjXv+7mXd+ahhVbLE3/QZk5eE7/zJrdBccI06Bpge1wduoH6qcjyfSB7zLpWmZP8k8x4pyG3VYJmXsZ8cmzyGXbbbCn/QMuH6cH4BjXvx/8LsKye8gWIDIdlGFINr/8rHViG3FuFM8uhQvf9I6aqjbLiM6tDIdvY8h42qmzL+RUlm3jmh3m0spf0WrBl0Jpz/5iwjzf14XMZrFKJ0+NGW5+CMgK2lLnDIDUlriWKs0faW3Vb+SVs6BlcI68EVyHYJ4A1M3bh1Ve3ce8N49A54JZosuxQ10w8ZRmFwufHxMvFBpeX8cLKp62eICKd4Blo4lrVdf40aErddCfzWkM3x3GblNRBp7v3AeV3GRL03/V7bs0yKS3AlZSy2ba+0noFmJrUCoi1tC1gBeySoqlW3ZI30w1VLFwG+vSPyQyErD2TIMeVa+PcOW3gKh8r02E5Qm1GCPV50vFMJSKW4Rpfb+RuwWdSB67YqOalU7/EHuKMbOFxGVrGAQUrrdKhYrajyfnyyjQ+iROWcUqUJ6psR2O7KGKC5cGj5XiIJsPY9kC10pYNokuuq43DdmdarTssHQmio2r3aSn7Cp+DU0GnV+hFcZqeZnUcqPbpPPOWRNLDlJnSp6p03pwMdWJvBMLbsw8mS5W4YM8STZZPqJtbk2OPWrZcCedZ5uIFnfP7PpR0iX9U74oyA3GsnaTU//2lto8Usf/+c8/2ZHJRrlMLZMXaCU+zMlUf149x9XBXEyPfslLCwoGuKeGdajuI3bY7PDr9afENNq/J7/Cl6NE6FsHBGyZX9gTr9a/4ANr/WQoHleAG8cxwrKrARW+n4ZbyYva6Fffj1yUil6+3xZ5/3/jwRvj27xsfv4VPG3isPlooXrAnr4mkfTbajULTyo+q4mkWvcfVCTZqvBz7d4hHLkpijW0Jr8dGYlE0DZSNm0Kxdo1odASyZoHKWr6SWYYOasdA4yPOML478WfuzZQRdWUn6xpSXFT+g0cfisNpijWhvxJXI/bSbhXXk5vkwLCZG/ZG0h3zGlxZRE22BlbJ8L3sV+Jc+q0dI1czATFi34J54LkqBIYc/peSbpkybuWu4RFFkkNOY6Ue6aTtPn4dxq3ieSn7TkqTySvozfaVK9tdNGgXp1rUZt0VK8Xf6EbSOGoElyaX1oCB9dC/i0L45wPWuX+t61NZnG0/6q1RZKQeRGtTgAMvNbDSxAKwGZS6FPw7T/mYPSR9dFj4u0vLQOYRxbMpGAWbEG+wBOmz2Z+J7GbGiCPYVBrSIXbGH1A8ldg6YVcQCBaxCJjQf/EV/xVvEslzOYfYDGQL3cI8PfUvPxE4fpoLWPruqpx+eSiEzRJA6ygdBky+dNjQR+hK7Z6JrJqAZh9EbBn5lrbQsDUHqZTs4Jj8MK180+jnjTk+Lhay447PuQzaOKKDrCBqxS8Zj4+rgbuqxFOWTUtCWK0oDr2VmBYURdNG828dMAQYUIDFlYoyS+DPoCQZ44g+++fImn1XsstywO7BSHbPNnCeLMDF0lrxJUg52TSus5+u2O96cZenaq9pEDti5yNuw5WJ1aGPx1spqPp7Mf5YTDouHVN5WWEeSr6U7iYJmqrxtwsJNO+8US04kChrN7EtATK1Kldd0xwO5QrlbQq5Jpg8IGa0zKERk8QvIk0wmVpuUyh46IzWpwFJfTtTHV7IOwq1dU8uGNDVvl226QVnqEYQXcPanPCL+ylo2Axp8yG/ww/iu5Y4g7Aec7IOGs9S7vkjWtT3R/qZGGy27Jg/s3VZtqY9Xe8t7oCohyKGmbQ1TvxWNUPzYYnxf8C7tL6GV/fEQgB26zs4IF+cpa0AmZe7xPqtBWXF0uZrxvvsNZiIlVSRbmkPQUfcoc2mwdtxCzC9u5L9TyBLJPH7P2Wjxsk8f2aB5mXt1gFPcBb3Zh1SnGSh71KLwHRQ25uVp+6aWmHLBIoRRiiAENguqEmwQAgjHCOU07427TRowWpXoKVAK2ydvQH2oC3GpyZxSsEWrP0nhf0n4QBECdyEVjO5eIkeoIGFRFSPTyo90JBPqdWuQTsv3BFyPVXFw2fxe6nYi37y2wDjND/2tnu8IELMIM3Xonj4lB9uqvb1+P2Wn9ZUVNblb8GU+x7vsl0BqAUnZbuph7Cyw4zLHpPSAMDzBRxLGZeOJpnIU/TR7mDhA6T5taFVjw3BEXapMtL0XN24+n+a/G4KD1C10hSB+p2RZi7S863Ajnzbd0zMnbvVv3kyCu8y/ybJbK7gFIRowX35UgQHPmrtTKV0KBa9FdyZ2UL6lXMZzrM6KUGjhb9wG+JZxuidDiJWuvDhgCjhikNWQSxXQlCtk6o4yAt82mdiK1R62l0VjFAVACJUbRXoLH+lTk9ZE21nrLRD4ZW8+SmSgR8KjIBUurnOZ/w12X3d0408fcM52260FPMYKfb/BBP+kTeHTv5/e2fEo5KLn7r8OXAv/io2BoHSGS5VHyCdSGb50ba7ubOg1Ofctut7sVniLtPnJxDXLJy51RwYJdDzCR1LuifMKMS3XrI29ct9p7LvYGroTizB31ZEWPPI5wFHqjEDUPWeIRey4CupryjqPGdRhbHVLui/kIb7QZefk/OllZBFx7iWEH55Ij4tv9HNLiPKV3Kh+Hn+SM0FszNKtsJYaMs8dMKT7kG6CylmmSddN/3bJJzpEHqwInpA970M3LNgW+V0kigFfIFa2uUEZnoK0HrU1EvCL2yXd0yAP1zriwbidRFYmSUjdhDaeyZ7mouGkZy+si9awvz2dgF+3SGwB7zaEM96xeJ8zKGwwSPYaRKyDHatCVkbbXJ9tGK6pxp9i+gNC8Qqn9ftBnzVI+Ri3iHEbw0JgtZZTczTpJPHNOyYC59w/FBf40clmyDgC22R5//Dymu26Rq+X92DCvCeiy18R2hPcxlpnWq97v6Np7QRd2n0BlylvJSCN43KTLKeTZt5cgF+JOjlPRlhAyJ6dHdx0LTPTo7Zp33JCtUKyOsvBzyryu/eM9c3UlMytROtSlbltEXYJ6bbujtC3H1w3AxICs0k12h+Vhhv23LUlFfv+oMKgDhTdxnzkoOw9hJWe9iXnl7BM5OG4bwY4KtNRlhQ0FdNzqJQlrwU5NFcbEvmg9tpK5Tfy44uaFdmr8t8C2C318p+zRxeggmECFUXtoMuNEcWC8DVCHfFfDjJds9QotauN2tWkZe6mm7Fkf1B+wQMtSH5sIMox4gaBNeJdt1UlbgclF9eRnqJazaIWluCVu9JIkG+ive5Zdp6P6jyQiMZcNktHX0G90wHPHv/jM+QgIEMVy3PamefPH7GcjGQI9RlkIz790a67tNTfZYxxwyp+q8ibvyB4lltS5av5o6mI7RGbJQO2S8qmUe4Oh9djsgvINqvvTn11elxmleImwsphcpA5D3JLLPL7WjHbTNgi/uEA+/3BEp1LjTmmrJIJIqJOQUDRBuLmB7Hu8BFiQl3XyITrBsYgQSa6Bs7lQySzopELUmSlzMCFUcqcQlHig3G/eVIQbIbApEbLeHrUbyaHzemNswWWbFGX0wyJReY6eTSk0Sf+dODd0wizASQDVNhuUsyaXFtGfkKkqUv0V2I/bwHq6mRj0y8acP0LfLJZQOrRZD2mpTLeY74lzjlPefyiobq9KCo+keZDJ5Bqel2Rr3ZJwSzRnslbToRFEBTYaSgj/vrkWLyv5knyn/BTkx8XAOfKxXlP/PuW6FEtPH3yA2icXUKvHcaDlpTlGE0Q3nUi4Ne7ycyc+ImODL0yUiOj8qP/f/2P26P+u8x+YUMyWQnRh+GrV8QYXLccyXIDdXb8rlkfDGZ6X5iLuF4qP9E0Lq/SG4aJ7ID5V0bIG35gFoD2VMFxNImQ3jqHOE1ebaf0qkTPdycIloVPAA09YUCwTqm8U6fwo4y6ro9Ef0yVCNjQByIaQ2slegbgNfO+NNBVkxUR9jmnlCJUwsz7HRmmazxgMx3IWySLemZuz+LWH00+Ky5JPt6VseybjuO3IgmNwBoeQDysNuUY3XIWAUJszhJSp77cwufKk/0EcQI8/J6G8H9+7kFXVWFMQVfw5GyRZbvI7ubWS8QjNRGJPcIl/TkoduZ2fGvgZ8qS8Vf2GBCHOUGdjgA99R//boD1/m3V9USSUUMIP7C7Qoloh1j4wGkWeUA04YfiH8Atm9JW9qAABFhm8HyZ1s0/9HWdwI=";
+      const decoded = JSON.parse(zlib2.brotliDecompressSync(Buffer.from(encoded, "base64")).toString());
+      typeCoercionStateMachine = () => decoded;
+      return decoded;
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts
+var coerce_api_parameters_exports = {};
+__export(coerce_api_parameters_exports, {
+  Coercer: () => Coercer,
+  coerceApiParameters: () => coerceApiParameters
+});
+function coerceApiParameters(v3service, action, parameters = {}) {
+  const typeMachine = typeCoercionStateMachine();
+  return new Coercer(typeMachine).coerceApiParameters(v3service, action, parameters);
+}
+function coerceValueToUint8Array(x) {
+  if (x instanceof Uint8Array) {
+    return x;
+  }
+  if (typeof x === "string" || typeof x === "number") {
+    return new TextEncoder().encode(x.toString());
+  }
+  return x;
+}
+function coerceValueToNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  if (typeof x === "string") {
+    const n = Number(x);
+    return isNaN(n) ? x : n;
+  }
+  return x;
+}
+function coerceValueToDate(x) {
+  if (typeof x === "string" || typeof x === "number") {
+    const date = new Date(x);
+    if (isNaN(date.getTime())) {
+      return x;
+    }
+    return date;
+  }
+  return x;
+}
+var Coercer;
+var init_coerce_api_parameters = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts"() {
+    "use strict";
+    init_parameter_types();
+    Coercer = class {
+      constructor(typeMachine) {
+        this.typeMachine = typeMachine;
+      }
+      typeMachine;
+      coerceApiParameters(v3service, action, parameters = {}) {
+        const actionState = this.progress(action.toLowerCase(), this.progress(v3service.toLowerCase(), 0));
+        return this.recurse(parameters, actionState);
+      }
+      testCoerce(value) {
+        return this.recurse(value, 0);
+      }
+      recurse(value, state) {
+        switch (state) {
+          case void 0:
+            return value;
+          case "b":
+            return coerceValueToUint8Array(value);
+          case "n":
+            return coerceValueToNumber(value);
+          case "d":
+            return coerceValueToDate(value);
+        }
+        if (Array.isArray(value)) {
+          const elState = this.progress("*", state);
+          return elState !== void 0 ? value.map((e) => this.recurse(e, elState)) : value;
+        }
+        if (value && typeof value === "object") {
+          const mapState = this.progress("*", state);
+          for (const key of Object.keys(value)) {
+            const fieldState = this.progress(key, state) ?? mapState;
+            if (fieldState !== void 0) {
+              value[key] = this.recurse(value[key], fieldState);
+            }
+          }
+          return value;
+        }
+        return value;
+      }
+      /**
+       * From a given state, return the state we would end up in if we followed this field
+       */
+      progress(field, s) {
+        if (s === void 0 || typeof s !== "number") {
+          return void 0;
+        }
+        return this.typeMachine[s][field];
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts
+var find_client_constructor_exports = {};
+__export(find_client_constructor_exports, {
+  findV3ClientConstructor: () => findV3ClientConstructor
+});
+function findV3ClientConstructor(pkg) {
+  const [_clientName, ServiceClient] = Object.entries(pkg).find(
+    ([name]) => {
+      return name.endsWith("Client") && name !== "__Client";
+    }
+  );
+  return ServiceClient;
+}
+var init_find_client_constructor = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json
+var require_sdk_v2_to_v3 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json"(exports2, module2) {
+    module2.exports = {
+      acmpca: "acm-pca",
+      apigateway: "api-gateway",
+      arczonalshift: "arc-zonal-shift",
+      appmesh: "app-mesh",
+      applicationautoscaling: "application-auto-scaling",
+      applicationinsights: "application-insights",
+      applicationsignals: "application-signals",
+      augmentedairuntime: "sagemaker-a2i-runtime",
+      autoscaling: "auto-scaling",
+      autoscalingplans: "auto-scaling-plans",
+      bcmdataexports: "bcm-data-exports",
+      backupgateway: "backup-gateway",
+      bedrockagent: "bedrock-agent",
+      bedrockagentruntime: "bedrock-agent-runtime",
+      bedrockruntime: "bedrock-runtime",
+      cur: "cost-and-usage-report-service",
+      chimesdkidentity: "chime-sdk-identity",
+      chimesdkmediapipelines: "chime-sdk-media-pipelines",
+      chimesdkmeetings: "chime-sdk-meetings",
+      chimesdkmessaging: "chime-sdk-messaging",
+      chimesdkvoice: "chime-sdk-voice",
+      cloudhsmv2: "cloudhsm-v2",
+      cloudsearchdomain: "cloudsearch-domain",
+      cloudtraildata: "cloudtrail-data",
+      cloudwatchevents: "cloudwatch-events",
+      cloudwatchlogs: "cloudwatch-logs",
+      codegurureviewer: "codeguru-reviewer",
+      codegurusecurity: "codeguru-security",
+      codestarnotifications: "codestar-notifications",
+      codestarconnections: "codestar-connections",
+      cognitoidentity: "cognito-identity",
+      cognitoidentityserviceprovider: "cognito-identity-provider",
+      cognitosync: "cognito-sync",
+      computeoptimizer: "compute-optimizer",
+      configservice: "config-service",
+      connectcontactlens: "connect-contact-lens",
+      costexplorer: "cost-explorer",
+      costoptimizationhub: "cost-optimization-hub",
+      customerprofiles: "customer-profiles",
+      dms: "database-migration-service",
+      datapipeline: "data-pipeline",
+      devopsguru: "devops-guru",
+      devicefarm: "device-farm",
+      directconnect: "direct-connect",
+      directoryservice: "directory-service",
+      discovery: "application-discovery-service",
+      docdbelastic: "docdb-elastic",
+      dynamodbstreams: "dynamodb-streams",
+      ec2instanceconnect: "ec2-instance-connect",
+      ecrpublic: "ecr-public",
+      eksauth: "eks-auth",
+      elb: "elastic-load-balancing",
+      elbv2: "elastic-load-balancing-v2",
+      emrserverless: "emr-serverless",
+      emrcontainers: "emr-containers",
+      es: "elasticsearch-service",
+      elasticbeanstalk: "elastic-beanstalk",
+      elasticinference: "elastic-inference",
+      elastictranscoder: "elastic-transcoder",
+      finspacedata: "finspace-data",
+      forecastqueryservice: "forecastquery",
+      forecastservice: "forecast",
+      globalaccelerator: "global-accelerator",
+      ivsrealtime: "ivs-realtime",
+      inspectorscan: "inspector-scan",
+      iot1clickdevicesservice: "iot-1click-devices-service",
+      iot1clickprojects: "iot-1click-projects",
+      iotevents: "iot-events",
+      ioteventsdata: "iot-events-data",
+      iotjobsdataplane: "iot-jobs-data-plane",
+      iotwireless: "iot-wireless",
+      iotdata: "iot-data-plane",
+      kendraranking: "kendra-ranking",
+      kinesisanalytics: "kinesis-analytics",
+      kinesisanalyticsv2: "kinesis-analytics-v2",
+      kinesisvideo: "kinesis-video",
+      kinesisvideoarchivedmedia: "kinesis-video-archived-media",
+      kinesisvideomedia: "kinesis-video-media",
+      kinesisvideosignalingchannels: "kinesis-video-signaling",
+      kinesisvideowebrtcstorage: "kinesis-video-webrtc-storage",
+      launchwizard: "launch-wizard",
+      lexmodelbuildingservice: "lex-model-building-service",
+      lexmodelsv2: "lex-models-v2",
+      lexruntime: "lex-runtime-service",
+      lexruntimev2: "lex-runtime-v2",
+      licensemanager: "license-manager",
+      licensemanagerlinuxsubscriptions: "license-manager-linux-subscriptions",
+      licensemanagerusersubscriptions: "license-manager-user-subscriptions",
+      machinelearning: "machine-learning",
+      managedblockchainquery: "managedblockchain-query",
+      marketplaceagreement: "marketplace-agreement",
+      marketplacecatalog: "marketplace-catalog",
+      marketplacecommerceanalytics: "marketplace-commerce-analytics",
+      marketplacedeployment: "marketplace-deployment",
+      marketplaceentitlementservice: "marketplace-entitlement-service",
+      marketplacemetering: "marketplace-metering",
+      mediapackagevod: "mediapackage-vod",
+      mediastoredata: "mediastore-data",
+      medicalimaging: "medical-imaging",
+      migrationhub: "migration-hub",
+      migrationhubconfig: "migrationhub-config",
+      migrationhubrefactorspaces: "migration-hub-refactor-spaces",
+      networkfirewall: "network-firewall",
+      paymentcryptography: "payment-cryptography",
+      paymentcryptographydata: "payment-cryptography-data",
+      pcaconnectorad: "pca-connector-ad",
+      pcaconnectorscep: "pca-connector-scep",
+      personalizeevents: "personalize-events",
+      personalizeruntime: "personalize-runtime",
+      pinpointemail: "pinpoint-email",
+      pinpointsmsvoice: "pinpoint-sms-voice",
+      pinpointsmsvoicev2: "pinpoint-sms-voice-v2",
+      qldbsession: "qldb-session",
+      rdsdataservice: "rds-data",
+      redshiftdata: "redshift-data",
+      redshiftserverless: "redshift-serverless",
+      resourceexplorer2: "resource-explorer-2",
+      resourcegroups: "resource-groups",
+      resourcegroupstaggingapi: "resource-groups-tagging-api",
+      route53: "route-53",
+      route53domains: "route-53-domains",
+      route53recoverycluster: "route53-recovery-cluster",
+      route53recoverycontrolconfig: "route53-recovery-control-config",
+      route53recoveryreadiness: "route53-recovery-readiness",
+      s3control: "s3-control",
+      ssmcontacts: "ssm-contacts",
+      ssmincidents: "ssm-incidents",
+      ssmquicksetup: "ssm-quicksetup",
+      ssoadmin: "sso-admin",
+      ssooidc: "sso-oidc",
+      sagemakerfeaturestoreruntime: "sagemaker-featurestore-runtime",
+      sagemakergeospatial: "sagemaker-geospatial",
+      sagemakermetrics: "sagemaker-metrics",
+      sagemakerruntime: "sagemaker-runtime",
+      sagemakeredge: "sagemaker-edge",
+      secretsmanager: "secrets-manager",
+      servicecatalog: "service-catalog",
+      servicecatalogappregistry: "service-catalog-appregistry",
+      servicequotas: "service-quotas",
+      snowdevicemanagement: "snow-device-management",
+      ssmsap: "ssm-sap",
+      stepfunctions: "sfn",
+      storagegateway: "storage-gateway",
+      supportapp: "support-app",
+      timestreaminfluxdb: "timestream-influxdb",
+      timestreamquery: "timestream-query",
+      timestreamwrite: "timestream-write",
+      transcribeservice: "transcribe",
+      vpclattice: "vpc-lattice",
+      voiceid: "voice-id",
+      wafregional: "waf-regional",
+      workspacesthinclient: "workspaces-thin-client",
+      workspacesweb: "workspaces-web"
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json
+var require_sdk_v3_metadata = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json"(exports2, module2) {
+    module2.exports = {
+      accessanalyzer: {
+        iamPrefix: "access-analyzer"
+      },
+      account: {
+        iamPrefix: "account"
+      },
+      "acm-pca": {
+        iamPrefix: "acm-pca"
+      },
+      acm: {
+        iamPrefix: "acm"
+      },
+      amp: {
+        iamPrefix: "aps"
+      },
+      amplify: {
+        iamPrefix: "amplify"
+      },
+      amplifybackend: {
+        iamPrefix: "amplifybackend"
+      },
+      amplifyuibuilder: {
+        iamPrefix: "amplifyuibuilder"
+      },
+      "api-gateway": {
+        iamPrefix: "apigateway"
+      },
+      apigatewaymanagementapi: {
+        iamPrefix: "execute-api"
+      },
+      apigatewayv2: {
+        iamPrefix: "apigateway"
+      },
+      "app-mesh": {
+        iamPrefix: "appmesh"
+      },
+      appconfig: {
+        iamPrefix: "appconfig"
+      },
+      appconfigdata: {
+        iamPrefix: "appconfig"
+      },
+      appfabric: {
+        iamPrefix: "appfabric"
+      },
+      appflow: {
+        iamPrefix: "appflow"
+      },
+      appintegrations: {
+        iamPrefix: "app-integrations"
+      },
+      "application-auto-scaling": {
+        iamPrefix: "application-autoscaling"
+      },
+      "application-discovery-service": {
+        iamPrefix: "discovery"
+      },
+      "application-insights": {
+        iamPrefix: "applicationinsights"
+      },
+      "application-signals": {
+        iamPrefix: "application-signals"
+      },
+      applicationcostprofiler: {
+        iamPrefix: "application-cost-profiler"
+      },
+      apprunner: {
+        iamPrefix: "apprunner"
+      },
+      appstream: {
+        iamPrefix: "appstream"
+      },
+      appsync: {
+        iamPrefix: "appsync"
+      },
+      apptest: {
+        iamPrefix: "apptest"
+      },
+      "arc-zonal-shift": {
+        iamPrefix: "arc-zonal-shift"
+      },
+      artifact: {
+        iamPrefix: "artifact"
+      },
+      athena: {
+        iamPrefix: "athena"
+      },
+      auditmanager: {
+        iamPrefix: "auditmanager"
+      },
+      "auto-scaling-plans": {
+        iamPrefix: "autoscaling-plans"
+      },
+      "auto-scaling": {
+        iamPrefix: "autoscaling"
+      },
+      b2bi: {
+        iamPrefix: "b2bi"
+      },
+      "backup-gateway": {
+        iamPrefix: "backup-gateway"
+      },
+      backup: {
+        iamPrefix: "backup"
+      },
+      backupsearch: {
+        iamPrefix: "backup-search"
+      },
+      batch: {
+        iamPrefix: "batch"
+      },
+      "bcm-data-exports": {
+        iamPrefix: "bcm-data-exports"
+      },
+      "bcm-pricing-calculator": {
+        iamPrefix: "bcm-pricing-calculator"
+      },
+      "bedrock-agent-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-agent": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-runtime": {
+        iamPrefix: "bedrock"
+      },
+      bedrock: {
+        iamPrefix: "bedrock"
+      },
+      billing: {
+        iamPrefix: "billing"
+      },
+      billingconductor: {
+        iamPrefix: "billingconductor"
+      },
+      braket: {
+        iamPrefix: "braket"
+      },
+      budgets: {
+        iamPrefix: "budgets"
+      },
+      chatbot: {
+        iamPrefix: "chatbot"
+      },
+      "chime-sdk-identity": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-media-pipelines": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-meetings": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-messaging": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-voice": {
+        iamPrefix: "chime"
+      },
+      chime: {
+        iamPrefix: "chime"
+      },
+      cleanrooms: {
+        iamPrefix: "cleanrooms"
+      },
+      cleanroomsml: {
+        iamPrefix: "cleanrooms-ml"
+      },
+      cloud9: {
+        iamPrefix: "cloud9"
+      },
+      cloudcontrol: {
+        iamPrefix: "cloudcontrolapi"
+      },
+      clouddirectory: {
+        iamPrefix: "clouddirectory"
+      },
+      cloudformation: {
+        iamPrefix: "cloudformation"
+      },
+      "cloudfront-keyvaluestore": {
+        iamPrefix: "cloudfront-keyvaluestore"
+      },
+      cloudfront: {
+        iamPrefix: "cloudfront"
+      },
+      "cloudhsm-v2": {
+        iamPrefix: "cloudhsm"
+      },
+      cloudhsm: {
+        iamPrefix: "cloudhsm"
+      },
+      "cloudsearch-domain": {
+        iamPrefix: "cloudsearch"
+      },
+      cloudsearch: {
+        iamPrefix: "cloudsearch"
+      },
+      "cloudtrail-data": {
+        iamPrefix: "cloudtrail-data"
+      },
+      cloudtrail: {
+        iamPrefix: "cloudtrail"
+      },
+      "cloudwatch-events": {
+        iamPrefix: "events"
+      },
+      "cloudwatch-logs": {
+        iamPrefix: "logs"
+      },
+      cloudwatch: {
+        iamPrefix: "cloudwatch"
+      },
+      codeartifact: {
+        iamPrefix: "codeartifact"
+      },
+      codebuild: {
+        iamPrefix: "codebuild"
+      },
+      codecatalyst: {},
+      codecommit: {
+        iamPrefix: "codecommit"
+      },
+      codeconnections: {
+        iamPrefix: "codeconnections"
+      },
+      codedeploy: {
+        iamPrefix: "codedeploy"
+      },
+      "codeguru-reviewer": {
+        iamPrefix: "codeguru-reviewer"
+      },
+      "codeguru-security": {
+        iamPrefix: "codeguru-security"
+      },
+      codeguruprofiler: {
+        iamPrefix: "codeguru-profiler"
+      },
+      codepipeline: {
+        iamPrefix: "codepipeline"
+      },
+      "codestar-connections": {
+        iamPrefix: "codestar-connections"
+      },
+      "codestar-notifications": {
+        iamPrefix: "codestar-notifications"
+      },
+      "cognito-identity-provider": {
+        iamPrefix: "cognito-idp"
+      },
+      "cognito-identity": {
+        iamPrefix: "cognito-identity"
+      },
+      "cognito-sync": {
+        iamPrefix: "cognito-sync"
+      },
+      comprehend: {
+        iamPrefix: "comprehend"
+      },
+      comprehendmedical: {
+        iamPrefix: "comprehendmedical"
+      },
+      "compute-optimizer": {
+        iamPrefix: "compute-optimizer"
+      },
+      "config-service": {
+        iamPrefix: "config"
+      },
+      "connect-contact-lens": {
+        iamPrefix: "connect"
+      },
+      connect: {
+        iamPrefix: "connect"
+      },
+      connectcampaigns: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcampaignsv2: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcases: {
+        iamPrefix: "cases"
+      },
+      connectparticipant: {
+        iamPrefix: "execute-api"
+      },
+      controlcatalog: {
+        iamPrefix: "controlcatalog"
+      },
+      controltower: {
+        iamPrefix: "controltower"
+      },
+      "cost-and-usage-report-service": {
+        iamPrefix: "cur"
+      },
+      "cost-explorer": {
+        iamPrefix: "ce"
+      },
+      "cost-optimization-hub": {
+        iamPrefix: "cost-optimization-hub"
+      },
+      "customer-profiles": {
+        iamPrefix: "profile"
+      },
+      "data-pipeline": {
+        iamPrefix: "datapipeline"
+      },
+      "database-migration-service": {
+        iamPrefix: "dms"
+      },
+      databrew: {
+        iamPrefix: "databrew"
+      },
+      dataexchange: {
+        iamPrefix: "dataexchange"
+      },
+      datasync: {
+        iamPrefix: "datasync"
+      },
+      datazone: {
+        iamPrefix: "datazone"
+      },
+      dax: {
+        iamPrefix: "dax"
+      },
+      deadline: {
+        iamPrefix: "deadline"
+      },
+      detective: {
+        iamPrefix: "detective"
+      },
+      "device-farm": {
+        iamPrefix: "devicefarm"
+      },
+      "devops-guru": {
+        iamPrefix: "devops-guru"
+      },
+      "direct-connect": {
+        iamPrefix: "directconnect"
+      },
+      "directory-service-data": {
+        iamPrefix: "ds-data"
+      },
+      "directory-service": {
+        iamPrefix: "ds"
+      },
+      dlm: {
+        iamPrefix: "dlm"
+      },
+      "docdb-elastic": {
+        iamPrefix: "docdb-elastic"
+      },
+      docdb: {
+        iamPrefix: "rds"
+      },
+      drs: {
+        iamPrefix: "drs"
+      },
+      dsql: {
+        iamPrefix: "dsql"
+      },
+      "dynamodb-streams": {
+        iamPrefix: "dynamodb"
+      },
+      dynamodb: {
+        iamPrefix: "dynamodb"
+      },
+      ebs: {
+        iamPrefix: "ebs"
+      },
+      "ec2-instance-connect": {
+        iamPrefix: "ec2-instance-connect"
+      },
+      ec2: {
+        iamPrefix: "ec2"
+      },
+      "ecr-public": {
+        iamPrefix: "ecr-public"
+      },
+      ecr: {
+        iamPrefix: "ecr"
+      },
+      ecs: {
+        iamPrefix: "ecs",
+        commands: [
+          "ExecuteCommand"
+        ]
+      },
+      efs: {
+        iamPrefix: "elasticfilesystem"
+      },
+      "eks-auth": {
+        iamPrefix: "eks-auth"
+      },
+      eks: {
+        iamPrefix: "eks"
+      },
+      "elastic-beanstalk": {
+        iamPrefix: "elasticbeanstalk"
+      },
+      "elastic-load-balancing-v2": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-load-balancing": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-transcoder": {
+        iamPrefix: "elastictranscoder"
+      },
+      elasticache: {
+        iamPrefix: "elasticache"
+      },
+      "elasticsearch-service": {
+        iamPrefix: "es"
+      },
+      "emr-containers": {
+        iamPrefix: "emr-containers"
+      },
+      "emr-serverless": {
+        iamPrefix: "emr-serverless"
+      },
+      emr: {
+        iamPrefix: "elasticmapreduce"
+      },
+      entityresolution: {
+        iamPrefix: "entityresolution"
+      },
+      eventbridge: {
+        iamPrefix: "events"
+      },
+      evidently: {
+        iamPrefix: "evidently"
+      },
+      "finspace-data": {
+        iamPrefix: "finspace-api"
+      },
+      finspace: {
+        iamPrefix: "finspace"
+      },
+      firehose: {
+        iamPrefix: "firehose"
+      },
+      fis: {
+        iamPrefix: "fis"
+      },
+      fms: {
+        iamPrefix: "fms"
+      },
+      forecast: {
+        iamPrefix: "forecast"
+      },
+      forecastquery: {
+        iamPrefix: "forecast"
+      },
+      frauddetector: {
+        iamPrefix: "frauddetector"
+      },
+      freetier: {
+        iamPrefix: "freetier"
+      },
+      fsx: {
+        iamPrefix: "fsx"
+      },
+      gamelift: {
+        iamPrefix: "gamelift"
+      },
+      gameliftstreams: {
+        iamPrefix: "gameliftstreams"
+      },
+      "geo-maps": {
+        iamPrefix: "geo-maps"
+      },
+      "geo-places": {
+        iamPrefix: "geo-places"
+      },
+      "geo-routes": {
+        iamPrefix: "geo-routes"
+      },
+      glacier: {
+        iamPrefix: "glacier"
+      },
+      "global-accelerator": {
+        iamPrefix: "globalaccelerator"
+      },
+      glue: {
+        iamPrefix: "glue"
+      },
+      grafana: {
+        iamPrefix: "grafana"
+      },
+      greengrass: {
+        iamPrefix: "greengrass"
+      },
+      greengrassv2: {
+        iamPrefix: "greengrass"
+      },
+      groundstation: {
+        iamPrefix: "groundstation"
+      },
+      guardduty: {
+        iamPrefix: "guardduty"
+      },
+      health: {
+        iamPrefix: "health"
+      },
+      healthlake: {
+        iamPrefix: "healthlake"
+      },
+      iam: {
+        iamPrefix: "iam"
+      },
+      identitystore: {
+        iamPrefix: "identitystore"
+      },
+      imagebuilder: {
+        iamPrefix: "imagebuilder"
+      },
+      "inspector-scan": {
+        iamPrefix: "inspector-scan"
+      },
+      inspector: {
+        iamPrefix: "inspector"
+      },
+      inspector2: {
+        iamPrefix: "inspector2"
+      },
+      internetmonitor: {
+        iamPrefix: "internetmonitor"
+      },
+      invoicing: {
+        iamPrefix: "invoicing"
+      },
+      "iot-data-plane": {
+        iamPrefix: "iotdata"
+      },
+      "iot-events-data": {
+        iamPrefix: "ioteventsdata"
+      },
+      "iot-events": {
+        iamPrefix: "iotevents"
+      },
+      "iot-jobs-data-plane": {
+        iamPrefix: "iot-jobs-data"
+      },
+      "iot-managed-integrations": {
+        iamPrefix: "iotmanagedintegrations"
+      },
+      "iot-wireless": {
+        iamPrefix: "iotwireless"
+      },
+      iot: {
+        iamPrefix: "iot",
+        commands: [
+          "CreateCommand",
+          "DeleteCommand",
+          "GetCommand",
+          "UpdateCommand"
+        ]
+      },
+      iotanalytics: {
+        iamPrefix: "iotanalytics"
+      },
+      iotdeviceadvisor: {
+        iamPrefix: "iotdeviceadvisor"
+      },
+      iotfleethub: {
+        iamPrefix: "iotfleethub"
+      },
+      iotfleetwise: {
+        iamPrefix: "iotfleetwise"
+      },
+      iotsecuretunneling: {
+        iamPrefix: "IoTSecuredTunneling"
+      },
+      iotsitewise: {
+        iamPrefix: "iotsitewise"
+      },
+      iotthingsgraph: {
+        iamPrefix: "iotthingsgraph"
+      },
+      iottwinmaker: {
+        iamPrefix: "iottwinmaker"
+      },
+      "ivs-realtime": {
+        iamPrefix: "ivs"
+      },
+      ivs: {
+        iamPrefix: "ivs"
+      },
+      ivschat: {
+        iamPrefix: "ivschat"
+      },
+      kafka: {
+        iamPrefix: "kafka"
+      },
+      kafkaconnect: {
+        iamPrefix: "kafkaconnect"
+      },
+      "kendra-ranking": {
+        iamPrefix: "kendra-ranking"
+      },
+      kendra: {
+        iamPrefix: "kendra"
+      },
+      keyspaces: {
+        iamPrefix: "cassandra"
+      },
+      "kinesis-analytics-v2": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-analytics": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-video-archived-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-signaling": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-webrtc-storage": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video": {
+        iamPrefix: "kinesisvideo"
+      },
+      kinesis: {
+        iamPrefix: "kinesis"
+      },
+      kms: {
+        iamPrefix: "kms"
+      },
+      lakeformation: {
+        iamPrefix: "lakeformation"
+      },
+      lambda: {
+        iamPrefix: "lambda"
+      },
+      "launch-wizard": {
+        iamPrefix: "launchwizard"
+      },
+      "lex-model-building-service": {
+        iamPrefix: "lex"
+      },
+      "lex-models-v2": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-service": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-v2": {
+        iamPrefix: "lex"
+      },
+      "license-manager-linux-subscriptions": {
+        iamPrefix: "license-manager-linux-subscriptions"
+      },
+      "license-manager-user-subscriptions": {
+        iamPrefix: "license-manager-user-subscriptions"
+      },
+      "license-manager": {
+        iamPrefix: "license-manager"
+      },
+      lightsail: {
+        iamPrefix: "lightsail"
+      },
+      location: {
+        iamPrefix: "geo"
+      },
+      lookoutequipment: {
+        iamPrefix: "lookoutequipment"
+      },
+      lookoutmetrics: {
+        iamPrefix: "lookoutmetrics"
+      },
+      lookoutvision: {
+        iamPrefix: "lookoutvision"
+      },
+      m2: {
+        iamPrefix: "m2"
+      },
+      "machine-learning": {
+        iamPrefix: "machinelearning"
+      },
+      macie2: {
+        iamPrefix: "macie2"
+      },
+      mailmanager: {
+        iamPrefix: "ses"
+      },
+      "managedblockchain-query": {
+        iamPrefix: "managedblockchain-query"
+      },
+      managedblockchain: {
+        iamPrefix: "managedblockchain"
+      },
+      "marketplace-agreement": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-catalog": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-commerce-analytics": {
+        iamPrefix: "marketplacecommerceanalytics"
+      },
+      "marketplace-deployment": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-entitlement-service": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-metering": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-reporting": {
+        iamPrefix: "aws-marketplace"
+      },
+      mediaconnect: {
+        iamPrefix: "mediaconnect"
+      },
+      mediaconvert: {
+        iamPrefix: "mediaconvert"
+      },
+      medialive: {
+        iamPrefix: "medialive"
+      },
+      "mediapackage-vod": {
+        iamPrefix: "mediapackage-vod"
+      },
+      mediapackage: {
+        iamPrefix: "mediapackage"
+      },
+      mediapackagev2: {
+        iamPrefix: "mediapackagev2"
+      },
+      "mediastore-data": {
+        iamPrefix: "mediastore"
+      },
+      mediastore: {
+        iamPrefix: "mediastore"
+      },
+      mediatailor: {
+        iamPrefix: "mediatailor"
+      },
+      "medical-imaging": {
+        iamPrefix: "medical-imaging"
+      },
+      memorydb: {
+        iamPrefix: "memorydb"
+      },
+      mgn: {
+        iamPrefix: "mgn"
+      },
+      "migration-hub-refactor-spaces": {
+        iamPrefix: "refactor-spaces"
+      },
+      "migration-hub": {
+        iamPrefix: "mgh"
+      },
+      "migrationhub-config": {
+        iamPrefix: "mgh"
+      },
+      migrationhuborchestrator: {
+        iamPrefix: "migrationhub-orchestrator"
+      },
+      migrationhubstrategy: {
+        iamPrefix: "migrationhub-strategy"
+      },
+      mq: {
+        iamPrefix: "mq"
+      },
+      mturk: {
+        iamPrefix: "mturk-requester"
+      },
+      mwaa: {
+        iamPrefix: "airflow"
+      },
+      "neptune-graph": {
+        iamPrefix: "neptune-graph"
+      },
+      neptune: {
+        iamPrefix: "rds"
+      },
+      neptunedata: {
+        iamPrefix: "neptune-db"
+      },
+      "network-firewall": {
+        iamPrefix: "network-firewall"
+      },
+      networkflowmonitor: {
+        iamPrefix: "networkflowmonitor"
+      },
+      networkmanager: {
+        iamPrefix: "networkmanager"
+      },
+      networkmonitor: {
+        iamPrefix: "networkmonitor"
+      },
+      notifications: {
+        iamPrefix: "notifications"
+      },
+      notificationscontacts: {
+        iamPrefix: "notifications-contacts"
+      },
+      oam: {
+        iamPrefix: "oam"
+      },
+      observabilityadmin: {
+        iamPrefix: "observabilityadmin"
+      },
+      omics: {
+        iamPrefix: "omics"
+      },
+      opensearch: {
+        iamPrefix: "es"
+      },
+      opensearchserverless: {
+        iamPrefix: "aoss"
+      },
+      opsworks: {
+        iamPrefix: "opsworks"
+      },
+      opsworkscm: {
+        iamPrefix: "opsworks-cm"
+      },
+      organizations: {
+        iamPrefix: "organizations"
+      },
+      osis: {
+        iamPrefix: "osis"
+      },
+      outposts: {
+        iamPrefix: "outposts"
+      },
+      panorama: {
+        iamPrefix: "panorama"
+      },
+      "partnercentral-selling": {
+        iamPrefix: "partnercentral-selling"
+      },
+      "payment-cryptography-data": {
+        iamPrefix: "payment-cryptography"
+      },
+      "payment-cryptography": {
+        iamPrefix: "payment-cryptography"
+      },
+      "pca-connector-ad": {
+        iamPrefix: "pca-connector-ad"
+      },
+      "pca-connector-scep": {
+        iamPrefix: "pca-connector-scep"
+      },
+      pcs: {
+        iamPrefix: "pcs"
+      },
+      "personalize-events": {
+        iamPrefix: "personalize"
+      },
+      "personalize-runtime": {
+        iamPrefix: "personalize"
+      },
+      personalize: {
+        iamPrefix: "personalize"
+      },
+      pi: {
+        iamPrefix: "pi"
+      },
+      "pinpoint-email": {
+        iamPrefix: "ses"
+      },
+      "pinpoint-sms-voice-v2": {
+        iamPrefix: "sms-voice"
+      },
+      "pinpoint-sms-voice": {
+        iamPrefix: "sms-voice"
+      },
+      pinpoint: {
+        iamPrefix: "mobiletargeting"
+      },
+      pipes: {
+        iamPrefix: "pipes"
+      },
+      polly: {
+        iamPrefix: "polly"
+      },
+      pricing: {
+        iamPrefix: "pricing"
+      },
+      proton: {
+        iamPrefix: "proton"
+      },
+      qapps: {
+        iamPrefix: "qapps"
+      },
+      qbusiness: {
+        iamPrefix: "qbusiness"
+      },
+      qconnect: {
+        iamPrefix: "wisdom"
+      },
+      "qldb-session": {
+        iamPrefix: "qldb",
+        commands: [
+          "SendCommand"
+        ]
+      },
+      qldb: {
+        iamPrefix: "qldb"
+      },
+      quicksight: {
+        iamPrefix: "quicksight"
+      },
+      ram: {
+        iamPrefix: "ram"
+      },
+      rbin: {
+        iamPrefix: "rbin"
+      },
+      "rds-data": {
+        iamPrefix: "rds-data"
+      },
+      rds: {
+        iamPrefix: "rds"
+      },
+      "redshift-data": {
+        iamPrefix: "redshift-data"
+      },
+      "redshift-serverless": {
+        iamPrefix: "redshift-serverless"
+      },
+      redshift: {
+        iamPrefix: "redshift"
+      },
+      rekognition: {
+        iamPrefix: "rekognition"
+      },
+      rekognitionstreaming: {
+        iamPrefix: "rekognition"
+      },
+      repostspace: {
+        iamPrefix: "repostspace"
+      },
+      resiliencehub: {
+        iamPrefix: "resiliencehub"
+      },
+      "resource-explorer-2": {
+        iamPrefix: "resource-explorer-2"
+      },
+      "resource-groups-tagging-api": {
+        iamPrefix: "tagging"
+      },
+      "resource-groups": {
+        iamPrefix: "resource-groups"
+      },
+      robomaker: {
+        iamPrefix: "robomaker"
+      },
+      rolesanywhere: {
+        iamPrefix: "rolesanywhere"
+      },
+      "route-53-domains": {
+        iamPrefix: "route53domains"
+      },
+      "route-53": {
+        iamPrefix: "route53"
+      },
+      "route53-recovery-cluster": {
+        iamPrefix: "route53-recovery-cluster"
+      },
+      "route53-recovery-control-config": {
+        iamPrefix: "route53-recovery-control-config"
+      },
+      "route53-recovery-readiness": {
+        iamPrefix: "route53-recovery-readiness"
+      },
+      route53profiles: {
+        iamPrefix: "route53profiles"
+      },
+      route53resolver: {
+        iamPrefix: "route53resolver"
+      },
+      rum: {
+        iamPrefix: "rum"
+      },
+      "s3-control": {
+        iamPrefix: "s3"
+      },
+      s3: {
+        iamPrefix: "s3"
+      },
+      s3outposts: {
+        iamPrefix: "s3-outposts"
+      },
+      s3tables: {
+        iamPrefix: "s3tables"
+      },
+      "sagemaker-a2i-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-edge": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-featurestore-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-geospatial": {
+        iamPrefix: "sagemaker-geospatial"
+      },
+      "sagemaker-metrics": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      sagemaker: {
+        iamPrefix: "sagemaker"
+      },
+      savingsplans: {
+        iamPrefix: "savingsplans"
+      },
+      scheduler: {
+        iamPrefix: "scheduler"
+      },
+      schemas: {
+        iamPrefix: "schemas"
+      },
+      "secrets-manager": {
+        iamPrefix: "secretsmanager"
+      },
+      "security-ir": {
+        iamPrefix: "security-ir"
+      },
+      securityhub: {
+        iamPrefix: "securityhub"
+      },
+      securitylake: {
+        iamPrefix: "securitylake"
+      },
+      serverlessapplicationrepository: {
+        iamPrefix: "serverlessrepo"
+      },
+      "service-catalog-appregistry": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-catalog": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-quotas": {
+        iamPrefix: "servicequotas"
+      },
+      servicediscovery: {
+        iamPrefix: "servicediscovery"
+      },
+      ses: {
+        iamPrefix: "ses"
+      },
+      sesv2: {
+        iamPrefix: "ses"
+      },
+      sfn: {
+        iamPrefix: "states"
+      },
+      shield: {
+        iamPrefix: "shield"
+      },
+      signer: {
+        iamPrefix: "signer"
+      },
+      simspaceweaver: {
+        iamPrefix: "simspaceweaver"
+      },
+      sms: {
+        iamPrefix: "sms"
+      },
+      "snow-device-management": {
+        iamPrefix: "snow-device-management"
+      },
+      snowball: {
+        iamPrefix: "snowball"
+      },
+      sns: {
+        iamPrefix: "sns"
+      },
+      socialmessaging: {
+        iamPrefix: "social-messaging"
+      },
+      sqs: {
+        iamPrefix: "sqs"
+      },
+      "ssm-contacts": {
+        iamPrefix: "ssm-contacts"
+      },
+      "ssm-guiconnect": {
+        iamPrefix: "ssm-guiconnect"
+      },
+      "ssm-incidents": {
+        iamPrefix: "ssm-incidents"
+      },
+      "ssm-quicksetup": {
+        iamPrefix: "ssm-quicksetup"
+      },
+      "ssm-sap": {
+        iamPrefix: "ssm-sap"
+      },
+      ssm: {
+        iamPrefix: "ssm",
+        commands: [
+          "CancelCommand",
+          "SendCommand"
+        ]
+      },
+      "sso-admin": {
+        iamPrefix: "sso"
+      },
+      "sso-oidc": {
+        iamPrefix: "sso-oauth"
+      },
+      sso: {
+        iamPrefix: "awsssoportal"
+      },
+      "storage-gateway": {
+        iamPrefix: "storagegateway"
+      },
+      sts: {
+        iamPrefix: "sts"
+      },
+      supplychain: {
+        iamPrefix: "scn"
+      },
+      "support-app": {
+        iamPrefix: "supportapp"
+      },
+      support: {
+        iamPrefix: "support"
+      },
+      swf: {
+        iamPrefix: "swf"
+      },
+      synthetics: {
+        iamPrefix: "synthetics"
+      },
+      taxsettings: {
+        iamPrefix: "tax"
+      },
+      textract: {
+        iamPrefix: "textract"
+      },
+      "timestream-influxdb": {
+        iamPrefix: "timestream-influxdb"
+      },
+      "timestream-query": {
+        iamPrefix: "timestream"
+      },
+      "timestream-write": {
+        iamPrefix: "timestream"
+      },
+      tnb: {
+        iamPrefix: "tnb"
+      },
+      "transcribe-streaming": {
+        iamPrefix: "transcribe"
+      },
+      transcribe: {
+        iamPrefix: "transcribe"
+      },
+      transfer: {
+        iamPrefix: "transfer"
+      },
+      translate: {
+        iamPrefix: "translate"
+      },
+      trustedadvisor: {
+        iamPrefix: "trustedadvisor"
+      },
+      verifiedpermissions: {
+        iamPrefix: "verifiedpermissions"
+      },
+      "voice-id": {
+        iamPrefix: "voiceid"
+      },
+      "vpc-lattice": {
+        iamPrefix: "vpc-lattice"
+      },
+      "waf-regional": {
+        iamPrefix: "waf-regional"
+      },
+      waf: {
+        iamPrefix: "waf"
+      },
+      wafv2: {
+        iamPrefix: "wafv2"
+      },
+      wellarchitected: {
+        iamPrefix: "wellarchitected"
+      },
+      wisdom: {
+        iamPrefix: "wisdom"
+      },
+      workdocs: {
+        iamPrefix: "workdocs"
+      },
+      workmail: {
+        iamPrefix: "workmail"
+      },
+      workmailmessageflow: {
+        iamPrefix: "workmailmessageflow"
+      },
+      "workspaces-thin-client": {
+        iamPrefix: "thinclient"
+      },
+      "workspaces-web": {
+        iamPrefix: "workspaces-web"
+      },
+      workspaces: {
+        iamPrefix: "workspaces"
+      },
+      xray: {
+        iamPrefix: "xray"
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-info.ts
+var sdk_info_exports = {};
+__export(sdk_info_exports, {
+  normalizeActionName: () => normalizeActionName,
+  normalizeServiceName: () => normalizeServiceName
+});
+function normalizeServiceName(service) {
+  service = service.toLowerCase();
+  service = service.replace(/^@aws-sdk\/client-/, "");
+  service = v2ToV3Mapping()?.[service] ?? service;
+  return service;
+}
+function normalizeActionName(v3Service, action) {
+  if (action.charAt(0).toLowerCase() === action.charAt(0)) {
+    return action.charAt(0).toUpperCase() + action.slice(1);
+  }
+  if (v3Metadata()[v3Service]?.commands?.includes(action)) {
+    return action;
+  }
+  return action.replace(/Command$/, "");
+}
+function v2ToV3Mapping() {
+  return require_sdk_v2_to_v3();
+}
+function v3Metadata() {
+  return require_sdk_v3_metadata();
+}
+var init_sdk_info = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-info.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/api-call.ts
+var api_call_exports = {};
+__export(api_call_exports, {
+  ApiCall: () => ApiCall,
+  coerceSdkv3Response: () => coerceSdkv3Response,
+  flatten: () => flatten2
+});
+function flatten2(root) {
+  const ret = {};
+  recurse(root);
+  return ret;
+  function recurse(x, path23 = []) {
+    if (x && typeof x === "object") {
+      for (const [key, value] of Object.entries(x)) {
+        recurse(value, [...path23, key]);
+      }
+      return;
+    }
+    ret[path23.join(".")] = x;
+  }
+}
+async function coerceSdkv3Response(value) {
+  if (value && typeof value === "object" && typeof value.transformToString === "function") {
+    return value.transformToString();
+  }
+  if (Buffer.isBuffer(value)) {
+    return value.toString("utf8");
+  }
+  if (ArrayBuffer.isView(value)) {
+    return decoder.decode(value.buffer);
+  }
+  if (Array.isArray(value)) {
+    const ret = [];
+    for (const x of value) {
+      ret.push(await coerceSdkv3Response(x));
+    }
+    return ret;
+  }
+  if (value && typeof value === "object") {
+    for (const key of Object.keys(value)) {
+      value[key] = await coerceSdkv3Response(value[key]);
+    }
+    return value;
+  }
+  return value;
+}
+var ApiCall, decoder;
+var init_api_call = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/api-call.ts"() {
+    "use strict";
+    init_coerce_api_parameters();
+    init_find_client_constructor();
+    init_sdk_info();
+    ApiCall = class {
+      service;
+      action;
+      v3PackageName;
+      v3Package;
+      // For testing purposes
+      client;
+      // For testing purposes
+      constructor(service, action) {
+        this.service = normalizeServiceName(service);
+        this.action = normalizeActionName(this.service, action);
+        this.v3PackageName = `@aws-sdk/client-${this.service}`;
+      }
+      async invoke(options) {
+        this.initializePackage(options.sdkPackage);
+        this.initializeClient(options);
+        const Command = this.findCommandClass();
+        const response = await this.client.send(
+          new Command(coerceApiParameters(this.service, this.action, options.parameters ?? {}))
+        );
+        delete response.$metadata;
+        const coerced = await coerceSdkv3Response(response);
+        return options.flattenResponse ? flatten2(coerced) : coerced;
+      }
+      initializePackage(packageOverride) {
+        if (this.v3Package) {
+          return;
+        }
+        if (packageOverride) {
+          this.v3Package = packageOverride;
+          return;
+        }
+        try {
+          this.v3Package = require(this.v3PackageName);
+        } catch (e) {
+          throw Error(`Service ${this.service} client package with name '${this.v3PackageName}' does not exist.`);
+        }
+      }
+      initializeClient(options) {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const ServiceClient = this.findConstructor(this.v3Package);
+        this.client = new ServiceClient({
+          apiVersion: options.apiVersion,
+          credentials: options.credentials,
+          region: options.region
+        });
+        return this.client;
+      }
+      findCommandClass() {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const commandName = `${this.action}Command`;
+        const Command = Object.entries(this.v3Package ?? {}).find(
+          ([name]) => name.toLowerCase() === commandName.toLowerCase()
+        )?.[1];
+        if (!Command) {
+          throw new Error(`Unable to find command named: ${commandName} for action: ${this.action} in service package ${this.v3PackageName}`);
+        }
+        return Command;
+      }
+      findConstructor(pkg) {
+        try {
+          const ret = findV3ClientConstructor(pkg);
+          if (!ret) {
+            throw new Error("findV3ClientConstructor returned undefined");
+          }
+          return ret;
+        } catch (e) {
+          console.error(e);
+          throw Error(`No client constructor found within package: ${this.v3PackageName}`);
+        }
+      }
+    };
+    decoder = new TextDecoder();
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/index.js
+var require_lib6 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.normalizeActionName = exports2.normalizeServiceName = exports2.findV3ClientConstructor = exports2.coerceApiParameters = void 0;
+    var coerce_api_parameters_1 = (init_coerce_api_parameters(), __toCommonJS(coerce_api_parameters_exports));
+    Object.defineProperty(exports2, "coerceApiParameters", { enumerable: true, get: function() {
+      return coerce_api_parameters_1.coerceApiParameters;
+    } });
+    var find_client_constructor_1 = (init_find_client_constructor(), __toCommonJS(find_client_constructor_exports));
+    Object.defineProperty(exports2, "findV3ClientConstructor", { enumerable: true, get: function() {
+      return find_client_constructor_1.findV3ClientConstructor;
+    } });
+    var sdk_info_1 = (init_sdk_info(), __toCommonJS(sdk_info_exports));
+    Object.defineProperty(exports2, "normalizeServiceName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeServiceName;
+    } });
+    Object.defineProperty(exports2, "normalizeActionName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeActionName;
+    } });
+    __exportStar2((init_api_call(), __toCommonJS(api_call_exports)), exports2);
+  }
+});
+
+// ../../../node_modules/webidl-conversions/lib/index.js
+var require_lib7 = __commonJS({
+  "../../../node_modules/webidl-conversions/lib/index.js"(exports2, module2) {
+    "use strict";
+    var conversions = {};
+    module2.exports = conversions;
+    function sign(x) {
+      return x < 0 ? -1 : 1;
+    }
+    function evenRound(x) {
+      if (x % 1 === 0.5 && (x & 1) === 0) {
+        return Math.floor(x);
+      } else {
+        return Math.round(x);
+      }
+    }
+    function createNumberConversion(bitLength, typeOpts) {
+      if (!typeOpts.unsigned) {
+        --bitLength;
+      }
+      const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength);
+      const upperBound = Math.pow(2, bitLength) - 1;
+      const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength);
+      const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1);
+      return function(V, opts) {
+        if (!opts) opts = {};
+        let x = +V;
+        if (opts.enforceRange) {
+          if (!Number.isFinite(x)) {
+            throw new TypeError("Argument is not a finite number");
+          }
+          x = sign(x) * Math.floor(Math.abs(x));
+          if (x < lowerBound || x > upperBound) {
+            throw new TypeError("Argument is not in byte range");
+          }
+          return x;
+        }
+        if (!isNaN(x) && opts.clamp) {
+          x = evenRound(x);
+          if (x < lowerBound) x = lowerBound;
+          if (x > upperBound) x = upperBound;
+          return x;
+        }
+        if (!Number.isFinite(x) || x === 0) {
+          return 0;
+        }
+        x = sign(x) * Math.floor(Math.abs(x));
+        x = x % moduloVal;
+        if (!typeOpts.unsigned && x >= moduloBound) {
+          return x - moduloVal;
+        } else if (typeOpts.unsigned) {
+          if (x < 0) {
+            x += moduloVal;
+          } else if (x === -0) {
+            return 0;
+          }
+        }
+        return x;
+      };
+    }
+    conversions["void"] = function() {
+      return void 0;
+    };
+    conversions["boolean"] = function(val2) {
+      return !!val2;
+    };
+    conversions["byte"] = createNumberConversion(8, { unsigned: false });
+    conversions["octet"] = createNumberConversion(8, { unsigned: true });
+    conversions["short"] = createNumberConversion(16, { unsigned: false });
+    conversions["unsigned short"] = createNumberConversion(16, { unsigned: true });
+    conversions["long"] = createNumberConversion(32, { unsigned: false });
+    conversions["unsigned long"] = createNumberConversion(32, { unsigned: true });
+    conversions["long long"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 });
+    conversions["unsigned long long"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 });
+    conversions["double"] = function(V) {
+      const x = +V;
+      if (!Number.isFinite(x)) {
+        throw new TypeError("Argument is not a finite floating-point value");
+      }
+      return x;
+    };
+    conversions["unrestricted double"] = function(V) {
+      const x = +V;
+      if (isNaN(x)) {
+        throw new TypeError("Argument is NaN");
+      }
+      return x;
+    };
+    conversions["float"] = conversions["double"];
+    conversions["unrestricted float"] = conversions["unrestricted double"];
+    conversions["DOMString"] = function(V, opts) {
+      if (!opts) opts = {};
+      if (opts.treatNullAsEmptyString && V === null) {
+        return "";
+      }
+      return String(V);
+    };
+    conversions["ByteString"] = function(V, opts) {
+      const x = String(V);
+      let c = void 0;
+      for (let i = 0; (c = x.codePointAt(i)) !== void 0; ++i) {
+        if (c > 255) {
+          throw new TypeError("Argument is not a valid bytestring");
+        }
+      }
+      return x;
+    };
+    conversions["USVString"] = function(V) {
+      const S = String(V);
+      const n = S.length;
+      const U = [];
+      for (let i = 0; i < n; ++i) {
+        const c = S.charCodeAt(i);
+        if (c < 55296 || c > 57343) {
+          U.push(String.fromCodePoint(c));
+        } else if (56320 <= c && c <= 57343) {
+          U.push(String.fromCodePoint(65533));
+        } else {
+          if (i === n - 1) {
+            U.push(String.fromCodePoint(65533));
+          } else {
+            const d = S.charCodeAt(i + 1);
+            if (56320 <= d && d <= 57343) {
+              const a = c & 1023;
+              const b = d & 1023;
+              U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b));
+              ++i;
+            } else {
+              U.push(String.fromCodePoint(65533));
+            }
+          }
+        }
+      }
+      return U.join("");
+    };
+    conversions["Date"] = function(V, opts) {
+      if (!(V instanceof Date)) {
+        throw new TypeError("Argument is not a Date object");
+      }
+      if (isNaN(V)) {
+        return void 0;
+      }
+      return V;
+    };
+    conversions["RegExp"] = function(V, opts) {
+      if (!(V instanceof RegExp)) {
+        V = new RegExp(V);
+      }
+      return V;
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/utils.js
+var require_utils3 = __commonJS({
+  "../../../node_modules/whatwg-url/lib/utils.js"(exports2, module2) {
+    "use strict";
+    module2.exports.mixin = function mixin(target, source) {
+      const keys = Object.getOwnPropertyNames(source);
+      for (let i = 0; i < keys.length; ++i) {
+        Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));
+      }
+    };
+    module2.exports.wrapperSymbol = /* @__PURE__ */ Symbol("wrapper");
+    module2.exports.implSymbol = /* @__PURE__ */ Symbol("impl");
+    module2.exports.wrapperForImpl = function(impl) {
+      return impl[module2.exports.wrapperSymbol];
+    };
+    module2.exports.implForWrapper = function(wrapper) {
+      return wrapper[module2.exports.implSymbol];
+    };
+  }
+});
+
+// ../../../node_modules/tr46/lib/mappingTable.json
+var require_mappingTable = __commonJS({
+  "../../../node_modules/tr46/lib/mappingTable.json"(exports2, module2) {
+    module2.exports = [[[0, 44], "disallowed_STD3_valid"], [[45, 46], "valid"], [[47, 47], "disallowed_STD3_valid"], [[48, 57], "valid"], [[58, 64], "disallowed_STD3_valid"], [[65, 65], "mapped", [97]], [[66, 66], "mapped", [98]], [[67, 67], "mapped", [99]], [[68, 68], "mapped", [100]], [[69, 69], "mapped", [101]], [[70, 70], "mapped", [102]], [[71, 71], "mapped", [103]], [[72, 72], "mapped", [104]], [[73, 73], "mapped", [105]], [[74, 74], "mapped", [106]], [[75, 75], "mapped", [107]], [[76, 76], "mapped", [108]], [[77, 77], "mapped", [109]], [[78, 78], "mapped", [110]], [[79, 79], "mapped", [111]], [[80, 80], "mapped", [112]], [[81, 81], "mapped", [113]], [[82, 82], "mapped", [114]], [[83, 83], "mapped", [115]], [[84, 84], "mapped", [116]], [[85, 85], "mapped", [117]], [[86, 86], "mapped", [118]], [[87, 87], "mapped", [119]], [[88, 88], "mapped", [120]], [[89, 89], "mapped", [121]], [[90, 90], "mapped", [122]], [[91, 96], "disallowed_STD3_valid"], [[97, 122], "valid"], [[123, 127], "disallowed_STD3_valid"], [[128, 159], "disallowed"], [[160, 160], "disallowed_STD3_mapped", [32]], [[161, 167], "valid", [], "NV8"], [[168, 168], "disallowed_STD3_mapped", [32, 776]], [[169, 169], "valid", [], "NV8"], [[170, 170], "mapped", [97]], [[171, 172], "valid", [], "NV8"], [[173, 173], "ignored"], [[174, 174], "valid", [], "NV8"], [[175, 175], "disallowed_STD3_mapped", [32, 772]], [[176, 177], "valid", [], "NV8"], [[178, 178], "mapped", [50]], [[179, 179], "mapped", [51]], [[180, 180], "disallowed_STD3_mapped", [32, 769]], [[181, 181], "mapped", [956]], [[182, 182], "valid", [], "NV8"], [[183, 183], "valid"], [[184, 184], "disallowed_STD3_mapped", [32, 807]], [[185, 185], "mapped", [49]], [[186, 186], "mapped", [111]], [[187, 187], "valid", [], "NV8"], [[188, 188], "mapped", [49, 8260, 52]], [[189, 189], "mapped", [49, 8260, 50]], [[190, 190], "mapped", [51, 8260, 52]], [[191, 191], "valid", [], "NV8"], [[192, 192], "mapped", [224]], [[193, 193], "mapped", [225]], [[194, 194], "mapped", [226]], [[195, 195], "mapped", [227]], [[196, 196], "mapped", [228]], [[197, 197], "mapped", [229]], [[198, 198], "mapped", [230]], [[199, 199], "mapped", [231]], [[200, 200], "mapped", [232]], [[201, 201], "mapped", [233]], [[202, 202], "mapped", [234]], [[203, 203], "mapped", [235]], [[204, 204], "mapped", [236]], [[205, 205], "mapped", [237]], [[206, 206], "mapped", [238]], [[207, 207], "mapped", [239]], [[208, 208], "mapped", [240]], [[209, 209], "mapped", [241]], [[210, 210], "mapped", [242]], [[211, 211], "mapped", [243]], [[212, 212], "mapped", [244]], [[213, 213], "mapped", [245]], [[214, 214], "mapped", [246]], [[215, 215], "valid", [], "NV8"], [[216, 216], "mapped", [248]], [[217, 217], "mapped", [249]], [[218, 218], "mapped", [250]], [[219, 219], "mapped", [251]], [[220, 220], "mapped", [252]], [[221, 221], "mapped", [253]], [[222, 222], "mapped", [254]], [[223, 223], "deviation", [115, 115]], [[224, 246], "valid"], [[247, 247], "valid", [], "NV8"], [[248, 255], "valid"], [[256, 256], "mapped", [257]], [[257, 257], "valid"], [[258, 258], "mapped", [259]], [[259, 259], "valid"], [[260, 260], "mapped", [261]], [[261, 261], "valid"], [[262, 262], "mapped", [263]], [[263, 263], "valid"], [[264, 264], "mapped", [265]], [[265, 265], "valid"], [[266, 266], "mapped", [267]], [[267, 267], "valid"], [[268, 268], "mapped", [269]], [[269, 269], "valid"], [[270, 270], "mapped", [271]], [[271, 271], "valid"], [[272, 272], "mapped", [273]], [[273, 273], "valid"], [[274, 274], "mapped", [275]], [[275, 275], "valid"], [[276, 276], "mapped", [277]], [[277, 277], "valid"], [[278, 278], "mapped", [279]], [[279, 279], "valid"], [[280, 280], "mapped", [281]], [[281, 281], "valid"], [[282, 282], "mapped", [283]], [[283, 283], "valid"], [[284, 284], "mapped", [285]], [[285, 285], "valid"], [[286, 286], "mapped", [287]], [[287, 287], "valid"], [[288, 288], "mapped", [289]], [[289, 289], "valid"], [[290, 290], "mapped", [291]], [[291, 291], "valid"], [[292, 292], "mapped", [293]], [[293, 293], "valid"], [[294, 294], "mapped", [295]], [[295, 295], "valid"], [[296, 296], "mapped", [297]], [[297, 297], "valid"], [[298, 298], "mapped", [299]], [[299, 299], "valid"], [[300, 300], "mapped", [301]], [[301, 301], "valid"], [[302, 302], "mapped", [303]], [[303, 303], "valid"], [[304, 304], "mapped", [105, 775]], [[305, 305], "valid"], [[306, 307], "mapped", [105, 106]], [[308, 308], "mapped", [309]], [[309, 309], "valid"], [[310, 310], "mapped", [311]], [[311, 312], "valid"], [[313, 313], "mapped", [314]], [[314, 314], "valid"], [[315, 315], "mapped", [316]], [[316, 316], "valid"], [[317, 317], "mapped", [318]], [[318, 318], "valid"], [[319, 320], "mapped", [108, 183]], [[321, 321], "mapped", [322]], [[322, 322], "valid"], [[323, 323], "mapped", [324]], [[324, 324], "valid"], [[325, 325], "mapped", [326]], [[326, 326], "valid"], [[327, 327], "mapped", [328]], [[328, 328], "valid"], [[329, 329], "mapped", [700, 110]], [[330, 330], "mapped", [331]], [[331, 331], "valid"], [[332, 332], "mapped", [333]], [[333, 333], "valid"], [[334, 334], "mapped", [335]], [[335, 335], "valid"], [[336, 336], "mapped", [337]], [[337, 337], "valid"], [[338, 338], "mapped", [339]], [[339, 339], "valid"], [[340, 340], "mapped", [341]], [[341, 341], "valid"], [[342, 342], "mapped", [343]], [[343, 343], "valid"], [[344, 344], "mapped", [345]], [[345, 345], "valid"], [[346, 346], "mapped", [347]], [[347, 347], "valid"], [[348, 348], "mapped", [349]], [[349, 349], "valid"], [[350, 350], "mapped", [351]], [[351, 351], "valid"], [[352, 352], "mapped", [353]], [[353, 353], "valid"], [[354, 354], "mapped", [355]], [[355, 355], "valid"], [[356, 356], "mapped", [357]], [[357, 357], "valid"], [[358, 358], "mapped", [359]], [[359, 359], "valid"], [[360, 360], "mapped", [361]], [[361, 361], "valid"], [[362, 362], "mapped", [363]], [[363, 363], "valid"], [[364, 364], "mapped", [365]], [[365, 365], "valid"], [[366, 366], "mapped", [367]], [[367, 367], "valid"], [[368, 368], "mapped", [369]], [[369, 369], "valid"], [[370, 370], "mapped", [371]], [[371, 371], "valid"], [[372, 372], "mapped", [373]], [[373, 373], "valid"], [[374, 374], "mapped", [375]], [[375, 375], "valid"], [[376, 376], "mapped", [255]], [[377, 377], "mapped", [378]], [[378, 378], "valid"], [[379, 379], "mapped", [380]], [[380, 380], "valid"], [[381, 381], "mapped", [382]], [[382, 382], "valid"], [[383, 383], "mapped", [115]], [[384, 384], "valid"], [[385, 385], "mapped", [595]], [[386, 386], "mapped", [387]], [[387, 387], "valid"], [[388, 388], "mapped", [389]], [[389, 389], "valid"], [[390, 390], "mapped", [596]], [[391, 391], "mapped", [392]], [[392, 392], "valid"], [[393, 393], "mapped", [598]], [[394, 394], "mapped", [599]], [[395, 395], "mapped", [396]], [[396, 397], "valid"], [[398, 398], "mapped", [477]], [[399, 399], "mapped", [601]], [[400, 400], "mapped", [603]], [[401, 401], "mapped", [402]], [[402, 402], "valid"], [[403, 403], "mapped", [608]], [[404, 404], "mapped", [611]], [[405, 405], "valid"], [[406, 406], "mapped", [617]], [[407, 407], "mapped", [616]], [[408, 408], "mapped", [409]], [[409, 411], "valid"], [[412, 412], "mapped", [623]], [[413, 413], "mapped", [626]], [[414, 414], "valid"], [[415, 415], "mapped", [629]], [[416, 416], "mapped", [417]], [[417, 417], "valid"], [[418, 418], "mapped", [419]], [[419, 419], "valid"], [[420, 420], "mapped", [421]], [[421, 421], "valid"], [[422, 422], "mapped", [640]], [[423, 423], "mapped", [424]], [[424, 424], "valid"], [[425, 425], "mapped", [643]], [[426, 427], "valid"], [[428, 428], "mapped", [429]], [[429, 429], "valid"], [[430, 430], "mapped", [648]], [[431, 431], "mapped", [432]], [[432, 432], "valid"], [[433, 433], "mapped", [650]], [[434, 434], "mapped", [651]], [[435, 435], "mapped", [436]], [[436, 436], "valid"], [[437, 437], "mapped", [438]], [[438, 438], "valid"], [[439, 439], "mapped", [658]], [[440, 440], "mapped", [441]], [[441, 443], "valid"], [[444, 444], "mapped", [445]], [[445, 451], "valid"], [[452, 454], "mapped", [100, 382]], [[455, 457], "mapped", [108, 106]], [[458, 460], "mapped", [110, 106]], [[461, 461], "mapped", [462]], [[462, 462], "valid"], [[463, 463], "mapped", [464]], [[464, 464], "valid"], [[465, 465], "mapped", [466]], [[466, 466], "valid"], [[467, 467], "mapped", [468]], [[468, 468], "valid"], [[469, 469], "mapped", [470]], [[470, 470], "valid"], [[471, 471], "mapped", [472]], [[472, 472], "valid"], [[473, 473], "mapped", [474]], [[474, 474], "valid"], [[475, 475], "mapped", [476]], [[476, 477], "valid"], [[478, 478], "mapped", [479]], [[479, 479], "valid"], [[480, 480], "mapped", [481]], [[481, 481], "valid"], [[482, 482], "mapped", [483]], [[483, 483], "valid"], [[484, 484], "mapped", [485]], [[485, 485], "valid"], [[486, 486], "mapped", [487]], [[487, 487], "valid"], [[488, 488], "mapped", [489]], [[489, 489], "valid"], [[490, 490], "mapped", [491]], [[491, 491], "valid"], [[492, 492], "mapped", [493]], [[493, 493], "valid"], [[494, 494], "mapped", [495]], [[495, 496], "valid"], [[497, 499], "mapped", [100, 122]], [[500, 500], "mapped", [501]], [[501, 501], "valid"], [[502, 502], "mapped", [405]], [[503, 503], "mapped", [447]], [[504, 504], "mapped", [505]], [[505, 505], "valid"], [[506, 506], "mapped", [507]], [[507, 507], "valid"], [[508, 508], "mapped", [509]], [[509, 509], "valid"], [[510, 510], "mapped", [511]], [[511, 511], "valid"], [[512, 512], "mapped", [513]], [[513, 513], "valid"], [[514, 514], "mapped", [515]], [[515, 515], "valid"], [[516, 516], "mapped", [517]], [[517, 517], "valid"], [[518, 518], "mapped", [519]], [[519, 519], "valid"], [[520, 520], "mapped", [521]], [[521, 521], "valid"], [[522, 522], "mapped", [523]], [[523, 523], "valid"], [[524, 524], "mapped", [525]], [[525, 525], "valid"], [[526, 526], "mapped", [527]], [[527, 527], "valid"], [[528, 528], "mapped", [529]], [[529, 529], "valid"], [[530, 530], "mapped", [531]], [[531, 531], "valid"], [[532, 532], "mapped", [533]], [[533, 533], "valid"], [[534, 534], "mapped", [535]], [[535, 535], "valid"], [[536, 536], "mapped", [537]], [[537, 537], "valid"], [[538, 538], "mapped", [539]], [[539, 539], "valid"], [[540, 540], "mapped", [541]], [[541, 541], "valid"], [[542, 542], "mapped", [543]], [[543, 543], "valid"], [[544, 544], "mapped", [414]], [[545, 545], "valid"], [[546, 546], "mapped", [547]], [[547, 547], "valid"], [[548, 548], "mapped", [549]], [[549, 549], "valid"], [[550, 550], "mapped", [551]], [[551, 551], "valid"], [[552, 552], "mapped", [553]], [[553, 553], "valid"], [[554, 554], "mapped", [555]], [[555, 555], "valid"], [[556, 556], "mapped", [557]], [[557, 557], "valid"], [[558, 558], "mapped", [559]], [[559, 559], "valid"], [[560, 560], "mapped", [561]], [[561, 561], "valid"], [[562, 562], "mapped", [563]], [[563, 563], "valid"], [[564, 566], "valid"], [[567, 569], "valid"], [[570, 570], "mapped", [11365]], [[571, 571], "mapped", [572]], [[572, 572], "valid"], [[573, 573], "mapped", [410]], [[574, 574], "mapped", [11366]], [[575, 576], "valid"], [[577, 577], "mapped", [578]], [[578, 578], "valid"], [[579, 579], "mapped", [384]], [[580, 580], "mapped", [649]], [[581, 581], "mapped", [652]], [[582, 582], "mapped", [583]], [[583, 583], "valid"], [[584, 584], "mapped", [585]], [[585, 585], "valid"], [[586, 586], "mapped", [587]], [[587, 587], "valid"], [[588, 588], "mapped", [589]], [[589, 589], "valid"], [[590, 590], "mapped", [591]], [[591, 591], "valid"], [[592, 680], "valid"], [[681, 685], "valid"], [[686, 687], "valid"], [[688, 688], "mapped", [104]], [[689, 689], "mapped", [614]], [[690, 690], "mapped", [106]], [[691, 691], "mapped", [114]], [[692, 692], "mapped", [633]], [[693, 693], "mapped", [635]], [[694, 694], "mapped", [641]], [[695, 695], "mapped", [119]], [[696, 696], "mapped", [121]], [[697, 705], "valid"], [[706, 709], "valid", [], "NV8"], [[710, 721], "valid"], [[722, 727], "valid", [], "NV8"], [[728, 728], "disallowed_STD3_mapped", [32, 774]], [[729, 729], "disallowed_STD3_mapped", [32, 775]], [[730, 730], "disallowed_STD3_mapped", [32, 778]], [[731, 731], "disallowed_STD3_mapped", [32, 808]], [[732, 732], "disallowed_STD3_mapped", [32, 771]], [[733, 733], "disallowed_STD3_mapped", [32, 779]], [[734, 734], "valid", [], "NV8"], [[735, 735], "valid", [], "NV8"], [[736, 736], "mapped", [611]], [[737, 737], "mapped", [108]], [[738, 738], "mapped", [115]], [[739, 739], "mapped", [120]], [[740, 740], "mapped", [661]], [[741, 745], "valid", [], "NV8"], [[746, 747], "valid", [], "NV8"], [[748, 748], "valid"], [[749, 749], "valid", [], "NV8"], [[750, 750], "valid"], [[751, 767], "valid", [], "NV8"], [[768, 831], "valid"], [[832, 832], "mapped", [768]], [[833, 833], "mapped", [769]], [[834, 834], "valid"], [[835, 835], "mapped", [787]], [[836, 836], "mapped", [776, 769]], [[837, 837], "mapped", [953]], [[838, 846], "valid"], [[847, 847], "ignored"], [[848, 855], "valid"], [[856, 860], "valid"], [[861, 863], "valid"], [[864, 865], "valid"], [[866, 866], "valid"], [[867, 879], "valid"], [[880, 880], "mapped", [881]], [[881, 881], "valid"], [[882, 882], "mapped", [883]], [[883, 883], "valid"], [[884, 884], "mapped", [697]], [[885, 885], "valid"], [[886, 886], "mapped", [887]], [[887, 887], "valid"], [[888, 889], "disallowed"], [[890, 890], "disallowed_STD3_mapped", [32, 953]], [[891, 893], "valid"], [[894, 894], "disallowed_STD3_mapped", [59]], [[895, 895], "mapped", [1011]], [[896, 899], "disallowed"], [[900, 900], "disallowed_STD3_mapped", [32, 769]], [[901, 901], "disallowed_STD3_mapped", [32, 776, 769]], [[902, 902], "mapped", [940]], [[903, 903], "mapped", [183]], [[904, 904], "mapped", [941]], [[905, 905], "mapped", [942]], [[906, 906], "mapped", [943]], [[907, 907], "disallowed"], [[908, 908], "mapped", [972]], [[909, 909], "disallowed"], [[910, 910], "mapped", [973]], [[911, 911], "mapped", [974]], [[912, 912], "valid"], [[913, 913], "mapped", [945]], [[914, 914], "mapped", [946]], [[915, 915], "mapped", [947]], [[916, 916], "mapped", [948]], [[917, 917], "mapped", [949]], [[918, 918], "mapped", [950]], [[919, 919], "mapped", [951]], [[920, 920], "mapped", [952]], [[921, 921], "mapped", [953]], [[922, 922], "mapped", [954]], [[923, 923], "mapped", [955]], [[924, 924], "mapped", [956]], [[925, 925], "mapped", [957]], [[926, 926], "mapped", [958]], [[927, 927], "mapped", [959]], [[928, 928], "mapped", [960]], [[929, 929], "mapped", [961]], [[930, 930], "disallowed"], [[931, 931], "mapped", [963]], [[932, 932], "mapped", [964]], [[933, 933], "mapped", [965]], [[934, 934], "mapped", [966]], [[935, 935], "mapped", [967]], [[936, 936], "mapped", [968]], [[937, 937], "mapped", [969]], [[938, 938], "mapped", [970]], [[939, 939], "mapped", [971]], [[940, 961], "valid"], [[962, 962], "deviation", [963]], [[963, 974], "valid"], [[975, 975], "mapped", [983]], [[976, 976], "mapped", [946]], [[977, 977], "mapped", [952]], [[978, 978], "mapped", [965]], [[979, 979], "mapped", [973]], [[980, 980], "mapped", [971]], [[981, 981], "mapped", [966]], [[982, 982], "mapped", [960]], [[983, 983], "valid"], [[984, 984], "mapped", [985]], [[985, 985], "valid"], [[986, 986], "mapped", [987]], [[987, 987], "valid"], [[988, 988], "mapped", [989]], [[989, 989], "valid"], [[990, 990], "mapped", [991]], [[991, 991], "valid"], [[992, 992], "mapped", [993]], [[993, 993], "valid"], [[994, 994], "mapped", [995]], [[995, 995], "valid"], [[996, 996], "mapped", [997]], [[997, 997], "valid"], [[998, 998], "mapped", [999]], [[999, 999], "valid"], [[1e3, 1e3], "mapped", [1001]], [[1001, 1001], "valid"], [[1002, 1002], "mapped", [1003]], [[1003, 1003], "valid"], [[1004, 1004], "mapped", [1005]], [[1005, 1005], "valid"], [[1006, 1006], "mapped", [1007]], [[1007, 1007], "valid"], [[1008, 1008], "mapped", [954]], [[1009, 1009], "mapped", [961]], [[1010, 1010], "mapped", [963]], [[1011, 1011], "valid"], [[1012, 1012], "mapped", [952]], [[1013, 1013], "mapped", [949]], [[1014, 1014], "valid", [], "NV8"], [[1015, 1015], "mapped", [1016]], [[1016, 1016], "valid"], [[1017, 1017], "mapped", [963]], [[1018, 1018], "mapped", [1019]], [[1019, 1019], "valid"], [[1020, 1020], "valid"], [[1021, 1021], "mapped", [891]], [[1022, 1022], "mapped", [892]], [[1023, 1023], "mapped", [893]], [[1024, 1024], "mapped", [1104]], [[1025, 1025], "mapped", [1105]], [[1026, 1026], "mapped", [1106]], [[1027, 1027], "mapped", [1107]], [[1028, 1028], "mapped", [1108]], [[1029, 1029], "mapped", [1109]], [[1030, 1030], "mapped", [1110]], [[1031, 1031], "mapped", [1111]], [[1032, 1032], "mapped", [1112]], [[1033, 1033], "mapped", [1113]], [[1034, 1034], "mapped", [1114]], [[1035, 1035], "mapped", [1115]], [[1036, 1036], "mapped", [1116]], [[1037, 1037], "mapped", [1117]], [[1038, 1038], "mapped", [1118]], [[1039, 1039], "mapped", [1119]], [[1040, 1040], "mapped", [1072]], [[1041, 1041], "mapped", [1073]], [[1042, 1042], "mapped", [1074]], [[1043, 1043], "mapped", [1075]], [[1044, 1044], "mapped", [1076]], [[1045, 1045], "mapped", [1077]], [[1046, 1046], "mapped", [1078]], [[1047, 1047], "mapped", [1079]], [[1048, 1048], "mapped", [1080]], [[1049, 1049], "mapped", [1081]], [[1050, 1050], "mapped", [1082]], [[1051, 1051], "mapped", [1083]], [[1052, 1052], "mapped", [1084]], [[1053, 1053], "mapped", [1085]], [[1054, 1054], "mapped", [1086]], [[1055, 1055], "mapped", [1087]], [[1056, 1056], "mapped", [1088]], [[1057, 1057], "mapped", [1089]], [[1058, 1058], "mapped", [1090]], [[1059, 1059], "mapped", [1091]], [[1060, 1060], "mapped", [1092]], [[1061, 1061], "mapped", [1093]], [[1062, 1062], "mapped", [1094]], [[1063, 1063], "mapped", [1095]], [[1064, 1064], "mapped", [1096]], [[1065, 1065], "mapped", [1097]], [[1066, 1066], "mapped", [1098]], [[1067, 1067], "mapped", [1099]], [[1068, 1068], "mapped", [1100]], [[1069, 1069], "mapped", [1101]], [[1070, 1070], "mapped", [1102]], [[1071, 1071], "mapped", [1103]], [[1072, 1103], "valid"], [[1104, 1104], "valid"], [[1105, 1116], "valid"], [[1117, 1117], "valid"], [[1118, 1119], "valid"], [[1120, 1120], "mapped", [1121]], [[1121, 1121], "valid"], [[1122, 1122], "mapped", [1123]], [[1123, 1123], "valid"], [[1124, 1124], "mapped", [1125]], [[1125, 1125], "valid"], [[1126, 1126], "mapped", [1127]], [[1127, 1127], "valid"], [[1128, 1128], "mapped", [1129]], [[1129, 1129], "valid"], [[1130, 1130], "mapped", [1131]], [[1131, 1131], "valid"], [[1132, 1132], "mapped", [1133]], [[1133, 1133], "valid"], [[1134, 1134], "mapped", [1135]], [[1135, 1135], "valid"], [[1136, 1136], "mapped", [1137]], [[1137, 1137], "valid"], [[1138, 1138], "mapped", [1139]], [[1139, 1139], "valid"], [[1140, 1140], "mapped", [1141]], [[1141, 1141], "valid"], [[1142, 1142], "mapped", [1143]], [[1143, 1143], "valid"], [[1144, 1144], "mapped", [1145]], [[1145, 1145], "valid"], [[1146, 1146], "mapped", [1147]], [[1147, 1147], "valid"], [[1148, 1148], "mapped", [1149]], [[1149, 1149], "valid"], [[1150, 1150], "mapped", [1151]], [[1151, 1151], "valid"], [[1152, 1152], "mapped", [1153]], [[1153, 1153], "valid"], [[1154, 1154], "valid", [], "NV8"], [[1155, 1158], "valid"], [[1159, 1159], "valid"], [[1160, 1161], "valid", [], "NV8"], [[1162, 1162], "mapped", [1163]], [[1163, 1163], "valid"], [[1164, 1164], "mapped", [1165]], [[1165, 1165], "valid"], [[1166, 1166], "mapped", [1167]], [[1167, 1167], "valid"], [[1168, 1168], "mapped", [1169]], [[1169, 1169], "valid"], [[1170, 1170], "mapped", [1171]], [[1171, 1171], "valid"], [[1172, 1172], "mapped", [1173]], [[1173, 1173], "valid"], [[1174, 1174], "mapped", [1175]], [[1175, 1175], "valid"], [[1176, 1176], "mapped", [1177]], [[1177, 1177], "valid"], [[1178, 1178], "mapped", [1179]], [[1179, 1179], "valid"], [[1180, 1180], "mapped", [1181]], [[1181, 1181], "valid"], [[1182, 1182], "mapped", [1183]], [[1183, 1183], "valid"], [[1184, 1184], "mapped", [1185]], [[1185, 1185], "valid"], [[1186, 1186], "mapped", [1187]], [[1187, 1187], "valid"], [[1188, 1188], "mapped", [1189]], [[1189, 1189], "valid"], [[1190, 1190], "mapped", [1191]], [[1191, 1191], "valid"], [[1192, 1192], "mapped", [1193]], [[1193, 1193], "valid"], [[1194, 1194], "mapped", [1195]], [[1195, 1195], "valid"], [[1196, 1196], "mapped", [1197]], [[1197, 1197], "valid"], [[1198, 1198], "mapped", [1199]], [[1199, 1199], "valid"], [[1200, 1200], "mapped", [1201]], [[1201, 1201], "valid"], [[1202, 1202], "mapped", [1203]], [[1203, 1203], "valid"], [[1204, 1204], "mapped", [1205]], [[1205, 1205], "valid"], [[1206, 1206], "mapped", [1207]], [[1207, 1207], "valid"], [[1208, 1208], "mapped", [1209]], [[1209, 1209], "valid"], [[1210, 1210], "mapped", [1211]], [[1211, 1211], "valid"], [[1212, 1212], "mapped", [1213]], [[1213, 1213], "valid"], [[1214, 1214], "mapped", [1215]], [[1215, 1215], "valid"], [[1216, 1216], "disallowed"], [[1217, 1217], "mapped", [1218]], [[1218, 1218], "valid"], [[1219, 1219], "mapped", [1220]], [[1220, 1220], "valid"], [[1221, 1221], "mapped", [1222]], [[1222, 1222], "valid"], [[1223, 1223], "mapped", [1224]], [[1224, 1224], "valid"], [[1225, 1225], "mapped", [1226]], [[1226, 1226], "valid"], [[1227, 1227], "mapped", [1228]], [[1228, 1228], "valid"], [[1229, 1229], "mapped", [1230]], [[1230, 1230], "valid"], [[1231, 1231], "valid"], [[1232, 1232], "mapped", [1233]], [[1233, 1233], "valid"], [[1234, 1234], "mapped", [1235]], [[1235, 1235], "valid"], [[1236, 1236], "mapped", [1237]], [[1237, 1237], "valid"], [[1238, 1238], "mapped", [1239]], [[1239, 1239], "valid"], [[1240, 1240], "mapped", [1241]], [[1241, 1241], "valid"], [[1242, 1242], "mapped", [1243]], [[1243, 1243], "valid"], [[1244, 1244], "mapped", [1245]], [[1245, 1245], "valid"], [[1246, 1246], "mapped", [1247]], [[1247, 1247], "valid"], [[1248, 1248], "mapped", [1249]], [[1249, 1249], "valid"], [[1250, 1250], "mapped", [1251]], [[1251, 1251], "valid"], [[1252, 1252], "mapped", [1253]], [[1253, 1253], "valid"], [[1254, 1254], "mapped", [1255]], [[1255, 1255], "valid"], [[1256, 1256], "mapped", [1257]], [[1257, 1257], "valid"], [[1258, 1258], "mapped", [1259]], [[1259, 1259], "valid"], [[1260, 1260], "mapped", [1261]], [[1261, 1261], "valid"], [[1262, 1262], "mapped", [1263]], [[1263, 1263], "valid"], [[1264, 1264], "mapped", [1265]], [[1265, 1265], "valid"], [[1266, 1266], "mapped", [1267]], [[1267, 1267], "valid"], [[1268, 1268], "mapped", [1269]], [[1269, 1269], "valid"], [[1270, 1270], "mapped", [1271]], [[1271, 1271], "valid"], [[1272, 1272], "mapped", [1273]], [[1273, 1273], "valid"], [[1274, 1274], "mapped", [1275]], [[1275, 1275], "valid"], [[1276, 1276], "mapped", [1277]], [[1277, 1277], "valid"], [[1278, 1278], "mapped", [1279]], [[1279, 1279], "valid"], [[1280, 1280], "mapped", [1281]], [[1281, 1281], "valid"], [[1282, 1282], "mapped", [1283]], [[1283, 1283], "valid"], [[1284, 1284], "mapped", [1285]], [[1285, 1285], "valid"], [[1286, 1286], "mapped", [1287]], [[1287, 1287], "valid"], [[1288, 1288], "mapped", [1289]], [[1289, 1289], "valid"], [[1290, 1290], "mapped", [1291]], [[1291, 1291], "valid"], [[1292, 1292], "mapped", [1293]], [[1293, 1293], "valid"], [[1294, 1294], "mapped", [1295]], [[1295, 1295], "valid"], [[1296, 1296], "mapped", [1297]], [[1297, 1297], "valid"], [[1298, 1298], "mapped", [1299]], [[1299, 1299], "valid"], [[1300, 1300], "mapped", [1301]], [[1301, 1301], "valid"], [[1302, 1302], "mapped", [1303]], [[1303, 1303], "valid"], [[1304, 1304], "mapped", [1305]], [[1305, 1305], "valid"], [[1306, 1306], "mapped", [1307]], [[1307, 1307], "valid"], [[1308, 1308], "mapped", [1309]], [[1309, 1309], "valid"], [[1310, 1310], "mapped", [1311]], [[1311, 1311], "valid"], [[1312, 1312], "mapped", [1313]], [[1313, 1313], "valid"], [[1314, 1314], "mapped", [1315]], [[1315, 1315], "valid"], [[1316, 1316], "mapped", [1317]], [[1317, 1317], "valid"], [[1318, 1318], "mapped", [1319]], [[1319, 1319], "valid"], [[1320, 1320], "mapped", [1321]], [[1321, 1321], "valid"], [[1322, 1322], "mapped", [1323]], [[1323, 1323], "valid"], [[1324, 1324], "mapped", [1325]], [[1325, 1325], "valid"], [[1326, 1326], "mapped", [1327]], [[1327, 1327], "valid"], [[1328, 1328], "disallowed"], [[1329, 1329], "mapped", [1377]], [[1330, 1330], "mapped", [1378]], [[1331, 1331], "mapped", [1379]], [[1332, 1332], "mapped", [1380]], [[1333, 1333], "mapped", [1381]], [[1334, 1334], "mapped", [1382]], [[1335, 1335], "mapped", [1383]], [[1336, 1336], "mapped", [1384]], [[1337, 1337], "mapped", [1385]], [[1338, 1338], "mapped", [1386]], [[1339, 1339], "mapped", [1387]], [[1340, 1340], "mapped", [1388]], [[1341, 1341], "mapped", [1389]], [[1342, 1342], "mapped", [1390]], [[1343, 1343], "mapped", [1391]], [[1344, 1344], "mapped", [1392]], [[1345, 1345], "mapped", [1393]], [[1346, 1346], "mapped", [1394]], [[1347, 1347], "mapped", [1395]], [[1348, 1348], "mapped", [1396]], [[1349, 1349], "mapped", [1397]], [[1350, 1350], "mapped", [1398]], [[1351, 1351], "mapped", [1399]], [[1352, 1352], "mapped", [1400]], [[1353, 1353], "mapped", [1401]], [[1354, 1354], "mapped", [1402]], [[1355, 1355], "mapped", [1403]], [[1356, 1356], "mapped", [1404]], [[1357, 1357], "mapped", [1405]], [[1358, 1358], "mapped", [1406]], [[1359, 1359], "mapped", [1407]], [[1360, 1360], "mapped", [1408]], [[1361, 1361], "mapped", [1409]], [[1362, 1362], "mapped", [1410]], [[1363, 1363], "mapped", [1411]], [[1364, 1364], "mapped", [1412]], [[1365, 1365], "mapped", [1413]], [[1366, 1366], "mapped", [1414]], [[1367, 1368], "disallowed"], [[1369, 1369], "valid"], [[1370, 1375], "valid", [], "NV8"], [[1376, 1376], "disallowed"], [[1377, 1414], "valid"], [[1415, 1415], "mapped", [1381, 1410]], [[1416, 1416], "disallowed"], [[1417, 1417], "valid", [], "NV8"], [[1418, 1418], "valid", [], "NV8"], [[1419, 1420], "disallowed"], [[1421, 1422], "valid", [], "NV8"], [[1423, 1423], "valid", [], "NV8"], [[1424, 1424], "disallowed"], [[1425, 1441], "valid"], [[1442, 1442], "valid"], [[1443, 1455], "valid"], [[1456, 1465], "valid"], [[1466, 1466], "valid"], [[1467, 1469], "valid"], [[1470, 1470], "valid", [], "NV8"], [[1471, 1471], "valid"], [[1472, 1472], "valid", [], "NV8"], [[1473, 1474], "valid"], [[1475, 1475], "valid", [], "NV8"], [[1476, 1476], "valid"], [[1477, 1477], "valid"], [[1478, 1478], "valid", [], "NV8"], [[1479, 1479], "valid"], [[1480, 1487], "disallowed"], [[1488, 1514], "valid"], [[1515, 1519], "disallowed"], [[1520, 1524], "valid"], [[1525, 1535], "disallowed"], [[1536, 1539], "disallowed"], [[1540, 1540], "disallowed"], [[1541, 1541], "disallowed"], [[1542, 1546], "valid", [], "NV8"], [[1547, 1547], "valid", [], "NV8"], [[1548, 1548], "valid", [], "NV8"], [[1549, 1551], "valid", [], "NV8"], [[1552, 1557], "valid"], [[1558, 1562], "valid"], [[1563, 1563], "valid", [], "NV8"], [[1564, 1564], "disallowed"], [[1565, 1565], "disallowed"], [[1566, 1566], "valid", [], "NV8"], [[1567, 1567], "valid", [], "NV8"], [[1568, 1568], "valid"], [[1569, 1594], "valid"], [[1595, 1599], "valid"], [[1600, 1600], "valid", [], "NV8"], [[1601, 1618], "valid"], [[1619, 1621], "valid"], [[1622, 1624], "valid"], [[1625, 1630], "valid"], [[1631, 1631], "valid"], [[1632, 1641], "valid"], [[1642, 1645], "valid", [], "NV8"], [[1646, 1647], "valid"], [[1648, 1652], "valid"], [[1653, 1653], "mapped", [1575, 1652]], [[1654, 1654], "mapped", [1608, 1652]], [[1655, 1655], "mapped", [1735, 1652]], [[1656, 1656], "mapped", [1610, 1652]], [[1657, 1719], "valid"], [[1720, 1721], "valid"], [[1722, 1726], "valid"], [[1727, 1727], "valid"], [[1728, 1742], "valid"], [[1743, 1743], "valid"], [[1744, 1747], "valid"], [[1748, 1748], "valid", [], "NV8"], [[1749, 1756], "valid"], [[1757, 1757], "disallowed"], [[1758, 1758], "valid", [], "NV8"], [[1759, 1768], "valid"], [[1769, 1769], "valid", [], "NV8"], [[1770, 1773], "valid"], [[1774, 1775], "valid"], [[1776, 1785], "valid"], [[1786, 1790], "valid"], [[1791, 1791], "valid"], [[1792, 1805], "valid", [], "NV8"], [[1806, 1806], "disallowed"], [[1807, 1807], "disallowed"], [[1808, 1836], "valid"], [[1837, 1839], "valid"], [[1840, 1866], "valid"], [[1867, 1868], "disallowed"], [[1869, 1871], "valid"], [[1872, 1901], "valid"], [[1902, 1919], "valid"], [[1920, 1968], "valid"], [[1969, 1969], "valid"], [[1970, 1983], "disallowed"], [[1984, 2037], "valid"], [[2038, 2042], "valid", [], "NV8"], [[2043, 2047], "disallowed"], [[2048, 2093], "valid"], [[2094, 2095], "disallowed"], [[2096, 2110], "valid", [], "NV8"], [[2111, 2111], "disallowed"], [[2112, 2139], "valid"], [[2140, 2141], "disallowed"], [[2142, 2142], "valid", [], "NV8"], [[2143, 2207], "disallowed"], [[2208, 2208], "valid"], [[2209, 2209], "valid"], [[2210, 2220], "valid"], [[2221, 2226], "valid"], [[2227, 2228], "valid"], [[2229, 2274], "disallowed"], [[2275, 2275], "valid"], [[2276, 2302], "valid"], [[2303, 2303], "valid"], [[2304, 2304], "valid"], [[2305, 2307], "valid"], [[2308, 2308], "valid"], [[2309, 2361], "valid"], [[2362, 2363], "valid"], [[2364, 2381], "valid"], [[2382, 2382], "valid"], [[2383, 2383], "valid"], [[2384, 2388], "valid"], [[2389, 2389], "valid"], [[2390, 2391], "valid"], [[2392, 2392], "mapped", [2325, 2364]], [[2393, 2393], "mapped", [2326, 2364]], [[2394, 2394], "mapped", [2327, 2364]], [[2395, 2395], "mapped", [2332, 2364]], [[2396, 2396], "mapped", [2337, 2364]], [[2397, 2397], "mapped", [2338, 2364]], [[2398, 2398], "mapped", [2347, 2364]], [[2399, 2399], "mapped", [2351, 2364]], [[2400, 2403], "valid"], [[2404, 2405], "valid", [], "NV8"], [[2406, 2415], "valid"], [[2416, 2416], "valid", [], "NV8"], [[2417, 2418], "valid"], [[2419, 2423], "valid"], [[2424, 2424], "valid"], [[2425, 2426], "valid"], [[2427, 2428], "valid"], [[2429, 2429], "valid"], [[2430, 2431], "valid"], [[2432, 2432], "valid"], [[2433, 2435], "valid"], [[2436, 2436], "disallowed"], [[2437, 2444], "valid"], [[2445, 2446], "disallowed"], [[2447, 2448], "valid"], [[2449, 2450], "disallowed"], [[2451, 2472], "valid"], [[2473, 2473], "disallowed"], [[2474, 2480], "valid"], [[2481, 2481], "disallowed"], [[2482, 2482], "valid"], [[2483, 2485], "disallowed"], [[2486, 2489], "valid"], [[2490, 2491], "disallowed"], [[2492, 2492], "valid"], [[2493, 2493], "valid"], [[2494, 2500], "valid"], [[2501, 2502], "disallowed"], [[2503, 2504], "valid"], [[2505, 2506], "disallowed"], [[2507, 2509], "valid"], [[2510, 2510], "valid"], [[2511, 2518], "disallowed"], [[2519, 2519], "valid"], [[2520, 2523], "disallowed"], [[2524, 2524], "mapped", [2465, 2492]], [[2525, 2525], "mapped", [2466, 2492]], [[2526, 2526], "disallowed"], [[2527, 2527], "mapped", [2479, 2492]], [[2528, 2531], "valid"], [[2532, 2533], "disallowed"], [[2534, 2545], "valid"], [[2546, 2554], "valid", [], "NV8"], [[2555, 2555], "valid", [], "NV8"], [[2556, 2560], "disallowed"], [[2561, 2561], "valid"], [[2562, 2562], "valid"], [[2563, 2563], "valid"], [[2564, 2564], "disallowed"], [[2565, 2570], "valid"], [[2571, 2574], "disallowed"], [[2575, 2576], "valid"], [[2577, 2578], "disallowed"], [[2579, 2600], "valid"], [[2601, 2601], "disallowed"], [[2602, 2608], "valid"], [[2609, 2609], "disallowed"], [[2610, 2610], "valid"], [[2611, 2611], "mapped", [2610, 2620]], [[2612, 2612], "disallowed"], [[2613, 2613], "valid"], [[2614, 2614], "mapped", [2616, 2620]], [[2615, 2615], "disallowed"], [[2616, 2617], "valid"], [[2618, 2619], "disallowed"], [[2620, 2620], "valid"], [[2621, 2621], "disallowed"], [[2622, 2626], "valid"], [[2627, 2630], "disallowed"], [[2631, 2632], "valid"], [[2633, 2634], "disallowed"], [[2635, 2637], "valid"], [[2638, 2640], "disallowed"], [[2641, 2641], "valid"], [[2642, 2648], "disallowed"], [[2649, 2649], "mapped", [2582, 2620]], [[2650, 2650], "mapped", [2583, 2620]], [[2651, 2651], "mapped", [2588, 2620]], [[2652, 2652], "valid"], [[2653, 2653], "disallowed"], [[2654, 2654], "mapped", [2603, 2620]], [[2655, 2661], "disallowed"], [[2662, 2676], "valid"], [[2677, 2677], "valid"], [[2678, 2688], "disallowed"], [[2689, 2691], "valid"], [[2692, 2692], "disallowed"], [[2693, 2699], "valid"], [[2700, 2700], "valid"], [[2701, 2701], "valid"], [[2702, 2702], "disallowed"], [[2703, 2705], "valid"], [[2706, 2706], "disallowed"], [[2707, 2728], "valid"], [[2729, 2729], "disallowed"], [[2730, 2736], "valid"], [[2737, 2737], "disallowed"], [[2738, 2739], "valid"], [[2740, 2740], "disallowed"], [[2741, 2745], "valid"], [[2746, 2747], "disallowed"], [[2748, 2757], "valid"], [[2758, 2758], "disallowed"], [[2759, 2761], "valid"], [[2762, 2762], "disallowed"], [[2763, 2765], "valid"], [[2766, 2767], "disallowed"], [[2768, 2768], "valid"], [[2769, 2783], "disallowed"], [[2784, 2784], "valid"], [[2785, 2787], "valid"], [[2788, 2789], "disallowed"], [[2790, 2799], "valid"], [[2800, 2800], "valid", [], "NV8"], [[2801, 2801], "valid", [], "NV8"], [[2802, 2808], "disallowed"], [[2809, 2809], "valid"], [[2810, 2816], "disallowed"], [[2817, 2819], "valid"], [[2820, 2820], "disallowed"], [[2821, 2828], "valid"], [[2829, 2830], "disallowed"], [[2831, 2832], "valid"], [[2833, 2834], "disallowed"], [[2835, 2856], "valid"], [[2857, 2857], "disallowed"], [[2858, 2864], "valid"], [[2865, 2865], "disallowed"], [[2866, 2867], "valid"], [[2868, 2868], "disallowed"], [[2869, 2869], "valid"], [[2870, 2873], "valid"], [[2874, 2875], "disallowed"], [[2876, 2883], "valid"], [[2884, 2884], "valid"], [[2885, 2886], "disallowed"], [[2887, 2888], "valid"], [[2889, 2890], "disallowed"], [[2891, 2893], "valid"], [[2894, 2901], "disallowed"], [[2902, 2903], "valid"], [[2904, 2907], "disallowed"], [[2908, 2908], "mapped", [2849, 2876]], [[2909, 2909], "mapped", [2850, 2876]], [[2910, 2910], "disallowed"], [[2911, 2913], "valid"], [[2914, 2915], "valid"], [[2916, 2917], "disallowed"], [[2918, 2927], "valid"], [[2928, 2928], "valid", [], "NV8"], [[2929, 2929], "valid"], [[2930, 2935], "valid", [], "NV8"], [[2936, 2945], "disallowed"], [[2946, 2947], "valid"], [[2948, 2948], "disallowed"], [[2949, 2954], "valid"], [[2955, 2957], "disallowed"], [[2958, 2960], "valid"], [[2961, 2961], "disallowed"], [[2962, 2965], "valid"], [[2966, 2968], "disallowed"], [[2969, 2970], "valid"], [[2971, 2971], "disallowed"], [[2972, 2972], "valid"], [[2973, 2973], "disallowed"], [[2974, 2975], "valid"], [[2976, 2978], "disallowed"], [[2979, 2980], "valid"], [[2981, 2983], "disallowed"], [[2984, 2986], "valid"], [[2987, 2989], "disallowed"], [[2990, 2997], "valid"], [[2998, 2998], "valid"], [[2999, 3001], "valid"], [[3002, 3005], "disallowed"], [[3006, 3010], "valid"], [[3011, 3013], "disallowed"], [[3014, 3016], "valid"], [[3017, 3017], "disallowed"], [[3018, 3021], "valid"], [[3022, 3023], "disallowed"], [[3024, 3024], "valid"], [[3025, 3030], "disallowed"], [[3031, 3031], "valid"], [[3032, 3045], "disallowed"], [[3046, 3046], "valid"], [[3047, 3055], "valid"], [[3056, 3058], "valid", [], "NV8"], [[3059, 3066], "valid", [], "NV8"], [[3067, 3071], "disallowed"], [[3072, 3072], "valid"], [[3073, 3075], "valid"], [[3076, 3076], "disallowed"], [[3077, 3084], "valid"], [[3085, 3085], "disallowed"], [[3086, 3088], "valid"], [[3089, 3089], "disallowed"], [[3090, 3112], "valid"], [[3113, 3113], "disallowed"], [[3114, 3123], "valid"], [[3124, 3124], "valid"], [[3125, 3129], "valid"], [[3130, 3132], "disallowed"], [[3133, 3133], "valid"], [[3134, 3140], "valid"], [[3141, 3141], "disallowed"], [[3142, 3144], "valid"], [[3145, 3145], "disallowed"], [[3146, 3149], "valid"], [[3150, 3156], "disallowed"], [[3157, 3158], "valid"], [[3159, 3159], "disallowed"], [[3160, 3161], "valid"], [[3162, 3162], "valid"], [[3163, 3167], "disallowed"], [[3168, 3169], "valid"], [[3170, 3171], "valid"], [[3172, 3173], "disallowed"], [[3174, 3183], "valid"], [[3184, 3191], "disallowed"], [[3192, 3199], "valid", [], "NV8"], [[3200, 3200], "disallowed"], [[3201, 3201], "valid"], [[3202, 3203], "valid"], [[3204, 3204], "disallowed"], [[3205, 3212], "valid"], [[3213, 3213], "disallowed"], [[3214, 3216], "valid"], [[3217, 3217], "disallowed"], [[3218, 3240], "valid"], [[3241, 3241], "disallowed"], [[3242, 3251], "valid"], [[3252, 3252], "disallowed"], [[3253, 3257], "valid"], [[3258, 3259], "disallowed"], [[3260, 3261], "valid"], [[3262, 3268], "valid"], [[3269, 3269], "disallowed"], [[3270, 3272], "valid"], [[3273, 3273], "disallowed"], [[3274, 3277], "valid"], [[3278, 3284], "disallowed"], [[3285, 3286], "valid"], [[3287, 3293], "disallowed"], [[3294, 3294], "valid"], [[3295, 3295], "disallowed"], [[3296, 3297], "valid"], [[3298, 3299], "valid"], [[3300, 3301], "disallowed"], [[3302, 3311], "valid"], [[3312, 3312], "disallowed"], [[3313, 3314], "valid"], [[3315, 3328], "disallowed"], [[3329, 3329], "valid"], [[3330, 3331], "valid"], [[3332, 3332], "disallowed"], [[3333, 3340], "valid"], [[3341, 3341], "disallowed"], [[3342, 3344], "valid"], [[3345, 3345], "disallowed"], [[3346, 3368], "valid"], [[3369, 3369], "valid"], [[3370, 3385], "valid"], [[3386, 3386], "valid"], [[3387, 3388], "disallowed"], [[3389, 3389], "valid"], [[3390, 3395], "valid"], [[3396, 3396], "valid"], [[3397, 3397], "disallowed"], [[3398, 3400], "valid"], [[3401, 3401], "disallowed"], [[3402, 3405], "valid"], [[3406, 3406], "valid"], [[3407, 3414], "disallowed"], [[3415, 3415], "valid"], [[3416, 3422], "disallowed"], [[3423, 3423], "valid"], [[3424, 3425], "valid"], [[3426, 3427], "valid"], [[3428, 3429], "disallowed"], [[3430, 3439], "valid"], [[3440, 3445], "valid", [], "NV8"], [[3446, 3448], "disallowed"], [[3449, 3449], "valid", [], "NV8"], [[3450, 3455], "valid"], [[3456, 3457], "disallowed"], [[3458, 3459], "valid"], [[3460, 3460], "disallowed"], [[3461, 3478], "valid"], [[3479, 3481], "disallowed"], [[3482, 3505], "valid"], [[3506, 3506], "disallowed"], [[3507, 3515], "valid"], [[3516, 3516], "disallowed"], [[3517, 3517], "valid"], [[3518, 3519], "disallowed"], [[3520, 3526], "valid"], [[3527, 3529], "disallowed"], [[3530, 3530], "valid"], [[3531, 3534], "disallowed"], [[3535, 3540], "valid"], [[3541, 3541], "disallowed"], [[3542, 3542], "valid"], [[3543, 3543], "disallowed"], [[3544, 3551], "valid"], [[3552, 3557], "disallowed"], [[3558, 3567], "valid"], [[3568, 3569], "disallowed"], [[3570, 3571], "valid"], [[3572, 3572], "valid", [], "NV8"], [[3573, 3584], "disallowed"], [[3585, 3634], "valid"], [[3635, 3635], "mapped", [3661, 3634]], [[3636, 3642], "valid"], [[3643, 3646], "disallowed"], [[3647, 3647], "valid", [], "NV8"], [[3648, 3662], "valid"], [[3663, 3663], "valid", [], "NV8"], [[3664, 3673], "valid"], [[3674, 3675], "valid", [], "NV8"], [[3676, 3712], "disallowed"], [[3713, 3714], "valid"], [[3715, 3715], "disallowed"], [[3716, 3716], "valid"], [[3717, 3718], "disallowed"], [[3719, 3720], "valid"], [[3721, 3721], "disallowed"], [[3722, 3722], "valid"], [[3723, 3724], "disallowed"], [[3725, 3725], "valid"], [[3726, 3731], "disallowed"], [[3732, 3735], "valid"], [[3736, 3736], "disallowed"], [[3737, 3743], "valid"], [[3744, 3744], "disallowed"], [[3745, 3747], "valid"], [[3748, 3748], "disallowed"], [[3749, 3749], "valid"], [[3750, 3750], "disallowed"], [[3751, 3751], "valid"], [[3752, 3753], "disallowed"], [[3754, 3755], "valid"], [[3756, 3756], "disallowed"], [[3757, 3762], "valid"], [[3763, 3763], "mapped", [3789, 3762]], [[3764, 3769], "valid"], [[3770, 3770], "disallowed"], [[3771, 3773], "valid"], [[3774, 3775], "disallowed"], [[3776, 3780], "valid"], [[3781, 3781], "disallowed"], [[3782, 3782], "valid"], [[3783, 3783], "disallowed"], [[3784, 3789], "valid"], [[3790, 3791], "disallowed"], [[3792, 3801], "valid"], [[3802, 3803], "disallowed"], [[3804, 3804], "mapped", [3755, 3737]], [[3805, 3805], "mapped", [3755, 3745]], [[3806, 3807], "valid"], [[3808, 3839], "disallowed"], [[3840, 3840], "valid"], [[3841, 3850], "valid", [], "NV8"], [[3851, 3851], "valid"], [[3852, 3852], "mapped", [3851]], [[3853, 3863], "valid", [], "NV8"], [[3864, 3865], "valid"], [[3866, 3871], "valid", [], "NV8"], [[3872, 3881], "valid"], [[3882, 3892], "valid", [], "NV8"], [[3893, 3893], "valid"], [[3894, 3894], "valid", [], "NV8"], [[3895, 3895], "valid"], [[3896, 3896], "valid", [], "NV8"], [[3897, 3897], "valid"], [[3898, 3901], "valid", [], "NV8"], [[3902, 3906], "valid"], [[3907, 3907], "mapped", [3906, 4023]], [[3908, 3911], "valid"], [[3912, 3912], "disallowed"], [[3913, 3916], "valid"], [[3917, 3917], "mapped", [3916, 4023]], [[3918, 3921], "valid"], [[3922, 3922], "mapped", [3921, 4023]], [[3923, 3926], "valid"], [[3927, 3927], "mapped", [3926, 4023]], [[3928, 3931], "valid"], [[3932, 3932], "mapped", [3931, 4023]], [[3933, 3944], "valid"], [[3945, 3945], "mapped", [3904, 4021]], [[3946, 3946], "valid"], [[3947, 3948], "valid"], [[3949, 3952], "disallowed"], [[3953, 3954], "valid"], [[3955, 3955], "mapped", [3953, 3954]], [[3956, 3956], "valid"], [[3957, 3957], "mapped", [3953, 3956]], [[3958, 3958], "mapped", [4018, 3968]], [[3959, 3959], "mapped", [4018, 3953, 3968]], [[3960, 3960], "mapped", [4019, 3968]], [[3961, 3961], "mapped", [4019, 3953, 3968]], [[3962, 3968], "valid"], [[3969, 3969], "mapped", [3953, 3968]], [[3970, 3972], "valid"], [[3973, 3973], "valid", [], "NV8"], [[3974, 3979], "valid"], [[3980, 3983], "valid"], [[3984, 3986], "valid"], [[3987, 3987], "mapped", [3986, 4023]], [[3988, 3989], "valid"], [[3990, 3990], "valid"], [[3991, 3991], "valid"], [[3992, 3992], "disallowed"], [[3993, 3996], "valid"], [[3997, 3997], "mapped", [3996, 4023]], [[3998, 4001], "valid"], [[4002, 4002], "mapped", [4001, 4023]], [[4003, 4006], "valid"], [[4007, 4007], "mapped", [4006, 4023]], [[4008, 4011], "valid"], [[4012, 4012], "mapped", [4011, 4023]], [[4013, 4013], "valid"], [[4014, 4016], "valid"], [[4017, 4023], "valid"], [[4024, 4024], "valid"], [[4025, 4025], "mapped", [3984, 4021]], [[4026, 4028], "valid"], [[4029, 4029], "disallowed"], [[4030, 4037], "valid", [], "NV8"], [[4038, 4038], "valid"], [[4039, 4044], "valid", [], "NV8"], [[4045, 4045], "disallowed"], [[4046, 4046], "valid", [], "NV8"], [[4047, 4047], "valid", [], "NV8"], [[4048, 4049], "valid", [], "NV8"], [[4050, 4052], "valid", [], "NV8"], [[4053, 4056], "valid", [], "NV8"], [[4057, 4058], "valid", [], "NV8"], [[4059, 4095], "disallowed"], [[4096, 4129], "valid"], [[4130, 4130], "valid"], [[4131, 4135], "valid"], [[4136, 4136], "valid"], [[4137, 4138], "valid"], [[4139, 4139], "valid"], [[4140, 4146], "valid"], [[4147, 4149], "valid"], [[4150, 4153], "valid"], [[4154, 4159], "valid"], [[4160, 4169], "valid"], [[4170, 4175], "valid", [], "NV8"], [[4176, 4185], "valid"], [[4186, 4249], "valid"], [[4250, 4253], "valid"], [[4254, 4255], "valid", [], "NV8"], [[4256, 4293], "disallowed"], [[4294, 4294], "disallowed"], [[4295, 4295], "mapped", [11559]], [[4296, 4300], "disallowed"], [[4301, 4301], "mapped", [11565]], [[4302, 4303], "disallowed"], [[4304, 4342], "valid"], [[4343, 4344], "valid"], [[4345, 4346], "valid"], [[4347, 4347], "valid", [], "NV8"], [[4348, 4348], "mapped", [4316]], [[4349, 4351], "valid"], [[4352, 4441], "valid", [], "NV8"], [[4442, 4446], "valid", [], "NV8"], [[4447, 4448], "disallowed"], [[4449, 4514], "valid", [], "NV8"], [[4515, 4519], "valid", [], "NV8"], [[4520, 4601], "valid", [], "NV8"], [[4602, 4607], "valid", [], "NV8"], [[4608, 4614], "valid"], [[4615, 4615], "valid"], [[4616, 4678], "valid"], [[4679, 4679], "valid"], [[4680, 4680], "valid"], [[4681, 4681], "disallowed"], [[4682, 4685], "valid"], [[4686, 4687], "disallowed"], [[4688, 4694], "valid"], [[4695, 4695], "disallowed"], [[4696, 4696], "valid"], [[4697, 4697], "disallowed"], [[4698, 4701], "valid"], [[4702, 4703], "disallowed"], [[4704, 4742], "valid"], [[4743, 4743], "valid"], [[4744, 4744], "valid"], [[4745, 4745], "disallowed"], [[4746, 4749], "valid"], [[4750, 4751], "disallowed"], [[4752, 4782], "valid"], [[4783, 4783], "valid"], [[4784, 4784], "valid"], [[4785, 4785], "disallowed"], [[4786, 4789], "valid"], [[4790, 4791], "disallowed"], [[4792, 4798], "valid"], [[4799, 4799], "disallowed"], [[4800, 4800], "valid"], [[4801, 4801], "disallowed"], [[4802, 4805], "valid"], [[4806, 4807], "disallowed"], [[4808, 4814], "valid"], [[4815, 4815], "valid"], [[4816, 4822], "valid"], [[4823, 4823], "disallowed"], [[4824, 4846], "valid"], [[4847, 4847], "valid"], [[4848, 4878], "valid"], [[4879, 4879], "valid"], [[4880, 4880], "valid"], [[4881, 4881], "disallowed"], [[4882, 4885], "valid"], [[4886, 4887], "disallowed"], [[4888, 4894], "valid"], [[4895, 4895], "valid"], [[4896, 4934], "valid"], [[4935, 4935], "valid"], [[4936, 4954], "valid"], [[4955, 4956], "disallowed"], [[4957, 4958], "valid"], [[4959, 4959], "valid"], [[4960, 4960], "valid", [], "NV8"], [[4961, 4988], "valid", [], "NV8"], [[4989, 4991], "disallowed"], [[4992, 5007], "valid"], [[5008, 5017], "valid", [], "NV8"], [[5018, 5023], "disallowed"], [[5024, 5108], "valid"], [[5109, 5109], "valid"], [[5110, 5111], "disallowed"], [[5112, 5112], "mapped", [5104]], [[5113, 5113], "mapped", [5105]], [[5114, 5114], "mapped", [5106]], [[5115, 5115], "mapped", [5107]], [[5116, 5116], "mapped", [5108]], [[5117, 5117], "mapped", [5109]], [[5118, 5119], "disallowed"], [[5120, 5120], "valid", [], "NV8"], [[5121, 5740], "valid"], [[5741, 5742], "valid", [], "NV8"], [[5743, 5750], "valid"], [[5751, 5759], "valid"], [[5760, 5760], "disallowed"], [[5761, 5786], "valid"], [[5787, 5788], "valid", [], "NV8"], [[5789, 5791], "disallowed"], [[5792, 5866], "valid"], [[5867, 5872], "valid", [], "NV8"], [[5873, 5880], "valid"], [[5881, 5887], "disallowed"], [[5888, 5900], "valid"], [[5901, 5901], "disallowed"], [[5902, 5908], "valid"], [[5909, 5919], "disallowed"], [[5920, 5940], "valid"], [[5941, 5942], "valid", [], "NV8"], [[5943, 5951], "disallowed"], [[5952, 5971], "valid"], [[5972, 5983], "disallowed"], [[5984, 5996], "valid"], [[5997, 5997], "disallowed"], [[5998, 6e3], "valid"], [[6001, 6001], "disallowed"], [[6002, 6003], "valid"], [[6004, 6015], "disallowed"], [[6016, 6067], "valid"], [[6068, 6069], "disallowed"], [[6070, 6099], "valid"], [[6100, 6102], "valid", [], "NV8"], [[6103, 6103], "valid"], [[6104, 6107], "valid", [], "NV8"], [[6108, 6108], "valid"], [[6109, 6109], "valid"], [[6110, 6111], "disallowed"], [[6112, 6121], "valid"], [[6122, 6127], "disallowed"], [[6128, 6137], "valid", [], "NV8"], [[6138, 6143], "disallowed"], [[6144, 6149], "valid", [], "NV8"], [[6150, 6150], "disallowed"], [[6151, 6154], "valid", [], "NV8"], [[6155, 6157], "ignored"], [[6158, 6158], "disallowed"], [[6159, 6159], "disallowed"], [[6160, 6169], "valid"], [[6170, 6175], "disallowed"], [[6176, 6263], "valid"], [[6264, 6271], "disallowed"], [[6272, 6313], "valid"], [[6314, 6314], "valid"], [[6315, 6319], "disallowed"], [[6320, 6389], "valid"], [[6390, 6399], "disallowed"], [[6400, 6428], "valid"], [[6429, 6430], "valid"], [[6431, 6431], "disallowed"], [[6432, 6443], "valid"], [[6444, 6447], "disallowed"], [[6448, 6459], "valid"], [[6460, 6463], "disallowed"], [[6464, 6464], "valid", [], "NV8"], [[6465, 6467], "disallowed"], [[6468, 6469], "valid", [], "NV8"], [[6470, 6509], "valid"], [[6510, 6511], "disallowed"], [[6512, 6516], "valid"], [[6517, 6527], "disallowed"], [[6528, 6569], "valid"], [[6570, 6571], "valid"], [[6572, 6575], "disallowed"], [[6576, 6601], "valid"], [[6602, 6607], "disallowed"], [[6608, 6617], "valid"], [[6618, 6618], "valid", [], "XV8"], [[6619, 6621], "disallowed"], [[6622, 6623], "valid", [], "NV8"], [[6624, 6655], "valid", [], "NV8"], [[6656, 6683], "valid"], [[6684, 6685], "disallowed"], [[6686, 6687], "valid", [], "NV8"], [[6688, 6750], "valid"], [[6751, 6751], "disallowed"], [[6752, 6780], "valid"], [[6781, 6782], "disallowed"], [[6783, 6793], "valid"], [[6794, 6799], "disallowed"], [[6800, 6809], "valid"], [[6810, 6815], "disallowed"], [[6816, 6822], "valid", [], "NV8"], [[6823, 6823], "valid"], [[6824, 6829], "valid", [], "NV8"], [[6830, 6831], "disallowed"], [[6832, 6845], "valid"], [[6846, 6846], "valid", [], "NV8"], [[6847, 6911], "disallowed"], [[6912, 6987], "valid"], [[6988, 6991], "disallowed"], [[6992, 7001], "valid"], [[7002, 7018], "valid", [], "NV8"], [[7019, 7027], "valid"], [[7028, 7036], "valid", [], "NV8"], [[7037, 7039], "disallowed"], [[7040, 7082], "valid"], [[7083, 7085], "valid"], [[7086, 7097], "valid"], [[7098, 7103], "valid"], [[7104, 7155], "valid"], [[7156, 7163], "disallowed"], [[7164, 7167], "valid", [], "NV8"], [[7168, 7223], "valid"], [[7224, 7226], "disallowed"], [[7227, 7231], "valid", [], "NV8"], [[7232, 7241], "valid"], [[7242, 7244], "disallowed"], [[7245, 7293], "valid"], [[7294, 7295], "valid", [], "NV8"], [[7296, 7359], "disallowed"], [[7360, 7367], "valid", [], "NV8"], [[7368, 7375], "disallowed"], [[7376, 7378], "valid"], [[7379, 7379], "valid", [], "NV8"], [[7380, 7410], "valid"], [[7411, 7414], "valid"], [[7415, 7415], "disallowed"], [[7416, 7417], "valid"], [[7418, 7423], "disallowed"], [[7424, 7467], "valid"], [[7468, 7468], "mapped", [97]], [[7469, 7469], "mapped", [230]], [[7470, 7470], "mapped", [98]], [[7471, 7471], "valid"], [[7472, 7472], "mapped", [100]], [[7473, 7473], "mapped", [101]], [[7474, 7474], "mapped", [477]], [[7475, 7475], "mapped", [103]], [[7476, 7476], "mapped", [104]], [[7477, 7477], "mapped", [105]], [[7478, 7478], "mapped", [106]], [[7479, 7479], "mapped", [107]], [[7480, 7480], "mapped", [108]], [[7481, 7481], "mapped", [109]], [[7482, 7482], "mapped", [110]], [[7483, 7483], "valid"], [[7484, 7484], "mapped", [111]], [[7485, 7485], "mapped", [547]], [[7486, 7486], "mapped", [112]], [[7487, 7487], "mapped", [114]], [[7488, 7488], "mapped", [116]], [[7489, 7489], "mapped", [117]], [[7490, 7490], "mapped", [119]], [[7491, 7491], "mapped", [97]], [[7492, 7492], "mapped", [592]], [[7493, 7493], "mapped", [593]], [[7494, 7494], "mapped", [7426]], [[7495, 7495], "mapped", [98]], [[7496, 7496], "mapped", [100]], [[7497, 7497], "mapped", [101]], [[7498, 7498], "mapped", [601]], [[7499, 7499], "mapped", [603]], [[7500, 7500], "mapped", [604]], [[7501, 7501], "mapped", [103]], [[7502, 7502], "valid"], [[7503, 7503], "mapped", [107]], [[7504, 7504], "mapped", [109]], [[7505, 7505], "mapped", [331]], [[7506, 7506], "mapped", [111]], [[7507, 7507], "mapped", [596]], [[7508, 7508], "mapped", [7446]], [[7509, 7509], "mapped", [7447]], [[7510, 7510], "mapped", [112]], [[7511, 7511], "mapped", [116]], [[7512, 7512], "mapped", [117]], [[7513, 7513], "mapped", [7453]], [[7514, 7514], "mapped", [623]], [[7515, 7515], "mapped", [118]], [[7516, 7516], "mapped", [7461]], [[7517, 7517], "mapped", [946]], [[7518, 7518], "mapped", [947]], [[7519, 7519], "mapped", [948]], [[7520, 7520], "mapped", [966]], [[7521, 7521], "mapped", [967]], [[7522, 7522], "mapped", [105]], [[7523, 7523], "mapped", [114]], [[7524, 7524], "mapped", [117]], [[7525, 7525], "mapped", [118]], [[7526, 7526], "mapped", [946]], [[7527, 7527], "mapped", [947]], [[7528, 7528], "mapped", [961]], [[7529, 7529], "mapped", [966]], [[7530, 7530], "mapped", [967]], [[7531, 7531], "valid"], [[7532, 7543], "valid"], [[7544, 7544], "mapped", [1085]], [[7545, 7578], "valid"], [[7579, 7579], "mapped", [594]], [[7580, 7580], "mapped", [99]], [[7581, 7581], "mapped", [597]], [[7582, 7582], "mapped", [240]], [[7583, 7583], "mapped", [604]], [[7584, 7584], "mapped", [102]], [[7585, 7585], "mapped", [607]], [[7586, 7586], "mapped", [609]], [[7587, 7587], "mapped", [613]], [[7588, 7588], "mapped", [616]], [[7589, 7589], "mapped", [617]], [[7590, 7590], "mapped", [618]], [[7591, 7591], "mapped", [7547]], [[7592, 7592], "mapped", [669]], [[7593, 7593], "mapped", [621]], [[7594, 7594], "mapped", [7557]], [[7595, 7595], "mapped", [671]], [[7596, 7596], "mapped", [625]], [[7597, 7597], "mapped", [624]], [[7598, 7598], "mapped", [626]], [[7599, 7599], "mapped", [627]], [[7600, 7600], "mapped", [628]], [[7601, 7601], "mapped", [629]], [[7602, 7602], "mapped", [632]], [[7603, 7603], "mapped", [642]], [[7604, 7604], "mapped", [643]], [[7605, 7605], "mapped", [427]], [[7606, 7606], "mapped", [649]], [[7607, 7607], "mapped", [650]], [[7608, 7608], "mapped", [7452]], [[7609, 7609], "mapped", [651]], [[7610, 7610], "mapped", [652]], [[7611, 7611], "mapped", [122]], [[7612, 7612], "mapped", [656]], [[7613, 7613], "mapped", [657]], [[7614, 7614], "mapped", [658]], [[7615, 7615], "mapped", [952]], [[7616, 7619], "valid"], [[7620, 7626], "valid"], [[7627, 7654], "valid"], [[7655, 7669], "valid"], [[7670, 7675], "disallowed"], [[7676, 7676], "valid"], [[7677, 7677], "valid"], [[7678, 7679], "valid"], [[7680, 7680], "mapped", [7681]], [[7681, 7681], "valid"], [[7682, 7682], "mapped", [7683]], [[7683, 7683], "valid"], [[7684, 7684], "mapped", [7685]], [[7685, 7685], "valid"], [[7686, 7686], "mapped", [7687]], [[7687, 7687], "valid"], [[7688, 7688], "mapped", [7689]], [[7689, 7689], "valid"], [[7690, 7690], "mapped", [7691]], [[7691, 7691], "valid"], [[7692, 7692], "mapped", [7693]], [[7693, 7693], "valid"], [[7694, 7694], "mapped", [7695]], [[7695, 7695], "valid"], [[7696, 7696], "mapped", [7697]], [[7697, 7697], "valid"], [[7698, 7698], "mapped", [7699]], [[7699, 7699], "valid"], [[7700, 7700], "mapped", [7701]], [[7701, 7701], "valid"], [[7702, 7702], "mapped", [7703]], [[7703, 7703], "valid"], [[7704, 7704], "mapped", [7705]], [[7705, 7705], "valid"], [[7706, 7706], "mapped", [7707]], [[7707, 7707], "valid"], [[7708, 7708], "mapped", [7709]], [[7709, 7709], "valid"], [[7710, 7710], "mapped", [7711]], [[7711, 7711], "valid"], [[7712, 7712], "mapped", [7713]], [[7713, 7713], "valid"], [[7714, 7714], "mapped", [7715]], [[7715, 7715], "valid"], [[7716, 7716], "mapped", [7717]], [[7717, 7717], "valid"], [[7718, 7718], "mapped", [7719]], [[7719, 7719], "valid"], [[7720, 7720], "mapped", [7721]], [[7721, 7721], "valid"], [[7722, 7722], "mapped", [7723]], [[7723, 7723], "valid"], [[7724, 7724], "mapped", [7725]], [[7725, 7725], "valid"], [[7726, 7726], "mapped", [7727]], [[7727, 7727], "valid"], [[7728, 7728], "mapped", [7729]], [[7729, 7729], "valid"], [[7730, 7730], "mapped", [7731]], [[7731, 7731], "valid"], [[7732, 7732], "mapped", [7733]], [[7733, 7733], "valid"], [[7734, 7734], "mapped", [7735]], [[7735, 7735], "valid"], [[7736, 7736], "mapped", [7737]], [[7737, 7737], "valid"], [[7738, 7738], "mapped", [7739]], [[7739, 7739], "valid"], [[7740, 7740], "mapped", [7741]], [[7741, 7741], "valid"], [[7742, 7742], "mapped", [7743]], [[7743, 7743], "valid"], [[7744, 7744], "mapped", [7745]], [[7745, 7745], "valid"], [[7746, 7746], "mapped", [7747]], [[7747, 7747], "valid"], [[7748, 7748], "mapped", [7749]], [[7749, 7749], "valid"], [[7750, 7750], "mapped", [7751]], [[7751, 7751], "valid"], [[7752, 7752], "mapped", [7753]], [[7753, 7753], "valid"], [[7754, 7754], "mapped", [7755]], [[7755, 7755], "valid"], [[7756, 7756], "mapped", [7757]], [[7757, 7757], "valid"], [[7758, 7758], "mapped", [7759]], [[7759, 7759], "valid"], [[7760, 7760], "mapped", [7761]], [[7761, 7761], "valid"], [[7762, 7762], "mapped", [7763]], [[7763, 7763], "valid"], [[7764, 7764], "mapped", [7765]], [[7765, 7765], "valid"], [[7766, 7766], "mapped", [7767]], [[7767, 7767], "valid"], [[7768, 7768], "mapped", [7769]], [[7769, 7769], "valid"], [[7770, 7770], "mapped", [7771]], [[7771, 7771], "valid"], [[7772, 7772], "mapped", [7773]], [[7773, 7773], "valid"], [[7774, 7774], "mapped", [7775]], [[7775, 7775], "valid"], [[7776, 7776], "mapped", [7777]], [[7777, 7777], "valid"], [[7778, 7778], "mapped", [7779]], [[7779, 7779], "valid"], [[7780, 7780], "mapped", [7781]], [[7781, 7781], "valid"], [[7782, 7782], "mapped", [7783]], [[7783, 7783], "valid"], [[7784, 7784], "mapped", [7785]], [[7785, 7785], "valid"], [[7786, 7786], "mapped", [7787]], [[7787, 7787], "valid"], [[7788, 7788], "mapped", [7789]], [[7789, 7789], "valid"], [[7790, 7790], "mapped", [7791]], [[7791, 7791], "valid"], [[7792, 7792], "mapped", [7793]], [[7793, 7793], "valid"], [[7794, 7794], "mapped", [7795]], [[7795, 7795], "valid"], [[7796, 7796], "mapped", [7797]], [[7797, 7797], "valid"], [[7798, 7798], "mapped", [7799]], [[7799, 7799], "valid"], [[7800, 7800], "mapped", [7801]], [[7801, 7801], "valid"], [[7802, 7802], "mapped", [7803]], [[7803, 7803], "valid"], [[7804, 7804], "mapped", [7805]], [[7805, 7805], "valid"], [[7806, 7806], "mapped", [7807]], [[7807, 7807], "valid"], [[7808, 7808], "mapped", [7809]], [[7809, 7809], "valid"], [[7810, 7810], "mapped", [7811]], [[7811, 7811], "valid"], [[7812, 7812], "mapped", [7813]], [[7813, 7813], "valid"], [[7814, 7814], "mapped", [7815]], [[7815, 7815], "valid"], [[7816, 7816], "mapped", [7817]], [[7817, 7817], "valid"], [[7818, 7818], "mapped", [7819]], [[7819, 7819], "valid"], [[7820, 7820], "mapped", [7821]], [[7821, 7821], "valid"], [[7822, 7822], "mapped", [7823]], [[7823, 7823], "valid"], [[7824, 7824], "mapped", [7825]], [[7825, 7825], "valid"], [[7826, 7826], "mapped", [7827]], [[7827, 7827], "valid"], [[7828, 7828], "mapped", [7829]], [[7829, 7833], "valid"], [[7834, 7834], "mapped", [97, 702]], [[7835, 7835], "mapped", [7777]], [[7836, 7837], "valid"], [[7838, 7838], "mapped", [115, 115]], [[7839, 7839], "valid"], [[7840, 7840], "mapped", [7841]], [[7841, 7841], "valid"], [[7842, 7842], "mapped", [7843]], [[7843, 7843], "valid"], [[7844, 7844], "mapped", [7845]], [[7845, 7845], "valid"], [[7846, 7846], "mapped", [7847]], [[7847, 7847], "valid"], [[7848, 7848], "mapped", [7849]], [[7849, 7849], "valid"], [[7850, 7850], "mapped", [7851]], [[7851, 7851], "valid"], [[7852, 7852], "mapped", [7853]], [[7853, 7853], "valid"], [[7854, 7854], "mapped", [7855]], [[7855, 7855], "valid"], [[7856, 7856], "mapped", [7857]], [[7857, 7857], "valid"], [[7858, 7858], "mapped", [7859]], [[7859, 7859], "valid"], [[7860, 7860], "mapped", [7861]], [[7861, 7861], "valid"], [[7862, 7862], "mapped", [7863]], [[7863, 7863], "valid"], [[7864, 7864], "mapped", [7865]], [[7865, 7865], "valid"], [[7866, 7866], "mapped", [7867]], [[7867, 7867], "valid"], [[7868, 7868], "mapped", [7869]], [[7869, 7869], "valid"], [[7870, 7870], "mapped", [7871]], [[7871, 7871], "valid"], [[7872, 7872], "mapped", [7873]], [[7873, 7873], "valid"], [[7874, 7874], "mapped", [7875]], [[7875, 7875], "valid"], [[7876, 7876], "mapped", [7877]], [[7877, 7877], "valid"], [[7878, 7878], "mapped", [7879]], [[7879, 7879], "valid"], [[7880, 7880], "mapped", [7881]], [[7881, 7881], "valid"], [[7882, 7882], "mapped", [7883]], [[7883, 7883], "valid"], [[7884, 7884], "mapped", [7885]], [[7885, 7885], "valid"], [[7886, 7886], "mapped", [7887]], [[7887, 7887], "valid"], [[7888, 7888], "mapped", [7889]], [[7889, 7889], "valid"], [[7890, 7890], "mapped", [7891]], [[7891, 7891], "valid"], [[7892, 7892], "mapped", [7893]], [[7893, 7893], "valid"], [[7894, 7894], "mapped", [7895]], [[7895, 7895], "valid"], [[7896, 7896], "mapped", [7897]], [[7897, 7897], "valid"], [[7898, 7898], "mapped", [7899]], [[7899, 7899], "valid"], [[7900, 7900], "mapped", [7901]], [[7901, 7901], "valid"], [[7902, 7902], "mapped", [7903]], [[7903, 7903], "valid"], [[7904, 7904], "mapped", [7905]], [[7905, 7905], "valid"], [[7906, 7906], "mapped", [7907]], [[7907, 7907], "valid"], [[7908, 7908], "mapped", [7909]], [[7909, 7909], "valid"], [[7910, 7910], "mapped", [7911]], [[7911, 7911], "valid"], [[7912, 7912], "mapped", [7913]], [[7913, 7913], "valid"], [[7914, 7914], "mapped", [7915]], [[7915, 7915], "valid"], [[7916, 7916], "mapped", [7917]], [[7917, 7917], "valid"], [[7918, 7918], "mapped", [7919]], [[7919, 7919], "valid"], [[7920, 7920], "mapped", [7921]], [[7921, 7921], "valid"], [[7922, 7922], "mapped", [7923]], [[7923, 7923], "valid"], [[7924, 7924], "mapped", [7925]], [[7925, 7925], "valid"], [[7926, 7926], "mapped", [7927]], [[7927, 7927], "valid"], [[7928, 7928], "mapped", [7929]], [[7929, 7929], "valid"], [[7930, 7930], "mapped", [7931]], [[7931, 7931], "valid"], [[7932, 7932], "mapped", [7933]], [[7933, 7933], "valid"], [[7934, 7934], "mapped", [7935]], [[7935, 7935], "valid"], [[7936, 7943], "valid"], [[7944, 7944], "mapped", [7936]], [[7945, 7945], "mapped", [7937]], [[7946, 7946], "mapped", [7938]], [[7947, 7947], "mapped", [7939]], [[7948, 7948], "mapped", [7940]], [[7949, 7949], "mapped", [7941]], [[7950, 7950], "mapped", [7942]], [[7951, 7951], "mapped", [7943]], [[7952, 7957], "valid"], [[7958, 7959], "disallowed"], [[7960, 7960], "mapped", [7952]], [[7961, 7961], "mapped", [7953]], [[7962, 7962], "mapped", [7954]], [[7963, 7963], "mapped", [7955]], [[7964, 7964], "mapped", [7956]], [[7965, 7965], "mapped", [7957]], [[7966, 7967], "disallowed"], [[7968, 7975], "valid"], [[7976, 7976], "mapped", [7968]], [[7977, 7977], "mapped", [7969]], [[7978, 7978], "mapped", [7970]], [[7979, 7979], "mapped", [7971]], [[7980, 7980], "mapped", [7972]], [[7981, 7981], "mapped", [7973]], [[7982, 7982], "mapped", [7974]], [[7983, 7983], "mapped", [7975]], [[7984, 7991], "valid"], [[7992, 7992], "mapped", [7984]], [[7993, 7993], "mapped", [7985]], [[7994, 7994], "mapped", [7986]], [[7995, 7995], "mapped", [7987]], [[7996, 7996], "mapped", [7988]], [[7997, 7997], "mapped", [7989]], [[7998, 7998], "mapped", [7990]], [[7999, 7999], "mapped", [7991]], [[8e3, 8005], "valid"], [[8006, 8007], "disallowed"], [[8008, 8008], "mapped", [8e3]], [[8009, 8009], "mapped", [8001]], [[8010, 8010], "mapped", [8002]], [[8011, 8011], "mapped", [8003]], [[8012, 8012], "mapped", [8004]], [[8013, 8013], "mapped", [8005]], [[8014, 8015], "disallowed"], [[8016, 8023], "valid"], [[8024, 8024], "disallowed"], [[8025, 8025], "mapped", [8017]], [[8026, 8026], "disallowed"], [[8027, 8027], "mapped", [8019]], [[8028, 8028], "disallowed"], [[8029, 8029], "mapped", [8021]], [[8030, 8030], "disallowed"], [[8031, 8031], "mapped", [8023]], [[8032, 8039], "valid"], [[8040, 8040], "mapped", [8032]], [[8041, 8041], "mapped", [8033]], [[8042, 8042], "mapped", [8034]], [[8043, 8043], "mapped", [8035]], [[8044, 8044], "mapped", [8036]], [[8045, 8045], "mapped", [8037]], [[8046, 8046], "mapped", [8038]], [[8047, 8047], "mapped", [8039]], [[8048, 8048], "valid"], [[8049, 8049], "mapped", [940]], [[8050, 8050], "valid"], [[8051, 8051], "mapped", [941]], [[8052, 8052], "valid"], [[8053, 8053], "mapped", [942]], [[8054, 8054], "valid"], [[8055, 8055], "mapped", [943]], [[8056, 8056], "valid"], [[8057, 8057], "mapped", [972]], [[8058, 8058], "valid"], [[8059, 8059], "mapped", [973]], [[8060, 8060], "valid"], [[8061, 8061], "mapped", [974]], [[8062, 8063], "disallowed"], [[8064, 8064], "mapped", [7936, 953]], [[8065, 8065], "mapped", [7937, 953]], [[8066, 8066], "mapped", [7938, 953]], [[8067, 8067], "mapped", [7939, 953]], [[8068, 8068], "mapped", [7940, 953]], [[8069, 8069], "mapped", [7941, 953]], [[8070, 8070], "mapped", [7942, 953]], [[8071, 8071], "mapped", [7943, 953]], [[8072, 8072], "mapped", [7936, 953]], [[8073, 8073], "mapped", [7937, 953]], [[8074, 8074], "mapped", [7938, 953]], [[8075, 8075], "mapped", [7939, 953]], [[8076, 8076], "mapped", [7940, 953]], [[8077, 8077], "mapped", [7941, 953]], [[8078, 8078], "mapped", [7942, 953]], [[8079, 8079], "mapped", [7943, 953]], [[8080, 8080], "mapped", [7968, 953]], [[8081, 8081], "mapped", [7969, 953]], [[8082, 8082], "mapped", [7970, 953]], [[8083, 8083], "mapped", [7971, 953]], [[8084, 8084], "mapped", [7972, 953]], [[8085, 8085], "mapped", [7973, 953]], [[8086, 8086], "mapped", [7974, 953]], [[8087, 8087], "mapped", [7975, 953]], [[8088, 8088], "mapped", [7968, 953]], [[8089, 8089], "mapped", [7969, 953]], [[8090, 8090], "mapped", [7970, 953]], [[8091, 8091], "mapped", [7971, 953]], [[8092, 8092], "mapped", [7972, 953]], [[8093, 8093], "mapped", [7973, 953]], [[8094, 8094], "mapped", [7974, 953]], [[8095, 8095], "mapped", [7975, 953]], [[8096, 8096], "mapped", [8032, 953]], [[8097, 8097], "mapped", [8033, 953]], [[8098, 8098], "mapped", [8034, 953]], [[8099, 8099], "mapped", [8035, 953]], [[8100, 8100], "mapped", [8036, 953]], [[8101, 8101], "mapped", [8037, 953]], [[8102, 8102], "mapped", [8038, 953]], [[8103, 8103], "mapped", [8039, 953]], [[8104, 8104], "mapped", [8032, 953]], [[8105, 8105], "mapped", [8033, 953]], [[8106, 8106], "mapped", [8034, 953]], [[8107, 8107], "mapped", [8035, 953]], [[8108, 8108], "mapped", [8036, 953]], [[8109, 8109], "mapped", [8037, 953]], [[8110, 8110], "mapped", [8038, 953]], [[8111, 8111], "mapped", [8039, 953]], [[8112, 8113], "valid"], [[8114, 8114], "mapped", [8048, 953]], [[8115, 8115], "mapped", [945, 953]], [[8116, 8116], "mapped", [940, 953]], [[8117, 8117], "disallowed"], [[8118, 8118], "valid"], [[8119, 8119], "mapped", [8118, 953]], [[8120, 8120], "mapped", [8112]], [[8121, 8121], "mapped", [8113]], [[8122, 8122], "mapped", [8048]], [[8123, 8123], "mapped", [940]], [[8124, 8124], "mapped", [945, 953]], [[8125, 8125], "disallowed_STD3_mapped", [32, 787]], [[8126, 8126], "mapped", [953]], [[8127, 8127], "disallowed_STD3_mapped", [32, 787]], [[8128, 8128], "disallowed_STD3_mapped", [32, 834]], [[8129, 8129], "disallowed_STD3_mapped", [32, 776, 834]], [[8130, 8130], "mapped", [8052, 953]], [[8131, 8131], "mapped", [951, 953]], [[8132, 8132], "mapped", [942, 953]], [[8133, 8133], "disallowed"], [[8134, 8134], "valid"], [[8135, 8135], "mapped", [8134, 953]], [[8136, 8136], "mapped", [8050]], [[8137, 8137], "mapped", [941]], [[8138, 8138], "mapped", [8052]], [[8139, 8139], "mapped", [942]], [[8140, 8140], "mapped", [951, 953]], [[8141, 8141], "disallowed_STD3_mapped", [32, 787, 768]], [[8142, 8142], "disallowed_STD3_mapped", [32, 787, 769]], [[8143, 8143], "disallowed_STD3_mapped", [32, 787, 834]], [[8144, 8146], "valid"], [[8147, 8147], "mapped", [912]], [[8148, 8149], "disallowed"], [[8150, 8151], "valid"], [[8152, 8152], "mapped", [8144]], [[8153, 8153], "mapped", [8145]], [[8154, 8154], "mapped", [8054]], [[8155, 8155], "mapped", [943]], [[8156, 8156], "disallowed"], [[8157, 8157], "disallowed_STD3_mapped", [32, 788, 768]], [[8158, 8158], "disallowed_STD3_mapped", [32, 788, 769]], [[8159, 8159], "disallowed_STD3_mapped", [32, 788, 834]], [[8160, 8162], "valid"], [[8163, 8163], "mapped", [944]], [[8164, 8167], "valid"], [[8168, 8168], "mapped", [8160]], [[8169, 8169], "mapped", [8161]], [[8170, 8170], "mapped", [8058]], [[8171, 8171], "mapped", [973]], [[8172, 8172], "mapped", [8165]], [[8173, 8173], "disallowed_STD3_mapped", [32, 776, 768]], [[8174, 8174], "disallowed_STD3_mapped", [32, 776, 769]], [[8175, 8175], "disallowed_STD3_mapped", [96]], [[8176, 8177], "disallowed"], [[8178, 8178], "mapped", [8060, 953]], [[8179, 8179], "mapped", [969, 953]], [[8180, 8180], "mapped", [974, 953]], [[8181, 8181], "disallowed"], [[8182, 8182], "valid"], [[8183, 8183], "mapped", [8182, 953]], [[8184, 8184], "mapped", [8056]], [[8185, 8185], "mapped", [972]], [[8186, 8186], "mapped", [8060]], [[8187, 8187], "mapped", [974]], [[8188, 8188], "mapped", [969, 953]], [[8189, 8189], "disallowed_STD3_mapped", [32, 769]], [[8190, 8190], "disallowed_STD3_mapped", [32, 788]], [[8191, 8191], "disallowed"], [[8192, 8202], "disallowed_STD3_mapped", [32]], [[8203, 8203], "ignored"], [[8204, 8205], "deviation", []], [[8206, 8207], "disallowed"], [[8208, 8208], "valid", [], "NV8"], [[8209, 8209], "mapped", [8208]], [[8210, 8214], "valid", [], "NV8"], [[8215, 8215], "disallowed_STD3_mapped", [32, 819]], [[8216, 8227], "valid", [], "NV8"], [[8228, 8230], "disallowed"], [[8231, 8231], "valid", [], "NV8"], [[8232, 8238], "disallowed"], [[8239, 8239], "disallowed_STD3_mapped", [32]], [[8240, 8242], "valid", [], "NV8"], [[8243, 8243], "mapped", [8242, 8242]], [[8244, 8244], "mapped", [8242, 8242, 8242]], [[8245, 8245], "valid", [], "NV8"], [[8246, 8246], "mapped", [8245, 8245]], [[8247, 8247], "mapped", [8245, 8245, 8245]], [[8248, 8251], "valid", [], "NV8"], [[8252, 8252], "disallowed_STD3_mapped", [33, 33]], [[8253, 8253], "valid", [], "NV8"], [[8254, 8254], "disallowed_STD3_mapped", [32, 773]], [[8255, 8262], "valid", [], "NV8"], [[8263, 8263], "disallowed_STD3_mapped", [63, 63]], [[8264, 8264], "disallowed_STD3_mapped", [63, 33]], [[8265, 8265], "disallowed_STD3_mapped", [33, 63]], [[8266, 8269], "valid", [], "NV8"], [[8270, 8274], "valid", [], "NV8"], [[8275, 8276], "valid", [], "NV8"], [[8277, 8278], "valid", [], "NV8"], [[8279, 8279], "mapped", [8242, 8242, 8242, 8242]], [[8280, 8286], "valid", [], "NV8"], [[8287, 8287], "disallowed_STD3_mapped", [32]], [[8288, 8288], "ignored"], [[8289, 8291], "disallowed"], [[8292, 8292], "ignored"], [[8293, 8293], "disallowed"], [[8294, 8297], "disallowed"], [[8298, 8303], "disallowed"], [[8304, 8304], "mapped", [48]], [[8305, 8305], "mapped", [105]], [[8306, 8307], "disallowed"], [[8308, 8308], "mapped", [52]], [[8309, 8309], "mapped", [53]], [[8310, 8310], "mapped", [54]], [[8311, 8311], "mapped", [55]], [[8312, 8312], "mapped", [56]], [[8313, 8313], "mapped", [57]], [[8314, 8314], "disallowed_STD3_mapped", [43]], [[8315, 8315], "mapped", [8722]], [[8316, 8316], "disallowed_STD3_mapped", [61]], [[8317, 8317], "disallowed_STD3_mapped", [40]], [[8318, 8318], "disallowed_STD3_mapped", [41]], [[8319, 8319], "mapped", [110]], [[8320, 8320], "mapped", [48]], [[8321, 8321], "mapped", [49]], [[8322, 8322], "mapped", [50]], [[8323, 8323], "mapped", [51]], [[8324, 8324], "mapped", [52]], [[8325, 8325], "mapped", [53]], [[8326, 8326], "mapped", [54]], [[8327, 8327], "mapped", [55]], [[8328, 8328], "mapped", [56]], [[8329, 8329], "mapped", [57]], [[8330, 8330], "disallowed_STD3_mapped", [43]], [[8331, 8331], "mapped", [8722]], [[8332, 8332], "disallowed_STD3_mapped", [61]], [[8333, 8333], "disallowed_STD3_mapped", [40]], [[8334, 8334], "disallowed_STD3_mapped", [41]], [[8335, 8335], "disallowed"], [[8336, 8336], "mapped", [97]], [[8337, 8337], "mapped", [101]], [[8338, 8338], "mapped", [111]], [[8339, 8339], "mapped", [120]], [[8340, 8340], "mapped", [601]], [[8341, 8341], "mapped", [104]], [[8342, 8342], "mapped", [107]], [[8343, 8343], "mapped", [108]], [[8344, 8344], "mapped", [109]], [[8345, 8345], "mapped", [110]], [[8346, 8346], "mapped", [112]], [[8347, 8347], "mapped", [115]], [[8348, 8348], "mapped", [116]], [[8349, 8351], "disallowed"], [[8352, 8359], "valid", [], "NV8"], [[8360, 8360], "mapped", [114, 115]], [[8361, 8362], "valid", [], "NV8"], [[8363, 8363], "valid", [], "NV8"], [[8364, 8364], "valid", [], "NV8"], [[8365, 8367], "valid", [], "NV8"], [[8368, 8369], "valid", [], "NV8"], [[8370, 8373], "valid", [], "NV8"], [[8374, 8376], "valid", [], "NV8"], [[8377, 8377], "valid", [], "NV8"], [[8378, 8378], "valid", [], "NV8"], [[8379, 8381], "valid", [], "NV8"], [[8382, 8382], "valid", [], "NV8"], [[8383, 8399], "disallowed"], [[8400, 8417], "valid", [], "NV8"], [[8418, 8419], "valid", [], "NV8"], [[8420, 8426], "valid", [], "NV8"], [[8427, 8427], "valid", [], "NV8"], [[8428, 8431], "valid", [], "NV8"], [[8432, 8432], "valid", [], "NV8"], [[8433, 8447], "disallowed"], [[8448, 8448], "disallowed_STD3_mapped", [97, 47, 99]], [[8449, 8449], "disallowed_STD3_mapped", [97, 47, 115]], [[8450, 8450], "mapped", [99]], [[8451, 8451], "mapped", [176, 99]], [[8452, 8452], "valid", [], "NV8"], [[8453, 8453], "disallowed_STD3_mapped", [99, 47, 111]], [[8454, 8454], "disallowed_STD3_mapped", [99, 47, 117]], [[8455, 8455], "mapped", [603]], [[8456, 8456], "valid", [], "NV8"], [[8457, 8457], "mapped", [176, 102]], [[8458, 8458], "mapped", [103]], [[8459, 8462], "mapped", [104]], [[8463, 8463], "mapped", [295]], [[8464, 8465], "mapped", [105]], [[8466, 8467], "mapped", [108]], [[8468, 8468], "valid", [], "NV8"], [[8469, 8469], "mapped", [110]], [[8470, 8470], "mapped", [110, 111]], [[8471, 8472], "valid", [], "NV8"], [[8473, 8473], "mapped", [112]], [[8474, 8474], "mapped", [113]], [[8475, 8477], "mapped", [114]], [[8478, 8479], "valid", [], "NV8"], [[8480, 8480], "mapped", [115, 109]], [[8481, 8481], "mapped", [116, 101, 108]], [[8482, 8482], "mapped", [116, 109]], [[8483, 8483], "valid", [], "NV8"], [[8484, 8484], "mapped", [122]], [[8485, 8485], "valid", [], "NV8"], [[8486, 8486], "mapped", [969]], [[8487, 8487], "valid", [], "NV8"], [[8488, 8488], "mapped", [122]], [[8489, 8489], "valid", [], "NV8"], [[8490, 8490], "mapped", [107]], [[8491, 8491], "mapped", [229]], [[8492, 8492], "mapped", [98]], [[8493, 8493], "mapped", [99]], [[8494, 8494], "valid", [], "NV8"], [[8495, 8496], "mapped", [101]], [[8497, 8497], "mapped", [102]], [[8498, 8498], "disallowed"], [[8499, 8499], "mapped", [109]], [[8500, 8500], "mapped", [111]], [[8501, 8501], "mapped", [1488]], [[8502, 8502], "mapped", [1489]], [[8503, 8503], "mapped", [1490]], [[8504, 8504], "mapped", [1491]], [[8505, 8505], "mapped", [105]], [[8506, 8506], "valid", [], "NV8"], [[8507, 8507], "mapped", [102, 97, 120]], [[8508, 8508], "mapped", [960]], [[8509, 8510], "mapped", [947]], [[8511, 8511], "mapped", [960]], [[8512, 8512], "mapped", [8721]], [[8513, 8516], "valid", [], "NV8"], [[8517, 8518], "mapped", [100]], [[8519, 8519], "mapped", [101]], [[8520, 8520], "mapped", [105]], [[8521, 8521], "mapped", [106]], [[8522, 8523], "valid", [], "NV8"], [[8524, 8524], "valid", [], "NV8"], [[8525, 8525], "valid", [], "NV8"], [[8526, 8526], "valid"], [[8527, 8527], "valid", [], "NV8"], [[8528, 8528], "mapped", [49, 8260, 55]], [[8529, 8529], "mapped", [49, 8260, 57]], [[8530, 8530], "mapped", [49, 8260, 49, 48]], [[8531, 8531], "mapped", [49, 8260, 51]], [[8532, 8532], "mapped", [50, 8260, 51]], [[8533, 8533], "mapped", [49, 8260, 53]], [[8534, 8534], "mapped", [50, 8260, 53]], [[8535, 8535], "mapped", [51, 8260, 53]], [[8536, 8536], "mapped", [52, 8260, 53]], [[8537, 8537], "mapped", [49, 8260, 54]], [[8538, 8538], "mapped", [53, 8260, 54]], [[8539, 8539], "mapped", [49, 8260, 56]], [[8540, 8540], "mapped", [51, 8260, 56]], [[8541, 8541], "mapped", [53, 8260, 56]], [[8542, 8542], "mapped", [55, 8260, 56]], [[8543, 8543], "mapped", [49, 8260]], [[8544, 8544], "mapped", [105]], [[8545, 8545], "mapped", [105, 105]], [[8546, 8546], "mapped", [105, 105, 105]], [[8547, 8547], "mapped", [105, 118]], [[8548, 8548], "mapped", [118]], [[8549, 8549], "mapped", [118, 105]], [[8550, 8550], "mapped", [118, 105, 105]], [[8551, 8551], "mapped", [118, 105, 105, 105]], [[8552, 8552], "mapped", [105, 120]], [[8553, 8553], "mapped", [120]], [[8554, 8554], "mapped", [120, 105]], [[8555, 8555], "mapped", [120, 105, 105]], [[8556, 8556], "mapped", [108]], [[8557, 8557], "mapped", [99]], [[8558, 8558], "mapped", [100]], [[8559, 8559], "mapped", [109]], [[8560, 8560], "mapped", [105]], [[8561, 8561], "mapped", [105, 105]], [[8562, 8562], "mapped", [105, 105, 105]], [[8563, 8563], "mapped", [105, 118]], [[8564, 8564], "mapped", [118]], [[8565, 8565], "mapped", [118, 105]], [[8566, 8566], "mapped", [118, 105, 105]], [[8567, 8567], "mapped", [118, 105, 105, 105]], [[8568, 8568], "mapped", [105, 120]], [[8569, 8569], "mapped", [120]], [[8570, 8570], "mapped", [120, 105]], [[8571, 8571], "mapped", [120, 105, 105]], [[8572, 8572], "mapped", [108]], [[8573, 8573], "mapped", [99]], [[8574, 8574], "mapped", [100]], [[8575, 8575], "mapped", [109]], [[8576, 8578], "valid", [], "NV8"], [[8579, 8579], "disallowed"], [[8580, 8580], "valid"], [[8581, 8584], "valid", [], "NV8"], [[8585, 8585], "mapped", [48, 8260, 51]], [[8586, 8587], "valid", [], "NV8"], [[8588, 8591], "disallowed"], [[8592, 8682], "valid", [], "NV8"], [[8683, 8691], "valid", [], "NV8"], [[8692, 8703], "valid", [], "NV8"], [[8704, 8747], "valid", [], "NV8"], [[8748, 8748], "mapped", [8747, 8747]], [[8749, 8749], "mapped", [8747, 8747, 8747]], [[8750, 8750], "valid", [], "NV8"], [[8751, 8751], "mapped", [8750, 8750]], [[8752, 8752], "mapped", [8750, 8750, 8750]], [[8753, 8799], "valid", [], "NV8"], [[8800, 8800], "disallowed_STD3_valid"], [[8801, 8813], "valid", [], "NV8"], [[8814, 8815], "disallowed_STD3_valid"], [[8816, 8945], "valid", [], "NV8"], [[8946, 8959], "valid", [], "NV8"], [[8960, 8960], "valid", [], "NV8"], [[8961, 8961], "valid", [], "NV8"], [[8962, 9e3], "valid", [], "NV8"], [[9001, 9001], "mapped", [12296]], [[9002, 9002], "mapped", [12297]], [[9003, 9082], "valid", [], "NV8"], [[9083, 9083], "valid", [], "NV8"], [[9084, 9084], "valid", [], "NV8"], [[9085, 9114], "valid", [], "NV8"], [[9115, 9166], "valid", [], "NV8"], [[9167, 9168], "valid", [], "NV8"], [[9169, 9179], "valid", [], "NV8"], [[9180, 9191], "valid", [], "NV8"], [[9192, 9192], "valid", [], "NV8"], [[9193, 9203], "valid", [], "NV8"], [[9204, 9210], "valid", [], "NV8"], [[9211, 9215], "disallowed"], [[9216, 9252], "valid", [], "NV8"], [[9253, 9254], "valid", [], "NV8"], [[9255, 9279], "disallowed"], [[9280, 9290], "valid", [], "NV8"], [[9291, 9311], "disallowed"], [[9312, 9312], "mapped", [49]], [[9313, 9313], "mapped", [50]], [[9314, 9314], "mapped", [51]], [[9315, 9315], "mapped", [52]], [[9316, 9316], "mapped", [53]], [[9317, 9317], "mapped", [54]], [[9318, 9318], "mapped", [55]], [[9319, 9319], "mapped", [56]], [[9320, 9320], "mapped", [57]], [[9321, 9321], "mapped", [49, 48]], [[9322, 9322], "mapped", [49, 49]], [[9323, 9323], "mapped", [49, 50]], [[9324, 9324], "mapped", [49, 51]], [[9325, 9325], "mapped", [49, 52]], [[9326, 9326], "mapped", [49, 53]], [[9327, 9327], "mapped", [49, 54]], [[9328, 9328], "mapped", [49, 55]], [[9329, 9329], "mapped", [49, 56]], [[9330, 9330], "mapped", [49, 57]], [[9331, 9331], "mapped", [50, 48]], [[9332, 9332], "disallowed_STD3_mapped", [40, 49, 41]], [[9333, 9333], "disallowed_STD3_mapped", [40, 50, 41]], [[9334, 9334], "disallowed_STD3_mapped", [40, 51, 41]], [[9335, 9335], "disallowed_STD3_mapped", [40, 52, 41]], [[9336, 9336], "disallowed_STD3_mapped", [40, 53, 41]], [[9337, 9337], "disallowed_STD3_mapped", [40, 54, 41]], [[9338, 9338], "disallowed_STD3_mapped", [40, 55, 41]], [[9339, 9339], "disallowed_STD3_mapped", [40, 56, 41]], [[9340, 9340], "disallowed_STD3_mapped", [40, 57, 41]], [[9341, 9341], "disallowed_STD3_mapped", [40, 49, 48, 41]], [[9342, 9342], "disallowed_STD3_mapped", [40, 49, 49, 41]], [[9343, 9343], "disallowed_STD3_mapped", [40, 49, 50, 41]], [[9344, 9344], "disallowed_STD3_mapped", [40, 49, 51, 41]], [[9345, 9345], "disallowed_STD3_mapped", [40, 49, 52, 41]], [[9346, 9346], "disallowed_STD3_mapped", [40, 49, 53, 41]], [[9347, 9347], "disallowed_STD3_mapped", [40, 49, 54, 41]], [[9348, 9348], "disallowed_STD3_mapped", [40, 49, 55, 41]], [[9349, 9349], "disallowed_STD3_mapped", [40, 49, 56, 41]], [[9350, 9350], "disallowed_STD3_mapped", [40, 49, 57, 41]], [[9351, 9351], "disallowed_STD3_mapped", [40, 50, 48, 41]], [[9352, 9371], "disallowed"], [[9372, 9372], "disallowed_STD3_mapped", [40, 97, 41]], [[9373, 9373], "disallowed_STD3_mapped", [40, 98, 41]], [[9374, 9374], "disallowed_STD3_mapped", [40, 99, 41]], [[9375, 9375], "disallowed_STD3_mapped", [40, 100, 41]], [[9376, 9376], "disallowed_STD3_mapped", [40, 101, 41]], [[9377, 9377], "disallowed_STD3_mapped", [40, 102, 41]], [[9378, 9378], "disallowed_STD3_mapped", [40, 103, 41]], [[9379, 9379], "disallowed_STD3_mapped", [40, 104, 41]], [[9380, 9380], "disallowed_STD3_mapped", [40, 105, 41]], [[9381, 9381], "disallowed_STD3_mapped", [40, 106, 41]], [[9382, 9382], "disallowed_STD3_mapped", [40, 107, 41]], [[9383, 9383], "disallowed_STD3_mapped", [40, 108, 41]], [[9384, 9384], "disallowed_STD3_mapped", [40, 109, 41]], [[9385, 9385], "disallowed_STD3_mapped", [40, 110, 41]], [[9386, 9386], "disallowed_STD3_mapped", [40, 111, 41]], [[9387, 9387], "disallowed_STD3_mapped", [40, 112, 41]], [[9388, 9388], "disallowed_STD3_mapped", [40, 113, 41]], [[9389, 9389], "disallowed_STD3_mapped", [40, 114, 41]], [[9390, 9390], "disallowed_STD3_mapped", [40, 115, 41]], [[9391, 9391], "disallowed_STD3_mapped", [40, 116, 41]], [[9392, 9392], "disallowed_STD3_mapped", [40, 117, 41]], [[9393, 9393], "disallowed_STD3_mapped", [40, 118, 41]], [[9394, 9394], "disallowed_STD3_mapped", [40, 119, 41]], [[9395, 9395], "disallowed_STD3_mapped", [40, 120, 41]], [[9396, 9396], "disallowed_STD3_mapped", [40, 121, 41]], [[9397, 9397], "disallowed_STD3_mapped", [40, 122, 41]], [[9398, 9398], "mapped", [97]], [[9399, 9399], "mapped", [98]], [[9400, 9400], "mapped", [99]], [[9401, 9401], "mapped", [100]], [[9402, 9402], "mapped", [101]], [[9403, 9403], "mapped", [102]], [[9404, 9404], "mapped", [103]], [[9405, 9405], "mapped", [104]], [[9406, 9406], "mapped", [105]], [[9407, 9407], "mapped", [106]], [[9408, 9408], "mapped", [107]], [[9409, 9409], "mapped", [108]], [[9410, 9410], "mapped", [109]], [[9411, 9411], "mapped", [110]], [[9412, 9412], "mapped", [111]], [[9413, 9413], "mapped", [112]], [[9414, 9414], "mapped", [113]], [[9415, 9415], "mapped", [114]], [[9416, 9416], "mapped", [115]], [[9417, 9417], "mapped", [116]], [[9418, 9418], "mapped", [117]], [[9419, 9419], "mapped", [118]], [[9420, 9420], "mapped", [119]], [[9421, 9421], "mapped", [120]], [[9422, 9422], "mapped", [121]], [[9423, 9423], "mapped", [122]], [[9424, 9424], "mapped", [97]], [[9425, 9425], "mapped", [98]], [[9426, 9426], "mapped", [99]], [[9427, 9427], "mapped", [100]], [[9428, 9428], "mapped", [101]], [[9429, 9429], "mapped", [102]], [[9430, 9430], "mapped", [103]], [[9431, 9431], "mapped", [104]], [[9432, 9432], "mapped", [105]], [[9433, 9433], "mapped", [106]], [[9434, 9434], "mapped", [107]], [[9435, 9435], "mapped", [108]], [[9436, 9436], "mapped", [109]], [[9437, 9437], "mapped", [110]], [[9438, 9438], "mapped", [111]], [[9439, 9439], "mapped", [112]], [[9440, 9440], "mapped", [113]], [[9441, 9441], "mapped", [114]], [[9442, 9442], "mapped", [115]], [[9443, 9443], "mapped", [116]], [[9444, 9444], "mapped", [117]], [[9445, 9445], "mapped", [118]], [[9446, 9446], "mapped", [119]], [[9447, 9447], "mapped", [120]], [[9448, 9448], "mapped", [121]], [[9449, 9449], "mapped", [122]], [[9450, 9450], "mapped", [48]], [[9451, 9470], "valid", [], "NV8"], [[9471, 9471], "valid", [], "NV8"], [[9472, 9621], "valid", [], "NV8"], [[9622, 9631], "valid", [], "NV8"], [[9632, 9711], "valid", [], "NV8"], [[9712, 9719], "valid", [], "NV8"], [[9720, 9727], "valid", [], "NV8"], [[9728, 9747], "valid", [], "NV8"], [[9748, 9749], "valid", [], "NV8"], [[9750, 9751], "valid", [], "NV8"], [[9752, 9752], "valid", [], "NV8"], [[9753, 9753], "valid", [], "NV8"], [[9754, 9839], "valid", [], "NV8"], [[9840, 9841], "valid", [], "NV8"], [[9842, 9853], "valid", [], "NV8"], [[9854, 9855], "valid", [], "NV8"], [[9856, 9865], "valid", [], "NV8"], [[9866, 9873], "valid", [], "NV8"], [[9874, 9884], "valid", [], "NV8"], [[9885, 9885], "valid", [], "NV8"], [[9886, 9887], "valid", [], "NV8"], [[9888, 9889], "valid", [], "NV8"], [[9890, 9905], "valid", [], "NV8"], [[9906, 9906], "valid", [], "NV8"], [[9907, 9916], "valid", [], "NV8"], [[9917, 9919], "valid", [], "NV8"], [[9920, 9923], "valid", [], "NV8"], [[9924, 9933], "valid", [], "NV8"], [[9934, 9934], "valid", [], "NV8"], [[9935, 9953], "valid", [], "NV8"], [[9954, 9954], "valid", [], "NV8"], [[9955, 9955], "valid", [], "NV8"], [[9956, 9959], "valid", [], "NV8"], [[9960, 9983], "valid", [], "NV8"], [[9984, 9984], "valid", [], "NV8"], [[9985, 9988], "valid", [], "NV8"], [[9989, 9989], "valid", [], "NV8"], [[9990, 9993], "valid", [], "NV8"], [[9994, 9995], "valid", [], "NV8"], [[9996, 10023], "valid", [], "NV8"], [[10024, 10024], "valid", [], "NV8"], [[10025, 10059], "valid", [], "NV8"], [[10060, 10060], "valid", [], "NV8"], [[10061, 10061], "valid", [], "NV8"], [[10062, 10062], "valid", [], "NV8"], [[10063, 10066], "valid", [], "NV8"], [[10067, 10069], "valid", [], "NV8"], [[10070, 10070], "valid", [], "NV8"], [[10071, 10071], "valid", [], "NV8"], [[10072, 10078], "valid", [], "NV8"], [[10079, 10080], "valid", [], "NV8"], [[10081, 10087], "valid", [], "NV8"], [[10088, 10101], "valid", [], "NV8"], [[10102, 10132], "valid", [], "NV8"], [[10133, 10135], "valid", [], "NV8"], [[10136, 10159], "valid", [], "NV8"], [[10160, 10160], "valid", [], "NV8"], [[10161, 10174], "valid", [], "NV8"], [[10175, 10175], "valid", [], "NV8"], [[10176, 10182], "valid", [], "NV8"], [[10183, 10186], "valid", [], "NV8"], [[10187, 10187], "valid", [], "NV8"], [[10188, 10188], "valid", [], "NV8"], [[10189, 10189], "valid", [], "NV8"], [[10190, 10191], "valid", [], "NV8"], [[10192, 10219], "valid", [], "NV8"], [[10220, 10223], "valid", [], "NV8"], [[10224, 10239], "valid", [], "NV8"], [[10240, 10495], "valid", [], "NV8"], [[10496, 10763], "valid", [], "NV8"], [[10764, 10764], "mapped", [8747, 8747, 8747, 8747]], [[10765, 10867], "valid", [], "NV8"], [[10868, 10868], "disallowed_STD3_mapped", [58, 58, 61]], [[10869, 10869], "disallowed_STD3_mapped", [61, 61]], [[10870, 10870], "disallowed_STD3_mapped", [61, 61, 61]], [[10871, 10971], "valid", [], "NV8"], [[10972, 10972], "mapped", [10973, 824]], [[10973, 11007], "valid", [], "NV8"], [[11008, 11021], "valid", [], "NV8"], [[11022, 11027], "valid", [], "NV8"], [[11028, 11034], "valid", [], "NV8"], [[11035, 11039], "valid", [], "NV8"], [[11040, 11043], "valid", [], "NV8"], [[11044, 11084], "valid", [], "NV8"], [[11085, 11087], "valid", [], "NV8"], [[11088, 11092], "valid", [], "NV8"], [[11093, 11097], "valid", [], "NV8"], [[11098, 11123], "valid", [], "NV8"], [[11124, 11125], "disallowed"], [[11126, 11157], "valid", [], "NV8"], [[11158, 11159], "disallowed"], [[11160, 11193], "valid", [], "NV8"], [[11194, 11196], "disallowed"], [[11197, 11208], "valid", [], "NV8"], [[11209, 11209], "disallowed"], [[11210, 11217], "valid", [], "NV8"], [[11218, 11243], "disallowed"], [[11244, 11247], "valid", [], "NV8"], [[11248, 11263], "disallowed"], [[11264, 11264], "mapped", [11312]], [[11265, 11265], "mapped", [11313]], [[11266, 11266], "mapped", [11314]], [[11267, 11267], "mapped", [11315]], [[11268, 11268], "mapped", [11316]], [[11269, 11269], "mapped", [11317]], [[11270, 11270], "mapped", [11318]], [[11271, 11271], "mapped", [11319]], [[11272, 11272], "mapped", [11320]], [[11273, 11273], "mapped", [11321]], [[11274, 11274], "mapped", [11322]], [[11275, 11275], "mapped", [11323]], [[11276, 11276], "mapped", [11324]], [[11277, 11277], "mapped", [11325]], [[11278, 11278], "mapped", [11326]], [[11279, 11279], "mapped", [11327]], [[11280, 11280], "mapped", [11328]], [[11281, 11281], "mapped", [11329]], [[11282, 11282], "mapped", [11330]], [[11283, 11283], "mapped", [11331]], [[11284, 11284], "mapped", [11332]], [[11285, 11285], "mapped", [11333]], [[11286, 11286], "mapped", [11334]], [[11287, 11287], "mapped", [11335]], [[11288, 11288], "mapped", [11336]], [[11289, 11289], "mapped", [11337]], [[11290, 11290], "mapped", [11338]], [[11291, 11291], "mapped", [11339]], [[11292, 11292], "mapped", [11340]], [[11293, 11293], "mapped", [11341]], [[11294, 11294], "mapped", [11342]], [[11295, 11295], "mapped", [11343]], [[11296, 11296], "mapped", [11344]], [[11297, 11297], "mapped", [11345]], [[11298, 11298], "mapped", [11346]], [[11299, 11299], "mapped", [11347]], [[11300, 11300], "mapped", [11348]], [[11301, 11301], "mapped", [11349]], [[11302, 11302], "mapped", [11350]], [[11303, 11303], "mapped", [11351]], [[11304, 11304], "mapped", [11352]], [[11305, 11305], "mapped", [11353]], [[11306, 11306], "mapped", [11354]], [[11307, 11307], "mapped", [11355]], [[11308, 11308], "mapped", [11356]], [[11309, 11309], "mapped", [11357]], [[11310, 11310], "mapped", [11358]], [[11311, 11311], "disallowed"], [[11312, 11358], "valid"], [[11359, 11359], "disallowed"], [[11360, 11360], "mapped", [11361]], [[11361, 11361], "valid"], [[11362, 11362], "mapped", [619]], [[11363, 11363], "mapped", [7549]], [[11364, 11364], "mapped", [637]], [[11365, 11366], "valid"], [[11367, 11367], "mapped", [11368]], [[11368, 11368], "valid"], [[11369, 11369], "mapped", [11370]], [[11370, 11370], "valid"], [[11371, 11371], "mapped", [11372]], [[11372, 11372], "valid"], [[11373, 11373], "mapped", [593]], [[11374, 11374], "mapped", [625]], [[11375, 11375], "mapped", [592]], [[11376, 11376], "mapped", [594]], [[11377, 11377], "valid"], [[11378, 11378], "mapped", [11379]], [[11379, 11379], "valid"], [[11380, 11380], "valid"], [[11381, 11381], "mapped", [11382]], [[11382, 11383], "valid"], [[11384, 11387], "valid"], [[11388, 11388], "mapped", [106]], [[11389, 11389], "mapped", [118]], [[11390, 11390], "mapped", [575]], [[11391, 11391], "mapped", [576]], [[11392, 11392], "mapped", [11393]], [[11393, 11393], "valid"], [[11394, 11394], "mapped", [11395]], [[11395, 11395], "valid"], [[11396, 11396], "mapped", [11397]], [[11397, 11397], "valid"], [[11398, 11398], "mapped", [11399]], [[11399, 11399], "valid"], [[11400, 11400], "mapped", [11401]], [[11401, 11401], "valid"], [[11402, 11402], "mapped", [11403]], [[11403, 11403], "valid"], [[11404, 11404], "mapped", [11405]], [[11405, 11405], "valid"], [[11406, 11406], "mapped", [11407]], [[11407, 11407], "valid"], [[11408, 11408], "mapped", [11409]], [[11409, 11409], "valid"], [[11410, 11410], "mapped", [11411]], [[11411, 11411], "valid"], [[11412, 11412], "mapped", [11413]], [[11413, 11413], "valid"], [[11414, 11414], "mapped", [11415]], [[11415, 11415], "valid"], [[11416, 11416], "mapped", [11417]], [[11417, 11417], "valid"], [[11418, 11418], "mapped", [11419]], [[11419, 11419], "valid"], [[11420, 11420], "mapped", [11421]], [[11421, 11421], "valid"], [[11422, 11422], "mapped", [11423]], [[11423, 11423], "valid"], [[11424, 11424], "mapped", [11425]], [[11425, 11425], "valid"], [[11426, 11426], "mapped", [11427]], [[11427, 11427], "valid"], [[11428, 11428], "mapped", [11429]], [[11429, 11429], "valid"], [[11430, 11430], "mapped", [11431]], [[11431, 11431], "valid"], [[11432, 11432], "mapped", [11433]], [[11433, 11433], "valid"], [[11434, 11434], "mapped", [11435]], [[11435, 11435], "valid"], [[11436, 11436], "mapped", [11437]], [[11437, 11437], "valid"], [[11438, 11438], "mapped", [11439]], [[11439, 11439], "valid"], [[11440, 11440], "mapped", [11441]], [[11441, 11441], "valid"], [[11442, 11442], "mapped", [11443]], [[11443, 11443], "valid"], [[11444, 11444], "mapped", [11445]], [[11445, 11445], "valid"], [[11446, 11446], "mapped", [11447]], [[11447, 11447], "valid"], [[11448, 11448], "mapped", [11449]], [[11449, 11449], "valid"], [[11450, 11450], "mapped", [11451]], [[11451, 11451], "valid"], [[11452, 11452], "mapped", [11453]], [[11453, 11453], "valid"], [[11454, 11454], "mapped", [11455]], [[11455, 11455], "valid"], [[11456, 11456], "mapped", [11457]], [[11457, 11457], "valid"], [[11458, 11458], "mapped", [11459]], [[11459, 11459], "valid"], [[11460, 11460], "mapped", [11461]], [[11461, 11461], "valid"], [[11462, 11462], "mapped", [11463]], [[11463, 11463], "valid"], [[11464, 11464], "mapped", [11465]], [[11465, 11465], "valid"], [[11466, 11466], "mapped", [11467]], [[11467, 11467], "valid"], [[11468, 11468], "mapped", [11469]], [[11469, 11469], "valid"], [[11470, 11470], "mapped", [11471]], [[11471, 11471], "valid"], [[11472, 11472], "mapped", [11473]], [[11473, 11473], "valid"], [[11474, 11474], "mapped", [11475]], [[11475, 11475], "valid"], [[11476, 11476], "mapped", [11477]], [[11477, 11477], "valid"], [[11478, 11478], "mapped", [11479]], [[11479, 11479], "valid"], [[11480, 11480], "mapped", [11481]], [[11481, 11481], "valid"], [[11482, 11482], "mapped", [11483]], [[11483, 11483], "valid"], [[11484, 11484], "mapped", [11485]], [[11485, 11485], "valid"], [[11486, 11486], "mapped", [11487]], [[11487, 11487], "valid"], [[11488, 11488], "mapped", [11489]], [[11489, 11489], "valid"], [[11490, 11490], "mapped", [11491]], [[11491, 11492], "valid"], [[11493, 11498], "valid", [], "NV8"], [[11499, 11499], "mapped", [11500]], [[11500, 11500], "valid"], [[11501, 11501], "mapped", [11502]], [[11502, 11505], "valid"], [[11506, 11506], "mapped", [11507]], [[11507, 11507], "valid"], [[11508, 11512], "disallowed"], [[11513, 11519], "valid", [], "NV8"], [[11520, 11557], "valid"], [[11558, 11558], "disallowed"], [[11559, 11559], "valid"], [[11560, 11564], "disallowed"], [[11565, 11565], "valid"], [[11566, 11567], "disallowed"], [[11568, 11621], "valid"], [[11622, 11623], "valid"], [[11624, 11630], "disallowed"], [[11631, 11631], "mapped", [11617]], [[11632, 11632], "valid", [], "NV8"], [[11633, 11646], "disallowed"], [[11647, 11647], "valid"], [[11648, 11670], "valid"], [[11671, 11679], "disallowed"], [[11680, 11686], "valid"], [[11687, 11687], "disallowed"], [[11688, 11694], "valid"], [[11695, 11695], "disallowed"], [[11696, 11702], "valid"], [[11703, 11703], "disallowed"], [[11704, 11710], "valid"], [[11711, 11711], "disallowed"], [[11712, 11718], "valid"], [[11719, 11719], "disallowed"], [[11720, 11726], "valid"], [[11727, 11727], "disallowed"], [[11728, 11734], "valid"], [[11735, 11735], "disallowed"], [[11736, 11742], "valid"], [[11743, 11743], "disallowed"], [[11744, 11775], "valid"], [[11776, 11799], "valid", [], "NV8"], [[11800, 11803], "valid", [], "NV8"], [[11804, 11805], "valid", [], "NV8"], [[11806, 11822], "valid", [], "NV8"], [[11823, 11823], "valid"], [[11824, 11824], "valid", [], "NV8"], [[11825, 11825], "valid", [], "NV8"], [[11826, 11835], "valid", [], "NV8"], [[11836, 11842], "valid", [], "NV8"], [[11843, 11903], "disallowed"], [[11904, 11929], "valid", [], "NV8"], [[11930, 11930], "disallowed"], [[11931, 11934], "valid", [], "NV8"], [[11935, 11935], "mapped", [27597]], [[11936, 12018], "valid", [], "NV8"], [[12019, 12019], "mapped", [40863]], [[12020, 12031], "disallowed"], [[12032, 12032], "mapped", [19968]], [[12033, 12033], "mapped", [20008]], [[12034, 12034], "mapped", [20022]], [[12035, 12035], "mapped", [20031]], [[12036, 12036], "mapped", [20057]], [[12037, 12037], "mapped", [20101]], [[12038, 12038], "mapped", [20108]], [[12039, 12039], "mapped", [20128]], [[12040, 12040], "mapped", [20154]], [[12041, 12041], "mapped", [20799]], [[12042, 12042], "mapped", [20837]], [[12043, 12043], "mapped", [20843]], [[12044, 12044], "mapped", [20866]], [[12045, 12045], "mapped", [20886]], [[12046, 12046], "mapped", [20907]], [[12047, 12047], "mapped", [20960]], [[12048, 12048], "mapped", [20981]], [[12049, 12049], "mapped", [20992]], [[12050, 12050], "mapped", [21147]], [[12051, 12051], "mapped", [21241]], [[12052, 12052], "mapped", [21269]], [[12053, 12053], "mapped", [21274]], [[12054, 12054], "mapped", [21304]], [[12055, 12055], "mapped", [21313]], [[12056, 12056], "mapped", [21340]], [[12057, 12057], "mapped", [21353]], [[12058, 12058], "mapped", [21378]], [[12059, 12059], "mapped", [21430]], [[12060, 12060], "mapped", [21448]], [[12061, 12061], "mapped", [21475]], [[12062, 12062], "mapped", [22231]], [[12063, 12063], "mapped", [22303]], [[12064, 12064], "mapped", [22763]], [[12065, 12065], "mapped", [22786]], [[12066, 12066], "mapped", [22794]], [[12067, 12067], "mapped", [22805]], [[12068, 12068], "mapped", [22823]], [[12069, 12069], "mapped", [22899]], [[12070, 12070], "mapped", [23376]], [[12071, 12071], "mapped", [23424]], [[12072, 12072], "mapped", [23544]], [[12073, 12073], "mapped", [23567]], [[12074, 12074], "mapped", [23586]], [[12075, 12075], "mapped", [23608]], [[12076, 12076], "mapped", [23662]], [[12077, 12077], "mapped", [23665]], [[12078, 12078], "mapped", [24027]], [[12079, 12079], "mapped", [24037]], [[12080, 12080], "mapped", [24049]], [[12081, 12081], "mapped", [24062]], [[12082, 12082], "mapped", [24178]], [[12083, 12083], "mapped", [24186]], [[12084, 12084], "mapped", [24191]], [[12085, 12085], "mapped", [24308]], [[12086, 12086], "mapped", [24318]], [[12087, 12087], "mapped", [24331]], [[12088, 12088], "mapped", [24339]], [[12089, 12089], "mapped", [24400]], [[12090, 12090], "mapped", [24417]], [[12091, 12091], "mapped", [24435]], [[12092, 12092], "mapped", [24515]], [[12093, 12093], "mapped", [25096]], [[12094, 12094], "mapped", [25142]], [[12095, 12095], "mapped", [25163]], [[12096, 12096], "mapped", [25903]], [[12097, 12097], "mapped", [25908]], [[12098, 12098], "mapped", [25991]], [[12099, 12099], "mapped", [26007]], [[12100, 12100], "mapped", [26020]], [[12101, 12101], "mapped", [26041]], [[12102, 12102], "mapped", [26080]], [[12103, 12103], "mapped", [26085]], [[12104, 12104], "mapped", [26352]], [[12105, 12105], "mapped", [26376]], [[12106, 12106], "mapped", [26408]], [[12107, 12107], "mapped", [27424]], [[12108, 12108], "mapped", [27490]], [[12109, 12109], "mapped", [27513]], [[12110, 12110], "mapped", [27571]], [[12111, 12111], "mapped", [27595]], [[12112, 12112], "mapped", [27604]], [[12113, 12113], "mapped", [27611]], [[12114, 12114], "mapped", [27663]], [[12115, 12115], "mapped", [27668]], [[12116, 12116], "mapped", [27700]], [[12117, 12117], "mapped", [28779]], [[12118, 12118], "mapped", [29226]], [[12119, 12119], "mapped", [29238]], [[12120, 12120], "mapped", [29243]], [[12121, 12121], "mapped", [29247]], [[12122, 12122], "mapped", [29255]], [[12123, 12123], "mapped", [29273]], [[12124, 12124], "mapped", [29275]], [[12125, 12125], "mapped", [29356]], [[12126, 12126], "mapped", [29572]], [[12127, 12127], "mapped", [29577]], [[12128, 12128], "mapped", [29916]], [[12129, 12129], "mapped", [29926]], [[12130, 12130], "mapped", [29976]], [[12131, 12131], "mapped", [29983]], [[12132, 12132], "mapped", [29992]], [[12133, 12133], "mapped", [3e4]], [[12134, 12134], "mapped", [30091]], [[12135, 12135], "mapped", [30098]], [[12136, 12136], "mapped", [30326]], [[12137, 12137], "mapped", [30333]], [[12138, 12138], "mapped", [30382]], [[12139, 12139], "mapped", [30399]], [[12140, 12140], "mapped", [30446]], [[12141, 12141], "mapped", [30683]], [[12142, 12142], "mapped", [30690]], [[12143, 12143], "mapped", [30707]], [[12144, 12144], "mapped", [31034]], [[12145, 12145], "mapped", [31160]], [[12146, 12146], "mapped", [31166]], [[12147, 12147], "mapped", [31348]], [[12148, 12148], "mapped", [31435]], [[12149, 12149], "mapped", [31481]], [[12150, 12150], "mapped", [31859]], [[12151, 12151], "mapped", [31992]], [[12152, 12152], "mapped", [32566]], [[12153, 12153], "mapped", [32593]], [[12154, 12154], "mapped", [32650]], [[12155, 12155], "mapped", [32701]], [[12156, 12156], "mapped", [32769]], [[12157, 12157], "mapped", [32780]], [[12158, 12158], "mapped", [32786]], [[12159, 12159], "mapped", [32819]], [[12160, 12160], "mapped", [32895]], [[12161, 12161], "mapped", [32905]], [[12162, 12162], "mapped", [33251]], [[12163, 12163], "mapped", [33258]], [[12164, 12164], "mapped", [33267]], [[12165, 12165], "mapped", [33276]], [[12166, 12166], "mapped", [33292]], [[12167, 12167], "mapped", [33307]], [[12168, 12168], "mapped", [33311]], [[12169, 12169], "mapped", [33390]], [[12170, 12170], "mapped", [33394]], [[12171, 12171], "mapped", [33400]], [[12172, 12172], "mapped", [34381]], [[12173, 12173], "mapped", [34411]], [[12174, 12174], "mapped", [34880]], [[12175, 12175], "mapped", [34892]], [[12176, 12176], "mapped", [34915]], [[12177, 12177], "mapped", [35198]], [[12178, 12178], "mapped", [35211]], [[12179, 12179], "mapped", [35282]], [[12180, 12180], "mapped", [35328]], [[12181, 12181], "mapped", [35895]], [[12182, 12182], "mapped", [35910]], [[12183, 12183], "mapped", [35925]], [[12184, 12184], "mapped", [35960]], [[12185, 12185], "mapped", [35997]], [[12186, 12186], "mapped", [36196]], [[12187, 12187], "mapped", [36208]], [[12188, 12188], "mapped", [36275]], [[12189, 12189], "mapped", [36523]], [[12190, 12190], "mapped", [36554]], [[12191, 12191], "mapped", [36763]], [[12192, 12192], "mapped", [36784]], [[12193, 12193], "mapped", [36789]], [[12194, 12194], "mapped", [37009]], [[12195, 12195], "mapped", [37193]], [[12196, 12196], "mapped", [37318]], [[12197, 12197], "mapped", [37324]], [[12198, 12198], "mapped", [37329]], [[12199, 12199], "mapped", [38263]], [[12200, 12200], "mapped", [38272]], [[12201, 12201], "mapped", [38428]], [[12202, 12202], "mapped", [38582]], [[12203, 12203], "mapped", [38585]], [[12204, 12204], "mapped", [38632]], [[12205, 12205], "mapped", [38737]], [[12206, 12206], "mapped", [38750]], [[12207, 12207], "mapped", [38754]], [[12208, 12208], "mapped", [38761]], [[12209, 12209], "mapped", [38859]], [[12210, 12210], "mapped", [38893]], [[12211, 12211], "mapped", [38899]], [[12212, 12212], "mapped", [38913]], [[12213, 12213], "mapped", [39080]], [[12214, 12214], "mapped", [39131]], [[12215, 12215], "mapped", [39135]], [[12216, 12216], "mapped", [39318]], [[12217, 12217], "mapped", [39321]], [[12218, 12218], "mapped", [39340]], [[12219, 12219], "mapped", [39592]], [[12220, 12220], "mapped", [39640]], [[12221, 12221], "mapped", [39647]], [[12222, 12222], "mapped", [39717]], [[12223, 12223], "mapped", [39727]], [[12224, 12224], "mapped", [39730]], [[12225, 12225], "mapped", [39740]], [[12226, 12226], "mapped", [39770]], [[12227, 12227], "mapped", [40165]], [[12228, 12228], "mapped", [40565]], [[12229, 12229], "mapped", [40575]], [[12230, 12230], "mapped", [40613]], [[12231, 12231], "mapped", [40635]], [[12232, 12232], "mapped", [40643]], [[12233, 12233], "mapped", [40653]], [[12234, 12234], "mapped", [40657]], [[12235, 12235], "mapped", [40697]], [[12236, 12236], "mapped", [40701]], [[12237, 12237], "mapped", [40718]], [[12238, 12238], "mapped", [40723]], [[12239, 12239], "mapped", [40736]], [[12240, 12240], "mapped", [40763]], [[12241, 12241], "mapped", [40778]], [[12242, 12242], "mapped", [40786]], [[12243, 12243], "mapped", [40845]], [[12244, 12244], "mapped", [40860]], [[12245, 12245], "mapped", [40864]], [[12246, 12271], "disallowed"], [[12272, 12283], "disallowed"], [[12284, 12287], "disallowed"], [[12288, 12288], "disallowed_STD3_mapped", [32]], [[12289, 12289], "valid", [], "NV8"], [[12290, 12290], "mapped", [46]], [[12291, 12292], "valid", [], "NV8"], [[12293, 12295], "valid"], [[12296, 12329], "valid", [], "NV8"], [[12330, 12333], "valid"], [[12334, 12341], "valid", [], "NV8"], [[12342, 12342], "mapped", [12306]], [[12343, 12343], "valid", [], "NV8"], [[12344, 12344], "mapped", [21313]], [[12345, 12345], "mapped", [21316]], [[12346, 12346], "mapped", [21317]], [[12347, 12347], "valid", [], "NV8"], [[12348, 12348], "valid"], [[12349, 12349], "valid", [], "NV8"], [[12350, 12350], "valid", [], "NV8"], [[12351, 12351], "valid", [], "NV8"], [[12352, 12352], "disallowed"], [[12353, 12436], "valid"], [[12437, 12438], "valid"], [[12439, 12440], "disallowed"], [[12441, 12442], "valid"], [[12443, 12443], "disallowed_STD3_mapped", [32, 12441]], [[12444, 12444], "disallowed_STD3_mapped", [32, 12442]], [[12445, 12446], "valid"], [[12447, 12447], "mapped", [12424, 12426]], [[12448, 12448], "valid", [], "NV8"], [[12449, 12542], "valid"], [[12543, 12543], "mapped", [12467, 12488]], [[12544, 12548], "disallowed"], [[12549, 12588], "valid"], [[12589, 12589], "valid"], [[12590, 12592], "disallowed"], [[12593, 12593], "mapped", [4352]], [[12594, 12594], "mapped", [4353]], [[12595, 12595], "mapped", [4522]], [[12596, 12596], "mapped", [4354]], [[12597, 12597], "mapped", [4524]], [[12598, 12598], "mapped", [4525]], [[12599, 12599], "mapped", [4355]], [[12600, 12600], "mapped", [4356]], [[12601, 12601], "mapped", [4357]], [[12602, 12602], "mapped", [4528]], [[12603, 12603], "mapped", [4529]], [[12604, 12604], "mapped", [4530]], [[12605, 12605], "mapped", [4531]], [[12606, 12606], "mapped", [4532]], [[12607, 12607], "mapped", [4533]], [[12608, 12608], "mapped", [4378]], [[12609, 12609], "mapped", [4358]], [[12610, 12610], "mapped", [4359]], [[12611, 12611], "mapped", [4360]], [[12612, 12612], "mapped", [4385]], [[12613, 12613], "mapped", [4361]], [[12614, 12614], "mapped", [4362]], [[12615, 12615], "mapped", [4363]], [[12616, 12616], "mapped", [4364]], [[12617, 12617], "mapped", [4365]], [[12618, 12618], "mapped", [4366]], [[12619, 12619], "mapped", [4367]], [[12620, 12620], "mapped", [4368]], [[12621, 12621], "mapped", [4369]], [[12622, 12622], "mapped", [4370]], [[12623, 12623], "mapped", [4449]], [[12624, 12624], "mapped", [4450]], [[12625, 12625], "mapped", [4451]], [[12626, 12626], "mapped", [4452]], [[12627, 12627], "mapped", [4453]], [[12628, 12628], "mapped", [4454]], [[12629, 12629], "mapped", [4455]], [[12630, 12630], "mapped", [4456]], [[12631, 12631], "mapped", [4457]], [[12632, 12632], "mapped", [4458]], [[12633, 12633], "mapped", [4459]], [[12634, 12634], "mapped", [4460]], [[12635, 12635], "mapped", [4461]], [[12636, 12636], "mapped", [4462]], [[12637, 12637], "mapped", [4463]], [[12638, 12638], "mapped", [4464]], [[12639, 12639], "mapped", [4465]], [[12640, 12640], "mapped", [4466]], [[12641, 12641], "mapped", [4467]], [[12642, 12642], "mapped", [4468]], [[12643, 12643], "mapped", [4469]], [[12644, 12644], "disallowed"], [[12645, 12645], "mapped", [4372]], [[12646, 12646], "mapped", [4373]], [[12647, 12647], "mapped", [4551]], [[12648, 12648], "mapped", [4552]], [[12649, 12649], "mapped", [4556]], [[12650, 12650], "mapped", [4558]], [[12651, 12651], "mapped", [4563]], [[12652, 12652], "mapped", [4567]], [[12653, 12653], "mapped", [4569]], [[12654, 12654], "mapped", [4380]], [[12655, 12655], "mapped", [4573]], [[12656, 12656], "mapped", [4575]], [[12657, 12657], "mapped", [4381]], [[12658, 12658], "mapped", [4382]], [[12659, 12659], "mapped", [4384]], [[12660, 12660], "mapped", [4386]], [[12661, 12661], "mapped", [4387]], [[12662, 12662], "mapped", [4391]], [[12663, 12663], "mapped", [4393]], [[12664, 12664], "mapped", [4395]], [[12665, 12665], "mapped", [4396]], [[12666, 12666], "mapped", [4397]], [[12667, 12667], "mapped", [4398]], [[12668, 12668], "mapped", [4399]], [[12669, 12669], "mapped", [4402]], [[12670, 12670], "mapped", [4406]], [[12671, 12671], "mapped", [4416]], [[12672, 12672], "mapped", [4423]], [[12673, 12673], "mapped", [4428]], [[12674, 12674], "mapped", [4593]], [[12675, 12675], "mapped", [4594]], [[12676, 12676], "mapped", [4439]], [[12677, 12677], "mapped", [4440]], [[12678, 12678], "mapped", [4441]], [[12679, 12679], "mapped", [4484]], [[12680, 12680], "mapped", [4485]], [[12681, 12681], "mapped", [4488]], [[12682, 12682], "mapped", [4497]], [[12683, 12683], "mapped", [4498]], [[12684, 12684], "mapped", [4500]], [[12685, 12685], "mapped", [4510]], [[12686, 12686], "mapped", [4513]], [[12687, 12687], "disallowed"], [[12688, 12689], "valid", [], "NV8"], [[12690, 12690], "mapped", [19968]], [[12691, 12691], "mapped", [20108]], [[12692, 12692], "mapped", [19977]], [[12693, 12693], "mapped", [22235]], [[12694, 12694], "mapped", [19978]], [[12695, 12695], "mapped", [20013]], [[12696, 12696], "mapped", [19979]], [[12697, 12697], "mapped", [30002]], [[12698, 12698], "mapped", [20057]], [[12699, 12699], "mapped", [19993]], [[12700, 12700], "mapped", [19969]], [[12701, 12701], "mapped", [22825]], [[12702, 12702], "mapped", [22320]], [[12703, 12703], "mapped", [20154]], [[12704, 12727], "valid"], [[12728, 12730], "valid"], [[12731, 12735], "disallowed"], [[12736, 12751], "valid", [], "NV8"], [[12752, 12771], "valid", [], "NV8"], [[12772, 12783], "disallowed"], [[12784, 12799], "valid"], [[12800, 12800], "disallowed_STD3_mapped", [40, 4352, 41]], [[12801, 12801], "disallowed_STD3_mapped", [40, 4354, 41]], [[12802, 12802], "disallowed_STD3_mapped", [40, 4355, 41]], [[12803, 12803], "disallowed_STD3_mapped", [40, 4357, 41]], [[12804, 12804], "disallowed_STD3_mapped", [40, 4358, 41]], [[12805, 12805], "disallowed_STD3_mapped", [40, 4359, 41]], [[12806, 12806], "disallowed_STD3_mapped", [40, 4361, 41]], [[12807, 12807], "disallowed_STD3_mapped", [40, 4363, 41]], [[12808, 12808], "disallowed_STD3_mapped", [40, 4364, 41]], [[12809, 12809], "disallowed_STD3_mapped", [40, 4366, 41]], [[12810, 12810], "disallowed_STD3_mapped", [40, 4367, 41]], [[12811, 12811], "disallowed_STD3_mapped", [40, 4368, 41]], [[12812, 12812], "disallowed_STD3_mapped", [40, 4369, 41]], [[12813, 12813], "disallowed_STD3_mapped", [40, 4370, 41]], [[12814, 12814], "disallowed_STD3_mapped", [40, 44032, 41]], [[12815, 12815], "disallowed_STD3_mapped", [40, 45208, 41]], [[12816, 12816], "disallowed_STD3_mapped", [40, 45796, 41]], [[12817, 12817], "disallowed_STD3_mapped", [40, 46972, 41]], [[12818, 12818], "disallowed_STD3_mapped", [40, 47560, 41]], [[12819, 12819], "disallowed_STD3_mapped", [40, 48148, 41]], [[12820, 12820], "disallowed_STD3_mapped", [40, 49324, 41]], [[12821, 12821], "disallowed_STD3_mapped", [40, 50500, 41]], [[12822, 12822], "disallowed_STD3_mapped", [40, 51088, 41]], [[12823, 12823], "disallowed_STD3_mapped", [40, 52264, 41]], [[12824, 12824], "disallowed_STD3_mapped", [40, 52852, 41]], [[12825, 12825], "disallowed_STD3_mapped", [40, 53440, 41]], [[12826, 12826], "disallowed_STD3_mapped", [40, 54028, 41]], [[12827, 12827], "disallowed_STD3_mapped", [40, 54616, 41]], [[12828, 12828], "disallowed_STD3_mapped", [40, 51452, 41]], [[12829, 12829], "disallowed_STD3_mapped", [40, 50724, 51204, 41]], [[12830, 12830], "disallowed_STD3_mapped", [40, 50724, 54980, 41]], [[12831, 12831], "disallowed"], [[12832, 12832], "disallowed_STD3_mapped", [40, 19968, 41]], [[12833, 12833], "disallowed_STD3_mapped", [40, 20108, 41]], [[12834, 12834], "disallowed_STD3_mapped", [40, 19977, 41]], [[12835, 12835], "disallowed_STD3_mapped", [40, 22235, 41]], [[12836, 12836], "disallowed_STD3_mapped", [40, 20116, 41]], [[12837, 12837], "disallowed_STD3_mapped", [40, 20845, 41]], [[12838, 12838], "disallowed_STD3_mapped", [40, 19971, 41]], [[12839, 12839], "disallowed_STD3_mapped", [40, 20843, 41]], [[12840, 12840], "disallowed_STD3_mapped", [40, 20061, 41]], [[12841, 12841], "disallowed_STD3_mapped", [40, 21313, 41]], [[12842, 12842], "disallowed_STD3_mapped", [40, 26376, 41]], [[12843, 12843], "disallowed_STD3_mapped", [40, 28779, 41]], [[12844, 12844], "disallowed_STD3_mapped", [40, 27700, 41]], [[12845, 12845], "disallowed_STD3_mapped", [40, 26408, 41]], [[12846, 12846], "disallowed_STD3_mapped", [40, 37329, 41]], [[12847, 12847], "disallowed_STD3_mapped", [40, 22303, 41]], [[12848, 12848], "disallowed_STD3_mapped", [40, 26085, 41]], [[12849, 12849], "disallowed_STD3_mapped", [40, 26666, 41]], [[12850, 12850], "disallowed_STD3_mapped", [40, 26377, 41]], [[12851, 12851], "disallowed_STD3_mapped", [40, 31038, 41]], [[12852, 12852], "disallowed_STD3_mapped", [40, 21517, 41]], [[12853, 12853], "disallowed_STD3_mapped", [40, 29305, 41]], [[12854, 12854], "disallowed_STD3_mapped", [40, 36001, 41]], [[12855, 12855], "disallowed_STD3_mapped", [40, 31069, 41]], [[12856, 12856], "disallowed_STD3_mapped", [40, 21172, 41]], [[12857, 12857], "disallowed_STD3_mapped", [40, 20195, 41]], [[12858, 12858], "disallowed_STD3_mapped", [40, 21628, 41]], [[12859, 12859], "disallowed_STD3_mapped", [40, 23398, 41]], [[12860, 12860], "disallowed_STD3_mapped", [40, 30435, 41]], [[12861, 12861], "disallowed_STD3_mapped", [40, 20225, 41]], [[12862, 12862], "disallowed_STD3_mapped", [40, 36039, 41]], [[12863, 12863], "disallowed_STD3_mapped", [40, 21332, 41]], [[12864, 12864], "disallowed_STD3_mapped", [40, 31085, 41]], [[12865, 12865], "disallowed_STD3_mapped", [40, 20241, 41]], [[12866, 12866], "disallowed_STD3_mapped", [40, 33258, 41]], [[12867, 12867], "disallowed_STD3_mapped", [40, 33267, 41]], [[12868, 12868], "mapped", [21839]], [[12869, 12869], "mapped", [24188]], [[12870, 12870], "mapped", [25991]], [[12871, 12871], "mapped", [31631]], [[12872, 12879], "valid", [], "NV8"], [[12880, 12880], "mapped", [112, 116, 101]], [[12881, 12881], "mapped", [50, 49]], [[12882, 12882], "mapped", [50, 50]], [[12883, 12883], "mapped", [50, 51]], [[12884, 12884], "mapped", [50, 52]], [[12885, 12885], "mapped", [50, 53]], [[12886, 12886], "mapped", [50, 54]], [[12887, 12887], "mapped", [50, 55]], [[12888, 12888], "mapped", [50, 56]], [[12889, 12889], "mapped", [50, 57]], [[12890, 12890], "mapped", [51, 48]], [[12891, 12891], "mapped", [51, 49]], [[12892, 12892], "mapped", [51, 50]], [[12893, 12893], "mapped", [51, 51]], [[12894, 12894], "mapped", [51, 52]], [[12895, 12895], "mapped", [51, 53]], [[12896, 12896], "mapped", [4352]], [[12897, 12897], "mapped", [4354]], [[12898, 12898], "mapped", [4355]], [[12899, 12899], "mapped", [4357]], [[12900, 12900], "mapped", [4358]], [[12901, 12901], "mapped", [4359]], [[12902, 12902], "mapped", [4361]], [[12903, 12903], "mapped", [4363]], [[12904, 12904], "mapped", [4364]], [[12905, 12905], "mapped", [4366]], [[12906, 12906], "mapped", [4367]], [[12907, 12907], "mapped", [4368]], [[12908, 12908], "mapped", [4369]], [[12909, 12909], "mapped", [4370]], [[12910, 12910], "mapped", [44032]], [[12911, 12911], "mapped", [45208]], [[12912, 12912], "mapped", [45796]], [[12913, 12913], "mapped", [46972]], [[12914, 12914], "mapped", [47560]], [[12915, 12915], "mapped", [48148]], [[12916, 12916], "mapped", [49324]], [[12917, 12917], "mapped", [50500]], [[12918, 12918], "mapped", [51088]], [[12919, 12919], "mapped", [52264]], [[12920, 12920], "mapped", [52852]], [[12921, 12921], "mapped", [53440]], [[12922, 12922], "mapped", [54028]], [[12923, 12923], "mapped", [54616]], [[12924, 12924], "mapped", [52280, 44256]], [[12925, 12925], "mapped", [51452, 51032]], [[12926, 12926], "mapped", [50864]], [[12927, 12927], "valid", [], "NV8"], [[12928, 12928], "mapped", [19968]], [[12929, 12929], "mapped", [20108]], [[12930, 12930], "mapped", [19977]], [[12931, 12931], "mapped", [22235]], [[12932, 12932], "mapped", [20116]], [[12933, 12933], "mapped", [20845]], [[12934, 12934], "mapped", [19971]], [[12935, 12935], "mapped", [20843]], [[12936, 12936], "mapped", [20061]], [[12937, 12937], "mapped", [21313]], [[12938, 12938], "mapped", [26376]], [[12939, 12939], "mapped", [28779]], [[12940, 12940], "mapped", [27700]], [[12941, 12941], "mapped", [26408]], [[12942, 12942], "mapped", [37329]], [[12943, 12943], "mapped", [22303]], [[12944, 12944], "mapped", [26085]], [[12945, 12945], "mapped", [26666]], [[12946, 12946], "mapped", [26377]], [[12947, 12947], "mapped", [31038]], [[12948, 12948], "mapped", [21517]], [[12949, 12949], "mapped", [29305]], [[12950, 12950], "mapped", [36001]], [[12951, 12951], "mapped", [31069]], [[12952, 12952], "mapped", [21172]], [[12953, 12953], "mapped", [31192]], [[12954, 12954], "mapped", [30007]], [[12955, 12955], "mapped", [22899]], [[12956, 12956], "mapped", [36969]], [[12957, 12957], "mapped", [20778]], [[12958, 12958], "mapped", [21360]], [[12959, 12959], "mapped", [27880]], [[12960, 12960], "mapped", [38917]], [[12961, 12961], "mapped", [20241]], [[12962, 12962], "mapped", [20889]], [[12963, 12963], "mapped", [27491]], [[12964, 12964], "mapped", [19978]], [[12965, 12965], "mapped", [20013]], [[12966, 12966], "mapped", [19979]], [[12967, 12967], "mapped", [24038]], [[12968, 12968], "mapped", [21491]], [[12969, 12969], "mapped", [21307]], [[12970, 12970], "mapped", [23447]], [[12971, 12971], "mapped", [23398]], [[12972, 12972], "mapped", [30435]], [[12973, 12973], "mapped", [20225]], [[12974, 12974], "mapped", [36039]], [[12975, 12975], "mapped", [21332]], [[12976, 12976], "mapped", [22812]], [[12977, 12977], "mapped", [51, 54]], [[12978, 12978], "mapped", [51, 55]], [[12979, 12979], "mapped", [51, 56]], [[12980, 12980], "mapped", [51, 57]], [[12981, 12981], "mapped", [52, 48]], [[12982, 12982], "mapped", [52, 49]], [[12983, 12983], "mapped", [52, 50]], [[12984, 12984], "mapped", [52, 51]], [[12985, 12985], "mapped", [52, 52]], [[12986, 12986], "mapped", [52, 53]], [[12987, 12987], "mapped", [52, 54]], [[12988, 12988], "mapped", [52, 55]], [[12989, 12989], "mapped", [52, 56]], [[12990, 12990], "mapped", [52, 57]], [[12991, 12991], "mapped", [53, 48]], [[12992, 12992], "mapped", [49, 26376]], [[12993, 12993], "mapped", [50, 26376]], [[12994, 12994], "mapped", [51, 26376]], [[12995, 12995], "mapped", [52, 26376]], [[12996, 12996], "mapped", [53, 26376]], [[12997, 12997], "mapped", [54, 26376]], [[12998, 12998], "mapped", [55, 26376]], [[12999, 12999], "mapped", [56, 26376]], [[13e3, 13e3], "mapped", [57, 26376]], [[13001, 13001], "mapped", [49, 48, 26376]], [[13002, 13002], "mapped", [49, 49, 26376]], [[13003, 13003], "mapped", [49, 50, 26376]], [[13004, 13004], "mapped", [104, 103]], [[13005, 13005], "mapped", [101, 114, 103]], [[13006, 13006], "mapped", [101, 118]], [[13007, 13007], "mapped", [108, 116, 100]], [[13008, 13008], "mapped", [12450]], [[13009, 13009], "mapped", [12452]], [[13010, 13010], "mapped", [12454]], [[13011, 13011], "mapped", [12456]], [[13012, 13012], "mapped", [12458]], [[13013, 13013], "mapped", [12459]], [[13014, 13014], "mapped", [12461]], [[13015, 13015], "mapped", [12463]], [[13016, 13016], "mapped", [12465]], [[13017, 13017], "mapped", [12467]], [[13018, 13018], "mapped", [12469]], [[13019, 13019], "mapped", [12471]], [[13020, 13020], "mapped", [12473]], [[13021, 13021], "mapped", [12475]], [[13022, 13022], "mapped", [12477]], [[13023, 13023], "mapped", [12479]], [[13024, 13024], "mapped", [12481]], [[13025, 13025], "mapped", [12484]], [[13026, 13026], "mapped", [12486]], [[13027, 13027], "mapped", [12488]], [[13028, 13028], "mapped", [12490]], [[13029, 13029], "mapped", [12491]], [[13030, 13030], "mapped", [12492]], [[13031, 13031], "mapped", [12493]], [[13032, 13032], "mapped", [12494]], [[13033, 13033], "mapped", [12495]], [[13034, 13034], "mapped", [12498]], [[13035, 13035], "mapped", [12501]], [[13036, 13036], "mapped", [12504]], [[13037, 13037], "mapped", [12507]], [[13038, 13038], "mapped", [12510]], [[13039, 13039], "mapped", [12511]], [[13040, 13040], "mapped", [12512]], [[13041, 13041], "mapped", [12513]], [[13042, 13042], "mapped", [12514]], [[13043, 13043], "mapped", [12516]], [[13044, 13044], "mapped", [12518]], [[13045, 13045], "mapped", [12520]], [[13046, 13046], "mapped", [12521]], [[13047, 13047], "mapped", [12522]], [[13048, 13048], "mapped", [12523]], [[13049, 13049], "mapped", [12524]], [[13050, 13050], "mapped", [12525]], [[13051, 13051], "mapped", [12527]], [[13052, 13052], "mapped", [12528]], [[13053, 13053], "mapped", [12529]], [[13054, 13054], "mapped", [12530]], [[13055, 13055], "disallowed"], [[13056, 13056], "mapped", [12450, 12497, 12540, 12488]], [[13057, 13057], "mapped", [12450, 12523, 12501, 12449]], [[13058, 13058], "mapped", [12450, 12531, 12506, 12450]], [[13059, 13059], "mapped", [12450, 12540, 12523]], [[13060, 13060], "mapped", [12452, 12491, 12531, 12464]], [[13061, 13061], "mapped", [12452, 12531, 12481]], [[13062, 13062], "mapped", [12454, 12457, 12531]], [[13063, 13063], "mapped", [12456, 12473, 12463, 12540, 12489]], [[13064, 13064], "mapped", [12456, 12540, 12459, 12540]], [[13065, 13065], "mapped", [12458, 12531, 12473]], [[13066, 13066], "mapped", [12458, 12540, 12512]], [[13067, 13067], "mapped", [12459, 12452, 12522]], [[13068, 13068], "mapped", [12459, 12521, 12483, 12488]], [[13069, 13069], "mapped", [12459, 12525, 12522, 12540]], [[13070, 13070], "mapped", [12460, 12525, 12531]], [[13071, 13071], "mapped", [12460, 12531, 12510]], [[13072, 13072], "mapped", [12462, 12460]], [[13073, 13073], "mapped", [12462, 12491, 12540]], [[13074, 13074], "mapped", [12461, 12517, 12522, 12540]], [[13075, 13075], "mapped", [12462, 12523, 12480, 12540]], [[13076, 13076], "mapped", [12461, 12525]], [[13077, 13077], "mapped", [12461, 12525, 12464, 12521, 12512]], [[13078, 13078], "mapped", [12461, 12525, 12513, 12540, 12488, 12523]], [[13079, 13079], "mapped", [12461, 12525, 12527, 12483, 12488]], [[13080, 13080], "mapped", [12464, 12521, 12512]], [[13081, 13081], "mapped", [12464, 12521, 12512, 12488, 12531]], [[13082, 13082], "mapped", [12463, 12523, 12476, 12452, 12525]], [[13083, 13083], "mapped", [12463, 12525, 12540, 12493]], [[13084, 13084], "mapped", [12465, 12540, 12473]], [[13085, 13085], "mapped", [12467, 12523, 12490]], [[13086, 13086], "mapped", [12467, 12540, 12509]], [[13087, 13087], "mapped", [12469, 12452, 12463, 12523]], [[13088, 13088], "mapped", [12469, 12531, 12481, 12540, 12512]], [[13089, 13089], "mapped", [12471, 12522, 12531, 12464]], [[13090, 13090], "mapped", [12475, 12531, 12481]], [[13091, 13091], "mapped", [12475, 12531, 12488]], [[13092, 13092], "mapped", [12480, 12540, 12473]], [[13093, 13093], "mapped", [12487, 12471]], [[13094, 13094], "mapped", [12489, 12523]], [[13095, 13095], "mapped", [12488, 12531]], [[13096, 13096], "mapped", [12490, 12494]], [[13097, 13097], "mapped", [12494, 12483, 12488]], [[13098, 13098], "mapped", [12495, 12452, 12484]], [[13099, 13099], "mapped", [12497, 12540, 12475, 12531, 12488]], [[13100, 13100], "mapped", [12497, 12540, 12484]], [[13101, 13101], "mapped", [12496, 12540, 12524, 12523]], [[13102, 13102], "mapped", [12500, 12450, 12473, 12488, 12523]], [[13103, 13103], "mapped", [12500, 12463, 12523]], [[13104, 13104], "mapped", [12500, 12467]], [[13105, 13105], "mapped", [12499, 12523]], [[13106, 13106], "mapped", [12501, 12449, 12521, 12483, 12489]], [[13107, 13107], "mapped", [12501, 12451, 12540, 12488]], [[13108, 13108], "mapped", [12502, 12483, 12471, 12455, 12523]], [[13109, 13109], "mapped", [12501, 12521, 12531]], [[13110, 13110], "mapped", [12504, 12463, 12479, 12540, 12523]], [[13111, 13111], "mapped", [12506, 12477]], [[13112, 13112], "mapped", [12506, 12491, 12498]], [[13113, 13113], "mapped", [12504, 12523, 12484]], [[13114, 13114], "mapped", [12506, 12531, 12473]], [[13115, 13115], "mapped", [12506, 12540, 12472]], [[13116, 13116], "mapped", [12505, 12540, 12479]], [[13117, 13117], "mapped", [12509, 12452, 12531, 12488]], [[13118, 13118], "mapped", [12508, 12523, 12488]], [[13119, 13119], "mapped", [12507, 12531]], [[13120, 13120], "mapped", [12509, 12531, 12489]], [[13121, 13121], "mapped", [12507, 12540, 12523]], [[13122, 13122], "mapped", [12507, 12540, 12531]], [[13123, 13123], "mapped", [12510, 12452, 12463, 12525]], [[13124, 13124], "mapped", [12510, 12452, 12523]], [[13125, 13125], "mapped", [12510, 12483, 12495]], [[13126, 13126], "mapped", [12510, 12523, 12463]], [[13127, 13127], "mapped", [12510, 12531, 12471, 12519, 12531]], [[13128, 13128], "mapped", [12511, 12463, 12525, 12531]], [[13129, 13129], "mapped", [12511, 12522]], [[13130, 13130], "mapped", [12511, 12522, 12496, 12540, 12523]], [[13131, 13131], "mapped", [12513, 12460]], [[13132, 13132], "mapped", [12513, 12460, 12488, 12531]], [[13133, 13133], "mapped", [12513, 12540, 12488, 12523]], [[13134, 13134], "mapped", [12516, 12540, 12489]], [[13135, 13135], "mapped", [12516, 12540, 12523]], [[13136, 13136], "mapped", [12518, 12450, 12531]], [[13137, 13137], "mapped", [12522, 12483, 12488, 12523]], [[13138, 13138], "mapped", [12522, 12521]], [[13139, 13139], "mapped", [12523, 12500, 12540]], [[13140, 13140], "mapped", [12523, 12540, 12502, 12523]], [[13141, 13141], "mapped", [12524, 12512]], [[13142, 13142], "mapped", [12524, 12531, 12488, 12466, 12531]], [[13143, 13143], "mapped", [12527, 12483, 12488]], [[13144, 13144], "mapped", [48, 28857]], [[13145, 13145], "mapped", [49, 28857]], [[13146, 13146], "mapped", [50, 28857]], [[13147, 13147], "mapped", [51, 28857]], [[13148, 13148], "mapped", [52, 28857]], [[13149, 13149], "mapped", [53, 28857]], [[13150, 13150], "mapped", [54, 28857]], [[13151, 13151], "mapped", [55, 28857]], [[13152, 13152], "mapped", [56, 28857]], [[13153, 13153], "mapped", [57, 28857]], [[13154, 13154], "mapped", [49, 48, 28857]], [[13155, 13155], "mapped", [49, 49, 28857]], [[13156, 13156], "mapped", [49, 50, 28857]], [[13157, 13157], "mapped", [49, 51, 28857]], [[13158, 13158], "mapped", [49, 52, 28857]], [[13159, 13159], "mapped", [49, 53, 28857]], [[13160, 13160], "mapped", [49, 54, 28857]], [[13161, 13161], "mapped", [49, 55, 28857]], [[13162, 13162], "mapped", [49, 56, 28857]], [[13163, 13163], "mapped", [49, 57, 28857]], [[13164, 13164], "mapped", [50, 48, 28857]], [[13165, 13165], "mapped", [50, 49, 28857]], [[13166, 13166], "mapped", [50, 50, 28857]], [[13167, 13167], "mapped", [50, 51, 28857]], [[13168, 13168], "mapped", [50, 52, 28857]], [[13169, 13169], "mapped", [104, 112, 97]], [[13170, 13170], "mapped", [100, 97]], [[13171, 13171], "mapped", [97, 117]], [[13172, 13172], "mapped", [98, 97, 114]], [[13173, 13173], "mapped", [111, 118]], [[13174, 13174], "mapped", [112, 99]], [[13175, 13175], "mapped", [100, 109]], [[13176, 13176], "mapped", [100, 109, 50]], [[13177, 13177], "mapped", [100, 109, 51]], [[13178, 13178], "mapped", [105, 117]], [[13179, 13179], "mapped", [24179, 25104]], [[13180, 13180], "mapped", [26157, 21644]], [[13181, 13181], "mapped", [22823, 27491]], [[13182, 13182], "mapped", [26126, 27835]], [[13183, 13183], "mapped", [26666, 24335, 20250, 31038]], [[13184, 13184], "mapped", [112, 97]], [[13185, 13185], "mapped", [110, 97]], [[13186, 13186], "mapped", [956, 97]], [[13187, 13187], "mapped", [109, 97]], [[13188, 13188], "mapped", [107, 97]], [[13189, 13189], "mapped", [107, 98]], [[13190, 13190], "mapped", [109, 98]], [[13191, 13191], "mapped", [103, 98]], [[13192, 13192], "mapped", [99, 97, 108]], [[13193, 13193], "mapped", [107, 99, 97, 108]], [[13194, 13194], "mapped", [112, 102]], [[13195, 13195], "mapped", [110, 102]], [[13196, 13196], "mapped", [956, 102]], [[13197, 13197], "mapped", [956, 103]], [[13198, 13198], "mapped", [109, 103]], [[13199, 13199], "mapped", [107, 103]], [[13200, 13200], "mapped", [104, 122]], [[13201, 13201], "mapped", [107, 104, 122]], [[13202, 13202], "mapped", [109, 104, 122]], [[13203, 13203], "mapped", [103, 104, 122]], [[13204, 13204], "mapped", [116, 104, 122]], [[13205, 13205], "mapped", [956, 108]], [[13206, 13206], "mapped", [109, 108]], [[13207, 13207], "mapped", [100, 108]], [[13208, 13208], "mapped", [107, 108]], [[13209, 13209], "mapped", [102, 109]], [[13210, 13210], "mapped", [110, 109]], [[13211, 13211], "mapped", [956, 109]], [[13212, 13212], "mapped", [109, 109]], [[13213, 13213], "mapped", [99, 109]], [[13214, 13214], "mapped", [107, 109]], [[13215, 13215], "mapped", [109, 109, 50]], [[13216, 13216], "mapped", [99, 109, 50]], [[13217, 13217], "mapped", [109, 50]], [[13218, 13218], "mapped", [107, 109, 50]], [[13219, 13219], "mapped", [109, 109, 51]], [[13220, 13220], "mapped", [99, 109, 51]], [[13221, 13221], "mapped", [109, 51]], [[13222, 13222], "mapped", [107, 109, 51]], [[13223, 13223], "mapped", [109, 8725, 115]], [[13224, 13224], "mapped", [109, 8725, 115, 50]], [[13225, 13225], "mapped", [112, 97]], [[13226, 13226], "mapped", [107, 112, 97]], [[13227, 13227], "mapped", [109, 112, 97]], [[13228, 13228], "mapped", [103, 112, 97]], [[13229, 13229], "mapped", [114, 97, 100]], [[13230, 13230], "mapped", [114, 97, 100, 8725, 115]], [[13231, 13231], "mapped", [114, 97, 100, 8725, 115, 50]], [[13232, 13232], "mapped", [112, 115]], [[13233, 13233], "mapped", [110, 115]], [[13234, 13234], "mapped", [956, 115]], [[13235, 13235], "mapped", [109, 115]], [[13236, 13236], "mapped", [112, 118]], [[13237, 13237], "mapped", [110, 118]], [[13238, 13238], "mapped", [956, 118]], [[13239, 13239], "mapped", [109, 118]], [[13240, 13240], "mapped", [107, 118]], [[13241, 13241], "mapped", [109, 118]], [[13242, 13242], "mapped", [112, 119]], [[13243, 13243], "mapped", [110, 119]], [[13244, 13244], "mapped", [956, 119]], [[13245, 13245], "mapped", [109, 119]], [[13246, 13246], "mapped", [107, 119]], [[13247, 13247], "mapped", [109, 119]], [[13248, 13248], "mapped", [107, 969]], [[13249, 13249], "mapped", [109, 969]], [[13250, 13250], "disallowed"], [[13251, 13251], "mapped", [98, 113]], [[13252, 13252], "mapped", [99, 99]], [[13253, 13253], "mapped", [99, 100]], [[13254, 13254], "mapped", [99, 8725, 107, 103]], [[13255, 13255], "disallowed"], [[13256, 13256], "mapped", [100, 98]], [[13257, 13257], "mapped", [103, 121]], [[13258, 13258], "mapped", [104, 97]], [[13259, 13259], "mapped", [104, 112]], [[13260, 13260], "mapped", [105, 110]], [[13261, 13261], "mapped", [107, 107]], [[13262, 13262], "mapped", [107, 109]], [[13263, 13263], "mapped", [107, 116]], [[13264, 13264], "mapped", [108, 109]], [[13265, 13265], "mapped", [108, 110]], [[13266, 13266], "mapped", [108, 111, 103]], [[13267, 13267], "mapped", [108, 120]], [[13268, 13268], "mapped", [109, 98]], [[13269, 13269], "mapped", [109, 105, 108]], [[13270, 13270], "mapped", [109, 111, 108]], [[13271, 13271], "mapped", [112, 104]], [[13272, 13272], "disallowed"], [[13273, 13273], "mapped", [112, 112, 109]], [[13274, 13274], "mapped", [112, 114]], [[13275, 13275], "mapped", [115, 114]], [[13276, 13276], "mapped", [115, 118]], [[13277, 13277], "mapped", [119, 98]], [[13278, 13278], "mapped", [118, 8725, 109]], [[13279, 13279], "mapped", [97, 8725, 109]], [[13280, 13280], "mapped", [49, 26085]], [[13281, 13281], "mapped", [50, 26085]], [[13282, 13282], "mapped", [51, 26085]], [[13283, 13283], "mapped", [52, 26085]], [[13284, 13284], "mapped", [53, 26085]], [[13285, 13285], "mapped", [54, 26085]], [[13286, 13286], "mapped", [55, 26085]], [[13287, 13287], "mapped", [56, 26085]], [[13288, 13288], "mapped", [57, 26085]], [[13289, 13289], "mapped", [49, 48, 26085]], [[13290, 13290], "mapped", [49, 49, 26085]], [[13291, 13291], "mapped", [49, 50, 26085]], [[13292, 13292], "mapped", [49, 51, 26085]], [[13293, 13293], "mapped", [49, 52, 26085]], [[13294, 13294], "mapped", [49, 53, 26085]], [[13295, 13295], "mapped", [49, 54, 26085]], [[13296, 13296], "mapped", [49, 55, 26085]], [[13297, 13297], "mapped", [49, 56, 26085]], [[13298, 13298], "mapped", [49, 57, 26085]], [[13299, 13299], "mapped", [50, 48, 26085]], [[13300, 13300], "mapped", [50, 49, 26085]], [[13301, 13301], "mapped", [50, 50, 26085]], [[13302, 13302], "mapped", [50, 51, 26085]], [[13303, 13303], "mapped", [50, 52, 26085]], [[13304, 13304], "mapped", [50, 53, 26085]], [[13305, 13305], "mapped", [50, 54, 26085]], [[13306, 13306], "mapped", [50, 55, 26085]], [[13307, 13307], "mapped", [50, 56, 26085]], [[13308, 13308], "mapped", [50, 57, 26085]], [[13309, 13309], "mapped", [51, 48, 26085]], [[13310, 13310], "mapped", [51, 49, 26085]], [[13311, 13311], "mapped", [103, 97, 108]], [[13312, 19893], "valid"], [[19894, 19903], "disallowed"], [[19904, 19967], "valid", [], "NV8"], [[19968, 40869], "valid"], [[40870, 40891], "valid"], [[40892, 40899], "valid"], [[40900, 40907], "valid"], [[40908, 40908], "valid"], [[40909, 40917], "valid"], [[40918, 40959], "disallowed"], [[40960, 42124], "valid"], [[42125, 42127], "disallowed"], [[42128, 42145], "valid", [], "NV8"], [[42146, 42147], "valid", [], "NV8"], [[42148, 42163], "valid", [], "NV8"], [[42164, 42164], "valid", [], "NV8"], [[42165, 42176], "valid", [], "NV8"], [[42177, 42177], "valid", [], "NV8"], [[42178, 42180], "valid", [], "NV8"], [[42181, 42181], "valid", [], "NV8"], [[42182, 42182], "valid", [], "NV8"], [[42183, 42191], "disallowed"], [[42192, 42237], "valid"], [[42238, 42239], "valid", [], "NV8"], [[42240, 42508], "valid"], [[42509, 42511], "valid", [], "NV8"], [[42512, 42539], "valid"], [[42540, 42559], "disallowed"], [[42560, 42560], "mapped", [42561]], [[42561, 42561], "valid"], [[42562, 42562], "mapped", [42563]], [[42563, 42563], "valid"], [[42564, 42564], "mapped", [42565]], [[42565, 42565], "valid"], [[42566, 42566], "mapped", [42567]], [[42567, 42567], "valid"], [[42568, 42568], "mapped", [42569]], [[42569, 42569], "valid"], [[42570, 42570], "mapped", [42571]], [[42571, 42571], "valid"], [[42572, 42572], "mapped", [42573]], [[42573, 42573], "valid"], [[42574, 42574], "mapped", [42575]], [[42575, 42575], "valid"], [[42576, 42576], "mapped", [42577]], [[42577, 42577], "valid"], [[42578, 42578], "mapped", [42579]], [[42579, 42579], "valid"], [[42580, 42580], "mapped", [42581]], [[42581, 42581], "valid"], [[42582, 42582], "mapped", [42583]], [[42583, 42583], "valid"], [[42584, 42584], "mapped", [42585]], [[42585, 42585], "valid"], [[42586, 42586], "mapped", [42587]], [[42587, 42587], "valid"], [[42588, 42588], "mapped", [42589]], [[42589, 42589], "valid"], [[42590, 42590], "mapped", [42591]], [[42591, 42591], "valid"], [[42592, 42592], "mapped", [42593]], [[42593, 42593], "valid"], [[42594, 42594], "mapped", [42595]], [[42595, 42595], "valid"], [[42596, 42596], "mapped", [42597]], [[42597, 42597], "valid"], [[42598, 42598], "mapped", [42599]], [[42599, 42599], "valid"], [[42600, 42600], "mapped", [42601]], [[42601, 42601], "valid"], [[42602, 42602], "mapped", [42603]], [[42603, 42603], "valid"], [[42604, 42604], "mapped", [42605]], [[42605, 42607], "valid"], [[42608, 42611], "valid", [], "NV8"], [[42612, 42619], "valid"], [[42620, 42621], "valid"], [[42622, 42622], "valid", [], "NV8"], [[42623, 42623], "valid"], [[42624, 42624], "mapped", [42625]], [[42625, 42625], "valid"], [[42626, 42626], "mapped", [42627]], [[42627, 42627], "valid"], [[42628, 42628], "mapped", [42629]], [[42629, 42629], "valid"], [[42630, 42630], "mapped", [42631]], [[42631, 42631], "valid"], [[42632, 42632], "mapped", [42633]], [[42633, 42633], "valid"], [[42634, 42634], "mapped", [42635]], [[42635, 42635], "valid"], [[42636, 42636], "mapped", [42637]], [[42637, 42637], "valid"], [[42638, 42638], "mapped", [42639]], [[42639, 42639], "valid"], [[42640, 42640], "mapped", [42641]], [[42641, 42641], "valid"], [[42642, 42642], "mapped", [42643]], [[42643, 42643], "valid"], [[42644, 42644], "mapped", [42645]], [[42645, 42645], "valid"], [[42646, 42646], "mapped", [42647]], [[42647, 42647], "valid"], [[42648, 42648], "mapped", [42649]], [[42649, 42649], "valid"], [[42650, 42650], "mapped", [42651]], [[42651, 42651], "valid"], [[42652, 42652], "mapped", [1098]], [[42653, 42653], "mapped", [1100]], [[42654, 42654], "valid"], [[42655, 42655], "valid"], [[42656, 42725], "valid"], [[42726, 42735], "valid", [], "NV8"], [[42736, 42737], "valid"], [[42738, 42743], "valid", [], "NV8"], [[42744, 42751], "disallowed"], [[42752, 42774], "valid", [], "NV8"], [[42775, 42778], "valid"], [[42779, 42783], "valid"], [[42784, 42785], "valid", [], "NV8"], [[42786, 42786], "mapped", [42787]], [[42787, 42787], "valid"], [[42788, 42788], "mapped", [42789]], [[42789, 42789], "valid"], [[42790, 42790], "mapped", [42791]], [[42791, 42791], "valid"], [[42792, 42792], "mapped", [42793]], [[42793, 42793], "valid"], [[42794, 42794], "mapped", [42795]], [[42795, 42795], "valid"], [[42796, 42796], "mapped", [42797]], [[42797, 42797], "valid"], [[42798, 42798], "mapped", [42799]], [[42799, 42801], "valid"], [[42802, 42802], "mapped", [42803]], [[42803, 42803], "valid"], [[42804, 42804], "mapped", [42805]], [[42805, 42805], "valid"], [[42806, 42806], "mapped", [42807]], [[42807, 42807], "valid"], [[42808, 42808], "mapped", [42809]], [[42809, 42809], "valid"], [[42810, 42810], "mapped", [42811]], [[42811, 42811], "valid"], [[42812, 42812], "mapped", [42813]], [[42813, 42813], "valid"], [[42814, 42814], "mapped", [42815]], [[42815, 42815], "valid"], [[42816, 42816], "mapped", [42817]], [[42817, 42817], "valid"], [[42818, 42818], "mapped", [42819]], [[42819, 42819], "valid"], [[42820, 42820], "mapped", [42821]], [[42821, 42821], "valid"], [[42822, 42822], "mapped", [42823]], [[42823, 42823], "valid"], [[42824, 42824], "mapped", [42825]], [[42825, 42825], "valid"], [[42826, 42826], "mapped", [42827]], [[42827, 42827], "valid"], [[42828, 42828], "mapped", [42829]], [[42829, 42829], "valid"], [[42830, 42830], "mapped", [42831]], [[42831, 42831], "valid"], [[42832, 42832], "mapped", [42833]], [[42833, 42833], "valid"], [[42834, 42834], "mapped", [42835]], [[42835, 42835], "valid"], [[42836, 42836], "mapped", [42837]], [[42837, 42837], "valid"], [[42838, 42838], "mapped", [42839]], [[42839, 42839], "valid"], [[42840, 42840], "mapped", [42841]], [[42841, 42841], "valid"], [[42842, 42842], "mapped", [42843]], [[42843, 42843], "valid"], [[42844, 42844], "mapped", [42845]], [[42845, 42845], "valid"], [[42846, 42846], "mapped", [42847]], [[42847, 42847], "valid"], [[42848, 42848], "mapped", [42849]], [[42849, 42849], "valid"], [[42850, 42850], "mapped", [42851]], [[42851, 42851], "valid"], [[42852, 42852], "mapped", [42853]], [[42853, 42853], "valid"], [[42854, 42854], "mapped", [42855]], [[42855, 42855], "valid"], [[42856, 42856], "mapped", [42857]], [[42857, 42857], "valid"], [[42858, 42858], "mapped", [42859]], [[42859, 42859], "valid"], [[42860, 42860], "mapped", [42861]], [[42861, 42861], "valid"], [[42862, 42862], "mapped", [42863]], [[42863, 42863], "valid"], [[42864, 42864], "mapped", [42863]], [[42865, 42872], "valid"], [[42873, 42873], "mapped", [42874]], [[42874, 42874], "valid"], [[42875, 42875], "mapped", [42876]], [[42876, 42876], "valid"], [[42877, 42877], "mapped", [7545]], [[42878, 42878], "mapped", [42879]], [[42879, 42879], "valid"], [[42880, 42880], "mapped", [42881]], [[42881, 42881], "valid"], [[42882, 42882], "mapped", [42883]], [[42883, 42883], "valid"], [[42884, 42884], "mapped", [42885]], [[42885, 42885], "valid"], [[42886, 42886], "mapped", [42887]], [[42887, 42888], "valid"], [[42889, 42890], "valid", [], "NV8"], [[42891, 42891], "mapped", [42892]], [[42892, 42892], "valid"], [[42893, 42893], "mapped", [613]], [[42894, 42894], "valid"], [[42895, 42895], "valid"], [[42896, 42896], "mapped", [42897]], [[42897, 42897], "valid"], [[42898, 42898], "mapped", [42899]], [[42899, 42899], "valid"], [[42900, 42901], "valid"], [[42902, 42902], "mapped", [42903]], [[42903, 42903], "valid"], [[42904, 42904], "mapped", [42905]], [[42905, 42905], "valid"], [[42906, 42906], "mapped", [42907]], [[42907, 42907], "valid"], [[42908, 42908], "mapped", [42909]], [[42909, 42909], "valid"], [[42910, 42910], "mapped", [42911]], [[42911, 42911], "valid"], [[42912, 42912], "mapped", [42913]], [[42913, 42913], "valid"], [[42914, 42914], "mapped", [42915]], [[42915, 42915], "valid"], [[42916, 42916], "mapped", [42917]], [[42917, 42917], "valid"], [[42918, 42918], "mapped", [42919]], [[42919, 42919], "valid"], [[42920, 42920], "mapped", [42921]], [[42921, 42921], "valid"], [[42922, 42922], "mapped", [614]], [[42923, 42923], "mapped", [604]], [[42924, 42924], "mapped", [609]], [[42925, 42925], "mapped", [620]], [[42926, 42927], "disallowed"], [[42928, 42928], "mapped", [670]], [[42929, 42929], "mapped", [647]], [[42930, 42930], "mapped", [669]], [[42931, 42931], "mapped", [43859]], [[42932, 42932], "mapped", [42933]], [[42933, 42933], "valid"], [[42934, 42934], "mapped", [42935]], [[42935, 42935], "valid"], [[42936, 42998], "disallowed"], [[42999, 42999], "valid"], [[43e3, 43e3], "mapped", [295]], [[43001, 43001], "mapped", [339]], [[43002, 43002], "valid"], [[43003, 43007], "valid"], [[43008, 43047], "valid"], [[43048, 43051], "valid", [], "NV8"], [[43052, 43055], "disallowed"], [[43056, 43065], "valid", [], "NV8"], [[43066, 43071], "disallowed"], [[43072, 43123], "valid"], [[43124, 43127], "valid", [], "NV8"], [[43128, 43135], "disallowed"], [[43136, 43204], "valid"], [[43205, 43213], "disallowed"], [[43214, 43215], "valid", [], "NV8"], [[43216, 43225], "valid"], [[43226, 43231], "disallowed"], [[43232, 43255], "valid"], [[43256, 43258], "valid", [], "NV8"], [[43259, 43259], "valid"], [[43260, 43260], "valid", [], "NV8"], [[43261, 43261], "valid"], [[43262, 43263], "disallowed"], [[43264, 43309], "valid"], [[43310, 43311], "valid", [], "NV8"], [[43312, 43347], "valid"], [[43348, 43358], "disallowed"], [[43359, 43359], "valid", [], "NV8"], [[43360, 43388], "valid", [], "NV8"], [[43389, 43391], "disallowed"], [[43392, 43456], "valid"], [[43457, 43469], "valid", [], "NV8"], [[43470, 43470], "disallowed"], [[43471, 43481], "valid"], [[43482, 43485], "disallowed"], [[43486, 43487], "valid", [], "NV8"], [[43488, 43518], "valid"], [[43519, 43519], "disallowed"], [[43520, 43574], "valid"], [[43575, 43583], "disallowed"], [[43584, 43597], "valid"], [[43598, 43599], "disallowed"], [[43600, 43609], "valid"], [[43610, 43611], "disallowed"], [[43612, 43615], "valid", [], "NV8"], [[43616, 43638], "valid"], [[43639, 43641], "valid", [], "NV8"], [[43642, 43643], "valid"], [[43644, 43647], "valid"], [[43648, 43714], "valid"], [[43715, 43738], "disallowed"], [[43739, 43741], "valid"], [[43742, 43743], "valid", [], "NV8"], [[43744, 43759], "valid"], [[43760, 43761], "valid", [], "NV8"], [[43762, 43766], "valid"], [[43767, 43776], "disallowed"], [[43777, 43782], "valid"], [[43783, 43784], "disallowed"], [[43785, 43790], "valid"], [[43791, 43792], "disallowed"], [[43793, 43798], "valid"], [[43799, 43807], "disallowed"], [[43808, 43814], "valid"], [[43815, 43815], "disallowed"], [[43816, 43822], "valid"], [[43823, 43823], "disallowed"], [[43824, 43866], "valid"], [[43867, 43867], "valid", [], "NV8"], [[43868, 43868], "mapped", [42791]], [[43869, 43869], "mapped", [43831]], [[43870, 43870], "mapped", [619]], [[43871, 43871], "mapped", [43858]], [[43872, 43875], "valid"], [[43876, 43877], "valid"], [[43878, 43887], "disallowed"], [[43888, 43888], "mapped", [5024]], [[43889, 43889], "mapped", [5025]], [[43890, 43890], "mapped", [5026]], [[43891, 43891], "mapped", [5027]], [[43892, 43892], "mapped", [5028]], [[43893, 43893], "mapped", [5029]], [[43894, 43894], "mapped", [5030]], [[43895, 43895], "mapped", [5031]], [[43896, 43896], "mapped", [5032]], [[43897, 43897], "mapped", [5033]], [[43898, 43898], "mapped", [5034]], [[43899, 43899], "mapped", [5035]], [[43900, 43900], "mapped", [5036]], [[43901, 43901], "mapped", [5037]], [[43902, 43902], "mapped", [5038]], [[43903, 43903], "mapped", [5039]], [[43904, 43904], "mapped", [5040]], [[43905, 43905], "mapped", [5041]], [[43906, 43906], "mapped", [5042]], [[43907, 43907], "mapped", [5043]], [[43908, 43908], "mapped", [5044]], [[43909, 43909], "mapped", [5045]], [[43910, 43910], "mapped", [5046]], [[43911, 43911], "mapped", [5047]], [[43912, 43912], "mapped", [5048]], [[43913, 43913], "mapped", [5049]], [[43914, 43914], "mapped", [5050]], [[43915, 43915], "mapped", [5051]], [[43916, 43916], "mapped", [5052]], [[43917, 43917], "mapped", [5053]], [[43918, 43918], "mapped", [5054]], [[43919, 43919], "mapped", [5055]], [[43920, 43920], "mapped", [5056]], [[43921, 43921], "mapped", [5057]], [[43922, 43922], "mapped", [5058]], [[43923, 43923], "mapped", [5059]], [[43924, 43924], "mapped", [5060]], [[43925, 43925], "mapped", [5061]], [[43926, 43926], "mapped", [5062]], [[43927, 43927], "mapped", [5063]], [[43928, 43928], "mapped", [5064]], [[43929, 43929], "mapped", [5065]], [[43930, 43930], "mapped", [5066]], [[43931, 43931], "mapped", [5067]], [[43932, 43932], "mapped", [5068]], [[43933, 43933], "mapped", [5069]], [[43934, 43934], "mapped", [5070]], [[43935, 43935], "mapped", [5071]], [[43936, 43936], "mapped", [5072]], [[43937, 43937], "mapped", [5073]], [[43938, 43938], "mapped", [5074]], [[43939, 43939], "mapped", [5075]], [[43940, 43940], "mapped", [5076]], [[43941, 43941], "mapped", [5077]], [[43942, 43942], "mapped", [5078]], [[43943, 43943], "mapped", [5079]], [[43944, 43944], "mapped", [5080]], [[43945, 43945], "mapped", [5081]], [[43946, 43946], "mapped", [5082]], [[43947, 43947], "mapped", [5083]], [[43948, 43948], "mapped", [5084]], [[43949, 43949], "mapped", [5085]], [[43950, 43950], "mapped", [5086]], [[43951, 43951], "mapped", [5087]], [[43952, 43952], "mapped", [5088]], [[43953, 43953], "mapped", [5089]], [[43954, 43954], "mapped", [5090]], [[43955, 43955], "mapped", [5091]], [[43956, 43956], "mapped", [5092]], [[43957, 43957], "mapped", [5093]], [[43958, 43958], "mapped", [5094]], [[43959, 43959], "mapped", [5095]], [[43960, 43960], "mapped", [5096]], [[43961, 43961], "mapped", [5097]], [[43962, 43962], "mapped", [5098]], [[43963, 43963], "mapped", [5099]], [[43964, 43964], "mapped", [5100]], [[43965, 43965], "mapped", [5101]], [[43966, 43966], "mapped", [5102]], [[43967, 43967], "mapped", [5103]], [[43968, 44010], "valid"], [[44011, 44011], "valid", [], "NV8"], [[44012, 44013], "valid"], [[44014, 44015], "disallowed"], [[44016, 44025], "valid"], [[44026, 44031], "disallowed"], [[44032, 55203], "valid"], [[55204, 55215], "disallowed"], [[55216, 55238], "valid", [], "NV8"], [[55239, 55242], "disallowed"], [[55243, 55291], "valid", [], "NV8"], [[55292, 55295], "disallowed"], [[55296, 57343], "disallowed"], [[57344, 63743], "disallowed"], [[63744, 63744], "mapped", [35912]], [[63745, 63745], "mapped", [26356]], [[63746, 63746], "mapped", [36554]], [[63747, 63747], "mapped", [36040]], [[63748, 63748], "mapped", [28369]], [[63749, 63749], "mapped", [20018]], [[63750, 63750], "mapped", [21477]], [[63751, 63752], "mapped", [40860]], [[63753, 63753], "mapped", [22865]], [[63754, 63754], "mapped", [37329]], [[63755, 63755], "mapped", [21895]], [[63756, 63756], "mapped", [22856]], [[63757, 63757], "mapped", [25078]], [[63758, 63758], "mapped", [30313]], [[63759, 63759], "mapped", [32645]], [[63760, 63760], "mapped", [34367]], [[63761, 63761], "mapped", [34746]], [[63762, 63762], "mapped", [35064]], [[63763, 63763], "mapped", [37007]], [[63764, 63764], "mapped", [27138]], [[63765, 63765], "mapped", [27931]], [[63766, 63766], "mapped", [28889]], [[63767, 63767], "mapped", [29662]], [[63768, 63768], "mapped", [33853]], [[63769, 63769], "mapped", [37226]], [[63770, 63770], "mapped", [39409]], [[63771, 63771], "mapped", [20098]], [[63772, 63772], "mapped", [21365]], [[63773, 63773], "mapped", [27396]], [[63774, 63774], "mapped", [29211]], [[63775, 63775], "mapped", [34349]], [[63776, 63776], "mapped", [40478]], [[63777, 63777], "mapped", [23888]], [[63778, 63778], "mapped", [28651]], [[63779, 63779], "mapped", [34253]], [[63780, 63780], "mapped", [35172]], [[63781, 63781], "mapped", [25289]], [[63782, 63782], "mapped", [33240]], [[63783, 63783], "mapped", [34847]], [[63784, 63784], "mapped", [24266]], [[63785, 63785], "mapped", [26391]], [[63786, 63786], "mapped", [28010]], [[63787, 63787], "mapped", [29436]], [[63788, 63788], "mapped", [37070]], [[63789, 63789], "mapped", [20358]], [[63790, 63790], "mapped", [20919]], [[63791, 63791], "mapped", [21214]], [[63792, 63792], "mapped", [25796]], [[63793, 63793], "mapped", [27347]], [[63794, 63794], "mapped", [29200]], [[63795, 63795], "mapped", [30439]], [[63796, 63796], "mapped", [32769]], [[63797, 63797], "mapped", [34310]], [[63798, 63798], "mapped", [34396]], [[63799, 63799], "mapped", [36335]], [[63800, 63800], "mapped", [38706]], [[63801, 63801], "mapped", [39791]], [[63802, 63802], "mapped", [40442]], [[63803, 63803], "mapped", [30860]], [[63804, 63804], "mapped", [31103]], [[63805, 63805], "mapped", [32160]], [[63806, 63806], "mapped", [33737]], [[63807, 63807], "mapped", [37636]], [[63808, 63808], "mapped", [40575]], [[63809, 63809], "mapped", [35542]], [[63810, 63810], "mapped", [22751]], [[63811, 63811], "mapped", [24324]], [[63812, 63812], "mapped", [31840]], [[63813, 63813], "mapped", [32894]], [[63814, 63814], "mapped", [29282]], [[63815, 63815], "mapped", [30922]], [[63816, 63816], "mapped", [36034]], [[63817, 63817], "mapped", [38647]], [[63818, 63818], "mapped", [22744]], [[63819, 63819], "mapped", [23650]], [[63820, 63820], "mapped", [27155]], [[63821, 63821], "mapped", [28122]], [[63822, 63822], "mapped", [28431]], [[63823, 63823], "mapped", [32047]], [[63824, 63824], "mapped", [32311]], [[63825, 63825], "mapped", [38475]], [[63826, 63826], "mapped", [21202]], [[63827, 63827], "mapped", [32907]], [[63828, 63828], "mapped", [20956]], [[63829, 63829], "mapped", [20940]], [[63830, 63830], "mapped", [31260]], [[63831, 63831], "mapped", [32190]], [[63832, 63832], "mapped", [33777]], [[63833, 63833], "mapped", [38517]], [[63834, 63834], "mapped", [35712]], [[63835, 63835], "mapped", [25295]], [[63836, 63836], "mapped", [27138]], [[63837, 63837], "mapped", [35582]], [[63838, 63838], "mapped", [20025]], [[63839, 63839], "mapped", [23527]], [[63840, 63840], "mapped", [24594]], [[63841, 63841], "mapped", [29575]], [[63842, 63842], "mapped", [30064]], [[63843, 63843], "mapped", [21271]], [[63844, 63844], "mapped", [30971]], [[63845, 63845], "mapped", [20415]], [[63846, 63846], "mapped", [24489]], [[63847, 63847], "mapped", [19981]], [[63848, 63848], "mapped", [27852]], [[63849, 63849], "mapped", [25976]], [[63850, 63850], "mapped", [32034]], [[63851, 63851], "mapped", [21443]], [[63852, 63852], "mapped", [22622]], [[63853, 63853], "mapped", [30465]], [[63854, 63854], "mapped", [33865]], [[63855, 63855], "mapped", [35498]], [[63856, 63856], "mapped", [27578]], [[63857, 63857], "mapped", [36784]], [[63858, 63858], "mapped", [27784]], [[63859, 63859], "mapped", [25342]], [[63860, 63860], "mapped", [33509]], [[63861, 63861], "mapped", [25504]], [[63862, 63862], "mapped", [30053]], [[63863, 63863], "mapped", [20142]], [[63864, 63864], "mapped", [20841]], [[63865, 63865], "mapped", [20937]], [[63866, 63866], "mapped", [26753]], [[63867, 63867], "mapped", [31975]], [[63868, 63868], "mapped", [33391]], [[63869, 63869], "mapped", [35538]], [[63870, 63870], "mapped", [37327]], [[63871, 63871], "mapped", [21237]], [[63872, 63872], "mapped", [21570]], [[63873, 63873], "mapped", [22899]], [[63874, 63874], "mapped", [24300]], [[63875, 63875], "mapped", [26053]], [[63876, 63876], "mapped", [28670]], [[63877, 63877], "mapped", [31018]], [[63878, 63878], "mapped", [38317]], [[63879, 63879], "mapped", [39530]], [[63880, 63880], "mapped", [40599]], [[63881, 63881], "mapped", [40654]], [[63882, 63882], "mapped", [21147]], [[63883, 63883], "mapped", [26310]], [[63884, 63884], "mapped", [27511]], [[63885, 63885], "mapped", [36706]], [[63886, 63886], "mapped", [24180]], [[63887, 63887], "mapped", [24976]], [[63888, 63888], "mapped", [25088]], [[63889, 63889], "mapped", [25754]], [[63890, 63890], "mapped", [28451]], [[63891, 63891], "mapped", [29001]], [[63892, 63892], "mapped", [29833]], [[63893, 63893], "mapped", [31178]], [[63894, 63894], "mapped", [32244]], [[63895, 63895], "mapped", [32879]], [[63896, 63896], "mapped", [36646]], [[63897, 63897], "mapped", [34030]], [[63898, 63898], "mapped", [36899]], [[63899, 63899], "mapped", [37706]], [[63900, 63900], "mapped", [21015]], [[63901, 63901], "mapped", [21155]], [[63902, 63902], "mapped", [21693]], [[63903, 63903], "mapped", [28872]], [[63904, 63904], "mapped", [35010]], [[63905, 63905], "mapped", [35498]], [[63906, 63906], "mapped", [24265]], [[63907, 63907], "mapped", [24565]], [[63908, 63908], "mapped", [25467]], [[63909, 63909], "mapped", [27566]], [[63910, 63910], "mapped", [31806]], [[63911, 63911], "mapped", [29557]], [[63912, 63912], "mapped", [20196]], [[63913, 63913], "mapped", [22265]], [[63914, 63914], "mapped", [23527]], [[63915, 63915], "mapped", [23994]], [[63916, 63916], "mapped", [24604]], [[63917, 63917], "mapped", [29618]], [[63918, 63918], "mapped", [29801]], [[63919, 63919], "mapped", [32666]], [[63920, 63920], "mapped", [32838]], [[63921, 63921], "mapped", [37428]], [[63922, 63922], "mapped", [38646]], [[63923, 63923], "mapped", [38728]], [[63924, 63924], "mapped", [38936]], [[63925, 63925], "mapped", [20363]], [[63926, 63926], "mapped", [31150]], [[63927, 63927], "mapped", [37300]], [[63928, 63928], "mapped", [38584]], [[63929, 63929], "mapped", [24801]], [[63930, 63930], "mapped", [20102]], [[63931, 63931], "mapped", [20698]], [[63932, 63932], "mapped", [23534]], [[63933, 63933], "mapped", [23615]], [[63934, 63934], "mapped", [26009]], [[63935, 63935], "mapped", [27138]], [[63936, 63936], "mapped", [29134]], [[63937, 63937], "mapped", [30274]], [[63938, 63938], "mapped", [34044]], [[63939, 63939], "mapped", [36988]], [[63940, 63940], "mapped", [40845]], [[63941, 63941], "mapped", [26248]], [[63942, 63942], "mapped", [38446]], [[63943, 63943], "mapped", [21129]], [[63944, 63944], "mapped", [26491]], [[63945, 63945], "mapped", [26611]], [[63946, 63946], "mapped", [27969]], [[63947, 63947], "mapped", [28316]], [[63948, 63948], "mapped", [29705]], [[63949, 63949], "mapped", [30041]], [[63950, 63950], "mapped", [30827]], [[63951, 63951], "mapped", [32016]], [[63952, 63952], "mapped", [39006]], [[63953, 63953], "mapped", [20845]], [[63954, 63954], "mapped", [25134]], [[63955, 63955], "mapped", [38520]], [[63956, 63956], "mapped", [20523]], [[63957, 63957], "mapped", [23833]], [[63958, 63958], "mapped", [28138]], [[63959, 63959], "mapped", [36650]], [[63960, 63960], "mapped", [24459]], [[63961, 63961], "mapped", [24900]], [[63962, 63962], "mapped", [26647]], [[63963, 63963], "mapped", [29575]], [[63964, 63964], "mapped", [38534]], [[63965, 63965], "mapped", [21033]], [[63966, 63966], "mapped", [21519]], [[63967, 63967], "mapped", [23653]], [[63968, 63968], "mapped", [26131]], [[63969, 63969], "mapped", [26446]], [[63970, 63970], "mapped", [26792]], [[63971, 63971], "mapped", [27877]], [[63972, 63972], "mapped", [29702]], [[63973, 63973], "mapped", [30178]], [[63974, 63974], "mapped", [32633]], [[63975, 63975], "mapped", [35023]], [[63976, 63976], "mapped", [35041]], [[63977, 63977], "mapped", [37324]], [[63978, 63978], "mapped", [38626]], [[63979, 63979], "mapped", [21311]], [[63980, 63980], "mapped", [28346]], [[63981, 63981], "mapped", [21533]], [[63982, 63982], "mapped", [29136]], [[63983, 63983], "mapped", [29848]], [[63984, 63984], "mapped", [34298]], [[63985, 63985], "mapped", [38563]], [[63986, 63986], "mapped", [40023]], [[63987, 63987], "mapped", [40607]], [[63988, 63988], "mapped", [26519]], [[63989, 63989], "mapped", [28107]], [[63990, 63990], "mapped", [33256]], [[63991, 63991], "mapped", [31435]], [[63992, 63992], "mapped", [31520]], [[63993, 63993], "mapped", [31890]], [[63994, 63994], "mapped", [29376]], [[63995, 63995], "mapped", [28825]], [[63996, 63996], "mapped", [35672]], [[63997, 63997], "mapped", [20160]], [[63998, 63998], "mapped", [33590]], [[63999, 63999], "mapped", [21050]], [[64e3, 64e3], "mapped", [20999]], [[64001, 64001], "mapped", [24230]], [[64002, 64002], "mapped", [25299]], [[64003, 64003], "mapped", [31958]], [[64004, 64004], "mapped", [23429]], [[64005, 64005], "mapped", [27934]], [[64006, 64006], "mapped", [26292]], [[64007, 64007], "mapped", [36667]], [[64008, 64008], "mapped", [34892]], [[64009, 64009], "mapped", [38477]], [[64010, 64010], "mapped", [35211]], [[64011, 64011], "mapped", [24275]], [[64012, 64012], "mapped", [20800]], [[64013, 64013], "mapped", [21952]], [[64014, 64015], "valid"], [[64016, 64016], "mapped", [22618]], [[64017, 64017], "valid"], [[64018, 64018], "mapped", [26228]], [[64019, 64020], "valid"], [[64021, 64021], "mapped", [20958]], [[64022, 64022], "mapped", [29482]], [[64023, 64023], "mapped", [30410]], [[64024, 64024], "mapped", [31036]], [[64025, 64025], "mapped", [31070]], [[64026, 64026], "mapped", [31077]], [[64027, 64027], "mapped", [31119]], [[64028, 64028], "mapped", [38742]], [[64029, 64029], "mapped", [31934]], [[64030, 64030], "mapped", [32701]], [[64031, 64031], "valid"], [[64032, 64032], "mapped", [34322]], [[64033, 64033], "valid"], [[64034, 64034], "mapped", [35576]], [[64035, 64036], "valid"], [[64037, 64037], "mapped", [36920]], [[64038, 64038], "mapped", [37117]], [[64039, 64041], "valid"], [[64042, 64042], "mapped", [39151]], [[64043, 64043], "mapped", [39164]], [[64044, 64044], "mapped", [39208]], [[64045, 64045], "mapped", [40372]], [[64046, 64046], "mapped", [37086]], [[64047, 64047], "mapped", [38583]], [[64048, 64048], "mapped", [20398]], [[64049, 64049], "mapped", [20711]], [[64050, 64050], "mapped", [20813]], [[64051, 64051], "mapped", [21193]], [[64052, 64052], "mapped", [21220]], [[64053, 64053], "mapped", [21329]], [[64054, 64054], "mapped", [21917]], [[64055, 64055], "mapped", [22022]], [[64056, 64056], "mapped", [22120]], [[64057, 64057], "mapped", [22592]], [[64058, 64058], "mapped", [22696]], [[64059, 64059], "mapped", [23652]], [[64060, 64060], "mapped", [23662]], [[64061, 64061], "mapped", [24724]], [[64062, 64062], "mapped", [24936]], [[64063, 64063], "mapped", [24974]], [[64064, 64064], "mapped", [25074]], [[64065, 64065], "mapped", [25935]], [[64066, 64066], "mapped", [26082]], [[64067, 64067], "mapped", [26257]], [[64068, 64068], "mapped", [26757]], [[64069, 64069], "mapped", [28023]], [[64070, 64070], "mapped", [28186]], [[64071, 64071], "mapped", [28450]], [[64072, 64072], "mapped", [29038]], [[64073, 64073], "mapped", [29227]], [[64074, 64074], "mapped", [29730]], [[64075, 64075], "mapped", [30865]], [[64076, 64076], "mapped", [31038]], [[64077, 64077], "mapped", [31049]], [[64078, 64078], "mapped", [31048]], [[64079, 64079], "mapped", [31056]], [[64080, 64080], "mapped", [31062]], [[64081, 64081], "mapped", [31069]], [[64082, 64082], "mapped", [31117]], [[64083, 64083], "mapped", [31118]], [[64084, 64084], "mapped", [31296]], [[64085, 64085], "mapped", [31361]], [[64086, 64086], "mapped", [31680]], [[64087, 64087], "mapped", [32244]], [[64088, 64088], "mapped", [32265]], [[64089, 64089], "mapped", [32321]], [[64090, 64090], "mapped", [32626]], [[64091, 64091], "mapped", [32773]], [[64092, 64092], "mapped", [33261]], [[64093, 64094], "mapped", [33401]], [[64095, 64095], "mapped", [33879]], [[64096, 64096], "mapped", [35088]], [[64097, 64097], "mapped", [35222]], [[64098, 64098], "mapped", [35585]], [[64099, 64099], "mapped", [35641]], [[64100, 64100], "mapped", [36051]], [[64101, 64101], "mapped", [36104]], [[64102, 64102], "mapped", [36790]], [[64103, 64103], "mapped", [36920]], [[64104, 64104], "mapped", [38627]], [[64105, 64105], "mapped", [38911]], [[64106, 64106], "mapped", [38971]], [[64107, 64107], "mapped", [24693]], [[64108, 64108], "mapped", [148206]], [[64109, 64109], "mapped", [33304]], [[64110, 64111], "disallowed"], [[64112, 64112], "mapped", [20006]], [[64113, 64113], "mapped", [20917]], [[64114, 64114], "mapped", [20840]], [[64115, 64115], "mapped", [20352]], [[64116, 64116], "mapped", [20805]], [[64117, 64117], "mapped", [20864]], [[64118, 64118], "mapped", [21191]], [[64119, 64119], "mapped", [21242]], [[64120, 64120], "mapped", [21917]], [[64121, 64121], "mapped", [21845]], [[64122, 64122], "mapped", [21913]], [[64123, 64123], "mapped", [21986]], [[64124, 64124], "mapped", [22618]], [[64125, 64125], "mapped", [22707]], [[64126, 64126], "mapped", [22852]], [[64127, 64127], "mapped", [22868]], [[64128, 64128], "mapped", [23138]], [[64129, 64129], "mapped", [23336]], [[64130, 64130], "mapped", [24274]], [[64131, 64131], "mapped", [24281]], [[64132, 64132], "mapped", [24425]], [[64133, 64133], "mapped", [24493]], [[64134, 64134], "mapped", [24792]], [[64135, 64135], "mapped", [24910]], [[64136, 64136], "mapped", [24840]], [[64137, 64137], "mapped", [24974]], [[64138, 64138], "mapped", [24928]], [[64139, 64139], "mapped", [25074]], [[64140, 64140], "mapped", [25140]], [[64141, 64141], "mapped", [25540]], [[64142, 64142], "mapped", [25628]], [[64143, 64143], "mapped", [25682]], [[64144, 64144], "mapped", [25942]], [[64145, 64145], "mapped", [26228]], [[64146, 64146], "mapped", [26391]], [[64147, 64147], "mapped", [26395]], [[64148, 64148], "mapped", [26454]], [[64149, 64149], "mapped", [27513]], [[64150, 64150], "mapped", [27578]], [[64151, 64151], "mapped", [27969]], [[64152, 64152], "mapped", [28379]], [[64153, 64153], "mapped", [28363]], [[64154, 64154], "mapped", [28450]], [[64155, 64155], "mapped", [28702]], [[64156, 64156], "mapped", [29038]], [[64157, 64157], "mapped", [30631]], [[64158, 64158], "mapped", [29237]], [[64159, 64159], "mapped", [29359]], [[64160, 64160], "mapped", [29482]], [[64161, 64161], "mapped", [29809]], [[64162, 64162], "mapped", [29958]], [[64163, 64163], "mapped", [30011]], [[64164, 64164], "mapped", [30237]], [[64165, 64165], "mapped", [30239]], [[64166, 64166], "mapped", [30410]], [[64167, 64167], "mapped", [30427]], [[64168, 64168], "mapped", [30452]], [[64169, 64169], "mapped", [30538]], [[64170, 64170], "mapped", [30528]], [[64171, 64171], "mapped", [30924]], [[64172, 64172], "mapped", [31409]], [[64173, 64173], "mapped", [31680]], [[64174, 64174], "mapped", [31867]], [[64175, 64175], "mapped", [32091]], [[64176, 64176], "mapped", [32244]], [[64177, 64177], "mapped", [32574]], [[64178, 64178], "mapped", [32773]], [[64179, 64179], "mapped", [33618]], [[64180, 64180], "mapped", [33775]], [[64181, 64181], "mapped", [34681]], [[64182, 64182], "mapped", [35137]], [[64183, 64183], "mapped", [35206]], [[64184, 64184], "mapped", [35222]], [[64185, 64185], "mapped", [35519]], [[64186, 64186], "mapped", [35576]], [[64187, 64187], "mapped", [35531]], [[64188, 64188], "mapped", [35585]], [[64189, 64189], "mapped", [35582]], [[64190, 64190], "mapped", [35565]], [[64191, 64191], "mapped", [35641]], [[64192, 64192], "mapped", [35722]], [[64193, 64193], "mapped", [36104]], [[64194, 64194], "mapped", [36664]], [[64195, 64195], "mapped", [36978]], [[64196, 64196], "mapped", [37273]], [[64197, 64197], "mapped", [37494]], [[64198, 64198], "mapped", [38524]], [[64199, 64199], "mapped", [38627]], [[64200, 64200], "mapped", [38742]], [[64201, 64201], "mapped", [38875]], [[64202, 64202], "mapped", [38911]], [[64203, 64203], "mapped", [38923]], [[64204, 64204], "mapped", [38971]], [[64205, 64205], "mapped", [39698]], [[64206, 64206], "mapped", [40860]], [[64207, 64207], "mapped", [141386]], [[64208, 64208], "mapped", [141380]], [[64209, 64209], "mapped", [144341]], [[64210, 64210], "mapped", [15261]], [[64211, 64211], "mapped", [16408]], [[64212, 64212], "mapped", [16441]], [[64213, 64213], "mapped", [152137]], [[64214, 64214], "mapped", [154832]], [[64215, 64215], "mapped", [163539]], [[64216, 64216], "mapped", [40771]], [[64217, 64217], "mapped", [40846]], [[64218, 64255], "disallowed"], [[64256, 64256], "mapped", [102, 102]], [[64257, 64257], "mapped", [102, 105]], [[64258, 64258], "mapped", [102, 108]], [[64259, 64259], "mapped", [102, 102, 105]], [[64260, 64260], "mapped", [102, 102, 108]], [[64261, 64262], "mapped", [115, 116]], [[64263, 64274], "disallowed"], [[64275, 64275], "mapped", [1396, 1398]], [[64276, 64276], "mapped", [1396, 1381]], [[64277, 64277], "mapped", [1396, 1387]], [[64278, 64278], "mapped", [1406, 1398]], [[64279, 64279], "mapped", [1396, 1389]], [[64280, 64284], "disallowed"], [[64285, 64285], "mapped", [1497, 1460]], [[64286, 64286], "valid"], [[64287, 64287], "mapped", [1522, 1463]], [[64288, 64288], "mapped", [1506]], [[64289, 64289], "mapped", [1488]], [[64290, 64290], "mapped", [1491]], [[64291, 64291], "mapped", [1492]], [[64292, 64292], "mapped", [1499]], [[64293, 64293], "mapped", [1500]], [[64294, 64294], "mapped", [1501]], [[64295, 64295], "mapped", [1512]], [[64296, 64296], "mapped", [1514]], [[64297, 64297], "disallowed_STD3_mapped", [43]], [[64298, 64298], "mapped", [1513, 1473]], [[64299, 64299], "mapped", [1513, 1474]], [[64300, 64300], "mapped", [1513, 1468, 1473]], [[64301, 64301], "mapped", [1513, 1468, 1474]], [[64302, 64302], "mapped", [1488, 1463]], [[64303, 64303], "mapped", [1488, 1464]], [[64304, 64304], "mapped", [1488, 1468]], [[64305, 64305], "mapped", [1489, 1468]], [[64306, 64306], "mapped", [1490, 1468]], [[64307, 64307], "mapped", [1491, 1468]], [[64308, 64308], "mapped", [1492, 1468]], [[64309, 64309], "mapped", [1493, 1468]], [[64310, 64310], "mapped", [1494, 1468]], [[64311, 64311], "disallowed"], [[64312, 64312], "mapped", [1496, 1468]], [[64313, 64313], "mapped", [1497, 1468]], [[64314, 64314], "mapped", [1498, 1468]], [[64315, 64315], "mapped", [1499, 1468]], [[64316, 64316], "mapped", [1500, 1468]], [[64317, 64317], "disallowed"], [[64318, 64318], "mapped", [1502, 1468]], [[64319, 64319], "disallowed"], [[64320, 64320], "mapped", [1504, 1468]], [[64321, 64321], "mapped", [1505, 1468]], [[64322, 64322], "disallowed"], [[64323, 64323], "mapped", [1507, 1468]], [[64324, 64324], "mapped", [1508, 1468]], [[64325, 64325], "disallowed"], [[64326, 64326], "mapped", [1510, 1468]], [[64327, 64327], "mapped", [1511, 1468]], [[64328, 64328], "mapped", [1512, 1468]], [[64329, 64329], "mapped", [1513, 1468]], [[64330, 64330], "mapped", [1514, 1468]], [[64331, 64331], "mapped", [1493, 1465]], [[64332, 64332], "mapped", [1489, 1471]], [[64333, 64333], "mapped", [1499, 1471]], [[64334, 64334], "mapped", [1508, 1471]], [[64335, 64335], "mapped", [1488, 1500]], [[64336, 64337], "mapped", [1649]], [[64338, 64341], "mapped", [1659]], [[64342, 64345], "mapped", [1662]], [[64346, 64349], "mapped", [1664]], [[64350, 64353], "mapped", [1658]], [[64354, 64357], "mapped", [1663]], [[64358, 64361], "mapped", [1657]], [[64362, 64365], "mapped", [1700]], [[64366, 64369], "mapped", [1702]], [[64370, 64373], "mapped", [1668]], [[64374, 64377], "mapped", [1667]], [[64378, 64381], "mapped", [1670]], [[64382, 64385], "mapped", [1671]], [[64386, 64387], "mapped", [1677]], [[64388, 64389], "mapped", [1676]], [[64390, 64391], "mapped", [1678]], [[64392, 64393], "mapped", [1672]], [[64394, 64395], "mapped", [1688]], [[64396, 64397], "mapped", [1681]], [[64398, 64401], "mapped", [1705]], [[64402, 64405], "mapped", [1711]], [[64406, 64409], "mapped", [1715]], [[64410, 64413], "mapped", [1713]], [[64414, 64415], "mapped", [1722]], [[64416, 64419], "mapped", [1723]], [[64420, 64421], "mapped", [1728]], [[64422, 64425], "mapped", [1729]], [[64426, 64429], "mapped", [1726]], [[64430, 64431], "mapped", [1746]], [[64432, 64433], "mapped", [1747]], [[64434, 64449], "valid", [], "NV8"], [[64450, 64466], "disallowed"], [[64467, 64470], "mapped", [1709]], [[64471, 64472], "mapped", [1735]], [[64473, 64474], "mapped", [1734]], [[64475, 64476], "mapped", [1736]], [[64477, 64477], "mapped", [1735, 1652]], [[64478, 64479], "mapped", [1739]], [[64480, 64481], "mapped", [1733]], [[64482, 64483], "mapped", [1737]], [[64484, 64487], "mapped", [1744]], [[64488, 64489], "mapped", [1609]], [[64490, 64491], "mapped", [1574, 1575]], [[64492, 64493], "mapped", [1574, 1749]], [[64494, 64495], "mapped", [1574, 1608]], [[64496, 64497], "mapped", [1574, 1735]], [[64498, 64499], "mapped", [1574, 1734]], [[64500, 64501], "mapped", [1574, 1736]], [[64502, 64504], "mapped", [1574, 1744]], [[64505, 64507], "mapped", [1574, 1609]], [[64508, 64511], "mapped", [1740]], [[64512, 64512], "mapped", [1574, 1580]], [[64513, 64513], "mapped", [1574, 1581]], [[64514, 64514], "mapped", [1574, 1605]], [[64515, 64515], "mapped", [1574, 1609]], [[64516, 64516], "mapped", [1574, 1610]], [[64517, 64517], "mapped", [1576, 1580]], [[64518, 64518], "mapped", [1576, 1581]], [[64519, 64519], "mapped", [1576, 1582]], [[64520, 64520], "mapped", [1576, 1605]], [[64521, 64521], "mapped", [1576, 1609]], [[64522, 64522], "mapped", [1576, 1610]], [[64523, 64523], "mapped", [1578, 1580]], [[64524, 64524], "mapped", [1578, 1581]], [[64525, 64525], "mapped", [1578, 1582]], [[64526, 64526], "mapped", [1578, 1605]], [[64527, 64527], "mapped", [1578, 1609]], [[64528, 64528], "mapped", [1578, 1610]], [[64529, 64529], "mapped", [1579, 1580]], [[64530, 64530], "mapped", [1579, 1605]], [[64531, 64531], "mapped", [1579, 1609]], [[64532, 64532], "mapped", [1579, 1610]], [[64533, 64533], "mapped", [1580, 1581]], [[64534, 64534], "mapped", [1580, 1605]], [[64535, 64535], "mapped", [1581, 1580]], [[64536, 64536], "mapped", [1581, 1605]], [[64537, 64537], "mapped", [1582, 1580]], [[64538, 64538], "mapped", [1582, 1581]], [[64539, 64539], "mapped", [1582, 1605]], [[64540, 64540], "mapped", [1587, 1580]], [[64541, 64541], "mapped", [1587, 1581]], [[64542, 64542], "mapped", [1587, 1582]], [[64543, 64543], "mapped", [1587, 1605]], [[64544, 64544], "mapped", [1589, 1581]], [[64545, 64545], "mapped", [1589, 1605]], [[64546, 64546], "mapped", [1590, 1580]], [[64547, 64547], "mapped", [1590, 1581]], [[64548, 64548], "mapped", [1590, 1582]], [[64549, 64549], "mapped", [1590, 1605]], [[64550, 64550], "mapped", [1591, 1581]], [[64551, 64551], "mapped", [1591, 1605]], [[64552, 64552], "mapped", [1592, 1605]], [[64553, 64553], "mapped", [1593, 1580]], [[64554, 64554], "mapped", [1593, 1605]], [[64555, 64555], "mapped", [1594, 1580]], [[64556, 64556], "mapped", [1594, 1605]], [[64557, 64557], "mapped", [1601, 1580]], [[64558, 64558], "mapped", [1601, 1581]], [[64559, 64559], "mapped", [1601, 1582]], [[64560, 64560], "mapped", [1601, 1605]], [[64561, 64561], "mapped", [1601, 1609]], [[64562, 64562], "mapped", [1601, 1610]], [[64563, 64563], "mapped", [1602, 1581]], [[64564, 64564], "mapped", [1602, 1605]], [[64565, 64565], "mapped", [1602, 1609]], [[64566, 64566], "mapped", [1602, 1610]], [[64567, 64567], "mapped", [1603, 1575]], [[64568, 64568], "mapped", [1603, 1580]], [[64569, 64569], "mapped", [1603, 1581]], [[64570, 64570], "mapped", [1603, 1582]], [[64571, 64571], "mapped", [1603, 1604]], [[64572, 64572], "mapped", [1603, 1605]], [[64573, 64573], "mapped", [1603, 1609]], [[64574, 64574], "mapped", [1603, 1610]], [[64575, 64575], "mapped", [1604, 1580]], [[64576, 64576], "mapped", [1604, 1581]], [[64577, 64577], "mapped", [1604, 1582]], [[64578, 64578], "mapped", [1604, 1605]], [[64579, 64579], "mapped", [1604, 1609]], [[64580, 64580], "mapped", [1604, 1610]], [[64581, 64581], "mapped", [1605, 1580]], [[64582, 64582], "mapped", [1605, 1581]], [[64583, 64583], "mapped", [1605, 1582]], [[64584, 64584], "mapped", [1605, 1605]], [[64585, 64585], "mapped", [1605, 1609]], [[64586, 64586], "mapped", [1605, 1610]], [[64587, 64587], "mapped", [1606, 1580]], [[64588, 64588], "mapped", [1606, 1581]], [[64589, 64589], "mapped", [1606, 1582]], [[64590, 64590], "mapped", [1606, 1605]], [[64591, 64591], "mapped", [1606, 1609]], [[64592, 64592], "mapped", [1606, 1610]], [[64593, 64593], "mapped", [1607, 1580]], [[64594, 64594], "mapped", [1607, 1605]], [[64595, 64595], "mapped", [1607, 1609]], [[64596, 64596], "mapped", [1607, 1610]], [[64597, 64597], "mapped", [1610, 1580]], [[64598, 64598], "mapped", [1610, 1581]], [[64599, 64599], "mapped", [1610, 1582]], [[64600, 64600], "mapped", [1610, 1605]], [[64601, 64601], "mapped", [1610, 1609]], [[64602, 64602], "mapped", [1610, 1610]], [[64603, 64603], "mapped", [1584, 1648]], [[64604, 64604], "mapped", [1585, 1648]], [[64605, 64605], "mapped", [1609, 1648]], [[64606, 64606], "disallowed_STD3_mapped", [32, 1612, 1617]], [[64607, 64607], "disallowed_STD3_mapped", [32, 1613, 1617]], [[64608, 64608], "disallowed_STD3_mapped", [32, 1614, 1617]], [[64609, 64609], "disallowed_STD3_mapped", [32, 1615, 1617]], [[64610, 64610], "disallowed_STD3_mapped", [32, 1616, 1617]], [[64611, 64611], "disallowed_STD3_mapped", [32, 1617, 1648]], [[64612, 64612], "mapped", [1574, 1585]], [[64613, 64613], "mapped", [1574, 1586]], [[64614, 64614], "mapped", [1574, 1605]], [[64615, 64615], "mapped", [1574, 1606]], [[64616, 64616], "mapped", [1574, 1609]], [[64617, 64617], "mapped", [1574, 1610]], [[64618, 64618], "mapped", [1576, 1585]], [[64619, 64619], "mapped", [1576, 1586]], [[64620, 64620], "mapped", [1576, 1605]], [[64621, 64621], "mapped", [1576, 1606]], [[64622, 64622], "mapped", [1576, 1609]], [[64623, 64623], "mapped", [1576, 1610]], [[64624, 64624], "mapped", [1578, 1585]], [[64625, 64625], "mapped", [1578, 1586]], [[64626, 64626], "mapped", [1578, 1605]], [[64627, 64627], "mapped", [1578, 1606]], [[64628, 64628], "mapped", [1578, 1609]], [[64629, 64629], "mapped", [1578, 1610]], [[64630, 64630], "mapped", [1579, 1585]], [[64631, 64631], "mapped", [1579, 1586]], [[64632, 64632], "mapped", [1579, 1605]], [[64633, 64633], "mapped", [1579, 1606]], [[64634, 64634], "mapped", [1579, 1609]], [[64635, 64635], "mapped", [1579, 1610]], [[64636, 64636], "mapped", [1601, 1609]], [[64637, 64637], "mapped", [1601, 1610]], [[64638, 64638], "mapped", [1602, 1609]], [[64639, 64639], "mapped", [1602, 1610]], [[64640, 64640], "mapped", [1603, 1575]], [[64641, 64641], "mapped", [1603, 1604]], [[64642, 64642], "mapped", [1603, 1605]], [[64643, 64643], "mapped", [1603, 1609]], [[64644, 64644], "mapped", [1603, 1610]], [[64645, 64645], "mapped", [1604, 1605]], [[64646, 64646], "mapped", [1604, 1609]], [[64647, 64647], "mapped", [1604, 1610]], [[64648, 64648], "mapped", [1605, 1575]], [[64649, 64649], "mapped", [1605, 1605]], [[64650, 64650], "mapped", [1606, 1585]], [[64651, 64651], "mapped", [1606, 1586]], [[64652, 64652], "mapped", [1606, 1605]], [[64653, 64653], "mapped", [1606, 1606]], [[64654, 64654], "mapped", [1606, 1609]], [[64655, 64655], "mapped", [1606, 1610]], [[64656, 64656], "mapped", [1609, 1648]], [[64657, 64657], "mapped", [1610, 1585]], [[64658, 64658], "mapped", [1610, 1586]], [[64659, 64659], "mapped", [1610, 1605]], [[64660, 64660], "mapped", [1610, 1606]], [[64661, 64661], "mapped", [1610, 1609]], [[64662, 64662], "mapped", [1610, 1610]], [[64663, 64663], "mapped", [1574, 1580]], [[64664, 64664], "mapped", [1574, 1581]], [[64665, 64665], "mapped", [1574, 1582]], [[64666, 64666], "mapped", [1574, 1605]], [[64667, 64667], "mapped", [1574, 1607]], [[64668, 64668], "mapped", [1576, 1580]], [[64669, 64669], "mapped", [1576, 1581]], [[64670, 64670], "mapped", [1576, 1582]], [[64671, 64671], "mapped", [1576, 1605]], [[64672, 64672], "mapped", [1576, 1607]], [[64673, 64673], "mapped", [1578, 1580]], [[64674, 64674], "mapped", [1578, 1581]], [[64675, 64675], "mapped", [1578, 1582]], [[64676, 64676], "mapped", [1578, 1605]], [[64677, 64677], "mapped", [1578, 1607]], [[64678, 64678], "mapped", [1579, 1605]], [[64679, 64679], "mapped", [1580, 1581]], [[64680, 64680], "mapped", [1580, 1605]], [[64681, 64681], "mapped", [1581, 1580]], [[64682, 64682], "mapped", [1581, 1605]], [[64683, 64683], "mapped", [1582, 1580]], [[64684, 64684], "mapped", [1582, 1605]], [[64685, 64685], "mapped", [1587, 1580]], [[64686, 64686], "mapped", [1587, 1581]], [[64687, 64687], "mapped", [1587, 1582]], [[64688, 64688], "mapped", [1587, 1605]], [[64689, 64689], "mapped", [1589, 1581]], [[64690, 64690], "mapped", [1589, 1582]], [[64691, 64691], "mapped", [1589, 1605]], [[64692, 64692], "mapped", [1590, 1580]], [[64693, 64693], "mapped", [1590, 1581]], [[64694, 64694], "mapped", [1590, 1582]], [[64695, 64695], "mapped", [1590, 1605]], [[64696, 64696], "mapped", [1591, 1581]], [[64697, 64697], "mapped", [1592, 1605]], [[64698, 64698], "mapped", [1593, 1580]], [[64699, 64699], "mapped", [1593, 1605]], [[64700, 64700], "mapped", [1594, 1580]], [[64701, 64701], "mapped", [1594, 1605]], [[64702, 64702], "mapped", [1601, 1580]], [[64703, 64703], "mapped", [1601, 1581]], [[64704, 64704], "mapped", [1601, 1582]], [[64705, 64705], "mapped", [1601, 1605]], [[64706, 64706], "mapped", [1602, 1581]], [[64707, 64707], "mapped", [1602, 1605]], [[64708, 64708], "mapped", [1603, 1580]], [[64709, 64709], "mapped", [1603, 1581]], [[64710, 64710], "mapped", [1603, 1582]], [[64711, 64711], "mapped", [1603, 1604]], [[64712, 64712], "mapped", [1603, 1605]], [[64713, 64713], "mapped", [1604, 1580]], [[64714, 64714], "mapped", [1604, 1581]], [[64715, 64715], "mapped", [1604, 1582]], [[64716, 64716], "mapped", [1604, 1605]], [[64717, 64717], "mapped", [1604, 1607]], [[64718, 64718], "mapped", [1605, 1580]], [[64719, 64719], "mapped", [1605, 1581]], [[64720, 64720], "mapped", [1605, 1582]], [[64721, 64721], "mapped", [1605, 1605]], [[64722, 64722], "mapped", [1606, 1580]], [[64723, 64723], "mapped", [1606, 1581]], [[64724, 64724], "mapped", [1606, 1582]], [[64725, 64725], "mapped", [1606, 1605]], [[64726, 64726], "mapped", [1606, 1607]], [[64727, 64727], "mapped", [1607, 1580]], [[64728, 64728], "mapped", [1607, 1605]], [[64729, 64729], "mapped", [1607, 1648]], [[64730, 64730], "mapped", [1610, 1580]], [[64731, 64731], "mapped", [1610, 1581]], [[64732, 64732], "mapped", [1610, 1582]], [[64733, 64733], "mapped", [1610, 1605]], [[64734, 64734], "mapped", [1610, 1607]], [[64735, 64735], "mapped", [1574, 1605]], [[64736, 64736], "mapped", [1574, 1607]], [[64737, 64737], "mapped", [1576, 1605]], [[64738, 64738], "mapped", [1576, 1607]], [[64739, 64739], "mapped", [1578, 1605]], [[64740, 64740], "mapped", [1578, 1607]], [[64741, 64741], "mapped", [1579, 1605]], [[64742, 64742], "mapped", [1579, 1607]], [[64743, 64743], "mapped", [1587, 1605]], [[64744, 64744], "mapped", [1587, 1607]], [[64745, 64745], "mapped", [1588, 1605]], [[64746, 64746], "mapped", [1588, 1607]], [[64747, 64747], "mapped", [1603, 1604]], [[64748, 64748], "mapped", [1603, 1605]], [[64749, 64749], "mapped", [1604, 1605]], [[64750, 64750], "mapped", [1606, 1605]], [[64751, 64751], "mapped", [1606, 1607]], [[64752, 64752], "mapped", [1610, 1605]], [[64753, 64753], "mapped", [1610, 1607]], [[64754, 64754], "mapped", [1600, 1614, 1617]], [[64755, 64755], "mapped", [1600, 1615, 1617]], [[64756, 64756], "mapped", [1600, 1616, 1617]], [[64757, 64757], "mapped", [1591, 1609]], [[64758, 64758], "mapped", [1591, 1610]], [[64759, 64759], "mapped", [1593, 1609]], [[64760, 64760], "mapped", [1593, 1610]], [[64761, 64761], "mapped", [1594, 1609]], [[64762, 64762], "mapped", [1594, 1610]], [[64763, 64763], "mapped", [1587, 1609]], [[64764, 64764], "mapped", [1587, 1610]], [[64765, 64765], "mapped", [1588, 1609]], [[64766, 64766], "mapped", [1588, 1610]], [[64767, 64767], "mapped", [1581, 1609]], [[64768, 64768], "mapped", [1581, 1610]], [[64769, 64769], "mapped", [1580, 1609]], [[64770, 64770], "mapped", [1580, 1610]], [[64771, 64771], "mapped", [1582, 1609]], [[64772, 64772], "mapped", [1582, 1610]], [[64773, 64773], "mapped", [1589, 1609]], [[64774, 64774], "mapped", [1589, 1610]], [[64775, 64775], "mapped", [1590, 1609]], [[64776, 64776], "mapped", [1590, 1610]], [[64777, 64777], "mapped", [1588, 1580]], [[64778, 64778], "mapped", [1588, 1581]], [[64779, 64779], "mapped", [1588, 1582]], [[64780, 64780], "mapped", [1588, 1605]], [[64781, 64781], "mapped", [1588, 1585]], [[64782, 64782], "mapped", [1587, 1585]], [[64783, 64783], "mapped", [1589, 1585]], [[64784, 64784], "mapped", [1590, 1585]], [[64785, 64785], "mapped", [1591, 1609]], [[64786, 64786], "mapped", [1591, 1610]], [[64787, 64787], "mapped", [1593, 1609]], [[64788, 64788], "mapped", [1593, 1610]], [[64789, 64789], "mapped", [1594, 1609]], [[64790, 64790], "mapped", [1594, 1610]], [[64791, 64791], "mapped", [1587, 1609]], [[64792, 64792], "mapped", [1587, 1610]], [[64793, 64793], "mapped", [1588, 1609]], [[64794, 64794], "mapped", [1588, 1610]], [[64795, 64795], "mapped", [1581, 1609]], [[64796, 64796], "mapped", [1581, 1610]], [[64797, 64797], "mapped", [1580, 1609]], [[64798, 64798], "mapped", [1580, 1610]], [[64799, 64799], "mapped", [1582, 1609]], [[64800, 64800], "mapped", [1582, 1610]], [[64801, 64801], "mapped", [1589, 1609]], [[64802, 64802], "mapped", [1589, 1610]], [[64803, 64803], "mapped", [1590, 1609]], [[64804, 64804], "mapped", [1590, 1610]], [[64805, 64805], "mapped", [1588, 1580]], [[64806, 64806], "mapped", [1588, 1581]], [[64807, 64807], "mapped", [1588, 1582]], [[64808, 64808], "mapped", [1588, 1605]], [[64809, 64809], "mapped", [1588, 1585]], [[64810, 64810], "mapped", [1587, 1585]], [[64811, 64811], "mapped", [1589, 1585]], [[64812, 64812], "mapped", [1590, 1585]], [[64813, 64813], "mapped", [1588, 1580]], [[64814, 64814], "mapped", [1588, 1581]], [[64815, 64815], "mapped", [1588, 1582]], [[64816, 64816], "mapped", [1588, 1605]], [[64817, 64817], "mapped", [1587, 1607]], [[64818, 64818], "mapped", [1588, 1607]], [[64819, 64819], "mapped", [1591, 1605]], [[64820, 64820], "mapped", [1587, 1580]], [[64821, 64821], "mapped", [1587, 1581]], [[64822, 64822], "mapped", [1587, 1582]], [[64823, 64823], "mapped", [1588, 1580]], [[64824, 64824], "mapped", [1588, 1581]], [[64825, 64825], "mapped", [1588, 1582]], [[64826, 64826], "mapped", [1591, 1605]], [[64827, 64827], "mapped", [1592, 1605]], [[64828, 64829], "mapped", [1575, 1611]], [[64830, 64831], "valid", [], "NV8"], [[64832, 64847], "disallowed"], [[64848, 64848], "mapped", [1578, 1580, 1605]], [[64849, 64850], "mapped", [1578, 1581, 1580]], [[64851, 64851], "mapped", [1578, 1581, 1605]], [[64852, 64852], "mapped", [1578, 1582, 1605]], [[64853, 64853], "mapped", [1578, 1605, 1580]], [[64854, 64854], "mapped", [1578, 1605, 1581]], [[64855, 64855], "mapped", [1578, 1605, 1582]], [[64856, 64857], "mapped", [1580, 1605, 1581]], [[64858, 64858], "mapped", [1581, 1605, 1610]], [[64859, 64859], "mapped", [1581, 1605, 1609]], [[64860, 64860], "mapped", [1587, 1581, 1580]], [[64861, 64861], "mapped", [1587, 1580, 1581]], [[64862, 64862], "mapped", [1587, 1580, 1609]], [[64863, 64864], "mapped", [1587, 1605, 1581]], [[64865, 64865], "mapped", [1587, 1605, 1580]], [[64866, 64867], "mapped", [1587, 1605, 1605]], [[64868, 64869], "mapped", [1589, 1581, 1581]], [[64870, 64870], "mapped", [1589, 1605, 1605]], [[64871, 64872], "mapped", [1588, 1581, 1605]], [[64873, 64873], "mapped", [1588, 1580, 1610]], [[64874, 64875], "mapped", [1588, 1605, 1582]], [[64876, 64877], "mapped", [1588, 1605, 1605]], [[64878, 64878], "mapped", [1590, 1581, 1609]], [[64879, 64880], "mapped", [1590, 1582, 1605]], [[64881, 64882], "mapped", [1591, 1605, 1581]], [[64883, 64883], "mapped", [1591, 1605, 1605]], [[64884, 64884], "mapped", [1591, 1605, 1610]], [[64885, 64885], "mapped", [1593, 1580, 1605]], [[64886, 64887], "mapped", [1593, 1605, 1605]], [[64888, 64888], "mapped", [1593, 1605, 1609]], [[64889, 64889], "mapped", [1594, 1605, 1605]], [[64890, 64890], "mapped", [1594, 1605, 1610]], [[64891, 64891], "mapped", [1594, 1605, 1609]], [[64892, 64893], "mapped", [1601, 1582, 1605]], [[64894, 64894], "mapped", [1602, 1605, 1581]], [[64895, 64895], "mapped", [1602, 1605, 1605]], [[64896, 64896], "mapped", [1604, 1581, 1605]], [[64897, 64897], "mapped", [1604, 1581, 1610]], [[64898, 64898], "mapped", [1604, 1581, 1609]], [[64899, 64900], "mapped", [1604, 1580, 1580]], [[64901, 64902], "mapped", [1604, 1582, 1605]], [[64903, 64904], "mapped", [1604, 1605, 1581]], [[64905, 64905], "mapped", [1605, 1581, 1580]], [[64906, 64906], "mapped", [1605, 1581, 1605]], [[64907, 64907], "mapped", [1605, 1581, 1610]], [[64908, 64908], "mapped", [1605, 1580, 1581]], [[64909, 64909], "mapped", [1605, 1580, 1605]], [[64910, 64910], "mapped", [1605, 1582, 1580]], [[64911, 64911], "mapped", [1605, 1582, 1605]], [[64912, 64913], "disallowed"], [[64914, 64914], "mapped", [1605, 1580, 1582]], [[64915, 64915], "mapped", [1607, 1605, 1580]], [[64916, 64916], "mapped", [1607, 1605, 1605]], [[64917, 64917], "mapped", [1606, 1581, 1605]], [[64918, 64918], "mapped", [1606, 1581, 1609]], [[64919, 64920], "mapped", [1606, 1580, 1605]], [[64921, 64921], "mapped", [1606, 1580, 1609]], [[64922, 64922], "mapped", [1606, 1605, 1610]], [[64923, 64923], "mapped", [1606, 1605, 1609]], [[64924, 64925], "mapped", [1610, 1605, 1605]], [[64926, 64926], "mapped", [1576, 1582, 1610]], [[64927, 64927], "mapped", [1578, 1580, 1610]], [[64928, 64928], "mapped", [1578, 1580, 1609]], [[64929, 64929], "mapped", [1578, 1582, 1610]], [[64930, 64930], "mapped", [1578, 1582, 1609]], [[64931, 64931], "mapped", [1578, 1605, 1610]], [[64932, 64932], "mapped", [1578, 1605, 1609]], [[64933, 64933], "mapped", [1580, 1605, 1610]], [[64934, 64934], "mapped", [1580, 1581, 1609]], [[64935, 64935], "mapped", [1580, 1605, 1609]], [[64936, 64936], "mapped", [1587, 1582, 1609]], [[64937, 64937], "mapped", [1589, 1581, 1610]], [[64938, 64938], "mapped", [1588, 1581, 1610]], [[64939, 64939], "mapped", [1590, 1581, 1610]], [[64940, 64940], "mapped", [1604, 1580, 1610]], [[64941, 64941], "mapped", [1604, 1605, 1610]], [[64942, 64942], "mapped", [1610, 1581, 1610]], [[64943, 64943], "mapped", [1610, 1580, 1610]], [[64944, 64944], "mapped", [1610, 1605, 1610]], [[64945, 64945], "mapped", [1605, 1605, 1610]], [[64946, 64946], "mapped", [1602, 1605, 1610]], [[64947, 64947], "mapped", [1606, 1581, 1610]], [[64948, 64948], "mapped", [1602, 1605, 1581]], [[64949, 64949], "mapped", [1604, 1581, 1605]], [[64950, 64950], "mapped", [1593, 1605, 1610]], [[64951, 64951], "mapped", [1603, 1605, 1610]], [[64952, 64952], "mapped", [1606, 1580, 1581]], [[64953, 64953], "mapped", [1605, 1582, 1610]], [[64954, 64954], "mapped", [1604, 1580, 1605]], [[64955, 64955], "mapped", [1603, 1605, 1605]], [[64956, 64956], "mapped", [1604, 1580, 1605]], [[64957, 64957], "mapped", [1606, 1580, 1581]], [[64958, 64958], "mapped", [1580, 1581, 1610]], [[64959, 64959], "mapped", [1581, 1580, 1610]], [[64960, 64960], "mapped", [1605, 1580, 1610]], [[64961, 64961], "mapped", [1601, 1605, 1610]], [[64962, 64962], "mapped", [1576, 1581, 1610]], [[64963, 64963], "mapped", [1603, 1605, 1605]], [[64964, 64964], "mapped", [1593, 1580, 1605]], [[64965, 64965], "mapped", [1589, 1605, 1605]], [[64966, 64966], "mapped", [1587, 1582, 1610]], [[64967, 64967], "mapped", [1606, 1580, 1610]], [[64968, 64975], "disallowed"], [[64976, 65007], "disallowed"], [[65008, 65008], "mapped", [1589, 1604, 1746]], [[65009, 65009], "mapped", [1602, 1604, 1746]], [[65010, 65010], "mapped", [1575, 1604, 1604, 1607]], [[65011, 65011], "mapped", [1575, 1603, 1576, 1585]], [[65012, 65012], "mapped", [1605, 1581, 1605, 1583]], [[65013, 65013], "mapped", [1589, 1604, 1593, 1605]], [[65014, 65014], "mapped", [1585, 1587, 1608, 1604]], [[65015, 65015], "mapped", [1593, 1604, 1610, 1607]], [[65016, 65016], "mapped", [1608, 1587, 1604, 1605]], [[65017, 65017], "mapped", [1589, 1604, 1609]], [[65018, 65018], "disallowed_STD3_mapped", [1589, 1604, 1609, 32, 1575, 1604, 1604, 1607, 32, 1593, 1604, 1610, 1607, 32, 1608, 1587, 1604, 1605]], [[65019, 65019], "disallowed_STD3_mapped", [1580, 1604, 32, 1580, 1604, 1575, 1604, 1607]], [[65020, 65020], "mapped", [1585, 1740, 1575, 1604]], [[65021, 65021], "valid", [], "NV8"], [[65022, 65023], "disallowed"], [[65024, 65039], "ignored"], [[65040, 65040], "disallowed_STD3_mapped", [44]], [[65041, 65041], "mapped", [12289]], [[65042, 65042], "disallowed"], [[65043, 65043], "disallowed_STD3_mapped", [58]], [[65044, 65044], "disallowed_STD3_mapped", [59]], [[65045, 65045], "disallowed_STD3_mapped", [33]], [[65046, 65046], "disallowed_STD3_mapped", [63]], [[65047, 65047], "mapped", [12310]], [[65048, 65048], "mapped", [12311]], [[65049, 65049], "disallowed"], [[65050, 65055], "disallowed"], [[65056, 65059], "valid"], [[65060, 65062], "valid"], [[65063, 65069], "valid"], [[65070, 65071], "valid"], [[65072, 65072], "disallowed"], [[65073, 65073], "mapped", [8212]], [[65074, 65074], "mapped", [8211]], [[65075, 65076], "disallowed_STD3_mapped", [95]], [[65077, 65077], "disallowed_STD3_mapped", [40]], [[65078, 65078], "disallowed_STD3_mapped", [41]], [[65079, 65079], "disallowed_STD3_mapped", [123]], [[65080, 65080], "disallowed_STD3_mapped", [125]], [[65081, 65081], "mapped", [12308]], [[65082, 65082], "mapped", [12309]], [[65083, 65083], "mapped", [12304]], [[65084, 65084], "mapped", [12305]], [[65085, 65085], "mapped", [12298]], [[65086, 65086], "mapped", [12299]], [[65087, 65087], "mapped", [12296]], [[65088, 65088], "mapped", [12297]], [[65089, 65089], "mapped", [12300]], [[65090, 65090], "mapped", [12301]], [[65091, 65091], "mapped", [12302]], [[65092, 65092], "mapped", [12303]], [[65093, 65094], "valid", [], "NV8"], [[65095, 65095], "disallowed_STD3_mapped", [91]], [[65096, 65096], "disallowed_STD3_mapped", [93]], [[65097, 65100], "disallowed_STD3_mapped", [32, 773]], [[65101, 65103], "disallowed_STD3_mapped", [95]], [[65104, 65104], "disallowed_STD3_mapped", [44]], [[65105, 65105], "mapped", [12289]], [[65106, 65106], "disallowed"], [[65107, 65107], "disallowed"], [[65108, 65108], "disallowed_STD3_mapped", [59]], [[65109, 65109], "disallowed_STD3_mapped", [58]], [[65110, 65110], "disallowed_STD3_mapped", [63]], [[65111, 65111], "disallowed_STD3_mapped", [33]], [[65112, 65112], "mapped", [8212]], [[65113, 65113], "disallowed_STD3_mapped", [40]], [[65114, 65114], "disallowed_STD3_mapped", [41]], [[65115, 65115], "disallowed_STD3_mapped", [123]], [[65116, 65116], "disallowed_STD3_mapped", [125]], [[65117, 65117], "mapped", [12308]], [[65118, 65118], "mapped", [12309]], [[65119, 65119], "disallowed_STD3_mapped", [35]], [[65120, 65120], "disallowed_STD3_mapped", [38]], [[65121, 65121], "disallowed_STD3_mapped", [42]], [[65122, 65122], "disallowed_STD3_mapped", [43]], [[65123, 65123], "mapped", [45]], [[65124, 65124], "disallowed_STD3_mapped", [60]], [[65125, 65125], "disallowed_STD3_mapped", [62]], [[65126, 65126], "disallowed_STD3_mapped", [61]], [[65127, 65127], "disallowed"], [[65128, 65128], "disallowed_STD3_mapped", [92]], [[65129, 65129], "disallowed_STD3_mapped", [36]], [[65130, 65130], "disallowed_STD3_mapped", [37]], [[65131, 65131], "disallowed_STD3_mapped", [64]], [[65132, 65135], "disallowed"], [[65136, 65136], "disallowed_STD3_mapped", [32, 1611]], [[65137, 65137], "mapped", [1600, 1611]], [[65138, 65138], "disallowed_STD3_mapped", [32, 1612]], [[65139, 65139], "valid"], [[65140, 65140], "disallowed_STD3_mapped", [32, 1613]], [[65141, 65141], "disallowed"], [[65142, 65142], "disallowed_STD3_mapped", [32, 1614]], [[65143, 65143], "mapped", [1600, 1614]], [[65144, 65144], "disallowed_STD3_mapped", [32, 1615]], [[65145, 65145], "mapped", [1600, 1615]], [[65146, 65146], "disallowed_STD3_mapped", [32, 1616]], [[65147, 65147], "mapped", [1600, 1616]], [[65148, 65148], "disallowed_STD3_mapped", [32, 1617]], [[65149, 65149], "mapped", [1600, 1617]], [[65150, 65150], "disallowed_STD3_mapped", [32, 1618]], [[65151, 65151], "mapped", [1600, 1618]], [[65152, 65152], "mapped", [1569]], [[65153, 65154], "mapped", [1570]], [[65155, 65156], "mapped", [1571]], [[65157, 65158], "mapped", [1572]], [[65159, 65160], "mapped", [1573]], [[65161, 65164], "mapped", [1574]], [[65165, 65166], "mapped", [1575]], [[65167, 65170], "mapped", [1576]], [[65171, 65172], "mapped", [1577]], [[65173, 65176], "mapped", [1578]], [[65177, 65180], "mapped", [1579]], [[65181, 65184], "mapped", [1580]], [[65185, 65188], "mapped", [1581]], [[65189, 65192], "mapped", [1582]], [[65193, 65194], "mapped", [1583]], [[65195, 65196], "mapped", [1584]], [[65197, 65198], "mapped", [1585]], [[65199, 65200], "mapped", [1586]], [[65201, 65204], "mapped", [1587]], [[65205, 65208], "mapped", [1588]], [[65209, 65212], "mapped", [1589]], [[65213, 65216], "mapped", [1590]], [[65217, 65220], "mapped", [1591]], [[65221, 65224], "mapped", [1592]], [[65225, 65228], "mapped", [1593]], [[65229, 65232], "mapped", [1594]], [[65233, 65236], "mapped", [1601]], [[65237, 65240], "mapped", [1602]], [[65241, 65244], "mapped", [1603]], [[65245, 65248], "mapped", [1604]], [[65249, 65252], "mapped", [1605]], [[65253, 65256], "mapped", [1606]], [[65257, 65260], "mapped", [1607]], [[65261, 65262], "mapped", [1608]], [[65263, 65264], "mapped", [1609]], [[65265, 65268], "mapped", [1610]], [[65269, 65270], "mapped", [1604, 1570]], [[65271, 65272], "mapped", [1604, 1571]], [[65273, 65274], "mapped", [1604, 1573]], [[65275, 65276], "mapped", [1604, 1575]], [[65277, 65278], "disallowed"], [[65279, 65279], "ignored"], [[65280, 65280], "disallowed"], [[65281, 65281], "disallowed_STD3_mapped", [33]], [[65282, 65282], "disallowed_STD3_mapped", [34]], [[65283, 65283], "disallowed_STD3_mapped", [35]], [[65284, 65284], "disallowed_STD3_mapped", [36]], [[65285, 65285], "disallowed_STD3_mapped", [37]], [[65286, 65286], "disallowed_STD3_mapped", [38]], [[65287, 65287], "disallowed_STD3_mapped", [39]], [[65288, 65288], "disallowed_STD3_mapped", [40]], [[65289, 65289], "disallowed_STD3_mapped", [41]], [[65290, 65290], "disallowed_STD3_mapped", [42]], [[65291, 65291], "disallowed_STD3_mapped", [43]], [[65292, 65292], "disallowed_STD3_mapped", [44]], [[65293, 65293], "mapped", [45]], [[65294, 65294], "mapped", [46]], [[65295, 65295], "disallowed_STD3_mapped", [47]], [[65296, 65296], "mapped", [48]], [[65297, 65297], "mapped", [49]], [[65298, 65298], "mapped", [50]], [[65299, 65299], "mapped", [51]], [[65300, 65300], "mapped", [52]], [[65301, 65301], "mapped", [53]], [[65302, 65302], "mapped", [54]], [[65303, 65303], "mapped", [55]], [[65304, 65304], "mapped", [56]], [[65305, 65305], "mapped", [57]], [[65306, 65306], "disallowed_STD3_mapped", [58]], [[65307, 65307], "disallowed_STD3_mapped", [59]], [[65308, 65308], "disallowed_STD3_mapped", [60]], [[65309, 65309], "disallowed_STD3_mapped", [61]], [[65310, 65310], "disallowed_STD3_mapped", [62]], [[65311, 65311], "disallowed_STD3_mapped", [63]], [[65312, 65312], "disallowed_STD3_mapped", [64]], [[65313, 65313], "mapped", [97]], [[65314, 65314], "mapped", [98]], [[65315, 65315], "mapped", [99]], [[65316, 65316], "mapped", [100]], [[65317, 65317], "mapped", [101]], [[65318, 65318], "mapped", [102]], [[65319, 65319], "mapped", [103]], [[65320, 65320], "mapped", [104]], [[65321, 65321], "mapped", [105]], [[65322, 65322], "mapped", [106]], [[65323, 65323], "mapped", [107]], [[65324, 65324], "mapped", [108]], [[65325, 65325], "mapped", [109]], [[65326, 65326], "mapped", [110]], [[65327, 65327], "mapped", [111]], [[65328, 65328], "mapped", [112]], [[65329, 65329], "mapped", [113]], [[65330, 65330], "mapped", [114]], [[65331, 65331], "mapped", [115]], [[65332, 65332], "mapped", [116]], [[65333, 65333], "mapped", [117]], [[65334, 65334], "mapped", [118]], [[65335, 65335], "mapped", [119]], [[65336, 65336], "mapped", [120]], [[65337, 65337], "mapped", [121]], [[65338, 65338], "mapped", [122]], [[65339, 65339], "disallowed_STD3_mapped", [91]], [[65340, 65340], "disallowed_STD3_mapped", [92]], [[65341, 65341], "disallowed_STD3_mapped", [93]], [[65342, 65342], "disallowed_STD3_mapped", [94]], [[65343, 65343], "disallowed_STD3_mapped", [95]], [[65344, 65344], "disallowed_STD3_mapped", [96]], [[65345, 65345], "mapped", [97]], [[65346, 65346], "mapped", [98]], [[65347, 65347], "mapped", [99]], [[65348, 65348], "mapped", [100]], [[65349, 65349], "mapped", [101]], [[65350, 65350], "mapped", [102]], [[65351, 65351], "mapped", [103]], [[65352, 65352], "mapped", [104]], [[65353, 65353], "mapped", [105]], [[65354, 65354], "mapped", [106]], [[65355, 65355], "mapped", [107]], [[65356, 65356], "mapped", [108]], [[65357, 65357], "mapped", [109]], [[65358, 65358], "mapped", [110]], [[65359, 65359], "mapped", [111]], [[65360, 65360], "mapped", [112]], [[65361, 65361], "mapped", [113]], [[65362, 65362], "mapped", [114]], [[65363, 65363], "mapped", [115]], [[65364, 65364], "mapped", [116]], [[65365, 65365], "mapped", [117]], [[65366, 65366], "mapped", [118]], [[65367, 65367], "mapped", [119]], [[65368, 65368], "mapped", [120]], [[65369, 65369], "mapped", [121]], [[65370, 65370], "mapped", [122]], [[65371, 65371], "disallowed_STD3_mapped", [123]], [[65372, 65372], "disallowed_STD3_mapped", [124]], [[65373, 65373], "disallowed_STD3_mapped", [125]], [[65374, 65374], "disallowed_STD3_mapped", [126]], [[65375, 65375], "mapped", [10629]], [[65376, 65376], "mapped", [10630]], [[65377, 65377], "mapped", [46]], [[65378, 65378], "mapped", [12300]], [[65379, 65379], "mapped", [12301]], [[65380, 65380], "mapped", [12289]], [[65381, 65381], "mapped", [12539]], [[65382, 65382], "mapped", [12530]], [[65383, 65383], "mapped", [12449]], [[65384, 65384], "mapped", [12451]], [[65385, 65385], "mapped", [12453]], [[65386, 65386], "mapped", [12455]], [[65387, 65387], "mapped", [12457]], [[65388, 65388], "mapped", [12515]], [[65389, 65389], "mapped", [12517]], [[65390, 65390], "mapped", [12519]], [[65391, 65391], "mapped", [12483]], [[65392, 65392], "mapped", [12540]], [[65393, 65393], "mapped", [12450]], [[65394, 65394], "mapped", [12452]], [[65395, 65395], "mapped", [12454]], [[65396, 65396], "mapped", [12456]], [[65397, 65397], "mapped", [12458]], [[65398, 65398], "mapped", [12459]], [[65399, 65399], "mapped", [12461]], [[65400, 65400], "mapped", [12463]], [[65401, 65401], "mapped", [12465]], [[65402, 65402], "mapped", [12467]], [[65403, 65403], "mapped", [12469]], [[65404, 65404], "mapped", [12471]], [[65405, 65405], "mapped", [12473]], [[65406, 65406], "mapped", [12475]], [[65407, 65407], "mapped", [12477]], [[65408, 65408], "mapped", [12479]], [[65409, 65409], "mapped", [12481]], [[65410, 65410], "mapped", [12484]], [[65411, 65411], "mapped", [12486]], [[65412, 65412], "mapped", [12488]], [[65413, 65413], "mapped", [12490]], [[65414, 65414], "mapped", [12491]], [[65415, 65415], "mapped", [12492]], [[65416, 65416], "mapped", [12493]], [[65417, 65417], "mapped", [12494]], [[65418, 65418], "mapped", [12495]], [[65419, 65419], "mapped", [12498]], [[65420, 65420], "mapped", [12501]], [[65421, 65421], "mapped", [12504]], [[65422, 65422], "mapped", [12507]], [[65423, 65423], "mapped", [12510]], [[65424, 65424], "mapped", [12511]], [[65425, 65425], "mapped", [12512]], [[65426, 65426], "mapped", [12513]], [[65427, 65427], "mapped", [12514]], [[65428, 65428], "mapped", [12516]], [[65429, 65429], "mapped", [12518]], [[65430, 65430], "mapped", [12520]], [[65431, 65431], "mapped", [12521]], [[65432, 65432], "mapped", [12522]], [[65433, 65433], "mapped", [12523]], [[65434, 65434], "mapped", [12524]], [[65435, 65435], "mapped", [12525]], [[65436, 65436], "mapped", [12527]], [[65437, 65437], "mapped", [12531]], [[65438, 65438], "mapped", [12441]], [[65439, 65439], "mapped", [12442]], [[65440, 65440], "disallowed"], [[65441, 65441], "mapped", [4352]], [[65442, 65442], "mapped", [4353]], [[65443, 65443], "mapped", [4522]], [[65444, 65444], "mapped", [4354]], [[65445, 65445], "mapped", [4524]], [[65446, 65446], "mapped", [4525]], [[65447, 65447], "mapped", [4355]], [[65448, 65448], "mapped", [4356]], [[65449, 65449], "mapped", [4357]], [[65450, 65450], "mapped", [4528]], [[65451, 65451], "mapped", [4529]], [[65452, 65452], "mapped", [4530]], [[65453, 65453], "mapped", [4531]], [[65454, 65454], "mapped", [4532]], [[65455, 65455], "mapped", [4533]], [[65456, 65456], "mapped", [4378]], [[65457, 65457], "mapped", [4358]], [[65458, 65458], "mapped", [4359]], [[65459, 65459], "mapped", [4360]], [[65460, 65460], "mapped", [4385]], [[65461, 65461], "mapped", [4361]], [[65462, 65462], "mapped", [4362]], [[65463, 65463], "mapped", [4363]], [[65464, 65464], "mapped", [4364]], [[65465, 65465], "mapped", [4365]], [[65466, 65466], "mapped", [4366]], [[65467, 65467], "mapped", [4367]], [[65468, 65468], "mapped", [4368]], [[65469, 65469], "mapped", [4369]], [[65470, 65470], "mapped", [4370]], [[65471, 65473], "disallowed"], [[65474, 65474], "mapped", [4449]], [[65475, 65475], "mapped", [4450]], [[65476, 65476], "mapped", [4451]], [[65477, 65477], "mapped", [4452]], [[65478, 65478], "mapped", [4453]], [[65479, 65479], "mapped", [4454]], [[65480, 65481], "disallowed"], [[65482, 65482], "mapped", [4455]], [[65483, 65483], "mapped", [4456]], [[65484, 65484], "mapped", [4457]], [[65485, 65485], "mapped", [4458]], [[65486, 65486], "mapped", [4459]], [[65487, 65487], "mapped", [4460]], [[65488, 65489], "disallowed"], [[65490, 65490], "mapped", [4461]], [[65491, 65491], "mapped", [4462]], [[65492, 65492], "mapped", [4463]], [[65493, 65493], "mapped", [4464]], [[65494, 65494], "mapped", [4465]], [[65495, 65495], "mapped", [4466]], [[65496, 65497], "disallowed"], [[65498, 65498], "mapped", [4467]], [[65499, 65499], "mapped", [4468]], [[65500, 65500], "mapped", [4469]], [[65501, 65503], "disallowed"], [[65504, 65504], "mapped", [162]], [[65505, 65505], "mapped", [163]], [[65506, 65506], "mapped", [172]], [[65507, 65507], "disallowed_STD3_mapped", [32, 772]], [[65508, 65508], "mapped", [166]], [[65509, 65509], "mapped", [165]], [[65510, 65510], "mapped", [8361]], [[65511, 65511], "disallowed"], [[65512, 65512], "mapped", [9474]], [[65513, 65513], "mapped", [8592]], [[65514, 65514], "mapped", [8593]], [[65515, 65515], "mapped", [8594]], [[65516, 65516], "mapped", [8595]], [[65517, 65517], "mapped", [9632]], [[65518, 65518], "mapped", [9675]], [[65519, 65528], "disallowed"], [[65529, 65531], "disallowed"], [[65532, 65532], "disallowed"], [[65533, 65533], "disallowed"], [[65534, 65535], "disallowed"], [[65536, 65547], "valid"], [[65548, 65548], "disallowed"], [[65549, 65574], "valid"], [[65575, 65575], "disallowed"], [[65576, 65594], "valid"], [[65595, 65595], "disallowed"], [[65596, 65597], "valid"], [[65598, 65598], "disallowed"], [[65599, 65613], "valid"], [[65614, 65615], "disallowed"], [[65616, 65629], "valid"], [[65630, 65663], "disallowed"], [[65664, 65786], "valid"], [[65787, 65791], "disallowed"], [[65792, 65794], "valid", [], "NV8"], [[65795, 65798], "disallowed"], [[65799, 65843], "valid", [], "NV8"], [[65844, 65846], "disallowed"], [[65847, 65855], "valid", [], "NV8"], [[65856, 65930], "valid", [], "NV8"], [[65931, 65932], "valid", [], "NV8"], [[65933, 65935], "disallowed"], [[65936, 65947], "valid", [], "NV8"], [[65948, 65951], "disallowed"], [[65952, 65952], "valid", [], "NV8"], [[65953, 65999], "disallowed"], [[66e3, 66044], "valid", [], "NV8"], [[66045, 66045], "valid"], [[66046, 66175], "disallowed"], [[66176, 66204], "valid"], [[66205, 66207], "disallowed"], [[66208, 66256], "valid"], [[66257, 66271], "disallowed"], [[66272, 66272], "valid"], [[66273, 66299], "valid", [], "NV8"], [[66300, 66303], "disallowed"], [[66304, 66334], "valid"], [[66335, 66335], "valid"], [[66336, 66339], "valid", [], "NV8"], [[66340, 66351], "disallowed"], [[66352, 66368], "valid"], [[66369, 66369], "valid", [], "NV8"], [[66370, 66377], "valid"], [[66378, 66378], "valid", [], "NV8"], [[66379, 66383], "disallowed"], [[66384, 66426], "valid"], [[66427, 66431], "disallowed"], [[66432, 66461], "valid"], [[66462, 66462], "disallowed"], [[66463, 66463], "valid", [], "NV8"], [[66464, 66499], "valid"], [[66500, 66503], "disallowed"], [[66504, 66511], "valid"], [[66512, 66517], "valid", [], "NV8"], [[66518, 66559], "disallowed"], [[66560, 66560], "mapped", [66600]], [[66561, 66561], "mapped", [66601]], [[66562, 66562], "mapped", [66602]], [[66563, 66563], "mapped", [66603]], [[66564, 66564], "mapped", [66604]], [[66565, 66565], "mapped", [66605]], [[66566, 66566], "mapped", [66606]], [[66567, 66567], "mapped", [66607]], [[66568, 66568], "mapped", [66608]], [[66569, 66569], "mapped", [66609]], [[66570, 66570], "mapped", [66610]], [[66571, 66571], "mapped", [66611]], [[66572, 66572], "mapped", [66612]], [[66573, 66573], "mapped", [66613]], [[66574, 66574], "mapped", [66614]], [[66575, 66575], "mapped", [66615]], [[66576, 66576], "mapped", [66616]], [[66577, 66577], "mapped", [66617]], [[66578, 66578], "mapped", [66618]], [[66579, 66579], "mapped", [66619]], [[66580, 66580], "mapped", [66620]], [[66581, 66581], "mapped", [66621]], [[66582, 66582], "mapped", [66622]], [[66583, 66583], "mapped", [66623]], [[66584, 66584], "mapped", [66624]], [[66585, 66585], "mapped", [66625]], [[66586, 66586], "mapped", [66626]], [[66587, 66587], "mapped", [66627]], [[66588, 66588], "mapped", [66628]], [[66589, 66589], "mapped", [66629]], [[66590, 66590], "mapped", [66630]], [[66591, 66591], "mapped", [66631]], [[66592, 66592], "mapped", [66632]], [[66593, 66593], "mapped", [66633]], [[66594, 66594], "mapped", [66634]], [[66595, 66595], "mapped", [66635]], [[66596, 66596], "mapped", [66636]], [[66597, 66597], "mapped", [66637]], [[66598, 66598], "mapped", [66638]], [[66599, 66599], "mapped", [66639]], [[66600, 66637], "valid"], [[66638, 66717], "valid"], [[66718, 66719], "disallowed"], [[66720, 66729], "valid"], [[66730, 66815], "disallowed"], [[66816, 66855], "valid"], [[66856, 66863], "disallowed"], [[66864, 66915], "valid"], [[66916, 66926], "disallowed"], [[66927, 66927], "valid", [], "NV8"], [[66928, 67071], "disallowed"], [[67072, 67382], "valid"], [[67383, 67391], "disallowed"], [[67392, 67413], "valid"], [[67414, 67423], "disallowed"], [[67424, 67431], "valid"], [[67432, 67583], "disallowed"], [[67584, 67589], "valid"], [[67590, 67591], "disallowed"], [[67592, 67592], "valid"], [[67593, 67593], "disallowed"], [[67594, 67637], "valid"], [[67638, 67638], "disallowed"], [[67639, 67640], "valid"], [[67641, 67643], "disallowed"], [[67644, 67644], "valid"], [[67645, 67646], "disallowed"], [[67647, 67647], "valid"], [[67648, 67669], "valid"], [[67670, 67670], "disallowed"], [[67671, 67679], "valid", [], "NV8"], [[67680, 67702], "valid"], [[67703, 67711], "valid", [], "NV8"], [[67712, 67742], "valid"], [[67743, 67750], "disallowed"], [[67751, 67759], "valid", [], "NV8"], [[67760, 67807], "disallowed"], [[67808, 67826], "valid"], [[67827, 67827], "disallowed"], [[67828, 67829], "valid"], [[67830, 67834], "disallowed"], [[67835, 67839], "valid", [], "NV8"], [[67840, 67861], "valid"], [[67862, 67865], "valid", [], "NV8"], [[67866, 67867], "valid", [], "NV8"], [[67868, 67870], "disallowed"], [[67871, 67871], "valid", [], "NV8"], [[67872, 67897], "valid"], [[67898, 67902], "disallowed"], [[67903, 67903], "valid", [], "NV8"], [[67904, 67967], "disallowed"], [[67968, 68023], "valid"], [[68024, 68027], "disallowed"], [[68028, 68029], "valid", [], "NV8"], [[68030, 68031], "valid"], [[68032, 68047], "valid", [], "NV8"], [[68048, 68049], "disallowed"], [[68050, 68095], "valid", [], "NV8"], [[68096, 68099], "valid"], [[68100, 68100], "disallowed"], [[68101, 68102], "valid"], [[68103, 68107], "disallowed"], [[68108, 68115], "valid"], [[68116, 68116], "disallowed"], [[68117, 68119], "valid"], [[68120, 68120], "disallowed"], [[68121, 68147], "valid"], [[68148, 68151], "disallowed"], [[68152, 68154], "valid"], [[68155, 68158], "disallowed"], [[68159, 68159], "valid"], [[68160, 68167], "valid", [], "NV8"], [[68168, 68175], "disallowed"], [[68176, 68184], "valid", [], "NV8"], [[68185, 68191], "disallowed"], [[68192, 68220], "valid"], [[68221, 68223], "valid", [], "NV8"], [[68224, 68252], "valid"], [[68253, 68255], "valid", [], "NV8"], [[68256, 68287], "disallowed"], [[68288, 68295], "valid"], [[68296, 68296], "valid", [], "NV8"], [[68297, 68326], "valid"], [[68327, 68330], "disallowed"], [[68331, 68342], "valid", [], "NV8"], [[68343, 68351], "disallowed"], [[68352, 68405], "valid"], [[68406, 68408], "disallowed"], [[68409, 68415], "valid", [], "NV8"], [[68416, 68437], "valid"], [[68438, 68439], "disallowed"], [[68440, 68447], "valid", [], "NV8"], [[68448, 68466], "valid"], [[68467, 68471], "disallowed"], [[68472, 68479], "valid", [], "NV8"], [[68480, 68497], "valid"], [[68498, 68504], "disallowed"], [[68505, 68508], "valid", [], "NV8"], [[68509, 68520], "disallowed"], [[68521, 68527], "valid", [], "NV8"], [[68528, 68607], "disallowed"], [[68608, 68680], "valid"], [[68681, 68735], "disallowed"], [[68736, 68736], "mapped", [68800]], [[68737, 68737], "mapped", [68801]], [[68738, 68738], "mapped", [68802]], [[68739, 68739], "mapped", [68803]], [[68740, 68740], "mapped", [68804]], [[68741, 68741], "mapped", [68805]], [[68742, 68742], "mapped", [68806]], [[68743, 68743], "mapped", [68807]], [[68744, 68744], "mapped", [68808]], [[68745, 68745], "mapped", [68809]], [[68746, 68746], "mapped", [68810]], [[68747, 68747], "mapped", [68811]], [[68748, 68748], "mapped", [68812]], [[68749, 68749], "mapped", [68813]], [[68750, 68750], "mapped", [68814]], [[68751, 68751], "mapped", [68815]], [[68752, 68752], "mapped", [68816]], [[68753, 68753], "mapped", [68817]], [[68754, 68754], "mapped", [68818]], [[68755, 68755], "mapped", [68819]], [[68756, 68756], "mapped", [68820]], [[68757, 68757], "mapped", [68821]], [[68758, 68758], "mapped", [68822]], [[68759, 68759], "mapped", [68823]], [[68760, 68760], "mapped", [68824]], [[68761, 68761], "mapped", [68825]], [[68762, 68762], "mapped", [68826]], [[68763, 68763], "mapped", [68827]], [[68764, 68764], "mapped", [68828]], [[68765, 68765], "mapped", [68829]], [[68766, 68766], "mapped", [68830]], [[68767, 68767], "mapped", [68831]], [[68768, 68768], "mapped", [68832]], [[68769, 68769], "mapped", [68833]], [[68770, 68770], "mapped", [68834]], [[68771, 68771], "mapped", [68835]], [[68772, 68772], "mapped", [68836]], [[68773, 68773], "mapped", [68837]], [[68774, 68774], "mapped", [68838]], [[68775, 68775], "mapped", [68839]], [[68776, 68776], "mapped", [68840]], [[68777, 68777], "mapped", [68841]], [[68778, 68778], "mapped", [68842]], [[68779, 68779], "mapped", [68843]], [[68780, 68780], "mapped", [68844]], [[68781, 68781], "mapped", [68845]], [[68782, 68782], "mapped", [68846]], [[68783, 68783], "mapped", [68847]], [[68784, 68784], "mapped", [68848]], [[68785, 68785], "mapped", [68849]], [[68786, 68786], "mapped", [68850]], [[68787, 68799], "disallowed"], [[68800, 68850], "valid"], [[68851, 68857], "disallowed"], [[68858, 68863], "valid", [], "NV8"], [[68864, 69215], "disallowed"], [[69216, 69246], "valid", [], "NV8"], [[69247, 69631], "disallowed"], [[69632, 69702], "valid"], [[69703, 69709], "valid", [], "NV8"], [[69710, 69713], "disallowed"], [[69714, 69733], "valid", [], "NV8"], [[69734, 69743], "valid"], [[69744, 69758], "disallowed"], [[69759, 69759], "valid"], [[69760, 69818], "valid"], [[69819, 69820], "valid", [], "NV8"], [[69821, 69821], "disallowed"], [[69822, 69825], "valid", [], "NV8"], [[69826, 69839], "disallowed"], [[69840, 69864], "valid"], [[69865, 69871], "disallowed"], [[69872, 69881], "valid"], [[69882, 69887], "disallowed"], [[69888, 69940], "valid"], [[69941, 69941], "disallowed"], [[69942, 69951], "valid"], [[69952, 69955], "valid", [], "NV8"], [[69956, 69967], "disallowed"], [[69968, 70003], "valid"], [[70004, 70005], "valid", [], "NV8"], [[70006, 70006], "valid"], [[70007, 70015], "disallowed"], [[70016, 70084], "valid"], [[70085, 70088], "valid", [], "NV8"], [[70089, 70089], "valid", [], "NV8"], [[70090, 70092], "valid"], [[70093, 70093], "valid", [], "NV8"], [[70094, 70095], "disallowed"], [[70096, 70105], "valid"], [[70106, 70106], "valid"], [[70107, 70107], "valid", [], "NV8"], [[70108, 70108], "valid"], [[70109, 70111], "valid", [], "NV8"], [[70112, 70112], "disallowed"], [[70113, 70132], "valid", [], "NV8"], [[70133, 70143], "disallowed"], [[70144, 70161], "valid"], [[70162, 70162], "disallowed"], [[70163, 70199], "valid"], [[70200, 70205], "valid", [], "NV8"], [[70206, 70271], "disallowed"], [[70272, 70278], "valid"], [[70279, 70279], "disallowed"], [[70280, 70280], "valid"], [[70281, 70281], "disallowed"], [[70282, 70285], "valid"], [[70286, 70286], "disallowed"], [[70287, 70301], "valid"], [[70302, 70302], "disallowed"], [[70303, 70312], "valid"], [[70313, 70313], "valid", [], "NV8"], [[70314, 70319], "disallowed"], [[70320, 70378], "valid"], [[70379, 70383], "disallowed"], [[70384, 70393], "valid"], [[70394, 70399], "disallowed"], [[70400, 70400], "valid"], [[70401, 70403], "valid"], [[70404, 70404], "disallowed"], [[70405, 70412], "valid"], [[70413, 70414], "disallowed"], [[70415, 70416], "valid"], [[70417, 70418], "disallowed"], [[70419, 70440], "valid"], [[70441, 70441], "disallowed"], [[70442, 70448], "valid"], [[70449, 70449], "disallowed"], [[70450, 70451], "valid"], [[70452, 70452], "disallowed"], [[70453, 70457], "valid"], [[70458, 70459], "disallowed"], [[70460, 70468], "valid"], [[70469, 70470], "disallowed"], [[70471, 70472], "valid"], [[70473, 70474], "disallowed"], [[70475, 70477], "valid"], [[70478, 70479], "disallowed"], [[70480, 70480], "valid"], [[70481, 70486], "disallowed"], [[70487, 70487], "valid"], [[70488, 70492], "disallowed"], [[70493, 70499], "valid"], [[70500, 70501], "disallowed"], [[70502, 70508], "valid"], [[70509, 70511], "disallowed"], [[70512, 70516], "valid"], [[70517, 70783], "disallowed"], [[70784, 70853], "valid"], [[70854, 70854], "valid", [], "NV8"], [[70855, 70855], "valid"], [[70856, 70863], "disallowed"], [[70864, 70873], "valid"], [[70874, 71039], "disallowed"], [[71040, 71093], "valid"], [[71094, 71095], "disallowed"], [[71096, 71104], "valid"], [[71105, 71113], "valid", [], "NV8"], [[71114, 71127], "valid", [], "NV8"], [[71128, 71133], "valid"], [[71134, 71167], "disallowed"], [[71168, 71232], "valid"], [[71233, 71235], "valid", [], "NV8"], [[71236, 71236], "valid"], [[71237, 71247], "disallowed"], [[71248, 71257], "valid"], [[71258, 71295], "disallowed"], [[71296, 71351], "valid"], [[71352, 71359], "disallowed"], [[71360, 71369], "valid"], [[71370, 71423], "disallowed"], [[71424, 71449], "valid"], [[71450, 71452], "disallowed"], [[71453, 71467], "valid"], [[71468, 71471], "disallowed"], [[71472, 71481], "valid"], [[71482, 71487], "valid", [], "NV8"], [[71488, 71839], "disallowed"], [[71840, 71840], "mapped", [71872]], [[71841, 71841], "mapped", [71873]], [[71842, 71842], "mapped", [71874]], [[71843, 71843], "mapped", [71875]], [[71844, 71844], "mapped", [71876]], [[71845, 71845], "mapped", [71877]], [[71846, 71846], "mapped", [71878]], [[71847, 71847], "mapped", [71879]], [[71848, 71848], "mapped", [71880]], [[71849, 71849], "mapped", [71881]], [[71850, 71850], "mapped", [71882]], [[71851, 71851], "mapped", [71883]], [[71852, 71852], "mapped", [71884]], [[71853, 71853], "mapped", [71885]], [[71854, 71854], "mapped", [71886]], [[71855, 71855], "mapped", [71887]], [[71856, 71856], "mapped", [71888]], [[71857, 71857], "mapped", [71889]], [[71858, 71858], "mapped", [71890]], [[71859, 71859], "mapped", [71891]], [[71860, 71860], "mapped", [71892]], [[71861, 71861], "mapped", [71893]], [[71862, 71862], "mapped", [71894]], [[71863, 71863], "mapped", [71895]], [[71864, 71864], "mapped", [71896]], [[71865, 71865], "mapped", [71897]], [[71866, 71866], "mapped", [71898]], [[71867, 71867], "mapped", [71899]], [[71868, 71868], "mapped", [71900]], [[71869, 71869], "mapped", [71901]], [[71870, 71870], "mapped", [71902]], [[71871, 71871], "mapped", [71903]], [[71872, 71913], "valid"], [[71914, 71922], "valid", [], "NV8"], [[71923, 71934], "disallowed"], [[71935, 71935], "valid"], [[71936, 72383], "disallowed"], [[72384, 72440], "valid"], [[72441, 73727], "disallowed"], [[73728, 74606], "valid"], [[74607, 74648], "valid"], [[74649, 74649], "valid"], [[74650, 74751], "disallowed"], [[74752, 74850], "valid", [], "NV8"], [[74851, 74862], "valid", [], "NV8"], [[74863, 74863], "disallowed"], [[74864, 74867], "valid", [], "NV8"], [[74868, 74868], "valid", [], "NV8"], [[74869, 74879], "disallowed"], [[74880, 75075], "valid"], [[75076, 77823], "disallowed"], [[77824, 78894], "valid"], [[78895, 82943], "disallowed"], [[82944, 83526], "valid"], [[83527, 92159], "disallowed"], [[92160, 92728], "valid"], [[92729, 92735], "disallowed"], [[92736, 92766], "valid"], [[92767, 92767], "disallowed"], [[92768, 92777], "valid"], [[92778, 92781], "disallowed"], [[92782, 92783], "valid", [], "NV8"], [[92784, 92879], "disallowed"], [[92880, 92909], "valid"], [[92910, 92911], "disallowed"], [[92912, 92916], "valid"], [[92917, 92917], "valid", [], "NV8"], [[92918, 92927], "disallowed"], [[92928, 92982], "valid"], [[92983, 92991], "valid", [], "NV8"], [[92992, 92995], "valid"], [[92996, 92997], "valid", [], "NV8"], [[92998, 93007], "disallowed"], [[93008, 93017], "valid"], [[93018, 93018], "disallowed"], [[93019, 93025], "valid", [], "NV8"], [[93026, 93026], "disallowed"], [[93027, 93047], "valid"], [[93048, 93052], "disallowed"], [[93053, 93071], "valid"], [[93072, 93951], "disallowed"], [[93952, 94020], "valid"], [[94021, 94031], "disallowed"], [[94032, 94078], "valid"], [[94079, 94094], "disallowed"], [[94095, 94111], "valid"], [[94112, 110591], "disallowed"], [[110592, 110593], "valid"], [[110594, 113663], "disallowed"], [[113664, 113770], "valid"], [[113771, 113775], "disallowed"], [[113776, 113788], "valid"], [[113789, 113791], "disallowed"], [[113792, 113800], "valid"], [[113801, 113807], "disallowed"], [[113808, 113817], "valid"], [[113818, 113819], "disallowed"], [[113820, 113820], "valid", [], "NV8"], [[113821, 113822], "valid"], [[113823, 113823], "valid", [], "NV8"], [[113824, 113827], "ignored"], [[113828, 118783], "disallowed"], [[118784, 119029], "valid", [], "NV8"], [[119030, 119039], "disallowed"], [[119040, 119078], "valid", [], "NV8"], [[119079, 119080], "disallowed"], [[119081, 119081], "valid", [], "NV8"], [[119082, 119133], "valid", [], "NV8"], [[119134, 119134], "mapped", [119127, 119141]], [[119135, 119135], "mapped", [119128, 119141]], [[119136, 119136], "mapped", [119128, 119141, 119150]], [[119137, 119137], "mapped", [119128, 119141, 119151]], [[119138, 119138], "mapped", [119128, 119141, 119152]], [[119139, 119139], "mapped", [119128, 119141, 119153]], [[119140, 119140], "mapped", [119128, 119141, 119154]], [[119141, 119154], "valid", [], "NV8"], [[119155, 119162], "disallowed"], [[119163, 119226], "valid", [], "NV8"], [[119227, 119227], "mapped", [119225, 119141]], [[119228, 119228], "mapped", [119226, 119141]], [[119229, 119229], "mapped", [119225, 119141, 119150]], [[119230, 119230], "mapped", [119226, 119141, 119150]], [[119231, 119231], "mapped", [119225, 119141, 119151]], [[119232, 119232], "mapped", [119226, 119141, 119151]], [[119233, 119261], "valid", [], "NV8"], [[119262, 119272], "valid", [], "NV8"], [[119273, 119295], "disallowed"], [[119296, 119365], "valid", [], "NV8"], [[119366, 119551], "disallowed"], [[119552, 119638], "valid", [], "NV8"], [[119639, 119647], "disallowed"], [[119648, 119665], "valid", [], "NV8"], [[119666, 119807], "disallowed"], [[119808, 119808], "mapped", [97]], [[119809, 119809], "mapped", [98]], [[119810, 119810], "mapped", [99]], [[119811, 119811], "mapped", [100]], [[119812, 119812], "mapped", [101]], [[119813, 119813], "mapped", [102]], [[119814, 119814], "mapped", [103]], [[119815, 119815], "mapped", [104]], [[119816, 119816], "mapped", [105]], [[119817, 119817], "mapped", [106]], [[119818, 119818], "mapped", [107]], [[119819, 119819], "mapped", [108]], [[119820, 119820], "mapped", [109]], [[119821, 119821], "mapped", [110]], [[119822, 119822], "mapped", [111]], [[119823, 119823], "mapped", [112]], [[119824, 119824], "mapped", [113]], [[119825, 119825], "mapped", [114]], [[119826, 119826], "mapped", [115]], [[119827, 119827], "mapped", [116]], [[119828, 119828], "mapped", [117]], [[119829, 119829], "mapped", [118]], [[119830, 119830], "mapped", [119]], [[119831, 119831], "mapped", [120]], [[119832, 119832], "mapped", [121]], [[119833, 119833], "mapped", [122]], [[119834, 119834], "mapped", [97]], [[119835, 119835], "mapped", [98]], [[119836, 119836], "mapped", [99]], [[119837, 119837], "mapped", [100]], [[119838, 119838], "mapped", [101]], [[119839, 119839], "mapped", [102]], [[119840, 119840], "mapped", [103]], [[119841, 119841], "mapped", [104]], [[119842, 119842], "mapped", [105]], [[119843, 119843], "mapped", [106]], [[119844, 119844], "mapped", [107]], [[119845, 119845], "mapped", [108]], [[119846, 119846], "mapped", [109]], [[119847, 119847], "mapped", [110]], [[119848, 119848], "mapped", [111]], [[119849, 119849], "mapped", [112]], [[119850, 119850], "mapped", [113]], [[119851, 119851], "mapped", [114]], [[119852, 119852], "mapped", [115]], [[119853, 119853], "mapped", [116]], [[119854, 119854], "mapped", [117]], [[119855, 119855], "mapped", [118]], [[119856, 119856], "mapped", [119]], [[119857, 119857], "mapped", [120]], [[119858, 119858], "mapped", [121]], [[119859, 119859], "mapped", [122]], [[119860, 119860], "mapped", [97]], [[119861, 119861], "mapped", [98]], [[119862, 119862], "mapped", [99]], [[119863, 119863], "mapped", [100]], [[119864, 119864], "mapped", [101]], [[119865, 119865], "mapped", [102]], [[119866, 119866], "mapped", [103]], [[119867, 119867], "mapped", [104]], [[119868, 119868], "mapped", [105]], [[119869, 119869], "mapped", [106]], [[119870, 119870], "mapped", [107]], [[119871, 119871], "mapped", [108]], [[119872, 119872], "mapped", [109]], [[119873, 119873], "mapped", [110]], [[119874, 119874], "mapped", [111]], [[119875, 119875], "mapped", [112]], [[119876, 119876], "mapped", [113]], [[119877, 119877], "mapped", [114]], [[119878, 119878], "mapped", [115]], [[119879, 119879], "mapped", [116]], [[119880, 119880], "mapped", [117]], [[119881, 119881], "mapped", [118]], [[119882, 119882], "mapped", [119]], [[119883, 119883], "mapped", [120]], [[119884, 119884], "mapped", [121]], [[119885, 119885], "mapped", [122]], [[119886, 119886], "mapped", [97]], [[119887, 119887], "mapped", [98]], [[119888, 119888], "mapped", [99]], [[119889, 119889], "mapped", [100]], [[119890, 119890], "mapped", [101]], [[119891, 119891], "mapped", [102]], [[119892, 119892], "mapped", [103]], [[119893, 119893], "disallowed"], [[119894, 119894], "mapped", [105]], [[119895, 119895], "mapped", [106]], [[119896, 119896], "mapped", [107]], [[119897, 119897], "mapped", [108]], [[119898, 119898], "mapped", [109]], [[119899, 119899], "mapped", [110]], [[119900, 119900], "mapped", [111]], [[119901, 119901], "mapped", [112]], [[119902, 119902], "mapped", [113]], [[119903, 119903], "mapped", [114]], [[119904, 119904], "mapped", [115]], [[119905, 119905], "mapped", [116]], [[119906, 119906], "mapped", [117]], [[119907, 119907], "mapped", [118]], [[119908, 119908], "mapped", [119]], [[119909, 119909], "mapped", [120]], [[119910, 119910], "mapped", [121]], [[119911, 119911], "mapped", [122]], [[119912, 119912], "mapped", [97]], [[119913, 119913], "mapped", [98]], [[119914, 119914], "mapped", [99]], [[119915, 119915], "mapped", [100]], [[119916, 119916], "mapped", [101]], [[119917, 119917], "mapped", [102]], [[119918, 119918], "mapped", [103]], [[119919, 119919], "mapped", [104]], [[119920, 119920], "mapped", [105]], [[119921, 119921], "mapped", [106]], [[119922, 119922], "mapped", [107]], [[119923, 119923], "mapped", [108]], [[119924, 119924], "mapped", [109]], [[119925, 119925], "mapped", [110]], [[119926, 119926], "mapped", [111]], [[119927, 119927], "mapped", [112]], [[119928, 119928], "mapped", [113]], [[119929, 119929], "mapped", [114]], [[119930, 119930], "mapped", [115]], [[119931, 119931], "mapped", [116]], [[119932, 119932], "mapped", [117]], [[119933, 119933], "mapped", [118]], [[119934, 119934], "mapped", [119]], [[119935, 119935], "mapped", [120]], [[119936, 119936], "mapped", [121]], [[119937, 119937], "mapped", [122]], [[119938, 119938], "mapped", [97]], [[119939, 119939], "mapped", [98]], [[119940, 119940], "mapped", [99]], [[119941, 119941], "mapped", [100]], [[119942, 119942], "mapped", [101]], [[119943, 119943], "mapped", [102]], [[119944, 119944], "mapped", [103]], [[119945, 119945], "mapped", [104]], [[119946, 119946], "mapped", [105]], [[119947, 119947], "mapped", [106]], [[119948, 119948], "mapped", [107]], [[119949, 119949], "mapped", [108]], [[119950, 119950], "mapped", [109]], [[119951, 119951], "mapped", [110]], [[119952, 119952], "mapped", [111]], [[119953, 119953], "mapped", [112]], [[119954, 119954], "mapped", [113]], [[119955, 119955], "mapped", [114]], [[119956, 119956], "mapped", [115]], [[119957, 119957], "mapped", [116]], [[119958, 119958], "mapped", [117]], [[119959, 119959], "mapped", [118]], [[119960, 119960], "mapped", [119]], [[119961, 119961], "mapped", [120]], [[119962, 119962], "mapped", [121]], [[119963, 119963], "mapped", [122]], [[119964, 119964], "mapped", [97]], [[119965, 119965], "disallowed"], [[119966, 119966], "mapped", [99]], [[119967, 119967], "mapped", [100]], [[119968, 119969], "disallowed"], [[119970, 119970], "mapped", [103]], [[119971, 119972], "disallowed"], [[119973, 119973], "mapped", [106]], [[119974, 119974], "mapped", [107]], [[119975, 119976], "disallowed"], [[119977, 119977], "mapped", [110]], [[119978, 119978], "mapped", [111]], [[119979, 119979], "mapped", [112]], [[119980, 119980], "mapped", [113]], [[119981, 119981], "disallowed"], [[119982, 119982], "mapped", [115]], [[119983, 119983], "mapped", [116]], [[119984, 119984], "mapped", [117]], [[119985, 119985], "mapped", [118]], [[119986, 119986], "mapped", [119]], [[119987, 119987], "mapped", [120]], [[119988, 119988], "mapped", [121]], [[119989, 119989], "mapped", [122]], [[119990, 119990], "mapped", [97]], [[119991, 119991], "mapped", [98]], [[119992, 119992], "mapped", [99]], [[119993, 119993], "mapped", [100]], [[119994, 119994], "disallowed"], [[119995, 119995], "mapped", [102]], [[119996, 119996], "disallowed"], [[119997, 119997], "mapped", [104]], [[119998, 119998], "mapped", [105]], [[119999, 119999], "mapped", [106]], [[12e4, 12e4], "mapped", [107]], [[120001, 120001], "mapped", [108]], [[120002, 120002], "mapped", [109]], [[120003, 120003], "mapped", [110]], [[120004, 120004], "disallowed"], [[120005, 120005], "mapped", [112]], [[120006, 120006], "mapped", [113]], [[120007, 120007], "mapped", [114]], [[120008, 120008], "mapped", [115]], [[120009, 120009], "mapped", [116]], [[120010, 120010], "mapped", [117]], [[120011, 120011], "mapped", [118]], [[120012, 120012], "mapped", [119]], [[120013, 120013], "mapped", [120]], [[120014, 120014], "mapped", [121]], [[120015, 120015], "mapped", [122]], [[120016, 120016], "mapped", [97]], [[120017, 120017], "mapped", [98]], [[120018, 120018], "mapped", [99]], [[120019, 120019], "mapped", [100]], [[120020, 120020], "mapped", [101]], [[120021, 120021], "mapped", [102]], [[120022, 120022], "mapped", [103]], [[120023, 120023], "mapped", [104]], [[120024, 120024], "mapped", [105]], [[120025, 120025], "mapped", [106]], [[120026, 120026], "mapped", [107]], [[120027, 120027], "mapped", [108]], [[120028, 120028], "mapped", [109]], [[120029, 120029], "mapped", [110]], [[120030, 120030], "mapped", [111]], [[120031, 120031], "mapped", [112]], [[120032, 120032], "mapped", [113]], [[120033, 120033], "mapped", [114]], [[120034, 120034], "mapped", [115]], [[120035, 120035], "mapped", [116]], [[120036, 120036], "mapped", [117]], [[120037, 120037], "mapped", [118]], [[120038, 120038], "mapped", [119]], [[120039, 120039], "mapped", [120]], [[120040, 120040], "mapped", [121]], [[120041, 120041], "mapped", [122]], [[120042, 120042], "mapped", [97]], [[120043, 120043], "mapped", [98]], [[120044, 120044], "mapped", [99]], [[120045, 120045], "mapped", [100]], [[120046, 120046], "mapped", [101]], [[120047, 120047], "mapped", [102]], [[120048, 120048], "mapped", [103]], [[120049, 120049], "mapped", [104]], [[120050, 120050], "mapped", [105]], [[120051, 120051], "mapped", [106]], [[120052, 120052], "mapped", [107]], [[120053, 120053], "mapped", [108]], [[120054, 120054], "mapped", [109]], [[120055, 120055], "mapped", [110]], [[120056, 120056], "mapped", [111]], [[120057, 120057], "mapped", [112]], [[120058, 120058], "mapped", [113]], [[120059, 120059], "mapped", [114]], [[120060, 120060], "mapped", [115]], [[120061, 120061], "mapped", [116]], [[120062, 120062], "mapped", [117]], [[120063, 120063], "mapped", [118]], [[120064, 120064], "mapped", [119]], [[120065, 120065], "mapped", [120]], [[120066, 120066], "mapped", [121]], [[120067, 120067], "mapped", [122]], [[120068, 120068], "mapped", [97]], [[120069, 120069], "mapped", [98]], [[120070, 120070], "disallowed"], [[120071, 120071], "mapped", [100]], [[120072, 120072], "mapped", [101]], [[120073, 120073], "mapped", [102]], [[120074, 120074], "mapped", [103]], [[120075, 120076], "disallowed"], [[120077, 120077], "mapped", [106]], [[120078, 120078], "mapped", [107]], [[120079, 120079], "mapped", [108]], [[120080, 120080], "mapped", [109]], [[120081, 120081], "mapped", [110]], [[120082, 120082], "mapped", [111]], [[120083, 120083], "mapped", [112]], [[120084, 120084], "mapped", [113]], [[120085, 120085], "disallowed"], [[120086, 120086], "mapped", [115]], [[120087, 120087], "mapped", [116]], [[120088, 120088], "mapped", [117]], [[120089, 120089], "mapped", [118]], [[120090, 120090], "mapped", [119]], [[120091, 120091], "mapped", [120]], [[120092, 120092], "mapped", [121]], [[120093, 120093], "disallowed"], [[120094, 120094], "mapped", [97]], [[120095, 120095], "mapped", [98]], [[120096, 120096], "mapped", [99]], [[120097, 120097], "mapped", [100]], [[120098, 120098], "mapped", [101]], [[120099, 120099], "mapped", [102]], [[120100, 120100], "mapped", [103]], [[120101, 120101], "mapped", [104]], [[120102, 120102], "mapped", [105]], [[120103, 120103], "mapped", [106]], [[120104, 120104], "mapped", [107]], [[120105, 120105], "mapped", [108]], [[120106, 120106], "mapped", [109]], [[120107, 120107], "mapped", [110]], [[120108, 120108], "mapped", [111]], [[120109, 120109], "mapped", [112]], [[120110, 120110], "mapped", [113]], [[120111, 120111], "mapped", [114]], [[120112, 120112], "mapped", [115]], [[120113, 120113], "mapped", [116]], [[120114, 120114], "mapped", [117]], [[120115, 120115], "mapped", [118]], [[120116, 120116], "mapped", [119]], [[120117, 120117], "mapped", [120]], [[120118, 120118], "mapped", [121]], [[120119, 120119], "mapped", [122]], [[120120, 120120], "mapped", [97]], [[120121, 120121], "mapped", [98]], [[120122, 120122], "disallowed"], [[120123, 120123], "mapped", [100]], [[120124, 120124], "mapped", [101]], [[120125, 120125], "mapped", [102]], [[120126, 120126], "mapped", [103]], [[120127, 120127], "disallowed"], [[120128, 120128], "mapped", [105]], [[120129, 120129], "mapped", [106]], [[120130, 120130], "mapped", [107]], [[120131, 120131], "mapped", [108]], [[120132, 120132], "mapped", [109]], [[120133, 120133], "disallowed"], [[120134, 120134], "mapped", [111]], [[120135, 120137], "disallowed"], [[120138, 120138], "mapped", [115]], [[120139, 120139], "mapped", [116]], [[120140, 120140], "mapped", [117]], [[120141, 120141], "mapped", [118]], [[120142, 120142], "mapped", [119]], [[120143, 120143], "mapped", [120]], [[120144, 120144], "mapped", [121]], [[120145, 120145], "disallowed"], [[120146, 120146], "mapped", [97]], [[120147, 120147], "mapped", [98]], [[120148, 120148], "mapped", [99]], [[120149, 120149], "mapped", [100]], [[120150, 120150], "mapped", [101]], [[120151, 120151], "mapped", [102]], [[120152, 120152], "mapped", [103]], [[120153, 120153], "mapped", [104]], [[120154, 120154], "mapped", [105]], [[120155, 120155], "mapped", [106]], [[120156, 120156], "mapped", [107]], [[120157, 120157], "mapped", [108]], [[120158, 120158], "mapped", [109]], [[120159, 120159], "mapped", [110]], [[120160, 120160], "mapped", [111]], [[120161, 120161], "mapped", [112]], [[120162, 120162], "mapped", [113]], [[120163, 120163], "mapped", [114]], [[120164, 120164], "mapped", [115]], [[120165, 120165], "mapped", [116]], [[120166, 120166], "mapped", [117]], [[120167, 120167], "mapped", [118]], [[120168, 120168], "mapped", [119]], [[120169, 120169], "mapped", [120]], [[120170, 120170], "mapped", [121]], [[120171, 120171], "mapped", [122]], [[120172, 120172], "mapped", [97]], [[120173, 120173], "mapped", [98]], [[120174, 120174], "mapped", [99]], [[120175, 120175], "mapped", [100]], [[120176, 120176], "mapped", [101]], [[120177, 120177], "mapped", [102]], [[120178, 120178], "mapped", [103]], [[120179, 120179], "mapped", [104]], [[120180, 120180], "mapped", [105]], [[120181, 120181], "mapped", [106]], [[120182, 120182], "mapped", [107]], [[120183, 120183], "mapped", [108]], [[120184, 120184], "mapped", [109]], [[120185, 120185], "mapped", [110]], [[120186, 120186], "mapped", [111]], [[120187, 120187], "mapped", [112]], [[120188, 120188], "mapped", [113]], [[120189, 120189], "mapped", [114]], [[120190, 120190], "mapped", [115]], [[120191, 120191], "mapped", [116]], [[120192, 120192], "mapped", [117]], [[120193, 120193], "mapped", [118]], [[120194, 120194], "mapped", [119]], [[120195, 120195], "mapped", [120]], [[120196, 120196], "mapped", [121]], [[120197, 120197], "mapped", [122]], [[120198, 120198], "mapped", [97]], [[120199, 120199], "mapped", [98]], [[120200, 120200], "mapped", [99]], [[120201, 120201], "mapped", [100]], [[120202, 120202], "mapped", [101]], [[120203, 120203], "mapped", [102]], [[120204, 120204], "mapped", [103]], [[120205, 120205], "mapped", [104]], [[120206, 120206], "mapped", [105]], [[120207, 120207], "mapped", [106]], [[120208, 120208], "mapped", [107]], [[120209, 120209], "mapped", [108]], [[120210, 120210], "mapped", [109]], [[120211, 120211], "mapped", [110]], [[120212, 120212], "mapped", [111]], [[120213, 120213], "mapped", [112]], [[120214, 120214], "mapped", [113]], [[120215, 120215], "mapped", [114]], [[120216, 120216], "mapped", [115]], [[120217, 120217], "mapped", [116]], [[120218, 120218], "mapped", [117]], [[120219, 120219], "mapped", [118]], [[120220, 120220], "mapped", [119]], [[120221, 120221], "mapped", [120]], [[120222, 120222], "mapped", [121]], [[120223, 120223], "mapped", [122]], [[120224, 120224], "mapped", [97]], [[120225, 120225], "mapped", [98]], [[120226, 120226], "mapped", [99]], [[120227, 120227], "mapped", [100]], [[120228, 120228], "mapped", [101]], [[120229, 120229], "mapped", [102]], [[120230, 120230], "mapped", [103]], [[120231, 120231], "mapped", [104]], [[120232, 120232], "mapped", [105]], [[120233, 120233], "mapped", [106]], [[120234, 120234], "mapped", [107]], [[120235, 120235], "mapped", [108]], [[120236, 120236], "mapped", [109]], [[120237, 120237], "mapped", [110]], [[120238, 120238], "mapped", [111]], [[120239, 120239], "mapped", [112]], [[120240, 120240], "mapped", [113]], [[120241, 120241], "mapped", [114]], [[120242, 120242], "mapped", [115]], [[120243, 120243], "mapped", [116]], [[120244, 120244], "mapped", [117]], [[120245, 120245], "mapped", [118]], [[120246, 120246], "mapped", [119]], [[120247, 120247], "mapped", [120]], [[120248, 120248], "mapped", [121]], [[120249, 120249], "mapped", [122]], [[120250, 120250], "mapped", [97]], [[120251, 120251], "mapped", [98]], [[120252, 120252], "mapped", [99]], [[120253, 120253], "mapped", [100]], [[120254, 120254], "mapped", [101]], [[120255, 120255], "mapped", [102]], [[120256, 120256], "mapped", [103]], [[120257, 120257], "mapped", [104]], [[120258, 120258], "mapped", [105]], [[120259, 120259], "mapped", [106]], [[120260, 120260], "mapped", [107]], [[120261, 120261], "mapped", [108]], [[120262, 120262], "mapped", [109]], [[120263, 120263], "mapped", [110]], [[120264, 120264], "mapped", [111]], [[120265, 120265], "mapped", [112]], [[120266, 120266], "mapped", [113]], [[120267, 120267], "mapped", [114]], [[120268, 120268], "mapped", [115]], [[120269, 120269], "mapped", [116]], [[120270, 120270], "mapped", [117]], [[120271, 120271], "mapped", [118]], [[120272, 120272], "mapped", [119]], [[120273, 120273], "mapped", [120]], [[120274, 120274], "mapped", [121]], [[120275, 120275], "mapped", [122]], [[120276, 120276], "mapped", [97]], [[120277, 120277], "mapped", [98]], [[120278, 120278], "mapped", [99]], [[120279, 120279], "mapped", [100]], [[120280, 120280], "mapped", [101]], [[120281, 120281], "mapped", [102]], [[120282, 120282], "mapped", [103]], [[120283, 120283], "mapped", [104]], [[120284, 120284], "mapped", [105]], [[120285, 120285], "mapped", [106]], [[120286, 120286], "mapped", [107]], [[120287, 120287], "mapped", [108]], [[120288, 120288], "mapped", [109]], [[120289, 120289], "mapped", [110]], [[120290, 120290], "mapped", [111]], [[120291, 120291], "mapped", [112]], [[120292, 120292], "mapped", [113]], [[120293, 120293], "mapped", [114]], [[120294, 120294], "mapped", [115]], [[120295, 120295], "mapped", [116]], [[120296, 120296], "mapped", [117]], [[120297, 120297], "mapped", [118]], [[120298, 120298], "mapped", [119]], [[120299, 120299], "mapped", [120]], [[120300, 120300], "mapped", [121]], [[120301, 120301], "mapped", [122]], [[120302, 120302], "mapped", [97]], [[120303, 120303], "mapped", [98]], [[120304, 120304], "mapped", [99]], [[120305, 120305], "mapped", [100]], [[120306, 120306], "mapped", [101]], [[120307, 120307], "mapped", [102]], [[120308, 120308], "mapped", [103]], [[120309, 120309], "mapped", [104]], [[120310, 120310], "mapped", [105]], [[120311, 120311], "mapped", [106]], [[120312, 120312], "mapped", [107]], [[120313, 120313], "mapped", [108]], [[120314, 120314], "mapped", [109]], [[120315, 120315], "mapped", [110]], [[120316, 120316], "mapped", [111]], [[120317, 120317], "mapped", [112]], [[120318, 120318], "mapped", [113]], [[120319, 120319], "mapped", [114]], [[120320, 120320], "mapped", [115]], [[120321, 120321], "mapped", [116]], [[120322, 120322], "mapped", [117]], [[120323, 120323], "mapped", [118]], [[120324, 120324], "mapped", [119]], [[120325, 120325], "mapped", [120]], [[120326, 120326], "mapped", [121]], [[120327, 120327], "mapped", [122]], [[120328, 120328], "mapped", [97]], [[120329, 120329], "mapped", [98]], [[120330, 120330], "mapped", [99]], [[120331, 120331], "mapped", [100]], [[120332, 120332], "mapped", [101]], [[120333, 120333], "mapped", [102]], [[120334, 120334], "mapped", [103]], [[120335, 120335], "mapped", [104]], [[120336, 120336], "mapped", [105]], [[120337, 120337], "mapped", [106]], [[120338, 120338], "mapped", [107]], [[120339, 120339], "mapped", [108]], [[120340, 120340], "mapped", [109]], [[120341, 120341], "mapped", [110]], [[120342, 120342], "mapped", [111]], [[120343, 120343], "mapped", [112]], [[120344, 120344], "mapped", [113]], [[120345, 120345], "mapped", [114]], [[120346, 120346], "mapped", [115]], [[120347, 120347], "mapped", [116]], [[120348, 120348], "mapped", [117]], [[120349, 120349], "mapped", [118]], [[120350, 120350], "mapped", [119]], [[120351, 120351], "mapped", [120]], [[120352, 120352], "mapped", [121]], [[120353, 120353], "mapped", [122]], [[120354, 120354], "mapped", [97]], [[120355, 120355], "mapped", [98]], [[120356, 120356], "mapped", [99]], [[120357, 120357], "mapped", [100]], [[120358, 120358], "mapped", [101]], [[120359, 120359], "mapped", [102]], [[120360, 120360], "mapped", [103]], [[120361, 120361], "mapped", [104]], [[120362, 120362], "mapped", [105]], [[120363, 120363], "mapped", [106]], [[120364, 120364], "mapped", [107]], [[120365, 120365], "mapped", [108]], [[120366, 120366], "mapped", [109]], [[120367, 120367], "mapped", [110]], [[120368, 120368], "mapped", [111]], [[120369, 120369], "mapped", [112]], [[120370, 120370], "mapped", [113]], [[120371, 120371], "mapped", [114]], [[120372, 120372], "mapped", [115]], [[120373, 120373], "mapped", [116]], [[120374, 120374], "mapped", [117]], [[120375, 120375], "mapped", [118]], [[120376, 120376], "mapped", [119]], [[120377, 120377], "mapped", [120]], [[120378, 120378], "mapped", [121]], [[120379, 120379], "mapped", [122]], [[120380, 120380], "mapped", [97]], [[120381, 120381], "mapped", [98]], [[120382, 120382], "mapped", [99]], [[120383, 120383], "mapped", [100]], [[120384, 120384], "mapped", [101]], [[120385, 120385], "mapped", [102]], [[120386, 120386], "mapped", [103]], [[120387, 120387], "mapped", [104]], [[120388, 120388], "mapped", [105]], [[120389, 120389], "mapped", [106]], [[120390, 120390], "mapped", [107]], [[120391, 120391], "mapped", [108]], [[120392, 120392], "mapped", [109]], [[120393, 120393], "mapped", [110]], [[120394, 120394], "mapped", [111]], [[120395, 120395], "mapped", [112]], [[120396, 120396], "mapped", [113]], [[120397, 120397], "mapped", [114]], [[120398, 120398], "mapped", [115]], [[120399, 120399], "mapped", [116]], [[120400, 120400], "mapped", [117]], [[120401, 120401], "mapped", [118]], [[120402, 120402], "mapped", [119]], [[120403, 120403], "mapped", [120]], [[120404, 120404], "mapped", [121]], [[120405, 120405], "mapped", [122]], [[120406, 120406], "mapped", [97]], [[120407, 120407], "mapped", [98]], [[120408, 120408], "mapped", [99]], [[120409, 120409], "mapped", [100]], [[120410, 120410], "mapped", [101]], [[120411, 120411], "mapped", [102]], [[120412, 120412], "mapped", [103]], [[120413, 120413], "mapped", [104]], [[120414, 120414], "mapped", [105]], [[120415, 120415], "mapped", [106]], [[120416, 120416], "mapped", [107]], [[120417, 120417], "mapped", [108]], [[120418, 120418], "mapped", [109]], [[120419, 120419], "mapped", [110]], [[120420, 120420], "mapped", [111]], [[120421, 120421], "mapped", [112]], [[120422, 120422], "mapped", [113]], [[120423, 120423], "mapped", [114]], [[120424, 120424], "mapped", [115]], [[120425, 120425], "mapped", [116]], [[120426, 120426], "mapped", [117]], [[120427, 120427], "mapped", [118]], [[120428, 120428], "mapped", [119]], [[120429, 120429], "mapped", [120]], [[120430, 120430], "mapped", [121]], [[120431, 120431], "mapped", [122]], [[120432, 120432], "mapped", [97]], [[120433, 120433], "mapped", [98]], [[120434, 120434], "mapped", [99]], [[120435, 120435], "mapped", [100]], [[120436, 120436], "mapped", [101]], [[120437, 120437], "mapped", [102]], [[120438, 120438], "mapped", [103]], [[120439, 120439], "mapped", [104]], [[120440, 120440], "mapped", [105]], [[120441, 120441], "mapped", [106]], [[120442, 120442], "mapped", [107]], [[120443, 120443], "mapped", [108]], [[120444, 120444], "mapped", [109]], [[120445, 120445], "mapped", [110]], [[120446, 120446], "mapped", [111]], [[120447, 120447], "mapped", [112]], [[120448, 120448], "mapped", [113]], [[120449, 120449], "mapped", [114]], [[120450, 120450], "mapped", [115]], [[120451, 120451], "mapped", [116]], [[120452, 120452], "mapped", [117]], [[120453, 120453], "mapped", [118]], [[120454, 120454], "mapped", [119]], [[120455, 120455], "mapped", [120]], [[120456, 120456], "mapped", [121]], [[120457, 120457], "mapped", [122]], [[120458, 120458], "mapped", [97]], [[120459, 120459], "mapped", [98]], [[120460, 120460], "mapped", [99]], [[120461, 120461], "mapped", [100]], [[120462, 120462], "mapped", [101]], [[120463, 120463], "mapped", [102]], [[120464, 120464], "mapped", [103]], [[120465, 120465], "mapped", [104]], [[120466, 120466], "mapped", [105]], [[120467, 120467], "mapped", [106]], [[120468, 120468], "mapped", [107]], [[120469, 120469], "mapped", [108]], [[120470, 120470], "mapped", [109]], [[120471, 120471], "mapped", [110]], [[120472, 120472], "mapped", [111]], [[120473, 120473], "mapped", [112]], [[120474, 120474], "mapped", [113]], [[120475, 120475], "mapped", [114]], [[120476, 120476], "mapped", [115]], [[120477, 120477], "mapped", [116]], [[120478, 120478], "mapped", [117]], [[120479, 120479], "mapped", [118]], [[120480, 120480], "mapped", [119]], [[120481, 120481], "mapped", [120]], [[120482, 120482], "mapped", [121]], [[120483, 120483], "mapped", [122]], [[120484, 120484], "mapped", [305]], [[120485, 120485], "mapped", [567]], [[120486, 120487], "disallowed"], [[120488, 120488], "mapped", [945]], [[120489, 120489], "mapped", [946]], [[120490, 120490], "mapped", [947]], [[120491, 120491], "mapped", [948]], [[120492, 120492], "mapped", [949]], [[120493, 120493], "mapped", [950]], [[120494, 120494], "mapped", [951]], [[120495, 120495], "mapped", [952]], [[120496, 120496], "mapped", [953]], [[120497, 120497], "mapped", [954]], [[120498, 120498], "mapped", [955]], [[120499, 120499], "mapped", [956]], [[120500, 120500], "mapped", [957]], [[120501, 120501], "mapped", [958]], [[120502, 120502], "mapped", [959]], [[120503, 120503], "mapped", [960]], [[120504, 120504], "mapped", [961]], [[120505, 120505], "mapped", [952]], [[120506, 120506], "mapped", [963]], [[120507, 120507], "mapped", [964]], [[120508, 120508], "mapped", [965]], [[120509, 120509], "mapped", [966]], [[120510, 120510], "mapped", [967]], [[120511, 120511], "mapped", [968]], [[120512, 120512], "mapped", [969]], [[120513, 120513], "mapped", [8711]], [[120514, 120514], "mapped", [945]], [[120515, 120515], "mapped", [946]], [[120516, 120516], "mapped", [947]], [[120517, 120517], "mapped", [948]], [[120518, 120518], "mapped", [949]], [[120519, 120519], "mapped", [950]], [[120520, 120520], "mapped", [951]], [[120521, 120521], "mapped", [952]], [[120522, 120522], "mapped", [953]], [[120523, 120523], "mapped", [954]], [[120524, 120524], "mapped", [955]], [[120525, 120525], "mapped", [956]], [[120526, 120526], "mapped", [957]], [[120527, 120527], "mapped", [958]], [[120528, 120528], "mapped", [959]], [[120529, 120529], "mapped", [960]], [[120530, 120530], "mapped", [961]], [[120531, 120532], "mapped", [963]], [[120533, 120533], "mapped", [964]], [[120534, 120534], "mapped", [965]], [[120535, 120535], "mapped", [966]], [[120536, 120536], "mapped", [967]], [[120537, 120537], "mapped", [968]], [[120538, 120538], "mapped", [969]], [[120539, 120539], "mapped", [8706]], [[120540, 120540], "mapped", [949]], [[120541, 120541], "mapped", [952]], [[120542, 120542], "mapped", [954]], [[120543, 120543], "mapped", [966]], [[120544, 120544], "mapped", [961]], [[120545, 120545], "mapped", [960]], [[120546, 120546], "mapped", [945]], [[120547, 120547], "mapped", [946]], [[120548, 120548], "mapped", [947]], [[120549, 120549], "mapped", [948]], [[120550, 120550], "mapped", [949]], [[120551, 120551], "mapped", [950]], [[120552, 120552], "mapped", [951]], [[120553, 120553], "mapped", [952]], [[120554, 120554], "mapped", [953]], [[120555, 120555], "mapped", [954]], [[120556, 120556], "mapped", [955]], [[120557, 120557], "mapped", [956]], [[120558, 120558], "mapped", [957]], [[120559, 120559], "mapped", [958]], [[120560, 120560], "mapped", [959]], [[120561, 120561], "mapped", [960]], [[120562, 120562], "mapped", [961]], [[120563, 120563], "mapped", [952]], [[120564, 120564], "mapped", [963]], [[120565, 120565], "mapped", [964]], [[120566, 120566], "mapped", [965]], [[120567, 120567], "mapped", [966]], [[120568, 120568], "mapped", [967]], [[120569, 120569], "mapped", [968]], [[120570, 120570], "mapped", [969]], [[120571, 120571], "mapped", [8711]], [[120572, 120572], "mapped", [945]], [[120573, 120573], "mapped", [946]], [[120574, 120574], "mapped", [947]], [[120575, 120575], "mapped", [948]], [[120576, 120576], "mapped", [949]], [[120577, 120577], "mapped", [950]], [[120578, 120578], "mapped", [951]], [[120579, 120579], "mapped", [952]], [[120580, 120580], "mapped", [953]], [[120581, 120581], "mapped", [954]], [[120582, 120582], "mapped", [955]], [[120583, 120583], "mapped", [956]], [[120584, 120584], "mapped", [957]], [[120585, 120585], "mapped", [958]], [[120586, 120586], "mapped", [959]], [[120587, 120587], "mapped", [960]], [[120588, 120588], "mapped", [961]], [[120589, 120590], "mapped", [963]], [[120591, 120591], "mapped", [964]], [[120592, 120592], "mapped", [965]], [[120593, 120593], "mapped", [966]], [[120594, 120594], "mapped", [967]], [[120595, 120595], "mapped", [968]], [[120596, 120596], "mapped", [969]], [[120597, 120597], "mapped", [8706]], [[120598, 120598], "mapped", [949]], [[120599, 120599], "mapped", [952]], [[120600, 120600], "mapped", [954]], [[120601, 120601], "mapped", [966]], [[120602, 120602], "mapped", [961]], [[120603, 120603], "mapped", [960]], [[120604, 120604], "mapped", [945]], [[120605, 120605], "mapped", [946]], [[120606, 120606], "mapped", [947]], [[120607, 120607], "mapped", [948]], [[120608, 120608], "mapped", [949]], [[120609, 120609], "mapped", [950]], [[120610, 120610], "mapped", [951]], [[120611, 120611], "mapped", [952]], [[120612, 120612], "mapped", [953]], [[120613, 120613], "mapped", [954]], [[120614, 120614], "mapped", [955]], [[120615, 120615], "mapped", [956]], [[120616, 120616], "mapped", [957]], [[120617, 120617], "mapped", [958]], [[120618, 120618], "mapped", [959]], [[120619, 120619], "mapped", [960]], [[120620, 120620], "mapped", [961]], [[120621, 120621], "mapped", [952]], [[120622, 120622], "mapped", [963]], [[120623, 120623], "mapped", [964]], [[120624, 120624], "mapped", [965]], [[120625, 120625], "mapped", [966]], [[120626, 120626], "mapped", [967]], [[120627, 120627], "mapped", [968]], [[120628, 120628], "mapped", [969]], [[120629, 120629], "mapped", [8711]], [[120630, 120630], "mapped", [945]], [[120631, 120631], "mapped", [946]], [[120632, 120632], "mapped", [947]], [[120633, 120633], "mapped", [948]], [[120634, 120634], "mapped", [949]], [[120635, 120635], "mapped", [950]], [[120636, 120636], "mapped", [951]], [[120637, 120637], "mapped", [952]], [[120638, 120638], "mapped", [953]], [[120639, 120639], "mapped", [954]], [[120640, 120640], "mapped", [955]], [[120641, 120641], "mapped", [956]], [[120642, 120642], "mapped", [957]], [[120643, 120643], "mapped", [958]], [[120644, 120644], "mapped", [959]], [[120645, 120645], "mapped", [960]], [[120646, 120646], "mapped", [961]], [[120647, 120648], "mapped", [963]], [[120649, 120649], "mapped", [964]], [[120650, 120650], "mapped", [965]], [[120651, 120651], "mapped", [966]], [[120652, 120652], "mapped", [967]], [[120653, 120653], "mapped", [968]], [[120654, 120654], "mapped", [969]], [[120655, 120655], "mapped", [8706]], [[120656, 120656], "mapped", [949]], [[120657, 120657], "mapped", [952]], [[120658, 120658], "mapped", [954]], [[120659, 120659], "mapped", [966]], [[120660, 120660], "mapped", [961]], [[120661, 120661], "mapped", [960]], [[120662, 120662], "mapped", [945]], [[120663, 120663], "mapped", [946]], [[120664, 120664], "mapped", [947]], [[120665, 120665], "mapped", [948]], [[120666, 120666], "mapped", [949]], [[120667, 120667], "mapped", [950]], [[120668, 120668], "mapped", [951]], [[120669, 120669], "mapped", [952]], [[120670, 120670], "mapped", [953]], [[120671, 120671], "mapped", [954]], [[120672, 120672], "mapped", [955]], [[120673, 120673], "mapped", [956]], [[120674, 120674], "mapped", [957]], [[120675, 120675], "mapped", [958]], [[120676, 120676], "mapped", [959]], [[120677, 120677], "mapped", [960]], [[120678, 120678], "mapped", [961]], [[120679, 120679], "mapped", [952]], [[120680, 120680], "mapped", [963]], [[120681, 120681], "mapped", [964]], [[120682, 120682], "mapped", [965]], [[120683, 120683], "mapped", [966]], [[120684, 120684], "mapped", [967]], [[120685, 120685], "mapped", [968]], [[120686, 120686], "mapped", [969]], [[120687, 120687], "mapped", [8711]], [[120688, 120688], "mapped", [945]], [[120689, 120689], "mapped", [946]], [[120690, 120690], "mapped", [947]], [[120691, 120691], "mapped", [948]], [[120692, 120692], "mapped", [949]], [[120693, 120693], "mapped", [950]], [[120694, 120694], "mapped", [951]], [[120695, 120695], "mapped", [952]], [[120696, 120696], "mapped", [953]], [[120697, 120697], "mapped", [954]], [[120698, 120698], "mapped", [955]], [[120699, 120699], "mapped", [956]], [[120700, 120700], "mapped", [957]], [[120701, 120701], "mapped", [958]], [[120702, 120702], "mapped", [959]], [[120703, 120703], "mapped", [960]], [[120704, 120704], "mapped", [961]], [[120705, 120706], "mapped", [963]], [[120707, 120707], "mapped", [964]], [[120708, 120708], "mapped", [965]], [[120709, 120709], "mapped", [966]], [[120710, 120710], "mapped", [967]], [[120711, 120711], "mapped", [968]], [[120712, 120712], "mapped", [969]], [[120713, 120713], "mapped", [8706]], [[120714, 120714], "mapped", [949]], [[120715, 120715], "mapped", [952]], [[120716, 120716], "mapped", [954]], [[120717, 120717], "mapped", [966]], [[120718, 120718], "mapped", [961]], [[120719, 120719], "mapped", [960]], [[120720, 120720], "mapped", [945]], [[120721, 120721], "mapped", [946]], [[120722, 120722], "mapped", [947]], [[120723, 120723], "mapped", [948]], [[120724, 120724], "mapped", [949]], [[120725, 120725], "mapped", [950]], [[120726, 120726], "mapped", [951]], [[120727, 120727], "mapped", [952]], [[120728, 120728], "mapped", [953]], [[120729, 120729], "mapped", [954]], [[120730, 120730], "mapped", [955]], [[120731, 120731], "mapped", [956]], [[120732, 120732], "mapped", [957]], [[120733, 120733], "mapped", [958]], [[120734, 120734], "mapped", [959]], [[120735, 120735], "mapped", [960]], [[120736, 120736], "mapped", [961]], [[120737, 120737], "mapped", [952]], [[120738, 120738], "mapped", [963]], [[120739, 120739], "mapped", [964]], [[120740, 120740], "mapped", [965]], [[120741, 120741], "mapped", [966]], [[120742, 120742], "mapped", [967]], [[120743, 120743], "mapped", [968]], [[120744, 120744], "mapped", [969]], [[120745, 120745], "mapped", [8711]], [[120746, 120746], "mapped", [945]], [[120747, 120747], "mapped", [946]], [[120748, 120748], "mapped", [947]], [[120749, 120749], "mapped", [948]], [[120750, 120750], "mapped", [949]], [[120751, 120751], "mapped", [950]], [[120752, 120752], "mapped", [951]], [[120753, 120753], "mapped", [952]], [[120754, 120754], "mapped", [953]], [[120755, 120755], "mapped", [954]], [[120756, 120756], "mapped", [955]], [[120757, 120757], "mapped", [956]], [[120758, 120758], "mapped", [957]], [[120759, 120759], "mapped", [958]], [[120760, 120760], "mapped", [959]], [[120761, 120761], "mapped", [960]], [[120762, 120762], "mapped", [961]], [[120763, 120764], "mapped", [963]], [[120765, 120765], "mapped", [964]], [[120766, 120766], "mapped", [965]], [[120767, 120767], "mapped", [966]], [[120768, 120768], "mapped", [967]], [[120769, 120769], "mapped", [968]], [[120770, 120770], "mapped", [969]], [[120771, 120771], "mapped", [8706]], [[120772, 120772], "mapped", [949]], [[120773, 120773], "mapped", [952]], [[120774, 120774], "mapped", [954]], [[120775, 120775], "mapped", [966]], [[120776, 120776], "mapped", [961]], [[120777, 120777], "mapped", [960]], [[120778, 120779], "mapped", [989]], [[120780, 120781], "disallowed"], [[120782, 120782], "mapped", [48]], [[120783, 120783], "mapped", [49]], [[120784, 120784], "mapped", [50]], [[120785, 120785], "mapped", [51]], [[120786, 120786], "mapped", [52]], [[120787, 120787], "mapped", [53]], [[120788, 120788], "mapped", [54]], [[120789, 120789], "mapped", [55]], [[120790, 120790], "mapped", [56]], [[120791, 120791], "mapped", [57]], [[120792, 120792], "mapped", [48]], [[120793, 120793], "mapped", [49]], [[120794, 120794], "mapped", [50]], [[120795, 120795], "mapped", [51]], [[120796, 120796], "mapped", [52]], [[120797, 120797], "mapped", [53]], [[120798, 120798], "mapped", [54]], [[120799, 120799], "mapped", [55]], [[120800, 120800], "mapped", [56]], [[120801, 120801], "mapped", [57]], [[120802, 120802], "mapped", [48]], [[120803, 120803], "mapped", [49]], [[120804, 120804], "mapped", [50]], [[120805, 120805], "mapped", [51]], [[120806, 120806], "mapped", [52]], [[120807, 120807], "mapped", [53]], [[120808, 120808], "mapped", [54]], [[120809, 120809], "mapped", [55]], [[120810, 120810], "mapped", [56]], [[120811, 120811], "mapped", [57]], [[120812, 120812], "mapped", [48]], [[120813, 120813], "mapped", [49]], [[120814, 120814], "mapped", [50]], [[120815, 120815], "mapped", [51]], [[120816, 120816], "mapped", [52]], [[120817, 120817], "mapped", [53]], [[120818, 120818], "mapped", [54]], [[120819, 120819], "mapped", [55]], [[120820, 120820], "mapped", [56]], [[120821, 120821], "mapped", [57]], [[120822, 120822], "mapped", [48]], [[120823, 120823], "mapped", [49]], [[120824, 120824], "mapped", [50]], [[120825, 120825], "mapped", [51]], [[120826, 120826], "mapped", [52]], [[120827, 120827], "mapped", [53]], [[120828, 120828], "mapped", [54]], [[120829, 120829], "mapped", [55]], [[120830, 120830], "mapped", [56]], [[120831, 120831], "mapped", [57]], [[120832, 121343], "valid", [], "NV8"], [[121344, 121398], "valid"], [[121399, 121402], "valid", [], "NV8"], [[121403, 121452], "valid"], [[121453, 121460], "valid", [], "NV8"], [[121461, 121461], "valid"], [[121462, 121475], "valid", [], "NV8"], [[121476, 121476], "valid"], [[121477, 121483], "valid", [], "NV8"], [[121484, 121498], "disallowed"], [[121499, 121503], "valid"], [[121504, 121504], "disallowed"], [[121505, 121519], "valid"], [[121520, 124927], "disallowed"], [[124928, 125124], "valid"], [[125125, 125126], "disallowed"], [[125127, 125135], "valid", [], "NV8"], [[125136, 125142], "valid"], [[125143, 126463], "disallowed"], [[126464, 126464], "mapped", [1575]], [[126465, 126465], "mapped", [1576]], [[126466, 126466], "mapped", [1580]], [[126467, 126467], "mapped", [1583]], [[126468, 126468], "disallowed"], [[126469, 126469], "mapped", [1608]], [[126470, 126470], "mapped", [1586]], [[126471, 126471], "mapped", [1581]], [[126472, 126472], "mapped", [1591]], [[126473, 126473], "mapped", [1610]], [[126474, 126474], "mapped", [1603]], [[126475, 126475], "mapped", [1604]], [[126476, 126476], "mapped", [1605]], [[126477, 126477], "mapped", [1606]], [[126478, 126478], "mapped", [1587]], [[126479, 126479], "mapped", [1593]], [[126480, 126480], "mapped", [1601]], [[126481, 126481], "mapped", [1589]], [[126482, 126482], "mapped", [1602]], [[126483, 126483], "mapped", [1585]], [[126484, 126484], "mapped", [1588]], [[126485, 126485], "mapped", [1578]], [[126486, 126486], "mapped", [1579]], [[126487, 126487], "mapped", [1582]], [[126488, 126488], "mapped", [1584]], [[126489, 126489], "mapped", [1590]], [[126490, 126490], "mapped", [1592]], [[126491, 126491], "mapped", [1594]], [[126492, 126492], "mapped", [1646]], [[126493, 126493], "mapped", [1722]], [[126494, 126494], "mapped", [1697]], [[126495, 126495], "mapped", [1647]], [[126496, 126496], "disallowed"], [[126497, 126497], "mapped", [1576]], [[126498, 126498], "mapped", [1580]], [[126499, 126499], "disallowed"], [[126500, 126500], "mapped", [1607]], [[126501, 126502], "disallowed"], [[126503, 126503], "mapped", [1581]], [[126504, 126504], "disallowed"], [[126505, 126505], "mapped", [1610]], [[126506, 126506], "mapped", [1603]], [[126507, 126507], "mapped", [1604]], [[126508, 126508], "mapped", [1605]], [[126509, 126509], "mapped", [1606]], [[126510, 126510], "mapped", [1587]], [[126511, 126511], "mapped", [1593]], [[126512, 126512], "mapped", [1601]], [[126513, 126513], "mapped", [1589]], [[126514, 126514], "mapped", [1602]], [[126515, 126515], "disallowed"], [[126516, 126516], "mapped", [1588]], [[126517, 126517], "mapped", [1578]], [[126518, 126518], "mapped", [1579]], [[126519, 126519], "mapped", [1582]], [[126520, 126520], "disallowed"], [[126521, 126521], "mapped", [1590]], [[126522, 126522], "disallowed"], [[126523, 126523], "mapped", [1594]], [[126524, 126529], "disallowed"], [[126530, 126530], "mapped", [1580]], [[126531, 126534], "disallowed"], [[126535, 126535], "mapped", [1581]], [[126536, 126536], "disallowed"], [[126537, 126537], "mapped", [1610]], [[126538, 126538], "disallowed"], [[126539, 126539], "mapped", [1604]], [[126540, 126540], "disallowed"], [[126541, 126541], "mapped", [1606]], [[126542, 126542], "mapped", [1587]], [[126543, 126543], "mapped", [1593]], [[126544, 126544], "disallowed"], [[126545, 126545], "mapped", [1589]], [[126546, 126546], "mapped", [1602]], [[126547, 126547], "disallowed"], [[126548, 126548], "mapped", [1588]], [[126549, 126550], "disallowed"], [[126551, 126551], "mapped", [1582]], [[126552, 126552], "disallowed"], [[126553, 126553], "mapped", [1590]], [[126554, 126554], "disallowed"], [[126555, 126555], "mapped", [1594]], [[126556, 126556], "disallowed"], [[126557, 126557], "mapped", [1722]], [[126558, 126558], "disallowed"], [[126559, 126559], "mapped", [1647]], [[126560, 126560], "disallowed"], [[126561, 126561], "mapped", [1576]], [[126562, 126562], "mapped", [1580]], [[126563, 126563], "disallowed"], [[126564, 126564], "mapped", [1607]], [[126565, 126566], "disallowed"], [[126567, 126567], "mapped", [1581]], [[126568, 126568], "mapped", [1591]], [[126569, 126569], "mapped", [1610]], [[126570, 126570], "mapped", [1603]], [[126571, 126571], "disallowed"], [[126572, 126572], "mapped", [1605]], [[126573, 126573], "mapped", [1606]], [[126574, 126574], "mapped", [1587]], [[126575, 126575], "mapped", [1593]], [[126576, 126576], "mapped", [1601]], [[126577, 126577], "mapped", [1589]], [[126578, 126578], "mapped", [1602]], [[126579, 126579], "disallowed"], [[126580, 126580], "mapped", [1588]], [[126581, 126581], "mapped", [1578]], [[126582, 126582], "mapped", [1579]], [[126583, 126583], "mapped", [1582]], [[126584, 126584], "disallowed"], [[126585, 126585], "mapped", [1590]], [[126586, 126586], "mapped", [1592]], [[126587, 126587], "mapped", [1594]], [[126588, 126588], "mapped", [1646]], [[126589, 126589], "disallowed"], [[126590, 126590], "mapped", [1697]], [[126591, 126591], "disallowed"], [[126592, 126592], "mapped", [1575]], [[126593, 126593], "mapped", [1576]], [[126594, 126594], "mapped", [1580]], [[126595, 126595], "mapped", [1583]], [[126596, 126596], "mapped", [1607]], [[126597, 126597], "mapped", [1608]], [[126598, 126598], "mapped", [1586]], [[126599, 126599], "mapped", [1581]], [[126600, 126600], "mapped", [1591]], [[126601, 126601], "mapped", [1610]], [[126602, 126602], "disallowed"], [[126603, 126603], "mapped", [1604]], [[126604, 126604], "mapped", [1605]], [[126605, 126605], "mapped", [1606]], [[126606, 126606], "mapped", [1587]], [[126607, 126607], "mapped", [1593]], [[126608, 126608], "mapped", [1601]], [[126609, 126609], "mapped", [1589]], [[126610, 126610], "mapped", [1602]], [[126611, 126611], "mapped", [1585]], [[126612, 126612], "mapped", [1588]], [[126613, 126613], "mapped", [1578]], [[126614, 126614], "mapped", [1579]], [[126615, 126615], "mapped", [1582]], [[126616, 126616], "mapped", [1584]], [[126617, 126617], "mapped", [1590]], [[126618, 126618], "mapped", [1592]], [[126619, 126619], "mapped", [1594]], [[126620, 126624], "disallowed"], [[126625, 126625], "mapped", [1576]], [[126626, 126626], "mapped", [1580]], [[126627, 126627], "mapped", [1583]], [[126628, 126628], "disallowed"], [[126629, 126629], "mapped", [1608]], [[126630, 126630], "mapped", [1586]], [[126631, 126631], "mapped", [1581]], [[126632, 126632], "mapped", [1591]], [[126633, 126633], "mapped", [1610]], [[126634, 126634], "disallowed"], [[126635, 126635], "mapped", [1604]], [[126636, 126636], "mapped", [1605]], [[126637, 126637], "mapped", [1606]], [[126638, 126638], "mapped", [1587]], [[126639, 126639], "mapped", [1593]], [[126640, 126640], "mapped", [1601]], [[126641, 126641], "mapped", [1589]], [[126642, 126642], "mapped", [1602]], [[126643, 126643], "mapped", [1585]], [[126644, 126644], "mapped", [1588]], [[126645, 126645], "mapped", [1578]], [[126646, 126646], "mapped", [1579]], [[126647, 126647], "mapped", [1582]], [[126648, 126648], "mapped", [1584]], [[126649, 126649], "mapped", [1590]], [[126650, 126650], "mapped", [1592]], [[126651, 126651], "mapped", [1594]], [[126652, 126703], "disallowed"], [[126704, 126705], "valid", [], "NV8"], [[126706, 126975], "disallowed"], [[126976, 127019], "valid", [], "NV8"], [[127020, 127023], "disallowed"], [[127024, 127123], "valid", [], "NV8"], [[127124, 127135], "disallowed"], [[127136, 127150], "valid", [], "NV8"], [[127151, 127152], "disallowed"], [[127153, 127166], "valid", [], "NV8"], [[127167, 127167], "valid", [], "NV8"], [[127168, 127168], "disallowed"], [[127169, 127183], "valid", [], "NV8"], [[127184, 127184], "disallowed"], [[127185, 127199], "valid", [], "NV8"], [[127200, 127221], "valid", [], "NV8"], [[127222, 127231], "disallowed"], [[127232, 127232], "disallowed"], [[127233, 127233], "disallowed_STD3_mapped", [48, 44]], [[127234, 127234], "disallowed_STD3_mapped", [49, 44]], [[127235, 127235], "disallowed_STD3_mapped", [50, 44]], [[127236, 127236], "disallowed_STD3_mapped", [51, 44]], [[127237, 127237], "disallowed_STD3_mapped", [52, 44]], [[127238, 127238], "disallowed_STD3_mapped", [53, 44]], [[127239, 127239], "disallowed_STD3_mapped", [54, 44]], [[127240, 127240], "disallowed_STD3_mapped", [55, 44]], [[127241, 127241], "disallowed_STD3_mapped", [56, 44]], [[127242, 127242], "disallowed_STD3_mapped", [57, 44]], [[127243, 127244], "valid", [], "NV8"], [[127245, 127247], "disallowed"], [[127248, 127248], "disallowed_STD3_mapped", [40, 97, 41]], [[127249, 127249], "disallowed_STD3_mapped", [40, 98, 41]], [[127250, 127250], "disallowed_STD3_mapped", [40, 99, 41]], [[127251, 127251], "disallowed_STD3_mapped", [40, 100, 41]], [[127252, 127252], "disallowed_STD3_mapped", [40, 101, 41]], [[127253, 127253], "disallowed_STD3_mapped", [40, 102, 41]], [[127254, 127254], "disallowed_STD3_mapped", [40, 103, 41]], [[127255, 127255], "disallowed_STD3_mapped", [40, 104, 41]], [[127256, 127256], "disallowed_STD3_mapped", [40, 105, 41]], [[127257, 127257], "disallowed_STD3_mapped", [40, 106, 41]], [[127258, 127258], "disallowed_STD3_mapped", [40, 107, 41]], [[127259, 127259], "disallowed_STD3_mapped", [40, 108, 41]], [[127260, 127260], "disallowed_STD3_mapped", [40, 109, 41]], [[127261, 127261], "disallowed_STD3_mapped", [40, 110, 41]], [[127262, 127262], "disallowed_STD3_mapped", [40, 111, 41]], [[127263, 127263], "disallowed_STD3_mapped", [40, 112, 41]], [[127264, 127264], "disallowed_STD3_mapped", [40, 113, 41]], [[127265, 127265], "disallowed_STD3_mapped", [40, 114, 41]], [[127266, 127266], "disallowed_STD3_mapped", [40, 115, 41]], [[127267, 127267], "disallowed_STD3_mapped", [40, 116, 41]], [[127268, 127268], "disallowed_STD3_mapped", [40, 117, 41]], [[127269, 127269], "disallowed_STD3_mapped", [40, 118, 41]], [[127270, 127270], "disallowed_STD3_mapped", [40, 119, 41]], [[127271, 127271], "disallowed_STD3_mapped", [40, 120, 41]], [[127272, 127272], "disallowed_STD3_mapped", [40, 121, 41]], [[127273, 127273], "disallowed_STD3_mapped", [40, 122, 41]], [[127274, 127274], "mapped", [12308, 115, 12309]], [[127275, 127275], "mapped", [99]], [[127276, 127276], "mapped", [114]], [[127277, 127277], "mapped", [99, 100]], [[127278, 127278], "mapped", [119, 122]], [[127279, 127279], "disallowed"], [[127280, 127280], "mapped", [97]], [[127281, 127281], "mapped", [98]], [[127282, 127282], "mapped", [99]], [[127283, 127283], "mapped", [100]], [[127284, 127284], "mapped", [101]], [[127285, 127285], "mapped", [102]], [[127286, 127286], "mapped", [103]], [[127287, 127287], "mapped", [104]], [[127288, 127288], "mapped", [105]], [[127289, 127289], "mapped", [106]], [[127290, 127290], "mapped", [107]], [[127291, 127291], "mapped", [108]], [[127292, 127292], "mapped", [109]], [[127293, 127293], "mapped", [110]], [[127294, 127294], "mapped", [111]], [[127295, 127295], "mapped", [112]], [[127296, 127296], "mapped", [113]], [[127297, 127297], "mapped", [114]], [[127298, 127298], "mapped", [115]], [[127299, 127299], "mapped", [116]], [[127300, 127300], "mapped", [117]], [[127301, 127301], "mapped", [118]], [[127302, 127302], "mapped", [119]], [[127303, 127303], "mapped", [120]], [[127304, 127304], "mapped", [121]], [[127305, 127305], "mapped", [122]], [[127306, 127306], "mapped", [104, 118]], [[127307, 127307], "mapped", [109, 118]], [[127308, 127308], "mapped", [115, 100]], [[127309, 127309], "mapped", [115, 115]], [[127310, 127310], "mapped", [112, 112, 118]], [[127311, 127311], "mapped", [119, 99]], [[127312, 127318], "valid", [], "NV8"], [[127319, 127319], "valid", [], "NV8"], [[127320, 127326], "valid", [], "NV8"], [[127327, 127327], "valid", [], "NV8"], [[127328, 127337], "valid", [], "NV8"], [[127338, 127338], "mapped", [109, 99]], [[127339, 127339], "mapped", [109, 100]], [[127340, 127343], "disallowed"], [[127344, 127352], "valid", [], "NV8"], [[127353, 127353], "valid", [], "NV8"], [[127354, 127354], "valid", [], "NV8"], [[127355, 127356], "valid", [], "NV8"], [[127357, 127358], "valid", [], "NV8"], [[127359, 127359], "valid", [], "NV8"], [[127360, 127369], "valid", [], "NV8"], [[127370, 127373], "valid", [], "NV8"], [[127374, 127375], "valid", [], "NV8"], [[127376, 127376], "mapped", [100, 106]], [[127377, 127386], "valid", [], "NV8"], [[127387, 127461], "disallowed"], [[127462, 127487], "valid", [], "NV8"], [[127488, 127488], "mapped", [12411, 12363]], [[127489, 127489], "mapped", [12467, 12467]], [[127490, 127490], "mapped", [12469]], [[127491, 127503], "disallowed"], [[127504, 127504], "mapped", [25163]], [[127505, 127505], "mapped", [23383]], [[127506, 127506], "mapped", [21452]], [[127507, 127507], "mapped", [12487]], [[127508, 127508], "mapped", [20108]], [[127509, 127509], "mapped", [22810]], [[127510, 127510], "mapped", [35299]], [[127511, 127511], "mapped", [22825]], [[127512, 127512], "mapped", [20132]], [[127513, 127513], "mapped", [26144]], [[127514, 127514], "mapped", [28961]], [[127515, 127515], "mapped", [26009]], [[127516, 127516], "mapped", [21069]], [[127517, 127517], "mapped", [24460]], [[127518, 127518], "mapped", [20877]], [[127519, 127519], "mapped", [26032]], [[127520, 127520], "mapped", [21021]], [[127521, 127521], "mapped", [32066]], [[127522, 127522], "mapped", [29983]], [[127523, 127523], "mapped", [36009]], [[127524, 127524], "mapped", [22768]], [[127525, 127525], "mapped", [21561]], [[127526, 127526], "mapped", [28436]], [[127527, 127527], "mapped", [25237]], [[127528, 127528], "mapped", [25429]], [[127529, 127529], "mapped", [19968]], [[127530, 127530], "mapped", [19977]], [[127531, 127531], "mapped", [36938]], [[127532, 127532], "mapped", [24038]], [[127533, 127533], "mapped", [20013]], [[127534, 127534], "mapped", [21491]], [[127535, 127535], "mapped", [25351]], [[127536, 127536], "mapped", [36208]], [[127537, 127537], "mapped", [25171]], [[127538, 127538], "mapped", [31105]], [[127539, 127539], "mapped", [31354]], [[127540, 127540], "mapped", [21512]], [[127541, 127541], "mapped", [28288]], [[127542, 127542], "mapped", [26377]], [[127543, 127543], "mapped", [26376]], [[127544, 127544], "mapped", [30003]], [[127545, 127545], "mapped", [21106]], [[127546, 127546], "mapped", [21942]], [[127547, 127551], "disallowed"], [[127552, 127552], "mapped", [12308, 26412, 12309]], [[127553, 127553], "mapped", [12308, 19977, 12309]], [[127554, 127554], "mapped", [12308, 20108, 12309]], [[127555, 127555], "mapped", [12308, 23433, 12309]], [[127556, 127556], "mapped", [12308, 28857, 12309]], [[127557, 127557], "mapped", [12308, 25171, 12309]], [[127558, 127558], "mapped", [12308, 30423, 12309]], [[127559, 127559], "mapped", [12308, 21213, 12309]], [[127560, 127560], "mapped", [12308, 25943, 12309]], [[127561, 127567], "disallowed"], [[127568, 127568], "mapped", [24471]], [[127569, 127569], "mapped", [21487]], [[127570, 127743], "disallowed"], [[127744, 127776], "valid", [], "NV8"], [[127777, 127788], "valid", [], "NV8"], [[127789, 127791], "valid", [], "NV8"], [[127792, 127797], "valid", [], "NV8"], [[127798, 127798], "valid", [], "NV8"], [[127799, 127868], "valid", [], "NV8"], [[127869, 127869], "valid", [], "NV8"], [[127870, 127871], "valid", [], "NV8"], [[127872, 127891], "valid", [], "NV8"], [[127892, 127903], "valid", [], "NV8"], [[127904, 127940], "valid", [], "NV8"], [[127941, 127941], "valid", [], "NV8"], [[127942, 127946], "valid", [], "NV8"], [[127947, 127950], "valid", [], "NV8"], [[127951, 127955], "valid", [], "NV8"], [[127956, 127967], "valid", [], "NV8"], [[127968, 127984], "valid", [], "NV8"], [[127985, 127991], "valid", [], "NV8"], [[127992, 127999], "valid", [], "NV8"], [[128e3, 128062], "valid", [], "NV8"], [[128063, 128063], "valid", [], "NV8"], [[128064, 128064], "valid", [], "NV8"], [[128065, 128065], "valid", [], "NV8"], [[128066, 128247], "valid", [], "NV8"], [[128248, 128248], "valid", [], "NV8"], [[128249, 128252], "valid", [], "NV8"], [[128253, 128254], "valid", [], "NV8"], [[128255, 128255], "valid", [], "NV8"], [[128256, 128317], "valid", [], "NV8"], [[128318, 128319], "valid", [], "NV8"], [[128320, 128323], "valid", [], "NV8"], [[128324, 128330], "valid", [], "NV8"], [[128331, 128335], "valid", [], "NV8"], [[128336, 128359], "valid", [], "NV8"], [[128360, 128377], "valid", [], "NV8"], [[128378, 128378], "disallowed"], [[128379, 128419], "valid", [], "NV8"], [[128420, 128420], "disallowed"], [[128421, 128506], "valid", [], "NV8"], [[128507, 128511], "valid", [], "NV8"], [[128512, 128512], "valid", [], "NV8"], [[128513, 128528], "valid", [], "NV8"], [[128529, 128529], "valid", [], "NV8"], [[128530, 128532], "valid", [], "NV8"], [[128533, 128533], "valid", [], "NV8"], [[128534, 128534], "valid", [], "NV8"], [[128535, 128535], "valid", [], "NV8"], [[128536, 128536], "valid", [], "NV8"], [[128537, 128537], "valid", [], "NV8"], [[128538, 128538], "valid", [], "NV8"], [[128539, 128539], "valid", [], "NV8"], [[128540, 128542], "valid", [], "NV8"], [[128543, 128543], "valid", [], "NV8"], [[128544, 128549], "valid", [], "NV8"], [[128550, 128551], "valid", [], "NV8"], [[128552, 128555], "valid", [], "NV8"], [[128556, 128556], "valid", [], "NV8"], [[128557, 128557], "valid", [], "NV8"], [[128558, 128559], "valid", [], "NV8"], [[128560, 128563], "valid", [], "NV8"], [[128564, 128564], "valid", [], "NV8"], [[128565, 128576], "valid", [], "NV8"], [[128577, 128578], "valid", [], "NV8"], [[128579, 128580], "valid", [], "NV8"], [[128581, 128591], "valid", [], "NV8"], [[128592, 128639], "valid", [], "NV8"], [[128640, 128709], "valid", [], "NV8"], [[128710, 128719], "valid", [], "NV8"], [[128720, 128720], "valid", [], "NV8"], [[128721, 128735], "disallowed"], [[128736, 128748], "valid", [], "NV8"], [[128749, 128751], "disallowed"], [[128752, 128755], "valid", [], "NV8"], [[128756, 128767], "disallowed"], [[128768, 128883], "valid", [], "NV8"], [[128884, 128895], "disallowed"], [[128896, 128980], "valid", [], "NV8"], [[128981, 129023], "disallowed"], [[129024, 129035], "valid", [], "NV8"], [[129036, 129039], "disallowed"], [[129040, 129095], "valid", [], "NV8"], [[129096, 129103], "disallowed"], [[129104, 129113], "valid", [], "NV8"], [[129114, 129119], "disallowed"], [[129120, 129159], "valid", [], "NV8"], [[129160, 129167], "disallowed"], [[129168, 129197], "valid", [], "NV8"], [[129198, 129295], "disallowed"], [[129296, 129304], "valid", [], "NV8"], [[129305, 129407], "disallowed"], [[129408, 129412], "valid", [], "NV8"], [[129413, 129471], "disallowed"], [[129472, 129472], "valid", [], "NV8"], [[129473, 131069], "disallowed"], [[131070, 131071], "disallowed"], [[131072, 173782], "valid"], [[173783, 173823], "disallowed"], [[173824, 177972], "valid"], [[177973, 177983], "disallowed"], [[177984, 178205], "valid"], [[178206, 178207], "disallowed"], [[178208, 183969], "valid"], [[183970, 194559], "disallowed"], [[194560, 194560], "mapped", [20029]], [[194561, 194561], "mapped", [20024]], [[194562, 194562], "mapped", [20033]], [[194563, 194563], "mapped", [131362]], [[194564, 194564], "mapped", [20320]], [[194565, 194565], "mapped", [20398]], [[194566, 194566], "mapped", [20411]], [[194567, 194567], "mapped", [20482]], [[194568, 194568], "mapped", [20602]], [[194569, 194569], "mapped", [20633]], [[194570, 194570], "mapped", [20711]], [[194571, 194571], "mapped", [20687]], [[194572, 194572], "mapped", [13470]], [[194573, 194573], "mapped", [132666]], [[194574, 194574], "mapped", [20813]], [[194575, 194575], "mapped", [20820]], [[194576, 194576], "mapped", [20836]], [[194577, 194577], "mapped", [20855]], [[194578, 194578], "mapped", [132380]], [[194579, 194579], "mapped", [13497]], [[194580, 194580], "mapped", [20839]], [[194581, 194581], "mapped", [20877]], [[194582, 194582], "mapped", [132427]], [[194583, 194583], "mapped", [20887]], [[194584, 194584], "mapped", [20900]], [[194585, 194585], "mapped", [20172]], [[194586, 194586], "mapped", [20908]], [[194587, 194587], "mapped", [20917]], [[194588, 194588], "mapped", [168415]], [[194589, 194589], "mapped", [20981]], [[194590, 194590], "mapped", [20995]], [[194591, 194591], "mapped", [13535]], [[194592, 194592], "mapped", [21051]], [[194593, 194593], "mapped", [21062]], [[194594, 194594], "mapped", [21106]], [[194595, 194595], "mapped", [21111]], [[194596, 194596], "mapped", [13589]], [[194597, 194597], "mapped", [21191]], [[194598, 194598], "mapped", [21193]], [[194599, 194599], "mapped", [21220]], [[194600, 194600], "mapped", [21242]], [[194601, 194601], "mapped", [21253]], [[194602, 194602], "mapped", [21254]], [[194603, 194603], "mapped", [21271]], [[194604, 194604], "mapped", [21321]], [[194605, 194605], "mapped", [21329]], [[194606, 194606], "mapped", [21338]], [[194607, 194607], "mapped", [21363]], [[194608, 194608], "mapped", [21373]], [[194609, 194611], "mapped", [21375]], [[194612, 194612], "mapped", [133676]], [[194613, 194613], "mapped", [28784]], [[194614, 194614], "mapped", [21450]], [[194615, 194615], "mapped", [21471]], [[194616, 194616], "mapped", [133987]], [[194617, 194617], "mapped", [21483]], [[194618, 194618], "mapped", [21489]], [[194619, 194619], "mapped", [21510]], [[194620, 194620], "mapped", [21662]], [[194621, 194621], "mapped", [21560]], [[194622, 194622], "mapped", [21576]], [[194623, 194623], "mapped", [21608]], [[194624, 194624], "mapped", [21666]], [[194625, 194625], "mapped", [21750]], [[194626, 194626], "mapped", [21776]], [[194627, 194627], "mapped", [21843]], [[194628, 194628], "mapped", [21859]], [[194629, 194630], "mapped", [21892]], [[194631, 194631], "mapped", [21913]], [[194632, 194632], "mapped", [21931]], [[194633, 194633], "mapped", [21939]], [[194634, 194634], "mapped", [21954]], [[194635, 194635], "mapped", [22294]], [[194636, 194636], "mapped", [22022]], [[194637, 194637], "mapped", [22295]], [[194638, 194638], "mapped", [22097]], [[194639, 194639], "mapped", [22132]], [[194640, 194640], "mapped", [20999]], [[194641, 194641], "mapped", [22766]], [[194642, 194642], "mapped", [22478]], [[194643, 194643], "mapped", [22516]], [[194644, 194644], "mapped", [22541]], [[194645, 194645], "mapped", [22411]], [[194646, 194646], "mapped", [22578]], [[194647, 194647], "mapped", [22577]], [[194648, 194648], "mapped", [22700]], [[194649, 194649], "mapped", [136420]], [[194650, 194650], "mapped", [22770]], [[194651, 194651], "mapped", [22775]], [[194652, 194652], "mapped", [22790]], [[194653, 194653], "mapped", [22810]], [[194654, 194654], "mapped", [22818]], [[194655, 194655], "mapped", [22882]], [[194656, 194656], "mapped", [136872]], [[194657, 194657], "mapped", [136938]], [[194658, 194658], "mapped", [23020]], [[194659, 194659], "mapped", [23067]], [[194660, 194660], "mapped", [23079]], [[194661, 194661], "mapped", [23e3]], [[194662, 194662], "mapped", [23142]], [[194663, 194663], "mapped", [14062]], [[194664, 194664], "disallowed"], [[194665, 194665], "mapped", [23304]], [[194666, 194667], "mapped", [23358]], [[194668, 194668], "mapped", [137672]], [[194669, 194669], "mapped", [23491]], [[194670, 194670], "mapped", [23512]], [[194671, 194671], "mapped", [23527]], [[194672, 194672], "mapped", [23539]], [[194673, 194673], "mapped", [138008]], [[194674, 194674], "mapped", [23551]], [[194675, 194675], "mapped", [23558]], [[194676, 194676], "disallowed"], [[194677, 194677], "mapped", [23586]], [[194678, 194678], "mapped", [14209]], [[194679, 194679], "mapped", [23648]], [[194680, 194680], "mapped", [23662]], [[194681, 194681], "mapped", [23744]], [[194682, 194682], "mapped", [23693]], [[194683, 194683], "mapped", [138724]], [[194684, 194684], "mapped", [23875]], [[194685, 194685], "mapped", [138726]], [[194686, 194686], "mapped", [23918]], [[194687, 194687], "mapped", [23915]], [[194688, 194688], "mapped", [23932]], [[194689, 194689], "mapped", [24033]], [[194690, 194690], "mapped", [24034]], [[194691, 194691], "mapped", [14383]], [[194692, 194692], "mapped", [24061]], [[194693, 194693], "mapped", [24104]], [[194694, 194694], "mapped", [24125]], [[194695, 194695], "mapped", [24169]], [[194696, 194696], "mapped", [14434]], [[194697, 194697], "mapped", [139651]], [[194698, 194698], "mapped", [14460]], [[194699, 194699], "mapped", [24240]], [[194700, 194700], "mapped", [24243]], [[194701, 194701], "mapped", [24246]], [[194702, 194702], "mapped", [24266]], [[194703, 194703], "mapped", [172946]], [[194704, 194704], "mapped", [24318]], [[194705, 194706], "mapped", [140081]], [[194707, 194707], "mapped", [33281]], [[194708, 194709], "mapped", [24354]], [[194710, 194710], "mapped", [14535]], [[194711, 194711], "mapped", [144056]], [[194712, 194712], "mapped", [156122]], [[194713, 194713], "mapped", [24418]], [[194714, 194714], "mapped", [24427]], [[194715, 194715], "mapped", [14563]], [[194716, 194716], "mapped", [24474]], [[194717, 194717], "mapped", [24525]], [[194718, 194718], "mapped", [24535]], [[194719, 194719], "mapped", [24569]], [[194720, 194720], "mapped", [24705]], [[194721, 194721], "mapped", [14650]], [[194722, 194722], "mapped", [14620]], [[194723, 194723], "mapped", [24724]], [[194724, 194724], "mapped", [141012]], [[194725, 194725], "mapped", [24775]], [[194726, 194726], "mapped", [24904]], [[194727, 194727], "mapped", [24908]], [[194728, 194728], "mapped", [24910]], [[194729, 194729], "mapped", [24908]], [[194730, 194730], "mapped", [24954]], [[194731, 194731], "mapped", [24974]], [[194732, 194732], "mapped", [25010]], [[194733, 194733], "mapped", [24996]], [[194734, 194734], "mapped", [25007]], [[194735, 194735], "mapped", [25054]], [[194736, 194736], "mapped", [25074]], [[194737, 194737], "mapped", [25078]], [[194738, 194738], "mapped", [25104]], [[194739, 194739], "mapped", [25115]], [[194740, 194740], "mapped", [25181]], [[194741, 194741], "mapped", [25265]], [[194742, 194742], "mapped", [25300]], [[194743, 194743], "mapped", [25424]], [[194744, 194744], "mapped", [142092]], [[194745, 194745], "mapped", [25405]], [[194746, 194746], "mapped", [25340]], [[194747, 194747], "mapped", [25448]], [[194748, 194748], "mapped", [25475]], [[194749, 194749], "mapped", [25572]], [[194750, 194750], "mapped", [142321]], [[194751, 194751], "mapped", [25634]], [[194752, 194752], "mapped", [25541]], [[194753, 194753], "mapped", [25513]], [[194754, 194754], "mapped", [14894]], [[194755, 194755], "mapped", [25705]], [[194756, 194756], "mapped", [25726]], [[194757, 194757], "mapped", [25757]], [[194758, 194758], "mapped", [25719]], [[194759, 194759], "mapped", [14956]], [[194760, 194760], "mapped", [25935]], [[194761, 194761], "mapped", [25964]], [[194762, 194762], "mapped", [143370]], [[194763, 194763], "mapped", [26083]], [[194764, 194764], "mapped", [26360]], [[194765, 194765], "mapped", [26185]], [[194766, 194766], "mapped", [15129]], [[194767, 194767], "mapped", [26257]], [[194768, 194768], "mapped", [15112]], [[194769, 194769], "mapped", [15076]], [[194770, 194770], "mapped", [20882]], [[194771, 194771], "mapped", [20885]], [[194772, 194772], "mapped", [26368]], [[194773, 194773], "mapped", [26268]], [[194774, 194774], "mapped", [32941]], [[194775, 194775], "mapped", [17369]], [[194776, 194776], "mapped", [26391]], [[194777, 194777], "mapped", [26395]], [[194778, 194778], "mapped", [26401]], [[194779, 194779], "mapped", [26462]], [[194780, 194780], "mapped", [26451]], [[194781, 194781], "mapped", [144323]], [[194782, 194782], "mapped", [15177]], [[194783, 194783], "mapped", [26618]], [[194784, 194784], "mapped", [26501]], [[194785, 194785], "mapped", [26706]], [[194786, 194786], "mapped", [26757]], [[194787, 194787], "mapped", [144493]], [[194788, 194788], "mapped", [26766]], [[194789, 194789], "mapped", [26655]], [[194790, 194790], "mapped", [26900]], [[194791, 194791], "mapped", [15261]], [[194792, 194792], "mapped", [26946]], [[194793, 194793], "mapped", [27043]], [[194794, 194794], "mapped", [27114]], [[194795, 194795], "mapped", [27304]], [[194796, 194796], "mapped", [145059]], [[194797, 194797], "mapped", [27355]], [[194798, 194798], "mapped", [15384]], [[194799, 194799], "mapped", [27425]], [[194800, 194800], "mapped", [145575]], [[194801, 194801], "mapped", [27476]], [[194802, 194802], "mapped", [15438]], [[194803, 194803], "mapped", [27506]], [[194804, 194804], "mapped", [27551]], [[194805, 194805], "mapped", [27578]], [[194806, 194806], "mapped", [27579]], [[194807, 194807], "mapped", [146061]], [[194808, 194808], "mapped", [138507]], [[194809, 194809], "mapped", [146170]], [[194810, 194810], "mapped", [27726]], [[194811, 194811], "mapped", [146620]], [[194812, 194812], "mapped", [27839]], [[194813, 194813], "mapped", [27853]], [[194814, 194814], "mapped", [27751]], [[194815, 194815], "mapped", [27926]], [[194816, 194816], "mapped", [27966]], [[194817, 194817], "mapped", [28023]], [[194818, 194818], "mapped", [27969]], [[194819, 194819], "mapped", [28009]], [[194820, 194820], "mapped", [28024]], [[194821, 194821], "mapped", [28037]], [[194822, 194822], "mapped", [146718]], [[194823, 194823], "mapped", [27956]], [[194824, 194824], "mapped", [28207]], [[194825, 194825], "mapped", [28270]], [[194826, 194826], "mapped", [15667]], [[194827, 194827], "mapped", [28363]], [[194828, 194828], "mapped", [28359]], [[194829, 194829], "mapped", [147153]], [[194830, 194830], "mapped", [28153]], [[194831, 194831], "mapped", [28526]], [[194832, 194832], "mapped", [147294]], [[194833, 194833], "mapped", [147342]], [[194834, 194834], "mapped", [28614]], [[194835, 194835], "mapped", [28729]], [[194836, 194836], "mapped", [28702]], [[194837, 194837], "mapped", [28699]], [[194838, 194838], "mapped", [15766]], [[194839, 194839], "mapped", [28746]], [[194840, 194840], "mapped", [28797]], [[194841, 194841], "mapped", [28791]], [[194842, 194842], "mapped", [28845]], [[194843, 194843], "mapped", [132389]], [[194844, 194844], "mapped", [28997]], [[194845, 194845], "mapped", [148067]], [[194846, 194846], "mapped", [29084]], [[194847, 194847], "disallowed"], [[194848, 194848], "mapped", [29224]], [[194849, 194849], "mapped", [29237]], [[194850, 194850], "mapped", [29264]], [[194851, 194851], "mapped", [149e3]], [[194852, 194852], "mapped", [29312]], [[194853, 194853], "mapped", [29333]], [[194854, 194854], "mapped", [149301]], [[194855, 194855], "mapped", [149524]], [[194856, 194856], "mapped", [29562]], [[194857, 194857], "mapped", [29579]], [[194858, 194858], "mapped", [16044]], [[194859, 194859], "mapped", [29605]], [[194860, 194861], "mapped", [16056]], [[194862, 194862], "mapped", [29767]], [[194863, 194863], "mapped", [29788]], [[194864, 194864], "mapped", [29809]], [[194865, 194865], "mapped", [29829]], [[194866, 194866], "mapped", [29898]], [[194867, 194867], "mapped", [16155]], [[194868, 194868], "mapped", [29988]], [[194869, 194869], "mapped", [150582]], [[194870, 194870], "mapped", [30014]], [[194871, 194871], "mapped", [150674]], [[194872, 194872], "mapped", [30064]], [[194873, 194873], "mapped", [139679]], [[194874, 194874], "mapped", [30224]], [[194875, 194875], "mapped", [151457]], [[194876, 194876], "mapped", [151480]], [[194877, 194877], "mapped", [151620]], [[194878, 194878], "mapped", [16380]], [[194879, 194879], "mapped", [16392]], [[194880, 194880], "mapped", [30452]], [[194881, 194881], "mapped", [151795]], [[194882, 194882], "mapped", [151794]], [[194883, 194883], "mapped", [151833]], [[194884, 194884], "mapped", [151859]], [[194885, 194885], "mapped", [30494]], [[194886, 194887], "mapped", [30495]], [[194888, 194888], "mapped", [30538]], [[194889, 194889], "mapped", [16441]], [[194890, 194890], "mapped", [30603]], [[194891, 194891], "mapped", [16454]], [[194892, 194892], "mapped", [16534]], [[194893, 194893], "mapped", [152605]], [[194894, 194894], "mapped", [30798]], [[194895, 194895], "mapped", [30860]], [[194896, 194896], "mapped", [30924]], [[194897, 194897], "mapped", [16611]], [[194898, 194898], "mapped", [153126]], [[194899, 194899], "mapped", [31062]], [[194900, 194900], "mapped", [153242]], [[194901, 194901], "mapped", [153285]], [[194902, 194902], "mapped", [31119]], [[194903, 194903], "mapped", [31211]], [[194904, 194904], "mapped", [16687]], [[194905, 194905], "mapped", [31296]], [[194906, 194906], "mapped", [31306]], [[194907, 194907], "mapped", [31311]], [[194908, 194908], "mapped", [153980]], [[194909, 194910], "mapped", [154279]], [[194911, 194911], "disallowed"], [[194912, 194912], "mapped", [16898]], [[194913, 194913], "mapped", [154539]], [[194914, 194914], "mapped", [31686]], [[194915, 194915], "mapped", [31689]], [[194916, 194916], "mapped", [16935]], [[194917, 194917], "mapped", [154752]], [[194918, 194918], "mapped", [31954]], [[194919, 194919], "mapped", [17056]], [[194920, 194920], "mapped", [31976]], [[194921, 194921], "mapped", [31971]], [[194922, 194922], "mapped", [32e3]], [[194923, 194923], "mapped", [155526]], [[194924, 194924], "mapped", [32099]], [[194925, 194925], "mapped", [17153]], [[194926, 194926], "mapped", [32199]], [[194927, 194927], "mapped", [32258]], [[194928, 194928], "mapped", [32325]], [[194929, 194929], "mapped", [17204]], [[194930, 194930], "mapped", [156200]], [[194931, 194931], "mapped", [156231]], [[194932, 194932], "mapped", [17241]], [[194933, 194933], "mapped", [156377]], [[194934, 194934], "mapped", [32634]], [[194935, 194935], "mapped", [156478]], [[194936, 194936], "mapped", [32661]], [[194937, 194937], "mapped", [32762]], [[194938, 194938], "mapped", [32773]], [[194939, 194939], "mapped", [156890]], [[194940, 194940], "mapped", [156963]], [[194941, 194941], "mapped", [32864]], [[194942, 194942], "mapped", [157096]], [[194943, 194943], "mapped", [32880]], [[194944, 194944], "mapped", [144223]], [[194945, 194945], "mapped", [17365]], [[194946, 194946], "mapped", [32946]], [[194947, 194947], "mapped", [33027]], [[194948, 194948], "mapped", [17419]], [[194949, 194949], "mapped", [33086]], [[194950, 194950], "mapped", [23221]], [[194951, 194951], "mapped", [157607]], [[194952, 194952], "mapped", [157621]], [[194953, 194953], "mapped", [144275]], [[194954, 194954], "mapped", [144284]], [[194955, 194955], "mapped", [33281]], [[194956, 194956], "mapped", [33284]], [[194957, 194957], "mapped", [36766]], [[194958, 194958], "mapped", [17515]], [[194959, 194959], "mapped", [33425]], [[194960, 194960], "mapped", [33419]], [[194961, 194961], "mapped", [33437]], [[194962, 194962], "mapped", [21171]], [[194963, 194963], "mapped", [33457]], [[194964, 194964], "mapped", [33459]], [[194965, 194965], "mapped", [33469]], [[194966, 194966], "mapped", [33510]], [[194967, 194967], "mapped", [158524]], [[194968, 194968], "mapped", [33509]], [[194969, 194969], "mapped", [33565]], [[194970, 194970], "mapped", [33635]], [[194971, 194971], "mapped", [33709]], [[194972, 194972], "mapped", [33571]], [[194973, 194973], "mapped", [33725]], [[194974, 194974], "mapped", [33767]], [[194975, 194975], "mapped", [33879]], [[194976, 194976], "mapped", [33619]], [[194977, 194977], "mapped", [33738]], [[194978, 194978], "mapped", [33740]], [[194979, 194979], "mapped", [33756]], [[194980, 194980], "mapped", [158774]], [[194981, 194981], "mapped", [159083]], [[194982, 194982], "mapped", [158933]], [[194983, 194983], "mapped", [17707]], [[194984, 194984], "mapped", [34033]], [[194985, 194985], "mapped", [34035]], [[194986, 194986], "mapped", [34070]], [[194987, 194987], "mapped", [160714]], [[194988, 194988], "mapped", [34148]], [[194989, 194989], "mapped", [159532]], [[194990, 194990], "mapped", [17757]], [[194991, 194991], "mapped", [17761]], [[194992, 194992], "mapped", [159665]], [[194993, 194993], "mapped", [159954]], [[194994, 194994], "mapped", [17771]], [[194995, 194995], "mapped", [34384]], [[194996, 194996], "mapped", [34396]], [[194997, 194997], "mapped", [34407]], [[194998, 194998], "mapped", [34409]], [[194999, 194999], "mapped", [34473]], [[195e3, 195e3], "mapped", [34440]], [[195001, 195001], "mapped", [34574]], [[195002, 195002], "mapped", [34530]], [[195003, 195003], "mapped", [34681]], [[195004, 195004], "mapped", [34600]], [[195005, 195005], "mapped", [34667]], [[195006, 195006], "mapped", [34694]], [[195007, 195007], "disallowed"], [[195008, 195008], "mapped", [34785]], [[195009, 195009], "mapped", [34817]], [[195010, 195010], "mapped", [17913]], [[195011, 195011], "mapped", [34912]], [[195012, 195012], "mapped", [34915]], [[195013, 195013], "mapped", [161383]], [[195014, 195014], "mapped", [35031]], [[195015, 195015], "mapped", [35038]], [[195016, 195016], "mapped", [17973]], [[195017, 195017], "mapped", [35066]], [[195018, 195018], "mapped", [13499]], [[195019, 195019], "mapped", [161966]], [[195020, 195020], "mapped", [162150]], [[195021, 195021], "mapped", [18110]], [[195022, 195022], "mapped", [18119]], [[195023, 195023], "mapped", [35488]], [[195024, 195024], "mapped", [35565]], [[195025, 195025], "mapped", [35722]], [[195026, 195026], "mapped", [35925]], [[195027, 195027], "mapped", [162984]], [[195028, 195028], "mapped", [36011]], [[195029, 195029], "mapped", [36033]], [[195030, 195030], "mapped", [36123]], [[195031, 195031], "mapped", [36215]], [[195032, 195032], "mapped", [163631]], [[195033, 195033], "mapped", [133124]], [[195034, 195034], "mapped", [36299]], [[195035, 195035], "mapped", [36284]], [[195036, 195036], "mapped", [36336]], [[195037, 195037], "mapped", [133342]], [[195038, 195038], "mapped", [36564]], [[195039, 195039], "mapped", [36664]], [[195040, 195040], "mapped", [165330]], [[195041, 195041], "mapped", [165357]], [[195042, 195042], "mapped", [37012]], [[195043, 195043], "mapped", [37105]], [[195044, 195044], "mapped", [37137]], [[195045, 195045], "mapped", [165678]], [[195046, 195046], "mapped", [37147]], [[195047, 195047], "mapped", [37432]], [[195048, 195048], "mapped", [37591]], [[195049, 195049], "mapped", [37592]], [[195050, 195050], "mapped", [37500]], [[195051, 195051], "mapped", [37881]], [[195052, 195052], "mapped", [37909]], [[195053, 195053], "mapped", [166906]], [[195054, 195054], "mapped", [38283]], [[195055, 195055], "mapped", [18837]], [[195056, 195056], "mapped", [38327]], [[195057, 195057], "mapped", [167287]], [[195058, 195058], "mapped", [18918]], [[195059, 195059], "mapped", [38595]], [[195060, 195060], "mapped", [23986]], [[195061, 195061], "mapped", [38691]], [[195062, 195062], "mapped", [168261]], [[195063, 195063], "mapped", [168474]], [[195064, 195064], "mapped", [19054]], [[195065, 195065], "mapped", [19062]], [[195066, 195066], "mapped", [38880]], [[195067, 195067], "mapped", [168970]], [[195068, 195068], "mapped", [19122]], [[195069, 195069], "mapped", [169110]], [[195070, 195071], "mapped", [38923]], [[195072, 195072], "mapped", [38953]], [[195073, 195073], "mapped", [169398]], [[195074, 195074], "mapped", [39138]], [[195075, 195075], "mapped", [19251]], [[195076, 195076], "mapped", [39209]], [[195077, 195077], "mapped", [39335]], [[195078, 195078], "mapped", [39362]], [[195079, 195079], "mapped", [39422]], [[195080, 195080], "mapped", [19406]], [[195081, 195081], "mapped", [170800]], [[195082, 195082], "mapped", [39698]], [[195083, 195083], "mapped", [4e4]], [[195084, 195084], "mapped", [40189]], [[195085, 195085], "mapped", [19662]], [[195086, 195086], "mapped", [19693]], [[195087, 195087], "mapped", [40295]], [[195088, 195088], "mapped", [172238]], [[195089, 195089], "mapped", [19704]], [[195090, 195090], "mapped", [172293]], [[195091, 195091], "mapped", [172558]], [[195092, 195092], "mapped", [172689]], [[195093, 195093], "mapped", [40635]], [[195094, 195094], "mapped", [19798]], [[195095, 195095], "mapped", [40697]], [[195096, 195096], "mapped", [40702]], [[195097, 195097], "mapped", [40709]], [[195098, 195098], "mapped", [40719]], [[195099, 195099], "mapped", [40726]], [[195100, 195100], "mapped", [40763]], [[195101, 195101], "mapped", [173568]], [[195102, 196605], "disallowed"], [[196606, 196607], "disallowed"], [[196608, 262141], "disallowed"], [[262142, 262143], "disallowed"], [[262144, 327677], "disallowed"], [[327678, 327679], "disallowed"], [[327680, 393213], "disallowed"], [[393214, 393215], "disallowed"], [[393216, 458749], "disallowed"], [[458750, 458751], "disallowed"], [[458752, 524285], "disallowed"], [[524286, 524287], "disallowed"], [[524288, 589821], "disallowed"], [[589822, 589823], "disallowed"], [[589824, 655357], "disallowed"], [[655358, 655359], "disallowed"], [[655360, 720893], "disallowed"], [[720894, 720895], "disallowed"], [[720896, 786429], "disallowed"], [[786430, 786431], "disallowed"], [[786432, 851965], "disallowed"], [[851966, 851967], "disallowed"], [[851968, 917501], "disallowed"], [[917502, 917503], "disallowed"], [[917504, 917504], "disallowed"], [[917505, 917505], "disallowed"], [[917506, 917535], "disallowed"], [[917536, 917631], "disallowed"], [[917632, 917759], "disallowed"], [[917760, 917999], "ignored"], [[918e3, 983037], "disallowed"], [[983038, 983039], "disallowed"], [[983040, 1048573], "disallowed"], [[1048574, 1048575], "disallowed"], [[1048576, 1114109], "disallowed"], [[1114110, 1114111], "disallowed"]];
+  }
+});
+
+// ../../../node_modules/tr46/index.js
+var require_tr46 = __commonJS({
+  "../../../node_modules/tr46/index.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var mappingTable = require_mappingTable();
+    var PROCESSING_OPTIONS = {
+      TRANSITIONAL: 0,
+      NONTRANSITIONAL: 1
+    };
+    function normalize(str) {
+      return str.split("\0").map(function(s) {
+        return s.normalize("NFC");
+      }).join("\0");
+    }
+    function findStatus(val2) {
+      var start = 0;
+      var end = mappingTable.length - 1;
+      while (start <= end) {
+        var mid = Math.floor((start + end) / 2);
+        var target = mappingTable[mid];
+        if (target[0][0] <= val2 && target[0][1] >= val2) {
+          return target;
+        } else if (target[0][0] > val2) {
+          end = mid - 1;
+        } else {
+          start = mid + 1;
+        }
+      }
+      return null;
+    }
+    var regexAstralSymbols = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
+    function countSymbols(string) {
+      return string.replace(regexAstralSymbols, "_").length;
+    }
+    function mapChars(domain_name, useSTD3, processing_option) {
+      var hasError = false;
+      var processed = "";
+      var len = countSymbols(domain_name);
+      for (var i = 0; i < len; ++i) {
+        var codePoint = domain_name.codePointAt(i);
+        var status = findStatus(codePoint);
+        switch (status[1]) {
+          case "disallowed":
+            hasError = true;
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "ignored":
+            break;
+          case "mapped":
+            processed += String.fromCodePoint.apply(String, status[2]);
+            break;
+          case "deviation":
+            if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            } else {
+              processed += String.fromCodePoint(codePoint);
+            }
+            break;
+          case "valid":
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "disallowed_STD3_mapped":
+            if (useSTD3) {
+              hasError = true;
+              processed += String.fromCodePoint(codePoint);
+            } else {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            }
+            break;
+          case "disallowed_STD3_valid":
+            if (useSTD3) {
+              hasError = true;
+            }
+            processed += String.fromCodePoint(codePoint);
+            break;
+        }
+      }
+      return {
+        string: processed,
+        error: hasError
+      };
+    }
+    var combiningMarksRegex = /[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/;
+    function validateLabel(label, processing_option) {
+      if (label.substr(0, 4) === "xn--") {
+        label = punycode.toUnicode(label);
+        processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL;
+      }
+      var error = false;
+      if (normalize(label) !== label || label[3] === "-" && label[4] === "-" || label[0] === "-" || label[label.length - 1] === "-" || label.indexOf(".") !== -1 || label.search(combiningMarksRegex) === 0) {
+        error = true;
+      }
+      var len = countSymbols(label);
+      for (var i = 0; i < len; ++i) {
+        var status = findStatus(label.codePointAt(i));
+        if (processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== "valid" || processing === PROCESSING_OPTIONS.NONTRANSITIONAL && status[1] !== "valid" && status[1] !== "deviation") {
+          error = true;
+          break;
+        }
+      }
+      return {
+        label,
+        error
+      };
+    }
+    function processing(domain_name, useSTD3, processing_option) {
+      var result = mapChars(domain_name, useSTD3, processing_option);
+      result.string = normalize(result.string);
+      var labels = result.string.split(".");
+      for (var i = 0; i < labels.length; ++i) {
+        try {
+          var validation = validateLabel(labels[i]);
+          labels[i] = validation.label;
+          result.error = result.error || validation.error;
+        } catch (e) {
+          result.error = true;
+        }
+      }
+      return {
+        string: labels.join("."),
+        error: result.error
+      };
+    }
+    module2.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) {
+      var result = processing(domain_name, useSTD3, processing_option);
+      var labels = result.string.split(".");
+      labels = labels.map(function(l) {
+        try {
+          return punycode.toASCII(l);
+        } catch (e) {
+          result.error = true;
+          return l;
+        }
+      });
+      if (verifyDnsLength) {
+        var total = labels.slice(0, labels.length - 1).join(".").length;
+        if (total.length > 253 || total.length === 0) {
+          result.error = true;
+        }
+        for (var i = 0; i < labels.length; ++i) {
+          if (labels.length > 63 || labels.length === 0) {
+            result.error = true;
+            break;
+          }
+        }
+      }
+      if (result.error) return null;
+      return labels.join(".");
+    };
+    module2.exports.toUnicode = function(domain_name, useSTD3) {
+      var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL);
+      return {
+        domain: result.string,
+        error: result.error
+      };
+    };
+    module2.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS;
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/url-state-machine.js
+var require_url_state_machine = __commonJS({
+  "../../../node_modules/whatwg-url/lib/url-state-machine.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var tr46 = require_tr46();
+    var specialSchemes = {
+      ftp: 21,
+      file: null,
+      gopher: 70,
+      http: 80,
+      https: 443,
+      ws: 80,
+      wss: 443
+    };
+    var failure = /* @__PURE__ */ Symbol("failure");
+    function countSymbols(str) {
+      return punycode.ucs2.decode(str).length;
+    }
+    function at(input, idx) {
+      const c = input[idx];
+      return isNaN(c) ? void 0 : String.fromCodePoint(c);
+    }
+    function isASCIIDigit(c) {
+      return c >= 48 && c <= 57;
+    }
+    function isASCIIAlpha(c) {
+      return c >= 65 && c <= 90 || c >= 97 && c <= 122;
+    }
+    function isASCIIAlphanumeric(c) {
+      return isASCIIAlpha(c) || isASCIIDigit(c);
+    }
+    function isASCIIHex(c) {
+      return isASCIIDigit(c) || c >= 65 && c <= 70 || c >= 97 && c <= 102;
+    }
+    function isSingleDot(buffer) {
+      return buffer === "." || buffer.toLowerCase() === "%2e";
+    }
+    function isDoubleDot(buffer) {
+      buffer = buffer.toLowerCase();
+      return buffer === ".." || buffer === "%2e." || buffer === ".%2e" || buffer === "%2e%2e";
+    }
+    function isWindowsDriveLetterCodePoints(cp1, cp2) {
+      return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124);
+    }
+    function isWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === ":" || string[1] === "|");
+    }
+    function isNormalizedWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === ":";
+    }
+    function containsForbiddenHostCodePoint(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function containsForbiddenHostCodePointExcludingPercent(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function isSpecialScheme(scheme) {
+      return specialSchemes[scheme] !== void 0;
+    }
+    function isSpecial(url2) {
+      return isSpecialScheme(url2.scheme);
+    }
+    function defaultPort(scheme) {
+      return specialSchemes[scheme];
+    }
+    function percentEncode(c) {
+      let hex2 = c.toString(16).toUpperCase();
+      if (hex2.length === 1) {
+        hex2 = "0" + hex2;
+      }
+      return "%" + hex2;
+    }
+    function utf8PercentEncode(c) {
+      const buf = new Buffer(c);
+      let str = "";
+      for (let i = 0; i < buf.length; ++i) {
+        str += percentEncode(buf[i]);
+      }
+      return str;
+    }
+    function utf8PercentDecode(str) {
+      const input = new Buffer(str);
+      const output = [];
+      for (let i = 0; i < input.length; ++i) {
+        if (input[i] !== 37) {
+          output.push(input[i]);
+        } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) {
+          output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16));
+          i += 2;
+        } else {
+          output.push(input[i]);
+        }
+      }
+      return new Buffer(output).toString();
+    }
+    function isC0ControlPercentEncode(c) {
+      return c <= 31 || c > 126;
+    }
+    var extraPathPercentEncodeSet = /* @__PURE__ */ new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]);
+    function isPathPercentEncode(c) {
+      return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c);
+    }
+    var extraUserinfoPercentEncodeSet = /* @__PURE__ */ new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]);
+    function isUserinfoPercentEncode(c) {
+      return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c);
+    }
+    function percentEncodeChar(c, encodeSetPredicate) {
+      const cStr = String.fromCodePoint(c);
+      if (encodeSetPredicate(c)) {
+        return utf8PercentEncode(cStr);
+      }
+      return cStr;
+    }
+    function parseIPv4Number(input) {
+      let R = 10;
+      if (input.length >= 2 && input.charAt(0) === "0" && input.charAt(1).toLowerCase() === "x") {
+        input = input.substring(2);
+        R = 16;
+      } else if (input.length >= 2 && input.charAt(0) === "0") {
+        input = input.substring(1);
+        R = 8;
+      }
+      if (input === "") {
+        return 0;
+      }
+      const regex = R === 10 ? /[^0-9]/ : R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/;
+      if (regex.test(input)) {
+        return failure;
+      }
+      return parseInt(input, R);
+    }
+    function parseIPv4(input) {
+      const parts = input.split(".");
+      if (parts[parts.length - 1] === "") {
+        if (parts.length > 1) {
+          parts.pop();
+        }
+      }
+      if (parts.length > 4) {
+        return input;
+      }
+      const numbers = [];
+      for (const part of parts) {
+        if (part === "") {
+          return input;
+        }
+        const n = parseIPv4Number(part);
+        if (n === failure) {
+          return input;
+        }
+        numbers.push(n);
+      }
+      for (let i = 0; i < numbers.length - 1; ++i) {
+        if (numbers[i] > 255) {
+          return failure;
+        }
+      }
+      if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) {
+        return failure;
+      }
+      let ipv4 = numbers.pop();
+      let counter = 0;
+      for (const n of numbers) {
+        ipv4 += n * Math.pow(256, 3 - counter);
+        ++counter;
+      }
+      return ipv4;
+    }
+    function serializeIPv4(address) {
+      let output = "";
+      let n = address;
+      for (let i = 1; i <= 4; ++i) {
+        output = String(n % 256) + output;
+        if (i !== 4) {
+          output = "." + output;
+        }
+        n = Math.floor(n / 256);
+      }
+      return output;
+    }
+    function parseIPv6(input) {
+      const address = [0, 0, 0, 0, 0, 0, 0, 0];
+      let pieceIndex = 0;
+      let compress = null;
+      let pointer = 0;
+      input = punycode.ucs2.decode(input);
+      if (input[pointer] === 58) {
+        if (input[pointer + 1] !== 58) {
+          return failure;
+        }
+        pointer += 2;
+        ++pieceIndex;
+        compress = pieceIndex;
+      }
+      while (pointer < input.length) {
+        if (pieceIndex === 8) {
+          return failure;
+        }
+        if (input[pointer] === 58) {
+          if (compress !== null) {
+            return failure;
+          }
+          ++pointer;
+          ++pieceIndex;
+          compress = pieceIndex;
+          continue;
+        }
+        let value = 0;
+        let length = 0;
+        while (length < 4 && isASCIIHex(input[pointer])) {
+          value = value * 16 + parseInt(at(input, pointer), 16);
+          ++pointer;
+          ++length;
+        }
+        if (input[pointer] === 46) {
+          if (length === 0) {
+            return failure;
+          }
+          pointer -= length;
+          if (pieceIndex > 6) {
+            return failure;
+          }
+          let numbersSeen = 0;
+          while (input[pointer] !== void 0) {
+            let ipv4Piece = null;
+            if (numbersSeen > 0) {
+              if (input[pointer] === 46 && numbersSeen < 4) {
+                ++pointer;
+              } else {
+                return failure;
+              }
+            }
+            if (!isASCIIDigit(input[pointer])) {
+              return failure;
+            }
+            while (isASCIIDigit(input[pointer])) {
+              const number = parseInt(at(input, pointer));
+              if (ipv4Piece === null) {
+                ipv4Piece = number;
+              } else if (ipv4Piece === 0) {
+                return failure;
+              } else {
+                ipv4Piece = ipv4Piece * 10 + number;
+              }
+              if (ipv4Piece > 255) {
+                return failure;
+              }
+              ++pointer;
+            }
+            address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;
+            ++numbersSeen;
+            if (numbersSeen === 2 || numbersSeen === 4) {
+              ++pieceIndex;
+            }
+          }
+          if (numbersSeen !== 4) {
+            return failure;
+          }
+          break;
+        } else if (input[pointer] === 58) {
+          ++pointer;
+          if (input[pointer] === void 0) {
+            return failure;
+          }
+        } else if (input[pointer] !== void 0) {
+          return failure;
+        }
+        address[pieceIndex] = value;
+        ++pieceIndex;
+      }
+      if (compress !== null) {
+        let swaps = pieceIndex - compress;
+        pieceIndex = 7;
+        while (pieceIndex !== 0 && swaps > 0) {
+          const temp = address[compress + swaps - 1];
+          address[compress + swaps - 1] = address[pieceIndex];
+          address[pieceIndex] = temp;
+          --pieceIndex;
+          --swaps;
+        }
+      } else if (compress === null && pieceIndex !== 8) {
+        return failure;
+      }
+      return address;
+    }
+    function serializeIPv6(address) {
+      let output = "";
+      const seqResult = findLongestZeroSequence(address);
+      const compress = seqResult.idx;
+      let ignore0 = false;
+      for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) {
+        if (ignore0 && address[pieceIndex] === 0) {
+          continue;
+        } else if (ignore0) {
+          ignore0 = false;
+        }
+        if (compress === pieceIndex) {
+          const separator = pieceIndex === 0 ? "::" : ":";
+          output += separator;
+          ignore0 = true;
+          continue;
+        }
+        output += address[pieceIndex].toString(16);
+        if (pieceIndex !== 7) {
+          output += ":";
+        }
+      }
+      return output;
+    }
+    function parseHost(input, isSpecialArg) {
+      if (input[0] === "[") {
+        if (input[input.length - 1] !== "]") {
+          return failure;
+        }
+        return parseIPv6(input.substring(1, input.length - 1));
+      }
+      if (!isSpecialArg) {
+        return parseOpaqueHost(input);
+      }
+      const domain = utf8PercentDecode(input);
+      const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false);
+      if (asciiDomain === null) {
+        return failure;
+      }
+      if (containsForbiddenHostCodePoint(asciiDomain)) {
+        return failure;
+      }
+      const ipv4Host = parseIPv4(asciiDomain);
+      if (typeof ipv4Host === "number" || ipv4Host === failure) {
+        return ipv4Host;
+      }
+      return asciiDomain;
+    }
+    function parseOpaqueHost(input) {
+      if (containsForbiddenHostCodePointExcludingPercent(input)) {
+        return failure;
+      }
+      let output = "";
+      const decoded = punycode.ucs2.decode(input);
+      for (let i = 0; i < decoded.length; ++i) {
+        output += percentEncodeChar(decoded[i], isC0ControlPercentEncode);
+      }
+      return output;
+    }
+    function findLongestZeroSequence(arr) {
+      let maxIdx = null;
+      let maxLen = 1;
+      let currStart = null;
+      let currLen = 0;
+      for (let i = 0; i < arr.length; ++i) {
+        if (arr[i] !== 0) {
+          if (currLen > maxLen) {
+            maxIdx = currStart;
+            maxLen = currLen;
+          }
+          currStart = null;
+          currLen = 0;
+        } else {
+          if (currStart === null) {
+            currStart = i;
+          }
+          ++currLen;
+        }
+      }
+      if (currLen > maxLen) {
+        maxIdx = currStart;
+        maxLen = currLen;
+      }
+      return {
+        idx: maxIdx,
+        len: maxLen
+      };
+    }
+    function serializeHost(host) {
+      if (typeof host === "number") {
+        return serializeIPv4(host);
+      }
+      if (host instanceof Array) {
+        return "[" + serializeIPv6(host) + "]";
+      }
+      return host;
+    }
+    function trimControlChars(url2) {
+      return url2.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g, "");
+    }
+    function trimTabAndNewline(url2) {
+      return url2.replace(/\u0009|\u000A|\u000D/g, "");
+    }
+    function shortenPath(url2) {
+      const path23 = url2.path;
+      if (path23.length === 0) {
+        return;
+      }
+      if (url2.scheme === "file" && path23.length === 1 && isNormalizedWindowsDriveLetter(path23[0])) {
+        return;
+      }
+      path23.pop();
+    }
+    function includesCredentials(url2) {
+      return url2.username !== "" || url2.password !== "";
+    }
+    function cannotHaveAUsernamePasswordPort(url2) {
+      return url2.host === null || url2.host === "" || url2.cannotBeABaseURL || url2.scheme === "file";
+    }
+    function isNormalizedWindowsDriveLetter(string) {
+      return /^[A-Za-z]:$/.test(string);
+    }
+    function URLStateMachine(input, base, encodingOverride, url2, stateOverride) {
+      this.pointer = 0;
+      this.input = input;
+      this.base = base || null;
+      this.encodingOverride = encodingOverride || "utf-8";
+      this.stateOverride = stateOverride;
+      this.url = url2;
+      this.failure = false;
+      this.parseError = false;
+      if (!this.url) {
+        this.url = {
+          scheme: "",
+          username: "",
+          password: "",
+          host: null,
+          port: null,
+          path: [],
+          query: null,
+          fragment: null,
+          cannotBeABaseURL: false
+        };
+        const res2 = trimControlChars(this.input);
+        if (res2 !== this.input) {
+          this.parseError = true;
+        }
+        this.input = res2;
+      }
+      const res = trimTabAndNewline(this.input);
+      if (res !== this.input) {
+        this.parseError = true;
+      }
+      this.input = res;
+      this.state = stateOverride || "scheme start";
+      this.buffer = "";
+      this.atFlag = false;
+      this.arrFlag = false;
+      this.passwordTokenSeenFlag = false;
+      this.input = punycode.ucs2.decode(this.input);
+      for (; this.pointer <= this.input.length; ++this.pointer) {
+        const c = this.input[this.pointer];
+        const cStr = isNaN(c) ? void 0 : String.fromCodePoint(c);
+        const ret = this["parse " + this.state](c, cStr);
+        if (!ret) {
+          break;
+        } else if (ret === failure) {
+          this.failure = true;
+          break;
+        }
+      }
+    }
+    URLStateMachine.prototype["parse scheme start"] = function parseSchemeStart(c, cStr) {
+      if (isASCIIAlpha(c)) {
+        this.buffer += cStr.toLowerCase();
+        this.state = "scheme";
+      } else if (!this.stateOverride) {
+        this.state = "no scheme";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse scheme"] = function parseScheme(c, cStr) {
+      if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) {
+        this.buffer += cStr.toLowerCase();
+      } else if (c === 58) {
+        if (this.stateOverride) {
+          if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === "file") {
+            return false;
+          }
+          if (this.url.scheme === "file" && (this.url.host === "" || this.url.host === null)) {
+            return false;
+          }
+        }
+        this.url.scheme = this.buffer;
+        this.buffer = "";
+        if (this.stateOverride) {
+          return false;
+        }
+        if (this.url.scheme === "file") {
+          if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) {
+            this.parseError = true;
+          }
+          this.state = "file";
+        } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) {
+          this.state = "special relative or authority";
+        } else if (isSpecial(this.url)) {
+          this.state = "special authority slashes";
+        } else if (this.input[this.pointer + 1] === 47) {
+          this.state = "path or authority";
+          ++this.pointer;
+        } else {
+          this.url.cannotBeABaseURL = true;
+          this.url.path.push("");
+          this.state = "cannot-be-a-base-URL path";
+        }
+      } else if (!this.stateOverride) {
+        this.buffer = "";
+        this.state = "no scheme";
+        this.pointer = -1;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse no scheme"] = function parseNoScheme(c) {
+      if (this.base === null || this.base.cannotBeABaseURL && c !== 35) {
+        return failure;
+      } else if (this.base.cannotBeABaseURL && c === 35) {
+        this.url.scheme = this.base.scheme;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.url.cannotBeABaseURL = true;
+        this.state = "fragment";
+      } else if (this.base.scheme === "file") {
+        this.state = "file";
+        --this.pointer;
+      } else {
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special relative or authority"] = function parseSpecialRelativeOrAuthority(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path or authority"] = function parsePathOrAuthority(c) {
+      if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative"] = function parseRelative(c) {
+      this.url.scheme = this.base.scheme;
+      if (isNaN(c)) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+      } else if (c === 47) {
+        this.state = "relative slash";
+      } else if (c === 63) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (isSpecial(this.url) && c === 92) {
+        this.parseError = true;
+        this.state = "relative slash";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice(0, this.base.path.length - 1);
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative slash"] = function parseRelativeSlash(c) {
+      if (isSpecial(this.url) && (c === 47 || c === 92)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "special authority ignore slashes";
+      } else if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority slashes"] = function parseSpecialAuthoritySlashes(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "special authority ignore slashes";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority ignore slashes"] = function parseSpecialAuthorityIgnoreSlashes(c) {
+      if (c !== 47 && c !== 92) {
+        this.state = "authority";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse authority"] = function parseAuthority(c, cStr) {
+      if (c === 64) {
+        this.parseError = true;
+        if (this.atFlag) {
+          this.buffer = "%40" + this.buffer;
+        }
+        this.atFlag = true;
+        const len = countSymbols(this.buffer);
+        for (let pointer = 0; pointer < len; ++pointer) {
+          const codePoint = this.buffer.codePointAt(pointer);
+          if (codePoint === 58 && !this.passwordTokenSeenFlag) {
+            this.passwordTokenSeenFlag = true;
+            continue;
+          }
+          const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode);
+          if (this.passwordTokenSeenFlag) {
+            this.url.password += encodedCodePoints;
+          } else {
+            this.url.username += encodedCodePoints;
+          }
+        }
+        this.buffer = "";
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        if (this.atFlag && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        this.pointer -= countSymbols(this.buffer) + 1;
+        this.buffer = "";
+        this.state = "host";
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse hostname"] = URLStateMachine.prototype["parse host"] = function parseHostName(c, cStr) {
+      if (this.stateOverride && this.url.scheme === "file") {
+        --this.pointer;
+        this.state = "file host";
+      } else if (c === 58 && !this.arrFlag) {
+        if (this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "port";
+        if (this.stateOverride === "hostname") {
+          return false;
+        }
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        --this.pointer;
+        if (isSpecial(this.url) && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        } else if (this.stateOverride && this.buffer === "" && (includesCredentials(this.url) || this.url.port !== null)) {
+          this.parseError = true;
+          return false;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "path start";
+        if (this.stateOverride) {
+          return false;
+        }
+      } else {
+        if (c === 91) {
+          this.arrFlag = true;
+        } else if (c === 93) {
+          this.arrFlag = false;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse port"] = function parsePort(c, cStr) {
+      if (isASCIIDigit(c)) {
+        this.buffer += cStr;
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92 || this.stateOverride) {
+        if (this.buffer !== "") {
+          const port = parseInt(this.buffer);
+          if (port > Math.pow(2, 16) - 1) {
+            this.parseError = true;
+            return failure;
+          }
+          this.url.port = port === defaultPort(this.url.scheme) ? null : port;
+          this.buffer = "";
+        }
+        if (this.stateOverride) {
+          return false;
+        }
+        this.state = "path start";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    var fileOtherwiseCodePoints = /* @__PURE__ */ new Set([47, 92, 63, 35]);
+    URLStateMachine.prototype["parse file"] = function parseFile(c) {
+      this.url.scheme = "file";
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file slash";
+      } else if (this.base !== null && this.base.scheme === "file") {
+        if (isNaN(c)) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+        } else if (c === 63) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = "";
+          this.state = "query";
+        } else if (c === 35) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+          this.url.fragment = "";
+          this.state = "fragment";
+        } else {
+          if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points
+          !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) || this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points
+          !fileOtherwiseCodePoints.has(this.input[this.pointer + 2])) {
+            this.url.host = this.base.host;
+            this.url.path = this.base.path.slice();
+            shortenPath(this.url);
+          } else {
+            this.parseError = true;
+          }
+          this.state = "path";
+          --this.pointer;
+        }
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file slash"] = function parseFileSlash(c) {
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file host";
+      } else {
+        if (this.base !== null && this.base.scheme === "file") {
+          if (isNormalizedWindowsDriveLetterString(this.base.path[0])) {
+            this.url.path.push(this.base.path[0]);
+          } else {
+            this.url.host = this.base.host;
+          }
+        }
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file host"] = function parseFileHost(c, cStr) {
+      if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) {
+        --this.pointer;
+        if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) {
+          this.parseError = true;
+          this.state = "path";
+        } else if (this.buffer === "") {
+          this.url.host = "";
+          if (this.stateOverride) {
+            return false;
+          }
+          this.state = "path start";
+        } else {
+          let host = parseHost(this.buffer, isSpecial(this.url));
+          if (host === failure) {
+            return failure;
+          }
+          if (host === "localhost") {
+            host = "";
+          }
+          this.url.host = host;
+          if (this.stateOverride) {
+            return false;
+          }
+          this.buffer = "";
+          this.state = "path start";
+        }
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path start"] = function parsePathStart(c) {
+      if (isSpecial(this.url)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "path";
+        if (c !== 47 && c !== 92) {
+          --this.pointer;
+        }
+      } else if (!this.stateOverride && c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (!this.stateOverride && c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (c !== void 0) {
+        this.state = "path";
+        if (c !== 47) {
+          --this.pointer;
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path"] = function parsePath(c) {
+      if (isNaN(c) || c === 47 || isSpecial(this.url) && c === 92 || !this.stateOverride && (c === 63 || c === 35)) {
+        if (isSpecial(this.url) && c === 92) {
+          this.parseError = true;
+        }
+        if (isDoubleDot(this.buffer)) {
+          shortenPath(this.url);
+          if (c !== 47 && !(isSpecial(this.url) && c === 92)) {
+            this.url.path.push("");
+          }
+        } else if (isSingleDot(this.buffer) && c !== 47 && !(isSpecial(this.url) && c === 92)) {
+          this.url.path.push("");
+        } else if (!isSingleDot(this.buffer)) {
+          if (this.url.scheme === "file" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) {
+            if (this.url.host !== "" && this.url.host !== null) {
+              this.parseError = true;
+              this.url.host = "";
+            }
+            this.buffer = this.buffer[0] + ":";
+          }
+          this.url.path.push(this.buffer);
+        }
+        this.buffer = "";
+        if (this.url.scheme === "file" && (c === void 0 || c === 63 || c === 35)) {
+          while (this.url.path.length > 1 && this.url.path[0] === "") {
+            this.parseError = true;
+            this.url.path.shift();
+          }
+        }
+        if (c === 63) {
+          this.url.query = "";
+          this.state = "query";
+        }
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += percentEncodeChar(c, isPathPercentEncode);
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse cannot-be-a-base-URL path"] = function parseCannotBeABaseURLPath(c) {
+      if (c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else {
+        if (!isNaN(c) && c !== 37) {
+          this.parseError = true;
+        }
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        if (!isNaN(c)) {
+          this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode);
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse query"] = function parseQuery(c, cStr) {
+      if (isNaN(c) || !this.stateOverride && c === 35) {
+        if (!isSpecial(this.url) || this.url.scheme === "ws" || this.url.scheme === "wss") {
+          this.encodingOverride = "utf-8";
+        }
+        const buffer = new Buffer(this.buffer);
+        for (let i = 0; i < buffer.length; ++i) {
+          if (buffer[i] < 33 || buffer[i] > 126 || buffer[i] === 34 || buffer[i] === 35 || buffer[i] === 60 || buffer[i] === 62) {
+            this.url.query += percentEncode(buffer[i]);
+          } else {
+            this.url.query += String.fromCodePoint(buffer[i]);
+          }
+        }
+        this.buffer = "";
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse fragment"] = function parseFragment(c) {
+      if (isNaN(c)) {
+      } else if (c === 0) {
+        this.parseError = true;
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode);
+      }
+      return true;
+    };
+    function serializeURL(url2, excludeFragment) {
+      let output = url2.scheme + ":";
+      if (url2.host !== null) {
+        output += "//";
+        if (url2.username !== "" || url2.password !== "") {
+          output += url2.username;
+          if (url2.password !== "") {
+            output += ":" + url2.password;
+          }
+          output += "@";
+        }
+        output += serializeHost(url2.host);
+        if (url2.port !== null) {
+          output += ":" + url2.port;
+        }
+      } else if (url2.host === null && url2.scheme === "file") {
+        output += "//";
+      }
+      if (url2.cannotBeABaseURL) {
+        output += url2.path[0];
+      } else {
+        for (const string of url2.path) {
+          output += "/" + string;
+        }
+      }
+      if (url2.query !== null) {
+        output += "?" + url2.query;
+      }
+      if (!excludeFragment && url2.fragment !== null) {
+        output += "#" + url2.fragment;
+      }
+      return output;
+    }
+    function serializeOrigin(tuple) {
+      let result = tuple.scheme + "://";
+      result += serializeHost(tuple.host);
+      if (tuple.port !== null) {
+        result += ":" + tuple.port;
+      }
+      return result;
+    }
+    module2.exports.serializeURL = serializeURL;
+    module2.exports.serializeURLOrigin = function(url2) {
+      switch (url2.scheme) {
+        case "blob":
+          try {
+            return module2.exports.serializeURLOrigin(module2.exports.parseURL(url2.path[0]));
+          } catch (e) {
+            return "null";
+          }
+        case "ftp":
+        case "gopher":
+        case "http":
+        case "https":
+        case "ws":
+        case "wss":
+          return serializeOrigin({
+            scheme: url2.scheme,
+            host: url2.host,
+            port: url2.port
+          });
+        case "file":
+          return "file://";
+        default:
+          return "null";
+      }
+    };
+    module2.exports.basicURLParse = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride);
+      if (usm.failure) {
+        return "failure";
+      }
+      return usm.url;
+    };
+    module2.exports.setTheUsername = function(url2, username) {
+      url2.username = "";
+      const decoded = punycode.ucs2.decode(username);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.setThePassword = function(url2, password) {
+      url2.password = "";
+      const decoded = punycode.ucs2.decode(password);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.serializeHost = serializeHost;
+    module2.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort;
+    module2.exports.serializeInteger = function(integer) {
+      return String(integer);
+    };
+    module2.exports.parseURL = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      return module2.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride });
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL-impl.js
+var require_URL_impl = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL-impl.js"(exports2) {
+    "use strict";
+    var usm = require_url_state_machine();
+    exports2.implementation = class URLImpl {
+      constructor(constructorArgs) {
+        const url2 = constructorArgs[0];
+        const base = constructorArgs[1];
+        let parsedBase = null;
+        if (base !== void 0) {
+          parsedBase = usm.basicURLParse(base);
+          if (parsedBase === "failure") {
+            throw new TypeError("Invalid base URL");
+          }
+        }
+        const parsedURL = usm.basicURLParse(url2, { baseURL: parsedBase });
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get href() {
+        return usm.serializeURL(this._url);
+      }
+      set href(v) {
+        const parsedURL = usm.basicURLParse(v);
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get origin() {
+        return usm.serializeURLOrigin(this._url);
+      }
+      get protocol() {
+        return this._url.scheme + ":";
+      }
+      set protocol(v) {
+        usm.basicURLParse(v + ":", { url: this._url, stateOverride: "scheme start" });
+      }
+      get username() {
+        return this._url.username;
+      }
+      set username(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setTheUsername(this._url, v);
+      }
+      get password() {
+        return this._url.password;
+      }
+      set password(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setThePassword(this._url, v);
+      }
+      get host() {
+        const url2 = this._url;
+        if (url2.host === null) {
+          return "";
+        }
+        if (url2.port === null) {
+          return usm.serializeHost(url2.host);
+        }
+        return usm.serializeHost(url2.host) + ":" + usm.serializeInteger(url2.port);
+      }
+      set host(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "host" });
+      }
+      get hostname() {
+        if (this._url.host === null) {
+          return "";
+        }
+        return usm.serializeHost(this._url.host);
+      }
+      set hostname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "hostname" });
+      }
+      get port() {
+        if (this._url.port === null) {
+          return "";
+        }
+        return usm.serializeInteger(this._url.port);
+      }
+      set port(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        if (v === "") {
+          this._url.port = null;
+        } else {
+          usm.basicURLParse(v, { url: this._url, stateOverride: "port" });
+        }
+      }
+      get pathname() {
+        if (this._url.cannotBeABaseURL) {
+          return this._url.path[0];
+        }
+        if (this._url.path.length === 0) {
+          return "";
+        }
+        return "/" + this._url.path.join("/");
+      }
+      set pathname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        this._url.path = [];
+        usm.basicURLParse(v, { url: this._url, stateOverride: "path start" });
+      }
+      get search() {
+        if (this._url.query === null || this._url.query === "") {
+          return "";
+        }
+        return "?" + this._url.query;
+      }
+      set search(v) {
+        const url2 = this._url;
+        if (v === "") {
+          url2.query = null;
+          return;
+        }
+        const input = v[0] === "?" ? v.substring(1) : v;
+        url2.query = "";
+        usm.basicURLParse(input, { url: url2, stateOverride: "query" });
+      }
+      get hash() {
+        if (this._url.fragment === null || this._url.fragment === "") {
+          return "";
+        }
+        return "#" + this._url.fragment;
+      }
+      set hash(v) {
+        if (v === "") {
+          this._url.fragment = null;
+          return;
+        }
+        const input = v[0] === "#" ? v.substring(1) : v;
+        this._url.fragment = "";
+        usm.basicURLParse(input, { url: this._url, stateOverride: "fragment" });
+      }
+      toJSON() {
+        return this.href;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL.js
+var require_URL = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL.js"(exports2, module2) {
+    "use strict";
+    var conversions = require_lib7();
+    var utils = require_utils3();
+    var Impl = require_URL_impl();
+    var impl = utils.implSymbol;
+    function URL3(url2) {
+      if (!this || this[impl] || !(this instanceof URL3)) {
+        throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");
+      }
+      if (arguments.length < 1) {
+        throw new TypeError("Failed to construct 'URL': 1 argument required, but only " + arguments.length + " present.");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 2; ++i) {
+        args[i] = arguments[i];
+      }
+      args[0] = conversions["USVString"](args[0]);
+      if (args[1] !== void 0) {
+        args[1] = conversions["USVString"](args[1]);
+      }
+      module2.exports.setup(this, args);
+    }
+    URL3.prototype.toJSON = function toJSON() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 0; ++i) {
+        args[i] = arguments[i];
+      }
+      return this[impl].toJSON.apply(this[impl], args);
+    };
+    Object.defineProperty(URL3.prototype, "href", {
+      get() {
+        return this[impl].href;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].href = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    URL3.prototype.toString = function() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      return this.href;
+    };
+    Object.defineProperty(URL3.prototype, "origin", {
+      get() {
+        return this[impl].origin;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "protocol", {
+      get() {
+        return this[impl].protocol;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].protocol = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "username", {
+      get() {
+        return this[impl].username;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].username = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "password", {
+      get() {
+        return this[impl].password;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].password = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "host", {
+      get() {
+        return this[impl].host;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].host = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hostname", {
+      get() {
+        return this[impl].hostname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hostname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "port", {
+      get() {
+        return this[impl].port;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].port = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "pathname", {
+      get() {
+        return this[impl].pathname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].pathname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "search", {
+      get() {
+        return this[impl].search;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].search = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hash", {
+      get() {
+        return this[impl].hash;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hash = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    module2.exports = {
+      is(obj) {
+        return !!obj && obj[impl] instanceof Impl.implementation;
+      },
+      create(constructorArgs, privateData) {
+        let obj = Object.create(URL3.prototype);
+        this.setup(obj, constructorArgs, privateData);
+        return obj;
+      },
+      setup(obj, constructorArgs, privateData) {
+        if (!privateData) privateData = {};
+        privateData.wrapper = obj;
+        obj[impl] = new Impl.implementation(constructorArgs, privateData);
+        obj[impl][utils.wrapperSymbol] = obj;
+      },
+      interface: URL3,
+      expose: {
+        Window: { URL: URL3 },
+        Worker: { URL: URL3 }
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/public-api.js
+var require_public_api = __commonJS({
+  "../../../node_modules/whatwg-url/lib/public-api.js"(exports2) {
+    "use strict";
+    exports2.URL = require_URL().interface;
+    exports2.serializeURL = require_url_state_machine().serializeURL;
+    exports2.serializeURLOrigin = require_url_state_machine().serializeURLOrigin;
+    exports2.basicURLParse = require_url_state_machine().basicURLParse;
+    exports2.setTheUsername = require_url_state_machine().setTheUsername;
+    exports2.setThePassword = require_url_state_machine().setThePassword;
+    exports2.serializeHost = require_url_state_machine().serializeHost;
+    exports2.serializeInteger = require_url_state_machine().serializeInteger;
+    exports2.parseURL = require_url_state_machine().parseURL;
+  }
+});
+
+// ../../../node_modules/safer-buffer/safer.js
+var require_safer = __commonJS({
+  "../../../node_modules/safer-buffer/safer.js"(exports2, module2) {
+    "use strict";
+    var buffer = require("buffer");
+    var Buffer2 = buffer.Buffer;
+    var safer = {};
+    var key;
+    for (key in buffer) {
+      if (!buffer.hasOwnProperty(key)) continue;
+      if (key === "SlowBuffer" || key === "Buffer") continue;
+      safer[key] = buffer[key];
+    }
+    var Safer = safer.Buffer = {};
+    for (key in Buffer2) {
+      if (!Buffer2.hasOwnProperty(key)) continue;
+      if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue;
+      Safer[key] = Buffer2[key];
+    }
+    safer.Buffer.prototype = Buffer2.prototype;
+    if (!Safer.from || Safer.from === Uint8Array.from) {
+      Safer.from = function(value, encodingOrOffset, length) {
+        if (typeof value === "number") {
+          throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value);
+        }
+        if (value && typeof value.length === "undefined") {
+          throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value);
+        }
+        return Buffer2(value, encodingOrOffset, length);
+      };
+    }
+    if (!Safer.alloc) {
+      Safer.alloc = function(size, fill, encoding) {
+        if (typeof size !== "number") {
+          throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size);
+        }
+        if (size < 0 || size >= 2 * (1 << 30)) {
+          throw new RangeError('The value "' + size + '" is invalid for option "size"');
+        }
+        var buf = Buffer2(size);
+        if (!fill || fill.length === 0) {
+          buf.fill(0);
+        } else if (typeof encoding === "string") {
+          buf.fill(fill, encoding);
+        } else {
+          buf.fill(fill);
+        }
+        return buf;
+      };
+    }
+    if (!safer.kStringMaxLength) {
+      try {
+        safer.kStringMaxLength = process.binding("buffer").kStringMaxLength;
+      } catch (e) {
+      }
+    }
+    if (!safer.constants) {
+      safer.constants = {
+        MAX_LENGTH: safer.kMaxLength
+      };
+      if (safer.kStringMaxLength) {
+        safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength;
+      }
+    }
+    module2.exports = safer;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js
+var require_bom_handling = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js"(exports2) {
+    "use strict";
+    var BOMChar = "\uFEFF";
+    exports2.PrependBOM = PrependBOMWrapper;
+    function PrependBOMWrapper(encoder, options) {
+      this.encoder = encoder;
+      this.addBOM = true;
+    }
+    PrependBOMWrapper.prototype.write = function(str) {
+      if (this.addBOM) {
+        str = BOMChar + str;
+        this.addBOM = false;
+      }
+      return this.encoder.write(str);
+    };
+    PrependBOMWrapper.prototype.end = function() {
+      return this.encoder.end();
+    };
+    exports2.StripBOM = StripBOMWrapper;
+    function StripBOMWrapper(decoder2, options) {
+      this.decoder = decoder2;
+      this.pass = false;
+      this.options = options || {};
+    }
+    StripBOMWrapper.prototype.write = function(buf) {
+      var res = this.decoder.write(buf);
+      if (this.pass || !res)
+        return res;
+      if (res[0] === BOMChar) {
+        res = res.slice(1);
+        if (typeof this.options.stripBOM === "function")
+          this.options.stripBOM();
+      }
+      this.pass = true;
+      return res;
+    };
+    StripBOMWrapper.prototype.end = function() {
+      return this.decoder.end();
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js
+var require_internal = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = {
+      // Encodings
+      utf8: { type: "_internal", bomAware: true },
+      cesu8: { type: "_internal", bomAware: true },
+      unicode11utf8: "utf8",
+      ucs2: { type: "_internal", bomAware: true },
+      utf16le: "ucs2",
+      binary: { type: "_internal" },
+      base64: { type: "_internal" },
+      hex: { type: "_internal" },
+      // Codec.
+      _internal: InternalCodec
+    };
+    function InternalCodec(codecOptions, iconv) {
+      this.enc = codecOptions.encodingName;
+      this.bomAware = codecOptions.bomAware;
+      if (this.enc === "base64")
+        this.encoder = InternalEncoderBase64;
+      else if (this.enc === "cesu8") {
+        this.enc = "utf8";
+        this.encoder = InternalEncoderCesu8;
+        if (Buffer2.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") {
+          this.decoder = InternalDecoderCesu8;
+          this.defaultCharUnicode = iconv.defaultCharUnicode;
+        }
+      }
+    }
+    InternalCodec.prototype.encoder = InternalEncoder;
+    InternalCodec.prototype.decoder = InternalDecoder;
+    var StringDecoder = require("string_decoder").StringDecoder;
+    if (!StringDecoder.prototype.end)
+      StringDecoder.prototype.end = function() {
+      };
+    function InternalDecoder(options, codec) {
+      this.decoder = new StringDecoder(codec.enc);
+    }
+    InternalDecoder.prototype.write = function(buf) {
+      if (!Buffer2.isBuffer(buf)) {
+        buf = Buffer2.from(buf);
+      }
+      return this.decoder.write(buf);
+    };
+    InternalDecoder.prototype.end = function() {
+      return this.decoder.end();
+    };
+    function InternalEncoder(options, codec) {
+      this.enc = codec.enc;
+    }
+    InternalEncoder.prototype.write = function(str) {
+      return Buffer2.from(str, this.enc);
+    };
+    InternalEncoder.prototype.end = function() {
+    };
+    function InternalEncoderBase64(options, codec) {
+      this.prevStr = "";
+    }
+    InternalEncoderBase64.prototype.write = function(str) {
+      str = this.prevStr + str;
+      var completeQuads = str.length - str.length % 4;
+      this.prevStr = str.slice(completeQuads);
+      str = str.slice(0, completeQuads);
+      return Buffer2.from(str, "base64");
+    };
+    InternalEncoderBase64.prototype.end = function() {
+      return Buffer2.from(this.prevStr, "base64");
+    };
+    function InternalEncoderCesu8(options, codec) {
+    }
+    InternalEncoderCesu8.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length * 3), bufIdx = 0;
+      for (var i = 0; i < str.length; i++) {
+        var charCode = str.charCodeAt(i);
+        if (charCode < 128)
+          buf[bufIdx++] = charCode;
+        else if (charCode < 2048) {
+          buf[bufIdx++] = 192 + (charCode >>> 6);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        } else {
+          buf[bufIdx++] = 224 + (charCode >>> 12);
+          buf[bufIdx++] = 128 + (charCode >>> 6 & 63);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        }
+      }
+      return buf.slice(0, bufIdx);
+    };
+    InternalEncoderCesu8.prototype.end = function() {
+    };
+    function InternalDecoderCesu8(options, codec) {
+      this.acc = 0;
+      this.contBytes = 0;
+      this.accBytes = 0;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+    }
+    InternalDecoderCesu8.prototype.write = function(buf) {
+      var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes, res = "";
+      for (var i = 0; i < buf.length; i++) {
+        var curByte = buf[i];
+        if ((curByte & 192) !== 128) {
+          if (contBytes > 0) {
+            res += this.defaultCharUnicode;
+            contBytes = 0;
+          }
+          if (curByte < 128) {
+            res += String.fromCharCode(curByte);
+          } else if (curByte < 224) {
+            acc = curByte & 31;
+            contBytes = 1;
+            accBytes = 1;
+          } else if (curByte < 240) {
+            acc = curByte & 15;
+            contBytes = 2;
+            accBytes = 1;
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        } else {
+          if (contBytes > 0) {
+            acc = acc << 6 | curByte & 63;
+            contBytes--;
+            accBytes++;
+            if (contBytes === 0) {
+              if (accBytes === 2 && acc < 128 && acc > 0)
+                res += this.defaultCharUnicode;
+              else if (accBytes === 3 && acc < 2048)
+                res += this.defaultCharUnicode;
+              else
+                res += String.fromCharCode(acc);
+            }
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        }
+      }
+      this.acc = acc;
+      this.contBytes = contBytes;
+      this.accBytes = accBytes;
+      return res;
+    };
+    InternalDecoderCesu8.prototype.end = function() {
+      var res = 0;
+      if (this.contBytes > 0)
+        res += this.defaultCharUnicode;
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js
+var require_utf32 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._utf32 = Utf32Codec;
+    function Utf32Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+      this.bomAware = true;
+      this.isLE = codecOptions.isLE;
+    }
+    exports2.utf32le = { type: "_utf32", isLE: true };
+    exports2.utf32be = { type: "_utf32", isLE: false };
+    exports2.ucs4le = "utf32le";
+    exports2.ucs4be = "utf32be";
+    Utf32Codec.prototype.encoder = Utf32Encoder;
+    Utf32Codec.prototype.decoder = Utf32Decoder;
+    function Utf32Encoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.highSurrogate = 0;
+    }
+    Utf32Encoder.prototype.write = function(str) {
+      var src = Buffer2.from(str, "ucs2");
+      var dst = Buffer2.alloc(src.length * 2);
+      var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE;
+      var offset = 0;
+      for (var i = 0; i < src.length; i += 2) {
+        var code = src.readUInt16LE(i);
+        var isHighSurrogate = 55296 <= code && code < 56320;
+        var isLowSurrogate = 56320 <= code && code < 57344;
+        if (this.highSurrogate) {
+          if (isHighSurrogate || !isLowSurrogate) {
+            write32.call(dst, this.highSurrogate, offset);
+            offset += 4;
+          } else {
+            var codepoint = (this.highSurrogate - 55296 << 10 | code - 56320) + 65536;
+            write32.call(dst, codepoint, offset);
+            offset += 4;
+            this.highSurrogate = 0;
+            continue;
+          }
+        }
+        if (isHighSurrogate)
+          this.highSurrogate = code;
+        else {
+          write32.call(dst, code, offset);
+          offset += 4;
+          this.highSurrogate = 0;
+        }
+      }
+      if (offset < dst.length)
+        dst = dst.slice(0, offset);
+      return dst;
+    };
+    Utf32Encoder.prototype.end = function() {
+      if (!this.highSurrogate)
+        return;
+      var buf = Buffer2.alloc(4);
+      if (this.isLE)
+        buf.writeUInt32LE(this.highSurrogate, 0);
+      else
+        buf.writeUInt32BE(this.highSurrogate, 0);
+      this.highSurrogate = 0;
+      return buf;
+    };
+    function Utf32Decoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.badChar = codec.iconv.defaultCharUnicode.charCodeAt(0);
+      this.overflow = [];
+    }
+    Utf32Decoder.prototype.write = function(src) {
+      if (src.length === 0)
+        return "";
+      var i = 0;
+      var codepoint = 0;
+      var dst = Buffer2.alloc(src.length + 4);
+      var offset = 0;
+      var isLE = this.isLE;
+      var overflow = this.overflow;
+      var badChar = this.badChar;
+      if (overflow.length > 0) {
+        for (; i < src.length && overflow.length < 4; i++)
+          overflow.push(src[i]);
+        if (overflow.length === 4) {
+          if (isLE) {
+            codepoint = overflow[i] | overflow[i + 1] << 8 | overflow[i + 2] << 16 | overflow[i + 3] << 24;
+          } else {
+            codepoint = overflow[i + 3] | overflow[i + 2] << 8 | overflow[i + 1] << 16 | overflow[i] << 24;
+          }
+          overflow.length = 0;
+          offset = _writeCodepoint(dst, offset, codepoint, badChar);
+        }
+      }
+      for (; i < src.length - 3; i += 4) {
+        if (isLE) {
+          codepoint = src[i] | src[i + 1] << 8 | src[i + 2] << 16 | src[i + 3] << 24;
+        } else {
+          codepoint = src[i + 3] | src[i + 2] << 8 | src[i + 1] << 16 | src[i] << 24;
+        }
+        offset = _writeCodepoint(dst, offset, codepoint, badChar);
+      }
+      for (; i < src.length; i++) {
+        overflow.push(src[i]);
+      }
+      return dst.slice(0, offset).toString("ucs2");
+    };
+    function _writeCodepoint(dst, offset, codepoint, badChar) {
+      if (codepoint < 0 || codepoint > 1114111) {
+        codepoint = badChar;
+      }
+      if (codepoint >= 65536) {
+        codepoint -= 65536;
+        var high = 55296 | codepoint >> 10;
+        dst[offset++] = high & 255;
+        dst[offset++] = high >> 8;
+        var codepoint = 56320 | codepoint & 1023;
+      }
+      dst[offset++] = codepoint & 255;
+      dst[offset++] = codepoint >> 8;
+      return offset;
+    }
+    Utf32Decoder.prototype.end = function() {
+      this.overflow.length = 0;
+    };
+    exports2.utf32 = Utf32AutoCodec;
+    exports2.ucs4 = "utf32";
+    function Utf32AutoCodec(options, iconv) {
+      this.iconv = iconv;
+    }
+    Utf32AutoCodec.prototype.encoder = Utf32AutoEncoder;
+    Utf32AutoCodec.prototype.decoder = Utf32AutoDecoder;
+    function Utf32AutoEncoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder(options.defaultEncoding || "utf-32le", options);
+    }
+    Utf32AutoEncoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf32AutoEncoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf32AutoDecoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf32AutoDecoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 32)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf32AutoDecoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var invalidLE = 0, invalidBE = 0;
+      var bmpCharsLE = 0, bmpCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 4) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254 && b[2] === 0 && b[3] === 0) {
+                  return "utf-32le";
+                }
+                if (b[0] === 0 && b[1] === 0 && b[2] === 254 && b[3] === 255) {
+                  return "utf-32be";
+                }
+              }
+              if (b[0] !== 0 || b[1] > 16) invalidBE++;
+              if (b[3] !== 0 || b[2] > 16) invalidLE++;
+              if (b[0] === 0 && b[1] === 0 && (b[2] !== 0 || b[3] !== 0)) bmpCharsBE++;
+              if ((b[0] !== 0 || b[1] !== 0) && b[2] === 0 && b[3] === 0) bmpCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (bmpCharsBE - invalidBE > bmpCharsLE - invalidLE) return "utf-32be";
+      if (bmpCharsBE - invalidBE < bmpCharsLE - invalidLE) return "utf-32le";
+      return defaultEncoding || "utf-32le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js
+var require_utf16 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf16be = Utf16BECodec;
+    function Utf16BECodec() {
+    }
+    Utf16BECodec.prototype.encoder = Utf16BEEncoder;
+    Utf16BECodec.prototype.decoder = Utf16BEDecoder;
+    Utf16BECodec.prototype.bomAware = true;
+    function Utf16BEEncoder() {
+    }
+    Utf16BEEncoder.prototype.write = function(str) {
+      var buf = Buffer2.from(str, "ucs2");
+      for (var i = 0; i < buf.length; i += 2) {
+        var tmp = buf[i];
+        buf[i] = buf[i + 1];
+        buf[i + 1] = tmp;
+      }
+      return buf;
+    };
+    Utf16BEEncoder.prototype.end = function() {
+    };
+    function Utf16BEDecoder() {
+      this.overflowByte = -1;
+    }
+    Utf16BEDecoder.prototype.write = function(buf) {
+      if (buf.length == 0)
+        return "";
+      var buf2 = Buffer2.alloc(buf.length + 1), i = 0, j = 0;
+      if (this.overflowByte !== -1) {
+        buf2[0] = buf[0];
+        buf2[1] = this.overflowByte;
+        i = 1;
+        j = 2;
+      }
+      for (; i < buf.length - 1; i += 2, j += 2) {
+        buf2[j] = buf[i + 1];
+        buf2[j + 1] = buf[i];
+      }
+      this.overflowByte = i == buf.length - 1 ? buf[buf.length - 1] : -1;
+      return buf2.slice(0, j).toString("ucs2");
+    };
+    Utf16BEDecoder.prototype.end = function() {
+      this.overflowByte = -1;
+    };
+    exports2.utf16 = Utf16Codec;
+    function Utf16Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf16Codec.prototype.encoder = Utf16Encoder;
+    Utf16Codec.prototype.decoder = Utf16Decoder;
+    function Utf16Encoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder("utf-16le", options);
+    }
+    Utf16Encoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf16Encoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf16Decoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf16Decoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 16)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf16Decoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var asciiCharsLE = 0, asciiCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 2) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254) return "utf-16le";
+                if (b[0] === 254 && b[1] === 255) return "utf-16be";
+              }
+              if (b[0] === 0 && b[1] !== 0) asciiCharsBE++;
+              if (b[0] !== 0 && b[1] === 0) asciiCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (asciiCharsBE > asciiCharsLE) return "utf-16be";
+      if (asciiCharsBE < asciiCharsLE) return "utf-16le";
+      return defaultEncoding || "utf-16le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js
+var require_utf7 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf7 = Utf7Codec;
+    exports2.unicode11utf7 = "utf7";
+    function Utf7Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7Codec.prototype.encoder = Utf7Encoder;
+    Utf7Codec.prototype.decoder = Utf7Decoder;
+    Utf7Codec.prototype.bomAware = true;
+    var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;
+    function Utf7Encoder(options, codec) {
+      this.iconv = codec.iconv;
+    }
+    Utf7Encoder.prototype.write = function(str) {
+      return Buffer2.from(str.replace(nonDirectChars, function(chunk) {
+        return "+" + (chunk === "+" ? "" : this.iconv.encode(chunk, "utf16-be").toString("base64").replace(/=+$/, "")) + "-";
+      }.bind(this)));
+    };
+    Utf7Encoder.prototype.end = function() {
+    };
+    function Utf7Decoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64Regex = /[A-Za-z0-9\/+]/;
+    var base64Chars = [];
+    for (i = 0; i < 256; i++)
+      base64Chars[i] = base64Regex.test(String.fromCharCode(i));
+    var i;
+    var plusChar = "+".charCodeAt(0);
+    var minusChar = "-".charCodeAt(0);
+    var andChar = "&".charCodeAt(0);
+    Utf7Decoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == plusChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64Chars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "+";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7Decoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+    exports2.utf7imap = Utf7IMAPCodec;
+    function Utf7IMAPCodec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder;
+    Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder;
+    Utf7IMAPCodec.prototype.bomAware = true;
+    function Utf7IMAPEncoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = Buffer2.alloc(6);
+      this.base64AccumIdx = 0;
+    }
+    Utf7IMAPEncoder.prototype.write = function(str) {
+      var inBase64 = this.inBase64, base64Accum = this.base64Accum, base64AccumIdx = this.base64AccumIdx, buf = Buffer2.alloc(str.length * 5 + 10), bufIdx = 0;
+      for (var i2 = 0; i2 < str.length; i2++) {
+        var uChar = str.charCodeAt(i2);
+        if (32 <= uChar && uChar <= 126) {
+          if (inBase64) {
+            if (base64AccumIdx > 0) {
+              bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+              base64AccumIdx = 0;
+            }
+            buf[bufIdx++] = minusChar;
+            inBase64 = false;
+          }
+          if (!inBase64) {
+            buf[bufIdx++] = uChar;
+            if (uChar === andChar)
+              buf[bufIdx++] = minusChar;
+          }
+        } else {
+          if (!inBase64) {
+            buf[bufIdx++] = andChar;
+            inBase64 = true;
+          }
+          if (inBase64) {
+            base64Accum[base64AccumIdx++] = uChar >> 8;
+            base64Accum[base64AccumIdx++] = uChar & 255;
+            if (base64AccumIdx == base64Accum.length) {
+              bufIdx += buf.write(base64Accum.toString("base64").replace(/\//g, ","), bufIdx);
+              base64AccumIdx = 0;
+            }
+          }
+        }
+      }
+      this.inBase64 = inBase64;
+      this.base64AccumIdx = base64AccumIdx;
+      return buf.slice(0, bufIdx);
+    };
+    Utf7IMAPEncoder.prototype.end = function() {
+      var buf = Buffer2.alloc(10), bufIdx = 0;
+      if (this.inBase64) {
+        if (this.base64AccumIdx > 0) {
+          bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+          this.base64AccumIdx = 0;
+        }
+        buf[bufIdx++] = minusChar;
+        this.inBase64 = false;
+      }
+      return buf.slice(0, bufIdx);
+    };
+    function Utf7IMAPDecoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64IMAPChars = base64Chars.slice();
+    base64IMAPChars[",".charCodeAt(0)] = true;
+    Utf7IMAPDecoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == andChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64IMAPChars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "&";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii").replace(/,/g, "/");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii").replace(/,/g, "/");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7IMAPDecoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js
+var require_sbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._sbcs = SBCSCodec;
+    function SBCSCodec(codecOptions, iconv) {
+      if (!codecOptions)
+        throw new Error("SBCS codec is called without the data.");
+      if (!codecOptions.chars || codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256)
+        throw new Error("Encoding '" + codecOptions.type + "' has incorrect 'chars' (must be of len 128 or 256)");
+      if (codecOptions.chars.length === 128) {
+        var asciiString = "";
+        for (var i = 0; i < 128; i++)
+          asciiString += String.fromCharCode(i);
+        codecOptions.chars = asciiString + codecOptions.chars;
+      }
+      this.decodeBuf = Buffer2.from(codecOptions.chars, "ucs2");
+      var encodeBuf = Buffer2.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0));
+      for (var i = 0; i < codecOptions.chars.length; i++)
+        encodeBuf[codecOptions.chars.charCodeAt(i)] = i;
+      this.encodeBuf = encodeBuf;
+    }
+    SBCSCodec.prototype.encoder = SBCSEncoder;
+    SBCSCodec.prototype.decoder = SBCSDecoder;
+    function SBCSEncoder(options, codec) {
+      this.encodeBuf = codec.encodeBuf;
+    }
+    SBCSEncoder.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length);
+      for (var i = 0; i < str.length; i++)
+        buf[i] = this.encodeBuf[str.charCodeAt(i)];
+      return buf;
+    };
+    SBCSEncoder.prototype.end = function() {
+    };
+    function SBCSDecoder(options, codec) {
+      this.decodeBuf = codec.decodeBuf;
+    }
+    SBCSDecoder.prototype.write = function(buf) {
+      var decodeBuf = this.decodeBuf;
+      var newBuf = Buffer2.alloc(buf.length * 2);
+      var idx1 = 0, idx2 = 0;
+      for (var i = 0; i < buf.length; i++) {
+        idx1 = buf[i] * 2;
+        idx2 = i * 2;
+        newBuf[idx2] = decodeBuf[idx1];
+        newBuf[idx2 + 1] = decodeBuf[idx1 + 1];
+      }
+      return newBuf.toString("ucs2");
+    };
+    SBCSDecoder.prototype.end = function() {
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js
+var require_sbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // Not supported by iconv, not sure why.
+      "10029": "maccenteuro",
+      "maccenteuro": {
+        "type": "_sbcs",
+        "chars": "\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"
+      },
+      "808": "cp808",
+      "ibm808": "cp808",
+      "cp808": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"
+      },
+      "mik": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "cp720": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      // Aliases of generated encodings.
+      "ascii8bit": "ascii",
+      "usascii": "ascii",
+      "ansix34": "ascii",
+      "ansix341968": "ascii",
+      "ansix341986": "ascii",
+      "csascii": "ascii",
+      "cp367": "ascii",
+      "ibm367": "ascii",
+      "isoir6": "ascii",
+      "iso646us": "ascii",
+      "iso646irv": "ascii",
+      "us": "ascii",
+      "latin1": "iso88591",
+      "latin2": "iso88592",
+      "latin3": "iso88593",
+      "latin4": "iso88594",
+      "latin5": "iso88599",
+      "latin6": "iso885910",
+      "latin7": "iso885913",
+      "latin8": "iso885914",
+      "latin9": "iso885915",
+      "latin10": "iso885916",
+      "csisolatin1": "iso88591",
+      "csisolatin2": "iso88592",
+      "csisolatin3": "iso88593",
+      "csisolatin4": "iso88594",
+      "csisolatincyrillic": "iso88595",
+      "csisolatinarabic": "iso88596",
+      "csisolatingreek": "iso88597",
+      "csisolatinhebrew": "iso88598",
+      "csisolatin5": "iso88599",
+      "csisolatin6": "iso885910",
+      "l1": "iso88591",
+      "l2": "iso88592",
+      "l3": "iso88593",
+      "l4": "iso88594",
+      "l5": "iso88599",
+      "l6": "iso885910",
+      "l7": "iso885913",
+      "l8": "iso885914",
+      "l9": "iso885915",
+      "l10": "iso885916",
+      "isoir14": "iso646jp",
+      "isoir57": "iso646cn",
+      "isoir100": "iso88591",
+      "isoir101": "iso88592",
+      "isoir109": "iso88593",
+      "isoir110": "iso88594",
+      "isoir144": "iso88595",
+      "isoir127": "iso88596",
+      "isoir126": "iso88597",
+      "isoir138": "iso88598",
+      "isoir148": "iso88599",
+      "isoir157": "iso885910",
+      "isoir166": "tis620",
+      "isoir179": "iso885913",
+      "isoir199": "iso885914",
+      "isoir203": "iso885915",
+      "isoir226": "iso885916",
+      "cp819": "iso88591",
+      "ibm819": "iso88591",
+      "cyrillic": "iso88595",
+      "arabic": "iso88596",
+      "arabic8": "iso88596",
+      "ecma114": "iso88596",
+      "asmo708": "iso88596",
+      "greek": "iso88597",
+      "greek8": "iso88597",
+      "ecma118": "iso88597",
+      "elot928": "iso88597",
+      "hebrew": "iso88598",
+      "hebrew8": "iso88598",
+      "turkish": "iso88599",
+      "turkish8": "iso88599",
+      "thai": "iso885911",
+      "thai8": "iso885911",
+      "celtic": "iso885914",
+      "celtic8": "iso885914",
+      "isoceltic": "iso885914",
+      "tis6200": "tis620",
+      "tis62025291": "tis620",
+      "tis62025330": "tis620",
+      "10000": "macroman",
+      "10006": "macgreek",
+      "10007": "maccyrillic",
+      "10079": "maciceland",
+      "10081": "macturkish",
+      "cspc8codepage437": "cp437",
+      "cspc775baltic": "cp775",
+      "cspc850multilingual": "cp850",
+      "cspcp852": "cp852",
+      "cspc862latinhebrew": "cp862",
+      "cpgr": "cp869",
+      "msee": "cp1250",
+      "mscyrl": "cp1251",
+      "msansi": "cp1252",
+      "msgreek": "cp1253",
+      "msturk": "cp1254",
+      "mshebr": "cp1255",
+      "msarab": "cp1256",
+      "winbaltrim": "cp1257",
+      "cp20866": "koi8r",
+      "20866": "koi8r",
+      "ibm878": "koi8r",
+      "cskoi8r": "koi8r",
+      "cp21866": "koi8u",
+      "21866": "koi8u",
+      "ibm1168": "koi8u",
+      "strk10482002": "rk1048",
+      "tcvn5712": "tcvn",
+      "tcvn57121": "tcvn",
+      "gb198880": "iso646cn",
+      "cn": "iso646cn",
+      "csiso14jisc6220ro": "iso646jp",
+      "jisc62201969ro": "iso646jp",
+      "jp": "iso646jp",
+      "cshproman8": "hproman8",
+      "r8": "hproman8",
+      "roman8": "hproman8",
+      "xroman8": "hproman8",
+      "ibm1051": "hproman8",
+      "mac": "macintosh",
+      "csmacintosh": "macintosh"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js
+var require_sbcs_data_generated = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      "437": "cp437",
+      "737": "cp737",
+      "775": "cp775",
+      "850": "cp850",
+      "852": "cp852",
+      "855": "cp855",
+      "856": "cp856",
+      "857": "cp857",
+      "858": "cp858",
+      "860": "cp860",
+      "861": "cp861",
+      "862": "cp862",
+      "863": "cp863",
+      "864": "cp864",
+      "865": "cp865",
+      "866": "cp866",
+      "869": "cp869",
+      "874": "windows874",
+      "922": "cp922",
+      "1046": "cp1046",
+      "1124": "cp1124",
+      "1125": "cp1125",
+      "1129": "cp1129",
+      "1133": "cp1133",
+      "1161": "cp1161",
+      "1162": "cp1162",
+      "1163": "cp1163",
+      "1250": "windows1250",
+      "1251": "windows1251",
+      "1252": "windows1252",
+      "1253": "windows1253",
+      "1254": "windows1254",
+      "1255": "windows1255",
+      "1256": "windows1256",
+      "1257": "windows1257",
+      "1258": "windows1258",
+      "28591": "iso88591",
+      "28592": "iso88592",
+      "28593": "iso88593",
+      "28594": "iso88594",
+      "28595": "iso88595",
+      "28596": "iso88596",
+      "28597": "iso88597",
+      "28598": "iso88598",
+      "28599": "iso88599",
+      "28600": "iso885910",
+      "28601": "iso885911",
+      "28603": "iso885913",
+      "28604": "iso885914",
+      "28605": "iso885915",
+      "28606": "iso885916",
+      "windows874": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "win874": "windows874",
+      "cp874": "windows874",
+      "windows1250": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "win1250": "windows1250",
+      "cp1250": "windows1250",
+      "windows1251": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "win1251": "windows1251",
+      "cp1251": "windows1251",
+      "windows1252": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "win1252": "windows1252",
+      "cp1252": "windows1252",
+      "windows1253": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "win1253": "windows1253",
+      "cp1253": "windows1253",
+      "windows1254": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "win1254": "windows1254",
+      "cp1254": "windows1254",
+      "windows1255": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "win1255": "windows1255",
+      "cp1255": "windows1255",
+      "windows1256": {
+        "type": "_sbcs",
+        "chars": "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"
+      },
+      "win1256": "windows1256",
+      "cp1256": "windows1256",
+      "windows1257": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"
+      },
+      "win1257": "windows1257",
+      "cp1257": "windows1257",
+      "windows1258": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "win1258": "windows1258",
+      "cp1258": "windows1258",
+      "iso88591": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28591": "iso88591",
+      "iso88592": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "cp28592": "iso88592",
+      "iso88593": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"
+      },
+      "cp28593": "iso88593",
+      "iso88594": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"
+      },
+      "cp28594": "iso88594",
+      "iso88595": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "cp28595": "iso88595",
+      "iso88596": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28596": "iso88596",
+      "iso88597": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "cp28597": "iso88597",
+      "iso88598": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "cp28598": "iso88598",
+      "iso88599": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "cp28599": "iso88599",
+      "iso885910": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"
+      },
+      "cp28600": "iso885910",
+      "iso885911": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28601": "iso885911",
+      "iso885913": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"
+      },
+      "cp28603": "iso885913",
+      "iso885914": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"
+      },
+      "cp28604": "iso885914",
+      "iso885915": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28605": "iso885915",
+      "iso885916": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"
+      },
+      "cp28606": "iso885916",
+      "cp437": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm437": "cp437",
+      "csibm437": "cp437",
+      "cp737": {
+        "type": "_sbcs",
+        "chars": "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm737": "cp737",
+      "csibm737": "cp737",
+      "cp775": {
+        "type": "_sbcs",
+        "chars": "\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm775": "cp775",
+      "csibm775": "cp775",
+      "cp850": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm850": "cp850",
+      "csibm850": "cp850",
+      "cp852": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"
+      },
+      "ibm852": "cp852",
+      "csibm852": "cp852",
+      "cp855": {
+        "type": "_sbcs",
+        "chars": "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"
+      },
+      "ibm855": "cp855",
+      "csibm855": "cp855",
+      "cp856": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm856": "cp856",
+      "csibm856": "cp856",
+      "cp857": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm857": "cp857",
+      "csibm857": "cp857",
+      "cp858": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm858": "cp858",
+      "csibm858": "cp858",
+      "cp860": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm860": "cp860",
+      "csibm860": "cp860",
+      "cp861": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm861": "cp861",
+      "csibm861": "cp861",
+      "cp862": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm862": "cp862",
+      "csibm862": "cp862",
+      "cp863": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm863": "cp863",
+      "csibm863": "cp863",
+      "cp864": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD"
+      },
+      "ibm864": "cp864",
+      "csibm864": "cp864",
+      "cp865": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm865": "cp865",
+      "csibm865": "cp865",
+      "cp866": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm866": "cp866",
+      "csibm866": "cp866",
+      "cp869": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"
+      },
+      "ibm869": "cp869",
+      "csibm869": "cp869",
+      "cp922": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"
+      },
+      "ibm922": "cp922",
+      "csibm922": "cp922",
+      "cp1046": {
+        "type": "_sbcs",
+        "chars": "\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"
+      },
+      "ibm1046": "cp1046",
+      "csibm1046": "cp1046",
+      "cp1124": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "ibm1124": "cp1124",
+      "csibm1124": "cp1124",
+      "cp1125": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm1125": "cp1125",
+      "csibm1125": "cp1125",
+      "cp1129": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1129": "cp1129",
+      "csibm1129": "cp1129",
+      "cp1133": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"
+      },
+      "ibm1133": "cp1133",
+      "csibm1133": "cp1133",
+      "cp1161": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"
+      },
+      "ibm1161": "cp1161",
+      "csibm1161": "cp1161",
+      "cp1162": {
+        "type": "_sbcs",
+        "chars": "\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "ibm1162": "cp1162",
+      "csibm1162": "cp1162",
+      "cp1163": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1163": "cp1163",
+      "csibm1163": "cp1163",
+      "maccroatian": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"
+      },
+      "maccyrillic": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "macgreek": {
+        "type": "_sbcs",
+        "chars": "\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"
+      },
+      "maciceland": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macroman": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macromania": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macthai": {
+        "type": "_sbcs",
+        "chars": "\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "macturkish": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macukraine": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "koi8r": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8u": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8ru": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8t": {
+        "type": "_sbcs",
+        "chars": "\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "armscii8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"
+      },
+      "rk1048": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "tcvn": {
+        "type": "_sbcs",
+        "chars": "\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b	\n\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0"
+      },
+      "georgianacademy": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "georgianps": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "pt154": {
+        "type": "_sbcs",
+        "chars": "\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "viscii": {
+        "type": "_sbcs",
+        "chars": "\0\u1EB2\u1EB4\u1EAA\x07\b	\n\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE"
+      },
+      "iso646cn": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "iso646jp": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "hproman8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"
+      },
+      "macintosh": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "ascii": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "tis620": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js
+var require_dbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._dbcs = DBCSCodec;
+    var UNASSIGNED = -1;
+    var GB18030_CODE = -2;
+    var SEQ_START = -10;
+    var NODE_START = -1e3;
+    var UNASSIGNED_NODE = new Array(256);
+    var DEF_CHAR = -1;
+    for (i = 0; i < 256; i++)
+      UNASSIGNED_NODE[i] = UNASSIGNED;
+    var i;
+    function DBCSCodec(codecOptions, iconv) {
+      this.encodingName = codecOptions.encodingName;
+      if (!codecOptions)
+        throw new Error("DBCS codec is called without the data.");
+      if (!codecOptions.table)
+        throw new Error("Encoding '" + this.encodingName + "' has no data.");
+      var mappingTable = codecOptions.table();
+      this.decodeTables = [];
+      this.decodeTables[0] = UNASSIGNED_NODE.slice(0);
+      this.decodeTableSeq = [];
+      for (var i2 = 0; i2 < mappingTable.length; i2++)
+        this._addDecodeChunk(mappingTable[i2]);
+      if (typeof codecOptions.gb18030 === "function") {
+        this.gb18030 = codecOptions.gb18030();
+        var commonThirdByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var commonFourthByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var firstByteNode = this.decodeTables[0];
+        for (var i2 = 129; i2 <= 254; i2++) {
+          var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i2]];
+          for (var j = 48; j <= 57; j++) {
+            if (secondByteNode[j] === UNASSIGNED) {
+              secondByteNode[j] = NODE_START - commonThirdByteNodeIdx;
+            } else if (secondByteNode[j] > NODE_START) {
+              throw new Error("gb18030 decode tables conflict at byte 2");
+            }
+            var thirdByteNode = this.decodeTables[NODE_START - secondByteNode[j]];
+            for (var k = 129; k <= 254; k++) {
+              if (thirdByteNode[k] === UNASSIGNED) {
+                thirdByteNode[k] = NODE_START - commonFourthByteNodeIdx;
+              } else if (thirdByteNode[k] === NODE_START - commonFourthByteNodeIdx) {
+                continue;
+              } else if (thirdByteNode[k] > NODE_START) {
+                throw new Error("gb18030 decode tables conflict at byte 3");
+              }
+              var fourthByteNode = this.decodeTables[NODE_START - thirdByteNode[k]];
+              for (var l = 48; l <= 57; l++) {
+                if (fourthByteNode[l] === UNASSIGNED)
+                  fourthByteNode[l] = GB18030_CODE;
+              }
+            }
+          }
+        }
+      }
+      this.defaultCharUnicode = iconv.defaultCharUnicode;
+      this.encodeTable = [];
+      this.encodeTableSeq = [];
+      var skipEncodeChars = {};
+      if (codecOptions.encodeSkipVals)
+        for (var i2 = 0; i2 < codecOptions.encodeSkipVals.length; i2++) {
+          var val2 = codecOptions.encodeSkipVals[i2];
+          if (typeof val2 === "number")
+            skipEncodeChars[val2] = true;
+          else
+            for (var j = val2.from; j <= val2.to; j++)
+              skipEncodeChars[j] = true;
+        }
+      this._fillEncodeTable(0, 0, skipEncodeChars);
+      if (codecOptions.encodeAdd) {
+        for (var uChar in codecOptions.encodeAdd)
+          if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar))
+            this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]);
+      }
+      this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]["?"];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0);
+    }
+    DBCSCodec.prototype.encoder = DBCSEncoder;
+    DBCSCodec.prototype.decoder = DBCSDecoder;
+    DBCSCodec.prototype._getDecodeTrieNode = function(addr) {
+      var bytes = [];
+      for (; addr > 0; addr >>>= 8)
+        bytes.push(addr & 255);
+      if (bytes.length == 0)
+        bytes.push(0);
+      var node = this.decodeTables[0];
+      for (var i2 = bytes.length - 1; i2 > 0; i2--) {
+        var val2 = node[bytes[i2]];
+        if (val2 == UNASSIGNED) {
+          node[bytes[i2]] = NODE_START - this.decodeTables.length;
+          this.decodeTables.push(node = UNASSIGNED_NODE.slice(0));
+        } else if (val2 <= NODE_START) {
+          node = this.decodeTables[NODE_START - val2];
+        } else
+          throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr.toString(16));
+      }
+      return node;
+    };
+    DBCSCodec.prototype._addDecodeChunk = function(chunk) {
+      var curAddr = parseInt(chunk[0], 16);
+      var writeTable = this._getDecodeTrieNode(curAddr);
+      curAddr = curAddr & 255;
+      for (var k = 1; k < chunk.length; k++) {
+        var part = chunk[k];
+        if (typeof part === "string") {
+          for (var l = 0; l < part.length; ) {
+            var code = part.charCodeAt(l++);
+            if (55296 <= code && code < 56320) {
+              var codeTrail = part.charCodeAt(l++);
+              if (56320 <= codeTrail && codeTrail < 57344)
+                writeTable[curAddr++] = 65536 + (code - 55296) * 1024 + (codeTrail - 56320);
+              else
+                throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]);
+            } else if (4080 < code && code <= 4095) {
+              var len = 4095 - code + 2;
+              var seq = [];
+              for (var m = 0; m < len; m++)
+                seq.push(part.charCodeAt(l++));
+              writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length;
+              this.decodeTableSeq.push(seq);
+            } else
+              writeTable[curAddr++] = code;
+          }
+        } else if (typeof part === "number") {
+          var charCode = writeTable[curAddr - 1] + 1;
+          for (var l = 0; l < part; l++)
+            writeTable[curAddr++] = charCode++;
+        } else
+          throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]);
+      }
+      if (curAddr > 255)
+        throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr);
+    };
+    DBCSCodec.prototype._getEncodeBucket = function(uCode) {
+      var high = uCode >> 8;
+      if (this.encodeTable[high] === void 0)
+        this.encodeTable[high] = UNASSIGNED_NODE.slice(0);
+      return this.encodeTable[high];
+    };
+    DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) {
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      if (bucket[low] <= SEQ_START)
+        this.encodeTableSeq[SEQ_START - bucket[low]][DEF_CHAR] = dbcsCode;
+      else if (bucket[low] == UNASSIGNED)
+        bucket[low] = dbcsCode;
+    };
+    DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) {
+      var uCode = seq[0];
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      var node;
+      if (bucket[low] <= SEQ_START) {
+        node = this.encodeTableSeq[SEQ_START - bucket[low]];
+      } else {
+        node = {};
+        if (bucket[low] !== UNASSIGNED) node[DEF_CHAR] = bucket[low];
+        bucket[low] = SEQ_START - this.encodeTableSeq.length;
+        this.encodeTableSeq.push(node);
+      }
+      for (var j = 1; j < seq.length - 1; j++) {
+        var oldVal = node[uCode];
+        if (typeof oldVal === "object")
+          node = oldVal;
+        else {
+          node = node[uCode] = {};
+          if (oldVal !== void 0)
+            node[DEF_CHAR] = oldVal;
+        }
+      }
+      uCode = seq[seq.length - 1];
+      node[uCode] = dbcsCode;
+    };
+    DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) {
+      var node = this.decodeTables[nodeIdx];
+      var hasValues = false;
+      var subNodeEmpty = {};
+      for (var i2 = 0; i2 < 256; i2++) {
+        var uCode = node[i2];
+        var mbCode = prefix + i2;
+        if (skipEncodeChars[mbCode])
+          continue;
+        if (uCode >= 0) {
+          this._setEncodeChar(uCode, mbCode);
+          hasValues = true;
+        } else if (uCode <= NODE_START) {
+          var subNodeIdx = NODE_START - uCode;
+          if (!subNodeEmpty[subNodeIdx]) {
+            var newPrefix = mbCode << 8 >>> 0;
+            if (this._fillEncodeTable(subNodeIdx, newPrefix, skipEncodeChars))
+              hasValues = true;
+            else
+              subNodeEmpty[subNodeIdx] = true;
+          }
+        } else if (uCode <= SEQ_START) {
+          this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode);
+          hasValues = true;
+        }
+      }
+      return hasValues;
+    };
+    function DBCSEncoder(options, codec) {
+      this.leadSurrogate = -1;
+      this.seqObj = void 0;
+      this.encodeTable = codec.encodeTable;
+      this.encodeTableSeq = codec.encodeTableSeq;
+      this.defaultCharSingleByte = codec.defCharSB;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSEncoder.prototype.write = function(str) {
+      var newBuf = Buffer2.alloc(str.length * (this.gb18030 ? 4 : 3)), leadSurrogate = this.leadSurrogate, seqObj = this.seqObj, nextChar = -1, i2 = 0, j = 0;
+      while (true) {
+        if (nextChar === -1) {
+          if (i2 == str.length) break;
+          var uCode = str.charCodeAt(i2++);
+        } else {
+          var uCode = nextChar;
+          nextChar = -1;
+        }
+        if (55296 <= uCode && uCode < 57344) {
+          if (uCode < 56320) {
+            if (leadSurrogate === -1) {
+              leadSurrogate = uCode;
+              continue;
+            } else {
+              leadSurrogate = uCode;
+              uCode = UNASSIGNED;
+            }
+          } else {
+            if (leadSurrogate !== -1) {
+              uCode = 65536 + (leadSurrogate - 55296) * 1024 + (uCode - 56320);
+              leadSurrogate = -1;
+            } else {
+              uCode = UNASSIGNED;
+            }
+          }
+        } else if (leadSurrogate !== -1) {
+          nextChar = uCode;
+          uCode = UNASSIGNED;
+          leadSurrogate = -1;
+        }
+        var dbcsCode = UNASSIGNED;
+        if (seqObj !== void 0 && uCode != UNASSIGNED) {
+          var resCode = seqObj[uCode];
+          if (typeof resCode === "object") {
+            seqObj = resCode;
+            continue;
+          } else if (typeof resCode == "number") {
+            dbcsCode = resCode;
+          } else if (resCode == void 0) {
+            resCode = seqObj[DEF_CHAR];
+            if (resCode !== void 0) {
+              dbcsCode = resCode;
+              nextChar = uCode;
+            } else {
+            }
+          }
+          seqObj = void 0;
+        } else if (uCode >= 0) {
+          var subtable = this.encodeTable[uCode >> 8];
+          if (subtable !== void 0)
+            dbcsCode = subtable[uCode & 255];
+          if (dbcsCode <= SEQ_START) {
+            seqObj = this.encodeTableSeq[SEQ_START - dbcsCode];
+            continue;
+          }
+          if (dbcsCode == UNASSIGNED && this.gb18030) {
+            var idx = findIdx(this.gb18030.uChars, uCode);
+            if (idx != -1) {
+              var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]);
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 12600);
+              dbcsCode = dbcsCode % 12600;
+              newBuf[j++] = 48 + Math.floor(dbcsCode / 1260);
+              dbcsCode = dbcsCode % 1260;
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 10);
+              dbcsCode = dbcsCode % 10;
+              newBuf[j++] = 48 + dbcsCode;
+              continue;
+            }
+          }
+        }
+        if (dbcsCode === UNASSIGNED)
+          dbcsCode = this.defaultCharSingleByte;
+        if (dbcsCode < 256) {
+          newBuf[j++] = dbcsCode;
+        } else if (dbcsCode < 65536) {
+          newBuf[j++] = dbcsCode >> 8;
+          newBuf[j++] = dbcsCode & 255;
+        } else if (dbcsCode < 16777216) {
+          newBuf[j++] = dbcsCode >> 16;
+          newBuf[j++] = dbcsCode >> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        } else {
+          newBuf[j++] = dbcsCode >>> 24;
+          newBuf[j++] = dbcsCode >>> 16 & 255;
+          newBuf[j++] = dbcsCode >>> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        }
+      }
+      this.seqObj = seqObj;
+      this.leadSurrogate = leadSurrogate;
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.end = function() {
+      if (this.leadSurrogate === -1 && this.seqObj === void 0)
+        return;
+      var newBuf = Buffer2.alloc(10), j = 0;
+      if (this.seqObj) {
+        var dbcsCode = this.seqObj[DEF_CHAR];
+        if (dbcsCode !== void 0) {
+          if (dbcsCode < 256) {
+            newBuf[j++] = dbcsCode;
+          } else {
+            newBuf[j++] = dbcsCode >> 8;
+            newBuf[j++] = dbcsCode & 255;
+          }
+        } else {
+        }
+        this.seqObj = void 0;
+      }
+      if (this.leadSurrogate !== -1) {
+        newBuf[j++] = this.defaultCharSingleByte;
+        this.leadSurrogate = -1;
+      }
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.findIdx = findIdx;
+    function DBCSDecoder(options, codec) {
+      this.nodeIdx = 0;
+      this.prevBytes = [];
+      this.decodeTables = codec.decodeTables;
+      this.decodeTableSeq = codec.decodeTableSeq;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSDecoder.prototype.write = function(buf) {
+      var newBuf = Buffer2.alloc(buf.length * 2), nodeIdx = this.nodeIdx, prevBytes = this.prevBytes, prevOffset = this.prevBytes.length, seqStart = -this.prevBytes.length, uCode;
+      for (var i2 = 0, j = 0; i2 < buf.length; i2++) {
+        var curByte = i2 >= 0 ? buf[i2] : prevBytes[i2 + prevOffset];
+        var uCode = this.decodeTables[nodeIdx][curByte];
+        if (uCode >= 0) {
+        } else if (uCode === UNASSIGNED) {
+          uCode = this.defaultCharUnicode.charCodeAt(0);
+          i2 = seqStart;
+        } else if (uCode === GB18030_CODE) {
+          if (i2 >= 3) {
+            var ptr = (buf[i2 - 3] - 129) * 12600 + (buf[i2 - 2] - 48) * 1260 + (buf[i2 - 1] - 129) * 10 + (curByte - 48);
+          } else {
+            var ptr = (prevBytes[i2 - 3 + prevOffset] - 129) * 12600 + ((i2 - 2 >= 0 ? buf[i2 - 2] : prevBytes[i2 - 2 + prevOffset]) - 48) * 1260 + ((i2 - 1 >= 0 ? buf[i2 - 1] : prevBytes[i2 - 1 + prevOffset]) - 129) * 10 + (curByte - 48);
+          }
+          var idx = findIdx(this.gb18030.gbChars, ptr);
+          uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx];
+        } else if (uCode <= NODE_START) {
+          nodeIdx = NODE_START - uCode;
+          continue;
+        } else if (uCode <= SEQ_START) {
+          var seq = this.decodeTableSeq[SEQ_START - uCode];
+          for (var k = 0; k < seq.length - 1; k++) {
+            uCode = seq[k];
+            newBuf[j++] = uCode & 255;
+            newBuf[j++] = uCode >> 8;
+          }
+          uCode = seq[seq.length - 1];
+        } else
+          throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte);
+        if (uCode >= 65536) {
+          uCode -= 65536;
+          var uCodeLead = 55296 | uCode >> 10;
+          newBuf[j++] = uCodeLead & 255;
+          newBuf[j++] = uCodeLead >> 8;
+          uCode = 56320 | uCode & 1023;
+        }
+        newBuf[j++] = uCode & 255;
+        newBuf[j++] = uCode >> 8;
+        nodeIdx = 0;
+        seqStart = i2 + 1;
+      }
+      this.nodeIdx = nodeIdx;
+      this.prevBytes = seqStart >= 0 ? Array.prototype.slice.call(buf, seqStart) : prevBytes.slice(seqStart + prevOffset).concat(Array.prototype.slice.call(buf));
+      return newBuf.slice(0, j).toString("ucs2");
+    };
+    DBCSDecoder.prototype.end = function() {
+      var ret = "";
+      while (this.prevBytes.length > 0) {
+        ret += this.defaultCharUnicode;
+        var bytesArr = this.prevBytes.slice(1);
+        this.prevBytes = [];
+        this.nodeIdx = 0;
+        if (bytesArr.length > 0)
+          ret += this.write(bytesArr);
+      }
+      this.prevBytes = [];
+      this.nodeIdx = 0;
+      return ret;
+    };
+    function findIdx(table, val2) {
+      if (table[0] > val2)
+        return -1;
+      var l = 0, r = table.length;
+      while (l < r - 1) {
+        var mid = l + (r - l + 1 >> 1);
+        if (table[mid] <= val2)
+          l = mid;
+        else
+          r = mid;
+      }
+      return l;
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json
+var require_shiftjis = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 128],
+      ["a1", "\uFF61", 62],
+      ["8140", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7"],
+      ["8180", "\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["81b8", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["81c8", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["81da", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["81f0", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["81fc", "\u25EF"],
+      ["824f", "\uFF10", 9],
+      ["8260", "\uFF21", 25],
+      ["8281", "\uFF41", 25],
+      ["829f", "\u3041", 82],
+      ["8340", "\u30A1", 62],
+      ["8380", "\u30E0", 22],
+      ["839f", "\u0391", 16, "\u03A3", 6],
+      ["83bf", "\u03B1", 16, "\u03C3", 6],
+      ["8440", "\u0410", 5, "\u0401\u0416", 25],
+      ["8470", "\u0430", 5, "\u0451\u0436", 7],
+      ["8480", "\u043E", 17],
+      ["849f", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["8740", "\u2460", 19, "\u2160", 9],
+      ["875f", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["877e", "\u337B"],
+      ["8780", "\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["889f", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["8940", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],
+      ["8980", "\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["8a40", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],
+      ["8a80", "\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["8b40", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],
+      ["8b80", "\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["8c40", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],
+      ["8c80", "\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["8d40", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],
+      ["8d80", "\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["8e40", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],
+      ["8e80", "\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["8f40", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],
+      ["8f80", "\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["9040", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],
+      ["9080", "\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["9140", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],
+      ["9180", "\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["9240", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],
+      ["9280", "\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["9340", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],
+      ["9380", "\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["9440", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],
+      ["9480", "\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["9540", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],
+      ["9580", "\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["9640", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],
+      ["9680", "\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["9740", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],
+      ["9780", "\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["9840", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["989f", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["9940", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],
+      ["9980", "\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["9a40", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],
+      ["9a80", "\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["9b40", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],
+      ["9b80", "\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["9c40", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],
+      ["9c80", "\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["9d40", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],
+      ["9d80", "\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["9e40", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],
+      ["9e80", "\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["9f40", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],
+      ["9f80", "\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["e040", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],
+      ["e080", "\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e140", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],
+      ["e180", "\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e240", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],
+      ["e280", "\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e340", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],
+      ["e380", "\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e440", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],
+      ["e480", "\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e540", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],
+      ["e580", "\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["e640", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],
+      ["e680", "\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["e740", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],
+      ["e780", "\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["e840", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],
+      ["e880", "\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["e940", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],
+      ["e980", "\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["ea40", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],
+      ["ea80", "\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["ed40", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],
+      ["ed80", "\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["ee40", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],
+      ["ee80", "\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["eeef", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["f040", "\uE000", 62],
+      ["f080", "\uE03F", 124],
+      ["f140", "\uE0BC", 62],
+      ["f180", "\uE0FB", 124],
+      ["f240", "\uE178", 62],
+      ["f280", "\uE1B7", 124],
+      ["f340", "\uE234", 62],
+      ["f380", "\uE273", 124],
+      ["f440", "\uE2F0", 62],
+      ["f480", "\uE32F", 124],
+      ["f540", "\uE3AC", 62],
+      ["f580", "\uE3EB", 124],
+      ["f640", "\uE468", 62],
+      ["f680", "\uE4A7", 124],
+      ["f740", "\uE524", 62],
+      ["f780", "\uE563", 124],
+      ["f840", "\uE5E0", 62],
+      ["f880", "\uE61F", 124],
+      ["f940", "\uE69C"],
+      ["fa40", "\u2170", 9, "\u2160", 9, "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],
+      ["fa80", "\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],
+      ["fb40", "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],
+      ["fb80", "\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],
+      ["fc40", "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json
+var require_eucjp = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8ea1", "\uFF61", 62],
+      ["a1a1", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],
+      ["a2a1", "\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["a2ba", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["a2ca", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["a2dc", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["a2f2", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["a2fe", "\u25EF"],
+      ["a3b0", "\uFF10", 9],
+      ["a3c1", "\uFF21", 25],
+      ["a3e1", "\uFF41", 25],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a8a1", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["ada1", "\u2460", 19, "\u2160", 9],
+      ["adc0", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["addf", "\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["b0a1", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["b1a1", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],
+      ["b2a1", "\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["b3a1", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],
+      ["b4a1", "\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["b5a1", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],
+      ["b6a1", "\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["b7a1", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],
+      ["b8a1", "\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["b9a1", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],
+      ["baa1", "\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["bba1", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],
+      ["bca1", "\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["bda1", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],
+      ["bea1", "\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["bfa1", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],
+      ["c0a1", "\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["c1a1", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],
+      ["c2a1", "\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["c3a1", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],
+      ["c4a1", "\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["c5a1", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],
+      ["c6a1", "\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["c7a1", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],
+      ["c8a1", "\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["c9a1", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],
+      ["caa1", "\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["cba1", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],
+      ["cca1", "\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["cda1", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],
+      ["cea1", "\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["cfa1", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["d0a1", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["d1a1", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],
+      ["d2a1", "\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["d3a1", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],
+      ["d4a1", "\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["d5a1", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],
+      ["d6a1", "\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["d7a1", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],
+      ["d8a1", "\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["d9a1", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],
+      ["daa1", "\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["dba1", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],
+      ["dca1", "\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["dda1", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],
+      ["dea1", "\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["dfa1", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],
+      ["e0a1", "\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e1a1", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],
+      ["e2a1", "\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e3a1", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],
+      ["e4a1", "\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e5a1", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],
+      ["e6a1", "\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e7a1", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],
+      ["e8a1", "\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e9a1", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],
+      ["eaa1", "\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["eba1", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],
+      ["eca1", "\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["eda1", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],
+      ["eea1", "\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["efa1", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],
+      ["f0a1", "\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["f1a1", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],
+      ["f2a1", "\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["f3a1", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],
+      ["f4a1", "\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["f9a1", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],
+      ["faa1", "\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["fba1", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],
+      ["fca1", "\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["fcf1", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["8fa2af", "\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],
+      ["8fa2c2", "\xA1\xA6\xBF"],
+      ["8fa2eb", "\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],
+      ["8fa6e1", "\u0386\u0388\u0389\u038A\u03AA"],
+      ["8fa6e7", "\u038C"],
+      ["8fa6e9", "\u038E\u03AB"],
+      ["8fa6ec", "\u038F"],
+      ["8fa6f1", "\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],
+      ["8fa7c2", "\u0402", 10, "\u040E\u040F"],
+      ["8fa7f2", "\u0452", 10, "\u045E\u045F"],
+      ["8fa9a1", "\xC6\u0110"],
+      ["8fa9a4", "\u0126"],
+      ["8fa9a6", "\u0132"],
+      ["8fa9a8", "\u0141\u013F"],
+      ["8fa9ab", "\u014A\xD8\u0152"],
+      ["8fa9af", "\u0166\xDE"],
+      ["8fa9c1", "\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],
+      ["8faaa1", "\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],
+      ["8faaba", "\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],
+      ["8faba1", "\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],
+      ["8fabbd", "\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],
+      ["8fabc5", "\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],
+      ["8fb0a1", "\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],
+      ["8fb1a1", "\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],
+      ["8fb2a1", "\u5092\u5093\u5094\u5096\u509B\u509C\u509E", 4, "\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],
+      ["8fb3a1", "\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],
+      ["8fb4a1", "\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],
+      ["8fb5a1", "\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],
+      ["8fb6a1", "\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D", 5, "\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4", 4, "\u56F1\u56EB\u56ED"],
+      ["8fb7a1", "\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D", 4, "\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],
+      ["8fb8a1", "\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],
+      ["8fb9a1", "\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],
+      ["8fbaa1", "\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6", 4, "\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],
+      ["8fbba1", "\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],
+      ["8fbca1", "\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A", 4, "\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],
+      ["8fbda1", "\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0", 4, "\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],
+      ["8fbea1", "\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110", 4, "\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],
+      ["8fbfa1", "\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],
+      ["8fc0a1", "\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],
+      ["8fc1a1", "\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],
+      ["8fc2a1", "\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],
+      ["8fc3a1", "\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E", 4, "\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],
+      ["8fc4a1", "\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],
+      ["8fc5a1", "\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],
+      ["8fc6a1", "\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],
+      ["8fc7a1", "\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],
+      ["8fc8a1", "\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],
+      ["8fc9a1", "\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094", 4, "\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103", 4, "\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],
+      ["8fcaa1", "\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],
+      ["8fcba1", "\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],
+      ["8fcca1", "\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428", 9, "\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],
+      ["8fcda1", "\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579", 5, "\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],
+      ["8fcea1", "\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2", 6, "\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],
+      ["8fcfa1", "\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],
+      ["8fd0a1", "\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],
+      ["8fd1a1", "\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],
+      ["8fd2a1", "\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59", 5],
+      ["8fd3a1", "\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],
+      ["8fd4a1", "\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2", 4, "\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],
+      ["8fd5a1", "\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],
+      ["8fd6a1", "\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],
+      ["8fd7a1", "\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],
+      ["8fd8a1", "\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],
+      ["8fd9a1", "\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F", 4, "\u8556\u8559\u855C", 6, "\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],
+      ["8fdaa1", "\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660", 4, "\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],
+      ["8fdba1", "\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783", 6, "\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],
+      ["8fdca1", "\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA", 4, "\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],
+      ["8fdda1", "\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4", 4, "\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],
+      ["8fdea1", "\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42", 4, "\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],
+      ["8fdfa1", "\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],
+      ["8fe0a1", "\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],
+      ["8fe1a1", "\u8F43\u8F47\u8F4F\u8F51", 4, "\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],
+      ["8fe2a1", "\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],
+      ["8fe3a1", "\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC", 5, "\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275", 4, "\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],
+      ["8fe4a1", "\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF", 4, "\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],
+      ["8fe5a1", "\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9", 4, "\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],
+      ["8fe6a1", "\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],
+      ["8fe7a1", "\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],
+      ["8fe8a1", "\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931", 4, "\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],
+      ["8fe9a1", "\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF", 4],
+      ["8feaa1", "\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A", 4, "\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],
+      ["8feba1", "\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26", 4, "\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],
+      ["8feca1", "\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],
+      ["8feda1", "\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43", 4, "\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D", 4, "\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json
+var require_cp936 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127, "\u20AC"],
+      ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"],
+      ["8180", "\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02", 6, "\u4F0B\u4F0C\u4F12", 4, "\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E", 4, "\u4F44\u4F45\u4F47", 5, "\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],
+      ["8240", "\u4FA4\u4FAB\u4FAD\u4FB0", 4, "\u4FB6", 8, "\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2", 4, "\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF", 11],
+      ["8280", "\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F", 10, "\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050", 4, "\u5056\u5057\u5058\u5059\u505B\u505D", 7, "\u5066", 5, "\u506D", 8, "\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E", 20, "\u50A4\u50A6\u50AA\u50AB\u50AD", 4, "\u50B3", 6, "\u50BC"],
+      ["8340", "\u50BD", 17, "\u50D0", 5, "\u50D7\u50D8\u50D9\u50DB", 10, "\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6", 4, "\u50FC", 9, "\u5108"],
+      ["8380", "\u5109\u510A\u510C", 5, "\u5113", 13, "\u5122", 28, "\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D", 4, "\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6", 4, "\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2", 5],
+      ["8440", "\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5", 5, "\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244", 5, "\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],
+      ["8480", "\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273", 9, "\u527E\u5280\u5283", 4, "\u5289", 6, "\u5291\u5292\u5294", 6, "\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4", 9, "\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9", 5, "\u52E0\u52E1\u52E2\u52E3\u52E5", 10, "\u52F1", 7, "\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],
+      ["8540", "\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F", 9, "\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],
+      ["8580", "\u5390", 4, "\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF", 6, "\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3", 4, "\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D", 4, "\u5463\u5465\u5467\u5469", 7, "\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],
+      ["8640", "\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0", 4, "\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4", 5, "\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A", 4, "\u5512\u5513\u5515", 5, "\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],
+      ["8680", "\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B", 4, "\u5551\u5552\u5553\u5554\u5557", 4, "\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F", 5, "\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0", 6, "\u55A8", 8, "\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF", 4, "\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7", 4, "\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8", 4, "\u55FF\u5602\u5603\u5604\u5605"],
+      ["8740", "\u5606\u5607\u560A\u560B\u560D\u5610", 7, "\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640", 11, "\u564F", 4, "\u5655\u5656\u565A\u565B\u565D", 4],
+      ["8780", "\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D", 7, "\u5687", 6, "\u5690\u5691\u5692\u5694", 14, "\u56A4", 10, "\u56B0", 6, "\u56B8\u56B9\u56BA\u56BB\u56BD", 12, "\u56CB", 8, "\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5", 5, "\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B", 6],
+      ["8840", "\u5712", 9, "\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734", 4, "\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752", 4, "\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],
+      ["8880", "\u5781\u5787\u5788\u5789\u578A\u578D", 4, "\u5794", 6, "\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9", 8, "\u57C4", 6, "\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5", 7, "\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825", 4, "\u582B", 4, "\u5831\u5832\u5833\u5834\u5836", 7],
+      ["8940", "\u583E", 5, "\u5845", 6, "\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859", 4, "\u585F", 5, "\u5866", 4, "\u586D", 16, "\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],
+      ["8980", "\u588D", 4, "\u5894", 4, "\u589B\u589C\u589D\u58A0", 7, "\u58AA", 17, "\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6", 10, "\u58D2\u58D3\u58D4\u58D6", 13, "\u58E5", 5, "\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA", 7, "\u5903\u5905\u5906\u5908", 4, "\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],
+      ["8a40", "\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B", 4, "\u5961\u5963\u5964\u5966", 12, "\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],
+      ["8a80", "\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3", 5, "\u59BA\u59BC\u59BD\u59BF", 6, "\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE", 4, "\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED", 11, "\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A", 6, "\u5A33\u5A35\u5A37", 4, "\u5A3D\u5A3E\u5A3F\u5A41", 4, "\u5A47\u5A48\u5A4B", 9, "\u5A56\u5A57\u5A58\u5A59\u5A5B", 5],
+      ["8b40", "\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B", 8, "\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80", 17, "\u5A93", 6, "\u5A9C", 13, "\u5AAB\u5AAC"],
+      ["8b80", "\u5AAD", 4, "\u5AB4\u5AB6\u5AB7\u5AB9", 4, "\u5ABF\u5AC0\u5AC3", 5, "\u5ACA\u5ACB\u5ACD", 4, "\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC", 4, "\u5AF2", 22, "\u5B0A", 11, "\u5B18", 25, "\u5B33\u5B35\u5B36\u5B38", 7, "\u5B41", 6],
+      ["8c40", "\u5B48", 7, "\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],
+      ["8c80", "\u5BD1\u5BD4", 8, "\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9", 4, "\u5BEF\u5BF1", 6, "\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67", 6, "\u5C70\u5C72", 6, "\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83", 4, "\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D", 4, "\u5CA4", 4],
+      ["8d40", "\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5", 5, "\u5CCC", 5, "\u5CD3", 5, "\u5CDA", 6, "\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1", 9, "\u5CFC", 4],
+      ["8d80", "\u5D01\u5D04\u5D05\u5D08", 5, "\u5D0F", 4, "\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F", 4, "\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F", 4, "\u5D35", 7, "\u5D3F", 7, "\u5D48\u5D49\u5D4D", 10, "\u5D59\u5D5A\u5D5C\u5D5E", 10, "\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75", 12, "\u5D83", 21, "\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],
+      ["8e40", "\u5DA1", 21, "\u5DB8", 12, "\u5DC6", 6, "\u5DCE", 12, "\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],
+      ["8e80", "\u5DF0\u5DF5\u5DF6\u5DF8", 4, "\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E", 7, "\u5E28", 4, "\u5E2F\u5E30\u5E32", 4, "\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46", 5, "\u5E4D", 6, "\u5E56", 4, "\u5E5C\u5E5D\u5E5F\u5E60\u5E63", 14, "\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8", 4, "\u5EAE", 4, "\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF", 6],
+      ["8f40", "\u5EC6\u5EC7\u5EC8\u5ECB", 5, "\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC", 11, "\u5EE9\u5EEB", 8, "\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],
+      ["8f80", "\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32", 6, "\u5F3B\u5F3D\u5F3E\u5F3F\u5F41", 14, "\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2", 5, "\u5FA9\u5FAB\u5FAC\u5FAF", 5, "\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE", 4, "\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],
+      ["9040", "\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030", 4, "\u6036", 4, "\u603D\u603E\u6040\u6044", 6, "\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],
+      ["9080", "\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD", 7, "\u60C7\u60C8\u60C9\u60CC", 4, "\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1", 4, "\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB", 4, "\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110", 4, "\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C", 18, "\u6140", 6],
+      ["9140", "\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156", 6, "\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169", 6, "\u6171\u6172\u6173\u6174\u6176\u6178", 18, "\u618C\u618D\u618F", 4, "\u6195"],
+      ["9180", "\u6196", 6, "\u619E", 8, "\u61AA\u61AB\u61AD", 9, "\u61B8", 5, "\u61BF\u61C0\u61C1\u61C3", 4, "\u61C9\u61CC", 4, "\u61D3\u61D5", 16, "\u61E7", 13, "\u61F6", 8, "\u6200", 5, "\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238", 4, "\u6242\u6244\u6245\u6246\u624A"],
+      ["9240", "\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C", 6, "\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B", 5, "\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],
+      ["9280", "\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333", 5, "\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356", 7, "\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399", 6, "\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],
+      ["9340", "\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7", 6, "\u63DF\u63E2\u63E4", 4, "\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406", 4, "\u640D\u640E\u6411\u6412\u6415", 5, "\u641D\u641F\u6422\u6423\u6424"],
+      ["9380", "\u6425\u6427\u6428\u6429\u642B\u642E", 5, "\u6435", 4, "\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B", 6, "\u6453\u6455\u6456\u6457\u6459", 4, "\u645F", 7, "\u6468\u646A\u646B\u646C\u646E", 9, "\u647B", 6, "\u6483\u6486\u6488", 8, "\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F", 4, "\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6", 6, "\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],
+      ["9440", "\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7", 24, "\u6501", 7, "\u650A", 7, "\u6513", 4, "\u6519", 8],
+      ["9480", "\u6522\u6523\u6524\u6526", 4, "\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540", 4, "\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578", 14, "\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1", 7, "\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8", 7, "\u65E1\u65E3\u65E4\u65EA\u65EB"],
+      ["9540", "\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB", 4, "\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637", 4, "\u663D\u663F\u6640\u6642\u6644", 6, "\u664D\u664E\u6650\u6651\u6658"],
+      ["9580", "\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669", 4, "\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698", 4, "\u669E", 8, "\u66A9", 4, "\u66AF", 4, "\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF", 25, "\u66DA\u66DE", 7, "\u66E7\u66E8\u66EA", 5, "\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],
+      ["9640", "\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720", 5, "\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757", 4, "\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],
+      ["9680", "\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9", 7, "\u67C2\u67C5", 9, "\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5", 7, "\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818", 4, "\u681E\u681F\u6820\u6822", 6, "\u682B", 6, "\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856", 5],
+      ["9740", "\u685C\u685D\u685E\u685F\u686A\u686C", 7, "\u6875\u6878", 8, "\u6882\u6884\u6887", 7, "\u6890\u6891\u6892\u6894\u6895\u6896\u6898", 9, "\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],
+      ["9780", "\u68B9", 6, "\u68C1\u68C3", 5, "\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB", 4, "\u68E1\u68E2\u68E4", 9, "\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906", 4, "\u690C\u690F\u6911\u6913", 11, "\u6921\u6922\u6923\u6925", 7, "\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943", 16, "\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],
+      ["9840", "\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972", 4, "\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E", 5, "\u6996\u6997\u6999\u699A\u699D", 9, "\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],
+      ["9880", "\u69BE\u69BF\u69C0\u69C2", 7, "\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5", 5, "\u69DC\u69DD\u69DE\u69E1", 11, "\u69EE\u69EF\u69F0\u69F1\u69F3", 9, "\u69FE\u6A00", 9, "\u6A0B", 11, "\u6A19", 5, "\u6A20\u6A22", 5, "\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36", 6, "\u6A3F", 4, "\u6A45\u6A46\u6A48", 7, "\u6A51", 6, "\u6A5A"],
+      ["9940", "\u6A5C", 4, "\u6A62\u6A63\u6A64\u6A66", 10, "\u6A72", 6, "\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85", 8, "\u6A8F\u6A92", 4, "\u6A98", 7, "\u6AA1", 5],
+      ["9980", "\u6AA7\u6AA8\u6AAA\u6AAD", 114, "\u6B25\u6B26\u6B28", 6],
+      ["9a40", "\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D", 11, "\u6B5A", 7, "\u6B68\u6B69\u6B6B", 13, "\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],
+      ["9a80", "\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C", 4, "\u6BA2", 7, "\u6BAB", 7, "\u6BB6\u6BB8", 6, "\u6BC0\u6BC3\u6BC4\u6BC6", 4, "\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC", 4, "\u6BE2", 7, "\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE", 6, "\u6C08", 4, "\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B", 4, "\u6C51\u6C52\u6C53\u6C56\u6C58"],
+      ["9b40", "\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B", 4, "\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],
+      ["9b80", "\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F", 5, "\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D", 4, "\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96", 4, "\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9", 5, "\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],
+      ["9c40", "\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD", 7, "\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],
+      ["9c80", "\u6E36\u6E37\u6E39\u6E3B", 7, "\u6E45", 7, "\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60", 10, "\u6E6C\u6E6D\u6E6F", 14, "\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A", 4, "\u6E91", 6, "\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA", 5],
+      ["9d40", "\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA", 7, "\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A", 4, "\u6F10\u6F11\u6F12\u6F16", 9, "\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37", 6, "\u6F3F\u6F40\u6F41\u6F42"],
+      ["9d80", "\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E", 9, "\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67", 5, "\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D", 6, "\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F", 12, "\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2", 4, "\u6FA8", 10, "\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA", 5, "\u6FC1\u6FC3", 5, "\u6FCA", 6, "\u6FD3", 10, "\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],
+      ["9e40", "\u6FE6", 7, "\u6FF0", 32, "\u7012", 7, "\u701C", 6, "\u7024", 6],
+      ["9e80", "\u702B", 9, "\u7036\u7037\u7038\u703A", 17, "\u704D\u704E\u7050", 13, "\u705F", 11, "\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E", 12, "\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB", 12, "\u70DA"],
+      ["9f40", "\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0", 6, "\u70F8\u70FA\u70FB\u70FC\u70FE", 10, "\u710B", 4, "\u7111\u7112\u7114\u7117\u711B", 10, "\u7127", 7, "\u7132\u7133\u7134"],
+      ["9f80", "\u7135\u7137", 13, "\u7146\u7147\u7148\u7149\u714B\u714D\u714F", 12, "\u715D\u715F", 4, "\u7165\u7169", 4, "\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E", 5, "\u7185", 4, "\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A", 4, "\u71A1", 6, "\u71A9\u71AA\u71AB\u71AD", 5, "\u71B4\u71B6\u71B7\u71B8\u71BA", 8, "\u71C4", 9, "\u71CF", 4],
+      ["a040", "\u71D6", 9, "\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8", 5, "\u71EF", 9, "\u71FA", 11, "\u7207", 19],
+      ["a080", "\u721B\u721C\u721E", 9, "\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240", 6, "\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285", 4, "\u728C\u728E\u7290\u7291\u7293", 11, "\u72A0", 11, "\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA", 6, "\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],
+      ["a1a1", "\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 7, "\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],
+      ["a2a1", "\u2170", 9],
+      ["a2b1", "\u2488", 19, "\u2474", 19, "\u2460", 9],
+      ["a2e5", "\u3220", 9],
+      ["a2f1", "\u2160", 11],
+      ["a3a1", "\uFF01\uFF02\uFF03\uFFE5\uFF05", 88, "\uFFE3"],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a6e0", "\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],
+      ["a6ee", "\uFE3B\uFE3C\uFE37\uFE38\uFE31"],
+      ["a6f4", "\uFE33\uFE34"],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a840", "\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550", 35, "\u2581", 6],
+      ["a880", "\u2588", 7, "\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],
+      ["a8a1", "\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],
+      ["a8bd", "\u0144\u0148"],
+      ["a8c0", "\u0261"],
+      ["a8c5", "\u3105", 36],
+      ["a940", "\u3021", 8, "\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],
+      ["a959", "\u2121\u3231"],
+      ["a95c", "\u2010"],
+      ["a960", "\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49", 9, "\uFE54\uFE55\uFE56\uFE57\uFE59", 8],
+      ["a980", "\uFE62", 4, "\uFE68\uFE69\uFE6A\uFE6B"],
+      ["a996", "\u3007"],
+      ["a9a4", "\u2500", 75],
+      ["aa40", "\u72DC\u72DD\u72DF\u72E2", 5, "\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304", 5, "\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340", 8],
+      ["aa80", "\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358", 7, "\u7361", 10, "\u736E\u7370\u7371"],
+      ["ab40", "\u7372", 11, "\u737F", 4, "\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3", 5, "\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3", 4],
+      ["ab80", "\u73CB\u73CC\u73CE\u73D2", 6, "\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3", 4],
+      ["ac40", "\u73F8", 10, "\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411", 8, "\u741C", 5, "\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437", 4, "\u743D\u743E\u743F\u7440\u7442", 11],
+      ["ac80", "\u744E", 6, "\u7456\u7458\u745D\u7460", 12, "\u746E\u746F\u7471", 4, "\u7478\u7479\u747A"],
+      ["ad40", "\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491", 10, "\u749D\u749F", 7, "\u74AA", 15, "\u74BB", 12],
+      ["ad80", "\u74C8", 9, "\u74D3", 8, "\u74DD\u74DF\u74E1\u74E5\u74E7", 6, "\u74F0\u74F1\u74F2"],
+      ["ae40", "\u74F3\u74F5\u74F8", 6, "\u7500\u7501\u7502\u7503\u7505", 7, "\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520", 4, "\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],
+      ["ae80", "\u755D", 7, "\u7567\u7568\u7569\u756B", 6, "\u7573\u7575\u7576\u7577\u757A", 4, "\u7580\u7581\u7582\u7584\u7585\u7587"],
+      ["af40", "\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6", 4, "\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],
+      ["af80", "\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],
+      ["b040", "\u7645", 6, "\u764E", 5, "\u7655\u7657", 4, "\u765D\u765F\u7660\u7661\u7662\u7664", 6, "\u766C\u766D\u766E\u7670", 7, "\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],
+      ["b080", "\u769C", 7, "\u76A5", 8, "\u76AF\u76B0\u76B3\u76B5", 9, "\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],
+      ["b140", "\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0", 4, "\u76E6", 7, "\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E", 10, "\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],
+      ["b180", "\u772C\u772E\u7730", 4, "\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748", 7, "\u7752", 7, "\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],
+      ["b240", "\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D", 11, "\u777A\u777B\u777C\u7781\u7782\u7783\u7786", 5, "\u778F\u7790\u7793", 11, "\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6", 4],
+      ["b280", "\u77BC\u77BE\u77C0", 12, "\u77CE", 8, "\u77D8\u77D9\u77DA\u77DD", 4, "\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],
+      ["b340", "\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803", 5, "\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],
+      ["b380", "\u785B\u785C\u785E", 11, "\u786F", 7, "\u7878\u7879\u787A\u787B\u787D", 6, "\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],
+      ["b440", "\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8", 7, "\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA", 9],
+      ["b480", "\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED", 4, "\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB", 5, "\u7902\u7903\u7904\u7906", 6, "\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],
+      ["b540", "\u790D", 5, "\u7914", 9, "\u791F", 4, "\u7925", 14, "\u7935", 4, "\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A", 8, "\u7954\u7955\u7958\u7959\u7961\u7963"],
+      ["b580", "\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970", 6, "\u7979\u797B", 4, "\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],
+      ["b640", "\u7993", 6, "\u799B", 11, "\u79A8", 10, "\u79B4", 4, "\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9", 5, "\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],
+      ["b680", "\u79EC\u79EE\u79F1", 6, "\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F", 4, "\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],
+      ["b740", "\u7A1D\u7A1F\u7A21\u7A22\u7A24", 14, "\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40", 5, "\u7A47", 9, "\u7A52", 4, "\u7A58", 16],
+      ["b780", "\u7A69", 6, "\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],
+      ["b840", "\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE", 4, "\u7AB4", 10, "\u7AC0", 10, "\u7ACC", 9, "\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7", 5, "\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],
+      ["b880", "\u7AF4", 4, "\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],
+      ["b940", "\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F", 5, "\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63", 10, "\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86", 6, "\u7B8E\u7B8F"],
+      ["b980", "\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9", 7, "\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],
+      ["ba40", "\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4", 4, "\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2", 4, "\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF", 7, "\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10", 5, "\u7C17\u7C18\u7C19"],
+      ["ba80", "\u7C1A", 4, "\u7C20", 5, "\u7C28\u7C29\u7C2B", 12, "\u7C39", 5, "\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],
+      ["bb40", "\u7C43", 9, "\u7C4E", 36, "\u7C75", 5, "\u7C7E", 9],
+      ["bb80", "\u7C88\u7C8A", 6, "\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4", 4, "\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],
+      ["bc40", "\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE", 6, "\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1", 6, "\u7CE9", 5, "\u7CF0", 7, "\u7CF9\u7CFA\u7CFC", 13, "\u7D0B", 5],
+      ["bc80", "\u7D11", 14, "\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30", 6, "\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],
+      ["bd40", "\u7D37", 54, "\u7D6F", 7],
+      ["bd80", "\u7D78", 32, "\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],
+      ["be40", "\u7D99", 12, "\u7DA7", 6, "\u7DAF", 42],
+      ["be80", "\u7DDA", 32, "\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],
+      ["bf40", "\u7DFB", 62],
+      ["bf80", "\u7E3A\u7E3C", 4, "\u7E42", 4, "\u7E48", 21, "\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],
+      ["c040", "\u7E5E", 35, "\u7E83", 23, "\u7E9C\u7E9D\u7E9E"],
+      ["c080", "\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B", 6, "\u7F43\u7F46", 9, "\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],
+      ["c140", "\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63", 4, "\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82", 7, "\u7F8B\u7F8D\u7F8F", 4, "\u7F95", 4, "\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8", 6, "\u7FB1"],
+      ["c180", "\u7FB3", 4, "\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF", 4, "\u7FD6\u7FD7\u7FD9", 5, "\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],
+      ["c240", "\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4", 6, "\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B", 5, "\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],
+      ["c280", "\u8059\u805B", 13, "\u806B", 5, "\u8072", 11, "\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],
+      ["c340", "\u807E\u8081\u8082\u8085\u8088\u808A\u808D", 5, "\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7", 4, "\u80CF", 6, "\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],
+      ["c380", "\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F", 12, "\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139", 4, "\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],
+      ["c440", "\u8140", 5, "\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B", 4, "\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183", 4, "\u8189\u818B\u818C\u818D\u818E\u8190\u8192", 5, "\u8199\u819A\u819E", 4, "\u81A4\u81A5"],
+      ["c480", "\u81A7\u81A9\u81AB", 7, "\u81B4", 5, "\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD", 6, "\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],
+      ["c540", "\u81D4", 14, "\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE", 4, "\u81F5", 5, "\u81FD\u81FF\u8203\u8207", 4, "\u820E\u820F\u8211\u8213\u8215", 5, "\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],
+      ["c580", "\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250", 7, "\u8259\u825B\u825C\u825D\u825E\u8260", 7, "\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],
+      ["c640", "\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],
+      ["c680", "\u82FA\u82FC", 4, "\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D", 9, "\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],
+      ["c740", "\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A", 4, "\u8353\u8355", 4, "\u835D\u8362\u8370", 6, "\u8379\u837A\u837E", 6, "\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1", 6, "\u83AC\u83AD\u83AE"],
+      ["c780", "\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],
+      ["c840", "\u83EE\u83EF\u83F3", 4, "\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412", 5, "\u8419\u841A\u841B\u841E", 5, "\u8429", 7, "\u8432", 5, "\u8439\u843A\u843B\u843E", 7, "\u8447\u8448\u8449"],
+      ["c880", "\u844A", 6, "\u8452", 4, "\u8458\u845D\u845E\u845F\u8460\u8462\u8464", 4, "\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],
+      ["c940", "\u847D", 4, "\u8483\u8484\u8485\u8486\u848A\u848D\u848F", 7, "\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2", 12, "\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],
+      ["c980", "\u84D8", 4, "\u84DE\u84E1\u84E2\u84E4\u84E7", 4, "\u84ED\u84EE\u84EF\u84F1", 10, "\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],
+      ["ca40", "\u8503", 8, "\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522", 8, "\u852D", 9, "\u853E", 4, "\u8544\u8545\u8546\u8547\u854B", 10],
+      ["ca80", "\u8557\u8558\u855A\u855B\u855C\u855D\u855F", 4, "\u8565\u8566\u8567\u8569", 8, "\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],
+      ["cb40", "\u8582\u8583\u8586\u8588", 6, "\u8590", 10, "\u859D", 6, "\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1", 5, "\u85B8\u85BA", 6, "\u85C2", 6, "\u85CA", 4, "\u85D1\u85D2"],
+      ["cb80", "\u85D4\u85D6", 5, "\u85DD", 6, "\u85E5\u85E6\u85E7\u85E8\u85EA", 14, "\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],
+      ["cc40", "\u85F9\u85FA\u85FC\u85FD\u85FE\u8600", 4, "\u8606", 10, "\u8612\u8613\u8614\u8615\u8617", 15, "\u8628\u862A", 13, "\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],
+      ["cc80", "\u8641", 11, "\u8652\u8653\u8655", 4, "\u865B\u865C\u865D\u865F\u8660\u8661\u8663", 7, "\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],
+      ["cd40", "\u866D\u866F\u8670\u8672", 6, "\u8683", 6, "\u868E", 4, "\u8694\u8696", 5, "\u869E", 4, "\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB", 4, "\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],
+      ["cd80", "\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],
+      ["ce40", "\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740", 6, "\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A", 5, "\u8761\u8762\u8766", 7, "\u876F\u8771\u8772\u8773\u8775"],
+      ["ce80", "\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E", 4, "\u8794\u8795\u8796\u8798", 6, "\u87A0", 4, "\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],
+      ["cf40", "\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1", 4, "\u87C7\u87C8\u87C9\u87CC", 4, "\u87D4", 6, "\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF", 9],
+      ["cf80", "\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804", 5, "\u880B", 7, "\u8814\u8817\u8818\u8819\u881A\u881C", 4, "\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],
+      ["d040", "\u8824", 13, "\u8833", 5, "\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846", 5, "\u884E", 5, "\u8855\u8856\u8858\u885A", 6, "\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],
+      ["d080", "\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897", 4, "\u889D", 4, "\u88A3\u88A5", 5, "\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],
+      ["d140", "\u88AC\u88AE\u88AF\u88B0\u88B2", 4, "\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA", 4, "\u88E0\u88E1\u88E6\u88E7\u88E9", 6, "\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903", 5],
+      ["d180", "\u8909\u890B", 4, "\u8911\u8914", 4, "\u891C", 4, "\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],
+      ["d240", "\u8938", 8, "\u8942\u8943\u8945", 24, "\u8960", 5, "\u8967", 19, "\u897C"],
+      ["d280", "\u897D\u897E\u8980\u8982\u8984\u8985\u8987", 26, "\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],
+      ["d340", "\u89A2", 30, "\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4", 6],
+      ["d380", "\u89FB", 4, "\u8A01", 5, "\u8A08", 21, "\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],
+      ["d440", "\u8A1E", 31, "\u8A3F", 8, "\u8A49", 21],
+      ["d480", "\u8A5F", 25, "\u8A7A", 6, "\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],
+      ["d540", "\u8A81", 7, "\u8A8B", 7, "\u8A94", 46],
+      ["d580", "\u8AC3", 32, "\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],
+      ["d640", "\u8AE4", 34, "\u8B08", 27],
+      ["d680", "\u8B24\u8B25\u8B27", 30, "\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],
+      ["d740", "\u8B46", 31, "\u8B67", 4, "\u8B6D", 25],
+      ["d780", "\u8B87", 24, "\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],
+      ["d840", "\u8C38", 8, "\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D", 7, "\u8C56\u8C57\u8C58\u8C59\u8C5B", 5, "\u8C63", 6, "\u8C6C", 6, "\u8C74\u8C75\u8C76\u8C77\u8C7B", 6, "\u8C83\u8C84\u8C86\u8C87"],
+      ["d880", "\u8C88\u8C8B\u8C8D", 6, "\u8C95\u8C96\u8C97\u8C99", 20, "\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],
+      ["d940", "\u8CAE", 62],
+      ["d980", "\u8CED", 32, "\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],
+      ["da40", "\u8D0E", 14, "\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78", 8, "\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C", 4, "\u8D92\u8D93\u8D95", 9, "\u8DA0\u8DA1"],
+      ["da80", "\u8DA2\u8DA4", 12, "\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],
+      ["db40", "\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE", 6, "\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15", 7, "\u8E20\u8E21\u8E24", 4, "\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],
+      ["db80", "\u8E3F\u8E43\u8E45\u8E46\u8E4C", 4, "\u8E53", 5, "\u8E5A", 11, "\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],
+      ["dc40", "\u8E73\u8E75\u8E77", 4, "\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88", 6, "\u8E91\u8E92\u8E93\u8E95", 6, "\u8E9D\u8E9F", 11, "\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3", 6, "\u8EBB", 7],
+      ["dc80", "\u8EC3", 10, "\u8ECF", 21, "\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],
+      ["dd40", "\u8EE5", 62],
+      ["dd80", "\u8F24", 32, "\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],
+      ["de40", "\u8F45", 32, "\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],
+      ["de80", "\u8FC9", 4, "\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],
+      ["df40", "\u9019\u901C\u9023\u9024\u9025\u9027", 5, "\u9030", 4, "\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048", 4, "\u904E\u9054\u9055\u9056\u9059\u905A\u905C", 5, "\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F", 4, "\u9076", 6, "\u907E\u9081"],
+      ["df80", "\u9084\u9085\u9086\u9087\u9089\u908A\u908C", 4, "\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],
+      ["e040", "\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105", 19, "\u911A\u911B\u911C"],
+      ["e080", "\u911D\u911F\u9120\u9121\u9124", 10, "\u9130\u9132", 6, "\u913A", 8, "\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],
+      ["e140", "\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180", 4, "\u9186\u9188\u918A\u918E\u918F\u9193", 6, "\u919C", 5, "\u91A4", 5, "\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],
+      ["e180", "\u91BC", 10, "\u91C8\u91CB\u91D0\u91D2", 9, "\u91DD", 8, "\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],
+      ["e240", "\u91E6", 62],
+      ["e280", "\u9225", 32, "\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967", 5, "\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],
+      ["e340", "\u9246", 45, "\u9275", 16],
+      ["e380", "\u9286", 7, "\u928F", 24, "\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],
+      ["e440", "\u92A8", 5, "\u92AF", 24, "\u92C9", 31],
+      ["e480", "\u92E9", 32, "\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],
+      ["e540", "\u930A", 51, "\u933F", 10],
+      ["e580", "\u934A", 31, "\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],
+      ["e640", "\u936C", 34, "\u9390", 27],
+      ["e680", "\u93AC", 29, "\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],
+      ["e740", "\u93CE", 7, "\u93D7", 54],
+      ["e780", "\u940E", 32, "\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21", 6, "\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F", 4, "\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],
+      ["e840", "\u942F", 14, "\u943F", 43, "\u946C\u946D\u946E\u946F"],
+      ["e880", "\u9470", 20, "\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],
+      ["e940", "\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577", 7, "\u9580", 42],
+      ["e980", "\u95AB", 32, "\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],
+      ["ea40", "\u95CC", 27, "\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623", 6, "\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],
+      ["ea80", "\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D", 4, "\u9673\u9678", 12, "\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],
+      ["eb40", "\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D", 9, "\u96A8", 7, "\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6", 9, "\u96E1", 6, "\u96EB"],
+      ["eb80", "\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717", 4, "\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],
+      ["ec40", "\u9721", 8, "\u972B\u972C\u972E\u972F\u9731\u9733", 4, "\u973A\u973B\u973C\u973D\u973F", 18, "\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A", 7],
+      ["ec80", "\u9772\u9775\u9777", 4, "\u977D", 7, "\u9786", 4, "\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799", 4, "\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],
+      ["ed40", "\u979E\u979F\u97A1\u97A2\u97A4", 6, "\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5", 46],
+      ["ed80", "\u97E4\u97E5\u97E8\u97EE", 4, "\u97F4\u97F7", 23, "\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],
+      ["ee40", "\u980F", 62],
+      ["ee80", "\u984E", 32, "\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6", 4, "\u94BC\u94BD\u94BF\u94C4\u94C8", 6, "\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],
+      ["ef40", "\u986F", 5, "\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8", 37, "\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0", 4],
+      ["ef80", "\u98E5\u98E6\u98E9", 30, "\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512", 4, "\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564", 8, "\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],
+      ["f040", "\u9908", 4, "\u990E\u990F\u9911", 28, "\u992F", 26],
+      ["f080", "\u994A", 9, "\u9956", 12, "\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28", 4, "\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66", 6, "\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],
+      ["f140", "\u998C\u998E\u999A", 10, "\u99A6\u99A7\u99A9", 47],
+      ["f180", "\u99D9", 32, "\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],
+      ["f240", "\u99FA", 62],
+      ["f280", "\u9A39", 32, "\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],
+      ["f340", "\u9A5A", 17, "\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9", 6, "\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6", 4, "\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],
+      ["f380", "\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0", 8, "\u9AFA\u9AFC", 6, "\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],
+      ["f440", "\u9B07\u9B09", 5, "\u9B10\u9B11\u9B12\u9B14", 10, "\u9B20\u9B21\u9B22\u9B24", 10, "\u9B30\u9B31\u9B33", 7, "\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55", 5],
+      ["f480", "\u9B5B", 32, "\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],
+      ["f540", "\u9B7C", 62],
+      ["f580", "\u9BBB", 32, "\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],
+      ["f640", "\u9BDC", 62],
+      ["f680", "\u9C1B", 32, "\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85", 5, "\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E", 5, "\u9CA5", 4, "\u9CAB\u9CAD\u9CAE\u9CB0", 7, "\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],
+      ["f740", "\u9C3C", 62],
+      ["f780", "\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE", 4, "\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC", 4, "\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],
+      ["f840", "\u9CE3", 62],
+      ["f880", "\u9D22", 32],
+      ["f940", "\u9D43", 62],
+      ["f980", "\u9D82", 32],
+      ["fa40", "\u9DA3", 62],
+      ["fa80", "\u9DE2", 32],
+      ["fb40", "\u9E03", 27, "\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74", 9, "\u9E80"],
+      ["fb80", "\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C", 5, "\u9E94", 8, "\u9E9E\u9EA0", 5, "\u9EA7\u9EA8\u9EA9\u9EAA"],
+      ["fc40", "\u9EAB", 8, "\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF", 4, "\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0", 8, "\u9EFA\u9EFD\u9EFF", 6],
+      ["fc80", "\u9F06", 4, "\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A", 5, "\u9F21\u9F23", 8, "\u9F2D\u9F2E\u9F30\u9F31"],
+      ["fd40", "\u9F32", 4, "\u9F38\u9F3A\u9F3C\u9F3F", 4, "\u9F45", 10, "\u9F52", 38],
+      ["fd80", "\u9F79", 5, "\u9F81\u9F82\u9F8D", 11, "\u9F9C\u9F9D\u9F9E\u9FA1", 4, "\uF92C\uF979\uF995\uF9E7\uF9F1"],
+      ["fe40", "\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json
+var require_gbk_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) {
+    module2.exports = [
+      ["a140", "\uE4C6", 62],
+      ["a180", "\uE505", 32],
+      ["a240", "\uE526", 62],
+      ["a280", "\uE565", 32],
+      ["a2ab", "\uE766", 5],
+      ["a2e3", "\u20AC\uE76D"],
+      ["a2ef", "\uE76E\uE76F"],
+      ["a2fd", "\uE770\uE771"],
+      ["a340", "\uE586", 62],
+      ["a380", "\uE5C5", 31, "\u3000"],
+      ["a440", "\uE5E6", 62],
+      ["a480", "\uE625", 32],
+      ["a4f4", "\uE772", 10],
+      ["a540", "\uE646", 62],
+      ["a580", "\uE685", 32],
+      ["a5f7", "\uE77D", 7],
+      ["a640", "\uE6A6", 62],
+      ["a680", "\uE6E5", 32],
+      ["a6b9", "\uE785", 7],
+      ["a6d9", "\uE78D", 6],
+      ["a6ec", "\uE794\uE795"],
+      ["a6f3", "\uE796"],
+      ["a6f6", "\uE797", 8],
+      ["a740", "\uE706", 62],
+      ["a780", "\uE745", 32],
+      ["a7c2", "\uE7A0", 14],
+      ["a7f2", "\uE7AF", 12],
+      ["a896", "\uE7BC", 10],
+      ["a8bc", "\u1E3F"],
+      ["a8bf", "\u01F9"],
+      ["a8c1", "\uE7C9\uE7CA\uE7CB\uE7CC"],
+      ["a8ea", "\uE7CD", 20],
+      ["a958", "\uE7E2"],
+      ["a95b", "\uE7E3"],
+      ["a95d", "\uE7E4\uE7E5\uE7E6"],
+      ["a989", "\u303E\u2FF0", 11],
+      ["a997", "\uE7F4", 12],
+      ["a9f0", "\uE801", 14],
+      ["aaa1", "\uE000", 93],
+      ["aba1", "\uE05E", 93],
+      ["aca1", "\uE0BC", 93],
+      ["ada1", "\uE11A", 93],
+      ["aea1", "\uE178", 93],
+      ["afa1", "\uE1D6", 93],
+      ["d7fa", "\uE810", 4],
+      ["f8a1", "\uE234", 93],
+      ["f9a1", "\uE292", 93],
+      ["faa1", "\uE2F0", 93],
+      ["fba1", "\uE34E", 93],
+      ["fca1", "\uE3AC", 93],
+      ["fda1", "\uE40A", 93],
+      ["fe50", "\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],
+      ["fe80", "\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13", 6, "\u4DAE\uE864\uE468", 93],
+      ["8135f437", "\uE7C7"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json
+var require_gb18030_ranges = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) {
+    module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json
+var require_cp949 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"],
+      ["8161", "\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41", 9, "\uAC4C\uAC4E", 5, "\uAC55"],
+      ["8181", "\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D", 18, "\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B", 4, "\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95", 6, "\uAC9E\uACA2", 5, "\uACAB\uACAD\uACAE\uACB1", 6, "\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD", 7, "\uACD6\uACD8", 7, "\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7", 4, "\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07", 4, "\uAD0E\uAD10\uAD12\uAD13"],
+      ["8241", "\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21", 7, "\uAD2A\uAD2B\uAD2E", 5],
+      ["8261", "\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D", 6, "\uAD46\uAD48\uAD4A", 5, "\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],
+      ["8281", "\uAD59", 7, "\uAD62\uAD64", 7, "\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83", 4, "\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91", 10, "\uAD9E", 5, "\uADA5", 17, "\uADB8", 7, "\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9", 6, "\uADD2\uADD4", 7, "\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5", 18],
+      ["8341", "\uADFA\uADFB\uADFD\uADFE\uAE02", 5, "\uAE0A\uAE0C\uAE0E", 5, "\uAE15", 7],
+      ["8361", "\uAE1D", 18, "\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],
+      ["8381", "\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57", 4, "\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71", 6, "\uAE7A\uAE7E", 5, "\uAE86", 5, "\uAE8D", 46, "\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5", 6, "\uAECE\uAED2", 5, "\uAEDA\uAEDB\uAEDD", 8],
+      ["8441", "\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE", 5, "\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD", 8],
+      ["8461", "\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11", 18],
+      ["8481", "\uAF24", 7, "\uAF2E\uAF2F\uAF31\uAF33\uAF35", 6, "\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A", 5, "\uAF51", 10, "\uAF5E", 5, "\uAF66", 18, "\uAF7A", 5, "\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89", 6, "\uAF92\uAF93\uAF94\uAF96", 5, "\uAF9D", 26, "\uAFBA\uAFBB\uAFBD\uAFBE"],
+      ["8541", "\uAFBF\uAFC1", 5, "\uAFCA\uAFCC\uAFCF", 4, "\uAFD5", 6, "\uAFDD", 4],
+      ["8561", "\uAFE2", 5, "\uAFEA", 5, "\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9", 6, "\uB002\uB003"],
+      ["8581", "\uB005", 6, "\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015", 6, "\uB01E", 9, "\uB029", 26, "\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E", 29, "\uB07E\uB07F\uB081\uB082\uB083\uB085", 6, "\uB08E\uB090\uB092", 5, "\uB09B\uB09D\uB09E\uB0A3\uB0A4"],
+      ["8641", "\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD", 6, "\uB0C6\uB0CA", 5, "\uB0D2"],
+      ["8661", "\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9", 6, "\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6", 10],
+      ["8681", "\uB0F1", 22, "\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E", 4, "\uB126\uB127\uB129\uB12A\uB12B\uB12D", 6, "\uB136\uB13A", 5, "\uB142\uB143\uB145\uB146\uB147\uB149", 6, "\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161", 22, "\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183", 4, "\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],
+      ["8741", "\uB19E", 9, "\uB1A9", 15],
+      ["8761", "\uB1B9", 18, "\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],
+      ["8781", "\uB1D6", 5, "\uB1DE\uB1E0", 7, "\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1", 7, "\uB1FA\uB1FC\uB1FE", 5, "\uB206\uB207\uB209\uB20A\uB20D", 6, "\uB216\uB218\uB21A", 5, "\uB221", 18, "\uB235", 6, "\uB23D", 26, "\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261", 6, "\uB26A", 4],
+      ["8841", "\uB26F", 4, "\uB276", 5, "\uB27D", 6, "\uB286\uB287\uB288\uB28A", 4],
+      ["8861", "\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B", 4, "\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],
+      ["8881", "\uB2B8", 15, "\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3", 4, "\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309", 6, "\uB312\uB316", 5, "\uB31D", 54, "\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],
+      ["8941", "\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379", 6, "\uB382\uB386", 5, "\uB38D"],
+      ["8961", "\uB38E\uB38F\uB391\uB392\uB393\uB395", 10, "\uB3A2", 5, "\uB3A9\uB3AA\uB3AB\uB3AD"],
+      ["8981", "\uB3AE", 21, "\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9", 18, "\uB3FD", 18, "\uB411", 6, "\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421", 6, "\uB42A\uB42C", 7, "\uB435", 15],
+      ["8a41", "\uB445", 10, "\uB452\uB453\uB455\uB456\uB457\uB459", 6, "\uB462\uB464\uB466"],
+      ["8a61", "\uB467", 4, "\uB46D", 18, "\uB481\uB482"],
+      ["8a81", "\uB483", 4, "\uB489", 19, "\uB49E", 5, "\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD", 7, "\uB4B6\uB4B8\uB4BA", 5, "\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9", 6, "\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6", 5, "\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7", 4, "\uB4EE\uB4F0\uB4F2", 5, "\uB4F9", 26, "\uB516\uB517\uB519\uB51A\uB51D"],
+      ["8b41", "\uB51E", 5, "\uB526\uB52B", 4, "\uB532\uB533\uB535\uB536\uB537\uB539", 6, "\uB542\uB546"],
+      ["8b61", "\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555", 6, "\uB55E\uB562", 8],
+      ["8b81", "\uB56B", 52, "\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6", 4, "\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5", 6, "\uB5CE\uB5D2", 5, "\uB5D9", 18, "\uB5ED", 18],
+      ["8c41", "\uB600", 15, "\uB612\uB613\uB615\uB616\uB617\uB619", 4],
+      ["8c61", "\uB61E", 6, "\uB626", 5, "\uB62D", 6, "\uB635", 5],
+      ["8c81", "\uB63B", 12, "\uB649", 26, "\uB665\uB666\uB667\uB669", 50, "\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5", 5, "\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2", 16],
+      ["8d41", "\uB6C3", 16, "\uB6D5", 8],
+      ["8d61", "\uB6DE", 17, "\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],
+      ["8d81", "\uB6FB", 4, "\uB702\uB703\uB704\uB706", 33, "\uB72A\uB72B\uB72D\uB72E\uB731", 6, "\uB73A\uB73C", 7, "\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D", 6, "\uB756", 9, "\uB761\uB762\uB763\uB765\uB766\uB767\uB769", 6, "\uB772\uB774\uB776", 5, "\uB77E\uB77F\uB781\uB782\uB783\uB785", 6, "\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],
+      ["8e41", "\uB79F\uB7A1", 6, "\uB7AA\uB7AE", 5, "\uB7B6\uB7B7\uB7B9", 8],
+      ["8e61", "\uB7C2", 4, "\uB7C8\uB7CA", 19],
+      ["8e81", "\uB7DE", 13, "\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5", 6, "\uB7FE\uB802", 4, "\uB80A\uB80B\uB80D\uB80E\uB80F\uB811", 6, "\uB81A\uB81C\uB81E", 5, "\uB826\uB827\uB829\uB82A\uB82B\uB82D", 6, "\uB836\uB83A", 5, "\uB841\uB842\uB843\uB845", 11, "\uB852\uB854", 7, "\uB85E\uB85F\uB861\uB862\uB863\uB865", 6, "\uB86E\uB870\uB872", 5, "\uB879\uB87A\uB87B\uB87D", 7],
+      ["8f41", "\uB885", 7, "\uB88E", 17],
+      ["8f61", "\uB8A0", 7, "\uB8A9", 6, "\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9", 4],
+      ["8f81", "\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6", 5, "\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5", 7, "\uB8DE\uB8E0\uB8E2", 5, "\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1", 6, "\uB8FA\uB8FC\uB8FE", 5, "\uB905", 18, "\uB919", 6, "\uB921", 26, "\uB93E\uB93F\uB941\uB942\uB943\uB945", 6, "\uB94D\uB94E\uB950\uB952", 5],
+      ["9041", "\uB95A\uB95B\uB95D\uB95E\uB95F\uB961", 6, "\uB96A\uB96C\uB96E", 5, "\uB976\uB977\uB979\uB97A\uB97B\uB97D"],
+      ["9061", "\uB97E", 5, "\uB986\uB988\uB98B\uB98C\uB98F", 15],
+      ["9081", "\uB99F", 12, "\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5", 6, "\uB9BE\uB9C0\uB9C2", 5, "\uB9CA\uB9CB\uB9CD\uB9D3", 4, "\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED", 6, "\uB9F6\uB9FB", 4, "\uBA02", 5, "\uBA09", 11, "\uBA16", 33, "\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],
+      ["9141", "\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D", 6, "\uBA66\uBA6A", 5],
+      ["9161", "\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79", 9, "\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D", 5],
+      ["9181", "\uBA93", 20, "\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3", 4, "\uBABA\uBABC\uBABE", 5, "\uBAC5\uBAC6\uBAC7\uBAC9", 14, "\uBADA", 33, "\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05", 7, "\uBB0E\uBB10\uBB12", 5, "\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21", 6],
+      ["9241", "\uBB28\uBB2A\uBB2C", 7, "\uBB37\uBB39\uBB3A\uBB3F", 4, "\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],
+      ["9261", "\uBB53\uBB55\uBB56\uBB57\uBB59", 7, "\uBB62\uBB64", 7, "\uBB6D", 4],
+      ["9281", "\uBB72", 21, "\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91", 18, "\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD", 6, "\uBBB5\uBBB6\uBBB8", 7, "\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9", 6, "\uBBD1\uBBD2\uBBD4", 35, "\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],
+      ["9341", "\uBC03", 4, "\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],
+      ["9361", "\uBC36\uBC37\uBC39", 6, "\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51", 8],
+      ["9381", "\uBC5A\uBC5B\uBC5C\uBC5E", 37, "\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F", 4, "\uBC96\uBC98\uBC9B", 4, "\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9", 6, "\uBCB2\uBCB6", 5, "\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5", 7, "\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD", 22, "\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],
+      ["9441", "\uBCFE", 5, "\uBD06\uBD08\uBD0A", 5, "\uBD11\uBD12\uBD13\uBD15", 8],
+      ["9461", "\uBD1E", 5, "\uBD25", 6, "\uBD2D", 12],
+      ["9481", "\uBD3A", 5, "\uBD41", 6, "\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51", 6, "\uBD5A", 9, "\uBD65\uBD66\uBD67\uBD69", 22, "\uBD82\uBD83\uBD85\uBD86\uBD8B", 4, "\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D", 6, "\uBDA5", 10, "\uBDB1", 6, "\uBDB9", 24],
+      ["9541", "\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD", 11, "\uBDEA", 5, "\uBDF1"],
+      ["9561", "\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9", 6, "\uBE01\uBE02\uBE04\uBE06", 5, "\uBE0E\uBE0F\uBE11\uBE12\uBE13"],
+      ["9581", "\uBE15", 6, "\uBE1E\uBE20", 35, "\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F", 4, "\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B", 4, "\uBE72\uBE76", 4, "\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85", 6, "\uBE8E\uBE92", 5, "\uBE9A", 13, "\uBEA9", 14],
+      ["9641", "\uBEB8", 23, "\uBED2\uBED3"],
+      ["9661", "\uBED5\uBED6\uBED9", 6, "\uBEE1\uBEE2\uBEE6", 5, "\uBEED", 8],
+      ["9681", "\uBEF6", 10, "\uBF02", 5, "\uBF0A", 13, "\uBF1A\uBF1E", 33, "\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49", 6, "\uBF52\uBF53\uBF54\uBF56", 44],
+      ["9741", "\uBF83", 16, "\uBF95", 8],
+      ["9761", "\uBF9E", 17, "\uBFB1", 7],
+      ["9781", "\uBFB9", 11, "\uBFC6", 5, "\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5", 6, "\uBFDD\uBFDE\uBFE0\uBFE2", 89, "\uC03D\uC03E\uC03F"],
+      ["9841", "\uC040", 16, "\uC052", 5, "\uC059\uC05A\uC05B"],
+      ["9861", "\uC05D\uC05E\uC05F\uC061", 6, "\uC06A", 15],
+      ["9881", "\uC07A", 21, "\uC092\uC093\uC095\uC096\uC097\uC099", 6, "\uC0A2\uC0A4\uC0A6", 5, "\uC0AE\uC0B1\uC0B2\uC0B7", 4, "\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1", 6, "\uC0DA\uC0DE", 5, "\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED", 6, "\uC0F6\uC0F8\uC0FA", 5, "\uC101\uC102\uC103\uC105\uC106\uC107\uC109", 6, "\uC111\uC112\uC113\uC114\uC116", 5, "\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],
+      ["9941", "\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141", 6, "\uC14A\uC14E", 5, "\uC156\uC157"],
+      ["9961", "\uC159\uC15A\uC15B\uC15D", 6, "\uC166\uC16A", 5, "\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],
+      ["9981", "\uC17C", 8, "\uC186", 5, "\uC18F\uC191\uC192\uC193\uC195\uC197", 4, "\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1", 11, "\uC1BE", 5, "\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD", 6, "\uC1D5\uC1D6\uC1D9", 6, "\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9", 6, "\uC1F2\uC1F4", 7, "\uC1FE\uC1FF\uC201\uC202\uC203\uC205", 6, "\uC20E\uC210\uC212", 5, "\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],
+      ["9a41", "\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235", 16],
+      ["9a61", "\uC246\uC247\uC249", 6, "\uC252\uC253\uC255\uC256\uC257\uC259", 6, "\uC261\uC262\uC263\uC264\uC266"],
+      ["9a81", "\uC267", 4, "\uC26E\uC26F\uC271\uC272\uC273\uC275", 6, "\uC27E\uC280\uC282", 5, "\uC28A", 5, "\uC291", 6, "\uC299\uC29A\uC29C\uC29E", 5, "\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE", 5, "\uC2B6\uC2B8\uC2BA", 33, "\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5", 5, "\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301", 6, "\uC30A\uC30B\uC30E\uC30F"],
+      ["9b41", "\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D", 6, "\uC326\uC327\uC32A", 8],
+      ["9b61", "\uC333", 17, "\uC346", 7],
+      ["9b81", "\uC34E", 25, "\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373", 4, "\uC37A\uC37B\uC37E", 5, "\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D", 50, "\uC3C1", 22, "\uC3DA"],
+      ["9c41", "\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3", 4, "\uC3EA\uC3EB\uC3EC\uC3EE", 5, "\uC3F6\uC3F7\uC3F9", 5],
+      ["9c61", "\uC3FF", 8, "\uC409", 6, "\uC411", 9],
+      ["9c81", "\uC41B", 8, "\uC425", 6, "\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435", 6, "\uC43E", 9, "\uC449", 26, "\uC466\uC467\uC469\uC46A\uC46B\uC46D", 6, "\uC476\uC477\uC478\uC47A", 5, "\uC481", 18, "\uC495", 6, "\uC49D", 12],
+      ["9d41", "\uC4AA", 13, "\uC4B9\uC4BA\uC4BB\uC4BD", 8],
+      ["9d61", "\uC4C6", 25],
+      ["9d81", "\uC4E0", 8, "\uC4EA", 5, "\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502", 9, "\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515", 6, "\uC51D", 10, "\uC52A\uC52B\uC52D\uC52E\uC52F\uC531", 6, "\uC53A\uC53C\uC53E", 5, "\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569", 6, "\uC572\uC576", 5, "\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],
+      ["9e41", "\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1", 7, "\uC5AA", 9, "\uC5B6"],
+      ["9e61", "\uC5B7\uC5BA\uC5BF", 4, "\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9", 6, "\uC5E2\uC5E4\uC5E6\uC5E7"],
+      ["9e81", "\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611", 6, "\uC61A\uC61D", 6, "\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649", 6, "\uC652\uC656", 5, "\uC65E\uC65F\uC661", 10, "\uC66D\uC66E\uC670\uC672", 5, "\uC67A\uC67B\uC67D\uC67E\uC67F\uC681", 6, "\uC68A\uC68C\uC68E", 5, "\uC696\uC697\uC699\uC69A\uC69B\uC69D", 6, "\uC6A6"],
+      ["9f41", "\uC6A8\uC6AA", 5, "\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB", 4, "\uC6C2\uC6C4\uC6C6", 5, "\uC6CE"],
+      ["9f61", "\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5", 6, "\uC6DE\uC6DF\uC6E2", 5, "\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],
+      ["9f81", "\uC6F3", 4, "\uC6FA\uC6FB\uC6FC\uC6FE", 5, "\uC706\uC707\uC709\uC70A\uC70B\uC70D", 6, "\uC716\uC718\uC71A", 5, "\uC722\uC723\uC725\uC726\uC727\uC729", 6, "\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745", 4, "\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761", 6, "\uC769\uC76A\uC76C", 7, "\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B", 4, "\uC7A2\uC7A7", 4, "\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],
+      ["a041", "\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2", 5, "\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1", 6, "\uC7D9\uC7DA\uC7DB\uC7DC"],
+      ["a061", "\uC7DE", 5, "\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED", 13],
+      ["a081", "\uC7FB", 4, "\uC802\uC803\uC805\uC806\uC807\uC809\uC80B", 4, "\uC812\uC814\uC817", 4, "\uC81E\uC81F\uC821\uC822\uC823\uC825", 6, "\uC82E\uC830\uC832", 5, "\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841", 6, "\uC84A\uC84B\uC84E", 5, "\uC855", 26, "\uC872\uC873\uC875\uC876\uC877\uC879\uC87B", 4, "\uC882\uC884\uC888\uC889\uC88A\uC88E", 5, "\uC895", 7, "\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],
+      ["a141", "\uC8A5\uC8A6\uC8A7\uC8A9", 18, "\uC8BE\uC8BF\uC8C0\uC8C1"],
+      ["a161", "\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD", 6, "\uC8D6\uC8D8\uC8DA", 5, "\uC8E2\uC8E3\uC8E5"],
+      ["a181", "\uC8E6", 14, "\uC8F6", 5, "\uC8FE\uC8FF\uC901\uC902\uC903\uC907", 4, "\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 9, "\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],
+      ["a241", "\uC910\uC912", 5, "\uC919", 18],
+      ["a261", "\uC92D", 6, "\uC935", 18],
+      ["a281", "\uC948", 7, "\uC952\uC953\uC955\uC956\uC957\uC959", 6, "\uC962\uC964", 7, "\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],
+      ["a341", "\uC971\uC972\uC973\uC975", 6, "\uC97D", 10, "\uC98A\uC98B\uC98D\uC98E\uC98F"],
+      ["a361", "\uC991", 6, "\uC99A\uC99C\uC99E", 16],
+      ["a381", "\uC9AF", 16, "\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB", 4, "\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01", 58, "\uFFE6\uFF3D", 32, "\uFFE3"],
+      ["a441", "\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2", 5, "\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],
+      ["a461", "\uCA05\uCA06\uCA07\uCA0A\uCA0E", 5, "\uCA15\uCA16\uCA17\uCA19", 12],
+      ["a481", "\uCA26\uCA27\uCA28\uCA2A", 28, "\u3131", 93],
+      ["a541", "\uCA47", 4, "\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55", 6, "\uCA5E\uCA62", 5, "\uCA69\uCA6A"],
+      ["a561", "\uCA6B", 17, "\uCA7E", 5, "\uCA85\uCA86"],
+      ["a581", "\uCA87", 16, "\uCA99", 14, "\u2170", 9],
+      ["a5b0", "\u2160", 9],
+      ["a5c1", "\u0391", 16, "\u03A3", 6],
+      ["a5e1", "\u03B1", 16, "\u03C3", 6],
+      ["a641", "\uCAA8", 19, "\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],
+      ["a661", "\uCAC6", 5, "\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA", 5, "\uCAE1", 6],
+      ["a681", "\uCAE8\uCAE9\uCAEA\uCAEB\uCAED", 6, "\uCAF5", 18, "\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543", 7],
+      ["a741", "\uCB0B", 4, "\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19", 6, "\uCB22", 7],
+      ["a761", "\uCB2A", 22, "\uCB42\uCB43\uCB44"],
+      ["a781", "\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51", 6, "\uCB5A\uCB5B\uCB5C\uCB5E", 5, "\uCB65", 7, "\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399", 9, "\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0", 9, "\u3380", 4, "\u33BA", 5, "\u3390", 4, "\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],
+      ["a841", "\uCB6D", 10, "\uCB7A", 14],
+      ["a861", "\uCB89", 18, "\uCB9D", 6],
+      ["a881", "\uCBA4", 19, "\uCBB9", 11, "\xC6\xD0\xAA\u0126"],
+      ["a8a6", "\u0132"],
+      ["a8a8", "\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],
+      ["a8b1", "\u3260", 27, "\u24D0", 25, "\u2460", 14, "\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],
+      ["a941", "\uCBC5", 14, "\uCBD5", 10],
+      ["a961", "\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA", 18],
+      ["a981", "\uCBFD", 14, "\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15", 6, "\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200", 27, "\u249C", 25, "\u2474", 14, "\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],
+      ["aa41", "\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31", 6, "\uCC3A\uCC3F", 4, "\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],
+      ["aa61", "\uCC4F", 4, "\uCC56\uCC5A", 5, "\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69", 6, "\uCC71\uCC72"],
+      ["aa81", "\uCC73\uCC74\uCC76", 29, "\u3041", 82],
+      ["ab41", "\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1", 6, "\uCCAA\uCCAE", 5, "\uCCB6\uCCB7\uCCB9"],
+      ["ab61", "\uCCBA\uCCBB\uCCBD", 6, "\uCCC6\uCCC8\uCCCA", 5, "\uCCD1\uCCD2\uCCD3\uCCD5", 5],
+      ["ab81", "\uCCDB", 8, "\uCCE5", 6, "\uCCED\uCCEE\uCCEF\uCCF1", 12, "\u30A1", 85],
+      ["ac41", "\uCCFE\uCCFF\uCD00\uCD02", 5, "\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11", 6, "\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],
+      ["ac61", "\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D", 11, "\uCD3A", 4],
+      ["ac81", "\uCD3F", 28, "\uCD5D\uCD5E\uCD5F\u0410", 5, "\u0401\u0416", 25],
+      ["acd1", "\u0430", 5, "\u0451\u0436", 25],
+      ["ad41", "\uCD61\uCD62\uCD63\uCD65", 6, "\uCD6E\uCD70\uCD72", 5, "\uCD79", 7],
+      ["ad61", "\uCD81", 6, "\uCD89", 10, "\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],
+      ["ad81", "\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA", 5, "\uCDB1", 18, "\uCDC5"],
+      ["ae41", "\uCDC6", 5, "\uCDCD\uCDCE\uCDCF\uCDD1", 16],
+      ["ae61", "\uCDE2", 5, "\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1", 6, "\uCDFA\uCDFC\uCDFE", 4],
+      ["ae81", "\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D", 6, "\uCE15\uCE16\uCE17\uCE18\uCE1A", 5, "\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],
+      ["af41", "\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36", 19],
+      ["af61", "\uCE4A", 13, "\uCE5A\uCE5B\uCE5D\uCE5E\uCE62", 5, "\uCE6A\uCE6C"],
+      ["af81", "\uCE6E", 5, "\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D", 6, "\uCE86\uCE88\uCE8A", 5, "\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],
+      ["b041", "\uCE9A", 5, "\uCEA2\uCEA6", 5, "\uCEAE", 12],
+      ["b061", "\uCEBB", 5, "\uCEC2", 19],
+      ["b081", "\uCED6", 13, "\uCEE6\uCEE7\uCEE9\uCEEA\uCEED", 6, "\uCEF6\uCEFA", 5, "\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10", 7, "\uAC19", 4, "\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],
+      ["b141", "\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09", 6, "\uCF12\uCF14\uCF16", 5, "\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],
+      ["b161", "\uCF25", 6, "\uCF2E\uCF32", 5, "\uCF39", 11],
+      ["b181", "\uCF45", 14, "\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D", 6, "\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],
+      ["b241", "\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79", 6, "\uCF81\uCF82\uCF83\uCF84\uCF86", 5, "\uCF8D"],
+      ["b261", "\uCF8E", 18, "\uCFA2", 5, "\uCFA9"],
+      ["b281", "\uCFAA", 5, "\uCFB1", 18, "\uCFC5", 6, "\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],
+      ["b341", "\uCFCC", 19, "\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],
+      ["b361", "\uCFEA", 5, "\uCFF2\uCFF4\uCFF6", 5, "\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005", 5],
+      ["b381", "\uD00B", 5, "\uD012", 5, "\uD019", 19, "\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB", 4, "\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],
+      ["b441", "\uD02E", 5, "\uD036\uD037\uD039\uD03A\uD03B\uD03D", 6, "\uD046\uD048\uD04A", 5],
+      ["b461", "\uD051\uD052\uD053\uD055\uD056\uD057\uD059", 6, "\uD061", 10, "\uD06E\uD06F"],
+      ["b481", "\uD071\uD072\uD073\uD075", 6, "\uD07E\uD07F\uD080\uD082", 18, "\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB", 4, "\uB2F3\uB2F4\uB2F5\uB2F7", 4, "\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],
+      ["b541", "\uD095", 14, "\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD", 5],
+      ["b561", "\uD0B3\uD0B6\uD0B8\uD0BA", 5, "\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA", 5, "\uD0D2\uD0D6", 4],
+      ["b581", "\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5", 6, "\uD0EE\uD0F2", 5, "\uD0F9", 11, "\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],
+      ["b641", "\uD105", 7, "\uD10E", 17],
+      ["b661", "\uD120", 15, "\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],
+      ["b681", "\uD13F\uD142\uD146", 5, "\uD14E\uD14F\uD151\uD152\uD153\uD155", 6, "\uD15E\uD160\uD162", 5, "\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],
+      ["b741", "\uD16E", 13, "\uD17D", 6, "\uD185\uD186\uD187\uD189\uD18A"],
+      ["b761", "\uD18B", 20, "\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],
+      ["b781", "\uD1A9", 6, "\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1", 14, "\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],
+      ["b841", "\uD1D0", 7, "\uD1D9", 17],
+      ["b861", "\uD1EB", 8, "\uD1F5\uD1F6\uD1F7\uD1F9", 13],
+      ["b881", "\uD208\uD20A", 5, "\uD211", 24, "\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE", 4, "\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],
+      ["b941", "\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235", 6, "\uD23E\uD240\uD242", 5, "\uD249\uD24A\uD24B\uD24C"],
+      ["b961", "\uD24D", 14, "\uD25D", 6, "\uD265\uD266\uD267\uD268"],
+      ["b981", "\uD269", 22, "\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14", 4, "\uBC1B", 4, "\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],
+      ["ba41", "\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296", 5, "\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5", 6, "\uD2AD"],
+      ["ba61", "\uD2AE\uD2AF\uD2B0\uD2B2", 5, "\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3", 4, "\uD2CA\uD2CC", 5],
+      ["ba81", "\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD", 6, "\uD2E6", 9, "\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],
+      ["bb41", "\uD2FB", 4, "\uD302\uD304\uD306", 5, "\uD30F\uD311\uD312\uD313\uD315\uD317", 4, "\uD31E\uD322\uD323"],
+      ["bb61", "\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331", 6, "\uD33A\uD33E", 5, "\uD346\uD347\uD348\uD349"],
+      ["bb81", "\uD34A", 31, "\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],
+      ["bc41", "\uD36A", 17, "\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],
+      ["bc61", "\uD388\uD389\uD38A\uD38B\uD38E\uD392", 5, "\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1", 6, "\uD3AA\uD3AC\uD3AE"],
+      ["bc81", "\uD3AF", 4, "\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD", 6, "\uD3C6\uD3C7\uD3CA", 5, "\uD3D1", 5, "\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C", 4, "\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],
+      ["bd41", "\uD3D7\uD3D9", 7, "\uD3E2\uD3E4", 7, "\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],
+      ["bd61", "\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402", 5, "\uD409", 13],
+      ["bd81", "\uD417", 5, "\uD41E", 25, "\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],
+      ["be41", "\uD438", 7, "\uD441\uD442\uD443\uD445", 14],
+      ["be61", "\uD454", 7, "\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465", 7, "\uD46E\uD470\uD471\uD472"],
+      ["be81", "\uD473", 4, "\uD47A\uD47B\uD47D\uD47E\uD481\uD483", 4, "\uD48A\uD48C\uD48E", 5, "\uD495", 8, "\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4", 6, "\uC5CC\uC5CE"],
+      ["bf41", "\uD49E", 10, "\uD4AA", 14],
+      ["bf61", "\uD4B9", 18, "\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],
+      ["bf81", "\uD4D6", 5, "\uD4DD\uD4DE\uD4E0", 7, "\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1", 6, "\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC", 5, "\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],
+      ["c041", "\uD4FE", 5, "\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D", 6, "\uD516\uD518", 5],
+      ["c061", "\uD51E", 25],
+      ["c081", "\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545", 6, "\uD54E\uD550\uD552", 5, "\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751", 7, "\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],
+      ["c141", "\uD564\uD566\uD567\uD56A\uD56C\uD56E", 5, "\uD576\uD577\uD579\uD57A\uD57B\uD57D", 6, "\uD586\uD58A\uD58B"],
+      ["c161", "\uD58C\uD58D\uD58E\uD58F\uD591", 19, "\uD5A6\uD5A7"],
+      ["c181", "\uD5A8", 31, "\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],
+      ["c241", "\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3", 4, "\uD5DA\uD5DC\uD5DE", 5, "\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],
+      ["c261", "\uD5EF", 4, "\uD5F6\uD5F8\uD5FA", 5, "\uD602\uD603\uD605\uD606\uD607\uD609", 6, "\uD612"],
+      ["c281", "\uD616", 5, "\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625", 7, "\uD62E", 9, "\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],
+      ["c341", "\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D", 4],
+      ["c361", "\uD662", 4, "\uD668\uD66A", 5, "\uD672\uD673\uD675", 11],
+      ["c381", "\uD681\uD682\uD684\uD686", 5, "\uD68E\uD68F\uD691\uD692\uD693\uD695", 7, "\uD69E\uD6A0\uD6A2", 5, "\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],
+      ["c441", "\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1", 7, "\uD6BA\uD6BC", 7, "\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],
+      ["c461", "\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA", 5, "\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9", 4],
+      ["c481", "\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6", 5, "\uD6FE\uD6FF\uD701\uD702\uD703\uD705", 11, "\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],
+      ["c541", "\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721", 6, "\uD72A\uD72C\uD72E", 5, "\uD736\uD737\uD739"],
+      ["c561", "\uD73A\uD73B\uD73D", 6, "\uD745\uD746\uD748\uD74A", 5, "\uD752\uD753\uD755\uD75A", 4],
+      ["c581", "\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775", 6, "\uD77E\uD77F\uD780\uD782", 5, "\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],
+      ["c641", "\uD78D\uD78E\uD78F\uD791", 6, "\uD79A\uD79C\uD79E", 5],
+      ["c6a1", "\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],
+      ["c7a1", "\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],
+      ["c8a1", "\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],
+      ["caa1", "\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],
+      ["cba1", "\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],
+      ["cca1", "\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],
+      ["cda1", "\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],
+      ["cea1", "\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],
+      ["cfa1", "\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],
+      ["d0a1", "\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],
+      ["d1a1", "\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E", 5, "\u90A3\uF914", 4, "\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],
+      ["d2a1", "\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928", 4, "\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933", 5, "\u99D1\uF939", 10, "\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A", 7, "\u5AE9\u8A25\u677B\u7D10\uF952", 5, "\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],
+      ["d3a1", "\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],
+      ["d4a1", "\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],
+      ["d5a1", "\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],
+      ["d6a1", "\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],
+      ["d7a1", "\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],
+      ["d8a1", "\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],
+      ["d9a1", "\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],
+      ["daa1", "\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],
+      ["dba1", "\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],
+      ["dca1", "\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],
+      ["dda1", "\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],
+      ["dea1", "\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],
+      ["dfa1", "\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],
+      ["e0a1", "\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],
+      ["e1a1", "\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],
+      ["e2a1", "\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],
+      ["e3a1", "\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],
+      ["e4a1", "\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],
+      ["e5a1", "\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],
+      ["e6a1", "\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],
+      ["e7a1", "\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],
+      ["e8a1", "\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],
+      ["e9a1", "\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],
+      ["eaa1", "\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],
+      ["eba1", "\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],
+      ["eca1", "\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],
+      ["eda1", "\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],
+      ["eea1", "\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],
+      ["efa1", "\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],
+      ["f0a1", "\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],
+      ["f1a1", "\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],
+      ["f2a1", "\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],
+      ["f3a1", "\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],
+      ["f4a1", "\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],
+      ["f5a1", "\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],
+      ["f6a1", "\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],
+      ["f7a1", "\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],
+      ["f8a1", "\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],
+      ["f9a1", "\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],
+      ["faa1", "\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],
+      ["fba1", "\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],
+      ["fca1", "\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],
+      ["fda1", "\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json
+var require_cp950 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],
+      ["a1a1", "\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62", 4, "\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],
+      ["a240", "\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581", 7, "\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],
+      ["a2a1", "\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10", 9, "\u2160", 9, "\u3021", 8, "\u5341\u5344\u5345\uFF21", 25, "\uFF41", 21],
+      ["a340", "\uFF57\uFF58\uFF59\uFF5A\u0391", 16, "\u03A3", 6, "\u03B1", 16, "\u03C3", 6, "\u3105", 10],
+      ["a3a1", "\u3110", 25, "\u02D9\u02C9\u02CA\u02C7\u02CB"],
+      ["a3e1", "\u20AC"],
+      ["a440", "\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],
+      ["a4a1", "\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],
+      ["a540", "\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],
+      ["a5a1", "\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],
+      ["a640", "\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],
+      ["a6a1", "\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],
+      ["a740", "\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],
+      ["a7a1", "\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],
+      ["a840", "\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],
+      ["a8a1", "\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],
+      ["a940", "\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],
+      ["a9a1", "\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],
+      ["aa40", "\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],
+      ["aaa1", "\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],
+      ["ab40", "\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],
+      ["aba1", "\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],
+      ["ac40", "\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],
+      ["aca1", "\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],
+      ["ad40", "\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],
+      ["ada1", "\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],
+      ["ae40", "\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],
+      ["aea1", "\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],
+      ["af40", "\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],
+      ["afa1", "\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],
+      ["b040", "\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],
+      ["b0a1", "\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],
+      ["b140", "\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],
+      ["b1a1", "\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],
+      ["b240", "\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],
+      ["b2a1", "\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],
+      ["b340", "\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],
+      ["b3a1", "\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],
+      ["b440", "\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],
+      ["b4a1", "\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],
+      ["b540", "\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],
+      ["b5a1", "\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],
+      ["b640", "\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],
+      ["b6a1", "\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],
+      ["b740", "\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],
+      ["b7a1", "\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],
+      ["b840", "\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],
+      ["b8a1", "\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],
+      ["b940", "\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],
+      ["b9a1", "\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],
+      ["ba40", "\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],
+      ["baa1", "\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],
+      ["bb40", "\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],
+      ["bba1", "\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],
+      ["bc40", "\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],
+      ["bca1", "\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],
+      ["bd40", "\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],
+      ["bda1", "\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],
+      ["be40", "\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],
+      ["bea1", "\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],
+      ["bf40", "\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],
+      ["bfa1", "\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],
+      ["c040", "\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],
+      ["c0a1", "\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],
+      ["c140", "\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],
+      ["c1a1", "\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],
+      ["c240", "\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],
+      ["c2a1", "\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],
+      ["c340", "\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],
+      ["c3a1", "\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],
+      ["c440", "\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],
+      ["c4a1", "\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],
+      ["c540", "\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],
+      ["c5a1", "\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],
+      ["c640", "\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],
+      ["c940", "\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],
+      ["c9a1", "\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],
+      ["ca40", "\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],
+      ["caa1", "\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],
+      ["cb40", "\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],
+      ["cba1", "\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],
+      ["cc40", "\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],
+      ["cca1", "\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],
+      ["cd40", "\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],
+      ["cda1", "\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],
+      ["ce40", "\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],
+      ["cea1", "\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],
+      ["cf40", "\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],
+      ["cfa1", "\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],
+      ["d040", "\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],
+      ["d0a1", "\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],
+      ["d140", "\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],
+      ["d1a1", "\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],
+      ["d240", "\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],
+      ["d2a1", "\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],
+      ["d340", "\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],
+      ["d3a1", "\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],
+      ["d440", "\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],
+      ["d4a1", "\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],
+      ["d540", "\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],
+      ["d5a1", "\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],
+      ["d640", "\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],
+      ["d6a1", "\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],
+      ["d740", "\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],
+      ["d7a1", "\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],
+      ["d840", "\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],
+      ["d8a1", "\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],
+      ["d940", "\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],
+      ["d9a1", "\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],
+      ["da40", "\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],
+      ["daa1", "\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],
+      ["db40", "\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],
+      ["dba1", "\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],
+      ["dc40", "\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],
+      ["dca1", "\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],
+      ["dd40", "\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],
+      ["dda1", "\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],
+      ["de40", "\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],
+      ["dea1", "\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],
+      ["df40", "\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],
+      ["dfa1", "\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],
+      ["e040", "\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],
+      ["e0a1", "\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],
+      ["e140", "\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],
+      ["e1a1", "\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],
+      ["e240", "\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],
+      ["e2a1", "\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],
+      ["e340", "\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],
+      ["e3a1", "\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],
+      ["e440", "\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],
+      ["e4a1", "\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],
+      ["e540", "\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],
+      ["e5a1", "\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],
+      ["e640", "\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],
+      ["e6a1", "\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],
+      ["e740", "\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],
+      ["e7a1", "\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],
+      ["e840", "\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],
+      ["e8a1", "\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],
+      ["e940", "\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],
+      ["e9a1", "\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],
+      ["ea40", "\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],
+      ["eaa1", "\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],
+      ["eb40", "\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],
+      ["eba1", "\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],
+      ["ec40", "\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],
+      ["eca1", "\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],
+      ["ed40", "\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],
+      ["eda1", "\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],
+      ["ee40", "\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],
+      ["eea1", "\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],
+      ["ef40", "\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],
+      ["efa1", "\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],
+      ["f040", "\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],
+      ["f0a1", "\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],
+      ["f140", "\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],
+      ["f1a1", "\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],
+      ["f240", "\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],
+      ["f2a1", "\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],
+      ["f340", "\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],
+      ["f3a1", "\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],
+      ["f440", "\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],
+      ["f4a1", "\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],
+      ["f540", "\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],
+      ["f5a1", "\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],
+      ["f640", "\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],
+      ["f6a1", "\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],
+      ["f740", "\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],
+      ["f7a1", "\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],
+      ["f840", "\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],
+      ["f8a1", "\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],
+      ["f940", "\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],
+      ["f9a1", "\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json
+var require_big5_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) {
+    module2.exports = [
+      ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],
+      ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],
+      ["87a1", "\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],
+      ["8840", "\u31C0", 4, "\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],
+      ["88a1", "\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],
+      ["8940", "\u{2A3A9}\u{21145}"],
+      ["8943", "\u650A"],
+      ["8946", "\u4E3D\u6EDD\u9D4E\u91DF"],
+      ["894c", "\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],
+      ["89a1", "\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],
+      ["89ab", "\u918C\u78B8\u915E\u80BC"],
+      ["89b0", "\u8D0B\u80F6\u{209E7}"],
+      ["89b5", "\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],
+      ["89c1", "\u6E9A\u823E\u7519"],
+      ["89c5", "\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],
+      ["8a40", "\u{27D84}\u5525"],
+      ["8a43", "\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],
+      ["8a64", "\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],
+      ["8a76", "\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],
+      ["8aa1", "\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],
+      ["8aac", "\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],
+      ["8ab2", "\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],
+      ["8abb", "\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],
+      ["8ac9", "\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],
+      ["8ace", "\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],
+      ["8adf", "\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],
+      ["8af6", "\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],
+      ["8b40", "\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],
+      ["8b55", "\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],
+      ["8ba1", "\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],
+      ["8bde", "\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],
+      ["8c40", "\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],
+      ["8ca1", "\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],
+      ["8ca7", "\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],
+      ["8cc9", "\u9868\u676B\u4276\u573D"],
+      ["8cce", "\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],
+      ["8ce6", "\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],
+      ["8d40", "\u{20B9F}"],
+      ["8d42", "\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],
+      ["8da1", "\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],
+      ["8e40", "\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],
+      ["8ea1", "\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],
+      ["8f40", "\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],
+      ["8fa1", "\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],
+      ["9040", "\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],
+      ["90a1", "\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],
+      ["9140", "\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],
+      ["91a1", "\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],
+      ["9240", "\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],
+      ["92a1", "\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],
+      ["9340", "\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],
+      ["93a1", "\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],
+      ["9440", "\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],
+      ["94a1", "\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],
+      ["9540", "\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],
+      ["95a1", "\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],
+      ["9640", "\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],
+      ["96a1", "\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],
+      ["9740", "\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],
+      ["97a1", "\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],
+      ["9840", "\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],
+      ["98a1", "\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],
+      ["9940", "\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],
+      ["99a1", "\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],
+      ["9a40", "\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],
+      ["9aa1", "\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],
+      ["9b40", "\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],
+      ["9b62", "\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],
+      ["9ba1", "\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],
+      ["9c40", "\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],
+      ["9ca1", "\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],
+      ["9d40", "\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],
+      ["9da1", "\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],
+      ["9e40", "\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],
+      ["9ea1", "\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],
+      ["9ead", "\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],
+      ["9ec5", "\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],
+      ["9ef5", "\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],
+      ["9f40", "\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],
+      ["9f4f", "\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],
+      ["9fa1", "\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],
+      ["9fae", "\u9159\u9681\u915C"],
+      ["9fb2", "\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],
+      ["9fc1", "\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],
+      ["9fc9", "\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],
+      ["9fdb", "\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],
+      ["9fe7", "\u6BFA\u8818\u7F78"],
+      ["9feb", "\u5620\u{2A64A}\u8E77\u9F53"],
+      ["9ff0", "\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],
+      ["a040", "\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],
+      ["a055", "\u{2183B}\u{26E05}"],
+      ["a058", "\u8A7E\u{2251B}"],
+      ["a05b", "\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],
+      ["a063", "\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],
+      ["a073", "\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],
+      ["a0a1", "\u5D57\u{28BC2}\u8FDA\u{28E39}"],
+      ["a0a6", "\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],
+      ["a0ae", "\u77FE"],
+      ["a0b0", "\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],
+      ["a0d4", "\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],
+      ["a0e2", "\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],
+      ["a3c0", "\u2400", 31, "\u2421"],
+      ["c6a1", "\u2460", 9, "\u2474", 9, "\u2170", 9, "\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041", 23],
+      ["c740", "\u3059", 58, "\u30A1\u30A2\u30A3\u30A4"],
+      ["c7a1", "\u30A5", 81, "\u0410", 5, "\u0401\u0416", 4],
+      ["c840", "\u041B", 26, "\u0451\u0436", 25, "\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],
+      ["c8a1", "\u9FB0\u5188\u9FB1\u{27607}"],
+      ["c8cd", "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],
+      ["c8f5", "\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],
+      ["f9fe", "\uFFED"],
+      ["fa40", "\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],
+      ["faa1", "\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],
+      ["fb40", "\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],
+      ["fba1", "\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],
+      ["fc40", "\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],
+      ["fca1", "\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],
+      ["fd40", "\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],
+      ["fda1", "\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],
+      ["fe40", "\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],
+      ["fea1", "\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js
+var require_dbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // == Japanese/ShiftJIS ====================================================
+      // All japanese encodings are based on JIS X set of standards:
+      // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF.
+      // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes. 
+      //              Has several variations in 1978, 1983, 1990 and 1997.
+      // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead.
+      // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233.
+      //              2 planes, first is superset of 0208, second - revised 0212.
+      //              Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx)
+      // Byte encodings are:
+      //  * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte
+      //               encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC.
+      //               Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI.
+      //  * EUC-JP:    Up to 3 bytes per character. Used mostly on *nixes.
+      //               0x00-0x7F       - lower part of 0201
+      //               0x8E, 0xA1-0xDF - upper part of 0201
+      //               (0xA1-0xFE)x2   - 0208 plane (94x94).
+      //               0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94).
+      //  * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon.
+      //               Used as-is in ISO2022 family.
+      //  * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII, 
+      //                0201-1976 Roman, 0208-1978, 0208-1983.
+      //  * ISO2022-JP-1: Adds esc seq for 0212-1990.
+      //  * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7.
+      //  * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2.
+      //  * ISO2022-JP-2004: Adds 0213-2004 Plane 1.
+      //
+      // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes.
+      //
+      // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html
+      "shiftjis": {
+        type: "_dbcs",
+        table: function() {
+          return require_shiftjis();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 },
+        encodeSkipVals: [{ from: 60736, to: 63808 }]
+      },
+      "csshiftjis": "shiftjis",
+      "mskanji": "shiftjis",
+      "sjis": "shiftjis",
+      "windows31j": "shiftjis",
+      "ms31j": "shiftjis",
+      "xsjis": "shiftjis",
+      "windows932": "shiftjis",
+      "ms932": "shiftjis",
+      "932": "shiftjis",
+      "cp932": "shiftjis",
+      "eucjp": {
+        type: "_dbcs",
+        table: function() {
+          return require_eucjp();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 }
+      },
+      // TODO: KDDI extension to Shift_JIS
+      // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes.
+      // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars.
+      // == Chinese/GBK ==========================================================
+      // http://en.wikipedia.org/wiki/GBK
+      // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder
+      // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936
+      "gb2312": "cp936",
+      "gb231280": "cp936",
+      "gb23121980": "cp936",
+      "csgb2312": "cp936",
+      "csiso58gb231280": "cp936",
+      "euccn": "cp936",
+      // Microsoft's CP936 is a subset and approximation of GBK.
+      "windows936": "cp936",
+      "ms936": "cp936",
+      "936": "cp936",
+      "cp936": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936();
+        }
+      },
+      // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other.
+      "gbk": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        }
+      },
+      "xgbk": "gbk",
+      "isoir58": "gbk",
+      // GB18030 is an algorithmic extension of GBK.
+      // Main source: https://www.w3.org/TR/encoding/#gbk-encoder
+      // http://icu-project.org/docs/papers/gb18030.html
+      // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml
+      // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0
+      "gb18030": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        },
+        gb18030: function() {
+          return require_gb18030_ranges();
+        },
+        encodeSkipVals: [128],
+        encodeAdd: { "\u20AC": 41699 }
+      },
+      "chinese": "gb18030",
+      // == Korean ===============================================================
+      // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same.
+      "windows949": "cp949",
+      "ms949": "cp949",
+      "949": "cp949",
+      "cp949": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp949();
+        }
+      },
+      "cseuckr": "cp949",
+      "csksc56011987": "cp949",
+      "euckr": "cp949",
+      "isoir149": "cp949",
+      "korean": "cp949",
+      "ksc56011987": "cp949",
+      "ksc56011989": "cp949",
+      "ksc5601": "cp949",
+      // == Big5/Taiwan/Hong Kong ================================================
+      // There are lots of tables for Big5 and cp950. Please see the following links for history:
+      // http://moztw.org/docs/big5/  http://www.haible.de/bruno/charsets/conversion-tables/Big5.html
+      // Variations, in roughly number of defined chars:
+      //  * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT
+      //  * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/
+      //  * Big5-2003 (Taiwan standard) almost superset of cp950.
+      //  * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers.
+      //  * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard. 
+      //    many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years.
+      //    Plus, it has 4 combining sequences.
+      //    Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299
+      //    because big5-hkscs is the only encoding to include astral characters in non-algorithmic way.
+      //    Implementations are not consistent within browsers; sometimes labeled as just big5.
+      //    MS Internet Explorer switches from big5 to big5-hkscs when a patch applied.
+      //    Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31
+      //    In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s.
+      //    Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt
+      //                   http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt
+      // 
+      // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder
+      // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong.
+      "windows950": "cp950",
+      "ms950": "cp950",
+      "950": "cp950",
+      "cp950": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950();
+        }
+      },
+      // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus.
+      "big5": "big5hkscs",
+      "big5hkscs": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950().concat(require_big5_added());
+        },
+        encodeSkipVals: [
+          // Although Encoding Standard says we should avoid encoding to HKSCS area (See Step 1 of
+          // https://encoding.spec.whatwg.org/#index-big5-pointer), we still do it to increase compatibility with ICU.
+          // But if a single unicode point can be encoded both as HKSCS and regular Big5, we prefer the latter.
+          36457,
+          36463,
+          36478,
+          36523,
+          36532,
+          36557,
+          36560,
+          36695,
+          36713,
+          36718,
+          36811,
+          36862,
+          36973,
+          36986,
+          37060,
+          37084,
+          37105,
+          37311,
+          37551,
+          37552,
+          37553,
+          37554,
+          37585,
+          37959,
+          38090,
+          38361,
+          38652,
+          39285,
+          39798,
+          39800,
+          39803,
+          39878,
+          39902,
+          39916,
+          39926,
+          40002,
+          40019,
+          40034,
+          40040,
+          40043,
+          40055,
+          40124,
+          40125,
+          40144,
+          40279,
+          40282,
+          40388,
+          40431,
+          40443,
+          40617,
+          40687,
+          40701,
+          40800,
+          40907,
+          41079,
+          41180,
+          41183,
+          36812,
+          37576,
+          38468,
+          38637,
+          // Step 2 of https://encoding.spec.whatwg.org/#index-big5-pointer: Use last pointer for U+2550, U+255E, U+2561, U+256A, U+5341, or U+5345
+          41636,
+          41637,
+          41639,
+          41638,
+          41676,
+          41678
+        ]
+      },
+      "cnbig5": "big5hkscs",
+      "csbig5": "big5hkscs",
+      "xxbig5": "big5hkscs"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js
+var require_encodings = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js"(exports2, module2) {
+    "use strict";
+    var modules = [
+      require_internal(),
+      require_utf32(),
+      require_utf16(),
+      require_utf7(),
+      require_sbcs_codec(),
+      require_sbcs_data(),
+      require_sbcs_data_generated(),
+      require_dbcs_codec(),
+      require_dbcs_data()
+    ];
+    for (i = 0; i < modules.length; i++) {
+      module2 = modules[i];
+      for (enc in module2)
+        if (Object.prototype.hasOwnProperty.call(module2, enc))
+          exports2[enc] = module2[enc];
+    }
+    var module2;
+    var enc;
+    var i;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js
+var require_streams = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = function(stream_module) {
+      var Transform = stream_module.Transform;
+      function IconvLiteEncoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.decodeStrings = false;
+        Transform.call(this, options);
+      }
+      IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteEncoderStream }
+      });
+      IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (typeof chunk != "string")
+          return done(new Error("Iconv encoding stream needs strings as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype.collect = function(cb) {
+        var chunks = [];
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          chunks.push(chunk);
+        });
+        this.on("end", function() {
+          cb(null, Buffer2.concat(chunks));
+        });
+        return this;
+      };
+      function IconvLiteDecoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.encoding = this.encoding = "utf8";
+        Transform.call(this, options);
+      }
+      IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteDecoderStream }
+      });
+      IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (!Buffer2.isBuffer(chunk) && !(chunk instanceof Uint8Array))
+          return done(new Error("Iconv decoding stream needs buffers as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype.collect = function(cb) {
+        var res = "";
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          res += chunk;
+        });
+        this.on("end", function() {
+          cb(null, res);
+        });
+        return this;
+      };
+      return {
+        IconvLiteEncoderStream,
+        IconvLiteDecoderStream
+      };
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js
+var require_lib8 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    var bomHandling = require_bom_handling();
+    var iconv = module2.exports;
+    iconv.encodings = null;
+    iconv.defaultCharUnicode = "\uFFFD";
+    iconv.defaultCharSingleByte = "?";
+    iconv.encode = function encode(str, encoding, options) {
+      str = "" + (str || "");
+      var encoder = iconv.getEncoder(encoding, options);
+      var res = encoder.write(str);
+      var trail = encoder.end();
+      return trail && trail.length > 0 ? Buffer2.concat([res, trail]) : res;
+    };
+    iconv.decode = function decode(buf, encoding, options) {
+      if (typeof buf === "string") {
+        if (!iconv.skipDecodeWarning) {
+          console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding");
+          iconv.skipDecodeWarning = true;
+        }
+        buf = Buffer2.from("" + (buf || ""), "binary");
+      }
+      var decoder2 = iconv.getDecoder(encoding, options);
+      var res = decoder2.write(buf);
+      var trail = decoder2.end();
+      return trail ? res + trail : res;
+    };
+    iconv.encodingExists = function encodingExists(enc) {
+      try {
+        iconv.getCodec(enc);
+        return true;
+      } catch (e) {
+        return false;
+      }
+    };
+    iconv.toEncoding = iconv.encode;
+    iconv.fromEncoding = iconv.decode;
+    iconv._codecDataCache = {};
+    iconv.getCodec = function getCodec(encoding) {
+      if (!iconv.encodings)
+        iconv.encodings = require_encodings();
+      var enc = iconv._canonicalizeEncoding(encoding);
+      var codecOptions = {};
+      while (true) {
+        var codec = iconv._codecDataCache[enc];
+        if (codec)
+          return codec;
+        var codecDef = iconv.encodings[enc];
+        switch (typeof codecDef) {
+          case "string":
+            enc = codecDef;
+            break;
+          case "object":
+            for (var key in codecDef)
+              codecOptions[key] = codecDef[key];
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            enc = codecDef.type;
+            break;
+          case "function":
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            codec = new codecDef(codecOptions, iconv);
+            iconv._codecDataCache[codecOptions.encodingName] = codec;
+            return codec;
+          default:
+            throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '" + enc + "')");
+        }
+      }
+    };
+    iconv._canonicalizeEncoding = function(encoding) {
+      return ("" + encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, "");
+    };
+    iconv.getEncoder = function getEncoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), encoder = new codec.encoder(options, codec);
+      if (codec.bomAware && options && options.addBOM)
+        encoder = new bomHandling.PrependBOM(encoder, options);
+      return encoder;
+    };
+    iconv.getDecoder = function getDecoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), decoder2 = new codec.decoder(options, codec);
+      if (codec.bomAware && !(options && options.stripBOM === false))
+        decoder2 = new bomHandling.StripBOM(decoder2, options);
+      return decoder2;
+    };
+    iconv.enableStreamingAPI = function enableStreamingAPI(stream_module2) {
+      if (iconv.supportsStreams)
+        return;
+      var streams = require_streams()(stream_module2);
+      iconv.IconvLiteEncoderStream = streams.IconvLiteEncoderStream;
+      iconv.IconvLiteDecoderStream = streams.IconvLiteDecoderStream;
+      iconv.encodeStream = function encodeStream(encoding, options) {
+        return new iconv.IconvLiteEncoderStream(iconv.getEncoder(encoding, options), options);
+      };
+      iconv.decodeStream = function decodeStream(encoding, options) {
+        return new iconv.IconvLiteDecoderStream(iconv.getDecoder(encoding, options), options);
+      };
+      iconv.supportsStreams = true;
+    };
+    var stream_module;
+    try {
+      stream_module = require("stream");
+    } catch (e) {
+    }
+    if (stream_module && stream_module.Transform) {
+      iconv.enableStreamingAPI(stream_module);
+    } else {
+      iconv.encodeStream = iconv.decodeStream = function() {
+        throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.");
+      };
+    }
+    if (false) {
+      console.error("iconv-lite warning: js files use non-utf8 encoding. See https://github.com/ashtuchkin/iconv-lite/wiki/Javascript-source-file-encodings for more info.");
+    }
+  }
+});
+
+// ../../../node_modules/encoding/lib/encoding.js
+var require_encoding = __commonJS({
+  "../../../node_modules/encoding/lib/encoding.js"(exports2, module2) {
+    "use strict";
+    var iconvLite = require_lib8();
+    module2.exports.convert = convert3;
+    function convert3(str, to, from) {
+      from = checkEncoding(from || "UTF-8");
+      to = checkEncoding(to || "UTF-8");
+      str = str || "";
+      var result;
+      if (from !== "UTF-8" && typeof str === "string") {
+        str = Buffer.from(str, "binary");
+      }
+      if (from === to) {
+        if (typeof str === "string") {
+          result = Buffer.from(str);
+        } else {
+          result = str;
+        }
+      } else {
+        try {
+          result = convertIconvLite(str, to, from);
+        } catch (E) {
+          console.error(E);
+          result = str;
+        }
+      }
+      if (typeof result === "string") {
+        result = Buffer.from(result, "utf-8");
+      }
+      return result;
+    }
+    function convertIconvLite(str, to, from) {
+      if (to === "UTF-8") {
+        return iconvLite.decode(str, from);
+      } else if (from === "UTF-8") {
+        return iconvLite.encode(str, to);
+      } else {
+        return iconvLite.encode(iconvLite.decode(str, from), to);
+      }
+    }
+    function checkEncoding(name) {
+      return (name || "").toString().trim().replace(/^latin[\-_]?(\d+)$/i, "ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i, "WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i, "UTF-$1").replace(/^ks_c_5601\-1987$/i, "CP949").replace(/^us[\-_]?ascii$/i, "ASCII").toUpperCase();
+    }
+  }
+});
+
+// node_modules/node-fetch/lib/index.js
+var require_lib9 = __commonJS({
+  "node_modules/node-fetch/lib/index.js"(exports2, module2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    function _interopDefault(ex) {
+      return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex;
+    }
+    var Stream = _interopDefault(require("stream"));
+    var http = _interopDefault(require("http"));
+    var Url = _interopDefault(require("url"));
+    var whatwgUrl = _interopDefault(require_public_api());
+    var https2 = _interopDefault(require("https"));
+    var zlib3 = _interopDefault(require("zlib"));
+    var Readable = Stream.Readable;
+    var BUFFER = /* @__PURE__ */ Symbol("buffer");
+    var TYPE = /* @__PURE__ */ Symbol("type");
+    var Blob2 = class _Blob {
+      constructor() {
+        this[TYPE] = "";
+        const blobParts = arguments[0];
+        const options = arguments[1];
+        const buffers = [];
+        let size = 0;
+        if (blobParts) {
+          const a = blobParts;
+          const length = Number(a.length);
+          for (let i = 0; i < length; i++) {
+            const element = a[i];
+            let buffer;
+            if (element instanceof Buffer) {
+              buffer = element;
+            } else if (ArrayBuffer.isView(element)) {
+              buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);
+            } else if (element instanceof ArrayBuffer) {
+              buffer = Buffer.from(element);
+            } else if (element instanceof _Blob) {
+              buffer = element[BUFFER];
+            } else {
+              buffer = Buffer.from(typeof element === "string" ? element : String(element));
+            }
+            size += buffer.length;
+            buffers.push(buffer);
+          }
+        }
+        this[BUFFER] = Buffer.concat(buffers);
+        let type = options && options.type !== void 0 && String(options.type).toLowerCase();
+        if (type && !/[^\u0020-\u007E]/.test(type)) {
+          this[TYPE] = type;
+        }
+      }
+      get size() {
+        return this[BUFFER].length;
+      }
+      get type() {
+        return this[TYPE];
+      }
+      text() {
+        return Promise.resolve(this[BUFFER].toString());
+      }
+      arrayBuffer() {
+        const buf = this[BUFFER];
+        const ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        return Promise.resolve(ab);
+      }
+      stream() {
+        const readable = new Readable();
+        readable._read = function() {
+        };
+        readable.push(this[BUFFER]);
+        readable.push(null);
+        return readable;
+      }
+      toString() {
+        return "[object Blob]";
+      }
+      slice() {
+        const size = this.size;
+        const start = arguments[0];
+        const end = arguments[1];
+        let relativeStart, relativeEnd;
+        if (start === void 0) {
+          relativeStart = 0;
+        } else if (start < 0) {
+          relativeStart = Math.max(size + start, 0);
+        } else {
+          relativeStart = Math.min(start, size);
+        }
+        if (end === void 0) {
+          relativeEnd = size;
+        } else if (end < 0) {
+          relativeEnd = Math.max(size + end, 0);
+        } else {
+          relativeEnd = Math.min(end, size);
+        }
+        const span = Math.max(relativeEnd - relativeStart, 0);
+        const buffer = this[BUFFER];
+        const slicedBuffer = buffer.slice(relativeStart, relativeStart + span);
+        const blob = new _Blob([], { type: arguments[2] });
+        blob[BUFFER] = slicedBuffer;
+        return blob;
+      }
+    };
+    Object.defineProperties(Blob2.prototype, {
+      size: { enumerable: true },
+      type: { enumerable: true },
+      slice: { enumerable: true }
+    });
+    Object.defineProperty(Blob2.prototype, Symbol.toStringTag, {
+      value: "Blob",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function FetchError(message, type, systemError) {
+      Error.call(this, message);
+      this.message = message;
+      this.type = type;
+      if (systemError) {
+        this.code = this.errno = systemError.code;
+      }
+      Error.captureStackTrace(this, this.constructor);
+    }
+    FetchError.prototype = Object.create(Error.prototype);
+    FetchError.prototype.constructor = FetchError;
+    FetchError.prototype.name = "FetchError";
+    var convert3;
+    try {
+      convert3 = require_encoding().convert;
+    } catch (e) {
+    }
+    var INTERNALS = /* @__PURE__ */ Symbol("Body internals");
+    var PassThrough = Stream.PassThrough;
+    function Body(body) {
+      var _this = this;
+      var _ref = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, _ref$size = _ref.size;
+      let size = _ref$size === void 0 ? 0 : _ref$size;
+      var _ref$timeout = _ref.timeout;
+      let timeout = _ref$timeout === void 0 ? 0 : _ref$timeout;
+      if (body == null) {
+        body = null;
+      } else if (isURLSearchParams(body)) {
+        body = Buffer.from(body.toString());
+      } else if (isBlob2(body)) ;
+      else if (Buffer.isBuffer(body)) ;
+      else if (Object.prototype.toString.call(body) === "[object ArrayBuffer]") {
+        body = Buffer.from(body);
+      } else if (ArrayBuffer.isView(body)) {
+        body = Buffer.from(body.buffer, body.byteOffset, body.byteLength);
+      } else if (body instanceof Stream) ;
+      else {
+        body = Buffer.from(String(body));
+      }
+      this[INTERNALS] = {
+        body,
+        disturbed: false,
+        error: null
+      };
+      this.size = size;
+      this.timeout = timeout;
+      if (body instanceof Stream) {
+        body.on("error", function(err) {
+          const error = err.name === "AbortError" ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, "system", err);
+          _this[INTERNALS].error = error;
+        });
+      }
+    }
+    Body.prototype = {
+      get body() {
+        return this[INTERNALS].body;
+      },
+      get bodyUsed() {
+        return this[INTERNALS].disturbed;
+      },
+      /**
+       * Decode response as ArrayBuffer
+       *
+       * @return  Promise
+       */
+      arrayBuffer() {
+        return consumeBody.call(this).then(function(buf) {
+          return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        });
+      },
+      /**
+       * Return raw response as Blob
+       *
+       * @return Promise
+       */
+      blob() {
+        let ct = this.headers && this.headers.get("content-type") || "";
+        return consumeBody.call(this).then(function(buf) {
+          return Object.assign(
+            // Prevent copying
+            new Blob2([], {
+              type: ct.toLowerCase()
+            }),
+            {
+              [BUFFER]: buf
+            }
+          );
+        });
+      },
+      /**
+       * Decode response as json
+       *
+       * @return  Promise
+       */
+      json() {
+        var _this2 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          try {
+            return JSON.parse(buffer.toString());
+          } catch (err) {
+            return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, "invalid-json"));
+          }
+        });
+      },
+      /**
+       * Decode response as text
+       *
+       * @return  Promise
+       */
+      text() {
+        return consumeBody.call(this).then(function(buffer) {
+          return buffer.toString();
+        });
+      },
+      /**
+       * Decode response as buffer (non-spec api)
+       *
+       * @return  Promise
+       */
+      buffer() {
+        return consumeBody.call(this);
+      },
+      /**
+       * Decode response as text, while automatically detecting the encoding and
+       * trying to decode to UTF-8 (non-spec api)
+       *
+       * @return  Promise
+       */
+      textConverted() {
+        var _this3 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          return convertBody(buffer, _this3.headers);
+        });
+      }
+    };
+    Object.defineProperties(Body.prototype, {
+      body: { enumerable: true },
+      bodyUsed: { enumerable: true },
+      arrayBuffer: { enumerable: true },
+      blob: { enumerable: true },
+      json: { enumerable: true },
+      text: { enumerable: true }
+    });
+    Body.mixIn = function(proto) {
+      for (const name of Object.getOwnPropertyNames(Body.prototype)) {
+        if (!(name in proto)) {
+          const desc = Object.getOwnPropertyDescriptor(Body.prototype, name);
+          Object.defineProperty(proto, name, desc);
+        }
+      }
+    };
+    function consumeBody() {
+      var _this4 = this;
+      if (this[INTERNALS].disturbed) {
+        return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));
+      }
+      this[INTERNALS].disturbed = true;
+      if (this[INTERNALS].error) {
+        return Body.Promise.reject(this[INTERNALS].error);
+      }
+      let body = this.body;
+      if (body === null) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      if (isBlob2(body)) {
+        body = body.stream();
+      }
+      if (Buffer.isBuffer(body)) {
+        return Body.Promise.resolve(body);
+      }
+      if (!(body instanceof Stream)) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      let accum = [];
+      let accumBytes = 0;
+      let abort = false;
+      return new Body.Promise(function(resolve6, reject) {
+        let resTimeout;
+        if (_this4.timeout) {
+          resTimeout = setTimeout(function() {
+            abort = true;
+            reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, "body-timeout"));
+          }, _this4.timeout);
+        }
+        body.on("error", function(err) {
+          if (err.name === "AbortError") {
+            abort = true;
+            reject(err);
+          } else {
+            reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+        body.on("data", function(chunk) {
+          if (abort || chunk === null) {
+            return;
+          }
+          if (_this4.size && accumBytes + chunk.length > _this4.size) {
+            abort = true;
+            reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, "max-size"));
+            return;
+          }
+          accumBytes += chunk.length;
+          accum.push(chunk);
+        });
+        body.on("end", function() {
+          if (abort) {
+            return;
+          }
+          clearTimeout(resTimeout);
+          try {
+            resolve6(Buffer.concat(accum, accumBytes));
+          } catch (err) {
+            reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+      });
+    }
+    function convertBody(buffer, headers) {
+      if (typeof convert3 !== "function") {
+        throw new Error("The package `encoding` must be installed to use the textConverted() function");
+      }
+      const ct = headers.get("content-type");
+      let charset = "utf-8";
+      let res, str;
+      if (ct) {
+        res = /charset=([^;]*)/i.exec(ct);
+      }
+      str = buffer.slice(0, 1024).toString();
+      if (!res && str) {
+        res = / 0 && arguments[0] !== void 0 ? arguments[0] : void 0;
+        this[MAP] = /* @__PURE__ */ Object.create(null);
+        if (init instanceof _Headers) {
+          const rawHeaders = init.raw();
+          const headerNames = Object.keys(rawHeaders);
+          for (const headerName of headerNames) {
+            for (const value of rawHeaders[headerName]) {
+              this.append(headerName, value);
+            }
+          }
+          return;
+        }
+        if (init == null) ;
+        else if (typeof init === "object") {
+          const method = init[Symbol.iterator];
+          if (method != null) {
+            if (typeof method !== "function") {
+              throw new TypeError("Header pairs must be iterable");
+            }
+            const pairs = [];
+            for (const pair of init) {
+              if (typeof pair !== "object" || typeof pair[Symbol.iterator] !== "function") {
+                throw new TypeError("Each header pair must be iterable");
+              }
+              pairs.push(Array.from(pair));
+            }
+            for (const pair of pairs) {
+              if (pair.length !== 2) {
+                throw new TypeError("Each header pair must be a name/value tuple");
+              }
+              this.append(pair[0], pair[1]);
+            }
+          } else {
+            for (const key of Object.keys(init)) {
+              const value = init[key];
+              this.append(key, value);
+            }
+          }
+        } else {
+          throw new TypeError("Provided initializer must be an object");
+        }
+      }
+      /**
+       * Return combined header value given name
+       *
+       * @param   String  name  Header name
+       * @return  Mixed
+       */
+      get(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key === void 0) {
+          return null;
+        }
+        return this[MAP][key].join(", ");
+      }
+      /**
+       * Iterate over all headers
+       *
+       * @param   Function  callback  Executed for each item with parameters (value, name, thisArg)
+       * @param   Boolean   thisArg   `this` context for callback function
+       * @return  Void
+       */
+      forEach(callback) {
+        let thisArg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : void 0;
+        let pairs = getHeaders(this);
+        let i = 0;
+        while (i < pairs.length) {
+          var _pairs$i = pairs[i];
+          const name = _pairs$i[0], value = _pairs$i[1];
+          callback.call(thisArg, value, name, this);
+          pairs = getHeaders(this);
+          i++;
+        }
+      }
+      /**
+       * Overwrite header values given name
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      set(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        this[MAP][key !== void 0 ? key : name] = [value];
+      }
+      /**
+       * Append a value onto existing header
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      append(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          this[MAP][key].push(value);
+        } else {
+          this[MAP][name] = [value];
+        }
+      }
+      /**
+       * Check for header name existence
+       *
+       * @param   String   name  Header name
+       * @return  Boolean
+       */
+      has(name) {
+        name = `${name}`;
+        validateName(name);
+        return find(this[MAP], name) !== void 0;
+      }
+      /**
+       * Delete all header values given name
+       *
+       * @param   String  name  Header name
+       * @return  Void
+       */
+      delete(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          delete this[MAP][key];
+        }
+      }
+      /**
+       * Return raw headers (non-spec api)
+       *
+       * @return  Object
+       */
+      raw() {
+        return this[MAP];
+      }
+      /**
+       * Get an iterator on keys.
+       *
+       * @return  Iterator
+       */
+      keys() {
+        return createHeadersIterator(this, "key");
+      }
+      /**
+       * Get an iterator on values.
+       *
+       * @return  Iterator
+       */
+      values() {
+        return createHeadersIterator(this, "value");
+      }
+      /**
+       * Get an iterator on entries.
+       *
+       * This is the default iterator of the Headers object.
+       *
+       * @return  Iterator
+       */
+      [Symbol.iterator]() {
+        return createHeadersIterator(this, "key+value");
+      }
+    };
+    Headers2.prototype.entries = Headers2.prototype[Symbol.iterator];
+    Object.defineProperty(Headers2.prototype, Symbol.toStringTag, {
+      value: "Headers",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Headers2.prototype, {
+      get: { enumerable: true },
+      forEach: { enumerable: true },
+      set: { enumerable: true },
+      append: { enumerable: true },
+      has: { enumerable: true },
+      delete: { enumerable: true },
+      keys: { enumerable: true },
+      values: { enumerable: true },
+      entries: { enumerable: true }
+    });
+    function getHeaders(headers) {
+      let kind = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "key+value";
+      const keys = Object.keys(headers[MAP]).sort();
+      return keys.map(kind === "key" ? function(k) {
+        return k.toLowerCase();
+      } : kind === "value" ? function(k) {
+        return headers[MAP][k].join(", ");
+      } : function(k) {
+        return [k.toLowerCase(), headers[MAP][k].join(", ")];
+      });
+    }
+    var INTERNAL = /* @__PURE__ */ Symbol("internal");
+    function createHeadersIterator(target, kind) {
+      const iterator = Object.create(HeadersIteratorPrototype);
+      iterator[INTERNAL] = {
+        target,
+        kind,
+        index: 0
+      };
+      return iterator;
+    }
+    var HeadersIteratorPrototype = Object.setPrototypeOf({
+      next() {
+        if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {
+          throw new TypeError("Value of `this` is not a HeadersIterator");
+        }
+        var _INTERNAL = this[INTERNAL];
+        const target = _INTERNAL.target, kind = _INTERNAL.kind, index = _INTERNAL.index;
+        const values = getHeaders(target, kind);
+        const len = values.length;
+        if (index >= len) {
+          return {
+            value: void 0,
+            done: true
+          };
+        }
+        this[INTERNAL].index = index + 1;
+        return {
+          value: values[index],
+          done: false
+        };
+      }
+    }, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));
+    Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {
+      value: "HeadersIterator",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function exportNodeCompatibleHeaders(headers) {
+      const obj = Object.assign({ __proto__: null }, headers[MAP]);
+      const hostHeaderKey = find(headers[MAP], "Host");
+      if (hostHeaderKey !== void 0) {
+        obj[hostHeaderKey] = obj[hostHeaderKey][0];
+      }
+      return obj;
+    }
+    function createHeadersLenient(obj) {
+      const headers = new Headers2();
+      for (const name of Object.keys(obj)) {
+        if (invalidTokenRegex.test(name)) {
+          continue;
+        }
+        if (Array.isArray(obj[name])) {
+          for (const val2 of obj[name]) {
+            if (invalidHeaderCharRegex.test(val2)) {
+              continue;
+            }
+            if (headers[MAP][name] === void 0) {
+              headers[MAP][name] = [val2];
+            } else {
+              headers[MAP][name].push(val2);
+            }
+          }
+        } else if (!invalidHeaderCharRegex.test(obj[name])) {
+          headers[MAP][name] = [obj[name]];
+        }
+      }
+      return headers;
+    }
+    var INTERNALS$1 = /* @__PURE__ */ Symbol("Response internals");
+    var STATUS_CODES = http.STATUS_CODES;
+    var Response = class _Response {
+      constructor() {
+        let body = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
+        let opts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        Body.call(this, body, opts);
+        const status = opts.status || 200;
+        const headers = new Headers2(opts.headers);
+        if (body != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(body);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        this[INTERNALS$1] = {
+          url: opts.url,
+          status,
+          statusText: opts.statusText || STATUS_CODES[status],
+          headers,
+          counter: opts.counter
+        };
+      }
+      get url() {
+        return this[INTERNALS$1].url || "";
+      }
+      get status() {
+        return this[INTERNALS$1].status;
+      }
+      /**
+       * Convenience property representing if the request ended normally
+       */
+      get ok() {
+        return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;
+      }
+      get redirected() {
+        return this[INTERNALS$1].counter > 0;
+      }
+      get statusText() {
+        return this[INTERNALS$1].statusText;
+      }
+      get headers() {
+        return this[INTERNALS$1].headers;
+      }
+      /**
+       * Clone this response
+       *
+       * @return  Response
+       */
+      clone() {
+        return new _Response(clone(this), {
+          url: this.url,
+          status: this.status,
+          statusText: this.statusText,
+          headers: this.headers,
+          ok: this.ok,
+          redirected: this.redirected
+        });
+      }
+    };
+    Body.mixIn(Response.prototype);
+    Object.defineProperties(Response.prototype, {
+      url: { enumerable: true },
+      status: { enumerable: true },
+      ok: { enumerable: true },
+      redirected: { enumerable: true },
+      statusText: { enumerable: true },
+      headers: { enumerable: true },
+      clone: { enumerable: true }
+    });
+    Object.defineProperty(Response.prototype, Symbol.toStringTag, {
+      value: "Response",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    var INTERNALS$2 = /* @__PURE__ */ Symbol("Request internals");
+    var URL3 = Url.URL || whatwgUrl.URL;
+    var parse_url = Url.parse;
+    var format_url = Url.format;
+    function parseURL(urlStr) {
+      if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) {
+        urlStr = new URL3(urlStr).toString();
+      }
+      return parse_url(urlStr);
+    }
+    var streamDestructionSupported = "destroy" in Stream.Readable.prototype;
+    function isRequest(input) {
+      return typeof input === "object" && typeof input[INTERNALS$2] === "object";
+    }
+    function isAbortSignal(signal) {
+      const proto = signal && typeof signal === "object" && Object.getPrototypeOf(signal);
+      return !!(proto && proto.constructor.name === "AbortSignal");
+    }
+    var Request2 = class _Request {
+      constructor(input) {
+        let init = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        let parsedURL;
+        if (!isRequest(input)) {
+          if (input && input.href) {
+            parsedURL = parseURL(input.href);
+          } else {
+            parsedURL = parseURL(`${input}`);
+          }
+          input = {};
+        } else {
+          parsedURL = parseURL(input.url);
+        }
+        let method = init.method || input.method || "GET";
+        method = method.toUpperCase();
+        if ((init.body != null || isRequest(input) && input.body !== null) && (method === "GET" || method === "HEAD")) {
+          throw new TypeError("Request with GET/HEAD method cannot have body");
+        }
+        let inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;
+        Body.call(this, inputBody, {
+          timeout: init.timeout || input.timeout || 0,
+          size: init.size || input.size || 0
+        });
+        const headers = new Headers2(init.headers || input.headers || {});
+        if (inputBody != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(inputBody);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        let signal = isRequest(input) ? input.signal : null;
+        if ("signal" in init) signal = init.signal;
+        if (signal != null && !isAbortSignal(signal)) {
+          throw new TypeError("Expected signal to be an instanceof AbortSignal");
+        }
+        this[INTERNALS$2] = {
+          method,
+          redirect: init.redirect || input.redirect || "follow",
+          headers,
+          parsedURL,
+          signal
+        };
+        this.follow = init.follow !== void 0 ? init.follow : input.follow !== void 0 ? input.follow : 20;
+        this.compress = init.compress !== void 0 ? init.compress : input.compress !== void 0 ? input.compress : true;
+        this.counter = init.counter || input.counter || 0;
+        this.agent = init.agent || input.agent;
+      }
+      get method() {
+        return this[INTERNALS$2].method;
+      }
+      get url() {
+        return format_url(this[INTERNALS$2].parsedURL);
+      }
+      get headers() {
+        return this[INTERNALS$2].headers;
+      }
+      get redirect() {
+        return this[INTERNALS$2].redirect;
+      }
+      get signal() {
+        return this[INTERNALS$2].signal;
+      }
+      /**
+       * Clone this request
+       *
+       * @return  Request
+       */
+      clone() {
+        return new _Request(this);
+      }
+    };
+    Body.mixIn(Request2.prototype);
+    Object.defineProperty(Request2.prototype, Symbol.toStringTag, {
+      value: "Request",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Request2.prototype, {
+      method: { enumerable: true },
+      url: { enumerable: true },
+      headers: { enumerable: true },
+      redirect: { enumerable: true },
+      clone: { enumerable: true },
+      signal: { enumerable: true }
+    });
+    function getNodeRequestOptions(request2) {
+      const parsedURL = request2[INTERNALS$2].parsedURL;
+      const headers = new Headers2(request2[INTERNALS$2].headers);
+      if (!headers.has("Accept")) {
+        headers.set("Accept", "*/*");
+      }
+      if (!parsedURL.protocol || !parsedURL.hostname) {
+        throw new TypeError("Only absolute URLs are supported");
+      }
+      if (!/^https?:$/.test(parsedURL.protocol)) {
+        throw new TypeError("Only HTTP(S) protocols are supported");
+      }
+      if (request2.signal && request2.body instanceof Stream.Readable && !streamDestructionSupported) {
+        throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");
+      }
+      let contentLengthValue = null;
+      if (request2.body == null && /^(POST|PUT)$/i.test(request2.method)) {
+        contentLengthValue = "0";
+      }
+      if (request2.body != null) {
+        const totalBytes = getTotalBytes(request2);
+        if (typeof totalBytes === "number") {
+          contentLengthValue = String(totalBytes);
+        }
+      }
+      if (contentLengthValue) {
+        headers.set("Content-Length", contentLengthValue);
+      }
+      if (!headers.has("User-Agent")) {
+        headers.set("User-Agent", "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)");
+      }
+      if (request2.compress && !headers.has("Accept-Encoding")) {
+        headers.set("Accept-Encoding", "gzip,deflate");
+      }
+      let agent = request2.agent;
+      if (typeof agent === "function") {
+        agent = agent(parsedURL);
+      }
+      return Object.assign({}, parsedURL, {
+        method: request2.method,
+        headers: exportNodeCompatibleHeaders(headers),
+        agent
+      });
+    }
+    function AbortError(message) {
+      Error.call(this, message);
+      this.type = "aborted";
+      this.message = message;
+      Error.captureStackTrace(this, this.constructor);
+    }
+    AbortError.prototype = Object.create(Error.prototype);
+    AbortError.prototype.constructor = AbortError;
+    AbortError.prototype.name = "AbortError";
+    var URL$1 = Url.URL || whatwgUrl.URL;
+    var PassThrough$1 = Stream.PassThrough;
+    var isDomainOrSubdomain = function isDomainOrSubdomain2(destination, original) {
+      const orig = new URL$1(original).hostname;
+      const dest = new URL$1(destination).hostname;
+      return orig === dest || orig[orig.length - dest.length - 1] === "." && orig.endsWith(dest);
+    };
+    var isSameProtocol = function isSameProtocol2(destination, original) {
+      const orig = new URL$1(original).protocol;
+      const dest = new URL$1(destination).protocol;
+      return orig === dest;
+    };
+    function fetch3(url2, opts) {
+      if (!fetch3.Promise) {
+        throw new Error("native promise missing, set fetch.Promise to your favorite alternative");
+      }
+      Body.Promise = fetch3.Promise;
+      return new fetch3.Promise(function(resolve6, reject) {
+        const request2 = new Request2(url2, opts);
+        const options = getNodeRequestOptions(request2);
+        const send = (options.protocol === "https:" ? https2 : http).request;
+        const signal = request2.signal;
+        let response = null;
+        const abort = function abort2() {
+          let error = new AbortError("The user aborted a request.");
+          reject(error);
+          if (request2.body && request2.body instanceof Stream.Readable) {
+            destroyStream(request2.body, error);
+          }
+          if (!response || !response.body) return;
+          response.body.emit("error", error);
+        };
+        if (signal && signal.aborted) {
+          abort();
+          return;
+        }
+        const abortAndFinalize = function abortAndFinalize2() {
+          abort();
+          finalize();
+        };
+        const req = send(options);
+        let reqTimeout;
+        if (signal) {
+          signal.addEventListener("abort", abortAndFinalize);
+        }
+        function finalize() {
+          req.abort();
+          if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          clearTimeout(reqTimeout);
+        }
+        if (request2.timeout) {
+          req.once("socket", function(socket) {
+            reqTimeout = setTimeout(function() {
+              reject(new FetchError(`network timeout at: ${request2.url}`, "request-timeout"));
+              finalize();
+            }, request2.timeout);
+          });
+        }
+        req.on("error", function(err) {
+          reject(new FetchError(`request to ${request2.url} failed, reason: ${err.message}`, "system", err));
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+          finalize();
+        });
+        fixResponseChunkedTransferBadEnding(req, function(err) {
+          if (signal && signal.aborted) {
+            return;
+          }
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+        });
+        if (parseInt(process.version.substring(1)) < 14) {
+          req.on("socket", function(s) {
+            s.addListener("close", function(hadError) {
+              const hasDataListener = s.listenerCount("data") > 0;
+              if (response && hasDataListener && !hadError && !(signal && signal.aborted)) {
+                const err = new Error("Premature close");
+                err.code = "ERR_STREAM_PREMATURE_CLOSE";
+                response.body.emit("error", err);
+              }
+            });
+          });
+        }
+        req.on("response", function(res) {
+          clearTimeout(reqTimeout);
+          const headers = createHeadersLenient(res.headers);
+          if (fetch3.isRedirect(res.statusCode)) {
+            const location = headers.get("Location");
+            let locationURL = null;
+            try {
+              locationURL = location === null ? null : new URL$1(location, request2.url).toString();
+            } catch (err) {
+              if (request2.redirect !== "manual") {
+                reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, "invalid-redirect"));
+                finalize();
+                return;
+              }
+            }
+            switch (request2.redirect) {
+              case "error":
+                reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request2.url}`, "no-redirect"));
+                finalize();
+                return;
+              case "manual":
+                if (locationURL !== null) {
+                  try {
+                    headers.set("Location", locationURL);
+                  } catch (err) {
+                    reject(err);
+                  }
+                }
+                break;
+              case "follow":
+                if (locationURL === null) {
+                  break;
+                }
+                if (request2.counter >= request2.follow) {
+                  reject(new FetchError(`maximum redirect reached at: ${request2.url}`, "max-redirect"));
+                  finalize();
+                  return;
+                }
+                const requestOpts = {
+                  headers: new Headers2(request2.headers),
+                  follow: request2.follow,
+                  counter: request2.counter + 1,
+                  agent: request2.agent,
+                  compress: request2.compress,
+                  method: request2.method,
+                  body: request2.body,
+                  signal: request2.signal,
+                  timeout: request2.timeout,
+                  size: request2.size
+                };
+                if (!isDomainOrSubdomain(request2.url, locationURL) || !isSameProtocol(request2.url, locationURL)) {
+                  for (const name of ["authorization", "www-authenticate", "cookie", "cookie2"]) {
+                    requestOpts.headers.delete(name);
+                  }
+                }
+                if (res.statusCode !== 303 && request2.body && getTotalBytes(request2) === null) {
+                  reject(new FetchError("Cannot follow redirect with body being a readable stream", "unsupported-redirect"));
+                  finalize();
+                  return;
+                }
+                if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request2.method === "POST") {
+                  requestOpts.method = "GET";
+                  requestOpts.body = void 0;
+                  requestOpts.headers.delete("content-length");
+                }
+                resolve6(fetch3(new Request2(locationURL, requestOpts)));
+                finalize();
+                return;
+            }
+          }
+          res.once("end", function() {
+            if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          });
+          let body = res.pipe(new PassThrough$1());
+          const response_options = {
+            url: request2.url,
+            status: res.statusCode,
+            statusText: res.statusMessage,
+            headers,
+            size: request2.size,
+            timeout: request2.timeout,
+            counter: request2.counter
+          };
+          const codings = headers.get("Content-Encoding");
+          if (!request2.compress || request2.method === "HEAD" || codings === null || res.statusCode === 204 || res.statusCode === 304) {
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          const zlibOptions = {
+            flush: zlib3.Z_SYNC_FLUSH,
+            finishFlush: zlib3.Z_SYNC_FLUSH
+          };
+          if (codings == "gzip" || codings == "x-gzip") {
+            body = body.pipe(zlib3.createGunzip(zlibOptions));
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          if (codings == "deflate" || codings == "x-deflate") {
+            const raw = res.pipe(new PassThrough$1());
+            raw.once("data", function(chunk) {
+              if ((chunk[0] & 15) === 8) {
+                body = body.pipe(zlib3.createInflate());
+              } else {
+                body = body.pipe(zlib3.createInflateRaw());
+              }
+              response = new Response(body, response_options);
+              resolve6(response);
+            });
+            raw.on("end", function() {
+              if (!response) {
+                response = new Response(body, response_options);
+                resolve6(response);
+              }
+            });
+            return;
+          }
+          if (codings == "br" && typeof zlib3.createBrotliDecompress === "function") {
+            body = body.pipe(zlib3.createBrotliDecompress());
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          response = new Response(body, response_options);
+          resolve6(response);
+        });
+        writeToStream(req, request2);
+      });
+    }
+    function fixResponseChunkedTransferBadEnding(request2, errorCallback) {
+      let socket;
+      request2.on("socket", function(s) {
+        socket = s;
+      });
+      request2.on("response", function(response) {
+        const headers = response.headers;
+        if (headers["transfer-encoding"] === "chunked" && !headers["content-length"]) {
+          response.once("close", function(hadError) {
+            const hasDataListener = socket && socket.listenerCount("data") > 0;
+            if (hasDataListener && !hadError) {
+              const err = new Error("Premature close");
+              err.code = "ERR_STREAM_PREMATURE_CLOSE";
+              errorCallback(err);
+            }
+          });
+        }
+      });
+    }
+    function destroyStream(stream, err) {
+      if (stream.destroy) {
+        stream.destroy(err);
+      } else {
+        stream.emit("error", err);
+        stream.end();
+      }
+    }
+    fetch3.isRedirect = function(code) {
+      return code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
+    };
+    fetch3.Promise = global.Promise;
+    module2.exports = exports2 = fetch3;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.default = exports2;
+    exports2.Headers = Headers2;
+    exports2.Request = Request2;
+    exports2.Response = Response;
+    exports2.FetchError = FetchError;
+    exports2.AbortError = AbortError;
+  }
+});
+
+// lib/assertions/providers/lambda-handler/index.ts
+var index_exports = {};
+__export(index_exports, {
+  handler: () => handler,
+  isComplete: () => isComplete,
+  onTimeout: () => onTimeout
+});
+module.exports = __toCommonJS(index_exports);
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var import_helpers_internal8 = __toESM(require_helpers_internal());
+
+// lib/assertions/providers/lambda-handler/base.ts
+var https = __toESM(require("https"));
+var url = __toESM(require("url"));
+var import_client_sfn = __toESM(require_dist_cjs53());
+var CustomResourceHandler = class {
+  constructor(event, context) {
+    this.event = event;
+    this.context = context;
+    this.timeout = setTimeout(async () => {
+      await this.respond({
+        status: "FAILED",
+        reason: "Lambda Function Timeout",
+        data: this.context.logStreamName
+      });
+      this.timedOut = true;
+    }, context.getRemainingTimeInMillis() - 1200);
+    this.event = event;
+    this.physicalResourceId = extractPhysicalResourceId(event);
+  }
+  event;
+  context;
+  physicalResourceId;
+  timeout;
+  timedOut = false;
+  /**
+   * Handles executing the custom resource event. If `stateMachineArn` is present
+   * in the props then trigger the waiter statemachine
+   */
+  async handle() {
+    try {
+      if ("stateMachineArn" in this.event.ResourceProperties) {
+        const req = {
+          stateMachineArn: this.event.ResourceProperties.stateMachineArn,
+          name: this.event.RequestId,
+          input: JSON.stringify(this.event)
+        };
+        await this.startExecution(req);
+        return;
+      } else {
+        const response = await this.processEvent(this.event.ResourceProperties);
+        return response;
+      }
+    } catch (e) {
+      console.log(e);
+      throw e;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Handle async requests from the waiter state machine
+   */
+  async handleIsComplete() {
+    try {
+      const result = await this.processEvent(this.event.ResourceProperties);
+      return result;
+    } catch (e) {
+      console.log(e);
+      return;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Start a step function state machine which will wait for the request
+   * to be successful.
+   */
+  async startExecution(req) {
+    try {
+      const sfn = new import_client_sfn.SFN({});
+      await sfn.startExecution(req);
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  respond(response) {
+    if (this.timedOut) {
+      return;
+    }
+    const cfResponse = {
+      Status: response.status,
+      Reason: response.reason,
+      PhysicalResourceId: this.physicalResourceId,
+      StackId: this.event.StackId,
+      RequestId: this.event.RequestId,
+      LogicalResourceId: this.event.LogicalResourceId,
+      NoEcho: false,
+      Data: response.data
+    };
+    const responseBody = JSON.stringify(cfResponse);
+    console.log("Responding to CloudFormation", responseBody);
+    const parsedUrl = url.parse(this.event.ResponseURL);
+    const requestOptions = {
+      hostname: parsedUrl.hostname,
+      path: parsedUrl.path,
+      method: "PUT",
+      headers: {
+        "content-type": "",
+        "content-length": Buffer.byteLength(responseBody, "utf8")
+      }
+    };
+    return new Promise((resolve6, reject) => {
+      try {
+        const request2 = https.request(requestOptions, resolve6);
+        request2.on("error", reject);
+        request2.write(responseBody);
+        request2.end();
+      } catch (e) {
+        reject(e);
+      } finally {
+        clearTimeout(this.timeout);
+      }
+    });
+  }
+};
+function extractPhysicalResourceId(event) {
+  switch (event.RequestType) {
+    case "Create":
+      return event.LogicalResourceId;
+    case "Update":
+    case "Delete":
+      return event.PhysicalResourceId;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var AssertionHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    let actual = decodeCall(request2.actual);
+    const expected = decodeCall(request2.expected);
+    let result;
+    const matcher = new MatchCreator(expected).getMatcher();
+    console.log(`Testing equality between ${JSON.stringify(request2.actual)} and ${JSON.stringify(request2.expected)}`);
+    const matchResult = matcher.test(actual);
+    matchResult.finished();
+    if (matchResult.hasFailed()) {
+      result = {
+        failed: true,
+        assertion: JSON.stringify({
+          status: "fail",
+          message: matchResult.renderMismatch()
+        })
+      };
+      if (request2.failDeployment) {
+        throw new Error(result.assertion);
+      }
+    } else {
+      result = {
+        assertion: JSON.stringify({
+          status: "success"
+        })
+      };
+    }
+    return result;
+  }
+};
+var MatchCreator = class {
+  parsedObj;
+  constructor(obj) {
+    this.parsedObj = {
+      matcher: obj
+    };
+  }
+  /**
+   * Return a Matcher that can be tested against the actual results.
+   * This will convert the encoded matchers into their corresponding
+   * assertions matcher.
+   *
+   * For example:
+   *
+   * ExpectedResult.objectLike({
+   *   Messages: [{
+   *     Body: Match.objectLike({
+   *       Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *       Payload: Match.serializedJson({ key: 'value' }),
+   *     }),
+   *   }],
+   * });
+   *
+   * Will be encoded as:
+   * {
+   *   $ObjectLike: {
+   *     Messages: [{
+   *       Body: {
+   *         $ObjectLike: {
+   *           Elements: {
+   *             $ArrayWith: [{ Asdf: 3 }],
+   *           },
+   *           Payload: {
+   *             $SerializedJson: { key: 'value' }
+   *           }
+   *         },
+   *       },
+   *     }],
+   *   },
+   * }
+   *
+   * Which can then be parsed by this function. For each key (recursively)
+   * the parser will check if the value has one of the encoded matchers as a key
+   * and if so, it will set the value as the Matcher. So,
+   *
+   * {
+   *   Body: {
+   *     $ObjectLike: {
+   *       Elements: {
+   *         $ArrayWith: [{ Asdf: 3 }],
+   *       },
+   *       Payload: {
+   *         $SerializedJson: { key: 'value' }
+   *       }
+   *     },
+   *   },
+   * }
+   *
+   * Will be converted to
+   * {
+   *   Body: Match.objectLike({
+   *     Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *     Payload: Match.serializedJson({ key: 'value' }),
+   *   }),
+   * }
+   */
+  getMatcher() {
+    try {
+      const final = JSON.parse(JSON.stringify(this.parsedObj), function(_k, v) {
+        const nested = Object.keys(v)[0];
+        switch (nested) {
+          case "$ArrayWith":
+            return import_helpers_internal8.Match.arrayWith(v[nested]);
+          case "$ObjectLike":
+            return import_helpers_internal8.Match.objectLike(v[nested]);
+          case "$StringLike":
+            return import_helpers_internal8.Match.stringLikeRegexp(v[nested]);
+          case "$SerializedJson":
+            return import_helpers_internal8.Match.serializedJson(v[nested]);
+          default:
+            return v;
+        }
+      });
+      if (import_helpers_internal8.Matcher.isMatcher(final.matcher)) {
+        return final.matcher;
+      }
+      return import_helpers_internal8.Match.exact(final.matcher);
+    } catch {
+      return import_helpers_internal8.Match.exact(this.parsedObj.matcher);
+    }
+  }
+};
+function decodeCall(call) {
+  if (!call) {
+    return void 0;
+  }
+  try {
+    const parsed = JSON.parse(call);
+    return parsed;
+  } catch {
+    return call;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var import_aws_custom_resource_sdk_adapter = __toESM(require_lib6());
+var import_node_fetch = __toESM(require_lib9());
+
+// lib/assertions/providers/lambda-handler/utils.ts
+function deepParseJson(x) {
+  if (typeof x === "string") {
+    return tryJsonParse(x);
+  }
+  if (Array.isArray(x)) {
+    return x.map(deepParseJson);
+  }
+  if (x && typeof x === "object") {
+    for (const [key, value] of Object.entries(x)) {
+      x[key] = deepParseJson(value);
+    }
+    return x;
+  }
+  return x;
+}
+function tryJsonParse(v) {
+  if (typeof v !== "string") {
+    return v;
+  }
+  try {
+    return JSON.parse(v);
+  } catch {
+    return v;
+  }
+}
+function decodeParameters(obj) {
+  return Object.fromEntries(Object.entries(obj).map(([key, value]) => {
+    try {
+      return [key, decodeValue(value)];
+    } catch {
+      return [key, value];
+    }
+  }));
+}
+function decodeValue(value) {
+  if (value != null && !Array.isArray(value) && typeof value === "object") {
+    if (value.$type === "ArrayBufferView") {
+      return new TextEncoder().encode(value.string);
+    }
+  }
+  return JSON.parse(value);
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var HttpHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    console.log("request", request2);
+    const response = await (0, import_node_fetch.default)(request2.parameters.url, request2.parameters.fetchOptions);
+    const result = {
+      ok: response.ok,
+      status: response.status,
+      statusText: response.statusText,
+      headers: response.headers.raw()
+    };
+    result.body = await response.text();
+    try {
+      result.body = JSON.parse(result.body);
+    } catch (e) {
+    }
+    let resp;
+    if (request2.flattenResponse === "true") {
+      resp = (0, import_aws_custom_resource_sdk_adapter.flatten)(deepParseJson({ apiCallResponse: result }));
+    } else {
+      resp = { apiCallResponse: result };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+
+// lib/assertions/providers/lambda-handler/sdk.ts
+var import_aws_custom_resource_sdk_adapter2 = __toESM(require_lib6());
+var AwsApiCallHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    const apiCall = new import_aws_custom_resource_sdk_adapter2.ApiCall(request2.service, request2.api);
+    const parameters = request2.parameters ? decodeParameters(request2.parameters) : {};
+    console.log(`SDK request to ${apiCall.service}.${apiCall.action} with parameters ${JSON.stringify(parameters)}`);
+    const response = await apiCall.invoke({ parameters });
+    console.log(`SDK response received ${JSON.stringify(response)}`);
+    delete response.$metadata;
+    let resp;
+    if (request2.outputPaths || request2.flattenResponse === "true") {
+      const flattened = (0, import_aws_custom_resource_sdk_adapter2.flatten)(deepParseJson({ apiCallResponse: response }));
+      resp = request2.outputPaths ? filterKeys(flattened, request2.outputPaths) : flattened;
+    } else {
+      resp = { apiCallResponse: response };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+function filterKeys(object, searchStrings) {
+  return Object.entries(object).reduce((filteredObject, [key, value]) => {
+    for (const searchString of searchStrings) {
+      if (key.startsWith(`apiCallResponse.${searchString}`)) {
+        filteredObject[key] = value;
+      }
+    }
+    return filteredObject;
+  }, {});
+}
+
+// lib/assertions/providers/lambda-handler/types.ts
+var ASSERT_RESOURCE_TYPE = "Custom::DeployAssert@AssertEquals";
+var SDK_RESOURCE_TYPE_PREFIX = "Custom::DeployAssert@SdkCall";
+var HTTP_RESOURCE_TYPE = "Custom::DeployAssert@HttpCall";
+
+// lib/assertions/providers/lambda-handler/index.ts
+async function handler(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    if (event.RequestType === "Delete") {
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK"
+      });
+      return;
+    }
+    const result = await provider.handle();
+    if ("stateMachineArn" in event.ResourceProperties) {
+      console.info('Found "stateMachineArn", waiter statemachine started');
+      return;
+    } else if ("expected" in event.ResourceProperties) {
+      console.info('Found "expected", testing assertions');
+      const actualPath = event.ResourceProperties.actualPath;
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      const assertion = new AssertionHandler({
+        ...event,
+        ResourceProperties: {
+          ServiceToken: event.ServiceToken,
+          actual,
+          expected: event.ResourceProperties.expected
+        }
+      }, context);
+      try {
+        const assertionResult = await assertion.handle();
+        await provider.respond({
+          status: "SUCCESS",
+          reason: "OK",
+          // return both the result of the API call _and_ the assertion results
+          data: {
+            ...assertionResult,
+            ...result
+          }
+        });
+        return;
+      } catch (e) {
+        await provider.respond({
+          status: "FAILED",
+          reason: e.message ?? "Internal Error"
+        });
+        return;
+      }
+    }
+    await provider.respond({
+      status: "SUCCESS",
+      reason: "OK",
+      data: result
+    });
+  } catch (e) {
+    await provider.respond({
+      status: "FAILED",
+      reason: e.message ?? "Internal Error"
+    });
+    return;
+  }
+  return;
+}
+async function onTimeout(timeoutEvent) {
+  const eventPayload = JSON.parse(JSON.parse(timeoutEvent.Cause).errorMessage);
+  const provider = createResourceHandler(eventPayload, standardContext);
+  await provider.respond({
+    status: "FAILED",
+    // Only the properties to the IsComplete Resource need to be included.
+    reason: "Operation timed out: " + JSON.stringify(eventPayload.ResourceProperties)
+  });
+}
+async function isComplete(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    const result = await provider.handleIsComplete();
+    const actualPath = event.ResourceProperties.actualPath;
+    if (result) {
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      if ("expected" in event.ResourceProperties) {
+        const assertion = new AssertionHandler({
+          ...event,
+          ResourceProperties: {
+            ServiceToken: event.ServiceToken,
+            actual,
+            expected: event.ResourceProperties.expected
+          }
+        }, context);
+        const assertionResult = await assertion.handleIsComplete();
+        if (!assertionResult?.failed) {
+          await provider.respond({
+            status: "SUCCESS",
+            reason: "OK",
+            data: {
+              ...assertionResult,
+              ...result
+            }
+          });
+          return;
+        } else {
+          console.log(`Assertion Failed: ${JSON.stringify(assertionResult)}`);
+          throw new Error(JSON.stringify(event));
+        }
+      }
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK",
+        data: result
+      });
+    } else {
+      console.log("No result");
+      throw new Error(JSON.stringify(event));
+    }
+    return;
+  } catch (e) {
+    console.log(e);
+    throw new Error(JSON.stringify(event));
+  }
+}
+function createResourceHandler(event, context) {
+  if (event.ResourceType.startsWith(SDK_RESOURCE_TYPE_PREFIX)) {
+    return new AwsApiCallHandler(event, context);
+  } else if (event.ResourceType.startsWith(ASSERT_RESOURCE_TYPE)) {
+    return new AssertionHandler(event, context);
+  } else if (event.ResourceType.startsWith(HTTP_RESOURCE_TYPE)) {
+    return new HttpHandler(event, context);
+  } else {
+    throw new Error(`Unsupported resource type "${event.ResourceType}`);
+  }
+}
+var standardContext = {
+  getRemainingTimeInMillis: () => 9e4
+};
+// Annotate the CommonJS export names for ESM import in node:
+0 && (module.exports = {
+  handler,
+  isComplete,
+  onTimeout
+});
+/*! Bundled license information:
+
+@balena/dockerignore/ignore.js:
+  (**
+   * @license
+   * Copyright 2020 Balena Ltd.
+   *
+   * Licensed under the Apache License, Version 2.0 (the "License");
+   * you may not use this file except in compliance with the License.
+   * You may obtain a copy of the License at
+   *
+   *    http://www.apache.org/licenses/LICENSE-2.0
+   *
+   * Unless required by applicable law or agreed to in writing, software
+   * distributed under the License is distributed on an "AS IS" BASIS,
+   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   * See the License for the specific language governing permissions and
+   * limitations under the License.
+   *
+   * ------------------------------------------------------------------------
+   *
+   * Copyright 2018 Zeit, Inc.
+   * Licensed under the MIT License. See file LICENSE.md for a full copy.
+   *
+   * ------------------------------------------------------------------------
+   *)
+*/
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip
new file mode 100644
index 0000000000000..44727c2a7a00a
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/asset.98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a50d5225673b37be97302ae9094308bf4f5085a325d502950adf11fbe35245e7
+size 22004168
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/cdk.out
new file mode 100644
index 0000000000000..a130d293db2dd
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/cdk.out
@@ -0,0 +1 @@
+{"version":"55.0.0"}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/integ.json
new file mode 100644
index 0000000000000..101d80cb8ee0c
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/integ.json
@@ -0,0 +1,15 @@
+{
+  "version": "55.0.0",
+  "testCases": {
+    "WebFunctionMinimalTest/DefaultTest": {
+      "stacks": [
+        "WebFunctionMinimalStack"
+      ],
+      "diffAssets": false,
+      "assertionStack": "WebFunctionMinimalTest/DefaultTest/DeployAssert",
+      "assertionStackName": "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8"
+    }
+  },
+  "enableLookups": true,
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/manifest.json
new file mode 100644
index 0000000000000..1942855f52062
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/manifest.json
@@ -0,0 +1,640 @@
+{
+  "version": "55.0.0",
+  "artifacts": {
+    "WebFunctionMinimalStack.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionMinimalStack.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionMinimalStack": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionMinimalStack.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/b3d0bc1545a9e3cb3437e4258d7c6e41c943b419cae1ead0e4b59fe483a807bd.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionMinimalStack.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionMinimalStack.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionMinimalStack.metadata.json",
+      "displayName": "WebFunctionMinimalStack"
+    },
+    "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/f84de0662392fabbf75adb53c4ee05b4b92d58c814beae1dc3a45ba3c0633e8a.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionMinimalStack",
+        "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionMinimalTestDefaultTestDeployAssertEB86BEC8.metadata.json",
+      "displayName": "WebFunctionMinimalTest/DefaultTest/DeployAssert"
+    },
+    "Tree": {
+      "type": "cdk:tree",
+      "properties": {
+        "file": "tree.json"
+      }
+    },
+    "aws-cdk-lib/feature-flag-report": {
+      "type": "cdk:feature-flag-report",
+      "properties": {
+        "module": "aws-cdk-lib",
+        "flags": {
+          "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Pass signingProfileName to CfnSigningProfile"
+          },
+          "@aws-cdk/core:newStyleStackSynthesis": {
+            "recommendedValue": true,
+            "explanation": "Switch to new stack synthesis method which enables CI/CD",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:stackRelativeExports": {
+            "recommendedValue": true,
+            "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Disable implicit openListener when custom security groups are provided"
+          },
+          "@aws-cdk/aws-rds:lowercaseDbIdentifier": {
+            "recommendedValue": true,
+            "explanation": "Force lowercasing of RDS Cluster names in CDK",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": {
+            "recommendedValue": true,
+            "explanation": "Allow adding/removing multiple UsagePlanKeys independently",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeVersionProps": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the  `fn.currentVersion`.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeLayerVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`."
+          },
+          "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:checkSecretUsage": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations"
+          },
+          "@aws-cdk/core:target-partitions": {
+            "recommendedValue": [
+              "aws",
+              "aws-cn"
+            ],
+            "explanation": "What regions to include in lookup tables of environment agnostic stacks"
+          },
+          "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ECS extensions will automatically add an `awslogs` driver if no logging is specified"
+          },
+          "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names."
+          },
+          "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID."
+          },
+          "@aws-cdk/aws-iam:minimizePolicies": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Minimize IAM policies by combining Statements"
+          },
+          "@aws-cdk/core:validateSnapshotRemovalPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Error on snapshot removal policies on resources that do not support it."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate key aliases that include the stack name"
+          },
+          "@aws-cdk/aws-s3:createDefaultLoggingPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist."
+          },
+          "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict KMS key policy for encrypted Queues a bit more"
+          },
+          "@aws-cdk/aws-apigateway:disableCloudWatchRole": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment"
+          },
+          "@aws-cdk/core:enablePartitionLiterals": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make ARNs concrete if AWS partition is known"
+          },
+          "@aws-cdk/aws-events:eventsTargetQueueSameAccount": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Event Rules may only push to encrypted SQS queues in the same account"
+          },
+          "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Avoid setting the \"ECS\" deployment controller when adding a circuit breaker"
+          },
+          "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in."
+          },
+          "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use S3 Bucket Policy instead of ACLs for Server Access Logging"
+          },
+          "@aws-cdk/aws-route53-patters:useCertificate": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the official `Certificate` resource instead of `DnsValidatedCertificate`"
+          },
+          "@aws-cdk/customresources:installLatestAwsSdkDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "Whether to install the latest SDK by default in AwsCustomResource"
+          },
+          "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use unique resource name for Database Proxy"
+          },
+          "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Remove CloudWatch alarms from deployment group"
+          },
+          "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include authorizer configuration in the calculation of the API deployment logical ID."
+          },
+          "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Define user data for a launch template by default when a machine image is provided."
+          },
+          "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "SecretTargetAttachments uses the ResourcePolicy of the attached Secret."
+          },
+          "@aws-cdk/aws-redshift:columnId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Whether to use an ID to track Redshift column changes"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable AmazonEMRServicePolicy_v2 managed policies"
+          },
+          "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict access to the VPC default security group"
+          },
+          "@aws-cdk/aws-apigateway:requestValidatorUniqueId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a unique id for each RequestValidator added to a method"
+          },
+          "@aws-cdk/aws-kms:aliasNameRef": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "KMS Alias name and keyArn will have implicit reference to KMS Key"
+          },
+          "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition"
+          },
+          "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a launch template when creating an AutoScalingGroup"
+          },
+          "@aws-cdk/core:includePrefixInUniqueNameGeneration": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include the stack prefix in the stack name generation process"
+          },
+          "@aws-cdk/aws-efs:denyAnonymousAccess": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "EFS denies anonymous clients accesses"
+          },
+          "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables support for Multi-AZ with Standby deployment for opensearch domains"
+          },
+          "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default"
+          },
+          "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet."
+          },
+          "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change."
+          },
+          "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id."
+          },
+          "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials."
+          },
+          "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the CodeCommit source action is using the default branch name 'main'."
+          },
+          "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default value for crossAccountKeys to false."
+          },
+          "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default pipeline type to V2."
+          },
+          "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only."
+          },
+          "@aws-cdk/pipelines:reduceAssetRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-eks:nodegroupNameAttribute": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix."
+          },
+          "@aws-cdk/aws-eks:useNativeOidcProvider": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider)."
+          },
+          "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default volume type of the EBS volume will be GP3"
+          },
+          "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, remove default deployment alarm settings"
+          },
+          "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default"
+          },
+          "@aws-cdk/aws-s3:keepNotificationInImportedBucket": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": {
+            "recommendedValue": true,
+            "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:explicitStackTags": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, stack tags need to be assigned explicitly on a Stack."
+          },
+          "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration"
+          },
+          "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas"
+          },
+          "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together."
+          },
+          "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn."
+          },
+          "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`"
+          },
+          "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values."
+          },
+          "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN."
+          },
+          "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2."
+          },
+          "@aws-cdk/core:aspectStabilization": {
+            "recommendedValue": true,
+            "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource."
+          },
+          "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere"
+          },
+          "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default behaviour of OIDC provider will reject unauthorized connections"
+          },
+          "@aws-cdk/core:enableAdditionalMetadataCollection": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues."
+          },
+          "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement"
+          },
+          "@aws-cdk/aws-s3:setUniqueReplicationRoleName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication."
+          },
+          "@aws-cdk/pipelines:reduceStageRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from Stage addActions trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-events:requireEventBusPolicySid": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals."
+          },
+          "@aws-cdk/core:aspectPrioritiesMutating": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING."
+          },
+          "@aws-cdk/aws-dynamodb:retainTableReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, table replica will be default to the removal policy of source table unless specified otherwise."
+          },
+          "@aws-cdk/cognito:logUserPoolClientSecretValue": {
+            "recommendedValue": false,
+            "explanation": "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs."
+          },
+          "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "When enabled, scopes down the trust policy for the cross-account action role",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter"
+          },
+          "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions."
+          },
+          "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC."
+          },
+          "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration": {
+            "recommendedValue": false,
+            "explanation": "When enabled, use resource IDs for VPC V2 migration"
+          },
+          "@aws-cdk/aws-s3:publicAccessBlockedByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined."
+          },
+          "@aws-cdk/aws-lambda:useCdkManagedLogGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK creates and manages loggroup for the lambda function"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, Network Load Balancer will be created with a security group by default."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": {
+            "recommendedValue": true,
+            "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement"
+          },
+          "@aws-cdk/aws-route53-patterns:useDistribution": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the `Distribution` resource instead of `CloudFrontWebDistribution`"
+          },
+          "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default"
+          },
+          "@aws-cdk/core:automaticL1Traits": {
+            "recommendedValue": true,
+            "explanation": "Automatically use the default L1 traits for L1 constructs`",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-batch:defaultToAL2023": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2"
+          },
+          "@aws-cdk/aws-eks:defaultToAL2023": {
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2"
+          },
+          "@aws-cdk/core:annotationsInValidationReport": {
+            "recommendedValue": true,
+            "explanation": "Include construct annotations (warnings and errors) in the policy validation report"
+          },
+          "@aws-cdk/core:defaultCrossStackReferences": {
+            "recommendedValue": "weak",
+            "explanation": "Controls whether cross-stack references are strong, weak, or both",
+            "unconfiguredBehavesLike": {
+              "v2": "strong"
+            }
+          },
+          "@aws-cdk/core:validateAgainstDefaultRules": {
+            "recommendedValue": true,
+            "explanation": "Treat CloudFormation Validate findings as errors"
+          },
+          "@aws-cdk/aws-ecs:removeEmptyLoadBalancers": {
+            "recommendedValue": true,
+            "explanation": "Render an empty `LoadBalancers` array on an ECS service that has no target groups"
+          },
+          "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps": {
+            "recommendedValue": true,
+            "explanation": "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS"
+          },
+          "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard": {
+            "recommendedValue": true,
+            "explanation": "Render the API Gateway access log destination ARN without the trailing `:*`"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:evaluateExpressionDedicatedFunction": {
+            "recommendedValue": true,
+            "explanation": "When enabled, each EvaluateExpression task gets its own Lambda function",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          }
+        }
+      }
+    }
+  },
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/tree.json
new file mode 100644
index 0000000000000..89dfa97bec4c3
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/tree.json
@@ -0,0 +1 @@
+{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"WebFunctionMinimalStack":{"id":"WebFunctionMinimalStack","path":"WebFunctionMinimalStack","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"CodeBucket":{"id":"CodeBucket","path":"WebFunctionMinimalStack/CodeBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionMinimalStack/CodeBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:logicalId":"CodeBucketFF4C7AD6","aws:cdk:cloudformation:props":{"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"},{"key":"aws-cdk:cr-owned:10e7eda2","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"WebFunctionMinimalStack/CodeBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionMinimalStack/CodeBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:logicalId":"CodeBucketPolicy637E7C14","aws:cdk:cloudformation:props":{"bucket":{"Ref":"CodeBucketFF4C7AD6"},"policyDocument":{"Statement":[{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},"/*"]]}]},{"Action":["s3:GetObject","s3:GetObjectVersion"],"Condition":{"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}},"ArnLike":{"aws:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":lambda:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":web-function/WebFunctionMinimackMinimalBucket31833657/revision/*"]]}}},"Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},"/",{"Fn::Select":[0,{"Fn::GetAtt":["DeployCodeCustomResource46A14DA0","SourceObjectKeys"]}]}]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"WebFunctionMinimalStack/CodeBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionMinimalStack/CodeBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"WebFunctionMinimalStack/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"WebFunctionMinimalStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionMinimalStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionMinimalStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"DeployCode":{"id":"DeployCode","path":"WebFunctionMinimalStack/DeployCode","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_deployment.BucketDeployment","version":"0.0.0"},"children":{"AwsCliLayer":{"id":"AwsCliLayer","path":"WebFunctionMinimalStack/DeployCode/AwsCliLayer","constructInfo":{"fqn":"aws-cdk-lib.lambda_layer_awscli.AwsCliLayer","version":"0.0.0"},"children":{"Code":{"id":"Code","path":"WebFunctionMinimalStack/DeployCode/AwsCliLayer/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionMinimalStack/DeployCode/AwsCliLayer/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionMinimalStack/DeployCode/AwsCliLayer/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"Resource":{"id":"Resource","path":"WebFunctionMinimalStack/DeployCode/AwsCliLayer/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnLayerVersion","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::LayerVersion","aws:cdk:cloudformation:logicalId":"DeployCodeAwsCliLayerB38BC350","aws:cdk:cloudformation:props":{"content":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"98f62bef9320f8c0a0a7be21d7c746f069131f196f51ffe3008a6bb730b368ec.zip"},"description":"/opt/awscli/aws"}}}}},"CustomResourceHandler":{"id":"CustomResourceHandler","path":"WebFunctionMinimalStack/DeployCode/CustomResourceHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.SingletonFunction","version":"0.0.0"}},"Asset1":{"id":"Asset1","path":"WebFunctionMinimalStack/DeployCode/Asset1","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionMinimalStack/DeployCode/Asset1/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionMinimalStack/DeployCode/Asset1/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"CustomResource":{"id":"CustomResource","path":"WebFunctionMinimalStack/DeployCode/CustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionMinimalStack/DeployCode/CustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C":{"id":"Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:logicalId":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["s3:GetBucket*","s3:GetObject*","s3:List*"],"Effect":"Allow","Resource":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":s3:::",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/*"]]},{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":s3:::",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"}]]}]},{"Action":["s3:Abort*","s3:DeleteObject*","s3:GetBucket*","s3:GetObject*","s3:List*","s3:PutObject","s3:PutObjectLegalHold","s3:PutObjectRetention","s3:PutObjectTagging","s3:PutObjectVersionTagging"],"Effect":"Allow","Resource":[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["CodeBucketFF4C7AD6","Arn"]},"/*"]]}]}],"Version":"2012-10-17"},"policyName":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRoleDefaultPolicy88902FDF","roles":[{"Ref":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265"}]}}}}}}},"Code":{"id":"Code","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"Resource":{"id":"Resource","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:logicalId":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536","aws:cdk:cloudformation:props":{"architectures":["arm64"],"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"35328da138f26fbd9160297abc9a2522d93dbf75878cd5114a9c050419fc1ce0.zip"},"environment":{"variables":{"AWS_CA_BUNDLE":"/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"}},"handler":"index.handler","layers":[{"Ref":"DeployCodeAwsCliLayerB38BC350"}],"memorySize":1024,"role":{"Fn::GetAtt":["CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CServiceRole89A01265","Arn"]},"runtime":"python3.13","timeout":900}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionMinimalStack/Custom::CDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756CLogGroup817B64E9","aws:cdk:cloudformation:props":{"logGroupName":{"Fn::Join":["",["/aws/lambda/",{"Ref":"CustomCDKBucketDeployment8693BB64968944B69AAFB0CC9EB8756C81C01536"}]]},"retentionInDays":731}}}}}}},"MinimalBucket":{"id":"MinimalBucket","path":"WebFunctionMinimalStack/MinimalBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunction","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionMinimalStack/MinimalBucket/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionMinimalStack/MinimalBucket/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"MinimalBucketServiceRoleA9DCB6ED","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}],"tags":[{"key":"App","value":"integ-test"}]}}}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionMinimalStack/MinimalBucket/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionMinimalStack/MinimalBucket/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"MinimalBucketLogGroup04559959","aws:cdk:cloudformation:props":{"retentionInDays":731,"tags":[{"key":"App","value":"integ-test"}]}}}}},"Function":{"id":"Function","path":"WebFunctionMinimalStack/MinimalBucket/Function","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunction","aws:cdk:cloudformation:logicalId":"MinimalBucketFunction70777F34","aws:cdk:cloudformation:props":{"tags":[{"key":"App","value":"integ-test"}],"functionName":"WebFunctionMinimackMinimalBucket31833657"}}},"Revision":{"id":"Revision","path":"WebFunctionMinimalStack/MinimalBucket/Revision","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionRevision","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionRevision","aws:cdk:cloudformation:logicalId":"MinimalBucketRevision0400274F","aws:cdk:cloudformation:props":{"buildConfig":{"codeConfig":{"s3Object":{"bucket":{"Ref":"CodeBucketFF4C7AD6"},"key":{"Fn::Select":[0,{"Fn::GetAtt":["DeployCodeCustomResource46A14DA0","SourceObjectKeys"]}]},"versionId":{"Fn::Select":[0,{"Fn::GetAtt":["DeployCodeCustomResource46A14DA0","SourceObjectVersionIds"]}]}}},"runtimeConfig":{"runtime":"nodejs24.x"}},"functionName":{"Ref":"MinimalBucketFunction70777F34"},"serviceConfig":{"executionRoleArn":{"Fn::GetAtt":["MinimalBucketServiceRoleA9DCB6ED","Arn"]},"telemetryConfig":{"loggingConfig":{"logGroup":{"Ref":"MinimalBucketLogGroup04559959"}}},"timeoutSeconds":30}}}},"Endpoint":{"id":"Endpoint","path":"WebFunctionMinimalStack/MinimalBucket/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunctionEndpoint","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionMinimalStack/MinimalBucket/Endpoint/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionEndpoint","aws:cdk:cloudformation:logicalId":"MinimalBucketEndpoint910239E5","aws:cdk:cloudformation:props":{"authType":"IamAuth","endpointName":"prod","endpointType":"HomeRegion","functionName":{"Fn::GetAtt":["MinimalBucketFunction70777F34","FunctionArn"]},"revisionWeights":[{"revisionId":{"Fn::GetAtt":["MinimalBucketRevision0400274F","RevisionId"]},"weight":100}]}}}}}}},"Exports":{"id":"Exports","path":"WebFunctionMinimalStack/Exports","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Output{\"Fn::GetAtt\":[\"MinimalBucketEndpoint910239E5\",\"DomainName\"]}":{"id":"Output{\"Fn::GetAtt\":[\"MinimalBucketEndpoint910239E5\",\"DomainName\"]}","path":"WebFunctionMinimalStack/Exports/Output{\"Fn::GetAtt\":[\"MinimalBucketEndpoint910239E5\",\"DomainName\"]}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionMinimalStack/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionMinimalStack/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"WebFunctionMinimalTest":{"id":"WebFunctionMinimalTest","path":"WebFunctionMinimalTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"WebFunctionMinimalTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionMinimalTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}},"DeployAssert":{"id":"DeployAssert","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e":{"id":"HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.HttpApiCall","version":"0.0.0"},"children":{"HttpProvider":{"id":"HttpProvider","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e/HttpProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e/HttpProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/HttpApiCall3e5992f3b478f099bdfc89d9d72c8b4e/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"SingletonFunction1488541a7b23466481b69b4408076b81":{"id":"SingletonFunction1488541a7b23466481b69b4408076b81","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Staging":{"id":"Staging","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionMinimalTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}}}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/validation-report.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/validation-report.json
new file mode 100644
index 0000000000000..6e40fa68c963a
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.js.snapshot/validation-report.json
@@ -0,0 +1,5 @@
+{
+  "version": "55.0.0",
+  "title": "Validation Report",
+  "pluginReports": []
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.ts
new file mode 100644
index 0000000000000..34ff47e225c76
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-minimal.ts
@@ -0,0 +1,51 @@
+import * as path from 'path';
+import * as cdk from 'aws-cdk-lib/core';
+import * as s3 from 'aws-cdk-lib/aws-s3';
+import * as s3deploy from 'aws-cdk-lib/aws-s3-deployment';
+import * as integ from '@aws-cdk/integ-tests-alpha';
+import { WebFunction, WebFunctionCode, WebFunctionRuntime, WebFunctionAuthType } from 'aws-cdk-lib/aws-lambda';
+
+const app = new cdk.App({ analyticsReporting: false });
+const stack = new cdk.Stack(app, 'WebFunctionMinimalStack');
+
+// Versioned S3 bucket for code storage — WebFunction requires versioning to
+// pin a specific object version per revision.
+const codeBucket = new s3.Bucket(stack, 'CodeBucket', {
+  versioned: true,
+  removalPolicy: cdk.RemovalPolicy.DESTROY,
+  autoDeleteObjects: true,
+});
+
+// Deploy the handler code as a single zip object (extract: false) so we can
+// read its VersionId back via `objectVersionIds`.
+const deployment = new s3deploy.BucketDeployment(stack, 'DeployCode', {
+  sources: [s3deploy.Source.asset(path.join(__dirname, 'webfunction-handler'))],
+  destinationBucket: codeBucket,
+  extract: false,
+});
+
+const webFunction = new WebFunction(stack, 'MinimalBucket', {
+  code: WebFunctionCode.fromBucket(
+    codeBucket,
+    cdk.Fn.select(0, deployment.objectKeys),
+    cdk.Fn.select(0, deployment.objectVersionIds),
+  ),
+  runtime: WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+});
+
+cdk.Tags.of(webFunction).add('App', 'integ-test');
+
+const testCase = new integ.IntegTest(app, 'WebFunctionMinimalTest', {
+  testCases: [stack],
+  diffAssets: false,
+});
+
+// Functional smoke test: hit the resolved endpoint domain. The endpoint uses
+// IAM_AUTH, so an unsigned request is rejected with 403. Asserting 403 (rather
+// than a connection error or 5xx) confirms the endpoint is live, reachable over
+// TLS, and enforcing auth — i.e. the three CFN resources are wired correctly,
+// not merely deployed.
+testCase.assertions
+  .httpApiCall(`https://${webFunction.endpoint.domainName}/`)
+  .expect(integ.ExpectedResult.objectLike({ status: 403 }));
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorStack.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorStack.assets.json
new file mode 100644
index 0000000000000..a73622d5470b5
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorStack.assets.json
@@ -0,0 +1,76 @@
+{
+  "version": "55.0.0",
+  "files": {
+    "bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92": {
+      "displayName": "WebFunctionNetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider Code",
+      "source": {
+        "path": "asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-fea3f0e7": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61": {
+      "displayName": "WebFunctionNetworkConnectorStack/Custom::S3AutoDeleteObjectsCustomResourceProvider Code",
+      "source": {
+        "path": "asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-094cbf39": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "f43caef5f59d8d69c7a740076b980608cb5d502efb430a777568820012525e43": {
+      "displayName": "Function/Code",
+      "source": {
+        "path": "asset.f43caef5f59d8d69c7a740076b980608cb5d502efb430a777568820012525e43",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-9dea3625": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "f43caef5f59d8d69c7a740076b980608cb5d502efb430a777568820012525e43.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d": {
+      "displayName": "Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code",
+      "source": {
+        "path": "asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-40395998": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "212799551c8d0281eab2fa30d5f499153de9523e551f2b02b316093f38764894": {
+      "displayName": "WebFunctionNetworkConnectorStack Template",
+      "source": {
+        "path": "WebFunctionNetworkConnectorStack.template.json",
+        "packaging": "file"
+      },
+      "destinations": {
+        "current_account-current_region-43e36889": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "212799551c8d0281eab2fa30d5f499153de9523e551f2b02b316093f38764894.json",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    }
+  },
+  "dockerImages": {}
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorStack.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorStack.metadata.json
new file mode 100644
index 0000000000000..44787f8fad3ad
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorStack.metadata.json
@@ -0,0 +1,719 @@
+{
+  "/WebFunctionNetworkConnectorStack": [
+    {
+      "type": "aws:cdk:acknowledged-rules",
+      "data": {
+        "CloudFormation-Validate::W3010": "Literal AZs in template are the result of accessing stack.availabilityZones, this is expected and safe"
+      },
+      "trace": [
+        "    at Validations.acknowledge (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/validation/validations.js:126:18)",
+        "    at Stack._silenceLiteralAzWarning (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/stack.js:1516:49)",
+        "    at get availabilityZones (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/stack.js:862:18)",
+        "    at new Vpc (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/aws-ec2/lib/vpc.js:839:48)",
+        "    at  (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js:47:13)",
+        "    ...node internals..."
+      ]
+    },
+    {
+      "type": "aws:cdk:templateFile",
+      "data": "WebFunctionNetworkConnectorStack.template.json"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "maxAzs": "*",
+        "natGateways": "*",
+        "subnetConfiguration": [
+          {
+            "name": "*",
+            "subnetType": "Isolated"
+          }
+        ]
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider": [
+    {
+      "type": "aws:cdk:is-custom-resource-handler-customResourceProvider",
+      "data": true
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/EgressBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "blockPublicAccess": "*",
+        "enforceSSL": true,
+        "removalPolicy": "destroy",
+        "autoDeleteObjects": true
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3AutoDeleteObjectsCustomResourceProvider": [
+    {
+      "type": "aws:cdk:is-custom-resource-handler-customResourceProvider",
+      "data": true
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/ConnectorSecurityGroup": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "vpc": "*",
+        "allowAllOutbound": true
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Connector": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "versioned": true,
+        "encryption": "S3_MANAGED",
+        "blockPublicAccess": "*",
+        "enforceSSL": true,
+        "removalPolicy": "destroy",
+        "autoDeleteObjects": true
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-logGroup",
+      "data": true
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "timeout": "*",
+        "role": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-singleton",
+      "data": true
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-runtime-family",
+      "data": 0
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/ConnectorArn": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ConnectorArn"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/ConnectorVersionArn": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ConnectorVersionArn"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/BootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "BootstrapVersion"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/CheckBootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CheckBootstrapVersion"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "Vpc8378EB38"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "availabilityZone": "*",
+        "vpcId": "*",
+        "cidrBlock": "*",
+        "mapPublicIpOnLaunch": false,
+        "ipv6CidrBlock": "*",
+        "assignIpv6AddressOnCreation": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "availabilityZone": "*",
+        "vpcId": "*",
+        "cidrBlock": "*",
+        "mapPublicIpOnLaunch": false,
+        "ipv6CidrBlock": "*",
+        "assignIpv6AddressOnCreation": "*"
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "availabilityZone": "*",
+        "vpcId": "*",
+        "cidrBlock": "*",
+        "mapPublicIpOnLaunch": false,
+        "ipv6CidrBlock": "*",
+        "assignIpv6AddressOnCreation": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "availabilityZone": "*",
+        "vpcId": "*",
+        "cidrBlock": "*",
+        "mapPublicIpOnLaunch": false,
+        "ipv6CidrBlock": "*",
+        "assignIpv6AddressOnCreation": "*"
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/RestrictDefaultSecurityGroupCustomResource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/S3Endpoint": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "vpc": "*",
+        "service": {
+          "name": "*"
+        }
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/EgressBucket/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "EgressBucket1ABE5DC5"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/EgressBucket/Policy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "bucket": "*"
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/EgressBucket/AutoDeleteObjectsCustomResource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/ConnectorSecurityGroup/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ConnectorSecurityGroup5AD7DC86"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Connector/OperatorRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Connector/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ConnectorC537A2FB"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/LogGroup": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/Function": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "Function042596DC"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/Revision": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionRevision22F51A9C"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/Endpoint": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:warning",
+      "data": "WebFunction endpoint uses APPLICATION_MANAGED auth. The Lambda service will not enforce authentication; ensure your handler code validates every request. [ack: @aws-cdk/aws-lambda:webFunctionPublicEndpoint]",
+      "trace": [
+        "Annotations.addMessage (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:244:29)",
+        "Annotations.addWarningV2 (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:113:18)",
+        "new WebFunctionEndpoint (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/aws-lambda/lib/webfunction-endpoint.js:425:47)",
+        "new WebFunctionEndpoint (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/prop-injectable.js:32:13)",
+        "PropertyInjectable.createEndpoint (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/aws-lambda/lib/webfunction.js:495:30)",
+        "new WebFunction (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/aws-lambda/lib/webfunction.js:458:34)",
+        "new WebFunction (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/prop-injectable.js:32:13)",
+        "Object. (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js:88:21)",
+        "Module._compile (node:internal/modules/cjs/loader:1706:14)",
+        "Object..js (node:internal/modules/cjs/loader:1839:10)",
+        "Module.load (node:internal/modules/cjs/loader:1441:32)",
+        "Function._load (node:internal/modules/cjs/loader:1263:12)",
+        "TracingChannel.traceSync (node:diagnostics_channel:322:14)",
+        "wrapModuleLoad (node:internal/modules/cjs/loader:237:24)",
+        "Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:171:5)",
+        "node:internal/main/run_main_module:36:49"
+      ]
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/Policy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "bucket": "*"
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Exports/Output{\"Ref\":\"EgressBucket1ABE5DC5\"}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputRefEgressBucket1ABE5DC536970BD1"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Exports/Output{\"Fn::GetAtt\":[\"FunctionEndpoint85BE574A\",\"DomainName\"]}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputFnGetAttFunctionEndpoint85BE574ADomainName48F4D80C"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1/Subnet": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "VpcisolatedSubnet1SubnetE62B1B9B"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1/RouteTable": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "VpcisolatedSubnet1RouteTableE442650B"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1/RouteTableAssociation": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "VpcisolatedSubnet1RouteTableAssociationD259E31A"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2/Subnet": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "VpcisolatedSubnet2Subnet39217055"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2/RouteTable": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "VpcisolatedSubnet2RouteTable334F9764"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2/RouteTableAssociation": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "VpcisolatedSubnet2RouteTableAssociation25A4716F"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/RestrictDefaultSecurityGroupCustomResource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "VpcRestrictDefaultSecurityGroupCustomResourceC73DA2BE"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Vpc/S3Endpoint/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "VpcS3Endpoint4A3DE4B5"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/EgressBucket/Policy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "EgressBucketPolicyBE4DCA6C"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/EgressBucket/AutoDeleteObjectsCustomResource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "EgressBucketAutoDeleteObjectsCustomResourceB85706DA"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Connector/OperatorRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ConnectorOperatorRoleC4EE1CDE"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionServiceRole675BB04A"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/CodeCopyd6190910/CustomResourceHandler": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "uuid": "*",
+        "lambdaPurpose": "*",
+        "timeout": "*",
+        "role": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          true
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          "*"
+        ]
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/CodeCopyd6190910/Resource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/LogGroup/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionLogGroup55B80E27"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/Endpoint/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionEndpoint85BE574A"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/Policy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AWSCDKWebFunctionAssetBucketAutoDeleteObjectsCustomResource7C95046A"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Function/CodeCopyd6190910/Resource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "FunctionCodeCopyd61909107AB50639"
+    }
+  ],
+  "/WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorStack.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorStack.template.json
new file mode 100644
index 0000000000000..8082b13754206
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorStack.template.json
@@ -0,0 +1,1208 @@
+{
+ "Resources": {
+  "Vpc8378EB38": {
+   "Type": "AWS::EC2::VPC",
+   "Properties": {
+    "CidrBlock": "10.0.0.0/16",
+    "EnableDnsHostnames": true,
+    "EnableDnsSupport": true,
+    "InstanceTenancy": "default",
+    "Tags": [
+     {
+      "Key": "Name",
+      "Value": "WebFunctionNetworkConnectorStack/Vpc"
+     }
+    ]
+   }
+  },
+  "VpcisolatedSubnet1SubnetE62B1B9B": {
+   "Type": "AWS::EC2::Subnet",
+   "Properties": {
+    "AvailabilityZone": {
+     "Fn::Select": [
+      0,
+      {
+       "Fn::GetAZs": ""
+      }
+     ]
+    },
+    "CidrBlock": "10.0.0.0/17",
+    "MapPublicIpOnLaunch": false,
+    "Tags": [
+     {
+      "Key": "aws-cdk:subnet-name",
+      "Value": "isolated"
+     },
+     {
+      "Key": "aws-cdk:subnet-type",
+      "Value": "Isolated"
+     },
+     {
+      "Key": "Name",
+      "Value": "WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1"
+     }
+    ],
+    "VpcId": {
+     "Ref": "Vpc8378EB38"
+    }
+   }
+  },
+  "VpcisolatedSubnet1RouteTableE442650B": {
+   "Type": "AWS::EC2::RouteTable",
+   "Properties": {
+    "Tags": [
+     {
+      "Key": "Name",
+      "Value": "WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1"
+     }
+    ],
+    "VpcId": {
+     "Ref": "Vpc8378EB38"
+    }
+   }
+  },
+  "VpcisolatedSubnet1RouteTableAssociationD259E31A": {
+   "Type": "AWS::EC2::SubnetRouteTableAssociation",
+   "Properties": {
+    "RouteTableId": {
+     "Ref": "VpcisolatedSubnet1RouteTableE442650B"
+    },
+    "SubnetId": {
+     "Ref": "VpcisolatedSubnet1SubnetE62B1B9B"
+    }
+   }
+  },
+  "VpcisolatedSubnet2Subnet39217055": {
+   "Type": "AWS::EC2::Subnet",
+   "Properties": {
+    "AvailabilityZone": {
+     "Fn::Select": [
+      1,
+      {
+       "Fn::GetAZs": ""
+      }
+     ]
+    },
+    "CidrBlock": "10.0.128.0/17",
+    "MapPublicIpOnLaunch": false,
+    "Tags": [
+     {
+      "Key": "aws-cdk:subnet-name",
+      "Value": "isolated"
+     },
+     {
+      "Key": "aws-cdk:subnet-type",
+      "Value": "Isolated"
+     },
+     {
+      "Key": "Name",
+      "Value": "WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2"
+     }
+    ],
+    "VpcId": {
+     "Ref": "Vpc8378EB38"
+    }
+   }
+  },
+  "VpcisolatedSubnet2RouteTable334F9764": {
+   "Type": "AWS::EC2::RouteTable",
+   "Properties": {
+    "Tags": [
+     {
+      "Key": "Name",
+      "Value": "WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2"
+     }
+    ],
+    "VpcId": {
+     "Ref": "Vpc8378EB38"
+    }
+   }
+  },
+  "VpcisolatedSubnet2RouteTableAssociation25A4716F": {
+   "Type": "AWS::EC2::SubnetRouteTableAssociation",
+   "Properties": {
+    "RouteTableId": {
+     "Ref": "VpcisolatedSubnet2RouteTable334F9764"
+    },
+    "SubnetId": {
+     "Ref": "VpcisolatedSubnet2Subnet39217055"
+    }
+   }
+  },
+  "VpcRestrictDefaultSecurityGroupCustomResourceC73DA2BE": {
+   "Type": "Custom::VpcRestrictDefaultSG",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E",
+      "Arn"
+     ]
+    },
+    "DefaultSecurityGroupId": {
+     "Fn::GetAtt": [
+      "Vpc8378EB38",
+      "DefaultSecurityGroup"
+     ]
+    },
+    "Account": {
+     "Ref": "AWS::AccountId"
+    }
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "VpcS3Endpoint4A3DE4B5": {
+   "Type": "AWS::EC2::VPCEndpoint",
+   "Properties": {
+    "RouteTableIds": [
+     {
+      "Ref": "VpcisolatedSubnet1RouteTableE442650B"
+     },
+     {
+      "Ref": "VpcisolatedSubnet2RouteTable334F9764"
+     }
+    ],
+    "ServiceName": {
+     "Fn::Join": [
+      "",
+      [
+       "com.amazonaws.",
+       {
+        "Ref": "AWS::Region"
+       },
+       ".s3"
+      ]
+     ]
+    },
+    "Tags": [
+     {
+      "Key": "Name",
+      "Value": "WebFunctionNetworkConnectorStack/Vpc"
+     }
+    ],
+    "VpcEndpointType": "Gateway",
+    "VpcId": {
+     "Ref": "Vpc8378EB38"
+    }
+   }
+  },
+  "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Version": "2012-10-17",
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ]
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+     }
+    ],
+    "Policies": [
+     {
+      "PolicyName": "Inline",
+      "PolicyDocument": {
+       "Version": "2012-10-17",
+       "Statement": [
+        {
+         "Effect": "Allow",
+         "Action": [
+          "ec2:AuthorizeSecurityGroupIngress",
+          "ec2:AuthorizeSecurityGroupEgress",
+          "ec2:RevokeSecurityGroupIngress",
+          "ec2:RevokeSecurityGroupEgress"
+         ],
+         "Resource": [
+          {
+           "Fn::Join": [
+            "",
+            [
+             "arn:",
+             {
+              "Ref": "AWS::Partition"
+             },
+             ":ec2:",
+             {
+              "Ref": "AWS::Region"
+             },
+             ":",
+             {
+              "Ref": "AWS::AccountId"
+             },
+             ":security-group/",
+             {
+              "Fn::GetAtt": [
+               "Vpc8378EB38",
+               "DefaultSecurityGroup"
+              ]
+             }
+            ]
+           ]
+          }
+         ]
+        }
+       ]
+      }
+     }
+    ]
+   }
+  },
+  "CustomVpcRestrictDefaultSGCustomResourceProviderHandlerDC833E5E": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92.zip"
+    },
+    "Timeout": 900,
+    "MemorySize": 128,
+    "Handler": "__entrypoint__.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs24.x",
+    "Description": "Lambda function for removing all inbound/outbound rules from the VPC default security group"
+   },
+   "DependsOn": [
+    "CustomVpcRestrictDefaultSGCustomResourceProviderRole26592FE0"
+   ]
+  },
+  "EgressBucket1ABE5DC5": {
+   "Type": "AWS::S3::Bucket",
+   "Properties": {
+    "PublicAccessBlockConfiguration": {
+     "BlockPublicAcls": true,
+     "BlockPublicPolicy": true,
+     "IgnorePublicAcls": true,
+     "RestrictPublicBuckets": true
+    },
+    "Tags": [
+     {
+      "Key": "aws-cdk:auto-delete-objects",
+      "Value": "true"
+     }
+    ]
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "EgressBucketPolicyBE4DCA6C": {
+   "Type": "AWS::S3::BucketPolicy",
+   "Properties": {
+    "Bucket": {
+     "Ref": "EgressBucket1ABE5DC5"
+    },
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": "s3:*",
+       "Condition": {
+        "Bool": {
+         "aws:SecureTransport": "false"
+        }
+       },
+       "Effect": "Deny",
+       "Principal": {
+        "AWS": "*"
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "EgressBucket1ABE5DC5",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "EgressBucket1ABE5DC5",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:DeleteObject*",
+        "s3:GetBucket*",
+        "s3:List*",
+        "s3:PutBucketPolicy"
+       ],
+       "Effect": "Allow",
+       "Principal": {
+        "AWS": {
+         "Fn::GetAtt": [
+          "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+          "Arn"
+         ]
+        }
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "EgressBucket1ABE5DC5",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "EgressBucket1ABE5DC5",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": "s3:GetObject",
+       "Condition": {
+        "StringEquals": {
+         "aws:SourceVpce": {
+          "Ref": "VpcS3Endpoint4A3DE4B5"
+         }
+        }
+       },
+       "Effect": "Allow",
+       "Principal": {
+        "AWS": "*"
+       },
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "EgressBucket1ABE5DC5",
+            "Arn"
+           ]
+          },
+          "/egress.txt"
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    }
+   }
+  },
+  "EgressBucketAutoDeleteObjectsCustomResourceB85706DA": {
+   "Type": "Custom::S3AutoDeleteObjects",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F",
+      "Arn"
+     ]
+    },
+    "BucketName": {
+     "Ref": "EgressBucket1ABE5DC5"
+    }
+   },
+   "DependsOn": [
+    "EgressBucketPolicyBE4DCA6C"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Version": "2012-10-17",
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ]
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+     }
+    ]
+   }
+  },
+  "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip"
+    },
+    "Timeout": 900,
+    "MemorySize": 128,
+    "Handler": "index.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs24.x",
+    "Description": {
+     "Fn::Join": [
+      "",
+      [
+       "Lambda function for auto-deleting objects in ",
+       {
+        "Ref": "EgressBucket1ABE5DC5"
+       },
+       " S3 bucket."
+      ]
+     ]
+    }
+   },
+   "DependsOn": [
+    "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092"
+   ]
+  },
+  "ConnectorSecurityGroup5AD7DC86": {
+   "Type": "AWS::EC2::SecurityGroup",
+   "Properties": {
+    "GroupDescription": "WebFunctionNetworkConnectorStack/ConnectorSecurityGroup",
+    "SecurityGroupEgress": [
+     {
+      "CidrIp": "0.0.0.0/0",
+      "Description": "Allow all outbound traffic by default",
+      "IpProtocol": "-1"
+     }
+    ],
+    "VpcId": {
+     "Ref": "Vpc8378EB38"
+    }
+   }
+  },
+  "ConnectorOperatorRoleC4EE1CDE": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/AWSLambdaNetworkConnectorOperatorPolicy"
+       ]
+      ]
+     }
+    ]
+   }
+  },
+  "ConnectorC537A2FB": {
+   "Type": "AWS::Lambda::NetworkConnector",
+   "Properties": {
+    "Configuration": {
+     "VpcEgressConfiguration": {
+      "AssociatedComputeResourceTypes": [
+       "WebFunction"
+      ],
+      "NetworkProtocol": "IPv4",
+      "SecurityGroupIds": [
+       {
+        "Fn::GetAtt": [
+         "ConnectorSecurityGroup5AD7DC86",
+         "GroupId"
+        ]
+       }
+      ],
+      "SubnetIds": [
+       {
+        "Ref": "VpcisolatedSubnet1SubnetE62B1B9B"
+       },
+       {
+        "Ref": "VpcisolatedSubnet2Subnet39217055"
+       }
+      ]
+     }
+    },
+    "OperatorRole": {
+     "Fn::GetAtt": [
+      "ConnectorOperatorRoleC4EE1CDE",
+      "Arn"
+     ]
+    }
+   }
+  },
+  "FunctionServiceRole675BB04A": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "FunctionCodeCopyd61909107AB50639": {
+   "Type": "Custom::S3ObjectCopy",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085",
+      "Arn"
+     ]
+    },
+    "SourceBucketName": {
+     "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+    },
+    "SourceObjectKey": "f43caef5f59d8d69c7a740076b980608cb5d502efb430a777568820012525e43.zip",
+    "DestinationBucketName": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    "DestinationKeyPrefix": "web-function/WebFunctionNetworkConnectorStackFunction4CFB0255/",
+    "ContentHash": "f43caef5f59d8d69c7a740076b980608cb5d502efb430a777568820012525e43",
+    "Configuration": {
+     "Properties": {
+      "BuildConfig": {
+       "RuntimeConfig": {
+        "Runtime": "ea70e0b0f76ff72b61a06c9d0f7ca9ad"
+       }
+      },
+      "FunctionName": {
+       "Ref": "Function042596DC"
+      },
+      "ServiceConfig": {
+       "EgressNetworkConnectorArn": {
+        "Fn::GetAtt": [
+         "ConnectorC537A2FB",
+         "LatestVersionArn"
+        ]
+       },
+       "EnvironmentVariables": {
+        "OBJECT_URL": {
+         "Fn::Join": [
+          "",
+          [
+           "f8eae6750519389e078e1eb1bcb3d708",
+           {
+            "Fn::GetAtt": [
+             "EgressBucket1ABE5DC5",
+             "RegionalDomainName"
+            ]
+           },
+           "68159f03775c1e8adfdef7c9f447c72a"
+          ]
+         ]
+        }
+       },
+       "ExecutionRoleArn": {
+        "Fn::GetAtt": [
+         "FunctionServiceRole675BB04A",
+         "Arn"
+        ]
+       },
+       "TelemetryConfig": {
+        "LoggingConfig": {
+         "LogGroup": {
+          "Ref": "FunctionLogGroup55B80E27"
+         }
+        }
+       },
+       "TimeoutSeconds": 30
+      }
+     },
+     "References": []
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "FunctionLogGroup55B80E27": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "Function042596DC": {
+   "Type": "AWS::Lambda::WebFunction",
+   "Properties": {
+    "FunctionName": "WebFunctionNetwotorStackFunction4CFB0255"
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "FunctionRevision22F51A9C": {
+   "Type": "AWS::Lambda::WebFunctionRevision",
+   "Properties": {
+    "BuildConfig": {
+     "CodeConfig": {
+      "S3Object": {
+       "Bucket": {
+        "Fn::GetAtt": [
+         "FunctionCodeCopyd61909107AB50639",
+         "Bucket"
+        ]
+       },
+       "Key": {
+        "Fn::GetAtt": [
+         "FunctionCodeCopyd61909107AB50639",
+         "Key"
+        ]
+       },
+       "VersionId": {
+        "Fn::GetAtt": [
+         "FunctionCodeCopyd61909107AB50639",
+         "VersionId"
+        ]
+       }
+      }
+     },
+     "RuntimeConfig": {
+      "Runtime": "nodejs24.x"
+     }
+    },
+    "FunctionName": {
+     "Ref": "Function042596DC"
+    },
+    "ServiceConfig": {
+     "EgressNetworkConnectorArn": {
+      "Fn::GetAtt": [
+       "ConnectorC537A2FB",
+       "LatestVersionArn"
+      ]
+     },
+     "EnvironmentVariables": {
+      "OBJECT_URL": {
+       "Fn::Join": [
+        "",
+        [
+         "https://",
+         {
+          "Fn::GetAtt": [
+           "EgressBucket1ABE5DC5",
+           "RegionalDomainName"
+          ]
+         },
+         "/egress.txt"
+        ]
+       ]
+      }
+     },
+     "ExecutionRoleArn": {
+      "Fn::GetAtt": [
+       "FunctionServiceRole675BB04A",
+       "Arn"
+      ]
+     },
+     "TelemetryConfig": {
+      "LoggingConfig": {
+       "LogGroup": {
+        "Ref": "FunctionLogGroup55B80E27"
+       }
+      }
+     },
+     "TimeoutSeconds": 30
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7",
+    "Function042596DC"
+   ]
+  },
+  "FunctionEndpoint85BE574A": {
+   "Type": "AWS::Lambda::WebFunctionEndpoint",
+   "Properties": {
+    "AuthType": "ApplicationManaged",
+    "EndpointName": "prod",
+    "EndpointType": "HomeRegion",
+    "FunctionName": {
+     "Fn::GetAtt": [
+      "Function042596DC",
+      "FunctionArn"
+     ]
+    },
+    "RevisionWeights": [
+     {
+      "RevisionId": {
+       "Fn::GetAtt": [
+        "FunctionRevision22F51A9C",
+        "RevisionId"
+       ]
+      },
+      "Weight": 100
+     }
+    ]
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7",
+    "Function042596DC",
+    "FunctionRevision22F51A9C"
+   ]
+  },
+  "AWSCDKWebFunctionAssetBucket5B596593": {
+   "Type": "AWS::S3::Bucket",
+   "Properties": {
+    "BucketEncryption": {
+     "ServerSideEncryptionConfiguration": [
+      {
+       "ServerSideEncryptionByDefault": {
+        "SSEAlgorithm": "AES256"
+       }
+      }
+     ]
+    },
+    "PublicAccessBlockConfiguration": {
+     "BlockPublicAcls": true,
+     "BlockPublicPolicy": true,
+     "IgnorePublicAcls": true,
+     "RestrictPublicBuckets": true
+    },
+    "Tags": [
+     {
+      "Key": "aws-cdk:auto-delete-objects",
+      "Value": "true"
+     }
+    ],
+    "VersioningConfiguration": {
+     "Status": "Enabled"
+    }
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "AWSCDKWebFunctionAssetBucketPolicy406CF5E7": {
+   "Type": "AWS::S3::BucketPolicy",
+   "Properties": {
+    "Bucket": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": "s3:*",
+       "Condition": {
+        "Bool": {
+         "aws:SecureTransport": "false"
+        }
+       },
+       "Effect": "Deny",
+       "Principal": {
+        "AWS": "*"
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "AWSCDKWebFunctionAssetBucket5B596593",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "AWSCDKWebFunctionAssetBucket5B596593",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:DeleteObject*",
+        "s3:GetBucket*",
+        "s3:List*",
+        "s3:PutBucketPolicy"
+       ],
+       "Effect": "Allow",
+       "Principal": {
+        "AWS": {
+         "Fn::GetAtt": [
+          "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+          "Arn"
+         ]
+        }
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "AWSCDKWebFunctionAssetBucket5B596593",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "AWSCDKWebFunctionAssetBucket5B596593",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:GetObject",
+        "s3:GetObjectVersion"
+       ],
+       "Condition": {
+        "StringEquals": {
+         "aws:SourceAccount": {
+          "Ref": "AWS::AccountId"
+         }
+        },
+        "ArnLike": {
+         "aws:SourceArn": {
+          "Fn::Join": [
+           "",
+           [
+            "arn:",
+            {
+             "Ref": "AWS::Partition"
+            },
+            ":lambda:",
+            {
+             "Ref": "AWS::Region"
+            },
+            ":",
+            {
+             "Ref": "AWS::AccountId"
+            },
+            ":web-function/*/revision/*"
+           ]
+          ]
+         }
+        }
+       },
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       },
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "AWSCDKWebFunctionAssetBucket5B596593",
+            "Arn"
+           ]
+          },
+          "/web-function/*"
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    }
+   }
+  },
+  "AWSCDKWebFunctionAssetBucketAutoDeleteObjectsCustomResource7C95046A": {
+   "Type": "Custom::S3AutoDeleteObjects",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F",
+      "Arn"
+     ]
+    },
+    "BucketName": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731
+   },
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   }
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207": {
+   "Type": "AWS::IAM::Policy",
+   "Properties": {
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": [
+        "s3:GetObject",
+        "s3:GetObjectVersion"
+       ],
+       "Effect": "Allow",
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          "arn:",
+          {
+           "Ref": "AWS::Partition"
+          },
+          ":s3:::",
+          {
+           "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+          },
+          "/*"
+         ]
+        ]
+       }
+      },
+      {
+       "Action": [
+        "s3:Abort*",
+        "s3:DeleteObject*",
+        "s3:PutObject",
+        "s3:PutObjectLegalHold",
+        "s3:PutObjectRetention",
+        "s3:PutObjectTagging",
+        "s3:PutObjectVersionTagging"
+       ],
+       "Effect": "Allow",
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "AWSCDKWebFunctionAssetBucket5B596593",
+            "Arn"
+           ]
+          },
+          "/web-function/*"
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "PolicyName": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207",
+    "Roles": [
+     {
+      "Ref": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"
+     }
+    ]
+   }
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip"
+    },
+    "Handler": "index.handler",
+    "LoggingConfig": {
+     "LogGroup": {
+      "Ref": "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C"
+     }
+    },
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs24.x",
+    "Timeout": 900
+   },
+   "DependsOn": [
+    "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207",
+    "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"
+   ]
+  }
+ },
+ "Outputs": {
+  "ConnectorArn": {
+   "Value": {
+    "Fn::GetAtt": [
+     "ConnectorC537A2FB",
+     "Arn"
+    ]
+   }
+  },
+  "ConnectorVersionArn": {
+   "Value": {
+    "Fn::GetAtt": [
+     "ConnectorC537A2FB",
+     "LatestVersionArn"
+    ]
+   }
+  },
+  "ExportsOutputRefEgressBucket1ABE5DC536970BD1": {
+   "Value": {
+    "Ref": "EgressBucket1ABE5DC5"
+   },
+   "Export": {
+    "Name": "WebFunctionNetworkConnectorStack:ExportsOutputRefEgressBucket1ABE5DC536970BD1"
+   }
+  },
+  "ExportsOutputFnGetAttFunctionEndpoint85BE574ADomainName48F4D80C": {
+   "Value": {
+    "Fn::GetAtt": [
+     "FunctionEndpoint85BE574A",
+     "DomainName"
+    ]
+   },
+   "Export": {
+    "Name": "WebFunctionNetworkConnectorStack:ExportsOutputFnGetAttFunctionEndpoint85BE574ADomainName48F4D80C"
+   }
+  }
+ },
+ "Parameters": {
+  "BootstrapVersion": {
+   "Type": "AWS::SSM::Parameter::Value",
+   "Default": "/cdk-bootstrap/hnb659fds/version",
+   "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
+  }
+ },
+ "Rules": {
+  "CheckBootstrapVersion": {
+   "Assertions": [
+    {
+     "Assert": {
+      "Fn::Not": [
+       {
+        "Fn::Contains": [
+         [
+          "1",
+          "2",
+          "3",
+          "4",
+          "5"
+         ],
+         {
+          "Ref": "BootstrapVersion"
+         }
+        ]
+       }
+      ]
+     },
+     "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
+    }
+   ]
+  }
+ }
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.assets.json
new file mode 100644
index 0000000000000..5c2dc000078b6
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.assets.json
@@ -0,0 +1,33 @@
+{
+  "version": "55.0.0",
+  "files": {
+    "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57": {
+      "source": {
+        "path": "asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-d3646850": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "4d11b10f03db842d861be3da63774f57d182c9f11fdd221007b3126e81464fb0": {
+      "displayName": "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309 Template",
+      "source": {
+        "path": "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.template.json",
+        "packaging": "file"
+      },
+      "destinations": {
+        "current_account-current_region-fa215d6b": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "4d11b10f03db842d861be3da63774f57d182c9f11fdd221007b3126e81464fb0.json",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    }
+  },
+  "dockerImages": {}
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.metadata.json
new file mode 100644
index 0000000000000..5ac1b01009d52
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.metadata.json
@@ -0,0 +1,88 @@
+{
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert": [
+    {
+      "type": "aws:cdk:warning",
+      "data": "No cross-stack-reference strength configured, defaulting to \"strong\". We recommend you set feature flag \"@aws-cdk/core:defaultCrossStackReferences\" to \"both\", then deploy everywhere, then set it to \"weak\". Alternatively, set it to \"strong\" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength) [ack: @aws-cdk/core:crossStackReferencesDefaultStrong]",
+      "trace": [
+        "Annotations.addMessage (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:244:29)",
+        "Annotations.addWarningV2 (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:113:18)",
+        "resolveValue (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:215:54)",
+        "resolveReferencesInElements (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:139:30)",
+        "resolveReferences (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:124:5)",
+        "prepareApp (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/prepare-app.js:35:36)",
+        "synthesize (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/synthesis.js:72:36)",
+        "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/stage.js:230:96)",
+        "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:231:27)",
+        "process. (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:178:51)",
+        "Object.onceWrapper (node:events:634:26)",
+        "process.emit (node:events:519:28)"
+      ]
+    },
+    {
+      "type": "aws:cdk:templateFile",
+      "data": "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.template.json"
+    }
+  ],
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/BootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "BootstrapVersion"
+    }
+  ],
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/CheckBootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CheckBootstrapVersion"
+    }
+  ],
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97/Default": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73"
+    }
+  ],
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F"
+    }
+  ],
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/HttpApiCall1e076b772eb3ca399ac7583a5f5035eb/Default": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/HttpApiCall1e076b772eb3ca399ac7583a5f5035eb/AssertionResults": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AssertionResultsHttpApiCall1e076b772eb3ca399ac7583a5f5035eb"
+    }
+  ],
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97/Default/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97"
+    }
+  ],
+  "/WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/HttpApiCall1e076b772eb3ca399ac7583a5f5035eb/Default/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "HttpApiCall1e076b772eb3ca399ac7583a5f5035eb"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.template.json
new file mode 100644
index 0000000000000..5e1e726ce93fa
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.template.json
@@ -0,0 +1,179 @@
+{
+ "Resources": {
+  "AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97": {
+   "Type": "Custom::DeployAssert@SdkCallS3putObject",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F",
+      "Arn"
+     ]
+    },
+    "service": "S3",
+    "api": "putObject",
+    "parameters": {
+     "Bucket": {
+      "Fn::Join": [
+       "",
+       [
+        "\"",
+        {
+         "Fn::ImportValue": "WebFunctionNetworkConnectorStack:ExportsOutputRefEgressBucket1ABE5DC536970BD1"
+        },
+        "\""
+       ]
+      ]
+     },
+     "Key": "\"egress.txt\"",
+     "Body": "\"reached-through-the-vpc\""
+    },
+    "flattenResponse": "false",
+    "salt": "1793235139729"
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Version": "2012-10-17",
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ]
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+     }
+    ],
+    "Policies": [
+     {
+      "PolicyName": "Inline",
+      "PolicyDocument": {
+       "Version": "2012-10-17",
+       "Statement": [
+        {
+         "Action": [
+          "s3:PutObject"
+         ],
+         "Effect": "Allow",
+         "Resource": [
+          "*"
+         ]
+        }
+       ]
+      }
+     }
+    ]
+   }
+  },
+  "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Runtime": "nodejs24.x",
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip"
+    },
+    "Timeout": 120,
+    "Handler": "index.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73",
+      "Arn"
+     ]
+    },
+    "LoggingConfig": {
+     "LogFormat": "JSON",
+     "ApplicationLogLevel": "FATAL"
+    }
+   }
+  },
+  "HttpApiCall1e076b772eb3ca399ac7583a5f5035eb": {
+   "Type": "Custom::DeployAssert@HttpCall",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F",
+      "Arn"
+     ]
+    },
+    "parameters": {
+     "url": {
+      "Fn::Join": [
+       "",
+       [
+        "https://",
+        {
+         "Fn::ImportValue": "WebFunctionNetworkConnectorStack:ExportsOutputFnGetAttFunctionEndpoint85BE574ADomainName48F4D80C"
+        },
+        "/"
+       ]
+      ]
+     }
+    },
+    "expected": "{\"$ObjectLike\":{\"status\":200,\"body\":{\"object\":\"reached-through-the-vpc\"}}}",
+    "flattenResponse": "false",
+    "salt": "1793235139730"
+   },
+   "DependsOn": [
+    "AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  }
+ },
+ "Outputs": {
+  "AssertionResultsHttpApiCall1e076b772eb3ca399ac7583a5f5035eb": {
+   "Value": {
+    "Fn::GetAtt": [
+     "HttpApiCall1e076b772eb3ca399ac7583a5f5035eb",
+     "assertion"
+    ]
+   }
+  }
+ },
+ "Parameters": {
+  "BootstrapVersion": {
+   "Type": "AWS::SSM::Parameter::Value",
+   "Default": "/cdk-bootstrap/hnb659fds/version",
+   "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
+  }
+ },
+ "Rules": {
+  "CheckBootstrapVersion": {
+   "Assertions": [
+    {
+     "Assert": {
+      "Fn::Not": [
+       {
+        "Fn::Contains": [
+         [
+          "1",
+          "2",
+          "3",
+          "4",
+          "5"
+         ],
+         {
+          "Ref": "BootstrapVersion"
+         }
+        ]
+       }
+      ]
+     },
+     "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
+    }
+   ]
+  }
+ }
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js
new file mode 100644
index 0000000000000..1002ba018e9fb
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js
@@ -0,0 +1 @@
+"use strict";var f=Object.create;var i=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var A=(t,e)=>{for(var o in e)i(t,o,{get:e[o],enumerable:!0})},d=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of C(e))!P.call(t,s)&&s!==o&&i(t,s,{get:()=>e[s],enumerable:!(r=I(e,s))||r.enumerable});return t};var l=(t,e,o)=>(o=t!=null?f(w(t)):{},d(e||!t||!t.__esModule?i(o,"default",{value:t,enumerable:!0}):o,t)),B=t=>d(i({},"__esModule",{value:!0}),t);var q={};A(q,{autoDeleteHandler:()=>S,handler:()=>H});module.exports=B(q);var h=require("@aws-sdk/client-s3");var y=l(require("https")),m=l(require("url")),a={sendHttpRequest:D,log:T,includeStackTraces:!0,userHandlerIndex:"./index"},p="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",L="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function R(t){return async(e,o)=>{let r={...e,ResponseURL:"..."};if(a.log(JSON.stringify(r,void 0,2)),e.RequestType==="Delete"&&e.PhysicalResourceId===p){a.log("ignoring DELETE event caused by a failed CREATE event"),await u("SUCCESS",e);return}try{let s=await t(r,o),n=k(e,s);await u("SUCCESS",n)}catch(s){let n={...e,Reason:a.includeStackTraces?s.stack:s.message};n.PhysicalResourceId||(e.RequestType==="Create"?(a.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),n.PhysicalResourceId=p):a.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(e)}`)),await u("FAILED",n)}}}function k(t,e={}){let o=e.PhysicalResourceId??t.PhysicalResourceId??t.RequestId;if(t.RequestType==="Delete"&&o!==t.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${t.PhysicalResourceId}" to "${e.PhysicalResourceId}" during deletion`);return{...t,...e,PhysicalResourceId:o}}async function u(t,e){let o={Status:t,Reason:e.Reason??t,StackId:e.StackId,RequestId:e.RequestId,PhysicalResourceId:e.PhysicalResourceId||L,LogicalResourceId:e.LogicalResourceId,NoEcho:e.NoEcho,Data:e.Data},r=m.parse(e.ResponseURL),s=`${r.protocol}//${r.hostname}/${r.pathname}?***`;a.log("submit response to cloudformation",s,o);let n=JSON.stringify(o),E={hostname:r.hostname,path:r.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(n,"utf8")}};await O({attempts:5,sleep:1e3},a.sendHttpRequest)(E,n)}async function D(t,e){return new Promise((o,r)=>{try{let s=y.request(t,n=>{n.resume(),!n.statusCode||n.statusCode>=400?r(new Error(`Unsuccessful HTTP response: ${n.statusCode}`)):o()});s.on("error",r),s.write(e),s.end()}catch(s){r(s)}})}function T(t,...e){console.log(t,...e)}function O(t,e){return async(...o)=>{let r=t.attempts,s=t.sleep;for(;;)try{return await e(...o)}catch(n){if(r--<=0)throw n;await b(Math.floor(Math.random()*s)),s*=2}}}async function b(t){return new Promise(e=>setTimeout(e,t))}var g="aws-cdk:auto-delete-objects",x=JSON.stringify({Version:"2012-10-17",Statement:[]}),c=new h.S3({}),H=R(S);async function S(t){switch(t.RequestType){case"Create":return;case"Update":return{PhysicalResourceId:(await F(t)).PhysicalResourceId};case"Delete":return N(t.ResourceProperties?.BucketName)}}async function F(t){let e=t,o=e.OldResourceProperties?.BucketName;return{PhysicalResourceId:e.ResourceProperties?.BucketName??o}}async function _(t){try{let e=(await c.getBucketPolicy({Bucket:t}))?.Policy??x,o=JSON.parse(e);o.Statement.push({Principal:"*",Effect:"Deny",Action:["s3:PutObject"],Resource:[`arn:aws:s3:::${t}/*`]}),await c.putBucketPolicy({Bucket:t,Policy:JSON.stringify(o)})}catch(e){if(e.name==="NoSuchBucket")throw e;console.log(`Could not set new object deny policy on bucket '${t}' prior to deletion.`)}}async function U(t){let e;do{e=await c.listObjectVersions({Bucket:t});let o=[...e.Versions??[],...e.DeleteMarkers??[]];if(o.length===0)return;let r=o.map(s=>({Key:s.Key,VersionId:s.VersionId}));await c.deleteObjects({Bucket:t,Delete:{Objects:r}})}while(e?.IsTruncated)}async function N(t){if(!t)throw new Error("No BucketName was provided.");try{if(!await W(t)){console.log(`Bucket does not have '${g}' tag, skipping cleaning.`);return}await _(t),await U(t)}catch(e){if(e.name==="NoSuchBucket"){console.log(`Bucket '${t}' does not exist.`);return}throw e}}async function W(t){return(await c.getBucketTagging({Bucket:t})).TagSet?.some(o=>o.Key===g&&o.Value==="true")}0&&(module.exports={autoDeleteHandler,handler});
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js
new file mode 100644
index 0000000000000..44fb7e8727ea5
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js
@@ -0,0 +1,117765 @@
+"use strict";
+var __create = Object.create;
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __getProtoOf = Object.getPrototypeOf;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
+var __typeError = (msg) => {
+  throw TypeError(msg);
+};
+var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
+var __esm = (fn, res, err) => function __init() {
+  if (err) throw err[0];
+  try {
+    return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
+  } catch (e) {
+    throw err = [e], e;
+  }
+};
+var __commonJS = (cb, mod) => function __require() {
+  try {
+    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
+  } catch (e) {
+    throw mod = 0, e;
+  }
+};
+var __export = (target, all) => {
+  for (var name in all)
+    __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+  if (from && typeof from === "object" || typeof from === "function") {
+    for (let key of __getOwnPropNames(from))
+      if (!__hasOwnProp.call(to, key) && key !== except)
+        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+  }
+  return to;
+};
+var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
+var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
+  // If the importer is in node compatibility mode or this is not an ESM
+  // file that has been converted to a CommonJS file using a Babel-
+  // compatible transform (i.e. "__esModule" has not been set), then set
+  // "default" to the CommonJS "module.exports" for node compatibility.
+  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
+  mod
+));
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
+var __decoratorStart = (base) => [, , , __create(base?.[__knownSymbol("metadata")] ?? null)];
+var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
+var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn;
+var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null)) });
+var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]);
+var __runInitializers = (array, flags, self2, value) => {
+  for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self2) : value = fns[i].call(self2, value);
+  return value;
+};
+var __decorateElement = (array, flags, name, decorators, target, extra) => {
+  var fn, it, done, ctx, access, k = flags & 7, s = !!(flags & 8), p = !!(flags & 16);
+  var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0, key = __decoratorStrings[k + 5];
+  var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
+  var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [name]() {
+    return __privateGet(this, extra);
+  }, set [name](x) {
+    return __privateSet(this, extra, x);
+  } }, name));
+  k ? p && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name(target, name);
+  for (var i = decorators.length - 1; i >= 0; i--) {
+    ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
+    if (k) {
+      ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) => name in x };
+      if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];
+      if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y;
+    }
+    it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;
+    if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it);
+    else if (typeof it !== "object" || it === null) __typeError("Object expected");
+    else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);
+  }
+  return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;
+};
+var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
+var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
+var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the "in" operator on this value') : member.has(obj);
+var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
+var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
+var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
+var __using = (stack, value, async) => {
+  if (value != null) {
+    if (typeof value !== "object" && typeof value !== "function") __typeError("Object expected");
+    var dispose, inner;
+    if (async) dispose = value[__knownSymbol("asyncDispose")];
+    if (dispose === void 0) {
+      dispose = value[__knownSymbol("dispose")];
+      if (async) inner = dispose;
+    }
+    if (typeof dispose !== "function") __typeError("Object not disposable");
+    if (inner) dispose = function() {
+      try {
+        inner.call(this);
+      } catch (e) {
+        return Promise.reject(e);
+      }
+    };
+    stack.push([async, dispose, value]);
+  } else if (async) {
+    stack.push([async]);
+  }
+  return value;
+};
+var __callDispose = (stack, error, hasError) => {
+  var E = typeof SuppressedError === "function" ? SuppressedError : function(e, s, m, _) {
+    return _ = Error(m), _.name = "SuppressedError", _.error = e, _.suppressed = s, _;
+  };
+  var fail = (e) => error = hasError ? new E(e, error, "An error was suppressed during disposal") : (hasError = true, e);
+  var next = (it) => {
+    while (it = stack.pop()) {
+      try {
+        var result = it[1] && it[1].call(it[2]);
+        if (it[0]) return Promise.resolve(result).then(next, (e) => (fail(e), next()));
+      } catch (e) {
+        fail(e);
+      }
+    }
+    if (hasError) throw error;
+  };
+  return next();
+};
+
+// ../../aws-cdk-lib/assertions/lib/matcher.ts
+var matcher_exports = {};
+__export(matcher_exports, {
+  MatchResult: () => MatchResult,
+  Matcher: () => Matcher
+});
+function* range(n) {
+  for (let i = 0; i < n; i++) {
+    yield i;
+  }
+}
+function* enumFirst(xs) {
+  let first = true;
+  for (const x of xs) {
+    yield [first, x];
+    first = false;
+  }
+}
+var Matcher, MatchResult;
+var init_matcher = __esm({
+  "../../aws-cdk-lib/assertions/lib/matcher.ts"() {
+    "use strict";
+    Matcher = class _Matcher {
+      /**
+       * Check whether the provided object is a subtype of the `IMatcher`.
+       */
+      static isMatcher(x) {
+        return x && x instanceof _Matcher;
+      }
+    };
+    MatchResult = class {
+      /**
+       * The target for which this result was generated.
+       */
+      target;
+      failuresHere = /* @__PURE__ */ new Map();
+      captures = /* @__PURE__ */ new Map();
+      finalized = false;
+      innerMatchFailures = /* @__PURE__ */ new Map();
+      _hasFailed = false;
+      _failCount = 0;
+      _cost = 0;
+      constructor(target) {
+        this.target = target;
+      }
+      /**
+       * DEPRECATED
+       * @deprecated use recordFailure()
+       */
+      push(matcher, path23, message) {
+        return this.recordFailure({ matcher, path: path23, message });
+      }
+      /**
+       * Record a new failure into this result at a specific path.
+       */
+      recordFailure(failure) {
+        const failKey = failure.path.join(".");
+        let list = this.failuresHere.get(failKey);
+        if (!list) {
+          list = [];
+          this.failuresHere.set(failKey, list);
+        }
+        this._failCount += 1;
+        this._cost += failure.cost ?? 1;
+        list.push(failure);
+        this._hasFailed = true;
+        return this;
+      }
+      /** Whether the match is a success */
+      get isSuccess() {
+        return !this._hasFailed;
+      }
+      /** Does the result contain any failures. If not, the result is a success */
+      hasFailed() {
+        return this._hasFailed;
+      }
+      /** The number of failures */
+      get failCount() {
+        return this._failCount;
+      }
+      /** The cost of the failures so far */
+      get failCost() {
+        return this._cost;
+      }
+      /**
+       * Compose the results of a previous match as a subtree.
+       * @param id the id of the parent tree.
+       */
+      compose(id, inner) {
+        if (inner.hasFailed()) {
+          this._hasFailed = true;
+          this._failCount += inner.failCount;
+          this._cost += inner._cost;
+          this.innerMatchFailures.set(id, inner);
+        }
+        inner.captures.forEach((vals, capture) => {
+          vals.forEach((value) => this.recordCapture({ capture, value }));
+        });
+        return this;
+      }
+      /**
+       * Prepare the result to be analyzed.
+       * This API *must* be called prior to analyzing these results.
+       */
+      finished() {
+        if (this.finalized) {
+          return this;
+        }
+        if (this.failCount === 0) {
+          this.captures.forEach((vals, cap) => cap._captured.push(...vals));
+        }
+        this.finalized = true;
+        return this;
+      }
+      /**
+       * Render the failed match in a presentable way
+       *
+       * Prefer using `renderMismatch` over this method. It is left for backwards
+       * compatibility for test suites that expect it, but `renderMismatch()` will
+       * produce better output.
+       */
+      toHumanStrings() {
+        const failures = new Array();
+        recurse(this, []);
+        return failures.map((r) => {
+          const loc = r.path.length === 0 ? "" : ` at /${r.path.join("/")}`;
+          return "" + r.message + loc + ` (using ${r.matcher.name} matcher)`;
+        });
+        function recurse(x, prefix) {
+          for (const fail of Array.from(x.failuresHere.values()).flat()) {
+            failures.push({
+              matcher: fail.matcher,
+              message: fail.message,
+              path: [...prefix, ...fail.path]
+            });
+          }
+          for (const [key, inner] of x.innerMatchFailures.entries()) {
+            recurse(inner, [...prefix, key]);
+          }
+        }
+      }
+      /**
+       * Do a deep render of the match result, showing the structure mismatches in context
+       */
+      renderMismatch() {
+        if (!this.hasFailed()) {
+          return "";
+        }
+        const parts = new Array();
+        const indents = new Array();
+        emitFailures(this, "");
+        recurse(this);
+        return moveMarkersToFront(parts.join("").trimEnd());
+        function emit(x) {
+          if (x === void 0) {
+            debugger;
+          }
+          parts.push(x.replace(/\n/g, `
+${indents.join("")}`));
+        }
+        function emitFailures(r, path23, scrapSet) {
+          for (const fail of r.failuresHere.get(path23) ?? []) {
+            emit(`!! ${fail.message}
+`);
+          }
+          scrapSet?.delete(path23);
+        }
+        function recurse(r) {
+          const remainingFailures = new Set(Array.from(r.failuresHere.keys()).filter((x) => x !== ""));
+          if (Array.isArray(r.target)) {
+            indents.push("  ");
+            emit("[\n");
+            for (const [first, i] of enumFirst(range(r.target.length))) {
+              if (!first) {
+                emit(",\n");
+              }
+              emitFailures(r, `${i}`, remainingFailures);
+              const innerMatcher = r.innerMatchFailures.get(`${i}`);
+              if (innerMatcher) {
+                emitFailures(innerMatcher, "");
+                recurseComparingValues(innerMatcher, r.target[i]);
+              } else {
+                emit(renderAbridged(r.target[i]));
+              }
+            }
+            emitRemaining();
+            indents.pop();
+            emit("\n]");
+            return;
+          }
+          if (r.target && typeof r.target === "object") {
+            indents.push("  ");
+            emit("{\n");
+            const keys = Array.from(/* @__PURE__ */ new Set([
+              ...Object.keys(r.target),
+              ...Array.from(remainingFailures)
+            ])).sort();
+            for (const [first, key] of enumFirst(keys)) {
+              if (!first) {
+                emit(",\n");
+              }
+              emitFailures(r, key, remainingFailures);
+              const innerMatcher = r.innerMatchFailures.get(key);
+              if (innerMatcher) {
+                emitFailures(innerMatcher, "");
+                emit(`${jsonify(key)}: `);
+                recurseComparingValues(innerMatcher, r.target[key]);
+              } else {
+                emit(`${jsonify(key)}: `);
+                emit(renderAbridged(r.target[key]));
+              }
+            }
+            emitRemaining();
+            indents.pop();
+            emit("\n}");
+            return;
+          }
+          emitRemaining();
+          emit(jsonify(r.target));
+          function emitRemaining() {
+            if (remainingFailures.size > 0) {
+              emit("\n");
+            }
+            for (const key of remainingFailures) {
+              emitFailures(r, key);
+            }
+          }
+        }
+        function recurseComparingValues(inner, actualValue) {
+          if (inner.target === actualValue) {
+            return recurse(inner);
+          }
+          emit(renderAbridged(actualValue));
+          emit(" <*> ");
+          recurse(inner);
+        }
+        function renderAbridged(x) {
+          if (Array.isArray(x)) {
+            switch (x.length) {
+              case 0:
+                return "[]";
+              case 1:
+                return `[ ${renderAbridged(x[0])} ]`;
+              case 2:
+                if (x.every((e) => ["number", "boolean", "string"].includes(typeof e))) {
+                  return `[ ${x.map(renderAbridged).join(", ")} ]`;
+                }
+                return "[ ... ]";
+              default:
+                return "[ ... ]";
+            }
+          }
+          if (x && typeof x === "object") {
+            const keys = Object.keys(x);
+            switch (keys.length) {
+              case 0:
+                return "{}";
+              case 1:
+                return `{ ${JSON.stringify(keys[0])}: ${renderAbridged(x[keys[0]])} }`;
+              default:
+                return "{ ... }";
+            }
+          }
+          return jsonify(x);
+        }
+        function jsonify(x) {
+          return JSON.stringify(x) ?? "undefined";
+        }
+        function moveMarkersToFront(x) {
+          const re = /^(\s+)!!/gm;
+          return x.replace(re, (_, spaces) => `!!${spaces.substring(0, spaces.length - 2)}`);
+        }
+      }
+      /**
+       * Record a capture against in this match result.
+       */
+      recordCapture(options) {
+        let values = this.captures.get(options.capture);
+        if (values === void 0) {
+          values = [];
+        }
+        values.push(options.value);
+        this.captures.set(options.capture, values);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/error.ts
+var ASSERTION_ERROR_SYMBOL, AssertionError;
+var init_error = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/error.ts"() {
+    "use strict";
+    ASSERTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/assertions.AssertionError");
+    AssertionError = class _AssertionError extends Error {
+      #time;
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return this.#time;
+      }
+      get type() {
+        return "assertion";
+      }
+      constructor(msg) {
+        super(msg);
+        Object.setPrototypeOf(this, _AssertionError.prototype);
+        Object.defineProperty(this, ASSERTION_ERROR_SYMBOL, { value: true });
+        this.name = new.target.name;
+        this.#time = (/* @__PURE__ */ new Date()).toISOString();
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts
+var AbsentMatch;
+var init_absent = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts"() {
+    "use strict";
+    init_matcher();
+    AbsentMatch = class extends Matcher {
+      constructor(name) {
+        super();
+        this.name = name;
+      }
+      name;
+      test(actual) {
+        const result = new MatchResult(actual);
+        if (actual !== void 0) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Received ${actual}, but key should be absent`
+          });
+        }
+        return result;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/sorting.ts
+function sortKeyComparator(keyFn) {
+  return (a, b) => {
+    const ak = keyFn(a);
+    const bk = keyFn(b);
+    for (let i = 0; i < ak.length && i < bk.length; i++) {
+      const av = ak[i];
+      const bv = bk[i];
+      let diff = 0;
+      if (typeof av === "number" && typeof bv === "number") {
+        diff = av - bv;
+      } else if (typeof av === "string" && typeof bv === "string") {
+        diff = av.localeCompare(bv);
+      }
+      if (diff !== 0) {
+        return diff;
+      }
+    }
+    return bk.length - ak.length;
+  };
+}
+var init_sorting = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/sorting.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts
+var SparseMatrix;
+var init_sparse_matrix = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts"() {
+    "use strict";
+    SparseMatrix = class {
+      matrix = /* @__PURE__ */ new Map();
+      get(row, col) {
+        return this.matrix.get(row)?.get(col);
+      }
+      row(row) {
+        return Array.from(this.matrix.get(row)?.entries() ?? []);
+      }
+      set(row, col, value) {
+        let r = this.matrix.get(row);
+        if (!r) {
+          r = /* @__PURE__ */ new Map();
+          this.matrix.set(row, r);
+        }
+        r.set(col, value);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/type.ts
+function getType(obj) {
+  return Array.isArray(obj) ? "array" : typeof obj;
+}
+var init_type = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/type.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/match.ts
+var match_exports = {};
+__export(match_exports, {
+  Match: () => Match
+});
+var Match, LiteralMatch, ArrayMatch, ObjectMatch, SerializedJson, NotMatch, AnyMatch, StringLikeRegexpMatch;
+var init_match = __esm({
+  "../../aws-cdk-lib/assertions/lib/match.ts"() {
+    "use strict";
+    init_matcher();
+    init_error();
+    init_absent();
+    init_sorting();
+    init_sparse_matrix();
+    init_type();
+    Match = class {
+      /**
+       * Use this matcher in the place of a field's value, if the field must not be present.
+       */
+      static absent() {
+        return new AbsentMatch("absent");
+      }
+      /**
+       * Matches the specified pattern with the array found in the same relative path of the target.
+       * The set of elements (or matchers) must be in the same order as would be found.
+       * @param pattern the pattern to match
+       */
+      static arrayWith(pattern) {
+        return new ArrayMatch("arrayWith", pattern);
+      }
+      /**
+       * Matches the specified pattern with the array found in the same relative path of the target.
+       * The set of elements (or matchers) must match exactly and in order.
+       * @param pattern the pattern to match
+       */
+      static arrayEquals(pattern) {
+        return new ArrayMatch("arrayEquals", pattern, { subsequence: false });
+      }
+      /**
+       * Deep exact matching of the specified pattern to the target.
+       * @param pattern the pattern to match
+       */
+      static exact(pattern) {
+        return new LiteralMatch("exact", pattern, { partialObjects: false });
+      }
+      /**
+       * Matches the specified pattern to an object found in the same relative path of the target.
+       * The keys and their values (or matchers) must be present in the target but the target can be a superset.
+       * @param pattern the pattern to match
+       */
+      static objectLike(pattern) {
+        return new ObjectMatch("objectLike", pattern);
+      }
+      /**
+       * Matches the specified pattern to an object found in the same relative path of the target.
+       * The keys and their values (or matchers) must match exactly with the target.
+       * @param pattern the pattern to match
+       */
+      static objectEquals(pattern) {
+        return new ObjectMatch("objectEquals", pattern, { partial: false });
+      }
+      /**
+       * Matches any target which does NOT follow the specified pattern.
+       * @param pattern the pattern to NOT match
+       */
+      static not(pattern) {
+        return new NotMatch("not", pattern);
+      }
+      /**
+       * Matches any string-encoded JSON and applies the specified pattern after parsing it.
+       * @param pattern the pattern to match after parsing the encoded JSON.
+       */
+      static serializedJson(pattern) {
+        return new SerializedJson("serializedJson", pattern);
+      }
+      /**
+       * Matches any non-null value at the target.
+       */
+      static anyValue() {
+        return new AnyMatch("anyValue");
+      }
+      /**
+       * Matches targets according to a regular expression
+       */
+      static stringLikeRegexp(pattern) {
+        return new StringLikeRegexpMatch("stringLikeRegexp", pattern);
+      }
+    };
+    LiteralMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.partialObjects = options.partialObjects ?? false;
+        if (Matcher.isMatcher(this.pattern)) {
+          throw new AssertionError("LiteralMatch cannot directly contain another matcher. Remove the top-level matcher or nest it more deeply.");
+        }
+      }
+      name;
+      pattern;
+      partialObjects;
+      test(actual) {
+        if (Array.isArray(this.pattern)) {
+          return new ArrayMatch(this.name, this.pattern, { subsequence: false, partialObjects: this.partialObjects }).test(actual);
+        }
+        if (typeof this.pattern === "object") {
+          return new ObjectMatch(this.name, this.pattern, { partial: this.partialObjects }).test(actual);
+        }
+        const result = new MatchResult(actual);
+        if (typeof this.pattern !== typeof actual) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type ${typeof this.pattern} but received ${getType(actual)}`
+          });
+          return result;
+        }
+        if (actual !== this.pattern) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected ${this.pattern} but received ${actual}`
+          });
+        }
+        return result;
+      }
+    };
+    ArrayMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.subsequence = options.subsequence ?? true;
+        this.partialObjects = options.partialObjects ?? false;
+      }
+      name;
+      pattern;
+      subsequence;
+      partialObjects;
+      test(actual) {
+        if (!Array.isArray(actual)) {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type array but received ${getType(actual)}`
+          });
+        }
+        return this.subsequence ? this.testSubsequence(actual) : this.testFullArray(actual);
+      }
+      testFullArray(actual) {
+        const result = new MatchResult(actual);
+        let i = 0;
+        for (; i < this.pattern.length && i < actual.length; i++) {
+          const patternElement = this.pattern[i];
+          const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects });
+          const innerResult = matcher.test(actual[i]);
+          result.compose(`${i}`, innerResult);
+        }
+        if (i < this.pattern.length) {
+          result.recordFailure({
+            matcher: this,
+            message: `Not enough elements in array (expecting ${this.pattern.length}, got ${actual.length})`,
+            path: [`${i}`]
+          });
+        }
+        if (i < actual.length) {
+          result.recordFailure({
+            matcher: this,
+            message: `Too many elements in array (expecting ${this.pattern.length}, got ${actual.length})`,
+            path: [`${i}`]
+          });
+        }
+        return result;
+      }
+      testSubsequence(actual) {
+        const result = new MatchResult(actual);
+        let patternIdx = 0;
+        let actualIdx = 0;
+        const matches = new SparseMatrix();
+        while (patternIdx < this.pattern.length && actualIdx < actual.length) {
+          const patternElement = this.pattern[patternIdx];
+          const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects });
+          const matcherName = matcher.name;
+          if (matcherName == "absent" || matcherName == "anyValue") {
+            throw new AssertionError(`The Matcher ${matcherName}() cannot be nested within arrayWith()`);
+          }
+          const innerResult = matcher.test(actual[actualIdx]);
+          matches.set(patternIdx, actualIdx, innerResult);
+          actualIdx++;
+          if (innerResult.isSuccess) {
+            result.compose(`${actualIdx}`, innerResult);
+            patternIdx++;
+          }
+        }
+        if (patternIdx < this.pattern.length) {
+          for (let spi = 0; spi < patternIdx; spi++) {
+            const foundMatch = matches.row(spi).find(([, r]) => r.isSuccess);
+            if (!foundMatch) {
+              continue;
+            }
+            const [index] = foundMatch;
+            result.compose(`${index}`, new MatchResult(actual[index]).recordFailure({
+              matcher: this,
+              message: `arrayWith pattern ${spi} matched here`,
+              path: [],
+              cost: 0
+              // This is an informational message so it would be unfair to assign it cost
+            }));
+          }
+          const failedMatches = matches.row(patternIdx);
+          failedMatches.sort(sortKeyComparator(([i, r]) => [r.failCost, i]));
+          if (failedMatches.length > 0) {
+            const [index, innerResult] = failedMatches[0];
+            result.recordFailure({
+              matcher: this,
+              message: `Could not match arrayWith pattern ${patternIdx}. This is the closest match`,
+              path: [`${index}`],
+              cost: 0
+              //  Informational message
+            });
+            result.compose(`${index}`, innerResult);
+          } else {
+            result.recordFailure({
+              matcher: this,
+              message: `Could not match arrayWith pattern ${patternIdx}. No more elements to try`,
+              path: [`${actual.length}`]
+            });
+          }
+        }
+        return result;
+      }
+    };
+    ObjectMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.partial = options.partial ?? true;
+      }
+      name;
+      pattern;
+      partial;
+      test(actual) {
+        if (typeof actual !== "object" || Array.isArray(actual)) {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type object but received ${getType(actual)}`
+          });
+        }
+        const result = new MatchResult(actual);
+        if (!this.partial) {
+          for (const a of Object.keys(actual)) {
+            if (!(a in this.pattern)) {
+              result.recordFailure({
+                matcher: this,
+                path: [a],
+                message: `Unexpected key ${a}`
+              });
+            }
+          }
+        }
+        for (const [patternKey, patternVal] of Object.entries(this.pattern)) {
+          if (!(patternKey in actual) && !(patternVal instanceof AbsentMatch)) {
+            result.recordFailure({
+              matcher: this,
+              path: [patternKey],
+              message: `Missing key '${patternKey}'`
+            });
+            continue;
+          }
+          const matcher = Matcher.isMatcher(patternVal) ? patternVal : new LiteralMatch(this.name, patternVal, { partialObjects: this.partial });
+          const inner = matcher.test(actual[patternKey]);
+          result.compose(patternKey, inner);
+        }
+        return result;
+      }
+    };
+    SerializedJson = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        if (getType(actual) !== "string") {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected JSON as a string but found ${getType(actual)}`
+          });
+        }
+        let parsed;
+        try {
+          parsed = JSON.parse(actual);
+        } catch (err) {
+          if (err instanceof SyntaxError) {
+            return new MatchResult(actual).recordFailure({
+              matcher: this,
+              path: [],
+              message: `Invalid JSON string: ${actual}`
+            });
+          } else {
+            throw err;
+          }
+        }
+        const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern);
+        const innerResult = matcher.test(parsed);
+        if (innerResult.hasFailed()) {
+          innerResult.recordFailure({
+            matcher: this,
+            path: [],
+            message: "Encoded JSON value does not match"
+          });
+        }
+        return innerResult;
+      }
+    };
+    NotMatch = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern);
+        const innerResult = matcher.test(actual);
+        const result = new MatchResult(actual);
+        if (innerResult.failCount === 0) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Found unexpected match: ${JSON.stringify(actual, void 0, 2)}`
+          });
+        }
+        return result;
+      }
+    };
+    AnyMatch = class extends Matcher {
+      constructor(name) {
+        super();
+        this.name = name;
+      }
+      name;
+      test(actual) {
+        const result = new MatchResult(actual);
+        if (actual == null) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: "Expected a value but found none"
+          });
+        }
+        return result;
+      }
+    };
+    StringLikeRegexpMatch = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        const result = new MatchResult(actual);
+        const regex = new RegExp(this.pattern, "gm");
+        if (typeof actual !== "string") {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected a string, but got '${typeof actual}'`
+          });
+        }
+        if (!regex.test(actual)) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `String '${actual}' did not match pattern '${this.pattern}'`
+          });
+        }
+        return result;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/literal-string.ts
+function lit(x) {
+  if (x.length !== 1) {
+    throw new AssumptionError("NotLiteral", `String literal may not contain any variables, got \`${x.join("${...}")}\``);
+  }
+  return x[0];
+}
+var init_literal_string = __esm({
+  "../../aws-cdk-lib/core/lib/private/literal-string.ts"() {
+    "use strict";
+    init_errors();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/runtime-info.ts
+function constructInfoFromConstruct(construct) {
+  const jsiiRuntimeInfo = Object.getPrototypeOf(construct).constructor[JSII_RUNTIME_SYMBOL];
+  if (typeof jsiiRuntimeInfo === "object" && jsiiRuntimeInfo !== null && typeof jsiiRuntimeInfo.fqn === "string" && typeof jsiiRuntimeInfo.version === "string") {
+    return {
+      fqn: jsiiRuntimeInfo.fqn,
+      version: jsiiRuntimeInfo.version
+    };
+  } else if (jsiiRuntimeInfo) {
+    throw new AssumptionError(lit`MalformedJsiiRuntimeInfo`, `malformed jsii runtime info for construct: '${construct.node.path}'`);
+  }
+  return void 0;
+}
+var JSII_RUNTIME_SYMBOL;
+var init_runtime_info = __esm({
+  "../../aws-cdk-lib/core/lib/private/runtime-info.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    JSII_RUNTIME_SYMBOL = /* @__PURE__ */ Symbol.for("jsii.rtti");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/stack-trace.ts
+function captureStackTrace(below = captureStackTrace, limit = void 0) {
+  if (!limit) {
+    return enhancedStackTrace(below, false);
+  }
+  const previousLimit = Error.stackTraceLimit;
+  try {
+    Error.stackTraceLimit = limit;
+    return enhancedStackTrace(below, false);
+  } finally {
+    Error.stackTraceLimit = previousLimit;
+  }
+}
+function enhancedStackTrace(upTo, indent = true) {
+  return withExternalTrace(renderCallStackJustMyCode(captureCallStack(upTo), indent));
+}
+function withExternalTrace(internal) {
+  const hostTrace = global[/* @__PURE__ */ Symbol.for("jsii.context.hostStackTrace")];
+  if (hostTrace != null) {
+    return internal.concat(hostTrace.slice(1).map(formatExternalFrame));
+  }
+  return internal;
+}
+function captureCallStack(upTo) {
+  const obj = {};
+  Error.captureStackTrace(obj, upTo);
+  let trace = parseErrorStack(obj.stack);
+  if (trace.length === 0) {
+    Error.captureStackTrace(obj);
+    trace = parseErrorStack(obj.stack);
+  }
+  return trace;
+}
+function formatExternalFrame(trace) {
+  const [filename, line, column, name] = trace;
+  return `${name} (${filename}:${line}${column > 0 ? ":" + column : ""})`;
+}
+function parseErrorStack(stack) {
+  const lines = stack.split("\n");
+  const framePrefix = "    at ";
+  return lines.filter((line) => line.startsWith(framePrefix)).map((line) => {
+    line = line.slice(framePrefix.length);
+    const frame = parseStackFrame(line);
+    if (frame.functionName === "Object.") {
+      frame.functionName = "";
+    }
+    return frame;
+  });
+}
+function parseStackFrame(frame) {
+  let fileName;
+  let functionName;
+  let sourceLocation;
+  const paren = frame.indexOf("(");
+  if (paren) {
+    functionName = frame.slice(0, paren - 1);
+    frame = frame.slice(paren + 1, -1);
+  } else {
+    functionName = "";
+  }
+  let asI = functionName.indexOf(" [as ");
+  if (asI > -1) {
+    const endOfAlias = functionName.indexOf("]", asI);
+    const lastPeriod = functionName.lastIndexOf(".", asI);
+    functionName = functionName.slice(0, lastPeriod + 1) + functionName.slice(asI + 5, endOfAlias);
+  }
+  const m = frame.match(/(:[0-9]+){0,2}$/);
+  fileName = m ? frame.slice(0, -m[0].length) : frame;
+  sourceLocation = m ? m[0].slice(1) : "";
+  return {
+    fileName,
+    functionName,
+    sourceLocation
+  };
+}
+function renderCallStackJustMyCode(stack, indent = true) {
+  const lines = [];
+  let skipped = new Array();
+  let sawMyCode = false;
+  let i = 0;
+  while (i < stack.length) {
+    const frame = stack[i++];
+    if (frame.fileName.match(DECORATOR_RE)) {
+      continue;
+    }
+    const pat = frame.fileName.match(MODULE_RE);
+    if (pat) {
+      while (i < stack.length && stack[i].fileName.includes(pat[0])) {
+        i++;
+      }
+      skip({ functionName: stack[i - 1].functionName, fileName: pat[3] });
+    } else if (frame.fileName.includes("node:")) {
+      skip({ fileName: "node internals" });
+      while (i < stack.length && stack[i].fileName.includes("node:")) {
+        i++;
+      }
+    } else if (isHostInternalFrame(frame)) {
+      skip({ fileName: "jsii runtime" });
+      while (i < stack.length && isHostInternalFrame(stack[i])) {
+        i++;
+      }
+    } else {
+      reportSkipped(true);
+      const prefix = indent ? "    at " : "";
+      lines.push(`${prefix}${frame.functionName} (${frame.fileName}:${frame.sourceLocation})`);
+      sawMyCode = true;
+    }
+  }
+  reportSkipped(false);
+  if (!sawMyCode) {
+    lines.push(`${indent ? "    " : ""}(no user code in ${Error.stackTraceLimit} frames, use --stack-trace-limit to capture more)`);
+  }
+  return lines;
+  function skip(what) {
+    if (!skipped.find((x) => x.fileName === what.fileName && x.functionName === what.functionName)) {
+      skipped.push(what);
+    }
+  }
+  function reportSkipped(includeFunction) {
+    if (skipped.length > 0) {
+      const rendered = skipped.map((s, j) => (
+        // Only render the function name of the last frame before user code
+        j === skipped.length - 1 && s.functionName && includeFunction ? `${s.functionName} in ${s.fileName}` : s.fileName
+      ));
+      const prefix = indent ? "    " : "";
+      lines.push(`${prefix}...${rendered.join(", ")}...`);
+    }
+    skipped = [];
+  }
+}
+function topUserFrame(stackTrace, frameFinder) {
+  for (const frame of stackTrace) {
+    if (frameFinder.isUserCodeFrame(frame)) {
+      return parseStackFrame(frame);
+    }
+  }
+  return void 0;
+}
+function isHostInternalFrame(frame) {
+  const hostDirName = global[/* @__PURE__ */ Symbol.for("jsii.context.hostDirName")];
+  return frame.fileName.includes(hostDirName);
+}
+var MODULE_RE, DECORATOR_RE, DEFAULT_STACK_FRAME_FINDER;
+var init_stack_trace = __esm({
+  "../../aws-cdk-lib/core/lib/private/stack-trace.ts"() {
+    "use strict";
+    MODULE_RE = /(\/|\\)node_modules(\/|\\)(@[^/\\]+[/\\][^/\\]+|[^@][^/\\]*)/;
+    DECORATOR_RE = /(\/|\\)(prop-injectable|no-box-stack-traces)\./;
+    DEFAULT_STACK_FRAME_FINDER = {
+      isUserCodeFrame(frame) {
+        return frame.includes(" (") && frame.endsWith(")");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js
+var require_vpc = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.VpcSubnetGroupType = void 0;
+    var VpcSubnetGroupType;
+    (function(VpcSubnetGroupType2) {
+      VpcSubnetGroupType2["PUBLIC"] = "Public";
+      VpcSubnetGroupType2["PRIVATE"] = "Private";
+      VpcSubnetGroupType2["ISOLATED"] = "Isolated";
+    })(VpcSubnetGroupType || (exports2.VpcSubnetGroupType = VpcSubnetGroupType = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js
+var require_ami = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js
+var require_load_balancer = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.LoadBalancerIpAddressType = void 0;
+    var LoadBalancerIpAddressType;
+    (function(LoadBalancerIpAddressType2) {
+      LoadBalancerIpAddressType2["IPV4"] = "ipv4";
+      LoadBalancerIpAddressType2["DUAL_STACK"] = "dualstack";
+      LoadBalancerIpAddressType2["DUAL_STACK_WITHOUT_PUBLIC_IPV4"] = "dualstack-without-public-ipv4";
+    })(LoadBalancerIpAddressType || (exports2.LoadBalancerIpAddressType = LoadBalancerIpAddressType = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js
+var require_availability_zones = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = void 0;
+    exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = "aws:cdk:availability-zones:fallback";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js
+var require_endpoint_service_availability_zones = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = void 0;
+    exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = "endpoint-service-availability-zones";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js
+var require_security_group = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js
+var require_key = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js
+var require_generic = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.PROVIDER_ERROR_KEY = void 0;
+    exports2.PROVIDER_ERROR_KEY = "$providerError";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js
+var require_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ArtifactType = void 0;
+    var ArtifactType5;
+    (function(ArtifactType6) {
+      ArtifactType6["NONE"] = "none";
+      ArtifactType6["AWS_CLOUDFORMATION_STACK"] = "aws:cloudformation:stack";
+      ArtifactType6["CDK_TREE"] = "cdk:tree";
+      ArtifactType6["ASSET_MANIFEST"] = "cdk:asset-manifest";
+      ArtifactType6["NESTED_CLOUD_ASSEMBLY"] = "cdk:cloud-assembly";
+      ArtifactType6["FEATURE_FLAG_REPORT"] = "cdk:feature-flag-report";
+    })(ArtifactType5 || (exports2.ArtifactType = ArtifactType5 = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js
+var require_metadata_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = exports2.ArtifactMetadataEntryType = void 0;
+    var ArtifactMetadataEntryType9;
+    (function(ArtifactMetadataEntryType10) {
+      ArtifactMetadataEntryType10["ASSET"] = "aws:cdk:asset";
+      ArtifactMetadataEntryType10["INFO"] = "aws:cdk:info";
+      ArtifactMetadataEntryType10["WARN"] = "aws:cdk:warning";
+      ArtifactMetadataEntryType10["ERROR"] = "aws:cdk:error";
+      ArtifactMetadataEntryType10["LOGICAL_ID"] = "aws:cdk:logicalId";
+      ArtifactMetadataEntryType10["STACK_TAGS"] = "aws:cdk:stack-tags";
+      ArtifactMetadataEntryType10["DO_NOT_REFACTOR"] = "aws:cdk:do-not-refactor";
+      ArtifactMetadataEntryType10["CREATION_STACK"] = "aws:cdk:creationStack";
+      ArtifactMetadataEntryType10["PROPERTY_ASSIGNMENT"] = "aws:cdk:propertyAssignment";
+    })(ArtifactMetadataEntryType9 || (exports2.ArtifactMetadataEntryType = ArtifactMetadataEntryType9 = {}));
+    exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = "aws:cdk:cloudformation:type";
+    exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = "aws:cdk:cloudformation:props";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js
+var require_artifact_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js
+var require_context_queries = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.LoadBalancerListenerProtocol = exports2.LoadBalancerType = exports2.ContextProvider = void 0;
+    var ContextProvider3;
+    (function(ContextProvider4) {
+      ContextProvider4["AMI_PROVIDER"] = "ami";
+      ContextProvider4["AVAILABILITY_ZONE_PROVIDER"] = "availability-zones";
+      ContextProvider4["HOSTED_ZONE_PROVIDER"] = "hosted-zone";
+      ContextProvider4["SSM_PARAMETER_PROVIDER"] = "ssm";
+      ContextProvider4["VPC_PROVIDER"] = "vpc-provider";
+      ContextProvider4["ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER"] = "endpoint-service-availability-zones";
+      ContextProvider4["LOAD_BALANCER_PROVIDER"] = "load-balancer";
+      ContextProvider4["LOAD_BALANCER_LISTENER_PROVIDER"] = "load-balancer-listener";
+      ContextProvider4["SECURITY_GROUP_PROVIDER"] = "security-group";
+      ContextProvider4["KEY_PROVIDER"] = "key-provider";
+      ContextProvider4["CC_API_PROVIDER"] = "cc-api-provider";
+      ContextProvider4["PLUGIN"] = "plugin";
+    })(ContextProvider3 || (exports2.ContextProvider = ContextProvider3 = {}));
+    var LoadBalancerType;
+    (function(LoadBalancerType2) {
+      LoadBalancerType2["NETWORK"] = "network";
+      LoadBalancerType2["APPLICATION"] = "application";
+    })(LoadBalancerType || (exports2.LoadBalancerType = LoadBalancerType = {}));
+    var LoadBalancerListenerProtocol;
+    (function(LoadBalancerListenerProtocol2) {
+      LoadBalancerListenerProtocol2["HTTP"] = "HTTP";
+      LoadBalancerListenerProtocol2["HTTPS"] = "HTTPS";
+      LoadBalancerListenerProtocol2["TCP"] = "TCP";
+      LoadBalancerListenerProtocol2["TLS"] = "TLS";
+      LoadBalancerListenerProtocol2["UDP"] = "UDP";
+      LoadBalancerListenerProtocol2["TCP_UDP"] = "TCP_UDP";
+    })(LoadBalancerListenerProtocol || (exports2.LoadBalancerListenerProtocol = LoadBalancerListenerProtocol = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js
+var require_interfaces = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js
+var require_validation_report_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js
+var require_cloud_assembly = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema(), exports2);
+    __exportStar2(require_metadata_schema(), exports2);
+    __exportStar2(require_artifact_schema(), exports2);
+    __exportStar2(require_context_queries(), exports2);
+    __exportStar2(require_interfaces(), exports2);
+    __exportStar2(require_validation_report_schema(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js
+var require_schema2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js
+var require_docker_image_asset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js
+var require_file_asset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.FileAssetPackaging = void 0;
+    var FileAssetPackaging2;
+    (function(FileAssetPackaging3) {
+      FileAssetPackaging3["FILE"] = "file";
+      FileAssetPackaging3["ZIP_DIRECTORY"] = "zip";
+    })(FileAssetPackaging2 || (exports2.FileAssetPackaging = FileAssetPackaging2 = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js
+var require_aws_destination = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js
+var require_assets = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema2(), exports2);
+    __exportStar2(require_docker_image_asset(), exports2);
+    __exportStar2(require_file_asset(), exports2);
+    __exportStar2(require_aws_destination(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js
+var require_helpers = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js"(exports2, module2) {
+    "use strict";
+    var ValidationError2 = exports2.ValidationError = function ValidationError3(message, instance, schema, path23, name, argument) {
+      if (Array.isArray(path23)) {
+        this.path = path23;
+        this.property = path23.reduce(function(sum, item) {
+          return sum + makeSuffix(item);
+        }, "instance");
+      } else if (path23 !== void 0) {
+        this.property = path23;
+      }
+      if (message) {
+        this.message = message;
+      }
+      if (schema) {
+        var id = schema.$id || schema.id;
+        this.schema = id || schema;
+      }
+      if (instance !== void 0) {
+        this.instance = instance;
+      }
+      this.name = name;
+      this.argument = argument;
+      this.stack = this.toString();
+    };
+    ValidationError2.prototype.toString = function toString2() {
+      return this.property + " " + this.message;
+    };
+    var ValidatorResult = exports2.ValidatorResult = function ValidatorResult2(instance, schema, options, ctx) {
+      this.instance = instance;
+      this.schema = schema;
+      this.options = options;
+      this.path = ctx.path;
+      this.propertyPath = ctx.propertyPath;
+      this.errors = [];
+      this.throwError = options && options.throwError;
+      this.throwFirst = options && options.throwFirst;
+      this.throwAll = options && options.throwAll;
+      this.disableFormat = options && options.disableFormat === true;
+    };
+    ValidatorResult.prototype.addError = function addError(detail) {
+      var err;
+      if (typeof detail == "string") {
+        err = new ValidationError2(detail, this.instance, this.schema, this.path);
+      } else {
+        if (!detail) throw new Error("Missing error detail");
+        if (!detail.message) throw new Error("Missing error message");
+        if (!detail.name) throw new Error("Missing validator type");
+        err = new ValidationError2(detail.message, this.instance, this.schema, this.path, detail.name, detail.argument);
+      }
+      this.errors.push(err);
+      if (this.throwFirst) {
+        throw new ValidatorResultError(this);
+      } else if (this.throwError) {
+        throw err;
+      }
+      return err;
+    };
+    ValidatorResult.prototype.importErrors = function importErrors(res) {
+      if (typeof res == "string" || res && res.validatorType) {
+        this.addError(res);
+      } else if (res && res.errors) {
+        this.errors = this.errors.concat(res.errors);
+      }
+    };
+    function stringizer(v, i) {
+      return i + ": " + v.toString() + "\n";
+    }
+    ValidatorResult.prototype.toString = function toString2(res) {
+      return this.errors.map(stringizer).join("");
+    };
+    Object.defineProperty(ValidatorResult.prototype, "valid", { get: function() {
+      return !this.errors.length;
+    } });
+    module2.exports.ValidatorResultError = ValidatorResultError;
+    function ValidatorResultError(result) {
+      if (typeof Error.captureStackTrace === "function") {
+        Error.captureStackTrace(this, ValidatorResultError);
+      }
+      this.instance = result.instance;
+      this.schema = result.schema;
+      this.options = result.options;
+      this.errors = result.errors;
+    }
+    ValidatorResultError.prototype = new Error();
+    ValidatorResultError.prototype.constructor = ValidatorResultError;
+    ValidatorResultError.prototype.name = "Validation Error";
+    var SchemaError = exports2.SchemaError = function SchemaError2(msg, schema) {
+      this.message = msg;
+      this.schema = schema;
+      Error.call(this, msg);
+      if (typeof Error.captureStackTrace === "function") {
+        Error.captureStackTrace(this, SchemaError2);
+      }
+    };
+    SchemaError.prototype = Object.create(
+      Error.prototype,
+      {
+        constructor: { value: SchemaError, enumerable: false },
+        name: { value: "SchemaError", enumerable: false }
+      }
+    );
+    var SchemaContext = exports2.SchemaContext = function SchemaContext2(schema, options, path23, base, schemas) {
+      this.schema = schema;
+      this.options = options;
+      if (Array.isArray(path23)) {
+        this.path = path23;
+        this.propertyPath = path23.reduce(function(sum, item) {
+          return sum + makeSuffix(item);
+        }, "instance");
+      } else {
+        this.propertyPath = path23;
+      }
+      this.base = base;
+      this.schemas = schemas;
+    };
+    SchemaContext.prototype.resolve = function resolve6(target) {
+      return (() => resolveUrl(this.base, target))();
+    };
+    SchemaContext.prototype.makeChild = function makeChild(schema, propertyName) {
+      var path23 = propertyName === void 0 ? this.path : this.path.concat([propertyName]);
+      var id = schema.$id || schema.id;
+      let base = (() => resolveUrl(this.base, id || ""))();
+      var ctx = new SchemaContext(schema, this.options, path23, base, Object.create(this.schemas));
+      if (id && !ctx.schemas[base]) {
+        ctx.schemas[base] = schema;
+      }
+      return ctx;
+    };
+    var FORMAT_REGEXPS = exports2.FORMAT_REGEXPS = {
+      // 7.3.1. Dates, Times, and Duration
+      "date-time": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])[tT ](2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])(\.\d+)?([zZ]|[+-]([0-5][0-9]):(60|[0-5][0-9]))$/,
+      "date": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])$/,
+      "time": /^(2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])$/,
+      "duration": /P(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S)|\d+(D|M(\d+D)?|Y(\d+M(\d+D)?)?)(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S))?|\d+W)/i,
+      // 7.3.2. Email Addresses
+      // TODO: fix the email production
+      "email": /^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/,
+      "idn-email": /^("(?:[!#-\[\]-\u{10FFFF}]|\\[\t -\u{10FFFF}])*"|[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*)@([!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*|\[[!-Z\^-\u{10FFFF}]*\])$/u,
+      // 7.3.3. Hostnames
+      // 7.3.4. IP Addresses
+      "ip-address": /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,
+      // FIXME whitespace is invalid
+      "ipv6": /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/,
+      // 7.3.5. Resource Identifiers
+      // TODO: A more accurate regular expression for "uri" goes:
+      // [A-Za-z][+\-.0-9A-Za-z]*:((/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?)?#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])|/?%[0-9A-Fa-f]{2}|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*(#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?)?
+      "uri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,
+      "uri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/,
+      "iri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,
+      "iri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~-\u{10FFFF}]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~-\u{10FFFF}])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/u,
+      "uuid": /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i,
+      // 7.3.6. uri-template
+      "uri-template": /(%[0-9a-f]{2}|[!#$&(-;=?@\[\]_a-z~]|\{[!#&+,./;=?@|]?(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?(,(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?)*\})*/iu,
+      // 7.3.7. JSON Pointers
+      "json-pointer": /^(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*$/iu,
+      "relative-json-pointer": /^\d+(#|(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*)$/iu,
+      // hostname regex from: http://stackoverflow.com/a/1420225/5628
+      "hostname": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,
+      "host-name": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,
+      "utc-millisec": function(input) {
+        return typeof input === "string" && parseFloat(input) === parseInt(input, 10) && !isNaN(input);
+      },
+      // 7.3.8. regex
+      "regex": function(input) {
+        var result = true;
+        try {
+          new RegExp(input);
+        } catch (e) {
+          result = false;
+        }
+        return result;
+      },
+      // Other definitions
+      // "style" was removed from JSON Schema in draft-4 and is deprecated
+      "style": /[\r\n\t ]*[^\r\n\t ][^:]*:[\r\n\t ]*[^\r\n\t ;]*[\r\n\t ]*;?/,
+      // "color" was removed from JSON Schema in draft-4 and is deprecated
+      "color": /^(#?([0-9A-Fa-f]{3}){1,2}\b|aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|(rgb\(\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*\))|(rgb\(\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*\)))$/,
+      "phone": /^\+(?:[0-9] ?){6,14}[0-9]$/,
+      "alpha": /^[a-zA-Z]+$/,
+      "alphanumeric": /^[a-zA-Z0-9]+$/
+    };
+    FORMAT_REGEXPS.regexp = FORMAT_REGEXPS.regex;
+    FORMAT_REGEXPS.pattern = FORMAT_REGEXPS.regex;
+    FORMAT_REGEXPS.ipv4 = FORMAT_REGEXPS["ip-address"];
+    exports2.isFormat = function isFormat(input, format, validator) {
+      if (typeof input === "string" && FORMAT_REGEXPS[format] !== void 0) {
+        if (FORMAT_REGEXPS[format] instanceof RegExp) {
+          return FORMAT_REGEXPS[format].test(input);
+        }
+        if (typeof FORMAT_REGEXPS[format] === "function") {
+          return FORMAT_REGEXPS[format](input);
+        }
+      } else if (validator && validator.customFormats && typeof validator.customFormats[format] === "function") {
+        return validator.customFormats[format](input);
+      }
+      return true;
+    };
+    var makeSuffix = exports2.makeSuffix = function makeSuffix2(key) {
+      key = key.toString();
+      if (!key.match(/[.\s\[\]]/) && !key.match(/^[\d]/)) {
+        return "." + key;
+      }
+      if (key.match(/^\d+$/)) {
+        return "[" + key + "]";
+      }
+      return "[" + JSON.stringify(key) + "]";
+    };
+    exports2.deepCompareStrict = function deepCompareStrict(a, b) {
+      if (typeof a !== typeof b) {
+        return false;
+      }
+      if (Array.isArray(a)) {
+        if (!Array.isArray(b)) {
+          return false;
+        }
+        if (a.length !== b.length) {
+          return false;
+        }
+        return a.every(function(v, i) {
+          return deepCompareStrict(a[i], b[i]);
+        });
+      }
+      if (typeof a === "object") {
+        if (!a || !b) {
+          return a === b;
+        }
+        var aKeys = Object.keys(a);
+        var bKeys = Object.keys(b);
+        if (aKeys.length !== bKeys.length) {
+          return false;
+        }
+        return aKeys.every(function(v) {
+          return deepCompareStrict(a[v], b[v]);
+        });
+      }
+      return a === b;
+    };
+    function deepMerger(target, dst, e, i) {
+      if (typeof e === "object") {
+        dst[i] = deepMerge2(target[i], e);
+      } else {
+        if (target.indexOf(e) === -1) {
+          dst.push(e);
+        }
+      }
+    }
+    function copyist(src, dst, key) {
+      dst[key] = src[key];
+    }
+    function copyistWithDeepMerge(target, src, dst, key) {
+      if (typeof src[key] !== "object" || !src[key]) {
+        dst[key] = src[key];
+      } else {
+        if (!target[key]) {
+          dst[key] = src[key];
+        } else {
+          dst[key] = deepMerge2(target[key], src[key]);
+        }
+      }
+    }
+    function deepMerge2(target, src) {
+      var array = Array.isArray(src);
+      var dst = array && [] || {};
+      if (array) {
+        target = target || [];
+        dst = dst.concat(target);
+        src.forEach(deepMerger.bind(null, target, dst));
+      } else {
+        if (target && typeof target === "object") {
+          Object.keys(target).forEach(copyist.bind(null, target, dst));
+        }
+        Object.keys(src).forEach(copyistWithDeepMerge.bind(null, target, src, dst));
+      }
+      return dst;
+    }
+    module2.exports.deepMerge = deepMerge2;
+    exports2.objectGetPath = function objectGetPath(o, s) {
+      var parts = s.split("/").slice(1);
+      var k;
+      while (typeof (k = parts.shift()) == "string") {
+        var n = decodeURIComponent(k.replace(/~0/, "~").replace(/~1/g, "/"));
+        if (!(n in o)) return;
+        o = o[n];
+      }
+      return o;
+    };
+    function pathEncoder(v) {
+      return "/" + encodeURIComponent(v).replace(/~/g, "%7E");
+    }
+    exports2.encodePath = function encodePointer(a) {
+      return a.map(pathEncoder).join("");
+    };
+    exports2.getDecimalPlaces = function getDecimalPlaces(number) {
+      var decimalPlaces = 0;
+      if (isNaN(number)) return decimalPlaces;
+      if (typeof number !== "number") {
+        number = Number(number);
+      }
+      var parts = number.toString().split("e");
+      if (parts.length === 2) {
+        if (parts[1][0] !== "-") {
+          return decimalPlaces;
+        } else {
+          decimalPlaces = Number(parts[1].slice(1));
+        }
+      }
+      var decimalParts = parts[0].split(".");
+      if (decimalParts.length === 2) {
+        decimalPlaces += decimalParts[1].length;
+      }
+      return decimalPlaces;
+    };
+    exports2.isSchema = function isSchema(val2) {
+      return typeof val2 === "object" && val2 || typeof val2 === "boolean";
+    };
+    var resolveUrl = exports2.resolveUrl = function resolveUrl2(from, to) {
+      const resolvedUrl = new URL(to, new URL(from, "resolve://"));
+      if (resolvedUrl.protocol === "resolve:") {
+        const { pathname, search, hash } = resolvedUrl;
+        return pathname + search + hash;
+      }
+      return resolvedUrl.toString();
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js
+var require_attribute = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js"(exports2, module2) {
+    "use strict";
+    var helpers = require_helpers();
+    var ValidatorResult = helpers.ValidatorResult;
+    var SchemaError = helpers.SchemaError;
+    var attribute = {};
+    attribute.ignoreProperties = {
+      // informative properties
+      "id": true,
+      "default": true,
+      "description": true,
+      "title": true,
+      // arguments to other properties
+      "additionalItems": true,
+      "then": true,
+      "else": true,
+      // special-handled properties
+      "$schema": true,
+      "$ref": true,
+      "extends": true
+    };
+    var validators = attribute.validators = {};
+    validators.type = function validateType(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var types2 = Array.isArray(schema.type) ? schema.type : [schema.type];
+      if (!types2.some(this.testType.bind(this, instance, schema, options, ctx))) {
+        var list = types2.map(function(v) {
+          if (!v) return;
+          var id = v.$id || v.id;
+          return id ? "<" + id + ">" : v + "";
+        });
+        result.addError({
+          name: "type",
+          argument: list,
+          message: "is not of a type(s) " + list
+        });
+      }
+      return result;
+    };
+    function testSchemaNoThrow(instance, options, ctx, callback, schema) {
+      var throwError = options.throwError;
+      var throwAll = options.throwAll;
+      options.throwError = false;
+      options.throwAll = false;
+      var res = this.validateSchema(instance, schema, options, ctx);
+      options.throwError = throwError;
+      options.throwAll = throwAll;
+      if (!res.valid && callback instanceof Function) {
+        callback(res);
+      }
+      return res.valid;
+    }
+    validators.anyOf = function validateAnyOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var inner = new ValidatorResult(instance, schema, options, ctx);
+      if (!Array.isArray(schema.anyOf)) {
+        throw new SchemaError("anyOf must be an array");
+      }
+      if (!schema.anyOf.some(
+        testSchemaNoThrow.bind(
+          this,
+          instance,
+          options,
+          ctx,
+          function(res) {
+            inner.importErrors(res);
+          }
+        )
+      )) {
+        var list = schema.anyOf.map(function(v, i) {
+          var id = v.$id || v.id;
+          if (id) return "<" + id + ">";
+          return v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+        });
+        if (options.nestedErrors) {
+          result.importErrors(inner);
+        }
+        result.addError({
+          name: "anyOf",
+          argument: list,
+          message: "is not any of " + list.join(",")
+        });
+      }
+      return result;
+    };
+    validators.allOf = function validateAllOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema.allOf)) {
+        throw new SchemaError("allOf must be an array");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var self2 = this;
+      schema.allOf.forEach(function(v, i) {
+        var valid = self2.validateSchema(instance, v, options, ctx);
+        if (!valid.valid) {
+          var id = v.$id || v.id;
+          var msg = id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+          result.addError({
+            name: "allOf",
+            argument: { id: msg, length: valid.errors.length, valid },
+            message: "does not match allOf schema " + msg + " with " + valid.errors.length + " error[s]:"
+          });
+          result.importErrors(valid);
+        }
+      });
+      return result;
+    };
+    validators.oneOf = function validateOneOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema.oneOf)) {
+        throw new SchemaError("oneOf must be an array");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var inner = new ValidatorResult(instance, schema, options, ctx);
+      var count2 = schema.oneOf.filter(
+        testSchemaNoThrow.bind(
+          this,
+          instance,
+          options,
+          ctx,
+          function(res) {
+            inner.importErrors(res);
+          }
+        )
+      ).length;
+      var list = schema.oneOf.map(function(v, i) {
+        var id = v.$id || v.id;
+        return id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+      });
+      if (count2 !== 1) {
+        if (options.nestedErrors) {
+          result.importErrors(inner);
+        }
+        result.addError({
+          name: "oneOf",
+          argument: list,
+          message: "is not exactly one from " + list.join(",")
+        });
+      }
+      return result;
+    };
+    validators.if = function validateIf(instance, schema, options, ctx) {
+      if (instance === void 0) return null;
+      if (!helpers.isSchema(schema.if)) throw new Error('Expected "if" keyword to be a schema');
+      var ifValid = testSchemaNoThrow.call(this, instance, options, ctx, null, schema.if);
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var res;
+      if (ifValid) {
+        if (schema.then === void 0) return;
+        if (!helpers.isSchema(schema.then)) throw new Error('Expected "then" keyword to be a schema');
+        res = this.validateSchema(instance, schema.then, options, ctx.makeChild(schema.then));
+        result.importErrors(res);
+      } else {
+        if (schema.else === void 0) return;
+        if (!helpers.isSchema(schema.else)) throw new Error('Expected "else" keyword to be a schema');
+        res = this.validateSchema(instance, schema.else, options, ctx.makeChild(schema.else));
+        result.importErrors(res);
+      }
+      return result;
+    };
+    function getEnumerableProperty(object, key) {
+      if (Object.hasOwnProperty.call(object, key)) return object[key];
+      if (!(key in object)) return;
+      while (object = Object.getPrototypeOf(object)) {
+        if (Object.propertyIsEnumerable.call(object, key)) return object[key];
+      }
+    }
+    validators.propertyNames = function validatePropertyNames(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var subschema = schema.propertyNames !== void 0 ? schema.propertyNames : {};
+      if (!helpers.isSchema(subschema)) throw new SchemaError('Expected "propertyNames" to be a schema (object or boolean)');
+      for (var property in instance) {
+        if (getEnumerableProperty(instance, property) !== void 0) {
+          var res = this.validateSchema(property, subschema, options, ctx.makeChild(subschema));
+          result.importErrors(res);
+        }
+      }
+      return result;
+    };
+    validators.properties = function validateProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var properties = schema.properties || {};
+      for (var property in properties) {
+        var subschema = properties[property];
+        if (subschema === void 0) {
+          continue;
+        } else if (subschema === null) {
+          throw new SchemaError('Unexpected null, expected schema in "properties"');
+        }
+        if (typeof options.preValidateProperty == "function") {
+          options.preValidateProperty(instance, property, subschema, options, ctx);
+        }
+        var prop = getEnumerableProperty(instance, property);
+        var res = this.validateSchema(prop, subschema, options, ctx.makeChild(subschema, property));
+        if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+        result.importErrors(res);
+      }
+      return result;
+    };
+    function testAdditionalProperty(instance, schema, options, ctx, property, result) {
+      if (!this.types.object(instance)) return;
+      if (schema.properties && schema.properties[property] !== void 0) {
+        return;
+      }
+      if (schema.additionalProperties === false) {
+        result.addError({
+          name: "additionalProperties",
+          argument: property,
+          message: "is not allowed to have the additional property " + JSON.stringify(property)
+        });
+      } else {
+        var additionalProperties = schema.additionalProperties || {};
+        if (typeof options.preValidateProperty == "function") {
+          options.preValidateProperty(instance, property, additionalProperties, options, ctx);
+        }
+        var res = this.validateSchema(instance[property], additionalProperties, options, ctx.makeChild(additionalProperties, property));
+        if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+        result.importErrors(res);
+      }
+    }
+    validators.patternProperties = function validatePatternProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var patternProperties = schema.patternProperties || {};
+      for (var property in instance) {
+        var test = true;
+        for (var pattern in patternProperties) {
+          var subschema = patternProperties[pattern];
+          if (subschema === void 0) {
+            continue;
+          } else if (subschema === null) {
+            throw new SchemaError('Unexpected null, expected schema in "patternProperties"');
+          }
+          try {
+            var regexp = new RegExp(pattern, "u");
+          } catch (_e) {
+            regexp = new RegExp(pattern);
+          }
+          if (!regexp.test(property)) {
+            continue;
+          }
+          test = false;
+          if (typeof options.preValidateProperty == "function") {
+            options.preValidateProperty(instance, property, subschema, options, ctx);
+          }
+          var res = this.validateSchema(instance[property], subschema, options, ctx.makeChild(subschema, property));
+          if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+          result.importErrors(res);
+        }
+        if (test) {
+          testAdditionalProperty.call(this, instance, schema, options, ctx, property, result);
+        }
+      }
+      return result;
+    };
+    validators.additionalProperties = function validateAdditionalProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      if (schema.patternProperties) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      for (var property in instance) {
+        testAdditionalProperty.call(this, instance, schema, options, ctx, property, result);
+      }
+      return result;
+    };
+    validators.minProperties = function validateMinProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var keys = Object.keys(instance);
+      if (!(keys.length >= schema.minProperties)) {
+        result.addError({
+          name: "minProperties",
+          argument: schema.minProperties,
+          message: "does not meet minimum property length of " + schema.minProperties
+        });
+      }
+      return result;
+    };
+    validators.maxProperties = function validateMaxProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var keys = Object.keys(instance);
+      if (!(keys.length <= schema.maxProperties)) {
+        result.addError({
+          name: "maxProperties",
+          argument: schema.maxProperties,
+          message: "does not meet maximum property length of " + schema.maxProperties
+        });
+      }
+      return result;
+    };
+    validators.items = function validateItems(instance, schema, options, ctx) {
+      var self2 = this;
+      if (!this.types.array(instance)) return;
+      if (schema.items === void 0) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      instance.every(function(value, i) {
+        if (Array.isArray(schema.items)) {
+          var items = schema.items[i] === void 0 ? schema.additionalItems : schema.items[i];
+        } else {
+          var items = schema.items;
+        }
+        if (items === void 0) {
+          return true;
+        }
+        if (items === false) {
+          result.addError({
+            name: "items",
+            message: "additionalItems not permitted"
+          });
+          return false;
+        }
+        var res = self2.validateSchema(value, items, options, ctx.makeChild(items, i));
+        if (res.instance !== result.instance[i]) result.instance[i] = res.instance;
+        result.importErrors(res);
+        return true;
+      });
+      return result;
+    };
+    validators.contains = function validateContains(instance, schema, options, ctx) {
+      var self2 = this;
+      if (!this.types.array(instance)) return;
+      if (schema.contains === void 0) return;
+      if (!helpers.isSchema(schema.contains)) throw new Error('Expected "contains" keyword to be a schema');
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var count2 = instance.some(function(value, i) {
+        var res = self2.validateSchema(value, schema.contains, options, ctx.makeChild(schema.contains, i));
+        return res.errors.length === 0;
+      });
+      if (count2 === false) {
+        result.addError({
+          name: "contains",
+          argument: schema.contains,
+          message: "must contain an item matching given schema"
+        });
+      }
+      return result;
+    };
+    validators.minimum = function validateMinimum(instance, schema, options, ctx) {
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (schema.exclusiveMinimum && schema.exclusiveMinimum === true) {
+        if (!(instance > schema.minimum)) {
+          result.addError({
+            name: "minimum",
+            argument: schema.minimum,
+            message: "must be greater than " + schema.minimum
+          });
+        }
+      } else {
+        if (!(instance >= schema.minimum)) {
+          result.addError({
+            name: "minimum",
+            argument: schema.minimum,
+            message: "must be greater than or equal to " + schema.minimum
+          });
+        }
+      }
+      return result;
+    };
+    validators.maximum = function validateMaximum(instance, schema, options, ctx) {
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (schema.exclusiveMaximum && schema.exclusiveMaximum === true) {
+        if (!(instance < schema.maximum)) {
+          result.addError({
+            name: "maximum",
+            argument: schema.maximum,
+            message: "must be less than " + schema.maximum
+          });
+        }
+      } else {
+        if (!(instance <= schema.maximum)) {
+          result.addError({
+            name: "maximum",
+            argument: schema.maximum,
+            message: "must be less than or equal to " + schema.maximum
+          });
+        }
+      }
+      return result;
+    };
+    validators.exclusiveMinimum = function validateExclusiveMinimum(instance, schema, options, ctx) {
+      if (typeof schema.exclusiveMinimum === "boolean") return;
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var valid = instance > schema.exclusiveMinimum;
+      if (!valid) {
+        result.addError({
+          name: "exclusiveMinimum",
+          argument: schema.exclusiveMinimum,
+          message: "must be strictly greater than " + schema.exclusiveMinimum
+        });
+      }
+      return result;
+    };
+    validators.exclusiveMaximum = function validateExclusiveMaximum(instance, schema, options, ctx) {
+      if (typeof schema.exclusiveMaximum === "boolean") return;
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var valid = instance < schema.exclusiveMaximum;
+      if (!valid) {
+        result.addError({
+          name: "exclusiveMaximum",
+          argument: schema.exclusiveMaximum,
+          message: "must be strictly less than " + schema.exclusiveMaximum
+        });
+      }
+      return result;
+    };
+    var validateMultipleOfOrDivisbleBy = function validateMultipleOfOrDivisbleBy2(instance, schema, options, ctx, validationType, errorMessage) {
+      if (!this.types.number(instance)) return;
+      var validationArgument = schema[validationType];
+      if (validationArgument == 0) {
+        throw new SchemaError(validationType + " cannot be zero");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var instanceDecimals = helpers.getDecimalPlaces(instance);
+      var divisorDecimals = helpers.getDecimalPlaces(validationArgument);
+      var maxDecimals = Math.max(instanceDecimals, divisorDecimals);
+      var multiplier = Math.pow(10, maxDecimals);
+      if (Math.round(instance * multiplier) % Math.round(validationArgument * multiplier) !== 0) {
+        result.addError({
+          name: validationType,
+          argument: validationArgument,
+          message: errorMessage + JSON.stringify(validationArgument)
+        });
+      }
+      return result;
+    };
+    validators.multipleOf = function validateMultipleOf(instance, schema, options, ctx) {
+      return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "multipleOf", "is not a multiple of (divisible by) ");
+    };
+    validators.divisibleBy = function validateDivisibleBy(instance, schema, options, ctx) {
+      return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "divisibleBy", "is not divisible by (multiple of) ");
+    };
+    validators.required = function validateRequired(instance, schema, options, ctx) {
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (instance === void 0 && schema.required === true) {
+        result.addError({
+          name: "required",
+          message: "is required"
+        });
+      } else if (this.types.object(instance) && Array.isArray(schema.required)) {
+        schema.required.forEach(function(n) {
+          if (getEnumerableProperty(instance, n) === void 0) {
+            result.addError({
+              name: "required",
+              argument: n,
+              message: "requires property " + JSON.stringify(n)
+            });
+          }
+        });
+      }
+      return result;
+    };
+    validators.pattern = function validatePattern(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var pattern = schema.pattern;
+      try {
+        var regexp = new RegExp(pattern, "u");
+      } catch (_e) {
+        regexp = new RegExp(pattern);
+      }
+      if (!instance.match(regexp)) {
+        result.addError({
+          name: "pattern",
+          argument: schema.pattern,
+          message: "does not match pattern " + JSON.stringify(schema.pattern.toString())
+        });
+      }
+      return result;
+    };
+    validators.format = function validateFormat(instance, schema, options, ctx) {
+      if (instance === void 0) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!result.disableFormat && !helpers.isFormat(instance, schema.format, this)) {
+        result.addError({
+          name: "format",
+          argument: schema.format,
+          message: "does not conform to the " + JSON.stringify(schema.format) + " format"
+        });
+      }
+      return result;
+    };
+    validators.minLength = function validateMinLength(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var hsp = instance.match(/[\uDC00-\uDFFF]/g);
+      var length = instance.length - (hsp ? hsp.length : 0);
+      if (!(length >= schema.minLength)) {
+        result.addError({
+          name: "minLength",
+          argument: schema.minLength,
+          message: "does not meet minimum length of " + schema.minLength
+        });
+      }
+      return result;
+    };
+    validators.maxLength = function validateMaxLength(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var hsp = instance.match(/[\uDC00-\uDFFF]/g);
+      var length = instance.length - (hsp ? hsp.length : 0);
+      if (!(length <= schema.maxLength)) {
+        result.addError({
+          name: "maxLength",
+          argument: schema.maxLength,
+          message: "does not meet maximum length of " + schema.maxLength
+        });
+      }
+      return result;
+    };
+    validators.minItems = function validateMinItems(instance, schema, options, ctx) {
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!(instance.length >= schema.minItems)) {
+        result.addError({
+          name: "minItems",
+          argument: schema.minItems,
+          message: "does not meet minimum length of " + schema.minItems
+        });
+      }
+      return result;
+    };
+    validators.maxItems = function validateMaxItems(instance, schema, options, ctx) {
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!(instance.length <= schema.maxItems)) {
+        result.addError({
+          name: "maxItems",
+          argument: schema.maxItems,
+          message: "does not meet maximum length of " + schema.maxItems
+        });
+      }
+      return result;
+    };
+    function testArrays(v, i, a) {
+      var j, len = a.length;
+      for (j = i + 1, len; j < len; j++) {
+        if (helpers.deepCompareStrict(v, a[j])) {
+          return false;
+        }
+      }
+      return true;
+    }
+    validators.uniqueItems = function validateUniqueItems(instance, schema, options, ctx) {
+      if (schema.uniqueItems !== true) return;
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!instance.every(testArrays)) {
+        result.addError({
+          name: "uniqueItems",
+          message: "contains duplicate item"
+        });
+      }
+      return result;
+    };
+    validators.dependencies = function validateDependencies(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      for (var property in schema.dependencies) {
+        if (instance[property] === void 0) {
+          continue;
+        }
+        var dep = schema.dependencies[property];
+        var childContext = ctx.makeChild(dep, property);
+        if (typeof dep == "string") {
+          dep = [dep];
+        }
+        if (Array.isArray(dep)) {
+          dep.forEach(function(prop) {
+            if (instance[prop] === void 0) {
+              result.addError({
+                // FIXME there's two different "dependencies" errors here with slightly different outputs
+                // Can we make these the same? Or should we create different error types?
+                name: "dependencies",
+                argument: childContext.propertyPath,
+                message: "property " + prop + " not found, required by " + childContext.propertyPath
+              });
+            }
+          });
+        } else {
+          var res = this.validateSchema(instance, dep, options, childContext);
+          if (result.instance !== res.instance) result.instance = res.instance;
+          if (res && res.errors.length) {
+            result.addError({
+              name: "dependencies",
+              argument: childContext.propertyPath,
+              message: "does not meet dependency required by " + childContext.propertyPath
+            });
+            result.importErrors(res);
+          }
+        }
+      }
+      return result;
+    };
+    validators["enum"] = function validateEnum(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema["enum"])) {
+        throw new SchemaError("enum expects an array", schema);
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!schema["enum"].some(helpers.deepCompareStrict.bind(null, instance))) {
+        result.addError({
+          name: "enum",
+          argument: schema["enum"],
+          message: "is not one of enum values: " + schema["enum"].map(String).join(",")
+        });
+      }
+      return result;
+    };
+    validators["const"] = function validateEnum(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!helpers.deepCompareStrict(schema["const"], instance)) {
+        result.addError({
+          name: "const",
+          argument: schema["const"],
+          message: "does not exactly match expected constant: " + schema["const"]
+        });
+      }
+      return result;
+    };
+    validators.not = validators.disallow = function validateNot(instance, schema, options, ctx) {
+      var self2 = this;
+      if (instance === void 0) return null;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var notTypes = schema.not || schema.disallow;
+      if (!notTypes) return null;
+      if (!Array.isArray(notTypes)) notTypes = [notTypes];
+      notTypes.forEach(function(type) {
+        if (self2.testType(instance, schema, options, ctx, type)) {
+          var id = type && (type.$id || type.id);
+          var schemaId = id || type;
+          result.addError({
+            name: "not",
+            argument: schemaId,
+            message: "is of prohibited type " + schemaId
+          });
+        }
+      });
+      return result;
+    };
+    module2.exports = attribute;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js
+var require_scan = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js"(exports2, module2) {
+    "use strict";
+    var helpers = require_helpers();
+    module2.exports.SchemaScanResult = SchemaScanResult;
+    function SchemaScanResult(found, ref) {
+      this.id = found;
+      this.ref = ref;
+    }
+    module2.exports.scan = function scan(base, schema) {
+      function scanSchema(baseuri, schema2) {
+        if (!schema2 || typeof schema2 != "object") return;
+        if (schema2.$ref) {
+          let resolvedUri = helpers.resolveUrl(baseuri, schema2.$ref);
+          ref[resolvedUri] = ref[resolvedUri] ? ref[resolvedUri] + 1 : 0;
+          return;
+        }
+        var id = schema2.$id || schema2.id;
+        let resolvedBase = helpers.resolveUrl(baseuri, id);
+        var ourBase = id ? resolvedBase : baseuri;
+        if (ourBase) {
+          if (ourBase.indexOf("#") < 0) ourBase += "#";
+          if (found[ourBase]) {
+            if (!helpers.deepCompareStrict(found[ourBase], schema2)) {
+              throw new Error("Schema <" + ourBase + "> already exists with different definition");
+            }
+            return found[ourBase];
+          }
+          found[ourBase] = schema2;
+          if (ourBase[ourBase.length - 1] == "#") {
+            found[ourBase.substring(0, ourBase.length - 1)] = schema2;
+          }
+        }
+        scanArray(ourBase + "/items", Array.isArray(schema2.items) ? schema2.items : [schema2.items]);
+        scanArray(ourBase + "/extends", Array.isArray(schema2.extends) ? schema2.extends : [schema2.extends]);
+        scanSchema(ourBase + "/additionalItems", schema2.additionalItems);
+        scanObject(ourBase + "/properties", schema2.properties);
+        scanSchema(ourBase + "/additionalProperties", schema2.additionalProperties);
+        scanObject(ourBase + "/definitions", schema2.definitions);
+        scanObject(ourBase + "/patternProperties", schema2.patternProperties);
+        scanObject(ourBase + "/dependencies", schema2.dependencies);
+        scanArray(ourBase + "/disallow", schema2.disallow);
+        scanArray(ourBase + "/allOf", schema2.allOf);
+        scanArray(ourBase + "/anyOf", schema2.anyOf);
+        scanArray(ourBase + "/oneOf", schema2.oneOf);
+        scanSchema(ourBase + "/not", schema2.not);
+      }
+      function scanArray(baseuri, schemas) {
+        if (!Array.isArray(schemas)) return;
+        for (var i = 0; i < schemas.length; i++) {
+          scanSchema(baseuri + "/" + i, schemas[i]);
+        }
+      }
+      function scanObject(baseuri, schemas) {
+        if (!schemas || typeof schemas != "object") return;
+        for (var p in schemas) {
+          scanSchema(baseuri + "/" + p, schemas[p]);
+        }
+      }
+      var found = {};
+      var ref = {};
+      scanSchema(base, schema);
+      return new SchemaScanResult(found, ref);
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js
+var require_validator = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js"(exports2, module2) {
+    "use strict";
+    var attribute = require_attribute();
+    var helpers = require_helpers();
+    var scanSchema = require_scan().scan;
+    var ValidatorResult = helpers.ValidatorResult;
+    var ValidatorResultError = helpers.ValidatorResultError;
+    var SchemaError = helpers.SchemaError;
+    var SchemaContext = helpers.SchemaContext;
+    var anonymousBase = "/";
+    var Validator = function Validator2() {
+      this.customFormats = Object.create(Validator2.prototype.customFormats);
+      this.schemas = {};
+      this.unresolvedRefs = [];
+      this.types = Object.create(types2);
+      this.attributes = Object.create(attribute.validators);
+    };
+    Validator.prototype.customFormats = {};
+    Validator.prototype.schemas = null;
+    Validator.prototype.types = null;
+    Validator.prototype.attributes = null;
+    Validator.prototype.unresolvedRefs = null;
+    Validator.prototype.addSchema = function addSchema(schema, base) {
+      var self2 = this;
+      if (!schema) {
+        return null;
+      }
+      var scan = scanSchema(base || anonymousBase, schema);
+      var ourUri = base || schema.$id || schema.id;
+      for (var uri in scan.id) {
+        this.schemas[uri] = scan.id[uri];
+      }
+      for (var uri in scan.ref) {
+        this.unresolvedRefs.push(uri);
+      }
+      this.unresolvedRefs = this.unresolvedRefs.filter(function(uri2) {
+        return typeof self2.schemas[uri2] === "undefined";
+      });
+      return this.schemas[ourUri];
+    };
+    Validator.prototype.addSubSchemaArray = function addSubSchemaArray(baseuri, schemas) {
+      if (!Array.isArray(schemas)) return;
+      for (var i = 0; i < schemas.length; i++) {
+        this.addSubSchema(baseuri, schemas[i]);
+      }
+    };
+    Validator.prototype.addSubSchemaObject = function addSubSchemaArray(baseuri, schemas) {
+      if (!schemas || typeof schemas != "object") return;
+      for (var p in schemas) {
+        this.addSubSchema(baseuri, schemas[p]);
+      }
+    };
+    Validator.prototype.setSchemas = function setSchemas(schemas) {
+      this.schemas = schemas;
+    };
+    Validator.prototype.getSchema = function getSchema(urn) {
+      return this.schemas[urn];
+    };
+    Validator.prototype.validate = function validate2(instance, schema, options, ctx) {
+      if (typeof schema !== "boolean" && typeof schema !== "object" || schema === null) {
+        throw new SchemaError("Expected `schema` to be an object or boolean");
+      }
+      if (!options) {
+        options = {};
+      }
+      var id = schema.$id || schema.id;
+      let base = helpers.resolveUrl(options.base, id || "");
+      if (!ctx) {
+        ctx = new SchemaContext(schema, options, [], base, Object.create(this.schemas));
+        if (!ctx.schemas[base]) {
+          ctx.schemas[base] = schema;
+        }
+        var found = scanSchema(base, schema);
+        for (var n in found.id) {
+          var sch = found.id[n];
+          ctx.schemas[n] = sch;
+        }
+      }
+      if (options.required && instance === void 0) {
+        var result = new ValidatorResult(instance, schema, options, ctx);
+        result.addError("is required, but is undefined");
+        return result;
+      }
+      var result = this.validateSchema(instance, schema, options, ctx);
+      if (!result) {
+        throw new Error("Result undefined");
+      } else if (options.throwAll && result.errors.length) {
+        throw new ValidatorResultError(result);
+      }
+      return result;
+    };
+    function shouldResolve(schema) {
+      var ref = typeof schema === "string" ? schema : schema.$ref;
+      if (typeof ref == "string") return ref;
+      return false;
+    }
+    Validator.prototype.validateSchema = function validateSchema(instance, schema, options, ctx) {
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (typeof schema === "boolean") {
+        if (schema === true) {
+          schema = {};
+        } else if (schema === false) {
+          schema = { type: [] };
+        }
+      } else if (!schema) {
+        throw new Error("schema is undefined");
+      }
+      if (schema["extends"]) {
+        if (Array.isArray(schema["extends"])) {
+          var schemaobj = { schema, ctx };
+          schema["extends"].forEach(this.schemaTraverser.bind(this, schemaobj));
+          schema = schemaobj.schema;
+          schemaobj.schema = null;
+          schemaobj.ctx = null;
+          schemaobj = null;
+        } else {
+          schema = helpers.deepMerge(schema, this.superResolve(schema["extends"], ctx));
+        }
+      }
+      var switchSchema = shouldResolve(schema);
+      if (switchSchema) {
+        var resolved = this.resolve(schema, switchSchema, ctx);
+        var subctx = new SchemaContext(resolved.subschema, options, ctx.path, resolved.switchSchema, ctx.schemas);
+        return this.validateSchema(instance, resolved.subschema, options, subctx);
+      }
+      var skipAttributes = options && options.skipAttributes || [];
+      for (var key in schema) {
+        if (!attribute.ignoreProperties[key] && skipAttributes.indexOf(key) < 0) {
+          var validatorErr = null;
+          var validator = this.attributes[key];
+          if (validator) {
+            validatorErr = validator.call(this, instance, schema, options, ctx);
+          } else if (options.allowUnknownAttributes === false) {
+            throw new SchemaError("Unsupported attribute: " + key, schema);
+          }
+          if (validatorErr) {
+            result.importErrors(validatorErr);
+          }
+        }
+      }
+      if (typeof options.rewrite == "function") {
+        var value = options.rewrite.call(this, instance, schema, options, ctx);
+        result.instance = value;
+      }
+      return result;
+    };
+    Validator.prototype.schemaTraverser = function schemaTraverser(schemaobj, s) {
+      schemaobj.schema = helpers.deepMerge(schemaobj.schema, this.superResolve(s, schemaobj.ctx));
+    };
+    Validator.prototype.superResolve = function superResolve(schema, ctx) {
+      var ref = shouldResolve(schema);
+      if (ref) {
+        return this.resolve(schema, ref, ctx).subschema;
+      }
+      return schema;
+    };
+    Validator.prototype.resolve = function resolve6(schema, switchSchema, ctx) {
+      switchSchema = ctx.resolve(switchSchema);
+      if (ctx.schemas[switchSchema]) {
+        return { subschema: ctx.schemas[switchSchema], switchSchema };
+      }
+      let hashIndex = switchSchema.indexOf("#");
+      let fragment = hashIndex === -1 || hashIndex === switchSchema.length - 1 ? "" : switchSchema.substr(hashIndex);
+      var document = fragment && fragment.length && switchSchema.substr(0, switchSchema.length - fragment.length);
+      if (!document || !ctx.schemas[document]) {
+        throw new SchemaError("no such schema <" + switchSchema + ">", schema);
+      }
+      var subschema = helpers.objectGetPath(ctx.schemas[document], fragment.substr(1));
+      if (subschema === void 0) {
+        throw new SchemaError("no such schema " + fragment + " located in <" + document + ">", schema);
+      }
+      return { subschema, switchSchema };
+    };
+    Validator.prototype.testType = function validateType(instance, schema, options, ctx, type) {
+      if (type === void 0) {
+        return;
+      } else if (type === null) {
+        throw new SchemaError('Unexpected null in "type" keyword');
+      }
+      if (typeof this.types[type] == "function") {
+        return this.types[type].call(this, instance);
+      }
+      if (type && typeof type == "object") {
+        var res = this.validateSchema(instance, type, options, ctx);
+        return res === void 0 || !(res && res.errors.length);
+      }
+      return true;
+    };
+    var types2 = Validator.prototype.types = {};
+    types2.string = function testString(instance) {
+      return typeof instance == "string";
+    };
+    types2.number = function testNumber(instance) {
+      return typeof instance == "number" && isFinite(instance);
+    };
+    types2.integer = function testInteger(instance) {
+      return typeof instance == "number" && instance % 1 === 0;
+    };
+    types2.boolean = function testBoolean(instance) {
+      return typeof instance == "boolean";
+    };
+    types2.array = function testArray(instance) {
+      return Array.isArray(instance);
+    };
+    types2["null"] = function testNull(instance) {
+      return instance === null;
+    };
+    types2.date = function testDate(instance) {
+      return instance instanceof Date;
+    };
+    types2.any = function testAny(instance) {
+      return true;
+    };
+    types2.object = function testObject(instance) {
+      return instance && typeof instance === "object" && !Array.isArray(instance) && !(instance instanceof Date);
+    };
+    module2.exports = Validator;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js
+var require_lib = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js"(exports2, module2) {
+    "use strict";
+    var Validator = module2.exports.Validator = require_validator();
+    module2.exports.ValidatorResult = require_helpers().ValidatorResult;
+    module2.exports.ValidatorResultError = require_helpers().ValidatorResultError;
+    module2.exports.ValidationError = require_helpers().ValidationError;
+    module2.exports.SchemaError = require_helpers().SchemaError;
+    module2.exports.SchemaScanResult = require_scan().SchemaScanResult;
+    module2.exports.scan = require_scan().scan;
+    module2.exports.validate = function(instance, schema, options) {
+      var v = new Validator();
+      return v.validate(instance, schema, options);
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js
+var require_constants = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js"(exports2, module2) {
+    "use strict";
+    var SEMVER_SPEC_VERSION = "2.0.0";
+    var MAX_LENGTH = 256;
+    var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */
+    9007199254740991;
+    var MAX_SAFE_COMPONENT_LENGTH = 16;
+    var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6;
+    var RELEASE_TYPES = [
+      "major",
+      "premajor",
+      "minor",
+      "preminor",
+      "patch",
+      "prepatch",
+      "prerelease"
+    ];
+    module2.exports = {
+      MAX_LENGTH,
+      MAX_SAFE_COMPONENT_LENGTH,
+      MAX_SAFE_BUILD_LENGTH,
+      MAX_SAFE_INTEGER,
+      RELEASE_TYPES,
+      SEMVER_SPEC_VERSION,
+      FLAG_INCLUDE_PRERELEASE: 1,
+      FLAG_LOOSE: 2
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js
+var require_debug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js"(exports2, module2) {
+    "use strict";
+    var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {
+    };
+    module2.exports = debug;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js
+var require_re = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js"(exports2, module2) {
+    "use strict";
+    var {
+      MAX_SAFE_COMPONENT_LENGTH,
+      MAX_SAFE_BUILD_LENGTH,
+      MAX_LENGTH
+    } = require_constants();
+    var debug = require_debug();
+    exports2 = module2.exports = {};
+    var re = exports2.re = [];
+    var safeRe = exports2.safeRe = [];
+    var src = exports2.src = [];
+    var safeSrc = exports2.safeSrc = [];
+    var t = exports2.t = {};
+    var R = 0;
+    var LETTERDASHNUMBER = "[a-zA-Z0-9-]";
+    var safeRegexReplacements = [
+      ["\\s", 1],
+      ["\\d", MAX_LENGTH],
+      [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH]
+    ];
+    var makeSafeRegex = (value) => {
+      for (const [token, max] of safeRegexReplacements) {
+        value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`);
+      }
+      return value;
+    };
+    var createToken = (name, value, isGlobal) => {
+      const safe = makeSafeRegex(value);
+      const index = R++;
+      debug(name, index, value);
+      t[name] = index;
+      src[index] = value;
+      safeSrc[index] = safe;
+      re[index] = new RegExp(value, isGlobal ? "g" : void 0);
+      safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0);
+    };
+    createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*");
+    createToken("NUMERICIDENTIFIERLOOSE", "\\d+");
+    createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`);
+    createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`);
+    createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`);
+    createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIER]})`);
+    createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIERLOOSE]})`);
+    createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`);
+    createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`);
+    createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`);
+    createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`);
+    createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`);
+    createToken("FULL", `^${src[t.FULLPLAIN]}$`);
+    createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`);
+    createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`);
+    createToken("GTLT", "((?:<|>)?=?)");
+    createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);
+    createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`);
+    createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`);
+    createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`);
+    createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`);
+    createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);
+    createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`);
+    createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?(?:${src[t.BUILD]})?(?:$|[^\\d])`);
+    createToken("COERCERTL", src[t.COERCE], true);
+    createToken("COERCERTLFULL", src[t.COERCEFULL], true);
+    createToken("LONETILDE", "(?:~>?)");
+    createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true);
+    exports2.tildeTrimReplace = "$1~";
+    createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`);
+    createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("LONECARET", "(?:\\^)");
+    createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true);
+    exports2.caretTrimReplace = "$1^";
+    createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`);
+    createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`);
+    createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`);
+    createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true);
+    exports2.comparatorTrimReplace = "$1$2$3";
+    createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`);
+    createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`);
+    createToken("STAR", "(<|>)?=?\\s*\\*");
+    createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$");
+    createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$");
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js
+var require_parse_options = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js"(exports2, module2) {
+    "use strict";
+    var looseOption = Object.freeze({ loose: true });
+    var emptyOpts = Object.freeze({});
+    var parseOptions = (options) => {
+      if (!options) {
+        return emptyOpts;
+      }
+      if (typeof options !== "object") {
+        return looseOption;
+      }
+      return options;
+    };
+    module2.exports = parseOptions;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js
+var require_identifiers = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js"(exports2, module2) {
+    "use strict";
+    var numeric = /^[0-9]+$/;
+    var compareIdentifiers = (a, b) => {
+      if (typeof a === "number" && typeof b === "number") {
+        return a === b ? 0 : a < b ? -1 : 1;
+      }
+      const anum = numeric.test(a);
+      const bnum = numeric.test(b);
+      if (anum && bnum) {
+        a = +a;
+        b = +b;
+      }
+      return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1;
+    };
+    var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a);
+    module2.exports = {
+      compareIdentifiers,
+      rcompareIdentifiers
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js
+var require_semver = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js"(exports2, module2) {
+    "use strict";
+    var debug = require_debug();
+    var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
+    var { safeRe: re, t } = require_re();
+    var parseOptions = require_parse_options();
+    var { compareIdentifiers } = require_identifiers();
+    var isPrereleaseIdentifier = (prerelease, identifier) => {
+      const identifiers = identifier.split(".");
+      if (identifiers.length > prerelease.length) {
+        return false;
+      }
+      for (let i = 0; i < identifiers.length; i++) {
+        if (compareIdentifiers(prerelease[i], identifiers[i]) !== 0) {
+          return false;
+        }
+      }
+      return true;
+    };
+    var SemVer = class _SemVer {
+      constructor(version3, options) {
+        options = parseOptions(options);
+        if (version3 instanceof _SemVer) {
+          if (version3.loose === !!options.loose && version3.includePrerelease === !!options.includePrerelease) {
+            return version3;
+          } else {
+            version3 = version3.version;
+          }
+        } else if (typeof version3 !== "string") {
+          throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version3}".`);
+        }
+        if (version3.length > MAX_LENGTH) {
+          throw new TypeError(
+            `version is longer than ${MAX_LENGTH} characters`
+          );
+        }
+        debug("SemVer", version3, options);
+        this.options = options;
+        this.loose = !!options.loose;
+        this.includePrerelease = !!options.includePrerelease;
+        const m = version3.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]);
+        if (!m) {
+          throw new TypeError(`Invalid Version: ${version3}`);
+        }
+        this.raw = version3;
+        this.major = +m[1];
+        this.minor = +m[2];
+        this.patch = +m[3];
+        if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
+          throw new TypeError("Invalid major version");
+        }
+        if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
+          throw new TypeError("Invalid minor version");
+        }
+        if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
+          throw new TypeError("Invalid patch version");
+        }
+        if (!m[4]) {
+          this.prerelease = [];
+        } else {
+          this.prerelease = m[4].split(".").map((id) => {
+            if (/^[0-9]+$/.test(id)) {
+              const num = +id;
+              if (num >= 0 && num < MAX_SAFE_INTEGER) {
+                return num;
+              }
+            }
+            return id;
+          });
+        }
+        this.build = m[5] ? m[5].split(".") : [];
+        this.format();
+      }
+      format() {
+        this.version = `${this.major}.${this.minor}.${this.patch}`;
+        if (this.prerelease.length) {
+          this.version += `-${this.prerelease.join(".")}`;
+        }
+        return this.version;
+      }
+      toString() {
+        return this.version;
+      }
+      compare(other) {
+        debug("SemVer.compare", this.version, this.options, other);
+        if (!(other instanceof _SemVer)) {
+          if (typeof other === "string" && other === this.version) {
+            return 0;
+          }
+          other = new _SemVer(other, this.options);
+        }
+        if (other.version === this.version) {
+          return 0;
+        }
+        return this.compareMain(other) || this.comparePre(other);
+      }
+      compareMain(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        if (this.major < other.major) {
+          return -1;
+        }
+        if (this.major > other.major) {
+          return 1;
+        }
+        if (this.minor < other.minor) {
+          return -1;
+        }
+        if (this.minor > other.minor) {
+          return 1;
+        }
+        if (this.patch < other.patch) {
+          return -1;
+        }
+        if (this.patch > other.patch) {
+          return 1;
+        }
+        return 0;
+      }
+      comparePre(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        if (this.prerelease.length && !other.prerelease.length) {
+          return -1;
+        } else if (!this.prerelease.length && other.prerelease.length) {
+          return 1;
+        } else if (!this.prerelease.length && !other.prerelease.length) {
+          return 0;
+        }
+        let i = 0;
+        do {
+          const a = this.prerelease[i];
+          const b = other.prerelease[i];
+          debug("prerelease compare", i, a, b);
+          if (a === void 0 && b === void 0) {
+            return 0;
+          } else if (b === void 0) {
+            return 1;
+          } else if (a === void 0) {
+            return -1;
+          } else if (a === b) {
+            continue;
+          } else {
+            return compareIdentifiers(a, b);
+          }
+        } while (++i);
+      }
+      compareBuild(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        let i = 0;
+        do {
+          const a = this.build[i];
+          const b = other.build[i];
+          debug("build compare", i, a, b);
+          if (a === void 0 && b === void 0) {
+            return 0;
+          } else if (b === void 0) {
+            return 1;
+          } else if (a === void 0) {
+            return -1;
+          } else if (a === b) {
+            continue;
+          } else {
+            return compareIdentifiers(a, b);
+          }
+        } while (++i);
+      }
+      // preminor will bump the version up to the next minor release, and immediately
+      // down to pre-release. premajor and prepatch work the same way.
+      inc(release, identifier, identifierBase) {
+        if (release.startsWith("pre")) {
+          if (!identifier && identifierBase === false) {
+            throw new Error("invalid increment argument: identifier is empty");
+          }
+          if (identifier) {
+            const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]);
+            if (!match || match[1] !== identifier) {
+              throw new Error(`invalid identifier: ${identifier}`);
+            }
+          }
+        }
+        switch (release) {
+          case "premajor":
+            this.prerelease.length = 0;
+            this.patch = 0;
+            this.minor = 0;
+            this.major++;
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "preminor":
+            this.prerelease.length = 0;
+            this.patch = 0;
+            this.minor++;
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "prepatch":
+            this.prerelease.length = 0;
+            this.inc("patch", identifier, identifierBase);
+            this.inc("pre", identifier, identifierBase);
+            break;
+          // If the input is a non-prerelease version, this acts the same as
+          // prepatch.
+          case "prerelease":
+            if (this.prerelease.length === 0) {
+              this.inc("patch", identifier, identifierBase);
+            }
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "release":
+            if (this.prerelease.length === 0) {
+              throw new Error(`version ${this.raw} is not a prerelease`);
+            }
+            this.prerelease.length = 0;
+            break;
+          case "major":
+            if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {
+              this.major++;
+            }
+            this.minor = 0;
+            this.patch = 0;
+            this.prerelease = [];
+            break;
+          case "minor":
+            if (this.patch !== 0 || this.prerelease.length === 0) {
+              this.minor++;
+            }
+            this.patch = 0;
+            this.prerelease = [];
+            break;
+          case "patch":
+            if (this.prerelease.length === 0) {
+              this.patch++;
+            }
+            this.prerelease = [];
+            break;
+          // This probably shouldn't be used publicly.
+          // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
+          case "pre": {
+            const base = Number(identifierBase) ? 1 : 0;
+            if (this.prerelease.length === 0) {
+              this.prerelease = [base];
+            } else {
+              let i = this.prerelease.length;
+              while (--i >= 0) {
+                if (typeof this.prerelease[i] === "number") {
+                  this.prerelease[i]++;
+                  i = -2;
+                }
+              }
+              if (i === -1) {
+                if (identifier === this.prerelease.join(".") && identifierBase === false) {
+                  throw new Error("invalid increment argument: identifier already exists");
+                }
+                this.prerelease.push(base);
+              }
+            }
+            if (identifier) {
+              let prerelease = [identifier, base];
+              if (identifierBase === false) {
+                prerelease = [identifier];
+              }
+              if (isPrereleaseIdentifier(this.prerelease, identifier)) {
+                const prereleaseBase = this.prerelease[identifier.split(".").length];
+                if (isNaN(prereleaseBase)) {
+                  this.prerelease = prerelease;
+                }
+              } else {
+                this.prerelease = prerelease;
+              }
+            }
+            break;
+          }
+          default:
+            throw new Error(`invalid increment argument: ${release}`);
+        }
+        this.raw = this.format();
+        if (this.build.length) {
+          this.raw += `+${this.build.join(".")}`;
+        }
+        return this;
+      }
+    };
+    module2.exports = SemVer;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js
+var require_parse = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var parse3 = (version3, options, throwErrors = false) => {
+      if (version3 instanceof SemVer) {
+        return version3;
+      }
+      try {
+        return new SemVer(version3, options);
+      } catch (er) {
+        if (!throwErrors) {
+          return null;
+        }
+        throw er;
+      }
+    };
+    module2.exports = parse3;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js
+var require_valid = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var valid = (version3, options) => {
+      const v = parse3(version3, options);
+      return v ? v.version : null;
+    };
+    module2.exports = valid;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js
+var require_clean = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var clean = (version3, options) => {
+      const s = parse3(version3.trim().replace(/^[=v]+/, ""), options);
+      return s ? s.version : null;
+    };
+    module2.exports = clean;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js
+var require_inc = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var inc = (version3, release, options, identifier, identifierBase) => {
+      if (typeof options === "string") {
+        identifierBase = identifier;
+        identifier = options;
+        options = void 0;
+      }
+      try {
+        return new SemVer(
+          version3 instanceof SemVer ? version3.version : version3,
+          options
+        ).inc(release, identifier, identifierBase).version;
+      } catch (er) {
+        return null;
+      }
+    };
+    module2.exports = inc;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js
+var require_diff = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var diff = (version1, version22) => {
+      const v12 = parse3(version1, null, true);
+      const v2 = parse3(version22, null, true);
+      const comparison = v12.compare(v2);
+      if (comparison === 0) {
+        return null;
+      }
+      const v1Higher = comparison > 0;
+      const highVersion = v1Higher ? v12 : v2;
+      const lowVersion = v1Higher ? v2 : v12;
+      const highHasPre = !!highVersion.prerelease.length;
+      const lowHasPre = !!lowVersion.prerelease.length;
+      if (lowHasPre && !highHasPre) {
+        if (!lowVersion.patch && !lowVersion.minor) {
+          return "major";
+        }
+        if (lowVersion.compareMain(highVersion) === 0) {
+          if (lowVersion.minor && !lowVersion.patch) {
+            return "minor";
+          }
+          return "patch";
+        }
+      }
+      const prefix = highHasPre ? "pre" : "";
+      if (v12.major !== v2.major) {
+        return prefix + "major";
+      }
+      if (v12.minor !== v2.minor) {
+        return prefix + "minor";
+      }
+      if (v12.patch !== v2.patch) {
+        return prefix + "patch";
+      }
+      return "prerelease";
+    };
+    module2.exports = diff;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js
+var require_major = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var major = (a, loose) => new SemVer(a, loose).major;
+    module2.exports = major;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js
+var require_minor = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var minor = (a, loose) => new SemVer(a, loose).minor;
+    module2.exports = minor;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js
+var require_patch = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var patch = (a, loose) => new SemVer(a, loose).patch;
+    module2.exports = patch;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js
+var require_prerelease = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var prerelease = (version3, options) => {
+      const parsed = parse3(version3, options);
+      return parsed && parsed.prerelease.length ? parsed.prerelease : null;
+    };
+    module2.exports = prerelease;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js
+var require_compare = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
+    module2.exports = compare;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js
+var require_rcompare = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var rcompare = (a, b, loose) => compare(b, a, loose);
+    module2.exports = rcompare;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js
+var require_compare_loose = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var compareLoose = (a, b) => compare(a, b, true);
+    module2.exports = compareLoose;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js
+var require_compare_build = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var compareBuild = (a, b, loose) => {
+      const versionA = new SemVer(a, loose);
+      const versionB = new SemVer(b, loose);
+      return versionA.compare(versionB) || versionA.compareBuild(versionB);
+    };
+    module2.exports = compareBuild;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js
+var require_sort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js"(exports2, module2) {
+    "use strict";
+    var compareBuild = require_compare_build();
+    var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
+    module2.exports = sort;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js
+var require_rsort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js"(exports2, module2) {
+    "use strict";
+    var compareBuild = require_compare_build();
+    var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
+    module2.exports = rsort;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js
+var require_gt = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var gt = (a, b, loose) => compare(a, b, loose) > 0;
+    module2.exports = gt;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js
+var require_lt = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var lt = (a, b, loose) => compare(a, b, loose) < 0;
+    module2.exports = lt;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js
+var require_eq = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var eq = (a, b, loose) => compare(a, b, loose) === 0;
+    module2.exports = eq;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js
+var require_neq = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var neq = (a, b, loose) => compare(a, b, loose) !== 0;
+    module2.exports = neq;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js
+var require_gte = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var gte = (a, b, loose) => compare(a, b, loose) >= 0;
+    module2.exports = gte;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js
+var require_lte = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var lte = (a, b, loose) => compare(a, b, loose) <= 0;
+    module2.exports = lte;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js
+var require_cmp = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js"(exports2, module2) {
+    "use strict";
+    var eq = require_eq();
+    var neq = require_neq();
+    var gt = require_gt();
+    var gte = require_gte();
+    var lt = require_lt();
+    var lte = require_lte();
+    var cmp = (a, op, b, loose) => {
+      switch (op) {
+        case "===":
+          if (typeof a === "object") {
+            a = a.version;
+          }
+          if (typeof b === "object") {
+            b = b.version;
+          }
+          return a === b;
+        case "!==":
+          if (typeof a === "object") {
+            a = a.version;
+          }
+          if (typeof b === "object") {
+            b = b.version;
+          }
+          return a !== b;
+        case "":
+        case "=":
+        case "==":
+          return eq(a, b, loose);
+        case "!=":
+          return neq(a, b, loose);
+        case ">":
+          return gt(a, b, loose);
+        case ">=":
+          return gte(a, b, loose);
+        case "<":
+          return lt(a, b, loose);
+        case "<=":
+          return lte(a, b, loose);
+        default:
+          throw new TypeError(`Invalid operator: ${op}`);
+      }
+    };
+    module2.exports = cmp;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js
+var require_coerce = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var parse3 = require_parse();
+    var { safeRe: re, t } = require_re();
+    var coerce = (version3, options) => {
+      if (version3 instanceof SemVer) {
+        return version3;
+      }
+      if (typeof version3 === "number") {
+        version3 = String(version3);
+      }
+      if (typeof version3 !== "string") {
+        return null;
+      }
+      options = options || {};
+      let match = null;
+      if (!options.rtl) {
+        match = version3.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
+      } else {
+        const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL];
+        let next;
+        while ((next = coerceRtlRegex.exec(version3)) && (!match || match.index + match[0].length !== version3.length)) {
+          if (!match || next.index + next[0].length !== match.index + match[0].length) {
+            match = next;
+          }
+          coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
+        }
+        coerceRtlRegex.lastIndex = -1;
+      }
+      if (match === null) {
+        return null;
+      }
+      const major = match[2];
+      const minor = match[3] || "0";
+      const patch = match[4] || "0";
+      const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
+      const build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
+      return parse3(`${major}.${minor}.${patch}${prerelease}${build}`, options);
+    };
+    module2.exports = coerce;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js
+var require_truncate = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var constants2 = require_constants();
+    var SemVer = require_semver();
+    var truncate = (version3, truncation, options) => {
+      if (!constants2.RELEASE_TYPES.includes(truncation)) {
+        return null;
+      }
+      const clonedVersion = cloneInputVersion(version3, options);
+      return clonedVersion && doTruncation(clonedVersion, truncation);
+    };
+    var cloneInputVersion = (version3, options) => {
+      const versionStringToParse = version3 instanceof SemVer ? version3.version : version3;
+      return parse3(versionStringToParse, options);
+    };
+    var doTruncation = (version3, truncation) => {
+      if (isPrerelease(truncation)) {
+        return version3.version;
+      }
+      version3.prerelease = [];
+      switch (truncation) {
+        case "major":
+          version3.minor = 0;
+          version3.patch = 0;
+          break;
+        case "minor":
+          version3.patch = 0;
+          break;
+      }
+      return version3.format();
+    };
+    var isPrerelease = (type) => {
+      return type.startsWith("pre");
+    };
+    module2.exports = truncate;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js
+var require_lrucache = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js"(exports2, module2) {
+    "use strict";
+    var LRUCache = class {
+      constructor() {
+        this.max = 1e3;
+        this.map = /* @__PURE__ */ new Map();
+      }
+      get(key) {
+        const value = this.map.get(key);
+        if (value === void 0) {
+          return void 0;
+        } else {
+          this.map.delete(key);
+          this.map.set(key, value);
+          return value;
+        }
+      }
+      delete(key) {
+        return this.map.delete(key);
+      }
+      set(key, value) {
+        const deleted = this.delete(key);
+        if (!deleted && value !== void 0) {
+          if (this.map.size >= this.max) {
+            const firstKey = this.map.keys().next().value;
+            this.delete(firstKey);
+          }
+          this.map.set(key, value);
+        }
+        return this;
+      }
+    };
+    module2.exports = LRUCache;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js
+var require_range = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js"(exports2, module2) {
+    "use strict";
+    var SPACE_CHARACTERS = /\s+/g;
+    var Range = class _Range {
+      constructor(range4, options) {
+        options = parseOptions(options);
+        if (range4 instanceof _Range) {
+          if (range4.loose === !!options.loose && range4.includePrerelease === !!options.includePrerelease) {
+            return range4;
+          } else {
+            return new _Range(range4.raw, options);
+          }
+        }
+        if (range4 instanceof Comparator) {
+          this.raw = range4.value;
+          this.set = [[range4]];
+          this.formatted = void 0;
+          return this;
+        }
+        this.options = options;
+        this.loose = !!options.loose;
+        this.includePrerelease = !!options.includePrerelease;
+        this.raw = range4.trim().replace(SPACE_CHARACTERS, " ");
+        this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length);
+        if (!this.set.length) {
+          throw new TypeError(`Invalid SemVer Range: ${this.raw}`);
+        }
+        if (this.set.length > 1) {
+          const first = this.set[0];
+          this.set = this.set.filter((c) => !isNullSet(c[0]));
+          if (this.set.length === 0) {
+            this.set = [first];
+          } else if (this.set.length > 1) {
+            for (const c of this.set) {
+              if (c.length === 1 && isAny(c[0])) {
+                this.set = [c];
+                break;
+              }
+            }
+          }
+        }
+        this.formatted = void 0;
+      }
+      get range() {
+        if (this.formatted === void 0) {
+          this.formatted = "";
+          for (let i = 0; i < this.set.length; i++) {
+            if (i > 0) {
+              this.formatted += "||";
+            }
+            const comps = this.set[i];
+            for (let k = 0; k < comps.length; k++) {
+              if (k > 0) {
+                this.formatted += " ";
+              }
+              this.formatted += comps[k].toString().trim();
+            }
+          }
+        }
+        return this.formatted;
+      }
+      format() {
+        return this.range;
+      }
+      toString() {
+        return this.range;
+      }
+      parseRange(range4) {
+        range4 = range4.replace(BUILDSTRIPRE, "");
+        const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE);
+        const memoKey = memoOpts + ":" + range4;
+        const cached = cache.get(memoKey);
+        if (cached) {
+          return cached;
+        }
+        const loose = this.options.loose;
+        const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE];
+        range4 = range4.replace(hr, hyphenReplace(this.options.includePrerelease));
+        debug("hyphen replace", range4);
+        range4 = range4.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
+        debug("comparator trim", range4);
+        range4 = range4.replace(re[t.TILDETRIM], tildeTrimReplace);
+        debug("tilde trim", range4);
+        range4 = range4.replace(re[t.CARETTRIM], caretTrimReplace);
+        debug("caret trim", range4);
+        let rangeList = range4.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options));
+        if (loose) {
+          rangeList = rangeList.filter((comp) => {
+            debug("loose invalid filter", comp, this.options);
+            return !!comp.match(re[t.COMPARATORLOOSE]);
+          });
+        }
+        debug("range list", rangeList);
+        const rangeMap = /* @__PURE__ */ new Map();
+        const comparators = rangeList.map((comp) => new Comparator(comp, this.options));
+        for (const comp of comparators) {
+          if (isNullSet(comp)) {
+            return [comp];
+          }
+          rangeMap.set(comp.value, comp);
+        }
+        if (rangeMap.size > 1 && rangeMap.has("")) {
+          rangeMap.delete("");
+        }
+        const result = [...rangeMap.values()];
+        cache.set(memoKey, result);
+        return result;
+      }
+      intersects(range4, options) {
+        if (!(range4 instanceof _Range)) {
+          throw new TypeError("a Range is required");
+        }
+        return this.set.some((thisComparators) => {
+          return isSatisfiable(thisComparators, options) && range4.set.some((rangeComparators) => {
+            return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => {
+              return rangeComparators.every((rangeComparator) => {
+                return thisComparator.intersects(rangeComparator, options);
+              });
+            });
+          });
+        });
+      }
+      // if ANY of the sets match ALL of its comparators, then pass
+      test(version3) {
+        if (!version3) {
+          return false;
+        }
+        if (typeof version3 === "string") {
+          try {
+            version3 = new SemVer(version3, this.options);
+          } catch (er) {
+            return false;
+          }
+        }
+        for (let i = 0; i < this.set.length; i++) {
+          if (testSet(this.set[i], version3, this.options)) {
+            return true;
+          }
+        }
+        return false;
+      }
+    };
+    module2.exports = Range;
+    var LRU = require_lrucache();
+    var cache = new LRU();
+    var parseOptions = require_parse_options();
+    var Comparator = require_comparator();
+    var debug = require_debug();
+    var SemVer = require_semver();
+    var {
+      safeRe: re,
+      src,
+      t,
+      comparatorTrimReplace,
+      tildeTrimReplace,
+      caretTrimReplace
+    } = require_re();
+    var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants();
+    var BUILDSTRIPRE = new RegExp(src[t.BUILD], "g");
+    var isNullSet = (c) => c.value === "<0.0.0-0";
+    var isAny = (c) => c.value === "";
+    var isSatisfiable = (comparators, options) => {
+      let result = true;
+      const remainingComparators = comparators.slice();
+      let testComparator = remainingComparators.pop();
+      while (result && remainingComparators.length) {
+        result = remainingComparators.every((otherComparator) => {
+          return testComparator.intersects(otherComparator, options);
+        });
+        testComparator = remainingComparators.pop();
+      }
+      return result;
+    };
+    var parseComparator = (comp, options) => {
+      comp = comp.replace(re[t.BUILD], "");
+      debug("comp", comp, options);
+      comp = replaceCarets(comp, options);
+      debug("caret", comp);
+      comp = replaceTildes(comp, options);
+      debug("tildes", comp);
+      comp = replaceXRanges(comp, options);
+      debug("xrange", comp);
+      comp = replaceStars(comp, options);
+      debug("stars", comp);
+      return comp;
+    };
+    var isX = (id) => !id || id.toLowerCase() === "x" || id === "*";
+    var invalidXRangeOrder = (M, m, p) => isX(M) && !isX(m) || isX(m) && p && !isX(p);
+    var replaceTildes = (comp, options) => {
+      return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" ");
+    };
+    var replaceTilde = (comp, options) => {
+      const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
+      const z = options.includePrerelease ? "-0" : "";
+      return comp.replace(r, (_, M, m, p, pr) => {
+        debug("tilde", comp, _, M, m, p, pr);
+        let ret;
+        if (isX(M)) {
+          ret = "";
+        } else if (isX(m)) {
+          ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
+        } else if (isX(p)) {
+          ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
+        } else if (pr) {
+          debug("replaceTilde pr", pr);
+          ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
+        } else {
+          ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
+        }
+        debug("tilde return", ret);
+        return ret;
+      });
+    };
+    var replaceCarets = (comp, options) => {
+      return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" ");
+    };
+    var replaceCaret = (comp, options) => {
+      debug("caret", comp, options);
+      const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET];
+      const z = options.includePrerelease ? "-0" : "";
+      return comp.replace(r, (_, M, m, p, pr) => {
+        debug("caret", comp, _, M, m, p, pr);
+        let ret;
+        if (isX(M)) {
+          ret = "";
+        } else if (isX(m)) {
+          ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
+        } else if (isX(p)) {
+          if (M === "0") {
+            ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
+          } else {
+            ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`;
+          }
+        } else if (pr) {
+          debug("replaceCaret pr", pr);
+          if (M === "0") {
+            if (m === "0") {
+              ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`;
+            } else {
+              ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
+            }
+          } else {
+            ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`;
+          }
+        } else {
+          debug("no pr");
+          if (M === "0") {
+            if (m === "0") {
+              ret = `>=${M}.${m}.${p} <${M}.${m}.${+p + 1}-0`;
+            } else {
+              ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
+            }
+          } else {
+            ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`;
+          }
+        }
+        debug("caret return", ret);
+        return ret;
+      });
+    };
+    var replaceXRanges = (comp, options) => {
+      debug("replaceXRanges", comp, options);
+      return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" ");
+    };
+    var replaceXRange = (comp, options) => {
+      comp = comp.trim();
+      const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE];
+      return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
+        debug("xRange", comp, ret, gtlt, M, m, p, pr);
+        if (invalidXRangeOrder(M, m, p)) {
+          return comp;
+        }
+        const xM = isX(M);
+        const xm = xM || isX(m);
+        const xp = xm || isX(p);
+        const anyX = xp;
+        if (gtlt === "=" && anyX) {
+          gtlt = "";
+        }
+        pr = options.includePrerelease ? "-0" : "";
+        if (xM) {
+          if (gtlt === ">" || gtlt === "<") {
+            ret = "<0.0.0-0";
+          } else {
+            ret = "*";
+          }
+        } else if (gtlt && anyX) {
+          if (xm) {
+            m = 0;
+          }
+          p = 0;
+          if (gtlt === ">") {
+            gtlt = ">=";
+            if (xm) {
+              M = +M + 1;
+              m = 0;
+              p = 0;
+            } else {
+              m = +m + 1;
+              p = 0;
+            }
+          } else if (gtlt === "<=") {
+            gtlt = "<";
+            if (xm) {
+              M = +M + 1;
+            } else {
+              m = +m + 1;
+            }
+          }
+          if (gtlt === "<") {
+            pr = "-0";
+          }
+          ret = `${gtlt + M}.${m}.${p}${pr}`;
+        } else if (xm) {
+          ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`;
+        } else if (xp) {
+          ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`;
+        }
+        debug("xRange return", ret);
+        return ret;
+      });
+    };
+    var replaceStars = (comp, options) => {
+      debug("replaceStars", comp, options);
+      return comp.trim().replace(re[t.STAR], "");
+    };
+    var replaceGTE0 = (comp, options) => {
+      debug("replaceGTE0", comp, options);
+      return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], "");
+    };
+    var hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => {
+      if (isX(fM)) {
+        from = "";
+      } else if (isX(fm)) {
+        from = `>=${fM}.0.0${incPr ? "-0" : ""}`;
+      } else if (isX(fp)) {
+        from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`;
+      } else if (fpr) {
+        from = `>=${from}`;
+      } else {
+        from = `>=${from}${incPr ? "-0" : ""}`;
+      }
+      if (isX(tM)) {
+        to = "";
+      } else if (isX(tm)) {
+        to = `<${+tM + 1}.0.0-0`;
+      } else if (isX(tp)) {
+        to = `<${tM}.${+tm + 1}.0-0`;
+      } else if (tpr) {
+        to = `<=${tM}.${tm}.${tp}-${tpr}`;
+      } else if (incPr) {
+        to = `<${tM}.${tm}.${+tp + 1}-0`;
+      } else {
+        to = `<=${to}`;
+      }
+      return `${from} ${to}`.trim();
+    };
+    var testSet = (set, version3, options) => {
+      for (let i = 0; i < set.length; i++) {
+        if (!set[i].test(version3)) {
+          return false;
+        }
+      }
+      if (version3.prerelease.length && !options.includePrerelease) {
+        for (let i = 0; i < set.length; i++) {
+          debug(set[i].semver);
+          if (set[i].semver === Comparator.ANY) {
+            continue;
+          }
+          if (set[i].semver.prerelease.length > 0) {
+            const allowed = set[i].semver;
+            if (allowed.major === version3.major && allowed.minor === version3.minor && allowed.patch === version3.patch) {
+              return true;
+            }
+          }
+        }
+        return false;
+      }
+      return true;
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js
+var require_comparator = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js"(exports2, module2) {
+    "use strict";
+    var ANY = /* @__PURE__ */ Symbol("SemVer ANY");
+    var Comparator = class _Comparator {
+      static get ANY() {
+        return ANY;
+      }
+      constructor(comp, options) {
+        options = parseOptions(options);
+        if (comp instanceof _Comparator) {
+          if (comp.loose === !!options.loose) {
+            return comp;
+          } else {
+            comp = comp.value;
+          }
+        }
+        comp = comp.trim().split(/\s+/).join(" ");
+        debug("comparator", comp, options);
+        this.options = options;
+        this.loose = !!options.loose;
+        this.parse(comp);
+        if (this.semver === ANY) {
+          this.value = "";
+        } else {
+          this.value = this.operator + this.semver.version;
+        }
+        debug("comp", this);
+      }
+      parse(comp) {
+        const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR];
+        const m = comp.match(r);
+        if (!m) {
+          throw new TypeError(`Invalid comparator: ${comp}`);
+        }
+        this.operator = m[1] !== void 0 ? m[1] : "";
+        if (this.operator === "=") {
+          this.operator = "";
+        }
+        if (!m[2]) {
+          this.semver = ANY;
+        } else {
+          this.semver = new SemVer(m[2], this.options.loose);
+        }
+      }
+      toString() {
+        return this.value;
+      }
+      test(version3) {
+        debug("Comparator.test", version3, this.options.loose);
+        if (this.semver === ANY || version3 === ANY) {
+          return true;
+        }
+        if (typeof version3 === "string") {
+          try {
+            version3 = new SemVer(version3, this.options);
+          } catch (er) {
+            return false;
+          }
+        }
+        return cmp(version3, this.operator, this.semver, this.options);
+      }
+      intersects(comp, options) {
+        if (!(comp instanceof _Comparator)) {
+          throw new TypeError("a Comparator is required");
+        }
+        if (this.operator === "") {
+          if (this.value === "") {
+            return true;
+          }
+          return new Range(comp.value, options).test(this.value);
+        } else if (comp.operator === "") {
+          if (comp.value === "") {
+            return true;
+          }
+          return new Range(this.value, options).test(comp.semver);
+        }
+        options = parseOptions(options);
+        if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) {
+          return false;
+        }
+        if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) {
+          return false;
+        }
+        if (this.operator.startsWith(">") && comp.operator.startsWith(">")) {
+          return true;
+        }
+        if (this.operator.startsWith("<") && comp.operator.startsWith("<")) {
+          return true;
+        }
+        if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) {
+          return true;
+        }
+        if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) {
+          return true;
+        }
+        if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) {
+          return true;
+        }
+        return false;
+      }
+    };
+    module2.exports = Comparator;
+    var parseOptions = require_parse_options();
+    var { safeRe: re, t } = require_re();
+    var cmp = require_cmp();
+    var debug = require_debug();
+    var SemVer = require_semver();
+    var Range = require_range();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js
+var require_satisfies = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var satisfies = (version3, range4, options) => {
+      try {
+        range4 = new Range(range4, options);
+      } catch (er) {
+        return false;
+      }
+      return range4.test(version3);
+    };
+    module2.exports = satisfies;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js
+var require_to_comparators = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var toComparators = (range4, options) => new Range(range4, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" "));
+    module2.exports = toComparators;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js
+var require_max_satisfying = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var maxSatisfying = (versions, range4, options) => {
+      let max = null;
+      let maxSV = null;
+      let rangeObj = null;
+      try {
+        rangeObj = new Range(range4, options);
+      } catch (er) {
+        return null;
+      }
+      versions.forEach((v) => {
+        if (rangeObj.test(v)) {
+          if (!max || maxSV.compare(v) === -1) {
+            max = v;
+            maxSV = new SemVer(max, options);
+          }
+        }
+      });
+      return max;
+    };
+    module2.exports = maxSatisfying;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js
+var require_min_satisfying = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var minSatisfying = (versions, range4, options) => {
+      let min = null;
+      let minSV = null;
+      let rangeObj = null;
+      try {
+        rangeObj = new Range(range4, options);
+      } catch (er) {
+        return null;
+      }
+      versions.forEach((v) => {
+        if (rangeObj.test(v)) {
+          if (!min || minSV.compare(v) === 1) {
+            min = v;
+            minSV = new SemVer(min, options);
+          }
+        }
+      });
+      return min;
+    };
+    module2.exports = minSatisfying;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js
+var require_min_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var gt = require_gt();
+    var minVersion = (range4, loose) => {
+      range4 = new Range(range4, loose);
+      let minver = new SemVer("0.0.0");
+      if (range4.test(minver)) {
+        return minver;
+      }
+      minver = new SemVer("0.0.0-0");
+      if (range4.test(minver)) {
+        return minver;
+      }
+      minver = null;
+      for (let i = 0; i < range4.set.length; ++i) {
+        const comparators = range4.set[i];
+        let setMin = null;
+        comparators.forEach((comparator) => {
+          const compver = new SemVer(comparator.semver.version);
+          switch (comparator.operator) {
+            case ">":
+              if (compver.prerelease.length === 0) {
+                compver.patch++;
+              } else {
+                compver.prerelease.push(0);
+              }
+              compver.raw = compver.format();
+            /* fallthrough */
+            case "":
+            case ">=":
+              if (!setMin || gt(compver, setMin)) {
+                setMin = compver;
+              }
+              break;
+            case "<":
+            case "<=":
+              break;
+            /* istanbul ignore next */
+            default:
+              throw new Error(`Unexpected operation: ${comparator.operator}`);
+          }
+        });
+        if (setMin && (!minver || gt(minver, setMin))) {
+          minver = setMin;
+        }
+      }
+      if (minver && range4.test(minver)) {
+        return minver;
+      }
+      return null;
+    };
+    module2.exports = minVersion;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js
+var require_valid2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var validRange = (range4, options) => {
+      try {
+        return new Range(range4, options).range || "*";
+      } catch (er) {
+        return null;
+      }
+    };
+    module2.exports = validRange;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js
+var require_outside = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Comparator = require_comparator();
+    var { ANY } = Comparator;
+    var Range = require_range();
+    var satisfies = require_satisfies();
+    var gt = require_gt();
+    var lt = require_lt();
+    var lte = require_lte();
+    var gte = require_gte();
+    var outside = (version3, range4, hilo, options) => {
+      version3 = new SemVer(version3, options);
+      range4 = new Range(range4, options);
+      let gtfn, ltefn, ltfn, comp, ecomp;
+      switch (hilo) {
+        case ">":
+          gtfn = gt;
+          ltefn = lte;
+          ltfn = lt;
+          comp = ">";
+          ecomp = ">=";
+          break;
+        case "<":
+          gtfn = lt;
+          ltefn = gte;
+          ltfn = gt;
+          comp = "<";
+          ecomp = "<=";
+          break;
+        default:
+          throw new TypeError('Must provide a hilo val of "<" or ">"');
+      }
+      if (satisfies(version3, range4, options)) {
+        return false;
+      }
+      for (let i = 0; i < range4.set.length; ++i) {
+        const comparators = range4.set[i];
+        let high = null;
+        let low = null;
+        comparators.forEach((comparator) => {
+          if (comparator.semver === ANY) {
+            comparator = new Comparator(">=0.0.0");
+          }
+          high = high || comparator;
+          low = low || comparator;
+          if (gtfn(comparator.semver, high.semver, options)) {
+            high = comparator;
+          } else if (ltfn(comparator.semver, low.semver, options)) {
+            low = comparator;
+          }
+        });
+        if (high.operator === comp || high.operator === ecomp) {
+          return false;
+        }
+        if ((!low.operator || low.operator === comp) && ltefn(version3, low.semver)) {
+          return false;
+        } else if (low.operator === ecomp && ltfn(version3, low.semver)) {
+          return false;
+        }
+      }
+      return true;
+    };
+    module2.exports = outside;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js
+var require_gtr = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js"(exports2, module2) {
+    "use strict";
+    var outside = require_outside();
+    var gtr = (version3, range4, options) => outside(version3, range4, ">", options);
+    module2.exports = gtr;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js
+var require_ltr = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js"(exports2, module2) {
+    "use strict";
+    var outside = require_outside();
+    var ltr = (version3, range4, options) => outside(version3, range4, "<", options);
+    module2.exports = ltr;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js
+var require_intersects = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var intersects = (r1, r2, options) => {
+      r1 = new Range(r1, options);
+      r2 = new Range(r2, options);
+      return r1.intersects(r2, options);
+    };
+    module2.exports = intersects;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js
+var require_simplify = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js"(exports2, module2) {
+    "use strict";
+    var satisfies = require_satisfies();
+    var compare = require_compare();
+    module2.exports = (versions, range4, options) => {
+      const set = [];
+      let first = null;
+      let prev = null;
+      const v = versions.sort((a, b) => compare(a, b, options));
+      for (const version3 of v) {
+        const included = satisfies(version3, range4, options);
+        if (included) {
+          prev = version3;
+          if (!first) {
+            first = version3;
+          }
+        } else {
+          if (prev) {
+            set.push([first, prev]);
+          }
+          prev = null;
+          first = null;
+        }
+      }
+      if (first) {
+        set.push([first, null]);
+      }
+      const ranges = [];
+      for (const [min, max] of set) {
+        if (min === max) {
+          ranges.push(min);
+        } else if (!max && min === v[0]) {
+          ranges.push("*");
+        } else if (!max) {
+          ranges.push(`>=${min}`);
+        } else if (min === v[0]) {
+          ranges.push(`<=${max}`);
+        } else {
+          ranges.push(`${min} - ${max}`);
+        }
+      }
+      const simplified = ranges.join(" || ");
+      const original = typeof range4.raw === "string" ? range4.raw : String(range4);
+      return simplified.length < original.length ? simplified : range4;
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js
+var require_subset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var Comparator = require_comparator();
+    var { ANY } = Comparator;
+    var satisfies = require_satisfies();
+    var compare = require_compare();
+    var subset = (sub, dom, options = {}) => {
+      if (sub === dom) {
+        return true;
+      }
+      sub = new Range(sub, options);
+      dom = new Range(dom, options);
+      let sawNonNull = false;
+      OUTER: for (const simpleSub of sub.set) {
+        for (const simpleDom of dom.set) {
+          const isSub = simpleSubset(simpleSub, simpleDom, options);
+          sawNonNull = sawNonNull || isSub !== null;
+          if (isSub) {
+            continue OUTER;
+          }
+        }
+        if (sawNonNull) {
+          return false;
+        }
+      }
+      return true;
+    };
+    var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")];
+    var minimumVersion = [new Comparator(">=0.0.0")];
+    var simpleSubset = (sub, dom, options) => {
+      if (sub === dom) {
+        return true;
+      }
+      if (sub.length === 1 && sub[0].semver === ANY) {
+        if (dom.length === 1 && dom[0].semver === ANY) {
+          return true;
+        } else if (options.includePrerelease) {
+          sub = minimumVersionWithPreRelease;
+        } else {
+          sub = minimumVersion;
+        }
+      }
+      if (dom.length === 1 && dom[0].semver === ANY) {
+        if (options.includePrerelease) {
+          return true;
+        } else {
+          dom = minimumVersion;
+        }
+      }
+      const eqSet = /* @__PURE__ */ new Set();
+      let gt, lt;
+      for (const c of sub) {
+        if (c.operator === ">" || c.operator === ">=") {
+          gt = higherGT(gt, c, options);
+        } else if (c.operator === "<" || c.operator === "<=") {
+          lt = lowerLT(lt, c, options);
+        } else {
+          eqSet.add(c.semver);
+        }
+      }
+      if (eqSet.size > 1) {
+        return null;
+      }
+      let gtltComp;
+      if (gt && lt) {
+        gtltComp = compare(gt.semver, lt.semver, options);
+        if (gtltComp > 0) {
+          return null;
+        } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) {
+          return null;
+        }
+      }
+      for (const eq of eqSet) {
+        if (gt && !satisfies(eq, String(gt), options)) {
+          return null;
+        }
+        if (lt && !satisfies(eq, String(lt), options)) {
+          return null;
+        }
+        for (const c of dom) {
+          if (!satisfies(eq, String(c), options)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      let higher, lower;
+      let hasDomLT, hasDomGT;
+      let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false;
+      let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
+      if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) {
+        needDomLTPre = false;
+      }
+      for (const c of dom) {
+        hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">=";
+        hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<=";
+        if (gt) {
+          if (needDomGTPre) {
+            if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) {
+              needDomGTPre = false;
+            }
+          }
+          if (c.operator === ">" || c.operator === ">=") {
+            higher = higherGT(gt, c, options);
+            if (higher === c && higher !== gt) {
+              return false;
+            }
+          } else if (gt.operator === ">=" && !c.test(gt.semver)) {
+            return false;
+          }
+        }
+        if (lt) {
+          if (needDomLTPre) {
+            if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) {
+              needDomLTPre = false;
+            }
+          }
+          if (c.operator === "<" || c.operator === "<=") {
+            lower = lowerLT(lt, c, options);
+            if (lower === c && lower !== lt) {
+              return false;
+            }
+          } else if (lt.operator === "<=" && !c.test(lt.semver)) {
+            return false;
+          }
+        }
+        if (!c.operator && (lt || gt) && gtltComp !== 0) {
+          return false;
+        }
+      }
+      if (gt && hasDomLT && !lt && gtltComp !== 0) {
+        return false;
+      }
+      if (lt && hasDomGT && !gt && gtltComp !== 0) {
+        return false;
+      }
+      if (needDomGTPre || needDomLTPre) {
+        return false;
+      }
+      return true;
+    };
+    var higherGT = (a, b, options) => {
+      if (!a) {
+        return b;
+      }
+      const comp = compare(a.semver, b.semver, options);
+      return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a;
+    };
+    var lowerLT = (a, b, options) => {
+      if (!a) {
+        return b;
+      }
+      const comp = compare(a.semver, b.semver, options);
+      return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a;
+    };
+    module2.exports = subset;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js
+var require_semver2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js"(exports2, module2) {
+    "use strict";
+    var internalRe = require_re();
+    var constants2 = require_constants();
+    var SemVer = require_semver();
+    var identifiers = require_identifiers();
+    var parse3 = require_parse();
+    var valid = require_valid();
+    var clean = require_clean();
+    var inc = require_inc();
+    var diff = require_diff();
+    var major = require_major();
+    var minor = require_minor();
+    var patch = require_patch();
+    var prerelease = require_prerelease();
+    var compare = require_compare();
+    var rcompare = require_rcompare();
+    var compareLoose = require_compare_loose();
+    var compareBuild = require_compare_build();
+    var sort = require_sort();
+    var rsort = require_rsort();
+    var gt = require_gt();
+    var lt = require_lt();
+    var eq = require_eq();
+    var neq = require_neq();
+    var gte = require_gte();
+    var lte = require_lte();
+    var cmp = require_cmp();
+    var coerce = require_coerce();
+    var truncate = require_truncate();
+    var Comparator = require_comparator();
+    var Range = require_range();
+    var satisfies = require_satisfies();
+    var toComparators = require_to_comparators();
+    var maxSatisfying = require_max_satisfying();
+    var minSatisfying = require_min_satisfying();
+    var minVersion = require_min_version();
+    var validRange = require_valid2();
+    var outside = require_outside();
+    var gtr = require_gtr();
+    var ltr = require_ltr();
+    var intersects = require_intersects();
+    var simplifyRange = require_simplify();
+    var subset = require_subset();
+    module2.exports = {
+      parse: parse3,
+      valid,
+      clean,
+      inc,
+      diff,
+      major,
+      minor,
+      patch,
+      prerelease,
+      compare,
+      rcompare,
+      compareLoose,
+      compareBuild,
+      sort,
+      rsort,
+      gt,
+      lt,
+      eq,
+      neq,
+      gte,
+      lte,
+      cmp,
+      coerce,
+      truncate,
+      Comparator,
+      Range,
+      satisfies,
+      toComparators,
+      maxSatisfying,
+      minSatisfying,
+      minVersion,
+      validRange,
+      outside,
+      gtr,
+      ltr,
+      intersects,
+      simplifyRange,
+      subset,
+      SemVer,
+      re: internalRe.re,
+      src: internalRe.src,
+      tokens: internalRe.t,
+      SEMVER_SPEC_VERSION: constants2.SEMVER_SPEC_VERSION,
+      RELEASE_TYPES: constants2.RELEASE_TYPES,
+      compareIdentifiers: identifiers.compareIdentifiers,
+      rcompareIdentifiers: identifiers.rcompareIdentifiers
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json
+var require_cli_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json"(exports2, module2) {
+    module2.exports = { version: "2.1142.0" };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json
+var require_assets_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/AssetManifest",
+      definitions: {
+        AssetManifest: {
+          description: "Definitions for the asset manifest",
+          type: "object",
+          properties: {
+            version: {
+              description: "Version of the manifest",
+              type: "string"
+            },
+            files: {
+              description: "The file assets in this manifest (Default - No files)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FileAsset"
+              }
+            },
+            dockerImages: {
+              description: "The Docker image assets in this manifest (Default - No Docker images)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/DockerImageAsset"
+              }
+            }
+          },
+          required: [
+            "version"
+          ]
+        },
+        FileAsset: {
+          description: "A file asset",
+          type: "object",
+          properties: {
+            displayName: {
+              description: "A display name for this asset (Default - The identifier will be used as the display name)",
+              type: "string"
+            },
+            source: {
+              $ref: "#/definitions/FileSource",
+              description: "Source description for file assets"
+            },
+            destinations: {
+              description: "Destinations for this file asset",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FileDestination"
+              }
+            }
+          },
+          required: [
+            "destinations",
+            "source"
+          ]
+        },
+        FileSource: {
+          description: "Describe the source of a file asset",
+          type: "object",
+          properties: {
+            executable: {
+              description: "External command which will produce the file asset to upload. (Default - Exactly one of `executable` and `path` is required.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            path: {
+              description: "The filesystem object to upload\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `executable` and `path` is required.)",
+              type: "string"
+            },
+            packaging: {
+              description: "Packaging method\n\nOnly allowed when `path` is specified. (Default FILE)",
+              enum: [
+                "file",
+                "zip"
+              ],
+              type: "string"
+            }
+          }
+        },
+        FileDestination: {
+          description: "Where in S3 a file asset needs to be published",
+          type: "object",
+          properties: {
+            bucketName: {
+              description: "The name of the bucket",
+              type: "string"
+            },
+            objectKey: {
+              description: "The destination object key",
+              type: "string"
+            },
+            region: {
+              description: "The region where this asset will need to be published (Default - Current region)",
+              type: "string"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "bucketName",
+            "objectKey"
+          ]
+        },
+        DockerImageAsset: {
+          description: "A file asset",
+          type: "object",
+          properties: {
+            displayName: {
+              description: "A display name for this asset (Default - The identifier will be used as the display name)",
+              type: "string"
+            },
+            source: {
+              $ref: "#/definitions/DockerImageSource",
+              description: "Source description for container assets"
+            },
+            destinations: {
+              description: "Destinations for this container asset",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/DockerImageDestination"
+              }
+            }
+          },
+          required: [
+            "destinations",
+            "source"
+          ]
+        },
+        DockerImageSource: {
+          description: "Properties for how to produce a Docker image from a source",
+          type: "object",
+          properties: {
+            directory: {
+              description: "The directory containing the Docker image build instructions.\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `directory` and `executable` is required)",
+              type: "string"
+            },
+            executable: {
+              description: "A command-line executable that returns the name of a local\nDocker image on stdout after being run. (Default - Exactly one of `directory` and `executable` is required)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            dockerFile: {
+              description: "The name of the file with build instructions\n\nOnly allowed when `directory` is set. (Default Dockerfile)",
+              type: "string"
+            },
+            dockerBuildTarget: {
+              description: "Target build stage in a Dockerfile with multiple build stages\n\nOnly allowed when `directory` is set. (Default - The last stage in the Dockerfile)",
+              type: "string"
+            },
+            dockerBuildArgs: {
+              description: "Additional build arguments\n\nOnly allowed when `directory` is set. (Default - No additional build arguments)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            dockerBuildContexts: {
+              description: "Additional build contexts\n\nOnly allowed when `directory` is set. (Default - No additional build contexts)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            dockerBuildSsh: {
+              description: "SSH agent socket or keys\n\nRequires building with docker buildkit. (Default - No ssh flag is set)",
+              type: "string"
+            },
+            dockerBuildSecrets: {
+              description: "Additional build secrets\n\nOnly allowed when `directory` is set. (Default - No additional build secrets)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            networkMode: {
+              description: "Networking mode for the RUN commands during build. _Requires Docker Engine API v1.25+_.\n\nSpecify this property to build images on a specific networking mode. (Default - no networking mode specified)",
+              type: "string"
+            },
+            platform: {
+              description: "Platform to build for. _Requires Docker Buildx_.\n\nSpecify this property to build images on a specific platform/architecture. (Default - current machine platform)",
+              type: "string"
+            },
+            dockerOutputs: {
+              description: "Outputs (Default - no outputs are passed to the build command (default outputs are used))",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            cacheFrom: {
+              description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/DockerCacheOption"
+              }
+            },
+            cacheTo: {
+              description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)",
+              $ref: "#/definitions/DockerCacheOption"
+            },
+            cacheDisabled: {
+              description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)",
+              type: "boolean"
+            }
+          }
+        },
+        DockerCacheOption: {
+          description: "Options for configuring the Docker cache backend",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)",
+              type: "string"
+            },
+            params: {
+              description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        DockerImageDestination: {
+          description: "Where to publish docker images",
+          type: "object",
+          properties: {
+            repositoryName: {
+              description: "Name of the ECR repository to publish to",
+              type: "string"
+            },
+            imageTag: {
+              description: "Tag of the image to publish",
+              type: "string"
+            },
+            region: {
+              description: "The region where this asset will need to be published (Default - Current region)",
+              type: "string"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "imageTag",
+            "repositoryName"
+          ]
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json
+var require_cloud_assembly_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/AssemblyManifest",
+      definitions: {
+        AssemblyManifest: {
+          description: "A manifest which describes the cloud assembly.",
+          type: "object",
+          properties: {
+            version: {
+              description: "Protocol version",
+              type: "string"
+            },
+            minimumCliVersion: {
+              description: "Required CLI version, if available\n\nIf the manifest producer knows, it can put the minimum version of the CLI\nhere that supports reading this assembly.\n\nIf set, it can be used to show a more informative error message to users. (Default - Minimum CLI version unknown)",
+              type: "string"
+            },
+            artifacts: {
+              description: "The set of artifacts in this assembly. (Default - no artifacts.)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/ArtifactManifest"
+              }
+            },
+            missing: {
+              description: "Missing context information. If this field has values, it means that the\ncloud assembly is not complete and should not be deployed. (Default - no missing context.)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/MissingContext"
+              }
+            },
+            runtime: {
+              description: "Runtime information. (Default - no info.)",
+              $ref: "#/definitions/RuntimeInfo"
+            }
+          },
+          required: [
+            "version"
+          ]
+        },
+        ArtifactManifest: {
+          description: "A manifest for a single artifact within the cloud assembly.",
+          type: "object",
+          properties: {
+            type: {
+              $ref: "#/definitions/ArtifactType",
+              description: "The type of artifact."
+            },
+            environment: {
+              description: "The environment into which this artifact is deployed. (Default - no envrionment.)",
+              type: "string"
+            },
+            metadata: {
+              description: "Associated metadata.\n\nMetadata can be stored directly in the assembly manifest, as well as in a\nseparate file (see `additionalMetadataFile`). It should prefer to be stored\nin the additional file, as that will reduce the size of the assembly\nmanifest in cases of a lot of metdata (which CDK does emit by default). (Default - no metadata.)",
+              type: "object",
+              additionalProperties: {
+                type: "array",
+                items: {
+                  $ref: "#/definitions/MetadataEntry"
+                }
+              }
+            },
+            additionalMetadataFile: {
+              description: "A file with additional metadata entries.\n\nThe schema of this file is exactly the same as the type of the `metadata` field.\nIn other words, that file contains an object mapping construct paths to arrays\nof metadata entries. (Default - no additional metadata)",
+              type: "string"
+            },
+            dependencies: {
+              description: "IDs of artifacts that must be deployed before this artifact. (Default - no dependencies.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            properties: {
+              description: "The set of properties for this artifact (depends on type) (Default - no properties.)",
+              anyOf: [
+                {
+                  $ref: "#/definitions/AwsCloudFormationStackProperties"
+                },
+                {
+                  $ref: "#/definitions/AssetManifestProperties"
+                },
+                {
+                  $ref: "#/definitions/TreeArtifactProperties"
+                },
+                {
+                  $ref: "#/definitions/NestedCloudAssemblyProperties"
+                },
+                {
+                  $ref: "#/definitions/FeatureFlagReportProperties"
+                }
+              ]
+            },
+            displayName: {
+              description: `A string that can be shown to a user to uniquely identify this artifact inside a cloud assembly tree
+
+Is used by the CLI to present a list of stacks to the user in a way that
+makes sense to them. Even though the property name "display name" doesn't
+imply it, this field is used to select stacks as well, so all stacks should
+have a unique display name. (Default - no display name)`,
+              type: "string"
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        ArtifactType: {
+          description: "Type of cloud artifact.",
+          type: "string",
+          enum: [
+            "none",
+            "aws:cloudformation:stack",
+            "cdk:tree",
+            "cdk:asset-manifest",
+            "cdk:cloud-assembly",
+            "cdk:feature-flag-report"
+          ]
+        },
+        MetadataEntry: {
+          description: "A metadata entry in a cloud assembly artifact.",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of the metadata entry.",
+              type: "string"
+            },
+            data: {
+              description: "The data. (Default - no data.)",
+              anyOf: [
+                {
+                  $ref: "#/definitions/FileAssetMetadataEntry"
+                },
+                {
+                  $ref: "#/definitions/ContainerImageAssetMetadataEntry"
+                },
+                {
+                  $ref: "#/definitions/PropertyMutationMetadataEntry"
+                },
+                {
+                  type: "array",
+                  items: {
+                    anyOf: [
+                      {
+                        $ref: "#/definitions/Tag"
+                      },
+                      {
+                        type: "string"
+                      }
+                    ]
+                  }
+                },
+                {
+                  type: [
+                    "string",
+                    "number",
+                    "boolean"
+                  ]
+                },
+                {
+                  description: "Free form data."
+                }
+              ]
+            },
+            trace: {
+              description: "A stack trace for when the entry was created. (Default - no trace.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        FileAssetMetadataEntry: {
+          description: "Metadata Entry spec for files.",
+          type: "object",
+          properties: {
+            packaging: {
+              description: "Requested packaging style",
+              enum: [
+                "file",
+                "zip"
+              ],
+              type: "string"
+            },
+            s3BucketParameter: {
+              description: "Name of parameter where S3 bucket should be passed in",
+              type: "string"
+            },
+            s3KeyParameter: {
+              description: "Name of parameter where S3 key should be passed in",
+              type: "string"
+            },
+            artifactHashParameter: {
+              description: "The name of the parameter where the hash of the bundled asset should be passed in.",
+              type: "string"
+            },
+            id: {
+              description: "Logical identifier for the asset",
+              type: "string"
+            },
+            sourceHash: {
+              description: "The hash of the asset source.",
+              type: "string"
+            },
+            path: {
+              description: "Path on disk to the asset",
+              type: "string"
+            }
+          },
+          required: [
+            "artifactHashParameter",
+            "id",
+            "packaging",
+            "path",
+            "s3BucketParameter",
+            "s3KeyParameter",
+            "sourceHash"
+          ]
+        },
+        ContainerImageAssetMetadataEntry: {
+          description: "Metadata Entry spec for container images.",
+          type: "object",
+          properties: {
+            packaging: {
+              description: "Type of asset",
+              type: "string",
+              const: "container-image"
+            },
+            imageNameParameter: {
+              description: 'ECR Repository name and repo digest (separated by "@sha256:") where this\nimage is stored. (Default undefined If not specified, `repositoryName` and `imageTag` are\nrequired because otherwise how will the stack know where to find the asset,\nha?)',
+              type: "string"
+            },
+            repositoryName: {
+              description: "ECR repository name, if omitted a default name based on the asset's ID is\nused instead. Specify this property if you need to statically address the\nimage, e.g. from a Kubernetes Pod. Note, this is only the repository name,\nwithout the registry and the tag parts. (Default - this parameter is REQUIRED after 1.21.0)",
+              type: "string"
+            },
+            imageTag: {
+              description: "The docker image tag to use for tagging pushed images. This field is\nrequired if `imageParameterName` is ommited (otherwise, the app won't be\nable to find the image). (Default - this parameter is REQUIRED after 1.21.0)",
+              type: "string"
+            },
+            buildArgs: {
+              description: "Build args to pass to the `docker build` command (Default no build args are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            buildContexts: {
+              description: "Build contexts to pass to the `docker build` command (Default no build contexts are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            buildSsh: {
+              description: "SSH agent socket or keys to pass to the `docker build` command (Default no ssh arg is passed)",
+              type: "string"
+            },
+            buildSecrets: {
+              description: "Build secrets to pass to the `docker build` command (Default no build secrets are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            target: {
+              description: "Docker target to build to (Default no build target)",
+              type: "string"
+            },
+            file: {
+              description: "Path to the Dockerfile (relative to the directory). (Default - no file is passed)",
+              type: "string"
+            },
+            networkMode: {
+              description: "Networking mode for the RUN commands during build. (Default - no networking mode specified)",
+              type: "string"
+            },
+            platform: {
+              description: "Platform to build for. _Requires Docker Buildx_. (Default - current machine platform)",
+              type: "string"
+            },
+            outputs: {
+              description: "Outputs to pass to the `docker build` command. (Default - no outputs are passed to the build command (default outputs are used))",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            cacheFrom: {
+              description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ContainerImageAssetCacheOption"
+              }
+            },
+            cacheTo: {
+              description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)",
+              $ref: "#/definitions/ContainerImageAssetCacheOption"
+            },
+            cacheDisabled: {
+              description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)",
+              type: "boolean"
+            },
+            id: {
+              description: "Logical identifier for the asset",
+              type: "string"
+            },
+            sourceHash: {
+              description: "The hash of the asset source.",
+              type: "string"
+            },
+            path: {
+              description: "Path on disk to the asset",
+              type: "string"
+            }
+          },
+          required: [
+            "id",
+            "packaging",
+            "path",
+            "sourceHash"
+          ]
+        },
+        ContainerImageAssetCacheOption: {
+          description: "Options for configuring the Docker cache backend",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)",
+              type: "string"
+            },
+            params: {
+              description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        PropertyMutationMetadataEntry: {
+          description: "Metadata type of a PropertyMutation",
+          type: "object",
+          properties: {
+            propertyName: {
+              description: "Name of the property",
+              type: "string"
+            },
+            stackTrace: {
+              description: "Stack trace of the mutation",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "propertyName",
+            "stackTrace"
+          ]
+        },
+        Tag: {
+          description: "Metadata Entry spec for stack tag.",
+          type: "object",
+          properties: {
+            key: {
+              description: 'Tag key.\n\n(In the actual file on disk this will be cased as "Key", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)',
+              type: "string"
+            },
+            value: {
+              description: 'Tag value.\n\n(In the actual file on disk this will be cased as "Value", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)',
+              type: "string"
+            }
+          },
+          required: [
+            "key",
+            "value"
+          ]
+        },
+        AwsCloudFormationStackProperties: {
+          description: "Artifact properties for CloudFormation stacks.",
+          type: "object",
+          properties: {
+            templateFile: {
+              description: "A file relative to the assembly root which contains the CloudFormation template for this stack.",
+              type: "string"
+            },
+            parameters: {
+              description: "Values for CloudFormation stack parameters that should be passed when the stack is deployed. (Default - No parameters)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            tags: {
+              description: "Values for CloudFormation stack tags that should be passed when the stack is deployed.\n\nN.B.: Tags are also written to stack metadata, under the path of the Stack\nconstruct. Only in CDK CLI v1 are those tags found in metadata used for\nactual deployments; in all stable versions of CDK only the stack tags\ndirectly found in the `tags` property of `AwsCloudFormationStack` artifact\n(i.e., this property) are used. (Default - No tags)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            notificationArns: {
+              description: "SNS Notification ARNs that should receive CloudFormation Stack Events. (Default - No notification arns)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            stackName: {
+              description: "The name to use for the CloudFormation stack. (Default - name derived from artifact ID)",
+              type: "string"
+            },
+            terminationProtection: {
+              description: "Whether to enable termination protection for this stack.",
+              default: false,
+              type: "boolean"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed to deploy the stack (Default - No role is assumed (current credentials are used))",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "External ID to use when assuming role for cloudformation deployments (Default - No external ID)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            },
+            cloudFormationExecutionRoleArn: {
+              description: "The role that is passed to CloudFormation to execute the change set (Default - No role is passed (currently assumed role/credentials are used))",
+              type: "string"
+            },
+            lookupRole: {
+              description: "The role to use to look up values from the target AWS account (Default - No role is assumed (current credentials are used))",
+              $ref: "#/definitions/BootstrapRole"
+            },
+            stackTemplateAssetObjectUrl: {
+              description: "If the stack template has already been included in the asset manifest, its asset URL (Default - Not uploaded yet, upload just before deploying)",
+              type: "string"
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to deploy this stack (Default - No bootstrap stack required)",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "SSM parameter where the bootstrap stack version number can be found\n\nOnly used if `requiresBootstrapStackVersion` is set.\n\n- If this value is not set, the bootstrap stack name must be known at\n  deployment time so the stack version can be looked up from the stack\n  outputs.\n- If this value is set, the bootstrap stack can have any name because\n  we won't need to look it up. (Default - Bootstrap stack version number looked up)",
+              type: "string"
+            },
+            validateOnSynth: {
+              description: "Whether this stack should be validated by the CLI after synthesis (Default - false)",
+              type: "boolean"
+            }
+          },
+          required: [
+            "templateFile"
+          ]
+        },
+        BootstrapRole: {
+          description: "Information needed to access an IAM role created\nas part of the bootstrap process",
+          type: "object",
+          properties: {
+            arn: {
+              description: "The ARN of the IAM role created as part of bootrapping\ne.g. lookupRoleArn",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "External ID to use when assuming the bootstrap role (Default - No external ID)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `arn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to use this role (Default - No bootstrap stack required)",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "Name of SSM parameter with bootstrap stack version (Default - Discover SSM parameter by reading stack)",
+              type: "string"
+            }
+          },
+          required: [
+            "arn"
+          ]
+        },
+        AssetManifestProperties: {
+          description: "Artifact properties for the Asset Manifest",
+          type: "object",
+          properties: {
+            file: {
+              description: "Filename of the asset manifest",
+              type: "string"
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to deploy this stack (Default - Version 1 (basic modern bootstrap stack))",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "SSM parameter where the bootstrap stack version number can be found\n\n- If this value is not set, the bootstrap stack name must be known at\n  deployment time so the stack version can be looked up from the stack\n  outputs.\n- If this value is set, the bootstrap stack can have any name because\n  we won't need to look it up. (Default - Bootstrap stack version number looked up)",
+              type: "string"
+            }
+          },
+          required: [
+            "file"
+          ]
+        },
+        TreeArtifactProperties: {
+          description: "Artifact properties for the Construct Tree Artifact",
+          type: "object",
+          properties: {
+            file: {
+              description: "Filename of the tree artifact",
+              type: "string"
+            }
+          },
+          required: [
+            "file"
+          ]
+        },
+        NestedCloudAssemblyProperties: {
+          description: "Artifact properties for nested cloud assemblies",
+          type: "object",
+          properties: {
+            directoryName: {
+              description: "Relative path to the nested cloud assembly",
+              type: "string"
+            },
+            displayName: {
+              description: "Display name for the cloud assembly (Default - The artifact ID)",
+              type: "string"
+            }
+          },
+          required: [
+            "directoryName"
+          ]
+        },
+        FeatureFlagReportProperties: {
+          description: "Artifact properties for a feature flag report\n\nA feature flag report is small enough that all the properties can be inlined\nhere, and doesn't need an additional file.",
+          type: "object",
+          properties: {
+            module: {
+              description: "The library that this feature flag report applies to.",
+              type: "string"
+            },
+            flags: {
+              description: "Information about every feature flag supported by this library.",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FeatureFlag"
+              }
+            }
+          },
+          required: [
+            "flags",
+            "module"
+          ]
+        },
+        FeatureFlag: {
+          description: "A single feature flag",
+          type: "object",
+          properties: {
+            recommendedValue: {
+              description: "The library-recommended value for this flag, if any\n\nIt is possible that there is no recommended value. (Default - No recommended value.)"
+            },
+            userValue: {
+              description: "The value configured by the user\n\nThis is the value configured at the root of the tree. Users may also have\nconfigured values at specific locations in the tree; we don't report on\nthose. (Default - Not configured by the user)"
+            },
+            explanation: {
+              description: "Explanation about the purpose of this flag that can be shown to the user. (Default - No description)",
+              type: "string"
+            },
+            unconfiguredBehavesLike: {
+              description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nThe structure of this field is a historical accident. The type of this field\nshould have been boolean, which should have contained the default value for\nthe flag appropriate for the *current* version of the CDK library. We are\nnot rectifying this accident because doing so\n\nInstead, the canonical way to access this value is by evaluating\n`unconfiguredBehavesLike?.v2 ?? false`.",
+              default: false,
+              $ref: "#/definitions/UnconfiguredBehavesLike"
+            }
+          }
+        },
+        UnconfiguredBehavesLike: {
+          type: "object",
+          properties: {
+            v1: {
+              description: "Historical accident, don't use.\n\nThis value may be present, but it should never be used. The actual value is\nin the `v2` field, regardless of the version of the CDK library. (Default - ignore)"
+            },
+            v2: {
+              description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nEven though it is called 'v2', this is the official name of this field. In\nany future versions of CDK (v3, v4, ...), this field will still be called 'v2'.\n\nThe structure of this field is a historical accident. See the comment on\n`unconfiguredBehavesLike` for more information.",
+              default: false
+            }
+          }
+        },
+        MissingContext: {
+          description: "Represents a missing piece of context.",
+          type: "object",
+          properties: {
+            key: {
+              description: "The missing context key.",
+              type: "string"
+            },
+            provider: {
+              $ref: "#/definitions/ContextProvider",
+              description: "The provider from which we expect this context key to be obtained."
+            },
+            props: {
+              $ref: "#/definitions/ContextQueryProperties",
+              description: "A set of provider-specific options."
+            }
+          },
+          required: [
+            "key",
+            "props",
+            "provider"
+          ]
+        },
+        ContextProvider: {
+          description: "Identifier for the context provider",
+          type: "string",
+          enum: [
+            "ami",
+            "availability-zones",
+            "hosted-zone",
+            "ssm",
+            "vpc-provider",
+            "endpoint-service-availability-zones",
+            "load-balancer",
+            "load-balancer-listener",
+            "security-group",
+            "key-provider",
+            "cc-api-provider",
+            "plugin"
+          ]
+        },
+        ContextQueryProperties: {
+          anyOf: [
+            {
+              $ref: "#/definitions/AmiContextQuery"
+            },
+            {
+              $ref: "#/definitions/AvailabilityZonesContextQuery"
+            },
+            {
+              $ref: "#/definitions/HostedZoneContextQuery"
+            },
+            {
+              $ref: "#/definitions/SSMParameterContextQuery"
+            },
+            {
+              $ref: "#/definitions/VpcContextQuery"
+            },
+            {
+              $ref: "#/definitions/EndpointServiceAvailabilityZonesContextQuery"
+            },
+            {
+              $ref: "#/definitions/LoadBalancerContextQuery"
+            },
+            {
+              $ref: "#/definitions/LoadBalancerListenerContextQuery"
+            },
+            {
+              $ref: "#/definitions/SecurityGroupContextQuery"
+            },
+            {
+              $ref: "#/definitions/KeyContextQuery"
+            },
+            {
+              $ref: "#/definitions/CcApiContextQuery"
+            },
+            {
+              $ref: "#/definitions/PluginContextQuery"
+            }
+          ]
+        },
+        AmiContextQuery: {
+          description: "Query to AMI context provider",
+          type: "object",
+          properties: {
+            owners: {
+              description: "Owners to DescribeImages call (Default - All owners)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            filters: {
+              description: "Filters to DescribeImages call",
+              type: "object",
+              additionalProperties: {
+                type: "array",
+                items: {
+                  type: "string"
+                }
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "filters",
+            "region"
+          ]
+        },
+        AvailabilityZonesContextQuery: {
+          description: "Query to availability zone context provider",
+          type: "object",
+          properties: {
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region"
+          ]
+        },
+        HostedZoneContextQuery: {
+          description: "Query to hosted zone context provider",
+          type: "object",
+          properties: {
+            domainName: {
+              description: "The domain name e.g. example.com to lookup",
+              type: "string"
+            },
+            privateZone: {
+              description: "True if the zone you want to find is a private hosted zone",
+              default: false,
+              type: "boolean"
+            },
+            vpcId: {
+              description: "The VPC ID to that the private zone must be associated with\n\nIf you provide VPC ID and privateZone is false, this will return no results\nand raise an error. (Default - Required if privateZone=true)",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "domainName",
+            "region"
+          ]
+        },
+        SSMParameterContextQuery: {
+          description: "Query to SSM Parameter Context Provider",
+          type: "object",
+          properties: {
+            parameterName: {
+              description: "Parameter name to query",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "parameterName",
+            "region"
+          ]
+        },
+        VpcContextQuery: {
+          description: "Query input for looking up a VPC",
+          type: "object",
+          properties: {
+            filter: {
+              description: "Filters to apply to the VPC\n\nFilter parameters are the same as passed to DescribeVpcs.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            returnAsymmetricSubnets: {
+              description: "Whether to populate the subnetGroups field of the `VpcContextResponse`,\nwhich contains potentially asymmetric subnet groups.",
+              default: false,
+              type: "boolean"
+            },
+            subnetGroupNameTag: {
+              description: "Optional tag for subnet group name.\nIf not provided, we'll look at the aws-cdk:subnet-name tag.\nIf the subnet does not have the specified tag,\nwe'll use its type as the name. (Default 'aws-cdk:subnet-name')",
+              type: "string"
+            },
+            returnVpnGateways: {
+              description: "Whether to populate the `vpnGatewayId` field of the `VpcContextResponse`,\nwhich contains the VPN Gateway ID, if one exists. You can explicitly\ndisable this in order to avoid the lookup if you know the VPC does not have\na VPN Gatway attached. (Default true)",
+              type: "boolean"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "filter",
+            "region"
+          ]
+        },
+        EndpointServiceAvailabilityZonesContextQuery: {
+          description: "Query to endpoint service context provider",
+          type: "object",
+          properties: {
+            serviceName: {
+              description: "Query service name",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region",
+            "serviceName"
+          ]
+        },
+        LoadBalancerContextQuery: {
+          description: "Query input for looking up a load balancer",
+          type: "object",
+          properties: {
+            loadBalancerType: {
+              $ref: "#/definitions/LoadBalancerType",
+              description: "Filter load balancers by their type"
+            },
+            loadBalancerArn: {
+              description: "Find by load balancer's ARN (Default - does not search by load balancer arn)",
+              type: "string"
+            },
+            loadBalancerTags: {
+              description: "Match load balancer tags (Default - does not match load balancers by tags)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/Tag"
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "loadBalancerType",
+            "region"
+          ]
+        },
+        LoadBalancerType: {
+          description: "Type of load balancer",
+          type: "string",
+          enum: [
+            "network",
+            "application"
+          ]
+        },
+        LoadBalancerListenerContextQuery: {
+          description: "Query input for looking up a load balancer listener",
+          type: "object",
+          properties: {
+            listenerArn: {
+              description: "Find by listener's arn (Default - does not find by listener arn)",
+              type: "string"
+            },
+            listenerProtocol: {
+              description: "Filter by listener protocol (Default - does not filter by listener protocol)",
+              enum: [
+                "HTTP",
+                "HTTPS",
+                "TCP",
+                "TCP_UDP",
+                "TLS",
+                "UDP"
+              ],
+              type: "string"
+            },
+            listenerPort: {
+              description: "Filter listeners by listener port (Default - does not filter by a listener port)",
+              type: "number"
+            },
+            loadBalancerType: {
+              $ref: "#/definitions/LoadBalancerType",
+              description: "Filter load balancers by their type"
+            },
+            loadBalancerArn: {
+              description: "Find by load balancer's ARN (Default - does not search by load balancer arn)",
+              type: "string"
+            },
+            loadBalancerTags: {
+              description: "Match load balancer tags (Default - does not match load balancers by tags)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/Tag"
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "loadBalancerType",
+            "region"
+          ]
+        },
+        SecurityGroupContextQuery: {
+          description: "Query input for looking up a security group",
+          type: "object",
+          properties: {
+            securityGroupId: {
+              description: "Security group id (Default - None)",
+              type: "string"
+            },
+            securityGroupName: {
+              description: "Security group name (Default - None)",
+              type: "string"
+            },
+            vpcId: {
+              description: "VPC ID (Default - None)",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region"
+          ]
+        },
+        KeyContextQuery: {
+          description: "Query input for looking up a KMS Key",
+          type: "object",
+          properties: {
+            aliasName: {
+              description: "Alias name used to search the Key",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "aliasName",
+            "region"
+          ]
+        },
+        CcApiContextQuery: {
+          description: "Query input for lookup up CloudFormation resources using CC API\n\nThe example below is required to successfully compile CDK (otherwise,\nthe CDK build will generate a synthetic example for the below, but it\ndoesn't have enough type information about the literal string union\nto generate a validly compiling example).",
+          type: "object",
+          properties: {
+            typeName: {
+              description: "The CloudFormation resource type.\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/supported-resources.html",
+              type: "string"
+            },
+            exactIdentifier: {
+              description: "Identifier of the resource to look up using `GetResource`.\n\nSpecifying exactIdentifier will return exactly one result, or throw an error\nunless `ignoreErrorOnMissingContext` is set. (Default - Either exactIdentifier or propertyMatch should be specified.)",
+              type: "string"
+            },
+            resourceModel: {
+              description: "The resource model to use to select the resources, using `ListResources`..\n\nThis is needed for sub-resources where the parent Arn is required.\n\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-list.html#resource-operations-list-containers (Default - no resource Model is provided)",
+              $ref: "#/definitions/Record%3Cstring%2Cunknown%3E"
+            },
+            propertyMatch: {
+              description: "Returns any resources matching these properties, using `ListResources`.\n\nBy default, specifying propertyMatch will successfully return 0 or more\nresults. To throw an error if the number of results is unexpected (and\nprevent the query results from being committed to context), specify\n`expectedMatchCount`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe resources that `propertyMatch` matches against will *only ever* be the\nproperties returned by the `ListResources` call. (Default - Either exactIdentifier or propertyMatch should be specified.)",
+              $ref: "#/definitions/Record%3Cstring%2Cunknown%3E"
+            },
+            propertiesToReturn: {
+              description: "This is a set of properties returned from CC API that we want to return from ContextQuery.\n\nIf any properties listed here are absent from the target resource, an error will be thrown.\n\nThe returned object will always include the key `Identifier` with the CC-API returned\nfield `Identifier`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe returned properties here are *currently* selected from the response\nobject that CloudControl API returns to the CDK CLI.\n\nHowever, if we find there is need to do so, we may decide to change this\nbehavior in the future: we might change it to perform an additional\n`GetResource` call for resources matched by `propertyMatch`.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            expectedMatchCount: {
+              description: "Expected count of results if `propertyMatch` is specified.\n\nIf the expected result count does not match the actual count,\nby default an error is produced and the result is not committed to cached\ncontext, and the user can correct the situation and try again without\nhaving to manually clear out the context key using `cdk context --remove`\n\nIf the value of * `ignoreErrorOnMissingContext` is `true`, the value of\n`expectedMatchCount` is `at-least-one | exactly-one` and the number\nof found resources is 0, `dummyValue` is returned and committed to context\ninstead. (Default 'any')",
+              enum: [
+                "any",
+                "at-least-one",
+                "at-most-one",
+                "exactly-one"
+              ],
+              type: "string"
+            },
+            dummyValue: {
+              description: "The value to return if the resource was not found and `ignoreErrorOnMissingContext` is true.\n\nIf supplied, `dummyValue` should be an array of objects.\n\n`dummyValue` does not have to have elements, and it may have objects with\ndifferent properties than the properties in `propertiesToReturn`, but it\nwill be easiest for downstream code if the `dummyValue` conforms to\nthe expected response shape. (Default - No dummy value available)"
+            },
+            ignoreErrorOnMissingContext: {
+              description: "Ignore an error and return the `dummyValue` instead if the resource was not found.\n\n- In case of an `exactIdentifier` lookup, return the `dummyValue` if the resource with\n  that identifier was not found.\n- In case of a `propertyMatch` lookup, return the `dummyValue` if `expectedMatchCount`\n  is `at-least-one | exactly-one` and the number of resources found was 0.\n\nif `ignoreErrorOnMissingContext` is set, `dummyValue` should be set and be an array.",
+              default: false,
+              type: "boolean"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "propertiesToReturn",
+            "region",
+            "typeName"
+          ]
+        },
+        "Record": {
+          type: "object"
+        },
+        PluginContextQuery: {
+          description: "Query input for plugins\n\nThis alternate branch is necessary because it needs to be able to escape all type checking\nwe do on on the cloud assembly -- we cannot know the properties that will be used a priori.",
+          type: "object",
+          additionalProperties: {},
+          properties: {
+            pluginName: {
+              description: "The name of the plugin",
+              type: "string"
+            }
+          },
+          required: [
+            "pluginName"
+          ]
+        },
+        RuntimeInfo: {
+          description: "Information about the application's runtime components.",
+          type: "object",
+          properties: {
+            libraries: {
+              description: "The list of libraries loaded in the application, associated with their versions.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "libraries"
+          ]
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json
+var require_integ_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/IntegManifest",
+      definitions: {
+        IntegManifest: {
+          description: "Definitions for the integration testing manifest",
+          type: "object",
+          properties: {
+            version: {
+              description: "Version of the manifest",
+              type: "string"
+            },
+            enableLookups: {
+              description: "Enable lookups for this test. If lookups are enabled\nthen `stackUpdateWorkflow` must be set to false.\nLookups should only be enabled when you are explicitly testing\nlookups.",
+              default: false,
+              type: "boolean"
+            },
+            synthContext: {
+              description: "Additional context to use when performing\na synth. Any context provided here will override\nany default context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            testCases: {
+              description: "test cases",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/TestCase"
+              }
+            }
+          },
+          required: [
+            "testCases",
+            "version"
+          ]
+        },
+        TestCase: {
+          description: "Represents an integration test case",
+          type: "object",
+          properties: {
+            stacks: {
+              description: "Stacks that should be tested as part of this test case\nThe stackNames will be passed as args to the cdk commands\nso dependent stacks will be automatically deployed unless\n`exclusively` is passed",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            assertionStack: {
+              description: "The node id of the stack that contains assertions.\nThis is the value that can be used to deploy the stack with the CDK CLI (Default - no assertion stack)",
+              type: "string"
+            },
+            assertionStackName: {
+              description: "The name of the stack that contains assertions (Default - no assertion stack)",
+              type: "string"
+            },
+            stackUpdateWorkflow: {
+              description: "Run update workflow on this test case\nThis should only be set to false to test scenarios\nthat are not possible to test as part of the update workflow (Default true)",
+              type: "boolean"
+            },
+            cdkCommandOptions: {
+              description: "Additional options to use for each CDK command (Default - runner default options)",
+              $ref: "#/definitions/CdkCommands"
+            },
+            hooks: {
+              description: "Additional commands to run at predefined points in the test workflow\n\ne.g. { postDeploy: ['yarn', 'test'] } (Default - no hooks)",
+              $ref: "#/definitions/Hooks"
+            },
+            allowDeleteFailures: {
+              description: "Whether to allow resources that fail to delete during a stack update.\n\nWhen false, the test will fail if CloudFormation skips deleting a resource\nduring a stack update. When true, only a warning is printed.",
+              default: false,
+              type: "boolean"
+            },
+            diffAssets: {
+              description: "Whether or not to include asset hashes in the diff\nAsset hashes can introduces a lot of unneccessary noise into tests,\nbut there are some cases where asset hashes _should_ be included. For example\nany tests involving custom resources or bundling",
+              default: false,
+              type: "boolean"
+            },
+            allowDestroy: {
+              description: "List of CloudFormation resource types in this stack that can\nbe destroyed as part of an update without failing the test.\n\nThis list should only include resources that for this specific\nintegration test we are sure will not cause errors or an outage if\ndestroyed. For example, maybe we know that a new resource will be created\nfirst before the old resource is destroyed which prevents any outage.\n\ne.g. ['AWS::IAM::Role'] (Default - do not allow destruction of any resources on update)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            regions: {
+              description: "Limit deployment to these regions (Default - can run in any region)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "stacks"
+          ]
+        },
+        CdkCommands: {
+          description: "Options for specific cdk commands that are run\nas part of the integration test workflow",
+          type: "object",
+          properties: {
+            deploy: {
+              description: "Options to for the cdk deploy command (Default - default deploy options)",
+              $ref: "#/definitions/DeployCommand"
+            },
+            destroy: {
+              description: "Options to for the cdk destroy command (Default - default destroy options)",
+              $ref: "#/definitions/DestroyCommand"
+            }
+          }
+        },
+        DeployCommand: {
+          description: "Represents a cdk deploy command",
+          type: "object",
+          properties: {
+            args: {
+              description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)",
+              $ref: "#/definitions/DeployOptions"
+            },
+            enabled: {
+              description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)",
+              type: "boolean"
+            },
+            expectError: {
+              description: "If the runner should expect this command to fail",
+              default: false,
+              type: "boolean"
+            },
+            expectedMessage: {
+              description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)",
+              type: "string"
+            }
+          }
+        },
+        DeployOptions: {
+          description: "Options to use with cdk deploy",
+          type: "object",
+          properties: {
+            exclusively: {
+              description: "Only perform action on the given stack",
+              default: false,
+              type: "boolean"
+            },
+            toolkitStackName: {
+              description: "Name of the toolkit stack to use/deploy (Default CDKToolkit)",
+              type: "string"
+            },
+            reuseAssets: {
+              description: "Reuse the assets with the given asset IDs (Default - do not reuse assets)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            changeSetName: {
+              description: "Optional name to use for the CloudFormation change set.\nIf not provided, a name will be generated automatically. (Default - auto generate a name)",
+              type: "string"
+            },
+            force: {
+              description: "Always deploy, even if templates are identical.",
+              default: false,
+              type: "boolean"
+            },
+            rollback: {
+              description: "Rollback failed deployments (Default true)",
+              type: "boolean"
+            },
+            notificationArns: {
+              description: "ARNs of SNS topics that CloudFormation will notify with stack related events (Default - no notifications)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            requireApproval: {
+              description: "What kind of security changes require approval (Default RequireApproval.NEVER)",
+              enum: [
+                "any-change",
+                "broadening",
+                "never"
+              ],
+              type: "string"
+            },
+            execute: {
+              description: "Whether to execute the ChangeSet\nNot providing `execute` parameter will result in execution of ChangeSet (Default true)",
+              type: "boolean"
+            },
+            parameters: {
+              description: "Additional parameters for CloudFormation at deploy time (Default [object Object])",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            usePreviousParameters: {
+              description: "Use previous values for unspecified parameters\n\nIf not set, all parameters must be specified for every deployment. (Default true)",
+              type: "boolean"
+            },
+            outputsFile: {
+              description: "Path to file where stack outputs will be written after a successful deploy as JSON (Default - Outputs are not written to any file)",
+              type: "string"
+            },
+            ci: {
+              description: "Whether we are on a CI system",
+              default: false,
+              type: "boolean"
+            },
+            concurrency: {
+              description: "Deploy multiple stacks in parallel (Default 1)",
+              type: "number"
+            },
+            stacks: {
+              description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            all: {
+              description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)",
+              type: "boolean"
+            },
+            app: {
+              description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)',
+              type: "string"
+            },
+            roleArn: {
+              description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)",
+              type: "string"
+            },
+            context: {
+              description: "Additional context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            trace: {
+              description: "Print trace for stack warnings",
+              default: false,
+              type: "boolean"
+            },
+            strict: {
+              description: "Do not construct stacks with warnings",
+              default: false,
+              type: "boolean"
+            },
+            lookups: {
+              description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)",
+              type: "boolean"
+            },
+            ignoreErrors: {
+              description: "Ignores synthesis errors, which will likely produce an invalid output",
+              default: false,
+              type: "boolean"
+            },
+            json: {
+              description: "Use JSON output instead of YAML when templates are printed\nto STDOUT",
+              default: false,
+              type: "boolean"
+            },
+            verbose: {
+              description: "show debug logs",
+              default: false,
+              type: "boolean"
+            },
+            debug: {
+              description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens",
+              default: false,
+              type: "boolean"
+            },
+            profile: {
+              description: "Use the indicated AWS profile as the default environment (Default - no profile is used)",
+              type: "string"
+            },
+            proxy: {
+              description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)",
+              type: "string"
+            },
+            caBundlePath: {
+              description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)",
+              type: "string"
+            },
+            ec2Creds: {
+              description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)",
+              type: "boolean"
+            },
+            versionReporting: {
+              description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)',
+              type: "boolean"
+            },
+            pathMetadata: {
+              description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)',
+              type: "boolean"
+            },
+            assetMetadata: {
+              description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)',
+              type: "boolean"
+            },
+            staging: {
+              description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI",
+              default: false,
+              type: "boolean"
+            },
+            output: {
+              description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)",
+              type: "string"
+            },
+            notices: {
+              description: "Show relevant notices (Default true)",
+              type: "boolean"
+            },
+            color: {
+              description: "Show colors and other style from console output (Default true)",
+              type: "boolean"
+            }
+          }
+        },
+        DestroyCommand: {
+          description: "Represents a cdk destroy command",
+          type: "object",
+          properties: {
+            args: {
+              description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)",
+              $ref: "#/definitions/DestroyOptions"
+            },
+            enabled: {
+              description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)",
+              type: "boolean"
+            },
+            expectError: {
+              description: "If the runner should expect this command to fail",
+              default: false,
+              type: "boolean"
+            },
+            expectedMessage: {
+              description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)",
+              type: "string"
+            }
+          }
+        },
+        DestroyOptions: {
+          description: "Options to use with cdk destroy",
+          type: "object",
+          properties: {
+            force: {
+              description: "Do not ask for permission before destroying stacks",
+              default: false,
+              type: "boolean"
+            },
+            exclusively: {
+              description: "Only destroy the given stack",
+              default: false,
+              type: "boolean"
+            },
+            stacks: {
+              description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            all: {
+              description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)",
+              type: "boolean"
+            },
+            app: {
+              description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)',
+              type: "string"
+            },
+            roleArn: {
+              description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)",
+              type: "string"
+            },
+            context: {
+              description: "Additional context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            trace: {
+              description: "Print trace for stack warnings",
+              default: false,
+              type: "boolean"
+            },
+            strict: {
+              description: "Do not construct stacks with warnings",
+              default: false,
+              type: "boolean"
+            },
+            lookups: {
+              description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)",
+              type: "boolean"
+            },
+            ignoreErrors: {
+              description: "Ignores synthesis errors, which will likely produce an invalid output",
+              default: false,
+              type: "boolean"
+            },
+            json: {
+              description: "Use JSON output instead of YAML when templates are printed\nto STDOUT",
+              default: false,
+              type: "boolean"
+            },
+            verbose: {
+              description: "show debug logs",
+              default: false,
+              type: "boolean"
+            },
+            debug: {
+              description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens",
+              default: false,
+              type: "boolean"
+            },
+            profile: {
+              description: "Use the indicated AWS profile as the default environment (Default - no profile is used)",
+              type: "string"
+            },
+            proxy: {
+              description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)",
+              type: "string"
+            },
+            caBundlePath: {
+              description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)",
+              type: "string"
+            },
+            ec2Creds: {
+              description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)",
+              type: "boolean"
+            },
+            versionReporting: {
+              description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)',
+              type: "boolean"
+            },
+            pathMetadata: {
+              description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)',
+              type: "boolean"
+            },
+            assetMetadata: {
+              description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)',
+              type: "boolean"
+            },
+            staging: {
+              description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI",
+              default: false,
+              type: "boolean"
+            },
+            output: {
+              description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)",
+              type: "string"
+            },
+            notices: {
+              description: "Show relevant notices (Default true)",
+              type: "boolean"
+            },
+            color: {
+              description: "Show colors and other style from console output (Default true)",
+              type: "boolean"
+            }
+          }
+        },
+        Hooks: {
+          description: "Commands to run at predefined points during the\nintegration test workflow",
+          type: "object",
+          properties: {
+            preDeploy: {
+              description: "Commands to run prior to deploying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            postDeploy: {
+              description: "Commands to run prior after deploying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            preDestroy: {
+              description: "Commands to run prior to destroying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            postDestroy: {
+              description: "Commands to run after destroying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          }
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json
+var require_validation_report_schema2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/PolicyValidationReportJson",
+      definitions: {
+        PolicyValidationReportJson: {
+          description: "The top-level structure of the policy validation report file.",
+          type: "object",
+          properties: {
+            version: {
+              description: "Protocol version",
+              type: "string"
+            },
+            title: {
+              description: "Report title, if present.",
+              type: "string"
+            },
+            pluginReports: {
+              description: "Reports from all validation plugins that ran during synthesis.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/PluginReportJson"
+              }
+            }
+          },
+          required: ["version", "pluginReports"]
+        },
+        PluginReportJson: {
+          description: "A report from a single validation plugin.",
+          type: "object",
+          properties: {
+            pluginName: {
+              description: "The name of the plugin that produced this report.",
+              type: "string"
+            },
+            pluginVersion: {
+              description: "Version of the plugin that produced this report.",
+              type: "string"
+            },
+            conclusion: {
+              description: "Whether the plugin's validation passed or failed.",
+              $ref: "#/definitions/PolicyValidationReportConclusion"
+            },
+            metadata: {
+              description: "Additional plugin-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violations: {
+              description: "Violations found by this plugin.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/PolicyViolationJson"
+              }
+            },
+            suppressedViolations: {
+              description: "Violations that were suppressed via acknowledgement.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/SuppressedViolationJson"
+              }
+            }
+          },
+          required: ["pluginName", "conclusion", "violations"]
+        },
+        PolicyValidationReportConclusion: {
+          description: "The final conclusion of a validation report.",
+          type: "string",
+          enum: ["success", "failure"]
+        },
+        PolicyViolationJson: {
+          description: "A single policy violation found by a validation plugin.",
+          type: "object",
+          properties: {
+            ruleName: {
+              description: "The name of the rule that was violated.",
+              type: "string"
+            },
+            description: {
+              description: "A description of the violation.",
+              type: "string"
+            },
+            suggestedFix: {
+              description: "How to fix the violation.",
+              type: "string"
+            },
+            severity: {
+              description: "The severity of the violation.",
+              $ref: "#/definitions/PolicyViolationSeverity"
+            },
+            customSeverity: {
+              description: "If the plugin wants to report using a non-standard severity, put it here.",
+              type: "string"
+            },
+            ruleMetadata: {
+              description: "Additional rule-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violatingConstructs: {
+              description: "Constructs that violated the rule.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ViolatingConstructJson"
+              }
+            }
+          },
+          required: ["ruleName", "description", "severity", "violatingConstructs"]
+        },
+        PolicyViolationSeverity: {
+          description: "The severity of a policy violation.",
+          type: "string",
+          enum: ["fatal", "error", "warning", "info", "custom"]
+        },
+        SuppressedViolationJson: {
+          description: "A violation that was acknowledged/suppressed and excluded from the active violation set.",
+          type: "object",
+          properties: {
+            ruleName: {
+              description: "The name of the rule that was violated.",
+              type: "string"
+            },
+            description: {
+              description: "A description of the violation.",
+              type: "string"
+            },
+            suggestedFix: {
+              description: "How to fix the violation.",
+              type: "string"
+            },
+            severity: {
+              description: "The severity of the violation.",
+              $ref: "#/definitions/PolicyViolationSeverity"
+            },
+            customSeverity: {
+              description: "If the plugin wants to report using a non-standard severity, put it here.",
+              type: "string"
+            },
+            ruleMetadata: {
+              description: "Additional rule-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violatingConstructs: {
+              description: "Constructs that violated the rule.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ViolatingConstructJson"
+              }
+            },
+            acknowledgedId: {
+              description: "The acknowledgement ID that caused this violation to be suppressed.",
+              type: "string"
+            },
+            reason: {
+              description: "The reason given for the acknowledgement, if provided.",
+              type: "string"
+            },
+            acknowledgedAt: {
+              description: "The construct path where the acknowledgement was declared.",
+              type: "string"
+            },
+            acknowledgedStackTrace: {
+              description: "Stack trace showing where the acknowledgement was declared.",
+              type: "string"
+            }
+          },
+          required: ["ruleName", "description", "severity", "violatingConstructs", "acknowledgedId"]
+        },
+        ViolatingConstructJson: {
+          description: "A construct that violated a policy rule.",
+          type: "object",
+          properties: {
+            constructPath: {
+              description: "The construct path as defined in the application.",
+              type: "string"
+            },
+            constructFqn: {
+              description: "The fully qualified name of the construct class (includes the library name).",
+              type: "string"
+            },
+            libraryVersion: {
+              description: "The version of the library that contains this construct.",
+              type: "string"
+            },
+            cloudFormationResource: {
+              description: "If this construct violation regards a CloudFormation resource, a reference to the resource details.",
+              $ref: "#/definitions/CloudFormationResourceJson"
+            },
+            stackTraces: {
+              description: "Stack traces associated with this violation.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: ["constructPath"]
+        },
+        CloudFormationResourceJson: {
+          description: "CloudFormation resource details for a violating construct.",
+          type: "object",
+          properties: {
+            templatePath: {
+              description: "The path to the CloudFormation template containing this resource.",
+              type: "string"
+            },
+            logicalId: {
+              description: "The logical ID of the resource in the CloudFormation template.",
+              type: "string"
+            },
+            propertyPaths: {
+              description: "Properties within the construct where the violation was detected.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: ["templatePath", "logicalId"]
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json
+var require_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json"(exports2, module2) {
+    module2.exports = {
+      schemaHash: "095859ad1d3d89d3bc4f9cbe9393d219798972dbd2389287bcc66b49f323cef1",
+      $comment: "Do not hold back the version on additions: jsonschema validation of the manifest by the consumer will trigger errors on unexpected fields.",
+      revision: 54
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js
+var require_manifest = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    });
+    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
+      var ownKeys2 = function(o) {
+        ownKeys2 = Object.getOwnPropertyNames || function(o2) {
+          var ar = [];
+          for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
+          return ar;
+        };
+        return ownKeys2(o);
+      };
+      return function(mod) {
+        if (mod && mod.__esModule) return mod;
+        var result = {};
+        if (mod != null) {
+          for (var k = ownKeys2(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding2(result, mod, k[i]);
+        }
+        __setModuleDefault2(result, mod);
+        return result;
+      };
+    })();
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.Manifest = exports2.VALIDATION_REPORT_FILE = exports2.VERSION_MISMATCH = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var fs19 = __importStar2(require("fs"));
+    var jsonschema = __importStar2(require_lib());
+    var semver = __importStar2(require_semver2());
+    var assembly = __importStar2(require_cloud_assembly());
+    exports2.VERSION_MISMATCH = "Cloud assembly schema version mismatch";
+    exports2.VALIDATION_REPORT_FILE = "validation-report.json";
+    var CLI_VERSION = require_cli_version();
+    var ASSETS_SCHEMA = require_assets_schema();
+    var ASSEMBLY_SCHEMA = require_cloud_assembly_schema();
+    var INTEG_SCHEMA = require_integ_schema();
+    var VALIDATION_REPORT_SCHEMA = require_validation_report_schema2();
+    var SCHEMA_VERSION = require_version();
+    var Manifest2 = class _Manifest {
+      static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/cloud-assembly-schema.Manifest", version: "54.24.0" };
+      /**
+       * Validates and saves the cloud assembly manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveAssemblyManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, ASSEMBLY_SCHEMA);
+      }
+      /**
+       * Load and validates the cloud assembly manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadAssemblyManifest(filePath, options) {
+        return _Manifest.loadManifest(filePath, ASSEMBLY_SCHEMA, _Manifest.patchStackTagsOnRead, options);
+      }
+      /**
+       * Validates and saves the asset manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveAssetManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, ASSETS_SCHEMA);
+      }
+      /**
+       * Load and validates the asset manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadAssetManifest(filePath) {
+        return _Manifest.loadManifest(filePath, ASSETS_SCHEMA);
+      }
+      /**
+       * Validates and saves the integ manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveIntegManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, INTEG_SCHEMA);
+      }
+      /**
+       * Load and validates the integ manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadIntegManifest(filePath) {
+        const manifest = this.loadManifest(filePath, INTEG_SCHEMA);
+        return {
+          ...manifest,
+          testCases: manifest.testCases ?? []
+        };
+      }
+      /**
+       * Load and validate the policy validation report from file.
+       *
+       * @param filePath - path to the validation report file.
+       */
+      static loadValidationReport(filePath) {
+        return _Manifest.loadManifest(filePath, VALIDATION_REPORT_SCHEMA);
+      }
+      /**
+       * Fetch the current schema version number.
+       */
+      static version() {
+        return `${SCHEMA_VERSION.revision}.0.0`;
+      }
+      /**
+       * Return the CLI version that supports this Cloud Assembly Schema version
+       */
+      static cliVersion() {
+        const version3 = CLI_VERSION.version;
+        return version3 ? version3 : void 0;
+      }
+      /**
+       * Deprecated
+       * @deprecated use `saveAssemblyManifest()`
+       */
+      static save(manifest, filePath) {
+        return this.saveAssemblyManifest(manifest, filePath);
+      }
+      /**
+       * Deprecated
+       * @deprecated use `loadAssemblyManifest()`
+       */
+      static load(filePath) {
+        return this.loadAssemblyManifest(filePath);
+      }
+      static validate(manifest, schema, options) {
+        function parseVersion(version3) {
+          const ver = semver.valid(version3);
+          if (!ver) {
+            throw new Error(`Invalid semver string: "${version3}"`);
+          }
+          return ver;
+        }
+        const maxSupported = semver.major(parseVersion(_Manifest.version()));
+        const actual = parseVersion(manifest.version);
+        if (maxSupported < semver.major(actual) && !options?.skipVersionCheck) {
+          const cliVersion = manifest.minimumCliVersion;
+          let cliWarning = "";
+          if (cliVersion) {
+            cliWarning = `. You need at least CLI version ${cliVersion} to read this manifest.`;
+          }
+          throw new Error(`${exports2.VERSION_MISMATCH}: Maximum schema version supported is ${maxSupported}.x.x, but found ${actual}${cliWarning}`);
+        }
+        if (options?.validateSchema ?? process.env.TESTING_CDK === "1") {
+          const validator = new jsonschema.Validator();
+          const result = validator.validate(manifest, schema, {
+            nestedErrors: true,
+            allowUnknownAttributes: false,
+            preValidateProperty: _Manifest.validateAssumeRoleAdditionalOptions
+          });
+          let errors = result.errors;
+          if (options?.skipEnumCheck) {
+            errors = stripEnumErrors(errors);
+          }
+          if (errors.length > 0) {
+            throw new Error(`Invalid assembly manifest:
+${errors.map((e) => e.stack).join("\n")}`);
+          }
+        }
+      }
+      static saveManifest(manifest, filePath, schema, preprocess) {
+        let withVersion = {
+          ...manifest,
+          version: _Manifest.version(),
+          minimumCliVersion: _Manifest.cliVersion()
+        };
+        _Manifest.validate(withVersion, schema);
+        if (preprocess) {
+          withVersion = preprocess(withVersion);
+        }
+        fs19.writeFileSync(filePath, JSON.stringify(withVersion, void 0, 2));
+      }
+      static loadManifest(filePath, schema, preprocess, options) {
+        const contents = fs19.readFileSync(filePath, { encoding: "utf-8" });
+        let obj;
+        try {
+          obj = JSON.parse(contents);
+        } catch (e) {
+          throw new Error(`${e.message}, while parsing ${JSON.stringify(contents)}`);
+        }
+        if (preprocess) {
+          obj = preprocess(obj);
+        }
+        _Manifest.validate(obj, schema, options);
+        return obj;
+      }
+      /**
+       * Fix the casing of stack tags entries
+       *
+       * At the very beginning of the CDK we used to emit stack tags as an object with
+       * `{ Key, Value }` keys; this had the "advantage" that we could stick those
+       * tags directly into the `CreateChangeSet` call.
+       *
+       * Then we later on used jsii on the assembly schema and we were forced to type
+       * the in-memory objects as `{ key, value }` with lowercase letters. Now the
+       * objects have a different on-disk and in-memory format, and we need to convert
+       * between them.
+       *
+       * For backwards compatibility reasons, we used to convert lowercase in-memory
+       * to uppercase on-disk variant until very recently. This is now unnecessary,
+       * since no officially supported CDK tools read the stack tags from the
+       * metadata; the CLI and toolkit library read stack tags from the artifact
+       * properties.
+       *
+       * So although we don't emit uppercase stack tag objects anymore, we might still read
+       * manifests that have them. Because the manifest we read must pass JSON Schema
+       * validation (which expects lowercase tag objects), we have to fix the casing
+       * of these objects after reading from disk and before validating.
+       *
+       * That's what this function does.
+       */
+      static patchStackTagsOnRead(manifest) {
+        const artifacts = Object.values(manifest.artifacts ?? {}).filter((artifact) => artifact.type === assembly.ArtifactType.AWS_CLOUDFORMATION_STACK);
+        for (const artifact of artifacts) {
+          const tagMetadata = Object.values(artifact.metadata ?? {}).flatMap((x) => x).filter((entry) => entry.type === assembly.ArtifactMetadataEntryType.STACK_TAGS);
+          for (const entry of tagMetadata) {
+            const tags = entry.data;
+            for (const tag of tags ?? []) {
+              const t = tag;
+              if ("Key" in t) {
+                t.key = t.Key;
+                delete t.Key;
+              }
+              if ("Value" in t) {
+                t.value = t.Value;
+                delete t.Value;
+              }
+            }
+          }
+        }
+        return manifest;
+      }
+      /**
+       * Validates that `assumeRoleAdditionalOptions` doesn't contain nor `ExternalId` neither `RoleArn`, as they
+       * should have dedicated properties preceding this (e.g `assumeRoleArn` and `assumeRoleExternalId`).
+       */
+      static validateAssumeRoleAdditionalOptions(instance, key, _schema, _options, _ctx) {
+        if (key !== "assumeRoleAdditionalOptions") {
+          return;
+        }
+        const assumeRoleOptions = instance[key];
+        if (assumeRoleOptions?.RoleArn) {
+          throw new Error(`RoleArn is not allowed inside '${key}'`);
+        }
+        if (assumeRoleOptions?.ExternalId) {
+          throw new Error(`ExternalId is not allowed inside '${key}'`);
+        }
+      }
+    };
+    exports2.Manifest = Manifest2;
+    function stripEnumErrors(errors) {
+      return errors.filter((e) => typeof e.schema === "string" || !("enum" in e.schema));
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js
+var require_schema3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js
+var require_common = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.RequireApproval = void 0;
+    var RequireApproval;
+    (function(RequireApproval2) {
+      RequireApproval2["NEVER"] = "never";
+      RequireApproval2["ANYCHANGE"] = "any-change";
+      RequireApproval2["BROADENING"] = "broadening";
+    })(RequireApproval || (exports2.RequireApproval = RequireApproval = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js
+var require_deploy = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js
+var require_destroy = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js
+var require_commands = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_common(), exports2);
+    __exportStar2(require_deploy(), exports2);
+    __exportStar2(require_destroy(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js
+var require_test_case = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js
+var require_integ_tests = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema3(), exports2);
+    __exportStar2(require_commands(), exports2);
+    __exportStar2(require_test_case(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js
+var require_lib2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_cloud_assembly(), exports2);
+    __exportStar2(require_assets(), exports2);
+    __exportStar2(require_manifest(), exports2);
+    __exportStar2(require_integ_tests(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js
+var require_metadata = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.SynthesisMessageLevel = exports2.PATH_METADATA_KEY = void 0;
+    exports2.PATH_METADATA_KEY = "aws:cdk:path";
+    var SynthesisMessageLevel;
+    (function(SynthesisMessageLevel2) {
+      SynthesisMessageLevel2["INFO"] = "info";
+      SynthesisMessageLevel2["WARNING"] = "warning";
+      SynthesisMessageLevel2["ERROR"] = "error";
+    })(SynthesisMessageLevel || (exports2.SynthesisMessageLevel = SynthesisMessageLevel = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js
+var require_error = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js"(exports2) {
+    "use strict";
+    var __classPrivateFieldGet2 = exports2 && exports2.__classPrivateFieldGet || function(receiver, state, kind, f) {
+      if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+      if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+      return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+    };
+    var __classPrivateFieldSet2 = exports2 && exports2.__classPrivateFieldSet || function(receiver, state, value, kind, f) {
+      if (kind === "m") throw new TypeError("Private method is not writable");
+      if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+      if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+      return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
+    };
+    var _CloudAssemblyError_time;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudAssemblyError = void 0;
+    var ASSEMBLY_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssemblyError");
+    var CloudAssemblyError = class _CloudAssemblyError extends Error {
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return __classPrivateFieldGet2(this, _CloudAssemblyError_time, "f");
+      }
+      get type() {
+        return "assembly";
+      }
+      constructor(msg) {
+        super(msg);
+        _CloudAssemblyError_time.set(this, void 0);
+        Object.setPrototypeOf(this, _CloudAssemblyError.prototype);
+        Object.defineProperty(this, ASSEMBLY_ERROR_SYMBOL, { value: true });
+        this.name = new.target.name;
+        __classPrivateFieldSet2(this, _CloudAssemblyError_time, (/* @__PURE__ */ new Date()).toISOString(), "f");
+      }
+    };
+    exports2.CloudAssemblyError = CloudAssemblyError;
+    _CloudAssemblyError_time = /* @__PURE__ */ new WeakMap();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js
+var require_cloud_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var metadata_1 = require_metadata();
+    var error_1 = require_error();
+    var CloudArtifact = class _CloudArtifact {
+      /**
+       * Read the metadata for the given artifact
+       *
+       * HISTORICAL OR PRIVATE USE ONLY
+       *
+       * This is publicly exposed as a static function for downstream libraries that
+       * don't use the `CloudAssembly`/`CloudArtifact` API, yet still need to read
+       * an artifact's metadata.
+       *
+       * 99% of consumers should just access `artifact.metadata`.
+       */
+      static readMetadata(assemblyDirectory, x) {
+        const ret = {};
+        if (x.additionalMetadataFile) {
+          Object.assign(ret, JSON.parse(fs19.readFileSync(path23.join(assemblyDirectory, x.additionalMetadataFile), "utf-8")));
+        }
+        for (const [p, entries] of Object.entries(x.metadata ?? {})) {
+          if (ret[p]) {
+            ret[p].push(...entries);
+          } else {
+            ret[p] = entries;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest.
+       *
+       * @param assembly - The cloud assembly from which to load the artifact
+       * @param id - The artifact ID
+       * @param artifact - The artifact manifest
+       * @returns the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module.
+       */
+      static fromManifest(assembly, id, artifact) {
+        void assembly, void id, void artifact;
+        throw new error_1.CloudAssemblyError("Implementation not overridden yet");
+      }
+      constructor(assembly, id, manifest) {
+        this.assembly = assembly;
+        this.id = id;
+        this.manifest = manifest;
+        this.messages = this.renderMessages();
+        this._dependencyIDs = manifest.dependencies || [];
+      }
+      /**
+       * Returns the metadata associated with this Cloud Artifact
+       */
+      get metadata() {
+        return _CloudArtifact.readMetadata(this.assembly.directory, this.manifest);
+      }
+      /**
+       * Returns all the artifacts that this artifact depends on.
+       */
+      get dependencies() {
+        if (this._deps) {
+          return this._deps;
+        }
+        this._deps = this._dependencyIDs.map((id) => {
+          const dep = this.assembly.tryGetArtifact(id);
+          if (!dep) {
+            throw new error_1.CloudAssemblyError(`Artifact ${this.id} depends on non-existing artifact ${id}`);
+          }
+          return dep;
+        });
+        return this._deps;
+      }
+      /**
+       * @returns all the metadata entries of a specific type in this artifact.
+       */
+      findMetadataByType(type) {
+        const metadata = this.metadata;
+        const result = new Array();
+        for (const p of Object.keys(metadata || {})) {
+          for (const entry of (metadata || {})[p]) {
+            if (entry.type === type) {
+              result.push({ path: p, ...entry });
+            }
+          }
+        }
+        return result;
+      }
+      renderMessages() {
+        const messages = new Array();
+        for (const [id, metadata] of Object.entries(this.metadata || {})) {
+          for (const entry of metadata) {
+            let level;
+            switch (entry.type) {
+              case cxschema2.ArtifactMetadataEntryType.WARN:
+                level = metadata_1.SynthesisMessageLevel.WARNING;
+                break;
+              case cxschema2.ArtifactMetadataEntryType.ERROR:
+                level = metadata_1.SynthesisMessageLevel.ERROR;
+                break;
+              case cxschema2.ArtifactMetadataEntryType.INFO:
+                level = metadata_1.SynthesisMessageLevel.INFO;
+                break;
+              default:
+                continue;
+            }
+            messages.push({ level, entry, id });
+          }
+        }
+        return messages;
+      }
+      /**
+       * An identifier that shows where this artifact is located in the tree
+       * of nested assemblies, based on their manifests. Defaults to the normal
+       * id. Should only be used in user interfaces.
+       */
+      get hierarchicalId() {
+        return this.manifest.displayName ?? this.id;
+      }
+    };
+    exports2.CloudArtifact = CloudArtifact;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js
+var require_asset_manifest_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AssetManifestArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var ASSET_MANIFEST_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.AssetManifestArtifact");
+    var AssetManifestArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `AssetManifestArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `AssetManifestArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isAssetManifestArtifact(art) {
+        return art && typeof art === "object" && art[ASSET_MANIFEST_ARTIFACT_SYM];
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.file) {
+          throw new error_1.CloudAssemblyError('Invalid AssetManifestArtifact. Missing "file" property');
+        }
+        this.file = path23.resolve(this.assembly.directory, properties.file);
+        this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion;
+        this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter;
+      }
+      /**
+       * The Asset Manifest contents
+       */
+      get contents() {
+        if (this._contents !== void 0) {
+          return this._contents;
+        }
+        const contents = this._contents = JSON.parse(fs19.readFileSync(this.file, "utf-8"));
+        return contents;
+      }
+    };
+    exports2.AssetManifestArtifact = AssetManifestArtifact;
+    Object.defineProperty(AssetManifestArtifact.prototype, ASSET_MANIFEST_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js
+var require_environment = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EnvironmentUtils = exports2.UNKNOWN_REGION = exports2.UNKNOWN_ACCOUNT = void 0;
+    var error_1 = require_error();
+    var AWS_ENV_REGEX = /aws\:\/\/([a-z0-9A-Z\-\@\.\_]+)\/([a-z\-0-9]+)/;
+    exports2.UNKNOWN_ACCOUNT = "unknown-account";
+    exports2.UNKNOWN_REGION = "unknown-region";
+    var EnvironmentUtils2 = class {
+      static parse(environment) {
+        const env2 = AWS_ENV_REGEX.exec(environment);
+        if (!env2) {
+          throw new error_1.CloudAssemblyError(`Unable to parse environment specification "${environment}". Expected format: aws://account/region`);
+        }
+        const [, account, region] = env2;
+        if (!account || !region) {
+          throw new error_1.CloudAssemblyError(`Invalid environment specification: ${environment}`);
+        }
+        return { account, region, name: environment };
+      }
+      /**
+       * Build an environment object from an account and region
+       */
+      static make(account, region) {
+        return { account, region, name: this.format(account, region) };
+      }
+      /**
+       * Format an environment string from an account and region
+       */
+      static format(account, region) {
+        return `aws://${account}/${region}`;
+      }
+    };
+    exports2.EnvironmentUtils = EnvironmentUtils2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js
+var require_cloudformation_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudFormationStackArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var cloud_artifact_1 = require_cloud_artifact();
+    var environment_1 = require_environment();
+    var error_1 = require_error();
+    var CLOUDFORMATION_STACK_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudFormationStackArtifact");
+    var CloudFormationStackArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `CloudFormationStackArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `CloudFormationStackArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isCloudFormationStackArtifact(art) {
+        return art && typeof art === "object" && CLOUDFORMATION_STACK_ARTIFACT_SYM in art;
+      }
+      constructor(assembly, artifactId, artifact) {
+        super(assembly, artifactId, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.templateFile) {
+          throw new error_1.CloudAssemblyError('Invalid CloudFormation stack artifact. Missing "templateFile" property in cloud assembly manifest');
+        }
+        if (!artifact.environment) {
+          throw new error_1.CloudAssemblyError("Invalid CloudFormation stack artifact. Missing environment");
+        }
+        this.environment = environment_1.EnvironmentUtils.parse(artifact.environment);
+        this.templateFile = properties.templateFile;
+        this.parameters = properties.parameters ?? {};
+        this.tags = properties.tags ?? {};
+        this.notificationArns = properties.notificationArns;
+        this.assumeRoleArn = properties.assumeRoleArn;
+        this.assumeRoleExternalId = properties.assumeRoleExternalId;
+        this.assumeRoleAdditionalOptions = properties.assumeRoleAdditionalOptions;
+        this.cloudFormationExecutionRoleArn = properties.cloudFormationExecutionRoleArn;
+        this.stackTemplateAssetObjectUrl = properties.stackTemplateAssetObjectUrl;
+        this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion;
+        this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter;
+        this.terminationProtection = properties.terminationProtection;
+        this.validateOnSynth = properties.validateOnSynth;
+        this.lookupRole = properties.lookupRole;
+        this.stackName = properties.stackName || artifactId;
+        this.assets = this.findMetadataByType(cxschema2.ArtifactMetadataEntryType.ASSET).map((e) => e.data);
+        this.displayName = this.stackName === artifactId ? this.hierarchicalId : `${this.hierarchicalId} (${this.stackName})`;
+        this.name = this.stackName;
+        this.originalName = this.stackName;
+      }
+      /**
+       * Full path to the template file
+       */
+      get templateFullPath() {
+        return path23.join(this.assembly.directory, this.templateFile);
+      }
+      /**
+       * The CloudFormation template for this stack.
+       */
+      get template() {
+        if (this._template === void 0) {
+          this._template = JSON.parse(fs19.readFileSync(this.templateFullPath, "utf-8"));
+        }
+        return this._template;
+      }
+    };
+    exports2.CloudFormationStackArtifact = CloudFormationStackArtifact;
+    Object.defineProperty(CloudFormationStackArtifact.prototype, CLOUDFORMATION_STACK_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js
+var require_nested_cloud_assembly_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.NestedCloudAssemblyArtifact = void 0;
+    var path23 = require("path");
+    var cloud_artifact_1 = require_cloud_artifact();
+    var NESTED_CLOUD_ASSEMBLY_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.NestedCloudAssemblyArtifact");
+    var NestedCloudAssemblyArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `NestedCloudAssemblyArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `NestedCloudAssemblyArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isNestedCloudAssemblyArtifact(art) {
+        return art && typeof art === "object" && NESTED_CLOUD_ASSEMBLY_SYM in art;
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        this.directoryName = properties.directoryName;
+        this.displayName = properties.displayName ?? name;
+      }
+      /**
+       * Full path to the nested assembly directory
+       */
+      get fullPath() {
+        return path23.join(this.assembly.directory, this.directoryName);
+      }
+    };
+    exports2.NestedCloudAssemblyArtifact = NestedCloudAssemblyArtifact;
+    Object.defineProperty(NestedCloudAssemblyArtifact.prototype, NESTED_CLOUD_ASSEMBLY_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js
+var require_tree_cloud_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.TreeCloudArtifact = void 0;
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var TREE_CLOUD_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.TreeCloudArtifact");
+    var TreeCloudArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `TreeCloudArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `TreeCloudArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isTreeCloudArtifact(art) {
+        return art && typeof art === "object" && TREE_CLOUD_ARTIFACT_SYM in art;
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.file) {
+          throw new error_1.CloudAssemblyError('Invalid TreeCloudArtifact. Missing "file" property');
+        }
+        this.file = properties.file;
+      }
+    };
+    exports2.TreeCloudArtifact = TreeCloudArtifact;
+    Object.defineProperty(TreeCloudArtifact.prototype, TREE_CLOUD_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js
+var require_cloud_artifact_aug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var cxschema2 = require_lib2();
+    var asset_manifest_artifact_1 = require_asset_manifest_artifact();
+    var cloudformation_artifact_1 = require_cloudformation_artifact();
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var tree_cloud_artifact_1 = require_tree_cloud_artifact();
+    var cloud_artifact_1 = require_cloud_artifact();
+    cloud_artifact_1.CloudArtifact.fromManifest = function fromManifest(assembly, id, artifact) {
+      switch (artifact.type) {
+        case cxschema2.ArtifactType.AWS_CLOUDFORMATION_STACK:
+          return new cloudformation_artifact_1.CloudFormationStackArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.CDK_TREE:
+          return new tree_cloud_artifact_1.TreeCloudArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.ASSET_MANIFEST:
+          return new asset_manifest_artifact_1.AssetManifestArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY:
+          return new nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact(assembly, id, artifact);
+        default:
+          return void 0;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js
+var require_toposort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.topologicalSort = topologicalSort;
+    var error_1 = require_error();
+    function topologicalSort(xs, keyFn, depFn) {
+      const remaining = /* @__PURE__ */ new Map();
+      for (const element of xs) {
+        const key = keyFn(element);
+        remaining.set(key, { key, element, dependencies: depFn(element) });
+      }
+      const ret = new Array();
+      while (remaining.size > 0) {
+        const selectable = Array.from(remaining.values()).filter((e) => e.dependencies.every((d) => !remaining.has(d)));
+        selectable.sort((a, b) => a.key < b.key ? -1 : b.key < a.key ? 1 : 0);
+        for (const selected of selectable) {
+          ret.push(selected.element);
+          remaining.delete(selected.key);
+        }
+        if (selectable.length === 0) {
+          throw new error_1.CloudAssemblyError(`Could not determine ordering between: ${Array.from(remaining.keys()).join(", ")}`);
+        }
+      }
+      return ret;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js
+var require_cloud_assembly2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudAssemblyBuilder = exports2.CloudAssembly = void 0;
+    var fs19 = require("fs");
+    var os4 = require("os");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var cloudformation_artifact_1 = require_cloudformation_artifact();
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var tree_cloud_artifact_1 = require_tree_cloud_artifact();
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var toposort_1 = require_toposort();
+    var CLOUD_ASSEMBLY_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssembly");
+    var MANIFEST_FILE = "manifest.json";
+    var CloudAssembly = class {
+      /**
+       * Return whether the given object is a CloudAssembly.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static isCloudAssembly(x) {
+        return x !== null && typeof x === "object" && CLOUD_ASSEMBLY_SYMBOL in x;
+      }
+      /**
+       * Cleans up any temporary assembly directories that got created in this process
+       *
+       * If a Cloud Assembly is emitted to a temporary directory, its directory gets
+       * added to a list. This function iterates over that list and deletes each
+       * directory in it, to free up disk space.
+       *
+       * This function will normally be called automatically during Node process
+       * exit and so you don't need to call this. However, some test environments do
+       * not properly trigger Node's `exit` event. Notably: Jest does not trigger
+       * the `exit` event ().
+       *
+       * ## Cleaning up temporary directories in jest
+       *
+       * For Jest, you have to make sure this function is called at the end of the
+       * test suite instead:
+       *
+       * ```js
+       * import { CloudAssembly } from 'aws-cdk-lib/cx-api';
+       *
+       * afterAll(CloudAssembly.cleanupTemporaryDirectories);
+       * ```
+       *
+       * Alternatively, you can use the `setupFilesAfterEnv` feature and use a
+       * provided helper script to automatically inject the above into every
+       * test file, so you don't have to do it by hand.
+       *
+       * ```
+       * $ npx jest --setupFilesAfterEnv aws-cdk-lib/testhelpers/jest-autoclean
+       * ```
+       *
+       * Or put the following into `jest.config.js`:
+       *
+       * ```js
+       * module.exports = {
+       *   // ...
+       *   setupFilesAfterEnv: ['aws-cdk-lib/testhelpers/jest-cleanup'],
+       * };
+       * ```
+       */
+      static cleanupTemporaryDirectories() {
+        for (const dir of TEMPORARY_ASSEMBLY_DIRS) {
+          fs19.rmSync(dir, { recursive: true, force: true });
+        }
+        TEMPORARY_ASSEMBLY_DIRS.splice(0, TEMPORARY_ASSEMBLY_DIRS.length);
+      }
+      /**
+       * Reads a cloud assembly from the specified directory.
+       * @param directory - The root directory of the assembly.
+       */
+      constructor(directory, loadOptions) {
+        this.directory = directory;
+        this.loadOptions = loadOptions;
+        this.manifest = cxschema2.Manifest.loadAssemblyManifest(path23.join(directory, MANIFEST_FILE), this.loadOptions);
+        this.version = this.manifest.version;
+        this.artifacts = this.renderArtifacts(this.loadOptions?.topoSort ?? true);
+        this.runtime = this.manifest.runtime || { libraries: {} };
+        Object.defineProperty(this, CLOUD_ASSEMBLY_SYMBOL, { value: true });
+        this.validateDeps();
+      }
+      /**
+       * Attempts to find an artifact with a specific identity.
+       * @returns A `CloudArtifact` object or `undefined` if the artifact does not exist in this assembly.
+       * @param id - The artifact ID
+       */
+      tryGetArtifact(id) {
+        return this.artifacts.find((a) => a.id === id);
+      }
+      /**
+       * Returns a CloudFormation stack artifact from this assembly.
+       *
+       * Will only search the current assembly.
+       *
+       * @param stackName - the name of the CloudFormation stack.
+       * @throws if there is no stack artifact by that name
+       * @throws if there is more than one stack with the same stack name. You can
+       * use `getStackArtifact(stack.artifactId)` instead.
+       * @returns a `CloudFormationStackArtifact` object.
+       */
+      getStackByName(stackName) {
+        const artifacts = this.artifacts.filter((a) => a instanceof cloudformation_artifact_1.CloudFormationStackArtifact && a.stackName === stackName);
+        if (!artifacts || artifacts.length === 0) {
+          throw new error_1.CloudAssemblyError(`Unable to find stack with stack name "${stackName}"`);
+        }
+        if (artifacts.length > 1) {
+          throw new error_1.CloudAssemblyError(`There are multiple stacks with the stack name "${stackName}" (${artifacts.map((a) => a.id).join(",")}). Use "getStackArtifact(id)" instead`);
+        }
+        return artifacts[0];
+      }
+      /**
+       * Returns a CloudFormation stack artifact by name from this assembly.
+       * @deprecated renamed to `getStackByName` (or `getStackArtifact(id)`)
+       */
+      getStack(stackName) {
+        return this.getStackByName(stackName);
+      }
+      /**
+       * Returns a CloudFormation stack artifact from this assembly.
+       *
+       * @param artifactId - the artifact id of the stack (can be obtained through `stack.artifactId`).
+       * @throws if there is no stack artifact with that id
+       * @returns a `CloudFormationStackArtifact` object.
+       */
+      getStackArtifact(artifactId) {
+        const artifact = this.tryGetArtifactRecursively(artifactId);
+        if (!artifact) {
+          throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`);
+        }
+        if (!(artifact instanceof cloudformation_artifact_1.CloudFormationStackArtifact)) {
+          throw new error_1.CloudAssemblyError(`Artifact ${artifactId} is not a CloudFormation stack`);
+        }
+        return artifact;
+      }
+      tryGetArtifactRecursively(artifactId) {
+        return this.stacksRecursively.find((a) => a.id === artifactId);
+      }
+      /**
+       * Returns all the stacks, including the ones in nested assemblies
+       */
+      get stacksRecursively() {
+        function search(stackArtifacts, assemblies) {
+          if (assemblies.length === 0) {
+            return stackArtifacts;
+          }
+          const [head, ...tail] = assemblies;
+          const nestedAssemblies = head.nestedAssemblies.map((asm) => asm.nestedAssembly);
+          return search(stackArtifacts.concat(head.stacks), tail.concat(nestedAssemblies));
+        }
+        return search([], [this]);
+      }
+      /**
+       * Returns a nested assembly artifact.
+       *
+       * @param artifactId - The artifact ID of the nested assembly
+       */
+      getNestedAssemblyArtifact(artifactId) {
+        const artifact = this.tryGetArtifact(artifactId);
+        if (!artifact) {
+          throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`);
+        }
+        if (!(artifact instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact)) {
+          throw new error_1.CloudAssemblyError(`Found artifact '${artifactId}' but it's not a nested cloud assembly`);
+        }
+        return artifact;
+      }
+      /**
+       * Returns a nested assembly.
+       *
+       * @param artifactId - The artifact ID of the nested assembly
+       */
+      getNestedAssembly(artifactId) {
+        return this.getNestedAssemblyArtifact(artifactId).nestedAssembly;
+      }
+      /**
+       * Returns the tree metadata artifact from this assembly.
+       * @throws if there is no metadata artifact by that name
+       * @returns a `TreeCloudArtifact` object if there is one defined in the manifest, `undefined` otherwise.
+       */
+      tree() {
+        const trees = this.artifacts.filter((a) => a.manifest.type === cxschema2.ArtifactType.CDK_TREE);
+        if (trees.length === 0) {
+          return void 0;
+        } else if (trees.length > 1) {
+          throw new error_1.CloudAssemblyError(`Multiple artifacts of type ${cxschema2.ArtifactType.CDK_TREE} found in manifest`);
+        }
+        const tree = trees[0];
+        if (!(tree instanceof tree_cloud_artifact_1.TreeCloudArtifact)) {
+          throw new error_1.CloudAssemblyError('"Tree" artifact is not of expected type');
+        }
+        return tree;
+      }
+      /**
+       * @returns all the CloudFormation stack artifacts that are included in this assembly.
+       */
+      get stacks() {
+        return this.artifacts.filter(isCloudFormationStackArtifact);
+        function isCloudFormationStackArtifact(x) {
+          return x instanceof cloudformation_artifact_1.CloudFormationStackArtifact;
+        }
+      }
+      /**
+       * The nested assembly artifacts in this assembly
+       */
+      get nestedAssemblies() {
+        return this.artifacts.filter(isNestedCloudAssemblyArtifact);
+        function isNestedCloudAssemblyArtifact(x) {
+          return x instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact;
+        }
+      }
+      validateDeps() {
+        for (const artifact of this.artifacts) {
+          ignore(artifact.dependencies);
+        }
+      }
+      renderArtifacts(topoSort) {
+        const result = new Array();
+        for (const [name, artifact] of Object.entries(this.manifest.artifacts || {})) {
+          const cloudartifact = cloud_artifact_1.CloudArtifact.fromManifest(this, name, artifact);
+          if (cloudartifact) {
+            result.push(cloudartifact);
+          }
+        }
+        return topoSort ? (0, toposort_1.topologicalSort)(result, (x) => x.id, (x) => x._dependencyIDs) : result;
+      }
+    };
+    exports2.CloudAssembly = CloudAssembly;
+    var CloudAssemblyBuilder3 = class _CloudAssemblyBuilder {
+      /**
+       * Initializes a cloud assembly builder.
+       * @param outdir - The output directory, uses temporary directory if undefined
+       */
+      constructor(outdir, props = {}) {
+        this.artifacts = {};
+        this.missing = new Array();
+        this.outdir = determineOutputDirectory(outdir);
+        this.assetOutdir = props.assetOutdir ?? this.outdir;
+        this.parentBuilder = props.parentBuilder;
+        ensureDirSync2(this.outdir);
+      }
+      /**
+       * Adds an artifact into the cloud assembly.
+       * @param id - The ID of the artifact.
+       * @param manifest - The artifact manifest
+       */
+      addArtifact(id, manifest) {
+        this.artifacts[id] = filterUndefined2(manifest);
+      }
+      /**
+       * Reports that some context is missing in order for this cloud assembly to be fully synthesized.
+       * @param missing - Missing context information.
+       */
+      addMissing(missing) {
+        if (this.missing.every((m) => m.key !== missing.key)) {
+          this.missing.push(missing);
+        }
+        this.parentBuilder?.addMissing(missing);
+      }
+      /**
+       * Finalizes the cloud assembly into the output directory returns a
+       * `CloudAssembly` object that can be used to inspect the assembly.
+       */
+      buildAssembly(options = {}) {
+        let manifest = {
+          version: cxschema2.Manifest.version(),
+          artifacts: this.artifacts,
+          runtime: options.runtimeInfo,
+          missing: this.missing.length > 0 ? this.missing : void 0
+        };
+        manifest = filterUndefined2(manifest);
+        const manifestFilePath = path23.join(this.outdir, MANIFEST_FILE);
+        cxschema2.Manifest.saveAssemblyManifest(manifest, manifestFilePath);
+        fs19.writeFileSync(path23.join(this.outdir, "cdk.out"), JSON.stringify({ version: manifest.version }));
+        return new CloudAssembly(this.outdir);
+      }
+      /**
+       * Creates a nested cloud assembly
+       */
+      createNestedAssembly(artifactId, displayName) {
+        const directoryName = artifactId;
+        const innerAsmDir = path23.join(this.outdir, directoryName);
+        this.addArtifact(artifactId, {
+          type: cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY,
+          properties: {
+            directoryName,
+            displayName
+          }
+        });
+        return new _CloudAssemblyBuilder(innerAsmDir, {
+          // Reuse the same asset output directory as the current Casm builder
+          assetOutdir: this.assetOutdir,
+          parentBuilder: this
+        });
+      }
+      /**
+       * Delete the cloud assembly directory
+       */
+      delete() {
+        fs19.rmSync(this.outdir, { recursive: true, force: true });
+      }
+    };
+    exports2.CloudAssemblyBuilder = CloudAssemblyBuilder3;
+    function filterUndefined2(obj) {
+      if (Array.isArray(obj)) {
+        return obj.filter((x) => x !== void 0).map((x) => filterUndefined2(x));
+      }
+      if (typeof obj === "object") {
+        const ret = {};
+        for (const [key, value] of Object.entries(obj)) {
+          if (value === void 0) {
+            continue;
+          }
+          ret[key] = filterUndefined2(value);
+        }
+        return ret;
+      }
+      return obj;
+    }
+    function ignore(_x) {
+      return;
+    }
+    function determineOutputDirectory(outdir) {
+      if (outdir) {
+        return outdir;
+      }
+      const tmpDir = fs19.mkdtempSync(path23.join(fs19.realpathSync(os4.tmpdir()), "cdk.out"));
+      TEMPORARY_ASSEMBLY_DIRS.push(tmpDir);
+      return outdir ?? tmpDir;
+    }
+    function ensureDirSync2(dir) {
+      if (fs19.existsSync(dir)) {
+        if (!fs19.statSync(dir).isDirectory()) {
+          throw new error_1.CloudAssemblyError(`${dir} must be a directory`);
+        }
+      } else {
+        fs19.mkdirSync(dir, { recursive: true });
+      }
+    }
+    var TEMPORARY_ASSEMBLY_DIRS = [];
+    process.on("exit", () => CloudAssembly.cleanupTemporaryDirectories());
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js
+var require_nested_cloud_assembly_artifact_aug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var cloud_assembly_1 = require_cloud_assembly2();
+    var cacheSym = /* @__PURE__ */ Symbol();
+    Object.defineProperty(nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact.prototype, "nestedAssembly", {
+      get() {
+        if (!this[cacheSym]) {
+          this[cacheSym] = new cloud_assembly_1.CloudAssembly(this.fullPath, this.assembly.loadOptions);
+        }
+        return this[cacheSym];
+      }
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js
+var require_assets2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ASSET_PREFIX_SEPARATOR = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = void 0;
+    exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = "aws:cdk:enable-asset-metadata";
+    exports2.ASSET_RESOURCE_METADATA_PATH_KEY = "aws:asset:path";
+    exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = "aws:asset:dockerfile-path";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = "aws:asset:docker-build-args";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = "aws:asset:docker-build-contexts";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = "aws:asset:docker-build-secrets";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = "aws:asset:docker-build-ssh";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = "aws:asset:docker-build-target";
+    exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = "aws:asset:property";
+    exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = "aws:asset:is-bundled";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = "aws:asset:docker-outputs";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = "aws:asset:docker-cache-from";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = "aws:asset:docker-cache-to";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = "aws:asset:docker-cache-disabled";
+    exports2.ASSET_PREFIX_SEPARATOR = "||";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js
+var require_placeholders = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EnvironmentPlaceholders = void 0;
+    var EnvironmentPlaceholders4 = class _EnvironmentPlaceholders {
+      /**
+       * Replace the environment placeholders in all strings found in a complex object.
+       *
+       * Duplicated between cdk-assets and aws-cdk CLI because we don't have a good single place to put it
+       * (they're nominally independent tools).
+       */
+      static replace(object, values) {
+        return this.recurse(object, (value) => {
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, values.region);
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, values.accountId);
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, values.partition);
+          return value;
+        });
+      }
+      /**
+       * Like 'replace', but asynchronous
+       */
+      static async replaceAsync(object, provider) {
+        let needRegion = false;
+        let needAccountId = false;
+        let needPartition = false;
+        this.recurse(object, (value) => {
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_REGION) > 1) {
+            needRegion = true;
+          }
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_ACCOUNT) > 1) {
+            needAccountId = true;
+          }
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_PARTITION) > 1) {
+            needPartition = true;
+          }
+          return value;
+        });
+        const region = needRegion ? await provider.region() : void 0;
+        const accountId = needAccountId ? await provider.accountId() : void 0;
+        const partition = needPartition ? await provider.partition() : void 0;
+        return this.recurse(object, (value) => {
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, region ?? "WONTHAPPEN");
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, accountId ?? "WONTHAPPEN");
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, partition ?? "WONTHAPPEN");
+          return value;
+        });
+      }
+      static recurse(value, cb) {
+        if (typeof value === "string") {
+          return cb(value);
+        }
+        if (typeof value !== "object" || value === null) {
+          return value;
+        }
+        if (Array.isArray(value)) {
+          return value.map((x) => this.recurse(x, cb));
+        }
+        const ret = {};
+        for (const [key, inner] of Object.entries(value)) {
+          ret[key] = this.recurse(inner, cb);
+        }
+        return ret;
+      }
+    };
+    exports2.EnvironmentPlaceholders = EnvironmentPlaceholders4;
+    EnvironmentPlaceholders4.CURRENT_REGION = "${AWS::Region}";
+    EnvironmentPlaceholders4.CURRENT_ACCOUNT = "${AWS::AccountId}";
+    EnvironmentPlaceholders4.CURRENT_PARTITION = "${AWS::Partition}";
+    function replaceAll3(s, search, replace) {
+      return s.split(search).join(replace);
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js
+var require_bootstrap = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.SSMPARAM_NO_INVALIDATE = void 0;
+    exports2.SSMPARAM_NO_INVALIDATE = "[cdk:skip]";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js
+var require_lib3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_vpc(), exports2);
+    __exportStar2(require_ami(), exports2);
+    __exportStar2(require_load_balancer(), exports2);
+    __exportStar2(require_availability_zones(), exports2);
+    __exportStar2(require_endpoint_service_availability_zones(), exports2);
+    __exportStar2(require_security_group(), exports2);
+    __exportStar2(require_key(), exports2);
+    __exportStar2(require_generic(), exports2);
+    __exportStar2(require_cloud_artifact(), exports2);
+    require_cloud_artifact_aug();
+    __exportStar2(require_asset_manifest_artifact(), exports2);
+    __exportStar2(require_cloudformation_artifact(), exports2);
+    __exportStar2(require_tree_cloud_artifact(), exports2);
+    __exportStar2(require_nested_cloud_assembly_artifact(), exports2);
+    require_nested_cloud_assembly_artifact_aug();
+    __exportStar2(require_cloud_assembly2(), exports2);
+    __exportStar2(require_assets2(), exports2);
+    __exportStar2(require_metadata(), exports2);
+    __exportStar2(require_placeholders(), exports2);
+    __exportStar2(require_environment(), exports2);
+    __exportStar2(require_bootstrap(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/legacy-moved.ts
+function _convertCloudAssembly(x) {
+  return x;
+}
+function _convertCloudAssemblyBuilder(x) {
+  return x;
+}
+var import_cloud_assembly_api;
+var init_legacy_moved = __esm({
+  "../../aws-cdk-lib/cx-api/lib/legacy-moved.ts"() {
+    "use strict";
+    import_cloud_assembly_api = __toESM(require_lib3());
+    exports.CloudAssembly = import_cloud_assembly_api.CloudAssembly;
+    exports.CloudArtifact = import_cloud_assembly_api.CloudArtifact;
+    exports.CloudFormationStackArtifact = import_cloud_assembly_api.CloudFormationStackArtifact;
+    exports.AssetManifestArtifact = import_cloud_assembly_api.AssetManifestArtifact;
+    exports.NestedCloudAssemblyArtifact = import_cloud_assembly_api.NestedCloudAssemblyArtifact;
+    exports.TreeCloudArtifact = import_cloud_assembly_api.TreeCloudArtifact;
+    exports.CloudAssemblyBuilder = import_cloud_assembly_api.CloudAssemblyBuilder;
+    exports.EnvironmentPlaceholders = import_cloud_assembly_api.EnvironmentPlaceholders;
+    exports.EnvironmentUtils = import_cloud_assembly_api.EnvironmentUtils;
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/cxapi.ts
+var OUTDIR_ENV, CONTEXT_ENV, ERRORFILE_ENV, PERF_COUNTERS_FILE_ENV, CONTEXT_OVERFLOW_LOCATION_ENV, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, VALIDATION_REPORT_FILE, VALIDATION_REPORT_JSON_CONTEXT, STRICT_CFN_VALIDATE_ERRORS, CDK_APP_MODE_ENV, CDK_APP_MODE_CONTEXT, CDK_TEMPLATE_FILE_KEY;
+var init_cxapi = __esm({
+  "../../aws-cdk-lib/cx-api/lib/cxapi.ts"() {
+    "use strict";
+    OUTDIR_ENV = "CDK_OUTDIR";
+    CONTEXT_ENV = "CDK_CONTEXT_JSON";
+    ERRORFILE_ENV = "CDK_ERROR_FILE";
+    PERF_COUNTERS_FILE_ENV = "CDK_PERF_COUNTERS_FILE";
+    CONTEXT_OVERFLOW_LOCATION_ENV = "CONTEXT_OVERFLOW_LOCATION_ENV";
+    FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT = "@aws-cdk/core:failSynthOnValidationErrors";
+    VALIDATION_REPORT_FILE = "validation-report.json";
+    VALIDATION_REPORT_JSON_CONTEXT = "@aws-cdk/core:validationReportJson";
+    STRICT_CFN_VALIDATE_ERRORS = "@aws-cdk/core:strictCfnValidateErrors";
+    CDK_APP_MODE_ENV = "CDK_APP_MODE";
+    CDK_APP_MODE_CONTEXT = "@aws-cdk/core:appMode";
+    CDK_TEMPLATE_FILE_KEY = "aws:cdk:templateFile";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts
+var init_flag_modeling = __esm({
+  "../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/features.ts
+function futureFlagDefault(flag) {
+  const value = CURRENT_VERSION_FLAG_DEFAULTS[flag] ?? false;
+  if (typeof value !== "boolean") {
+    throw new Error(`futureFlagDefault: default type of flag '${flag}' should be boolean, got '${typeof value}'`);
+  }
+  return value;
+}
+var ENABLE_STACK_NAME_DUPLICATES_CONTEXT, ENABLE_DIFF_NO_FAIL_CONTEXT, NEW_STYLE_STACK_SYNTHESIS_CONTEXT, STACK_RELATIVE_EXPORTS_CONTEXT, DOCKER_IGNORE_SUPPORT, SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME, KMS_DEFAULT_KEY_POLICIES, S3_GRANT_WRITE_WITHOUT_ACL, ECS_REMOVE_DEFAULT_DESIRED_COUNT, RDS_LOWERCASE_DB_IDENTIFIER, APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID, EFS_DEFAULT_ENCRYPTION_AT_REST, LAMBDA_RECOGNIZE_VERSION_PROPS, LAMBDA_RECOGNIZE_LAYER_VERSION, CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021, CHECK_SECRET_USAGE, TARGET_PARTITIONS, ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER, EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME, ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME, IAM_MINIMIZE_POLICIES, IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME, VALIDATE_SNAPSHOT_REMOVAL_POLICY, CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME, S3_CREATE_DEFAULT_LOGGING_POLICY, SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY, APIGATEWAY_DISABLE_CLOUDWATCH_ROLE, ENABLE_PARTITION_LITERALS, EVENTS_TARGET_QUEUE_SAME_ACCOUNT, ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER, ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER, S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY, ROUTE53_PATTERNS_USE_CERTIFICATE, ROUTE53_PATTERNS_USE_DISTRIBUTION, AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT, DATABASE_PROXY_UNIQUE_RESOURCE_NAME, CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP, APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID, EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA, SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY, REDSHIFT_COLUMN_ID, ENABLE_EMR_SERVICE_POLICY_V2, EC2_RESTRICT_DEFAULT_SECURITY_GROUP, APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID, APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD, INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION, KMS_ALIAS_NAME_REF, KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL, EFS_DENY_ANONYMOUS_ACCESS, EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID, AUTOSCALING_GENERATE_LAUNCH_TEMPLATE, ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY, LAMBDA_NODEJS_USE_LATEST_RUNTIME, RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS, AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS, APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION, CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME, LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION, CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE, CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2, KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE, PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE, EKS_NODEGROUP_NAME, EKS_USE_NATIVE_OIDC_PROVIDER, ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID, EBS_DEFAULT_GP3, ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM, LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT, S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET, USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK, EXPLICIT_STACK_TAGS, REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS, DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA, EC2_SUM_TIMEOUT_ENABLED, APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION, USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY, CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS, LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES, STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY, STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2, BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT, ASPECT_STABILIZATION, SIGNER_PROFILE_NAME_PASSED_TO_CFN, USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE, ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT, IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS, ENABLE_ADDITIONAL_METADATA_COLLECTION, LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY, SET_UNIQUE_REPLICATION_ROLE_NAME, PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE, EVENTBUS_POLICY_SID_REQUIRED, ASPECT_PRIORITIES_MUTATING, DYNAMODB_TABLE_RETAIN_TABLE_REPLICA, LOG_USER_POOL_CLIENT_SECRET_VALUE, PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE, S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS, EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY, USE_RESOURCEID_FOR_VPCV2_MIGRATION, S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT, USE_CDK_MANAGED_LAMBDA_LOGGROUP, NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT, STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT, CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0, ELB_USE_POST_QUANTUM_TLS_POLICY, AUTOMATIC_L1_TRAITS, BATCH_DEFAULT_AL2023, EKS_DEFAULT_AL2023, ANNOTATIONS_IN_VALIDATION_REPORT, DEFAULT_CROSS_STACK_REFERENCES, VALIDATE_AGAINST_DEFAULT_RULES, ECS_REMOVE_EMPTY_LOAD_BALANCERS, CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS, FLAGS, CURRENT_MV, CURRENT_VERSION_EXPIRED_FLAGS, CURRENTLY_RECOMMENDED_FLAGS, CURRENT_VERSION_FLAG_DEFAULTS, FUTURE_FLAGS, NEW_PROJECT_DEFAULT_CONTEXT;
+var init_features = __esm({
+  "../../aws-cdk-lib/cx-api/lib/features.ts"() {
+    "use strict";
+    init_flag_modeling();
+    ENABLE_STACK_NAME_DUPLICATES_CONTEXT = "@aws-cdk/core:enableStackNameDuplicates";
+    ENABLE_DIFF_NO_FAIL_CONTEXT = "aws-cdk:enableDiffNoFail";
+    NEW_STYLE_STACK_SYNTHESIS_CONTEXT = "@aws-cdk/core:newStyleStackSynthesis";
+    STACK_RELATIVE_EXPORTS_CONTEXT = "@aws-cdk/core:stackRelativeExports";
+    DOCKER_IGNORE_SUPPORT = "@aws-cdk/aws-ecr-assets:dockerIgnoreSupport";
+    SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME = "@aws-cdk/aws-secretsmanager:parseOwnedSecretName";
+    KMS_DEFAULT_KEY_POLICIES = "@aws-cdk/aws-kms:defaultKeyPolicies";
+    S3_GRANT_WRITE_WITHOUT_ACL = "@aws-cdk/aws-s3:grantWriteWithoutAcl";
+    ECS_REMOVE_DEFAULT_DESIRED_COUNT = "@aws-cdk/aws-ecs-patterns:removeDefaultDesiredCount";
+    RDS_LOWERCASE_DB_IDENTIFIER = "@aws-cdk/aws-rds:lowercaseDbIdentifier";
+    APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID = "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId";
+    EFS_DEFAULT_ENCRYPTION_AT_REST = "@aws-cdk/aws-efs:defaultEncryptionAtRest";
+    LAMBDA_RECOGNIZE_VERSION_PROPS = "@aws-cdk/aws-lambda:recognizeVersionProps";
+    LAMBDA_RECOGNIZE_LAYER_VERSION = "@aws-cdk/aws-lambda:recognizeLayerVersion";
+    CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021 = "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021";
+    CHECK_SECRET_USAGE = "@aws-cdk/core:checkSecretUsage";
+    TARGET_PARTITIONS = "@aws-cdk/core:target-partitions";
+    ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER = "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver";
+    EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME = "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName";
+    ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME = "@aws-cdk/aws-ecs:arnFormatIncludesClusterName";
+    IAM_MINIMIZE_POLICIES = "@aws-cdk/aws-iam:minimizePolicies";
+    IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME = "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName";
+    VALIDATE_SNAPSHOT_REMOVAL_POLICY = "@aws-cdk/core:validateSnapshotRemovalPolicy";
+    CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME = "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName";
+    S3_CREATE_DEFAULT_LOGGING_POLICY = "@aws-cdk/aws-s3:createDefaultLoggingPolicy";
+    SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY = "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption";
+    APIGATEWAY_DISABLE_CLOUDWATCH_ROLE = "@aws-cdk/aws-apigateway:disableCloudWatchRole";
+    ENABLE_PARTITION_LITERALS = "@aws-cdk/core:enablePartitionLiterals";
+    EVENTS_TARGET_QUEUE_SAME_ACCOUNT = "@aws-cdk/aws-events:eventsTargetQueueSameAccount";
+    ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER = "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker";
+    ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER = "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener";
+    S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY = "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy";
+    ROUTE53_PATTERNS_USE_CERTIFICATE = "@aws-cdk/aws-route53-patters:useCertificate";
+    ROUTE53_PATTERNS_USE_DISTRIBUTION = "@aws-cdk/aws-route53-patterns:useDistribution";
+    AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT = "@aws-cdk/customresources:installLatestAwsSdkDefault";
+    DATABASE_PROXY_UNIQUE_RESOURCE_NAME = "@aws-cdk/aws-rds:databaseProxyUniqueResourceName";
+    CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP = "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup";
+    APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID = "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId";
+    EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA = "@aws-cdk/aws-ec2:launchTemplateDefaultUserData";
+    SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY = "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments";
+    REDSHIFT_COLUMN_ID = "@aws-cdk/aws-redshift:columnId";
+    ENABLE_EMR_SERVICE_POLICY_V2 = "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2";
+    EC2_RESTRICT_DEFAULT_SECURITY_GROUP = "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup";
+    APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID = "@aws-cdk/aws-apigateway:requestValidatorUniqueId";
+    APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD = "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard";
+    INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION = "@aws-cdk/core:includePrefixInUniqueNameGeneration";
+    KMS_ALIAS_NAME_REF = "@aws-cdk/aws-kms:aliasNameRef";
+    KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL = "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal";
+    EFS_DENY_ANONYMOUS_ACCESS = "@aws-cdk/aws-efs:denyAnonymousAccess";
+    EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID = "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId";
+    AUTOSCALING_GENERATE_LAUNCH_TEMPLATE = "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig";
+    ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY = "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby";
+    LAMBDA_NODEJS_USE_LATEST_RUNTIME = "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion";
+    RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS = "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials";
+    AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS = "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters";
+    APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION = "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier";
+    CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME = "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource";
+    LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION = "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction";
+    CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE = "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse";
+    CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2 = "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2";
+    KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE = "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope";
+    PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceAssetRoleTrustScope";
+    EKS_NODEGROUP_NAME = "@aws-cdk/aws-eks:nodegroupNameAttribute";
+    EKS_USE_NATIVE_OIDC_PROVIDER = "@aws-cdk/aws-eks:useNativeOidcProvider";
+    ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID = "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId";
+    EBS_DEFAULT_GP3 = "@aws-cdk/aws-ec2:ebsDefaultGp3Volume";
+    ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM = "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm";
+    LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT = "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault";
+    S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET = "@aws-cdk/aws-s3:keepNotificationInImportedBucket";
+    USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK = "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask";
+    EXPLICIT_STACK_TAGS = "@aws-cdk/core:explicitStackTags";
+    REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS = "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions";
+    DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA = "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica";
+    EC2_SUM_TIMEOUT_ENABLED = "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled";
+    APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION = "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission";
+    USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY = "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId";
+    CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS = "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics";
+    LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES = "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages";
+    STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY = "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy";
+    STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2 = "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2";
+    BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT = "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault";
+    ASPECT_STABILIZATION = "@aws-cdk/core:aspectStabilization";
+    SIGNER_PROFILE_NAME_PASSED_TO_CFN = "@aws-cdk/aws-signer:signingProfileNamePassedToCfn";
+    USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE = "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource";
+    ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT = "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault";
+    IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS = "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections";
+    ENABLE_ADDITIONAL_METADATA_COLLECTION = "@aws-cdk/core:enableAdditionalMetadataCollection";
+    LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY = "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy";
+    SET_UNIQUE_REPLICATION_ROLE_NAME = "@aws-cdk/aws-s3:setUniqueReplicationRoleName";
+    PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceStageRoleTrustScope";
+    EVENTBUS_POLICY_SID_REQUIRED = "@aws-cdk/aws-events:requireEventBusPolicySid";
+    ASPECT_PRIORITIES_MUTATING = "@aws-cdk/core:aspectPrioritiesMutating";
+    DYNAMODB_TABLE_RETAIN_TABLE_REPLICA = "@aws-cdk/aws-dynamodb:retainTableReplica";
+    LOG_USER_POOL_CLIENT_SECRET_VALUE = "@aws-cdk/cognito:logUserPoolClientSecretValue";
+    PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope";
+    S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS = "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions";
+    EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY = "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway";
+    USE_RESOURCEID_FOR_VPCV2_MIGRATION = "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration";
+    S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT = "@aws-cdk/aws-s3:publicAccessBlockedByDefault";
+    USE_CDK_MANAGED_LAMBDA_LOGGROUP = "@aws-cdk/aws-lambda:useCdkManagedLogGroup";
+    NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT = "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault";
+    STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT = "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint";
+    CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0 = "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0";
+    ELB_USE_POST_QUANTUM_TLS_POLICY = "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy";
+    AUTOMATIC_L1_TRAITS = "@aws-cdk/core:automaticL1Traits";
+    BATCH_DEFAULT_AL2023 = "@aws-cdk/aws-batch:defaultToAL2023";
+    EKS_DEFAULT_AL2023 = "@aws-cdk/aws-eks:defaultToAL2023";
+    ANNOTATIONS_IN_VALIDATION_REPORT = "@aws-cdk/core:annotationsInValidationReport";
+    DEFAULT_CROSS_STACK_REFERENCES = "@aws-cdk/core:defaultCrossStackReferences";
+    VALIDATE_AGAINST_DEFAULT_RULES = "@aws-cdk/core:validateAgainstDefaultRules";
+    ECS_REMOVE_EMPTY_LOAD_BALANCERS = "@aws-cdk/aws-ecs:removeEmptyLoadBalancers";
+    CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS = "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps";
+    FLAGS = {
+      //////////////////////////////////////////////////////////////////////
+      [SIGNER_PROFILE_NAME_PASSED_TO_CFN]: {
+        type: 1 /* BugFix */,
+        summary: "Pass signingProfileName to CfnSigningProfile",
+        detailsMd: `
+      When enabled, the \`signingProfileName\` property is passed to the L1 \`CfnSigningProfile\` construct,
+      which ensures that the AWS Signer profile is created with the specified name.
+
+      When disabled, the \`signingProfileName\` is not passed to CloudFormation, maintaining backward
+      compatibility with existing deployments where CloudFormation auto-generated profile names.
+
+      This feature flag is needed because enabling it can cause existing signing profiles to be
+      replaced during deployment if a \`signingProfileName\` was specified but not previously used
+      in the CloudFormation template.`,
+        introducedIn: { v2: "2.212.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_STACK_NAME_DUPLICATES_CONTEXT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Allow multiple stacks with the same name",
+        detailsMd: `
+      If this is set, multiple stacks can use the same stack name (e.g. deployed to
+      different environments). This means that the name of the synthesized template
+      file will be based on the construct path and not on the defined \`stackName\`
+      of the stack.`,
+        recommendedValue: true,
+        introducedIn: { v1: "1.16.0" },
+        unconfiguredBehavesLike: { v2: true },
+        compatibilityWithOldBehaviorMd: "Pass stack identifiers to the CLI instead of stack names."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_DIFF_NO_FAIL_CONTEXT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Make `cdk diff` not fail when there are differences",
+        detailsMd: `
+      Determines what status code \`cdk diff\` should return when the specified stack
+      differs from the deployed stack or the local CloudFormation template:
+
+      * \`aws-cdk:enableDiffNoFail=true\` => status code == 0
+      * \`aws-cdk:enableDiffNoFail=false\` => status code == 1
+
+      You can override this behavior with the --fail flag:
+
+      * \`--fail\` => status code == 1
+      * \`--no-fail\` => status code == 0`,
+        introducedIn: { v1: "1.19.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Specify `--fail` to the CLI."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [NEW_STYLE_STACK_SYNTHESIS_CONTEXT]: {
+        type: 1 /* BugFix */,
+        summary: "Switch to new stack synthesis method which enables CI/CD",
+        detailsMd: `
+      If this flag is specified, all \`Stack\`s will use the \`DefaultStackSynthesizer\` by
+      default. If it is not set, they will use the \`LegacyStackSynthesizer\`.`,
+        introducedIn: { v1: "1.39.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STACK_RELATIVE_EXPORTS_CONTEXT]: {
+        type: 1 /* BugFix */,
+        summary: "Name exports based on the construct paths relative to the stack, rather than the global construct path",
+        detailsMd: `
+      Combined with the stack name this relative construct path is good enough to
+      ensure uniqueness, and makes the export names robust against refactoring
+      the location of the stack in the construct tree (specifically, moving the Stack
+      into a Stage).`,
+        introducedIn: { v1: "1.58.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DOCKER_IGNORE_SUPPORT]: {
+        type: 0 /* ApiDefault */,
+        summary: "DockerImageAsset properly supports `.dockerignore` files by default",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`DockerImageAsset\` is to use
+      glob semantics for \`.dockerignore\` files. If this flag is set, the default behavior
+      is standard Docker ignore semantics.
+
+      This is a feature flag as the old behavior was technically incorrect but
+      users may have come to depend on it.`,
+        introducedIn: { v1: "1.73.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Update your `.dockerignore` file to match standard Docker ignore rules, if necessary."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME]: {
+        type: 0 /* ApiDefault */,
+        summary: "Fix the referencing of SecretsManager names from ARNs",
+        detailsMd: `
+      Secret.secretName for an "owned" secret will attempt to parse the secretName from the ARN,
+      rather than the default full resource name, which includes the SecretsManager suffix.
+
+      If this flag is not set, Secret.secretName will include the SecretsManager suffix, which cannot be directly
+      used by SecretsManager.DescribeSecret, and must be parsed by the user first (e.g., Fn:Join, Fn:Select, Fn:Split).`,
+        introducedIn: { v1: "1.77.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Use `parseArn(secret.secretName).resourceName` to emulate the incorrect old parsing."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_DEFAULT_KEY_POLICIES]: {
+        type: 0 /* ApiDefault */,
+        summary: "Tighten default KMS key policies",
+        detailsMd: `
+      KMS Keys start with a default key policy that grants the account access to administer the key,
+      mirroring the behavior of the KMS SDK/CLI/Console experience. Users may override the default key
+      policy by specifying their own.
+
+      If this flag is not set, the default key policy depends on the setting of the \`trustAccountIdentities\`
+      flag. If false (the default, for backwards-compatibility reasons), the default key policy somewhat
+      resembles the default admin key policy, but with the addition of 'GenerateDataKey' permissions. If
+      true, the policy matches what happens when this feature flag is set.
+
+      Additionally, if this flag is not set and the user supplies a custom key policy, this will be appended
+      to the key's default policy (rather than replacing it).`,
+        introducedIn: { v1: "1.78.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `trustAccountIdentities: false` to `Key` construct to restore the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_GRANT_WRITE_WITHOUT_ACL]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove `PutObjectAcl` from Bucket.grantWrite",
+        detailsMd: `
+      Change the old 's3:PutObject*' permission to 's3:PutObject' on Bucket,
+      as the former includes 's3:PutObjectAcl',
+      which could be used to grant read/write object access to IAM principals in other accounts.
+      Use a feature flag to make sure existing customers who might be relying
+      on the overly-broad permissions are not broken.`,
+        introducedIn: { v1: "1.85.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Call `bucket.grantPutAcl()` in addition to `bucket.grantWrite()` to grant ACL permissions."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_DEFAULT_DESIRED_COUNT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Do not specify a default DesiredCount for ECS services",
+        detailsMd: `
+      ApplicationLoadBalancedServiceBase, ApplicationMultipleTargetGroupServiceBase,
+      NetworkLoadBalancedServiceBase, NetworkMultipleTargetGroupServiceBase, and
+      QueueProcessingServiceBase currently determine a default value for the desired count of
+      a CfnService if a desiredCount is not provided. The result of this is that on every
+      deployment, the service count is reset to the fixed value, even if it was autoscaled.
+
+      If this flag is not set, the default behaviour for CfnService.desiredCount is to set a
+      desiredCount of 1, if one is not provided. If true, a default will not be defined for
+      CfnService.desiredCount and as such desiredCount will be undefined, if one is not provided.`,
+        introducedIn: { v1: "1.92.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `desiredCount: 1` explicitly, but you should never need this."
+      },
+      [ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER]: {
+        type: 0 /* ApiDefault */,
+        summary: "Disable implicit openListener when custom security groups are provided",
+        detailsMd: `
+      ApplicationLoadBalancedServiceBase currently defaults openListener to true, which creates
+      security group rules allowing ingress from 0.0.0.0/0. This can be a security risk when
+      users provide custom security groups on their load balancer, expecting those to be the
+      only ingress rules.
+
+      If this flag is not set, openListener will always default to true for backward compatibility.
+      If true, openListener will default to false when custom security groups are detected on the
+      load balancer, and true otherwise. Users can still explicitly set openListener: true to
+      override this behavior.`,
+        introducedIn: { v2: "2.214.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `openListener: true` explicitly to maintain the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [RDS_LOWERCASE_DB_IDENTIFIER]: {
+        type: 1 /* BugFix */,
+        summary: "Force lowercasing of RDS Cluster names in CDK",
+        detailsMd: `
+      Cluster names must be lowercase, and the service will lowercase the name when the cluster
+      is created. However, CDK did not use to know about this, and would use the user-provided name
+      referencing the cluster, which would fail if it happened to be mixed-case.
+
+      With this flag, lowercase the name in CDK so we can reference it properly.
+
+      Must be behind a permanent flag because changing a name from mixed case to lowercase between deployments
+      would lead CloudFormation to think the name was changed and would trigger a cluster replacement
+      (losing data!).`,
+        introducedIn: { v1: "1.97.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Allow adding/removing multiple UsagePlanKeys independently",
+        detailsMd: `
+      The UsagePlanKey resource connects an ApiKey with a UsagePlan. API Gateway does not allow more than one UsagePlanKey
+      for any given UsagePlan and ApiKey combination. For this reason, CloudFormation cannot replace this resource without
+      either the UsagePlan or ApiKey changing.
+
+      The feature addition to support multiple UsagePlanKey resources - 142bd0e2 - recognized this and attempted to keep
+      existing UsagePlanKey logical ids unchanged.
+      However, this intentionally caused the logical id of the UsagePlanKey to be sensitive to order. That is, when
+      the 'first' UsagePlanKey resource is removed, the logical id of the 'second' assumes what was originally the 'first',
+      which again is disallowed.
+
+      In effect, there is no way to get out of this mess in a backwards compatible way, while supporting existing stacks.
+      This flag changes the logical id layout of UsagePlanKey to not be sensitive to order.`,
+        introducedIn: { v1: "1.98.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_DEFAULT_ENCRYPTION_AT_REST]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enable this feature flag to have elastic file systems encrypted at rest by default.",
+        detailsMd: `
+      Encryption can also be configured explicitly using the \`encrypted\` property.
+      `,
+        introducedIn: { v1: "1.98.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass the `encrypted: false` property to the `FileSystem` construct to disable encryption."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_RECOGNIZE_VERSION_PROPS]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the  `fn.currentVersion`.",
+        detailsMd: `
+      The previous calculation incorrectly considered properties of the \`AWS::Lambda::Function\` resource that did
+      not constitute creating a new Version.
+
+      See 'currentVersion' section in the aws-lambda module's README for more details.`,
+        introducedIn: { v1: "1.106.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_RECOGNIZE_LAYER_VERSION]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.",
+        detailsMd: `
+      This flag correct incorporates Lambda Layer properties into the Lambda Function Version.
+
+      See 'currentVersion' section in the aws-lambda module's README for more details.`,
+        introducedIn: { v1: "1.159.0", v2: "2.27.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
+        detailsMd: `
+      The security policy can also be configured explicitly using the \`minimumProtocolVersion\` property.`,
+        introducedIn: { v1: "1.117.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CHECK_SECRET_USAGE]: {
+        type: 2 /* VisibleContext */,
+        summary: "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations",
+        detailsMd: `
+      With this flag enabled, \`SecretValue\` instances can only be passed to
+      constructs that accept \`SecretValue\`s; otherwise, \`unsafeUnwrap()\` must be
+      called to use it as a regular string.`,
+        introducedIn: { v1: "1.153.0", v2: "2.21.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [TARGET_PARTITIONS]: {
+        type: 2 /* VisibleContext */,
+        summary: "What regions to include in lookup tables of environment agnostic stacks",
+        detailsMd: `
+      Has no effect on stacks that have a defined region, but will limit the amount
+      of unnecessary regions included in stacks without a known region.
+
+      The type of this value should be a list of strings.`,
+        introducedIn: { v1: "1.137.0", v2: "2.4.0" },
+        recommendedValue: ["aws", "aws-cn"]
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER]: {
+        type: 0 /* ApiDefault */,
+        summary: "ECS extensions will automatically add an `awslogs` driver if no logging is specified",
+        detailsMd: `
+      Enable this feature flag to configure default logging behavior for the ECS Service Extensions. This will enable the
+      \`awslogs\` log driver for the application container of the service to send the container logs to CloudWatch Logs.
+
+      This is a feature flag as the new behavior provides a better default experience for the users.`,
+        introducedIn: { v1: "1.140.0", v2: "2.8.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Specify a log driver explicitly."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names.",
+        detailsMd: `
+      Previously, the generated Launch Template names were only unique within a stack because they were based only on the
+      \`Instance\` construct ID. If another stack that has an \`Instance\` with the same construct ID is deployed in the same
+      account and region, the deployments would always fail as the generated Launch Template names were the same.
+
+      The new implementation addresses this issue by generating the Launch Template name with the \`Names.uniqueId\` method.`,
+        introducedIn: { v1: "1.140.0", v2: "2.8.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID.",
+        detailsMd: `
+      If this flag is not set, the old ARN format (without cluster name) for ECS is used.
+      If this flag is set, the new ARN format (with cluster name) for ECS is used.
+
+      This is a feature flag as the old format is still valid for existing ECS clusters.
+
+      See https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#ecs-resource-ids
+      `,
+        introducedIn: { v2: "2.35.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_MINIMIZE_POLICIES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Minimize IAM policies by combining Statements",
+        detailsMd: `
+      Minimize IAM policies by combining Principals, Actions and Resources of two
+      Statements in the policies, as long as it doesn't change the meaning of the
+      policy.`,
+        introducedIn: { v1: "1.150.0", v2: "2.18.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [VALIDATE_SNAPSHOT_REMOVAL_POLICY]: {
+        type: 0 /* ApiDefault */,
+        summary: "Error on snapshot removal policies on resources that do not support it.",
+        detailsMd: `
+      Makes sure we do not allow snapshot removal policy on resources that do not support it.
+      If supplied on an unsupported resource, CloudFormation ignores the policy altogether.
+      This flag will reduce confusion and unexpected loss of data when erroneously supplying
+      the snapshot removal policy.`,
+        introducedIn: { v2: "2.28.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "The old behavior was incorrect. Update your source to not specify SNAPSHOT policies on resources that do not support it."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Generate key aliases that include the stack name",
+        detailsMd: `
+      Enable this feature flag to have CodePipeline generate a unique cross account key alias name using the stack name.
+
+      Previously, when creating multiple pipelines with similar naming conventions and when crossAccountKeys is true,
+      the KMS key alias name created for these pipelines may be the same due to how the uniqueId is generated.
+
+      This new implementation creates a stack safe resource name for the alias using the stack name instead of the stack ID.
+      `,
+        introducedIn: { v2: "2.29.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_CREATE_DEFAULT_LOGGING_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist.",
+        detailsMd: `
+      For example, in order to send VPC flow logs to an S3 bucket, there is a specific Bucket Policy
+      that needs to be attached to the bucket. If you create the bucket without a policy and then add the
+      bucket as the flow log destination, the service will automatically create the bucket policy with the
+      necessary permissions. If you were to then try and add your own bucket policy CloudFormation will throw
+      and error indicating that a bucket policy already exists.
+
+      In cases where we know what the required policy is we can go ahead and create the policy so we can
+      remain in control of it.
+
+      @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-S3
+      `,
+        introducedIn: { v2: "2.31.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Restrict KMS key policy for encrypted Queues a bit more",
+        detailsMd: `
+      Enable this feature flag to restrict the decryption of a SQS queue, which is subscribed to a SNS topic, to
+      only the topic which it is subscribed to and not the whole SNS service of an account.
+
+      Previously the decryption was only restricted to the SNS service principal. To make the SQS subscription more
+      secure, it is a good practice to restrict the decryption further and only allow the connected SNS topic to decryption
+      the subscribed queue.`,
+        introducedIn: { v2: "2.32.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_DISABLE_CLOUDWATCH_ROLE]: {
+        type: 1 /* BugFix */,
+        summary: "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment",
+        detailsMd: `
+      Enable this feature flag to change the default behavior for aws-apigateway.RestApi and aws-apigateway.SpecRestApi
+      to _not_ create a CloudWatch role and Account. There is only a single ApiGateway account per AWS
+      environment which means that each time you create a RestApi in your account the ApiGateway account
+      is overwritten. If at some point the newest RestApi is deleted, the ApiGateway Account and CloudWatch
+      role will also be deleted, breaking any existing ApiGateways that were depending on them.
+
+      When this flag is enabled you should either create the ApiGateway account and CloudWatch role
+      separately _or_ only enable the cloudWatchRole on a single RestApi.
+      `,
+        introducedIn: { v2: "2.38.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_PARTITION_LITERALS]: {
+        type: 1 /* BugFix */,
+        summary: "Make ARNs concrete if AWS partition is known",
+        // eslint-disable-next-line @cdklabs/no-literal-partition
+        detailsMd: `
+      Enable this feature flag to get partition names as string literals in Stacks with known regions defined in
+      their environment, such as "aws" or "aws-cn".  Previously the CloudFormation intrinsic function
+      "Ref: AWS::Partition" was used.  For example:
+
+      \`\`\`yaml
+      Principal:
+        AWS:
+          Fn::Join:
+            - ""
+            - - "arn:"
+              - Ref: AWS::Partition
+              - :iam::123456789876:root
+      \`\`\`
+
+      becomes:
+
+      \`\`\`yaml
+      Principal:
+        AWS: "arn:aws:iam::123456789876:root"
+      \`\`\`
+
+      The intrinsic function will still be used in Stacks where no region is defined or the region's partition
+      is unknown.
+      `,
+        introducedIn: { v2: "2.38.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EVENTS_TARGET_QUEUE_SAME_ACCOUNT]: {
+        type: 1 /* BugFix */,
+        summary: "Event Rules may only push to encrypted SQS queues in the same account",
+        detailsMd: `
+      This flag applies to SQS Queues that are used as the target of event Rules. When enabled, only principals
+      from the same account as the Rule can send messages. If a queue is unencrypted, this restriction will
+      always apply, regardless of the value of this flag.
+      `,
+        introducedIn: { v2: "2.51.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER]: {
+        type: 1 /* BugFix */,
+        summary: 'Avoid setting the "ECS" deployment controller when adding a circuit breaker',
+        detailsMd: `
+      Enable this feature flag to avoid setting the "ECS" deployment controller when adding a circuit breaker to an
+      ECS Service, as this will trigger a full replacement which fails to deploy when using set service names.
+      This does not change any behaviour as the default deployment controller when it is not defined is ECS.
+
+      This is a feature flag as the new behavior provides a better default experience for the users.
+      `,
+        introducedIn: { v2: "2.51.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature to create default policy names for imported roles that depend on the stack the role is in.",
+        detailsMd: `
+      Without this, importing the same role in multiple places could lead to the permissions given for one version of the imported role
+      to overwrite permissions given to the role at a different place where it was imported. This was due to all imported instances
+      of a role using the same default policy name.
+
+      This new implementation creates default policy names based on the constructs node path in their stack.
+      `,
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Use S3 Bucket Policy instead of ACLs for Server Access Logging",
+        detailsMd: `
+      Enable this feature flag to use S3 Bucket Policy for granting permission for Server Access Logging
+      rather than using the canned \`LogDeliveryWrite\` ACL. ACLs do not work when Object Ownership is
+      enabled on the bucket.
+
+      This flag uses a Bucket Policy statement to allow Server Access Log delivery, following best
+      practices for S3.
+
+      @see https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html
+    `,
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ROUTE53_PATTERNS_USE_CERTIFICATE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use the official `Certificate` resource instead of `DnsValidatedCertificate`",
+        detailsMd: `
+      Enable this feature flag to use the official CloudFormation supported \`Certificate\` resource instead
+      of the deprecated \`DnsValidatedCertificate\` construct. If this flag is enabled and you are creating
+      the stack in a region other than us-east-1 then you must also set \`crossRegionReferences=true\` on the
+      stack.
+      `,
+        introducedIn: { v2: "2.61.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Define a `DnsValidatedCertificate` explicitly and pass in the `certificate` property"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Whether to install the latest SDK by default in AwsCustomResource",
+        detailsMd: `
+      This was originally introduced and enabled by default to not be limited by the SDK version
+      that's installed on AWS Lambda. However, it creates issues for Lambdas bound to VPCs that
+      do not have internet access, or in environments where 'npmjs.com' is not available.
+
+      The recommended setting is to disable the default installation behavior, and pass the
+      flag on a resource-by-resource basis to enable it if necessary.
+    `,
+        compatibilityWithOldBehaviorMd: "Set installLatestAwsSdk: true on all resources that need it.",
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DATABASE_PROXY_UNIQUE_RESOURCE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Use unique resource name for Database Proxy",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`DatabaseProxy\` is
+      to use \`id\` of the constructor for \`dbProxyName\` when it's not specified in the argument.
+      In this case, users can't deploy \`DatabaseProxy\`s that have the same \`id\` in the same region.
+
+      If this flag is set, the default behavior is to use unique resource names for each \`DatabaseProxy\`.
+
+      This is a feature flag as the old behavior was technically incorrect, but users may have come to depend on it.
+    `,
+        introducedIn: { v2: "2.65.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP]: {
+        type: 1 /* BugFix */,
+        summary: "Remove CloudWatch alarms from deployment group",
+        detailsMd: `
+      Enable this flag to be able to remove all CloudWatch alarms from a deployment group by removing
+      the alarms from the construct. If this flag is not set, removing all alarms from the construct
+      will still leave the alarms configured for the deployment group.
+    `,
+        introducedIn: { v2: "2.65.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Include authorizer configuration in the calculation of the API deployment logical ID.",
+        detailsMd: `
+      The logical ID of the AWS::ApiGateway::Deployment resource is calculated by hashing
+      the API configuration, including methods, and resources, etc. Enable this feature flag
+      to also include the configuration of any authorizer attached to the API in the
+      calculation, so any changes made to an authorizer will create a new deployment.
+      `,
+        introducedIn: { v2: "2.66.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA]: {
+        type: 1 /* BugFix */,
+        summary: "Define user data for a launch template by default when a machine image is provided.",
+        detailsMd: `
+      The ec2.LaunchTemplate construct did not define user data when a machine image is
+      provided despite the document. If this is set, a user data is automatically defined
+      according to the OS of the machine image.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.67.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "SecretTargetAttachments uses the ResourcePolicy of the attached Secret.",
+        detailsMd: `
+      Enable this feature flag to make SecretTargetAttachments use the ResourcePolicy of the attached Secret.
+      SecretTargetAttachments are created to connect a Secret to a target resource.
+      In CDK code, they behave like regular Secret and can be used as a stand-in in most situations.
+      Previously, adding to the ResourcePolicy of a SecretTargetAttachment did attempt to create a separate ResourcePolicy for the same Secret.
+      However Secrets can only have a single ResourcePolicy, causing the CloudFormation deployment to fail.
+
+      When enabling this feature flag for an existing Stack, ResourcePolicies created via a SecretTargetAttachment will need replacement.
+      This won't be possible without intervention due to limitation outlined above.
+      First remove all permissions granted to the Secret and deploy without the ResourcePolicies.
+      Then you can re-add the permissions and deploy again.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.67.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [REDSHIFT_COLUMN_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Whether to use an ID to track Redshift column changes",
+        detailsMd: `
+      Redshift columns are identified by their \`name\`. If a column is renamed, the old column
+      will be dropped and a new column will be created. This can cause data loss.
+
+      This flag enables the use of an \`id\` attribute for Redshift columns. If this flag is enabled, the
+      internal CDK architecture will track changes of Redshift columns through their \`id\`, rather
+      than their \`name\`. This will prevent data loss when columns are renamed.
+
+      **NOTE** - Enabling this flag comes at a **risk**. When enabled, update the \`id\`s of all columns,
+      **however** do not change the \`names\`s of the columns. If the \`name\`s of the columns are changed during
+      initial deployment, the columns will be dropped and recreated, causing data loss. After the initial deployment
+      of the \`id\`s, the \`name\`s of the columns can be changed without data loss.
+      `,
+        introducedIn: { v2: "2.68.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_EMR_SERVICE_POLICY_V2]: {
+        type: 1 /* BugFix */,
+        summary: "Enable AmazonEMRServicePolicy_v2 managed policies",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`EmrCreateCluster\` is
+      to use \`AmazonElasticMapReduceRole\` managed policies.
+
+      If this flag is set, the default behavior is to use the new \`AmazonEMRServicePolicy_v2\`
+      managed policies.
+
+      This is a feature flag as the old behavior will be deprecated, but some resources may require manual
+      intervention since they might not have the appropriate tags propagated automatically.
+      `,
+        introducedIn: { v2: "2.72.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_RESTRICT_DEFAULT_SECURITY_GROUP]: {
+        type: 0 /* ApiDefault */,
+        summary: "Restrict access to the VPC default security group",
+        detailsMd: `
+      Enable this feature flag to remove the default ingress/egress rules from the
+      VPC default security group.
+
+      When a VPC is created, a default security group is created as well and this cannot
+      be deleted. The default security group is created with ingress/egress rules that allow
+      _all_ traffic. [AWS Security best practices recommend](https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-2)
+      removing these ingress/egress rules in order to restrict access to the default security group.
+    `,
+        introducedIn: { v2: "2.78.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: `
+      To allow all ingress/egress traffic to the VPC default security group you
+      can set the \`restrictDefaultSecurityGroup: false\`.
+    `
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Generate a unique id for each RequestValidator added to a method",
+        detailsMd: `
+      This flag allows multiple RequestValidators to be added to a RestApi when
+      providing the \`RequestValidatorOptions\` in the \`addMethod()\` method.
+
+      If the flag is not set then only a single RequestValidator can be added in this way.
+      Any additional RequestValidators have to be created directly with \`new RequestValidator\`.
+    `,
+        introducedIn: { v2: "2.78.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_ALIAS_NAME_REF]: {
+        type: 1 /* BugFix */,
+        summary: "KMS Alias name and keyArn will have implicit reference to KMS Key",
+        detailsMd: `
+      This flag allows an implicit dependency to be created between KMS Alias and KMS Key
+      when referencing key.aliasName or key.keyArn.
+
+      If the flag is not set then a raw string is passed as the Alias name and no
+      implicit dependencies will be set.
+    `,
+        introducedIn: { v2: "2.83.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL]: {
+        type: 1 /* BugFix */,
+        summary: "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition",
+        detailsMd: `
+      This flag enables the grant methods (grant, grantDecrypt, grantEncrypt, etc.) on Aliases imported
+      by name to grant permissions based on the 'kms:ResourceAliases' condition rather than no-op grants.
+      When disabled, grant calls on imported aliases will be dropped (no-op) to maintain compatibility.
+    `,
+        introducedIn: { v2: "2.202.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Remove calls to the grant* methods on the aliases referenced by name"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AUTOSCALING_GENERATE_LAUNCH_TEMPLATE]: {
+        type: 1 /* BugFix */,
+        summary: "Generate a launch template when creating an AutoScalingGroup",
+        detailsMd: `
+      Enable this flag to allow AutoScalingGroups to generate a launch template when being created.
+      Launch configurations have been deprecated and cannot be created in AWS Accounts created after
+      December 31, 2023. Existing 'AutoScalingGroup' properties used for creating a launch configuration
+      will now create an equivalent 'launchTemplate'. Alternatively, users can provide an explicit
+      'launchTemplate' or 'mixedInstancesPolicy'. When this flag is enabled a 'launchTemplate' will
+      attempt to set user data according to the OS of the machine image if explicit user data is not
+      provided.
+    `,
+        introducedIn: { v2: "2.88.0" },
+        compatibilityWithOldBehaviorMd: `
+      If backwards compatibility needs to be maintained due to an existing autoscaling group
+      using a launch config, set this flag to false.
+    `,
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION]: {
+        type: 1 /* BugFix */,
+        summary: "Include the stack prefix in the stack name generation process",
+        detailsMd: `
+      This flag prevents the prefix of a stack from making the stack's name longer than the 128 character limit.
+
+      If the flag is set, the prefix is included in the stack name generation process.
+      If the flag is not set, then the prefix of the stack is prepended to the generated stack name.
+
+      **NOTE** - Enabling this flag comes at a **risk**. If you have already deployed stacks, changing the status of this
+      feature flag can lead to a change in stacks' name. Changing a stack name mean recreating the whole stack, which
+      is not viable in some productive setups.
+    `,
+        introducedIn: { v2: "2.84.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_DENY_ANONYMOUS_ACCESS]: {
+        type: 0 /* ApiDefault */,
+        summary: "EFS denies anonymous clients accesses",
+        detailsMd: `
+      This flag adds the file system policy that denies anonymous clients
+      access to \`efs.FileSystem\`.
+
+      If this flag is not set, \`efs.FileSystem\` will allow all anonymous clients
+      that can access over the network.`,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `allowAnonymousAccess: true` so allow anonymous clients access."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables support for Multi-AZ with Standby deployment for opensearch domains",
+        detailsMd: `
+      If this is set, an opensearch domain will automatically be created with
+      multi-az with standby enabled.
+    `,
+        introducedIn: { v2: "2.88.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `capacity.multiAzWithStandbyEnabled: false` to `Domain` construct to restore the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_NODEJS_USE_LATEST_RUNTIME]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default",
+        detailsMd: `
+      If this is set, and a \`runtime\` prop is not passed to, Lambda NodeJs
+      functions will use the latest version of the runtime provided by the Lambda
+      service. Do not use this if you your lambda function is reliant on dependencies
+      shipped as part of the runtime environment.
+    `,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `runtime: lambda.Runtime.NODEJS_16_X` to `Function` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet.",
+        detailsMd: `
+      When this feature flag is enabled, each mount target will have a stable
+      logicalId that is linked to the associated subnet. If the flag is set to
+      false then the logicalIds of the mount targets can change if the number of
+      subnets changes.
+
+      Set this flag to false for existing mount targets.
+    `,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change.",
+        detailsMd: `
+      When this feature flag is enabled, a scope of \`InstanceParameterGroup\` for
+      \`AuroraClusterInstance\` with each parameters will change to AuroraClusterInstance
+      from AuroraCluster.
+
+      If the flag is set to false then it can only make one \`AuroraClusterInstance\`
+      with each \`InstanceParameterGroup\` in the AuroraCluster.
+    `,
+        introducedIn: { v2: "2.97.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id.",
+        detailsMd: `
+      When this feature flag is enabled, we use the IGraphqlApi ARN rather than ID when creating or updating CfnSourceApiAssociation in
+      the GraphqlApi construct. Using the ARN allows the association to support an association with a source api or merged api in another account.
+      Note that for existing source api associations created with this flag disabled, enabling the flag will lead to a resource replacement.
+    `,
+        introducedIn: { v2: "2.97.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials.",
+        detailsMd: `
+      The \`credentials\` property on the \`DatabaseClusterFromSnapshotProps\`
+      interface was deprecated with the new \`snapshotCredentials\` property being
+      recommended. Before deprecating \`credentials\`, a secret would be generated
+      while rendering credentials if the \`credentials\` property was undefined or
+      if a secret wasn't provided via the \`credentials\` property. This behavior
+      is replicated with the new \`snapshotCredentials\` property, but the original
+      \`credentials\` secret can still be created resulting in an extra database
+      secret.
+
+      Set this flag to prevent rendering deprecated \`credentials\` and creating an
+      extra database secret when only using \`snapshotCredentials\` to create an RDS
+      database cluster from a snapshot.
+    `,
+        introducedIn: { v2: "2.98.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the CodeCommit source action is using the default branch name 'main'.",
+        detailsMd: `
+      When setting up a CodeCommit source action for the source stage of a pipeline, please note that the
+      default branch is 'master'.
+      However, with the activation of this feature flag, the default branch is updated to 'main'.
+    `,
+        introducedIn: { v2: "2.103.1" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID.",
+        detailsMd: `
+      When this feature flag is enabled, a logical ID of \`LambdaPermission\` for a
+      \`LambdaAction\` will include an alarm ID. Therefore multiple alarms for the same Lambda
+      can be created with \`LambdaAction\`.
+
+      If the flag is set to false then it can only make one alarm for the Lambda with
+      \`LambdaAction\`.
+    `,
+        introducedIn: { v2: "2.124.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables Pipeline to set the default value for crossAccountKeys to false.",
+        detailsMd: `
+      When this feature flag is enabled, and the \`crossAccountKeys\` property is not provided in a \`Pipeline\`
+      construct, the construct automatically defaults the value of this property to false.
+    `,
+        introducedIn: { v2: "2.127.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `crossAccountKeys: true` to `Pipeline` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables Pipeline to set the default pipeline type to V2.",
+        detailsMd: `
+      When this feature flag is enabled, and the \`pipelineType\` property is not provided in a \`Pipeline\`
+      construct, the construct automatically defaults the value of this property to \`PipelineType.V2\`.
+    `,
+        introducedIn: { v2: "2.133.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `pipelineType: PipelineType.V1` to `Pipeline` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only.",
+        detailsMd: `
+      When this feature flag is enabled and calling KMS key grant method, the created IAM policy will reduce the resource scope from
+      '*' to this specific granting KMS key.
+    `,
+        introducedIn: { v2: "2.134.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove the root account principal from PipelineAssetsFileRole trust policy",
+        detailsMd: `
+      When this feature flag is enabled, the root account principal will not be added to the trust policy of asset role.
+      When this feature flag is disabled, it will keep the root account principal in the trust policy.
+    `,
+        introducedIn: { v2: "2.141.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_NODEGROUP_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix.",
+        detailsMd: `
+      When this feature flag is enabled, the nodegroupName attribute will be exactly the name of the nodegroup without
+      any prefix.
+    `,
+        introducedIn: { v2: "2.139.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_USE_NATIVE_OIDC_PROVIDER]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider).",
+        detailsMd: `
+      When this feature flag is enabled, EKS clusters will use the native AWS::IAM::OIDCProvider
+      CloudFormation resource instead of the custom resource provider for creating OIDC providers.
+
+			WARNING: Enabling this flag on a cluster with an existing OIDC provider created by the custom resource (iam.OpenIDConnectProvider)
+			will cause the OIDC provider to be replaced with the native resource, which may lead to disruption.
+
+			To migrate in place without disruption, follow the guide at: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/aws-eks/README.md#migrating-from-the-deprecated-eksopenidconnectprovider-to-eksoidcprovidernative
+    `,
+        introducedIn: { v2: "2.237.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use the custom resource provider."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EBS_DEFAULT_GP3]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the default volume type of the EBS volume will be GP3",
+        detailsMd: `
+      When this featuer flag is enabled, the default volume type of the EBS volume will be \`EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3\`.
+    `,
+        introducedIn: { v2: "2.140.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `volumeType: EbsDeviceVolumeType.GENERAL_PURPOSE_SSD` to `Volume` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, remove default deployment alarm settings",
+        detailsMd: `
+      When this feature flag is enabled, remove the default deployment alarm settings when creating a AWS ECS service.
+    `,
+        introducedIn: { v2: "2.143.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Set AWS::ECS::Service 'DeploymentAlarms' manually to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default",
+        detailsMd: `
+      This results in 'logApiResponseData' being passed as true to the custom resource provider. This will cause the custom resource handler to receive an 'Update' event. If you don't
+      have an SDK call configured for the 'Update' event and you're dependent on specific SDK call response data, you will see this error from CFN:
+
+      CustomResource attribute error: Vendor response doesn't contain  attribute in object. See https://github.com/aws/aws-cdk/issues/29949) for more details.
+
+      Unlike most feature flags, we don't recommend setting this feature flag to true. However, if you're using the 'AwsCustomResource' construct with 'logApiResponseData' as true in
+      the event object, then setting this feature flag will keep this behavior. Otherwise, setting this feature flag to false will trigger an 'Update' event by removing the 'logApiResponseData'
+      property from the event object.
+    `,
+        introducedIn: { v2: "2.145.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack.",
+        detailsMd: `
+      Currently, adding notifications to a bucket where it was created by ourselves will override notification added where it is imported.
+
+      When this feature flag is enabled, adding notifications to a bucket in the current stack will only update notification defined in this stack.
+      Other notifications that are not managed by this stack will be kept.
+    `,
+        introducedIn: { v2: "2.155.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
+        detailsMd: `
+    Currently, 'inputPath' and 'outputPath' from the TaskStateBase Props is being used under BedrockInvokeModelProps to define S3URI under 'input' and 'output' fields
+    of State Machine Task definition.
+
+    When this feature flag is enabled, specify newly introduced props 's3InputUri' and
+    's3OutputUri' to populate S3 uri under input and output fields in state machine task definition for Bedrock invoke model.
+
+    `,
+        introducedIn: { v2: "2.156.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use input and output path fields for s3 URI"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EXPLICIT_STACK_TAGS]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, stack tags need to be assigned explicitly on a Stack.",
+        detailsMd: `
+    Without this feature flag enabled, if tags are added to a Stack using
+    \`Tags.of(scope).add(...)\`, they will be added to both the stack and all resources
+    in the stack template.
+
+    That leads to the tags being applied twice: once in the template, and once
+    again automatically by CloudFormation, which will apply all stack tags to
+    all resources in the stack. This leads to loss of control, as the
+    \`excludeResourceTypes\` option of the Tags API will not have any effect.
+
+    With this flag enabled, tags added to a stack using \`Tags.of(...)\` are ignored,
+    and Stack tags must be configured explicitly on the Stack object.
+    `,
+        introducedIn: { v2: "2.205.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Configure stack-level tags using `new Stack(..., { tags: { ... } })`."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration",
+        detailsMd: `
+    Currently, we automatically add a number of cloudwatch permissions to the task role when no cloudwatch log group is
+    specified as logConfiguration and it will grant 'Resources': ['*'] to the task role.
+
+    When this feature flag is enabled, we will only grant the necessary permissions when users specify cloudwatch log group.
+    `,
+        introducedIn: { v2: "2.159.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to continue grant permissions to log group when no log group is specified"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`TableV2\` is to use a different \`resourcePolicy\` for each replica.
+
+      If this flag is set to false, the behavior is that each replica shares the same \`resourcePolicy\` as the source table.
+      This will prevent you from creating a new table which has an additional replica and a resource policy.
+
+      This is a feature flag as the old behavior was technically incorrect but users may have come to depend on it.`,
+        introducedIn: { v2: "2.164.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_SUM_TIMEOUT_ENABLED]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together.",
+        detailsMd: `
+      Currently is both initOptions.timeout and resourceSignalTimeout are both specified in the options for creating an EC2 Instance,
+      only the value from 'resourceSignalTimeout' will be used.
+
+      When this feature flag is enabled, if both initOptions.timeout and resourceSignalTimeout are specified, the values will to be summed together.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.160.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn.",
+        detailsMd: `
+        Currently, when using a Lambda authorizer with an AppSync GraphQL API, the AWS CDK automatically generates the necessary AWS::Lambda::Permission
+        to allow the AppSync API to invoke the Lambda authorizer. This permission is overly permissive because it lacks a SourceArn, meaning
+        it allows invocations from any source.
+
+        When this feature flag is enabled, the AWS::Lambda::Permission will be properly scoped with the SourceArn corresponding to the
+        specific AppSync GraphQL API.
+        `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.161.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`",
+        detailsMd: `
+      Currently, the value of the property 'instanceResourceId' in construct 'DatabaseInstanceReadReplica' is not correct, and set to 'DbInstanceArn' which is not correct when it is used to create the IAM Policy in the grantConnect method.
+
+      When this feature flag is enabled, the value of that property will be as expected set to 'DbiResourceId' attribute, and that will fix the grantConnect method.
+    `,
+        introducedIn: { v2: "2.161.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use `DbInstanceArn` as value for property `instanceResourceId`"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values.",
+        detailsMd: `
+    Without enabling this feature flag, \`cfn-include\` will silently drop resource update or create policies that contain CFN Intrinsics if they include non-primitive values.
+
+    Enabling this feature flag will make \`cfn-include\` throw on these templates, unless you specify the logical ID of the resource in the 'unhydratedResources' property.
+    `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.161.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications.",
+        detailsMd: `
+      Currently, when bundling Lambda functions with the non-latest runtime that supports AWS SDK JavaScript (v3), only the '@aws-sdk/*' packages are excluded by default.
+      However, this can cause version mismatches between the '@aws-sdk/*' and '@smithy/*' packages, as they are tightly coupled dependencies in AWS SDK v3.
+
+      When this feature flag is enabled, both '@aws-sdk/*' and '@smithy/*' packages will be excluded during the bundling process. This ensures that no mismatches
+      occur between these tightly coupled dependencies when using the AWS SDK v3 in Lambda functions.
+    `,
+        introducedIn: { v2: "2.161.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN.",
+        detailsMd: `
+      Currently, in the IAM Run Ecs policy generated by SFN EcsRunTask(), CDK will construct the ARN with wildcard attached at the end.
+      The revision number at the end will be replaced with a wildcard which it shouldn't.
+
+      When this feature flag is enabled, if the task definition is created in the stack, the 'Resource' section will 'Ref' the taskDefinition.
+    `,
+        introducedIn: { v2: "2.163.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2.",
+        detailsMd: `
+      Currently, if the machineImage property of the BastionHost construct defaults to using the latest Amazon Linux 2
+      AMI. Amazon Linux 2 hits end-of-life in June 2025, so using Amazon Linux 2023 by default is a more future-proof
+      and secure option.
+
+      When this feature flag is enabled, if you do not pass the machineImage property to the BastionHost construct,
+      the latest Amazon Linux 2023 version will be used instead of Amazon Linux 2.
+    `,
+        introducedIn: { v2: "2.172.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag or explicitly pass an Amazon Linux 2 machine image to the BastionHost construct."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ASPECT_STABILIZATION]: {
+        type: 2 /* VisibleContext */,
+        summary: "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
+        detailsMd: `
+      Previously, Aspects were invoked in a single pass of the construct tree.
+      This meant that Aspects which created other Aspects were not run, and Aspects that created new nodes in the tree sometimes did not inherit their parent Aspects.
+
+      When this feature flag is enabled, a stabilization loop is run to recurse the construct tree multiple times when invoking Aspects.
+    `,
+        unconfiguredBehavesLike: { v2: true },
+        introducedIn: { v2: "2.172.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource.",
+        detailsMd: `
+    When this feature flag is enabled, a new method will be used to get the DNS Name of the user pool domain target. The old method
+    creates a custom resource internally, but the new method doesn't need a custom resource.
+
+    If the flag is set to false then a custom resource will be created when using \`UserPoolDomainTarget\`.
+    `,
+        introducedIn: { v2: "2.174.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere",
+        detailsMd: `
+      For internet facing ALBs with 'dualstack-without-public-ipv4' IP address type, the default security group rules
+      will allow IPv6 ingress from anywhere (::/0). Previously, the default security group rules would only allow IPv4 ingress.
+
+      Using a feature flag to make sure existing customers who might be relying
+      on the overly restrictive permissions are not broken.`,
+        introducedIn: { v2: "2.176.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to only allow IPv4 ingress in the default security group rules."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the default behaviour of OIDC provider will reject unauthorized connections",
+        detailsMd: `
+      When this feature flag is enabled, the default behaviour of OIDC Provider's custom resource handler will
+      default to reject unauthorized connections when downloading CA Certificates.
+
+      When this feature flag is disabled, the behaviour will be the same as current and will allow downloading
+      thumbprints from unsecure connections.`,
+        introducedIn: { v2: "2.177.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to allow unsecure OIDC connection."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_ADDITIONAL_METADATA_COLLECTION]: {
+        type: 2 /* VisibleContext */,
+        summary: "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues.",
+        detailsMd: `
+    When this feature flag is enabled, CDK expands the scope of usage data collection to include the following:
+      * L2 construct property keys - Collect which property keys you use from the L2 constructs in your app. This includes property keys nested in dictionary objects.
+      * L2 construct property values of BOOL and ENUM types - Collect property key values of only BOOL and ENUM types. All other types, such as string values or construct references will be redacted.
+      * L2 construct method usage - Collection method name, parameter keys and parameter values of BOOL and ENUM type.
+    `,
+        introducedIn: { v2: "2.178.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY]: {
+        type: 1 /* BugFix */,
+        summary: "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement",
+        detailsMd: `
+      [Deprecated default feature] When this feature flag is enabled, Lambda will create new inline policies with AddToRolePolicy.
+      The purpose of this is to prevent lambda from creating a dependency on the Default Policy Statement.
+      This solves an issue where a circular dependency could occur if adding lambda to something like a Cognito Trigger, then adding the User Pool to the lambda execution role permissions.
+      However in the current implementation, we have removed a dependency of the lambda function on the policy. In addition to this, a Role will be attached to the Policy instead of an inline policy being attached to the role.
+      This will create a data race condition in the CloudFormation template because the creation of the Lambda function no longer waits for the policy to be created. Having said that, we are not deprecating the feature (we are defaulting the feature flag to false for new stacks) since this feature can still be used to get around the circular dependency issue (issue-7016) particularly in cases where the lambda resource creation doesnt need to depend on the policy resource creation.
+      We recommend to unset the feature flag if already set which will restore the original behavior.
+    `,
+        introducedIn: { v2: "2.180.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SET_UNIQUE_REPLICATION_ROLE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication.",
+        detailsMd: `
+      When performing cross-account S3 replication, we need to explicitly specify a role name for the replication execution role.
+      When this feature flag is enabled, a unique role name is specified only when performing cross-account replication.
+      When disabled, 'CDKReplicationRole' is always specified.
+    `,
+        introducedIn: { v2: "2.182.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove the root account principal from Stage addActions trust policy",
+        detailsMd: `
+      When this feature flag is enabled, the root account principal will not be added to the trust policy of stage role.
+      When this feature flag is disabled, it will keep the root account principal in the trust policy.
+
+      For cross-account cases, when this feature flag is enabled the trust policy will be scoped to the role only.
+      If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED.
+    `,
+        introducedIn: { v2: "2.184.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EVENTBUS_POLICY_SID_REQUIRED]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals.",
+        detailsMd: `
+      Currently, when granting permissions to service principals using grantPutEventsTo(), the operation silently fails
+      because service principals require resource policies with Statement IDs.
+
+      When this flag is enabled:
+      - Resource policies will be created with Statement IDs for service principals
+      - The operation will succeed as expected
+
+      When this flag is disabled:
+      - A warning will be emitted
+      - The grant operation will be dropped
+      - No permissions will be added
+
+      This fixes the issue where permissions were silently not being added for service principals.
+    `,
+        introducedIn: { v2: "2.186.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ASPECT_PRIORITIES_MUTATING]: {
+        type: 0 /* ApiDefault */,
+        summary: "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING.",
+        detailsMd: `
+      Custom Aspects you add have a priority of DEFAULT (500) if you don't
+      assign a more specific priority, which is higher than MUTATING (200). This
+      is relevant if a custom Aspect you add and an Aspect added by CDK try to
+      configure the same value.
+
+      If this flag is set to false (old behavior), Aspects added by CDK are also
+      added with a priority of DEFAULT; because their priorities are equal, the
+      Aspects that is closest to the target construct executes last (either
+      yours or the Aspect added by the CDK).
+
+      If this flag is set to true (recommended behavior), Aspects added by CDK are added
+      with a priority of MUTATING, and custom Aspects you add with DEFAULT
+      priority will always execute last and "win" the write. If you need Aspects
+      added by CDK to run after yours, your Aspect needs to have a priority of
+      MUTATING or lower.
+
+      This setting only applies to Aspects that were already being added for you
+      before version 2.172.0. Aspects introduced since that version will always
+      be added with a priority of MUTATING, independent of this feature flag.
+    `,
+        introducedIn: { v2: "2.189.1" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: `
+      To add mutating Aspects controlling construct values that can be overridden
+      by Aspects added by CDK, give them MUTATING priority:
+
+      \`\`\`
+      Aspects.of(stack).add(new MyCustomAspect(), {
+        priority: AspectPriority.MUTATING,
+      });
+      \`\`\`
+    `
+      },
+      [DYNAMODB_TABLE_RETAIN_TABLE_REPLICA]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, table replica will be default to the removal policy of source table unless specified otherwise.",
+        detailsMd: `
+      Currently, table replica will always be deleted when stack deletes regardless of source table's deletion policy.
+      When enabled, table replica will be default to the removal policy of source table unless specified otherwise.
+    `,
+        introducedIn: { v2: "2.187.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LOG_USER_POOL_CLIENT_SECRET_VALUE]: {
+        type: 0 /* ApiDefault */,
+        summary: "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs.",
+        detailsMd: `
+      When this feature flag is enabled, the SDK API call response to describe user pool client values will be logged in the custom
+      resource lambda function logs.
+
+      When this feature flag is disabled, the SDK API call response to describe user pool client values will not be logged in the custom
+      resource lambda function logs.
+    `,
+        introducedIn: { v2: "2.187.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: false,
+        compatibilityWithOldBehaviorMd: "Enable the feature flag to keep the old behavior and log the client secret values"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, scopes down the trust policy for the cross-account action role",
+        detailsMd: `
+        When this feature flag is enabled, the trust policy of the cross-account action role will be scoped to the pipeline role.
+        If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED.
+        When this feature flag is disabled, it will keep the root account principal in the trust policy.
+      `,
+        introducedIn: { v2: "2.189.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter",
+        detailsMd: `
+      When this feature flag is enabled, the resultWriterV2 property is used instead of resultWriter in DistributedMap class.
+      resultWriterV2 uses ResultWriterV2 class in StepFunctions ASL and can have either Bucket/Prefix or WriterConfig or both.
+    `,
+        introducedIn: { v2: "2.188.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag and set resultWriter in DistributedMap"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS]: {
+        type: 1 /* BugFix */,
+        summary: "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions.",
+        detailsMd: `
+      When this feature flag is enabled, a S3 trust policy will be added to the KMS key resource policy for encrypted SNS subscriptions.
+          `,
+        introducedIn: { v2: "2.195.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC.",
+        detailsMd: `
+      When this feature flag is enabled, EgressOnlyGateway resource will not be created when you create a vpc with only public subnets.
+          `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: true
+      },
+      /// ///////////////////////////////////////////////////////////////////
+      [USE_RESOURCEID_FOR_VPCV2_MIGRATION]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, use resource IDs for VPC V2 migration",
+        detailsMd: `
+        When this feature flag is enabled, the VPC V2 migration will use resource IDs instead of getAtt references
+        for migrating resources from VPC V1 to VPC V2. This helps ensure a smoother migration path between
+        the two versions.
+      `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: false,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use getAtt references for VPC V2 migration"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined.",
+        detailsMd: `
+      When BlockPublicAccess is not set at all, s3's default behavior will be to set all options to true in aws console.
+      The previous behavior in cdk before this feature was; if only some of the BlockPublicAccessOptions were set (not all 4), then the ones undefined would default to false.
+      This is counter intuitive to the console behavior where the options would start in true state and a user would uncheck the boxes as needed.
+      The new behavior from this feature will allow a user, for example, to set 1 of the 4 BlockPublicAccessOpsions to false, and on deployment the other 3 will remain true.
+    `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_CDK_MANAGED_LAMBDA_LOGGROUP]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, CDK creates and manages loggroup for the lambda function",
+        detailsMd: `
+        When this feature flag is enabled, CDK will create a loggroup for lambda function with default properties
+        which supports CDK features Tag propagation, Property Injectors, Aspects
+        if the cdk app doesnt pass a 'logRetention' or 'logGroup' explicitly.
+        LogGroups created via 'logRetention' do not support Tag propagation, Property Injectors, Aspects.
+        LogGroups created via 'logGroup' created in CDK support Tag propagation, Property Injectors, Aspects.
+
+        When this feature flag is disabled, a loggroup is created by Lambda service on first invocation
+        of the function (existing behavior).
+        LogGroups created in this way do not support Tag propagation, Property Injectors, Aspects.
+
+        DO NOT ENABLE: If you have an existing app defining a lambda function and
+        have not supplied a logGroup or logRetention prop and your lambda function has
+        executed at least once, the logGroup has been already created with the same name
+        so your deployment will start failing.
+        Refer aws-lambda/README.md for more details on Customizing Log Group creation.
+      `,
+        introducedIn: { v2: "2.200.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to let lambda service create logGroup or specify logGroup or logRetention"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, Network Load Balancer will be created with a security group by default.",
+        detailsMd: `
+      When this feature flag is enabled, Network Load Balancer will be created with a security group by default.
+    `,
+        introducedIn: { v2: "2.222.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to create Network Load Balancer without a security group by default."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
+        detailsMd: `
+      When this feature flag is enabled, the JSONPath apiEndpoint value will be resolved dynamically at runtime, while slightly increasing the size of the state machine definition.
+      When disabled, the JSONPath apiEndpoint property will only support a static string value.
+    `,
+        introducedIn: { v2: "2.221.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement",
+        detailsMd: `
+      When this feature flag is enabled, ECS patterns will generate unique target group IDs that include
+      both the load balancer type (public/private) and load balancer name. This prevents CloudFormation
+      conflicts when switching between public and private load balancers or when changing load balancer names.
+
+      Without this flag, target groups use generic IDs like 'ECS' which can cause conflicts when the
+      underlying load balancer is replaced due to changes in internetFacing or loadBalancerName properties.
+
+      This is a breaking change as it will cause target group replacement when the flag is enabled.
+    `,
+        introducedIn: { v2: "2.221.0" },
+        recommendedValue: true
+      },
+      [ROUTE53_PATTERNS_USE_DISTRIBUTION]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use the `Distribution` resource instead of `CloudFrontWebDistribution`",
+        detailsMd: `
+      Enable this feature flag to use the new \`Distribution\` resource instead
+      of the deprecated \`CloudFrontWebDistribution\` construct.
+      `,
+        introducedIn: { v2: "2.233.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Define a `CloudFrontWebDistribution` explicitly"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions",
+        detailsMd: `
+      When enabled, CloudFront Functions will use cloudfront-js-2.0 runtime by default instead of cloudfront-js-1.0.
+      The runtime can still be configured explicitly using the \`runtime\` property.
+
+      If \`keyValueStore\` is specified, the runtime will always be cloudfront-js-2.0 regardless of this flag.`,
+        introducedIn: { v2: "2.245.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Set `runtime: FunctionRuntime.JS_1_0` explicitly to use the v1.0 runtime."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ELB_USE_POST_QUANTUM_TLS_POLICY]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default",
+        detailsMd: `
+      When this feature flag is enabled, HTTPS and TLS listeners that do not have an explicit
+      \`sslPolicy\` will use the post-quantum cryptography policy
+      \`ELBSecurityPolicy-TLS13-1-2-PQ-2025-09\` by default.
+
+      This policy uses the non-restricted variant (without -Res-) to maintain AES-CBC cipher support
+      for TLS 1.2 clients, ensuring nearly 100% backward compatibility with the previous CDK default.
+      Post-quantum policies provide protection against "Harvest Now, Decrypt Later" attacks using
+      hybrid ML-KEM key exchange.
+
+      When disabled (default), no explicit SSL policy is set, preserving the existing CDK behavior
+      where \`RECOMMENDED_TLS\` (\`ELBSecurityPolicy-TLS13-1-2-2021-06\`) is used.
+    `,
+        introducedIn: { v2: "2.245.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable this feature flag to preserve existing behavior where no explicit SSL policy is set."
+      },
+      [AUTOMATIC_L1_TRAITS]: {
+        type: 0 /* ApiDefault */,
+        summary: "Automatically use the default L1 traits for L1 constructs`",
+        detailsMd: `
+      When enabled, the construct library will apply default L1 traits for types that
+      have no traits defined yet. Traits regulate behaviors such as how to create
+      resource policies, or how to find an encryption key for a given L1 construct.
+      `,
+        introducedIn: { v2: "2.239.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: true },
+        compatibilityWithOldBehaviorMd: "Register traits explicitly for each resource type"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [BATCH_DEFAULT_AL2023]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2",
+        detailsMd: `
+      When enabled, EC2 Batch compute environments (both ECS and EKS) that do not specify an \`imageType\`
+      will default to \`ECS_AL2023\` or \`EKS_AL2023\` instead of the deprecated \`ECS_AL2\` or \`EKS_AL2\`
+      (Amazon Linux 2, reaching EOL June 2026 for ECS; already EOL for EKS).
+
+      For EKS compute environments with a launch template, \`userdataType\` will automatically be set
+      to \`EKS_NODEADM\` when an AL2023 image type is used, as required by the AWS Batch API.
+
+      When disabled, the default \`imageType\` remains \`ECS_AL2\` / \`EKS_AL2\` for backward compatibility.`,
+        introducedIn: { v2: "2.249.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: `Explicitly set \`imageType\` to \`ECS_AL2\` or \`EKS_AL2\` in your compute environment images configuration.
+
+**Warning**: Enabling this flag on existing stacks may cause compute environment replacement, which terminates running jobs. To migrate safely, first pin existing environments to their current imageType explicitly, then enable the flag.`
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_DEFAULT_AL2023]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2",
+        detailsMd: `
+      When enabled, EKS managed node groups that do not specify an \`amiType\` will default to
+      AL2023 AMI types (AL2023_x86_64_STANDARD, AL2023_ARM_64_STANDARD) instead of the deprecated
+      AL2 types (AL2_x86_64, AL2_ARM_64).
+
+      This only affects non-GPU instance types. GPU instances continue to default to AL2_x86_64_GPU
+      because AL2023 splits GPU support into separate NVIDIA and Neuron AMI variants.
+
+      Amazon Linux 2 reached end of support on November 26, 2025. AL2023 is the AWS-recommended default.
+
+      When disabled, the default AMI types remain AL2 for backward compatibility.`,
+        introducedIn: { v2: "2.259.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: `Explicitly set \`amiType\` to the desired AL2 type (e.g., \`NodegroupAmiType.AL2_X86_64\`) in your nodegroup configuration.
+
+**Warning**: Enabling this flag on existing stacks will cause node group replacement, which terminates running pods. To migrate safely, first pin existing node groups to their current amiType explicitly, then enable the flag for new node groups.`
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ANNOTATIONS_IN_VALIDATION_REPORT]: {
+        type: 2 /* VisibleContext */,
+        summary: "Include construct annotations (warnings and errors) in the policy validation report",
+        detailsMd: `
+      When enabled, construct annotations added via \`Annotations.of()\` or \`Validations.of()\`
+      are collected post-synthesis and included in the policy validation report alongside
+      plugin violations. Annotations appear under a "Construct Annotations" source entry.
+
+      When disabled, annotations are only displayed through the CLI's standard metadata
+      output (e.g. \`[Warning at /path] message\`) and do not appear in the validation report.
+
+      Note: enabling this flag may cause annotations to appear twice \u2014 once in the CLI's
+      standard output and once in the validation report \u2014 until the CLI is updated to
+      consolidate both displays.`,
+        introducedIn: { v2: "2.253.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DEFAULT_CROSS_STACK_REFERENCES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Controls whether cross-stack references are strong, weak, or both",
+        detailsMd: `
+      Controls the default type of cross-stack references. Accepted values are
+      \`"strong"\`, \`"weak"\`, and \`"both"\`.
+
+      The flag is read from the **consumer** stack's context, not the producer's.
+
+      - \`"strong"\` (default): Uses ExportWriter/ExportReader custom resources that
+        write values to SSM Parameters in the consuming region. This prevents the
+        producing stack from being deleted while consumers exist.
+      - \`"weak"\`: Uses Fn::GetStackOutput to read an output directly from the
+        producing stack. Simpler (no extra infrastructure), but the producing stack
+        can be deleted independently of consumers.
+      - \`"both"\`: A transitional state for migrating from strong to weak. The producer
+        keeps the ExportWriter (continues writing to SSM) and also adds an Output. The
+        consumer switches to Fn::GetStackOutput. This allows removing the ExportReader
+        without breaking anything.
+
+      **Migration from strong to weak**: set to \`"both"\` and deploy, then set to
+      \`"weak"\` and deploy again.
+
+      **Migration from weak to strong**: set directly to \`"strong"\` (single deployment).`,
+        introducedIn: { v2: "2.254.0" },
+        recommendedValue: "weak",
+        unconfiguredBehavesLike: { v2: "strong" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [VALIDATE_AGAINST_DEFAULT_RULES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Treat CloudFormation Validate findings as errors",
+        detailsMd: `
+      The CDK always validates synthesized templates against a default set of CloudFormation
+      rules during synthesis. These rules include schema validation, best-practice linting,
+      and common misconfiguration detection.
+
+      When this flag is explicitly set to \`true\`, violations are treated as errors and will
+      fail synthesis. When unconfigured, violations are reported as warnings only.`,
+        introducedIn: { v2: "2.262.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_EMPTY_LOAD_BALANCERS]: {
+        type: 1 /* BugFix */,
+        summary: "Render an empty `LoadBalancers` array on an ECS service that has no target groups",
+        detailsMd: `
+      CloudFormation distinguishes between an absent \`LoadBalancers\` property, which leaves the live
+      service configuration untouched, and an empty array, which removes the existing load balancer
+      registrations. Without this flag the CDK omits the property when a service has no target groups,
+      so removing the last target group from a service never reaches the deployed service: it keeps
+      serving traffic from the target groups it was registered in, and a later deployment can fail with
+      \`The target group with targetGroupArn ... does not have an associated load balancer\`.
+
+      When this flag is enabled, a service with no target groups renders \`LoadBalancers: []\` and
+      CloudFormation removes the registrations.
+
+      Enabling this adds \`LoadBalancers: []\` to every ECS service that has no target groups, including
+      services that never had any. Amazon ECS starts a new deployment when a load balancer configuration
+      is added, updated or removed, so expect a one-time deployment of those services.`,
+        introducedIn: { v2: "2.269.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Set this flag to `false` to keep omitting the property, and remove the registrations with `aws ecs update-service --load-balancers '[]'` instead."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS]: {
+        type: 0 /* ApiDefault */,
+        summary: "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS",
+        detailsMd: `
+      When enabled, cache behaviors on a \`Distribution\` that do not specify an explicit
+      \`viewerProtocolPolicy\` default to \`ViewerProtocolPolicy.REDIRECT_TO_HTTPS\` instead of
+      \`ViewerProtocolPolicy.ALLOW_ALL\`, so viewers are redirected from HTTP to HTTPS rather
+      than being served over plaintext HTTP.
+
+      This applies to the default behavior, to \`additionalBehaviors\`, and to behaviors added
+      later with \`addBehavior()\`. An explicitly specified \`viewerProtocolPolicy\` always wins,
+      regardless of this flag.
+
+      Note that \`REDIRECT_TO_HTTPS\` answers an HTTP request with an HTTP 301 redirect, which the
+      viewer then follows with a second request. That additional request is billable.`,
+        introducedIn: { v2: "2.273.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Set `viewerProtocolPolicy: ViewerProtocolPolicy.ALLOW_ALL` explicitly on each behavior to keep the old default."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD]: {
+        type: 1 /* BugFix */,
+        summary: "Render the API Gateway access log destination ARN without the trailing `:*`",
+        detailsMd: `
+      API Gateway stores the access log destination ARN without the trailing \`:*\` that
+      \`LogGroup.logGroupArn\` carries. When the CDK renders the log group \`Arn\` attribute,
+      CloudFormation drift detection reports the stage as \`MODIFIED\` on every run, even
+      though the access logging configuration has not changed.
+
+      When this flag is enabled, \`LogGroupLogDestination\` rebuilds the ARN from the log
+      group name, so the synthesized template matches the value stored by the service and
+      drift detection reports the stage as \`IN_SYNC\`.
+
+      When disabled, the destination ARN keeps using the log group \`Arn\` attribute.
+    `,
+        introducedIn: { v2: "V2NEXT" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Disable this flag to keep using the log group `Arn` attribute as the destination ARN."
+      }
+    };
+    CURRENT_MV = "v2";
+    CURRENT_VERSION_EXPIRED_FLAGS = Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] === void 0).map(([name, _]) => name).sort();
+    CURRENTLY_RECOMMENDED_FLAGS = Object.fromEntries(
+      Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] !== void 0).filter(([_, flag]) => flag.recommendedValue !== flag.unconfiguredBehavesLike?.[CURRENT_MV]).map(([name, flag]) => [name, flag.recommendedValue])
+    );
+    CURRENT_VERSION_FLAG_DEFAULTS = Object.fromEntries(Object.entries(FLAGS).filter(([_, flag]) => flag.unconfiguredBehavesLike?.[CURRENT_MV] !== void 0).map(([name, flag]) => [name, flag.unconfiguredBehavesLike?.[CURRENT_MV]]));
+    FUTURE_FLAGS = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v === "boolean"));
+    NEW_PROJECT_DEFAULT_CONTEXT = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v !== "boolean"));
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/app.ts
+var PATH_METADATA_ENABLE_CONTEXT, ANALYTICS_REPORTING_ENABLED_CONTEXT, PERFORMANCE_REPORTING_ENABLED_CONTEXT, DISABLE_ASSET_STAGING_CONTEXT, DISABLE_METADATA_STACK_TRACE, DISABLE_LOGICAL_ID_METADATA, DISABLE_CREATION_STACK_TRACES, BUNDLING_STACKS;
+var init_app = __esm({
+  "../../aws-cdk-lib/cx-api/lib/app.ts"() {
+    "use strict";
+    PATH_METADATA_ENABLE_CONTEXT = "aws:cdk:enable-path-metadata";
+    ANALYTICS_REPORTING_ENABLED_CONTEXT = "aws:cdk:version-reporting";
+    PERFORMANCE_REPORTING_ENABLED_CONTEXT = "aws:cdk:performance-reporting";
+    DISABLE_ASSET_STAGING_CONTEXT = "aws:cdk:disable-asset-staging";
+    DISABLE_METADATA_STACK_TRACE = "aws:cdk:disable-stack-trace";
+    DISABLE_LOGICAL_ID_METADATA = "aws:cdk:disable-logicalId-metadata";
+    DISABLE_CREATION_STACK_TRACES = "aws:cdk:disable-creation-stack-traces";
+    BUNDLING_STACKS = "aws:cdk:bundling-stacks";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/index.ts
+var init_lib = __esm({
+  "../../aws-cdk-lib/cx-api/lib/index.ts"() {
+    "use strict";
+    init_legacy_moved();
+    init_cxapi();
+    init_features();
+    init_app();
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/index.ts
+var init_cx_api = __esm({
+  "../../aws-cdk-lib/cx-api/index.ts"() {
+    "use strict";
+    init_lib();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/errors.ts
+function renderConstructRootPath(construct) {
+  const rootPath = [];
+  let cur = construct;
+  while (cur !== void 0) {
+    rootPath.push(cur);
+    cur = cur.node.scope;
+  }
+  rootPath.reverse();
+  const ret = new Array();
+  for (let i = 0; i < rootPath.length; i++) {
+    const constructId = rootPath[i].node.id || "<.>";
+    let suffix = "";
+    try {
+      const constructInfo = constructInfoFromConstruct(rootPath[i]);
+      suffix = ` (${constructInfo?.fqn})`;
+    } catch (_) {
+    }
+    const branch = " \u2514\u2500 ";
+    const indent = i > 0 ? " ".repeat(branch.length * (i - 1)) + branch : "";
+    ret.push(`    ${indent}${constructId}${suffix}`);
+  }
+  return ret.join("\n");
+}
+function maybeWriteErrorCode(errorCode) {
+  const file = process.env[ERRORFILE_ENV];
+  if (!file) {
+    return;
+  }
+  fs.writeFileSync(file, errorCode, "utf-8");
+}
+var fs, CONSTRUCT_ERROR_SYMBOL, VALIDATION_ERROR_SYMBOL, ASSUMPTION_ERROR_SYMBOL, EXECUTION_ERROR_SYMBOL, ConstructError, ValidationError, UnscopedValidationError, AssumptionError, ExecutionError;
+var init_errors = __esm({
+  "../../aws-cdk-lib/core/lib/errors.ts"() {
+    "use strict";
+    fs = __toESM(require("fs"));
+    init_runtime_info();
+    init_stack_trace();
+    init_cx_api();
+    CONSTRUCT_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError");
+    VALIDATION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ValidationError");
+    ASSUMPTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.AssumptionError");
+    EXECUTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ExecutionError");
+    ConstructError = class _ConstructError extends Error {
+      #time;
+      #constructPath;
+      #constructInfo;
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return this.#time;
+      }
+      /**
+       * The level. Always `'error'`.
+       */
+      get level() {
+        return "error";
+      }
+      /**
+       * The path of the construct this error is thrown from, if available.
+       */
+      get constructPath() {
+        return this.#constructPath;
+      }
+      /**
+       * Information on the construct this error is thrown from, if available.
+       */
+      get constructInfo() {
+        return this.#constructInfo;
+      }
+      constructor(msg, scope, name) {
+        super(msg);
+        const ctr = this.constructor;
+        Object.setPrototypeOf(this, _ConstructError.prototype);
+        Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL, { value: true });
+        this.name = name ?? ctr.name;
+        this.#time = (/* @__PURE__ */ new Date()).toISOString();
+        this.#constructPath = scope?.node.path;
+        if (scope) {
+          try {
+            this.#constructInfo = constructInfoFromConstruct(scope);
+          } catch (_) {
+          }
+        }
+        this.stack = `\xAB${this.name}\xBB ${msg}
+${enhancedStackTrace(ctr).join("\n")}`;
+        if (scope) {
+          this.stack += `
+Relates to construct:
+${renderConstructRootPath(scope)}`;
+        }
+        maybeWriteErrorCode(this.name);
+      }
+    };
+    ValidationError = class _ValidationError extends ConstructError {
+      get type() {
+        return "validation";
+      }
+      constructor(name, msg, scope) {
+        super(msg, scope, name);
+        Object.setPrototypeOf(this, _ValidationError.prototype);
+        Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    UnscopedValidationError = class _UnscopedValidationError extends ConstructError {
+      get type() {
+        return "validation";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _UnscopedValidationError.prototype);
+        Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    AssumptionError = class _AssumptionError extends ConstructError {
+      get type() {
+        return "assumption";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _AssumptionError.prototype);
+        Object.defineProperty(this, ASSUMPTION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    ExecutionError = class _ExecutionError extends ConstructError {
+      get type() {
+        return "exec";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _ExecutionError.prototype);
+        Object.defineProperty(this, EXECUTION_ERROR_SYMBOL, { value: true });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/aspect.ts
+function bumpAspectTreeRevision(construct) {
+  const root = construct.node.root;
+  const rev = root[TREE_REVISION_SYM] ?? 0;
+  root[TREE_REVISION_SYM] = rev + 1;
+}
+function _aspectTreeRevisionReader(construct) {
+  const root = construct.node.root;
+  return () => root[TREE_REVISION_SYM] ?? 0;
+}
+var ASPECTS_SYMBOL, AspectPriority, Aspects, AspectApplication, TREE_REVISION_SYM;
+var init_aspect = __esm({
+  "../../aws-cdk-lib/core/lib/aspect.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ASPECTS_SYMBOL = /* @__PURE__ */ Symbol.for("cdk-aspects");
+    AspectPriority = class {
+      /**
+       * Suggested priority for Aspects that mutate the construct tree.
+       */
+      static MUTATING = 200;
+      /**
+       * Suggested priority for Aspects that only read the construct tree.
+       */
+      static READONLY = 1e3;
+      /**
+       * Default priority for Aspects that are applied without a priority.
+       */
+      static DEFAULT = 500;
+    };
+    Aspects = class _Aspects {
+      /**
+       * Returns the `Aspects` object associated with a construct scope.
+       * @param scope The scope for which these aspects will apply.
+       */
+      static of(scope) {
+        let aspects = scope[ASPECTS_SYMBOL];
+        if (!aspects) {
+          aspects = new _Aspects(scope);
+          Object.defineProperty(scope, ASPECTS_SYMBOL, {
+            value: aspects,
+            configurable: false,
+            enumerable: false
+          });
+        }
+        return aspects;
+      }
+      _scope;
+      _appliedAspects;
+      constructor(scope) {
+        this._appliedAspects = [];
+        this._scope = scope;
+      }
+      /**
+       * Adds an aspect to apply this scope before synthesis.
+       * @param aspect The aspect to add.
+       * @param options Options to apply on this aspect.
+       */
+      add(aspect, options) {
+        const newApplication = new AspectApplication(this._scope, aspect, options?.priority ?? AspectPriority.DEFAULT);
+        if (this._appliedAspects.some((a) => a.aspect === newApplication.aspect && a.priority === newApplication.priority)) {
+          return;
+        }
+        this._appliedAspects.push(newApplication);
+        bumpAspectTreeRevision(this._scope);
+      }
+      /**
+       * The list of aspects which were directly applied on this scope.
+       */
+      get all() {
+        return this._appliedAspects.map((application) => application.aspect);
+      }
+      /**
+       * The list of aspects with priority which were directly applied on this scope.
+       *
+       * Also returns inherited Aspects of this node.
+       */
+      get applied() {
+        return [...this._appliedAspects];
+      }
+    };
+    AspectApplication = class {
+      /**
+       * The construct that the Aspect was applied to.
+       */
+      construct;
+      /**
+       * The Aspect that was applied.
+       */
+      aspect;
+      /**
+       * The priority value of this Aspect. Must be non-negative integer.
+       */
+      _priority;
+      /**
+       * Initializes AspectApplication object
+       */
+      constructor(construct, aspect, priority) {
+        this.construct = construct;
+        this.aspect = aspect;
+        this._priority = priority;
+      }
+      /**
+       * Gets the priority value.
+       */
+      get priority() {
+        return this._priority;
+      }
+      /**
+       * Sets the priority value.
+       */
+      set priority(priority) {
+        if (priority < 0) {
+          throw new ValidationError(lit`PriorityNonNegativeNumber`, "Priority must be a non-negative number", this.construct);
+        }
+        this._priority = priority;
+        bumpAspectTreeRevision(this.construct);
+      }
+    };
+    TREE_REVISION_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Aspects.treeRevision");
+  }
+});
+
+// ../../aws-cdk-lib/cloud-assembly-schema/index.ts
+var cloud_assembly_schema_exports = {};
+var init_cloud_assembly_schema = __esm({
+  "../../aws-cdk-lib/cloud-assembly-schema/index.ts"() {
+    "use strict";
+    __reExport(cloud_assembly_schema_exports, __toESM(require_lib2()));
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/core-construct-finders.ts
+function stackOf(construct) {
+  const cache = construct[MY_STACK_CACHE];
+  if (cache) {
+    return cache;
+  } else {
+    const value = _lookup(construct);
+    Object.defineProperty(construct, MY_STACK_CACHE, {
+      enumerable: false,
+      writable: false,
+      configurable: false,
+      value
+    });
+    return value;
+  }
+  function _lookup(c) {
+    if (STACK_TYPE.isMarked(c)) {
+      return c;
+    }
+    const _scope = c.node.scope;
+    if (STAGE_TYPE.isMarked(c) || !_scope) {
+      throw new ValidationError(lit`ShouldBeCreatedInStackScope`, `${construct.constructor?.name ?? "Construct"} at '${construct.node.path}' should be created in the scope of a Stack, but no Stack found`, c);
+    }
+    return _lookup(_scope);
+  }
+}
+function stageOf(construct) {
+  return construct.node.scopes.reverse().slice(1).find(STAGE_TYPE.isMarked.bind(STAGE_TYPE));
+}
+function appOf(construct) {
+  const root = construct.node.root;
+  return APP_TYPE.isMarked(root) ? root : void 0;
+}
+function isCfnResource(x) {
+  return x !== null && typeof x === "object" && x.cfnResourceType !== void 0;
+}
+var ConstructType, APP_TYPE, STACK_TYPE, STAGE_TYPE, NESTED_STACK_TYPE, MY_STACK_CACHE;
+var init_core_construct_finders = __esm({
+  "../../aws-cdk-lib/core/lib/private/core-construct-finders.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ConstructType = class {
+      constructor(sym) {
+        this.sym = sym;
+      }
+      sym;
+      mark(x) {
+        Object.defineProperty(x, this.sym, { value: true });
+      }
+      isMarked(x) {
+        return x !== null && typeof x === "object" && this.sym in x;
+      }
+    };
+    APP_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.App"));
+    STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack"));
+    STAGE_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stage"));
+    NESTED_STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.NestedStack"));
+    MY_STACK_CACHE = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack.myStack");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/annotations.ts
+function removeWarningDeep(construct, id) {
+  const stack = [construct];
+  while (stack.length > 0) {
+    const next = stack.pop();
+    removeWarning(next, id);
+    stack.push(...next.node.children);
+  }
+}
+function removeWarning(construct, id) {
+  const meta = construct.node._metadata;
+  if (!meta) {
+    return;
+  }
+  let i = 0;
+  while (i < meta.length) {
+    const m = meta[i];
+    if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && m.data.includes(ackTag(id))) {
+      meta.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+}
+function removeInfoDeep(construct, id) {
+  const stack = [construct];
+  while (stack.length > 0) {
+    const next = stack.pop();
+    removeInfo(next, id);
+    stack.push(...next.node.children);
+  }
+}
+function removeInfo(construct, id) {
+  const meta = construct.node._metadata;
+  if (!meta) {
+    return;
+  }
+  let i = 0;
+  while (i < meta.length) {
+    const m = meta[i];
+    if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO && m.data.includes(ackTag(id))) {
+      meta.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+}
+function ackTag(id) {
+  return `[ack: ${id}]`;
+}
+var Annotations, Acknowledgements;
+var init_annotations = __esm({
+  "../../aws-cdk-lib/core/lib/annotations.ts"() {
+    "use strict";
+    init_errors();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_core_construct_finders();
+    init_literal_string();
+    Annotations = class _Annotations {
+      constructor(scope) {
+        this.scope = scope;
+        const disableTrace = scope.node.tryGetContext(DISABLE_METADATA_STACK_TRACE) || process.env.CDK_DISABLE_STACK_TRACE;
+        this.stackTraces = !disableTrace;
+      }
+      scope;
+      /**
+       * Returns the annotations API for a construct scope.
+       * @param scope The scope
+       */
+      static of(scope) {
+        return new _Annotations(scope);
+      }
+      stackTraces;
+      /**
+       * Acknowledge a warning. When a warning is acknowledged for a scope
+       * all warnings that match the id will be ignored.
+       *
+       * The acknowledgement will apply to all child scopes
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).acknowledgeWarning('SomeWarningId', 'This warning can be ignored because...');
+       *
+       * @param id - the id of the warning message to acknowledge
+       * @param message optional message to explain the reason for acknowledgement
+       */
+      acknowledgeWarning(id, message) {
+        Acknowledgements.of(this.scope).add(this.scope, id);
+        void message;
+        removeWarningDeep(this.scope, id);
+      }
+      /**
+       * Adds an acknowledgeable warning metadata entry to this construct.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * If the warning is acknowledged using `acknowledgeWarning()`, it will not be shown by
+       * the CLI, and will not cause `--strict` mode to fail synthesis.
+       *
+       * Prefer using `Validations.of(scope).addWarning()` instead.
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).addWarningV2('my-library:Construct.someWarning', 'Some message explaining the warning');
+       *
+       * @param id the unique identifier for the warning. This can be used to acknowledge the warning
+       * @param message The warning message.
+       */
+      addWarningV2(id, message) {
+        if (!Acknowledgements.of(this.scope).has(this.scope, id)) {
+          this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, `${message} ${ackTag(id)}`);
+        }
+      }
+      /**
+       * Adds a warning metadata entry to this construct. Prefer using `Validations.of(scope).addWarning()`.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * Warnings added by this call cannot be acknowledged. This will block users from
+       * running in `--strict` mode until the deal with the warning, which makes it
+       * effectively not very different from `addError`. Prefer using `addWarningV2` instead.
+       *
+       * @param message The warning message.
+       */
+      addWarning(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, message);
+      }
+      /**
+       * Acknowledge a info. When a info is acknowledged for a scope
+       * all infos that match the id will be ignored.
+       *
+       * The acknowledgement will apply to all child scopes
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).acknowledgeInfo('SomeInfoId', 'This info can be ignored because...');
+       *
+       * @param id - the id of the info message to acknowledge
+       * @param message optional message to explain the reason for acknowledgement
+       */
+      acknowledgeInfo(id, message) {
+        Acknowledgements.of(this.scope).add(this.scope, id);
+        void message;
+        removeInfoDeep(this.scope, id);
+      }
+      /**
+       * Adds an acknowledgeable info metadata entry to this construct.
+       *
+       * The CLI will display the info when an app is synthesized.
+       *
+       * If the info is acknowledged using `acknowledgeInfo()`, it will not be shown by the CLI.
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).addInfoV2('my-library:Construct.someInfo', 'Some message explaining the info');
+       *
+       * @param id the unique identifier for the info. This can be used to acknowledge the info
+       * @param message The info message.
+       */
+      addInfoV2(id, message) {
+        if (!Acknowledgements.of(this.scope).has(this.scope, id)) {
+          this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, `${message} ${ackTag(id)}`);
+        }
+      }
+      /**
+       * Adds an info metadata entry to this construct.
+       *
+       * The CLI will display the info message when apps are synthesized.
+       *
+       * @param message The info message.
+       */
+      addInfo(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, message);
+      }
+      /**
+       * Adds an { "error":  } metadata entry to this construct.
+       * The toolkit will fail deployment of any stack that has errors reported against it.
+       * Prefer using `Validations.of(scope).addError()` instead.
+       * @param message The error message.
+       */
+      addError(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR, message);
+      }
+      /**
+       * Add an error annotation to this construct, along with a tracking ID
+       *
+       * The toolkit will fail deployment of any stack that has errors reported against it.
+       *
+       * The error code will be tracked by telemetry; this method should only be used
+       * by CDK source code.
+       *
+       * @param id The error ID.
+       * @param message The error message.
+       * @internal
+       */
+      _addTrackableError(id, message) {
+        this.addError(message);
+        const type = "aws:cdk:error-code";
+        const isNew = !this.scope.node.metadata.find((x) => x.type === type && x.data === id);
+        if (isNew) {
+          this.scope.node.addMetadata(type, id);
+        }
+      }
+      /**
+       * Adds a deprecation warning for a specific API.
+       *
+       * Deprecations will be added only once per construct as a warning and will be
+       * deduplicated based on the `api`.
+       *
+       * If the environment variable `CDK_BLOCK_DEPRECATIONS` is set, this method
+       * will throw an error instead with the deprecation message.
+       *
+       * @param api The API being deprecated in the format `module.Class.property`
+       * (e.g. `@aws-cdk/core.Construct.node`).
+       * @param message The deprecation message to display, with information about
+       * alternatives.
+       */
+      addDeprecation(api, message) {
+        const text = `The API ${api} is deprecated: ${message}. This API will be removed in the next major release`;
+        if (process.env.CDK_BLOCK_DEPRECATIONS) {
+          throw new UnscopedValidationError(lit`ValidationError`, `${this.scope.node.path}: ${text}`);
+        }
+        this.addWarningV2(`Deprecated:${api}`, text);
+      }
+      /**
+       * Adds a message metadata entry to the construct node, to be displayed by the CDK CLI.
+       *
+       * Records the message once per construct.
+       * @param level The message level
+       * @param message The message itself
+       */
+      addMessage(level, message) {
+        const isNew = !this.scope.node.metadata.find((x) => x.data === message);
+        if (isNew) {
+          let normalizedMessage = typeof message === "string" ? message : JSON.stringify(message);
+          this.scope.node.addMetadata(level, normalizedMessage, { stackTrace: this.stackTraces });
+        }
+      }
+    };
+    Acknowledgements = class _Acknowledgements {
+      static of(scope) {
+        const app = appOf(scope);
+        if (!app) {
+          return new _Acknowledgements();
+        }
+        const existing = app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM];
+        if (existing) {
+          return existing;
+        }
+        const fresh = new _Acknowledgements();
+        app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM] = fresh;
+        return fresh;
+      }
+      static ACKNOWLEDGEMENTS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Acknowledgements");
+      acks = /* @__PURE__ */ new Map();
+      constructor() {
+      }
+      add(node, ack) {
+        const nodePath = this.nodePath(node);
+        let arr = this.acks.get(nodePath);
+        if (!arr) {
+          arr = /* @__PURE__ */ new Set();
+          this.acks.set(nodePath, arr);
+        }
+        arr.add(ack);
+      }
+      has(node, ack) {
+        for (const candidate of this.searchPaths(this.nodePath(node))) {
+          if (this.acks.get(candidate)?.has(ack)) {
+            return true;
+          }
+        }
+        return false;
+      }
+      nodePath(node) {
+        return (typeof node === "string" ? node : node.node.path).replace(/^\//, "");
+      }
+      /**
+       * Given 'a/b/c', return ['a/b/c', 'a/b', 'a']
+       */
+      searchPaths(path23) {
+        const ret = new Array();
+        let start = 0;
+        while (start < path23.length) {
+          let i = path23.indexOf("/", start);
+          if (i !== -1) {
+            ret.push(path23.substring(0, i));
+            start = i + 1;
+          } else {
+            start = path23.length;
+          }
+        }
+        ret.push(path23);
+        return ret.reverse();
+      }
+    };
+  }
+});
+
+// ../../../node_modules/constructs/lib/dependency.js
+var require_dependency = __commonJS({
+  "../../../node_modules/constructs/lib/dependency.js"(exports2) {
+    "use strict";
+    var _a7;
+    var _b;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.Dependable = exports2.DependencyGroup = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var DependencyGroup = class {
+      constructor(...deps) {
+        this._deps = new Array();
+        const self2 = this;
+        Dependable2.implement(this, {
+          get dependencyRoots() {
+            const result = new Array();
+            for (const d of self2._deps) {
+              result.push(...Dependable2.of(d).dependencyRoots);
+            }
+            return result;
+          }
+        });
+        this.add(...deps);
+      }
+      /**
+       * Add a construct to the dependency roots
+       */
+      add(...scopes) {
+        this._deps.push(...scopes);
+      }
+    };
+    exports2.DependencyGroup = DependencyGroup;
+    _a7 = JSII_RTTI_SYMBOL_1;
+    DependencyGroup[_a7] = { fqn: "constructs.DependencyGroup", version: "10.6.0" };
+    var DEPENDABLE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.DependableTrait");
+    var Dependable2 = class {
+      /**
+       * Turn any object into an IDependable.
+       */
+      static implement(instance, trait) {
+        instance[DEPENDABLE_SYMBOL] = trait;
+      }
+      /**
+       * Return the matching Dependable for the given class instance.
+       */
+      static of(instance) {
+        const ret = instance[DEPENDABLE_SYMBOL];
+        if (!ret) {
+          throw new Error(`${instance} does not implement IDependable. Use "Dependable.implement()" to implement`);
+        }
+        return ret;
+      }
+      /**
+       * Return the matching Dependable for the given class instance.
+       * @deprecated use `of`
+       */
+      static get(instance) {
+        return this.of(instance);
+      }
+    };
+    exports2.Dependable = Dependable2;
+    _b = JSII_RTTI_SYMBOL_1;
+    Dependable2[_b] = { fqn: "constructs.Dependable", version: "10.6.0" };
+  }
+});
+
+// ../../../node_modules/constructs/lib/private/stack-trace.js
+var require_stack_trace = __commonJS({
+  "../../../node_modules/constructs/lib/private/stack-trace.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.captureStackTrace = captureStackTrace2;
+    function captureStackTrace2(below) {
+      below = below || captureStackTrace2;
+      const object = { stack: "" };
+      const previousLimit = Error.stackTraceLimit;
+      try {
+        Error.stackTraceLimit = Number.MAX_SAFE_INTEGER;
+        Error.captureStackTrace(object, below);
+      } finally {
+        Error.stackTraceLimit = previousLimit;
+      }
+      if (!object.stack) {
+        return [];
+      }
+      return object.stack.split("\n").slice(1).map((s) => s.replace(/^\s*at\s+/, ""));
+    }
+  }
+});
+
+// ../../../node_modules/constructs/lib/private/uniqueid.js
+var require_uniqueid = __commonJS({
+  "../../../node_modules/constructs/lib/private/uniqueid.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.addressOf = addressOf;
+    var crypto13 = require("crypto");
+    var HIDDEN_ID3 = "Default";
+    function addressOf(components) {
+      const hash = crypto13.createHash("sha1");
+      for (const c of components) {
+        if (c === HIDDEN_ID3) {
+          continue;
+        }
+        hash.update(c);
+        hash.update("\n");
+      }
+      return "c8" + hash.digest("hex");
+    }
+  }
+});
+
+// ../../../node_modules/constructs/lib/construct.js
+var require_construct = __commonJS({
+  "../../../node_modules/constructs/lib/construct.js"(exports2) {
+    "use strict";
+    var _a7;
+    var _b;
+    var _c;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.RootConstruct = exports2.ConstructOrder = exports2.Construct = exports2.Node = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var dependency_1 = require_dependency();
+    var stack_trace_1 = require_stack_trace();
+    var uniqueid_1 = require_uniqueid();
+    var CONSTRUCT_SYM = /* @__PURE__ */ Symbol.for("constructs.Construct");
+    var Node11 = class _Node {
+      /**
+       * Returns the node associated with a construct.
+       * @param construct the construct
+       *
+       * @deprecated use `construct.node` instead
+       */
+      static of(construct) {
+        return construct.node;
+      }
+      constructor(host, scope, id) {
+        this.host = host;
+        this._locked = false;
+        id = id ?? "";
+        this.id = sanitizeId(id);
+        this.scope = scope;
+        if (scope && !this.id) {
+          throw new Error("Only root constructs may have an empty ID");
+        }
+        scope?.node.addChild(host, this.id);
+      }
+      /**
+       * The full, absolute path of this construct in the tree.
+       *
+       * Components are separated by '/'.
+       */
+      get path() {
+        const components = [];
+        for (const scope of this.scopes) {
+          if (scope.node.id) {
+            components.push(scope.node.id);
+          }
+        }
+        return components.join(_Node.PATH_SEP);
+      }
+      /**
+       * Returns an opaque tree-unique address for this construct.
+       *
+       * Addresses are 42 characters hexadecimal strings. They begin with "c8"
+       * followed by 40 lowercase hexadecimal characters (0-9a-f).
+       *
+       * Addresses are calculated using a SHA-1 of the components of the construct
+       * path.
+       *
+       * To enable refactoring of construct trees, constructs with the ID `Default`
+       * will be excluded from the calculation. In those cases constructs in the
+       * same tree may have the same address.
+       *
+       * @example c83a2846e506bcc5f10682b564084bca2d275709ee
+       */
+      get addr() {
+        if (!this._addr) {
+          this._addr = (0, uniqueid_1.addressOf)(this.scopes.map((c) => c.node.id));
+        }
+        return this._addr;
+      }
+      /**
+       * Return a direct child by id, or undefined
+       *
+       * @param id Identifier of direct child
+       * @returns the child if found, or undefined
+       */
+      tryFindChild(id) {
+        return this._children?.[sanitizeId(id)];
+      }
+      /**
+       * Return a direct child by id
+       *
+       * Throws an error if the child is not found.
+       *
+       * @param id Identifier of direct child
+       * @returns Child with the given id.
+       */
+      findChild(id) {
+        const ret = this.tryFindChild(id);
+        if (!ret) {
+          throw new Error(`No child with id: '${id}'`);
+        }
+        return ret;
+      }
+      /**
+       * Returns the child construct that has the id `Default` or `Resource`.
+       * This is usually the construct that provides the bulk of the underlying functionality.
+       * Useful for modifications of the underlying construct that are not available at the higher levels.
+       *
+       * @throws if there is more than one child
+       * @returns a construct or undefined if there is no default child
+       */
+      get defaultChild() {
+        if (this._defaultChild !== void 0) {
+          return this._defaultChild;
+        }
+        const resourceChild = this.tryFindChild("Resource");
+        const defaultChild = this.tryFindChild("Default");
+        if (resourceChild && defaultChild) {
+          throw new Error(`Cannot determine default child for ${this.path}. There is both a child with id "Resource" and id "Default"`);
+        }
+        return defaultChild || resourceChild;
+      }
+      /**
+       * Override the defaultChild property.
+       *
+       * This should only be used in the cases where the correct
+       * default child is not named 'Resource' or 'Default' as it
+       * should be.
+       *
+       * If you set this to undefined, the default behavior of finding
+       * the child named 'Resource' or 'Default' will be used.
+       */
+      set defaultChild(value) {
+        this._defaultChild = value;
+      }
+      /**
+       * All direct children of this construct.
+       */
+      get children() {
+        return Object.values(this._children ?? {});
+      }
+      /**
+       * Return this construct and all of its children in the given order
+       */
+      findAll(order = ConstructOrder.PREORDER) {
+        const ret = new Array();
+        visit2(this.host);
+        return ret;
+        function visit2(c) {
+          if (order === ConstructOrder.PREORDER) {
+            ret.push(c);
+          }
+          for (const child of c.node.children) {
+            visit2(child);
+          }
+          if (order === ConstructOrder.POSTORDER) {
+            ret.push(c);
+          }
+        }
+      }
+      /**
+       * This can be used to set contextual values.
+       * Context must be set before any children are added, since children may consult context info during construction.
+       * If the key already exists, it will be overridden.
+       * @param key The context key
+       * @param value The context value
+       */
+      setContext(key, value) {
+        if (this.children.length > 0) {
+          const names = this.children.map((c) => c.node.id);
+          throw new Error("Cannot set context after children have been added: " + names.join(","));
+        }
+        if (!this._context) {
+          this._context = {};
+        }
+        this._context[key] = value;
+      }
+      /**
+       * Retrieves a value from tree context if present. Otherwise, would throw an error.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param key The context key
+       * @returns The context value or throws error if there is no context value for this key
+       */
+      getContext(key) {
+        const value = this._context?.[key];
+        if (value !== void 0) {
+          return value;
+        }
+        if (value === void 0 && !this.scope?.node) {
+          throw new Error(`No context value present for ${key} key`);
+        }
+        return this.scope && this.scope.node.getContext(key);
+      }
+      /**
+       * Retrieves the all context of a node from tree context.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param defaults Any keys to override the retrieved context
+       * @returns The context object or an empty object if there is discovered context
+       */
+      getAllContext(defaults) {
+        return this.scopes.reverse().reduce((a, s) => ({ ...s.node._context, ...a }), { ...defaults });
+      }
+      /**
+       * Retrieves a value from tree context.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param key The context key
+       * @returns The context value or `undefined` if there is no context value for this key.
+       */
+      tryGetContext(key) {
+        const value = this._context?.[key];
+        if (value !== void 0) {
+          return value;
+        }
+        return this.scope && this.scope.node.tryGetContext(key);
+      }
+      /**
+       * An immutable array of metadata objects associated with this construct.
+       * This can be used, for example, to implement support for deprecation notices, source mapping, etc.
+       */
+      get metadata() {
+        return [...this._metadata ?? []];
+      }
+      /**
+       * Adds a metadata entry to this construct.
+       * Entries are arbitrary values and will also include a stack trace to allow tracing back to
+       * the code location for when the entry was added. It can be used, for example, to include source
+       * mapping in CloudFormation templates to improve diagnostics.
+       * Note that construct metadata is not the same as CloudFormation resource metadata and is never written to the CloudFormation template.
+       * The metadata entries are written to the Cloud Assembly Manifest if the `treeMetadata` property is specified in the props of the App that contains this Construct.
+       *
+       * @param type a string denoting the type of metadata
+       * @param data the value of the metadata (can be a Token). If null/undefined, metadata will not be added.
+       * @param options options
+       */
+      addMetadata(type, data, options = {}) {
+        if (data == null) {
+          return;
+        }
+        const node = this;
+        function getTrace() {
+          if (options.stackTraceOverride && options.stackTraceOverride.length > 0) {
+            return options.stackTraceOverride;
+          }
+          const shouldTrace = options.stackTrace ?? false;
+          return shouldTrace ? (0, stack_trace_1.captureStackTrace)(options.traceFromFunction ?? node.addMetadata) : void 0;
+        }
+        if (!this._metadata) {
+          this._metadata = [];
+        }
+        this._metadata.push({ type, data, trace: getTrace() });
+      }
+      /**
+       * All parent scopes of this construct.
+       *
+       * @returns a list of parent scopes. The last element in the list will always
+       * be the current construct and the first element will be the root of the
+       * tree.
+       */
+      get scopes() {
+        const ret = new Array();
+        let curr = this.host;
+        while (curr) {
+          ret.unshift(curr);
+          curr = curr.node.scope;
+        }
+        return ret;
+      }
+      /**
+       * Returns the root of the construct tree.
+       * @returns The root of the construct tree.
+       */
+      get root() {
+        return this.scopes[0];
+      }
+      /**
+       * Returns true if this construct or the scopes in which it is defined are
+       * locked.
+       */
+      get locked() {
+        if (this._locked) {
+          return true;
+        }
+        if (this.scope && this.scope.node.locked) {
+          return true;
+        }
+        return false;
+      }
+      /**
+       * Add an ordering dependency on another construct.
+       *
+       * An `IDependable`
+       */
+      addDependency(...deps) {
+        if (!this._dependencies) {
+          this._dependencies = /* @__PURE__ */ new Set();
+        }
+        for (const d of deps) {
+          this._dependencies.add(d);
+        }
+      }
+      /**
+       * Return all dependencies registered on this node (non-recursive).
+       */
+      get dependencies() {
+        const result = new Array();
+        if (this._dependencies) {
+          for (const dep of this._dependencies) {
+            for (const root of dependency_1.Dependable.of(dep).dependencyRoots) {
+              result.push(root);
+            }
+          }
+        }
+        return result;
+      }
+      /**
+       * Remove the child with the given name, if present.
+       *
+       * @returns Whether a child with the given name was deleted.
+       */
+      tryRemoveChild(childName) {
+        if (!this._children || !(childName in this._children)) {
+          return false;
+        }
+        delete this._children[childName];
+        return true;
+      }
+      /**
+       * Adds a validation to this construct.
+       *
+       * When `node.validate()` is called, the `validate()` method will be called on
+       * all validations and all errors will be returned.
+       *
+       * @param validation The validation object
+       */
+      addValidation(validation) {
+        if (!this._validations) {
+          this._validations = [];
+        }
+        this._validations.push(validation);
+      }
+      /**
+       * Validates this construct.
+       *
+       * Invokes the `validate()` method on all validations added through
+       * `addValidation()`.
+       *
+       * @returns an array of validation error messages associated with this
+       * construct.
+       */
+      validate() {
+        return (this._validations ?? []).flatMap((v) => v.validate());
+      }
+      /**
+       * Locks this construct from allowing more children to be added. After this
+       * call, no more children can be added to this construct or to any children.
+       */
+      lock() {
+        this._locked = true;
+      }
+      /**
+       * Applies one or more mixins to this construct.
+       *
+       * Mixins are applied in order. The list of constructs is captured at the
+       * start of the call, so constructs added by a mixin will not be visited.
+       * Use multiple `with()` calls if subsequent mixins should apply to added
+       * constructs.
+       *
+       * @param mixins The mixins to apply
+       * @returns This construct for chaining
+       */
+      with(...mixins) {
+        const allConstructs = this.findAll();
+        for (const mixin of mixins) {
+          for (const construct of allConstructs) {
+            if (mixin.supports(construct)) {
+              mixin.applyTo(construct);
+            }
+          }
+        }
+        return this.host;
+      }
+      /**
+       * Adds a child construct to this node.
+       *
+       * @param child The child construct
+       * @param childName The type name of the child construct.
+       * @returns The resolved path part name of the child
+       */
+      addChild(child, childName) {
+        if (this.locked) {
+          if (!this.path) {
+            throw new Error("Cannot add children during synthesis");
+          }
+          throw new Error(`Cannot add children to "${this.path}" during synthesis`);
+        }
+        if (!this._children) {
+          this._children = {};
+        }
+        if (this._children[childName]) {
+          const name = this.id ?? "";
+          const typeName = this.host.constructor.name;
+          throw new Error(`There is already a Construct with name '${childName}' in ${typeName}${name.length > 0 ? " [" + name + "]" : ""}`);
+        }
+        this._children[childName] = child;
+      }
+    };
+    exports2.Node = Node11;
+    _a7 = JSII_RTTI_SYMBOL_1;
+    Node11[_a7] = { fqn: "constructs.Node", version: "10.6.0" };
+    Node11.PATH_SEP = "/";
+    var Construct19 = class {
+      /**
+       * Checks if `x` is a construct.
+       *
+       * Use this method instead of `instanceof` to properly detect `Construct`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `constructs` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `Construct` in each copy of the `constructs` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `constructs`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       *
+       * @returns true if `x` is an object created from a class which extends `Construct`.
+       * @param x Any object
+       */
+      static isConstruct(x) {
+        return x && typeof x === "object" && x[CONSTRUCT_SYM];
+      }
+      /**
+       * Creates a new construct node.
+       *
+       * @param scope The scope in which to define this construct
+       * @param id The scoped construct ID. Must be unique amongst siblings. If
+       * the ID includes a path separator (`/`), then it will be replaced by double
+       * dash `--`.
+       */
+      constructor(scope, id) {
+        this.node = new Node11(this, scope, id);
+        dependency_1.Dependable.implement(this, {
+          dependencyRoots: [this]
+        });
+      }
+      /**
+       * Applies one or more mixins to this construct.
+       *
+       * Mixins are applied in order. The list of constructs is captured at the
+       * start of the call, so constructs added by a mixin will not be visited.
+       * Use multiple `with()` calls if subsequent mixins should apply to added
+       * constructs.
+       *
+       * @param mixins The mixins to apply
+       * @returns This construct for chaining
+       */
+      with(...mixins) {
+        return this.node.with(...mixins);
+      }
+      /**
+       * Returns a string representation of this construct.
+       */
+      toString() {
+        return this.node.path || "";
+      }
+    };
+    exports2.Construct = Construct19;
+    _b = JSII_RTTI_SYMBOL_1;
+    Construct19[_b] = { fqn: "constructs.Construct", version: "10.6.0" };
+    var ConstructOrder;
+    (function(ConstructOrder2) {
+      ConstructOrder2[ConstructOrder2["PREORDER"] = 0] = "PREORDER";
+      ConstructOrder2[ConstructOrder2["POSTORDER"] = 1] = "POSTORDER";
+    })(ConstructOrder || (exports2.ConstructOrder = ConstructOrder = {}));
+    var PATH_SEP_REGEX = new RegExp(`${Node11.PATH_SEP}`, "g");
+    function sanitizeId(id) {
+      return id.replace(PATH_SEP_REGEX, "--");
+    }
+    Object.defineProperty(Construct19.prototype, CONSTRUCT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+    var RootConstruct = class extends Construct19 {
+      /**
+       * Creates a new root construct node.
+       *
+       * @param id The scoped construct ID. Must be unique amongst siblings. If
+       * the ID includes a path separator (`/`), then it will be replaced by double
+       * dash `--`.
+       */
+      constructor(id) {
+        super(void 0, id ?? "");
+      }
+    };
+    exports2.RootConstruct = RootConstruct;
+    _c = JSII_RTTI_SYMBOL_1;
+    RootConstruct[_c] = { fqn: "constructs.RootConstruct", version: "10.6.0" };
+  }
+});
+
+// ../../../node_modules/constructs/lib/index.js
+var require_lib4 = __commonJS({
+  "../../../node_modules/constructs/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_construct(), exports2);
+    __exportStar2(require_dependency(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/feature-flags.ts
+var import_constructs, FeatureFlags;
+var init_feature_flags = __esm({
+  "../../aws-cdk-lib/core/lib/feature-flags.ts"() {
+    "use strict";
+    import_constructs = __toESM(require_lib4());
+    init_errors();
+    init_cx_api();
+    init_literal_string();
+    FeatureFlags = class _FeatureFlags {
+      constructor(construct) {
+        this.construct = construct;
+      }
+      construct;
+      /**
+       * Inspect feature flags on the construct node's context.
+       */
+      static of(scope) {
+        return new _FeatureFlags(scope);
+      }
+      /**
+       * Check whether a feature flag is enabled. If configured, the flag is present in
+       * the construct node context. Falls back to the defaults defined in the `cx-api`
+       * module.
+       */
+      isEnabled(featureFlag) {
+        const context = import_constructs.Node.of(this.construct).tryGetContext(featureFlag);
+        if (CURRENT_VERSION_EXPIRED_FLAGS.includes(featureFlag)) {
+          if (context !== void 0) {
+            throw new UnscopedValidationError(lit`UnsupportedFeatureFlag`, `Unsupported feature flag '${featureFlag}'. This flag existed on CDKv1 but has been removed in CDKv2. CDK will now behave as the same as when the flag is enabled.`);
+          }
+          return true;
+        }
+        return context !== void 0 ? Boolean(context) : futureFlagDefault(featureFlag);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/aspect-prio.ts
+function mutatingAspectPrio32333(scope) {
+  return FeatureFlags.of(scope).isEnabled(ASPECT_PRIORITIES_MUTATING) ? AspectPriority.MUTATING : void 0;
+}
+var init_aspect_prio = __esm({
+  "../../aws-cdk-lib/core/lib/private/aspect-prio.ts"() {
+    "use strict";
+    init_cx_api();
+    init_aspect();
+    init_feature_flags();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/debug.ts
+function debugModeEnabled() {
+  return isTruthy(import_process.env[CDK_DEBUG]);
+}
+function isTruthy(value) {
+  if (!value) {
+    return false;
+  }
+  return TRUTHY_VALUES.has(value.toLowerCase());
+}
+var import_process, CDK_DEBUG, TRUTHY_VALUES;
+var init_debug = __esm({
+  "../../aws-cdk-lib/core/lib/debug.ts"() {
+    "use strict";
+    import_process = require("process");
+    CDK_DEBUG = "CDK_DEBUG";
+    TRUTHY_VALUES = /* @__PURE__ */ new Set(["1", "on", "true"]);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/box.ts
+var BOX_SYM, stackTraceCollectionEnabled, globalSeq, Box, BaseReadableBox, Combined, Computed, ReadonlyState, State, ArrayState, MapState, SetState;
+var init_box = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/box.ts"() {
+    "use strict";
+    init_debug();
+    init_stack_trace();
+    BOX_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Box");
+    stackTraceCollectionEnabled = true;
+    globalSeq = 0;
+    Box = class {
+      /**
+       * Creates a mutable box holding a single value.
+       *
+       * @param value the initial value.
+       * @param options.equals optional equality function used to skip no-op `set` calls.
+       *   Defaults to reference equality (`===`).
+       * @returns a new `Box`.
+       */
+      static fromValue(value, options) {
+        return new State(value, options);
+      }
+      /**
+       * Creates a read-only box that combines multiple source boxes through a function.
+       *
+       * The resulting box collects stack traces from all source boxes, sorted by
+       * the global mutation order. This is useful when a single CloudFormation
+       * property depends on multiple pieces of L2 state.
+       *
+       * @param boxes a record of named source boxes.
+       * @param fn a pure function that receives the unwrapped values and produces the result.
+       * @returns a new read-only `IReadableBox`.
+       * @example
+       *   const a = Boxes.fromValue(10);
+       *   const b = Boxes.fromValue(20);
+       *   const result = Boxes.combine({ a, b }, (x) => x.a + x.b).derive((x) => x * 2);
+       *   result.get(); // 60
+       */
+      static combine(boxes, fn) {
+        return new Combined(boxes, fn);
+      }
+      /**
+       * Type guard that checks whether a value is a box.
+       *
+       * Used internally by `PropertyAssignmentMetadataWriter` to decide whether a
+       * resolved token should contribute `aws:cdk:propertyAssignment` metadata.
+       */
+      static isBox(x) {
+        return typeof x === "object" && x && BOX_SYM in x;
+      }
+      /**
+       * Creates a mutable array box.
+       *
+       * @param as the initial array contents.
+       * @param options.omitEmpty if true (the default), the box resolves to `undefined` when the
+       *   array is empty. This behavior propagates through `map`, `derive`, and
+       *   `reduce`, so derived boxes also resolve to `undefined` when the source
+       *   array is empty. Set to `false` to resolve to an empty array instead.
+       * @returns a new `ArrayBox`.
+       */
+      static fromArray(as = [], options) {
+        return new ArrayState(as, options?.omitEmpty ?? true);
+      }
+      /**
+       * Creates a mutable map box.
+       *
+       * @param map the initial map contents.
+       * @returns a new `MapBox`.
+       */
+      static fromMap(map = /* @__PURE__ */ new Map()) {
+        return new MapState(map);
+      }
+      /**
+       * Creates a mutable set box.
+       *
+       * @param set the initial set contents.
+       * @returns a new `SetBox`.
+       */
+      static fromSet(set = /* @__PURE__ */ new Set()) {
+        return new SetState(set);
+      }
+      /**
+       * Globally disables stack trace collection for all box mutations.
+       *
+       * Called by the `@noBoxStackTraces` decorator before entering an L2
+       * constructor, so that default/initial values set during construction
+       * do not produce misleading stack traces.
+       */
+      static disableStackTraceCollection() {
+        stackTraceCollectionEnabled = false;
+      }
+      /**
+       * Re-enables stack trace collection for all box mutations.
+       *
+       * Called by the `@noBoxStackTraces` decorator after the L2 constructor
+       * returns, so that subsequent mutations (from user code) are tracked.
+       */
+      static enableStackTraceCollection() {
+        stackTraceCollectionEnabled = true;
+      }
+    };
+    BaseReadableBox = class {
+      creationStack = [];
+      constructor() {
+        Object.defineProperty(this, BOX_SYM, { value: true });
+      }
+      derive(fn) {
+        return new Computed(this, fn);
+      }
+      resolve(_) {
+        return this.get();
+      }
+    };
+    Combined = class extends BaseReadableBox {
+      constructor(boxes, fn) {
+        super();
+        this.boxes = boxes;
+        this.fn = fn;
+      }
+      boxes;
+      fn;
+      get() {
+        const values = Object.fromEntries(
+          Object.entries(this.boxes).map(([k, b]) => [k, b.get()])
+        );
+        return this.fn(values);
+      }
+      getMutable() {
+        return this.get();
+      }
+      getStackTraces() {
+        const all = Object.values(this.boxes).flatMap((b) => b.getOrderedStackTraces?.() ?? []);
+        all.sort((a, b) => a.seq - b.seq);
+        return all.map((t) => t.trace);
+      }
+    };
+    Computed = class extends BaseReadableBox {
+      constructor(source, fn) {
+        super();
+        this.source = source;
+        this.fn = fn;
+      }
+      source;
+      fn;
+      get() {
+        return this.fn(this.source.get());
+      }
+      getMutable() {
+        return this.get();
+      }
+      resolve(context) {
+        const sourceResolved = this.source.resolve(context);
+        if (sourceResolved === void 0) {
+          return void 0;
+        }
+        return this.fn(sourceResolved);
+      }
+      getStackTraces() {
+        return this.source.getStackTraces();
+      }
+      getOrderedStackTraces() {
+        return this.source.getOrderedStackTraces?.() ?? [];
+      }
+    };
+    ReadonlyState = class extends BaseReadableBox {
+      constructor(value) {
+        super();
+        this.value = value;
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces = [{ trace: captureStackTrace(this.constructor), seq: globalSeq++ }];
+        }
+      }
+      value;
+      orderedTraces = [];
+      get() {
+        return this.value;
+      }
+      getMutable() {
+        return this.value;
+      }
+      getStackTraces() {
+        return this.orderedTraces.map((t) => t.trace);
+      }
+      getOrderedStackTraces() {
+        return this.orderedTraces;
+      }
+    };
+    State = class _State extends ReadonlyState {
+      equals;
+      constructor(value, options) {
+        super(value);
+        this.equals = options?.equals ?? ((a, b) => a === b);
+      }
+      set(value) {
+        if (this.equals(this.value, value)) {
+          return;
+        }
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces = [{ trace: captureStackTrace(_State.prototype.set), seq: globalSeq++ }];
+        }
+        this.value = value;
+      }
+      update(fn) {
+        this.set(fn(this.value));
+      }
+    };
+    ArrayState = class _ArrayState extends State {
+      constructor(array, omitEmptyFlag) {
+        super(array);
+        this.array = array;
+        this.omitEmptyFlag = omitEmptyFlag;
+      }
+      array;
+      omitEmptyFlag;
+      resolve(_) {
+        if (this.omitEmptyFlag && this.array.length === 0) {
+          return void 0;
+        }
+        return this.get();
+      }
+      set(value) {
+        super.set(value);
+        this.array = value;
+      }
+      push(...items) {
+        this.array.push(...items);
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.push));
+      }
+      pop() {
+        const result = this.array.pop();
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.pop));
+        return result;
+      }
+      findIndex(predicate) {
+        return this.array.findIndex(predicate);
+      }
+      find(predicate) {
+        return this.array.find(predicate);
+      }
+      get length() {
+        return this.array.length;
+      }
+      splice(start, deleteCount, ...items) {
+        const result = this.array.splice(start, deleteCount, ...items);
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.splice));
+        return result;
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      some(predicate) {
+        return this.array.some(predicate);
+      }
+      includes(searchElement) {
+        return this.array.includes(searchElement);
+      }
+      map(fn) {
+        return this.derive((arr) => arr.map(fn));
+      }
+      filter(fn) {
+        return this.derive((arr) => arr.filter(fn));
+      }
+      [Symbol.iterator]() {
+        return this.array[Symbol.iterator]();
+      }
+    };
+    MapState = class _MapState extends State {
+      constructor(map) {
+        super(map);
+        this.map = map;
+      }
+      map;
+      set(value) {
+        super.set(value);
+        this.map = value;
+      }
+      get size() {
+        return this.map.size;
+      }
+      put(key, value) {
+        this.map.set(key, value);
+        this.appendTrace(() => captureStackTrace(_MapState.prototype.put));
+      }
+      delete(key) {
+        const result = this.map.delete(key);
+        this.appendTrace(() => captureStackTrace(_MapState.prototype.delete));
+        return result;
+      }
+      has(key) {
+        return this.map.has(key);
+      }
+      getEntry(key) {
+        return this.map.get(key);
+      }
+      keys() {
+        return this.map.keys();
+      }
+      values() {
+        return this.map.values();
+      }
+      entries() {
+        return this.map.entries();
+      }
+      forEach(callbackfn) {
+        this.map.forEach(callbackfn);
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      [Symbol.iterator]() {
+        return this.map[Symbol.iterator]();
+      }
+    };
+    SetState = class _SetState extends State {
+      constructor(_set) {
+        super(_set);
+        this._set = _set;
+      }
+      _set;
+      set(value) {
+        super.set(value);
+        this._set = value;
+      }
+      get size() {
+        return this._set.size;
+      }
+      add(value) {
+        this._set.add(value);
+        this.appendTrace(() => captureStackTrace(_SetState.prototype.add));
+      }
+      delete(value) {
+        const result = this._set.delete(value);
+        this.appendTrace(() => captureStackTrace(_SetState.prototype.delete));
+        return result;
+      }
+      has(value) {
+        return this._set.has(value);
+      }
+      values() {
+        return this._set.values();
+      }
+      entries() {
+        return this._set.entries();
+      }
+      forEach(callbackfn) {
+        this._set.forEach(callbackfn);
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      [Symbol.iterator]() {
+        return this._set[Symbol.iterator]();
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/string-fragments.ts
+function fragmentValue(fragment) {
+  switch (fragment.type) {
+    case "literal":
+      return fragment.lit;
+    case "token":
+      return fragment.token.toString();
+    case "intrinsic":
+      return fragment.value;
+  }
+}
+var TokenizedStringFragments;
+var init_string_fragments = __esm({
+  "../../aws-cdk-lib/core/lib/string-fragments.ts"() {
+    "use strict";
+    init_token();
+    TokenizedStringFragments = class _TokenizedStringFragments {
+      fragments = new Array();
+      get firstToken() {
+        const first = this.fragments[0];
+        if (first.type === "token") {
+          return first.token;
+        }
+        return void 0;
+      }
+      get firstValue() {
+        return fragmentValue(this.fragments[0]);
+      }
+      get length() {
+        return this.fragments.length;
+      }
+      addLiteral(lit2) {
+        this.fragments.push({ type: "literal", lit: lit2 });
+      }
+      addToken(token) {
+        this.fragments.push({ type: "token", token });
+      }
+      addIntrinsic(value) {
+        this.fragments.push({ type: "intrinsic", value });
+      }
+      /**
+       * Return all Tokens from this string
+       */
+      get tokens() {
+        const ret = new Array();
+        for (const f of this.fragments) {
+          if (f.type === "token") {
+            ret.push(f.token);
+          }
+        }
+        return ret;
+      }
+      /**
+       * Apply a transformation function to all tokens in the string
+       */
+      mapTokens(mapper) {
+        const ret = new _TokenizedStringFragments();
+        for (const f of this.fragments) {
+          switch (f.type) {
+            case "literal":
+              ret.addLiteral(f.lit);
+              break;
+            case "token":
+              const mapped = mapper.mapToken(f.token);
+              if (isResolvableObject(mapped)) {
+                ret.addToken(mapped);
+              } else if (Token.isUnresolved(mapped)) {
+                ret.addIntrinsic(mapped);
+              } else {
+                ret.addLiteral(mapped);
+              }
+              break;
+            case "intrinsic":
+              ret.addIntrinsic(f.value);
+              break;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Combine the string fragments using the given joiner.
+       *
+       * If there are any
+       */
+      join(concat) {
+        if (this.fragments.length === 0) {
+          return concat.join(void 0, void 0);
+        }
+        if (this.fragments.length === 1) {
+          return this.firstValue;
+        }
+        const values = this.fragments.map(fragmentValue);
+        while (values.length > 1) {
+          const prefix = values.splice(0, 2);
+          values.splice(0, 0, concat.join(prefix[0], prefix[1]));
+        }
+        return values[0];
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/encoding.ts
+function regexQuote(s) {
+  return s.replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&");
+}
+function unresolved(obj) {
+  if (typeof obj === "string") {
+    return obj.includes(ANY_TOKEN_MARKER) && TokenString.forString(obj).test();
+  } else if (typeof obj === "number") {
+    return extractTokenDouble(obj) !== void 0;
+  } else if (Array.isArray(obj) && obj.length === 1) {
+    return typeof obj[0] === "string" && TokenString.forListToken(obj[0]).test();
+  } else {
+    return isResolvableObject(obj);
+  }
+}
+function createTokenDouble(x) {
+  if (Math.floor(x) !== x || x < 0) {
+    throw new UnscopedValidationError(lit`OnlyEncodePositiveIntegers`, "Can only encode positive integers");
+  }
+  if (x > MAX_ENCODABLE_INTEGER) {
+    throw new UnscopedValidationError(lit`IndexLargeEncode`, `Got an index too large to encode: ${x}`);
+  }
+  const buf = new ArrayBuffer(8);
+  const ints = new Uint32Array(buf);
+  ints[0] = x & 4294967295;
+  ints[1] = shr32(x) & 65535 | DOUBLE_TOKEN_MARKER_BITS;
+  return new Float64Array(buf)[0];
+}
+function shr32(x) {
+  return Math.floor(x / BITS32);
+}
+function shl32(x) {
+  return x * BITS32;
+}
+function extractTokenDouble(encoded) {
+  const buf = new ArrayBuffer(8);
+  new Float64Array(buf)[0] = encoded;
+  const ints = new Uint32Array(buf);
+  if ((ints[1] & 4294901760) !== DOUBLE_TOKEN_MARKER_BITS) {
+    return void 0;
+  }
+  return ints[0] + shl32(ints[1] & 65535);
+}
+var ANY_TOKEN_MARKER, BEGIN_STRING_TOKEN_MARKER, BEGIN_LIST_TOKEN_MARKER, END_TOKEN_MARKER, VALID_KEY_CHARS, QUOTED_BEGIN_STRING_TOKEN_MARKER, QUOTED_BEGIN_LIST_TOKEN_MARKER, QUOTED_END_TOKEN_MARKER, STRINGIFIED_NUMBER_PATTERN, STRING_TOKEN_REGEX, LIST_TOKEN_REGEX, TokenString, DOUBLE_TOKEN_MARKER_BITS, MAX_ENCODABLE_INTEGER, BITS32, STRINGIFIED_NUMBER_REGEX;
+var init_encoding = __esm({
+  "../../aws-cdk-lib/core/lib/private/encoding.ts"() {
+    "use strict";
+    init_errors();
+    init_string_fragments();
+    init_token();
+    init_literal_string();
+    ANY_TOKEN_MARKER = "Token[";
+    BEGIN_STRING_TOKEN_MARKER = "${Token[";
+    BEGIN_LIST_TOKEN_MARKER = "#{Token[";
+    END_TOKEN_MARKER = "]}";
+    VALID_KEY_CHARS = "a-zA-Z0-9:._-";
+    QUOTED_BEGIN_STRING_TOKEN_MARKER = regexQuote(BEGIN_STRING_TOKEN_MARKER);
+    QUOTED_BEGIN_LIST_TOKEN_MARKER = regexQuote(BEGIN_LIST_TOKEN_MARKER);
+    QUOTED_END_TOKEN_MARKER = regexQuote(END_TOKEN_MARKER);
+    STRINGIFIED_NUMBER_PATTERN = "-1\\.\\d{10,16}e\\+289";
+    STRING_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_STRING_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}|(${STRINGIFIED_NUMBER_PATTERN})`, "g");
+    LIST_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_LIST_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}`, "g");
+    TokenString = class _TokenString {
+      constructor(str, re) {
+        this.str = str;
+        this.re = re;
+      }
+      str;
+      re;
+      /**
+       * Returns a `TokenString` for this string.
+       */
+      static forString(s) {
+        return new _TokenString(s, STRING_TOKEN_REGEX);
+      }
+      /**
+       * Returns a `TokenString` for this string (must be the first string element of the list)
+       */
+      static forListToken(s) {
+        return new _TokenString(s, LIST_TOKEN_REGEX);
+      }
+      /**
+       * Split string on markers, substituting markers with Tokens
+       */
+      split(lookup) {
+        const ret = new TokenizedStringFragments();
+        let rest = 0;
+        this.re.lastIndex = 0;
+        let m = this.re.exec(this.str);
+        while (m) {
+          if (m.index > rest) {
+            ret.addLiteral(this.str.substring(rest, m.index));
+          }
+          ret.addToken(lookup(m[1] ?? m[2]));
+          rest = this.re.lastIndex;
+          m = this.re.exec(this.str);
+        }
+        if (rest < (this.str ?? "").length) {
+          ret.addLiteral(this.str.substring(rest));
+        }
+        return ret;
+      }
+      /**
+       * Indicates if this string includes tokens.
+       */
+      test() {
+        this.re.lastIndex = 0;
+        return this.re.test(this.str);
+      }
+    };
+    DOUBLE_TOKEN_MARKER_BITS = 64511 << 16;
+    MAX_ENCODABLE_INTEGER = Math.pow(2, 48) - 1;
+    BITS32 = Math.pow(2, 32);
+    STRINGIFIED_NUMBER_REGEX = new RegExp(STRINGIFIED_NUMBER_PATTERN);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/type-hints.ts
+var init_type_hints = __esm({
+  "../../aws-cdk-lib/core/lib/type-hints.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/intrinsic.ts
+function isFunction(x) {
+  return typeof x === "function";
+}
+var Intrinsic;
+var init_intrinsic = __esm({
+  "../../aws-cdk-lib/core/lib/private/intrinsic.ts"() {
+    "use strict";
+    init_errors();
+    init_token();
+    init_type_hints();
+    init_literal_string();
+    Intrinsic = class {
+      /**
+       * The captured stack trace which represents the location in which this token was created.
+       */
+      creationStack;
+      /**
+       * Type that the Intrinsic is expected to evaluate to.
+       */
+      typeHint;
+      value;
+      constructor(value, options = {}) {
+        if (isFunction(value)) {
+          throw new UnscopedValidationError(lit`MustBeArgumentIntrinsicPlain`, `Argument to Intrinsic must be a plain value object, got ${value}`);
+        }
+        this.value = value;
+        this.typeHint = options.typeHint ?? "string" /* STRING */;
+      }
+      resolve(_context) {
+        return this.value;
+      }
+      /**
+       * Convert an instance of this Token to a string
+       *
+       * This method will be called implicitly by language runtimes if the object
+       * is embedded into a string. We treat it the same as an explicit
+       * stringification.
+       */
+      toString() {
+        return Token.asString(this);
+      }
+      /**
+       * Convert an instance of this Token to a string list
+       *
+       * This method will be called implicitly by language runtimes if the object
+       * is embedded into a list. We treat it the same as an explicit
+       * stringification.
+       */
+      toStringList() {
+        return Token.asList(this);
+      }
+      /**
+       * Turn this Token into JSON
+       *
+       * Called automatically when JSON.stringify() is called on a Token.
+       */
+      toJSON() {
+        return "";
+      }
+      /**
+       * Creates a throwable Error object that contains the token creation stack trace.
+       * @param message Error message
+       */
+      newError(message) {
+        return new Error(`${message}
+Token created:
+    at ${this.creationStack.join("\n    at ")}
+Error thrown:`);
+      }
+    };
+    Intrinsic.prototype.creationStack = ["Token stack traces are no longer captured"];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/token-map.ts
+function cachedValue(x, sym, prod) {
+  let cached = x[sym];
+  if (cached === void 0) {
+    cached = prod();
+    Object.defineProperty(x, sym, { value: cached });
+  }
+  return cached;
+}
+var glob, STRING_SYMBOL, LIST_SYMBOL, NUMBER_SYMBOL, TokenMap;
+var init_token_map = __esm({
+  "../../aws-cdk-lib/core/lib/private/token-map.ts"() {
+    "use strict";
+    init_encoding();
+    init_errors();
+    init_token();
+    init_literal_string();
+    glob = global;
+    STRING_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.STRING");
+    LIST_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.LIST");
+    NUMBER_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.NUMBER");
+    TokenMap = class _TokenMap {
+      /**
+       * Singleton instance of the token string map
+       */
+      static instance() {
+        if (!glob.__cdkTokenMap) {
+          glob.__cdkTokenMap = new _TokenMap();
+        }
+        return glob.__cdkTokenMap;
+      }
+      stringTokenMap = /* @__PURE__ */ new Map();
+      numberTokenMap = /* @__PURE__ */ new Map();
+      /**
+       * Counter to assign unique IDs to tokens
+       *
+       * Start at a random number to prevent people from accidentally taking
+       * dependencies on token values between runs.
+       *
+       * This is most prominent in tests, where people will write:
+       *
+       * ```ts
+       * sha256(JSON.stringify({ ...some structure that can contain tokens ... }))
+       * ```
+       *
+       * This should have been:
+       *
+       * ```ts
+       * sha256(JSON.stringify(stack.resolve({ ...some structure that can contain tokens ... })))
+       * ```
+       *
+       * The hash value is hard to inspect for correctness. It will LOOK consistent
+       * during testing, but will break as soon as someone stringifies another
+       * token before the run.
+       *
+       * By changing the starting number for tokens, we ensure that the hash is almost
+       * guaranteed to be different during a few test runs, so the hashing of unresolved
+       * tokens can be detected.
+       */
+      tokenCounter = Math.floor(Math.random() * 10);
+      /**
+       * Generate a unique string for this Token, returning a key
+       *
+       * Every call for the same Token will produce a new unique string, no
+       * attempt is made to deduplicate. Token objects should cache the
+       * value themselves, if required.
+       *
+       * The token can choose (part of) its own representation string with a
+       * hint. This may be used to produce aesthetically pleasing and
+       * recognizable token representations for humans.
+       */
+      registerString(token, displayHint) {
+        return cachedValue(token, STRING_SYMBOL, () => {
+          const key = this.registerStringKey(token, displayHint);
+          return `${BEGIN_STRING_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`;
+        });
+      }
+      /**
+       * Generate a unique string for this Token, returning a key
+       */
+      registerList(token, displayHint) {
+        return cachedValue(token, LIST_SYMBOL, () => {
+          const key = this.registerStringKey(token, displayHint);
+          return [`${BEGIN_LIST_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`];
+        });
+      }
+      /**
+       * Create a unique number representation for this Token and return it
+       */
+      registerNumber(token) {
+        return cachedValue(token, NUMBER_SYMBOL, () => {
+          return this.registerNumberKey(token);
+        });
+      }
+      /**
+       * Lookup a token from an encoded value
+       */
+      tokenFromEncoding(x) {
+        if (isResolvableObject(x)) {
+          return x;
+        }
+        if (typeof x === "string") {
+          return this.lookupString(x);
+        }
+        if (Array.isArray(x)) {
+          return this.lookupList(x);
+        }
+        if (Token.isUnresolved(x)) {
+          return x;
+        }
+        return void 0;
+      }
+      /**
+       * Reverse a string representation into a Token object
+       */
+      lookupString(s) {
+        const fragments = this.splitString(s);
+        if (fragments.tokens.length > 0 && fragments.length === 1) {
+          return fragments.firstToken;
+        }
+        return void 0;
+      }
+      /**
+       * Reverse a string representation into a Token object
+       */
+      lookupList(xs) {
+        if (xs.length !== 1) {
+          return void 0;
+        }
+        const str = TokenString.forListToken(xs[0]);
+        const fragments = str.split(this.lookupToken.bind(this));
+        if (fragments.length === 1) {
+          return fragments.firstToken;
+        }
+        return void 0;
+      }
+      /**
+       * Split a string into literals and Tokens
+       */
+      splitString(s) {
+        const str = TokenString.forString(s);
+        return str.split(this.lookupToken.bind(this));
+      }
+      /**
+       * Reverse a number encoding into a Token, or undefined if the number wasn't a Token
+       */
+      lookupNumberToken(x) {
+        const tokenIndex = extractTokenDouble(x);
+        if (tokenIndex === void 0) {
+          return void 0;
+        }
+        const t = this.numberTokenMap.get(tokenIndex);
+        if (t === void 0) {
+          throw new UnscopedValidationError(lit`EncodedRepresentationUnknownNumber`, "Encoded representation of unknown number Token found");
+        }
+        return t;
+      }
+      /**
+       * Find a Token by key.
+       *
+       * This excludes the token markers.
+       */
+      lookupToken(key) {
+        const token = this.stringTokenMap.get(key);
+        if (!token) {
+          throw new UnscopedValidationError(lit`UnrecognizedTokenKey`, `Unrecognized token key: ${key}`);
+        }
+        return token;
+      }
+      registerStringKey(token, displayHint) {
+        const counter = this.tokenCounter++;
+        const representation = (displayHint || "TOKEN").replace(new RegExp(`[^${VALID_KEY_CHARS}]`, "g"), ".");
+        const key = `${representation}.${counter}`;
+        this.stringTokenMap.set(key, token);
+        return key;
+      }
+      registerNumberKey(token) {
+        const counter = this.tokenCounter++;
+        const dbl = createTokenDouble(counter);
+        this.numberTokenMap.set(counter, token);
+        this.stringTokenMap.set(`${dbl}`, token);
+        return dbl;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/resolvable.ts
+var StringConcat, DefaultTokenResolver;
+var init_resolvable = __esm({
+  "../../aws-cdk-lib/core/lib/resolvable.ts"() {
+    "use strict";
+    init_errors();
+    init_encoding();
+    init_literal_string();
+    init_token_map();
+    StringConcat = class {
+      join(left, right) {
+        if (left === void 0) {
+          return right !== void 0 ? `${right}` : void 0;
+        }
+        if (right === void 0) {
+          return `${left}`;
+        }
+        return `${left}${right}`;
+      }
+    };
+    DefaultTokenResolver = class {
+      constructor(concat) {
+        this.concat = concat;
+      }
+      concat;
+      /**
+       * Default Token resolution
+       *
+       * Resolve the Token, recurse into whatever it returns,
+       * then finally post-process it.
+       */
+      resolveToken(t, context, postProcessor) {
+        try {
+          let resolved = t.resolve(context);
+          resolved = context.resolve(resolved);
+          resolved = postProcessor.postProcess(resolved, context);
+          return resolved;
+        } catch (e) {
+          let message = `Resolution error: ${e.message}.`;
+          e.message = message;
+          throw e;
+        }
+      }
+      /**
+       * Resolve string fragments to Tokens
+       */
+      resolveString(fragments, context) {
+        return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).join(this.concat);
+      }
+      resolveList(xs, context) {
+        if (xs.length !== 1) {
+          throw new UnscopedValidationError(lit`CannotAddElementsListToken`, `Cannot add elements to list token, got: ${xs}`);
+        }
+        const str = TokenString.forListToken(xs[0]);
+        const tokenMap2 = TokenMap.instance();
+        const fragments = str.split(tokenMap2.lookupToken.bind(tokenMap2));
+        if (fragments.length !== 1) {
+          throw new UnscopedValidationError(lit`CannotConcatenateStringsTokenizedString`, `Cannot concatenate strings in a tokenized string array, got: ${xs[0]}`);
+        }
+        return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).firstValue;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/resolve.ts
+function couldContainToken(s) {
+  return s.includes(ANY_TOKEN_MARKER) || s.length >= MIN_NUMBER_TOKEN_LENGTH && s.includes("e+289");
+}
+function hasListTokenMarker(s) {
+  return s.includes(BEGIN_LIST_TOKEN_MARKER);
+}
+function resolve(obj, options) {
+  const prefix = options.prefix || [];
+  const leaveEmpty = options.removeEmpty === false;
+  return _resolve(obj, options, prefix, leaveEmpty);
+}
+function _resolve(obj, options, prefix, leaveEmpty) {
+  const t = typeof obj;
+  if (t === "string") {
+    const hasTokenBracket = obj.includes("Token[");
+    if (!hasTokenBracket && !(obj.length >= MIN_NUMBER_TOKEN_LENGTH && obj.includes("e+289"))) {
+      return obj;
+    }
+    if (hasTokenBracket && obj.includes(BEGIN_LIST_TOKEN_MARKER)) {
+      if (TokenString.forListToken(obj).test()) {
+        throw new UnscopedValidationError(lit`EncodedListTokenInScalarContext`, "Found an encoded list token string in a scalar string context. Use 'Fn.select(0, list)' (not 'list[0]') to extract elements from token lists.");
+      }
+    }
+    const str = TokenString.forString(obj);
+    if (str.test()) {
+      const fragments = str.split(lookupToken);
+      return tagResolvedValue(options.resolver.resolveString(fragments, makeContext(options, prefix)), "string" /* STRING */);
+    }
+    return obj;
+  }
+  if (obj === void 0) {
+    return void 0;
+  }
+  if (obj === null) {
+    return null;
+  }
+  if (t === "number") {
+    if (obj > -1e287 && obj < 1e287) {
+      return obj;
+    }
+    return tagResolvedValue(resolveNumberToken(obj, makeContext(options, prefix)), "number" /* NUMBER */);
+  }
+  if (t === "boolean") {
+    return obj;
+  }
+  if (t === "function") {
+    throw new UnscopedValidationError(lit`TryingToResolveNonDataObject`, `Trying to resolve a non-data object. Only token are supported for lazy evaluation. Path: /${prefix.join("/")}. Object: ${obj}`);
+  }
+  if (obj instanceof Date) {
+    return obj;
+  }
+  if (prefix.length > 200) {
+    throw new UnscopedValidationError(lit`CircularReferenceDetected`, "Unable to resolve object tree with circular reference. Path: /" + prefix.join("/"));
+  }
+  if (Array.isArray(obj)) {
+    return resolveArray(obj, options, prefix, leaveEmpty);
+  }
+  if (t === "object" && obj.resolve !== void 0 && typeof obj.resolve === "function") {
+    const context = makeContext(options, prefix);
+    const postProcessor = makePostProcessor(context);
+    return tagResolvedValue(options.resolver.resolveToken(obj, context, postProcessor), "string" /* STRING */);
+  }
+  if (obj._children !== void 0 && obj._metadata !== void 0) {
+    throw new UnscopedValidationError(lit`TryingToResolveConstruct`, "Trying to resolve() a Construct at /" + prefix.join("/"));
+  }
+  return resolveObject(obj, options, prefix, leaveEmpty);
+}
+function resolveArray(obj, options, prefix, leaveEmpty) {
+  for (let i = 0; i < obj.length; i++) {
+    const x = obj[i];
+    if (typeof x === "string" && hasListTokenMarker(x) && TokenString.forListToken(x).test()) {
+      return tagResolvedValue(options.resolver.resolveList(obj, makeContext(options, prefix)), "string-list" /* STRING_LIST */);
+    }
+  }
+  const len = obj.length;
+  const arr = [];
+  for (let i = 0; i < len; i++) {
+    prefix.push(String(i));
+    const value = _resolve(obj[i], options, prefix, leaveEmpty);
+    prefix.pop();
+    if (value === void 0 && !leaveEmpty) {
+      continue;
+    }
+    arr.push(value);
+  }
+  return arr;
+}
+function resolveObject(obj, options, prefix, leaveEmpty) {
+  const keys = Object.keys(obj);
+  const result = {};
+  let intrinsicKeyCtr = 0;
+  for (let ki = 0; ki < keys.length; ki++) {
+    const key = keys[ki];
+    const raw = obj[key];
+    let value;
+    const rawType = typeof raw;
+    if (rawType === "string") {
+      value = couldContainToken(raw) ? _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) : raw;
+    } else if (raw === void 0) {
+      value = void 0;
+    } else if (raw === null) {
+      value = null;
+    } else if (rawType === "number") {
+      value = raw > -1e287 && raw < 1e287 ? raw : _resolveWithPrefix(raw, options, prefix, leaveEmpty, key);
+    } else if (rawType === "boolean") {
+      value = raw;
+    } else {
+      value = _resolveWithPrefix(raw, options, prefix, leaveEmpty, key);
+    }
+    if (value === void 0) {
+      if (leaveEmpty) {
+        result[key] = void 0;
+      }
+      continue;
+    }
+    if (key.length < 5 || !couldContainToken(key)) {
+      result[key] = value;
+      continue;
+    }
+    if (!unresolved(key)) {
+      result[key] = value;
+      continue;
+    }
+    const resolvedKey = makeContext(options, prefix).resolve(key);
+    if (typeof resolvedKey === "string") {
+      result[resolvedKey] = value;
+    } else {
+      if (!options.allowIntrinsicKeys) {
+        throw new UnscopedValidationError(lit`KeyMustResolveToString`, `"${String(key)}" is used as the key in a map so must resolve to a string, but it resolves to: ${JSON.stringify(resolvedKey)}. Consider using "CfnJson" to delay resolution to deployment-time`);
+      }
+      result[`${INTRINSIC_KEY_PREFIX}${intrinsicKeyCtr++}`] = [resolvedKey, value];
+    }
+  }
+  const previousTypeHint = resolvedTypeHint(obj);
+  return previousTypeHint ? tagResolvedValue(result, previousTypeHint) : result;
+}
+function _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) {
+  prefix.push(key);
+  const value = _resolve(raw, options, prefix, leaveEmpty);
+  prefix.pop();
+  return value;
+}
+function makeContext(options, prefix) {
+  const documentPath = prefix.slice();
+  const context = {
+    preparing: options.preparing,
+    scope: options.scope,
+    documentPath,
+    registerPostProcessor(pp) {
+      context._postProcessor = pp;
+    },
+    resolve(x, changeOptions) {
+      const newOptions = changeOptions ? { ...options, ...changeOptions, prefix: documentPath } : { ...options, prefix: documentPath };
+      return resolve(x, newOptions);
+    }
+  };
+  return context;
+}
+function makePostProcessor(context) {
+  return {
+    postProcess(x) {
+      const pp = context._postProcessor;
+      return pp ? pp.postProcess(x, context) : x;
+    }
+  };
+}
+function findTokens(scope, fn) {
+  const resolver = new RememberingTokenResolver(new StringConcat());
+  resolve(fn(), { scope, prefix: [], resolver, preparing: true });
+  return resolver.tokens;
+}
+function writePropertyAssignmentMetadataForConstruct(scope, fn, lookupTable) {
+  const resolver = new PropertyAssignmentMetadataWriter(new StringConcat(), lookupTable);
+  resolve(fn(), { scope, prefix: [], resolver, preparing: true });
+}
+function resolveNumberToken(x, context) {
+  const token = tokenMap.lookupNumberToken(x);
+  if (token === void 0) {
+    return x;
+  }
+  return context.resolve(token);
+}
+function tagResolvedValue(value, typeHint) {
+  if (typeof value !== "object" || value == null) {
+    return value;
+  }
+  Object.defineProperty(value, RESOLUTION_TYPEHINT_SYM, {
+    value: typeHint,
+    configurable: true
+  });
+  return value;
+}
+function resolvedTypeHint(value) {
+  if (typeof value !== "object" || value == null) {
+    return void 0;
+  }
+  return value[RESOLUTION_TYPEHINT_SYM];
+}
+var tokenMap, lookupToken, MIN_NUMBER_TOKEN_LENGTH, RESOLUTION_TYPEHINT_SYM, INTRINSIC_KEY_PREFIX, PropertyAssignmentMetadataWriter, RememberingTokenResolver;
+var init_resolve = __esm({
+  "../../aws-cdk-lib/core/lib/private/resolve.ts"() {
+    "use strict";
+    init_encoding();
+    init_token_map();
+    init_errors();
+    init_resolvable();
+    init_type_hints();
+    init_literal_string();
+    init_box();
+    tokenMap = TokenMap.instance();
+    lookupToken = tokenMap.lookupToken.bind(tokenMap);
+    MIN_NUMBER_TOKEN_LENGTH = 16;
+    RESOLUTION_TYPEHINT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.resolvedTypeHint");
+    INTRINSIC_KEY_PREFIX = "$IntrinsicKey$";
+    PropertyAssignmentMetadataWriter = class extends DefaultTokenResolver {
+      lookupTable;
+      seenDocumentPaths = /* @__PURE__ */ new Set();
+      constructor(concat, lookupTable) {
+        super(concat);
+        this.lookupTable = lookupTable;
+      }
+      resolveToken(t, context, postProcessor) {
+        const result = super.resolveToken(t, context, postProcessor);
+        const lookupTable = this.lookupTable;
+        function propertyNameFromContext(ctx) {
+          const documentPath = ctx.documentPath;
+          if (documentPath.length < 4 || documentPath[0] !== "Resources" || documentPath[2] !== "Properties") {
+            return void 0;
+          }
+          return lookupTable.cfnPropertyName(documentPath[3]);
+        }
+        const propertyName = propertyNameFromContext(context);
+        const documentPathKey = context.documentPath.join("/");
+        if (Box.isBox(t) && propertyName && !this.seenDocumentPaths.has(documentPathKey)) {
+          for (let stackTrace of t.getStackTraces()) {
+            context.scope.node.addMetadata("aws:cdk:propertyAssignment", {
+              propertyName,
+              stackTrace
+            });
+            this.seenDocumentPaths.add(documentPathKey);
+          }
+        }
+        return result;
+      }
+    };
+    RememberingTokenResolver = class extends DefaultTokenResolver {
+      tokensSeen = /* @__PURE__ */ new Set();
+      resolveToken(t, context, postProcessor) {
+        this.tokensSeen.add(t);
+        return super.resolveToken(t, context, postProcessor);
+      }
+      resolveString(s, context) {
+        const ret = super.resolveString(s, context);
+        return ret;
+      }
+      get tokens() {
+        return Array.from(this.tokensSeen);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/token.ts
+function isResolvableObject(x) {
+  return typeof x === "object" && x !== null && typeof x.resolve === "function";
+}
+var TokenComparison, Token, Tokenization, JsonNull;
+var init_token = __esm({
+  "../../aws-cdk-lib/core/lib/token.ts"() {
+    "use strict";
+    init_errors();
+    init_lazy();
+    init_encoding();
+    init_intrinsic();
+    init_literal_string();
+    init_resolve();
+    init_token_map();
+    TokenComparison = class _TokenComparison {
+      /**
+       * This means we're certain the two components are NOT
+       * Tokens, and identical.
+       */
+      static SAME = new _TokenComparison();
+      /**
+       * This means we're certain the two components are NOT
+       * Tokens, and different.
+       */
+      static DIFFERENT = new _TokenComparison();
+      /** This means exactly one of the components is a Token. */
+      static ONE_UNRESOLVED = new _TokenComparison();
+      /** This means both components are Tokens. */
+      static BOTH_UNRESOLVED = new _TokenComparison();
+      constructor() {
+      }
+    };
+    Token = class _Token {
+      /**
+       * Returns true if obj represents an unresolved value
+       *
+       * One of these must be true:
+       *
+       * - `obj` is an IResolvable
+       * - `obj` is a string containing at least one encoded `IResolvable`
+       * - `obj` is either an encoded number or list
+       *
+       * This does NOT recurse into lists or objects to see if they
+       * contain resolvables.
+       *
+       * @param obj The object to test.
+       */
+      static isUnresolved(obj) {
+        return unresolved(obj);
+      }
+      /**
+       * The negation of `Token.isUnresolved()`. In TypeScript, narrows the type
+       * to exclude `IResolvable`.
+       * @param obj The object to test.
+       */
+      static isResolved(obj) {
+        return !_Token.isUnresolved(obj);
+      }
+      /**
+       * Return a reversible string representation of this token
+       *
+       * If the Token is initialized with a literal, the stringified value of the
+       * literal is returned. Otherwise, a special quoted string representation
+       * of the Token is returned that can be embedded into other strings.
+       *
+       * Strings with quoted Tokens in them can be restored back into
+       * complex values with the Tokens restored by calling `resolve()`
+       * on the string.
+       */
+      static asString(value, options = {}) {
+        if (typeof value === "string") {
+          return value;
+        }
+        return TokenMap.instance().registerString(_Token.asAny(value), options.displayHint);
+      }
+      /**
+       * Return a reversible number representation of this token
+       */
+      static asNumber(value) {
+        if (typeof value === "number") {
+          return value;
+        }
+        return TokenMap.instance().registerNumber(_Token.asAny(value));
+      }
+      /**
+       * Return a reversible list representation of this token
+       */
+      static asList(value, options = {}) {
+        if (Array.isArray(value) && value.every((x) => typeof x === "string")) {
+          return value;
+        }
+        return TokenMap.instance().registerList(_Token.asAny(value), options.displayHint);
+      }
+      /**
+       * Return a resolvable representation of the given value
+       */
+      static asAny(value) {
+        value = Tokenization.reverse(value) ?? value;
+        return isResolvableObject(value) ? value : new Intrinsic(value);
+      }
+      /** Compare two strings that might contain Tokens with each other. */
+      static compareStrings(possibleToken1, possibleToken2) {
+        const firstIsUnresolved = _Token.isUnresolved(possibleToken1);
+        const secondIsUnresolved = _Token.isUnresolved(possibleToken2);
+        if (firstIsUnresolved && secondIsUnresolved) {
+          return TokenComparison.BOTH_UNRESOLVED;
+        }
+        if (firstIsUnresolved || secondIsUnresolved) {
+          return TokenComparison.ONE_UNRESOLVED;
+        }
+        return possibleToken1 === possibleToken2 ? TokenComparison.SAME : TokenComparison.DIFFERENT;
+      }
+      constructor() {
+      }
+    };
+    Tokenization = class _Tokenization {
+      /**
+       * Un-encode a string potentially containing encoded tokens
+       */
+      static reverseString(s) {
+        return TokenMap.instance().splitString(s);
+      }
+      /**
+       * Un-encode a string which is either a complete encoded token, or doesn't contain tokens at all
+       *
+       * It's illegal for the string to be a concatenation of an encoded token and something else.
+       */
+      static reverseCompleteString(s) {
+        const fragments = _Tokenization.reverseString(s);
+        if (fragments.length !== 1) {
+          throw new UnscopedValidationError(lit`TokenzationReverseCompleteStringArgument`, `Tokenzation.reverseCompleteString: argument must not be a concatenation, got '${s}'`);
+        }
+        return fragments.firstToken;
+      }
+      /**
+       * Un-encode a Tokenized value from a number
+       */
+      static reverseNumber(n) {
+        return TokenMap.instance().lookupNumberToken(n);
+      }
+      /**
+       * Un-encode a Tokenized value from a list
+       */
+      static reverseList(l) {
+        return TokenMap.instance().lookupList(l);
+      }
+      /**
+       * Reverse any value into a Resolvable, if possible
+       *
+       * In case of a string, the string must not be a concatenation.
+       */
+      static reverse(x, options = {}) {
+        if (_Tokenization.isResolvable(x)) {
+          return x;
+        }
+        if (typeof x === "string") {
+          if (options.failConcat === false) {
+            const fragments = _Tokenization.reverseString(x);
+            return fragments.length === 1 ? fragments.firstToken : void 0;
+          }
+          return _Tokenization.reverseCompleteString(x);
+        }
+        if (Array.isArray(x)) {
+          return _Tokenization.reverseList(x);
+        }
+        if (typeof x === "number") {
+          return _Tokenization.reverseNumber(x);
+        }
+        return void 0;
+      }
+      /**
+       * Resolves an object by evaluating all tokens and removing any undefined or empty objects or arrays.
+       * Values can only be primitives, arrays or tokens. Other objects (i.e. with methods) will be rejected.
+       *
+       * @param obj The object to resolve.
+       * @param options Prefix key path components for diagnostics.
+       */
+      static resolve(obj, options) {
+        return resolve(obj, {
+          scope: options.scope,
+          resolver: options.resolver,
+          preparing: options.preparing ?? false,
+          removeEmpty: options.removeEmpty
+        });
+      }
+      /**
+       * Return whether the given object is an IResolvable object
+       *
+       * This is different from Token.isUnresolved() which will also check for
+       * encoded Tokens, whereas this method will only do a type check on the given
+       * object.
+       */
+      static isResolvable(obj) {
+        return isResolvableObject(obj);
+      }
+      /**
+       * Stringify a number directly or lazily if it's a Token. If it is an object (i.e., { Ref: 'SomeLogicalId' }), return it as-is.
+       */
+      static stringifyNumber(x) {
+        if (Token.isUnresolved(x)) {
+          return Lazy.uncachedString({
+            produce: (context) => {
+              const resolved = context.resolve(x);
+              return typeof resolved !== "number" ? resolved : `${resolved}`;
+            }
+          });
+        } else {
+          return typeof x !== "number" ? x : `${x}`;
+        }
+      }
+      constructor() {
+      }
+    };
+    JsonNull = class _JsonNull {
+      /** The canonical instance of `JsonNull`. */
+      static INSTANCE = new _JsonNull();
+      creationStack = ["Token stack traces are no longer captured"];
+      constructor() {
+      }
+      resolve(_ctx) {
+        return null;
+      }
+      /** Obtains the JSON representation of this object (`null`) */
+      toJSON() {
+        return null;
+      }
+      /** Obtains the string representation of this object (`'null'`) */
+      toString() {
+        return "null";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/lazy.ts
+var Lazy, LazyBase, LazyBox, LazyString, LazyNumber, LazyList, LazyAny;
+var init_lazy = __esm({
+  "../../aws-cdk-lib/core/lib/lazy.ts"() {
+    "use strict";
+    init_box();
+    init_token();
+    Lazy = class {
+      /**
+       * Defer the calculation of a string value to synthesis time
+       *
+       * Use this if you want to render a string to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string` type and don't need
+       * the calculation to be deferred, use `Token.asString()` instead.
+       *
+       * @deprecated Use `Lazy.string()` or `Lazy.uncachedString()` instead.
+       */
+      static stringValue(producer, options = {}) {
+        return Token.asString(new LazyString(producer, false), options);
+      }
+      /**
+       * Defer the one-time calculation of a string value to synthesis time
+       *
+       * Use this if you want to render a string to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string` type and don't need
+       * the calculation to be deferred, use `Token.asString()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static string(producer, options = {}) {
+        return Token.asString(new LazyBox(new LazyString(producer, true)), options);
+      }
+      /**
+       * Defer the calculation of a string value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.string()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedString(producer, options = {}) {
+        return Token.asString(new LazyString(producer, false), options);
+      }
+      /**
+       * Defer the one-time calculation of a number value to synthesis time
+       *
+       * Use this if you want to render a number to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `number` type and don't need
+       * the calculation to be deferred, use `Token.asNumber()` instead.
+       *
+       * @deprecated Use `Lazy.number()` or `Lazy.uncachedNumber()` instead.
+       */
+      static numberValue(producer) {
+        return Token.asNumber(new LazyNumber(producer, false));
+      }
+      /**
+       * Defer the one-time calculation of a number value to synthesis time
+       *
+       * Use this if you want to render a number to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `number` type and don't need
+       * the calculation to be deferred, use `Token.asNumber()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static number(producer) {
+        return Token.asNumber(new LazyBox(new LazyNumber(producer, true)));
+      }
+      /**
+       * Defer the calculation of a number value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.number()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedNumber(producer) {
+        return Token.asNumber(new LazyNumber(producer, false));
+      }
+      /**
+       * Defer the one-time calculation of a list value to synthesis time
+       *
+       * Use this if you want to render a list to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string[]` type and don't need
+       * the calculation to be deferred, use `Token.asList()` instead.
+       *
+       * @deprecated Use `Lazy.list()` or `Lazy.uncachedList()` instead.
+       */
+      static listValue(producer, options = {}) {
+        return Token.asList(new LazyList(producer, false, options), options);
+      }
+      /**
+       * Defer the calculation of a list value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.list()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedList(producer, options = {}) {
+        return Token.asList(new LazyList(producer, false, options), options);
+      }
+      /**
+       * Defer the one-time calculation of a list value to synthesis time
+       *
+       * Use this if you want to render a list to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string[]` type and don't need
+       * the calculation to be deferred, use `Token.asList()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static list(producer, options = {}) {
+        return Token.asList(new LazyBox(new LazyList(producer, true, options)), options);
+      }
+      /**
+       * Defer the one-time calculation of an arbitrarily typed value to synthesis time
+       *
+       * Use this if you want to render an object to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * @deprecated Use `Lazy.any()` or `Lazy.uncachedAny()` instead.
+       */
+      static anyValue(producer, options = {}) {
+        return new LazyAny(producer, false, options);
+      }
+      /**
+       * Defer the one-time calculation of an arbitrarily typed value to synthesis time
+       *
+       * Use this if you want to render an object to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * The inner function will only be invoked one time and cannot depend on
+       * resolution context.
+       */
+      static any(producer, options = {}) {
+        return new LazyBox(new LazyAny(producer, true, options));
+      }
+      /**
+       * Defer the calculation of an untyped value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.any()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedAny(producer, options = {}) {
+        return new LazyAny(producer, false, options);
+      }
+      constructor() {
+      }
+    };
+    LazyBase = class {
+      constructor(producer, cache) {
+        this.producer = producer;
+        this.cache = cache;
+      }
+      producer;
+      cache;
+      creationStack;
+      _cached;
+      resolve(context) {
+        if (this.cache) {
+          return this._cached ?? (this._cached = this.producer.produce(context));
+        } else {
+          return this.producer.produce(context);
+        }
+      }
+      toString() {
+        return Token.asString(this);
+      }
+      /**
+       * Turn this Token into JSON
+       *
+       * Called automatically when JSON.stringify() is called on a Token.
+       */
+      toJSON() {
+        return "";
+      }
+    };
+    LazyBase.prototype.creationStack = ["Token stack traces are no longer captured"];
+    LazyBox = class extends ReadonlyState {
+      inner;
+      constructor(inner) {
+        super(void 0);
+        this.inner = inner;
+      }
+      get() {
+        return this.inner.resolve(void 0);
+      }
+      toString() {
+        return Token.asString(this);
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    LazyString = class extends LazyBase {
+    };
+    LazyNumber = class extends LazyBase {
+    };
+    LazyList = class extends LazyBase {
+      constructor(producer, cache, options = {}) {
+        super(producer, cache);
+        this.options = options;
+      }
+      options;
+      resolve(context) {
+        const resolved = super.resolve(context);
+        if (resolved?.length === 0 && this.options.omitEmpty) {
+          return void 0;
+        }
+        return resolved;
+      }
+    };
+    LazyAny = class extends LazyBase {
+      constructor(producer, cache, options = {}) {
+        super(producer, cache);
+        this.options = options;
+      }
+      options;
+      resolve(context) {
+        const resolved = super.resolve(context);
+        if (Array.isArray(resolved) && resolved.length === 0 && this.options.omitEmptyArray) {
+          return void 0;
+        }
+        return resolved;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/reference.ts
+var REFERENCE_SYMBOL, Reference;
+var init_reference = __esm({
+  "../../aws-cdk-lib/core/lib/reference.ts"() {
+    "use strict";
+    init_intrinsic();
+    REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Reference");
+    Reference = class extends Intrinsic {
+      /**
+       * Check whether this is actually a Reference
+       */
+      static isReference(x) {
+        return typeof x === "object" && x !== null && REFERENCE_SYMBOL in x;
+      }
+      target;
+      displayName;
+      constructor(value, target, displayName, typeHint) {
+        super(value, { typeHint });
+        Object.defineProperty(this, REFERENCE_SYMBOL, { value: true });
+        this.target = target;
+        this.displayName = displayName || "Reference";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-reference.ts
+var CFN_REFERENCE_SYMBOL, CfnReference;
+var init_cfn_reference = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-reference.ts"() {
+    "use strict";
+    init_reference();
+    init_token();
+    init_errors();
+    init_literal_string();
+    init_core_construct_finders();
+    CFN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnReference");
+    CfnReference = class _CfnReference extends Reference {
+      constructor(value, displayName, target, typeHint) {
+        super(value, target, displayName, typeHint);
+        this.target = target;
+        this.replacementTokens = /* @__PURE__ */ new Map();
+        this.targetStack = stackOf(target);
+        Object.defineProperty(this, CFN_REFERENCE_SYMBOL, { value: true });
+      }
+      target;
+      /**
+       * Check whether this is actually a Reference
+       */
+      static isCfnReference(x) {
+        return CFN_REFERENCE_SYMBOL in x;
+      }
+      /**
+       * Return the CfnReference for the indicated target
+       *
+       * Will make sure that multiple invocations for the same target and intrinsic
+       * return the same CfnReference. Because CfnReferences accumulate state in
+       * the prepare() phase (for the purpose of cross-stack references), it's
+       * important that the state isn't lost if it's lazily created, like so:
+       *
+       *     Lazy.string({ produce: () => new CfnReference(...) })
+       *
+       */
+      static for(target, attribute, refRender, typeHint) {
+        return _CfnReference.singletonReference(target, attribute, refRender, () => {
+          const cfnIntrinsic = refRender === 0 /* FN_SUB */ ? "${" + target.logicalId + (attribute === "Ref" ? "" : `.${attribute}`) + "}" : attribute === "Ref" ? { Ref: target.logicalId } : {
+            "Fn::GetAtt": refRender === 1 /* GET_ATT_STRING */ ? `${target.logicalId}.${attribute}` : [target.logicalId, attribute]
+          };
+          return new _CfnReference(cfnIntrinsic, attribute, target, typeHint);
+        });
+      }
+      /**
+       * Return a CfnReference that references a pseudo referenced
+       */
+      static forPseudo(pseudoName, scope) {
+        return _CfnReference.singletonReference(scope, `Pseudo:${pseudoName}`, void 0, () => {
+          const cfnIntrinsic = { Ref: pseudoName };
+          return new _CfnReference(cfnIntrinsic, pseudoName, scope);
+        });
+      }
+      /**
+       * Static table where we keep singleton CfnReference instances
+       */
+      static referenceTable = /* @__PURE__ */ new Map();
+      /**
+       * Get or create the table.
+       * Passing fnSub = true allows cloudformation-include to correctly handle Fn::Sub.
+       */
+      static singletonReference(target, attribKey, refRender, fresh) {
+        let attribs = _CfnReference.referenceTable.get(target);
+        if (!attribs) {
+          attribs = /* @__PURE__ */ new Map();
+          _CfnReference.referenceTable.set(target, attribs);
+        }
+        let cacheKey = attribKey;
+        switch (refRender) {
+          case 0 /* FN_SUB */:
+            cacheKey += "Fn::Sub";
+            break;
+          case 1 /* GET_ATT_STRING */:
+            cacheKey += "Fn::GetAtt::String";
+            break;
+        }
+        let ref = attribs.get(cacheKey);
+        if (!ref) {
+          ref = fresh();
+          attribs.set(cacheKey, ref);
+        }
+        return ref;
+      }
+      /**
+       * The Tokens that should be returned for each consuming stack (as decided by the producing Stack)
+       */
+      replacementTokens;
+      targetStack;
+      resolve(context) {
+        const consumingStack = stackOf(context.scope);
+        const token = this.replacementTokens.get(consumingStack);
+        if (token) {
+          return token.resolve(context);
+        } else {
+          return super.resolve(context);
+        }
+      }
+      hasValueForStack(stack) {
+        if (stack === this.targetStack) {
+          return true;
+        }
+        return this.replacementTokens.has(stack);
+      }
+      assignValueForStack(stack, value) {
+        if (stack === this.targetStack) {
+          throw new UnscopedValidationError(lit`CannotAssignValueStack`, "cannot assign a value for the same stack");
+        }
+        if (this.hasValueForStack(stack)) {
+          throw new UnscopedValidationError(lit`CannotAssignReferenceValueTwice`, "Cannot assign a reference value twice to the same stack. Use hasValueForStack to check first");
+        }
+        this.replacementTokens.set(stack, value);
+      }
+      /**
+       * Implementation of toString() that will use the display name
+       */
+      toString() {
+        return Token.asString(this, {
+          displayHint: `${this.target.node.id}.${this.displayName}`
+        });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/universalify/index.js
+var require_universalify = __commonJS({
+  "../../aws-cdk-lib/node_modules/universalify/index.js"(exports2) {
+    "use strict";
+    exports2.fromCallback = function(fn) {
+      return Object.defineProperty(function(...args) {
+        if (typeof args[args.length - 1] === "function") fn.apply(this, args);
+        else {
+          return new Promise((resolve6, reject) => {
+            args.push((err, res) => err != null ? reject(err) : resolve6(res));
+            fn.apply(this, args);
+          });
+        }
+      }, "name", { value: fn.name });
+    };
+    exports2.fromPromise = function(fn) {
+      return Object.defineProperty(function(...args) {
+        const cb = args[args.length - 1];
+        if (typeof cb !== "function") return fn.apply(this, args);
+        else {
+          args.pop();
+          fn.apply(this, args).then((r) => cb(null, r), cb);
+        }
+      }, "name", { value: fn.name });
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js
+var require_polyfills = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js"(exports2, module2) {
+    var constants2 = require("constants");
+    var origCwd = process.cwd;
+    var cwd = null;
+    var platform = process.env.GRACEFUL_FS_PLATFORM || process.platform;
+    process.cwd = function() {
+      if (!cwd)
+        cwd = origCwd.call(process);
+      return cwd;
+    };
+    try {
+      process.cwd();
+    } catch (er) {
+    }
+    if (typeof process.chdir === "function") {
+      chdir = process.chdir;
+      process.chdir = function(d) {
+        cwd = null;
+        chdir.call(process, d);
+      };
+      if (Object.setPrototypeOf) Object.setPrototypeOf(process.chdir, chdir);
+    }
+    var chdir;
+    module2.exports = patch;
+    function patch(fs19) {
+      if (constants2.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) {
+        patchLchmod(fs19);
+      }
+      if (!fs19.lutimes) {
+        patchLutimes(fs19);
+      }
+      fs19.chown = chownFix(fs19.chown);
+      fs19.fchown = chownFix(fs19.fchown);
+      fs19.lchown = chownFix(fs19.lchown);
+      fs19.chmod = chmodFix(fs19.chmod);
+      fs19.fchmod = chmodFix(fs19.fchmod);
+      fs19.lchmod = chmodFix(fs19.lchmod);
+      fs19.chownSync = chownFixSync(fs19.chownSync);
+      fs19.fchownSync = chownFixSync(fs19.fchownSync);
+      fs19.lchownSync = chownFixSync(fs19.lchownSync);
+      fs19.chmodSync = chmodFixSync(fs19.chmodSync);
+      fs19.fchmodSync = chmodFixSync(fs19.fchmodSync);
+      fs19.lchmodSync = chmodFixSync(fs19.lchmodSync);
+      fs19.stat = statFix(fs19.stat);
+      fs19.fstat = statFix(fs19.fstat);
+      fs19.lstat = statFix(fs19.lstat);
+      fs19.statSync = statFixSync(fs19.statSync);
+      fs19.fstatSync = statFixSync(fs19.fstatSync);
+      fs19.lstatSync = statFixSync(fs19.lstatSync);
+      if (fs19.chmod && !fs19.lchmod) {
+        fs19.lchmod = function(path23, mode, cb) {
+          if (cb) process.nextTick(cb);
+        };
+        fs19.lchmodSync = function() {
+        };
+      }
+      if (fs19.chown && !fs19.lchown) {
+        fs19.lchown = function(path23, uid, gid, cb) {
+          if (cb) process.nextTick(cb);
+        };
+        fs19.lchownSync = function() {
+        };
+      }
+      if (platform === "win32") {
+        fs19.rename = typeof fs19.rename !== "function" ? fs19.rename : (function(fs$rename) {
+          function rename(from, to, cb) {
+            var start = Date.now();
+            var backoff = 0;
+            fs$rename(from, to, function CB(er) {
+              if (er && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") && Date.now() - start < 6e4) {
+                setTimeout(function() {
+                  fs19.stat(to, function(stater, st) {
+                    if (stater && stater.code === "ENOENT")
+                      fs$rename(from, to, CB);
+                    else
+                      cb(er);
+                  });
+                }, backoff);
+                if (backoff < 100)
+                  backoff += 10;
+                return;
+              }
+              if (cb) cb(er);
+            });
+          }
+          if (Object.setPrototypeOf) Object.setPrototypeOf(rename, fs$rename);
+          return rename;
+        })(fs19.rename);
+      }
+      fs19.read = typeof fs19.read !== "function" ? fs19.read : (function(fs$read) {
+        function read(fd, buffer, offset, length, position, callback_) {
+          var callback;
+          if (callback_ && typeof callback_ === "function") {
+            var eagCounter = 0;
+            callback = function(er, _, __) {
+              if (er && er.code === "EAGAIN" && eagCounter < 10) {
+                eagCounter++;
+                return fs$read.call(fs19, fd, buffer, offset, length, position, callback);
+              }
+              callback_.apply(this, arguments);
+            };
+          }
+          return fs$read.call(fs19, fd, buffer, offset, length, position, callback);
+        }
+        if (Object.setPrototypeOf) Object.setPrototypeOf(read, fs$read);
+        return read;
+      })(fs19.read);
+      fs19.readSync = typeof fs19.readSync !== "function" ? fs19.readSync : /* @__PURE__ */ (function(fs$readSync) {
+        return function(fd, buffer, offset, length, position) {
+          var eagCounter = 0;
+          while (true) {
+            try {
+              return fs$readSync.call(fs19, fd, buffer, offset, length, position);
+            } catch (er) {
+              if (er.code === "EAGAIN" && eagCounter < 10) {
+                eagCounter++;
+                continue;
+              }
+              throw er;
+            }
+          }
+        };
+      })(fs19.readSync);
+      function patchLchmod(fs20) {
+        fs20.lchmod = function(path23, mode, callback) {
+          fs20.open(
+            path23,
+            constants2.O_WRONLY | constants2.O_SYMLINK,
+            mode,
+            function(err, fd) {
+              if (err) {
+                if (callback) callback(err);
+                return;
+              }
+              fs20.fchmod(fd, mode, function(err2) {
+                fs20.close(fd, function(err22) {
+                  if (callback) callback(err2 || err22);
+                });
+              });
+            }
+          );
+        };
+        fs20.lchmodSync = function(path23, mode) {
+          var fd = fs20.openSync(path23, constants2.O_WRONLY | constants2.O_SYMLINK, mode);
+          var threw = true;
+          var ret;
+          try {
+            ret = fs20.fchmodSync(fd, mode);
+            threw = false;
+          } finally {
+            if (threw) {
+              try {
+                fs20.closeSync(fd);
+              } catch (er) {
+              }
+            } else {
+              fs20.closeSync(fd);
+            }
+          }
+          return ret;
+        };
+      }
+      function patchLutimes(fs20) {
+        if (constants2.hasOwnProperty("O_SYMLINK") && fs20.futimes) {
+          fs20.lutimes = function(path23, at, mt, cb) {
+            fs20.open(path23, constants2.O_SYMLINK, function(er, fd) {
+              if (er) {
+                if (cb) cb(er);
+                return;
+              }
+              fs20.futimes(fd, at, mt, function(er2) {
+                fs20.close(fd, function(er22) {
+                  if (cb) cb(er2 || er22);
+                });
+              });
+            });
+          };
+          fs20.lutimesSync = function(path23, at, mt) {
+            var fd = fs20.openSync(path23, constants2.O_SYMLINK);
+            var ret;
+            var threw = true;
+            try {
+              ret = fs20.futimesSync(fd, at, mt);
+              threw = false;
+            } finally {
+              if (threw) {
+                try {
+                  fs20.closeSync(fd);
+                } catch (er) {
+                }
+              } else {
+                fs20.closeSync(fd);
+              }
+            }
+            return ret;
+          };
+        } else if (fs20.futimes) {
+          fs20.lutimes = function(_a7, _b, _c, cb) {
+            if (cb) process.nextTick(cb);
+          };
+          fs20.lutimesSync = function() {
+          };
+        }
+      }
+      function chmodFix(orig) {
+        if (!orig) return orig;
+        return function(target, mode, cb) {
+          return orig.call(fs19, target, mode, function(er) {
+            if (chownErOk(er)) er = null;
+            if (cb) cb.apply(this, arguments);
+          });
+        };
+      }
+      function chmodFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, mode) {
+          try {
+            return orig.call(fs19, target, mode);
+          } catch (er) {
+            if (!chownErOk(er)) throw er;
+          }
+        };
+      }
+      function chownFix(orig) {
+        if (!orig) return orig;
+        return function(target, uid, gid, cb) {
+          return orig.call(fs19, target, uid, gid, function(er) {
+            if (chownErOk(er)) er = null;
+            if (cb) cb.apply(this, arguments);
+          });
+        };
+      }
+      function chownFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, uid, gid) {
+          try {
+            return orig.call(fs19, target, uid, gid);
+          } catch (er) {
+            if (!chownErOk(er)) throw er;
+          }
+        };
+      }
+      function statFix(orig) {
+        if (!orig) return orig;
+        return function(target, options, cb) {
+          if (typeof options === "function") {
+            cb = options;
+            options = null;
+          }
+          function callback(er, stats) {
+            if (stats) {
+              if (stats.uid < 0) stats.uid += 4294967296;
+              if (stats.gid < 0) stats.gid += 4294967296;
+            }
+            if (cb) cb.apply(this, arguments);
+          }
+          return options ? orig.call(fs19, target, options, callback) : orig.call(fs19, target, callback);
+        };
+      }
+      function statFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, options) {
+          var stats = options ? orig.call(fs19, target, options) : orig.call(fs19, target);
+          if (stats) {
+            if (stats.uid < 0) stats.uid += 4294967296;
+            if (stats.gid < 0) stats.gid += 4294967296;
+          }
+          return stats;
+        };
+      }
+      function chownErOk(er) {
+        if (!er)
+          return true;
+        if (er.code === "ENOSYS")
+          return true;
+        var nonroot = !process.getuid || process.getuid() !== 0;
+        if (nonroot) {
+          if (er.code === "EINVAL" || er.code === "EPERM")
+            return true;
+        }
+        return false;
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js
+var require_legacy_streams = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) {
+    var Stream = require("stream").Stream;
+    module2.exports = legacy;
+    function legacy(fs19) {
+      return {
+        ReadStream,
+        WriteStream
+      };
+      function ReadStream(path23, options) {
+        if (!(this instanceof ReadStream)) return new ReadStream(path23, options);
+        Stream.call(this);
+        var self2 = this;
+        this.path = path23;
+        this.fd = null;
+        this.readable = true;
+        this.paused = false;
+        this.flags = "r";
+        this.mode = 438;
+        this.bufferSize = 64 * 1024;
+        options = options || {};
+        var keys = Object.keys(options);
+        for (var index = 0, length = keys.length; index < length; index++) {
+          var key = keys[index];
+          this[key] = options[key];
+        }
+        if (this.encoding) this.setEncoding(this.encoding);
+        if (this.start !== void 0) {
+          if ("number" !== typeof this.start) {
+            throw TypeError("start must be a Number");
+          }
+          if (this.end === void 0) {
+            this.end = Infinity;
+          } else if ("number" !== typeof this.end) {
+            throw TypeError("end must be a Number");
+          }
+          if (this.start > this.end) {
+            throw new Error("start must be <= end");
+          }
+          this.pos = this.start;
+        }
+        if (this.fd !== null) {
+          process.nextTick(function() {
+            self2._read();
+          });
+          return;
+        }
+        fs19.open(this.path, this.flags, this.mode, function(err, fd) {
+          if (err) {
+            self2.emit("error", err);
+            self2.readable = false;
+            return;
+          }
+          self2.fd = fd;
+          self2.emit("open", fd);
+          self2._read();
+        });
+      }
+      function WriteStream(path23, options) {
+        if (!(this instanceof WriteStream)) return new WriteStream(path23, options);
+        Stream.call(this);
+        this.path = path23;
+        this.fd = null;
+        this.writable = true;
+        this.flags = "w";
+        this.encoding = "binary";
+        this.mode = 438;
+        this.bytesWritten = 0;
+        options = options || {};
+        var keys = Object.keys(options);
+        for (var index = 0, length = keys.length; index < length; index++) {
+          var key = keys[index];
+          this[key] = options[key];
+        }
+        if (this.start !== void 0) {
+          if ("number" !== typeof this.start) {
+            throw TypeError("start must be a Number");
+          }
+          if (this.start < 0) {
+            throw new Error("start must be >= zero");
+          }
+          this.pos = this.start;
+        }
+        this.busy = false;
+        this._queue = [];
+        if (this.fd === null) {
+          this._open = fs19.open;
+          this._queue.push([this._open, this.path, this.flags, this.mode, void 0]);
+          this.flush();
+        }
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/clone.js
+var require_clone = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/clone.js"(exports2, module2) {
+    "use strict";
+    module2.exports = clone;
+    var getPrototypeOf = Object.getPrototypeOf || function(obj) {
+      return obj.__proto__;
+    };
+    function clone(obj) {
+      if (obj === null || typeof obj !== "object")
+        return obj;
+      if (obj instanceof Object)
+        var copy = { __proto__: getPrototypeOf(obj) };
+      else
+        var copy = /* @__PURE__ */ Object.create(null);
+      Object.getOwnPropertyNames(obj).forEach(function(key) {
+        Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key));
+      });
+      return copy;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js
+var require_graceful_fs = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) {
+    var fs19 = require("fs");
+    var polyfills = require_polyfills();
+    var legacy = require_legacy_streams();
+    var clone = require_clone();
+    var util = require("util");
+    var gracefulQueue;
+    var previousSymbol;
+    if (typeof Symbol === "function" && typeof Symbol.for === "function") {
+      gracefulQueue = /* @__PURE__ */ Symbol.for("graceful-fs.queue");
+      previousSymbol = /* @__PURE__ */ Symbol.for("graceful-fs.previous");
+    } else {
+      gracefulQueue = "___graceful-fs.queue";
+      previousSymbol = "___graceful-fs.previous";
+    }
+    function noop() {
+    }
+    function publishQueue(context, queue2) {
+      Object.defineProperty(context, gracefulQueue, {
+        get: function() {
+          return queue2;
+        }
+      });
+    }
+    var debug = noop;
+    if (util.debuglog)
+      debug = util.debuglog("gfs4");
+    else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || ""))
+      debug = function() {
+        var m = util.format.apply(util, arguments);
+        m = "GFS4: " + m.split(/\n/).join("\nGFS4: ");
+        console.error(m);
+      };
+    if (!fs19[gracefulQueue]) {
+      queue = global[gracefulQueue] || [];
+      publishQueue(fs19, queue);
+      fs19.close = (function(fs$close) {
+        function close(fd, cb) {
+          return fs$close.call(fs19, fd, function(err) {
+            if (!err) {
+              resetQueue();
+            }
+            if (typeof cb === "function")
+              cb.apply(this, arguments);
+          });
+        }
+        Object.defineProperty(close, previousSymbol, {
+          value: fs$close
+        });
+        return close;
+      })(fs19.close);
+      fs19.closeSync = (function(fs$closeSync) {
+        function closeSync3(fd) {
+          fs$closeSync.apply(fs19, arguments);
+          resetQueue();
+        }
+        Object.defineProperty(closeSync3, previousSymbol, {
+          value: fs$closeSync
+        });
+        return closeSync3;
+      })(fs19.closeSync);
+      if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) {
+        process.on("exit", function() {
+          debug(fs19[gracefulQueue]);
+          require("assert").equal(fs19[gracefulQueue].length, 0);
+        });
+      }
+    }
+    var queue;
+    if (!global[gracefulQueue]) {
+      publishQueue(global, fs19[gracefulQueue]);
+    }
+    module2.exports = patch(clone(fs19));
+    if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs19.__patched) {
+      module2.exports = patch(fs19);
+      fs19.__patched = true;
+    }
+    function patch(fs20) {
+      polyfills(fs20);
+      fs20.gracefulify = patch;
+      fs20.createReadStream = createReadStream;
+      fs20.createWriteStream = createWriteStream;
+      var fs$readFile = fs20.readFile;
+      fs20.readFile = readFile;
+      function readFile(path23, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$readFile(path23, options, cb);
+        function go$readFile(path24, options2, cb2, startTime) {
+          return fs$readFile(path24, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$readFile, [path24, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$writeFile = fs20.writeFile;
+      fs20.writeFile = writeFile;
+      function writeFile(path23, data, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$writeFile(path23, data, options, cb);
+        function go$writeFile(path24, data2, options2, cb2, startTime) {
+          return fs$writeFile(path24, data2, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$writeFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$appendFile = fs20.appendFile;
+      if (fs$appendFile)
+        fs20.appendFile = appendFile;
+      function appendFile(path23, data, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$appendFile(path23, data, options, cb);
+        function go$appendFile(path24, data2, options2, cb2, startTime) {
+          return fs$appendFile(path24, data2, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$appendFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$copyFile = fs20.copyFile;
+      if (fs$copyFile)
+        fs20.copyFile = copyFile;
+      function copyFile(src, dest, flags, cb) {
+        if (typeof flags === "function") {
+          cb = flags;
+          flags = 0;
+        }
+        return go$copyFile(src, dest, flags, cb);
+        function go$copyFile(src2, dest2, flags2, cb2, startTime) {
+          return fs$copyFile(src2, dest2, flags2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$copyFile, [src2, dest2, flags2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$readdir = fs20.readdir;
+      fs20.readdir = readdir;
+      var noReaddirOptionVersions = /^v[0-5]\./;
+      function readdir(path23, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path24, options2, cb2, startTime) {
+          return fs$readdir(path24, fs$readdirCallback(
+            path24,
+            options2,
+            cb2,
+            startTime
+          ));
+        } : function go$readdir2(path24, options2, cb2, startTime) {
+          return fs$readdir(path24, options2, fs$readdirCallback(
+            path24,
+            options2,
+            cb2,
+            startTime
+          ));
+        };
+        return go$readdir(path23, options, cb);
+        function fs$readdirCallback(path24, options2, cb2, startTime) {
+          return function(err, files) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([
+                go$readdir,
+                [path24, options2, cb2],
+                err,
+                startTime || Date.now(),
+                Date.now()
+              ]);
+            else {
+              if (files && files.sort)
+                files.sort();
+              if (typeof cb2 === "function")
+                cb2.call(this, err, files);
+            }
+          };
+        }
+      }
+      if (process.version.substr(0, 4) === "v0.8") {
+        var legStreams = legacy(fs20);
+        ReadStream = legStreams.ReadStream;
+        WriteStream = legStreams.WriteStream;
+      }
+      var fs$ReadStream = fs20.ReadStream;
+      if (fs$ReadStream) {
+        ReadStream.prototype = Object.create(fs$ReadStream.prototype);
+        ReadStream.prototype.open = ReadStream$open;
+      }
+      var fs$WriteStream = fs20.WriteStream;
+      if (fs$WriteStream) {
+        WriteStream.prototype = Object.create(fs$WriteStream.prototype);
+        WriteStream.prototype.open = WriteStream$open;
+      }
+      Object.defineProperty(fs20, "ReadStream", {
+        get: function() {
+          return ReadStream;
+        },
+        set: function(val2) {
+          ReadStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      Object.defineProperty(fs20, "WriteStream", {
+        get: function() {
+          return WriteStream;
+        },
+        set: function(val2) {
+          WriteStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      var FileReadStream = ReadStream;
+      Object.defineProperty(fs20, "FileReadStream", {
+        get: function() {
+          return FileReadStream;
+        },
+        set: function(val2) {
+          FileReadStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      var FileWriteStream = WriteStream;
+      Object.defineProperty(fs20, "FileWriteStream", {
+        get: function() {
+          return FileWriteStream;
+        },
+        set: function(val2) {
+          FileWriteStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      function ReadStream(path23, options) {
+        if (this instanceof ReadStream)
+          return fs$ReadStream.apply(this, arguments), this;
+        else
+          return ReadStream.apply(Object.create(ReadStream.prototype), arguments);
+      }
+      function ReadStream$open() {
+        var that = this;
+        open(that.path, that.flags, that.mode, function(err, fd) {
+          if (err) {
+            if (that.autoClose)
+              that.destroy();
+            that.emit("error", err);
+          } else {
+            that.fd = fd;
+            that.emit("open", fd);
+            that.read();
+          }
+        });
+      }
+      function WriteStream(path23, options) {
+        if (this instanceof WriteStream)
+          return fs$WriteStream.apply(this, arguments), this;
+        else
+          return WriteStream.apply(Object.create(WriteStream.prototype), arguments);
+      }
+      function WriteStream$open() {
+        var that = this;
+        open(that.path, that.flags, that.mode, function(err, fd) {
+          if (err) {
+            that.destroy();
+            that.emit("error", err);
+          } else {
+            that.fd = fd;
+            that.emit("open", fd);
+          }
+        });
+      }
+      function createReadStream(path23, options) {
+        return new fs20.ReadStream(path23, options);
+      }
+      function createWriteStream(path23, options) {
+        return new fs20.WriteStream(path23, options);
+      }
+      var fs$open = fs20.open;
+      fs20.open = open;
+      function open(path23, flags, mode, cb) {
+        if (typeof mode === "function")
+          cb = mode, mode = null;
+        return go$open(path23, flags, mode, cb);
+        function go$open(path24, flags2, mode2, cb2, startTime) {
+          return fs$open(path24, flags2, mode2, function(err, fd) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$open, [path24, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      return fs20;
+    }
+    function enqueue(elem) {
+      debug("ENQUEUE", elem[0].name, elem[1]);
+      fs19[gracefulQueue].push(elem);
+      retry();
+    }
+    var retryTimer;
+    function resetQueue() {
+      var now = Date.now();
+      for (var i = 0; i < fs19[gracefulQueue].length; ++i) {
+        if (fs19[gracefulQueue][i].length > 2) {
+          fs19[gracefulQueue][i][3] = now;
+          fs19[gracefulQueue][i][4] = now;
+        }
+      }
+      retry();
+    }
+    function retry() {
+      clearTimeout(retryTimer);
+      retryTimer = void 0;
+      if (fs19[gracefulQueue].length === 0)
+        return;
+      var elem = fs19[gracefulQueue].shift();
+      var fn = elem[0];
+      var args = elem[1];
+      var err = elem[2];
+      var startTime = elem[3];
+      var lastTime = elem[4];
+      if (startTime === void 0) {
+        debug("RETRY", fn.name, args);
+        fn.apply(null, args);
+      } else if (Date.now() - startTime >= 6e4) {
+        debug("TIMEOUT", fn.name, args);
+        var cb = args.pop();
+        if (typeof cb === "function")
+          cb.call(null, err);
+      } else {
+        var sinceAttempt = Date.now() - lastTime;
+        var sinceStart = Math.max(lastTime - startTime, 1);
+        var desiredDelay = Math.min(sinceStart * 1.2, 100);
+        if (sinceAttempt >= desiredDelay) {
+          debug("RETRY", fn.name, args);
+          fn.apply(null, args.concat([startTime]));
+        } else {
+          fs19[gracefulQueue].push(elem);
+        }
+      }
+      if (retryTimer === void 0) {
+        retryTimer = setTimeout(retry, 0);
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js
+var require_fs = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js"(exports2) {
+    "use strict";
+    var u = require_universalify().fromCallback;
+    var fs19 = require_graceful_fs();
+    var api = [
+      "access",
+      "appendFile",
+      "chmod",
+      "chown",
+      "close",
+      "copyFile",
+      "cp",
+      "fchmod",
+      "fchown",
+      "fdatasync",
+      "fstat",
+      "fsync",
+      "ftruncate",
+      "futimes",
+      "glob",
+      "lchmod",
+      "lchown",
+      "lutimes",
+      "link",
+      "lstat",
+      "mkdir",
+      "mkdtemp",
+      "open",
+      "opendir",
+      "readdir",
+      "readFile",
+      "readlink",
+      "realpath",
+      "rename",
+      "rm",
+      "rmdir",
+      "stat",
+      "statfs",
+      "symlink",
+      "truncate",
+      "unlink",
+      "utimes",
+      "writeFile"
+    ].filter((key) => {
+      return typeof fs19[key] === "function";
+    });
+    Object.assign(exports2, fs19);
+    api.forEach((method) => {
+      exports2[method] = u(fs19[method]);
+    });
+    exports2.exists = function(filename, callback) {
+      if (typeof callback === "function") {
+        return fs19.exists(filename, callback);
+      }
+      return new Promise((resolve6) => {
+        return fs19.exists(filename, resolve6);
+      });
+    };
+    exports2.read = function(fd, buffer, offset, length, position, callback) {
+      if (typeof callback === "function") {
+        return fs19.read(fd, buffer, offset, length, position, callback);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.read(fd, buffer, offset, length, position, (err, bytesRead, buffer2) => {
+          if (err) return reject(err);
+          resolve6({ bytesRead, buffer: buffer2 });
+        });
+      });
+    };
+    exports2.write = function(fd, buffer, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.write(fd, buffer, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.write(fd, buffer, ...args, (err, bytesWritten, buffer2) => {
+          if (err) return reject(err);
+          resolve6({ bytesWritten, buffer: buffer2 });
+        });
+      });
+    };
+    exports2.readv = function(fd, buffers, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.readv(fd, buffers, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.readv(fd, buffers, ...args, (err, bytesRead, buffers2) => {
+          if (err) return reject(err);
+          resolve6({ bytesRead, buffers: buffers2 });
+        });
+      });
+    };
+    exports2.writev = function(fd, buffers, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.writev(fd, buffers, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.writev(fd, buffers, ...args, (err, bytesWritten, buffers2) => {
+          if (err) return reject(err);
+          resolve6({ bytesWritten, buffers: buffers2 });
+        });
+      });
+    };
+    if (typeof fs19.realpath.native === "function") {
+      exports2.realpath.native = u(fs19.realpath.native);
+    } else {
+      process.emitWarning(
+        "fs.realpath.native is not a function. Is fs being monkey-patched?",
+        "Warning",
+        "fs-extra-WARN0003"
+      );
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js
+var require_utils = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    module2.exports.checkPath = function checkPath(pth) {
+      if (process.platform === "win32") {
+        const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path23.parse(pth).root, ""));
+        if (pathHasInvalidWinCharacters) {
+          const error = new Error(`Path contains invalid characters: ${pth}`);
+          error.code = "EINVAL";
+          throw error;
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js
+var require_make_dir = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var { checkPath } = require_utils();
+    var getMode = (options) => {
+      const defaults = { mode: 511 };
+      if (typeof options === "number") return options;
+      return { ...defaults, ...options }.mode;
+    };
+    module2.exports.makeDir = async (dir, options) => {
+      checkPath(dir);
+      return fs19.mkdir(dir, {
+        mode: getMode(options),
+        recursive: true
+      });
+    };
+    module2.exports.makeDirSync = (dir, options) => {
+      checkPath(dir);
+      return fs19.mkdirSync(dir, {
+        mode: getMode(options),
+        recursive: true
+      });
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js
+var require_mkdirs = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var { makeDir: _makeDir, makeDirSync } = require_make_dir();
+    var makeDir = u(_makeDir);
+    module2.exports = {
+      mkdirs: makeDir,
+      mkdirsSync: makeDirSync,
+      // alias
+      mkdirp: makeDir,
+      mkdirpSync: makeDirSync,
+      ensureDir: makeDir,
+      ensureDirSync: makeDirSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js
+var require_path_exists = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    function pathExists(path23) {
+      return fs19.access(path23).then(() => true).catch(() => false);
+    }
+    module2.exports = {
+      pathExists: u(pathExists),
+      pathExistsSync: fs19.existsSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js
+var require_utimes = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var u = require_universalify().fromPromise;
+    async function utimesMillis(path23, atime, mtime) {
+      const fd = await fs19.open(path23, "r+");
+      let error = null;
+      try {
+        await fs19.futimes(fd, atime, mtime);
+      } catch (futimesErr) {
+        error = futimesErr;
+      } finally {
+        try {
+          await fs19.close(fd);
+        } catch (closeErr) {
+          if (!error) error = closeErr;
+        }
+      }
+      if (error) {
+        throw error;
+      }
+    }
+    function utimesMillisSync(path23, atime, mtime) {
+      const fd = fs19.openSync(path23, "r+");
+      let error = null;
+      try {
+        fs19.futimesSync(fd, atime, mtime);
+      } catch (futimesErr) {
+        error = futimesErr;
+      } finally {
+        try {
+          fs19.closeSync(fd);
+        } catch (closeErr) {
+          if (!error) error = closeErr;
+        }
+      }
+      if (error) {
+        throw error;
+      }
+    }
+    module2.exports = {
+      utimesMillis: u(utimesMillis),
+      utimesMillisSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js
+var require_stat = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var u = require_universalify().fromPromise;
+    function getStats(src, dest, opts) {
+      const statFunc = opts.dereference ? (file) => fs19.stat(file, { bigint: true }) : (file) => fs19.lstat(file, { bigint: true });
+      return Promise.all([
+        statFunc(src),
+        statFunc(dest).catch((err) => {
+          if (err.code === "ENOENT") return null;
+          throw err;
+        })
+      ]).then(([srcStat, destStat]) => ({ srcStat, destStat }));
+    }
+    function getStatsSync(src, dest, opts) {
+      let destStat;
+      const statFunc = opts.dereference ? (file) => fs19.statSync(file, { bigint: true }) : (file) => fs19.lstatSync(file, { bigint: true });
+      const srcStat = statFunc(src);
+      try {
+        destStat = statFunc(dest);
+      } catch (err) {
+        if (err.code === "ENOENT") return { srcStat, destStat: null };
+        throw err;
+      }
+      return { srcStat, destStat };
+    }
+    async function checkPaths(src, dest, funcName, opts) {
+      const { srcStat, destStat } = await getStats(src, dest, opts);
+      if (destStat) {
+        if (areIdentical(srcStat, destStat)) {
+          const srcBaseName = path23.basename(src);
+          const destBaseName = path23.basename(dest);
+          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
+            return { srcStat, destStat, isChangingCase: true };
+          }
+          throw new Error("Source and destination must not be the same.");
+        }
+        if (srcStat.isDirectory() && !destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`);
+        }
+        if (!srcStat.isDirectory() && destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`);
+        }
+      }
+      if (srcStat.isDirectory() && isSrcSubdir(src, dest)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return { srcStat, destStat };
+    }
+    function checkPathsSync(src, dest, funcName, opts) {
+      const { srcStat, destStat } = getStatsSync(src, dest, opts);
+      if (destStat) {
+        if (areIdentical(srcStat, destStat)) {
+          const srcBaseName = path23.basename(src);
+          const destBaseName = path23.basename(dest);
+          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
+            return { srcStat, destStat, isChangingCase: true };
+          }
+          throw new Error("Source and destination must not be the same.");
+        }
+        if (srcStat.isDirectory() && !destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`);
+        }
+        if (!srcStat.isDirectory() && destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`);
+        }
+      }
+      if (srcStat.isDirectory() && isSrcSubdir(src, dest)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return { srcStat, destStat };
+    }
+    async function checkParentPaths(src, srcStat, dest, funcName) {
+      const srcParent = path23.resolve(path23.dirname(src));
+      const destParent = path23.resolve(path23.dirname(dest));
+      if (destParent === srcParent || destParent === path23.parse(destParent).root) return;
+      let destStat;
+      try {
+        destStat = await fs19.stat(destParent, { bigint: true });
+      } catch (err) {
+        if (err.code === "ENOENT") return checkParentPaths(src, srcStat, destParent, funcName);
+        throw err;
+      }
+      if (areIdentical(srcStat, destStat)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return checkParentPaths(src, srcStat, destParent, funcName);
+    }
+    function checkParentPathsSync(src, srcStat, dest, funcName) {
+      const srcParent = path23.resolve(path23.dirname(src));
+      const destParent = path23.resolve(path23.dirname(dest));
+      if (destParent === srcParent || destParent === path23.parse(destParent).root) return;
+      let destStat;
+      try {
+        destStat = fs19.statSync(destParent, { bigint: true });
+      } catch (err) {
+        if (err.code === "ENOENT") return checkParentPathsSync(src, srcStat, destParent, funcName);
+        throw err;
+      }
+      if (areIdentical(srcStat, destStat)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return checkParentPathsSync(src, srcStat, destParent, funcName);
+    }
+    function areIdentical(srcStat, destStat) {
+      return destStat.ino !== void 0 && destStat.dev !== void 0 && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev;
+    }
+    function isSrcSubdir(src, dest) {
+      const srcArr = path23.resolve(src).split(path23.sep).filter((i) => i);
+      const destArr = path23.resolve(dest).split(path23.sep).filter((i) => i);
+      return srcArr.every((cur, i) => destArr[i] === cur);
+    }
+    function errMsg(src, dest, funcName) {
+      return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.`;
+    }
+    module2.exports = {
+      // checkPaths
+      checkPaths: u(checkPaths),
+      checkPathsSync,
+      // checkParent
+      checkParentPaths: u(checkParentPaths),
+      checkParentPathsSync,
+      // Misc
+      isSrcSubdir,
+      areIdentical
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js
+var require_async = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js"(exports2, module2) {
+    "use strict";
+    async function asyncIteratorConcurrentProcess(iterator, fn) {
+      const promises = [];
+      for await (const item of iterator) {
+        promises.push(
+          fn(item).then(
+            () => null,
+            (err) => err ?? new Error("unknown error")
+          )
+        );
+      }
+      await Promise.all(
+        promises.map(
+          (promise) => promise.then((possibleErr) => {
+            if (possibleErr !== null) throw possibleErr;
+          })
+        )
+      );
+    }
+    module2.exports = {
+      asyncIteratorConcurrentProcess
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js
+var require_copy = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var { mkdirs } = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var { utimesMillis } = require_utimes();
+    var stat = require_stat();
+    var { asyncIteratorConcurrentProcess } = require_async();
+    async function copy(src, dest, opts = {}) {
+      if (typeof opts === "function") {
+        opts = { filter: opts };
+      }
+      opts.clobber = "clobber" in opts ? !!opts.clobber : true;
+      opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber;
+      if (opts.preserveTimestamps && process.arch === "ia32") {
+        process.emitWarning(
+          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
+          "Warning",
+          "fs-extra-WARN0001"
+        );
+      }
+      const { srcStat, destStat } = await stat.checkPaths(src, dest, "copy", opts);
+      await stat.checkParentPaths(src, srcStat, dest, "copy");
+      const include = await runFilter(src, dest, opts);
+      if (!include) return;
+      const destParent = path23.dirname(dest);
+      const dirExists = await pathExists(destParent);
+      if (!dirExists) {
+        await mkdirs(destParent);
+      }
+      await getStatsAndPerformCopy(destStat, src, dest, opts);
+    }
+    async function runFilter(src, dest, opts) {
+      if (!opts.filter) return true;
+      return opts.filter(src, dest);
+    }
+    async function getStatsAndPerformCopy(destStat, src, dest, opts) {
+      const statFn = opts.dereference ? fs19.stat : fs19.lstat;
+      const srcStat = await statFn(src);
+      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts);
+      if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts);
+      if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts);
+      if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`);
+      if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`);
+      throw new Error(`Unknown file: ${src}`);
+    }
+    async function onFile(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return copyFile(srcStat, src, dest, opts);
+      if (opts.overwrite) {
+        await fs19.unlink(dest);
+        return copyFile(srcStat, src, dest, opts);
+      }
+      if (opts.errorOnExist) {
+        throw new Error(`'${dest}' already exists`);
+      }
+    }
+    async function copyFile(srcStat, src, dest, opts) {
+      await fs19.copyFile(src, dest);
+      if (opts.preserveTimestamps) {
+        if (fileIsNotWritable(srcStat.mode)) {
+          await makeFileWritable(dest, srcStat.mode);
+        }
+        const updatedSrcStat = await fs19.stat(src);
+        await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
+      }
+      return fs19.chmod(dest, srcStat.mode);
+    }
+    function fileIsNotWritable(srcMode) {
+      return (srcMode & 128) === 0;
+    }
+    function makeFileWritable(dest, srcMode) {
+      return fs19.chmod(dest, srcMode | 128);
+    }
+    async function onDir(srcStat, destStat, src, dest, opts) {
+      if (!destStat) {
+        await fs19.mkdir(dest);
+      }
+      await asyncIteratorConcurrentProcess(await fs19.opendir(src), async (item) => {
+        const srcItem = path23.join(src, item.name);
+        const destItem = path23.join(dest, item.name);
+        const include = await runFilter(srcItem, destItem, opts);
+        if (include) {
+          const { destStat: destStat2 } = await stat.checkPaths(srcItem, destItem, "copy", opts);
+          await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts);
+        }
+      });
+      if (!destStat) {
+        await fs19.chmod(dest, srcStat.mode);
+      }
+    }
+    async function onLink(destStat, src, dest, opts) {
+      let resolvedSrc = await fs19.readlink(src);
+      if (opts.dereference) {
+        resolvedSrc = path23.resolve(process.cwd(), resolvedSrc);
+      }
+      if (!destStat) {
+        return fs19.symlink(resolvedSrc, dest);
+      }
+      let resolvedDest = null;
+      try {
+        resolvedDest = await fs19.readlink(dest);
+      } catch (e) {
+        if (e.code === "EINVAL" || e.code === "UNKNOWN") return fs19.symlink(resolvedSrc, dest);
+        throw e;
+      }
+      if (opts.dereference) {
+        resolvedDest = path23.resolve(process.cwd(), resolvedDest);
+      }
+      if (resolvedSrc !== resolvedDest) {
+        if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
+          throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
+        }
+        if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) {
+          throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
+        }
+      }
+      await fs19.unlink(dest);
+      return fs19.symlink(resolvedSrc, dest);
+    }
+    module2.exports = copy;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js
+var require_copy_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var path23 = require("path");
+    var mkdirsSync = require_mkdirs().mkdirsSync;
+    var utimesMillisSync = require_utimes().utimesMillisSync;
+    var stat = require_stat();
+    function copySync2(src, dest, opts) {
+      if (typeof opts === "function") {
+        opts = { filter: opts };
+      }
+      opts = opts || {};
+      opts.clobber = "clobber" in opts ? !!opts.clobber : true;
+      opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber;
+      if (opts.preserveTimestamps && process.arch === "ia32") {
+        process.emitWarning(
+          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
+          "Warning",
+          "fs-extra-WARN0002"
+        );
+      }
+      const { srcStat, destStat } = stat.checkPathsSync(src, dest, "copy", opts);
+      stat.checkParentPathsSync(src, srcStat, dest, "copy");
+      if (opts.filter && !opts.filter(src, dest)) return;
+      const destParent = path23.dirname(dest);
+      if (!fs19.existsSync(destParent)) mkdirsSync(destParent);
+      return getStats(destStat, src, dest, opts);
+    }
+    function getStats(destStat, src, dest, opts) {
+      const statSync6 = opts.dereference ? fs19.statSync : fs19.lstatSync;
+      const srcStat = statSync6(src);
+      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts);
+      else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts);
+      else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts);
+      else if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`);
+      else if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`);
+      throw new Error(`Unknown file: ${src}`);
+    }
+    function onFile(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return copyFile(srcStat, src, dest, opts);
+      return mayCopyFile(srcStat, src, dest, opts);
+    }
+    function mayCopyFile(srcStat, src, dest, opts) {
+      if (opts.overwrite) {
+        fs19.unlinkSync(dest);
+        return copyFile(srcStat, src, dest, opts);
+      } else if (opts.errorOnExist) {
+        throw new Error(`'${dest}' already exists`);
+      }
+    }
+    function copyFile(srcStat, src, dest, opts) {
+      fs19.copyFileSync(src, dest);
+      if (opts.preserveTimestamps) handleTimestamps(srcStat.mode, src, dest);
+      return setDestMode(dest, srcStat.mode);
+    }
+    function handleTimestamps(srcMode, src, dest) {
+      if (fileIsNotWritable(srcMode)) makeFileWritable(dest, srcMode);
+      return setDestTimestamps(src, dest);
+    }
+    function fileIsNotWritable(srcMode) {
+      return (srcMode & 128) === 0;
+    }
+    function makeFileWritable(dest, srcMode) {
+      return setDestMode(dest, srcMode | 128);
+    }
+    function setDestMode(dest, srcMode) {
+      return fs19.chmodSync(dest, srcMode);
+    }
+    function setDestTimestamps(src, dest) {
+      const updatedSrcStat = fs19.statSync(src);
+      return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
+    }
+    function onDir(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return mkDirAndCopy(srcStat.mode, src, dest, opts);
+      return copyDir(src, dest, opts);
+    }
+    function mkDirAndCopy(srcMode, src, dest, opts) {
+      fs19.mkdirSync(dest);
+      copyDir(src, dest, opts);
+      return setDestMode(dest, srcMode);
+    }
+    function copyDir(src, dest, opts) {
+      const dir = fs19.opendirSync(src);
+      try {
+        let dirent;
+        while ((dirent = dir.readSync()) !== null) {
+          copyDirItem(dirent.name, src, dest, opts);
+        }
+      } finally {
+        dir.closeSync();
+      }
+    }
+    function copyDirItem(item, src, dest, opts) {
+      const srcItem = path23.join(src, item);
+      const destItem = path23.join(dest, item);
+      if (opts.filter && !opts.filter(srcItem, destItem)) return;
+      const { destStat } = stat.checkPathsSync(srcItem, destItem, "copy", opts);
+      return getStats(destStat, srcItem, destItem, opts);
+    }
+    function onLink(destStat, src, dest, opts) {
+      let resolvedSrc = fs19.readlinkSync(src);
+      if (opts.dereference) {
+        resolvedSrc = path23.resolve(process.cwd(), resolvedSrc);
+      }
+      if (!destStat) {
+        return fs19.symlinkSync(resolvedSrc, dest);
+      } else {
+        let resolvedDest;
+        try {
+          resolvedDest = fs19.readlinkSync(dest);
+        } catch (err) {
+          if (err.code === "EINVAL" || err.code === "UNKNOWN") return fs19.symlinkSync(resolvedSrc, dest);
+          throw err;
+        }
+        if (opts.dereference) {
+          resolvedDest = path23.resolve(process.cwd(), resolvedDest);
+        }
+        if (resolvedSrc !== resolvedDest) {
+          if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
+            throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
+          }
+          if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) {
+            throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
+          }
+        }
+        return copyLink(resolvedSrc, dest);
+      }
+    }
+    function copyLink(resolvedSrc, dest) {
+      fs19.unlinkSync(dest);
+      return fs19.symlinkSync(resolvedSrc, dest);
+    }
+    module2.exports = copySync2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js
+var require_copy2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    module2.exports = {
+      copy: u(require_copy()),
+      copySync: require_copy_sync()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js
+var require_remove = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var u = require_universalify().fromCallback;
+    function remove(path23, callback) {
+      fs19.rm(path23, { recursive: true, force: true }, callback);
+    }
+    function removeSync2(path23) {
+      fs19.rmSync(path23, { recursive: true, force: true });
+    }
+    module2.exports = {
+      remove: u(remove),
+      removeSync: removeSync2
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js
+var require_empty = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var mkdir = require_mkdirs();
+    var remove = require_remove();
+    var emptyDir = u(async function emptyDir2(dir) {
+      let items;
+      try {
+        items = await fs19.readdir(dir);
+      } catch {
+        return mkdir.mkdirs(dir);
+      }
+      return Promise.all(items.map((item) => remove.remove(path23.join(dir, item))));
+    });
+    function emptyDirSync(dir) {
+      let items;
+      try {
+        items = fs19.readdirSync(dir);
+      } catch {
+        return mkdir.mkdirsSync(dir);
+      }
+      items.forEach((item) => {
+        item = path23.join(dir, item);
+        remove.removeSync(item);
+      });
+    }
+    module2.exports = {
+      emptyDirSync,
+      emptydirSync: emptyDirSync,
+      emptyDir,
+      emptydir: emptyDir
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js
+var require_file = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var mkdir = require_mkdirs();
+    async function createFile(file) {
+      let stats;
+      try {
+        stats = await fs19.stat(file);
+      } catch {
+      }
+      if (stats && stats.isFile()) return;
+      const dir = path23.dirname(file);
+      let dirStats = null;
+      try {
+        dirStats = await fs19.stat(dir);
+      } catch (err) {
+        if (err.code === "ENOENT") {
+          await mkdir.mkdirs(dir);
+          await fs19.writeFile(file, "");
+          return;
+        } else {
+          throw err;
+        }
+      }
+      if (dirStats.isDirectory()) {
+        await fs19.writeFile(file, "");
+      } else {
+        await fs19.readdir(dir);
+      }
+    }
+    function createFileSync(file) {
+      let stats;
+      try {
+        stats = fs19.statSync(file);
+      } catch {
+      }
+      if (stats && stats.isFile()) return;
+      const dir = path23.dirname(file);
+      try {
+        if (!fs19.statSync(dir).isDirectory()) {
+          fs19.readdirSync(dir);
+        }
+      } catch (err) {
+        if (err && err.code === "ENOENT") mkdir.mkdirsSync(dir);
+        else throw err;
+      }
+      fs19.writeFileSync(file, "");
+    }
+    module2.exports = {
+      createFile: u(createFile),
+      createFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js
+var require_link = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var mkdir = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var { areIdentical } = require_stat();
+    async function createLink(srcpath, dstpath) {
+      let dstStat;
+      try {
+        dstStat = await fs19.lstat(dstpath, { bigint: true });
+      } catch {
+      }
+      let srcStat;
+      try {
+        srcStat = await fs19.lstat(srcpath, { bigint: true });
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureLink");
+        throw err;
+      }
+      if (dstStat && areIdentical(srcStat, dstStat)) return;
+      const dir = path23.dirname(dstpath);
+      const dirExists = await pathExists(dir);
+      if (!dirExists) {
+        await mkdir.mkdirs(dir);
+      }
+      await fs19.link(srcpath, dstpath);
+    }
+    function createLinkSync(srcpath, dstpath) {
+      let dstStat;
+      try {
+        dstStat = fs19.lstatSync(dstpath, { bigint: true });
+      } catch {
+      }
+      try {
+        const srcStat = fs19.lstatSync(srcpath, { bigint: true });
+        if (dstStat && areIdentical(srcStat, dstStat)) return;
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureLink");
+        throw err;
+      }
+      const dir = path23.dirname(dstpath);
+      const dirExists = fs19.existsSync(dir);
+      if (dirExists) return fs19.linkSync(srcpath, dstpath);
+      mkdir.mkdirsSync(dir);
+      return fs19.linkSync(srcpath, dstpath);
+    }
+    module2.exports = {
+      createLink: u(createLink),
+      createLinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js
+var require_symlink_paths = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var { pathExists } = require_path_exists();
+    var u = require_universalify().fromPromise;
+    async function symlinkPaths(srcpath, dstpath) {
+      if (path23.isAbsolute(srcpath)) {
+        try {
+          await fs19.lstat(srcpath);
+        } catch (err) {
+          err.message = err.message.replace("lstat", "ensureSymlink");
+          throw err;
+        }
+        return {
+          toCwd: srcpath,
+          toDst: srcpath
+        };
+      }
+      const dstdir = path23.dirname(dstpath);
+      const relativeToDst = path23.join(dstdir, srcpath);
+      const exists = await pathExists(relativeToDst);
+      if (exists) {
+        return {
+          toCwd: relativeToDst,
+          toDst: srcpath
+        };
+      }
+      try {
+        await fs19.lstat(srcpath);
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureSymlink");
+        throw err;
+      }
+      return {
+        toCwd: srcpath,
+        toDst: path23.relative(dstdir, srcpath)
+      };
+    }
+    function symlinkPathsSync(srcpath, dstpath) {
+      if (path23.isAbsolute(srcpath)) {
+        const exists2 = fs19.existsSync(srcpath);
+        if (!exists2) throw new Error("absolute srcpath does not exist");
+        return {
+          toCwd: srcpath,
+          toDst: srcpath
+        };
+      }
+      const dstdir = path23.dirname(dstpath);
+      const relativeToDst = path23.join(dstdir, srcpath);
+      const exists = fs19.existsSync(relativeToDst);
+      if (exists) {
+        return {
+          toCwd: relativeToDst,
+          toDst: srcpath
+        };
+      }
+      const srcExists = fs19.existsSync(srcpath);
+      if (!srcExists) throw new Error("relative srcpath does not exist");
+      return {
+        toCwd: srcpath,
+        toDst: path23.relative(dstdir, srcpath)
+      };
+    }
+    module2.exports = {
+      symlinkPaths: u(symlinkPaths),
+      symlinkPathsSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js
+var require_symlink_type = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var u = require_universalify().fromPromise;
+    async function symlinkType(srcpath, type) {
+      if (type) return type;
+      let stats;
+      try {
+        stats = await fs19.lstat(srcpath);
+      } catch {
+        return "file";
+      }
+      return stats && stats.isDirectory() ? "dir" : "file";
+    }
+    function symlinkTypeSync(srcpath, type) {
+      if (type) return type;
+      let stats;
+      try {
+        stats = fs19.lstatSync(srcpath);
+      } catch {
+        return "file";
+      }
+      return stats && stats.isDirectory() ? "dir" : "file";
+    }
+    module2.exports = {
+      symlinkType: u(symlinkType),
+      symlinkTypeSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js
+var require_symlink = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var { mkdirs, mkdirsSync } = require_mkdirs();
+    var { symlinkPaths, symlinkPathsSync } = require_symlink_paths();
+    var { symlinkType, symlinkTypeSync } = require_symlink_type();
+    var { pathExists } = require_path_exists();
+    var { areIdentical } = require_stat();
+    async function createSymlink(srcpath, dstpath, type) {
+      let stats;
+      try {
+        stats = await fs19.lstat(dstpath);
+      } catch {
+      }
+      if (stats && stats.isSymbolicLink()) {
+        let srcStat;
+        if (path23.isAbsolute(srcpath)) {
+          srcStat = await fs19.stat(srcpath, { bigint: true });
+        } else {
+          const dstdir = path23.dirname(dstpath);
+          const relativeToDst = path23.join(dstdir, srcpath);
+          try {
+            srcStat = await fs19.stat(relativeToDst, { bigint: true });
+          } catch {
+            srcStat = await fs19.stat(srcpath, { bigint: true });
+          }
+        }
+        const dstStat = await fs19.stat(dstpath, { bigint: true });
+        if (areIdentical(srcStat, dstStat)) return;
+      }
+      const relative7 = await symlinkPaths(srcpath, dstpath);
+      srcpath = relative7.toDst;
+      const toType = await symlinkType(relative7.toCwd, type);
+      const dir = path23.dirname(dstpath);
+      if (!await pathExists(dir)) {
+        await mkdirs(dir);
+      }
+      return fs19.symlink(srcpath, dstpath, toType);
+    }
+    function createSymlinkSync(srcpath, dstpath, type) {
+      let stats;
+      try {
+        stats = fs19.lstatSync(dstpath);
+      } catch {
+      }
+      if (stats && stats.isSymbolicLink()) {
+        let srcStat;
+        if (path23.isAbsolute(srcpath)) {
+          srcStat = fs19.statSync(srcpath, { bigint: true });
+        } else {
+          const dstdir = path23.dirname(dstpath);
+          const relativeToDst = path23.join(dstdir, srcpath);
+          try {
+            srcStat = fs19.statSync(relativeToDst, { bigint: true });
+          } catch {
+            srcStat = fs19.statSync(srcpath, { bigint: true });
+          }
+        }
+        const dstStat = fs19.statSync(dstpath, { bigint: true });
+        if (areIdentical(srcStat, dstStat)) return;
+      }
+      const relative7 = symlinkPathsSync(srcpath, dstpath);
+      srcpath = relative7.toDst;
+      type = symlinkTypeSync(relative7.toCwd, type);
+      const dir = path23.dirname(dstpath);
+      const exists = fs19.existsSync(dir);
+      if (exists) return fs19.symlinkSync(srcpath, dstpath, type);
+      mkdirsSync(dir);
+      return fs19.symlinkSync(srcpath, dstpath, type);
+    }
+    module2.exports = {
+      createSymlink: u(createSymlink),
+      createSymlinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js
+var require_ensure = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) {
+    "use strict";
+    var { createFile, createFileSync } = require_file();
+    var { createLink, createLinkSync } = require_link();
+    var { createSymlink, createSymlinkSync } = require_symlink();
+    module2.exports = {
+      // file
+      createFile,
+      createFileSync,
+      ensureFile: createFile,
+      ensureFileSync: createFileSync,
+      // link
+      createLink,
+      createLinkSync,
+      ensureLink: createLink,
+      ensureLinkSync: createLinkSync,
+      // symlink
+      createSymlink,
+      createSymlinkSync,
+      ensureSymlink: createSymlink,
+      ensureSymlinkSync: createSymlinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/jsonfile/utils.js
+var require_utils2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/jsonfile/utils.js"(exports2, module2) {
+    function stringify3(obj, { EOL = "\n", finalEOL = true, replacer = null, spaces } = {}) {
+      const EOF = finalEOL ? EOL : "";
+      const str = JSON.stringify(obj, replacer, spaces);
+      if (str === void 0) {
+        throw new TypeError(`Converting ${typeof obj} value to JSON is not supported`);
+      }
+      return str.replace(/\n/g, EOL) + EOF;
+    }
+    function stripBom(content) {
+      if (Buffer.isBuffer(content)) content = content.toString("utf8");
+      return content.replace(/^\uFEFF/, "");
+    }
+    module2.exports = { stringify: stringify3, stripBom };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/jsonfile/index.js
+var require_jsonfile = __commonJS({
+  "../../aws-cdk-lib/node_modules/jsonfile/index.js"(exports2, module2) {
+    var _fs;
+    try {
+      _fs = require_graceful_fs();
+    } catch (_) {
+      _fs = require("fs");
+    }
+    var universalify = require_universalify();
+    var { stringify: stringify3, stripBom } = require_utils2();
+    async function _readFile(file, options = {}) {
+      if (typeof options === "string") {
+        options = { encoding: options };
+      }
+      const fs19 = options.fs || _fs;
+      const shouldThrow = "throws" in options ? options.throws : true;
+      let data = await universalify.fromCallback(fs19.readFile)(file, options);
+      data = stripBom(data);
+      let obj;
+      try {
+        obj = JSON.parse(data, options ? options.reviver : null);
+      } catch (err) {
+        if (shouldThrow) {
+          err.message = `${file}: ${err.message}`;
+          throw err;
+        } else {
+          return null;
+        }
+      }
+      return obj;
+    }
+    var readFile = universalify.fromPromise(_readFile);
+    function readFileSync7(file, options = {}) {
+      if (typeof options === "string") {
+        options = { encoding: options };
+      }
+      const fs19 = options.fs || _fs;
+      const shouldThrow = "throws" in options ? options.throws : true;
+      try {
+        let content = fs19.readFileSync(file, options);
+        content = stripBom(content);
+        return JSON.parse(content, options.reviver);
+      } catch (err) {
+        if (shouldThrow) {
+          err.message = `${file}: ${err.message}`;
+          throw err;
+        } else {
+          return null;
+        }
+      }
+    }
+    async function _writeFile(file, obj, options = {}) {
+      const fs19 = options.fs || _fs;
+      const str = stringify3(obj, options);
+      await universalify.fromCallback(fs19.writeFile)(file, str, options);
+    }
+    var writeFile = universalify.fromPromise(_writeFile);
+    function writeFileSync10(file, obj, options = {}) {
+      const fs19 = options.fs || _fs;
+      const str = stringify3(obj, options);
+      return fs19.writeFileSync(file, str, options);
+    }
+    module2.exports = {
+      readFile,
+      readFileSync: readFileSync7,
+      writeFile,
+      writeFileSync: writeFileSync10
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js
+var require_jsonfile2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) {
+    "use strict";
+    var jsonFile = require_jsonfile();
+    module2.exports = {
+      // jsonfile exports
+      readJson: jsonFile.readFile,
+      readJsonSync: jsonFile.readFileSync,
+      writeJson: jsonFile.writeFile,
+      writeJsonSync: jsonFile.writeFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js
+var require_output_file = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var mkdir = require_mkdirs();
+    var pathExists = require_path_exists().pathExists;
+    async function outputFile(file, data, encoding = "utf-8") {
+      const dir = path23.dirname(file);
+      if (!await pathExists(dir)) {
+        await mkdir.mkdirs(dir);
+      }
+      return fs19.writeFile(file, data, encoding);
+    }
+    function outputFileSync(file, ...args) {
+      const dir = path23.dirname(file);
+      if (!fs19.existsSync(dir)) {
+        mkdir.mkdirsSync(dir);
+      }
+      fs19.writeFileSync(file, ...args);
+    }
+    module2.exports = {
+      outputFile: u(outputFile),
+      outputFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js
+var require_output_json = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) {
+    "use strict";
+    var { stringify: stringify3 } = require_utils2();
+    var { outputFile } = require_output_file();
+    async function outputJson(file, data, options = {}) {
+      const str = stringify3(data, options);
+      await outputFile(file, str, options);
+    }
+    module2.exports = outputJson;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js
+var require_output_json_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) {
+    "use strict";
+    var { stringify: stringify3 } = require_utils2();
+    var { outputFileSync } = require_output_file();
+    function outputJsonSync(file, data, options) {
+      const str = stringify3(data, options);
+      outputFileSync(file, str, options);
+    }
+    module2.exports = outputJsonSync;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js
+var require_json = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var jsonFile = require_jsonfile2();
+    jsonFile.outputJson = u(require_output_json());
+    jsonFile.outputJsonSync = require_output_json_sync();
+    jsonFile.outputJSON = jsonFile.outputJson;
+    jsonFile.outputJSONSync = jsonFile.outputJsonSync;
+    jsonFile.writeJSON = jsonFile.writeJson;
+    jsonFile.writeJSONSync = jsonFile.writeJsonSync;
+    jsonFile.readJSON = jsonFile.readJson;
+    jsonFile.readJSONSync = jsonFile.readJsonSync;
+    module2.exports = jsonFile;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js
+var require_move = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var { copy } = require_copy2();
+    var { remove } = require_remove();
+    var { mkdirp } = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var stat = require_stat();
+    async function move(src, dest, opts = {}) {
+      const overwrite = opts.overwrite || opts.clobber || false;
+      const { srcStat, isChangingCase = false } = await stat.checkPaths(src, dest, "move", opts);
+      await stat.checkParentPaths(src, srcStat, dest, "move");
+      const destParent = path23.dirname(dest);
+      const parsedParentPath = path23.parse(destParent);
+      if (parsedParentPath.root !== destParent) {
+        await mkdirp(destParent);
+      }
+      return doRename(src, dest, overwrite, isChangingCase);
+    }
+    async function doRename(src, dest, overwrite, isChangingCase) {
+      if (!isChangingCase) {
+        if (overwrite) {
+          await remove(dest);
+        } else if (await pathExists(dest)) {
+          throw new Error("dest already exists.");
+        }
+      }
+      try {
+        await fs19.rename(src, dest);
+      } catch (err) {
+        if (err.code !== "EXDEV") {
+          throw err;
+        }
+        await moveAcrossDevice(src, dest, overwrite);
+      }
+    }
+    async function moveAcrossDevice(src, dest, overwrite) {
+      const opts = {
+        overwrite,
+        errorOnExist: true,
+        preserveTimestamps: true
+      };
+      await copy(src, dest, opts);
+      return remove(src);
+    }
+    module2.exports = move;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js
+var require_move_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var path23 = require("path");
+    var copySync2 = require_copy2().copySync;
+    var removeSync2 = require_remove().removeSync;
+    var mkdirpSync = require_mkdirs().mkdirpSync;
+    var stat = require_stat();
+    function moveSync(src, dest, opts) {
+      opts = opts || {};
+      const overwrite = opts.overwrite || opts.clobber || false;
+      const { srcStat, isChangingCase = false } = stat.checkPathsSync(src, dest, "move", opts);
+      stat.checkParentPathsSync(src, srcStat, dest, "move");
+      if (!isParentRoot(dest)) mkdirpSync(path23.dirname(dest));
+      return doRename(src, dest, overwrite, isChangingCase);
+    }
+    function isParentRoot(dest) {
+      const parent = path23.dirname(dest);
+      const parsedPath = path23.parse(parent);
+      return parsedPath.root === parent;
+    }
+    function doRename(src, dest, overwrite, isChangingCase) {
+      if (isChangingCase) return rename(src, dest, overwrite);
+      if (overwrite) {
+        removeSync2(dest);
+        return rename(src, dest, overwrite);
+      }
+      if (fs19.existsSync(dest)) throw new Error("dest already exists.");
+      return rename(src, dest, overwrite);
+    }
+    function rename(src, dest, overwrite) {
+      try {
+        fs19.renameSync(src, dest);
+      } catch (err) {
+        if (err.code !== "EXDEV") throw err;
+        return moveAcrossDevice(src, dest, overwrite);
+      }
+    }
+    function moveAcrossDevice(src, dest, overwrite) {
+      const opts = {
+        overwrite,
+        errorOnExist: true,
+        preserveTimestamps: true
+      };
+      copySync2(src, dest, opts);
+      return removeSync2(src);
+    }
+    module2.exports = moveSync;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js
+var require_move2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    module2.exports = {
+      move: u(require_move()),
+      moveSync: require_move_sync()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/index.js
+var require_lib5 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/index.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // Export promiseified graceful-fs:
+      ...require_fs(),
+      // Export extra methods:
+      ...require_copy2(),
+      ...require_empty(),
+      ...require_ensure(),
+      ...require_json(),
+      ...require_mkdirs(),
+      ...require_move2(),
+      ...require_output_file(),
+      ...require_path_exists(),
+      ...require_remove()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts
+var AWS_CDK_CONSTRUCTOR_PROPS;
+var init_classes = __esm({
+  "../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts"() {
+    "use strict";
+    AWS_CDK_CONSTRUCTOR_PROPS = {
+      "@aws-cdk.aws-amplify-alpha": {
+        "App": {
+          "appName": "*",
+          "sourceCodeProvider": "*",
+          "autoBranchCreation": {
+            "patterns": "*",
+            "basicAuth": "*",
+            "buildSpec": "*",
+            "autoBuild": "boolean",
+            "pullRequestPreview": "boolean",
+            "environmentVariables": "*",
+            "pullRequestEnvironmentName": "*",
+            "stage": "*"
+          },
+          "autoBranchDeletion": "boolean",
+          "basicAuth": "*",
+          "buildSpec": "*",
+          "customResponseHeaders": {
+            "appRoot": "*",
+            "pattern": "*",
+            "headers": "*"
+          },
+          "customRules": "*",
+          "description": "*",
+          "environmentVariables": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "platform": "Platform",
+          "cacheConfigType": "CacheConfigType",
+          "computeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "buildComputeType": "BuildComputeType",
+          "addCustomRule": [
+            "*"
+          ],
+          "addEnvironment": [
+            "*",
+            "*"
+          ],
+          "addAutoBranchEnvironment": [
+            "*",
+            "*"
+          ],
+          "addBranch": [
+            "*",
+            {
+              "basicAuth": "*",
+              "branchName": "*",
+              "buildSpec": "*",
+              "description": "*",
+              "autoBuild": "boolean",
+              "pullRequestPreview": "boolean",
+              "environmentVariables": "*",
+              "pullRequestEnvironmentName": "*",
+              "stage": "*",
+              "asset": "*",
+              "performanceMode": "boolean",
+              "skewProtection": "boolean",
+              "computeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ],
+          "addDomain": [
+            "*",
+            {
+              "domainName": "*",
+              "subDomains": {
+                "branch": {
+                  "branchName": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "prefix": "*"
+              },
+              "enableAutoSubdomain": "boolean",
+              "autoSubdomainCreationPatterns": "*",
+              "customCertificate": {
+                "certificateArn": "*"
+              }
+            }
+          ]
+        },
+        "Branch": {
+          "app": {
+            "appId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "basicAuth": "*",
+          "branchName": "*",
+          "buildSpec": "*",
+          "description": "*",
+          "autoBuild": "boolean",
+          "pullRequestPreview": "boolean",
+          "environmentVariables": "*",
+          "pullRequestEnvironmentName": "*",
+          "stage": "*",
+          "asset": "*",
+          "performanceMode": "boolean",
+          "skewProtection": "boolean",
+          "computeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addEnvironment": [
+            "*",
+            "*"
+          ]
+        },
+        "Domain": {
+          "app": {
+            "appId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoSubDomainIamRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "domainName": "*",
+          "subDomains": {
+            "branch": {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "prefix": "*"
+          },
+          "enableAutoSubdomain": "boolean",
+          "autoSubdomainCreationPatterns": "*",
+          "customCertificate": {
+            "certificateArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mapSubDomain": [
+            {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "*"
+          ],
+          "mapRoot": [
+            {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-apprunner-alpha": {
+        "AutoScalingConfiguration": {
+          "autoScalingConfigurationName": "*",
+          "maxConcurrency": "*",
+          "maxSize": "*",
+          "minSize": "*"
+        },
+        "ObservabilityConfiguration": {
+          "observabilityConfigurationName": "*",
+          "traceConfigurationVendor": "TraceConfigurationVendor"
+        },
+        "Service": {
+          "source": "*",
+          "autoDeploymentsEnabled": "boolean",
+          "autoScalingConfiguration": {
+            "autoScalingConfigurationArn": "*",
+            "autoScalingConfigurationName": "*",
+            "autoScalingConfigurationRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cpu": "*",
+          "memory": "*",
+          "accessRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serviceName": "*",
+          "vpcConnector": {
+            "vpcConnectorName": "*",
+            "vpcConnectorArn": "*",
+            "vpcConnectorRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "isPubliclyAccessible": "boolean",
+          "healthCheck": "*",
+          "kmsKey": "*",
+          "ipAddressType": "IpAddressType",
+          "observabilityConfiguration": {
+            "observabilityConfigurationName": "*",
+            "observabilityConfigurationArn": "*",
+            "observabilityConfigurationRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addToRolePolicy": [
+            "*"
+          ],
+          "addEnvironmentVariable": [
+            "*",
+            "*"
+          ],
+          "addSecret": [
+            "*",
+            "*"
+          ]
+        },
+        "VpcConnector": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcConnectorName": "*"
+        },
+        "VpcIngressConnection": {
+          "vpcIngressConnectionName": "*",
+          "service": {
+            "serviceName": "*",
+            "serviceArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "interfaceVpcEndpoint": {
+            "vpcEndpointId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          }
+        }
+      },
+      "@aws-cdk.aws-cloud9-alpha": {
+        "Ec2Environment": {
+          "owner": "*",
+          "instanceType": "*",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ec2EnvironmentName": "*",
+          "description": "*",
+          "clonedRepositories": "*",
+          "connectionType": "ConnectionType",
+          "imageId": "ImageId",
+          "automaticStop": "*"
+        }
+      },
+      "@aws-cdk.aws-codestar-alpha": {
+        "GitHubRepository": {
+          "owner": "*",
+          "repositoryName": "*",
+          "accessToken": "*",
+          "contentsBucket": "*",
+          "contentsKey": "*",
+          "contentsS3Version": "*",
+          "enableIssues": "boolean",
+          "visibility": "RepositoryVisibility",
+          "description": "*"
+        }
+      },
+      "@aws-cdk.aws-dsql-alpha": {
+        "Cluster": {}
+      },
+      "@aws-cdk.aws-ec2-alpha": {
+        "IpamPool": {
+          "ipamScopeId": "*",
+          "addressFamily": "AddressFamily",
+          "ipv4ProvisionedCidrs": "*",
+          "locale": "*",
+          "publicIpSource": "IpamPoolPublicIpSource",
+          "awsService": "AwsServiceName",
+          "ipamPoolName": "*",
+          "provisionCidr": [
+            "*",
+            {
+              "netmaskLength": "*",
+              "cidr": "*"
+            }
+          ]
+        },
+        "IpamScope": {
+          "ipamId": "*",
+          "ipamOperatingRegions": "*",
+          "ipamScopeId": "*",
+          "ipamScopeName": "*"
+        },
+        "Ipam": {
+          "addScope": [
+            "*",
+            "*",
+            {
+              "ipamScopeName": "*"
+            }
+          ]
+        },
+        "EgressOnlyInternetGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "egressOnlyInternetGatewayName": "*"
+        },
+        "InternetGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetGatewayName": "*"
+        },
+        "VPNGatewayV2": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "type": "VpnConnectionType",
+          "amazonSideAsn": "*",
+          "vpnGatewayName": "*",
+          "vpnRoutePropagation": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "NatGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnet": {
+            "ipv6CidrBlock": "*",
+            "subnetType": "SubnetType",
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "allocationId": "*",
+          "connectivityType": "NatConnectivityType",
+          "maxDrainDuration": "*",
+          "privateIpAddress": "*",
+          "secondaryAllocationIds": "*",
+          "secondaryPrivateIpAddressCount": "*",
+          "secondaryPrivateIpAddresses": "*",
+          "natGatewayName": "*"
+        },
+        "VPCPeeringConnection": {
+          "requestorVpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "acceptorVpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "peerRoleArn": "*",
+          "vpcPeeringConnectionName": "*"
+        },
+        "Route": {
+          "routeTable": {
+            "routeTableId": "*"
+          },
+          "destination": "*",
+          "target": "*",
+          "routeName": "*"
+        },
+        "RouteTable": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "routeTableName": "*",
+          "addRoute": [
+            "*",
+            "*",
+            "*",
+            "*"
+          ]
+        },
+        "SubnetV2": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv4CidrBlock": "*",
+          "ipv6CidrBlock": "*",
+          "availabilityZone": "*",
+          "routeTable": {
+            "routeTableId": "*"
+          },
+          "defaultRouteTableName": "*",
+          "subnetType": "SubnetType",
+          "subnetName": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "mapPublicIpOnLaunch": "boolean",
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "TransitGatewayRouteTableAssociation": {
+          "transitGatewayVpcAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteTableAssociationName": "*"
+        },
+        "TransitGatewayRouteTablePropagation": {
+          "transitGatewayVpcAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteTablePropagationName": "*"
+        },
+        "TransitGatewayRouteTable": {
+          "transitGateway": {
+            "transitGatewayId": "*",
+            "transitGatewayArn": "*",
+            "defaultRouteTable": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "routeTableId": "*"
+            },
+            "defaultRouteTableAssociation": "boolean",
+            "defaultRouteTablePropagation": "boolean",
+            "dnsSupport": "boolean",
+            "securityGroupReferencingSupport": "boolean",
+            "routerType": "RouterType",
+            "routerTargetId": "*"
+          },
+          "transitGatewayRouteTableName": "*"
+        },
+        "TransitGatewayRoute": {
+          "transitGatewayAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "destinationCidrBlock": "*",
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteName": "*"
+        },
+        "TransitGatewayBlackholeRoute": {
+          "destinationCidrBlock": "*",
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteName": "*"
+        },
+        "TransitGatewayVpcAttachment": {
+          "transitGateway": {
+            "transitGatewayId": "*",
+            "transitGatewayArn": "*",
+            "defaultRouteTable": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "routeTableId": "*"
+            },
+            "defaultRouteTableAssociation": "boolean",
+            "defaultRouteTablePropagation": "boolean",
+            "dnsSupport": "boolean",
+            "securityGroupReferencingSupport": "boolean",
+            "routerType": "RouterType",
+            "routerTargetId": "*"
+          },
+          "subnets": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcAttachmentOptions": {
+            "applianceModeSupport": "boolean",
+            "dnsSupport": "boolean",
+            "ipv6Support": "boolean",
+            "securityGroupReferencingSupport": "boolean"
+          },
+          "transitGatewayAttachmentName": "*"
+        },
+        "TransitGateway": {
+          "transitGatewayName": "*",
+          "amazonSideAsn": "*",
+          "autoAcceptSharedAttachments": "boolean",
+          "defaultRouteTableAssociation": "boolean",
+          "defaultRouteTablePropagation": "boolean",
+          "description": "*",
+          "dnsSupport": "boolean",
+          "securityGroupReferencingSupport": "boolean",
+          "transitGatewayCidrBlocks": "*"
+        },
+        "VpcV2": {
+          "primaryAddressBlock": "*",
+          "secondaryAddressBlocks": "*",
+          "enableDnsHostnames": "boolean",
+          "enableDnsSupport": "boolean",
+          "defaultInstanceTenancy": "DefaultInstanceTenancy",
+          "vpcName": "*"
+        },
+        "VPCCidrBlock": {
+          "vpcId": "*",
+          "amazonProvidedIpv6CidrBlock": "boolean",
+          "cidrBlock": "*",
+          "cidrBlockName": "*",
+          "ipv6NetmaskLength": "*",
+          "ipv4NetmaskLength": "*",
+          "ipv6IpamPoolId": "*",
+          "ipv4IpamPoolId": "*",
+          "ipv4IpamProvisionedCidrs": "*",
+          "ipv6CidrBlock": "*",
+          "ipv6Pool": "*"
+        }
+      },
+      "@aws-cdk.aws-elasticache-alpha": {
+        "IamUser": {
+          "userName": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*",
+          "grantConnect": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "NoPasswordUser": {
+          "userName": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*"
+        },
+        "PasswordUser": {
+          "userName": "*",
+          "passwords": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*"
+        },
+        "ServerlessCache": {
+          "engine": "*",
+          "serverlessCacheName": "*",
+          "description": "*",
+          "cacheUsageLimits": {
+            "dataStorageMinimumSize": "*",
+            "requestRateLimitMinimum": "*",
+            "requestRateLimitMaximum": "*"
+          },
+          "backup": {
+            "backupTime": "*",
+            "backupRetentionLimit": "*",
+            "backupNameBeforeDeletion": "*",
+            "backupArnsToRestore": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "userGroup": {
+            "userGroupName": "*",
+            "engine": "*",
+            "users": {
+              "userId": "*",
+              "userName": "*",
+              "userArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "userGroupArn": "*"
+          }
+        },
+        "UserGroup": {
+          "userGroupName": "*",
+          "engine": "*",
+          "users": {
+            "userId": "*",
+            "engine": "*",
+            "userName": "*",
+            "userArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addUser": [
+            {
+              "userId": "*",
+              "engine": "*",
+              "userName": "*",
+              "userArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-gamelift-alpha": {
+        "Alias": {
+          "aliasName": "*",
+          "description": "*",
+          "fleet": {
+            "fleetId": "*",
+            "fleetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "resourceArnForDestination": "*"
+          },
+          "terminalMessage": "*"
+        },
+        "BuildFleet": {
+          "content": {
+            "buildId": "*",
+            "buildArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "ingressRules": {
+            "port": "*",
+            "source": {
+              "uniqueId": "*"
+            }
+          },
+          "fleetName": "*",
+          "description": "*",
+          "useSpot": "boolean",
+          "useCertificate": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "peerVpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "metricGroup": "*",
+          "instanceType": "*",
+          "desiredCapacity": "*",
+          "minSize": "*",
+          "maxSize": "*",
+          "protectNewGameSession": "boolean",
+          "runtimeConfiguration": {
+            "gameSessionActivationTimeout": "*",
+            "maxConcurrentGameSessionActivations": "*",
+            "serverProcesses": {
+              "concurrentExecutions": "*",
+              "launchPath": "*",
+              "parameters": "*"
+            }
+          },
+          "locations": {
+            "region": "*",
+            "capacity": {
+              "desiredCapacity": "*",
+              "maxSize": "*",
+              "minSize": "*"
+            }
+          },
+          "resourceCreationLimitPolicy": {
+            "newGameSessionsPerCreator": "*",
+            "policyPeriod": "*"
+          },
+          "addIngressRule": [
+            {
+              "uniqueId": "*"
+            },
+            "*"
+          ]
+        },
+        "Build": {
+          "buildName": "*",
+          "buildVersion": "*",
+          "operatingSystem": "OperatingSystem",
+          "content": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serverSdkVersion": "*"
+        },
+        "GameServerGroup": {
+          "gameServerGroupName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minSize": "*",
+          "maxSize": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceDefinitions": {
+            "instanceType": "*",
+            "weight": "*"
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "protectGameServer": "boolean",
+          "autoScalingPolicy": {
+            "estimatedInstanceWarmup": "*",
+            "targetTrackingConfiguration": "*"
+          },
+          "deleteOption": "DeleteOption",
+          "balancingStrategy": "BalancingStrategy"
+        },
+        "GameSessionQueue": {
+          "gameSessionQueueName": "*",
+          "customEventData": "*",
+          "allowedLocations": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "playerLatencyPolicies": {
+            "maximumIndividualPlayerLatency": "*"
+          },
+          "priorityConfiguration": {
+            "locationOrder": "*",
+            "priorityOrder": "PriorityType"
+          },
+          "timeout": "*",
+          "destinations": {
+            "resourceArnForDestination": "*"
+          },
+          "addDestination": [
+            {
+              "resourceArnForDestination": "*"
+            }
+          ]
+        },
+        "MatchmakingRuleSet": {
+          "matchmakingRuleSetName": "*",
+          "content": "*"
+        },
+        "QueuedMatchmakingConfiguration": {
+          "additionalPlayerCount": "*",
+          "manualBackfillMode": "boolean",
+          "gameProperties": {
+            "key": "*",
+            "value": "*"
+          },
+          "gameSessionData": "*",
+          "gameSessionQueues": {
+            "gameSessionQueueName": "*",
+            "gameSessionQueueArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "matchmakingConfigurationName": "*",
+          "description": "*",
+          "requireAcceptance": "boolean",
+          "acceptanceTimeout": "*",
+          "customEventData": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "requestTimeout": "*",
+          "ruleSet": {
+            "matchmakingRuleSetName": "*",
+            "matchmakingRuleSetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addGameSessionQueue": [
+            {
+              "gameSessionQueueName": "*",
+              "gameSessionQueueArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Script": {
+          "scriptName": "*",
+          "scriptVersion": "*",
+          "content": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "StandaloneMatchmakingConfiguration": {
+          "matchmakingConfigurationName": "*",
+          "description": "*",
+          "requireAcceptance": "boolean",
+          "acceptanceTimeout": "*",
+          "customEventData": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "requestTimeout": "*",
+          "ruleSet": {
+            "matchmakingRuleSetName": "*",
+            "matchmakingRuleSetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-glue-alpha": {
+        "Catalog": {
+          "catalogName": "*",
+          "description": "*",
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "AccountCatalog": {
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "ImportedCatalog": {},
+        "Connection": {
+          "type": "*",
+          "connectionName": "*",
+          "description": "*",
+          "properties": "*",
+          "secret": "*",
+          "matchCriteria": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "network": "*",
+          "addProperty": [
+            "*",
+            "*"
+          ]
+        },
+        "DataQualityRuleset": {
+          "rulesetName": "*",
+          "description": "*",
+          "dqdl": "*",
+          "tags": "*",
+          "targetTable": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Database": {
+          "databaseName": "*",
+          "locationUri": "*",
+          "description": "*",
+          "catalog": {
+            "catalogId": "*",
+            "catalogArn": "*",
+            "encryptionKey": "*",
+            "connectionPasswordKey": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ExternalTable": {
+          "connection": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "externalDataLocation": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "S3Table": {
+          "storage": "*",
+          "s3Prefix": "*",
+          "clientSideEncryption": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "SecurityConfiguration": {
+          "securityConfigurationName": "*",
+          "cloudWatchEncryption": "*",
+          "jobBookmarksEncryption": "*",
+          "s3Encryption": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-imagebuilder-alpha": {
+        "Component": {
+          "data": "*",
+          "platform": "Platform",
+          "componentName": "*",
+          "componentVersion": "*",
+          "description": "*",
+          "changeDescription": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "supportedOsVersions": "*",
+          "tags": "*"
+        },
+        "ContainerRecipe": {
+          "baseImage": "*",
+          "targetRepository": "*",
+          "containerRecipeName": "*",
+          "containerRecipeVersion": "*",
+          "description": "*",
+          "dockerfile": "*",
+          "components": {
+            "component": {
+              "componentArn": "*",
+              "componentName": "*",
+              "componentVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "parameters": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workingDirectory": "*",
+          "osVersion": "*",
+          "instanceBlockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "instanceImage": "*",
+          "tags": "*",
+          "addInstanceBlockDevice": [
+            {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            }
+          ]
+        },
+        "DistributionConfiguration": {
+          "amiDistributions": {
+            "region": "*",
+            "amiTags": "*",
+            "amiDescription": "*",
+            "amiKmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "amiLaunchPermission": {
+              "organizationalUnitArns": "*",
+              "organizationArns": "*",
+              "isPublicUserGroup": "boolean",
+              "accountIds": "*"
+            },
+            "amiName": "*",
+            "amiTargetAccountIds": "*",
+            "ssmParameters": {
+              "amiAccount": "*",
+              "dataType": "ParameterDataType",
+              "parameter": {
+                "stringValue": "*",
+                "parameterArn": "*",
+                "parameterName": "*",
+                "parameterType": "*"
+              }
+            },
+            "launchTemplates": {
+              "launchTemplate": {
+                "versionNumber": "*",
+                "launchTemplateId": "*",
+                "launchTemplateName": "*"
+              },
+              "accountId": "*",
+              "setDefaultVersion": "boolean"
+            },
+            "fastLaunchConfigurations": {
+              "enabled": "boolean",
+              "maxParallelLaunches": "*",
+              "targetSnapshotCount": "*"
+            },
+            "licenseConfigurationArns": "*"
+          },
+          "containerDistributions": {
+            "region": "*",
+            "containerRepository": "*",
+            "containerDescription": "*",
+            "containerTags": "*"
+          },
+          "distributionConfigurationName": "*",
+          "description": "*",
+          "tags": "*",
+          "addAmiDistributions": [
+            {
+              "region": "*",
+              "amiTags": "*",
+              "amiDescription": "*",
+              "amiKmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "amiLaunchPermission": {
+                "organizationalUnitArns": "*",
+                "organizationArns": "*",
+                "isPublicUserGroup": "boolean",
+                "accountIds": "*"
+              },
+              "amiName": "*",
+              "amiTargetAccountIds": "*",
+              "ssmParameters": {
+                "amiAccount": "*",
+                "dataType": "ParameterDataType",
+                "parameter": {
+                  "stringValue": "*",
+                  "parameterArn": "*",
+                  "parameterName": "*",
+                  "parameterType": "*"
+                }
+              },
+              "launchTemplates": {
+                "launchTemplate": {
+                  "versionNumber": "*",
+                  "launchTemplateId": "*",
+                  "launchTemplateName": "*"
+                },
+                "accountId": "*",
+                "setDefaultVersion": "boolean"
+              },
+              "fastLaunchConfigurations": {
+                "enabled": "boolean",
+                "maxParallelLaunches": "*",
+                "targetSnapshotCount": "*"
+              },
+              "licenseConfigurationArns": "*"
+            }
+          ],
+          "addContainerDistributions": [
+            {
+              "region": "*",
+              "containerRepository": "*",
+              "containerDescription": "*",
+              "containerTags": "*"
+            }
+          ]
+        },
+        "ImagePipeline": {
+          "recipe": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imagePipelineName": "*",
+          "description": "*",
+          "schedule": {
+            "expression": "*",
+            "autoDisableFailureCount": "*",
+            "startCondition": "ScheduleStartCondition"
+          },
+          "status": "ImagePipelineStatus",
+          "infrastructureConfiguration": {
+            "infrastructureConfigurationArn": "*",
+            "infrastructureConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "distributionConfiguration": {
+            "distributionConfigurationArn": "*",
+            "distributionConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workflows": {
+            "workflow": {
+              "workflowArn": "*",
+              "workflowName": "*",
+              "workflowType": "*",
+              "workflowVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "onFailure": "WorkflowOnFailure",
+            "parallelGroup": "*",
+            "parameters": "*"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imagePipelineLogGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageLogGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageScanningEnabled": "boolean",
+          "imageScanningEcrRepository": {
+            "repositoryName": "*",
+            "repositoryArn": "*",
+            "repositoryUri": "*",
+            "registryUri": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imageScanningEcrTags": "*",
+          "enhancedImageMetadataEnabled": "boolean",
+          "imageTestsEnabled": "boolean",
+          "tags": "*",
+          "grantDefaultExecutionRolePermissions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ImageRecipe": {
+          "baseImage": "*",
+          "imageRecipeName": "*",
+          "imageRecipeVersion": "*",
+          "description": "*",
+          "components": {
+            "component": {
+              "componentArn": "*",
+              "componentName": "*",
+              "componentVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "parameters": "*"
+          },
+          "amiTags": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "workingDirectory": "*",
+          "uninstallSsmAgentAfterBuild": "boolean",
+          "userDataOverride": "*",
+          "tags": "*",
+          "addBlockDevice": [
+            {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            }
+          ]
+        },
+        "Image": {
+          "recipe": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "infrastructureConfiguration": {
+            "infrastructureConfigurationArn": "*",
+            "infrastructureConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "distributionConfiguration": {
+            "distributionConfigurationArn": "*",
+            "distributionConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workflows": {
+            "workflow": {
+              "workflowArn": "*",
+              "workflowName": "*",
+              "workflowType": "*",
+              "workflowVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "onFailure": "WorkflowOnFailure",
+            "parallelGroup": "*",
+            "parameters": "*"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageScanningEnabled": "boolean",
+          "imageScanningEcrRepository": {
+            "repositoryName": "*",
+            "repositoryArn": "*",
+            "repositoryUri": "*",
+            "registryUri": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imageScanningEcrTags": "*",
+          "enhancedImageMetadataEnabled": "boolean",
+          "imageTestsEnabled": "boolean",
+          "deletionExecutionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "grantDefaultExecutionRolePermissions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "InfrastructureConfiguration": {
+          "infrastructureConfigurationName": "*",
+          "description": "*",
+          "instanceTypes": "*",
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "terminateInstanceOnFailure": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "HttpTokens",
+          "notificationTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "logging": {
+            "s3Bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "s3KeyPrefix": "*"
+          },
+          "ec2InstanceAvailabilityZone": "*",
+          "ec2InstanceHostId": "*",
+          "ec2InstanceHostResourceGroupArn": "*",
+          "ec2InstanceTenancy": "Tenancy",
+          "resourceTags": "*",
+          "tags": "*",
+          "_bind": [
+            {
+              "isContainerBuild": "boolean"
+            }
+          ]
+        },
+        "LifecyclePolicy": {
+          "resourceType": "LifecyclePolicyResourceType",
+          "details": {
+            "action": {
+              "type": "LifecyclePolicyActionType",
+              "includeAmis": "boolean",
+              "includeContainers": "boolean",
+              "includeSnapshots": "boolean"
+            },
+            "filter": {
+              "ageFilter": {
+                "age": "*",
+                "retainAtLeast": "*"
+              },
+              "countFilter": {
+                "count": "*"
+              }
+            },
+            "exclusionRules": {
+              "imageExclusionRules": {
+                "tags": "*"
+              },
+              "amiExclusionRules": {
+                "isPublic": "boolean",
+                "regions": "*",
+                "sharedAccounts": "*",
+                "tags": "*"
+              }
+            }
+          },
+          "resourceSelection": {
+            "recipes": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "tags": "*"
+          },
+          "lifecyclePolicyName": "*",
+          "description": "*",
+          "status": "LifecyclePolicyStatus",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*"
+        },
+        "Workflow": {
+          "data": "*",
+          "workflowType": "WorkflowType",
+          "workflowName": "*",
+          "workflowVersion": "*",
+          "description": "*",
+          "changeDescription": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-iot-alpha": {
+        "AccountAuditConfiguration": {},
+        "Logging": {},
+        "ScheduledAudit": {
+          "auditChecks": "AuditCheck",
+          "accountAuditConfiguration": {
+            "accountId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dayOfWeek": "DayOfWeek",
+          "dayOfMonth": "*",
+          "frequency": "Frequency",
+          "scheduledAuditName": "*"
+        },
+        "TopicRule": {
+          "topicRuleName": "*",
+          "actions": "*",
+          "description": "*",
+          "errorAction": "*",
+          "enabled": "boolean",
+          "sql": "*",
+          "addAction": [
+            "*"
+          ]
+        }
+      },
+      "@aws-cdk.aws-iotevents-alpha": {
+        "DetectorModel": {
+          "detectorModelName": "*",
+          "description": "*",
+          "evaluationMethod": "EventEvaluation",
+          "detectorKey": "*",
+          "initialState": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Input": {
+          "inputName": "*",
+          "attributeJsonPaths": "*"
+        }
+      },
+      "@aws-cdk.aws-ivs-alpha": {
+        "Channel": {
+          "authorized": "boolean",
+          "containerFormat": "ContainerFormat",
+          "insecureIngest": "boolean",
+          "latencyMode": "LatencyMode",
+          "channelName": "*",
+          "multitrackInputConfiguration": {
+            "maximumResolution": "MaximumResolution",
+            "policy": "Policy"
+          },
+          "type": "ChannelType",
+          "preset": "Preset",
+          "recordingConfiguration": {
+            "recordingConfigurationId": "*",
+            "recordingConfigurationArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "PlaybackKeyPair": {
+          "publicKeyMaterial": "*",
+          "playbackKeyPairName": "*"
+        },
+        "RecordingConfiguration": {
+          "bucket": "*",
+          "recordingConfigurationName": "*",
+          "recordingReconnectWindow": "*",
+          "renditionConfiguration": "*",
+          "thumbnailConfiguration": "*"
+        },
+        "StreamKey": {
+          "channel": {
+            "channelArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-kinesisanalytics-flink-alpha": {
+        "Import": {
+          "applicationArn": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        },
+        "Application": {
+          "applicationName": "*",
+          "runtime": "*",
+          "code": "*",
+          "checkpointingEnabled": "boolean",
+          "checkpointInterval": "*",
+          "minPauseBetweenCheckpoints": "*",
+          "logLevel": "LogLevel",
+          "metricsLevel": "MetricsLevel",
+          "autoScalingEnabled": "boolean",
+          "parallelism": "*",
+          "parallelismPerKpu": "*",
+          "snapshotsEnabled": "boolean",
+          "propertyGroups": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "logGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        }
+      },
+      "@aws-cdk.aws-lambda-go-alpha": {
+        "GoFunction": {
+          "entry": "*",
+          "runtime": "*",
+          "moduleDir": "*",
+          "bundling": {
+            "forcedDockerBundling": "boolean",
+            "dockerImage": "*",
+            "goBuildFlags": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "cgoEnabled": "boolean",
+            "goProxies": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        }
+      },
+      "@aws-cdk.aws-lambda-python-alpha": {
+        "PythonFunction": {
+          "entry": "*",
+          "runtime": "*",
+          "index": "*",
+          "handler": "*",
+          "bundling": {
+            "poetryIncludeHashes": "boolean",
+            "poetryWithoutUrls": "boolean",
+            "assetExcludes": "*",
+            "outputPathSuffix": "*",
+            "image": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "PythonLayerVersion": {
+          "entry": "*",
+          "compatibleRuntimes": "*",
+          "compatibleArchitectures": "*",
+          "bundling": {
+            "poetryIncludeHashes": "boolean",
+            "poetryWithoutUrls": "boolean",
+            "assetExcludes": "*",
+            "outputPathSuffix": "*",
+            "image": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "license": "*",
+          "layerVersionName": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-location-alpha": {
+        "ApiKey": {
+          "apiKeyName": "*",
+          "description": "*",
+          "expireTime": "*",
+          "forceDelete": "boolean",
+          "forceUpdate": "boolean",
+          "noExpiry": "boolean",
+          "allowMapsActions": "AllowMapsAction",
+          "allowPlacesActions": "AllowPlacesAction",
+          "allowRoutesActions": "AllowRoutesAction",
+          "allowReferers": "*"
+        },
+        "GeofenceCollection": {
+          "geofenceCollectionName": "*",
+          "description": "*",
+          "kmsKey": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Map": {
+          "mapName": "*",
+          "description": "*",
+          "style": "Style",
+          "customLayers": "CustomLayer",
+          "politicalView": "PoliticalView",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRendering": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "PlaceIndex": {
+          "placeIndexName": "*",
+          "dataSource": "DataSource",
+          "intendedUse": "IntendedUse",
+          "description": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantSearch": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "RouteCalculator": {
+          "routeCalculatorName": "*",
+          "dataSource": "DataSource",
+          "description": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Tracker": {
+          "trackerName": "*",
+          "description": "*",
+          "eventBridgeEnabled": "boolean",
+          "kmsKey": "*",
+          "kmsKeyEnableGeospatialQueries": "boolean",
+          "positionFiltering": "PositionFiltering",
+          "geofenceCollections": {
+            "geofenceCollectionName": "*",
+            "geofenceCollectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addGeofenceCollections": [
+            {
+              "geofenceCollectionName": "*",
+              "geofenceCollectionArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantUpdateDevicePositions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-mediaconnect-alpha": {
+        "BridgeOutput": {
+          "bridgeOutputName": "*",
+          "bridge": {
+            "bridgeArn": "*",
+            "bridgeName": "*",
+            "bridgeType": "*",
+            "bridgeState": "*",
+            "isFailoverEnabled": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "output": "*"
+        },
+        "BridgeSource": {
+          "bridgeSourceName": "*",
+          "bridge": {
+            "bridgeArn": "*",
+            "bridgeName": "*",
+            "bridgeType": "*",
+            "bridgeState": "*",
+            "isFailoverEnabled": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "source": "*"
+        },
+        "Bridge": {
+          "bridgeName": "*",
+          "config": "*",
+          "gateway": {
+            "gatewayArn": "*",
+            "gatewayState": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "sourceFailoverConfig": "*"
+        },
+        "FlowEntitlement": {
+          "flowEntitlementName": "*",
+          "dataTransferSubscriberFeePercent": "*",
+          "description": "*",
+          "encryption": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secret": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "algorithm": "*"
+          },
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subscribers": "*",
+          "entitlementStatus": "EntitlementStatus"
+        },
+        "FlowOutput": {
+          "flowOutputName": "*",
+          "description": "*",
+          "outputStatus": "State",
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "output": "*"
+        },
+        "FlowSource": {
+          "source": "*",
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Flow": {
+          "flowName": "*",
+          "availabilityZone": "*",
+          "flowSize": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "mediaStreams": "*",
+          "ndiConfig": {
+            "machineName": "*",
+            "ndiDiscoveryServers": {
+              "discoveryServerAddress": "*",
+              "discoveryServerPort": "*",
+              "vpcInterface": {
+                "name": "*",
+                "networkInterfaceIds": "*",
+                "networkInterfaceType": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "securityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                },
+                "subnet": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              }
+            },
+            "ndiState": "State"
+          },
+          "encodingConfig": {
+            "encodingProfile": "EncodingProfile",
+            "videoMaxBitrate": "*"
+          },
+          "source": "*",
+          "sourceFailoverConfig": "*",
+          "sourceMonitoringConfig": {
+            "contentQualityAnalysisState": "State",
+            "thumbnailState": "State",
+            "silentAudio": {
+              "state": "State",
+              "threshold": "*"
+            }
+          },
+          "vpcInterfaces": {
+            "name": "*",
+            "networkInterfaceIds": "*",
+            "networkInterfaceType": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "subnet": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            }
+          },
+          "addVpcInterface": [
+            {
+              "name": "*",
+              "networkInterfaceIds": "*",
+              "networkInterfaceType": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              },
+              "subnet": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              }
+            }
+          ]
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "egressCidrBlocks": "*",
+          "networks": "*",
+          "addNetwork": [
+            "*"
+          ]
+        },
+        "RouterInput": {
+          "routerInputName": "*",
+          "maximumBitrate": "*",
+          "routingScope": "*",
+          "tier": "*",
+          "configuration": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "regionName": "*",
+          "tags": "*",
+          "transitEncryption": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secret": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            }
+          }
+        },
+        "RouterNetworkInterface": {
+          "routerNetworkInterfaceName": "*",
+          "configuration": "*",
+          "regionName": "*",
+          "tags": "*"
+        },
+        "RouterOutput": {
+          "routerOutputName": "*",
+          "maximumBitrate": "*",
+          "routingScope": "*",
+          "tier": "*",
+          "configuration": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "regionName": "*",
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-medialive-alpha": {
+        "ChannelPlacementGroup": {
+          "channelPlacementGroupName": "*",
+          "cluster": "*",
+          "nodes": "*",
+          "tags": "*"
+        },
+        "Channel": {
+          "channelName": "*",
+          "channelClass": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "inputs": {
+            "input": {
+              "inputArn": "*",
+              "inputId": "*",
+              "inputClass": "*",
+              "inputType": "*",
+              "inputDestinations": "*",
+              "inputSources": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "inputAttachmentName": "*",
+            "sourceEndBehavior": "*",
+            "inputFilter": "*",
+            "filterStrength": "*",
+            "deblockFilter": "boolean",
+            "denoiseFilter": "boolean",
+            "smpte2038DataPreference": "*",
+            "audioSelectors": "*",
+            "captionSelectors": "*",
+            "scte35Pid": "*",
+            "videoSelector": {
+              "colorSpace": "*",
+              "colorSpaceUsage": "*",
+              "hdr10": {
+                "maxContentLightLevel": "*",
+                "maxFrameAverageLightLevel": "*"
+              },
+              "selectBy": "*"
+            },
+            "networkInputSettings": {
+              "serverValidation": "*",
+              "hlsInputSettings": {
+                "bandwidth": "*",
+                "bufferSegments": "*",
+                "retries": "*",
+                "retryInterval": "*",
+                "scte35Source": "*"
+              },
+              "multicastSourceIp": "*"
+            },
+            "logicalInterfaceNames": "*",
+            "automaticInputFailover": {
+              "failoverConditions": "*",
+              "inputPreference": "*"
+            }
+          },
+          "outputGroups": "*",
+          "logLevel": "*",
+          "inputSpecification": "*",
+          "globalConfiguration": {
+            "initialAudioGain": "*",
+            "inputEndAction": "*",
+            "outputTimingSource": "*",
+            "supportLowFramerateInputs": "boolean",
+            "inputLossBehavior": {
+              "blackFrame": "*",
+              "imageType": "*",
+              "imageColor": "*",
+              "imageSlate": "*"
+            },
+            "outputLocking": "*"
+          },
+          "tags": "*",
+          "maintenance": {
+            "day": "*",
+            "time": "*"
+          },
+          "timecodeConfig": {
+            "source": "*",
+            "syncThreshold": "*"
+          },
+          "vpc": {
+            "subnets": "*",
+            "securityGroups": "*",
+            "publicAddressAllocationIds": "*"
+          },
+          "availBlanking": {
+            "state": "*",
+            "image": "*"
+          },
+          "availSettings": "*",
+          "scte35SegmentationScope": "*",
+          "featureActivations": {
+            "inputPrepareScheduleActions": "*"
+          },
+          "motionGraphicsConfiguration": {
+            "motionGraphicsInsertion": "*"
+          },
+          "nielsenConfiguration": {
+            "distributorId": "*",
+            "nielsenPcmToId3Tagging": "*"
+          },
+          "thumbnailConfiguration": {
+            "state": "*"
+          },
+          "blackoutSlate": {
+            "state": "*",
+            "image": "*",
+            "networkEndBlackout": "*",
+            "networkId": "*"
+          },
+          "colorCorrections": {
+            "inputColorSpace": "*",
+            "lut": "*"
+          },
+          "anywhereSettings": {
+            "cluster": "*",
+            "channelPlacementGroup": "*"
+          },
+          "channelEngineVersion": "*",
+          "linkedChannelSettings": "*",
+          "channelSecurityGroups": "*",
+          "inferenceFeedArn": "*",
+          "addInput": [
+            {
+              "input": {
+                "inputArn": "*",
+                "inputId": "*",
+                "inputClass": "*",
+                "inputType": "*",
+                "inputDestinations": "*",
+                "inputSources": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "inputAttachmentName": "*",
+              "sourceEndBehavior": "*",
+              "inputFilter": "*",
+              "filterStrength": "*",
+              "deblockFilter": "boolean",
+              "denoiseFilter": "boolean",
+              "smpte2038DataPreference": "*",
+              "audioSelectors": "*",
+              "captionSelectors": "*",
+              "scte35Pid": "*",
+              "videoSelector": {
+                "colorSpace": "*",
+                "colorSpaceUsage": "*",
+                "hdr10": {
+                  "maxContentLightLevel": "*",
+                  "maxFrameAverageLightLevel": "*"
+                },
+                "selectBy": "*"
+              },
+              "networkInputSettings": {
+                "serverValidation": "*",
+                "hlsInputSettings": {
+                  "bandwidth": "*",
+                  "bufferSegments": "*",
+                  "retries": "*",
+                  "retryInterval": "*",
+                  "scte35Source": "*"
+                },
+                "multicastSourceIp": "*"
+              },
+              "logicalInterfaceNames": "*",
+              "automaticInputFailover": {
+                "failoverConditions": "*",
+                "inputPreference": "*"
+              }
+            }
+          ],
+          "addOutputGroup": [
+            "*"
+          ]
+        },
+        "Cluster": {
+          "clusterName": "*",
+          "clusterType": "*",
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkSettings": {
+            "defaultRoute": "*",
+            "interfaceMappings": {
+              "logicalInterfaceName": "*",
+              "networkId": "*"
+            }
+          },
+          "tags": "*"
+        },
+        "InputSecurityGroup": {
+          "allowlistRules": "*",
+          "tags": "*"
+        },
+        "Input": {
+          "inputName": "*",
+          "input": "*",
+          "inputNetworkLocation": "*",
+          "tags": "*",
+          "_grantPermissions": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Network": {
+          "networkName": "*",
+          "ipPools": "*",
+          "routes": {
+            "cidr": "*",
+            "gateway": "*"
+          },
+          "tags": "*"
+        },
+        "SdiSource": {
+          "sdiSourceName": "*",
+          "type": "*",
+          "mode": "*",
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-mediapackagev2-alpha": {
+        "ChannelPolicy": {
+          "channel": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "channelArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "ingestEndpointUrls": "*",
+            "channelGroup": {
+              "channelGroupName": "*",
+              "channelGroupArn": "*",
+              "egressDomain": "*",
+              "createdAt": "*",
+              "modifiedAt": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "region": "*",
+            "grants": "*"
+          },
+          "policyDocument": "*"
+        },
+        "Channel": {
+          "channelGroup": {
+            "channelGroupName": "*",
+            "channelGroupArn": "*",
+            "egressDomain": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "channelName": "*",
+          "input": "*",
+          "description": "*",
+          "tags": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OriginEndpoint": {
+          "channel": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "channelArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "ingestEndpointUrls": "*",
+            "channelGroup": {
+              "channelGroupName": "*",
+              "channelGroupArn": "*",
+              "egressDomain": "*",
+              "createdAt": "*",
+              "modifiedAt": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "region": "*",
+            "grants": "*"
+          },
+          "originEndpointName": "*",
+          "description": "*",
+          "tags": "*",
+          "manifests": "*",
+          "startoverWindow": "*",
+          "segment": {
+            "containerType": "ContainerType",
+            "includeIframeOnlyStreams": "boolean",
+            "scteFilter": "ScteMessageType",
+            "scteInSegments": "ScteInSegments",
+            "segmentDuration": "*",
+            "segmentName": "*",
+            "tsIncludeDvbSubtitles": "boolean",
+            "tsUseAudioRenditionGroup": "boolean",
+            "encryption": "*"
+          },
+          "forceEndpointConfigurationConditions": "EndpointErrorConfiguration",
+          "cdnAuth": {
+            "secrets": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ChannelGroup": {},
+        "OriginEndpointPolicy": {
+          "originEndpoint": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "originEndpointName": "*",
+            "originEndpointArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "hlsManifestUrls": "*",
+            "lowLatencyHlsManifestUrls": "*",
+            "dashManifestUrls": "*",
+            "mssManifestUrls": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "policyDocument": "*",
+          "cdnAuth": {
+            "secrets": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-msk-alpha": {
+        "Cluster": {
+          "clusterName": "*",
+          "kafkaVersion": "*",
+          "numberOfBrokerNodes": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceType": "*",
+          "brokerType": "BrokerType",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ebsStorageInfo": {
+            "volumeSize": "*",
+            "encryptionKey": "*"
+          },
+          "storageMode": "StorageMode",
+          "configurationInfo": {
+            "arn": "*",
+            "revision": "*"
+          },
+          "monitoring": {
+            "clusterMonitoringLevel": "ClusterMonitoringLevel",
+            "enablePrometheusJmxExporter": "boolean",
+            "enablePrometheusNodeExporter": "boolean"
+          },
+          "logging": {
+            "firehoseDeliveryStreamName": "*",
+            "cloudwatchLogGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "s3": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*"
+            }
+          },
+          "encryptionInTransit": {
+            "clientBroker": "ClientBrokerEncryption",
+            "enableInCluster": "boolean"
+          },
+          "clientAuthentication": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addUser": [
+            "*"
+          ]
+        },
+        "ServerlessCluster": {
+          "clusterName": "*",
+          "vpcConfigs": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-neptune-alpha": {
+        "DatabaseCluster": {
+          "engineVersion": "*",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "kmsKey": "*",
+          "storageEncrypted": "boolean",
+          "instances": "*",
+          "dbClusterName": "*",
+          "iamAuthentication": "boolean",
+          "instanceIdentifierBase": "*",
+          "instanceType": "*",
+          "associatedRoles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "clusterParameterGroup": {
+            "clusterParameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameterGroup": {
+            "parameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": {
+            "subnetGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "autoMinorVersionUpgrade": "boolean",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serverlessScalingConfiguration": {
+            "minCapacity": "*",
+            "maxCapacity": "*"
+          },
+          "copyTagsToSnapshot": "boolean",
+          "port": "*"
+        },
+        "DatabaseInstance": {
+          "cluster": {
+            "clusterIdentifier": "*",
+            "clusterResourceIdentifier": "*",
+            "clusterEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "availabilityZone": "*",
+          "dbInstanceName": "*",
+          "parameterGroup": {
+            "parameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "autoMinorVersionUpgrade": "boolean"
+        },
+        "ClusterParameterGroup": {
+          "clusterParameterGroupName": "*",
+          "description": "*",
+          "parameters": "*",
+          "family": "*"
+        },
+        "ParameterGroup": {
+          "parameterGroupName": "*",
+          "description": "*",
+          "parameters": "*",
+          "family": "*"
+        },
+        "SubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetGroupName": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-pipes-alpha": {
+        "ImportedPipe": {},
+        "Pipe": {
+          "source": {
+            "sourceArn": "*"
+          },
+          "filter": {
+            "filters": {
+              "pattern": "*"
+            }
+          },
+          "enrichment": {
+            "enrichmentArn": "*"
+          },
+          "target": {
+            "targetArn": "*"
+          },
+          "pipeName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logDestinations": "*",
+          "logLevel": "LogLevel",
+          "logIncludeExecutionData": "IncludeExecutionData",
+          "description": "*",
+          "desiredState": "DesiredState",
+          "tags": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-redshift-alpha": {
+        "Cluster": {
+          "clusterName": "*",
+          "parameterGroup": {
+            "clusterParameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "numberOfNodes": "*",
+          "nodeType": "NodeType",
+          "clusterType": "ClusterType",
+          "port": "*",
+          "encrypted": "boolean",
+          "encryptionKey": "*",
+          "preferredMaintenanceWindow": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "subnetGroup": {
+            "clusterSubnetGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "masterUser": {
+            "masterUsername": "*",
+            "masterPassword": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "excludeCharacters": "*"
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultDatabaseName": "*",
+          "logging": "*",
+          "removalPolicy": "RemovalPolicy",
+          "publiclyAccessible": "boolean",
+          "classicResizing": "boolean",
+          "elasticIp": "*",
+          "rebootForParameterChanges": "boolean",
+          "enhancedVpcRouting": "boolean",
+          "multiAz": "boolean",
+          "resourceAction": "ResourceAction",
+          "availabilityZoneRelocation": "boolean",
+          "maintenanceTrackName": "MaintenanceTrackName",
+          "addRotationSingleUser": [
+            "*"
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*"
+            }
+          ],
+          "addToParameterGroup": [
+            "*",
+            "*"
+          ],
+          "enableRebootForParameterChanges": [],
+          "addDefaultIamRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addIamRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "excludeCharacters": "*"
+        },
+        "ClusterParameterGroup": {
+          "description": "*",
+          "parameters": "*",
+          "addParameter": [
+            "*",
+            "*"
+          ]
+        },
+        "ClusterSubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-route53resolver-alpha": {
+        "FirewallDomainList": {
+          "name": "*",
+          "domains": "*"
+        },
+        "FirewallRuleGroupAssociation": {
+          "firewallRuleGroup": {
+            "firewallRuleGroupId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mutationProtection": "boolean",
+          "name": "*",
+          "priority": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          }
+        },
+        "FirewallRuleGroup": {
+          "name": "*",
+          "rules": {
+            "action": "*",
+            "firewallDomainList": {
+              "firewallDomainListId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "priority": "*"
+          },
+          "addRule": [
+            {
+              "action": "*",
+              "firewallDomainList": {
+                "firewallDomainListId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "priority": "*"
+            }
+          ],
+          "associate": [
+            "*",
+            {
+              "mutationProtection": "boolean",
+              "name": "*",
+              "priority": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-s3objectlambda-alpha": {
+        "AccessPoint": {
+          "bucket": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "accessPointName": "*",
+          "cloudWatchMetricsEnabled": "boolean",
+          "supportsGetObjectRange": "boolean",
+          "supportsGetObjectPartNumber": "boolean",
+          "payload": "*"
+        }
+      },
+      "@aws-cdk.aws-s3tables-alpha": {
+        "Namespace": {
+          "namespaceName": "*",
+          "tableBucket": {
+            "tableBucketArn": "*",
+            "tableBucketName": "*",
+            "account": "*",
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "TableBucketPolicy": {
+          "tableBucket": {
+            "tableBucketArn": "*",
+            "tableBucketName": "*",
+            "account": "*",
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "resourcePolicy": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "TableBucket": {
+          "tableBucketName": "*",
+          "unreferencedFileRemoval": {
+            "noncurrentDays": "*",
+            "status": "UnreferencedFileRemovalStatus",
+            "unreferencedDays": "*"
+          },
+          "region": "*",
+          "account": "*",
+          "encryption": "TableBucketEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "requestMetricsStatus": "RequestMetricsStatus",
+          "storageClass": "StorageClass"
+        },
+        "TablePolicy": {
+          "table": {
+            "tableArn": "*",
+            "tableName": "*",
+            "account": "*",
+            "region": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "resourcePolicy": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Table": {
+          "tableName": "*",
+          "namespace": {
+            "namespaceName": "*",
+            "tableBucket": {
+              "tableBucketArn": "*",
+              "tableBucketName": "*",
+              "account": "*",
+              "region": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          },
+          "openTableFormat": "OpenTableFormat",
+          "compaction": {
+            "status": "Status",
+            "targetFileSizeMb": "*"
+          },
+          "icebergMetadata": {
+            "icebergSchema": {
+              "schemaFieldList": {
+                "id": "*",
+                "name": "*",
+                "required": "boolean",
+                "type": "*"
+              }
+            },
+            "icebergPartitionSpec": {
+              "fields": {
+                "sourceId": "*",
+                "transform": "*",
+                "name": "*",
+                "fieldId": "*"
+              },
+              "specId": "*"
+            },
+            "icebergSortOrder": {
+              "fields": {
+                "sourceId": "*",
+                "direction": "SortDirection",
+                "nullOrder": "NullOrder"
+              },
+              "orderId": "*"
+            },
+            "tableProperties": {
+              "key": "*",
+              "value": "*"
+            }
+          },
+          "snapshotManagement": {
+            "maxSnapshotAgeHours": "*",
+            "minSnapshotsToKeep": "*",
+            "status": "Status"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "withoutMetadata": "boolean",
+          "storageClass": "StorageClass"
+        }
+      },
+      "@aws-cdk.aws-sagemaker-alpha": {
+        "EndpointConfig": {
+          "endpointConfigName": "*",
+          "encryptionKey": "*",
+          "instanceProductionVariants": {
+            "acceleratorType": "*",
+            "initialInstanceCount": "*",
+            "instanceType": "*",
+            "containerStartupHealthCheckTimeout": "*",
+            "initialVariantWeight": "*",
+            "model": {
+              "modelArn": "*",
+              "modelName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "connections": "*"
+            },
+            "variantName": "*"
+          },
+          "serverlessProductionVariant": {
+            "maxConcurrency": "*",
+            "memorySizeInMB": "*",
+            "provisionedConcurrency": "*",
+            "initialVariantWeight": "*",
+            "model": {
+              "modelArn": "*",
+              "modelName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "connections": "*"
+            },
+            "variantName": "*"
+          },
+          "addInstanceProductionVariant": [
+            {
+              "acceleratorType": "*",
+              "initialInstanceCount": "*",
+              "instanceType": "*",
+              "containerStartupHealthCheckTimeout": "*",
+              "initialVariantWeight": "*",
+              "model": {
+                "modelArn": "*",
+                "modelName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "connections": "*"
+              },
+              "variantName": "*"
+            }
+          ],
+          "addServerlessProductionVariant": [
+            {
+              "maxConcurrency": "*",
+              "memorySizeInMB": "*",
+              "provisionedConcurrency": "*",
+              "initialVariantWeight": "*",
+              "model": {
+                "modelArn": "*",
+                "modelName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "connections": "*"
+              },
+              "variantName": "*"
+            }
+          ],
+          "_findInstanceProductionVariant": [
+            "*"
+          ]
+        },
+        "Endpoint": {
+          "endpointName": "*",
+          "endpointConfig": {
+            "endpointConfigArn": "*",
+            "endpointConfigName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "findInstanceProductionVariant": [
+            "*"
+          ]
+        },
+        "Model": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "modelName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "containers": {
+            "image": "*",
+            "environment": "*",
+            "containerHostname": "*",
+            "modelData": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "networkIsolation": "boolean",
+          "addContainer": [
+            {
+              "image": "*",
+              "environment": "*",
+              "containerHostname": "*",
+              "modelData": "*"
+            }
+          ]
+        },
+        "Pipeline": {
+          "grantStartPipelineExecution": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-servicecatalogappregistry-alpha": {
+        "Application": {
+          "applicationName": "*",
+          "description": "*"
+        },
+        "AttributeGroup": {
+          "attributeGroupName": "*",
+          "description": "*",
+          "attributes": "*"
+        }
+      },
+      "@aws-cdk.example-construct-library": {
+        "ExampleResource": {
+          "waitConditionHandleName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-apigateway": {
+        "ApiKey": {
+          "resources": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "stages": {
+            "stageName": "*",
+            "restApi": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "RateLimitedApiKey": {
+          "apiStages": {
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "throttle": {
+              "method": "*",
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              }
+            }
+          },
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "resources": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "stages": {
+            "stageName": "*",
+            "restApi": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "BasePathMapping": {
+          "domainName": "*",
+          "restApi": "*",
+          "basePath": "*",
+          "stage": "*",
+          "attachToStage": "boolean"
+        },
+        "Deployment": {
+          "api": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "description": "*",
+          "retainDeployments": "boolean",
+          "stageName": "*",
+          "addToLogicalId": [
+            "*"
+          ],
+          "_addMethodDependency": [
+            "*"
+          ]
+        },
+        "DomainName": {
+          "mapping": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "domainName": "*",
+          "certificate": "*",
+          "endpointType": "EndpointType",
+          "securityPolicy": "SecurityPolicy",
+          "endpointAccessMode": "EndpointAccessMode",
+          "mtls": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "key": "*",
+            "version": "*"
+          },
+          "basePath": "*",
+          "addBasePathMapping": [
+            "*",
+            {
+              "basePath": "*",
+              "stage": "*",
+              "attachToStage": "boolean"
+            }
+          ],
+          "addApiMapping": [
+            "*",
+            {
+              "basePath": "*"
+            }
+          ]
+        },
+        "GatewayResponse": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "type": "*",
+          "statusCode": "*",
+          "responseHeaders": "*",
+          "templates": "*"
+        },
+        "LambdaRestApi": {
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "integrationOptions": {
+            "proxy": "boolean",
+            "allowTestInvoke": "boolean",
+            "scopePermissionToMethod": "boolean",
+            "cacheKeyParameters": "*",
+            "cacheNamespace": "*",
+            "contentHandling": "ContentHandling",
+            "credentialsRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "credentialsPassthrough": "boolean",
+            "passthroughBehavior": "PassthroughBehavior",
+            "requestParameters": "*",
+            "requestTemplates": "*",
+            "timeout": "*",
+            "integrationResponses": {
+              "selectionPattern": "*",
+              "statusCode": "*",
+              "contentHandling": "ContentHandling",
+              "responseParameters": "*",
+              "responseTemplates": "*"
+            },
+            "connectionType": "ConnectionType",
+            "vpcLink": {
+              "vpcLinkId": "*"
+            },
+            "responseTransferMode": "ResponseTransferMode"
+          },
+          "proxy": "boolean",
+          "options": {
+            "binaryMediaTypes": "*",
+            "minimumCompressionSize": "*",
+            "minCompressionSize": "*",
+            "cloneFrom": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "apiKeySourceType": "ApiKeySourceType",
+            "deploy": "boolean",
+            "deployOptions": {
+              "stageName": "*",
+              "accessLogDestination": "*",
+              "accessLogFormat": "*",
+              "tracingEnabled": "boolean",
+              "cacheClusterEnabled": "boolean",
+              "cacheClusterSize": "*",
+              "clientCertificateId": "*",
+              "description": "*",
+              "documentationVersion": "*",
+              "variables": "*",
+              "methodOptions": "*",
+              "metricsEnabled": "boolean",
+              "loggingLevel": "MethodLoggingLevel",
+              "dataTraceEnabled": "boolean",
+              "throttlingBurstLimit": "*",
+              "throttlingRateLimit": "*",
+              "cachingEnabled": "boolean",
+              "cacheDataEncrypted": "boolean"
+            },
+            "retainDeployments": "boolean",
+            "restApiName": "*",
+            "parameters": "*",
+            "policy": "*",
+            "failOnWarnings": "boolean",
+            "domainName": {
+              "domainName": "*",
+              "certificate": "*",
+              "endpointType": "EndpointType",
+              "securityPolicy": "SecurityPolicy",
+              "endpointAccessMode": "EndpointAccessMode",
+              "mtls": {
+                "bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "encryptionKey": {
+                    "keyArn": "*",
+                    "keyId": "*"
+                  },
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "key": "*",
+                "version": "*"
+              },
+              "basePath": "*"
+            },
+            "cloudWatchRole": "boolean",
+            "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+            "endpointExportName": "*",
+            "endpointTypes": "EndpointType",
+            "endpointConfiguration": {
+              "types": "EndpointType",
+              "vpcEndpoints": {
+                "vpcEndpointId": "*"
+              },
+              "ipAddressType": "IpAddressType"
+            },
+            "disableExecuteApiEndpoint": "boolean",
+            "description": "*"
+          },
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "Method": {
+          "resource": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "httpMethod": "*",
+          "integration": "*",
+          "options": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "addMethodResponse": [
+            {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricClientError": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricServerError": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheHitCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheMissCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIntegrationLatency": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricLatency": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "grantExecute": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Model": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "contentType": "*",
+          "description": "*",
+          "modelName": "*",
+          "schema": {
+            "schema": "JsonSchemaVersion",
+            "id": "*",
+            "ref": "*",
+            "type": "JsonSchemaType",
+            "title": "*",
+            "description": "*",
+            "enum": "*",
+            "default": "*",
+            "format": "*",
+            "definitions": "*",
+            "multipleOf": "*",
+            "maximum": "*",
+            "exclusiveMaximum": "boolean",
+            "minimum": "*",
+            "exclusiveMinimum": "boolean",
+            "maxLength": "*",
+            "minLength": "*",
+            "pattern": "*",
+            "additionalItems": "boolean",
+            "maxItems": "*",
+            "minItems": "*",
+            "uniqueItems": "boolean",
+            "maxProperties": "*",
+            "minProperties": "*",
+            "required": "*",
+            "properties": "*",
+            "additionalProperties": "boolean",
+            "patternProperties": "*",
+            "dependencies": "*"
+          }
+        },
+        "RequestValidator": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "requestValidatorName": "*",
+          "validateRequestBody": "boolean",
+          "validateRequestParameters": "boolean"
+        },
+        "Resource": {
+          "parent": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "pathPart": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "ProxyResource": {
+          "parent": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "anyMethod": "boolean",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          },
+          "addMethod": [
+            "*",
+            "*",
+            {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            }
+          ]
+        },
+        "SpecRestApi": {
+          "apiDefinition": "*",
+          "binaryMediaTypes": "*",
+          "minCompressionSize": "*",
+          "mode": "RestApiMode",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "RestApi": {
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          },
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addModel": [
+            "*",
+            {
+              "contentType": "*",
+              "description": "*",
+              "modelName": "*",
+              "schema": {
+                "schema": "JsonSchemaVersion",
+                "id": "*",
+                "ref": "*",
+                "type": "JsonSchemaType",
+                "title": "*",
+                "description": "*",
+                "enum": "*",
+                "default": "*",
+                "format": "*",
+                "definitions": "*",
+                "multipleOf": "*",
+                "maximum": "*",
+                "exclusiveMaximum": "boolean",
+                "minimum": "*",
+                "exclusiveMinimum": "boolean",
+                "maxLength": "*",
+                "minLength": "*",
+                "pattern": "*",
+                "additionalItems": "boolean",
+                "maxItems": "*",
+                "minItems": "*",
+                "uniqueItems": "boolean",
+                "maxProperties": "*",
+                "minProperties": "*",
+                "required": "*",
+                "properties": "*",
+                "additionalProperties": "boolean",
+                "patternProperties": "*",
+                "dependencies": "*"
+              }
+            }
+          ],
+          "addRequestValidator": [
+            "*",
+            {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          ],
+          "_attachMethod": [
+            "*"
+          ],
+          "_attachDeployment": [
+            "*"
+          ]
+        },
+        "RootResource": {},
+        "Stage": {
+          "deployment": "*",
+          "stageName": "*",
+          "accessLogDestination": "*",
+          "accessLogFormat": "*",
+          "tracingEnabled": "boolean",
+          "cacheClusterEnabled": "boolean",
+          "cacheClusterSize": "*",
+          "clientCertificateId": "*",
+          "description": "*",
+          "documentationVersion": "*",
+          "variables": "*",
+          "methodOptions": "*",
+          "metricsEnabled": "boolean",
+          "loggingLevel": "MethodLoggingLevel",
+          "dataTraceEnabled": "boolean",
+          "throttlingBurstLimit": "*",
+          "throttlingRateLimit": "*",
+          "cachingEnabled": "boolean",
+          "cacheTtl": "*",
+          "cacheDataEncrypted": "boolean"
+        },
+        "StepFunctionsRestApi": {
+          "stateMachine": {
+            "stateMachineArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "requestContext": {
+            "accountId": "boolean",
+            "apiId": "boolean",
+            "apiKey": "boolean",
+            "authorizerPrincipalId": "boolean",
+            "caller": "boolean",
+            "cognitoAuthenticationProvider": "boolean",
+            "cognitoAuthenticationType": "boolean",
+            "cognitoIdentityId": "boolean",
+            "cognitoIdentityPoolId": "boolean",
+            "httpMethod": "boolean",
+            "stage": "boolean",
+            "sourceIp": "boolean",
+            "user": "boolean",
+            "userAgent": "boolean",
+            "userArn": "boolean",
+            "requestId": "boolean",
+            "resourceId": "boolean",
+            "resourcePath": "boolean"
+          },
+          "querystring": "boolean",
+          "path": "boolean",
+          "headers": "boolean",
+          "authorizer": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "useDefaultMethodResponses": "boolean",
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "UsagePlan": {
+          "apiStages": {
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "throttle": {
+              "method": "*",
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              }
+            }
+          },
+          "description": "*",
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "name": "*",
+          "apiKey": {
+            "keyId": "*",
+            "keyArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addApiStage": [
+            {
+              "api": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "throttle": {
+                "method": "*",
+                "throttle": {
+                  "rateLimit": "*",
+                  "burstLimit": "*"
+                }
+              }
+            }
+          ]
+        },
+        "VpcLink": {
+          "vpcLinkName": "*",
+          "description": "*",
+          "targets": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "metrics": "*",
+            "securityGroups": "*",
+            "ipAddressType": "IpAddressType",
+            "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "loadBalancerArn": "*",
+            "connections": "*"
+          },
+          "addTargets": [
+            {
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "metrics": "*",
+              "securityGroups": "*",
+              "ipAddressType": "IpAddressType",
+              "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+              "loadBalancerCanonicalHostedZoneId": "*",
+              "loadBalancerDnsName": "*",
+              "loadBalancerArn": "*",
+              "connections": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-appconfig": {
+        "Application": {
+          "applicationName": "*",
+          "description": "*"
+        },
+        "DeploymentStrategy": {
+          "rolloutStrategy": "*",
+          "deploymentStrategyName": "*",
+          "description": "*"
+        },
+        "Environment": {
+          "application": {
+            "description": "*",
+            "name": "*",
+            "applicationId": "*",
+            "applicationArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "environmentName": "*",
+          "description": "*",
+          "monitors": "*",
+          "deletionProtectionCheck": "DeletionProtectionCheck"
+        },
+        "Extension": {
+          "actions": "*",
+          "extensionName": "*",
+          "description": "*",
+          "latestVersionNumber": "*",
+          "parameters": "*"
+        }
+      },
+      "aws-cdk-lib.aws-applicationautoscaling": {
+        "ScalableTarget": {
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "resourceId": "*",
+          "scalableDimension": "*",
+          "serviceNamespace": "ServiceNamespace",
+          "addToRolePolicy": [
+            "*"
+          ],
+          "scaleOnSchedule": [
+            "*",
+            {
+              "schedule": "*",
+              "startTime": "*",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "timeZone": "*"
+            }
+          ],
+          "scaleOnMetric": [
+            "*",
+            {
+              "metric": {
+                "warnings": "*",
+                "warningsV2": "*"
+              },
+              "scalingSteps": {
+                "lower": "*",
+                "upper": "*",
+                "change": "*"
+              },
+              "adjustmentType": "AdjustmentType",
+              "cooldown": "*",
+              "minAdjustmentMagnitude": "*",
+              "evaluationPeriods": "*",
+              "datapointsToAlarm": "*",
+              "metricAggregationType": "MetricAggregationType"
+            }
+          ],
+          "scaleToTrackMetric": [
+            "*",
+            {
+              "targetValue": "*",
+              "predefinedMetric": "PredefinedMetric",
+              "resourceLabel": "*",
+              "customMetric": {
+                "warnings": "*",
+                "warningsV2": "*"
+              },
+              "policyName": "*",
+              "disableScaleIn": "boolean",
+              "scaleInCooldown": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-appmesh": {
+        "GatewayRoute": {
+          "virtualGateway": {
+            "virtualGatewayName": "*",
+            "virtualGatewayArn": "*",
+            "mesh": {
+              "meshName": "*",
+              "meshArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "gatewayRouteName": "*",
+          "routeSpec": "*"
+        },
+        "Mesh": {
+          "meshName": "*",
+          "egressFilter": "MeshFilterType",
+          "serviceDiscovery": {
+            "ipPreference": "IpPreference"
+          }
+        },
+        "Route": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualRouter": {
+            "virtualRouterName": "*",
+            "virtualRouterArn": "*",
+            "mesh": {
+              "meshName": "*",
+              "meshArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "routeName": "*",
+          "routeSpec": "*"
+        },
+        "VirtualGateway": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualGatewayName": "*",
+          "listeners": "*",
+          "accessLog": "*",
+          "backendDefaults": {
+            "tlsClientPolicy": {
+              "enforce": "boolean",
+              "ports": "*",
+              "validation": {
+                "trust": "*",
+                "subjectAlternativeNames": "*"
+              },
+              "mutualTlsCertificate": "*"
+            }
+          }
+        },
+        "VirtualNode": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualNodeName": "*",
+          "serviceDiscovery": "*",
+          "backends": "*",
+          "listeners": "*",
+          "accessLog": "*",
+          "backendDefaults": {
+            "tlsClientPolicy": {
+              "enforce": "boolean",
+              "ports": "*",
+              "validation": {
+                "trust": "*",
+                "subjectAlternativeNames": "*"
+              },
+              "mutualTlsCertificate": "*"
+            }
+          },
+          "addListener": [
+            "*"
+          ],
+          "addBackend": [
+            "*"
+          ]
+        },
+        "VirtualRouter": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "listeners": "*",
+          "virtualRouterName": "*"
+        },
+        "VirtualService": {
+          "virtualServiceName": "*",
+          "virtualServiceProvider": "*"
+        }
+      },
+      "aws-cdk-lib.aws-appsync": {
+        "AppsyncFunction": {
+          "api": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dataSource": "*",
+          "name": "*",
+          "description": "*",
+          "requestMappingTemplate": "*",
+          "responseMappingTemplate": "*",
+          "runtime": "*",
+          "code": "*",
+          "maxBatchSize": "*"
+        },
+        "ChannelNamespace": {
+          "api": {
+            "authProviderTypes": "AppSyncAuthorizationType",
+            "httpDns": "*",
+            "realtimeDns": "*",
+            "apiId": "*",
+            "apiArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "channelNamespaceName": "*",
+          "code": "*",
+          "publishHandlerConfig": {
+            "direct": "boolean",
+            "dataSource": "*",
+            "lambdaInvokeType": "LambdaInvokeType"
+          },
+          "subscribeHandlerConfig": {
+            "direct": "boolean",
+            "dataSource": "*",
+            "lambdaInvokeType": "LambdaInvokeType"
+          },
+          "authorizationConfig": {
+            "publishAuthModeTypes": "AppSyncAuthorizationType",
+            "subscribeAuthModeTypes": "AppSyncAuthorizationType"
+          },
+          "grantSubscribe": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantPublish": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantPublishAndSubscribe": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "EventApi": {
+          "apiName": "*",
+          "authorizationConfig": {
+            "authProviders": {
+              "authorizationType": "AppSyncAuthorizationType",
+              "cognitoConfig": {
+                "userPool": {
+                  "userPoolId": "*",
+                  "userPoolArn": "*",
+                  "userPoolProviderName": "*",
+                  "identityProviders": {
+                    "providerName": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  }
+                },
+                "appIdClientRegex": "*"
+              },
+              "apiKeyConfig": {
+                "name": "*",
+                "description": "*",
+                "expires": "*"
+              },
+              "openIdConnectConfig": {
+                "tokenExpiryFromAuth": "*",
+                "tokenExpiryFromIssue": "*",
+                "clientId": "*",
+                "oidcProvider": "*"
+              },
+              "lambdaAuthorizerConfig": {
+                "handler": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "latestVersion": {
+                    "version": "*",
+                    "edgeArn": "*",
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "resultsCacheTtl": "*",
+                "validationRegex": "*"
+              }
+            },
+            "connectionAuthModeTypes": "AppSyncAuthorizationType",
+            "defaultPublishAuthModeTypes": "AppSyncAuthorizationType",
+            "defaultSubscribeAuthModeTypes": "AppSyncAuthorizationType"
+          },
+          "logConfig": {
+            "excludeVerboseContent": "boolean",
+            "fieldLogLevel": "AppSyncFieldLogLevel",
+            "role": "*",
+            "retention": "RetentionDays"
+          },
+          "ownerContact": "*",
+          "domainName": {
+            "certificate": "*",
+            "domainName": "*"
+          }
+        },
+        "GraphqlApi": {
+          "name": "*",
+          "authorizationConfig": {
+            "defaultAuthorization": {
+              "authorizationType": "AuthorizationType",
+              "userPoolConfig": {
+                "userPool": {
+                  "userPoolId": "*",
+                  "userPoolArn": "*",
+                  "userPoolProviderName": "*",
+                  "identityProviders": {
+                    "providerName": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  }
+                },
+                "appIdClientRegex": "*",
+                "defaultAction": "UserPoolDefaultAction"
+              },
+              "apiKeyConfig": {
+                "name": "*",
+                "description": "*",
+                "expires": "*"
+              },
+              "openIdConnectConfig": {
+                "tokenExpiryFromAuth": "*",
+                "tokenExpiryFromIssue": "*",
+                "clientId": "*",
+                "oidcProvider": "*"
+              },
+              "lambdaAuthorizerConfig": {
+                "handler": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "latestVersion": {
+                    "version": "*",
+                    "edgeArn": "*",
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "resultsCacheTtl": "*",
+                "validationRegex": "*"
+              }
+            }
+          },
+          "logConfig": {
+            "excludeVerboseContent": "boolean",
+            "fieldLogLevel": "FieldLogLevel",
+            "role": "*",
+            "retention": "RetentionDays"
+          },
+          "definition": "*",
+          "schema": "*",
+          "xrayEnabled": "boolean",
+          "visibility": "Visibility",
+          "domainName": {
+            "certificate": "*",
+            "domainName": "*"
+          },
+          "introspectionConfig": "IntrospectionConfig",
+          "queryDepthLimit": "*",
+          "resolverCountLimit": "*",
+          "environmentVariables": "*",
+          "ownerContact": "*",
+          "enhancedMetricsConfig": {
+            "dataSourceLevelMetricsBehavior": "DataSourceLevelMetricsBehavior",
+            "operationLevelMetricsConfig": "OperationLevelMetricsConfig",
+            "resolverLevelMetricsBehavior": "ResolverLevelMetricsBehavior"
+          },
+          "addSchemaDependency": [
+            "*"
+          ],
+          "addEnvironmentVariable": [
+            "*",
+            "*"
+          ]
+        },
+        "SourceApiAssociation": {
+          "sourceApi": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergedApi": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergedApiExecutionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergeType": "MergeType",
+          "description": "*"
+        }
+      },
+      "aws-cdk-lib.aws-autoscaling": {
+        "AutoScalingGroup": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "migrateToLaunchTemplate": "boolean",
+          "mixedInstancesPolicy": {
+            "instancesDistribution": {
+              "onDemandAllocationStrategy": "OnDemandAllocationStrategy",
+              "onDemandBaseCapacity": "*",
+              "onDemandPercentageAboveBaseCapacity": "*",
+              "spotAllocationStrategy": "SpotAllocationStrategy",
+              "spotInstancePools": "*",
+              "spotMaxPrice": "*"
+            },
+            "launchTemplate": {
+              "versionNumber": "*",
+              "launchTemplateId": "*",
+              "launchTemplateName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "launchTemplateOverrides": {
+              "instanceRequirements": "*",
+              "instanceType": "*",
+              "weightedCapacity": "*"
+            }
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "userData": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "maxHealthyPercentage": "*",
+          "minHealthyPercentage": "*",
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "desiredCapacity": "*",
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "notificationsTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "notifications": {
+            "topic": {
+              "topicArn": "*",
+              "topicName": "*",
+              "masterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            },
+            "scalingEvents": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "updateType": "UpdateType",
+          "rollingUpdateConfiguration": {
+            "maxBatchSize": "*",
+            "minInstancesInService": "*",
+            "minSuccessfulInstancesPercent": "*",
+            "pauseTime": "*",
+            "waitOnResourceSignals": "boolean",
+            "suspendProcesses": "ScalingProcess"
+          },
+          "replacingUpdateMinSuccessfulInstancesPercent": "*",
+          "ignoreUnmodifiedSizeProperties": "boolean",
+          "resourceSignalCount": "*",
+          "resourceSignalTimeout": "*",
+          "cooldown": "*",
+          "associatePublicIpAddress": "boolean",
+          "spotPrice": "*",
+          "healthCheck": "*",
+          "healthChecks": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "maxInstanceLifetime": "*",
+          "instanceMonitoring": "Monitoring",
+          "groupMetrics": "*",
+          "signals": "*",
+          "updatePolicy": "*",
+          "newInstancesProtectedFromScaleIn": "boolean",
+          "autoScalingGroupName": "*",
+          "terminationPolicies": "TerminationPolicy",
+          "terminationPolicyCustomLambdaFunctionArn": "*",
+          "defaultInstanceWarmup": "*",
+          "capacityRebalance": "boolean",
+          "ssmSessionPermissions": "boolean",
+          "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+          "deletionProtection": "DeletionProtection",
+          "instanceLifecyclePolicy": {
+            "retentionTriggers": {
+              "terminateHookAbandon": "TerminateHookAbandonAction"
+            }
+          },
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "attachToClassicLB": [
+            "*"
+          ],
+          "attachToApplicationTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            }
+          ],
+          "attachToNetworkTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*",
+              "isNetworkTargetGroup": "boolean"
+            }
+          ],
+          "addUserData": [
+            "*"
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "applyCloudFormationInit": [
+            "*",
+            {
+              "configSets": "*",
+              "embedFingerprint": "boolean",
+              "printLog": "boolean",
+              "ignoreFailures": "boolean",
+              "includeUrl": "boolean",
+              "includeRole": "boolean"
+            }
+          ],
+          "protectNewInstancesFromScaleIn": [],
+          "areNewInstancesProtectedFromScaleIn": []
+        },
+        "LifecycleHook": {
+          "autoScalingGroup": "*",
+          "lifecycleHookName": "*",
+          "defaultResult": "DefaultResult",
+          "heartbeatTimeout": "*",
+          "lifecycleTransition": "LifecycleTransition",
+          "notificationMetadata": "*",
+          "notificationTarget": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "ScheduledAction": {
+          "autoScalingGroup": "*",
+          "timeZone": "*",
+          "schedule": "*",
+          "startTime": "*",
+          "endTime": "*",
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "desiredCapacity": "*"
+        },
+        "WarmPool": {
+          "autoScalingGroup": "*",
+          "reuseOnScaleIn": "boolean",
+          "maxGroupPreparedCapacity": "*",
+          "minSize": "*",
+          "poolState": "PoolState"
+        }
+      },
+      "aws-cdk-lib.aws-backup": {
+        "BackupPlan": {
+          "backupPlanName": "*",
+          "backupVault": "*",
+          "backupPlanRules": "*",
+          "windowsVss": "boolean",
+          "addRule": [
+            "*"
+          ],
+          "addSelection": [
+            "*",
+            {
+              "resources": "*",
+              "backupSelectionName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "disableDefaultBackupPolicy": "boolean",
+              "allowRestores": "boolean"
+            }
+          ]
+        },
+        "BackupSelection": {
+          "backupPlan": "*",
+          "resources": "*",
+          "backupSelectionName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "disableDefaultBackupPolicy": "boolean",
+          "allowRestores": "boolean"
+        },
+        "BackupVault": {
+          "backupVaultName": "*",
+          "accessPolicy": "*",
+          "encryptionKey": "*",
+          "notificationTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "notificationEvents": "BackupVaultEvents",
+          "removalPolicy": "RemovalPolicy",
+          "blockRecoveryPointDeletion": [],
+          "lockConfiguration": {
+            "minRetention": "*"
+          },
+          "addToAccessPolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-batch": {
+        "ConsumableResource": {
+          "consumableResourceName": "*",
+          "resourceType": "ConsumableResourceType",
+          "totalQuantity": "*",
+          "tags": "*"
+        },
+        "EcsJobDefinition": {
+          "container": {
+            "image": "*",
+            "cpu": "*",
+            "memory": "*",
+            "command": "*",
+            "environment": "*",
+            "executionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "linuxParameters": "*",
+            "logDriverConfig": {
+              "logDriver": "*",
+              "options": "*",
+              "secretOptions": "*"
+            },
+            "readonlyRootFilesystem": "boolean",
+            "secrets": "*",
+            "user": "*",
+            "volumes": "*",
+            "enableExecuteCommand": "boolean"
+          },
+          "propagateTags": "boolean",
+          "jobDefinitionName": "*",
+          "parameters": "*",
+          "retryAttempts": "*",
+          "retryStrategies": "*",
+          "schedulingPriority": "*",
+          "timeout": "*",
+          "skipDeregisterOnUpdate": "boolean",
+          "grantSubmitJob": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "EksJobDefinition": {
+          "container": "*",
+          "dnsPolicy": "DnsPolicy",
+          "useHostNetwork": "boolean",
+          "serviceAccount": "*",
+          "jobDefinitionName": "*",
+          "parameters": "*",
+          "retryAttempts": "*",
+          "retryStrategies": "*",
+          "schedulingPriority": "*",
+          "timeout": "*",
+          "skipDeregisterOnUpdate": "boolean"
+        },
+        "JobQueue": {},
+        "ManagedEc2EcsComputeEnvironment": {
+          "defaultInstanceClasses": "DefaultInstanceClass",
+          "useOptimalInstanceClasses": "boolean",
+          "images": {
+            "imageType": "EcsMachineImageType",
+            "image": "*"
+          },
+          "allocationStrategy": "AllocationStrategy",
+          "spotBidPercentage": "*",
+          "spotFleetRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minvCpus": "*",
+          "placementGroup": "*",
+          "instanceTypes": "*",
+          "instanceClasses": "InstanceClass",
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "ManagedEc2EksComputeEnvironment": {
+          "kubernetesNamespace": "*",
+          "eksCluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "defaultInstanceClasses": "DefaultInstanceClass",
+          "useOptimalInstanceClasses": "boolean",
+          "images": {
+            "imageType": "EksMachineImageType",
+            "image": "*"
+          },
+          "allocationStrategy": "AllocationStrategy",
+          "spotBidPercentage": "*",
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minvCpus": "*",
+          "placementGroup": "*",
+          "instanceTypes": "*",
+          "instanceClasses": "InstanceClass",
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "FargateComputeEnvironment": {
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "MultiNodeJobDefinition": {
+          "addContainer": [
+            {
+              "startNode": "*",
+              "endNode": "*",
+              "container": {
+                "image": "*",
+                "cpu": "*",
+                "memory": "*",
+                "command": "*",
+                "environment": "*",
+                "executionRole": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "linuxParameters": "*",
+                "logDriverConfig": {
+                  "logDriver": "*",
+                  "options": "*",
+                  "secretOptions": "*"
+                },
+                "readonlyRootFilesystem": "boolean",
+                "secrets": "*",
+                "user": "*",
+                "volumes": "*",
+                "enableExecuteCommand": "boolean"
+              }
+            }
+          ]
+        },
+        "FairshareSchedulingPolicy": {
+          "addShare": [
+            {
+              "shareIdentifier": "*",
+              "weightFactor": "*"
+            }
+          ]
+        },
+        "UnmanagedComputeEnvironment": {}
+      },
+      "aws-cdk-lib.aws-certificatemanager": {
+        "Certificate": {
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "validationDomains": "*",
+          "validationMethod": "ValidationMethod",
+          "validation": "*",
+          "allowExport": "boolean",
+          "transparencyLoggingEnabled": "boolean",
+          "certificateName": "*",
+          "keyAlgorithm": "*"
+        },
+        "DnsValidatedCertificate": {
+          "hostedZone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "region": "*",
+          "route53Endpoint": "*",
+          "customResourceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cleanupRoute53Records": "boolean",
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "validationDomains": "*",
+          "validationMethod": "ValidationMethod",
+          "validation": "*",
+          "allowExport": "boolean",
+          "transparencyLoggingEnabled": "boolean",
+          "certificateName": "*",
+          "keyAlgorithm": "*",
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "PrivateCertificate": {
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "certificateAuthority": "*",
+          "keyAlgorithm": "*",
+          "allowExport": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-chatbot": {
+        "SlackChannelConfiguration": {
+          "slackChannelConfigurationName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "slackWorkspaceId": "*",
+          "slackChannelId": "*",
+          "notificationTopics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "loggingLevel": "LoggingLevel",
+          "logRetention": "RetentionDays",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "guardrailPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "userRoleRequired": "boolean",
+          "addNotificationTopic": [
+            {
+              "topicArn": "*",
+              "topicName": "*",
+              "masterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudformation": {
+        "CustomResource": {
+          "provider": "*",
+          "properties": "*",
+          "resourceType": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-cloudfront": {
+        "CachePolicy": {
+          "cachePolicyName": "*",
+          "comment": "*",
+          "defaultTtl": "*",
+          "minTtl": "*",
+          "maxTtl": "*",
+          "cookieBehavior": "*",
+          "headerBehavior": "*",
+          "queryStringBehavior": "*",
+          "enableAcceptEncodingGzip": "boolean",
+          "enableAcceptEncodingBrotli": "boolean"
+        },
+        "Distribution": {
+          "defaultBehavior": {
+            "origin": "*",
+            "allowedMethods": "*",
+            "cachedMethods": "*",
+            "cachePolicy": "*",
+            "compress": "boolean",
+            "originRequestPolicy": "*",
+            "realtimeLogConfig": "*",
+            "responseHeadersPolicy": "*",
+            "smoothStreaming": "boolean",
+            "viewerProtocolPolicy": "ViewerProtocolPolicy",
+            "functionAssociations": {
+              "function": "*",
+              "eventType": "FunctionEventType"
+            },
+            "edgeLambdas": {
+              "functionVersion": {
+                "version": "*",
+                "lambda": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    },
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "eventType": "LambdaEdgeEventType",
+              "includeBody": "boolean"
+            },
+            "trustedKeyGroups": "*",
+            "enableGrpc": "boolean"
+          },
+          "additionalBehaviors": "*",
+          "certificate": "*",
+          "comment": "*",
+          "defaultRootObject": "*",
+          "domainNames": "*",
+          "enabled": "boolean",
+          "enableIpv6": "boolean",
+          "enableLogging": "boolean",
+          "geoRestriction": "*",
+          "httpVersion": "HttpVersion",
+          "logBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "logIncludesCookies": "boolean",
+          "logFilePrefix": "*",
+          "priceClass": "PriceClass",
+          "webAclId": "*",
+          "errorResponses": {
+            "ttl": "*",
+            "httpStatus": "*",
+            "responseHttpStatus": "*",
+            "responsePagePath": "*"
+          },
+          "minimumProtocolVersion": "SecurityPolicyProtocol",
+          "sslSupportMethod": "SSLMethod",
+          "publishAdditionalMetrics": "boolean",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRequests": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricBytesUploaded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricBytesDownloaded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTotalErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric4xxErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric5xxErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricOriginLatency": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheHitRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric401ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric403ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric404ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric502ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric503ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric504ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addBehavior": [
+            "*",
+            "*",
+            {
+              "allowedMethods": "*",
+              "cachedMethods": "*",
+              "cachePolicy": "*",
+              "compress": "boolean",
+              "originRequestPolicy": "*",
+              "realtimeLogConfig": "*",
+              "responseHeadersPolicy": "*",
+              "smoothStreaming": "boolean",
+              "viewerProtocolPolicy": "ViewerProtocolPolicy",
+              "functionAssociations": {
+                "function": "*",
+                "eventType": "FunctionEventType"
+              },
+              "edgeLambdas": {
+                "functionVersion": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "eventType": "LambdaEdgeEventType",
+                "includeBody": "boolean"
+              },
+              "trustedKeyGroups": "*",
+              "enableGrpc": "boolean"
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantCreateInvalidation": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "attachWebAclId": [
+            "*"
+          ]
+        },
+        "Function": {
+          "functionName": "*",
+          "comment": "*",
+          "code": "*",
+          "runtime": "*",
+          "keyValueStore": "*",
+          "autoPublish": "boolean"
+        },
+        "KeyGroup": {
+          "keyGroupName": "*",
+          "comment": "*",
+          "items": "*"
+        },
+        "KeyValueStore": {},
+        "S3OriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "FunctionUrlOriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "MediaPackageV2OriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "OriginAccessIdentity": {},
+        "OriginRequestPolicy": {
+          "originRequestPolicyName": "*",
+          "comment": "*",
+          "cookieBehavior": "*",
+          "headerBehavior": "*",
+          "queryStringBehavior": "*"
+        },
+        "PublicKey": {
+          "publicKeyName": "*",
+          "comment": "*",
+          "encodedKey": "*"
+        },
+        "RealtimeLogConfig": {
+          "realtimeLogConfigName": "*",
+          "fields": "*",
+          "samplingRate": "*",
+          "endPoints": "*"
+        },
+        "ResponseHeadersPolicy": {
+          "responseHeadersPolicyName": "*",
+          "comment": "*",
+          "corsBehavior": {
+            "accessControlAllowCredentials": "boolean",
+            "accessControlAllowHeaders": "*",
+            "accessControlAllowMethods": "*",
+            "accessControlAllowOrigins": "*",
+            "accessControlExposeHeaders": "*",
+            "accessControlMaxAge": "*",
+            "originOverride": "boolean"
+          },
+          "customHeadersBehavior": {
+            "customHeaders": {
+              "header": "*",
+              "override": "boolean",
+              "value": "*"
+            }
+          },
+          "securityHeadersBehavior": {
+            "contentSecurityPolicy": {
+              "contentSecurityPolicy": "*",
+              "override": "boolean"
+            },
+            "contentTypeOptions": {
+              "override": "boolean"
+            },
+            "frameOptions": {
+              "frameOption": "HeadersFrameOption",
+              "override": "boolean"
+            },
+            "referrerPolicy": {
+              "referrerPolicy": "HeadersReferrerPolicy",
+              "override": "boolean"
+            },
+            "strictTransportSecurity": {
+              "accessControlMaxAge": "*",
+              "includeSubdomains": "boolean",
+              "override": "boolean",
+              "preload": "boolean"
+            },
+            "xssProtection": {
+              "modeBlock": "boolean",
+              "override": "boolean",
+              "protection": "boolean",
+              "reportUri": "*"
+            }
+          },
+          "removeHeaders": "*",
+          "serverTimingSamplingRate": "*"
+        },
+        "VpcOrigin": {
+          "endpoint": "*",
+          "httpPort": "*",
+          "httpsPort": "*",
+          "vpcOriginName": "*",
+          "protocolPolicy": "OriginProtocolPolicy",
+          "originSslProtocols": "OriginSslPolicy"
+        },
+        "CloudFrontWebDistribution": {
+          "aliasConfiguration": {
+            "acmCertRef": "*",
+            "names": "*",
+            "sslMethod": "SSLMethod",
+            "securityPolicy": "SecurityPolicyProtocol"
+          },
+          "comment": "*",
+          "enabled": "boolean",
+          "defaultRootObject": "*",
+          "enableIpV6": "boolean",
+          "httpVersion": "HttpVersion",
+          "priceClass": "PriceClass",
+          "viewerProtocolPolicy": "ViewerProtocolPolicy",
+          "originConfigs": {
+            "connectionAttempts": "*",
+            "connectionTimeout": "*",
+            "s3OriginSource": {
+              "s3BucketSource": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "originAccessIdentity": "*",
+              "originPath": "*",
+              "originHeaders": "*",
+              "originShieldRegion": "*"
+            },
+            "customOriginSource": {
+              "domainName": "*",
+              "httpPort": "*",
+              "httpsPort": "*",
+              "originProtocolPolicy": "OriginProtocolPolicy",
+              "allowedOriginSSLVersions": "OriginSslPolicy",
+              "originPath": "*",
+              "originHeaders": "*",
+              "originShieldRegion": "*"
+            },
+            "failoverCriteriaStatusCodes": "FailoverStatusCode",
+            "behaviors": {
+              "compress": "boolean",
+              "isDefaultBehavior": "boolean",
+              "trustedSigners": "*",
+              "trustedKeyGroups": "*",
+              "allowedMethods": "CloudFrontAllowedMethods",
+              "pathPattern": "*",
+              "cachedMethods": "CloudFrontAllowedCachedMethods",
+              "forwardedValues": "*",
+              "lambdaFunctionAssociations": {
+                "eventType": "LambdaEdgeEventType",
+                "lambdaFunction": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "includeBody": "boolean"
+              },
+              "functionAssociations": {
+                "function": "*",
+                "eventType": "FunctionEventType"
+              },
+              "viewerProtocolPolicy": "ViewerProtocolPolicy"
+            },
+            "originPath": "*",
+            "originHeaders": "*",
+            "originShieldRegion": "*"
+          },
+          "loggingConfig": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "includeCookies": "boolean",
+            "prefix": "*"
+          },
+          "errorConfigurations": "*",
+          "webACLId": "*",
+          "viewerCertificate": "*",
+          "geoRestriction": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudtrail": {
+        "Trail": {
+          "includeGlobalServiceEvents": "boolean",
+          "isMultiRegionTrail": "boolean",
+          "managementEvents": "ReadWriteType",
+          "enableFileValidation": "boolean",
+          "sendToCloudWatchLogs": "boolean",
+          "cloudWatchLogsRetention": "RetentionDays",
+          "cloudWatchLogGroup": "*",
+          "kmsKey": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "snsTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "trailName": "*",
+          "s3KeyPrefix": "*",
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "isOrganizationTrail": "boolean",
+          "orgId": "*",
+          "insightTypes": "*",
+          "addEventSelector": [
+            "DataResourceType",
+            "*",
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "addLambdaEventSelector": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "logAllLambdaDataEvents": [
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "addS3EventSelector": [
+            {
+              "bucket": "*",
+              "objectPrefix": "*"
+            },
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "logAllS3DataEvents": [
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "onCloudTrailEvent": [
+            "*",
+            {
+              "target": "*",
+              "description": "*",
+              "ruleName": "*",
+              "eventPattern": {
+                "version": "*",
+                "id": "*",
+                "detailType": "*",
+                "source": "*",
+                "account": "*",
+                "time": "*",
+                "region": "*",
+                "resources": "*",
+                "detail": "*"
+              },
+              "crossStackScope": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudwatch": {
+        "AlarmMuteRule": {
+          "alarms": "*",
+          "alarmMuteRuleName": "*",
+          "description": "*",
+          "schedule": "*",
+          "duration": "*",
+          "start": {
+            "year": "*",
+            "month": "*",
+            "day": "*",
+            "hour": "*",
+            "minute": "*"
+          },
+          "expire": {
+            "year": "*",
+            "month": "*",
+            "day": "*",
+            "hour": "*",
+            "minute": "*"
+          },
+          "tags": "*",
+          "addAlarm": [
+            "*"
+          ]
+        },
+        "Alarm": {
+          "metric": {
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "comparisonOperator": "ComparisonOperator",
+          "threshold": "*",
+          "period": "*",
+          "statistic": "*",
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "evaluationPeriods": "*",
+          "evaluateLowSampleCountPercentile": "*",
+          "treatMissingData": "TreatMissingData",
+          "actionsEnabled": "boolean",
+          "datapointsToAlarm": "*",
+          "toAnnotation": [],
+          "addAlarmAction": [
+            "*"
+          ]
+        },
+        "AnomalyDetectionAlarm": {
+          "metric": {
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "stdDevs": "*",
+          "comparisonOperator": "ComparisonOperator",
+          "period": "*",
+          "statistic": "*",
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "evaluationPeriods": "*",
+          "evaluateLowSampleCountPercentile": "*",
+          "treatMissingData": "TreatMissingData",
+          "actionsEnabled": "boolean",
+          "datapointsToAlarm": "*"
+        },
+        "CompositeAlarm": {
+          "actionsEnabled": "boolean",
+          "alarmDescription": "*",
+          "compositeAlarmName": "*",
+          "alarmRule": "*",
+          "actionsSuppressor": "*",
+          "actionsSuppressorExtensionPeriod": "*",
+          "actionsSuppressorWaitPeriod": "*"
+        },
+        "Dashboard": {
+          "dashboardName": "*",
+          "defaultInterval": "*",
+          "start": "*",
+          "end": "*",
+          "periodOverride": "PeriodOverride",
+          "widgets": {
+            "width": "*",
+            "height": "*",
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "variables": "*",
+          "addWidgets": [
+            {
+              "width": "*",
+              "height": "*",
+              "warnings": "*",
+              "warningsV2": "*"
+            }
+          ],
+          "addVariable": [
+            "*"
+          ]
+        },
+        "PromQLAlarm": {
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "pendingPeriod": "*",
+          "recoveryPeriod": "*",
+          "query": "*",
+          "evaluationInterval": "*",
+          "actionsEnabled": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-codebuild": {
+        "Fleet": {
+          "fleetName": "*",
+          "baseCapacity": "*",
+          "computeType": "FleetComputeType",
+          "environmentType": "EnvironmentType",
+          "computeConfiguration": {
+            "disk": "*",
+            "machineType": "MachineType",
+            "vCpu": "*",
+            "instanceType": "*"
+          },
+          "overflowBehavior": "FleetOverflowBehavior",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        },
+        "PipelineProject": {},
+        "Project": {
+          "source": {
+            "identifier": "*",
+            "type": "*",
+            "badgeSupported": "boolean"
+          },
+          "artifacts": {
+            "identifier": "*",
+            "type": "*"
+          },
+          "secondarySources": {
+            "identifier": "*",
+            "type": "*",
+            "badgeSupported": "boolean"
+          },
+          "secondaryArtifacts": {
+            "identifier": "*",
+            "type": "*"
+          },
+          "description": "*",
+          "buildSpec": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cache": "*",
+          "environment": {
+            "buildImage": {
+              "type": "*",
+              "imageId": "*",
+              "defaultComputeType": "ComputeType",
+              "imagePullPrincipalType": "ImagePullPrincipalType",
+              "secretsManagerCredentials": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "repository": {
+                "repositoryName": "*",
+                "repositoryArn": "*",
+                "repositoryUri": "*",
+                "registryUri": "*"
+              }
+            },
+            "computeType": "ComputeType",
+            "dockerServer": {
+              "computeType": "DockerServerComputeType",
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              }
+            },
+            "fleet": {
+              "fleetArn": "*",
+              "fleetName": "*",
+              "computeType": "FleetComputeType",
+              "environmentType": "EnvironmentType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "hostKernel": "HostKernel",
+            "privileged": "boolean",
+            "certificate": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "objectKey": "*"
+            },
+            "environmentVariables": "*"
+          },
+          "badge": "boolean",
+          "timeout": "*",
+          "environmentVariables": "*",
+          "checkSecretsInPlainTextEnvVariables": "boolean",
+          "projectName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "fileSystemLocations": "*",
+          "grantReportGroupPermissions": "boolean",
+          "logging": {
+            "s3": {
+              "encrypted": "boolean",
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*",
+              "enabled": "boolean"
+            },
+            "cloudWatch": {
+              "logGroup": {
+                "logGroupArn": "*",
+                "logGroupName": "*"
+              },
+              "prefix": "*",
+              "enabled": "boolean"
+            }
+          },
+          "queuedTimeout": "*",
+          "concurrentBuildLimit": "*",
+          "ssmSessionPermissions": "boolean",
+          "visibility": "ProjectVisibility",
+          "autoRetryLimit": "*",
+          "enableBatchBuilds": [],
+          "addSecondarySource": [
+            {
+              "identifier": "*",
+              "type": "*",
+              "badgeSupported": "boolean"
+            }
+          ],
+          "addFileSystemLocation": [
+            "*"
+          ],
+          "addSecondaryArtifact": [
+            {
+              "identifier": "*",
+              "type": "*"
+            }
+          ],
+          "bindToCodePipeline": [
+            "*",
+            {
+              "artifactBucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              }
+            }
+          ]
+        },
+        "ReportGroup": {
+          "reportGroupName": "*",
+          "exportBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "zipExport": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "type": "ReportGroupType",
+          "deleteReports": "boolean"
+        },
+        "GitHubSourceCredentials": {
+          "accessToken": "*"
+        },
+        "GitHubEnterpriseSourceCredentials": {
+          "accessToken": "*"
+        },
+        "BitBucketSourceCredentials": {
+          "username": "*",
+          "password": "*"
+        },
+        "UntrustedCodeBoundaryPolicy": {
+          "managedPolicyName": "*",
+          "additionalStatements": "*"
+        }
+      },
+      "aws-cdk-lib.aws-codecommit": {
+        "Repository": {
+          "repositoryName": "*",
+          "description": "*",
+          "code": "*",
+          "kmsKey": "*",
+          "notify": [
+            "*",
+            {
+              "name": "*",
+              "events": "RepositoryEventTrigger",
+              "branches": "*",
+              "customData": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-codeguruprofiler": {
+        "ProfilingGroup": {
+          "profilingGroupName": "*",
+          "computePlatform": "ComputePlatform"
+        }
+      },
+      "aws-cdk-lib.aws-codepipeline": {
+        "Pipeline": {
+          "artifactBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "restartExecutionOnUpdate": "boolean",
+          "pipelineName": "*",
+          "crossRegionReplicationBuckets": "*",
+          "stages": {
+            "stageName": "*",
+            "actions": {
+              "actionProperties": {
+                "actionName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "region": "*",
+                "account": "*",
+                "resource": "*",
+                "category": "ActionCategory",
+                "provider": "*",
+                "owner": "*",
+                "version": "*",
+                "runOrder": "*",
+                "artifactBounds": {
+                  "minInputs": "*",
+                  "maxInputs": "*",
+                  "minOutputs": "*",
+                  "maxOutputs": "*"
+                },
+                "inputs": "*",
+                "variablesNamespace": "*",
+                "commands": "*",
+                "outputVariables": "*",
+                "timeout": "*"
+              }
+            },
+            "transitionToEnabled": "boolean",
+            "transitionDisabledReason": "*",
+            "beforeEntry": {
+              "conditions": {
+                "rules": "*",
+                "result": "Result"
+              }
+            },
+            "onFailure": {
+              "result": "Result",
+              "retryMode": "RetryMode"
+            }
+          },
+          "crossAccountKeys": "boolean",
+          "enableKeyRotation": "boolean",
+          "reuseCrossRegionSupportStacks": "boolean",
+          "pipelineType": "PipelineType",
+          "variables": "*",
+          "triggers": {
+            "providerType": "ProviderType",
+            "gitConfiguration": {
+              "sourceAction": {
+                "actionProperties": {
+                  "actionName": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    },
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "region": "*",
+                  "account": "*",
+                  "resource": "*",
+                  "category": "ActionCategory",
+                  "provider": "*",
+                  "owner": "*",
+                  "version": "*",
+                  "runOrder": "*",
+                  "artifactBounds": {
+                    "minInputs": "*",
+                    "maxInputs": "*",
+                    "minOutputs": "*",
+                    "maxOutputs": "*"
+                  },
+                  "inputs": "*",
+                  "variablesNamespace": "*",
+                  "commands": "*",
+                  "outputVariables": "*",
+                  "timeout": "*"
+                }
+              },
+              "pushFilter": {
+                "tagsExcludes": "*",
+                "tagsIncludes": "*",
+                "branchesExcludes": "*",
+                "branchesIncludes": "*",
+                "filePathsExcludes": "*",
+                "filePathsIncludes": "*"
+              },
+              "pullRequestFilter": {
+                "events": "GitPullRequestEvent",
+                "branchesExcludes": "*",
+                "branchesIncludes": "*",
+                "filePathsExcludes": "*",
+                "filePathsIncludes": "*"
+              }
+            }
+          },
+          "executionMode": "ExecutionMode",
+          "usePipelineRoleForActions": "boolean",
+          "addStage": [
+            {
+              "placement": {
+                "rightBefore": {
+                  "stageName": "*",
+                  "pipeline": {
+                    "pipelineName": "*",
+                    "pipelineArn": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "actions": {
+                    "actionProperties": {
+                      "actionName": "*",
+                      "role": {
+                        "roleArn": "*",
+                        "roleName": "*",
+                        "assumeRoleAction": "*",
+                        "policyFragment": "*",
+                        "principalAccount": "*",
+                        "grantPrincipal": {
+                          "assumeRoleAction": "*",
+                          "principalAccount": "*"
+                        }
+                      },
+                      "region": "*",
+                      "account": "*",
+                      "resource": "*",
+                      "category": "ActionCategory",
+                      "provider": "*",
+                      "owner": "*",
+                      "version": "*",
+                      "runOrder": "*",
+                      "artifactBounds": {
+                        "minInputs": "*",
+                        "maxInputs": "*",
+                        "minOutputs": "*",
+                        "maxOutputs": "*"
+                      },
+                      "inputs": "*",
+                      "variablesNamespace": "*",
+                      "commands": "*",
+                      "outputVariables": "*",
+                      "timeout": "*"
+                    }
+                  }
+                }
+              },
+              "stageName": "*",
+              "transitionToEnabled": "boolean",
+              "transitionDisabledReason": "*",
+              "beforeEntry": {
+                "conditions": {
+                  "rules": "*",
+                  "result": "Result"
+                }
+              },
+              "onFailure": {
+                "result": "Result",
+                "retryMode": "RetryMode"
+              }
+            }
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "addVariable": [
+            "*"
+          ],
+          "addTrigger": [
+            {
+              "providerType": "ProviderType",
+              "gitConfiguration": {
+                "sourceAction": {
+                  "actionProperties": {
+                    "actionName": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "region": "*",
+                    "account": "*",
+                    "resource": "*",
+                    "category": "ActionCategory",
+                    "provider": "*",
+                    "owner": "*",
+                    "version": "*",
+                    "runOrder": "*",
+                    "artifactBounds": {
+                      "minInputs": "*",
+                      "maxInputs": "*",
+                      "minOutputs": "*",
+                      "maxOutputs": "*"
+                    },
+                    "inputs": "*",
+                    "variablesNamespace": "*",
+                    "commands": "*",
+                    "outputVariables": "*",
+                    "timeout": "*"
+                  }
+                },
+                "pushFilter": {
+                  "tagsExcludes": "*",
+                  "tagsIncludes": "*",
+                  "branchesExcludes": "*",
+                  "branchesIncludes": "*",
+                  "filePathsExcludes": "*",
+                  "filePathsIncludes": "*"
+                },
+                "pullRequestFilter": {
+                  "events": "GitPullRequestEvent",
+                  "branchesExcludes": "*",
+                  "branchesIncludes": "*",
+                  "filePathsExcludes": "*",
+                  "filePathsIncludes": "*"
+                }
+              }
+            }
+          ],
+          "stage": [
+            "*"
+          ],
+          "_attachActionToPipeline": [
+            "*",
+            {
+              "actionProperties": {
+                "actionName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "region": "*",
+                "account": "*",
+                "resource": "*",
+                "category": "ActionCategory",
+                "provider": "*",
+                "owner": "*",
+                "version": "*",
+                "runOrder": "*",
+                "artifactBounds": {
+                  "minInputs": "*",
+                  "maxInputs": "*",
+                  "minOutputs": "*",
+                  "maxOutputs": "*"
+                },
+                "inputs": "*",
+                "variablesNamespace": "*",
+                "commands": "*",
+                "outputVariables": "*",
+                "timeout": "*"
+              }
+            },
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-codestarnotifications": {
+        "NotificationRule": {
+          "events": "*",
+          "source": "*",
+          "targets": "*",
+          "notificationRuleName": "*",
+          "enabled": "boolean",
+          "detailType": "DetailType",
+          "createdBy": "*",
+          "addTarget": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cognito": {
+        "UserPoolClient": {
+          "userPool": "*",
+          "userPoolClientName": "*",
+          "generateSecret": "boolean",
+          "authFlows": {
+            "adminUserPassword": "boolean",
+            "custom": "boolean",
+            "userPassword": "boolean",
+            "userSrp": "boolean",
+            "user": "boolean"
+          },
+          "disableOAuth": "boolean",
+          "oAuth": {
+            "flows": {
+              "authorizationCodeGrant": "boolean",
+              "implicitCodeGrant": "boolean",
+              "clientCredentials": "boolean"
+            },
+            "callbackUrls": "*",
+            "logoutUrls": "*",
+            "scopes": "*",
+            "defaultRedirectUri": "*"
+          },
+          "authSessionValidity": "*",
+          "preventUserExistenceErrors": "boolean",
+          "supportedIdentityProviders": "*",
+          "idTokenValidity": "*",
+          "refreshTokenValidity": "*",
+          "accessTokenValidity": "*",
+          "refreshTokenRotationGracePeriod": "*",
+          "readAttributes": "*",
+          "writeAttributes": "*",
+          "enableTokenRevocation": "boolean",
+          "enablePropagateAdditionalUserContextData": "boolean",
+          "analytics": {
+            "application": "*",
+            "applicationId": "*",
+            "externalId": "*",
+            "role": "*",
+            "shareUserData": "boolean"
+          }
+        },
+        "UserPoolDomain": {
+          "userPool": "*",
+          "customDomain": {
+            "domainName": "*",
+            "certificate": "*"
+          },
+          "cognitoDomain": {
+            "domainPrefix": "*"
+          },
+          "managedLoginVersion": "ManagedLoginVersion",
+          "baseUrl": [
+            {
+              "fips": "boolean"
+            }
+          ],
+          "signInUrl": [
+            "*",
+            {
+              "redirectUri": "*",
+              "signInPath": "*",
+              "fips": "boolean"
+            }
+          ]
+        },
+        "UserPoolGroup": {
+          "userPool": "*",
+          "description": "*",
+          "groupName": "*",
+          "precedence": "*",
+          "role": "*"
+        },
+        "UserPoolResourceServer": {
+          "userPool": "*",
+          "identifier": "*",
+          "userPoolResourceServerName": "*",
+          "scopes": "*"
+        },
+        "UserPool": {
+          "userPoolName": "*",
+          "selfSignUpEnabled": "boolean",
+          "userVerification": {
+            "emailSubject": "*",
+            "emailBody": "*",
+            "emailStyle": "VerificationEmailStyle",
+            "smsMessage": "*"
+          },
+          "userInvitation": {
+            "emailSubject": "*",
+            "emailBody": "*",
+            "smsMessage": "*"
+          },
+          "smsRole": "*",
+          "smsRoleExternalId": "*",
+          "snsRegion": "*",
+          "enableSmsRole": "boolean",
+          "signInAliases": {
+            "username": "boolean",
+            "email": "boolean",
+            "phone": "boolean",
+            "preferredUsername": "boolean"
+          },
+          "autoVerify": {
+            "email": "boolean",
+            "phone": "boolean"
+          },
+          "keepOriginal": {
+            "email": "boolean",
+            "phone": "boolean"
+          },
+          "standardAttributes": {
+            "address": {
+              "mutable": "boolean",
+              "required": "boolean"
+            }
+          },
+          "customAttributes": "*",
+          "mfa": "Mfa",
+          "mfaMessage": "*",
+          "mfaSecondFactor": {
+            "sms": "boolean",
+            "otp": "boolean",
+            "email": "boolean"
+          },
+          "passwordPolicy": {
+            "tempPasswordValidity": "*",
+            "minLength": "*",
+            "requireLowercase": "boolean",
+            "requireUppercase": "boolean",
+            "requireDigits": "boolean",
+            "requireSymbols": "boolean",
+            "passwordHistorySize": "*"
+          },
+          "signInPolicy": {
+            "allowedFirstAuthFactors": {
+              "password": "boolean",
+              "emailOtp": "boolean",
+              "smsOtp": "boolean",
+              "passkey": "boolean"
+            }
+          },
+          "passkeyRelyingPartyId": "*",
+          "passkeyUserVerification": "PasskeyUserVerification",
+          "emailSettings": {
+            "from": "*",
+            "replyTo": "*"
+          },
+          "email": "*",
+          "lambdaTriggers": {
+            "createAuthChallenge": {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          },
+          "signInCaseSensitive": "boolean",
+          "accountRecovery": "AccountRecovery",
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "deviceTracking": {
+            "challengeRequiredOnNewDevice": "boolean",
+            "deviceOnlyRememberedOnUserPrompt": "boolean"
+          },
+          "customSenderKmsKey": "*",
+          "advancedSecurityMode": "AdvancedSecurityMode",
+          "featurePlan": "FeaturePlan",
+          "standardThreatProtectionMode": "StandardThreatProtectionMode",
+          "customThreatProtectionMode": "CustomThreatProtectionMode",
+          "addTrigger": [
+            "*",
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            "LambdaVersion"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cognito-identitypool": {
+        "IdentityPool": {
+          "identityPoolName": "*",
+          "authenticatedRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "unauthenticatedRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "allowUnauthenticatedIdentities": "boolean",
+          "roleMappings": {
+            "providerUrl": "*",
+            "mappingKey": "*",
+            "useToken": "boolean",
+            "resolveAmbiguousRoles": "boolean",
+            "rules": {
+              "claim": "*",
+              "mappedRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "claimValue": "*",
+              "matchType": "RoleMappingMatchType"
+            }
+          },
+          "allowClassicFlow": "boolean",
+          "authenticationProviders": {
+            "facebook": {
+              "appId": "*"
+            },
+            "google": {
+              "clientId": "*"
+            },
+            "amazon": {
+              "appId": "*"
+            },
+            "apple": {
+              "servicesId": "*"
+            },
+            "twitter": {
+              "consumerKey": "*",
+              "consumerSecret": "*"
+            },
+            "userPools": "*",
+            "openIdConnectProviders": "*",
+            "samlProviders": "*",
+            "customProvider": "*"
+          },
+          "addUserPoolAuthentication": [
+            "*"
+          ]
+        },
+        "IdentityPoolRoleAttachment": {
+          "identityPool": {
+            "identityPoolId": "*",
+            "identityPoolArn": "*",
+            "identityPoolName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "authenticatedRole": "*",
+          "unauthenticatedRole": "*",
+          "roleMappings": {
+            "providerUrl": "*",
+            "mappingKey": "*",
+            "useToken": "boolean",
+            "resolveAmbiguousRoles": "boolean",
+            "rules": {
+              "claim": "*",
+              "mappedRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "claimValue": "*",
+              "matchType": "RoleMappingMatchType"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-config": {
+        "AccessKeysRotated": {
+          "maxAge": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CloudFormationStackDriftDetectionCheck": {
+          "ownStackOnly": "boolean",
+          "role": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CloudFormationStackNotificationCheck": {
+          "topics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "ManagedRule": {
+          "identifier": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CustomRule": {
+          "lambdaFunction": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "configurationChanges": "boolean",
+          "periodic": "boolean",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CustomPolicy": {
+          "policyText": "*",
+          "enableDebugLog": "boolean",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        }
+      },
+      "aws-cdk-lib.aws-docdb": {
+        "DatabaseCluster": {
+          "engineVersion": "*",
+          "port": "*",
+          "masterUser": {
+            "username": "*",
+            "password": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "excludeCharacters": "*",
+            "secretName": "*"
+          },
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "storageEncrypted": "boolean",
+          "dbClusterName": "*",
+          "instanceIdentifierBase": "*",
+          "instanceType": "*",
+          "instances": "*",
+          "serverlessV2ScalingConfiguration": {
+            "minCapacity": "*",
+            "maxCapacity": "*"
+          },
+          "caCertificate": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": "*",
+          "preferredMaintenanceWindow": "*",
+          "instanceMaintenanceWindow": "*",
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "exportProfilerLogsToCloudWatch": "boolean",
+          "exportAuditLogsToCloudWatch": "boolean",
+          "cloudWatchLogsRetention": "RetentionDays",
+          "cloudWatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enablePerformanceInsights": "boolean",
+          "instanceRemovalPolicy": "RemovalPolicy",
+          "securityGroupRemovalPolicy": "RemovalPolicy",
+          "copyTagsToSnapshot": "boolean",
+          "storageType": "StorageType",
+          "manageMasterUserPassword": "boolean",
+          "masterUserSecretKmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addRotationSingleUser": [
+            "*"
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*"
+            }
+          ],
+          "addSecurityGroups": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "secretName": "*",
+          "masterSecret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "excludeCharacters": "*"
+        },
+        "DatabaseInstance": {
+          "cluster": "*",
+          "instanceType": "*",
+          "availabilityZone": "*",
+          "dbInstanceName": "*",
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "removalPolicy": "RemovalPolicy",
+          "enablePerformanceInsights": "boolean",
+          "caCertificate": "*"
+        },
+        "ClusterParameterGroup": {
+          "description": "*",
+          "family": "*",
+          "dbClusterParameterGroupName": "*",
+          "parameters": "*"
+        }
+      },
+      "aws-cdk-lib.aws-dynamodb": {
+        "TableV2": {
+          "partitionKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "sortKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "tableName": "*",
+          "timeToLiveAttribute": "*",
+          "dynamoStream": "StreamViewType",
+          "removalPolicy": "RemovalPolicy",
+          "billing": "*",
+          "replicas": {
+            "region": "*",
+            "readCapacity": "*",
+            "maxReadRequestUnits": "*",
+            "globalSecondaryIndexOptions": "*",
+            "contributorInsights": "boolean",
+            "contributorInsightsSpecification": {
+              "enabled": "boolean",
+              "mode": "ContributorInsightsMode"
+            },
+            "deletionProtection": "boolean",
+            "pointInTimeRecovery": "boolean",
+            "pointInTimeRecoverySpecification": {
+              "pointInTimeRecoveryEnabled": "boolean",
+              "recoveryPeriodInDays": "*"
+            },
+            "tableClass": "TableClass",
+            "kinesisStream": {
+              "streamArn": "*",
+              "streamName": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            },
+            "tags": {
+              "key": "*",
+              "value": "*"
+            },
+            "resourcePolicy": "*"
+          },
+          "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode",
+          "witnessRegion": "*",
+          "multiRegionConsistency": "MultiRegionConsistency",
+          "globalSecondaryIndexes": {
+            "partitionKey": {
+              "name": "*",
+              "type": "AttributeType"
+            },
+            "readCapacity": "*",
+            "maxReadRequestUnits": "*",
+            "maxWriteRequestUnits": "*",
+            "warmThroughput": {
+              "readUnitsPerSecond": "*",
+              "writeUnitsPerSecond": "*"
+            },
+            "indexName": "*",
+            "projectionType": "ProjectionType",
+            "nonKeyAttributes": "*"
+          },
+          "localSecondaryIndexes": {
+            "sortKey": {
+              "name": "*",
+              "type": "AttributeType"
+            },
+            "indexName": "*",
+            "projectionType": "ProjectionType",
+            "nonKeyAttributes": "*"
+          },
+          "encryption": "*",
+          "warmThroughput": {
+            "readUnitsPerSecond": "*",
+            "writeUnitsPerSecond": "*"
+          },
+          "contributorInsights": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "tableClass": "TableClass",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tags": {
+            "key": "*",
+            "value": "*"
+          },
+          "resourcePolicy": "*",
+          "streamResourcePolicy": "*",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addToStreamResourcePolicy": [
+            "*"
+          ],
+          "addReplica": [
+            {
+              "region": "*",
+              "readCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "globalSecondaryIndexOptions": "*",
+              "contributorInsights": "boolean",
+              "contributorInsightsSpecification": {
+                "enabled": "boolean",
+                "mode": "ContributorInsightsMode"
+              },
+              "deletionProtection": "boolean",
+              "pointInTimeRecovery": "boolean",
+              "pointInTimeRecoverySpecification": {
+                "pointInTimeRecoveryEnabled": "boolean",
+                "recoveryPeriodInDays": "*"
+              },
+              "tableClass": "TableClass",
+              "kinesisStream": {
+                "streamArn": "*",
+                "streamName": "*",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "tags": {
+                "key": "*",
+                "value": "*"
+              },
+              "resourcePolicy": "*"
+            }
+          ],
+          "addGlobalSecondaryIndex": [
+            {
+              "partitionKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "readCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "maxWriteRequestUnits": "*",
+              "warmThroughput": {
+                "readUnitsPerSecond": "*",
+                "writeUnitsPerSecond": "*"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "addLocalSecondaryIndex": [
+            {
+              "sortKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "replica": [
+            "*"
+          ]
+        },
+        "TableV2MultiAccountReplica": {
+          "replicaSourceTable": {
+            "tableId": "*",
+            "grants": "*",
+            "tableArn": "*",
+            "tableName": "*",
+            "tableStreamArn": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tableName": "*",
+          "encryption": "*",
+          "removalPolicy": "RemovalPolicy",
+          "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode",
+          "grantIndexPermissions": "boolean",
+          "contributorInsights": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "tableClass": "TableClass",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tags": {
+            "key": "*",
+            "value": "*"
+          },
+          "resourcePolicy": "*",
+          "streamResourcePolicy": "*",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addToStreamResourcePolicy": [
+            "*"
+          ]
+        },
+        "Table": {
+          "tableName": "*",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kinesisPrecisionTimestamp": "ApproximateCreationDateTimePrecision",
+          "readCapacity": "*",
+          "writeCapacity": "*",
+          "maxReadRequestUnits": "*",
+          "maxWriteRequestUnits": "*",
+          "billingMode": "BillingMode",
+          "warmThroughput": {
+            "readUnitsPerSecond": "*",
+            "writeUnitsPerSecond": "*"
+          },
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "serverSideEncryption": "boolean",
+          "tableClass": "TableClass",
+          "encryption": "TableEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeToLiveAttribute": "*",
+          "stream": "StreamViewType",
+          "removalPolicy": "RemovalPolicy",
+          "replicaRemovalPolicy": "RemovalPolicy",
+          "replicationRegions": "*",
+          "replicationTimeout": "*",
+          "waitForReplicationToFinish": "boolean",
+          "contributorInsightsEnabled": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "importSource": {
+            "compressionType": "InputCompressionType",
+            "inputFormat": "*",
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "bucketOwner": "*",
+            "keyPrefix": "*"
+          },
+          "resourcePolicy": "*",
+          "partitionKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "sortKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addGlobalSecondaryIndex": [
+            {
+              "partitionKeys": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "readCapacity": "*",
+              "writeCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "maxWriteRequestUnits": "*",
+              "warmThroughput": {
+                "readUnitsPerSecond": "*",
+                "writeUnitsPerSecond": "*"
+              },
+              "contributorInsightsEnabled": "boolean",
+              "contributorInsightsSpecification": {
+                "enabled": "boolean",
+                "mode": "ContributorInsightsMode"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "addLocalSecondaryIndex": [
+            {
+              "sortKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "autoScaleReadCapacity": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleWriteCapacity": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleGlobalSecondaryIndexReadCapacity": [
+            "*",
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleGlobalSecondaryIndexWriteCapacity": [
+            "*",
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "schema": [
+            "*"
+          ],
+          "schemaV2": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ec2": {
+        "BastionHostLinux": {
+          "availabilityZone": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "instanceName": "*",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "timeout": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "userDataCausesReplacement": "boolean",
+          "allowSshAccessFrom": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "ClientVpnAuthorizationRule": {
+          "clientVpnEndpoint": "*",
+          "clientVpnEndoint": "*",
+          "cidr": "*",
+          "groupId": "*",
+          "description": "*"
+        },
+        "ClientVpnEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "cidr": "*",
+          "clientCertificateArn": "*",
+          "userBasedAuthentication": "*",
+          "logging": "boolean",
+          "logGroup": "*",
+          "logStream": "*",
+          "clientConnectionHandler": {
+            "functionName": "*",
+            "functionArn": "*"
+          },
+          "description": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "selfServicePortal": "boolean",
+          "serverCertificateArn": "*",
+          "splitTunnel": "boolean",
+          "transportProtocol": "TransportProtocol",
+          "port": "VpnPort",
+          "dnsServers": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "authorizeAllUsersToVpcCidr": "boolean",
+          "sessionTimeout": "ClientVpnSessionTimeout",
+          "disconnectOnSessionTimeout": "boolean",
+          "clientLoginBanner": "*",
+          "clientRouteEnforcementOptions": {
+            "enforced": "boolean"
+          },
+          "addAuthorizationRule": [
+            "*",
+            {
+              "cidr": "*",
+              "groupId": "*",
+              "description": "*"
+            }
+          ],
+          "addRoute": [
+            "*",
+            {
+              "cidr": "*",
+              "description": "*",
+              "target": "*"
+            }
+          ]
+        },
+        "ClientVpnRoute": {
+          "clientVpnEndpoint": {
+            "endpointId": "*",
+            "targetNetworksAssociated": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "clientVpnEndoint": {
+            "endpointId": "*",
+            "targetNetworksAssociated": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "cidr": "*",
+          "description": "*",
+          "target": "*"
+        },
+        "Instance": {
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "availabilityZone": "*",
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "resourceSignalTimeout": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "userData": "*",
+          "userDataCausesReplacement": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceName": "*",
+          "sourceDestCheck": "boolean",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "privateIpAddress": "*",
+          "propagateTagsToVolumeOnCreation": "boolean",
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "timeout": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "httpEndpoint": "boolean",
+          "httpProtocolIpv6": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "HttpTokens",
+          "instanceMetadataTags": "boolean",
+          "detailedMonitoring": "boolean",
+          "ssmSessionPermissions": "boolean",
+          "associatePublicIpAddress": "boolean",
+          "creditSpecification": "CpuCredits",
+          "ebsOptimized": "boolean",
+          "disableApiTermination": "boolean",
+          "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior",
+          "placementGroup": "*",
+          "enclaveEnabled": "boolean",
+          "hibernationEnabled": "boolean",
+          "ipv6AddressCount": "*",
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "addUserData": [
+            "*"
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "applyCloudFormationInit": [
+            "*",
+            {
+              "configSets": "*",
+              "timeout": "*",
+              "embedFingerprint": "boolean",
+              "printLog": "boolean",
+              "ignoreFailures": "boolean",
+              "includeUrl": "boolean",
+              "includeRole": "boolean"
+            }
+          ]
+        },
+        "KeyPair": {
+          "_isOsCompatible": [
+            "OperatingSystemType"
+          ]
+        },
+        "LaunchTemplate": {
+          "launchTemplateName": "*",
+          "versionDescription": "*",
+          "instanceType": "*",
+          "machineImage": "*",
+          "userData": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "cpuCredits": "CpuCredits",
+          "cpuOptions": {
+            "amdSevSnp": "boolean",
+            "coreCount": "*",
+            "nestedVirtualization": "boolean",
+            "threadsPerCore": "*"
+          },
+          "disableApiTermination": "boolean",
+          "ebsOptimized": "boolean",
+          "nitroEnclaveEnabled": "boolean",
+          "hibernationConfigured": "boolean",
+          "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior",
+          "spotOptions": {
+            "blockDuration": "*",
+            "interruptionBehavior": "SpotInstanceInterruption",
+            "maxPrice": "*",
+            "requestType": "SpotRequestType",
+            "validUntil": "*"
+          },
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "detailedMonitoring": "boolean",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "requireImdsv2": "boolean",
+          "httpEndpoint": "boolean",
+          "httpProtocolIpv6": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "LaunchTemplateHttpTokens",
+          "instanceMetadataTags": "boolean",
+          "associatePublicIpAddress": "boolean",
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "placementGroup": "*",
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "NetworkAcl": {
+          "networkAclName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "associateWithSubnet": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ]
+        },
+        "NetworkAclEntry": {
+          "networkAcl": {
+            "networkAclId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkAclEntryName": "*",
+          "cidr": "*",
+          "traffic": "*",
+          "direction": "TrafficDirection",
+          "ruleAction": "Action",
+          "ruleNumber": "*"
+        },
+        "SubnetNetworkAclAssociation": {
+          "subnetNetworkAclAssociationName": "*",
+          "networkAcl": "*",
+          "subnet": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "PlacementGroup": {},
+        "PrefixList": {},
+        "SecurityGroup": {
+          "securityGroupName": "*",
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "disableInlineRules": "boolean",
+          "addIngressRule": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "*",
+            "*",
+            "boolean"
+          ],
+          "addEgressRule": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "*",
+            "*",
+            "boolean"
+          ]
+        },
+        "Volume": {
+          "volumeName": "*",
+          "availabilityZone": "*",
+          "size": "*",
+          "snapshotId": "*",
+          "enableMultiAttach": "boolean",
+          "encrypted": "boolean",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoEnableIo": "boolean",
+          "volumeType": "EbsDeviceVolumeType",
+          "iops": "*",
+          "removalPolicy": "RemovalPolicy",
+          "throughput": "*",
+          "volumeInitializationRate": "*"
+        },
+        "VpcEndpointService": {
+          "vpcEndpointServiceName": "*",
+          "vpcEndpointServiceLoadBalancers": {
+            "loadBalancerArn": "*"
+          },
+          "acceptanceRequired": "boolean",
+          "contributorInsights": "boolean",
+          "whitelistedPrincipals": "*",
+          "allowedPrincipals": "*",
+          "supportedIpAddressTypes": "IpAddressType",
+          "allowedRegions": "*"
+        },
+        "GatewayVpcEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "service": {
+            "name": "*"
+          },
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "ipAddressType": "VpcEndpointIpAddressType",
+          "dnsRecordIpType": "VpcEndpointDnsRecordIpType"
+        },
+        "InterfaceVpcEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "service": {
+            "name": "*",
+            "port": "*",
+            "privateDnsDefault": "boolean"
+          },
+          "privateDnsEnabled": "boolean",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "open": "boolean",
+          "lookupSupportedAzs": "boolean",
+          "ipAddressType": "VpcEndpointIpAddressType",
+          "dnsRecordIpType": "VpcEndpointDnsRecordIpType",
+          "privateDnsOnlyForInboundResolverEndpoint": "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint",
+          "serviceRegion": "*"
+        },
+        "FlowLog": {
+          "flowLogName": "*",
+          "resourceType": "*",
+          "trafficType": "FlowLogTrafficType",
+          "destination": "*",
+          "logFormat": "*",
+          "maxAggregationInterval": "FlowLogMaxAggregationInterval"
+        },
+        "Vpc": {
+          "ipProtocol": "IpProtocol",
+          "ipAddresses": "*",
+          "cidr": "*",
+          "enableDnsHostnames": "boolean",
+          "enableDnsSupport": "boolean",
+          "defaultInstanceTenancy": "DefaultInstanceTenancy",
+          "maxAzs": "*",
+          "reservedAzs": "*",
+          "availabilityZones": "*",
+          "natGateways": "*",
+          "natGatewaySubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "natGatewayProvider": "*",
+          "subnetConfiguration": {
+            "cidrMask": "*",
+            "subnetType": "SubnetType",
+            "name": "*",
+            "reserved": "boolean",
+            "mapPublicIpOnLaunch": "boolean",
+            "ipv6AssignAddressOnCreation": "boolean"
+          },
+          "vpnGateway": "boolean",
+          "vpnGatewayAsn": "*",
+          "vpnConnections": "*",
+          "vpnRoutePropagation": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "gatewayEndpoints": "*",
+          "flowLogs": "*",
+          "vpcName": "*",
+          "restrictDefaultSecurityGroup": "boolean",
+          "createInternetGateway": "boolean",
+          "ipv6Addresses": {
+            "amazonProvided": "boolean"
+          },
+          "addS3Endpoint": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ],
+          "addDynamoDbEndpoint": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ]
+        },
+        "Subnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "addDefaultInternetRoute": [
+            "*",
+            "*"
+          ],
+          "addIpv6DefaultInternetRoute": [
+            "*",
+            "*"
+          ],
+          "addIpv6DefaultEgressOnlyInternetRoute": [
+            "*"
+          ],
+          "addDefaultNatRoute": [
+            "*"
+          ],
+          "addIpv6Nat64Route": [
+            "*"
+          ],
+          "addRoute": [
+            "*",
+            {
+              "destinationCidrBlock": "*",
+              "destinationIpv6CidrBlock": "*",
+              "routerType": "RouterType",
+              "routerId": "*",
+              "enablesInternetConnectivity": "boolean"
+            }
+          ],
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "PublicSubnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "addNatGateway": [
+            "*",
+            {
+              "maxDrainDuration": "*"
+            }
+          ]
+        },
+        "PrivateSubnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean"
+        },
+        "ImportedVpc": {
+          "vpcId": "*",
+          "vpcCidrBlock": "*",
+          "availabilityZones": "*",
+          "publicSubnetIds": "*",
+          "publicSubnetNames": "*",
+          "publicSubnetRouteTableIds": "*",
+          "publicSubnetIpv4CidrBlocks": "*",
+          "privateSubnetIds": "*",
+          "privateSubnetNames": "*",
+          "privateSubnetRouteTableIds": "*",
+          "privateSubnetIpv4CidrBlocks": "*",
+          "isolatedSubnetIds": "*",
+          "isolatedSubnetNames": "*",
+          "isolatedSubnetRouteTableIds": "*",
+          "isolatedSubnetIpv4CidrBlocks": "*",
+          "vpnGatewayId": "*",
+          "region": "*"
+        },
+        "LookedUpVpc": {
+          "vpcId": "*",
+          "vpcCidrBlock": "*",
+          "availabilityZones": "*",
+          "publicSubnetIds": "*",
+          "publicSubnetNames": "*",
+          "publicSubnetRouteTableIds": "*",
+          "privateSubnetIds": "*",
+          "privateSubnetNames": "*",
+          "privateSubnetRouteTableIds": "*",
+          "isolatedSubnetIds": "*",
+          "isolatedSubnetNames": "*",
+          "isolatedSubnetRouteTableIds": "*",
+          "vpnGatewayId": "*",
+          "subnetGroups": {
+            "name": "*",
+            "type": "VpcSubnetGroupType",
+            "subnets": {
+              "subnetId": "*",
+              "availabilityZone": "*",
+              "routeTableId": "*",
+              "cidr": "*"
+            }
+          },
+          "region": "*",
+          "ownerAccountId": "*"
+        },
+        "ImportedSubnet": {
+          "availabilityZone": "*",
+          "ipv4CidrBlock": "*",
+          "routeTableId": "*",
+          "subnetId": "*",
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "VpnGateway": {
+          "type": "*",
+          "amazonSideAsn": "*"
+        },
+        "VpnConnection": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ip": "*",
+          "asn": "*",
+          "staticRoutes": "*",
+          "tunnelOptions": {
+            "preSharedKey": "*",
+            "preSharedKeySecret": "*",
+            "tunnelInsideCidr": "*"
+          }
+        }
+      },
+      "aws-cdk-lib.aws-ecr": {
+        "Repository": {
+          "repositoryName": "*",
+          "encryption": "*",
+          "encryptionKey": "*",
+          "lifecycleRules": {
+            "rulePriority": "*",
+            "description": "*",
+            "tagStatus": "TagStatus",
+            "tagPrefixList": "*",
+            "tagPatternList": "*",
+            "maxImageCount": "*",
+            "maxImageAge": "*"
+          },
+          "lifecycleRegistryId": "*",
+          "removalPolicy": "RemovalPolicy",
+          "imageScanOnPush": "boolean",
+          "imageTagMutability": "TagMutability",
+          "imageTagMutabilityExclusionFilters": "*",
+          "autoDeleteImages": "boolean",
+          "emptyOnDelete": "boolean",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addLifecycleRule": [
+            {
+              "rulePriority": "*",
+              "description": "*",
+              "tagStatus": "TagStatus",
+              "tagPrefixList": "*",
+              "tagPatternList": "*",
+              "maxImageCount": "*",
+              "maxImageAge": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ecs": {
+        "Cluster": {
+          "clusterName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "defaultCloudMapNamespace": {
+            "name": "*",
+            "type": "NamespaceType",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "useForServiceConnect": "boolean"
+          },
+          "capacity": {
+            "instanceType": "*",
+            "machineImage": "*",
+            "taskDrainTime": "*",
+            "spotInstanceDraining": "boolean",
+            "topicEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "machineImageType": "MachineImageType",
+            "minCapacity": "*",
+            "maxCapacity": "*",
+            "desiredCapacity": "*",
+            "keyName": "*",
+            "keyPair": {
+              "keyPairName": "*",
+              "type": "KeyPairType"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              }
+            },
+            "notificationsTopic": {
+              "topicArn": "*",
+              "topicName": "*",
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            },
+            "notifications": {
+              "scalingEvents": "*"
+            },
+            "allowAllOutbound": "boolean",
+            "updateType": "UpdateType",
+            "rollingUpdateConfiguration": {
+              "maxBatchSize": "*",
+              "minInstancesInService": "*",
+              "minSuccessfulInstancesPercent": "*",
+              "waitOnResourceSignals": "boolean",
+              "suspendProcesses": "ScalingProcess"
+            },
+            "replacingUpdateMinSuccessfulInstancesPercent": "*",
+            "ignoreUnmodifiedSizeProperties": "boolean",
+            "resourceSignalCount": "*",
+            "associatePublicIpAddress": "boolean",
+            "spotPrice": "*",
+            "healthCheck": "*",
+            "healthChecks": "*",
+            "blockDevices": {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            },
+            "instanceMonitoring": "Monitoring",
+            "groupMetrics": "*",
+            "signals": "*",
+            "updatePolicy": "*",
+            "newInstancesProtectedFromScaleIn": "boolean",
+            "autoScalingGroupName": "*",
+            "terminationPolicies": "TerminationPolicy",
+            "terminationPolicyCustomLambdaFunctionArn": "*",
+            "capacityRebalance": "boolean",
+            "ssmSessionPermissions": "boolean",
+            "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+            "deletionProtection": "DeletionProtection",
+            "instanceLifecyclePolicy": {
+              "retentionTriggers": {
+                "terminateHookAbandon": "TerminateHookAbandonAction"
+              }
+            }
+          },
+          "capacityProviders": "*",
+          "enableFargateCapacityProviders": [],
+          "containerInsights": "boolean",
+          "containerInsightsV2": "ContainerInsights",
+          "executeCommandConfiguration": {
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "logConfiguration": {
+              "cloudWatchEncryptionEnabled": "boolean",
+              "cloudWatchLogGroup": "*",
+              "s3Bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "s3EncryptionEnabled": "boolean",
+              "s3KeyPrefix": "*"
+            },
+            "logging": "ExecuteCommandLogging"
+          },
+          "managedStorageConfiguration": {
+            "fargateEphemeralStorageKmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "kmsKey": "*"
+          },
+          "addDefaultCapacityProviderStrategy": [
+            {
+              "capacityProvider": "*",
+              "base": "*",
+              "weight": "*"
+            }
+          ],
+          "addDefaultCloudMapNamespace": [
+            {
+              "name": "*",
+              "type": "NamespaceType",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "useForServiceConnect": "boolean"
+            }
+          ],
+          "addExistingDefaultCloudMapNamespace": [
+            {
+              "namespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "useForServiceConnect": "boolean"
+            }
+          ],
+          "addCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "machineImage": "*",
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType"
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addAsgCapacityProvider": [
+            "*",
+            {
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType"
+            }
+          ],
+          "addManagedInstancesCapacityProvider": [
+            "*"
+          ],
+          "addAutoScalingGroup": [
+            "*",
+            {
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType"
+            }
+          ],
+          "addCapacityProvider": [
+            "*"
+          ],
+          "arnForTasks": [
+            "*"
+          ],
+          "grantTaskProtection": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "metricCpuReservation": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCpuUtilization": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricMemoryReservation": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricMemoryUtilization": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ImportedCluster": {
+          "clusterName": "*",
+          "clusterArn": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "hasEc2Capacity": "boolean",
+          "defaultCloudMapNamespace": {
+            "namespaceName": "*",
+            "namespaceId": "*",
+            "namespaceArn": "*",
+            "type": "NamespaceType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoscalingGroup": {
+            "autoScalingGroupName": "*",
+            "autoScalingGroupArn": "*",
+            "osType": "OperatingSystemType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "executeCommandConfiguration": {
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "logConfiguration": {
+              "cloudWatchEncryptionEnabled": "boolean",
+              "cloudWatchLogGroup": "*",
+              "s3Bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "s3EncryptionEnabled": "boolean",
+              "s3KeyPrefix": "*"
+            },
+            "logging": "ExecuteCommandLogging"
+          }
+        }
+      },
+      "aws-cdk-lib.aws-efs": {
+        "AccessPoint": {
+          "fileSystem": "*",
+          "createAcl": {
+            "ownerUid": "*",
+            "ownerGid": "*",
+            "permissions": "*"
+          },
+          "path": "*",
+          "posixUser": {
+            "uid": "*",
+            "gid": "*",
+            "secondaryGids": "*"
+          },
+          "clientToken": "*"
+        },
+        "ImportedAccessPoint": {
+          "accessPointId": "*",
+          "accessPointArn": "*",
+          "fileSystem": "*"
+        },
+        "FileSystem": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "encrypted": "boolean",
+          "fileSystemName": "*",
+          "kmsKey": "*",
+          "lifecyclePolicy": "LifecyclePolicy",
+          "outOfInfrequentAccessPolicy": "OutOfInfrequentAccessPolicy",
+          "transitionToArchivePolicy": "LifecyclePolicy",
+          "performanceMode": "PerformanceMode",
+          "throughputMode": "ThroughputMode",
+          "provisionedThroughputPerSecond": "*",
+          "removalPolicy": "RemovalPolicy",
+          "enableAutomaticBackups": "boolean",
+          "fileSystemPolicy": "*",
+          "allowAnonymousAccess": "boolean",
+          "oneZone": "boolean",
+          "replicationOverwriteProtection": "ReplicationOverwriteProtection",
+          "replicationConfiguration": "*",
+          "addAccessPoint": [
+            "*",
+            {
+              "createAcl": {
+                "ownerUid": "*",
+                "ownerGid": "*",
+                "permissions": "*"
+              },
+              "path": "*",
+              "posixUser": {
+                "uid": "*",
+                "gid": "*",
+                "secondaryGids": "*"
+              },
+              "clientToken": "*"
+            }
+          ]
+        },
+        "ImportedFileSystem": {
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "fileSystemId": "*",
+          "fileSystemArn": "*"
+        }
+      },
+      "aws-cdk-lib.aws-eks": {
+        "AccessEntry": {
+          "accessEntryName": "*",
+          "accessEntryType": "AccessEntryType",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "accessPolicies": {
+            "accessScope": {
+              "namespaces": "*",
+              "type": "AccessScopeType"
+            },
+            "policy": "*"
+          },
+          "principal": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addAccessPolicies": [
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            }
+          ]
+        },
+        "Addon": {
+          "addonName": "*",
+          "addonVersion": "*",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "preserveOnDelete": "boolean",
+          "configurationValues": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Cluster": {
+          "defaultCapacity": "*",
+          "defaultCapacityInstance": "*",
+          "defaultCapacityType": "DefaultCapacityType",
+          "kubectlLambdaRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "bootstrapClusterCreatorAdminPermissions": "boolean",
+          "bootstrapSelfManagedAddons": "boolean",
+          "tags": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "outputMastersRoleArn": "boolean",
+          "endpointAccess": "*",
+          "kubectlEnvironment": "*",
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerEnvironment": "*",
+          "clusterHandlerSecurityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean",
+          "placeClusterHandlerInVpc": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": {
+              "enableWafv2": "boolean",
+              "enableWaf": "boolean"
+            },
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "authenticationMode": "AuthenticationMode",
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "controlPlaneScalingTier": "ControlPlaneScalingTier",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "outputClusterName": "boolean",
+          "outputConfigCommand": "boolean",
+          "grantAccess": [
+            "*",
+            "*",
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            },
+            {
+              "accessEntryType": "AccessEntryType"
+            }
+          ],
+          "getServiceLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "getIngressLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "addAutoScalingGroupCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "mapRole": "boolean",
+              "bootstrapEnabled": "boolean",
+              "bootstrapOptions": {
+                "useMaxPods": "boolean",
+                "enableDockerBridge": "boolean",
+                "awsApiRetryAttempts": "*",
+                "dockerConfigJson": "*",
+                "dnsClusterIp": "*",
+                "kubeletExtraArgs": "*",
+                "additionalArgs": "*"
+              },
+              "machineImageType": "MachineImageType",
+              "spotInterruptHandler": "boolean",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "masterKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "pauseTime": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addNodegroupCapacity": [
+            "*",
+            {
+              "nodegroupName": "*",
+              "subnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "amiType": "NodegroupAmiType",
+              "diskSize": "*",
+              "desiredSize": "*",
+              "maxSize": "*",
+              "minSize": "*",
+              "forceUpdate": "boolean",
+              "instanceType": "*",
+              "labels": "*",
+              "taints": {
+                "effect": "TaintEffect",
+                "key": "*",
+                "value": "*"
+              },
+              "nodeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "releaseVersion": "*",
+              "remoteAccess": {
+                "sshKeyName": "*",
+                "sourceSecurityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                }
+              },
+              "tags": "*",
+              "launchTemplateSpec": {
+                "id": "*",
+                "version": "*"
+              },
+              "capacityType": "CapacityType",
+              "maxUnavailable": "*",
+              "maxUnavailablePercentage": "*",
+              "enableNodeAutoRepair": "boolean",
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "addFargateProfile": [
+            "*",
+            {
+              "fargateProfileName": "*",
+              "podExecutionRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "selectors": {
+                "namespace": "*",
+                "labels": "*"
+              },
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "subnetSelection": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "_attachFargateProfile": [
+            "*"
+          ],
+          "_attachKubectlResourceScope": [
+            "*"
+          ]
+        },
+        "ImportedCluster": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clusterName": "*",
+          "clusterEndpoint": "*",
+          "clusterCertificateAuthorityData": "*",
+          "clusterSecurityGroupId": "*",
+          "clusterEncryptionConfigKeyArn": "*",
+          "ipFamily": "IpFamily",
+          "securityGroupIds": "*",
+          "kubectlRoleArn": "*",
+          "kubectlLambdaRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlEnvironment": "*",
+          "kubectlSecurityGroupId": "*",
+          "kubectlPrivateSubnetIds": "*",
+          "openIdConnectProvider": {
+            "openIdConnectProviderArn": "*",
+            "openIdConnectProviderIssuer": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlProvider": {
+            "serviceToken": "*",
+            "roleArn": "*",
+            "handlerRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerSecurityGroupId": "*",
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean"
+        },
+        "FargateCluster": {
+          "defaultProfile": {
+            "fargateProfileName": "*",
+            "podExecutionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "selectors": {
+              "namespace": "*",
+              "labels": "*"
+            },
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "subnetSelection": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "outputMastersRoleArn": "boolean",
+          "endpointAccess": "*",
+          "kubectlEnvironment": "*",
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerEnvironment": "*",
+          "clusterHandlerSecurityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean",
+          "placeClusterHandlerInVpc": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": {
+              "enableWafv2": "boolean",
+              "enableWaf": "boolean"
+            },
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "authenticationMode": "AuthenticationMode",
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "controlPlaneScalingTier": "ControlPlaneScalingTier",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "outputClusterName": "boolean",
+          "outputConfigCommand": "boolean"
+        },
+        "Nodegroup": {
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "nodegroupName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "amiType": "NodegroupAmiType",
+          "diskSize": "*",
+          "desiredSize": "*",
+          "maxSize": "*",
+          "minSize": "*",
+          "forceUpdate": "boolean",
+          "instanceType": "*",
+          "instanceTypes": "*",
+          "labels": "*",
+          "taints": {
+            "effect": "TaintEffect",
+            "key": "*",
+            "value": "*"
+          },
+          "nodeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "releaseVersion": "*",
+          "remoteAccess": {
+            "sshKeyName": "*",
+            "sourceSecurityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "tags": "*",
+          "launchTemplateSpec": {
+            "id": "*",
+            "version": "*"
+          },
+          "capacityType": "CapacityType",
+          "maxUnavailable": "*",
+          "maxUnavailablePercentage": "*",
+          "enableNodeAutoRepair": "boolean",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OidcProviderNative": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-eks-v2": {
+        "AccessEntry": {
+          "accessEntryName": "*",
+          "accessEntryType": "AccessEntryType",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "accessPolicies": {
+            "accessScope": {
+              "namespaces": "*",
+              "type": "AccessScopeType"
+            },
+            "policy": "*"
+          },
+          "principal": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addAccessPolicies": [
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            }
+          ]
+        },
+        "Addon": {
+          "addonName": "*",
+          "addonVersion": "*",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "preserveOnDelete": "boolean",
+          "configurationValues": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Cluster": {
+          "compute": {
+            "nodePools": "*",
+            "nodeRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "defaultCapacity": "*",
+          "defaultCapacityInstance": "*",
+          "defaultCapacityType": "DefaultCapacityType",
+          "bootstrapClusterCreatorAdminPermissions": "boolean",
+          "bootstrapSelfManagedAddons": "boolean",
+          "outputConfigCommand": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "endpointAccess": "*",
+          "prune": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": "*",
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "tags": "*",
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "controlPlaneScalingTier": "*",
+          "removalPolicy": "RemovalPolicy",
+          "grantAccess": [
+            "*",
+            "*",
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            },
+            {
+              "accessEntryType": "AccessEntryType"
+            }
+          ],
+          "grantClusterAdmin": [
+            "*",
+            "*"
+          ],
+          "getServiceLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "getIngressLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "addAutoScalingGroupCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "bootstrapEnabled": "boolean",
+              "bootstrapOptions": {
+                "useMaxPods": "boolean",
+                "enableDockerBridge": "boolean",
+                "awsApiRetryAttempts": "*",
+                "dockerConfigJson": "*",
+                "dnsClusterIp": "*",
+                "kubeletExtraArgs": "*",
+                "additionalArgs": "*"
+              },
+              "machineImageType": "MachineImageType",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "masterKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "pauseTime": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addNodegroupCapacity": [
+            "*",
+            {
+              "nodegroupName": "*",
+              "subnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "amiType": "NodegroupAmiType",
+              "diskSize": "*",
+              "desiredSize": "*",
+              "maxSize": "*",
+              "minSize": "*",
+              "forceUpdate": "boolean",
+              "instanceTypes": "*",
+              "labels": "*",
+              "taints": {
+                "effect": "TaintEffect",
+                "key": "*",
+                "value": "*"
+              },
+              "nodeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "releaseVersion": "*",
+              "remoteAccess": {
+                "sshKeyName": "*",
+                "sourceSecurityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                }
+              },
+              "tags": "*",
+              "launchTemplateSpec": {
+                "id": "*",
+                "version": "*"
+              },
+              "capacityType": "CapacityType",
+              "maxUnavailable": "*",
+              "maxUnavailablePercentage": "*",
+              "enableNodeAutoRepair": "boolean",
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "addFargateProfile": [
+            "*",
+            {
+              "fargateProfileName": "*",
+              "podExecutionRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "selectors": {
+                "namespace": "*",
+                "labels": "*"
+              },
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "subnetSelection": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "_attachFargateProfile": [
+            "*"
+          ],
+          "_dependOnKubectlBarrier": [
+            "*"
+          ]
+        },
+        "ImportedCluster": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clusterName": "*",
+          "clusterEndpoint": "*",
+          "clusterCertificateAuthorityData": "*",
+          "clusterSecurityGroupId": "*",
+          "clusterEncryptionConfigKeyArn": "*",
+          "ipFamily": "IpFamily",
+          "securityGroupIds": "*",
+          "openIdConnectProvider": {
+            "openIdConnectProviderArn": "*",
+            "openIdConnectProviderIssuer": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlProvider": {
+            "serviceToken": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "prune": "boolean"
+        },
+        "FargateCluster": {
+          "defaultProfile": {
+            "fargateProfileName": "*",
+            "podExecutionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "selectors": {
+              "namespace": "*",
+              "labels": "*"
+            },
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "subnetSelection": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "endpointAccess": "*",
+          "prune": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": "*",
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "tags": "*",
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "controlPlaneScalingTier": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Nodegroup": {
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "nodegroupName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "amiType": "NodegroupAmiType",
+          "diskSize": "*",
+          "desiredSize": "*",
+          "maxSize": "*",
+          "minSize": "*",
+          "forceUpdate": "boolean",
+          "instanceTypes": "*",
+          "labels": "*",
+          "taints": {
+            "effect": "TaintEffect",
+            "key": "*",
+            "value": "*"
+          },
+          "nodeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "releaseVersion": "*",
+          "remoteAccess": {
+            "sshKeyName": "*",
+            "sourceSecurityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "tags": "*",
+          "launchTemplateSpec": {
+            "id": "*",
+            "version": "*"
+          },
+          "capacityType": "CapacityType",
+          "maxUnavailable": "*",
+          "maxUnavailablePercentage": "*",
+          "enableNodeAutoRepair": "boolean",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OidcProviderNative": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-elasticloadbalancing": {
+        "LoadBalancer": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "listeners": {
+            "externalPort": "*",
+            "externalProtocol": "LoadBalancingProtocol",
+            "internalPort": "*",
+            "internalProtocol": "LoadBalancingProtocol",
+            "policyNames": "*",
+            "sslCertificateId": "*",
+            "sslCertificateArn": "*",
+            "allowConnectionsFrom": {
+              "connections": "*"
+            }
+          },
+          "targets": {
+            "connections": "*"
+          },
+          "healthCheck": {
+            "port": "*",
+            "protocol": "LoadBalancingProtocol",
+            "path": "*",
+            "healthyThreshold": "*",
+            "unhealthyThreshold": "*",
+            "interval": "*"
+          },
+          "crossZone": "boolean",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "accessLoggingPolicy": "*",
+          "addListener": [
+            {
+              "externalPort": "*",
+              "externalProtocol": "LoadBalancingProtocol",
+              "internalPort": "*",
+              "internalProtocol": "LoadBalancingProtocol",
+              "policyNames": "*",
+              "sslCertificateId": "*",
+              "sslCertificateArn": "*",
+              "allowConnectionsFrom": {
+                "connections": "*"
+              }
+            }
+          ],
+          "addTarget": [
+            {
+              "connections": "*"
+            }
+          ],
+          "_addInstanceId": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-elasticsearch": {
+        "Domain": {
+          "accessPolicies": "*",
+          "advancedOptions": "*",
+          "cognitoKibanaAuth": {
+            "identityPoolId": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "userPoolId": "*"
+          },
+          "domainName": "*",
+          "ebs": {
+            "enabled": "boolean",
+            "iops": "*",
+            "volumeSize": "*",
+            "volumeType": "EbsDeviceVolumeType"
+          },
+          "capacity": {
+            "masterNodes": "*",
+            "masterNodeInstanceType": "*",
+            "dataNodes": "*",
+            "dataNodeInstanceType": "*",
+            "warmNodes": "*",
+            "warmInstanceType": "*"
+          },
+          "zoneAwareness": {
+            "enabled": "boolean",
+            "availabilityZoneCount": "*"
+          },
+          "version": "*",
+          "encryptionAtRest": {
+            "enabled": "boolean",
+            "kmsKey": "*"
+          },
+          "logging": {
+            "slowSearchLogEnabled": "boolean",
+            "slowSearchLogGroup": "*",
+            "slowIndexLogEnabled": "boolean",
+            "slowIndexLogGroup": "*",
+            "appLogEnabled": "boolean",
+            "appLogGroup": "*",
+            "auditLogEnabled": "boolean",
+            "auditLogGroup": "*"
+          },
+          "nodeToNodeEncryption": "boolean",
+          "automatedSnapshotStartHour": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "enforceHttps": "boolean",
+          "tlsSecurityPolicy": "TLSSecurityPolicy",
+          "fineGrainedAccessControl": {
+            "masterUserArn": "*",
+            "masterUserName": "*",
+            "masterUserPassword": "*"
+          },
+          "useUnsignedBasicAuth": "boolean",
+          "enableVersionUpgrade": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "customEndpoint": {
+            "domainName": "*",
+            "certificate": "*",
+            "hostedZone": {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            }
+          },
+          "addAccessPolicies": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-events": {
+        "ApiDestination": {
+          "apiDestinationName": "*",
+          "description": "*",
+          "connection": "*",
+          "endpoint": "*",
+          "httpMethod": "HttpMethod",
+          "rateLimitPerSecond": "*"
+        },
+        "Archive": {
+          "sourceEventBus": "*",
+          "archiveName": "*",
+          "description": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "retention": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Connection": {
+          "connectionName": "*",
+          "description": "*",
+          "authorization": "*",
+          "bodyParameters": "*",
+          "headerParameters": "*",
+          "queryStringParameters": "*"
+        },
+        "ImportedConnection": {
+          "connectionName": "*",
+          "connectionArn": "*",
+          "connectionSecretArn": "*"
+        },
+        "EventBus": {
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "ImportedEventBus": {
+          "eventBusName": "*",
+          "eventBusArn": "*",
+          "eventBusPolicy": "*",
+          "eventSourceName": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "EventBusPolicy": {
+          "eventBus": {
+            "eventBusName": "*",
+            "eventBusArn": "*",
+            "eventBusPolicy": "*",
+            "eventSourceName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "statement": "*",
+          "statementId": "*"
+        },
+        "Rule": {
+          "enabled": "boolean",
+          "schedule": "*",
+          "targets": "*",
+          "eventBus": "*",
+          "role": "*",
+          "description": "*",
+          "ruleName": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "crossStackScope": "*",
+          "addTarget": [
+            "*"
+          ],
+          "addEventPattern": [
+            {
+              "version": "*",
+              "id": "*",
+              "detailType": "*",
+              "source": "*",
+              "account": "*",
+              "time": "*",
+              "region": "*",
+              "resources": "*",
+              "detail": "*"
+            }
+          ],
+          "_renderEventPattern": []
+        },
+        "MirrorRule": {
+          "enabled": "boolean",
+          "schedule": "*",
+          "targets": "*",
+          "eventBus": "*",
+          "role": "*",
+          "description": "*",
+          "ruleName": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "crossStackScope": "*",
+          "_renderEventPattern": []
+        }
+      },
+      "aws-cdk-lib.aws-fsx": {
+        "LustreFileSystem": {
+          "lustreConfiguration": {
+            "deploymentType": "LustreDeploymentType",
+            "exportPath": "*",
+            "importedFileChunkSizeMiB": "*",
+            "importPath": "*",
+            "autoImportPolicy": "LustreAutoImportPolicy",
+            "dataCompressionType": "LustreDataCompressionType",
+            "perUnitStorageThroughput": "*",
+            "weeklyMaintenanceStartTime": "*",
+            "automaticBackupRetention": "*",
+            "copyTagsToBackups": "boolean",
+            "dailyAutomaticBackupStartTime": "*",
+            "driveCacheType": "DriveCacheType"
+          },
+          "fileSystemTypeVersion": "FileSystemTypeVersion",
+          "vpcSubnet": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "backupId": "*",
+          "kmsKey": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "storageCapacityGiB": "*",
+          "removalPolicy": "RemovalPolicy",
+          "storageType": "StorageType"
+        }
+      },
+      "aws-cdk-lib.aws-globalaccelerator": {
+        "Accelerator": {
+          "acceleratorName": "*",
+          "enabled": "boolean",
+          "ipAddresses": "*",
+          "ipAddressType": "IpAddressType",
+          "addListener": [
+            "*",
+            {
+              "listenerName": "*",
+              "portRanges": {
+                "fromPort": "*",
+                "toPort": "*"
+              },
+              "protocol": "ConnectionProtocol",
+              "clientAffinity": "ClientAffinity"
+            }
+          ]
+        },
+        "EndpointGroup": {
+          "listener": "*",
+          "endpointGroupName": "*",
+          "region": "*",
+          "healthCheckInterval": "*",
+          "healthCheckPath": "*",
+          "healthCheckPort": "*",
+          "healthCheckProtocol": "HealthCheckProtocol",
+          "healthCheckThreshold": "*",
+          "trafficDialPercentage": "*",
+          "portOverrides": {
+            "listenerPort": "*",
+            "endpointPort": "*"
+          },
+          "endpoints": {
+            "region": "*"
+          },
+          "addEndpoint": [
+            {
+              "region": "*"
+            }
+          ],
+          "connectionsPeer": [
+            "*",
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ]
+        },
+        "Listener": {
+          "accelerator": "*",
+          "listenerName": "*",
+          "portRanges": {
+            "fromPort": "*",
+            "toPort": "*"
+          },
+          "protocol": "ConnectionProtocol",
+          "clientAffinity": "ClientAffinity",
+          "addEndpointGroup": [
+            "*",
+            {
+              "endpointGroupName": "*",
+              "region": "*",
+              "healthCheckInterval": "*",
+              "healthCheckPath": "*",
+              "healthCheckPort": "*",
+              "healthCheckProtocol": "HealthCheckProtocol",
+              "healthCheckThreshold": "*",
+              "trafficDialPercentage": "*",
+              "portOverrides": {
+                "listenerPort": "*",
+                "endpointPort": "*"
+              },
+              "endpoints": {
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-glue": {
+        "Catalog": {
+          "catalogName": "*",
+          "description": "*",
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "AccountCatalog": {
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "ImportedCatalog": {},
+        "Connection": {
+          "type": "*",
+          "connectionName": "*",
+          "description": "*",
+          "properties": "*",
+          "secret": "*",
+          "matchCriteria": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "network": "*",
+          "addProperty": [
+            "*",
+            "*"
+          ]
+        },
+        "DataQualityRuleset": {
+          "rulesetName": "*",
+          "description": "*",
+          "dqdl": "*",
+          "tags": "*",
+          "targetTable": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Database": {
+          "databaseName": "*",
+          "locationUri": "*",
+          "description": "*",
+          "catalog": {
+            "catalogId": "*",
+            "catalogArn": "*",
+            "encryptionKey": "*",
+            "connectionPasswordKey": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ExternalTable": {
+          "connection": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "externalDataLocation": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "S3Table": {
+          "storage": "*",
+          "s3Prefix": "*",
+          "clientSideEncryption": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "SecurityConfiguration": {
+          "securityConfigurationName": "*",
+          "cloudWatchEncryption": "*",
+          "jobBookmarksEncryption": "*",
+          "s3Encryption": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-iam": {
+        "AccessKey": {
+          "serial": "*",
+          "status": "AccessKeyStatus",
+          "user": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Group": {
+          "groupName": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "path": "*",
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ]
+        },
+        "InstanceProfile": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceProfileName": "*",
+          "path": "*"
+        },
+        "LazyRole": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ]
+        },
+        "ManagedPolicy": {
+          "managedPolicyName": "*",
+          "description": "*",
+          "path": "*",
+          "users": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "groups": "*",
+          "statements": "*",
+          "document": "*",
+          "addStatements": [
+            "*"
+          ],
+          "attachToUser": [
+            "*"
+          ],
+          "attachToRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToGroup": [
+            "*"
+          ]
+        },
+        "OidcProviderNative": {
+          "oidcProviderName": "*",
+          "url": "*",
+          "clientIds": "*",
+          "thumbprints": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "clientIds": "*",
+          "thumbprints": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Policy": {
+          "policyName": "*",
+          "users": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "groups": {
+            "groupName": "*",
+            "groupArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "statements": "*",
+          "force": "boolean",
+          "document": "*",
+          "addStatements": [
+            "*"
+          ],
+          "attachToUser": [
+            {
+              "userName": "*",
+              "userArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToGroup": [
+            {
+              "groupName": "*",
+              "groupArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Role": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "withoutPolicyUpdates": [
+            {
+              "addGrantsToResources": "boolean"
+            }
+          ],
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "SamlProvider": {
+          "name": "*",
+          "metadataDocument": "*"
+        },
+        "User": {
+          "groups": {
+            "groupName": "*",
+            "groupArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "userName": "*",
+          "password": "*",
+          "passwordResetRequired": "boolean",
+          "addToGroup": [
+            {
+              "groupName": "*",
+              "groupArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-inspector": {
+        "AssessmentTemplate": {}
+      },
+      "aws-cdk-lib.aws-kinesis": {
+        "ResourcePolicy": {
+          "stream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "streamConsumer": {
+            "streamConsumerArn": "*",
+            "streamConsumerName": "*",
+            "stream": {
+              "streamArn": "*",
+              "streamName": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          },
+          "policyDocument": "*"
+        },
+        "StreamConsumer": {
+          "streamConsumerName": "*",
+          "stream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "Stream": {
+          "streamName": "*",
+          "retentionPeriod": "*",
+          "shardCount": "*",
+          "encryption": "StreamEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "streamMode": "StreamMode",
+          "removalPolicy": "RemovalPolicy",
+          "shardLevelMetrics": "ShardLevelMetrics"
+        }
+      },
+      "aws-cdk-lib.aws-kinesisfirehose": {
+        "DeliveryStream": {
+          "destination": "*",
+          "deliveryStreamName": "*",
+          "source": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "encryption": "*"
+        }
+      },
+      "aws-cdk-lib.aws-kms": {
+        "Alias": {
+          "aliasName": "*",
+          "targetKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Key": {
+          "description": "*",
+          "alias": "*",
+          "enableKeyRotation": "boolean",
+          "rotationPeriod": "*",
+          "enabled": "boolean",
+          "keySpec": "KeySpec",
+          "keyUsage": "KeyUsage",
+          "multiRegion": "boolean",
+          "policy": "*",
+          "admins": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "trustAccountIdentities": "boolean",
+          "pendingWindow": "*",
+          "grantAdmin": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ReferencedKey": {
+          "environmentFromArn": "*",
+          "keyArn": "*",
+          "keyId": "*",
+          "policy": "*",
+          "trustAccountIdentities": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-lambda": {
+        "Alias": {
+          "aliasName": "*",
+          "version": {
+            "version": "*",
+            "lambda": {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "edgeArn": "*",
+            "functionName": "*",
+            "functionArn": "*",
+            "isBoundToVpc": "boolean",
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "description": "*",
+          "additionalVersions": {
+            "version": {
+              "version": "*",
+              "lambda": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "resourceArnsForGrantInvoke": "*"
+            },
+            "weight": "*"
+          },
+          "provisionedConcurrentExecutions": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addAutoScaling": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ]
+        },
+        "CapacityProvider": {
+          "capacityProviderName": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "subnets": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "operatorRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "architectures": "*",
+          "instanceTypeFilter": "*",
+          "maxVCpuCount": "*",
+          "scalingOptions": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "propagateTags": "*",
+          "logGroup": "*",
+          "systemLogLevel": "SystemLogLevel",
+          "addFunction": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            {
+              "perExecutionEnvironmentMaxConcurrency": "*",
+              "executionEnvironmentMemoryGiBPerVCpu": "*",
+              "publishToLatestPublished": "boolean",
+              "latestPublishedScalingConfig": {
+                "minExecutionEnvironments": "*",
+                "maxExecutionEnvironments": "*"
+              }
+            }
+          ]
+        },
+        "CodeSigningConfig": {
+          "signingProfiles": {
+            "signingProfileArn": "*",
+            "signingProfileName": "*",
+            "signingProfileVersion": "*",
+            "signingProfileVersionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "untrustedArtifactOnDeployment": "UntrustedArtifactOnDeployment",
+          "description": "*"
+        },
+        "EventInvokeConfig": {
+          "function": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "qualifier": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "EventSourceMapping": {
+          "target": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "eventSourceArn": "*",
+          "batchSize": "*",
+          "bisectBatchOnError": "boolean",
+          "onFailure": "*",
+          "enabled": "boolean",
+          "startingPosition": "StartingPosition",
+          "startingPositionTimestamp": "*",
+          "reportBatchItemFailures": "boolean",
+          "maxBatchingWindow": "*",
+          "maxConcurrency": "*",
+          "maxRecordAge": "*",
+          "retryAttempts": "*",
+          "parallelizationFactor": "*",
+          "kafkaTopic": "*",
+          "tumblingWindow": "*",
+          "kafkaBootstrapServers": "*",
+          "kafkaConsumerGroupId": "*",
+          "sourceAccessConfigurations": {
+            "type": "*",
+            "uri": "*"
+          },
+          "filters": "*",
+          "filterEncryption": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "supportS3OnFailureDestination": "boolean",
+          "provisionedPollerConfig": {
+            "minimumPollers": "*",
+            "maximumPollers": "*",
+            "pollerGroupName": "*"
+          },
+          "metricsConfig": {
+            "metrics": "MetricType"
+          },
+          "logLevel": "EventSourceMappingLogLevel",
+          "schemaRegistryConfig": "*"
+        },
+        "LatestVersion": {
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ]
+        },
+        "FunctionUrl": {
+          "function": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "authType": "FunctionUrlAuthType",
+          "cors": {
+            "allowCredentials": "boolean",
+            "allowedHeaders": "*",
+            "allowedMethods": "HttpMethod",
+            "allowedOrigins": "*",
+            "exposedHeaders": "*",
+            "maxAge": "*"
+          },
+          "invokeMode": "InvokeMode",
+          "grantInvokeUrl": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Function": {
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addEnvironment": [
+            "*",
+            "*",
+            {
+              "removeInEdge": "boolean"
+            }
+          ],
+          "invalidateVersionBasedOn": [
+            "*"
+          ],
+          "addLayers": [
+            {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addVersion": [
+            "*",
+            "*",
+            "*",
+            "*",
+            {
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "_checkEdgeCompatibility": []
+        },
+        "DockerImageFunction": {
+          "code": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "Version": {
+          "lambda": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "codeSha256": "*",
+          "description": "*",
+          "provisionedConcurrentExecutions": "*",
+          "removalPolicy": "RemovalPolicy",
+          "minExecutionEnvironments": "*",
+          "maxExecutionEnvironments": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ]
+        },
+        "LayerVersion": {
+          "compatibleRuntimes": "*",
+          "compatibleArchitectures": "*",
+          "code": "*",
+          "description": "*",
+          "license": "*",
+          "layerVersionName": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "SingletonFunction": {
+          "uuid": "*",
+          "lambdaPurpose": "*",
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addEnvironment": [
+            "*",
+            "*",
+            {
+              "removeInEdge": "boolean"
+            }
+          ],
+          "addLayers": [
+            {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addPermission": [
+            "*",
+            {
+              "action": "*",
+              "eventSourceToken": "*",
+              "principal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              },
+              "scope": "*",
+              "sourceAccount": "*",
+              "sourceArn": "*",
+              "organizationId": "*",
+              "functionUrlAuthType": "FunctionUrlAuthType",
+              "invokedViaFunctionUrl": "boolean"
+            }
+          ],
+          "addDependency": [
+            "*"
+          ],
+          "addMetadata": [
+            "*",
+            "*",
+            {
+              "stackTrace": "boolean",
+              "traceFromFunction": "*",
+              "stackTraceOverride": "*"
+            }
+          ],
+          "dependOn": [
+            {
+              "node": "*"
+            }
+          ],
+          "_checkEdgeCompatibility": []
+        }
+      },
+      "aws-cdk-lib.aws-lambda-nodejs": {
+        "NodejsFunction": {
+          "entry": "*",
+          "handler": "*",
+          "runtime": "*",
+          "awsSdkConnectionReuse": "boolean",
+          "depsLockFilePath": "*",
+          "bundling": {
+            "minify": "boolean",
+            "sourceMap": "boolean",
+            "sourceMapMode": "SourceMapMode",
+            "sourcesContent": "boolean",
+            "target": "*",
+            "loader": "*",
+            "logLevel": "LogLevel",
+            "keepNames": "boolean",
+            "tsconfig": "*",
+            "metafile": "boolean",
+            "banner": "*",
+            "footer": "*",
+            "charset": "Charset",
+            "define": "*",
+            "externalModules": "*",
+            "bundleAwsSDK": "boolean",
+            "nodeModules": "*",
+            "esbuildVersion": "*",
+            "esbuildArgs": "*",
+            "buildArgs": "*",
+            "forceDockerBundling": "boolean",
+            "preCompilation": "boolean",
+            "dockerImage": "*",
+            "commandHooks": "*",
+            "assetHash": "*",
+            "format": "OutputFormat",
+            "mainFields": "*",
+            "inject": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "projectRoot": "*",
+          "code": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        }
+      },
+      "aws-cdk-lib.aws-logs": {
+        "CrossAccountDestination": {
+          "destinationName": "*",
+          "role": "*",
+          "targetArn": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "bind": [
+            "*",
+            "*"
+          ]
+        },
+        "LogGroup": {
+          "encryptionKey": "*",
+          "logGroupName": "*",
+          "dataProtectionPolicy": "*",
+          "deletionProtectionEnabled": "boolean",
+          "fieldIndexPolicies": "*",
+          "retention": "RetentionDays",
+          "logGroupClass": "LogGroupClass",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "LogStream": {
+          "logGroup": "*",
+          "logStreamName": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "MetricFilter": {
+          "logGroup": "*",
+          "filterPattern": {
+            "logPatternString": "*"
+          },
+          "metricNamespace": "*",
+          "metricName": "*",
+          "metricValue": "*",
+          "defaultValue": "*",
+          "dimensions": "*",
+          "unit": "Unit",
+          "filterName": "*",
+          "applyOnTransformedLogs": "boolean",
+          "metric": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ResourcePolicy": {},
+        "QueryDefinition": {
+          "queryDefinitionName": "*",
+          "queryString": "*",
+          "logGroups": "*"
+        },
+        "SubscriptionFilter": {
+          "logGroup": "*",
+          "destination": "*",
+          "filterPattern": {
+            "logPatternString": "*"
+          },
+          "filterName": "*",
+          "distribution": "Distribution"
+        },
+        "Transformer": {
+          "transformerName": "*",
+          "logGroup": "*",
+          "transformerConfig": "*"
+        }
+      },
+      "aws-cdk-lib.aws-opensearchservice": {
+        "Domain": {
+          "accessPolicies": "*",
+          "advancedOptions": "*",
+          "cognitoDashboardsAuth": {
+            "identityPoolId": "*",
+            "role": "*",
+            "userPoolId": "*"
+          },
+          "domainName": "*",
+          "ebs": {
+            "enabled": "boolean",
+            "iops": "*",
+            "throughput": "*",
+            "volumeSize": "*",
+            "volumeType": "EbsDeviceVolumeType"
+          },
+          "capacity": {
+            "masterNodes": "*",
+            "masterNodeInstanceType": "*",
+            "dataNodes": "*",
+            "dataNodeInstanceType": "*",
+            "warmNodes": "*",
+            "warmInstanceType": "*",
+            "multiAzWithStandbyEnabled": "boolean",
+            "nodeOptions": {
+              "nodeType": "NodeType",
+              "nodeConfig": {
+                "enabled": "boolean",
+                "type": "*",
+                "count": "*"
+              }
+            }
+          },
+          "zoneAwareness": {
+            "enabled": "boolean",
+            "availabilityZoneCount": "*"
+          },
+          "version": "*",
+          "encryptionAtRest": {
+            "enabled": "boolean",
+            "kmsKey": "*"
+          },
+          "logging": {
+            "slowSearchLogEnabled": "boolean",
+            "slowSearchLogGroup": "*",
+            "slowIndexLogEnabled": "boolean",
+            "slowIndexLogGroup": "*",
+            "appLogEnabled": "boolean",
+            "appLogGroup": "*",
+            "auditLogEnabled": "boolean",
+            "auditLogGroup": "*"
+          },
+          "nodeToNodeEncryption": "boolean",
+          "automatedSnapshotStartHour": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "enforceHttps": "boolean",
+          "tlsSecurityPolicy": "TLSSecurityPolicy",
+          "fineGrainedAccessControl": {
+            "masterUserArn": "*",
+            "masterUserName": "*",
+            "masterUserPassword": "*",
+            "samlAuthenticationEnabled": "boolean",
+            "samlAuthenticationOptions": {
+              "idpEntityId": "*",
+              "idpMetadataContent": "*",
+              "masterUserName": "*",
+              "masterBackendRole": "*",
+              "rolesKey": "*",
+              "subjectKey": "*",
+              "sessionTimeoutMinutes": "*"
+            }
+          },
+          "useUnsignedBasicAuth": "boolean",
+          "enableVersionUpgrade": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "customEndpoint": {
+            "domainName": "*",
+            "certificate": "*",
+            "hostedZone": {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            }
+          },
+          "offPeakWindowEnabled": "boolean",
+          "offPeakWindowStart": {
+            "hours": "*",
+            "minutes": "*"
+          },
+          "enableAutoSoftwareUpdate": "boolean",
+          "useLatestServiceSoftwareForBlueGreen": "boolean",
+          "ipAddressType": "IpAddressType",
+          "suppressLogsResourcePolicy": "boolean",
+          "coldStorageEnabled": "boolean",
+          "s3VectorsEngineEnabled": "boolean",
+          "addAccessPolicies": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-rds": {
+        "AuroraClusterInstance": {
+          "cluster": {
+            "clusterIdentifier": "*",
+            "clusterResourceIdentifier": "*",
+            "instanceIdentifiers": "*",
+            "clusterEndpoint": "*",
+            "engine": {
+              "singleUserRotationApplication": "*",
+              "supportedLogTypes": "*",
+              "combineImportAndExportRoles": "boolean",
+              "engineType": "*",
+              "engineVersion": {
+                "fullVersion": "*",
+                "majorVersion": "*"
+              },
+              "parameterGroupFamily": "*",
+              "engineFamily": "*",
+              "defaultUsername": "*"
+            },
+            "clusterArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "promotionTier": "*",
+          "instanceIdentifier": "*",
+          "autoMinorVersionUpgrade": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "publiclyAccessible": "boolean",
+          "availabilityZone": "*",
+          "preferredMaintenanceWindow": "*",
+          "parameters": "*",
+          "allowMajorVersionUpgrade": "boolean",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "isFromLegacyInstanceProps": "boolean",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "removalPolicy": "RemovalPolicy",
+          "subnetGroup": "*"
+        },
+        "ImportedDatabaseCluster": {
+          "clusterIdentifier": "*",
+          "clusterResourceIdentifier": "*",
+          "port": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceIdentifiers": "*",
+          "clusterEndpointAddress": "*",
+          "readerEndpointAddress": "*",
+          "instanceEndpointAddresses": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "dataApiEnabled": "boolean"
+        },
+        "DatabaseCluster": {
+          "credentials": "*",
+          "replicationSourceIdentifier": "*",
+          "manageMasterUserPassword": "boolean",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instances": "*",
+          "instanceProps": {
+            "instanceType": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "parameterGroup": "*",
+            "parameters": "*",
+            "enablePerformanceInsights": "boolean",
+            "performanceInsightRetention": "PerformanceInsightRetention",
+            "performanceInsightEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "autoMinorVersionUpgrade": "boolean",
+            "allowMajorVersionUpgrade": "boolean",
+            "deleteAutomatedBackups": "boolean",
+            "publiclyAccessible": "boolean",
+            "preferredMaintenanceWindow": "*"
+          },
+          "writer": "*",
+          "readers": "*",
+          "serverlessV2MaxCapacity": "*",
+          "serverlessV2MinCapacity": "*",
+          "serverlessV2AutoPauseDuration": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceUpdateBehaviour": "InstanceUpdateBehaviour",
+          "backtrackWindow": "*",
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "port": "*",
+          "clusterIdentifier": "*",
+          "instanceIdentifierBase": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "monitoringInterval": "*",
+          "monitoringRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableClusterLevelEnhancedMonitoring": "boolean",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "subnetGroup": "*",
+          "iamAuthentication": "boolean",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "storageType": "DBClusterStorageType",
+          "copyTagsToSnapshot": "boolean",
+          "networkType": "NetworkType",
+          "domain": "*",
+          "domainRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableDataApi": "boolean",
+          "enableLocalWriteForwarding": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "autoMinorVersionUpgrade": "boolean",
+          "clusterScalabilityType": "ClusterScalabilityType",
+          "clusterScailabilityType": "ClusterScailabilityType",
+          "engineLifecycleSupport": "EngineLifecycleSupport",
+          "deleteAutomatedBackups": "boolean"
+        },
+        "DatabaseClusterFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "credentials": "*",
+          "snapshotCredentials": "*",
+          "manageMasterUserPassword": "boolean",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instances": "*",
+          "instanceProps": {
+            "instanceType": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "parameterGroup": "*",
+            "parameters": "*",
+            "enablePerformanceInsights": "boolean",
+            "performanceInsightRetention": "PerformanceInsightRetention",
+            "performanceInsightEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "autoMinorVersionUpgrade": "boolean",
+            "allowMajorVersionUpgrade": "boolean",
+            "deleteAutomatedBackups": "boolean",
+            "publiclyAccessible": "boolean",
+            "preferredMaintenanceWindow": "*"
+          },
+          "writer": "*",
+          "readers": "*",
+          "serverlessV2MaxCapacity": "*",
+          "serverlessV2MinCapacity": "*",
+          "serverlessV2AutoPauseDuration": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceUpdateBehaviour": "InstanceUpdateBehaviour",
+          "backtrackWindow": "*",
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "port": "*",
+          "clusterIdentifier": "*",
+          "instanceIdentifierBase": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "monitoringInterval": "*",
+          "monitoringRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableClusterLevelEnhancedMonitoring": "boolean",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "subnetGroup": "*",
+          "iamAuthentication": "boolean",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "storageType": "DBClusterStorageType",
+          "copyTagsToSnapshot": "boolean",
+          "networkType": "NetworkType",
+          "domain": "*",
+          "domainRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableDataApi": "boolean",
+          "enableLocalWriteForwarding": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "autoMinorVersionUpgrade": "boolean",
+          "clusterScalabilityType": "ClusterScalabilityType",
+          "clusterScailabilityType": "ClusterScailabilityType",
+          "engineLifecycleSupport": "EngineLifecycleSupport",
+          "deleteAutomatedBackups": "boolean"
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "dbname": "*",
+          "secretName": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "masterSecret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "excludeCharacters": "*",
+          "replaceOnPasswordCriteriaChanges": "boolean",
+          "replicaRegions": {
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "DatabaseInstance": {
+          "credentials": "*",
+          "manageMasterUserPassword": "boolean",
+          "characterSetName": "*",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instanceType": "*",
+          "licenseModel": "LicenseModel",
+          "allowMajorVersionUpgrade": "boolean",
+          "timezone": "*",
+          "allocatedStorage": "*",
+          "databaseName": "*",
+          "parameters": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "DatabaseInstanceFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "clusterSnapshotIdentifier": "*",
+          "credentials": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instanceType": "*",
+          "licenseModel": "LicenseModel",
+          "allowMajorVersionUpgrade": "boolean",
+          "timezone": "*",
+          "allocatedStorage": "*",
+          "databaseName": "*",
+          "parameters": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "DatabaseInstanceReadReplica": {
+          "instanceType": "*",
+          "sourceDatabaseInstance": {
+            "instanceIdentifier": "*",
+            "instanceArn": "*",
+            "dbInstanceEndpointAddress": "*",
+            "dbInstanceEndpointPort": "*",
+            "instanceResourceId": "*",
+            "instanceEndpoint": "*",
+            "engine": {
+              "singleUserRotationApplication": "*",
+              "supportsReadReplicaBackups": "boolean",
+              "engineType": "*",
+              "engineVersion": {
+                "fullVersion": "*",
+                "majorVersion": "*"
+              },
+              "parameterGroupFamily": "*",
+              "engineFamily": "*",
+              "defaultUsername": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "allocatedStorage": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "OptionGroup": {
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "description": "*",
+          "configurations": {
+            "name": "*",
+            "settings": "*",
+            "version": "*",
+            "port": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "optionGroupName": "*",
+          "addConfiguration": [
+            {
+              "name": "*",
+              "settings": "*",
+              "version": "*",
+              "port": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              }
+            }
+          ]
+        },
+        "ParameterGroup": {
+          "engine": {
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "name": "*",
+          "description": "*",
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "bindToCluster": [
+            "*"
+          ],
+          "bindToInstance": [
+            "*"
+          ],
+          "addParameter": [
+            "*",
+            "*"
+          ]
+        },
+        "DatabaseProxyEndpoint": {
+          "dbProxy": "*",
+          "dbProxyEndpointName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "targetRole": "ProxyEndpointTargetRole"
+        },
+        "DatabaseProxy": {
+          "proxyTarget": "*",
+          "dbProxyName": "*",
+          "borrowTimeout": "*",
+          "initQuery": "*",
+          "maxConnectionsPercent": "*",
+          "maxIdleConnectionsPercent": "*",
+          "sessionPinningFilters": "*",
+          "debugLogging": "boolean",
+          "iamAuth": "boolean",
+          "idleClientTimeout": "*",
+          "requireTLS": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "secrets": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clientPasswordAuthType": "ClientPasswordAuthType",
+          "defaultAuthScheme": "DefaultAuthScheme",
+          "addEndpoint": [
+            "*",
+            {
+              "dbProxyEndpointName": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "targetRole": "ProxyEndpointTargetRole"
+            }
+          ],
+          "asSecretAttachmentTarget": [],
+          "grantConnect": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "ServerlessCluster": {
+          "credentials": "*",
+          "storageEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "clusterIdentifier": "*",
+          "backupRetention": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "enableDataApi": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "scaling": {
+            "minCapacity": "AuroraCapacityUnit",
+            "maxCapacity": "AuroraCapacityUnit",
+            "autoPause": "*",
+            "timeoutAction": "TimeoutAction"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": "*",
+          "copyTagsToSnapshot": "boolean",
+          "addRotationSingleUser": [
+            {
+              "automaticallyAfter": "*",
+              "excludeCharacters": "*",
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "endpoint": {
+                "vpcEndpointId": "*",
+                "connections": "*"
+              },
+              "securityGroup": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*"
+              },
+              "rotateImmediatelyOnUpdate": "boolean"
+            }
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*",
+              "excludeCharacters": "*",
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "endpoint": {
+                "vpcEndpointId": "*",
+                "connections": "*"
+              },
+              "securityGroup": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*"
+              },
+              "rotateImmediatelyOnUpdate": "boolean"
+            }
+          ]
+        },
+        "ImportedServerlessCluster": {
+          "clusterIdentifier": "*",
+          "port": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "clusterEndpointAddress": "*",
+          "readerEndpointAddress": "*",
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          }
+        },
+        "ServerlessClusterFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "credentials": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "clusterIdentifier": "*",
+          "backupRetention": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "enableDataApi": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "scaling": {
+            "minCapacity": "AuroraCapacityUnit",
+            "maxCapacity": "AuroraCapacityUnit",
+            "autoPause": "*",
+            "timeoutAction": "TimeoutAction"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": "*",
+          "copyTagsToSnapshot": "boolean"
+        },
+        "SubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetGroupName": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-route53": {
+        "HealthCheck": {
+          "type": "HealthCheckType",
+          "alarmIdentifier": {
+            "region": "*",
+            "name": "*"
+          },
+          "childHealthChecks": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableSNI": "boolean",
+          "failureThreshold": "*",
+          "fqdn": "*",
+          "healthThreshold": "*",
+          "insufficientDataHealthStatus": "InsufficientDataHealthStatusEnum",
+          "inverted": "boolean",
+          "ipAddress": "*",
+          "measureLatency": "boolean",
+          "port": "*",
+          "regions": "*",
+          "requestInterval": "*",
+          "resourcePath": "*",
+          "routingControl": "*",
+          "searchString": "*"
+        },
+        "HostedZone": {
+          "vpcs": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*",
+          "addVpc": [
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ],
+          "grantDelegation": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "delegatedZoneNames": "*"
+            }
+          ],
+          "enableDnssec": [
+            {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "keySigningKeyName": "*"
+            }
+          ]
+        },
+        "PublicHostedZone": {
+          "caaAmazon": "boolean",
+          "acceleratedRecoveryEnabled": "boolean",
+          "crossAccountZoneDelegationPrincipal": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "crossAccountZoneDelegationRoleName": "*",
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*",
+          "addVpc": [
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ],
+          "addDelegation": [
+            {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            },
+            {
+              "comment": "*",
+              "ttl": "*"
+            }
+          ]
+        },
+        "PrivateHostedZone": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*"
+        },
+        "KeySigningKey": {
+          "hostedZone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "keySigningKeyName": "*",
+          "status": "KeySigningKeyStatus"
+        },
+        "RecordSet": {
+          "recordType": "RecordType",
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "ARecord": {
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "AaaaRecord": {
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CnameRecord": {
+          "domainName": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "TxtRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "SrvRecord": {
+          "values": {
+            "priority": "*",
+            "weight": "*",
+            "port": "*",
+            "hostName": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CaaRecord": {
+          "values": {
+            "flag": "*",
+            "tag": "CaaTag",
+            "value": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CaaAmazonRecord": {
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "MxRecord": {
+          "values": {
+            "priority": "*",
+            "hostName": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "NsRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "DsRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "SvcbRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "HttpsRecord": {
+          "values": "*",
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "ZoneDelegationRecord": {
+          "nameServers": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        }
+      },
+      "aws-cdk-lib.aws-s3": {
+        "BucketPolicy": {
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "document": "*",
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "Bucket": {
+          "encryption": "BucketEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "blockedEncryptionTypes": "*",
+          "enforceSSL": "boolean",
+          "bucketKeyEnabled": "boolean",
+          "bucketName": "*",
+          "bucketNamePrefix": "*",
+          "bucketNamespace": "BucketNamespace",
+          "removalPolicy": "RemovalPolicy",
+          "autoDeleteObjects": "boolean",
+          "versioned": "boolean",
+          "objectLockEnabled": "boolean",
+          "abacStatus": "boolean",
+          "objectLockDefaultRetention": "*",
+          "eventBridgeEnabled": "boolean",
+          "lifecycleRules": {
+            "id": "*",
+            "enabled": "boolean",
+            "abortIncompleteMultipartUploadAfter": "*",
+            "expirationDate": "*",
+            "noncurrentVersionsToRetain": "*",
+            "noncurrentVersionTransitions": {
+              "storageClass": "*",
+              "noncurrentVersionsToRetain": "*"
+            },
+            "transitions": "*",
+            "prefix": "*",
+            "tagFilters": "*",
+            "expiredObjectDeleteMarker": "boolean",
+            "objectSizeLessThan": "*",
+            "objectSizeGreaterThan": "*"
+          },
+          "transitionDefaultMinimumObjectSize": "TransitionDefaultMinimumObjectSize",
+          "websiteIndexDocument": "*",
+          "websiteErrorDocument": "*",
+          "websiteRedirect": {
+            "hostName": "*",
+            "protocol": "RedirectProtocol"
+          },
+          "websiteRoutingRules": {
+            "hostName": "*",
+            "httpRedirectCode": "*",
+            "protocol": "RedirectProtocol",
+            "replaceKey": "*",
+            "condition": {
+              "httpErrorCodeReturnedEquals": "*",
+              "keyPrefixEquals": "*"
+            }
+          },
+          "accessControl": "BucketAccessControl",
+          "publicReadAccess": "boolean",
+          "blockPublicAccess": "*",
+          "metrics": {
+            "id": "*",
+            "prefix": "*",
+            "tagFilters": "*"
+          },
+          "cors": {
+            "id": "*",
+            "maxAge": "*",
+            "allowedHeaders": "*",
+            "allowedMethods": "HttpMethods",
+            "allowedOrigins": "*",
+            "exposedHeaders": "*"
+          },
+          "serverAccessLogsBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "serverAccessLogsPrefix": "*",
+          "targetObjectKeyFormat": "*",
+          "inventories": {
+            "destination": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*",
+              "bucketOwner": "*"
+            },
+            "objectsPrefix": "*",
+            "format": "InventoryFormat",
+            "enabled": "boolean",
+            "inventoryId": "*",
+            "frequency": "InventoryFrequency",
+            "includeObjectVersions": "InventoryObjectVersion",
+            "optionalFields": "*"
+          },
+          "objectOwnership": "ObjectOwnership",
+          "transferAcceleration": "boolean",
+          "notificationsHandlerRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "notificationsSkipDestinationValidation": "boolean",
+          "intelligentTieringConfigurations": {
+            "name": "*",
+            "prefix": "*",
+            "tags": {
+              "key": "*",
+              "value": "*"
+            },
+            "archiveAccessTierTime": "*"
+          },
+          "minimumTLSVersion": "*",
+          "replicationRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "replicationRules": {
+            "destination": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "accessControlTransition": "boolean",
+            "replicationTimeControl": "*",
+            "storageClass": "*",
+            "sseKmsEncryptedObjects": "boolean",
+            "replicaModifications": "boolean",
+            "priority": "*",
+            "deleteMarkerReplication": "boolean",
+            "id": "*",
+            "filter": {
+              "prefix": "*",
+              "tags": {
+                "key": "*",
+                "value": "*"
+              }
+            }
+          },
+          "addLifecycleRule": [
+            {
+              "id": "*",
+              "enabled": "boolean",
+              "abortIncompleteMultipartUploadAfter": "*",
+              "expirationDate": "*",
+              "noncurrentVersionsToRetain": "*",
+              "noncurrentVersionTransitions": {
+                "storageClass": "*",
+                "noncurrentVersionsToRetain": "*"
+              },
+              "transitions": "*",
+              "prefix": "*",
+              "tagFilters": "*",
+              "expiredObjectDeleteMarker": "boolean",
+              "objectSizeLessThan": "*",
+              "objectSizeGreaterThan": "*"
+            }
+          ],
+          "addMetric": [
+            {
+              "id": "*",
+              "prefix": "*",
+              "tagFilters": "*"
+            }
+          ],
+          "addCorsRule": [
+            {
+              "id": "*",
+              "maxAge": "*",
+              "allowedHeaders": "*",
+              "allowedMethods": "HttpMethods",
+              "allowedOrigins": "*",
+              "exposedHeaders": "*"
+            }
+          ],
+          "addInventory": [
+            {
+              "destination": {
+                "bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "encryptionKey": {
+                    "keyArn": "*",
+                    "keyId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "prefix": "*",
+                "bucketOwner": "*"
+              },
+              "objectsPrefix": "*",
+              "format": "InventoryFormat",
+              "enabled": "boolean",
+              "inventoryId": "*",
+              "frequency": "InventoryFrequency",
+              "includeObjectVersions": "InventoryObjectVersion",
+              "optionalFields": "*"
+            }
+          ]
+        },
+        "ReferencedBucket": {
+          "account": "*",
+          "region": "*",
+          "bucketArn": "*",
+          "bucketName": "*",
+          "bucketDomainName": "*",
+          "bucketWebsiteUrl": "*",
+          "bucketWebsiteDomainName": "*",
+          "bucketRegionalDomainName": "*",
+          "bucketDualStackDomainName": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "isWebsite": "boolean",
+          "policy": "*",
+          "replicationRoleArn": "*",
+          "autoCreatePolicy": "boolean",
+          "disallowPublicAccess": "boolean",
+          "notificationsHandlerRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-scheduler": {
+        "ScheduleGroup": {},
+        "Schedule": {
+          "schedule": "*",
+          "target": "*",
+          "scheduleName": "*",
+          "description": "*",
+          "scheduleGroup": {
+            "scheduleGroupName": "*",
+            "scheduleGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean",
+          "key": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeWindow": "*",
+          "start": "*",
+          "end": "*"
+        }
+      },
+      "aws-cdk-lib.aws-secretsmanager": {
+        "ResourcePolicy": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          }
+        },
+        "RotationSchedule": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "rotationLambda": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "hostedRotation": "*",
+          "automaticallyAfter": "*",
+          "rotateImmediatelyOnUpdate": "boolean"
+        },
+        "Secret": {
+          "description": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "generateSecretString": {
+            "excludeUppercase": "boolean",
+            "requireEachIncludedType": "boolean",
+            "includeSpace": "boolean",
+            "excludeCharacters": "*",
+            "passwordLength": "*",
+            "excludePunctuation": "boolean",
+            "excludeLowercase": "boolean",
+            "excludeNumbers": "boolean",
+            "secretStringTemplate": "*",
+            "generateStringKey": "*"
+          },
+          "secretName": "*",
+          "secretStringBeta1": "*",
+          "secretStringValue": "*",
+          "secretObjectValue": "*",
+          "removalPolicy": "RemovalPolicy",
+          "replicaRegions": {
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "addTargetAttachment": [
+            "*",
+            {
+              "target": "*"
+            }
+          ],
+          "addReplicaRegion": [
+            "*",
+            "*"
+          ]
+        },
+        "SecretTargetAttachment": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "target": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-servicecatalog": {
+        "Portfolio": {
+          "displayName": "*",
+          "providerName": "*",
+          "messageLanguage": "MessageLanguage",
+          "description": "*",
+          "tagOptions": "*"
+        },
+        "CloudFormationProduct": {
+          "owner": "*",
+          "productName": "*",
+          "productVersions": {
+            "description": "*",
+            "validateTemplate": "boolean",
+            "cloudFormationTemplate": "*",
+            "productVersionName": "*"
+          },
+          "messageLanguage": "MessageLanguage",
+          "description": "*",
+          "distributor": "*",
+          "replaceProductVersionIds": "boolean",
+          "supportDescription": "*",
+          "supportEmail": "*",
+          "supportUrl": "*",
+          "tagOptions": "*"
+        },
+        "TagOptions": {
+          "allowedValuesForTags": "*"
+        }
+      },
+      "aws-cdk-lib.aws-servicediscovery": {
+        "AliasTargetInstance": {
+          "dnsName": "*",
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "CnameInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceCname": "*",
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "HttpNamespace": {
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "IpInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "port": "*",
+          "ipv4": "*",
+          "ipv6": "*",
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "NonIpInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "PrivateDnsNamespace": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "discoveryType": "DiscoveryType",
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "routingPolicy": "RoutingPolicy",
+              "loadBalancer": "boolean",
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "PublicDnsNamespace": {
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "discoveryType": "DiscoveryType",
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "routingPolicy": "RoutingPolicy",
+              "loadBalancer": "boolean",
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "Service": {
+          "namespace": {
+            "namespaceName": "*",
+            "namespaceId": "*",
+            "namespaceArn": "*",
+            "type": "NamespaceType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "discoveryType": "DiscoveryType",
+          "dnsRecordType": "DnsRecordType",
+          "dnsTtl": "*",
+          "routingPolicy": "RoutingPolicy",
+          "loadBalancer": "boolean",
+          "name": "*",
+          "description": "*",
+          "healthCheck": {
+            "type": "HealthCheckType",
+            "resourcePath": "*",
+            "failureThreshold": "*"
+          },
+          "customHealthCheck": {
+            "failureThreshold": "*"
+          },
+          "registerLoadBalancer": [
+            "*",
+            {
+              "loadBalancerCanonicalHostedZoneId": "*",
+              "loadBalancerDnsName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "*"
+          ],
+          "registerNonIpInstance": [
+            "*",
+            {
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ],
+          "registerIpInstance": [
+            "*",
+            {
+              "port": "*",
+              "ipv4": "*",
+              "ipv6": "*",
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ],
+          "registerCnameInstance": [
+            "*",
+            {
+              "instanceCname": "*",
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ses": {
+        "ConfigurationSetEventDestination": {
+          "configurationSet": "*",
+          "configurationSetEventDestinationName": "*",
+          "enabled": "boolean",
+          "destination": "*",
+          "events": "EmailSendingEvent"
+        },
+        "ConfigurationSet": {
+          "configurationSetName": "*",
+          "dedicatedIpPool": "*",
+          "tlsPolicy": "ConfigurationSetTlsPolicy",
+          "reputationMetrics": "boolean",
+          "sendingEnabled": "boolean",
+          "suppressionReasons": "SuppressionReasons",
+          "disableSuppressionList": "boolean",
+          "autoValidationThreshold": "AutoValidationThreshold",
+          "disableAutoValidation": "boolean",
+          "customTrackingRedirectDomain": "*",
+          "customTrackingHttpsPolicy": "HttpsPolicy",
+          "vdmOptions": {
+            "engagementMetrics": "boolean",
+            "optimizedSharedDelivery": "boolean"
+          },
+          "maxDeliveryDuration": "*",
+          "addEventDestination": [
+            "*",
+            {
+              "configurationSetEventDestinationName": "*",
+              "enabled": "boolean",
+              "destination": "*",
+              "events": "EmailSendingEvent"
+            }
+          ]
+        },
+        "DedicatedIpPool": {
+          "dedicatedIpPoolName": "*",
+          "scalingMode": "ScalingMode"
+        },
+        "EmailIdentity": {
+          "identity": "*",
+          "configurationSet": "*",
+          "dkimSigning": "boolean",
+          "dkimIdentity": "*",
+          "feedbackForwarding": "boolean",
+          "mailFromDomain": "*",
+          "mailFromBehaviorOnMxFailure": "MailFromBehaviorOnMxFailure"
+        },
+        "ReceiptFilter": {
+          "receiptFilterName": "*",
+          "ip": "*",
+          "policy": "ReceiptFilterPolicy"
+        },
+        "ReceiptRuleSet": {
+          "receiptRuleSetName": "*",
+          "rules": {
+            "actions": "*",
+            "after": "*",
+            "enabled": "boolean",
+            "receiptRuleName": "*",
+            "recipients": "*",
+            "scanEnabled": "boolean",
+            "tlsPolicy": "TlsPolicy"
+          },
+          "dropSpam": "boolean"
+        },
+        "ReceiptRule": {
+          "ruleSet": "*",
+          "actions": "*",
+          "after": "*",
+          "enabled": "boolean",
+          "receiptRuleName": "*",
+          "recipients": "*",
+          "scanEnabled": "boolean",
+          "tlsPolicy": "TlsPolicy",
+          "addAction": [
+            "*"
+          ]
+        },
+        "VdmAttributes": {
+          "engagementMetrics": "boolean",
+          "optimizedSharedDelivery": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-signer": {
+        "SigningProfile": {
+          "platform": "*",
+          "signatureValidity": "*",
+          "signingProfileName": "*"
+        }
+      },
+      "aws-cdk-lib.aws-sns": {
+        "TopicPolicy": {
+          "topics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "policyDocument": "*",
+          "enforceSSL": "boolean"
+        },
+        "Subscription": {
+          "topic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "protocol": "SubscriptionProtocol",
+          "endpoint": "*",
+          "rawMessageDelivery": "boolean",
+          "filterPolicy": "*",
+          "filterPolicyWithMessageBody": "*",
+          "region": "*",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "subscriptionRoleArn": "*",
+          "deliveryPolicy": {
+            "healthyRetryPolicy": {
+              "minDelayTarget": "*",
+              "numRetries": "*",
+              "numNoDelayRetries": "*",
+              "numMinDelayRetries": "*",
+              "numMaxDelayRetries": "*",
+              "backoffFunction": "BackoffFunction"
+            },
+            "throttlePolicy": {
+              "maxReceivesPerSecond": "*"
+            },
+            "requestPolicy": {
+              "headerContentType": "*"
+            }
+          }
+        },
+        "Topic": {
+          "displayName": "*",
+          "topicName": "*",
+          "masterKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "contentBasedDeduplication": "boolean",
+          "fifo": "boolean",
+          "loggingConfigs": {
+            "protocol": "LoggingProtocol",
+            "failureFeedbackRole": "*",
+            "successFeedbackRole": "*",
+            "successFeedbackSampleRate": "*"
+          },
+          "messageRetentionPeriodInDays": "*",
+          "enforceSSL": "boolean",
+          "signatureVersion": "*",
+          "tracingConfig": "TracingConfig",
+          "fifoThroughputScope": "FifoThroughputScope",
+          "addLoggingConfig": [
+            {
+              "protocol": "LoggingProtocol",
+              "failureFeedbackRole": "*",
+              "successFeedbackRole": "*",
+              "successFeedbackSampleRate": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-sqs": {
+        "QueuePolicy": {
+          "queues": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          }
+        },
+        "Queue": {
+          "queueName": "*",
+          "retentionPeriod": "*",
+          "deliveryDelay": "*",
+          "maxMessageSizeBytes": "*",
+          "receiveMessageWaitTime": "*",
+          "visibilityTimeout": "*",
+          "deadLetterQueue": {
+            "queue": {
+              "queueArn": "*",
+              "queueUrl": "*",
+              "queueName": "*",
+              "encryptionMasterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "fifo": "boolean",
+              "encryptionType": "QueueEncryption"
+            },
+            "maxReceiveCount": "*"
+          },
+          "encryption": "QueueEncryption",
+          "encryptionMasterKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dataKeyReuse": "*",
+          "fifo": "boolean",
+          "contentBasedDeduplication": "boolean",
+          "deduplicationScope": "DeduplicationScope",
+          "fifoThroughputLimit": "FifoThroughputLimit",
+          "removalPolicy": "RemovalPolicy",
+          "enforceSSL": "boolean",
+          "redriveAllowPolicy": {
+            "redrivePermission": "RedrivePermission",
+            "sourceQueues": {
+              "queueArn": "*",
+              "queueUrl": "*",
+              "queueName": "*",
+              "encryptionMasterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "fifo": "boolean",
+              "encryptionType": "QueueEncryption"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-ssm": {
+        "StringParameter": {
+          "stringValue": "*",
+          "type": "ParameterType",
+          "dataType": "ParameterDataType",
+          "allowedPattern": "*",
+          "description": "*",
+          "parameterName": "*",
+          "simpleName": "boolean",
+          "tier": "ParameterTier"
+        },
+        "StringListParameter": {
+          "stringListValue": "*",
+          "allowedPattern": "*",
+          "description": "*",
+          "parameterName": "*",
+          "simpleName": "boolean",
+          "tier": "ParameterTier"
+        }
+      },
+      "aws-cdk-lib.aws-stepfunctions": {
+        "Activity": {
+          "activityName": "*",
+          "encryptionConfiguration": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRunTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricScheduleTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricScheduled": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTimedOut": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricStarted": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricSucceeded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricFailed": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHeartbeatTimedOut": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "StateMachine": {
+          "stateMachineName": "*",
+          "definition": {
+            "id": "*",
+            "startState": "*",
+            "endStates": "*"
+          },
+          "definitionBody": "*",
+          "definitionSubstitutions": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeout": "*",
+          "comment": "*",
+          "queryLanguage": "QueryLanguage",
+          "stateMachineType": "StateMachineType",
+          "logs": {
+            "destination": "*",
+            "includeExecutionData": "boolean",
+            "level": "LogLevel"
+          },
+          "tracingEnabled": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "encryptionConfiguration": "*",
+          "addToRolePolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-synthetics": {
+        "Canary": {
+          "artifactsBucketLocation": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeToLive": "*",
+          "schedule": "*",
+          "maxRetries": "*",
+          "startAfterCreation": "boolean",
+          "successRetentionPeriod": "*",
+          "failureRetentionPeriod": "*",
+          "canaryName": "*",
+          "runtime": "*",
+          "test": "*",
+          "activeTracing": "boolean",
+          "environmentVariables": "*",
+          "memory": "*",
+          "timeout": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "cleanup": "Cleanup",
+          "provisionedResourceCleanup": "boolean",
+          "artifactsBucketLifecycleRules": {
+            "id": "*",
+            "enabled": "boolean",
+            "abortIncompleteMultipartUploadAfter": "*",
+            "expirationDate": "*",
+            "noncurrentVersionsToRetain": "*",
+            "noncurrentVersionTransitions": {
+              "storageClass": "*",
+              "noncurrentVersionsToRetain": "*"
+            },
+            "transitions": "*",
+            "prefix": "*",
+            "tagFilters": "*",
+            "expiredObjectDeleteMarker": "boolean",
+            "objectSizeLessThan": "*",
+            "objectSizeGreaterThan": "*"
+          },
+          "artifactS3EncryptionMode": "ArtifactsEncryptionMode",
+          "artifactS3KmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "environmentEncryption": "*",
+          "dryRunAndUpdate": "boolean",
+          "resourcesToReplicateTags": "ResourceToReplicateTags",
+          "browserConfigs": "BrowserType",
+          "metricDuration": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricSuccessPercent": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricFailed": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "Group": {
+          "groupName": "*",
+          "canaries": {
+            "canaryId": "*",
+            "canaryName": "*",
+            "canaryArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addCanary": [
+            {
+              "canaryId": "*",
+              "canaryName": "*",
+              "canaryArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.core": {
+        "CustomResource": {
+          "serviceToken": "*",
+          "serviceTimeout": "*",
+          "properties": "*",
+          "resourceType": "*",
+          "removalPolicy": "RemovalPolicy",
+          "pascalCaseProperties": "boolean",
+          "getAtt": [
+            "*"
+          ],
+          "getAttString": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.lambda-layer-awscli": {
+        "AwsCliLayer": {}
+      },
+      "aws-cdk-lib.lambda-layer-node-proxy-agent": {
+        "NodeProxyAgentLayer": {}
+      },
+      "aws-cdk-lib.triggers": {
+        "TriggerFunction": {
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "executeAfter": [
+            "*"
+          ],
+          "executeBefore": [
+            "*"
+          ],
+          "executeOnHandlerChange": "boolean"
+        }
+      },
+      "aws-bedrock-agentcore-alpha.lib": {
+        "Evaluator": {
+          "evaluatorName": "*",
+          "evaluatorConfig": "*",
+          "level": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "OnlineEvaluationConfig": {
+          "evaluators": "*",
+          "dataSource": "*",
+          "tags": "*",
+          "onlineEvaluationConfigName": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "samplingPercentage": "*",
+          "filters": {
+            "key": "*",
+            "operator": "*",
+            "value": "*"
+          },
+          "sessionTimeout": "*",
+          "executionStatus": "*"
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "description": "*",
+          "protocolConfiguration": {
+            "protocolType": "*"
+          },
+          "authorizerConfiguration": {
+            "authorizerType": "GatewayAuthorizerType"
+          },
+          "exceptionLevel": "GatewayExceptionLevel",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "interceptorConfigurations": {
+            "interceptionPoint": "InterceptionPoint"
+          },
+          "policyEngineConfiguration": {
+            "policyEngine": {
+              "policyEngineArn": "*",
+              "policyEngineId": "*",
+              "policyEngineName": "*",
+              "description": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "mode": "*"
+          },
+          "addLambdaTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "lambdaFunction": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "latestVersion": {
+                  "version": "*",
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "toolSchema": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addOpenApiTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "apiSchema": "*",
+              "validateOpenApiSchema": "boolean",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addSmithyTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "smithyModel": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addMcpServerTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "endpoint": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addApiGatewayTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "restApi": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "stage": "*",
+              "apiGatewayToolConfiguration": {
+                "toolFilters": {
+                  "filterPath": "*",
+                  "methods": "ApiGatewayHttpMethod"
+                },
+                "toolOverrides": {
+                  "path": "*",
+                  "method": "ApiGatewayHttpMethod",
+                  "name": "*",
+                  "description": "*"
+                }
+              },
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              },
+              "metadataConfiguration": {
+                "allowedQueryParameters": "*",
+                "allowedRequestHeaders": "*",
+                "allowedResponseHeaders": "*"
+              }
+            }
+          ],
+          "addInterceptor": [
+            {
+              "interceptionPoint": "InterceptionPoint"
+            }
+          ]
+        },
+        "ApiKeyCredentialProvider": {
+          "apiKeyCredentialProviderName": "*",
+          "apiKey": "*",
+          "tags": "*",
+          "bindForGatewayApiKeyTarget": []
+        },
+        "OAuth2CredentialProvider": {
+          "oAuth2CredentialProviderName": "*",
+          "credentialProviderVendor": "*",
+          "oauth2ProviderConfigInput": "*",
+          "tags": "*",
+          "bindForGatewayOAuthTarget": [
+            "*",
+            "*"
+          ]
+        },
+        "WorkloadIdentity": {
+          "workloadIdentityName": "*",
+          "allowedResourceOauth2ReturnUrls": "*",
+          "tags": "*"
+        },
+        "Memory": {
+          "memoryName": "*",
+          "expirationDuration": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "memoryStrategies": {
+            "name": "*",
+            "description": "*",
+            "strategyType": "MemoryStrategyType"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addMemoryStrategy": [
+            {
+              "name": "*",
+              "description": "*",
+              "strategyType": "MemoryStrategyType"
+            }
+          ]
+        },
+        "PolicyEngine": {
+          "policyEngineName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addPolicy": [
+            "*",
+            {
+              "definition": "*",
+              "statement": "*",
+              "policyName": "*",
+              "description": "*",
+              "validationMode": "*"
+            }
+          ]
+        },
+        "Policy": {
+          "policyName": "*",
+          "policyEngine": {
+            "policyEngineArn": "*",
+            "policyEngineId": "*",
+            "policyEngineName": "*",
+            "description": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "definition": "*",
+          "statement": "*",
+          "description": "*",
+          "validationMode": "*"
+        },
+        "RuntimeEndpoint": {
+          "endpointName": "*",
+          "agentRuntimeId": "*",
+          "agentRuntimeVersion": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "Runtime": {
+          "runtimeName": "*",
+          "agentRuntimeArtifact": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "description": "*",
+          "protocolConfiguration": "ProtocolType",
+          "environmentVariables": "*",
+          "authorizerConfiguration": "*",
+          "tags": "*",
+          "requestHeaderConfiguration": {
+            "allowlistedHeaders": "*"
+          },
+          "lifecycleConfiguration": {
+            "idleRuntimeSessionTimeout": "*"
+          },
+          "tracingEnabled": "boolean",
+          "loggingConfigs": {
+            "logType": "*",
+            "destination": "*"
+          },
+          "addEndpoint": [
+            "*",
+            {
+              "description": "*",
+              "version": "*"
+            }
+          ]
+        },
+        "BrowserCustom": {
+          "browserCustomName": "*",
+          "description": "*",
+          "networkConfiguration": "*",
+          "recordingConfig": {
+            "enabled": "boolean",
+            "s3Location": {
+              "bucketName": "*",
+              "objectKey": "*",
+              "objectVersion": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "browserSigning": "BrowserSigning"
+        },
+        "CodeInterpreterCustom": {
+          "codeInterpreterCustomName": "*",
+          "description": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "tags": "*"
+        }
+      },
+      "aws-bedrock-alpha.bedrock": {
+        "AgentAlias": {
+          "agentAliasName": "*",
+          "agentVersion": "*",
+          "agent": {
+            "agentArn": "*",
+            "agentId": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "lastUpdated": "*"
+          },
+          "description": "*"
+        },
+        "Agent": {
+          "agentName": "*",
+          "instruction": "*",
+          "foundationModel": {
+            "invokableArn": "*"
+          },
+          "existingRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "shouldPrepareAgent": "boolean",
+          "idleSessionTTL": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "actionGroups": "*",
+          "guardrail": {
+            "guardrailArn": "*",
+            "guardrailId": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "lastUpdated": "*",
+            "guardrailVersion": "*"
+          },
+          "promptOverrideConfiguration": "*",
+          "userInputEnabled": "boolean",
+          "codeInterpreterEnabled": "boolean",
+          "forceDelete": "boolean",
+          "memory": "*",
+          "agentCollaboration": "*",
+          "customOrchestrationExecutor": "*",
+          "addGuardrail": [
+            {
+              "guardrailArn": "*",
+              "guardrailId": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "lastUpdated": "*",
+              "guardrailVersion": "*"
+            }
+          ],
+          "addActionGroup": [
+            "*"
+          ],
+          "addActionGroups": [
+            "*"
+          ]
+        },
+        "GuardrailVersion": {
+          "guardrail": {
+            "guardrailArn": "*",
+            "guardrailId": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "lastUpdated": "*",
+            "guardrailVersion": "*"
+          },
+          "description": "*"
+        },
+        "Guardrail": {
+          "guardrailName": "*",
+          "description": "*",
+          "blockedInputMessaging": "*",
+          "blockedOutputsMessaging": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "contentFilters": {
+            "type": "ContentFilterType",
+            "inputStrength": "ContentFilterStrength",
+            "outputStrength": "ContentFilterStrength",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean",
+            "inputModalities": "ModalityType",
+            "outputModalities": "ModalityType"
+          },
+          "contentFiltersTierConfig": "TierConfig",
+          "deniedTopics": "*",
+          "topicsTierConfig": "TierConfig",
+          "wordFilters": {
+            "text": "*",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "managedWordListFilters": {
+            "type": "ManagedWordFilterType",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "piiFilters": {
+            "type": "*",
+            "action": "GuardrailAction",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "regexFilters": {
+            "name": "*",
+            "description": "*",
+            "action": "GuardrailAction",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean",
+            "pattern": "*"
+          },
+          "contextualGroundingFilters": {
+            "type": "ContextualGroundingFilterType",
+            "action": "GuardrailAction",
+            "enabled": "boolean",
+            "threshold": "*"
+          },
+          "crossRegionConfig": {
+            "guardrailProfileArn": "*"
+          },
+          "addContentFilter": [
+            {
+              "type": "ContentFilterType",
+              "inputStrength": "ContentFilterStrength",
+              "outputStrength": "ContentFilterStrength",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean",
+              "inputModalities": "ModalityType",
+              "outputModalities": "ModalityType"
+            }
+          ],
+          "addPIIFilter": [
+            {
+              "type": "*",
+              "action": "GuardrailAction",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "addRegexFilter": [
+            {
+              "name": "*",
+              "description": "*",
+              "action": "GuardrailAction",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean",
+              "pattern": "*"
+            }
+          ],
+          "addDeniedTopicFilter": [
+            "*"
+          ],
+          "addContextualGroundingFilter": [
+            {
+              "type": "ContextualGroundingFilterType",
+              "action": "GuardrailAction",
+              "enabled": "boolean",
+              "threshold": "*"
+            }
+          ],
+          "addWordFilter": [
+            {
+              "text": "*",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "addWordFilterFromFile": [
+            "*",
+            "GuardrailAction",
+            "GuardrailAction",
+            "boolean",
+            "boolean"
+          ],
+          "addManagedWordListFilter": [
+            {
+              "type": "ManagedWordFilterType",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "createVersion": [
+            "*"
+          ]
+        },
+        "ApplicationInferenceProfile": {
+          "applicationInferenceProfileName": "*",
+          "description": "*",
+          "modelSource": {
+            "invokableArn": "*"
+          },
+          "tags": "*",
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantProfileUsage": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Prompt": {
+          "promptName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultVariant": {
+            "name": "*",
+            "templateType": "PromptTemplateType",
+            "inferenceConfiguration": "*",
+            "modelId": "*",
+            "templateConfiguration": "*",
+            "genAiResource": "*"
+          },
+          "variants": {
+            "name": "*",
+            "templateType": "PromptTemplateType",
+            "inferenceConfiguration": "*",
+            "modelId": "*",
+            "templateConfiguration": "*",
+            "genAiResource": "*"
+          },
+          "tags": "*",
+          "createVersion": [
+            "*"
+          ],
+          "addVariant": [
+            {
+              "name": "*",
+              "templateType": "PromptTemplateType",
+              "inferenceConfiguration": "*",
+              "modelId": "*",
+              "templateConfiguration": "*",
+              "genAiResource": "*"
+            }
+          ]
+        }
+      },
+      "aws-glue-alpha.lib": {
+        "PySparkEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkStreamingJob": {
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PythonShellJob": {
+          "pythonVersion": "PythonVersion",
+          "maxCapacity": "MaxCapacity",
+          "librarySet": "LibrarySet",
+          "extraPythonFiles": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "RayJob": {
+          "runtime": "Runtime",
+          "numberOfWorkers": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkEtlJob": {
+          "className": "*",
+          "notifyDelayAfter": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkStreamingJob": {
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "Workflow": {}
+      },
+      "aws-apigateway.lib": {
+        "CognitoUserPoolsAuthorizer": {
+          "authorizerName": "*",
+          "cognitoUserPools": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "resultsCacheTtl": "*",
+          "identitySource": "*",
+          "_attachToApi": [
+            {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          ]
+        },
+        "TokenAuthorizer": {
+          "validationRegex": "*",
+          "identitySource": "*",
+          "authorizerName": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "resultsCacheTtl": "*",
+          "assumeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "RequestAuthorizer": {
+          "identitySources": "*",
+          "authorizerName": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "resultsCacheTtl": "*",
+          "assumeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "aws-apigatewayv2.lib": {
+        "ApiMapping": {
+          "apiMappingKey": "*",
+          "api": "*",
+          "domainName": "*",
+          "stage": {
+            "stageName": "*",
+            "url": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "DomainName": {
+          "domainName": "*",
+          "mtls": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "key": "*",
+            "version": "*"
+          },
+          "certificate": "*",
+          "certificateName": "*",
+          "endpointType": "EndpointType",
+          "securityPolicy": "SecurityPolicy",
+          "ownershipCertificate": "*",
+          "ipAddressType": "IpAddressType",
+          "addEndpoint": [
+            {
+              "certificate": "*",
+              "certificateName": "*",
+              "endpointType": "EndpointType",
+              "securityPolicy": "SecurityPolicy",
+              "ownershipCertificate": "*",
+              "ipAddressType": "IpAddressType"
+            }
+          ]
+        },
+        "HttpApi": {
+          "addStage": [
+            "*",
+            {
+              "stageName": "*",
+              "autoDeploy": "boolean",
+              "domainMapping": {
+                "domainName": "*",
+                "mappingKey": "*"
+              },
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              },
+              "description": "*",
+              "detailedMetricsEnabled": "boolean",
+              "accessLogSettings": {
+                "destination": "*",
+                "format": "*"
+              },
+              "stageVariables": "*"
+            }
+          ],
+          "addRoutes": [
+            {
+              "path": "*",
+              "methods": "HttpMethod",
+              "authorizer": "*",
+              "authorizationScopes": "*",
+              "integration": "*"
+            }
+          ]
+        },
+        "HttpAuthorizer": {
+          "authorizerName": "*",
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "type": "HttpAuthorizerType",
+          "identitySource": "*",
+          "jwtAudience": "*",
+          "jwtIssuer": "*",
+          "enableSimpleResponses": "boolean",
+          "payloadFormatVersion": "AuthorizerPayloadVersion",
+          "authorizerUri": "*",
+          "resultsCacheTtl": "*",
+          "role": "*"
+        },
+        "HttpIntegration": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "integrationType": "HttpIntegrationType",
+          "integrationSubtype": "HttpIntegrationSubtype",
+          "integrationUri": "*",
+          "method": "HttpMethod",
+          "connectionId": "*",
+          "connectionType": "HttpConnectionType",
+          "payloadFormatVersion": "*",
+          "secureServerName": "*",
+          "timeout": "*",
+          "parameterMapping": "*",
+          "credentials": "*"
+        },
+        "HttpRoute": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "routeKey": "*",
+          "authorizer": "*",
+          "authorizationScopes": "*",
+          "integration": "*",
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "httpMethods": "HttpMethod"
+            }
+          ]
+        },
+        "HttpStage": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "stageName": "*",
+          "autoDeploy": "boolean",
+          "domainMapping": {
+            "domainName": "*",
+            "mappingKey": "*"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "description": "*",
+          "detailedMetricsEnabled": "boolean",
+          "accessLogSettings": {
+            "destination": "*",
+            "format": "*"
+          },
+          "stageVariables": "*"
+        },
+        "VpcLink": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcLinkName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": "*",
+          "addSubnets": [
+            "*"
+          ],
+          "addSecurityGroups": [
+            "*"
+          ]
+        },
+        "ApiKey": {
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*"
+        },
+        "RateLimitedApiKey": {
+          "apiStages": {
+            "api": {
+              "apiId": "*",
+              "apiEndpoint": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "isWebsocketApi": "boolean"
+            },
+            "stage": {
+              "callbackUrl": "*",
+              "stageName": "*",
+              "url": "*"
+            }
+          },
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*"
+        },
+        "WebSocketApi": {
+          "addRoute": [
+            "*",
+            {
+              "integration": "*",
+              "authorizer": "*",
+              "returnResponse": "boolean"
+            }
+          ],
+          "grantManageConnections": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "arnForExecuteApi": [
+            "*",
+            "*",
+            "*"
+          ],
+          "arnForExecuteApiV2": [
+            "*",
+            "*"
+          ]
+        },
+        "WebSocketAuthorizer": {
+          "authorizerName": "*",
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "type": "WebSocketAuthorizerType",
+          "identitySource": "*",
+          "authorizerUri": "*"
+        },
+        "WebSocketIntegration": {
+          "webSocketApi": {
+            "isWebsocketApi": "boolean"
+          },
+          "integrationType": "WebSocketIntegrationType",
+          "integrationUri": "*",
+          "integrationMethod": "*",
+          "contentHandling": "ContentHandling",
+          "credentialsRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "requestParameters": "*",
+          "requestTemplates": "*",
+          "templateSelectionExpression": "*",
+          "timeout": "*",
+          "passthroughBehavior": "PassthroughBehavior"
+        },
+        "WebSocketRoute": {
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "routeKey": "*",
+          "apiKeyRequired": "boolean",
+          "integration": "*",
+          "authorizer": "*",
+          "returnResponse": "boolean"
+        },
+        "WebSocketStage": {
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "stageName": "*",
+          "autoDeploy": "boolean",
+          "domainMapping": {
+            "domainName": "*",
+            "mappingKey": "*"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "description": "*",
+          "detailedMetricsEnabled": "boolean",
+          "accessLogSettings": {
+            "destination": "*",
+            "format": "*"
+          },
+          "stageVariables": "*",
+          "grantManagementApiAccess": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "UsagePlan": {
+          "apiStages": {
+            "api": {
+              "apiId": "*",
+              "apiEndpoint": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "isWebsocketApi": "boolean"
+            },
+            "stage": {
+              "callbackUrl": "*",
+              "stageName": "*",
+              "url": "*"
+            }
+          },
+          "description": "*",
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "usagePlanName": "*",
+          "addApiStage": [
+            {
+              "api": {
+                "apiId": "*",
+                "apiEndpoint": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                },
+                "isWebsocketApi": "boolean"
+              },
+              "stage": {
+                "callbackUrl": "*",
+                "stageName": "*",
+                "url": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-bedrockagentcore.lib": {
+        "Evaluator": {
+          "evaluatorName": "*",
+          "evaluatorConfig": "*",
+          "level": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "OnlineEvaluationConfig": {
+          "evaluators": "*",
+          "dataSource": "*",
+          "tags": "*",
+          "onlineEvaluationConfigName": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "samplingPercentage": "*",
+          "filters": {
+            "key": "*",
+            "operator": "*",
+            "value": "*"
+          },
+          "sessionTimeout": "*",
+          "executionStatus": "*"
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "description": "*",
+          "protocolConfiguration": {
+            "protocolType": "*"
+          },
+          "authorizerConfiguration": {
+            "authorizerType": "GatewayAuthorizerType"
+          },
+          "exceptionLevel": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "interceptorConfigurations": {
+            "interceptionPoint": "InterceptionPoint"
+          },
+          "policyEngineConfiguration": {
+            "policyEngine": {
+              "policyEngineArn": "*",
+              "policyEngineId": "*",
+              "policyEngineName": "*",
+              "description": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "mode": "*"
+          },
+          "addLambdaTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "lambdaFunction": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "latestVersion": {
+                  "version": "*",
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "toolSchema": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addOpenApiTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "apiSchema": "*",
+              "validateOpenApiSchema": "boolean",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addSmithyTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "smithyModel": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addMcpServerTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "endpoint": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addApiGatewayTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "restApi": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "stage": "*",
+              "apiGatewayToolConfiguration": {
+                "toolFilters": {
+                  "filterPath": "*",
+                  "methods": "*"
+                },
+                "toolOverrides": {
+                  "path": "*",
+                  "name": "*",
+                  "description": "*"
+                }
+              },
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              },
+              "metadataConfiguration": {
+                "allowedQueryParameters": "*",
+                "allowedRequestHeaders": "*",
+                "allowedResponseHeaders": "*"
+              }
+            }
+          ],
+          "addInterceptor": [
+            {
+              "interceptionPoint": "InterceptionPoint"
+            }
+          ]
+        },
+        "ApiKeyCredentialProvider": {
+          "apiKeyCredentialProviderName": "*",
+          "apiKey": "*",
+          "tags": "*",
+          "bindForGatewayApiKeyTarget": []
+        },
+        "OAuth2CredentialProvider": {
+          "oAuth2CredentialProviderName": "*",
+          "credentialProviderVendor": "*",
+          "oauth2ProviderConfigInput": "*",
+          "tags": "*",
+          "bindForGatewayOAuthTarget": [
+            "*",
+            "*"
+          ]
+        },
+        "WorkloadIdentity": {
+          "workloadIdentityName": "*",
+          "allowedResourceOauth2ReturnUrls": "*",
+          "tags": "*"
+        },
+        "Memory": {
+          "memoryName": "*",
+          "expirationDuration": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "memoryStrategies": {
+            "strategyName": "*",
+            "description": "*",
+            "strategyType": "MemoryStrategyType"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "streamDeliveryResources": "*",
+          "addMemoryStrategy": [
+            {
+              "strategyName": "*",
+              "description": "*",
+              "strategyType": "MemoryStrategyType"
+            }
+          ],
+          "addStreamDeliveryResource": [
+            "*"
+          ]
+        },
+        "PolicyEngine": {
+          "policyEngineName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addPolicy": [
+            "*",
+            {
+              "statement": "*",
+              "policyName": "*",
+              "description": "*",
+              "validationMode": "*"
+            }
+          ]
+        },
+        "Policy": {
+          "policyName": "*",
+          "policyEngine": {
+            "policyEngineArn": "*",
+            "policyEngineId": "*",
+            "policyEngineName": "*",
+            "description": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "statement": "*",
+          "description": "*",
+          "validationMode": "*"
+        },
+        "RuntimeEndpoint": {
+          "endpointName": "*",
+          "agentRuntimeId": "*",
+          "agentRuntimeVersion": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "Runtime": {
+          "runtimeName": "*",
+          "agentRuntimeArtifact": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "description": "*",
+          "protocolConfiguration": "*",
+          "platformVersion": "*",
+          "environmentVariables": "*",
+          "authorizerConfiguration": "*",
+          "tags": "*",
+          "requestHeaderConfiguration": {
+            "allowlistedHeaders": "*"
+          },
+          "lifecycleConfiguration": {
+            "idleRuntimeSessionTimeout": "*"
+          },
+          "tracingEnabled": "boolean",
+          "loggingConfigs": {
+            "logType": "*",
+            "destination": "*"
+          },
+          "manageDeliveryResourcePolicy": "boolean",
+          "addEndpoint": [
+            "*",
+            {
+              "description": "*",
+              "version": "*"
+            }
+          ]
+        },
+        "BrowserCustom": {
+          "browserCustomName": "*",
+          "description": "*",
+          "networkConfiguration": "*",
+          "recordingConfig": {
+            "enabled": "boolean",
+            "s3Location": {
+              "bucketName": "*",
+              "objectKey": "*",
+              "objectVersion": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "browserSigning": "BrowserSigning"
+        },
+        "CodeInterpreterCustom": {
+          "codeInterpreterCustomName": "*",
+          "description": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "tags": "*"
+        }
+      },
+      "aws-cloudfront.lib": {
+        "EdgeFunction": {
+          "stackId": "*",
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addEventSourceMapping": [
+            "*",
+            {
+              "eventSourceArn": "*",
+              "batchSize": "*",
+              "bisectBatchOnError": "boolean",
+              "onFailure": "*",
+              "enabled": "boolean",
+              "startingPosition": "StartingPosition",
+              "startingPositionTimestamp": "*",
+              "reportBatchItemFailures": "boolean",
+              "maxBatchingWindow": "*",
+              "maxConcurrency": "*",
+              "retryAttempts": "*",
+              "parallelizationFactor": "*",
+              "kafkaTopic": "*",
+              "kafkaBootstrapServers": "*",
+              "kafkaConsumerGroupId": "*",
+              "sourceAccessConfigurations": {
+                "type": "*",
+                "uri": "*"
+              },
+              "filters": "*",
+              "filterEncryption": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "supportS3OnFailureDestination": "boolean",
+              "provisionedPollerConfig": {
+                "minimumPollers": "*",
+                "maximumPollers": "*",
+                "pollerGroupName": "*"
+              },
+              "metricsConfig": {
+                "metrics": "MetricType"
+              },
+              "logLevel": "EventSourceMappingLogLevel",
+              "schemaRegistryConfig": "*"
+            }
+          ],
+          "addPermission": [
+            "*",
+            {
+              "action": "*",
+              "eventSourceToken": "*",
+              "principal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              },
+              "scope": "*",
+              "sourceAccount": "*",
+              "sourceArn": "*",
+              "organizationId": "*",
+              "functionUrlAuthType": "FunctionUrlAuthType",
+              "invokedViaFunctionUrl": "boolean"
+            }
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeLatestVersion": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeVersion": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "version": "*",
+              "lambda": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "grantInvokeUrl": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeCompositePrincipal": [
+            "*"
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricDuration": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricErrors": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricInvocations": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricThrottles": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addEventSource": [
+            "*"
+          ],
+          "configureAsyncInvoke": [
+            {
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addFunctionUrl": [
+            {
+              "authType": "FunctionUrlAuthType",
+              "cors": {
+                "allowCredentials": "boolean",
+                "allowedHeaders": "*",
+                "allowedMethods": "HttpMethod",
+                "allowedOrigins": "*",
+                "exposedHeaders": "*",
+                "maxAge": "*"
+              },
+              "invokeMode": "InvokeMode"
+            }
+          ]
+        }
+      },
+      "aws-codedeploy.lib": {
+        "EcsApplication": {
+          "applicationName": "*"
+        },
+        "EcsDeploymentConfig": {},
+        "EcsDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*",
+          "alarms": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "service": {
+            "cluster": {
+              "clusterName": "*",
+              "clusterArn": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "connections": "*",
+              "hasEc2Capacity": "boolean",
+              "defaultCloudMapNamespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType"
+              },
+              "autoscalingGroup": {
+                "autoScalingGroupName": "*",
+                "autoScalingGroupArn": "*",
+                "osType": "OperatingSystemType",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "executeCommandConfiguration": {
+                "kmsKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "logConfiguration": {
+                  "cloudWatchEncryptionEnabled": "boolean",
+                  "cloudWatchLogGroup": "*",
+                  "s3Bucket": {
+                    "bucketArn": "*",
+                    "bucketName": "*",
+                    "bucketWebsiteUrl": "*",
+                    "bucketWebsiteDomainName": "*",
+                    "bucketDomainName": "*",
+                    "bucketDualStackDomainName": "*",
+                    "bucketRegionalDomainName": "*",
+                    "isWebsite": "boolean",
+                    "policy": "*",
+                    "replicationRoleArn": "*"
+                  },
+                  "s3EncryptionEnabled": "boolean",
+                  "s3KeyPrefix": "*"
+                },
+                "logging": "ExecuteCommandLogging"
+              }
+            },
+            "serviceArn": "*",
+            "serviceName": "*"
+          },
+          "blueGreenDeploymentConfig": {
+            "blueTargetGroup": {
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            },
+            "listener": "*",
+            "testListener": "*",
+            "deploymentApprovalWaitTime": "*"
+          },
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "addAlarm": [
+            "*"
+          ]
+        },
+        "ImportedEcsDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*"
+        },
+        "LambdaApplication": {
+          "applicationName": "*"
+        },
+        "CustomLambdaDeploymentConfig": {
+          "type": "CustomLambdaDeploymentConfigType",
+          "percentage": "*",
+          "interval": "*",
+          "deploymentConfigName": "*",
+          "bindEnvironment": [
+            "*"
+          ]
+        },
+        "LambdaDeploymentConfig": {},
+        "LambdaDeploymentGroup": {
+          "application": {
+            "applicationArn": "*",
+            "applicationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": {
+            "deploymentConfigName": "*",
+            "deploymentConfigArn": "*"
+          },
+          "alarms": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "alias": "*",
+          "preHook": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "postHook": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "addAlarm": [
+            "*"
+          ],
+          "addPreHook": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "addPostHook": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "grantPutLifecycleEventHookExecutionStatus": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ImportedLambdaDeploymentGroup": {
+          "application": {
+            "applicationArn": "*",
+            "applicationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": {
+            "deploymentConfigName": "*",
+            "deploymentConfigArn": "*"
+          }
+        },
+        "ImportedDeploymentGroupBase": {
+          "application": "*",
+          "deploymentGroupName": "*"
+        },
+        "DeploymentGroupBase": {
+          "deploymentGroupName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roleConstructId": "*"
+        },
+        "ServerApplication": {
+          "applicationName": "*"
+        },
+        "ServerDeploymentConfig": {
+          "minimumHealthyHosts": "*",
+          "zonalConfig": {
+            "monitorDuration": "*",
+            "minimumHealthyHostsPerZone": "*"
+          },
+          "deploymentConfigName": "*"
+        },
+        "ImportedServerDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*"
+        },
+        "ServerDeploymentGroup": {
+          "application": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*",
+          "autoScalingGroups": {
+            "autoScalingGroupName": "*",
+            "autoScalingGroupArn": "*",
+            "osType": "OperatingSystemType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "installAgent": "boolean",
+          "loadBalancer": "*",
+          "loadBalancers": "*",
+          "ec2InstanceTags": "*",
+          "onPremiseInstanceTags": "*",
+          "alarms": "*",
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "terminationHook": "boolean",
+          "addAutoScalingGroup": [
+            "*"
+          ],
+          "addAlarm": [
+            "*"
+          ]
+        }
+      },
+      "aws-codepipeline.lib": {
+        "AliasWithShorterGeneratedName": {}
+      },
+      "aws-cognito.lib": {
+        "UserPoolIdentityProviderAmazon": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderApple": {
+          "clientId": "*",
+          "teamId": "*",
+          "keyId": "*",
+          "privateKey": "*",
+          "privateKeyValue": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderFacebook": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "scopes": "*",
+          "apiVersion": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderGoogle": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "clientSecretValue": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderOidc": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "issuerUrl": "*",
+          "name": "*",
+          "scopes": "*",
+          "identifiers": "*",
+          "attributeRequestMethod": "OidcAttributeRequestMethod",
+          "endpoints": {
+            "authorization": "*",
+            "token": "*",
+            "userInfo": "*",
+            "jwksUri": "*"
+          },
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderSaml": {
+          "name": "*",
+          "identifiers": "*",
+          "metadata": "*",
+          "idpSignout": "boolean",
+          "encryptedResponses": "boolean",
+          "requestSigningAlgorithm": "SigningAlgorithm",
+          "idpInitiated": "boolean",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        }
+      },
+      "aws-ecs.lib": {
+        "ImportedTaskDefinition": {
+          "taskDefinitionArn": "*",
+          "compatibility": "Compatibility",
+          "networkMode": "NetworkMode",
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "TaskDefinition": {
+          "networkMode": "NetworkMode",
+          "placementConstraints": "*",
+          "compatibility": "Compatibility",
+          "cpu": "*",
+          "memoryMiB": "*",
+          "ipcMode": "IpcMode",
+          "pidMode": "PidMode",
+          "inferenceAccelerators": {
+            "deviceName": "*",
+            "deviceType": "*"
+          },
+          "ephemeralStorageGiB": "*",
+          "runtimePlatform": {
+            "cpuArchitecture": "*",
+            "operatingSystemFamily": "*"
+          },
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean",
+          "_validateTarget": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "alternateTarget": "*"
+            }
+          ],
+          "_portRangeFromPortMapping": [
+            {
+              "containerPort": "*",
+              "containerPortRange": "*",
+              "hostPort": "*",
+              "protocol": "Protocol",
+              "name": "*",
+              "appProtocol": "*"
+            }
+          ],
+          "addToTaskRolePolicy": [
+            "*"
+          ],
+          "addToExecutionRolePolicy": [
+            "*"
+          ],
+          "addContainer": [
+            "*",
+            {
+              "image": "*",
+              "containerName": "*",
+              "command": "*",
+              "credentialSpecs": "*",
+              "cpu": "*",
+              "disableNetworking": "boolean",
+              "dnsSearchDomains": "*",
+              "dnsServers": "*",
+              "dockerLabels": "*",
+              "dockerSecurityOptions": "*",
+              "entryPoint": "*",
+              "environment": "*",
+              "environmentFiles": "*",
+              "secrets": "*",
+              "startTimeout": "*",
+              "essential": "boolean",
+              "extraHosts": "*",
+              "healthCheck": {
+                "command": "*",
+                "retries": "*"
+              },
+              "hostname": "*",
+              "interactive": "boolean",
+              "memoryLimitMiB": "*",
+              "memoryReservationMiB": "*",
+              "privileged": "boolean",
+              "readonlyRootFilesystem": "boolean",
+              "user": "*",
+              "versionConsistency": "VersionConsistency",
+              "workingDirectory": "*",
+              "logging": "*",
+              "linuxParameters": "*",
+              "gpuCount": "*",
+              "portMappings": {
+                "containerPort": "*",
+                "containerPortRange": "*",
+                "hostPort": "*",
+                "protocol": "Protocol",
+                "name": "*",
+                "appProtocol": "*"
+              },
+              "inferenceAcceleratorResources": "*",
+              "systemControls": {
+                "namespace": "*",
+                "value": "*"
+              },
+              "pseudoTerminal": "boolean",
+              "ulimits": {
+                "name": "UlimitName",
+                "softLimit": "*",
+                "hardLimit": "*"
+              },
+              "enableRestartPolicy": "boolean",
+              "restartIgnoredExitCodes": "*"
+            }
+          ],
+          "addFirelensLogRouter": [
+            "*",
+            {
+              "firelensConfig": {
+                "type": "FirelensLogRouterType",
+                "options": {
+                  "enableECSLogMetadata": "boolean",
+                  "configFileType": "FirelensConfigFileType",
+                  "configFileValue": "*"
+                }
+              },
+              "image": "*",
+              "containerName": "*",
+              "command": "*",
+              "credentialSpecs": "*",
+              "cpu": "*",
+              "disableNetworking": "boolean",
+              "dnsSearchDomains": "*",
+              "dnsServers": "*",
+              "dockerLabels": "*",
+              "dockerSecurityOptions": "*",
+              "entryPoint": "*",
+              "environment": "*",
+              "environmentFiles": "*",
+              "secrets": "*",
+              "startTimeout": "*",
+              "essential": "boolean",
+              "extraHosts": "*",
+              "healthCheck": {
+                "command": "*",
+                "retries": "*"
+              },
+              "hostname": "*",
+              "interactive": "boolean",
+              "memoryLimitMiB": "*",
+              "memoryReservationMiB": "*",
+              "privileged": "boolean",
+              "readonlyRootFilesystem": "boolean",
+              "user": "*",
+              "versionConsistency": "VersionConsistency",
+              "workingDirectory": "*",
+              "logging": "*",
+              "linuxParameters": "*",
+              "gpuCount": "*",
+              "portMappings": {
+                "containerPort": "*",
+                "containerPortRange": "*",
+                "hostPort": "*",
+                "protocol": "Protocol",
+                "name": "*",
+                "appProtocol": "*"
+              },
+              "inferenceAcceleratorResources": "*",
+              "systemControls": {
+                "namespace": "*",
+                "value": "*"
+              },
+              "pseudoTerminal": "boolean",
+              "ulimits": {
+                "name": "UlimitName",
+                "softLimit": "*",
+                "hardLimit": "*"
+              },
+              "enableRestartPolicy": "boolean",
+              "restartIgnoredExitCodes": "*"
+            }
+          ],
+          "_linkContainer": [
+            "*"
+          ],
+          "addVolume": [
+            {
+              "host": {
+                "sourcePath": "*"
+              },
+              "name": "*",
+              "configuredAtLaunch": "boolean",
+              "dockerVolumeConfiguration": {
+                "autoprovision": "boolean",
+                "driver": "*",
+                "driverOpts": "*",
+                "labels": "*",
+                "scope": "Scope"
+              },
+              "efsVolumeConfiguration": {
+                "fileSystemId": "*",
+                "rootDirectory": "*",
+                "transitEncryption": "*",
+                "transitEncryptionPort": "*",
+                "authorizationConfig": {
+                  "accessPointId": "*",
+                  "iam": "*"
+                }
+              }
+            }
+          ],
+          "addPlacementConstraint": [
+            "*"
+          ],
+          "addExtension": [
+            "*"
+          ],
+          "addInferenceAccelerator": [
+            {
+              "deviceName": "*",
+              "deviceType": "*"
+            }
+          ],
+          "grantRun": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "obtainExecutionRole": [],
+          "findPortMappingByName": [
+            "*"
+          ],
+          "findContainer": [
+            "*"
+          ]
+        },
+        "Ec2Service": {
+          "taskDefinition": "*",
+          "assignPublicIp": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "placementConstraints": "*",
+          "placementStrategies": "*",
+          "daemon": "boolean",
+          "availabilityZoneRebalancing": "AvailabilityZoneRebalancing",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "addPlacementStrategies": [
+            "*"
+          ],
+          "addPlacementConstraints": [
+            "*"
+          ],
+          "attachToClassicLB": [
+            "*"
+          ]
+        },
+        "Ec2TaskDefinition": {
+          "networkMode": "NetworkMode",
+          "placementConstraints": "*",
+          "ipcMode": "IpcMode",
+          "pidMode": "PidMode",
+          "inferenceAccelerators": {
+            "deviceName": "*",
+            "deviceType": "*"
+          },
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean"
+        },
+        "ExternalService": {
+          "taskDefinition": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "daemon": "boolean",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "attachToApplicationTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            }
+          ],
+          "loadBalancerTarget": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "alternateTarget": "*"
+            }
+          ],
+          "registerLoadBalancerTargets": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "newTargetGroupId": "*",
+              "listener": "*"
+            }
+          ],
+          "autoScaleTaskCount": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "enableCloudMap": [
+            {
+              "name": "*",
+              "cloudMapNamespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "failureThreshold": "*",
+              "container": "*",
+              "containerPort": "*"
+            }
+          ],
+          "associateCloudMapService": [
+            {
+              "service": {
+                "serviceName": "*",
+                "namespace": {
+                  "namespaceName": "*",
+                  "namespaceId": "*",
+                  "namespaceArn": "*",
+                  "type": "NamespaceType",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "serviceId": "*",
+                "serviceArn": "*",
+                "dnsRecordType": "DnsRecordType",
+                "routingPolicy": "RoutingPolicy",
+                "discoveryType": "DiscoveryType"
+              },
+              "container": "*",
+              "containerPort": "*"
+            }
+          ]
+        },
+        "ExternalTaskDefinition": {
+          "networkMode": "NetworkMode",
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean",
+          "addInferenceAccelerator": [
+            {
+              "deviceName": "*",
+              "deviceType": "*"
+            }
+          ]
+        },
+        "FargateService": {
+          "taskDefinition": "*",
+          "assignPublicIp": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "platformVersion": "FargatePlatformVersion",
+          "availabilityZoneRebalancing": "AvailabilityZoneRebalancing",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "attachToClassicLB": [
+            "*"
+          ]
+        },
+        "FargateTaskDefinition": {
+          "cpu": "*",
+          "memoryLimitMiB": "*",
+          "ephemeralStorageGiB": "*",
+          "runtimePlatform": {
+            "cpuArchitecture": "*",
+            "operatingSystemFamily": "*"
+          },
+          "pidMode": "PidMode",
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean"
+        }
+      },
+      "aws-elasticloadbalancingv2.lib": {
+        "ApplicationListener": {
+          "loadBalancer": {
+            "loadBalancerArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "ipAddressType": "IpAddressType",
+            "listeners": "*",
+            "metrics": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "connections": "*",
+            "isApplicationLoadBalancer": "boolean"
+          },
+          "protocol": "ApplicationProtocol",
+          "port": "*",
+          "certificateArns": "*",
+          "certificates": {
+            "certificateArn": "*"
+          },
+          "sslPolicy": "SslPolicy",
+          "defaultTargetGroups": {
+            "metrics": "*",
+            "targetGroupName": "*",
+            "targetGroupArn": "*",
+            "loadBalancerArns": "*",
+            "loadBalancerAttached": "*",
+            "node": "*"
+          },
+          "defaultAction": "*",
+          "open": "boolean",
+          "mutualAuthentication": {
+            "mutualAuthenticationMode": "MutualAuthenticationMode",
+            "trustStore": "*",
+            "ignoreClientCertificateExpiry": "boolean",
+            "advertiseTrustStoreCaNames": "boolean"
+          },
+          "addCertificateArns": [
+            "*",
+            "*"
+          ],
+          "addCertificates": [
+            "*",
+            {
+              "certificateArn": "*"
+            }
+          ],
+          "addAction": [
+            "*",
+            {
+              "action": "*",
+              "removeSuffix": "boolean",
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addTargetGroups": [
+            "*",
+            {
+              "targetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addTargets": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "protocolVersion": "ApplicationProtocolVersion",
+              "port": "*",
+              "slowStart": "*",
+              "stickinessCookieName": "*",
+              "targets": "*",
+              "targetGroupName": "*",
+              "healthCheck": {
+                "enabled": "boolean",
+                "path": "*",
+                "port": "*",
+                "protocol": "Protocol",
+                "healthyThresholdCount": "*",
+                "unhealthyThresholdCount": "*",
+                "healthyGrpcCodes": "*",
+                "healthyHttpCodes": "*"
+              },
+              "loadBalancingAlgorithmType": "TargetGroupLoadBalancingAlgorithmType",
+              "enableAnomalyMitigation": "boolean",
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addFixedResponse": [
+            "*",
+            {
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*",
+              "statusCode": "*",
+              "contentType": "ContentType",
+              "messageBody": "*"
+            }
+          ],
+          "addRedirectResponse": [
+            "*",
+            {
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*",
+              "host": "*",
+              "path": "*",
+              "port": "*",
+              "protocol": "*",
+              "query": "*",
+              "statusCode": "*"
+            }
+          ],
+          "registerConnectable": [
+            {
+              "connections": "*"
+            },
+            "*"
+          ]
+        },
+        "ImportedApplicationListener": {
+          "listenerArn": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "defaultPort": "*",
+          "securityGroupAllowsAllOutbound": "boolean"
+        },
+        "LookedUpApplicationListener": {
+          "listenerArn": "*",
+          "listenerPort": "*",
+          "securityGroupIds": "*"
+        },
+        "ApplicationLoadBalancer": {
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ipAddressType": "IpAddressType",
+          "http2Enabled": "boolean",
+          "idleTimeout": "*",
+          "dropInvalidHeaderFields": "boolean",
+          "desyncMitigationMode": "DesyncMitigationMode",
+          "clientKeepAlive": "*",
+          "preserveHostHeader": "boolean",
+          "xAmznTlsVersionAndCipherSuiteHeaders": "boolean",
+          "preserveXffClientPort": "boolean",
+          "xffHeaderProcessingMode": "XffHeaderProcessingMode",
+          "wafFailOpen": "boolean",
+          "loadBalancerName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "deletionProtection": "boolean",
+          "crossZoneEnabled": "boolean",
+          "denyAllIgwTraffic": "boolean",
+          "minimumCapacityUnit": "*",
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ],
+          "addRedirect": [
+            {
+              "sourceProtocol": "ApplicationProtocol",
+              "sourcePort": "*",
+              "targetProtocol": "ApplicationProtocol",
+              "targetPort": "*",
+              "open": "boolean"
+            }
+          ],
+          "logAccessLogs": [
+            {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "*"
+          ],
+          "logConnectionLogs": [
+            {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "*"
+          ],
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricActiveConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricClientTlsNegotiationErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricConsumedLCUs": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpFixedResponseCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpRedirectCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpRedirectUrlLimitExceededCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpCodeElb": [
+            "HttpCodeElb",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpCodeTarget": [
+            "HttpCodeTarget",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIpv6ProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIpv6RequestCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricNewConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRejectedConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRequestCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRuleEvaluations": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetConnectionErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetResponseTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetTLSNegotiationErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthError": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthFailure": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthLatency": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthSuccess": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ImportedApplicationLoadBalancer": {
+          "loadBalancerArn": "*",
+          "securityGroupId": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "securityGroupAllowsAllOutbound": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ]
+        },
+        "LookedUpApplicationLoadBalancer": {
+          "loadBalancerArn": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "ipAddressType": "LoadBalancerIpAddressType",
+          "securityGroupIds": "*",
+          "vpcId": "*",
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ]
+        },
+        "TrustStoreRevocation": {
+          "trustStore": "*",
+          "revocationContents": {
+            "revocationType": "RevocationType",
+            "bucket": "*",
+            "key": "*",
+            "version": "*"
+          }
+        },
+        "TrustStore": {
+          "trustStoreName": "*",
+          "bucket": "*",
+          "key": "*",
+          "version": "*"
+        },
+        "NetworkListener": {
+          "loadBalancer": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "metrics": "*",
+            "securityGroups": "*",
+            "ipAddressType": "IpAddressType",
+            "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "loadBalancerArn": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "defaultTargetGroups": {
+            "metrics": "*",
+            "targetGroupName": "*",
+            "targetGroupArn": "*",
+            "loadBalancerArns": "*",
+            "loadBalancerAttached": "*",
+            "node": "*",
+            "isNetworkTargetGroup": "boolean"
+          },
+          "defaultAction": "*",
+          "protocol": "Protocol",
+          "certificates": {
+            "certificateArn": "*"
+          },
+          "sslPolicy": "SslPolicy",
+          "alpnPolicy": "AlpnPolicy",
+          "tcpIdleTimeout": "*",
+          "addCertificates": [
+            "*",
+            {
+              "certificateArn": "*"
+            }
+          ],
+          "addTargetGroups": [
+            "*",
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*",
+              "isNetworkTargetGroup": "boolean"
+            }
+          ],
+          "addAction": [
+            "*",
+            {
+              "action": "*"
+            }
+          ],
+          "addTargets": [
+            "*",
+            {
+              "port": "*",
+              "protocol": "Protocol",
+              "targets": "*",
+              "targetGroupName": "*",
+              "deregistrationDelay": "*",
+              "proxyProtocolV2": "boolean",
+              "preserveClientIp": "boolean",
+              "healthCheck": {
+                "enabled": "boolean",
+                "path": "*",
+                "port": "*",
+                "protocol": "Protocol",
+                "healthyThresholdCount": "*",
+                "unhealthyThresholdCount": "*",
+                "healthyGrpcCodes": "*",
+                "healthyHttpCodes": "*"
+              }
+            }
+          ]
+        },
+        "NetworkLoadBalancer": {
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ipAddressType": "IpAddressType",
+          "clientRoutingPolicy": "ClientRoutingPolicy",
+          "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "boolean",
+          "zonalShift": "boolean",
+          "enablePrefixForIpv6SourceNat": "boolean",
+          "subnetMappings": {
+            "subnet": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "allocationId": "*",
+            "ipv6Address": "*",
+            "privateIpv4Address": "*",
+            "sourceNatIpv6Prefix": "*"
+          },
+          "disableSecurityGroups": "boolean",
+          "loadBalancerName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "deletionProtection": "boolean",
+          "crossZoneEnabled": "boolean",
+          "denyAllIgwTraffic": "boolean",
+          "minimumCapacityUnit": "*",
+          "addListener": [
+            "*",
+            {
+              "port": "*",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*",
+                "isNetworkTargetGroup": "boolean"
+              },
+              "defaultAction": "*",
+              "protocol": "Protocol",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "alpnPolicy": "AlpnPolicy",
+              "tcpIdleTimeout": "*"
+            }
+          ],
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricActiveFlowCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricConsumedLCUs": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHealthyHostCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricUnHealthyHostCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricNewFlowCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpClientResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpElbResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpTargetResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "LookedUpNetworkLoadBalancer": {
+          "loadBalancerArn": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "ipAddressType": "LoadBalancerIpAddressType",
+          "securityGroupIds": "*",
+          "vpcId": "*",
+          "addListener": [
+            "*",
+            {
+              "port": "*",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*",
+                "isNetworkTargetGroup": "boolean"
+              },
+              "defaultAction": "*",
+              "protocol": "Protocol",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "alpnPolicy": "AlpnPolicy",
+              "tcpIdleTimeout": "*"
+            }
+          ]
+        }
+      },
+      "aws-glue.lib": {
+        "PySparkEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkStreamingJob": {
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PythonShellJob": {
+          "pythonVersion": "PythonVersion",
+          "maxCapacity": "MaxCapacity",
+          "librarySet": "LibrarySet",
+          "extraPythonFiles": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkEtlJob": {
+          "className": "*",
+          "notifyDelayAfter": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkStreamingJob": {
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "Workflow": {}
+      },
+      "aws-iam.lib": {
+        "ImmutableRole": {
+          "roleArn": "*",
+          "roleName": "*",
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "assumeRoleAction": "*",
+          "policyFragment": "*",
+          "principalAccount": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "grantPrincipal": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "stack": "*",
+          "applyRemovalPolicy": "*",
+          "node": "*",
+          "with": "*",
+          "env": {
+            "account": "*",
+            "region": "*"
+          }
+        },
+        "ImportedRole": {
+          "roleArn": "*",
+          "roleName": "*",
+          "account": "*",
+          "mutable": "boolean",
+          "addGrantsToResources": "boolean",
+          "defaultPolicyName": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "dedupeString": []
+        },
+        "PrecreatedRole": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "assumeRolePolicy": "*",
+          "missing": "boolean",
+          "rolePath": "*",
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ]
+        }
+      },
+      "pipelines.lib": {
+        "AssetSingletonRole": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addAssumeRole": [
+            "*"
+          ]
+        }
+      },
+      "lib.gateway": {
+        "GatewayTarget": {
+          "gateway": {
+            "gatewayArn": "*",
+            "gatewayId": "*",
+            "gatewayName": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "description": "*",
+            "protocolConfiguration": {
+              "protocolType": "*"
+            },
+            "authorizerConfiguration": {
+              "authorizerType": "GatewayAuthorizerType"
+            },
+            "exceptionLevel": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "gatewayUrl": "*",
+            "status": "*",
+            "statusReason": "*",
+            "createdAt": "*",
+            "updatedAt": "*"
+          },
+          "targetConfiguration": {
+            "targetType": "McpTargetType"
+          },
+          "credentialProviderConfigurations": {
+            "credentialProviderType": "CredentialProviderType"
+          },
+          "gatewayTargetName": "*",
+          "description": "*",
+          "grantSync": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "lib.services": {
+        "ResourcePolicy": {}
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts
+var AWS_CDK_ENUMS;
+var init_enums = __esm({
+  "../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts"() {
+    "use strict";
+    AWS_CDK_ENUMS = {
+      "AcceleratorManufacturer": [
+        "amazon-web-services",
+        "amd",
+        "nvidia",
+        "xilinx",
+        "habana"
+      ],
+      "AcceleratorName": [
+        "a100",
+        "k80",
+        "m60",
+        "radeon-pro-v520",
+        "t4",
+        "v100",
+        "vu9p",
+        "a10g",
+        "h100",
+        "inferentia",
+        "k520",
+        "t4g",
+        "l40s",
+        "l4",
+        "gaudi-hl-205",
+        "inferentia2",
+        "trainium",
+        "trainium2",
+        "u30"
+      ],
+      "AcceleratorType": [
+        "gpu",
+        "fpga",
+        "inference",
+        "media"
+      ],
+      "AccessEntryType": [
+        "STANDARD",
+        "FARGATE_LINUX",
+        "EC2_LINUX",
+        "EC2_WINDOWS",
+        "EC2",
+        "HYBRID_LINUX",
+        "HYPERPOD_LINUX"
+      ],
+      "AccessKeyStatus": [
+        "Active",
+        "Inactive",
+        "Expired"
+      ],
+      "AccessLevel": [
+        "READ",
+        "READ_VERSIONED",
+        "LIST",
+        "WRITE",
+        "DELETE"
+      ],
+      "AccessScopeType": [
+        "namespace",
+        "cluster"
+      ],
+      "AccountRecovery": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5
+      ],
+      "Action": [
+        "allow",
+        "deny"
+      ],
+      "ActionAfterCompletion": [
+        "NONE",
+        "DELETE"
+      ],
+      "ActionCategory": [
+        "Source",
+        "Build",
+        "Test",
+        "Approval",
+        "Deploy",
+        "Invoke",
+        "Compute"
+      ],
+      "ActionOnFailure": [
+        "TERMINATE_CLUSTER",
+        "CANCEL_AND_WAIT",
+        "CONTINUE"
+      ],
+      "ActionPoint": [
+        "PRE_CREATE_HOSTED_CONFIGURATION_VERSION",
+        "PRE_START_DEPLOYMENT",
+        "ON_DEPLOYMENT_START",
+        "ON_DEPLOYMENT_STEP",
+        "ON_DEPLOYMENT_BAKING",
+        "ON_DEPLOYMENT_COMPLETE",
+        "ON_DEPLOYMENT_ROLLED_BACK",
+        "AT_DEPLOYMENT_TICK"
+      ],
+      "ActionScope": [
+        "all",
+        "specific"
+      ],
+      "AdMarkerDash": [
+        "BINARY",
+        "XML"
+      ],
+      "AdMarkerHls": [
+        "DATERANGE",
+        "SCTE35_ENHANCED"
+      ],
+      "AdditionalHealthCheckType": [
+        "ELB",
+        "EBS",
+        "VPC_LATTICE"
+      ],
+      "AddressFamily": [
+        "IPv4",
+        "IPv6"
+      ],
+      "AdjustmentType": [
+        "ChangeInCapacity",
+        "PercentChangeInCapacity",
+        "ExactCapacity"
+      ],
+      "AdotLambdaExecWrapper": [
+        "/opt/otel-handler",
+        "/opt/otel-proxy-handler",
+        "/opt/otel-stream-handler",
+        "/opt/otel-instrument",
+        "/opt/otel-sqs-handler"
+      ],
+      "AdotLambdaLayerType": [
+        "JAVA_SDK",
+        "JAVA_AUTO_INSTRUMENTATION",
+        "JAVASCRIPT_SDK",
+        "PYTHON_SDK",
+        "GENERIC"
+      ],
+      "AdvancedSecurityMode": [
+        "ENFORCED",
+        "AUDIT",
+        "OFF"
+      ],
+      "AgentCollaboratorType": [
+        "SUPERVISOR",
+        "DISABLED",
+        "SUPERVISOR_ROUTER"
+      ],
+      "AgentCoreRuntime": [
+        "PYTHON_3_10",
+        "PYTHON_3_11",
+        "PYTHON_3_12",
+        "PYTHON_3_13",
+        "PYTHON_3_14",
+        "NODE_22"
+      ],
+      "AgentStepType": [
+        "PRE_PROCESSING",
+        "ORCHESTRATION",
+        "POST_PROCESSING",
+        "ROUTING_CLASSIFIER",
+        "MEMORY_SUMMARIZATION",
+        "KNOWLEDGE_BASE_RESPONSE_GENERATION"
+      ],
+      "AlarmBehavior": [
+        "ROLLBACK_ON_ALARM",
+        "FAIL_ON_ALARM"
+      ],
+      "AlarmState": [
+        "ALARM",
+        "OK",
+        "INSUFFICIENT_DATA"
+      ],
+      "AlarmStatusWidgetSortBy": [
+        "default",
+        "stateUpdatedTimestamp",
+        "timestamp"
+      ],
+      "AlbScheme": [
+        "internal",
+        "internet-facing"
+      ],
+      "AllocationStrategy": [
+        "BEST_FIT",
+        "BEST_FIT_PROGRESSIVE",
+        "SPOT_CAPACITY_OPTIMIZED",
+        "SPOT_PRICE_CAPACITY_OPTIMIZED"
+      ],
+      "AllowMapsAction": [
+        "geo-maps:GetStaticMap",
+        "geo-maps:GetTile",
+        "geo-maps:*"
+      ],
+      "AllowPlacesAction": [
+        "geo-places:Autocomplete",
+        "geo-places:Geocode",
+        "geo-places:GetPlace",
+        "geo-places:ReverseGeocode",
+        "geo-places:SearchNearby",
+        "geo-places:SearchText",
+        "geo-places:Suggest",
+        "geo-places:*"
+      ],
+      "AllowRoutesAction": [
+        "geo-routes:CalculateIsolines",
+        "geo-routes:CalculateRoutes",
+        "geo-routes:CalculateRouteMatrix",
+        "geo-routes:OptimizeWaypoints",
+        "geo-routes:SnapToRoads",
+        "geo-routes:*"
+      ],
+      "AlpnPolicy": [
+        "HTTP1Only",
+        "HTTP2Only",
+        "HTTP2Optional",
+        "HTTP2Preferred",
+        "None"
+      ],
+      "AmazonLinuxCpuType": [
+        "arm64",
+        "x86_64"
+      ],
+      "AmazonLinuxEdition": [
+        "standard",
+        "minimal"
+      ],
+      "AmazonLinuxGeneration": [
+        "amzn",
+        "amzn2",
+        "al2022",
+        "al2023"
+      ],
+      "AmazonLinuxKernel": [
+        "kernel-5.10",
+        "kernel-6.1"
+      ],
+      "AmazonLinuxStorage": [
+        "ebs",
+        "s3",
+        "gp2"
+      ],
+      "AmazonLinuxVirt": [
+        "hvm",
+        "pv"
+      ],
+      "AmiHardwareType": [
+        "Standard",
+        "GPU",
+        "ARM64",
+        "Neuron"
+      ],
+      "ApiGatewayHttpMethod": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD",
+        "OPTIONS"
+      ],
+      "ApiKeyCredentialLocationType": [
+        "HEADER",
+        "QUERY_PARAMETER"
+      ],
+      "ApiKeySourceType": [
+        "HEADER",
+        "AUTHORIZER"
+      ],
+      "AppSyncAuthorizationType": [
+        "API_KEY",
+        "AWS_IAM",
+        "AMAZON_COGNITO_USER_POOLS",
+        "OPENID_CONNECT",
+        "AWS_LAMBDA"
+      ],
+      "AppSyncDataSourceType": [
+        "AWS_LAMBDA",
+        "AMAZON_DYNAMODB",
+        "AMAZON_EVENTBRIDGE",
+        "AMAZON_OPENSEARCH_SERVICE",
+        "HTTP",
+        "RELATIONAL_DATABASE",
+        "AMAZON_BEDROCK_RUNTIME",
+        "AMAZON_ELASTICSEARCH"
+      ],
+      "AppSyncFieldLogLevel": [
+        "NONE",
+        "ERROR",
+        "INFO",
+        "DEBUG",
+        "ALL"
+      ],
+      "ApplicationLoadBalancedServiceRecordType": [
+        0,
+        1,
+        2
+      ],
+      "ApplicationLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN",
+        "TRACE",
+        "ERROR",
+        "FATAL"
+      ],
+      "ApplicationProtocol": [
+        "HTTP",
+        "HTTPS"
+      ],
+      "ApplicationProtocolVersion": [
+        "GRPC",
+        "HTTP1",
+        "HTTP2"
+      ],
+      "ApproximateCreationDateTimePrecision": [
+        "MILLISECOND",
+        "MICROSECOND"
+      ],
+      "ArnFormat": [
+        "arn:aws:service:region:account:resource",
+        "arn:aws:service:region:account:resource:resourceName",
+        "arn:aws:service:region:account:resource/resourceName",
+        "arn:aws:service:region:account:/resource/resourceName"
+      ],
+      "ArtifactsEncryptionMode": [
+        "SSE_S3",
+        "SSE_KMS"
+      ],
+      "AssembleWith": [
+        "None",
+        "Line"
+      ],
+      "AssertionType": [
+        "equals",
+        "objectLike",
+        "arrayWith"
+      ],
+      "AssetHashType": [
+        "source",
+        "bundle",
+        "output",
+        "custom"
+      ],
+      "AssetType": [
+        "file",
+        "docker-image"
+      ],
+      "AttachmentTargetType": [
+        "AWS::RDS::DBInstance",
+        "deprecated_AWS::RDS::DBInstance",
+        "AWS::RDS::DBCluster",
+        "deprecated_AWS::RDS::DBCluster",
+        "AWS::RDS::DBProxy",
+        "AWS::Redshift::Cluster",
+        "AWS::DocDB::DBInstance",
+        "AWS::DocDB::DBCluster"
+      ],
+      "AttributeType": [
+        "B",
+        "N",
+        "S"
+      ],
+      "AudioCodec": [
+        "AACL",
+        "AACH",
+        "AC-3",
+        "EC-3"
+      ],
+      "AudioCodecType": [
+        "AAC",
+        "AC3",
+        "EAC3",
+        "EAC3_ATMOS",
+        "MP2",
+        "WAV",
+        "PASSTHROUGH"
+      ],
+      "AuditCheck": [
+        "AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK",
+        "CA_CERTIFICATE_EXPIRING_CHECK",
+        "CA_CERTIFICATE_KEY_QUALITY_CHECK",
+        "CONFLICTING_CLIENT_IDS_CHECK",
+        "DEVICE_CERTIFICATE_EXPIRING_CHECK",
+        "DEVICE_CERTIFICATE_KEY_QUALITY_CHECK",
+        "DEVICE_CERTIFICATE_SHARED_CHECK",
+        "IOT_POLICY_OVERLY_PERMISSIVE_CHECK",
+        "IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK",
+        "IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK",
+        "LOGGING_DISABLED_CHECK",
+        "REVOKED_CA_CERTIFICATE_STILL_ACTIVE_CHECK",
+        "REVOKED_DEVICE_CERTIFICATE_STILL_ACTIVE_CHECK",
+        "UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK"
+      ],
+      "AuroraCapacityUnit": [
+        1,
+        2,
+        4,
+        8,
+        16,
+        32,
+        64,
+        128,
+        192,
+        256,
+        384
+      ],
+      "AuthType": [
+        "NO_AUTH",
+        "IAM_ROLE",
+        "RESOURCE_POLICY"
+      ],
+      "AuthenticationMethod": [
+        "SASL_SCRAM_512_AUTH",
+        "SASL_SCRAM_256_AUTH",
+        "BASIC_AUTH",
+        "CLIENT_CERTIFICATE_TLS_AUTH"
+      ],
+      "AuthenticationMode": [
+        "CONFIG_MAP",
+        "API_AND_CONFIG_MAP",
+        "API"
+      ],
+      "AuthorizationType": [
+        "API_KEY",
+        "BASIC",
+        "OAUTH_CLIENT_CREDENTIALS"
+      ],
+      "AuthorizerPayloadVersion": [
+        "1.0",
+        "2.0"
+      ],
+      "AutoRollbackEvent": [
+        "DEPLOYMENT_FAILURE",
+        "DEPLOYMENT_STOP_ON_ALARM",
+        "DEPLOYMENT_STOP_ON_REQUEST"
+      ],
+      "AutoValidationThreshold": [
+        "MEDIUM",
+        "HIGH",
+        "MANAGED"
+      ],
+      "AvailabilityZoneRebalancing": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "AwsLogDriverMode": [
+        "blocking",
+        "non-blocking"
+      ],
+      "AwsServiceName": [
+        "ec2"
+      ],
+      "BackoffFunction": [
+        "ARITHMETIC",
+        "EXPONENTIAL",
+        "GEOMETRIC",
+        "LINEAR"
+      ],
+      "BackupMode": [
+        0,
+        1
+      ],
+      "BackupVaultEvents": [
+        "BACKUP_JOB_STARTED",
+        "BACKUP_JOB_COMPLETED",
+        "BACKUP_JOB_SUCCESSFUL",
+        "BACKUP_JOB_FAILED",
+        "BACKUP_JOB_EXPIRED",
+        "RESTORE_JOB_STARTED",
+        "RESTORE_JOB_COMPLETED",
+        "RESTORE_JOB_SUCCESSFUL",
+        "RESTORE_JOB_FAILED",
+        "COPY_JOB_STARTED",
+        "COPY_JOB_SUCCESSFUL",
+        "COPY_JOB_FAILED",
+        "RECOVERY_POINT_MODIFIED",
+        "BACKUP_PLAN_CREATED",
+        "BACKUP_PLAN_MODIFIED",
+        "S3_BACKUP_OBJECT_FAILED",
+        "S3_RESTORE_OBJECT_FAILED"
+      ],
+      "BalancingStrategy": [
+        "SPOT_ONLY",
+        "SPOT_PREFERRED",
+        "ON_DEMAND_ONLY"
+      ],
+      "BareMetal": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "BatchStrategy": [
+        "MultiRecord",
+        "SingleRecord"
+      ],
+      "BillingMode": [
+        "PAY_PER_REQUEST",
+        "PROVISIONED"
+      ],
+      "BinPackResource": [
+        "CPU",
+        "MEMORY"
+      ],
+      "BitrateFilterKey": [
+        "audio_bitrate",
+        "video_bitrate"
+      ],
+      "BottlerocketEcsVariant": [
+        "aws-ecs-1",
+        "aws-ecs-1-nvidia",
+        "aws-ecs-2",
+        "aws-ecs-2-nvidia"
+      ],
+      "BrokerType": [
+        "STANDARD",
+        "EXPRESS"
+      ],
+      "BrowserSigning": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "BrowserType": [
+        "CHROME",
+        "FIREFOX"
+      ],
+      "BucketAccessControl": [
+        "Private",
+        "PublicRead",
+        "PublicReadWrite",
+        "AuthenticatedRead",
+        "LogDeliveryWrite",
+        "BucketOwnerRead",
+        "BucketOwnerFullControl",
+        "AwsExecRead"
+      ],
+      "BucketEncryption": [
+        "UNENCRYPTED",
+        "KMS_MANAGED",
+        "S3_MANAGED",
+        "KMS",
+        "DSSE_MANAGED",
+        "DSSE"
+      ],
+      "BucketNamespace": [
+        "global",
+        "account-regional"
+      ],
+      "BucketNotificationDestinationType": [
+        0,
+        1,
+        2
+      ],
+      "BuildComputeType": [
+        "STANDARD_8GB",
+        "LARGE_16GB",
+        "XLARGE_72GB"
+      ],
+      "BuildEnvironmentVariableType": [
+        "PLAINTEXT",
+        "PARAMETER_STORE",
+        "SECRETS_MANAGER"
+      ],
+      "BundlingFileAccess": [
+        "VOLUME_COPY",
+        "BIND_MOUNT"
+      ],
+      "BundlingOutput": [
+        "archived",
+        "not-archived",
+        "auto-discover",
+        "single-file"
+      ],
+      "BurstablePerformance": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "CaaTag": [
+        "issue",
+        "issuewild",
+        "iodef"
+      ],
+      "CacheConfigType": [
+        "AMPLIFY_MANAGED",
+        "AMPLIFY_MANAGED_NO_COOKIES"
+      ],
+      "Capability": [
+        "ALL",
+        "AUDIT_CONTROL",
+        "AUDIT_WRITE",
+        "BLOCK_SUSPEND",
+        "CHOWN",
+        "DAC_OVERRIDE",
+        "DAC_READ_SEARCH",
+        "FOWNER",
+        "FSETID",
+        "IPC_LOCK",
+        "IPC_OWNER",
+        "KILL",
+        "LEASE",
+        "LINUX_IMMUTABLE",
+        "MAC_ADMIN",
+        "MAC_OVERRIDE",
+        "MKNOD",
+        "NET_ADMIN",
+        "NET_BIND_SERVICE",
+        "NET_BROADCAST",
+        "NET_RAW",
+        "SETFCAP",
+        "SETGID",
+        "SETPCAP",
+        "SETUID",
+        "SYS_ADMIN",
+        "SYS_BOOT",
+        "SYS_CHROOT",
+        "SYS_MODULE",
+        "SYS_NICE",
+        "SYS_PACCT",
+        "SYS_PTRACE",
+        "SYS_RAWIO",
+        "SYS_RESOURCE",
+        "SYS_TIME",
+        "SYS_TTY_CONFIG",
+        "SYSLOG",
+        "WAKE_ALARM"
+      ],
+      "CapacityDistributionStrategy": [
+        "balanced-only",
+        "balanced-best-effort"
+      ],
+      "CapacityMode": [
+        "FIXED",
+        "AUTOSCALED"
+      ],
+      "CapacityOptionType": [
+        "ON_DEMAND",
+        "SPOT"
+      ],
+      "CapacityType": [
+        "SPOT",
+        "ON_DEMAND",
+        "CAPACITY_BLOCK"
+      ],
+      "CatalogEncryptionMode": [
+        "DISABLED",
+        "SSE-KMS",
+        "SSE-KMS-WITH-SERVICE-ROLE"
+      ],
+      "CfnCapabilities": [
+        "",
+        "CAPABILITY_IAM",
+        "CAPABILITY_NAMED_IAM",
+        "CAPABILITY_AUTO_EXPAND"
+      ],
+      "CfnDeletionPolicy": [
+        "Delete",
+        "Retain",
+        "RetainExceptOnCreate",
+        "Snapshot"
+      ],
+      "CfnDynamicReferenceService": [
+        "ssm",
+        "ssm-secure",
+        "secretsmanager"
+      ],
+      "CfnParsingContext": [
+        0,
+        1
+      ],
+      "CfnTrafficRoutingType": [
+        "AllAtOnce",
+        "TimeBasedCanary",
+        "TimeBasedLinear"
+      ],
+      "CfnUtilsResourceType": [
+        "Custom::AWSCDKCfnJson",
+        "Custom::AWSCDKCfnJsonStringify"
+      ],
+      "ChannelType": [
+        "STANDARD",
+        "BASIC",
+        "ADVANCED_SD",
+        "ADVANCED_HD"
+      ],
+      "Charset": [
+        "ascii",
+        "utf8"
+      ],
+      "ChatMessageRole": [
+        "user",
+        "assistant"
+      ],
+      "Cleanup": [
+        "nothing",
+        "lambda"
+      ],
+      "ClientAction": [
+        "elasticfilesystem:ClientMount",
+        "elasticfilesystem:ClientWrite",
+        "elasticfilesystem:ClientRootAccess"
+      ],
+      "ClientAffinity": [
+        "NONE",
+        "SOURCE_IP"
+      ],
+      "ClientBrokerEncryption": [
+        "TLS",
+        "TLS_PLAINTEXT",
+        "PLAINTEXT"
+      ],
+      "ClientPasswordAuthType": [
+        "MYSQL_NATIVE_PASSWORD",
+        "POSTGRES_SCRAM_SHA_256",
+        "POSTGRES_MD5",
+        "SQL_SERVER_AUTHENTICATION",
+        "MYSQL_CACHING_SHA2_PASSWORD"
+      ],
+      "ClientRoutingPolicy": [
+        "availability_zone_affinity",
+        "partial_availability_zone_affinity",
+        "any_availability_zone"
+      ],
+      "ClientVpnSessionTimeout": [
+        8,
+        10,
+        12,
+        24
+      ],
+      "CloudFormationCapabilities": [
+        "",
+        "CAPABILITY_IAM",
+        "CAPABILITY_NAMED_IAM",
+        "CAPABILITY_AUTO_EXPAND"
+      ],
+      "CloudFrontAllowedCachedMethods": [
+        "GH",
+        "GHO"
+      ],
+      "CloudFrontAllowedMethods": [
+        "GH",
+        "GHO",
+        "ALL"
+      ],
+      "CloudWatchDimensionSource": [
+        "emailHeader",
+        "linkTag",
+        "messageTag"
+      ],
+      "ClusterLoggingTypes": [
+        "api",
+        "audit",
+        "authenticator",
+        "controllerManager",
+        "scheduler"
+      ],
+      "ClusterMonitoringLevel": [
+        "DEFAULT",
+        "PER_BROKER",
+        "PER_TOPIC_PER_BROKER",
+        "PER_TOPIC_PER_PARTITION"
+      ],
+      "ClusterScailabilityType": [
+        "standard",
+        "limitless"
+      ],
+      "ClusterScalabilityType": [
+        "standard",
+        "limitless"
+      ],
+      "ClusterType": [
+        "single-node",
+        "multi-node"
+      ],
+      "CmafDrmSystem": [
+        "FAIRPLAY",
+        "PLAYREADY",
+        "WIDEVINE",
+        "IRDETO"
+      ],
+      "CmafEncryptionMethod": [
+        "CENC",
+        "CBCS"
+      ],
+      "CodeBuildActionType": [
+        0,
+        1
+      ],
+      "CodeBuildProjectType": [
+        "SYNTH",
+        "ASSETS",
+        "SELF_MUTATE",
+        "STEP"
+      ],
+      "CodeCommitTrigger": [
+        "None",
+        "Poll",
+        "Events"
+      ],
+      "ColumnCountMismatchHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW"
+      ],
+      "ColumnEncoding": [
+        "AUTO",
+        "RAW",
+        "AZ64",
+        "BYTEDICT",
+        "DELTA",
+        "DELTA32K",
+        "LZO",
+        "MOSTLY8",
+        "MOSTLY16",
+        "MOSTLY32",
+        "RUNLENGTH",
+        "TEXT255",
+        "TEXT32K",
+        "ZSTD"
+      ],
+      "ComparisonOperator": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6,
+        7,
+        8,
+        9,
+        10,
+        11,
+        12,
+        13,
+        14,
+        15,
+        16,
+        17,
+        18,
+        19,
+        20,
+        21,
+        22,
+        23,
+        24,
+        25,
+        26,
+        27,
+        28,
+        29,
+        30,
+        31,
+        32,
+        33,
+        34,
+        35,
+        36,
+        37,
+        38
+      ],
+      "Compatibility": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6,
+        7
+      ],
+      "ComponentAction": [
+        "AppendFile",
+        "Assert",
+        "CopyFile",
+        "CopyFolder",
+        "CreateFile",
+        "CreateFolder",
+        "CreateSymlink",
+        "DeleteFile",
+        "DeleteFolder",
+        "ExecuteBash",
+        "ExecuteBinary",
+        "ExecuteDocument",
+        "ExecutePowerShell",
+        "InstallMSI",
+        "ListFiles",
+        "MoveFile",
+        "MoveFolder",
+        "ReadFile",
+        "Reboot",
+        "SetFileEncoding",
+        "SetFileOwner",
+        "SetFolderOwner",
+        "SetFilePermissions",
+        "SetFolderPermissions",
+        "SetRegistry",
+        "S3Download",
+        "S3Upload",
+        "UninstallMSI",
+        "UpdateOS",
+        "WebDownload"
+      ],
+      "ComponentOnFailure": [
+        "Abort",
+        "Continue",
+        "Ignore"
+      ],
+      "ComponentParameterType": [
+        "string"
+      ],
+      "ComponentPhaseName": [
+        "build",
+        "container-host-test",
+        "test",
+        "validate"
+      ],
+      "ComponentSchemaVersion": [
+        "1.0"
+      ],
+      "ComponentType": [
+        "Function",
+        "SingletonFunction",
+        "CustomResourceProvider",
+        "NoOp"
+      ],
+      "CompoundOperator": [
+        0,
+        1
+      ],
+      "CompressionType": [
+        "None",
+        "Gzip"
+      ],
+      "ComputePlatform": [
+        "AWSLambda",
+        "Default"
+      ],
+      "ComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "BUILD_LAMBDA_1GB",
+        "BUILD_LAMBDA_2GB",
+        "BUILD_LAMBDA_4GB",
+        "BUILD_LAMBDA_8GB",
+        "BUILD_LAMBDA_10GB",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "ConditionLogicalOperator": [
+        "EQUALS"
+      ],
+      "ConfigurationSetTlsPolicy": [
+        "REQUIRE",
+        "OPTIONAL"
+      ],
+      "ConfigurationSourceType": [
+        "S3",
+        "SECRETS_MANAGER",
+        "SSM_PARAMETER",
+        "SSM_DOCUMENT",
+        "CODE_PIPELINE"
+      ],
+      "ConfigurationType": [
+        "AWS.Freeform",
+        "AWS.AppConfig.FeatureFlags"
+      ],
+      "ConnectionProtocol": [
+        "TCP",
+        "UDP"
+      ],
+      "ConnectionType": [
+        "INTERNET",
+        "VPC_LINK"
+      ],
+      "ConsumableResourceType": [
+        "REPLENISHABLE",
+        "NON_REPLENISHABLE"
+      ],
+      "ContainerDependencyCondition": [
+        "START",
+        "COMPLETE",
+        "SUCCESS",
+        "HEALTHY"
+      ],
+      "ContainerFormat": [
+        "TS",
+        "FRAGMENTED_MP4"
+      ],
+      "ContainerInsights": [
+        "enabled",
+        "disabled",
+        "enhanced"
+      ],
+      "ContainerProviderTypes": [
+        "EKS"
+      ],
+      "ContainerType": [
+        "TS",
+        "CMAF",
+        "ISM"
+      ],
+      "ContentFilterStrength": [
+        "NONE",
+        "LOW",
+        "MEDIUM",
+        "HIGH"
+      ],
+      "ContentFilterType": [
+        "SEXUAL",
+        "VIOLENCE",
+        "HATE",
+        "INSULTS",
+        "MISCONDUCT",
+        "PROMPT_ATTACK"
+      ],
+      "ContentHandling": [
+        "CONVERT_TO_BINARY",
+        "CONVERT_TO_TEXT"
+      ],
+      "ContentType": [
+        "text/plain",
+        "text/css",
+        "text/html",
+        "application/javascript",
+        "application/json"
+      ],
+      "ContextualGroundingFilterType": [
+        "GROUNDING",
+        "RELEVANCE"
+      ],
+      "Continent": [
+        "AF",
+        "AN",
+        "AS",
+        "EU",
+        "OC",
+        "NA",
+        "SA"
+      ],
+      "ContributorInsightsMode": [
+        "ACCESSED_AND_THROTTLED_KEYS",
+        "THROTTLED_KEYS"
+      ],
+      "ControlPlaneScalingTier": [
+        "standard",
+        "tier-xl",
+        "tier-2xl",
+        "tier-4xl",
+        "tier-8xl"
+      ],
+      "CoreDnsComputeType": [
+        "ec2",
+        "fargate"
+      ],
+      "CorsHttpMethod": [
+        "*",
+        "DELETE",
+        "GET",
+        "HEAD",
+        "OPTIONS",
+        "PATCH",
+        "POST",
+        "PUT"
+      ],
+      "CountType": [
+        "imageCountMoreThan",
+        "sinceImagePushed"
+      ],
+      "CpuArch": [
+        "arm64",
+        "x86_64"
+      ],
+      "CpuCredits": [
+        "standard",
+        "unlimited"
+      ],
+      "CpuManufacturer": [
+        "intel",
+        "amd",
+        "amazon-web-services",
+        "apple"
+      ],
+      "CrawlerState": [
+        "RUNNING",
+        "CANCELLING",
+        "CANCELLED",
+        "SUCCEEDED",
+        "FAILED",
+        "ERROR"
+      ],
+      "CredentialProviderType": [
+        "API_KEY",
+        "OAUTH",
+        "GATEWAY_IAM_ROLE"
+      ],
+      "CrossRegionInferenceProfileRegion": [
+        "global",
+        "eu",
+        "us",
+        "us-gov",
+        "apac",
+        "jp",
+        "au"
+      ],
+      "CsvDelimiter": [
+        "COMMA",
+        "PIPE",
+        "SEMICOLON",
+        "SPACE",
+        "TAB"
+      ],
+      "CsvHeaderLocation": [
+        "FIRST_ROW",
+        "GIVEN"
+      ],
+      "CustomClaimOperator": [
+        "EQUALS",
+        "CONTAINS",
+        "CONTAINS_ANY"
+      ],
+      "CustomClaimValueType": [
+        "STRING",
+        "STRING_ARRAY"
+      ],
+      "CustomControl": [
+        "RETURN_CONTROL"
+      ],
+      "CustomLambdaDeploymentConfigType": [
+        "Canary",
+        "Linear"
+      ],
+      "CustomLayer": [
+        "POI"
+      ],
+      "CustomResourceProviderRuntime": [
+        "nodejs12.x",
+        "deprecated_nodejs12.x",
+        "nodejs14.x",
+        "nodejs16.x",
+        "nodejs18.x",
+        "nodejs20.x",
+        "nodejs22.x",
+        "nodejs24.x"
+      ],
+      "CustomThreatProtectionMode": [
+        "ENFORCED",
+        "AUDIT"
+      ],
+      "CustomizationType": [
+        "FINE_TUNING",
+        "CONTINUED_PRE_TRAINING",
+        "DISTILLATION"
+      ],
+      "DBClusterStorageType": [
+        "aurora",
+        "aurora-iopt1"
+      ],
+      "DashManifestCompactness": [
+        "STANDARD",
+        "NONE"
+      ],
+      "DashPeriodTriggers": [
+        "AVAILS",
+        "DRM_KEY_ROTATION",
+        "SOURCE_CHANGES",
+        "SOURCE_DISRUPTIONS",
+        "NONE"
+      ],
+      "DashUtcTimingMode": [
+        "HTTP_HEAD",
+        "HTTP_ISO",
+        "HTTP_XSDATE",
+        "UTC_DIRECT"
+      ],
+      "DataConverterType": [
+        0,
+        1
+      ],
+      "DataResourceType": [
+        "AWS::Lambda::Function",
+        "AWS::S3::Object"
+      ],
+      "DataSource": [
+        "Esri",
+        "Grab",
+        "Here"
+      ],
+      "DataSourceLevelMetricsBehavior": [
+        "FULL_REQUEST_DATA_SOURCE_METRICS",
+        "PER_DATA_SOURCE_METRICS"
+      ],
+      "DataSourceMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "DataStorageUnit": [
+        "GB"
+      ],
+      "DatabaseInsightsMode": [
+        "standard",
+        "advanced"
+      ],
+      "DateIntervalUnit": [
+        "YEARS",
+        "MONTHS",
+        "WEEKS",
+        "DAYS",
+        "HOURS",
+        "MINUTES",
+        "SECONDS"
+      ],
+      "DateTimeFormat": [
+        "yyyy-MM-dd'T'HH:mm:ss'Z'",
+        "epoch",
+        "custom"
+      ],
+      "DayOfWeek": [
+        "SUN",
+        "MON",
+        "TUE",
+        "WED",
+        "THU",
+        "FRI",
+        "SAT",
+        "UNSET_VALUE"
+      ],
+      "DeduplicationScope": [
+        "messageGroup",
+        "queue"
+      ],
+      "DefaultAuthScheme": [
+        "IAM_AUTH",
+        "NONE"
+      ],
+      "DefaultCapacityType": [
+        0,
+        1,
+        2
+      ],
+      "DefaultInstanceClass": [
+        "default_x86_64",
+        "default_arm64"
+      ],
+      "DefaultInstanceTenancy": [
+        "default",
+        "dedicated",
+        "host"
+      ],
+      "DefaultResult": [
+        "CONTINUE",
+        "ABANDON"
+      ],
+      "DeleteOption": [
+        "SAFE_DELETE",
+        "FORCE_DELETE",
+        "RETAIN"
+      ],
+      "DeletionProtection": [
+        "none",
+        "prevent-force-deletion",
+        "prevent-all-deletion"
+      ],
+      "DeletionProtectionCheck": [
+        "ACCOUNT_DEFAULT",
+        "APPLY",
+        "BYPASS"
+      ],
+      "DelimiterCharacter": [
+        ",",
+        "	",
+        " ",
+        ";",
+        "|"
+      ],
+      "DependenciesFile": [
+        "requirements.txt",
+        "poetry.lock",
+        "Pipfile.lock",
+        "uv.lock",
+        ""
+      ],
+      "DeploymentControllerType": [
+        "ECS",
+        "CODE_DEPLOY",
+        "EXTERNAL"
+      ],
+      "DeploymentLifecycleStage": [
+        "RECONCILE_SERVICE",
+        "PRE_SCALE_UP",
+        "POST_SCALE_UP",
+        "TEST_TRAFFIC_SHIFT",
+        "POST_TEST_TRAFFIC_SHIFT",
+        "PRODUCTION_TRAFFIC_SHIFT",
+        "POST_PRODUCTION_TRAFFIC_SHIFT"
+      ],
+      "DeploymentStrategy": [
+        "ROLLING",
+        "BLUE_GREEN",
+        "LINEAR",
+        "CANARY"
+      ],
+      "DesiredState": [
+        "RUNNING",
+        "STOPPED"
+      ],
+      "DestinationType": [
+        "Failure",
+        "Success"
+      ],
+      "DesyncMitigationMode": [
+        "monitor",
+        "defensive",
+        "strictest"
+      ],
+      "DetailType": [
+        "BASIC",
+        "FULL"
+      ],
+      "DevicePermission": [
+        "read",
+        "write",
+        "mknod"
+      ],
+      "DiscoveryType": [
+        "API",
+        "DNS_AND_API"
+      ],
+      "Distribution": [
+        "ByLogStream",
+        "Random"
+      ],
+      "DnsPolicy": [
+        "Default",
+        "ClusterFirst",
+        "ClusterFirstWithHostNet"
+      ],
+      "DnsRecordType": [
+        "A",
+        "AAAA",
+        "A, AAAA",
+        "SRV",
+        "CNAME"
+      ],
+      "DnsResponseType": [
+        "LOADBALANCER",
+        "ENDPOINTS"
+      ],
+      "DockerCredentialUsage": [
+        "SYNTH",
+        "SELF_UPDATE",
+        "ASSET_PUBLISHING"
+      ],
+      "DockerServerComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "BUILD_LAMBDA_10GB",
+        "BUILD_LAMBDA_1GB",
+        "BUILD_LAMBDA_2GB",
+        "BUILD_LAMBDA_4GB",
+        "BUILD_LAMBDA_8GB",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "DockerVolumeConsistency": [
+        "consistent",
+        "delegated",
+        "cached"
+      ],
+      "DriveCacheType": [
+        "NONE",
+        "READ"
+      ],
+      "DrmSettingsKey": [
+        "exclude_session_keys"
+      ],
+      "DrmSignalling": [
+        "INDIVIDUAL",
+        "REFERENCED"
+      ],
+      "DynamoConsumedCapacity": [
+        "INDEXES",
+        "TOTAL",
+        "NONE"
+      ],
+      "DynamoDBStartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST"
+      ],
+      "DynamoItemCollectionMetrics": [
+        "SIZE",
+        "NONE"
+      ],
+      "DynamoMethod": [
+        "Get",
+        "Put",
+        "Delete",
+        "Update"
+      ],
+      "DynamoReturnValues": [
+        "NONE",
+        "ALL_OLD",
+        "UPDATED_OLD",
+        "ALL_NEW",
+        "UPDATED_NEW"
+      ],
+      "EasyDkimSigningKeyLength": [
+        "RSA_1024_BIT",
+        "RSA_2048_BIT"
+      ],
+      "EbsDeviceVolumeType": [
+        "standard",
+        "io1",
+        "io2",
+        "gp2",
+        "gp3",
+        "st1",
+        "sc1",
+        "gp2",
+        "gp3",
+        "io1",
+        "io2",
+        "st1",
+        "sc1",
+        "standard"
+      ],
+      "EbsPropagatedTagSource": [
+        "SERVICE",
+        "TASK_DEFINITION"
+      ],
+      "Ec2InstanceAction": [
+        "stop",
+        "terminate",
+        "recover",
+        "reboot"
+      ],
+      "Ec2InstanceType": [
+        "EC2",
+        "SSM_MANAGED_NODE"
+      ],
+      "EcsMachineImageType": [
+        "ECS_AL2",
+        "ECS_AL2023",
+        "ECS_AL2_NVIDIA",
+        "ECS_AL2023_NVIDIA"
+      ],
+      "Effect": [
+        "Allow",
+        "Deny"
+      ],
+      "EksMachineImageType": [
+        "EKS_AL2",
+        "EKS_AL2_NVIDIA",
+        "EKS_AL2023",
+        "EKS_AL2023_NVIDIA"
+      ],
+      "EmailEncoding": [
+        "Base64",
+        "UTF-8"
+      ],
+      "EmailSendingEvent": [
+        "send",
+        "reject",
+        "bounce",
+        "complaint",
+        "delivery",
+        "open",
+        "click",
+        "renderingFailure",
+        "deliveryDelay",
+        "subscription"
+      ],
+      "EmptyDirMediumType": [
+        "",
+        "Memory"
+      ],
+      "EncodingProfile": [
+        "CONTRIBUTION_H264_DEFAULT",
+        "DISTRIBUTION_H264_DEFAULT"
+      ],
+      "EncryptionKeyType": [
+        "SECRETS_MANAGER",
+        "AUTOMATIC"
+      ],
+      "EncryptionOption": [
+        "SSE_S3",
+        "SSE_KMS",
+        "CSE_KMS"
+      ],
+      "EndpointAccessMode": [
+        "STRICT",
+        "BASIC"
+      ],
+      "EndpointErrorConfiguration": [
+        "STALE_MANIFEST",
+        "INCOMPLETE_MANIFEST",
+        "MISSING_DRM_KEY",
+        "SLATE_INPUT"
+      ],
+      "EndpointType": [
+        "EDGE",
+        "REGIONAL"
+      ],
+      "EngineLifecycleSupport": [
+        "open-source-rds-extended-support",
+        "open-source-rds-extended-support-disabled"
+      ],
+      "EntitlementStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "EnvironmentFileType": [
+        "s3"
+      ],
+      "EnvironmentType": [
+        "ARM_CONTAINER",
+        "LINUX_CONTAINER",
+        "LINUX_GPU_CONTAINER",
+        "WINDOWS_SERVER_2019_CONTAINER",
+        "WINDOWS_SERVER_2022_CONTAINER",
+        "MAC_ARM",
+        "LINUX_EC2",
+        "ARM_EC2",
+        "WINDOWS_EC2"
+      ],
+      "EventAction": [
+        "PUSH",
+        "PULL_REQUEST_CREATED",
+        "PULL_REQUEST_UPDATED",
+        "PULL_REQUEST_CLOSED",
+        "PULL_REQUEST_MERGED",
+        "PULL_REQUEST_REOPENED",
+        "RELEASED",
+        "PRERELEASED",
+        "WORKFLOW_JOB_QUEUED"
+      ],
+      "EventEvaluation": [
+        "BATCH",
+        "SERIAL"
+      ],
+      "EventSource": [
+        "aws.config"
+      ],
+      "EventSourceMappingLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN"
+      ],
+      "EventType": [
+        "s3:ObjectCreated:*",
+        "s3:ObjectCreated:Put",
+        "s3:ObjectCreated:Post",
+        "s3:ObjectCreated:Copy",
+        "s3:ObjectCreated:CompleteMultipartUpload",
+        "s3:ObjectRemoved:*",
+        "s3:ObjectRemoved:Delete",
+        "s3:ObjectRemoved:DeleteMarkerCreated",
+        "s3:ObjectRestore:Post",
+        "s3:ObjectRestore:Completed",
+        "s3:ObjectRestore:Delete",
+        "s3:ReducedRedundancyLostObject",
+        "s3:Replication:OperationFailedReplication",
+        "s3:Replication:OperationMissedThreshold",
+        "s3:Replication:OperationReplicatedAfterThreshold",
+        "s3:Replication:OperationNotTracked",
+        "s3:LifecycleExpiration:*",
+        "s3:LifecycleExpiration:Delete",
+        "s3:LifecycleExpiration:DeleteMarkerCreated",
+        "s3:LifecycleTransition",
+        "s3:IntelligentTiering",
+        "s3:ObjectTagging:*",
+        "s3:ObjectTagging:Put",
+        "s3:ObjectTagging:Delete",
+        "s3:ObjectAcl:Put",
+        "s3:ObjectRestore:*",
+        "s3:Replication:*"
+      ],
+      "ExecuteCommandLogging": [
+        "NONE",
+        "DEFAULT",
+        "OVERRIDE"
+      ],
+      "ExecutionClass": [
+        "FLEX",
+        "STANDARD"
+      ],
+      "ExecutionMode": [
+        "QUEUED",
+        "SUPERSEDED",
+        "PARALLEL"
+      ],
+      "Failover": [
+        "PRIMARY",
+        "SECONDARY"
+      ],
+      "FailoverStatusCode": [
+        403,
+        404,
+        500,
+        502,
+        503,
+        504
+      ],
+      "FargatePlatformVersion": [
+        "LATEST",
+        "1.4.0",
+        "1.3.0",
+        "1.2.0",
+        "1.1.0",
+        "1.0.0"
+      ],
+      "FeaturePlan": [
+        "LITE",
+        "ESSENTIALS",
+        "PLUS"
+      ],
+      "FieldLogLevel": [
+        "NONE",
+        "ERROR",
+        "INFO",
+        "DEBUG",
+        "ALL"
+      ],
+      "FifoThroughputLimit": [
+        "perQueue",
+        "perMessageGroupId"
+      ],
+      "FifoThroughputScope": [
+        "Topic",
+        "MessageGroup"
+      ],
+      "FileAssetPackaging": [
+        "zip",
+        "file"
+      ],
+      "FileSystemType": [
+        "ext3",
+        "ext4",
+        "xfs",
+        "ntfs"
+      ],
+      "FileSystemTypeVersion": [
+        "2.10",
+        "2.12",
+        "2.15"
+      ],
+      "FilterOrPolicyType": [
+        0,
+        1
+      ],
+      "FirehoseRecordSeparator": [
+        "\n",
+        "	",
+        "\r\n",
+        ","
+      ],
+      "FirelensConfigFileType": [
+        "s3",
+        "file"
+      ],
+      "FirelensLogRouterType": [
+        "fluentbit",
+        "fluentd"
+      ],
+      "FlagType": [
+        0,
+        1,
+        2,
+        3
+      ],
+      "FleetComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "FleetOverflowBehavior": [
+        "QUEUE",
+        "ON_DEMAND"
+      ],
+      "FlowLogDestinationType": [
+        "cloud-watch-logs",
+        "s3",
+        "kinesis-data-firehose"
+      ],
+      "FlowLogFileFormat": [
+        "plain-text",
+        "parquet"
+      ],
+      "FlowLogMaxAggregationInterval": [
+        60,
+        600
+      ],
+      "FlowLogTrafficType": [
+        "ACCEPT",
+        "ALL",
+        "REJECT"
+      ],
+      "FlowOutputProtocol": [
+        "zixi-push",
+        "rtp-fec",
+        "rtp",
+        "zixi-pull",
+        "rist",
+        "srt-listener",
+        "srt-caller",
+        "ndi-speed-hq"
+      ],
+      "FollowMode": [
+        "never",
+        "always",
+        "external",
+        "internal-only"
+      ],
+      "ForwardErrorCorrection": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Frequency": [
+        "DAILY",
+        "WEEKLY",
+        "BIWEEKLY",
+        "MONTHLY"
+      ],
+      "FunctionEventType": [
+        "viewer-request",
+        "viewer-response"
+      ],
+      "FunctionRuntimeFamily": [
+        "APPSYNC_JS"
+      ],
+      "FunctionUrlAuthType": [
+        "AWS_IAM",
+        "NONE"
+      ],
+      "GatewayAuthorizerType": [
+        "CUSTOM_JWT",
+        "AWS_IAM",
+        "NONE"
+      ],
+      "GatewayExceptionLevel": [
+        "DEBUG"
+      ],
+      "GatewayProtocolType": [
+        "MCP"
+      ],
+      "GatewayTargetProtocolType": [
+        "MCP"
+      ],
+      "GelfCompressionType": [
+        "gzip",
+        "zlib",
+        "none"
+      ],
+      "GitHubTrigger": [
+        "None",
+        "Poll",
+        "WebHook"
+      ],
+      "GitPullRequestEvent": [
+        "OPEN",
+        "UPDATED",
+        "CLOSED"
+      ],
+      "GlobalTableSettingsReplicationMode": [
+        "ENABLED"
+      ],
+      "GlueVersion": [
+        "0.9",
+        "1.0",
+        "2.0",
+        "3.0",
+        "4.0",
+        "5.0",
+        "5.1",
+        "6.0"
+      ],
+      "GraphWidgetView": [
+        "timeSeries",
+        "bar",
+        "pie"
+      ],
+      "GrowthType": [
+        "LINEAR",
+        "EXPONENTIAL"
+      ],
+      "GrpcRetryEvent": [
+        "cancelled",
+        "deadline-exceeded",
+        "internal",
+        "resource-exhausted",
+        "unavailable"
+      ],
+      "GuardrailAction": [
+        "BLOCK",
+        "ANONYMIZE",
+        "NONE"
+      ],
+      "HandlerBehavior": [
+        "CODE",
+        "DIRECT"
+      ],
+      "HandlerName": [
+        "user",
+        "table",
+        "user-table-privileges"
+      ],
+      "HeadersFrameOption": [
+        "DENY",
+        "SAMEORIGIN"
+      ],
+      "HeadersReferrerPolicy": [
+        "no-referrer",
+        "no-referrer-when-downgrade",
+        "origin",
+        "origin-when-cross-origin",
+        "same-origin",
+        "strict-origin",
+        "strict-origin-when-cross-origin",
+        "unsafe-url"
+      ],
+      "HealthCheckProtocol": [
+        "TCP",
+        "HTTP",
+        "HTTPS"
+      ],
+      "HealthCheckProtocolType": [
+        "HTTP",
+        "TCP"
+      ],
+      "HealthCheckType": [
+        "HTTP",
+        "HTTPS",
+        "TCP"
+      ],
+      "HostKernel": [
+        "LINUX_KERNEL_4",
+        "LINUX_KERNEL_6",
+        "LINUX_KERNEL_LATEST"
+      ],
+      "HttpAuthorizerType": [
+        "AWS_IAM",
+        "JWT",
+        "REQUEST"
+      ],
+      "HttpBackupMode": [
+        "FailedDataOnly",
+        "AllData"
+      ],
+      "HttpCodeElb": [
+        "HTTPCode_ELB_3XX_Count",
+        "HTTPCode_ELB_4XX_Count",
+        "HTTPCode_ELB_5XX_Count",
+        "HTTPCode_ELB_500_Count",
+        "HTTPCode_ELB_502_Count",
+        "HTTPCode_ELB_503_Count",
+        "HTTPCode_ELB_504_Count"
+      ],
+      "HttpCodeTarget": [
+        "HTTPCode_Target_2XX_Count",
+        "HTTPCode_Target_3XX_Count",
+        "HTTPCode_Target_4XX_Count",
+        "HTTPCode_Target_5XX_Count"
+      ],
+      "HttpCompression": [
+        "GZIP",
+        "NONE"
+      ],
+      "HttpConnectionType": [
+        "VPC_LINK",
+        "INTERNET"
+      ],
+      "HttpIntegrationSubtype": [
+        "EventBridge-PutEvents",
+        "SQS-SendMessage",
+        "SQS-ReceiveMessage",
+        "SQS-DeleteMessage",
+        "SQS-PurgeQueue",
+        "AppConfig-GetConfiguration",
+        "Kinesis-PutRecord",
+        "StepFunctions-StartExecution",
+        "StepFunctions-StartSyncExecution",
+        "StepFunctions-StopExecution"
+      ],
+      "HttpIntegrationType": [
+        "HTTP_PROXY",
+        "AWS_PROXY"
+      ],
+      "HttpLambdaResponseType": [
+        0,
+        1
+      ],
+      "HttpMethod": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD",
+        "OPTIONS"
+      ],
+      "HttpMethods": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD"
+      ],
+      "HttpRetryEvent": [
+        "server-error",
+        "gateway-error",
+        "client-error",
+        "stream-error"
+      ],
+      "HttpRouteAuthorizationType": [
+        "AWS_IAM",
+        "JWT",
+        "CUSTOM",
+        "NONE"
+      ],
+      "HttpRouteMethod": [
+        "GET",
+        "HEAD",
+        "POST",
+        "PUT",
+        "DELETE",
+        "CONNECT",
+        "OPTIONS",
+        "TRACE",
+        "PATCH"
+      ],
+      "HttpRouteProtocol": [
+        "http",
+        "https"
+      ],
+      "HttpTokens": [
+        "optional",
+        "required"
+      ],
+      "HttpVersion": [
+        "http1.1",
+        "http2",
+        "http2and3",
+        "http3"
+      ],
+      "HttpsPolicy": [
+        "REQUIRE",
+        "REQUIRE_OPEN_ONLY",
+        "OPTIONAL"
+      ],
+      "IdentityPoolProviderType": [
+        "Facebook",
+        "Google",
+        "Amazon",
+        "Apple",
+        "Twitter",
+        "OpenId",
+        "Saml",
+        "UserPool",
+        "Custom"
+      ],
+      "IdentityType": [
+        "IRSA",
+        "POD_IDENTITY"
+      ],
+      "IgnoreMode": [
+        "glob",
+        "git",
+        "docker"
+      ],
+      "ImageArchitecture": [
+        "arm64",
+        "x86_64"
+      ],
+      "ImageId": [
+        "amazonlinux-2-x86_64",
+        "amazonlinux-2023-x86_64",
+        "ubuntu-18.04-x86_64",
+        "ubuntu-22.04-x86_64"
+      ],
+      "ImagePipelineStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ImagePullPolicy": [
+        "Always",
+        "IfNotPresent",
+        "Never"
+      ],
+      "ImagePullPrincipalType": [
+        "CODEBUILD",
+        "SERVICE_ROLE"
+      ],
+      "ImageRepositoryType": [
+        "ECR_PUBLIC",
+        "ECR"
+      ],
+      "ImageType": [
+        "AMI",
+        "DOCKER"
+      ],
+      "IncludeDetail": [
+        "FULL",
+        "NONE"
+      ],
+      "IncludeExecutionData": [
+        "ALL"
+      ],
+      "InferenceProfileType": [
+        "SYSTEM_DEFINED",
+        "APPLICATION"
+      ],
+      "IngestEndpoint": [
+        1,
+        2
+      ],
+      "InitElementType": [
+        "PACKAGE",
+        "GROUP",
+        "USER",
+        "SOURCE",
+        "FILE",
+        "COMMAND",
+        "SERVICE"
+      ],
+      "InitPlatform": [
+        "WINDOWS",
+        "LINUX"
+      ],
+      "InputCompressionType": [
+        "GZIP",
+        "ZSTD",
+        "NONE"
+      ],
+      "InputMode": [
+        "Pipe",
+        "File",
+        "FastFile"
+      ],
+      "InputType": [
+        0,
+        1
+      ],
+      "InstanceArchitecture": [
+        "arm64",
+        "x86_64"
+      ],
+      "InstanceClass": [
+        "standard3",
+        "m3",
+        "standard4",
+        "m4",
+        "standard5",
+        "m5",
+        "standard5-nvme-drive",
+        "m5d",
+        "standard5-amd",
+        "m5a",
+        "standard5-amd-nvme-drive",
+        "m5ad",
+        "standard5-high-performance",
+        "m5n",
+        "standard5-nvme-drive-high-performance",
+        "m5dn",
+        "standard5-high-compute",
+        "m5zn",
+        "memory3",
+        "r3",
+        "memory4",
+        "r4",
+        "memory5",
+        "r5",
+        "memory6-amd",
+        "r6a",
+        "memory6-intel",
+        "r6i",
+        "memory6-intel-nvme-drive",
+        "r6id",
+        "memory6-intel-high-performance",
+        "r6in",
+        "memory6-intel-nvme-drive-high-performance",
+        "r6idn",
+        "memory5-high-performance",
+        "r5n",
+        "memory5-nvme-drive",
+        "r5d",
+        "memory5-nvme-drive-high-performance",
+        "r5dn",
+        "memory5-amd",
+        "r5a",
+        "memory5-amd-nvme-drive",
+        "r5ad",
+        "high-memory-3tb-1",
+        "u-3tb1",
+        "high-memory-6tb-1",
+        "u-6tb1",
+        "high-memory-9tb-1",
+        "u-9tb1",
+        "high-memory-12tb-1",
+        "u-12tb1",
+        "high-memory-18tb-1",
+        "u-18tb1",
+        "high-memory-24tb-1",
+        "u-24tb1",
+        "high-memory-6tb-7",
+        "u7i-6tb",
+        "high-memory-8tb-7",
+        "u7i-8tb",
+        "high-memory-12tb-7",
+        "u7i-12tb",
+        "high-memory-high-network-16tb-7",
+        "u7in-16tb",
+        "high-memory-high-network-24tb-7",
+        "u7in-24tb",
+        "high-memory-high-network-32tb-7",
+        "u7in-32tb",
+        "high-memory-high-network-hpe-32tb-7",
+        "u7inh-32tb",
+        "memory5-ebs-optimized",
+        "r5b",
+        "memory6-graviton",
+        "r6g",
+        "memory6-graviton2-nvme-drive",
+        "r6gd",
+        "memory7-graviton",
+        "r7g",
+        "memory7-graviton3-nvme-drive",
+        "r7gd",
+        "memory7-intel-base",
+        "r7i",
+        "memory7-intel",
+        "r7iz",
+        "memory8-intel-base",
+        "r8i",
+        "memory8-intel-flex",
+        "r8i-flex",
+        "memory7-amd",
+        "r7a",
+        "memory8-amd",
+        "r8a",
+        "memory8-graviton",
+        "r8g",
+        "memory8-graviton4-nvme-drive",
+        "r8gd",
+        "memory8-graviton4-high-network-bandwidth",
+        "r8gn",
+        "memory8-graviton4-ebs-optimized",
+        "r8gb",
+        "compute3",
+        "c3",
+        "compute4",
+        "c4",
+        "compute5",
+        "c5",
+        "compute5-nvme-drive",
+        "c5d",
+        "compute5-amd",
+        "c5a",
+        "compute5-amd-nvme-drive",
+        "c5ad",
+        "compute5-high-performance",
+        "c5n",
+        "compute6-intel",
+        "c6i",
+        "compute6-intel-nvme-drive",
+        "c6id",
+        "compute6-intel-high-performance",
+        "c6in",
+        "compute6-amd",
+        "c6a",
+        "compute6-graviton2",
+        "c6g",
+        "compute7-graviton3",
+        "c7g",
+        "compute8-graviton4",
+        "c8g",
+        "compute6-graviton2-nvme-drive",
+        "c6gd",
+        "compute7-graviton3-nvme-drive",
+        "c7gd",
+        "compute8-graviton4-nvme-drive",
+        "c8gd",
+        "compute6-graviton2-high-network-bandwidth",
+        "c6gn",
+        "compute7-graviton3-high-network-bandwidth",
+        "c7gn",
+        "compute8-graviton4-high-network-bandwidth",
+        "c8gn",
+        "compute7-intel",
+        "c7i",
+        "compute7-intel-flex",
+        "c7i-flex",
+        "compute8-intel",
+        "c8i",
+        "compute8-intel-flex",
+        "c8i-flex",
+        "compute7-amd",
+        "c7a",
+        "compute8-amd",
+        "c8a",
+        "storage2",
+        "d2",
+        "storage3",
+        "d3",
+        "storage3-enhanced-network",
+        "d3en",
+        "storage-compute-1",
+        "h1",
+        "training-accelerator1",
+        "trn1",
+        "training-accelerator1-enhanced-network",
+        "trn1n",
+        "training-accelerator2",
+        "trn2",
+        "training-accelerator2-ultraserver",
+        "trn2u",
+        "io3",
+        "i3",
+        "io3-dense-nvme-drive",
+        "i3en",
+        "io4_intel",
+        "i4i",
+        "storage4_graviton",
+        "i4g",
+        "storage4-graviton-network-optimized",
+        "im4gn",
+        "storage4-graviton-network-storage-optimized",
+        "is4gen",
+        "storage7-intel-storage-optimized",
+        "i7ie",
+        "io7_intel",
+        "i7i",
+        "storage8-graviton",
+        "i8g",
+        "storage8-graviton-storage-optimized",
+        "i8ge",
+        "burstable2",
+        "t2",
+        "burstable3",
+        "t3",
+        "burstable3-amd",
+        "t3a",
+        "burstable4-graviton",
+        "t4g",
+        "memory-intensive-1",
+        "x1",
+        "memory-intensive-1-extended",
+        "x1e",
+        "memory-intensive-2-graviton2",
+        "x2g",
+        "memory-intensive-2-graviton2-nvme-drive",
+        "x2gd",
+        "memory_intensive_2_xt_intel",
+        "x2iedn",
+        "memory_intensive_2_intel",
+        "x2idn",
+        "memory_intensive_2_xtz_intel",
+        "x2iezn",
+        "memory-intensive-8-graviton",
+        "x8g",
+        "fpga1",
+        "f1",
+        "fpga2",
+        "f2",
+        "graphics3-small",
+        "g3s",
+        "graphics3",
+        "g3",
+        "graphics4-nvme-drive-high-performance",
+        "g4dn",
+        "graphics4-amd-nvme-drive",
+        "g4ad",
+        "graphics5",
+        "g5",
+        "graphics5-graviton2",
+        "g5g",
+        "graphics6",
+        "g6",
+        "graphics6-efficient",
+        "g6e",
+        "graphics7-efficient",
+        "g7e",
+        "graphics-ram-6",
+        "gr6",
+        "parallel2",
+        "p2",
+        "parallel3",
+        "p3",
+        "parallel3-nvme-drive-high-performance",
+        "p3dn",
+        "parallel4-nvme-drive-extended",
+        "p4de",
+        "parallel4",
+        "p4d",
+        "parallel5",
+        "p5",
+        "parallel5-extended",
+        "p5e",
+        "parallel5-extended-network",
+        "p5en",
+        "arm1",
+        "a1",
+        "standard6-graviton",
+        "m6g",
+        "standard6-intel",
+        "m6i",
+        "standard6-intel-nvme-drive",
+        "m6id",
+        "standard6-intel-high-performance",
+        "m6in",
+        "standard6-intel-nvme-drive-high-performance",
+        "m6idn",
+        "standard6-amd",
+        "m6a",
+        "standard6-graviton2-nvme-drive",
+        "m6gd",
+        "standard7-graviton",
+        "m7g",
+        "standard8-graviton",
+        "m8g",
+        "standard7-graviton3-nvme-drive",
+        "m7gd",
+        "standard8-graviton4-nvme-drive",
+        "m8gd",
+        "standard8-intel",
+        "m8i",
+        "standard8-intel-flex",
+        "m8i-flex",
+        "standard7-intel",
+        "m7i",
+        "standard7-intel-flex",
+        "m7i-flex",
+        "standard7-amd",
+        "m7a",
+        "standard8-amd",
+        "m8a",
+        "standard9-graviton",
+        "m9g",
+        "high-compute-memory1",
+        "z1d",
+        "inference1",
+        "inf1",
+        "inference2",
+        "inf2",
+        "macintosh1-intel",
+        "mac1",
+        "macintosh2-m1",
+        "mac2",
+        "macintosh2-m2",
+        "mac2-m2",
+        "macintosh2-m2-pro",
+        "mac2-m2pro",
+        "macintosh2-m1-ultra",
+        "mac2-m1ultra",
+        "video-transcoding1",
+        "vt1",
+        "high-performance-computing6-amd",
+        "hpc6a",
+        "high-performance-computing6-intel-nvme-drive",
+        "hpc6id",
+        "high-performance-computing7-amd",
+        "hpc7a",
+        "high-performance-computing7-graviton",
+        "hpc7g",
+        "deep-learning1",
+        "dl1",
+        "deep-learning2-qualcomm",
+        "dl2q"
+      ],
+      "InstanceGeneration": [
+        "current",
+        "previous"
+      ],
+      "InstanceInitiatedShutdownBehavior": [
+        "stop",
+        "terminate"
+      ],
+      "InstanceMonitoring": [
+        "BASIC",
+        "DETAILED"
+      ],
+      "InstanceRefreshStrategy": [
+        "Rolling",
+        "ReplaceRootVolume"
+      ],
+      "InstanceSize": [
+        "nano",
+        "micro",
+        "small",
+        "medium",
+        "large",
+        "xlarge",
+        "2xlarge",
+        "3xlarge",
+        "4xlarge",
+        "6xlarge",
+        "8xlarge",
+        "9xlarge",
+        "10xlarge",
+        "12xlarge",
+        "16xlarge",
+        "18xlarge",
+        "24xlarge",
+        "32xlarge",
+        "48xlarge",
+        "56xlarge",
+        "96xlarge",
+        "112xlarge",
+        "224xlarge",
+        "480xlarge",
+        "metal",
+        "metal-16xl",
+        "metal-24xl",
+        "metal-32xl",
+        "metal-48xl"
+      ],
+      "InstanceType": [
+        "PROVISIONED",
+        "SERVERLESS_V2"
+      ],
+      "InstanceUpdateBehaviour": [
+        "BULK",
+        "ROLLING"
+      ],
+      "InsufficientDataHealthStatusEnum": [
+        "Healthy",
+        "Unhealthy",
+        "LastKnownStatus"
+      ],
+      "IntegrationPattern": [
+        "REQUEST_RESPONSE",
+        "RUN_JOB",
+        "WAIT_FOR_TASK_TOKEN"
+      ],
+      "IntegrationType": [
+        "AWS",
+        "AWS_PROXY",
+        "HTTP",
+        "HTTP_PROXY",
+        "MOCK"
+      ],
+      "IntendedUse": [
+        "SingleUse",
+        "Storage"
+      ],
+      "InterceptionPoint": [
+        "REQUEST",
+        "RESPONSE"
+      ],
+      "IntrospectionConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "InvalidCharHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW",
+        "REPLACE"
+      ],
+      "InventoryFormat": [
+        "CSV",
+        "Parquet",
+        "ORC"
+      ],
+      "InventoryFrequency": [
+        "Daily",
+        "Weekly"
+      ],
+      "InventoryObjectVersion": [
+        "All",
+        "Current"
+      ],
+      "InvocationHttpResponseCode": [
+        "Invocation4XXErrors",
+        "Invocation5XXErrors"
+      ],
+      "InvocationType": [
+        "RequestResponse",
+        "Event",
+        "DryRun"
+      ],
+      "InvokeMode": [
+        "BUFFERED",
+        "RESPONSE_STREAM"
+      ],
+      "IpAddressType": [
+        "ipv4",
+        "dualstack",
+        "dualstack-without-public-ipv4"
+      ],
+      "IpFamily": [
+        "ipv4",
+        "ipv6"
+      ],
+      "IpPreference": [
+        "IPv4_ONLY",
+        "IPv4_PREFERRED",
+        "IPv6_ONLY",
+        "IPv6_PREFERRED"
+      ],
+      "IpProtocol": [
+        "Ipv4_Only",
+        "Dual_Stack"
+      ],
+      "IpamPoolPublicIpSource": [
+        "byoip",
+        "amazon"
+      ],
+      "IpamScopeType": [
+        "default",
+        "custom"
+      ],
+      "IpcMode": [
+        "none",
+        "host",
+        "task"
+      ],
+      "IsmDrmSystem": [
+        "PLAYREADY"
+      ],
+      "JenkinsActionType": [
+        0,
+        1
+      ],
+      "JitterType": [
+        "FULL",
+        "NONE"
+      ],
+      "JobLanguage": [
+        "scala",
+        "python"
+      ],
+      "JobState": [
+        "SUCCEEDED",
+        "FAILED",
+        "TIMEOUT",
+        "STARTING",
+        "RUNNING",
+        "STOPPING",
+        "STOPPED"
+      ],
+      "JobStateTimeLimitActionsAction": [
+        "CANCEL",
+        "TERMINATE"
+      ],
+      "JobStateTimeLimitActionsReason": [
+        "CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY",
+        "MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE",
+        "MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT"
+      ],
+      "JobStateTimeLimitActionsState": [
+        "RUNNABLE"
+      ],
+      "JobType": [
+        "glueetl",
+        "gluestreaming",
+        "pythonshell"
+      ],
+      "JsonMutatorType": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5
+      ],
+      "JsonSchemaType": [
+        "null",
+        "boolean",
+        "object",
+        "array",
+        "number",
+        "integer",
+        "string"
+      ],
+      "JsonSchemaVersion": [
+        "http://json-schema.org/draft-04/schema#",
+        "http://json-schema.org/draft-07/schema#"
+      ],
+      "KeyPairFormat": [
+        "ppk",
+        "pem"
+      ],
+      "KeyPairType": [
+        "rsa",
+        "ed25519"
+      ],
+      "KeySigningKeyStatus": [
+        "ACTIVE",
+        "INACTIVE"
+      ],
+      "KeySpec": [
+        "SYMMETRIC_DEFAULT",
+        "RSA_2048",
+        "RSA_3072",
+        "RSA_4096",
+        "ECC_NIST_P256",
+        "ECC_NIST_P384",
+        "ECC_NIST_P521",
+        "ECC_SECG_P256K1",
+        "HMAC_224",
+        "HMAC_256",
+        "HMAC_384",
+        "HMAC_512",
+        "SM2",
+        "ML_DSA_44",
+        "ML_DSA_65",
+        "ML_DSA_87",
+        "ECC_NIST_EDWARDS25519"
+      ],
+      "KeyUsage": [
+        "ENCRYPT_DECRYPT",
+        "SIGN_VERIFY",
+        "GENERATE_VERIFY_MAC",
+        "KEY_AGREEMENT"
+      ],
+      "KeyValueDelimiter": [
+        "=",
+        ":"
+      ],
+      "KeyValuePairDelimiter": [
+        "&",
+        ";",
+        " ",
+        "\n"
+      ],
+      "KinesisStartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST",
+        "AT_TIMESTAMP"
+      ],
+      "LambdaEdgeEventType": [
+        "origin-request",
+        "origin-response",
+        "viewer-request",
+        "viewer-response"
+      ],
+      "LambdaFunctionInvocationType": [
+        "FIRE_AND_FORGET",
+        "REQUEST_RESPONSE"
+      ],
+      "LambdaInvocationType": [
+        "RequestResponse",
+        "Event",
+        "DryRun"
+      ],
+      "LambdaInvokeType": [
+        "EVENT",
+        "REQUEST_RESPONSE"
+      ],
+      "LambdaVersion": [
+        "V1_0",
+        "V2_0",
+        "V3_0"
+      ],
+      "LatencyMode": [
+        "LOW",
+        "NORMAL"
+      ],
+      "LaunchTemplateHttpTokens": [
+        "optional",
+        "required"
+      ],
+      "LaunchType": [
+        "EC2",
+        "FARGATE",
+        "EXTERNAL"
+      ],
+      "LegendPosition": [
+        "bottom",
+        "right",
+        "hidden"
+      ],
+      "Level": [
+        "INFO",
+        "ERROR",
+        "TRACE",
+        "OFF"
+      ],
+      "LibrarySet": [
+        "analytics",
+        "none"
+      ],
+      "LicenseModel": [
+        "license-included",
+        "bring-your-own-license",
+        "general-public-license"
+      ],
+      "LifecycleLabel": [
+        "OnDemand",
+        "Ec2Spot"
+      ],
+      "LifecyclePolicy": [
+        "AFTER_1_DAY",
+        "AFTER_7_DAYS",
+        "AFTER_14_DAYS",
+        "AFTER_30_DAYS",
+        "AFTER_60_DAYS",
+        "AFTER_90_DAYS",
+        "AFTER_180_DAYS",
+        "AFTER_270_DAYS",
+        "AFTER_365_DAYS"
+      ],
+      "LifecyclePolicyActionType": [
+        "DELETE",
+        "DEPRECATE",
+        "DISABLE"
+      ],
+      "LifecyclePolicyResourceType": [
+        "AMI_IMAGE",
+        "CONTAINER_IMAGE"
+      ],
+      "LifecyclePolicyStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "LifecycleTransition": [
+        "autoscaling:EC2_INSTANCE_LAUNCHING",
+        "autoscaling:EC2_INSTANCE_TERMINATING"
+      ],
+      "LinkedChannelType": [
+        "PRIMARY_CHANNEL",
+        "FOLLOWING_CHANNEL"
+      ],
+      "LoadBalancerGeneration": [
+        0,
+        1
+      ],
+      "LoadBalancerIpAddressType": [
+        "ipv4",
+        "dualstack",
+        "dualstack-without-public-ipv4"
+      ],
+      "LoadBalancingProtocol": [
+        "tcp",
+        "ssl",
+        "http",
+        "https"
+      ],
+      "LocalCacheMode": [
+        "LOCAL_SOURCE_CACHE",
+        "LOCAL_DOCKER_LAYER_CACHE",
+        "LOCAL_CUSTOM_CACHE"
+      ],
+      "LocalStorage": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "LocalStorageType": [
+        "hdd",
+        "ssd"
+      ],
+      "LockFile": [
+        "package-lock.json",
+        "yarn.lock",
+        "bun.lockb",
+        "bun.lock",
+        "pnpm-lock.yaml"
+      ],
+      "LogDestinationType": [
+        "s3",
+        "cloudwatch"
+      ],
+      "LogExport": [
+        "connectionlog",
+        "useractivitylog",
+        "userlog"
+      ],
+      "LogFormat": [
+        "Text",
+        "JSON"
+      ],
+      "LogGroupClass": [
+        "STANDARD",
+        "INFREQUENT_ACCESS",
+        "DELIVERY"
+      ],
+      "LogLevel": [
+        "OFF",
+        "ALL",
+        "ERROR",
+        "FATAL"
+      ],
+      "LogQueryLanguage": [
+        "Logs",
+        "SQL",
+        "PPL"
+      ],
+      "LogQueryVisualizationType": [
+        "table",
+        "line",
+        "stackedarea",
+        "bar",
+        "pie"
+      ],
+      "LogType": [
+        "None",
+        "Tail"
+      ],
+      "LoggingFormat": [
+        "Text",
+        "JSON"
+      ],
+      "LoggingLevel": [
+        "ERROR",
+        "INFO",
+        "NONE"
+      ],
+      "LoggingProtocol": [
+        "http/s",
+        "sqs",
+        "lambda",
+        "firehose",
+        "application"
+      ],
+      "LustreAutoImportPolicy": [
+        "NONE",
+        "NEW",
+        "NEW_CHANGED",
+        "NEW_CHANGED_DELETED"
+      ],
+      "LustreDataCompressionType": [
+        "NONE",
+        "LZ4"
+      ],
+      "LustreDeploymentType": [
+        "SCRATCH_1",
+        "SCRATCH_2",
+        "PERSISTENT_1",
+        "PERSISTENT_2"
+      ],
+      "MCPProtocolVersion": [
+        "2025-06-18",
+        "2025-03-26"
+      ],
+      "MachineImageType": [
+        0,
+        1
+      ],
+      "MachineType": [
+        "GENERAL",
+        "NVME"
+      ],
+      "MailFromBehaviorOnMxFailure": [
+        "USE_DEFAULT_VALUE",
+        "REJECT_MESSAGE"
+      ],
+      "MaintenanceDay": [
+        "MONDAY",
+        "TUESDAY",
+        "WEDNESDAY",
+        "THURSDAY",
+        "FRIDAY",
+        "SATURDAY",
+        "SUNDAY"
+      ],
+      "MaintenanceTrackName": [
+        "current",
+        "trailing"
+      ],
+      "ManagedLoginVersion": [
+        1,
+        2
+      ],
+      "ManagedWordFilterType": [
+        "PROFANITY"
+      ],
+      "ManagementEventSources": [
+        "kms.amazonaws.com",
+        "rdsdata.amazonaws.com"
+      ],
+      "MaxCapacity": [
+        0.0625,
+        1
+      ],
+      "MaximumExecutionFrequency": [
+        "One_Hour",
+        "Three_Hours",
+        "Six_Hours",
+        "Twelve_Hours",
+        "TwentyFour_Hours"
+      ],
+      "MaximumResolution": [
+        "FULL_HD",
+        "HD",
+        "SD"
+      ],
+      "McpGatewaySearchType": [
+        "SEMANTIC"
+      ],
+      "McpTargetType": [
+        "OPENAPI_SCHEMA",
+        "SMITHY_MODEL",
+        "LAMBDA",
+        "MCP_SERVER",
+        "API_GATEWAY"
+      ],
+      "MediaLivePipeline": [
+        "PIPELINE_0",
+        "PIPELINE_1"
+      ],
+      "MediaStreamType": [
+        "video",
+        "audio",
+        "ancillary-data"
+      ],
+      "MemoryStrategyType": [
+        "SUMMARIZATION",
+        "SEMANTIC",
+        "USER_PREFERENCE",
+        "EPISODIC",
+        "CUSTOM"
+      ],
+      "MemoryType": [
+        "SESSION_SUMMARY"
+      ],
+      "MergeType": [
+        "MANUAL_MERGE",
+        "AUTO_MERGE"
+      ],
+      "MeshFilterType": [
+        "ALLOW_ALL",
+        "DROP_ALL"
+      ],
+      "MessageAttributeDataType": [
+        "String",
+        "String.Array",
+        "Number",
+        "Binary"
+      ],
+      "MessageLanguage": [
+        "en",
+        "jp",
+        "zh"
+      ],
+      "MessageType": [
+        "ConfigurationItemChangeNotification",
+        "OversizedConfigurationItemChangeNotification",
+        "ScheduledNotification",
+        "ConfigurationSnapshotDeliveryCompleted"
+      ],
+      "MetadataType": [
+        "aws:cdk:analytics:construct",
+        "aws:cdk:analytics:method",
+        "aws:cdk:analytics:featureflag",
+        "aws:cdk:analytics:mixin"
+      ],
+      "MethodLoggingLevel": [
+        "OFF",
+        "ERROR",
+        "INFO"
+      ],
+      "MetricAggregationType": [
+        "Average",
+        "Minimum",
+        "Maximum"
+      ],
+      "MetricType": [
+        "EventCount",
+        "ErrorCount",
+        "KafkaMetrics"
+      ],
+      "MetricsLevel": [
+        "APPLICATION",
+        "TASK",
+        "OPERATOR",
+        "PARALLELISM"
+      ],
+      "Mfa": [
+        "OFF",
+        "OPTIONAL",
+        "ON"
+      ],
+      "ModalityType": [
+        "TEXT",
+        "IMAGE"
+      ],
+      "Mode": [
+        "SingleModel",
+        "MultiModel"
+      ],
+      "MonitorType": [
+        0,
+        1
+      ],
+      "Monitoring": [
+        0,
+        1
+      ],
+      "MqttQualityOfService": [
+        0,
+        1
+      ],
+      "MssManifestLayout": [
+        "FULL",
+        "COMPACT"
+      ],
+      "MultiRegionConsistency": [
+        "EVENTUAL",
+        "STRONG"
+      ],
+      "MutualAuthenticationMode": [
+        "off",
+        "passthrough",
+        "verify"
+      ],
+      "NamespaceType": [
+        "HTTP",
+        "DNS_PRIVATE",
+        "DNS_PUBLIC"
+      ],
+      "NatConnectivityType": [
+        "public",
+        "private"
+      ],
+      "NatTrafficDirection": [
+        "OUTBOUND_ONLY",
+        "INBOUND_AND_OUTBOUND",
+        "NONE"
+      ],
+      "NetworkLoadBalancedServiceRecordType": [
+        0,
+        1,
+        2
+      ],
+      "NetworkMode": [
+        "none",
+        "bridge",
+        "awsvpc",
+        "host",
+        "nat"
+      ],
+      "NetworkType": [
+        "IPV4",
+        "DUAL",
+        "IPV6"
+      ],
+      "NodeType": [
+        "coordinator"
+      ],
+      "NodegroupAmiType": [
+        "AL2_x86_64",
+        "AL2_x86_64_GPU",
+        "AL2_ARM_64",
+        "BOTTLEROCKET_ARM_64",
+        "BOTTLEROCKET_x86_64",
+        "BOTTLEROCKET_ARM_64_NVIDIA",
+        "BOTTLEROCKET_x86_64_NVIDIA",
+        "BOTTLEROCKET_ARM_64_FIPS",
+        "BOTTLEROCKET_x86_64_FIPS",
+        "WINDOWS_CORE_2019_x86_64",
+        "WINDOWS_CORE_2022_x86_64",
+        "WINDOWS_FULL_2019_x86_64",
+        "WINDOWS_FULL_2022_x86_64",
+        "AL2023_x86_64_STANDARD",
+        "AL2023_x86_64_NEURON",
+        "AL2023_x86_64_NVIDIA",
+        "AL2023_ARM_64_NVIDIA",
+        "AL2023_ARM_64_STANDARD"
+      ],
+      "NullOrder": [
+        "nulls-first",
+        "nulls-last"
+      ],
+      "NumericFilterKey": [
+        "audio_channels",
+        "audio_sample_rate",
+        "trickplay_height",
+        "video_framerate",
+        "video_height"
+      ],
+      "NumericOverflowHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW"
+      ],
+      "OAuth2CredentialProviderVendor": [
+        "GoogleOauth2",
+        "GithubOauth2",
+        "SlackOauth2",
+        "SalesforceOauth2",
+        "MicrosoftOauth2",
+        "CustomOauth2",
+        "AtlassianOauth2",
+        "LinkedinOauth2",
+        "XOauth2",
+        "OktaOauth2",
+        "OneLoginOauth2",
+        "PingOneOauth2",
+        "FacebookOauth2",
+        "YandexOauth2",
+        "RedditOauth2",
+        "ZoomOauth2",
+        "TwitchOauth2",
+        "SpotifyOauth2",
+        "DropboxOauth2",
+        "NotionOauth2",
+        "HubspotOauth2",
+        "CyberArkOauth2",
+        "FusionAuthOauth2",
+        "Auth0Oauth2",
+        "CognitoOauth2"
+      ],
+      "OCSFSourceType": [
+        "CloudTrail",
+        "Route53Resolver",
+        "VPCFlow",
+        "EKSAudit",
+        "AWSWAF"
+      ],
+      "OCSFVersion": [
+        "V1.1"
+      ],
+      "ObjectLockMode": [
+        "GOVERNANCE",
+        "COMPLIANCE"
+      ],
+      "ObjectOwnership": [
+        "BucketOwnerEnforced",
+        "BucketOwnerPreferred",
+        "ObjectWriter"
+      ],
+      "OidcAttributeRequestMethod": [
+        "GET",
+        "POST"
+      ],
+      "OnDemandAllocationStrategy": [
+        "prioritized",
+        "lowest-price"
+      ],
+      "OnPartialBatchItemFailure": [
+        "AUTOMATIC_BISECT"
+      ],
+      "OpenTableFormat": [
+        "ICEBERG"
+      ],
+      "OperatingSystem": [
+        "AMAZON_LINUX",
+        "AMAZON_LINUX_2",
+        "AMAZON_LINUX_2023",
+        "WINDOWS_2012",
+        "WINDOWS_2016"
+      ],
+      "OperatingSystemType": [
+        0,
+        1,
+        2
+      ],
+      "Operation": [
+        "GetItem",
+        "BatchGetItem",
+        "Scan",
+        "Query",
+        "GetRecords",
+        "PutItem",
+        "DeleteItem",
+        "UpdateItem",
+        "BatchWriteItem",
+        "TransactWriteItems",
+        "TransactGetItems",
+        "ExecuteTransaction",
+        "BatchExecuteStatement",
+        "ExecuteStatement"
+      ],
+      "OperationLevelMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Operator": [
+        "AND",
+        "OR",
+        "NOT"
+      ],
+      "OpsItemCategory": [
+        "Availability",
+        "Cost",
+        "Performance",
+        "Recovery",
+        "Security"
+      ],
+      "OpsItemSeverity": [
+        "1",
+        "2",
+        "3",
+        "4"
+      ],
+      "OrcColumnMappingType": [
+        "name",
+        "position"
+      ],
+      "OrcFormatVersion": [
+        "V0_11",
+        "V0_12"
+      ],
+      "OrchestrationType": [
+        "DEFAULT",
+        "CUSTOM_ORCHESTRATION"
+      ],
+      "OriginAccessControlOriginType": [
+        "s3",
+        "lambda",
+        "mediastore",
+        "mediapackagev2"
+      ],
+      "OriginIpAddressType": [
+        "ipv4",
+        "ipv6",
+        "dualstack"
+      ],
+      "OriginProtocolPolicy": [
+        "http-only",
+        "match-viewer",
+        "https-only"
+      ],
+      "OriginSelectionCriteria": [
+        "default",
+        "media-quality-based"
+      ],
+      "OriginSslPolicy": [
+        "SSLv3",
+        "TLSv1",
+        "TLSv1.1",
+        "TLSv1.2"
+      ],
+      "OutOfInfrequentAccessPolicy": [
+        "AFTER_1_ACCESS"
+      ],
+      "OutputFormat": [
+        "cjs",
+        "esm"
+      ],
+      "OutputLockingMode": [
+        "PIPELINE_LOCKING",
+        "EPOCH_LOCKING"
+      ],
+      "OutputType": [
+        "JSON",
+        "JSONL"
+      ],
+      "ParameterDataType": [
+        "text",
+        "aws:ec2:image"
+      ],
+      "ParameterTier": [
+        "Advanced",
+        "Intelligent-Tiering",
+        "Standard"
+      ],
+      "ParameterType": [
+        "string",
+        "number",
+        "integer",
+        "boolean",
+        "array",
+        "object"
+      ],
+      "ParameterValueType": [
+        "String",
+        "AWS::EC2::AvailabilityZone::Name",
+        "AWS::EC2::Image::Id",
+        "AWS::EC2::Instance::Id",
+        "AWS::EC2::KeyPair::KeyName",
+        "AWS::EC2::SecurityGroup::GroupName",
+        "AWS::EC2::SecurityGroup::Id",
+        "AWS::EC2::Subnet::Id",
+        "AWS::EC2::Volume::Id",
+        "AWS::EC2::VPC::Id",
+        "AWS::Route53::HostedZone::Id"
+      ],
+      "ParamsAndSecretsLogLevel": [
+        "debug",
+        "info",
+        "warn",
+        "error",
+        "none"
+      ],
+      "ParamsAndSecretsVersions": [
+        "1.0.103"
+      ],
+      "ParquetWriterVersion": [
+        "V1",
+        "V2"
+      ],
+      "ParserProcessorType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "Partition": [
+        "aws",
+        "aws-cn",
+        "aws-us-gov",
+        "aws-iso",
+        "aws-iso-b",
+        "aws-iso-f",
+        "aws-iso-e",
+        "aws-eusc"
+      ],
+      "PartitionDateSource": [
+        "EventTime",
+        "DeliveryTime"
+      ],
+      "PartitionProjectionType": [
+        "integer",
+        "date",
+        "enum",
+        "injected"
+      ],
+      "PasskeyUserVerification": [
+        "preferred",
+        "required"
+      ],
+      "PassthroughBehavior": [
+        "WHEN_NO_MATCH",
+        "NEVER",
+        "WHEN_NO_TEMPLATES"
+      ],
+      "PatchType": [
+        "json",
+        "merge",
+        "strategic"
+      ],
+      "PerformanceInsightRetention": [
+        7,
+        31,
+        62,
+        93,
+        124,
+        155,
+        186,
+        217,
+        248,
+        279,
+        310,
+        341,
+        372,
+        403,
+        434,
+        465,
+        496,
+        527,
+        558,
+        589,
+        620,
+        651,
+        682,
+        713,
+        731
+      ],
+      "PerformanceMode": [
+        "generalPurpose",
+        "maxIO"
+      ],
+      "Period": [
+        "DAY",
+        "WEEK",
+        "MONTH"
+      ],
+      "PeriodOverride": [
+        "auto",
+        "inherit"
+      ],
+      "PidMode": [
+        "host",
+        "task"
+      ],
+      "PipeVariable": [
+        "",
+        "",
+        "",
+        "",
+        "",
+        "",
+        "",
+        ""
+      ],
+      "PipelineNotificationEvents": [
+        "codepipeline-pipeline-pipeline-execution-failed",
+        "codepipeline-pipeline-pipeline-execution-canceled",
+        "codepipeline-pipeline-pipeline-execution-started",
+        "codepipeline-pipeline-pipeline-execution-resumed",
+        "codepipeline-pipeline-pipeline-execution-succeeded",
+        "codepipeline-pipeline-pipeline-execution-superseded",
+        "codepipeline-pipeline-stage-execution-started",
+        "codepipeline-pipeline-stage-execution-succeeded",
+        "codepipeline-pipeline-stage-execution-resumed",
+        "codepipeline-pipeline-stage-execution-canceled",
+        "codepipeline-pipeline-stage-execution-failed",
+        "codepipeline-pipeline-action-execution-succeeded",
+        "codepipeline-pipeline-action-execution-failed",
+        "codepipeline-pipeline-action-execution-canceled",
+        "codepipeline-pipeline-action-execution-started",
+        "codepipeline-pipeline-manual-approval-failed",
+        "codepipeline-pipeline-manual-approval-needed",
+        "codepipeline-pipeline-manual-approval-succeeded"
+      ],
+      "PipelineType": [
+        "V1",
+        "V2"
+      ],
+      "PlacementGroupSpreadLevel": [
+        "host",
+        "rack"
+      ],
+      "PlacementGroupStrategy": [
+        "cluster",
+        "partition",
+        "spread"
+      ],
+      "Platform": [
+        "x86-64",
+        "ARM64"
+      ],
+      "Policy": [
+        "ALLOW",
+        "REQUIRE"
+      ],
+      "PolicyEffect": [
+        "permit",
+        "forbid"
+      ],
+      "PolicyValidationReportStatus": [
+        "success",
+        "failure"
+      ],
+      "PolicyValidationReportStatusBeta1": [
+        "success",
+        "failure"
+      ],
+      "PoliticalView": [
+        "IND"
+      ],
+      "PoolState": [
+        "Hibernated",
+        "Running",
+        "Stopped"
+      ],
+      "PositionFiltering": [
+        "TimeBased",
+        "DistanceBased",
+        "AccuracyBased"
+      ],
+      "PredefinedMetric": [
+        "ASGAverageCPUUtilization",
+        "ASGAverageNetworkIn",
+        "ASGAverageNetworkOut",
+        "ALBRequestCountPerTarget"
+      ],
+      "PredicateLogical": [
+        "AND",
+        "ANY"
+      ],
+      "Preset": [
+        "CONSTRAINED_BANDWIDTH_DELIVERY",
+        "HIGHER_BANDWIDTH_DELIVERY"
+      ],
+      "PresetSpeke20Audio": [
+        "PRESET_AUDIO_1",
+        "PRESET_AUDIO_2",
+        "PRESET_AUDIO_3",
+        "SHARED",
+        "UNENCRYPTED"
+      ],
+      "PresetSpeke20Video": [
+        "PRESET_VIDEO_1",
+        "PRESET_VIDEO_2",
+        "PRESET_VIDEO_3",
+        "PRESET_VIDEO_4",
+        "PRESET_VIDEO_5",
+        "PRESET_VIDEO_6",
+        "PRESET_VIDEO_7",
+        "PRESET_VIDEO_8",
+        "SHARED",
+        "UNENCRYPTED"
+      ],
+      "PriceClass": [
+        "PriceClass_100",
+        "PriceClass_200",
+        "PriceClass_All"
+      ],
+      "PrimarySource": [
+        0,
+        1
+      ],
+      "PrincipalScope": [
+        "all",
+        "specific"
+      ],
+      "PriorityType": [
+        "LATENCY",
+        "COST",
+        "DESTINATION",
+        "LOCATION"
+      ],
+      "ProcessorMode": [
+        "INLINE",
+        "DISTRIBUTED"
+      ],
+      "ProcessorType": [
+        "STANDARD",
+        "EXPRESS"
+      ],
+      "ProjectNotificationEvents": [
+        "codebuild-project-build-state-failed",
+        "codebuild-project-build-state-succeeded",
+        "codebuild-project-build-state-in-progress",
+        "codebuild-project-build-state-stopped",
+        "codebuild-project-build-phase-failure",
+        "codebuild-project-build-phase-success"
+      ],
+      "ProjectVisibility": [
+        "PUBLIC_READ",
+        "PRIVATE"
+      ],
+      "ProjectionType": [
+        "KEYS_ONLY",
+        "INCLUDE",
+        "ALL"
+      ],
+      "PromptTemplateType": [
+        "TEXT",
+        "CHAT"
+      ],
+      "PropagateManagedInstancesTags": [
+        "CAPACITY_PROVIDER",
+        "NONE"
+      ],
+      "PropagatedTagSource": [
+        "SERVICE",
+        "TASK_DEFINITION",
+        "NONE"
+      ],
+      "Protocol": [
+        "HTTP",
+        "HTTPS",
+        "TCP",
+        "TLS",
+        "UDP",
+        "TCP_UDP"
+      ],
+      "ProtocolConfigType": [
+        "failover",
+        "merge"
+      ],
+      "ProtocolType": [
+        "MCP",
+        "HTTP",
+        "A2A",
+        "AGUI"
+      ],
+      "ProviderType": [
+        "CodeStarSourceConnection"
+      ],
+      "ProxyEndpointTargetRole": [
+        "READ_WRITE",
+        "READ_ONLY"
+      ],
+      "PythonVersion": [
+        "2",
+        "3",
+        "3.9"
+      ],
+      "QueryLanguage": [
+        "JSONPath",
+        "JSONata"
+      ],
+      "QueueEncryption": [
+        "NONE",
+        "KMS_MANAGED",
+        "KMS",
+        "SQS_MANAGED"
+      ],
+      "QuoteCharacter": [
+        '"',
+        "'"
+      ],
+      "ReadWriteType": [
+        "ReadOnly",
+        "WriteOnly",
+        "All",
+        "None"
+      ],
+      "ReceiptFilterPolicy": [
+        "Allow",
+        "Block"
+      ],
+      "RecordType": [
+        "A",
+        "AAAA",
+        "CAA",
+        "CNAME",
+        "DS",
+        "HTTPS",
+        "MX",
+        "NAPTR",
+        "NS",
+        "PTR",
+        "SOA",
+        "SPF",
+        "SRV",
+        "SSHFP",
+        "SVCB",
+        "TLSA",
+        "TXT"
+      ],
+      "RecordWrapperType": [
+        "None",
+        "RecordIO"
+      ],
+      "RecordingMode": [
+        "INTERVAL",
+        "DISABLED"
+      ],
+      "RecursiveLoop": [
+        "Allow",
+        "Terminate"
+      ],
+      "RedirectProtocol": [
+        "http",
+        "https"
+      ],
+      "RedirectStatus": [
+        "200",
+        "301",
+        "302",
+        "404",
+        "404-200"
+      ],
+      "RedrivePermission": [
+        "allowAll",
+        "denyAll",
+        "byQueue"
+      ],
+      "ReferenceRendering": [
+        0,
+        1
+      ],
+      "ReferenceStrength": [
+        "strong",
+        "weak",
+        "both"
+      ],
+      "RegistryType": [
+        "private",
+        "public"
+      ],
+      "RelayConversationHistoryType": [
+        "TO_COLLABORATOR",
+        "DISABLED"
+      ],
+      "RemovalPolicy": [
+        "destroy",
+        "retain",
+        "snapshot",
+        "retain-on-update-or-delete"
+      ],
+      "RenditionSelection": [
+        "ALL",
+        "NONE",
+        "CUSTOM"
+      ],
+      "ReplicationOverwriteProtection": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ReportGroupType": [
+        "TEST",
+        "CODE_COVERAGE"
+      ],
+      "RepositoryEventTrigger": [
+        "all",
+        "updateReference",
+        "createReference",
+        "deleteReference"
+      ],
+      "RepositoryNotificationEvents": [
+        "codecommit-repository-comments-on-commits",
+        "codecommit-repository-comments-on-pull-requests",
+        "codecommit-repository-approvals-status-changed",
+        "codecommit-repository-approvals-rule-override",
+        "codecommit-repository-pull-request-created",
+        "codecommit-repository-pull-request-source-updated",
+        "codecommit-repository-pull-request-status-changed",
+        "codecommit-repository-pull-request-merged",
+        "codecommit-repository-branches-and-tags-created",
+        "codecommit-repository-branches-and-tags-deleted",
+        "codecommit-repository-branches-and-tags-updated"
+      ],
+      "RepositoryService": [
+        "ECR"
+      ],
+      "RepositoryVisibility": [
+        0,
+        1
+      ],
+      "RequestMetricsStatus": [
+        "Enabled",
+        "Disabled"
+      ],
+      "RequireConfirmation": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Resolution": [
+        "FULL_HD",
+        "HD",
+        "SD",
+        "LOWEST_RESOLUTION"
+      ],
+      "ResolutionTypeHint": [
+        "string",
+        "number",
+        "string-list"
+      ],
+      "ResolverLevelMetricsBehavior": [
+        "FULL_REQUEST_RESOLVER_METRICS",
+        "PER_RESOLVER_METRICS"
+      ],
+      "ResolverMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ResourceAction": [
+        "pause-cluster",
+        "resume-cluster",
+        "failover-primary-compute"
+      ],
+      "ResourceScope": [
+        "all",
+        "type",
+        "specific"
+      ],
+      "ResourceToReplicateTags": [
+        "lambda-function"
+      ],
+      "ResponseTransferMode": [
+        "BUFFERED",
+        "STREAM"
+      ],
+      "RestApiMode": [
+        "overwrite",
+        "merge"
+      ],
+      "Result": [
+        "ROLLBACK",
+        "FAIL",
+        "RETRY",
+        "SKIP"
+      ],
+      "RetentionDays": [
+        1,
+        3,
+        5,
+        7,
+        14,
+        30,
+        60,
+        90,
+        120,
+        150,
+        180,
+        365,
+        400,
+        545,
+        731,
+        1096,
+        1827,
+        2192,
+        2557,
+        2922,
+        3288,
+        3653,
+        9999
+      ],
+      "RetryMode": [
+        "ALL_ACTIONS",
+        "FAILED_ACTIONS"
+      ],
+      "RevisionType": [
+        "COMMIT_ID",
+        "IMAGE_DIGEST",
+        "S3_OBJECT_VERSION_ID",
+        "S3_OBJECT_KEY"
+      ],
+      "RevocationType": [
+        "CRL"
+      ],
+      "RoleMappingMatchType": [
+        "Equals",
+        "Contains",
+        "StartsWith",
+        "NotEqual"
+      ],
+      "RouterType": [
+        "CarrierGateway",
+        "EgressOnlyInternetGateway",
+        "Gateway",
+        "Instance",
+        "LocalGateway",
+        "NatGateway",
+        "NetworkInterface",
+        "TransitGateway",
+        "VpcPeeringConnection",
+        "VpcEndpoint",
+        "CoreNetwork"
+      ],
+      "RoutingPolicy": [
+        "WEIGHTED",
+        "MULTIVALUE"
+      ],
+      "Runtime": [
+        "nodejs20.x",
+        "python3.9",
+        "python3.10",
+        "python3.11",
+        "python3.13",
+        "python3.13"
+      ],
+      "RuntimeFamily": [
+        0,
+        1,
+        2
+      ],
+      "S3DataDistributionType": [
+        "FullyReplicated",
+        "ShardedByS3Key"
+      ],
+      "S3DataType": [
+        "ManifestFile",
+        "S3Prefix",
+        "AugmentedManifestFile"
+      ],
+      "S3EncryptionMode": [
+        "SSE-S3",
+        "SSE-KMS"
+      ],
+      "S3LogsDeliveryPermissionsVersion": [
+        "V1",
+        "V2"
+      ],
+      "S3ObjectStorageMode": [
+        "COPY",
+        "REFERENCE"
+      ],
+      "S3OutputFormat": [
+        "plain",
+        "json",
+        "w3c"
+      ],
+      "S3Trigger": [
+        "None",
+        "Poll",
+        "Events"
+      ],
+      "SSLMethod": [
+        "sni-only",
+        "vip",
+        "static-ip"
+      ],
+      "ScaleInProtectedInstances": [
+        "Refresh",
+        "Ignore",
+        "Wait"
+      ],
+      "ScalingEvent": [
+        "autoscaling:EC2_INSTANCE_LAUNCH",
+        "autoscaling:EC2_INSTANCE_TERMINATE",
+        "autoscaling:EC2_INSTANCE_TERMINATE_ERROR",
+        "autoscaling:EC2_INSTANCE_LAUNCH_ERROR",
+        "autoscaling:TEST_NOTIFICATION"
+      ],
+      "ScalingMode": [
+        "STANDARD",
+        "MANAGED"
+      ],
+      "ScalingProcess": [
+        "Launch",
+        "Terminate",
+        "HealthCheck",
+        "ReplaceUnhealthy",
+        "AZRebalance",
+        "AlarmNotification",
+        "ScheduledActions",
+        "AddToLoadBalancer",
+        "InstanceRefresh"
+      ],
+      "ScheduleStartCondition": [
+        "EXPRESSION_MATCH_ONLY",
+        "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE"
+      ],
+      "SchemaDefinitionType": [
+        "string",
+        "number",
+        "object",
+        "array",
+        "boolean",
+        "integer"
+      ],
+      "Scope": [
+        "task",
+        "shared"
+      ],
+      "ScteInSegments": [
+        "NONE",
+        "ALL"
+      ],
+      "ScteMessageType": [
+        "SPLICE_INSERT",
+        "BREAK",
+        "PROVIDER_ADVERTISEMENT",
+        "DISTRIBUTOR_ADVERTISEMENT",
+        "PROVIDER_PLACEMENT_OPPORTUNITY",
+        "DISTRIBUTOR_PLACEMENT_OPPORTUNITY",
+        "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY",
+        "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY",
+        "PROGRAM"
+      ],
+      "SecurityPolicy": [
+        "TLS_1_0",
+        "TLS_1_2"
+      ],
+      "SecurityPolicyProtocol": [
+        "SSLv3",
+        "TLSv1",
+        "TLSv1_2016",
+        "TLSv1.1_2016",
+        "TLSv1.2_2018",
+        "TLSv1.2_2019",
+        "TLSv1.2_2021",
+        "TLSv1.2_2025",
+        "TLSv1.3_2025"
+      ],
+      "SegmentLengthUnits": [
+        "MILLISECONDS",
+        "SECONDS"
+      ],
+      "SegmentTemplateFormat": [
+        "NUMBER_WITH_TIMELINE"
+      ],
+      "ServerSideEncryption": [
+        "AES256",
+        "aws:kms",
+        "aws:kms:dsse"
+      ],
+      "ServiceConnectAccessLogFormat": [
+        "TEXT",
+        "JSON"
+      ],
+      "ServiceIntegrationPattern": [
+        "FIRE_AND_FORGET",
+        "SYNC",
+        "WAIT_FOR_TASK_TOKEN"
+      ],
+      "ServiceManager": [
+        0,
+        1,
+        2
+      ],
+      "ServiceNamespace": [
+        "ecs",
+        "elasticmapreduce",
+        "ec2",
+        "appstream",
+        "dynamodb",
+        "rds",
+        "sagemaker",
+        "custom-resource",
+        "lambda",
+        "comprehend",
+        "kafka",
+        "elasticache",
+        "neptune",
+        "cassandra",
+        "workspaces"
+      ],
+      "Shading": [
+        "none",
+        "above",
+        "below"
+      ],
+      "ShardLevelMetrics": [
+        "IncomingBytes",
+        "IncomingRecords",
+        "IteratorAgeMilliseconds",
+        "OutgoingBytes",
+        "OutgoingRecords",
+        "ReadProvisionedThroughputExceeded",
+        "WriteProvisionedThroughputExceeded",
+        "ALL"
+      ],
+      "SharePermission": [
+        0,
+        1
+      ],
+      "SigningAlgorithm": [
+        "rsa-sha256"
+      ],
+      "SigningBehavior": [
+        "always",
+        "never",
+        "no-override"
+      ],
+      "SigningProtocol": [
+        "sigv4"
+      ],
+      "SizeRoundingBehavior": [
+        0,
+        1,
+        2
+      ],
+      "SnsActionMessageFormat": [
+        "RAW",
+        "JSON"
+      ],
+      "SortDirection": [
+        "asc",
+        "desc"
+      ],
+      "SourceMapMode": [
+        "default",
+        "external",
+        "inline",
+        "both"
+      ],
+      "SourcePriorityMode": [
+        "NO_PRIORITY",
+        "PRIMARY_SECONDARY"
+      ],
+      "SourceType": [
+        "lambda",
+        "sqs",
+        "sns",
+        "events"
+      ],
+      "SplitType": [
+        "None",
+        "Line",
+        "RecordIO",
+        "TFRecord"
+      ],
+      "SplunkLogFormat": [
+        "inline",
+        "json",
+        "raw"
+      ],
+      "SpotAllocationStrategy": [
+        "lowest-price",
+        "capacity-optimized",
+        "capacity-optimized-prioritized",
+        "price-capacity-optimized"
+      ],
+      "SpotInstanceInterruption": [
+        "stop",
+        "terminate",
+        "hibernate"
+      ],
+      "SpotRequestType": [
+        "one-time",
+        "persistent"
+      ],
+      "SslPolicy": [
+        "ELBSecurityPolicy-TLS13-1-2-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-PQ-2025-09",
+        "ELBSecurityPolicy-2016-08",
+        "ELBSecurityPolicy-TLS13-1-2-Res-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06",
+        "ELBSecurityPolicy-TLS13-1-0-2021-06",
+        "ELBSecurityPolicy-TLS13-1-1-2021-06",
+        "ELBSecurityPolicy-TLS13-1-3-2021-06",
+        "ELBSecurityPolicy-TLS13-1-3-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Res-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-0-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-3-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-1-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-0-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-3-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-0-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-FS-1-2-Res-2020-10",
+        "ELBSecurityPolicy-FS-1-2-Res-2019-08",
+        "ELBSecurityPolicy-FS-1-2-2019-08",
+        "ELBSecurityPolicy-FS-1-1-2019-08",
+        "ELBSecurityPolicy-FS-2018-06",
+        "ELBSecurityPolicy-TLS-1-2-2017-01",
+        "ELBSecurityPolicy-TLS-1-2-Ext-2018-06",
+        "ELBSecurityPolicy-TLS-1-1-2017-01",
+        "ELBSecurityPolicy-TLS-1-0-2015-04"
+      ],
+      "StackSetOrganizationsAutoDeployment": [
+        "Enabled",
+        "Disabled",
+        "EnabledWithStackRetention"
+      ],
+      "StandardThreatProtectionMode": [
+        "ENFORCED",
+        "AUDIT",
+        "OFF"
+      ],
+      "StandbyInstances": [
+        "Terminate",
+        "Ignore",
+        "Wait"
+      ],
+      "StartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST",
+        "AT_TIMESTAMP"
+      ],
+      "State": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "StateMachineInvocationType": [
+        "FIRE_AND_FORGET",
+        "REQUEST_RESPONSE"
+      ],
+      "StateMachineType": [
+        "EXPRESS",
+        "STANDARD"
+      ],
+      "StateType": [
+        "Pass",
+        "Task",
+        "Choice",
+        "Wait",
+        "Succeed",
+        "Fail",
+        "Parallel",
+        "Map"
+      ],
+      "Statistic": [
+        "SampleCount",
+        "Average",
+        "Sum",
+        "Minimum",
+        "Maximum"
+      ],
+      "Status": [
+        "pass",
+        "fail"
+      ],
+      "Storage": [
+        "SEQUENTIAL",
+        "LATEST"
+      ],
+      "StorageClass": [
+        "STANDARD",
+        "REDUCED_REDUNDANCY",
+        "STANDARD_IA",
+        "ONEZONE_IA",
+        "INTELLIGENT_TIERING",
+        "GLACIER",
+        "DEEP_ARCHIVE"
+      ],
+      "StorageMode": [
+        "LOCAL",
+        "TIERED"
+      ],
+      "StorageParameters": [
+        "skip.header.line.count",
+        "data_cleansing_enabled",
+        "compression_type",
+        "invalid_char_handling",
+        "replacement_char",
+        "numeric_overflow_handling",
+        "surplus_bytes_handling",
+        "surplus_char_handling",
+        "column_count_mismatch_handling",
+        "num_rows",
+        "serialization.null.format",
+        "orc.schema.resolution",
+        "write.parallel",
+        "write.maxfilesize.mb",
+        "write.kms.key.id"
+      ],
+      "StorageType": [
+        "standard",
+        "gp2",
+        "gp3",
+        "io1",
+        "io2"
+      ],
+      "StreamDeliveryContentLevel": [
+        "METADATA_ONLY",
+        "FULL_CONTENT"
+      ],
+      "StreamDeliveryContentType": [
+        "MEMORY_RECORDS"
+      ],
+      "StreamEncryption": [
+        "NONE",
+        "KMS",
+        "MANAGED"
+      ],
+      "StreamEncryptionType": [
+        0,
+        1,
+        2
+      ],
+      "StreamMode": [
+        "PROVISIONED",
+        "ON_DEMAND"
+      ],
+      "StreamViewType": [
+        "NEW_IMAGE",
+        "OLD_IMAGE",
+        "NEW_AND_OLD_IMAGES",
+        "KEYS_ONLY"
+      ],
+      "StringMutatorType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "Style": [
+        "VectorEsriNavigation",
+        "RasterEsriImagery",
+        "VectorEsriLightGrayCanvas",
+        "VectorEsriTopographic",
+        "VectorEsriStreets",
+        "VectorEsriDarkGrayCanvas",
+        "VectorHereExplore",
+        "RasterHereExploreSatellite",
+        "HybridHereExploreSatellite",
+        "VectorHereContrast",
+        "VectorHereExploreTruck",
+        "VectorGrabStandardLight",
+        "VectorGrabStandardDark",
+        "VectorOpenDataStandardLight",
+        "VectorOpenDataStandardDark",
+        "VectorOpenDataVisualizationLight",
+        "VectorOpenDataVisualizationDark"
+      ],
+      "SubRecordType": [
+        "JSON",
+        "DELIMITED"
+      ],
+      "SubnetType": [
+        "Isolated",
+        "Deprecated_Isolated",
+        "Private",
+        "Deprecated_Private_NAT",
+        "Deprecated_Private",
+        "Public"
+      ],
+      "SubscriptionProtocol": [
+        "http",
+        "https",
+        "email",
+        "email-json",
+        "sms",
+        "sqs",
+        "application",
+        "lambda",
+        "firehose"
+      ],
+      "SuppressionReasons": [
+        "BOUNCES_AND_COMPLAINTS",
+        "BOUNCES_ONLY",
+        "COMPLAINTS_ONLY"
+      ],
+      "SurplusBytesHandlingAction": [
+        "SET_TO_NULL",
+        "DISABLED",
+        "FAIL",
+        "DROP_ROW",
+        "TRUNCATE"
+      ],
+      "SurplusCharHandlingAction": [
+        "SET_TO_NULL",
+        "DISABLED",
+        "FAIL",
+        "DROP_ROW",
+        "TRUNCATE"
+      ],
+      "SymlinkFollowMode": [
+        "never",
+        "always",
+        "external",
+        "internal-only"
+      ],
+      "SynthesisMessageLevel": [
+        "info",
+        "warning",
+        "error"
+      ],
+      "SystemLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN"
+      ],
+      "TLSSecurityPolicy": [
+        "Policy-Min-TLS-1-0-2019-07",
+        "Policy-Min-TLS-1-2-2019-07",
+        "Policy-Min-TLS-1-2-PFS-2023-10"
+      ],
+      "TableAction": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6
+      ],
+      "TableBucketEncryption": [
+        "aws:kms",
+        "AES256"
+      ],
+      "TableClass": [
+        "STANDARD",
+        "STANDARD_INFREQUENT_ACCESS"
+      ],
+      "TableDistStyle": [
+        "AUTO",
+        "EVEN",
+        "KEY",
+        "ALL"
+      ],
+      "TableEncryption": [
+        "AWS_OWNED",
+        "CUSTOMER_MANAGED",
+        "AWS_MANAGED"
+      ],
+      "TableLayout": [
+        "horizontal",
+        "vertical"
+      ],
+      "TableSortStyle": [
+        "AUTO",
+        "COMPOUND",
+        "INTERLEAVED"
+      ],
+      "TableSummaryColumn": [
+        "MIN",
+        "MAX",
+        "SUM",
+        "AVG"
+      ],
+      "TagMutability": [
+        "MUTABLE",
+        "IMMUTABLE",
+        "IMMUTABLE_WITH_EXCLUSION",
+        "MUTABLE_WITH_EXCLUSION"
+      ],
+      "TagOperation": [
+        "STRINGEQUALS",
+        "dummy"
+      ],
+      "TagStatus": [
+        "any",
+        "tagged",
+        "untagged"
+      ],
+      "TagType": [
+        "StandardTag",
+        "AutoScalingGroupTag",
+        "StringToStringMap",
+        "KeyValue",
+        "NotTaggable"
+      ],
+      "TaintEffect": [
+        "NO_SCHEDULE",
+        "PREFER_NO_SCHEDULE",
+        "NO_EXECUTE"
+      ],
+      "TargetGroupIpAddressType": [
+        "ipv4",
+        "ipv6"
+      ],
+      "TargetGroupLoadBalancingAlgorithmType": [
+        "round_robin",
+        "least_outstanding_requests",
+        "weighted_random"
+      ],
+      "TargetType": [
+        "instance",
+        "ip",
+        "lambda",
+        "alb"
+      ],
+      "TcpRetryEvent": [
+        "connection-error"
+      ],
+      "TemplateType": [
+        "Text",
+        "Object"
+      ],
+      "Tenancy": [
+        "default",
+        "dedicated",
+        "host"
+      ],
+      "TerminateHookAbandonAction": [
+        "retain",
+        "terminate"
+      ],
+      "TerminationPolicy": [
+        "AllocationStrategy",
+        "ClosestToNextInstanceHour",
+        "Default",
+        "NewestInstance",
+        "OldestInstance",
+        "OldestLaunchConfiguration",
+        "OldestLaunchTemplate",
+        "CustomLambdaFunction"
+      ],
+      "TextFilterKey": [
+        "audio_language",
+        "subtitle_language"
+      ],
+      "TextWidgetBackground": [
+        "solid",
+        "transparent"
+      ],
+      "ThroughputMode": [
+        "bursting",
+        "provisioned",
+        "elastic"
+      ],
+      "TierConfig": [
+        "CLASSIC",
+        "STANDARD"
+      ],
+      "TimeoutAction": [
+        "ForceApplyCapacityChange",
+        "RollbackCapacityChange"
+      ],
+      "TlsMode": [
+        "STRICT",
+        "PERMISSIVE",
+        "DISABLED"
+      ],
+      "TlsPolicy": [
+        "Optional",
+        "Require"
+      ],
+      "TmpfsMountOption": [
+        "defaults",
+        "ro",
+        "rw",
+        "suid",
+        "nosuid",
+        "dev",
+        "nodev",
+        "exec",
+        "noexec",
+        "sync",
+        "async",
+        "dirsync",
+        "remount",
+        "mand",
+        "nomand",
+        "atime",
+        "noatime",
+        "diratime",
+        "nodiratime",
+        "bind",
+        "rbind",
+        "unbindable",
+        "runbindable",
+        "private",
+        "rprivate",
+        "shared",
+        "rshared",
+        "slave",
+        "rslave",
+        "relatime",
+        "norelatime",
+        "strictatime",
+        "nostrictatime",
+        "mode",
+        "uid",
+        "gid",
+        "nr_inodes",
+        "nr_blocks",
+        "mpol"
+      ],
+      "TraceConfigurationVendor": [
+        "AWSXRAY"
+      ],
+      "Tracing": [
+        "Active",
+        "PassThrough",
+        "Disabled"
+      ],
+      "TracingConfig": [
+        "PassThrough",
+        "Active"
+      ],
+      "TrafficDirection": [
+        0,
+        1
+      ],
+      "Transformation": [
+        "NONE",
+        "COMPACT",
+        "FLATTEN"
+      ],
+      "TransitGatewayFeatureStatus": [
+        "enable",
+        "disable"
+      ],
+      "TransitionDefaultMinimumObjectSize": [
+        "all_storage_classes_128K",
+        "varies_by_storage_class"
+      ],
+      "TransportProtocol": [
+        "tcp",
+        "udp"
+      ],
+      "TreatMissingData": [
+        "breaching",
+        "notBreaching",
+        "ignore",
+        "missing"
+      ],
+      "TrickplayType": [
+        "iframe",
+        "image",
+        "none"
+      ],
+      "TriggerInvalidation": [
+        "WHEN_FUNCTION_CHANGES"
+      ],
+      "TsDrmSystem": [
+        "FAIRPLAY",
+        "CLEAR_KEY_AES_128"
+      ],
+      "TsEncryptionMethod": [
+        "AES_128",
+        "SAMPLE_AES"
+      ],
+      "TtmlProfile": [
+        "IMSC_1",
+        "EBU_TT_D_101"
+      ],
+      "TypeConverterType": [
+        "boolean",
+        "integer",
+        "double",
+        "string"
+      ],
+      "URLEncodingFormat": [
+        "BRACKETS",
+        "COMMAS",
+        "DEFAULT",
+        "INDICES",
+        "NONE",
+        "REPEAT"
+      ],
+      "UlimitName": [
+        "core",
+        "cpu",
+        "data",
+        "fsize",
+        "locks",
+        "memlock",
+        "msgqueue",
+        "nice",
+        "nofile",
+        "nproc",
+        "rss",
+        "rtprio",
+        "rttime",
+        "sigpending",
+        "stack"
+      ],
+      "UnauthenticatedAction": [
+        "deny",
+        "allow",
+        "authenticate"
+      ],
+      "Unit": [
+        "Seconds",
+        "Microseconds",
+        "Milliseconds",
+        "Bytes",
+        "Kilobytes",
+        "Megabytes",
+        "Gigabytes",
+        "Terabytes",
+        "Bits",
+        "Kilobits",
+        "Megabits",
+        "Gigabits",
+        "Terabits",
+        "Percent",
+        "Count",
+        "Bytes/Second",
+        "Kilobytes/Second",
+        "Megabytes/Second",
+        "Gigabytes/Second",
+        "Terabytes/Second",
+        "Bits/Second",
+        "Kilobits/Second",
+        "Megabits/Second",
+        "Gigabits/Second",
+        "Terabits/Second",
+        "Count/Second",
+        "None"
+      ],
+      "UnreferencedFileRemovalStatus": [
+        "Enabled",
+        "Disabled"
+      ],
+      "UntrustedArtifactOnDeployment": [
+        "Enforce",
+        "Warn"
+      ],
+      "UpdateType": [
+        "None",
+        "Replace",
+        "RollingUpdate"
+      ],
+      "UsagePlanKeyType": [
+        "API_KEY"
+      ],
+      "UserPoolDefaultAction": [
+        "ALLOW",
+        "DENY"
+      ],
+      "UserPoolIdentityProviderSamlMetadataType": [
+        "url",
+        "file"
+      ],
+      "ValidationMethod": [
+        "EMAIL",
+        "DNS"
+      ],
+      "ValidatorType": [
+        "JSON_SCHEMA",
+        "LAMBDA"
+      ],
+      "VariableInputType": [
+        "input",
+        "radio",
+        "select"
+      ],
+      "VariableType": [
+        "property",
+        "pattern"
+      ],
+      "VectorType": [
+        "FLOAT32",
+        "BINARY"
+      ],
+      "VendedLogType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "VerificationEmailStyle": [
+        "CONFIRM_WITH_CODE",
+        "CONFIRM_WITH_LINK"
+      ],
+      "VersionConsistency": [
+        "enabled",
+        "disabled"
+      ],
+      "VerticalShading": [
+        "none",
+        "before",
+        "after"
+      ],
+      "VideoCodec": [
+        "H264",
+        "H265",
+        "AV1"
+      ],
+      "VideoCodecType": [
+        "H264",
+        "H265",
+        "AV1",
+        "FRAME_CAPTURE"
+      ],
+      "VideoDynamicRange": [
+        "dv",
+        "hdr10",
+        "hlg",
+        "sdr"
+      ],
+      "ViewerProtocolPolicy": [
+        "https-only",
+        "redirect-to-https",
+        "allow-all"
+      ],
+      "Visibility": [
+        "GLOBAL",
+        "PRIVATE"
+      ],
+      "VpcEndpointDnsRecordIpType": [
+        "ipv4",
+        "ipv6",
+        "dualstack",
+        "service-defined"
+      ],
+      "VpcEndpointIpAddressType": [
+        "ipv4",
+        "ipv6",
+        "dualstack"
+      ],
+      "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint": [
+        "AllResolvers",
+        "OnlyInboundResolver"
+      ],
+      "VpcEndpointType": [
+        "Interface",
+        "Gateway",
+        "GatewayLoadBalancer",
+        "ServiceNetwork",
+        "Resource"
+      ],
+      "VpcSubnetGroupType": [
+        "Public",
+        "Private",
+        "Isolated"
+      ],
+      "VpnConnectionType": [
+        "ipsec.1",
+        "dummy"
+      ],
+      "VpnPort": [
+        443,
+        1194
+      ],
+      "WebSocketAuthorizerType": [
+        "REQUEST",
+        "AWS_IAM"
+      ],
+      "WebSocketIntegrationType": [
+        "AWS_PROXY",
+        "MOCK",
+        "AWS"
+      ],
+      "WebhookFilterTypes": [
+        "FILE_PATH",
+        "COMMIT_MESSAGE",
+        "HEAD_REF",
+        "ACTOR_ACCOUNT_ID",
+        "BASE_REF",
+        "REPOSITORY_NAME"
+      ],
+      "Weekday": [
+        "1",
+        "2",
+        "3",
+        "4",
+        "5",
+        "6",
+        "7"
+      ],
+      "WindowsImageType": [
+        "WINDOWS_CONTAINER",
+        "WINDOWS_SERVER_2019_CONTAINER",
+        "WINDOWS_SERVER_2022_CONTAINER"
+      ],
+      "WindowsOptimizedVersion": [
+        "2025",
+        "2022",
+        "2019",
+        "2016"
+      ],
+      "WindowsVersion": [
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.22",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.22",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.23",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.23",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.24",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.24",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.25",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.25",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.26",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.26",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.27",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.27",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.28",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.28",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.23",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.23",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.24",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.24",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.25",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.25",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.26",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.26",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.27",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.27",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.28",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.28",
+        "Windows_Server-1709-English-Core-ContainersLatest",
+        "Windows_Server-1709-English-Core-Base",
+        "Windows_Server-1803-English-Core-Base",
+        "Windows_Server-1803-English-Core-ContainersLatest",
+        "Windows_Server-1809-English-Core-Base",
+        "Windows_Server-1809-English-Core-ContainersLatest",
+        "Windows_Server-2003-R2_SP2-Language_Packs-32Bit-Base",
+        "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Express",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Standard",
+        "Windows_Server-2003-R2_SP2-English-32Bit-Base",
+        "Windows_Server-2003-R2_SP2-English-64Bit-Base",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Express",
+        "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Standard",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-Base",
+        "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Express",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2008-R2_SP1-Korean-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Chinese_Hong_Kong_SAR-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Chinese_PRC-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-SP2-English-32Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-Base",
+        "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-SP2-English-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_RTM_SP2_Enterprise",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-SP2-Portuguese_Brazil-32Bit-Base",
+        "Windows_Server-2008-SP2-Portugese_Brazil-32Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Core_SQL_2012_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Core",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SharePoint_2010_SP2_Foundation",
+        "Windows_Server-2012-R2_RTM-Chinese_Simplified-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Chinese_Traditional-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Dutch-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Enterprise",
+        "Windows_Server-2012-R2_RTM-Hungarian-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Core",
+        "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Core",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-RTM-Italian-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Express",
+        "Windows_Server-2012-R2_RTM-English-Deep-Learning",
+        "Windows_Server-2012-R2_RTM-German-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Express",
+        "Windows_Server-2012-R2_RTM-Russian-64Bit-Base",
+        "Windows_Server-2012-RTM-Chinese_Traditional_Hong_Kong_SAR-64Bit-Base",
+        "Windows_Server-2012-RTM-Hungarian-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-RTM-French-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-French-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Polish-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-Core",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Enterprise",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-RTM-Swedish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portuguese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portugese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Swedish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2012-RTM-Chinese_Traditional-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-RTM-Czech-64Bit-Base",
+        "Windows_Server-2012-RTM-Turkish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-HyperV",
+        "Windows_Server-2012-RTM-Korean-64Bit-Base",
+        "Windows_Server-2012-RTM-Russian-64Bit-Base",
+        "Windows_Server-2012_R2_RTM-English-Full-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-R2_RTM-Italian-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-R2_RTM-Czech-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Standard",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-SP2-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2008-SP2-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2012-RTM-Japanese-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012_RTM-English-Full-Base",
+        "Windows_Server-2012-R2-English-STIG-Full",
+        "Windows_Server-2012-RTM-Portuguese_Portugal-64Bit-Base",
+        "Windows_Server-2012-RTM-Portugese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-Base",
+        "Windows_Server-2012-RTM-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2012-RTM-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-P3",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-Spanish-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Standard",
+        "Windows_Server-2012-R2-English-STIG-Core",
+        "Windows_Server-2012-R2_RTM-Turkish-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2012-RTM-Polish-64Bit-Base",
+        "Windows_Server-2012-RTM-Spanish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Web",
+        "Windows_Server-2012-R2_RTM-Korean-64Bit-Base",
+        "Windows_Server-2012-RTM-Dutch-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Chinese_Traditional_Hong_Kong-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2012-RTM-Chinese_Simplified-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-Core-Containers",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Web",
+        "Windows_Server-2016-German-Full-Base",
+        "Windows_Server-2016-Germal-Full-Base",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Express",
+        "Windows_Server-2016-English-Deep-Learning",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2016-Korean-Full-Base",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Polish-Full-Base",
+        "Windows_Server-2016-English-Full-Containers",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-Russian-Full-Base",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Express",
+        "Windows_Server-2016-Italian-Full-Base",
+        "Windows_Server-2016-Spanish-Full-Base",
+        "Windows_Server-2012-RTM-German-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-English-Full-HyperV",
+        "Windows_Server-2016-English-Core-ContainersLatest",
+        "Windows_Server-2016-Dutch-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2016-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2016-Hungarian-Full-Base",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-Base",
+        "Windows_Server-2016-English-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2017_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Web",
+        "Windows_Server-2016-Swedish-Full-Base",
+        "Windows_Server-2016-Turkish-Full-Base",
+        "Windows_Server-2016-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2016-Portugese_Brazil-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2019_Standard",
+        "Windows_Server-2016-English-Full-SQL_2014_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Express",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Web",
+        "Windows_Server-2016-English-Full-SQL_2017_Standard",
+        "Windows_Server-2016-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2016-Portugese_Portugal-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2014_SP3_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2016-English-Full-SQL_2019_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-STIG-Core",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-English-Full-ECS_Optimized",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Web",
+        "Windows_Server-2016-English-P3",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2016-Japanese-Full-Base",
+        "Windows_Server-2016-Chinese_Simplified-Full-Base",
+        "Windows_Server-2016-French-Full-Base",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-Czech-Full-Base",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Chinese_Traditional-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2016-English-Full-SQL_2017_Express",
+        "Windows_Server-2016-English-Full-SQL_2019_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2016-English-Tesla",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2016-English-STIG-Full",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Express",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2017_Web",
+        "Windows_Server-2019-French-Full-Base",
+        "Windows_Server-2019-Korean-Full-Base",
+        "Windows_Server-2019-Italian-Full-Base",
+        "Windows_Server-2019-Chinese_Simplified-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2019-English-Full-HyperV",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2019-Hungarian-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2019-Turkish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2019_Standard",
+        "Windows_Server-2019-English-Full-SQL_2017_Standard",
+        "Windows_Server-2019-English-Core-ContainersLatest",
+        "Windows_Server-2019-English-Full-SQL_2017_Express",
+        "Windows_Server-2019-Japanese-Full-Base",
+        "Windows_Server-2019-Russian-Full-Base",
+        "Windows_Server-2019-Chinese_Traditional-Full-Base",
+        "Windows_Server-2019-English-Core-Base",
+        "Windows_Server-2019-English-Full-Base",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Enterprise",
+        "Windows_Server-2019-English-Tesla",
+        "Windows_Server-2019-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2019-Spanish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2019-English-STIG-Full",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2019-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2019-Portugese_Portugal-Full-Base",
+        "Windows_Server-2019-Swedish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2022_Express",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2022_Web",
+        "Windows_Server-2019-English-Full-SQL_2019_Web",
+        "Windows_Server-2019-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2019-Portugese_Brazil-Full-Base",
+        "Windows_Server-2019-English-Full-ContainersLatest",
+        "Windows_Server-2019-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2019_Express",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2019-English-STIG-Core",
+        "Windows_Server-2019-English-Core-ECS_Optimized",
+        "Windows_Server-2019-English-Full-SQL_2022_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2019-English-Full-ECS_Optimized",
+        "Windows_Server-2019-English-Deep-Learning",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2019-Czech-Full-Base",
+        "Windows_Server-2019-Polish-Full-Base",
+        "Windows_Server-2019-German-Full-Base",
+        "Windows_Server-2019-Dutch-Full-Base",
+        "Windows_Server-2022-English-STIG-Full",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Web",
+        "Windows_Server-2022-English-Full-SQL_2022_Web",
+        "Windows_Server-2022-English-STIG-Core",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2022-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2022-Italian-Full-Base",
+        "Windows_Server-2022-English-Full-ContainersLatest",
+        "Windows_Server-2022-Russian-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Express",
+        "Windows_Server-2022-Polish-Full-Base",
+        "Windows_Server-2022-English-Core-Base",
+        "Windows_Server-2022-Hungarian-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2017_Express",
+        "Windows_Server-2022-German-Full-Base",
+        "Windows_Server-2022-English-Core-ContainersLatest",
+        "Windows_Server-2022-English-Full-SQL_2019_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2022-English-Full-SQL_2017_Web",
+        "Windows_Server-2022-Japanese-Full-Base",
+        "Windows_Server-2022-Korean-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2022-Chinese_Simplified-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Web",
+        "Windows_Server-2022-Spanish-Full-Base",
+        "Windows_Server-2022-English-Core-ECS_Optimized",
+        "Windows_Server-2022-English-Full-SQL_2017_Standard",
+        "Windows_Server-2022-Chinese_Traditional-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2022-French-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2022-English-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2022-Turkish-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2022-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2022-Czech-Full-Base",
+        "Windows_Server-2022-English-Full-ECS_Optimized",
+        "Windows_Server-2022-Dutch-Full-Base",
+        "Windows_Server-2022-Swedish-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2022-English-Full-SQL_2022_Express",
+        "Windows_Server-2022-English-Full-SQL_2022_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Enterprise",
+        "Windows_Server-2025-Chinese_Simplified-Full-Base",
+        "Windows_Server-2025-Chinese_Traditional-Full-Base",
+        "Windows_Server-2025-English-Core-Base",
+        "Windows_Server-2025-English-Full-Base",
+        "Windows_Server-2025-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2025-English-Full-SQL_2022_Express",
+        "Windows_Server-2025-English-Full-SQL_2022_Standard",
+        "Windows_Server-2025-English-Full-SQL_2022_Web",
+        "Windows_Server-2025-Japanese-Full-Base",
+        "Windows_Server-2025-Korean-Full-Base"
+      ],
+      "WorkerType": [
+        "Standard",
+        "G.025X",
+        "G.1X",
+        "G.2X",
+        "G.4X",
+        "G.8X",
+        "Z.2X"
+      ],
+      "WorkflowAction": [
+        "ApplyImageConfigurations",
+        "BootstrapInstanceForContainer",
+        "CollectImageMetadata",
+        "CollectImageScanFindings",
+        "CreateImage",
+        "DistributeImage",
+        "ExecuteComponents",
+        "ExecuteStateMachine",
+        "LaunchInstance",
+        "ModifyImageAttributes",
+        "RunCommand",
+        "RegisterImage",
+        "RunSysPrep",
+        "SanitizeInstance",
+        "TerminateInstance",
+        "WaitForAction",
+        "WaitForSSMAgent"
+      ],
+      "WorkflowOnFailure": [
+        "Abort",
+        "Continue"
+      ],
+      "WorkflowParameterType": [
+        "boolean",
+        "integer",
+        "string",
+        "stringList"
+      ],
+      "WorkflowSchemaVersion": [
+        "1.0"
+      ],
+      "WorkflowType": [
+        "BUILD",
+        "TEST",
+        "DISTRIBUTION"
+      ],
+      "WriteParallel": [
+        "on",
+        "off"
+      ],
+      "XffHeaderProcessingMode": [
+        "append",
+        "preserve",
+        "remove"
+      ]
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/constants.ts
+var RESOURCE_SYMBOL, JSII_RUNTIME_SYMBOL2;
+var init_constants = __esm({
+  "../../aws-cdk-lib/core/lib/constants.ts"() {
+    "use strict";
+    RESOURCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Resource");
+    JSII_RUNTIME_SYMBOL2 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/metadata-type.ts
+var init_metadata_type = __esm({
+  "../../aws-cdk-lib/core/lib/metadata-type.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/metadata-resource.ts
+function addConstructMetadata(construct, props) {
+  try {
+    addPropsAsMetadata(construct, "aws:cdk:analytics:construct" /* CONSTRUCT */, props);
+  } catch (e) {
+    Annotations.of(construct).addWarningV2("@aws-cdk/core:addConstructMetadataFailed", `Failed to add construct metadata for node [${construct.node.id}]. Reason: ${e}`);
+  }
+}
+function addMethodMetadata(scope, methodName, props) {
+  try {
+    addPropsAsMetadata(scope, "aws:cdk:analytics:method" /* METHOD */, {
+      [methodName]: props
+    });
+  } catch (e) {
+    Annotations.of(scope).addWarningV2("@aws-cdk/core:addMethodMetadataFailed", `Failed to add method metadata for node [${scope.node.id}], method name ${methodName}. Reason: ${e}`);
+  }
+}
+function MethodMetadata() {
+  return function(originalMethod, context) {
+    if (typeof originalMethod !== "function") {
+      return originalMethod;
+    }
+    return function(...args) {
+      if (this instanceof import_constructs2.Construct) {
+        addMethodMetadata(this, context.name.toString(), args);
+      }
+      return originalMethod.apply(this, args);
+    };
+  };
+}
+function addPropsAsMetadata(construct, type, props) {
+  const telemetryEnabled = FeatureFlags.of(construct).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false;
+  if (!telemetryEnabled) {
+    return;
+  }
+  const fqn = construct.constructor[JSII_RUNTIME_SYMBOL2].fqn;
+  construct.node.addMetadata(type, redactMetadata(fqn, props));
+}
+function redactMetadata(fqn, data) {
+  const fqnParts = fqn.replace(/[-_]/g, "-").split(".");
+  if (fqnParts.length !== 3) {
+    return "*";
+  }
+  const module2 = fqnParts.slice(0, 2).join(".");
+  const name = fqnParts[2];
+  if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS).includes(module2)) {
+    return "*";
+  }
+  if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS[module2]).includes(name)) {
+    return "*";
+  }
+  const allowedKeys = AWS_CDK_CONSTRUCTOR_PROPS[module2][name];
+  return redactTelemetryDataHelper(allowedKeys, data);
+}
+function redactTelemetryDataHelper(allowedKeys, data) {
+  if (allowedKeys === void 0) {
+    return "*";
+  }
+  if (typeof data === "boolean") {
+    return data;
+  }
+  if (isEnumValue(allowedKeys, data)) {
+    return data;
+  }
+  if (typeof data === "string" || typeof data === "number") {
+    return "*";
+  }
+  if (data && Token.isUnresolved(data)) {
+    return "*";
+  }
+  if (Array.isArray(data)) {
+    return data.map((item, index) => {
+      if (Array.isArray(allowedKeys)) {
+        return redactTelemetryDataHelper(allowedKeys[index], item);
+      }
+      return redactTelemetryDataHelper(allowedKeys, item);
+    });
+  }
+  if (data && Object.keys(data).length > 0 && typeof data === "object") {
+    if (import_constructs2.Construct.isConstruct(data)) {
+      return "*";
+    }
+    const redactedResult = {};
+    for (const [key, value] of Object.entries(data)) {
+      if (key && Token.isUnresolved(key)) {
+        continue;
+      }
+      if (allowedKeys && typeof allowedKeys === "object") {
+        if (!Object.keys(allowedKeys).includes(key)) {
+          continue;
+        }
+        const allowedValue = allowedKeys[key];
+        if (allowedValue === "*") {
+          redactedResult[key] = "*";
+          continue;
+        }
+        redactedResult[key] = redactTelemetryDataHelper(allowedKeys[key], value);
+      }
+    }
+    return redactedResult;
+  }
+  return "*";
+}
+function isEnumValue(allowedKeys, value) {
+  if (typeof allowedKeys !== "string" || allowedKeys === "*") {
+    return false;
+  }
+  if (!Object.keys(AWS_CDK_ENUMS).includes(allowedKeys)) {
+    return false;
+  }
+  return AWS_CDK_ENUMS[allowedKeys].includes(value);
+}
+var import_constructs2;
+var init_metadata_resource = __esm({
+  "../../aws-cdk-lib/core/lib/metadata-resource.ts"() {
+    "use strict";
+    import_constructs2 = __toESM(require_lib4());
+    init_classes();
+    init_enums();
+    init_annotations();
+    init_constants();
+    init_feature_flags();
+    init_metadata_type();
+    init_token();
+    init_cx_api();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/no-box-stack-traces.ts
+function noBoxStackTraces(constructor) {
+  const NoBoxStackTraces = class extends constructor {
+    constructor(...args) {
+      Box.disableStackTraceCollection();
+      try {
+        super(...args);
+      } finally {
+        Box.enableStackTraceCollection();
+      }
+    }
+  };
+  Object.defineProperty(NoBoxStackTraces, "name", {
+    value: constructor.name,
+    writable: false
+  });
+  return NoBoxStackTraces;
+}
+var init_no_box_stack_traces = __esm({
+  "../../aws-cdk-lib/core/lib/no-box-stack-traces.ts"() {
+    "use strict";
+    init_box();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectors.ts
+var PropertyInjectors;
+var init_prop_injectors = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectors.ts"() {
+    "use strict";
+    init_prop_injectors_helpers();
+    PropertyInjectors = class _PropertyInjectors {
+      /**
+       * Return whether the given object has a PropertyInjectors property.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static hasPropertyInjectors(x) {
+        return x !== null && typeof x === "object" && PROPERTY_INJECTORS_SYMBOL in x;
+      }
+      /**
+       * Returns the `PropertyInjectors` object associated with a construct scope.
+       * If `PropertyInjectors` object doesn't exist on this scope, then it creates one and attaches it to scope.
+       * @param scope The scope for which these PropertyInjectors will apply.
+       */
+      static of(scope) {
+        let propInjectors = scope[PROPERTY_INJECTORS_SYMBOL];
+        if (!propInjectors) {
+          propInjectors = new _PropertyInjectors(scope);
+          Object.defineProperty(scope, PROPERTY_INJECTORS_SYMBOL, {
+            value: propInjectors,
+            configurable: false,
+            enumerable: false
+          });
+        }
+        return propInjectors;
+      }
+      /**
+       * The scope attached to Injectors.
+       */
+      scope;
+      _injectors;
+      constructor(scope) {
+        this._injectors = /* @__PURE__ */ new Map();
+        this.scope = scope;
+      }
+      /**
+       * Add a list of  IPropertyInjectors to this collection of PropertyInjectors.
+       * @param propsInjectors - a list of IPropertyInjector
+       */
+      add(...propsInjectors) {
+        for (const pi of propsInjectors) {
+          this._injectors.set(pi.constructUniqueId, pi);
+        }
+      }
+      /**
+       * Get the PropertyInjector that is registered to the Construct's uniqueId.
+       * @param uniqueId - the construct uniqueId
+       * @returns - the IPropertyInjector for that construct uniqueId
+       */
+      for(uniqueId) {
+        return this._injectors.get(uniqueId);
+      }
+      /**
+       * This returns a list of the Constructs that are supporting by this PropertyInjectors.
+       * @returns a list of string showing the supported Constructs.
+       */
+      supportedClasses() {
+        return Array.from(this._injectors.keys());
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts
+function applyInjectors(uniqueId, originalProps, context) {
+  const injector = findInjectorFromConstruct(context.scope, uniqueId);
+  if (injector === void 0) {
+    return originalProps;
+  }
+  return injector.inject(originalProps, {
+    scope: context.scope,
+    id: context.id
+  });
+}
+function findInjectorFromConstruct(scope, uniqueId) {
+  const result = _lookup(scope);
+  if (result === void 0) {
+    return void 0;
+  }
+  const injectors = _getInjectorsFromConstruct(result);
+  const propsInjector = injectors.for(uniqueId);
+  if (!propsInjector) {
+    const parent = import_constructs3.Node.of(scope).scope;
+    if (parent) {
+      return findInjectorFromConstruct(parent, uniqueId);
+    }
+  }
+  return propsInjector;
+  function _getInjectorsFromConstruct(c) {
+    const k = PROPERTY_INJECTORS_SYMBOL;
+    return c[k];
+  }
+  function _lookup(c) {
+    if (PropertyInjectors.hasPropertyInjectors(c)) {
+      return c;
+    }
+    const n = import_constructs3.Node.of(c);
+    if (n === void 0) {
+      return void 0;
+    }
+    const _scope = n.scope;
+    if (!_scope) {
+      return void 0;
+    }
+    return _lookup(_scope);
+  }
+}
+var import_constructs3, PROPERTY_INJECTORS_SYMBOL;
+var init_prop_injectors_helpers = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts"() {
+    "use strict";
+    import_constructs3 = __toESM(require_lib4());
+    init_prop_injectors();
+    PROPERTY_INJECTORS_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.PropertyInjectors");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectable.ts
+function propertyInjectable(constructor) {
+  const PropertyInjectable = class extends constructor {
+    constructor(scope, id, props, ...args) {
+      const uniqueId = constructor.PROPERTY_INJECTION_ID;
+      if (uniqueId === void 0) {
+        throw new AssumptionError(lit`ConstructStaticPropertyInjectionIdProperty`, "Construct must have a static PROPERTY_INJECTION_ID property");
+      }
+      props = applyInjectors(uniqueId, props, {
+        scope,
+        id
+      });
+      super(scope, id, props, ...args);
+    }
+  };
+  Object.defineProperty(PropertyInjectable, "name", {
+    value: constructor.name,
+    writable: false
+  });
+  return PropertyInjectable;
+}
+var init_prop_injectable = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectable.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_prop_injectors_helpers();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/removal-policy.ts
+var init_removal_policy = __esm({
+  "../../aws-cdk-lib/core/lib/removal-policy.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/util.ts
+function capitalizePropertyNames(construct, obj) {
+  const stack = stackOf(construct);
+  obj = stack.resolve(obj);
+  if (typeof obj !== "object") {
+    return obj;
+  }
+  if (Array.isArray(obj)) {
+    return obj.map((x) => capitalizePropertyNames(construct, x));
+  }
+  const newObj = {};
+  for (const key of Object.keys(obj)) {
+    const value = obj[key];
+    const first = key.charAt(0).toUpperCase();
+    const newKey = first + key.slice(1);
+    newObj[newKey] = capitalizePropertyNames(construct, value);
+  }
+  return newObj;
+}
+function ignoreEmpty(obj) {
+  return new PostResolveToken(obj, (o) => {
+    if (o == null) {
+      return o;
+    }
+    if (Array.isArray(o) && o.length === 0) {
+      return void 0;
+    }
+    if (typeof o === "object" && Object.keys(o).length === 0) {
+      return void 0;
+    }
+    return o;
+  });
+}
+function filterUndefined(obj) {
+  if (Array.isArray(obj)) {
+    return obj.filter((x) => x != null).map((x) => filterUndefined(x));
+  }
+  if (typeof obj === "object") {
+    const ret = {};
+    for (const [key, value] of Object.entries(obj)) {
+      if (value == null) {
+        continue;
+      }
+      ret[key] = filterUndefined(value);
+    }
+    return ret;
+  }
+  return obj;
+}
+var PostResolveToken;
+var init_util = __esm({
+  "../../aws-cdk-lib/core/lib/util.ts"() {
+    "use strict";
+    init_core_construct_finders();
+    init_intrinsic();
+    PostResolveToken = class extends Intrinsic {
+      constructor(value, processor) {
+        super(value, { stackTrace: false });
+        this.processor = processor;
+      }
+      processor;
+      resolve(context) {
+        context.registerPostProcessor(this);
+        return super.resolve(context);
+      }
+      postProcess(o, context) {
+        return this.processor(o, context);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/arn.ts
+function parseTokenArn(arnToken, arnFormat) {
+  const components = Fn.split(":", arnToken);
+  const partition = Fn.select(1, components).toString();
+  const service = Fn.select(2, components).toString();
+  const region = Fn.select(3, components).toString();
+  const account = Fn.select(4, components).toString();
+  let resource;
+  let resourceName;
+  let sep3;
+  if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */ || arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) {
+    resource = Fn.select(5, components);
+    if (arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) {
+      resourceName = Fn.select(6, components);
+      sep3 = ":";
+    } else {
+      resourceName = void 0;
+      sep3 = void 0;
+    }
+  } else {
+    const lastComponents = Fn.split("/", Fn.select(5, components));
+    if (arnFormat === "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */) {
+      resource = Fn.select(0, lastComponents);
+      resourceName = Fn.select(1, lastComponents);
+    } else {
+      resource = Fn.select(1, lastComponents);
+      resourceName = Fn.select(2, lastComponents);
+    }
+    sep3 = "/";
+  }
+  return { partition, service, region, account, resource, resourceName, sep: sep3, arnFormat };
+}
+function parseArnShape(arn) {
+  const looksLikeArn = arn.startsWith("arn:");
+  if (!looksLikeArn) {
+    if (Token.isUnresolved(arn)) {
+      return "token";
+    } else {
+      throw new UnscopedValidationError(lit`ArnsMustStartWithArn`, `ARNs must start with "arn:" and have at least 6 components: ${arn}`);
+    }
+  }
+  const components = arn.split(":");
+  const partition = components.length > 1 ? components[1] : void 0;
+  if (!partition) {
+    throw new UnscopedValidationError(lit`ArnPartitionRequired`, "The `partition` component (2nd component) of an ARN is required: " + arn);
+  }
+  const service = components.length > 2 ? components[2] : void 0;
+  if (!service) {
+    throw new UnscopedValidationError(lit`ArnServiceRequired`, "The `service` component (3rd component) of an ARN is required: " + arn);
+  }
+  const resource = components.length > 5 ? components[5] : void 0;
+  if (!resource) {
+    throw new UnscopedValidationError(lit`ArnResourceRequired`, "The `resource` component (6th component) of an ARN is required: " + arn);
+  }
+  return components;
+}
+var Arn;
+var init_arn = __esm({
+  "../../aws-cdk-lib/core/lib/arn.ts"() {
+    "use strict";
+    init_cfn_fn();
+    init_errors();
+    init_literal_string();
+    init_token();
+    init_util();
+    Arn = class _Arn {
+      /**
+       * Creates an ARN from components.
+       *
+       * If `partition`, `region` or `account` are not specified, the stack's
+       * partition, region and account will be used.
+       *
+       * If any component is the empty string, an empty string will be inserted
+       * into the generated ARN at the location that component corresponds to.
+       *
+       * The ARN will be formatted as follows:
+       *
+       *   arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}
+       *
+       * The required ARN pieces that are omitted will be taken from the stack that
+       * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope
+       * can be 'undefined'.
+       */
+      static format(components, stack) {
+        const partition = components.partition ?? stack?.partition;
+        const region = components.region ?? stack?.region;
+        const account = components.account ?? stack?.account;
+        if (partition == null || region == null || account == null) {
+          throw new UnscopedValidationError(lit`ArnFormatMissingStackInfo`, `Arn.format: partition (${partition}), region (${region}), and account (${account}) must all be passed if stack is not passed.`);
+        }
+        const sep3 = components.sep ?? (components.arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */ ? ":" : "/");
+        const values = [
+          "arn",
+          ":",
+          partition,
+          ":",
+          components.service,
+          ":",
+          region,
+          ":",
+          account,
+          ":",
+          ...components.arnFormat === "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */ ? ["/"] : [],
+          components.resource
+        ];
+        if (sep3 !== "/" && sep3 !== ":" && sep3 !== "") {
+          throw new UnscopedValidationError(lit`InvalidResourcePathSeparator`, 'resourcePathSep may only be ":", "/" or an empty string');
+        }
+        if (components.resourceName != null) {
+          values.push(sep3);
+          values.push(components.resourceName);
+        }
+        return values.join("");
+      }
+      /**
+       * Given an ARN, parses it and returns components.
+       *
+       * IF THE ARN IS A CONCRETE STRING...
+       *
+       * ...it will be parsed and validated. The separator (`sep`) will be set to '/'
+       * if the 6th component includes a '/', in which case, `resource` will be set
+       * to the value before the '/' and `resourceName` will be the rest. In case
+       * there is no '/', `resource` will be set to the 6th components and
+       * `resourceName` will be set to the rest of the string.
+       *
+       * IF THE ARN IS A TOKEN...
+       *
+       * ...it cannot be validated, since we don't have the actual value yet at the
+       * time of this function call. You will have to supply `sepIfToken` and
+       * whether or not ARNs of the expected format usually have resource names
+       * in order to parse it properly. The resulting `ArnComponents` object will
+       * contain tokens for the subexpressions of the ARN, not string literals.
+       *
+       * If the resource name could possibly contain the separator char, the actual
+       * resource name cannot be properly parsed. This only occurs if the separator
+       * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs,
+       * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a
+       * Tokenized ARN, you must know the resource type and call
+       * `Arn.extractResourceName`.
+       *
+       * @param arn The ARN to parse
+       * @param sepIfToken The separator used to separate resource from resourceName
+       * @param hasName Whether there is a name component in the ARN at all. For
+       * example, SNS Topics ARNs have the 'resource' component contain the topic
+       * name, and no 'resourceName' component.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       * components of the ARN.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       *      components of the ARN.
+       *
+       * @deprecated use split instead
+       */
+      static parse(arn, sepIfToken = "/", hasName = true) {
+        let arnFormat;
+        if (!hasName) {
+          arnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+        } else {
+          arnFormat = sepIfToken === "/" ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */;
+        }
+        return this.split(arn, arnFormat);
+      }
+      /**
+       * Splits the provided ARN into its components.
+       * Works both if 'arn' is a string like 'arn:aws:s3:::bucket',
+       * and a Token representing a dynamic CloudFormation expression
+       * (in which case the returned components will also be dynamic CloudFormation expressions,
+       * encoded as Tokens).
+       *
+       * @param arn the ARN to split into its components
+       * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses
+       */
+      static split(arn, arnFormat) {
+        const components = parseArnShape(arn);
+        if (components === "token") {
+          return parseTokenArn(arn, arnFormat);
+        }
+        const [, partition, service, region, account, resourceTypeOrName, ...rest] = components;
+        let resource;
+        let resourceName;
+        let sep3;
+        let resourcePartStartIndex = 0;
+        let detectedArnFormat;
+        let slashIndex = resourceTypeOrName.indexOf("/");
+        if (slashIndex === 0) {
+          slashIndex = resourceTypeOrName.indexOf("/", 1);
+          resourcePartStartIndex = 1;
+          detectedArnFormat = "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */;
+        }
+        if (slashIndex !== -1) {
+          if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */) {
+            sep3 = void 0;
+            slashIndex = -1;
+            detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+          } else {
+            sep3 = "/";
+            detectedArnFormat = resourcePartStartIndex === 0 ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */;
+          }
+        } else if (rest.length > 0) {
+          sep3 = ":";
+          slashIndex = -1;
+          detectedArnFormat = "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */;
+        } else {
+          sep3 = void 0;
+          detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+        }
+        if (slashIndex !== -1) {
+          resource = resourceTypeOrName.substring(resourcePartStartIndex, slashIndex);
+          resourceName = resourceTypeOrName.substring(slashIndex + 1);
+        } else {
+          resource = resourceTypeOrName;
+        }
+        if (rest.length > 0) {
+          if (!resourceName) {
+            resourceName = "";
+          } else {
+            resourceName += ":";
+          }
+          resourceName += rest.join(":");
+        }
+        return filterUndefined({
+          service: service || void 0,
+          resource: resource || void 0,
+          partition: partition || void 0,
+          region,
+          account,
+          resourceName,
+          sep: sep3,
+          arnFormat: detectedArnFormat
+        });
+      }
+      /**
+       * Extract the full resource name from an ARN
+       *
+       * Necessary for resource names (paths) that may contain the separator, like
+       * `arn:aws:iam::111111111111:role/path/to/role/name`.
+       *
+       * Only works if we statically know the expected `resourceType` beforehand, since we're going
+       * to use that to split the string on ':/' (and take the right-hand side).
+       *
+       * We can't extract the 'resourceType' from the ARN at hand, because CloudFormation Expressions
+       * only allow literals in the 'separator' argument to `{ Fn::Split }`, and so it can't be
+       * `{ Fn::Select: [5, { Fn::Split: [':', ARN] }}`.
+       *
+       * Only necessary for ARN formats for which the type-name separator is `/`.
+       */
+      static extractResourceName(arn, resourceType) {
+        const components = parseArnShape(arn);
+        if (components === "token") {
+          return Fn.select(1, Fn.split(`:${resourceType}/`, arn));
+        }
+        const parsed = _Arn.split(arn, "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */);
+        if (!Token.isUnresolved(parsed.resource) && parsed.resource !== resourceType) {
+          throw new UnscopedValidationError(lit`ExpectedResourceType`, `Expected resource type '${resourceType}' in ARN, got '${parsed.resource}' in '${arn}'`);
+        }
+        if (!parsed.resourceName) {
+          throw new UnscopedValidationError(lit`ExpectedResourceName`, `Expected resource name in ARN, didn't find one: '${arn}'`);
+        }
+        return parsed.resourceName;
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts
+function memoizedGetter(target, _context) {
+  let m;
+  function replacementMethod() {
+    if (!m) {
+      m = /* @__PURE__ */ new WeakMap();
+    }
+    if (m.has(this)) {
+      return m.get(this);
+    }
+    const ret = target.call(this);
+    m.set(this, ret);
+    return ret;
+  }
+  return replacementMethod;
+}
+var init_memoize = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/md5.ts
+function md5hash(x) {
+  if (!_impl) {
+    try {
+      crypto.createHash("md5");
+      _impl = cryptoMd5;
+    } catch {
+      _impl = jsMd5;
+    }
+  }
+  return _impl(x);
+}
+function cryptoMd5(x) {
+  const hash = crypto.createHash("md5");
+  hash.update(x);
+  return hash.digest("hex");
+}
+function jsMd5(s) {
+  return hex(md5Buffer(Buffer.from(s, "utf-8")));
+}
+function md5Round(x, k) {
+  let a = x[0], b = x[1], c = x[2], d = x[3];
+  a = F(a, b, c, d, k[0], 7, -680876936);
+  d = F(d, a, b, c, k[1], 12, -389564586);
+  c = F(c, d, a, b, k[2], 17, 606105819);
+  b = F(b, c, d, a, k[3], 22, -1044525330);
+  a = F(a, b, c, d, k[4], 7, -176418897);
+  d = F(d, a, b, c, k[5], 12, 1200080426);
+  c = F(c, d, a, b, k[6], 17, -1473231341);
+  b = F(b, c, d, a, k[7], 22, -45705983);
+  a = F(a, b, c, d, k[8], 7, 1770035416);
+  d = F(d, a, b, c, k[9], 12, -1958414417);
+  c = F(c, d, a, b, k[10], 17, -42063);
+  b = F(b, c, d, a, k[11], 22, -1990404162);
+  a = F(a, b, c, d, k[12], 7, 1804603682);
+  d = F(d, a, b, c, k[13], 12, -40341101);
+  c = F(c, d, a, b, k[14], 17, -1502002290);
+  b = F(b, c, d, a, k[15], 22, 1236535329);
+  a = G(a, b, c, d, k[1], 5, -165796510);
+  d = G(d, a, b, c, k[6], 9, -1069501632);
+  c = G(c, d, a, b, k[11], 14, 643717713);
+  b = G(b, c, d, a, k[0], 20, -373897302);
+  a = G(a, b, c, d, k[5], 5, -701558691);
+  d = G(d, a, b, c, k[10], 9, 38016083);
+  c = G(c, d, a, b, k[15], 14, -660478335);
+  b = G(b, c, d, a, k[4], 20, -405537848);
+  a = G(a, b, c, d, k[9], 5, 568446438);
+  d = G(d, a, b, c, k[14], 9, -1019803690);
+  c = G(c, d, a, b, k[3], 14, -187363961);
+  b = G(b, c, d, a, k[8], 20, 1163531501);
+  a = G(a, b, c, d, k[13], 5, -1444681467);
+  d = G(d, a, b, c, k[2], 9, -51403784);
+  c = G(c, d, a, b, k[7], 14, 1735328473);
+  b = G(b, c, d, a, k[12], 20, -1926607734);
+  a = H(a, b, c, d, k[5], 4, -378558);
+  d = H(d, a, b, c, k[8], 11, -2022574463);
+  c = H(c, d, a, b, k[11], 16, 1839030562);
+  b = H(b, c, d, a, k[14], 23, -35309556);
+  a = H(a, b, c, d, k[1], 4, -1530992060);
+  d = H(d, a, b, c, k[4], 11, 1272893353);
+  c = H(c, d, a, b, k[7], 16, -155497632);
+  b = H(b, c, d, a, k[10], 23, -1094730640);
+  a = H(a, b, c, d, k[13], 4, 681279174);
+  d = H(d, a, b, c, k[0], 11, -358537222);
+  c = H(c, d, a, b, k[3], 16, -722521979);
+  b = H(b, c, d, a, k[6], 23, 76029189);
+  a = H(a, b, c, d, k[9], 4, -640364487);
+  d = H(d, a, b, c, k[12], 11, -421815835);
+  c = H(c, d, a, b, k[15], 16, 530742520);
+  b = H(b, c, d, a, k[2], 23, -995338651);
+  a = I(a, b, c, d, k[0], 6, -198630844);
+  d = I(d, a, b, c, k[7], 10, 1126891415);
+  c = I(c, d, a, b, k[14], 15, -1416354905);
+  b = I(b, c, d, a, k[5], 21, -57434055);
+  a = I(a, b, c, d, k[12], 6, 1700485571);
+  d = I(d, a, b, c, k[3], 10, -1894986606);
+  c = I(c, d, a, b, k[10], 15, -1051523);
+  b = I(b, c, d, a, k[1], 21, -2054922799);
+  a = I(a, b, c, d, k[8], 6, 1873313359);
+  d = I(d, a, b, c, k[15], 10, -30611744);
+  c = I(c, d, a, b, k[6], 15, -1560198380);
+  b = I(b, c, d, a, k[13], 21, 1309151649);
+  a = I(a, b, c, d, k[4], 6, -145523070);
+  d = I(d, a, b, c, k[11], 10, -1120210379);
+  c = I(c, d, a, b, k[2], 15, 718787259);
+  b = I(b, c, d, a, k[9], 21, -343485551);
+  x[0] = add32(a, x[0]);
+  x[1] = add32(b, x[1]);
+  x[2] = add32(c, x[2]);
+  x[3] = add32(d, x[3]);
+}
+function cmn(q, a, b, x, s, t) {
+  a = add32(add32(a, q), add32(x, t));
+  return add32(a << s | a >>> 32 - s, b);
+}
+function F(a, b, c, d, x, s, t) {
+  return cmn(b & c | ~b & d, a, b, x, s, t);
+}
+function G(a, b, c, d, x, s, t) {
+  return cmn(b & d | c & ~d, a, b, x, s, t);
+}
+function H(a, b, c, d, x, s, t) {
+  return cmn(b ^ c ^ d, a, b, x, s, t);
+}
+function I(a, b, c, d, x, s, t) {
+  return cmn(c ^ (b | ~d), a, b, x, s, t);
+}
+function md5Buffer(buf) {
+  let n = buf.length, state = [1732584193, -271733879, -1732584194, 271733878], i = 0;
+  for (; i + 64 <= n; i += 64) {
+    md5Round(state, bytesToWordsBuf(buf, i));
+  }
+  const remainingBytes = n - i;
+  const padding = Buffer.alloc(64 - remainingBytes < 9 ? 128 : 64);
+  buf.copy(padding, 0, i);
+  padding.writeUint8(128, remainingBytes);
+  const bitLength = n * 8;
+  padding.writeUint32LE(n << 3, padding.length - 8);
+  if (bitLength >= 4294967295) {
+    padding.writeUint32LE(Math.floor(bitLength / 4294967295), padding.length - 4);
+  }
+  md5Round(state, bytesToWordsBuf(padding, 0));
+  if (padding.length > 64) {
+    md5Round(state, bytesToWordsBuf(padding, 64));
+  }
+  return state;
+}
+function bytesToWordsBuf(buf, byteOffset) {
+  const ret = new Array(16);
+  let i = 0, j = byteOffset;
+  for (; i < 16; i++, j += 4) {
+    ret[i] = buf.readUint32LE(j);
+  }
+  return ret;
+}
+function hexify(n) {
+  const s = new Array();
+  for (let j = 0; j < 4; j++) {
+    s.push(hex_chr[n >>> j * 8 + 4 & 15] + hex_chr[n >>> j * 8 & 15]);
+  }
+  return s.join("");
+}
+function hex(x) {
+  const ret = new Array(x.length);
+  for (let i = 0; i < x.length; i++) ret[i] = hexify(x[i]);
+  return ret.join("");
+}
+function add32(a, b) {
+  return a + b & 4294967295;
+}
+var crypto, _impl, hex_chr;
+var init_md5 = __esm({
+  "../../aws-cdk-lib/core/lib/private/md5.ts"() {
+    "use strict";
+    crypto = __toESM(require("crypto"));
+    hex_chr = "0123456789abcdef".split("");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/unique-resource-name.ts
+function makeUniqueResourceName(components, options) {
+  const maxLength = options.maxLength ?? 256;
+  const separator = options.separator ?? "";
+  const prefix = options.prefix ?? "";
+  components = components.filter((x) => x !== HIDDEN_ID);
+  if (components.length === 0) {
+    throw new UnscopedValidationError(lit`UnableToUnableCalculateUnique`, "Unable to calculate a unique resource name for an empty set of components");
+  }
+  if (components.length === 1) {
+    const topLevelResource = prefix + removeNonAllowedSpecialCharacters(components[0], separator, options.allowedSpecialCharacters);
+    if (topLevelResource.length <= maxLength) {
+      return topLevelResource;
+    }
+  }
+  const hash = pathHash(components);
+  const human = prefix + removeDupes(components).filter((pathElement) => pathElement !== HIDDEN_FROM_HUMAN_ID).map((pathElement) => removeNonAllowedSpecialCharacters(pathElement, separator, options.allowedSpecialCharacters)).filter((pathElement) => pathElement).join(separator).concat(separator);
+  const maxhumanLength = maxLength - HASH_LEN;
+  return human.length > maxhumanLength ? `${splitInMiddle(human, maxhumanLength)}${hash}` : `${human}${hash}`;
+}
+function pathHash(path23) {
+  const md52 = md5hash(path23.join(PATH_SEP));
+  return md52.slice(0, HASH_LEN).toUpperCase();
+}
+function removeNonAllowedSpecialCharacters(s, _separator, allowedSpecialCharacters) {
+  const pattern = allowedSpecialCharacters ? `[^A-Za-z0-9${allowedSpecialCharacters}]` : "[^A-Za-z0-9]";
+  const regex = new RegExp(pattern, "g");
+  return s.replace(regex, "");
+}
+function removeDupes(path23) {
+  const ret = new Array();
+  for (const component of path23) {
+    if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) {
+      ret.push(component);
+    }
+  }
+  return ret;
+}
+function splitInMiddle(s, maxLength = MAX_LEN - HASH_LEN) {
+  const half = maxLength / 2;
+  return s.slice(0, half) + s.slice(-half);
+}
+var HIDDEN_FROM_HUMAN_ID, HIDDEN_ID, PATH_SEP, MAX_LEN, HASH_LEN;
+var init_unique_resource_name = __esm({
+  "../../aws-cdk-lib/core/lib/private/unique-resource-name.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_md5();
+    HIDDEN_FROM_HUMAN_ID = "Resource";
+    HIDDEN_ID = "Default";
+    PATH_SEP = "/";
+    MAX_LEN = 256;
+    HASH_LEN = 8;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/uniqueid.ts
+function makeUniqueId(components) {
+  components = components.filter((x) => x !== HIDDEN_ID2);
+  if (components.length === 0) {
+    throw new UnscopedValidationError(lit`UnableToCalculateUniqueId`, "Unable to calculate a unique id for an empty set of components");
+  }
+  const unresolvedTokens = components.filter((c) => unresolved(c));
+  if (unresolvedTokens.length > 0) {
+    throw new UnscopedValidationError(lit`ComponentsContainUnresolvedTokens`, `ID components may not include unresolved tokens: ${unresolvedTokens.join(",")}`);
+  }
+  if (components.length === 1) {
+    const candidate = removeNonAlphanumeric(components[0]);
+    if (candidate.length <= MAX_ID_LEN) {
+      return candidate;
+    }
+  }
+  const hash = pathHash2(components);
+  const human = removeDupes2(components).filter((x) => x !== HIDDEN_FROM_HUMAN_ID2).map(removeNonAlphanumeric).join("").slice(0, MAX_HUMAN_LEN);
+  return human + hash;
+}
+function pathHash2(path23) {
+  const md52 = md5hash(path23.join(PATH_SEP2));
+  return md52.slice(0, HASH_LEN2).toUpperCase();
+}
+function removeNonAlphanumeric(s) {
+  return s.replace(/[^A-Za-z0-9]/g, "");
+}
+function removeDupes2(path23) {
+  const ret = new Array();
+  for (const component of path23) {
+    if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) {
+      ret.push(component);
+    }
+  }
+  return ret;
+}
+var HIDDEN_FROM_HUMAN_ID2, HIDDEN_ID2, PATH_SEP2, HASH_LEN2, MAX_HUMAN_LEN, MAX_ID_LEN;
+var init_uniqueid = __esm({
+  "../../aws-cdk-lib/core/lib/private/uniqueid.ts"() {
+    "use strict";
+    init_errors();
+    init_encoding();
+    init_literal_string();
+    init_md5();
+    HIDDEN_FROM_HUMAN_ID2 = "Resource";
+    HIDDEN_ID2 = "Default";
+    PATH_SEP2 = "/";
+    HASH_LEN2 = 8;
+    MAX_HUMAN_LEN = 240;
+    MAX_ID_LEN = 255;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/names.ts
+function isTopLevelStack(x) {
+  return STACK_TYPE.isMarked(x) && !unresolved(x.stackName);
+}
+function findLastIndex(xs, pred) {
+  for (let i = xs.length - 1; i >= 0; i--) {
+    if (pred(xs[i])) {
+      return i;
+    }
+  }
+  return -1;
+}
+var import_constructs4, Names;
+var init_names = __esm({
+  "../../aws-cdk-lib/core/lib/names.ts"() {
+    "use strict";
+    import_constructs4 = __toESM(require_lib4());
+    init_core_construct_finders();
+    init_encoding();
+    init_unique_resource_name();
+    init_uniqueid();
+    Names = class {
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. The identifier includes a human readable portion rendered
+       * from the path components and a hash suffix. uniqueId is not unique if multiple
+       * copies of the stack are deployed. Prefer using uniqueResourceName().
+       *
+       * @param construct The construct
+       * @returns a unique id based on the construct path
+       */
+      static uniqueId(construct) {
+        const node = import_constructs4.Node.of(construct);
+        const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id);
+        return components.length > 0 ? makeUniqueId(components) : "";
+      }
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. The identifier includes a human readable portion rendered
+       * from the path components and a hash suffix.
+       *
+       * TODO (v2): replace with API to use `constructs.Node`.
+       *
+       * @param node The construct node
+       * @returns a unique id based on the construct path
+       */
+      static nodeUniqueId(node) {
+        const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id);
+        return components.length > 0 ? makeUniqueId(components) : "";
+      }
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. This function finds the stackName of the parent stack (non-nested)
+       * to the construct, and the ids of the components in the construct path.
+       *
+       * The user can define allowed special characters, a separator between the elements,
+       * and the maximum length of the resource name. The name includes a human readable portion rendered
+       * from the path components, with or without user defined separators, and a hash suffix.
+       * If the resource name is longer than the maximum length, it is trimmed in the middle.
+       *
+       * @param construct The construct
+       * @param options Options for defining the unique resource name
+       * @returns a unique resource name based on the construct path
+       */
+      static uniqueResourceName(construct, options) {
+        const node = import_constructs4.Node.of(construct);
+        const scopes = node.scopes;
+        const isStack = scopes.map(isTopLevelStack);
+        const lastStackIndex = Math.max(findLastIndex(isStack, (x) => x), 0);
+        const componentsPath = node.scopes.slice(lastStackIndex).map((component) => isTopLevelStack(component) ? component.stackName : import_constructs4.Node.of(component).id);
+        return makeUniqueResourceName(componentsPath, options);
+      }
+      /**
+       * Return the construct path of the given construct, starting at the nearest enclosing Stack
+       *
+       * Skips over Nested Stacks, in other words Nested Stacks are included in the construct
+       * paths.
+       */
+      static stackRelativeConstructPath(construct) {
+        const scopes = construct.node.scopes;
+        const isStack = scopes.map(isTopLevelStack);
+        const lastStackIndex = findLastIndex(isStack, (x) => x);
+        return scopes.slice(lastStackIndex + 1).map((x) => x.node.id).join("/");
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/physical-name-generator.ts
+function generatePhysicalName(resource) {
+  const stack = stackOf(resource);
+  const stackPart = new PrefixNamePart(stack.stackName, 25);
+  const idPart = new SuffixNamePart(Names.nodeUniqueId(resource.node), 24);
+  const region = stack.region;
+  if (Token.isUnresolved(region) || !region) {
+    throw new ValidationError(lit`CannotGeneratePhysicalNameRegionUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the region is un-resolved or missing`, resource);
+  }
+  const account = stack.account;
+  if (Token.isUnresolved(account) || !account) {
+    throw new ValidationError(lit`CannotGeneratePhysicalNameAccountUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the account is un-resolved or missing`, resource);
+  }
+  const parts = [stackPart, idPart].map((part) => part.generate());
+  const hashLength = 12;
+  const sha256 = crypto2.createHash("sha256").update(stackPart.bareStr).update(idPart.bareStr).update(region).update(account);
+  const hash = sha256.digest("hex").slice(0, hashLength);
+  const ret = [...parts, hash].join("");
+  return ret.toLowerCase();
+}
+function isGeneratedWhenNeededMarker(val2) {
+  const token = TokenMap.instance().lookupString(val2);
+  return !!token && GENERATE_IF_NEEDED_SYMBOL in token;
+}
+var crypto2, import_constructs5, NamePart, PrefixNamePart, SuffixNamePart, GENERATE_IF_NEEDED_SYMBOL, GeneratedWhenNeededMarker;
+var init_physical_name_generator = __esm({
+  "../../aws-cdk-lib/core/lib/private/physical-name-generator.ts"() {
+    "use strict";
+    crypto2 = __toESM(require("crypto"));
+    import_constructs5 = __toESM(require_lib4());
+    init_token_map();
+    init_errors();
+    init_names();
+    init_token();
+    init_core_construct_finders();
+    init_literal_string();
+    NamePart = class {
+      bareStr;
+      constructor(bareStr) {
+        this.bareStr = bareStr;
+      }
+    };
+    PrefixNamePart = class extends NamePart {
+      constructor(bareStr, prefixLength) {
+        super(bareStr);
+        this.prefixLength = prefixLength;
+      }
+      prefixLength;
+      generate() {
+        return this.bareStr.slice(0, this.prefixLength);
+      }
+    };
+    SuffixNamePart = class extends NamePart {
+      constructor(str, suffixLength) {
+        super(str);
+        this.suffixLength = suffixLength;
+      }
+      suffixLength;
+      generate() {
+        const strLen = this.bareStr.length;
+        const startIndex = Math.max(strLen - this.suffixLength, 0);
+        return this.bareStr.slice(startIndex, strLen);
+      }
+    };
+    GENERATE_IF_NEEDED_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core..GenerateIfNeeded");
+    GeneratedWhenNeededMarker = class {
+      creationStack = ["Token stack traces are no longer captured"];
+      constructor() {
+        Object.defineProperty(this, GENERATE_IF_NEEDED_SYMBOL, { value: true });
+      }
+      resolve(_ctx) {
+        throw new UnscopedValidationError(lit`InvalidPhysicalNameMarker`, 'Invalid physical name passed to CloudFormation. Use "this.physicalName" instead');
+      }
+      toString() {
+        return "PhysicalName.GENERATE_IF_NEEDED";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/constants.ts
+var ALLOWED_FQN_PREFIXES;
+var init_constants2 = __esm({
+  "../../aws-cdk-lib/core/lib/private/constants.ts"() {
+    "use strict";
+    ALLOWED_FQN_PREFIXES = [
+      // SCOPES
+      "@aws-cdk/",
+      "@aws-cdk-containers/",
+      "@aws-solutions-konstruk/",
+      "@aws-solutions-constructs/",
+      "@amzn/",
+      "@cdklabs/",
+      // PACKAGES
+      "aws-rfdk.",
+      "aws-cdk-lib.",
+      "cdk8s."
+    ];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts
+function addMetadata(construct, mixin) {
+  let reportedValue = "*";
+  const fqn = Object.getPrototypeOf(mixin).constructor[JSII_RUNTIME_SYMBOL2]?.fqn;
+  if (fqn && ALLOWED_FQN_PREFIXES.find((prefix) => fqn.startsWith(prefix))) {
+    reportedValue = fqn;
+  }
+  construct.node.addMetadata(MIXIN_METADATA_KEY, { mixin: reportedValue });
+}
+function applyMixin(construct, mixin) {
+  addMetadata(construct, mixin);
+  mixin.applyTo(construct);
+}
+function withMixins(target, ...mixins) {
+  const allConstructs = target.node.findAll();
+  for (const mixin of mixins) {
+    for (const construct of allConstructs) {
+      if (mixin.supports(construct)) {
+        applyMixin(construct, mixin);
+      }
+    }
+  }
+  return target;
+}
+var MIXIN_METADATA_KEY;
+var init_mixin_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts"() {
+    "use strict";
+    init_constants();
+    init_constants2();
+    MIXIN_METADATA_KEY = "aws:cdk:analytics:mixin";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/resource.ts
+function mimicReference(refSource, producer) {
+  const reference = Tokenization.reverse(refSource, {
+    // If this is an ARN concatenation, just fail to extract a reference.
+    failConcat: false
+  });
+  if (!Reference.isReference(reference)) {
+    return Lazy.uncachedString(producer);
+  }
+  return Token.asString(new class extends Reference {
+    resolve(context) {
+      return producer.produce(context);
+    }
+  }(reference, reference.target, reference.displayName));
+}
+var import_constructs6, _physicalName_dec, _env_dec, _stack_dec, _a, _init, Resource;
+var init_resource = __esm({
+  "../../aws-cdk-lib/core/lib/resource.ts"() {
+    "use strict";
+    import_constructs6 = __toESM(require_lib4());
+    init_arn();
+    init_cfn_resource();
+    init_constants();
+    init_errors();
+    init_helpers_internal();
+    init_memoize();
+    init_lazy();
+    init_core_construct_finders();
+    init_physical_name_generator();
+    init_reference();
+    init_token();
+    init_mixin_metadata();
+    init_literal_string();
+    Resource = class extends (_a = import_constructs6.Construct, _stack_dec = [memoizedGetter], _env_dec = [memoizedGetter], _physicalName_dec = [memoizedGetter], _a) {
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        __runInitializers(_init, 5, this);
+        __publicField(this, "_allowCrossEnvironment");
+        /** Account given in the constructor, if any. Will be same as Stack if not supplied. */
+        __publicField(this, "_customAccount");
+        /** Account given in the constructor, if any. Will be same as Stack if not supplied.*/
+        __publicField(this, "_customRegion");
+        /** What we are doing for the physical name */
+        __publicField(this, "_physicalNameMode");
+        /** The physicalName supplied into the constructor */
+        __publicField(this, "_givenPhysicalName");
+        /** The generated physical name, in case of cross-env access */
+        __publicField(this, "_generatedPhysicalName", Box.fromValue(void 0));
+        if ((props.account !== void 0 || props.region !== void 0) && props.environmentFromArn !== void 0) {
+          throw new ValidationError(lit`ConflictingEnvironmentOptions`, `Supply at most one of 'account'/'region' (${props.account}/${props.region}) and 'environmentFromArn' (${props.environmentFromArn})`, this);
+        }
+        Object.defineProperty(this, RESOURCE_SYMBOL, { value: true });
+        const parsedArn = props.environmentFromArn ? (
+          // Since we only want the region and account, NO_RESOURCE_NAME is good enough
+          Arn.split(props.environmentFromArn, "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */)
+        ) : void 0;
+        this._customAccount = props.account ?? parsedArn?.account;
+        this._customRegion = props.region ?? parsedArn?.region;
+        this._givenPhysicalName = props.physicalName;
+        if (props.physicalName && isGeneratedWhenNeededMarker(props.physicalName)) {
+          this._physicalNameMode = "generate";
+          this._allowCrossEnvironment = true;
+        } else if (props.physicalName && !Token.isUnresolved(props.physicalName)) {
+          this._physicalNameMode = "given-resolved";
+          this._allowCrossEnvironment = true;
+        } else {
+          this._physicalNameMode = "deploy-time";
+          this._allowCrossEnvironment = false;
+        }
+      }
+      /**
+       * Check whether the given construct is a Resource
+       */
+      static isResource(construct) {
+        return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct;
+      }
+      /**
+       * Returns true if the construct was created by CDK, and false otherwise
+       */
+      static isOwnedResource(construct) {
+        return construct.node.defaultChild ? CfnResource.isCfnResource(construct.node.defaultChild) : false;
+      }
+      get stack() {
+        return stackOf(this);
+      }
+      get env() {
+        return {
+          account: this._customAccount ?? this.stack.account,
+          region: this._customRegion ?? this.stack.region
+        };
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      get physicalName() {
+        switch (this._physicalNameMode) {
+          case "generate":
+            return Token.asString(this._generatedPhysicalName);
+          case "given-resolved":
+            return this._givenPhysicalName;
+          case "deploy-time":
+            return this._givenPhysicalName ?? Token.asString(void 0);
+        }
+      }
+      /**
+       * Called when this resource is referenced across environments
+       * (account/region) to order to request that a physical name will be generated
+       * for this resource during synthesis, so the resource can be referenced
+       * through its absolute name/arn.
+       *
+       * @internal
+       */
+      _enableCrossEnvironment() {
+        if (!this._allowCrossEnvironment) {
+          throw new ValidationError(lit`CannotUseCrossEnvironment`, `Cannot use resource '${this.node.path}' in a cross-environment fashion, the resource's physical name must be explicit set or use \`PhysicalName.GENERATE_IF_NEEDED\``, this);
+        }
+        this._generatedPhysicalName.update(
+          (name) => this._physicalNameMode === "generate" && !name ? this.generatePhysicalName() : name
+        );
+      }
+      /**
+       * Apply the given removal policy to this resource
+       *
+       * The Removal Policy controls what happens to this resource when it stops
+       * being managed by CloudFormation, either because you've removed it from the
+       * CDK application or because you've made a change that requires the resource
+       * to be replaced.
+       *
+       * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
+       * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
+       */
+      applyRemovalPolicy(policy) {
+        const child = this.node.defaultChild;
+        if (!child || !CfnResource.isCfnResource(child)) {
+          throw new ValidationError(lit`CannotApplyRemovalPolicy`, "Cannot apply RemovalPolicy: no child or not a CfnResource. Apply the removal policy on the CfnResource directly.", this);
+        }
+        child.applyRemovalPolicy(policy);
+      }
+      /**
+       * Override the cross-stack reference strength for this resource.
+       *
+       * When set, any cross-stack reference to this resource will use the specified
+       * mechanism instead of the global default determined by the
+       * `@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for
+       * selectively weakening specific references to avoid the "deadly embrace" problem
+       * without changing the app-wide default.
+       *
+       * @param strength - The reference strength to use for this resource.
+       */
+      applyCrossStackReferenceStrength(strength) {
+        const child = this.node.defaultChild;
+        if (!child || !CfnResource.isCfnResource(child)) {
+          throw new ValidationError(lit`CannotApplyCrossStackReferenceStrength`, "Cannot apply CrossStackReferenceStrength: no child or not a CfnResource. Apply the override on the CfnResource directly.", this);
+        }
+        child.applyCrossStackReferenceStrength(strength);
+      }
+      generatePhysicalName() {
+        return generatePhysicalName(this);
+      }
+      /**
+       * Returns an environment-sensitive token that should be used for the
+       * resource's "name" attribute (e.g. `bucket.bucketName`).
+       *
+       * Normally, this token will resolve to `nameAttr`, but if the resource is
+       * referenced across environments, it will be resolved to `this.physicalName`,
+       * which will be a concrete name.
+       *
+       * @param nameAttr The CFN attribute which resolves to the resource's name.
+       * Commonly this is the resource's `ref`.
+       */
+      getResourceNameAttribute(nameAttr) {
+        return mimicReference(nameAttr, {
+          produce: (context) => {
+            const consumingStack = stackOf(context.scope);
+            if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) {
+              this._enableCrossEnvironment();
+              return this.physicalName;
+            } else {
+              return nameAttr;
+            }
+          }
+        });
+      }
+      /**
+       * Returns an environment-sensitive token that should be used for the
+       * resource's "ARN" attribute (e.g. `bucket.bucketArn`).
+       *
+       * Normally, this token will resolve to `arnAttr`, but if the resource is
+       * referenced across environments, `arnComponents` will be used to synthesize
+       * a concrete ARN with the resource's physical name. Make sure to reference
+       * `this.physicalName` in `arnComponents`.
+       *
+       * @param arnAttr The CFN attribute which resolves to the ARN of the resource.
+       * Commonly it will be called "Arn" (e.g. `resource.attrArn`), but sometimes
+       * it's the CFN resource's `ref`.
+       * @param arnComponents The format of the ARN of this resource. You must
+       * reference `this.physicalName` somewhere within the ARN in order for
+       * cross-environment references to work.
+       *
+       */
+      getResourceArnAttribute(arnAttr, arnComponents) {
+        return mimicReference(arnAttr, {
+          produce: (context) => {
+            const consumingStack = stackOf(context.scope);
+            if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) {
+              this._enableCrossEnvironment();
+              return this.stack.formatArn(arnComponents);
+            } else {
+              return arnAttr;
+            }
+          }
+        });
+      }
+    };
+    _init = __decoratorStart(_a);
+    __decorateElement(_init, 2, "stack", _stack_dec, Resource);
+    __decorateElement(_init, 2, "env", _env_dec, Resource);
+    __decorateElement(_init, 2, "physicalName", _physicalName_dec, Resource);
+    __decoratorMetadata(_init, Resource);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource.ts
+function uppercaseProperties(props) {
+  const ret = {};
+  Object.keys(props).forEach((key) => {
+    const upper = key.slice(0, 1).toUpperCase() + key.slice(1);
+    ret[upper] = props[key];
+  });
+  return ret;
+}
+function renderResourceType(scope, resourceType) {
+  if (!resourceType) {
+    return "AWS::CloudFormation::CustomResource";
+  }
+  if (!resourceType.startsWith("Custom::")) {
+    throw new ValidationError(lit`MustBeCustomResourceType`, `Custom resource type must begin with "Custom::" (${resourceType})`, scope);
+  }
+  if (resourceType.length > 60) {
+    throw new ValidationError(lit`CustomResourceTypeLength`, `Custom resource type length > 60 (${resourceType})`, scope);
+  }
+  const typeName = resourceType.slice(resourceType.indexOf("::") + 2);
+  if (!/^[a-z0-9_@-]+$/i.test(typeName)) {
+    throw new ValidationError(lit`CustomResourceTypeNameInclude`, `Custom resource type name can only include alphanumeric characters and _@- (${typeName})`, scope);
+  }
+  return resourceType;
+}
+var _getAttString_dec, _getAtt_dec, _a2, _CustomResource_decorators, _init2, CustomResource;
+var init_custom_resource = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource.ts"() {
+    "use strict";
+    init_annotations();
+    init_cfn_resource();
+    init_errors();
+    init_metadata_resource();
+    init_no_box_stack_traces();
+    init_literal_string();
+    init_prop_injectable();
+    init_removal_policy();
+    init_resource();
+    init_token();
+    _CustomResource_decorators = [noBoxStackTraces, propertyInjectable];
+    CustomResource = class extends (_a2 = Resource, _getAtt_dec = [MethodMetadata()], _getAttString_dec = [MethodMetadata()], _a2) {
+      constructor(scope, id, props) {
+        super(scope, id);
+        __runInitializers(_init2, 5, this);
+        __publicField(this, "resource");
+        addConstructMetadata(this, props);
+        const type = renderResourceType(this, props.resourceType);
+        const pascalCaseProperties = props.pascalCaseProperties ?? false;
+        const properties = pascalCaseProperties ? uppercaseProperties(props.properties || {}) : props.properties || {};
+        if (props.serviceTimeout !== void 0 && !props.serviceTimeout.isUnresolved()) {
+          const serviceTimeoutSeconds = props.serviceTimeout.toSeconds();
+          if (serviceTimeoutSeconds < 1 || serviceTimeoutSeconds > 3600) {
+            throw new ValidationError(lit`ServiceTimeoutSeconds`, `serviceTimeout must either be between 1 and 3600 seconds, got ${serviceTimeoutSeconds}`, this);
+          }
+        }
+        const constructPropertiesPassed = {
+          ServiceToken: props.serviceToken,
+          ServiceTimeout: props.serviceTimeout?.toSeconds().toString()
+        };
+        const hasCommonKeys = Object.keys(properties).some((key) => key in constructPropertiesPassed);
+        if (hasCommonKeys) {
+          Annotations.of(this).addWarningV2("@aws-cdk/core:customResourcePropConflict", `The following keys will be overwritten as they exist in the 'properties' prop. Keys found: ${Object.keys(properties).filter((key) => key in constructPropertiesPassed)}`);
+        }
+        this.resource = new CfnResource(this, "Default", {
+          type,
+          properties: {
+            ...constructPropertiesPassed,
+            ...properties
+          }
+        });
+        this.resource.applyRemovalPolicy(props.removalPolicy, {
+          default: "destroy" /* DESTROY */
+        });
+      }
+      /**
+       * The physical name of this custom resource.
+       */
+      get ref() {
+        return this.resource.ref;
+      }
+      getAtt(attributeName) {
+        return this.resource.getAtt(attributeName);
+      }
+      getAttString(attributeName) {
+        return Token.asString(this.getAtt(attributeName));
+      }
+    };
+    _init2 = __decoratorStart(_a2);
+    __decorateElement(_init2, 1, "getAtt", _getAtt_dec, CustomResource);
+    __decorateElement(_init2, 1, "getAttString", _getAttString_dec, CustomResource);
+    CustomResource = __decorateElement(_init2, 0, "CustomResource", _CustomResource_decorators, CustomResource);
+    /** Uniquely identifies this class. */
+    __publicField(CustomResource, "PROPERTY_INJECTION_ID", "aws-cdk-lib.core.CustomResource");
+    __runInitializers(_init2, 1, CustomResource);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts
+var init_consts = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts
+var INLINE_CUSTOM_RESOURCE_CONTEXT;
+var init_shared = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts"() {
+    "use strict";
+    INLINE_CUSTOM_RESOURCE_CONTEXT = "@aws-cdk/core:inlineCustomResourceIfPossible";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/assets.ts
+var init_assets = __esm({
+  "../../aws-cdk-lib/core/lib/assets.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js
+var require_ignore = __commonJS({
+  "../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    var factory = (options) => new IgnoreBase(options);
+    factory.default = factory;
+    module2.exports = factory;
+    function make_array(subject) {
+      return Array.isArray(subject) ? subject : [subject];
+    }
+    var REGEX_TRAILING_SLASH = /(?<=.)\/$/;
+    var REGEX_TRAILING_BACKSLASH = /(?<=.)\\$/;
+    var REGEX_TRAILING_PATH_SEP = path23.sep === "\\" ? REGEX_TRAILING_BACKSLASH : REGEX_TRAILING_SLASH;
+    var KEY_IGNORE = typeof Symbol !== "undefined" ? /* @__PURE__ */ Symbol.for("dockerignore") : "dockerignore";
+    function cleanPath(file) {
+      return path23.normalize(file).replace(REGEX_TRAILING_PATH_SEP, "");
+    }
+    function toSlash(file) {
+      if (path23.sep === "/") {
+        return file;
+      }
+      return file.replace(/\\/g, "/");
+    }
+    function fromSlash(file) {
+      if (path23.sep === "/") {
+        return file;
+      }
+      return file.replace(/\//g, path23.sep);
+    }
+    var IgnoreBase = class {
+      constructor({
+        // https://github.com/kaelzhang/node-ignore/blob/5.1.4/index.js#L372
+        ignorecase = true
+      } = {}) {
+        this._rules = [];
+        this._ignorecase = ignorecase;
+        this[KEY_IGNORE] = true;
+        this._initCache();
+      }
+      _initCache() {
+        this._cache = {};
+      }
+      // @param {Array.|string|Ignore} pattern
+      add(pattern) {
+        this._added = false;
+        if (typeof pattern === "string") {
+          pattern = pattern.split(/\r?\n/g);
+        }
+        make_array(pattern).forEach(this._addPattern, this);
+        if (this._added) {
+          this._initCache();
+        }
+        return this;
+      }
+      // legacy
+      addPattern(pattern) {
+        return this.add(pattern);
+      }
+      _addPattern(pattern) {
+        if (pattern && pattern[KEY_IGNORE]) {
+          this._rules = this._rules.concat(pattern._rules);
+          this._added = true;
+          return;
+        }
+        if (this._checkPattern(pattern)) {
+          const rule = this._createRule(pattern.trim());
+          if (rule !== null) {
+            this._added = true;
+            this._rules.push(rule);
+          }
+        }
+      }
+      _checkPattern(pattern) {
+        return pattern && typeof pattern === "string" && pattern.indexOf("#") !== 0 && pattern.trim() !== "";
+      }
+      filter(paths) {
+        return make_array(paths).filter((path24) => this._filter(path24));
+      }
+      createFilter() {
+        return (path24) => this._filter(path24);
+      }
+      ignores(path24) {
+        return !this._filter(path24);
+      }
+      // https://github.com/moby/moby/blob/v19.03.8/builder/dockerignore/dockerignore.go#L41-L53
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L29-L55
+      _createRule(pattern) {
+        const origin = pattern;
+        let negative = false;
+        if (pattern[0] === "!") {
+          negative = true;
+          pattern = pattern.substring(1).trim();
+        }
+        if (pattern.length > 0) {
+          pattern = cleanPath(pattern);
+          pattern = toSlash(pattern);
+          if (pattern.length > 1 && pattern[0] === "/") {
+            pattern = pattern.slice(1);
+          }
+        }
+        if (negative) {
+          pattern = "!" + pattern;
+        }
+        pattern = pattern.trim();
+        if (pattern === "") {
+          return null;
+        }
+        pattern = cleanPath(pattern);
+        if (pattern[0] === "!") {
+          if (pattern.length === 1) {
+            return null;
+          }
+          negative = true;
+          pattern = pattern.substring(1);
+        } else {
+          negative = false;
+        }
+        return {
+          origin,
+          pattern,
+          // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L54
+          dirs: pattern.split(path23.sep),
+          negative
+        };
+      }
+      // @returns `Boolean` true if the `path` is NOT ignored
+      _filter(path24) {
+        if (!path24) {
+          return false;
+        }
+        if (path24 in this._cache) {
+          return this._cache[path24];
+        }
+        return this._cache[path24] = this._test(path24);
+      }
+      // @returns {Boolean} true if a file is NOT ignored
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L62
+      _test(file) {
+        file = fromSlash(file);
+        const parentPath = cleanPath(path23.dirname(file));
+        const parentPathDirs = parentPath.split(path23.sep);
+        let matched = false;
+        this._rules.forEach((rule) => {
+          let match = this._match(file, rule);
+          if (!match && parentPath !== ".") {
+            if (rule.dirs.includes("**")) {
+              for (let i = rule.dirs.filter((x) => x !== "**").length; i <= parentPathDirs.length; i++) {
+                match = match || this._match(parentPathDirs.slice(0, i).join(path23.sep), rule);
+              }
+            } else if (rule.dirs.length <= parentPathDirs.length) {
+              match = this._match(parentPathDirs.slice(0, rule.dirs.length).join(path23.sep), rule);
+            }
+          }
+          if (match) {
+            matched = !rule.negative;
+          }
+        });
+        return !matched;
+      }
+      // @returns {Boolean} true if a file is matched by a rule
+      _match(file, rule) {
+        return this._compile(rule).regexp.test(file);
+      }
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L139
+      _compile(rule) {
+        if (rule.regexp) {
+          return rule;
+        }
+        let regStr = "^";
+        let escapedSlash = path23.sep === "\\" ? "\\\\" : path23.sep;
+        for (let i = 0; i < rule.pattern.length; i++) {
+          const ch = rule.pattern[i];
+          if (ch === "*") {
+            if (rule.pattern[i + 1] === "*") {
+              i++;
+              if (rule.pattern[i + 1] === path23.sep) {
+                i++;
+              }
+              if (rule.pattern[i + 1] === void 0) {
+                regStr += ".*";
+              } else {
+                regStr += `(.*${escapedSlash})?`;
+              }
+            } else {
+              regStr += `[^${escapedSlash}]*`;
+            }
+          } else if (ch === "?") {
+            regStr += `[^${escapedSlash}]`;
+          } else if (ch === "." || ch === "$") {
+            regStr += `\\${ch}`;
+          } else if (ch === "\\") {
+            if (path23.sep === "\\") {
+              regStr += escapedSlash;
+              continue;
+            }
+            if (rule.pattern[i + 1] !== void 0) {
+              regStr += "\\" + rule.pattern[i + 1];
+              i++;
+            } else {
+              regStr += "\\";
+            }
+          } else {
+            regStr += ch;
+          }
+        }
+        regStr += "$";
+        rule.regexp = new RegExp(regStr, this._ignorecase ? "i" : "");
+        return rule;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/ignore/index.js
+var require_ignore2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/ignore/index.js"(exports2, module2) {
+    function makeArray(subject) {
+      return Array.isArray(subject) ? subject : [subject];
+    }
+    var EMPTY = "";
+    var SPACE = " ";
+    var ESCAPE = "\\";
+    var REGEX_TEST_BLANK_LINE = /^\s+$/;
+    var REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/;
+    var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/;
+    var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/;
+    var REGEX_SPLITALL_CRLF = /\r?\n/g;
+    var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/;
+    var SLASH = "/";
+    var TMP_KEY_IGNORE = "node-ignore";
+    if (typeof Symbol !== "undefined") {
+      TMP_KEY_IGNORE = /* @__PURE__ */ Symbol.for("node-ignore");
+    }
+    var KEY_IGNORE = TMP_KEY_IGNORE;
+    var define = (object, key, value) => Object.defineProperty(object, key, { value });
+    var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g;
+    var RETURN_FALSE = () => false;
+    var sanitizeRange = (range4) => range4.replace(
+      REGEX_REGEXP_RANGE,
+      (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) ? match : EMPTY
+    );
+    var cleanRangeBackSlash = (slashes) => {
+      const { length } = slashes;
+      return slashes.slice(0, length - length % 2);
+    };
+    var REPLACERS = [
+      [
+        // remove BOM
+        // TODO:
+        // Other similar zero-width characters?
+        /^\uFEFF/,
+        () => EMPTY
+      ],
+      // > Trailing spaces are ignored unless they are quoted with backslash ("\")
+      [
+        // (a\ ) -> (a )
+        // (a  ) -> (a)
+        // (a ) -> (a)
+        // (a \ ) -> (a  )
+        /((?:\\\\)*?)(\\?\s+)$/,
+        (_, m1, m2) => m1 + (m2.indexOf("\\") === 0 ? SPACE : EMPTY)
+      ],
+      // replace (\ ) with ' '
+      // (\ ) -> ' '
+      // (\\ ) -> '\\ '
+      // (\\\ ) -> '\\ '
+      [
+        /(\\+?)\s/g,
+        (_, m1) => {
+          const { length } = m1;
+          return m1.slice(0, length - length % 2) + SPACE;
+        }
+      ],
+      // Escape metacharacters
+      // which is written down by users but means special for regular expressions.
+      // > There are 12 characters with special meanings:
+      // > - the backslash \,
+      // > - the caret ^,
+      // > - the dollar sign $,
+      // > - the period or dot .,
+      // > - the vertical bar or pipe symbol |,
+      // > - the question mark ?,
+      // > - the asterisk or star *,
+      // > - the plus sign +,
+      // > - the opening parenthesis (,
+      // > - the closing parenthesis ),
+      // > - and the opening square bracket [,
+      // > - the opening curly brace {,
+      // > These special characters are often called "metacharacters".
+      [
+        /[\\$.|*+(){^]/g,
+        (match) => `\\${match}`
+      ],
+      [
+        // > a question mark (?) matches a single character
+        /(?!\\)\?/g,
+        () => "[^/]"
+      ],
+      // leading slash
+      [
+        // > A leading slash matches the beginning of the pathname.
+        // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c".
+        // A leading slash matches the beginning of the pathname
+        /^\//,
+        () => "^"
+      ],
+      // replace special metacharacter slash after the leading slash
+      [
+        /\//g,
+        () => "\\/"
+      ],
+      [
+        // > A leading "**" followed by a slash means match in all directories.
+        // > For example, "**/foo" matches file or directory "foo" anywhere,
+        // > the same as pattern "foo".
+        // > "**/foo/bar" matches file or directory "bar" anywhere that is directly
+        // >   under directory "foo".
+        // Notice that the '*'s have been replaced as '\\*'
+        /^\^*\\\*\\\*\\\//,
+        // '**/foo' <-> 'foo'
+        () => "^(?:.*\\/)?"
+      ],
+      // starting
+      [
+        // there will be no leading '/'
+        //   (which has been replaced by section "leading slash")
+        // If starts with '**', adding a '^' to the regular expression also works
+        /^(?=[^^])/,
+        function startingReplacer() {
+          return !/\/(?!$)/.test(this) ? "(?:^|\\/)" : "^";
+        }
+      ],
+      // two globstars
+      [
+        // Use lookahead assertions so that we could match more than one `'/**'`
+        /\\\/\\\*\\\*(?=\\\/|$)/g,
+        // Zero, one or several directories
+        // should not use '*', or it will be replaced by the next replacer
+        // Check if it is not the last `'/**'`
+        (_, index, str) => index + 6 < str.length ? "(?:\\/[^\\/]+)*" : "\\/.+"
+      ],
+      // normal intermediate wildcards
+      [
+        // Never replace escaped '*'
+        // ignore rule '\*' will match the path '*'
+        // 'abc.*/' -> go
+        // 'abc.*'  -> skip this rule,
+        //    coz trailing single wildcard will be handed by [trailing wildcard]
+        /(^|[^\\]+)(\\\*)+(?=.+)/g,
+        // '*.js' matches '.js'
+        // '*.js' doesn't match 'abc'
+        (_, p1, p2) => {
+          const unescaped = p2.replace(/\\\*/g, "[^\\/]*");
+          return p1 + unescaped;
+        }
+      ],
+      [
+        // unescape, revert step 3 except for back slash
+        // For example, if a user escape a '\\*',
+        // after step 3, the result will be '\\\\\\*'
+        /\\\\\\(?=[$.|*+(){^])/g,
+        () => ESCAPE
+      ],
+      [
+        // '\\\\' -> '\\'
+        /\\\\/g,
+        () => ESCAPE
+      ],
+      [
+        // > The range notation, e.g. [a-zA-Z],
+        // > can be used to match one of the characters in a range.
+        // `\` is escaped by step 3
+        /(\\)?\[([^\]/]*?)(\\*)($|\])/g,
+        (match, leadEscape, range4, endEscape, close) => leadEscape === ESCAPE ? `\\[${range4}${cleanRangeBackSlash(endEscape)}${close}` : close === "]" ? endEscape.length % 2 === 0 ? `[${sanitizeRange(range4)}${endEscape}]` : "[]" : "[]"
+      ],
+      // ending
+      [
+        // 'js' will not match 'js.'
+        // 'ab' will not match 'abc'
+        /(?:[^*])$/,
+        // WTF!
+        // https://git-scm.com/docs/gitignore
+        // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1)
+        // which re-fixes #24, #38
+        // > If there is a separator at the end of the pattern then the pattern
+        // > will only match directories, otherwise the pattern can match both
+        // > files and directories.
+        // 'js*' will not match 'a.js'
+        // 'js/' will not match 'a.js'
+        // 'js' will match 'a.js' and 'a.js/'
+        (match) => /\/$/.test(match) ? `${match}$` : `${match}(?=$|\\/$)`
+      ],
+      // trailing wildcard
+      [
+        /(\^|\\\/)?\\\*$/,
+        (_, p1) => {
+          const prefix = p1 ? `${p1}[^/]+` : "[^/]*";
+          return `${prefix}(?=$|\\/$)`;
+        }
+      ]
+    ];
+    var regexCache = /* @__PURE__ */ Object.create(null);
+    var makeRegex = (pattern, ignoreCase) => {
+      let source = regexCache[pattern];
+      if (!source) {
+        source = REPLACERS.reduce(
+          (prev, [matcher, replacer]) => prev.replace(matcher, replacer.bind(pattern)),
+          pattern
+        );
+        regexCache[pattern] = source;
+      }
+      return ignoreCase ? new RegExp(source, "i") : new RegExp(source);
+    };
+    var isString = (subject) => typeof subject === "string";
+    var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) && pattern.indexOf("#") !== 0;
+    var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF);
+    var IgnoreRule = class {
+      constructor(origin, pattern, negative, regex) {
+        this.origin = origin;
+        this.pattern = pattern;
+        this.negative = negative;
+        this.regex = regex;
+      }
+    };
+    var createRule = (pattern, ignoreCase) => {
+      const origin = pattern;
+      let negative = false;
+      if (pattern.indexOf("!") === 0) {
+        negative = true;
+        pattern = pattern.substr(1);
+      }
+      pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#");
+      const regex = makeRegex(pattern, ignoreCase);
+      return new IgnoreRule(
+        origin,
+        pattern,
+        negative,
+        regex
+      );
+    };
+    var throwError = (message, Ctor) => {
+      throw new Ctor(message);
+    };
+    var checkPath = (path23, originalPath, doThrow) => {
+      if (!isString(path23)) {
+        return doThrow(
+          `path must be a string, but got \`${originalPath}\``,
+          TypeError
+        );
+      }
+      if (!path23) {
+        return doThrow(`path must not be empty`, TypeError);
+      }
+      if (checkPath.isNotRelative(path23)) {
+        const r = "`path.relative()`d";
+        return doThrow(
+          `path should be a ${r} string, but got "${originalPath}"`,
+          RangeError
+        );
+      }
+      return true;
+    };
+    var isNotRelative = (path23) => REGEX_TEST_INVALID_PATH.test(path23);
+    checkPath.isNotRelative = isNotRelative;
+    checkPath.convert = (p) => p;
+    var Ignore = class {
+      constructor({
+        ignorecase = true,
+        ignoreCase = ignorecase,
+        allowRelativePaths = false
+      } = {}) {
+        define(this, KEY_IGNORE, true);
+        this._rules = [];
+        this._ignoreCase = ignoreCase;
+        this._allowRelativePaths = allowRelativePaths;
+        this._initCache();
+      }
+      _initCache() {
+        this._ignoreCache = /* @__PURE__ */ Object.create(null);
+        this._testCache = /* @__PURE__ */ Object.create(null);
+      }
+      _addPattern(pattern) {
+        if (pattern && pattern[KEY_IGNORE]) {
+          this._rules = this._rules.concat(pattern._rules);
+          this._added = true;
+          return;
+        }
+        if (checkPattern(pattern)) {
+          const rule = createRule(pattern, this._ignoreCase);
+          this._added = true;
+          this._rules.push(rule);
+        }
+      }
+      // @param {Array | string | Ignore} pattern
+      add(pattern) {
+        this._added = false;
+        makeArray(
+          isString(pattern) ? splitPattern(pattern) : pattern
+        ).forEach(this._addPattern, this);
+        if (this._added) {
+          this._initCache();
+        }
+        return this;
+      }
+      // legacy
+      addPattern(pattern) {
+        return this.add(pattern);
+      }
+      //          |           ignored : unignored
+      // negative |   0:0   |   0:1   |   1:0   |   1:1
+      // -------- | ------- | ------- | ------- | --------
+      //     0    |  TEST   |  TEST   |  SKIP   |    X
+      //     1    |  TESTIF |  SKIP   |  TEST   |    X
+      // - SKIP: always skip
+      // - TEST: always test
+      // - TESTIF: only test if checkUnignored
+      // - X: that never happen
+      // @param {boolean} whether should check if the path is unignored,
+      //   setting `checkUnignored` to `false` could reduce additional
+      //   path matching.
+      // @returns {TestResult} true if a file is ignored
+      _testOne(path23, checkUnignored) {
+        let ignored = false;
+        let unignored = false;
+        this._rules.forEach((rule) => {
+          const { negative } = rule;
+          if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) {
+            return;
+          }
+          const matched = rule.regex.test(path23);
+          if (matched) {
+            ignored = !negative;
+            unignored = negative;
+          }
+        });
+        return {
+          ignored,
+          unignored
+        };
+      }
+      // @returns {TestResult}
+      _test(originalPath, cache, checkUnignored, slices) {
+        const path23 = originalPath && checkPath.convert(originalPath);
+        checkPath(
+          path23,
+          originalPath,
+          this._allowRelativePaths ? RETURN_FALSE : throwError
+        );
+        return this._t(path23, cache, checkUnignored, slices);
+      }
+      _t(path23, cache, checkUnignored, slices) {
+        if (path23 in cache) {
+          return cache[path23];
+        }
+        if (!slices) {
+          slices = path23.split(SLASH);
+        }
+        slices.pop();
+        if (!slices.length) {
+          return cache[path23] = this._testOne(path23, checkUnignored);
+        }
+        const parent = this._t(
+          slices.join(SLASH) + SLASH,
+          cache,
+          checkUnignored,
+          slices
+        );
+        return cache[path23] = parent.ignored ? parent : this._testOne(path23, checkUnignored);
+      }
+      ignores(path23) {
+        return this._test(path23, this._ignoreCache, false).ignored;
+      }
+      createFilter() {
+        return (path23) => !this.ignores(path23);
+      }
+      filter(paths) {
+        return makeArray(paths).filter(this.createFilter());
+      }
+      // @returns {TestResult}
+      test(path23) {
+        return this._test(path23, this._testCache, true);
+      }
+    };
+    var factory = (options) => new Ignore(options);
+    var isPathValid = (path23) => checkPath(path23 && checkPath.convert(path23), path23, RETURN_FALSE);
+    factory.isPathValid = isPathValid;
+    factory.default = factory;
+    module2.exports = factory;
+    if (
+      // Detect `process` so that it can run in browsers.
+      typeof process !== "undefined" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32")
+    ) {
+      const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/");
+      checkPath.convert = makePosix;
+      const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i;
+      checkPath.isNotRelative = (path23) => REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path23) || isNotRelative(path23);
+    }
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/options.ts
+var init_options = __esm({
+  "../../aws-cdk-lib/core/lib/fs/options.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js
+var require_commonjs = __commonJS({
+  "../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.range = exports2.balanced = void 0;
+    var balanced = (a, b, str) => {
+      const ma = a instanceof RegExp ? maybeMatch(a, str) : a;
+      const mb = b instanceof RegExp ? maybeMatch(b, str) : b;
+      const r = ma !== null && mb != null && (0, exports2.range)(ma, mb, str);
+      return r && {
+        start: r[0],
+        end: r[1],
+        pre: str.slice(0, r[0]),
+        body: str.slice(r[0] + ma.length, r[1]),
+        post: str.slice(r[1] + mb.length)
+      };
+    };
+    exports2.balanced = balanced;
+    var maybeMatch = (reg, str) => {
+      const m = str.match(reg);
+      return m ? m[0] : null;
+    };
+    var range4 = (a, b, str) => {
+      let begs, beg, left, right = void 0, result;
+      let ai = str.indexOf(a);
+      let bi = str.indexOf(b, ai + 1);
+      let i = ai;
+      if (ai >= 0 && bi > 0) {
+        if (a === b) {
+          return [ai, bi];
+        }
+        begs = [];
+        left = str.length;
+        while (i >= 0 && !result) {
+          if (i === ai) {
+            begs.push(i);
+            ai = str.indexOf(a, i + 1);
+          } else if (begs.length === 1) {
+            const r = begs.pop();
+            if (r !== void 0)
+              result = [r, bi];
+          } else {
+            beg = begs.pop();
+            if (beg !== void 0 && beg < left) {
+              left = beg;
+              right = bi;
+            }
+            bi = str.indexOf(b, i + 1);
+          }
+          i = ai < bi && ai >= 0 ? ai : bi;
+        }
+        if (begs.length && right !== void 0) {
+          result = [left, right];
+        }
+      }
+      return result;
+    };
+    exports2.range = range4;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js
+var require_commonjs2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EXPANSION_MAX_REWRITES = exports2.EXPANSION_MAX_DEPTH = exports2.EXPANSION_MAX_LENGTH = exports2.EXPANSION_MAX = void 0;
+    exports2.expand = expand;
+    var balanced_match_1 = require_commonjs();
+    var escSlash = "\0SLASH" + Math.random() + "\0";
+    var escOpen = "\0OPEN" + Math.random() + "\0";
+    var escClose = "\0CLOSE" + Math.random() + "\0";
+    var escComma = "\0COMMA" + Math.random() + "\0";
+    var escPeriod = "\0PERIOD" + Math.random() + "\0";
+    var escSlashPattern = new RegExp(escSlash, "g");
+    var escOpenPattern = new RegExp(escOpen, "g");
+    var escClosePattern = new RegExp(escClose, "g");
+    var escCommaPattern = new RegExp(escComma, "g");
+    var escPeriodPattern = new RegExp(escPeriod, "g");
+    var slashPattern = /\\\\/g;
+    var openPattern = /\\{/g;
+    var closePattern = /\\}/g;
+    var commaPattern = /\\,/g;
+    var periodPattern = /\\\./g;
+    exports2.EXPANSION_MAX = 1e5;
+    exports2.EXPANSION_MAX_LENGTH = 4e6;
+    exports2.EXPANSION_MAX_DEPTH = 1e3;
+    exports2.EXPANSION_MAX_REWRITES = 1e3;
+    function numeric(str) {
+      return !isNaN(str) ? parseInt(str, 10) : str.charCodeAt(0);
+    }
+    function escapeBraces(str) {
+      return str.replace(slashPattern, escSlash).replace(openPattern, escOpen).replace(closePattern, escClose).replace(commaPattern, escComma).replace(periodPattern, escPeriod);
+    }
+    function unescapeBraces(str) {
+      return str.replace(escSlashPattern, "\\").replace(escOpenPattern, "{").replace(escClosePattern, "}").replace(escCommaPattern, ",").replace(escPeriodPattern, ".");
+    }
+    function pushAll(target, items) {
+      for (let i = 0; i < items.length; i++) {
+        target.push(items[i]);
+      }
+    }
+    function parseCommaParts(str) {
+      const parts = [];
+      let carry = "";
+      for (; ; ) {
+        const m = (0, balanced_match_1.balanced)("{", "}", str);
+        if (!m) {
+          const tail = str.split(",");
+          tail[0] = carry + tail[0];
+          pushAll(parts, tail);
+          return parts;
+        }
+        const { pre, body, post } = m;
+        const p = pre.split(",");
+        p[0] = carry + p[0];
+        p[p.length - 1] += "{" + body + "}";
+        if (!post.length) {
+          pushAll(parts, p);
+          return parts;
+        }
+        carry = p.pop();
+        pushAll(parts, p);
+        str = post;
+      }
+    }
+    function expand(str, options = {}) {
+      if (!str) {
+        return [];
+      }
+      const { max = exports2.EXPANSION_MAX, maxLength = exports2.EXPANSION_MAX_LENGTH, maxDepth = exports2.EXPANSION_MAX_DEPTH, maxRewrites = exports2.EXPANSION_MAX_REWRITES } = options;
+      if (str.slice(0, 2) === "{}") {
+        str = "\\{\\}" + str.slice(2);
+      }
+      return expand_(escapeBraces(str), max, maxLength, maxDepth, 0, maxRewrites, true).map(unescapeBraces);
+    }
+    function embrace(str) {
+      return "{" + str + "}";
+    }
+    function isPadded(el) {
+      return /^-?0\d/.test(el);
+    }
+    function lte(i, y) {
+      return i <= y;
+    }
+    function gte(i, y) {
+      return i >= y;
+    }
+    function combine(acc, pre, values, max, maxLength, dropEmpties) {
+      const out = [];
+      let length = 0;
+      for (let a = 0; a < acc.length; a++) {
+        for (let v = 0; v < values.length; v++) {
+          if (out.length >= max)
+            return out;
+          const expansion = acc[a] + pre + values[v];
+          if (dropEmpties && !expansion)
+            continue;
+          if (length + expansion.length > maxLength)
+            return out;
+          out.push(expansion);
+          length += expansion.length;
+        }
+      }
+      return out;
+    }
+    function expandSequence(body, isAlphaSequence, max, maxLength) {
+      const n = body.split(/\.\./);
+      const N = [];
+      if (n[0] === void 0 || n[1] === void 0) {
+        return N;
+      }
+      const x = numeric(n[0]);
+      const y = numeric(n[1]);
+      const width = Math.max(n[0].length, n[1].length);
+      let incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric(n[2])), 1) : 1;
+      let test = lte;
+      const reverse = y < x;
+      if (reverse) {
+        incr *= -1;
+        test = gte;
+      }
+      const pad = n.some(isPadded);
+      let length = 0;
+      for (let i = x; test(i, y) && N.length < max; i += incr) {
+        let c;
+        if (isAlphaSequence) {
+          c = String.fromCharCode(i);
+          if (c === "\\") {
+            c = "";
+          }
+        } else {
+          c = String(i);
+          if (pad) {
+            const need = width - c.length;
+            if (need > 0) {
+              const z = new Array(need + 1).join("0");
+              if (i < 0) {
+                c = "-" + z + c.slice(1);
+              } else {
+                c = z + c;
+              }
+            }
+          }
+        }
+        if (length + c.length > maxLength)
+          break;
+        N.push(c);
+        length += c.length;
+      }
+      return N;
+    }
+    function expand_(str, max, maxLength, maxDepth, depth, maxRewrites, isTop) {
+      if (depth > maxDepth) {
+        return [str];
+      }
+      let acc = [""];
+      let rewrites = 0;
+      let dropEmpties = false;
+      let firstGroup = true;
+      for (; ; ) {
+        const m = (0, balanced_match_1.balanced)("{", "}", str);
+        if (!m) {
+          return combine(acc, str, [""], max, maxLength, dropEmpties);
+        }
+        const pre = m.pre;
+        if (/\$$/.test(pre)) {
+          acc = combine(acc, pre + "{" + m.body + "}", [""], max, maxLength, dropEmpties && !m.post.length);
+          firstGroup = false;
+          if (!m.post.length)
+            break;
+          str = m.post;
+          continue;
+        }
+        const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
+        const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
+        const isSequence = isNumericSequence || isAlphaSequence;
+        const isOptions = m.body.indexOf(",") >= 0;
+        if (!isSequence && !isOptions) {
+          if (rewrites < maxRewrites && m.post.match(/,(?!,).*\}/)) {
+            rewrites++;
+            str = m.pre + "{" + m.body + escClose + m.post;
+            isTop = true;
+            continue;
+          }
+          return combine(acc, pre + "{" + m.body + "}" + m.post, [""], max, maxLength, dropEmpties);
+        }
+        if (firstGroup) {
+          dropEmpties = isTop && !isSequence;
+          firstGroup = false;
+        }
+        let values;
+        if (isSequence) {
+          values = expandSequence(m.body, isAlphaSequence, max, maxLength);
+        } else {
+          let n = parseCommaParts(m.body);
+          if (n.length === 1 && n[0] !== void 0) {
+            n = expand_(n[0], max, maxLength, maxDepth, depth + 1, maxRewrites, false).map(embrace);
+            if (n.length === 1) {
+              acc = combine(acc, pre + n[0], [""], max, maxLength, dropEmpties && !m.post.length);
+              if (!m.post.length)
+                break;
+              str = m.post;
+              continue;
+            }
+          }
+          let dropsEmpties = dropEmpties && !m.post.length && !pre;
+          for (let d = 0; dropsEmpties && d < acc.length; d++) {
+            if (acc[d]) {
+              dropsEmpties = false;
+            }
+          }
+          values = [];
+          let valuesLength = 0;
+          outer: for (let j = 0; j < n.length; j++) {
+            const expanded = expand_(n[j], max, maxLength, maxDepth, depth + 1, maxRewrites, false);
+            for (let k = 0; k < expanded.length; k++) {
+              const v = expanded[k];
+              if (dropsEmpties && !v)
+                continue;
+              if (values.length >= max || valuesLength + v.length > maxLength) {
+                break outer;
+              }
+              values.push(v);
+              valuesLength += v.length;
+            }
+          }
+        }
+        acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
+        if (!m.post.length)
+          break;
+        str = m.post;
+      }
+      return acc;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js
+var require_assert_valid_pattern = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.assertValidPattern = void 0;
+    var MAX_PATTERN_LENGTH = 1024 * 64;
+    var assertValidPattern = (pattern) => {
+      if (typeof pattern !== "string") {
+        throw new TypeError("invalid pattern");
+      }
+      if (pattern.length > MAX_PATTERN_LENGTH) {
+        throw new TypeError("pattern is too long");
+      }
+    };
+    exports2.assertValidPattern = assertValidPattern;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js
+var require_brace_expressions = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.parseClass = void 0;
+    var posixClasses = {
+      "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true],
+      "[:alpha:]": ["\\p{L}\\p{Nl}", true],
+      "[:ascii:]": ["\\x00-\\x7f", false],
+      "[:blank:]": ["\\p{Zs}\\t", true],
+      "[:cntrl:]": ["\\p{Cc}", true],
+      "[:digit:]": ["\\p{Nd}", true],
+      "[:graph:]": ["\\p{Z}\\p{C}", true, true],
+      "[:lower:]": ["\\p{Ll}", true],
+      "[:print:]": ["\\p{C}", true],
+      "[:punct:]": ["\\p{P}", true],
+      "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true],
+      "[:upper:]": ["\\p{Lu}", true],
+      "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true],
+      "[:xdigit:]": ["A-Fa-f0-9", false]
+    };
+    var braceEscape = (s) => s.replace(/[[\]\\-]/g, "\\$&");
+    var regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var rangesToString = (ranges) => ranges.join("");
+    var parseClass = (glob2, position) => {
+      const pos = position;
+      if (glob2.charAt(pos) !== "[") {
+        throw new Error("not in a brace expression");
+      }
+      const ranges = [];
+      const negs = [];
+      let i = pos + 1;
+      let sawStart = false;
+      let uflag = false;
+      let escaping = false;
+      let negate = false;
+      let endPos = pos;
+      let rangeStart = "";
+      WHILE: while (i < glob2.length) {
+        const c = glob2.charAt(i);
+        if ((c === "!" || c === "^") && i === pos + 1) {
+          negate = true;
+          i++;
+          continue;
+        }
+        if (c === "]" && sawStart && !escaping) {
+          endPos = i + 1;
+          break;
+        }
+        sawStart = true;
+        if (c === "\\") {
+          if (!escaping) {
+            escaping = true;
+            i++;
+            continue;
+          }
+        }
+        if (c === "[" && !escaping) {
+          for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) {
+            if (glob2.startsWith(cls, i)) {
+              if (rangeStart) {
+                return ["$.", false, glob2.length - pos, true];
+              }
+              i += cls.length;
+              if (neg)
+                negs.push(unip);
+              else
+                ranges.push(unip);
+              uflag = uflag || u;
+              continue WHILE;
+            }
+          }
+        }
+        escaping = false;
+        if (rangeStart) {
+          if (c > rangeStart) {
+            ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c));
+          } else if (c === rangeStart) {
+            ranges.push(braceEscape(c));
+          }
+          rangeStart = "";
+          i++;
+          continue;
+        }
+        if (glob2.startsWith("-]", i + 1)) {
+          ranges.push(braceEscape(c + "-"));
+          i += 2;
+          continue;
+        }
+        if (glob2.startsWith("-", i + 1)) {
+          rangeStart = c;
+          i += 2;
+          continue;
+        }
+        ranges.push(braceEscape(c));
+        i++;
+      }
+      if (endPos < i) {
+        return ["", false, 0, false];
+      }
+      if (!ranges.length && !negs.length) {
+        return ["$.", false, glob2.length - pos, true];
+      }
+      if (negs.length === 0 && ranges.length === 1 && /^\\?.$/.test(ranges[0]) && !negate) {
+        const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0];
+        return [regexpEscape(r), false, endPos - pos, false];
+      }
+      const sranges = "[" + (negate ? "^" : "") + rangesToString(ranges) + "]";
+      const snegs = "[" + (negate ? "" : "^") + rangesToString(negs) + "]";
+      const comb = ranges.length && negs.length ? "(" + sranges + "|" + snegs + ")" : ranges.length ? sranges : snegs;
+      return [comb, uflag, endPos - pos, true];
+    };
+    exports2.parseClass = parseClass;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js
+var require_unescape = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.unescape = void 0;
+    var unescape2 = (s, { windowsPathsNoEscape = false, magicalBraces = true } = {}) => {
+      if (magicalBraces) {
+        return windowsPathsNoEscape ? s.replace(/\[([^/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\])\]/g, "$1$2").replace(/\\([^/])/g, "$1");
+      }
+      return windowsPathsNoEscape ? s.replace(/\[([^/\\{}])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\{}])\]/g, "$1$2").replace(/\\([^/{}])/g, "$1");
+    };
+    exports2.unescape = unescape2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js
+var require_ast = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js"(exports2) {
+    "use strict";
+    var _a7;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AST = void 0;
+    var brace_expressions_js_1 = require_brace_expressions();
+    var unescape_js_1 = require_unescape();
+    var types2 = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
+    var isExtglobType = (c) => types2.has(c);
+    var isExtglobAST = (c) => isExtglobType(c.type);
+    var adoptionMap = /* @__PURE__ */ new Map([
+      ["!", ["@"]],
+      ["?", ["?", "@"]],
+      ["@", ["@"]],
+      ["*", ["*", "+", "?", "@"]],
+      ["+", ["+", "@"]]
+    ]);
+    var adoptionWithSpaceMap = /* @__PURE__ */ new Map([
+      ["!", ["?"]],
+      ["@", ["?"]],
+      ["+", ["?", "*"]]
+    ]);
+    var adoptionAnyMap = /* @__PURE__ */ new Map([
+      ["!", ["?", "@"]],
+      ["?", ["?", "@"]],
+      ["@", ["?", "@"]],
+      ["*", ["*", "+", "?", "@"]],
+      ["+", ["+", "@", "?", "*"]]
+    ]);
+    var usurpMap = /* @__PURE__ */ new Map([
+      ["!", /* @__PURE__ */ new Map([["!", "@"]])],
+      [
+        "?",
+        /* @__PURE__ */ new Map([
+          ["*", "*"],
+          ["+", "*"]
+        ])
+      ],
+      [
+        "@",
+        /* @__PURE__ */ new Map([
+          ["!", "!"],
+          ["?", "?"],
+          ["@", "@"],
+          ["*", "*"],
+          ["+", "+"]
+        ])
+      ],
+      [
+        "+",
+        /* @__PURE__ */ new Map([
+          ["?", "*"],
+          ["*", "*"]
+        ])
+      ]
+    ]);
+    var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
+    var startNoDot = "(?!\\.)";
+    var addPatternStart = /* @__PURE__ */ new Set(["[", "."]);
+    var justDots = /* @__PURE__ */ new Set(["..", "."]);
+    var reSpecials = new Set("().*{}+?[]^$\\!");
+    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var qmark = "[^/]";
+    var star = qmark + "*?";
+    var starNoEmpty = qmark + "+?";
+    var ID = 0;
+    var AST = class {
+      type;
+      #root;
+      #hasMagic;
+      #uflag = false;
+      #parts = [];
+      #parent;
+      #parentIndex;
+      #negs;
+      #filledNegs = false;
+      #options;
+      #toString;
+      // set to true if it's an extglob with no children
+      // (which really means one child of '')
+      #emptyExt = false;
+      id = ++ID;
+      get depth() {
+        return (this.#parent?.depth ?? -1) + 1;
+      }
+      [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")]() {
+        return {
+          "@@type": "AST",
+          id: this.id,
+          type: this.type,
+          root: this.#root.id,
+          parent: this.#parent?.id,
+          depth: this.depth,
+          partsLength: this.#parts.length,
+          parts: this.#parts
+        };
+      }
+      constructor(type, parent, options = {}) {
+        this.type = type;
+        if (type)
+          this.#hasMagic = true;
+        this.#parent = parent;
+        this.#root = this.#parent ? this.#parent.#root : this;
+        this.#options = this.#root === this ? options : this.#root.#options;
+        this.#negs = this.#root === this ? [] : this.#root.#negs;
+        if (type === "!" && !this.#root.#filledNegs)
+          this.#negs.push(this);
+        this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0;
+      }
+      get hasMagic() {
+        if (this.#hasMagic !== void 0)
+          return this.#hasMagic;
+        for (const p of this.#parts) {
+          if (typeof p === "string")
+            continue;
+          if (p.type || p.hasMagic)
+            return this.#hasMagic = true;
+        }
+        return this.#hasMagic;
+      }
+      // reconstructs the pattern
+      toString() {
+        return this.#toString !== void 0 ? this.#toString : !this.type ? this.#toString = this.#parts.map((p) => String(p)).join("") : this.#toString = this.type + "(" + this.#parts.map((p) => String(p)).join("|") + ")";
+      }
+      #fillNegs() {
+        if (this !== this.#root)
+          throw new Error("should only call on root");
+        if (this.#filledNegs)
+          return this;
+        this.toString();
+        this.#filledNegs = true;
+        let n;
+        while (n = this.#negs.pop()) {
+          if (n.type !== "!")
+            continue;
+          let p = n;
+          let pp = p.#parent;
+          while (pp) {
+            for (let i = p.#parentIndex + 1; !pp.type && i < pp.#parts.length; i++) {
+              for (const part of n.#parts) {
+                if (typeof part === "string") {
+                  throw new Error("string part in extglob AST??");
+                }
+                part.copyIn(pp.#parts[i]);
+              }
+            }
+            p = pp;
+            pp = p.#parent;
+          }
+        }
+        return this;
+      }
+      push(...parts) {
+        for (const p of parts) {
+          if (p === "")
+            continue;
+          if (typeof p !== "string" && !(p instanceof _a7 && p.#parent === this)) {
+            throw new Error("invalid part: " + p);
+          }
+          this.#parts.push(p);
+        }
+      }
+      toJSON() {
+        const ret = this.type === null ? this.#parts.slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...this.#parts.map((p) => p.toJSON())];
+        if (this.isStart() && !this.type)
+          ret.unshift([]);
+        if (this.isEnd() && (this === this.#root || this.#root.#filledNegs && this.#parent?.type === "!")) {
+          ret.push({});
+        }
+        return ret;
+      }
+      isStart() {
+        if (this.#root === this)
+          return true;
+        if (!this.#parent?.isStart())
+          return false;
+        if (this.#parentIndex === 0)
+          return true;
+        const p = this.#parent;
+        for (let i = 0; i < this.#parentIndex; i++) {
+          const pp = p.#parts[i];
+          if (!(pp instanceof _a7 && pp.type === "!")) {
+            return false;
+          }
+        }
+        return true;
+      }
+      isEnd() {
+        if (this.#root === this)
+          return true;
+        if (this.#parent?.type === "!")
+          return true;
+        if (!this.#parent?.isEnd())
+          return false;
+        if (!this.type)
+          return this.#parent?.isEnd();
+        const pl = this.#parent ? this.#parent.#parts.length : 0;
+        return this.#parentIndex === pl - 1;
+      }
+      copyIn(part) {
+        if (typeof part === "string")
+          this.push(part);
+        else
+          this.push(part.clone(this));
+      }
+      clone(parent) {
+        const c = new _a7(this.type, parent);
+        for (const p of this.#parts) {
+          c.copyIn(p);
+        }
+        return c;
+      }
+      static #parseAST(str, ast, pos, opt, extDepth) {
+        const maxDepth = opt.maxExtglobRecursion ?? 2;
+        let escaping = false;
+        let inBrace = false;
+        let braceStart = -1;
+        let braceNeg = false;
+        if (ast.type === null) {
+          let i2 = pos;
+          let acc2 = "";
+          while (i2 < str.length) {
+            const c = str.charAt(i2++);
+            if (escaping || c === "\\") {
+              escaping = !escaping;
+              acc2 += c;
+              continue;
+            }
+            if (inBrace) {
+              if (i2 === braceStart + 1) {
+                if (c === "^" || c === "!") {
+                  braceNeg = true;
+                }
+              } else if (c === "]" && !(i2 === braceStart + 2 && braceNeg)) {
+                inBrace = false;
+              }
+              acc2 += c;
+              continue;
+            } else if (c === "[") {
+              inBrace = true;
+              braceStart = i2;
+              braceNeg = false;
+              acc2 += c;
+              continue;
+            }
+            const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i2) === "(" && extDepth <= maxDepth;
+            if (doRecurse) {
+              ast.push(acc2);
+              acc2 = "";
+              const ext = new _a7(c, ast);
+              i2 = _a7.#parseAST(str, ext, i2, opt, extDepth + 1);
+              ast.push(ext);
+              continue;
+            }
+            acc2 += c;
+          }
+          ast.push(acc2);
+          return i2;
+        }
+        let i = pos + 1;
+        let part = new _a7(null, ast);
+        const parts = [];
+        let acc = "";
+        while (i < str.length) {
+          const c = str.charAt(i++);
+          if (escaping || c === "\\") {
+            escaping = !escaping;
+            acc += c;
+            continue;
+          }
+          if (inBrace) {
+            if (i === braceStart + 1) {
+              if (c === "^" || c === "!") {
+                braceNeg = true;
+              }
+            } else if (c === "]" && !(i === braceStart + 2 && braceNeg)) {
+              inBrace = false;
+            }
+            acc += c;
+            continue;
+          } else if (c === "[") {
+            inBrace = true;
+            braceStart = i;
+            braceNeg = false;
+            acc += c;
+            continue;
+          }
+          const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i) === "(" && /* c8 ignore start - the maxDepth is sufficient here */
+          (extDepth <= maxDepth || ast && ast.#canAdoptType(c));
+          if (doRecurse) {
+            const depthAdd = ast && ast.#canAdoptType(c) ? 0 : 1;
+            part.push(acc);
+            acc = "";
+            const ext = new _a7(c, part);
+            part.push(ext);
+            i = _a7.#parseAST(str, ext, i, opt, extDepth + depthAdd);
+            continue;
+          }
+          if (c === "|") {
+            part.push(acc);
+            acc = "";
+            parts.push(part);
+            part = new _a7(null, ast);
+            continue;
+          }
+          if (c === ")") {
+            if (acc === "" && ast.#parts.length === 0) {
+              ast.#emptyExt = true;
+            }
+            part.push(acc);
+            acc = "";
+            ast.push(...parts, part);
+            return i;
+          }
+          acc += c;
+        }
+        ast.type = null;
+        ast.#hasMagic = void 0;
+        ast.#parts = [str.substring(pos - 1)];
+        return i;
+      }
+      #canAdoptWithSpace(child) {
+        return this.#canAdopt(child, adoptionWithSpaceMap);
+      }
+      #canAdopt(child, map = adoptionMap) {
+        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null) {
+          return false;
+        }
+        const gc = child.#parts[0];
+        if (!gc || typeof gc !== "object" || gc.type === null) {
+          return false;
+        }
+        return this.#canAdoptType(gc.type, map);
+      }
+      #canAdoptType(c, map = adoptionAnyMap) {
+        return !!map.get(this.type)?.includes(c);
+      }
+      #adoptWithSpace(child, index) {
+        const gc = child.#parts[0];
+        const blank = new _a7(null, gc, this.options);
+        blank.#parts.push("");
+        gc.push(blank);
+        this.#adopt(child, index);
+      }
+      #adopt(child, index) {
+        const gc = child.#parts[0];
+        this.#parts.splice(index, 1, ...gc.#parts);
+        for (const p of gc.#parts) {
+          if (typeof p === "object")
+            p.#parent = this;
+        }
+        this.#toString = void 0;
+      }
+      #canUsurpType(c) {
+        const m = usurpMap.get(this.type);
+        return !!m?.has(c);
+      }
+      #canUsurp(child) {
+        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null || this.#parts.length !== 1) {
+          return false;
+        }
+        const gc = child.#parts[0];
+        if (!gc || typeof gc !== "object" || gc.type === null) {
+          return false;
+        }
+        return this.#canUsurpType(gc.type);
+      }
+      #usurp(child) {
+        const m = usurpMap.get(this.type);
+        const gc = child.#parts[0];
+        const nt = m?.get(gc.type);
+        if (!nt)
+          return false;
+        this.#parts = gc.#parts;
+        for (const p of this.#parts) {
+          if (typeof p === "object") {
+            p.#parent = this;
+          }
+        }
+        this.type = nt;
+        this.#toString = void 0;
+        this.#emptyExt = false;
+      }
+      static fromGlob(pattern, options = {}) {
+        const ast = new _a7(null, void 0, options);
+        _a7.#parseAST(pattern, ast, 0, options, 0);
+        return ast;
+      }
+      // returns the regular expression if there's magic, or the unescaped
+      // string if not.
+      toMMPattern() {
+        if (this !== this.#root)
+          return this.#root.toMMPattern();
+        const glob2 = this.toString();
+        const [re, body, hasMagic, uflag] = this.toRegExpSource();
+        const anyMagic = hasMagic || this.#hasMagic || this.#options.nocase && !this.#options.nocaseMagicOnly && glob2.toUpperCase() !== glob2.toLowerCase();
+        if (!anyMagic) {
+          return body;
+        }
+        const flags = (this.#options.nocase ? "i" : "") + (uflag ? "u" : "");
+        return Object.assign(new RegExp(`^${re}$`, flags), {
+          _src: re,
+          _glob: glob2
+        });
+      }
+      get options() {
+        return this.#options;
+      }
+      // returns the string match, the regexp source, whether there's magic
+      // in the regexp (so a regular expression is required) and whether or
+      // not the uflag is needed for the regular expression (for posix classes)
+      // TODO: instead of injecting the start/end at this point, just return
+      // the BODY of the regexp, along with the start/end portions suitable
+      // for binding the start/end in either a joined full-path makeRe context
+      // (where we bind to (^|/), or a standalone matchPart context (where
+      // we bind to ^, and not /).  Otherwise slashes get duped!
+      //
+      // In part-matching mode, the start is:
+      // - if not isStart: nothing
+      // - if traversal possible, but not allowed: ^(?!\.\.?$)
+      // - if dots allowed or not possible: ^
+      // - if dots possible and not allowed: ^(?!\.)
+      // end is:
+      // - if not isEnd(): nothing
+      // - else: $
+      //
+      // In full-path matching mode, we put the slash at the START of the
+      // pattern, so start is:
+      // - if first pattern: same as part-matching mode
+      // - if not isStart(): nothing
+      // - if traversal possible, but not allowed: /(?!\.\.?(?:$|/))
+      // - if dots allowed or not possible: /
+      // - if dots possible and not allowed: /(?!\.)
+      // end is:
+      // - if last pattern, same as part-matching mode
+      // - else nothing
+      //
+      // Always put the (?:$|/) on negated tails, though, because that has to be
+      // there to bind the end of the negated pattern portion, and it's easier to
+      // just stick it in now rather than try to inject it later in the middle of
+      // the pattern.
+      //
+      // We can just always return the same end, and leave it up to the caller
+      // to know whether it's going to be used joined or in parts.
+      // And, if the start is adjusted slightly, can do the same there:
+      // - if not isStart: nothing
+      // - if traversal possible, but not allowed: (?:/|^)(?!\.\.?$)
+      // - if dots allowed or not possible: (?:/|^)
+      // - if dots possible and not allowed: (?:/|^)(?!\.)
+      //
+      // But it's better to have a simpler binding without a conditional, for
+      // performance, so probably better to return both start options.
+      //
+      // Then the caller just ignores the end if it's not the first pattern,
+      // and the start always gets applied.
+      //
+      // But that's always going to be $ if it's the ending pattern, or nothing,
+      // so the caller can just attach $ at the end of the pattern when building.
+      //
+      // So the todo is:
+      // - better detect what kind of start is needed
+      // - return both flavors of starting pattern
+      // - attach $ at the end of the pattern when creating the actual RegExp
+      //
+      // Ah, but wait, no, that all only applies to the root when the first pattern
+      // is not an extglob. If the first pattern IS an extglob, then we need all
+      // that dot prevention biz to live in the extglob portions, because eg
+      // +(*|.x*) can match .xy but not .yx.
+      //
+      // So, return the two flavors if it's #root and the first child is not an
+      // AST, otherwise leave it to the child AST to handle it, and there,
+      // use the (?:^|/) style of start binding.
+      //
+      // Even simplified further:
+      // - Since the start for a join is eg /(?!\.) and the start for a part
+      // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root
+      // or start or whatever) and prepend ^ or / at the Regexp construction.
+      toRegExpSource(allowDot) {
+        const dot = allowDot ?? !!this.#options.dot;
+        if (this.#root === this) {
+          this.#flatten();
+          this.#fillNegs();
+        }
+        if (!isExtglobAST(this)) {
+          const noEmpty = this.isStart() && this.isEnd() && !this.#parts.some((s) => typeof s !== "string");
+          const src = this.#parts.map((p) => {
+            const [re, _, hasMagic, uflag] = typeof p === "string" ? _a7.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot);
+            this.#hasMagic = this.#hasMagic || hasMagic;
+            this.#uflag = this.#uflag || uflag;
+            return re;
+          }).join("");
+          let start2 = "";
+          if (this.isStart()) {
+            if (typeof this.#parts[0] === "string") {
+              const dotTravAllowed = this.#parts.length === 1 && justDots.has(this.#parts[0]);
+              if (!dotTravAllowed) {
+                const aps = addPatternStart;
+                const needNoTrav = (
+                  // dots are allowed, and the pattern starts with [ or .
+                  dot && aps.has(src.charAt(0)) || // the pattern starts with \., and then [ or .
+                  src.startsWith("\\.") && aps.has(src.charAt(2)) || // the pattern starts with \.\., and then [ or .
+                  src.startsWith("\\.\\.") && aps.has(src.charAt(4))
+                );
+                const needNoDot = !dot && !allowDot && aps.has(src.charAt(0));
+                start2 = needNoTrav ? startNoTraversal : needNoDot ? startNoDot : "";
+              }
+            }
+          }
+          let end = "";
+          if (this.isEnd() && this.#root.#filledNegs && this.#parent?.type === "!") {
+            end = "(?:$|\\/)";
+          }
+          const final2 = start2 + src + end;
+          return [
+            final2,
+            (0, unescape_js_1.unescape)(src),
+            this.#hasMagic = !!this.#hasMagic,
+            this.#uflag
+          ];
+        }
+        const repeated = this.type === "*" || this.type === "+";
+        const start = this.type === "!" ? "(?:(?!(?:" : "(?:";
+        let body = this.#partsToRegExp(dot);
+        if (this.isStart() && this.isEnd() && !body && this.type !== "!") {
+          const s = this.toString();
+          const me = this;
+          me.#parts = [s];
+          me.type = null;
+          me.#hasMagic = void 0;
+          return [s, (0, unescape_js_1.unescape)(this.toString()), false, false];
+        }
+        let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : this.#partsToRegExp(true);
+        if (bodyDotAllowed === body) {
+          bodyDotAllowed = "";
+        }
+        if (bodyDotAllowed) {
+          body = `(?:${body})(?:${bodyDotAllowed})*?`;
+        }
+        let final = "";
+        if (this.type === "!" && this.#emptyExt) {
+          final = (this.isStart() && !dot ? startNoDot : "") + starNoEmpty;
+        } else {
+          const close = this.type === "!" ? (
+            // !() must match something,but !(x) can match ''
+            "))" + (this.isStart() && !dot && !allowDot ? startNoDot : "") + star + ")"
+          ) : this.type === "@" ? ")" : this.type === "?" ? ")?" : this.type === "+" && bodyDotAllowed ? ")" : this.type === "*" && bodyDotAllowed ? `)?` : `)${this.type}`;
+          final = start + body + close;
+        }
+        return [
+          final,
+          (0, unescape_js_1.unescape)(body),
+          this.#hasMagic = !!this.#hasMagic,
+          this.#uflag
+        ];
+      }
+      #flatten() {
+        if (!isExtglobAST(this)) {
+          for (const p of this.#parts) {
+            if (typeof p === "object") {
+              p.#flatten();
+            }
+          }
+        } else {
+          let iterations = 0;
+          let done = false;
+          do {
+            done = true;
+            for (let i = 0; i < this.#parts.length; i++) {
+              const c = this.#parts[i];
+              if (typeof c === "object") {
+                c.#flatten();
+                if (this.#canAdopt(c)) {
+                  done = false;
+                  this.#adopt(c, i);
+                } else if (this.#canAdoptWithSpace(c)) {
+                  done = false;
+                  this.#adoptWithSpace(c, i);
+                } else if (this.#canUsurp(c)) {
+                  done = false;
+                  this.#usurp(c);
+                }
+              }
+            }
+          } while (!done && ++iterations < 10);
+        }
+        this.#toString = void 0;
+      }
+      #partsToRegExp(dot) {
+        return this.#parts.map((p) => {
+          if (typeof p === "string") {
+            throw new Error("string type in extglob ast??");
+          }
+          const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot);
+          this.#uflag = this.#uflag || uflag;
+          return re;
+        }).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|");
+      }
+      static #parseGlob(glob2, hasMagic, noEmpty = false) {
+        let escaping = false;
+        let re = "";
+        let uflag = false;
+        let inStar = false;
+        for (let i = 0; i < glob2.length; i++) {
+          const c = glob2.charAt(i);
+          if (escaping) {
+            escaping = false;
+            re += (reSpecials.has(c) ? "\\" : "") + c;
+            continue;
+          }
+          if (c === "*") {
+            if (inStar)
+              continue;
+            inStar = true;
+            re += noEmpty && /^[*]+$/.test(glob2) ? starNoEmpty : star;
+            hasMagic = true;
+            continue;
+          } else {
+            inStar = false;
+          }
+          if (c === "\\") {
+            if (i === glob2.length - 1) {
+              re += "\\\\";
+            } else {
+              escaping = true;
+            }
+            continue;
+          }
+          if (c === "[") {
+            const [src, needUflag, consumed, magic] = (0, brace_expressions_js_1.parseClass)(glob2, i);
+            if (consumed) {
+              re += src;
+              uflag = uflag || needUflag;
+              i += consumed - 1;
+              hasMagic = hasMagic || magic;
+              continue;
+            }
+          }
+          if (c === "?") {
+            re += qmark;
+            hasMagic = true;
+            continue;
+          }
+          re += regExpEscape(c);
+        }
+        return [re, (0, unescape_js_1.unescape)(glob2), !!hasMagic, uflag];
+      }
+    };
+    exports2.AST = AST;
+    _a7 = AST;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js
+var require_escape = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.escape = void 0;
+    var escape = (s, { windowsPathsNoEscape = false, magicalBraces = false } = {}) => {
+      if (magicalBraces) {
+        return windowsPathsNoEscape ? s.replace(/[?*()[\]{}]/g, "[$&]") : s.replace(/[?*()[\]\\{}]/g, "\\$&");
+      }
+      return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&");
+    };
+    exports2.escape = escape;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js
+var require_commonjs3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.unescape = exports2.escape = exports2.AST = exports2.Minimatch = exports2.match = exports2.makeRe = exports2.braceExpand = exports2.defaults = exports2.filter = exports2.GLOBSTAR = exports2.sep = exports2.minimatch = void 0;
+    var brace_expansion_1 = require_commonjs2();
+    var assert_valid_pattern_js_1 = require_assert_valid_pattern();
+    var ast_js_1 = require_ast();
+    var escape_js_1 = require_escape();
+    var unescape_js_1 = require_unescape();
+    var minimatch4 = (p, pattern, options = {}) => {
+      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+      if (!options.nocomment && pattern.charAt(0) === "#") {
+        return false;
+      }
+      return new Minimatch(pattern, options).match(p);
+    };
+    exports2.minimatch = minimatch4;
+    var starDotExtRE = /^\*+([^+@!?*[(]*)$/;
+    var starDotExtTest = (ext2) => (f) => !f.startsWith(".") && f.endsWith(ext2);
+    var starDotExtTestDot = (ext2) => (f) => f.endsWith(ext2);
+    var starDotExtTestNocase = (ext2) => {
+      ext2 = ext2.toLowerCase();
+      return (f) => !f.startsWith(".") && f.toLowerCase().endsWith(ext2);
+    };
+    var starDotExtTestNocaseDot = (ext2) => {
+      ext2 = ext2.toLowerCase();
+      return (f) => f.toLowerCase().endsWith(ext2);
+    };
+    var starDotStarRE = /^\*+\.\*+$/;
+    var starDotStarTest = (f) => !f.startsWith(".") && f.includes(".");
+    var starDotStarTestDot = (f) => f !== "." && f !== ".." && f.includes(".");
+    var dotStarRE = /^\.\*+$/;
+    var dotStarTest = (f) => f !== "." && f !== ".." && f.startsWith(".");
+    var starRE = /^\*+$/;
+    var starTest = (f) => f.length !== 0 && !f.startsWith(".");
+    var starTestDot = (f) => f.length !== 0 && f !== "." && f !== "..";
+    var qmarksRE = /^\?+([^+@!?*[(]*)?$/;
+    var qmarksTestNocase = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExt([$0]);
+      if (!ext2)
+        return noext;
+      ext2 = ext2.toLowerCase();
+      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
+    };
+    var qmarksTestNocaseDot = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExtDot([$0]);
+      if (!ext2)
+        return noext;
+      ext2 = ext2.toLowerCase();
+      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
+    };
+    var qmarksTestDot = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExtDot([$0]);
+      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
+    };
+    var qmarksTest = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExt([$0]);
+      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
+    };
+    var qmarksTestNoExt = ([$0]) => {
+      const len = $0.length;
+      return (f) => f.length === len && !f.startsWith(".");
+    };
+    var qmarksTestNoExtDot = ([$0]) => {
+      const len = $0.length;
+      return (f) => f.length === len && f !== "." && f !== "..";
+    };
+    var defaultPlatform = typeof process === "object" && process ? typeof process.env === "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix";
+    var path23 = {
+      win32: { sep: "\\" },
+      posix: { sep: "/" }
+    };
+    exports2.sep = defaultPlatform === "win32" ? path23.win32.sep : path23.posix.sep;
+    exports2.minimatch.sep = exports2.sep;
+    exports2.GLOBSTAR = /* @__PURE__ */ Symbol("globstar **");
+    exports2.minimatch.GLOBSTAR = exports2.GLOBSTAR;
+    var qmark = "[^/]";
+    var star = qmark + "*?";
+    var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
+    var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
+    var filter = (pattern, options = {}) => (p) => (0, exports2.minimatch)(p, pattern, options);
+    exports2.filter = filter;
+    exports2.minimatch.filter = exports2.filter;
+    var ext = (a, b = {}) => Object.assign({}, a, b);
+    var defaults = (def) => {
+      if (!def || typeof def !== "object" || !Object.keys(def).length) {
+        return exports2.minimatch;
+      }
+      const orig = exports2.minimatch;
+      const m = (p, pattern, options = {}) => orig(p, pattern, ext(def, options));
+      return Object.assign(m, {
+        Minimatch: class Minimatch extends orig.Minimatch {
+          constructor(pattern, options = {}) {
+            super(pattern, ext(def, options));
+          }
+          static defaults(options) {
+            return orig.defaults(ext(def, options)).Minimatch;
+          }
+        },
+        AST: class AST extends orig.AST {
+          /* c8 ignore start */
+          constructor(type, parent, options = {}) {
+            super(type, parent, ext(def, options));
+          }
+          /* c8 ignore stop */
+          static fromGlob(pattern, options = {}) {
+            return orig.AST.fromGlob(pattern, ext(def, options));
+          }
+        },
+        unescape: (s, options = {}) => orig.unescape(s, ext(def, options)),
+        escape: (s, options = {}) => orig.escape(s, ext(def, options)),
+        filter: (pattern, options = {}) => orig.filter(pattern, ext(def, options)),
+        defaults: (options) => orig.defaults(ext(def, options)),
+        makeRe: (pattern, options = {}) => orig.makeRe(pattern, ext(def, options)),
+        braceExpand: (pattern, options = {}) => orig.braceExpand(pattern, ext(def, options)),
+        match: (list, pattern, options = {}) => orig.match(list, pattern, ext(def, options)),
+        sep: orig.sep,
+        GLOBSTAR: exports2.GLOBSTAR
+      });
+    };
+    exports2.defaults = defaults;
+    exports2.minimatch.defaults = exports2.defaults;
+    var braceExpand = (pattern, options = {}) => {
+      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+      if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
+        return [pattern];
+      }
+      return (0, brace_expansion_1.expand)(pattern, { max: options.braceExpandMax });
+    };
+    exports2.braceExpand = braceExpand;
+    exports2.minimatch.braceExpand = exports2.braceExpand;
+    var makeRe = (pattern, options = {}) => new Minimatch(pattern, options).makeRe();
+    exports2.makeRe = makeRe;
+    exports2.minimatch.makeRe = exports2.makeRe;
+    var match = (list, pattern, options = {}) => {
+      const mm = new Minimatch(pattern, options);
+      list = list.filter((f) => mm.match(f));
+      if (mm.options.nonull && !list.length) {
+        list.push(pattern);
+      }
+      return list;
+    };
+    exports2.match = match;
+    exports2.minimatch.match = exports2.match;
+    var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
+    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var Minimatch = class {
+      options;
+      set;
+      pattern;
+      windowsPathsNoEscape;
+      nonegate;
+      negate;
+      comment;
+      empty;
+      preserveMultipleSlashes;
+      partial;
+      globSet;
+      globParts;
+      nocase;
+      isWindows;
+      platform;
+      windowsNoMagicRoot;
+      maxGlobstarRecursion;
+      regexp;
+      constructor(pattern, options = {}) {
+        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+        options = options || {};
+        this.options = options;
+        this.maxGlobstarRecursion = options.maxGlobstarRecursion ?? 200;
+        this.pattern = pattern;
+        this.platform = options.platform || defaultPlatform;
+        this.isWindows = this.platform === "win32";
+        const awe = "allowWindowsEscape";
+        this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options[awe] === false;
+        if (this.windowsPathsNoEscape) {
+          this.pattern = this.pattern.replace(/\\/g, "/");
+        }
+        this.preserveMultipleSlashes = !!options.preserveMultipleSlashes;
+        this.regexp = null;
+        this.negate = false;
+        this.nonegate = !!options.nonegate;
+        this.comment = false;
+        this.empty = false;
+        this.partial = !!options.partial;
+        this.nocase = !!this.options.nocase;
+        this.windowsNoMagicRoot = options.windowsNoMagicRoot !== void 0 ? options.windowsNoMagicRoot : !!(this.isWindows && this.nocase);
+        this.globSet = [];
+        this.globParts = [];
+        this.set = [];
+        this.make();
+      }
+      hasMagic() {
+        if (this.options.magicalBraces && this.set.length > 1) {
+          return true;
+        }
+        for (const pattern of this.set) {
+          for (const part of pattern) {
+            if (typeof part !== "string")
+              return true;
+          }
+        }
+        return false;
+      }
+      debug(..._) {
+      }
+      make() {
+        const pattern = this.pattern;
+        const options = this.options;
+        if (!options.nocomment && pattern.charAt(0) === "#") {
+          this.comment = true;
+          return;
+        }
+        if (!pattern) {
+          this.empty = true;
+          return;
+        }
+        this.parseNegate();
+        this.globSet = [...new Set(this.braceExpand())];
+        if (options.debug) {
+          this.debug = (...args) => console.error(...args);
+        }
+        this.debug(this.pattern, this.globSet);
+        const rawGlobParts = this.globSet.map((s) => this.slashSplit(s));
+        this.globParts = this.preprocess(rawGlobParts);
+        this.debug(this.pattern, this.globParts);
+        let set = this.globParts.map((s, _, __) => {
+          if (this.isWindows && this.windowsNoMagicRoot) {
+            const isUNC = s[0] === "" && s[1] === "" && (s[2] === "?" || !globMagic.test(s[2])) && !globMagic.test(s[3]);
+            const isDrive = /^[a-z]:/i.test(s[0]);
+            if (isUNC) {
+              return [
+                ...s.slice(0, 4),
+                ...s.slice(4).map((ss) => this.parse(ss))
+              ];
+            } else if (isDrive) {
+              return [s[0], ...s.slice(1).map((ss) => this.parse(ss))];
+            }
+          }
+          return s.map((ss) => this.parse(ss));
+        });
+        this.debug(this.pattern, set);
+        this.set = set.filter((s) => s.indexOf(false) === -1);
+        if (this.isWindows) {
+          for (let i = 0; i < this.set.length; i++) {
+            const p = this.set[i];
+            if (p[0] === "" && p[1] === "" && this.globParts[i][2] === "?" && typeof p[3] === "string" && /^[a-z]:$/i.test(p[3])) {
+              p[2] = "?";
+            }
+          }
+        }
+        this.debug(this.pattern, this.set);
+      }
+      // various transforms to equivalent pattern sets that are
+      // faster to process in a filesystem walk.  The goal is to
+      // eliminate what we can, and push all ** patterns as far
+      // to the right as possible, even if it increases the number
+      // of patterns that we have to process.
+      preprocess(globParts) {
+        if (this.options.noglobstar) {
+          for (const partset of globParts) {
+            for (let j = 0; j < partset.length; j++) {
+              if (partset[j] === "**") {
+                partset[j] = "*";
+              }
+            }
+          }
+        }
+        const { optimizationLevel = 1 } = this.options;
+        if (optimizationLevel >= 2) {
+          globParts = this.firstPhasePreProcess(globParts);
+          globParts = this.secondPhasePreProcess(globParts);
+        } else if (optimizationLevel >= 1) {
+          globParts = this.levelOneOptimize(globParts);
+        } else {
+          globParts = this.adjascentGlobstarOptimize(globParts);
+        }
+        return globParts;
+      }
+      // just get rid of adjascent ** portions
+      adjascentGlobstarOptimize(globParts) {
+        return globParts.map((parts) => {
+          let gs = -1;
+          while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+            let i = gs;
+            while (parts[i + 1] === "**") {
+              i++;
+            }
+            if (i !== gs) {
+              parts.splice(gs, i - gs);
+            }
+          }
+          return parts;
+        });
+      }
+      // get rid of adjascent ** and resolve .. portions
+      levelOneOptimize(globParts) {
+        return globParts.map((parts) => {
+          parts = parts.reduce((set, part) => {
+            const prev = set[set.length - 1];
+            if (part === "**" && prev === "**") {
+              return set;
+            }
+            if (part === "..") {
+              if (prev && prev !== ".." && prev !== "." && prev !== "**") {
+                set.pop();
+                return set;
+              }
+            }
+            set.push(part);
+            return set;
+          }, []);
+          return parts.length === 0 ? [""] : parts;
+        });
+      }
+      levelTwoFileOptimize(parts) {
+        if (!Array.isArray(parts)) {
+          parts = this.slashSplit(parts);
+        }
+        let didSomething = false;
+        do {
+          didSomething = false;
+          if (!this.preserveMultipleSlashes) {
+            for (let i = 1; i < parts.length - 1; i++) {
+              const p = parts[i];
+              if (i === 1 && p === "" && parts[0] === "")
+                continue;
+              if (p === "." || p === "") {
+                didSomething = true;
+                parts.splice(i, 1);
+                i--;
+              }
+            }
+            if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+              didSomething = true;
+              parts.pop();
+            }
+          }
+          let dd = 0;
+          while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+            const p = parts[dd - 1];
+            if (p && p !== "." && p !== ".." && p !== "**" && !(this.isWindows && /^[a-z]:$/i.test(p))) {
+              didSomething = true;
+              parts.splice(dd - 1, 2);
+              dd -= 2;
+            }
+          }
+        } while (didSomething);
+        return parts.length === 0 ? [""] : parts;
+      }
+      // First phase: single-pattern processing
+      // 
 is 1 or more portions
+      //  is 1 or more portions
+      // 

is any portion other than ., .., '', or ** + // is . or '' + // + // **/.. is *brutal* for filesystem walking performance, because + // it effectively resets the recursive walk each time it occurs, + // and ** cannot be reduced out by a .. pattern part like a regexp + // or most strings (other than .., ., and '') can be. + // + //

/**/../

/

/ -> {

/../

/

/,

/**/

/

/} + //

// -> 
/
+      // 
/

/../ ->

/
+      // **/**/ -> **/
+      //
+      // **/*/ -> */**/ <== not valid because ** doesn't follow
+      // this WOULD be allowed if ** did follow symlinks, or * didn't
+      firstPhasePreProcess(globParts) {
+        let didSomething = false;
+        do {
+          didSomething = false;
+          for (let parts of globParts) {
+            let gs = -1;
+            while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+              let gss = gs;
+              while (parts[gss + 1] === "**") {
+                gss++;
+              }
+              if (gss > gs) {
+                parts.splice(gs + 1, gss - gs);
+              }
+              let next = parts[gs + 1];
+              const p = parts[gs + 2];
+              const p2 = parts[gs + 3];
+              if (next !== "..")
+                continue;
+              if (!p || p === "." || p === ".." || !p2 || p2 === "." || p2 === "..") {
+                continue;
+              }
+              didSomething = true;
+              parts.splice(gs, 1);
+              const other = parts.slice(0);
+              other[gs] = "**";
+              globParts.push(other);
+              gs--;
+            }
+            if (!this.preserveMultipleSlashes) {
+              for (let i = 1; i < parts.length - 1; i++) {
+                const p = parts[i];
+                if (i === 1 && p === "" && parts[0] === "")
+                  continue;
+                if (p === "." || p === "") {
+                  didSomething = true;
+                  parts.splice(i, 1);
+                  i--;
+                }
+              }
+              if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+                didSomething = true;
+                parts.pop();
+              }
+            }
+            let dd = 0;
+            while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+              const p = parts[dd - 1];
+              if (p && p !== "." && p !== ".." && p !== "**") {
+                didSomething = true;
+                const needDot = dd === 1 && parts[dd + 1] === "**";
+                const splin = needDot ? ["."] : [];
+                parts.splice(dd - 1, 2, ...splin);
+                if (parts.length === 0)
+                  parts.push("");
+                dd -= 2;
+              }
+            }
+          }
+        } while (didSomething);
+        return globParts;
+      }
+      // second phase: multi-pattern dedupes
+      // {
/*/,
/

/} ->

/*/
+      // {
/,
/} -> 
/
+      // {
/**/,
/} -> 
/**/
+      //
+      // {
/**/,
/**/

/} ->

/**/
+      // ^-- not valid because ** doens't follow symlinks
+      secondPhasePreProcess(globParts) {
+        for (let i = 0; i < globParts.length - 1; i++) {
+          for (let j = i + 1; j < globParts.length; j++) {
+            const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
+            if (matched) {
+              globParts[i] = [];
+              globParts[j] = matched;
+              break;
+            }
+          }
+        }
+        return globParts.filter((gs) => gs.length);
+      }
+      partsMatch(a, b, emptyGSMatch = false) {
+        let ai = 0;
+        let bi = 0;
+        let result = [];
+        let which = "";
+        while (ai < a.length && bi < b.length) {
+          if (a[ai] === b[bi]) {
+            result.push(which === "b" ? b[bi] : a[ai]);
+            ai++;
+            bi++;
+          } else if (emptyGSMatch && a[ai] === "**" && b[bi] === a[ai + 1]) {
+            result.push(a[ai]);
+            ai++;
+          } else if (emptyGSMatch && b[bi] === "**" && a[ai] === b[bi + 1]) {
+            result.push(b[bi]);
+            bi++;
+          } else if (a[ai] === "*" && b[bi] && (this.options.dot || !b[bi].startsWith(".")) && b[bi] !== "**") {
+            if (which === "b")
+              return false;
+            which = "a";
+            result.push(a[ai]);
+            ai++;
+            bi++;
+          } else if (b[bi] === "*" && a[ai] && (this.options.dot || !a[ai].startsWith(".")) && a[ai] !== "**") {
+            if (which === "a")
+              return false;
+            which = "b";
+            result.push(b[bi]);
+            ai++;
+            bi++;
+          } else {
+            return false;
+          }
+        }
+        return a.length === b.length && result;
+      }
+      parseNegate() {
+        if (this.nonegate)
+          return;
+        const pattern = this.pattern;
+        let negate = false;
+        let negateOffset = 0;
+        for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) {
+          negate = !negate;
+          negateOffset++;
+        }
+        if (negateOffset)
+          this.pattern = pattern.slice(negateOffset);
+        this.negate = negate;
+      }
+      // set partial to true to test if, for example,
+      // "/a/b" matches the start of "/*/b/*/d"
+      // Partial means, if you run out of file before you run
+      // out of pattern, then that's fine, as long as all
+      // the parts match.
+      matchOne(file, pattern, partial = false) {
+        let fileStartIndex = 0;
+        let patternStartIndex = 0;
+        if (this.isWindows) {
+          const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
+          const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
+          const patternDrive = typeof pattern[0] === "string" && /^[a-z]:$/i.test(pattern[0]);
+          const patternUNC = !patternDrive && pattern[0] === "" && pattern[1] === "" && pattern[2] === "?" && typeof pattern[3] === "string" && /^[a-z]:$/i.test(pattern[3]);
+          const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
+          const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
+          if (typeof fdi === "number" && typeof pdi === "number") {
+            const [fd, pd] = [
+              file[fdi],
+              pattern[pdi]
+            ];
+            if (fd.toLowerCase() === pd.toLowerCase()) {
+              pattern[pdi] = fd;
+              patternStartIndex = pdi;
+              fileStartIndex = fdi;
+            }
+          }
+        }
+        const { optimizationLevel = 1 } = this.options;
+        if (optimizationLevel >= 2) {
+          file = this.levelTwoFileOptimize(file);
+        }
+        if (pattern.includes(exports2.GLOBSTAR)) {
+          return this.#matchGlobstar(file, pattern, partial, fileStartIndex, patternStartIndex);
+        }
+        return this.#matchOne(file, pattern, partial, fileStartIndex, patternStartIndex);
+      }
+      #matchGlobstar(file, pattern, partial, fileIndex, patternIndex) {
+        const firstgs = pattern.indexOf(exports2.GLOBSTAR, patternIndex);
+        const lastgs = pattern.lastIndexOf(exports2.GLOBSTAR);
+        const [head, body, tail] = partial ? [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1),
+          []
+        ] : [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1, lastgs),
+          pattern.slice(lastgs + 1)
+        ];
+        if (head.length) {
+          const fileHead = file.slice(fileIndex, fileIndex + head.length);
+          if (!this.#matchOne(fileHead, head, partial, 0, 0)) {
+            return false;
+          }
+          fileIndex += head.length;
+          patternIndex += head.length;
+        }
+        let fileTailMatch = 0;
+        if (tail.length) {
+          if (tail.length + fileIndex > file.length)
+            return false;
+          let tailStart = file.length - tail.length;
+          if (this.#matchOne(file, tail, partial, tailStart, 0)) {
+            fileTailMatch = tail.length;
+          } else {
+            if (file[file.length - 1] !== "" || fileIndex + tail.length === file.length) {
+              return false;
+            }
+            tailStart--;
+            if (!this.#matchOne(file, tail, partial, tailStart, 0)) {
+              return false;
+            }
+            fileTailMatch = tail.length + 1;
+          }
+        }
+        if (!body.length) {
+          let sawSome = !!fileTailMatch;
+          for (let i2 = fileIndex; i2 < file.length - fileTailMatch; i2++) {
+            const f = String(file[i2]);
+            sawSome = true;
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return partial || sawSome;
+        }
+        const bodySegments = [[[], 0]];
+        let currentBody = bodySegments[0];
+        let nonGsParts = 0;
+        const nonGsPartsSums = [0];
+        for (const b of body) {
+          if (b === exports2.GLOBSTAR) {
+            nonGsPartsSums.push(nonGsParts);
+            currentBody = [[], 0];
+            bodySegments.push(currentBody);
+          } else {
+            currentBody[0].push(b);
+            nonGsParts++;
+          }
+        }
+        let i = bodySegments.length - 1;
+        const fileLength = file.length - fileTailMatch;
+        for (const b of bodySegments) {
+          b[1] = fileLength - (nonGsPartsSums[i--] + b[0].length);
+        }
+        return !!this.#matchGlobStarBodySections(file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
+      }
+      // return false for "nope, not matching"
+      // return null for "not matching, cannot keep trying"
+      #matchGlobStarBodySections(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
+        const bs = bodySegments[bodyIndex];
+        if (!bs) {
+          for (let i = fileIndex; i < file.length; i++) {
+            sawTail = true;
+            const f = file[i];
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return sawTail;
+        }
+        const [body, after] = bs;
+        while (fileIndex <= after) {
+          const m = this.#matchOne(file.slice(0, fileIndex + body.length), body, partial, fileIndex, 0);
+          if (m && globStarDepth < this.maxGlobstarRecursion) {
+            const sub = this.#matchGlobStarBodySections(file, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
+            if (sub !== false) {
+              return sub;
+            }
+          }
+          const f = file[fileIndex];
+          if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+            return false;
+          }
+          fileIndex++;
+        }
+        return partial || null;
+      }
+      #matchOne(file, pattern, partial, fileIndex, patternIndex) {
+        let fi;
+        let pi;
+        let pl;
+        let fl;
+        for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
+          this.debug("matchOne loop");
+          let p = pattern[pi];
+          let f = file[fi];
+          this.debug(pattern, p, f);
+          if (p === false || p === exports2.GLOBSTAR) {
+            return false;
+          }
+          let hit;
+          if (typeof p === "string") {
+            hit = f === p;
+            this.debug("string match", p, f, hit);
+          } else {
+            hit = p.test(f);
+            this.debug("pattern match", p, f, hit);
+          }
+          if (!hit)
+            return false;
+        }
+        if (fi === fl && pi === pl) {
+          return true;
+        } else if (fi === fl) {
+          return partial;
+        } else if (pi === pl) {
+          return fi === fl - 1 && file[fi] === "";
+        } else {
+          throw new Error("wtf?");
+        }
+      }
+      braceExpand() {
+        return (0, exports2.braceExpand)(this.pattern, this.options);
+      }
+      parse(pattern) {
+        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+        const options = this.options;
+        if (pattern === "**")
+          return exports2.GLOBSTAR;
+        if (pattern === "")
+          return "";
+        let m;
+        let fastTest = null;
+        if (m = pattern.match(starRE)) {
+          fastTest = options.dot ? starTestDot : starTest;
+        } else if (m = pattern.match(starDotExtRE)) {
+          fastTest = (options.nocase ? options.dot ? starDotExtTestNocaseDot : starDotExtTestNocase : options.dot ? starDotExtTestDot : starDotExtTest)(m[1]);
+        } else if (m = pattern.match(qmarksRE)) {
+          fastTest = (options.nocase ? options.dot ? qmarksTestNocaseDot : qmarksTestNocase : options.dot ? qmarksTestDot : qmarksTest)(m);
+        } else if (m = pattern.match(starDotStarRE)) {
+          fastTest = options.dot ? starDotStarTestDot : starDotStarTest;
+        } else if (m = pattern.match(dotStarRE)) {
+          fastTest = dotStarTest;
+        }
+        const re = ast_js_1.AST.fromGlob(pattern, this.options).toMMPattern();
+        if (fastTest && typeof re === "object") {
+          Reflect.defineProperty(re, "test", { value: fastTest });
+        }
+        return re;
+      }
+      makeRe() {
+        if (this.regexp || this.regexp === false)
+          return this.regexp;
+        const set = this.set;
+        if (!set.length) {
+          this.regexp = false;
+          return this.regexp;
+        }
+        const options = this.options;
+        const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
+        const flags = new Set(options.nocase ? ["i"] : []);
+        let re = set.map((pattern) => {
+          const pp = pattern.map((p) => {
+            if (p instanceof RegExp) {
+              for (const f of p.flags.split(""))
+                flags.add(f);
+            }
+            return typeof p === "string" ? regExpEscape(p) : p === exports2.GLOBSTAR ? exports2.GLOBSTAR : p._src;
+          });
+          pp.forEach((p, i) => {
+            const next = pp[i + 1];
+            const prev = pp[i - 1];
+            if (p !== exports2.GLOBSTAR || prev === exports2.GLOBSTAR) {
+              return;
+            }
+            if (prev === void 0) {
+              if (next !== void 0 && next !== exports2.GLOBSTAR) {
+                pp[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + next;
+              } else {
+                pp[i] = twoStar;
+              }
+            } else if (next === void 0) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + ")?";
+            } else if (next !== exports2.GLOBSTAR) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next;
+              pp[i + 1] = exports2.GLOBSTAR;
+            }
+          });
+          const filtered = pp.filter((p) => p !== exports2.GLOBSTAR);
+          if (this.partial && filtered.length >= 1) {
+            const prefixes = [];
+            for (let i = 1; i <= filtered.length; i++) {
+              prefixes.push(filtered.slice(0, i).join("/"));
+            }
+            return "(?:" + prefixes.join("|") + ")";
+          }
+          return filtered.join("/");
+        }).join("|");
+        const [open, close] = set.length > 1 ? ["(?:", ")"] : ["", ""];
+        re = "^" + open + re + close + "$";
+        if (this.partial) {
+          re = "^(?:\\/|" + open + re.slice(1, -1) + close + ")$";
+        }
+        if (this.negate)
+          re = "^(?!" + re + ").+$";
+        try {
+          this.regexp = new RegExp(re, [...flags].join(""));
+        } catch {
+          this.regexp = false;
+        }
+        return this.regexp;
+      }
+      slashSplit(p) {
+        if (this.preserveMultipleSlashes) {
+          return p.split("/");
+        } else if (this.isWindows && /^\/\/[^/]+/.test(p)) {
+          return ["", ...p.split(/\/+/)];
+        } else {
+          return p.split(/\/+/);
+        }
+      }
+      match(f, partial = this.partial) {
+        this.debug("match", f, this.pattern);
+        if (this.comment) {
+          return false;
+        }
+        if (this.empty) {
+          return f === "";
+        }
+        if (f === "/" && partial) {
+          return true;
+        }
+        const options = this.options;
+        if (this.isWindows) {
+          f = f.split("\\").join("/");
+        }
+        const ff = this.slashSplit(f);
+        this.debug(this.pattern, "split", ff);
+        const set = this.set;
+        this.debug(this.pattern, "set", set);
+        let filename = ff[ff.length - 1];
+        if (!filename) {
+          for (let i = ff.length - 2; !filename && i >= 0; i--) {
+            filename = ff[i];
+          }
+        }
+        for (const pattern of set) {
+          let file = ff;
+          if (options.matchBase && pattern.length === 1) {
+            file = [filename];
+          }
+          const hit = this.matchOne(file, pattern, partial);
+          if (hit) {
+            if (options.flipNegate) {
+              return true;
+            }
+            return !this.negate;
+          }
+        }
+        if (options.flipNegate) {
+          return false;
+        }
+        return this.negate;
+      }
+      static defaults(def) {
+        return exports2.minimatch.defaults(def).Minimatch;
+      }
+    };
+    exports2.Minimatch = Minimatch;
+    var ast_js_2 = require_ast();
+    Object.defineProperty(exports2, "AST", { enumerable: true, get: function() {
+      return ast_js_2.AST;
+    } });
+    var escape_js_2 = require_escape();
+    Object.defineProperty(exports2, "escape", { enumerable: true, get: function() {
+      return escape_js_2.escape;
+    } });
+    var unescape_js_2 = require_unescape();
+    Object.defineProperty(exports2, "unescape", { enumerable: true, get: function() {
+      return unescape_js_2.unescape;
+    } });
+    exports2.minimatch.AST = ast_js_1.AST;
+    exports2.minimatch.Minimatch = Minimatch;
+    exports2.minimatch.escape = escape_js_1.escape;
+    exports2.minimatch.unescape = unescape_js_1.unescape;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/ignore.ts
+var path, import_dockerignore, import_ignore, minimatch, IgnoreStrategy, GlobIgnoreStrategy, GitIgnoreStrategy, DockerIgnoreStrategy;
+var init_ignore = __esm({
+  "../../aws-cdk-lib/core/lib/fs/ignore.ts"() {
+    "use strict";
+    path = __toESM(require("path"));
+    import_dockerignore = __toESM(require_ignore());
+    import_ignore = __toESM(require_ignore2());
+    init_options();
+    init_errors();
+    init_literal_string();
+    ({ minimatch } = require_commonjs3());
+    IgnoreStrategy = class {
+      /**
+       * Ignores file paths based on simple glob patterns.
+       *
+       * @returns `GlobIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static glob(absoluteRootPath, patterns) {
+        return new GlobIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.gitignore specification`](https://git-scm.com/docs/gitignore).
+       *
+       * @returns `GitIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static git(absoluteRootPath, patterns) {
+        return new GitIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.dockerignore specification`](https://docs.docker.com/engine/reference/builder/#dockerignore-file).
+       *
+       * @returns `DockerIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static docker(absoluteRootPath, patterns) {
+        return new DockerIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Creates an IgnoreStrategy based on the `ignoreMode` and `exclude` in a `CopyOptions`.
+       *
+       * @returns `IgnoreStrategy` based on the `CopyOptions`
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       * @param options the `CopyOptions` to create the `IgnoreStrategy` from
+       */
+      static fromCopyOptions(options, absoluteRootPath) {
+        const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+        const exclude = options.exclude || [];
+        switch (ignoreMode) {
+          case "glob" /* GLOB */:
+            return this.glob(absoluteRootPath, exclude);
+          case "git" /* GIT */:
+            return this.git(absoluteRootPath, exclude);
+          case "docker" /* DOCKER */:
+            return this.docker(absoluteRootPath, exclude);
+        }
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        return this.ignores(absoluteDirectoryPath);
+      }
+    };
+    GlobIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      patterns;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyExpectsAbsolute`, "GlobIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.patterns = patterns;
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.patterns.push(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyIgnoresExpects`, "GlobIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        let excludeOutput = false;
+        for (const pattern of this.patterns) {
+          const negate = pattern.startsWith("!");
+          const match = minimatch(relativePath, pattern, { matchBase: true, flipNegate: true });
+          if (!negate && match) {
+            excludeOutput = true;
+          }
+          if (negate && match) {
+            excludeOutput = false;
+          }
+        }
+        return excludeOutput;
+      }
+    };
+    GitIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyExpectsAbsolute`, "GitIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.ignore = (0, import_ignore.default)().add(patterns);
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyIgnoresExpects`, "GitIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        return this.ignore.ignores(relativePath);
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        if (!path.isAbsolute(absoluteDirectoryPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyCompletelyIgnores`, "GitIgnoreStrategy.completelyIgnores() expects an absolute path");
+        }
+        const relativePath = path.relative(this.absoluteRootPath, absoluteDirectoryPath);
+        const relativePathWithSep = relativePath.endsWith(path.sep) ? relativePath : relativePath + path.sep;
+        return this.ignore.ignores(relativePathWithSep);
+      }
+    };
+    DockerIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      completeIgnore;
+      // Follows negation rules as describe in @balena/dockerignore
+      // See https://www.npmjs.com/package/@balena/dockerignore#exclusion-patterns
+      negativeIgnoreRegex = /^\s*(\!|\/\!)(.*)/;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyExpectsAbsolute`, "DockerIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.completeIgnore = (0, import_dockerignore.default)();
+        this.ignore = (0, import_dockerignore.default)();
+        for (const pattern of patterns) {
+          this.add(pattern);
+        }
+      }
+      /**
+       * Adds the pattern to completeIgnore. If its an exclude pattern, it also adds an entry for each parent directory.
+       * This is useful in detecting folders that are ignored, but that could have children files which are not ignored.
+       *
+       * @param pattern pattern to add
+       */
+      completelyAdd(pattern) {
+        this.completeIgnore.add(pattern);
+        const negativeMatch = pattern.match(this.negativeIgnoreRegex);
+        if (negativeMatch !== null) {
+          let dirname6 = negativeMatch[2];
+          while (true) {
+            dirname6 = path.dirname(dirname6);
+            if (dirname6 === "/" || dirname6 === ".") {
+              break;
+            }
+            this.completeIgnore.add(negativeMatch[1] + dirname6);
+          }
+        }
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+        this.completelyAdd(pattern);
+      }
+      getRelativePath(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyIgnoresExpects`, "DockerIgnoreStrategy.ignores() expects an absolute path");
+        }
+        return path.relative(this.absoluteRootPath, absoluteFilePath);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        return this.ignore.ignores(this.getRelativePath(absoluteFilePath));
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        const relativePath = this.getRelativePath(absoluteDirectoryPath);
+        return this.ignore.ignores(relativePath) && this.completeIgnore.ignores(relativePath);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/utils.ts
+function isInternalPath(rootPath, targetPath) {
+  return rootPath === targetPath || targetPath.startsWith(rootPath + path2.sep);
+}
+function resolveLinkTarget(realPath, linkTarget) {
+  return path2.isAbsolute(linkTarget) ? path2.resolve(linkTarget) : path2.resolve(path2.dirname(realPath), linkTarget);
+}
+function walkDirectory(directory, options, visitor) {
+  const { follow, ignoreStrategy } = options;
+  const canonicalRoot = realPathOrSelf(options.root ?? directory);
+  const ancestors = /* @__PURE__ */ new Set();
+  walk(directory, directory, realPathOrSelf(directory));
+  function walk(symbolicPath, realPath, canonicalPath) {
+    if (ancestors.has(canonicalPath)) {
+      return;
+    }
+    ancestors.add(canonicalPath);
+    const entries = fs2.readdirSync(realPath, { withFileTypes: true });
+    entries.sort((a, b) => a.name < b.name ? -1 : a.name > b.name ? 1 : 0);
+    for (const entry of entries) {
+      const childPath = path2.join(symbolicPath, entry.name);
+      const childRealPath = path2.join(realPath, entry.name);
+      if (entry.isSymbolicLink()) {
+        visitSymlink(childPath, childRealPath);
+      } else if (entry.isDirectory()) {
+        visitDirectory(childPath, childRealPath, path2.join(canonicalPath, entry.name));
+      } else if (entry.isFile()) {
+        visitFile({ path: childPath, realPath: childRealPath });
+      }
+    }
+    ancestors.delete(canonicalPath);
+  }
+  function visitDirectory(symbolicPath, realPath, canonicalPath) {
+    if (ignoreStrategy.completelyIgnores(symbolicPath)) {
+      return;
+    }
+    if (visitor.onDirectory) {
+      visitor.onDirectory({ path: symbolicPath, realPath, ignored: ignoreStrategy.ignores(symbolicPath) });
+    }
+    walk(symbolicPath, realPath, canonicalPath);
+  }
+  function visitFile(entry) {
+    if (!ignoreStrategy.ignores(entry.path)) {
+      visitor.onFile?.(entry);
+    }
+  }
+  function visitSymlink(symbolicPath, realPath) {
+    const linkTarget = fs2.readlinkSync(realPath);
+    const resolvedLinkTarget = canonicalLinkTarget(resolveLinkTarget(realPath, linkTarget));
+    const internal = isInternalPath(canonicalRoot, resolvedLinkTarget);
+    const targetStats = shouldFollow(internal) ? tryStat(resolvedLinkTarget) : void 0;
+    if (!targetStats) {
+      if (!ignoreStrategy.ignores(symbolicPath)) {
+        visitor.onSymlink?.({ path: symbolicPath, realPath, linkTarget, resolvedLinkTarget, internal });
+      }
+      return;
+    }
+    if (targetStats.isDirectory()) {
+      visitDirectory(symbolicPath, resolvedLinkTarget, realPathOrSelf(resolvedLinkTarget));
+    } else if (targetStats.isFile()) {
+      visitFile({ path: symbolicPath, realPath: resolvedLinkTarget, stats: targetStats });
+    } else if (!ignoreStrategy.ignores(symbolicPath)) {
+      visitor.onUnsupported?.({ path: symbolicPath, realPath: resolvedLinkTarget });
+    }
+  }
+  function shouldFollow(internal) {
+    switch (follow) {
+      case "always" /* ALWAYS */:
+        return true;
+      case "external" /* EXTERNAL */:
+        return !internal;
+      case "internal-only" /* BLOCK_EXTERNAL */:
+        return internal;
+      case "never" /* NEVER */:
+      default:
+        return false;
+    }
+  }
+}
+function canonicalLinkTarget(target) {
+  return path2.join(realPathOrSelf(path2.dirname(target)), path2.basename(target));
+}
+function realPathOrSelf(target) {
+  try {
+    return fs2.realpathSync(target);
+  } catch {
+    return target;
+  }
+}
+function tryStat(target) {
+  try {
+    return fs2.statSync(target, { bigint: true });
+  } catch {
+    return void 0;
+  }
+}
+var fs2, path2;
+var init_utils = __esm({
+  "../../aws-cdk-lib/core/lib/fs/utils.ts"() {
+    "use strict";
+    fs2 = __toESM(require("fs"));
+    path2 = __toESM(require("path"));
+    init_options();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/copy.ts
+function copyDirectory(srcDir, destDir, options = {}, rootDir) {
+  const follow = options.follow ?? "external" /* EXTERNAL */;
+  const root = rootDir || srcDir;
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  if (!fs3.statSync(srcDir).isDirectory()) {
+    throw new UnscopedValidationError(lit`Directory`, `${srcDir} is not a directory`);
+  }
+  const canonicalSrcDir = fs3.realpathSync(srcDir);
+  walkDirectory(srcDir, { follow, ignoreStrategy, root }, {
+    onDirectory: (entry) => {
+      if (!entry.ignored) {
+        fs3.mkdirSync(destinationOf(entry.path), { recursive: true });
+      }
+    },
+    onFile: (entry) => {
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.copyFileSync(entry.realPath, destination);
+    },
+    onSymlink: (entry) => {
+      if (follow === "internal-only" /* BLOCK_EXTERNAL */ && !entry.internal) {
+        throw new UnscopedValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${follow}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`
+        );
+      }
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.symlinkSync(linkTextFor(entry, destination), destination);
+    }
+  });
+  function destinationOf(sourcePath) {
+    return path3.join(destDir, path3.relative(srcDir, sourcePath));
+  }
+  function linkTextFor(entry, destination) {
+    if (!isInternalPath(canonicalSrcDir, entry.resolvedLinkTarget)) {
+      return entry.linkTarget;
+    }
+    const copiedTarget = path3.join(destDir, path3.relative(canonicalSrcDir, entry.resolvedLinkTarget));
+    return path3.relative(path3.dirname(destination), copiedTarget) || ".";
+  }
+}
+var fs3, path3;
+var init_copy = __esm({
+  "../../aws-cdk-lib/core/lib/fs/copy.ts"() {
+    "use strict";
+    fs3 = __toESM(require("fs"));
+    path3 = __toESM(require("path"));
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts
+var crypto3, fs4, os, path4, CACHE_DIR, MAX_ENTRIES, MAX_CACHE_FILES, FingerprintDiskCache;
+var init_fingerprint_disk_cache = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts"() {
+    "use strict";
+    crypto3 = __toESM(require("crypto"));
+    fs4 = __toESM(require("fs"));
+    os = __toESM(require("os"));
+    path4 = __toESM(require("path"));
+    CACHE_DIR = path4.join(os.homedir(), ".cdk", "cache", "fingerprints");
+    MAX_ENTRIES = 1e5;
+    MAX_CACHE_FILES = 50;
+    FingerprintDiskCache = class {
+      cache;
+      dirty = false;
+      cacheFile;
+      /**
+       * Create a FingerprintDiskCache
+       *
+       * The `directoryPath` argument is expected to be pre-resolved to an absolute path.
+       */
+      constructor(directoryPath) {
+        const dirHash = crypto3.createHash("sha256").update(directoryPath).digest("hex").slice(0, 16);
+        this.cacheFile = path4.join(CACHE_DIR, `${dirHash}.json`);
+      }
+      /**
+       * Look up a cached fingerprint or compute it.
+       */
+      obtain(cacheKey, calcFn) {
+        const map = this._load();
+        const existing = map.get(cacheKey);
+        if (existing !== void 0) {
+          return existing;
+        }
+        const value = calcFn();
+        map.set(cacheKey, value);
+        this.dirty = true;
+        return value;
+      }
+      /**
+       * Persist the cache to disk.
+       */
+      save() {
+        if (!this.dirty || !this.cache) {
+          return;
+        }
+        this._evict();
+        try {
+          fs4.mkdirSync(CACHE_DIR, { recursive: true });
+          const entries = Array.from(this.cache.entries());
+          let tempFile = `${this.cacheFile}.${Date.now()}.${Math.random()}`;
+          try {
+            fs4.writeFileSync(tempFile, JSON.stringify(entries));
+            fs4.renameSync(tempFile, this.cacheFile);
+            tempFile = void 0;
+            this.dirty = false;
+            this._evictCacheDir();
+          } finally {
+            if (tempFile) {
+              fs4.rmSync(tempFile, { force: true });
+            }
+          }
+        } catch {
+        }
+      }
+      _load() {
+        if (this.cache) {
+          return this.cache;
+        }
+        this.cache = /* @__PURE__ */ new Map();
+        try {
+          const data = fs4.readFileSync(this.cacheFile, "utf-8");
+          const entries = JSON.parse(data);
+          if (Array.isArray(entries)) {
+            for (const [k, v] of entries) {
+              this.cache.set(k, v);
+            }
+          }
+        } catch {
+        }
+        return this.cache;
+      }
+      _evict() {
+        if (!this.cache || this.cache.size <= MAX_ENTRIES) {
+          return;
+        }
+        const entries = Array.from(this.cache.entries());
+        this.cache = new Map(entries.slice(entries.length - MAX_ENTRIES));
+      }
+      /** Remove oldest cache files if the directory exceeds MAX_CACHE_FILES */
+      _evictCacheDir() {
+        try {
+          const files = fs4.readdirSync(CACHE_DIR).filter((f) => f.endsWith(".json")).map((f) => ({ name: f, mtime: fs4.statSync(path4.join(CACHE_DIR, f)).mtimeMs }));
+          if (files.length <= MAX_CACHE_FILES) return;
+          files.sort((a, b) => a.mtime - b.mtime);
+          const toDelete = files.slice(0, files.length - MAX_CACHE_FILES);
+          for (const f of toDelete) {
+            fs4.unlinkSync(path4.join(CACHE_DIR, f.name));
+          }
+        } catch {
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint.ts
+function clearLargeFileFingerprintCache() {
+}
+function fingerprint(fileOrDirectory, options = {}) {
+  const hash = crypto4.createHash("sha256");
+  _hashField(hash, "options.extra", options.extraHash || "");
+  const follow = options.follow || "external" /* EXTERNAL */;
+  _hashField(hash, "options.follow", follow);
+  const root = fs5.realpathSync(fileOrDirectory);
+  const isDir = fs5.statSync(root).isDirectory();
+  const rootDirectory = isDir ? root : path5.dirname(root);
+  const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+  if (ignoreMode != "glob" /* GLOB */) {
+    _hashField(hash, "options.ignoreMode", ignoreMode);
+  }
+  const resolvedRoot = path5.resolve(rootDirectory);
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  const cache = new FingerprintDiskCache(resolvedRoot);
+  if (isDir) {
+    walkDirectory(root, { follow, ignoreStrategy }, {
+      onFile: (entry) => hashFileContent(entry.path, entry.stats ? contentFingerprintWithStats(entry.realPath, entry.stats, cache) : contentFingerprintOf(entry.realPath)),
+      onSymlink: (entry) => hashLinkTarget(entry),
+      onUnsupported: (entry) => {
+        throw new UnscopedValidationError(
+          lit`UnableToUnableHashNeither`,
+          `Unable to hash ${entry.path}: it is neither a file nor a directory`
+        );
+      }
+    });
+  } else {
+    hashFileContent(root, contentFingerprintOf(root));
+  }
+  cache.save();
+  return hash.digest("hex");
+  function hashKey(symbolicPath) {
+    return path5.relative(root, symbolicPath).replace(/\\/g, "/");
+  }
+  function hashFileContent(symbolicPath, contentHash2) {
+    _hashField(hash, `file:${hashKey(symbolicPath)}`, contentHash2);
+  }
+  function hashLinkTarget(entry) {
+    const target = entry.internal && path5.isAbsolute(entry.linkTarget) ? hashKey(entry.resolvedLinkTarget) : entry.linkTarget;
+    _hashField(hash, `link:${hashKey(entry.path)}`, target);
+  }
+  function contentFingerprintOf(file) {
+    return contentFingerprintWithStats(file, fs5.statSync(file, { bigint: true }), cache);
+  }
+}
+function contentFingerprintWithStats(file, stats, cache) {
+  const cacheKey = `${stats.ino}|${stats.mtimeMs}|${stats.size}`;
+  return cache?.obtain(cacheKey, () => contentFingerprintMiss(file)) ?? contentFingerprintMiss(file);
+}
+function contentFingerprintMiss(file) {
+  const hash = crypto4.createHash("sha256");
+  const buffer = Buffer.alloc(BUFFER_SIZE);
+  const fd = fs5.openSync(file, fs5.constants.O_RDONLY);
+  let size = 0;
+  let isBinary = false;
+  let lastStr = "";
+  let read = 0;
+  try {
+    while ((read = fs5.readSync(fd, buffer, 0, BUFFER_SIZE, null)) !== 0) {
+      const slicedBuffer = buffer.subarray(0, read);
+      if (size === 0) {
+        isBinary = slicedBuffer.indexOf(0) !== -1;
+      }
+      if (isBinary) {
+        size += read;
+        hash.update(slicedBuffer);
+      } else {
+        const str = slicedBuffer.toString();
+        if (TRAILING_CR_RE.test(str)) {
+          lastStr += str;
+          continue;
+        }
+        const data = lastStr + str;
+        lastStr = "";
+        const normalizedData = data.replace(CRLF_RE, "\n");
+        const dataBuffer = Buffer.from(normalizedData);
+        size += dataBuffer.length;
+        hash.update(dataBuffer);
+      }
+    }
+    if (lastStr) {
+      hash.update(Buffer.from(lastStr));
+    }
+  } finally {
+    fs5.closeSync(fd);
+  }
+  return `${size}:${hash.digest("hex")}`;
+}
+function _hashField(hash, header, value) {
+  hash.update(CTRL_SOH).update(header).update(CTRL_SOT).update(value).update(CTRL_ETX);
+}
+var crypto4, fs5, path5, CTRL_SOH, CTRL_SOT, CTRL_ETX, CRLF_RE, TRAILING_CR_RE, BUFFER_SIZE;
+var init_fingerprint = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint.ts"() {
+    "use strict";
+    crypto4 = __toESM(require("crypto"));
+    fs5 = __toESM(require("fs"));
+    path5 = __toESM(require("path"));
+    init_fingerprint_disk_cache();
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+    CTRL_SOH = "";
+    CTRL_SOT = "";
+    CTRL_ETX = "";
+    CRLF_RE = /\r\n/g;
+    TRAILING_CR_RE = /\r$/;
+    BUFFER_SIZE = 8 * 1024;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts
+var init_dispose_polyfill = __esm({
+  "../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts"() {
+    "use strict";
+    Symbol.dispose ??= /* @__PURE__ */ Symbol("Symbol.dispose");
+    Symbol.asyncDispose ??= /* @__PURE__ */ Symbol("Symbol.asyncDispose");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/perf.ts
+function profileFn(key, options) {
+  return function(fn) {
+    const ret = function() {
+      STATE.nesting++;
+      const start = import_perf_hooks.performance.now();
+      try {
+        return fn.apply(this, arguments);
+      } finally {
+        const end = import_perf_hooks.performance.now();
+        STATE.nesting--;
+        if (STATE.nesting === 0) {
+          recordPerformanceEntry(key, {
+            durationMs: end - start,
+            count: options?.skipCount ? 0 : 1,
+            telemetry: !!options?.telemetry
+          });
+        }
+      }
+    };
+    Object.defineProperties(ret, Object.getOwnPropertyDescriptors(fn));
+    return ret;
+  };
+}
+function profileSpan(key, options) {
+  const start = import_perf_hooks.performance.now();
+  return {
+    [Symbol.dispose]() {
+      recordPerformanceEntry(key, {
+        durationMs: import_perf_hooks.performance.now() - start,
+        count: options?.skipCount ? 0 : 1,
+        telemetry: !!options?.telemetry
+      });
+    }
+  };
+}
+function recordPerformanceEntry(key, options) {
+  bumpPerfCounter(STATE.allCounters, key, options?.durationMs, options?.count);
+  if (options?.telemetry) {
+    bumpPerfCounter(STATE.telemetryCounters, key, options?.durationMs, options?.count);
+  }
+}
+function resetCounters() {
+  STATE.allCounters = {};
+  STATE.telemetryCounters = {};
+}
+function bumpPerfCounter(counters, key, durationMs, count2) {
+  const ctr = counters[key];
+  if (ctr) {
+    ctr.count += count2 ?? 1;
+    ctr.total += durationMs ?? 0;
+  } else {
+    counters[key] = {
+      count: count2 ?? 1,
+      total: durationMs ?? 0
+    };
+  }
+}
+function profileObj(objName, options) {
+  return function(obj) {
+    for (const [name, { value }] of Object.entries(Object.getOwnPropertyDescriptors(obj))) {
+      if (typeof value === "function") {
+        const key = `${objName}.${name}`;
+        obj[name] = profileFn(key, options)(value);
+      }
+    }
+    return obj;
+  };
+}
+function readPerfCounters(options) {
+  const counters = options?.telemetry ? STATE.telemetryCounters : STATE.allCounters;
+  let ret = Object.entries(counters).map(([key, { count: count2, total }]) => [key, { count: count2, total: Math.floor(total) }]).sort((a, b) => b[1].total - a[1].total);
+  if (options?.n !== void 0) {
+    ret = ret.slice(0, options.n);
+  }
+  return Object.fromEntries(ret);
+}
+function initializeBuiltinProfiling() {
+  const envYes = ["1", "yes", "true"];
+  if (STATE.builtinsHooked || process.env.NODE_ENV === "test" || envYes.includes(process.env.CDK_NO_PERF_BUILTINS)) {
+    return;
+  }
+  STATE.builtinsHooked = true;
+  profileObj("fs", { telemetry: true })(require("fs"));
+  profileObj("child_process", { telemetry: true })(require("child_process"));
+}
+var import_perf_hooks, STATE;
+var init_perf = __esm({
+  "../../aws-cdk-lib/core/lib/private/perf.ts"() {
+    "use strict";
+    import_perf_hooks = require("perf_hooks");
+    init_dispose_polyfill();
+    STATE = globalThis[/* @__PURE__ */ Symbol.for("@aws-cdk/core:performanceProfilingState")] ??= {
+      builtinsHooked: false,
+      nesting: 0,
+      telemetryCounters: {},
+      allCounters: {}
+    };
+    initializeBuiltinProfiling();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/index.ts
+var fs6, os2, path6, _FileSystem_decorators, _init3, _FileSystem, FileSystem;
+var init_fs = __esm({
+  "../../aws-cdk-lib/core/lib/fs/index.ts"() {
+    "use strict";
+    fs6 = __toESM(require("fs"));
+    os2 = __toESM(require("os"));
+    path6 = __toESM(require("path"));
+    init_copy();
+    init_fingerprint();
+    init_perf();
+    init_ignore();
+    init_options();
+    _FileSystem_decorators = [profileObj("FileSystem", { telemetry: true })];
+    _FileSystem = class _FileSystem {
+      /**
+       * Copies an entire directory structure.
+       * @param srcDir Source directory
+       * @param destDir Destination directory
+       * @param options options
+       * @param rootDir Root directory to calculate exclusions from
+       */
+      static copyDirectory(srcDir, destDir, options = {}, rootDir) {
+        return copyDirectory(srcDir, destDir, options, rootDir);
+      }
+      /**
+       * Produces fingerprint based on the contents of a single file or an entire directory tree.
+       *
+       * Line endings are converted from CRLF to LF.
+       *
+       * The fingerprint will also include:
+       * 1. An extra string if defined in `options.extra`.
+       * 2. The symlink follow mode value.
+       *
+       * @param fileOrDirectory The directory or file to fingerprint
+       * @param options Fingerprinting options
+       */
+      static fingerprint(fileOrDirectory, options = {}) {
+        return fingerprint(fileOrDirectory, options);
+      }
+      /**
+       * Checks whether a directory is empty
+       *
+       * @param dir The directory to check
+       */
+      static isEmpty(dir) {
+        return fs6.readdirSync(dir).length === 0;
+      }
+      /**
+       * The real path of the system temp directory
+       */
+      static get tmpdir() {
+        if (_FileSystem._tmpdir) {
+          return _FileSystem._tmpdir;
+        }
+        _FileSystem._tmpdir = fs6.realpathSync(os2.tmpdir());
+        return _FileSystem._tmpdir;
+      }
+      /**
+       * Creates a unique temporary directory in the **system temp directory**.
+       *
+       * @param prefix A prefix for the directory name. Six random characters
+       * will be generated and appended behind this prefix.
+       */
+      static mkdtemp(prefix) {
+        return fs6.mkdtempSync(path6.join(_FileSystem.tmpdir, prefix));
+      }
+      /**
+       * Deletes a directory
+       */
+      static rmrf(dirname6) {
+        fs6.rmSync(dirname6, { force: true, recursive: true });
+      }
+      static _tmpdir;
+    };
+    _init3 = __decoratorStart(null);
+    _FileSystem = __decorateElement(_init3, 0, "FileSystem", _FileSystem_decorators, _FileSystem);
+    __runInitializers(_init3, 1, _FileSystem);
+    FileSystem = _FileSystem;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-staging.ts
+function dockerExec(args, options) {
+  const prog = process.env.CDK_DOCKER ?? "docker";
+  const proc = (0, import_child_process.spawnSync)(prog, args, options ?? {
+    encoding: "utf-8",
+    stdio: [
+      // show Docker output
+      "ignore",
+      // ignore stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    throw proc.error;
+  }
+  if (proc.status !== 0) {
+    let prependLines2 = function(firstLine, text) {
+      if (!text || text.length === 0) {
+        return [];
+      }
+      const padding = " ".repeat(firstLine.length);
+      return text.toString("utf-8").split("\n").map((line, idx) => `${idx === 0 ? firstLine : padding}${line}`);
+    };
+    var prependLines = prependLines2;
+    const reason = proc.signal != null ? `signal ${proc.signal}` : `status ${proc.status}`;
+    const command = [prog, ...args.map((arg) => /[^a-z0-9_-]/i.test(arg) ? JSON.stringify(arg) : arg)].join(" ");
+    throw new ExecutionError(lit`CommandExecutionFailed`, [
+      `${prog} exited with ${reason}`,
+      ...prependLines2("--> STDOUT:  ", proc.stdout) ?? [],
+      ...prependLines2("--> STDERR:  ", proc.stderr) ?? [],
+      `--> Command: ${command}`
+    ].join("\n"));
+  }
+  return proc;
+}
+var import_child_process, crypto5, os3, AssetBundlingBase, _run_dec, _a3, _init4, AssetBundlingBindMount, _run_dec2, _a4, _init5, AssetBundlingVolumeCopy;
+var init_asset_staging = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-staging.ts"() {
+    "use strict";
+    import_child_process = require("child_process");
+    crypto5 = __toESM(require("crypto"));
+    os3 = __toESM(require("os"));
+    init_asset_staging2();
+    init_errors();
+    init_literal_string();
+    init_perf();
+    AssetBundlingBase = class {
+      options;
+      constructor(options) {
+        this.options = options;
+      }
+      /**
+       * Determines a useful default user if not given otherwise
+       */
+      determineUser() {
+        let user;
+        if (this.options.user) {
+          user = this.options.user;
+        } else {
+          const userInfo2 = os3.userInfo();
+          user = userInfo2.uid !== -1 ? `${userInfo2.uid}:${userInfo2.gid}` : "1000:1000";
+        }
+        return user;
+      }
+    };
+    AssetBundlingBindMount = class extends (_a3 = AssetBundlingBase, _run_dec = [profileFn("AssetBundlingBindMount.run", { telemetry: true })], _a3) {
+      constructor() {
+        super(...arguments);
+        __runInitializers(_init4, 5, this);
+      }
+      run() {
+        this.options.image.run({
+          command: this.options.command,
+          user: this.determineUser(),
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumesFrom: this.options.volumesFrom,
+          volumes: [
+            {
+              hostPath: this.options.sourcePath,
+              containerPath: AssetStaging.BUNDLING_INPUT_DIR
+            },
+            {
+              hostPath: this.options.bundleDir,
+              containerPath: AssetStaging.BUNDLING_OUTPUT_DIR
+            },
+            ...this.options.volumes ?? []
+          ],
+          network: this.options.network,
+          platform: this.options.platform
+        });
+      }
+    };
+    _init4 = __decoratorStart(_a3);
+    __decorateElement(_init4, 1, "run", _run_dec, AssetBundlingBindMount);
+    __decoratorMetadata(_init4, AssetBundlingBindMount);
+    AssetBundlingVolumeCopy = class extends (_a4 = AssetBundlingBase, _run_dec2 = [profileFn("AssetBundlingVolumeCopy.run", { telemetry: true })], _a4) {
+      constructor(options) {
+        super(options);
+        __runInitializers(_init5, 5, this);
+        /**
+         * Name of the Docker volume that is used for the asset input
+         */
+        __publicField(this, "inputVolumeName");
+        /**
+         * Name of the Docker volume that is used for the asset output
+         */
+        __publicField(this, "outputVolumeName");
+        /**
+         * Name of the Docker helper container to copy files into the volume
+         */
+        __publicField(this, "copyContainerName");
+        const copySuffix = crypto5.randomBytes(12).toString("hex");
+        this.inputVolumeName = `assetInput${copySuffix}`;
+        this.outputVolumeName = `assetOutput${copySuffix}`;
+        this.copyContainerName = `copyContainer${copySuffix}`;
+      }
+      /**
+       * Creates volumes for asset input and output
+       */
+      prepareVolumes() {
+        dockerExec(["volume", "create", this.inputVolumeName]);
+        dockerExec(["volume", "create", this.outputVolumeName]);
+      }
+      /**
+       * Removes volumes for asset input and output
+       */
+      cleanVolumes() {
+        dockerExec(["volume", "rm", this.inputVolumeName]);
+        dockerExec(["volume", "rm", this.outputVolumeName]);
+      }
+      /**
+       * runs a helper container that holds volumes and does some preparation tasks
+       * @param user The user that will later access these files and needs permissions to do so
+       */
+      startHelperContainer(user) {
+        dockerExec([
+          "run",
+          "--name",
+          this.copyContainerName,
+          "-v",
+          `${this.inputVolumeName}:${AssetStaging.BUNDLING_INPUT_DIR}`,
+          "-v",
+          `${this.outputVolumeName}:${AssetStaging.BUNDLING_OUTPUT_DIR}`,
+          "public.ecr.aws/docker/library/alpine",
+          "sh",
+          "-c",
+          `mkdir -p ${AssetStaging.BUNDLING_INPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_OUTPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * removes the Docker helper container
+       */
+      cleanHelperContainer() {
+        dockerExec(["rm", this.copyContainerName]);
+      }
+      /**
+       * copy files from the host where this is executed into the input volume
+       * @param sourcePath - path to folder where files should be copied from - without trailing slash
+       */
+      copyInputFrom(sourcePath) {
+        dockerExec([
+          "cp",
+          `${sourcePath}/.`,
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * copy files from the output volume to the host where this is executed
+       * @param outputPath - path to folder where files should be copied to - without trailing slash
+       */
+      copyOutputTo(outputPath) {
+        dockerExec([
+          "cp",
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_OUTPUT_DIR}/.`,
+          outputPath
+        ]);
+      }
+      run() {
+        const user = this.determineUser();
+        this.prepareVolumes();
+        this.startHelperContainer(user);
+        this.copyInputFrom(this.options.sourcePath);
+        this.options.image.run({
+          command: this.options.command,
+          user,
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumes: this.options.volumes,
+          volumesFrom: [
+            this.copyContainerName,
+            ...this.options.volumesFrom ?? []
+          ],
+          platform: this.options.platform
+        });
+        this.copyOutputTo(this.options.bundleDir);
+        this.cleanHelperContainer();
+        this.cleanVolumes();
+      }
+    };
+    _init5 = __decoratorStart(_a4);
+    __decorateElement(_init5, 1, "run", _run_dec2, AssetBundlingVolumeCopy);
+    __decoratorMetadata(_init5, AssetBundlingVolumeCopy);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts
+function quiet() {
+  const deprecated = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  return deprecated;
+}
+function reset(deprecated) {
+  if (deprecated === void 0) {
+    delete process.env.JSII_DEPRECATED;
+  } else {
+    process.env.JSII_DEPRECATED = deprecated;
+  }
+}
+var init_jsii_deprecated = __esm({
+  "../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bundling.ts
+function flatten(x) {
+  return Array.prototype.concat([], ...x);
+}
+function isSeLinux() {
+  if (process.platform != "linux") {
+    return false;
+  }
+  const prog = "selinuxenabled";
+  const proc = (0, import_child_process2.spawnSync)(prog, [], {
+    stdio: [
+      // show selinux status output
+      "pipe",
+      // get value of stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    return false;
+  }
+  if (proc.status == 0) {
+    return true;
+  } else {
+    return false;
+  }
+}
+var import_child_process2, import_path, _cp_dec, _run_dec3, _init6, BundlingDockerImage, _fromBuild_dec, _a5, _init7, _DockerImage, DockerImage, PERF_BUNDLING_SRC_SYM;
+var init_bundling = __esm({
+  "../../aws-cdk-lib/core/lib/bundling.ts"() {
+    "use strict";
+    import_child_process2 = require("child_process");
+    import_path = require("path");
+    init_errors();
+    init_fs();
+    init_asset_staging();
+    init_jsii_deprecated();
+    init_literal_string();
+    init_perf();
+    _run_dec3 = [profileFn("BundlingDockerImage.run", { telemetry: true })], _cp_dec = [profileFn("BundlingDockerImage.cp", { telemetry: true })];
+    BundlingDockerImage = class {
+      /** @param image The Docker image */
+      constructor(image, _imageHash) {
+        this.image = image;
+        this._imageHash = _imageHash;
+        __runInitializers(_init6, 5, this);
+      }
+      image;
+      _imageHash;
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new DockerImage(image);
+      }
+      /**
+       * Reference an image that's built directly from sources on disk.
+       *
+       * @param path The path to the directory containing the Docker file
+       * @param options Docker build options
+       *
+       * @deprecated use DockerImage.fromBuild()
+       */
+      static fromAsset(path23, options = {}) {
+        return DockerImage.fromBuild(path23, options);
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        return this._imageHash ?? this.image;
+      }
+      run(options = {}) {
+        const volumes = options.volumes || [];
+        const environment = options.environment || {};
+        const entrypoint = options.entrypoint?.[0] || null;
+        const command = [
+          ...options.entrypoint?.[1] ? [...options.entrypoint.slice(1)] : [],
+          ...options.command ? [...options.command] : []
+        ];
+        const dockerArgs = [
+          "run",
+          "--rm",
+          ...options.securityOpt ? ["--security-opt", options.securityOpt] : [],
+          ...options.network ? ["--network", options.network] : [],
+          ...options.platform ? ["--platform", options.platform] : [],
+          ...options.user ? ["-u", options.user] : [],
+          ...options.volumesFrom ? flatten(options.volumesFrom.map((v) => ["--volumes-from", v])) : [],
+          ...flatten(volumes.map((v) => ["-v", `${v.hostPath}:${v.containerPath}:${isSeLinux() ? "z," : ""}${v.consistency ?? "delegated" /* DELEGATED */}`])),
+          ...flatten(Object.entries(environment).map(([k, v]) => ["--env", `${k}=${v}`])),
+          ...options.workingDirectory ? ["-w", options.workingDirectory] : [],
+          ...entrypoint ? ["--entrypoint", entrypoint] : [],
+          this.image,
+          ...command
+        ];
+        dockerExec(dockerArgs);
+      }
+      cp(imagePath, outputPath) {
+        const { stdout } = dockerExec(["create", this.image], {});
+        const match = stdout.toString().match(/([0-9a-f]{16,})/);
+        if (!match) {
+          throw new ExecutionError(lit`FailedToFailedExtractContainer`, "Failed to extract container ID from Docker create output");
+        }
+        const containerId = match[1];
+        const containerPath = `${containerId}:${imagePath}`;
+        const destPath = outputPath ?? FileSystem.mkdtemp("cdk-docker-cp-");
+        try {
+          dockerExec(["cp", containerPath, destPath]);
+          return destPath;
+        } catch (err) {
+          throw new ExecutionError(lit`FailedToFailedCopyFiles`, `Failed to copy files from ${containerPath} to ${destPath}: ${err}`);
+        } finally {
+          dockerExec(["rm", "-v", containerId]);
+        }
+      }
+    };
+    _init6 = __decoratorStart(null);
+    __decorateElement(_init6, 1, "run", _run_dec3, BundlingDockerImage);
+    __decorateElement(_init6, 1, "cp", _cp_dec, BundlingDockerImage);
+    __decoratorMetadata(_init6, BundlingDockerImage);
+    _DockerImage = class _DockerImage extends (_a5 = BundlingDockerImage, _fromBuild_dec = [profileFn("DockerImage.fromBuild", { telemetry: true })], _a5) {
+      constructor(image, _imageHash) {
+        const deprecated = quiet();
+        super(image, _imageHash);
+        /** The Docker image */
+        __publicField(this, "image");
+        reset(deprecated);
+        this.image = image;
+      }
+      static fromBuild(path23, options = {}) {
+        const buildArgs = options.buildArgs || {};
+        if (options.file && (0, import_path.isAbsolute)(options.file)) {
+          throw new UnscopedValidationError(lit`MustBeFileRelativeDocker`, `"file" must be relative to the docker build directory. Got ${options.file}`);
+        }
+        const hash = FileSystem.fingerprint(path23, { extraHash: JSON.stringify(options) });
+        const tag = `cdk-${hash}`;
+        const usingBuildContexts = Object.keys(options.buildContexts ?? {}).length > 0;
+        if (usingBuildContexts || !this.imageAlreadyExists(tag)) {
+          const dockerArgs = [
+            "build",
+            "-t",
+            tag,
+            ...options.file ? ["-f", (0, import_path.join)(path23, options.file)] : [],
+            ...options.platform ? ["--platform", options.platform] : [],
+            ...options.network ? ["--network", options.network] : [],
+            ...options.targetStage ? ["--target", options.targetStage] : [],
+            ...options.cacheFrom ? [...options.cacheFrom.map((cacheFrom) => ["--cache-from", this.cacheOptionToFlag(cacheFrom)]).flat()] : [],
+            ...options.cacheTo ? ["--cache-to", this.cacheOptionToFlag(options.cacheTo)] : [],
+            ...options.cacheDisabled ? ["--no-cache"] : [],
+            ...flatten(Object.entries(buildArgs).map(([k, v]) => ["--build-arg", `${k}=${v}`])),
+            ...flatten(Object.entries(options.buildContexts || {}).map(([k, v]) => ["--build-context", `${k}=${v}`])),
+            path23
+          ];
+          dockerExec(dockerArgs);
+        }
+        return new _DockerImage(tag, hash);
+      }
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new _DockerImage(image);
+      }
+      static imageAlreadyExists(tag) {
+        const prog = process.env.CDK_DOCKER ?? "docker";
+        const proc = (0, import_child_process2.spawnSync)(prog, ["image", "inspect", tag], {
+          stdio: "ignore"
+        });
+        return proc.status === 0;
+      }
+      static cacheOptionToFlag(option) {
+        let flag = `type=${option.type}`;
+        if (option.params) {
+          flag += "," + Object.entries(option.params).map(([k, v]) => `${k}=${v}`).join(",");
+        }
+        return flag;
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        const deprecated = quiet();
+        const json = super.toJSON();
+        reset(deprecated);
+        return json;
+      }
+      /**
+       * Runs a Docker image
+       */
+      run(options = {}) {
+        const deprecated = quiet();
+        const result = super.run(options);
+        reset(deprecated);
+        return result;
+      }
+      /**
+       * Copies a file or directory out of the Docker image to the local filesystem.
+       *
+       * If `outputPath` is omitted the destination path is a temporary directory.
+       *
+       * @param imagePath the path in the Docker image
+       * @param outputPath the destination path for the copy operation
+       * @returns the destination path
+       */
+      cp(imagePath, outputPath) {
+        const deprecated = quiet();
+        const result = super.cp(imagePath, outputPath);
+        reset(deprecated);
+        return result;
+      }
+    };
+    _init7 = __decoratorStart(_a5);
+    __decorateElement(_init7, 9, "fromBuild", _fromBuild_dec, _DockerImage);
+    __decoratorMetadata(_init7, _DockerImage);
+    __runInitializers(_init7, 3, _DockerImage);
+    DockerImage = _DockerImage;
+    PERF_BUNDLING_SRC_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.bundlingSource");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cache.ts
+var Cache;
+var init_cache = __esm({
+  "../../aws-cdk-lib/core/lib/private/cache.ts"() {
+    "use strict";
+    Cache = class {
+      cache = /* @__PURE__ */ new Map();
+      /**
+       * Clears the cache
+       */
+      clear() {
+        this.cache.clear();
+      }
+      /**
+       * Get a value from the cache or calculate it
+       */
+      obtain(cacheKey, calcFn) {
+        let value = this.cache.get(cacheKey);
+        if (value) {
+          return value;
+        }
+        value = calcFn();
+        this.cache.set(cacheKey, value);
+        return value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/asset-staging.ts
+function renderAssetFilename(assetHash, extension = "") {
+  return `asset.${assetHash}${extension}`;
+}
+function determineHashType(scope, assetHashType, customSourceFingerprint) {
+  const hashType = customSourceFingerprint ? assetHashType ?? "custom" /* CUSTOM */ : assetHashType ?? "source" /* SOURCE */;
+  if (customSourceFingerprint && hashType !== "custom" /* CUSTOM */) {
+    throw new ValidationError(lit`CannotSpecifyAssetHashTypeWithAssetHash`, `Cannot specify \`${assetHashType}\` for \`assetHashType\` when \`assetHash\` is specified. Use \`CUSTOM\` or leave \`undefined\`.`, scope);
+  }
+  if (hashType === "custom" /* CUSTOM */ && !customSourceFingerprint) {
+    throw new ValidationError(lit`MustBeSpecified`, "`assetHash` must be specified when `assetHashType` is set to `AssetHashType.CUSTOM`.", scope);
+  }
+  return hashType;
+}
+function validateInternalSymlinks(root, scope, followMode, ignoreStrat) {
+  walkDirectory(root, { follow: followMode, ignoreStrategy: ignoreStrat }, {
+    onSymlink: (entry) => {
+      if (!entry.internal) {
+        throw new ValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${followMode}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`,
+          scope
+        );
+      }
+    }
+  });
+}
+function calculateCacheKey(props) {
+  return crypto6.createHash("sha256").update(JSON.stringify(sortObject(props), sanitizeHashValue)).digest("hex");
+}
+function sortObject(object) {
+  if (typeof object !== "object" || object instanceof Array) {
+    return object;
+  }
+  const ret = {};
+  for (const key of Object.keys(object).sort()) {
+    ret[key] = sortObject(object[key]);
+  }
+  return ret;
+}
+function sanitizeHashValue(key, value) {
+  if (key === "PIP_INDEX_URL" || key === "PIP_EXTRA_INDEX_URL") {
+    try {
+      let url2 = new URL(value);
+      if (url2.password) {
+        url2.password = "";
+        return url2.toString();
+      }
+    } catch (e) {
+      if (e.name === "TypeError") {
+        throw new AssumptionError(lit`MustBeValid`, `${key} must be a valid URL, got ${value}.`);
+      }
+      throw e;
+    }
+  }
+  return value;
+}
+function findSingleFile(scope, directory, archiveOnly) {
+  if (!fs7.existsSync(directory)) {
+    throw new ValidationError(lit`DirectoryDoesNotExist`, `Directory ${directory} does not exist.`, scope);
+  }
+  if (!fs7.statSync(directory).isDirectory()) {
+    throw new ValidationError(lit`PathIsNotDirectory`, `${directory} is not a directory.`, scope);
+  }
+  const content = fs7.readdirSync(directory);
+  if (content.length === 1) {
+    const file = path7.join(directory, content[0]);
+    const extension = getExtension(content[0]).toLowerCase();
+    if (fs7.statSync(file).isFile() && (!archiveOnly || ARCHIVE_EXTENSIONS.includes(extension))) {
+      return file;
+    }
+  }
+  return void 0;
+}
+function determineBundledAsset(scope, bundleDir, outputType, ignore, followMode) {
+  const archiveFile = findSingleFile(scope, bundleDir, outputType !== "single-file" /* SINGLE_FILE */);
+  if (outputType === "auto-discover" /* AUTO_DISCOVER */) {
+    outputType = archiveFile ? "archived" /* ARCHIVED */ : "not-archived" /* NOT_ARCHIVED */;
+  }
+  switch (outputType) {
+    case "not-archived" /* NOT_ARCHIVED */:
+      if (followMode == "internal-only" /* BLOCK_EXTERNAL */) {
+        validateInternalSymlinks(bundleDir, scope, followMode, ignore);
+      }
+      return { path: bundleDir, packaging: "zip" /* ZIP_DIRECTORY */ };
+    case "archived" /* ARCHIVED */:
+    case "single-file" /* SINGLE_FILE */:
+      if (!archiveFile) {
+        throw new ValidationError(lit`BundlingOutputDirectoryExpectedSingleFile`, "Bundling output directory is expected to include only a single file when `output` is set to `ARCHIVED` or `SINGLE_FILE`", scope);
+      } else if (fs7.lstatSync(archiveFile).isSymbolicLink()) {
+        throw new ValidationError(lit`SymlinkInBundlingOutput`, "The output from bundling is not allowed to be a symlink.", scope);
+      }
+      return { path: archiveFile, packaging: "file" /* FILE */, extension: getExtension(archiveFile) };
+  }
+}
+function getExtension(source) {
+  for (const ext of ARCHIVE_EXTENSIONS) {
+    if (source.toLowerCase().endsWith(ext)) {
+      return ext;
+    }
+  }
+  return path7.extname(source);
+}
+function timerSpanFromOptions(x) {
+  const src = bundlingSourceFromOptions(x);
+  return src ? profileSpan(`bundle:${src}`, { telemetry: true }) : void 0;
+}
+function bundlingSourceFromOptions(x) {
+  const value = x[PERF_BUNDLING_SRC_SYM];
+  return typeof value === "string" ? value : void 0;
+}
+var crypto6, path7, import_constructs7, fs7, ARCHIVE_EXTENSIONS, ASSET_SALT_CONTEXT_KEY, AssetStaging;
+var init_asset_staging2 = __esm({
+  "../../aws-cdk-lib/core/lib/asset-staging.ts"() {
+    "use strict";
+    crypto6 = __toESM(require("crypto"));
+    path7 = __toESM(require("path"));
+    import_constructs7 = __toESM(require_lib4());
+    fs7 = __toESM(require_lib5());
+    init_assets();
+    init_bundling();
+    init_errors();
+    init_fs();
+    init_fingerprint();
+    init_names();
+    init_asset_staging();
+    init_cache();
+    init_core_construct_finders();
+    init_literal_string();
+    init_perf();
+    init_cx_api();
+    init_utils();
+    ARCHIVE_EXTENSIONS = [".tar.gz", ".zip", ".jar", ".tar", ".tgz"];
+    ASSET_SALT_CONTEXT_KEY = "@aws-cdk/core:assetHashSalt";
+    AssetStaging = class _AssetStaging extends import_constructs7.Construct {
+      /**
+       * The directory inside the bundling container into which the asset sources will be mounted.
+       */
+      static BUNDLING_INPUT_DIR = "/asset-input";
+      /**
+       * The directory inside the bundling container into which the bundled output should be written.
+       */
+      static BUNDLING_OUTPUT_DIR = "/asset-output";
+      /**
+       * Clears the asset hash cache
+       */
+      static clearAssetHashCache() {
+        this.assetCache.clear();
+        clearLargeFileFingerprintCache();
+      }
+      /**
+       * Cache of asset hashes based on asset configuration to avoid repeated file
+       * system and bundling operations.
+       */
+      static assetCache = new Cache();
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       *
+       * @deprecated - Use `absoluteStagedPath` instead.
+       */
+      stagedPath;
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       */
+      absoluteStagedPath;
+      /**
+       * The absolute path of the asset as it was referenced by the user.
+       */
+      sourcePath;
+      /**
+       * A cryptographic hash of the asset.
+       */
+      assetHash;
+      /**
+       * How this asset should be packaged.
+       */
+      packaging;
+      /**
+       * Whether this asset is an archive (zip or jar).
+       */
+      isArchive;
+      fingerprintOptions;
+      hashType;
+      assetOutdir;
+      /**
+       * A custom source fingerprint given by the user
+       *
+       * Will not be used literally, always hashed later on.
+       */
+      customSourceFingerprint;
+      cacheKey;
+      _sourceStats;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const salt = this.node.tryGetContext(ASSET_SALT_CONTEXT_KEY);
+        this.sourcePath = path7.resolve(props.sourcePath);
+        this.fingerprintOptions = {
+          ...props,
+          exclude: [".is_custom_resource", ...props.exclude ?? []],
+          extraHash: props.extraHash || salt ? `${props.extraHash ?? ""}${salt ?? ""}` : void 0
+        };
+        if (!fs7.existsSync(this.sourcePath)) {
+          throw new ValidationError(lit`CannotFindAsset`, `Cannot find asset at ${this.sourcePath}`, this);
+        }
+        const ignoreStrategy = IgnoreStrategy.fromCopyOptions(props, this.sourcePath);
+        if (props.follow == "internal-only" /* BLOCK_EXTERNAL */ && fs7.statSync(this.sourcePath).isDirectory()) {
+          validateInternalSymlinks(this.sourcePath, scope, props.follow, ignoreStrategy);
+        }
+        this._sourceStats = fs7.statSync(this.sourcePath);
+        const outdir = stageOf(this)?.assetOutdir;
+        if (!outdir) {
+          throw new ValidationError(lit`UnableToDetermineCloudAssembly`, 'unable to determine cloud assembly asset output directory. Assets must be defined indirectly within a "Stage" or an "App" scope', this);
+        }
+        this.assetOutdir = outdir;
+        this.customSourceFingerprint = props.assetHash;
+        this.hashType = determineHashType(this, props.assetHashType, this.customSourceFingerprint);
+        let stageThisAsset;
+        let skip = false;
+        if (props.bundling) {
+          skip = !stackOf(this).bundlingRequired;
+          const bundling = props.bundling;
+          stageThisAsset = () => this.stageByBundling(bundling, skip, props);
+        } else {
+          stageThisAsset = () => this.stageByCopying();
+        }
+        this.cacheKey = calculateCacheKey({
+          outdir: this.assetOutdir,
+          sourcePath: path7.resolve(props.sourcePath),
+          bundling: props.bundling,
+          assetHashType: this.hashType,
+          customFingerprint: this.customSourceFingerprint,
+          extraHash: props.extraHash,
+          exclude: props.exclude,
+          ignoreMode: props.ignoreMode,
+          skip
+        });
+        const staged = _AssetStaging.assetCache.obtain(this.cacheKey, stageThisAsset);
+        this.stagedPath = staged.stagedPath;
+        this.absoluteStagedPath = staged.stagedPath;
+        this.assetHash = staged.assetHash;
+        this.packaging = staged.packaging;
+        this.isArchive = staged.isArchive;
+        this._sourceStats = void 0;
+      }
+      get sourceStats() {
+        if (!this._sourceStats) {
+          throw new AssumptionError(lit`SourceStatusUnset`, "_sourceStats has been unset");
+        }
+        return this._sourceStats;
+      }
+      /**
+       * A cryptographic hash of the asset.
+       *
+       * @deprecated see `assetHash`.
+       */
+      get sourceHash() {
+        return this.assetHash;
+      }
+      /**
+       * Return the path to the staged asset, relative to the Cloud Assembly (manifest) directory of the given stack
+       *
+       * Only returns a relative path if the asset was staged, returns an absolute path if
+       * it was not staged.
+       *
+       * A bundled asset might end up in the outDir and still not count as
+       * "staged"; if asset staging is disabled we're technically expected to
+       * reference source directories, but we don't have a source directory for the
+       * bundled outputs (as the bundle output is written to a temporary
+       * directory). Nevertheless, we will still return an absolute path.
+       *
+       * A non-obvious directory layout may look like this:
+       *
+       * ```
+       *   CLOUD ASSEMBLY ROOT
+       *     +-- asset.12345abcdef/
+       *     +-- assembly-Stage
+       *           +-- MyStack.template.json
+       *           +-- MyStack.assets.json <- will contain { "path": "../asset.12345abcdef" }
+       * ```
+       */
+      relativeStagedPath(stack) {
+        const asmManifestDir = stageOf(stack)?.outdir;
+        if (!asmManifestDir) {
+          return this.stagedPath;
+        }
+        const isOutsideAssetDir = path7.relative(this.assetOutdir, this.stagedPath).startsWith("..");
+        if (isOutsideAssetDir || this.stagingDisabled) {
+          return this.stagedPath;
+        }
+        return path7.relative(asmManifestDir, this.stagedPath);
+      }
+      /**
+       * Stage the source to the target by copying
+       *
+       * Optionally skip if staging is disabled, in which case we pretend we did something but we don't really.
+       */
+      stageByCopying() {
+        const assetHash = this.calculateHash(this.hashType);
+        const targetPath = this.stagingDisabled ? this.sourcePath : path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, getExtension(this.sourcePath)));
+        const stagedPath = this.renderStagedPath(this.sourcePath, targetPath);
+        if (!this.sourceStats.isDirectory() && !this.sourceStats.isFile()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryOrFile`, `Asset ${this.sourcePath} is expected to be either a directory or a regular file`, this);
+        }
+        this.stageAsset(this.sourcePath, stagedPath, "copy");
+        return {
+          assetHash,
+          stagedPath,
+          packaging: this.sourceStats.isDirectory() ? "zip" /* ZIP_DIRECTORY */ : "file" /* FILE */,
+          isArchive: this.sourceStats.isDirectory() || ARCHIVE_EXTENSIONS.includes(getExtension(this.sourcePath).toLowerCase())
+        };
+      }
+      /**
+       * Stage the source to the target by bundling
+       *
+       * Optionally skip, in which case we pretend we did something but we don't really.
+       */
+      stageByBundling(bundling, skip, props) {
+        if (!this.sourceStats.isDirectory()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryForBundling`, `Asset ${this.sourcePath} is expected to be a directory when bundling`, this);
+        }
+        if (skip) {
+          let hashType = this.hashType;
+          if (hashType === "output" /* OUTPUT */ || hashType === "bundle" /* BUNDLE */) {
+            this.customSourceFingerprint = Names.uniqueId(this);
+            hashType = "custom" /* CUSTOM */;
+          }
+          return {
+            assetHash: this.calculateHash(hashType, bundling),
+            stagedPath: this.sourcePath,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            isArchive: true
+          };
+        }
+        let assetHash = this.hashType === "source" /* SOURCE */ || this.hashType === "custom" /* CUSTOM */ ? this.calculateHash(this.hashType, bundling) : void 0;
+        const bundleDir = this.determineBundleDir(this.assetOutdir, assetHash);
+        this.bundle(bundling, bundleDir);
+        const bundlingOutputType = bundling.outputType ?? "auto-discover" /* AUTO_DISCOVER */;
+        const ignore = IgnoreStrategy.fromCopyOptions(props, bundleDir);
+        const bundledAsset = determineBundledAsset(this, bundleDir, bundlingOutputType, ignore, props.follow);
+        assetHash = assetHash ?? this.calculateHash(this.hashType, bundling, bundledAsset.path);
+        const stagedPath = this.renderStagedPath(
+          bundledAsset.path,
+          path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, bundledAsset.extension))
+        );
+        this.stageAsset(bundledAsset.path, stagedPath, "move");
+        if (bundledAsset.packaging === "file" /* FILE */) {
+          if (this.hashType === "output" /* OUTPUT */ || this.hashType === "bundle" /* BUNDLE */) {
+            fs7.removeSync(path7.dirname(bundledAsset.path));
+          } else {
+            fs7.closeSync(fs7.openSync(bundledAsset.path, "w"));
+          }
+        }
+        return {
+          assetHash,
+          stagedPath,
+          packaging: bundledAsset.packaging,
+          isArchive: bundlingOutputType !== "single-file" /* SINGLE_FILE */
+        };
+      }
+      /**
+       * Whether staging has been disabled
+       */
+      get stagingDisabled() {
+        return !!this.node.tryGetContext(DISABLE_ASSET_STAGING_CONTEXT);
+      }
+      /**
+       * Copies or moves the files from sourcePath to targetPath.
+       *
+       * Moving implies the source directory is temporary and can be trashed.
+       *
+       * Will not do anything if source and target are the same.
+       */
+      stageAsset(sourcePath, targetPath, style) {
+        const isAlreadyStaged = fs7.existsSync(targetPath);
+        if (isAlreadyStaged) {
+          if (style === "move" && sourcePath !== targetPath) {
+            fs7.removeSync(sourcePath);
+          }
+          return;
+        }
+        if (style === "move") {
+          fs7.renameSync(sourcePath, targetPath);
+          return;
+        }
+        if (this.sourceStats.isFile()) {
+          fs7.copyFileSync(sourcePath, targetPath);
+        } else if (this.sourceStats.isDirectory()) {
+          fs7.mkdirSync(targetPath);
+          FileSystem.copyDirectory(sourcePath, targetPath, this.fingerprintOptions);
+        } else {
+          throw new ValidationError(lit`UnknownFileType`, `Unknown file type: ${sourcePath}`, this);
+        }
+      }
+      /**
+       * Determine the directory where we're going to write the bundling output
+       *
+       * This is the target directory where we're going to write the staged output
+       * files if we can (if the hash is fully known), or a temporary directory
+       * otherwise.
+       */
+      determineBundleDir(outdir, sourceHash) {
+        if (sourceHash) {
+          return path7.resolve(outdir, renderAssetFilename(sourceHash));
+        }
+        return path7.resolve(outdir, `bundling-temp-${this.cacheKey}`);
+      }
+      /**
+       * Bundles an asset to the given directory
+       *
+       * If the given directory already exists, assume that everything's already
+       * in order and don't do anything.
+       *
+       * @param options Bundling options
+       * @param bundleDir Where to create the bundle directory
+       * @returns The fully resolved bundle output directory.
+       */
+      bundle(options, bundleDir) {
+        if (fs7.existsSync(bundleDir)) {
+          return;
+        }
+        const tempDir = `${bundleDir}-building`;
+        fs7.rmSync(tempDir, { recursive: true, force: true });
+        fs7.ensureDirSync(tempDir);
+        fs7.chmodSync(tempDir, 511);
+        let localBundling;
+        try {
+          var _stack = [];
+          try {
+            process.stderr.write(`Bundling asset ${this.node.path}...
+`);
+            const _span = __using(_stack, timerSpanFromOptions(options));
+            localBundling = options.local?.tryBundle(tempDir, options);
+            if (!localBundling) {
+              const assetStagingOptions = {
+                sourcePath: this.sourcePath,
+                bundleDir: tempDir,
+                ...options
+              };
+              switch (options.bundlingFileAccess) {
+                case "VOLUME_COPY" /* VOLUME_COPY */:
+                  new AssetBundlingVolumeCopy(assetStagingOptions).run();
+                  break;
+                case "BIND_MOUNT" /* BIND_MOUNT */:
+                default:
+                  new AssetBundlingBindMount(assetStagingOptions).run();
+                  break;
+              }
+            }
+            fs7.renameSync(tempDir, bundleDir);
+          } catch (_) {
+            var _error = _, _hasError = true;
+          } finally {
+            __callDispose(_stack, _error, _hasError);
+          }
+        } catch (err) {
+          throw new ValidationError(lit`FailedToBundleAsset`, `Failed to bundle asset ${this.node.path}, bundle output is located at ${tempDir}: ${err}`, this);
+        }
+        if (FileSystem.isEmpty(bundleDir)) {
+          const outputDir = localBundling ? bundleDir : _AssetStaging.BUNDLING_OUTPUT_DIR;
+          throw new ValidationError(lit`BundlingProducedNoOutput`, `Bundling did not produce any output. Check that content is written to ${outputDir}.`, this);
+        }
+      }
+      calculateHash(hashType, bundling, outputDir) {
+        if (hashType == "custom" /* CUSTOM */ || hashType == "source" /* SOURCE */ && bundling) {
+          const hash = crypto6.createHash("sha256");
+          hash.update(this.customSourceFingerprint ?? FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions));
+          if (bundling) {
+            hash.update(JSON.stringify(bundling, sanitizeHashValue));
+          }
+          return hash.digest("hex");
+        }
+        switch (hashType) {
+          case "source" /* SOURCE */:
+            return FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions);
+          case "bundle" /* BUNDLE */:
+          case "output" /* OUTPUT */:
+            if (!outputDir) {
+              throw new ValidationError(lit`CannotUseHashTypeWithoutBundling`, `Cannot use \`${hashType}\` hash type when \`bundling\` is not specified.`, this);
+            }
+            return FileSystem.fingerprint(outputDir, this.fingerprintOptions);
+          default:
+            throw new ValidationError(lit`UnknownAssetHashType`, "Unknown asset hash type.", this);
+        }
+      }
+      renderStagedPath(sourcePath, targetPath) {
+        if (this.hashType !== "output" /* OUTPUT */ && path7.dirname(sourcePath) === targetPath) {
+          targetPath = targetPath + "_noext";
+        }
+        return targetPath;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/duration.ts
+function convert(amount, fromUnit, toUnit, { integral = true }) {
+  if (fromUnit.inMillis === toUnit.inMillis) {
+    if (integral && !Token.isUnresolved(amount) && !Number.isInteger(amount)) {
+      throw new UnscopedValidationError(lit`MustBeWholeNumber`, `${amount} must be a whole number of ${toUnit}.`);
+    }
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeDurationSpecifiedDuration`, `Duration must be specified as 'Duration.${toUnit}()' here since its value comes from a token and cannot be converted (got Duration.${fromUnit})`);
+  }
+  const value = amount * fromUnit.inMillis / toUnit.inMillis;
+  if (!Number.isInteger(value) && integral) {
+    throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+  }
+  return value;
+}
+function finestUnit(a, b) {
+  return a.inMillis < b.inMillis ? a : b;
+}
+var Duration, TimeUnit;
+var init_duration = __esm({
+  "../../aws-cdk-lib/core/lib/duration.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Duration = class _Duration {
+      /**
+       * Create a Duration representing an amount of milliseconds
+       *
+       * @param amount the amount of Milliseconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` ms.
+       */
+      static millis(amount) {
+        return new _Duration(amount, TimeUnit.Milliseconds);
+      }
+      /**
+       * Create a Duration representing an amount of seconds
+       *
+       * @param amount the amount of Seconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Seconds.
+       */
+      static seconds(amount) {
+        return new _Duration(amount, TimeUnit.Seconds);
+      }
+      /**
+       * Create a Duration representing an amount of minutes
+       *
+       * @param amount the amount of Minutes the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Minutes.
+       */
+      static minutes(amount) {
+        return new _Duration(amount, TimeUnit.Minutes);
+      }
+      /**
+       * Create a Duration representing an amount of hours
+       *
+       * @param amount the amount of Hours the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Hours.
+       */
+      static hours(amount) {
+        return new _Duration(amount, TimeUnit.Hours);
+      }
+      /**
+       * Create a Duration representing an amount of days
+       *
+       * @param amount the amount of Days the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Days.
+       */
+      static days(amount) {
+        return new _Duration(amount, TimeUnit.Days);
+      }
+      /**
+       * Parse a period formatted according to the ISO 8601 standard
+       *
+       * Days are the largest ISO duration supported, i.e.,
+       * weeks, months, and years are not supported.
+       *
+       * @example
+       * // This represents 1 day, 2 hours, 3 minutes, 4 seconds, and 567 milliseconds.
+       * 'P1DT2H3M4.567S'
+       *
+       * @see https://www.iso.org/standard/70907.html
+       * @param duration an ISO-formatted duration to be parsed.
+       * @returns the parsed `Duration`.
+       */
+      static parse(duration) {
+        const matches = duration.match(/^P(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)\.?(\d{1,3})?S)?)?$/);
+        if (!matches) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const [, days, hours, minutes, seconds, milliseconds] = matches;
+        if (!days && !hours && !minutes && !seconds && !milliseconds) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const millis = milliseconds ? milliseconds.padEnd(3, "0") : "";
+        return _Duration.millis(
+          _toInt(millis) + _toInt(seconds) * TimeUnit.Seconds.inMillis + _toInt(minutes) * TimeUnit.Minutes.inMillis + _toInt(hours) * TimeUnit.Hours.inMillis + _toInt(days) * TimeUnit.Days.inMillis
+        );
+        function _toInt(str) {
+          if (!str) {
+            return 0;
+          }
+          return Number(str);
+        }
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`DurationAmountsCannotNegative`, `Duration amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Add two Durations together
+       */
+      plus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) + convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Substract two Durations together
+       */
+      minus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) - convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Return the total number of milliseconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Milliseconds.
+       */
+      toMilliseconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Milliseconds, opts);
+      }
+      /**
+       * Return the total number of seconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Seconds.
+       */
+      toSeconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Seconds, opts);
+      }
+      /**
+       * Return the total number of minutes in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Minutes.
+       */
+      toMinutes(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Minutes, opts);
+      }
+      /**
+       * Return the total number of hours in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Hours.
+       */
+      toHours(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Hours, opts);
+      }
+      /**
+       * Return the total number of days in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Days.
+       */
+      toDays(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Days, opts);
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       */
+      toIsoString() {
+        if (this.amount === 0) {
+          return "PT0S";
+        }
+        const ret = ["P"];
+        let tee = false;
+        for (const [amount, unit] of this.components(true)) {
+          if ([TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours].includes(unit) && !tee) {
+            ret.push("T");
+            tee = true;
+          }
+          ret.push(`${amount}${unit.isoLabel}`);
+        }
+        return ret.join("");
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       * @deprecated Use `toIsoString()` instead.
+       */
+      toISOString() {
+        return this.toIsoString();
+      }
+      /**
+       * Turn this duration into a human-readable string
+       */
+      toHumanString() {
+        if (this.amount === 0) {
+          return fmtUnit(0, this.unit);
+        }
+        if (Token.isUnresolved(this.amount)) {
+          return ` ${this.unit.label}`;
+        }
+        return this.components(false).slice(0, 2).map(([amount, unit]) => fmtUnit(amount, unit)).join(" ");
+        function fmtUnit(amount, unit) {
+          if (amount === 1) {
+            return `${amount} ${unit.label.substring(0, unit.label.length - 1)}`;
+          }
+          return `${amount} ${unit.label}`;
+        }
+      }
+      /**
+       * Returns a string representation of this `Duration`
+       *
+       * This is never the right function to use when you want to use the `Duration`
+       * object in a template. Use `toSeconds()`, `toMinutes()`, `toDays()`, etc. instead.
+       */
+      toString() {
+        return `Duration.${this.unit.label}(${this.amount})`;
+      }
+      /**
+       * Return the duration in a set of whole numbered time components, ordered from largest to smallest
+       *
+       * Only components != 0 will be returned.
+       *
+       * Can combine millis and seconds together for the benefit of toIsoString,
+       * makes the logic in there simpler.
+       */
+      components(combineMillisWithSeconds) {
+        const ret = new Array();
+        let millis = convert(this.amount, this.unit, TimeUnit.Milliseconds, { integral: false });
+        for (const unit of [TimeUnit.Days, TimeUnit.Hours, TimeUnit.Minutes, TimeUnit.Seconds]) {
+          const count2 = convert(millis, TimeUnit.Milliseconds, unit, { integral: false });
+          const wholeCount = unit === TimeUnit.Seconds && combineMillisWithSeconds ? count2 : Math.floor(count2);
+          if (wholeCount > 0) {
+            ret.push([wholeCount, unit]);
+            millis -= wholeCount * unit.inMillis;
+          }
+        }
+        if (millis > 1e-4) {
+          ret.push([millis, TimeUnit.Milliseconds]);
+        }
+        return ret;
+      }
+      /**
+       * Checks if duration is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Returns unit of the duration
+       */
+      unitLabel() {
+        return this.unit.label;
+      }
+      /**
+       * Returns stringified number of duration
+       */
+      formatTokenToNumber() {
+        const number = Tokenization.stringifyNumber(this.amount);
+        return `${number} ${this.unit.label}`;
+      }
+    };
+    TimeUnit = class _TimeUnit {
+      constructor(label, isoLabel, inMillis) {
+        this.label = label;
+        this.isoLabel = isoLabel;
+        this.inMillis = inMillis;
+      }
+      label;
+      isoLabel;
+      inMillis;
+      static Milliseconds = new _TimeUnit("millis", "", 1);
+      static Seconds = new _TimeUnit("seconds", "S", 1e3);
+      static Minutes = new _TimeUnit("minutes", "M", 6e4);
+      static Hours = new _TimeUnit("hours", "H", 36e5);
+      static Days = new _TimeUnit("days", "D", 864e5);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/size.ts
+function allStorageUnits() {
+  return [
+    StorageUnit.Pebibytes,
+    StorageUnit.Tebibytes,
+    StorageUnit.Gibibytes,
+    StorageUnit.Mebibytes,
+    StorageUnit.Kibibytes,
+    StorageUnit.Bytes
+  ];
+}
+function convert2(amount, fromUnit, toUnit, options = {}) {
+  const rounding = options.rounding ?? 0 /* FAIL */;
+  if (fromUnit.inBytes === toUnit.inBytes) {
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeSizeSpecifiedSize`, `Size must be specified as 'Size.${toUnit}()' here since its value comes from a token and cannot be converted (got Size.${fromUnit})`);
+  }
+  const multiplier = fromUnit.inBytes / toUnit.inBytes;
+  const value = amount * multiplier;
+  switch (rounding) {
+    case 2 /* NONE */:
+      return value;
+    case 1 /* FLOOR */:
+      return Math.floor(value);
+    default:
+    case 0 /* FAIL */:
+      if (!Number.isInteger(value)) {
+        throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+      }
+      return value;
+  }
+}
+var Size, StorageUnit;
+var init_size = __esm({
+  "../../aws-cdk-lib/core/lib/size.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Size = class _Size {
+      /**
+       * Create a Storage representing an amount bytes.
+       *
+       * @param amount the amount of bytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static bytes(amount) {
+        return new _Size(amount, StorageUnit.Bytes);
+      }
+      /**
+       * Create a Storage representing an amount kibibytes.
+       * 1 KiB = 1024 bytes
+       *
+       * @param amount the amount of kibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static kibibytes(amount) {
+        return new _Size(amount, StorageUnit.Kibibytes);
+      }
+      /**
+       * Create a Storage representing an amount mebibytes.
+       * 1 MiB = 1024 KiB
+       *
+       * @param amount the amount of mebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static mebibytes(amount) {
+        return new _Size(amount, StorageUnit.Mebibytes);
+      }
+      /**
+       * Create a Storage representing an amount gibibytes.
+       * 1 GiB = 1024 MiB
+       *
+       * @param amount the amount of gibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static gibibytes(amount) {
+        return new _Size(amount, StorageUnit.Gibibytes);
+      }
+      /**
+       * Create a Storage representing an amount tebibytes.
+       * 1 TiB = 1024 GiB
+       *
+       * @param amount the amount of tebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static tebibytes(amount) {
+        return new _Size(amount, StorageUnit.Tebibytes);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @deprecated use `pebibytes` instead
+       */
+      static pebibyte(amount) {
+        return _Size.pebibytes(amount);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @param amount the amount of pebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static pebibytes(amount) {
+        return new _Size(amount, StorageUnit.Pebibytes);
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`StorageAmountsCannotNegative`, `Storage amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Return this storage as a total number of bytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity expressed in bytes
+       */
+      toBytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Bytes, opts);
+      }
+      /**
+       * Return this storage as a total number of kibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in kibibytes
+       */
+      toKibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Kibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of mebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in mebibytes
+       */
+      toMebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Mebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of gibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in gibibytes
+       */
+      toGibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Gibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of tebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in tebibytes
+       */
+      toTebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Tebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of pebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in pebibytes
+       */
+      toPebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Pebibytes, opts);
+      }
+      /**
+       * Checks if size is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Convert this Size object to the most appropriate readable number.
+       */
+      toHumanString() {
+        if (this.isUnresolved()) {
+          return `${Token.asString(this.amount)} ${this.unit.shortLabel}`;
+        }
+        const bytes = this.toBytes();
+        for (const unit of allStorageUnits()) {
+          if (bytes >= unit.inBytes) {
+            const am = convert2(bytes, StorageUnit.Bytes, unit, { rounding: 2 /* NONE */ });
+            return `${am.toFixed(2).replace(/\.?0+$/, "")} ${unit.shortLabel}`;
+          }
+        }
+        return `${bytes} bytes`;
+      }
+      /**
+       * Convert this Size object to its constructor form
+       */
+      toString() {
+        return `Size.${this.unit.label}(${this.amount})`;
+      }
+    };
+    StorageUnit = class _StorageUnit {
+      constructor(label, shortLabel, inBytes) {
+        this.label = label;
+        this.shortLabel = shortLabel;
+        this.inBytes = inBytes;
+      }
+      label;
+      shortLabel;
+      inBytes;
+      static Bytes = new _StorageUnit("bytes", "bytes", 1);
+      static Kibibytes = new _StorageUnit("kibibytes", "KiB", 1024);
+      static Mebibytes = new _StorageUnit("mebibytes", "MiB", 1024 * 1024);
+      static Gibibytes = new _StorageUnit("gibibytes", "GiB", 1024 * 1024 * 1024);
+      static Tebibytes = new _StorageUnit("tebibytes", "TiB", 1024 * 1024 * 1024 * 1024);
+      static Pebibytes = new _StorageUnit("pebibytes", "PiB", 1024 * 1024 * 1024 * 1024 * 1024);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts
+var path8, import_constructs8, fs8, ENTRYPOINT_FILENAME, ENTRYPOINT_NODEJS_SOURCE, CustomResourceProviderBase;
+var init_custom_resource_provider_base = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts"() {
+    "use strict";
+    path8 = __toESM(require("path"));
+    import_constructs8 = __toESM(require_lib4());
+    fs8 = __toESM(require_lib5());
+    init_shared();
+    init_cx_api();
+    init_asset_staging2();
+    init_assets();
+    init_cfn_resource();
+    init_duration();
+    init_errors();
+    init_fs();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_literal_string();
+    init_size();
+    init_token();
+    ENTRYPOINT_FILENAME = "__entrypoint__";
+    ENTRYPOINT_NODEJS_SOURCE = path8.join(__dirname, "..", "..", "..", "custom-resource-handlers", "dist", "core", "nodejs-entrypoint-handler", "index.js");
+    CustomResourceProviderBase = class extends import_constructs8.Construct {
+      /**
+       * The hash of the lambda code backing this provider. Can be used to trigger updates
+       * on code changes, even when the properties of a custom resource remain unchanged.
+       */
+      get codeHash() {
+        if (!this._codeHash) {
+          throw new ValidationError(lit`CustomResourceUsesInlineCode`, "This custom resource uses inlineCode: true and does not have a codeHash", this);
+        }
+        return this._codeHash;
+      }
+      _codeHash;
+      policyStatements = Box.fromArray();
+      role;
+      handler;
+      /**
+       * The ARN of the provider's AWS Lambda function which should be used as the `serviceToken` when defining a custom
+       * resource.
+       */
+      get serviceToken() {
+        return Token.asString(this.handler.getAtt("Arn"));
+      }
+      _roleArn = "";
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(scope);
+        if (!fs8.existsSync(path8.join(props.codeDirectory, "index.js"))) {
+          throw new ValidationError(lit`CannotFind`, `cannot find ${props.codeDirectory}/index.js`, this);
+        }
+        if (props.policyStatements) {
+          for (const statement of props.policyStatements) {
+            this.addToRolePolicy(statement);
+          }
+        }
+        const { code, codeHandler, metadata } = this.createCodePropAndMetadata(props, stack);
+        const config = getPrecreatedRoleConfig(this, `${this.node.path}/Role`);
+        const assumeRolePolicyDoc = [{ Action: "sts:AssumeRole", Effect: "Allow", Principal: { Service: "lambda.amazonaws.com" } }];
+        const managedPolicyArn = "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole";
+        if (config.enabled) {
+          this.node.addValidation({
+            validate: () => {
+              PolicySynthesizer.getOrCreate(this).addRole(`${this.node.path}/Role`, {
+                missing: !config.precreatedRoleName,
+                roleName: config.precreatedRoleName ?? id + "Role",
+                managedPolicies: [{ managedPolicyArn }],
+                policyStatements: [...this.policyStatements.get()],
+                assumeRolePolicy: assumeRolePolicyDoc
+              });
+              return [];
+            }
+          });
+          this._roleArn = stackOf(this).formatArn({
+            region: "",
+            service: "iam",
+            resource: "role",
+            resourceName: config.precreatedRoleName
+          });
+        }
+        if (!config.preventSynthesis) {
+          this.role = new CfnResource(this, "Role", {
+            type: "AWS::IAM::Role",
+            properties: {
+              AssumeRolePolicyDocument: {
+                Version: "2012-10-17",
+                Statement: assumeRolePolicyDoc
+              },
+              ManagedPolicyArns: [
+                { "Fn::Sub": managedPolicyArn }
+              ],
+              Policies: this.policyStatements.derive((stmts) => stmts.length === 0 ? void 0 : [{
+                PolicyName: "Inline",
+                PolicyDocument: {
+                  Version: "2012-10-17",
+                  Statement: stmts
+                }
+              }])
+            }
+          });
+        }
+        const timeout = props.timeout ?? Duration.minutes(15);
+        const memory = props.memorySize ?? Size.mebibytes(128);
+        this.handler = new CfnResource(this, "Handler", {
+          type: "AWS::Lambda::Function",
+          properties: {
+            Code: code,
+            Timeout: timeout.toSeconds(),
+            MemorySize: memory.toMebibytes(),
+            Handler: codeHandler,
+            Role: this.roleArn,
+            Runtime: props.runtimeName,
+            Environment: this.renderEnvironmentVariables(props.environment),
+            Description: props.description ?? void 0
+          }
+        });
+        if (this.role) {
+          this.handler.addResourceDependency(this.role);
+        }
+        if (metadata) {
+          Object.entries(metadata).forEach(([k, v]) => this.handler.addMetadata(k, v));
+        }
+      }
+      /**
+       * The ARN of the provider's AWS Lambda function role.
+       */
+      get roleArn() {
+        if (this.role) {
+          return Token.asString(this.role.getAtt("Arn"));
+        }
+        return this._roleArn;
+      }
+      /**
+       * Add an IAM policy statement to the inline policy of the
+       * provider's lambda function's role.
+       *
+       * **Please note**: this is a direct IAM JSON policy blob, *not* a `iam.PolicyStatement`
+       * object like you will see in the rest of the CDK.
+       *
+       *
+       * @example
+       * declare const myProvider: CustomResourceProvider;
+       *
+       * myProvider.addToRolePolicy({
+       *   Effect: 'Allow',
+       *   Action: 's3:GetObject',
+       *   Resource: '*',
+       * });
+       */
+      addToRolePolicy(statement) {
+        this.policyStatements.push(statement);
+      }
+      renderEnvironmentVariables(env2) {
+        if (!env2 || Object.keys(env2).length === 0) {
+          return void 0;
+        }
+        env2 = { ...env2 };
+        env2.AWS_STS_REGIONAL_ENDPOINTS = "regional";
+        const variables = {};
+        const keys = Object.keys(env2).sort();
+        for (const key of keys) {
+          variables[key] = env2[key];
+        }
+        return { Variables: variables };
+      }
+      /**
+       * Returns the code property for the custom resource as well as any metadata.
+       * If the code is to be uploaded as an asset, the asset gets created in this function.
+       */
+      createCodePropAndMetadata(props, stack) {
+        let codeHandler = "index.handler";
+        const inlineCode = this.node.tryGetContext(INLINE_CUSTOM_RESOURCE_CONTEXT);
+        if (!inlineCode) {
+          const stagingDirectory = FileSystem.mkdtemp("cdk-custom-resource");
+          fs8.copySync(props.codeDirectory, stagingDirectory, { filter: (src, _dest) => !src.endsWith(".ts") });
+          if (props.useCfnResponseWrapper ?? true) {
+            fs8.copyFileSync(ENTRYPOINT_NODEJS_SOURCE, path8.join(stagingDirectory, `${ENTRYPOINT_FILENAME}.js`));
+            codeHandler = `${ENTRYPOINT_FILENAME}.handler`;
+          }
+          const staging = new AssetStaging(this, "Staging", {
+            sourcePath: stagingDirectory
+          });
+          const assetFileName = staging.relativeStagedPath(stack);
+          const asset = stack.synthesizer.addFileAsset({
+            fileName: assetFileName,
+            sourceHash: staging.assetHash,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            displayName: `${this.node.path} Code`
+          });
+          this._codeHash = staging.assetHash;
+          fs8.rmSync(stagingDirectory, { recursive: true, force: true });
+          return {
+            code: {
+              S3Bucket: asset.bucketName,
+              S3Key: asset.objectKey
+            },
+            codeHandler,
+            metadata: this.node.tryGetContext(import_cloud_assembly_api.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT) ? {
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PATH_KEY]: assetFileName,
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PROPERTY_KEY]: "Code"
+            } : void 0
+          };
+        }
+        return {
+          code: {
+            ZipFile: fs8.readFileSync(path8.join(props.codeDirectory, "index.js"), "utf-8")
+          },
+          codeHandler
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/default.ts
+var init_default = __esm({
+  "../../aws-cdk-lib/region-info/lib/default.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/aws-entities.ts
+function partitionInformation(region) {
+  for (const [prefix, info] of Object.entries(PARTITION_MAP)) {
+    if (region.startsWith(prefix)) {
+      return info;
+    }
+  }
+  return PARTITION_MAP.default;
+}
+var RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN, RULE_CLASSIC_PARTITION_BECOMES_OPT_IN, AWS_REGIONS_AND_RULES, AWS_REGIONS, PARTITION_MAP;
+var init_aws_entities = __esm({
+  "../../aws-cdk-lib/region-info/lib/aws-entities.ts"() {
+    "use strict";
+    RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN = /* @__PURE__ */ Symbol("S3_WEBSITE_REGIONAL_SUBDOMAIN");
+    RULE_CLASSIC_PARTITION_BECOMES_OPT_IN = /* @__PURE__ */ Symbol("CLASSIC_PARTITION_BECOMES_OPT_IN");
+    AWS_REGIONS_AND_RULES = [
+      "us-east-1",
+      // US East (N. Virginia)
+      "eu-west-1",
+      // Europe (Ireland)
+      "us-west-1",
+      // US West (N. California)
+      "ap-southeast-1",
+      // Asia Pacific (Singapore)
+      "ap-northeast-1",
+      // Asia Pacific (Tokyo)
+      "us-gov-west-1",
+      // AWS GovCloud (US-West)
+      "us-west-2",
+      // US West (Oregon)
+      "sa-east-1",
+      // South America (São Paulo)
+      "ap-southeast-2",
+      // Asia Pacific (Sydney)
+      RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN,
+      "cn-north-1",
+      // China (Beijing)
+      "us-iso-east-1",
+      // AWS ISO
+      "eu-central-1",
+      // Europe (Frankfurt)
+      "ap-northeast-2",
+      // Asia Pacific (Seoul)
+      "ap-south-1",
+      // Asia Pacific (Mumbai)
+      "us-east-2",
+      // US East (Ohio)
+      "ca-central-1",
+      // Canada (Central)
+      "eu-west-2",
+      // Europe (London)
+      "us-isob-east-1",
+      // AWS ISO-B
+      "cn-northwest-1",
+      // China (Ningxia)
+      "eu-west-3",
+      // Europe (Paris)
+      "ap-northeast-3",
+      // Asia Pacific (Osaka)
+      "us-gov-east-1",
+      // AWS GovCloud (US-East)
+      "eu-north-1",
+      // Europe (Stockholm)
+      RULE_CLASSIC_PARTITION_BECOMES_OPT_IN,
+      "ap-east-1",
+      // Asia Pacific (Hong Kong)
+      "me-south-1",
+      // Middle East (Bahrain)
+      "af-south-1",
+      // Africa (Cape Town)
+      "eu-south-1",
+      // Europe (Milan)
+      "us-iso-west-1",
+      // US ISO West
+      "ap-southeast-3",
+      // Asia Pacific (Jakarta)
+      "me-central-1",
+      // Middle East (UAE)
+      "eu-central-2",
+      // Europe (Zurich)
+      "eu-south-2",
+      // Europe (Spain)
+      "ap-south-2",
+      // Asia Pacific (Hyderabad)
+      "ap-southeast-4",
+      // Asia Pacific (Melbourne)
+      "il-central-1",
+      // Israel (Tel Aviv)
+      "ca-west-1",
+      // Canada West (Calgary)
+      "ap-southeast-5",
+      // Asia Pacific (Malaysia)
+      "ap-southeast-7",
+      // Asia Pacific (Thailand)
+      "mx-central-1",
+      // Mexico (Central)
+      "eu-isoe-west-1",
+      // EU ISO-E West
+      "us-isob-west-1",
+      // US ISOB West
+      "ap-east-2",
+      // Asia Pacific (Taipei)
+      "eusc-de-east-1",
+      // EU (Germany)
+      "ap-southeast-6",
+      // Asia Pacific (New Zealand)
+      "us-isof-south-1",
+      // US ISOF SOUTH
+      "us-isof-east-1"
+      // US ISOF EAST
+    ];
+    AWS_REGIONS = AWS_REGIONS_AND_RULES.filter((x) => typeof x === "string").sort();
+    PARTITION_MAP = {
+      "default": { partition: "aws", domainSuffix: "amazonaws.com" },
+      "cn-": { partition: "aws-cn", domainSuffix: "amazonaws.com.cn" },
+      "us-gov-": { partition: "aws-us-gov", domainSuffix: "amazonaws.com" },
+      "us-iso-": { partition: "aws-iso", domainSuffix: "c2s.ic.gov" },
+      "us-isob-": { partition: "aws-iso-b", domainSuffix: "sc2s.sgov.gov" },
+      "us-isof-": { partition: "aws-iso-f", domainSuffix: "csp.hci.ic.gov" },
+      "eu-isoe-": { partition: "aws-iso-e", domainSuffix: "cloud.adc-e.uk" },
+      "eusc-de-": { partition: "aws-eusc", domainSuffix: "amazonaws.eu" }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/fact.ts
+var CONSTRUCT_ERROR_SYMBOL2, RegionFactError, Fact, FactName;
+var init_fact = __esm({
+  "../../aws-cdk-lib/region-info/lib/fact.ts"() {
+    "use strict";
+    init_aws_entities();
+    CONSTRUCT_ERROR_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError");
+    RegionFactError = class _RegionFactError extends Error {
+      constructor(msg) {
+        super(msg);
+        Object.setPrototypeOf(this, _RegionFactError.prototype);
+        Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL2, { value: true });
+        this.name = "RegionFactError";
+      }
+    };
+    Fact = class {
+      /**
+       * @returns the list of names of AWS Regions for which there is at least one registered fact. This
+       *          includes Regions defined in AWS_REGIONS plus custom defined regions.
+       */
+      static get regions() {
+        return [.../* @__PURE__ */ new Set([...AWS_REGIONS, ...Object.keys(this.database)])];
+      }
+      /**
+       * Returns the list of names of registered facts.
+       *
+       * All facts will be present in at least one region.
+       */
+      static get names() {
+        return [...new Set(Object.values(this.database).flatMap((regionFacts) => Object.keys(regionFacts)))];
+      }
+      /**
+       * Return all pairs of (region, factName) that are defined
+       */
+      static definedFacts() {
+        return Object.entries(this.database).flatMap(([regionName, regionFacts]) => Object.keys(regionFacts).map((factName) => [regionName, factName]));
+      }
+      /**
+       * Retrieves a fact from this Fact database.
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name   the name of the fact being looked up (see the `FactName` class for details)
+       *
+       * @returns the fact value if it is known, and `undefined` otherwise.
+       */
+      static find(region, name) {
+        const regionFacts = this.database[region];
+        return regionFacts && regionFacts[name];
+      }
+      /**
+       * Retrieve a fact from the Fact database. (retrieval will fail if the specified region or
+       * fact name does not exist.)
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name the name of the fact being looked up (see the `FactName` class for details)
+       */
+      static requireFact(region, name) {
+        const foundFact = this.find(region, name);
+        if (!foundFact) {
+          throw new RegionFactError(`No fact ${name} could be found for region: ${region} and name: ${name}.`);
+        }
+        return foundFact;
+      }
+      /**
+       * Registers a new fact in this Fact database.
+       *
+       * @param fact           the new fact to be registered.
+       * @param allowReplacing whether new facts can replace existing facts or not.
+       */
+      static register(fact, allowReplacing = false) {
+        const regionFacts = this.database[fact.region] || (this.database[fact.region] = /* @__PURE__ */ Object.create(null));
+        if (fact.name in regionFacts && regionFacts[fact.name] !== fact.value && !allowReplacing) {
+          throw new RegionFactError(`Region ${fact.region} already has a fact ${fact.name}, with value ${regionFacts[fact.name]}`);
+        }
+        if (fact.value !== void 0) {
+          regionFacts[fact.name] = fact.value;
+        }
+      }
+      /**
+       * Removes a fact from the database.
+       * @param region the region for which the fact is to be removed.
+       * @param name   the name of the fact to remove.
+       * @param value  the value that should be removed (removal will fail if the value is specified, but does not match the
+       *               current stored value).
+       */
+      static unregister(region, name, value) {
+        const regionFacts = this.database[region] || /* @__PURE__ */ Object.create(null);
+        if (name in regionFacts && value && regionFacts[name] !== value) {
+          throw new RegionFactError(`Attempted to remove ${name} from ${region} with value ${value}, but the fact's value is ${regionFacts[name]}`);
+        }
+        delete regionFacts[name];
+      }
+      static database = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      constructor() {
+        throw new Error("Use the static methods of Fact instead!");
+      }
+    };
+    FactName = class {
+      /**
+       * The name of the partition for a region (e.g: 'aws', 'aws-cn', ...)
+       */
+      static PARTITION = "partition";
+      /**
+       * The domain suffix for a region (e.g: 'amazonaws.com`)
+       */
+      static DOMAIN_SUFFIX = "domainSuffix";
+      /**
+       * Whether the AWS::CDK::Metadata CloudFormation Resource is available in-region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static CDK_METADATA_RESOURCE_AVAILABLE = "cdk:metadata-resource:available";
+      /**
+       * Whether the given region is an opt-in region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static IS_OPT_IN_REGION = "aws:is-opt-in-region";
+      /**
+       * The endpoint used for hosting S3 static websites
+       */
+      static S3_STATIC_WEBSITE_ENDPOINT = "s3-static-website:endpoint";
+      /**
+       * The endpoint used for aliasing S3 static websites in Route 53
+       */
+      static S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID = "s3-static-website:route-53-hosted-zone-id";
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      static EBS_ENV_ENDPOINT_HOSTED_ZONE_ID = "ebs-environment:route-53-hosted-zone-id";
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      static VPC_ENDPOINT_SERVICE_NAME_PREFIX = "vpcEndpointServiceNamePrefix";
+      /**
+       * The account for ELBv2 in this region
+       */
+      static ELBV2_ACCOUNT = "elbv2Account";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS Deep Learning Containers images in a given region.
+       */
+      static DLC_REPOSITORY_ACCOUNT = "dlcRepositoryAccount";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      static APPMESH_ECR_ACCOUNT = "appMeshRepositoryAccount";
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      static FIREHOSE_CIDR_BLOCK = "firehoseCidrBlock";
+      /**
+       * The SAML Sign On URL for partition used by IAM SAML Principal
+       */
+      static SAML_SIGN_ON_URL = "samlSignOnUrl";
+      /**
+       * The latest Lambda NodeJS runtime available in a given region.
+       */
+      static LATEST_NODE_RUNTIME = "latestNodeRuntime";
+      /**
+       * The ARN of CloudWatch Lambda Insights for a version (e.g. 1.0.98.0)
+       */
+      static cloudwatchLambdaInsightsVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `cloudwatch-lambda-insights-version:${suffix}`;
+      }
+      /**
+       * The ARN of AppConfig Lambda Layer for a given version (e.g. 2.0.181)
+       * @param version The layer version.
+       * @param arch The architecture (optional), defaults to x86_64.
+       */
+      static appConfigLambdaLayerVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `appconfig-lambda-layer:${suffix}`;
+      }
+      /**
+       * The name of the regional service principal for a given service.
+       *
+       * @param service the service name, either simple (e.g: `s3`, `codedeploy`) or qualified (e.g: `s3.amazonaws.com`).
+       *                The `.amazonaws.com` and `.amazonaws.com.cn` domains are stripped from service names, so they are
+       *                canonicalized in that respect.
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      static servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The ARN of Amazon Distro for OpenTelemetry (ADOT) Lambda layer for a given lambda type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static adotLambdaLayer(type, version3, architecture) {
+        const suffix = type + "_" + version3.split(".").join("_") + "_" + architecture;
+        return `adot-lambda-layer:${suffix}`;
+      }
+      /**
+       * The ARN of Parameters and Secrets Lambda layer for a given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static paramsAndSecretsLambdaLayer(version3, architecture) {
+        const suffix = version3.split(".").join("_") + `_${architecture}`;
+        return `params-and-secrets-layer:${suffix}`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/region-info.ts
+var RegionInfo;
+var init_region_info = __esm({
+  "../../aws-cdk-lib/region-info/lib/region-info.ts"() {
+    "use strict";
+    init_aws_entities();
+    init_fact();
+    RegionInfo = class _RegionInfo {
+      constructor(name) {
+        this.name = name;
+      }
+      name;
+      /**
+       * @returns the list of names of AWS regions for which there is at least one registered fact. This
+       *          may not be an exaustive list of all available AWS regions.
+       */
+      static get regions() {
+        return Fact.regions.map((x) => _RegionInfo.get(x));
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions that fact is defined in.
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static regionMap(factName) {
+        const ret = {};
+        for (const regionInfo of _RegionInfo.regions) {
+          const fact = Fact.find(regionInfo.name, factName);
+          if (fact) {
+            ret[regionInfo.name] = fact;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions, limited to some partitions
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @param partitions list of partitions to retrieve facts for. Defaults
+       *   to `['aws', 'aws-cn']`.
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static limitedRegionMap(factName, partitions) {
+        const ret = {};
+        for (const [region, value] of Object.entries(_RegionInfo.regionMap(factName))) {
+          if (partitions.includes(partitionInformation(region).partition)) {
+            ret[region] = value;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Obtain region info for a given region name.
+       *
+       * @param name the name of the region (e.g: us-east-1)
+       */
+      static get(name) {
+        return new _RegionInfo(name);
+      }
+      /**
+       * Whether the `AWS::CDK::Metadata` CloudFormation Resource is available in this region or not.
+       */
+      get cdkMetadataResourceAvailable() {
+        return Fact.find(this.name, FactName.CDK_METADATA_RESOURCE_AVAILABLE) === "YES";
+      }
+      /**
+       * Whether the given region is an opt-in region
+       */
+      get isOptInRegion() {
+        return Fact.find(this.name, FactName.IS_OPT_IN_REGION) === "YES";
+      }
+      /**
+       * The domain name suffix (e.g: amazonaws.com) for this region.
+       */
+      get domainSuffix() {
+        return Fact.find(this.name, FactName.DOMAIN_SUFFIX);
+      }
+      /**
+       * The name of the ARN partition for this region (e.g: aws).
+       */
+      get partition() {
+        return Fact.find(this.name, FactName.PARTITION);
+      }
+      /**
+       * The endpoint used by S3 static website hosting in this region (e.g: s3-static-website-us-east-1.amazonaws.com)
+       */
+      get s3StaticWebsiteEndpoint() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ENDPOINT);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a S3 static website in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get s3StaticWebsiteHostedZoneId() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get ebsEnvEndpointHostedZoneId() {
+        return Fact.find(this.name, FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID);
+      }
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      get vpcEndpointServiceNamePrefix() {
+        return Fact.find(this.name, FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX);
+      }
+      /**
+       * The name of the service principal for a given service in this region.
+       * @param service the service name (e.g: s3.amazonaws.com)
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The account ID for ELBv2 in this region
+       */
+      get elbv2Account() {
+        return Fact.find(this.name, FactName.ELBV2_ACCOUNT);
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository containing the
+       * AWS Deep Learning Containers images in this region.
+       */
+      get dlcRepositoryAccount() {
+        return Fact.find(this.name, FactName.DLC_REPOSITORY_ACCOUNT);
+      }
+      /**
+       * The ARN of the CloudWatch Lambda Insights extension, for the given version.
+       * @param insightsVersion the version (e.g. 1.0.98.0)
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      cloudwatchLambdaInsightsArn(insightsVersion, architecture) {
+        return Fact.find(this.name, FactName.cloudwatchLambdaInsightsVersion(insightsVersion, architecture));
+      }
+      /**
+       * The ARN of the AppConfig Lambda Layer, for the given version.
+       * @param layerVersion The layer version (e.g. 2.0.181)
+       * @param architecture The Lambda Function architecture (e.g. 'x86_64' or 'arm64'), defaults to x86_64
+       */
+      appConfigLambdaArn(layerVersion, architecture) {
+        return Fact.find(this.name, FactName.appConfigLambdaLayerVersion(layerVersion, architecture));
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      get appMeshRepositoryAccount() {
+        return Fact.find(this.name, FactName.APPMESH_ECR_ACCOUNT);
+      }
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      get firehoseCidrBlock() {
+        return Fact.find(this.name, FactName.FIREHOSE_CIDR_BLOCK);
+      }
+      /**
+       * The ARN of the ADOT Lambda layer, for the given layer type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      adotLambdaLayerArn(type, version3, architecture) {
+        return Fact.find(this.name, FactName.adotLambdaLayer(type, version3, architecture));
+      }
+      /**
+       * The ARN of the Parameters and Secrets Lambda layer for the given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      paramsAndSecretsLambdaLayerArn(version3, architecture) {
+        return Fact.find(this.name, FactName.paramsAndSecretsLambdaLayer(version3, architecture));
+      }
+      /**
+       * SAML Sign On URL used by IAM SAML Principals.
+       */
+      get samlSignOnUrl() {
+        return Fact.find(this.name, FactName.SAML_SIGN_ON_URL);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/built-ins.generated.ts
+var BuiltIns;
+var init_built_ins_generated = __esm({
+  "../../aws-cdk-lib/region-info/lib/built-ins.generated.ts"() {
+    "use strict";
+    init_fact();
+    BuiltIns = class {
+      /**
+       * Registers all the built in regional data in the RegionInfo database.
+       */
+      static register() {
+        Fact.register({ region: "af-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "af-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.af-south-1.amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11KHD8FBVPUYU" });
+        Fact.register({ region: "af-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1EI3BVKMKK4AM" });
+        Fact.register({ region: "af-south-1", name: FactName.ELBV2_ACCOUNT, value: "098369216593" });
+        Fact.register({ region: "af-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "924023996002" });
+        Fact.register({ region: "af-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "af-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "af-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.244.121.224/27" });
+        Fact.register({ region: "af-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:456" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-1.amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "ZNB98KWMFR0R6" });
+        Fact.register({ region: "ap-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZPWYUBWRU171A" });
+        Fact.register({ region: "ap-east-1", name: FactName.ELBV2_ACCOUNT, value: "754344448648" });
+        Fact.register({ region: "ap-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "871362719292" });
+        Fact.register({ region: "ap-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "856666278305" });
+        Fact.register({ region: "ap-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.162.221.32/27" });
+        Fact.register({ region: "ap-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-east-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-2.amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z064739330DAH7WJVOO93" });
+        Fact.register({ region: "ap-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-east-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "975050140332" });
+        Fact.register({ region: "ap-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "058264503299" });
+        Fact.register({ region: "ap-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.212.53.160/27" });
+        Fact.register({ region: "ap-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-2:145023102084:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-northeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2M4EHUR26P7ZW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.ELBV2_ACCOUNT, value: "582318560864" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.113.196.224/27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:87" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:34" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:83" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:33" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:31" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:80" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:30" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:79" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:29" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:78" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:76" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:72" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:37" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:35" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:62" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3W03O7B5YMIYP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z3JE5OI70TWKCP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.ELBV2_ACCOUNT, value: "600734575887" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.209.1.64/27" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2YQB5RD63NC85" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZNE5GEY1TIAGY" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.ELBV2_ACCOUNT, value: "383597477331" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.208.177.192/27" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:13" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:42" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:576959938190:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-1.amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11RGJOFQNVJUP" });
+        Fact.register({ region: "ap-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z18NTBI3Y7N9TZ" });
+        Fact.register({ region: "ap-south-1", name: FactName.ELBV2_ACCOUNT, value: "718504428378" });
+        Fact.register({ region: "ap-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.232.67.32/27" });
+        Fact.register({ region: "ap-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:58" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:94" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:92" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:55" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-2.amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z02976202B4EZMXIPMXF7" });
+        Fact.register({ region: "ap-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10223522IBWPBF2C2FJS" });
+        Fact.register({ region: "ap-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "772153158452" });
+        Fact.register({ region: "ap-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.60.192.128/27" });
+        Fact.register({ region: "ap-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:22" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-2:070087711984:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3O0J2DXBE1FTB" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z16FZ9L249IFLT" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.ELBV2_ACCOUNT, value: "114774131450" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.228.64.192/27" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:41" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1WCIGYICN2BYD" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2PCDNR3VC2G1N" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.ELBV2_ACCOUNT, value: "783225319266" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.210.67.224/27" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z01846753K324LI26A3VV" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z05913172VM7EAZB40TA8" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.ELBV2_ACCOUNT, value: "589379963580" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "907027046896" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "909464085924" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "108.136.221.64/27" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:37" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:24" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:13" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-4.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0312387243XT5FE14WFO" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z0666869LC74UHAO5YE4" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "457447274322" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.50.161.128/27" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-4:605207715842:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:5" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:307021474294:layer:AWS-AppConfig-Extension:2" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-5.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z08660063OXLMA7F1FJHU" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01812971H0QCYWSL7WOH" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.216.58.0/27" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-6.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01144401H1NECCLJDD4D" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "633930458069" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.APPMESH_ECR_ACCOUNT, value: "637423513210" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-6:727646510379:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-7.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0031014GXUMRZG6I14G" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.208.112.96/27" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-central-1.amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1QDHH18159H29" });
+        Fact.register({ region: "ca-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZJFCZL7SSZB5I" });
+        Fact.register({ region: "ca-central-1", name: FactName.ELBV2_ACCOUNT, value: "985666609251" });
+        Fact.register({ region: "ca-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ca-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ca-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.183.92.128/27" });
+        Fact.register({ region: "ca-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ca-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-west-1.amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03565811Z33SLEZTHOUL" });
+        Fact.register({ region: "ca-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1021028356Y0CYS11DQI" });
+        Fact.register({ region: "ca-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "40.176.98.192/27" });
+        Fact.register({ region: "ca-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-west-1:761377655185:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:15" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-north-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z5CN8UMXT92WN" });
+        Fact.register({ region: "cn-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-north-1", name: FactName.ELBV2_ACCOUNT, value: "638102146993" });
+        Fact.register({ region: "cn-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919366029133" });
+        Fact.register({ region: "cn-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.81.151.32/27" });
+        Fact.register({ region: "cn-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:287114880934:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-northwest-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z282HJ1KT0DH03" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.ELBV2_ACCOUNT, value: "037604701340" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919830735681" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "161.189.23.64/27" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:287310001119:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-1.amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z21DNDUVLTQW6Q" });
+        Fact.register({ region: "eu-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1FRNW7UH4DEZJ" });
+        Fact.register({ region: "eu-central-1", name: FactName.ELBV2_ACCOUNT, value: "054676820928" });
+        Fact.register({ region: "eu-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.158.127.160/27" });
+        Fact.register({ region: "eu-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-central-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-2.amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z030506016YDQGETNASS" });
+        Fact.register({ region: "eu-central-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z00227012FSHBMZNNSJJI" });
+        Fact.register({ region: "eu-central-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "380420809688" });
+        Fact.register({ region: "eu-central-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.62.183.32/27" });
+        Fact.register({ region: "eu-central-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:7" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-2:772501565639:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.PARTITION, value: "aws-iso-e" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DOMAIN_SUFFIX, value: "cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-isoe-west-1.cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "uk.adc-e.cloud.vpce" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-north-1.amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BAZG2TWCNX0D" });
+        Fact.register({ region: "eu-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-north-1", name: FactName.ELBV2_ACCOUNT, value: "897822967062" });
+        Fact.register({ region: "eu-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.53.63.224/27" });
+        Fact.register({ region: "eu-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:57" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:142" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:139" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:111" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:98" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:97" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-1.amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3IXVV8C73GIO3" });
+        Fact.register({ region: "eu-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10VDYYOA2JFKM" });
+        Fact.register({ region: "eu-south-1", name: FactName.ELBV2_ACCOUNT, value: "635631232127" });
+        Fact.register({ region: "eu-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "692866216735" });
+        Fact.register({ region: "eu-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "422531588944" });
+        Fact.register({ region: "eu-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.161.135.128/27" });
+        Fact.register({ region: "eu-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-2.amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0081959F7139GRJC19J" });
+        Fact.register({ region: "eu-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "503227376785" });
+        Fact.register({ region: "eu-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.100.71.96/27" });
+        Fact.register({ region: "eu-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-2:524103009944:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-eu-west-1.amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1BKCTXD74EZPE" });
+        Fact.register({ region: "eu-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2NYPWQ7DFZAZH" });
+        Fact.register({ region: "eu-west-1", name: FactName.ELBV2_ACCOUNT, value: "156460612806" });
+        Fact.register({ region: "eu-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.19.239.192/27" });
+        Fact.register({ region: "eu-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:108" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:7" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:6" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-2.amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3GKZC51ZF0DB4" });
+        Fact.register({ region: "eu-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1GKAAAUGATPF1" });
+        Fact.register({ region: "eu-west-2", name: FactName.ELBV2_ACCOUNT, value: "652711504416" });
+        Fact.register({ region: "eu-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.130.1.96/27" });
+        Fact.register({ region: "eu-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-3.amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3R1K369G5AVDG" });
+        Fact.register({ region: "eu-west-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z5WN6GAYWG5OB" });
+        Fact.register({ region: "eu-west-3", name: FactName.ELBV2_ACCOUNT, value: "009996457667" });
+        Fact.register({ region: "eu-west-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.180.1.96/27" });
+        Fact.register({ region: "eu-west-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:80" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.PARTITION, value: "aws-eusc" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eusc-de-east-1.amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "204133271717" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "eu.amazonaws.vpce" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "il-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.il-central-1.amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z09640613K4A3MN55U7GU" });
+        Fact.register({ region: "il-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z02941091PERNCB1MI5H7" });
+        Fact.register({ region: "il-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "564877687649" });
+        Fact.register({ region: "il-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "il-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "il-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "51.16.102.0/27" });
+        Fact.register({ region: "il-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:il-central-1:066549572091:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-central-1.amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z06143092I8HRXZRUZROF" });
+        Fact.register({ region: "me-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "me-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "914824155844" });
+        Fact.register({ region: "me-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "3.28.159.32/27" });
+        Fact.register({ region: "me-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:34" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:31" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-central-1:858974508948:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-south-1.amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1MPMWCPA7YB62" });
+        Fact.register({ region: "me-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2BBTEKR2I36N2" });
+        Fact.register({ region: "me-south-1", name: FactName.ELBV2_ACCOUNT, value: "076674570225" });
+        Fact.register({ region: "me-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "217643126080" });
+        Fact.register({ region: "me-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "772975370895" });
+        Fact.register({ region: "me-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.185.91.0/27" });
+        Fact.register({ region: "me-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "mx-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "mx-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "mx-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.mx-central-1.amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "mx-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "mx-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "sa-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "sa-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-sa-east-1.amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z7KQH4QJS55SO" });
+        Fact.register({ region: "sa-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10X7K2B4QSOFV" });
+        Fact.register({ region: "sa-east-1", name: FactName.ELBV2_ACCOUNT, value: "507241528517" });
+        Fact.register({ region: "sa-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "sa-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "sa-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "sa-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "sa-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.228.1.128/27" });
+        Fact.register({ region: "sa-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-east-1.amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3AQBSTGFYJSTF" });
+        Fact.register({ region: "us-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z117KPS5GTRQ2G" });
+        Fact.register({ region: "us-east-1", name: FactName.ELBV2_ACCOUNT, value: "127311923021" });
+        Fact.register({ region: "us-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.70.63.192/27" });
+        Fact.register({ region: "us-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-east-2.amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2O1EMRO9K5GLX" });
+        Fact.register({ region: "us-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z14LCN19Q5QHIC" });
+        Fact.register({ region: "us-east-2", name: FactName.ELBV2_ACCOUNT, value: "033677994240" });
+        Fact.register({ region: "us-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.58.135.96/27" });
+        Fact.register({ region: "us-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-gov-east-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2NIFVYYW2VKV1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z35TSARG0EJ4VU" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.ELBV2_ACCOUNT, value: "190560391635" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.253.138.96/27" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:129776340158:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-gov-west-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z31GFT0UA1I2HV" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z4KAURWC4UUUG" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.ELBV2_ACCOUNT, value: "048591011584" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.61.204.160/27" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:127562683043:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-east-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.ELBV2_ACCOUNT, value: "770363063475" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-west-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.ELBV2_ACCOUNT, value: "121062877647" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-east-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.ELBV2_ACCOUNT, value: "740734521339" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-west-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-east-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03373031FTGQH4MNG6ST" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.ELBV2_ACCOUNT, value: "091100254016" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "303241398832" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-south-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03376072I8GXC2DXUFXI" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.ELBV2_ACCOUNT, value: "412137745753" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "454834333376" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-1.amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2F56UZL2M1ACD" });
+        Fact.register({ region: "us-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1LQECGX5PH1X" });
+        Fact.register({ region: "us-west-1", name: FactName.ELBV2_ACCOUNT, value: "027434742980" });
+        Fact.register({ region: "us-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.57.135.192/27" });
+        Fact.register({ region: "us-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:124" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:121" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:78" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:77" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-2.amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BJ6K6RIION7M" });
+        Fact.register({ region: "us-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z38NKT9BP95V3O" });
+        Fact.register({ region: "us-west-2", name: FactName.ELBV2_ACCOUNT, value: "797873946194" });
+        Fact.register({ region: "us-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.89.255.224/27" });
+        Fact.register({ region: "us-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:146" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:45" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:143" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:114" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:101" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:100" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/index.ts
+var init_lib2 = __esm({
+  "../../aws-cdk-lib/region-info/lib/index.ts"() {
+    "use strict";
+    init_default();
+    init_fact();
+    init_region_info();
+    init_built_ins_generated();
+    BuiltIns.register();
+  }
+});
+
+// ../../aws-cdk-lib/region-info/index.ts
+var init_region_info2 = __esm({
+  "../../aws-cdk-lib/region-info/index.ts"() {
+    "use strict";
+    init_lib2();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts
+function determineLatestNodeRuntimeName(scope) {
+  return stackOf(scope).regionalFact(FactName.LATEST_NODE_RUNTIME, "nodejs24.x");
+}
+var init_custom_resource_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_region_info2();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts
+var init_custom_resource_provider2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_custom_resource_provider();
+    init_shared();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts
+var path9, CfnUtilsProvider;
+var init_cfn_utils_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts"() {
+    "use strict";
+    path9 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CfnUtilsProvider = class _CfnUtilsProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CfnUtilsProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path9.join(__dirname, "cfn-utils-provider"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts
+var import_constructs9, CfnUtilsProvider2, CfnUtils;
+var init_cfn_utils_provider = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts"() {
+    "use strict";
+    import_constructs9 = __toESM(require_lib4());
+    init_custom_resource();
+    init_consts();
+    init_cfn_utils_provider_generated();
+    CfnUtilsProvider2 = class extends import_constructs9.Construct {
+      static getOrCreate(scope) {
+        return CfnUtilsProvider.getOrCreate(scope, "AWSCDKCfnUtilsProvider");
+      }
+    };
+    CfnUtils = class {
+      /**
+       * Encode a structure to JSON at CloudFormation deployment time
+       *
+       * This would have been suitable for the JSON-encoding of arbitrary structures, however:
+       *
+       * - It uses a custom resource to do the encoding, and we'd rather not use a custom
+       *   resource if we can avoid it.
+       * - It cannot be used to encode objects where the keys of the objects can contain
+       *   tokens--because those cannot be represented in the JSON encoding that CloudFormation
+       *   templates use.
+       *
+       * This helper is used by `CloudFormationLang.toJSON()` if and only if it encounters
+       * objects that cannot be stringified any other way.
+       */
+      static stringify(scope, id, value) {
+        const resource = new CustomResource(scope, id, {
+          serviceToken: CfnUtilsProvider2.getOrCreate(scope),
+          resourceType: "Custom::AWSCDKCfnJsonStringify" /* CFN_JSON_STRINGIFY */,
+          properties: {
+            Value: value
+          }
+        });
+        return resource.getAttString("Value");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js
+var require_PlainValue_516d5bc2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js"(exports2) {
+    "use strict";
+    var Char = {
+      ANCHOR: "&",
+      COMMENT: "#",
+      TAG: "!",
+      DIRECTIVES_END: "-",
+      DOCUMENT_END: "."
+    };
+    var Type = {
+      ALIAS: "ALIAS",
+      BLANK_LINE: "BLANK_LINE",
+      BLOCK_FOLDED: "BLOCK_FOLDED",
+      BLOCK_LITERAL: "BLOCK_LITERAL",
+      COMMENT: "COMMENT",
+      DIRECTIVE: "DIRECTIVE",
+      DOCUMENT: "DOCUMENT",
+      FLOW_MAP: "FLOW_MAP",
+      FLOW_SEQ: "FLOW_SEQ",
+      MAP: "MAP",
+      MAP_KEY: "MAP_KEY",
+      MAP_VALUE: "MAP_VALUE",
+      PLAIN: "PLAIN",
+      QUOTE_DOUBLE: "QUOTE_DOUBLE",
+      QUOTE_SINGLE: "QUOTE_SINGLE",
+      SEQ: "SEQ",
+      SEQ_ITEM: "SEQ_ITEM"
+    };
+    var defaultTagPrefix = "tag:yaml.org,2002:";
+    var defaultTags = {
+      MAP: "tag:yaml.org,2002:map",
+      SEQ: "tag:yaml.org,2002:seq",
+      STR: "tag:yaml.org,2002:str"
+    };
+    function findLineStarts(src) {
+      const ls = [0];
+      let offset = src.indexOf("\n");
+      while (offset !== -1) {
+        offset += 1;
+        ls.push(offset);
+        offset = src.indexOf("\n", offset);
+      }
+      return ls;
+    }
+    function getSrcInfo(cst) {
+      let lineStarts, src;
+      if (typeof cst === "string") {
+        lineStarts = findLineStarts(cst);
+        src = cst;
+      } else {
+        if (Array.isArray(cst)) cst = cst[0];
+        if (cst && cst.context) {
+          if (!cst.lineStarts) cst.lineStarts = findLineStarts(cst.context.src);
+          lineStarts = cst.lineStarts;
+          src = cst.context.src;
+        }
+      }
+      return {
+        lineStarts,
+        src
+      };
+    }
+    function getLinePos(offset, cst) {
+      if (typeof offset !== "number" || offset < 0) return null;
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !src || offset > src.length) return null;
+      for (let i = 0; i < lineStarts.length; ++i) {
+        const start = lineStarts[i];
+        if (offset < start) {
+          return {
+            line: i,
+            col: offset - lineStarts[i - 1] + 1
+          };
+        }
+        if (offset === start) return {
+          line: i + 1,
+          col: 1
+        };
+      }
+      const line = lineStarts.length;
+      return {
+        line,
+        col: offset - lineStarts[line - 1] + 1
+      };
+    }
+    function getLine(line, cst) {
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !(line >= 1) || line > lineStarts.length) return null;
+      const start = lineStarts[line - 1];
+      let end = lineStarts[line];
+      while (end && end > start && src[end - 1] === "\n") --end;
+      return src.slice(start, end);
+    }
+    function getPrettyContext({
+      start,
+      end
+    }, cst, maxWidth = 80) {
+      let src = getLine(start.line, cst);
+      if (!src) return null;
+      let {
+        col
+      } = start;
+      if (src.length > maxWidth) {
+        if (col <= maxWidth - 10) {
+          src = src.substr(0, maxWidth - 1) + "\u2026";
+        } else {
+          const halfWidth = Math.round(maxWidth / 2);
+          if (src.length > col + halfWidth) src = src.substr(0, col + halfWidth - 1) + "\u2026";
+          col -= src.length - maxWidth;
+          src = "\u2026" + src.substr(1 - maxWidth);
+        }
+      }
+      let errLen = 1;
+      let errEnd = "";
+      if (end) {
+        if (end.line === start.line && col + (end.col - start.col) <= maxWidth + 1) {
+          errLen = end.col - start.col;
+        } else {
+          errLen = Math.min(src.length + 1, maxWidth) - col;
+          errEnd = "\u2026";
+        }
+      }
+      const offset = col > 1 ? " ".repeat(col - 1) : "";
+      const err = "^".repeat(errLen);
+      return `${src}
+${offset}${err}${errEnd}`;
+    }
+    var Range = class _Range {
+      static copy(orig) {
+        return new _Range(orig.start, orig.end);
+      }
+      constructor(start, end) {
+        this.start = start;
+        this.end = end || start;
+      }
+      isEmpty() {
+        return typeof this.start !== "number" || !this.end || this.end <= this.start;
+      }
+      /**
+       * Set `origStart` and `origEnd` to point to the original source range for
+       * this node, which may differ due to dropped CR characters.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRange(cr, offset) {
+        const {
+          start,
+          end
+        } = this;
+        if (cr.length === 0 || end <= cr[0]) {
+          this.origStart = start;
+          this.origEnd = end;
+          return offset;
+        }
+        let i = offset;
+        while (i < cr.length) {
+          if (cr[i] > start) break;
+          else ++i;
+        }
+        this.origStart = start + i;
+        const nextOffset = i;
+        while (i < cr.length) {
+          if (cr[i] >= end) break;
+          else ++i;
+        }
+        this.origEnd = end + i;
+        return nextOffset;
+      }
+    };
+    var Node11 = class _Node {
+      static addStringTerminator(src, offset, str) {
+        if (str[str.length - 1] === "\n") return str;
+        const next = _Node.endOfWhiteSpace(src, offset);
+        return next >= src.length || src[next] === "\n" ? str + "\n" : str;
+      }
+      // ^(---|...)
+      static atDocumentBoundary(src, offset, sep3) {
+        const ch0 = src[offset];
+        if (!ch0) return true;
+        const prev = src[offset - 1];
+        if (prev && prev !== "\n") return false;
+        if (sep3) {
+          if (ch0 !== sep3) return false;
+        } else {
+          if (ch0 !== Char.DIRECTIVES_END && ch0 !== Char.DOCUMENT_END) return false;
+        }
+        const ch1 = src[offset + 1];
+        const ch2 = src[offset + 2];
+        if (ch1 !== ch0 || ch2 !== ch0) return false;
+        const ch3 = src[offset + 3];
+        return !ch3 || ch3 === "\n" || ch3 === "	" || ch3 === " ";
+      }
+      static endOfIdentifier(src, offset) {
+        let ch = src[offset];
+        const isVerbatim = ch === "<";
+        const notOk = isVerbatim ? ["\n", "	", " ", ">"] : ["\n", "	", " ", "[", "]", "{", "}", ","];
+        while (ch && notOk.indexOf(ch) === -1) ch = src[offset += 1];
+        if (isVerbatim && ch === ">") offset += 1;
+        return offset;
+      }
+      static endOfIndent(src, offset) {
+        let ch = src[offset];
+        while (ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfLine(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== "\n") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfWhiteSpace(src, offset) {
+        let ch = src[offset];
+        while (ch === "	" || ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static startOfLine(src, offset) {
+        let ch = src[offset - 1];
+        if (ch === "\n") return offset;
+        while (ch && ch !== "\n") ch = src[offset -= 1];
+        return offset + 1;
+      }
+      /**
+       * End of indentation, or null if the line's indent level is not more
+       * than `indent`
+       *
+       * @param {string} src
+       * @param {number} indent
+       * @param {number} lineStart
+       * @returns {?number}
+       */
+      static endOfBlockIndent(src, indent, lineStart) {
+        const inEnd = _Node.endOfIndent(src, lineStart);
+        if (inEnd > lineStart + indent) {
+          return inEnd;
+        } else {
+          const wsEnd = _Node.endOfWhiteSpace(src, inEnd);
+          const ch = src[wsEnd];
+          if (!ch || ch === "\n") return wsEnd;
+        }
+        return null;
+      }
+      static atBlank(src, offset, endAsBlank) {
+        const ch = src[offset];
+        return ch === "\n" || ch === "	" || ch === " " || endAsBlank && !ch;
+      }
+      static nextNodeIsIndented(ch, indentDiff, indicatorAsIndent) {
+        if (!ch || indentDiff < 0) return false;
+        if (indentDiff > 0) return true;
+        return indicatorAsIndent && ch === "-";
+      }
+      // should be at line or string end, or at next non-whitespace char
+      static normalizeOffset(src, offset) {
+        const ch = src[offset];
+        return !ch ? offset : ch !== "\n" && src[offset - 1] === "\n" ? offset - 1 : _Node.endOfWhiteSpace(src, offset);
+      }
+      // fold single newline into space, multiple newlines to N - 1 newlines
+      // presumes src[offset] === '\n'
+      static foldNewline(src, offset, indent) {
+        let inCount = 0;
+        let error = false;
+        let fold = "";
+        let ch = src[offset + 1];
+        while (ch === " " || ch === "	" || ch === "\n") {
+          switch (ch) {
+            case "\n":
+              inCount = 0;
+              offset += 1;
+              fold += "\n";
+              break;
+            case "	":
+              if (inCount <= indent) error = true;
+              offset = _Node.endOfWhiteSpace(src, offset + 2) - 1;
+              break;
+            case " ":
+              inCount += 1;
+              offset += 1;
+              break;
+          }
+          ch = src[offset + 1];
+        }
+        if (!fold) fold = " ";
+        if (ch && inCount <= indent) error = true;
+        return {
+          fold,
+          offset,
+          error
+        };
+      }
+      constructor(type, props, context) {
+        Object.defineProperty(this, "context", {
+          value: context || null,
+          writable: true
+        });
+        this.error = null;
+        this.range = null;
+        this.valueRange = null;
+        this.props = props || [];
+        this.type = type;
+        this.value = null;
+      }
+      getPropValue(idx, key, skipKey) {
+        if (!this.context) return null;
+        const {
+          src
+        } = this.context;
+        const prop = this.props[idx];
+        return prop && src[prop.start] === key ? src.slice(prop.start + (skipKey ? 1 : 0), prop.end) : null;
+      }
+      get anchor() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const anchor = this.getPropValue(i, Char.ANCHOR, true);
+          if (anchor != null) return anchor;
+        }
+        return null;
+      }
+      get comment() {
+        const comments = [];
+        for (let i = 0; i < this.props.length; ++i) {
+          const comment = this.getPropValue(i, Char.COMMENT, true);
+          if (comment != null) comments.push(comment);
+        }
+        return comments.length > 0 ? comments.join("\n") : null;
+      }
+      commentHasRequiredWhitespace(start) {
+        const {
+          src
+        } = this.context;
+        if (this.header && start === this.header.end) return false;
+        if (!this.valueRange) return false;
+        const {
+          end
+        } = this.valueRange;
+        return start !== end || _Node.atBlank(src, end - 1);
+      }
+      get hasComment() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] === Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get hasProps() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] !== Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get includesTrailingLines() {
+        return false;
+      }
+      get jsonLike() {
+        const jsonLikeTypes = [Type.FLOW_MAP, Type.FLOW_SEQ, Type.QUOTE_DOUBLE, Type.QUOTE_SINGLE];
+        return jsonLikeTypes.indexOf(this.type) !== -1;
+      }
+      get rangeAsLinePos() {
+        if (!this.range || !this.context) return void 0;
+        const start = getLinePos(this.range.start, this.context.root);
+        if (!start) return void 0;
+        const end = getLinePos(this.range.end, this.context.root);
+        return {
+          start,
+          end
+        };
+      }
+      get rawValue() {
+        if (!this.valueRange || !this.context) return null;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        return this.context.src.slice(start, end);
+      }
+      get tag() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const tag = this.getPropValue(i, Char.TAG, false);
+          if (tag != null) {
+            if (tag[1] === "<") {
+              return {
+                verbatim: tag.slice(2, -1)
+              };
+            } else {
+              const [_, handle, suffix] = tag.match(/^(.*!)([^!]*)$/);
+              return {
+                handle,
+                suffix
+              };
+            }
+          }
+        }
+        return null;
+      }
+      get valueRangeContainsNewline() {
+        if (!this.valueRange || !this.context) return false;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        for (let i = start; i < end; ++i) {
+          if (src[i] === "\n") return true;
+        }
+        return false;
+      }
+      parseComment(start) {
+        const {
+          src
+        } = this.context;
+        if (src[start] === Char.COMMENT) {
+          const end = _Node.endOfLine(src, start + 1);
+          const commentRange = new Range(start, end);
+          this.props.push(commentRange);
+          return end;
+        }
+        return start;
+      }
+      /**
+       * Populates the `origStart` and `origEnd` values of all ranges for this
+       * node. Extended by child classes to handle descendant nodes.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRanges(cr, offset) {
+        if (this.range) offset = this.range.setOrigRange(cr, offset);
+        if (this.valueRange) this.valueRange.setOrigRange(cr, offset);
+        this.props.forEach((prop) => prop.setOrigRange(cr, offset));
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = src.slice(range4.start, range4.end);
+        return _Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var YAMLError = class extends Error {
+      constructor(name, source, message) {
+        if (!message || !(source instanceof Node11)) throw new Error(`Invalid arguments for new ${name}`);
+        super();
+        this.name = name;
+        this.message = message;
+        this.source = source;
+      }
+      makePretty() {
+        if (!this.source) return;
+        this.nodeType = this.source.type;
+        const cst = this.source.context && this.source.context.root;
+        if (typeof this.offset === "number") {
+          this.range = new Range(this.offset, this.offset + 1);
+          const start = cst && getLinePos(this.offset, cst);
+          if (start) {
+            const end = {
+              line: start.line,
+              col: start.col + 1
+            };
+            this.linePos = {
+              start,
+              end
+            };
+          }
+          delete this.offset;
+        } else {
+          this.range = this.source.range;
+          this.linePos = this.source.rangeAsLinePos;
+        }
+        if (this.linePos) {
+          const {
+            line,
+            col
+          } = this.linePos.start;
+          this.message += ` at line ${line}, column ${col}`;
+          const ctx = cst && getPrettyContext(this.linePos, cst);
+          if (ctx) this.message += `:
+
+${ctx}
+`;
+        }
+        delete this.source;
+      }
+    };
+    var YAMLReferenceError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLReferenceError", source, message);
+      }
+    };
+    var YAMLSemanticError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSemanticError", source, message);
+      }
+    };
+    var YAMLSyntaxError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSyntaxError", source, message);
+      }
+    };
+    var YAMLWarning = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLWarning", source, message);
+      }
+    };
+    function _defineProperty(e, r, t) {
+      return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
+        value: t,
+        enumerable: true,
+        configurable: true,
+        writable: true
+      }) : e[r] = t, e;
+    }
+    function _toPrimitive(t, r) {
+      if ("object" != typeof t || !t) return t;
+      var e = t[Symbol.toPrimitive];
+      if (void 0 !== e) {
+        var i = e.call(t, r || "default");
+        if ("object" != typeof i) return i;
+        throw new TypeError("@@toPrimitive must return a primitive value.");
+      }
+      return ("string" === r ? String : Number)(t);
+    }
+    function _toPropertyKey(t) {
+      var i = _toPrimitive(t, "string");
+      return "symbol" == typeof i ? i : i + "";
+    }
+    var PlainValue = class _PlainValue extends Node11 {
+      static endOfLine(src, start, inFlow) {
+        let ch = src[start];
+        let offset = start;
+        while (ch && ch !== "\n") {
+          if (inFlow && (ch === "[" || ch === "]" || ch === "{" || ch === "}" || ch === ",")) break;
+          const next = src[offset + 1];
+          if (ch === ":" && (!next || next === "\n" || next === "	" || next === " " || inFlow && next === ",")) break;
+          if ((ch === " " || ch === "	") && next === "#") break;
+          offset += 1;
+          ch = next;
+        }
+        return offset;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        let ch = src[end - 1];
+        while (start < end && (ch === "\n" || ch === "	" || ch === " ")) ch = src[--end - 1];
+        let str = "";
+        for (let i = start; i < end; ++i) {
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            const {
+              fold,
+              offset
+            } = Node11.foldNewline(src, i, -1);
+            str += fold;
+            i = offset;
+          } else if (ch2 === " " || ch2 === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (i < end && (next === " " || next === "	")) {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch2;
+          } else {
+            str += ch2;
+          }
+        }
+        const ch0 = src[start];
+        switch (ch0) {
+          case "	": {
+            const msg = "Plain value cannot start with a tab character";
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          case "@":
+          case "`": {
+            const msg = `Plain value cannot start with reserved character ${ch0}`;
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          default:
+            return str;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          inFlow,
+          src
+        } = this.context;
+        let offset = start;
+        let valueEnd = start;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          if (Node11.atDocumentBoundary(src, offset + 1)) break;
+          const end = Node11.endOfBlockIndent(src, indent, offset + 1);
+          if (end === null || src[end] === "#") break;
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            valueEnd = _PlainValue.endOfLine(src, end, inFlow);
+            offset = valueEnd;
+          }
+        }
+        if (this.valueRange.isEmpty()) this.valueRange.start = start;
+        this.valueRange.end = valueEnd;
+        return valueEnd;
+      }
+      /**
+       * Parses a plain value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * #comment
+       *
+       * first line
+       *
+       * first line #comment
+       *
+       * first line
+       * block
+       * lines
+       *
+       * #comment
+       * block
+       * lines
+       * ```
+       * where block lines are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar, may be `\n`
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          inFlow,
+          src
+        } = context;
+        let offset = start;
+        const ch = src[offset];
+        if (ch && ch !== "#" && ch !== "\n") {
+          offset = _PlainValue.endOfLine(src, start, inFlow);
+        }
+        this.valueRange = new Range(start, offset);
+        offset = Node11.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        if (!this.hasComment || this.valueRange.isEmpty()) {
+          offset = this.parseBlockValue(offset);
+        }
+        return offset;
+      }
+    };
+    exports2.Char = Char;
+    exports2.Node = Node11;
+    exports2.PlainValue = PlainValue;
+    exports2.Range = Range;
+    exports2.Type = Type;
+    exports2.YAMLError = YAMLError;
+    exports2.YAMLReferenceError = YAMLReferenceError;
+    exports2.YAMLSemanticError = YAMLSemanticError;
+    exports2.YAMLSyntaxError = YAMLSyntaxError;
+    exports2.YAMLWarning = YAMLWarning;
+    exports2._defineProperty = _defineProperty;
+    exports2.defaultTagPrefix = defaultTagPrefix;
+    exports2.defaultTags = defaultTags;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js
+var require_parse_cst = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var BlankLine = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.BLANK_LINE);
+      }
+      /* istanbul ignore next */
+      get includesTrailingLines() {
+        return true;
+      }
+      /**
+       * Parses a blank line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first \n character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        this.range = new PlainValue.Range(start, start + 1);
+        return start + 1;
+      }
+    };
+    var CollectionItem = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.node = null;
+      }
+      get includesTrailingLines() {
+        return !!this.node && this.node.includesTrailingLines;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          atLineStart,
+          lineStart
+        } = context;
+        if (!atLineStart && this.type === PlainValue.Type.SEQ_ITEM) this.error = new PlainValue.YAMLSemanticError(this, "Sequence items must not have preceding content on the same line");
+        const indent = atLineStart ? start - lineStart : context.indent;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        let ch = src[offset];
+        const inlineComment = ch === "#";
+        const comments = [];
+        let blankLine = null;
+        while (ch === "\n" || ch === "#") {
+          if (ch === "#") {
+            const end2 = PlainValue.Node.endOfLine(src, offset + 1);
+            comments.push(new PlainValue.Range(offset, end2));
+            offset = end2;
+          } else {
+            atLineStart = true;
+            lineStart = offset + 1;
+            const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+            if (src[wsEnd] === "\n" && comments.length === 0) {
+              blankLine = new BlankLine();
+              lineStart = blankLine.parse({
+                src
+              }, lineStart);
+            }
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+          }
+          ch = src[offset];
+        }
+        if (PlainValue.Node.nextNodeIsIndented(ch, offset - (lineStart + indent), this.type !== PlainValue.Type.SEQ_ITEM)) {
+          this.node = parseNode({
+            atLineStart,
+            inCollection: false,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+        } else if (ch && lineStart > start + 1) {
+          offset = lineStart - 1;
+        }
+        if (this.node) {
+          if (blankLine) {
+            const items = context.parent.items || context.parent.contents;
+            if (items) items.push(blankLine);
+          }
+          if (comments.length) Array.prototype.push.apply(this.props, comments);
+          offset = this.node.range.end;
+        } else {
+          if (inlineComment) {
+            const c = comments[0];
+            this.props.push(c);
+            offset = c.end;
+          } else {
+            offset = PlainValue.Node.endOfLine(src, start + 1);
+          }
+        }
+        const end = this.node ? this.node.valueRange.end : offset;
+        this.valueRange = new PlainValue.Range(start, end);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.node ? this.node.setOrigRanges(cr, offset) : offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          node,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = node ? src.slice(range4.start, node.range.start) + String(node) : src.slice(range4.start, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Comment = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.COMMENT);
+      }
+      /**
+       * Parses a comment line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const offset = this.parseComment(start);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    function grabCollectionEndComments(node) {
+      let cnode = node;
+      while (cnode instanceof CollectionItem) cnode = cnode.node;
+      if (!(cnode instanceof Collection2)) return null;
+      const len = cnode.items.length;
+      let ci = -1;
+      for (let i = len - 1; i >= 0; --i) {
+        const n = cnode.items[i];
+        if (n.type === PlainValue.Type.COMMENT) {
+          const {
+            indent,
+            lineStart
+          } = n.context;
+          if (indent > 0 && n.range.start >= lineStart + indent) break;
+          ci = i;
+        } else if (n.type === PlainValue.Type.BLANK_LINE) ci = i;
+        else break;
+      }
+      if (ci === -1) return null;
+      const ca = cnode.items.splice(ci, len - ci);
+      const prevEnd = ca[0].range.start;
+      while (true) {
+        cnode.range.end = prevEnd;
+        if (cnode.valueRange && cnode.valueRange.end > prevEnd) cnode.valueRange.end = prevEnd;
+        if (cnode === node) break;
+        cnode = cnode.context.parent;
+      }
+      return ca;
+    }
+    var Collection2 = class _Collection extends PlainValue.Node {
+      static nextContentHasIndent(src, offset, indent) {
+        const lineStart = PlainValue.Node.endOfLine(src, offset) + 1;
+        offset = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+        const ch = src[offset];
+        if (!ch) return false;
+        if (offset >= lineStart + indent) return true;
+        if (ch !== "#" && ch !== "\n") return false;
+        return _Collection.nextContentHasIndent(src, offset, indent);
+      }
+      constructor(firstItem) {
+        super(firstItem.type === PlainValue.Type.SEQ_ITEM ? PlainValue.Type.SEQ : PlainValue.Type.MAP);
+        for (let i = firstItem.props.length - 1; i >= 0; --i) {
+          if (firstItem.props[i].start < firstItem.context.lineStart) {
+            this.props = firstItem.props.slice(0, i + 1);
+            firstItem.props = firstItem.props.slice(i + 1);
+            const itemRange = firstItem.props[0] || firstItem.valueRange;
+            firstItem.range.start = itemRange.start;
+            break;
+          }
+        }
+        this.items = [firstItem];
+        const ec = grabCollectionEndComments(firstItem);
+        if (ec) Array.prototype.push.apply(this.items, ec);
+      }
+      get includesTrailingLines() {
+        return this.items.length > 0;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let lineStart = PlainValue.Node.startOfLine(src, start);
+        const firstItem = this.items[0];
+        firstItem.context.parent = this;
+        this.valueRange = PlainValue.Range.copy(firstItem.valueRange);
+        const indent = firstItem.range.start - firstItem.context.lineStart;
+        let offset = start;
+        offset = PlainValue.Node.normalizeOffset(src, offset);
+        let ch = src[offset];
+        let atLineStart = PlainValue.Node.endOfWhiteSpace(src, lineStart) === offset;
+        let prevIncludesTrailingLines = false;
+        while (ch) {
+          while (ch === "\n" || ch === "#") {
+            if (atLineStart && ch === "\n" && !prevIncludesTrailingLines) {
+              const blankLine = new BlankLine();
+              offset = blankLine.parse({
+                src
+              }, offset);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+              this.items.push(blankLine);
+              offset -= 1;
+            } else if (ch === "#") {
+              if (offset < lineStart + indent && !_Collection.nextContentHasIndent(src, offset, indent)) {
+                return offset;
+              }
+              const comment = new Comment();
+              offset = comment.parse({
+                indent,
+                lineStart,
+                src
+              }, offset);
+              this.items.push(comment);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+            }
+            lineStart = offset + 1;
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+            if (PlainValue.Node.atBlank(src, offset)) {
+              const wsEnd = PlainValue.Node.endOfWhiteSpace(src, offset);
+              const next = src[wsEnd];
+              if (!next || next === "\n" || next === "#") {
+                offset = wsEnd;
+              }
+            }
+            ch = src[offset];
+            atLineStart = true;
+          }
+          if (!ch) {
+            break;
+          }
+          if (offset !== lineStart + indent && (atLineStart || ch !== ":")) {
+            if (offset < lineStart + indent) {
+              if (lineStart > start) offset = lineStart;
+              break;
+            } else if (!this.error) {
+              const msg = "All collection items must start at the same column";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          if (firstItem.type === PlainValue.Type.SEQ_ITEM) {
+            if (ch !== "-") {
+              if (lineStart > start) offset = lineStart;
+              break;
+            }
+          } else if (ch === "-" && !this.error) {
+            const next = src[offset + 1];
+            if (!next || next === "\n" || next === "	" || next === " ") {
+              const msg = "A collection cannot be both a mapping and a sequence";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          const node = parseNode({
+            atLineStart,
+            inCollection: true,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+          if (!node) return offset;
+          this.items.push(node);
+          this.valueRange.end = node.valueRange.end;
+          offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+          ch = src[offset];
+          atLineStart = false;
+          prevIncludesTrailingLines = node.includesTrailingLines;
+          if (ch) {
+            let ls = offset - 1;
+            let prev = src[ls];
+            while (prev === " " || prev === "	") prev = src[--ls];
+            if (prev === "\n") {
+              lineStart = ls + 1;
+              atLineStart = true;
+            }
+          }
+          const ec = grabCollectionEndComments(node);
+          if (ec) Array.prototype.push.apply(this.items, ec);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = src.slice(range4.start, items[0].range.start) + String(items[0]);
+        for (let i = 1; i < items.length; ++i) {
+          const item = items[i];
+          const {
+            atLineStart,
+            indent
+          } = item.context;
+          if (atLineStart) for (let i2 = 0; i2 < indent; ++i2) str += " ";
+          str += String(item);
+        }
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Directive = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.DIRECTIVE);
+        this.name = null;
+      }
+      get parameters() {
+        const raw = this.rawValue;
+        return raw ? raw.trim().split(/[ \t]+/) : [];
+      }
+      parseName(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "	" && ch !== " ") ch = src[offset += 1];
+        this.name = src.slice(start, offset);
+        return offset;
+      }
+      parseParameters(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "#") ch = src[offset += 1];
+        this.valueRange = new PlainValue.Range(start, offset);
+        return offset;
+      }
+      parse(context, start) {
+        this.context = context;
+        let offset = this.parseName(start + 1);
+        offset = this.parseParameters(offset);
+        offset = this.parseComment(offset);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    var Document = class _Document extends PlainValue.Node {
+      static startCommentOrEndBlankLine(src, start) {
+        const offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        const ch = src[offset];
+        return ch === "#" || ch === "\n" ? offset : start;
+      }
+      constructor() {
+        super(PlainValue.Type.DOCUMENT);
+        this.directives = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.documentEndMarker = null;
+      }
+      parseDirectives(start) {
+        const {
+          src
+        } = this.context;
+        this.directives = [];
+        let atLineStart = true;
+        let hasDirectives = false;
+        let offset = start;
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DIRECTIVES_END)) {
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.directives.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.directives.push(comment);
+                atLineStart = false;
+              }
+              break;
+            case "%":
+              {
+                const directive = new Directive();
+                offset = directive.parse({
+                  parent: this,
+                  src
+                }, offset);
+                this.directives.push(directive);
+                hasDirectives = true;
+                atLineStart = false;
+              }
+              break;
+            default:
+              if (hasDirectives) {
+                this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+              } else if (this.directives.length > 0) {
+                this.contents = this.directives;
+                this.directives = [];
+              }
+              return offset;
+          }
+        }
+        if (src[offset]) {
+          this.directivesEndMarker = new PlainValue.Range(offset, offset + 3);
+          return offset + 3;
+        }
+        if (hasDirectives) {
+          this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+        } else if (this.directives.length > 0) {
+          this.contents = this.directives;
+          this.directives = [];
+        }
+        return offset;
+      }
+      parseContents(start) {
+        const {
+          parseNode,
+          src
+        } = this.context;
+        if (!this.contents) this.contents = [];
+        let lineStart = start;
+        while (src[lineStart - 1] === "-") lineStart -= 1;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        let atLineStart = lineStart === start;
+        this.valueRange = new PlainValue.Range(offset);
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DOCUMENT_END)) {
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.contents.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              lineStart = offset;
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.contents.push(comment);
+                atLineStart = false;
+              }
+              break;
+            default: {
+              const iEnd = PlainValue.Node.endOfIndent(src, offset);
+              const context = {
+                atLineStart,
+                indent: -1,
+                inFlow: false,
+                inCollection: false,
+                lineStart,
+                parent: this
+              };
+              const node = parseNode(context, iEnd);
+              if (!node) return this.valueRange.end = iEnd;
+              this.contents.push(node);
+              offset = node.range.end;
+              atLineStart = false;
+              const ec = grabCollectionEndComments(node);
+              if (ec) Array.prototype.push.apply(this.contents, ec);
+            }
+          }
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+        }
+        this.valueRange.end = offset;
+        if (src[offset]) {
+          this.documentEndMarker = new PlainValue.Range(offset, offset + 3);
+          offset += 3;
+          if (src[offset]) {
+            offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+            if (src[offset] === "#") {
+              const comment = new Comment();
+              offset = comment.parse({
+                src
+              }, offset);
+              this.contents.push(comment);
+            }
+            switch (src[offset]) {
+              case "\n":
+                offset += 1;
+                break;
+              case void 0:
+                break;
+              default:
+                this.error = new PlainValue.YAMLSyntaxError(this, "Document end marker line cannot have a non-comment suffix");
+            }
+          }
+        }
+        return offset;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        context.root = this;
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = src.charCodeAt(start) === 65279 ? start + 1 : start;
+        offset = this.parseDirectives(offset);
+        offset = this.parseContents(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.directives.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.directivesEndMarker) offset = this.directivesEndMarker.setOrigRange(cr, offset);
+        this.contents.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.documentEndMarker) offset = this.documentEndMarker.setOrigRange(cr, offset);
+        return offset;
+      }
+      toString() {
+        const {
+          contents,
+          directives,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = directives.join("");
+        if (contents.length > 0) {
+          if (directives.length > 0 || contents[0].type === PlainValue.Type.COMMENT) str += "---\n";
+          str += contents.join("");
+        }
+        if (str[str.length - 1] !== "\n") str += "\n";
+        return str;
+      }
+    };
+    var Alias2 = class extends PlainValue.Node {
+      /**
+       * Parses an *alias from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = PlainValue.Node.endOfIdentifier(src, start + 1);
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var Chomp = {
+      CLIP: "CLIP",
+      KEEP: "KEEP",
+      STRIP: "STRIP"
+    };
+    var BlockValue = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.blockIndent = null;
+        this.chomping = Chomp.CLIP;
+        this.header = null;
+      }
+      get includesTrailingLines() {
+        return this.chomping === Chomp.KEEP;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (this.valueRange.isEmpty()) return "";
+        let lastNewLine = null;
+        let ch = src[end - 1];
+        while (ch === "\n" || ch === "	" || ch === " ") {
+          end -= 1;
+          if (end <= start) {
+            if (this.chomping === Chomp.KEEP) break;
+            else return "";
+          }
+          if (ch === "\n") lastNewLine = end;
+          ch = src[end - 1];
+        }
+        let keepStart = end + 1;
+        if (lastNewLine) {
+          if (this.chomping === Chomp.KEEP) {
+            keepStart = lastNewLine;
+            end = this.valueRange.end;
+          } else {
+            end = lastNewLine;
+          }
+        }
+        const bi = indent + this.blockIndent;
+        const folded = this.type === PlainValue.Type.BLOCK_FOLDED;
+        let atStart = true;
+        let str = "";
+        let sep3 = "";
+        let prevMoreIndented = false;
+        for (let i = start; i < end; ++i) {
+          for (let j = 0; j < bi; ++j) {
+            if (src[i] !== " ") break;
+            i += 1;
+          }
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            if (sep3 === "\n") str += "\n";
+            else sep3 = "\n";
+          } else {
+            const lineEnd = PlainValue.Node.endOfLine(src, i);
+            const line = src.slice(i, lineEnd);
+            i = lineEnd;
+            if (folded && (ch2 === " " || ch2 === "	") && i < keepStart) {
+              if (sep3 === " ") sep3 = "\n";
+              else if (!prevMoreIndented && !atStart && sep3 === "\n") sep3 = "\n\n";
+              str += sep3 + line;
+              sep3 = lineEnd < end && src[lineEnd] || "";
+              prevMoreIndented = true;
+            } else {
+              str += sep3 + line;
+              sep3 = folded && i < keepStart ? " " : "\n";
+              prevMoreIndented = false;
+            }
+            if (atStart && line !== "") atStart = false;
+          }
+        }
+        return this.chomping === Chomp.STRIP ? str : str + "\n";
+      }
+      parseBlockHeader(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start + 1;
+        let bi = "";
+        while (true) {
+          const ch = src[offset];
+          switch (ch) {
+            case "-":
+              this.chomping = Chomp.STRIP;
+              break;
+            case "+":
+              this.chomping = Chomp.KEEP;
+              break;
+            case "0":
+            case "1":
+            case "2":
+            case "3":
+            case "4":
+            case "5":
+            case "6":
+            case "7":
+            case "8":
+            case "9":
+              bi += ch;
+              break;
+            default:
+              this.blockIndent = Number(bi) || null;
+              this.header = new PlainValue.Range(start, offset);
+              return offset;
+          }
+          offset += 1;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          src
+        } = this.context;
+        const explicit = !!this.blockIndent;
+        let offset = start;
+        let valueEnd = start;
+        let minBlockIndent = 1;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          offset += 1;
+          if (PlainValue.Node.atDocumentBoundary(src, offset)) break;
+          const end = PlainValue.Node.endOfBlockIndent(src, indent, offset);
+          if (end === null) break;
+          const ch2 = src[end];
+          const lineIndent = end - (offset + indent);
+          if (!this.blockIndent) {
+            if (src[end] !== "\n") {
+              if (lineIndent < minBlockIndent) {
+                const msg = "Block scalars with more-indented leading empty lines must use an explicit indentation indicator";
+                this.error = new PlainValue.YAMLSemanticError(this, msg);
+              }
+              this.blockIndent = lineIndent;
+            } else if (lineIndent > minBlockIndent) {
+              minBlockIndent = lineIndent;
+            }
+          } else if (ch2 && ch2 !== "\n" && lineIndent < this.blockIndent) {
+            if (src[end] === "#") break;
+            if (!this.error) {
+              const src2 = explicit ? "explicit indentation indicator" : "first line";
+              const msg = `Block scalars must not be less indented than their ${src2}`;
+              this.error = new PlainValue.YAMLSemanticError(this, msg);
+            }
+          }
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            offset = valueEnd = PlainValue.Node.endOfLine(src, end);
+          }
+        }
+        if (this.chomping !== Chomp.KEEP) {
+          offset = src[valueEnd] ? valueEnd + 1 : valueEnd;
+        }
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        return offset;
+      }
+      /**
+       * Parses a block value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * BS
+       * block
+       * lines
+       *
+       * BS #comment
+       * block
+       * lines
+       * ```
+       * where the block style BS matches the regexp `[|>][-+1-9]*` and block lines
+       * are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this block
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = this.parseBlockHeader(start);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        offset = this.parseBlockValue(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.header ? this.header.setOrigRange(cr, offset) : offset;
+      }
+    };
+    var FlowCollection = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.items = null;
+      }
+      prevNodeIsJsonLike(idx = this.items.length) {
+        const node = this.items[idx - 1];
+        return !!node && (node.jsonLike || node.type === PlainValue.Type.COMMENT && this.prevNodeIsJsonLike(idx - 1));
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          indent,
+          lineStart
+        } = context;
+        let char = src[start];
+        this.items = [{
+          char,
+          offset: start
+        }];
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        char = src[offset];
+        while (char && char !== "]" && char !== "}") {
+          switch (char) {
+            case "\n":
+              {
+                lineStart = offset + 1;
+                const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+                if (src[wsEnd] === "\n") {
+                  const blankLine = new BlankLine();
+                  lineStart = blankLine.parse({
+                    src
+                  }, lineStart);
+                  this.items.push(blankLine);
+                }
+                offset = PlainValue.Node.endOfIndent(src, lineStart);
+                if (offset <= lineStart + indent) {
+                  char = src[offset];
+                  if (offset < lineStart + indent || char !== "]" && char !== "}") {
+                    const msg = "Insufficient indentation in flow collection";
+                    this.error = new PlainValue.YAMLSemanticError(this, msg);
+                  }
+                }
+              }
+              break;
+            case ",":
+              {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.items.push(comment);
+              }
+              break;
+            case "?":
+            case ":": {
+              const next = src[offset + 1];
+              if (next === "\n" || next === "	" || next === " " || next === "," || // in-flow : after JSON-like key does not need to be followed by whitespace
+              char === ":" && this.prevNodeIsJsonLike()) {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+                break;
+              }
+            }
+            // fallthrough
+            default: {
+              const node = parseNode({
+                atLineStart: false,
+                inCollection: false,
+                inFlow: true,
+                indent: -1,
+                lineStart,
+                parent: this
+              }, offset);
+              if (!node) {
+                this.valueRange = new PlainValue.Range(start, offset);
+                return offset;
+              }
+              this.items.push(node);
+              offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+            }
+          }
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+          char = src[offset];
+        }
+        this.valueRange = new PlainValue.Range(start, offset + 1);
+        if (char) {
+          this.items.push({
+            char,
+            offset
+          });
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset + 1);
+          offset = this.parseComment(offset);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          if (node instanceof PlainValue.Node) {
+            offset = node.setOrigRanges(cr, offset);
+          } else if (cr.length === 0) {
+            node.origOffset = node.offset;
+          } else {
+            let i = offset;
+            while (i < cr.length) {
+              if (cr[i] > node.offset) break;
+              else ++i;
+            }
+            node.origOffset = node.offset + i;
+            offset = i;
+          }
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const nodes = items.filter((item) => item instanceof PlainValue.Node);
+        let str = "";
+        let prevEnd = range4.start;
+        nodes.forEach((node) => {
+          const prefix = src.slice(prevEnd, node.range.start);
+          prevEnd = node.range.end;
+          str += prefix + String(node);
+          if (str[str.length - 1] === "\n" && src[prevEnd - 1] !== "\n" && src[prevEnd] === "\n") {
+            prevEnd += 1;
+          }
+        });
+        str += src.slice(prevEnd, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var QuoteDouble = class _QuoteDouble extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== '"') {
+          offset += ch === "\\" ? 2 : 1;
+          ch = src[offset];
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== '"') errors.push(new PlainValue.YAMLSyntaxError(this, 'Missing closing "quote'));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line double-quoted string needs to be sufficiently indented"));
+          } else if (ch === "\\") {
+            i += 1;
+            switch (src[i]) {
+              case "0":
+                str += "\0";
+                break;
+              // null character
+              case "a":
+                str += "\x07";
+                break;
+              // bell character
+              case "b":
+                str += "\b";
+                break;
+              // backspace
+              case "e":
+                str += "\x1B";
+                break;
+              // escape character
+              case "f":
+                str += "\f";
+                break;
+              // form feed
+              case "n":
+                str += "\n";
+                break;
+              // line feed
+              case "r":
+                str += "\r";
+                break;
+              // carriage return
+              case "t":
+                str += "	";
+                break;
+              // horizontal tab
+              case "v":
+                str += "\v";
+                break;
+              // vertical tab
+              case "N":
+                str += "\x85";
+                break;
+              // Unicode next line
+              case "_":
+                str += "\xA0";
+                break;
+              // Unicode non-breaking space
+              case "L":
+                str += "\u2028";
+                break;
+              // Unicode line separator
+              case "P":
+                str += "\u2029";
+                break;
+              // Unicode paragraph separator
+              case " ":
+                str += " ";
+                break;
+              case '"':
+                str += '"';
+                break;
+              case "/":
+                str += "/";
+                break;
+              case "\\":
+                str += "\\";
+                break;
+              case "	":
+                str += "	";
+                break;
+              case "x":
+                str += this.parseCharCode(i + 1, 2, errors);
+                i += 2;
+                break;
+              case "u":
+                str += this.parseCharCode(i + 1, 4, errors);
+                i += 4;
+                break;
+              case "U":
+                str += this.parseCharCode(i + 1, 8, errors);
+                i += 8;
+                break;
+              case "\n":
+                while (src[i + 1] === " " || src[i + 1] === "	") i += 1;
+                break;
+              default:
+                errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(i - 1, 2)}`));
+                str += "\\" + src[i];
+            }
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      parseCharCode(offset, length, errors) {
+        const {
+          src
+        } = this.context;
+        const cc = src.substr(offset, length);
+        const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc);
+        const code = ok ? parseInt(cc, 16) : NaN;
+        if (isNaN(code)) {
+          errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(offset - 2, length + 2)}`));
+          return src.substr(offset - 2, length + 2);
+        }
+        return String.fromCodePoint(code);
+      }
+      /**
+       * Parses a "double quoted" value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteDouble.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var QuoteSingle = class _QuoteSingle extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch) {
+          if (ch === "'") {
+            if (src[offset + 1] !== "'") break;
+            ch = src[offset += 2];
+          } else {
+            ch = src[offset += 1];
+          }
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Missing closing 'quote"));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line single-quoted string needs to be sufficiently indented"));
+          } else if (ch === "'") {
+            str += ch;
+            i += 1;
+            if (src[i] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Unescaped single quote? This should not happen."));
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      /**
+       * Parses a 'single quoted' value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteSingle.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    function createNewNode(type, props) {
+      switch (type) {
+        case PlainValue.Type.ALIAS:
+          return new Alias2(type, props);
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+          return new BlockValue(type, props);
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.FLOW_SEQ:
+          return new FlowCollection(type, props);
+        case PlainValue.Type.MAP_KEY:
+        case PlainValue.Type.MAP_VALUE:
+        case PlainValue.Type.SEQ_ITEM:
+          return new CollectionItem(type, props);
+        case PlainValue.Type.COMMENT:
+        case PlainValue.Type.PLAIN:
+          return new PlainValue.PlainValue(type, props);
+        case PlainValue.Type.QUOTE_DOUBLE:
+          return new QuoteDouble(type, props);
+        case PlainValue.Type.QUOTE_SINGLE:
+          return new QuoteSingle(type, props);
+        /* istanbul ignore next */
+        default:
+          return null;
+      }
+    }
+    var ParseContext = class _ParseContext {
+      static parseType(src, offset, inFlow) {
+        switch (src[offset]) {
+          case "*":
+            return PlainValue.Type.ALIAS;
+          case ">":
+            return PlainValue.Type.BLOCK_FOLDED;
+          case "|":
+            return PlainValue.Type.BLOCK_LITERAL;
+          case "{":
+            return PlainValue.Type.FLOW_MAP;
+          case "[":
+            return PlainValue.Type.FLOW_SEQ;
+          case "?":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_KEY : PlainValue.Type.PLAIN;
+          case ":":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_VALUE : PlainValue.Type.PLAIN;
+          case "-":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.SEQ_ITEM : PlainValue.Type.PLAIN;
+          case '"':
+            return PlainValue.Type.QUOTE_DOUBLE;
+          case "'":
+            return PlainValue.Type.QUOTE_SINGLE;
+          default:
+            return PlainValue.Type.PLAIN;
+        }
+      }
+      constructor(orig = {}, {
+        atLineStart,
+        inCollection,
+        inFlow,
+        indent,
+        lineStart,
+        parent
+      } = {}) {
+        PlainValue._defineProperty(this, "parseNode", (overlay, start) => {
+          if (PlainValue.Node.atDocumentBoundary(this.src, start)) return null;
+          const context = new _ParseContext(this, overlay);
+          const {
+            props,
+            type,
+            valueStart
+          } = context.parseProps(start);
+          const node = createNewNode(type, props);
+          let offset = start;
+          try {
+            offset = node.parse(context, valueStart);
+          } catch (error) {
+            const msg = error instanceof Error ? error.message : String(error);
+            if (!node.error) node.error = new PlainValue.YAMLSyntaxError(node, msg);
+          }
+          node.range = new PlainValue.Range(start, offset);
+          if (offset <= start) {
+            if (!node.error) node.error = new Error(`Node#parse consumed no characters`);
+            node.error.parseEnd = offset;
+            node.error.source = node;
+            node.range.end = start + 1;
+          }
+          if (context.nodeStartsCollection(node)) {
+            if (!node.error && !context.atLineStart && context.parent.type === PlainValue.Type.DOCUMENT) {
+              node.error = new PlainValue.YAMLSyntaxError(node, "Block collection must not have preceding content here (e.g. directives-end indicator)");
+            }
+            const collection = new Collection2(node);
+            offset = collection.parse(new _ParseContext(context), offset);
+            collection.range = new PlainValue.Range(start, offset);
+            return collection;
+          }
+          return node;
+        });
+        this.atLineStart = atLineStart != null ? atLineStart : orig.atLineStart || false;
+        this.inCollection = inCollection != null ? inCollection : orig.inCollection || false;
+        this.inFlow = inFlow != null ? inFlow : orig.inFlow || false;
+        this.indent = indent != null ? indent : orig.indent;
+        this.lineStart = lineStart != null ? lineStart : orig.lineStart;
+        this.parent = parent != null ? parent : orig.parent || {};
+        this.root = orig.root;
+        this.src = orig.src;
+      }
+      nodeStartsCollection(node) {
+        const {
+          inCollection,
+          inFlow,
+          src
+        } = this;
+        if (inCollection || inFlow) return false;
+        if (node instanceof CollectionItem) return true;
+        let offset = node.range.end;
+        if (src[offset] === "\n" || src[offset - 1] === "\n") return false;
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        return src[offset] === ":";
+      }
+      // Anchor and tag are before type, which determines the node implementation
+      // class; hence this intermediate step.
+      parseProps(offset) {
+        const {
+          inFlow,
+          parent,
+          src
+        } = this;
+        const props = [];
+        let lineHasProps = false;
+        offset = this.atLineStart ? PlainValue.Node.endOfIndent(src, offset) : PlainValue.Node.endOfWhiteSpace(src, offset);
+        let ch = src[offset];
+        while (ch === PlainValue.Char.ANCHOR || ch === PlainValue.Char.COMMENT || ch === PlainValue.Char.TAG || ch === "\n") {
+          if (ch === "\n") {
+            let inEnd = offset;
+            let lineStart;
+            do {
+              lineStart = inEnd + 1;
+              inEnd = PlainValue.Node.endOfIndent(src, lineStart);
+            } while (src[inEnd] === "\n");
+            const indentDiff = inEnd - (lineStart + this.indent);
+            const noIndicatorAsIndent = parent.type === PlainValue.Type.SEQ_ITEM && parent.context.atLineStart;
+            if (src[inEnd] !== "#" && !PlainValue.Node.nextNodeIsIndented(src[inEnd], indentDiff, !noIndicatorAsIndent)) break;
+            this.atLineStart = true;
+            this.lineStart = lineStart;
+            lineHasProps = false;
+            offset = inEnd;
+          } else if (ch === PlainValue.Char.COMMENT) {
+            const end = PlainValue.Node.endOfLine(src, offset + 1);
+            props.push(new PlainValue.Range(offset, end));
+            offset = end;
+          } else {
+            let end = PlainValue.Node.endOfIdentifier(src, offset + 1);
+            if (ch === PlainValue.Char.TAG && src[end] === "," && /^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(src.slice(offset + 1, end + 13))) {
+              end = PlainValue.Node.endOfIdentifier(src, end + 5);
+            }
+            props.push(new PlainValue.Range(offset, end));
+            lineHasProps = true;
+            offset = PlainValue.Node.endOfWhiteSpace(src, end);
+          }
+          ch = src[offset];
+        }
+        if (lineHasProps && ch === ":" && PlainValue.Node.atBlank(src, offset + 1, true)) offset -= 1;
+        const type = _ParseContext.parseType(src, offset, inFlow);
+        return {
+          props,
+          type,
+          valueStart: offset
+        };
+      }
+    };
+    function parse3(src) {
+      const cr = [];
+      if (src.indexOf("\r") !== -1) {
+        src = src.replace(/\r\n?/g, (match, offset2) => {
+          if (match.length > 1) cr.push(offset2);
+          return "\n";
+        });
+      }
+      const documents = [];
+      let offset = 0;
+      do {
+        const doc = new Document();
+        const context = new ParseContext({
+          src
+        });
+        offset = doc.parse(context, offset);
+        documents.push(doc);
+      } while (offset < src.length);
+      documents.setOrigRanges = () => {
+        if (cr.length === 0) return false;
+        for (let i = 1; i < cr.length; ++i) cr[i] -= i;
+        let crOffset = 0;
+        for (let i = 0; i < documents.length; ++i) {
+          crOffset = documents[i].setOrigRanges(cr, crOffset);
+        }
+        cr.splice(0, cr.length);
+        return true;
+      };
+      documents.toString = () => documents.join("...\n");
+      return documents;
+    }
+    exports2.parse = parse3;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js
+var require_resolveSeq_95613e94 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    function addCommentBefore(str, indent, comment) {
+      if (!comment) return str;
+      const cc = comment.replace(/[\s\S]^/gm, `$&${indent}#`);
+      return `#${cc}
+${indent}${str}`;
+    }
+    function addComment(str, indent, comment) {
+      return !comment ? str : comment.indexOf("\n") === -1 ? `${str} #${comment}` : `${str}
+` + comment.replace(/^/gm, `${indent || ""}#`);
+    }
+    var Node11 = class {
+    };
+    function toJSON(value, arg, ctx) {
+      if (Array.isArray(value)) return value.map((v, i) => toJSON(v, String(i), ctx));
+      if (value && typeof value.toJSON === "function") {
+        const anchor = ctx && ctx.anchors && ctx.anchors.get(value);
+        if (anchor) ctx.onCreate = (res2) => {
+          anchor.res = res2;
+          delete ctx.onCreate;
+        };
+        const res = value.toJSON(arg, ctx);
+        if (anchor && ctx.onCreate) ctx.onCreate(res);
+        return res;
+      }
+      if ((!ctx || !ctx.keep) && typeof value === "bigint") return Number(value);
+      return value;
+    }
+    var Scalar2 = class extends Node11 {
+      constructor(value) {
+        super();
+        this.value = value;
+      }
+      toJSON(arg, ctx) {
+        return ctx && ctx.keep ? this.value : toJSON(this.value, arg, ctx);
+      }
+      toString() {
+        return String(this.value);
+      }
+    };
+    function collectionFromPath(schema, path23, value) {
+      let v = value;
+      for (let i = path23.length - 1; i >= 0; --i) {
+        const k = path23[i];
+        if (Number.isInteger(k) && k >= 0) {
+          const a = [];
+          a[k] = v;
+          v = a;
+        } else {
+          const o = {};
+          Object.defineProperty(o, k, {
+            value: v,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          v = o;
+        }
+      }
+      return schema.createNode(v, false);
+    }
+    var isEmptyPath = (path23) => path23 == null || typeof path23 === "object" && path23[Symbol.iterator]().next().done;
+    var Collection2 = class _Collection extends Node11 {
+      constructor(schema) {
+        super();
+        PlainValue._defineProperty(this, "items", []);
+        this.schema = schema;
+      }
+      addIn(path23, value) {
+        if (isEmptyPath(path23)) this.add(value);
+        else {
+          const [key, ...rest] = path23;
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.addIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      deleteIn([key, ...rest]) {
+        if (rest.length === 0) return this.delete(key);
+        const node = this.get(key, true);
+        if (node instanceof _Collection) return node.deleteIn(rest);
+        else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+      }
+      getIn([key, ...rest], keepScalar) {
+        const node = this.get(key, true);
+        if (rest.length === 0) return !keepScalar && node instanceof Scalar2 ? node.value : node;
+        else return node instanceof _Collection ? node.getIn(rest, keepScalar) : void 0;
+      }
+      hasAllNullValues() {
+        return this.items.every((node) => {
+          if (!node || node.type !== "PAIR") return false;
+          const n = node.value;
+          return n == null || n instanceof Scalar2 && n.value == null && !n.commentBefore && !n.comment && !n.tag;
+        });
+      }
+      hasIn([key, ...rest]) {
+        if (rest.length === 0) return this.has(key);
+        const node = this.get(key, true);
+        return node instanceof _Collection ? node.hasIn(rest) : false;
+      }
+      setIn([key, ...rest], value) {
+        if (rest.length === 0) {
+          this.set(key, value);
+        } else {
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.setIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      // overridden in implementations
+      /* istanbul ignore next */
+      toJSON() {
+        return null;
+      }
+      toString(ctx, {
+        blockItem,
+        flowChars,
+        isMap,
+        itemIndent
+      }, onComment, onChompKeep) {
+        const {
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        const inFlow = this.type === PlainValue.Type.FLOW_MAP || this.type === PlainValue.Type.FLOW_SEQ || ctx.inFlow;
+        if (inFlow) itemIndent += indentStep;
+        const allNullValues = isMap && this.hasAllNullValues();
+        ctx = Object.assign({}, ctx, {
+          allNullValues,
+          indent: itemIndent,
+          inFlow,
+          type: null
+        });
+        let chompKeep = false;
+        let hasItemWithNewLine = false;
+        const nodes = this.items.reduce((nodes2, item, i) => {
+          let comment;
+          if (item) {
+            if (!chompKeep && item.spaceBefore) nodes2.push({
+              type: "comment",
+              str: ""
+            });
+            if (item.commentBefore) item.commentBefore.match(/^.*$/gm).forEach((line) => {
+              nodes2.push({
+                type: "comment",
+                str: `#${line}`
+              });
+            });
+            if (item.comment) comment = item.comment;
+            if (inFlow && (!chompKeep && item.spaceBefore || item.commentBefore || item.comment || item.key && (item.key.commentBefore || item.key.comment) || item.value && (item.value.commentBefore || item.value.comment))) hasItemWithNewLine = true;
+          }
+          chompKeep = false;
+          let str2 = stringify3(item, ctx, () => comment = null, () => chompKeep = true);
+          if (inFlow && !hasItemWithNewLine && str2.includes("\n")) hasItemWithNewLine = true;
+          if (inFlow && i < this.items.length - 1) str2 += ",";
+          str2 = addComment(str2, itemIndent, comment);
+          if (chompKeep && (comment || inFlow)) chompKeep = false;
+          nodes2.push({
+            type: "item",
+            str: str2
+          });
+          return nodes2;
+        }, []);
+        let str;
+        if (nodes.length === 0) {
+          str = flowChars.start + flowChars.end;
+        } else if (inFlow) {
+          const {
+            start,
+            end
+          } = flowChars;
+          const strings = nodes.map((n) => n.str);
+          if (hasItemWithNewLine || strings.reduce((sum, str2) => sum + str2.length + 2, 2) > _Collection.maxFlowStringSingleLineLength) {
+            str = start;
+            for (const s of strings) {
+              str += s ? `
+${indentStep}${indent}${s}` : "\n";
+            }
+            str += `
+${indent}${end}`;
+          } else {
+            str = `${start} ${strings.join(" ")} ${end}`;
+          }
+        } else {
+          const strings = nodes.map(blockItem);
+          str = strings.shift();
+          for (const s of strings) str += s ? `
+${indent}${s}` : "\n";
+        }
+        if (this.comment) {
+          str += "\n" + this.comment.replace(/^/gm, `${indent}#`);
+          if (onComment) onComment();
+        } else if (chompKeep && onChompKeep) onChompKeep();
+        return str;
+      }
+    };
+    PlainValue._defineProperty(Collection2, "maxFlowStringSingleLineLength", 60);
+    function asItemIndex(key) {
+      let idx = key instanceof Scalar2 ? key.value : key;
+      if (idx && typeof idx === "string") idx = Number(idx);
+      return Number.isInteger(idx) && idx >= 0 ? idx : null;
+    }
+    var YAMLSeq2 = class extends Collection2 {
+      add(value) {
+        this.items.push(value);
+      }
+      delete(key) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return false;
+        const del = this.items.splice(idx, 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return void 0;
+        const it = this.items[idx];
+        return !keepScalar && it instanceof Scalar2 ? it.value : it;
+      }
+      has(key) {
+        const idx = asItemIndex(key);
+        return typeof idx === "number" && idx < this.items.length;
+      }
+      set(key, value) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") throw new Error(`Expected a valid index, not ${key}.`);
+        this.items[idx] = value;
+      }
+      toJSON(_, ctx) {
+        const seq = [];
+        if (ctx && ctx.onCreate) ctx.onCreate(seq);
+        let i = 0;
+        for (const item of this.items) seq.push(toJSON(item, String(i++), ctx));
+        return seq;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        return super.toString(ctx, {
+          blockItem: (n) => n.type === "comment" ? n.str : `- ${n.str}`,
+          flowChars: {
+            start: "[",
+            end: "]"
+          },
+          isMap: false,
+          itemIndent: (ctx.indent || "") + "  "
+        }, onComment, onChompKeep);
+      }
+    };
+    var stringifyKey = (key, jsKey, ctx) => {
+      if (jsKey === null) return "";
+      if (typeof jsKey !== "object") return String(jsKey);
+      if (key instanceof Node11 && ctx && ctx.doc) return key.toString({
+        anchors: /* @__PURE__ */ Object.create(null),
+        doc: ctx.doc,
+        indent: "",
+        indentStep: ctx.indentStep,
+        inFlow: true,
+        inStringifyKey: true,
+        stringify: ctx.stringify
+      });
+      return JSON.stringify(jsKey);
+    };
+    var Pair2 = class _Pair extends Node11 {
+      constructor(key, value = null) {
+        super();
+        this.key = key;
+        this.value = value;
+        this.type = _Pair.Type.PAIR;
+      }
+      get commentBefore() {
+        return this.key instanceof Node11 ? this.key.commentBefore : void 0;
+      }
+      set commentBefore(cb) {
+        if (this.key == null) this.key = new Scalar2(null);
+        if (this.key instanceof Node11) this.key.commentBefore = cb;
+        else {
+          const msg = "Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";
+          throw new Error(msg);
+        }
+      }
+      addToJSMap(ctx, map) {
+        const key = toJSON(this.key, "", ctx);
+        if (map instanceof Map) {
+          const value = toJSON(this.value, key, ctx);
+          map.set(key, value);
+        } else if (map instanceof Set) {
+          map.add(key);
+        } else {
+          const stringKey = stringifyKey(this.key, key, ctx);
+          const value = toJSON(this.value, stringKey, ctx);
+          if (stringKey in map) Object.defineProperty(map, stringKey, {
+            value,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          else map[stringKey] = value;
+        }
+        return map;
+      }
+      toJSON(_, ctx) {
+        const pair = ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        return this.addToJSMap(ctx, pair);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx || !ctx.doc) return JSON.stringify(this);
+        const {
+          indent: indentSize,
+          indentSeq,
+          simpleKeys
+        } = ctx.doc.options;
+        let {
+          key,
+          value
+        } = this;
+        let keyComment = key instanceof Node11 && key.comment;
+        if (simpleKeys) {
+          if (keyComment) {
+            throw new Error("With simple keys, key nodes cannot have comments");
+          }
+          if (key instanceof Collection2) {
+            const msg = "With simple keys, collection cannot be used as a key value";
+            throw new Error(msg);
+          }
+        }
+        let explicitKey = !simpleKeys && (!key || keyComment || (key instanceof Node11 ? key instanceof Collection2 || key.type === PlainValue.Type.BLOCK_FOLDED || key.type === PlainValue.Type.BLOCK_LITERAL : typeof key === "object"));
+        const {
+          doc,
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        ctx = Object.assign({}, ctx, {
+          implicitKey: !explicitKey,
+          indent: indent + indentStep
+        });
+        let chompKeep = false;
+        let str = stringify3(key, ctx, () => keyComment = null, () => chompKeep = true);
+        str = addComment(str, ctx.indent, keyComment);
+        if (!explicitKey && str.length > 1024) {
+          if (simpleKeys) throw new Error("With simple keys, single line scalar must not span more than 1024 characters");
+          explicitKey = true;
+        }
+        if (ctx.allNullValues && !simpleKeys) {
+          if (this.comment) {
+            str = addComment(str, ctx.indent, this.comment);
+            if (onComment) onComment();
+          } else if (chompKeep && !keyComment && onChompKeep) onChompKeep();
+          return ctx.inFlow && !explicitKey ? str : `? ${str}`;
+        }
+        str = explicitKey ? `? ${str}
+${indent}:` : `${str}:`;
+        if (this.comment) {
+          str = addComment(str, ctx.indent, this.comment);
+          if (onComment) onComment();
+        }
+        let vcb = "";
+        let valueComment = null;
+        if (value instanceof Node11) {
+          if (value.spaceBefore) vcb = "\n";
+          if (value.commentBefore) {
+            const cs = value.commentBefore.replace(/^/gm, `${ctx.indent}#`);
+            vcb += `
+${cs}`;
+          }
+          valueComment = value.comment;
+        } else if (value && typeof value === "object") {
+          value = doc.schema.createNode(value, true);
+        }
+        ctx.implicitKey = false;
+        if (!explicitKey && !this.comment && value instanceof Scalar2) ctx.indentAtStart = str.length + 1;
+        chompKeep = false;
+        if (!indentSeq && indentSize >= 2 && !ctx.inFlow && !explicitKey && value instanceof YAMLSeq2 && value.type !== PlainValue.Type.FLOW_SEQ && !value.tag && !doc.anchors.getName(value)) {
+          ctx.indent = ctx.indent.substr(2);
+        }
+        const valueStr = stringify3(value, ctx, () => valueComment = null, () => chompKeep = true);
+        let ws = " ";
+        if (vcb || this.comment) {
+          ws = `${vcb}
+${ctx.indent}`;
+        } else if (!explicitKey && value instanceof Collection2) {
+          const flow = valueStr[0] === "[" || valueStr[0] === "{";
+          if (!flow || valueStr.includes("\n")) ws = `
+${ctx.indent}`;
+        } else if (valueStr[0] === "\n") ws = "";
+        if (chompKeep && !valueComment && onChompKeep) onChompKeep();
+        return addComment(str + ws + valueStr, ctx.indent, valueComment);
+      }
+    };
+    PlainValue._defineProperty(Pair2, "Type", {
+      PAIR: "PAIR",
+      MERGE_PAIR: "MERGE_PAIR"
+    });
+    var getAliasCount = (node, anchors) => {
+      if (node instanceof Alias2) {
+        const anchor = anchors.get(node.source);
+        return anchor.count * anchor.aliasCount;
+      } else if (node instanceof Collection2) {
+        let count2 = 0;
+        for (const item of node.items) {
+          const c = getAliasCount(item, anchors);
+          if (c > count2) count2 = c;
+        }
+        return count2;
+      } else if (node instanceof Pair2) {
+        const kc = getAliasCount(node.key, anchors);
+        const vc = getAliasCount(node.value, anchors);
+        return Math.max(kc, vc);
+      }
+      return 1;
+    };
+    var Alias2 = class _Alias extends Node11 {
+      static stringify({
+        range: range4,
+        source
+      }, {
+        anchors,
+        doc,
+        implicitKey,
+        inStringifyKey
+      }) {
+        let anchor = Object.keys(anchors).find((a) => anchors[a] === source);
+        if (!anchor && inStringifyKey) anchor = doc.anchors.getName(source) || doc.anchors.newName();
+        if (anchor) return `*${anchor}${implicitKey ? " " : ""}`;
+        const msg = doc.anchors.getName(source) ? "Alias node must be after source node" : "Source node not found for alias node";
+        throw new Error(`${msg} [${range4}]`);
+      }
+      constructor(source) {
+        super();
+        this.source = source;
+        this.type = PlainValue.Type.ALIAS;
+      }
+      set tag(t) {
+        throw new Error("Alias nodes cannot have tags");
+      }
+      toJSON(arg, ctx) {
+        if (!ctx) return toJSON(this.source, arg, ctx);
+        const {
+          anchors,
+          maxAliasCount
+        } = ctx;
+        const anchor = anchors.get(this.source);
+        if (!anchor || anchor.res === void 0) {
+          const msg = "This should not happen: Alias anchor was not resolved?";
+          if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+          else throw new ReferenceError(msg);
+        }
+        if (maxAliasCount >= 0) {
+          anchor.count += 1;
+          if (anchor.aliasCount === 0) anchor.aliasCount = getAliasCount(this.source, anchors);
+          if (anchor.count * anchor.aliasCount > maxAliasCount) {
+            const msg = "Excessive alias count indicates a resource exhaustion attack";
+            if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+            else throw new ReferenceError(msg);
+          }
+        }
+        return anchor.res;
+      }
+      // Only called when stringifying an alias mapping key while constructing
+      // Object output.
+      toString(ctx) {
+        return _Alias.stringify(this, ctx);
+      }
+    };
+    PlainValue._defineProperty(Alias2, "default", true);
+    function findPair(items, key) {
+      const k = key instanceof Scalar2 ? key.value : key;
+      for (const it of items) {
+        if (it instanceof Pair2) {
+          if (it.key === key || it.key === k) return it;
+          if (it.key && it.key.value === k) return it;
+        }
+      }
+      return void 0;
+    }
+    var YAMLMap2 = class extends Collection2 {
+      add(pair, overwrite) {
+        if (!pair) pair = new Pair2(pair);
+        else if (!(pair instanceof Pair2)) pair = new Pair2(pair.key || pair, pair.value);
+        const prev = findPair(this.items, pair.key);
+        const sortEntries = this.schema && this.schema.sortMapEntries;
+        if (prev) {
+          if (overwrite) prev.value = pair.value;
+          else throw new Error(`Key ${pair.key} already set`);
+        } else if (sortEntries) {
+          const i = this.items.findIndex((item) => sortEntries(pair, item) < 0);
+          if (i === -1) this.items.push(pair);
+          else this.items.splice(i, 0, pair);
+        } else {
+          this.items.push(pair);
+        }
+      }
+      delete(key) {
+        const it = findPair(this.items, key);
+        if (!it) return false;
+        const del = this.items.splice(this.items.indexOf(it), 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const it = findPair(this.items, key);
+        const node = it && it.value;
+        return !keepScalar && node instanceof Scalar2 ? node.value : node;
+      }
+      has(key) {
+        return !!findPair(this.items, key);
+      }
+      set(key, value) {
+        this.add(new Pair2(key, value), true);
+      }
+      /**
+       * @param {*} arg ignored
+       * @param {*} ctx Conversion context, originally set in Document#toJSON()
+       * @param {Class} Type If set, forces the returned collection type
+       * @returns {*} Instance of Type, Map, or Object
+       */
+      toJSON(_, ctx, Type) {
+        const map = Type ? new Type() : ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const item of this.items) item.addToJSMap(ctx, map);
+        return map;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        for (const item of this.items) {
+          if (!(item instanceof Pair2)) throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`);
+        }
+        return super.toString(ctx, {
+          blockItem: (n) => n.str,
+          flowChars: {
+            start: "{",
+            end: "}"
+          },
+          isMap: true,
+          itemIndent: ctx.indent || ""
+        }, onComment, onChompKeep);
+      }
+    };
+    var MERGE_KEY = "<<";
+    var Merge2 = class extends Pair2 {
+      constructor(pair) {
+        if (pair instanceof Pair2) {
+          let seq = pair.value;
+          if (!(seq instanceof YAMLSeq2)) {
+            seq = new YAMLSeq2();
+            seq.items.push(pair.value);
+            seq.range = pair.value.range;
+          }
+          super(pair.key, seq);
+          this.range = pair.range;
+        } else {
+          super(new Scalar2(MERGE_KEY), new YAMLSeq2());
+        }
+        this.type = Pair2.Type.MERGE_PAIR;
+      }
+      // If the value associated with a merge key is a single mapping node, each of
+      // its key/value pairs is inserted into the current mapping, unless the key
+      // already exists in it. If the value associated with the merge key is a
+      // sequence, then this sequence is expected to contain mapping nodes and each
+      // of these nodes is merged in turn according to its order in the sequence.
+      // Keys in mapping nodes earlier in the sequence override keys specified in
+      // later mapping nodes. -- http://yaml.org/type/merge.html
+      addToJSMap(ctx, map) {
+        for (const {
+          source
+        } of this.value.items) {
+          if (!(source instanceof YAMLMap2)) throw new Error("Merge sources must be maps");
+          const srcMap = source.toJSON(null, ctx, Map);
+          for (const [key, value] of srcMap) {
+            if (map instanceof Map) {
+              if (!map.has(key)) map.set(key, value);
+            } else if (map instanceof Set) {
+              map.add(key);
+            } else if (!Object.prototype.hasOwnProperty.call(map, key)) {
+              Object.defineProperty(map, key, {
+                value,
+                writable: true,
+                enumerable: true,
+                configurable: true
+              });
+            }
+          }
+        }
+        return map;
+      }
+      toString(ctx, onComment) {
+        const seq = this.value;
+        if (seq.items.length > 1) return super.toString(ctx, onComment);
+        this.value = seq.items[0];
+        const str = super.toString(ctx, onComment);
+        this.value = seq;
+        return str;
+      }
+    };
+    var binaryOptions2 = {
+      defaultType: PlainValue.Type.BLOCK_LITERAL,
+      lineWidth: 76
+    };
+    var boolOptions2 = {
+      trueStr: "true",
+      falseStr: "false"
+    };
+    var intOptions2 = {
+      asBigInt: false
+    };
+    var nullOptions2 = {
+      nullStr: "null"
+    };
+    var strOptions2 = {
+      defaultType: PlainValue.Type.PLAIN,
+      doubleQuoted: {
+        jsonEncoding: false,
+        minMultiLineLength: 40
+      },
+      fold: {
+        lineWidth: 80,
+        minContentWidth: 20
+      }
+    };
+    function resolveScalar(str, tags, scalarFallback) {
+      for (const {
+        format,
+        test,
+        resolve: resolve6
+      } of tags) {
+        if (test) {
+          const match = str.match(test);
+          if (match) {
+            let res = resolve6.apply(null, match);
+            if (!(res instanceof Scalar2)) res = new Scalar2(res);
+            if (format) res.format = format;
+            return res;
+          }
+        }
+      }
+      if (scalarFallback) str = scalarFallback(str);
+      return new Scalar2(str);
+    }
+    var FOLD_FLOW = "flow";
+    var FOLD_BLOCK = "block";
+    var FOLD_QUOTED = "quoted";
+    var consumeMoreIndentedLines = (text, i) => {
+      let ch = text[i + 1];
+      while (ch === " " || ch === "	") {
+        do {
+          ch = text[i += 1];
+        } while (ch && ch !== "\n");
+        ch = text[i + 1];
+      }
+      return i;
+    };
+    function foldFlowLines(text, indent, mode, {
+      indentAtStart,
+      lineWidth = 80,
+      minContentWidth = 20,
+      onFold,
+      onOverflow
+    }) {
+      if (!lineWidth || lineWidth < 0) return text;
+      const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length);
+      if (text.length <= endStep) return text;
+      const folds = [];
+      const escapedFolds = {};
+      let end = lineWidth - indent.length;
+      if (typeof indentAtStart === "number") {
+        if (indentAtStart > lineWidth - Math.max(2, minContentWidth)) folds.push(0);
+        else end = lineWidth - indentAtStart;
+      }
+      let split = void 0;
+      let prev = void 0;
+      let overflow = false;
+      let i = -1;
+      let escStart = -1;
+      let escEnd = -1;
+      if (mode === FOLD_BLOCK) {
+        i = consumeMoreIndentedLines(text, i);
+        if (i !== -1) end = i + endStep;
+      }
+      for (let ch; ch = text[i += 1]; ) {
+        if (mode === FOLD_QUOTED && ch === "\\") {
+          escStart = i;
+          switch (text[i + 1]) {
+            case "x":
+              i += 3;
+              break;
+            case "u":
+              i += 5;
+              break;
+            case "U":
+              i += 9;
+              break;
+            default:
+              i += 1;
+          }
+          escEnd = i;
+        }
+        if (ch === "\n") {
+          if (mode === FOLD_BLOCK) i = consumeMoreIndentedLines(text, i);
+          end = i + endStep;
+          split = void 0;
+        } else {
+          if (ch === " " && prev && prev !== " " && prev !== "\n" && prev !== "	") {
+            const next = text[i + 1];
+            if (next && next !== " " && next !== "\n" && next !== "	") split = i;
+          }
+          if (i >= end) {
+            if (split) {
+              folds.push(split);
+              end = split + endStep;
+              split = void 0;
+            } else if (mode === FOLD_QUOTED) {
+              while (prev === " " || prev === "	") {
+                prev = ch;
+                ch = text[i += 1];
+                overflow = true;
+              }
+              const j = i > escEnd + 1 ? i - 2 : escStart - 1;
+              if (escapedFolds[j]) return text;
+              folds.push(j);
+              escapedFolds[j] = true;
+              end = j + endStep;
+              split = void 0;
+            } else {
+              overflow = true;
+            }
+          }
+        }
+        prev = ch;
+      }
+      if (overflow && onOverflow) onOverflow();
+      if (folds.length === 0) return text;
+      if (onFold) onFold();
+      let res = text.slice(0, folds[0]);
+      for (let i2 = 0; i2 < folds.length; ++i2) {
+        const fold = folds[i2];
+        const end2 = folds[i2 + 1] || text.length;
+        if (fold === 0) res = `
+${indent}${text.slice(0, end2)}`;
+        else {
+          if (mode === FOLD_QUOTED && escapedFolds[fold]) res += `${text[fold]}\\`;
+          res += `
+${indent}${text.slice(fold + 1, end2)}`;
+        }
+      }
+      return res;
+    }
+    var getFoldOptions = ({
+      indentAtStart
+    }) => indentAtStart ? Object.assign({
+      indentAtStart
+    }, strOptions2.fold) : strOptions2.fold;
+    var containsDocumentMarker = (str) => /^(%|---|\.\.\.)/m.test(str);
+    function lineLengthOverLimit(str, lineWidth, indentLength) {
+      if (!lineWidth || lineWidth < 0) return false;
+      const limit = lineWidth - indentLength;
+      const strLen = str.length;
+      if (strLen <= limit) return false;
+      for (let i = 0, start = 0; i < strLen; ++i) {
+        if (str[i] === "\n") {
+          if (i - start > limit) return true;
+          start = i + 1;
+          if (strLen - start <= limit) return false;
+        }
+      }
+      return true;
+    }
+    function doubleQuotedString(value, ctx) {
+      const {
+        implicitKey
+      } = ctx;
+      const {
+        jsonEncoding,
+        minMultiLineLength
+      } = strOptions2.doubleQuoted;
+      const json = JSON.stringify(value);
+      if (jsonEncoding) return json;
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      let str = "";
+      let start = 0;
+      for (let i = 0, ch = json[i]; ch; ch = json[++i]) {
+        if (ch === " " && json[i + 1] === "\\" && json[i + 2] === "n") {
+          str += json.slice(start, i) + "\\ ";
+          i += 1;
+          start = i;
+          ch = "\\";
+        }
+        if (ch === "\\") switch (json[i + 1]) {
+          case "u":
+            {
+              str += json.slice(start, i);
+              const code = json.substr(i + 2, 4);
+              switch (code) {
+                case "0000":
+                  str += "\\0";
+                  break;
+                case "0007":
+                  str += "\\a";
+                  break;
+                case "000b":
+                  str += "\\v";
+                  break;
+                case "001b":
+                  str += "\\e";
+                  break;
+                case "0085":
+                  str += "\\N";
+                  break;
+                case "00a0":
+                  str += "\\_";
+                  break;
+                case "2028":
+                  str += "\\L";
+                  break;
+                case "2029":
+                  str += "\\P";
+                  break;
+                default:
+                  if (code.substr(0, 2) === "00") str += "\\x" + code.substr(2);
+                  else str += json.substr(i, 6);
+              }
+              i += 5;
+              start = i + 1;
+            }
+            break;
+          case "n":
+            if (implicitKey || json[i + 2] === '"' || json.length < minMultiLineLength) {
+              i += 1;
+            } else {
+              str += json.slice(start, i) + "\n\n";
+              while (json[i + 2] === "\\" && json[i + 3] === "n" && json[i + 4] !== '"') {
+                str += "\n";
+                i += 2;
+              }
+              str += indent;
+              if (json[i + 2] === " ") str += "\\";
+              i += 1;
+              start = i + 1;
+            }
+            break;
+          default:
+            i += 1;
+        }
+      }
+      str = start ? str + json.slice(start) : json;
+      return implicitKey ? str : foldFlowLines(str, indent, FOLD_QUOTED, getFoldOptions(ctx));
+    }
+    function singleQuotedString(value, ctx) {
+      if (ctx.implicitKey) {
+        if (/\n/.test(value)) return doubleQuotedString(value, ctx);
+      } else {
+        if (/[ \t]\n|\n[ \t]/.test(value)) return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$&
+${indent}`) + "'";
+      return ctx.implicitKey ? res : foldFlowLines(res, indent, FOLD_FLOW, getFoldOptions(ctx));
+    }
+    function blockString({
+      comment,
+      type,
+      value
+    }, ctx, onComment, onChompKeep) {
+      if (/\n[\t ]+$/.test(value) || /^\s*$/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (ctx.forceBlockIndent || containsDocumentMarker(value) ? "  " : "");
+      const indentSize = indent ? "2" : "1";
+      const literal = type === PlainValue.Type.BLOCK_FOLDED ? false : type === PlainValue.Type.BLOCK_LITERAL ? true : !lineLengthOverLimit(value, strOptions2.fold.lineWidth, indent.length);
+      let header = literal ? "|" : ">";
+      if (!value) return header + "\n";
+      let wsStart = "";
+      let wsEnd = "";
+      value = value.replace(/[\n\t ]*$/, (ws) => {
+        const n = ws.indexOf("\n");
+        if (n === -1) {
+          header += "-";
+        } else if (value === ws || n !== ws.length - 1) {
+          header += "+";
+          if (onChompKeep) onChompKeep();
+        }
+        wsEnd = ws.replace(/\n$/, "");
+        return "";
+      }).replace(/^[\n ]*/, (ws) => {
+        if (ws.indexOf(" ") !== -1) header += indentSize;
+        const m = ws.match(/ +$/);
+        if (m) {
+          wsStart = ws.slice(0, -m[0].length);
+          return m[0];
+        } else {
+          wsStart = ws;
+          return "";
+        }
+      });
+      if (wsEnd) wsEnd = wsEnd.replace(/\n+(?!\n|$)/g, `$&${indent}`);
+      if (wsStart) wsStart = wsStart.replace(/\n+/g, `$&${indent}`);
+      if (comment) {
+        header += " #" + comment.replace(/ ?[\r\n]+/g, " ");
+        if (onComment) onComment();
+      }
+      if (!value) return `${header}${indentSize}
+${indent}${wsEnd}`;
+      if (literal) {
+        value = value.replace(/\n+/g, `$&${indent}`);
+        return `${header}
+${indent}${wsStart}${value}${wsEnd}`;
+      }
+      value = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`);
+      const body = foldFlowLines(`${wsStart}${value}${wsEnd}`, indent, FOLD_BLOCK, strOptions2.fold);
+      return `${header}
+${indent}${body}`;
+    }
+    function plainString(item, ctx, onComment, onChompKeep) {
+      const {
+        comment,
+        type,
+        value
+      } = item;
+      const {
+        actualString,
+        implicitKey,
+        indent,
+        inFlow
+      } = ctx;
+      if (implicitKey && /[\n[\]{},]/.test(value) || inFlow && /[[\]{},]/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      if (!value || /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
+        return implicitKey || inFlow || value.indexOf("\n") === -1 ? value.indexOf('"') !== -1 && value.indexOf("'") === -1 ? singleQuotedString(value, ctx) : doubleQuotedString(value, ctx) : blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (!implicitKey && !inFlow && type !== PlainValue.Type.PLAIN && value.indexOf("\n") !== -1) {
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (indent === "" && containsDocumentMarker(value)) {
+        ctx.forceBlockIndent = true;
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      const str = value.replace(/\n+/g, `$&
+${indent}`);
+      if (actualString) {
+        const {
+          tags
+        } = ctx.doc.schema;
+        const resolved = resolveScalar(str, tags, tags.scalarFallback).value;
+        if (typeof resolved !== "string") return doubleQuotedString(value, ctx);
+      }
+      const body = implicitKey ? str : foldFlowLines(str, indent, FOLD_FLOW, getFoldOptions(ctx));
+      if (comment && !inFlow && (body.indexOf("\n") !== -1 || comment.indexOf("\n") !== -1)) {
+        if (onComment) onComment();
+        return addCommentBefore(body, indent, comment);
+      }
+      return body;
+    }
+    function stringifyString(item, ctx, onComment, onChompKeep) {
+      const {
+        defaultType
+      } = strOptions2;
+      const {
+        implicitKey,
+        inFlow
+      } = ctx;
+      let {
+        type,
+        value
+      } = item;
+      if (typeof value !== "string") {
+        value = String(value);
+        item = Object.assign({}, item, {
+          value
+        });
+      }
+      const _stringify = (_type) => {
+        switch (_type) {
+          case PlainValue.Type.BLOCK_FOLDED:
+          case PlainValue.Type.BLOCK_LITERAL:
+            return blockString(item, ctx, onComment, onChompKeep);
+          case PlainValue.Type.QUOTE_DOUBLE:
+            return doubleQuotedString(value, ctx);
+          case PlainValue.Type.QUOTE_SINGLE:
+            return singleQuotedString(value, ctx);
+          case PlainValue.Type.PLAIN:
+            return plainString(item, ctx, onComment, onChompKeep);
+          default:
+            return null;
+        }
+      };
+      if (type !== PlainValue.Type.QUOTE_DOUBLE && /[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(value)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      } else if ((implicitKey || inFlow) && (type === PlainValue.Type.BLOCK_FOLDED || type === PlainValue.Type.BLOCK_LITERAL)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      }
+      let res = _stringify(type);
+      if (res === null) {
+        res = _stringify(defaultType);
+        if (res === null) throw new Error(`Unsupported default string type ${defaultType}`);
+      }
+      return res;
+    }
+    function stringifyNumber({
+      format,
+      minFractionDigits,
+      tag,
+      value
+    }) {
+      if (typeof value === "bigint") return String(value);
+      if (!isFinite(value)) return isNaN(value) ? ".nan" : value < 0 ? "-.inf" : ".inf";
+      let n = JSON.stringify(value);
+      if (!format && minFractionDigits && (!tag || tag === "tag:yaml.org,2002:float") && /^\d/.test(n)) {
+        let i = n.indexOf(".");
+        if (i < 0) {
+          i = n.length;
+          n += ".";
+        }
+        let d = minFractionDigits - (n.length - i - 1);
+        while (d-- > 0) n += "0";
+      }
+      return n;
+    }
+    function checkFlowCollectionEnd(errors, cst) {
+      let char, name;
+      switch (cst.type) {
+        case PlainValue.Type.FLOW_MAP:
+          char = "}";
+          name = "flow map";
+          break;
+        case PlainValue.Type.FLOW_SEQ:
+          char = "]";
+          name = "flow sequence";
+          break;
+        default:
+          errors.push(new PlainValue.YAMLSemanticError(cst, "Not a flow collection!?"));
+          return;
+      }
+      let lastItem;
+      for (let i = cst.items.length - 1; i >= 0; --i) {
+        const item = cst.items[i];
+        if (!item || item.type !== PlainValue.Type.COMMENT) {
+          lastItem = item;
+          break;
+        }
+      }
+      if (lastItem && lastItem.char !== char) {
+        const msg = `Expected ${name} to end with ${char}`;
+        let err;
+        if (typeof lastItem.offset === "number") {
+          err = new PlainValue.YAMLSemanticError(cst, msg);
+          err.offset = lastItem.offset + 1;
+        } else {
+          err = new PlainValue.YAMLSemanticError(lastItem, msg);
+          if (lastItem.range && lastItem.range.end) err.offset = lastItem.range.end - lastItem.range.start;
+        }
+        errors.push(err);
+      }
+    }
+    function checkFlowCommentSpace(errors, comment) {
+      const prev = comment.context.src[comment.range.start - 1];
+      if (prev !== "\n" && prev !== "	" && prev !== " ") {
+        const msg = "Comments must be separated from other tokens by white space characters";
+        errors.push(new PlainValue.YAMLSemanticError(comment, msg));
+      }
+    }
+    function getLongKeyError(source, key) {
+      const sk = String(key);
+      const k = sk.substr(0, 8) + "..." + sk.substr(-8);
+      return new PlainValue.YAMLSemanticError(source, `The "${k}" key is too long`);
+    }
+    function resolveComments(collection, comments) {
+      for (const {
+        afterKey,
+        before,
+        comment
+      } of comments) {
+        let item = collection.items[before];
+        if (!item) {
+          if (comment !== void 0) {
+            if (collection.comment) collection.comment += "\n" + comment;
+            else collection.comment = comment;
+          }
+        } else {
+          if (afterKey && item.value) item = item.value;
+          if (comment === void 0) {
+            if (afterKey || !item.commentBefore) item.spaceBefore = true;
+          } else {
+            if (item.commentBefore) item.commentBefore += "\n" + comment;
+            else item.commentBefore = comment;
+          }
+        }
+      }
+    }
+    function resolveString(doc, node) {
+      const res = node.strValue;
+      if (!res) return "";
+      if (typeof res === "string") return res;
+      res.errors.forEach((error) => {
+        if (!error.source) error.source = node;
+        doc.errors.push(error);
+      });
+      return res.str;
+    }
+    function resolveTagHandle(doc, node) {
+      const {
+        handle,
+        suffix
+      } = node.tag;
+      let prefix = doc.tagPrefixes.find((p) => p.handle === handle);
+      if (!prefix) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        if (dtp) prefix = dtp.find((p) => p.handle === handle);
+        if (!prefix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag handle is non-default and was not declared.`);
+      }
+      if (!suffix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag has no suffix.`);
+      if (handle === "!" && (doc.version || doc.options.version) === "1.0") {
+        if (suffix[0] === "^") {
+          doc.warnings.push(new PlainValue.YAMLWarning(node, "YAML 1.0 ^ tag expansion is not supported"));
+          return suffix;
+        }
+        if (/[:/]/.test(suffix)) {
+          const vocab = suffix.match(/^([a-z0-9-]+)\/(.*)/i);
+          return vocab ? `tag:${vocab[1]}.yaml.org,2002:${vocab[2]}` : `tag:${suffix}`;
+        }
+      }
+      return prefix.prefix + decodeURIComponent(suffix);
+    }
+    function resolveTagName(doc, node) {
+      const {
+        tag,
+        type
+      } = node;
+      let nonSpecific = false;
+      if (tag) {
+        const {
+          handle,
+          suffix,
+          verbatim
+        } = tag;
+        if (verbatim) {
+          if (verbatim !== "!" && verbatim !== "!!") return verbatim;
+          const msg = `Verbatim tags aren't resolved, so ${verbatim} is invalid.`;
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        } else if (handle === "!" && !suffix) {
+          nonSpecific = true;
+        } else {
+          try {
+            return resolveTagHandle(doc, node);
+          } catch (error) {
+            doc.errors.push(error);
+          }
+        }
+      }
+      switch (type) {
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+        case PlainValue.Type.QUOTE_DOUBLE:
+        case PlainValue.Type.QUOTE_SINGLE:
+          return PlainValue.defaultTags.STR;
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        case PlainValue.Type.PLAIN:
+          return nonSpecific ? PlainValue.defaultTags.STR : null;
+        default:
+          return null;
+      }
+    }
+    function resolveByTagName(doc, node, tagName) {
+      const {
+        tags
+      } = doc.schema;
+      const matchWithTest = [];
+      for (const tag of tags) {
+        if (tag.tag === tagName) {
+          if (tag.test) matchWithTest.push(tag);
+          else {
+            const res = tag.resolve(doc, node);
+            return res instanceof Collection2 ? res : new Scalar2(res);
+          }
+        }
+      }
+      const str = resolveString(doc, node);
+      if (typeof str === "string" && matchWithTest.length > 0) return resolveScalar(str, matchWithTest, tags.scalarFallback);
+      return null;
+    }
+    function getFallbackTagName({
+      type
+    }) {
+      switch (type) {
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        default:
+          return PlainValue.defaultTags.STR;
+      }
+    }
+    function resolveTag(doc, node, tagName) {
+      try {
+        const res = resolveByTagName(doc, node, tagName);
+        if (res) {
+          if (tagName && node.tag) res.tag = tagName;
+          return res;
+        }
+      } catch (error) {
+        if (error instanceof PlainValue.YAMLError) {
+          if (!error.source) error.source = node;
+          doc.errors.push(error);
+        } else {
+          const msg = error instanceof Error ? error.message : String(error);
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        }
+        return null;
+      }
+      try {
+        const fallback = getFallbackTagName(node);
+        if (!fallback) throw new Error(`The tag ${tagName} is unavailable`);
+        const msg = `The tag ${tagName} is unavailable, falling back to ${fallback}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(node, msg));
+        const res = resolveByTagName(doc, node, fallback);
+        res.tag = tagName;
+        return res;
+      } catch (error) {
+        const refError = new PlainValue.YAMLReferenceError(node, error.message);
+        refError.stack = error.stack;
+        doc.errors.push(refError);
+        return null;
+      }
+    }
+    var isCollectionItem = (node) => {
+      if (!node) return false;
+      const {
+        type
+      } = node;
+      return type === PlainValue.Type.MAP_KEY || type === PlainValue.Type.MAP_VALUE || type === PlainValue.Type.SEQ_ITEM;
+    };
+    function resolveNodeProps(errors, node) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let hasAnchor = false;
+      let hasTag = false;
+      const props = isCollectionItem(node.context.parent) ? node.context.parent.props.concat(node.props) : node.props;
+      for (const {
+        start,
+        end
+      } of props) {
+        switch (node.context.src[start]) {
+          case PlainValue.Char.COMMENT: {
+            if (!node.commentHasRequiredWhitespace(start)) {
+              const msg = "Comments must be separated from other tokens by white space characters";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            const {
+              header,
+              valueRange
+            } = node;
+            const cc = valueRange && (start > valueRange.start || header && start > header.start) ? comments.after : comments.before;
+            cc.push(node.context.src.slice(start + 1, end));
+            break;
+          }
+          // Actual anchor & tag resolution is handled by schema, here we just complain
+          case PlainValue.Char.ANCHOR:
+            if (hasAnchor) {
+              const msg = "A node can have at most one anchor";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasAnchor = true;
+            break;
+          case PlainValue.Char.TAG:
+            if (hasTag) {
+              const msg = "A node can have at most one tag";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasTag = true;
+            break;
+        }
+      }
+      return {
+        comments,
+        hasAnchor,
+        hasTag
+      };
+    }
+    function resolveNodeValue(doc, node) {
+      const {
+        anchors,
+        errors,
+        schema
+      } = doc;
+      if (node.type === PlainValue.Type.ALIAS) {
+        const name = node.rawValue;
+        const src = anchors.getNode(name);
+        if (!src) {
+          const msg = `Aliased anchor not found: ${name}`;
+          errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+        const res = new Alias2(src);
+        anchors._cstAliases.push(res);
+        return res;
+      }
+      const tagName = resolveTagName(doc, node);
+      if (tagName) return resolveTag(doc, node, tagName);
+      if (node.type !== PlainValue.Type.PLAIN) {
+        const msg = `Failed to resolve ${node.type} node here`;
+        errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+        return null;
+      }
+      try {
+        const str = resolveString(doc, node);
+        return resolveScalar(str, schema.tags, schema.tags.scalarFallback);
+      } catch (error) {
+        if (!error.source) error.source = node;
+        errors.push(error);
+        return null;
+      }
+    }
+    function resolveNode(doc, node) {
+      if (!node) return null;
+      if (node.error) doc.errors.push(node.error);
+      const {
+        comments,
+        hasAnchor,
+        hasTag
+      } = resolveNodeProps(doc.errors, node);
+      if (hasAnchor) {
+        const {
+          anchors
+        } = doc;
+        const name = node.anchor;
+        const prev = anchors.getNode(name);
+        if (prev) anchors.map[anchors.newName(name)] = prev;
+        anchors.map[name] = node;
+      }
+      if (node.type === PlainValue.Type.ALIAS && (hasAnchor || hasTag)) {
+        const msg = "An alias node must not specify any properties";
+        doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+      }
+      const res = resolveNodeValue(doc, node);
+      if (res) {
+        res.range = [node.range.start, node.range.end];
+        if (doc.options.keepCstNodes) res.cstNode = node;
+        if (doc.options.keepNodeTypes) res.type = node.type;
+        const cb = comments.before.join("\n");
+        if (cb) {
+          res.commentBefore = res.commentBefore ? `${res.commentBefore}
+${cb}` : cb;
+        }
+        const ca = comments.after.join("\n");
+        if (ca) res.comment = res.comment ? `${res.comment}
+${ca}` : ca;
+      }
+      return node.resolved = res;
+    }
+    function resolveMap(doc, cst) {
+      if (cst.type !== PlainValue.Type.MAP && cst.type !== PlainValue.Type.FLOW_MAP) {
+        const msg = `A ${cst.type} node cannot be resolved as a mapping`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_MAP ? resolveFlowMapItems(doc, cst) : resolveBlockMapItems(doc, cst);
+      const map = new YAMLMap2();
+      map.items = items;
+      resolveComments(map, comments);
+      let hasCollectionKey = false;
+      for (let i = 0; i < items.length; ++i) {
+        const {
+          key: iKey
+        } = items[i];
+        if (iKey instanceof Collection2) hasCollectionKey = true;
+        if (doc.schema.merge && iKey && iKey.value === MERGE_KEY) {
+          items[i] = new Merge2(items[i]);
+          const sources = items[i].value.items;
+          let error = null;
+          sources.some((node) => {
+            if (node instanceof Alias2) {
+              const {
+                type
+              } = node.source;
+              if (type === PlainValue.Type.MAP || type === PlainValue.Type.FLOW_MAP) return false;
+              return error = "Merge nodes aliases can only point to maps";
+            }
+            return error = "Merge nodes can only have Alias nodes as values";
+          });
+          if (error) doc.errors.push(new PlainValue.YAMLSemanticError(cst, error));
+        } else {
+          for (let j = i + 1; j < items.length; ++j) {
+            const {
+              key: jKey
+            } = items[j];
+            if (iKey === jKey || iKey && jKey && Object.prototype.hasOwnProperty.call(iKey, "value") && iKey.value === jKey.value) {
+              const msg = `Map keys must be unique; "${iKey}" is repeated`;
+              doc.errors.push(new PlainValue.YAMLSemanticError(cst, msg));
+              break;
+            }
+          }
+        }
+      }
+      if (hasCollectionKey && !doc.options.mapAsMap) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = map;
+      return map;
+    }
+    var valueHasPairComment = ({
+      context: {
+        lineStart,
+        node,
+        src
+      },
+      props
+    }) => {
+      if (props.length === 0) return false;
+      const {
+        start
+      } = props[0];
+      if (node && start > node.valueRange.start) return false;
+      if (src[start] !== PlainValue.Char.COMMENT) return false;
+      for (let i = lineStart; i < start; ++i) if (src[i] === "\n") return false;
+      return true;
+    };
+    function resolvePairComment(item, pair) {
+      if (!valueHasPairComment(item)) return;
+      const comment = item.getPropValue(0, PlainValue.Char.COMMENT, true);
+      let found = false;
+      const cb = pair.value.commentBefore;
+      if (cb && cb.startsWith(comment)) {
+        pair.value.commentBefore = cb.substr(comment.length + 1);
+        found = true;
+      } else {
+        const cc = pair.value.comment;
+        if (!item.node && cc && cc.startsWith(comment)) {
+          pair.value.comment = cc.substr(comment.length + 1);
+          found = true;
+        }
+      }
+      if (found) pair.comment = comment;
+    }
+    function resolveBlockMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let keyStart = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              afterKey: !!key,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              afterKey: !!key,
+              before: items.length,
+              comment: item.comment
+            });
+            break;
+          case PlainValue.Type.MAP_KEY:
+            if (key !== void 0) items.push(new Pair2(key));
+            if (item.error) doc.errors.push(item.error);
+            key = resolveNode(doc, item.node);
+            keyStart = null;
+            break;
+          case PlainValue.Type.MAP_VALUE:
+            {
+              if (key === void 0) key = null;
+              if (item.error) doc.errors.push(item.error);
+              if (!item.context.atLineStart && item.node && item.node.type === PlainValue.Type.MAP && !item.node.context.atLineStart) {
+                const msg = "Nested mappings are not allowed in compact mappings";
+                doc.errors.push(new PlainValue.YAMLSemanticError(item.node, msg));
+              }
+              let valueNode = item.node;
+              if (!valueNode && item.props.length > 0) {
+                valueNode = new PlainValue.PlainValue(PlainValue.Type.PLAIN, []);
+                valueNode.context = {
+                  parent: item,
+                  src: item.context.src
+                };
+                const pos = item.range.start + 1;
+                valueNode.range = {
+                  start: pos,
+                  end: pos
+                };
+                valueNode.valueRange = {
+                  start: pos,
+                  end: pos
+                };
+                if (typeof item.range.origStart === "number") {
+                  const origPos = item.range.origStart + 1;
+                  valueNode.range.origStart = valueNode.range.origEnd = origPos;
+                  valueNode.valueRange.origStart = valueNode.valueRange.origEnd = origPos;
+                }
+              }
+              const pair = new Pair2(key, resolveNode(doc, valueNode));
+              resolvePairComment(item, pair);
+              items.push(pair);
+              if (key && typeof keyStart === "number") {
+                if (item.range.start > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+              }
+              key = void 0;
+              keyStart = null;
+            }
+            break;
+          default:
+            if (key !== void 0) items.push(new Pair2(key));
+            key = resolveNode(doc, item);
+            keyStart = item.range.start;
+            if (item.error) doc.errors.push(item.error);
+            next: for (let j = i + 1; ; ++j) {
+              const nextItem = cst.items[j];
+              switch (nextItem && nextItem.type) {
+                case PlainValue.Type.BLANK_LINE:
+                case PlainValue.Type.COMMENT:
+                  continue next;
+                case PlainValue.Type.MAP_VALUE:
+                  break next;
+                default: {
+                  const msg = "Implicit map keys need to be followed by map values";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+                  break next;
+                }
+              }
+            }
+            if (item.valueRangeContainsNewline) {
+              const msg = "Implicit map keys need to be on a single line";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+        }
+      }
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let explicitKey = false;
+      let next = "{";
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char === "?" && key === void 0 && !explicitKey) {
+            explicitKey = true;
+            next = ":";
+            continue;
+          }
+          if (char === ":") {
+            if (key === void 0) key = null;
+            if (next === ":") {
+              next = ",";
+              continue;
+            }
+          } else {
+            if (explicitKey) {
+              if (key === void 0 && char !== ",") key = null;
+              explicitKey = false;
+            }
+            if (key !== void 0) {
+              items.push(new Pair2(key));
+              key = void 0;
+              if (char === ",") {
+                next = ":";
+                continue;
+              }
+            }
+          }
+          if (char === "}") {
+            if (i === cst.items.length - 1) continue;
+          } else if (char === next) {
+            next = ":";
+            continue;
+          }
+          const msg = `Flow map contains an unexpected ${char}`;
+          const err = new PlainValue.YAMLSyntaxError(cst, msg);
+          err.offset = offset;
+          doc.errors.push(err);
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            afterKey: !!key,
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            afterKey: !!key,
+            before: items.length,
+            comment: item.comment
+          });
+        } else if (key === void 0) {
+          if (next === ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Separator , missing in flow map"));
+          key = resolveNode(doc, item);
+        } else {
+          if (next !== ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Indicator : missing in flow map entry"));
+          items.push(new Pair2(key, resolveNode(doc, item)));
+          key = void 0;
+          explicitKey = false;
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveSeq(doc, cst) {
+      if (cst.type !== PlainValue.Type.SEQ && cst.type !== PlainValue.Type.FLOW_SEQ) {
+        const msg = `A ${cst.type} node cannot be resolved as a sequence`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_SEQ ? resolveFlowSeqItems(doc, cst) : resolveBlockSeqItems(doc, cst);
+      const seq = new YAMLSeq2();
+      seq.items = items;
+      resolveComments(seq, comments);
+      if (!doc.options.mapAsMap && items.some((it) => it instanceof Pair2 && it.key instanceof Collection2)) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = seq;
+      return seq;
+    }
+    function resolveBlockSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              comment: item.comment,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.SEQ_ITEM:
+            if (item.error) doc.errors.push(item.error);
+            items.push(resolveNode(doc, item.node));
+            if (item.hasProps) {
+              const msg = "Sequence items cannot have tags or anchors before the - indicator";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+            break;
+          default:
+            if (item.error) doc.errors.push(item.error);
+            doc.errors.push(new PlainValue.YAMLSyntaxError(item, `Unexpected ${item.type} node in sequence`));
+        }
+      }
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let explicitKey = false;
+      let key = void 0;
+      let keyStart = null;
+      let next = "[";
+      let prevItem = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char !== ":" && (explicitKey || key !== void 0)) {
+            if (explicitKey && key === void 0) key = next ? items.pop() : null;
+            items.push(new Pair2(key));
+            explicitKey = false;
+            key = void 0;
+            keyStart = null;
+          }
+          if (char === next) {
+            next = null;
+          } else if (!next && char === "?") {
+            explicitKey = true;
+          } else if (next !== "[" && char === ":" && key === void 0) {
+            if (next === ",") {
+              key = items.pop();
+              if (key instanceof Pair2) {
+                const msg = "Chaining flow sequence pairs is invalid";
+                const err = new PlainValue.YAMLSemanticError(cst, msg);
+                err.offset = offset;
+                doc.errors.push(err);
+              }
+              if (!explicitKey && typeof keyStart === "number") {
+                const keyEnd = item.range ? item.range.start : item.offset;
+                if (keyEnd > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+                const {
+                  src
+                } = prevItem.context;
+                for (let i2 = keyStart; i2 < keyEnd; ++i2) if (src[i2] === "\n") {
+                  const msg = "Implicit keys of flow sequence pairs need to be on a single line";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(prevItem, msg));
+                  break;
+                }
+              }
+            } else {
+              key = null;
+            }
+            keyStart = null;
+            explicitKey = false;
+            next = null;
+          } else if (next === "[" || char !== "]" || i < cst.items.length - 1) {
+            const msg = `Flow sequence contains an unexpected ${char}`;
+            const err = new PlainValue.YAMLSyntaxError(cst, msg);
+            err.offset = offset;
+            doc.errors.push(err);
+          }
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            comment: item.comment,
+            before: items.length
+          });
+        } else {
+          if (next) {
+            const msg = `Expected a ${next} in flow sequence`;
+            doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+          }
+          const value = resolveNode(doc, item);
+          if (key === void 0) {
+            items.push(value);
+            prevItem = item;
+          } else {
+            items.push(new Pair2(key, value));
+            key = void 0;
+          }
+          keyStart = item.range.start;
+          next = ",";
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    exports2.Alias = Alias2;
+    exports2.Collection = Collection2;
+    exports2.Merge = Merge2;
+    exports2.Node = Node11;
+    exports2.Pair = Pair2;
+    exports2.Scalar = Scalar2;
+    exports2.YAMLMap = YAMLMap2;
+    exports2.YAMLSeq = YAMLSeq2;
+    exports2.addComment = addComment;
+    exports2.binaryOptions = binaryOptions2;
+    exports2.boolOptions = boolOptions2;
+    exports2.findPair = findPair;
+    exports2.intOptions = intOptions2;
+    exports2.isEmptyPath = isEmptyPath;
+    exports2.nullOptions = nullOptions2;
+    exports2.resolveMap = resolveMap;
+    exports2.resolveNode = resolveNode;
+    exports2.resolveSeq = resolveSeq;
+    exports2.resolveString = resolveString;
+    exports2.strOptions = strOptions2;
+    exports2.stringifyNumber = stringifyNumber;
+    exports2.stringifyString = stringifyString;
+    exports2.toJSON = toJSON;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js
+var require_warnings_793925ce = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var binary = {
+      identify: (value) => value instanceof Uint8Array,
+      // Buffer inherits from Uint8Array
+      default: false,
+      tag: "tag:yaml.org,2002:binary",
+      /**
+       * Returns a Buffer in node and an Uint8Array in browsers
+       *
+       * To use the resulting buffer as an image, you'll want to do something like:
+       *
+       *   const blob = new Blob([buffer], { type: 'image/jpeg' })
+       *   document.querySelector('#photo').src = URL.createObjectURL(blob)
+       */
+      resolve: (doc, node) => {
+        const src = resolveSeq.resolveString(doc, node);
+        if (typeof Buffer === "function") {
+          return Buffer.from(src, "base64");
+        } else if (typeof atob === "function") {
+          const str = atob(src.replace(/[\n\r]/g, ""));
+          const buffer = new Uint8Array(str.length);
+          for (let i = 0; i < str.length; ++i) buffer[i] = str.charCodeAt(i);
+          return buffer;
+        } else {
+          const msg = "This environment does not support reading binary tags; either Buffer or atob is required";
+          doc.errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+      },
+      options: resolveSeq.binaryOptions,
+      stringify: ({
+        comment,
+        type,
+        value
+      }, ctx, onComment, onChompKeep) => {
+        let src;
+        if (typeof Buffer === "function") {
+          src = value instanceof Buffer ? value.toString("base64") : Buffer.from(value.buffer).toString("base64");
+        } else if (typeof btoa === "function") {
+          let s = "";
+          for (let i = 0; i < value.length; ++i) s += String.fromCharCode(value[i]);
+          src = btoa(s);
+        } else {
+          throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");
+        }
+        if (!type) type = resolveSeq.binaryOptions.defaultType;
+        if (type === PlainValue.Type.QUOTE_DOUBLE) {
+          value = src;
+        } else {
+          const {
+            lineWidth
+          } = resolveSeq.binaryOptions;
+          const n = Math.ceil(src.length / lineWidth);
+          const lines = new Array(n);
+          for (let i = 0, o = 0; i < n; ++i, o += lineWidth) {
+            lines[i] = src.substr(o, lineWidth);
+          }
+          value = lines.join(type === PlainValue.Type.BLOCK_LITERAL ? "\n" : " ");
+        }
+        return resolveSeq.stringifyString({
+          comment,
+          type,
+          value
+        }, ctx, onComment, onChompKeep);
+      }
+    };
+    function parsePairs(doc, cst) {
+      const seq = resolveSeq.resolveSeq(doc, cst);
+      for (let i = 0; i < seq.items.length; ++i) {
+        let item = seq.items[i];
+        if (item instanceof resolveSeq.Pair) continue;
+        else if (item instanceof resolveSeq.YAMLMap) {
+          if (item.items.length > 1) {
+            const msg = "Each pair must have its own sequence indicator";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          }
+          const pair = item.items[0] || new resolveSeq.Pair();
+          if (item.commentBefore) pair.commentBefore = pair.commentBefore ? `${item.commentBefore}
+${pair.commentBefore}` : item.commentBefore;
+          if (item.comment) pair.comment = pair.comment ? `${item.comment}
+${pair.comment}` : item.comment;
+          item = pair;
+        }
+        seq.items[i] = item instanceof resolveSeq.Pair ? item : new resolveSeq.Pair(item);
+      }
+      return seq;
+    }
+    function createPairs(schema, iterable, ctx) {
+      const pairs2 = new resolveSeq.YAMLSeq(schema);
+      pairs2.tag = "tag:yaml.org,2002:pairs";
+      for (const it of iterable) {
+        let key, value;
+        if (Array.isArray(it)) {
+          if (it.length === 2) {
+            key = it[0];
+            value = it[1];
+          } else throw new TypeError(`Expected [key, value] tuple: ${it}`);
+        } else if (it && it instanceof Object) {
+          const keys = Object.keys(it);
+          if (keys.length === 1) {
+            key = keys[0];
+            value = it[key];
+          } else throw new TypeError(`Expected { key: value } tuple: ${it}`);
+        } else {
+          key = it;
+        }
+        const pair = schema.createPair(key, value, ctx);
+        pairs2.items.push(pair);
+      }
+      return pairs2;
+    }
+    var pairs = {
+      default: false,
+      tag: "tag:yaml.org,2002:pairs",
+      resolve: parsePairs,
+      createNode: createPairs
+    };
+    var YAMLOMap = class _YAMLOMap extends resolveSeq.YAMLSeq {
+      constructor() {
+        super();
+        PlainValue._defineProperty(this, "add", resolveSeq.YAMLMap.prototype.add.bind(this));
+        PlainValue._defineProperty(this, "delete", resolveSeq.YAMLMap.prototype.delete.bind(this));
+        PlainValue._defineProperty(this, "get", resolveSeq.YAMLMap.prototype.get.bind(this));
+        PlainValue._defineProperty(this, "has", resolveSeq.YAMLMap.prototype.has.bind(this));
+        PlainValue._defineProperty(this, "set", resolveSeq.YAMLMap.prototype.set.bind(this));
+        this.tag = _YAMLOMap.tag;
+      }
+      toJSON(_, ctx) {
+        const map = /* @__PURE__ */ new Map();
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const pair of this.items) {
+          let key, value;
+          if (pair instanceof resolveSeq.Pair) {
+            key = resolveSeq.toJSON(pair.key, "", ctx);
+            value = resolveSeq.toJSON(pair.value, key, ctx);
+          } else {
+            key = resolveSeq.toJSON(pair, "", ctx);
+          }
+          if (map.has(key)) throw new Error("Ordered maps must not include duplicate keys");
+          map.set(key, value);
+        }
+        return map;
+      }
+    };
+    PlainValue._defineProperty(YAMLOMap, "tag", "tag:yaml.org,2002:omap");
+    function parseOMap(doc, cst) {
+      const pairs2 = parsePairs(doc, cst);
+      const seenKeys = [];
+      for (const {
+        key
+      } of pairs2.items) {
+        if (key instanceof resolveSeq.Scalar) {
+          if (seenKeys.includes(key.value)) {
+            const msg = "Ordered maps must not include duplicate keys";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          } else {
+            seenKeys.push(key.value);
+          }
+        }
+      }
+      return Object.assign(new YAMLOMap(), pairs2);
+    }
+    function createOMap(schema, iterable, ctx) {
+      const pairs2 = createPairs(schema, iterable, ctx);
+      const omap2 = new YAMLOMap();
+      omap2.items = pairs2.items;
+      return omap2;
+    }
+    var omap = {
+      identify: (value) => value instanceof Map,
+      nodeClass: YAMLOMap,
+      default: false,
+      tag: "tag:yaml.org,2002:omap",
+      resolve: parseOMap,
+      createNode: createOMap
+    };
+    var YAMLSet = class _YAMLSet extends resolveSeq.YAMLMap {
+      constructor() {
+        super();
+        this.tag = _YAMLSet.tag;
+      }
+      add(key) {
+        const pair = key instanceof resolveSeq.Pair ? key : new resolveSeq.Pair(key);
+        const prev = resolveSeq.findPair(this.items, pair.key);
+        if (!prev) this.items.push(pair);
+      }
+      get(key, keepPair) {
+        const pair = resolveSeq.findPair(this.items, key);
+        return !keepPair && pair instanceof resolveSeq.Pair ? pair.key instanceof resolveSeq.Scalar ? pair.key.value : pair.key : pair;
+      }
+      set(key, value) {
+        if (typeof value !== "boolean") throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`);
+        const prev = resolveSeq.findPair(this.items, key);
+        if (prev && !value) {
+          this.items.splice(this.items.indexOf(prev), 1);
+        } else if (!prev && value) {
+          this.items.push(new resolveSeq.Pair(key));
+        }
+      }
+      toJSON(_, ctx) {
+        return super.toJSON(_, ctx, Set);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        if (this.hasAllNullValues()) return super.toString(ctx, onComment, onChompKeep);
+        else throw new Error("Set items must all have null values");
+      }
+    };
+    PlainValue._defineProperty(YAMLSet, "tag", "tag:yaml.org,2002:set");
+    function parseSet(doc, cst) {
+      const map = resolveSeq.resolveMap(doc, cst);
+      if (!map.hasAllNullValues()) throw new PlainValue.YAMLSemanticError(cst, "Set items must all have null values");
+      return Object.assign(new YAMLSet(), map);
+    }
+    function createSet(schema, iterable, ctx) {
+      const set2 = new YAMLSet();
+      for (const value of iterable) set2.items.push(schema.createPair(value, null, ctx));
+      return set2;
+    }
+    var set = {
+      identify: (value) => value instanceof Set,
+      nodeClass: YAMLSet,
+      default: false,
+      tag: "tag:yaml.org,2002:set",
+      resolve: parseSet,
+      createNode: createSet
+    };
+    var parseSexagesimal = (sign, parts) => {
+      const n = parts.split(":").reduce((n2, p) => n2 * 60 + Number(p), 0);
+      return sign === "-" ? -n : n;
+    };
+    var stringifySexagesimal = ({
+      value
+    }) => {
+      if (isNaN(value) || !isFinite(value)) return resolveSeq.stringifyNumber(value);
+      let sign = "";
+      if (value < 0) {
+        sign = "-";
+        value = Math.abs(value);
+      }
+      const parts = [value % 60];
+      if (value < 60) {
+        parts.unshift(0);
+      } else {
+        value = Math.round((value - parts[0]) / 60);
+        parts.unshift(value % 60);
+        if (value >= 60) {
+          value = Math.round((value - parts[0]) / 60);
+          parts.unshift(value);
+        }
+      }
+      return sign + parts.map((n) => n < 10 ? "0" + String(n) : String(n)).join(":").replace(/000000\d*$/, "");
+    };
+    var intTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var floatTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var timestamp = {
+      identify: (value) => value instanceof Date,
+      default: true,
+      tag: "tag:yaml.org,2002:timestamp",
+      // If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part
+      // may be omitted altogether, resulting in a date format. In such a case, the time part is
+      // assumed to be 00:00:00Z (start of day, UTC).
+      test: RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),
+      resolve: (str, year, month, day, hour, minute, second, millisec, tz) => {
+        if (millisec) millisec = (millisec + "00").substr(1, 3);
+        let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec || 0);
+        if (tz && tz !== "Z") {
+          let d = parseSexagesimal(tz[0], tz.slice(1));
+          if (Math.abs(d) < 30) d *= 60;
+          date -= 6e4 * d;
+        }
+        return new Date(date);
+      },
+      stringify: ({
+        value
+      }) => value.toISOString().replace(/((T00:00)?:00)?\.000Z$/, "")
+    };
+    function shouldWarn(deprecation) {
+      const env2 = typeof process !== "undefined" && process.env || {};
+      if (deprecation) {
+        if (typeof YAML_SILENCE_DEPRECATION_WARNINGS !== "undefined") return !YAML_SILENCE_DEPRECATION_WARNINGS;
+        return !env2.YAML_SILENCE_DEPRECATION_WARNINGS;
+      }
+      if (typeof YAML_SILENCE_WARNINGS !== "undefined") return !YAML_SILENCE_WARNINGS;
+      return !env2.YAML_SILENCE_WARNINGS;
+    }
+    function warn(warning, type) {
+      if (shouldWarn(false)) {
+        const emit = typeof process !== "undefined" && process.emitWarning;
+        if (emit) emit(warning, type);
+        else {
+          console.warn(type ? `${type}: ${warning}` : warning);
+        }
+      }
+    }
+    function warnFileDeprecation(filename) {
+      if (shouldWarn(true)) {
+        const path23 = filename.replace(/.*yaml[/\\]/i, "").replace(/\.js$/, "").replace(/\\/g, "/");
+        warn(`The endpoint 'yaml/${path23}' will be removed in a future release.`, "DeprecationWarning");
+      }
+    }
+    var warned = {};
+    function warnOptionDeprecation(name, alternative) {
+      if (!warned[name] && shouldWarn(true)) {
+        warned[name] = true;
+        let msg = `The option '${name}' will be removed in a future release`;
+        msg += alternative ? `, use '${alternative}' instead.` : ".";
+        warn(msg, "DeprecationWarning");
+      }
+    }
+    exports2.binary = binary;
+    exports2.floatTime = floatTime;
+    exports2.intTime = intTime;
+    exports2.omap = omap;
+    exports2.pairs = pairs;
+    exports2.set = set;
+    exports2.timestamp = timestamp;
+    exports2.warn = warn;
+    exports2.warnFileDeprecation = warnFileDeprecation;
+    exports2.warnOptionDeprecation = warnOptionDeprecation;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js
+var require_Schema_bcc6c2d7 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var warnings = require_warnings_793925ce();
+    function createMap(schema, obj, ctx) {
+      const map2 = new resolveSeq.YAMLMap(schema);
+      if (obj instanceof Map) {
+        for (const [key, value] of obj) map2.items.push(schema.createPair(key, value, ctx));
+      } else if (obj && typeof obj === "object") {
+        for (const key of Object.keys(obj)) map2.items.push(schema.createPair(key, obj[key], ctx));
+      }
+      if (typeof schema.sortMapEntries === "function") {
+        map2.items.sort(schema.sortMapEntries);
+      }
+      return map2;
+    }
+    var map = {
+      createNode: createMap,
+      default: true,
+      nodeClass: resolveSeq.YAMLMap,
+      tag: "tag:yaml.org,2002:map",
+      resolve: resolveSeq.resolveMap
+    };
+    function createSeq(schema, obj, ctx) {
+      const seq2 = new resolveSeq.YAMLSeq(schema);
+      if (obj && obj[Symbol.iterator]) {
+        for (const it of obj) {
+          const v = schema.createNode(it, ctx.wrapScalars, null, ctx);
+          seq2.items.push(v);
+        }
+      }
+      return seq2;
+    }
+    var seq = {
+      createNode: createSeq,
+      default: true,
+      nodeClass: resolveSeq.YAMLSeq,
+      tag: "tag:yaml.org,2002:seq",
+      resolve: resolveSeq.resolveSeq
+    };
+    var string = {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify(item, ctx, onComment, onChompKeep) {
+        ctx = Object.assign({
+          actualString: true
+        }, ctx);
+        return resolveSeq.stringifyString(item, ctx, onComment, onChompKeep);
+      },
+      options: resolveSeq.strOptions
+    };
+    var failsafe = [map, seq, string];
+    var intIdentify$2 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var intResolve$1 = (src, part, radix) => resolveSeq.intOptions.asBigInt ? BigInt(src) : parseInt(part, radix);
+    function intStringify$1(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify$2(value) && value >= 0) return prefix + value.toString(radix);
+      return resolveSeq.stringifyNumber(node);
+    }
+    var nullObj = {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    };
+    var boolObj = {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,
+      resolve: (str) => str[0] === "t" || str[0] === "T",
+      options: resolveSeq.boolOptions,
+      stringify: ({
+        value
+      }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr
+    };
+    var octObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^0o([0-7]+)$/,
+      resolve: (str, oct) => intResolve$1(str, oct, 8),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 8, "0o")
+    };
+    var intObj = {
+      identify: intIdentify$2,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^[-+]?[0-9]+$/,
+      resolve: (str) => intResolve$1(str, str, 10),
+      options: resolveSeq.intOptions,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var hexObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^0x([0-9a-fA-F]+)$/,
+      resolve: (str, hex2) => intResolve$1(str, hex2, 16),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 16, "0x")
+    };
+    var nanObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var expObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    };
+    var floatObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,
+      resolve(str, frac1, frac2) {
+        const frac = frac1 || frac2;
+        const node = new resolveSeq.Scalar(parseFloat(str));
+        if (frac && frac[frac.length - 1] === "0") node.minFractionDigits = frac.length;
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    };
+    var core = failsafe.concat([nullObj, boolObj, octObj, intObj, hexObj, nanObj, expObj, floatObj]);
+    var intIdentify$1 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var stringifyJSON = ({
+      value
+    }) => JSON.stringify(value);
+    var json = [map, seq, {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^null$/,
+      resolve: () => null,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^true|false$/,
+      resolve: (str) => str === "true",
+      stringify: stringifyJSON
+    }, {
+      identify: intIdentify$1,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^-?(?:0|[1-9][0-9]*)$/,
+      resolve: (str) => resolveSeq.intOptions.asBigInt ? BigInt(str) : parseInt(str, 10),
+      stringify: ({
+        value
+      }) => intIdentify$1(value) ? value.toString() : JSON.stringify(value)
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,
+      resolve: (str) => parseFloat(str),
+      stringify: stringifyJSON
+    }];
+    json.scalarFallback = (str) => {
+      throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(str)}`);
+    };
+    var boolStringify = ({
+      value
+    }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr;
+    var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
+    function intResolve(sign, src, radix) {
+      let str = src.replace(/_/g, "");
+      if (resolveSeq.intOptions.asBigInt) {
+        switch (radix) {
+          case 2:
+            str = `0b${str}`;
+            break;
+          case 8:
+            str = `0o${str}`;
+            break;
+          case 16:
+            str = `0x${str}`;
+            break;
+        }
+        const n2 = BigInt(str);
+        return sign === "-" ? BigInt(-1) * n2 : n2;
+      }
+      const n = parseInt(str, radix);
+      return sign === "-" ? -1 * n : n;
+    }
+    function intStringify(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify(value)) {
+        const str = value.toString(radix);
+        return value < 0 ? "-" + prefix + str.substr(1) : prefix + str;
+      }
+      return resolveSeq.stringifyNumber(node);
+    }
+    var yaml11 = failsafe.concat([{
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,
+      resolve: () => true,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,
+      resolve: () => false,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "BIN",
+      test: /^([-+]?)0b([0-1_]+)$/,
+      resolve: (str, sign, bin) => intResolve(sign, bin, 2),
+      stringify: (node) => intStringify(node, 2, "0b")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^([-+]?)0([0-7_]+)$/,
+      resolve: (str, sign, oct) => intResolve(sign, oct, 8),
+      stringify: (node) => intStringify(node, 8, "0")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^([-+]?)([0-9][0-9_]*)$/,
+      resolve: (str, sign, abs) => intResolve(sign, abs, 10),
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^([-+]?)0x([0-9a-fA-F_]+)$/,
+      resolve: (str, sign, hex2) => intResolve(sign, hex2, 16),
+      stringify: (node) => intStringify(node, 16, "0x")
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str.replace(/_/g, "")),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,
+      resolve(str, frac) {
+        const node = new resolveSeq.Scalar(parseFloat(str.replace(/_/g, "")));
+        if (frac) {
+          const f = frac.replace(/_/g, "");
+          if (f[f.length - 1] === "0") node.minFractionDigits = f.length;
+        }
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    }], warnings.binary, warnings.omap, warnings.pairs, warnings.set, warnings.intTime, warnings.floatTime, warnings.timestamp);
+    var schemas = {
+      core,
+      failsafe,
+      json,
+      yaml11
+    };
+    var tags = {
+      binary: warnings.binary,
+      bool: boolObj,
+      float: floatObj,
+      floatExp: expObj,
+      floatNaN: nanObj,
+      floatTime: warnings.floatTime,
+      int: intObj,
+      intHex: hexObj,
+      intOct: octObj,
+      intTime: warnings.intTime,
+      map,
+      null: nullObj,
+      omap: warnings.omap,
+      pairs: warnings.pairs,
+      seq,
+      set: warnings.set,
+      timestamp: warnings.timestamp
+    };
+    function findTagObject(value, tagName, tags2) {
+      if (tagName) {
+        const match = tags2.filter((t) => t.tag === tagName);
+        const tagObj = match.find((t) => !t.format) || match[0];
+        if (!tagObj) throw new Error(`Tag ${tagName} not found`);
+        return tagObj;
+      }
+      return tags2.find((t) => (t.identify && t.identify(value) || t.class && value instanceof t.class) && !t.format);
+    }
+    function createNode(value, tagName, ctx) {
+      if (value instanceof resolveSeq.Node) return value;
+      const {
+        defaultPrefix,
+        onTagObj,
+        prevObjects,
+        schema,
+        wrapScalars
+      } = ctx;
+      if (tagName && tagName.startsWith("!!")) tagName = defaultPrefix + tagName.slice(2);
+      let tagObj = findTagObject(value, tagName, schema.tags);
+      if (!tagObj) {
+        if (typeof value.toJSON === "function") value = value.toJSON();
+        if (!value || typeof value !== "object") return wrapScalars ? new resolveSeq.Scalar(value) : value;
+        tagObj = value instanceof Map ? map : value[Symbol.iterator] ? seq : map;
+      }
+      if (onTagObj) {
+        onTagObj(tagObj);
+        delete ctx.onTagObj;
+      }
+      const obj = {
+        value: void 0,
+        node: void 0
+      };
+      if (value && typeof value === "object" && prevObjects) {
+        const prev = prevObjects.get(value);
+        if (prev) {
+          const alias = new resolveSeq.Alias(prev);
+          ctx.aliasNodes.push(alias);
+          return alias;
+        }
+        obj.value = value;
+        prevObjects.set(value, obj);
+      }
+      obj.node = tagObj.createNode ? tagObj.createNode(ctx.schema, value, ctx) : wrapScalars ? new resolveSeq.Scalar(value) : value;
+      if (tagName && obj.node instanceof resolveSeq.Node) obj.node.tag = tagName;
+      return obj.node;
+    }
+    function getSchemaTags(schemas2, knownTags, customTags, schemaId) {
+      let tags2 = schemas2[schemaId.replace(/\W/g, "")];
+      if (!tags2) {
+        const keys = Object.keys(schemas2).map((key) => JSON.stringify(key)).join(", ");
+        throw new Error(`Unknown schema "${schemaId}"; use one of ${keys}`);
+      }
+      if (Array.isArray(customTags)) {
+        for (const tag of customTags) tags2 = tags2.concat(tag);
+      } else if (typeof customTags === "function") {
+        tags2 = customTags(tags2.slice());
+      }
+      for (let i = 0; i < tags2.length; ++i) {
+        const tag = tags2[i];
+        if (typeof tag === "string") {
+          const tagObj = knownTags[tag];
+          if (!tagObj) {
+            const keys = Object.keys(knownTags).map((key) => JSON.stringify(key)).join(", ");
+            throw new Error(`Unknown custom tag "${tag}"; use one of ${keys}`);
+          }
+          tags2[i] = tagObj;
+        }
+      }
+      return tags2;
+    }
+    var sortMapEntriesByKey = (a, b) => a.key < b.key ? -1 : a.key > b.key ? 1 : 0;
+    var Schema2 = class _Schema {
+      // TODO: remove in v2
+      constructor({
+        customTags,
+        merge: merge2,
+        schema,
+        sortMapEntries,
+        tags: deprecatedCustomTags
+      }) {
+        this.merge = !!merge2;
+        this.name = schema;
+        this.sortMapEntries = sortMapEntries === true ? sortMapEntriesByKey : sortMapEntries || null;
+        if (!customTags && deprecatedCustomTags) warnings.warnOptionDeprecation("tags", "customTags");
+        this.tags = getSchemaTags(schemas, tags, customTags || deprecatedCustomTags, schema);
+      }
+      createNode(value, wrapScalars, tagName, ctx) {
+        const baseCtx = {
+          defaultPrefix: _Schema.defaultPrefix,
+          schema: this,
+          wrapScalars
+        };
+        const createCtx = ctx ? Object.assign(ctx, baseCtx) : baseCtx;
+        return createNode(value, tagName, createCtx);
+      }
+      createPair(key, value, ctx) {
+        if (!ctx) ctx = {
+          wrapScalars: true
+        };
+        const k = this.createNode(key, ctx.wrapScalars, null, ctx);
+        const v = this.createNode(value, ctx.wrapScalars, null, ctx);
+        return new resolveSeq.Pair(k, v);
+      }
+    };
+    PlainValue._defineProperty(Schema2, "defaultPrefix", PlainValue.defaultTagPrefix);
+    PlainValue._defineProperty(Schema2, "defaultTags", PlainValue.defaultTags);
+    exports2.Schema = Schema2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js
+var require_Document_a8d0fbf9 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var defaultOptions = {
+      anchorPrefix: "a",
+      customTags: null,
+      indent: 2,
+      indentSeq: true,
+      keepCstNodes: false,
+      keepNodeTypes: true,
+      keepBlobsInJSON: true,
+      mapAsMap: false,
+      maxAliasCount: 100,
+      prettyErrors: false,
+      // TODO Set true in v2
+      simpleKeys: false,
+      version: "1.2"
+    };
+    var scalarOptions = {
+      get binary() {
+        return resolveSeq.binaryOptions;
+      },
+      set binary(opt) {
+        Object.assign(resolveSeq.binaryOptions, opt);
+      },
+      get bool() {
+        return resolveSeq.boolOptions;
+      },
+      set bool(opt) {
+        Object.assign(resolveSeq.boolOptions, opt);
+      },
+      get int() {
+        return resolveSeq.intOptions;
+      },
+      set int(opt) {
+        Object.assign(resolveSeq.intOptions, opt);
+      },
+      get null() {
+        return resolveSeq.nullOptions;
+      },
+      set null(opt) {
+        Object.assign(resolveSeq.nullOptions, opt);
+      },
+      get str() {
+        return resolveSeq.strOptions;
+      },
+      set str(opt) {
+        Object.assign(resolveSeq.strOptions, opt);
+      }
+    };
+    var documentOptions = {
+      "1.0": {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: PlainValue.defaultTagPrefix
+        }, {
+          handle: "!!",
+          prefix: "tag:private.yaml.org,2002:"
+        }]
+      },
+      1.1: {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      },
+      1.2: {
+        schema: "core",
+        merge: false,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      }
+    };
+    function stringifyTag(doc, tag) {
+      if ((doc.version || doc.options.version) === "1.0") {
+        const priv = tag.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);
+        if (priv) return "!" + priv[1];
+        const vocab = tag.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);
+        return vocab ? `!${vocab[1]}/${vocab[2]}` : `!${tag.replace(/^tag:/, "")}`;
+      }
+      let p = doc.tagPrefixes.find((p2) => tag.indexOf(p2.prefix) === 0);
+      if (!p) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        p = dtp && dtp.find((p2) => tag.indexOf(p2.prefix) === 0);
+      }
+      if (!p) return tag[0] === "!" ? tag : `!<${tag}>`;
+      const suffix = tag.substr(p.prefix.length).replace(/[!,[\]{}]/g, (ch) => ({
+        "!": "%21",
+        ",": "%2C",
+        "[": "%5B",
+        "]": "%5D",
+        "{": "%7B",
+        "}": "%7D"
+      })[ch]);
+      return p.handle + suffix;
+    }
+    function getTagObject(tags, item) {
+      if (item instanceof resolveSeq.Alias) return resolveSeq.Alias;
+      if (item.tag) {
+        const match = tags.filter((t) => t.tag === item.tag);
+        if (match.length > 0) return match.find((t) => t.format === item.format) || match[0];
+      }
+      let tagObj, obj;
+      if (item instanceof resolveSeq.Scalar) {
+        obj = item.value;
+        const match = tags.filter((t) => t.identify && t.identify(obj) || t.class && obj instanceof t.class);
+        tagObj = match.find((t) => t.format === item.format) || match.find((t) => !t.format);
+      } else {
+        obj = item;
+        tagObj = tags.find((t) => t.nodeClass && obj instanceof t.nodeClass);
+      }
+      if (!tagObj) {
+        const name = obj && obj.constructor ? obj.constructor.name : typeof obj;
+        throw new Error(`Tag not resolved for ${name} value`);
+      }
+      return tagObj;
+    }
+    function stringifyProps(node, tagObj, {
+      anchors,
+      doc
+    }) {
+      const props = [];
+      const anchor = doc.anchors.getName(node);
+      if (anchor) {
+        anchors[anchor] = node;
+        props.push(`&${anchor}`);
+      }
+      if (node.tag) {
+        props.push(stringifyTag(doc, node.tag));
+      } else if (!tagObj.default) {
+        props.push(stringifyTag(doc, tagObj.tag));
+      }
+      return props.join(" ");
+    }
+    function stringify3(item, ctx, onComment, onChompKeep) {
+      const {
+        anchors,
+        schema
+      } = ctx.doc;
+      let tagObj;
+      if (!(item instanceof resolveSeq.Node)) {
+        const createCtx = {
+          aliasNodes: [],
+          onTagObj: (o) => tagObj = o,
+          prevObjects: /* @__PURE__ */ new Map()
+        };
+        item = schema.createNode(item, true, null, createCtx);
+        for (const alias of createCtx.aliasNodes) {
+          alias.source = alias.source.node;
+          let name = anchors.getName(alias.source);
+          if (!name) {
+            name = anchors.newName();
+            anchors.map[name] = alias.source;
+          }
+        }
+      }
+      if (item instanceof resolveSeq.Pair) return item.toString(ctx, onComment, onChompKeep);
+      if (!tagObj) tagObj = getTagObject(schema.tags, item);
+      const props = stringifyProps(item, tagObj, ctx);
+      if (props.length > 0) ctx.indentAtStart = (ctx.indentAtStart || 0) + props.length + 1;
+      const str = typeof tagObj.stringify === "function" ? tagObj.stringify(item, ctx, onComment, onChompKeep) : item instanceof resolveSeq.Scalar ? resolveSeq.stringifyString(item, ctx, onComment, onChompKeep) : item.toString(ctx, onComment, onChompKeep);
+      if (!props) return str;
+      return item instanceof resolveSeq.Scalar || str[0] === "{" || str[0] === "[" ? `${props} ${str}` : `${props}
+${ctx.indent}${str}`;
+    }
+    var Anchors = class _Anchors {
+      static validAnchorNode(node) {
+        return node instanceof resolveSeq.Scalar || node instanceof resolveSeq.YAMLSeq || node instanceof resolveSeq.YAMLMap;
+      }
+      constructor(prefix) {
+        PlainValue._defineProperty(this, "map", /* @__PURE__ */ Object.create(null));
+        this.prefix = prefix;
+      }
+      createAlias(node, name) {
+        this.setAnchor(node, name);
+        return new resolveSeq.Alias(node);
+      }
+      createMergePair(...sources) {
+        const merge2 = new resolveSeq.Merge();
+        merge2.value.items = sources.map((s) => {
+          if (s instanceof resolveSeq.Alias) {
+            if (s.source instanceof resolveSeq.YAMLMap) return s;
+          } else if (s instanceof resolveSeq.YAMLMap) {
+            return this.createAlias(s);
+          }
+          throw new Error("Merge sources must be Map nodes or their Aliases");
+        });
+        return merge2;
+      }
+      getName(node) {
+        const {
+          map
+        } = this;
+        return Object.keys(map).find((a) => map[a] === node);
+      }
+      getNames() {
+        return Object.keys(this.map);
+      }
+      getNode(name) {
+        return this.map[name];
+      }
+      newName(prefix) {
+        if (!prefix) prefix = this.prefix;
+        const names = Object.keys(this.map);
+        for (let i = 1; true; ++i) {
+          const name = `${prefix}${i}`;
+          if (!names.includes(name)) return name;
+        }
+      }
+      // During parsing, map & aliases contain CST nodes
+      resolveNodes() {
+        const {
+          map,
+          _cstAliases
+        } = this;
+        Object.keys(map).forEach((a) => {
+          map[a] = map[a].resolved;
+        });
+        _cstAliases.forEach((a) => {
+          a.source = a.source.resolved;
+        });
+        delete this._cstAliases;
+      }
+      setAnchor(node, name) {
+        if (node != null && !_Anchors.validAnchorNode(node)) {
+          throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");
+        }
+        if (name && /[\x00-\x19\s,[\]{}]/.test(name)) {
+          throw new Error("Anchor names must not contain whitespace or control characters");
+        }
+        const {
+          map
+        } = this;
+        const prev = node && Object.keys(map).find((a) => map[a] === node);
+        if (prev) {
+          if (!name) {
+            return prev;
+          } else if (prev !== name) {
+            delete map[prev];
+            map[name] = node;
+          }
+        } else {
+          if (!name) {
+            if (!node) return null;
+            name = this.newName();
+          }
+          map[name] = node;
+        }
+        return name;
+      }
+    };
+    var visit2 = (node, tags) => {
+      if (node && typeof node === "object") {
+        const {
+          tag
+        } = node;
+        if (node instanceof resolveSeq.Collection) {
+          if (tag) tags[tag] = true;
+          node.items.forEach((n) => visit2(n, tags));
+        } else if (node instanceof resolveSeq.Pair) {
+          visit2(node.key, tags);
+          visit2(node.value, tags);
+        } else if (node instanceof resolveSeq.Scalar) {
+          if (tag) tags[tag] = true;
+        }
+      }
+      return tags;
+    };
+    var listTagNames = (node) => Object.keys(visit2(node, {}));
+    function parseContents(doc, contents) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let body = void 0;
+      let spaceBefore = false;
+      for (const node of contents) {
+        if (node.valueRange) {
+          if (body !== void 0) {
+            const msg = "Document contains trailing content not separated by a ... or --- line";
+            doc.errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+            break;
+          }
+          const res = resolveSeq.resolveNode(doc, node);
+          if (spaceBefore) {
+            res.spaceBefore = true;
+            spaceBefore = false;
+          }
+          body = res;
+        } else if (node.comment !== null) {
+          const cc = body === void 0 ? comments.before : comments.after;
+          cc.push(node.comment);
+        } else if (node.type === PlainValue.Type.BLANK_LINE) {
+          spaceBefore = true;
+          if (body === void 0 && comments.before.length > 0 && !doc.commentBefore) {
+            doc.commentBefore = comments.before.join("\n");
+            comments.before = [];
+          }
+        }
+      }
+      doc.contents = body || null;
+      if (!body) {
+        doc.comment = comments.before.concat(comments.after).join("\n") || null;
+      } else {
+        const cb = comments.before.join("\n");
+        if (cb) {
+          const cbNode = body instanceof resolveSeq.Collection && body.items[0] ? body.items[0] : body;
+          cbNode.commentBefore = cbNode.commentBefore ? `${cb}
+${cbNode.commentBefore}` : cb;
+        }
+        doc.comment = comments.after.join("\n") || null;
+      }
+    }
+    function resolveTagDirective({
+      tagPrefixes
+    }, directive) {
+      const [handle, prefix] = directive.parameters;
+      if (!handle || !prefix) {
+        const msg = "Insufficient parameters given for %TAG directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (tagPrefixes.some((p) => p.handle === handle)) {
+        const msg = "The %TAG directive must only be given at most once per handle in the same document.";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      return {
+        handle,
+        prefix
+      };
+    }
+    function resolveYamlDirective(doc, directive) {
+      let [version3] = directive.parameters;
+      if (directive.name === "YAML:1.0") version3 = "1.0";
+      if (!version3) {
+        const msg = "Insufficient parameters given for %YAML directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (!documentOptions[version3]) {
+        const v0 = doc.version || doc.options.version;
+        const msg = `Document will be parsed as YAML ${v0} rather than YAML ${version3}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+      }
+      return version3;
+    }
+    function parseDirectives(doc, directives, prevDoc) {
+      const directiveComments = [];
+      let hasDirectives = false;
+      for (const directive of directives) {
+        const {
+          comment,
+          name
+        } = directive;
+        switch (name) {
+          case "TAG":
+            try {
+              doc.tagPrefixes.push(resolveTagDirective(doc, directive));
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          case "YAML":
+          case "YAML:1.0":
+            if (doc.version) {
+              const msg = "The %YAML directive must only be given at most once per document.";
+              doc.errors.push(new PlainValue.YAMLSemanticError(directive, msg));
+            }
+            try {
+              doc.version = resolveYamlDirective(doc, directive);
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          default:
+            if (name) {
+              const msg = `YAML only supports %TAG and %YAML directives, and not %${name}`;
+              doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+            }
+        }
+        if (comment) directiveComments.push(comment);
+      }
+      if (prevDoc && !hasDirectives && "1.1" === (doc.version || prevDoc.version || doc.options.version)) {
+        const copyTagPrefix = ({
+          handle,
+          prefix
+        }) => ({
+          handle,
+          prefix
+        });
+        doc.tagPrefixes = prevDoc.tagPrefixes.map(copyTagPrefix);
+        doc.version = prevDoc.version;
+      }
+      doc.commentBefore = directiveComments.join("\n") || null;
+    }
+    function assertCollection(contents) {
+      if (contents instanceof resolveSeq.Collection) return true;
+      throw new Error("Expected a YAML collection as document contents");
+    }
+    var Document = class _Document {
+      constructor(options) {
+        this.anchors = new Anchors(options.anchorPrefix);
+        this.commentBefore = null;
+        this.comment = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.errors = [];
+        this.options = options;
+        this.schema = null;
+        this.tagPrefixes = [];
+        this.version = null;
+        this.warnings = [];
+      }
+      add(value) {
+        assertCollection(this.contents);
+        return this.contents.add(value);
+      }
+      addIn(path23, value) {
+        assertCollection(this.contents);
+        this.contents.addIn(path23, value);
+      }
+      delete(key) {
+        assertCollection(this.contents);
+        return this.contents.delete(key);
+      }
+      deleteIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) {
+          if (this.contents == null) return false;
+          this.contents = null;
+          return true;
+        }
+        assertCollection(this.contents);
+        return this.contents.deleteIn(path23);
+      }
+      getDefaults() {
+        return _Document.defaults[this.version] || _Document.defaults[this.options.version] || {};
+      }
+      get(key, keepScalar) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.get(key, keepScalar) : void 0;
+      }
+      getIn(path23, keepScalar) {
+        if (resolveSeq.isEmptyPath(path23)) return !keepScalar && this.contents instanceof resolveSeq.Scalar ? this.contents.value : this.contents;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.getIn(path23, keepScalar) : void 0;
+      }
+      has(key) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.has(key) : false;
+      }
+      hasIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) return this.contents !== void 0;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.hasIn(path23) : false;
+      }
+      set(key, value) {
+        assertCollection(this.contents);
+        this.contents.set(key, value);
+      }
+      setIn(path23, value) {
+        if (resolveSeq.isEmptyPath(path23)) this.contents = value;
+        else {
+          assertCollection(this.contents);
+          this.contents.setIn(path23, value);
+        }
+      }
+      setSchema(id, customTags) {
+        if (!id && !customTags && this.schema) return;
+        if (typeof id === "number") id = id.toFixed(1);
+        if (id === "1.0" || id === "1.1" || id === "1.2") {
+          if (this.version) this.version = id;
+          else this.options.version = id;
+          delete this.options.schema;
+        } else if (id && typeof id === "string") {
+          this.options.schema = id;
+        }
+        if (Array.isArray(customTags)) this.options.customTags = customTags;
+        const opt = Object.assign({}, this.getDefaults(), this.options);
+        this.schema = new Schema2.Schema(opt);
+      }
+      parse(node, prevDoc) {
+        if (this.options.keepCstNodes) this.cstNode = node;
+        if (this.options.keepNodeTypes) this.type = "DOCUMENT";
+        const {
+          directives = [],
+          contents = [],
+          directivesEndMarker,
+          error,
+          valueRange
+        } = node;
+        if (error) {
+          if (!error.source) error.source = this;
+          this.errors.push(error);
+        }
+        parseDirectives(this, directives, prevDoc);
+        if (directivesEndMarker) this.directivesEndMarker = true;
+        this.range = valueRange ? [valueRange.start, valueRange.end] : null;
+        this.setSchema();
+        this.anchors._cstAliases = [];
+        parseContents(this, contents);
+        this.anchors.resolveNodes();
+        if (this.options.prettyErrors) {
+          for (const error2 of this.errors) if (error2 instanceof PlainValue.YAMLError) error2.makePretty();
+          for (const warn of this.warnings) if (warn instanceof PlainValue.YAMLError) warn.makePretty();
+        }
+        return this;
+      }
+      listNonDefaultTags() {
+        return listTagNames(this.contents).filter((t) => t.indexOf(Schema2.Schema.defaultPrefix) !== 0);
+      }
+      setTagPrefix(handle, prefix) {
+        if (handle[0] !== "!" || handle[handle.length - 1] !== "!") throw new Error("Handle must start and end with !");
+        if (prefix) {
+          const prev = this.tagPrefixes.find((p) => p.handle === handle);
+          if (prev) prev.prefix = prefix;
+          else this.tagPrefixes.push({
+            handle,
+            prefix
+          });
+        } else {
+          this.tagPrefixes = this.tagPrefixes.filter((p) => p.handle !== handle);
+        }
+      }
+      toJSON(arg, onAnchor) {
+        const {
+          keepBlobsInJSON,
+          mapAsMap,
+          maxAliasCount
+        } = this.options;
+        const keep = keepBlobsInJSON && (typeof arg !== "string" || !(this.contents instanceof resolveSeq.Scalar));
+        const ctx = {
+          doc: this,
+          indentStep: "  ",
+          keep,
+          mapAsMap: keep && !!mapAsMap,
+          maxAliasCount,
+          stringify: stringify3
+          // Requiring directly in Pair would create circular dependencies
+        };
+        const anchorNames = Object.keys(this.anchors.map);
+        if (anchorNames.length > 0) ctx.anchors = new Map(anchorNames.map((name) => [this.anchors.map[name], {
+          alias: [],
+          aliasCount: 0,
+          count: 1
+        }]));
+        const res = resolveSeq.toJSON(this.contents, arg, ctx);
+        if (typeof onAnchor === "function" && ctx.anchors) for (const {
+          count: count2,
+          res: res2
+        } of ctx.anchors.values()) onAnchor(res2, count2);
+        return res;
+      }
+      toString() {
+        if (this.errors.length > 0) throw new Error("Document with errors cannot be stringified");
+        const indentSize = this.options.indent;
+        if (!Number.isInteger(indentSize) || indentSize <= 0) {
+          const s = JSON.stringify(indentSize);
+          throw new Error(`"indent" option must be a positive integer, not ${s}`);
+        }
+        this.setSchema();
+        const lines = [];
+        let hasDirectives = false;
+        if (this.version) {
+          let vd = "%YAML 1.2";
+          if (this.schema.name === "yaml-1.1") {
+            if (this.version === "1.0") vd = "%YAML:1.0";
+            else if (this.version === "1.1") vd = "%YAML 1.1";
+          }
+          lines.push(vd);
+          hasDirectives = true;
+        }
+        const tagNames = this.listNonDefaultTags();
+        this.tagPrefixes.forEach(({
+          handle,
+          prefix
+        }) => {
+          if (tagNames.some((t) => t.indexOf(prefix) === 0)) {
+            lines.push(`%TAG ${handle} ${prefix}`);
+            hasDirectives = true;
+          }
+        });
+        if (hasDirectives || this.directivesEndMarker) lines.push("---");
+        if (this.commentBefore) {
+          if (hasDirectives || !this.directivesEndMarker) lines.unshift("");
+          lines.unshift(this.commentBefore.replace(/^/gm, "#"));
+        }
+        const ctx = {
+          anchors: /* @__PURE__ */ Object.create(null),
+          doc: this,
+          indent: "",
+          indentStep: " ".repeat(indentSize),
+          stringify: stringify3
+          // Requiring directly in nodes would create circular dependencies
+        };
+        let chompKeep = false;
+        let contentComment = null;
+        if (this.contents) {
+          if (this.contents instanceof resolveSeq.Node) {
+            if (this.contents.spaceBefore && (hasDirectives || this.directivesEndMarker)) lines.push("");
+            if (this.contents.commentBefore) lines.push(this.contents.commentBefore.replace(/^/gm, "#"));
+            ctx.forceBlockIndent = !!this.comment;
+            contentComment = this.contents.comment;
+          }
+          const onChompKeep = contentComment ? null : () => chompKeep = true;
+          const body = stringify3(this.contents, ctx, () => contentComment = null, onChompKeep);
+          lines.push(resolveSeq.addComment(body, "", contentComment));
+        } else if (this.contents !== void 0) {
+          lines.push(stringify3(this.contents, ctx));
+        }
+        if (this.comment) {
+          if ((!chompKeep || contentComment) && lines[lines.length - 1] !== "") lines.push("");
+          lines.push(this.comment.replace(/^/gm, "#"));
+        }
+        return lines.join("\n") + "\n";
+      }
+    };
+    PlainValue._defineProperty(Document, "defaults", documentOptions);
+    exports2.Document = Document;
+    exports2.defaultOptions = defaultOptions;
+    exports2.scalarOptions = scalarOptions;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/index.js
+var require_dist = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/index.js"(exports2) {
+    "use strict";
+    var parseCst = require_parse_cst();
+    var Document$1 = require_Document_a8d0fbf9();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var PlainValue = require_PlainValue_516d5bc2();
+    var warnings = require_warnings_793925ce();
+    require_resolveSeq_95613e94();
+    function createNode(value, wrapScalars = true, tag) {
+      if (tag === void 0 && typeof wrapScalars === "string") {
+        tag = wrapScalars;
+        wrapScalars = true;
+      }
+      const options = Object.assign({}, Document$1.Document.defaults[Document$1.defaultOptions.version], Document$1.defaultOptions);
+      const schema = new Schema2.Schema(options);
+      return schema.createNode(value, wrapScalars, tag);
+    }
+    var Document = class extends Document$1.Document {
+      constructor(options) {
+        super(Object.assign({}, Document$1.defaultOptions, options));
+      }
+    };
+    function parseAllDocuments(src, options) {
+      const stream = [];
+      let prev;
+      for (const cstDoc of parseCst.parse(src)) {
+        const doc = new Document(options);
+        doc.parse(cstDoc, prev);
+        stream.push(doc);
+        prev = doc;
+      }
+      return stream;
+    }
+    function parseDocument(src, options) {
+      const cst = parseCst.parse(src);
+      const doc = new Document(options).parse(cst[0]);
+      if (cst.length > 1) {
+        const errMsg = "Source contains multiple documents; please use YAML.parseAllDocuments()";
+        doc.errors.unshift(new PlainValue.YAMLSemanticError(cst[1], errMsg));
+      }
+      return doc;
+    }
+    function parse3(src, options) {
+      const doc = parseDocument(src, options);
+      doc.warnings.forEach((warning) => warnings.warn(warning));
+      if (doc.errors.length > 0) throw doc.errors[0];
+      return doc.toJSON();
+    }
+    function stringify3(value, options) {
+      const doc = new Document(options);
+      doc.contents = value;
+      return String(doc);
+    }
+    var YAML = {
+      createNode,
+      defaultOptions: Document$1.defaultOptions,
+      Document,
+      parse: parse3,
+      parseAllDocuments,
+      parseCST: parseCst.parse,
+      parseDocument,
+      scalarOptions: Document$1.scalarOptions,
+      stringify: stringify3
+    };
+    exports2.YAML = YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/index.js
+var require_yaml = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/index.js"(exports2, module2) {
+    module2.exports = require_dist().YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/types.js
+var require_types = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/types.js"(exports2) {
+    "use strict";
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    require_PlainValue_516d5bc2();
+    require_warnings_793925ce();
+    exports2.Alias = resolveSeq.Alias;
+    exports2.Collection = resolveSeq.Collection;
+    exports2.Merge = resolveSeq.Merge;
+    exports2.Node = resolveSeq.Node;
+    exports2.Pair = resolveSeq.Pair;
+    exports2.Scalar = resolveSeq.Scalar;
+    exports2.YAMLMap = resolveSeq.YAMLMap;
+    exports2.YAMLSeq = resolveSeq.YAMLSeq;
+    exports2.binaryOptions = resolveSeq.binaryOptions;
+    exports2.boolOptions = resolveSeq.boolOptions;
+    exports2.intOptions = resolveSeq.intOptions;
+    exports2.nullOptions = resolveSeq.nullOptions;
+    exports2.strOptions = resolveSeq.strOptions;
+    exports2.Schema = Schema2.Schema;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/types.mjs
+var import_types, binaryOptions, boolOptions, intOptions, nullOptions, strOptions, Schema, Alias, Collection, Merge, Node5, Pair, Scalar, YAMLMap, YAMLSeq;
+var init_types = __esm({
+  "../../aws-cdk-lib/node_modules/yaml/types.mjs"() {
+    import_types = __toESM(require_types(), 1);
+    binaryOptions = import_types.default.binaryOptions;
+    boolOptions = import_types.default.boolOptions;
+    intOptions = import_types.default.intOptions;
+    nullOptions = import_types.default.nullOptions;
+    strOptions = import_types.default.strOptions;
+    Schema = import_types.default.Schema;
+    Alias = import_types.default.Alias;
+    Collection = import_types.default.Collection;
+    Merge = import_types.default.Merge;
+    Node5 = import_types.default.Node;
+    Pair = import_types.default.Pair;
+    Scalar = import_types.default.Scalar;
+    YAMLMap = import_types.default.YAMLMap;
+    YAMLSeq = import_types.default.YAMLSeq;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/yaml-cfn.ts
+function serialize(obj) {
+  const oldFold = strOptions.fold.lineWidth;
+  try {
+    strOptions.fold.lineWidth = 0;
+    return yaml.stringify(obj, { schema: "yaml-1.1" });
+  } finally {
+    strOptions.fold.lineWidth = oldFold;
+  }
+}
+var yaml;
+var init_yaml_cfn = __esm({
+  "../../aws-cdk-lib/core/lib/private/yaml-cfn.ts"() {
+    "use strict";
+    yaml = __toESM(require_yaml());
+    init_types();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts
+function fnJoinConcat(parts) {
+  return { "Fn::Join": ["", minimalCloudFormationJoin("", parts)] };
+}
+function tokenAwareStringify(root, space, ctx) {
+  let indent = 0;
+  const ret = new Array();
+  recurse(ctx.resolve(root, { allowIntrinsicKeys: true }));
+  switch (ret.length) {
+    case 0:
+      return void 0;
+    case 1:
+      return renderSegment(ret[0]);
+    default:
+      return fnJoinConcat(ret.map(renderSegment));
+  }
+  function recurse(obj) {
+    if (obj === void 0) {
+      return;
+    }
+    if (Token.isUnresolved(obj)) {
+      throw new UnscopedValidationError(lit`ShouldNotHappenAnymore`, "This shouldn't happen anymore");
+    }
+    if (Array.isArray(obj)) {
+      return renderCollection("[", "]", obj, recurse);
+    }
+    if (typeof obj === "object" && obj != null && !(obj instanceof Date)) {
+      if (isIntrinsic(obj) && resolvedTypeHint(obj)) {
+        renderIntrinsic(obj);
+        return;
+      }
+      return renderCollection("{", "}", definedEntries(obj), ([key, value]) => {
+        if (key.startsWith(INTRINSIC_KEY_PREFIX)) {
+          [key, value] = value;
+        }
+        recurse(key);
+        pushLiteral(prettyPunctuation(":"));
+        recurse(value);
+      });
+    }
+    pushLiteral(JSON.stringify(obj));
+  }
+  function renderCollection(pre, post, xs, each) {
+    pushLiteral(pre);
+    indent += space;
+    let atLeastOne = false;
+    for (const [comma, item] of sepIter(xs)) {
+      if (comma) {
+        pushLiteral(",");
+      }
+      pushLineBreak();
+      each(item);
+      atLeastOne = true;
+    }
+    indent -= space;
+    if (atLeastOne) {
+      pushLineBreak();
+    }
+    pushLiteral(post);
+  }
+  function renderIntrinsic(intrinsic) {
+    switch (resolvedTypeHint(intrinsic)) {
+      case "string" /* STRING */:
+        pushLiteral('"');
+        pushIntrinsic(deepQuoteStringLiterals(intrinsic));
+        pushLiteral('"');
+        return;
+      case "string-list" /* STRING_LIST */:
+        const stack = stackOf(ctx.scope);
+        const stringifyResponse = stringifyCache.obtain(stack, JSON.stringify(intrinsic), () => {
+          const id = makeUniqueId(["CdkJsonStringify", JSON.stringify(intrinsic)]);
+          return CfnUtils.stringify(stack, id, intrinsic);
+        });
+        pushIntrinsic(stringifyResponse);
+        return;
+      case "number" /* NUMBER */:
+        pushIntrinsic(intrinsic);
+        return;
+    }
+    throw new UnscopedValidationError(lit`UnexpectedTypeHint`, `Unexpected type hint: ${resolvedTypeHint(intrinsic)}`);
+  }
+  function pushLiteral(literal) {
+    let last2 = ret[ret.length - 1];
+    if (last2?.type !== "literal") {
+      last2 = { type: "literal", parts: [] };
+      ret.push(last2);
+    }
+    last2.parts.push(literal);
+  }
+  function pushIntrinsic(intrinsic) {
+    ret.push({ type: "intrinsic", intrinsic });
+  }
+  function pushLineBreak() {
+    if (space > 0) {
+      pushLiteral(`
+${" ".repeat(indent)}`);
+    }
+  }
+  function prettyPunctuation(punc) {
+    return space > 0 ? `${punc} ` : punc;
+  }
+}
+function renderSegment(s) {
+  switch (s.type) {
+    case "literal":
+      return s.parts.join("");
+    case "intrinsic":
+      return s.intrinsic;
+  }
+}
+function minimalCloudFormationJoin(delimiter, values) {
+  let i = 0;
+  while (i < values.length) {
+    const el = values[i];
+    if (isSplicableFnJoinIntrinsic(el)) {
+      values.splice(i, 1, ...el["Fn::Join"][1]);
+    } else if (i > 0 && isConcatable(values[i - 1]) && isConcatable(values[i])) {
+      values[i - 1] = `${values[i - 1]}${delimiter}${values[i]}`;
+      values.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+  return values;
+  function isSplicableFnJoinIntrinsic(obj) {
+    if (!isIntrinsic(obj)) {
+      return false;
+    }
+    if (Object.keys(obj)[0] !== "Fn::Join") {
+      return false;
+    }
+    const [delim, list] = obj["Fn::Join"];
+    if (delim !== delimiter) {
+      return false;
+    }
+    if (Token.isUnresolved(list)) {
+      return false;
+    }
+    if (!Array.isArray(list)) {
+      return false;
+    }
+    return true;
+  }
+}
+function isConcatable(obj) {
+  return ["string", "number"].includes(typeof obj) && !Token.isUnresolved(obj);
+}
+function isIntrinsic(x) {
+  if (Array.isArray(x) || x === null || typeof x !== "object") {
+    return false;
+  }
+  const keys = Object.keys(x);
+  if (keys.length !== 1) {
+    return false;
+  }
+  return keys[0] === "Ref" || isNameOfCloudFormationIntrinsic(keys[0]);
+}
+function isNameOfCloudFormationIntrinsic(name) {
+  if (!name.startsWith("Fn::")) {
+    return false;
+  }
+  return name !== "Fn::GetArtifactAtt" && name !== "Fn::GetParam";
+}
+function* sepIter(xs) {
+  let comma = false;
+  for (const item of xs) {
+    yield [comma, item];
+    comma = true;
+  }
+}
+function* definedEntries(xs) {
+  for (const [key, value] of Object.entries(xs)) {
+    if (value !== void 0) {
+      yield [key, value];
+    }
+  }
+}
+function deepQuoteStringLiterals(x) {
+  if (Array.isArray(x)) {
+    return x.map(deepQuoteStringLiterals);
+  }
+  if (typeof x === "object" && x != null) {
+    const ret = {};
+    for (const [key, value] of Object.entries(x)) {
+      ret[deepQuoteStringLiterals(key)] = deepQuoteStringLiterals(value);
+    }
+    return ret;
+  }
+  if (typeof x === "string") {
+    return quoteString(x);
+  }
+  return x;
+}
+function quoteString(s) {
+  s = JSON.stringify(s);
+  return s.substring(1, s.length - 1);
+}
+var CloudFormationLang, CLOUDFORMATION_CONCAT, CLOUDFORMATION_TOKEN_RESOLVER, ScopedCache, stringifyCache;
+var init_cloudformation_lang = __esm({
+  "../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts"() {
+    "use strict";
+    init_cfn_utils_provider();
+    init_resolve();
+    init_yaml_cfn();
+    init_lazy();
+    init_resolvable();
+    init_token();
+    init_type_hints();
+    init_uniqueid();
+    init_errors();
+    init_literal_string();
+    init_helpers_internal();
+    init_core_construct_finders();
+    CloudFormationLang = class {
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a JSON string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the JSON representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       * @param space Indentation to use (default: no pretty-printing)
+       */
+      static toJSON(obj, space) {
+        return Lazy.uncachedString({
+          // We used to do this by hooking into `JSON.stringify()` by adding in objects
+          // with custom `toJSON()` functions, but it's ultimately simpler just to
+          // reimplement the `stringify()` function from scratch.
+          produce: (ctx) => tokenAwareStringify(obj, space ?? 0, ctx)
+        });
+      }
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a YAML string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the YAML representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       */
+      static toYAML(obj) {
+        return Token.asString(Box.fromValue(obj).derive((data) => serialize(data)));
+      }
+      /**
+       * Produce a CloudFormation expression to concat two arbitrary expressions when resolving
+       */
+      static concat(left, right) {
+        if (left === void 0 && right === void 0) {
+          return "";
+        }
+        const parts = new Array();
+        if (left !== void 0) {
+          parts.push(left);
+        }
+        if (right !== void 0) {
+          parts.push(right);
+        }
+        if (parts.length === 1) {
+          return parts[0];
+        }
+        if (parts.length === 2 && isConcatable(parts[0]) && isConcatable(parts[1])) {
+          return `${parts[0]}${parts[1]}`;
+        }
+        return fnJoinConcat(parts);
+      }
+    };
+    CLOUDFORMATION_CONCAT = {
+      join(left, right) {
+        return CloudFormationLang.concat(left, right);
+      }
+    };
+    CLOUDFORMATION_TOKEN_RESOLVER = new DefaultTokenResolver(CLOUDFORMATION_CONCAT);
+    ScopedCache = class {
+      cache = /* @__PURE__ */ new WeakMap();
+      obtain(object, key, init) {
+        let kvMap = this.cache.get(object);
+        if (!kvMap) {
+          kvMap = /* @__PURE__ */ new Map();
+          this.cache.set(object, kvMap);
+        }
+        let ret = kvMap.get(key);
+        if (ret === void 0) {
+          ret = init();
+          kvMap.set(key, ret);
+        }
+        return ret;
+      }
+    };
+    stringifyCache = new ScopedCache();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-fn.ts
+function _inGroupsOf(array, maxGroup) {
+  const result = new Array();
+  for (let i = 0; i < array.length; i += maxGroup) {
+    result.push(array.slice(i, i + maxGroup));
+  }
+  return result;
+}
+function range2(n) {
+  const ret = [];
+  for (let i = 0; i < n; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+var Fn, FN_BASE_SYMBOL, FnBase, FnRef, FnFindInMap, FnTransform, FnGetAtt, FnGetAZs, FnImportValue, FnGetStackOutput, FnSelect, FnSplit, FnSub, FnBase64, FnCidr, FnConditionBase, FnAnd, FnEquals, FnIf, FnNot, FnOr, FnContains, FnEachMemberEquals, FnEachMemberIn, FnRefAll, FnValueOf, FnValueOfAll, FnJoin, FnToJsonString, FnLength;
+var init_cfn_fn = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-fn.ts"() {
+    "use strict";
+    init_errors();
+    init_cloudformation_lang();
+    init_core_construct_finders();
+    init_intrinsic();
+    init_literal_string();
+    init_reference();
+    init_token();
+    Fn = class _Fn {
+      /**
+       * The ``Ref`` intrinsic function returns the value of the specified parameter or resource.
+       * Note that it doesn't validate the logicalName, it mainly serves parameter/resource reference defined in a ``CfnInclude`` template.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      static ref(logicalName) {
+        return new FnRef(logicalName).toString();
+      }
+      /**
+       * The ``Fn::GetAtt`` intrinsic function returns the value of an attribute
+       * from a resource in the template.
+       * @param logicalNameOfResource The logical name (also called logical ID) of
+       * the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose
+       * value you want. See the resource's reference page for details about the
+       * attributes available for that resource type.
+       * @returns an IResolvable object
+       */
+      static getAtt(logicalNameOfResource, attributeName) {
+        return new FnGetAtt(logicalNameOfResource, attributeName);
+      }
+      /**
+       * The intrinsic function ``Fn::Join`` appends a set of values into a single
+       * value, separated by the specified delimiter. If a delimiter is the empty
+       * string, the set of values are concatenated with no delimiter.
+       * @param delimiter The value you want to occur between fragments. The
+       * delimiter will occur between fragments only. It will not terminate the
+       * final value.
+       * @param listOfValues The list of values you want combined.
+       * @returns a token represented as a string
+       */
+      static join(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        return new FnJoin(delimiter, listOfValues).toString();
+      }
+      /**
+       * Split a string token into a token list of string values.
+       *
+       * Specify the location of splits with a delimiter such as ',' (a comma).
+       * Renders to the `Fn::Split` intrinsic function.
+       *
+       * Lists with unknown lengths (default)
+       * -------------------------------------
+       *
+       * Since this function is used to work with deploy-time values, if `assumedLength`
+       * is not given the CDK cannot know the length of the resulting list at synthesis time.
+       * This brings the following restrictions:
+       *
+       * - You must use `Fn.select(i, list)` to pick elements out of the list (you must not use
+       *   `list[i]`).
+       * - You cannot add elements to the list, remove elements from the list,
+       *   combine two such lists together, or take a slice of the list.
+       * - You cannot pass the list to constructs that do any of the above.
+       *
+       * The only valid operation with such a tokenized list is to pass it unmodified to a
+       * CloudFormation Resource construct.
+       *
+       * Lists with assumed lengths
+       * --------------------------
+       *
+       * Pass `assumedLength` if you know the length of the list that will be
+       * produced by splitting. The actual list length at deploy time may be
+       * *longer* than the number you pass, but not *shorter*.
+       *
+       * The returned list will look like:
+       *
+       * ```
+       * [Fn.select(0, split), Fn.select(1, split), Fn.select(2, split), ...]
+       * ```
+       *
+       * The restrictions from the section "Lists with unknown lengths" will now be lifted,
+       * at the expense of having to know and fix the length of the list.
+       *
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       * @param assumedLength The length of the list that will be produced by splitting
+       * @returns a token represented as a string array
+       */
+      static split(delimiter, source, assumedLength) {
+        if (!Token.isUnresolved(source)) {
+          return source.split(delimiter);
+        }
+        if (Token.isUnresolved(delimiter)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'delimiter' may not be a token value");
+        }
+        const split = Token.asList(new FnSplit(delimiter, source));
+        if (assumedLength === void 0) {
+          return split;
+        }
+        if (Token.isUnresolved(assumedLength)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'assumedLength' may not be a token value");
+        }
+        return range2(assumedLength).map((i) => _Fn.select(i, split));
+      }
+      /**
+       * The intrinsic function ``Fn::Select`` returns a single object from a list of objects by index.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       * @returns a token represented as a string
+       */
+      static select(index, array) {
+        if (!Token.isUnresolved(index) && !Token.isUnresolved(array) && !array.some(Token.isUnresolved)) {
+          return array[index];
+        }
+        return new FnSelect(index, array).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Sub`` substitutes variables in an input string
+       * with values that you specify. In your templates, you can use this function
+       * to construct commands or outputs that include values that aren't available
+       * until you create or update a stack.
+       * @param body A string with variables that AWS CloudFormation substitutes
+       * with their associated values at runtime. Write variables as ${MyVarName}.
+       * Variables can be template parameter names, resource logical IDs, resource
+       * attributes, or a variable in a key-value map. If you specify only template
+       * parameter names, resource logical IDs, and resource attributes, don't
+       * specify a key-value map.
+       * @param variables The name of a variable that you included in the String
+       * parameter. The value that AWS CloudFormation substitutes for the associated
+       * variable name at runtime.
+       * @returns a token represented as a string
+       */
+      static sub(body, variables) {
+        return new FnSub(body, variables).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Base64`` returns the Base64 representation of
+       * the input string. This function is typically used to pass encoded data to
+       * Amazon EC2 instances by way of the UserData property.
+       * @param data The string value you want to convert to Base64.
+       * @returns a token represented as a string
+       */
+      static base64(data) {
+        return new FnBase64(data).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Cidr`` returns the specified Cidr address block.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       * @returns a token represented as a string
+       */
+      static cidr(ipBlock, count2, sizeMask) {
+        return Token.asList(new FnCidr(ipBlock, count2, sizeMask));
+      }
+      /**
+       * Given an url, parse the domain name
+       * @param url the url to parse
+       */
+      static parseDomainName(url2) {
+        const noHttps = _Fn.select(1, _Fn.split("//", url2));
+        return _Fn.select(0, _Fn.split("/", noHttps));
+      }
+      /**
+       * The intrinsic function ``Fn::GetAZs`` returns an array that lists
+       * Availability Zones for a specified region. Because customers have access to
+       * different Availability Zones, the intrinsic function ``Fn::GetAZs`` enables
+       * template authors to write templates that adapt to the calling user's
+       * access. That way you don't have to hard-code a full list of Availability
+       * Zones for a specified region.
+       * @param region The name of the region for which you want to get the
+       * Availability Zones. You can use the AWS::Region pseudo parameter to specify
+       * the region in which the stack is created. Specifying an empty string is
+       * equivalent to specifying AWS::Region.
+       * @returns a token represented as a string array
+       */
+      static getAzs(region) {
+        return Token.asList(new FnGetAZs(region));
+      }
+      /**
+       * The intrinsic function ``Fn::ImportValue`` returns the value of an output
+       * exported by another stack. You typically use this function to create
+       * cross-stack references. In the following example template snippets, Stack A
+       * exports VPC security group values and Stack B imports them.
+       * @param sharedValueToImport The stack output value that you want to import.
+       * @returns a token represented as a string
+       */
+      static importValue(sharedValueToImport) {
+        return new FnImportValue(sharedValueToImport).toString();
+      }
+      /**
+       * The intrinsic function `Fn::GetStackOutput` returns the value of an output
+       * from another stack. This is similar to `Fn::ImportValue`, but it can reference
+       * a normal output, without the need to export anything. As with `Fn::ImportValue`,
+       * you typically use this function to create cross-stack references.
+       * @param stackName The name of the producer stack.
+       * @param outputName The name of the output to get the value from.
+       * @param region The region where the producer stack is deployed. If not provided,
+       * it will default to the same region as the consumer stack.
+       * @param roleArn The role to be used when describing the producer stack. If not
+       * provided, it will default to the role used to create the producer stack.
+       */
+      static getStackOutput(stackName, outputName, region, roleArn) {
+        return new FnGetStackOutput(stackName, outputName, region, roleArn).toString();
+      }
+      /**
+       * Like `Fn.importValue`, but import a list with a known length
+       *
+       * If you explicitly want a list with an unknown length, call `Fn.split(',',
+       * Fn.importValue(exportName))`. See the documentation of `Fn.split` to read
+       * more about the limitations of using lists of unknown length.
+       *
+       * `Fn.importListValue(exportName, assumedLength)` is the same as
+       * `Fn.split(',', Fn.importValue(exportName), assumedLength)`,
+       * but easier to read and impossible to forget to pass `assumedLength`.
+       */
+      static importListValue(sharedValueToImport, assumedLength, delimiter = ",") {
+        return _Fn.split(delimiter, _Fn.importValue(sharedValueToImport), assumedLength);
+      }
+      /**
+       * The intrinsic function ``Fn::FindInMap`` returns the value corresponding to
+       * keys in a two-level map that is declared in the Mappings section.
+       * Warning: do not use with lazy mappings as this function will not guarantee a lazy mapping to render in the template.
+       * Prefer to use `CfnMapping.findInMap` in general.
+       * @returns a token represented as a string
+       */
+      static findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return _Fn._findInMap(mapName, topLevelKey, secondLevelKey, defaultValue).toString();
+      }
+      /**
+       * An additional function used in CfnParser,
+       * as Fn::FindInMap does not always return a string.
+       *
+       * @internal
+       */
+      static _findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return new FnFindInMap(mapName, topLevelKey, secondLevelKey, defaultValue);
+      }
+      /**
+       * Creates a token representing the ``Fn::Transform`` expression
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-transform.html
+       * @param macroName The name of the macro to perform the processing
+       * @param parameters The parameters to be passed to the macro
+       * @returns a token representing the transform expression
+       */
+      static transform(macroName, parameters) {
+        return new FnTransform(macroName, parameters);
+      }
+      /**
+       * Returns true if all the specified conditions evaluate to true, or returns
+       * false if any one of the conditions evaluates to false. ``Fn::And`` acts as
+       * an AND operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions to AND
+       * @returns an FnCondition token
+       */
+      static conditionAnd(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionAnd() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnAnd(...conditions);
+        }
+        return _Fn.conditionAnd(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionAnd(...group)));
+      }
+      /**
+       * Compares if two values are equal. Returns true if the two values are equal
+       * or false if they aren't.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       * @returns an FnCondition token
+       */
+      static conditionEquals(lhs, rhs) {
+        return new FnEquals(lhs, rhs);
+      }
+      /**
+       * Returns one value if the specified condition evaluates to true and another
+       * value if the specified condition evaluates to false. Currently, AWS
+       * CloudFormation supports the ``Fn::If`` intrinsic function in the metadata
+       * attribute, update policy attribute, and property values in the Resources
+       * section and Outputs sections of a template. You can use the AWS::NoValue
+       * pseudo parameter as a return value to remove the corresponding property.
+       * @param conditionId A reference to a condition in the Conditions section. Use
+       * the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition
+       * evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition
+       * evaluates to false.
+       * @returns an FnCondition token
+       */
+      static conditionIf(conditionId, valueIfTrue, valueIfFalse) {
+        return new FnIf(conditionId, valueIfTrue, valueIfFalse);
+      }
+      /**
+       * Returns true for a condition that evaluates to false or returns false for a
+       * condition that evaluates to true. ``Fn::Not`` acts as a NOT operator.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true
+       * or false.
+       * @returns an FnCondition token
+       */
+      static conditionNot(condition) {
+        return new FnNot(condition);
+      }
+      /**
+       * Returns true if any one of the specified conditions evaluate to true, or
+       * returns false if all of the conditions evaluates to false. ``Fn::Or`` acts
+       * as an OR operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions that evaluates to true or false.
+       * @returns an FnCondition token
+       */
+      static conditionOr(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionOr() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnOr(...conditions);
+        }
+        return _Fn.conditionOr(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionOr(...group)));
+      }
+      /**
+       * Returns true if a specified string matches at least one value in a list of
+       * strings.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       * @returns an FnCondition token
+       */
+      static conditionContains(listOfStrings, value) {
+        return new FnContains(listOfStrings, value);
+      }
+      /**
+       * Returns true if a specified string matches all values in a list.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list
+       * of strings.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberEquals(listOfStrings, value) {
+        return new FnEachMemberEquals(listOfStrings, value);
+      }
+      /**
+       * Returns true if each member in a list of strings matches at least one value
+       * in a second list of strings.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS
+       * CloudFormation checks whether each member in the strings_to_check parameter
+       * is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member
+       * in the strings_to_match parameter is compared against the members of the
+       * strings_to_check parameter.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberIn(stringsToCheck, stringsToMatch) {
+        return new FnEachMemberIn(stringsToCheck, stringsToMatch);
+      }
+      /**
+       * Returns all values for a specified parameter type.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @returns a token represented as a string array
+       */
+      static refAll(parameterType) {
+        return Token.asList(new FnRefAll(parameterType));
+      }
+      /**
+       * Returns an attribute value or list of values for a specific parameter and
+       * attribute.
+       * @param parameterOrLogicalId The name of a parameter for which you want to
+       * retrieve attribute values. The parameter must be declared in the Parameters
+       * section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value.
+       * @returns a token represented as a string
+       */
+      static valueOf(parameterOrLogicalId, attribute) {
+        return new FnValueOf(parameterOrLogicalId, attribute).toString();
+      }
+      /**
+       * Returns a list of all attribute values for a given parameter type and
+       * attribute.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value. For more information about attributes, see Supported Attributes.
+       * @returns a token represented as a string array
+       */
+      static valueOfAll(parameterType, attribute) {
+        return Token.asList(new FnValueOfAll(parameterType, attribute));
+      }
+      /**
+       * The `Fn::ToJsonString` intrinsic function converts an object or array to its
+       * corresponding JSON string.
+       *
+       * @param object The object or array to stringify
+       */
+      static toJsonString(object) {
+        if (!Token.isUnresolved(object)) {
+          return JSON.stringify(object);
+        }
+        return new FnToJsonString(object).toString();
+      }
+      /**
+       * The intrinsic function `Fn::Length` returns the number of elements within an array
+       * or an intrinsic function that returns an array.
+       *
+       * @param array The array you want to return the number of elements from
+       */
+      static len(array) {
+        if (!Token.isUnresolved(array)) {
+          if (!Array.isArray(array)) {
+            throw new UnscopedValidationError(lit`ValidationError`, "Fn.length() needs an array");
+          }
+          return array.length;
+        }
+        return Token.asNumber(new FnLength(array));
+      }
+      /**
+       * Test whether the given object extends FnBase class.
+       *
+       * @internal
+       */
+      static _isFnBase(x) {
+        return x !== null && typeof x === "object" && FN_BASE_SYMBOL in x;
+      }
+      constructor() {
+      }
+    };
+    FN_BASE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnFnBase");
+    FnBase = class extends Intrinsic {
+      constructor(name, value) {
+        super({ [name]: value });
+        Object.defineProperty(this, FN_BASE_SYMBOL, { value: true });
+      }
+    };
+    FnRef = class extends FnBase {
+      /**
+       * Creates an ``Ref`` function.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      constructor(logicalName) {
+        super("Ref", logicalName);
+      }
+    };
+    FnFindInMap = class extends FnBase {
+      /**
+       * Creates an ``Fn::FindInMap`` function.
+       * @param mapName The logical name of a mapping declared in the Mappings section that contains the keys and values.
+       * @param topLevelKey The top-level key name. Its value is a list of key-value pairs.
+       * @param secondLevelKey The second-level key name, which is set to one of the keys from the list assigned to TopLevelKey.
+       * @param defaultValue The value of the default value returned if either the key is not found in the map
+       */
+      mapName;
+      topLevelKey;
+      secondLevelKey;
+      defaultValue;
+      constructor(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        super("Fn::FindInMap", [mapName, topLevelKey, secondLevelKey, defaultValue !== void 0 ? { DefaultValue: defaultValue } : void 0]);
+        this.mapName = mapName;
+        this.topLevelKey = topLevelKey;
+        this.secondLevelKey = secondLevelKey;
+        this.defaultValue = defaultValue;
+      }
+      resolve(context) {
+        if (this.defaultValue !== void 0) {
+          stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        }
+        return { "Fn::FindInMap": [this.mapName, this.topLevelKey, this.secondLevelKey, this.defaultValue !== void 0 ? { DefaultValue: this.defaultValue } : void 0] };
+      }
+    };
+    FnTransform = class extends FnBase {
+      /**
+       * creates an ``Fn::Transform`` function.
+       * @param macroName The name of the macro to be invoked
+       * @param parameters the parameters to pass to it
+       */
+      constructor(macroName, parameters) {
+        super("Fn::Transform", { Name: macroName, Parameters: parameters });
+      }
+    };
+    FnGetAtt = class extends FnBase {
+      /**
+       * Creates a ``Fn::GetAtt`` function.
+       * @param logicalNameOfResource The logical name (also called logical ID) of the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose value you want. See the resource's reference page for details about the attributes available for that resource type.
+       */
+      constructor(logicalNameOfResource, attributeName) {
+        super("Fn::GetAtt", [logicalNameOfResource, attributeName]);
+      }
+    };
+    FnGetAZs = class extends FnBase {
+      /**
+       * Creates an ``Fn::GetAZs`` function.
+       * @param region The name of the region for which you want to get the Availability Zones.
+       *         You can use the AWS::Region pseudo parameter to specify the region in
+       *         which the stack is created. Specifying an empty string is equivalent to
+       *         specifying AWS::Region.
+       */
+      constructor(region) {
+        super("Fn::GetAZs", region || "");
+      }
+    };
+    FnImportValue = class extends FnBase {
+      /**
+       * Creates an ``Fn::ImportValue`` function.
+       * @param sharedValueToImport The stack output value that you want to import.
+       */
+      constructor(sharedValueToImport) {
+        super("Fn::ImportValue", sharedValueToImport);
+      }
+    };
+    FnGetStackOutput = class extends FnBase {
+      constructor(stackName, outputName, region, roleArn) {
+        super("Fn::GetStackOutput", {
+          StackName: stackName,
+          Region: region,
+          RoleArn: roleArn,
+          OutputName: outputName
+        });
+      }
+    };
+    FnSelect = class extends FnBase {
+      /**
+       * Creates an ``Fn::Select`` function.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       */
+      constructor(index, array) {
+        super("Fn::Select", [index, array]);
+      }
+    };
+    FnSplit = class extends FnBase {
+      /**
+       * Create an ``Fn::Split`` function.
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       */
+      constructor(delimiter, source) {
+        super("Fn::Split", [delimiter, source]);
+      }
+    };
+    FnSub = class extends FnBase {
+      /**
+       * Creates an ``Fn::Sub`` function.
+       * @param body A string with variables that AWS CloudFormation substitutes with their
+       *       associated values at runtime. Write variables as ${MyVarName}. Variables
+       *       can be template parameter names, resource logical IDs, resource attributes,
+       *       or a variable in a key-value map. If you specify only template parameter names,
+       *       resource logical IDs, and resource attributes, don't specify a key-value map.
+       * @param variables The name of a variable that you included in the String parameter.
+       *          The value that AWS CloudFormation substitutes for the associated variable name at runtime.
+       */
+      constructor(body, variables) {
+        super("Fn::Sub", variables ? [body, variables] : body);
+      }
+    };
+    FnBase64 = class extends FnBase {
+      /**
+       * Creates an ``Fn::Base64`` function.
+       * @param data The string value you want to convert to Base64.
+       */
+      constructor(data) {
+        super("Fn::Base64", data);
+      }
+    };
+    FnCidr = class extends FnBase {
+      /**
+       * Creates an ``Fn::Cidr`` function.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       */
+      constructor(ipBlock, count2, sizeMask) {
+        if (count2 < 1 || count2 > 256) {
+          throw new UnscopedValidationError(lit`MustBeFnCidrSCountAttribute`, `Fn::Cidr's count attribute must be between 1 and 256, ${count2} was provided.`);
+        }
+        super("Fn::Cidr", [ipBlock, count2, sizeMask]);
+      }
+    };
+    FnConditionBase = class extends Intrinsic {
+      disambiguator = true;
+      constructor(type, value) {
+        super({ [type]: value });
+      }
+    };
+    FnAnd = class extends FnConditionBase {
+      constructor(...condition) {
+        super("Fn::And", condition);
+      }
+    };
+    FnEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Equals`` condition function.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       */
+      constructor(lhs, rhs) {
+        super("Fn::Equals", [lhs, rhs]);
+      }
+    };
+    FnIf = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::If`` condition function.
+       * @param condition A reference to a condition in the Conditions section. Use the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition evaluates to false.
+       */
+      constructor(condition, valueIfTrue, valueIfFalse) {
+        super("Fn::If", [condition, valueIfTrue, valueIfFalse]);
+      }
+    };
+    FnNot = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Not`` condition function.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true or false.
+       */
+      constructor(condition) {
+        super("Fn::Not", [condition]);
+      }
+    };
+    FnOr = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Or`` condition function.
+       * @param condition A condition that evaluates to true or false.
+       */
+      constructor(...condition) {
+        super("Fn::Or", condition);
+      }
+    };
+    FnContains = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Contains`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::Contains", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberEquals`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::EachMemberEquals", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberIn = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberIn`` function.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS CloudFormation checks whether each member in the strings_to_check parameter is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member in the strings_to_match parameter is compared against the members of the strings_to_check parameter.
+       */
+      constructor(stringsToCheck, stringsToMatch) {
+        super("Fn::EachMemberIn", [stringsToCheck, stringsToMatch]);
+      }
+    };
+    FnRefAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::RefAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or
+       *            AWS::EC2::VPC::Id. For more information, see Parameters in the AWS
+       *            CloudFormation User Guide.
+       */
+      constructor(parameterType) {
+        super("Fn::RefAll", parameterType);
+      }
+    };
+    FnValueOf = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOf`` function.
+       * @param parameterOrLogicalId The name of a parameter for which you want to retrieve attribute values. The parameter must be declared in the Parameters section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a value.
+       */
+      constructor(parameterOrLogicalId, attribute) {
+        super("Fn::ValueOf", [parameterOrLogicalId, attribute]);
+      }
+    };
+    FnValueOfAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOfAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a value. For more information about attributes, see Supported Attributes.
+       */
+      constructor(parameterType, attribute) {
+        super("Fn::ValueOfAll", [parameterType, attribute]);
+      }
+    };
+    FnJoin = class {
+      creationStack;
+      delimiter;
+      listOfValues;
+      /**
+       * Creates an ``Fn::Join`` function.
+       * @param delimiter The value you want to occur between fragments. The delimiter will occur between fragments only.
+       *          It will not terminate the final value.
+       * @param listOfValues The list of values you want combined.
+       */
+      constructor(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        this.delimiter = delimiter;
+        this.listOfValues = listOfValues;
+      }
+      resolve(context) {
+        if (Token.isUnresolved(this.listOfValues)) {
+          return { "Fn::Join": [this.delimiter, this.listOfValues] };
+        }
+        const resolved = this.resolveValues(context);
+        if (resolved.length === 1) {
+          return resolved[0];
+        }
+        return { "Fn::Join": [this.delimiter, resolved] };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Join" });
+      }
+      toJSON() {
+        return "";
+      }
+      /**
+       * Optimization: if a Fn::Join is nested in another one and they share the same delimiter, then flatten it up. Also,
+       * if two concatenated elements are literal strings (not tokens), then pre-concatenate them with the delimiter, to
+       * generate shorter output.
+       */
+      resolveValues(context) {
+        const resolvedValues = this.listOfValues.map((x) => Reference.isReference(x) ? x : context.resolve(x));
+        return minimalCloudFormationJoin(this.delimiter, resolvedValues);
+      }
+    };
+    FnJoin.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnToJsonString = class {
+      creationStack;
+      object;
+      constructor(object) {
+        this.object = object;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::ToJsonString": this.object };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::ToJsonString" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnToJsonString.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnLength = class {
+      creationStack;
+      array;
+      constructor(array) {
+        this.array = array;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::Length": this.array };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Length" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnLength.prototype.creationStack = ["Token stack traces are no longer captured"];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-pseudo.ts
+function pseudoString(name) {
+  return Token.asString({ Ref: name }, { displayHint: name.replace("::", ".") });
+}
+var AWS_ACCOUNTID, AWS_URLSUFFIX, AWS_NOTIFICATIONARNS, AWS_PARTITION, AWS_REGION, AWS_STACKID, AWS_STACKNAME, AWS_NOVALUE, Aws, ScopedAws;
+var init_cfn_pseudo = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-pseudo.ts"() {
+    "use strict";
+    init_cfn_reference();
+    init_token();
+    AWS_ACCOUNTID = "AWS::AccountId";
+    AWS_URLSUFFIX = "AWS::URLSuffix";
+    AWS_NOTIFICATIONARNS = "AWS::NotificationARNs";
+    AWS_PARTITION = "AWS::Partition";
+    AWS_REGION = "AWS::Region";
+    AWS_STACKID = "AWS::StackId";
+    AWS_STACKNAME = "AWS::StackName";
+    AWS_NOVALUE = "AWS::NoValue";
+    Aws = class {
+      static ACCOUNT_ID = pseudoString(AWS_ACCOUNTID);
+      static URL_SUFFIX = pseudoString(AWS_URLSUFFIX);
+      static NOTIFICATION_ARNS = Token.asList({ Ref: AWS_NOTIFICATIONARNS }, { displayHint: AWS_NOTIFICATIONARNS });
+      static PARTITION = pseudoString(AWS_PARTITION);
+      static REGION = pseudoString(AWS_REGION);
+      static STACK_ID = pseudoString(AWS_STACKID);
+      static STACK_NAME = pseudoString(AWS_STACKNAME);
+      static NO_VALUE = pseudoString(AWS_NOVALUE);
+      constructor() {
+      }
+    };
+    ScopedAws = class {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      get accountId() {
+        return this.asString(AWS_ACCOUNTID);
+      }
+      get urlSuffix() {
+        return this.asString(AWS_URLSUFFIX);
+      }
+      get notificationArns() {
+        return Token.asList(CfnReference.forPseudo(AWS_NOTIFICATIONARNS, this.scope), {
+          displayHint: AWS_NOTIFICATIONARNS
+        });
+      }
+      get partition() {
+        return this.asString(AWS_PARTITION);
+      }
+      get region() {
+        return this.asString(AWS_REGION);
+      }
+      get stackId() {
+        return this.asString(AWS_STACKID);
+      }
+      get stackName() {
+        return this.asString(AWS_STACKNAME);
+      }
+      asString(name) {
+        return Token.asString(CfnReference.forPseudo(name, this.scope), { displayHint: name });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource-policy.ts
+var init_cfn_resource_policy = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource-policy.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts
+var init_cfn_parse = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource_policy();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_cfn_reference();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts
+function getPrecreatedRoleConfig(scope, rolePath) {
+  const precreatedRolePath = rolePath ?? scope.node.path;
+  const customizeRolesContext = scope.node.tryGetContext(CUSTOMIZE_ROLES_CONTEXT_KEY);
+  if (customizeRolesContext !== void 0) {
+    const customizeRoles = customizeRolesContext;
+    if (customizeRoles.preventSynthesis === false) {
+      return {
+        preventSynthesis: false,
+        enabled: true
+      };
+    }
+    if (customizeRoles.usePrecreatedRoles?.hasOwnProperty(precreatedRolePath)) {
+      if (Token.isUnresolved(customizeRoles.usePrecreatedRoles[precreatedRolePath])) {
+        Annotations.of(scope)._addTrackableError(
+          lit`UnresolvablePrecreatedRoleName`,
+          `Cannot resolve precreated role name at path "${precreatedRolePath}". The value may be a token.`
+        );
+      } else {
+        return {
+          enabled: true,
+          preventSynthesis: true,
+          precreatedRoleName: customizeRoles.usePrecreatedRoles[precreatedRolePath]
+        };
+      }
+    } else {
+      Annotations.of(scope)._addTrackableError(
+        lit`MissingPrecreatedRoleName`,
+        `IAM Role is being created at path "${precreatedRolePath}" and customizeRoles.preventSynthesis is enabled. You must provide a precreated role name in customizeRoles.precreatedRoles`
+      );
+    }
+    return {
+      enabled: true,
+      preventSynthesis: true
+    };
+  }
+  return { enabled: false };
+}
+var fs9, path10, import_constructs10, POLICY_SYNTHESIZER_ID, PolicySynthesizerTokenResolver, PolicySynthesizer, CUSTOMIZE_ROLES_CONTEXT_KEY;
+var init_customize_roles = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts"() {
+    "use strict";
+    fs9 = __toESM(require("fs"));
+    path10 = __toESM(require("path"));
+    import_constructs10 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_errors();
+    init_literal_string();
+    init_reference();
+    init_resolvable();
+    init_token();
+    POLICY_SYNTHESIZER_ID = "PolicySynthesizer";
+    PolicySynthesizerTokenResolver = class extends DefaultTokenResolver {
+      constructor(concat) {
+        super(concat);
+      }
+      /**
+       * PolicySynthesizer Token resolution
+       *
+       * Resolve the Token until the token can be resolved into
+       * "(Path/To/SomeResource.Arn)" format. Otherwise, recurse
+       * into whatever it returns,
+       */
+      resolveToken(t, context, postProcessor) {
+        try {
+          let resolved = t.resolve(context);
+          const resolvable = Tokenization.reverseString(resolved);
+          if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+            return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+          }
+          resolved = context.resolve(resolved);
+          resolved = postProcessor.postProcess(resolved, context);
+          return resolved;
+        } catch (e) {
+          let message = `Resolution error: ${e.message}.`;
+          if (t.creationStack && t.creationStack.length > 0) {
+            message += `
+Object creation stack:
+  at ${t.creationStack.join("\n  at ")}`;
+          }
+          e.message = message;
+          throw e;
+        }
+      }
+    };
+    PolicySynthesizer = class _PolicySynthesizer extends import_constructs10.Construct {
+      static getOrCreate(scope) {
+        const synthesizer = scope.node.root.node.tryFindChild(POLICY_SYNTHESIZER_ID);
+        if (synthesizer) {
+          return synthesizer;
+        }
+        return new _PolicySynthesizer(scope);
+      }
+      _scope;
+      roleReport = {};
+      managedPolicyReport = {};
+      constructor(scope) {
+        super(scope.node.root, POLICY_SYNTHESIZER_ID);
+        this._scope = scope;
+        attachCustomSynthesis(this, {
+          onSynthesize: (session) => {
+            const report = this.createJsonReport();
+            if (report.roles?.length > 0) {
+              const filePath = path10.join(session.outdir, "iam-policy-report");
+              fs9.writeFileSync(filePath + ".txt", this.createHumanReport(report));
+              fs9.writeFileSync(filePath + ".json", JSON.stringify(report, void 0, 2));
+            }
+          }
+        });
+      }
+      createJsonReport() {
+        return Object.entries(this.roleReport).reduce((acc, [key, value]) => {
+          const { policyArns, policyStatements } = this.renderManagedPoliciesForRole(key, value.managedPolicies);
+          acc = {
+            roles: [
+              ...acc.roles ?? [],
+              {
+                roleConstructPath: key,
+                roleName: value.missing ? "missing role" : value.roleName,
+                missing: value.missing,
+                assumeRolePolicy: this.resolveReferences(value.assumeRolePolicy),
+                managedPolicyArns: this.resolveReferences(policyArns),
+                managedPolicyStatements: this.resolveReferences(policyStatements),
+                identityPolicyStatements: this.resolveReferences(value.policyStatements)
+              }
+            ]
+          };
+          return acc;
+        }, {});
+      }
+      createHumanReport(report) {
+        return report.roles.map((role) => [
+          `<${role.missing ? "missing role" : role.roleName}> (${role.roleConstructPath})`,
+          "",
+          "AssumeRole Policy:",
+          ...this.toJsonString(role.assumeRolePolicy),
+          "",
+          "Managed Policy ARNs:",
+          ...this.toJsonString(role.managedPolicyArns),
+          "",
+          "Managed Policies Statements:",
+          this.toJsonString(role.managedPolicyStatements),
+          "",
+          "Identity Policy Statements:",
+          this.toJsonString(role.identityPolicyStatements)
+        ].join("\n")).join("\n\n");
+      }
+      /**
+       * Takes a value and returns a formatted JSON string
+       */
+      toJsonString(value) {
+        if (Array.isArray(value) && value.length === 0 || !value) {
+          return ["NONE"];
+        }
+        return [JSON.stringify({ values: value }.values, void 0, 2)];
+      }
+      /**
+       * IAM managed policies can be attached to a role using a couple different methods.
+       *
+       * 1. You can use an existing managed policy, i.e. ManagedPolicy.fromManagedPolicyName()
+       * 2. You can create a managed policy and attach the role, i.e.
+       *   new ManagedPolicy(scope, 'ManagedPolicy', { roles: [myRole] });
+       * 3. You can create a managed policy and attach it to the role, i.e.
+       *   const role = new Role(...);
+       *   role.addManagedPolicy(new ManagedPolicy(...));
+       *
+       * For 1, CDK is not creating the managed policy so we just need to report the ARN
+       * of the policy that needs to be attached to the role.
+       *
+       * For 2 & 3, CDK _is_ creating the managed policy so instead of reporting the name or ARN of the
+       * policy (that we prevented being created) we should instead report the policy statements
+       * that are part of that document. It doesn't really matter if the admins creating the roles then
+       * decide to use managed policies or inline policies, etc.
+       *
+       * There could be managed policies that are created and _not_ attached to any roles, in that case
+       * we do not report anything. That managed policy is not being created automatically by our constructs.
+       */
+      renderManagedPoliciesForRole(rolePath, managedPolicies) {
+        const policyStatements = [];
+        Object.values(this.managedPolicyReport).forEach((value) => {
+          if (value.roles?.includes(rolePath)) {
+            policyStatements.push(...value.policyStatements);
+          }
+        });
+        const policyArns = [];
+        managedPolicies.forEach((policy) => {
+          if (import_constructs10.Construct.isConstruct(policy)) {
+            if (this.managedPolicyReport.hasOwnProperty(policy.node.path)) {
+              policyStatements.push(...this.managedPolicyReport[policy.node.path].policyStatements);
+            } else {
+              policyArns.push(policy.managedPolicyArn);
+            }
+          } else {
+            policyArns.push(policy.managedPolicyArn);
+          }
+        });
+        return {
+          policyArns,
+          policyStatements
+        };
+      }
+      /**
+       * Resolve any references and replace with a more user friendly value. This is the value
+       * that will appear in the report, so instead of getting something like this (not very useful):
+       *
+       *     "Resource": {
+       *       "Fn::Join": [
+       *         "",
+       *         [
+       *           "arn:",
+       *           {
+       *             "Ref": "AWS::Partition"
+       *           },
+       *           ":iam::",
+       *           {
+       *             "Ref": "AWS::AccountId"
+       *           },
+       *           ":role/Role"
+       *         ]
+       *       ]
+       *     }
+       *
+       * We will instead get:
+       *
+       *     "Resource": "arn:(PARTITION):iam::(ACCOUNT):role/Role"
+       *
+       * Or if referencing a resource attribute
+       *
+       *     "Resource": {
+       *       "Fn::GetAtt": [
+       *         "SomeResource",
+       *         "Arn"
+       *       ]
+       *     }
+       *
+       * Becomes
+       *
+       *     "(Path/To/SomeResource.Arn)"
+       */
+      resolveReferences(ref) {
+        if (Array.isArray(ref) && ref.length === 0 || !ref) {
+          return [];
+        }
+        if (Array.isArray(ref)) {
+          return ref.map((r) => this.resolveReferences(r));
+        } else if (typeof ref === "object") {
+          return this.resolveJsonObject(ref);
+        }
+        const resolvable = Tokenization.reverseString(ref);
+        if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+          return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+        } else {
+          const resolvedTokens = resolvable.mapTokens({
+            mapToken: (r) => {
+              if (Reference.isReference(r)) {
+                return `(${r.target.node.path}.${r.displayName})`;
+              }
+              const resolved = Tokenization.resolve(r, {
+                scope: this._scope,
+                resolver: new PolicySynthesizerTokenResolver(new StringConcat())
+              });
+              if (typeof resolved === "object" && resolved.hasOwnProperty("Ref")) {
+                switch (resolved.Ref) {
+                  case "AWS::AccountId":
+                    return "(ACCOUNT)";
+                  case "AWS::Partition":
+                    return "(PARTITION)";
+                  case "AWS::Region":
+                    return "(REGION)";
+                  case "AWS::NoValue":
+                    return "(NOVALUE)";
+                  default:
+                    return r;
+                }
+              }
+              if (Token.isUnresolved(r) && typeof resolved === "string" && resolved) {
+                return resolved;
+              }
+              return r;
+            }
+          });
+          return resolvedTokens.join(new StringConcat());
+        }
+      }
+      resolveJsonObject(statement) {
+        const newStatement = statement;
+        for (const [key, value] of Object.entries(statement)) {
+          newStatement[key] = this.resolveReferences(value);
+        }
+        return newStatement;
+      }
+      /**
+       * Add an IAM role to the report
+       *
+       * @param rolePath the construct path of the role
+       * @param options the values associated with the role
+       */
+      addRole(rolePath, options) {
+        if (this.roleReport.hasOwnProperty(rolePath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryRole`, `IAM Policy Report already has an entry for role: ${rolePath}`, this);
+        }
+        this.roleReport[rolePath] = options;
+      }
+      /**
+       * Add an IAM Managed Policy to the report
+       *
+       * @param policyPath the construct path of the managed policy
+       * @param options the values associated with the managed policy
+       */
+      addManagedPolicy(policyPath, options) {
+        if (this.managedPolicyReport.hasOwnProperty(policyPath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryManaged`, `IAM Policy Report already has an entry for managed policy: ${policyPath}`, this);
+        }
+        this.managedPolicyReport[policyPath] = options;
+      }
+    };
+    CUSTOMIZE_ROLES_CONTEXT_KEY = "@aws-cdk/iam:customizeRoles";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts
+function replaceAll(s, search, replace) {
+  return s.split(search).join(replace);
+}
+function resolvedOr(x, def) {
+  return Token.isUnresolved(x) ? def : x;
+}
+var StringSpecializer, CFN_TOKENS;
+var init_string_specializer = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+    init_token();
+    StringSpecializer = class _StringSpecializer {
+      constructor(stack, qualifier) {
+        this.stack = stack;
+        this.qualifier = qualifier;
+      }
+      stack;
+      qualifier;
+      /**
+       * Validate that the given string does not contain tokens
+       */
+      static validateNoTokens(s, what) {
+        if (Token.isUnresolved(s)) {
+          throw new UnscopedValidationError(lit`TokensNotAllowed`, `${what} may not contain tokens; only the following literal placeholder strings are allowed: ` + [
+            "${Qualifier}",
+            (void 0).CURRENT_REGION,
+            (void 0).CURRENT_ACCOUNT,
+            (void 0).CURRENT_PARTITION
+          ].join(", ") + `. Got: ${s}`);
+        }
+      }
+      /**
+       * Function to replace placeholders in the input string as much as possible
+       *
+       * We replace:
+       * - ${Qualifier}: always
+       * - ${AWS::AccountId}, ${AWS::Region}: only if we have the actual values available
+       * - ${AWS::Partition}: never, since we never have the actual partition value.
+       */
+      specialize(s) {
+        s = replaceAll(s, "${Qualifier}", this.qualifier);
+        return (void 0).replace(s, {
+          region: resolvedOr(this.stack.region, (void 0).CURRENT_REGION),
+          accountId: resolvedOr(this.stack.account, (void 0).CURRENT_ACCOUNT),
+          partition: (void 0).CURRENT_PARTITION
+        });
+      }
+      /**
+       * Specialize the given string, make sure it doesn't contain tokens
+       */
+      specializeNoTokens(s, what) {
+        _StringSpecializer.validateNoTokens(s, what);
+        return this.specialize(s);
+      }
+      /**
+       * Specialize only the qualifier
+       */
+      qualifierOnly(s) {
+        return replaceAll(s, "${Qualifier}", this.qualifier);
+      }
+    };
+    CFN_TOKENS = [Aws.PARTITION, Aws.REGION, Aws.ACCOUNT_ID];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts
+var init_validate_all_props = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/strings.ts
+var init_strings = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/strings.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/feature-flag-report.ts
+function parseFeatureFlagInfo(flagName, info, root) {
+  const userValue = root.node.tryGetContext(flagName) ?? void 0;
+  let parsedFlag = {
+    userValue,
+    recommendedValue: info.recommendedValue,
+    explanation: info.summary,
+    // This is a historical accident. We used to copy all `unconfiguredBehavesLike` data
+    // into the feature flag report, but we only needed to copy the behavior of the current library version.
+    // In order to not break existing reports, we keep the same structure, but we baptize the 'v2' field as
+    // the canonical name of the "current version" field, even for v3, v4, etc.
+    // It looks weird, but it's safe & backwards compatible.
+    unconfiguredBehavesLike: info.unconfiguredBehavesLike?.[CURRENT_MV] ? {
+      v2: info.unconfiguredBehavesLike?.[CURRENT_MV]
+    } : void 0
+  };
+  return parsedFlag;
+}
+function generateFeatureFlagReport(builder, root) {
+  const featureFlags = {};
+  for (const [flagName, flagInfo] of Object.entries(FLAGS)) {
+    if (CURRENT_VERSION_EXPIRED_FLAGS.includes(flagName)) {
+      continue;
+    }
+    featureFlags[flagName] = parseFeatureFlagInfo(flagName, flagInfo, root);
+  }
+  builder.addArtifact("aws-cdk-lib/feature-flag-report", {
+    type: import_cloud_assembly_schema.ArtifactType.FEATURE_FLAG_REPORT,
+    properties: {
+      module: "aws-cdk-lib",
+      flags: featureFlags
+    }
+  });
+}
+var import_cloud_assembly_schema;
+var init_feature_flag_report = __esm({
+  "../../aws-cdk-lib/core/lib/private/feature-flag-report.ts"() {
+    "use strict";
+    import_cloud_assembly_schema = __toESM(require_lib2());
+    init_features();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-condition.ts
+var CfnCondition;
+var init_cfn_condition = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-condition.ts"() {
+    "use strict";
+    init_cfn_element();
+    CfnCondition = class extends CfnElement {
+      /**
+       * The condition statement.
+       */
+      expression;
+      /**
+       * Build a new condition. The condition must be constructed with a condition token,
+       * that the condition is based on.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.expression = props && props.expression;
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.expression) {
+          return {};
+        }
+        return {
+          Conditions: {
+            [this.logicalId]: this.expression
+          }
+        };
+      }
+      /**
+       * Synthesizes the condition.
+       */
+      resolve(_context) {
+        return { Condition: this.logicalId };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/metadata-resource.ts
+function filteredConstructAnalyticsFromStack(scope) {
+  const includeAdditionalTelemetry = FeatureFlags.of(scope).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false;
+  const constructAnalytics = constructAnalyticsFromScope(scope);
+  if (includeAdditionalTelemetry) {
+    return constructAnalytics;
+  }
+  return constructAnalytics.map(retainAlwaysReportedAnalytics);
+  function retainAlwaysReportedAnalytics(analytics) {
+    return {
+      fqn: analytics.fqn,
+      version: analytics.version,
+      metadata: analytics.metadata
+    };
+  }
+}
+function makeCdkMetadataAvailableCondition() {
+  return Fn.conditionOr(...RegionInfo.regions.filter((ri) => ri.cdkMetadataResourceAvailable).map((ri) => Fn.conditionEquals(Aws.REGION, ri.name)));
+}
+function formatAnalytics(infos) {
+  const trie = new Trie();
+  infos.forEach((info) => insertFqnInTrie(`${info.version}!${info.fqn}`, trie, [info.metadata, info.additionalTelemetry].flatMap((a) => a ?? [])));
+  const plaintextEncodedConstructs = prefixEncodeTrie(trie);
+  const compressedConstructsBuffer = zlib.gzipSync(Buffer.from(plaintextEncodedConstructs));
+  setGzipOperatingSystemToUnknown(compressedConstructsBuffer);
+  const compressedConstructs = compressedConstructsBuffer.toString("base64");
+  const analyticsString = `v2:deflate64:${compressedConstructs}`;
+  if (process.env.CDK_CONTEXT_JSON && JSON.parse(process.env.CDK_CONTEXT_JSON)["cdk-migrate"]) {
+    const compressedAppInfoBuffer = zlib.gzipSync(Buffer.from("cdk-migrate"));
+    const compressedAppInfo = compressedAppInfoBuffer.toString("base64");
+    analyticsString.concat(":", compressedAppInfo);
+  }
+  return analyticsString;
+}
+function insertFqnInTrie(fqn, trie, metadata) {
+  for (const fqnPart of fqn.replace(/[^a-z0-9]/gi, "$& ").split(" ")) {
+    const nextLevelTreeRef = trie.get(fqnPart) ?? new Trie();
+    trie.set(fqnPart, nextLevelTreeRef);
+    trie = nextLevelTreeRef;
+  }
+  if (metadata?.length) {
+    trie.set(JSON.stringify(metadata), new Trie());
+  }
+  return trie;
+}
+function prefixEncodeTrie(trie) {
+  let prefixEncoded = "";
+  let isFirstEntryAtLevel = true;
+  [...trie.entries()].forEach(([key, value]) => {
+    if (!isFirstEntryAtLevel) {
+      prefixEncoded += ",";
+    }
+    isFirstEntryAtLevel = false;
+    prefixEncoded += key;
+    if (value.size > 1) {
+      prefixEncoded += "{";
+      prefixEncoded += prefixEncodeTrie(value);
+      prefixEncoded += "}";
+    } else {
+      prefixEncoded += prefixEncodeTrie(value);
+    }
+  });
+  return prefixEncoded;
+}
+function setGzipOperatingSystemToUnknown(gzipBuffer) {
+  if (gzipBuffer[0] !== 31 || gzipBuffer[1] !== 139) {
+    throw new AssumptionError(lit`ExpectingGzipBufferMust`, "Expecting a gzip buffer (must start with 0x1f8b)");
+  }
+  gzipBuffer[9] = 255;
+}
+var zlib, import_constructs11, MetadataResource, Trie;
+var init_metadata_resource2 = __esm({
+  "../../aws-cdk-lib/core/lib/private/metadata-resource.ts"() {
+    "use strict";
+    zlib = __toESM(require("zlib"));
+    import_constructs11 = __toESM(require_lib4());
+    init_cx_api();
+    init_region_info2();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_token();
+    init_literal_string();
+    init_stack_metadata();
+    MetadataResource = class extends import_constructs11.Construct {
+      constructor(scope, id) {
+        super(scope, id);
+        const metadataServiceExists = Token.isUnresolved(scope.region) || RegionInfo.get(scope.region).cdkMetadataResourceAvailable;
+        if (metadataServiceExists) {
+          const constructAnalytics = filteredConstructAnalyticsFromStack(scope);
+          const resource = new CfnResource(this, "Default", {
+            type: "AWS::CDK::Metadata",
+            properties: {
+              Analytics: Lazy.string({ produce: () => formatAnalytics(constructAnalytics) })
+            }
+          });
+          if (Token.isUnresolved(scope.region)) {
+            const condition = new CfnCondition(this, "Condition", {
+              expression: makeCdkMetadataAvailableCondition()
+            });
+            condition.overrideLogicalId("CDKMetadataAvailable");
+            resource.cfnOptions.condition = condition;
+          }
+        }
+      }
+    };
+    Trie = class extends Map {
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-output.ts
+var CfnOutput;
+var init_cfn_output = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-output.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_cfn_fn();
+    init_lazy();
+    init_token();
+    init_errors();
+    init_literal_string();
+    init_core_construct_finders();
+    CfnOutput = class extends CfnElement {
+      _description;
+      _condition;
+      _key;
+      _value;
+      _exportName;
+      /**
+       * Creates a CfnOutput value for this stack.
+       * @param scope The parent construct.
+       * @param props CfnOutput properties.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (props.value === void 0) {
+          throw new ValidationError(lit`MissingValueCloudFormationOutput`, `Missing value for CloudFormation output at path "${this.node.path}"`, this);
+        } else if (Array.isArray(props.value)) {
+          throw new ValidationError(lit`CloudformationOutputGivenString`, `CloudFormation output was given a string list instead of a string at path "${this.node.path}"`, this);
+        }
+        this._description = props.description;
+        this._key = props.key;
+        this._value = props.value;
+        this._condition = props.condition;
+        this._exportName = props.exportName;
+        this.node.addValidation({ validate: () => this.validateOutput() });
+      }
+      /**
+       * A String type that describes the output value.
+       * The description can be a maximum of 4 K in length.
+       *
+       * @default - No description.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(description) {
+        this._description = description;
+      }
+      /**
+       * The value of the property returned by the aws cloudformation describe-stacks command.
+       * The value of an output can include literals, parameter references, pseudo-parameters,
+       * a mapping value, or intrinsic functions.
+       */
+      get value() {
+        return this._value;
+      }
+      set value(value) {
+        this._value = value;
+      }
+      /**
+       * A condition to associate with this output value. If the condition evaluates
+       * to `false`, this output value will not be included in the stack.
+       *
+       * @default - No condition is associated with the output.
+       */
+      get condition() {
+        return this._condition;
+      }
+      set condition(condition) {
+        this._condition = condition;
+      }
+      /**
+       * The name used to export the value of this output across stacks.
+       *
+       * To use the value in another stack, pass the value of
+       * `output.importValue` to it.
+       *
+       * @default - the output is not exported
+       */
+      get exportName() {
+        return this._exportName;
+      }
+      set exportName(exportName) {
+        this._exportName = exportName;
+      }
+      /**
+       * Return the `Fn.importValue` expression to import this value into another stack
+       *
+       * The returned value should not be used in the same stack, but in a
+       * different one. It must be deployed to the same environment, as
+       * CloudFormation exports can only be imported in the same Region and
+       * account.
+       *
+       * The is no automatic registration of dependencies between stacks when using
+       * this mechanism, so you should make sure to deploy them in the right order
+       * yourself.
+       *
+       * You can use this mechanism to share values across Stacks in different
+       * Stages. If you intend to share the value to another Stack inside the same
+       * Stage, the automatic cross-stack referencing mechanism is more convenient.
+       */
+      get importValue() {
+        return Fn.importValue(Lazy.uncachedString({
+          produce: (ctx) => {
+            if (stackOf(ctx.scope) === this.stack) {
+              throw new ValidationError(lit`ImportvaluePropertyShouldOnly`, `'importValue' property of '${this.node.path}' should only be used in a different Stack`, this);
+            }
+            if (!this._exportName) {
+              throw new ValidationError(lit`ExportnameCfnoutputOrderOutput`, `Add an exportName to the CfnOutput at '${this.node.path}' in order to use 'output.importValue'`, this);
+            }
+            return this._exportName;
+          }
+        }));
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Outputs: {
+            [this._key ?? this.logicalId]: {
+              Description: this._description,
+              Value: this._value,
+              Export: this._exportName != null ? { Name: this._exportName } : void 0,
+              Condition: this._condition ? this._condition.logicalId : void 0
+            }
+          }
+        };
+      }
+      validateOutput() {
+        const errors = [];
+        if (this._exportName !== void 0 && !Token.isUnresolved(this._exportName)) {
+          if (this._exportName.length === 0) {
+            errors.push("Export name cannot be empty");
+          }
+          if (this._exportName.length > 255) {
+            errors.push(`Export name cannot exceed 255 characters (got ${this._exportName.length} characters)`);
+          }
+          if (!/^[A-Za-z0-9-:]*$/.test(this._exportName)) {
+            errors.push(`Export name must only include alphanumeric characters, colons, or hyphens (got '${this._exportName}')`);
+          }
+        }
+        return errors;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-parameter.ts
+function isListType(type) {
+  return type.indexOf("List<") >= 0 || type.indexOf("CommaDelimitedList") >= 0;
+}
+function isNumberType(type) {
+  return type === "Number";
+}
+function isStringType(type) {
+  return !isListType(type) && !isNumberType(type);
+}
+function typeToTypeHint(type) {
+  if (isListType(type)) {
+    return "string-list" /* STRING_LIST */;
+  } else if (isNumberType(type)) {
+    return "number" /* NUMBER */;
+  }
+  return "string" /* STRING */;
+}
+var CfnParameter;
+var init_cfn_parameter = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-parameter.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_errors();
+    init_cfn_reference();
+    init_literal_string();
+    init_token();
+    init_type_hints();
+    CfnParameter = class extends CfnElement {
+      _type;
+      _default;
+      _allowedPattern;
+      _allowedValues;
+      _constraintDescription;
+      _description;
+      _maxLength;
+      _maxValue;
+      _minLength;
+      _minValue;
+      _noEcho;
+      typeHint;
+      /**
+       * Creates a parameter construct.
+       * Note that the name (logical ID) of the parameter will derive from its `coname` and location
+       * within the stack. Therefore, it is recommended that parameters are defined at the stack level.
+       *
+       * @param scope The parent construct.
+       * @param props The parameter properties.
+       */
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this._type = props.type || "String";
+        this._default = props.default;
+        this._allowedPattern = props.allowedPattern;
+        this._allowedValues = props.allowedValues;
+        this._constraintDescription = props.constraintDescription;
+        this._description = props.description;
+        this._maxLength = props.maxLength;
+        this._maxValue = props.maxValue;
+        this._minLength = props.minLength;
+        this._minValue = props.minValue;
+        this._noEcho = props.noEcho;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * The data type for the parameter (DataType).
+       *
+       * @default String
+       */
+      get type() {
+        return this._type;
+      }
+      set type(type) {
+        this._type = type;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * A value of the appropriate type for the template to use if no value is specified
+       * when a stack is created. If you define constraints for the parameter, you must specify
+       * a value that adheres to those constraints.
+       *
+       * @default - No default value for parameter.
+       */
+      get default() {
+        return this._default;
+      }
+      set default(value) {
+        this._default = value;
+      }
+      /**
+       * A regular expression that represents the patterns to allow for String types.
+       *
+       * @default - No constraints on patterns allowed for parameter.
+       */
+      get allowedPattern() {
+        return this._allowedPattern;
+      }
+      set allowedPattern(pattern) {
+        this._allowedPattern = pattern;
+      }
+      /**
+       * An array containing the list of values allowed for the parameter.
+       *
+       * @default - No constraints on values allowed for parameter.
+       */
+      get allowedValues() {
+        return this._allowedValues;
+      }
+      set allowedValues(values) {
+        this._allowedValues = values;
+      }
+      /**
+       * A string that explains a constraint when the constraint is violated.
+       * For example, without a constraint description, a parameter that has an allowed
+       * pattern of [A-Za-z0-9]+ displays the following error message when the user specifies
+       * an invalid value:
+       *
+       * @default - No description with customized error message when user specifies invalid values.
+       */
+      get constraintDescription() {
+        return this._constraintDescription;
+      }
+      set constraintDescription(desc) {
+        this._constraintDescription = desc;
+      }
+      /**
+       * A string of up to 4000 characters that describes the parameter.
+       *
+       * @default - No description for the parameter.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(desc) {
+        this._description = desc;
+      }
+      /**
+       * An integer value that determines the largest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get maxLength() {
+        return this._maxLength;
+      }
+      set maxLength(len) {
+        this._maxLength = len;
+      }
+      /**
+       * An integer value that determines the smallest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get minLength() {
+        return this._minLength;
+      }
+      set minLength(len) {
+        this._minLength = len;
+      }
+      /**
+       * A numeric value that determines the largest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get maxValue() {
+        return this._maxValue;
+      }
+      set maxValue(len) {
+        this._maxValue = len;
+      }
+      /**
+       * A numeric value that determines the smallest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get minValue() {
+        return this._minValue;
+      }
+      set minValue(len) {
+        this._minValue = len;
+      }
+      /**
+       * Indicates if this parameter is configured with "NoEcho" enabled.
+       */
+      get noEcho() {
+        return !!this._noEcho;
+      }
+      set noEcho(echo) {
+        this._noEcho = echo;
+      }
+      /**
+       * The parameter value as a Token
+       */
+      get value() {
+        return CfnReference.for(this, "Ref", void 0, this.typeHint);
+      }
+      /**
+       * The parameter value, if it represents a string.
+       */
+      get valueAsString() {
+        if (!isStringType(this.type) && !isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string or number type`, this);
+        }
+        return Token.asString(this.value);
+      }
+      /**
+       * The parameter value, if it represents a string list.
+       */
+      get valueAsList() {
+        if (!isListType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string list type`, this);
+        }
+        return Token.asList(this.value);
+      }
+      /**
+       * The parameter value, if it represents a number.
+       */
+      get valueAsNumber() {
+        if (!isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a number type`, this);
+        }
+        return Token.asNumber(this.value);
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Parameters: {
+            [this.logicalId]: {
+              Type: this.type,
+              Default: this.default,
+              AllowedPattern: this.allowedPattern,
+              AllowedValues: this.allowedValues,
+              ConstraintDescription: this.constraintDescription,
+              Description: this.description,
+              MaxLength: this.maxLength,
+              MaxValue: this.maxValue,
+              MinLength: this.minLength,
+              MinValue: this.minValue,
+              NoEcho: this._noEcho
+            }
+          }
+        };
+      }
+      resolve(_context) {
+        return this.value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts
+var SSM_EXPORT_PATH_PREFIX;
+var init_types2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts"() {
+    "use strict";
+    SSM_EXPORT_PATH_PREFIX = "cdk/exports/";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts
+var path11, CrossRegionSsmReaderProvider;
+var init_cross_region_ssm_reader_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts"() {
+    "use strict";
+    path11 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmReaderProvider = class _CrossRegionSsmReaderProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmReaderProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path11.join(__dirname, "cross-region-ssm-reader-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts
+var import_constructs12, ExportReader;
+var init_export_reader_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts"() {
+    "use strict";
+    import_constructs12 = __toESM(require_lib4());
+    init_types2();
+    init_cfn_resource();
+    init_custom_resource();
+    init_cross_region_ssm_reader_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    ExportReader = class _ExportReader extends import_constructs12.Construct {
+      static getOrCreate(scope, uniqueId, _props = {}) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportReader(stack, uniqueId);
+      }
+      importParameters = Box.fromMap();
+      customResource;
+      constructor(scope, id, _props = {}) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const resourceType = "Custom::CrossRegionExportReader";
+        const serviceToken = CrossRegionSsmReaderProvider.getOrCreate(this, resourceType, {
+          policyStatements: [{
+            Effect: "Allow",
+            Resource: stack.formatArn({
+              service: "ssm",
+              resource: "parameter",
+              resourceName: `${SSM_EXPORT_PATH_PREFIX}${stack.stackName}/*`
+            }),
+            Action: [
+              "ssm:AddTagsToResource",
+              "ssm:RemoveTagsFromResource",
+              "ssm:GetParameters"
+            ]
+          }]
+        });
+        const properties = {
+          region: stack.region,
+          prefix: stack.stackName,
+          imports: this.importParameters.derive((m) => Object.fromEntries(m))
+        };
+        this.customResource = new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken,
+          properties: {
+            ReaderProps: properties
+          }
+        });
+      }
+      /**
+       * This is the only way to add a dependency on a custom resource currently
+       */
+      addDependency(resource) {
+        const customResource = this.customResource.node.tryFindChild("Default");
+        if (customResource && CfnResource.isCfnResource(customResource)) {
+          customResource.addDependsOn(resource);
+        }
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exports map of unique name associated with the export to SSM Dynamic reference
+       */
+      importValue(name, value) {
+        this.importParameters.put(name, value.toString());
+        return this.customResource.getAtt(name);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts
+var CfnDynamicReference;
+var init_cfn_dynamic_reference = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts"() {
+    "use strict";
+    init_intrinsic();
+    CfnDynamicReference = class extends Intrinsic {
+      constructor(service, key) {
+        super("{{resolve:" + service + ":" + key + "}}");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts
+var path12, CrossRegionSsmWriterProvider;
+var init_cross_region_ssm_writer_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts"() {
+    "use strict";
+    path12 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmWriterProvider = class _CrossRegionSsmWriterProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmWriterProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path12.join(__dirname, "cross-region-ssm-writer-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts
+var import_constructs13, CRProvider, ExportWriter;
+var init_export_writer_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts"() {
+    "use strict";
+    import_constructs13 = __toESM(require_lib4());
+    init_export_reader_provider();
+    init_types2();
+    init_cfn_dynamic_reference();
+    init_custom_resource();
+    init_cross_region_ssm_writer_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_uniqueid();
+    init_token();
+    CRProvider = class _CRProvider extends CrossRegionSsmWriterProvider {
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = stackOf(scope);
+        const provider = stack.node.tryFindChild(id) ?? new _CRProvider(stack, id, props);
+        return provider;
+      }
+      resourceArns = Box.fromSet();
+      constructor(scope, id, props) {
+        super(scope, id, props);
+        this.addToRolePolicy({
+          Effect: "Allow",
+          Resource: this.resourceArns.derive(Array.from),
+          Action: [
+            "ssm:DeleteParameters",
+            "ssm:ListTagsForResource",
+            "ssm:GetParameters",
+            "ssm:PutParameter"
+          ]
+        });
+      }
+      /**
+       * Add a resource ARN to the existing policy statement
+       */
+      addResourceArn(arn) {
+        this.resourceArns.add(arn);
+      }
+    };
+    ExportWriter = class _ExportWriter extends import_constructs13.Construct {
+      static getOrCreate(scope, uniqueId, props) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportWriter(stack, uniqueId, {
+          region: props.region
+        });
+      }
+      _references = Box.fromMap();
+      provider;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const region = props.region ?? stack.region;
+        const resourceType = "Custom::CrossRegionExportWriter";
+        this.provider = CRProvider.getOrCreateProvider(this, resourceType);
+        this.addRegionToPolicy(region);
+        const properties = {
+          region,
+          exports: this._references.derive((m) => Object.fromEntries(m))
+        };
+        new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken: this.provider.serviceToken,
+          properties: {
+            WriterProps: properties
+          }
+        });
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exportName the unique name associated with the export
+       * @param reference the value that will be exported
+       * @returns a reference to the reader custom resource
+       */
+      exportValue(exportName, reference, importStack) {
+        const parameterName = this.registerExport(exportName, reference, importStack);
+        const ref = new CfnDynamicReference("ssm" /* SSM */, parameterName);
+        return this.addToExportReader(parameterName, ref, importStack);
+      }
+      /**
+       * Register a reference with the writer without creating an ExportReader in the consumer stack.
+       * Used during the "both" transitional state where the producer still writes to SSM
+       * but the consumer reads via Fn::GetStackOutput instead of the ExportReader.
+       */
+      exportValueWriteOnly(exportName, reference, importStack) {
+        this.registerExport(exportName, reference, importStack);
+      }
+      registerExport(exportName, reference, importStack) {
+        const stack = stackOf(this);
+        const parameterName = `/${SSM_EXPORT_PATH_PREFIX}${exportName}`;
+        this._references.put(parameterName, stack.resolve(reference.toString()));
+        this.addRegionToPolicy(importStack.region);
+        return parameterName;
+      }
+      /**
+       * Add a resource arn for the consuming stack region
+       * Each writer could be writing to multiple regions and needs
+       * permissions to each region.
+       *
+       * If the region is not resolved then do not add anything.
+       */
+      addRegionToPolicy(region) {
+        if (!Token.isUnresolved(region)) {
+          this.provider.addResourceArn(stackOf(this).formatArn({
+            service: "ssm",
+            resource: "parameter",
+            region,
+            resourceName: `${SSM_EXPORT_PATH_PREFIX}*`
+          }));
+        }
+      }
+      /**
+       * Add the export to the export reader which is created in the importing stack
+       */
+      addToExportReader(exportName, exportValueRef, importStack) {
+        const readerConstructName = makeUniqueId(["ExportsReader"]);
+        const exportReader = ExportReader.getOrCreate(importStack.nestedStackParent ?? importStack, readerConstructName);
+        this.addRegionToPolicy(importStack.region);
+        return exportReader.importValue(exportName, exportValueRef);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/linked-queue.ts
+var LinkedQueue;
+var init_linked_queue = __esm({
+  "../../aws-cdk-lib/core/lib/private/linked-queue.ts"() {
+    "use strict";
+    LinkedQueue = class {
+      head;
+      last;
+      constructor(items) {
+        if (items) {
+          for (const x of items) {
+            this.push(x);
+          }
+        }
+      }
+      push(value) {
+        const node = { value };
+        if (this.head && this.last) {
+          this.last.next = node;
+          this.last = node;
+        } else {
+          this.head = node;
+          this.last = node;
+        }
+      }
+      shift() {
+        if (!this.head) {
+          return void 0;
+        }
+        const ret = this.head.value;
+        this.head = this.head.next;
+        if (!this.head) {
+          this.last = void 0;
+        }
+        return ret;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/construct-iteration.ts
+function* iterateDfsPreorder(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    stack.push(...next.node.children.reverse());
+    yield next;
+    next = stack.pop();
+  }
+}
+function* iterateTemplateCfnResources(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    if (NESTED_STACK_TYPE.isMarked(next)) {
+      if (next.nestedStackResource) {
+        yield next.nestedStackResource;
+      }
+    } else if (STACK_TYPE.isMarked(next) || STAGE_TYPE.isMarked(next)) {
+    } else {
+      if (isCfnResource(next)) {
+        yield next;
+      }
+      stack.push(...next.node.children.reverse());
+    }
+    next = stack.pop();
+  }
+}
+function* iterateDfsPostorder(root) {
+  const stack = [{ visit: root }];
+  let next = stack.pop();
+  while (next) {
+    if ("yield" in next) {
+      yield next.yield;
+    } else {
+      stack.push({ yield: next.visit });
+      stack.push(...next.visit.node.children.reverse().map((visit2) => ({ visit: visit2 })));
+    }
+    next = stack.pop();
+  }
+}
+function* iterateBfs(root) {
+  const queue = new LinkedQueue([{ construct: root, parent: void 0 }]);
+  let next = queue.shift();
+  while (next) {
+    for (const child of next.construct.node.children) {
+      queue.push({ construct: child, parent: next.construct });
+    }
+    yield next;
+    next = queue.shift();
+  }
+}
+var init_construct_iteration = __esm({
+  "../../aws-cdk-lib/core/lib/private/construct-iteration.ts"() {
+    "use strict";
+    init_core_construct_finders();
+    init_linked_queue();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts
+var ReferenceStrength;
+var init_cross_stack_reference_strength = __esm({
+  "../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_cx_api();
+    init_literal_string();
+    ReferenceStrength = /* @__PURE__ */ ((ReferenceStrength2) => {
+      ReferenceStrength2["STRONG"] = "strong";
+      ReferenceStrength2["WEAK"] = "weak";
+      ReferenceStrength2["BOTH"] = "both";
+      return ReferenceStrength2;
+    })(ReferenceStrength || {});
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/refs.ts
+function crossStackReferenceStrength(scope) {
+  const value = scope.node.tryGetContext(DEFAULT_CROSS_STACK_REFERENCES);
+  if (value === void 0 || value === null) {
+    return void 0;
+  }
+  if (Object.values(ReferenceStrength).includes(value)) {
+    return value;
+  }
+  throw new UnscopedValidationError(
+    lit`InvalidReferenceStrength`,
+    `Invalid value for ${DEFAULT_CROSS_STACK_REFERENCES}: "${value}". Must be "strong", "weak", or "both".`
+  );
+}
+function resolveReferences(scope) {
+  resolveReferencesInElements(iterateDfsPreorder(scope));
+}
+function resolveReferencesInElements(elements) {
+  const { refs, overrides } = findAllReferences(elements);
+  for (const { source, value } of refs) {
+    const consumer = stackOf(source);
+    if (!value.hasValueForStack(consumer)) {
+      const resolved = resolveValue(consumer, value);
+      value.assignValueForStack(consumer, resolved);
+    }
+  }
+  for (const { source, override } of overrides) {
+    const consumer = stackOf(source);
+    const resolved = resolveValue(consumer, override.reference, override.strength);
+    override.assignValue(resolved);
+  }
+}
+function resolveValue(consumer, reference, strengthOverride) {
+  const producer = stackOf(reference.target);
+  const producerAccount = !Token.isUnresolved(producer.account) ? producer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const producerRegion = !Token.isUnresolved(producer.region) ? producer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const consumerAccount = !Token.isUnresolved(consumer.account) ? consumer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const consumerRegion = !Token.isUnresolved(consumer.region) ? consumer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const resourceStrength = CfnResource.isCfnResource(reference.target) ? reference.target._crossStackReferenceStrengthOverride : void 0;
+  const strength = strengthOverride ?? resourceStrength ?? crossStackReferenceStrength(consumer) ?? "strong";
+  if (producer === consumer) {
+    return reference;
+  }
+  if (producer.node.root !== consumer.node.root) {
+    throw new UnscopedValidationError(lit`CannotReferenceAcrossApps`, "Cannot reference across apps. Consuming and producing stacks must be defined within the same CDK app.");
+  }
+  if (consumer.nestedStackParent && isNested(consumer, producer)) {
+    const parameterValue = resolveValue(consumer.nestedStackParent, reference);
+    return createNestedStackParameter(consumer, reference, parameterValue);
+  }
+  if (producer.nested) {
+    const outputValue = createNestedStackOutput(producer, reference);
+    const resolvedValue = resolveValue(consumer, outputValue);
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(resolvedValue)));
+    } else {
+      return resolvedValue;
+    }
+  }
+  const appRoot = consumer.node.root;
+  if (!appRoot[WEAK_REFS_WARNING_EMITTED]) {
+    const contextStrength = crossStackReferenceStrength(consumer);
+    if (contextStrength === void 0) {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesDefaultStrong",
+        `No cross-stack-reference strength configured, defaulting to "strong". We recommend you set feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" to "both", then deploy everywhere, then set it to "weak". Alternatively, set it to "strong" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    } else if (contextStrength === "both") {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesBothTransitional",
+        `Feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" currently set to "both". This is a transitory state. After you have finished deploying this application everywhere, set it to "weak". (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    }
+  }
+  if (producerAccount !== consumerAccount) {
+    if (strength === "strong") {
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossAccountRefsAreAlwaysWeak",
+        `Strong references requested, but cross-account references can only be weak. Acknowledge this warning or set "${DEFAULT_CROSS_STACK_REFERENCES}" to "weak" to remove this message.`
+      );
+    }
+    if (consumer.synthesizer.cloudFormationExecutionRole == null) {
+      throw new UnscopedValidationError(
+        lit`NoCfnExecutionRoleForCrossAccountRefs`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Could not find a CloudFormation execution role for the consumer stack. Use a stack synthesizer that provides a CloudFormation execution role, such as DefaultStackSynthesizer (that uses the role from the bootstrap stack), or one that you can customize, such as BootstraplessSynthesizer.`
+      );
+    }
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    const producerStackArn = stackOf(reference.target).formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      consumerRoleArn: consumer.synthesizer.cloudFormationExecutionRole,
+      producerAccount,
+      producerRegion,
+      producerStackArn
+    });
+  }
+  if (producerRegion !== consumerRegion) {
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    consumer.addStackDependency(
+      producer,
+      `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+    );
+    if (strength === "strong") {
+      return createCrossRegionImportValue(reference, consumer);
+    }
+    if (strength === "both") {
+      createCrossRegionExportOnly(reference, consumer);
+    }
+    const producerStackArn = producer.formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      producerStackArn
+    });
+  }
+  consumer.addStackDependency(
+    producer,
+    `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+  );
+  if (strength === "strong") {
+    return createImportValue(reference);
+  }
+  if (strength === "both") {
+    createImportValue(reference);
+  }
+  return createGetStackOutput(reference, {});
+}
+function renderReference(ref) {
+  return `{${ref.target.node.path}[${ref.displayName}]}`;
+}
+function findAllReferences(elements) {
+  const refs = new Array();
+  const overrides = new Array();
+  for (const consumer of elements) {
+    if (!CfnElement.isCfnElement(consumer)) {
+      continue;
+    }
+    try {
+      const tokens = findTokens(consumer, () => consumer._toCloudFormation());
+      for (const token of tokens) {
+        if (CustomCoupledReference.isCustomCoupledReference(token)) {
+          overrides.push({ source: consumer, override: token });
+        } else if (CfnReference.isCfnReference(token)) {
+          refs.push({ source: consumer, value: token });
+        }
+      }
+    } catch (e) {
+      if (e.type === "CfnSynthesisError") {
+        continue;
+      }
+      throw e;
+    }
+  }
+  return { refs, overrides };
+}
+function createImportValue(reference) {
+  const exportingStack = stackOf(reference.target);
+  let importExpr;
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    importExpr = exportingStack.exportStringListValue(reference);
+    return Tokenization.reverseList(importExpr);
+  }
+  importExpr = exportingStack.exportValue(reference);
+  return Tokenization.reverseCompleteString(importExpr);
+}
+function getOrCreateExportWriter(reference, importStack) {
+  const referenceStack = stackOf(reference.target);
+  const exportingStack = referenceStack.nestedStackParent ?? referenceStack;
+  const exportable = getExportable(exportingStack, reference);
+  const id = JSON.stringify(exportingStack.resolve(exportable));
+  const exportName = generateExportName(importStack, reference, id);
+  if (Token.isUnresolved(exportName)) {
+    throw new UnscopedValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(exportingStack.resolve(exportName))}`);
+  }
+  const writerConstructName = makeUniqueId(["ExportsWriter", importStack.region]);
+  const exportWriter = ExportWriter.getOrCreate(exportingStack, writerConstructName, {
+    region: importStack.region
+  });
+  return { exportWriter, exportName };
+}
+function createCrossRegionImportValue(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  const exported = exportWriter.exportValue(exportName, reference, importStack);
+  if (importStack.nestedStackParent) {
+    return createNestedStackParameter(importStack, exported, exported);
+  }
+  return exported;
+}
+function createCrossRegionExportOnly(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  exportWriter.exportValueWriteOnly(exportName, reference, importStack);
+}
+function generateExportName(importStack, reference, id) {
+  const referenceStack = stackOf(reference.target);
+  const components = [
+    referenceStack.stackName ?? "",
+    referenceStack.region,
+    id
+  ];
+  const prefix = `${importStack.nestedStackParent?.stackName ?? importStack.stackName}/`;
+  const localPart = makeUniqueId(components);
+  const maxLength = 900;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function createGetStackOutputRole(scope, id, props) {
+  const consumers = /* @__PURE__ */ new Set([props.consumerRoleArn]);
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Role",
+    properties: {
+      AssumeRolePolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Principal: {
+              AWS: Lazy.any({
+                produce: () => {
+                  const arns = [...consumers].map((arn) => ({ "Fn::Sub": arn }));
+                  return arns.length === 1 ? arns[0] : arns;
+                }
+              })
+            },
+            Action: [
+              "sts:AssumeRole"
+            ]
+          }
+        ]
+      }
+    }
+  });
+  ROLE_CONSUMERS.set(resource, consumers);
+  const roleName = Names.uniqueResourceName(resource, {
+    maxLength: 64
+  });
+  resource.addPropertyOverride("RoleName", roleName);
+  const roleArn = stackOf(scope).formatArn({
+    service: "iam",
+    resource: "role",
+    resourceName: roleName,
+    account: props.producerAccount,
+    arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+    region: ""
+  });
+  return { resource, roleRef: { roleArn, roleName } };
+}
+function addConsumerToRole(roleResource, consumerRoleArn) {
+  const consumers = ROLE_CONSUMERS.get(roleResource);
+  if (consumers) {
+    consumers.add(consumerRoleArn);
+  }
+}
+function createGetStackOutputPolicy(scope, id, props) {
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Policy",
+    properties: {
+      Roles: [Fn.ref(props.role.logicalId)],
+      PolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Action: "cloudformation:DescribeStacks",
+            Resource: props.producerStackArn
+          }
+        ]
+      }
+    }
+  });
+  const policyName = Names.uniqueResourceName(resource, {
+    maxLength: 128
+  });
+  resource.addPropertyOverride("PolicyName", policyName);
+  return { resource, policyRef: { policyId: policyName } };
+}
+function createGetStackOutput(reference, options = {}) {
+  const exportingStack = stackOf(reference.target);
+  const resolved = JSON.stringify(exportingStack.resolve(reference));
+  const outputId = "Output" + resolved;
+  const roleId = "GetStackOutputRole";
+  const policyId = "GetStackOutputPolicy";
+  function createScope(stack) {
+    const scopeName = "Publish";
+    let scope2 = stack.node.tryFindChild(scopeName);
+    if (scope2 === void 0) {
+      scope2 = new import_constructs14.Construct(stack, scopeName);
+    }
+    return scope2;
+  }
+  const scope = createScope(exportingStack);
+  let output = scope.node.tryFindChild(outputId);
+  if (output == null) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(scope, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(scope, outputId, {
+        value: Token.asString(reference)
+      });
+    }
+  }
+  let roleArn = void 0;
+  if (options.consumerRoleArn) {
+    let roleResource = scope.node.tryFindChild(roleId);
+    if (roleResource == null) {
+      const { resource, roleRef } = createGetStackOutputRole(scope, roleId, {
+        consumerRoleArn: options.consumerRoleArn,
+        producerAccount: options.producerAccount
+      });
+      roleResource = resource;
+      roleArn = roleRef.roleArn;
+    } else {
+      addConsumerToRole(roleResource, options.consumerRoleArn);
+      const roleName = Names.uniqueResourceName(roleResource, { maxLength: 64 });
+      roleArn = exportingStack.formatArn({
+        service: "iam",
+        resource: "role",
+        resourceName: roleName,
+        account: options.producerAccount,
+        arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+        region: ""
+      });
+    }
+    let policy = scope.node.tryFindChild(policyId);
+    if (policy == null) {
+      createGetStackOutputPolicy(scope, policyId, {
+        role: roleResource,
+        producerStackArn: options.producerStackArn
+      });
+    }
+  }
+  const getStackOutput = Fn.getStackOutput(exportingStack.stackName, output.logicalId, exportingStack.region, roleArn);
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, getStackOutput));
+  }
+  return Tokenization.reverseCompleteString(getStackOutput);
+}
+function getExportable(stack, reference) {
+  if (CfnElement.isCfnElement(reference.target)) {
+    reference.target._lockLogicalId();
+  }
+  return referenceNestedStackValueInParent(reference, stack);
+}
+function createNestedStackParameter(nested, reference, value) {
+  const paramId = generateUniqueId(nested, reference, "reference-to-");
+  let param = nested.node.tryFindChild(paramId);
+  if (!param) {
+    param = new CfnParameter(nested, paramId, { type: "String" });
+    if (!("setParameter" in nested)) {
+      throw new UnscopedValidationError(lit`NestedStackMustHaveSetParameter`, 'assertion failed: nested stack should have a "setParameter" method');
+    }
+    nested.setParameter(param.logicalId, Token.asString(value));
+  }
+  return param.value;
+}
+function createNestedStackOutput(producer, reference) {
+  const outputId = generateUniqueId(producer, reference);
+  let output = producer.node.tryFindChild(outputId);
+  if (!output) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(producer, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(producer, outputId, { value: Token.asString(reference) });
+    }
+  }
+  if (!producer.nestedStackResource) {
+    throw new AssumptionError(lit`AssertionFailed`, "assertion failed");
+  }
+  return producer.nestedStackResource.getAtt(`Outputs.${output.logicalId}`);
+}
+function referenceNestedStackValueInParent(reference, targetStack) {
+  let currentStack = stackOf(reference.target);
+  if (currentStack !== targetStack && !isNested(currentStack, targetStack)) {
+    throw new UnscopedValidationError(lit`ReferencedResourceMustBeInTargetStack`, `Referenced resource must be in stack '${targetStack.node.path}', got '${reference.target.node.path}'`);
+  }
+  const isNestedListReference = currentStack !== targetStack && reference.typeHint === "string-list" /* STRING_LIST */;
+  while (currentStack !== targetStack) {
+    reference = createNestedStackOutput(stackOf(reference.target), reference);
+    currentStack = stackOf(reference.target);
+  }
+  if (isNestedListReference) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(reference)));
+  }
+  return reference;
+}
+function isNested(nested, parent) {
+  if (nested.nestedStackParent === parent) {
+    return true;
+  }
+  if (!nested.nestedStackParent) {
+    return false;
+  }
+  return isNested(nested.nestedStackParent, parent);
+}
+function generateUniqueId(stack, ref, prefix = "") {
+  return stack.resolve(`${prefix}${Names.nodeUniqueId(ref.target.node)}${ref.displayName}`);
+}
+var import_constructs14, STRING_LIST_REFERENCE_DELIMITER, WEAK_REFS_WARNING_EMITTED, OVERRIDDEN_REFERENCE_SYMBOL, CustomCoupledReference, ROLE_CONSUMERS;
+var init_refs = __esm({
+  "../../aws-cdk-lib/core/lib/private/refs.ts"() {
+    "use strict";
+    import_constructs14 = __toESM(require_lib4());
+    init_cfn_reference();
+    init_intrinsic();
+    init_resolve();
+    init_uniqueid();
+    init_cx_api();
+    init_annotations();
+    init_arn();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_export_writer_provider();
+    init_errors();
+    init_lazy();
+    init_names();
+    init_token();
+    init_type_hints();
+    init_construct_iteration();
+    init_cfn_resource();
+    init_literal_string();
+    init_cross_stack_reference_strength();
+    init_core_construct_finders();
+    STRING_LIST_REFERENCE_DELIMITER = "||";
+    WEAK_REFS_WARNING_EMITTED = /* @__PURE__ */ Symbol.for("@aws-cdk/core.WeakRefsWarningEmitted");
+    OVERRIDDEN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CustomCoupledReference");
+    CustomCoupledReference = class extends Intrinsic {
+      static isCustomCoupledReference(x) {
+        return OVERRIDDEN_REFERENCE_SYMBOL in x;
+      }
+      reference;
+      strength;
+      resolvedValue;
+      constructor(reference, strength) {
+        super(reference, { typeHint: reference.typeHint });
+        this.reference = reference;
+        this.strength = strength;
+        Object.defineProperty(this, OVERRIDDEN_REFERENCE_SYMBOL, { value: true });
+      }
+      assignValue(value) {
+        this.resolvedValue = value;
+      }
+      resolve(context) {
+        if (this.resolvedValue) {
+          return this.resolvedValue.resolve(context);
+        }
+        return this.reference.resolve(context);
+      }
+    };
+    ROLE_CONSUMERS = /* @__PURE__ */ new WeakMap();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deps.ts
+function reifyConstructDependencies(root) {
+  for (const dependency of registeredConstructDependencies(root)) {
+    dispatchDependencyOperation(dependency);
+  }
+}
+function dispatchDependencyOperation(op) {
+  if (op.source === op.target) {
+    return;
+  }
+  if (process.env.CDK_DEBUG_DEPS) {
+    if (op.kind === "add") {
+      console.error(`[CDK_DEBUG_DEPS] applying dependency ${op.reason}`);
+    } else {
+      console.error(`[CDK_DEBUG_DEPS] removing construct dependency ${op.source.node.path} -> ${op.target.node.path}`);
+    }
+  }
+  const sourcePath = dependencyContainerPath(op.source);
+  const targetPath = dependencyContainerPath(op.target);
+  const parentI = sharedDependencyContainerIndex(sourcePath, targetPath);
+  validateNoStagesCrossed(sourcePath, targetPath, op);
+  validateNoParentChildDependency(sourcePath, targetPath, parentI, op);
+  if (parentI < sourcePath.length - 1 && parentI < targetPath.length - 1) {
+    doDispatch(sourcePath[parentI + 1], targetPath[parentI + 1], op);
+  }
+}
+function validateNoStagesCrossed(sourcePath, targetPath, op) {
+  const sourceStage = last(sourcePath.filter((c) => c.type === "stage"))?.construct;
+  const targetStage = last(targetPath.filter((c) => c.type === "stage"))?.construct;
+  if (sourceStage !== targetStage) {
+    throw new UnscopedValidationError(lit`NoCrossStageDependency`, `You cannot have a dependency from '${op.source.node.path}' (in ${describeStage(sourceStage)}) to '${op.target.node.path}' (in ${describeStage(targetStage)}): dependency cannot cross stage boundaries`);
+  }
+}
+function validateNoParentChildDependency(sourcePath, targetPath, parentI, op) {
+  if (parentI === targetPath.length - 1) {
+    throw new UnscopedValidationError(lit`CannotDependOnParent`, `'${op.source.node.path}' cannot depend on parent ${targetPath[parentI].type} '${op.target.node.path}'`);
+  }
+  void sourcePath;
+}
+function doDispatch(source, target, op) {
+  switch (source.type) {
+    case "stage":
+      break;
+    case "stack":
+      if (target.type === "stack") {
+        if (op.kind === "add") {
+          source.construct._addStackDependency(target.construct, op);
+        } else {
+          source.construct._removeStackDependency(target.construct, op);
+        }
+      }
+      break;
+    case "nested-stack":
+    case "construct":
+      for (const sourceResource of dependingResourcesFor(source)) {
+        for (const targetResource of dependingResourcesFor(target)) {
+          if (sourceResource === targetResource) {
+            continue;
+          }
+          if (op.kind === "add") {
+            sourceResource._addResourceDependency(targetResource);
+          } else {
+            sourceResource._removeResourceDependency(targetResource);
+          }
+        }
+      }
+      break;
+  }
+}
+function* dependingResourcesFor(construct) {
+  if (construct.type === "nested-stack" && construct.construct.nestedStackResource) {
+    yield construct.construct.nestedStackResource;
+  }
+  if (construct.type === "construct") {
+    yield* iterateTemplateCfnResources(construct.construct);
+  }
+}
+function dependencyContainerPath(start) {
+  const ret = [];
+  let construct = start;
+  while (construct) {
+    let candidate;
+    if (STAGE_TYPE.isMarked(construct)) {
+      candidate = { type: "stage", construct };
+    } else if (NESTED_STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "nested-stack", construct };
+    } else if (STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "stack", construct };
+    } else {
+      if (ret.length === 0) {
+        candidate = { type: "construct", construct };
+      }
+    }
+    if (candidate && (ret.length === 0 || contains(candidate, ret[ret.length - 1]))) {
+      ret.push(candidate);
+    }
+    construct = construct.node.scope;
+  }
+  return ret.reverse();
+  function contains(container, child) {
+    switch (child.type) {
+      case "stage":
+        return container.type == "stage";
+      case "nested-stack":
+        return container.type == "nested-stack" || container.type == "stack";
+      case "stack":
+        return container.type == "stage";
+      case "construct":
+        return true;
+    }
+  }
+}
+function sharedDependencyContainerIndex(as, bs) {
+  const minLength = Math.min(as.length, bs.length);
+  for (let i = minLength - 1; i >= 0; i--) {
+    if (as[i].construct === bs[i].construct) {
+      return i;
+    }
+  }
+  return -1;
+}
+function* registeredConstructDependencies(root) {
+  const found = /* @__PURE__ */ new Map();
+  for (const source of iterateDfsPreorder(root)) {
+    for (const dependable of source.node.dependencies) {
+      for (const target of import_constructs15.Dependable.of(dependable).dependencyRoots) {
+        if (source === target) {
+          continue;
+        }
+        let foundTargets = found.get(source);
+        if (!foundTargets) {
+          found.set(source, foundTargets = /* @__PURE__ */ new Set());
+        }
+        if (!foundTargets.has(target)) {
+          yield { kind: "add", source, target, reason: `<${source.node.path}>.node.addDependency(<${target.node.path}>)` };
+          foundTargets.add(target);
+        }
+      }
+    }
+  }
+}
+function describeStage(assembly) {
+  if (!assembly) {
+    return "an unrooted construct tree";
+  }
+  if (!assembly.parentStage) {
+    return "the App";
+  }
+  return `Stage '${assembly.node.path}'`;
+}
+function last(xs) {
+  return xs[xs.length - 1];
+}
+var import_constructs15;
+var init_deps = __esm({
+  "../../aws-cdk-lib/core/lib/private/deps.ts"() {
+    "use strict";
+    import_constructs15 = __toESM(require_lib4());
+    init_errors();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/prepare-app.ts
+function writePropertyAssignmentMetadata(root) {
+  if (!debugModeEnabled()) return;
+  const lookupTableFor = (c) => ({
+    cfnPropertyName: (cdkPropertyName) => c.cfnPropertyName(cdkPropertyName)
+  });
+  for (const consumer of iterateDfsPreorder(root)) {
+    if (CfnResource.isCfnResource(consumer)) {
+      writePropertyAssignmentMetadataForConstruct(consumer, () => consumer._toCloudFormation(), lookupTableFor(consumer));
+    }
+  }
+}
+function prepareApp(root) {
+  reifyConstructDependencies(root);
+  resolveReferences(root);
+  writePropertyAssignmentMetadata(root);
+  const nestedStacks = findAllNestedStacks(root);
+  if (nestedStacks.length > 0) {
+    for (const nested of nestedStacks) {
+      defineNestedStackAsset(nested);
+    }
+    resolveReferencesInElements(nestedStacks.map((s) => s.nestedStackResource));
+  }
+}
+function defineNestedStackAsset(nestedStack) {
+  const nested = nestedStack;
+  nested._prepareTemplateAsset();
+}
+function findAllNestedStacks(root) {
+  const result = new Array();
+  const includeStack = (stack) => {
+    if (!STACK_TYPE.isMarked(stack)) {
+      return false;
+    }
+    if (!stack.nested) {
+      return false;
+    }
+    if (!stageOf(stack)) {
+      return true;
+    }
+    return stageOf(stack) === root;
+  };
+  for (const node of iterateDfsPostorder(root)) {
+    if (includeStack(node)) {
+      result.push(node);
+    }
+  }
+  return result;
+}
+var init_prepare_app = __esm({
+  "../../aws-cdk-lib/core/lib/private/prepare-app.ts"() {
+    "use strict";
+    init_refs();
+    init_cfn_resource();
+    init_debug();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_deps();
+    init_resolve();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/validation-id.ts
+function parseValidationId(id) {
+  let nsSeparator = void 0;
+  const braceStack = [];
+  for (let i = 0; i < id.length; i++) {
+    const c = id[i];
+    if (c === ":" && id[i + 1] === ":" && braceStack.length === 0) {
+      if (nsSeparator !== void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. The '::' delimiter is reserved for separating the prefix from the rule name (e.g. 'prefix::RuleName').`);
+      }
+      nsSeparator = i;
+      i += 1;
+    } else if (["]", ")", "}"].includes(c)) {
+      const lastBrace = braceStack.pop();
+      if (lastBrace === void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Unmatched closing brace '${c}' at position ${i}.`);
+      }
+      if (lastBrace === "(" && c !== ")" || lastBrace === "[" && c !== "]" || lastBrace === "{" && c !== "}") {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Mismatched closing brace '${c}' at position ${i}. Expected '${lastBrace === "(" ? ")" : lastBrace === "[" ? "]" : "}"}'.`);
+      }
+    } else if (["[", "(", "{"].includes(c)) {
+      braceStack.push(c);
+    }
+  }
+  if (nsSeparator === void 0) {
+    return { ruleId: id };
+  }
+  if (nsSeparator === 0) {
+    throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Missing plugin name before '::'.`);
+  }
+  const namespace = id.substring(0, nsSeparator);
+  const ruleId = id.substring(nsSeparator + 2);
+  return { namespace, ruleId };
+}
+function normalizeValidationId(id, defaultNamespace) {
+  const p = typeof id === "string" ? parseValidationId(id) : id;
+  const parsed = {
+    namespace: p.namespace?.replaceAll(/ /g, "-"),
+    ruleId: p.ruleId.replaceAll(/ /g, "-")
+  };
+  if (parsed.namespace && ["annotation", "Construct-Annotations"].includes(parsed.namespace)) {
+    return `${ANNOTATION_PLUGIN_NAMESPACE}::${parsed.ruleId}`;
+  }
+  return `${parsed.namespace ?? defaultNamespace}::${parsed.ruleId}`;
+}
+function normalizeValidationIdForAnnotations(id) {
+  return normalizeValidationId(id, ANNOTATION_PLUGIN_NAMESPACE);
+}
+function namespaceFromPluginName(pluginName) {
+  if (pluginName === ANNOTATION_PLUGIN_NAME) {
+    return ANNOTATION_PLUGIN_NAMESPACE;
+  }
+  return pluginName.replace(/ /g, "-");
+}
+function pluginNameFromNamespace(namespace) {
+  return namespace.replace(/-/g, " ");
+}
+var ANNOTATION_PLUGIN_NAME, ANNOTATION_PLUGIN_NAMESPACE;
+var init_validation_id = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/validation-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ANNOTATION_PLUGIN_NAME = "Construct Annotations";
+    ANNOTATION_PLUGIN_NAMESPACE = namespaceFromPluginName("Annotation");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/annotation-plugin.ts
+function collectAnnotationReport(root) {
+  const myNamespace = namespaceFromPluginName(AnnotationPlugin.NAME);
+  const violationMap = /* @__PURE__ */ new Map();
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR) {
+        continue;
+      }
+      const severity = entry.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR ? "error" : "warning";
+      let { message, ruleName } = splitDescriptionAndId(String(entry.data));
+      if (ruleName && !ruleName.includes("::")) {
+        ruleName = `${myNamespace}::${ruleName}`;
+      }
+      let templatePath;
+      try {
+        templatePath = path13.join(stageOf(construct)?.outdir ?? ".", stackOf(construct).templateFile);
+      } catch (e) {
+      }
+      const resourceLogicalId = CfnResource.isCfnResource(construct) ? stackOf(construct).resolve(construct.logicalId) : void 0;
+      const violatingResource = {
+        constructPath: construct.node.path,
+        resourceLogicalId,
+        templatePath,
+        locations: []
+      };
+      const key = `${ruleName}|${severity}|${message}`;
+      const existing = violationMap.get(key);
+      if (existing) {
+        existing.violatingResources.push(violatingResource);
+      } else {
+        violationMap.set(key, {
+          ruleName: ruleName ?? `${myNamespace}::${severity}-annotation`,
+          description: message,
+          severity,
+          violatingResources: [violatingResource],
+          ruleMetadata: {
+            "cdk:annotation": "true"
+          }
+        });
+      }
+    }
+  }
+  const violations = Array.from(violationMap.values());
+  if (violations.length === 0) {
+    return void 0;
+  }
+  const hasErrors = violations.some((v) => v.severity === "error");
+  return new AnnotationPlugin({
+    pluginName: AnnotationPlugin.NAME,
+    success: !hasErrors,
+    violations,
+    metadata: {
+      "cdk:annotations": "true"
+    }
+  });
+}
+function splitDescriptionAndId(message) {
+  const ackMatch = message.match(/\[ack: ([^\]]+)\]/);
+  if (ackMatch) {
+    return { message: message.replace(ackMatch[0], "").trim(), ruleName: ackMatch[1] };
+  }
+  const idMatch = message.match(/\(([^()]+::[^()]+)\)$/);
+  if (idMatch) {
+    return { message: message.replace(idMatch[0], "").trim(), ruleName: idMatch[1] };
+  }
+  return { message };
+}
+var path13, AnnotationPlugin;
+var init_annotation_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/private/annotation-plugin.ts"() {
+    "use strict";
+    path13 = __toESM(require("path"));
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_cloud_assembly_schema();
+    init_cfn_resource();
+    init_validation_id();
+    AnnotationPlugin = class _AnnotationPlugin {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      static NAME = "Construct Annotations";
+      name = _AnnotationPlugin.NAME;
+      validate(_context) {
+        return this.report;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts
+function collectAcknowledgedRules(root) {
+  const rules = {};
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type === "aws:cdk:acknowledged-rules" && entry.data) {
+        for (const [id, reason] of Object.entries(entry.data)) {
+          const rule = { reason, acknowledgedId: id, acknowledgedAt: construct.node.path, acknowledgedStackTrace: entry.trace?.join("\n") };
+          const pathMap = rules[id] ??= {};
+          pathMap[rule.acknowledgedAt] = rule;
+        }
+      }
+    }
+  }
+  return rules;
+}
+var init_collect_acknowledged_rule_ids = __esm({
+  "../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts"() {
+    "use strict";
+    init_construct_iteration();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js
+var require_bindings_wasm = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js"(exports2) {
+    var WasmCelEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCelEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcelengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcelengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcelengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcelengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCelEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcelengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcelengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCelEngine.prototype[Symbol.dispose] = WasmCelEngine.prototype.free;
+    exports2.WasmCelEngine = WasmCelEngine;
+    var WasmCompositeEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCompositeEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcompositeengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcompositeengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcompositeengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {CompositeEngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcompositeengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCompositeEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcompositeengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcompositeengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCompositeEngine.prototype[Symbol.dispose] = WasmCompositeEngine.prototype.free;
+    exports2.WasmCompositeEngine = WasmCompositeEngine;
+    var WasmRegoEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmRegoEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmregoengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmregoengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmregoengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmregoengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmRegoEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmregoengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmregoengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmRegoEngine.prototype[Symbol.dispose] = WasmRegoEngine.prototype.free;
+    exports2.WasmRegoEngine = WasmRegoEngine;
+    var WasmSchemaValidator = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSchemaValidatorFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmschemavalidator_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmschemavalidator_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {SchemaValidatorConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmschemavalidator_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmSchemaValidatorFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @returns {number}
+       */
+      schemaCount() {
+        const ret = wasm.wasmschemavalidator_schemaCount(this.__wbg_ptr);
+        return ret >>> 0;
+      }
+      /**
+       * @param {WasmSemanticModel} model
+       * @param {string | null} [region]
+       * @returns {any}
+       */
+      validate(model, region) {
+        _assertClass(model, WasmSemanticModel);
+        var ptr0 = isLikeNone(region) ? 0 : passStringToWasm0(region, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        var len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmschemavalidator_validate(this.__wbg_ptr, model.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSchemaValidator.prototype[Symbol.dispose] = WasmSchemaValidator.prototype.free;
+    exports2.WasmSchemaValidator = WasmSchemaValidator;
+    var WasmSemanticModel = class _WasmSemanticModel {
+      static __wrap(ptr) {
+        const obj = Object.create(_WasmSemanticModel.prototype);
+        obj.__wbg_ptr = ptr;
+        WasmSemanticModelFinalization.register(obj, obj.__wbg_ptr, obj);
+        return obj;
+      }
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSemanticModelFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmsemanticmodel_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      conditions() {
+        const ret = wasm.wasmsemanticmodel_conditions(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      description() {
+        const ret = wasm.wasmsemanticmodel_description(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      formatVersion() {
+        const ret = wasm.wasmsemanticmodel_formatVersion(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {any}
+       */
+      outputs() {
+        const ret = wasm.wasmsemanticmodel_outputs(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      parameters() {
+        const ret = wasm.wasmsemanticmodel_parameters(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @returns {WasmSemanticModel}
+       */
+      static parse(template) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_parse(ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return _WasmSemanticModel.__wrap(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      resources() {
+        const ret = wasm.wasmsemanticmodel_resources(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {string} path
+       * @returns {any}
+       */
+      sourceLocation(path23) {
+        const ptr0 = passStringToWasm0(path23, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_sourceLocation(this.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      toDiagnosticModel() {
+        const ret = wasm.wasmsemanticmodel_toDiagnosticModel(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      transforms() {
+        const ret = wasm.wasmsemanticmodel_transforms(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSemanticModel.prototype[Symbol.dispose] = WasmSemanticModel.prototype.free;
+    exports2.WasmSemanticModel = WasmSemanticModel;
+    function init() {
+      wasm.init();
+    }
+    exports2.init = init;
+    function version3() {
+      let deferred1_0;
+      let deferred1_1;
+      try {
+        const ret = wasm.version();
+        deferred1_0 = ret[0];
+        deferred1_1 = ret[1];
+        return getStringFromWasm0(ret[0], ret[1]);
+      } finally {
+        wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+      }
+    }
+    exports2.version = version3;
+    function __wbg_get_imports() {
+      const import0 = {
+        __proto__: null,
+        __wbg_Error_92b29b0548f8b746: function(arg0, arg1) {
+          const ret = Error(getStringFromWasm0(arg0, arg1));
+          return ret;
+        },
+        __wbg_Number_9a4e0ecb0fa16705: function(arg0) {
+          const ret = Number(arg0);
+          return ret;
+        },
+        __wbg_String_8564e559799eccda: function(arg0, arg1) {
+          const ret = String(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_bigint_get_as_i64_d968e41184ae354f: function(arg0, arg1) {
+          const v = arg1;
+          const ret = typeof v === "bigint" ? v : void 0;
+          getDataViewMemory0().setBigInt64(arg0 + 8 * 1, isLikeNone(ret) ? BigInt(0) : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_boolean_get_fa956cfa2d1bd751: function(arg0) {
+          const v = arg0;
+          const ret = typeof v === "boolean" ? v : void 0;
+          return isLikeNone(ret) ? 16777215 : ret ? 1 : 0;
+        },
+        __wbg___wbindgen_debug_string_c25d447a39f5578f: function(arg0, arg1) {
+          const ret = debugString(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_in_aca499c5de7ff5e5: function(arg0, arg1) {
+          const ret = arg0 in arg1;
+          return ret;
+        },
+        __wbg___wbindgen_is_bigint_2f76dc55065b4273: function(arg0) {
+          const ret = typeof arg0 === "bigint";
+          return ret;
+        },
+        __wbg___wbindgen_is_function_1ff95bcc5517c252: function(arg0) {
+          const ret = typeof arg0 === "function";
+          return ret;
+        },
+        __wbg___wbindgen_is_object_a27215656b807791: function(arg0) {
+          const val2 = arg0;
+          const ret = typeof val2 === "object" && val2 !== null;
+          return ret;
+        },
+        __wbg___wbindgen_is_string_ea5e6cc2e4141dfe: function(arg0) {
+          const ret = typeof arg0 === "string";
+          return ret;
+        },
+        __wbg___wbindgen_is_undefined_c05833b95a3cf397: function(arg0) {
+          const ret = arg0 === void 0;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_eq_e659fcf7b0e32763: function(arg0, arg1) {
+          const ret = arg0 === arg1;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_loose_eq_db4c3b15f63fc170: function(arg0, arg1) {
+          const ret = arg0 == arg1;
+          return ret;
+        },
+        __wbg___wbindgen_number_get_394265ed1e1b84ee: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "number" ? obj : void 0;
+          getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_string_get_b0ca35b86a603356: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "string" ? obj : void 0;
+          var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          var len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_throw_344f42d3211c4765: function(arg0, arg1) {
+          throw new Error(getStringFromWasm0(arg0, arg1));
+        },
+        __wbg_call_8a2dd23819f8a60a: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = arg0.call(arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_done_89b2b13e91a60321: function(arg0) {
+          const ret = arg0.done;
+          return ret;
+        },
+        __wbg_entries_015dc610cd81ede0: function(arg0) {
+          const ret = Object.entries(arg0);
+          return ret;
+        },
+        __wbg_error_a6fa202b58aa1cd3: function(arg0, arg1) {
+          let deferred0_0;
+          let deferred0_1;
+          try {
+            deferred0_0 = arg0;
+            deferred0_1 = arg1;
+            console.error(getStringFromWasm0(arg0, arg1));
+          } finally {
+            wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
+          }
+        },
+        __wbg_getRandomValues_3f44b700395062e5: function() {
+          return handleError(function(arg0, arg1) {
+            globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
+          }, arguments);
+        },
+        __wbg_getTime_d6f070c088c9b5ed: function(arg0) {
+          const ret = arg0.getTime();
+          return ret;
+        },
+        __wbg_get_507a50627bffa49b: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_c7eb1f358a7654df: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = Reflect.get(arg0, arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_get_unchecked_6e0ad6d2a41b06f6: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_with_ref_key_6412cf3094599694: function(arg0, arg1) {
+          const ret = arg0[arg1];
+          return ret;
+        },
+        __wbg_instanceof_ArrayBuffer_4480b9e0068a8adb: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof ArrayBuffer;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Map_e5b5e3db98422fcc: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Map;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Uint8Array_309b927aaf7a3fc7: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Uint8Array;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_isArray_0677c962b281d01a: function(arg0) {
+          const ret = Array.isArray(arg0);
+          return ret;
+        },
+        __wbg_isSafeInteger_04f36e4056f1b851: function(arg0) {
+          const ret = Number.isSafeInteger(arg0);
+          return ret;
+        },
+        __wbg_iterator_6f722e4a93058b71: function() {
+          const ret = Symbol.iterator;
+          return ret;
+        },
+        __wbg_length_1f0964f4a5e2c6d8: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_length_370319915dc99107: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_new_0_3da9e97f24fc69be: function() {
+          const ret = /* @__PURE__ */ new Date();
+          return ret;
+        },
+        __wbg_new_227d7c05414eb861: function() {
+          const ret = new Error();
+          return ret;
+        },
+        __wbg_new_32b398fb48b6d94a: function() {
+          const ret = new Array();
+          return ret;
+        },
+        __wbg_new_7796ffc7ed656783: function() {
+          const ret = /* @__PURE__ */ new Map();
+          return ret;
+        },
+        __wbg_new_cd45aabdf6073e84: function(arg0) {
+          const ret = new Uint8Array(arg0);
+          return ret;
+        },
+        __wbg_new_da52cf8fe3429cb2: function() {
+          const ret = new Object();
+          return ret;
+        },
+        __wbg_next_6dbf2c0ac8cde20f: function(arg0) {
+          const ret = arg0.next;
+          return ret;
+        },
+        __wbg_next_71f2aa1cb3d1e37e: function() {
+          return handleError(function(arg0) {
+            const ret = arg0.next();
+            return ret;
+          }, arguments);
+        },
+        __wbg_now_e7c6795a7f81e10f: function(arg0) {
+          const ret = arg0.now();
+          return ret;
+        },
+        __wbg_performance_3fcf6e32a7e1ed0a: function(arg0) {
+          const ret = arg0.performance;
+          return ret;
+        },
+        __wbg_prototypesetcall_4770620bbe4688a0: function(arg0, arg1, arg2) {
+          Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), arg2);
+        },
+        __wbg_set_575dd786d51585f8: function(arg0, arg1, arg2) {
+          const ret = arg0.set(arg1, arg2);
+          return ret;
+        },
+        __wbg_set_6be42768c690e380: function(arg0, arg1, arg2) {
+          arg0[arg1] = arg2;
+        },
+        __wbg_set_8a16b38e4805b298: function(arg0, arg1, arg2) {
+          arg0[arg1 >>> 0] = arg2;
+        },
+        __wbg_stack_3b0d974bbf31e44f: function(arg0, arg1) {
+          const ret = arg1.stack;
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg_static_accessor_GLOBAL_4ef717fb391d88b7: function() {
+          const ret = typeof global === "undefined" ? null : global;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_GLOBAL_THIS_8d1badc68b5a74f4: function() {
+          const ret = typeof globalThis === "undefined" ? null : globalThis;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_SELF_146583524fe1469b: function() {
+          const ret = typeof self === "undefined" ? null : self;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_WINDOW_f2829a2234d7819e: function() {
+          const ret = typeof window === "undefined" ? null : window;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_value_a5d5488a9589444a: function(arg0) {
+          const ret = arg0.value;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000001: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000002: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000003: function(arg0, arg1) {
+          const ret = getStringFromWasm0(arg0, arg1);
+          return ret;
+        },
+        __wbindgen_cast_0000000000000004: function(arg0) {
+          const ret = BigInt.asUintN(64, arg0);
+          return ret;
+        },
+        __wbindgen_init_externref_table: function() {
+          const table = wasm.__wbindgen_externrefs;
+          const offset = table.grow(4);
+          table.set(0, void 0);
+          table.set(offset + 0, void 0);
+          table.set(offset + 1, null);
+          table.set(offset + 2, true);
+          table.set(offset + 3, false);
+        }
+      };
+      return {
+        __proto__: null,
+        "./bindings_wasm_bg.js": import0
+      };
+    }
+    var WasmCelEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcelengine_free(ptr, 1));
+    var WasmCompositeEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcompositeengine_free(ptr, 1));
+    var WasmRegoEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmregoengine_free(ptr, 1));
+    var WasmSchemaValidatorFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmschemavalidator_free(ptr, 1));
+    var WasmSemanticModelFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmsemanticmodel_free(ptr, 1));
+    function addToExternrefTable0(obj) {
+      const idx = wasm.__externref_table_alloc();
+      wasm.__wbindgen_externrefs.set(idx, obj);
+      return idx;
+    }
+    function _assertClass(instance, klass) {
+      if (!(instance instanceof klass)) {
+        throw new Error(`expected instance of ${klass.name}`);
+      }
+    }
+    function debugString(val2) {
+      const type = typeof val2;
+      if (type == "number" || type == "boolean" || val2 == null) {
+        return `${val2}`;
+      }
+      if (type == "string") {
+        return `"${val2}"`;
+      }
+      if (type == "symbol") {
+        const description = val2.description;
+        if (description == null) {
+          return "Symbol";
+        } else {
+          return `Symbol(${description})`;
+        }
+      }
+      if (type == "function") {
+        const name = val2.name;
+        if (typeof name == "string" && name.length > 0) {
+          return `Function(${name})`;
+        } else {
+          return "Function";
+        }
+      }
+      if (Array.isArray(val2)) {
+        const length = val2.length;
+        let debug = "[";
+        if (length > 0) {
+          debug += debugString(val2[0]);
+        }
+        for (let i = 1; i < length; i++) {
+          debug += ", " + debugString(val2[i]);
+        }
+        debug += "]";
+        return debug;
+      }
+      const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val2));
+      let className;
+      if (builtInMatches && builtInMatches.length > 1) {
+        className = builtInMatches[1];
+      } else {
+        return toString.call(val2);
+      }
+      if (className == "Object") {
+        try {
+          return "Object(" + JSON.stringify(val2) + ")";
+        } catch (_) {
+          return "Object";
+        }
+      }
+      if (val2 instanceof Error) {
+        return `${val2.name}: ${val2.message}
+${val2.stack}`;
+      }
+      return className;
+    }
+    function getArrayU8FromWasm0(ptr, len) {
+      ptr = ptr >>> 0;
+      return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
+    }
+    var cachedDataViewMemory0 = null;
+    function getDataViewMemory0() {
+      if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || cachedDataViewMemory0.buffer.detached === void 0 && cachedDataViewMemory0.buffer !== wasm.memory.buffer) {
+        cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
+      }
+      return cachedDataViewMemory0;
+    }
+    function getStringFromWasm0(ptr, len) {
+      return decodeText(ptr >>> 0, len);
+    }
+    var cachedUint8ArrayMemory0 = null;
+    function getUint8ArrayMemory0() {
+      if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
+        cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
+      }
+      return cachedUint8ArrayMemory0;
+    }
+    function handleError(f, args) {
+      try {
+        return f.apply(this, args);
+      } catch (e) {
+        const idx = addToExternrefTable0(e);
+        wasm.__wbindgen_exn_store(idx);
+      }
+    }
+    function isLikeNone(x) {
+      return x === void 0 || x === null;
+    }
+    function passArray8ToWasm0(arg, malloc) {
+      const ptr = malloc(arg.length * 1, 1) >>> 0;
+      getUint8ArrayMemory0().set(arg, ptr / 1);
+      WASM_VECTOR_LEN = arg.length;
+      return ptr;
+    }
+    function passStringToWasm0(arg, malloc, realloc) {
+      if (realloc === void 0) {
+        const buf = cachedTextEncoder.encode(arg);
+        const ptr2 = malloc(buf.length, 1) >>> 0;
+        getUint8ArrayMemory0().subarray(ptr2, ptr2 + buf.length).set(buf);
+        WASM_VECTOR_LEN = buf.length;
+        return ptr2;
+      }
+      let len = arg.length;
+      let ptr = malloc(len, 1) >>> 0;
+      const mem = getUint8ArrayMemory0();
+      let offset = 0;
+      for (; offset < len; offset++) {
+        const code = arg.charCodeAt(offset);
+        if (code > 127) break;
+        mem[ptr + offset] = code;
+      }
+      if (offset !== len) {
+        if (offset !== 0) {
+          arg = arg.slice(offset);
+        }
+        ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
+        const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
+        const ret = cachedTextEncoder.encodeInto(arg, view);
+        offset += ret.written;
+        ptr = realloc(ptr, len, offset, 1) >>> 0;
+      }
+      WASM_VECTOR_LEN = offset;
+      return ptr;
+    }
+    function takeFromExternrefTable0(idx) {
+      const value = wasm.__wbindgen_externrefs.get(idx);
+      wasm.__externref_table_dealloc(idx);
+      return value;
+    }
+    var cachedTextDecoder = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true });
+    cachedTextDecoder.decode();
+    function decodeText(ptr, len) {
+      return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
+    }
+    var cachedTextEncoder = new TextEncoder();
+    if (!("encodeInto" in cachedTextEncoder)) {
+      cachedTextEncoder.encodeInto = function(arg, view) {
+        const buf = cachedTextEncoder.encode(arg);
+        view.set(buf);
+        return {
+          read: arg.length,
+          written: buf.length
+        };
+      };
+    }
+    var WASM_VECTOR_LEN = 0;
+    var wasmPath = `${__dirname}/bindings_wasm_bg.wasm`;
+    var wasmBytes = require("fs").readFileSync(wasmPath);
+    var wasmModule = new WebAssembly.Module(wasmBytes);
+    var wasmInstance = new WebAssembly.Instance(wasmModule, __wbg_get_imports());
+    var wasm = wasmInstance.exports;
+    wasm.__wbindgen_start();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js
+var require_cloudformation_validate = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CompositeEngine = exports2.CelEngine = exports2.RegoEngine = exports2.SchemaValidator = exports2.TemplateModel = exports2.SchemaFile = exports2.RuleFile = exports2.TemplateContent = exports2.TemplateFile = exports2.DEFAULT_TEMPLATE_NAME = exports2.AwsCliCommand = void 0;
+    exports2.version = version3;
+    var fs_1 = require("fs");
+    var AwsCliCommand = class {
+      constructor(serviceName, operationName, parameters, options = {}) {
+        this.serviceName = serviceName;
+        this.operationName = operationName;
+        if (!isPlainRecord(parameters)) {
+          throw new TypeError("parameters must be a plain object with string keys");
+        }
+        const copiedParameters = /* @__PURE__ */ Object.create(null);
+        for (const key of Reflect.ownKeys(parameters)) {
+          if (typeof key !== "string") {
+            throw new TypeError("request parameter names must be strings");
+          }
+          const descriptor = Object.getOwnPropertyDescriptor(parameters, key);
+          if (descriptor === void 0 || !("value" in descriptor)) {
+            throw new TypeError(`request parameter ${JSON.stringify(key)} must be a value property`);
+          }
+          copiedParameters[key] = descriptor.value;
+        }
+        this.parameters = copiedParameters;
+        this.servicePrefix = options.servicePrefix;
+        this.httpMethod = options.httpMethod;
+        this.isReadOnly = options.isReadOnly;
+      }
+    };
+    exports2.AwsCliCommand = AwsCliCommand;
+    var MIN_SIGNED_64 = -(1n << 63n);
+    var MAX_SIGNED_64 = (1n << 63n) - 1n;
+    var MAX_UNSIGNED_64 = (1n << 64n) - 1n;
+    var MAX_REQUEST_VALUE_DEPTH = 64;
+    var DATE_GET_TIME = Date.prototype.getTime;
+    var DATE_TO_ISO_STRING = Date.prototype.toISOString;
+    var UINT8_ARRAY_FOR_EACH = Uint8Array.prototype.forEach;
+    function isPlainRecord(value) {
+      if (value === null || typeof value !== "object" || Array.isArray(value)) {
+        return false;
+      }
+      const prototype = Object.getPrototypeOf(value);
+      return prototype === Object.prototype || prototype === null;
+    }
+    function unsupportedValue(typeName) {
+      return { type: "UNSUPPORTED", type_name: typeName };
+    }
+    function encodeAwsCliValue(value, depth = 0, ancestors = /* @__PURE__ */ new Set()) {
+      if (depth > MAX_REQUEST_VALUE_DEPTH) {
+        return unsupportedValue("recursion depth exceeded");
+      }
+      if (value === null) {
+        return { type: "NULL" };
+      }
+      if (typeof value === "boolean") {
+        return { type: "BOOLEAN", value };
+      }
+      if (typeof value === "number") {
+        if (!Number.isFinite(value)) {
+          return unsupportedValue("non-finite floating-point number");
+        }
+        if (Number.isInteger(value)) {
+          return Number.isSafeInteger(value) ? { type: "INTEGER", value } : unsupportedValue("integer outside the JavaScript safe range");
+        }
+        return { type: "NUMBER", value };
+      }
+      if (typeof value === "bigint") {
+        if (value >= MIN_SIGNED_64 && value <= MAX_SIGNED_64) {
+          return { type: "INTEGER", value };
+        }
+        if (value >= 0n && value <= MAX_UNSIGNED_64) {
+          return { type: "UNSIGNED_INTEGER", value };
+        }
+        return unsupportedValue("integer outside the 64-bit request range");
+      }
+      if (typeof value === "string") {
+        return { type: "STRING", value };
+      }
+      if (value instanceof Uint8Array) {
+        const bytes = [];
+        try {
+          UINT8_ARRAY_FOR_EACH.call(value, (byte) => {
+            bytes.push(byte);
+          });
+        } catch {
+          return unsupportedValue("invalid Uint8Array");
+        }
+        return { type: "BYTES", value: bytes };
+      }
+      if (value instanceof Date) {
+        try {
+          const timestamp = DATE_GET_TIME.call(value);
+          return Number.isFinite(timestamp) ? { type: "STRING", value: DATE_TO_ISO_STRING.call(value) } : unsupportedValue("invalid Date");
+        } catch {
+          return unsupportedValue("invalid Date");
+        }
+      }
+      if (Array.isArray(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic array");
+        }
+        ancestors.add(value);
+        try {
+          const lengthDescriptor = Object.getOwnPropertyDescriptor(value, "length");
+          if (lengthDescriptor === void 0 || !("value" in lengthDescriptor) || !Number.isSafeInteger(lengthDescriptor.value) || lengthDescriptor.value < 0) {
+            return unsupportedValue("array with invalid length");
+          }
+          const items = [];
+          for (let index = 0; index < lengthDescriptor.value; index += 1) {
+            const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
+            if (descriptor === void 0) {
+              return unsupportedValue("sparse array");
+            }
+            if (!("value" in descriptor)) {
+              return unsupportedValue("array with accessor elements");
+            }
+            items.push(encodeAwsCliValue(descriptor.value, depth + 1, ancestors));
+          }
+          return { type: "ARRAY", items };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      if (isPlainRecord(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic object");
+        }
+        ancestors.add(value);
+        try {
+          const entries = /* @__PURE__ */ Object.create(null);
+          for (const key of Reflect.ownKeys(value)) {
+            if (typeof key !== "string") {
+              return unsupportedValue("mapping with non-string keys");
+            }
+            const descriptor = Object.getOwnPropertyDescriptor(value, key);
+            if (descriptor === void 0 || !("value" in descriptor)) {
+              return unsupportedValue("mapping with accessor properties");
+            }
+            entries[key] = encodeAwsCliValue(descriptor.value, depth + 1, ancestors);
+          }
+          return { type: "OBJECT", entries };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      return unsupportedValue(typeof value);
+    }
+    function toWireAwsCliCommand(request2) {
+      const parameters = /* @__PURE__ */ Object.create(null);
+      for (const [name, value] of Object.entries(request2.parameters)) {
+        try {
+          parameters[name] = encodeAwsCliValue(value);
+        } catch {
+          parameters[name] = unsupportedValue("request value inspection failed");
+        }
+      }
+      return {
+        serviceName: request2.serviceName,
+        operationName: request2.operationName,
+        parameters,
+        ...request2.servicePrefix === void 0 ? {} : { servicePrefix: request2.servicePrefix },
+        ...request2.httpMethod === void 0 ? {} : { httpMethod: request2.httpMethod },
+        ...request2.isReadOnly === void 0 ? {} : { isReadOnly: request2.isReadOnly }
+      };
+    }
+    function fromWireAwsCliCommandValidation(validation) {
+      const template = validation.template;
+      return {
+        ...validation,
+        templateSource: validation.templateSource ?? null,
+        report: validation.report ?? null,
+        template: template == null ? null : Uint8Array.from(template)
+      };
+    }
+    var bridge = require_bindings_wasm();
+    exports2.DEFAULT_TEMPLATE_NAME = "template";
+    var TemplateFile2 = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readBytes() {
+        return (0, fs_1.readFileSync)(this.path);
+      }
+    };
+    exports2.TemplateFile = TemplateFile2;
+    var TemplateContent = class {
+      constructor(content, name = exports2.DEFAULT_TEMPLATE_NAME) {
+        this.content = content;
+        this.name = name;
+        if (typeof content !== "string" && !(content instanceof Uint8Array)) {
+          throw new TypeError("template content must be a string or a Uint8Array");
+        }
+      }
+      readBytes() {
+        return typeof this.content === "string" ? new TextEncoder().encode(this.content) : this.content;
+      }
+    };
+    exports2.TemplateContent = TemplateContent;
+    function templateLabel(template) {
+      return template instanceof TemplateContent ? template.name : template.path;
+    }
+    var RuleFile = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.RuleFile = RuleFile;
+    var SchemaFile = class {
+      constructor(path23, typeName) {
+        this.path = path23;
+        this.typeName = typeName;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.SchemaFile = SchemaFile;
+    function toExternalRuleSources(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof RuleFile ? { name: source.path, content: source.readContent() } : source
+      );
+    }
+    function toAdditionalSchemas(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof SchemaFile ? { typeName: source.typeName, schema: source.readContent() } : source
+      );
+    }
+    function toWasmEngineConfig(config) {
+      return {
+        customRules: toExternalRuleSources(config?.customRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmCompositeEngineConfig(config) {
+      return {
+        regoRules: toExternalRuleSources(config?.regoRules),
+        celRules: toExternalRuleSources(config?.celRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmSchemaValidatorConfig(config) {
+      return {
+        additionalSchemas: toAdditionalSchemas(config?.additionalSchemas)
+      };
+    }
+    var TemplateModel = class {
+      constructor(template) {
+        this.inner = bridge.WasmSemanticModel.parse(template.readBytes());
+      }
+      resources() {
+        return this.inner.resources();
+      }
+      parameters() {
+        return this.inner.parameters();
+      }
+      outputs() {
+        return this.inner.outputs();
+      }
+      conditions() {
+        return this.inner.conditions();
+      }
+      transforms() {
+        return this.inner.transforms();
+      }
+      formatVersion() {
+        return this.inner.formatVersion();
+      }
+      description() {
+        return this.inner.description();
+      }
+      toDiagnosticModel() {
+        return this.inner.toDiagnosticModel();
+      }
+      sourceLocation(path23) {
+        return this.inner.sourceLocation(path23);
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.TemplateModel = TemplateModel;
+    var SchemaValidator = class {
+      constructor(config) {
+        this.inner = new bridge.WasmSchemaValidator(toWasmSchemaValidatorConfig(config));
+      }
+      listRules() {
+        return this.inner.listRules();
+      }
+      schemaCount() {
+        return this.inner.schemaCount();
+      }
+      validate(template, region) {
+        const model = bridge.WasmSemanticModel.parse(template.readBytes());
+        try {
+          return this.inner.validate(model, region).diagnostics;
+        } finally {
+          model.free();
+        }
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.SchemaValidator = SchemaValidator;
+    function createEngineClass(WasmClass, toWasmConfig) {
+      return class {
+        constructor(config) {
+          this.inner = new WasmClass(toWasmConfig(config));
+        }
+        validateTemplate(template, config) {
+          return this.inner.validateTemplate(template.readBytes(), config ?? {}, templateLabel(template));
+        }
+        validateStandard(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "STANDARD" });
+        }
+        validateDetailed(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "DETAILED" });
+        }
+        validateAwsCliCommand(request2) {
+          if (!(request2 instanceof AwsCliCommand)) {
+            throw new TypeError("request must be an AwsCliCommand");
+          }
+          return fromWireAwsCliCommandValidation(this.inner.validateAwsCliCommand(toWireAwsCliCommand(request2)));
+        }
+        listRules() {
+          return this.inner.listRules();
+        }
+        engineName() {
+          return this.inner.engineName();
+        }
+        free() {
+          this.inner.free();
+        }
+      };
+    }
+    exports2.RegoEngine = createEngineClass(bridge.WasmRegoEngine, toWasmEngineConfig);
+    exports2.CelEngine = createEngineClass(bridge.WasmCelEngine, toWasmEngineConfig);
+    exports2.CompositeEngine = createEngineClass(bridge.WasmCompositeEngine, toWasmCompositeEngineConfig);
+    function version3() {
+      return bridge.version();
+    }
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts
+function mapSeverity(severity) {
+  switch (severity) {
+    // FIXME: Temporarily map FATAL to ERROR; FATALs are not suppressible but there are still a lot
+    // of false positives in the engine, and we cannot afford to accidentally present a customer with
+    // an accidentally unsupressible fatal.
+    case "FATAL":
+      return "error";
+    case "ERROR":
+      return "error";
+    case "WARN":
+      return "warning";
+    case "INFO":
+      return "informational";
+    case "DEBUG":
+      return "debug";
+    default:
+      return "warning";
+  }
+}
+function defaultRegoRules() {
+  const rulesDir = path14.join(__dirname, "rules");
+  return fs10.readdirSync(rulesDir).filter((f) => f.endsWith(".rego")).sort().map((f) => ({
+    name: f,
+    content: fs10.readFileSync(path14.join(rulesDir, f), "utf-8")
+  }));
+}
+function isContainedWithin(root, child) {
+  const rel = path14.relative(root, child);
+  return !rel.startsWith("..") && !path14.isAbsolute(rel);
+}
+function loadSchemasFromDirectory(dir) {
+  const schemas = [];
+  if (!fs10.existsSync(dir)) {
+    return schemas;
+  }
+  const rootReal = fs10.realpathSync(dir);
+  function walk(currentDir, depth) {
+    if (depth > MAX_SCHEMA_DIRECTORY_DEPTH) {
+      throw new UnscopedValidationError(
+        lit`SchemaLoadError`,
+        `[CloudFormation Validate] Schema directory exceeds maximum depth of ${MAX_SCHEMA_DIRECTORY_DEPTH}: ${currentDir}`
+      );
+    }
+    const entries = fs10.readdirSync(currentDir, { withFileTypes: true });
+    for (const entry of entries) {
+      const fullPath = path14.join(currentDir, entry.name);
+      if (entry.isSymbolicLink()) {
+        throw new UnscopedValidationError(
+          lit`SchemaLoadError`,
+          `[CloudFormation Validate] Symbolic link found in schema directory (not allowed): ${fullPath}`
+        );
+      }
+      if (entry.isDirectory()) {
+        const resolved = fs10.realpathSync(fullPath);
+        if (!isContainedWithin(rootReal, resolved)) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Path escapes schema root directory: ${fullPath} resolves to ${resolved}`
+          );
+        }
+        walk(fullPath, depth + 1);
+      } else if (entry.isFile() && entry.name.endsWith(".json")) {
+        const content = fs10.readFileSync(fullPath, "utf-8");
+        let parsed;
+        try {
+          parsed = JSON.parse(content);
+        } catch (e) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Invalid JSON in schema file: ${fullPath}: ${e}`
+          );
+        }
+        if (!parsed.typeName) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Schema file missing required "typeName" field: ${fullPath}`
+          );
+        }
+        schemas.push({
+          typeName: parsed.typeName,
+          schema: content
+        });
+      }
+    }
+  }
+  walk(rootReal, 0);
+  if (schemas.length > 0) {
+    const typeNames = schemas.map((s) => s.typeName).join(", ");
+    process.stderr.write(`[CloudFormation Validate] Loaded ${schemas.length} schema overlay(s): ${typeNames}
+`);
+  }
+  return schemas;
+}
+var fs10, path14, import_cloudformation_validate, VALIDATE_METRIC, DIAGNOSTICS_METRIC, CloudFormationValidatePlugin, IGNORE_RULES, MAX_SCHEMA_DIRECTORY_DEPTH;
+var init_cloudformation_validate_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts"() {
+    "use strict";
+    fs10 = __toESM(require("fs"));
+    path14 = __toESM(require("path"));
+    import_cloudformation_validate = __toESM(require_cloudformation_validate());
+    init_errors();
+    init_literal_string();
+    init_perf();
+    VALIDATE_METRIC = "CloudFormationValidate.validate";
+    DIAGNOSTICS_METRIC = "CloudFormationValidate.diagnostics";
+    CloudFormationValidatePlugin = class _CloudFormationValidatePlugin {
+      /**
+       * The default name of this plugin
+       */
+      static PLUGIN_NAME = "CloudFormation Validate";
+      /**
+       * Return a global singleton instance of this plugin.
+       *
+       * This is used because initializing the engine is somewhat expensive, which makes
+       * a noticeable difference in tests.
+       *
+       * @internal
+       */
+      static _singletonInstance() {
+        if (!_CloudFormationValidatePlugin._instance) {
+          _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin();
+        }
+        return _CloudFormationValidatePlugin._instance;
+      }
+      /**
+       * Pre-configure the singleton with specific props before first access.
+       * Used by test infrastructure to inject schema overlays without per-App registration.
+       *
+       * Must be called before any App synthesis triggers `_singletonInstance()`.
+       * Calling this when a singleton already exists replaces it.
+       *
+       * @internal
+       */
+      static _configureSingleton(props) {
+        _CloudFormationValidatePlugin._disposeSingleton();
+        _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin(props);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory and forget the instance
+       *
+       * @internal
+       */
+      static _disposeSingleton() {
+        _CloudFormationValidatePlugin._instance?._dispose();
+        _CloudFormationValidatePlugin._instance = void 0;
+      }
+      static _instance;
+      name = _CloudFormationValidatePlugin.PLUGIN_NAME;
+      engine;
+      disposed = false;
+      constructor(props = {}) {
+        const config = {};
+        const regoRules = [
+          ...props.includeDefaultRules ?? true ? defaultRegoRules() : [],
+          ...props.regoRules ?? []
+        ];
+        if (regoRules.length > 0) {
+          config.regoRules = regoRules;
+        }
+        if (props.guardRules) {
+          config.guardRules = props.guardRules;
+        }
+        if (props._additionalSchemasDirectory) {
+          config.schemaValidatorConfig = {
+            additionalSchemas: loadSchemasFromDirectory(props._additionalSchemasDirectory)
+          };
+        }
+        this.engine = new import_cloudformation_validate.CompositeEngine(config);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory
+       *
+       * @internal
+       */
+      _dispose() {
+        if (this.disposed) {
+          return;
+        }
+        this.disposed = true;
+        this.engine.free();
+      }
+      get version() {
+        return (0, import_cloudformation_validate.version)();
+      }
+      get ruleIds() {
+        return this.engine.listRules().filter((r) => !IGNORE_RULES.has(r.id) && r.severity !== "INFO" && r.severity !== "DEBUG").map((r) => r.id);
+      }
+      validate(context) {
+        const violations = [];
+        for (const { stackConstructPath, templatePath, accountId, region } of context.stackTemplates) {
+          const templateFile = new import_cloudformation_validate.TemplateFile(templatePath);
+          const report = (() => {
+            var _stack = [];
+            try {
+              const _span = __using(_stack, profileSpan(VALIDATE_METRIC, { telemetry: true }));
+              return this.engine.validateTemplate(templateFile, {
+                detailLevel: "STANDARD",
+                pseudoParameterOverrides: {
+                  accountId,
+                  region
+                },
+                exclude: {
+                  ids: [...IGNORE_RULES],
+                  services: [{
+                    // CDK still synthesizes AWS::AutoScaling::LaunchConfiguration for applications using
+                    // the legacy launch-configuration behavior. Auto Scaling remains deployable despite
+                    // its maintenance-mode classification, so suppress only its W3697 lifecycle warning
+                    // rather than hiding lifecycle findings for every service.
+                    // 
+                    ruleId: "W3697",
+                    service: "AWS::AutoScaling"
+                  }]
+                },
+                severityLevel: "WARN"
+              });
+            } catch (_) {
+              var _error = _, _hasError = true;
+            } finally {
+              __callDispose(_stack, _error, _hasError);
+            }
+          })();
+          recordPerformanceEntry(DIAGNOSTICS_METRIC, {
+            count: report.diagnostics.length,
+            telemetry: true
+          });
+          const diagnosticsBySeverity = /* @__PURE__ */ new Map();
+          for (const diagnostic of report.diagnostics) {
+            diagnosticsBySeverity.set(diagnostic.severity, (diagnosticsBySeverity.get(diagnostic.severity) ?? 0) + 1);
+          }
+          for (const [severity, count2] of diagnosticsBySeverity) {
+            recordPerformanceEntry(`${DIAGNOSTICS_METRIC}.${severity}`, {
+              count: count2,
+              telemetry: true
+            });
+          }
+          for (const diagnostic of report.diagnostics) {
+            const severity = mapSeverity(diagnostic.severity);
+            const resourceLogicalId = diagnostic.entity?.entityType === "Resource" ? diagnostic.entity.logicalId : void 0;
+            const violatingResource = {
+              resourceLogicalId,
+              // If this is not about any resources, best we can do is point it to the stack
+              constructPath: !resourceLogicalId ? stackConstructPath : void 0,
+              templatePath,
+              locations: diagnostic.propertyPath ? [diagnostic.propertyPath] : []
+            };
+            const propertyPathPefix = diagnostic.propertyPath ? `${diagnostic.propertyPath.replace(/^Properties\./, "")}: ` : "";
+            const description = `${propertyPathPefix}${diagnostic.message}`;
+            const existing = violations.find(
+              (v) => v.ruleName === diagnostic.ruleId && v.severity === severity && v.description === description
+            );
+            if (existing) {
+              existing.violatingResources.push(violatingResource);
+            } else {
+              violations.push({
+                ruleName: diagnostic.ruleId,
+                description,
+                severity,
+                fix: diagnostic.suggestedFix,
+                violatingResources: [violatingResource],
+                ruleMetadata: diagnostic.category ? { category: diagnostic.category } : void 0
+              });
+            }
+          }
+        }
+        return {
+          success: violations.every((v) => v.severity !== "error" && v.severity !== "fatal"),
+          violations
+        };
+      }
+    };
+    IGNORE_RULES = /* @__PURE__ */ new Set([
+      // WHAT: 'DependsOn' already implied by a 'GetAtt', remove the DependsOn.
+      // WHY: CDK adds both. It doesn't hurt to have both, and it's more effort to remove them.
+      // Will be silenced forever.
+      "W3005",
+      // WHAT: Optimize the format string of Fn::Sub
+      // WHY: CDK is generating these, humans are not authoring them.
+      // Will be silenced forever.
+      "W1020",
+      // WHAT: Fn::GetStackOutput is not an allowed direct source for Fn::Split.
+      // WHY: CDK generates this nesting when deserializing weak string-list cross-stack references,
+      // and customers cannot control the generated expression.
+      // https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-split.html
+      "E1018",
+      // WHAT: Hardcoded ARNs
+      // WHY: Hardcoding an ARN is part of the behavior of some constructs (e.g., setting up multi-account DynamoDB table replicas)
+      "W9002",
+      // WHAT: Hardcoded account IDs in ARNs
+      // WHY: Hardcoding an account ID in ARNs is commonly done in CDK when we are setting up large applications that
+      // span accounts.
+      "W9013",
+      // WHAT: built-in function not recognized
+      // WHY: there are intrinsic functions that the plugin doesn't know about that are nevertheless valid.
+      // This diagnostic is intended to protect against typos in templates, but since the intrinsics
+      // are generated by CDK the chances of mistyping them is tiny, and so this diagnostic is more verbose
+      // than it's worth.
+      "W1103"
+    ]);
+    MAX_SCHEMA_DIRECTORY_DEPTH = 5;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts
+function propertyAssignmentMatchesPropertyPath(meta, propertyPath) {
+  return propertyPath === `Properties.${meta.data.propertyName}` || propertyPath.startsWith(`Properties.${meta.data.propertyName}.`);
+}
+function isPropertyMutationMetadataEntry(entry) {
+  return entry.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT;
+}
+var import_cloud_assembly_schema2, ConstructTree, STACK_TRACE_HINT;
+var init_construct_tree = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts"() {
+    "use strict";
+    import_cloud_assembly_schema2 = __toESM(require_lib2());
+    init_app2();
+    init_cfn_resource();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_runtime_info();
+    ConstructTree = class {
+      /**
+       * A cache of the ConstructTrace by node.path. Each construct
+       */
+      _constructByPath = /* @__PURE__ */ new Map();
+      _constructByTemplatePathAndLogicalId = /* @__PURE__ */ new Map();
+      root;
+      constructor(root) {
+        this.root = App.of(root) ?? root;
+        this._constructByPath.set(this.root.node.path, root);
+        for (const child of iterateDfsPreorder(this.root)) {
+          this._constructByPath.set(child.node.path, child);
+          const defaultChild = child.node.defaultChild;
+          if (defaultChild && CfnResource.isCfnResource(defaultChild)) {
+            const stack = stackOf(defaultChild);
+            const logicalId = stack.resolve(defaultChild.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+        for (const child of iterateDfsPreorder(this.root)) {
+          if (CfnResource.isCfnResource(child)) {
+            const stack = stackOf(child);
+            const logicalId = stackOf(child).resolve(child.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+      }
+      setLogicalId(stack, logicalId, child) {
+        if (!this._constructByTemplatePathAndLogicalId.has(stack.templateFile)) {
+          this._constructByTemplatePathAndLogicalId.set(stack.templateFile, /* @__PURE__ */ new Map([[logicalId, child]]));
+        } else {
+          this._constructByTemplatePathAndLogicalId.get(stack.templateFile)?.set(logicalId, child);
+        }
+      }
+      /**
+       * Turn a construct path into a trace
+       *
+       * The trace contains all constructs from the root to the construct indicated
+       * by the given path. It does not include the root itself.
+       */
+      traceFromPath(constructPath) {
+        const components = constructPath.replace(/^\//, "").split("/");
+        const rootPath = [];
+        const stackTraces = [];
+        let node = this.root;
+        while (node) {
+          rootPath.push(this.constructTraceLevelFromTreeNode(node));
+          stackTraces.push(this.creationTrace(node)?.split("\n"));
+          const component = components.shift();
+          node = component !== void 0 ? node.node.tryFindChild(component) : void 0;
+        }
+        rootPath.shift();
+        stackTraces.shift();
+        let ret = {
+          ...rootPath[rootPath.length - 1],
+          location: stackLocationAt(rootPath.length - 1)
+        };
+        for (let i = rootPath.length - 2; i >= 0; i--) {
+          ret = {
+            ...rootPath[i],
+            child: ret,
+            location: stackLocationAt(i)
+          };
+        }
+        return ret;
+        function stackLocationAt(i) {
+          let j = i;
+          while (j < rootPath.length && !stackTraces[j]) {
+            j++;
+          }
+          if (j === rootPath.length) {
+            return STACK_TRACE_HINT;
+          }
+          return stackTraces[j]?.[0 + j - i] ?? STACK_TRACE_HINT;
+        }
+      }
+      constructTraceLevelFromConstructPath(constructPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return void 0;
+        }
+        return this.constructTraceLevelFromTreeNode(construct);
+      }
+      /**
+       * Convert a Tree Metadata Node into a ConstructTrace object, except its child and stack trace info
+       *
+       * FIXME: This could probably use the construct tree directly.
+       */
+      constructTraceLevelFromTreeNode(node) {
+        const constructInfo = constructInfoFromConstruct(node);
+        return {
+          id: node.node.id,
+          path: node.node.path,
+          construct: constructInfo?.fqn,
+          libraryVersion: constructInfo?.version
+        };
+      }
+      creationTraceByPath(path23) {
+        const construct = this.getConstructByPath(path23);
+        if (!construct) {
+          return void 0;
+        }
+        return this.creationTrace(construct);
+      }
+      /**
+       * Return the stack trace for a given construct path
+       *
+       * Returns a stack trace if stack trace information is found, or `undefined` if not.
+       */
+      creationTrace(construct) {
+        return construct?.node.metadata.find((meta) => meta.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.CREATION_STACK)?.data?.join("\n");
+      }
+      mutationTracesByPath(constructPath, propertyPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return [];
+        }
+        return this.mutationTraces(construct, propertyPath);
+      }
+      /**
+       * Return mutation traces for the given construct and property path
+       *
+       * The `propertyPath` must start with `Properties.`, and can contain nested properties, e.g. `Properties.MyProperty.NestedProperty`.
+       * We will report the best information that we have.
+       */
+      mutationTraces(construct, propertyPath) {
+        return construct?.node.metadata.filter(isPropertyMutationMetadataEntry).filter((meta) => propertyAssignmentMatchesPropertyPath(meta, propertyPath)).map((meta) => meta.data.stackTrace.join("\n"));
+      }
+      /**
+       * Get a specific Construct by the node.addr
+       *
+       * @param path the node.addr of the construct
+       * @returns the Construct
+       */
+      getConstructByPath(path23) {
+        return this._constructByPath.get(path23);
+      }
+      /**
+       * Get a specific Construct by the CfnResource logical ID. This will
+       * be the construct.node.defaultChild with the given ID
+       *
+       * @param logicalId the ID of the CfnResource
+       * @returns the Construct
+       */
+      getConstructByLogicalId(templateFile, logicalId) {
+        return this._constructByTemplatePathAndLogicalId.get(templateFile)?.get(logicalId);
+      }
+    };
+    STACK_TRACE_HINT = "Run with '--debug' to include location info";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/color.ts
+var Col, Colorize;
+var init_color = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/color.ts"() {
+    "use strict";
+    Col = class {
+      static RED = "31";
+      static ORANGE = "38;5;208";
+      static YELLOW = "33";
+      static BLUE = "34";
+      static BOLD = "1";
+      static UNDERLINE = "4";
+      static GREY = "90";
+    };
+    Colorize = class _Colorize {
+      static red(str) {
+        return _Colorize.colorize(Col.RED, str);
+      }
+      static orange(str) {
+        return _Colorize.colorize(Col.ORANGE, str);
+      }
+      static yellow(str) {
+        return _Colorize.colorize(Col.YELLOW, str);
+      }
+      static blue(str) {
+        return _Colorize.colorize(Col.BLUE, str);
+      }
+      static grey(str) {
+        return _Colorize.colorize(Col.GREY, str);
+      }
+      static bold(str) {
+        return _Colorize.colorize(Col.BOLD, str);
+      }
+      static underline(str) {
+        return _Colorize.colorize(Col.UNDERLINE, str);
+      }
+      static colorize(col, str) {
+        if (process.env.FORCE_COLOR === "0" || process.env.NO_COLOR || !process.stdout.isTTY || !process.stderr.isTTY) {
+          return str;
+        }
+        return `\x1B[${col}m${str}\x1B[0m`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/trace.ts
+var STARTER_LINE, VERTICAL_LINE, ReportTrace;
+var init_trace = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/trace.ts"() {
+    "use strict";
+    STARTER_LINE = "\u2514\u2500\u2500 ";
+    VERTICAL_LINE = "\u2502";
+    ReportTrace = class {
+      constructor(tree) {
+        this.tree = tree;
+      }
+      tree;
+      /**
+       * Return a JSON representation of the construct trace
+       */
+      formatJson(constructPath) {
+        return this.tree.traceFromPath(constructPath);
+      }
+      /**
+       * This will render something like this:
+       *
+       *   Creation Stack:
+       *     └──  MyStack (MyStack)
+       *          │ Library: aws-cdk-lib.Stack
+       *          │ Library Version: 2.50.0
+       *          │ Location: Object. (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:25:20)
+       *          └──  MyCustomL3Construct (MyStack/MyCustomL3Construct)
+       *               │ Library: N/A - (Local Construct)
+       *               │ Library Version: N/A
+       *               │ Location: new MyStack (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:15:20)
+       *               └──  Bucket (MyStack/MyCustomL3Construct/Bucket)
+       *                    │ Library: aws-cdk-lib/aws-s3.Bucket
+       *                    │ Library Version: 2.50.0
+       *                    │ Location: new MyCustomL3Construct (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:9:20)/
+       */
+      formatPrettyPrinted(constructPath) {
+        const trace = constructPath ? this.formatJson(constructPath) : void 0;
+        return this.renderPrettyPrintedTraceInfo(trace);
+      }
+      renderPrettyPrintedTraceInfo(info, indent, start = STARTER_LINE) {
+        const notAvailableMessage = "	Construct trace not available. Rerun with `--debug` to see trace information";
+        if (info) {
+          const indentation = indent ?? " ".repeat(STARTER_LINE.length + 1);
+          const result = [
+            `${start} ${info?.id} (${info?.path})`,
+            `${indentation}${VERTICAL_LINE} Construct: ${info?.construct}`,
+            `${indentation}${VERTICAL_LINE} Library Version: ${info?.libraryVersion}`,
+            `${indentation}${VERTICAL_LINE} Location: ${info?.location}`,
+            ...info?.child ? [this.renderPrettyPrintedTraceInfo(info?.child, " ".repeat(indentation.length + STARTER_LINE.length + 1), indentation + STARTER_LINE)] : []
+          ];
+          return result.join("\n	");
+        }
+        return notAvailableMessage;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/report.ts
+var init_report = __esm({
+  "../../aws-cdk-lib/core/lib/validation/report.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/report.ts
+function normalizeSeverity(severity) {
+  if (!severity) {
+    return { severity: "error" };
+  }
+  const lower = severity.toLowerCase();
+  if (KNOWN_SEVERITIES.has(lower)) {
+    return { severity: lower };
+  }
+  return { severity: "custom", customSeverity: severity };
+}
+function mkPluginFailure(plugin, e) {
+  return {
+    success: false,
+    pluginName: plugin.name,
+    pluginVersion: plugin.version,
+    violations: [],
+    metadata: {
+      error: `Validation plugin '${plugin.name}' failed: ${e.message}`
+    }
+  };
+}
+function isSuppressibleViolation(violation) {
+  const isFatal = violation.severity?.toLowerCase() === "fatal";
+  const isErrorAnnotation = violation.ruleMetadata?.["cdk:annotation"] && violation.severity?.toLowerCase() === "error";
+  return !isFatal && !isErrorAnnotation;
+}
+var PolicyValidationReportFormatter, KNOWN_SEVERITIES, ExtraObjectData;
+var init_report2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/report.ts"() {
+    "use strict";
+    init_trace();
+    init_report();
+    PolicyValidationReportFormatter = class {
+      constructor(tree) {
+        this.tree = tree;
+        this.reportTrace = new ReportTrace(tree);
+      }
+      tree;
+      reportTrace;
+      formatLegacyJson(reps) {
+        return {
+          title: "Validation Report",
+          pluginReports: reps.filter((rep) => !rep.success || rep.violations.length > 0).map((rep) => ({
+            version: rep.pluginVersion,
+            summary: {
+              pluginName: rep.pluginName,
+              status: rep.success ? "success" /* SUCCESS */ : "failure" /* FAILURE */,
+              metadata: rep.metadata
+            },
+            violations: rep.violations.map((violation) => ({
+              ruleName: violation.ruleName,
+              description: violation.description,
+              fix: violation.fix,
+              ruleMetadata: violation.ruleMetadata,
+              severity: violation.severity,
+              violatingResources: violation.violatingResources,
+              violatingConstructs: violation.violatingResources.map((resource) => {
+                const constructPath = resource.constructPath;
+                return {
+                  constructStack: constructPath ? this.reportTrace.formatJson(constructPath) : void 0,
+                  constructPath,
+                  locations: resource.locations,
+                  resourceLogicalId: resource.resourceLogicalId ?? "N/A",
+                  templatePath: resource.templatePath ?? "N/A"
+                };
+              })
+            }))
+          }))
+        };
+      }
+      formatJson(reps, schemaVersion, stackTraces, suppressedByReport) {
+        return {
+          version: schemaVersion,
+          title: "Validation Report",
+          pluginReports: this.buildPluginReports(reps, stackTraces, suppressedByReport)
+        };
+      }
+      buildPluginReports(reps, stackTraces, suppressedByReport) {
+        const results = [];
+        for (let idx = 0; idx < reps.length; idx++) {
+          const rep = reps[idx];
+          const suppressed = suppressedByReport?.get(idx);
+          if (rep.success && rep.violations.length === 0 && !suppressed) continue;
+          results.push({
+            pluginName: rep.pluginName,
+            pluginVersion: rep.pluginVersion,
+            conclusion: rep.success ? "success" : "failure",
+            metadata: rep.metadata,
+            violations: rep.violations.map((violation) => this.formatViolationJson(violation, stackTraces)),
+            suppressedViolations: suppressed ? suppressed.map((sv) => this.formatSuppressedViolationJson(sv, stackTraces)) : void 0
+          });
+        }
+        return results;
+      }
+      formatViolationJson(violation, stackTraces) {
+        const severity = normalizeSeverity(violation.severity);
+        return {
+          ruleName: violation.ruleName,
+          description: violation.description,
+          suggestedFix: violation.fix,
+          severity: severity.severity,
+          customSeverity: severity.customSeverity,
+          ruleMetadata: violation.ruleMetadata,
+          violatingConstructs: violation.violatingResources.map((resource) => {
+            let constructPath = resource.constructPath;
+            const constructInfo = constructPath ? this.tree.constructTraceLevelFromConstructPath(constructPath) : void 0;
+            const result = {
+              // The constructPath is not optional in the output JSON, so put an empty string here if we don't have it.
+              constructPath: constructPath ?? "",
+              constructFqn: constructInfo?.construct,
+              libraryVersion: constructInfo?.libraryVersion,
+              cloudFormationResource: resource.resourceLogicalId && resource.templatePath ? {
+                templatePath: resource.templatePath,
+                logicalId: resource.resourceLogicalId,
+                propertyPaths: resource.locations.length > 0 ? resource.locations : void 0
+              } : void 0,
+              stackTraces: stackTraces.get(resource)
+            };
+            return result;
+          })
+        };
+      }
+      formatSuppressedViolationJson(sv, stackTraces) {
+        const base = this.formatViolationJson(sv, stackTraces);
+        return {
+          ...base,
+          acknowledgedId: sv.acknowledgedId,
+          reason: sv.reason || void 0,
+          acknowledgedAt: sv.acknowledgedAt || void 0,
+          acknowledgedStackTrace: sv.acknowledgedStackTrace || void 0
+        };
+      }
+    };
+    KNOWN_SEVERITIES = /* @__PURE__ */ new Set(["fatal", "error", "warning", "info"]);
+    ExtraObjectData = class {
+      extra = /* @__PURE__ */ new WeakMap();
+      constructor() {
+      }
+      attach(obj, data) {
+        this.extra.set(obj, data);
+      }
+      get(obj) {
+        return this.extra.get(obj);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts
+function formatValidationReports(fileRoot, reports, frameFinder) {
+  const successfullyExecutedPlugins = reports.filter((r) => isPluginFailure(r) === void 0);
+  const pluginFailures = reports.map(isPluginFailure).filter((e) => e !== void 0);
+  const violations = flattenViolations(successfullyExecutedPlugins);
+  violations.sort((a, b) => {
+    const aOrder = SEVERITY_ORDER[a.severity.toLowerCase()] ?? 4;
+    const bOrder = SEVERITY_ORDER[b.severity.toLowerCase()] ?? 4;
+    return aOrder - bOrder;
+  });
+  return [
+    ...pluginFailures.map(formatPluginFailure),
+    ...violations.map((v) => formatViolationBlock(fileRoot, v, frameFinder))
+  ];
+}
+function flattenViolations(reports) {
+  return reports.flatMap((report) => {
+    const pluginName = report.pluginName;
+    return report.violations.flatMap((violation) => {
+      return violation.violatingConstructs.map((construct) => ({
+        severity: normalizeSeverity2(violation.severity),
+        description: violation.description,
+        ruleName: violation.ruleName,
+        pluginName,
+        construct,
+        suggestedFix: violation.suggestedFix,
+        ruleMetadata: violation.ruleMetadata
+      }));
+    });
+  });
+}
+function normalizeSeverity2(severity) {
+  switch (severity?.toLowerCase()) {
+    case "fatal":
+      return "FATAL";
+    case "error":
+      return "ERROR";
+    case "warning":
+      return "WARNING";
+    case "info":
+      return "INFO";
+  }
+  if (!severity) return "WARNING";
+  return sanitize(severity);
+}
+function formatViolationBlock(fileRoot, v, frameFinder) {
+  const lines = [];
+  const locations = sourceLocations(fileRoot, v.construct.stackTraces, frameFinder);
+  const maxTraces = 5;
+  let additional = false;
+  for (const location of locations.slice(0, maxTraces)) {
+    lines.push(`${additional ? "or " : ""}${Colorize.underline(sanitize(location))}`);
+    additional = true;
+  }
+  if (locations.length > maxTraces) {
+    lines.push(Colorize.grey(`(and ${locations.length - maxTraces} more...)`));
+  }
+  const pluginNs = namespaceFromPluginName(v.pluginName);
+  const parsed = parseValidationId(v.ruleName);
+  lines.push([
+    Colorize.bold(getSeverityColor(v.severity)(sanitize(v.severity))),
+    Colorize.bold(stripAckTag(sanitize(v.description))),
+    Colorize.grey(`(${sanitize(parsed.namespace ? pluginNameFromNamespace(parsed.namespace) : v.pluginName)})`)
+  ].join(" "));
+  const constructInfo = formatConstructInfo(fileRoot, v.construct);
+  lines.push(`   ${constructInfo}`);
+  if (v.suggestedFix) {
+    lines.push(`   Suggested fix: ${sanitize(v.suggestedFix).replace(/\n/g, "\n   ")}`);
+  }
+  const ackId = normalizeValidationId(v.ruleName, pluginNs);
+  if (isSuppressibleViolation(v)) {
+    lines.push(`   ${Colorize.grey(`Acknowledge with '${sanitize(ackId)}'`)}`);
+  } else {
+    lines.push(`   ${Colorize.grey(`Rule ${sanitize(ackId)}`)}`);
+  }
+  return lines.join("\n");
+}
+function getSeverityColor(severity) {
+  switch (severity.toLowerCase()) {
+    case "fatal":
+      return Colorize.red;
+    case "error":
+      return Colorize.orange;
+    case "warning":
+      return Colorize.yellow;
+    default:
+      return Colorize.blue;
+  }
+}
+function formatConstructInfo(fileRoot, construct) {
+  const parts = [];
+  const logicalId = sanitize(construct.cloudFormationResource?.logicalId);
+  if (construct.constructPath) {
+    const cPath = sanitize(construct.constructPath);
+    parts.push(logicalId ? `${Colorize.bold(cPath)} (${logicalId})` : Colorize.bold(cPath));
+  } else {
+    if (construct.cloudFormationResource?.templatePath) {
+      parts.push(humanFriendlyFilename(fileRoot, sanitize(construct.cloudFormationResource.templatePath)));
+    }
+    if (logicalId) {
+      parts.push(Colorize.bold(logicalId));
+    }
+  }
+  if (construct.constructFqn) {
+    parts.push(Colorize.grey(sanitize(construct.constructFqn)));
+  }
+  return parts.join(" ");
+}
+function stripAckTag(description) {
+  return description.replace(/\s*\[ack:\s*[^\]]+\]\s*/g, "").trim();
+}
+function sourceLocations(fileRoot, stackTraces, frameFinder) {
+  const ret = [];
+  for (const trace of stackTraces ?? []) {
+    const frame = topUserFrame(trace.split("\n"), frameFinder);
+    if (frame && frame.fileName) {
+      const candidate = `${humanFriendlyFilename(fileRoot, frame.fileName)}:${frame.sourceLocation}`;
+      if (!ret.includes(candidate)) {
+        ret.push(candidate);
+      }
+    }
+  }
+  return ret;
+}
+function formatPluginFailure(f) {
+  return `${Colorize.orange("ERROR")} ${sanitize(f.error)}`;
+}
+function sanitize(s) {
+  return (s ?? "").replace(CONTROL_CHARS, "\uFFFD");
+}
+function humanFriendlyFilename(root, filename) {
+  const absPath = filename;
+  const relPath = import_path2.default.relative(root, filename);
+  return relPath.length < absPath.length ? relPath : absPath;
+}
+function isPluginFailure(r) {
+  if (r.conclusion === "success" || r.violations.length > 0 || !r.metadata?.error) {
+    return void 0;
+  }
+  return { error: r.metadata.error };
+}
+function stripAnsi(x) {
+  const pattern = [
+    "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
+    "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
+  ].join("|");
+  const re = new RegExp(pattern, "g");
+  return x.replaceAll(re, "");
+}
+var import_path2, CONTROL_CHARS, SEVERITY_ORDER;
+var init_modern_formatter = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts"() {
+    "use strict";
+    import_path2 = __toESM(require("path"));
+    init_color();
+    init_report2();
+    init_validation_id();
+    init_stack_trace();
+    CONTROL_CHARS = /[\x00-\x08\x0B-\x1F\x7F\x9B]/g;
+    SEVERITY_ORDER = {
+      fatal: 0,
+      error: 1,
+      warning: 2,
+      info: 3
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis-validation.ts
+function validateTemplates(root, outdir, assembly) {
+  var _stack = [];
+  try {
+    if (!App.isApp(root)) return;
+    const _span = __using(_stack, profileSpan("validateTemplates", { telemetry: true }));
+    const assemblies = getAssemblies(root, assembly);
+    const stacksByPlugin = /* @__PURE__ */ new Map();
+    visitAssemblies(root, "post", (construct) => {
+      if (STAGE_TYPE.isMarked(construct)) {
+        const stageAssembly = assemblies.get(construct.artifactId);
+        if (!stageAssembly) throw new AssumptionError(lit`ValidationFailed`, `Validation failed, cannot find cloud assembly for stage ${construct.stageName}`);
+        const plugins = pluginsToEvaluate(root, construct);
+        for (const plugin of plugins) {
+          if (!stacksByPlugin.has(plugin)) {
+            stacksByPlugin.set(plugin, /* @__PURE__ */ new Set());
+          }
+          for (const stack of stageAssembly.stacksRecursively) {
+            stacksByPlugin.get(plugin).add(stack);
+          }
+        }
+      }
+    });
+    if (stacksByPlugin.size === 0) return;
+    const reports = doInvokeValidationPlugins(outdir, Array.from(stacksByPlugin), root);
+    const validateFlagExplicitlyEnabled = getBooleanContext(root, VALIDATE_AGAINST_DEFAULT_RULES, false);
+    let warningifiedAnyErrors = false;
+    if (!validateFlagExplicitlyEnabled) {
+      warningifiedAnyErrors = downgradeCfnValidateErrorsToWarnings(reports);
+    }
+    const tree = new ConstructTree(root);
+    inferConstructPathsFromLogicalIds(reports, tree);
+    const stackTraces = collectViolationStackTraces(reports, tree);
+    const suppressedByReport = collectSuppressions(root, reports);
+    const formatter = new PolicyValidationReportFormatter(new ConstructTree(root));
+    const reportJson = formatter.formatJson(reports, assembly.version, stackTraces, suppressedByReport);
+    const reportFile = path16.join(assembly.directory, VALIDATION_REPORT_FILE);
+    fs11.writeFileSync(reportFile, JSON.stringify(reportJson, void 0, 2));
+    if (getBooleanContext(root, VALIDATION_REPORT_JSON_CONTEXT, false)) {
+      fs11.writeFileSync(
+        path16.join(assembly.directory, LEGACY_POLICY_VALIDATION_FILE_PATH),
+        JSON.stringify(formatter.formatLegacyJson(reports), void 0, 2)
+      );
+    }
+    const cdkAppHandlesValidationReporting = getBooleanContext(root, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true);
+    const appMode = cdkAppMode(root);
+    const constructLibStrictMode = getBooleanContext(root, STRICT_CFN_VALIDATE_ERRORS, false);
+    const validationFails = reports.some((r) => !r.success) || constructLibStrictMode && reports.some((r) => r.violations.some((v) => v.severity === "warning"));
+    const reportText = formatValidationReports(process.cwd(), reportJson.pluginReports, DEFAULT_STACK_FRAME_FINDER);
+    const reportPath = humanFriendlyFilename(process.cwd(), reportFile);
+    let preamble = "";
+    if (warningifiedAnyErrors) {
+      if (constructLibStrictMode) {
+        preamble = "[Warning] Template validation found issues in your templates. Construct library strict mode considers these errors.";
+      } else {
+        preamble = `[Warning] Template validation found issues in your templates (reported as warnings).
+Set feature flag "${VALIDATE_AGAINST_DEFAULT_RULES}" to true to turn these into errors.`;
+      }
+    }
+    if (reportText.length === 0) {
+      return;
+    }
+    if (cdkAppHandlesValidationReporting) {
+      const throwException = validationFails && (appMode === "inmemory" || appMode === "unknown");
+      const exceptionContainsReport = appMode === "inmemory";
+      const fullMessage = [];
+      if (preamble) {
+        fullMessage.push(preamble);
+      }
+      fullMessage.push(...reportText);
+      fullMessage.push(`A copy of this report can be found in: ${reportPath}`);
+      if (throwException && exceptionContainsReport) {
+        throw new UnscopedValidationError(lit`ValidationFailed`, stripAnsi(fullMessage.join("\n\n")));
+      } else if (throwException && !exceptionContainsReport) {
+        console.error([
+          ...preamble ? [preamble] : [],
+          ...reportText
+        ].join("\n\n"));
+        throw new UnscopedValidationError(lit`ValidationFailed`, `Validation failed. A copy of this report can be found in: ${reportPath}`);
+      } else {
+        console.error(fullMessage.join("\n\n"));
+        if (validationFails) {
+          process.exitCode = 1;
+        }
+      }
+    } else {
+      if (preamble) {
+        console.error(preamble);
+      }
+    }
+  } catch (_) {
+    var _error = _, _hasError = true;
+  } finally {
+    __callDispose(_stack, _error, _hasError);
+  }
+}
+function getAssemblies(root, rootAssembly) {
+  const assemblies = /* @__PURE__ */ new Map();
+  assemblies.set(root.artifactId, rootAssembly);
+  visitAssemblies(root, "pre", (construct) => {
+    const stage = construct;
+    if (stage.parentStage && assemblies.has(stage.parentStage.artifactId)) {
+      assemblies.set(
+        stage.artifactId,
+        assemblies.get(stage.parentStage.artifactId).getNestedAssembly(stage.artifactId)
+      );
+    }
+  });
+  return assemblies;
+}
+function pluginsToEvaluate(root, stage) {
+  const ret = [];
+  ret.push(...stage._validationPlugins);
+  if (defaultValidationEnabled() && !hasUserRegisteredCloudFormationValidatePlugin(root)) {
+    ret.push(CloudFormationValidatePlugin._singletonInstance());
+  }
+  if (stage === root && FeatureFlags.of(root).isEnabled(ANNOTATIONS_IN_VALIDATION_REPORT)) {
+    const annotationsPlugin = collectAnnotationReport(stage);
+    if (annotationsPlugin) {
+      ret.push(annotationsPlugin);
+    }
+  }
+  return ret;
+}
+function defaultValidationEnabled() {
+  return process.env.CDK_VALIDATION !== "false";
+}
+function downgradeCfnValidateErrorsToWarnings(reports) {
+  let warningifiedAnyErrors = false;
+  for (const report of reports) {
+    if (report.pluginName !== CloudFormationValidatePlugin.PLUGIN_NAME) {
+      continue;
+    }
+    for (const v of report.violations) {
+      if (v.severity === "error" || v.severity === "fatal") {
+        mutable(v).severity = "warning";
+        warningifiedAnyErrors = true;
+      }
+    }
+    mutable(report).success = true;
+  }
+  return warningifiedAnyErrors;
+}
+function inferConstructPathsFromLogicalIds(reports, tree) {
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        if (!resource.constructPath && resource.templatePath && resource.resourceLogicalId) {
+          mutable(resource).constructPath = tree.getConstructByLogicalId(
+            path16.basename(resource.templatePath),
+            resource.resourceLogicalId
+          )?.node.path;
+        }
+      }
+    }
+  }
+}
+function collectSuppressions(root, reports) {
+  const suppressedByReport = /* @__PURE__ */ new Map();
+  const acknowledgedRules = collectAcknowledgedRules(root);
+  if (Object.keys(acknowledgedRules).length > 0) {
+    for (let i = 0; i < reports.length; i++) {
+      const suppressed = suppressInReport(reports[i]);
+      if (suppressed.length > 0) {
+        suppressedByReport.set(i, suppressed);
+        mutable(reports[i]).success = reports[i].violations.every((v) => v.severity !== "error" && v.severity !== "fatal");
+      }
+    }
+  }
+  return suppressedByReport;
+  function suppressInReport(report) {
+    const ruleNamespace = namespaceFromPluginName(report.pluginName);
+    const ret = [];
+    for (let i = 0; i < report.violations.length; i++) {
+      const v = report.violations[i];
+      if (!isSuppressibleViolation(v)) {
+        continue;
+      }
+      const ruleName = normalizeValidationId(v.ruleName, ruleNamespace);
+      const pathBasedSuppressions = acknowledgedRules[ruleName];
+      if (!pathBasedSuppressions) {
+        continue;
+      }
+      const { suppressedGroups, unsuppressed } = groupResourcesBySuppressions(v.violatingResources, pathBasedSuppressions);
+      mutable(v).violatingResources = unsuppressed;
+      for (const suppressedGroup of suppressedGroups) {
+        ret.push({
+          ...v,
+          ...suppressedGroup.acknowledgement,
+          violatingResources: suppressedGroup.resources
+        });
+      }
+      if (v.violatingResources.length === 0) {
+        report.violations.splice(i, 1);
+        i--;
+      }
+    }
+    return ret;
+  }
+}
+function groupResourcesBySuppressions(resources, pathBasedSuppressions) {
+  const unsuppressed = [];
+  const suppressed = {};
+  for (const r of resources) {
+    const ack = findClosestAck(r);
+    if (ack) {
+      suppressed[ack.acknowledgedAt] ??= { acknowledgement: ack, resources: [] };
+      suppressed[ack.acknowledgedAt].resources.push(r);
+    } else {
+      unsuppressed.push(r);
+    }
+  }
+  return {
+    suppressedGroups: Object.values(suppressed),
+    unsuppressed
+  };
+  function findClosestAck(r) {
+    let constructPath = r.constructPath ?? "";
+    let ret = pathBasedSuppressions[constructPath];
+    while (ret === void 0 && constructPath !== "") {
+      const lastDot = constructPath.lastIndexOf("/");
+      if (lastDot === -1) {
+        constructPath = "";
+      } else {
+        constructPath = constructPath.substring(0, lastDot);
+      }
+      ret = pathBasedSuppressions[constructPath];
+    }
+    return ret;
+  }
+}
+function collectViolationStackTraces(reports, tree) {
+  const ret = new ExtraObjectData();
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        const constructPath = resource.constructPath;
+        if (!constructPath) {
+          continue;
+        }
+        const stacks = [];
+        const creationTrace = tree.creationTraceByPath(constructPath);
+        if (creationTrace) {
+          stacks.push(creationTrace);
+        }
+        stacks.push(...resource.locations.flatMap((location) => tree.mutationTracesByPath(constructPath, location)));
+        if (stacks.length > 0) {
+          ret.attach(resource, stacks);
+        }
+      }
+    }
+  }
+  return ret;
+}
+function doInvokeValidationPlugins(outdir, plugins, root) {
+  const untrustedPlugins = new Set(Array.from(plugins.values()).map((p) => p[0]).filter((p) => !isTrustedPlugin(p)));
+  const preExistingFileHashes = untrustedPlugins.size > 0 ? snapshotFileHashes(outdir) : void 0;
+  const ret = plugins.flatMap(([plugin, stacks]) => invokeSinglePlugin(plugin, Array.from(stacks)));
+  if (preExistingFileHashes) {
+    if (hasModifiedPreExistingFiles(preExistingFileHashes)) {
+      const pluginNames = Array.from(untrustedPlugins).map((p) => p.name);
+      throw new AssumptionError(lit`IllegalPluginOperation`, `One of the validation plugins (${pluginNames.join(", ")}) modified the cloud assembly`);
+    }
+  }
+  return ret;
+  function invokeSinglePlugin(plugin, stackArtifacts) {
+    if (stackArtifacts.length === 0) {
+      return [];
+    }
+    const stackTemplates = stackArtifacts.map((s) => ({
+      stackConstructPath: s.hierarchicalId,
+      templatePath: s.templateFullPath,
+      accountId: s.environment.account !== import_cloud_assembly_api.UNKNOWN_ACCOUNT ? s.environment.account : void 0,
+      region: s.environment.region !== import_cloud_assembly_api.UNKNOWN_REGION ? s.environment.region : void 0
+    }));
+    const accountId = stackTemplates.every((s) => s.accountId === stackTemplates[0].accountId) ? stackTemplates[0].accountId : void 0;
+    const region = stackTemplates.every((s) => s.region === stackTemplates[0].region) ? stackTemplates[0].region : void 0;
+    try {
+      const report = makeTemplatePathsRelative(plugin.validate({
+        templatePaths: stackTemplates.map((s) => s.templatePath),
+        stackTemplates,
+        appConstruct: root,
+        accountId,
+        region
+      }));
+      return [{ ...report, pluginName: plugin.name, pluginVersion: plugin.version }];
+    } catch (e) {
+      if (e instanceof AssumptionError && e.name === "IllegalPluginOperation") {
+        throw e;
+      }
+      return [mkPluginFailure(plugin, e)];
+    }
+  }
+  function makeTemplatePathsRelative(report) {
+    for (const v of report.violations) {
+      for (const r of v.violatingResources) {
+        if (r.templatePath) {
+          mutable(r).templatePath = path16.relative(outdir, path16.resolve(r.templatePath));
+        }
+      }
+    }
+    return report;
+  }
+}
+function isTrustedPlugin(x) {
+  return x instanceof CloudFormationValidatePlugin;
+}
+function visitAssemblies(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (!STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visitAssemblies(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+function getBooleanContext(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+function snapshotFileHashes(dir) {
+  const hashes = /* @__PURE__ */ new Map();
+  for (const filePath of collectFilePaths(dir)) {
+    hashes.set(filePath, hashFile(filePath));
+  }
+  return hashes;
+}
+function hasModifiedPreExistingFiles(snapshot) {
+  for (const [filePath, originalHash] of snapshot) {
+    if (!fileOrSymlinkExists(filePath) || hashFile(filePath) !== originalHash) {
+      return true;
+    }
+  }
+  return false;
+}
+function collectFilePaths(dir) {
+  const results = [];
+  function walk(current) {
+    for (const entry of fs11.readdirSync(current, { withFileTypes: true })) {
+      const full = path16.join(current, entry.name);
+      if (entry.isDirectory()) {
+        walk(full);
+      } else if (entry.isFile()) {
+        results.push(full);
+      } else if (entry.isSymbolicLink()) {
+        let st;
+        try {
+          st = fs11.lstatSync(full);
+        } catch {
+          continue;
+        }
+        if (st.isFile() || st.isSymbolicLink()) {
+          results.push(full);
+        }
+      }
+    }
+  }
+  walk(dir);
+  return results;
+}
+function hashFile(filePath) {
+  const content = fs11.lstatSync(filePath).isSymbolicLink() ? Buffer.from(fs11.readlinkSync(filePath)) : fs11.readFileSync(filePath);
+  return crypto7.createHash("sha256").update(content).digest("hex");
+}
+function fileOrSymlinkExists(p) {
+  try {
+    fs11.lstatSync(p);
+    return true;
+  } catch {
+    return false;
+  }
+}
+function hasUserRegisteredCloudFormationValidatePlugin(root) {
+  let count2 = 0;
+  visitAssemblies(root, "post", (construct) => {
+    if (!STAGE_TYPE.isMarked(construct)) return;
+    for (const plugin of construct._validationPlugins) {
+      if (!(plugin instanceof CloudFormationValidatePlugin)) continue;
+      if (construct !== root) {
+        throw new UnscopedValidationError(lit`CloudFormationValidatePluginNotAtApp`, "CloudFormationValidatePlugin can only be registered at the App level, not on a Stage");
+      }
+      count2++;
+    }
+  });
+  if (count2 > 1) {
+    throw new UnscopedValidationError(lit`DuplicateCloudFormationValidatePlugin`, "only one instance of CloudFormationValidatePlugin can be registered");
+  }
+  return count2 === 1;
+}
+function mutable(obj) {
+  return obj;
+}
+function cdkAppMode(root) {
+  const contextMode = root.node.tryGetContext(CDK_APP_MODE_CONTEXT);
+  if (contextMode === "process" || contextMode === "inmemory") {
+    return contextMode;
+  }
+  const envMode = process.env[CDK_APP_MODE_ENV];
+  if (envMode === "process" || envMode === "inmemory") {
+    return envMode;
+  }
+  if (process.env.NODE_ENV === "test" || process.env.PYTEST_VERSION || process.env.PYTEST_CURRENT_TEST) {
+    return "inmemory";
+  }
+  return "unknown";
+}
+var crypto7, fs11, path16, LEGACY_POLICY_VALIDATION_FILE_PATH;
+var init_synthesis_validation = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis-validation.ts"() {
+    "use strict";
+    crypto7 = __toESM(require("crypto"));
+    fs11 = __toESM(require("fs"));
+    path16 = __toESM(require("path"));
+    init_annotation_plugin();
+    init_collect_acknowledged_rule_ids();
+    init_literal_string();
+    init_cx_api();
+    init_app2();
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_perf();
+    init_stack_trace();
+    init_cloudformation_validate_plugin();
+    init_construct_tree();
+    init_modern_formatter();
+    init_report2();
+    init_validation_id();
+    LEGACY_POLICY_VALIDATION_FILE_PATH = "policy-validation-report.json";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tree.ts
+var TreeInspector;
+var init_tree = __esm({
+  "../../aws-cdk-lib/core/lib/tree.ts"() {
+    "use strict";
+    TreeInspector = class {
+      /**
+       * Represents the bag of attributes as key-value pairs.
+       */
+      attributes = {};
+      /**
+       * Adds attribute to bag. Keys should be added by convention to prevent conflicts
+       * i.e. L1 constructs will contain attributes with keys prefixed with aws:cdk:cloudformation
+       *
+       * @param key - key for metadata
+       * @param value - value of metadata.
+       */
+      addAttribute(key, value) {
+        this.attributes[key] = value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/tree-metadata.ts
+function nodeCount(root) {
+  let count2 = 0;
+  const stack = [root];
+  while (stack.length > 0) {
+    const current = stack.pop();
+    count2 += 1;
+    if (current.children) {
+      for (const child of Object.values(current.children)) {
+        stack.push(child);
+      }
+    }
+  }
+  return count2;
+}
+function setChild(parent, node) {
+  if (!parent.children) {
+    parent.children = {};
+  }
+  parent.children[node.id] = node;
+}
+var fs12, path17, import_constructs16, FILE_PATH, TreeMetadata, FragmentedTreeWriter;
+var init_tree_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/tree-metadata.ts"() {
+    "use strict";
+    fs12 = __toESM(require("fs"));
+    path17 = __toESM(require("path"));
+    import_constructs16 = __toESM(require_lib4());
+    init_runtime_info();
+    init_cloud_assembly_schema();
+    init_annotations();
+    init_tree();
+    init_construct_iteration();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    FILE_PATH = "tree.json";
+    TreeMetadata = class extends import_constructs16.Construct {
+      constructor(scope) {
+        super(scope, "Tree");
+      }
+      /**
+       * Create tree.json
+       * @internal
+       */
+      _synthesizeTree(session) {
+        const maxNodesPerTree = this.node.tryGetContext("@aws-cdk/core.TreeMetadata:maxNodes");
+        const builder = session.assembly;
+        const writer = new FragmentedTreeWriter(builder.outdir, FILE_PATH, { maxNodesPerTree });
+        for (const { construct, parent } of iterateBfs(this.node.root)) {
+          const node = {
+            id: construct.node.id || "App",
+            path: construct.node.path,
+            constructInfo: constructInfoFromConstruct(construct)
+          };
+          try {
+            node.attributes = this.synthAttributes(construct);
+          } catch (e) {
+            Annotations.of(this).addWarningV2(`@aws-cdk/core:failedToRenderTreeMetadata-${construct.node.id}`, `Failed to render tree metadata for node [${construct.node.id}]. Reason: ${e}`);
+          }
+          writer.addNode(construct, parent, node);
+        }
+        const rootFilename = writer.writeForest();
+        builder.addArtifact("Tree", {
+          type: cloud_assembly_schema_exports.ArtifactType.CDK_TREE,
+          properties: {
+            file: rootFilename
+          }
+        });
+      }
+      synthAttributes(construct) {
+        function canInspect2(inspectable) {
+          return inspectable.inspect !== void 0;
+        }
+        const inspector = new TreeInspector();
+        if (canInspect2(construct)) {
+          construct.inspect(inspector);
+          return stackOf(construct).resolve(inspector.attributes);
+        }
+        return void 0;
+      }
+    };
+    FragmentedTreeWriter = class {
+      constructor(outdir, rootFilename, options) {
+        this.outdir = outdir;
+        this.rootFilename = rootFilename;
+        this.maxNodes = options?.maxNodesPerTree ?? 5e5;
+      }
+      outdir;
+      rootFilename;
+      /**
+       * We only care about the identify of this object.
+       *
+       * Whatever tree in the forest is "pointed to" by this pointer is the main tree.
+       */
+      mainTreePointer = {
+        fileName: "yyy",
+        id: "id",
+        path: "path"
+      };
+      forest = new Array();
+      /**
+       * Maps a Construct to its respective Node
+       */
+      constructMap = /* @__PURE__ */ new Map();
+      /**
+       * Map a root Node to its containing Tree
+       */
+      subtreeRoots = /* @__PURE__ */ new Map();
+      /**
+       * Map a Node to its parent Node
+       */
+      parent = /* @__PURE__ */ new Map();
+      maxNodes;
+      /**
+       * Write the forest to disk, return the root file name
+       */
+      writeForest() {
+        const forestFiles = this.allocateSubTreesToForestFiles();
+        const mainTree = this.forest.find((t) => t.referencingNode === this.mainTreePointer);
+        if (mainTree) {
+          const treeFile = { version: "tree-0.1", tree: mainTree.root };
+          fs12.writeFileSync(path17.join(this.outdir, this.rootFilename), JSON.stringify(treeFile), { encoding: "utf-8" });
+        }
+        for (const forestFile of forestFiles) {
+          fs12.writeFileSync(path17.join(this.outdir, forestFile.fileName), JSON.stringify(forestFile.file), { encoding: "utf-8" });
+        }
+        return this.rootFilename;
+      }
+      /**
+       * Find all non-main tree and combine them into forest files
+       *
+       * This will mutate the pointing nodes as a side effect.
+       */
+      allocateSubTreesToForestFiles() {
+        const ret = new Array();
+        for (const tree of this.forest) {
+          if (tree.referencingNode === this.mainTreePointer) {
+            continue;
+          }
+          let targetForest;
+          if (ret.length === 0 || ret[ret.length - 1].nodeCount + tree.nodes > this.maxNodes) {
+            targetForest = {
+              fileName: `trees-${ret.length + 1}.json`,
+              file: { version: "forest-0.1", forest: {} },
+              nodeCount: 0,
+              treeCount: 0
+            };
+            ret.push(targetForest);
+          } else {
+            targetForest = ret[ret.length - 1];
+          }
+          const treeId = `t${targetForest.treeCount++}`;
+          targetForest.file.forest[treeId] = tree.root;
+          targetForest.nodeCount += tree.nodes;
+          tree.referencingNode.fileName = targetForest.fileName;
+          tree.referencingNode.treeId = treeId;
+        }
+        return ret;
+      }
+      addNode(construct, parent, node) {
+        if (parent === void 0) {
+          if (this.forest.length > 0) {
+            throw new AssumptionError(lit`OnlyOneNodeWithoutParent`, "Can only add exactly one node without a parent");
+          }
+          this.addNewTree(node, this.mainTreePointer);
+        } else {
+          const parentNode = this.constructMap.get(parent);
+          if (!parentNode) {
+            return;
+          }
+          this.addToExistingTree(node, parentNode);
+        }
+        this.constructMap.set(construct, node);
+      }
+      /**
+       * Add a new tree with the given Node as root
+       */
+      addNewTree(root, referencingNode) {
+        const tree = {
+          root,
+          referencingNode,
+          nodes: nodeCount(root)
+        };
+        this.forest.push(tree);
+        this.subtreeRoots.set(root, tree);
+        return tree;
+      }
+      /**
+       * Add the given node to an existing tree, potentially splitting it
+       */
+      addToExistingTree(node, parent) {
+        let tree = this.treeForNode(parent);
+        if (this.isTreeFull(tree)) {
+          const grandParent = this.parent.get(parent);
+          if (!grandParent) {
+            throw new AssumptionError(lit`CouldNotFindParent`, `Could not find parent of ${JSON.stringify(parent)}`);
+          }
+          const subtreeReference = {
+            id: parent.id,
+            path: parent.path,
+            fileName: "xxx"
+            // Will be replaced later
+          };
+          tree = this.addNewTree(parent, subtreeReference);
+          setChild(grandParent, subtreeReference);
+          this.subtreeRoots.set(parent, tree);
+        }
+        setChild(parent, node);
+        this.parent.set(node, parent);
+        tree.nodes += 1;
+      }
+      /**
+       * Whether the given tree is full
+       */
+      isTreeFull(t) {
+        return t.nodes >= this.maxNodes;
+      }
+      /**
+       * Return the Tree that contains the given Node
+       */
+      treeForNode(node) {
+        const tried = new Array();
+        let cur = node;
+        tried.push(cur.path);
+        let tree = this.subtreeRoots.get(cur);
+        while (!tree && cur) {
+          cur = this.parent.get(cur);
+          tried.push(cur?.path);
+          tree = cur && this.subtreeRoots.get(cur);
+        }
+        if (tree) {
+          return tree;
+        }
+        throw new AssumptionError(lit`CouldNotFindTreeForNode`, `Could not find tree for node: ${JSON.stringify(node)}, tried ${tried}`);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis.ts
+function synthesize(root, options = {}) {
+  injectTreeMetadata(root);
+  synthNestedAssemblies(root, options);
+  if (options.aspectStabilization) {
+    invokeAspectsV2(root);
+  } else {
+    invokeAspects(root);
+  }
+  injectMetadataResources(root);
+  prepareApp(root);
+  if (!options.skipValidation) {
+    validateTree(root);
+  }
+  const builder = STAGE_TYPE.isMarked(root) ? _convertCloudAssemblyBuilder(root._assemblyBuilder) : new private_cxapi.CloudAssemblyBuilder(options.outdir);
+  synthesizeTree(root, builder, options.validateOnSynthesis);
+  generateFeatureFlagReport(builder, root);
+  const assembly = builder.buildAssembly();
+  validateTemplates(root, builder.outdir, assembly);
+  return assembly;
+}
+function addCustomSynthesis(construct, synthesis) {
+  Object.defineProperty(construct, CUSTOM_SYNTHESIS_SYM, {
+    value: synthesis,
+    enumerable: false
+  });
+}
+function getCustomSynthesis(construct) {
+  return construct[CUSTOM_SYNTHESIS_SYM];
+}
+function synthNestedAssemblies(root, options) {
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      child.synth(options);
+    } else {
+      synthNestedAssemblies(child, options);
+    }
+  }
+}
+function invokeAspects(root) {
+  const invokedByPath = {};
+  let nestedAspectWarning = false;
+  recurse(root, []);
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    const aspects = Aspects.of(construct);
+    let localAspects = getAspectApplications(construct);
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, localAspects);
+    const nodeAspectsCount = aspects.all.length;
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath[node.path];
+      if (!invoked) {
+        invoked = invokedByPath[node.path] = [];
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      aspectApplication.aspect.visit(construct);
+      if (!nestedAspectWarning && nodeAspectsCount !== aspects.all.length) {
+        Annotations.of(construct).addWarningV2("@aws-cdk/core:ignoredAspect", "We detected an Aspect was added via another Aspect, and will not be applied");
+        nestedAspectWarning = true;
+      }
+      invoked.push(aspectApplication);
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        recurse(child, allAspectsHere);
+      }
+    }
+  }
+}
+function invokeAspectsV2(root) {
+  const invokedByPath = /* @__PURE__ */ new Map();
+  recurse(root, []);
+  for (let i = 0; i <= 100; i++) {
+    const didAnythingToTree = recurse(root, []);
+    if (didAnythingToTree === "nothing") {
+      return;
+    }
+  }
+  throw new UnscopedValidationError(lit`PossibleInfiniteLoopDetected`, "We have detected a possible infinite loop while invoking Aspects. Please check your Aspects and verify there is no configuration that would cause infinite Aspect or Node creation.");
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    let ret = "nothing";
+    const currentAspectTreeRevision = _aspectTreeRevisionReader(construct);
+    const versionAtStart = currentAspectTreeRevision();
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, getAspectApplications(construct));
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath.get(node.path);
+      if (!invoked) {
+        invokedByPath.set(node.path, invoked = []);
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      const lastInvokedAspect = invoked[invoked.length - 1];
+      if (lastInvokedAspect && lastInvokedAspect.priority > aspectApplication.priority) {
+        throw new UnscopedValidationError(
+          lit`CannotInvokeAspectWithLowerPriority`,
+          `Cannot invoke Aspect ${aspectApplication.aspect.constructor.name} with priority ${aspectApplication.priority} on node ${node.path}: an Aspect ${lastInvokedAspect.aspect.constructor.name} with a lower priority (added at ${lastInvokedAspect.construct.node.path} with priority ${lastInvokedAspect.priority}) was already invoked on this node.`
+        );
+      }
+      aspectApplication.aspect.visit(construct);
+      ret = "invoked";
+      invoked.push(aspectApplication);
+      if (currentAspectTreeRevision() !== versionAtStart) {
+        return "abort-recursion";
+      }
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        const childDidSomething = recurse(child, allAspectsHere);
+        ret = childDidSomething !== "nothing" ? childDidSomething : ret;
+        if (ret === "abort-recursion") {
+          break;
+        }
+      }
+    }
+    return ret;
+  }
+}
+function sortAspectsByPriority(inheritedAspects, localAspects) {
+  const allAspects = [...inheritedAspects, ...localAspects].sort((a, b) => {
+    if (a.priority !== b.priority) {
+      return a.priority - b.priority;
+    }
+    const isAInherited = inheritedAspects.includes(a);
+    const isBInherited = inheritedAspects.includes(b);
+    if (isAInherited && !isBInherited) return -1;
+    if (!isAInherited && isBInherited) return 1;
+    return 0;
+  });
+  return allAspects;
+}
+function getAspectApplications(node) {
+  const aspects = Aspects.of(node);
+  if (aspects.applied !== void 0) {
+    return aspects.applied;
+  }
+  const typedAspects = aspects;
+  return typedAspects.all.map((aspect) => new AspectApplication(node, aspect, AspectPriority.DEFAULT));
+}
+function injectMetadataResources(root) {
+  visit(root, "post", (construct) => {
+    if (!STACK_TYPE.isMarked(construct) || !construct._versionReportingEnabled) {
+      return;
+    }
+    const CDKMetadata = "CDKMetadata";
+    if (construct.node.tryFindChild(CDKMetadata)) {
+      return;
+    }
+    new MetadataResource(construct, CDKMetadata);
+  });
+}
+function injectTreeMetadata(root) {
+  visit(root, "post", (construct) => {
+    if (!App.isApp(construct) || !construct._treeMetadata) return;
+    const CDKTreeMetadata = "Tree";
+    if (construct.node.tryFindChild(CDKTreeMetadata)) return;
+    new TreeMetadata(construct);
+  });
+}
+function synthesizeTree(root, builder, validateOnSynth = false) {
+  visit(root, "post", (construct) => {
+    const session = {
+      outdir: builder.outdir,
+      assembly: _convertCloudAssemblyBuilder(builder),
+      validateOnSynth
+    };
+    if (STACK_TYPE.isMarked(construct)) {
+      construct.synthesizer.synthesize(session);
+    } else if (construct instanceof TreeMetadata) {
+      construct._synthesizeTree(session);
+    } else {
+      const custom = getCustomSynthesis(construct);
+      custom?.onSynthesize(session);
+    }
+  });
+}
+function validateTree(root) {
+  const errors = new Array();
+  visit(root, "pre", (construct) => {
+    for (const message of construct.node.validate()) {
+      errors.push({ message, source: construct });
+    }
+  });
+  if (errors.length > 0) {
+    const errorList = errors.map((e) => `[${e.source.node.path}] ${e.message}`).join("\n  ");
+    throw new UnscopedValidationError(lit`ValidationFailedWithErrors`, `Validation failed with the following errors:
+  ${errorList}`);
+  }
+}
+function visit(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visit(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+var private_cxapi, CUSTOM_SYNTHESIS_SYM;
+var init_synthesis = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis.ts"() {
+    "use strict";
+    private_cxapi = __toESM(require_lib3());
+    init_core_construct_finders();
+    init_feature_flag_report();
+    init_literal_string();
+    init_metadata_resource2();
+    init_prepare_app();
+    init_synthesis_validation();
+    init_tree_metadata();
+    init_legacy_moved();
+    init_annotations();
+    init_app2();
+    init_aspect();
+    init_errors();
+    CUSTOM_SYNTHESIS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core:customSynthesis");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validation.ts
+function _toBeta1Plugin(plugin) {
+  return {
+    name: plugin.name,
+    version: plugin.version,
+    ruleIds: plugin.ruleIds,
+    validate(context) {
+      const report = plugin.validate({
+        ...context,
+        // This is incorrect information -- it doesn't matter, this function shouldn't be used regardless.
+        stackTemplates: [],
+        accountId: void 0,
+        region: void 0
+      });
+      return {
+        success: report.success,
+        pluginVersion: report.pluginVersion,
+        metadata: report.metadata,
+        violations: report.violations.map((v) => ({
+          ruleName: v.ruleName,
+          description: v.description,
+          fix: v.fix,
+          severity: v.severity,
+          ruleMetadata: v.ruleMetadata,
+          violatingResources: v.violatingResources.map((r) => ({
+            resourceLogicalId: r.resourceLogicalId ?? "",
+            templatePath: r.templatePath ?? "",
+            locations: r.locations
+          }))
+        }))
+      };
+    }
+  };
+}
+var init_validation = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validation.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validations.ts
+var Validations;
+var init_validations = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validations.ts"() {
+    "use strict";
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_stack_trace();
+    init_validation_id();
+    Validations = class _Validations {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      /**
+       * Metadata key used to store acknowledged rules on construct nodes.
+       *
+       * Plugin authors can read this metadata to build audit trails from
+       * acknowledgments recorded via `acknowledge()`.
+       */
+      static ACKNOWLEDGED_RULES_METADATA_KEY = "aws:cdk:acknowledged-rules";
+      /**
+       * Returns the Validations for the given construct scope.
+       *
+       * @param scope any construct
+       */
+      static of(scope) {
+        return new _Validations(scope);
+      }
+      /**
+       * Register one or more validation plugins that will be executed during synthesis.
+       *
+       * Plugins can only be registered within a Stage or App scope.
+       * If any plugin reports a violation, synthesis will be interrupted and the
+       * report displayed to the user.
+       *
+       * @param plugins the validation plugins to add
+       */
+      addPlugins(...plugins) {
+        const stage = STAGE_TYPE.isMarked(this.scope) ? this.scope : stageOf(this.scope);
+        if (!stage) {
+          throw new UnscopedValidationError(lit`NoStageForValidationPlugins`, "Cannot add validation plugins on a construct without an enclosing Stage");
+        }
+        stage._addValidationPlugins(...plugins);
+      }
+      /**
+       * Adds a warning metadata entry to this construct that can be acknowledged.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * The ID will be stored with the `annotation` prefix (e.g. `annotation::MyWarning`).
+       * Use this prefixed ID when calling `acknowledge()` to suppress the warning.
+       *
+       * @param id unique identifier for the warning, used for acknowledgement
+       * @param message the warning message
+       */
+      addWarning(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addWarningV2(id, message);
+      }
+      /**
+       * Adds an error metadata entry to this construct.
+       *
+       * Synthesis will be interrupted when errors are reported.
+       *
+       * Note: Annotation errors are not currently acknowledgeable. The ID is
+       * recorded for identification purposes but `acknowledge()` will not
+       * suppress errors added via this method.
+       *
+       * @param id unique identifier for the error
+       * @param message the error message
+       */
+      addError(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addError(`${message} (${id})`);
+      }
+      /**
+       * Acknowledge one or more rules, suppressing them from validation output.
+       *
+       * Acknowledgments are recorded to construct metadata so that downstream
+       * plugins (e.g. CDK Nag) can read them for audit trails.
+       *
+       * Currently only annotation warnings can be suppressed. Annotation errors
+       * are not yet acknowledgeable.
+       *
+       * If an ID has no well-known prefix, it is assumed to be an annotation rule
+       * for backwards compatibility.
+       *
+       * @param rules the rules to acknowledge
+       */
+      acknowledge(...rules) {
+        for (const rule of rules) {
+          const parsed = parseValidationId(rule.id);
+          const qualifiedId = normalizeValidationIdForAnnotations(parsed);
+          this.recordAcknowledgment(qualifiedId, rule.reason);
+          Annotations.of(this.scope).acknowledgeWarning(qualifiedId);
+          if (qualifiedId.startsWith(`${ANNOTATION_PLUGIN_NAMESPACE}::`)) {
+            const annotationId = qualifiedId.substring(`${ANNOTATION_PLUGIN_NAMESPACE}::`.length);
+            Annotations.of(this.scope).acknowledgeWarning(annotationId);
+          }
+        }
+      }
+      recordAcknowledgment(id, reason) {
+        this.scope.node.addMetadata(
+          _Validations.ACKNOWLEDGED_RULES_METADATA_KEY,
+          { [id]: reason },
+          // eslint-disable-next-line @typescript-eslint/unbound-method
+          { stackTraceOverride: enhancedStackTrace(this.recordAcknowledgment) }
+        );
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/index.ts
+var init_validation2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/index.ts"() {
+    "use strict";
+    init_validation();
+    init_validations();
+    init_report();
+    init_cloudformation_validate_plugin();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stage.ts
+function stripInPlace(arr, startIndex, predicate) {
+  for (let i = startIndex; i < arr.length; i++) {
+    if (predicate(arr[i])) {
+      arr.splice(i, 1);
+      i--;
+    }
+  }
+}
+var private_cxapi2, import_constructs17, Stage;
+var init_stage = __esm({
+  "../../aws-cdk-lib/core/lib/stage.ts"() {
+    "use strict";
+    private_cxapi2 = __toESM(require_lib3());
+    import_constructs17 = __toESM(require_lib4());
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_synthesis();
+    init_prop_injectors();
+    init_validation2();
+    init_cx_api();
+    init_cx_api();
+    init_literal_string();
+    Stage = class _Stage extends import_constructs17.Construct {
+      /**
+       * Return the stage this construct is contained with, if available. If called
+       * on a nested stage, returns its parent.
+       *
+       */
+      static of(construct) {
+        return stageOf(construct);
+      }
+      /**
+       * Test whether the given construct is a stage.
+       *
+       */
+      static isStage(x) {
+        return STAGE_TYPE.isMarked(x);
+      }
+      /**
+       * The default region for all resources defined within this stage.
+       *
+       */
+      region;
+      /**
+       * The default account for all resources defined within this stage.
+       *
+       */
+      account;
+      /**
+       * The cloud assembly builder that is being used for this App
+       *
+       * @internal
+       */
+      _assemblyBuilder;
+      /**
+       * The name of the stage. Based on names of the parent stages separated by
+       * hypens.
+       *
+       */
+      stageName;
+      /**
+       * The parent stage or `undefined` if this is the app.
+       * *
+       */
+      parentStage;
+      /**
+       * The cached assembly if it was already built
+       */
+      assembly;
+      /**
+       * The cached set of construct paths. Empty if assembly was not yet built.
+       */
+      constructPathsCache;
+      /**
+       * Validation plugins to run during synthesis. If any plugin reports any violation,
+       * synthesis will be interrupted and the report displayed to the user.
+       *
+       * @default - no validation plugins are used
+       * @deprecated Do not use this function to look up validation plugins. Use `Validations.of(stage).plugins` instead.
+       */
+      get policyValidationBeta1() {
+        return this._policyValidation.map(_toBeta1Plugin);
+      }
+      _policyValidation = [];
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        if (id !== "" && !/^[a-z][a-z0-9\-\_\.]*$/i.test(id)) {
+          throw new ValidationError(lit`InvalidStageName`, `invalid stage name "${id}". Stage name must start with a letter and contain only alphanumeric characters, hypens ('-'), underscores ('_') and periods ('.')`, this);
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        STAGE_TYPE.mark(this);
+        this.constructPathsCache = /* @__PURE__ */ new Set();
+        this.parentStage = _Stage.of(this);
+        this.region = props.env?.region ?? this.parentStage?.region;
+        this.account = props.env?.account ?? this.parentStage?.account;
+        props.permissionsBoundary?._bind(this);
+        this._assemblyBuilder = this.createBuilder(props.outdir);
+        this.stageName = [this.parentStage?.stageName, props.stageName ?? id].filter((x) => x).join("-");
+        if (props.policyValidationBeta1) {
+          this._policyValidation.push(...props.policyValidationBeta1);
+        }
+      }
+      /**
+       * Register a validation plugin on this stage.
+       *
+       * @internal
+       */
+      _addValidationPlugins(...plugins) {
+        this._policyValidation.push(...plugins);
+      }
+      /**
+       * Returns the raw validation plugins without Beta1 wrapping.
+       *
+       * @internal
+       */
+      get _validationPlugins() {
+        return [...this._policyValidation];
+      }
+      /**
+       * The cloud assembly output directory.
+       */
+      get outdir() {
+        return this._assemblyBuilder.outdir;
+      }
+      /**
+       * The cloud assembly asset output directory.
+       */
+      get assetOutdir() {
+        return this._assemblyBuilder.assetOutdir;
+      }
+      /**
+       * Artifact ID of the assembly if it is a nested stage. The root stage (app)
+       * will return an empty string.
+       *
+       * Derived from the construct path.
+       */
+      get artifactId() {
+        if (!this.node.path) {
+          return "";
+        }
+        return `assembly-${this.node.path.replace(/\//g, "-").replace(/^-+|-+$/g, "")}`;
+      }
+      /**
+       * Synthesize this stage into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        let newConstructPaths = this.listAllConstructPaths(this);
+        if (this.constructPathsCache.size == 0 || !this.assembly || options.force) {
+          this.assembly = _convertCloudAssembly(synthesize(this, {
+            skipValidation: options.skipValidation,
+            validateOnSynthesis: options.validateOnSynthesis,
+            aspectStabilization: options.aspectStabilization ?? FeatureFlags.of(this).isEnabled(ASPECT_STABILIZATION) ?? false
+          }));
+          newConstructPaths = this.listAllConstructPaths(this);
+          this.constructPathsCache = newConstructPaths;
+        }
+        if (!this.constructPathSetsAreEqual(this.constructPathsCache, newConstructPaths)) {
+          const diff = this.constructPathSetsDiff(this.constructPathsCache, newConstructPaths).join(", ");
+          const errorMessage = `Synthesis has been called multiple times and the construct tree was modified after the first synthesis (${diff})`;
+          if (options.errorOnDuplicateSynth ?? true) {
+            throw new ValidationError(lit`ConstructTreeModifiedAfterSynth`, errorMessage + " This is not allowed. Remove multple synth() calls and do not modify the construct tree after the first synth().", this);
+          } else {
+            console.error(errorMessage + " Only the results of the first synth() call are used, and modifications done after it are ignored. Avoid construct tree mutations after synth() has been called unless this is intentional.");
+          }
+        }
+        this.constructPathsCache = newConstructPaths;
+        return this.assembly;
+      }
+      // Function that lists all construct paths and returns them as a set
+      listAllConstructPaths(construct) {
+        const paths = /* @__PURE__ */ new Set();
+        function recurse(root) {
+          paths.add(root.node.path);
+          for (const child of root.node.children) {
+            if (!STAGE_TYPE.isMarked(child)) {
+              recurse(child);
+            }
+          }
+        }
+        recurse(construct);
+        return paths;
+      }
+      // Checks if sets of construct paths are equal
+      constructPathSetsAreEqual(set1, set2) {
+        if (set1.size !== set2.size) return false;
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      /**
+       * Returns a list of +/- marked construct paths that have been added or removed between the 2 sets
+       */
+      constructPathSetsDiff(set1, set2) {
+        const ret = [];
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            ret.push(`-${id}`);
+          }
+        }
+        for (const id of set2) {
+          if (!set1.has(id)) {
+            ret.push(`+${id}`);
+          }
+        }
+        ret.sort((a, b) => a.length - b.length);
+        for (let i = 0; i < ret.length; i++) {
+          const prefix = ret[i] + "/";
+          stripInPlace(ret, i + 1, (x) => x.startsWith(prefix));
+        }
+        return ret;
+      }
+      createBuilder(outdir) {
+        if (this.parentStage && outdir) {
+          throw new ValidationError(lit`OutdirCannotBeSpecifiedForNestedStage`, '"outdir" cannot be specified for nested stages', this);
+        }
+        return this.parentStage ? this.parentStage._assemblyBuilder.createNestedAssembly(this.artifactId, this.node.path) : _convertCloudAssemblyBuilder(new private_cxapi2.CloudAssemblyBuilder(outdir));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/stack-metadata.ts
+function constructAnalyticsFromScope(scope) {
+  const isDefined = (value) => value !== void 0;
+  const allConstructInfos = constructsInScope(scope).map((construct) => [construct, constructInfoFromConstruct(construct)]).filter((c) => {
+    const [_, info] = c;
+    return isDefined(info) && ALLOWED_FQN_PREFIXES.find((prefix) => info.fqn.startsWith(prefix)) != null;
+  }).map(([construct, info]) => injectAnalytics(construct, info));
+  allConstructInfos.push({
+    fqn: "jsii-runtime.Runtime",
+    version: getJsiiAgentVersion()
+  });
+  addValidationPluginInfo(scope, allConstructInfos);
+  const uniqueMap = /* @__PURE__ */ new Map();
+  allConstructInfos.forEach((info) => {
+    const key = `${info.fqn}@${info.version}`;
+    if (uniqueMap.has(key)) {
+      const existingInfo = uniqueMap.get(key);
+      if (existingInfo && existingInfo.additionalTelemetry && info.additionalTelemetry) {
+        existingInfo.additionalTelemetry.push(...info.additionalTelemetry);
+      }
+      if (existingInfo && existingInfo.metadata && info.metadata) {
+        existingInfo.metadata.push(...info.metadata);
+      }
+    } else {
+      uniqueMap.set(key, info);
+    }
+  });
+  return Array.from(uniqueMap.values());
+}
+function injectAnalytics(construct, info) {
+  const metadata = new Array();
+  const additionalTelemetry = new Array();
+  for (const entry of construct.node.metadata) {
+    if (isResource(construct) && ADDITIONAL_TELEMETRY_METADATA_TYPES.has(entry.type)) {
+      additionalTelemetry.push(entry.data);
+    } else if (ALLOWED_METADATA_TYPES.has(entry.type)) {
+      metadata.push(entry.data);
+    }
+  }
+  return {
+    ...info,
+    metadata: metadata.length ? metadata : void 0,
+    additionalTelemetry: additionalTelemetry.length ? additionalTelemetry : void 0
+  };
+}
+function constructsInScope(construct) {
+  const constructs = [construct];
+  construct.node.children.filter((child) => !STAGE_TYPE.isMarked(child) && !STACK_TYPE.isMarked(child)).forEach((child) => constructs.push(...constructsInScope(child)));
+  return constructs;
+}
+function getJsiiAgentVersion() {
+  let jsiiAgent = process.env.JSII_AGENT;
+  if (!jsiiAgent) {
+    jsiiAgent = `node.js/${process.version}`;
+  }
+  jsiiAgent = jsiiAgent.replace(/[^a-z0-9.-/=_]/gi, "-");
+  return jsiiAgent;
+}
+function addValidationPluginInfo(scope, allConstructInfos) {
+  let stage = Stage.of(scope);
+  let done = false;
+  do {
+    if (App.isApp(stage)) {
+      done = true;
+    }
+    if (stage) {
+      allConstructInfos.push(...stage._validationPlugins.map(
+        (plugin) => {
+          return {
+            fqn: pluginFqn(plugin),
+            version: plugin.version ?? "0.0.0"
+          };
+        }
+      ));
+      stage = Stage.of(stage);
+    }
+  } while (!done && stage);
+}
+function pluginFqn(plugin) {
+  let components = [
+    "policyValidation",
+    plugin.name,
+    plugin.ruleIds?.join("|")
+  ];
+  return components.filter((x) => x != null).join(".");
+}
+function isResource(construct) {
+  return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct;
+}
+var ALLOWED_METADATA_TYPES, ADDITIONAL_TELEMETRY_METADATA_TYPES;
+var init_stack_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/stack-metadata.ts"() {
+    "use strict";
+    init_runtime_info();
+    init_app2();
+    init_constants();
+    init_metadata_type();
+    init_stage();
+    init_constants2();
+    init_core_construct_finders();
+    ALLOWED_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:mixin" /* MIXIN */
+    ]);
+    ADDITIONAL_TELEMETRY_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:construct" /* CONSTRUCT */,
+      "aws:cdk:analytics:method" /* METHOD */,
+      "aws:cdk:analytics:featureflag" /* FEATURE_FLAG */
+    ]);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts
+var _defaultChildOwner_dec, _init8, _ConstructReflection, ConstructReflection;
+var init_construct_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_memoize();
+    _defaultChildOwner_dec = [memoizedGetter];
+    _ConstructReflection = class _ConstructReflection {
+      constructor(construct) {
+        __runInitializers(_init8, 5, this);
+        __publicField(this, "construct");
+        this.construct = construct;
+      }
+      /**
+       * Create a reflection for the given construct.
+       */
+      static of(construct) {
+        return new _ConstructReflection(construct);
+      }
+      get defaultChildOwner() {
+        if (this.construct.node.scope && (this.construct.node.id === "Resource" || this.construct.node.id === "Default")) {
+          return this.construct.node.scope;
+        }
+        return void 0;
+      }
+      /**
+       * Finds the CfnResource backing this construct.
+       *
+       * Checks in order: the construct itself, its default child, then searches
+       * the broader construct tree for the closest match.
+       */
+      findCfnResource(matcher) {
+        const isCfnType = (c) => {
+          return CfnResource.isCfnResource(c) && c.cfnResourceType === matcher.cfnResourceType;
+        };
+        if (isCfnType(this.construct)) {
+          return this.construct;
+        }
+        if (this.construct.node.defaultChild && isCfnType(this.construct.node.defaultChild)) {
+          return this.construct.node.defaultChild;
+        }
+        return this.findRelatedCfnResource(matcher);
+      }
+      /**
+       * Finds the closest related CfnResource in the construct tree.
+       *
+       * Searches children first (depth-first), then ancestors (breadth-first).
+       */
+      findRelatedCfnResource(matcher) {
+        let closestMatch;
+        let closestDistance = Infinity;
+        const visited = /* @__PURE__ */ new Set();
+        const isMatch = (child) => {
+          return CfnResource.isCfnResource(child) && child.cfnResourceType === matcher.cfnResourceType;
+        };
+        const checkCandidate = (candidate, distance) => {
+          if (isMatch(candidate) && matcher.matches(candidate) && distance < closestDistance) {
+            closestMatch = candidate;
+            closestDistance = distance;
+          }
+        };
+        const searchChildren = (parent, distance) => {
+          if (distance >= closestDistance) {
+            return;
+          }
+          for (const child of parent.node.children) {
+            if (visited.has(child)) {
+              continue;
+            }
+            visited.add(child);
+            checkCandidate(child, distance);
+            searchChildren(child, distance + 1);
+          }
+        };
+        searchChildren(this.construct, 1);
+        let ancestor = this.construct.node.scope;
+        let ancestorDistance = 1;
+        while (ancestor && ancestorDistance < closestDistance) {
+          for (const sibling of ancestor.node.children) {
+            searchChildren(sibling, ancestorDistance);
+          }
+          ancestor = ancestor.node.scope;
+          ancestorDistance++;
+        }
+        return closestMatch;
+      }
+    };
+    _init8 = __decoratorStart(null);
+    __decorateElement(_init8, 2, "defaultChildOwner", _defaultChildOwner_dec, _ConstructReflection);
+    __decoratorMetadata(_init8, _ConstructReflection);
+    ConstructReflection = _ConstructReflection;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts
+var init_property_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts"() {
+    "use strict";
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/traits.ts
+var init_traits = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/traits.ts"() {
+    "use strict";
+    init_cx_api();
+    init_errors();
+    init_feature_flags();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deep-merge.ts
+function deepMerge(target, ...sources) {
+  for (const source of sources) {
+    if (typeof source !== "object" || typeof target !== "object") {
+      throw new AssumptionError(lit`InvalidDeepMergeArguments`, `Invalid usage. Both source (${JSON.stringify(source)}) and target (${JSON.stringify(target)}) must be objects`);
+    }
+    for (const key of Object.keys(source)) {
+      if (key === "__proto__" || key === "constructor" || key === "prototype") {
+        continue;
+      }
+      const value = source[key];
+      if (typeof value === "object" && value != null && !Array.isArray(value)) {
+        if (typeof target[key] !== "object") {
+          target[key] = {};
+        } else if (Object.keys(target[key]).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(target[key])[0])) {
+            target[key] = {};
+          }
+        }
+        if (Object.keys(value).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(value)[0])) {
+            target[key] = {};
+          }
+        }
+        deepMerge(target[key], value);
+        const output = target[key];
+        if (typeof output === "object" && Object.keys(output).length === 0) {
+          delete target[key];
+        }
+      } else if (value === void 0) {
+        delete target[key];
+      } else {
+        target[key] = value;
+      }
+    }
+  }
+  return target;
+}
+var MERGE_EXCLUDE_KEYS;
+var init_deep_merge = __esm({
+  "../../aws-cdk-lib/core/lib/private/deep-merge.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    MERGE_EXCLUDE_KEYS = [
+      "Ref",
+      "Fn::Base64",
+      "Fn::Cidr",
+      "Fn::FindInMap",
+      "Fn::GetAtt",
+      "Fn::GetAZs",
+      "Fn::ImportValue",
+      "Fn::Join",
+      "Fn::Select",
+      "Fn::Split",
+      "Fn::Sub",
+      "Fn::Transform",
+      "Fn::And",
+      "Fn::Equals",
+      "Fn::If",
+      "Fn::Not",
+      "Fn::Or"
+    ];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts
+var init_property_merge_strategy = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts"() {
+    "use strict";
+    init_box();
+    init_deep_merge();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts
+var init_cfn_props_mixin = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_property_merge_strategy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/shell-escape.ts
+var init_shell_escape = __esm({
+  "../../aws-cdk-lib/core/lib/private/shell-escape.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/index.ts
+var init_helpers_internal = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/index.ts"() {
+    "use strict";
+    init_cfn_parse();
+    init_md5();
+    init_customize_roles();
+    init_string_specializer();
+    init_validate_all_props();
+    init_strings();
+    init_runtime_info();
+    init_stack_metadata();
+    init_memoize();
+    init_construct_reflection();
+    init_property_reflection();
+    init_traits();
+    init_cfn_props_mixin();
+    init_literal_string();
+    init_box();
+    init_no_box_stack_traces();
+    init_perf();
+    init_shell_escape();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/private-context.ts
+var PREFIX, PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER;
+var init_private_context = __esm({
+  "../../aws-cdk-lib/core/lib/private/private-context.ts"() {
+    "use strict";
+    PREFIX = `aws-cdk-private:${Math.random()}:`;
+    PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER = `${PREFIX}core/defaultStackSynthesizer`;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/app.ts
+function countConstructs(construct) {
+  let ret = 0;
+  for (const _ of iterateDfsPreorder(construct)) {
+    ret++;
+  }
+  return ret;
+}
+function attachCustomSynthesis(construct, synthesis) {
+  addCustomSynthesis(construct, synthesis);
+}
+function emitPerformanceCountersFile() {
+  const filename = process.env[PERF_COUNTERS_FILE_ENV];
+  if (!filename) {
+    return;
+  }
+  const counters = {};
+  for (const [name, ctr] of Object.entries(readPerfCounters({ telemetry: true }))) {
+    counters[name] = ctr.total;
+    counters[`${name}(cnt)`] = ctr.count;
+  }
+  fs13.writeFileSync(filename, JSON.stringify({ counters }, void 0, 2), "utf-8");
+}
+function parseAsNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  const r = parseInt(`${x}`, 10);
+  return isNaN(r) ? void 0 : r;
+}
+var import_perf_hooks2, fs13, APP_INIT_HOOK_SYMBOL, DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS, SLOW_SYNTH_THRESHOLD_CTX, App, PERF_STATE;
+var init_app2 = __esm({
+  "../../aws-cdk-lib/core/lib/app.ts"() {
+    "use strict";
+    import_perf_hooks2 = require("perf_hooks");
+    fs13 = __toESM(require_lib5());
+    init_helpers_internal();
+    init_construct_iteration();
+    init_private_context();
+    init_synthesis();
+    init_prop_injectors();
+    init_stage();
+    init_cx_api();
+    init_core_construct_finders();
+    APP_INIT_HOOK_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+    DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS = 1e4;
+    SLOW_SYNTH_THRESHOLD_CTX = "@aws-cdk/core.slowSynthThreshold";
+    App = class extends Stage {
+      /**
+       * Return the app that is the root of the construct tree, if available.
+       */
+      static of(construct) {
+        return appOf(construct);
+      }
+      /**
+       * Checks if an object is an instance of the `App` class.
+       * @returns `true` if `obj` is an `App`.
+       * @param obj The object to evaluate
+       */
+      static isApp(obj) {
+        return APP_TYPE.isMarked(obj);
+      }
+      /**
+       * Include construct tree metadata as part of the Cloud Assembly.
+       *
+       * @internal
+       */
+      _treeMetadata;
+      initMark;
+      performanceReporting;
+      alreadySynthed = false;
+      /**
+       * Initializes a CDK application.
+       * @param props initialization properties
+       */
+      constructor(props = {}) {
+        super(void 0, "", {
+          outdir: props.outdir ?? process.env[OUTDIR_ENV]
+        });
+        this.initMark = import_perf_hooks2.performance.now();
+        if (!PERF_STATE.loadTimeMeasured) {
+          recordPerformanceEntry("phase:Load", {
+            durationMs: this.initMark,
+            telemetry: true
+          });
+          PERF_STATE.loadTimeMeasured = true;
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        if (props.policyValidationBeta1) {
+          this._addValidationPlugins(...props.policyValidationBeta1);
+        }
+        APP_TYPE.mark(this);
+        this.loadContext(props.context, props.postCliContext);
+        if (props.stackTraces === false) {
+          this.node.setContext(DISABLE_METADATA_STACK_TRACE, true);
+        }
+        if (props.defaultStackSynthesizer) {
+          this.node.setContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER, props.defaultStackSynthesizer);
+        }
+        const analyticsReporting = props.analyticsReporting ?? props.runtimeInfo;
+        if (analyticsReporting !== void 0) {
+          this.node.setContext(ANALYTICS_REPORTING_ENABLED_CONTEXT, analyticsReporting);
+        }
+        const autoSynth = props.autoSynth ?? OUTDIR_ENV in process.env;
+        if (autoSynth) {
+          process.once("beforeExit", () => this.synth({ errorOnDuplicateSynth: false }));
+        }
+        this._treeMetadata = props.treeMetadata ?? true;
+        this.performanceReporting = props.performanceReporting ?? this.node.tryGetContext(PERFORMANCE_REPORTING_ENABLED_CONTEXT) ?? true;
+        if (globalThis[APP_INIT_HOOK_SYMBOL]) {
+          globalThis[APP_INIT_HOOK_SYMBOL](this);
+        }
+      }
+      loadContext(defaults = {}, final = {}) {
+        for (const [k, v] of Object.entries(defaults)) {
+          this.node.setContext(k, v);
+        }
+        const context = {
+          ...this.readContextFromEnvironment(),
+          ...this.readContextFromTempFile()
+        };
+        for (const [k, v] of Object.entries(context)) {
+          this.node.setContext(k, v);
+        }
+        for (const [k, v] of Object.entries(final)) {
+          this.node.setContext(k, v);
+        }
+      }
+      /**
+       * Synthesize this App into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        if (this.alreadySynthed) {
+          return super.synth(options);
+        }
+        this.alreadySynthed = true;
+        const startSynthMark = import_perf_hooks2.performance.now();
+        recordPerformanceEntry("phase:Construction", {
+          durationMs: startSynthMark - this.initMark,
+          telemetry: true
+        });
+        const ret = super.synth(options);
+        recordPerformanceEntry("phase:Synthesis", {
+          durationMs: import_perf_hooks2.performance.now() - startSynthMark,
+          telemetry: true
+        });
+        const totalAppTimeMs = import_perf_hooks2.performance.now() - this.initMark;
+        const stackCount = ret.stacksRecursively.length;
+        recordPerformanceEntry("count:Constructs", {
+          count: countConstructs(this),
+          durationMs: 0,
+          telemetry: true
+        });
+        if (this.shouldReportSlowSynth(totalAppTimeMs / stackCount)) {
+          emitPerformanceCountersFile();
+        }
+        resetCounters();
+        return ret;
+      }
+      readContextFromTempFile() {
+        const location = process.env[CONTEXT_OVERFLOW_LOCATION_ENV];
+        return location ? fs13.readJSONSync(location) : {};
+      }
+      readContextFromEnvironment() {
+        const contextJson = process.env[CONTEXT_ENV];
+        return contextJson ? JSON.parse(contextJson) : {};
+      }
+      shouldReportSlowSynth(perStackTime) {
+        if (!this.performanceReporting) {
+          return false;
+        }
+        const threshold = parseAsNumber(this.node.tryGetContext(SLOW_SYNTH_THRESHOLD_CTX)) ?? DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS;
+        return perStackTime >= threshold;
+      }
+    };
+    PERF_STATE = global[/* @__PURE__ */ Symbol.for("@aws-cdk/core.AppPerfState")] ??= {
+      loadTimeMeasured: false
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/context-provider.ts
+function extractProviderError(value) {
+  if (typeof value === "object" && value !== null) {
+    return value[import_cloud_assembly_api.PROVIDER_ERROR_KEY];
+  }
+  return void 0;
+}
+function colonQuote(xs) {
+  return xs.replace(/\$/g, "$$").replace(/:/g, "$:");
+}
+function propsToArray(props, keyPrefix = "") {
+  const ret = [];
+  for (const key of Object.keys(props)) {
+    if (props[key] === void 0) {
+      continue;
+    }
+    switch (typeof props[key]) {
+      case "object": {
+        ret.push(...propsToArray(props[key], `${keyPrefix}${key}.`));
+        break;
+      }
+      case "string": {
+        ret.push(`${keyPrefix}${key}=${colonQuote(props[key])}`);
+        break;
+      }
+      default: {
+        ret.push(`${keyPrefix}${key}=${JSON.stringify(props[key])}`);
+        break;
+      }
+    }
+  }
+  ret.sort();
+  return ret;
+}
+var import_constructs18, ContextProvider;
+var init_context_provider = __esm({
+  "../../aws-cdk-lib/core/lib/context-provider.ts"() {
+    "use strict";
+    import_constructs18 = __toESM(require_lib4());
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_cx_api();
+    ContextProvider = class {
+      /**
+       * @returns the context key or undefined if a key cannot be rendered (due to tokens used in any of the props)
+       */
+      static getKey(scope, options) {
+        const stack = stackOf(scope);
+        const props = {
+          ...options.includeEnvironment ?? true ? { account: stack.account, region: stack.region } : {},
+          ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+          ...options.props
+        };
+        if (Object.values(props).find((x) => Token.isUnresolved(x))) {
+          throw new ValidationError(
+            lit`ContextProviderPropsContainTokens`,
+            `Cannot determine scope for context provider ${options.provider}.
+This usually happens when one or more of the provider props have unresolved tokens`,
+            scope
+          );
+        }
+        const propStrings = propsToArray(props);
+        return {
+          key: `${options.provider}:${propStrings.join(":")}`,
+          props
+        };
+      }
+      static getValue(scope, options) {
+        if (options.mustExist !== void 0 && options.ignoreErrorOnMissingContext !== void 0) {
+          throw new ValidationError(lit`ConflictingMustExistOptions`, "Only supply one of 'mustExist' and 'ignoreErrorOnMissingContext'", scope);
+        }
+        const stack = stackOf(scope);
+        if (Token.isUnresolved(stack.account) || Token.isUnresolved(stack.region)) {
+          throw new ValidationError(lit`StackAccountRegionNotSpecified`, `Cannot retrieve value from context provider ${options.provider} since account/region are not specified at the stack level. Configure "env" with an account and region when you define your stack.See https://docs.aws.amazon.com/cdk/latest/guide/environments.html for more details.`, scope);
+        }
+        const { key, props } = this.getKey(scope, options);
+        const value = import_constructs18.Node.of(scope).tryGetContext(key);
+        const providerError = extractProviderError(value);
+        if (value === void 0 || providerError !== void 0) {
+          const ignoreErrorOnMissingContext = options.mustExist !== void 0 || options.ignoreErrorOnMissingContext !== void 0 ? options.mustExist !== void 0 ? !options.mustExist : options.ignoreErrorOnMissingContext : void 0;
+          const extendedProps = {
+            dummyValue: options.dummyValue,
+            // Even though we renamed the user-facing property, the field in the
+            // cloud assembly still has the original name, which is somewhat wrong
+            // because it's not about missing context.
+            ignoreErrorOnMissingContext,
+            ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+            ...props
+          };
+          stack.reportMissingContextKey({
+            key,
+            provider: options.provider,
+            props: extendedProps
+          });
+          if (providerError !== void 0) {
+            Annotations.of(scope)._addTrackableError(lit`ContextProviderError`, providerError);
+          }
+          return { value: options.dummyValue };
+        }
+        return { value };
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/permissions-boundary.ts
+var PERMISSIONS_BOUNDARY_CONTEXT_KEY;
+var init_permissions_boundary = __esm({
+  "../../aws-cdk-lib/core/lib/permissions-boundary.ts"() {
+    "use strict";
+    PERMISSIONS_BOUNDARY_CONTEXT_KEY = "@aws-cdk/core:permissionsBoundary";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/logical-id.ts
+function validateLogicalId(logicalId) {
+  if (!VALID_LOGICALID_REGEX.test(logicalId)) {
+    throw new UnscopedValidationError(lit`LogicalAdhereRegularExpression`, `Logical ID must adhere to the regular expression: ${VALID_LOGICALID_REGEX.toString()}, got '${logicalId}'`);
+  }
+}
+var LogicalIDs, VALID_LOGICALID_REGEX;
+var init_logical_id = __esm({
+  "../../aws-cdk-lib/core/lib/private/logical-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    LogicalIDs = class {
+      /**
+       * The rename table (old to new)
+       */
+      renames = {};
+      /**
+       * All assigned names (new to old, may be identical)
+       *
+       * This is used to ensure that:
+       *
+       * - No 2 resources end up with the same final logical ID, unless they were the same to begin with.
+       * - All renames have been used at the end of renaming.
+       */
+      reverse = {};
+      /**
+       * Rename a logical ID from an old ID to a new ID
+       */
+      addRename(oldId, newId) {
+        if (oldId in this.renames) {
+          throw new UnscopedValidationError(lit`RenameAlreadyRegistered`, `A rename has already been registered for '${oldId}'`);
+        }
+        this.renames[oldId] = newId;
+      }
+      /**
+       * Return the renamed version of an ID or the original ID.
+       */
+      applyRename(oldId) {
+        let newId = oldId;
+        if (oldId in this.renames) {
+          newId = this.renames[oldId];
+        }
+        if (newId in this.reverse && this.reverse[newId] !== oldId) {
+          throw new UnscopedValidationError(lit`ObjectsAssignedSameLogical`, `Two objects have been assigned the same Logical ID: '${this.reverse[newId]}' and '${oldId}' are now both named '${newId}'.`);
+        }
+        this.reverse[newId] = oldId;
+        validateLogicalId(newId);
+        return newId;
+      }
+      /**
+       * Throw an error if not all renames have been used
+       *
+       * This is to assure that users didn't make typos when registering renames.
+       */
+      assertAllRenamesApplied() {
+        const keys = /* @__PURE__ */ new Set();
+        Object.keys(this.renames).forEach(keys.add.bind(keys));
+        Object.keys(this.reverse).map((newId) => {
+          keys.delete(this.reverse[newId]);
+        });
+        if (keys.size !== 0) {
+          const unusedRenames = Array.from(keys.values());
+          throw new UnscopedValidationError(lit`FollowingLogicalWereAttempted`, `The following Logical IDs were attempted to be renamed, but not found: ${unusedRenames.join(", ")}`);
+        }
+      }
+    };
+    VALID_LOGICALID_REGEX = /^[A-Za-z0-9]{1,255}$/;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts
+function isReusableStackSynthesizer(x) {
+  return !!x.reusableBind;
+}
+var init_types3 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts
+function addStackArtifactToAssembly(session, stack, stackProps, additionalStackDependencies) {
+  const stackTags = stack.tags.tagValues();
+  if (Object.entries(stackTags).length > 0) {
+    const resolvedTags = Object.entries(stackTags).filter(([k, v]) => !(Token.isUnresolved(k) || Token.isUnresolved(v)));
+    const unresolvedTags = Object.entries(stackTags).filter(([k, v]) => Token.isUnresolved(k) || Token.isUnresolved(v));
+    if (unresolvedTags.length > 0) {
+      const rendered = unresolvedTags.map(([k, v]) => `${Token.isUnresolved(k) ? "" : k}=${Token.isUnresolved(v) ? "" : v}`).join(", ");
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+        `Ignoring stack tags that contain deploy-time values (found: ${rendered}). Apply tags containing deploy-time values to resources only, avoid tagging stacks (for example using { excludeResourceTypes: ['aws:cdk:stack'] }).`
+      );
+    }
+    if (resolvedTags.length > 0) {
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.STACK_TAGS,
+        resolvedTags.map(([key, value]) => ({ key, value }))
+      );
+    }
+  }
+  const deps = [
+    ...stack.dependencies.map((s) => s.artifactId),
+    ...additionalStackDependencies
+  ];
+  const meta = collectStackMetadata(stack);
+  const stackNameProperty = stack.stackName === stack.artifactId ? {} : { stackName: stack.stackName };
+  const properties = {
+    templateFile: stack.templateFile,
+    terminationProtection: stack.terminationProtection,
+    tags: nonEmptyDict(stackTags),
+    validateOnSynth: session.validateOnSynth,
+    notificationArns: stack._notificationArns,
+    ...stackProps,
+    ...stackNameProperty
+  };
+  const metaFile = `${stack.artifactId}.metadata.json`;
+  const hasMeta = Object.keys(meta).length > 0;
+  if (hasMeta) {
+    fs14.writeFileSync(path18.join(session.assembly.outdir, metaFile), JSON.stringify(meta, void 0, 2), "utf-8");
+  }
+  session.assembly.addArtifact(stack.artifactId, {
+    type: cloud_assembly_schema_exports.ArtifactType.AWS_CLOUDFORMATION_STACK,
+    environment: stack.environment,
+    properties,
+    dependencies: deps.length > 0 ? deps : void 0,
+    additionalMetadataFile: hasMeta ? metaFile : void 0,
+    displayName: stack.node.path
+  });
+}
+function collectStackMetadata(stack) {
+  const output = {};
+  const queue = [stack];
+  let next;
+  while (next = queue.shift()) {
+    if (STACK_TYPE.isMarked(next) && next._isTopLevelStack && next !== stack) {
+      continue;
+    }
+    handleNode(next);
+    queue.push(...next.node.children);
+  }
+  return output;
+  function handleNode(node) {
+    if (node.node.metadata.length > 0) {
+      output[import_constructs19.Node.PATH_SEP + node.node.path] = node.node.metadata.map((md) => {
+        if ([
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO
+        ].includes(md.type)) {
+          return md;
+        }
+        const resolved = stack.resolve(md);
+        return resolved;
+      });
+    }
+  }
+}
+function contentHash(content) {
+  return crypto8.createHash("sha256").update(content).digest("hex");
+}
+function assertBound(x) {
+  if (x === null && x === void 0) {
+    throw new UnscopedValidationError(lit`CallBindstackFirst`, "You must call bindStack() first");
+  }
+}
+function nonEmptyDict(xs) {
+  return Object.keys(xs).length > 0 ? xs : void 0;
+}
+var crypto8, fs14, path18, import_constructs19;
+var init_shared2 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts"() {
+    "use strict";
+    crypto8 = __toESM(require("crypto"));
+    fs14 = __toESM(require("fs"));
+    path18 = __toESM(require("path"));
+    import_constructs19 = __toESM(require_lib4());
+    init_cloud_assembly_schema();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts
+function validateFileAssetSource(asset) {
+  if (!!asset.executable === !!asset.fileName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyFilenameExecutable`, `Exactly one of 'fileName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (!!asset.packaging !== !!asset.fileName) {
+    throw new UnscopedValidationError(lit`PackagingExpectedCombinationFilename`, `'packaging' is expected in combination with 'fileName', got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+}
+function validateDockerImageAssetSource(asset) {
+  if (!!asset.executable === !!asset.directoryName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyDirectorynameExecutable`, `Exactly one of 'directoryName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+  check("dockerBuildArgs");
+  check("dockerBuildContexts");
+  check("dockerBuildTarget");
+  check("dockerOutputs");
+  check("dockerFile");
+  function check(key) {
+    if (asset[key] && !asset.directoryName) {
+      throw new UnscopedValidationError(lit`OnlyAllowedCombinationDirectoryname`, `'${key}' is only allowed in combination with 'directoryName', got: ${JSON.stringify(asset)}`);
+    }
+  }
+}
+var fs15, path19, AssetManifestBuilder;
+var init_asset_manifest_builder = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts"() {
+    "use strict";
+    fs15 = __toESM(require("fs"));
+    path19 = __toESM(require("path"));
+    init_cloud_assembly_schema();
+    init_assets();
+    init_errors();
+    init_string_specializer();
+    init_token();
+    init_shared2();
+    init_literal_string();
+    AssetManifestBuilder = class {
+      files = {};
+      dockerImages = {};
+      /**
+       * Add a file asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, copy the
+       * file extension over, and set the prefix.
+       */
+      defaultAddFileAsset(stack, asset, target, options) {
+        validateFileAssetSource(asset);
+        const extension = asset.fileName != void 0 ? path19.extname(asset.fileName) : "";
+        const objectKey = (target.bucketPrefix ?? "") + asset.sourceHash + (asset.packaging === "zip" /* ZIP_DIRECTORY */ ? ".zip" : extension);
+        return this.addFileAsset(stack, asset.sourceHash, {
+          path: asset.fileName,
+          executable: asset.executable,
+          packaging: asset.packaging
+        }, {
+          bucketName: target.bucketName,
+          objectKey,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a docker image asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, and set the prefix.
+       */
+      defaultAddDockerImageAsset(stack, asset, target, options) {
+        validateDockerImageAssetSource(asset);
+        const imageTag = `${target.dockerTagPrefix ?? ""}${asset.sourceHash}`;
+        const sourceHash = asset.assetName ? `${asset.assetName}-${asset.sourceHash}` : asset.sourceHash;
+        return this.addDockerImageAsset(stack, sourceHash, {
+          executable: asset.executable,
+          directory: asset.directoryName,
+          dockerBuildArgs: asset.dockerBuildArgs,
+          dockerBuildContexts: asset.dockerBuildContexts,
+          dockerBuildSecrets: asset.dockerBuildSecrets,
+          dockerBuildSsh: asset.dockerBuildSsh,
+          dockerBuildTarget: asset.dockerBuildTarget,
+          dockerFile: asset.dockerFile,
+          networkMode: asset.networkMode,
+          platform: asset.platform,
+          dockerOutputs: asset.dockerOutputs,
+          cacheFrom: asset.dockerCacheFrom,
+          cacheTo: asset.dockerCacheTo,
+          cacheDisabled: asset.dockerCacheDisabled
+        }, {
+          repositoryName: target.repositoryName,
+          imageTag,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a file asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addFileAsset(stack, sourceHash, source, dest, options) {
+        if (!this.files[sourceHash]) {
+          this.files[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.files[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Add a docker asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addDockerImageAsset(stack, sourceHash, source, dest, options) {
+        if (!this.dockerImages[sourceHash]) {
+          this.dockerImages[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.dockerImages[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Whether there are any assets registered in the manifest
+       */
+      get hasAssets() {
+        return Object.keys(this.files).length + Object.keys(this.dockerImages).length > 0;
+      }
+      /**
+       * Write the manifest to disk, and add it to the synthesis session
+       *
+       * Return the artifact id, which should be added to the `additionalDependencies`
+       * field of the stack artifact.
+       */
+      emitManifest(stack, session, options = {}, dependencies = []) {
+        const artifactId = `${stack.artifactId}.assets`;
+        const manifestFile = `${artifactId}.json`;
+        const outPath = path19.join(session.assembly.outdir, manifestFile);
+        const manifest = {
+          version: cloud_assembly_schema_exports.Manifest.version(),
+          files: this.files,
+          dockerImages: this.dockerImages
+        };
+        fs15.writeFileSync(outPath, JSON.stringify(manifest, void 0, 2));
+        session.assembly.addArtifact(artifactId, {
+          type: cloud_assembly_schema_exports.ArtifactType.ASSET_MANIFEST,
+          properties: {
+            file: manifestFile,
+            ...options
+          },
+          dependencies: dependencies.length > 0 ? dependencies : void 0
+        });
+        return artifactId;
+      }
+      manifestEnvName(stack) {
+        return [
+          resolvedOr(stack.account, "current_account"),
+          resolvedOr(stack.region, "current_region")
+        ].join("-");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-rule.ts
+var CfnRule;
+var init_cfn_rule = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-rule.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+    CfnRule = class extends CfnRefElement {
+      ruleCondition;
+      assertions;
+      /**
+       * Creates and adds a rule.
+       * @param scope The parent construct.
+       * @param props The rule props.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.ruleCondition = props && props.ruleCondition;
+        this.assertions = props && props.assertions;
+      }
+      /**
+       * Adds an assertion to the rule.
+       * @param condition The expression to evaluation.
+       * @param description The description of the assertion.
+       */
+      addAssertion(condition, description) {
+        if (!this.assertions) {
+          this.assertions = [];
+        }
+        this.assertions.push({
+          assert: condition,
+          assertDescription: description
+        });
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Rules: {
+            [this.logicalId]: {
+              RuleCondition: this.ruleCondition,
+              Assertions: capitalizePropertyNames(this, this.assertions)
+            }
+          }
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts
+function stackTemplateFileAsset(stack, session) {
+  const templatePath = path20.join(session.assembly.outdir, stack.templateFile);
+  if (!fs16.existsSync(templatePath)) {
+    throw new ValidationError(lit`StackTemplate`, `Stack template ${stack.stackName} not written yet: ${templatePath}`, stack);
+  }
+  const template = fs16.readFileSync(templatePath, { encoding: "utf-8" });
+  const sourceHash = contentHash(template);
+  return {
+    fileName: stack.templateFile,
+    packaging: "file" /* FILE */,
+    sourceHash,
+    deployTime: true,
+    displayName: `${stack.stackName} Template`
+  };
+}
+function addBootstrapVersionRule(stack, requiredVersion, bootstrapStackVersionSsmParameter) {
+  if (stack.node.tryFindChild("BootstrapVersion")) {
+    return;
+  }
+  const param = new CfnParameter(stack, "BootstrapVersion", {
+    type: "AWS::SSM::Parameter::Value",
+    description: `Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. ${import_cloud_assembly_api.SSMPARAM_NO_INVALIDATE}`,
+    default: bootstrapStackVersionSsmParameter
+  });
+  const oldVersions = range3(1, requiredVersion).map((n) => `${n}`);
+  new CfnRule(stack, "CheckBootstrapVersion", {
+    assertions: [
+      {
+        assert: Fn.conditionNot(Fn.conditionContains(oldVersions, param.valueAsString)),
+        assertDescription: `CDK bootstrap stack version ${requiredVersion} required. Please run 'cdk bootstrap' with a recent version of the CDK CLI.`
+      }
+    ]
+  });
+}
+function range3(startIncl, endExcl) {
+  const ret = new Array();
+  for (let i = startIncl; i < endExcl; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+function stackLocationOrInstrinsics(stack) {
+  return {
+    account: resolvedOr(stack.account, "${AWS::AccountId}"),
+    region: resolvedOr(stack.region, "${AWS::Region}"),
+    urlSuffix: resolvedOr(stack.urlSuffix, "${AWS::URLSuffix}")
+  };
+}
+function cfnify(s) {
+  return s.indexOf("${") > -1 ? Fn.sub(s) : s;
+}
+var fs16, path20, StackSynthesizer;
+var init_stack_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts"() {
+    "use strict";
+    fs16 = __toESM(require("fs"));
+    path20 = __toESM(require("path"));
+    init_shared2();
+    init_cx_api();
+    init_assets();
+    init_cfn_fn();
+    init_cfn_parameter();
+    init_cfn_rule();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    StackSynthesizer = class {
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return void 0;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return void 0;
+      }
+      get cloudFormationExecutionRole() {
+        return void 0;
+      }
+      _boundStack;
+      /**
+       * Bind to the stack this environment is going to be used on
+       *
+       * Must be called before any of the other methods are called.
+       */
+      bind(stack) {
+        if (this._boundStack !== void 0) {
+          throw new ValidationError(lit`StackSynthesizerOneStackCreate`, "A StackSynthesizer can only be used for one Stack: create a new instance to use with a different Stack", stack);
+        }
+        this._boundStack = stack;
+      }
+      /**
+       * Have the stack write out its template
+       *
+       * @deprecated Use `synthesizeTemplate` instead
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session);
+      }
+      /**
+       * Write the stack template to the given session
+       *
+       * Return a descriptor that represents the stack template as a file asset
+       * source, for adding to an asset manifest (if desired). This can be used to
+       * have the asset manifest system (`cdk-assets`) upload the template to S3
+       * using the appropriate role, so that afterwards only a CloudFormation
+       * deployment is necessary.
+       *
+       * If the template is uploaded as an asset, the `stackTemplateAssetObjectUrl`
+       * property should be set when calling `emitArtifact.`
+       *
+       * If the template is *NOT* uploaded as an asset first and the template turns
+       * out to be >50KB, it will need to be uploaded to S3 anyway. At that point
+       * the credentials will be the same identity that is doing the `UpdateStack`
+       * call, which may not have the right permissions to write to S3.
+       */
+      synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        this.boundStack._synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions);
+        return stackTemplateFileAsset(this.boundStack, session);
+      }
+      /**
+       * Write the stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session.
+       *
+       * @deprecated Use `emitArtifact` instead
+       */
+      emitStackArtifact(stack, session, options = {}) {
+        addStackArtifactToAssembly(session, stack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Write the CloudFormation stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session. The Stack artifact will control the settings for the
+       * CloudFormation deployment.
+       */
+      emitArtifact(session, options = {}) {
+        addStackArtifactToAssembly(session, this.boundStack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Add a CfnRule to the bound stack that checks whether an SSM parameter exceeds a given version
+       *
+       * This will modify the template, so must be called before the stack is synthesized.
+       */
+      addBootstrapVersionRule(requiredVersion, bootstrapStackVersionSsmParameter) {
+        addBootstrapVersionRule(this.boundStack, requiredVersion, bootstrapStackVersionSsmParameter);
+      }
+      /**
+       * Retrieve the bound stack
+       *
+       * Fails if the stack hasn't been bound yet.
+       */
+      get boundStack() {
+        if (!this._boundStack) {
+          throw new UnscopedValidationError(lit`StackSynthesizerBoundStackFirst`, "The StackSynthesizer must be bound to a Stack first before boundStack() can be called");
+        }
+        return this._boundStack;
+      }
+      /**
+       * Turn a file asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromFileAsset(location) {
+        const { region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        const httpUrl = cfnify(
+          `https://s3.${region}.${urlSuffix2}/${location.bucketName}/${location.objectKey}`
+        );
+        const s3ObjectUrlWithPlaceholders = `s3://${location.bucketName}/${location.objectKey}`;
+        return {
+          bucketName: cfnify(location.bucketName),
+          objectKey: cfnify(location.objectKey),
+          httpUrl,
+          s3ObjectUrl: cfnify(s3ObjectUrlWithPlaceholders),
+          s3ObjectUrlWithPlaceholders,
+          s3Url: httpUrl
+        };
+      }
+      /**
+       * Turn a docker asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromDockerImageAsset(dest) {
+        const { account, region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        return {
+          repositoryName: cfnify(dest.repositoryName),
+          imageUri: cfnify(
+            `${account}.dkr.ecr.${region}.${urlSuffix2}/${dest.repositoryName}:${dest.imageTag}`
+          ),
+          imageTag: cfnify(dest.imageTag)
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts
+var BOOTSTRAP_QUALIFIER_CONTEXT, MIN_BOOTSTRAP_STACK_VERSION, MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION, MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION, DefaultStackSynthesizer;
+var init_default_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+    BOOTSTRAP_QUALIFIER_CONTEXT = "@aws-cdk/core:bootstrapQualifier";
+    MIN_BOOTSTRAP_STACK_VERSION = 6;
+    MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION = 8;
+    MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION = 22;
+    DefaultStackSynthesizer = class _DefaultStackSynthesizer extends StackSynthesizer {
+      constructor(props = {}) {
+        super();
+        this.props = props;
+        this.useLookupRoleForStackOperations = props.useLookupRoleForStackOperations ?? true;
+        for (const key in props) {
+          if (props.hasOwnProperty(key)) {
+            validateNoToken(key);
+          }
+        }
+        function validateNoToken(key) {
+          const prop = props[key];
+          if (typeof prop === "string" && Token.isUnresolved(prop)) {
+            throw new UnscopedValidationError(lit`DefaultSynthesizerTokenInProperty`, `DefaultStackSynthesizer property '${key}' cannot contain tokens; only the following placeholder strings are allowed: ` + [
+              "${Qualifier}",
+              (void 0).CURRENT_REGION,
+              (void 0).CURRENT_ACCOUNT,
+              (void 0).CURRENT_PARTITION
+            ].join(", "));
+          }
+        }
+      }
+      props;
+      /**
+       * Default ARN qualifier
+       */
+      static DEFAULT_QUALIFIER = "hnb659fds";
+      /**
+       * Default CloudFormation role ARN.
+       */
+      static DEFAULT_CLOUDFORMATION_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-cfn-exec-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default deploy role ARN.
+       */
+      static DEFAULT_DEPLOY_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-deploy-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for file (S3) assets.
+       */
+      static DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-file-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for image (ECR) assets.
+       */
+      static DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-image-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default lookup role ARN for missing values.
+       */
+      static DEFAULT_LOOKUP_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-lookup-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default image assets repository name
+       */
+      static DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME = "cdk-${Qualifier}-container-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default file assets bucket name
+       */
+      static DEFAULT_FILE_ASSETS_BUCKET_NAME = "cdk-${Qualifier}-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Name of the CloudFormation Export with the asset key name
+       */
+      static DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME = "CdkBootstrap-${Qualifier}-FileAssetKeyArn";
+      /**
+       * Default file asset prefix
+       */
+      static DEFAULT_FILE_ASSET_PREFIX = "";
+      /**
+       * Default Docker asset prefix
+       */
+      static DEFAULT_DOCKER_ASSET_PREFIX = "";
+      /**
+       * Default bootstrap stack version SSM parameter.
+       */
+      static DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER = "/cdk-bootstrap/${Qualifier}/version";
+      bucketName;
+      repositoryName;
+      _deployRoleArn;
+      _cloudFormationExecutionRoleArn;
+      fileAssetPublishingRoleArn;
+      imageAssetPublishingRoleArn;
+      lookupRoleArn;
+      useLookupRoleForStackOperations;
+      qualifier;
+      bucketPrefix;
+      dockerTagPrefix;
+      bootstrapStackVersionSsmParameter;
+      assetManifest = new AssetManifestBuilder();
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return this.qualifier;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return this.lookupRoleArn;
+      }
+      get cloudFormationExecutionRole() {
+        return this._cloudFormationExecutionRoleArn;
+      }
+      bind(stack) {
+        super.bind(stack);
+        const qualifier = this.props.qualifier ?? stack.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? _DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        this.qualifier = qualifier;
+        const spec = new StringSpecializer(stack, qualifier);
+        this.bucketName = spec.specialize(this.props.fileAssetsBucketName ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSETS_BUCKET_NAME);
+        this.repositoryName = spec.specialize(this.props.imageAssetsRepositoryName ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME);
+        this._deployRoleArn = spec.specialize(this.props.deployRoleArn ?? _DefaultStackSynthesizer.DEFAULT_DEPLOY_ROLE_ARN);
+        this._cloudFormationExecutionRoleArn = spec.specialize(this.props.cloudFormationExecutionRole ?? _DefaultStackSynthesizer.DEFAULT_CLOUDFORMATION_ROLE_ARN);
+        this.fileAssetPublishingRoleArn = spec.specialize(this.props.fileAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN);
+        this.imageAssetPublishingRoleArn = spec.specialize(this.props.imageAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN);
+        this.lookupRoleArn = spec.specialize(this.props.lookupRoleArn ?? _DefaultStackSynthesizer.DEFAULT_LOOKUP_ROLE_ARN);
+        this.bucketPrefix = spec.specialize(this.props.bucketPrefix ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PREFIX);
+        this.dockerTagPrefix = spec.specialize(this.props.dockerTagPrefix ?? _DefaultStackSynthesizer.DEFAULT_DOCKER_ASSET_PREFIX);
+        this.bootstrapStackVersionSsmParameter = spec.qualifierOnly(this.props.bootstrapStackVersionSsmParameter ?? _DefaultStackSynthesizer.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER);
+      }
+      addFileAsset(asset) {
+        assertBound(this.bucketName);
+        const location = this.assetManifest.defaultAddFileAsset(this.boundStack, asset, {
+          bucketName: this.bucketName,
+          bucketPrefix: this.bucketPrefix,
+          role: this.fileAssetPublishingRoleArn ? {
+            assumeRoleArn: this.fileAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.fileAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.fileAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromFileAsset(location);
+      }
+      addDockerImageAsset(asset) {
+        assertBound(this.repositoryName);
+        const location = this.assetManifest.defaultAddDockerImageAsset(this.boundStack, asset, {
+          repositoryName: this.repositoryName,
+          dockerTagPrefix: this.dockerTagPrefix,
+          role: this.imageAssetPublishingRoleArn ? {
+            assumeRoleArn: this.imageAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.imageAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.imageAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromDockerImageAsset(location);
+      }
+      /**
+       * Synthesize the stack template to the given session, passing the configured lookup role ARN
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session, this.lookupRoleArn, this.props.lookupRoleExternalId, this.props.lookupRoleAdditionalOptions);
+      }
+      /**
+       * Return the currently bound stack
+       *
+       * @deprecated Use `boundStack` instead.
+       */
+      get stack() {
+        return this.boundStack;
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        assertBound(this.qualifier);
+        if (this.props.generateBootstrapVersionRule ?? true) {
+          this.addBootstrapVersionRule(this._requiredBootstrapVersionForDeployment, this.bootstrapStackVersionSsmParameter);
+        }
+        const templateAssetSource = this.synthesizeTemplate(
+          session,
+          this.lookupRoleArn,
+          this.props.lookupRoleExternalId,
+          this.props.lookupRoleAdditionalOptions
+        );
+        const templateAsset = this.addFileAsset(templateAssetSource);
+        const assetManifestId = this.assetManifest.emitManifest(this.boundStack, session, {
+          requiresBootstrapStackVersion: this._requiredBoostrapVersionForAssets,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+        });
+        this.emitArtifact(session, {
+          assumeRoleExternalId: this.props.deployRoleExternalId,
+          assumeRoleArn: this._deployRoleArn,
+          assumeRoleAdditionalOptions: this.props.deployRoleAdditionalOptions,
+          cloudFormationExecutionRoleArn: this._cloudFormationExecutionRoleArn,
+          stackTemplateAssetObjectUrl: templateAsset.s3ObjectUrlWithPlaceholders,
+          requiresBootstrapStackVersion: this._requiredBootstrapVersionForDeployment,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter,
+          additionalDependencies: [assetManifestId],
+          lookupRole: this.useLookupRoleForStackOperations && this.lookupRoleArn ? {
+            arn: this.lookupRoleArn,
+            assumeRoleExternalId: this.props.lookupRoleExternalId,
+            assumeRoleAdditionalOptions: this.props.lookupRoleAdditionalOptions,
+            requiresBootstrapStackVersion: this._requiredBootstrapVersionForLookup,
+            bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+          } : void 0
+        });
+      }
+      get _requiredBoostrapVersionForAssets() {
+        if (this.props.fileAssetPublishingRoleAdditionalOptions?.Tags || this.props.imageAssetPublishingRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForDeployment() {
+        if (this.props.deployRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForLookup() {
+        if (this.props.lookupRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION;
+      }
+      /**
+       * Returns the ARN of the deploy Role.
+       */
+      get deployRoleArn() {
+        if (!this._deployRoleArn) {
+          throw new UnscopedValidationError(lit`DeployRoleArnGetterOnlyCalled`, "deployRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._deployRoleArn;
+      }
+      /**
+       * Returns the ARN of the CFN execution Role.
+       */
+      get cloudFormationExecutionRoleArn() {
+        if (!this._cloudFormationExecutionRoleArn) {
+          throw new UnscopedValidationError(lit`CloudFormationExecutionRoleArnGetterOnlyCalled`, "cloudFormationExecutionRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._cloudFormationExecutionRoleArn;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-parameters.ts
+var import_constructs20, FileAssetParameters;
+var init_asset_parameters = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-parameters.ts"() {
+    "use strict";
+    import_constructs20 = __toESM(require_lib4());
+    init_cfn_parameter();
+    FileAssetParameters = class extends import_constructs20.Construct {
+      bucketNameParameter;
+      objectKeyParameter;
+      artifactHashParameter;
+      constructor(scope, id) {
+        super(scope, id);
+        this.bucketNameParameter = new CfnParameter(this, "S3Bucket", {
+          type: "String",
+          description: `S3 bucket for asset "${id}"`
+        });
+        this.objectKeyParameter = new CfnParameter(this, "S3VersionKey", {
+          type: "String",
+          description: `S3 key for asset version "${id}"`
+        });
+        this.artifactHashParameter = new CfnParameter(this, "ArtifactHash", {
+          description: `Artifact hash for asset "${id}"`,
+          type: "String"
+        });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts
+function withoutDeprecationWarnings(block) {
+  const orig = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  try {
+    return block();
+  } finally {
+    process.env.JSII_DEPRECATED = orig;
+  }
+}
+var import_constructs21, ASSETS_ECR_REPOSITORY_NAME, ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY, LegacyStackSynthesizer;
+var init_legacy = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts"() {
+    "use strict";
+    import_constructs21 = __toESM(require_lib4());
+    init_shared2();
+    init_stack_synthesizer();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_fn();
+    init_errors();
+    init_asset_parameters();
+    init_literal_string();
+    ASSETS_ECR_REPOSITORY_NAME = "aws-cdk/assets";
+    ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY = "assets-ecr-repository-name";
+    LegacyStackSynthesizer = class extends StackSynthesizer {
+      cycle = false;
+      /**
+       * Includes all parameters synthesized for assets (lazy).
+       */
+      _assetParameters;
+      /**
+       * The image ID of all the docker image assets that were already added to this
+       * stack (to avoid duplication).
+       */
+      addedImageAssets = /* @__PURE__ */ new Set();
+      addFileAsset(asset) {
+        if (this.cycle) {
+          return this.doAddFileAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addFileAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      addDockerImageAsset(asset) {
+        if (this.cycle) {
+          return this.doAddDockerImageAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addDockerImageAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        this.synthesizeTemplate(session);
+        this.emitArtifact(session);
+      }
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      doAddDockerImageAsset(asset) {
+        const repositoryNameOverride = this.boundStack.node.tryGetContext(ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY);
+        const repositoryName = asset.repositoryName ?? repositoryNameOverride ?? ASSETS_ECR_REPOSITORY_NAME;
+        const imageTag = asset.sourceHash;
+        const assetId = asset.sourceHash;
+        if (!this.addedImageAssets.has(assetId)) {
+          if (!asset.directoryName) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            repositoryName,
+            imageTag,
+            id: assetId,
+            packaging: "container-image",
+            path: asset.directoryName,
+            sourceHash: asset.sourceHash,
+            buildArgs: asset.dockerBuildArgs,
+            buildContexts: asset.dockerBuildContexts,
+            buildSecrets: asset.dockerBuildSecrets,
+            buildSsh: asset.dockerBuildSsh,
+            target: asset.dockerBuildTarget,
+            file: asset.dockerFile,
+            networkMode: asset.networkMode,
+            platform: asset.platform,
+            outputs: asset.dockerOutputs,
+            cacheFrom: asset.dockerCacheFrom,
+            cacheTo: asset.dockerCacheTo,
+            cacheDisabled: asset.dockerCacheDisabled
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+          this.addedImageAssets.add(assetId);
+        }
+        return {
+          imageUri: `${this.boundStack.account}.dkr.ecr.${this.boundStack.region}.${this.boundStack.urlSuffix}/${repositoryName}:${imageTag}`,
+          repositoryName
+        };
+      }
+      doAddFileAsset(asset) {
+        let params = this.assetParameters.node.tryFindChild(asset.sourceHash);
+        if (!params) {
+          params = new FileAssetParameters(this.assetParameters, asset.sourceHash);
+          if (!asset.fileName || !asset.packaging) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            path: asset.fileName,
+            id: asset.sourceHash,
+            packaging: asset.packaging,
+            sourceHash: asset.sourceHash,
+            s3BucketParameter: params.bucketNameParameter.logicalId,
+            s3KeyParameter: params.objectKeyParameter.logicalId,
+            artifactHashParameter: params.artifactHashParameter.logicalId
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+        }
+        const bucketName = params.bucketNameParameter.valueAsString;
+        const encodedKey = params.objectKeyParameter.valueAsString;
+        const s3Prefix = Fn.select(0, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const s3Filename = Fn.select(1, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const objectKey = `${s3Prefix}${s3Filename}`;
+        const httpUrl = `https://s3.${this.boundStack.region}.${this.boundStack.urlSuffix}/${bucketName}/${objectKey}`;
+        const s3ObjectUrl = `s3://${bucketName}/${objectKey}`;
+        return { bucketName, objectKey, httpUrl, s3ObjectUrl, s3Url: httpUrl };
+      }
+      get assetParameters() {
+        assertBound(this.boundStack);
+        if (!this._assetParameters) {
+          this._assetParameters = new import_constructs21.Construct(this.boundStack, "AssetParameters");
+        }
+        return this._assetParameters;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts
+var init_bootstrapless_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts"() {
+    "use strict";
+    init_default_synthesizer();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts
+var init_nested = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts"() {
+    "use strict";
+    init_stack_synthesizer();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts
+var init_cli_credentials_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_default_synthesizer();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts
+var init_stack_synthesizers = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts"() {
+    "use strict";
+    init_types3();
+    init_default_synthesizer();
+    init_legacy();
+    init_bootstrapless_synthesizer();
+    init_nested();
+    init_stack_synthesizer();
+    init_cli_credentials_synthesizer();
+    init_asset_manifest_builder();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-mapping.ts
+var CfnMapping, CfnMappingEmbedder;
+var init_cfn_mapping = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-mapping.ts"() {
+    "use strict";
+    init_annotations();
+    init_cfn_element();
+    init_cfn_fn();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    CfnMapping = class extends CfnRefElement {
+      mapping;
+      lazy;
+      lazyRender = false;
+      // prescribes `_toCloudFormation()` to pass nothing if value from map is returned lazily.
+      lazyInformed = false;
+      // keeps track if user has been sent a message informing them of the possibility to use lazy synthesis.
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this.mapping = props.mapping ? this.validateMapping(props.mapping) : {};
+        this.lazy = props.lazy;
+      }
+      /**
+       * Sets a value in the map based on the two keys.
+       */
+      setValue(key1, key2, value) {
+        if ([key1, key2].some((k) => ["__proto__", "constructor"].includes(k))) {
+          throw new ValidationError(lit`CannotProtoConstructorKeys`, "Cannot use '__proto__' or 'constructor' as keys", this);
+        }
+        this.validateAlphanumeric(key2);
+        if (!(key1 in this.mapping)) {
+          this.mapping[key1] = {};
+        }
+        this.mapping[key1][key2] = value;
+      }
+      /**
+       * @returns A reference to a value in the map based on the two keys.
+       *          If mapping is lazy, the value from the map or default value is returned instead of the reference and the mapping is not rendered in the template.
+       */
+      findInMap(key1, key2, defaultValue) {
+        let fullyResolved = false;
+        let notInMap = false;
+        if (!Token.isUnresolved(key1)) {
+          if (!(key1 in this.mapping)) {
+            if (defaultValue === void 0) {
+              throw new ValidationError(lit`MappingDoesnTContainTopLevel`, `Mapping doesn't contain top-level key '${key1}'`, this);
+            } else {
+              notInMap = true;
+            }
+          } else if (!Token.isUnresolved(key2)) {
+            if (!(key2 in this.mapping[key1])) {
+              if (defaultValue === void 0) {
+                throw new ValidationError(lit`MappingDoesnTContainSecondLevel`, `Mapping doesn't contain second-level key '${key2}'`, this);
+              } else {
+                notInMap = true;
+              }
+            }
+            fullyResolved = true;
+          }
+        }
+        if (this.lazy) {
+          if (notInMap && defaultValue !== void 0) {
+            return defaultValue;
+          } else if (fullyResolved) {
+            return this.mapping[key1][key2];
+          }
+        }
+        this.lazyRender = !fullyResolved;
+        return new CfnMappingEmbedder(this, this.mapping, key1, key2, defaultValue).toString();
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (this.lazy === void 0 && !this.lazyRender) {
+          this.informLazyUse();
+        }
+        if (!this.lazy || this.lazy && this.lazyRender) {
+          return {
+            Mappings: {
+              [this.logicalId]: this.mapping
+            }
+          };
+        } else {
+          return {};
+        }
+      }
+      informLazyUse() {
+        if (!this.lazyInformed) {
+          Annotations.of(this).addInfo("Consider making this CfnMapping a lazy mapping by providing `lazy: true`: either no findInMap was called or every findInMap could be immediately resolved without using Fn::FindInMap");
+        }
+        this.lazyInformed = true;
+      }
+      validateMapping(mapping) {
+        Object.keys(mapping).forEach((m) => Object.keys(mapping[m]).forEach(this.validateAlphanumeric));
+        return mapping;
+      }
+      validateAlphanumeric(value) {
+        if (value.match(/[^a-zA-Z0-9]/g)) {
+          throw new UnscopedValidationError(lit`AttributeNameContainOnly`, `Attribute name '${value}' must contain only alphanumeric characters.`);
+        }
+      }
+    };
+    CfnMappingEmbedder = class {
+      constructor(cfnMapping, mapping, key1, key2, defaultValue) {
+        this.cfnMapping = cfnMapping;
+        this.mapping = mapping;
+        this.key1 = key1;
+        this.key2 = key2;
+        this.defaultValue = defaultValue;
+      }
+      cfnMapping;
+      mapping;
+      key1;
+      key2;
+      defaultValue;
+      creationStack = ["Token stack traces are no longer captured"];
+      resolve(context) {
+        const consumingStack = stackOf(context.scope);
+        if (consumingStack === stackOf(this.cfnMapping)) {
+          return Fn.findInMap(this.cfnMapping.logicalId, this.key1, this.key2, this.defaultValue);
+        }
+        const constructScope = consumingStack;
+        const constructId = `MappingCopy-${this.cfnMapping.node.id}-${this.cfnMapping.node.addr}`;
+        let mappingCopy = constructScope.node.tryFindChild(constructId);
+        if (!mappingCopy) {
+          mappingCopy = new CfnMapping(constructScope, constructId, {
+            mapping: this.mapping
+          });
+        }
+        return Fn.findInMap(mappingCopy.logicalId, this.key1, this.key2, this.defaultValue);
+      }
+      toString() {
+        return Token.asString(this);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/region-lookup.ts
+function deployTimeLookup(stack, factName, lookupMap, defaultValue) {
+  if (Object.values(lookupMap).length === 0) {
+    if (defaultValue === void 0) {
+      throw new UnscopedValidationError(lit`RegionInfoDonTInformation`, `region-info: don't have any information for ${factName}. Use 'Fact.register' to provide values, or add partitions to the '${TARGET_PARTITIONS}' context value.`);
+    }
+    return defaultValue;
+  }
+  const pattern = findValuePattern(lookupMap);
+  if (pattern !== void 0) {
+    return pattern;
+  }
+  const [factClass, factParam] = factName.includes(":") ? factName.split(":") : [factName, "value"];
+  const mapId = `${ucfirst(factClass)}Map`;
+  const factKey = factParam.replace(/[^a-zA-Z0-9]/g, "x");
+  let mapping = stack.node.tryFindChild(mapId);
+  if (!mapping) {
+    mapping = new CfnMapping(stack, mapId);
+  }
+  for (const [region, value] of Object.entries(lookupMap)) {
+    mapping.setValue(region, factKey, value);
+  }
+  return mapping.findInMap(Aws.REGION, factKey);
+}
+function ucfirst(x) {
+  return `${x.slice(0, 1).toUpperCase()}${x.slice(1)}`;
+}
+function findValuePattern(regionMap) {
+  const simplified = { ...regionMap };
+  const urlSuffixes = Object.keys(simplified).map(urlSuffix);
+  if (!allSame(urlSuffixes) && Object.entries(simplified).every(([region, value]) => value.includes(urlSuffix(region)))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], urlSuffix(region), Aws.URL_SUFFIX);
+    }
+  }
+  if (Object.entries(simplified).every(([region, value]) => value.includes(region))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], region, Aws.REGION);
+    }
+  }
+  const values = Object.values(simplified);
+  if (allSame(values)) {
+    return values[0];
+  }
+  return void 0;
+}
+function allSame(xs) {
+  return xs.every((x) => x === xs[0]);
+}
+function urlSuffix(region) {
+  return RegionInfo.get(region)?.domainSuffix ?? "amazonaws.com";
+}
+function replaceAll2(x, pat, replacement) {
+  return x.split(pat).join(replacement);
+}
+var init_region_lookup = __esm({
+  "../../aws-cdk-lib/core/lib/private/region-lookup.ts"() {
+    "use strict";
+    init_cx_api();
+    init_region_info2();
+    init_cfn_mapping();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack.ts
+function merge(template, fragment) {
+  for (const section of Object.keys(fragment)) {
+    const src = fragment[section];
+    const dest = template[section];
+    if (!dest) {
+      template[section] = src;
+    } else {
+      template[section] = mergeSection(section, dest, src);
+    }
+  }
+}
+function mergeSection(section, val1, val2) {
+  switch (section) {
+    case "Description":
+      return `${val1}
+${val2}`;
+    case "AWSTemplateFormatVersion":
+      if (val1 != null && val2 != null && val1 !== val2) {
+        throw new AssumptionError(lit`ConflictingCloudformationTemplateVersions`, `Conflicting CloudFormation template versions provided: '${val1}' and '${val2}`);
+      }
+      return val1 ?? val2;
+    case "Transform":
+      return mergeSets(val1, val2);
+    default:
+      return mergeObjectsWithoutDuplicates(section, val1, val2);
+  }
+}
+function mergeSets(val1, val2) {
+  const array1 = val1 == null ? [] : Array.isArray(val1) ? val1 : [val1];
+  const array2 = val2 == null ? [] : Array.isArray(val2) ? val2 : [val2];
+  for (const value of array2) {
+    if (!array1.includes(value)) {
+      array1.push(value);
+    }
+  }
+  return array1.length === 1 ? array1[0] : array1;
+}
+function mergeObjectsWithoutDuplicates(section, dest, src) {
+  if (typeof dest !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(dest)} to be an object`);
+  }
+  if (typeof src !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(src)} to be an object`);
+  }
+  for (const id of Object.keys(src)) {
+    if (id in dest) {
+      throw new AssumptionError(lit`SectionAlreadyContains`, `section '${section}' already contains '${id}'`);
+    }
+    dest[id] = src[id];
+  }
+  return dest;
+}
+function cfnElements(node, into = []) {
+  if (CfnElement.isCfnElement(node)) {
+    into.push(node);
+  }
+  for (const child of import_constructs22.Node.of(node).children) {
+    if (STACK_TYPE.isMarked(child)) {
+      continue;
+    }
+    cfnElements(child, into);
+  }
+  return into;
+}
+function rootPathTo(construct, ancestor) {
+  const scopes = import_constructs22.Node.of(construct).scopes;
+  for (let i = scopes.length - 2; i >= 0; i--) {
+    if (scopes[i] === ancestor) {
+      return scopes.slice(i + 1);
+    }
+  }
+  return scopes;
+}
+function makeStackName(components, prefix = "") {
+  if (components.length === 1) {
+    const stack_name = prefix + components[0];
+    if (stack_name.length <= 128) {
+      return stack_name;
+    }
+  }
+  return makeUniqueResourceName(components, { maxLength: 128, prefix });
+}
+function getCreateExportsScope(stack) {
+  const exportsName = "Exports";
+  let stackExports = stack.node.tryFindChild(exportsName);
+  if (stackExports === void 0) {
+    stackExports = new import_constructs22.Construct(stack, exportsName);
+  }
+  return stackExports;
+}
+function generateExportName2(stackExports, id) {
+  const stackRelativeExports = FeatureFlags.of(stackExports).isEnabled(STACK_RELATIVE_EXPORTS_CONTEXT);
+  const stack = Stack.of(stackExports);
+  const components = [
+    ...stackExports.node.scopes.slice(stackRelativeExports ? stack.node.scopes.length : 2).map((c) => c.node.id),
+    id
+  ];
+  const prefix = stack.stackName ? stack.stackName + ":" : "";
+  const localPart = makeUniqueId(components);
+  const maxLength = 255;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function count(xs) {
+  const ret = {};
+  for (const x of xs) {
+    if (x in ret) {
+      ret[x] += 1;
+    } else {
+      ret[x] = 1;
+    }
+  }
+  return ret;
+}
+function sameReason(a) {
+  return (b) => a.source === b.source && a.target === b.target;
+}
+function makeCustomCoupledReference(value, strength) {
+  const resolvable = Tokenization.reverse(value);
+  if (!resolvable || !CfnReference.isCfnReference(resolvable)) {
+    throw new UnscopedValidationError(
+      lit`ConsumeReferenceRequiresResourceAttribute`,
+      "consumeReference: the value must be a resource attribute reference (like 'bucket.bucketArn')"
+    );
+  }
+  return new CustomCoupledReference(resolvable, strength);
+}
+var fs17, path21, import_constructs22, minimatch2, STACK_RESOURCE_LIMIT_CONTEXT, SUPPRESS_TEMPLATE_INDENTATION_CONTEXT, TEMPLATE_BODY_MAXIMUM_SIZE, VALID_STACK_NAME_REGEX, MAX_RESOURCES, _resolve_dec, _a6, _init9, _Stack, Stack, firstTwoAgnosticAzs;
+var init_stack = __esm({
+  "../../aws-cdk-lib/core/lib/stack.ts"() {
+    "use strict";
+    fs17 = __toESM(require("fs"));
+    path21 = __toESM(require("path"));
+    import_constructs22 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_arn();
+    init_aspect();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_context_provider();
+    init_feature_flags();
+    init_mixin_metadata();
+    init_permissions_boundary();
+    init_cloudformation_lang();
+    init_logical_id();
+    init_resolve();
+    init_uniqueid();
+    init_prop_injectors();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cx_api();
+    init_perf();
+    init_cfn_output();
+    init_cross_stack_reference_strength();
+    init_names();
+    init_reference();
+    init_stack_synthesizers();
+    init_string_specializer();
+    init_stage();
+    init_tag_manager();
+    init_token();
+    init_refs();
+    init_cfn_reference();
+    init_region_info2();
+    init_region_lookup();
+    init_unique_resource_name();
+    init_private_context();
+    init_aspect_prio();
+    init_errors();
+    init_literal_string();
+    init_debug();
+    init_stack_trace();
+    init_core_construct_finders();
+    init_deps();
+    init_validation2();
+    ({ minimatch: minimatch2 } = require_commonjs3());
+    STACK_RESOURCE_LIMIT_CONTEXT = "@aws-cdk/core:stackResourceLimit";
+    SUPPRESS_TEMPLATE_INDENTATION_CONTEXT = "@aws-cdk/core:suppressTemplateIndentation";
+    TEMPLATE_BODY_MAXIMUM_SIZE = 1e6;
+    VALID_STACK_NAME_REGEX = /^[A-Za-z][A-Za-z0-9-]*$/;
+    MAX_RESOURCES = 500;
+    _Stack = class _Stack extends (_a6 = import_constructs22.Construct, _resolve_dec = [profileFn("Stack.resolve", { telemetry: true })], _a6) {
+      /**
+       * Creates a new stack.
+       *
+       * @param scope Parent of this stack, usually an `App` or a `Stage`, but could be any construct.
+       * @param id The construct ID of this stack. If `stackName` is not explicitly
+       * defined, this id (and any parent IDs) will be used to determine the
+       * physical ID of the stack.
+       * @param props Stack properties.
+       */
+      constructor(scope, id, props = {}) {
+        scope = scope ?? new App({
+          autoSynth: false
+        });
+        id = id ?? "Default";
+        super(scope, id);
+        __runInitializers(_init9, 5, this);
+        /**
+         * Tags to be applied to the stack.
+         */
+        __publicField(this, "tags");
+        /**
+         * Options for CloudFormation template (like version, transform, description).
+         */
+        __publicField(this, "templateOptions");
+        /**
+         * The AWS region into which this stack will be deployed (e.g. `us-west-2`).
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.region` when the stack is defined. This can
+         *    either be a concrete region (e.g. `us-west-2`) or the `Aws.REGION`
+         *    token.
+         * 3. `Aws.REGION`, which is represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::Region" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.region)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into a **region-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other region-agnostic behavior.
+         */
+        __publicField(this, "region");
+        /**
+         * The AWS account into which this stack will be deployed.
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.account` when the stack is defined. This can
+         *    either be a concrete account (e.g. `585695031111`) or the
+         *    `Aws.ACCOUNT_ID` token.
+         * 3. `Aws.ACCOUNT_ID`, which represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::AccountId" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.account)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into an **account-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other account-agnostic behavior.
+         */
+        __publicField(this, "account");
+        /**
+         * The environment coordinates in which this stack is deployed. In the form
+         * `aws://account/region`. Use `stack.account` and `stack.region` to obtain
+         * the specific values, no need to parse.
+         *
+         * You can use this value to determine if two stacks are targeting the same
+         * environment.
+         *
+         * If either `stack.account` or `stack.region` are not concrete values (e.g.
+         * `Aws.ACCOUNT_ID` or `Aws.REGION`) the special strings `unknown-account` and/or
+         * `unknown-region` will be used respectively to indicate this stack is
+         * region/account-agnostic.
+         */
+        __publicField(this, "environment");
+        /**
+         * If this is a nested stack, this represents its `AWS::CloudFormation::Stack`
+         * resource. `undefined` for top-level (non-nested) stacks.
+         *
+         */
+        __publicField(this, "nestedStackResource");
+        /**
+         * The name of the CloudFormation template file emitted to the output
+         * directory during synthesis.
+         *
+         * Example value: `MyStack.template.json`
+         */
+        __publicField(this, "templateFile");
+        /**
+         * The ID of the cloud assembly artifact for this stack.
+         */
+        __publicField(this, "artifactId");
+        /**
+         * Synthesis method for this stack
+         *
+         */
+        __publicField(this, "synthesizer");
+        /**
+         * Whether version reporting is enabled for this stack
+         *
+         * Controls whether the CDK Metadata resource is injected
+         *
+         * @internal
+         */
+        __publicField(this, "_versionReportingEnabled");
+        /**
+         * Whether cross region references are enabled for this stack
+         *
+         * @internal
+         */
+        __publicField(this, "_crossRegionReferences");
+        /**
+         * SNS Notification ARNs to receive stack events.
+         *
+         * @internal
+         */
+        __publicField(this, "_notificationArns");
+        /**
+         * Logical ID generation strategy
+         */
+        __publicField(this, "_logicalIds");
+        /**
+         * Other stacks this stack depends on
+         */
+        __publicField(this, "_stackDependencies");
+        /**
+         * Lists all missing contextual information.
+         * This is returned when the stack is synthesized under the 'missing' attribute
+         * and allows tooling to obtain the context and re-synthesize.
+         */
+        __publicField(this, "_missingContext");
+        __publicField(this, "_stackName");
+        /**
+         * Enable this flag to suppress indentation in generated
+         * CloudFormation templates.
+         *
+         * If not specified, the value of the `@aws-cdk/core:suppressTemplateIndentation`
+         * context key will be used. If that is not specified, then the
+         * default value `false` will be used.
+         *
+         * @default - the value of `@aws-cdk/core:suppressTemplateIndentation`, or `false` if that is not set.
+         */
+        __publicField(this, "_suppressTemplateIndentation");
+        __publicField(this, "_terminationProtection");
+        /**
+         * Silencing a specific diagnostic, should only do this once.
+         */
+        __publicField(this, "azLiteralWarningSilenced", false);
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        this._missingContext = new Array();
+        this._stackDependencies = {};
+        this.templateOptions = {};
+        this._crossRegionReferences = !!props.crossRegionReferences;
+        this._suppressTemplateIndentation = props.suppressTemplateIndentation ?? this.node.tryGetContext(SUPPRESS_TEMPLATE_INDENTATION_CONTEXT) ?? false;
+        STACK_TYPE.mark(this);
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+        this._logicalIds = new LogicalIDs();
+        const { account, region, environment } = this.parseEnvironment(props.env);
+        this.account = account;
+        this.region = region;
+        this.environment = environment;
+        this._terminationProtection = props.terminationProtection ?? false;
+        if (props.description !== void 0) {
+          if (props.description.length > 512) {
+            throw new ValidationError(lit`StackDescriptionTooLong`, `Stack description must be <= 1024 bytes. Received description: '${props.description}'`, this);
+          }
+          this.templateOptions.description = props.description;
+        }
+        this._stackName = props.stackName ?? this.generateStackName();
+        if (this._stackName.length > 128) {
+          throw new ValidationError(lit`StackNameTooLong`, `Stack name must be <= 128 characters. Stack name: '${this._stackName}'`, this);
+        }
+        this.tags = new TagManager("KeyValue" /* KEY_VALUE */, "aws:cdk:stack", props.tags);
+        for (const notificationArn of props.notificationArns ?? []) {
+          if (Token.isUnresolved(notificationArn)) {
+            throw new ValidationError(lit`StackNotificationArnsContainTokens`, `Stack '${id}' includes one or more tokens in its notification ARNs: ${props.notificationArns}`, this);
+          }
+        }
+        this._notificationArns = props.notificationArns;
+        if (!VALID_STACK_NAME_REGEX.test(this.stackName)) {
+          throw new ValidationError(lit`StackNameInvalidFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${this.stackName}'`, this);
+        }
+        const featureFlags = FeatureFlags.of(this);
+        const stackNameDupeContext = featureFlags.isEnabled(ENABLE_STACK_NAME_DUPLICATES_CONTEXT);
+        const newStyleSynthesisContext = featureFlags.isEnabled(NEW_STYLE_STACK_SYNTHESIS_CONTEXT);
+        const artifactId = stackNameDupeContext || newStyleSynthesisContext ? this.generateStackArtifactId() : this.stackName;
+        this.artifactId = artifactId.replace(/[^A-Za-z0-9_\-\.]/g, "_");
+        this.templateFile = `${this.artifactId}.template.json`;
+        this._versionReportingEnabled = (props.analyticsReporting ?? this.node.tryGetContext(ANALYTICS_REPORTING_ENABLED_CONTEXT)) && !this.nestedStackParent;
+        const synthesizer = props.synthesizer ?? this.node.tryGetContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER) ?? (newStyleSynthesisContext ? new DefaultStackSynthesizer() : new LegacyStackSynthesizer());
+        if (isReusableStackSynthesizer(synthesizer)) {
+          this.synthesizer = synthesizer.reusableBind(this);
+        } else {
+          this.synthesizer = synthesizer;
+          this.synthesizer.bind(this);
+        }
+        props.permissionsBoundary?._bind(this);
+        this.addPermissionsBoundaryAspect();
+      }
+      /**
+       * Return whether the given object is a Stack.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static isStack(x) {
+        return STACK_TYPE.isMarked(x);
+      }
+      /**
+       * Looks up the first stack scope in which `construct` is defined. Fails if there is no stack up the tree.
+       *
+       * Will return the closest containing `Stack` or `NestedStack`.
+       *
+       * @param construct The construct to start the search from.
+       */
+      static of(construct) {
+        return stackOf(construct);
+      }
+      /**
+       * Override the reference strength for a specific cross-stack reference value.
+       *
+       * Use this to weaken (or strengthen) an individual reference without
+       * affecting other references to the same resource. For example:
+       *
+       * ```ts
+       * // producerStack defines an SNS topic
+       * declare const topic: sns.Topic;
+       *
+       * // consumerStack subscribes to it with a weak reference,
+       * // so the producer can be torn down without blocking on this consumer
+       * const consumerStack = new Stack(app, 'Consumer', {
+       *   env: { account: '123456789012', region: 'us-east-1' },
+       * });
+       * new sns.Subscription(consumerStack, 'Subscription', {
+       *   topic: sns.Topic.fromTopicArn(consumerStack, 'Topic', Stack.consumeReference(topic.topicArn)),
+       *   endpoint: 'https://example.com/webhook',
+       *   protocol: sns.SubscriptionProtocol.HTTPS,
+       * });
+       * ```
+       *
+       * @param value A tokenized string reference (e.g. `bucket.bucketArn`).
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeReference(value, strength = "both" /* BOTH */) {
+        return Token.asString(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Override the reference strength for a specific cross-stack string list reference.
+       *
+       * This is the string list equivalent of `consumeReference`.
+       *
+       * @param value A tokenized string list reference.
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeListReference(value, strength = "both" /* BOTH */) {
+        return Token.asList(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Whether termination protection is enabled for this stack.
+       */
+      get terminationProtection() {
+        return this._terminationProtection;
+      }
+      set terminationProtection(value) {
+        this._terminationProtection = value;
+      }
+      /**
+       * If a permissions boundary has been applied on this scope or any parent scope
+       * then this will return the ARN of the permissions boundary.
+       *
+       * This will return the permissions boundary that has been applied to the most
+       * specific scope.
+       *
+       * For example:
+       *
+       * const stage = new Stage(app, 'stage', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('stage-pb'),
+       * });
+       *
+       * const stack = new Stack(stage, 'Stack', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'),
+       * });
+       *
+       *  Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';
+       *
+       * @param scope the construct scope to retrieve the permissions boundary name from
+       * @returns the name of the permissions boundary or undefined if not set
+       */
+      get permissionsBoundaryArn() {
+        const qualifier = this.synthesizer.bootstrapQualifier ?? this.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        const spec = new StringSpecializer(this, qualifier);
+        const context = this.node.tryGetContext(PERMISSIONS_BOUNDARY_CONTEXT_KEY);
+        let arn;
+        if (context && context.arn) {
+          arn = spec.specialize(context.arn);
+        } else if (context && context.name) {
+          arn = spec.specialize(this.formatArn({
+            service: "iam",
+            resource: "policy",
+            region: "",
+            resourceName: context.name
+          }));
+        }
+        if (arn && (arn.includes("${Qualifier}") || arn.includes("${AWS::AccountId}") || arn.includes("${AWS::Region}") || arn.includes("${AWS::Partition}"))) {
+          throw new ValidationError(lit`PermissionsBoundaryContainsPseudoParameter`, `The permissions boundary ${arn} includes a pseudo parameter, which is not supported for environment agnostic stacks`, this);
+        }
+        return arn;
+      }
+      /**
+       * Adds an aspect to the stack that will apply the permissions boundary.
+       * This will only add the aspect if the permissions boundary has been set
+       */
+      addPermissionsBoundaryAspect() {
+        const permissionsBoundaryArn = this.permissionsBoundaryArn;
+        if (permissionsBoundaryArn) {
+          Aspects.of(this).add({
+            visit(node) {
+              if (CfnResource.isCfnResource(node) && (node.cfnResourceType == "AWS::IAM::Role" || node.cfnResourceType == "AWS::IAM::User")) {
+                node.addPropertyOverride("PermissionsBoundary", permissionsBoundaryArn);
+              }
+            }
+          }, {
+            priority: mutatingAspectPrio32333(this)
+          });
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      resolve(obj) {
+        return resolve(obj, {
+          scope: this,
+          prefix: [],
+          resolver: CLOUDFORMATION_TOKEN_RESOLVER,
+          preparing: false
+        });
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a JSON string
+       */
+      toJsonString(obj, space) {
+        return CloudFormationLang.toJSON(obj, space).toString();
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a YAML string
+       */
+      toYamlString(obj) {
+        return CloudFormationLang.toYAML(obj).toString();
+      }
+      /**
+       * DEPRECATED
+       * @deprecated use `reportMissingContextKey()`
+       */
+      reportMissingContext(report) {
+        if (!Object.values(cloud_assembly_schema_exports.ContextProvider).includes(report.provider)) {
+          throw new ValidationError(lit`UnknownContextProvider`, `Unknown context provider requested in: ${JSON.stringify(report)}`, this);
+        }
+        this.reportMissingContextKey(report);
+      }
+      /**
+       * Indicate that a context key was expected
+       *
+       * Contains instructions which will be emitted into the cloud assembly on how
+       * the key should be supplied.
+       *
+       * @param report The set of parameters needed to obtain the context
+       */
+      reportMissingContextKey(report) {
+        this._missingContext.push(report);
+      }
+      /**
+       * Rename a generated logical identities
+       *
+       * To modify the naming scheme strategy, extend the `Stack` class and
+       * override the `allocateLogicalId` method.
+       */
+      renameLogicalId(oldId, newId) {
+        this._logicalIds.addRename(oldId, newId);
+      }
+      /**
+       * Allocates a stack-unique CloudFormation-compatible logical identity for a
+       * specific resource.
+       *
+       * This method is called when a `CfnElement` is created and used to render the
+       * initial logical identity of resources. Logical ID renames are applied at
+       * this stage.
+       *
+       * This method uses the protected method `allocateLogicalId` to render the
+       * logical ID for an element. To modify the naming scheme, extend the `Stack`
+       * class and override this method.
+       *
+       * @param element The CloudFormation element for which a logical identity is
+       * needed.
+       */
+      getLogicalId(element) {
+        const logicalId = this.allocateLogicalId(element);
+        return this._logicalIds.applyRename(logicalId);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method has been renamed to `addStackDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addStackDependency` instead.
+       */
+      addDependency(target, reason) {
+        this.addStackDependency(target, reason);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method only adds dependencies between stacks. If you are looking
+       * for a generic construct-to-construct dependency mechanism, use
+       * `construct.node.addDependency` instead.
+       */
+      addStackDependency(target, reason) {
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addStackDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Return the stacks this stack depends on
+       */
+      get dependencies() {
+        return Object.values(this._stackDependencies).map((x) => x.stack);
+      }
+      /**
+       * The concrete CloudFormation physical stack name.
+       *
+       * This is either the name defined explicitly in the `stackName` prop or
+       * allocated based on the stack's location in the construct tree. Stacks that
+       * are directly defined under the app use their construct `id` as their stack
+       * name. Stacks that are defined deeper within the tree will use a hashed naming
+       * scheme based on the construct path to ensure uniqueness.
+       *
+       * If you wish to obtain the deploy-time AWS::StackName intrinsic,
+       * you can use `Aws.STACK_NAME` directly.
+       */
+      get stackName() {
+        return this._stackName;
+      }
+      /**
+       * The partition in which this stack is defined
+       */
+      get partition() {
+        if (!FeatureFlags.of(this).isEnabled(ENABLE_PARTITION_LITERALS) || Token.isUnresolved(this.region)) {
+          return Aws.PARTITION;
+        } else {
+          const partition = RegionInfo.get(this.region).partition;
+          return partition ?? Aws.PARTITION;
+        }
+      }
+      /**
+       * The Amazon domain suffix for the region in which this stack is defined
+       */
+      get urlSuffix() {
+        return Aws.URL_SUFFIX;
+      }
+      /**
+       * The ID of the stack
+       *
+       * @example
+       * // After resolving, looks like
+       * 'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123'
+       */
+      get stackId() {
+        return new ScopedAws(this).stackId;
+      }
+      /**
+       * Returns the list of notification Amazon Resource Names (ARNs) for the current stack.
+       */
+      get notificationArns() {
+        return new ScopedAws(this).notificationArns;
+      }
+      /**
+       * Indicates if this is a nested stack, in which case `parentStack` will include a reference to its parent.
+       */
+      get nested() {
+        return this.nestedStackResource !== void 0;
+      }
+      /**
+       * Creates an ARN from components.
+       *
+       * If `partition`, `region` or `account` are not specified, the stack's
+       * partition, region and account will be used.
+       *
+       * If any component is the empty string, an empty string will be inserted
+       * into the generated ARN at the location that component corresponds to.
+       *
+       * The ARN will be formatted as follows:
+       *
+       *   arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}
+       *
+       * The required ARN pieces that are omitted will be taken from the stack that
+       * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope
+       * can be 'undefined'.
+       */
+      formatArn(components) {
+        return Arn.format(components, this);
+      }
+      /**
+       * Given an ARN, parses it and returns components.
+       *
+       * IF THE ARN IS A CONCRETE STRING...
+       *
+       * ...it will be parsed and validated. The separator (`sep`) will be set to '/'
+       * if the 6th component includes a '/', in which case, `resource` will be set
+       * to the value before the '/' and `resourceName` will be the rest. In case
+       * there is no '/', `resource` will be set to the 6th components and
+       * `resourceName` will be set to the rest of the string.
+       *
+       * IF THE ARN IS A TOKEN...
+       *
+       * ...it cannot be validated, since we don't have the actual value yet at the
+       * time of this function call. You will have to supply `sepIfToken` and
+       * whether or not ARNs of the expected format usually have resource names
+       * in order to parse it properly. The resulting `ArnComponents` object will
+       * contain tokens for the subexpressions of the ARN, not string literals.
+       *
+       * If the resource name could possibly contain the separator char, the actual
+       * resource name cannot be properly parsed. This only occurs if the separator
+       * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs,
+       * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a
+       * Tokenized ARN, you must know the resource type and call
+       * `Arn.extractResourceName`.
+       *
+       * @param arn The ARN string to parse
+       * @param sepIfToken The separator used to separate resource from resourceName
+       * @param hasName Whether there is a name component in the ARN at all. For
+       * example, SNS Topics ARNs have the 'resource' component contain the topic
+       * name, and no 'resourceName' component.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       * components of the ARN.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       *      components of the ARN.
+       *
+       * @deprecated use splitArn instead
+       */
+      parseArn(arn, sepIfToken = "/", hasName = true) {
+        return Arn.parse(arn, sepIfToken, hasName);
+      }
+      /**
+       * Splits the provided ARN into its components.
+       * Works both if 'arn' is a string like 'arn:aws:s3:::bucket',
+       * and a Token representing a dynamic CloudFormation expression
+       * (in which case the returned components will also be dynamic CloudFormation expressions,
+       * encoded as Tokens).
+       *
+       * @param arn the ARN to split into its components
+       * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses
+       */
+      splitArn(arn, arnFormat) {
+        return Arn.split(arn, arnFormat);
+      }
+      /**
+       * Returns the list of AZs that are available in the AWS environment
+       * (account/region) associated with this stack.
+       *
+       * If the stack is environment-agnostic (either account and/or region are
+       * tokens), this property will return an array with 2 tokens that will resolve
+       * at deploy-time to the first two availability zones returned from CloudFormation's
+       * `Fn::GetAZs` intrinsic function.
+       *
+       * If they are not available in the context, returns a set of dummy values and
+       * reports them as missing, and let the CLI resolve them by calling EC2
+       * `DescribeAvailabilityZones` on the target environment.
+       *
+       * To specify a different strategy for selecting availability zones override this method.
+       */
+      get availabilityZones() {
+        this._silenceLiteralAzWarning();
+        const agnostic = Token.isUnresolved(this.account) || Token.isUnresolved(this.region);
+        if (agnostic) {
+          return this.node.tryGetContext(import_cloud_assembly_api.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY) || firstTwoAgnosticAzs();
+        }
+        const value = ContextProvider.getValue(this, {
+          provider: cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER,
+          dummyValue: ["dummy1a", "dummy1b", "dummy1c"]
+        }).value;
+        if (!Array.isArray(value)) {
+          throw new ValidationError(lit`ProviderExpectedList`, `Provider ${cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER} expects a list`, this);
+        }
+        return value;
+      }
+      /**
+       * Register a file asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addFileAsset()` if you are calling,
+       * and a different IStackSynthesizer class if you are implementing.
+       */
+      addFileAsset(asset) {
+        return this.synthesizer.addFileAsset(asset);
+      }
+      /**
+       * Register a docker image asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addDockerImageAsset()` if you are calling,
+       * and a different `IStackSynthesizer` class if you are implementing.
+       */
+      addDockerImageAsset(asset) {
+        return this.synthesizer.addDockerImageAsset(asset);
+      }
+      /**
+       * If this is a nested stack, returns its parent stack.
+       */
+      get nestedStackParent() {
+        return this.nestedStackResource && _Stack.of(this.nestedStackResource);
+      }
+      /**
+       * Returns the parent of a nested stack.
+       *
+       * @deprecated use `nestedStackParent`
+       */
+      get parentStack() {
+        return this.nestedStackParent;
+      }
+      /**
+       * Add a Transform to this stack. A Transform is a macro that AWS
+       * CloudFormation uses to process your template.
+       *
+       * Duplicate values are removed when stack is synthesized.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html
+       * @param transform The transform to add
+       *
+       * @example
+       * declare const stack: Stack;
+       *
+       * stack.addTransform('AWS::Serverless-2016-10-31')
+       */
+      addTransform(transform) {
+        if (!this.templateOptions.transforms) {
+          this.templateOptions.transforms = [];
+        }
+        this.templateOptions.transforms.push(transform);
+      }
+      /**
+       * Adds an arbitrary key-value pair, with information you want to record about the stack.
+       * These get translated to the Metadata section of the generated template.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       */
+      addMetadata(key, value) {
+        if (!this.templateOptions.metadata) {
+          this.templateOptions.metadata = {};
+        }
+        this.templateOptions.metadata[key] = value;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two top-level stacks.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addStackDependency(target, reason) {
+        if (!reason.reason) {
+          throw new ValidationError(lit`MissingDependencyReason`, "A stack dependency reason must be provided", this);
+        }
+        const cycle = target.stackDependencyReasons(this);
+        if (cycle !== void 0) {
+          const cycleDescription = cycle.map((cycleReason) => {
+            return cycleReason.reason;
+          }).join(", ");
+          throw new ValidationError(lit`DependencyCycle`, `'${target.node.path}' depends on '${this.node.path}' (${cycleDescription}). Adding this dependency (${reason.reason}) would create a cyclic reference.`, this);
+        }
+        const dep = this._stackDependencies[Names.uniqueId(target)] ?? (this._stackDependencies[Names.uniqueId(target)] = { stack: target, reasons: [] });
+        if (dep.reasons.find(sameReason(reason))) {
+          return;
+        }
+        dep.reasons.push(reason);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] stack "${reason.source.node.path}" depends on "${reason.target.node.path}"`);
+        }
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two top-level stacks.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeStackDependency(target, reason) {
+        let dep = this._stackDependencies[Names.uniqueId(target)];
+        if (!dep) {
+          return;
+        }
+        const matchedReasons = dep.reasons.filter(sameReason(reason));
+        if (matchedReasons.length === 0) {
+          return;
+        }
+        if (matchedReasons.length > 1) {
+          throw new ValidationError(lit`TooManyDependencyReasons`, `There cannot be more than one reason for dependency removal, found: ${matchedReasons}`, this);
+        }
+        let index = dep.reasons.indexOf(matchedReasons[0]);
+        dep.reasons.splice(index, 1);
+        if (dep.reasons.length == 0) {
+          delete this._stackDependencies[Names.uniqueId(target)];
+        }
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.log(`[CDK_DEBUG_DEPS] stack "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Return the stacks dependencies caused by the given construct.
+       *
+       * Returns the target resources that the dependency has been added for.
+       *
+       * I'm not sure this method is useful in any way, but we are keeping it in
+       * to maintain exact behavior as guaranteed by unit tests.
+       *
+       * @internal
+       */
+      _stackDependenciesCausedBy(source) {
+        return Array.from(new Set(Object.values(this._stackDependencies).flatMap((dep) => dep.reasons).filter((reason) => reason.source === source).map((reason) => reason.target)));
+      }
+      /**
+       * Synthesizes the cloudformation template into a cloud assembly.
+       * @internal
+       */
+      _synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        const builder = session.assembly;
+        this.node.addMetadata(CDK_TEMPLATE_FILE_KEY, this.templateFile);
+        const template = this._toCloudFormation();
+        const outPath = path21.join(builder.outdir, this.templateFile);
+        if (this.maxResources > 0) {
+          const resources = template.Resources || {};
+          const numberOfResources = Object.keys(resources).length;
+          if (numberOfResources > this.maxResources) {
+            const counts = Object.entries(count(Object.values(resources).map((r) => `${r?.Type}`))).map(([type, c]) => `${type} (${c})`).join(", ");
+            throw new ValidationError(lit`TooManyResourcesInStack`, `Number of resources in stack '${this.node.path}': ${numberOfResources} is greater than allowed maximum of ${this.maxResources}: ${counts}`, this);
+          } else if (numberOfResources >= this.maxResources * 0.8) {
+            Annotations.of(this).addInfo(`Number of resources: ${numberOfResources} is approaching allowed maximum of ${this.maxResources}`);
+          }
+        }
+        const indent = this._suppressTemplateIndentation ? void 0 : 1;
+        const templateData = JSON.stringify(template, void 0, indent);
+        if (templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE * 0.8) {
+          const verb = templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE ? "exceeds" : "is approaching";
+          const advice = this._suppressTemplateIndentation ? "Split resources into multiple stacks to reduce template size" : "Split resources into multiple stacks or set suppressTemplateIndentation to reduce template size";
+          const message = `Template size ${verb} limit: ${templateData.length}/${TEMPLATE_BODY_MAXIMUM_SIZE}. ${advice}.`;
+          Annotations.of(this).addWarningV2("@aws-cdk/core:Stack.templateSize", message);
+        }
+        fs17.writeFileSync(outPath, templateData);
+        for (const ctx of this._missingContext) {
+          const queryLookupOptions = {
+            lookupRoleArn,
+            lookupRoleExternalId,
+            assumeRoleAdditionalOptions: lookupRoleAdditionalOptions
+          };
+          builder.addMissing({ ...ctx, props: { ...ctx.props, ...queryLookupOptions } });
+        }
+      }
+      /**
+       * Look up a fact value for the given fact for the region of this stack
+       *
+       * Will return a definite value only if the region of the current stack is resolved.
+       * If not, a lookup map will be added to the stack and the lookup will be done at
+       * CDK deployment time.
+       *
+       * What regions will be included in the lookup map is controlled by the
+       * `@aws-cdk/core:target-partitions` context value: it must be set to a list
+       * of partitions, and only regions from the given partitions will be included.
+       * If no such context key is set, all regions will be included.
+       *
+       * This function is intended to be used by construct library authors. Application
+       * builders can rely on the abstractions offered by construct libraries and do
+       * not have to worry about regional facts.
+       *
+       * If `defaultValue` is not given, it is an error if the fact is unknown for
+       * the given region.
+       */
+      regionalFact(factName, defaultValue) {
+        if (!Token.isUnresolved(this.region)) {
+          const ret = Fact.find(this.region, factName) ?? defaultValue;
+          if (ret === void 0) {
+            throw new ValidationError(lit`RegionFactNotFound`, `region-info: don't know ${factName} for region ${this.region}. Use 'Fact.register' to provide this value.`, this);
+          }
+          return ret;
+        }
+        const partitions = import_constructs22.Node.of(this).tryGetContext(TARGET_PARTITIONS);
+        if (partitions !== void 0 && partitions !== "undefined" && !Array.isArray(partitions)) {
+          throw new ValidationError(lit`TargetPartitionsContextValueInvalid`, `Context value '${TARGET_PARTITIONS}' should be a list of strings, got: ${JSON.stringify(partitions)}`, this);
+        }
+        const lookupMap = partitions !== void 0 && partitions !== "undefined" ? RegionInfo.limitedRegionMap(factName, partitions) : RegionInfo.regionMap(factName);
+        return deployTimeLookup(this, factName, lookupMap, defaultValue);
+      }
+      /**
+       * Create a CloudFormation Export for a string value
+       *
+       * Returns a string representing the corresponding `Fn.importValue()`
+       * expression for this Export. You can control the name for the export by
+       * passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * Here is how the process works. Let's say there are two stacks,
+       * `producerStack` and `consumerStack`, and `producerStack` has a bucket
+       * called `bucket`, which is referenced by `consumerStack` (perhaps because
+       * an AWS Lambda Function writes into it, or something like that).
+       *
+       * It is not safe to remove `producerStack.bucket` because as the bucket is being
+       * deleted, `consumerStack` might still be using it.
+       *
+       * Instead, the process takes two deployments:
+       *
+       * **Deployment 1: break the relationship**:
+       *
+       * - Make sure `consumerStack` no longer references `bucket.bucketName` (maybe the consumer
+       *   stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just
+       *   remove the Lambda Function altogether).
+       * - In the `ProducerStack` class, call `this.exportValue(this.bucket.bucketName)`. This
+       *   will make sure the CloudFormation Export continues to exist while the relationship
+       *   between the two stacks is being broken.
+       * - Deploy (this will effectively only change the `consumerStack`, but it's safe to deploy both).
+       *
+       * **Deployment 2: remove the bucket resource**:
+       *
+       * - You are now free to remove the `bucket` resource from `producerStack`.
+       * - Don't forget to remove the `exportValue()` call as well.
+       * - Deploy again (this time only the `producerStack` will be changed -- the bucket will be deleted).
+       */
+      exportValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: exportedValue,
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.importValue(options.name);
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            value: Token.asString(exportable),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.importValue(exportName);
+        if (Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedListValueFromExportValue`, "Attempted to export a list value from `exportValue()`: use `exportStringListValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Create a CloudFormation Export for a string list value
+       *
+       * Returns a string list representing the corresponding `Fn.importValue()`
+       * expression for this Export. The export expression is automatically wrapped with an
+       * `Fn::Join` and the import value with an `Fn::Split`, since CloudFormation can only
+       * export strings. You can control the name for the export by passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * See `exportValue` for an example of this process.
+       */
+      exportStringListValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, exportedValue),
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(options.name));
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            // this is a list so export an Fn::Join expression
+            // and import an Fn::Split expression,
+            // since CloudFormation Outputs can only be strings
+            // (string lists are invalid)
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(exportable)),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(exportName));
+        if (!Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedStringValueFromExportStringListValue`, "Attempted to export a string value from `exportStringListValue()`: use `exportValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Returns `true` if this stack is a top-level stack (i.e., not a nested stack).
+       *
+       * For better or worse, `Stack` is being subclassed by other constructs to mean "template producer".
+       * For example, `NestedStack` is a subclass of `Stack` but is not a top-level stack, and so
+       * is `CloudFormationProduct`.
+       *
+       * This indicates whether the current class represents a top-level stack
+       * (should only be true for instances of the main `Stack` class), or false for
+       * a construct that simply produces a template and happens to reuse `Stack`
+       * for that purpose.
+       *
+       * Here is the class hierarchy we should have had:
+       *
+       * ```
+       * TemplateProducer
+       * ├── Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * Here is the class hierarchy we actually have:
+       *
+       * ```
+       * Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * @internal
+       */
+      get _isTopLevelStack() {
+        return true;
+      }
+      /**
+       * Returns the naming scheme used to allocate logical IDs. By default, uses
+       * the `HashedAddressingScheme` but this method can be overridden to customize
+       * this behavior.
+       *
+       * In order to make sure logical IDs are unique and stable, we hash the resource
+       * construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as
+       * a suffix to the path components joined without a separator (CloudFormation
+       * IDs only allow alphanumeric characters).
+       *
+       * The result will be:
+       *
+       *   
+       *     "human"      "hash"
+       *
+       * If the "human" part of the ID exceeds 240 characters, we simply trim it so
+       * the total ID doesn't exceed CloudFormation's 255 character limit.
+       *
+       * We only take 8 characters from the md5 hash (0.000005 chance of collision).
+       *
+       * Special cases:
+       *
+       * - If the path only contains a single component (i.e. it's a top-level
+       *   resource), we won't add the hash to it. The hash is not needed for
+       *   disambiguation and also, it allows for a more straightforward migration an
+       *   existing CloudFormation template to a CDK stack without logical ID changes
+       *   (or renames).
+       * - For aesthetic reasons, if the last components of the path are the same
+       *   (i.e. `L1/L2/Pipeline/Pipeline`), they will be de-duplicated to make the
+       *   resulting human portion of the ID more pleasing: `L1L2Pipeline`
+       *   instead of `L1L2PipelinePipeline`
+       * - If a component is named "Default" it will be omitted from the path. This
+       *   allows refactoring higher level abstractions around constructs without affecting
+       *   the IDs of already deployed resources.
+       * - If a component is named "Resource" it will be omitted from the user-visible
+       *   path, but included in the hash. This reduces visual noise in the human readable
+       *   part of the identifier.
+       *
+       * @param cfnElement The element for which the logical ID is allocated.
+       */
+      allocateLogicalId(cfnElement) {
+        const scopes = cfnElement.node.scopes;
+        const stackIndex = scopes.indexOf(cfnElement.stack);
+        const pathComponents = scopes.slice(stackIndex + 1).map((x) => x.node.id);
+        return makeUniqueId(pathComponents);
+      }
+      /**
+       * Validate stack name
+       *
+       * CloudFormation stack names can include dashes in addition to the regular identifier
+       * character classes, and we don't allow one of the magic markers.
+       *
+       * @internal
+       */
+      _validateId(name) {
+        if (name && !VALID_STACK_NAME_REGEX.test(name)) {
+          throw new ValidationError(lit`InvalidStackNameFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${name}'`, this);
+        }
+      }
+      /**
+       * Returns the CloudFormation template for this stack by traversing
+       * the tree and invoking _toCloudFormation() on all Entity objects.
+       *
+       * @internal
+       */
+      _toCloudFormation() {
+        let transform;
+        if (this.templateOptions.transform) {
+          Annotations.of(this).addWarningV2("@aws-cdk/core:stackDeprecatedTransform", "This stack is using the deprecated `templateOptions.transform` property. Consider switching to `addTransform()`.");
+          this.addTransform(this.templateOptions.transform);
+        }
+        if (this.templateOptions.transforms) {
+          if (this.templateOptions.transforms.length === 1) {
+            transform = this.templateOptions.transforms[0];
+          } else {
+            transform = Array.from(new Set(this.templateOptions.transforms));
+          }
+        }
+        const template = {
+          Description: this.templateOptions.description,
+          Transform: transform,
+          AWSTemplateFormatVersion: this.templateOptions.templateFormatVersion,
+          Metadata: this.templateOptions.metadata
+        };
+        const elements = cfnElements(this);
+        const fragments = elements.map((e) => this.resolve(e._toCloudFormation()));
+        for (const fragment of fragments) {
+          merge(template, fragment);
+        }
+        const ret = this.resolve(template) || {};
+        this._logicalIds.assertAllRenamesApplied();
+        return ret;
+      }
+      /**
+       * Deprecated.
+       *
+       * @see https://github.com/aws/aws-cdk/pull/7187
+       * @returns reference itself without any change
+       * @deprecated cross reference handling has been moved to `App.prepare()`.
+       */
+      prepareCrossReference(_sourceStack, reference) {
+        return reference;
+      }
+      /**
+       * Determine the various stack environment attributes.
+       *
+       */
+      parseEnvironment(env2 = {}) {
+        const containingAssembly = Stage.of(this);
+        if (env2.account && typeof env2.account !== "string") {
+          throw new ValidationError(lit`AccountIdMustBeString`, `Account id of stack environment must be a 'string' but received '${typeof env2.account}'`, this);
+        }
+        if (env2.region && typeof env2.region !== "string") {
+          throw new ValidationError(lit`RegionMustBeString`, `Region of stack environment must be a 'string' but received '${typeof env2.region}'`, this);
+        }
+        const account = env2.account ?? containingAssembly?.account ?? Aws.ACCOUNT_ID;
+        const region = env2.region ?? containingAssembly?.region ?? Aws.REGION;
+        const envAccount = !Token.isUnresolved(account) ? account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+        const envRegion = !Token.isUnresolved(region) ? region : import_cloud_assembly_api.UNKNOWN_REGION;
+        return {
+          account,
+          region,
+          environment: (void 0).format(envAccount, envRegion)
+        };
+      }
+      /**
+       * Maximum number of resources in the stack
+       *
+       * Set to 0 to mean "unlimited".
+       */
+      get maxResources() {
+        const contextLimit = this.node.tryGetContext(STACK_RESOURCE_LIMIT_CONTEXT);
+        return contextLimit !== void 0 ? parseInt(contextLimit, 10) : MAX_RESOURCES;
+      }
+      /**
+       * Check whether this stack has a (transitive) dependency on another stack
+       *
+       * Returns the list of reasons on the dependency path, or undefined
+       * if there is no dependency.
+       */
+      stackDependencyReasons(other) {
+        if (this === other) {
+          return [];
+        }
+        for (const dep of Object.values(this._stackDependencies)) {
+          const ret = dep.stack.stackDependencyReasons(other);
+          if (ret !== void 0) {
+            return [...dep.reasons, ...ret];
+          }
+        }
+        return void 0;
+      }
+      /**
+       * Calculate the stack name based on the construct path
+       *
+       * The stack name is the name under which we'll deploy the stack,
+       * and incorporates containing Stage names by default.
+       *
+       * Generally this looks a lot like how logical IDs are calculated.
+       * The stack name is calculated based on the construct root path,
+       * as follows:
+       *
+       * - Path is calculated with respect to containing App or Stage (if any)
+       * - If the path is one component long just use that component, otherwise
+       *   combine them with a hash.
+       *
+       * Since the hash is quite ugly and we'd like to avoid it if possible -- but
+       * we can't anymore in the general case since it has been written into legacy
+       * stacks. The introduction of Stages makes it possible to make this nicer however.
+       * When a Stack is nested inside a Stage, we use the path components below the
+       * Stage, and prefix the path components of the Stage before it.
+       */
+      generateStackName() {
+        const assembly = Stage.of(this);
+        const prefix = assembly && assembly.stageName ? `${assembly.stageName}-` : "";
+        if (FeatureFlags.of(this).isEnabled(INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION)) {
+          return `${this.generateStackId(assembly, prefix)}`;
+        } else {
+          return `${prefix}${this.generateStackId(assembly)}`;
+        }
+      }
+      /**
+       * The artifact ID for this stack
+       *
+       * Stack artifact ID is unique within the App's Cloud Assembly.
+       */
+      generateStackArtifactId() {
+        return this.generateStackId(this.node.root);
+      }
+      /**
+       * Generate an ID with respect to the given container construct.
+       */
+      generateStackId(container, prefix = "") {
+        const rootPath = rootPathTo(this, container);
+        const ids = rootPath.map((c) => import_constructs22.Node.of(c).id);
+        if (ids.length === 1 && !ids[0]) {
+          throw new ValidationError(lit`StackIdMustBeDefined`, "unexpected: stack id must always be defined", this);
+        }
+        return makeStackName(ids, prefix);
+      }
+      /**
+       * Silence CloudFormation validate warning W3010 ("literal AZs limit portability")
+       *
+       * This is true! But the Validation Plugin is looking at the template and cannot tell
+       * the difference between a literal AZ in the template because a user typed it in the
+       * CDK code, vs a user using CDK's facilities to reflect on AZs and using those.
+       *
+       * So once a user calls `stack.availabilityZones`, we will take that as a signal
+       * they are "doing the right thing" and silencing this warning for them.
+       *
+       * @internal
+       */
+      _silenceLiteralAzWarning() {
+        if (this.azLiteralWarningSilenced) {
+          return;
+        }
+        this.azLiteralWarningSilenced = true;
+        Validations.of(this).acknowledge({
+          id: "CloudFormation-Validate::W3010",
+          reason: "Literal AZs in template are the result of accessing stack.availabilityZones, this is expected and safe"
+        });
+      }
+      resolveExportedValue(exportedValue) {
+        const resolvable = Tokenization.reverse(exportedValue);
+        if (!resolvable || !Reference.isReference(resolvable)) {
+          throw new ValidationError(lit`ExportValueRequiresNameOrResourceAttribute`, "exportValue: either supply 'name' or make sure to export a resource attribute (like 'bucket.bucketName')", this);
+        }
+        const exportable = getExportable(this, resolvable);
+        const exportsScope = getCreateExportsScope(this);
+        const resolved = this.resolve(exportable);
+        const id = "Output" + JSON.stringify(resolved);
+        const exportName = generateExportName2(exportsScope, id);
+        if (Token.isUnresolved(exportName)) {
+          throw new ValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(this.resolve(exportName))}`, this);
+        }
+        return {
+          exportable,
+          exportsScope,
+          id,
+          exportName
+        };
+      }
+      /**
+       * Indicates whether the stack requires bundling or not
+       */
+      get bundlingRequired() {
+        const bundlingStacks = this.node.tryGetContext(BUNDLING_STACKS) ?? ["**"];
+        return bundlingStacks.some((pattern) => minimatch2(
+          this.node.path,
+          // use the same value for pattern matching as the aws-cdk CLI (displayName / hierarchicalId)
+          pattern
+        ));
+      }
+      /**
+       * Configure a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      addStackTag(tagName, tagValue) {
+        this.tags.setTag(tagName, tagValue);
+      }
+      /**
+       * Remove a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      removeStackTag(tagName) {
+        this.tags.removeTag(tagName, 0);
+      }
+      /**
+       * The environment this Stack deploys to
+       */
+      get env() {
+        return {
+          account: this.account,
+          region: this.region
+        };
+      }
+    };
+    _init9 = __decoratorStart(_a6);
+    __decorateElement(_init9, 1, "resolve", _resolve_dec, _Stack);
+    __decoratorMetadata(_init9, _Stack);
+    Stack = _Stack;
+    firstTwoAgnosticAzs = /* @__PURE__ */ (() => {
+      let cache;
+      return () => {
+        if (!cache) {
+          cache = [
+            Fn.select(0, Fn.getAzs()),
+            Fn.select(1, Fn.getAzs())
+          ];
+        }
+        return cache;
+      };
+    })();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-element.ts
+function notTooLong(x) {
+  if (x.length < 100) {
+    return x;
+  }
+  return x.slice(0, 47) + "..." + x.slice(-47);
+}
+var import_constructs23, CFN_ELEMENT_SYMBOL, CfnElement, CfnRefElement;
+var init_cfn_element = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-element.ts"() {
+    "use strict";
+    import_constructs23 = __toESM(require_lib4());
+    init_lazy();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_reference();
+    init_stack();
+    init_token();
+    init_errors();
+    init_mixin_metadata();
+    init_literal_string();
+    init_stack_trace();
+    init_debug();
+    CFN_ELEMENT_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnElement");
+    CfnElement = class extends import_constructs23.Construct {
+      /**
+       * Returns `true` if a construct is a stack element (i.e. part of the
+       * synthesized cloudformation template).
+       *
+       * Uses duck-typing instead of `instanceof` to allow stack elements from different
+       * versions of this library to be included in the same stack.
+       *
+       * @returns The construct as a stack element or undefined if it is not a stack element.
+       */
+      static isCfnElement(x) {
+        return CFN_ELEMENT_SYMBOL in x;
+      }
+      /**
+       * The logical ID for this CloudFormation stack element. The logical ID of the element
+       * is calculated from the path of the resource node in the construct tree.
+       *
+       * To override this value, use `overrideLogicalId(newLogicalId)`.
+       *
+       * @returns the logical ID as a stringified token. This value will only get
+       * resolved during synthesis.
+       */
+      logicalId;
+      /**
+       * The stack in which this element is defined. CfnElements must be defined within a stack scope (directly or indirectly).
+       */
+      stack;
+      /**
+       * An explicit logical ID provided by `overrideLogicalId`.
+       */
+      _logicalIdOverride;
+      /**
+       * If the logicalId is locked then it can no longer be overridden.
+       * This is needed for cases where the logicalId is consumed prior to synthesis
+       * (i.e. Stack.exportValue).
+       */
+      _logicalIdLocked;
+      /**
+       * Creates an entity and binds it to a tree.
+       * Note that the root of the tree must be a Stack object (not just any Root).
+       *
+       * @param scope The parent construct
+       * @param props Construct properties
+       */
+      constructor(scope, id) {
+        super(scope, id);
+        Object.defineProperty(this, CFN_ELEMENT_SYMBOL, { value: true });
+        this.stack = Stack.of(this);
+        this.logicalId = Lazy.uncachedString({ produce: () => this._synthesizeLogicalId() }, {
+          displayHint: `${notTooLong(import_constructs23.Node.of(this).path)}.LogicalID`
+        });
+        if (!this.node.tryGetContext(DISABLE_LOGICAL_ID_METADATA)) {
+          import_constructs23.Node.of(this).addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.LOGICAL_ID, this.logicalId);
+        }
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      /**
+       * Overrides the auto-generated logical ID with a specific ID.
+       * @param newLogicalId The new logical ID to use for this stack element.
+       */
+      overrideLogicalId(newLogicalId) {
+        if (this._logicalIdLocked) {
+          throw new ValidationError(lit`LogicalIdLocked`, `The logicalId for resource at path ${import_constructs23.Node.of(this).path} has been locked and cannot be overridden
+Make sure you are calling "overrideLogicalId" before Stack.exportValue`, this);
+        } else {
+          this._logicalIdOverride = newLogicalId;
+        }
+      }
+      /**
+       * Lock the logicalId of the element and do not allow
+       * any updates (e.g. via overrideLogicalId)
+       *
+       * This is needed in cases where you are consuming the LogicalID
+       * of an element prior to synthesis and you need to not allow future
+       * changes to the id since doing so would cause the value you just
+       * consumed to differ from the synth time value of the logicalId.
+       *
+       * For example:
+       *
+       * const bucket = new Bucket(stack, 'Bucket');
+       * stack.exportValue(bucket.bucketArn) <--- consuming the logicalId
+       * bucket.overrideLogicalId('NewLogicalId') <--- updating logicalId
+       *
+       * You should most likely never need to use this method, and if
+       * you are implementing a feature that requires this, make sure
+       * you actually require it.
+       *
+       * @internal
+       */
+      _lockLogicalId() {
+        this._logicalIdLocked = true;
+      }
+      /**
+       * @returns the stack trace of the point where this Resource was created from, sourced
+       *      from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
+       *      node +internal+ entries filtered.
+       */
+      get creationStack() {
+        const trace = import_constructs23.Node.of(this).metadata.find((md) => md.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK)?.data;
+        return trace ?? [];
+      }
+      /**
+       * Called during synthesize to render the logical ID of this element. If
+       * `overrideLogicalId` was it will be used, otherwise, we will allocate the
+       * logical ID through the stack.
+       *
+       * @internal
+       */
+      _synthesizeLogicalId() {
+        if (this._logicalIdOverride) {
+          return this._logicalIdOverride;
+        } else {
+          return this.stack.getLogicalId(this);
+        }
+      }
+    };
+    CfnRefElement = class extends CfnElement {
+      /**
+       * Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
+       *
+       * If, by any chance, the intrinsic reference of a resource is not a string, you could
+       * coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
+       */
+      get ref() {
+        return Token.asString(CfnReference.for(this, "Ref"));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource.ts
+function splitOnPeriods(x) {
+  const ret = [""];
+  for (let i = 0; i < x.length; i++) {
+    if (x[i] === "\\" && i + 1 < x.length) {
+      ret[0] += x[i + 1];
+      i++;
+    } else if (x[i] === ".") {
+      ret.unshift("");
+    } else {
+      ret[0] += x[i];
+    }
+  }
+  ret.reverse();
+  return ret;
+}
+function traceProperty(node, propertyName) {
+  if (debugModeEnabled()) {
+    node.addMetadata(cxschema.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT, {
+      propertyName,
+      stackTrace: captureStackTrace(traceProperty)
+    });
+  }
+}
+var cxschema, CfnResource;
+var init_cfn_resource = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource.ts"() {
+    "use strict";
+    cxschema = __toESM(require_lib2());
+    init_annotations();
+    init_cfn_element();
+    init_cfn_resource_policy();
+    init_deps();
+    init_cfn_reference();
+    init_removal_policy();
+    init_debug();
+    init_tag_manager();
+    init_util();
+    init_feature_flags();
+    init_cx_api();
+    init_errors();
+    init_deep_merge();
+    init_literal_string();
+    init_stack_trace();
+    init_stack();
+    init_core_construct_finders();
+    CfnResource = class _CfnResource extends CfnRefElement {
+      /**
+       * Check whether the given object is a CfnResource
+       */
+      static isCfnResource(x) {
+        return isCfnResource(x);
+      }
+      // MAINTAINERS NOTE: this class serves as the base class for the generated L1
+      // ("CFN") resources (such as `s3.CfnBucket`). These resources will have a
+      // property for each CloudFormation property of the resource. This means that
+      // if at some point in the future a property is introduced with a name similar
+      // to one of the properties here, it will be "masked" by the derived class. To
+      // that end, we prefix all properties in this class with `cfnXxx` with the
+      // hope to avoid those conflicts in the future.
+      /**
+       * Options for this resource, such as condition, update policy etc.
+       */
+      cfnOptions = {};
+      /**
+       * AWS resource type.
+       */
+      cfnResourceType;
+      /**
+       * AWS CloudFormation resource properties.
+       *
+       * This object is returned via cfnProperties
+       * @internal
+       */
+      _cfnProperties;
+      /**
+       * An object to be merged on top of the entire resource definition.
+       */
+      rawOverrides = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      /**
+       * Logical IDs of dependencies.
+       *
+       * Is filled during prepare().
+       */
+      dependsOn;
+      _crossStackReferenceStrength;
+      cfnPropertyNames = {};
+      /**
+       * Creates a resource construct.
+       * @param cfnResourceType The CloudFormation type of this resource (e.g. AWS::DynamoDB::Table)
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (!props.type) {
+          throw new ValidationError(lit`IsRequiredPropertyRequired`, "The `type` property is required", this);
+        }
+        this.cfnResourceType = props.type;
+        this._cfnProperties = props.properties || {};
+        if (this.node.tryGetContext(PATH_METADATA_ENABLE_CONTEXT)) {
+          this.addMetadata(import_cloud_assembly_api.PATH_METADATA_KEY, this.node.path);
+        }
+      }
+      get env() {
+        return {
+          account: this.stack.account,
+          region: this.stack.region
+        };
+      }
+      /**
+       * Sets the deletion policy of the resource based on the removal policy specified.
+       *
+       * The Removal Policy controls what happens to this resource when it stops
+       * being managed by CloudFormation, either because you've removed it from the
+       * CDK application or because you've made a change that requires the resource
+       * to be replaced.
+       *
+       * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
+       * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
+       * cases, a snapshot can be taken of the resource prior to deletion
+       * (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
+       * can be found in the following link:
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
+       */
+      applyRemovalPolicy(policy, options = {}) {
+        policy = policy || options.default || "retain" /* RETAIN */;
+        let deletionPolicy;
+        let updateReplacePolicy;
+        switch (policy) {
+          case "destroy" /* DESTROY */:
+            deletionPolicy = "Delete" /* DELETE */;
+            updateReplacePolicy = "Delete" /* DELETE */;
+            break;
+          case "retain" /* RETAIN */:
+            deletionPolicy = "Retain" /* RETAIN */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "retain-on-update-or-delete" /* RETAIN_ON_UPDATE_OR_DELETE */:
+            deletionPolicy = "RetainExceptOnCreate" /* RETAIN_EXCEPT_ON_CREATE */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "snapshot" /* SNAPSHOT */:
+            const snapshottableResourceTypes = [
+              "AWS::DocDB::DBCluster",
+              "AWS::EC2::Volume",
+              "AWS::ElastiCache::CacheCluster",
+              "AWS::ElastiCache::ReplicationGroup",
+              "AWS::Neptune::DBCluster",
+              "AWS::RDS::DBCluster",
+              "AWS::RDS::DBInstance",
+              "AWS::Redshift::Cluster"
+            ];
+            const problematicSnapshotPolicy = !snapshottableResourceTypes.includes(this.cfnResourceType);
+            if (problematicSnapshotPolicy) {
+              if (FeatureFlags.of(this).isEnabled(VALIDATE_SNAPSHOT_REMOVAL_POLICY)) {
+                throw new ValidationError(lit`SnapshotRemovalNotSupported`, `${this.cfnResourceType} does not support snapshot removal policy`, this);
+              } else {
+                Annotations.of(this).addWarningV2(`@aws-cdk/core:${this.cfnResourceType}SnapshotRemovalPolicyIgnored`, `${this.cfnResourceType} does not support snapshot removal policy. This policy will be ignored.`);
+              }
+            }
+            deletionPolicy = "Snapshot" /* SNAPSHOT */;
+            updateReplacePolicy = "Snapshot" /* SNAPSHOT */;
+            break;
+          default:
+            throw new ValidationError(lit`InvalidRemovalPolicy`, `Invalid removal policy: ${policy}`, this);
+        }
+        this.cfnOptions.deletionPolicy = deletionPolicy;
+        if (options.applyToUpdateReplacePolicy !== false) {
+          this.cfnOptions.updateReplacePolicy = updateReplacePolicy;
+        }
+      }
+      /**
+       * Sets the cross-stack reference strength for this resource.
+       *
+       * When set, any cross-stack reference to this resource will use the specified
+       * strength instead of the global default from the consuming stack's context.
+       *
+       * @param strength - The reference strength to use for this resource.
+       */
+      applyCrossStackReferenceStrength(strength) {
+        this._crossStackReferenceStrength = strength;
+      }
+      /**
+       * @internal
+       */
+      get _crossStackReferenceStrengthOverride() {
+        return this._crossStackReferenceStrength;
+      }
+      /**
+       * Returns a token for an runtime attribute of this resource.
+       * Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
+       * in case there is no generated attribute.
+       * @param attributeName The name of the attribute.
+       */
+      getAtt(attributeName, typeHint) {
+        return CfnReference.for(this, attributeName, void 0, typeHint);
+      }
+      /**
+       * Adds an override to the synthesized CloudFormation resource. To add a
+       * property override, either use `addPropertyOverride` or prefix `path` with
+       * "Properties." (i.e. `Properties.TopicName`).
+       *
+       * If the override is nested, separate each nested level using a dot (.) in the path parameter.
+       * If there is an array as part of the nesting, specify the index in the path.
+       *
+       * To include a literal `.` in the property name, prefix with a `\`. In most
+       * programming languages you will need to write this as `"\\."` because the
+       * `\` itself will need to be escaped.
+       *
+       * For example,
+       * ```typescript
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
+       * ```
+       * would add the overrides
+       * ```json
+       * "Properties": {
+       *   "GlobalSecondaryIndexes": [
+       *     {
+       *       "Projection": {
+       *         "NonKeyAttributes": [ "myattribute" ]
+       *         ...
+       *       }
+       *       ...
+       *     },
+       *     {
+       *       "ProjectionType": "INCLUDE"
+       *       ...
+       *     },
+       *   ]
+       *   ...
+       * }
+       * ```
+       *
+       * The `value` argument to `addOverride` will not be processed or translated
+       * in any way. Pass raw JSON values in here with the correct capitalization
+       * for CloudFormation. If you pass CDK classes or structs, they will be
+       * rendered with lowercased key names, and CloudFormation will reject the
+       * template.
+       *
+       * @param path - The path of the property, you can use dot notation to
+       *        override values in complex types. Any intermediate keys
+       *        will be created as needed.
+       * @param value - The value. Could be primitive or complex.
+       */
+      addOverride(path23, value) {
+        const parts = splitOnPeriods(path23);
+        let curr = this.rawOverrides;
+        while (parts.length > 1) {
+          const key = parts.shift();
+          const isObject = curr[key] != null && typeof curr[key] === "object" && !Array.isArray(curr[key]);
+          if (!isObject) {
+            curr[key] = /* @__PURE__ */ Object.create(null);
+          }
+          curr = curr[key];
+        }
+        const lastKey = parts.shift();
+        curr[lastKey] = value;
+      }
+      /**
+       * Syntactic sugar for `addOverride(path, undefined)`.
+       * @param path The path of the value to delete
+       */
+      addDeletionOverride(path23) {
+        this.addOverride(path23, void 0);
+      }
+      /**
+       * Adds an override to a resource property.
+       *
+       * Syntactic sugar for `addOverride("Properties.<...>", value)`.
+       *
+       * @param propertyPath The path of the property
+       * @param value The value
+       */
+      addPropertyOverride(propertyPath, value) {
+        const parts = splitOnPeriods(propertyPath);
+        traceProperty(this.node, parts[0]);
+        this.addOverride(`Properties.${propertyPath}`, value);
+      }
+      /**
+       * Adds an override that deletes the value of a property from the resource definition.
+       * @param propertyPath The path to the property.
+       */
+      addPropertyDeletionOverride(propertyPath) {
+        this.addPropertyOverride(propertyPath, void 0);
+      }
+      cfnPropertyName(cdkPropertyName) {
+        return this.cfnPropertyNames[cdkPropertyName];
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method has been renamed to `addResourceDependency`, which makes it
+       * more clear that this method operates at a different level from the
+       * construct-level `construct.node.addDependency()` mechanism.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependsOn(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method only adds dependencies between L1 resources. If you are
+       * looking for a generic construct-to-construct dependency mechanism that works
+       * for all constructs including L2s, use `construct.node.addDependency` instead.
+       */
+      addResourceDependency(target, reason) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addResourceDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This method has been renamed to `addResourceDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependency(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       */
+      removeResourceDependency(target) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "remove",
+          source: this,
+          target
+        });
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       *
+       * @deprecated Use `removeResourceDependency` instead
+       */
+      removeDependency(target) {
+        return this.removeResourceDependency(target);
+      }
+      /**
+       * Retrieves an array of resources and stacks this resource depends on.
+       *
+       * For resources depended on directly, returns the `CfnResource` object. For
+       * dependencies on other stacks, returns the `Stack` object. The order of the
+       * array is not guaranteed.
+       */
+      obtainDependencies() {
+        const ret = [];
+        ret.push(...this._directResourceDependencies());
+        let stack = Stack.of(this);
+        while (stack) {
+          ret.push(...stack._stackDependenciesCausedBy(this).filter((x) => STACK_TYPE.isMarked(x) || _CfnResource.isCfnResource(x)));
+          stack = stack.nestedStackParent;
+        }
+        return ret;
+      }
+      /**
+       * Replaces one dependency with another.
+       * @param target The dependency to replace
+       * @param newTarget The new dependency to add
+       */
+      replaceDependency(target, newTarget) {
+        if (this.obtainDependencies().includes(target)) {
+          this.removeResourceDependency(target);
+          this.addResourceDependency(newTarget);
+        } else {
+          throw new ValidationError(lit`CannotReplaceDependency`, `"${this.node.path}" does not depend on "${target.node.path}"`, this);
+        }
+      }
+      /**
+       * Add a value to the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      addMetadata(key, value) {
+        if (!this.cfnOptions.metadata) {
+          this.cfnOptions.metadata = {};
+        }
+        this.cfnOptions.metadata[key] = value;
+      }
+      /**
+       * Retrieve a value value from the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      getMetadata(key) {
+        return this.cfnOptions.metadata?.[key];
+      }
+      /**
+       * @returns a string representation of this resource
+       */
+      toString() {
+        return `${super.toString()} [${this.cfnResourceType}]`;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two resources.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addResourceDependency(target) {
+        if (!this.dependsOn) {
+          this.dependsOn = /* @__PURE__ */ new Set();
+        }
+        this.dependsOn.add(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Get a shallow copy of dependencies between this resource and other resources
+       * in the same stack.
+       *
+       * @internal
+       */
+      _directResourceDependencies() {
+        return Array.from(this.dependsOn?.values() ?? []);
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two resources.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeResourceDependency(target) {
+        this.dependsOn?.delete(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Emits CloudFormation for this resource.
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.shouldSynthesize()) {
+          return {};
+        }
+        try {
+          const ret = {
+            Resources: {
+              // Post-Resolve operation since otherwise deepMerge is going to mix values into
+              // the Token objects returned by ignoreEmpty.
+              [this.logicalId]: new PostResolveToken({
+                Type: this.cfnResourceType,
+                Properties: ignoreEmpty(this.cfnProperties),
+                DependsOn: ignoreEmpty(renderDependsOn(this.dependsOn)),
+                CreationPolicy: capitalizePropertyNames(this, renderCreationPolicy(this.cfnOptions.creationPolicy)),
+                UpdatePolicy: capitalizePropertyNames(this, this.cfnOptions.updatePolicy),
+                UpdateReplacePolicy: capitalizePropertyNames(this, this.cfnOptions.updateReplacePolicy),
+                DeletionPolicy: capitalizePropertyNames(this, this.cfnOptions.deletionPolicy),
+                Version: this.cfnOptions.version,
+                Description: this.cfnOptions.description,
+                Metadata: ignoreEmpty(this.cfnOptions.metadata),
+                Condition: this.cfnOptions.condition && this.cfnOptions.condition.logicalId
+              }, (resourceDef, context) => {
+                const renderedProps = this.renderProperties(resourceDef.Properties || {});
+                if (renderedProps) {
+                  const hasDefined = Object.values(renderedProps).find((v) => v !== void 0);
+                  resourceDef.Properties = hasDefined !== void 0 ? renderedProps : void 0;
+                }
+                const resolvedRawOverrides = context.resolve(this.rawOverrides, {
+                  // we need to preserve the empty elements here,
+                  // as that's how removing overrides are represented as
+                  removeEmpty: false
+                });
+                return deepMerge(resourceDef, resolvedRawOverrides);
+              })
+            }
+          };
+          return ret;
+        } catch (e) {
+          e.message = `While synthesizing ${this.node.path}: ${e.message}`;
+          const trace = this.creationStack;
+          if (trace) {
+            const creationStack = ["--- resource created at ---", ...trace].join("\n  at ");
+            const problemTrace = e.stack.slice(e.stack.indexOf(e.message) + e.message.length);
+            e.stack = `${e.message}
+  ${creationStack}
+  --- problem discovered at ---${problemTrace}`;
+          }
+          throw e;
+        }
+        function renderDependsOn(dependsOn) {
+          if (!dependsOn) {
+            return [];
+          }
+          return Array.from(dependsOn).filter((r) => r.shouldSynthesize()).sort((x, y) => x.node.path.localeCompare(y.node.path)).map((r) => r.logicalId);
+        }
+        function renderCreationPolicy(policy) {
+          if (!policy) {
+            return void 0;
+          }
+          const result = { ...policy };
+          if (policy.resourceSignal && policy.resourceSignal.timeout) {
+            result.resourceSignal = policy.resourceSignal;
+          }
+          return result;
+        }
+      }
+      get cfnProperties() {
+        const props = this._cfnProperties || {};
+        const tagMgr = TagManager.of(this);
+        if (tagMgr) {
+          const tagsProp = {};
+          tagsProp[tagMgr.tagPropertyName] = tagMgr.renderTags();
+          return deepMerge(props, tagsProp);
+        }
+        return props;
+      }
+      renderProperties(props) {
+        return props;
+      }
+      /**
+       * Deprecated
+       * @deprecated use `updatedProperties`
+       *
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperites() {
+        return this.updatedProperties;
+      }
+      /**
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperties() {
+        return this._cfnProperties;
+      }
+      validateProperties(_properties) {
+      }
+      /**
+       * Can be overridden by subclasses to determine if this resource will be rendered
+       * into the cloudformation template.
+       *
+       * @returns `true` if the resource should be included or `false` is the resource
+       * should be omitted.
+       */
+      shouldSynthesize() {
+        return true;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-manager.ts
+function TAG_FORMATTERS() {
+  return _tagFormattersCache ?? (_tagFormattersCache = {
+    ["AutoScalingGroupTag" /* AUTOSCALING_GROUP */]: new AsgFormatter(),
+    ["StandardTag" /* STANDARD */]: new StandardFormatter(),
+    ["StringToStringMap" /* MAP */]: new MapFormatter(),
+    ["KeyValue" /* KEY_VALUE */]: new KeyValueFormatter(),
+    ["NotTaggable" /* NOT_TAGGABLE */]: new NoFormat()
+  });
+}
+var TAG_MANAGER_SYM, StandardFormatter, AsgFormatter, MapFormatter, KeyValueFormatter, NoFormat, _tagFormattersCache, TagManager;
+var init_tag_manager = __esm({
+  "../../aws-cdk-lib/core/lib/tag-manager.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_lazy();
+    init_literal_string();
+    init_token();
+    TAG_MANAGER_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TagManager");
+    StandardFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value
+          });
+        }
+        return cfnTags;
+      }
+    };
+    AsgFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value, propagateAtLaunch} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0 || tag.propagateAtLaunch === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority,
+              applyToLaunchedInstances: !!tag.propagateAtLaunch
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value,
+            propagateAtLaunch: tag.applyToLaunchedInstances !== false
+          });
+        }
+        return cfnTags;
+      }
+    };
+    MapFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (Array.isArray(cfnPropertyTags) || typeof cfnPropertyTags !== "object") {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedMap`, `Invalid tag input expected map of {key: value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        for (const [key, value] of Object.entries(cfnPropertyTags)) {
+          tags.push({
+            key,
+            value: `${value}`,
+            priority
+          });
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(tags) {
+        const cfnTags = {};
+        for (const tag of tags) {
+          cfnTags[`${tag.key}`] = `${tag.value}`;
+        }
+        return cfnTags;
+      }
+    };
+    KeyValueFormatter = class {
+      parseTags(keyValueTags, priority) {
+        const tags = [];
+        for (const key in keyValueTags) {
+          if (keyValueTags.hasOwnProperty(key)) {
+            const value = keyValueTags[key];
+            tags.push({
+              key,
+              value,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(unformattedTags) {
+        const tags = [];
+        unformattedTags.forEach((tag) => {
+          tags.push({
+            Key: tag.key,
+            Value: tag.value
+          });
+        });
+        return tags;
+      }
+    };
+    NoFormat = class {
+      parseTags(_cfnPropertyTags) {
+        return { tags: [], dynamicTags: void 0 };
+      }
+      formatTags(_tags) {
+        return void 0;
+      }
+    };
+    TagManager = class _TagManager {
+      /**
+       * Check whether the given construct is Taggable
+       */
+      static isTaggable(construct) {
+        const tags = construct.tags;
+        return tags !== void 0 && tags !== null && typeof tags === "object" && tags[TAG_MANAGER_SYM];
+      }
+      /**
+       * Check whether the given construct is ITaggableV2
+       */
+      static isTaggableV2(construct) {
+        return construct.cdkTagManager !== void 0;
+      }
+      /**
+       * Return the TagManager associated with the given construct, if any
+       */
+      static of(construct) {
+        return _TagManager.isTaggableV2(construct) ? construct.cdkTagManager : _TagManager.isTaggable(construct) ? construct.tags : void 0;
+      }
+      /**
+       * The property name for tag values
+       *
+       * Normally this is `tags` but some resources choose a different name. Cognito
+       * UserPool uses UserPoolTags
+       */
+      tagPropertyName;
+      /**
+       * A lazy value that represents the rendered tags at synthesis time
+       *
+       * If you need to make a custom construct taggable, use the value of this
+       * property to pass to the `tags` property of the underlying construct.
+       */
+      renderedTags;
+      tags = /* @__PURE__ */ new Map();
+      dynamicTags;
+      priorities = /* @__PURE__ */ new Map();
+      tagFormatter;
+      resourceTypeName;
+      externalTagPriority = 50;
+      didHaveInitialTags;
+      constructor(tagType, resourceTypeName, initialTags, options = {}) {
+        this.resourceTypeName = resourceTypeName;
+        this.tagFormatter = TAG_FORMATTERS()[tagType];
+        this.tagPropertyName = options.tagPropertyName || "tags";
+        this.parseExternalTags(initialTags);
+        this.didHaveInitialTags = initialTags !== void 0;
+        this.renderedTags = Lazy.any({ produce: () => this.renderTags() });
+      }
+      /**
+       * Adds the specified tag to the array of tags
+       *
+       */
+      setTag(key, value, priority = 0, applyToLaunchedInstances = true) {
+        this._setTag({ key, value, priority, applyToLaunchedInstances });
+      }
+      /**
+       * Removes the specified tag from the array if it exists
+       *
+       * @param key The tag to remove
+       * @param priority The priority of the remove operation
+       */
+      removeTag(key, priority) {
+        if (priority >= (this.priorities.get(key) || 0)) {
+          this.tags.delete(key);
+          this.priorities.set(key, priority);
+        }
+      }
+      /**
+       * Renders tags into the proper format based on TagType
+       *
+       * This method will eagerly render the tags currently applied. In
+       * most cases, you should be using `tagManager.renderedTags` instead,
+       * which will return a `Lazy` value that will resolve to the correct
+       * tags at synthesis time.
+       */
+      renderTags(combineWithTags) {
+        if (combineWithTags !== void 0 && this.didHaveInitialTags) {
+          throw new UnscopedValidationError(lit`SpecifyExternalTagsEither`, "Specify external tags either during the creation of TagManager, or as a parameter to renderTags(), but not both");
+        }
+        this.parseExternalTags(combineWithTags);
+        const formattedTags = this.tagFormatter.formatTags(this.sortedTags);
+        if (isResolvableObject(this.dynamicTags)) {
+          if (this.tags.size > 0) {
+            throw new UnscopedValidationError(
+              lit`CombineTagsIntrinsicWithLiteral`,
+              "Cannot combine literal tags with a Tags property that is a single unresolved intrinsic (e.g. Fn::If). Remove the literal tags or resolve the intrinsic at the property level."
+            );
+          }
+          return this.dynamicTags;
+        }
+        if (Array.isArray(formattedTags) || Array.isArray(this.dynamicTags)) {
+          const ret = [...formattedTags ?? [], ...this.dynamicTags ?? []];
+          return ret.length > 0 ? ret : void 0;
+        } else {
+          const ret = { ...formattedTags ?? {}, ...this.dynamicTags ?? {} };
+          return Object.keys(ret).length > 0 ? ret : void 0;
+        }
+      }
+      /**
+       * Render the tags in a readable format
+       */
+      tagValues() {
+        const ret = {};
+        for (const tag of this.sortedTags) {
+          ret[tag.key] = tag.value;
+        }
+        return ret;
+      }
+      /**
+       * Determine if the aspect applies here
+       *
+       * Looks at the include and exclude resourceTypeName arrays to determine if
+       * the aspect applies here
+       */
+      applyTagAspectHere(include, exclude) {
+        if (exclude && exclude.length > 0 && exclude.indexOf(this.resourceTypeName) !== -1) {
+          return false;
+        }
+        if (include && include.length > 0 && include.indexOf(this.resourceTypeName) === -1) {
+          return false;
+        }
+        return true;
+      }
+      /**
+       * Returns true if there are any tags defined
+       */
+      hasTags() {
+        return this.tags.size > 0;
+      }
+      _setTag(...tags) {
+        for (const tag of tags) {
+          if (tag.priority >= (this.priorities.get(tag.key) || 0)) {
+            this.tags.set(tag.key, tag);
+            this.priorities.set(tag.key, tag.priority);
+          }
+        }
+      }
+      get sortedTags() {
+        return Array.from(this.tags.values()).sort((a, b) => a.key.localeCompare(b.key));
+      }
+      /**
+       * Parse external tags.
+       *
+       * Set the parseable ones into this tag manager. Save the rest (tokens, lazies) in `this.dynamicTags`.
+       */
+      parseExternalTags(initialTags) {
+        if (initialTags !== void 0) {
+          if (isResolvableObject(initialTags)) {
+            this.dynamicTags = initialTags;
+            return;
+          }
+          const parseTagsResult = this.tagFormatter.parseTags(initialTags, this.externalTagPriority);
+          this.dynamicTags = parseTagsResult.dynamicTags;
+          this._setTag(...parseTagsResult.tags);
+        }
+      }
+    };
+    TagManager.prototype[TAG_MANAGER_SYM] = true;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-aspect.ts
+var init_tag_aspect = __esm({
+  "../../aws-cdk-lib/core/lib/tag-aspect.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_errors();
+    init_feature_flags();
+    init_cx_api();
+    init_aspect_prio();
+    init_literal_string();
+    init_tag_manager();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/selectors.ts
+var ConstructSelector, AllConstructsSelector, CfnResourceSelector, ResourceTypeSelector, minimatch3, IdPatternSelector, OnlyItselfSelector;
+var init_selectors = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/selectors.ts"() {
+    "use strict";
+    init_cfn_resource();
+    ConstructSelector = class {
+      /**
+       * Selects all constructs in the tree.
+       */
+      static all() {
+        return new AllConstructsSelector();
+      }
+      /**
+       * Selects CfnResource constructs or the default CfnResource child.
+       */
+      static cfnResource() {
+        return new CfnResourceSelector();
+      }
+      /**
+       * Selects only the provided construct.
+       */
+      static onlyItself() {
+        return new OnlyItselfSelector();
+      }
+      /**
+       * Selects constructs of a specific type.
+       */
+      static resourcesOfType(...types2) {
+        return new ResourceTypeSelector(types2);
+      }
+      /**
+       * Selects constructs whose construct IDs match a pattern.
+       * Uses glob like matching.
+       */
+      static byId(pattern) {
+        return new IdPatternSelector(pattern, "id");
+      }
+      /**
+       * Selects constructs whose construct paths match a pattern.
+       * Uses glob like matching.
+       */
+      static byPath(pattern) {
+        return new IdPatternSelector(pattern, "path");
+      }
+    };
+    AllConstructsSelector = class {
+      select(scope) {
+        return scope.node.findAll();
+      }
+    };
+    CfnResourceSelector = class {
+      select(scope) {
+        if (CfnResource.isCfnResource(scope)) {
+          return [scope];
+        }
+        const defaultChild = scope.node.defaultChild;
+        if (CfnResource.isCfnResource(defaultChild)) {
+          return [defaultChild];
+        }
+        return [];
+      }
+    };
+    ResourceTypeSelector = class {
+      constructor(types2) {
+        this.types = types2;
+      }
+      types;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (CfnResource.isCfnResource(node) && this.types.includes(node.cfnResourceType)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    ({ minimatch: minimatch3 } = require_commonjs3());
+    IdPatternSelector = class {
+      constructor(pattern, field) {
+        this.pattern = pattern;
+        this.field = field;
+      }
+      pattern;
+      field;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (minimatch3(node.node[this.field], this.pattern)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    OnlyItselfSelector = class {
+      select(scope) {
+        return [scope];
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/applicator.ts
+var _selectedConstructs_dec, _init10, MixinApplicator;
+var init_applicator = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/applicator.ts"() {
+    "use strict";
+    init_errors();
+    init_mixin_metadata();
+    init_selectors();
+    init_helpers_internal();
+    init_literal_string();
+    _selectedConstructs_dec = [memoizedGetter];
+    MixinApplicator = class {
+      constructor(scope, selector = ConstructSelector.all()) {
+        __runInitializers(_init10, 5, this);
+        __publicField(this, "scope");
+        __publicField(this, "selector");
+        __publicField(this, "applications", []);
+        __publicField(this, "expectAll", false);
+        __publicField(this, "expectAny", false);
+        this.scope = scope;
+        this.selector = selector;
+      }
+      get selectedConstructs() {
+        return this.selector.select(this.scope);
+      }
+      /**
+       * Returns the successful mixin applications.
+       */
+      get report() {
+        return this.applications;
+      }
+      /**
+       * Applies a mixin to selected constructs.
+       */
+      apply(...mixins) {
+        const applications = [];
+        const allConstructs = Array.from(this.selectedConstructs);
+        for (const mixin of mixins) {
+          for (const construct of allConstructs) {
+            if (mixin.supports(construct)) {
+              applyMixin(construct, mixin);
+              applications.push({ construct, mixin });
+            } else if (this.expectAll) {
+              throw new ValidationError(lit`Mixin`, `Mixin ${mixin.constructor.name} could not be applied to ${construct.constructor.name} but was required to.`, this.scope);
+            }
+          }
+        }
+        if (this.expectAny && applications.length <= 0) {
+          throw new ValidationError(lit`LeastOneMixinApplicationRequired`, "At least one mixin application was required, but none of the provided mixins could be applied to any selected construct.", this.scope);
+        }
+        this.applications.push(...applications);
+        return this;
+      }
+      /**
+       * Requires all selected constructs to support the applied mixins.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAll()
+       *   .apply(new MyMixin());
+       */
+      requireAll() {
+        this.expectAll = true;
+        return this;
+      }
+      /**
+       * Requires at least one mixin to be successfully applied.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAny()
+       *   .apply(new MyMixin());
+       */
+      requireAny() {
+        this.expectAny = true;
+        return this;
+      }
+    };
+    _init10 = __decoratorStart(null);
+    __decorateElement(_init10, 2, "selectedConstructs", _selectedConstructs_dec, MixinApplicator);
+    __decoratorMetadata(_init10, MixinApplicator);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/mixins.ts
+var init_mixins = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/mixins.ts"() {
+    "use strict";
+    init_applicator();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/shims.ts
+var init_shims = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/shims.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/index.ts
+var init_mixins2 = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/index.ts"() {
+    "use strict";
+    init_mixins();
+    init_selectors();
+    init_applicator();
+    init_property_merge_strategy();
+    init_shims();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-hook.ts
+var init_cfn_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-hook.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts
+var init_cfn_codedeploy_blue_green_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts"() {
+    "use strict";
+    init_cfn_hook();
+    init_errors();
+    init_literal_string();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-include.ts
+var init_cfn_include = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-include.ts"() {
+    "use strict";
+    init_cfn_element();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-tag.ts
+var init_cfn_tag = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-tag.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-json.ts
+var import_constructs24;
+var init_cfn_json = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-json.ts"() {
+    "use strict";
+    import_constructs24 = __toESM(require_lib4());
+    init_custom_resource();
+    init_cfn_utils_provider();
+    init_consts();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/removal-policies.ts
+var init_removal_policies = __esm({
+  "../../aws-cdk-lib/core/lib/removal-policies.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_cfn_resource();
+    init_aspect_prio();
+    init_removal_policy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bitrate.ts
+var BitrateUnit;
+var init_bitrate = __esm({
+  "../../aws-cdk-lib/core/lib/bitrate.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    BitrateUnit = class _BitrateUnit {
+      constructor(label, inBps) {
+        this.label = label;
+        this.inBps = inBps;
+      }
+      label;
+      inBps;
+      static Bps = new _BitrateUnit("bps", 1);
+      static Kbps = new _BitrateUnit("kbps", 1e3);
+      static Mbps = new _BitrateUnit("mbps", 1e6);
+      static Gbps = new _BitrateUnit("gbps", 1e9);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/expiration.ts
+var init_expiration = __esm({
+  "../../aws-cdk-lib/core/lib/expiration.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/environment.ts
+var init_environment = __esm({
+  "../../aws-cdk-lib/core/lib/environment.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/runtime.ts
+var ValidationResult, ValidationResults, VALIDATION_SUCCESS, CfnSynthesisError;
+var init_runtime = __esm({
+  "../../aws-cdk-lib/core/lib/runtime.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    ValidationResult = class _ValidationResult {
+      constructor(errorMessage = "", results = new ValidationResults()) {
+        this.errorMessage = errorMessage;
+        this.results = results;
+      }
+      errorMessage;
+      results;
+      get isSuccess() {
+        return !this.errorMessage && this.results.isSuccess;
+      }
+      /**
+       * Turn a failed validation into an exception
+       */
+      assertSuccess() {
+        if (!this.isSuccess) {
+          let message = this.errorTree();
+          message = message.slice(0, 1).toUpperCase() + message.slice(1);
+          throw new CfnSynthesisError(message);
+        }
+      }
+      /**
+       * Return a string rendering of the tree of validation failures
+       */
+      errorTree() {
+        const childMessages = this.results.errorTreeList();
+        return this.errorMessage + (childMessages.length ? `
+  ${childMessages.replace(/\n/g, "\n  ")}` : "");
+      }
+      /**
+       * Wrap this result with an error message, if it concerns an error
+       */
+      prefix(message) {
+        if (this.isSuccess) {
+          return this;
+        }
+        return new _ValidationResult(`${message}: ${this.errorMessage}`, this.results);
+      }
+    };
+    ValidationResults = class {
+      constructor(results = []) {
+        this.results = results;
+      }
+      results;
+      collect(result) {
+        if (!result.isSuccess) {
+          this.results.push(result);
+        }
+      }
+      get isSuccess() {
+        return this.results.every((x) => x.isSuccess);
+      }
+      errorTreeList() {
+        return this.results.map((child) => child.errorTree()).join("\n");
+      }
+      /**
+       * Wrap up all validation results into a single tree node
+       *
+       * If there are failures in the collection, add a message, otherwise
+       * return a success.
+       */
+      wrap(message) {
+        if (this.isSuccess) {
+          return VALIDATION_SUCCESS;
+        }
+        return new ValidationResult(message, this);
+      }
+    };
+    VALIDATION_SUCCESS = new ValidationResult();
+    CfnSynthesisError = class extends Error {
+      type = "CfnSynthesisError";
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/secret-value.ts
+var SecretValue, SECRET_VALUE_SYM;
+var init_secret_value = __esm({
+  "../../aws-cdk-lib/core/lib/secret-value.ts"() {
+    "use strict";
+    init_cfn_dynamic_reference();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_cfn_reference();
+    init_intrinsic();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+    SecretValue = class _SecretValue extends Intrinsic {
+      /**
+       * Test whether an object is a SecretValue
+       */
+      static isSecretValue(x) {
+        return typeof x === "object" && x && SECRET_VALUE_SYM in x;
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The only reasonable use case for using this method is when you are testing.
+       *
+       * @deprecated Use `unsafePlainText()` instead.
+       */
+      static plainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The primary use case for using this method is when you are testing.
+       *
+       * The other use case where this is appropriate is when constructing a JSON secret.
+       * For example, a JSON secret might have multiple fields where only some are actual
+       * secret values.
+       *
+       * @example
+       * declare const secret: SecretValue;
+       * const jsonSecret = {
+       *   username: SecretValue.unsafePlainText('myUsername'),
+       *   password: secret,
+       * };
+       */
+      static unsafePlainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Creates a `SecretValue` with a value which is dynamically loaded from AWS Secrets Manager.
+       *
+       * If you rotate the value in the Secret, you must also change at least one property
+       * on the resource where you are using the secret, to force CloudFormation to re-read the secret.
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static secretsManager(secretId, options = {}) {
+        const dyref = new CfnDynamicReference("secretsmanager" /* SECRETS_MANAGER */, _SecretValue.cfnDynamicReferenceKey(secretId, options));
+        return this.cfnDynamicReference(dyref);
+      }
+      /**
+       * Returns a key which can be used within an AWS CloudFormation dynamic reference to dynamically load a
+       * secret from AWS Secrets Manager
+       *
+       * @see https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static cfnDynamicReferenceKey(secretId, options = {}) {
+        if (!secretId) {
+          throw new UnscopedValidationError(lit`SecretIdCannotBeEmpty`, "secretId cannot be empty");
+        }
+        if (!Token.isUnresolved(secretId) && !secretId.startsWith("arn:") && secretId.includes(":")) {
+          throw new UnscopedValidationError(lit`SecretIdContainsColon`, `secret id "${secretId}" is not an ARN but contains ":"`);
+        }
+        if (options.versionStage && options.versionId) {
+          throw new UnscopedValidationError(lit`VersionStageAndVersionIdBothProvided`, `versionStage: '${options.versionStage}' and versionId: '${options.versionId}' were both provided but only one is allowed`);
+        }
+        const parts = [
+          secretId,
+          "SecretString",
+          options.jsonField || "",
+          options.versionStage || "",
+          options.versionId || ""
+        ];
+        return parts.join(":");
+      }
+      /**
+       * Use a secret value stored from a Systems Manager (SSM) parameter.
+       *
+       * This secret source in only supported in a limited set of resources and
+       * properties. [Click here for the list of supported
+       * properties](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html#template-parameters-dynamic-patterns-resources).
+       *
+       * @param parameterName The name of the parameter in the Systems Manager
+       * Parameter Store. The parameter name is case-sensitive.
+       *
+       * @param version An integer that specifies the version of the parameter to
+       * use. If you don't specify the exact version, AWS CloudFormation uses the
+       * latest version of the parameter.
+       */
+      static ssmSecure(parameterName, version3) {
+        return this.cfnDynamicReference(
+          new CfnDynamicReference(
+            "ssm-secure" /* SSM_SECURE */,
+            version3 ? `${parameterName}:${version3}` : parameterName
+          )
+        );
+      }
+      /**
+       * Obtain the secret value through a CloudFormation dynamic reference.
+       *
+       * If possible, use `SecretValue.ssmSecure` or `SecretValue.secretsManager` directly.
+       *
+       * @param ref The dynamic reference to use.
+       */
+      static cfnDynamicReference(ref) {
+        return new _SecretValue(ref);
+      }
+      /**
+       * Obtain the secret value through a CloudFormation parameter.
+       *
+       * Generally, this is not a recommended approach. AWS Secrets Manager is the
+       * recommended way to reference secrets.
+       *
+       * @param param The CloudFormation parameter to use.
+       */
+      static cfnParameter(param) {
+        if (!param.noEcho) {
+          throw new UnscopedValidationError(lit`CloudFormationParameterMustHaveNoEcho`, 'CloudFormation parameter must be configured with "NoEcho"');
+        }
+        return new _SecretValue(param.value);
+      }
+      /**
+       * Use a resource's output as secret value
+       */
+      static resourceAttribute(attr) {
+        const resolved = Tokenization.reverseCompleteString(attr);
+        if (!resolved || !CfnReference.isCfnReference(resolved) || !CfnResource.isCfnResource(resolved.target)) {
+          throw new UnscopedValidationError(lit`SecretValueMustUseResourceAttribute`, "SecretValue.resourceAttribute() must be used with a resource attribute");
+        }
+        return new _SecretValue(attr);
+      }
+      rawValue;
+      /**
+       * Construct a SecretValue (do not use!)
+       *
+       * Do not use the constructor directly: use one of the factory functions on the class
+       * instead.
+       */
+      constructor(protectedValue, options) {
+        super(protectedValue, options);
+        this.rawValue = protectedValue;
+      }
+      /**
+       * Disable usage protection on this secret
+       *
+       * Call this to indicate that you want to use the secret value held by this
+       * object in an unchecked way. If you don't call this method, using the secret
+       * value directly in a string context or as a property value somewhere will
+       * produce an error.
+       *
+       * This method has 'unsafe' in the name on purpose! Make sure that the
+       * construct property you are using the returned value in is does not end up
+       * in a place in your AWS infrastructure where it could be read by anyone
+       * unexpected.
+       *
+       * When in doubt, don't call this method and only pass the object to constructs that
+       * accept `SecretValue` parameters.
+       */
+      unsafeUnwrap() {
+        return Token.asString(this.rawValue);
+      }
+      /**
+       * Resolve the secret
+       *
+       * If the feature flag is not set, resolve as normal. Otherwise, throw a descriptive
+       * error that the usage guard is missing.
+       */
+      resolve(context) {
+        if (FeatureFlags.of(context.scope).isEnabled(CHECK_SECRET_USAGE)) {
+          throw new UnscopedValidationError(
+            lit`SecretValueExposureRisk`,
+            `Synthing a secret value to ${context.documentPath.join("/")}. Using a SecretValue here risks exposing your secret. Only pass SecretValues to constructs that accept a SecretValue property, or call AWS Secrets Manager directly in your runtime code. Call 'secretValue.unsafeUnwrap()' if you understand and accept the risks.`
+          );
+        }
+        return super.resolve(context);
+      }
+    };
+    SECRET_VALUE_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SecretValue");
+    Object.defineProperty(SecretValue.prototype, SECRET_VALUE_SYM, {
+      value: true,
+      configurable: false,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/physical-name.ts
+var PhysicalName;
+var init_physical_name = __esm({
+  "../../aws-cdk-lib/core/lib/physical-name.ts"() {
+    "use strict";
+    init_physical_name_generator();
+    init_token();
+    PhysicalName = class {
+      /**
+       * Use this to automatically generate a physical name for an AWS resource only
+       * if the resource is referenced across environments (account/region).
+       * Otherwise, the name will be allocated during deployment by CloudFormation.
+       *
+       * If you are certain that a resource will be referenced across environments,
+       * you may also specify an explicit physical name for it. This option is
+       * mostly designed for reusable constructs which may or may not be referenced
+       * across environments.
+       */
+      static GENERATE_IF_NEEDED = Token.asString(new GeneratedWhenNeededMarker());
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cloudformation.generated.ts
+var init_cloudformation_generated = __esm({
+  "../../aws-cdk-lib/core/lib/cloudformation.generated.ts"() {
+    "use strict";
+    init_lib3();
+    init_helpers_internal();
+    init_errors();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/nested-stack.ts
+var import_constructs25;
+var init_nested_stack = __esm({
+  "../../aws-cdk-lib/core/lib/nested-stack.ts"() {
+    "use strict";
+    import_constructs25 = __toESM(require_lib4());
+    init_assets();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cloudformation_generated();
+    init_errors();
+    init_box();
+    init_lazy();
+    init_names();
+    init_core_construct_finders();
+    init_removal_policy();
+    init_stack();
+    init_stack_synthesizers();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-capabilities.ts
+var init_cfn_capabilities = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-capabilities.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/eventbridge.ts
+var init_eventbridge = __esm({
+  "../../aws-cdk-lib/core/lib/eventbridge.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/grants.ts
+var init_grants = __esm({
+  "../../aws-cdk-lib/core/lib/grants.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/time-zone.ts
+var TimeZone;
+var init_time_zone = __esm({
+  "../../aws-cdk-lib/core/lib/time-zone.ts"() {
+    "use strict";
+    TimeZone = class _TimeZone {
+      /**
+       *
+       * @param timezoneName The name of the timezone
+       */
+      constructor(timezoneName) {
+        this.timezoneName = timezoneName;
+      }
+      timezoneName;
+      /** IANA Time Zone database entry for Africa/Abidjan.  UTC offset +00:00/+00:00. */
+      static AFRICA_ABIDJAN = new _TimeZone("Africa/Abidjan");
+      /** IANA Time Zone database entry for Africa/Algiers.  UTC offset +01:00/+01:00. */
+      static AFRICA_ALGIERS = new _TimeZone("Africa/Algiers");
+      /** IANA Time Zone database entry for Africa/Bissau.  UTC offset +00:00/+00:00. */
+      static AFRICA_BISSAU = new _TimeZone("Africa/Bissau");
+      /** IANA Time Zone database entry for Africa/Cairo.  UTC offset +02:00/+02:00. */
+      static AFRICA_CAIRO = new _TimeZone("Africa/Cairo");
+      /** IANA Time Zone database entry for Africa/Casablanca.  UTC offset +01:00/+00:00. */
+      static AFRICA_CASABLANCA = new _TimeZone("Africa/Casablanca");
+      /** IANA Time Zone database entry for Africa/Ceuta.  UTC offset +01:00/+02:00. */
+      static AFRICA_CEUTA = new _TimeZone("Africa/Ceuta");
+      /** IANA Time Zone database entry for Africa/El_Aaiun.  UTC offset +01:00/+00:00. */
+      static AFRICA_EL_AAIUN = new _TimeZone("Africa/El_Aaiun");
+      /** IANA Time Zone database entry for Africa/Johannesburg.  UTC offset +02:00/+02:00. */
+      static AFRICA_JOHANNESBURG = new _TimeZone("Africa/Johannesburg");
+      /** IANA Time Zone database entry for Africa/Juba.  UTC offset +02:00/+02:00. */
+      static AFRICA_JUBA = new _TimeZone("Africa/Juba");
+      /** IANA Time Zone database entry for Africa/Khartoum.  UTC offset +02:00/+02:00. */
+      static AFRICA_KHARTOUM = new _TimeZone("Africa/Khartoum");
+      /** IANA Time Zone database entry for Africa/Lagos.  UTC offset +01:00/+01:00. */
+      static AFRICA_LAGOS = new _TimeZone("Africa/Lagos");
+      /** IANA Time Zone database entry for Africa/Maputo.  UTC offset +02:00/+02:00. */
+      static AFRICA_MAPUTO = new _TimeZone("Africa/Maputo");
+      /** IANA Time Zone database entry for Africa/Monrovia.  UTC offset +00:00/+00:00. */
+      static AFRICA_MONROVIA = new _TimeZone("Africa/Monrovia");
+      /** IANA Time Zone database entry for Africa/Nairobi.  UTC offset +03:00/+03:00. */
+      static AFRICA_NAIROBI = new _TimeZone("Africa/Nairobi");
+      /** IANA Time Zone database entry for Africa/Ndjamena.  UTC offset +01:00/+01:00. */
+      static AFRICA_NDJAMENA = new _TimeZone("Africa/Ndjamena");
+      /** IANA Time Zone database entry for Africa/Sao_Tome.  UTC offset +00:00/+00:00. */
+      static AFRICA_SAO_TOME = new _TimeZone("Africa/Sao_Tome");
+      /** IANA Time Zone database entry for Africa/Tripoli.  UTC offset +02:00/+02:00. */
+      static AFRICA_TRIPOLI = new _TimeZone("Africa/Tripoli");
+      /** IANA Time Zone database entry for Africa/Tunis.  UTC offset +01:00/+01:00. */
+      static AFRICA_TUNIS = new _TimeZone("Africa/Tunis");
+      /** IANA Time Zone database entry for Africa/Windhoek.  UTC offset +02:00/+02:00. */
+      static AFRICA_WINDHOEK = new _TimeZone("Africa/Windhoek");
+      /** IANA Time Zone database entry for America/Adak.  UTC offset −10:00/−09:00. */
+      static AMERICA_ADAK = new _TimeZone("America/Adak");
+      /** IANA Time Zone database entry for America/Anchorage.  UTC offset −09:00/−08:00. */
+      static AMERICA_ANCHORAGE = new _TimeZone("America/Anchorage");
+      /** IANA Time Zone database entry for America/Araguaina.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARAGUAINA = new _TimeZone("America/Araguaina");
+      /** IANA Time Zone database entry for America/Argentina/Buenos_Aires.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_BUENOS_AIRES = new _TimeZone("America/Argentina/Buenos_Aires");
+      /** IANA Time Zone database entry for America/Argentina/Catamarca.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CATAMARCA = new _TimeZone("America/Argentina/Catamarca");
+      /** IANA Time Zone database entry for America/Argentina/Cordoba.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CORDOBA = new _TimeZone("America/Argentina/Cordoba");
+      /** IANA Time Zone database entry for America/Argentina/Jujuy.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_JUJUY = new _TimeZone("America/Argentina/Jujuy");
+      /** IANA Time Zone database entry for America/Argentina/La_Rioja.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_LA_RIOJA = new _TimeZone("America/Argentina/La_Rioja");
+      /** IANA Time Zone database entry for America/Argentina/Mendoza.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_MENDOZA = new _TimeZone("America/Argentina/Mendoza");
+      /** IANA Time Zone database entry for America/Argentina/Rio_Gallegos.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_RIO_GALLEGOS = new _TimeZone("America/Argentina/Rio_Gallegos");
+      /** IANA Time Zone database entry for America/Argentina/Salta.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SALTA = new _TimeZone("America/Argentina/Salta");
+      /** IANA Time Zone database entry for America/Argentina/San_Juan.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_JUAN = new _TimeZone("America/Argentina/San_Juan");
+      /** IANA Time Zone database entry for America/Argentina/San_Luis.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_LUIS = new _TimeZone("America/Argentina/San_Luis");
+      /** IANA Time Zone database entry for America/Argentina/Tucuman.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_TUCUMAN = new _TimeZone("America/Argentina/Tucuman");
+      /** IANA Time Zone database entry for America/Argentina/Ushuaia.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_USHUAIA = new _TimeZone("America/Argentina/Ushuaia");
+      /** IANA Time Zone database entry for America/Asuncion.  UTC offset −04:00/−03:00. */
+      static AMERICA_ASUNCION = new _TimeZone("America/Asuncion");
+      /** IANA Time Zone database entry for America/Bahia.  UTC offset −03:00/−03:00. */
+      static AMERICA_BAHIA = new _TimeZone("America/Bahia");
+      /** IANA Time Zone database entry for America/Bahia_Banderas.  UTC offset −06:00/−06:00. */
+      static AMERICA_BAHIA_BANDERAS = new _TimeZone("America/Bahia_Banderas");
+      /** IANA Time Zone database entry for America/Barbados.  UTC offset −04:00/−04:00. */
+      static AMERICA_BARBADOS = new _TimeZone("America/Barbados");
+      /** IANA Time Zone database entry for America/Belem.  UTC offset −03:00/−03:00. */
+      static AMERICA_BELEM = new _TimeZone("America/Belem");
+      /** IANA Time Zone database entry for America/Belize.  UTC offset −06:00/−06:00. */
+      static AMERICA_BELIZE = new _TimeZone("America/Belize");
+      /** IANA Time Zone database entry for America/Boa_Vista.  UTC offset −04:00/−04:00. */
+      static AMERICA_BOA_VISTA = new _TimeZone("America/Boa_Vista");
+      /** IANA Time Zone database entry for America/Bogota.  UTC offset −05:00/−05:00. */
+      static AMERICA_BOGOTA = new _TimeZone("America/Bogota");
+      /** IANA Time Zone database entry for America/Boise.  UTC offset −07:00/−06:00. */
+      static AMERICA_BOISE = new _TimeZone("America/Boise");
+      /** IANA Time Zone database entry for America/Cambridge_Bay.  UTC offset −07:00/−06:00. */
+      static AMERICA_CAMBRIDGE_BAY = new _TimeZone("America/Cambridge_Bay");
+      /** IANA Time Zone database entry for America/Campo_Grande.  UTC offset −04:00/−04:00. */
+      static AMERICA_CAMPO_GRANDE = new _TimeZone("America/Campo_Grande");
+      /** IANA Time Zone database entry for America/Cancun.  UTC offset −05:00/−05:00. */
+      static AMERICA_CANCUN = new _TimeZone("America/Cancun");
+      /** IANA Time Zone database entry for America/Caracas.  UTC offset −04:00/−04:00. */
+      static AMERICA_CARACAS = new _TimeZone("America/Caracas");
+      /** IANA Time Zone database entry for America/Cayenne.  UTC offset −03:00/−03:00. */
+      static AMERICA_CAYENNE = new _TimeZone("America/Cayenne");
+      /** IANA Time Zone database entry for America/Chicago.  UTC offset −06:00/−05:00. */
+      static AMERICA_CHICAGO = new _TimeZone("America/Chicago");
+      /** IANA Time Zone database entry for America/Chihuahua.  UTC offset −06:00/−06:00. */
+      static AMERICA_CHIHUAHUA = new _TimeZone("America/Chihuahua");
+      /** IANA Time Zone database entry for America/Ciudad_Juarez.  UTC offset −07:00/−06:00. */
+      static AMERICA_CIUDAD_JUAREZ = new _TimeZone("America/Ciudad_Juarez");
+      /** IANA Time Zone database entry for America/Costa_Rica.  UTC offset −06:00/−06:00. */
+      static AMERICA_COSTA_RICA = new _TimeZone("America/Costa_Rica");
+      /** IANA Time Zone database entry for America/Cuiaba.  UTC offset −04:00/−04:00. */
+      static AMERICA_CUIABA = new _TimeZone("America/Cuiaba");
+      /** IANA Time Zone database entry for America/Danmarkshavn.  UTC offset +00:00/+00:00. */
+      static AMERICA_DANMARKSHAVN = new _TimeZone("America/Danmarkshavn");
+      /** IANA Time Zone database entry for America/Dawson.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON = new _TimeZone("America/Dawson");
+      /** IANA Time Zone database entry for America/Dawson_Creek.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON_CREEK = new _TimeZone("America/Dawson_Creek");
+      /** IANA Time Zone database entry for America/Denver.  UTC offset −07:00/−06:00. */
+      static AMERICA_DENVER = new _TimeZone("America/Denver");
+      /** IANA Time Zone database entry for America/Detroit.  UTC offset −05:00/−04:00. */
+      static AMERICA_DETROIT = new _TimeZone("America/Detroit");
+      /** IANA Time Zone database entry for America/Edmonton.  UTC offset −07:00/−06:00. */
+      static AMERICA_EDMONTON = new _TimeZone("America/Edmonton");
+      /** IANA Time Zone database entry for America/Eirunepe.  UTC offset −05:00/−05:00. */
+      static AMERICA_EIRUNEPE = new _TimeZone("America/Eirunepe");
+      /** IANA Time Zone database entry for America/El_Salvador.  UTC offset −06:00/−06:00. */
+      static AMERICA_EL_SALVADOR = new _TimeZone("America/El_Salvador");
+      /** IANA Time Zone database entry for America/Fort_Nelson.  UTC offset −07:00/−07:00. */
+      static AMERICA_FORT_NELSON = new _TimeZone("America/Fort_Nelson");
+      /** IANA Time Zone database entry for America/Fortaleza.  UTC offset −03:00/−03:00. */
+      static AMERICA_FORTALEZA = new _TimeZone("America/Fortaleza");
+      /** IANA Time Zone database entry for America/Glace_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GLACE_BAY = new _TimeZone("America/Glace_Bay");
+      /** IANA Time Zone database entry for America/Goose_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GOOSE_BAY = new _TimeZone("America/Goose_Bay");
+      /** IANA Time Zone database entry for America/Grand_Turk.  UTC offset −05:00/−04:00. */
+      static AMERICA_GRAND_TURK = new _TimeZone("America/Grand_Turk");
+      /** IANA Time Zone database entry for America/Guatemala.  UTC offset −06:00/−06:00. */
+      static AMERICA_GUATEMALA = new _TimeZone("America/Guatemala");
+      /** IANA Time Zone database entry for America/Guayaquil.  UTC offset −05:00/−05:00. */
+      static AMERICA_GUAYAQUIL = new _TimeZone("America/Guayaquil");
+      /** IANA Time Zone database entry for America/Guyana.  UTC offset −04:00/−04:00. */
+      static AMERICA_GUYANA = new _TimeZone("America/Guyana");
+      /** IANA Time Zone database entry for America/Halifax.  UTC offset −04:00/−03:00. */
+      static AMERICA_HALIFAX = new _TimeZone("America/Halifax");
+      /** IANA Time Zone database entry for America/Havana.  UTC offset −05:00/−04:00. */
+      static AMERICA_HAVANA = new _TimeZone("America/Havana");
+      /** IANA Time Zone database entry for America/Hermosillo.  UTC offset −07:00/−07:00. */
+      static AMERICA_HERMOSILLO = new _TimeZone("America/Hermosillo");
+      /** IANA Time Zone database entry for America/Indiana/Indianapolis.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_INDIANAPOLIS = new _TimeZone("America/Indiana/Indianapolis");
+      /** IANA Time Zone database entry for America/Indiana/Knox.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_KNOX = new _TimeZone("America/Indiana/Knox");
+      /** IANA Time Zone database entry for America/Indiana/Marengo.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_MARENGO = new _TimeZone("America/Indiana/Marengo");
+      /** IANA Time Zone database entry for America/Indiana/Petersburg.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_PETERSBURG = new _TimeZone("America/Indiana/Petersburg");
+      /** IANA Time Zone database entry for America/Indiana/Tell_City.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_TELL_CITY = new _TimeZone("America/Indiana/Tell_City");
+      /** IANA Time Zone database entry for America/Indiana/Vevay.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VEVAY = new _TimeZone("America/Indiana/Vevay");
+      /** IANA Time Zone database entry for America/Indiana/Vincennes.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VINCENNES = new _TimeZone("America/Indiana/Vincennes");
+      /** IANA Time Zone database entry for America/Indiana/Winamac.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_WINAMAC = new _TimeZone("America/Indiana/Winamac");
+      /** IANA Time Zone database entry for America/Inuvik.  UTC offset −07:00/−06:00. */
+      static AMERICA_INUVIK = new _TimeZone("America/Inuvik");
+      /** IANA Time Zone database entry for America/Iqaluit.  UTC offset −05:00/−04:00. */
+      static AMERICA_IQALUIT = new _TimeZone("America/Iqaluit");
+      /** IANA Time Zone database entry for America/Jamaica.  UTC offset −05:00/−05:00. */
+      static AMERICA_JAMAICA = new _TimeZone("America/Jamaica");
+      /** IANA Time Zone database entry for America/Juneau.  UTC offset −09:00/−08:00. */
+      static AMERICA_JUNEAU = new _TimeZone("America/Juneau");
+      /** IANA Time Zone database entry for America/Kentucky/Louisville.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_LOUISVILLE = new _TimeZone("America/Kentucky/Louisville");
+      /** IANA Time Zone database entry for America/Kentucky/Monticello.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_MONTICELLO = new _TimeZone("America/Kentucky/Monticello");
+      /** IANA Time Zone database entry for America/La_Paz.  UTC offset −04:00/−04:00. */
+      static AMERICA_LA_PAZ = new _TimeZone("America/La_Paz");
+      /** IANA Time Zone database entry for America/Lima.  UTC offset −05:00/−05:00. */
+      static AMERICA_LIMA = new _TimeZone("America/Lima");
+      /** IANA Time Zone database entry for America/Los_Angeles.  UTC offset −08:00/−07:00. */
+      static AMERICA_LOS_ANGELES = new _TimeZone("America/Los_Angeles");
+      /** IANA Time Zone database entry for America/Maceio.  UTC offset −03:00/−03:00. */
+      static AMERICA_MACEIO = new _TimeZone("America/Maceio");
+      /** IANA Time Zone database entry for America/Managua.  UTC offset −06:00/−06:00. */
+      static AMERICA_MANAGUA = new _TimeZone("America/Managua");
+      /** IANA Time Zone database entry for America/Manaus.  UTC offset −04:00/−04:00. */
+      static AMERICA_MANAUS = new _TimeZone("America/Manaus");
+      /** IANA Time Zone database entry for America/Martinique.  UTC offset −04:00/−04:00. */
+      static AMERICA_MARTINIQUE = new _TimeZone("America/Martinique");
+      /** IANA Time Zone database entry for America/Matamoros.  UTC offset −06:00/−05:00. */
+      static AMERICA_MATAMOROS = new _TimeZone("America/Matamoros");
+      /** IANA Time Zone database entry for America/Mazatlan.  UTC offset −07:00/−07:00. */
+      static AMERICA_MAZATLAN = new _TimeZone("America/Mazatlan");
+      /** IANA Time Zone database entry for America/Menominee.  UTC offset −06:00/−05:00. */
+      static AMERICA_MENOMINEE = new _TimeZone("America/Menominee");
+      /** IANA Time Zone database entry for America/Merida.  UTC offset −06:00/−06:00. */
+      static AMERICA_MERIDA = new _TimeZone("America/Merida");
+      /** IANA Time Zone database entry for America/Metlakatla.  UTC offset −09:00/−08:00. */
+      static AMERICA_METLAKATLA = new _TimeZone("America/Metlakatla");
+      /** IANA Time Zone database entry for America/Mexico_City.  UTC offset −06:00/−06:00. */
+      static AMERICA_MEXICO_CITY = new _TimeZone("America/Mexico_City");
+      /** IANA Time Zone database entry for America/Miquelon.  UTC offset −03:00/−02:00. */
+      static AMERICA_MIQUELON = new _TimeZone("America/Miquelon");
+      /** IANA Time Zone database entry for America/Moncton.  UTC offset −04:00/−03:00. */
+      static AMERICA_MONCTON = new _TimeZone("America/Moncton");
+      /** IANA Time Zone database entry for America/Monterrey.  UTC offset −06:00/−06:00. */
+      static AMERICA_MONTERREY = new _TimeZone("America/Monterrey");
+      /** IANA Time Zone database entry for America/Montevideo.  UTC offset −03:00/−03:00. */
+      static AMERICA_MONTEVIDEO = new _TimeZone("America/Montevideo");
+      /** IANA Time Zone database entry for America/New_York.  UTC offset −05:00/−04:00. */
+      static AMERICA_NEW_YORK = new _TimeZone("America/New_York");
+      /** IANA Time Zone database entry for America/Nome.  UTC offset −09:00/−08:00. */
+      static AMERICA_NOME = new _TimeZone("America/Nome");
+      /** IANA Time Zone database entry for America/Noronha.  UTC offset −02:00/−02:00. */
+      static AMERICA_NORONHA = new _TimeZone("America/Noronha");
+      /** IANA Time Zone database entry for America/North_Dakota/Beulah.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_BEULAH = new _TimeZone("America/North_Dakota/Beulah");
+      /** IANA Time Zone database entry for America/North_Dakota/Center.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_CENTER = new _TimeZone("America/North_Dakota/Center");
+      /** IANA Time Zone database entry for America/North_Dakota/New_Salem.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_NEW_SALEM = new _TimeZone("America/North_Dakota/New_Salem");
+      /** IANA Time Zone database entry for America/Nuuk.  UTC offset −03:00/−03:00. */
+      static AMERICA_NUUK = new _TimeZone("America/Nuuk");
+      /** IANA Time Zone database entry for America/Ojinaga.  UTC offset −06:00/−05:00. */
+      static AMERICA_OJINAGA = new _TimeZone("America/Ojinaga");
+      /** IANA Time Zone database entry for America/Panama.  UTC offset −05:00/−05:00. */
+      static AMERICA_PANAMA = new _TimeZone("America/Panama");
+      /** IANA Time Zone database entry for America/Paramaribo.  UTC offset −03:00/−03:00. */
+      static AMERICA_PARAMARIBO = new _TimeZone("America/Paramaribo");
+      /** IANA Time Zone database entry for America/Phoenix.  UTC offset −07:00/−07:00. */
+      static AMERICA_PHOENIX = new _TimeZone("America/Phoenix");
+      /** IANA Time Zone database entry for America/Port-au-Prince.  UTC offset −05:00/−04:00. */
+      static AMERICA_PORT_MINUS_AU_MINUS_PRINCE = new _TimeZone("America/Port-au-Prince");
+      /** IANA Time Zone database entry for America/Porto_Velho.  UTC offset −04:00/−04:00. */
+      static AMERICA_PORTO_VELHO = new _TimeZone("America/Porto_Velho");
+      /** IANA Time Zone database entry for America/Puerto_Rico.  UTC offset −04:00/−04:00. */
+      static AMERICA_PUERTO_RICO = new _TimeZone("America/Puerto_Rico");
+      /** IANA Time Zone database entry for America/Punta_Arenas.  UTC offset −03:00/−03:00. */
+      static AMERICA_PUNTA_ARENAS = new _TimeZone("America/Punta_Arenas");
+      /** IANA Time Zone database entry for America/Rankin_Inlet.  UTC offset −06:00/−05:00. */
+      static AMERICA_RANKIN_INLET = new _TimeZone("America/Rankin_Inlet");
+      /** IANA Time Zone database entry for America/Recife.  UTC offset −03:00/−03:00. */
+      static AMERICA_RECIFE = new _TimeZone("America/Recife");
+      /** IANA Time Zone database entry for America/Regina.  UTC offset −06:00/−06:00. */
+      static AMERICA_REGINA = new _TimeZone("America/Regina");
+      /** IANA Time Zone database entry for America/Resolute.  UTC offset −06:00/−05:00. */
+      static AMERICA_RESOLUTE = new _TimeZone("America/Resolute");
+      /** IANA Time Zone database entry for America/Rio_Branco.  UTC offset −05:00/−05:00. */
+      static AMERICA_RIO_BRANCO = new _TimeZone("America/Rio_Branco");
+      /** IANA Time Zone database entry for America/Santarem.  UTC offset −03:00/−03:00. */
+      static AMERICA_SANTAREM = new _TimeZone("America/Santarem");
+      /** IANA Time Zone database entry for America/Santiago.  UTC offset −04:00/−03:00. */
+      static AMERICA_SANTIAGO = new _TimeZone("America/Santiago");
+      /** IANA Time Zone database entry for America/Santo_Domingo.  UTC offset −04:00/−04:00. */
+      static AMERICA_SANTO_DOMINGO = new _TimeZone("America/Santo_Domingo");
+      /** IANA Time Zone database entry for America/Sao_Paulo.  UTC offset −03:00/−03:00. */
+      static AMERICA_SAO_PAULO = new _TimeZone("America/Sao_Paulo");
+      /** IANA Time Zone database entry for America/Scoresbysund.  UTC offset −01:00/+00:00. */
+      static AMERICA_SCORESBYSUND = new _TimeZone("America/Scoresbysund");
+      /** IANA Time Zone database entry for America/Sitka.  UTC offset −09:00/−08:00. */
+      static AMERICA_SITKA = new _TimeZone("America/Sitka");
+      /** IANA Time Zone database entry for America/St_Johns.  UTC offset −03:30/−02:30. */
+      static AMERICA_ST_JOHNS = new _TimeZone("America/St_Johns");
+      /** IANA Time Zone database entry for America/Swift_Current.  UTC offset −06:00/−06:00. */
+      static AMERICA_SWIFT_CURRENT = new _TimeZone("America/Swift_Current");
+      /** IANA Time Zone database entry for America/Tegucigalpa.  UTC offset −06:00/−06:00. */
+      static AMERICA_TEGUCIGALPA = new _TimeZone("America/Tegucigalpa");
+      /** IANA Time Zone database entry for America/Thule.  UTC offset −04:00/−03:00. */
+      static AMERICA_THULE = new _TimeZone("America/Thule");
+      /** IANA Time Zone database entry for America/Tijuana.  UTC offset −08:00/−07:00. */
+      static AMERICA_TIJUANA = new _TimeZone("America/Tijuana");
+      /** IANA Time Zone database entry for America/Toronto.  UTC offset −05:00/−04:00. */
+      static AMERICA_TORONTO = new _TimeZone("America/Toronto");
+      /** IANA Time Zone database entry for America/Vancouver.  UTC offset −08:00/−07:00. */
+      static AMERICA_VANCOUVER = new _TimeZone("America/Vancouver");
+      /** IANA Time Zone database entry for America/Whitehorse.  UTC offset −07:00/−07:00. */
+      static AMERICA_WHITEHORSE = new _TimeZone("America/Whitehorse");
+      /** IANA Time Zone database entry for America/Winnipeg.  UTC offset −06:00/−05:00. */
+      static AMERICA_WINNIPEG = new _TimeZone("America/Winnipeg");
+      /** IANA Time Zone database entry for America/Yakutat.  UTC offset −09:00/−08:00. */
+      static AMERICA_YAKUTAT = new _TimeZone("America/Yakutat");
+      /** IANA Time Zone database entry for America/Yellowknife.  UTC offset −07:00/−06:00. */
+      static AMERICA_YELLOWKNIFE = new _TimeZone("America/Yellowknife");
+      /** IANA Time Zone database entry for Antarctica/Casey.  UTC offset +11:00/+11:00. */
+      static ANTARCTICA_CASEY = new _TimeZone("Antarctica/Casey");
+      /** IANA Time Zone database entry for Antarctica/Davis.  UTC offset +07:00/+07:00. */
+      static ANTARCTICA_DAVIS = new _TimeZone("Antarctica/Davis");
+      /** IANA Time Zone database entry for Antarctica/Macquarie.  UTC offset +10:00/+11:00. */
+      static ANTARCTICA_MACQUARIE = new _TimeZone("Antarctica/Macquarie");
+      /** IANA Time Zone database entry for Antarctica/Mawson.  UTC offset +05:00/+05:00. */
+      static ANTARCTICA_MAWSON = new _TimeZone("Antarctica/Mawson");
+      /** IANA Time Zone database entry for Antarctica/Palmer.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_PALMER = new _TimeZone("Antarctica/Palmer");
+      /** IANA Time Zone database entry for Antarctica/Rothera.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_ROTHERA = new _TimeZone("Antarctica/Rothera");
+      /** IANA Time Zone database entry for Antarctica/Troll.  UTC offset +00:00/+02:00. */
+      static ANTARCTICA_TROLL = new _TimeZone("Antarctica/Troll");
+      /** IANA Time Zone database entry for Asia/Almaty.  UTC offset +06:00/+06:00. */
+      static ASIA_ALMATY = new _TimeZone("Asia/Almaty");
+      /** IANA Time Zone database entry for Asia/Amman.  UTC offset +03:00/+03:00. */
+      static ASIA_AMMAN = new _TimeZone("Asia/Amman");
+      /** IANA Time Zone database entry for Asia/Anadyr.  UTC offset +12:00/+12:00. */
+      static ASIA_ANADYR = new _TimeZone("Asia/Anadyr");
+      /** IANA Time Zone database entry for Asia/Aqtau.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTAU = new _TimeZone("Asia/Aqtau");
+      /** IANA Time Zone database entry for Asia/Aqtobe.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTOBE = new _TimeZone("Asia/Aqtobe");
+      /** IANA Time Zone database entry for Asia/Ashgabat.  UTC offset +05:00/+05:00. */
+      static ASIA_ASHGABAT = new _TimeZone("Asia/Ashgabat");
+      /** IANA Time Zone database entry for Asia/Atyrau.  UTC offset +05:00/+05:00. */
+      static ASIA_ATYRAU = new _TimeZone("Asia/Atyrau");
+      /** IANA Time Zone database entry for Asia/Baghdad.  UTC offset +03:00/+03:00. */
+      static ASIA_BAGHDAD = new _TimeZone("Asia/Baghdad");
+      /** IANA Time Zone database entry for Asia/Baku.  UTC offset +04:00/+04:00. */
+      static ASIA_BAKU = new _TimeZone("Asia/Baku");
+      /** IANA Time Zone database entry for Asia/Bangkok.  UTC offset +07:00/+07:00. */
+      static ASIA_BANGKOK = new _TimeZone("Asia/Bangkok");
+      /** IANA Time Zone database entry for Asia/Barnaul.  UTC offset +07:00/+07:00. */
+      static ASIA_BARNAUL = new _TimeZone("Asia/Barnaul");
+      /** IANA Time Zone database entry for Asia/Beirut.  UTC offset +02:00/+03:00. */
+      static ASIA_BEIRUT = new _TimeZone("Asia/Beirut");
+      /** IANA Time Zone database entry for Asia/Bishkek.  UTC offset +06:00/+06:00. */
+      static ASIA_BISHKEK = new _TimeZone("Asia/Bishkek");
+      /** IANA Time Zone database entry for Asia/Chita.  UTC offset +09:00/+09:00. */
+      static ASIA_CHITA = new _TimeZone("Asia/Chita");
+      /** IANA Time Zone database entry for Asia/Choibalsan.  UTC offset +08:00/+08:00. */
+      static ASIA_CHOIBALSAN = new _TimeZone("Asia/Choibalsan");
+      /** IANA Time Zone database entry for Asia/Colombo.  UTC offset +05:30/+05:30. */
+      static ASIA_COLOMBO = new _TimeZone("Asia/Colombo");
+      /** IANA Time Zone database entry for Asia/Damascus.  UTC offset +03:00/+03:00. */
+      static ASIA_DAMASCUS = new _TimeZone("Asia/Damascus");
+      /** IANA Time Zone database entry for Asia/Dhaka.  UTC offset +06:00/+06:00. */
+      static ASIA_DHAKA = new _TimeZone("Asia/Dhaka");
+      /** IANA Time Zone database entry for Asia/Dili.  UTC offset +09:00/+09:00. */
+      static ASIA_DILI = new _TimeZone("Asia/Dili");
+      /** IANA Time Zone database entry for Asia/Dubai.  UTC offset +04:00/+04:00. */
+      static ASIA_DUBAI = new _TimeZone("Asia/Dubai");
+      /** IANA Time Zone database entry for Asia/Dushanbe.  UTC offset +05:00/+05:00. */
+      static ASIA_DUSHANBE = new _TimeZone("Asia/Dushanbe");
+      /** IANA Time Zone database entry for Asia/Famagusta.  UTC offset +02:00/+03:00. */
+      static ASIA_FAMAGUSTA = new _TimeZone("Asia/Famagusta");
+      /** IANA Time Zone database entry for Asia/Gaza.  UTC offset +02:00/+03:00. */
+      static ASIA_GAZA = new _TimeZone("Asia/Gaza");
+      /** IANA Time Zone database entry for Asia/Hebron.  UTC offset +02:00/+03:00. */
+      static ASIA_HEBRON = new _TimeZone("Asia/Hebron");
+      /** IANA Time Zone database entry for Asia/Ho_Chi_Minh.  UTC offset +07:00/+07:00. */
+      static ASIA_HO_CHI_MINH = new _TimeZone("Asia/Ho_Chi_Minh");
+      /** IANA Time Zone database entry for Asia/Hong_Kong.  UTC offset +08:00/+08:00. */
+      static ASIA_HONG_KONG = new _TimeZone("Asia/Hong_Kong");
+      /** IANA Time Zone database entry for Asia/Hovd.  UTC offset +07:00/+07:00. */
+      static ASIA_HOVD = new _TimeZone("Asia/Hovd");
+      /** IANA Time Zone database entry for Asia/Irkutsk.  UTC offset +08:00/+08:00. */
+      static ASIA_IRKUTSK = new _TimeZone("Asia/Irkutsk");
+      /** IANA Time Zone database entry for Asia/Jakarta.  UTC offset +07:00/+07:00. */
+      static ASIA_JAKARTA = new _TimeZone("Asia/Jakarta");
+      /** IANA Time Zone database entry for Asia/Jayapura.  UTC offset +09:00/+09:00. */
+      static ASIA_JAYAPURA = new _TimeZone("Asia/Jayapura");
+      /** IANA Time Zone database entry for Asia/Jerusalem.  UTC offset +02:00/+03:00. */
+      static ASIA_JERUSALEM = new _TimeZone("Asia/Jerusalem");
+      /** IANA Time Zone database entry for Asia/Kabul.  UTC offset +04:30/+04:30. */
+      static ASIA_KABUL = new _TimeZone("Asia/Kabul");
+      /** IANA Time Zone database entry for Asia/Kamchatka.  UTC offset +12:00/+12:00. */
+      static ASIA_KAMCHATKA = new _TimeZone("Asia/Kamchatka");
+      /** IANA Time Zone database entry for Asia/Karachi.  UTC offset +05:00/+05:00. */
+      static ASIA_KARACHI = new _TimeZone("Asia/Karachi");
+      /** IANA Time Zone database entry for Asia/Kathmandu.  UTC offset +05:45/+05:45. */
+      static ASIA_KATHMANDU = new _TimeZone("Asia/Kathmandu");
+      /** IANA Time Zone database entry for Asia/Khandyga.  UTC offset +09:00/+09:00. */
+      static ASIA_KHANDYGA = new _TimeZone("Asia/Khandyga");
+      /** IANA Time Zone database entry for Asia/Kolkata.  UTC offset +05:30/+05:30. */
+      static ASIA_KOLKATA = new _TimeZone("Asia/Kolkata");
+      /** IANA Time Zone database entry for Asia/Krasnoyarsk.  UTC offset +07:00/+07:00. */
+      static ASIA_KRASNOYARSK = new _TimeZone("Asia/Krasnoyarsk");
+      /** IANA Time Zone database entry for Asia/Kuching.  UTC offset +08:00/+08:00. */
+      static ASIA_KUCHING = new _TimeZone("Asia/Kuching");
+      /** IANA Time Zone database entry for Asia/Macau.  UTC offset +08:00/+08:00. */
+      static ASIA_MACAU = new _TimeZone("Asia/Macau");
+      /** IANA Time Zone database entry for Asia/Magadan.  UTC offset +11:00/+11:00. */
+      static ASIA_MAGADAN = new _TimeZone("Asia/Magadan");
+      /** IANA Time Zone database entry for Asia/Makassar.  UTC offset +08:00/+08:00. */
+      static ASIA_MAKASSAR = new _TimeZone("Asia/Makassar");
+      /** IANA Time Zone database entry for Asia/Manila.  UTC offset +08:00/+08:00. */
+      static ASIA_MANILA = new _TimeZone("Asia/Manila");
+      /** IANA Time Zone database entry for Asia/Nicosia.  UTC offset +02:00/+03:00. */
+      static ASIA_NICOSIA = new _TimeZone("Asia/Nicosia");
+      /** IANA Time Zone database entry for Asia/Novokuznetsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOKUZNETSK = new _TimeZone("Asia/Novokuznetsk");
+      /** IANA Time Zone database entry for Asia/Novosibirsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOSIBIRSK = new _TimeZone("Asia/Novosibirsk");
+      /** IANA Time Zone database entry for Asia/Omsk.  UTC offset +06:00/+06:00. */
+      static ASIA_OMSK = new _TimeZone("Asia/Omsk");
+      /** IANA Time Zone database entry for Asia/Oral.  UTC offset +05:00/+05:00. */
+      static ASIA_ORAL = new _TimeZone("Asia/Oral");
+      /** IANA Time Zone database entry for Asia/Pontianak.  UTC offset +07:00/+07:00. */
+      static ASIA_PONTIANAK = new _TimeZone("Asia/Pontianak");
+      /** IANA Time Zone database entry for Asia/Pyongyang.  UTC offset +09:00/+09:00. */
+      static ASIA_PYONGYANG = new _TimeZone("Asia/Pyongyang");
+      /** IANA Time Zone database entry for Asia/Qatar.  UTC offset +03:00/+03:00. */
+      static ASIA_QATAR = new _TimeZone("Asia/Qatar");
+      /** IANA Time Zone database entry for Asia/Qostanay.  UTC offset +06:00/+06:00. */
+      static ASIA_QOSTANAY = new _TimeZone("Asia/Qostanay");
+      /** IANA Time Zone database entry for Asia/Qyzylorda.  UTC offset +05:00/+05:00. */
+      static ASIA_QYZYLORDA = new _TimeZone("Asia/Qyzylorda");
+      /** IANA Time Zone database entry for Asia/Riyadh.  UTC offset +03:00/+03:00. */
+      static ASIA_RIYADH = new _TimeZone("Asia/Riyadh");
+      /** IANA Time Zone database entry for Asia/Sakhalin.  UTC offset +11:00/+11:00. */
+      static ASIA_SAKHALIN = new _TimeZone("Asia/Sakhalin");
+      /** IANA Time Zone database entry for Asia/Samarkand.  UTC offset +05:00/+05:00. */
+      static ASIA_SAMARKAND = new _TimeZone("Asia/Samarkand");
+      /** IANA Time Zone database entry for Asia/Seoul.  UTC offset +09:00/+09:00. */
+      static ASIA_SEOUL = new _TimeZone("Asia/Seoul");
+      /** IANA Time Zone database entry for Asia/Shanghai.  UTC offset +08:00/+08:00. */
+      static ASIA_SHANGHAI = new _TimeZone("Asia/Shanghai");
+      /** IANA Time Zone database entry for Asia/Singapore.  UTC offset +08:00/+08:00. */
+      static ASIA_SINGAPORE = new _TimeZone("Asia/Singapore");
+      /** IANA Time Zone database entry for Asia/Srednekolymsk.  UTC offset +11:00/+11:00. */
+      static ASIA_SREDNEKOLYMSK = new _TimeZone("Asia/Srednekolymsk");
+      /** IANA Time Zone database entry for Asia/Taipei.  UTC offset +08:00/+08:00. */
+      static ASIA_TAIPEI = new _TimeZone("Asia/Taipei");
+      /** IANA Time Zone database entry for Asia/Tashkent.  UTC offset +05:00/+05:00. */
+      static ASIA_TASHKENT = new _TimeZone("Asia/Tashkent");
+      /** IANA Time Zone database entry for Asia/Tbilisi.  UTC offset +04:00/+04:00. */
+      static ASIA_TBILISI = new _TimeZone("Asia/Tbilisi");
+      /** IANA Time Zone database entry for Asia/Tehran.  UTC offset +03:30/+03:30. */
+      static ASIA_TEHRAN = new _TimeZone("Asia/Tehran");
+      /** IANA Time Zone database entry for Asia/Thimphu.  UTC offset +06:00/+06:00. */
+      static ASIA_THIMPHU = new _TimeZone("Asia/Thimphu");
+      /** IANA Time Zone database entry for Asia/Tokyo.  UTC offset +09:00/+09:00. */
+      static ASIA_TOKYO = new _TimeZone("Asia/Tokyo");
+      /** IANA Time Zone database entry for Asia/Tomsk.  UTC offset +07:00/+07:00. */
+      static ASIA_TOMSK = new _TimeZone("Asia/Tomsk");
+      /** IANA Time Zone database entry for Asia/Ulaanbaatar.  UTC offset +08:00/+08:00. */
+      static ASIA_ULAANBAATAR = new _TimeZone("Asia/Ulaanbaatar");
+      /** IANA Time Zone database entry for Asia/Urumqi.  UTC offset +06:00/+06:00. */
+      static ASIA_URUMQI = new _TimeZone("Asia/Urumqi");
+      /** IANA Time Zone database entry for Asia/Ust-Nera.  UTC offset +10:00/+10:00. */
+      static ASIA_UST_MINUS_NERA = new _TimeZone("Asia/Ust-Nera");
+      /** IANA Time Zone database entry for Asia/Vladivostok.  UTC offset +10:00/+10:00. */
+      static ASIA_VLADIVOSTOK = new _TimeZone("Asia/Vladivostok");
+      /** IANA Time Zone database entry for Asia/Yakutsk.  UTC offset +09:00/+09:00. */
+      static ASIA_YAKUTSK = new _TimeZone("Asia/Yakutsk");
+      /** IANA Time Zone database entry for Asia/Yangon.  UTC offset +06:30/+06:30. */
+      static ASIA_YANGON = new _TimeZone("Asia/Yangon");
+      /** IANA Time Zone database entry for Asia/Yekaterinburg.  UTC offset +05:00/+05:00. */
+      static ASIA_YEKATERINBURG = new _TimeZone("Asia/Yekaterinburg");
+      /** IANA Time Zone database entry for Asia/Yerevan.  UTC offset +04:00/+04:00. */
+      static ASIA_YEREVAN = new _TimeZone("Asia/Yerevan");
+      /** IANA Time Zone database entry for Atlantic/Azores.  UTC offset −01:00/+00:00. */
+      static ATLANTIC_AZORES = new _TimeZone("Atlantic/Azores");
+      /** IANA Time Zone database entry for Atlantic/Bermuda.  UTC offset −04:00/−03:00. */
+      static ATLANTIC_BERMUDA = new _TimeZone("Atlantic/Bermuda");
+      /** IANA Time Zone database entry for Atlantic/Canary.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_CANARY = new _TimeZone("Atlantic/Canary");
+      /** IANA Time Zone database entry for Atlantic/Cape_Verde.  UTC offset −01:00/−01:00. */
+      static ATLANTIC_CAPE_VERDE = new _TimeZone("Atlantic/Cape_Verde");
+      /** IANA Time Zone database entry for Atlantic/Faroe.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_FAROE = new _TimeZone("Atlantic/Faroe");
+      /** IANA Time Zone database entry for Atlantic/Madeira.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_MADEIRA = new _TimeZone("Atlantic/Madeira");
+      /** IANA Time Zone database entry for Atlantic/South_Georgia.  UTC offset −02:00/−02:00. */
+      static ATLANTIC_SOUTH_GEORGIA = new _TimeZone("Atlantic/South_Georgia");
+      /** IANA Time Zone database entry for Atlantic/Stanley.  UTC offset −03:00/−03:00. */
+      static ATLANTIC_STANLEY = new _TimeZone("Atlantic/Stanley");
+      /** IANA Time Zone database entry for Australia/Adelaide.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_ADELAIDE = new _TimeZone("Australia/Adelaide");
+      /** IANA Time Zone database entry for Australia/Brisbane.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_BRISBANE = new _TimeZone("Australia/Brisbane");
+      /** IANA Time Zone database entry for Australia/Broken_Hill.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_BROKEN_HILL = new _TimeZone("Australia/Broken_Hill");
+      /** IANA Time Zone database entry for Australia/Darwin.  UTC offset +09:30/+09:30. */
+      static AUSTRALIA_DARWIN = new _TimeZone("Australia/Darwin");
+      /** IANA Time Zone database entry for Australia/Eucla.  UTC offset +08:45/+08:45. */
+      static AUSTRALIA_EUCLA = new _TimeZone("Australia/Eucla");
+      /** IANA Time Zone database entry for Australia/Hobart.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_HOBART = new _TimeZone("Australia/Hobart");
+      /** IANA Time Zone database entry for Australia/Lindeman.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_LINDEMAN = new _TimeZone("Australia/Lindeman");
+      /** IANA Time Zone database entry for Australia/Lord_Howe.  UTC offset +10:30/+11:00. */
+      static AUSTRALIA_LORD_HOWE = new _TimeZone("Australia/Lord_Howe");
+      /** IANA Time Zone database entry for Australia/Melbourne.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_MELBOURNE = new _TimeZone("Australia/Melbourne");
+      /** IANA Time Zone database entry for Australia/Perth.  UTC offset +08:00/+08:00. */
+      static AUSTRALIA_PERTH = new _TimeZone("Australia/Perth");
+      /** IANA Time Zone database entry for Australia/Sydney.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_SYDNEY = new _TimeZone("Australia/Sydney");
+      /** IANA Time Zone database entry for CET.  UTC offset +01:00/+02:00. */
+      static CET = new _TimeZone("CET");
+      /** IANA Time Zone database entry for CST6CDT.  UTC offset −06:00/−05:00. */
+      static CST6CDT = new _TimeZone("CST6CDT");
+      /** IANA Time Zone database entry for EET.  UTC offset +02:00/+03:00. */
+      static EET = new _TimeZone("EET");
+      /** IANA Time Zone database entry for EST.  UTC offset −05:00/−05:00. */
+      static EST = new _TimeZone("EST");
+      /** IANA Time Zone database entry for EST5EDT.  UTC offset −05:00/−04:00. */
+      static EST5EDT = new _TimeZone("EST5EDT");
+      /** IANA Time Zone database entry for Etc/GMT.  UTC offset +00:00/+00:00. */
+      static ETC_GMT = new _TimeZone("Etc/GMT");
+      /** IANA Time Zone database entry for Etc/GMT+1.  UTC offset −01:00/−01:00. */
+      static ETC_GMT_PLUS_1 = new _TimeZone("Etc/GMT+1");
+      /** IANA Time Zone database entry for Etc/GMT+10.  UTC offset −10:00/−10:00. */
+      static ETC_GMT_PLUS_10 = new _TimeZone("Etc/GMT+10");
+      /** IANA Time Zone database entry for Etc/GMT+11.  UTC offset −11:00/−11:00. */
+      static ETC_GMT_PLUS_11 = new _TimeZone("Etc/GMT+11");
+      /** IANA Time Zone database entry for Etc/GMT+12.  UTC offset −12:00/−12:00. */
+      static ETC_GMT_PLUS_12 = new _TimeZone("Etc/GMT+12");
+      /** IANA Time Zone database entry for Etc/GMT+2.  UTC offset −02:00/−02:00. */
+      static ETC_GMT_PLUS_2 = new _TimeZone("Etc/GMT+2");
+      /** IANA Time Zone database entry for Etc/GMT+3.  UTC offset −03:00/−03:00. */
+      static ETC_GMT_PLUS_3 = new _TimeZone("Etc/GMT+3");
+      /** IANA Time Zone database entry for Etc/GMT+4.  UTC offset −04:00/−04:00. */
+      static ETC_GMT_PLUS_4 = new _TimeZone("Etc/GMT+4");
+      /** IANA Time Zone database entry for Etc/GMT+5.  UTC offset −05:00/−05:00. */
+      static ETC_GMT_PLUS_5 = new _TimeZone("Etc/GMT+5");
+      /** IANA Time Zone database entry for Etc/GMT+6.  UTC offset −06:00/−06:00. */
+      static ETC_GMT_PLUS_6 = new _TimeZone("Etc/GMT+6");
+      /** IANA Time Zone database entry for Etc/GMT+7.  UTC offset −07:00/−07:00. */
+      static ETC_GMT_PLUS_7 = new _TimeZone("Etc/GMT+7");
+      /** IANA Time Zone database entry for Etc/GMT+8.  UTC offset −08:00/−08:00. */
+      static ETC_GMT_PLUS_8 = new _TimeZone("Etc/GMT+8");
+      /** IANA Time Zone database entry for Etc/GMT+9.  UTC offset −09:00/−09:00. */
+      static ETC_GMT_PLUS_9 = new _TimeZone("Etc/GMT+9");
+      /** IANA Time Zone database entry for Etc/GMT-1.  UTC offset +01:00/+01:00. */
+      static ETC_GMT_MINUS_1 = new _TimeZone("Etc/GMT-1");
+      /** IANA Time Zone database entry for Etc/GMT-10.  UTC offset +10:00/+10:00. */
+      static ETC_GMT_MINUS_10 = new _TimeZone("Etc/GMT-10");
+      /** IANA Time Zone database entry for Etc/GMT-11.  UTC offset +11:00/+11:00. */
+      static ETC_GMT_MINUS_11 = new _TimeZone("Etc/GMT-11");
+      /** IANA Time Zone database entry for Etc/GMT-12.  UTC offset +12:00/+12:00. */
+      static ETC_GMT_MINUS_12 = new _TimeZone("Etc/GMT-12");
+      /** IANA Time Zone database entry for Etc/GMT-13.  UTC offset +13:00/+13:00. */
+      static ETC_GMT_MINUS_13 = new _TimeZone("Etc/GMT-13");
+      /** IANA Time Zone database entry for Etc/GMT-14.  UTC offset +14:00/+14:00. */
+      static ETC_GMT_MINUS_14 = new _TimeZone("Etc/GMT-14");
+      /** IANA Time Zone database entry for Etc/GMT-2.  UTC offset +02:00/+02:00. */
+      static ETC_GMT_MINUS_2 = new _TimeZone("Etc/GMT-2");
+      /** IANA Time Zone database entry for Etc/GMT-3.  UTC offset +03:00/+03:00. */
+      static ETC_GMT_MINUS_3 = new _TimeZone("Etc/GMT-3");
+      /** IANA Time Zone database entry for Etc/GMT-4.  UTC offset +04:00/+04:00. */
+      static ETC_GMT_MINUS_4 = new _TimeZone("Etc/GMT-4");
+      /** IANA Time Zone database entry for Etc/GMT-5.  UTC offset +05:00/+05:00. */
+      static ETC_GMT_MINUS_5 = new _TimeZone("Etc/GMT-5");
+      /** IANA Time Zone database entry for Etc/GMT-6.  UTC offset +06:00/+06:00. */
+      static ETC_GMT_MINUS_6 = new _TimeZone("Etc/GMT-6");
+      /** IANA Time Zone database entry for Etc/GMT-7.  UTC offset +07:00/+07:00. */
+      static ETC_GMT_MINUS_7 = new _TimeZone("Etc/GMT-7");
+      /** IANA Time Zone database entry for Etc/GMT-8.  UTC offset +08:00/+08:00. */
+      static ETC_GMT_MINUS_8 = new _TimeZone("Etc/GMT-8");
+      /** IANA Time Zone database entry for Etc/GMT-9.  UTC offset +09:00/+09:00. */
+      static ETC_GMT_MINUS_9 = new _TimeZone("Etc/GMT-9");
+      /** IANA Time Zone database entry for Etc/UTC.  UTC offset +00:00/+00:00. */
+      static ETC_UTC = new _TimeZone("Etc/UTC");
+      /** IANA Time Zone database entry for Europe/Andorra.  UTC offset +01:00/+02:00. */
+      static EUROPE_ANDORRA = new _TimeZone("Europe/Andorra");
+      /** IANA Time Zone database entry for Europe/Astrakhan.  UTC offset +04:00/+04:00. */
+      static EUROPE_ASTRAKHAN = new _TimeZone("Europe/Astrakhan");
+      /** IANA Time Zone database entry for Europe/Athens.  UTC offset +02:00/+03:00. */
+      static EUROPE_ATHENS = new _TimeZone("Europe/Athens");
+      /** IANA Time Zone database entry for Europe/Belgrade.  UTC offset +01:00/+02:00. */
+      static EUROPE_BELGRADE = new _TimeZone("Europe/Belgrade");
+      /** IANA Time Zone database entry for Europe/Berlin.  UTC offset +01:00/+02:00. */
+      static EUROPE_BERLIN = new _TimeZone("Europe/Berlin");
+      /** IANA Time Zone database entry for Europe/Brussels.  UTC offset +01:00/+02:00. */
+      static EUROPE_BRUSSELS = new _TimeZone("Europe/Brussels");
+      /** IANA Time Zone database entry for Europe/Bucharest.  UTC offset +02:00/+03:00. */
+      static EUROPE_BUCHAREST = new _TimeZone("Europe/Bucharest");
+      /** IANA Time Zone database entry for Europe/Budapest.  UTC offset +01:00/+02:00. */
+      static EUROPE_BUDAPEST = new _TimeZone("Europe/Budapest");
+      /** IANA Time Zone database entry for Europe/Chisinau.  UTC offset +02:00/+03:00. */
+      static EUROPE_CHISINAU = new _TimeZone("Europe/Chisinau");
+      /** IANA Time Zone database entry for Europe/Dublin.  UTC offset +01:00/+00:00. */
+      static EUROPE_DUBLIN = new _TimeZone("Europe/Dublin");
+      /** IANA Time Zone database entry for Europe/Gibraltar.  UTC offset +01:00/+02:00. */
+      static EUROPE_GIBRALTAR = new _TimeZone("Europe/Gibraltar");
+      /** IANA Time Zone database entry for Europe/Helsinki.  UTC offset +02:00/+03:00. */
+      static EUROPE_HELSINKI = new _TimeZone("Europe/Helsinki");
+      /** IANA Time Zone database entry for Europe/Istanbul.  UTC offset +03:00/+03:00. */
+      static EUROPE_ISTANBUL = new _TimeZone("Europe/Istanbul");
+      /** IANA Time Zone database entry for Europe/Kaliningrad.  UTC offset +02:00/+02:00. */
+      static EUROPE_KALININGRAD = new _TimeZone("Europe/Kaliningrad");
+      /** IANA Time Zone database entry for Europe/Kirov.  UTC offset +03:00/+03:00. */
+      static EUROPE_KIROV = new _TimeZone("Europe/Kirov");
+      /** IANA Time Zone database entry for Europe/Kyiv.  UTC offset +02:00/+03:00. */
+      static EUROPE_KYIV = new _TimeZone("Europe/Kyiv");
+      /** IANA Time Zone database entry for Europe/Lisbon.  UTC offset +00:00/+01:00. */
+      static EUROPE_LISBON = new _TimeZone("Europe/Lisbon");
+      /** IANA Time Zone database entry for Europe/London.  UTC offset +00:00/+01:00. */
+      static EUROPE_LONDON = new _TimeZone("Europe/London");
+      /** IANA Time Zone database entry for Europe/Madrid.  UTC offset +01:00/+02:00. */
+      static EUROPE_MADRID = new _TimeZone("Europe/Madrid");
+      /** IANA Time Zone database entry for Europe/Malta.  UTC offset +01:00/+02:00. */
+      static EUROPE_MALTA = new _TimeZone("Europe/Malta");
+      /** IANA Time Zone database entry for Europe/Minsk.  UTC offset +03:00/+03:00. */
+      static EUROPE_MINSK = new _TimeZone("Europe/Minsk");
+      /** IANA Time Zone database entry for Europe/Moscow.  UTC offset +03:00/+03:00. */
+      static EUROPE_MOSCOW = new _TimeZone("Europe/Moscow");
+      /** IANA Time Zone database entry for Europe/Paris.  UTC offset +01:00/+02:00. */
+      static EUROPE_PARIS = new _TimeZone("Europe/Paris");
+      /** IANA Time Zone database entry for Europe/Prague.  UTC offset +01:00/+02:00. */
+      static EUROPE_PRAGUE = new _TimeZone("Europe/Prague");
+      /** IANA Time Zone database entry for Europe/Riga.  UTC offset +02:00/+03:00. */
+      static EUROPE_RIGA = new _TimeZone("Europe/Riga");
+      /** IANA Time Zone database entry for Europe/Rome.  UTC offset +01:00/+02:00. */
+      static EUROPE_ROME = new _TimeZone("Europe/Rome");
+      /** IANA Time Zone database entry for Europe/Samara.  UTC offset +04:00/+04:00. */
+      static EUROPE_SAMARA = new _TimeZone("Europe/Samara");
+      /** IANA Time Zone database entry for Europe/Saratov.  UTC offset +04:00/+04:00. */
+      static EUROPE_SARATOV = new _TimeZone("Europe/Saratov");
+      /** IANA Time Zone database entry for Europe/Simferopol.  UTC offset +03:00/+03:00. */
+      static EUROPE_SIMFEROPOL = new _TimeZone("Europe/Simferopol");
+      /** IANA Time Zone database entry for Europe/Sofia.  UTC offset +02:00/+03:00. */
+      static EUROPE_SOFIA = new _TimeZone("Europe/Sofia");
+      /** IANA Time Zone database entry for Europe/Tallinn.  UTC offset +02:00/+03:00. */
+      static EUROPE_TALLINN = new _TimeZone("Europe/Tallinn");
+      /** IANA Time Zone database entry for Europe/Tirane.  UTC offset +01:00/+02:00. */
+      static EUROPE_TIRANE = new _TimeZone("Europe/Tirane");
+      /** IANA Time Zone database entry for Europe/Ulyanovsk.  UTC offset +04:00/+04:00. */
+      static EUROPE_ULYANOVSK = new _TimeZone("Europe/Ulyanovsk");
+      /** IANA Time Zone database entry for Europe/Vienna.  UTC offset +01:00/+02:00. */
+      static EUROPE_VIENNA = new _TimeZone("Europe/Vienna");
+      /** IANA Time Zone database entry for Europe/Vilnius.  UTC offset +02:00/+03:00. */
+      static EUROPE_VILNIUS = new _TimeZone("Europe/Vilnius");
+      /** IANA Time Zone database entry for Europe/Volgograd.  UTC offset +03:00/+03:00. */
+      static EUROPE_VOLGOGRAD = new _TimeZone("Europe/Volgograd");
+      /** IANA Time Zone database entry for Europe/Warsaw.  UTC offset +01:00/+02:00. */
+      static EUROPE_WARSAW = new _TimeZone("Europe/Warsaw");
+      /** IANA Time Zone database entry for Europe/Zurich.  UTC offset +01:00/+02:00. */
+      static EUROPE_ZURICH = new _TimeZone("Europe/Zurich");
+      /** IANA Time Zone database entry for Factory.  UTC offset +00:00/+00:00. */
+      static FACTORY = new _TimeZone("Factory");
+      /** IANA Time Zone database entry for HST.  UTC offset −10:00/−10:00. */
+      static HST = new _TimeZone("HST");
+      /** IANA Time Zone database entry for Indian/Chagos.  UTC offset +06:00/+06:00. */
+      static INDIAN_CHAGOS = new _TimeZone("Indian/Chagos");
+      /** IANA Time Zone database entry for Indian/Maldives.  UTC offset +05:00/+05:00. */
+      static INDIAN_MALDIVES = new _TimeZone("Indian/Maldives");
+      /** IANA Time Zone database entry for Indian/Mauritius.  UTC offset +04:00/+04:00. */
+      static INDIAN_MAURITIUS = new _TimeZone("Indian/Mauritius");
+      /** IANA Time Zone database entry for MET.  UTC offset +01:00/+02:00. */
+      static MET = new _TimeZone("MET");
+      /** IANA Time Zone database entry for MST.  UTC offset −07:00/−07:00. */
+      static MST = new _TimeZone("MST");
+      /** IANA Time Zone database entry for MST7MDT.  UTC offset −07:00/−06:00. */
+      static MST7MDT = new _TimeZone("MST7MDT");
+      /** IANA Time Zone database entry for Pacific/Apia.  UTC offset +13:00/+13:00. */
+      static PACIFIC_APIA = new _TimeZone("Pacific/Apia");
+      /** IANA Time Zone database entry for Pacific/Auckland.  UTC offset +12:00/+13:00. */
+      static PACIFIC_AUCKLAND = new _TimeZone("Pacific/Auckland");
+      /** IANA Time Zone database entry for Pacific/Bougainville.  UTC offset +11:00/+11:00. */
+      static PACIFIC_BOUGAINVILLE = new _TimeZone("Pacific/Bougainville");
+      /** IANA Time Zone database entry for Pacific/Chatham.  UTC offset +12:45/+13:45. */
+      static PACIFIC_CHATHAM = new _TimeZone("Pacific/Chatham");
+      /** IANA Time Zone database entry for Pacific/Easter.  UTC offset −06:00/−05:00. */
+      static PACIFIC_EASTER = new _TimeZone("Pacific/Easter");
+      /** IANA Time Zone database entry for Pacific/Efate.  UTC offset +11:00/+11:00. */
+      static PACIFIC_EFATE = new _TimeZone("Pacific/Efate");
+      /** IANA Time Zone database entry for Pacific/Fakaofo.  UTC offset +13:00/+13:00. */
+      static PACIFIC_FAKAOFO = new _TimeZone("Pacific/Fakaofo");
+      /** IANA Time Zone database entry for Pacific/Fiji.  UTC offset +12:00/+12:00. */
+      static PACIFIC_FIJI = new _TimeZone("Pacific/Fiji");
+      /** IANA Time Zone database entry for Pacific/Galapagos.  UTC offset −06:00/−06:00. */
+      static PACIFIC_GALAPAGOS = new _TimeZone("Pacific/Galapagos");
+      /** IANA Time Zone database entry for Pacific/Gambier.  UTC offset −09:00/−09:00. */
+      static PACIFIC_GAMBIER = new _TimeZone("Pacific/Gambier");
+      /** IANA Time Zone database entry for Pacific/Guadalcanal.  UTC offset +11:00/+11:00. */
+      static PACIFIC_GUADALCANAL = new _TimeZone("Pacific/Guadalcanal");
+      /** IANA Time Zone database entry for Pacific/Guam.  UTC offset +10:00/+10:00. */
+      static PACIFIC_GUAM = new _TimeZone("Pacific/Guam");
+      /** IANA Time Zone database entry for Pacific/Honolulu.  UTC offset −10:00/−10:00. */
+      static PACIFIC_HONOLULU = new _TimeZone("Pacific/Honolulu");
+      /** IANA Time Zone database entry for Pacific/Kanton.  UTC offset +13:00/+13:00. */
+      static PACIFIC_KANTON = new _TimeZone("Pacific/Kanton");
+      /** IANA Time Zone database entry for Pacific/Kiritimati.  UTC offset +14:00/+14:00. */
+      static PACIFIC_KIRITIMATI = new _TimeZone("Pacific/Kiritimati");
+      /** IANA Time Zone database entry for Pacific/Kosrae.  UTC offset +11:00/+11:00. */
+      static PACIFIC_KOSRAE = new _TimeZone("Pacific/Kosrae");
+      /** IANA Time Zone database entry for Pacific/Kwajalein.  UTC offset +12:00/+12:00. */
+      static PACIFIC_KWAJALEIN = new _TimeZone("Pacific/Kwajalein");
+      /** IANA Time Zone database entry for Pacific/Marquesas.  UTC offset −09:30/−09:30. */
+      static PACIFIC_MARQUESAS = new _TimeZone("Pacific/Marquesas");
+      /** IANA Time Zone database entry for Pacific/Nauru.  UTC offset +12:00/+12:00. */
+      static PACIFIC_NAURU = new _TimeZone("Pacific/Nauru");
+      /** IANA Time Zone database entry for Pacific/Niue.  UTC offset −11:00/−11:00. */
+      static PACIFIC_NIUE = new _TimeZone("Pacific/Niue");
+      /** IANA Time Zone database entry for Pacific/Norfolk.  UTC offset +11:00/+12:00. */
+      static PACIFIC_NORFOLK = new _TimeZone("Pacific/Norfolk");
+      /** IANA Time Zone database entry for Pacific/Noumea.  UTC offset +11:00/+11:00. */
+      static PACIFIC_NOUMEA = new _TimeZone("Pacific/Noumea");
+      /** IANA Time Zone database entry for Pacific/Pago_Pago.  UTC offset −11:00/−11:00. */
+      static PACIFIC_PAGO_PAGO = new _TimeZone("Pacific/Pago_Pago");
+      /** IANA Time Zone database entry for Pacific/Palau.  UTC offset +09:00/+09:00. */
+      static PACIFIC_PALAU = new _TimeZone("Pacific/Palau");
+      /** IANA Time Zone database entry for Pacific/Pitcairn.  UTC offset −08:00/−08:00. */
+      static PACIFIC_PITCAIRN = new _TimeZone("Pacific/Pitcairn");
+      /** IANA Time Zone database entry for Pacific/Port_Moresby.  UTC offset +10:00/+10:00. */
+      static PACIFIC_PORT_MORESBY = new _TimeZone("Pacific/Port_Moresby");
+      /** IANA Time Zone database entry for Pacific/Rarotonga.  UTC offset −10:00/−10:00. */
+      static PACIFIC_RAROTONGA = new _TimeZone("Pacific/Rarotonga");
+      /** IANA Time Zone database entry for Pacific/Tahiti.  UTC offset −10:00/−10:00. */
+      static PACIFIC_TAHITI = new _TimeZone("Pacific/Tahiti");
+      /** IANA Time Zone database entry for Pacific/Tarawa.  UTC offset +12:00/+12:00. */
+      static PACIFIC_TARAWA = new _TimeZone("Pacific/Tarawa");
+      /** IANA Time Zone database entry for Pacific/Tongatapu.  UTC offset +13:00/+13:00. */
+      static PACIFIC_TONGATAPU = new _TimeZone("Pacific/Tongatapu");
+      /** IANA Time Zone database entry for PST8PDT.  UTC offset −08:00/−07:00. */
+      static PST8PDT = new _TimeZone("PST8PDT");
+      /** IANA Time Zone database entry for WET.  UTC offset +00:00/+01:00. */
+      static WET = new _TimeZone("WET");
+      /**
+       * Use this to add a timezone not in this class.
+       *
+       * @param timezoneName the name of the timezone
+       * @returns a new Timezone
+       */
+      static of(timezoneName) {
+        return new _TimeZone(timezoneName);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/index.ts
+var init_lib3 = __esm({
+  "../../aws-cdk-lib/core/lib/index.ts"() {
+    "use strict";
+    init_aspect();
+    init_tag_aspect();
+    init_mixins2();
+    init_token();
+    init_resolvable();
+    init_type_hints();
+    init_lazy();
+    init_prop_injectors();
+    init_tag_manager();
+    init_string_fragments();
+    init_stack_synthesizers();
+    init_reference();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_hook();
+    init_cfn_codedeploy_blue_green_hook();
+    init_cfn_include();
+    init_cfn_mapping();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_cfn_resource_policy();
+    init_cfn_rule();
+    init_stack();
+    init_stage();
+    init_cfn_element();
+    init_cfn_dynamic_reference();
+    init_cfn_tag();
+    init_cfn_json();
+    init_removal_policy();
+    init_removal_policies();
+    init_cross_stack_reference_strength();
+    init_arn();
+    init_duration();
+    init_bitrate();
+    init_expiration();
+    init_size();
+    init_errors();
+    init_app2();
+    init_context_provider();
+    init_environment();
+    init_annotations();
+    init_runtime();
+    init_secret_value();
+    init_resource();
+    init_physical_name();
+    init_assets();
+    init_tree();
+    init_asset_staging2();
+    init_bundling();
+    init_fs();
+    init_custom_resource();
+    init_nested_stack();
+    init_custom_resource_provider2();
+    init_cfn_capabilities();
+    init_cloudformation_generated();
+    init_feature_flags();
+    init_permissions_boundary();
+    init_validation2();
+    init_eventbridge();
+    init_grants();
+    init_intrinsic();
+    init_names();
+    init_time_zone();
+  }
+});
+
+// ../../aws-cdk-lib/core/index.ts
+var init_core = __esm({
+  "../../aws-cdk-lib/core/index.ts"() {
+    "use strict";
+    init_lib3();
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts
+var assembly_validation_report_exports = {};
+__export(assembly_validation_report_exports, {
+  AssemblyValidationReport: () => AssemblyValidationReport
+});
+function getBooleanContext2(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+var fs18, path22, AssemblyValidationReport, APP_INIT_HOOK_SYMBOL2;
+var init_assembly_validation_report = __esm({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts"() {
+    "use strict";
+    fs18 = __toESM(require("fs"));
+    path22 = __toESM(require("path"));
+    init_core();
+    init_literal_string();
+    init_cx_api();
+    init_match();
+    init_error();
+    AssemblyValidationReport = class _AssemblyValidationReport {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      /**
+       * During testing, create an App() with this as `postCliContext` in order to be able to use `AssemblyValidationReport.fromApp(app)`.
+       */
+      static APP_CONTEXT = {
+        [FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT]: false,
+        [STRICT_CFN_VALIDATE_ERRORS]: false
+      };
+      /**
+       * Disable the test suppressions that are automatically applied to all tests via the global App init hook (jest-global-app-testhook.ts).
+       *
+       * Returns a function that must be called to restore the global App init hook to its previous state.
+       */
+      static disableTestSuppressions() {
+        const previousAppHook = globalThis[APP_INIT_HOOK_SYMBOL2];
+        globalThis[APP_INIT_HOOK_SYMBOL2] = () => {
+        };
+        return () => {
+          globalThis[APP_INIT_HOOK_SYMBOL2] = previousAppHook;
+        };
+      }
+      /**
+       * Synthesize the given app and return its validation report.
+       */
+      static fromApp(app) {
+        if (getBooleanContext2(app, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true) || getBooleanContext2(app, STRICT_CFN_VALIDATE_ERRORS, false)) {
+          throw new AssumptionError(lit`MissingAppContext`, "In order to assert on validations with AssemblyValidationReport, create your App with { postCliContext: AssemblyValidationReport.APP_CONTEXT }");
+        }
+        const asm = app.synth();
+        const newFile = path22.join(asm.directory, "validation-report.json");
+        const newReport = JSON.parse(fs18.readFileSync(newFile, "utf-8"));
+        return new _AssemblyValidationReport(newReport);
+      }
+      pluginReport(pluginName) {
+        const report = this.report.pluginReports.find((r) => r.pluginName === pluginName);
+        if (!report) {
+          throw new AssertionError(`No report found for plugin ${pluginName}`);
+        }
+        return report;
+      }
+      /**
+       * All violations in all reports
+       */
+      allViolations() {
+        return this.report.pluginReports.flatMap((r) => r.violations);
+      }
+      hasViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (r.hasFailed()) {
+          throw new AssertionError("Expected policy violation not found:\n" + r.renderMismatch());
+        }
+      }
+      hasNoViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (!r.hasFailed()) {
+          throw new AssertionError("Expected no policy violations, but found:\n" + JSON.stringify(this.allViolations(), void 0, 2));
+        }
+      }
+    };
+    APP_INIT_HOOK_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/index.js
+var require_helpers_internal = __commonJS({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m)
+        if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p))
+          __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var _noFold;
+    exports2.Match = void 0;
+    Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, get: () => {
+      var value = (init_match(), __toCommonJS(match_exports)).Match;
+      Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.Matcher = void 0;
+    Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).Matcher;
+      Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.MatchResult = void 0;
+    Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).MatchResult;
+      Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.AssemblyValidationReport = void 0;
+    Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, get: () => {
+      var value = (init_assembly_validation_report(), __toCommonJS(assembly_validation_report_exports)).AssemblyValidationReport;
+      Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+  }
+});
+
+// ../../../node_modules/@smithy/types/dist-cjs/index.js
+var require_dist_cjs = __commonJS({
+  "../../../node_modules/@smithy/types/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AlgorithmId: () => AlgorithmId,
+      EndpointURLScheme: () => EndpointURLScheme,
+      FieldPosition: () => FieldPosition,
+      HttpApiKeyAuthLocation: () => HttpApiKeyAuthLocation2,
+      HttpAuthLocation: () => HttpAuthLocation,
+      IniSectionType: () => IniSectionType,
+      RequestHandlerProtocol: () => RequestHandlerProtocol,
+      SMITHY_CONTEXT_KEY: () => SMITHY_CONTEXT_KEY4,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var HttpAuthLocation = /* @__PURE__ */ ((HttpAuthLocation2) => {
+      HttpAuthLocation2["HEADER"] = "header";
+      HttpAuthLocation2["QUERY"] = "query";
+      return HttpAuthLocation2;
+    })(HttpAuthLocation || {});
+    var HttpApiKeyAuthLocation2 = /* @__PURE__ */ ((HttpApiKeyAuthLocation22) => {
+      HttpApiKeyAuthLocation22["HEADER"] = "header";
+      HttpApiKeyAuthLocation22["QUERY"] = "query";
+      return HttpApiKeyAuthLocation22;
+    })(HttpApiKeyAuthLocation2 || {});
+    var EndpointURLScheme = /* @__PURE__ */ ((EndpointURLScheme2) => {
+      EndpointURLScheme2["HTTP"] = "http";
+      EndpointURLScheme2["HTTPS"] = "https";
+      return EndpointURLScheme2;
+    })(EndpointURLScheme || {});
+    var AlgorithmId = /* @__PURE__ */ ((AlgorithmId2) => {
+      AlgorithmId2["MD5"] = "md5";
+      AlgorithmId2["CRC32"] = "crc32";
+      AlgorithmId2["CRC32C"] = "crc32c";
+      AlgorithmId2["SHA1"] = "sha1";
+      AlgorithmId2["SHA256"] = "sha256";
+      return AlgorithmId2;
+    })(AlgorithmId || {});
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      if (runtimeConfig.sha256 !== void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "sha256",
+          checksumConstructor: () => runtimeConfig.sha256
+        });
+      }
+      if (runtimeConfig.md5 != void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "md5",
+          checksumConstructor: () => runtimeConfig.md5
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getDefaultClientConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig)
+      };
+    }, "getDefaultClientConfiguration");
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var FieldPosition = /* @__PURE__ */ ((FieldPosition2) => {
+      FieldPosition2[FieldPosition2["HEADER"] = 0] = "HEADER";
+      FieldPosition2[FieldPosition2["TRAILER"] = 1] = "TRAILER";
+      return FieldPosition2;
+    })(FieldPosition || {});
+    var SMITHY_CONTEXT_KEY4 = "__smithy_context";
+    var IniSectionType = /* @__PURE__ */ ((IniSectionType2) => {
+      IniSectionType2["PROFILE"] = "profile";
+      IniSectionType2["SSO_SESSION"] = "sso-session";
+      IniSectionType2["SERVICES"] = "services";
+      return IniSectionType2;
+    })(IniSectionType || {});
+    var RequestHandlerProtocol = /* @__PURE__ */ ((RequestHandlerProtocol2) => {
+      RequestHandlerProtocol2["HTTP_0_9"] = "http/0.9";
+      RequestHandlerProtocol2["HTTP_1_0"] = "http/1.0";
+      RequestHandlerProtocol2["TDS_8_0"] = "tds/8.0";
+      return RequestHandlerProtocol2;
+    })(RequestHandlerProtocol || {});
+  }
+});
+
+// ../../../node_modules/@smithy/protocol-http/dist-cjs/index.js
+var require_dist_cjs2 = __commonJS({
+  "../../../node_modules/@smithy/protocol-http/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Field: () => Field,
+      Fields: () => Fields,
+      HttpRequest: () => HttpRequest7,
+      HttpResponse: () => HttpResponse2,
+      IHttpRequest: () => import_types8.HttpRequest,
+      getHttpHandlerExtensionConfiguration: () => getHttpHandlerExtensionConfiguration,
+      isValidHostname: () => isValidHostname,
+      resolveHttpHandlerRuntimeConfig: () => resolveHttpHandlerRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let httpHandler = runtimeConfig.httpHandler;
+      return {
+        setHttpHandler(handler2) {
+          httpHandler = handler2;
+        },
+        httpHandler() {
+          return httpHandler;
+        },
+        updateHttpClientConfig(key, value) {
+          httpHandler.updateHttpClientConfig(key, value);
+        },
+        httpHandlerConfigs() {
+          return httpHandler.httpHandlerConfigs();
+        }
+      };
+    }, "getHttpHandlerExtensionConfiguration");
+    var resolveHttpHandlerRuntimeConfig = /* @__PURE__ */ __name2((httpHandlerExtensionConfiguration) => {
+      return {
+        httpHandler: httpHandlerExtensionConfiguration.httpHandler()
+      };
+    }, "resolveHttpHandlerRuntimeConfig");
+    var import_types8 = require_dist_cjs();
+    var _Field = class _Field {
+      constructor({ name, kind = import_types8.FieldPosition.HEADER, values = [] }) {
+        this.name = name;
+        this.kind = kind;
+        this.values = values;
+      }
+      /**
+       * Appends a value to the field.
+       *
+       * @param value The value to append.
+       */
+      add(value) {
+        this.values.push(value);
+      }
+      /**
+       * Overwrite existing field values.
+       *
+       * @param values The new field values.
+       */
+      set(values) {
+        this.values = values;
+      }
+      /**
+       * Remove all matching entries from list.
+       *
+       * @param value Value to remove.
+       */
+      remove(value) {
+        this.values = this.values.filter((v) => v !== value);
+      }
+      /**
+       * Get comma-delimited string.
+       *
+       * @returns String representation of {@link Field}.
+       */
+      toString() {
+        return this.values.map((v) => v.includes(",") || v.includes(" ") ? `"${v}"` : v).join(", ");
+      }
+      /**
+       * Get string values as a list
+       *
+       * @returns Values in {@link Field} as a list.
+       */
+      get() {
+        return this.values;
+      }
+    };
+    __name2(_Field, "Field");
+    var Field = _Field;
+    var _Fields = class _Fields {
+      constructor({ fields = [], encoding = "utf-8" }) {
+        this.entries = {};
+        fields.forEach(this.setField.bind(this));
+        this.encoding = encoding;
+      }
+      /**
+       * Set entry for a {@link Field} name. The `name`
+       * attribute will be used to key the collection.
+       *
+       * @param field The {@link Field} to set.
+       */
+      setField(field) {
+        this.entries[field.name.toLowerCase()] = field;
+      }
+      /**
+       *  Retrieve {@link Field} entry by name.
+       *
+       * @param name The name of the {@link Field} entry
+       *  to retrieve
+       * @returns The {@link Field} if it exists.
+       */
+      getField(name) {
+        return this.entries[name.toLowerCase()];
+      }
+      /**
+       * Delete entry from collection.
+       *
+       * @param name Name of the entry to delete.
+       */
+      removeField(name) {
+        delete this.entries[name.toLowerCase()];
+      }
+      /**
+       * Helper function for retrieving specific types of fields.
+       * Used to grab all headers or all trailers.
+       *
+       * @param kind {@link FieldPosition} of entries to retrieve.
+       * @returns The {@link Field} entries with the specified
+       *  {@link FieldPosition}.
+       */
+      getByType(kind) {
+        return Object.values(this.entries).filter((field) => field.kind === kind);
+      }
+    };
+    __name2(_Fields, "Fields");
+    var Fields = _Fields;
+    var _HttpRequest = class _HttpRequest2 {
+      constructor(options) {
+        this.method = options.method || "GET";
+        this.hostname = options.hostname || "localhost";
+        this.port = options.port;
+        this.query = options.query || {};
+        this.headers = options.headers || {};
+        this.body = options.body;
+        this.protocol = options.protocol ? options.protocol.slice(-1) !== ":" ? `${options.protocol}:` : options.protocol : "https:";
+        this.path = options.path ? options.path.charAt(0) !== "/" ? `/${options.path}` : options.path : "/";
+        this.username = options.username;
+        this.password = options.password;
+        this.fragment = options.fragment;
+      }
+      /**
+       * Note: this does not deep-clone the body.
+       */
+      static clone(request2) {
+        const cloned = new _HttpRequest2({
+          ...request2,
+          headers: { ...request2.headers }
+        });
+        if (cloned.query) {
+          cloned.query = cloneQuery(cloned.query);
+        }
+        return cloned;
+      }
+      /**
+       * This method only actually asserts that request is the interface {@link IHttpRequest},
+       * and not necessarily this concrete class. Left in place for API stability.
+       *
+       * Do not call instance methods on the input of this function, and
+       * do not assume it has the HttpRequest prototype.
+       */
+      static isInstance(request2) {
+        if (!request2) {
+          return false;
+        }
+        const req = request2;
+        return "method" in req && "protocol" in req && "hostname" in req && "path" in req && typeof req["query"] === "object" && typeof req["headers"] === "object";
+      }
+      /**
+       * @deprecated use static HttpRequest.clone(request) instead. It's not safe to call
+       * this method because {@link HttpRequest.isInstance} incorrectly
+       * asserts that IHttpRequest (interface) objects are of type HttpRequest (class).
+       */
+      clone() {
+        return _HttpRequest2.clone(this);
+      }
+    };
+    __name2(_HttpRequest, "HttpRequest");
+    var HttpRequest7 = _HttpRequest;
+    function cloneQuery(query) {
+      return Object.keys(query).reduce((carry, paramName) => {
+        const param = query[paramName];
+        return {
+          ...carry,
+          [paramName]: Array.isArray(param) ? [...param] : param
+        };
+      }, {});
+    }
+    __name2(cloneQuery, "cloneQuery");
+    var _HttpResponse = class _HttpResponse {
+      constructor(options) {
+        this.statusCode = options.statusCode;
+        this.reason = options.reason;
+        this.headers = options.headers || {};
+        this.body = options.body;
+      }
+      static isInstance(response) {
+        if (!response)
+          return false;
+        const resp = response;
+        return typeof resp.statusCode === "number" && typeof resp.headers === "object";
+      }
+    };
+    __name2(_HttpResponse, "HttpResponse");
+    var HttpResponse2 = _HttpResponse;
+    function isValidHostname(hostname) {
+      const hostPattern = /^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/;
+      return hostPattern.test(hostname);
+    }
+    __name2(isValidHostname, "isValidHostname");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js
+var require_dist_cjs3 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getHostHeaderPlugin: () => getHostHeaderPlugin,
+      hostHeaderMiddleware: () => hostHeaderMiddleware,
+      hostHeaderMiddlewareOptions: () => hostHeaderMiddlewareOptions,
+      resolveHostHeaderConfig: () => resolveHostHeaderConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    function resolveHostHeaderConfig(input) {
+      return input;
+    }
+    __name2(resolveHostHeaderConfig, "resolveHostHeaderConfig");
+    var hostHeaderMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      if (!import_protocol_http8.HttpRequest.isInstance(args.request))
+        return next(args);
+      const { request: request2 } = args;
+      const { handlerProtocol = "" } = options.requestHandler.metadata || {};
+      if (handlerProtocol.indexOf("h2") >= 0 && !request2.headers[":authority"]) {
+        delete request2.headers["host"];
+        request2.headers[":authority"] = request2.hostname + (request2.port ? ":" + request2.port : "");
+      } else if (!request2.headers["host"]) {
+        let host = request2.hostname;
+        if (request2.port != null)
+          host += `:${request2.port}`;
+        request2.headers["host"] = host;
+      }
+      return next(args);
+    }, "hostHeaderMiddleware");
+    var hostHeaderMiddlewareOptions = {
+      name: "hostHeaderMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["HOST"],
+      override: true
+    };
+    var getHostHeaderPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);
+      }
+    }), "getHostHeaderPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js
+var require_dist_cjs4 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getLoggerPlugin: () => getLoggerPlugin,
+      loggerMiddleware: () => loggerMiddleware,
+      loggerMiddlewareOptions: () => loggerMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var loggerMiddleware = /* @__PURE__ */ __name2(() => (next, context) => async (args) => {
+      var _a7, _b;
+      try {
+        const response = await next(args);
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;
+        const { $metadata, ...outputWithoutMetadata } = response.output;
+        (_a7 = logger == null ? void 0 : logger.info) == null ? void 0 : _a7.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          output: outputFilterSensitiveLog(outputWithoutMetadata),
+          metadata: $metadata
+        });
+        return response;
+      } catch (error) {
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        (_b = logger == null ? void 0 : logger.error) == null ? void 0 : _b.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          error,
+          metadata: error.$metadata
+        });
+        throw error;
+      }
+    }, "loggerMiddleware");
+    var loggerMiddlewareOptions = {
+      name: "loggerMiddleware",
+      tags: ["LOGGER"],
+      step: "initialize",
+      override: true
+    };
+    var getLoggerPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);
+      }
+    }), "getLoggerPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js
+var require_dist_cjs5 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      addRecursionDetectionMiddlewareOptions: () => addRecursionDetectionMiddlewareOptions,
+      getRecursionDetectionPlugin: () => getRecursionDetectionPlugin,
+      recursionDetectionMiddleware: () => recursionDetectionMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var TRACE_ID_HEADER_NAME = "X-Amzn-Trace-Id";
+    var ENV_LAMBDA_FUNCTION_NAME = "AWS_LAMBDA_FUNCTION_NAME";
+    var ENV_TRACE_ID = "_X_AMZN_TRACE_ID";
+    var recursionDetectionMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2) || options.runtime !== "node" || request2.headers.hasOwnProperty(TRACE_ID_HEADER_NAME)) {
+        return next(args);
+      }
+      const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];
+      const traceId = process.env[ENV_TRACE_ID];
+      const nonEmptyString = /* @__PURE__ */ __name2((str) => typeof str === "string" && str.length > 0, "nonEmptyString");
+      if (nonEmptyString(functionName) && nonEmptyString(traceId)) {
+        request2.headers[TRACE_ID_HEADER_NAME] = traceId;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "recursionDetectionMiddleware");
+    var addRecursionDetectionMiddlewareOptions = {
+      step: "build",
+      tags: ["RECURSION_DETECTION"],
+      name: "recursionDetectionMiddleware",
+      override: true,
+      priority: "low"
+    };
+    var getRecursionDetectionPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(recursionDetectionMiddleware(options), addRecursionDetectionMiddlewareOptions);
+      }
+    }), "getRecursionDetectionPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js
+var require_dist_cjs6 = __commonJS({
+  "../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      EndpointCache: () => EndpointCache,
+      EndpointError: () => EndpointError2,
+      customEndpointFunctions: () => customEndpointFunctions,
+      isIpAddress: () => isIpAddress2,
+      isValidHostLabel: () => isValidHostLabel,
+      resolveEndpoint: () => resolveEndpoint2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _EndpointCache = class _EndpointCache {
+      /**
+       * @param [size] - desired average maximum capacity. A buffer of 10 additional keys will be allowed
+       *                 before keys are dropped.
+       * @param [params] - list of params to consider as part of the cache key.
+       *
+       * If the params list is not populated, no caching will happen.
+       * This may be out of order depending on how the object is created and arrives to this class.
+       */
+      constructor({ size, params }) {
+        this.data = /* @__PURE__ */ new Map();
+        this.parameters = [];
+        this.capacity = size ?? 50;
+        if (params) {
+          this.parameters = params;
+        }
+      }
+      /**
+       * @param endpointParams - query for endpoint.
+       * @param resolver - provider of the value if not present.
+       * @returns endpoint corresponding to the query.
+       */
+      get(endpointParams, resolver) {
+        const key = this.hash(endpointParams);
+        if (key === false) {
+          return resolver();
+        }
+        if (!this.data.has(key)) {
+          if (this.data.size > this.capacity + 10) {
+            const keys = this.data.keys();
+            let i = 0;
+            while (true) {
+              const { value, done } = keys.next();
+              this.data.delete(value);
+              if (done || ++i > 10) {
+                break;
+              }
+            }
+          }
+          this.data.set(key, resolver());
+        }
+        return this.data.get(key);
+      }
+      size() {
+        return this.data.size;
+      }
+      /**
+       * @returns cache key or false if not cachable.
+       */
+      hash(endpointParams) {
+        let buffer = "";
+        const { parameters } = this;
+        if (parameters.length === 0) {
+          return false;
+        }
+        for (const param of parameters) {
+          const val2 = String(endpointParams[param] ?? "");
+          if (val2.includes("|;")) {
+            return false;
+          }
+          buffer += val2 + "|;";
+        }
+        return buffer;
+      }
+    };
+    __name2(_EndpointCache, "EndpointCache");
+    var EndpointCache = _EndpointCache;
+    var IP_V4_REGEX = new RegExp(
+      `^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$`
+    );
+    var isIpAddress2 = /* @__PURE__ */ __name2((value) => IP_V4_REGEX.test(value) || value.startsWith("[") && value.endsWith("]"), "isIpAddress");
+    var VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);
+    var isValidHostLabel = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (!allowSubDomains) {
+        return VALID_HOST_LABEL_REGEX.test(value);
+      }
+      const labels = value.split(".");
+      for (const label of labels) {
+        if (!isValidHostLabel(label)) {
+          return false;
+        }
+      }
+      return true;
+    }, "isValidHostLabel");
+    var customEndpointFunctions = {};
+    var debugId = "endpoints";
+    function toDebugString(input) {
+      if (typeof input !== "object" || input == null) {
+        return input;
+      }
+      if ("ref" in input) {
+        return `$${toDebugString(input.ref)}`;
+      }
+      if ("fn" in input) {
+        return `${input.fn}(${(input.argv || []).map(toDebugString).join(", ")})`;
+      }
+      return JSON.stringify(input, null, 2);
+    }
+    __name2(toDebugString, "toDebugString");
+    var _EndpointError = class _EndpointError extends Error {
+      constructor(message) {
+        super(message);
+        this.name = "EndpointError";
+      }
+    };
+    __name2(_EndpointError, "EndpointError");
+    var EndpointError2 = _EndpointError;
+    var booleanEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "booleanEquals");
+    var getAttrPathList = /* @__PURE__ */ __name2((path23) => {
+      const parts = path23.split(".");
+      const pathList = [];
+      for (const part of parts) {
+        const squareBracketIndex = part.indexOf("[");
+        if (squareBracketIndex !== -1) {
+          if (part.indexOf("]") !== part.length - 1) {
+            throw new EndpointError2(`Path: '${path23}' does not end with ']'`);
+          }
+          const arrayIndex = part.slice(squareBracketIndex + 1, -1);
+          if (Number.isNaN(parseInt(arrayIndex))) {
+            throw new EndpointError2(`Invalid array index: '${arrayIndex}' in path: '${path23}'`);
+          }
+          if (squareBracketIndex !== 0) {
+            pathList.push(part.slice(0, squareBracketIndex));
+          }
+          pathList.push(arrayIndex);
+        } else {
+          pathList.push(part);
+        }
+      }
+      return pathList;
+    }, "getAttrPathList");
+    var getAttr = /* @__PURE__ */ __name2((value, path23) => getAttrPathList(path23).reduce((acc, index) => {
+      if (typeof acc !== "object") {
+        throw new EndpointError2(`Index '${index}' in '${path23}' not found in '${JSON.stringify(value)}'`);
+      } else if (Array.isArray(acc)) {
+        return acc[parseInt(index)];
+      }
+      return acc[index];
+    }, value), "getAttr");
+    var isSet = /* @__PURE__ */ __name2((value) => value != null, "isSet");
+    var not = /* @__PURE__ */ __name2((value) => !value, "not");
+    var import_types32 = require_dist_cjs();
+    var DEFAULT_PORTS = {
+      [import_types32.EndpointURLScheme.HTTP]: 80,
+      [import_types32.EndpointURLScheme.HTTPS]: 443
+    };
+    var parseURL = /* @__PURE__ */ __name2((value) => {
+      const whatwgURL = (() => {
+        try {
+          if (value instanceof URL) {
+            return value;
+          }
+          if (typeof value === "object" && "hostname" in value) {
+            const { hostname: hostname2, port, protocol: protocol2 = "", path: path23 = "", query = {} } = value;
+            const url2 = new URL(`${protocol2}//${hostname2}${port ? `:${port}` : ""}${path23}`);
+            url2.search = Object.entries(query).map(([k, v]) => `${k}=${v}`).join("&");
+            return url2;
+          }
+          return new URL(value);
+        } catch (error) {
+          return null;
+        }
+      })();
+      if (!whatwgURL) {
+        console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);
+        return null;
+      }
+      const urlString = whatwgURL.href;
+      const { host, hostname, pathname, protocol, search } = whatwgURL;
+      if (search) {
+        return null;
+      }
+      const scheme = protocol.slice(0, -1);
+      if (!Object.values(import_types32.EndpointURLScheme).includes(scheme)) {
+        return null;
+      }
+      const isIp = isIpAddress2(hostname);
+      const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) || typeof value === "string" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`);
+      const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;
+      return {
+        scheme,
+        authority,
+        path: pathname,
+        normalizedPath: pathname.endsWith("/") ? pathname : `${pathname}/`,
+        isIp
+      };
+    }, "parseURL");
+    var stringEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "stringEquals");
+    var substring = /* @__PURE__ */ __name2((input, start, stop, reverse) => {
+      if (start >= stop || input.length < stop) {
+        return null;
+      }
+      if (!reverse) {
+        return input.substring(start, stop);
+      }
+      return input.substring(input.length - stop, input.length - start);
+    }, "substring");
+    var uriEncode = /* @__PURE__ */ __name2((value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`), "uriEncode");
+    var endpointFunctions = {
+      booleanEquals,
+      getAttr,
+      isSet,
+      isValidHostLabel,
+      not,
+      parseURL,
+      stringEquals,
+      substring,
+      uriEncode
+    };
+    var evaluateTemplate = /* @__PURE__ */ __name2((template, options) => {
+      const evaluatedTemplateArr = [];
+      const templateContext = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      let currentIndex = 0;
+      while (currentIndex < template.length) {
+        const openingBraceIndex = template.indexOf("{", currentIndex);
+        if (openingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(currentIndex));
+          break;
+        }
+        evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));
+        const closingBraceIndex = template.indexOf("}", openingBraceIndex);
+        if (closingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex));
+          break;
+        }
+        if (template[openingBraceIndex + 1] === "{" && template[closingBraceIndex + 1] === "}") {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));
+          currentIndex = closingBraceIndex + 2;
+        }
+        const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);
+        if (parameterName.includes("#")) {
+          const [refName, attrName] = parameterName.split("#");
+          evaluatedTemplateArr.push(getAttr(templateContext[refName], attrName));
+        } else {
+          evaluatedTemplateArr.push(templateContext[parameterName]);
+        }
+        currentIndex = closingBraceIndex + 1;
+      }
+      return evaluatedTemplateArr.join("");
+    }, "evaluateTemplate");
+    var getReferenceValue = /* @__PURE__ */ __name2(({ ref }, options) => {
+      const referenceRecord = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      return referenceRecord[ref];
+    }, "getReferenceValue");
+    var evaluateExpression = /* @__PURE__ */ __name2((obj, keyName, options) => {
+      if (typeof obj === "string") {
+        return evaluateTemplate(obj, options);
+      } else if (obj["fn"]) {
+        return callFunction(obj, options);
+      } else if (obj["ref"]) {
+        return getReferenceValue(obj, options);
+      }
+      throw new EndpointError2(`'${keyName}': ${String(obj)} is not a string, function or reference.`);
+    }, "evaluateExpression");
+    var callFunction = /* @__PURE__ */ __name2(({ fn, argv }, options) => {
+      const evaluatedArgs = argv.map(
+        (arg) => ["boolean", "number"].includes(typeof arg) ? arg : evaluateExpression(arg, "arg", options)
+      );
+      const fnSegments = fn.split(".");
+      if (fnSegments[0] in customEndpointFunctions && fnSegments[1] != null) {
+        return customEndpointFunctions[fnSegments[0]][fnSegments[1]](...evaluatedArgs);
+      }
+      return endpointFunctions[fn](...evaluatedArgs);
+    }, "callFunction");
+    var evaluateCondition = /* @__PURE__ */ __name2(({ assign, ...fnArgs }, options) => {
+      var _a7, _b;
+      if (assign && assign in options.referenceRecord) {
+        throw new EndpointError2(`'${assign}' is already defined in Reference Record.`);
+      }
+      const value = callFunction(fnArgs, options);
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} evaluateCondition: ${toDebugString(fnArgs)} = ${toDebugString(value)}`);
+      return {
+        result: value === "" ? true : !!value,
+        ...assign != null && { toAssign: { name: assign, value } }
+      };
+    }, "evaluateCondition");
+    var evaluateConditions = /* @__PURE__ */ __name2((conditions = [], options) => {
+      var _a7, _b;
+      const conditionsReferenceRecord = {};
+      for (const condition of conditions) {
+        const { result, toAssign } = evaluateCondition(condition, {
+          ...options,
+          referenceRecord: {
+            ...options.referenceRecord,
+            ...conditionsReferenceRecord
+          }
+        });
+        if (!result) {
+          return { result };
+        }
+        if (toAssign) {
+          conditionsReferenceRecord[toAssign.name] = toAssign.value;
+          (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);
+        }
+      }
+      return { result: true, referenceRecord: conditionsReferenceRecord };
+    }, "evaluateConditions");
+    var getEndpointHeaders = /* @__PURE__ */ __name2((headers, options) => Object.entries(headers).reduce(
+      (acc, [headerKey, headerVal]) => ({
+        ...acc,
+        [headerKey]: headerVal.map((headerValEntry) => {
+          const processedExpr = evaluateExpression(headerValEntry, "Header value entry", options);
+          if (typeof processedExpr !== "string") {
+            throw new EndpointError2(`Header '${headerKey}' value '${processedExpr}' is not a string`);
+          }
+          return processedExpr;
+        })
+      }),
+      {}
+    ), "getEndpointHeaders");
+    var getEndpointProperty = /* @__PURE__ */ __name2((property, options) => {
+      if (Array.isArray(property)) {
+        return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));
+      }
+      switch (typeof property) {
+        case "string":
+          return evaluateTemplate(property, options);
+        case "object":
+          if (property === null) {
+            throw new EndpointError2(`Unexpected endpoint property: ${property}`);
+          }
+          return getEndpointProperties(property, options);
+        case "boolean":
+          return property;
+        default:
+          throw new EndpointError2(`Unexpected endpoint property type: ${typeof property}`);
+      }
+    }, "getEndpointProperty");
+    var getEndpointProperties = /* @__PURE__ */ __name2((properties, options) => Object.entries(properties).reduce(
+      (acc, [propertyKey, propertyVal]) => ({
+        ...acc,
+        [propertyKey]: getEndpointProperty(propertyVal, options)
+      }),
+      {}
+    ), "getEndpointProperties");
+    var getEndpointUrl = /* @__PURE__ */ __name2((endpointUrl, options) => {
+      const expression = evaluateExpression(endpointUrl, "Endpoint URL", options);
+      if (typeof expression === "string") {
+        try {
+          return new URL(expression);
+        } catch (error) {
+          console.error(`Failed to construct URL with ${expression}`, error);
+          throw error;
+        }
+      }
+      throw new EndpointError2(`Endpoint URL must be a string, got ${typeof expression}`);
+    }, "getEndpointUrl");
+    var evaluateEndpointRule = /* @__PURE__ */ __name2((endpointRule, options) => {
+      var _a7, _b;
+      const { conditions, endpoint } = endpointRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      const endpointRuleOptions = {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      };
+      const { url: url2, properties, headers } = endpoint;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);
+      return {
+        ...headers != void 0 && {
+          headers: getEndpointHeaders(headers, endpointRuleOptions)
+        },
+        ...properties != void 0 && {
+          properties: getEndpointProperties(properties, endpointRuleOptions)
+        },
+        url: getEndpointUrl(url2, endpointRuleOptions)
+      };
+    }, "evaluateEndpointRule");
+    var evaluateErrorRule = /* @__PURE__ */ __name2((errorRule, options) => {
+      const { conditions, error } = errorRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      throw new EndpointError2(
+        evaluateExpression(error, "Error", {
+          ...options,
+          referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+        })
+      );
+    }, "evaluateErrorRule");
+    var evaluateTreeRule = /* @__PURE__ */ __name2((treeRule, options) => {
+      const { conditions, rules } = treeRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      return evaluateRules(rules, {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      });
+    }, "evaluateTreeRule");
+    var evaluateRules = /* @__PURE__ */ __name2((rules, options) => {
+      for (const rule of rules) {
+        if (rule.type === "endpoint") {
+          const endpointOrUndefined = evaluateEndpointRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else if (rule.type === "error") {
+          evaluateErrorRule(rule, options);
+        } else if (rule.type === "tree") {
+          const endpointOrUndefined = evaluateTreeRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else {
+          throw new EndpointError2(`Unknown endpoint rule: ${rule}`);
+        }
+      }
+      throw new EndpointError2(`Rules evaluation failed`);
+    }, "evaluateRules");
+    var resolveEndpoint2 = /* @__PURE__ */ __name2((ruleSetObject, options) => {
+      var _a7, _b, _c, _d;
+      const { endpointParams, logger } = options;
+      const { parameters, rules } = ruleSetObject;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);
+      const paramsWithDefault = Object.entries(parameters).filter(([, v]) => v.default != null).map(([k, v]) => [k, v.default]);
+      if (paramsWithDefault.length > 0) {
+        for (const [paramKey, paramDefaultValue] of paramsWithDefault) {
+          endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;
+        }
+      }
+      const requiredParams = Object.entries(parameters).filter(([, v]) => v.required).map(([k]) => k);
+      for (const requiredParam of requiredParams) {
+        if (endpointParams[requiredParam] == null) {
+          throw new EndpointError2(`Missing required parameter: '${requiredParam}'`);
+        }
+      }
+      const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });
+      (_d = (_c = options.logger) == null ? void 0 : _c.debug) == null ? void 0 : _d.call(_c, `${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);
+      return endpoint;
+    }, "resolveEndpoint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js
+var require_dist_cjs7 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ConditionObject: () => import_util_endpoints.ConditionObject,
+      DeprecatedObject: () => import_util_endpoints.DeprecatedObject,
+      EndpointError: () => import_util_endpoints.EndpointError,
+      EndpointObject: () => import_util_endpoints.EndpointObject,
+      EndpointObjectHeaders: () => import_util_endpoints.EndpointObjectHeaders,
+      EndpointObjectProperties: () => import_util_endpoints.EndpointObjectProperties,
+      EndpointParams: () => import_util_endpoints.EndpointParams,
+      EndpointResolverOptions: () => import_util_endpoints.EndpointResolverOptions,
+      EndpointRuleObject: () => import_util_endpoints.EndpointRuleObject,
+      ErrorRuleObject: () => import_util_endpoints.ErrorRuleObject,
+      EvaluateOptions: () => import_util_endpoints.EvaluateOptions,
+      Expression: () => import_util_endpoints.Expression,
+      FunctionArgv: () => import_util_endpoints.FunctionArgv,
+      FunctionObject: () => import_util_endpoints.FunctionObject,
+      FunctionReturn: () => import_util_endpoints.FunctionReturn,
+      ParameterObject: () => import_util_endpoints.ParameterObject,
+      ReferenceObject: () => import_util_endpoints.ReferenceObject,
+      ReferenceRecord: () => import_util_endpoints.ReferenceRecord,
+      RuleSetObject: () => import_util_endpoints.RuleSetObject,
+      RuleSetRules: () => import_util_endpoints.RuleSetRules,
+      TreeRuleObject: () => import_util_endpoints.TreeRuleObject,
+      awsEndpointFunctions: () => awsEndpointFunctions,
+      getUserAgentPrefix: () => getUserAgentPrefix,
+      isIpAddress: () => import_util_endpoints.isIpAddress,
+      partition: () => partition,
+      resolveEndpoint: () => import_util_endpoints.resolveEndpoint,
+      setPartitionInfo: () => setPartitionInfo,
+      useDefaultPartitionInfo: () => useDefaultPartitionInfo
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_endpoints = require_dist_cjs6();
+    var isVirtualHostableS3Bucket = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (allowSubDomains) {
+        for (const label of value.split(".")) {
+          if (!isVirtualHostableS3Bucket(label)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      if (!(0, import_util_endpoints.isValidHostLabel)(value)) {
+        return false;
+      }
+      if (value.length < 3 || value.length > 63) {
+        return false;
+      }
+      if (value !== value.toLowerCase()) {
+        return false;
+      }
+      if ((0, import_util_endpoints.isIpAddress)(value)) {
+        return false;
+      }
+      return true;
+    }, "isVirtualHostableS3Bucket");
+    var ARN_DELIMITER = ":";
+    var RESOURCE_DELIMITER = "/";
+    var parseArn = /* @__PURE__ */ __name2((value) => {
+      const segments = value.split(ARN_DELIMITER);
+      if (segments.length < 6)
+        return null;
+      const [arn, partition2, service, region, accountId, ...resourcePath] = segments;
+      if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "")
+        return null;
+      const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();
+      return {
+        partition: partition2,
+        service,
+        region,
+        accountId,
+        resourceId
+      };
+    }, "parseArn");
+    var partitions_default = {
+      partitions: [{
+        id: "aws",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-east-1",
+          name: "aws",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$",
+        regions: {
+          "af-south-1": {
+            description: "Africa (Cape Town)"
+          },
+          "ap-east-1": {
+            description: "Asia Pacific (Hong Kong)"
+          },
+          "ap-northeast-1": {
+            description: "Asia Pacific (Tokyo)"
+          },
+          "ap-northeast-2": {
+            description: "Asia Pacific (Seoul)"
+          },
+          "ap-northeast-3": {
+            description: "Asia Pacific (Osaka)"
+          },
+          "ap-south-1": {
+            description: "Asia Pacific (Mumbai)"
+          },
+          "ap-south-2": {
+            description: "Asia Pacific (Hyderabad)"
+          },
+          "ap-southeast-1": {
+            description: "Asia Pacific (Singapore)"
+          },
+          "ap-southeast-2": {
+            description: "Asia Pacific (Sydney)"
+          },
+          "ap-southeast-3": {
+            description: "Asia Pacific (Jakarta)"
+          },
+          "ap-southeast-4": {
+            description: "Asia Pacific (Melbourne)"
+          },
+          "aws-global": {
+            description: "AWS Standard global region"
+          },
+          "ca-central-1": {
+            description: "Canada (Central)"
+          },
+          "ca-west-1": {
+            description: "Canada West (Calgary)"
+          },
+          "eu-central-1": {
+            description: "Europe (Frankfurt)"
+          },
+          "eu-central-2": {
+            description: "Europe (Zurich)"
+          },
+          "eu-north-1": {
+            description: "Europe (Stockholm)"
+          },
+          "eu-south-1": {
+            description: "Europe (Milan)"
+          },
+          "eu-south-2": {
+            description: "Europe (Spain)"
+          },
+          "eu-west-1": {
+            description: "Europe (Ireland)"
+          },
+          "eu-west-2": {
+            description: "Europe (London)"
+          },
+          "eu-west-3": {
+            description: "Europe (Paris)"
+          },
+          "il-central-1": {
+            description: "Israel (Tel Aviv)"
+          },
+          "me-central-1": {
+            description: "Middle East (UAE)"
+          },
+          "me-south-1": {
+            description: "Middle East (Bahrain)"
+          },
+          "sa-east-1": {
+            description: "South America (Sao Paulo)"
+          },
+          "us-east-1": {
+            description: "US East (N. Virginia)"
+          },
+          "us-east-2": {
+            description: "US East (Ohio)"
+          },
+          "us-west-1": {
+            description: "US West (N. California)"
+          },
+          "us-west-2": {
+            description: "US West (Oregon)"
+          }
+        }
+      }, {
+        id: "aws-cn",
+        outputs: {
+          dnsSuffix: "amazonaws.com.cn",
+          dualStackDnsSuffix: "api.amazonwebservices.com.cn",
+          implicitGlobalRegion: "cn-northwest-1",
+          name: "aws-cn",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^cn\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-cn-global": {
+            description: "AWS China global region"
+          },
+          "cn-north-1": {
+            description: "China (Beijing)"
+          },
+          "cn-northwest-1": {
+            description: "China (Ningxia)"
+          }
+        }
+      }, {
+        id: "aws-us-gov",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-gov-west-1",
+          name: "aws-us-gov",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-gov\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-us-gov-global": {
+            description: "AWS GovCloud (US) global region"
+          },
+          "us-gov-east-1": {
+            description: "AWS GovCloud (US-East)"
+          },
+          "us-gov-west-1": {
+            description: "AWS GovCloud (US-West)"
+          }
+        }
+      }, {
+        id: "aws-iso",
+        outputs: {
+          dnsSuffix: "c2s.ic.gov",
+          dualStackDnsSuffix: "c2s.ic.gov",
+          implicitGlobalRegion: "us-iso-east-1",
+          name: "aws-iso",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-iso\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-global": {
+            description: "AWS ISO (US) global region"
+          },
+          "us-iso-east-1": {
+            description: "US ISO East"
+          },
+          "us-iso-west-1": {
+            description: "US ISO WEST"
+          }
+        }
+      }, {
+        id: "aws-iso-b",
+        outputs: {
+          dnsSuffix: "sc2s.sgov.gov",
+          dualStackDnsSuffix: "sc2s.sgov.gov",
+          implicitGlobalRegion: "us-isob-east-1",
+          name: "aws-iso-b",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isob\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-b-global": {
+            description: "AWS ISOB (US) global region"
+          },
+          "us-isob-east-1": {
+            description: "US ISOB East (Ohio)"
+          }
+        }
+      }, {
+        id: "aws-iso-e",
+        outputs: {
+          dnsSuffix: "cloud.adc-e.uk",
+          dualStackDnsSuffix: "cloud.adc-e.uk",
+          implicitGlobalRegion: "eu-isoe-west-1",
+          name: "aws-iso-e",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$",
+        regions: {
+          "eu-isoe-west-1": {
+            description: "EU ISOE West"
+          }
+        }
+      }, {
+        id: "aws-iso-f",
+        outputs: {
+          dnsSuffix: "csp.hci.ic.gov",
+          dualStackDnsSuffix: "csp.hci.ic.gov",
+          implicitGlobalRegion: "us-isof-south-1",
+          name: "aws-iso-f",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isof\\-\\w+\\-\\d+$",
+        regions: {}
+      }],
+      version: "1.1"
+    };
+    var selectedPartitionsInfo = partitions_default;
+    var selectedUserAgentPrefix = "";
+    var partition = /* @__PURE__ */ __name2((value) => {
+      const { partitions } = selectedPartitionsInfo;
+      for (const partition2 of partitions) {
+        const { regions, outputs } = partition2;
+        for (const [region, regionData] of Object.entries(regions)) {
+          if (region === value) {
+            return {
+              ...outputs,
+              ...regionData
+            };
+          }
+        }
+      }
+      for (const partition2 of partitions) {
+        const { regionRegex, outputs } = partition2;
+        if (new RegExp(regionRegex).test(value)) {
+          return {
+            ...outputs
+          };
+        }
+      }
+      const DEFAULT_PARTITION = partitions.find((partition2) => partition2.id === "aws");
+      if (!DEFAULT_PARTITION) {
+        throw new Error(
+          "Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist."
+        );
+      }
+      return {
+        ...DEFAULT_PARTITION.outputs
+      };
+    }, "partition");
+    var setPartitionInfo = /* @__PURE__ */ __name2((partitionsInfo, userAgentPrefix = "") => {
+      selectedPartitionsInfo = partitionsInfo;
+      selectedUserAgentPrefix = userAgentPrefix;
+    }, "setPartitionInfo");
+    var useDefaultPartitionInfo = /* @__PURE__ */ __name2(() => {
+      setPartitionInfo(partitions_default, "");
+    }, "useDefaultPartitionInfo");
+    var getUserAgentPrefix = /* @__PURE__ */ __name2(() => selectedUserAgentPrefix, "getUserAgentPrefix");
+    var awsEndpointFunctions = {
+      isVirtualHostableS3Bucket,
+      parseArn,
+      partition
+    };
+    import_util_endpoints.customEndpointFunctions.aws = awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js
+var require_dist_cjs8 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getUserAgentMiddlewareOptions: () => getUserAgentMiddlewareOptions,
+      getUserAgentPlugin: () => getUserAgentPlugin,
+      resolveUserAgentConfig: () => resolveUserAgentConfig,
+      userAgentMiddleware: () => userAgentMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function resolveUserAgentConfig(input) {
+      return {
+        ...input,
+        customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent
+      };
+    }
+    __name2(resolveUserAgentConfig, "resolveUserAgentConfig");
+    var import_util_endpoints = require_dist_cjs7();
+    var import_protocol_http8 = require_dist_cjs2();
+    var USER_AGENT = "user-agent";
+    var X_AMZ_USER_AGENT = "x-amz-user-agent";
+    var SPACE = " ";
+    var UA_NAME_SEPARATOR = "/";
+    var UA_NAME_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w]/g;
+    var UA_VALUE_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w\#]/g;
+    var UA_ESCAPE_CHAR = "-";
+    var userAgentMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7, _b;
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2))
+        return next(args);
+      const { headers } = request2;
+      const userAgent = ((_a7 = context == null ? void 0 : context.userAgent) == null ? void 0 : _a7.map(escapeUserAgent)) || [];
+      const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);
+      const customUserAgent = ((_b = options == null ? void 0 : options.customUserAgent) == null ? void 0 : _b.map(escapeUserAgent)) || [];
+      const prefix = (0, import_util_endpoints.getUserAgentPrefix)();
+      const sdkUserAgentValue = (prefix ? [prefix] : []).concat([...defaultUserAgent, ...userAgent, ...customUserAgent]).join(SPACE);
+      const normalUAValue = [
+        ...defaultUserAgent.filter((section) => section.startsWith("aws-sdk-")),
+        ...customUserAgent
+      ].join(SPACE);
+      if (options.runtime !== "browser") {
+        if (normalUAValue) {
+          headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT] ? `${headers[USER_AGENT]} ${normalUAValue}` : normalUAValue;
+        }
+        headers[USER_AGENT] = sdkUserAgentValue;
+      } else {
+        headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "userAgentMiddleware");
+    var escapeUserAgent = /* @__PURE__ */ __name2((userAgentPair) => {
+      var _a7;
+      const name = userAgentPair[0].split(UA_NAME_SEPARATOR).map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR)).join(UA_NAME_SEPARATOR);
+      const version3 = (_a7 = userAgentPair[1]) == null ? void 0 : _a7.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);
+      const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);
+      const prefix = name.substring(0, prefixSeparatorIndex);
+      let uaName = name.substring(prefixSeparatorIndex + 1);
+      if (prefix === "api") {
+        uaName = uaName.toLowerCase();
+      }
+      return [prefix, uaName, version3].filter((item) => item && item.length > 0).reduce((acc, item, index) => {
+        switch (index) {
+          case 0:
+            return item;
+          case 1:
+            return `${acc}/${item}`;
+          default:
+            return `${acc}#${item}`;
+        }
+      }, "");
+    }, "escapeUserAgent");
+    var getUserAgentMiddlewareOptions = {
+      name: "getUserAgentMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["SET_USER_AGENT", "USER_AGENT"],
+      override: true
+    };
+    var getUserAgentPlugin = /* @__PURE__ */ __name2((config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);
+      }
+    }), "getUserAgentPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js
+var require_dist_cjs9 = __commonJS({
+  "../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SelectorType: () => SelectorType,
+      booleanSelector: () => booleanSelector,
+      numberSelector: () => numberSelector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var booleanSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      if (obj[key] === "true")
+        return true;
+      if (obj[key] === "false")
+        return false;
+      throw new Error(`Cannot load ${type} "${key}". Expected "true" or "false", got ${obj[key]}.`);
+    }, "booleanSelector");
+    var numberSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      const numberValue = parseInt(obj[key], 10);
+      if (Number.isNaN(numberValue)) {
+        throw new TypeError(`Cannot load ${type} '${key}'. Expected number, got '${obj[key]}'.`);
+      }
+      return numberValue;
+    }, "numberSelector");
+    var SelectorType = /* @__PURE__ */ ((SelectorType2) => {
+      SelectorType2["ENV"] = "env";
+      SelectorType2["CONFIG"] = "shared config entry";
+      return SelectorType2;
+    })(SelectorType || {});
+  }
+});
+
+// ../../../node_modules/@smithy/util-middleware/dist-cjs/index.js
+var require_dist_cjs10 = __commonJS({
+  "../../../node_modules/@smithy/util-middleware/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getSmithyContext: () => getSmithyContext4,
+      normalizeProvider: () => normalizeProvider2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_types8 = require_dist_cjs();
+    var getSmithyContext4 = /* @__PURE__ */ __name2((context) => context[import_types8.SMITHY_CONTEXT_KEY] || (context[import_types8.SMITHY_CONTEXT_KEY] = {}), "getSmithyContext");
+    var normalizeProvider2 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    }, "normalizeProvider");
+  }
+});
+
+// ../../../node_modules/@smithy/config-resolver/dist-cjs/index.js
+var require_dist_cjs11 = __commonJS({
+  "../../../node_modules/@smithy/config-resolver/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_USE_DUALSTACK_ENDPOINT: () => CONFIG_USE_DUALSTACK_ENDPOINT,
+      CONFIG_USE_FIPS_ENDPOINT: () => CONFIG_USE_FIPS_ENDPOINT,
+      DEFAULT_USE_DUALSTACK_ENDPOINT: () => DEFAULT_USE_DUALSTACK_ENDPOINT,
+      DEFAULT_USE_FIPS_ENDPOINT: () => DEFAULT_USE_FIPS_ENDPOINT,
+      ENV_USE_DUALSTACK_ENDPOINT: () => ENV_USE_DUALSTACK_ENDPOINT,
+      ENV_USE_FIPS_ENDPOINT: () => ENV_USE_FIPS_ENDPOINT,
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,
+      NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getRegionInfo: () => getRegionInfo,
+      resolveCustomEndpointsConfig: () => resolveCustomEndpointsConfig,
+      resolveEndpointsConfig: () => resolveEndpointsConfig,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_config_provider = require_dist_cjs9();
+    var ENV_USE_DUALSTACK_ENDPOINT = "AWS_USE_DUALSTACK_ENDPOINT";
+    var CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint";
+    var DEFAULT_USE_DUALSTACK_ENDPOINT = false;
+    var NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var ENV_USE_FIPS_ENDPOINT = "AWS_USE_FIPS_ENDPOINT";
+    var CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint";
+    var DEFAULT_USE_FIPS_ENDPOINT = false;
+    var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var import_util_middleware3 = require_dist_cjs10();
+    var resolveCustomEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const { endpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint),
+        isCustomEndpoint: true,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false)
+      };
+    }, "resolveCustomEndpointsConfig");
+    var getEndpointFromRegion = /* @__PURE__ */ __name2(async (input) => {
+      const { tls = true } = input;
+      const region = await input.region();
+      const dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/);
+      if (!dnsHostRegex.test(region)) {
+        throw new Error("Invalid region in client config");
+      }
+      const useDualstackEndpoint = await input.useDualstackEndpoint();
+      const useFipsEndpoint = await input.useFipsEndpoint();
+      const { hostname } = await input.regionInfoProvider(region, { useDualstackEndpoint, useFipsEndpoint }) ?? {};
+      if (!hostname) {
+        throw new Error("Cannot resolve hostname from client config");
+      }
+      return input.urlParser(`${tls ? "https:" : "http:"}//${hostname}`);
+    }, "getEndpointFromRegion");
+    var resolveEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const useDualstackEndpoint = (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false);
+      const { endpoint, useFipsEndpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: endpoint ? (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint) : () => getEndpointFromRegion({ ...input, useDualstackEndpoint, useFipsEndpoint }),
+        isCustomEndpoint: !!endpoint,
+        useDualstackEndpoint
+      };
+    }, "resolveEndpointsConfig");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+    var getHostnameFromVariants = /* @__PURE__ */ __name2((variants = [], { useFipsEndpoint, useDualstackEndpoint }) => {
+      var _a7;
+      return (_a7 = variants.find(
+        ({ tags }) => useFipsEndpoint === tags.includes("fips") && useDualstackEndpoint === tags.includes("dualstack")
+      )) == null ? void 0 : _a7.hostname;
+    }, "getHostnameFromVariants");
+    var getResolvedHostname = /* @__PURE__ */ __name2((resolvedRegion, { regionHostname, partitionHostname }) => regionHostname ? regionHostname : partitionHostname ? partitionHostname.replace("{region}", resolvedRegion) : void 0, "getResolvedHostname");
+    var getResolvedPartition = /* @__PURE__ */ __name2((region, { partitionHash }) => Object.keys(partitionHash || {}).find((key) => partitionHash[key].regions.includes(region)) ?? "aws", "getResolvedPartition");
+    var getResolvedSigningRegion = /* @__PURE__ */ __name2((hostname, { signingRegion, regionRegex, useFipsEndpoint }) => {
+      if (signingRegion) {
+        return signingRegion;
+      } else if (useFipsEndpoint) {
+        const regionRegexJs = regionRegex.replace("\\\\", "\\").replace(/^\^/g, "\\.").replace(/\$$/g, "\\.");
+        const regionRegexmatchArray = hostname.match(regionRegexJs);
+        if (regionRegexmatchArray) {
+          return regionRegexmatchArray[0].slice(1, -1);
+        }
+      }
+    }, "getResolvedSigningRegion");
+    var getRegionInfo = /* @__PURE__ */ __name2((region, {
+      useFipsEndpoint = false,
+      useDualstackEndpoint = false,
+      signingService,
+      regionHash,
+      partitionHash
+    }) => {
+      var _a7, _b, _c, _d, _e;
+      const partition = getResolvedPartition(region, { partitionHash });
+      const resolvedRegion = region in regionHash ? region : ((_a7 = partitionHash[partition]) == null ? void 0 : _a7.endpoint) ?? region;
+      const hostnameOptions = { useFipsEndpoint, useDualstackEndpoint };
+      const regionHostname = getHostnameFromVariants((_b = regionHash[resolvedRegion]) == null ? void 0 : _b.variants, hostnameOptions);
+      const partitionHostname = getHostnameFromVariants((_c = partitionHash[partition]) == null ? void 0 : _c.variants, hostnameOptions);
+      const hostname = getResolvedHostname(resolvedRegion, { regionHostname, partitionHostname });
+      if (hostname === void 0) {
+        throw new Error(`Endpoint resolution failed for: ${{ resolvedRegion, useFipsEndpoint, useDualstackEndpoint }}`);
+      }
+      const signingRegion = getResolvedSigningRegion(hostname, {
+        signingRegion: (_d = regionHash[resolvedRegion]) == null ? void 0 : _d.signingRegion,
+        regionRegex: partitionHash[partition].regionRegex,
+        useFipsEndpoint
+      });
+      return {
+        partition,
+        signingService,
+        hostname,
+        ...signingRegion && { signingRegion },
+        ...((_e = regionHash[resolvedRegion]) == null ? void 0 : _e.signingService) && {
+          signingService: regionHash[resolvedRegion].signingService
+        }
+      };
+    }, "getRegionInfo");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/getSmithyContext.js
+var import_types4, getSmithyContext;
+var init_getSmithyContext = __esm({
+  "../../../node_modules/@smithy/core/dist-es/getSmithyContext.js"() {
+    import_types4 = __toESM(require_dist_cjs());
+    getSmithyContext = (context) => context[import_types4.SMITHY_CONTEXT_KEY] || (context[import_types4.SMITHY_CONTEXT_KEY] = {});
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js
+function convertHttpAuthSchemesToMap(httpAuthSchemes) {
+  const map = /* @__PURE__ */ new Map();
+  for (const scheme of httpAuthSchemes) {
+    map.set(scheme.schemeId, scheme);
+  }
+  return map;
+}
+var import_types5, import_util_middleware, httpAuthSchemeMiddleware;
+var init_httpAuthSchemeMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js"() {
+    import_types5 = __toESM(require_dist_cjs());
+    import_util_middleware = __toESM(require_dist_cjs10());
+    httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {
+      const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));
+      const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);
+      const smithyContext = (0, import_util_middleware.getSmithyContext)(context);
+      const failureReasons = [];
+      for (const option of options) {
+        const scheme = authSchemes.get(option.schemeId);
+        if (!scheme) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` was not enabled for this service.`);
+          continue;
+        }
+        const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));
+        if (!identityProvider) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` did not have an IdentityProvider configured.`);
+          continue;
+        }
+        const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};
+        option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);
+        option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);
+        smithyContext.selectedHttpAuthScheme = {
+          httpAuthOption: option,
+          identity: await identityProvider(option.identityProperties),
+          signer: scheme.signer
+        };
+        break;
+      }
+      if (!smithyContext.selectedHttpAuthScheme) {
+        throw new Error(failureReasons.join("\n"));
+      }
+      return next(args);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js
+var httpAuthSchemeEndpointRuleSetMiddlewareOptions, getHttpAuthSchemeEndpointRuleSetPlugin;
+var init_getHttpAuthSchemeEndpointRuleSetPlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js"() {
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeEndpointRuleSetMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: "endpointV2Middleware"
+    };
+    getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js
+var require_dist_cjs12 = __commonJS({
+  "../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      deserializerMiddleware: () => deserializerMiddleware,
+      deserializerMiddlewareOption: () => deserializerMiddlewareOption,
+      getSerdePlugin: () => getSerdePlugin,
+      serializerMiddleware: () => serializerMiddleware,
+      serializerMiddlewareOption: () => serializerMiddlewareOption2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var deserializerMiddleware = /* @__PURE__ */ __name2((options, deserializer) => (next) => async (args) => {
+      const { response } = await next(args);
+      try {
+        const parsed = await deserializer(response, options);
+        return {
+          response,
+          output: parsed
+        };
+      } catch (error) {
+        Object.defineProperty(error, "$response", {
+          value: response
+        });
+        if (!("$metadata" in error)) {
+          const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;
+          error.message += "\n  " + hint;
+          if (typeof error.$responseBodyText !== "undefined") {
+            if (error.$response) {
+              error.$response.body = error.$responseBodyText;
+            }
+          }
+        }
+        throw error;
+      }
+    }, "deserializerMiddleware");
+    var serializerMiddleware = /* @__PURE__ */ __name2((options, serializer) => (next, context) => async (args) => {
+      var _a7;
+      const endpoint = ((_a7 = context.endpointV2) == null ? void 0 : _a7.url) && options.urlParser ? async () => options.urlParser(context.endpointV2.url) : options.endpoint;
+      if (!endpoint) {
+        throw new Error("No valid endpoint provider available.");
+      }
+      const request2 = await serializer(args.input, { ...options, endpoint });
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "serializerMiddleware");
+    var deserializerMiddlewareOption = {
+      name: "deserializerMiddleware",
+      step: "deserialize",
+      tags: ["DESERIALIZER"],
+      override: true
+    };
+    var serializerMiddlewareOption2 = {
+      name: "serializerMiddleware",
+      step: "serialize",
+      tags: ["SERIALIZER"],
+      override: true
+    };
+    function getSerdePlugin(config, serializer, deserializer) {
+      return {
+        applyToStack: (commandStack) => {
+          commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);
+          commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption2);
+        }
+      };
+    }
+    __name2(getSerdePlugin, "getSerdePlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js
+var import_middleware_serde, httpAuthSchemeMiddlewareOptions, getHttpAuthSchemePlugin;
+var init_getHttpAuthSchemePlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js"() {
+    import_middleware_serde = __toESM(require_dist_cjs12());
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde.serializerMiddlewareOption.name
+    };
+    getHttpAuthSchemePlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js
+var init_middleware_http_auth_scheme = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js"() {
+    init_httpAuthSchemeMiddleware();
+    init_getHttpAuthSchemeEndpointRuleSetPlugin();
+    init_getHttpAuthSchemePlugin();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js
+var import_protocol_http, import_types6, import_util_middleware2, defaultErrorHandler, defaultSuccessHandler, httpSigningMiddleware;
+var init_httpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js"() {
+    import_protocol_http = __toESM(require_dist_cjs2());
+    import_types6 = __toESM(require_dist_cjs());
+    import_util_middleware2 = __toESM(require_dist_cjs10());
+    defaultErrorHandler = (signingProperties) => (error) => {
+      throw error;
+    };
+    defaultSuccessHandler = (httpResponse, signingProperties) => {
+    };
+    httpSigningMiddleware = (config) => (next, context) => async (args) => {
+      if (!import_protocol_http.HttpRequest.isInstance(args.request)) {
+        return next(args);
+      }
+      const smithyContext = (0, import_util_middleware2.getSmithyContext)(context);
+      const scheme = smithyContext.selectedHttpAuthScheme;
+      if (!scheme) {
+        throw new Error(`No HttpAuthScheme was selected: unable to sign request`);
+      }
+      const { httpAuthOption: { signingProperties = {} }, identity, signer } = scheme;
+      const output = await next({
+        ...args,
+        request: await signer.sign(args.request, identity, signingProperties)
+      }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));
+      (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);
+      return output;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js
+var httpSigningMiddlewareOptions, getHttpSigningPlugin;
+var init_getHttpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js"() {
+    init_httpSigningMiddleware();
+    httpSigningMiddlewareOptions = {
+      step: "finalizeRequest",
+      tags: ["HTTP_SIGNING"],
+      name: "httpSigningMiddleware",
+      aliases: ["apiKeyMiddleware", "tokenMiddleware", "awsAuthMiddleware"],
+      override: true,
+      relation: "after",
+      toMiddleware: "retryMiddleware"
+    };
+    getHttpSigningPlugin = (config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js
+var init_middleware_http_signing = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js"() {
+    init_httpSigningMiddleware();
+    init_getHttpSigningMiddleware();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/normalizeProvider.js
+var normalizeProvider;
+var init_normalizeProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/normalizeProvider.js"() {
+    normalizeProvider = (input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js
+function createPaginator(ClientCtor, CommandCtor, inputTokenName, outputTokenName, pageSizeTokenName) {
+  return async function* paginateOperation(config, input, ...additionalArguments) {
+    let token = config.startingToken || void 0;
+    let hasNext = true;
+    let page;
+    while (hasNext) {
+      input[inputTokenName] = token;
+      if (pageSizeTokenName) {
+        input[pageSizeTokenName] = input[pageSizeTokenName] ?? config.pageSize;
+      }
+      if (config.client instanceof ClientCtor) {
+        page = await makePagedClientRequest(CommandCtor, config.client, input, ...additionalArguments);
+      } else {
+        throw new Error(`Invalid client, expected instance of ${ClientCtor.name}`);
+      }
+      yield page;
+      const prevToken = token;
+      token = get(page, outputTokenName);
+      hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
+    }
+    return void 0;
+  };
+}
+var makePagedClientRequest, get;
+var init_createPaginator = __esm({
+  "../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js"() {
+    makePagedClientRequest = async (CommandCtor, client, input, ...args) => {
+      return await client.send(new CommandCtor(input), ...args);
+    };
+    get = (fromObject, path23) => {
+      let cursor = fromObject;
+      const pathComponents = path23.split(".");
+      for (const step of pathComponents) {
+        if (!cursor || typeof cursor !== "object") {
+          return void 0;
+        }
+        cursor = cursor[step];
+      }
+      return cursor;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js
+var require_dist_cjs13 = __commonJS({
+  "../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isArrayBuffer: () => isArrayBuffer
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isArrayBuffer = /* @__PURE__ */ __name2((arg) => typeof ArrayBuffer === "function" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === "[object ArrayBuffer]", "isArrayBuffer");
+  }
+});
+
+// ../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js
+var require_dist_cjs14 = __commonJS({
+  "../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromArrayBuffer: () => fromArrayBuffer,
+      fromString: () => fromString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_buffer = require("buffer");
+    var fromArrayBuffer = /* @__PURE__ */ __name2((input, offset = 0, length = input.byteLength - offset) => {
+      if (!(0, import_is_array_buffer.isArrayBuffer)(input)) {
+        throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);
+      }
+      return import_buffer.Buffer.from(input, offset, length);
+    }, "fromArrayBuffer");
+    var fromString = /* @__PURE__ */ __name2((input, encoding) => {
+      if (typeof input !== "string") {
+        throw new TypeError(`The "input" argument must be of type string. Received type ${typeof input} (${input})`);
+      }
+      return encoding ? import_buffer.Buffer.from(input, encoding) : import_buffer.Buffer.from(input);
+    }, "fromString");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js
+var require_fromBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;
+    var fromBase642 = (input) => {
+      if (input.length * 3 % 4 !== 0) {
+        throw new TypeError(`Incorrect padding on base64 string.`);
+      }
+      if (!BASE64_REGEX.exec(input)) {
+        throw new TypeError(`Invalid base64 string.`);
+      }
+      const buffer = (0, util_buffer_from_1.fromString)(input, "base64");
+      return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
+    };
+    exports2.fromBase64 = fromBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-utf8/dist-cjs/index.js
+var require_dist_cjs15 = __commonJS({
+  "../../../node_modules/@smithy/util-utf8/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromUtf8: () => fromUtf8,
+      toUint8Array: () => toUint8Array,
+      toUtf8: () => toUtf8
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var fromUtf8 = /* @__PURE__ */ __name2((input) => {
+      const buf = (0, import_util_buffer_from.fromString)(input, "utf8");
+      return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+    }, "fromUtf8");
+    var toUint8Array = /* @__PURE__ */ __name2((data) => {
+      if (typeof data === "string") {
+        return fromUtf8(data);
+      }
+      if (ArrayBuffer.isView(data)) {
+        return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+      }
+      return new Uint8Array(data);
+    }, "toUint8Array");
+    var toUtf8 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "string") {
+        return input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("utf8");
+    }, "toUtf8");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js
+var require_toBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.toBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var util_utf8_1 = require_dist_cjs15();
+    var toBase642 = (_input) => {
+      let input;
+      if (typeof _input === "string") {
+        input = (0, util_utf8_1.fromUtf8)(_input);
+      } else {
+        input = _input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("base64");
+    };
+    exports2.toBase64 = toBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/index.js
+var require_dist_cjs16 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromBase64(), module2.exports);
+    __reExport2(src_exports, require_toBase64(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js
+var require_getAwsChunkedEncodingStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getAwsChunkedEncodingStream = void 0;
+    var stream_1 = require("stream");
+    var getAwsChunkedEncodingStream2 = (readableStream, options) => {
+      const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;
+      const checksumRequired = base64Encoder !== void 0 && checksumAlgorithmFn !== void 0 && checksumLocationName !== void 0 && streamHasher !== void 0;
+      const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : void 0;
+      const awsChunkedEncodingStream = new stream_1.Readable({ read: () => {
+      } });
+      readableStream.on("data", (data) => {
+        const length = bodyLengthChecker(data) || 0;
+        awsChunkedEncodingStream.push(`${length.toString(16)}\r
+`);
+        awsChunkedEncodingStream.push(data);
+        awsChunkedEncodingStream.push("\r\n");
+      });
+      readableStream.on("end", async () => {
+        awsChunkedEncodingStream.push(`0\r
+`);
+        if (checksumRequired) {
+          const checksum = base64Encoder(await digest);
+          awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\r
+`);
+          awsChunkedEncodingStream.push(`\r
+`);
+        }
+        awsChunkedEncodingStream.push(null);
+      });
+      return awsChunkedEncodingStream;
+    };
+    exports2.getAwsChunkedEncodingStream = getAwsChunkedEncodingStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js
+var require_dist_cjs17 = __commonJS({
+  "../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      escapeUri: () => escapeUri,
+      escapeUriPath: () => escapeUriPath
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var escapeUri = /* @__PURE__ */ __name2((uri) => (
+      // AWS percent-encodes some extra non-standard characters in a URI
+      encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode)
+    ), "escapeUri");
+    var hexEncode = /* @__PURE__ */ __name2((c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, "hexEncode");
+    var escapeUriPath = /* @__PURE__ */ __name2((uri) => uri.split("/").map(escapeUri).join("/"), "escapeUriPath");
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js
+var require_dist_cjs18 = __commonJS({
+  "../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      buildQueryString: () => buildQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_uri_escape = require_dist_cjs17();
+    function buildQueryString(query) {
+      const parts = [];
+      for (let key of Object.keys(query).sort()) {
+        const value = query[key];
+        key = (0, import_util_uri_escape.escapeUri)(key);
+        if (Array.isArray(value)) {
+          for (let i = 0, iLen = value.length; i < iLen; i++) {
+            parts.push(`${key}=${(0, import_util_uri_escape.escapeUri)(value[i])}`);
+          }
+        } else {
+          let qsEntry = key;
+          if (value || typeof value === "string") {
+            qsEntry += `=${(0, import_util_uri_escape.escapeUri)(value)}`;
+          }
+          parts.push(qsEntry);
+        }
+      }
+      return parts.join("&");
+    }
+    __name2(buildQueryString, "buildQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js
+var require_dist_cjs19 = __commonJS({
+  "../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_REQUEST_TIMEOUT: () => DEFAULT_REQUEST_TIMEOUT,
+      NodeHttp2Handler: () => NodeHttp2Handler,
+      NodeHttpHandler: () => NodeHttpHandler,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    var import_http2 = require("http");
+    var import_https = require("https");
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "EPIPE", "ETIMEDOUT"];
+    var getTransformedHeaders = /* @__PURE__ */ __name2((headers) => {
+      const transformedHeaders = {};
+      for (const name of Object.keys(headers)) {
+        const headerValues = headers[name];
+        transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(",") : headerValues;
+      }
+      return transformedHeaders;
+    }, "getTransformedHeaders");
+    var timing = {
+      setTimeout: (cb, ms) => setTimeout(cb, ms),
+      clearTimeout: (timeoutId) => clearTimeout(timeoutId)
+    };
+    var DEFER_EVENT_LISTENER_TIME = 1e3;
+    var setConnectionTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      if (!timeoutInMs) {
+        return -1;
+      }
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeoutId = timing.setTimeout(() => {
+          request2.destroy();
+          reject(
+            Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {
+              name: "TimeoutError"
+            })
+          );
+        }, timeoutInMs - offset);
+        const doWithSocket = /* @__PURE__ */ __name2((socket) => {
+          if (socket == null ? void 0 : socket.connecting) {
+            socket.on("connect", () => {
+              timing.clearTimeout(timeoutId);
+            });
+          } else {
+            timing.clearTimeout(timeoutId);
+          }
+        }, "doWithSocket");
+        if (request2.socket) {
+          doWithSocket(request2.socket);
+        } else {
+          request2.on("socket", doWithSocket);
+        }
+      }, "registerTimeout");
+      if (timeoutInMs < 2e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(registerTimeout.bind(null, DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);
+    }, "setConnectionTimeout");
+    var DEFER_EVENT_LISTENER_TIME2 = 3e3;
+    var setSocketKeepAlive = /* @__PURE__ */ __name2((request2, { keepAlive, keepAliveMsecs }, deferTimeMs = DEFER_EVENT_LISTENER_TIME2) => {
+      if (keepAlive !== true) {
+        return -1;
+      }
+      const registerListener = /* @__PURE__ */ __name2(() => {
+        if (request2.socket) {
+          request2.socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+        } else {
+          request2.on("socket", (socket) => {
+            socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+          });
+        }
+      }, "registerListener");
+      if (deferTimeMs === 0) {
+        registerListener();
+        return 0;
+      }
+      return timing.setTimeout(registerListener, deferTimeMs);
+    }, "setSocketKeepAlive");
+    var DEFER_EVENT_LISTENER_TIME3 = 3e3;
+    var setSocketTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeout = timeoutInMs - offset;
+        const onTimeout2 = /* @__PURE__ */ __name2(() => {
+          request2.destroy();
+          reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: "TimeoutError" }));
+        }, "onTimeout");
+        if (request2.socket) {
+          request2.socket.setTimeout(timeout, onTimeout2);
+        } else {
+          request2.setTimeout(timeout, onTimeout2);
+        }
+      }, "registerTimeout");
+      if (0 < timeoutInMs && timeoutInMs < 6e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(
+        registerTimeout.bind(null, timeoutInMs === 0 ? 0 : DEFER_EVENT_LISTENER_TIME3),
+        DEFER_EVENT_LISTENER_TIME3
+      );
+    }, "setSocketTimeout");
+    var import_stream = require("stream");
+    var MIN_WAIT_TIME = 1e3;
+    async function writeRequestBody(httpRequest, request2, maxContinueTimeoutMs = MIN_WAIT_TIME) {
+      const headers = request2.headers ?? {};
+      const expect = headers["Expect"] || headers["expect"];
+      let timeoutId = -1;
+      let sendBody = true;
+      if (expect === "100-continue") {
+        sendBody = await Promise.race([
+          new Promise((resolve6) => {
+            timeoutId = Number(timing.setTimeout(resolve6, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));
+          }),
+          new Promise((resolve6) => {
+            httpRequest.on("continue", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(true);
+            });
+            httpRequest.on("response", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+            httpRequest.on("error", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+          })
+        ]);
+      }
+      if (sendBody) {
+        writeBody(httpRequest, request2.body);
+      }
+    }
+    __name2(writeRequestBody, "writeRequestBody");
+    function writeBody(httpRequest, body) {
+      if (body instanceof import_stream.Readable) {
+        body.pipe(httpRequest);
+        return;
+      }
+      if (body) {
+        if (Buffer.isBuffer(body) || typeof body === "string") {
+          httpRequest.end(body);
+          return;
+        }
+        const uint8 = body;
+        if (typeof uint8 === "object" && uint8.buffer && typeof uint8.byteOffset === "number" && typeof uint8.byteLength === "number") {
+          httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));
+          return;
+        }
+        httpRequest.end(Buffer.from(body));
+        return;
+      }
+      httpRequest.end();
+    }
+    __name2(writeBody, "writeBody");
+    var DEFAULT_REQUEST_TIMEOUT = 0;
+    var _NodeHttpHandler = class _NodeHttpHandler2 {
+      constructor(options) {
+        this.socketWarningTimestamp = 0;
+        this.metadata = { handlerProtocol: "http/1.1" };
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((_options) => {
+              resolve6(this.resolveDefaultConfig(_options));
+            }).catch(reject);
+          } else {
+            resolve6(this.resolveDefaultConfig(options));
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttpHandler2(instanceOrOptions);
+      }
+      /**
+       * @internal
+       *
+       * @param agent - http(s) agent in use by the NodeHttpHandler instance.
+       * @param socketWarningTimestamp - last socket usage check timestamp.
+       * @param logger - channel for the warning.
+       * @returns timestamp of last emitted warning.
+       */
+      static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {
+        var _a7, _b, _c;
+        const { sockets, requests, maxSockets } = agent;
+        if (typeof maxSockets !== "number" || maxSockets === Infinity) {
+          return socketWarningTimestamp;
+        }
+        const interval = 15e3;
+        if (Date.now() - interval < socketWarningTimestamp) {
+          return socketWarningTimestamp;
+        }
+        if (sockets && requests) {
+          for (const origin in sockets) {
+            const socketsInUse = ((_a7 = sockets[origin]) == null ? void 0 : _a7.length) ?? 0;
+            const requestsEnqueued = ((_b = requests[origin]) == null ? void 0 : _b.length) ?? 0;
+            if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {
+              (_c = logger == null ? void 0 : logger.warn) == null ? void 0 : _c.call(
+                logger,
+                `@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.
+See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html
+or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`
+              );
+              return Date.now();
+            }
+          }
+        }
+        return socketWarningTimestamp;
+      }
+      resolveDefaultConfig(options) {
+        const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {};
+        const keepAlive = true;
+        const maxSockets = 50;
+        return {
+          connectionTimeout,
+          requestTimeout: requestTimeout ?? socketTimeout,
+          httpAgent: (() => {
+            if (httpAgent instanceof import_http2.Agent || typeof (httpAgent == null ? void 0 : httpAgent.destroy) === "function") {
+              return httpAgent;
+            }
+            return new import_http2.Agent({ keepAlive, maxSockets, ...httpAgent });
+          })(),
+          httpsAgent: (() => {
+            if (httpsAgent instanceof import_https.Agent || typeof (httpsAgent == null ? void 0 : httpsAgent.destroy) === "function") {
+              return httpsAgent;
+            }
+            return new import_https.Agent({ keepAlive, maxSockets, ...httpsAgent });
+          })(),
+          logger: console
+        };
+      }
+      destroy() {
+        var _a7, _b, _c, _d;
+        (_b = (_a7 = this.config) == null ? void 0 : _a7.httpAgent) == null ? void 0 : _b.destroy();
+        (_d = (_c = this.config) == null ? void 0 : _c.httpsAgent) == null ? void 0 : _d.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        return new Promise((_resolve2, _reject) => {
+          let writeRequestBodyPromise = void 0;
+          const timeouts = [];
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _reject(arg);
+          }, "reject");
+          if (!this.config) {
+            throw new Error("Node HTTP request handler config is not resolved");
+          }
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const isSSL = request2.protocol === "https:";
+          const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;
+          timeouts.push(
+            timing.setTimeout(
+              () => {
+                this.socketWarningTimestamp = _NodeHttpHandler2.checkSocketUsage(
+                  agent,
+                  this.socketWarningTimestamp,
+                  this.config.logger
+                );
+              },
+              this.config.socketAcquisitionWarningTimeout ?? (this.config.requestTimeout ?? 2e3) + (this.config.connectionTimeout ?? 1e3)
+            )
+          );
+          const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+          let auth = void 0;
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}`;
+          }
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          let hostname = request2.hostname ?? "";
+          if (hostname[0] === "[" && hostname.endsWith("]")) {
+            hostname = request2.hostname.slice(1, -1);
+          } else {
+            hostname = request2.hostname;
+          }
+          const nodeHttpsOptions = {
+            headers: request2.headers,
+            host: hostname,
+            method: request2.method,
+            path: path23,
+            port: request2.port,
+            agent,
+            auth
+          };
+          const requestFunc = isSSL ? import_https.request : import_http2.request;
+          const req = requestFunc(nodeHttpsOptions, (res) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: res.statusCode || -1,
+              reason: res.statusMessage,
+              headers: getTransformedHeaders(res.headers),
+              body: res
+            });
+            resolve6({ response: httpResponse });
+          });
+          req.on("error", (err) => {
+            if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) {
+              reject(Object.assign(err, { name: "TimeoutError" }));
+            } else {
+              reject(err);
+            }
+          });
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.destroy();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              reject(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          timeouts.push(setConnectionTimeout(req, reject, this.config.connectionTimeout));
+          timeouts.push(setSocketTimeout(req, reject, this.config.requestTimeout));
+          const httpAgent = nodeHttpsOptions.agent;
+          if (typeof httpAgent === "object" && "keepAlive" in httpAgent) {
+            timeouts.push(
+              setSocketKeepAlive(req, {
+                // @ts-expect-error keepAlive is not public on httpAgent.
+                keepAlive: httpAgent.keepAlive,
+                // @ts-expect-error keepAliveMsecs is not public on httpAgent.
+                keepAliveMsecs: httpAgent.keepAliveMsecs
+              })
+            );
+          }
+          writeRequestBodyPromise = writeRequestBody(req, request2, this.config.requestTimeout).catch((e) => {
+            timeouts.forEach(timing.clearTimeout);
+            return _reject(e);
+          });
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_NodeHttpHandler, "NodeHttpHandler");
+    var NodeHttpHandler = _NodeHttpHandler;
+    var import_http22 = require("http2");
+    var import_http23 = __toESM2(require("http2"));
+    var _NodeHttp2ConnectionPool = class _NodeHttp2ConnectionPool {
+      constructor(sessions) {
+        this.sessions = [];
+        this.sessions = sessions ?? [];
+      }
+      poll() {
+        if (this.sessions.length > 0) {
+          return this.sessions.shift();
+        }
+      }
+      offerLast(session) {
+        this.sessions.push(session);
+      }
+      contains(session) {
+        return this.sessions.includes(session);
+      }
+      remove(session) {
+        this.sessions = this.sessions.filter((s) => s !== session);
+      }
+      [Symbol.iterator]() {
+        return this.sessions[Symbol.iterator]();
+      }
+      destroy(connection) {
+        for (const session of this.sessions) {
+          if (session === connection) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+          }
+        }
+      }
+    };
+    __name2(_NodeHttp2ConnectionPool, "NodeHttp2ConnectionPool");
+    var NodeHttp2ConnectionPool = _NodeHttp2ConnectionPool;
+    var _NodeHttp2ConnectionManager = class _NodeHttp2ConnectionManager {
+      constructor(config) {
+        this.sessionCache = /* @__PURE__ */ new Map();
+        this.config = config;
+        if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {
+          throw new RangeError("maxConcurrency must be greater than zero.");
+        }
+      }
+      lease(requestContext, connectionConfiguration) {
+        const url2 = this.getUrlString(requestContext);
+        const existingPool = this.sessionCache.get(url2);
+        if (existingPool) {
+          const existingSession = existingPool.poll();
+          if (existingSession && !this.config.disableConcurrency) {
+            return existingSession;
+          }
+        }
+        const session = import_http23.default.connect(url2);
+        if (this.config.maxConcurrency) {
+          session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => {
+            if (err) {
+              throw new Error(
+                "Fail to set maxConcurrentStreams to " + this.config.maxConcurrency + "when creating new session for " + requestContext.destination.toString()
+              );
+            }
+          });
+        }
+        session.unref();
+        const destroySessionCb = /* @__PURE__ */ __name2(() => {
+          session.destroy();
+          this.deleteSession(url2, session);
+        }, "destroySessionCb");
+        session.on("goaway", destroySessionCb);
+        session.on("error", destroySessionCb);
+        session.on("frameError", destroySessionCb);
+        session.on("close", () => this.deleteSession(url2, session));
+        if (connectionConfiguration.requestTimeout) {
+          session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb);
+        }
+        const connectionPool = this.sessionCache.get(url2) || new NodeHttp2ConnectionPool();
+        connectionPool.offerLast(session);
+        this.sessionCache.set(url2, connectionPool);
+        return session;
+      }
+      /**
+       * Delete a session from the connection pool.
+       * @param authority The authority of the session to delete.
+       * @param session The session to delete.
+       */
+      deleteSession(authority, session) {
+        const existingConnectionPool = this.sessionCache.get(authority);
+        if (!existingConnectionPool) {
+          return;
+        }
+        if (!existingConnectionPool.contains(session)) {
+          return;
+        }
+        existingConnectionPool.remove(session);
+        this.sessionCache.set(authority, existingConnectionPool);
+      }
+      release(requestContext, session) {
+        var _a7;
+        const cacheKey = this.getUrlString(requestContext);
+        (_a7 = this.sessionCache.get(cacheKey)) == null ? void 0 : _a7.offerLast(session);
+      }
+      destroy() {
+        for (const [key, connectionPool] of this.sessionCache) {
+          for (const session of connectionPool) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+            connectionPool.remove(session);
+          }
+          this.sessionCache.delete(key);
+        }
+      }
+      setMaxConcurrentStreams(maxConcurrentStreams) {
+        if (maxConcurrentStreams && maxConcurrentStreams <= 0) {
+          throw new RangeError("maxConcurrentStreams must be greater than zero.");
+        }
+        this.config.maxConcurrency = maxConcurrentStreams;
+      }
+      setDisableConcurrentStreams(disableConcurrentStreams) {
+        this.config.disableConcurrency = disableConcurrentStreams;
+      }
+      getUrlString(request2) {
+        return request2.destination.toString();
+      }
+    };
+    __name2(_NodeHttp2ConnectionManager, "NodeHttp2ConnectionManager");
+    var NodeHttp2ConnectionManager = _NodeHttp2ConnectionManager;
+    var _NodeHttp2Handler = class _NodeHttp2Handler2 {
+      constructor(options) {
+        this.metadata = { handlerProtocol: "h2" };
+        this.connectionManager = new NodeHttp2ConnectionManager({});
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((opts) => {
+              resolve6(opts || {});
+            }).catch(reject);
+          } else {
+            resolve6(options || {});
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttp2Handler2(instanceOrOptions);
+      }
+      destroy() {
+        this.connectionManager.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+          this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false);
+          if (this.config.maxConcurrentStreams) {
+            this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams);
+          }
+        }
+        const { requestTimeout, disableConcurrentStreams } = this.config;
+        return new Promise((_resolve2, _reject) => {
+          var _a7;
+          let fulfilled = false;
+          let writeRequestBodyPromise = void 0;
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _reject(arg);
+          }, "reject");
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            fulfilled = true;
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const { hostname, method, port, protocol, query } = request2;
+          let auth = "";
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}@`;
+          }
+          const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : ""}`;
+          const requestContext = { destination: new URL(authority) };
+          const session = this.connectionManager.lease(requestContext, {
+            requestTimeout: (_a7 = this.config) == null ? void 0 : _a7.sessionTimeout,
+            disableConcurrentStreams: disableConcurrentStreams || false
+          });
+          const rejectWithDestroy = /* @__PURE__ */ __name2((err) => {
+            if (disableConcurrentStreams) {
+              this.destroySession(session);
+            }
+            fulfilled = true;
+            reject(err);
+          }, "rejectWithDestroy");
+          const queryString = (0, import_querystring_builder.buildQueryString)(query || {});
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          const req = session.request({
+            ...request2.headers,
+            [import_http22.constants.HTTP2_HEADER_PATH]: path23,
+            [import_http22.constants.HTTP2_HEADER_METHOD]: method
+          });
+          session.ref();
+          req.on("response", (headers) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: headers[":status"] || -1,
+              headers: getTransformedHeaders(headers),
+              body: req
+            });
+            fulfilled = true;
+            resolve6({ response: httpResponse });
+            if (disableConcurrentStreams) {
+              session.close();
+              this.connectionManager.deleteSession(authority, session);
+            }
+          });
+          if (requestTimeout) {
+            req.setTimeout(requestTimeout, () => {
+              req.close();
+              const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`);
+              timeoutError.name = "TimeoutError";
+              rejectWithDestroy(timeoutError);
+            });
+          }
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.close();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              rejectWithDestroy(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          req.on("frameError", (type, code, id) => {
+            rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`));
+          });
+          req.on("error", rejectWithDestroy);
+          req.on("aborted", () => {
+            rejectWithDestroy(
+              new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`)
+            );
+          });
+          req.on("close", () => {
+            session.unref();
+            if (disableConcurrentStreams) {
+              session.destroy();
+            }
+            if (!fulfilled) {
+              rejectWithDestroy(new Error("Unexpected error: http2 request did not get a response"));
+            }
+          });
+          writeRequestBodyPromise = writeRequestBody(req, request2, requestTimeout);
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+      /**
+       * Destroys a session.
+       * @param session The session to destroy.
+       */
+      destroySession(session) {
+        if (!session.destroyed) {
+          session.destroy();
+        }
+      }
+    };
+    __name2(_NodeHttp2Handler, "NodeHttp2Handler");
+    var NodeHttp2Handler = _NodeHttp2Handler;
+    var _Collector = class _Collector extends import_stream.Writable {
+      constructor() {
+        super(...arguments);
+        this.bufferedBytes = [];
+      }
+      _write(chunk, encoding, callback) {
+        this.bufferedBytes.push(chunk);
+        callback();
+      }
+    };
+    __name2(_Collector, "Collector");
+    var Collector = _Collector;
+    var streamCollector = /* @__PURE__ */ __name2((stream) => {
+      if (isReadableStreamInstance(stream)) {
+        return collectReadableStream(stream);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));
+          resolve6(bytes);
+        });
+      });
+    }, "streamCollector");
+    var isReadableStreamInstance = /* @__PURE__ */ __name2((stream) => typeof ReadableStream === "function" && stream instanceof ReadableStream, "isReadableStreamInstance");
+    async function collectReadableStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectReadableStream, "collectReadableStream");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js
+var require_dist_cjs20 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      FetchHttpHandler: () => FetchHttpHandler,
+      keepAliveSupport: () => keepAliveSupport,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    function createRequest(url2, requestOptions) {
+      return new Request(url2, requestOptions);
+    }
+    __name2(createRequest, "createRequest");
+    function requestTimeout(timeoutInMs = 0) {
+      return new Promise((resolve6, reject) => {
+        if (timeoutInMs) {
+          setTimeout(() => {
+            const timeoutError = new Error(`Request did not complete within ${timeoutInMs} ms`);
+            timeoutError.name = "TimeoutError";
+            reject(timeoutError);
+          }, timeoutInMs);
+        }
+      });
+    }
+    __name2(requestTimeout, "requestTimeout");
+    var keepAliveSupport = {
+      supported: void 0
+    };
+    var _FetchHttpHandler = class _FetchHttpHandler2 {
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _FetchHttpHandler2(instanceOrOptions);
+      }
+      constructor(options) {
+        if (typeof options === "function") {
+          this.configProvider = options().then((opts) => opts || {});
+        } else {
+          this.config = options ?? {};
+          this.configProvider = Promise.resolve(this.config);
+        }
+        if (keepAliveSupport.supported === void 0) {
+          keepAliveSupport.supported = Boolean(
+            typeof Request !== "undefined" && "keepalive" in createRequest("https://[::1]")
+          );
+        }
+      }
+      destroy() {
+      }
+      async handle(request2, { abortSignal } = {}) {
+        var _a7;
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        const requestTimeoutInMs = this.config.requestTimeout;
+        const keepAlive = this.config.keepAlive === true;
+        const credentials = this.config.credentials;
+        if (abortSignal == null ? void 0 : abortSignal.aborted) {
+          const abortError = new Error("Request aborted");
+          abortError.name = "AbortError";
+          return Promise.reject(abortError);
+        }
+        let path23 = request2.path;
+        const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+        if (queryString) {
+          path23 += `?${queryString}`;
+        }
+        if (request2.fragment) {
+          path23 += `#${request2.fragment}`;
+        }
+        let auth = "";
+        if (request2.username != null || request2.password != null) {
+          const username = request2.username ?? "";
+          const password = request2.password ?? "";
+          auth = `${username}:${password}@`;
+        }
+        const { port, method } = request2;
+        const url2 = `${request2.protocol}//${auth}${request2.hostname}${port ? `:${port}` : ""}${path23}`;
+        const body = method === "GET" || method === "HEAD" ? void 0 : request2.body;
+        const requestOptions = {
+          body,
+          headers: new Headers(request2.headers),
+          method,
+          credentials
+        };
+        if ((_a7 = this.config) == null ? void 0 : _a7.cache) {
+          requestOptions.cache = this.config.cache;
+        }
+        if (body) {
+          requestOptions.duplex = "half";
+        }
+        if (typeof AbortController !== "undefined") {
+          requestOptions.signal = abortSignal;
+        }
+        if (keepAliveSupport.supported) {
+          requestOptions.keepalive = keepAlive;
+        }
+        if (typeof this.config.requestInit === "function") {
+          Object.assign(requestOptions, this.config.requestInit(request2));
+        }
+        let removeSignalEventListener = /* @__PURE__ */ __name2(() => {
+        }, "removeSignalEventListener");
+        const fetchRequest = createRequest(url2, requestOptions);
+        const raceOfPromises = [
+          fetch(fetchRequest).then((response) => {
+            const fetchHeaders = response.headers;
+            const transformedHeaders = {};
+            for (const pair of fetchHeaders.entries()) {
+              transformedHeaders[pair[0]] = pair[1];
+            }
+            const hasReadableStream = response.body != void 0;
+            if (!hasReadableStream) {
+              return response.blob().then((body2) => ({
+                response: new import_protocol_http8.HttpResponse({
+                  headers: transformedHeaders,
+                  reason: response.statusText,
+                  statusCode: response.status,
+                  body: body2
+                })
+              }));
+            }
+            return {
+              response: new import_protocol_http8.HttpResponse({
+                headers: transformedHeaders,
+                reason: response.statusText,
+                statusCode: response.status,
+                body: response.body
+              })
+            };
+          }),
+          requestTimeout(requestTimeoutInMs)
+        ];
+        if (abortSignal) {
+          raceOfPromises.push(
+            new Promise((resolve6, reject) => {
+              const onAbort = /* @__PURE__ */ __name2(() => {
+                const abortError = new Error("Request aborted");
+                abortError.name = "AbortError";
+                reject(abortError);
+              }, "onAbort");
+              if (typeof abortSignal.addEventListener === "function") {
+                const signal = abortSignal;
+                signal.addEventListener("abort", onAbort, { once: true });
+                removeSignalEventListener = /* @__PURE__ */ __name2(() => signal.removeEventListener("abort", onAbort), "removeSignalEventListener");
+              } else {
+                abortSignal.onabort = onAbort;
+              }
+            })
+          );
+        }
+        return Promise.race(raceOfPromises).finally(removeSignalEventListener);
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          config[key] = value;
+          return config;
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_FetchHttpHandler, "FetchHttpHandler");
+    var FetchHttpHandler = _FetchHttpHandler;
+    var import_util_base64 = require_dist_cjs16();
+    var streamCollector = /* @__PURE__ */ __name2(async (stream) => {
+      var _a7;
+      if (typeof Blob === "function" && stream instanceof Blob || ((_a7 = stream.constructor) == null ? void 0 : _a7.name) === "Blob") {
+        if (Blob.prototype.arrayBuffer !== void 0) {
+          return new Uint8Array(await stream.arrayBuffer());
+        }
+        return collectBlob(stream);
+      }
+      return collectStream(stream);
+    }, "streamCollector");
+    async function collectBlob(blob) {
+      const base64 = await readToBase64(blob);
+      const arrayBuffer = (0, import_util_base64.fromBase64)(base64);
+      return new Uint8Array(arrayBuffer);
+    }
+    __name2(collectBlob, "collectBlob");
+    async function collectStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectStream, "collectStream");
+    function readToBase64(blob) {
+      return new Promise((resolve6, reject) => {
+        const reader = new FileReader();
+        reader.onloadend = () => {
+          if (reader.readyState !== 2) {
+            return reject(new Error("Reader aborted too early"));
+          }
+          const result = reader.result ?? "";
+          const commaIndex = result.indexOf(",");
+          const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;
+          resolve6(result.substring(dataOffset));
+        };
+        reader.onabort = () => reject(new Error("Read aborted"));
+        reader.onerror = () => reject(reader.error);
+        reader.readAsDataURL(blob);
+      });
+    }
+    __name2(readToBase64, "readToBase64");
+  }
+});
+
+// ../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js
+var require_dist_cjs21 = __commonJS({
+  "../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromHex: () => fromHex,
+      toHex: () => toHex
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var SHORT_TO_HEX = {};
+    var HEX_TO_SHORT = {};
+    for (let i = 0; i < 256; i++) {
+      let encodedByte = i.toString(16).toLowerCase();
+      if (encodedByte.length === 1) {
+        encodedByte = `0${encodedByte}`;
+      }
+      SHORT_TO_HEX[i] = encodedByte;
+      HEX_TO_SHORT[encodedByte] = i;
+    }
+    function fromHex(encoded) {
+      if (encoded.length % 2 !== 0) {
+        throw new Error("Hex encoded strings must have an even number length");
+      }
+      const out = new Uint8Array(encoded.length / 2);
+      for (let i = 0; i < encoded.length; i += 2) {
+        const encodedByte = encoded.slice(i, i + 2).toLowerCase();
+        if (encodedByte in HEX_TO_SHORT) {
+          out[i / 2] = HEX_TO_SHORT[encodedByte];
+        } else {
+          throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);
+        }
+      }
+      return out;
+    }
+    __name2(fromHex, "fromHex");
+    function toHex(bytes) {
+      let out = "";
+      for (let i = 0; i < bytes.byteLength; i++) {
+        out += SHORT_TO_HEX[bytes[i]];
+      }
+      return out;
+    }
+    __name2(toHex, "toHex");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js
+var require_stream_type_check = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isBlob = exports2.isReadableStream = void 0;
+    var isReadableStream2 = (stream) => {
+      var _a7;
+      return typeof ReadableStream === "function" && (((_a7 = stream === null || stream === void 0 ? void 0 : stream.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === ReadableStream.name || stream instanceof ReadableStream);
+    };
+    exports2.isReadableStream = isReadableStream2;
+    var isBlob2 = (blob) => {
+      var _a7;
+      return typeof Blob === "function" && (((_a7 = blob === null || blob === void 0 ? void 0 : blob.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === Blob.name || blob instanceof Blob);
+    };
+    exports2.isBlob = isBlob2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js
+var require_sdk_stream_mixin_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var fetch_http_handler_1 = require_dist_cjs20();
+    var util_base64_1 = require_dist_cjs16();
+    var util_hex_encoding_1 = require_dist_cjs21();
+    var util_utf8_1 = require_dist_cjs15();
+    var stream_type_check_1 = require_stream_type_check();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!isBlobInstance(stream) && !(0, stream_type_check_1.isReadableStream)(stream)) {
+        const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+        throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, fetch_http_handler_1.streamCollector)(stream);
+      };
+      const blobToWebStream = (blob) => {
+        if (typeof blob.stream !== "function") {
+          throw new Error("Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\nIf you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body");
+        }
+        return blob.stream();
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === "base64") {
+            return (0, util_base64_1.toBase64)(buf);
+          } else if (encoding === "hex") {
+            return (0, util_hex_encoding_1.toHex)(buf);
+          } else if (encoding === void 0 || encoding === "utf8" || encoding === "utf-8") {
+            return (0, util_utf8_1.toUtf8)(buf);
+          } else if (typeof TextDecoder === "function") {
+            return new TextDecoder(encoding).decode(buf);
+          } else {
+            throw new Error("TextDecoder is not available, please make sure polyfill is provided.");
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          transformed = true;
+          if (isBlobInstance(stream)) {
+            return blobToWebStream(stream);
+          } else if ((0, stream_type_check_1.isReadableStream)(stream)) {
+            return stream;
+          } else {
+            throw new Error(`Cannot transform payload to web stream, got ${stream}`);
+          }
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+    var isBlobInstance = (stream) => typeof Blob === "function" && stream instanceof Blob;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js
+var require_sdk_stream_mixin = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_buffer_from_1 = require_dist_cjs14();
+    var stream_1 = require("stream");
+    var sdk_stream_mixin_browser_1 = require_sdk_stream_mixin_browser();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!(stream instanceof stream_1.Readable)) {
+        try {
+          return (0, sdk_stream_mixin_browser_1.sdkStreamMixin)(stream);
+        } catch (e) {
+          const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+          throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);
+        }
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, node_http_handler_1.streamCollector)(stream);
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === void 0 || Buffer.isEncoding(encoding)) {
+            return (0, util_buffer_from_1.fromArrayBuffer)(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);
+          } else {
+            const decoder2 = new TextDecoder(encoding);
+            return decoder2.decode(buf);
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          if (stream.readableFlowing !== null) {
+            throw new Error("The stream has been consumed by other callbacks.");
+          }
+          if (typeof stream_1.Readable.toWeb !== "function") {
+            throw new Error("Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.");
+          }
+          transformed = true;
+          return stream_1.Readable.toWeb(stream);
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js
+var require_splitStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    async function splitStream2(stream) {
+      if (typeof stream.stream === "function") {
+        stream = stream.stream();
+      }
+      const readableStream = stream;
+      return readableStream.tee();
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js
+var require_splitStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    var stream_1 = require("stream");
+    var splitStream_browser_1 = require_splitStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    async function splitStream2(stream) {
+      if ((0, stream_type_check_1.isReadableStream)(stream) || (0, stream_type_check_1.isBlob)(stream)) {
+        return (0, splitStream_browser_1.splitStream)(stream);
+      }
+      const stream1 = new stream_1.PassThrough();
+      const stream2 = new stream_1.PassThrough();
+      stream.pipe(stream1);
+      stream.pipe(stream2);
+      return [stream1, stream2];
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js
+var require_headStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    async function headStream2(stream, bytes) {
+      var _a7;
+      let byteLengthCounter = 0;
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          byteLengthCounter += (_a7 = value === null || value === void 0 ? void 0 : value.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        }
+        if (byteLengthCounter >= bytes) {
+          break;
+        }
+        isDone = done;
+      }
+      reader.releaseLock();
+      const collected = new Uint8Array(Math.min(bytes, byteLengthCounter));
+      let offset = 0;
+      for (const chunk of chunks) {
+        if (chunk.byteLength > collected.byteLength - offset) {
+          collected.set(chunk.subarray(0, collected.byteLength - offset), offset);
+          break;
+        } else {
+          collected.set(chunk, offset);
+        }
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    exports2.headStream = headStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js
+var require_headStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    var stream_1 = require("stream");
+    var headStream_browser_1 = require_headStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    var headStream2 = (stream, bytes) => {
+      if ((0, stream_type_check_1.isReadableStream)(stream)) {
+        return (0, headStream_browser_1.headStream)(stream, bytes);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        collector.limit = bytes;
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes2 = new Uint8Array(Buffer.concat(this.buffers));
+          resolve6(bytes2);
+        });
+      });
+    };
+    exports2.headStream = headStream2;
+    var Collector = class extends stream_1.Writable {
+      constructor() {
+        super(...arguments);
+        this.buffers = [];
+        this.limit = Infinity;
+        this.bytesBuffered = 0;
+      }
+      _write(chunk, encoding, callback) {
+        var _a7;
+        this.buffers.push(chunk);
+        this.bytesBuffered += (_a7 = chunk.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        if (this.bytesBuffered >= this.limit) {
+          const excess = this.bytesBuffered - this.limit;
+          const tailBuffer = this.buffers[this.buffers.length - 1];
+          this.buffers[this.buffers.length - 1] = tailBuffer.subarray(0, tailBuffer.byteLength - excess);
+          this.emit("finish");
+        }
+        callback();
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js
+var require_ChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_1 = require("stream");
+    var ChecksumStream2 = class extends stream_1.Duplex {
+      constructor({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) {
+        var _a7, _b;
+        super();
+        if (typeof source.pipe === "function") {
+          this.source = source;
+        } else {
+          throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+        }
+        this.base64Encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+        this.expectedChecksum = expectedChecksum;
+        this.checksum = checksum;
+        this.checksumSourceLocation = checksumSourceLocation;
+        this.source.pipe(this);
+      }
+      _read(size) {
+      }
+      _write(chunk, encoding, callback) {
+        try {
+          this.checksum.update(chunk);
+          this.push(chunk);
+        } catch (e) {
+          return callback(e);
+        }
+        return callback();
+      }
+      async _final(callback) {
+        try {
+          const digest = await this.checksum.digest();
+          const received = this.base64Encoder(digest);
+          if (this.expectedChecksum !== received) {
+            return callback(new Error(`Checksum mismatch: expected "${this.expectedChecksum}" but received "${received}" in response header "${this.checksumSourceLocation}".`));
+          }
+        } catch (e) {
+          return callback(e);
+        }
+        this.push(null);
+        return callback();
+      }
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js
+var require_ChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var ReadableStreamRef = typeof ReadableStream === "function" ? ReadableStream : function() {
+    };
+    var ChecksumStream2 = class extends ReadableStreamRef {
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js
+var require_createChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_browser_1 = require_ChecksumStream_browser();
+    var createChecksumStream2 = ({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) => {
+      var _a7, _b;
+      if (!(0, stream_type_check_1.isReadableStream)(source)) {
+        throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+      }
+      const encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+      if (typeof TransformStream !== "function") {
+        throw new Error("@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.");
+      }
+      const transform = new TransformStream({
+        start() {
+        },
+        async transform(chunk, controller) {
+          checksum.update(chunk);
+          controller.enqueue(chunk);
+        },
+        async flush(controller) {
+          const digest = await checksum.digest();
+          const received = encoder(digest);
+          if (expectedChecksum !== received) {
+            const error = new Error(`Checksum mismatch: expected "${expectedChecksum}" but received "${received}" in response header "${checksumSourceLocation}".`);
+            controller.error(error);
+          } else {
+            controller.terminate();
+          }
+        }
+      });
+      source.pipeThrough(transform);
+      const readable = transform.readable;
+      Object.setPrototypeOf(readable, ChecksumStream_browser_1.ChecksumStream.prototype);
+      return readable;
+    };
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js
+var require_createChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_1 = require_ChecksumStream();
+    var createChecksumStream_browser_1 = require_createChecksumStream_browser();
+    function createChecksumStream2(init) {
+      if (typeof ReadableStream === "function" && (0, stream_type_check_1.isReadableStream)(init.source)) {
+        return (0, createChecksumStream_browser_1.createChecksumStream)(init);
+      }
+      return new ChecksumStream_1.ChecksumStream(init);
+    }
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/index.js
+var require_dist_cjs22 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Uint8ArrayBlobAdapter: () => Uint8ArrayBlobAdapter2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_base64 = require_dist_cjs16();
+    var import_util_utf8 = require_dist_cjs15();
+    function transformToString(payload, encoding = "utf-8") {
+      if (encoding === "base64") {
+        return (0, import_util_base64.toBase64)(payload);
+      }
+      return (0, import_util_utf8.toUtf8)(payload);
+    }
+    __name2(transformToString, "transformToString");
+    function transformFromString(str, encoding) {
+      if (encoding === "base64") {
+        return Uint8ArrayBlobAdapter2.mutate((0, import_util_base64.fromBase64)(str));
+      }
+      return Uint8ArrayBlobAdapter2.mutate((0, import_util_utf8.fromUtf8)(str));
+    }
+    __name2(transformFromString, "transformFromString");
+    var _Uint8ArrayBlobAdapter = class _Uint8ArrayBlobAdapter2 extends Uint8Array {
+      /**
+       * @param source - such as a string or Stream.
+       * @returns a new Uint8ArrayBlobAdapter extending Uint8Array.
+       */
+      static fromString(source, encoding = "utf-8") {
+        switch (typeof source) {
+          case "string":
+            return transformFromString(source, encoding);
+          default:
+            throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);
+        }
+      }
+      /**
+       * @param source - Uint8Array to be mutated.
+       * @returns the same Uint8Array but with prototype switched to Uint8ArrayBlobAdapter.
+       */
+      static mutate(source) {
+        Object.setPrototypeOf(source, _Uint8ArrayBlobAdapter2.prototype);
+        return source;
+      }
+      /**
+       * @param encoding - default 'utf-8'.
+       * @returns the blob as string.
+       */
+      transformToString(encoding = "utf-8") {
+        return transformToString(this, encoding);
+      }
+    };
+    __name2(_Uint8ArrayBlobAdapter, "Uint8ArrayBlobAdapter");
+    var Uint8ArrayBlobAdapter2 = _Uint8ArrayBlobAdapter;
+    __reExport2(src_exports, require_getAwsChunkedEncodingStream(), module2.exports);
+    __reExport2(src_exports, require_sdk_stream_mixin(), module2.exports);
+    __reExport2(src_exports, require_splitStream(), module2.exports);
+    __reExport2(src_exports, require_headStream(), module2.exports);
+    __reExport2(src_exports, require_stream_type_check(), module2.exports);
+    __reExport2(src_exports, require_createChecksumStream(), module2.exports);
+    __reExport2(src_exports, require_ChecksumStream(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js
+var import_util_stream, collectBody2;
+var init_collect_stream_body = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js"() {
+    import_util_stream = __toESM(require_dist_cjs22());
+    collectBody2 = async (streamBody = new Uint8Array(), context) => {
+      if (streamBody instanceof Uint8Array) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(streamBody);
+      }
+      if (!streamBody) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(new Uint8Array());
+      }
+      const fromContext = context.streamCollector(streamBody);
+      return import_util_stream.Uint8ArrayBlobAdapter.mutate(await fromContext);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js
+function extendedEncodeURIComponent2(str) {
+  return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
+    return "%" + c.charCodeAt(0).toString(16).toUpperCase();
+  });
+}
+var init_extended_encode_uri_component = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js
+var resolvedPath2;
+var init_resolve_path = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js"() {
+    init_extended_encode_uri_component();
+    resolvedPath2 = (resolvedPath3, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => {
+      if (input != null && input[memberName] !== void 0) {
+        const labelValue = labelValueProvider();
+        if (labelValue.length <= 0) {
+          throw new Error("Empty value provided for input HTTP label: " + memberName + ".");
+        }
+        resolvedPath3 = resolvedPath3.replace(uriLabel, isGreedyLabel ? labelValue.split("/").map((segment) => extendedEncodeURIComponent2(segment)).join("/") : extendedEncodeURIComponent2(labelValue));
+      } else {
+        throw new Error("No value provided for input HTTP label: " + memberName + ".");
+      }
+      return resolvedPath3;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js
+function requestBuilder(input, context) {
+  return new RequestBuilder(input, context);
+}
+var import_protocol_http2, RequestBuilder;
+var init_requestBuilder = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js"() {
+    import_protocol_http2 = __toESM(require_dist_cjs2());
+    init_resolve_path();
+    RequestBuilder = class {
+      constructor(input, context) {
+        this.input = input;
+        this.context = context;
+        this.query = {};
+        this.method = "";
+        this.headers = {};
+        this.path = "";
+        this.body = null;
+        this.hostname = "";
+        this.resolvePathStack = [];
+      }
+      async build() {
+        const { hostname, protocol = "https", port, path: basePath } = await this.context.endpoint();
+        this.path = basePath;
+        for (const resolvePath of this.resolvePathStack) {
+          resolvePath(this.path);
+        }
+        return new import_protocol_http2.HttpRequest({
+          protocol,
+          hostname: this.hostname || hostname,
+          port,
+          method: this.method,
+          path: this.path,
+          query: this.query,
+          body: this.body,
+          headers: this.headers
+        });
+      }
+      hn(hostname) {
+        this.hostname = hostname;
+        return this;
+      }
+      bp(uriLabel) {
+        this.resolvePathStack.push((basePath) => {
+          this.path = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + uriLabel;
+        });
+        return this;
+      }
+      p(memberName, labelValueProvider, uriLabel, isGreedyLabel) {
+        this.resolvePathStack.push((path23) => {
+          this.path = resolvedPath2(path23, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);
+        });
+        return this;
+      }
+      h(headers) {
+        this.headers = headers;
+        return this;
+      }
+      q(query) {
+        this.query = query;
+        return this;
+      }
+      b(body) {
+        this.body = body;
+        return this;
+      }
+      m(method) {
+        this.method = method;
+        return this;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js
+var protocols_exports = {};
+__export(protocols_exports, {
+  RequestBuilder: () => RequestBuilder,
+  collectBody: () => collectBody2,
+  extendedEncodeURIComponent: () => extendedEncodeURIComponent2,
+  requestBuilder: () => requestBuilder,
+  resolvedPath: () => resolvedPath2
+});
+var init_protocols = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js"() {
+    init_collect_stream_body();
+    init_extended_encode_uri_component();
+    init_requestBuilder();
+    init_resolve_path();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js
+var init_requestBuilder2 = __esm({
+  "../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js"() {
+    init_protocols();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/setFeature.js
+function setFeature(context, feature, value) {
+  if (!context.__smithy_context) {
+    context.__smithy_context = {
+      features: {}
+    };
+  } else if (!context.__smithy_context.features) {
+    context.__smithy_context.features = {};
+  }
+  context.__smithy_context.features[feature] = value;
+}
+var init_setFeature = __esm({
+  "../../../node_modules/@smithy/core/dist-es/setFeature.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js
+var DefaultIdentityProviderConfig;
+var init_DefaultIdentityProviderConfig = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js"() {
+    DefaultIdentityProviderConfig = class {
+      constructor(config) {
+        this.authSchemes = /* @__PURE__ */ new Map();
+        for (const [key, value] of Object.entries(config)) {
+          if (value !== void 0) {
+            this.authSchemes.set(key, value);
+          }
+        }
+      }
+      getIdentityProvider(schemeId) {
+        return this.authSchemes.get(schemeId);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js
+var import_protocol_http3, import_types7, HttpApiKeyAuthSigner;
+var init_httpApiKeyAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js"() {
+    import_protocol_http3 = __toESM(require_dist_cjs2());
+    import_types7 = __toESM(require_dist_cjs());
+    HttpApiKeyAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!signingProperties) {
+          throw new Error("request could not be signed with `apiKey` since the `name` and `in` signer properties are missing");
+        }
+        if (!signingProperties.name) {
+          throw new Error("request could not be signed with `apiKey` since the `name` signer property is missing");
+        }
+        if (!signingProperties.in) {
+          throw new Error("request could not be signed with `apiKey` since the `in` signer property is missing");
+        }
+        if (!identity.apiKey) {
+          throw new Error("request could not be signed with `apiKey` since the `apiKey` is not defined");
+        }
+        const clonedRequest = import_protocol_http3.HttpRequest.clone(httpRequest);
+        if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.QUERY) {
+          clonedRequest.query[signingProperties.name] = identity.apiKey;
+        } else if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.HEADER) {
+          clonedRequest.headers[signingProperties.name] = signingProperties.scheme ? `${signingProperties.scheme} ${identity.apiKey}` : identity.apiKey;
+        } else {
+          throw new Error("request can only be signed with `apiKey` locations `query` or `header`, but found: `" + signingProperties.in + "`");
+        }
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js
+var import_protocol_http4, HttpBearerAuthSigner;
+var init_httpBearerAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js"() {
+    import_protocol_http4 = __toESM(require_dist_cjs2());
+    HttpBearerAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        const clonedRequest = import_protocol_http4.HttpRequest.clone(httpRequest);
+        if (!identity.token) {
+          throw new Error("request could not be signed with `token` since the `token` is not defined");
+        }
+        clonedRequest.headers["Authorization"] = `Bearer ${identity.token}`;
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js
+var NoAuthSigner;
+var init_noAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js"() {
+    NoAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        return httpRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js
+var init_httpAuthSchemes = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js"() {
+    init_httpApiKeyAuth();
+    init_httpBearerAuth();
+    init_noAuth();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js
+var createIsIdentityExpiredFunction, EXPIRATION_MS, isIdentityExpired, doesIdentityRequireRefresh, memoizeIdentityProvider;
+var init_memoizeIdentityProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js"() {
+    createIsIdentityExpiredFunction = (expirationMs) => (identity) => doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;
+    EXPIRATION_MS = 3e5;
+    isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);
+    doesIdentityRequireRefresh = (identity) => identity.expiration !== void 0;
+    memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {
+      if (provider === void 0) {
+        return void 0;
+      }
+      const normalizedProvider = typeof provider !== "function" ? async () => Promise.resolve(provider) : provider;
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = async (options) => {
+        if (!pending) {
+          pending = normalizedProvider(options);
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      };
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || options?.forceRefresh) {
+            resolved = await coalesceProvider(options);
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || options?.forceRefresh) {
+          resolved = await coalesceProvider(options);
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (!requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider(options);
+          return resolved;
+        }
+        return resolved;
+      };
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js
+var init_util_identity_and_auth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js"() {
+    init_DefaultIdentityProviderConfig();
+    init_httpAuthSchemes();
+    init_memoizeIdentityProvider();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/index.js
+var dist_es_exports = {};
+__export(dist_es_exports, {
+  DefaultIdentityProviderConfig: () => DefaultIdentityProviderConfig,
+  EXPIRATION_MS: () => EXPIRATION_MS,
+  HttpApiKeyAuthSigner: () => HttpApiKeyAuthSigner,
+  HttpBearerAuthSigner: () => HttpBearerAuthSigner,
+  NoAuthSigner: () => NoAuthSigner,
+  createIsIdentityExpiredFunction: () => createIsIdentityExpiredFunction,
+  createPaginator: () => createPaginator,
+  doesIdentityRequireRefresh: () => doesIdentityRequireRefresh,
+  getHttpAuthSchemeEndpointRuleSetPlugin: () => getHttpAuthSchemeEndpointRuleSetPlugin,
+  getHttpAuthSchemePlugin: () => getHttpAuthSchemePlugin,
+  getHttpSigningPlugin: () => getHttpSigningPlugin,
+  getSmithyContext: () => getSmithyContext,
+  httpAuthSchemeEndpointRuleSetMiddlewareOptions: () => httpAuthSchemeEndpointRuleSetMiddlewareOptions,
+  httpAuthSchemeMiddleware: () => httpAuthSchemeMiddleware,
+  httpAuthSchemeMiddlewareOptions: () => httpAuthSchemeMiddlewareOptions,
+  httpSigningMiddleware: () => httpSigningMiddleware,
+  httpSigningMiddlewareOptions: () => httpSigningMiddlewareOptions,
+  isIdentityExpired: () => isIdentityExpired,
+  memoizeIdentityProvider: () => memoizeIdentityProvider,
+  normalizeProvider: () => normalizeProvider,
+  requestBuilder: () => requestBuilder,
+  setFeature: () => setFeature
+});
+var init_dist_es = __esm({
+  "../../../node_modules/@smithy/core/dist-es/index.js"() {
+    init_getSmithyContext();
+    init_middleware_http_auth_scheme();
+    init_middleware_http_signing();
+    init_normalizeProvider();
+    init_createPaginator();
+    init_requestBuilder2();
+    init_setFeature();
+    init_util_identity_and_auth();
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js
+var require_dist_cjs23 = __commonJS({
+  "../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      contentLengthMiddleware: () => contentLengthMiddleware,
+      contentLengthMiddlewareOptions: () => contentLengthMiddlewareOptions,
+      getContentLengthPlugin: () => getContentLengthPlugin
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var CONTENT_LENGTH_HEADER = "content-length";
+    function contentLengthMiddleware(bodyLengthChecker) {
+      return (next) => async (args) => {
+        const request2 = args.request;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          const { body, headers } = request2;
+          if (body && Object.keys(headers).map((str) => str.toLowerCase()).indexOf(CONTENT_LENGTH_HEADER) === -1) {
+            try {
+              const length = bodyLengthChecker(body);
+              request2.headers = {
+                ...request2.headers,
+                [CONTENT_LENGTH_HEADER]: String(length)
+              };
+            } catch (error) {
+            }
+          }
+        }
+        return next({
+          ...args,
+          request: request2
+        });
+      };
+    }
+    __name2(contentLengthMiddleware, "contentLengthMiddleware");
+    var contentLengthMiddlewareOptions = {
+      step: "build",
+      tags: ["SET_CONTENT_LENGTH", "CONTENT_LENGTH"],
+      name: "contentLengthMiddleware",
+      override: true
+    };
+    var getContentLengthPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);
+      }
+    }), "getContentLengthPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/property-provider/dist-cjs/index.js
+var require_dist_cjs24 = __commonJS({
+  "../../../node_modules/@smithy/property-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CredentialsProviderError: () => CredentialsProviderError,
+      ProviderError: () => ProviderError2,
+      TokenProviderError: () => TokenProviderError,
+      chain: () => chain,
+      fromStatic: () => fromStatic,
+      memoize: () => memoize
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _ProviderError = class _ProviderError2 extends Error {
+      constructor(message, options = true) {
+        var _a7;
+        let logger;
+        let tryNextLink = true;
+        if (typeof options === "boolean") {
+          logger = void 0;
+          tryNextLink = options;
+        } else if (options != null && typeof options === "object") {
+          logger = options.logger;
+          tryNextLink = options.tryNextLink ?? true;
+        }
+        super(message);
+        this.name = "ProviderError";
+        this.tryNextLink = tryNextLink;
+        Object.setPrototypeOf(this, _ProviderError2.prototype);
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `@smithy/property-provider ${tryNextLink ? "->" : "(!)"} ${message}`);
+      }
+      /**
+       * @deprecated use new operator.
+       */
+      static from(error, options = true) {
+        return Object.assign(new this(error.message, options), error);
+      }
+    };
+    __name2(_ProviderError, "ProviderError");
+    var ProviderError2 = _ProviderError;
+    var _CredentialsProviderError = class _CredentialsProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "CredentialsProviderError";
+        Object.setPrototypeOf(this, _CredentialsProviderError2.prototype);
+      }
+    };
+    __name2(_CredentialsProviderError, "CredentialsProviderError");
+    var CredentialsProviderError = _CredentialsProviderError;
+    var _TokenProviderError = class _TokenProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "TokenProviderError";
+        Object.setPrototypeOf(this, _TokenProviderError2.prototype);
+      }
+    };
+    __name2(_TokenProviderError, "TokenProviderError");
+    var TokenProviderError = _TokenProviderError;
+    var chain = /* @__PURE__ */ __name2((...providers) => async () => {
+      if (providers.length === 0) {
+        throw new ProviderError2("No providers in chain");
+      }
+      let lastProviderError;
+      for (const provider of providers) {
+        try {
+          const credentials = await provider();
+          return credentials;
+        } catch (err) {
+          lastProviderError = err;
+          if (err == null ? void 0 : err.tryNextLink) {
+            continue;
+          }
+          throw err;
+        }
+      }
+      throw lastProviderError;
+    }, "chain");
+    var fromStatic = /* @__PURE__ */ __name2((staticValue) => () => Promise.resolve(staticValue), "fromStatic");
+    var memoize = /* @__PURE__ */ __name2((provider, isExpired, requiresRefresh) => {
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = /* @__PURE__ */ __name2(async () => {
+        if (!pending) {
+          pending = provider();
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      }, "coalesceProvider");
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+            resolved = await coalesceProvider();
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+          resolved = await coalesceProvider();
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (requiresRefresh && !requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider();
+          return resolved;
+        }
+        return resolved;
+      };
+    }, "memoize");
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js
+var require_getHomeDir = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getHomeDir = void 0;
+    var os_1 = require("os");
+    var path_1 = require("path");
+    var homeDirCache = {};
+    var getHomeDirCacheKey = () => {
+      if (process && process.geteuid) {
+        return `${process.geteuid()}`;
+      }
+      return "DEFAULT";
+    };
+    var getHomeDir2 = () => {
+      const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env;
+      if (HOME)
+        return HOME;
+      if (USERPROFILE)
+        return USERPROFILE;
+      if (HOMEPATH)
+        return `${HOMEDRIVE}${HOMEPATH}`;
+      const homeDirCacheKey = getHomeDirCacheKey();
+      if (!homeDirCache[homeDirCacheKey])
+        homeDirCache[homeDirCacheKey] = (0, os_1.homedir)();
+      return homeDirCache[homeDirCacheKey];
+    };
+    exports2.getHomeDir = getHomeDir2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js
+var require_getSSOTokenFilepath = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFilepath = void 0;
+    var crypto_1 = require("crypto");
+    var path_1 = require("path");
+    var getHomeDir_1 = require_getHomeDir();
+    var getSSOTokenFilepath2 = (id) => {
+      const hasher = (0, crypto_1.createHash)("sha1");
+      const cacheName = hasher.update(id).digest("hex");
+      return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`);
+    };
+    exports2.getSSOTokenFilepath = getSSOTokenFilepath2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js
+var require_getSSOTokenFromFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFromFile = void 0;
+    var fs_1 = require("fs");
+    var getSSOTokenFilepath_1 = require_getSSOTokenFilepath();
+    var { readFile } = fs_1.promises;
+    var getSSOTokenFromFile2 = async (id) => {
+      const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id);
+      const ssoTokenText = await readFile(ssoTokenFilepath, "utf8");
+      return JSON.parse(ssoTokenText);
+    };
+    exports2.getSSOTokenFromFile = getSSOTokenFromFile2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js
+var require_slurpFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.slurpFile = void 0;
+    var fs_1 = require("fs");
+    var { readFile } = fs_1.promises;
+    var filePromisesHash = {};
+    var slurpFile = (path23, options) => {
+      if (!filePromisesHash[path23] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) {
+        filePromisesHash[path23] = readFile(path23, "utf8");
+      }
+      return filePromisesHash[path23];
+    };
+    exports2.slurpFile = slurpFile;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js
+var require_dist_cjs25 = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR,
+      DEFAULT_PROFILE: () => DEFAULT_PROFILE,
+      ENV_PROFILE: () => ENV_PROFILE,
+      getProfileName: () => getProfileName,
+      loadSharedConfigFiles: () => loadSharedConfigFiles,
+      loadSsoSessionData: () => loadSsoSessionData,
+      parseKnownFiles: () => parseKnownFiles
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_getHomeDir(), module2.exports);
+    var ENV_PROFILE = "AWS_PROFILE";
+    var DEFAULT_PROFILE = "default";
+    var getProfileName = /* @__PURE__ */ __name2((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName");
+    __reExport2(src_exports, require_getSSOTokenFilepath(), module2.exports);
+    __reExport2(src_exports, require_getSSOTokenFromFile(), module2.exports);
+    var import_types8 = require_dist_cjs();
+    var getConfigData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => {
+      const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+      if (indexOfSeparator === -1) {
+        return false;
+      }
+      return Object.values(import_types8.IniSectionType).includes(key.substring(0, indexOfSeparator));
+    }).reduce(
+      (acc, [key, value]) => {
+        const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+        const updatedKey = key.substring(0, indexOfSeparator) === import_types8.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;
+        acc[updatedKey] = value;
+        return acc;
+      },
+      {
+        // Populate default profile, if present.
+        ...data.default && { default: data.default }
+      }
+    ), "getConfigData");
+    var import_path3 = require("path");
+    var import_getHomeDir = require_getHomeDir();
+    var ENV_CONFIG_PATH = "AWS_CONFIG_FILE";
+    var getConfigFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CONFIG_PATH] || (0, import_path3.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath");
+    var import_getHomeDir2 = require_getHomeDir();
+    var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE";
+    var getCredentialsFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path3.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath");
+    var import_getHomeDir3 = require_getHomeDir();
+    var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/;
+    var profileNameBlockList = ["__proto__", "profile __proto__"];
+    var parseIni = /* @__PURE__ */ __name2((iniData) => {
+      const map = {};
+      let currentSection;
+      let currentSubSection;
+      for (const iniLine of iniData.split(/\r?\n/)) {
+        const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim();
+        const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]";
+        if (isSection) {
+          currentSection = void 0;
+          currentSubSection = void 0;
+          const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);
+          const matches = prefixKeyRegex.exec(sectionName);
+          if (matches) {
+            const [, prefix, , name] = matches;
+            if (Object.values(import_types8.IniSectionType).includes(prefix)) {
+              currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);
+            }
+          } else {
+            currentSection = sectionName;
+          }
+          if (profileNameBlockList.includes(sectionName)) {
+            throw new Error(`Found invalid profile name "${sectionName}"`);
+          }
+        } else if (currentSection) {
+          const indexOfEqualsSign = trimmedLine.indexOf("=");
+          if (![0, -1].includes(indexOfEqualsSign)) {
+            const [name, value] = [
+              trimmedLine.substring(0, indexOfEqualsSign).trim(),
+              trimmedLine.substring(indexOfEqualsSign + 1).trim()
+            ];
+            if (value === "") {
+              currentSubSection = name;
+            } else {
+              if (currentSubSection && iniLine.trimStart() === iniLine) {
+                currentSubSection = void 0;
+              }
+              map[currentSection] = map[currentSection] || {};
+              const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;
+              map[currentSection][key] = value;
+            }
+          }
+        }
+      }
+      return map;
+    }, "parseIni");
+    var import_slurpFile = require_slurpFile();
+    var swallowError = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var CONFIG_PREFIX_SEPARATOR = ".";
+    var loadSharedConfigFiles = /* @__PURE__ */ __name2(async (init = {}) => {
+      const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;
+      const homeDir = (0, import_getHomeDir3.getHomeDir)();
+      const relativeHomeDirPrefix = "~/";
+      let resolvedFilepath = filepath;
+      if (filepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedFilepath = (0, import_path3.join)(homeDir, filepath.slice(2));
+      }
+      let resolvedConfigFilepath = configFilepath;
+      if (configFilepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedConfigFilepath = (0, import_path3.join)(homeDir, configFilepath.slice(2));
+      }
+      const parsedFiles = await Promise.all([
+        (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).then(getConfigData).catch(swallowError),
+        (0, import_slurpFile.slurpFile)(resolvedFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).catch(swallowError)
+      ]);
+      return {
+        configFile: parsedFiles[0],
+        credentialsFile: parsedFiles[1]
+      };
+    }, "loadSharedConfigFiles");
+    var getSsoSessionData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types8.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData");
+    var import_slurpFile2 = require_slurpFile();
+    var swallowError2 = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var loadSsoSessionData = /* @__PURE__ */ __name2(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData");
+    var mergeConfigFiles = /* @__PURE__ */ __name2((...files) => {
+      const merged = {};
+      for (const file of files) {
+        for (const [key, values] of Object.entries(file)) {
+          if (merged[key] !== void 0) {
+            Object.assign(merged[key], values);
+          } else {
+            merged[key] = values;
+          }
+        }
+      }
+      return merged;
+    }, "mergeConfigFiles");
+    var parseKnownFiles = /* @__PURE__ */ __name2(async (init) => {
+      const parsedFiles = await loadSharedConfigFiles(init);
+      return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);
+    }, "parseKnownFiles");
+  }
+});
+
+// ../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js
+var require_dist_cjs26 = __commonJS({
+  "../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      loadConfig: () => loadConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    function getSelectorName(functionString) {
+      try {
+        const constants2 = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? []));
+        constants2.delete("CONFIG");
+        constants2.delete("CONFIG_PREFIX_SEPARATOR");
+        constants2.delete("ENV");
+        return [...constants2].join(", ");
+      } catch (e) {
+        return functionString;
+      }
+    }
+    __name2(getSelectorName, "getSelectorName");
+    var fromEnv = /* @__PURE__ */ __name2((envVarSelector, logger) => async () => {
+      try {
+        const config = envVarSelector(process.env);
+        if (config === void 0) {
+          throw new Error();
+        }
+        return config;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`,
+          { logger }
+        );
+      }
+    }, "fromEnv");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var fromSharedConfigFiles = /* @__PURE__ */ __name2((configSelector, { preferredFile = "config", ...init } = {}) => async () => {
+      const profile = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init);
+      const profileFromCredentials = credentialsFile[profile] || {};
+      const profileFromConfig = configFile[profile] || {};
+      const mergedProfile = preferredFile === "config" ? { ...profileFromCredentials, ...profileFromConfig } : { ...profileFromConfig, ...profileFromCredentials };
+      try {
+        const cfgFile = preferredFile === "config" ? configFile : credentialsFile;
+        const configValue = configSelector(mergedProfile, cfgFile);
+        if (configValue === void 0) {
+          throw new Error();
+        }
+        return configValue;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`,
+          { logger: init.logger }
+        );
+      }
+    }, "fromSharedConfigFiles");
+    var isFunction2 = /* @__PURE__ */ __name2((func) => typeof func === "function", "isFunction");
+    var fromStatic = /* @__PURE__ */ __name2((defaultValue) => isFunction2(defaultValue) ? async () => await defaultValue() : (0, import_property_provider2.fromStatic)(defaultValue), "fromStatic");
+    var loadConfig = /* @__PURE__ */ __name2(({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        fromEnv(environmentVariableSelector),
+        fromSharedConfigFiles(configFileSelector, configuration),
+        fromStatic(defaultValue)
+      )
+    ), "loadConfig");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js
+var require_getEndpointUrlConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointUrlConfig = void 0;
+    var shared_ini_file_loader_1 = require_dist_cjs25();
+    var ENV_ENDPOINT_URL = "AWS_ENDPOINT_URL";
+    var CONFIG_ENDPOINT_URL = "endpoint_url";
+    var getEndpointUrlConfig = (serviceId) => ({
+      environmentVariableSelector: (env2) => {
+        const serviceSuffixParts = serviceId.split(" ").map((w) => w.toUpperCase());
+        const serviceEndpointUrl = env2[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join("_")];
+        if (serviceEndpointUrl)
+          return serviceEndpointUrl;
+        const endpointUrl = env2[ENV_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      configFileSelector: (profile, config) => {
+        if (config && profile.services) {
+          const servicesSection = config[["services", profile.services].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+          if (servicesSection) {
+            const servicePrefixParts = serviceId.split(" ").map((w) => w.toLowerCase());
+            const endpointUrl2 = servicesSection[[servicePrefixParts.join("_"), CONFIG_ENDPOINT_URL].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+            if (endpointUrl2)
+              return endpointUrl2;
+          }
+        }
+        const endpointUrl = profile[CONFIG_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      default: void 0
+    });
+    exports2.getEndpointUrlConfig = getEndpointUrlConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js
+var require_getEndpointFromConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointFromConfig = void 0;
+    var node_config_provider_1 = require_dist_cjs26();
+    var getEndpointUrlConfig_1 = require_getEndpointUrlConfig();
+    var getEndpointFromConfig = async (serviceId) => (0, node_config_provider_1.loadConfig)((0, getEndpointUrlConfig_1.getEndpointUrlConfig)(serviceId !== null && serviceId !== void 0 ? serviceId : ""))();
+    exports2.getEndpointFromConfig = getEndpointFromConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js
+var require_dist_cjs27 = __commonJS({
+  "../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseQueryString: () => parseQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function parseQueryString(querystring) {
+      const query = {};
+      querystring = querystring.replace(/^\?/, "");
+      if (querystring) {
+        for (const pair of querystring.split("&")) {
+          let [key, value = null] = pair.split("=");
+          key = decodeURIComponent(key);
+          if (value) {
+            value = decodeURIComponent(value);
+          }
+          if (!(key in query)) {
+            query[key] = value;
+          } else if (Array.isArray(query[key])) {
+            query[key].push(value);
+          } else {
+            query[key] = [query[key], value];
+          }
+        }
+      }
+      return query;
+    }
+    __name2(parseQueryString, "parseQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/url-parser/dist-cjs/index.js
+var require_dist_cjs28 = __commonJS({
+  "../../../node_modules/@smithy/url-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseUrl: () => parseUrl
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_querystring_parser = require_dist_cjs27();
+    var parseUrl = /* @__PURE__ */ __name2((url2) => {
+      if (typeof url2 === "string") {
+        return parseUrl(new URL(url2));
+      }
+      const { hostname, pathname, port, protocol, search } = url2;
+      let query;
+      if (search) {
+        query = (0, import_querystring_parser.parseQueryString)(search);
+      }
+      return {
+        hostname,
+        port: port ? parseInt(port) : void 0,
+        protocol,
+        path: pathname,
+        query
+      };
+    }, "parseUrl");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js
+var require_dist_cjs29 = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      endpointMiddleware: () => endpointMiddleware,
+      endpointMiddlewareOptions: () => endpointMiddlewareOptions,
+      getEndpointFromInstructions: () => getEndpointFromInstructions,
+      getEndpointPlugin: () => getEndpointPlugin,
+      resolveEndpointConfig: () => resolveEndpointConfig,
+      resolveParams: () => resolveParams,
+      toEndpointV1: () => toEndpointV1
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var resolveParamsForS3 = /* @__PURE__ */ __name2(async (endpointParams) => {
+      const bucket = (endpointParams == null ? void 0 : endpointParams.Bucket) || "";
+      if (typeof endpointParams.Bucket === "string") {
+        endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent("#")).replace(/\?/g, encodeURIComponent("?"));
+      }
+      if (isArnBucketName(bucket)) {
+        if (endpointParams.ForcePathStyle === true) {
+          throw new Error("Path-style addressing cannot be used with ARN buckets");
+        }
+      } else if (!isDnsCompatibleBucketName(bucket) || bucket.indexOf(".") !== -1 && !String(endpointParams.Endpoint).startsWith("http:") || bucket.toLowerCase() !== bucket || bucket.length < 3) {
+        endpointParams.ForcePathStyle = true;
+      }
+      if (endpointParams.DisableMultiRegionAccessPoints) {
+        endpointParams.disableMultiRegionAccessPoints = true;
+        endpointParams.DisableMRAP = true;
+      }
+      return endpointParams;
+    }, "resolveParamsForS3");
+    var DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/;
+    var IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/;
+    var DOTS_PATTERN = /\.\./;
+    var isDnsCompatibleBucketName = /* @__PURE__ */ __name2((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), "isDnsCompatibleBucketName");
+    var isArnBucketName = /* @__PURE__ */ __name2((bucketName) => {
+      const [arn, partition, service, , , bucket] = bucketName.split(":");
+      const isArn = arn === "arn" && bucketName.split(":").length >= 6;
+      const isValidArn = Boolean(isArn && partition && service && bucket);
+      if (isArn && !isValidArn) {
+        throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);
+      }
+      return isValidArn;
+    }, "isArnBucketName");
+    var createConfigValueProvider = /* @__PURE__ */ __name2((configKey, canonicalEndpointParamKey, config) => {
+      const configProvider = /* @__PURE__ */ __name2(async () => {
+        const configValue = config[configKey] ?? config[canonicalEndpointParamKey];
+        if (typeof configValue === "function") {
+          return configValue();
+        }
+        return configValue;
+      }, "configProvider");
+      if (configKey === "credentialScope" || canonicalEndpointParamKey === "CredentialScope") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.credentialScope) ?? (credentials == null ? void 0 : credentials.CredentialScope);
+          return configValue;
+        };
+      }
+      if (configKey === "accountId" || canonicalEndpointParamKey === "AccountId") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.accountId) ?? (credentials == null ? void 0 : credentials.AccountId);
+          return configValue;
+        };
+      }
+      if (configKey === "endpoint" || canonicalEndpointParamKey === "endpoint") {
+        return async () => {
+          const endpoint = await configProvider();
+          if (endpoint && typeof endpoint === "object") {
+            if ("url" in endpoint) {
+              return endpoint.url.href;
+            }
+            if ("hostname" in endpoint) {
+              const { protocol, hostname, port, path: path23 } = endpoint;
+              return `${protocol}//${hostname}${port ? ":" + port : ""}${path23}`;
+            }
+          }
+          return endpoint;
+        };
+      }
+      return configProvider;
+    }, "createConfigValueProvider");
+    var import_getEndpointFromConfig = require_getEndpointFromConfig();
+    var import_url_parser = require_dist_cjs28();
+    var toEndpointV1 = /* @__PURE__ */ __name2((endpoint) => {
+      if (typeof endpoint === "object") {
+        if ("url" in endpoint) {
+          return (0, import_url_parser.parseUrl)(endpoint.url);
+        }
+        return endpoint;
+      }
+      return (0, import_url_parser.parseUrl)(endpoint);
+    }, "toEndpointV1");
+    var getEndpointFromInstructions = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig, context) => {
+      if (!clientConfig.endpoint) {
+        let endpointFromConfig;
+        if (clientConfig.serviceConfiguredEndpoint) {
+          endpointFromConfig = await clientConfig.serviceConfiguredEndpoint();
+        } else {
+          endpointFromConfig = await (0, import_getEndpointFromConfig.getEndpointFromConfig)(clientConfig.serviceId);
+        }
+        if (endpointFromConfig) {
+          clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));
+        }
+      }
+      const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);
+      if (typeof clientConfig.endpointProvider !== "function") {
+        throw new Error("config.endpointProvider is not set.");
+      }
+      const endpoint = clientConfig.endpointProvider(endpointParams, context);
+      return endpoint;
+    }, "getEndpointFromInstructions");
+    var resolveParams = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig) => {
+      var _a7;
+      const endpointParams = {};
+      const instructions = ((_a7 = instructionsSupplier == null ? void 0 : instructionsSupplier.getEndpointParameterInstructions) == null ? void 0 : _a7.call(instructionsSupplier)) || {};
+      for (const [name, instruction] of Object.entries(instructions)) {
+        switch (instruction.type) {
+          case "staticContextParams":
+            endpointParams[name] = instruction.value;
+            break;
+          case "contextParams":
+            endpointParams[name] = commandInput[instruction.name];
+            break;
+          case "clientContextParams":
+          case "builtInParams":
+            endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();
+            break;
+          case "operationContextParams":
+            endpointParams[name] = instruction.get(commandInput);
+            break;
+          default:
+            throw new Error("Unrecognized endpoint parameter instruction: " + JSON.stringify(instruction));
+        }
+      }
+      if (Object.keys(instructions).length === 0) {
+        Object.assign(endpointParams, clientConfig);
+      }
+      if (String(clientConfig.serviceId).toLowerCase() === "s3") {
+        await resolveParamsForS3(endpointParams);
+      }
+      return endpointParams;
+    }, "resolveParams");
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_util_middleware3 = require_dist_cjs10();
+    var endpointMiddleware = /* @__PURE__ */ __name2(({
+      config,
+      instructions
+    }) => {
+      return (next, context) => async (args) => {
+        var _a7, _b, _c;
+        if (config.endpoint) {
+          (0, import_core4.setFeature)(context, "ENDPOINT_OVERRIDE", "N");
+        }
+        const endpoint = await getEndpointFromInstructions(
+          args.input,
+          {
+            getEndpointParameterInstructions() {
+              return instructions;
+            }
+          },
+          { ...config },
+          context
+        );
+        context.endpointV2 = endpoint;
+        context.authSchemes = (_a7 = endpoint.properties) == null ? void 0 : _a7.authSchemes;
+        const authScheme = (_b = context.authSchemes) == null ? void 0 : _b[0];
+        if (authScheme) {
+          context["signing_region"] = authScheme.signingRegion;
+          context["signing_service"] = authScheme.signingName;
+          const smithyContext = (0, import_util_middleware3.getSmithyContext)(context);
+          const httpAuthOption = (_c = smithyContext == null ? void 0 : smithyContext.selectedHttpAuthScheme) == null ? void 0 : _c.httpAuthOption;
+          if (httpAuthOption) {
+            httpAuthOption.signingProperties = Object.assign(
+              httpAuthOption.signingProperties || {},
+              {
+                signing_region: authScheme.signingRegion,
+                signingRegion: authScheme.signingRegion,
+                signing_service: authScheme.signingName,
+                signingName: authScheme.signingName,
+                signingRegionSet: authScheme.signingRegionSet
+              },
+              authScheme.properties
+            );
+          }
+        }
+        return next({
+          ...args
+        });
+      };
+    }, "endpointMiddleware");
+    var import_middleware_serde2 = require_dist_cjs12();
+    var endpointMiddlewareOptions = {
+      step: "serialize",
+      tags: ["ENDPOINT_PARAMETERS", "ENDPOINT_V2", "ENDPOINT"],
+      name: "endpointV2Middleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde2.serializerMiddlewareOption.name
+    };
+    var getEndpointPlugin = /* @__PURE__ */ __name2((config, instructions) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(
+          endpointMiddleware({
+            config,
+            instructions
+          }),
+          endpointMiddlewareOptions
+        );
+      }
+    }), "getEndpointPlugin");
+    var import_getEndpointFromConfig2 = require_getEndpointFromConfig();
+    var resolveEndpointConfig = /* @__PURE__ */ __name2((input) => {
+      const tls = input.tls ?? true;
+      const { endpoint } = input;
+      const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await (0, import_util_middleware3.normalizeProvider)(endpoint)()) : void 0;
+      const isCustomEndpoint = !!endpoint;
+      const resolvedConfig = {
+        ...input,
+        endpoint: customEndpointProvider,
+        tls,
+        isCustomEndpoint,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false),
+        useFipsEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useFipsEndpoint ?? false)
+      };
+      let configuredEndpointPromise = void 0;
+      resolvedConfig.serviceConfiguredEndpoint = async () => {
+        if (input.serviceId && !configuredEndpointPromise) {
+          configuredEndpointPromise = (0, import_getEndpointFromConfig2.getEndpointFromConfig)(input.serviceId);
+        }
+        return configuredEndpointPromise;
+      };
+      return resolvedConfig;
+    }, "resolveEndpointConfig");
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/rng.js
+function rng() {
+  if (poolPtr > rnds8Pool.length - 16) {
+    import_crypto.default.randomFillSync(rnds8Pool);
+    poolPtr = 0;
+  }
+  return rnds8Pool.slice(poolPtr, poolPtr += 16);
+}
+var import_crypto, rnds8Pool, poolPtr;
+var init_rng = __esm({
+  "../../../node_modules/uuid/dist/esm-node/rng.js"() {
+    import_crypto = __toESM(require("crypto"));
+    rnds8Pool = new Uint8Array(256);
+    poolPtr = rnds8Pool.length;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/regex.js
+var regex_default;
+var init_regex = __esm({
+  "../../../node_modules/uuid/dist/esm-node/regex.js"() {
+    regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/validate.js
+function validate(uuid) {
+  return typeof uuid === "string" && regex_default.test(uuid);
+}
+var validate_default;
+var init_validate = __esm({
+  "../../../node_modules/uuid/dist/esm-node/validate.js"() {
+    init_regex();
+    validate_default = validate;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/stringify.js
+function unsafeStringify(arr, offset = 0) {
+  return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
+}
+function stringify2(arr, offset = 0) {
+  const uuid = unsafeStringify(arr, offset);
+  if (!validate_default(uuid)) {
+    throw TypeError("Stringified UUID is invalid");
+  }
+  return uuid;
+}
+var byteToHex, stringify_default;
+var init_stringify = __esm({
+  "../../../node_modules/uuid/dist/esm-node/stringify.js"() {
+    init_validate();
+    byteToHex = [];
+    for (let i = 0; i < 256; ++i) {
+      byteToHex.push((i + 256).toString(16).slice(1));
+    }
+    stringify_default = stringify2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v1.js
+function v1(options, buf, offset) {
+  let i = buf && offset || 0;
+  const b = buf || new Array(16);
+  options = options || {};
+  let node = options.node || _nodeId;
+  let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq;
+  if (node == null || clockseq == null) {
+    const seedBytes = options.random || (options.rng || rng)();
+    if (node == null) {
+      node = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]];
+    }
+    if (clockseq == null) {
+      clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383;
+    }
+  }
+  let msecs = options.msecs !== void 0 ? options.msecs : Date.now();
+  let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1;
+  const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4;
+  if (dt < 0 && options.clockseq === void 0) {
+    clockseq = clockseq + 1 & 16383;
+  }
+  if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) {
+    nsecs = 0;
+  }
+  if (nsecs >= 1e4) {
+    throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");
+  }
+  _lastMSecs = msecs;
+  _lastNSecs = nsecs;
+  _clockseq = clockseq;
+  msecs += 122192928e5;
+  const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296;
+  b[i++] = tl >>> 24 & 255;
+  b[i++] = tl >>> 16 & 255;
+  b[i++] = tl >>> 8 & 255;
+  b[i++] = tl & 255;
+  const tmh = msecs / 4294967296 * 1e4 & 268435455;
+  b[i++] = tmh >>> 8 & 255;
+  b[i++] = tmh & 255;
+  b[i++] = tmh >>> 24 & 15 | 16;
+  b[i++] = tmh >>> 16 & 255;
+  b[i++] = clockseq >>> 8 | 128;
+  b[i++] = clockseq & 255;
+  for (let n = 0; n < 6; ++n) {
+    b[i + n] = node[n];
+  }
+  return buf || unsafeStringify(b);
+}
+var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default;
+var init_v1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v1.js"() {
+    init_rng();
+    init_stringify();
+    _lastMSecs = 0;
+    _lastNSecs = 0;
+    v1_default = v1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/parse.js
+function parse(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  let v;
+  const arr = new Uint8Array(16);
+  arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;
+  arr[1] = v >>> 16 & 255;
+  arr[2] = v >>> 8 & 255;
+  arr[3] = v & 255;
+  arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8;
+  arr[5] = v & 255;
+  arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8;
+  arr[7] = v & 255;
+  arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8;
+  arr[9] = v & 255;
+  arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255;
+  arr[11] = v / 4294967296 & 255;
+  arr[12] = v >>> 24 & 255;
+  arr[13] = v >>> 16 & 255;
+  arr[14] = v >>> 8 & 255;
+  arr[15] = v & 255;
+  return arr;
+}
+var parse_default;
+var init_parse = __esm({
+  "../../../node_modules/uuid/dist/esm-node/parse.js"() {
+    init_validate();
+    parse_default = parse;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v35.js
+function stringToBytes(str) {
+  str = unescape(encodeURIComponent(str));
+  const bytes = [];
+  for (let i = 0; i < str.length; ++i) {
+    bytes.push(str.charCodeAt(i));
+  }
+  return bytes;
+}
+function v35(name, version3, hashfunc) {
+  function generateUUID(value, namespace, buf, offset) {
+    var _namespace;
+    if (typeof value === "string") {
+      value = stringToBytes(value);
+    }
+    if (typeof namespace === "string") {
+      namespace = parse_default(namespace);
+    }
+    if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) {
+      throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");
+    }
+    let bytes = new Uint8Array(16 + value.length);
+    bytes.set(namespace);
+    bytes.set(value, namespace.length);
+    bytes = hashfunc(bytes);
+    bytes[6] = bytes[6] & 15 | version3;
+    bytes[8] = bytes[8] & 63 | 128;
+    if (buf) {
+      offset = offset || 0;
+      for (let i = 0; i < 16; ++i) {
+        buf[offset + i] = bytes[i];
+      }
+      return buf;
+    }
+    return unsafeStringify(bytes);
+  }
+  try {
+    generateUUID.name = name;
+  } catch (err) {
+  }
+  generateUUID.DNS = DNS;
+  generateUUID.URL = URL2;
+  return generateUUID;
+}
+var DNS, URL2;
+var init_v35 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v35.js"() {
+    init_stringify();
+    init_parse();
+    DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8";
+    URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/md5.js
+function md5(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto2.default.createHash("md5").update(bytes).digest();
+}
+var import_crypto2, md5_default;
+var init_md52 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/md5.js"() {
+    import_crypto2 = __toESM(require("crypto"));
+    md5_default = md5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v3.js
+var v3, v3_default;
+var init_v3 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v3.js"() {
+    init_v35();
+    init_md52();
+    v3 = v35("v3", 48, md5_default);
+    v3_default = v3;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/native.js
+var import_crypto3, native_default;
+var init_native = __esm({
+  "../../../node_modules/uuid/dist/esm-node/native.js"() {
+    import_crypto3 = __toESM(require("crypto"));
+    native_default = {
+      randomUUID: import_crypto3.default.randomUUID
+    };
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v4.js
+function v4(options, buf, offset) {
+  if (native_default.randomUUID && !buf && !options) {
+    return native_default.randomUUID();
+  }
+  options = options || {};
+  const rnds = options.random || (options.rng || rng)();
+  rnds[6] = rnds[6] & 15 | 64;
+  rnds[8] = rnds[8] & 63 | 128;
+  if (buf) {
+    offset = offset || 0;
+    for (let i = 0; i < 16; ++i) {
+      buf[offset + i] = rnds[i];
+    }
+    return buf;
+  }
+  return unsafeStringify(rnds);
+}
+var v4_default;
+var init_v4 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v4.js"() {
+    init_native();
+    init_rng();
+    init_stringify();
+    v4_default = v4;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/sha1.js
+function sha1(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto4.default.createHash("sha1").update(bytes).digest();
+}
+var import_crypto4, sha1_default;
+var init_sha1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/sha1.js"() {
+    import_crypto4 = __toESM(require("crypto"));
+    sha1_default = sha1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v5.js
+var v5, v5_default;
+var init_v5 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v5.js"() {
+    init_v35();
+    init_sha1();
+    v5 = v35("v5", 80, sha1_default);
+    v5_default = v5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/nil.js
+var nil_default;
+var init_nil = __esm({
+  "../../../node_modules/uuid/dist/esm-node/nil.js"() {
+    nil_default = "00000000-0000-0000-0000-000000000000";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/version.js
+function version2(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  return parseInt(uuid.slice(14, 15), 16);
+}
+var version_default;
+var init_version = __esm({
+  "../../../node_modules/uuid/dist/esm-node/version.js"() {
+    init_validate();
+    version_default = version2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/index.js
+var esm_node_exports = {};
+__export(esm_node_exports, {
+  NIL: () => nil_default,
+  parse: () => parse_default,
+  stringify: () => stringify_default,
+  v1: () => v1_default,
+  v3: () => v3_default,
+  v4: () => v4_default,
+  v5: () => v5_default,
+  validate: () => validate_default,
+  version: () => version_default
+});
+var init_esm_node = __esm({
+  "../../../node_modules/uuid/dist/esm-node/index.js"() {
+    init_v1();
+    init_v3();
+    init_v4();
+    init_v5();
+    init_nil();
+    init_version();
+    init_validate();
+    init_stringify();
+    init_parse();
+  }
+});
+
+// ../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js
+var require_dist_cjs30 = __commonJS({
+  "../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isClockSkewCorrectedError: () => isClockSkewCorrectedError,
+      isClockSkewError: () => isClockSkewError,
+      isRetryableByTrait: () => isRetryableByTrait,
+      isServerError: () => isServerError,
+      isThrottlingError: () => isThrottlingError,
+      isTransientError: () => isTransientError
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var CLOCK_SKEW_ERROR_CODES = [
+      "AuthFailure",
+      "InvalidSignatureException",
+      "RequestExpired",
+      "RequestInTheFuture",
+      "RequestTimeTooSkewed",
+      "SignatureDoesNotMatch"
+    ];
+    var THROTTLING_ERROR_CODES = [
+      "BandwidthLimitExceeded",
+      "EC2ThrottledException",
+      "LimitExceededException",
+      "PriorRequestNotComplete",
+      "ProvisionedThroughputExceededException",
+      "RequestLimitExceeded",
+      "RequestThrottled",
+      "RequestThrottledException",
+      "SlowDown",
+      "ThrottledException",
+      "Throttling",
+      "ThrottlingException",
+      "TooManyRequestsException",
+      "TransactionInProgressException"
+      // DynamoDB
+    ];
+    var TRANSIENT_ERROR_CODES = ["TimeoutError", "RequestTimeout", "RequestTimeoutException"];
+    var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"];
+    var isRetryableByTrait = /* @__PURE__ */ __name2((error) => error.$retryable !== void 0, "isRetryableByTrait");
+    var isClockSkewError = /* @__PURE__ */ __name2((error) => CLOCK_SKEW_ERROR_CODES.includes(error.name), "isClockSkewError");
+    var isClockSkewCorrectedError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      return (_a7 = error.$metadata) == null ? void 0 : _a7.clockSkewCorrected;
+    }, "isClockSkewCorrectedError");
+    var isThrottlingError = /* @__PURE__ */ __name2((error) => {
+      var _a7, _b;
+      return ((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) === 429 || THROTTLING_ERROR_CODES.includes(error.name) || ((_b = error.$retryable) == null ? void 0 : _b.throttling) == true;
+    }, "isThrottlingError");
+    var isTransientError = /* @__PURE__ */ __name2((error, depth = 0) => {
+      var _a7;
+      return isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || "") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) || 0) || error.cause !== void 0 && depth <= 10 && isTransientError(error.cause, depth + 1);
+    }, "isTransientError");
+    var isServerError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      if (((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) !== void 0) {
+        const statusCode = error.$metadata.httpStatusCode;
+        if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {
+          return true;
+        }
+        return false;
+      }
+      return false;
+    }, "isServerError");
+  }
+});
+
+// ../../../node_modules/@smithy/util-retry/dist-cjs/index.js
+var require_dist_cjs31 = __commonJS({
+  "../../../node_modules/@smithy/util-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      ConfiguredRetryStrategy: () => ConfiguredRetryStrategy,
+      DEFAULT_MAX_ATTEMPTS: () => DEFAULT_MAX_ATTEMPTS,
+      DEFAULT_RETRY_DELAY_BASE: () => DEFAULT_RETRY_DELAY_BASE,
+      DEFAULT_RETRY_MODE: () => DEFAULT_RETRY_MODE,
+      DefaultRateLimiter: () => DefaultRateLimiter,
+      INITIAL_RETRY_TOKENS: () => INITIAL_RETRY_TOKENS,
+      INVOCATION_ID_HEADER: () => INVOCATION_ID_HEADER,
+      MAXIMUM_RETRY_DELAY: () => MAXIMUM_RETRY_DELAY,
+      NO_RETRY_INCREMENT: () => NO_RETRY_INCREMENT,
+      REQUEST_HEADER: () => REQUEST_HEADER,
+      RETRY_COST: () => RETRY_COST,
+      RETRY_MODES: () => RETRY_MODES,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      THROTTLING_RETRY_DELAY_BASE: () => THROTTLING_RETRY_DELAY_BASE,
+      TIMEOUT_RETRY_COST: () => TIMEOUT_RETRY_COST
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var RETRY_MODES = /* @__PURE__ */ ((RETRY_MODES2) => {
+      RETRY_MODES2["STANDARD"] = "standard";
+      RETRY_MODES2["ADAPTIVE"] = "adaptive";
+      return RETRY_MODES2;
+    })(RETRY_MODES || {});
+    var DEFAULT_MAX_ATTEMPTS = 3;
+    var DEFAULT_RETRY_MODE = "standard";
+    var import_service_error_classification = require_dist_cjs30();
+    var _DefaultRateLimiter = class _DefaultRateLimiter2 {
+      constructor(options) {
+        this.currentCapacity = 0;
+        this.enabled = false;
+        this.lastMaxRate = 0;
+        this.measuredTxRate = 0;
+        this.requestCount = 0;
+        this.lastTimestamp = 0;
+        this.timeWindow = 0;
+        this.beta = (options == null ? void 0 : options.beta) ?? 0.7;
+        this.minCapacity = (options == null ? void 0 : options.minCapacity) ?? 1;
+        this.minFillRate = (options == null ? void 0 : options.minFillRate) ?? 0.5;
+        this.scaleConstant = (options == null ? void 0 : options.scaleConstant) ?? 0.4;
+        this.smooth = (options == null ? void 0 : options.smooth) ?? 0.8;
+        const currentTimeInSeconds = this.getCurrentTimeInSeconds();
+        this.lastThrottleTime = currentTimeInSeconds;
+        this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());
+        this.fillRate = this.minFillRate;
+        this.maxCapacity = this.minCapacity;
+      }
+      getCurrentTimeInSeconds() {
+        return Date.now() / 1e3;
+      }
+      async getSendToken() {
+        return this.acquireTokenBucket(1);
+      }
+      async acquireTokenBucket(amount) {
+        if (!this.enabled) {
+          return;
+        }
+        this.refillTokenBucket();
+        if (amount > this.currentCapacity) {
+          const delay = (amount - this.currentCapacity) / this.fillRate * 1e3;
+          await new Promise((resolve6) => _DefaultRateLimiter2.setTimeoutFn(resolve6, delay));
+        }
+        this.currentCapacity = this.currentCapacity - amount;
+      }
+      refillTokenBucket() {
+        const timestamp = this.getCurrentTimeInSeconds();
+        if (!this.lastTimestamp) {
+          this.lastTimestamp = timestamp;
+          return;
+        }
+        const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;
+        this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);
+        this.lastTimestamp = timestamp;
+      }
+      updateClientSendingRate(response) {
+        let calculatedRate;
+        this.updateMeasuredRate();
+        if ((0, import_service_error_classification.isThrottlingError)(response)) {
+          const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);
+          this.lastMaxRate = rateToUse;
+          this.calculateTimeWindow();
+          this.lastThrottleTime = this.getCurrentTimeInSeconds();
+          calculatedRate = this.cubicThrottle(rateToUse);
+          this.enableTokenBucket();
+        } else {
+          this.calculateTimeWindow();
+          calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());
+        }
+        const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);
+        this.updateTokenBucketRate(newRate);
+      }
+      calculateTimeWindow() {
+        this.timeWindow = this.getPrecise(Math.pow(this.lastMaxRate * (1 - this.beta) / this.scaleConstant, 1 / 3));
+      }
+      cubicThrottle(rateToUse) {
+        return this.getPrecise(rateToUse * this.beta);
+      }
+      cubicSuccess(timestamp) {
+        return this.getPrecise(
+          this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate
+        );
+      }
+      enableTokenBucket() {
+        this.enabled = true;
+      }
+      updateTokenBucketRate(newRate) {
+        this.refillTokenBucket();
+        this.fillRate = Math.max(newRate, this.minFillRate);
+        this.maxCapacity = Math.max(newRate, this.minCapacity);
+        this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);
+      }
+      updateMeasuredRate() {
+        const t = this.getCurrentTimeInSeconds();
+        const timeBucket = Math.floor(t * 2) / 2;
+        this.requestCount++;
+        if (timeBucket > this.lastTxRateBucket) {
+          const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);
+          this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));
+          this.requestCount = 0;
+          this.lastTxRateBucket = timeBucket;
+        }
+      }
+      getPrecise(num) {
+        return parseFloat(num.toFixed(8));
+      }
+    };
+    __name2(_DefaultRateLimiter, "DefaultRateLimiter");
+    _DefaultRateLimiter.setTimeoutFn = setTimeout;
+    var DefaultRateLimiter = _DefaultRateLimiter;
+    var DEFAULT_RETRY_DELAY_BASE = 100;
+    var MAXIMUM_RETRY_DELAY = 20 * 1e3;
+    var THROTTLING_RETRY_DELAY_BASE = 500;
+    var INITIAL_RETRY_TOKENS = 500;
+    var RETRY_COST = 5;
+    var TIMEOUT_RETRY_COST = 10;
+    var NO_RETRY_INCREMENT = 1;
+    var INVOCATION_ID_HEADER = "amz-sdk-invocation-id";
+    var REQUEST_HEADER = "amz-sdk-request";
+    var getDefaultRetryBackoffStrategy = /* @__PURE__ */ __name2(() => {
+      let delayBase = DEFAULT_RETRY_DELAY_BASE;
+      const computeNextBackoffDelay = /* @__PURE__ */ __name2((attempts) => {
+        return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));
+      }, "computeNextBackoffDelay");
+      const setDelayBase = /* @__PURE__ */ __name2((delay) => {
+        delayBase = delay;
+      }, "setDelayBase");
+      return {
+        computeNextBackoffDelay,
+        setDelayBase
+      };
+    }, "getDefaultRetryBackoffStrategy");
+    var createDefaultRetryToken = /* @__PURE__ */ __name2(({
+      retryDelay,
+      retryCount,
+      retryCost
+    }) => {
+      const getRetryCount = /* @__PURE__ */ __name2(() => retryCount, "getRetryCount");
+      const getRetryDelay = /* @__PURE__ */ __name2(() => Math.min(MAXIMUM_RETRY_DELAY, retryDelay), "getRetryDelay");
+      const getRetryCost = /* @__PURE__ */ __name2(() => retryCost, "getRetryCost");
+      return {
+        getRetryCount,
+        getRetryDelay,
+        getRetryCost
+      };
+    }, "createDefaultRetryToken");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttempts) {
+        this.maxAttempts = maxAttempts;
+        this.mode = "standard";
+        this.capacity = INITIAL_RETRY_TOKENS;
+        this.retryBackoffStrategy = getDefaultRetryBackoffStrategy();
+        this.maxAttemptsProvider = typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts;
+      }
+      // eslint-disable-next-line @typescript-eslint/no-unused-vars
+      async acquireInitialRetryToken(retryTokenScope) {
+        return createDefaultRetryToken({
+          retryDelay: DEFAULT_RETRY_DELAY_BASE,
+          retryCount: 0
+        });
+      }
+      async refreshRetryTokenForRetry(token, errorInfo) {
+        const maxAttempts = await this.getMaxAttempts();
+        if (this.shouldRetry(token, errorInfo, maxAttempts)) {
+          const errorType = errorInfo.errorType;
+          this.retryBackoffStrategy.setDelayBase(
+            errorType === "THROTTLING" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE
+          );
+          const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());
+          const retryDelay = errorInfo.retryAfterHint ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType) : delayFromErrorType;
+          const capacityCost = this.getCapacityCost(errorType);
+          this.capacity -= capacityCost;
+          return createDefaultRetryToken({
+            retryDelay,
+            retryCount: token.getRetryCount() + 1,
+            retryCost: capacityCost
+          });
+        }
+        throw new Error("No retry token available");
+      }
+      recordSuccess(token) {
+        this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));
+      }
+      /**
+       * @returns the current available retry capacity.
+       *
+       * This number decreases when retries are executed and refills when requests or retries succeed.
+       */
+      getCapacity() {
+        return this.capacity;
+      }
+      async getMaxAttempts() {
+        try {
+          return await this.maxAttemptsProvider();
+        } catch (error) {
+          console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);
+          return DEFAULT_MAX_ATTEMPTS;
+        }
+      }
+      shouldRetry(tokenToRenew, errorInfo, maxAttempts) {
+        const attempts = tokenToRenew.getRetryCount() + 1;
+        return attempts < maxAttempts && this.capacity >= this.getCapacityCost(errorInfo.errorType) && this.isRetryableError(errorInfo.errorType);
+      }
+      getCapacityCost(errorType) {
+        return errorType === "TRANSIENT" ? TIMEOUT_RETRY_COST : RETRY_COST;
+      }
+      isRetryableError(errorType) {
+        return errorType === "THROTTLING" || errorType === "TRANSIENT";
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = "adaptive";
+        const { rateLimiter } = options ?? {};
+        this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();
+        this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);
+      }
+      async acquireInitialRetryToken(retryTokenScope) {
+        await this.rateLimiter.getSendToken();
+        return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        this.rateLimiter.updateClientSendingRate(errorInfo);
+        return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+      }
+      recordSuccess(token) {
+        this.rateLimiter.updateClientSendingRate({});
+        this.standardRetryStrategy.recordSuccess(token);
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var _ConfiguredRetryStrategy = class _ConfiguredRetryStrategy extends StandardRetryStrategy {
+      /**
+       * @param maxAttempts - the maximum number of retry attempts allowed.
+       *                      e.g., if set to 3, then 4 total requests are possible.
+       * @param computeNextBackoffDelay - a millisecond delay for each retry or a function that takes the retry attempt
+       *                                  and returns the delay.
+       *
+       * @example exponential backoff.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, (attempt) => attempt ** 2)
+       * });
+       * ```
+       * @example constant delay.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, 2000)
+       * });
+       * ```
+       */
+      constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) {
+        super(typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts);
+        if (typeof computeNextBackoffDelay === "number") {
+          this.computeNextBackoffDelay = () => computeNextBackoffDelay;
+        } else {
+          this.computeNextBackoffDelay = computeNextBackoffDelay;
+        }
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+        token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount());
+        return token;
+      }
+    };
+    __name2(_ConfiguredRetryStrategy, "ConfiguredRetryStrategy");
+    var ConfiguredRetryStrategy = _ConfiguredRetryStrategy;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js
+var require_dist_cjs32 = __commonJS({
+  "../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      constructStack: () => constructStack
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAllAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      const _aliases = [];
+      if (name) {
+        _aliases.push(name);
+      }
+      if (aliases) {
+        for (const alias of aliases) {
+          _aliases.push(alias);
+        }
+      }
+      return _aliases;
+    }, "getAllAliases");
+    var getMiddlewareNameWithAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      return `${name || "anonymous"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(",")})` : ""}`;
+    }, "getMiddlewareNameWithAliases");
+    var constructStack = /* @__PURE__ */ __name2(() => {
+      let absoluteEntries = [];
+      let relativeEntries = [];
+      let identifyOnResolve = false;
+      const entriesNameSet = /* @__PURE__ */ new Set();
+      const sort = /* @__PURE__ */ __name2((entries) => entries.sort(
+        (a, b) => stepWeights[b.step] - stepWeights[a.step] || priorityWeights[b.priority || "normal"] - priorityWeights[a.priority || "normal"]
+      ), "sort");
+      const removeByName = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          const aliases = getAllAliases(entry.name, entry.aliases);
+          if (aliases.includes(toRemove)) {
+            isRemoved = true;
+            for (const alias of aliases) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByName");
+      const removeByReference = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          if (entry.middleware === toRemove) {
+            isRemoved = true;
+            for (const alias of getAllAliases(entry.name, entry.aliases)) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByReference");
+      const cloneTo = /* @__PURE__ */ __name2((toStack) => {
+        var _a7;
+        absoluteEntries.forEach((entry) => {
+          toStack.add(entry.middleware, { ...entry });
+        });
+        relativeEntries.forEach((entry) => {
+          toStack.addRelativeTo(entry.middleware, { ...entry });
+        });
+        (_a7 = toStack.identifyOnResolve) == null ? void 0 : _a7.call(toStack, stack.identifyOnResolve());
+        return toStack;
+      }, "cloneTo");
+      const expandRelativeMiddlewareList = /* @__PURE__ */ __name2((from) => {
+        const expandedMiddlewareList = [];
+        from.before.forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        expandedMiddlewareList.push(from);
+        from.after.reverse().forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        return expandedMiddlewareList;
+      }, "expandRelativeMiddlewareList");
+      const getMiddlewareList = /* @__PURE__ */ __name2((debug = false) => {
+        const normalizedAbsoluteEntries = [];
+        const normalizedRelativeEntries = [];
+        const normalizedEntriesNameMap = {};
+        absoluteEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedAbsoluteEntries.push(normalizedEntry);
+        });
+        relativeEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedRelativeEntries.push(normalizedEntry);
+        });
+        normalizedRelativeEntries.forEach((entry) => {
+          if (entry.toMiddleware) {
+            const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];
+            if (toMiddleware === void 0) {
+              if (debug) {
+                return;
+              }
+              throw new Error(
+                `${entry.toMiddleware} is not found when adding ${getMiddlewareNameWithAliases(entry.name, entry.aliases)} middleware ${entry.relation} ${entry.toMiddleware}`
+              );
+            }
+            if (entry.relation === "after") {
+              toMiddleware.after.push(entry);
+            }
+            if (entry.relation === "before") {
+              toMiddleware.before.push(entry);
+            }
+          }
+        });
+        const mainChain = sort(normalizedAbsoluteEntries).map(expandRelativeMiddlewareList).reduce(
+          (wholeList, expandedMiddlewareList) => {
+            wholeList.push(...expandedMiddlewareList);
+            return wholeList;
+          },
+          []
+        );
+        return mainChain;
+      }, "getMiddlewareList");
+      const stack = {
+        add: (middleware, options = {}) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            step: "initialize",
+            priority: "normal",
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = absoluteEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = absoluteEntries[toOverrideIndex];
+                if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware with ${toOverride.priority} priority in ${toOverride.step} step cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware with ${entry.priority} priority in ${entry.step} step.`
+                  );
+                }
+                absoluteEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          absoluteEntries.push(entry);
+        },
+        addRelativeTo: (middleware, options) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = relativeEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = relativeEntries[toOverrideIndex];
+                if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware ${toOverride.relation} "${toOverride.toMiddleware}" middleware cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware ${entry.relation} "${entry.toMiddleware}" middleware.`
+                  );
+                }
+                relativeEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          relativeEntries.push(entry);
+        },
+        clone: () => cloneTo(constructStack()),
+        use: (plugin) => {
+          plugin.applyToStack(stack);
+        },
+        remove: (toRemove) => {
+          if (typeof toRemove === "string")
+            return removeByName(toRemove);
+          else
+            return removeByReference(toRemove);
+        },
+        removeByTag: (toRemove) => {
+          let isRemoved = false;
+          const filterCb = /* @__PURE__ */ __name2((entry) => {
+            const { tags, name, aliases: _aliases } = entry;
+            if (tags && tags.includes(toRemove)) {
+              const aliases = getAllAliases(name, _aliases);
+              for (const alias of aliases) {
+                entriesNameSet.delete(alias);
+              }
+              isRemoved = true;
+              return false;
+            }
+            return true;
+          }, "filterCb");
+          absoluteEntries = absoluteEntries.filter(filterCb);
+          relativeEntries = relativeEntries.filter(filterCb);
+          return isRemoved;
+        },
+        concat: (from) => {
+          var _a7;
+          const cloned = cloneTo(constructStack());
+          cloned.use(from);
+          cloned.identifyOnResolve(
+            identifyOnResolve || cloned.identifyOnResolve() || (((_a7 = from.identifyOnResolve) == null ? void 0 : _a7.call(from)) ?? false)
+          );
+          return cloned;
+        },
+        applyToStack: cloneTo,
+        identify: () => {
+          return getMiddlewareList(true).map((mw) => {
+            const step = mw.step ?? mw.relation + " " + mw.toMiddleware;
+            return getMiddlewareNameWithAliases(mw.name, mw.aliases) + " - " + step;
+          });
+        },
+        identifyOnResolve(toggle) {
+          if (typeof toggle === "boolean")
+            identifyOnResolve = toggle;
+          return identifyOnResolve;
+        },
+        resolve: (handler2, context) => {
+          for (const middleware of getMiddlewareList().map((entry) => entry.middleware).reverse()) {
+            handler2 = middleware(handler2, context);
+          }
+          if (identifyOnResolve) {
+            console.log(stack.identify());
+          }
+          return handler2;
+        }
+      };
+      return stack;
+    }, "constructStack");
+    var stepWeights = {
+      initialize: 5,
+      serialize: 4,
+      build: 3,
+      finalizeRequest: 2,
+      deserialize: 1
+    };
+    var priorityWeights = {
+      high: 3,
+      normal: 2,
+      low: 1
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/smithy-client/dist-cjs/index.js
+var require_dist_cjs33 = __commonJS({
+  "../../../node_modules/@smithy/smithy-client/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Client: () => Client,
+      Command: () => Command,
+      LazyJsonString: () => LazyJsonString,
+      NoOpLogger: () => NoOpLogger,
+      SENSITIVE_STRING: () => SENSITIVE_STRING,
+      ServiceException: () => ServiceException,
+      _json: () => _json,
+      collectBody: () => import_protocols2.collectBody,
+      convertMap: () => convertMap,
+      createAggregatedClient: () => createAggregatedClient,
+      dateToUtcString: () => dateToUtcString,
+      decorateServiceException: () => decorateServiceException,
+      emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion2,
+      expectBoolean: () => expectBoolean,
+      expectByte: () => expectByte,
+      expectFloat32: () => expectFloat32,
+      expectInt: () => expectInt,
+      expectInt32: () => expectInt32,
+      expectLong: () => expectLong,
+      expectNonNull: () => expectNonNull,
+      expectNumber: () => expectNumber,
+      expectObject: () => expectObject,
+      expectShort: () => expectShort,
+      expectString: () => expectString,
+      expectUnion: () => expectUnion2,
+      extendedEncodeURIComponent: () => import_protocols2.extendedEncodeURIComponent,
+      getArrayIfSingleItem: () => getArrayIfSingleItem,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      getDefaultExtensionConfiguration: () => getDefaultExtensionConfiguration,
+      getValueFromTextNode: () => getValueFromTextNode2,
+      handleFloat: () => handleFloat,
+      isSerializableHeaderValue: () => isSerializableHeaderValue,
+      limitedParseDouble: () => limitedParseDouble,
+      limitedParseFloat: () => limitedParseFloat,
+      limitedParseFloat32: () => limitedParseFloat32,
+      loadConfigsForDefaultMode: () => loadConfigsForDefaultMode,
+      logger: () => logger,
+      map: () => map,
+      parseBoolean: () => parseBoolean,
+      parseEpochTimestamp: () => parseEpochTimestamp,
+      parseRfc3339DateTime: () => parseRfc3339DateTime,
+      parseRfc3339DateTimeWithOffset: () => parseRfc3339DateTimeWithOffset,
+      parseRfc7231DateTime: () => parseRfc7231DateTime,
+      quoteHeader: () => quoteHeader,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig,
+      resolvedPath: () => import_protocols2.resolvedPath,
+      serializeDateTime: () => serializeDateTime,
+      serializeFloat: () => serializeFloat,
+      splitEvery: () => splitEvery,
+      splitHeader: () => splitHeader,
+      strictParseByte: () => strictParseByte,
+      strictParseDouble: () => strictParseDouble,
+      strictParseFloat: () => strictParseFloat,
+      strictParseFloat32: () => strictParseFloat32,
+      strictParseInt: () => strictParseInt,
+      strictParseInt32: () => strictParseInt32,
+      strictParseLong: () => strictParseLong,
+      strictParseShort: () => strictParseShort,
+      take: () => take,
+      throwDefaultError: () => throwDefaultError,
+      withBaseException: () => withBaseException
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_stack = require_dist_cjs32();
+    var _Client = class _Client {
+      constructor(config) {
+        this.config = config;
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      send(command, optionsOrCb, cb) {
+        const options = typeof optionsOrCb !== "function" ? optionsOrCb : void 0;
+        const callback = typeof optionsOrCb === "function" ? optionsOrCb : cb;
+        const useHandlerCache = options === void 0 && this.config.cacheMiddleware === true;
+        let handler2;
+        if (useHandlerCache) {
+          if (!this.handlers) {
+            this.handlers = /* @__PURE__ */ new WeakMap();
+          }
+          const handlers = this.handlers;
+          if (handlers.has(command.constructor)) {
+            handler2 = handlers.get(command.constructor);
+          } else {
+            handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+            handlers.set(command.constructor, handler2);
+          }
+        } else {
+          delete this.handlers;
+          handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+        }
+        if (callback) {
+          handler2(command).then(
+            (result) => callback(null, result.output),
+            (err) => callback(err)
+          ).catch(
+            // prevent any errors thrown in the callback from triggering an
+            // unhandled promise rejection
+            () => {
+            }
+          );
+        } else {
+          return handler2(command).then((result) => result.output);
+        }
+      }
+      destroy() {
+        var _a7, _b, _c;
+        (_c = (_b = (_a7 = this.config) == null ? void 0 : _a7.requestHandler) == null ? void 0 : _b.destroy) == null ? void 0 : _c.call(_b);
+        delete this.handlers;
+      }
+    };
+    __name2(_Client, "Client");
+    var Client = _Client;
+    var import_protocols2 = (init_protocols(), __toCommonJS(protocols_exports));
+    var import_types8 = require_dist_cjs();
+    var _Command = class _Command {
+      constructor() {
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      /**
+       * Factory for Command ClassBuilder.
+       * @internal
+       */
+      static classBuilder() {
+        return new ClassBuilder();
+      }
+      /**
+       * @internal
+       */
+      resolveMiddlewareWithContext(clientStack, configuration, options, {
+        middlewareFn,
+        clientName,
+        commandName,
+        inputFilterSensitiveLog,
+        outputFilterSensitiveLog,
+        smithyContext,
+        additionalContext,
+        CommandCtor
+      }) {
+        for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {
+          this.middlewareStack.use(mw);
+        }
+        const stack = clientStack.concat(this.middlewareStack);
+        const { logger: logger2 } = configuration;
+        const handlerExecutionContext = {
+          logger: logger2,
+          clientName,
+          commandName,
+          inputFilterSensitiveLog,
+          outputFilterSensitiveLog,
+          [import_types8.SMITHY_CONTEXT_KEY]: {
+            commandInstance: this,
+            ...smithyContext
+          },
+          ...additionalContext
+        };
+        const { requestHandler } = configuration;
+        return stack.resolve(
+          (request2) => requestHandler.handle(request2.request, options || {}),
+          handlerExecutionContext
+        );
+      }
+    };
+    __name2(_Command, "Command");
+    var Command = _Command;
+    var _ClassBuilder = class _ClassBuilder {
+      constructor() {
+        this._init = () => {
+        };
+        this._ep = {};
+        this._middlewareFn = () => [];
+        this._commandName = "";
+        this._clientName = "";
+        this._additionalContext = {};
+        this._smithyContext = {};
+        this._inputFilterSensitiveLog = (_) => _;
+        this._outputFilterSensitiveLog = (_) => _;
+        this._serializer = null;
+        this._deserializer = null;
+      }
+      /**
+       * Optional init callback.
+       */
+      init(cb) {
+        this._init = cb;
+      }
+      /**
+       * Set the endpoint parameter instructions.
+       */
+      ep(endpointParameterInstructions) {
+        this._ep = endpointParameterInstructions;
+        return this;
+      }
+      /**
+       * Add any number of middleware.
+       */
+      m(middlewareSupplier) {
+        this._middlewareFn = middlewareSupplier;
+        return this;
+      }
+      /**
+       * Set the initial handler execution context Smithy field.
+       */
+      s(service, operation, smithyContext = {}) {
+        this._smithyContext = {
+          service,
+          operation,
+          ...smithyContext
+        };
+        return this;
+      }
+      /**
+       * Set the initial handler execution context.
+       */
+      c(additionalContext = {}) {
+        this._additionalContext = additionalContext;
+        return this;
+      }
+      /**
+       * Set constant string identifiers for the operation.
+       */
+      n(clientName, commandName) {
+        this._clientName = clientName;
+        this._commandName = commandName;
+        return this;
+      }
+      /**
+       * Set the input and output sensistive log filters.
+       */
+      f(inputFilter = (_) => _, outputFilter = (_) => _) {
+        this._inputFilterSensitiveLog = inputFilter;
+        this._outputFilterSensitiveLog = outputFilter;
+        return this;
+      }
+      /**
+       * Sets the serializer.
+       */
+      ser(serializer) {
+        this._serializer = serializer;
+        return this;
+      }
+      /**
+       * Sets the deserializer.
+       */
+      de(deserializer) {
+        this._deserializer = deserializer;
+        return this;
+      }
+      /**
+       * @returns a Command class with the classBuilder properties.
+       */
+      build() {
+        var _a7;
+        const closure = this;
+        let CommandRef;
+        return CommandRef = (_a7 = class extends Command {
+          /**
+           * @public
+           */
+          constructor(...[input]) {
+            super();
+            this.serialize = closure._serializer;
+            this.deserialize = closure._deserializer;
+            this.input = input ?? {};
+            closure._init(this);
+          }
+          /**
+           * @public
+           */
+          static getEndpointParameterInstructions() {
+            return closure._ep;
+          }
+          /**
+           * @internal
+           */
+          resolveMiddleware(stack, configuration, options) {
+            return this.resolveMiddlewareWithContext(stack, configuration, options, {
+              CommandCtor: CommandRef,
+              middlewareFn: closure._middlewareFn,
+              clientName: closure._clientName,
+              commandName: closure._commandName,
+              inputFilterSensitiveLog: closure._inputFilterSensitiveLog,
+              outputFilterSensitiveLog: closure._outputFilterSensitiveLog,
+              smithyContext: closure._smithyContext,
+              additionalContext: closure._additionalContext
+            });
+          }
+        }, __name2(_a7, "CommandRef"), _a7);
+      }
+    };
+    __name2(_ClassBuilder, "ClassBuilder");
+    var ClassBuilder = _ClassBuilder;
+    var SENSITIVE_STRING = "***SensitiveInformation***";
+    var createAggregatedClient = /* @__PURE__ */ __name2((commands, Client2) => {
+      for (const command of Object.keys(commands)) {
+        const CommandCtor = commands[command];
+        const methodImpl = /* @__PURE__ */ __name2(async function(args, optionsOrCb, cb) {
+          const command2 = new CommandCtor(args);
+          if (typeof optionsOrCb === "function") {
+            this.send(command2, optionsOrCb);
+          } else if (typeof cb === "function") {
+            if (typeof optionsOrCb !== "object")
+              throw new Error(`Expected http options but got ${typeof optionsOrCb}`);
+            this.send(command2, optionsOrCb || {}, cb);
+          } else {
+            return this.send(command2, optionsOrCb);
+          }
+        }, "methodImpl");
+        const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
+        Client2.prototype[methodName] = methodImpl;
+      }
+    }, "createAggregatedClient");
+    var parseBoolean = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "true":
+          return true;
+        case "false":
+          return false;
+        default:
+          throw new Error(`Unable to parse boolean value "${value}"`);
+      }
+    }, "parseBoolean");
+    var expectBoolean = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "number") {
+        if (value === 0 || value === 1) {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (value === 0) {
+          return false;
+        }
+        if (value === 1) {
+          return true;
+        }
+      }
+      if (typeof value === "string") {
+        const lower = value.toLowerCase();
+        if (lower === "false" || lower === "true") {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (lower === "false") {
+          return false;
+        }
+        if (lower === "true") {
+          return true;
+        }
+      }
+      if (typeof value === "boolean") {
+        return value;
+      }
+      throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);
+    }, "expectBoolean");
+    var expectNumber = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        const parsed = parseFloat(value);
+        if (!Number.isNaN(parsed)) {
+          if (String(parsed) !== String(value)) {
+            logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));
+          }
+          return parsed;
+        }
+      }
+      if (typeof value === "number") {
+        return value;
+      }
+      throw new TypeError(`Expected number, got ${typeof value}: ${value}`);
+    }, "expectNumber");
+    var MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));
+    var expectFloat32 = /* @__PURE__ */ __name2((value) => {
+      const expected = expectNumber(value);
+      if (expected !== void 0 && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {
+        if (Math.abs(expected) > MAX_FLOAT) {
+          throw new TypeError(`Expected 32-bit float, got ${value}`);
+        }
+      }
+      return expected;
+    }, "expectFloat32");
+    var expectLong = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (Number.isInteger(value) && !Number.isNaN(value)) {
+        return value;
+      }
+      throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);
+    }, "expectLong");
+    var expectInt = expectLong;
+    var expectInt32 = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 32), "expectInt32");
+    var expectShort = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 16), "expectShort");
+    var expectByte = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 8), "expectByte");
+    var expectSizedInt = /* @__PURE__ */ __name2((value, size) => {
+      const expected = expectLong(value);
+      if (expected !== void 0 && castInt(expected, size) !== expected) {
+        throw new TypeError(`Expected ${size}-bit integer, got ${value}`);
+      }
+      return expected;
+    }, "expectSizedInt");
+    var castInt = /* @__PURE__ */ __name2((value, size) => {
+      switch (size) {
+        case 32:
+          return Int32Array.of(value)[0];
+        case 16:
+          return Int16Array.of(value)[0];
+        case 8:
+          return Int8Array.of(value)[0];
+      }
+    }, "castInt");
+    var expectNonNull = /* @__PURE__ */ __name2((value, location) => {
+      if (value === null || value === void 0) {
+        if (location) {
+          throw new TypeError(`Expected a non-null value for ${location}`);
+        }
+        throw new TypeError("Expected a non-null value");
+      }
+      return value;
+    }, "expectNonNull");
+    var expectObject = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "object" && !Array.isArray(value)) {
+        return value;
+      }
+      const receivedType = Array.isArray(value) ? "array" : typeof value;
+      throw new TypeError(`Expected object, got ${receivedType}: ${value}`);
+    }, "expectObject");
+    var expectString = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        return value;
+      }
+      if (["boolean", "number", "bigint"].includes(typeof value)) {
+        logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));
+        return String(value);
+      }
+      throw new TypeError(`Expected string, got ${typeof value}: ${value}`);
+    }, "expectString");
+    var expectUnion2 = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      const asObject = expectObject(value);
+      const setKeys = Object.entries(asObject).filter(([, v]) => v != null).map(([k]) => k);
+      if (setKeys.length === 0) {
+        throw new TypeError(`Unions must have exactly one non-null member. None were found.`);
+      }
+      if (setKeys.length > 1) {
+        throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);
+      }
+      return asObject;
+    }, "expectUnion");
+    var strictParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectNumber(parseNumber(value));
+      }
+      return expectNumber(value);
+    }, "strictParseDouble");
+    var strictParseFloat = strictParseDouble;
+    var strictParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectFloat32(parseNumber(value));
+      }
+      return expectFloat32(value);
+    }, "strictParseFloat32");
+    var NUMBER_REGEX = /(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g;
+    var parseNumber = /* @__PURE__ */ __name2((value) => {
+      const matches = value.match(NUMBER_REGEX);
+      if (matches === null || matches[0].length !== value.length) {
+        throw new TypeError(`Expected real number, got implicit NaN`);
+      }
+      return parseFloat(value);
+    }, "parseNumber");
+    var limitedParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectNumber(value);
+    }, "limitedParseDouble");
+    var handleFloat = limitedParseDouble;
+    var limitedParseFloat = limitedParseDouble;
+    var limitedParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectFloat32(value);
+    }, "limitedParseFloat32");
+    var parseFloatString = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "NaN":
+          return NaN;
+        case "Infinity":
+          return Infinity;
+        case "-Infinity":
+          return -Infinity;
+        default:
+          throw new Error(`Unable to parse float value: ${value}`);
+      }
+    }, "parseFloatString");
+    var strictParseLong = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectLong(parseNumber(value));
+      }
+      return expectLong(value);
+    }, "strictParseLong");
+    var strictParseInt = strictParseLong;
+    var strictParseInt32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectInt32(parseNumber(value));
+      }
+      return expectInt32(value);
+    }, "strictParseInt32");
+    var strictParseShort = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectShort(parseNumber(value));
+      }
+      return expectShort(value);
+    }, "strictParseShort");
+    var strictParseByte = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectByte(parseNumber(value));
+      }
+      return expectByte(value);
+    }, "strictParseByte");
+    var stackTraceWarning = /* @__PURE__ */ __name2((message) => {
+      return String(new TypeError(message).stack || message).split("\n").slice(0, 5).filter((s) => !s.includes("stackTraceWarning")).join("\n");
+    }, "stackTraceWarning");
+    var logger = {
+      warn: console.warn
+    };
+    var DAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
+    var MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
+    function dateToUtcString(date) {
+      const year = date.getUTCFullYear();
+      const month = date.getUTCMonth();
+      const dayOfWeek = date.getUTCDay();
+      const dayOfMonthInt = date.getUTCDate();
+      const hoursInt = date.getUTCHours();
+      const minutesInt = date.getUTCMinutes();
+      const secondsInt = date.getUTCSeconds();
+      const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;
+      const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;
+      const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;
+      const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;
+      return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;
+    }
+    __name2(dateToUtcString, "dateToUtcString");
+    var RFC3339 = new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/);
+    var parseRfc3339DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+    }, "parseRfc3339DateTime");
+    var RFC3339_WITH_OFFSET = new RegExp(
+      /^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/
+    );
+    var parseRfc3339DateTimeWithOffset = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339_WITH_OFFSET.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+      if (offsetStr.toUpperCase() != "Z") {
+        date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));
+      }
+      return date;
+    }, "parseRfc3339DateTimeWithOffset");
+    var IMF_FIXDATE = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var RFC_850_DATE = new RegExp(
+      /^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var ASC_TIME = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/
+    );
+    var parseRfc7231DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-7231 date-times must be expressed as strings");
+      }
+      let match = IMF_FIXDATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr, "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      match = RFC_850_DATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return adjustRfc850Year(
+          buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, "day", 1, 31), {
+            hours,
+            minutes,
+            seconds,
+            fractionalMilliseconds
+          })
+        );
+      }
+      match = ASC_TIME.exec(value);
+      if (match) {
+        const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr.trimLeft(), "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      throw new TypeError("Invalid RFC-7231 date-time value");
+    }, "parseRfc7231DateTime");
+    var parseEpochTimestamp = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      let valueAsDouble;
+      if (typeof value === "number") {
+        valueAsDouble = value;
+      } else if (typeof value === "string") {
+        valueAsDouble = strictParseDouble(value);
+      } else if (typeof value === "object" && value.tag === 1) {
+        valueAsDouble = value.value;
+      } else {
+        throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");
+      }
+      if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {
+        throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");
+      }
+      return new Date(Math.round(valueAsDouble * 1e3));
+    }, "parseEpochTimestamp");
+    var buildDate = /* @__PURE__ */ __name2((year, month, day, time) => {
+      const adjustedMonth = month - 1;
+      validateDayOfMonth(year, adjustedMonth, day);
+      return new Date(
+        Date.UTC(
+          year,
+          adjustedMonth,
+          day,
+          parseDateValue(time.hours, "hour", 0, 23),
+          parseDateValue(time.minutes, "minute", 0, 59),
+          // seconds can go up to 60 for leap seconds
+          parseDateValue(time.seconds, "seconds", 0, 60),
+          parseMilliseconds(time.fractionalMilliseconds)
+        )
+      );
+    }, "buildDate");
+    var parseTwoDigitYear = /* @__PURE__ */ __name2((value) => {
+      const thisYear = (/* @__PURE__ */ new Date()).getUTCFullYear();
+      const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));
+      if (valueInThisCentury < thisYear) {
+        return valueInThisCentury + 100;
+      }
+      return valueInThisCentury;
+    }, "parseTwoDigitYear");
+    var FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1e3;
+    var adjustRfc850Year = /* @__PURE__ */ __name2((input) => {
+      if (input.getTime() - (/* @__PURE__ */ new Date()).getTime() > FIFTY_YEARS_IN_MILLIS) {
+        return new Date(
+          Date.UTC(
+            input.getUTCFullYear() - 100,
+            input.getUTCMonth(),
+            input.getUTCDate(),
+            input.getUTCHours(),
+            input.getUTCMinutes(),
+            input.getUTCSeconds(),
+            input.getUTCMilliseconds()
+          )
+        );
+      }
+      return input;
+    }, "adjustRfc850Year");
+    var parseMonthByShortName = /* @__PURE__ */ __name2((value) => {
+      const monthIdx = MONTHS.indexOf(value);
+      if (monthIdx < 0) {
+        throw new TypeError(`Invalid month: ${value}`);
+      }
+      return monthIdx + 1;
+    }, "parseMonthByShortName");
+    var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+    var validateDayOfMonth = /* @__PURE__ */ __name2((year, month, day) => {
+      let maxDays = DAYS_IN_MONTH[month];
+      if (month === 1 && isLeapYear(year)) {
+        maxDays = 29;
+      }
+      if (day > maxDays) {
+        throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);
+      }
+    }, "validateDayOfMonth");
+    var isLeapYear = /* @__PURE__ */ __name2((year) => {
+      return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
+    }, "isLeapYear");
+    var parseDateValue = /* @__PURE__ */ __name2((value, type, lower, upper) => {
+      const dateVal = strictParseByte(stripLeadingZeroes(value));
+      if (dateVal < lower || dateVal > upper) {
+        throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);
+      }
+      return dateVal;
+    }, "parseDateValue");
+    var parseMilliseconds = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return 0;
+      }
+      return strictParseFloat32("0." + value) * 1e3;
+    }, "parseMilliseconds");
+    var parseOffsetToMilliseconds = /* @__PURE__ */ __name2((value) => {
+      const directionStr = value[0];
+      let direction = 1;
+      if (directionStr == "+") {
+        direction = 1;
+      } else if (directionStr == "-") {
+        direction = -1;
+      } else {
+        throw new TypeError(`Offset direction, ${directionStr}, must be "+" or "-"`);
+      }
+      const hour = Number(value.substring(1, 3));
+      const minute = Number(value.substring(4, 6));
+      return direction * (hour * 60 + minute) * 60 * 1e3;
+    }, "parseOffsetToMilliseconds");
+    var stripLeadingZeroes = /* @__PURE__ */ __name2((value) => {
+      let idx = 0;
+      while (idx < value.length - 1 && value.charAt(idx) === "0") {
+        idx++;
+      }
+      if (idx === 0) {
+        return value;
+      }
+      return value.slice(idx);
+    }, "stripLeadingZeroes");
+    var _ServiceException = class _ServiceException2 extends Error {
+      constructor(options) {
+        super(options.message);
+        Object.setPrototypeOf(this, _ServiceException2.prototype);
+        this.name = options.name;
+        this.$fault = options.$fault;
+        this.$metadata = options.$metadata;
+      }
+      /**
+       * Checks if a value is an instance of ServiceException (duck typed)
+       */
+      static isInstance(value) {
+        if (!value)
+          return false;
+        const candidate = value;
+        return Boolean(candidate.$fault) && Boolean(candidate.$metadata) && (candidate.$fault === "client" || candidate.$fault === "server");
+      }
+    };
+    __name2(_ServiceException, "ServiceException");
+    var ServiceException = _ServiceException;
+    var decorateServiceException = /* @__PURE__ */ __name2((exception, additions = {}) => {
+      Object.entries(additions).filter(([, v]) => v !== void 0).forEach(([k, v]) => {
+        if (exception[k] == void 0 || exception[k] === "") {
+          exception[k] = v;
+        }
+      });
+      const message = exception.message || exception.Message || "UnknownError";
+      exception.message = message;
+      delete exception.Message;
+      return exception;
+    }, "decorateServiceException");
+    var throwDefaultError = /* @__PURE__ */ __name2(({ output, parsedBody, exceptionCtor, errorCode }) => {
+      const $metadata = deserializeMetadata(output);
+      const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + "" : void 0;
+      const response = new exceptionCtor({
+        name: (parsedBody == null ? void 0 : parsedBody.code) || (parsedBody == null ? void 0 : parsedBody.Code) || errorCode || statusCode || "UnknownError",
+        $fault: "client",
+        $metadata
+      });
+      throw decorateServiceException(response, parsedBody);
+    }, "throwDefaultError");
+    var withBaseException = /* @__PURE__ */ __name2((ExceptionCtor) => {
+      return ({ output, parsedBody, errorCode }) => {
+        throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });
+      };
+    }, "withBaseException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var loadConfigsForDefaultMode = /* @__PURE__ */ __name2((mode) => {
+      switch (mode) {
+        case "standard":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "in-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 1100
+          };
+        case "cross-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "mobile":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3e4
+          };
+        default:
+          return {};
+      }
+    }, "loadConfigsForDefaultMode");
+    var warningEmitted2 = false;
+    var emitWarningIfUnsupportedVersion2 = /* @__PURE__ */ __name2((version3) => {
+      if (version3 && !warningEmitted2 && parseInt(version3.substring(1, version3.indexOf("."))) < 16) {
+        warningEmitted2 = true;
+      }
+    }, "emitWarningIfUnsupportedVersion");
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      for (const id in import_types8.AlgorithmId) {
+        const algorithmId = import_types8.AlgorithmId[id];
+        if (runtimeConfig[algorithmId] === void 0) {
+          continue;
+        }
+        checksumAlgorithms.push({
+          algorithmId: () => algorithmId,
+          checksumConstructor: () => runtimeConfig[algorithmId]
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getRetryConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let _retryStrategy = runtimeConfig.retryStrategy;
+      return {
+        setRetryStrategy(retryStrategy) {
+          _retryStrategy = retryStrategy;
+        },
+        retryStrategy() {
+          return _retryStrategy;
+        }
+      };
+    }, "getRetryConfiguration");
+    var resolveRetryRuntimeConfig = /* @__PURE__ */ __name2((retryStrategyConfiguration) => {
+      const runtimeConfig = {};
+      runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();
+      return runtimeConfig;
+    }, "resolveRetryRuntimeConfig");
+    var getDefaultExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig),
+        ...getRetryConfiguration(runtimeConfig)
+      };
+    }, "getDefaultExtensionConfiguration");
+    var getDefaultClientConfiguration = getDefaultExtensionConfiguration;
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config),
+        ...resolveRetryRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var getArrayIfSingleItem = /* @__PURE__ */ __name2((mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray], "getArrayIfSingleItem");
+    var getValueFromTextNode2 = /* @__PURE__ */ __name2((obj) => {
+      const textNodeName = "#text";
+      for (const key in obj) {
+        if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== void 0) {
+          obj[key] = obj[key][textNodeName];
+        } else if (typeof obj[key] === "object" && obj[key] !== null) {
+          obj[key] = getValueFromTextNode2(obj[key]);
+        }
+      }
+      return obj;
+    }, "getValueFromTextNode");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => {
+      return value != null;
+    }, "isSerializableHeaderValue");
+    var LazyJsonString = /* @__PURE__ */ __name2(function LazyJsonString2(val2) {
+      const str = Object.assign(new String(val2), {
+        deserializeJSON() {
+          return JSON.parse(String(val2));
+        },
+        toString() {
+          return String(val2);
+        },
+        toJSON() {
+          return String(val2);
+        }
+      });
+      return str;
+    }, "LazyJsonString");
+    LazyJsonString.from = (object) => {
+      if (object && typeof object === "object" && (object instanceof LazyJsonString || "deserializeJSON" in object)) {
+        return object;
+      } else if (typeof object === "string" || Object.getPrototypeOf(object) === String.prototype) {
+        return LazyJsonString(String(object));
+      }
+      return LazyJsonString(JSON.stringify(object));
+    };
+    LazyJsonString.fromObject = LazyJsonString.from;
+    var _NoOpLogger = class _NoOpLogger {
+      trace() {
+      }
+      debug() {
+      }
+      info() {
+      }
+      warn() {
+      }
+      error() {
+      }
+    };
+    __name2(_NoOpLogger, "NoOpLogger");
+    var NoOpLogger = _NoOpLogger;
+    function map(arg0, arg1, arg2) {
+      let target;
+      let filter;
+      let instructions;
+      if (typeof arg1 === "undefined" && typeof arg2 === "undefined") {
+        target = {};
+        instructions = arg0;
+      } else {
+        target = arg0;
+        if (typeof arg1 === "function") {
+          filter = arg1;
+          instructions = arg2;
+          return mapWithFilter(target, filter, instructions);
+        } else {
+          instructions = arg1;
+        }
+      }
+      for (const key of Object.keys(instructions)) {
+        if (!Array.isArray(instructions[key])) {
+          target[key] = instructions[key];
+          continue;
+        }
+        applyInstruction(target, null, instructions, key);
+      }
+      return target;
+    }
+    __name2(map, "map");
+    var convertMap = /* @__PURE__ */ __name2((target) => {
+      const output = {};
+      for (const [k, v] of Object.entries(target || {})) {
+        output[k] = [, v];
+      }
+      return output;
+    }, "convertMap");
+    var take = /* @__PURE__ */ __name2((source, instructions) => {
+      const out = {};
+      for (const key in instructions) {
+        applyInstruction(out, source, instructions, key);
+      }
+      return out;
+    }, "take");
+    var mapWithFilter = /* @__PURE__ */ __name2((target, filter, instructions) => {
+      return map(
+        target,
+        Object.entries(instructions).reduce(
+          (_instructions, [key, value]) => {
+            if (Array.isArray(value)) {
+              _instructions[key] = value;
+            } else {
+              if (typeof value === "function") {
+                _instructions[key] = [filter, value()];
+              } else {
+                _instructions[key] = [filter, value];
+              }
+            }
+            return _instructions;
+          },
+          {}
+        )
+      );
+    }, "mapWithFilter");
+    var applyInstruction = /* @__PURE__ */ __name2((target, source, instructions, targetKey) => {
+      if (source !== null) {
+        let instruction = instructions[targetKey];
+        if (typeof instruction === "function") {
+          instruction = [, instruction];
+        }
+        const [filter2 = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;
+        if (typeof filter2 === "function" && filter2(source[sourceKey]) || typeof filter2 !== "function" && !!filter2) {
+          target[targetKey] = valueFn(source[sourceKey]);
+        }
+        return;
+      }
+      let [filter, value] = instructions[targetKey];
+      if (typeof value === "function") {
+        let _value;
+        const defaultFilterPassed = filter === void 0 && (_value = value()) != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(void 0) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed) {
+          target[targetKey] = _value;
+        } else if (customFilterPassed) {
+          target[targetKey] = value();
+        }
+      } else {
+        const defaultFilterPassed = filter === void 0 && value != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(value) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed || customFilterPassed) {
+          target[targetKey] = value;
+        }
+      }
+    }, "applyInstruction");
+    var nonNullish = /* @__PURE__ */ __name2((_) => _ != null, "nonNullish");
+    var pass = /* @__PURE__ */ __name2((_) => _, "pass");
+    function quoteHeader(part) {
+      if (part.includes(",") || part.includes('"')) {
+        part = `"${part.replace(/"/g, '\\"')}"`;
+      }
+      return part;
+    }
+    __name2(quoteHeader, "quoteHeader");
+    var serializeFloat = /* @__PURE__ */ __name2((value) => {
+      if (value !== value) {
+        return "NaN";
+      }
+      switch (value) {
+        case Infinity:
+          return "Infinity";
+        case -Infinity:
+          return "-Infinity";
+        default:
+          return value;
+      }
+    }, "serializeFloat");
+    var serializeDateTime = /* @__PURE__ */ __name2((date) => date.toISOString().replace(".000Z", "Z"), "serializeDateTime");
+    var _json = /* @__PURE__ */ __name2((obj) => {
+      if (obj == null) {
+        return {};
+      }
+      if (Array.isArray(obj)) {
+        return obj.filter((_) => _ != null).map(_json);
+      }
+      if (typeof obj === "object") {
+        const target = {};
+        for (const key of Object.keys(obj)) {
+          if (obj[key] == null) {
+            continue;
+          }
+          target[key] = _json(obj[key]);
+        }
+        return target;
+      }
+      return obj;
+    }, "_json");
+    function splitEvery(value, delimiter, numDelimiters) {
+      if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) {
+        throw new Error("Invalid number of delimiters (" + numDelimiters + ") for splitEvery.");
+      }
+      const segments = value.split(delimiter);
+      if (numDelimiters === 1) {
+        return segments;
+      }
+      const compoundSegments = [];
+      let currentSegment = "";
+      for (let i = 0; i < segments.length; i++) {
+        if (currentSegment === "") {
+          currentSegment = segments[i];
+        } else {
+          currentSegment += delimiter + segments[i];
+        }
+        if ((i + 1) % numDelimiters === 0) {
+          compoundSegments.push(currentSegment);
+          currentSegment = "";
+        }
+      }
+      if (currentSegment !== "") {
+        compoundSegments.push(currentSegment);
+      }
+      return compoundSegments;
+    }
+    __name2(splitEvery, "splitEvery");
+    var splitHeader = /* @__PURE__ */ __name2((value) => {
+      const z = value.length;
+      const values = [];
+      let withinQuotes = false;
+      let prevChar = void 0;
+      let anchor = 0;
+      for (let i = 0; i < z; ++i) {
+        const char = value[i];
+        switch (char) {
+          case `"`:
+            if (prevChar !== "\\") {
+              withinQuotes = !withinQuotes;
+            }
+            break;
+          case ",":
+            if (!withinQuotes) {
+              values.push(value.slice(anchor, i));
+              anchor = i + 1;
+            }
+            break;
+          default:
+        }
+        prevChar = char;
+      }
+      values.push(value.slice(anchor));
+      return values.map((v) => {
+        v = v.trim();
+        const z2 = v.length;
+        if (z2 < 2) {
+          return v;
+        }
+        if (v[0] === `"` && v[z2 - 1] === `"`) {
+          v = v.slice(1, z2 - 1);
+        }
+        return v.replace(/\\"/g, '"');
+      });
+    }, "splitHeader");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js
+var require_isStreamingPayload = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isStreamingPayload = void 0;
+    var stream_1 = require("stream");
+    var isStreamingPayload = (request2) => (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof stream_1.Readable || typeof ReadableStream !== "undefined" && (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof ReadableStream;
+    exports2.isStreamingPayload = isStreamingPayload;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js
+var require_dist_cjs34 = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      CONFIG_MAX_ATTEMPTS: () => CONFIG_MAX_ATTEMPTS,
+      CONFIG_RETRY_MODE: () => CONFIG_RETRY_MODE,
+      ENV_MAX_ATTEMPTS: () => ENV_MAX_ATTEMPTS,
+      ENV_RETRY_MODE: () => ENV_RETRY_MODE,
+      NODE_MAX_ATTEMPT_CONFIG_OPTIONS: () => NODE_MAX_ATTEMPT_CONFIG_OPTIONS,
+      NODE_RETRY_MODE_CONFIG_OPTIONS: () => NODE_RETRY_MODE_CONFIG_OPTIONS,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      defaultDelayDecider: () => defaultDelayDecider,
+      defaultRetryDecider: () => defaultRetryDecider,
+      getOmitRetryHeadersPlugin: () => getOmitRetryHeadersPlugin,
+      getRetryAfterHint: () => getRetryAfterHint,
+      getRetryPlugin: () => getRetryPlugin,
+      omitRetryHeadersMiddleware: () => omitRetryHeadersMiddleware,
+      omitRetryHeadersMiddlewareOptions: () => omitRetryHeadersMiddlewareOptions,
+      resolveRetryConfig: () => resolveRetryConfig,
+      retryMiddleware: () => retryMiddleware,
+      retryMiddlewareOptions: () => retryMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var import_util_retry = require_dist_cjs31();
+    var getDefaultRetryQuota = /* @__PURE__ */ __name2((initialRetryTokens, options) => {
+      const MAX_CAPACITY = initialRetryTokens;
+      const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT;
+      const retryCost = (options == null ? void 0 : options.retryCost) ?? import_util_retry.RETRY_COST;
+      const timeoutRetryCost = (options == null ? void 0 : options.timeoutRetryCost) ?? import_util_retry.TIMEOUT_RETRY_COST;
+      let availableCapacity = initialRetryTokens;
+      const getCapacityAmount = /* @__PURE__ */ __name2((error) => error.name === "TimeoutError" ? timeoutRetryCost : retryCost, "getCapacityAmount");
+      const hasRetryTokens = /* @__PURE__ */ __name2((error) => getCapacityAmount(error) <= availableCapacity, "hasRetryTokens");
+      const retrieveRetryTokens = /* @__PURE__ */ __name2((error) => {
+        if (!hasRetryTokens(error)) {
+          throw new Error("No retry token available");
+        }
+        const capacityAmount = getCapacityAmount(error);
+        availableCapacity -= capacityAmount;
+        return capacityAmount;
+      }, "retrieveRetryTokens");
+      const releaseRetryTokens = /* @__PURE__ */ __name2((capacityReleaseAmount) => {
+        availableCapacity += capacityReleaseAmount ?? noRetryIncrement;
+        availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);
+      }, "releaseRetryTokens");
+      return Object.freeze({
+        hasRetryTokens,
+        retrieveRetryTokens,
+        releaseRetryTokens
+      });
+    }, "getDefaultRetryQuota");
+    var defaultDelayDecider = /* @__PURE__ */ __name2((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), "defaultDelayDecider");
+    var import_service_error_classification = require_dist_cjs30();
+    var defaultRetryDecider = /* @__PURE__ */ __name2((error) => {
+      if (!error) {
+        return false;
+      }
+      return (0, import_service_error_classification.isRetryableByTrait)(error) || (0, import_service_error_classification.isClockSkewError)(error) || (0, import_service_error_classification.isThrottlingError)(error) || (0, import_service_error_classification.isTransientError)(error);
+    }, "defaultRetryDecider");
+    var asSdkError = /* @__PURE__ */ __name2((error) => {
+      if (error instanceof Error)
+        return error;
+      if (error instanceof Object)
+        return Object.assign(new Error(), error);
+      if (typeof error === "string")
+        return new Error(error);
+      return new Error(`AWS SDK error wrapper for ${error}`);
+    }, "asSdkError");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = import_util_retry.RETRY_MODES.STANDARD;
+        this.retryDecider = (options == null ? void 0 : options.retryDecider) ?? defaultRetryDecider;
+        this.delayDecider = (options == null ? void 0 : options.delayDecider) ?? defaultDelayDecider;
+        this.retryQuota = (options == null ? void 0 : options.retryQuota) ?? getDefaultRetryQuota(import_util_retry.INITIAL_RETRY_TOKENS);
+      }
+      shouldRetry(error, attempts, maxAttempts) {
+        return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);
+      }
+      async getMaxAttempts() {
+        let maxAttempts;
+        try {
+          maxAttempts = await this.maxAttemptsProvider();
+        } catch (error) {
+          maxAttempts = import_util_retry.DEFAULT_MAX_ATTEMPTS;
+        }
+        return maxAttempts;
+      }
+      async retry(next, args, options) {
+        let retryTokenAmount;
+        let attempts = 0;
+        let totalDelay = 0;
+        const maxAttempts = await this.getMaxAttempts();
+        const { request: request2 } = args;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            if (options == null ? void 0 : options.beforeRequest) {
+              await options.beforeRequest();
+            }
+            const { response, output } = await next(args);
+            if (options == null ? void 0 : options.afterRequest) {
+              options.afterRequest(response);
+            }
+            this.retryQuota.releaseRetryTokens(retryTokenAmount);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalDelay;
+            return { response, output };
+          } catch (e) {
+            const err = asSdkError(e);
+            attempts++;
+            if (this.shouldRetry(err, attempts, maxAttempts)) {
+              retryTokenAmount = this.retryQuota.retrieveRetryTokens(err);
+              const delayFromDecider = this.delayDecider(
+                (0, import_service_error_classification.isThrottlingError)(err) ? import_util_retry.THROTTLING_RETRY_DELAY_BASE : import_util_retry.DEFAULT_RETRY_DELAY_BASE,
+                attempts
+              );
+              const delayFromResponse = getDelayFromRetryAfterHeader(err.$response);
+              const delay = Math.max(delayFromResponse || 0, delayFromDecider);
+              totalDelay += delay;
+              await new Promise((resolve6) => setTimeout(resolve6, delay));
+              continue;
+            }
+            if (!err.$metadata) {
+              err.$metadata = {};
+            }
+            err.$metadata.attempts = attempts;
+            err.$metadata.totalRetryDelay = totalDelay;
+            throw err;
+          }
+        }
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var getDelayFromRetryAfterHeader = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return retryAfterSeconds * 1e3;
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate.getTime() - Date.now();
+    }, "getDelayFromRetryAfterHeader");
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy extends StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        const { rateLimiter, ...superOptions } = options ?? {};
+        super(maxAttemptsProvider, superOptions);
+        this.rateLimiter = rateLimiter ?? new import_util_retry.DefaultRateLimiter();
+        this.mode = import_util_retry.RETRY_MODES.ADAPTIVE;
+      }
+      async retry(next, args) {
+        return super.retry(next, args, {
+          beforeRequest: async () => {
+            return this.rateLimiter.getSendToken();
+          },
+          afterRequest: (response) => {
+            this.rateLimiter.updateClientSendingRate(response);
+          }
+        });
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var import_util_middleware3 = require_dist_cjs10();
+    var ENV_MAX_ATTEMPTS = "AWS_MAX_ATTEMPTS";
+    var CONFIG_MAX_ATTEMPTS = "max_attempts";
+    var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        const value = env2[ENV_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      configFileSelector: (profile) => {
+        const value = profile[CONFIG_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      default: import_util_retry.DEFAULT_MAX_ATTEMPTS
+    };
+    var resolveRetryConfig = /* @__PURE__ */ __name2((input) => {
+      const { retryStrategy } = input;
+      const maxAttempts = (0, import_util_middleware3.normalizeProvider)(input.maxAttempts ?? import_util_retry.DEFAULT_MAX_ATTEMPTS);
+      return {
+        ...input,
+        maxAttempts,
+        retryStrategy: async () => {
+          if (retryStrategy) {
+            return retryStrategy;
+          }
+          const retryMode = await (0, import_util_middleware3.normalizeProvider)(input.retryMode)();
+          if (retryMode === import_util_retry.RETRY_MODES.ADAPTIVE) {
+            return new import_util_retry.AdaptiveRetryStrategy(maxAttempts);
+          }
+          return new import_util_retry.StandardRetryStrategy(maxAttempts);
+        }
+      };
+    }, "resolveRetryConfig");
+    var ENV_RETRY_MODE = "AWS_RETRY_MODE";
+    var CONFIG_RETRY_MODE = "retry_mode";
+    var NODE_RETRY_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_RETRY_MODE],
+      configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],
+      default: import_util_retry.DEFAULT_RETRY_MODE
+    };
+    var omitRetryHeadersMiddleware = /* @__PURE__ */ __name2(() => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+        delete request2.headers[import_util_retry.INVOCATION_ID_HEADER];
+        delete request2.headers[import_util_retry.REQUEST_HEADER];
+      }
+      return next(args);
+    }, "omitRetryHeadersMiddleware");
+    var omitRetryHeadersMiddlewareOptions = {
+      name: "omitRetryHeadersMiddleware",
+      tags: ["RETRY", "HEADERS", "OMIT_RETRY_HEADERS"],
+      relation: "before",
+      toMiddleware: "awsAuthMiddleware",
+      override: true
+    };
+    var getOmitRetryHeadersPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions);
+      }
+    }), "getOmitRetryHeadersPlugin");
+    var import_smithy_client4 = require_dist_cjs33();
+    var import_isStreamingPayload = require_isStreamingPayload();
+    var retryMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7;
+      let retryStrategy = await options.retryStrategy();
+      const maxAttempts = await options.maxAttempts();
+      if (isRetryStrategyV2(retryStrategy)) {
+        retryStrategy = retryStrategy;
+        let retryToken = await retryStrategy.acquireInitialRetryToken(context["partition_id"]);
+        let lastError = new Error();
+        let attempts = 0;
+        let totalRetryDelay = 0;
+        const { request: request2 } = args;
+        const isRequest = import_protocol_http8.HttpRequest.isInstance(request2);
+        if (isRequest) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (isRequest) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            const { response, output } = await next(args);
+            retryStrategy.recordSuccess(retryToken);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalRetryDelay;
+            return { response, output };
+          } catch (e) {
+            const retryErrorInfo = getRetryErrorInfo(e);
+            lastError = asSdkError(e);
+            if (isRequest && (0, import_isStreamingPayload.isStreamingPayload)(request2)) {
+              (_a7 = context.logger instanceof import_smithy_client4.NoOpLogger ? console : context.logger) == null ? void 0 : _a7.warn(
+                "An error was encountered in a non-retryable streaming request."
+              );
+              throw lastError;
+            }
+            try {
+              retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);
+            } catch (refreshError) {
+              if (!lastError.$metadata) {
+                lastError.$metadata = {};
+              }
+              lastError.$metadata.attempts = attempts + 1;
+              lastError.$metadata.totalRetryDelay = totalRetryDelay;
+              throw lastError;
+            }
+            attempts = retryToken.getRetryCount();
+            const delay = retryToken.getRetryDelay();
+            totalRetryDelay += delay;
+            await new Promise((resolve6) => setTimeout(resolve6, delay));
+          }
+        }
+      } else {
+        retryStrategy = retryStrategy;
+        if (retryStrategy == null ? void 0 : retryStrategy.mode)
+          context.userAgent = [...context.userAgent || [], ["cfg/retry-mode", retryStrategy.mode]];
+        return retryStrategy.retry(next, args);
+      }
+    }, "retryMiddleware");
+    var isRetryStrategyV2 = /* @__PURE__ */ __name2((retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== "undefined" && typeof retryStrategy.refreshRetryTokenForRetry !== "undefined" && typeof retryStrategy.recordSuccess !== "undefined", "isRetryStrategyV2");
+    var getRetryErrorInfo = /* @__PURE__ */ __name2((error) => {
+      const errorInfo = {
+        error,
+        errorType: getRetryErrorType(error)
+      };
+      const retryAfterHint = getRetryAfterHint(error.$response);
+      if (retryAfterHint) {
+        errorInfo.retryAfterHint = retryAfterHint;
+      }
+      return errorInfo;
+    }, "getRetryErrorInfo");
+    var getRetryErrorType = /* @__PURE__ */ __name2((error) => {
+      if ((0, import_service_error_classification.isThrottlingError)(error))
+        return "THROTTLING";
+      if ((0, import_service_error_classification.isTransientError)(error))
+        return "TRANSIENT";
+      if ((0, import_service_error_classification.isServerError)(error))
+        return "SERVER_ERROR";
+      return "CLIENT_ERROR";
+    }, "getRetryErrorType");
+    var retryMiddlewareOptions = {
+      name: "retryMiddleware",
+      tags: ["RETRY"],
+      step: "finalizeRequest",
+      priority: "high",
+      override: true
+    };
+    var getRetryPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(retryMiddleware(options), retryMiddlewareOptions);
+      }
+    }), "getRetryPlugin");
+    var getRetryAfterHint = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return new Date(retryAfterSeconds * 1e3);
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate;
+    }, "getRetryAfterHint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js
+var warningEmitted, emitWarningIfUnsupportedVersion;
+var init_emitWarningIfUnsupportedVersion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js"() {
+    warningEmitted = false;
+    emitWarningIfUnsupportedVersion = (version3) => {
+      if (version3 && !warningEmitted && parseInt(version3.substring(1, version3.indexOf("."))) < 18) {
+        warningEmitted = true;
+        process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
+no longer support Node.js 16.x on January 6, 2025.
+
+To continue receiving updates to AWS services, bug fixes, and security
+updates please upgrade to a supported Node.js LTS version.
+
+More information can be found at: https://a.co/74kJMmI`);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js
+var init_client = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js"() {
+    init_emitWarningIfUnsupportedVersion();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js
+var import_protocol_http5, getDateHeader;
+var init_getDateHeader = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js"() {
+    import_protocol_http5 = __toESM(require_dist_cjs2());
+    getDateHeader = (response) => import_protocol_http5.HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : void 0;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js
+var getSkewCorrectedDate;
+var init_getSkewCorrectedDate = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js"() {
+    getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js
+var isClockSkewed;
+var init_isClockSkewed = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js"() {
+    init_getSkewCorrectedDate();
+    isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 3e5;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js
+var getUpdatedSystemClockOffset;
+var init_getUpdatedSystemClockOffset = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js"() {
+    init_isClockSkewed();
+    getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {
+      const clockTimeInMs = Date.parse(clockTime);
+      if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {
+        return clockTimeInMs - Date.now();
+      }
+      return currentSystemClockOffset;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js
+var init_utils2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js"() {
+    init_getDateHeader();
+    init_getSkewCorrectedDate();
+    init_getUpdatedSystemClockOffset();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js
+var import_protocol_http6, throwSigningPropertyError, validateSigningProperties, AwsSdkSigV4Signer, AWSSDKSigV4Signer;
+var init_AwsSdkSigV4Signer = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js"() {
+    import_protocol_http6 = __toESM(require_dist_cjs2());
+    init_utils2();
+    throwSigningPropertyError = (name, property) => {
+      if (!property) {
+        throw new Error(`Property \`${name}\` is not resolved for AWS SDK SigV4Auth`);
+      }
+      return property;
+    };
+    validateSigningProperties = async (signingProperties) => {
+      const context = throwSigningPropertyError("context", signingProperties.context);
+      const config = throwSigningPropertyError("config", signingProperties.config);
+      const authScheme = context.endpointV2?.properties?.authSchemes?.[0];
+      const signerFunction = throwSigningPropertyError("signer", config.signer);
+      const signer = await signerFunction(authScheme);
+      const signingRegion = signingProperties?.signingRegion;
+      const signingRegionSet = signingProperties?.signingRegionSet;
+      const signingName = signingProperties?.signingName;
+      return {
+        config,
+        signer,
+        signingRegion,
+        signingRegionSet,
+        signingName
+      };
+    };
+    AwsSdkSigV4Signer = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http6.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const validatedProps = await validateSigningProperties(signingProperties);
+        const { config, signer } = validatedProps;
+        let { signingRegion, signingName } = validatedProps;
+        const handlerExecutionContext = signingProperties.context;
+        if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {
+          const [first, second] = handlerExecutionContext.authSchemes;
+          if (first?.name === "sigv4a" && second?.name === "sigv4") {
+            signingRegion = second?.signingRegion ?? signingRegion;
+            signingName = second?.signingName ?? signingName;
+          }
+        }
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+      errorHandler(signingProperties) {
+        return (error) => {
+          const serverTime = error.ServerTime ?? getDateHeader(error.$response);
+          if (serverTime) {
+            const config = throwSigningPropertyError("config", signingProperties.config);
+            const initialSystemClockOffset = config.systemClockOffset;
+            config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);
+            const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;
+            if (clockSkewCorrected && error.$metadata) {
+              error.$metadata.clockSkewCorrected = true;
+            }
+          }
+          throw error;
+        };
+      }
+      successHandler(httpResponse, signingProperties) {
+        const dateHeader = getDateHeader(httpResponse);
+        if (dateHeader) {
+          const config = throwSigningPropertyError("config", signingProperties.config);
+          config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);
+        }
+      }
+    };
+    AWSSDKSigV4Signer = AwsSdkSigV4Signer;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js
+var import_protocol_http7, AwsSdkSigV4ASigner;
+var init_AwsSdkSigV4ASigner = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js"() {
+    import_protocol_http7 = __toESM(require_dist_cjs2());
+    init_utils2();
+    init_AwsSdkSigV4Signer();
+    AwsSdkSigV4ASigner = class extends AwsSdkSigV4Signer {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http7.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const { config, signer, signingRegion, signingRegionSet, signingName } = await validateSigningProperties(signingProperties);
+        const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();
+        const multiRegionOverride = (configResolvedSigningRegionSet ?? signingRegionSet ?? [signingRegion]).join(",");
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion: multiRegionOverride,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js
+var import_property_provider, resolveAwsSdkSigV4AConfig, NODE_SIGV4A_CONFIG_OPTIONS;
+var init_resolveAwsSdkSigV4AConfig = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js"() {
+    init_dist_es();
+    import_property_provider = __toESM(require_dist_cjs24());
+    resolveAwsSdkSigV4AConfig = (config) => {
+      config.sigv4aSigningRegionSet = normalizeProvider(config.sigv4aSigningRegionSet);
+      return config;
+    };
+    NODE_SIGV4A_CONFIG_OPTIONS = {
+      environmentVariableSelector(env2) {
+        if (env2.AWS_SIGV4A_SIGNING_REGION_SET) {
+          return env2.AWS_SIGV4A_SIGNING_REGION_SET.split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("AWS_SIGV4A_SIGNING_REGION_SET not set in env.", {
+          tryNextLink: true
+        });
+      },
+      configFileSelector(profile) {
+        if (profile.sigv4a_signing_region_set) {
+          return (profile.sigv4a_signing_region_set ?? "").split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("sigv4a_signing_region_set not set in profile.", {
+          tryNextLink: true
+        });
+      },
+      default: void 0
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/signature-v4/dist-cjs/index.js
+var require_dist_cjs35 = __commonJS({
+  "../../../node_modules/@smithy/signature-v4/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SignatureV4: () => SignatureV42,
+      clearCredentialCache: () => clearCredentialCache,
+      createScope: () => createScope,
+      getCanonicalHeaders: () => getCanonicalHeaders,
+      getCanonicalQuery: () => getCanonicalQuery,
+      getPayloadHash: () => getPayloadHash,
+      getSigningKey: () => getSigningKey,
+      moveHeadersToQuery: () => moveHeadersToQuery,
+      prepareRequest: () => prepareRequest
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_middleware3 = require_dist_cjs10();
+    var import_util_utf84 = require_dist_cjs15();
+    var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm";
+    var CREDENTIAL_QUERY_PARAM = "X-Amz-Credential";
+    var AMZ_DATE_QUERY_PARAM = "X-Amz-Date";
+    var SIGNED_HEADERS_QUERY_PARAM = "X-Amz-SignedHeaders";
+    var EXPIRES_QUERY_PARAM = "X-Amz-Expires";
+    var SIGNATURE_QUERY_PARAM = "X-Amz-Signature";
+    var TOKEN_QUERY_PARAM = "X-Amz-Security-Token";
+    var AUTH_HEADER = "authorization";
+    var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();
+    var DATE_HEADER = "date";
+    var GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];
+    var SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();
+    var SHA256_HEADER = "x-amz-content-sha256";
+    var TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();
+    var ALWAYS_UNSIGNABLE_HEADERS = {
+      authorization: true,
+      "cache-control": true,
+      connection: true,
+      expect: true,
+      from: true,
+      "keep-alive": true,
+      "max-forwards": true,
+      pragma: true,
+      referer: true,
+      te: true,
+      trailer: true,
+      "transfer-encoding": true,
+      upgrade: true,
+      "user-agent": true,
+      "x-amzn-trace-id": true
+    };
+    var PROXY_HEADER_PATTERN = /^proxy-/;
+    var SEC_HEADER_PATTERN = /^sec-/;
+    var ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256";
+    var EVENT_ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256-PAYLOAD";
+    var UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD";
+    var MAX_CACHE_SIZE = 50;
+    var KEY_TYPE_IDENTIFIER = "aws4_request";
+    var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;
+    var import_util_hex_encoding = require_dist_cjs21();
+    var import_util_utf8 = require_dist_cjs15();
+    var signingKeyCache = {};
+    var cacheQueue = [];
+    var createScope = /* @__PURE__ */ __name2((shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`, "createScope");
+    var getSigningKey = /* @__PURE__ */ __name2(async (sha256Constructor, credentials, shortDate, region, service) => {
+      const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);
+      const cacheKey = `${shortDate}:${region}:${service}:${(0, import_util_hex_encoding.toHex)(credsHash)}:${credentials.sessionToken}`;
+      if (cacheKey in signingKeyCache) {
+        return signingKeyCache[cacheKey];
+      }
+      cacheQueue.push(cacheKey);
+      while (cacheQueue.length > MAX_CACHE_SIZE) {
+        delete signingKeyCache[cacheQueue.shift()];
+      }
+      let key = `AWS4${credentials.secretAccessKey}`;
+      for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {
+        key = await hmac(sha256Constructor, key, signable);
+      }
+      return signingKeyCache[cacheKey] = key;
+    }, "getSigningKey");
+    var clearCredentialCache = /* @__PURE__ */ __name2(() => {
+      cacheQueue.length = 0;
+      Object.keys(signingKeyCache).forEach((cacheKey) => {
+        delete signingKeyCache[cacheKey];
+      });
+    }, "clearCredentialCache");
+    var hmac = /* @__PURE__ */ __name2((ctor, secret, data) => {
+      const hash = new ctor(secret);
+      hash.update((0, import_util_utf8.toUint8Array)(data));
+      return hash.digest();
+    }, "hmac");
+    var getCanonicalHeaders = /* @__PURE__ */ __name2(({ headers }, unsignableHeaders, signableHeaders) => {
+      const canonical = {};
+      for (const headerName of Object.keys(headers).sort()) {
+        if (headers[headerName] == void 0) {
+          continue;
+        }
+        const canonicalHeaderName = headerName.toLowerCase();
+        if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS || (unsignableHeaders == null ? void 0 : unsignableHeaders.has(canonicalHeaderName)) || PROXY_HEADER_PATTERN.test(canonicalHeaderName) || SEC_HEADER_PATTERN.test(canonicalHeaderName)) {
+          if (!signableHeaders || signableHeaders && !signableHeaders.has(canonicalHeaderName)) {
+            continue;
+          }
+        }
+        canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\s+/g, " ");
+      }
+      return canonical;
+    }, "getCanonicalHeaders");
+    var import_util_uri_escape = require_dist_cjs17();
+    var getCanonicalQuery = /* @__PURE__ */ __name2(({ query = {} }) => {
+      const keys = [];
+      const serialized = {};
+      for (const key of Object.keys(query)) {
+        if (key.toLowerCase() === SIGNATURE_HEADER) {
+          continue;
+        }
+        const encodedKey = (0, import_util_uri_escape.escapeUri)(key);
+        keys.push(encodedKey);
+        const value = query[key];
+        if (typeof value === "string") {
+          serialized[encodedKey] = `${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value)}`;
+        } else if (Array.isArray(value)) {
+          serialized[encodedKey] = value.slice(0).reduce((encoded, value2) => encoded.concat([`${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value2)}`]), []).sort().join("&");
+        }
+      }
+      return keys.sort().map((key) => serialized[key]).filter((serialized2) => serialized2).join("&");
+    }, "getCanonicalQuery");
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_util_utf82 = require_dist_cjs15();
+    var getPayloadHash = /* @__PURE__ */ __name2(async ({ headers, body }, hashConstructor) => {
+      for (const headerName of Object.keys(headers)) {
+        if (headerName.toLowerCase() === SHA256_HEADER) {
+          return headers[headerName];
+        }
+      }
+      if (body == void 0) {
+        return "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
+      } else if (typeof body === "string" || ArrayBuffer.isView(body) || (0, import_is_array_buffer.isArrayBuffer)(body)) {
+        const hashCtor = new hashConstructor();
+        hashCtor.update((0, import_util_utf82.toUint8Array)(body));
+        return (0, import_util_hex_encoding.toHex)(await hashCtor.digest());
+      }
+      return UNSIGNED_PAYLOAD;
+    }, "getPayloadHash");
+    var import_util_utf83 = require_dist_cjs15();
+    var _HeaderFormatter = class _HeaderFormatter {
+      format(headers) {
+        const chunks = [];
+        for (const headerName of Object.keys(headers)) {
+          const bytes = (0, import_util_utf83.fromUtf8)(headerName);
+          chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));
+        }
+        const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));
+        let position = 0;
+        for (const chunk of chunks) {
+          out.set(chunk, position);
+          position += chunk.byteLength;
+        }
+        return out;
+      }
+      formatHeaderValue(header) {
+        switch (header.type) {
+          case "boolean":
+            return Uint8Array.from([
+              header.value ? 0 : 1
+              /* boolFalse */
+            ]);
+          case "byte":
+            return Uint8Array.from([2, header.value]);
+          case "short":
+            const shortView = new DataView(new ArrayBuffer(3));
+            shortView.setUint8(
+              0,
+              3
+              /* short */
+            );
+            shortView.setInt16(1, header.value, false);
+            return new Uint8Array(shortView.buffer);
+          case "integer":
+            const intView = new DataView(new ArrayBuffer(5));
+            intView.setUint8(
+              0,
+              4
+              /* integer */
+            );
+            intView.setInt32(1, header.value, false);
+            return new Uint8Array(intView.buffer);
+          case "long":
+            const longBytes = new Uint8Array(9);
+            longBytes[0] = 5;
+            longBytes.set(header.value.bytes, 1);
+            return longBytes;
+          case "binary":
+            const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));
+            binView.setUint8(
+              0,
+              6
+              /* byteArray */
+            );
+            binView.setUint16(1, header.value.byteLength, false);
+            const binBytes = new Uint8Array(binView.buffer);
+            binBytes.set(header.value, 3);
+            return binBytes;
+          case "string":
+            const utf8Bytes = (0, import_util_utf83.fromUtf8)(header.value);
+            const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));
+            strView.setUint8(
+              0,
+              7
+              /* string */
+            );
+            strView.setUint16(1, utf8Bytes.byteLength, false);
+            const strBytes = new Uint8Array(strView.buffer);
+            strBytes.set(utf8Bytes, 3);
+            return strBytes;
+          case "timestamp":
+            const tsBytes = new Uint8Array(9);
+            tsBytes[0] = 8;
+            tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);
+            return tsBytes;
+          case "uuid":
+            if (!UUID_PATTERN.test(header.value)) {
+              throw new Error(`Invalid UUID received: ${header.value}`);
+            }
+            const uuidBytes = new Uint8Array(17);
+            uuidBytes[0] = 9;
+            uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1);
+            return uuidBytes;
+        }
+      }
+    };
+    __name2(_HeaderFormatter, "HeaderFormatter");
+    var HeaderFormatter = _HeaderFormatter;
+    var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
+    var _Int64 = class _Int642 {
+      constructor(bytes) {
+        this.bytes = bytes;
+        if (bytes.byteLength !== 8) {
+          throw new Error("Int64 buffers must be exactly 8 bytes");
+        }
+      }
+      static fromNumber(number) {
+        if (number > 9223372036854776e3 || number < -9223372036854776e3) {
+          throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);
+        }
+        const bytes = new Uint8Array(8);
+        for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {
+          bytes[i] = remaining;
+        }
+        if (number < 0) {
+          negate(bytes);
+        }
+        return new _Int642(bytes);
+      }
+      /**
+       * Called implicitly by infix arithmetic operators.
+       */
+      valueOf() {
+        const bytes = this.bytes.slice(0);
+        const negative = bytes[0] & 128;
+        if (negative) {
+          negate(bytes);
+        }
+        return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1);
+      }
+      toString() {
+        return String(this.valueOf());
+      }
+    };
+    __name2(_Int64, "Int64");
+    var Int64 = _Int64;
+    function negate(bytes) {
+      for (let i = 0; i < 8; i++) {
+        bytes[i] ^= 255;
+      }
+      for (let i = 7; i > -1; i--) {
+        bytes[i]++;
+        if (bytes[i] !== 0)
+          break;
+      }
+    }
+    __name2(negate, "negate");
+    var hasHeader = /* @__PURE__ */ __name2((soughtHeader, headers) => {
+      soughtHeader = soughtHeader.toLowerCase();
+      for (const headerName of Object.keys(headers)) {
+        if (soughtHeader === headerName.toLowerCase()) {
+          return true;
+        }
+      }
+      return false;
+    }, "hasHeader");
+    var import_protocol_http8 = require_dist_cjs2();
+    var moveHeadersToQuery = /* @__PURE__ */ __name2((request2, options = {}) => {
+      var _a7, _b;
+      const { headers, query = {} } = import_protocol_http8.HttpRequest.clone(request2);
+      for (const name of Object.keys(headers)) {
+        const lname = name.toLowerCase();
+        if (lname.slice(0, 6) === "x-amz-" && !((_a7 = options.unhoistableHeaders) == null ? void 0 : _a7.has(lname)) || ((_b = options.hoistableHeaders) == null ? void 0 : _b.has(lname))) {
+          query[name] = headers[name];
+          delete headers[name];
+        }
+      }
+      return {
+        ...request2,
+        headers,
+        query
+      };
+    }, "moveHeadersToQuery");
+    var prepareRequest = /* @__PURE__ */ __name2((request2) => {
+      request2 = import_protocol_http8.HttpRequest.clone(request2);
+      for (const headerName of Object.keys(request2.headers)) {
+        if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {
+          delete request2.headers[headerName];
+        }
+      }
+      return request2;
+    }, "prepareRequest");
+    var iso8601 = /* @__PURE__ */ __name2((time) => toDate(time).toISOString().replace(/\.\d{3}Z$/, "Z"), "iso8601");
+    var toDate = /* @__PURE__ */ __name2((time) => {
+      if (typeof time === "number") {
+        return new Date(time * 1e3);
+      }
+      if (typeof time === "string") {
+        if (Number(time)) {
+          return new Date(Number(time) * 1e3);
+        }
+        return new Date(time);
+      }
+      return time;
+    }, "toDate");
+    var _SignatureV4 = class _SignatureV4 {
+      constructor({
+        applyChecksum,
+        credentials,
+        region,
+        service,
+        sha256,
+        uriEscapePath = true
+      }) {
+        this.headerFormatter = new HeaderFormatter();
+        this.service = service;
+        this.sha256 = sha256;
+        this.uriEscapePath = uriEscapePath;
+        this.applyChecksum = typeof applyChecksum === "boolean" ? applyChecksum : true;
+        this.regionProvider = (0, import_util_middleware3.normalizeProvider)(region);
+        this.credentialProvider = (0, import_util_middleware3.normalizeProvider)(credentials);
+      }
+      async presign(originalRequest, options = {}) {
+        const {
+          signingDate = /* @__PURE__ */ new Date(),
+          expiresIn = 3600,
+          unsignableHeaders,
+          unhoistableHeaders,
+          signableHeaders,
+          hoistableHeaders,
+          signingRegion,
+          signingService
+        } = options;
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { longDate, shortDate } = formatDate(signingDate);
+        if (expiresIn > MAX_PRESIGNED_TTL) {
+          return Promise.reject(
+            "Signature version 4 presigned URLs must have an expiration date less than one week in the future"
+          );
+        }
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const request2 = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders, hoistableHeaders });
+        if (credentials.sessionToken) {
+          request2.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;
+        }
+        request2.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;
+        request2.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;
+        request2.query[AMZ_DATE_QUERY_PARAM] = longDate;
+        request2.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        request2.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders);
+        request2.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256))
+        );
+        return request2;
+      }
+      async sign(toSign, options) {
+        if (typeof toSign === "string") {
+          return this.signString(toSign, options);
+        } else if (toSign.headers && toSign.payload) {
+          return this.signEvent(toSign, options);
+        } else if (toSign.message) {
+          return this.signMessage(toSign, options);
+        } else {
+          return this.signRequest(toSign, options);
+        }
+      }
+      async signEvent({ headers, payload }, { signingDate = /* @__PURE__ */ new Date(), priorSignature, signingRegion, signingService }) {
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate, longDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);
+        const hash = new this.sha256();
+        hash.update(headers);
+        const hashedHeaders = (0, import_util_hex_encoding.toHex)(await hash.digest());
+        const stringToSign = [
+          EVENT_ALGORITHM_IDENTIFIER,
+          longDate,
+          scope,
+          priorSignature,
+          hashedHeaders,
+          hashedPayload
+        ].join("\n");
+        return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });
+      }
+      async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) {
+        const promise = this.signEvent(
+          {
+            headers: this.headerFormatter.format(signableMessage.message.headers),
+            payload: signableMessage.message.body
+          },
+          {
+            signingDate,
+            signingRegion,
+            signingService,
+            priorSignature: signableMessage.priorSignature
+          }
+        );
+        return promise.then((signature) => {
+          return { message: signableMessage.message, signature };
+        });
+      }
+      async signString(stringToSign, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate } = formatDate(signingDate);
+        const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      async signRequest(requestToSign, {
+        signingDate = /* @__PURE__ */ new Date(),
+        signableHeaders,
+        unsignableHeaders,
+        signingRegion,
+        signingService
+      } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const request2 = prepareRequest(requestToSign);
+        const { longDate, shortDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        request2.headers[AMZ_DATE_HEADER] = longDate;
+        if (credentials.sessionToken) {
+          request2.headers[TOKEN_HEADER] = credentials.sessionToken;
+        }
+        const payloadHash = await getPayloadHash(request2, this.sha256);
+        if (!hasHeader(SHA256_HEADER, request2.headers) && this.applyChecksum) {
+          request2.headers[SHA256_HEADER] = payloadHash;
+        }
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        const signature = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, payloadHash)
+        );
+        request2.headers[AUTH_HEADER] = `${ALGORITHM_IDENTIFIER} Credential=${credentials.accessKeyId}/${scope}, SignedHeaders=${getCanonicalHeaderList(canonicalHeaders)}, Signature=${signature}`;
+        return request2;
+      }
+      createCanonicalRequest(request2, canonicalHeaders, payloadHash) {
+        const sortedHeaders = Object.keys(canonicalHeaders).sort();
+        return `${request2.method}
+${this.getCanonicalPath(request2)}
+${getCanonicalQuery(request2)}
+${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join("\n")}
+
+${sortedHeaders.join(";")}
+${payloadHash}`;
+      }
+      async createStringToSign(longDate, credentialScope, canonicalRequest) {
+        const hash = new this.sha256();
+        hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest));
+        const hashedRequest = await hash.digest();
+        return `${ALGORITHM_IDENTIFIER}
+${longDate}
+${credentialScope}
+${(0, import_util_hex_encoding.toHex)(hashedRequest)}`;
+      }
+      getCanonicalPath({ path: path23 }) {
+        if (this.uriEscapePath) {
+          const normalizedPathSegments = [];
+          for (const pathSegment of path23.split("/")) {
+            if ((pathSegment == null ? void 0 : pathSegment.length) === 0)
+              continue;
+            if (pathSegment === ".")
+              continue;
+            if (pathSegment === "..") {
+              normalizedPathSegments.pop();
+            } else {
+              normalizedPathSegments.push(pathSegment);
+            }
+          }
+          const normalizedPath = `${(path23 == null ? void 0 : path23.startsWith("/")) ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && (path23 == null ? void 0 : path23.endsWith("/")) ? "/" : ""}`;
+          const doubleEncoded = (0, import_util_uri_escape.escapeUri)(normalizedPath);
+          return doubleEncoded.replace(/%2F/g, "/");
+        }
+        return path23;
+      }
+      async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {
+        const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest);
+        const hash = new this.sha256(await keyPromise);
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      getSigningKey(credentials, region, shortDate, service) {
+        return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);
+      }
+      validateResolvedCredentials(credentials) {
+        if (typeof credentials !== "object" || // @ts-expect-error: Property 'accessKeyId' does not exist on type 'object'.ts(2339)
+        typeof credentials.accessKeyId !== "string" || // @ts-expect-error: Property 'secretAccessKey' does not exist on type 'object'.ts(2339)
+        typeof credentials.secretAccessKey !== "string") {
+          throw new Error("Resolved credential object is not valid");
+        }
+      }
+    };
+    __name2(_SignatureV4, "SignatureV4");
+    var SignatureV42 = _SignatureV4;
+    var formatDate = /* @__PURE__ */ __name2((now) => {
+      const longDate = iso8601(now).replace(/[\-:]/g, "");
+      return {
+        longDate,
+        shortDate: longDate.slice(0, 8)
+      };
+    }, "formatDate");
+    var getCanonicalHeaderList = /* @__PURE__ */ __name2((headers) => Object.keys(headers).sort().join(";"), "getCanonicalHeaderList");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js
+var import_signature_v4, resolveAwsSdkSigV4Config, resolveAWSSDKSigV4Config;
+var init_resolveAwsSdkSigV4Config = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js"() {
+    init_dist_es();
+    import_signature_v4 = __toESM(require_dist_cjs35());
+    resolveAwsSdkSigV4Config = (config) => {
+      let normalizedCreds;
+      if (config.credentials) {
+        normalizedCreds = memoizeIdentityProvider(config.credentials, isIdentityExpired, doesIdentityRequireRefresh);
+      }
+      if (!normalizedCreds) {
+        if (config.credentialDefaultProvider) {
+          normalizedCreds = normalizeProvider(config.credentialDefaultProvider(Object.assign({}, config, {
+            parentClientConfig: config
+          })));
+        } else {
+          normalizedCreds = async () => {
+            throw new Error("`credentials` is missing");
+          };
+        }
+      }
+      const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256 } = config;
+      let signer;
+      if (config.signer) {
+        signer = normalizeProvider(config.signer);
+      } else if (config.regionInfoProvider) {
+        signer = () => normalizeProvider(config.region)().then(async (region) => [
+          await config.regionInfoProvider(region, {
+            useFipsEndpoint: await config.useFipsEndpoint(),
+            useDualstackEndpoint: await config.useDualstackEndpoint()
+          }) || {},
+          region
+        ]).then(([regionInfo, region]) => {
+          const { signingRegion, signingService } = regionInfo;
+          config.signingRegion = config.signingRegion || signingRegion || region;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        });
+      } else {
+        signer = async (authScheme) => {
+          authScheme = Object.assign({}, {
+            name: "sigv4",
+            signingName: config.signingName || config.defaultSigningName,
+            signingRegion: await normalizeProvider(config.region)(),
+            properties: {}
+          }, authScheme);
+          const signingRegion = authScheme.signingRegion;
+          const signingService = authScheme.signingName;
+          config.signingRegion = config.signingRegion || signingRegion;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        };
+      }
+      return {
+        ...config,
+        systemClockOffset,
+        signingEscapePath,
+        credentials: normalizedCreds,
+        signer
+      };
+    };
+    resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js
+var init_aws_sdk = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js"() {
+    init_AwsSdkSigV4Signer();
+    init_AwsSdkSigV4ASigner();
+    init_resolveAwsSdkSigV4AConfig();
+    init_resolveAwsSdkSigV4Config();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js
+var init_httpAuthSchemes2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js"() {
+    init_aws_sdk();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js
+var _toStr, _toBool, _toNum;
+var init_coercing_serializers = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js"() {
+    _toStr = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number" || typeof val2 === "bigint") {
+        const warning = new Error(`Received number ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      if (typeof val2 === "boolean") {
+        const warning = new Error(`Received boolean ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      return val2;
+    };
+    _toBool = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number") {
+      }
+      if (typeof val2 === "string") {
+        const lowercase = val2.toLowerCase();
+        if (val2 !== "" && lowercase !== "false" && lowercase !== "true") {
+          const warning = new Error(`Received string "${val2}" where a boolean was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+        }
+        return val2 !== "" && lowercase !== "false";
+      }
+      return val2;
+    };
+    _toNum = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "boolean") {
+      }
+      if (typeof val2 === "string") {
+        const num = Number(val2);
+        if (num.toString() !== val2) {
+          const warning = new Error(`Received string "${val2}" where a number was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+          return val2;
+        }
+        return num;
+      }
+      return val2;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js
+var import_smithy_client, awsExpectUnion;
+var init_awsExpectUnion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js"() {
+    import_smithy_client = __toESM(require_dist_cjs33());
+    awsExpectUnion = (value) => {
+      if (value == null) {
+        return void 0;
+      }
+      if (typeof value === "object" && "__type" in value) {
+        delete value.__type;
+      }
+      return (0, import_smithy_client.expectUnion)(value);
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js
+var import_smithy_client2, collectBodyString;
+var init_common = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js"() {
+    import_smithy_client2 = __toESM(require_dist_cjs33());
+    collectBodyString = (streamBody, context) => (0, import_smithy_client2.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body));
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js
+var parseJsonBody, parseJsonErrorBody, loadRestJsonErrorCode;
+var init_parseJsonBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js"() {
+    init_common();
+    parseJsonBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        try {
+          return JSON.parse(encoded);
+        } catch (e) {
+          if (e?.name === "SyntaxError") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+      }
+      return {};
+    });
+    parseJsonErrorBody = async (errorBody, context) => {
+      const value = await parseJsonBody(errorBody, context);
+      value.message = value.message ?? value.Message;
+      return value;
+    };
+    loadRestJsonErrorCode = (output, data) => {
+      const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase());
+      const sanitizeErrorCode = (rawValue) => {
+        let cleanValue = rawValue;
+        if (typeof cleanValue === "number") {
+          cleanValue = cleanValue.toString();
+        }
+        if (cleanValue.indexOf(",") >= 0) {
+          cleanValue = cleanValue.split(",")[0];
+        }
+        if (cleanValue.indexOf(":") >= 0) {
+          cleanValue = cleanValue.split(":")[0];
+        }
+        if (cleanValue.indexOf("#") >= 0) {
+          cleanValue = cleanValue.split("#")[1];
+        }
+        return cleanValue;
+      };
+      const headerKey = findKey(output.headers, "x-amzn-errortype");
+      if (headerKey !== void 0) {
+        return sanitizeErrorCode(output.headers[headerKey]);
+      }
+      if (data.code !== void 0) {
+        return sanitizeErrorCode(data.code);
+      }
+      if (data["__type"] !== void 0) {
+        return sanitizeErrorCode(data["__type"]);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/util.js
+var require_util = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/util.js"(exports2) {
+    "use strict";
+    var nameStartChar = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD";
+    var nameChar = nameStartChar + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040";
+    var nameRegexp = "[" + nameStartChar + "][" + nameChar + "]*";
+    var regexName = new RegExp("^" + nameRegexp + "$");
+    var getAllMatches = function(string, regex) {
+      const matches = [];
+      let match = regex.exec(string);
+      while (match) {
+        const allmatches = [];
+        allmatches.startIndex = regex.lastIndex - match[0].length;
+        const len = match.length;
+        for (let index = 0; index < len; index++) {
+          allmatches.push(match[index]);
+        }
+        matches.push(allmatches);
+        match = regex.exec(string);
+      }
+      return matches;
+    };
+    var isName = function(string) {
+      const match = regexName.exec(string);
+      return !(match === null || typeof match === "undefined");
+    };
+    exports2.isExist = function(v) {
+      return typeof v !== "undefined";
+    };
+    exports2.isEmptyObject = function(obj) {
+      return Object.keys(obj).length === 0;
+    };
+    exports2.merge = function(target, a, arrayMode) {
+      if (a) {
+        const keys = Object.keys(a);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          if (arrayMode === "strict") {
+            target[keys[i]] = [a[keys[i]]];
+          } else {
+            target[keys[i]] = a[keys[i]];
+          }
+        }
+      }
+    };
+    exports2.getValue = function(v) {
+      if (exports2.isExist(v)) {
+        return v;
+      } else {
+        return "";
+      }
+    };
+    exports2.isName = isName;
+    exports2.getAllMatches = getAllMatches;
+    exports2.nameRegexp = nameRegexp;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/validator.js
+var require_validator2 = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/validator.js"(exports2) {
+    "use strict";
+    var util = require_util();
+    var defaultOptions = {
+      allowBooleanAttributes: false,
+      //A tag can have attributes without any value
+      unpairedTags: []
+    };
+    exports2.validate = function(xmlData, options) {
+      options = Object.assign({}, defaultOptions, options);
+      const tags = [];
+      let tagFound = false;
+      let reachedRoot = false;
+      if (xmlData[0] === "\uFEFF") {
+        xmlData = xmlData.substr(1);
+      }
+      for (let i = 0; i < xmlData.length; i++) {
+        if (xmlData[i] === "<" && xmlData[i + 1] === "?") {
+          i += 2;
+          i = readPI(xmlData, i);
+          if (i.err) return i;
+        } else if (xmlData[i] === "<") {
+          let tagStartPos = i;
+          i++;
+          if (xmlData[i] === "!") {
+            i = readCommentAndCDATA(xmlData, i);
+            continue;
+          } else {
+            let closingTag = false;
+            if (xmlData[i] === "/") {
+              closingTag = true;
+              i++;
+            }
+            let tagName = "";
+            for (; i < xmlData.length && xmlData[i] !== ">" && xmlData[i] !== " " && xmlData[i] !== "	" && xmlData[i] !== "\n" && xmlData[i] !== "\r"; i++) {
+              tagName += xmlData[i];
+            }
+            tagName = tagName.trim();
+            if (tagName[tagName.length - 1] === "/") {
+              tagName = tagName.substring(0, tagName.length - 1);
+              i--;
+            }
+            if (!validateTagName(tagName)) {
+              let msg;
+              if (tagName.trim().length === 0) {
+                msg = "Invalid space after '<'.";
+              } else {
+                msg = "Tag '" + tagName + "' is an invalid name.";
+              }
+              return getErrorObject("InvalidTag", msg, getLineNumberForPosition(xmlData, i));
+            }
+            const result = readAttributeStr(xmlData, i);
+            if (result === false) {
+              return getErrorObject("InvalidAttr", "Attributes for '" + tagName + "' have open quote.", getLineNumberForPosition(xmlData, i));
+            }
+            let attrStr = result.value;
+            i = result.index;
+            if (attrStr[attrStr.length - 1] === "/") {
+              const attrStrStart = i - attrStr.length;
+              attrStr = attrStr.substring(0, attrStr.length - 1);
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid === true) {
+                tagFound = true;
+              } else {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));
+              }
+            } else if (closingTag) {
+              if (!result.tagClosed) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' doesn't have proper closing.", getLineNumberForPosition(xmlData, i));
+              } else if (attrStr.trim().length > 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' can't have attributes or invalid starting.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else if (tags.length === 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' has not been opened.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else {
+                const otg = tags.pop();
+                if (tagName !== otg.tagName) {
+                  let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);
+                  return getErrorObject(
+                    "InvalidTag",
+                    "Expected closing tag '" + otg.tagName + "' (opened in line " + openPos.line + ", col " + openPos.col + ") instead of closing tag '" + tagName + "'.",
+                    getLineNumberForPosition(xmlData, tagStartPos)
+                  );
+                }
+                if (tags.length == 0) {
+                  reachedRoot = true;
+                }
+              }
+            } else {
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid !== true) {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));
+              }
+              if (reachedRoot === true) {
+                return getErrorObject("InvalidXml", "Multiple possible root nodes found.", getLineNumberForPosition(xmlData, i));
+              } else if (options.unpairedTags.indexOf(tagName) !== -1) {
+              } else {
+                tags.push({ tagName, tagStartPos });
+              }
+              tagFound = true;
+            }
+            for (i++; i < xmlData.length; i++) {
+              if (xmlData[i] === "<") {
+                if (xmlData[i + 1] === "!") {
+                  i++;
+                  i = readCommentAndCDATA(xmlData, i);
+                  continue;
+                } else if (xmlData[i + 1] === "?") {
+                  i = readPI(xmlData, ++i);
+                  if (i.err) return i;
+                } else {
+                  break;
+                }
+              } else if (xmlData[i] === "&") {
+                const afterAmp = validateAmpersand(xmlData, i);
+                if (afterAmp == -1)
+                  return getErrorObject("InvalidChar", "char '&' is not expected.", getLineNumberForPosition(xmlData, i));
+                i = afterAmp;
+              } else {
+                if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {
+                  return getErrorObject("InvalidXml", "Extra text at the end", getLineNumberForPosition(xmlData, i));
+                }
+              }
+            }
+            if (xmlData[i] === "<") {
+              i--;
+            }
+          }
+        } else {
+          if (isWhiteSpace(xmlData[i])) {
+            continue;
+          }
+          return getErrorObject("InvalidChar", "char '" + xmlData[i] + "' is not expected.", getLineNumberForPosition(xmlData, i));
+        }
+      }
+      if (!tagFound) {
+        return getErrorObject("InvalidXml", "Start tag expected.", 1);
+      } else if (tags.length == 1) {
+        return getErrorObject("InvalidTag", "Unclosed tag '" + tags[0].tagName + "'.", getLineNumberForPosition(xmlData, tags[0].tagStartPos));
+      } else if (tags.length > 0) {
+        return getErrorObject("InvalidXml", "Invalid '" + JSON.stringify(tags.map((t) => t.tagName), null, 4).replace(/\r?\n/g, "") + "' found.", { line: 1, col: 1 });
+      }
+      return true;
+    };
+    function isWhiteSpace(char) {
+      return char === " " || char === "	" || char === "\n" || char === "\r";
+    }
+    function readPI(xmlData, i) {
+      const start = i;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] == "?" || xmlData[i] == " ") {
+          const tagname = xmlData.substr(start, i - start);
+          if (i > 5 && tagname === "xml") {
+            return getErrorObject("InvalidXml", "XML declaration allowed only at the start of the document.", getLineNumberForPosition(xmlData, i));
+          } else if (xmlData[i] == "?" && xmlData[i + 1] == ">") {
+            i++;
+            break;
+          } else {
+            continue;
+          }
+        }
+      }
+      return i;
+    }
+    function readCommentAndCDATA(xmlData, i) {
+      if (xmlData.length > i + 5 && xmlData[i + 1] === "-" && xmlData[i + 2] === "-") {
+        for (i += 3; i < xmlData.length; i++) {
+          if (xmlData[i] === "-" && xmlData[i + 1] === "-" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      } else if (xmlData.length > i + 8 && xmlData[i + 1] === "D" && xmlData[i + 2] === "O" && xmlData[i + 3] === "C" && xmlData[i + 4] === "T" && xmlData[i + 5] === "Y" && xmlData[i + 6] === "P" && xmlData[i + 7] === "E") {
+        let angleBracketsCount = 1;
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "<") {
+            angleBracketsCount++;
+          } else if (xmlData[i] === ">") {
+            angleBracketsCount--;
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          }
+        }
+      } else if (xmlData.length > i + 9 && xmlData[i + 1] === "[" && xmlData[i + 2] === "C" && xmlData[i + 3] === "D" && xmlData[i + 4] === "A" && xmlData[i + 5] === "T" && xmlData[i + 6] === "A" && xmlData[i + 7] === "[") {
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "]" && xmlData[i + 1] === "]" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      }
+      return i;
+    }
+    var doubleQuote = '"';
+    var singleQuote = "'";
+    function readAttributeStr(xmlData, i) {
+      let attrStr = "";
+      let startChar = "";
+      let tagClosed = false;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {
+          if (startChar === "") {
+            startChar = xmlData[i];
+          } else if (startChar !== xmlData[i]) {
+          } else {
+            startChar = "";
+          }
+        } else if (xmlData[i] === ">") {
+          if (startChar === "") {
+            tagClosed = true;
+            break;
+          }
+        }
+        attrStr += xmlData[i];
+      }
+      if (startChar !== "") {
+        return false;
+      }
+      return {
+        value: attrStr,
+        index: i,
+        tagClosed
+      };
+    }
+    var validAttrStrRegxp = new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`, "g");
+    function validateAttributeString(attrStr, options) {
+      const matches = util.getAllMatches(attrStr, validAttrStrRegxp);
+      const attrNames = {};
+      for (let i = 0; i < matches.length; i++) {
+        if (matches[i][1].length === 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' has no space in starting.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] !== void 0 && matches[i][4] === void 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' is without value.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] === void 0 && !options.allowBooleanAttributes) {
+          return getErrorObject("InvalidAttr", "boolean attribute '" + matches[i][2] + "' is not allowed.", getPositionFromMatch(matches[i]));
+        }
+        const attrName = matches[i][2];
+        if (!validateAttrName(attrName)) {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is an invalid name.", getPositionFromMatch(matches[i]));
+        }
+        if (!attrNames.hasOwnProperty(attrName)) {
+          attrNames[attrName] = 1;
+        } else {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is repeated.", getPositionFromMatch(matches[i]));
+        }
+      }
+      return true;
+    }
+    function validateNumberAmpersand(xmlData, i) {
+      let re = /\d/;
+      if (xmlData[i] === "x") {
+        i++;
+        re = /[\da-fA-F]/;
+      }
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === ";")
+          return i;
+        if (!xmlData[i].match(re))
+          break;
+      }
+      return -1;
+    }
+    function validateAmpersand(xmlData, i) {
+      i++;
+      if (xmlData[i] === ";")
+        return -1;
+      if (xmlData[i] === "#") {
+        i++;
+        return validateNumberAmpersand(xmlData, i);
+      }
+      let count2 = 0;
+      for (; i < xmlData.length; i++, count2++) {
+        if (xmlData[i].match(/\w/) && count2 < 20)
+          continue;
+        if (xmlData[i] === ";")
+          break;
+        return -1;
+      }
+      return i;
+    }
+    function getErrorObject(code, message, lineNumber) {
+      return {
+        err: {
+          code,
+          msg: message,
+          line: lineNumber.line || lineNumber,
+          col: lineNumber.col
+        }
+      };
+    }
+    function validateAttrName(attrName) {
+      return util.isName(attrName);
+    }
+    function validateTagName(tagname) {
+      return util.isName(tagname);
+    }
+    function getLineNumberForPosition(xmlData, index) {
+      const lines = xmlData.substring(0, index).split(/\r?\n/);
+      return {
+        line: lines.length,
+        // column number is last line's length + 1, because column numbering starts at 1:
+        col: lines[lines.length - 1].length + 1
+      };
+    }
+    function getPositionFromMatch(match) {
+      return match.startIndex + match[1].length;
+    }
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js
+var require_OptionsBuilder = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js"(exports2) {
+    var defaultOptions = {
+      preserveOrder: false,
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      removeNSPrefix: false,
+      // remove NS from tag name or attribute name if true
+      allowBooleanAttributes: false,
+      //a tag can have attributes without any value
+      //ignoreRootElement : false,
+      parseTagValue: true,
+      parseAttributeValue: false,
+      trimValues: true,
+      //Trim string values of tag and attributes
+      cdataPropName: false,
+      numberParseOptions: {
+        hex: true,
+        leadingZeros: true,
+        eNotation: true
+      },
+      tagValueProcessor: function(tagName, val2) {
+        return val2;
+      },
+      attributeValueProcessor: function(attrName, val2) {
+        return val2;
+      },
+      stopNodes: [],
+      //nested tags will not be parsed even for errors
+      alwaysCreateTextNode: false,
+      isArray: () => false,
+      commentPropName: false,
+      unpairedTags: [],
+      processEntities: true,
+      htmlEntities: false,
+      ignoreDeclaration: false,
+      ignorePiTags: false,
+      transformTagName: false,
+      transformAttributeName: false,
+      updateTag: function(tagName, jPath, attrs) {
+        return tagName;
+      }
+      // skipEmptyListItem: false
+    };
+    var buildOptions = function(options) {
+      return Object.assign({}, defaultOptions, options);
+    };
+    exports2.buildOptions = buildOptions;
+    exports2.defaultOptions = defaultOptions;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js
+var require_xmlNode = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js"(exports2, module2) {
+    "use strict";
+    var XmlNode = class {
+      constructor(tagname) {
+        this.tagname = tagname;
+        this.child = [];
+        this[":@"] = {};
+      }
+      add(key, val2) {
+        if (key === "__proto__") key = "#__proto__";
+        this.child.push({ [key]: val2 });
+      }
+      addChild(node) {
+        if (node.tagname === "__proto__") node.tagname = "#__proto__";
+        if (node[":@"] && Object.keys(node[":@"]).length > 0) {
+          this.child.push({ [node.tagname]: node.child, [":@"]: node[":@"] });
+        } else {
+          this.child.push({ [node.tagname]: node.child });
+        }
+      }
+    };
+    module2.exports = XmlNode;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js
+var require_DocTypeReader = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js"(exports2, module2) {
+    var util = require_util();
+    function readDocType(xmlData, i) {
+      const entities = {};
+      if (xmlData[i + 3] === "O" && xmlData[i + 4] === "C" && xmlData[i + 5] === "T" && xmlData[i + 6] === "Y" && xmlData[i + 7] === "P" && xmlData[i + 8] === "E") {
+        i = i + 9;
+        let angleBracketsCount = 1;
+        let hasBody = false, comment = false;
+        let exp = "";
+        for (; i < xmlData.length; i++) {
+          if (xmlData[i] === "<" && !comment) {
+            if (hasBody && isEntity(xmlData, i)) {
+              i += 7;
+              [entityName, val, i] = readEntityExp(xmlData, i + 1);
+              if (val.indexOf("&") === -1)
+                entities[validateEntityName(entityName)] = {
+                  regx: RegExp(`&${entityName};`, "g"),
+                  val
+                };
+            } else if (hasBody && isElement(xmlData, i)) i += 8;
+            else if (hasBody && isAttlist(xmlData, i)) i += 8;
+            else if (hasBody && isNotation(xmlData, i)) i += 9;
+            else if (isComment) comment = true;
+            else throw new Error("Invalid DOCTYPE");
+            angleBracketsCount++;
+            exp = "";
+          } else if (xmlData[i] === ">") {
+            if (comment) {
+              if (xmlData[i - 1] === "-" && xmlData[i - 2] === "-") {
+                comment = false;
+                angleBracketsCount--;
+              }
+            } else {
+              angleBracketsCount--;
+            }
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          } else if (xmlData[i] === "[") {
+            hasBody = true;
+          } else {
+            exp += xmlData[i];
+          }
+        }
+        if (angleBracketsCount !== 0) {
+          throw new Error(`Unclosed DOCTYPE`);
+        }
+      } else {
+        throw new Error(`Invalid Tag instead of DOCTYPE`);
+      }
+      return { entities, i };
+    }
+    function readEntityExp(xmlData, i) {
+      let entityName2 = "";
+      for (; i < xmlData.length && (xmlData[i] !== "'" && xmlData[i] !== '"'); i++) {
+        entityName2 += xmlData[i];
+      }
+      entityName2 = entityName2.trim();
+      if (entityName2.indexOf(" ") !== -1) throw new Error("External entites are not supported");
+      const startChar = xmlData[i++];
+      let val2 = "";
+      for (; i < xmlData.length && xmlData[i] !== startChar; i++) {
+        val2 += xmlData[i];
+      }
+      return [entityName2, val2, i];
+    }
+    function isComment(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "-" && xmlData[i + 3] === "-") return true;
+      return false;
+    }
+    function isEntity(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "N" && xmlData[i + 4] === "T" && xmlData[i + 5] === "I" && xmlData[i + 6] === "T" && xmlData[i + 7] === "Y") return true;
+      return false;
+    }
+    function isElement(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "L" && xmlData[i + 4] === "E" && xmlData[i + 5] === "M" && xmlData[i + 6] === "E" && xmlData[i + 7] === "N" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isAttlist(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "A" && xmlData[i + 3] === "T" && xmlData[i + 4] === "T" && xmlData[i + 5] === "L" && xmlData[i + 6] === "I" && xmlData[i + 7] === "S" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isNotation(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "N" && xmlData[i + 3] === "O" && xmlData[i + 4] === "T" && xmlData[i + 5] === "A" && xmlData[i + 6] === "T" && xmlData[i + 7] === "I" && xmlData[i + 8] === "O" && xmlData[i + 9] === "N") return true;
+      return false;
+    }
+    function validateEntityName(name) {
+      if (util.isName(name))
+        return name;
+      else
+        throw new Error(`Invalid entity name ${name}`);
+    }
+    module2.exports = readDocType;
+  }
+});
+
+// ../../../node_modules/strnum/strnum.js
+var require_strnum = __commonJS({
+  "../../../node_modules/strnum/strnum.js"(exports2, module2) {
+    var hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;
+    var numRegex = /^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/;
+    var consider = {
+      hex: true,
+      // oct: false,
+      leadingZeros: true,
+      decimalPoint: ".",
+      eNotation: true
+      //skipLike: /regex/
+    };
+    function toNumber(str, options = {}) {
+      options = Object.assign({}, consider, options);
+      if (!str || typeof str !== "string") return str;
+      let trimmedStr = str.trim();
+      if (options.skipLike !== void 0 && options.skipLike.test(trimmedStr)) return str;
+      else if (str === "0") return 0;
+      else if (options.hex && hexRegex.test(trimmedStr)) {
+        return parse_int(trimmedStr, 16);
+      } else if (trimmedStr.search(/[eE]/) !== -1) {
+        const notation = trimmedStr.match(/^([-\+])?(0*)([0-9]*(\.[0-9]*)?[eE][-\+]?[0-9]+)$/);
+        if (notation) {
+          if (options.leadingZeros) {
+            trimmedStr = (notation[1] || "") + notation[3];
+          } else {
+            if (notation[2] === "0" && notation[3][0] === ".") {
+            } else {
+              return str;
+            }
+          }
+          return options.eNotation ? Number(trimmedStr) : str;
+        } else {
+          return str;
+        }
+      } else {
+        const match = numRegex.exec(trimmedStr);
+        if (match) {
+          const sign = match[1];
+          const leadingZeros = match[2];
+          let numTrimmedByZeros = trimZeros(match[3]);
+          if (!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== ".") return str;
+          else if (!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== ".") return str;
+          else if (options.leadingZeros && leadingZeros === str) return 0;
+          else {
+            const num = Number(trimmedStr);
+            const numStr = "" + num;
+            if (numStr.search(/[eE]/) !== -1) {
+              if (options.eNotation) return num;
+              else return str;
+            } else if (trimmedStr.indexOf(".") !== -1) {
+              if (numStr === "0" && numTrimmedByZeros === "") return num;
+              else if (numStr === numTrimmedByZeros) return num;
+              else if (sign && numStr === "-" + numTrimmedByZeros) return num;
+              else return str;
+            }
+            if (leadingZeros) {
+              return numTrimmedByZeros === numStr || sign + numTrimmedByZeros === numStr ? num : str;
+            } else {
+              return trimmedStr === numStr || trimmedStr === sign + numStr ? num : str;
+            }
+          }
+        } else {
+          return str;
+        }
+      }
+    }
+    function trimZeros(numStr) {
+      if (numStr && numStr.indexOf(".") !== -1) {
+        numStr = numStr.replace(/0+$/, "");
+        if (numStr === ".") numStr = "0";
+        else if (numStr[0] === ".") numStr = "0" + numStr;
+        else if (numStr[numStr.length - 1] === ".") numStr = numStr.substr(0, numStr.length - 1);
+        return numStr;
+      }
+      return numStr;
+    }
+    function parse_int(numStr, base) {
+      if (parseInt) return parseInt(numStr, base);
+      else if (Number.parseInt) return Number.parseInt(numStr, base);
+      else if (window && window.parseInt) return window.parseInt(numStr, base);
+      else throw new Error("parseInt, Number.parseInt, window.parseInt are not supported");
+    }
+    module2.exports = toNumber;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js
+var require_OrderedObjParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js"(exports2, module2) {
+    "use strict";
+    var util = require_util();
+    var xmlNode = require_xmlNode();
+    var readDocType = require_DocTypeReader();
+    var toNumber = require_strnum();
+    var OrderedObjParser = class {
+      constructor(options) {
+        this.options = options;
+        this.currentNode = null;
+        this.tagsNodeStack = [];
+        this.docTypeEntities = {};
+        this.lastEntities = {
+          "apos": { regex: /&(apos|#39|#x27);/g, val: "'" },
+          "gt": { regex: /&(gt|#62|#x3E);/g, val: ">" },
+          "lt": { regex: /&(lt|#60|#x3C);/g, val: "<" },
+          "quot": { regex: /&(quot|#34|#x22);/g, val: '"' }
+        };
+        this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: "&" };
+        this.htmlEntities = {
+          "space": { regex: /&(nbsp|#160);/g, val: " " },
+          // "lt" : { regex: /&(lt|#60);/g, val: "<" },
+          // "gt" : { regex: /&(gt|#62);/g, val: ">" },
+          // "amp" : { regex: /&(amp|#38);/g, val: "&" },
+          // "quot" : { regex: /&(quot|#34);/g, val: "\"" },
+          // "apos" : { regex: /&(apos|#39);/g, val: "'" },
+          "cent": { regex: /&(cent|#162);/g, val: "\xA2" },
+          "pound": { regex: /&(pound|#163);/g, val: "\xA3" },
+          "yen": { regex: /&(yen|#165);/g, val: "\xA5" },
+          "euro": { regex: /&(euro|#8364);/g, val: "\u20AC" },
+          "copyright": { regex: /&(copy|#169);/g, val: "\xA9" },
+          "reg": { regex: /&(reg|#174);/g, val: "\xAE" },
+          "inr": { regex: /&(inr|#8377);/g, val: "\u20B9" },
+          "num_dec": { regex: /&#([0-9]{1,7});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 10)) },
+          "num_hex": { regex: /&#x([0-9a-fA-F]{1,6});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 16)) }
+        };
+        this.addExternalEntities = addExternalEntities;
+        this.parseXml = parseXml;
+        this.parseTextData = parseTextData;
+        this.resolveNameSpace = resolveNameSpace;
+        this.buildAttributesMap = buildAttributesMap;
+        this.isItStopNode = isItStopNode;
+        this.replaceEntitiesValue = replaceEntitiesValue;
+        this.readStopNodeData = readStopNodeData;
+        this.saveTextToParentTag = saveTextToParentTag;
+        this.addChild = addChild;
+      }
+    };
+    function addExternalEntities(externalEntities) {
+      const entKeys = Object.keys(externalEntities);
+      for (let i = 0; i < entKeys.length; i++) {
+        const ent = entKeys[i];
+        this.lastEntities[ent] = {
+          regex: new RegExp("&" + ent + ";", "g"),
+          val: externalEntities[ent]
+        };
+      }
+    }
+    function parseTextData(val2, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {
+      if (val2 !== void 0) {
+        if (this.options.trimValues && !dontTrim) {
+          val2 = val2.trim();
+        }
+        if (val2.length > 0) {
+          if (!escapeEntities) val2 = this.replaceEntitiesValue(val2);
+          const newval = this.options.tagValueProcessor(tagName, val2, jPath, hasAttributes, isLeafNode);
+          if (newval === null || newval === void 0) {
+            return val2;
+          } else if (typeof newval !== typeof val2 || newval !== val2) {
+            return newval;
+          } else if (this.options.trimValues) {
+            return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+          } else {
+            const trimmedVal = val2.trim();
+            if (trimmedVal === val2) {
+              return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+            } else {
+              return val2;
+            }
+          }
+        }
+      }
+    }
+    function resolveNameSpace(tagname) {
+      if (this.options.removeNSPrefix) {
+        const tags = tagname.split(":");
+        const prefix = tagname.charAt(0) === "/" ? "/" : "";
+        if (tags[0] === "xmlns") {
+          return "";
+        }
+        if (tags.length === 2) {
+          tagname = prefix + tags[1];
+        }
+      }
+      return tagname;
+    }
+    var attrsRegx = new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`, "gm");
+    function buildAttributesMap(attrStr, jPath, tagName) {
+      if (!this.options.ignoreAttributes && typeof attrStr === "string") {
+        const matches = util.getAllMatches(attrStr, attrsRegx);
+        const len = matches.length;
+        const attrs = {};
+        for (let i = 0; i < len; i++) {
+          const attrName = this.resolveNameSpace(matches[i][1]);
+          let oldVal = matches[i][4];
+          let aName = this.options.attributeNamePrefix + attrName;
+          if (attrName.length) {
+            if (this.options.transformAttributeName) {
+              aName = this.options.transformAttributeName(aName);
+            }
+            if (aName === "__proto__") aName = "#__proto__";
+            if (oldVal !== void 0) {
+              if (this.options.trimValues) {
+                oldVal = oldVal.trim();
+              }
+              oldVal = this.replaceEntitiesValue(oldVal);
+              const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);
+              if (newVal === null || newVal === void 0) {
+                attrs[aName] = oldVal;
+              } else if (typeof newVal !== typeof oldVal || newVal !== oldVal) {
+                attrs[aName] = newVal;
+              } else {
+                attrs[aName] = parseValue(
+                  oldVal,
+                  this.options.parseAttributeValue,
+                  this.options.numberParseOptions
+                );
+              }
+            } else if (this.options.allowBooleanAttributes) {
+              attrs[aName] = true;
+            }
+          }
+        }
+        if (!Object.keys(attrs).length) {
+          return;
+        }
+        if (this.options.attributesGroupName) {
+          const attrCollection = {};
+          attrCollection[this.options.attributesGroupName] = attrs;
+          return attrCollection;
+        }
+        return attrs;
+      }
+    }
+    var parseXml = function(xmlData) {
+      xmlData = xmlData.replace(/\r\n?/g, "\n");
+      const xmlObj = new xmlNode("!xml");
+      let currentNode = xmlObj;
+      let textData = "";
+      let jPath = "";
+      for (let i = 0; i < xmlData.length; i++) {
+        const ch = xmlData[i];
+        if (ch === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, "Closing Tag is not closed.");
+            let tagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (this.options.removeNSPrefix) {
+              const colonIndex = tagName.indexOf(":");
+              if (colonIndex !== -1) {
+                tagName = tagName.substr(colonIndex + 1);
+              }
+            }
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode) {
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            }
+            const lastTagName = jPath.substring(jPath.lastIndexOf(".") + 1);
+            if (tagName && this.options.unpairedTags.indexOf(tagName) !== -1) {
+              throw new Error(`Unpaired tag can not be used as closing tag: `);
+            }
+            let propIndex = 0;
+            if (lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1) {
+              propIndex = jPath.lastIndexOf(".", jPath.lastIndexOf(".") - 1);
+              this.tagsNodeStack.pop();
+            } else {
+              propIndex = jPath.lastIndexOf(".");
+            }
+            jPath = jPath.substring(0, propIndex);
+            currentNode = this.tagsNodeStack.pop();
+            textData = "";
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            let tagData = readTagExp(xmlData, i, false, "?>");
+            if (!tagData) throw new Error("Pi Tag is not closed.");
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            if (this.options.ignoreDeclaration && tagData.tagName === "?xml" || this.options.ignorePiTags) {
+            } else {
+              const childNode = new xmlNode(tagData.tagName);
+              childNode.add(this.options.textNodeName, "");
+              if (tagData.tagName !== tagData.tagExp && tagData.attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName);
+              }
+              this.addChild(currentNode, childNode, jPath);
+            }
+            i = tagData.closeIndex + 1;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const endIndex = findClosingIndex(xmlData, "-->", i + 4, "Comment is not closed.");
+            if (this.options.commentPropName) {
+              const comment = xmlData.substring(i + 4, endIndex - 2);
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+              currentNode.add(this.options.commentPropName, [{ [this.options.textNodeName]: comment }]);
+            }
+            i = endIndex;
+          } else if (xmlData.substr(i + 1, 2) === "!D") {
+            const result = readDocType(xmlData, i);
+            this.docTypeEntities = result.entities;
+            i = result.i;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "CDATA is not closed.") - 2;
+            const tagExp = xmlData.substring(i + 9, closeIndex);
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            let val2 = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);
+            if (val2 == void 0) val2 = "";
+            if (this.options.cdataPropName) {
+              currentNode.add(this.options.cdataPropName, [{ [this.options.textNodeName]: tagExp }]);
+            } else {
+              currentNode.add(this.options.textNodeName, val2);
+            }
+            i = closeIndex + 2;
+          } else {
+            let result = readTagExp(xmlData, i, this.options.removeNSPrefix);
+            let tagName = result.tagName;
+            const rawTagName = result.rawTagName;
+            let tagExp = result.tagExp;
+            let attrExpPresent = result.attrExpPresent;
+            let closeIndex = result.closeIndex;
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode && textData) {
+              if (currentNode.tagname !== "!xml") {
+                textData = this.saveTextToParentTag(textData, currentNode, jPath, false);
+              }
+            }
+            const lastTag = currentNode;
+            if (lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1) {
+              currentNode = this.tagsNodeStack.pop();
+              jPath = jPath.substring(0, jPath.lastIndexOf("."));
+            }
+            if (tagName !== xmlObj.tagname) {
+              jPath += jPath ? "." + tagName : tagName;
+            }
+            if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) {
+              let tagContent = "";
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                i = result.closeIndex;
+              } else if (this.options.unpairedTags.indexOf(tagName) !== -1) {
+                i = result.closeIndex;
+              } else {
+                const result2 = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);
+                if (!result2) throw new Error(`Unexpected end of ${rawTagName}`);
+                i = result2.i;
+                tagContent = result2.tagContent;
+              }
+              const childNode = new xmlNode(tagName);
+              if (tagName !== tagExp && attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+              }
+              if (tagContent) {
+                tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);
+              }
+              jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              childNode.add(this.options.textNodeName, tagContent);
+              this.addChild(currentNode, childNode, jPath);
+            } else {
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                if (this.options.transformTagName) {
+                  tagName = this.options.transformTagName(tagName);
+                }
+                const childNode = new xmlNode(tagName);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              } else {
+                const childNode = new xmlNode(tagName);
+                this.tagsNodeStack.push(currentNode);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                currentNode = childNode;
+              }
+              textData = "";
+              i = closeIndex;
+            }
+          }
+        } else {
+          textData += xmlData[i];
+        }
+      }
+      return xmlObj.child;
+    };
+    function addChild(currentNode, childNode, jPath) {
+      const result = this.options.updateTag(childNode.tagname, jPath, childNode[":@"]);
+      if (result === false) {
+      } else if (typeof result === "string") {
+        childNode.tagname = result;
+        currentNode.addChild(childNode);
+      } else {
+        currentNode.addChild(childNode);
+      }
+    }
+    var replaceEntitiesValue = function(val2) {
+      if (this.options.processEntities) {
+        for (let entityName2 in this.docTypeEntities) {
+          const entity = this.docTypeEntities[entityName2];
+          val2 = val2.replace(entity.regx, entity.val);
+        }
+        for (let entityName2 in this.lastEntities) {
+          const entity = this.lastEntities[entityName2];
+          val2 = val2.replace(entity.regex, entity.val);
+        }
+        if (this.options.htmlEntities) {
+          for (let entityName2 in this.htmlEntities) {
+            const entity = this.htmlEntities[entityName2];
+            val2 = val2.replace(entity.regex, entity.val);
+          }
+        }
+        val2 = val2.replace(this.ampEntity.regex, this.ampEntity.val);
+      }
+      return val2;
+    };
+    function saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {
+      if (textData) {
+        if (isLeafNode === void 0) isLeafNode = Object.keys(currentNode.child).length === 0;
+        textData = this.parseTextData(
+          textData,
+          currentNode.tagname,
+          jPath,
+          false,
+          currentNode[":@"] ? Object.keys(currentNode[":@"]).length !== 0 : false,
+          isLeafNode
+        );
+        if (textData !== void 0 && textData !== "")
+          currentNode.add(this.options.textNodeName, textData);
+        textData = "";
+      }
+      return textData;
+    }
+    function isItStopNode(stopNodes, jPath, currentTagName) {
+      const allNodesExp = "*." + currentTagName;
+      for (const stopNodePath in stopNodes) {
+        const stopNodeExp = stopNodes[stopNodePath];
+        if (allNodesExp === stopNodeExp || jPath === stopNodeExp) return true;
+      }
+      return false;
+    }
+    function tagExpWithClosingIndex(xmlData, i, closingChar = ">") {
+      let attrBoundary;
+      let tagExp = "";
+      for (let index = i; index < xmlData.length; index++) {
+        let ch = xmlData[index];
+        if (attrBoundary) {
+          if (ch === attrBoundary) attrBoundary = "";
+        } else if (ch === '"' || ch === "'") {
+          attrBoundary = ch;
+        } else if (ch === closingChar[0]) {
+          if (closingChar[1]) {
+            if (xmlData[index + 1] === closingChar[1]) {
+              return {
+                data: tagExp,
+                index
+              };
+            }
+          } else {
+            return {
+              data: tagExp,
+              index
+            };
+          }
+        } else if (ch === "	") {
+          ch = " ";
+        }
+        tagExp += ch;
+      }
+    }
+    function findClosingIndex(xmlData, str, i, errMsg) {
+      const closingIndex = xmlData.indexOf(str, i);
+      if (closingIndex === -1) {
+        throw new Error(errMsg);
+      } else {
+        return closingIndex + str.length - 1;
+      }
+    }
+    function readTagExp(xmlData, i, removeNSPrefix, closingChar = ">") {
+      const result = tagExpWithClosingIndex(xmlData, i + 1, closingChar);
+      if (!result) return;
+      let tagExp = result.data;
+      const closeIndex = result.index;
+      const separatorIndex = tagExp.search(/\s/);
+      let tagName = tagExp;
+      let attrExpPresent = true;
+      if (separatorIndex !== -1) {
+        tagName = tagExp.substring(0, separatorIndex);
+        tagExp = tagExp.substring(separatorIndex + 1).trimStart();
+      }
+      const rawTagName = tagName;
+      if (removeNSPrefix) {
+        const colonIndex = tagName.indexOf(":");
+        if (colonIndex !== -1) {
+          tagName = tagName.substr(colonIndex + 1);
+          attrExpPresent = tagName !== result.data.substr(colonIndex + 1);
+        }
+      }
+      return {
+        tagName,
+        tagExp,
+        closeIndex,
+        attrExpPresent,
+        rawTagName
+      };
+    }
+    function readStopNodeData(xmlData, tagName, i) {
+      const startIndex = i;
+      let openTagCount = 1;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, `${tagName} is not closed`);
+            let closeTagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (closeTagName === tagName) {
+              openTagCount--;
+              if (openTagCount === 0) {
+                return {
+                  tagContent: xmlData.substring(startIndex, i),
+                  i: closeIndex
+                };
+              }
+            }
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            const closeIndex = findClosingIndex(xmlData, "?>", i + 1, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const closeIndex = findClosingIndex(xmlData, "-->", i + 3, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "StopNode is not closed.") - 2;
+            i = closeIndex;
+          } else {
+            const tagData = readTagExp(xmlData, i, ">");
+            if (tagData) {
+              const openTagName = tagData && tagData.tagName;
+              if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length - 1] !== "/") {
+                openTagCount++;
+              }
+              i = tagData.closeIndex;
+            }
+          }
+        }
+      }
+    }
+    function parseValue(val2, shouldParse, options) {
+      if (shouldParse && typeof val2 === "string") {
+        const newval = val2.trim();
+        if (newval === "true") return true;
+        else if (newval === "false") return false;
+        else return toNumber(val2, options);
+      } else {
+        if (util.isExist(val2)) {
+          return val2;
+        } else {
+          return "";
+        }
+      }
+    }
+    module2.exports = OrderedObjParser;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js
+var require_node2json = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js"(exports2) {
+    "use strict";
+    function prettify(node, options) {
+      return compress(node, options);
+    }
+    function compress(arr, options, jPath) {
+      let text;
+      const compressedObj = {};
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const property = propName(tagObj);
+        let newJpath = "";
+        if (jPath === void 0) newJpath = property;
+        else newJpath = jPath + "." + property;
+        if (property === options.textNodeName) {
+          if (text === void 0) text = tagObj[property];
+          else text += "" + tagObj[property];
+        } else if (property === void 0) {
+          continue;
+        } else if (tagObj[property]) {
+          let val2 = compress(tagObj[property], options, newJpath);
+          const isLeaf = isLeafTag(val2, options);
+          if (tagObj[":@"]) {
+            assignAttributes(val2, tagObj[":@"], newJpath, options);
+          } else if (Object.keys(val2).length === 1 && val2[options.textNodeName] !== void 0 && !options.alwaysCreateTextNode) {
+            val2 = val2[options.textNodeName];
+          } else if (Object.keys(val2).length === 0) {
+            if (options.alwaysCreateTextNode) val2[options.textNodeName] = "";
+            else val2 = "";
+          }
+          if (compressedObj[property] !== void 0 && compressedObj.hasOwnProperty(property)) {
+            if (!Array.isArray(compressedObj[property])) {
+              compressedObj[property] = [compressedObj[property]];
+            }
+            compressedObj[property].push(val2);
+          } else {
+            if (options.isArray(property, newJpath, isLeaf)) {
+              compressedObj[property] = [val2];
+            } else {
+              compressedObj[property] = val2;
+            }
+          }
+        }
+      }
+      if (typeof text === "string") {
+        if (text.length > 0) compressedObj[options.textNodeName] = text;
+      } else if (text !== void 0) compressedObj[options.textNodeName] = text;
+      return compressedObj;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (key !== ":@") return key;
+      }
+    }
+    function assignAttributes(obj, attrMap, jpath, options) {
+      if (attrMap) {
+        const keys = Object.keys(attrMap);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          const atrrName = keys[i];
+          if (options.isArray(atrrName, jpath + "." + atrrName, true, true)) {
+            obj[atrrName] = [attrMap[atrrName]];
+          } else {
+            obj[atrrName] = attrMap[atrrName];
+          }
+        }
+      }
+    }
+    function isLeafTag(obj, options) {
+      const { textNodeName } = options;
+      const propCount = Object.keys(obj).length;
+      if (propCount === 0) {
+        return true;
+      }
+      if (propCount === 1 && (obj[textNodeName] || typeof obj[textNodeName] === "boolean" || obj[textNodeName] === 0)) {
+        return true;
+      }
+      return false;
+    }
+    exports2.prettify = prettify;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js
+var require_XMLParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js"(exports2, module2) {
+    var { buildOptions } = require_OptionsBuilder();
+    var OrderedObjParser = require_OrderedObjParser();
+    var { prettify } = require_node2json();
+    var validator = require_validator2();
+    var XMLParser2 = class {
+      constructor(options) {
+        this.externalEntities = {};
+        this.options = buildOptions(options);
+      }
+      /**
+       * Parse XML dats to JS object 
+       * @param {string|Buffer} xmlData 
+       * @param {boolean|Object} validationOption 
+       */
+      parse(xmlData, validationOption) {
+        if (typeof xmlData === "string") {
+        } else if (xmlData.toString) {
+          xmlData = xmlData.toString();
+        } else {
+          throw new Error("XML data is accepted in String or Bytes[] form.");
+        }
+        if (validationOption) {
+          if (validationOption === true) validationOption = {};
+          const result = validator.validate(xmlData, validationOption);
+          if (result !== true) {
+            throw Error(`${result.err.msg}:${result.err.line}:${result.err.col}`);
+          }
+        }
+        const orderedObjParser = new OrderedObjParser(this.options);
+        orderedObjParser.addExternalEntities(this.externalEntities);
+        const orderedResult = orderedObjParser.parseXml(xmlData);
+        if (this.options.preserveOrder || orderedResult === void 0) return orderedResult;
+        else return prettify(orderedResult, this.options);
+      }
+      /**
+       * Add Entity which is not by default supported by this library
+       * @param {string} key 
+       * @param {string} value 
+       */
+      addEntity(key, value) {
+        if (value.indexOf("&") !== -1) {
+          throw new Error("Entity value can't have '&'");
+        } else if (key.indexOf("&") !== -1 || key.indexOf(";") !== -1) {
+          throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '
'");
+        } else if (value === "&") {
+          throw new Error("An entity with value '&' is not permitted");
+        } else {
+          this.externalEntities[key] = value;
+        }
+      }
+    };
+    module2.exports = XMLParser2;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js
+var require_orderedJs2Xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js"(exports2, module2) {
+    var EOL = "\n";
+    function toXml(jArray, options) {
+      let indentation = "";
+      if (options.format && options.indentBy.length > 0) {
+        indentation = EOL;
+      }
+      return arrToStr(jArray, options, "", indentation);
+    }
+    function arrToStr(arr, options, jPath, indentation) {
+      let xmlStr = "";
+      let isPreviousElementTag = false;
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const tagName = propName(tagObj);
+        if (tagName === void 0) continue;
+        let newJPath = "";
+        if (jPath.length === 0) newJPath = tagName;
+        else newJPath = `${jPath}.${tagName}`;
+        if (tagName === options.textNodeName) {
+          let tagText = tagObj[tagName];
+          if (!isStopNode(newJPath, options)) {
+            tagText = options.tagValueProcessor(tagName, tagText);
+            tagText = replaceEntitiesValue(tagText, options);
+          }
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += tagText;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.cdataPropName) {
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += ``;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.commentPropName) {
+          xmlStr += indentation + ``;
+          isPreviousElementTag = true;
+          continue;
+        } else if (tagName[0] === "?") {
+          const attStr2 = attr_to_str(tagObj[":@"], options);
+          const tempInd = tagName === "?xml" ? "" : indentation;
+          let piTextNodeName = tagObj[tagName][0][options.textNodeName];
+          piTextNodeName = piTextNodeName.length !== 0 ? " " + piTextNodeName : "";
+          xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr2}?>`;
+          isPreviousElementTag = true;
+          continue;
+        }
+        let newIdentation = indentation;
+        if (newIdentation !== "") {
+          newIdentation += options.indentBy;
+        }
+        const attStr = attr_to_str(tagObj[":@"], options);
+        const tagStart = indentation + `<${tagName}${attStr}`;
+        const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);
+        if (options.unpairedTags.indexOf(tagName) !== -1) {
+          if (options.suppressUnpairedNode) xmlStr += tagStart + ">";
+          else xmlStr += tagStart + "/>";
+        } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {
+          xmlStr += tagStart + "/>";
+        } else if (tagValue && tagValue.endsWith(">")) {
+          xmlStr += tagStart + `>${tagValue}${indentation}`;
+        } else {
+          xmlStr += tagStart + ">";
+          if (tagValue && indentation !== "" && (tagValue.includes("/>") || tagValue.includes("`;
+        }
+        isPreviousElementTag = true;
+      }
+      return xmlStr;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (!obj.hasOwnProperty(key)) continue;
+        if (key !== ":@") return key;
+      }
+    }
+    function attr_to_str(attrMap, options) {
+      let attrStr = "";
+      if (attrMap && !options.ignoreAttributes) {
+        for (let attr in attrMap) {
+          if (!attrMap.hasOwnProperty(attr)) continue;
+          let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);
+          attrVal = replaceEntitiesValue(attrVal, options);
+          if (attrVal === true && options.suppressBooleanAttributes) {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;
+          } else {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}="${attrVal}"`;
+          }
+        }
+      }
+      return attrStr;
+    }
+    function isStopNode(jPath, options) {
+      jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);
+      let tagName = jPath.substr(jPath.lastIndexOf(".") + 1);
+      for (let index in options.stopNodes) {
+        if (options.stopNodes[index] === jPath || options.stopNodes[index] === "*." + tagName) return true;
+      }
+      return false;
+    }
+    function replaceEntitiesValue(textValue, options) {
+      if (textValue && textValue.length > 0 && options.processEntities) {
+        for (let i = 0; i < options.entities.length; i++) {
+          const entity = options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    }
+    module2.exports = toXml;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js
+var require_json2xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js"(exports2, module2) {
+    "use strict";
+    var buildFromOrderedJs = require_orderedJs2Xml();
+    var defaultOptions = {
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      cdataPropName: false,
+      format: false,
+      indentBy: "  ",
+      suppressEmptyNode: false,
+      suppressUnpairedNode: true,
+      suppressBooleanAttributes: true,
+      tagValueProcessor: function(key, a) {
+        return a;
+      },
+      attributeValueProcessor: function(attrName, a) {
+        return a;
+      },
+      preserveOrder: false,
+      commentPropName: false,
+      unpairedTags: [],
+      entities: [
+        { regex: new RegExp("&", "g"), val: "&" },
+        //it must be on top
+        { regex: new RegExp(">", "g"), val: ">" },
+        { regex: new RegExp("<", "g"), val: "<" },
+        { regex: new RegExp("'", "g"), val: "'" },
+        { regex: new RegExp('"', "g"), val: """ }
+      ],
+      processEntities: true,
+      stopNodes: [],
+      // transformTagName: false,
+      // transformAttributeName: false,
+      oneListGroup: false
+    };
+    function Builder(options) {
+      this.options = Object.assign({}, defaultOptions, options);
+      if (this.options.ignoreAttributes || this.options.attributesGroupName) {
+        this.isAttribute = function() {
+          return false;
+        };
+      } else {
+        this.attrPrefixLen = this.options.attributeNamePrefix.length;
+        this.isAttribute = isAttribute;
+      }
+      this.processTextOrObjNode = processTextOrObjNode;
+      if (this.options.format) {
+        this.indentate = indentate;
+        this.tagEndChar = ">\n";
+        this.newLine = "\n";
+      } else {
+        this.indentate = function() {
+          return "";
+        };
+        this.tagEndChar = ">";
+        this.newLine = "";
+      }
+    }
+    Builder.prototype.build = function(jObj) {
+      if (this.options.preserveOrder) {
+        return buildFromOrderedJs(jObj, this.options);
+      } else {
+        if (Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1) {
+          jObj = {
+            [this.options.arrayNodeName]: jObj
+          };
+        }
+        return this.j2x(jObj, 0).val;
+      }
+    };
+    Builder.prototype.j2x = function(jObj, level) {
+      let attrStr = "";
+      let val2 = "";
+      for (let key in jObj) {
+        if (!Object.prototype.hasOwnProperty.call(jObj, key)) continue;
+        if (typeof jObj[key] === "undefined") {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          }
+        } else if (jObj[key] === null) {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          } else if (key[0] === "?") {
+            val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+          } else {
+            val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+          }
+        } else if (jObj[key] instanceof Date) {
+          val2 += this.buildTextValNode(jObj[key], key, "", level);
+        } else if (typeof jObj[key] !== "object") {
+          const attr = this.isAttribute(key);
+          if (attr) {
+            attrStr += this.buildAttrPairStr(attr, "" + jObj[key]);
+          } else {
+            if (key === this.options.textNodeName) {
+              let newval = this.options.tagValueProcessor(key, "" + jObj[key]);
+              val2 += this.replaceEntitiesValue(newval);
+            } else {
+              val2 += this.buildTextValNode(jObj[key], key, "", level);
+            }
+          }
+        } else if (Array.isArray(jObj[key])) {
+          const arrLen = jObj[key].length;
+          let listTagVal = "";
+          let listTagAttr = "";
+          for (let j = 0; j < arrLen; j++) {
+            const item = jObj[key][j];
+            if (typeof item === "undefined") {
+            } else if (item === null) {
+              if (key[0] === "?") val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+              else val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+            } else if (typeof item === "object") {
+              if (this.options.oneListGroup) {
+                const result = this.j2x(item, level + 1);
+                listTagVal += result.val;
+                if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {
+                  listTagAttr += result.attrStr;
+                }
+              } else {
+                listTagVal += this.processTextOrObjNode(item, key, level);
+              }
+            } else {
+              if (this.options.oneListGroup) {
+                let textValue = this.options.tagValueProcessor(key, item);
+                textValue = this.replaceEntitiesValue(textValue);
+                listTagVal += textValue;
+              } else {
+                listTagVal += this.buildTextValNode(item, key, "", level);
+              }
+            }
+          }
+          if (this.options.oneListGroup) {
+            listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);
+          }
+          val2 += listTagVal;
+        } else {
+          if (this.options.attributesGroupName && key === this.options.attributesGroupName) {
+            const Ks = Object.keys(jObj[key]);
+            const L = Ks.length;
+            for (let j = 0; j < L; j++) {
+              attrStr += this.buildAttrPairStr(Ks[j], "" + jObj[key][Ks[j]]);
+            }
+          } else {
+            val2 += this.processTextOrObjNode(jObj[key], key, level);
+          }
+        }
+      }
+      return { attrStr, val: val2 };
+    };
+    Builder.prototype.buildAttrPairStr = function(attrName, val2) {
+      val2 = this.options.attributeValueProcessor(attrName, "" + val2);
+      val2 = this.replaceEntitiesValue(val2);
+      if (this.options.suppressBooleanAttributes && val2 === "true") {
+        return " " + attrName;
+      } else return " " + attrName + '="' + val2 + '"';
+    };
+    function processTextOrObjNode(object, key, level) {
+      const result = this.j2x(object, level + 1);
+      if (object[this.options.textNodeName] !== void 0 && Object.keys(object).length === 1) {
+        return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);
+      } else {
+        return this.buildObjectNode(result.val, key, result.attrStr, level);
+      }
+    }
+    Builder.prototype.buildObjectNode = function(val2, key, attrStr, level) {
+      if (val2 === "") {
+        if (key[0] === "?") return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+        else {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        }
+      } else {
+        let tagEndExp = "" + val2 + tagEndExp;
+        } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {
+          return this.indentate(level) + `` + this.newLine;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + piClosingChar + this.tagEndChar + val2 + this.indentate(level) + tagEndExp;
+        }
+      }
+    };
+    Builder.prototype.closeTag = function(key) {
+      let closeTag = "";
+      if (this.options.unpairedTags.indexOf(key) !== -1) {
+        if (!this.options.suppressUnpairedNode) closeTag = "/";
+      } else if (this.options.suppressEmptyNode) {
+        closeTag = "/";
+      } else {
+        closeTag = `>` + this.newLine;
+      } else if (this.options.commentPropName !== false && key === this.options.commentPropName) {
+        return this.indentate(level) + `` + this.newLine;
+      } else if (key[0] === "?") {
+        return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+      } else {
+        let textValue = this.options.tagValueProcessor(key, val2);
+        textValue = this.replaceEntitiesValue(textValue);
+        if (textValue === "") {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + ">" + textValue + " 0 && this.options.processEntities) {
+        for (let i = 0; i < this.options.entities.length; i++) {
+          const entity = this.options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    };
+    function indentate(level) {
+      return this.options.indentBy.repeat(level);
+    }
+    function isAttribute(name) {
+      if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {
+        return name.substr(this.attrPrefixLen);
+      } else {
+        return false;
+      }
+    }
+    module2.exports = Builder;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/fxp.js
+var require_fxp = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/fxp.js"(exports2, module2) {
+    "use strict";
+    var validator = require_validator2();
+    var XMLParser2 = require_XMLParser();
+    var XMLBuilder = require_json2xml();
+    module2.exports = {
+      XMLParser: XMLParser2,
+      XMLValidator: validator,
+      XMLBuilder
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js
+var import_smithy_client3, import_fast_xml_parser, parseXmlBody, parseXmlErrorBody, loadRestXmlErrorCode;
+var init_parseXmlBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js"() {
+    import_smithy_client3 = __toESM(require_dist_cjs33());
+    import_fast_xml_parser = __toESM(require_fxp());
+    init_common();
+    parseXmlBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        const parser = new import_fast_xml_parser.XMLParser({
+          attributeNamePrefix: "",
+          htmlEntities: true,
+          ignoreAttributes: false,
+          ignoreDeclaration: true,
+          parseTagValue: false,
+          trimValues: false,
+          tagValueProcessor: (_, val2) => val2.trim() === "" && val2.includes("\n") ? "" : void 0
+        });
+        parser.addEntity("#xD", "\r");
+        parser.addEntity("#10", "\n");
+        let parsedObj;
+        try {
+          parsedObj = parser.parse(encoded, true);
+        } catch (e) {
+          if (e && typeof e === "object") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+        const textNodeName = "#text";
+        const key = Object.keys(parsedObj)[0];
+        const parsedObjToReturn = parsedObj[key];
+        if (parsedObjToReturn[textNodeName]) {
+          parsedObjToReturn[key] = parsedObjToReturn[textNodeName];
+          delete parsedObjToReturn[textNodeName];
+        }
+        return (0, import_smithy_client3.getValueFromTextNode)(parsedObjToReturn);
+      }
+      return {};
+    });
+    parseXmlErrorBody = async (errorBody, context) => {
+      const value = await parseXmlBody(errorBody, context);
+      if (value.Error) {
+        value.Error.message = value.Error.message ?? value.Error.Message;
+      }
+      return value;
+    };
+    loadRestXmlErrorCode = (output, data) => {
+      if (data?.Error?.Code !== void 0) {
+        return data.Error.Code;
+      }
+      if (data?.Code !== void 0) {
+        return data.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js
+var init_protocols2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js"() {
+    init_coercing_serializers();
+    init_awsExpectUnion();
+    init_parseJsonBody();
+    init_parseXmlBody();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/index.js
+var dist_es_exports2 = {};
+__export(dist_es_exports2, {
+  AWSSDKSigV4Signer: () => AWSSDKSigV4Signer,
+  AwsSdkSigV4ASigner: () => AwsSdkSigV4ASigner,
+  AwsSdkSigV4Signer: () => AwsSdkSigV4Signer,
+  NODE_SIGV4A_CONFIG_OPTIONS: () => NODE_SIGV4A_CONFIG_OPTIONS,
+  _toBool: () => _toBool,
+  _toNum: () => _toNum,
+  _toStr: () => _toStr,
+  awsExpectUnion: () => awsExpectUnion,
+  emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion,
+  loadRestJsonErrorCode: () => loadRestJsonErrorCode,
+  loadRestXmlErrorCode: () => loadRestXmlErrorCode,
+  parseJsonBody: () => parseJsonBody,
+  parseJsonErrorBody: () => parseJsonErrorBody,
+  parseXmlBody: () => parseXmlBody,
+  parseXmlErrorBody: () => parseXmlErrorBody,
+  resolveAWSSDKSigV4Config: () => resolveAWSSDKSigV4Config,
+  resolveAwsSdkSigV4AConfig: () => resolveAwsSdkSigV4AConfig,
+  resolveAwsSdkSigV4Config: () => resolveAwsSdkSigV4Config,
+  validateSigningProperties: () => validateSigningProperties
+});
+var init_dist_es2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/index.js"() {
+    init_client();
+    init_httpAuthSchemes2();
+    init_protocols2();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSFNHttpAuthSchemeProvider = exports2.defaultSFNHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSFNHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSFNHttpAuthSchemeParametersProvider = defaultSFNHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "states",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    var defaultSFNHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSFNHttpAuthSchemeProvider = defaultSFNHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/tslib/tslib.es6.mjs
+var tslib_es6_exports = {};
+__export(tslib_es6_exports, {
+  __addDisposableResource: () => __addDisposableResource,
+  __assign: () => __assign,
+  __asyncDelegator: () => __asyncDelegator,
+  __asyncGenerator: () => __asyncGenerator,
+  __asyncValues: () => __asyncValues,
+  __await: () => __await,
+  __awaiter: () => __awaiter,
+  __classPrivateFieldGet: () => __classPrivateFieldGet,
+  __classPrivateFieldIn: () => __classPrivateFieldIn,
+  __classPrivateFieldSet: () => __classPrivateFieldSet,
+  __createBinding: () => __createBinding,
+  __decorate: () => __decorate,
+  __disposeResources: () => __disposeResources,
+  __esDecorate: () => __esDecorate,
+  __exportStar: () => __exportStar,
+  __extends: () => __extends,
+  __generator: () => __generator,
+  __importDefault: () => __importDefault,
+  __importStar: () => __importStar,
+  __makeTemplateObject: () => __makeTemplateObject,
+  __metadata: () => __metadata,
+  __param: () => __param,
+  __propKey: () => __propKey,
+  __read: () => __read,
+  __rest: () => __rest,
+  __rewriteRelativeImportExtension: () => __rewriteRelativeImportExtension,
+  __runInitializers: () => __runInitializers2,
+  __setFunctionName: () => __setFunctionName,
+  __spread: () => __spread,
+  __spreadArray: () => __spreadArray,
+  __spreadArrays: () => __spreadArrays,
+  __values: () => __values,
+  default: () => tslib_es6_default
+});
+function __extends(d, b) {
+  if (typeof b !== "function" && b !== null)
+    throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+  extendStatics(d, b);
+  function __() {
+    this.constructor = d;
+  }
+  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+}
+function __rest(s, e) {
+  var t = {};
+  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+    t[p] = s[p];
+  if (s != null && typeof Object.getOwnPropertySymbols === "function")
+    for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+      if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+        t[p[i]] = s[p[i]];
+    }
+  return t;
+}
+function __decorate(decorators, target, key, desc) {
+  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+  return c > 3 && r && Object.defineProperty(target, key, r), r;
+}
+function __param(paramIndex, decorator) {
+  return function(target, key) {
+    decorator(target, key, paramIndex);
+  };
+}
+function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
+  function accept(f) {
+    if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected");
+    return f;
+  }
+  var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
+  var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
+  var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
+  var _, done = false;
+  for (var i = decorators.length - 1; i >= 0; i--) {
+    var context = {};
+    for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
+    for (var p in contextIn.access) context.access[p] = contextIn.access[p];
+    context.addInitializer = function(f) {
+      if (done) throw new TypeError("Cannot add initializers after decoration has completed");
+      extraInitializers.push(accept(f || null));
+    };
+    var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
+    if (kind === "accessor") {
+      if (result === void 0) continue;
+      if (result === null || typeof result !== "object") throw new TypeError("Object expected");
+      if (_ = accept(result.get)) descriptor.get = _;
+      if (_ = accept(result.set)) descriptor.set = _;
+      if (_ = accept(result.init)) initializers.unshift(_);
+    } else if (_ = accept(result)) {
+      if (kind === "field") initializers.unshift(_);
+      else descriptor[key] = _;
+    }
+  }
+  if (target) Object.defineProperty(target, contextIn.name, descriptor);
+  done = true;
+}
+function __runInitializers2(thisArg, initializers, value) {
+  var useValue = arguments.length > 2;
+  for (var i = 0; i < initializers.length; i++) {
+    value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
+  }
+  return useValue ? value : void 0;
+}
+function __propKey(x) {
+  return typeof x === "symbol" ? x : "".concat(x);
+}
+function __setFunctionName(f, name, prefix) {
+  if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
+  return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
+}
+function __metadata(metadataKey, metadataValue) {
+  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
+}
+function __awaiter(thisArg, _arguments, P, generator) {
+  function adopt(value) {
+    return value instanceof P ? value : new P(function(resolve6) {
+      resolve6(value);
+    });
+  }
+  return new (P || (P = Promise))(function(resolve6, reject) {
+    function fulfilled(value) {
+      try {
+        step(generator.next(value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function rejected(value) {
+      try {
+        step(generator["throw"](value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function step(result) {
+      result.done ? resolve6(result.value) : adopt(result.value).then(fulfilled, rejected);
+    }
+    step((generator = generator.apply(thisArg, _arguments || [])).next());
+  });
+}
+function __generator(thisArg, body) {
+  var _ = { label: 0, sent: function() {
+    if (t[0] & 1) throw t[1];
+    return t[1];
+  }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
+  return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
+    return this;
+  }), g;
+  function verb(n) {
+    return function(v) {
+      return step([n, v]);
+    };
+  }
+  function step(op) {
+    if (f) throw new TypeError("Generator is already executing.");
+    while (g && (g = 0, op[0] && (_ = 0)), _) try {
+      if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
+      if (y = 0, t) op = [op[0] & 2, t.value];
+      switch (op[0]) {
+        case 0:
+        case 1:
+          t = op;
+          break;
+        case 4:
+          _.label++;
+          return { value: op[1], done: false };
+        case 5:
+          _.label++;
+          y = op[1];
+          op = [0];
+          continue;
+        case 7:
+          op = _.ops.pop();
+          _.trys.pop();
+          continue;
+        default:
+          if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
+            _ = 0;
+            continue;
+          }
+          if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
+            _.label = op[1];
+            break;
+          }
+          if (op[0] === 6 && _.label < t[1]) {
+            _.label = t[1];
+            t = op;
+            break;
+          }
+          if (t && _.label < t[2]) {
+            _.label = t[2];
+            _.ops.push(op);
+            break;
+          }
+          if (t[2]) _.ops.pop();
+          _.trys.pop();
+          continue;
+      }
+      op = body.call(thisArg, _);
+    } catch (e) {
+      op = [6, e];
+      y = 0;
+    } finally {
+      f = t = 0;
+    }
+    if (op[0] & 5) throw op[1];
+    return { value: op[0] ? op[1] : void 0, done: true };
+  }
+}
+function __exportStar(m, o) {
+  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
+}
+function __values(o) {
+  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
+  if (m) return m.call(o);
+  if (o && typeof o.length === "number") return {
+    next: function() {
+      if (o && i >= o.length) o = void 0;
+      return { value: o && o[i++], done: !o };
+    }
+  };
+  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
+}
+function __read(o, n) {
+  var m = typeof Symbol === "function" && o[Symbol.iterator];
+  if (!m) return o;
+  var i = m.call(o), r, ar = [], e;
+  try {
+    while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
+  } catch (error) {
+    e = { error };
+  } finally {
+    try {
+      if (r && !r.done && (m = i["return"])) m.call(i);
+    } finally {
+      if (e) throw e.error;
+    }
+  }
+  return ar;
+}
+function __spread() {
+  for (var ar = [], i = 0; i < arguments.length; i++)
+    ar = ar.concat(__read(arguments[i]));
+  return ar;
+}
+function __spreadArrays() {
+  for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
+  for (var r = Array(s), k = 0, i = 0; i < il; i++)
+    for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
+      r[k] = a[j];
+  return r;
+}
+function __spreadArray(to, from, pack) {
+  if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
+    if (ar || !(i in from)) {
+      if (!ar) ar = Array.prototype.slice.call(from, 0, i);
+      ar[i] = from[i];
+    }
+  }
+  return to.concat(ar || Array.prototype.slice.call(from));
+}
+function __await(v) {
+  return this instanceof __await ? (this.v = v, this) : new __await(v);
+}
+function __asyncGenerator(thisArg, _arguments, generator) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var g = generator.apply(thisArg, _arguments || []), i, q = [];
+  return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i;
+  function awaitReturn(f) {
+    return function(v) {
+      return Promise.resolve(v).then(f, reject);
+    };
+  }
+  function verb(n, f) {
+    if (g[n]) {
+      i[n] = function(v) {
+        return new Promise(function(a, b) {
+          q.push([n, v, a, b]) > 1 || resume(n, v);
+        });
+      };
+      if (f) i[n] = f(i[n]);
+    }
+  }
+  function resume(n, v) {
+    try {
+      step(g[n](v));
+    } catch (e) {
+      settle(q[0][3], e);
+    }
+  }
+  function step(r) {
+    r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r);
+  }
+  function fulfill(value) {
+    resume("next", value);
+  }
+  function reject(value) {
+    resume("throw", value);
+  }
+  function settle(f, v) {
+    if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);
+  }
+}
+function __asyncDelegator(o) {
+  var i, p;
+  return i = {}, verb("next"), verb("throw", function(e) {
+    throw e;
+  }), verb("return"), i[Symbol.iterator] = function() {
+    return this;
+  }, i;
+  function verb(n, f) {
+    i[n] = o[n] ? function(v) {
+      return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v;
+    } : f;
+  }
+}
+function __asyncValues(o) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var m = o[Symbol.asyncIterator], i;
+  return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i);
+  function verb(n) {
+    i[n] = o[n] && function(v) {
+      return new Promise(function(resolve6, reject) {
+        v = o[n](v), settle(resolve6, reject, v.done, v.value);
+      });
+    };
+  }
+  function settle(resolve6, reject, d, v) {
+    Promise.resolve(v).then(function(v2) {
+      resolve6({ value: v2, done: d });
+    }, reject);
+  }
+}
+function __makeTemplateObject(cooked, raw) {
+  if (Object.defineProperty) {
+    Object.defineProperty(cooked, "raw", { value: raw });
+  } else {
+    cooked.raw = raw;
+  }
+  return cooked;
+}
+function __importStar(mod) {
+  if (mod && mod.__esModule) return mod;
+  var result = {};
+  if (mod != null) {
+    for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
+  }
+  __setModuleDefault(result, mod);
+  return result;
+}
+function __importDefault(mod) {
+  return mod && mod.__esModule ? mod : { default: mod };
+}
+function __classPrivateFieldGet(receiver, state, kind, f) {
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+}
+function __classPrivateFieldSet(receiver, state, value, kind, f) {
+  if (kind === "m") throw new TypeError("Private method is not writable");
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+  return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
+}
+function __classPrivateFieldIn(state, receiver) {
+  if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") throw new TypeError("Cannot use 'in' operator on non-object");
+  return typeof state === "function" ? receiver === state : state.has(receiver);
+}
+function __addDisposableResource(env2, value, async) {
+  if (value !== null && value !== void 0) {
+    if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
+    var dispose, inner;
+    if (async) {
+      if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
+      dispose = value[Symbol.asyncDispose];
+    }
+    if (dispose === void 0) {
+      if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
+      dispose = value[Symbol.dispose];
+      if (async) inner = dispose;
+    }
+    if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
+    if (inner) dispose = function() {
+      try {
+        inner.call(this);
+      } catch (e) {
+        return Promise.reject(e);
+      }
+    };
+    env2.stack.push({ value, dispose, async });
+  } else if (async) {
+    env2.stack.push({ async: true });
+  }
+  return value;
+}
+function __disposeResources(env2) {
+  function fail(e) {
+    env2.error = env2.hasError ? new _SuppressedError(e, env2.error, "An error was suppressed during disposal.") : e;
+    env2.hasError = true;
+  }
+  var r, s = 0;
+  function next() {
+    while (r = env2.stack.pop()) {
+      try {
+        if (!r.async && s === 1) return s = 0, env2.stack.push(r), Promise.resolve().then(next);
+        if (r.dispose) {
+          var result = r.dispose.call(r.value);
+          if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
+            fail(e);
+            return next();
+          });
+        } else s |= 1;
+      } catch (e) {
+        fail(e);
+      }
+    }
+    if (s === 1) return env2.hasError ? Promise.reject(env2.error) : Promise.resolve();
+    if (env2.hasError) throw env2.error;
+  }
+  return next();
+}
+function __rewriteRelativeImportExtension(path23, preserveJsx) {
+  if (typeof path23 === "string" && /^\.\.?\//.test(path23)) {
+    return path23.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d, ext, cm) {
+      return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : d + ext + "." + cm.toLowerCase() + "js";
+    });
+  }
+  return path23;
+}
+var extendStatics, __assign, __createBinding, __setModuleDefault, ownKeys, _SuppressedError, tslib_es6_default;
+var init_tslib_es6 = __esm({
+  "../../../node_modules/tslib/tslib.es6.mjs"() {
+    extendStatics = function(d, b) {
+      extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
+        d2.__proto__ = b2;
+      } || function(d2, b2) {
+        for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
+      };
+      return extendStatics(d, b);
+    };
+    __assign = function() {
+      __assign = Object.assign || function __assign2(t) {
+        for (var s, i = 1, n = arguments.length; i < n; i++) {
+          s = arguments[i];
+          for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+        }
+        return t;
+      };
+      return __assign.apply(this, arguments);
+    };
+    __createBinding = Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    });
+    __setModuleDefault = Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    };
+    ownKeys = function(o) {
+      ownKeys = Object.getOwnPropertyNames || function(o2) {
+        var ar = [];
+        for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
+        return ar;
+      };
+      return ownKeys(o);
+    };
+    _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
+      var e = new Error(message);
+      return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
+    };
+    tslib_es6_default = {
+      __extends,
+      __assign,
+      __rest,
+      __decorate,
+      __param,
+      __esDecorate,
+      __runInitializers: __runInitializers2,
+      __propKey,
+      __setFunctionName,
+      __metadata,
+      __awaiter,
+      __generator,
+      __createBinding,
+      __exportStar,
+      __values,
+      __read,
+      __spread,
+      __spreadArrays,
+      __spreadArray,
+      __await,
+      __asyncGenerator,
+      __asyncDelegator,
+      __asyncValues,
+      __makeTemplateObject,
+      __importStar,
+      __importDefault,
+      __classPrivateFieldGet,
+      __classPrivateFieldSet,
+      __classPrivateFieldIn,
+      __addDisposableResource,
+      __disposeResources,
+      __rewriteRelativeImportExtension
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/package.json
+var require_package = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sfn",
+      description: "AWS SDK for JavaScript Sfn Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sfn",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sfn"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/client-sts": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2",
+        uuid: "^9.0.1"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        "@types/uuid": "^9.0.4",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sfn",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sfn"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js
+var require_dist_cjs36 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ENV_ACCOUNT_ID: () => ENV_ACCOUNT_ID,
+      ENV_CREDENTIAL_SCOPE: () => ENV_CREDENTIAL_SCOPE,
+      ENV_EXPIRATION: () => ENV_EXPIRATION,
+      ENV_KEY: () => ENV_KEY,
+      ENV_SECRET: () => ENV_SECRET,
+      ENV_SESSION: () => ENV_SESSION,
+      fromEnv: () => fromEnv
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_KEY = "AWS_ACCESS_KEY_ID";
+    var ENV_SECRET = "AWS_SECRET_ACCESS_KEY";
+    var ENV_SESSION = "AWS_SESSION_TOKEN";
+    var ENV_EXPIRATION = "AWS_CREDENTIAL_EXPIRATION";
+    var ENV_CREDENTIAL_SCOPE = "AWS_CREDENTIAL_SCOPE";
+    var ENV_ACCOUNT_ID = "AWS_ACCOUNT_ID";
+    var fromEnv = /* @__PURE__ */ __name2((init) => async () => {
+      var _a7;
+      (_a7 = init == null ? void 0 : init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-env - fromEnv");
+      const accessKeyId = process.env[ENV_KEY];
+      const secretAccessKey = process.env[ENV_SECRET];
+      const sessionToken = process.env[ENV_SESSION];
+      const expiry = process.env[ENV_EXPIRATION];
+      const credentialScope = process.env[ENV_CREDENTIAL_SCOPE];
+      const accountId = process.env[ENV_ACCOUNT_ID];
+      if (accessKeyId && secretAccessKey) {
+        return {
+          accessKeyId,
+          secretAccessKey,
+          ...sessionToken && { sessionToken },
+          ...expiry && { expiration: new Date(expiry) },
+          ...credentialScope && { credentialScope },
+          ...accountId && { accountId }
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError("Unable to find environment variable credentials.", { logger: init == null ? void 0 : init.logger });
+    }, "fromEnv");
+  }
+});
+
+// ../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js
+var require_dist_cjs37 = __commonJS({
+  "../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_MAX_RETRIES: () => DEFAULT_MAX_RETRIES,
+      DEFAULT_TIMEOUT: () => DEFAULT_TIMEOUT,
+      ENV_CMDS_AUTH_TOKEN: () => ENV_CMDS_AUTH_TOKEN,
+      ENV_CMDS_FULL_URI: () => ENV_CMDS_FULL_URI,
+      ENV_CMDS_RELATIVE_URI: () => ENV_CMDS_RELATIVE_URI,
+      Endpoint: () => Endpoint,
+      fromContainerMetadata: () => fromContainerMetadata,
+      fromInstanceMetadata: () => fromInstanceMetadata,
+      getInstanceMetadataEndpoint: () => getInstanceMetadataEndpoint,
+      httpRequest: () => httpRequest,
+      providerConfigFromInit: () => providerConfigFromInit
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_url = require("url");
+    var import_property_provider2 = require_dist_cjs24();
+    var import_buffer = require("buffer");
+    var import_http2 = require("http");
+    function httpRequest(options) {
+      return new Promise((resolve6, reject) => {
+        var _a7;
+        const req = (0, import_http2.request)({
+          method: "GET",
+          ...options,
+          // Node.js http module doesn't accept hostname with square brackets
+          // Refs: https://github.com/nodejs/node/issues/39738
+          hostname: (_a7 = options.hostname) == null ? void 0 : _a7.replace(/^\[(.+)\]$/, "$1")
+        });
+        req.on("error", (err) => {
+          reject(Object.assign(new import_property_provider2.ProviderError("Unable to connect to instance metadata service"), err));
+          req.destroy();
+        });
+        req.on("timeout", () => {
+          reject(new import_property_provider2.ProviderError("TimeoutError from instance metadata service"));
+          req.destroy();
+        });
+        req.on("response", (res) => {
+          const { statusCode = 400 } = res;
+          if (statusCode < 200 || 300 <= statusCode) {
+            reject(
+              Object.assign(new import_property_provider2.ProviderError("Error response received from instance metadata service"), { statusCode })
+            );
+            req.destroy();
+          }
+          const chunks = [];
+          res.on("data", (chunk) => {
+            chunks.push(chunk);
+          });
+          res.on("end", () => {
+            resolve6(import_buffer.Buffer.concat(chunks));
+            req.destroy();
+          });
+        });
+        req.end();
+      });
+    }
+    __name2(httpRequest, "httpRequest");
+    var isImdsCredentials = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.AccessKeyId === "string" && typeof arg.SecretAccessKey === "string" && typeof arg.Token === "string" && typeof arg.Expiration === "string", "isImdsCredentials");
+    var fromImdsCredentials = /* @__PURE__ */ __name2((creds) => ({
+      accessKeyId: creds.AccessKeyId,
+      secretAccessKey: creds.SecretAccessKey,
+      sessionToken: creds.Token,
+      expiration: new Date(creds.Expiration),
+      ...creds.AccountId && { accountId: creds.AccountId }
+    }), "fromImdsCredentials");
+    var DEFAULT_TIMEOUT = 1e3;
+    var DEFAULT_MAX_RETRIES = 0;
+    var providerConfigFromInit = /* @__PURE__ */ __name2(({
+      maxRetries = DEFAULT_MAX_RETRIES,
+      timeout = DEFAULT_TIMEOUT
+    }) => ({ maxRetries, timeout }), "providerConfigFromInit");
+    var retry = /* @__PURE__ */ __name2((toRetry, maxRetries) => {
+      let promise = toRetry();
+      for (let i = 0; i < maxRetries; i++) {
+        promise = promise.catch(toRetry);
+      }
+      return promise;
+    }, "retry");
+    var ENV_CMDS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var ENV_CMDS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var ENV_CMDS_AUTH_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromContainerMetadata = /* @__PURE__ */ __name2((init = {}) => {
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      return () => retry(async () => {
+        const requestOptions = await getCmdsUri({ logger: init.logger });
+        const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions));
+        if (!isImdsCredentials(credsResponse)) {
+          throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+            logger: init.logger
+          });
+        }
+        return fromImdsCredentials(credsResponse);
+      }, maxRetries);
+    }, "fromContainerMetadata");
+    var requestFromEcsImds = /* @__PURE__ */ __name2(async (timeout, options) => {
+      if (process.env[ENV_CMDS_AUTH_TOKEN]) {
+        options.headers = {
+          ...options.headers,
+          Authorization: process.env[ENV_CMDS_AUTH_TOKEN]
+        };
+      }
+      const buffer = await httpRequest({
+        ...options,
+        timeout
+      });
+      return buffer.toString();
+    }, "requestFromEcsImds");
+    var CMDS_IP = "169.254.170.2";
+    var GREENGRASS_HOSTS = {
+      localhost: true,
+      "127.0.0.1": true
+    };
+    var GREENGRASS_PROTOCOLS = {
+      "http:": true,
+      "https:": true
+    };
+    var getCmdsUri = /* @__PURE__ */ __name2(async ({ logger }) => {
+      if (process.env[ENV_CMDS_RELATIVE_URI]) {
+        return {
+          hostname: CMDS_IP,
+          path: process.env[ENV_CMDS_RELATIVE_URI]
+        };
+      }
+      if (process.env[ENV_CMDS_FULL_URI]) {
+        const parsed = (0, import_url.parse)(process.env[ENV_CMDS_FULL_URI]);
+        if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        return {
+          ...parsed,
+          port: parsed.port ? parseInt(parsed.port, 10) : void 0
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `The container metadata credential provider cannot be used unless the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment variable is set`,
+        {
+          tryNextLink: false,
+          logger
+        }
+      );
+    }, "getCmdsUri");
+    var _InstanceMetadataV1FallbackError = class _InstanceMetadataV1FallbackError2 extends import_property_provider2.CredentialsProviderError {
+      constructor(message, tryNextLink = true) {
+        super(message, tryNextLink);
+        this.tryNextLink = tryNextLink;
+        this.name = "InstanceMetadataV1FallbackError";
+        Object.setPrototypeOf(this, _InstanceMetadataV1FallbackError2.prototype);
+      }
+    };
+    __name2(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError");
+    var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError;
+    var import_node_config_provider = require_dist_cjs26();
+    var import_url_parser = require_dist_cjs28();
+    var Endpoint = /* @__PURE__ */ ((Endpoint2) => {
+      Endpoint2["IPv4"] = "http://169.254.169.254";
+      Endpoint2["IPv6"] = "http://[fd00:ec2::254]";
+      return Endpoint2;
+    })(Endpoint || {});
+    var ENV_ENDPOINT_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT";
+    var CONFIG_ENDPOINT_NAME = "ec2_metadata_service_endpoint";
+    var ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME],
+      default: void 0
+    };
+    var EndpointMode = /* @__PURE__ */ ((EndpointMode2) => {
+      EndpointMode2["IPv4"] = "IPv4";
+      EndpointMode2["IPv6"] = "IPv6";
+      return EndpointMode2;
+    })(EndpointMode || {});
+    var ENV_ENDPOINT_MODE_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE";
+    var CONFIG_ENDPOINT_MODE_NAME = "ec2_metadata_service_endpoint_mode";
+    var ENDPOINT_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_MODE_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME],
+      default: "IPv4"
+      /* IPv4 */
+    };
+    var getInstanceMetadataEndpoint = /* @__PURE__ */ __name2(async () => (0, import_url_parser.parseUrl)(await getFromEndpointConfig() || await getFromEndpointModeConfig()), "getInstanceMetadataEndpoint");
+    var getFromEndpointConfig = /* @__PURE__ */ __name2(async () => (0, import_node_config_provider.loadConfig)(ENDPOINT_CONFIG_OPTIONS)(), "getFromEndpointConfig");
+    var getFromEndpointModeConfig = /* @__PURE__ */ __name2(async () => {
+      const endpointMode = await (0, import_node_config_provider.loadConfig)(ENDPOINT_MODE_CONFIG_OPTIONS)();
+      switch (endpointMode) {
+        case "IPv4":
+          return "http://169.254.169.254";
+        case "IPv6":
+          return "http://[fd00:ec2::254]";
+        default:
+          throw new Error(`Unsupported endpoint mode: ${endpointMode}. Select from ${Object.values(EndpointMode)}`);
+      }
+    }, "getFromEndpointModeConfig");
+    var STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60;
+    var STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60;
+    var STATIC_STABILITY_DOC_URL = "https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html";
+    var getExtendedInstanceMetadataCredentials = /* @__PURE__ */ __name2((credentials, logger) => {
+      const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS + Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS);
+      const newExpiration = new Date(Date.now() + refreshInterval * 1e3);
+      logger.warn(
+        `Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(newExpiration)}.
+For more information, please visit: ` + STATIC_STABILITY_DOC_URL
+      );
+      const originalExpiration = credentials.originalExpiration ?? credentials.expiration;
+      return {
+        ...credentials,
+        ...originalExpiration ? { originalExpiration } : {},
+        expiration: newExpiration
+      };
+    }, "getExtendedInstanceMetadataCredentials");
+    var staticStabilityProvider = /* @__PURE__ */ __name2((provider, options = {}) => {
+      const logger = (options == null ? void 0 : options.logger) || console;
+      let pastCredentials;
+      return async () => {
+        let credentials;
+        try {
+          credentials = await provider();
+          if (credentials.expiration && credentials.expiration.getTime() < Date.now()) {
+            credentials = getExtendedInstanceMetadataCredentials(credentials, logger);
+          }
+        } catch (e) {
+          if (pastCredentials) {
+            logger.warn("Credential renew failed: ", e);
+            credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger);
+          } else {
+            throw e;
+          }
+        }
+        pastCredentials = credentials;
+        return credentials;
+      };
+    }, "staticStabilityProvider");
+    var IMDS_PATH = "/latest/meta-data/iam/security-credentials/";
+    var IMDS_TOKEN_PATH = "/latest/api/token";
+    var AWS_EC2_METADATA_V1_DISABLED = "AWS_EC2_METADATA_V1_DISABLED";
+    var PROFILE_AWS_EC2_METADATA_V1_DISABLED = "ec2_metadata_v1_disabled";
+    var X_AWS_EC2_METADATA_TOKEN = "x-aws-ec2-metadata-token";
+    var fromInstanceMetadata = /* @__PURE__ */ __name2((init = {}) => staticStabilityProvider(getInstanceMetadataProvider(init), { logger: init.logger }), "fromInstanceMetadata");
+    var getInstanceMetadataProvider = /* @__PURE__ */ __name2((init = {}) => {
+      let disableFetchToken = false;
+      const { logger, profile } = init;
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      const getCredentials = /* @__PURE__ */ __name2(async (maxRetries2, options) => {
+        var _a7;
+        const isImdsV1Fallback = disableFetchToken || ((_a7 = options.headers) == null ? void 0 : _a7[X_AWS_EC2_METADATA_TOKEN]) == null;
+        if (isImdsV1Fallback) {
+          let fallbackBlockedFromProfile = false;
+          let fallbackBlockedFromProcessEnv = false;
+          const configValue = await (0, import_node_config_provider.loadConfig)(
+            {
+              environmentVariableSelector: (env2) => {
+                const envValue = env2[AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProcessEnv = !!envValue && envValue !== "false";
+                if (envValue === void 0) {
+                  throw new import_property_provider2.CredentialsProviderError(
+                    `${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.`,
+                    { logger: init.logger }
+                  );
+                }
+                return fallbackBlockedFromProcessEnv;
+              },
+              configFileSelector: (profile2) => {
+                const profileValue = profile2[PROFILE_AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProfile = !!profileValue && profileValue !== "false";
+                return fallbackBlockedFromProfile;
+              },
+              default: false
+            },
+            {
+              profile
+            }
+          )();
+          if (init.ec2MetadataV1Disabled || configValue) {
+            const causes = [];
+            if (init.ec2MetadataV1Disabled)
+              causes.push("credential provider initialization (runtime option ec2MetadataV1Disabled)");
+            if (fallbackBlockedFromProfile)
+              causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`);
+            if (fallbackBlockedFromProcessEnv)
+              causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`);
+            throw new InstanceMetadataV1FallbackError(
+              `AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join(
+                ", "
+              )}].`
+            );
+          }
+        }
+        const imdsProfile = (await retry(async () => {
+          let profile2;
+          try {
+            profile2 = await getProfile(options);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return profile2;
+        }, maxRetries2)).trim();
+        return retry(async () => {
+          let creds;
+          try {
+            creds = await getCredentialsFromProfile(imdsProfile, options, init);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return creds;
+        }, maxRetries2);
+      }, "getCredentials");
+      return async () => {
+        const endpoint = await getInstanceMetadataEndpoint();
+        if (disableFetchToken) {
+          logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (no token fetch)");
+          return getCredentials(maxRetries, { ...endpoint, timeout });
+        } else {
+          let token;
+          try {
+            token = (await getMetadataToken({ ...endpoint, timeout })).toString();
+          } catch (error) {
+            if ((error == null ? void 0 : error.statusCode) === 400) {
+              throw Object.assign(error, {
+                message: "EC2 Metadata token request returned error"
+              });
+            } else if (error.message === "TimeoutError" || [403, 404, 405].includes(error.statusCode)) {
+              disableFetchToken = true;
+            }
+            logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (initial)");
+            return getCredentials(maxRetries, { ...endpoint, timeout });
+          }
+          return getCredentials(maxRetries, {
+            ...endpoint,
+            headers: {
+              [X_AWS_EC2_METADATA_TOKEN]: token
+            },
+            timeout
+          });
+        }
+      };
+    }, "getInstanceMetadataProvider");
+    var getMetadataToken = /* @__PURE__ */ __name2(async (options) => httpRequest({
+      ...options,
+      path: IMDS_TOKEN_PATH,
+      method: "PUT",
+      headers: {
+        "x-aws-ec2-metadata-token-ttl-seconds": "21600"
+      }
+    }), "getMetadataToken");
+    var getProfile = /* @__PURE__ */ __name2(async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString(), "getProfile");
+    var getCredentialsFromProfile = /* @__PURE__ */ __name2(async (profile, options, init) => {
+      const credentialsResponse = JSON.parse(
+        (await httpRequest({
+          ...options,
+          path: IMDS_PATH + profile
+        })).toString()
+      );
+      if (!isImdsCredentials(credentialsResponse)) {
+        throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+          logger: init.logger
+        });
+      }
+      return fromImdsCredentials(credentialsResponse);
+    }, "getCredentialsFromProfile");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js
+var require_checkUrl = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.checkUrl = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var ECS_CONTAINER_HOST = "169.254.170.2";
+    var EKS_CONTAINER_HOST_IPv4 = "169.254.170.23";
+    var EKS_CONTAINER_HOST_IPv6 = "[fd00:ec2::23]";
+    var checkUrl = (url2, logger) => {
+      if (url2.protocol === "https:") {
+        return;
+      }
+      if (url2.hostname === ECS_CONTAINER_HOST || url2.hostname === EKS_CONTAINER_HOST_IPv4 || url2.hostname === EKS_CONTAINER_HOST_IPv6) {
+        return;
+      }
+      if (url2.hostname.includes("[")) {
+        if (url2.hostname === "[::1]" || url2.hostname === "[0000:0000:0000:0000:0000:0000:0000:0001]") {
+          return;
+        }
+      } else {
+        if (url2.hostname === "localhost") {
+          return;
+        }
+        const ipComponents = url2.hostname.split(".");
+        const inRange = (component) => {
+          const num = parseInt(component, 10);
+          return 0 <= num && num <= 255;
+        };
+        if (ipComponents[0] === "127" && inRange(ipComponents[1]) && inRange(ipComponents[2]) && inRange(ipComponents[3]) && ipComponents.length === 4) {
+          return;
+        }
+      }
+      throw new property_provider_1.CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following:
+  - loopback CIDR 127.0.0.0/8 or [::1/128]
+  - ECS container host 169.254.170.2
+  - EKS container host 169.254.170.23 or [fd00:ec2::23]`, { logger });
+    };
+    exports2.checkUrl = checkUrl;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js
+var require_requestHelpers = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getCredentials = exports2.createGetRequest = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_stream_1 = require_dist_cjs22();
+    function createGetRequest(url2) {
+      return new protocol_http_1.HttpRequest({
+        protocol: url2.protocol,
+        hostname: url2.hostname,
+        port: Number(url2.port),
+        path: url2.pathname,
+        query: Array.from(url2.searchParams.entries()).reduce((acc, [k, v]) => {
+          acc[k] = v;
+          return acc;
+        }, {}),
+        fragment: url2.hash
+      });
+    }
+    exports2.createGetRequest = createGetRequest;
+    async function getCredentials(response, logger) {
+      const stream = (0, util_stream_1.sdkStreamMixin)(response.body);
+      const str = await stream.transformToString();
+      if (response.statusCode === 200) {
+        const parsed = JSON.parse(str);
+        if (typeof parsed.AccessKeyId !== "string" || typeof parsed.SecretAccessKey !== "string" || typeof parsed.Token !== "string" || typeof parsed.Expiration !== "string") {
+          throw new property_provider_1.CredentialsProviderError("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }", { logger });
+        }
+        return {
+          accessKeyId: parsed.AccessKeyId,
+          secretAccessKey: parsed.SecretAccessKey,
+          sessionToken: parsed.Token,
+          expiration: (0, smithy_client_1.parseRfc3339DateTime)(parsed.Expiration)
+        };
+      }
+      if (response.statusCode >= 400 && response.statusCode < 500) {
+        let parsedBody = {};
+        try {
+          parsedBody = JSON.parse(str);
+        } catch (e) {
+        }
+        throw Object.assign(new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger }), {
+          Code: parsedBody.Code,
+          Message: parsedBody.Message
+        });
+      }
+      throw new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger });
+    }
+    exports2.getCredentials = getCredentials;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js
+var require_retry_wrapper = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.retryWrapper = void 0;
+    var retryWrapper = (toRetry, maxRetries, delayMs) => {
+      return async () => {
+        for (let i = 0; i < maxRetries; ++i) {
+          try {
+            return await toRetry();
+          } catch (e) {
+            await new Promise((resolve6) => setTimeout(resolve6, delayMs));
+          }
+        }
+        return await toRetry();
+      };
+    };
+    exports2.retryWrapper = retryWrapper;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js
+var require_fromHttp = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var node_http_handler_1 = require_dist_cjs19();
+    var property_provider_1 = require_dist_cjs24();
+    var promises_1 = tslib_1.__importDefault(require("fs/promises"));
+    var checkUrl_1 = require_checkUrl();
+    var requestHelpers_1 = require_requestHelpers();
+    var retry_wrapper_1 = require_retry_wrapper();
+    var AWS_CONTAINER_CREDENTIALS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var DEFAULT_LINK_LOCAL_HOST = "http://169.254.170.2";
+    var AWS_CONTAINER_CREDENTIALS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE = "AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromHttp = (options = {}) => {
+      options.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");
+      let host;
+      const relative7 = options.awsContainerCredentialsRelativeUri ?? process.env[AWS_CONTAINER_CREDENTIALS_RELATIVE_URI];
+      const full = options.awsContainerCredentialsFullUri ?? process.env[AWS_CONTAINER_CREDENTIALS_FULL_URI];
+      const token = options.awsContainerAuthorizationToken ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN];
+      const tokenFile = options.awsContainerAuthorizationTokenFile ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE];
+      const warn = options.logger?.constructor?.name === "NoOpLogger" || !options.logger ? console.warn : options.logger.warn;
+      if (relative7 && full) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri.");
+        warn("awsContainerCredentialsFullUri will take precedence.");
+      }
+      if (token && tokenFile) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile.");
+        warn("awsContainerAuthorizationToken will take precedence.");
+      }
+      if (full) {
+        host = full;
+      } else if (relative7) {
+        host = `${DEFAULT_LINK_LOCAL_HOST}${relative7}`;
+      } else {
+        throw new property_provider_1.CredentialsProviderError(`No HTTP credential provider host provided.
+Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`, { logger: options.logger });
+      }
+      const url2 = new URL(host);
+      (0, checkUrl_1.checkUrl)(url2, options.logger);
+      const requestHandler = new node_http_handler_1.NodeHttpHandler({
+        requestTimeout: options.timeout ?? 1e3,
+        connectionTimeout: options.timeout ?? 1e3
+      });
+      return (0, retry_wrapper_1.retryWrapper)(async () => {
+        const request2 = (0, requestHelpers_1.createGetRequest)(url2);
+        if (token) {
+          request2.headers.Authorization = token;
+        } else if (tokenFile) {
+          request2.headers.Authorization = (await promises_1.default.readFile(tokenFile)).toString();
+        }
+        try {
+          const result = await requestHandler.handle(request2);
+          return (0, requestHelpers_1.getCredentials)(result.response);
+        } catch (e) {
+          throw new property_provider_1.CredentialsProviderError(String(e), { logger: options.logger });
+        }
+      }, options.maxRetries ?? 3, options.timeout ?? 1e3);
+    };
+    exports2.fromHttp = fromHttp;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js
+var require_dist_cjs38 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var fromHttp_1 = require_fromHttp();
+    Object.defineProperty(exports2, "fromHttp", { enumerable: true, get: function() {
+      return fromHttp_1.fromHttp;
+    } });
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOHttpAuthSchemeProvider = exports2.defaultSSOHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOHttpAuthSchemeParametersProvider = defaultSSOHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "awsssoportal",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "GetRoleCredentials": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccountRoles": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccounts": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "Logout": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOHttpAuthSchemeProvider = defaultSSOHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/package.json
+var require_package2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso",
+      description: "AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js
+var require_dist_cjs39 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      UA_APP_ID_ENV_NAME: () => UA_APP_ID_ENV_NAME,
+      UA_APP_ID_INI_NAME: () => UA_APP_ID_INI_NAME,
+      crtAvailability: () => crtAvailability,
+      defaultUserAgent: () => defaultUserAgent
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_node_config_provider = require_dist_cjs26();
+    var import_os = require("os");
+    var import_process2 = require("process");
+    var crtAvailability = {
+      isCrtAvailable: false
+    };
+    var isCrtAvailable = /* @__PURE__ */ __name2(() => {
+      if (crtAvailability.isCrtAvailable) {
+        return ["md/crt-avail"];
+      }
+      return null;
+    }, "isCrtAvailable");
+    var UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
+    var UA_APP_ID_INI_NAME = "sdk-ua-app-id";
+    var defaultUserAgent = /* @__PURE__ */ __name2(({ serviceId, clientVersion }) => {
+      const sections = [
+        // sdk-metadata
+        ["aws-sdk-js", clientVersion],
+        // ua-metadata
+        ["ua", "2.0"],
+        // os-metadata
+        [`os/${(0, import_os.platform)()}`, (0, import_os.release)()],
+        // language-metadata
+        // ECMAScript edition doesn't matter in JS, so no version needed.
+        ["lang/js"],
+        ["md/nodejs", `${import_process2.versions.node}`]
+      ];
+      const crtAvailable = isCrtAvailable();
+      if (crtAvailable) {
+        sections.push(crtAvailable);
+      }
+      if (serviceId) {
+        sections.push([`api/${serviceId}`, clientVersion]);
+      }
+      if (import_process2.env.AWS_EXECUTION_ENV) {
+        sections.push([`exec-env/${import_process2.env.AWS_EXECUTION_ENV}`]);
+      }
+      const appIdPromise = (0, import_node_config_provider.loadConfig)({
+        environmentVariableSelector: (env2) => env2[UA_APP_ID_ENV_NAME],
+        configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME],
+        default: void 0
+      })();
+      let resolvedUserAgent = void 0;
+      return async () => {
+        if (!resolvedUserAgent) {
+          const appId = await appIdPromise;
+          resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
+        }
+        return resolvedUserAgent;
+      };
+    }, "defaultUserAgent");
+  }
+});
+
+// ../../../node_modules/@smithy/hash-node/dist-cjs/index.js
+var require_dist_cjs40 = __commonJS({
+  "../../../node_modules/@smithy/hash-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Hash: () => Hash
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var import_util_utf8 = require_dist_cjs15();
+    var import_buffer = require("buffer");
+    var import_crypto5 = require("crypto");
+    var _Hash = class _Hash {
+      constructor(algorithmIdentifier, secret) {
+        this.algorithmIdentifier = algorithmIdentifier;
+        this.secret = secret;
+        this.reset();
+      }
+      update(toHash, encoding) {
+        this.hash.update((0, import_util_utf8.toUint8Array)(castSourceData(toHash, encoding)));
+      }
+      digest() {
+        return Promise.resolve(this.hash.digest());
+      }
+      reset() {
+        this.hash = this.secret ? (0, import_crypto5.createHmac)(this.algorithmIdentifier, castSourceData(this.secret)) : (0, import_crypto5.createHash)(this.algorithmIdentifier);
+      }
+    };
+    __name2(_Hash, "Hash");
+    var Hash = _Hash;
+    function castSourceData(toCast, encoding) {
+      if (import_buffer.Buffer.isBuffer(toCast)) {
+        return toCast;
+      }
+      if (typeof toCast === "string") {
+        return (0, import_util_buffer_from.fromString)(toCast, encoding);
+      }
+      if (ArrayBuffer.isView(toCast)) {
+        return (0, import_util_buffer_from.fromArrayBuffer)(toCast.buffer, toCast.byteOffset, toCast.byteLength);
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(toCast);
+    }
+    __name2(castSourceData, "castSourceData");
+  }
+});
+
+// ../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js
+var require_dist_cjs41 = __commonJS({
+  "../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      calculateBodyLength: () => calculateBodyLength
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_fs4 = require("fs");
+    var calculateBodyLength = /* @__PURE__ */ __name2((body) => {
+      if (!body) {
+        return 0;
+      }
+      if (typeof body === "string") {
+        return Buffer.byteLength(body);
+      } else if (typeof body.byteLength === "number") {
+        return body.byteLength;
+      } else if (typeof body.size === "number") {
+        return body.size;
+      } else if (typeof body.start === "number" && typeof body.end === "number") {
+        return body.end + 1 - body.start;
+      } else if (typeof body.path === "string" || Buffer.isBuffer(body.path)) {
+        return (0, import_fs4.lstatSync)(body.path).size;
+      } else if (typeof body.fd === "number") {
+        return (0, import_fs4.fstatSync)(body.fd).size;
+      }
+      throw new Error(`Body Length computation failed for ${body}`);
+    }, "calculateBodyLength");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js
+var require_ruleset = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://portal.sso.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider2();
+    var endpointResolver_1 = require_endpointResolver();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js
+var require_dist_cjs42 = __commonJS({
+  "../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      resolveDefaultsModeConfig: () => resolveDefaultsModeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_config_resolver = require_dist_cjs11();
+    var import_node_config_provider = require_dist_cjs26();
+    var import_property_provider2 = require_dist_cjs24();
+    var AWS_EXECUTION_ENV = "AWS_EXECUTION_ENV";
+    var AWS_REGION_ENV = "AWS_REGION";
+    var AWS_DEFAULT_REGION_ENV = "AWS_DEFAULT_REGION";
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var DEFAULTS_MODE_OPTIONS = ["in-region", "cross-region", "mobile", "standard", "legacy"];
+    var IMDS_REGION_PATH = "/latest/meta-data/placement/region";
+    var AWS_DEFAULTS_MODE_ENV = "AWS_DEFAULTS_MODE";
+    var AWS_DEFAULTS_MODE_CONFIG = "defaults_mode";
+    var NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        return env2[AWS_DEFAULTS_MODE_ENV];
+      },
+      configFileSelector: (profile) => {
+        return profile[AWS_DEFAULTS_MODE_CONFIG];
+      },
+      default: "legacy"
+    };
+    var resolveDefaultsModeConfig = /* @__PURE__ */ __name2(({
+      region = (0, import_node_config_provider.loadConfig)(import_config_resolver.NODE_REGION_CONFIG_OPTIONS),
+      defaultsMode = (0, import_node_config_provider.loadConfig)(NODE_DEFAULTS_MODE_CONFIG_OPTIONS)
+    } = {}) => (0, import_property_provider2.memoize)(async () => {
+      const mode = typeof defaultsMode === "function" ? await defaultsMode() : defaultsMode;
+      switch (mode == null ? void 0 : mode.toLowerCase()) {
+        case "auto":
+          return resolveNodeDefaultsModeAuto(region);
+        case "in-region":
+        case "cross-region":
+        case "mobile":
+        case "standard":
+        case "legacy":
+          return Promise.resolve(mode == null ? void 0 : mode.toLocaleLowerCase());
+        case void 0:
+          return Promise.resolve("legacy");
+        default:
+          throw new Error(
+            `Invalid parameter for "defaultsMode", expect ${DEFAULTS_MODE_OPTIONS.join(", ")}, got ${mode}`
+          );
+      }
+    }), "resolveDefaultsModeConfig");
+    var resolveNodeDefaultsModeAuto = /* @__PURE__ */ __name2(async (clientRegion) => {
+      if (clientRegion) {
+        const resolvedRegion = typeof clientRegion === "function" ? await clientRegion() : clientRegion;
+        const inferredRegion = await inferPhysicalRegion();
+        if (!inferredRegion) {
+          return "standard";
+        }
+        if (resolvedRegion === inferredRegion) {
+          return "in-region";
+        } else {
+          return "cross-region";
+        }
+      }
+      return "standard";
+    }, "resolveNodeDefaultsModeAuto");
+    var inferPhysicalRegion = /* @__PURE__ */ __name2(async () => {
+      if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {
+        return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];
+      }
+      if (!process.env[ENV_IMDS_DISABLED]) {
+        try {
+          const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          const endpoint = await getInstanceMetadataEndpoint();
+          return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString();
+        } catch (e) {
+        }
+      }
+    }, "inferPhysicalRegion");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js
+var require_runtimeConfig = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package2());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js
+var require_dist_cjs43 = __commonJS({
+  "../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getAwsRegionExtensionConfiguration: () => getAwsRegionExtensionConfiguration,
+      resolveAwsRegionExtensionConfiguration: () => resolveAwsRegionExtensionConfiguration,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let runtimeConfigRegion = /* @__PURE__ */ __name2(async () => {
+        if (runtimeConfig.region === void 0) {
+          throw new Error("Region is missing from runtimeConfig");
+        }
+        const region = runtimeConfig.region;
+        if (typeof region === "string") {
+          return region;
+        }
+        return region();
+      }, "runtimeConfigRegion");
+      return {
+        setRegion(region) {
+          runtimeConfigRegion = region;
+        },
+        region() {
+          return runtimeConfigRegion;
+        }
+      };
+    }, "getAwsRegionExtensionConfiguration");
+    var resolveAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((awsRegionExtensionConfiguration) => {
+      return {
+        region: awsRegionExtensionConfiguration.region()
+      };
+    }, "resolveAwsRegionExtensionConfiguration");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js
+var require_dist_cjs44 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      GetRoleCredentialsCommand: () => GetRoleCredentialsCommand,
+      GetRoleCredentialsRequestFilterSensitiveLog: () => GetRoleCredentialsRequestFilterSensitiveLog,
+      GetRoleCredentialsResponseFilterSensitiveLog: () => GetRoleCredentialsResponseFilterSensitiveLog,
+      InvalidRequestException: () => InvalidRequestException,
+      ListAccountRolesCommand: () => ListAccountRolesCommand,
+      ListAccountRolesRequestFilterSensitiveLog: () => ListAccountRolesRequestFilterSensitiveLog,
+      ListAccountsCommand: () => ListAccountsCommand,
+      ListAccountsRequestFilterSensitiveLog: () => ListAccountsRequestFilterSensitiveLog,
+      LogoutCommand: () => LogoutCommand,
+      LogoutRequestFilterSensitiveLog: () => LogoutRequestFilterSensitiveLog,
+      ResourceNotFoundException: () => ResourceNotFoundException,
+      RoleCredentialsFilterSensitiveLog: () => RoleCredentialsFilterSensitiveLog,
+      SSO: () => SSO,
+      SSOClient: () => SSOClient,
+      SSOServiceException: () => SSOServiceException,
+      TooManyRequestsException: () => TooManyRequestsException,
+      UnauthorizedException: () => UnauthorizedException,
+      __Client: () => import_smithy_client4.Client,
+      paginateListAccountRoles: () => paginateListAccountRoles,
+      paginateListAccounts: () => paginateListAccounts
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider2();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "awsssoportal"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOClient = class _SSOClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOClient, "SSOClient");
+    var SSOClient = _SSOClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOServiceException = class _SSOServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOServiceException2.prototype);
+      }
+    };
+    __name2(_SSOServiceException, "SSOServiceException");
+    var SSOServiceException = _SSOServiceException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _ResourceNotFoundException = class _ResourceNotFoundException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFoundException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFoundException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFoundException2.prototype);
+      }
+    };
+    __name2(_ResourceNotFoundException, "ResourceNotFoundException");
+    var ResourceNotFoundException = _ResourceNotFoundException;
+    var _TooManyRequestsException = class _TooManyRequestsException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyRequestsException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyRequestsException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyRequestsException2.prototype);
+      }
+    };
+    __name2(_TooManyRequestsException, "TooManyRequestsException");
+    var TooManyRequestsException = _TooManyRequestsException;
+    var _UnauthorizedException = class _UnauthorizedException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedException2.prototype);
+      }
+    };
+    __name2(_UnauthorizedException, "UnauthorizedException");
+    var UnauthorizedException = _UnauthorizedException;
+    var GetRoleCredentialsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetRoleCredentialsRequestFilterSensitiveLog");
+    var RoleCredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.secretAccessKey && { secretAccessKey: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.sessionToken && { sessionToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "RoleCredentialsFilterSensitiveLog");
+    var GetRoleCredentialsResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.roleCredentials && { roleCredentials: RoleCredentialsFilterSensitiveLog(obj.roleCredentials) }
+    }), "GetRoleCredentialsResponseFilterSensitiveLog");
+    var ListAccountRolesRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountRolesRequestFilterSensitiveLog");
+    var ListAccountsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountsRequestFilterSensitiveLog");
+    var LogoutRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "LogoutRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/federation/credentials");
+      const query = (0, import_smithy_client4.map)({
+        [_rn]: [, (0, import_smithy_client4.expectNonNull)(input[_rN], `roleName`)],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_GetRoleCredentialsCommand");
+    var se_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/roles");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountRolesCommand");
+    var se_ListAccountsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/accounts");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountsCommand");
+    var se_LogoutCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/logout");
+      let body;
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_LogoutCommand");
+    var de_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        roleCredentials: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_GetRoleCredentialsCommand");
+    var de_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        nextToken: import_smithy_client4.expectString,
+        roleList: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountRolesCommand");
+    var de_ListAccountsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accountList: import_smithy_client4._json,
+        nextToken: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountsCommand");
+    var de_LogoutCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      await (0, import_smithy_client4.collectBody)(output.body, context);
+      return contents;
+    }, "de_LogoutCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "InvalidRequestException":
+        case "com.amazonaws.sso#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "ResourceNotFoundException":
+        case "com.amazonaws.sso#ResourceNotFoundException":
+          throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+        case "TooManyRequestsException":
+        case "com.amazonaws.sso#TooManyRequestsException":
+          throw await de_TooManyRequestsExceptionRes(parsedOutput, context);
+        case "UnauthorizedException":
+        case "com.amazonaws.sso#UnauthorizedException":
+          throw await de_UnauthorizedExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOServiceException);
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_ResourceNotFoundExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ResourceNotFoundException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ResourceNotFoundExceptionRes");
+    var de_TooManyRequestsExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new TooManyRequestsException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_TooManyRequestsExceptionRes");
+    var de_UnauthorizedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => value !== void 0 && value !== null && value !== "" && (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0), "isSerializableHeaderValue");
+    var _aI = "accountId";
+    var _aT = "accessToken";
+    var _ai = "account_id";
+    var _mR = "maxResults";
+    var _mr = "max_result";
+    var _nT = "nextToken";
+    var _nt = "next_token";
+    var _rN = "roleName";
+    var _rn = "role_name";
+    var _xasbt = "x-amz-sso_bearer_token";
+    var _GetRoleCredentialsCommand = class _GetRoleCredentialsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "GetRoleCredentials", {}).n("SSOClient", "GetRoleCredentialsCommand").f(GetRoleCredentialsRequestFilterSensitiveLog, GetRoleCredentialsResponseFilterSensitiveLog).ser(se_GetRoleCredentialsCommand).de(de_GetRoleCredentialsCommand).build() {
+    };
+    __name2(_GetRoleCredentialsCommand, "GetRoleCredentialsCommand");
+    var GetRoleCredentialsCommand = _GetRoleCredentialsCommand;
+    var _ListAccountRolesCommand = class _ListAccountRolesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccountRoles", {}).n("SSOClient", "ListAccountRolesCommand").f(ListAccountRolesRequestFilterSensitiveLog, void 0).ser(se_ListAccountRolesCommand).de(de_ListAccountRolesCommand).build() {
+    };
+    __name2(_ListAccountRolesCommand, "ListAccountRolesCommand");
+    var ListAccountRolesCommand = _ListAccountRolesCommand;
+    var _ListAccountsCommand = class _ListAccountsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccounts", {}).n("SSOClient", "ListAccountsCommand").f(ListAccountsRequestFilterSensitiveLog, void 0).ser(se_ListAccountsCommand).de(de_ListAccountsCommand).build() {
+    };
+    __name2(_ListAccountsCommand, "ListAccountsCommand");
+    var ListAccountsCommand = _ListAccountsCommand;
+    var _LogoutCommand = class _LogoutCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "Logout", {}).n("SSOClient", "LogoutCommand").f(LogoutRequestFilterSensitiveLog, void 0).ser(se_LogoutCommand).de(de_LogoutCommand).build() {
+    };
+    __name2(_LogoutCommand, "LogoutCommand");
+    var LogoutCommand = _LogoutCommand;
+    var commands = {
+      GetRoleCredentialsCommand,
+      ListAccountRolesCommand,
+      ListAccountsCommand,
+      LogoutCommand
+    };
+    var _SSO = class _SSO extends SSOClient {
+    };
+    __name2(_SSO, "SSO");
+    var SSO = _SSO;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSO);
+    var paginateListAccountRoles = (0, import_core4.createPaginator)(SSOClient, ListAccountRolesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListAccounts = (0, import_core4.createPaginator)(SSOClient, ListAccountsCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOOIDCHttpAuthSchemeProvider = exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOOIDCHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = defaultSSOOIDCHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sso-oauth",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOOIDCHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "CreateToken": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "RegisterClient": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "StartDeviceAuthorization": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeProvider = defaultSSOOIDCHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/package.json
+var require_package3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso-oidc",
+      description: "AWS SDK for JavaScript Sso Oidc Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso-oidc",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso-oidc"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      peerDependencies: {
+        "@aws-sdk/client-sts": "^3.632.0"
+      },
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso-oidc",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso-oidc"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js
+var require_ruleset2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://oidc.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://oidc.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset2();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider3();
+    var endpointResolver_1 = require_endpointResolver2();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOOIDCHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO OIDC",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js
+var require_runtimeConfig2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package3());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js
+var require_dist_cjs45 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AccessDeniedException: () => AccessDeniedException,
+      AuthorizationPendingException: () => AuthorizationPendingException,
+      CreateTokenCommand: () => CreateTokenCommand,
+      CreateTokenRequestFilterSensitiveLog: () => CreateTokenRequestFilterSensitiveLog,
+      CreateTokenResponseFilterSensitiveLog: () => CreateTokenResponseFilterSensitiveLog,
+      CreateTokenWithIAMCommand: () => CreateTokenWithIAMCommand,
+      CreateTokenWithIAMRequestFilterSensitiveLog: () => CreateTokenWithIAMRequestFilterSensitiveLog,
+      CreateTokenWithIAMResponseFilterSensitiveLog: () => CreateTokenWithIAMResponseFilterSensitiveLog,
+      ExpiredTokenException: () => ExpiredTokenException,
+      InternalServerException: () => InternalServerException,
+      InvalidClientException: () => InvalidClientException,
+      InvalidClientMetadataException: () => InvalidClientMetadataException,
+      InvalidGrantException: () => InvalidGrantException,
+      InvalidRedirectUriException: () => InvalidRedirectUriException,
+      InvalidRequestException: () => InvalidRequestException,
+      InvalidRequestRegionException: () => InvalidRequestRegionException,
+      InvalidScopeException: () => InvalidScopeException,
+      RegisterClientCommand: () => RegisterClientCommand,
+      RegisterClientResponseFilterSensitiveLog: () => RegisterClientResponseFilterSensitiveLog,
+      SSOOIDC: () => SSOOIDC,
+      SSOOIDCClient: () => SSOOIDCClient,
+      SSOOIDCServiceException: () => SSOOIDCServiceException,
+      SlowDownException: () => SlowDownException,
+      StartDeviceAuthorizationCommand: () => StartDeviceAuthorizationCommand,
+      StartDeviceAuthorizationRequestFilterSensitiveLog: () => StartDeviceAuthorizationRequestFilterSensitiveLog,
+      UnauthorizedClientException: () => UnauthorizedClientException,
+      UnsupportedGrantTypeException: () => UnsupportedGrantTypeException,
+      __Client: () => import_smithy_client4.Client
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider3();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "sso-oauth"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig2();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOOIDCClient = class _SSOOIDCClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOOIDCHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOOIDCClient, "SSOOIDCClient");
+    var SSOOIDCClient = _SSOOIDCClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOOIDCServiceException = class _SSOOIDCServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOOIDCServiceException2.prototype);
+      }
+    };
+    __name2(_SSOOIDCServiceException, "SSOOIDCServiceException");
+    var SSOOIDCServiceException = _SSOOIDCServiceException;
+    var _AccessDeniedException = class _AccessDeniedException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AccessDeniedException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AccessDeniedException, "AccessDeniedException");
+    var AccessDeniedException = _AccessDeniedException;
+    var _AuthorizationPendingException = class _AuthorizationPendingException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AuthorizationPendingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AuthorizationPendingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AuthorizationPendingException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AuthorizationPendingException, "AuthorizationPendingException");
+    var AuthorizationPendingException = _AuthorizationPendingException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _InternalServerException = class _InternalServerException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InternalServerException",
+          $fault: "server",
+          ...opts
+        });
+        this.name = "InternalServerException";
+        this.$fault = "server";
+        Object.setPrototypeOf(this, _InternalServerException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InternalServerException, "InternalServerException");
+    var InternalServerException = _InternalServerException;
+    var _InvalidClientException = class _InvalidClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientException, "InvalidClientException");
+    var InvalidClientException = _InvalidClientException;
+    var _InvalidGrantException = class _InvalidGrantException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidGrantException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidGrantException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidGrantException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidGrantException, "InvalidGrantException");
+    var InvalidGrantException = _InvalidGrantException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _InvalidScopeException = class _InvalidScopeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidScopeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidScopeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidScopeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidScopeException, "InvalidScopeException");
+    var InvalidScopeException = _InvalidScopeException;
+    var _SlowDownException = class _SlowDownException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "SlowDownException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "SlowDownException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _SlowDownException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_SlowDownException, "SlowDownException");
+    var SlowDownException = _SlowDownException;
+    var _UnauthorizedClientException = class _UnauthorizedClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnauthorizedClientException, "UnauthorizedClientException");
+    var UnauthorizedClientException = _UnauthorizedClientException;
+    var _UnsupportedGrantTypeException = class _UnsupportedGrantTypeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnsupportedGrantTypeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnsupportedGrantTypeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnsupportedGrantTypeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnsupportedGrantTypeException, "UnsupportedGrantTypeException");
+    var UnsupportedGrantTypeException = _UnsupportedGrantTypeException;
+    var _InvalidRequestRegionException = class _InvalidRequestRegionException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestRegionException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestRegionException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestRegionException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+        this.endpoint = opts.endpoint;
+        this.region = opts.region;
+      }
+    };
+    __name2(_InvalidRequestRegionException, "InvalidRequestRegionException");
+    var InvalidRequestRegionException = _InvalidRequestRegionException;
+    var _InvalidClientMetadataException = class _InvalidClientMetadataException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientMetadataException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientMetadataException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientMetadataException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientMetadataException, "InvalidClientMetadataException");
+    var InvalidClientMetadataException = _InvalidClientMetadataException;
+    var _InvalidRedirectUriException = class _InvalidRedirectUriException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRedirectUriException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRedirectUriException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRedirectUriException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRedirectUriException, "InvalidRedirectUriException");
+    var InvalidRedirectUriException = _InvalidRedirectUriException;
+    var CreateTokenRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenRequestFilterSensitiveLog");
+    var CreateTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenResponseFilterSensitiveLog");
+    var CreateTokenWithIAMRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.assertion && { assertion: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.subjectToken && { subjectToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMRequestFilterSensitiveLog");
+    var CreateTokenWithIAMResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMResponseFilterSensitiveLog");
+    var RegisterClientResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "RegisterClientResponseFilterSensitiveLog");
+    var StartDeviceAuthorizationRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartDeviceAuthorizationRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_CreateTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          code: [],
+          codeVerifier: [],
+          deviceCode: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          scope: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_CreateTokenCommand");
+    var se_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      const query = (0, import_smithy_client4.map)({
+        [_ai]: [, "t"]
+      });
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          assertion: [],
+          clientId: [],
+          code: [],
+          codeVerifier: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          requestedTokenType: [],
+          scope: (_) => (0, import_smithy_client4._json)(_),
+          subjectToken: [],
+          subjectTokenType: []
+        })
+      );
+      b.m("POST").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_CreateTokenWithIAMCommand");
+    var se_RegisterClientCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/client/register");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientName: [],
+          clientType: [],
+          entitledApplicationArn: [],
+          grantTypes: (_) => (0, import_smithy_client4._json)(_),
+          issuerUrl: [],
+          redirectUris: (_) => (0, import_smithy_client4._json)(_),
+          scopes: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_RegisterClientCommand");
+    var se_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/device_authorization");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          startUrl: []
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_StartDeviceAuthorizationCommand");
+    var de_CreateTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenCommand");
+    var de_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        issuedTokenType: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        scope: import_smithy_client4._json,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenWithIAMCommand");
+    var de_RegisterClientCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        authorizationEndpoint: import_smithy_client4.expectString,
+        clientId: import_smithy_client4.expectString,
+        clientIdIssuedAt: import_smithy_client4.expectLong,
+        clientSecret: import_smithy_client4.expectString,
+        clientSecretExpiresAt: import_smithy_client4.expectLong,
+        tokenEndpoint: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_RegisterClientCommand");
+    var de_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        deviceCode: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        interval: import_smithy_client4.expectInt32,
+        userCode: import_smithy_client4.expectString,
+        verificationUri: import_smithy_client4.expectString,
+        verificationUriComplete: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_StartDeviceAuthorizationCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "AccessDeniedException":
+        case "com.amazonaws.ssooidc#AccessDeniedException":
+          throw await de_AccessDeniedExceptionRes(parsedOutput, context);
+        case "AuthorizationPendingException":
+        case "com.amazonaws.ssooidc#AuthorizationPendingException":
+          throw await de_AuthorizationPendingExceptionRes(parsedOutput, context);
+        case "ExpiredTokenException":
+        case "com.amazonaws.ssooidc#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "InternalServerException":
+        case "com.amazonaws.ssooidc#InternalServerException":
+          throw await de_InternalServerExceptionRes(parsedOutput, context);
+        case "InvalidClientException":
+        case "com.amazonaws.ssooidc#InvalidClientException":
+          throw await de_InvalidClientExceptionRes(parsedOutput, context);
+        case "InvalidGrantException":
+        case "com.amazonaws.ssooidc#InvalidGrantException":
+          throw await de_InvalidGrantExceptionRes(parsedOutput, context);
+        case "InvalidRequestException":
+        case "com.amazonaws.ssooidc#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "InvalidScopeException":
+        case "com.amazonaws.ssooidc#InvalidScopeException":
+          throw await de_InvalidScopeExceptionRes(parsedOutput, context);
+        case "SlowDownException":
+        case "com.amazonaws.ssooidc#SlowDownException":
+          throw await de_SlowDownExceptionRes(parsedOutput, context);
+        case "UnauthorizedClientException":
+        case "com.amazonaws.ssooidc#UnauthorizedClientException":
+          throw await de_UnauthorizedClientExceptionRes(parsedOutput, context);
+        case "UnsupportedGrantTypeException":
+        case "com.amazonaws.ssooidc#UnsupportedGrantTypeException":
+          throw await de_UnsupportedGrantTypeExceptionRes(parsedOutput, context);
+        case "InvalidRequestRegionException":
+        case "com.amazonaws.ssooidc#InvalidRequestRegionException":
+          throw await de_InvalidRequestRegionExceptionRes(parsedOutput, context);
+        case "InvalidClientMetadataException":
+        case "com.amazonaws.ssooidc#InvalidClientMetadataException":
+          throw await de_InvalidClientMetadataExceptionRes(parsedOutput, context);
+        case "InvalidRedirectUriException":
+        case "com.amazonaws.ssooidc#InvalidRedirectUriException":
+          throw await de_InvalidRedirectUriExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOOIDCServiceException);
+    var de_AccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AccessDeniedExceptionRes");
+    var de_AuthorizationPendingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AuthorizationPendingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AuthorizationPendingExceptionRes");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_InternalServerExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InternalServerException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InternalServerExceptionRes");
+    var de_InvalidClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientExceptionRes");
+    var de_InvalidClientMetadataExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientMetadataException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientMetadataExceptionRes");
+    var de_InvalidGrantExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidGrantException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidGrantExceptionRes");
+    var de_InvalidRedirectUriExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRedirectUriException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRedirectUriExceptionRes");
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_InvalidRequestRegionExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        endpoint: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString,
+        region: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestRegionException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestRegionExceptionRes");
+    var de_InvalidScopeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidScopeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidScopeExceptionRes");
+    var de_SlowDownExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new SlowDownException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_SlowDownExceptionRes");
+    var de_UnauthorizedClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedClientExceptionRes");
+    var de_UnsupportedGrantTypeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnsupportedGrantTypeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnsupportedGrantTypeExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var _ai = "aws_iam";
+    var _CreateTokenCommand = class _CreateTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateToken", {}).n("SSOOIDCClient", "CreateTokenCommand").f(CreateTokenRequestFilterSensitiveLog, CreateTokenResponseFilterSensitiveLog).ser(se_CreateTokenCommand).de(de_CreateTokenCommand).build() {
+    };
+    __name2(_CreateTokenCommand, "CreateTokenCommand");
+    var CreateTokenCommand = _CreateTokenCommand;
+    var _CreateTokenWithIAMCommand = class _CreateTokenWithIAMCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateTokenWithIAM", {}).n("SSOOIDCClient", "CreateTokenWithIAMCommand").f(CreateTokenWithIAMRequestFilterSensitiveLog, CreateTokenWithIAMResponseFilterSensitiveLog).ser(se_CreateTokenWithIAMCommand).de(de_CreateTokenWithIAMCommand).build() {
+    };
+    __name2(_CreateTokenWithIAMCommand, "CreateTokenWithIAMCommand");
+    var CreateTokenWithIAMCommand = _CreateTokenWithIAMCommand;
+    var _RegisterClientCommand = class _RegisterClientCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "RegisterClient", {}).n("SSOOIDCClient", "RegisterClientCommand").f(void 0, RegisterClientResponseFilterSensitiveLog).ser(se_RegisterClientCommand).de(de_RegisterClientCommand).build() {
+    };
+    __name2(_RegisterClientCommand, "RegisterClientCommand");
+    var RegisterClientCommand = _RegisterClientCommand;
+    var _StartDeviceAuthorizationCommand = class _StartDeviceAuthorizationCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "StartDeviceAuthorization", {}).n("SSOOIDCClient", "StartDeviceAuthorizationCommand").f(StartDeviceAuthorizationRequestFilterSensitiveLog, void 0).ser(se_StartDeviceAuthorizationCommand).de(de_StartDeviceAuthorizationCommand).build() {
+    };
+    __name2(_StartDeviceAuthorizationCommand, "StartDeviceAuthorizationCommand");
+    var StartDeviceAuthorizationCommand = _StartDeviceAuthorizationCommand;
+    var commands = {
+      CreateTokenCommand,
+      CreateTokenWithIAMCommand,
+      RegisterClientCommand,
+      StartDeviceAuthorizationCommand
+    };
+    var _SSOOIDC = class _SSOOIDC extends SSOOIDCClient {
+    };
+    __name2(_SSOOIDC, "SSOOIDC");
+    var SSOOIDC = _SSOOIDC;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSOOIDC);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js
+var require_dist_cjs46 = __commonJS({
+  "../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSso: () => fromSso,
+      fromStatic: () => fromStatic,
+      nodeProvider: () => nodeProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var EXPIRE_WINDOW_MS = 5 * 60 * 1e3;
+    var REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;
+    var ssoOidcClientsHash = {};
+    var getSsoOidcClient = /* @__PURE__ */ __name2(async (ssoRegion) => {
+      const { SSOOIDCClient } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      if (ssoOidcClientsHash[ssoRegion]) {
+        return ssoOidcClientsHash[ssoRegion];
+      }
+      const ssoOidcClient = new SSOOIDCClient({ region: ssoRegion });
+      ssoOidcClientsHash[ssoRegion] = ssoOidcClient;
+      return ssoOidcClient;
+    }, "getSsoOidcClient");
+    var getNewSsoOidcToken = /* @__PURE__ */ __name2(async (ssoToken, ssoRegion) => {
+      const { CreateTokenCommand } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      const ssoOidcClient = await getSsoOidcClient(ssoRegion);
+      return ssoOidcClient.send(
+        new CreateTokenCommand({
+          clientId: ssoToken.clientId,
+          clientSecret: ssoToken.clientSecret,
+          refreshToken: ssoToken.refreshToken,
+          grantType: "refresh_token"
+        })
+      );
+    }, "getNewSsoOidcToken");
+    var import_property_provider2 = require_dist_cjs24();
+    var validateTokenExpiry = /* @__PURE__ */ __name2((token) => {
+      if (token.expiration && token.expiration.getTime() < Date.now()) {
+        throw new import_property_provider2.TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);
+      }
+    }, "validateTokenExpiry");
+    var validateTokenKey = /* @__PURE__ */ __name2((key, value, forRefresh = false) => {
+      if (typeof value === "undefined") {
+        throw new import_property_provider2.TokenProviderError(
+          `Value not present for '${key}' in SSO Token${forRefresh ? ". Cannot refresh" : ""}. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+    }, "validateTokenKey");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_fs4 = require("fs");
+    var { writeFile } = import_fs4.promises;
+    var writeSSOTokenToFile = /* @__PURE__ */ __name2((id, ssoToken) => {
+      const tokenFilepath = (0, import_shared_ini_file_loader.getSSOTokenFilepath)(id);
+      const tokenString = JSON.stringify(ssoToken, null, 2);
+      return writeFile(tokenFilepath, tokenString);
+    }, "writeSSOTokenToFile");
+    var lastRefreshAttemptTime = /* @__PURE__ */ new Date(0);
+    var fromSso = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/token-providers - fromSso");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const profile = profiles[profileName];
+      if (!profile) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);
+      } else if (!profile["sso_session"]) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);
+      }
+      const ssoSessionName = profile["sso_session"];
+      const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+      const ssoSession = ssoSessions[ssoSessionName];
+      if (!ssoSession) {
+        throw new import_property_provider2.TokenProviderError(
+          `Sso session '${ssoSessionName}' could not be found in shared credentials file.`,
+          false
+        );
+      }
+      for (const ssoSessionRequiredKey of ["sso_start_url", "sso_region"]) {
+        if (!ssoSession[ssoSessionRequiredKey]) {
+          throw new import_property_provider2.TokenProviderError(
+            `Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`,
+            false
+          );
+        }
+      }
+      const ssoStartUrl = ssoSession["sso_start_url"];
+      const ssoRegion = ssoSession["sso_region"];
+      let ssoToken;
+      try {
+        ssoToken = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoSessionName);
+      } catch (e) {
+        throw new import_property_provider2.TokenProviderError(
+          `The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+      validateTokenKey("accessToken", ssoToken.accessToken);
+      validateTokenKey("expiresAt", ssoToken.expiresAt);
+      const { accessToken, expiresAt } = ssoToken;
+      const existingToken = { token: accessToken, expiration: new Date(expiresAt) };
+      if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {
+        return existingToken;
+      }
+      if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1e3) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+      validateTokenKey("clientId", ssoToken.clientId, true);
+      validateTokenKey("clientSecret", ssoToken.clientSecret, true);
+      validateTokenKey("refreshToken", ssoToken.refreshToken, true);
+      try {
+        lastRefreshAttemptTime.setTime(Date.now());
+        const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion);
+        validateTokenKey("accessToken", newSsoOidcToken.accessToken);
+        validateTokenKey("expiresIn", newSsoOidcToken.expiresIn);
+        const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1e3);
+        try {
+          await writeSSOTokenToFile(ssoSessionName, {
+            ...ssoToken,
+            accessToken: newSsoOidcToken.accessToken,
+            expiresAt: newTokenExpiration.toISOString(),
+            refreshToken: newSsoOidcToken.refreshToken
+          });
+        } catch (error) {
+        }
+        return {
+          token: newSsoOidcToken.accessToken,
+          expiration: newTokenExpiration
+        };
+      } catch (error) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+    }, "fromSso");
+    var fromStatic = /* @__PURE__ */ __name2(({ token, logger }) => async () => {
+      logger == null ? void 0 : logger.debug("@aws-sdk/token-providers - fromStatic");
+      if (!token || !token.token) {
+        throw new import_property_provider2.TokenProviderError(`Please pass a valid token to fromStatic`, false);
+      }
+      return token;
+    }, "fromStatic");
+    var nodeProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(fromSso(init), async () => {
+        throw new import_property_provider2.TokenProviderError("Could not load token from any providers", false);
+      }),
+      (token) => token.expiration !== void 0 && token.expiration.getTime() - Date.now() < 3e5,
+      (token) => token.expiration !== void 0
+    ), "nodeProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js
+var require_dist_cjs47 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __esm2 = (fn, res) => function __init() {
+      return fn && (res = (0, fn[__getOwnPropNames2(fn)[0]])(fn = 0)), res;
+    };
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var loadSso_exports = {};
+    __export2(loadSso_exports, {
+      GetRoleCredentialsCommand: () => import_client_sso.GetRoleCredentialsCommand,
+      SSOClient: () => import_client_sso.SSOClient
+    });
+    var import_client_sso;
+    var init_loadSso = __esm2({
+      "src/loadSso.ts"() {
+        "use strict";
+        import_client_sso = require_dist_cjs44();
+      }
+    });
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSSO: () => fromSSO,
+      isSsoProfile: () => isSsoProfile,
+      validateSsoProfile: () => validateSsoProfile
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var import_token_providers = require_dist_cjs46();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var SHOULD_FAIL_CREDENTIAL_CHAIN = false;
+    var resolveSSOCredentials = /* @__PURE__ */ __name2(async ({
+      ssoStartUrl,
+      ssoSession,
+      ssoAccountId,
+      ssoRegion,
+      ssoRoleName,
+      ssoClient,
+      clientConfig,
+      profile,
+      logger
+    }) => {
+      let token;
+      const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;
+      if (ssoSession) {
+        try {
+          const _token = await (0, import_token_providers.fromSso)({ profile })();
+          token = {
+            accessToken: _token.token,
+            expiresAt: new Date(_token.expiration).toISOString()
+          };
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(e.message, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      } else {
+        try {
+          token = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoStartUrl);
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      }
+      if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {
+        throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const { accessToken } = token;
+      const { SSOClient: SSOClient2, GetRoleCredentialsCommand: GetRoleCredentialsCommand2 } = await Promise.resolve().then(() => (init_loadSso(), loadSso_exports));
+      const sso = ssoClient || new SSOClient2(
+        Object.assign({}, clientConfig ?? {}, {
+          region: (clientConfig == null ? void 0 : clientConfig.region) ?? ssoRegion
+        })
+      );
+      let ssoResp;
+      try {
+        ssoResp = await sso.send(
+          new GetRoleCredentialsCommand2({
+            accountId: ssoAccountId,
+            roleName: ssoRoleName,
+            accessToken
+          })
+        );
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(e, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const {
+        roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}
+      } = ssoResp;
+      if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {
+        throw new import_property_provider2.CredentialsProviderError("SSO returns an invalid temporary credential.", {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      return {
+        accessKeyId,
+        secretAccessKey,
+        sessionToken,
+        expiration: new Date(expiration),
+        ...credentialScope && { credentialScope },
+        ...accountId && { accountId }
+      };
+    }, "resolveSSOCredentials");
+    var validateSsoProfile = /* @__PURE__ */ __name2((profile, logger) => {
+      const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;
+      if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(
+            ", "
+          )}
+Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,
+          { tryNextLink: false, logger }
+        );
+      }
+      return profile;
+    }, "validateSsoProfile");
+    var fromSSO = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-sso - fromSSO");
+      const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+      const { ssoClient } = init;
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+        const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+        const profile = profiles[profileName];
+        if (!profile) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });
+        }
+        if (!isSsoProfile(profile)) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {
+            logger: init.logger
+          });
+        }
+        if (profile == null ? void 0 : profile.sso_session) {
+          const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+          const session = ssoSessions[profile.sso_session];
+          const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;
+          if (ssoRegion && ssoRegion !== session.sso_region) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          profile.sso_region = session.sso_region;
+          profile.sso_start_url = session.sso_start_url;
+        }
+        const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(
+          profile,
+          init.logger
+        );
+        return resolveSSOCredentials({
+          ssoStartUrl: sso_start_url,
+          ssoSession: sso_session,
+          ssoAccountId: sso_account_id,
+          ssoRegion: sso_region,
+          ssoRoleName: sso_role_name,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      } else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {
+        throw new import_property_provider2.CredentialsProviderError(
+          'Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',
+          { tryNextLink: false, logger: init.logger }
+        );
+      } else {
+        return resolveSSOCredentials({
+          ssoStartUrl,
+          ssoSession,
+          ssoAccountId,
+          ssoRegion,
+          ssoRoleName,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      }
+    }, "fromSSO");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.resolveStsAuthConfig = exports2.defaultSTSHttpAuthSchemeProvider = exports2.defaultSTSHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var STSClient_1 = require_STSClient();
+    var defaultSTSHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSTSHttpAuthSchemeParametersProvider = defaultSTSHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sts",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSTSHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "AssumeRoleWithSAML": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "AssumeRoleWithWebIdentity": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSTSHttpAuthSchemeProvider = defaultSTSHttpAuthSchemeProvider;
+    var resolveStsAuthConfig = (input) => ({
+      ...input,
+      stsClientCtor: STSClient_1.STSClient
+    });
+    exports2.resolveStsAuthConfig = resolveStsAuthConfig;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, exports2.resolveStsAuthConfig)(config);
+      const config_1 = (0, core_1.resolveAwsSdkSigV4Config)(config_0);
+      return {
+        ...config_1
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js
+var require_EndpointParameters = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.commonParams = exports2.resolveClientEndpointParameters = void 0;
+    var resolveClientEndpointParameters = (options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        useGlobalEndpoint: options.useGlobalEndpoint ?? false,
+        defaultSigningName: "sts"
+      };
+    };
+    exports2.resolveClientEndpointParameters = resolveClientEndpointParameters;
+    exports2.commonParams = {
+      UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" },
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/package.json
+var require_package4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sts",
+      description: "AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sts",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "rimraf ./dist-types tsconfig.types.tsbuildinfo && tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sts",
+        test: "yarn test:unit",
+        "test:unit": "jest"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sts",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sts"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js
+var require_ruleset3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var F2 = "required";
+    var G2 = "type";
+    var H2 = "fn";
+    var I2 = "argv";
+    var J = "ref";
+    var a = false;
+    var b = true;
+    var c = "booleanEquals";
+    var d = "stringEquals";
+    var e = "sigv4";
+    var f = "sts";
+    var g = "us-east-1";
+    var h = "endpoint";
+    var i = "https://sts.{Region}.{PartitionResult#dnsSuffix}";
+    var j = "tree";
+    var k = "error";
+    var l = "getAttr";
+    var m = { [F2]: false, [G2]: "String" };
+    var n = { [F2]: true, "default": false, [G2]: "Boolean" };
+    var o = { [J]: "Endpoint" };
+    var p = { [H2]: "isSet", [I2]: [{ [J]: "Region" }] };
+    var q = { [J]: "Region" };
+    var r = { [H2]: "aws.partition", [I2]: [q], "assign": "PartitionResult" };
+    var s = { [J]: "UseFIPS" };
+    var t = { [J]: "UseDualStack" };
+    var u = { "url": "https://sts.amazonaws.com", "properties": { "authSchemes": [{ "name": e, "signingName": f, "signingRegion": g }] }, "headers": {} };
+    var v = {};
+    var w = { "conditions": [{ [H2]: d, [I2]: [q, "aws-global"] }], [h]: u, [G2]: h };
+    var x = { [H2]: c, [I2]: [s, true] };
+    var y = { [H2]: c, [I2]: [t, true] };
+    var z = { [H2]: l, [I2]: [{ [J]: "PartitionResult" }, "supportsFIPS"] };
+    var A = { [J]: "PartitionResult" };
+    var B = { [H2]: c, [I2]: [true, { [H2]: l, [I2]: [A, "supportsDualStack"] }] };
+    var C = [{ [H2]: "isSet", [I2]: [o] }];
+    var D = [x];
+    var E = [y];
+    var _data = { version: "1.0", parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n }, rules: [{ conditions: [{ [H2]: c, [I2]: [{ [J]: "UseGlobalEndpoint" }, b] }, { [H2]: "not", [I2]: C }, p, r, { [H2]: c, [I2]: [s, a] }, { [H2]: c, [I2]: [t, a] }], rules: [{ conditions: [{ [H2]: d, [I2]: [q, "ap-northeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-south-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-2"] }], endpoint: u, [G2]: h }, w, { conditions: [{ [H2]: d, [I2]: [q, "ca-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-north-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-3"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "sa-east-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, g] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-east-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-2"] }], endpoint: u, [G2]: h }, { endpoint: { url: i, properties: { authSchemes: [{ name: e, signingName: f, signingRegion: "{Region}" }] }, headers: v }, [G2]: h }], [G2]: j }, { conditions: C, rules: [{ conditions: D, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [G2]: k }, { conditions: E, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [G2]: k }, { endpoint: { url: o, properties: v, headers: v }, [G2]: h }], [G2]: j }, { conditions: [p], rules: [{ conditions: [r], rules: [{ conditions: [x, y], rules: [{ conditions: [{ [H2]: c, [I2]: [b, z] }, B], rules: [{ endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", [G2]: k }], [G2]: j }, { conditions: D, rules: [{ conditions: [{ [H2]: c, [I2]: [z, b] }], rules: [{ conditions: [{ [H2]: d, [I2]: [{ [H2]: l, [I2]: [A, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://sts.{Region}.amazonaws.com", properties: v, headers: v }, [G2]: h }, { endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS is enabled but this partition does not support FIPS", [G2]: k }], [G2]: j }, { conditions: E, rules: [{ conditions: [B], rules: [{ endpoint: { url: "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "DualStack is enabled but this partition does not support DualStack", [G2]: k }], [G2]: j }, w, { endpoint: { url: i, properties: v, headers: v }, [G2]: h }], [G2]: j }], [G2]: j }, { error: "Invalid Configuration: Missing Region", [G2]: k }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset3();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var endpointResolver_1 = require_endpointResolver3();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2011-06-15",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "STS",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js
+var require_runtimeConfig3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package4());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared3();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4") || (async (idProps) => await (0, credential_provider_node_1.defaultProvider)(idProps?.__config || {})()),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js
+var require_httpAuthExtensionConfiguration = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthRuntimeConfig = exports2.getHttpAuthExtensionConfiguration = void 0;
+    var getHttpAuthExtensionConfiguration = (runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    };
+    exports2.getHttpAuthExtensionConfiguration = getHttpAuthExtensionConfiguration;
+    var resolveHttpAuthRuntimeConfig = (config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    };
+    exports2.resolveHttpAuthRuntimeConfig = resolveHttpAuthRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js
+var require_runtimeExtensions = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveRuntimeExtensions = void 0;
+    var region_config_resolver_1 = require_dist_cjs43();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var httpAuthExtensionConfiguration_1 = require_httpAuthExtensionConfiguration();
+    var asPartial = (t) => t;
+    var resolveRuntimeExtensions = (runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...(0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration)
+      };
+    };
+    exports2.resolveRuntimeExtensions = resolveRuntimeExtensions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js
+var require_STSClient = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.STSClient = exports2.__Client = void 0;
+    var middleware_host_header_1 = require_dist_cjs3();
+    var middleware_logger_1 = require_dist_cjs4();
+    var middleware_recursion_detection_1 = require_dist_cjs5();
+    var middleware_user_agent_1 = require_dist_cjs8();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_1 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var middleware_content_length_1 = require_dist_cjs23();
+    var middleware_endpoint_1 = require_dist_cjs29();
+    var middleware_retry_1 = require_dist_cjs34();
+    var smithy_client_1 = require_dist_cjs33();
+    Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() {
+      return smithy_client_1.Client;
+    } });
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var EndpointParameters_1 = require_EndpointParameters();
+    var runtimeConfig_1 = require_runtimeConfig3();
+    var runtimeExtensions_1 = require_runtimeExtensions();
+    var STSClient2 = class extends smithy_client_1.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {});
+        const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0);
+        const _config_2 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, middleware_retry_1.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, config_resolver_1.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, httpAuthSchemeProvider_1.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_7, configuration?.extensions || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use((0, core_1.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+          httpAuthSchemeParametersProvider: httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeParametersProvider,
+          identityProviderConfigProvider: async (config) => new core_1.DefaultIdentityProviderConfig({
+            "aws.auth#sigv4": config.credentials
+          })
+        }));
+        this.middlewareStack.use((0, core_1.getHttpSigningPlugin)(this.config));
+      }
+      destroy() {
+        super.destroy();
+      }
+    };
+    exports2.STSClient = STSClient2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js
+var require_dist_cjs48 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AssumeRoleCommand: () => AssumeRoleCommand,
+      AssumeRoleResponseFilterSensitiveLog: () => AssumeRoleResponseFilterSensitiveLog,
+      AssumeRoleWithSAMLCommand: () => AssumeRoleWithSAMLCommand,
+      AssumeRoleWithSAMLRequestFilterSensitiveLog: () => AssumeRoleWithSAMLRequestFilterSensitiveLog,
+      AssumeRoleWithSAMLResponseFilterSensitiveLog: () => AssumeRoleWithSAMLResponseFilterSensitiveLog,
+      AssumeRoleWithWebIdentityCommand: () => AssumeRoleWithWebIdentityCommand,
+      AssumeRoleWithWebIdentityRequestFilterSensitiveLog: () => AssumeRoleWithWebIdentityRequestFilterSensitiveLog,
+      AssumeRoleWithWebIdentityResponseFilterSensitiveLog: () => AssumeRoleWithWebIdentityResponseFilterSensitiveLog,
+      ClientInputEndpointParameters: () => import_EndpointParameters9.ClientInputEndpointParameters,
+      CredentialsFilterSensitiveLog: () => CredentialsFilterSensitiveLog,
+      DecodeAuthorizationMessageCommand: () => DecodeAuthorizationMessageCommand,
+      ExpiredTokenException: () => ExpiredTokenException,
+      GetAccessKeyInfoCommand: () => GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand: () => GetCallerIdentityCommand,
+      GetFederationTokenCommand: () => GetFederationTokenCommand,
+      GetFederationTokenResponseFilterSensitiveLog: () => GetFederationTokenResponseFilterSensitiveLog,
+      GetSessionTokenCommand: () => GetSessionTokenCommand,
+      GetSessionTokenResponseFilterSensitiveLog: () => GetSessionTokenResponseFilterSensitiveLog,
+      IDPCommunicationErrorException: () => IDPCommunicationErrorException,
+      IDPRejectedClaimException: () => IDPRejectedClaimException,
+      InvalidAuthorizationMessageException: () => InvalidAuthorizationMessageException,
+      InvalidIdentityTokenException: () => InvalidIdentityTokenException,
+      MalformedPolicyDocumentException: () => MalformedPolicyDocumentException,
+      PackedPolicyTooLargeException: () => PackedPolicyTooLargeException,
+      RegionDisabledException: () => RegionDisabledException,
+      STS: () => STS,
+      STSServiceException: () => STSServiceException,
+      decorateDefaultCredentialProvider: () => decorateDefaultCredentialProvider,
+      getDefaultRoleAssumer: () => getDefaultRoleAssumer2,
+      getDefaultRoleAssumerWithWebIdentity: () => getDefaultRoleAssumerWithWebIdentity2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_STSClient(), module2.exports);
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_EndpointParameters = require_EndpointParameters();
+    var import_smithy_client4 = require_dist_cjs33();
+    var _STSServiceException = class _STSServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _STSServiceException2.prototype);
+      }
+    };
+    __name2(_STSServiceException, "STSServiceException");
+    var STSServiceException = _STSServiceException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _MalformedPolicyDocumentException = class _MalformedPolicyDocumentException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MalformedPolicyDocumentException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MalformedPolicyDocumentException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MalformedPolicyDocumentException2.prototype);
+      }
+    };
+    __name2(_MalformedPolicyDocumentException, "MalformedPolicyDocumentException");
+    var MalformedPolicyDocumentException = _MalformedPolicyDocumentException;
+    var _PackedPolicyTooLargeException = class _PackedPolicyTooLargeException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "PackedPolicyTooLargeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "PackedPolicyTooLargeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _PackedPolicyTooLargeException2.prototype);
+      }
+    };
+    __name2(_PackedPolicyTooLargeException, "PackedPolicyTooLargeException");
+    var PackedPolicyTooLargeException = _PackedPolicyTooLargeException;
+    var _RegionDisabledException = class _RegionDisabledException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "RegionDisabledException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "RegionDisabledException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _RegionDisabledException2.prototype);
+      }
+    };
+    __name2(_RegionDisabledException, "RegionDisabledException");
+    var RegionDisabledException = _RegionDisabledException;
+    var _IDPRejectedClaimException = class _IDPRejectedClaimException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPRejectedClaimException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPRejectedClaimException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPRejectedClaimException2.prototype);
+      }
+    };
+    __name2(_IDPRejectedClaimException, "IDPRejectedClaimException");
+    var IDPRejectedClaimException = _IDPRejectedClaimException;
+    var _InvalidIdentityTokenException = class _InvalidIdentityTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidIdentityTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidIdentityTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidIdentityTokenException2.prototype);
+      }
+    };
+    __name2(_InvalidIdentityTokenException, "InvalidIdentityTokenException");
+    var InvalidIdentityTokenException = _InvalidIdentityTokenException;
+    var _IDPCommunicationErrorException = class _IDPCommunicationErrorException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPCommunicationErrorException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPCommunicationErrorException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPCommunicationErrorException2.prototype);
+      }
+    };
+    __name2(_IDPCommunicationErrorException, "IDPCommunicationErrorException");
+    var IDPCommunicationErrorException = _IDPCommunicationErrorException;
+    var _InvalidAuthorizationMessageException = class _InvalidAuthorizationMessageException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidAuthorizationMessageException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidAuthorizationMessageException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidAuthorizationMessageException2.prototype);
+      }
+    };
+    __name2(_InvalidAuthorizationMessageException, "InvalidAuthorizationMessageException");
+    var InvalidAuthorizationMessageException = _InvalidAuthorizationMessageException;
+    var CredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SecretAccessKey && { SecretAccessKey: import_smithy_client4.SENSITIVE_STRING }
+    }), "CredentialsFilterSensitiveLog");
+    var AssumeRoleResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleResponseFilterSensitiveLog");
+    var AssumeRoleWithSAMLRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SAMLAssertion && { SAMLAssertion: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithSAMLRequestFilterSensitiveLog");
+    var AssumeRoleWithSAMLResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithSAMLResponseFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.WebIdentityToken && { WebIdentityToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithWebIdentityRequestFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithWebIdentityResponseFilterSensitiveLog");
+    var GetFederationTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetFederationTokenResponseFilterSensitiveLog");
+    var GetSessionTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetSessionTokenResponseFilterSensitiveLog");
+    var import_core4 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_protocol_http8 = require_dist_cjs2();
+    var se_AssumeRoleCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleRequest(input, context),
+        [_A]: _AR,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleCommand");
+    var se_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithSAMLRequest(input, context),
+        [_A]: _ARWSAML,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithSAMLCommand");
+    var se_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithWebIdentityRequest(input, context),
+        [_A]: _ARWWI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithWebIdentityCommand");
+    var se_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_DecodeAuthorizationMessageRequest(input, context),
+        [_A]: _DAM,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DecodeAuthorizationMessageCommand");
+    var se_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetAccessKeyInfoRequest(input, context),
+        [_A]: _GAKI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetAccessKeyInfoCommand");
+    var se_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetCallerIdentityRequest(input, context),
+        [_A]: _GCI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetCallerIdentityCommand");
+    var se_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetFederationTokenRequest(input, context),
+        [_A]: _GFT,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetFederationTokenCommand");
+    var se_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetSessionTokenRequest(input, context),
+        [_A]: _GST,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetSessionTokenCommand");
+    var de_AssumeRoleCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleResponse(data.AssumeRoleResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleCommand");
+    var de_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithSAMLCommand");
+    var de_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithWebIdentityCommand");
+    var de_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_DecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DecodeAuthorizationMessageCommand");
+    var de_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetAccessKeyInfoCommand");
+    var de_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetCallerIdentityResponse(data.GetCallerIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetCallerIdentityCommand");
+    var de_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetFederationTokenResponse(data.GetFederationTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetFederationTokenCommand");
+    var de_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetSessionTokenResponse(data.GetSessionTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetSessionTokenCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core4.parseXmlErrorBody)(output.body, context)
+      };
+      const errorCode = loadQueryErrorCode(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ExpiredTokenException":
+        case "com.amazonaws.sts#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "MalformedPolicyDocument":
+        case "com.amazonaws.sts#MalformedPolicyDocumentException":
+          throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context);
+        case "PackedPolicyTooLarge":
+        case "com.amazonaws.sts#PackedPolicyTooLargeException":
+          throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context);
+        case "RegionDisabledException":
+        case "com.amazonaws.sts#RegionDisabledException":
+          throw await de_RegionDisabledExceptionRes(parsedOutput, context);
+        case "IDPRejectedClaim":
+        case "com.amazonaws.sts#IDPRejectedClaimException":
+          throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context);
+        case "InvalidIdentityToken":
+        case "com.amazonaws.sts#InvalidIdentityTokenException":
+          throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context);
+        case "IDPCommunicationError":
+        case "com.amazonaws.sts#IDPCommunicationErrorException":
+          throw await de_IDPCommunicationErrorExceptionRes(parsedOutput, context);
+        case "InvalidAuthorizationMessageException":
+        case "com.amazonaws.sts#InvalidAuthorizationMessageException":
+          throw await de_InvalidAuthorizationMessageExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody: parsedBody.Error,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_ExpiredTokenException(body.Error, context);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_IDPCommunicationErrorExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPCommunicationErrorException(body.Error, context);
+      const exception = new IDPCommunicationErrorException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPCommunicationErrorExceptionRes");
+    var de_IDPRejectedClaimExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPRejectedClaimException(body.Error, context);
+      const exception = new IDPRejectedClaimException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPRejectedClaimExceptionRes");
+    var de_InvalidAuthorizationMessageExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidAuthorizationMessageException(body.Error, context);
+      const exception = new InvalidAuthorizationMessageException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidAuthorizationMessageExceptionRes");
+    var de_InvalidIdentityTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidIdentityTokenException(body.Error, context);
+      const exception = new InvalidIdentityTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidIdentityTokenExceptionRes");
+    var de_MalformedPolicyDocumentExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_MalformedPolicyDocumentException(body.Error, context);
+      const exception = new MalformedPolicyDocumentException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MalformedPolicyDocumentExceptionRes");
+    var de_PackedPolicyTooLargeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_PackedPolicyTooLargeException(body.Error, context);
+      const exception = new PackedPolicyTooLargeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_PackedPolicyTooLargeExceptionRes");
+    var de_RegionDisabledExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_RegionDisabledException(body.Error, context);
+      const exception = new RegionDisabledException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_RegionDisabledExceptionRes");
+    var se_AssumeRoleRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b, _c, _d;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_TTK] != null) {
+        const memberEntries = se_tagKeyListType(input[_TTK], context);
+        if (((_c = input[_TTK]) == null ? void 0 : _c.length) === 0) {
+          entries.TransitiveTagKeys = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `TransitiveTagKeys.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_EI] != null) {
+        entries[_EI] = input[_EI];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      if (input[_SI] != null) {
+        entries[_SI] = input[_SI];
+      }
+      if (input[_PC] != null) {
+        const memberEntries = se_ProvidedContextsListType(input[_PC], context);
+        if (((_d = input[_PC]) == null ? void 0 : _d.length) === 0) {
+          entries.ProvidedContexts = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `ProvidedContexts.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_AssumeRoleRequest");
+    var se_AssumeRoleWithSAMLRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_PAr] != null) {
+        entries[_PAr] = input[_PAr];
+      }
+      if (input[_SAMLA] != null) {
+        entries[_SAMLA] = input[_SAMLA];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithSAMLRequest");
+    var se_AssumeRoleWithWebIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_WIT] != null) {
+        entries[_WIT] = input[_WIT];
+      }
+      if (input[_PI] != null) {
+        entries[_PI] = input[_PI];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithWebIdentityRequest");
+    var se_DecodeAuthorizationMessageRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_EM] != null) {
+        entries[_EM] = input[_EM];
+      }
+      return entries;
+    }, "se_DecodeAuthorizationMessageRequest");
+    var se_GetAccessKeyInfoRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_AKI] != null) {
+        entries[_AKI] = input[_AKI];
+      }
+      return entries;
+    }, "se_GetAccessKeyInfoRequest");
+    var se_GetCallerIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      return entries;
+    }, "se_GetCallerIdentityRequest");
+    var se_GetFederationTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b;
+      const entries = {};
+      if (input[_N] != null) {
+        entries[_N] = input[_N];
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_GetFederationTokenRequest");
+    var se_GetSessionTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      return entries;
+    }, "se_GetSessionTokenRequest");
+    var se_policyDescriptorListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_PolicyDescriptorType(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_policyDescriptorListType");
+    var se_PolicyDescriptorType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_a7] != null) {
+        entries[_a7] = input[_a7];
+      }
+      return entries;
+    }, "se_PolicyDescriptorType");
+    var se_ProvidedContext = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_PAro] != null) {
+        entries[_PAro] = input[_PAro];
+      }
+      if (input[_CA] != null) {
+        entries[_CA] = input[_CA];
+      }
+      return entries;
+    }, "se_ProvidedContext");
+    var se_ProvidedContextsListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_ProvidedContext(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_ProvidedContextsListType");
+    var se_Tag = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_K] != null) {
+        entries[_K] = input[_K];
+      }
+      if (input[_Va] != null) {
+        entries[_Va] = input[_Va];
+      }
+      return entries;
+    }, "se_Tag");
+    var se_tagKeyListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        entries[`member.${counter}`] = entry;
+        counter++;
+      }
+      return entries;
+    }, "se_tagKeyListType");
+    var se_tagListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_Tag(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_tagListType");
+    var de_AssumedRoleUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_ARI] != null) {
+        contents[_ARI] = (0, import_smithy_client4.expectString)(output[_ARI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_AssumedRoleUser");
+    var de_AssumeRoleResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleResponse");
+    var de_AssumeRoleWithSAMLResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_S] != null) {
+        contents[_S] = (0, import_smithy_client4.expectString)(output[_S]);
+      }
+      if (output[_ST] != null) {
+        contents[_ST] = (0, import_smithy_client4.expectString)(output[_ST]);
+      }
+      if (output[_I] != null) {
+        contents[_I] = (0, import_smithy_client4.expectString)(output[_I]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_NQ] != null) {
+        contents[_NQ] = (0, import_smithy_client4.expectString)(output[_NQ]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithSAMLResponse");
+    var de_AssumeRoleWithWebIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_SFWIT] != null) {
+        contents[_SFWIT] = (0, import_smithy_client4.expectString)(output[_SFWIT]);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_Pr] != null) {
+        contents[_Pr] = (0, import_smithy_client4.expectString)(output[_Pr]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithWebIdentityResponse");
+    var de_Credentials = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_AKI] != null) {
+        contents[_AKI] = (0, import_smithy_client4.expectString)(output[_AKI]);
+      }
+      if (output[_SAK] != null) {
+        contents[_SAK] = (0, import_smithy_client4.expectString)(output[_SAK]);
+      }
+      if (output[_STe] != null) {
+        contents[_STe] = (0, import_smithy_client4.expectString)(output[_STe]);
+      }
+      if (output[_E] != null) {
+        contents[_E] = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseRfc3339DateTimeWithOffset)(output[_E]));
+      }
+      return contents;
+    }, "de_Credentials");
+    var de_DecodeAuthorizationMessageResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_DM] != null) {
+        contents[_DM] = (0, import_smithy_client4.expectString)(output[_DM]);
+      }
+      return contents;
+    }, "de_DecodeAuthorizationMessageResponse");
+    var de_ExpiredTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_ExpiredTokenException");
+    var de_FederatedUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_FUI] != null) {
+        contents[_FUI] = (0, import_smithy_client4.expectString)(output[_FUI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_FederatedUser");
+    var de_GetAccessKeyInfoResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      return contents;
+    }, "de_GetAccessKeyInfoResponse");
+    var de_GetCallerIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_UI] != null) {
+        contents[_UI] = (0, import_smithy_client4.expectString)(output[_UI]);
+      }
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_GetCallerIdentityResponse");
+    var de_GetFederationTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_FU] != null) {
+        contents[_FU] = de_FederatedUser(output[_FU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      return contents;
+    }, "de_GetFederationTokenResponse");
+    var de_GetSessionTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      return contents;
+    }, "de_GetSessionTokenResponse");
+    var de_IDPCommunicationErrorException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPCommunicationErrorException");
+    var de_IDPRejectedClaimException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPRejectedClaimException");
+    var de_InvalidAuthorizationMessageException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidAuthorizationMessageException");
+    var de_InvalidIdentityTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidIdentityTokenException");
+    var de_MalformedPolicyDocumentException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_MalformedPolicyDocumentException");
+    var de_PackedPolicyTooLargeException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_PackedPolicyTooLargeException");
+    var de_RegionDisabledException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_RegionDisabledException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(STSServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    var SHARED_HEADERS = {
+      "content-type": "application/x-www-form-urlencoded"
+    };
+    var _ = "2011-06-15";
+    var _A = "Action";
+    var _AKI = "AccessKeyId";
+    var _AR = "AssumeRole";
+    var _ARI = "AssumedRoleId";
+    var _ARU = "AssumedRoleUser";
+    var _ARWSAML = "AssumeRoleWithSAML";
+    var _ARWWI = "AssumeRoleWithWebIdentity";
+    var _Ac = "Account";
+    var _Ar = "Arn";
+    var _Au = "Audience";
+    var _C = "Credentials";
+    var _CA = "ContextAssertion";
+    var _DAM = "DecodeAuthorizationMessage";
+    var _DM = "DecodedMessage";
+    var _DS = "DurationSeconds";
+    var _E = "Expiration";
+    var _EI = "ExternalId";
+    var _EM = "EncodedMessage";
+    var _FU = "FederatedUser";
+    var _FUI = "FederatedUserId";
+    var _GAKI = "GetAccessKeyInfo";
+    var _GCI = "GetCallerIdentity";
+    var _GFT = "GetFederationToken";
+    var _GST = "GetSessionToken";
+    var _I = "Issuer";
+    var _K = "Key";
+    var _N = "Name";
+    var _NQ = "NameQualifier";
+    var _P = "Policy";
+    var _PA = "PolicyArns";
+    var _PAr = "PrincipalArn";
+    var _PAro = "ProviderArn";
+    var _PC = "ProvidedContexts";
+    var _PI = "ProviderId";
+    var _PPS = "PackedPolicySize";
+    var _Pr = "Provider";
+    var _RA = "RoleArn";
+    var _RSN = "RoleSessionName";
+    var _S = "Subject";
+    var _SAK = "SecretAccessKey";
+    var _SAMLA = "SAMLAssertion";
+    var _SFWIT = "SubjectFromWebIdentityToken";
+    var _SI = "SourceIdentity";
+    var _SN = "SerialNumber";
+    var _ST = "SubjectType";
+    var _STe = "SessionToken";
+    var _T = "Tags";
+    var _TC = "TokenCode";
+    var _TTK = "TransitiveTagKeys";
+    var _UI = "UserId";
+    var _V = "Version";
+    var _Va = "Value";
+    var _WIT = "WebIdentityToken";
+    var _a7 = "arn";
+    var _m = "message";
+    var buildFormUrlencodedString = /* @__PURE__ */ __name2((formEntries) => Object.entries(formEntries).map(([key, value]) => (0, import_smithy_client4.extendedEncodeURIComponent)(key) + "=" + (0, import_smithy_client4.extendedEncodeURIComponent)(value)).join("&"), "buildFormUrlencodedString");
+    var loadQueryErrorCode = /* @__PURE__ */ __name2((output, data) => {
+      var _a22;
+      if (((_a22 = data.Error) == null ? void 0 : _a22.Code) !== void 0) {
+        return data.Error.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    }, "loadQueryErrorCode");
+    var _AssumeRoleCommand = class _AssumeRoleCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRole", {}).n("STSClient", "AssumeRoleCommand").f(void 0, AssumeRoleResponseFilterSensitiveLog).ser(se_AssumeRoleCommand).de(de_AssumeRoleCommand).build() {
+    };
+    __name2(_AssumeRoleCommand, "AssumeRoleCommand");
+    var AssumeRoleCommand = _AssumeRoleCommand;
+    var import_EndpointParameters2 = require_EndpointParameters();
+    var _AssumeRoleWithSAMLCommand = class _AssumeRoleWithSAMLCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters2.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithSAML", {}).n("STSClient", "AssumeRoleWithSAMLCommand").f(AssumeRoleWithSAMLRequestFilterSensitiveLog, AssumeRoleWithSAMLResponseFilterSensitiveLog).ser(se_AssumeRoleWithSAMLCommand).de(de_AssumeRoleWithSAMLCommand).build() {
+    };
+    __name2(_AssumeRoleWithSAMLCommand, "AssumeRoleWithSAMLCommand");
+    var AssumeRoleWithSAMLCommand = _AssumeRoleWithSAMLCommand;
+    var import_EndpointParameters3 = require_EndpointParameters();
+    var _AssumeRoleWithWebIdentityCommand = class _AssumeRoleWithWebIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters3.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithWebIdentity", {}).n("STSClient", "AssumeRoleWithWebIdentityCommand").f(AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog).ser(se_AssumeRoleWithWebIdentityCommand).de(de_AssumeRoleWithWebIdentityCommand).build() {
+    };
+    __name2(_AssumeRoleWithWebIdentityCommand, "AssumeRoleWithWebIdentityCommand");
+    var AssumeRoleWithWebIdentityCommand = _AssumeRoleWithWebIdentityCommand;
+    var import_EndpointParameters4 = require_EndpointParameters();
+    var _DecodeAuthorizationMessageCommand = class _DecodeAuthorizationMessageCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters4.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "DecodeAuthorizationMessage", {}).n("STSClient", "DecodeAuthorizationMessageCommand").f(void 0, void 0).ser(se_DecodeAuthorizationMessageCommand).de(de_DecodeAuthorizationMessageCommand).build() {
+    };
+    __name2(_DecodeAuthorizationMessageCommand, "DecodeAuthorizationMessageCommand");
+    var DecodeAuthorizationMessageCommand = _DecodeAuthorizationMessageCommand;
+    var import_EndpointParameters5 = require_EndpointParameters();
+    var _GetAccessKeyInfoCommand = class _GetAccessKeyInfoCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters5.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetAccessKeyInfo", {}).n("STSClient", "GetAccessKeyInfoCommand").f(void 0, void 0).ser(se_GetAccessKeyInfoCommand).de(de_GetAccessKeyInfoCommand).build() {
+    };
+    __name2(_GetAccessKeyInfoCommand, "GetAccessKeyInfoCommand");
+    var GetAccessKeyInfoCommand = _GetAccessKeyInfoCommand;
+    var import_EndpointParameters6 = require_EndpointParameters();
+    var _GetCallerIdentityCommand = class _GetCallerIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters6.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetCallerIdentity", {}).n("STSClient", "GetCallerIdentityCommand").f(void 0, void 0).ser(se_GetCallerIdentityCommand).de(de_GetCallerIdentityCommand).build() {
+    };
+    __name2(_GetCallerIdentityCommand, "GetCallerIdentityCommand");
+    var GetCallerIdentityCommand = _GetCallerIdentityCommand;
+    var import_EndpointParameters7 = require_EndpointParameters();
+    var _GetFederationTokenCommand = class _GetFederationTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters7.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetFederationToken", {}).n("STSClient", "GetFederationTokenCommand").f(void 0, GetFederationTokenResponseFilterSensitiveLog).ser(se_GetFederationTokenCommand).de(de_GetFederationTokenCommand).build() {
+    };
+    __name2(_GetFederationTokenCommand, "GetFederationTokenCommand");
+    var GetFederationTokenCommand = _GetFederationTokenCommand;
+    var import_EndpointParameters8 = require_EndpointParameters();
+    var _GetSessionTokenCommand = class _GetSessionTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters8.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetSessionToken", {}).n("STSClient", "GetSessionTokenCommand").f(void 0, GetSessionTokenResponseFilterSensitiveLog).ser(se_GetSessionTokenCommand).de(de_GetSessionTokenCommand).build() {
+    };
+    __name2(_GetSessionTokenCommand, "GetSessionTokenCommand");
+    var GetSessionTokenCommand = _GetSessionTokenCommand;
+    var import_STSClient = require_STSClient();
+    var commands = {
+      AssumeRoleCommand,
+      AssumeRoleWithSAMLCommand,
+      AssumeRoleWithWebIdentityCommand,
+      DecodeAuthorizationMessageCommand,
+      GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand,
+      GetFederationTokenCommand,
+      GetSessionTokenCommand
+    };
+    var _STS = class _STS extends import_STSClient.STSClient {
+    };
+    __name2(_STS, "STS");
+    var STS = _STS;
+    (0, import_smithy_client4.createAggregatedClient)(commands, STS);
+    var import_EndpointParameters9 = require_EndpointParameters();
+    var ASSUME_ROLE_DEFAULT_REGION = "us-east-1";
+    var getAccountIdFromAssumedRoleUser = /* @__PURE__ */ __name2((assumedRoleUser) => {
+      if (typeof (assumedRoleUser == null ? void 0 : assumedRoleUser.Arn) === "string") {
+        const arnComponents = assumedRoleUser.Arn.split(":");
+        if (arnComponents.length > 4 && arnComponents[4] !== "") {
+          return arnComponents[4];
+        }
+      }
+      return void 0;
+    }, "getAccountIdFromAssumedRoleUser");
+    var resolveRegion = /* @__PURE__ */ __name2(async (_region, _parentRegion, credentialProviderLogger) => {
+      var _a22;
+      const region = typeof _region === "function" ? await _region() : _region;
+      const parentRegion = typeof _parentRegion === "function" ? await _parentRegion() : _parentRegion;
+      (_a22 = credentialProviderLogger == null ? void 0 : credentialProviderLogger.debug) == null ? void 0 : _a22.call(
+        credentialProviderLogger,
+        "@aws-sdk/client-sts::resolveRegion",
+        "accepting first of:",
+        `${region} (provider)`,
+        `${parentRegion} (parent client)`,
+        `${ASSUME_ROLE_DEFAULT_REGION} (STS default)`
+      );
+      return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION;
+    }, "resolveRegion");
+    var getDefaultRoleAssumer = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      let closureSourceCreds;
+      return async (sourceCreds, params) => {
+        var _a22, _b, _c;
+        closureSourceCreds = sourceCreds;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            // A hack to make sts client uses the credential in current closure.
+            credentialDefaultProvider: () => async () => closureSourceCreds,
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      return async (params) => {
+        var _a22, _b, _c;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleWithWebIdentityCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumerWithWebIdentity");
+    var isH2 = /* @__PURE__ */ __name2((requestHandler) => {
+      var _a22;
+      return ((_a22 = requestHandler == null ? void 0 : requestHandler.metadata) == null ? void 0 : _a22.handlerProtocol) === "h2";
+    }, "isH2");
+    var import_STSClient2 = require_STSClient();
+    var getCustomizableStsClientCtor = /* @__PURE__ */ __name2((baseCtor, customizations) => {
+      var _a22;
+      if (!customizations)
+        return baseCtor;
+      else
+        return _a22 = class extends baseCtor {
+          constructor(config) {
+            super(config);
+            for (const customization of customizations) {
+              this.middlewareStack.use(customization);
+            }
+          }
+        }, __name2(_a22, "CustomizableSTSClient"), _a22;
+    }, "getCustomizableStsClientCtor");
+    var getDefaultRoleAssumer2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumer(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumerWithWebIdentity(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumerWithWebIdentity");
+    var decorateDefaultCredentialProvider = /* @__PURE__ */ __name2((provider) => (input) => provider({
+      roleAssumer: getDefaultRoleAssumer2(input),
+      roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity2(input),
+      ...input
+    }), "decorateDefaultCredentialProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js
+var require_dist_cjs49 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromProcess: () => fromProcess
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_child_process3 = require("child_process");
+    var import_util7 = require("util");
+    var getValidatedProcessCredentials = /* @__PURE__ */ __name2((profileName, data, profiles) => {
+      var _a7;
+      if (data.Version !== 1) {
+        throw Error(`Profile ${profileName} credential_process did not return Version 1.`);
+      }
+      if (data.AccessKeyId === void 0 || data.SecretAccessKey === void 0) {
+        throw Error(`Profile ${profileName} credential_process returned invalid credentials.`);
+      }
+      if (data.Expiration) {
+        const currentTime = /* @__PURE__ */ new Date();
+        const expireTime = new Date(data.Expiration);
+        if (expireTime < currentTime) {
+          throw Error(`Profile ${profileName} credential_process returned expired credentials.`);
+        }
+      }
+      let accountId = data.AccountId;
+      if (!accountId && ((_a7 = profiles == null ? void 0 : profiles[profileName]) == null ? void 0 : _a7.aws_account_id)) {
+        accountId = profiles[profileName].aws_account_id;
+      }
+      return {
+        accessKeyId: data.AccessKeyId,
+        secretAccessKey: data.SecretAccessKey,
+        ...data.SessionToken && { sessionToken: data.SessionToken },
+        ...data.Expiration && { expiration: new Date(data.Expiration) },
+        ...data.CredentialScope && { credentialScope: data.CredentialScope },
+        ...accountId && { accountId }
+      };
+    }, "getValidatedProcessCredentials");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, logger) => {
+      const profile = profiles[profileName];
+      if (profiles[profileName]) {
+        const credentialProcess = profile["credential_process"];
+        if (credentialProcess !== void 0) {
+          const execPromise = (0, import_util7.promisify)(import_child_process3.exec);
+          try {
+            const { stdout } = await execPromise(credentialProcess);
+            let data;
+            try {
+              data = JSON.parse(stdout.trim());
+            } catch {
+              throw Error(`Profile ${profileName} credential_process returned invalid JSON.`);
+            }
+            return getValidatedProcessCredentials(profileName, data, profiles);
+          } catch (error) {
+            throw new import_property_provider2.CredentialsProviderError(error.message, { logger });
+          }
+        } else {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} did not contain credential_process.`, { logger });
+        }
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} could not be found in shared credentials file.`, {
+          logger
+        });
+      }
+    }, "resolveProcessCredentials");
+    var fromProcess = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-process - fromProcess");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProcessCredentials((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init.logger);
+    }, "fromProcess");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js
+var require_fromWebToken = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    });
+    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
+      if (mod && mod.__esModule) return mod;
+      var result = {};
+      if (mod != null) {
+        for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k);
+      }
+      __setModuleDefault2(result, mod);
+      return result;
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromWebToken = void 0;
+    var fromWebToken2 = (init) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromWebToken");
+      const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds } = init;
+      let { roleAssumerWithWebIdentity } = init;
+      if (!roleAssumerWithWebIdentity) {
+        const { getDefaultRoleAssumerWithWebIdentity } = await Promise.resolve().then(() => __importStar2(require_dist_cjs48()));
+        roleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity({
+          ...init.clientConfig,
+          credentialProviderLogger: init.logger,
+          parentClientConfig: init.parentClientConfig
+        }, init.clientPlugins);
+      }
+      return roleAssumerWithWebIdentity({
+        RoleArn: roleArn,
+        RoleSessionName: roleSessionName ?? `aws-sdk-js-session-${Date.now()}`,
+        WebIdentityToken: webIdentityToken,
+        ProviderId: providerId,
+        PolicyArns: policyArns,
+        Policy: policy,
+        DurationSeconds: durationSeconds
+      });
+    };
+    exports2.fromWebToken = fromWebToken2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js
+var require_fromTokenFile = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromTokenFile = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var fs_1 = require("fs");
+    var fromWebToken_1 = require_fromWebToken();
+    var ENV_TOKEN_FILE = "AWS_WEB_IDENTITY_TOKEN_FILE";
+    var ENV_ROLE_ARN = "AWS_ROLE_ARN";
+    var ENV_ROLE_SESSION_NAME = "AWS_ROLE_SESSION_NAME";
+    var fromTokenFile2 = (init = {}) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromTokenFile");
+      const webIdentityTokenFile = init?.webIdentityTokenFile ?? process.env[ENV_TOKEN_FILE];
+      const roleArn = init?.roleArn ?? process.env[ENV_ROLE_ARN];
+      const roleSessionName = init?.roleSessionName ?? process.env[ENV_ROLE_SESSION_NAME];
+      if (!webIdentityTokenFile || !roleArn) {
+        throw new property_provider_1.CredentialsProviderError("Web identity configuration not specified", {
+          logger: init.logger
+        });
+      }
+      return (0, fromWebToken_1.fromWebToken)({
+        ...init,
+        webIdentityToken: (0, fs_1.readFileSync)(webIdentityTokenFile, { encoding: "ascii" }),
+        roleArn,
+        roleSessionName
+      })();
+    };
+    exports2.fromTokenFile = fromTokenFile2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js
+var require_dist_cjs50 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromTokenFile(), module2.exports);
+    __reExport2(src_exports, require_fromWebToken(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js
+var require_dist_cjs51 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromIni: () => fromIni
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var resolveCredentialSource = /* @__PURE__ */ __name2((credentialSource, profileName, logger) => {
+      const sourceProvidersMap = {
+        EcsContainer: async (options) => {
+          const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+          const { fromContainerMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer");
+          return (0, import_property_provider2.chain)(fromHttp(options ?? {}), fromContainerMetadata(options));
+        },
+        Ec2InstanceMetadata: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata");
+          const { fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          return fromInstanceMetadata(options);
+        },
+        Environment: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Environment");
+          const { fromEnv } = await Promise.resolve().then(() => __toESM2(require_dist_cjs36()));
+          return fromEnv(options);
+        }
+      };
+      if (credentialSource in sourceProvidersMap) {
+        return sourceProvidersMap[credentialSource];
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Unsupported credential source in profile ${profileName}. Got ${credentialSource}, expected EcsContainer or Ec2InstanceMetadata or Environment.`,
+          { logger }
+        );
+      }
+    }, "resolveCredentialSource");
+    var isAssumeRoleProfile = /* @__PURE__ */ __name2((arg, { profile = "default", logger } = {}) => {
+      return Boolean(arg) && typeof arg === "object" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 && ["undefined", "string"].indexOf(typeof arg.external_id) > -1 && ["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 && (isAssumeRoleWithSourceProfile(arg, { profile, logger }) || isCredentialSourceProfile(arg, { profile, logger }));
+    }, "isAssumeRoleProfile");
+    var isAssumeRoleWithSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withSourceProfile = typeof arg.source_profile === "string" && typeof arg.credential_source === "undefined";
+      if (withSourceProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isAssumeRoleWithSourceProfile source_profile=${arg.source_profile}`);
+      }
+      return withSourceProfile;
+    }, "isAssumeRoleWithSourceProfile");
+    var isCredentialSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withProviderProfile = typeof arg.credential_source === "string" && typeof arg.source_profile === "undefined";
+      if (withProviderProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isCredentialSourceProfile credential_source=${arg.credential_source}`);
+      }
+      return withProviderProfile;
+    }, "isCredentialSourceProfile");
+    var resolveAssumeRoleCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      var _a7, _b;
+      (_a7 = options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)");
+      const data = profiles[profileName];
+      if (!options.roleAssumer) {
+        const { getDefaultRoleAssumer } = await Promise.resolve().then(() => __toESM2(require_dist_cjs48()));
+        options.roleAssumer = getDefaultRoleAssumer(
+          {
+            ...options.clientConfig,
+            credentialProviderLogger: options.logger,
+            parentClientConfig: options == null ? void 0 : options.parentClientConfig
+          },
+          options.clientPlugins
+        );
+      }
+      const { source_profile } = data;
+      if (source_profile && source_profile in visitedProfiles) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Detected a cycle attempting to resolve credentials for profile ${(0, import_shared_ini_file_loader.getProfileName)(options)}. Profiles visited: ` + Object.keys(visitedProfiles).join(", "),
+          { logger: options.logger }
+        );
+      }
+      (_b = options.logger) == null ? void 0 : _b.debug(
+        `@aws-sdk/credential-provider-ini - finding credential resolver using ${source_profile ? `source_profile=[${source_profile}]` : `profile=[${profileName}]`}`
+      );
+      const sourceCredsProvider = source_profile ? resolveProfileData(
+        source_profile,
+        {
+          ...profiles,
+          [source_profile]: {
+            ...profiles[source_profile],
+            // This assigns the role_arn of the "root" profile
+            // to the credential_source profile so this recursive call knows
+            // what role to assume.
+            role_arn: data.role_arn ?? profiles[source_profile].role_arn
+          }
+        },
+        options,
+        {
+          ...visitedProfiles,
+          [source_profile]: true
+        }
+      ) : (await resolveCredentialSource(data.credential_source, profileName, options.logger)(options))();
+      const params = {
+        RoleArn: data.role_arn,
+        RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`,
+        ExternalId: data.external_id,
+        DurationSeconds: parseInt(data.duration_seconds || "3600", 10)
+      };
+      const { mfa_serial } = data;
+      if (mfa_serial) {
+        if (!options.mfaCodeProvider) {
+          throw new import_property_provider2.CredentialsProviderError(
+            `Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`,
+            { logger: options.logger, tryNextLink: false }
+          );
+        }
+        params.SerialNumber = mfa_serial;
+        params.TokenCode = await options.mfaCodeProvider(mfa_serial);
+      }
+      const sourceCreds = await sourceCredsProvider;
+      return options.roleAssumer(sourceCreds, params);
+    }, "resolveAssumeRoleCredentials");
+    var isProcessProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string", "isProcessProfile");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (options, profile) => Promise.resolve().then(() => __toESM2(require_dist_cjs49())).then(
+      ({ fromProcess }) => fromProcess({
+        ...options,
+        profile
+      })()
+    ), "resolveProcessCredentials");
+    var resolveSsoCredentials = /* @__PURE__ */ __name2(async (profile, options = {}) => {
+      const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+      return fromSSO({
+        profile,
+        logger: options.logger
+      })();
+    }, "resolveSsoCredentials");
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var isStaticCredsProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.aws_access_key_id === "string" && typeof arg.aws_secret_access_key === "string" && ["undefined", "string"].indexOf(typeof arg.aws_session_token) > -1 && ["undefined", "string"].indexOf(typeof arg.aws_account_id) > -1, "isStaticCredsProfile");
+    var resolveStaticCredentials = /* @__PURE__ */ __name2((profile, options) => {
+      var _a7;
+      (_a7 = options == null ? void 0 : options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveStaticCredentials");
+      return Promise.resolve({
+        accessKeyId: profile.aws_access_key_id,
+        secretAccessKey: profile.aws_secret_access_key,
+        sessionToken: profile.aws_session_token,
+        ...profile.aws_credential_scope && { credentialScope: profile.aws_credential_scope },
+        ...profile.aws_account_id && { accountId: profile.aws_account_id }
+      });
+    }, "resolveStaticCredentials");
+    var isWebIdentityProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1, "isWebIdentityProfile");
+    var resolveWebIdentityCredentials = /* @__PURE__ */ __name2(async (profile, options) => Promise.resolve().then(() => __toESM2(require_dist_cjs50())).then(
+      ({ fromTokenFile: fromTokenFile2 }) => fromTokenFile2({
+        webIdentityTokenFile: profile.web_identity_token_file,
+        roleArn: profile.role_arn,
+        roleSessionName: profile.role_session_name,
+        roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,
+        logger: options.logger,
+        parentClientConfig: options.parentClientConfig
+      })()
+    ), "resolveWebIdentityCredentials");
+    var resolveProfileData = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      const data = profiles[profileName];
+      if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {
+        return resolveAssumeRoleCredentials(profileName, profiles, options, visitedProfiles);
+      }
+      if (isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isWebIdentityProfile(data)) {
+        return resolveWebIdentityCredentials(data, options);
+      }
+      if (isProcessProfile(data)) {
+        return resolveProcessCredentials(options, profileName);
+      }
+      if (isSsoProfile(data)) {
+        return await resolveSsoCredentials(profileName, options);
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`,
+        { logger: options.logger }
+      );
+    }, "resolveProfileData");
+    var fromIni = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - fromIni");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProfileData((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init);
+    }, "fromIni");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js
+var require_dist_cjs52 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      credentialsTreatedAsExpired: () => credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh: () => credentialsWillNeedRefresh,
+      defaultProvider: () => defaultProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_credential_provider_env = require_dist_cjs36();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var remoteProvider = /* @__PURE__ */ __name2(async (init) => {
+      var _a7, _b;
+      const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+      if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {
+        (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");
+        const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+        return (0, import_property_provider2.chain)(fromHttp(init), fromContainerMetadata(init));
+      }
+      if (process.env[ENV_IMDS_DISABLED]) {
+        return async () => {
+          throw new import_property_provider2.CredentialsProviderError("EC2 Instance Metadata Service access disabled", { logger: init.logger });
+        };
+      }
+      (_b = init.logger) == null ? void 0 : _b.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata");
+      return fromInstanceMetadata(init);
+    }, "remoteProvider");
+    var multipleCredentialSourceWarningEmitted = false;
+    var defaultProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        async () => {
+          var _a7, _b, _c, _d;
+          const profile = init.profile ?? process.env[import_shared_ini_file_loader.ENV_PROFILE];
+          if (profile) {
+            const envStaticCredentialsAreSet = process.env[import_credential_provider_env.ENV_KEY] && process.env[import_credential_provider_env.ENV_SECRET];
+            if (envStaticCredentialsAreSet) {
+              if (!multipleCredentialSourceWarningEmitted) {
+                const warnFn = ((_a7 = init.logger) == null ? void 0 : _a7.warn) && ((_c = (_b = init.logger) == null ? void 0 : _b.constructor) == null ? void 0 : _c.name) !== "NoOpLogger" ? init.logger.warn : console.warn;
+                warnFn(
+                  `@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:
+    Multiple credential sources detected: 
+    Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.
+    This SDK will proceed with the AWS_PROFILE value.
+    
+    However, a future version may change this behavior to prefer the ENV static credentials.
+    Please ensure that your environment only sets either the AWS_PROFILE or the
+    AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
+`
+                );
+                multipleCredentialSourceWarningEmitted = true;
+              }
+            }
+            throw new import_property_provider2.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.", {
+              logger: init.logger,
+              tryNextLink: true
+            });
+          }
+          (_d = init.logger) == null ? void 0 : _d.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv");
+          return (0, import_credential_provider_env.fromEnv)(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");
+          const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+          if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+            throw new import_property_provider2.CredentialsProviderError(
+              "Skipping SSO provider in default chain (inputs do not include SSO fields).",
+              { logger: init.logger }
+            );
+          }
+          const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+          return fromSSO(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");
+          const { fromIni } = await Promise.resolve().then(() => __toESM2(require_dist_cjs51()));
+          return fromIni(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");
+          const { fromProcess } = await Promise.resolve().then(() => __toESM2(require_dist_cjs49()));
+          return fromProcess(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");
+          const { fromTokenFile: fromTokenFile2 } = await Promise.resolve().then(() => __toESM2(require_dist_cjs50()));
+          return fromTokenFile2(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider");
+          return (await remoteProvider(init))();
+        },
+        async () => {
+          throw new import_property_provider2.CredentialsProviderError("Could not load credentials from any providers", {
+            tryNextLink: false,
+            logger: init.logger
+          });
+        }
+      ),
+      credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh
+    ), "defaultProvider");
+    var credentialsWillNeedRefresh = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0, "credentialsWillNeedRefresh");
+    var credentialsTreatedAsExpired = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5, "credentialsTreatedAsExpired");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js
+var require_ruleset4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var t = "required";
+    var u = "fn";
+    var v = "argv";
+    var w = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = { [t]: false, "type": "String" };
+    var i = { [t]: true, "default": false, "type": "Boolean" };
+    var j = { [w]: "Endpoint" };
+    var k = { [u]: c, [v]: [{ [w]: "UseFIPS" }, true] };
+    var l = { [u]: c, [v]: [{ [w]: "UseDualStack" }, true] };
+    var m = {};
+    var n = { [w]: "Region" };
+    var o = { [u]: "getAttr", [v]: [{ [w]: g }, "supportsFIPS"] };
+    var p = { [u]: c, [v]: [true, { [u]: "getAttr", [v]: [{ [w]: g }, "supportsDualStack"] }] };
+    var q = [k];
+    var r = [l];
+    var s = [n];
+    var _data = { version: "1.0", parameters: { Region: h, UseDualStack: i, UseFIPS: i, Endpoint: h }, rules: [{ conditions: [{ [u]: b, [v]: [j] }], rules: [{ conditions: q, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: r, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: j, properties: m, headers: m }, type: e }], type: f }, { conditions: [{ [u]: b, [v]: s }], rules: [{ conditions: [{ [u]: "aws.partition", [v]: s, assign: g }], rules: [{ conditions: [k, l], rules: [{ conditions: [{ [u]: c, [v]: [a, o] }, p], rules: [{ endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: q, rules: [{ conditions: [{ [u]: c, [v]: [o, a] }], rules: [{ conditions: [{ [u]: "stringEquals", [v]: [n, "us-gov-west-1"] }], endpoint: { url: "https://states.us-gov-west-1.amazonaws.com", properties: m, headers: m }, type: e }, { endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: r, rules: [{ conditions: [p], rules: [{ endpoint: { url: "https://states.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://states.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset4();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider();
+    var endpointResolver_1 = require_endpointResolver4();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2016-11-23",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSFNHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SFN",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js
+var require_runtimeConfig4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared4();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js
+var require_dist_cjs53 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ActivityAlreadyExists: () => ActivityAlreadyExists,
+      ActivityDoesNotExist: () => ActivityDoesNotExist,
+      ActivityFailedEventDetailsFilterSensitiveLog: () => ActivityFailedEventDetailsFilterSensitiveLog,
+      ActivityLimitExceeded: () => ActivityLimitExceeded,
+      ActivityScheduleFailedEventDetailsFilterSensitiveLog: () => ActivityScheduleFailedEventDetailsFilterSensitiveLog,
+      ActivityScheduledEventDetailsFilterSensitiveLog: () => ActivityScheduledEventDetailsFilterSensitiveLog,
+      ActivitySucceededEventDetailsFilterSensitiveLog: () => ActivitySucceededEventDetailsFilterSensitiveLog,
+      ActivityTimedOutEventDetailsFilterSensitiveLog: () => ActivityTimedOutEventDetailsFilterSensitiveLog,
+      ActivityWorkerLimitExceeded: () => ActivityWorkerLimitExceeded,
+      ConflictException: () => ConflictException,
+      CreateActivityCommand: () => CreateActivityCommand,
+      CreateStateMachineAliasCommand: () => CreateStateMachineAliasCommand,
+      CreateStateMachineAliasInputFilterSensitiveLog: () => CreateStateMachineAliasInputFilterSensitiveLog,
+      CreateStateMachineCommand: () => CreateStateMachineCommand,
+      CreateStateMachineInputFilterSensitiveLog: () => CreateStateMachineInputFilterSensitiveLog,
+      DeleteActivityCommand: () => DeleteActivityCommand,
+      DeleteStateMachineAliasCommand: () => DeleteStateMachineAliasCommand,
+      DeleteStateMachineCommand: () => DeleteStateMachineCommand,
+      DeleteStateMachineVersionCommand: () => DeleteStateMachineVersionCommand,
+      DescribeActivityCommand: () => DescribeActivityCommand,
+      DescribeExecutionCommand: () => DescribeExecutionCommand,
+      DescribeExecutionOutputFilterSensitiveLog: () => DescribeExecutionOutputFilterSensitiveLog,
+      DescribeMapRunCommand: () => DescribeMapRunCommand,
+      DescribeStateMachineAliasCommand: () => DescribeStateMachineAliasCommand,
+      DescribeStateMachineAliasOutputFilterSensitiveLog: () => DescribeStateMachineAliasOutputFilterSensitiveLog,
+      DescribeStateMachineCommand: () => DescribeStateMachineCommand,
+      DescribeStateMachineForExecutionCommand: () => DescribeStateMachineForExecutionCommand,
+      DescribeStateMachineForExecutionOutputFilterSensitiveLog: () => DescribeStateMachineForExecutionOutputFilterSensitiveLog,
+      DescribeStateMachineOutputFilterSensitiveLog: () => DescribeStateMachineOutputFilterSensitiveLog,
+      EncryptionType: () => EncryptionType,
+      ExecutionAbortedEventDetailsFilterSensitiveLog: () => ExecutionAbortedEventDetailsFilterSensitiveLog,
+      ExecutionAlreadyExists: () => ExecutionAlreadyExists,
+      ExecutionDoesNotExist: () => ExecutionDoesNotExist,
+      ExecutionFailedEventDetailsFilterSensitiveLog: () => ExecutionFailedEventDetailsFilterSensitiveLog,
+      ExecutionLimitExceeded: () => ExecutionLimitExceeded,
+      ExecutionNotRedrivable: () => ExecutionNotRedrivable,
+      ExecutionRedriveFilter: () => ExecutionRedriveFilter,
+      ExecutionRedriveStatus: () => ExecutionRedriveStatus,
+      ExecutionStartedEventDetailsFilterSensitiveLog: () => ExecutionStartedEventDetailsFilterSensitiveLog,
+      ExecutionStatus: () => ExecutionStatus,
+      ExecutionSucceededEventDetailsFilterSensitiveLog: () => ExecutionSucceededEventDetailsFilterSensitiveLog,
+      ExecutionTimedOutEventDetailsFilterSensitiveLog: () => ExecutionTimedOutEventDetailsFilterSensitiveLog,
+      GetActivityTaskCommand: () => GetActivityTaskCommand,
+      GetActivityTaskOutputFilterSensitiveLog: () => GetActivityTaskOutputFilterSensitiveLog,
+      GetExecutionHistoryCommand: () => GetExecutionHistoryCommand,
+      GetExecutionHistoryOutputFilterSensitiveLog: () => GetExecutionHistoryOutputFilterSensitiveLog,
+      HistoryEventFilterSensitiveLog: () => HistoryEventFilterSensitiveLog,
+      HistoryEventType: () => HistoryEventType,
+      IncludedData: () => IncludedData,
+      InspectionDataFilterSensitiveLog: () => InspectionDataFilterSensitiveLog,
+      InspectionLevel: () => InspectionLevel,
+      InvalidArn: () => InvalidArn,
+      InvalidDefinition: () => InvalidDefinition,
+      InvalidEncryptionConfiguration: () => InvalidEncryptionConfiguration,
+      InvalidExecutionInput: () => InvalidExecutionInput,
+      InvalidLoggingConfiguration: () => InvalidLoggingConfiguration,
+      InvalidName: () => InvalidName,
+      InvalidOutput: () => InvalidOutput,
+      InvalidToken: () => InvalidToken,
+      InvalidTracingConfiguration: () => InvalidTracingConfiguration,
+      KmsAccessDeniedException: () => KmsAccessDeniedException,
+      KmsInvalidStateException: () => KmsInvalidStateException,
+      KmsKeyState: () => KmsKeyState,
+      KmsThrottlingException: () => KmsThrottlingException,
+      LambdaFunctionFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduledEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduledEventDetailsFilterSensitiveLog,
+      LambdaFunctionStartFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionStartFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionSucceededEventDetailsFilterSensitiveLog: () => LambdaFunctionSucceededEventDetailsFilterSensitiveLog,
+      LambdaFunctionTimedOutEventDetailsFilterSensitiveLog: () => LambdaFunctionTimedOutEventDetailsFilterSensitiveLog,
+      ListActivitiesCommand: () => ListActivitiesCommand,
+      ListExecutionsCommand: () => ListExecutionsCommand,
+      ListMapRunsCommand: () => ListMapRunsCommand,
+      ListStateMachineAliasesCommand: () => ListStateMachineAliasesCommand,
+      ListStateMachineVersionsCommand: () => ListStateMachineVersionsCommand,
+      ListStateMachinesCommand: () => ListStateMachinesCommand,
+      ListTagsForResourceCommand: () => ListTagsForResourceCommand,
+      LogLevel: () => LogLevel,
+      MapRunFailedEventDetailsFilterSensitiveLog: () => MapRunFailedEventDetailsFilterSensitiveLog,
+      MapRunStatus: () => MapRunStatus,
+      MissingRequiredParameter: () => MissingRequiredParameter,
+      PublishStateMachineVersionCommand: () => PublishStateMachineVersionCommand,
+      PublishStateMachineVersionInputFilterSensitiveLog: () => PublishStateMachineVersionInputFilterSensitiveLog,
+      RedriveExecutionCommand: () => RedriveExecutionCommand,
+      ResourceNotFound: () => ResourceNotFound,
+      SFN: () => SFN2,
+      SFNClient: () => SFNClient,
+      SFNServiceException: () => SFNServiceException,
+      SendTaskFailureCommand: () => SendTaskFailureCommand,
+      SendTaskFailureInputFilterSensitiveLog: () => SendTaskFailureInputFilterSensitiveLog,
+      SendTaskHeartbeatCommand: () => SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand: () => SendTaskSuccessCommand,
+      SendTaskSuccessInputFilterSensitiveLog: () => SendTaskSuccessInputFilterSensitiveLog,
+      ServiceQuotaExceededException: () => ServiceQuotaExceededException,
+      StartExecutionCommand: () => StartExecutionCommand,
+      StartExecutionInputFilterSensitiveLog: () => StartExecutionInputFilterSensitiveLog,
+      StartSyncExecutionCommand: () => StartSyncExecutionCommand,
+      StartSyncExecutionInputFilterSensitiveLog: () => StartSyncExecutionInputFilterSensitiveLog,
+      StartSyncExecutionOutputFilterSensitiveLog: () => StartSyncExecutionOutputFilterSensitiveLog,
+      StateEnteredEventDetailsFilterSensitiveLog: () => StateEnteredEventDetailsFilterSensitiveLog,
+      StateExitedEventDetailsFilterSensitiveLog: () => StateExitedEventDetailsFilterSensitiveLog,
+      StateMachineAlreadyExists: () => StateMachineAlreadyExists,
+      StateMachineDeleting: () => StateMachineDeleting,
+      StateMachineDoesNotExist: () => StateMachineDoesNotExist,
+      StateMachineLimitExceeded: () => StateMachineLimitExceeded,
+      StateMachineStatus: () => StateMachineStatus,
+      StateMachineType: () => StateMachineType,
+      StateMachineTypeNotSupported: () => StateMachineTypeNotSupported,
+      StopExecutionCommand: () => StopExecutionCommand,
+      StopExecutionInputFilterSensitiveLog: () => StopExecutionInputFilterSensitiveLog,
+      SyncExecutionStatus: () => SyncExecutionStatus,
+      TagResourceCommand: () => TagResourceCommand,
+      TaskDoesNotExist: () => TaskDoesNotExist,
+      TaskFailedEventDetailsFilterSensitiveLog: () => TaskFailedEventDetailsFilterSensitiveLog,
+      TaskScheduledEventDetailsFilterSensitiveLog: () => TaskScheduledEventDetailsFilterSensitiveLog,
+      TaskStartFailedEventDetailsFilterSensitiveLog: () => TaskStartFailedEventDetailsFilterSensitiveLog,
+      TaskSubmitFailedEventDetailsFilterSensitiveLog: () => TaskSubmitFailedEventDetailsFilterSensitiveLog,
+      TaskSubmittedEventDetailsFilterSensitiveLog: () => TaskSubmittedEventDetailsFilterSensitiveLog,
+      TaskSucceededEventDetailsFilterSensitiveLog: () => TaskSucceededEventDetailsFilterSensitiveLog,
+      TaskTimedOut: () => TaskTimedOut,
+      TaskTimedOutEventDetailsFilterSensitiveLog: () => TaskTimedOutEventDetailsFilterSensitiveLog,
+      TestExecutionStatus: () => TestExecutionStatus,
+      TestStateCommand: () => TestStateCommand,
+      TestStateInputFilterSensitiveLog: () => TestStateInputFilterSensitiveLog,
+      TestStateOutputFilterSensitiveLog: () => TestStateOutputFilterSensitiveLog,
+      TooManyTags: () => TooManyTags,
+      UntagResourceCommand: () => UntagResourceCommand,
+      UpdateMapRunCommand: () => UpdateMapRunCommand,
+      UpdateStateMachineAliasCommand: () => UpdateStateMachineAliasCommand,
+      UpdateStateMachineAliasInputFilterSensitiveLog: () => UpdateStateMachineAliasInputFilterSensitiveLog,
+      UpdateStateMachineCommand: () => UpdateStateMachineCommand,
+      UpdateStateMachineInputFilterSensitiveLog: () => UpdateStateMachineInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionCommand: () => ValidateStateMachineDefinitionCommand,
+      ValidateStateMachineDefinitionInputFilterSensitiveLog: () => ValidateStateMachineDefinitionInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionResultCode: () => ValidateStateMachineDefinitionResultCode,
+      ValidateStateMachineDefinitionSeverity: () => ValidateStateMachineDefinitionSeverity,
+      ValidationException: () => ValidationException,
+      ValidationExceptionReason: () => ValidationExceptionReason,
+      __Client: () => import_smithy_client4.Client,
+      paginateGetExecutionHistory: () => paginateGetExecutionHistory,
+      paginateListActivities: () => paginateListActivities,
+      paginateListExecutions: () => paginateListExecutions,
+      paginateListMapRuns: () => paginateListMapRuns,
+      paginateListStateMachines: () => paginateListStateMachines
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "states"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig4();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SFNClient = class _SFNClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSFNHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SFNClient, "SFNClient");
+    var SFNClient = _SFNClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var _SFNServiceException = class _SFNServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SFNServiceException2.prototype);
+      }
+    };
+    __name2(_SFNServiceException, "SFNServiceException");
+    var SFNServiceException = _SFNServiceException;
+    var _ActivityAlreadyExists = class _ActivityAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ActivityAlreadyExists, "ActivityAlreadyExists");
+    var ActivityAlreadyExists = _ActivityAlreadyExists;
+    var _ActivityDoesNotExist = class _ActivityDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ActivityDoesNotExist, "ActivityDoesNotExist");
+    var ActivityDoesNotExist = _ActivityDoesNotExist;
+    var _ActivityLimitExceeded = class _ActivityLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityLimitExceeded, "ActivityLimitExceeded");
+    var ActivityLimitExceeded = _ActivityLimitExceeded;
+    var _ActivityWorkerLimitExceeded = class _ActivityWorkerLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityWorkerLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityWorkerLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityWorkerLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityWorkerLimitExceeded, "ActivityWorkerLimitExceeded");
+    var ActivityWorkerLimitExceeded = _ActivityWorkerLimitExceeded;
+    var EncryptionType = {
+      AWS_OWNED_KEY: "AWS_OWNED_KEY",
+      CUSTOMER_MANAGED_KMS_KEY: "CUSTOMER_MANAGED_KMS_KEY"
+    };
+    var _InvalidEncryptionConfiguration = class _InvalidEncryptionConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidEncryptionConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidEncryptionConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidEncryptionConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidEncryptionConfiguration, "InvalidEncryptionConfiguration");
+    var InvalidEncryptionConfiguration = _InvalidEncryptionConfiguration;
+    var _InvalidName = class _InvalidName2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidName",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidName";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidName2.prototype);
+      }
+    };
+    __name2(_InvalidName, "InvalidName");
+    var InvalidName = _InvalidName;
+    var _KmsAccessDeniedException = class _KmsAccessDeniedException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsAccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsAccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsAccessDeniedException2.prototype);
+      }
+    };
+    __name2(_KmsAccessDeniedException, "KmsAccessDeniedException");
+    var KmsAccessDeniedException = _KmsAccessDeniedException;
+    var _KmsThrottlingException = class _KmsThrottlingException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsThrottlingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsThrottlingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsThrottlingException2.prototype);
+      }
+    };
+    __name2(_KmsThrottlingException, "KmsThrottlingException");
+    var KmsThrottlingException = _KmsThrottlingException;
+    var _TooManyTags = class _TooManyTags2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyTags",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyTags";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyTags2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_TooManyTags, "TooManyTags");
+    var TooManyTags = _TooManyTags;
+    var _ConflictException = class _ConflictException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ConflictException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ConflictException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ConflictException2.prototype);
+      }
+    };
+    __name2(_ConflictException, "ConflictException");
+    var ConflictException = _ConflictException;
+    var LogLevel = {
+      ALL: "ALL",
+      ERROR: "ERROR",
+      FATAL: "FATAL",
+      OFF: "OFF"
+    };
+    var StateMachineType = {
+      EXPRESS: "EXPRESS",
+      STANDARD: "STANDARD"
+    };
+    var _InvalidArn = class _InvalidArn2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidArn",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidArn";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidArn2.prototype);
+      }
+    };
+    __name2(_InvalidArn, "InvalidArn");
+    var InvalidArn = _InvalidArn;
+    var _InvalidDefinition = class _InvalidDefinition2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidDefinition",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidDefinition";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidDefinition2.prototype);
+      }
+    };
+    __name2(_InvalidDefinition, "InvalidDefinition");
+    var InvalidDefinition = _InvalidDefinition;
+    var _InvalidLoggingConfiguration = class _InvalidLoggingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidLoggingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidLoggingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidLoggingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidLoggingConfiguration, "InvalidLoggingConfiguration");
+    var InvalidLoggingConfiguration = _InvalidLoggingConfiguration;
+    var _InvalidTracingConfiguration = class _InvalidTracingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidTracingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidTracingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidTracingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidTracingConfiguration, "InvalidTracingConfiguration");
+    var InvalidTracingConfiguration = _InvalidTracingConfiguration;
+    var _StateMachineAlreadyExists = class _StateMachineAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineAlreadyExists2.prototype);
+      }
+    };
+    __name2(_StateMachineAlreadyExists, "StateMachineAlreadyExists");
+    var StateMachineAlreadyExists = _StateMachineAlreadyExists;
+    var _StateMachineDeleting = class _StateMachineDeleting2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDeleting",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDeleting";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDeleting2.prototype);
+      }
+    };
+    __name2(_StateMachineDeleting, "StateMachineDeleting");
+    var StateMachineDeleting = _StateMachineDeleting;
+    var _StateMachineLimitExceeded = class _StateMachineLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineLimitExceeded2.prototype);
+      }
+    };
+    __name2(_StateMachineLimitExceeded, "StateMachineLimitExceeded");
+    var StateMachineLimitExceeded = _StateMachineLimitExceeded;
+    var _StateMachineTypeNotSupported = class _StateMachineTypeNotSupported2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineTypeNotSupported",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineTypeNotSupported";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineTypeNotSupported2.prototype);
+      }
+    };
+    __name2(_StateMachineTypeNotSupported, "StateMachineTypeNotSupported");
+    var StateMachineTypeNotSupported = _StateMachineTypeNotSupported;
+    var ValidationExceptionReason = {
+      API_DOES_NOT_SUPPORT_LABELED_ARNS: "API_DOES_NOT_SUPPORT_LABELED_ARNS",
+      CANNOT_UPDATE_COMPLETED_MAP_RUN: "CANNOT_UPDATE_COMPLETED_MAP_RUN",
+      INVALID_ROUTING_CONFIGURATION: "INVALID_ROUTING_CONFIGURATION",
+      MISSING_REQUIRED_PARAMETER: "MISSING_REQUIRED_PARAMETER"
+    };
+    var _ValidationException = class _ValidationException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ValidationException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ValidationException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ValidationException2.prototype);
+        this.reason = opts.reason;
+      }
+    };
+    __name2(_ValidationException, "ValidationException");
+    var ValidationException = _ValidationException;
+    var _ResourceNotFound = class _ResourceNotFound2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFound",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFound";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFound2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_ResourceNotFound, "ResourceNotFound");
+    var ResourceNotFound = _ResourceNotFound;
+    var _ServiceQuotaExceededException = class _ServiceQuotaExceededException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ServiceQuotaExceededException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ServiceQuotaExceededException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ServiceQuotaExceededException2.prototype);
+      }
+    };
+    __name2(_ServiceQuotaExceededException, "ServiceQuotaExceededException");
+    var ServiceQuotaExceededException = _ServiceQuotaExceededException;
+    var IncludedData = {
+      ALL_DATA: "ALL_DATA",
+      METADATA_ONLY: "METADATA_ONLY"
+    };
+    var ExecutionRedriveStatus = {
+      NOT_REDRIVABLE: "NOT_REDRIVABLE",
+      REDRIVABLE: "REDRIVABLE",
+      REDRIVABLE_BY_MAP_RUN: "REDRIVABLE_BY_MAP_RUN"
+    };
+    var ExecutionStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      PENDING_REDRIVE: "PENDING_REDRIVE",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var _ExecutionDoesNotExist = class _ExecutionDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ExecutionDoesNotExist, "ExecutionDoesNotExist");
+    var ExecutionDoesNotExist = _ExecutionDoesNotExist;
+    var KmsKeyState = {
+      CREATING: "CREATING",
+      DISABLED: "DISABLED",
+      PENDING_DELETION: "PENDING_DELETION",
+      PENDING_IMPORT: "PENDING_IMPORT",
+      UNAVAILABLE: "UNAVAILABLE"
+    };
+    var _KmsInvalidStateException = class _KmsInvalidStateException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsInvalidStateException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsInvalidStateException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsInvalidStateException2.prototype);
+        this.kmsKeyState = opts.kmsKeyState;
+      }
+    };
+    __name2(_KmsInvalidStateException, "KmsInvalidStateException");
+    var KmsInvalidStateException = _KmsInvalidStateException;
+    var MapRunStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var StateMachineStatus = {
+      ACTIVE: "ACTIVE",
+      DELETING: "DELETING"
+    };
+    var _StateMachineDoesNotExist = class _StateMachineDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDoesNotExist2.prototype);
+      }
+    };
+    __name2(_StateMachineDoesNotExist, "StateMachineDoesNotExist");
+    var StateMachineDoesNotExist = _StateMachineDoesNotExist;
+    var HistoryEventType = {
+      ActivityFailed: "ActivityFailed",
+      ActivityScheduleFailed: "ActivityScheduleFailed",
+      ActivityScheduled: "ActivityScheduled",
+      ActivityStarted: "ActivityStarted",
+      ActivitySucceeded: "ActivitySucceeded",
+      ActivityTimedOut: "ActivityTimedOut",
+      ChoiceStateEntered: "ChoiceStateEntered",
+      ChoiceStateExited: "ChoiceStateExited",
+      ExecutionAborted: "ExecutionAborted",
+      ExecutionFailed: "ExecutionFailed",
+      ExecutionRedriven: "ExecutionRedriven",
+      ExecutionStarted: "ExecutionStarted",
+      ExecutionSucceeded: "ExecutionSucceeded",
+      ExecutionTimedOut: "ExecutionTimedOut",
+      FailStateEntered: "FailStateEntered",
+      LambdaFunctionFailed: "LambdaFunctionFailed",
+      LambdaFunctionScheduleFailed: "LambdaFunctionScheduleFailed",
+      LambdaFunctionScheduled: "LambdaFunctionScheduled",
+      LambdaFunctionStartFailed: "LambdaFunctionStartFailed",
+      LambdaFunctionStarted: "LambdaFunctionStarted",
+      LambdaFunctionSucceeded: "LambdaFunctionSucceeded",
+      LambdaFunctionTimedOut: "LambdaFunctionTimedOut",
+      MapIterationAborted: "MapIterationAborted",
+      MapIterationFailed: "MapIterationFailed",
+      MapIterationStarted: "MapIterationStarted",
+      MapIterationSucceeded: "MapIterationSucceeded",
+      MapRunAborted: "MapRunAborted",
+      MapRunFailed: "MapRunFailed",
+      MapRunRedriven: "MapRunRedriven",
+      MapRunStarted: "MapRunStarted",
+      MapRunSucceeded: "MapRunSucceeded",
+      MapStateAborted: "MapStateAborted",
+      MapStateEntered: "MapStateEntered",
+      MapStateExited: "MapStateExited",
+      MapStateFailed: "MapStateFailed",
+      MapStateStarted: "MapStateStarted",
+      MapStateSucceeded: "MapStateSucceeded",
+      ParallelStateAborted: "ParallelStateAborted",
+      ParallelStateEntered: "ParallelStateEntered",
+      ParallelStateExited: "ParallelStateExited",
+      ParallelStateFailed: "ParallelStateFailed",
+      ParallelStateStarted: "ParallelStateStarted",
+      ParallelStateSucceeded: "ParallelStateSucceeded",
+      PassStateEntered: "PassStateEntered",
+      PassStateExited: "PassStateExited",
+      SucceedStateEntered: "SucceedStateEntered",
+      SucceedStateExited: "SucceedStateExited",
+      TaskFailed: "TaskFailed",
+      TaskScheduled: "TaskScheduled",
+      TaskStartFailed: "TaskStartFailed",
+      TaskStarted: "TaskStarted",
+      TaskStateAborted: "TaskStateAborted",
+      TaskStateEntered: "TaskStateEntered",
+      TaskStateExited: "TaskStateExited",
+      TaskSubmitFailed: "TaskSubmitFailed",
+      TaskSubmitted: "TaskSubmitted",
+      TaskSucceeded: "TaskSucceeded",
+      TaskTimedOut: "TaskTimedOut",
+      WaitStateAborted: "WaitStateAborted",
+      WaitStateEntered: "WaitStateEntered",
+      WaitStateExited: "WaitStateExited"
+    };
+    var _InvalidToken = class _InvalidToken2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidToken",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidToken";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidToken2.prototype);
+      }
+    };
+    __name2(_InvalidToken, "InvalidToken");
+    var InvalidToken = _InvalidToken;
+    var ExecutionRedriveFilter = {
+      NOT_REDRIVEN: "NOT_REDRIVEN",
+      REDRIVEN: "REDRIVEN"
+    };
+    var _ExecutionLimitExceeded = class _ExecutionLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ExecutionLimitExceeded, "ExecutionLimitExceeded");
+    var ExecutionLimitExceeded = _ExecutionLimitExceeded;
+    var _ExecutionNotRedrivable = class _ExecutionNotRedrivable2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionNotRedrivable",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionNotRedrivable";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionNotRedrivable2.prototype);
+      }
+    };
+    __name2(_ExecutionNotRedrivable, "ExecutionNotRedrivable");
+    var ExecutionNotRedrivable = _ExecutionNotRedrivable;
+    var _TaskDoesNotExist = class _TaskDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskDoesNotExist2.prototype);
+      }
+    };
+    __name2(_TaskDoesNotExist, "TaskDoesNotExist");
+    var TaskDoesNotExist = _TaskDoesNotExist;
+    var _TaskTimedOut = class _TaskTimedOut2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskTimedOut",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskTimedOut";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskTimedOut2.prototype);
+      }
+    };
+    __name2(_TaskTimedOut, "TaskTimedOut");
+    var TaskTimedOut = _TaskTimedOut;
+    var _InvalidOutput = class _InvalidOutput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidOutput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidOutput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidOutput2.prototype);
+      }
+    };
+    __name2(_InvalidOutput, "InvalidOutput");
+    var InvalidOutput = _InvalidOutput;
+    var _ExecutionAlreadyExists = class _ExecutionAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ExecutionAlreadyExists, "ExecutionAlreadyExists");
+    var ExecutionAlreadyExists = _ExecutionAlreadyExists;
+    var _InvalidExecutionInput = class _InvalidExecutionInput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidExecutionInput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidExecutionInput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidExecutionInput2.prototype);
+      }
+    };
+    __name2(_InvalidExecutionInput, "InvalidExecutionInput");
+    var InvalidExecutionInput = _InvalidExecutionInput;
+    var SyncExecutionStatus = {
+      FAILED: "FAILED",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var InspectionLevel = {
+      DEBUG: "DEBUG",
+      INFO: "INFO",
+      TRACE: "TRACE"
+    };
+    var TestExecutionStatus = {
+      CAUGHT_ERROR: "CAUGHT_ERROR",
+      FAILED: "FAILED",
+      RETRIABLE: "RETRIABLE",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var _MissingRequiredParameter = class _MissingRequiredParameter2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MissingRequiredParameter",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MissingRequiredParameter";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MissingRequiredParameter2.prototype);
+      }
+    };
+    __name2(_MissingRequiredParameter, "MissingRequiredParameter");
+    var MissingRequiredParameter = _MissingRequiredParameter;
+    var ValidateStateMachineDefinitionSeverity = {
+      ERROR: "ERROR"
+    };
+    var ValidateStateMachineDefinitionResultCode = {
+      FAIL: "FAIL",
+      OK: "OK"
+    };
+    var ActivityFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityFailedEventDetailsFilterSensitiveLog");
+    var ActivityScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduledEventDetailsFilterSensitiveLog");
+    var ActivityScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduleFailedEventDetailsFilterSensitiveLog");
+    var ActivitySucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivitySucceededEventDetailsFilterSensitiveLog");
+    var ActivityTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityTimedOutEventDetailsFilterSensitiveLog");
+    var CreateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineInputFilterSensitiveLog");
+    var CreateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineAliasInputFilterSensitiveLog");
+    var DescribeExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.redriveStatusReason && { redriveStatusReason: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeExecutionOutputFilterSensitiveLog");
+    var DescribeStateMachineOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineOutputFilterSensitiveLog");
+    var DescribeStateMachineAliasOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineAliasOutputFilterSensitiveLog");
+    var DescribeStateMachineForExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineForExecutionOutputFilterSensitiveLog");
+    var GetActivityTaskOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetActivityTaskOutputFilterSensitiveLog");
+    var ExecutionAbortedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionAbortedEventDetailsFilterSensitiveLog");
+    var ExecutionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionFailedEventDetailsFilterSensitiveLog");
+    var ExecutionStartedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionStartedEventDetailsFilterSensitiveLog");
+    var ExecutionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionSucceededEventDetailsFilterSensitiveLog");
+    var ExecutionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionTimedOutEventDetailsFilterSensitiveLog");
+    var LambdaFunctionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduledEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionStartFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionSucceededEventDetailsFilterSensitiveLog");
+    var LambdaFunctionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionTimedOutEventDetailsFilterSensitiveLog");
+    var MapRunFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "MapRunFailedEventDetailsFilterSensitiveLog");
+    var StateEnteredEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateEnteredEventDetailsFilterSensitiveLog");
+    var StateExitedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateExitedEventDetailsFilterSensitiveLog");
+    var TaskFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskFailedEventDetailsFilterSensitiveLog");
+    var TaskScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.parameters && { parameters: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskScheduledEventDetailsFilterSensitiveLog");
+    var TaskStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskStartFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmitFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmitFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmittedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmittedEventDetailsFilterSensitiveLog");
+    var TaskSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSucceededEventDetailsFilterSensitiveLog");
+    var TaskTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskTimedOutEventDetailsFilterSensitiveLog");
+    var HistoryEventFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.activityFailedEventDetails && {
+        activityFailedEventDetails: ActivityFailedEventDetailsFilterSensitiveLog(obj.activityFailedEventDetails)
+      },
+      ...obj.activityScheduleFailedEventDetails && {
+        activityScheduleFailedEventDetails: ActivityScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.activityScheduleFailedEventDetails
+        )
+      },
+      ...obj.activityScheduledEventDetails && {
+        activityScheduledEventDetails: ActivityScheduledEventDetailsFilterSensitiveLog(obj.activityScheduledEventDetails)
+      },
+      ...obj.activitySucceededEventDetails && {
+        activitySucceededEventDetails: ActivitySucceededEventDetailsFilterSensitiveLog(obj.activitySucceededEventDetails)
+      },
+      ...obj.activityTimedOutEventDetails && {
+        activityTimedOutEventDetails: ActivityTimedOutEventDetailsFilterSensitiveLog(obj.activityTimedOutEventDetails)
+      },
+      ...obj.taskFailedEventDetails && {
+        taskFailedEventDetails: TaskFailedEventDetailsFilterSensitiveLog(obj.taskFailedEventDetails)
+      },
+      ...obj.taskScheduledEventDetails && {
+        taskScheduledEventDetails: TaskScheduledEventDetailsFilterSensitiveLog(obj.taskScheduledEventDetails)
+      },
+      ...obj.taskStartFailedEventDetails && {
+        taskStartFailedEventDetails: TaskStartFailedEventDetailsFilterSensitiveLog(obj.taskStartFailedEventDetails)
+      },
+      ...obj.taskSubmitFailedEventDetails && {
+        taskSubmitFailedEventDetails: TaskSubmitFailedEventDetailsFilterSensitiveLog(obj.taskSubmitFailedEventDetails)
+      },
+      ...obj.taskSubmittedEventDetails && {
+        taskSubmittedEventDetails: TaskSubmittedEventDetailsFilterSensitiveLog(obj.taskSubmittedEventDetails)
+      },
+      ...obj.taskSucceededEventDetails && {
+        taskSucceededEventDetails: TaskSucceededEventDetailsFilterSensitiveLog(obj.taskSucceededEventDetails)
+      },
+      ...obj.taskTimedOutEventDetails && {
+        taskTimedOutEventDetails: TaskTimedOutEventDetailsFilterSensitiveLog(obj.taskTimedOutEventDetails)
+      },
+      ...obj.executionFailedEventDetails && {
+        executionFailedEventDetails: ExecutionFailedEventDetailsFilterSensitiveLog(obj.executionFailedEventDetails)
+      },
+      ...obj.executionStartedEventDetails && {
+        executionStartedEventDetails: ExecutionStartedEventDetailsFilterSensitiveLog(obj.executionStartedEventDetails)
+      },
+      ...obj.executionSucceededEventDetails && {
+        executionSucceededEventDetails: ExecutionSucceededEventDetailsFilterSensitiveLog(
+          obj.executionSucceededEventDetails
+        )
+      },
+      ...obj.executionAbortedEventDetails && {
+        executionAbortedEventDetails: ExecutionAbortedEventDetailsFilterSensitiveLog(obj.executionAbortedEventDetails)
+      },
+      ...obj.executionTimedOutEventDetails && {
+        executionTimedOutEventDetails: ExecutionTimedOutEventDetailsFilterSensitiveLog(obj.executionTimedOutEventDetails)
+      },
+      ...obj.lambdaFunctionFailedEventDetails && {
+        lambdaFunctionFailedEventDetails: LambdaFunctionFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduleFailedEventDetails && {
+        lambdaFunctionScheduleFailedEventDetails: LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduleFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduledEventDetails && {
+        lambdaFunctionScheduledEventDetails: LambdaFunctionScheduledEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduledEventDetails
+        )
+      },
+      ...obj.lambdaFunctionStartFailedEventDetails && {
+        lambdaFunctionStartFailedEventDetails: LambdaFunctionStartFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionStartFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionSucceededEventDetails && {
+        lambdaFunctionSucceededEventDetails: LambdaFunctionSucceededEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionSucceededEventDetails
+        )
+      },
+      ...obj.lambdaFunctionTimedOutEventDetails && {
+        lambdaFunctionTimedOutEventDetails: LambdaFunctionTimedOutEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionTimedOutEventDetails
+        )
+      },
+      ...obj.stateEnteredEventDetails && {
+        stateEnteredEventDetails: StateEnteredEventDetailsFilterSensitiveLog(obj.stateEnteredEventDetails)
+      },
+      ...obj.stateExitedEventDetails && {
+        stateExitedEventDetails: StateExitedEventDetailsFilterSensitiveLog(obj.stateExitedEventDetails)
+      },
+      ...obj.mapRunFailedEventDetails && {
+        mapRunFailedEventDetails: MapRunFailedEventDetailsFilterSensitiveLog(obj.mapRunFailedEventDetails)
+      }
+    }), "HistoryEventFilterSensitiveLog");
+    var GetExecutionHistoryOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.events && { events: obj.events.map((item) => HistoryEventFilterSensitiveLog(item)) }
+    }), "GetExecutionHistoryOutputFilterSensitiveLog");
+    var PublishStateMachineVersionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "PublishStateMachineVersionInputFilterSensitiveLog");
+    var SendTaskFailureInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskFailureInputFilterSensitiveLog");
+    var SendTaskSuccessInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskSuccessInputFilterSensitiveLog");
+    var StartExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionOutputFilterSensitiveLog");
+    var StopExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "StopExecutionInputFilterSensitiveLog");
+    var TestStateInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateInputFilterSensitiveLog");
+    var InspectionDataFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterInputPath && { afterInputPath: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterParameters && { afterParameters: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.result && { result: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultSelector && { afterResultSelector: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultPath && { afterResultPath: import_smithy_client4.SENSITIVE_STRING }
+    }), "InspectionDataFilterSensitiveLog");
+    var TestStateOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.inspectionData && { inspectionData: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateOutputFilterSensitiveLog");
+    var UpdateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineInputFilterSensitiveLog");
+    var UpdateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineAliasInputFilterSensitiveLog");
+    var ValidateStateMachineDefinitionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "ValidateStateMachineDefinitionInputFilterSensitiveLog");
+    var se_CreateActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateActivityCommand");
+    var se_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineCommand");
+    var se_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineAliasCommand");
+    var se_DeleteActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteActivityCommand");
+    var se_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineCommand");
+    var se_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineAliasCommand");
+    var se_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineVersionCommand");
+    var se_DescribeActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeActivityCommand");
+    var se_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeExecutionCommand");
+    var se_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeMapRun");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeMapRunCommand");
+    var se_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineCommand");
+    var se_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineAliasCommand");
+    var se_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineForExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineForExecutionCommand");
+    var se_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetActivityTask");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetActivityTaskCommand");
+    var se_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetExecutionHistory");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetExecutionHistoryCommand");
+    var se_ListActivitiesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListActivities");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListActivitiesCommand");
+    var se_ListExecutionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListExecutions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListExecutionsCommand");
+    var se_ListMapRunsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListMapRuns");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListMapRunsCommand");
+    var se_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineAliases");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineAliasesCommand");
+    var se_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachines");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachinesCommand");
+    var se_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineVersions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineVersionsCommand");
+    var se_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListTagsForResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListTagsForResourceCommand");
+    var se_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("PublishStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_PublishStateMachineVersionCommand");
+    var se_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("RedriveExecution");
+      let body;
+      body = JSON.stringify(se_RedriveExecutionInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_RedriveExecutionCommand");
+    var se_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskFailure");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskFailureCommand");
+    var se_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskHeartbeat");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskHeartbeatCommand");
+    var se_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskSuccess");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskSuccessCommand");
+    var se_StartExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StartExecutionCommand");
+    var se_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartSyncExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_StartSyncExecutionCommand");
+    var se_StopExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StopExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StopExecutionCommand");
+    var se_TagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_TagResourceCommand");
+    var se_TestStateCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TestState");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_TestStateCommand");
+    var se_UntagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UntagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UntagResourceCommand");
+    var se_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateMapRun");
+      let body;
+      body = JSON.stringify(se_UpdateMapRunInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateMapRunCommand");
+    var se_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineCommand");
+    var se_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineAliasCommand");
+    var se_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ValidateStateMachineDefinition");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ValidateStateMachineDefinitionCommand");
+    var de_CreateActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateActivityCommand");
+    var de_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineCommand");
+    var de_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineAliasCommand");
+    var de_DeleteActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteActivityCommand");
+    var de_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineCommand");
+    var de_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineAliasCommand");
+    var de_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineVersionCommand");
+    var de_DescribeActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeActivityCommand");
+    var de_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeExecutionCommand");
+    var de_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeMapRunOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeMapRunCommand");
+    var de_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineCommand");
+    var de_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineAliasCommand");
+    var de_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineForExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineForExecutionCommand");
+    var de_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetActivityTaskCommand");
+    var de_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_GetExecutionHistoryOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetExecutionHistoryCommand");
+    var de_ListActivitiesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListActivitiesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListActivitiesCommand");
+    var de_ListExecutionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListExecutionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListExecutionsCommand");
+    var de_ListMapRunsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListMapRunsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListMapRunsCommand");
+    var de_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineAliasesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineAliasesCommand");
+    var de_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachinesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachinesCommand");
+    var de_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineVersionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineVersionsCommand");
+    var de_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListTagsForResourceCommand");
+    var de_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_PublishStateMachineVersionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_PublishStateMachineVersionCommand");
+    var de_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_RedriveExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_RedriveExecutionCommand");
+    var de_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskFailureCommand");
+    var de_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskHeartbeatCommand");
+    var de_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskSuccessCommand");
+    var de_StartExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartExecutionCommand");
+    var de_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartSyncExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartSyncExecutionCommand");
+    var de_StopExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StopExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StopExecutionCommand");
+    var de_TagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TagResourceCommand");
+    var de_TestStateCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TestStateCommand");
+    var de_UntagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UntagResourceCommand");
+    var de_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateMapRunCommand");
+    var de_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineCommand");
+    var de_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineAliasCommand");
+    var de_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ValidateStateMachineDefinitionCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ActivityAlreadyExists":
+        case "com.amazonaws.sfn#ActivityAlreadyExists":
+          throw await de_ActivityAlreadyExistsRes(parsedOutput, context);
+        case "ActivityLimitExceeded":
+        case "com.amazonaws.sfn#ActivityLimitExceeded":
+          throw await de_ActivityLimitExceededRes(parsedOutput, context);
+        case "InvalidEncryptionConfiguration":
+        case "com.amazonaws.sfn#InvalidEncryptionConfiguration":
+          throw await de_InvalidEncryptionConfigurationRes(parsedOutput, context);
+        case "InvalidName":
+        case "com.amazonaws.sfn#InvalidName":
+          throw await de_InvalidNameRes(parsedOutput, context);
+        case "KmsAccessDeniedException":
+        case "com.amazonaws.sfn#KmsAccessDeniedException":
+          throw await de_KmsAccessDeniedExceptionRes(parsedOutput, context);
+        case "KmsThrottlingException":
+        case "com.amazonaws.sfn#KmsThrottlingException":
+          throw await de_KmsThrottlingExceptionRes(parsedOutput, context);
+        case "TooManyTags":
+        case "com.amazonaws.sfn#TooManyTags":
+          throw await de_TooManyTagsRes(parsedOutput, context);
+        case "ConflictException":
+        case "com.amazonaws.sfn#ConflictException":
+          throw await de_ConflictExceptionRes(parsedOutput, context);
+        case "InvalidArn":
+        case "com.amazonaws.sfn#InvalidArn":
+          throw await de_InvalidArnRes(parsedOutput, context);
+        case "InvalidDefinition":
+        case "com.amazonaws.sfn#InvalidDefinition":
+          throw await de_InvalidDefinitionRes(parsedOutput, context);
+        case "InvalidLoggingConfiguration":
+        case "com.amazonaws.sfn#InvalidLoggingConfiguration":
+          throw await de_InvalidLoggingConfigurationRes(parsedOutput, context);
+        case "InvalidTracingConfiguration":
+        case "com.amazonaws.sfn#InvalidTracingConfiguration":
+          throw await de_InvalidTracingConfigurationRes(parsedOutput, context);
+        case "StateMachineAlreadyExists":
+        case "com.amazonaws.sfn#StateMachineAlreadyExists":
+          throw await de_StateMachineAlreadyExistsRes(parsedOutput, context);
+        case "StateMachineDeleting":
+        case "com.amazonaws.sfn#StateMachineDeleting":
+          throw await de_StateMachineDeletingRes(parsedOutput, context);
+        case "StateMachineLimitExceeded":
+        case "com.amazonaws.sfn#StateMachineLimitExceeded":
+          throw await de_StateMachineLimitExceededRes(parsedOutput, context);
+        case "StateMachineTypeNotSupported":
+        case "com.amazonaws.sfn#StateMachineTypeNotSupported":
+          throw await de_StateMachineTypeNotSupportedRes(parsedOutput, context);
+        case "ValidationException":
+        case "com.amazonaws.sfn#ValidationException":
+          throw await de_ValidationExceptionRes(parsedOutput, context);
+        case "ResourceNotFound":
+        case "com.amazonaws.sfn#ResourceNotFound":
+          throw await de_ResourceNotFoundRes(parsedOutput, context);
+        case "ServiceQuotaExceededException":
+        case "com.amazonaws.sfn#ServiceQuotaExceededException":
+          throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context);
+        case "ActivityDoesNotExist":
+        case "com.amazonaws.sfn#ActivityDoesNotExist":
+          throw await de_ActivityDoesNotExistRes(parsedOutput, context);
+        case "ExecutionDoesNotExist":
+        case "com.amazonaws.sfn#ExecutionDoesNotExist":
+          throw await de_ExecutionDoesNotExistRes(parsedOutput, context);
+        case "KmsInvalidStateException":
+        case "com.amazonaws.sfn#KmsInvalidStateException":
+          throw await de_KmsInvalidStateExceptionRes(parsedOutput, context);
+        case "StateMachineDoesNotExist":
+        case "com.amazonaws.sfn#StateMachineDoesNotExist":
+          throw await de_StateMachineDoesNotExistRes(parsedOutput, context);
+        case "ActivityWorkerLimitExceeded":
+        case "com.amazonaws.sfn#ActivityWorkerLimitExceeded":
+          throw await de_ActivityWorkerLimitExceededRes(parsedOutput, context);
+        case "InvalidToken":
+        case "com.amazonaws.sfn#InvalidToken":
+          throw await de_InvalidTokenRes(parsedOutput, context);
+        case "ExecutionLimitExceeded":
+        case "com.amazonaws.sfn#ExecutionLimitExceeded":
+          throw await de_ExecutionLimitExceededRes(parsedOutput, context);
+        case "ExecutionNotRedrivable":
+        case "com.amazonaws.sfn#ExecutionNotRedrivable":
+          throw await de_ExecutionNotRedrivableRes(parsedOutput, context);
+        case "TaskDoesNotExist":
+        case "com.amazonaws.sfn#TaskDoesNotExist":
+          throw await de_TaskDoesNotExistRes(parsedOutput, context);
+        case "TaskTimedOut":
+        case "com.amazonaws.sfn#TaskTimedOut":
+          throw await de_TaskTimedOutRes(parsedOutput, context);
+        case "InvalidOutput":
+        case "com.amazonaws.sfn#InvalidOutput":
+          throw await de_InvalidOutputRes(parsedOutput, context);
+        case "ExecutionAlreadyExists":
+        case "com.amazonaws.sfn#ExecutionAlreadyExists":
+          throw await de_ExecutionAlreadyExistsRes(parsedOutput, context);
+        case "InvalidExecutionInput":
+        case "com.amazonaws.sfn#InvalidExecutionInput":
+          throw await de_InvalidExecutionInputRes(parsedOutput, context);
+        case "MissingRequiredParameter":
+        case "com.amazonaws.sfn#MissingRequiredParameter":
+          throw await de_MissingRequiredParameterRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ActivityAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityAlreadyExistsRes");
+    var de_ActivityDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityDoesNotExistRes");
+    var de_ActivityLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityLimitExceededRes");
+    var de_ActivityWorkerLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityWorkerLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityWorkerLimitExceededRes");
+    var de_ConflictExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ConflictException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ConflictExceptionRes");
+    var de_ExecutionAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionAlreadyExistsRes");
+    var de_ExecutionDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionDoesNotExistRes");
+    var de_ExecutionLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionLimitExceededRes");
+    var de_ExecutionNotRedrivableRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionNotRedrivable({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionNotRedrivableRes");
+    var de_InvalidArnRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidArn({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidArnRes");
+    var de_InvalidDefinitionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidDefinition({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidDefinitionRes");
+    var de_InvalidEncryptionConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidEncryptionConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidEncryptionConfigurationRes");
+    var de_InvalidExecutionInputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidExecutionInput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidExecutionInputRes");
+    var de_InvalidLoggingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidLoggingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidLoggingConfigurationRes");
+    var de_InvalidNameRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidName({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidNameRes");
+    var de_InvalidOutputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidOutput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidOutputRes");
+    var de_InvalidTokenRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidToken({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTokenRes");
+    var de_InvalidTracingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidTracingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTracingConfigurationRes");
+    var de_KmsAccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsAccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsAccessDeniedExceptionRes");
+    var de_KmsInvalidStateExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsInvalidStateException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsInvalidStateExceptionRes");
+    var de_KmsThrottlingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsThrottlingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsThrottlingExceptionRes");
+    var de_MissingRequiredParameterRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new MissingRequiredParameter({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MissingRequiredParameterRes");
+    var de_ResourceNotFoundRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ResourceNotFound({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ResourceNotFoundRes");
+    var de_ServiceQuotaExceededExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ServiceQuotaExceededException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ServiceQuotaExceededExceptionRes");
+    var de_StateMachineAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineAlreadyExistsRes");
+    var de_StateMachineDeletingRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDeleting({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDeletingRes");
+    var de_StateMachineDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDoesNotExistRes");
+    var de_StateMachineLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineLimitExceededRes");
+    var de_StateMachineTypeNotSupportedRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineTypeNotSupported({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineTypeNotSupportedRes");
+    var de_TaskDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskDoesNotExistRes");
+    var de_TaskTimedOutRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskTimedOut({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskTimedOutRes");
+    var de_TooManyTagsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TooManyTags({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TooManyTagsRes");
+    var de_ValidationExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ValidationException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ValidationExceptionRes");
+    var se_RedriveExecutionInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        clientToken: [true, (_) => _ ?? (0, import_uuid.v4)()],
+        executionArn: []
+      });
+    }, "se_RedriveExecutionInput");
+    var se_UpdateMapRunInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        mapRunArn: [],
+        maxConcurrency: [],
+        toleratedFailureCount: [],
+        toleratedFailurePercentage: import_smithy_client4.serializeFloat
+      });
+    }, "se_UpdateMapRunInput");
+    var de_ActivityList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ActivityListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ActivityList");
+    var de_ActivityListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString
+      });
+    }, "de_ActivityListItem");
+    var de_CreateActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_CreateActivityOutput");
+    var de_CreateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineAliasOutput");
+    var de_CreateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineOutput");
+    var de_DescribeActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        encryptionConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString
+      });
+    }, "de_DescribeActivityOutput");
+    var de_DescribeExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        redriveStatus: import_smithy_client4.expectString,
+        redriveStatusReason: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_DescribeExecutionOutput");
+    var de_DescribeMapRunOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        executionCounts: import_smithy_client4._json,
+        itemCounts: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        maxConcurrency: import_smithy_client4.expectInt32,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        toleratedFailureCount: import_smithy_client4.expectLong,
+        toleratedFailurePercentage: import_smithy_client4.limitedParseFloat32
+      });
+    }, "de_DescribeMapRunOutput");
+    var de_DescribeStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        description: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        routingConfiguration: import_smithy_client4._json,
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineAliasOutput");
+    var de_DescribeStateMachineForExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        definition: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineForExecutionOutput");
+    var de_DescribeStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        definition: import_smithy_client4.expectString,
+        description: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_DescribeStateMachineOutput");
+    var de_ExecutionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ExecutionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ExecutionList");
+    var de_ExecutionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        itemCount: import_smithy_client4.expectInt32,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_ExecutionListItem");
+    var de_GetExecutionHistoryOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        events: (_) => de_HistoryEventList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_GetExecutionHistoryOutput");
+    var de_HistoryEvent = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityFailedEventDetails: import_smithy_client4._json,
+        activityScheduleFailedEventDetails: import_smithy_client4._json,
+        activityScheduledEventDetails: import_smithy_client4._json,
+        activityStartedEventDetails: import_smithy_client4._json,
+        activitySucceededEventDetails: import_smithy_client4._json,
+        activityTimedOutEventDetails: import_smithy_client4._json,
+        executionAbortedEventDetails: import_smithy_client4._json,
+        executionFailedEventDetails: import_smithy_client4._json,
+        executionRedrivenEventDetails: import_smithy_client4._json,
+        executionStartedEventDetails: import_smithy_client4._json,
+        executionSucceededEventDetails: import_smithy_client4._json,
+        executionTimedOutEventDetails: import_smithy_client4._json,
+        id: import_smithy_client4.expectLong,
+        lambdaFunctionFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduleFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduledEventDetails: import_smithy_client4._json,
+        lambdaFunctionStartFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionSucceededEventDetails: import_smithy_client4._json,
+        lambdaFunctionTimedOutEventDetails: import_smithy_client4._json,
+        mapIterationAbortedEventDetails: import_smithy_client4._json,
+        mapIterationFailedEventDetails: import_smithy_client4._json,
+        mapIterationStartedEventDetails: import_smithy_client4._json,
+        mapIterationSucceededEventDetails: import_smithy_client4._json,
+        mapRunFailedEventDetails: import_smithy_client4._json,
+        mapRunRedrivenEventDetails: import_smithy_client4._json,
+        mapRunStartedEventDetails: import_smithy_client4._json,
+        mapStateStartedEventDetails: import_smithy_client4._json,
+        previousEventId: import_smithy_client4.expectLong,
+        stateEnteredEventDetails: import_smithy_client4._json,
+        stateExitedEventDetails: import_smithy_client4._json,
+        taskFailedEventDetails: import_smithy_client4._json,
+        taskScheduledEventDetails: import_smithy_client4._json,
+        taskStartFailedEventDetails: import_smithy_client4._json,
+        taskStartedEventDetails: import_smithy_client4._json,
+        taskSubmitFailedEventDetails: import_smithy_client4._json,
+        taskSubmittedEventDetails: import_smithy_client4._json,
+        taskSucceededEventDetails: import_smithy_client4._json,
+        taskTimedOutEventDetails: import_smithy_client4._json,
+        timestamp: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        type: import_smithy_client4.expectString
+      });
+    }, "de_HistoryEvent");
+    var de_HistoryEventList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_HistoryEvent(entry, context);
+      });
+      return retVal;
+    }, "de_HistoryEventList");
+    var de_ListActivitiesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activities: (_) => de_ActivityList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListActivitiesOutput");
+    var de_ListExecutionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executions: (_) => de_ExecutionList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListExecutionsOutput");
+    var de_ListMapRunsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        mapRuns: (_) => de_MapRunList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListMapRunsOutput");
+    var de_ListStateMachineAliasesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineAliases: (_) => de_StateMachineAliasList(_, context)
+      });
+    }, "de_ListStateMachineAliasesOutput");
+    var de_ListStateMachinesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachines: (_) => de_StateMachineList(_, context)
+      });
+    }, "de_ListStateMachinesOutput");
+    var de_ListStateMachineVersionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineVersions: (_) => de_StateMachineVersionList(_, context)
+      });
+    }, "de_ListStateMachineVersionsOutput");
+    var de_MapRunList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_MapRunListItem(entry, context);
+      });
+      return retVal;
+    }, "de_MapRunList");
+    var de_MapRunListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        mapRunArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_MapRunListItem");
+    var de_PublishStateMachineVersionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_PublishStateMachineVersionOutput");
+    var de_RedriveExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_RedriveExecutionOutput");
+    var de_StartExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StartExecutionOutput");
+    var de_StartSyncExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        billingDetails: import_smithy_client4._json,
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_StartSyncExecutionOutput");
+    var de_StateMachineAliasList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineAliasListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineAliasList");
+    var de_StateMachineAliasListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineAliasListItem");
+    var de_StateMachineList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineList");
+    var de_StateMachineListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineListItem");
+    var de_StateMachineVersionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineVersionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineVersionList");
+    var de_StateMachineVersionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineVersionListItem");
+    var de_StopExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StopExecutionOutput");
+    var de_UpdateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineAliasOutput");
+    var de_UpdateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        revisionId: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineOutput");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SFNServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    function sharedHeaders(operation) {
+      return {
+        "content-type": "application/x-amz-json-1.0",
+        "x-amz-target": `AWSStepFunctions.${operation}`
+      };
+    }
+    __name2(sharedHeaders, "sharedHeaders");
+    var _CreateActivityCommand = class _CreateActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateActivity", {}).n("SFNClient", "CreateActivityCommand").f(void 0, void 0).ser(se_CreateActivityCommand).de(de_CreateActivityCommand).build() {
+    };
+    __name2(_CreateActivityCommand, "CreateActivityCommand");
+    var CreateActivityCommand = _CreateActivityCommand;
+    var _CreateStateMachineAliasCommand = class _CreateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachineAlias", {}).n("SFNClient", "CreateStateMachineAliasCommand").f(CreateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineAliasCommand).de(de_CreateStateMachineAliasCommand).build() {
+    };
+    __name2(_CreateStateMachineAliasCommand, "CreateStateMachineAliasCommand");
+    var CreateStateMachineAliasCommand = _CreateStateMachineAliasCommand;
+    var _CreateStateMachineCommand = class _CreateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachine", {}).n("SFNClient", "CreateStateMachineCommand").f(CreateStateMachineInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineCommand).de(de_CreateStateMachineCommand).build() {
+    };
+    __name2(_CreateStateMachineCommand, "CreateStateMachineCommand");
+    var CreateStateMachineCommand = _CreateStateMachineCommand;
+    var _DeleteActivityCommand = class _DeleteActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteActivity", {}).n("SFNClient", "DeleteActivityCommand").f(void 0, void 0).ser(se_DeleteActivityCommand).de(de_DeleteActivityCommand).build() {
+    };
+    __name2(_DeleteActivityCommand, "DeleteActivityCommand");
+    var DeleteActivityCommand = _DeleteActivityCommand;
+    var _DeleteStateMachineAliasCommand = class _DeleteStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineAlias", {}).n("SFNClient", "DeleteStateMachineAliasCommand").f(void 0, void 0).ser(se_DeleteStateMachineAliasCommand).de(de_DeleteStateMachineAliasCommand).build() {
+    };
+    __name2(_DeleteStateMachineAliasCommand, "DeleteStateMachineAliasCommand");
+    var DeleteStateMachineAliasCommand = _DeleteStateMachineAliasCommand;
+    var _DeleteStateMachineCommand = class _DeleteStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachine", {}).n("SFNClient", "DeleteStateMachineCommand").f(void 0, void 0).ser(se_DeleteStateMachineCommand).de(de_DeleteStateMachineCommand).build() {
+    };
+    __name2(_DeleteStateMachineCommand, "DeleteStateMachineCommand");
+    var DeleteStateMachineCommand = _DeleteStateMachineCommand;
+    var _DeleteStateMachineVersionCommand = class _DeleteStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineVersion", {}).n("SFNClient", "DeleteStateMachineVersionCommand").f(void 0, void 0).ser(se_DeleteStateMachineVersionCommand).de(de_DeleteStateMachineVersionCommand).build() {
+    };
+    __name2(_DeleteStateMachineVersionCommand, "DeleteStateMachineVersionCommand");
+    var DeleteStateMachineVersionCommand = _DeleteStateMachineVersionCommand;
+    var _DescribeActivityCommand = class _DescribeActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeActivity", {}).n("SFNClient", "DescribeActivityCommand").f(void 0, void 0).ser(se_DescribeActivityCommand).de(de_DescribeActivityCommand).build() {
+    };
+    __name2(_DescribeActivityCommand, "DescribeActivityCommand");
+    var DescribeActivityCommand = _DescribeActivityCommand;
+    var _DescribeExecutionCommand = class _DescribeExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeExecution", {}).n("SFNClient", "DescribeExecutionCommand").f(void 0, DescribeExecutionOutputFilterSensitiveLog).ser(se_DescribeExecutionCommand).de(de_DescribeExecutionCommand).build() {
+    };
+    __name2(_DescribeExecutionCommand, "DescribeExecutionCommand");
+    var DescribeExecutionCommand = _DescribeExecutionCommand;
+    var _DescribeMapRunCommand = class _DescribeMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeMapRun", {}).n("SFNClient", "DescribeMapRunCommand").f(void 0, void 0).ser(se_DescribeMapRunCommand).de(de_DescribeMapRunCommand).build() {
+    };
+    __name2(_DescribeMapRunCommand, "DescribeMapRunCommand");
+    var DescribeMapRunCommand = _DescribeMapRunCommand;
+    var _DescribeStateMachineAliasCommand = class _DescribeStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineAlias", {}).n("SFNClient", "DescribeStateMachineAliasCommand").f(void 0, DescribeStateMachineAliasOutputFilterSensitiveLog).ser(se_DescribeStateMachineAliasCommand).de(de_DescribeStateMachineAliasCommand).build() {
+    };
+    __name2(_DescribeStateMachineAliasCommand, "DescribeStateMachineAliasCommand");
+    var DescribeStateMachineAliasCommand = _DescribeStateMachineAliasCommand;
+    var _DescribeStateMachineCommand = class _DescribeStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachine", {}).n("SFNClient", "DescribeStateMachineCommand").f(void 0, DescribeStateMachineOutputFilterSensitiveLog).ser(se_DescribeStateMachineCommand).de(de_DescribeStateMachineCommand).build() {
+    };
+    __name2(_DescribeStateMachineCommand, "DescribeStateMachineCommand");
+    var DescribeStateMachineCommand = _DescribeStateMachineCommand;
+    var _DescribeStateMachineForExecutionCommand = class _DescribeStateMachineForExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineForExecution", {}).n("SFNClient", "DescribeStateMachineForExecutionCommand").f(void 0, DescribeStateMachineForExecutionOutputFilterSensitiveLog).ser(se_DescribeStateMachineForExecutionCommand).de(de_DescribeStateMachineForExecutionCommand).build() {
+    };
+    __name2(_DescribeStateMachineForExecutionCommand, "DescribeStateMachineForExecutionCommand");
+    var DescribeStateMachineForExecutionCommand = _DescribeStateMachineForExecutionCommand;
+    var _GetActivityTaskCommand = class _GetActivityTaskCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetActivityTask", {}).n("SFNClient", "GetActivityTaskCommand").f(void 0, GetActivityTaskOutputFilterSensitiveLog).ser(se_GetActivityTaskCommand).de(de_GetActivityTaskCommand).build() {
+    };
+    __name2(_GetActivityTaskCommand, "GetActivityTaskCommand");
+    var GetActivityTaskCommand = _GetActivityTaskCommand;
+    var _GetExecutionHistoryCommand = class _GetExecutionHistoryCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetExecutionHistory", {}).n("SFNClient", "GetExecutionHistoryCommand").f(void 0, GetExecutionHistoryOutputFilterSensitiveLog).ser(se_GetExecutionHistoryCommand).de(de_GetExecutionHistoryCommand).build() {
+    };
+    __name2(_GetExecutionHistoryCommand, "GetExecutionHistoryCommand");
+    var GetExecutionHistoryCommand = _GetExecutionHistoryCommand;
+    var _ListActivitiesCommand = class _ListActivitiesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListActivities", {}).n("SFNClient", "ListActivitiesCommand").f(void 0, void 0).ser(se_ListActivitiesCommand).de(de_ListActivitiesCommand).build() {
+    };
+    __name2(_ListActivitiesCommand, "ListActivitiesCommand");
+    var ListActivitiesCommand = _ListActivitiesCommand;
+    var _ListExecutionsCommand = class _ListExecutionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListExecutions", {}).n("SFNClient", "ListExecutionsCommand").f(void 0, void 0).ser(se_ListExecutionsCommand).de(de_ListExecutionsCommand).build() {
+    };
+    __name2(_ListExecutionsCommand, "ListExecutionsCommand");
+    var ListExecutionsCommand = _ListExecutionsCommand;
+    var _ListMapRunsCommand = class _ListMapRunsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListMapRuns", {}).n("SFNClient", "ListMapRunsCommand").f(void 0, void 0).ser(se_ListMapRunsCommand).de(de_ListMapRunsCommand).build() {
+    };
+    __name2(_ListMapRunsCommand, "ListMapRunsCommand");
+    var ListMapRunsCommand = _ListMapRunsCommand;
+    var _ListStateMachineAliasesCommand = class _ListStateMachineAliasesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineAliases", {}).n("SFNClient", "ListStateMachineAliasesCommand").f(void 0, void 0).ser(se_ListStateMachineAliasesCommand).de(de_ListStateMachineAliasesCommand).build() {
+    };
+    __name2(_ListStateMachineAliasesCommand, "ListStateMachineAliasesCommand");
+    var ListStateMachineAliasesCommand = _ListStateMachineAliasesCommand;
+    var _ListStateMachinesCommand = class _ListStateMachinesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachines", {}).n("SFNClient", "ListStateMachinesCommand").f(void 0, void 0).ser(se_ListStateMachinesCommand).de(de_ListStateMachinesCommand).build() {
+    };
+    __name2(_ListStateMachinesCommand, "ListStateMachinesCommand");
+    var ListStateMachinesCommand = _ListStateMachinesCommand;
+    var _ListStateMachineVersionsCommand = class _ListStateMachineVersionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineVersions", {}).n("SFNClient", "ListStateMachineVersionsCommand").f(void 0, void 0).ser(se_ListStateMachineVersionsCommand).de(de_ListStateMachineVersionsCommand).build() {
+    };
+    __name2(_ListStateMachineVersionsCommand, "ListStateMachineVersionsCommand");
+    var ListStateMachineVersionsCommand = _ListStateMachineVersionsCommand;
+    var _ListTagsForResourceCommand = class _ListTagsForResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListTagsForResource", {}).n("SFNClient", "ListTagsForResourceCommand").f(void 0, void 0).ser(se_ListTagsForResourceCommand).de(de_ListTagsForResourceCommand).build() {
+    };
+    __name2(_ListTagsForResourceCommand, "ListTagsForResourceCommand");
+    var ListTagsForResourceCommand = _ListTagsForResourceCommand;
+    var _PublishStateMachineVersionCommand = class _PublishStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "PublishStateMachineVersion", {}).n("SFNClient", "PublishStateMachineVersionCommand").f(PublishStateMachineVersionInputFilterSensitiveLog, void 0).ser(se_PublishStateMachineVersionCommand).de(de_PublishStateMachineVersionCommand).build() {
+    };
+    __name2(_PublishStateMachineVersionCommand, "PublishStateMachineVersionCommand");
+    var PublishStateMachineVersionCommand = _PublishStateMachineVersionCommand;
+    var _RedriveExecutionCommand = class _RedriveExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "RedriveExecution", {}).n("SFNClient", "RedriveExecutionCommand").f(void 0, void 0).ser(se_RedriveExecutionCommand).de(de_RedriveExecutionCommand).build() {
+    };
+    __name2(_RedriveExecutionCommand, "RedriveExecutionCommand");
+    var RedriveExecutionCommand = _RedriveExecutionCommand;
+    var _SendTaskFailureCommand = class _SendTaskFailureCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskFailure", {}).n("SFNClient", "SendTaskFailureCommand").f(SendTaskFailureInputFilterSensitiveLog, void 0).ser(se_SendTaskFailureCommand).de(de_SendTaskFailureCommand).build() {
+    };
+    __name2(_SendTaskFailureCommand, "SendTaskFailureCommand");
+    var SendTaskFailureCommand = _SendTaskFailureCommand;
+    var _SendTaskHeartbeatCommand = class _SendTaskHeartbeatCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskHeartbeat", {}).n("SFNClient", "SendTaskHeartbeatCommand").f(void 0, void 0).ser(se_SendTaskHeartbeatCommand).de(de_SendTaskHeartbeatCommand).build() {
+    };
+    __name2(_SendTaskHeartbeatCommand, "SendTaskHeartbeatCommand");
+    var SendTaskHeartbeatCommand = _SendTaskHeartbeatCommand;
+    var _SendTaskSuccessCommand = class _SendTaskSuccessCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskSuccess", {}).n("SFNClient", "SendTaskSuccessCommand").f(SendTaskSuccessInputFilterSensitiveLog, void 0).ser(se_SendTaskSuccessCommand).de(de_SendTaskSuccessCommand).build() {
+    };
+    __name2(_SendTaskSuccessCommand, "SendTaskSuccessCommand");
+    var SendTaskSuccessCommand = _SendTaskSuccessCommand;
+    var _StartExecutionCommand = class _StartExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartExecution", {}).n("SFNClient", "StartExecutionCommand").f(StartExecutionInputFilterSensitiveLog, void 0).ser(se_StartExecutionCommand).de(de_StartExecutionCommand).build() {
+    };
+    __name2(_StartExecutionCommand, "StartExecutionCommand");
+    var StartExecutionCommand = _StartExecutionCommand;
+    var _StartSyncExecutionCommand = class _StartSyncExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartSyncExecution", {}).n("SFNClient", "StartSyncExecutionCommand").f(StartSyncExecutionInputFilterSensitiveLog, StartSyncExecutionOutputFilterSensitiveLog).ser(se_StartSyncExecutionCommand).de(de_StartSyncExecutionCommand).build() {
+    };
+    __name2(_StartSyncExecutionCommand, "StartSyncExecutionCommand");
+    var StartSyncExecutionCommand = _StartSyncExecutionCommand;
+    var _StopExecutionCommand = class _StopExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StopExecution", {}).n("SFNClient", "StopExecutionCommand").f(StopExecutionInputFilterSensitiveLog, void 0).ser(se_StopExecutionCommand).de(de_StopExecutionCommand).build() {
+    };
+    __name2(_StopExecutionCommand, "StopExecutionCommand");
+    var StopExecutionCommand = _StopExecutionCommand;
+    var _TagResourceCommand = class _TagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TagResource", {}).n("SFNClient", "TagResourceCommand").f(void 0, void 0).ser(se_TagResourceCommand).de(de_TagResourceCommand).build() {
+    };
+    __name2(_TagResourceCommand, "TagResourceCommand");
+    var TagResourceCommand = _TagResourceCommand;
+    var _TestStateCommand = class _TestStateCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TestState", {}).n("SFNClient", "TestStateCommand").f(TestStateInputFilterSensitiveLog, TestStateOutputFilterSensitiveLog).ser(se_TestStateCommand).de(de_TestStateCommand).build() {
+    };
+    __name2(_TestStateCommand, "TestStateCommand");
+    var TestStateCommand = _TestStateCommand;
+    var _UntagResourceCommand = class _UntagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UntagResource", {}).n("SFNClient", "UntagResourceCommand").f(void 0, void 0).ser(se_UntagResourceCommand).de(de_UntagResourceCommand).build() {
+    };
+    __name2(_UntagResourceCommand, "UntagResourceCommand");
+    var UntagResourceCommand = _UntagResourceCommand;
+    var _UpdateMapRunCommand = class _UpdateMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateMapRun", {}).n("SFNClient", "UpdateMapRunCommand").f(void 0, void 0).ser(se_UpdateMapRunCommand).de(de_UpdateMapRunCommand).build() {
+    };
+    __name2(_UpdateMapRunCommand, "UpdateMapRunCommand");
+    var UpdateMapRunCommand = _UpdateMapRunCommand;
+    var _UpdateStateMachineAliasCommand = class _UpdateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachineAlias", {}).n("SFNClient", "UpdateStateMachineAliasCommand").f(UpdateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineAliasCommand).de(de_UpdateStateMachineAliasCommand).build() {
+    };
+    __name2(_UpdateStateMachineAliasCommand, "UpdateStateMachineAliasCommand");
+    var UpdateStateMachineAliasCommand = _UpdateStateMachineAliasCommand;
+    var _UpdateStateMachineCommand = class _UpdateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachine", {}).n("SFNClient", "UpdateStateMachineCommand").f(UpdateStateMachineInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineCommand).de(de_UpdateStateMachineCommand).build() {
+    };
+    __name2(_UpdateStateMachineCommand, "UpdateStateMachineCommand");
+    var UpdateStateMachineCommand = _UpdateStateMachineCommand;
+    var _ValidateStateMachineDefinitionCommand = class _ValidateStateMachineDefinitionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ValidateStateMachineDefinition", {}).n("SFNClient", "ValidateStateMachineDefinitionCommand").f(ValidateStateMachineDefinitionInputFilterSensitiveLog, void 0).ser(se_ValidateStateMachineDefinitionCommand).de(de_ValidateStateMachineDefinitionCommand).build() {
+    };
+    __name2(_ValidateStateMachineDefinitionCommand, "ValidateStateMachineDefinitionCommand");
+    var ValidateStateMachineDefinitionCommand = _ValidateStateMachineDefinitionCommand;
+    var commands = {
+      CreateActivityCommand,
+      CreateStateMachineCommand,
+      CreateStateMachineAliasCommand,
+      DeleteActivityCommand,
+      DeleteStateMachineCommand,
+      DeleteStateMachineAliasCommand,
+      DeleteStateMachineVersionCommand,
+      DescribeActivityCommand,
+      DescribeExecutionCommand,
+      DescribeMapRunCommand,
+      DescribeStateMachineCommand,
+      DescribeStateMachineAliasCommand,
+      DescribeStateMachineForExecutionCommand,
+      GetActivityTaskCommand,
+      GetExecutionHistoryCommand,
+      ListActivitiesCommand,
+      ListExecutionsCommand,
+      ListMapRunsCommand,
+      ListStateMachineAliasesCommand,
+      ListStateMachinesCommand,
+      ListStateMachineVersionsCommand,
+      ListTagsForResourceCommand,
+      PublishStateMachineVersionCommand,
+      RedriveExecutionCommand,
+      SendTaskFailureCommand,
+      SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand,
+      StartExecutionCommand,
+      StartSyncExecutionCommand,
+      StopExecutionCommand,
+      TagResourceCommand,
+      TestStateCommand,
+      UntagResourceCommand,
+      UpdateMapRunCommand,
+      UpdateStateMachineCommand,
+      UpdateStateMachineAliasCommand,
+      ValidateStateMachineDefinitionCommand
+    };
+    var _SFN = class _SFN extends SFNClient {
+    };
+    __name2(_SFN, "SFN");
+    var SFN2 = _SFN;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SFN2);
+    var paginateGetExecutionHistory = (0, import_core4.createPaginator)(SFNClient, GetExecutionHistoryCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListActivities = (0, import_core4.createPaginator)(SFNClient, ListActivitiesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListExecutions = (0, import_core4.createPaginator)(SFNClient, ListExecutionsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListMapRuns = (0, import_core4.createPaginator)(SFNClient, ListMapRunsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListStateMachines = (0, import_core4.createPaginator)(SFNClient, ListStateMachinesCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/parameter-types.ts
+var zlib2, typeCoercionStateMachine;
+var init_parameter_types = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/parameter-types.ts"() {
+    "use strict";
+    zlib2 = __toESM(require("zlib"));
+    typeCoercionStateMachine = () => {
+      const encoded = "Wyh0NiJJL6a5QDm2R+wa3nasIiZ8rauGeZab052kM0x6bT8EU0/HwbGSGrFuzuBbg02JZCzlwCgshy6qvkrFpm00Rthzgqs8/isVpWM0Rti0Dkzk+gC1msuWI3d05cm3trr8vSo57d7/ci3JNiKBbZ5RCeB2xaKj+ntgSfPFW9e2q7AoEuIRCMspciESLNZrqX2UbxDJ2n+lPCSbvuQv0lcIoDHwPDYKvdU9w6F8M1+r030Ot3Zmf0fZStLq2G2NpaR39gaRTxLKlMAQgNPca5rZ9S5TpuPTcwKJYcH2peOzrAtGMqB4Anqw1IXm+wE24MgH7/L/f1oaFrXxSlpNcwcwOADZfTQpjZHVfe99Hf8/2vLHVdri2gelS251dpELSjqhjYaS4FAW//u+Uuvf7I0uPC4cwUAkgYSUeCyl8jXT7o//rDwioCwShDqSqrQqSu9Npomz1jnbBA93N2NEIOwz0JiJFGlWUuZrlJW/6fbe51z36w3AaEBmRABSkpTqfaWy7Fvma9rh78d/OPzjSQTIZ0a9Vlmj/E3nf5lZSbN3+iNr4tDbTTk8CsOj41RlFW4klbK823wv86+ACBJoIHjAAFTS2qMl82fWLLsbiCOA2YsAMHvapTQMj7a59vypnLVRo82/7Hs1ybIizyFcEVxUq9fUxex7gQNw/pORyUnLcddWGIwUbQfCYGbORgfkpnnWWjlokQ8ISicsFRgsomt7/yzGyW1vVr/pq+ol6enPF8RhzCGEELZjY7/8T22ceC/baT6bB+i6EcjdZawqWnt69qmn6+4vk4AIiKgQktQuS5PaSdu9TMo3lgTGmG6KLLjF32fVVic9O1eVSv5ugyT7DRgwfsjy4pvW4zqZ3b7a4+SvjQCQt6ib4gEiy/75TC1g/I9+xZfzUWlv4+9bMQMt+XxPn6brewz4xhqOS2fE29IUqrR0k2Ws90++ahPMHnOi1N3i9cHHfX810RD7cp4VHB149M+svX7cOruD3sWT73oQHgrmuj6PGl3Ea5Kw2le4QVYzj6ECYZI5hvT9a4rQbc9Y4lnmhA18DwPdlUA+5FoA2Q5zVvni+HeWZHvi7TUiB1p3hpYbJGcW1gxLLBvvNucqXDcBBkk1w6GA3rr9nEvCVqmeyLo/RDdVaHBnYqVzYF+EBWungdUBcXOYbUNr8tTFE9nhoEM2GB3kBP6hX0bG5XFt8rQts9cR8YDuz8Gf8QNpqYZ/Jj3PpKmhWAoopciPuKAdXW9viWwuw9wjp0TOd7EZsDnwqXHyv2p7IcYFajl3WIBazW3znW2HJRPNLm3hzB4NKn+kLGzJUPP1D2UEA0XL1lE8wkN7hrxAxn9m3hvBvkFPWLgy2UA6J7cLC3mqU83unWGEfBPYhJv/hAU8tlL3gRm4FQ8TLNPGS0GubqefcExWfBoA2DTkLYjqa0KCwo0/CRuctiUNr0eyOPP7rWsO5fqJ2Vd0HvGGFttFbId2VuWa32lZM5/CSOwEnKh/c6ZgWGpTt2p2Z8mjKRcDLDzIUWXMDm4KuP8rMPSQzEi5b6BfYKy9PvDu8m6fWealr8lIEBhxaYRoo/aMmrSqMgVAiUcdGvu/cvciCrsq6BXoWROwE3Iw9a7tRVbRbAExTbbP8lati6c/cmyvohiQJJWeWr4uh1DrLJs70E+FFl4B8eb9WqRGmYsN8xr/HwNkSrgf30ynxwyoK3w/9JrtXykksA78yIgimD/IIXcLWSTa1CrenZLKpdqfV1uCwn3yV/yNhmBqjxshdHArh1ZypY9tXD5mefPIm9Qek8Sz8VBjdD9ClgA+tnVQdPSmfvz8Ky0gf3Ljn1UUUI8kO+CBGplNgZ9hRL74Z+FYWeYWMQ/MULYMG9eOd1zKxgB0Q/aZ9RPf67SU7pVAjR+NQieW9IH8JLMx5CDC7OS8b+VOSYHrihxngHxecdlHGIlvEGdPzKrwN6xbUd3gotyZQicnOSouTy9eIEQxI6oIZ/WphPuQ8yGPBw3c5LG+c9c4uyWq1nvrMpX3GFZoYwY8jvW5v5obJfLxzOYUBMLjUdvrA/FK9LSQ1NnqGZW3hIo0Hddwh0lT1DsS0nGU0Fdqatcwq5Aukb4Z6mVIRCyVOmPxu2OccxVKUZwr9cdjfEQ0Z9rHnCtINM5ssy+YqqGqAWn7kaIRfGqPDANMAGTgd3IhMVXlBXezmXx5zVdy4DsjE9WzG2jgr68mkreGQPxyDUBncoisCnhyWNUUo7Nnrkio1RVlbCtQ58bIQPtTxNPrvlQLvLDwbim1iXC2g/QMDcL15YPWg6ptgnEFaUfZ0+jsjyGfvC5QkcQUl+bNKzrmyIfMTSuzQ7ePIbAc3Q1M6GAdaYUqLWi+kQkqUA0aMc2IFkOZXCPywHr69IOi5uQboBg53QpTPdJUeFDFmke1SiEayAe74u3lTEClez/lddOv3xsNfvTundQkC9D5AIcvDarwj6EiqKPh3oDB4t2+vMOAhihKw3SNIenaOLNyCLRb8xuj5eia6sC4Po2HcGHb4Tbkk/rpPCql9OfjsIoZ76bU5rTXlBWGa7TEIAAcnrk2TVXYBdRuIRrSSGUeI9EN3tNQPIBaIiMze1i1cnJyXUUaGdqDiU9yWPtknKPUJTkGyMB46yXeOmNEx6omRoRd4Sxv2NuP07iE0bYjuPMH4oOacBWatduJJLXh30FWKtn7SWVf9ziP+RmWyzXCs0uvhBymy4TGI9CeugwH42SEXE9Gdl08MOULwRA/xXChbxf689YLv+dUVL2zX3RYPT1Ndsw8u/zOnMx4T7vC9NCI0XgvD9AunyQ3YO7pEZv68siqL4VHRUwngrtZNukUBvgUHvNeEA0giXU6NkOqAY+pD2yyyYohkBtCk33lVWNJfhapnLxvUh9OjWLIvKlzopZ35igI9Cv5ELRKGb2s6mugt78CpP2kOASe5il8hRJJmm/jnukMpmy8corKgGsGbPDdcmxRFSfMt1MH4z2YOABTd00p10nh5fTI0R9CQ/9/NwndXSpWFtjonk6KfNYP+6oAZw1IOCEmG3FzcAn3ae//vlXrU487dlB6jMrsjgSfcdRXDuY1Zt2nMqOMbM5bc9QkecqvJw/AJBzzKMqjJehuykMAYvVLoabSqwSm2MM8vRH4gQCHX08jaTPxMyBTA64rKYM8ABs3GKgufW9+qnzCe9CBtpFsKoZrAaY7pHsXc00k25OhvVVWXzqWmEw3kMojAbtHYZ/77txiPN1uyYuaIPh4XMs/OzMkxrk072AHM+dBj5qwIUrxKpENltITNi5j3brNlCIlJubd3DDvW1/5nDDsbGhQzJEHQ0iPucbzUawDDGcUKzf7eQAYAJgAN6k31TBUnUFJ6a1QTtbyZQw9ogUowKFHaFQxG03Y3i7BR1vIy1Ode85hBRpjyUAslXF9EIWCnt9/Zt/b38urinE9RHjNuZ5Hu0jd+veID6jgwwiYYi9pRDfm80XUF2nbMoZiruhAktdKUasm9EjIMmgysXxoFFtgFigb+gcKl1/xwAF6Jqd6+8DtEETNECBoOTyZaDD+Wl+497Xac5fUajlEV5Kexgf6jEhZHTQ9QgXKxBjFoPEDaDqPmi8I6p7dSyW8cjV7TuSV9XzqR4GlzBH4qo0DLducyiithlpG61aF8/z1XGGUqdVAGNqbDrUS3ot5NHVAGJy9PsSRvAazVjAt6+wZg3B6mkcNLqEQaUCJrQiSH5ybX43h0wjNNpCl76obxYaj8VMiczK4//+1p3BzS21FLDYkxGSlZQbI8EqxFz0zaIqIYz7P07sV/mBfVEHKZhvdGCWra3l3vpangq/q2AyW1dSQH/31v5Yj+x0yv6cmdrtbXNmo1FWNTQGq922jNld8ttOi999qHaDd9jfiG7vleW8d2WmkJGBn32VbZuVbHf6hRXsrB5d0j/9BC4U0nEzPxBSZy0+U+4Maix0AEAZ3tBjAMgDo6da8vvdTojEzgKE5WjZlOvcFbW2R4wI0DBI2xjiRNZ3IFuDMi0PEXNX7h0eT34zg/pZeKN4n1/XAS0g0DTQCYzv9vU+4f3IGsfQC/Ej07dRnSrKvkAtdxLCknhhNrctskmQrxUAJ7W2yXK+ZWiwCUCu2RerWzSCqrd+dReDrkLTRrfFBUt/tv3xCve6/6wt5lZHFb/NybhCHd+Y1ztfTryg/jwC23eTwTQwyEIensR+sv3DzBod9rNFl4+SKAExvNDAIR8YMdqkJpwQTh/rO84khgeUhTFQGmGIx+H7jhDyN28J9fYwXCXZ7wo7h5bcRNJizqFAYG3xl3Ow0SNl4p5ehsGDDil8SvkGlO7ejM1FXEbXvFFq7GG/5+qG54Sdw/LrxbVzJFFJ1Y9nqbuaDC3ucbrkbwELnF0m6EwLC3y80dPXC4qFXexv1k22uknGoqbdnr8S9ALGRTywKgelBmGcA9sUtdr2mA8J3zYeA+GnyS1SZiNjLCdsEcEGphljZqddHd6grNtpHAog/0gFUPBsA+6CpQVz4KxwaSvCkFcIDSvLiOhDHMh6+JzTerWa8H26LRxsuivCsDqqin6N8g3swAPwpHzlwr+DvebQzeUo5x593iVDgNjHPEONT81PnzMiI7xoFZdxa6nP2vzZa6qBTrJY1f0cg1uIcZ4UpTVRpvSucQ3XBQZCWc4827asrayyeB1T6pg7MGN7/E762FglL+OtMpROndXDwBH/FOdVECZHlmHaYClyB4NGEY1afJuJ/589rTqQPcq+P/0LjjrFEhwtrYjeM6YIpE52Jy6+9lmNBJJysWyP9fdvP5zW7v7l/yLBNbJrERh/PeeQvPvIG1voNF/iWEsAapgSq15ZQakrZ66eE7zShpp87j3C0r2km88jIRh2bVyttLbwt77zKwWHvbibV2h1rKboni+iEiq09hHepwhumuj3AXr9nC4vhbTLrWO40YtatBNKPizVmJh8VZyWMMhZ7MAsbjoCZnXLit+Rq6h1zIEQK4+VtdvN50gwS3Z14AB0ZZkiTSqIhupHW7sHCmhidxcY9vPq6WbvYMDb4Ffv/hv8xAOuzZtIMZHjWVR4IsJviKc7egKxHj0kArJGNTmDXWYJqlgWNNJUCw6qNp7twqU88rTH3BEw3+RxRgd/2trUviwr53dbH6FEnZSxfkLL3gyNdkctdFDVlUuOmZE6qvow8smS0lYeIAyxARlZZjk3LrRkPzAZxUlb43frJAxpHy+NnZ4NwpxmXqPSVGWIFpwBUY+q8zmSWyT9SEU/NpZSt5UXE/MTkiAmgev8RY4HTabZpYHspoC+UxumsRWPPY0dY+wSHpH8QuZ6XOfYwsQ41g3OUDgvwpcIm2U9AlvFAMHCdJqawFL7FFbPeAFQj2IYr6X64HguomhKQviNR6Oo+jWyf2ntIJe0yEHT6LjRy6aJda75TD2HO1YkaxIPSiSBiMxi5h6/lVIgQXdWLLPcKkjoypzXX0tHJm8Z/l8k7Tz/8sT5ja1ibPUTfrk8KhanIV1xZoUXnA+2O8E7I2h9Ej8rYptiuG28MeoH3D9NE8IrAjXLWpjD5r485c4x9gw6Y5cM2B/GsQIRcvhnlnic6FjGs4a9OsJVBROMGEahxQi7kMAhCvdviZDSc+PnBWuCbKGKdMqi2TT3N5QmM6pY9wl/v80RfeYE5Wznddpj8/soC7lJddFgP50Akb3RmaQSxmgdehLx5Em08fM5D63bGAVLD/i94IKWcUFDhn4P8cMcYy+6cgF1fWG2KH71OpWBETPFxKihuKLvLq3nFhYr7icPD4jsVWNex8fa8cGk/kROWgPpCNdqcIpgpZSMZsPrMaU1viPZ23zP6IWAk1VI9epKn3IB4YB8nUc3xfUSrfhaW+R2ZQ8HIznzVVbCW9DLznBqRlQM94iwtBanbYadWcuIHjEY2cYUOlAjHBoqhVU84PaL9HdGHSe42ZFFDvnWy2yJf491yjBrlQPIj4KfgBK9yYtgpL0t8ezOZj/OYyGhu1KTDOZccbGyoILLq5mYs3ZbZndSir91eltpOiYU5YntAmB2YgWDdDTsWAe/hK+feo7jIOuhSVsb2WPWSu0Ofugrwwa1IKUfDfW5bk/MP8NfT1E5IbLub+1bYTonlIO/qEO3N3JnbcZ99xymzOeS/B3wf7F+lr2BebcFl9vf67PdV2m7PQD+HzWEA1pJNpwBlkzVu4AzIOmI77Zl9sE3YVTdu/Qy/Ls8D22OYZgNE5hOtr/sTziATf2J1tov2yuw5stSGhdse03zGtZCcO2oRJzHRIseSaD3bC1xxG1/fMGuLvbay6znnzivxZIsubmsHgAHWQIfPFl36tTzimR7yqFj9X9OY8HDvJA3Bz0OfCIHiPjO9LRwbkcrHw2FLa7y7XAz34Y8kRla4t1J3cjeasDIOtapfYiEopnf4K7B6LH9wxmQNm56v3AVgHT7TLPRQuC8pLM+ZcfdDraHx5Jaz1Mec3LNxc3evNbwr2KmupoowLpPm0Y7SePwMbKqfeUqD1qFn1sFV6k3wIk15x8fpBqsZP/c8twDNI0aWi/p5S8NteBrfB4p7n4TV7m1nouoCG4bCdXdly1TOUFsLSnSua5dQzQe5PkkXHpvMk+nRA7nBALoG0iwiVK79s5dQED2UXZUsLUD2SG/hAOKSbcThuV4Uvxu+1zuAerrroHyZ3wuLs7qT7TeJaM1sgZD1cLhR1A9ckyTxGV7kyOQac0u4rqUywpY9jNoTN+1AFHghDIt3NLNYAjZLVu5alzDLyWXS16n62H9a5Ee5isrYw9rip5IEElt7DU0dksKk6wc9qDFIPQOfTGr3MoGIpwhKhqKVCWgdyoc52K3W5x6IaX+HrHYN303eDlvFPHcBZi118vY+v3NUPkdYFoL35fuuZG9zuBNEFpzw6ipMlnECLwC7TnJiAqhb7P7Z/kwOvXgvbaUIIDIkKSvtge0feIZVg+t/RGagcH3JuKgTBdAETgRwUgNTn1hOWF1hXcBttS8FA6961AOwGumBz/X27lStCfea9MHt9GrW1SrwVeGq1/unShvug4xFuUcDEUq4Zd4Iibm6pmsf8B5ECpfuCKFdDUVhqtdQoJqGNtG/MHlgbpTPkN2GZbtK2tbu6HP4qqqVDDfAKk4HMbwdbH7b6Y6rBQr+6MvPlUjujyMvQve2FD8S9bBZekQRSOkhwg+Uk51AINfHznUP0M4FRkKoPxOnFKGFxiHIneMQ0XZ8py336X3A2lsTc38ON19s/SHHXg2o1rOMYTH9IFxLgVP6fPMOIRc+ZCywpxy/kNtksOOzz04AGaqS9T1bliaRYZ93ea15RrGr17FlVidwTdWVLGCHWSjsTwwwcqvCQ8MS56czb/Ls7Zhd3hlw9WghfLKGja8urC/kUW+SPANID+P+NnzXohy4yGWDr9p0dUt4rwMJcCE4mDPq8t4ugSOdvo0gRwJinaohxDLALUmiE7FuQNWDOLMBvwhjT72Q/6adXgZzXGPhUUtSCZYM3NY5Tob7IHB8ADDals1PAWK7MDlh3+4SyMfb7H63A+prvP5fh6vBh0DYIScPmeYeVPqZ6z1+Ngfw6lfesDgS4TAc+ufsa9NoWmUkzXAD8YRlrokw0Rb72qHbLp11a5ZLY/+nGBkUwjZ7RSSbQsgPIKhsJ1+yWeOcx8OTQebOY2AGDFUbRVXFCmW4+xQGyoIB0FKSiMe7uf7en2ROBnz3BIqurRLCGUi+psr+6B1YvfiYKObw9qV4yc55MLDuiEDKO4q8MUA8ZdzsAML1llPCxKxHwmpZH9GjxN6gbfgDZZ2GwZ2+X3ClbhRnG+pN21MfKFI9cXRPQ9Ox+GwLYG8hzohz/9AuYhh2oHqCznzJRppAsHEDYtM7YnLGEt9EbDRHHqE5jm8Zq+CEaE3ScDWtwS+j5ivRczA5FDEdCCsUF8k99gKXu0EqM/HZJXeSlIPL7FfQ173jZtVkV/kTd8XdRLyqRU3PB48yz1iQ++W+ipMyb4VdXjRcNMwq6OEMaei+bPrrWiAIqG4opdhbCdrHTWL7hoP3ju5gk/g/fPcgQbcIOcj8vLRZL+Czl/cliZziPjE3IPIMKW/22NSWGZd6EhmhAFz82KiemZZR6qTf47AAoHe4B4xVAFA9CEKsf5BlKLDaKPubnFTh1yORB+tLfgpSmCFOOmwxDsAlR2plXZUmWWrPc0/tseXp/YoQiz8K1ctdg43CS/qAYO2Wz5gnDTFfsjMEqdejpnTsWttv255Mdyo3UySLVx3z3+zauXVNhOUrrbwPzJLdj18LFXCsR1SyRavgT/tn7zBVO+TJduGDZfkig+UebqiSLYG6FXVyPrzyc3tbfBA3dzL1XlxkVX8kzGJHASIlx0oeDjbwYEKaAxcCcdAcECAYuofvwJTpAAEBhKHa9oJTS4azCDhxKwjlExxoIEf3ELIkWti+rFr/cGaBvcJSlkdpQpeS6PWZEEDU8QjJveRsRgAfyAfESQp4jMu3L7zHVhe89r9LGXjKeiREqex7lynbysQMPsXZC/btPFg/eJmu1mYONcTAx7DRher1tvsHH6fD6+/qGYeXb6IkeXG0ft09IOSUCCk8+27jeO9Cm5PKSyHmAnvfpvtWx/RYKBFBOExCPMJm/71XK4ZQiB9Sh0blQXw9d2FQi8DDeMYzm1K6521PnDZJf6JaD+jLjSt3WyxT9psz7w9Ty6NmlVFmd+BBQB22ij9llnuPQz485YPY6hn3ZjzfALZWN+hcVT5Bd/pYl4PwjFj+1XLOUuuB8urQaV+adIzL+XItKjDpFvXxvXmQZ/A7pts8s++ze6a3H/CPeRmYv0O/vq7nCe4LC+ZjKjz5dH6D+J9hXoBjEdIi3ipJ66893eP459kTADNDZy7OUH+HlG5pQXcrHVHEuiH2lPrEQt3MEWaPLe/sNWPLOyRpq170ALpTkPCIY6T4MGl0aPtT+ZWmSXVz+Pv57yWevQ6g+TNthJYY1nu7xoCROj44I/HAOKAhfXEVFUn970uVZi5kGWL4ziN6Al33ODkXLX1xG0UfRo1AEXkLHDntFihalBV01+0+y6D4/ja2uKLqqOABtu4lHTfArVu1gHPCeg/xGhDdkbgAsEZQBxQ9fEALsK9VUaZAAaoFNT53ITIwUSqArS2pBVAd0WqUJqaAuqHbP1Xfh3td66RPcwt+4p/wuoFJDodHDWabGFcXrfISYDXjI1HOFuzwqQYxkK1nmwarTiafAte97IMEdeP8wHLegcPzBURUe5XoTmZ0LRk5gGowq/AlLBy21I5ys/ErMwWBoCt+JHNdu8ElcuPIExSbXdMJW/HY4/LE6vWxR+t+E7RbrnF9d1+zubKTTi0n/OjOVu5wrB6ZNTjuxZA6XA3YDmYMihOddYzI/vQ+TslDf7NG/V+UFRc5iMbBjIdmmBnZnV5O5xNsXfLtwIF8wnUnYZ9pgKV2eiQ/Sp/17QCsMN44nAGk40jIyCUGEfvhwQ3Mu9fp9D+anGlYX2KCPDkRkIPcWMWRguRvISOKfss7ZS0ciYER+T9r7w6uWYGRzujSsCheUZ7kcBNKAzKPc7tE+rwKWs7+sxx1Zz5QfCGD2afA8s/zn3B0yBbJ5OWDLblcTHRu8j0VJgaWkQPPUomOtUpL0ZipxMdW23uE+VbIJ8lXqGW15jcjV14z3vI9yzRFvmYtKigYls0f6c3phdRIXZ+AvMjQ68HxHwHqiqsFdh2h1TWPnHt3FH+JwU7F+QbUJYmDgMY+mO9H4urcTlz03BFTNRDudT3/b3PV1aH2o1v/BUw11JGJDtb17MuENSC7zngi3Oqa2N0NLczcNrNDIrrUfo2B5dudE4pNDjxOHCanO5YRLpdsNBkY7uzFIQxLoBw0HY5MYNEjWmcsTgEW/FP57R/JsxoYvWPKUXXHlu+Splfb6Vq59Hc7LDRtKw5WuZy+QdkrmECUFFIvnoQ7jIED6S8fUehukUDt+sQDFz5Y6VIzKoUEPU/4GSSP1a8ix4b5uoIoKHPglU7GopDOrHNdxgsKfJ2/Kv1xQZR6uLVwq07l3qk+mYfkJAaiBepprnHdz9t4v5bHme/M9z8ebUUHVxACHWqKY/DtKG0BNowSmuiD/im3DqGs3r5/Id9Tly7gSPbAFvoXTnjlfbx/YvgiyzCbst6ip1i+X/VB1jzBMO9tefbI6ILU6bCaSMCVmaDZ1/DPBiXMvLKUnb0XJ532t/NtAdmheodObz1DW0uAH+uFloRt+06yj2x3J5JhgHqS++LcRpuY7zSfGjYBKE9phuSq2eP2MhDq4ukTSNx6ASvKKeKbGAjQDn9UHI1PbjJCeRm2zsgHxCkOZFqdGR0DMsdX3zd/yzvVtCfFR4oUwfEVvGB1VC6fXJXLuDXI/xsKp60tz77zeTCtiboejVDasImYsZDHsnWA2J+vC2xpMCVWyigRphaart5YhImzsppwyAsa4NfPJrbl0i79LclemxzaVxFLFZeX3J7tF/PdYpc3vMK+Hs3eC/ep1UC3yTqOy/niGQ/wL5THHxSLTSlxtofHbZQOoNPNnJ+uR++3NLbKXRFEEXpY9A+wEPi3ZdgPVDf1ds/2Bcd2NqyJuPV3mOb9kzvDCjeIj0a8xGpuKJGBOMNiyjNaOXu63hPrf8i5DCdLIoCp4XsAGOrcv30+jF94UuaICr6hjz6YmsLuuQALWUCThPtj2r7Qzgr7yV90N8jMcLCF+awEDb80zm92gEXF5OFenQEkFqoHicHCjxZv3RMd+ncIHJQX1aW+ew9sbys3vBKHRdoLa/8nOFCEmI7yWwPNDS6u8FiX4smMdetKHxYgSqMJX+saPu6JdcD65dLpOAkEbtTJoEtMjvoyQQ3g7nhWvFjY+Of4YITzQdWp2bvheJWtwWvQlhfFPW/KwjPlH76dPKaoHbd3gOIs18oS4WbEz6mTfgr/yL1kjCt75Vt5UK1120XHcHbMMP0hB7kkzrJhGHaHaCerxJXQhDmAOsrI4GDToqGvl8Qsq+dsnizIL9N+JE+mpTm7Vi8ifPtxy4BlsUw63/z/dr5FY7xJicMZCKI6G5fF9ltS3fGzWcRt3Bmy9RzkVESVzltc8evFqOEaZu5HzlSBg2GUuTW/tJHoLcjF7f268571GD5//WdflRUIk1hwg1eDB2MfTMOhZw6eny3MXpaAr28Au7GO7AFxQREEGx8QlAipH0PO8CoJ4idmHo04IHp2DOGMVcHTGhAvf+QU8vlIiIfIMjNpCl7vwKVM5s88uoPs7Hd5UJn+0NEbTw+iTkfwiRl96LRHST9vHet1eXdniUX3sEiS0na+ci/BoxZt3Ck+iCzmJ4egJkbblgYQ2UDecWydhiEAbX1NfYbnRg3gofjf46lpqMQ3TLME1MWBEsP3QoAzmCS0rNo39HMgvsTmEbot5bYwiboT728HyVUQtzlszkkRmo8cZunlJ8Q5IKe9DdDOhTP6hkOt+GY6VSfF5dtJcmnCDGM6t24Jvhq4t7OL87YEEEWc7rDyL/OVveYbV/rlceVyn5zjW276+I2EB9ebUxTCqf75Jgfx5clfNl+VrPr+q5gx2cBAXPDfosbDKW/JPIA7kjMXRwaB+wN3wwRu+mMWxGopZA2+26ljrxS8gIPSwA0xKbkyiPBYKbXbgeC12efD7+hfu/PxE0S0vGDz/oXJ/Z0scL2V1Mc4wbEbMfuXTCC/M6vhqGBDbM6BIXypjpY4hVSgTd0exVcmwtmGRV65a/kTc0oAI883MVxVP1KZH9aBRYIKsnaHgVxiOloxrRUWwrPWXJXl23AWZvffmUrOCdjQMAMURmmzXl3OW0KmaTBwy32QcOwd838JA9kisaDZD/bSSZ5OuRysYv860oX73otWW+vUzY3vu8U+a7DvFn6QMGcVoAWhSJ9MbGc/PXk5JYDdyc7/A9QQYBBf7kRKEnE6ulCAe3gksiEGX13hs+sVPUJSSJBCWD3ZU5t/FGSq/pPj/IR6dow9zvjI9yHDzAqba21qdLMAjoe2DnUwTwgSy4CbO5/B+npp+22BbfcHz6Y1y0MAq3Na+9PF5DlX6O/rUrbgXtrplQOGwydS+S9Z5pQ5M3zGO8ocyQqjCi8UQ8qZ76aXJ5GhzUeeFNpfsiJbPRGA4qH4dzhbcZ09gy6g9JMxCxmwMevijE08WFPossChQzsYAmsYt/Gs93aidygybyKyZvQZALVyD3xuZD7agUeNLFrN/5zDAcoC6VjG807F8vO0fY8AwQyojSgySFNfWSzaSOmPkEAIhin+cpApE9MBz/lDP6Xv7Tyw3AKkO/nbsR2oMnZXbqKAeifBhrc6e3luplyQwcnPpdcSVCbDULdX+p7HIiFnLJnjzjyhug5pk1aDL++Tte6REMcLvsc9d0NHlAxTkB5DyFbrnhr2QWboTIYK49lJVmGW484Z5cmPApj0tIW8l3ZKbMrFAqp2gFnXBNYJB51SnQbAew5XdeP0z5cWz53zAeKRpgT+swHKi7kpm8sLc+r6PM2dVbl49OiYxTjpY2HNBKLb86CpmU1oC5bTqHnah5+CfCY/tiVG1wlEG1081xts38G2PwO0X0tlxTB+fz37QPLrMJJiLG/f2ygHl9UimUE5hWB1qdEAIvuKT/5SywVNAMLBDzfycYYOvseL5cII6RHwy0kDQZAXdPm6tBJ7hC+HyWAD2eUf4/u0iPuq1QxJjDusoNBnpwuSzLUiAkE8sldEybusX9X5LXzG3UUnpcW1veJCdzvwdXifCWMXoKvL4O+oCgfV08QdIyypQpM0T6cbkRHnzroTZ0oAcZIgnIUwrB78bKcOkh4xRLvTlcHI2auv/1aYk4ltSjQsoBQw7nSxQHQ2yWQXwB1ScrwwCDqcXCIMoF2zmSzuW/nhSyyyHnJsuJpJqgeMVGXMs2v19nlNQAJcRhdTivBA4Adjnji2wAg9oWJTlZObJ+jCvFMxU53fHEKjPH9KK1n39PCqLPilZyzZwvFnlnN3CdkffnK5n8IMYoXEkUcnFL088aXHRernx/53ox6rwg4gbM6I17JHiP3X9AznshHUotlcvI7hAYouJ3ujd8artZgwF+ROkQDCdX4IpUMEwLsNazo66nPrW9Z4EXT35S+6tyhTM6yJZfpppiGMa8o0/ASA6t0piPvYITzKzBIQSeMKWUskgaRNtqil/qRCjtO8iMaKPjGTbEWKJ4RfXKnkjieD1Wz+sJsLundF121UArqrW8w6PTMVqMlHRlOAn/VfdHfyxr/5X3mhghjlZX+0nGFWkJQOsCH6Oymyam9OUZHtN5xtKiC6ym0OHyotLizxLVNN8qk8ERYu/En90TO+puOSrQvCbd75aDJffnF37/l66M2KiN8B14PmS+DXJU4LZS5qHN/zEaD1qzxeh131ZHaX+mLf0R2fS9OlHOFn7OfaxlhewjxX1+bMA/Ibye/c+ORNCJixx78p57fFkqW/iHklkIBmcA6CywpQIMqvWiB6WRkqDB4U5rvRFiYBoRKilKeV7WvGZ6op/p0Ungy/PyIY4nGqCET4VgE0OC1N8HjF2rOKhJpzfXjolkdUrwNBsNMIIFGPLLbHgErsulZW67KjAbjdJDiZMiV8fKwgAZZJcfB9tIQM2U/OiqDyQMchA3d1EgxZoDwEJB8WwwiRCkzLmGuSM0y/f7xBiMK8azmGbuohmOLcFqChT5HnZlAV6PaJht76yYMzjY2w7IjyTd3KWGUZJ1JLsdxyrh0alX/+w3xbwZe6yDgbRq4Y5blT010ObH6aBciWXg2px+rVZ0VAeWaaWJRLc8GXUAP9iC2xbxON6ykajCujB80TJaiOWpsVFko09xqxcAO4t+GCLxmhnPzzHlLlYsDLA3Rf4znMQDTYKhXAgz8YwCiA3C1ndAYh+KWYu7MwqOTG9LHROvKaFc++aRQ8eSiJx3ih0sI/35cEuqGwwwfq+vadkfUKcfmu5+LrkTqnztYcAgt0BVgsUm3ag3izYJX0b3G9/ZaeCCFLnyjJjrSIBWE9Se7gwEX3XeXkqJkYCRPXxIDobj53SThqmgnQjXRwquv3FgvZxtaZnY8biAQ7nI0Oj/lHtXfHfb3C9/ziMzmHi311v2xGOtrzyucq+rwxJGOQZOO988VTaDP91MxsG3cUd0MKsRc566Xt7oA9ZlfMMfSkTmFhAJr6Sm+41023AFnNk1uCbjRFU2pEk1IbzkcLub03nZUDwDXNlhPHAgCyViZfbLLj2pSpde+OO6iOnzuAqi+TH8THuvlSJKBX70kOAaiafQ2RGR7SO0ZvRwHa3fxmLURdmimAazXZK1Rnf+WncO/GhLy+ouJcug/lJ+lJVDZJl6KySfoW2UKat0NGa1QG3dGMQAGQak6fbeDoY7GCp9++jKG6Zr/Vwbsgd9n9BlHv+3cho1xwDz53HO0MIMsLpSNF3taQqhithFKDK/B+jwe3uxWdz1qCvgX0q/oZr0GzMYYkm13x1outgRsXQmhNw/zhh+2uPy8dLFtRdCflar6XR5X+2bZAUXYSb+8MxqV9to6S2dccAYPTSArFZmKcJdoEVLyJpzLTLvbqZZCiSZ03gC4ARS/E10i8gQNi+RgzjnUUEFWYDdCLHrTDA4T3y5XRQy5U0ArSJLZJ+NTLfiieYFgJo2kIoukDAvAIfdlacilOKoGoStJqTgsqjvCGaw0Y2qwIvfBsKNDi7pcgb7jHwAjA/iBFIkCj3TZN4Od5Ze2ss2GczH1bgd2e0nYKMtThoXodBUlPuTa/aU1+VlLwVk4rZ+SvzdMgbzYiCU7cFp77iS3xcSO923f8HthAJdUDAziEga0GwvtUHL0d7tEDyBT8f9Vuw5S6lXqlUer8RTtG1KrBdoD1WISoDHq3B2GZIIVSuOx94poDLJQNG0+QaV+12sJMG37Ti6AJIfoZSXg06vu3yEIfDJpUGETZtOEbu/e8eNoeZV/43mDzpXboFjwYD3wfRQU79CyEwoXC0EVHZzvSKoWzviK9S0IPrgQ5teGCeYJ5ThGo+V0R6xHpXnUmH2h/8Z1V2NbzYeT+YSZ+Az96+OMlJc0cA2xuAiQFBkogXl0XgASo0+0J1+ChUqNTfDzD421v+nABY1kGwg7iBeyf5WOdxXzH2qhTgznyUSt7lccbeNzrPWp3PmV1LvQrut3LM7xSnSK694K7utDhOrhbnBj48KSQ8KeqSd9IF7PCt8UHP/nTGQsWAaAOCVEFA+x/IlXwu2IGy70Tpg3FVMK0nv/K5y2Lw/v1wqEMTz+jlORneNZ8YkSi9WWK0BBH9ZQHMZ/80lY2W5ad+mQ1Nb9XzXuTLzc/EnqRshsaPPdUVthFb+/TdEdihdT83HsW4oumViQfptwRffND2QnWHsa0px7TDrThrmtSu5DJb/ByHTky7L9NDcuKKI4ygCM3T8TMB5erOUnk6ztfO472DN7acoVTIw9RvwPA6eGQFjuS4yeB5S7OJFdRqxC0LcVZMfg3c0eclDNBQHLEoeDg0guik4YBgUqzkekMMDv64AbUt5gmPmU/QPMz65rJcF0mDJIxFe2q7Z83WMltoW9Ngcw10YjZvaGThTyNwIN75KsOJPBSrjRhEPd7kUJ2cmBmazxyAJ0+kPypIz7zWZ9zI6IuGzVEDVFwewUeAfUk3gIUIzp4B9xMnFgGrF4OPs6fIdvTIjiEVGKepnItmlhG+WY48C3nX20UjvDMTHFQAI4pGAcOAnhlVvTkBaBDZgS/74T0Cpcnarbn43pucyGEGMTs2D2NR58q93uy5KUrhJ2aGy4HVJyG+SSyUm1o+dOCG3WNNArqD1DMxQ5xX3/HrBwfhMzkxUi+2tri7k/upG3D2DiHzzpRmxqNjJ2uSHNDx6+61k6I3PZW+UKnQjRn355qoxygeoa0NUhw+xXg+K52+/Awk67PWQmGQDuhc84LUxOGKXyPfKkjkx6ViTHTtrEzSZIpi2yc93qQdWmTLk4gff68f8BgpZy0v9/u99vkeEvWc+u3rWN+NNOKgNMCzr4sXDA/jRUFVf6xQpRabcKDDVUtY1hS1hQOrnh2ZEf9khODaTYxo0gSRFjX9/LxfJC9pqyHiM8Ri5bpz9WPdL0DZQaG97esuhMS4fUDBCe2JCPAKb0mmRVZ3Fjxx44/c/yrP02QTlo18gDW1ClNEx5pYgiaHkeVrgYMXz/tut2RYoPTZUtlQboOr+Tp1SLi0oQXLm8TvBa8psl7z7KCQS2R+LrEWEUgcB21KhtSYi9ZmkXGC9j86omRisgstzrOHEvSCrwoz7CFxEdaW1SaCY4FLhN4myuoRibhiaw3+UXQetybhWsNlC/kMGB8OsHsF2LiOHwfUnSx5TVowNsSuYLzcs2cQSeoTlFuprxvQTEoYS0rf0ZipRU5N7tzL9Rv826Vefc5WeIuZMEYSb3HTzlqbye6OtNFkmvkETzf3Q3QV2vODd+5+aW0ez9Je85u0rlhu99v0QtMqJkVHZVB6bJnO5wbjtgkCBwibPxRqQyFKPVILLFzaIszjpzKBuiZzH9s3jz/KClxY2ULzHruK2y9IGYQT0BeOndpdNxTHrtJnW97pqjSQLIzBmZp1GEeQL1QaoQBMb09T/0FscyKDlngE8zyygs44EvWlkTjqofbCl70SMHqscFtY6DXoD3+ZrOQ3rb9CKp2m/6/YwFCMt3yPDv0KiCPpPsugxzJZeMPCzo7iYeTO0RkS22e55IhyMd5rEhPQvSQVSddFMVaQ694n6RAfq5IlJCnuGlaQzS9LUFo2JEHTqVuvTzT9FA5crofDCXGrlD2XbtuPlHQ+N9LVBWt90bZZWi4VHYDILkT6xLXZmk5rsm4KtqqKRUcXYA3P9Lar4CFyI6RjRCAZURZYQNFMoHVxSE/lAUAYhBdLoRwEzHaPXtcuhV8w/BK3pNXIYKU7hFjfTASviNaocBdWFQSqS/qlyfKaPyQq8/sd0BUQ3EeSxrzATe1DVIJqBmJ4A3Ba0XIWscuK1QoD9gNQ0R9OtiEbtBtRvDC9y4f5zP/tcyJ3e7t8ugMm9K8MJSIrV48fwGIby3FM0BW9L33esjfUSk+gKZ6uLYpA7iltDXy4P3jAbdADqYgNtz7IvJ/ZAWIiJjekA8PPDKig5kHRS6NAQG+blSNUEbXCET/SiXESbZVP6xVX+fr0YEhtBeRcM0Gf7UTfNeMi9vEc1ogN9irNodKimA6m8rdD10UMZQxgvluJY4C8GCeXHoAdEcHg6zWZzspIdKYKP7uZ5mKl0UyGJSZwWRe9MIZrKY6mezoLW52EwxWFsDNdJSyeYU3u40wT+YxOPthBopCvHSO9Az5pnoj37nrzhFvHGjONKCtgOHoZkv/NFKLCoiRkyqcVNuvM/iuuFDr3GZUVQTpOqPoouKNCO5A2wYKqjDFJOJWxP+5leOUBJBKy/gczNeQzPvgdpQzRYgMvlNAXlzq/FH2fp0scJWhev4D/GzoDfBkI99iijKZkOQzmyBTplusOWbg/A3COq8esG4QztE6nJ1S6XldMqBAV2cMj3NBJ6DdHqEFjdaIct9d0LFxIC6FpLpCT82gOEGP0NjjQ06uDUaCwaiVp+hmCkQvsb/0LOrCZYNiXall8GfJWstQwJaSC22sKSSVS8NRuZw+xq+ZrdJmCUMwlI5G4SbyEe6wRh1PZxBVjw55X6E1vPp1dnkgrhYrlDRn2Znqx+e05StqfUKl0e0bBWCgp75bx3ONta8qDw7xlPATCxRrz582wZAUcYSZ4eziYxLhQxyXvcidS3iOfXAMrh7cRpL3e+Ld1UoSfPVrqvGljrtA3WnUujb+Ax+v3Fu5meF9s4E6g7sE//Dej6Azv3cqj7oziREjPXK+akzQZBQPBipHlE/33BXpY3irrwFna6ptGYzYgKgVdJi015uIO1OsnHwlILhELOnQ+3ByVPF0jHRgEK5qWRf7MdqYRKE9Rt8jpGoUs6m6qUEu4Gf1ghLBbQXM3lPC2EfBUCX9k0YnINo3HzBUBrcSpxYUP/Ek0iUoV1fsJ7ceLUGZiULIByOPkN9EiTigc8XF2z3oDKEMhWux80wUfN+VsAaJanDoVjguY1T6wGQlu1dDPsjHY/kOVPIV4UPaVz+j8dhAjgOen/+hOXhqRK845HmGxGZDOSOI7NJ5ozh6WbeOcz25QW4LVE/FdBGOfrxJV17gNySdztTGm3bb8utsbaUPVoT6xzzqjs1Toua/WOTixw6VnbdZESLDn/ca+34bVVs39zKDASSmL3SszmQAM+WSwMPzMJhUdZKvnh8zDkfQqA1lPOIFxHcSiOlR14m/NqFR3m1j4FYLwKWFwsXQxlhQFzjwlU3qLQO8pEDF7M92gUAsxXrlk+gmODYdpPmNnShAF/j4ptF9RATfdxs7igGWoPQBOc/K2gLHaeBhFrmyu1PtpNlVLOWso24Qcg0rrgXpKlPXZRi4BYDqdnbwuQmPFa4uO/aR3nWyv/gwBqWHHqLeMjy5sl3lG2gWag28g3H5l4dIXJzLA/h8+ZCXwjMPYnpN3fJ02zUBKV/jIaYle3jfZqjz2hGqcxGTPYn9wF9j95bhHY5bCtIwyduJ+Sfbbxu5YmZRcVxm0zdwYptNvvp3M+fWfLfs/kbl/SGNIkM5xCXMgdyKsikdyLZUJOCD4+IxoGHwkPqxctrnDyrNbJbdgetNAIXrSVgDOpVqK34A6DZeH4ee3XtTof1pwL94L3gXBl8DbN2lxlkBc9M+uaRzDYVdoeWurAvnayYlaJPqyUS5DOkegA9E7bDQu9w5tmOq4wSViHWOoG7p8bfse3vKCCmgaocaYvqdPRQEeTupowq/qiJ8ZhAz1aIJi08DAvIpAXwtNQFW252AqZObnnnfNQUtGy6mAiTnFADNSog8oXYnnaPsn3L8F5VST9KDxEECQBu6J4ZsS3a0O99dTluiqiT+x5izMoiIpXqIaWn58z08yD9m4A4JSJIoW5rlZJRBg0clzxFKDl1sBGcQ4/0kgvyS2BsRw5wnLF1DdyZy2XDhR45CHVugA/HwJlHPP6Rz94XoxrlVLbOVexAV7SAJ9d8NS8HxZp3JAyayYKgYH07VMC82zMdnKLue/4QuT8j+yuHyB2Axhw9noQ76RjXw9khc7TPeaIB1Z7+Wouc76FdT94unKhDSL4mSBSpDNxPyHTsKGkSOB0ocFfsBQAtM8/xWXb48IzcBq7WCVCVieyoYPCnGoVbTtxcUsi94lqxZlDfaUv/Vu8xIuPu1vxy80U5cHM04wvaXn6xJwxloom4LyceCNv1h5wqaATmqRA4qD9Hj0mc71kbCxzAF/BnOfGGzRVohgoTpVnEjZh5QYwnsEjXgbPDWqGlNxfsZ53RO1bQE9zmgpwYoPEtnB+KsRkUjaz7rCYKrzas3Y/d1JNEy/oamhvp5IXSyNNxABRnbXNfu+NINyOS5t+gqBCpHfrxadPEdvIFYSmV1jew08SiBniJnFzMCn4Haofisj/1Hwx8U/yRM7OWPb/o+371dwBdpA/wFU6T+Jm3++GL3j282YXz7gnH6TaN9PEv5v9YZ+XWWUqXWGZn+XlvGnabJPPlns2Iyv9u7+zj8ter3v8Ilfnv4s7EXgq1xel65oJd2dMu/94xDefwH2aVDgqFnKI6+6Z5i387Fl3TespdB1FBxcMiGD66YuI4D0i3dPWQVQChLUHe3HBjqZ54v5jmo2HhwG9IRgZQXZ6CarzR1cOMgRb0/QhFNF0DBAA5tKYxC36Bc4tNZkj9Logz3ibVplqo2lXrPopfyoESVaL7pii56LuS+VM8vab0Dile7Z+uVv8k3KiKZZvhWO6TxkZ750/dnPySy5YqxOPS/uAiQFSMqypLO6y7vNaSOIsCEtuh0si4x2Qb+JLsk62U6uwmKXkvQlPE2uHWBbpH0yk0h2BZSfY3Hk6va5zW1K6yCHchura+v2BscWdbLClNkeElTt5SIHkbaG6QfxkfXw3re400zTYdO+djsinQ96VPiCRCI6TpIsvHJtSAdVSyDcnkzWrHDZGno/jfjkQtOO4zXz0G8/uQT37pYB8rAHilj8yo9KJe2YaCXmFu4dYRpSc3DueTy4C2lIH8lQ4ZIanyJ70rvORdLlSXDc3Xi4MucVxqdfaeqx27UyRaDm8TXKIyZ29boVb1FS6oZQbpAIrJWWANR9wHgha6JwoAaWXv+xK6VyTAjCofvpdUbiF1zOl9S0ZZ2GHcQZ+se6GooAqhEv5NQIOkihxns/isTVUDO4FnszwHeP55EF22MomsepySKuebXG5oHg0cW3BAqO4SVjoJAAvtI6fHZfOmz2NYk1+kuE8kEdhmJS5Ix5JR7/HoEummpzWzOaVNsednTEdMh8uUkzeh4o4hZ7DxuzoZninvV6iTo5tedgtTQULLA028UfWbI0tuD5VXjnhtYcS3U8fp5bJLJa3dhx8MQ809GkWuiwV9YjmUb2OlB7aTU6WAs++Hg4r4G9unIksr6m+JrtTS7bIkah6CgiJOBZEHwijN+0qfDIFV7OZykdmQIsLu4bgB5Cv1JYyOjgJ1piysFjCOsAnMi0xBu4flK9op0aHnNPBqsIQGONgqIabTn83KMizCxFj0yLVg5fqtihYEV1F26vbdydWLqvbUnqko6lnhYFwCn5vaSczAAppOwZgqfXol4U0Ewv8m53lZp8pMEAMupASqCi7wtKUn6Gsx5kF/A+mnNS8az4TgkRGycziUxvonbgtUvJyY18bLLSeiFearRuDTE+UWouJLWREoia5HM+JV77KdcIUn5urQI89rGwxKLUTvDjNo2SDIARMmm8kTHGSfOQ4JE9SKIeOeqpqO8S/KTRorYumNsSXY7Kg8EoC/Zd/g4wLdmWWAQncJ6zRYUjo8AWRQhsKwE28FFXJucF1UIxW+yG4jBlNSKak6XHpaIraa8O+NLYkme3XGHeoZeGIXkSNQP1SAu3vqXmCnBx0v7fQEsin0kzBhEONVKkh04tfP6WTHoBA9Ic/9PrlxJDGv1WVrd2d2RHoqzMqF45tTAbvbHWgak5bLxc4tyZZDAqVwW8afPhPtCmDuYKkPtJgrM3G9UUUGiQUOkQ22z4sstnwQ54smbk9l8iHBOR2FnQe3WxG4NfLnTnGnurmMyyI28FwFuigX6XrgF2L0xmSgDudXzsNIuI0Dfv4fkMfetOZUlbDVUdCbAhmVu+ysmbgTZ49UVDW6W506A3dV3nCBwzZeWDTlWn/QnIWMihV09sD6sKDfWEz+nhX0hMA7FXIln39qsDRrH+o4LP065pXHuFdHJGTn5bqdtAzzxhLKQPVeKjpIg6l96SG8axsiZj2rFI9C2iSmKmizQc0y1AHzAwGFNULm52PgssuPJtG3+HHzyVyl6jZ83B16OqDIw96RiRnGd3GskjfT9tqGoGAvBP3hp2YNOwF5eXERbM+Gw2JN8pkiZ72itbRmFHAu5oteSOSWiKc0NO6K9L2Qks0AdLTAVVFd2dLgxrcnkEFbGpIHzlnzqOBlJEvP9jFOSfg5YaI61Y3S6nqXh4Hh9+x2QC64qR5mjpGjwL8mRiJVTHJXMjGK1vo+OpsrN3MGclhIQ40vPdmjobNT4q6My5D7Hi/adtcHssHeZwl2yK0PK1Pe9vZK5WXCz7K1nGUMxd2hIOFuTzo5IZn/m+NuGVhKrJKm0a5aIvZLGMfn/F1y57UMiEoCHI4tEMNSlvlG+iMyEyA2QU8+JOjdOUVVksPsXzl0tqrN8+5qNFQmhHhYArpyhn+iHKgOWjmR0m7vDzpgqMVf60M4hpkIwPGZ4mFNBTUrM/Abe3NnP8sqV/p5hKsKkk+3EGP9pST8Vv7ifXu/xae9fKKdHEE8A1kLSrTE3eBOGBbnIDdQybtEsXS3vv6wLOKD64H9YiRfnZ54oIQdmNQbooEWBPYYQjWgKYBRpR274rnjoQjKWqeKRh+xRyy0mHU8XTU2weOWSoQC2T2h7Tnele79g3tVxV+xLEBPzLx7sSm5sQExjzCM6e27pEEeYaae+Tlj5cQ4PwXa4dGZy+/SMLTSsdDqirhES1k5rCmS5hkQOKSYvrnRhflfMjLiqKxWTFXPH/JmRFfNY+xIOI8zhHvnD+9bN5sfNClFciDp0oUcqmJ2oI9FBPeTkCsfiaOSR+7JkzPx5eD7rNKkSTjkeyh0C2SOX0sP7rLCJWJNhtgO871xLnjQJYRzRWgOkkGOMyx5MKR8/1TMeqHSd2AFS4YkG/xgIFpqVKIDNjLY1zt22KvBQvLHveNamdSvYae76dN5J/vCj/PQGL1gmY3mFv+PVGs+wXmyrsxw5Nm5LrEyveBN9oNkHnjQiUwDC9Jp3hBOKvzLBtUUe86cznH+rkoy8lv0a3vJCCeEKHzp0eoXtNsrQijl9wvSFLVFBmIyEi0iRI/3L3vmxyUE22vLJ9mqraY4RJVfbXBux9dloSk4bmxQGcsnx9GIZzczmgzRA3C97tppPIx4q0JkzuGQuGV3Ww6XD8trQLhFnwoG8kP62Sst7w7bJYbZfb01KNfy6q9b23kVkeZ0nWZOQqcmOvC2MjNMIM3lr2kjATa67wtwqL6b1vBcPrujdmqY4BcNP5iktE2Kv1j1Lj2R/oU0DxWH5NKVcM/kZWncWI9bkE6s7eMAa5T1x+0gOVB1AlmbqjW5L85xO96MWsjV/l5E6IqczkB+CD2PGBgKaLWRlPB9Aalu/CK8v8yByqUGmeGULa4Cv5CWFDQFcGmWv61B7iORL0DrOJgbkwK27yazXXo8LUK7LZKZuQdfCiJB/SJ/GWLxYsjEokw3N7CBL77OPVN9ji2SQLTVebpyyjWlMFKYhmawtr9OSeZGf0VldpHnoRqXE20aNTdsPZ9bUchiUN7L0p0tJYz1YFQlqNYwOZfAjuIobZNma1MzuwoVZOtqThaj2ZVugJMIps22R1vZMr3hxM2vwcMVqolG/qPjHD8ABrqYinpwpKSZ9ws8Yb+LuAEtFVtTH6IexIMfkKSa/CpP0tPk0IhntYn9x5x9jrNxtQpbu9A0drNsfjbKTmEXVvm+phkaFicHM5jxsYJlOc/CujOfiqlvau+wPzjXqcbsLlInWrTKmJ7OVjNrUMUdoFHH4ZOeN8W8ImeaQw9HKHoB3T9dPg8T0oc1KQL84iA2gnGXVUMhk4UP8OWoXzb/TwWUz88MMX5d3okEVMb+EaEtDrnuEL20K1btqMGhFLbCqXgEia5XHGOluzC1PB0zWiEt0asZc5khXhNY1MY77IXx8U5S9zNE1GPh63PWZplCXoYYnX8TWG4NLIsLXJ50TdyMyzcGOhW65BgMtMumIqePnET7rk/QDaF7HLrwWvUw4gJGGPSZvyKFNw01DZGfnREjNzHRQOkOa+PFzu+80nSCqQ70XevNSFg/6SqmlFDScbJRXnc0PWp6R1RkX3fohPAtcbukThRzshy14GEUiAlfvBBqY/VYcOkOZoRrX6B8+C0nVbiLewjKw5wk0shgGJ0vie8TRnhnZuDjLuBkVo1bVjl4GotHsEZYzDJYaqfWB9jBMCh16cantXs3dEHzheSWad1HjgemwhXP78ihcHp5uc9e+SZge2dcw4srrILQPaBt8nJqp/Vl2AoENCu5C6YUha1uWDcGcWKZ4M1hkB3putKt8EKw0EtmjjpV9s+WMLcl6svhtdypMGJA93G66b7z5WvbOnwsAohgpdlBEfvkDIZZtSSXF3WDbtr0yNB+sfPE7+fK0SRkm/YKs5REHUYJf75p5BmWBKpl/3oZG3ydDm0un434fIrH1xG3e8ilrpzeNEl0h23q28F3pItOZTDz7FIe4Xktn7cxcnJmxMnPtykHcxJhxjJj2KYdb3pqa2ODr1997+uKtGX0R3AfyJiTWv6ia8KdFq7Q/722FHEOYz+bwnPh20nCTq9k0F0rWHAc5i4YfjIbv3JMVv0JpEiMO3F5h3uukdG6BzwFDeX2Zu2NncBAPBv1rbcpssaJHbEM1JwAFldYMRaohykzlLxjiqIXSEXlSgHIHOTRh/sZpyG1zB0WrmnPJLYXoZ/DQxTxsQ7WtkaSbh0FCbsJPMrMmWYPS+aXcNqCY+leRDSslCF+NRgb66n6G8mSZxLP+EDPgXnvedf4mUX+pYJQZ3djIDlos37KMRhb7pN7xHDn+HoZqEUkXw5bYFvPN6ZlVdSUvs03XAJ4kfdRb67VgxdOd+cHNNf2E72M+WDmTAOmm9oOnH1xroLTrf3YD1LHmYk3cwIKp2+M+nwOSheFvcyNXXcRTKd02bmuJlrwE8HlQrNZsfYgNX0+WdgL+2/SNeUOfPHw+b8+uv/3t6lVg8nrPm+p8c4nfGz6TUEsWf6GfIljE2Qt5/UqvQdX8tQupJPyuEMw2cupSQF3tQFkg0D6nKV/9+Xzrx/pyPMUMd2lRVf4z+5AvdfiLQ6v7a8e9oO4Aq3pnMlakue2/lxjwxJ1e/Wb54C92+XZztjKiBc5lGi2fZNUluVz/+pkOsoNmXxoSWvUAPM2/0Hen1hUsrJqRNvaehQ+QBsd1FNPWSwB1QkVp81rRpyPSBLPS/2JnScI+AFWnYId8GS9JjhRSw7M4H+29BM/4eQTN1YAASUYBOY9kvv92SfLtHhzSiEAT/TDaPbWWtqfSo41gT/lC2yXNt3HIpr/fj1iGn68brnP8SIgk9JOLiHyaFMYHyMwBmTWhHGQ9AafsP27h1kVYERSWzPdRzJaVWYaHAjtUwmELAunIsgVIltAmnWK9lf7LG99u+IdvAgrm7Ydu5pY1hhfbsAr/1lQ7PTnaacstnyCi/rdIpZOP1/I8UCZ7XXCebMJPM5dFfW6IbZq/m2fkH5IYLmO+OHEC+GEM/0JSyZWlCLjOxQxLjz8a2y6U7CmY0r8sjLclnPiREQRycZQ+gwDJwEZFegsypl5RB8SzqLw4+YRK+z8LlJ/YzGQAtX9tlDXSR/35BXDicKKqt39u/qVt9xY+RIMRxsEcZ4Xeq55/TlRNzBa84ytIxwcyFq1pOU/dHDOPeOKJvPcfOq30BwA56b8ACkq5Fm5F0dtb/IaBAET4wa2z4rg14pw4LpMQCW+8tc+eeFwzx5G41FleahFI0GT+sgJxOWwxnxtjS6+zxhUASGgiCy+RTgA564SnxE6UFZ92JMu6E//Z8T4JGXPAUiPkxx9CZ77C4nORoDjxJOH1Qtsdhcq1ALeHO4D6OPuSLGYGKG7w2/0X6rvv4uo2RirLxpT7tdGoN/aaxjXj6lxyS2KgfwEP6hVJnfUZqqRWZzXqk0YzAHT2udfVkh1QkMyMIXTChcLiyEOd5YeSxevrUmE0MygVSJM8EuBto/oZW46cfO6xGWbyecTmAFv+wSbPAZzkOBZQX39PT/GVBiklZi0IaW/7F30GunVFHudqJTM2e8usnRa2S+77ZkorLtGOHghkYhTw/0C0iV6DajjI1hl4kJ3xAyTsNX+JwgrWJPzwUxKjbtyAzIDDlqykcaxg9qXuIo8Wqd9Z46yeH8YPHi/ocO8LgnWzp9sE7l4655oG/lPWDUsj/IlDgOaDfy0Q9Qb/FKdmwHvIWRlFx1ACLrsfs7KAd5OfQFCfnQCuK9OJzpu3AdidMfeEPoD9vzCBEyj+hrtRRmvc22X6R20oPoPsvlGB3UHLVCznuLXi0VK6H14fC/OEZMbgmoQawjGFy2P88bDvDTUkEpOdi+0rNRixgTnjsX7eYteftTVU1XAxmZ/uLErPKO0YoM55ic7neroyKTC3qFI0/XXB0cZaXOk+HWaGu1e8UcFglm1CK1Yr5F6DOD/CkOywTjZf/o2rz4efhK6pCk6AGMPt/1VDXSnXAz6HiH6ywMmZHREdrVXhHd213eu+qn2uGhJxbkxSEtEFIbKmCUG+oI3EKed8PntEsM92kPX3u5DvC4zI96NwS8RSWAobkYAqa7fwfs6He1pRINxEMwgS5pDaX9wrlxec9YCHKPWtglcDNUudI3y2ytc7PKUjSQbYSzvTxPvzMkDMj7/h5RKweS5j8S02zv3tLt8KAE75pX+o50H0nBNFFdCeRi63VnzT06rX+oiwnhFqbJREbgTCe1Y3veCz4pNuWAU2ti7ZoVIZ3TyqeZ2g+TlrSz15liPNQ767wmZKqnGGHt4EUROLWOFKiijfgex9Gb/tY3brWraM+N6ytY83KYaj4dAM891Brwvcu0Z9G1M30UbpAEV2mw1X7jfK3cpYvYl8H2TdKnxyC/SGzzOPbk66ZqR419UdBIkxZAyzq7WQxzVgBELJO5MJ0Plz2LxHtFfF01KNHWiM5sX5GumzfNoWwuq1NmIn/BL3cwDrsJpEQH1mTBiM1a8FKh2VtatdTvj+s76nKJDmivKkzWCf5AICmtQ74K0O5fVBXrsIOKDJBQ8fKI4t5wgoOw+OsZHjEPit2oAhWq9ZV5vm3enwb+nxbheL2sbNH+iu3gpkj3dZnAtiZ1+1dGsyeeBZeMW7NCMMiNXCazPKe71paTGsxKxDe8ab+I0ldsDFc2MTM4pKFHpAMMFVl/rtJoPTA1o1/nuBpUAf03uPEcMeHQ9hEKtiDdCabqoBU0smgFJHRo6Nrab0Qa/uY1gHZ3S86i0YtHqYeYH9+/7BYeDvB2dx++WICvx57wmXh4XIQ+7ZhxYd8ll+SNaA3yZJ+CanJsZm/5samQE0jFkvXTN7CcODQv9eva//CfgjJJ05kSiMN/NuEixzk9gfju+5iB/l9gb80P5BKAVgiYqXnLdEQH42H6uD708xe4VrAr2H70HMjyxukc30839yy2exLUSq9HGHmgy+j/hb4EbzsxQ30HRyV9nFP9ny/JN68wRoRTfcKGUmkGvmoSwuHytu5roD52vSg/isE9l22CHYfo4eUKswbkc412BhXZa5Gsp6JyGqZZK35bjmu3176IJrXGGptz5oUL1hbOXqNdIByi7o99cD6kxwYfimcA9bqG/v9fuwIxGBnZdfQVapLOw3AROh+eA1j/fxkUU+Irq7U8g+Jww0+XwVUon5YoUW2J6Ln9dA/KgV5CMfAFFPKc139vaynWgtiuwvbcbjn1hyRiWoK+pFyUAmOwUD382eUputrzzc1ZKk9FGRt+LHgAM72amiFFfZpz5oTp8zQl9d/f6Y1F9LhP8Rb1/DkYR1ZHdVUdnWpp0Uca1/OC15VjgkEADDOiUTBLNdeH5q9gO4UUiuh4nwbd++m3HrU7T+0e0UQ67gy8q+bevfsMY5/3/GM6R9k9sl5H3YHPNGk/tjYYDeO75KmfcHdiJYfjwMf+XAgp3fk1bk5jpLeYxJ5p1gPNGH8ccOHTaNE6LPxenwpzc4j1drm2PqdSmgXfN3VoyfA3qWZGaCpnNsIIgnIQDtLeZf7hcqL6QFop7gJSnlWoZ2be8ETFO4HUy1VPiodhA+yKsZzbZJnup4Q/azstJ52nPYNCIfkGKwPvF9GleMKqc6786Q3NuipSsRlxo5g/gfcRTj3Qq+/csaydRb+6SkospzonvxJ3cyXSXAPYuPgIKwivwkJl4iCePP2TK0NqF1/pityPKlLPRpLtkRU5d9BKVDMTALnIhjuMkOIep9PHuKJBB1ocL9N+B2yF1q5z81pErLUN2PgbPSYEq/ePBzhoIlIkawdXKzwLKwEYML8XoxYpHbeR51bN6dYvQ6YfQlSWxxBG8q08hClk6x1SVNlaxvvkPLPgTTblHMDC5U98T1U0ENlhcCeFSKlT56GlqmAYKbXYSi7mzsEyT3IQMr853YxQ5u4dud18AqkgNUbfgkxqJFbeQ55BrLfCV8iBzKt3legWkNoxRD+7sXrgS9Yf/jr6obwdiK+bh0K61r5pGcDPSehPUIc2cysVChYVrkwz55FEPWyZZBaWoJJp/N4xHJaLrI+pJmXgKms8i4LzDsKYDpgXjlXDEl1Q0vCdalwDdU3IkQv8aW9wQfvZFVI2LN6Wu2fPWUnsYzRfkVmImLyYQtOiwuiO8BPz8Gs/JHYNkg6HVoD18ekTwQSDZUl3KJTQAv2ab/MhKt1iTUQaT5lAKg2OC2TBrBhP/a7N60aj0gb3y1fCe/d4t02ab/JlZ2k3r+dxKbdJxbAlOVYIo7Z5OMDaUPzUmgtq9qdmjgOp0t+yuPv4Xie1yGTcEG4p+3ZV8b+BSZ+KbIGUkGbVIQ8BhTwaE80uzgKvZihDe7/bhc7nFg+Y763wkmhj0nnwoAkoVThGTZyi5kNw9qPt5EwKshgxZ46m+QoaatQzYKQwwJw8HEWlsA1LWf87ScmQZy9R6Xyl/1sHCDz4TW4BIJqFeTQDZICeHOiYMU3o5c6oA8lEoMZ/g+0IfLrfxy550aCO8qpLiLEdJXaM8yweQ5J/oaqkhq4RqkWWnWd4muTQ/D/KUBKe5rG5sOaclvAknS9CfmCIRtl68uscIR3TeI7EFnB7jp7RYepqAQNh7hpDf+H4+eQWMd2jeRbfuwi6F9PHRSFgzgK3ofRuPFPi3lJe6TTI4V6QH8a/xJj/lBFqsWFTzG96xbMD9yGPkc76QD1cc0fkafU7aFA7yCfIp5M4GqNpi6zIOplVjxnCF/Wf4PExN93Vc7wNGT3dzlGVxkO3jjkX3yjnlp425c+HDe0+e/h+Da0XE8ncCBrmqTjpHWiUN87zP7VB1mTQbNvjG97bMbR+Kg4GxXV4JXz3IFp4VJzjsjQvFhmxRjbeUWnL0s8i7XEOTtZG2UwJyiSSArJzi/gbl87UegXMyxBoabCvBv/W55MoL5CQcFi5xM7vJKA/kk/1Ajk0geQy4VZosALV9SyIQlpFxDa81ZgGeeu+zsEOWTMvX5KExQwWcTNv/69dlFSW1y6th2cHLpYaM+GAzT3GQgM8OSPwIk30kRIDujK+VOpRk+3s7wNpl32XOdSmaBmeNQKage92l435+dGX4GGLSWYKTM+JTmcHPytHk/M2atIeatfldeI4wwesHhZbyEzDNBQpeJoC/rSFPxora0A/mUaDdpo7jQU3TkOz+nw403G3/G6s8ZnUYTlVzDu8mYp5Eh7E1FeN23uAArjWtt1M4bi+CuQf+Bj5SqaTsrs9Eex3Cud4cWry1HEjlNLbVcsVitNWRHE9lZw73k7z+90p91vlTVNcyBpkGaWO/4A0HyQezWaPUITC4vA1ICii0bKFY4Q4nps6YZD2I9rfGT76TYfhogMe53CPQY9pmmc5PX0c9/NM9knIfDbeqal3ebBsL5UMJoMpLVrizHqaNS23HUvpHJF06A1XxfnRuz0jTfTbpUeBsciyoBIJFmQONrnIwnPPr6XkPo5cmbM8toJH2d2r3Sa1HvpaNz/QcQ2FyDOoQhfJ4kJQAyiQXTdixdwjns38aR/SzvTosOQUbWSdANxD9SkJPO+NSF63qDerCOR/kECGxRLqd6Kk1PlF4aSTM9hNmbgvINrXGHM3JNAB3NJkafPwssBfPegiODv2J7/JOxEyAcUcMNKi3WpxNQjTBQ8WPVPCHxwk3YM5wFsO2E3ocP7rW2gGzfA2sOKvcryY3YfsAqfOynchZOjJvEhfqAswaKQXON8T4hZaGfrB2wiYKoAiHvaGzKGff9Bd1P6rsB/ap5n5qq5sSpD1AOHTSlA40Da5q8fuS9p2MindJUJMUzBpRzppkVrX6ado6bb4RsDYBDtCNeRqNMv4EWZ04QMFdeTkiD+QTMK8xT1pZ+QAt17rGnR1Ks/we6HRtnHsSbwhw1p0MrhHlAyhk3D6hrdJCfppIAK6gX7VPJGJ1SrGjfWvO75a0yPO5Qwza7S9yfU0YwExmaP4LAXTkUiU3WQbNWBqf4+zHBLyOWGSjZ5MEBESlbKd+0MYuwqV/oQgsk/Y5tk/Cz4erHGrsWljGxwmky27aG7ga8j7DBV/IVoHBLOwuQhd9hDputWdnrMgPRRm7Agwi6q+YcTJUsDVm1sirwfqTZZflEv9q7vOkecsl0kekqczGbqlr821xltmCV8EYayiC81VpYsX4uSHfk1DSMOg9Jgaa5ephIiYfFXiFIP7QMGUn26vdI0ZkLFg4giWwhTm9ZaLGiPgkUrdUwOMUyyjo6Cb20DosUfUpOl199hi/lT1/YO0Z0LyRq3zdkthCa4FbzBd1xsN6zHge3Bd2zfd+3hiwO7pkO498w12Jp2saMBbf7Xp3Y2ZIdUZYWfYh+EMIR2+LxRNeuQcGXrjQxysuP8bVlOJzo3IHxRc86vn1HWFMThd7le99neSEz4rsZJOIyB6q+iVTDQKxnCWrxoTn1xqgpqaUatJQbb80wexKI9UWtOfttXzRBdPXqsEHV0zjTb6YcEpSLedU0CCn8g8PSMVBA0gOq7VkM1UlcD/Ol+/VJfelR6BhGTylIBpioTqzH4W/7/qlRn6ok3+GeJnYaU/1ZM+lqYAMcui3wNNFGsGeSJvkcPpNoBzCNTUjuWYJ8DG3DCe/o2uOfpmtcSjsS2RObtCRNc/YX4Squ85NoR60nMosH/u3t0+T2HJQMGKIGoG4Y0n8NlqRdnt8hfpzIlsJkRy3FoV2bSYHTsGGxqSS/iW8d5wRO00/4aZon0IFY8OW/fHhHv5hghLuLI3GTfscg4bC1+vVScwmk8Ep/c7baSDjQRLcSZwTpLFFDtK5k+c+wOgF5ezzNa+H7GT0WcfwV2+NP3/mMpp5hIU2Dyq8NMxdakz2xEclCLGZhiO0XMR1bz/8WRZDCakYz43b496pHipeFUSiQQIoR+CEkbohqYcfCTiLQD0nZul9/i9M8hOCe+zPjyliR+HYfzhLppncx78EEfkp8gWjgUJcudBeWwrOYLjzzaPNdRmrDrTDZWEj83Bp3MUVgK3vhwVoZlUsm1fCCYnGvnpnmc8gwN8DXLt4B5baeJGt2ZAacz52QNIOEGe07KTSoNWgH+TAjXCiadVDYRAUemi/9Z6Pi8sT0ZppfvUr087fEPiIHTfC/hQNaFKWy06JHX3THFIKQaBAzty+t/STPFvo5KMquigp3ZBINCtqf6UCZoGwdIw8C/TXpjEDxG+o9hljAtOcwh0IKxmLRzlDVRfVZB21eLDCJcR6jQNXdZPHlGQS4nERZqYD23an0g6U0/SamPzFSsCeS1ANP0yD6M7ggeH5e9MAl4z8/Q8h7OGa3wfpViHPNtlbMCgUAdUQAviJdUgNHTjFU433JYaCwDHhJteQt5CVBMb1acRPYvwCBNJa5KHQbLxUa5OPQx9wKaaajbXhr+wHRVDZLGWpip00zF4agFr826vYY40igmmQMIqfezIDuO/ofTaeDqq8pl6i2vL0v5UAzRjaI606mpkFFv+kW8xZlnzjZOlWcy0YQTPVG+YUl+91KUcnUb3BJD2SSLD2aM794lslJpqcJleQQQrl1QEovssSlA3L6HHAzPr04lzsboqcYlRLI1rRbTiw7Ov4uWrJwXKxcpt6BeHJI2Gs9jcqwO0kltei7boirH3HZXqYdEf0y/QWqmZ4pCUYnUvCzJJhMXvIGgEN0S/x1DDeZ8Q2a+Tn3Swl2wNzoNRCVaiT28efOKK16TzMDJ5v0qPxOGGJOuxNt2VYLp4AeaiT5QeNSLBMn0l1G71rmSzY8bs17fV2yF2Dj6WDLFtmL/xF3HdzWyh/x9FHLHWOrRe7oSqIxpvFavTaQLilYBMxdOUDDq2uxrMBaVHPl4AuvDnmgBbBTJWcLrHMxdxe+5n0MqYyBnvhpRDaKJM7V/BF+mlgvDYy7cdcRTzwm5AOQJgpuO+9T2BdPInCdm7tejzJWetV4MhGXJqYDqnec4hYhGKEfx8KyFJD1bL6I4pghGcMiWACoc3CA3qVO4JaqgyZJal/1vniS5aQDunasAVpsNeY741iEC6IubNEEEJ196irXyiFAb0z+8HlBhziM1TekwNoUY7duAS+xL/qVxJ3YPwk3HKtVhQ93oopOyzPS43tJM/Wbu2jkXzu1Ne1aVZL9PsX3Ca3MaqS76zO1wXIiv7gzp8oO8/uQmj8e7fHP3bHpJvwAclFbyFsiHv35LZ9Scy/2a/SHHtHQKC3HYYcFJtzuy9yQsabYX0iETtRs8Oei9GJfj6ay2j0G4kpNTCOSEg+TcS6E0pMfa5vFvUz3eberMHa14OVMHe5VK2ST0jkOngdc35v9p7864SCxrMYujRwH4K9D9xkiVWXhQM/tX6kpXhj2cRuHWz4xfDeav4PuvEsu0Scw0eoKmPuHQrbRS/Q9MZZwTsVK2EBAdJE1v1hP0XCJevKa9zPwx3jJjR8z/0zztS4UjtTT6adp2tZVApahX94VagmbG0AVe0h+65L7+95UswnTKHEL89eOd2UDsyoX9feFe7gnuZFiOT6PxCc0dX5Wast01VVUeXt+Asip2bkVgjn+fMx8+jJbhzaL+gn0gnni84twT2jV7hN2tMB7ArPIPPH89cITO23vE5v/NYFPEQ6G08NToCgJU6zQ4T85yncP5bREv9WM3cPKnvQ+LdPmzg1iz4eCWZUun2LN2DR2yGnIs54D54NLyyGQDO7g9LtTGECM9ubrV7X0zX8f9ikuY49dfpPVQqFnl5a41L+V/S5dH9wumxhHtmQgWloks5S51IQm+WkutKFvxsjHAKw+/6zaCWdf2DlGsscBD3fE64Lc5JAO1UjRcujMuZY1yhe+oDsnn/ifo8ULfgieMUH9wwWtfv/sSf8NG/5zkgj9GIf9D2FygJNIjNKJTVN4kevDnZ6FXEInH42Wi1te9nwIMKi/tDJ04+5lbPO0aUEivGFKvjh5O8bP4zrk2d/35uFmWzJfAj7QbOZC2ebeJPTEapJbsmmSXJJPkA/EX1aVbNunhHgitwsCxmItPxjLlpOllJDKu9qdzogQOmFzE+wHeQcMahorKLYZAgmiBaYn41/lFkTKaRqH/bWI4PjphLnaWDNWIqUHbJiFae7MJ+6AG58Q68YssDS44Ws+v4J0keka8fryXVuOTTodA7dYxvYULBxwvavsJs7GFOiYbIUOnu6Srp//TSD7W3jGl5kk4hqQ+s407yK+ToYscFjTxcyV1Tt2SJwiGuUbtR0cpWeTedt6VeEThKWQbJJvirg8TixiTuI8g6zuhIq6jfhDrIaQkRzHh5WtSeC+LmNDelEtI80xxrqTcl7aQla8fV2Ga4AqkbBi3aM9jRo8NnWxjAv23h0HbjDoUqh8aEwShX1O1UaPF+8GHv/TFK64v/jb/zNFBs6lmzJvVBRY/CVPImLV6gAN5+MWvEHz7tp6w7Pfa7NkPZAcEsk4pADKFIaUKs0QS6EQXG5hyVBJc1SrLmfwzyMAZ51ha6fo0HxK7jwRfF5xmj9v+k0cdor/w6J9Z7jpo0RYy+PUW3pyzWt63kVkP/kAxUYz5zGcIXuHnz4kifGCTqdqGmwGWjUGhnfHCoWoHQUOrKH1pnmaxP1b7Xd7r7jZzPVUrpbpw+BY7Va4zSiLLvKH9+G9Jnh+OKLzP/9g/2UgwMO2UNia5SxaGNhC+d8APyJfi7W7LLb9GkEJ2bsxgtrtyhC4fRznKHPKhonux1l2ewu44Yhs6zt1pNXksiC8K6cJXIBSKSr1VzG3/7MJpkpN5U0O+EwzQZv8hJoHMHYAeGpMgTzr7AlLt0G/aYTlJv88BXCQ60Su/jFpJVWEeI0qYaXIw+7CgzCEMXgE0+HMUEeXxfKboTFqplqRYQdfg3DA+Nq89+Lc9v64gg0AQHzwwRvuQ+OCgja5uSyf7LgC76+RoddpXuGB3a7SUZBUuiWrXJSmWNwm/zteGZly+ZeGUi2yGf4pKFcysq9Ux9YcaHc1cb75uHHDXrmu37J13tqa45Fnt29GwTZr+RvlDoniapq33wSLtmGyES7dpyvYli6f8ho0iMjOXwNbd3STg27F4flnCF/zy35vnkavqlMuWpEDiZcOLSStjqmr9xnXEt3fSdJTm8We8qio2uk+yy1LBf0gv+7f691m/Drlp3Drx4vQ4+eddyGG8KTthk/UMtjm182tfpRnaA+bPGr2GC657sEfjGfpSrnmBD6ybXL/T4mnDXGFSHJck40587C8evbFnwKNvu79I3FG78iaaKrvUyjSPUFA5cju5XBkZw1r202k7klTtrYRav7RS0IN46rZKttaOO1t12n/92LE8kqR2ZR6+Lzq3eaxcMlOG1aBLKqO+YI399946lQ/o5en6Bf26ovk8zXsntHr6F6qV8rO/+tFaprlK8Hesre8El/eD+fzjD+dOae9+FwXns+y1Hla6CVukYVIyUFGE/nI79poZBIKyoMdr37qd2bmDZr3bNZzXVbO5tmaqnsWEjSGpshTuVn5cVYpfcNmaZYv1jzG5nwXVli0kFznru4A98lVeK9bKaySSzVz28yq6JQ2DwXOaqlz1u2XAqXjYJGjzqmy5/yw77D1Grsx+hbnRRnYbnOFXxrZgXxzKEm13zi9cMH5AztcIfJheRi8k4kGhAuIlBdbjr50u+1LadT/7+2TZIap8juF4S708nhLmRWXRUPJG94I2T3TG/XLWPLN4jD8oe474hQn4v6Jq+EAsipNTamf1Tl7n1fMsDLRYrpKTPeq4g3oLfdJMdJNqyjTH304a3/zbxkQm+zpsp2wi4xCcHwH9fHGRdCcm4XLE+6wHwgOl44p76z7mofHKPfGa+eql4i60iQesNV50TD8qkfmh0MaKANXI5pUsZHGl7VLyDraner8FgJZOxyluteJtMgTgN8wRPQcN3lLFvFo8lbUxgy4+EcIdM84e8TPBb7lAIeNIW+hVL6Hd2+kovWumoiIge82qPBQwqeGf36BqyUuBaA6fKiVqwBMfdYVRQmxqFFAOCtOxpkiDozt5iMJoJ1Mb/O/ZMvkoxBYooLA1yajSqJukTG3lSUKYzeFIrhrSfTrfb0Xi9xuca9J8Ft5wehA4xGmMMRE5POfE9zk5M/bqdClrzpVG08f8y25nY1EMPUaXb6Qx54j/OLmlbx0BmIZQl5sPgajrK5DcbM2Jay98zHXCpaCaz6UdCXx9+9r3B/0KJgSExi39TSaXfaUfv4mCeUy9w8wV55DJv2eIQ9H07YPoWzTud973kMyD/CORlsK0MyYCw/GrV5+Y/+au8Ei13IvkBpnsbgLEW7QOZpkuj1pIuStmKNoW9aaRu4i1Jk3W/OQQ2b/JtWlYBQhZZmXg3a460/+xvVrEQHC65T6sW5vRhttHQlNNMz7yuYdG60zRMdP8dmDHSBnZ2JoAJy+Z/rTThmOeAidU9pM1yqI19iZAkDV4sNp5naymrzL5MdABX2PU7luqnCuQQ0lEjEBxOTnpOZ9BbXEw/d9E1oWVISOqW1IGFcBRVikOKHQkcc4omXFu47PzIiX3dmjexZsTFBjFS/cibH5xRW+9+ZhUNvHcXK3ztB6QcQ/K5Q/tTDELLQuXo7qAOnEmztcpXIhB+C/Ucw/Y7WOQXQpUfNBvvinMmytdHFTp7lDFBLq0F5GweKK9dppIuANuUCUcrsQS6WM8Jho6vKU5K1Fn4nSY8Jnm9uRjInSJTKNDOelDsMexPP17sSKBWgBqMoLGgV9fZ8OJtiNEj0G8ZdO60pET090WToeXE7yN83hH/bhmc6snykBczbXk7WHKHfgsOU8S6QwXIX3lYxY4xgAgerUnqV87TbgIVV7pJlD4zTeeljOGKCDf8VS6xHduGFU5wepDKf3o865rC4vRNPxKrEUzU0oLu5BvepCzHDusO2AMq0zIxkBbSqFR8eSxNtSCagrN6mgw35HZ0BHy644CV6zKEhKz5rYEbdn6h79c2pqRxPwu07JAfNR38dm4sIXOBELVAZF9AAgONjHqRsh9YgN8rtGlaNuZsQT/tRLv8HPityQb+4bb3C8UeAhtkc0yigrUKwkM0NFoxOBnbFgK381KBp2rwrC/pNiIKyUIr1m8/2ukJ3uvoMTUCGxoHLxw32W+xrXiaHHNXfdH76XGx+sekU0txGUw/f1vYeaJdgYy5uZ2elX4o1FjXo9WmHRl6Zl2BEFpkbMOmeNJRahzZ1iGimkDnQcCV1m5SkitP2t9OKFySxWz89mrHF37N67ZCeQ1lA5Y9/Lr2xCQHE2GQH1+MyJJC7PLEw+ekgLbohsCdwRZmJ2RkkGnoPZ6Gtu13SU7EEb0f3yjRWdw7+gw+hpcQQYrlaKbiXVcvphk0PMoAJ1ybJbzSYRKTYIwd2zE/YYUZcql10cwb7vaIqtiLg05sD4XBdM5+LhMuGFK+YmIgHNhrxKrPptQxHBvq+zCqP03UCz6HXODHS35hzf5cDCA9tdeI9lbu5jmeQSDSw8tAt8uyL0j1O9FK19iuLR320K+fKs37HltRvqCWbdxmHZc4hT/uSNPvTHX2YJuJHF/KxBVYQZ51xN83KgVEIevTqX5TkNyQjl+mM6vCPq1OsQsujysbUfW1fXn9Pj1KzSZr8MOlu+606HssneydnIz4Bytl42PeKIBzobPYcILyLnadOarqGCtmWPsN2Jj2RRfNkOLL2AIrcQpjZoKiOFX+i87Oj+zX2IxZxZxzABF1BigyGqnvEtSBjFwazwfFcu841BAwxCWey+09DUg2nVoojf4+Vx0HRhog3AN1wb66zIT6wgWDRR3pOqsdbInZQbhL1yvHn9S8+Pfe/XFHuCdH3DFsgVaVzLCOwGHsQ3lgMyxRn7fa5L7P6LNjMqTblBqzZHXunuNLd2FdIsSSqFqoDL+DwCy/TxKYlY8Px9ftNqMqM5k1pS0HtnaYCpbRVTtcszCF9Dzf7dtbM+yTqHHeuEqxX+uAvJW0je8sppZVLfgoFW8rCkm7CxPd8HTLuSpbw9W5ieMWKWIDXYHmjiN+/efbhUh/mK9ejkpBVWMkrO+Lrqx/y7jT1J5qiCF7UAKaAeqKqJp3JVprDNYFQqq9m+W/qIRZAAjEoZWiP2FbVeLH9uJFjnPLbL+byhAnmzPtt5PAnWG4/btzdyhbejWZvfJKyHBXZIoh4VoOd4WMpgVpwk4m80MtYCCS+d6waIvaHaYRhP73tjOTKPTFzvWEU9MFK442fP7ix+oglfRwRV/kg2uFfQ18k9Wh1sw3wB3m1WxyeawYWris7yIAB1F57lAqWGwig9jaBLLG7IvcgBVum0Bn8b3M0AQVDSvF8Hk/C1/QMIO3DOZcOgBol+vyDhYfLpHNd/Hv8HoKiyO7T874SawULU1CwSCnYuapGT8jyW+RRUMax4tKdpqGMZLyOCvpr32UEaXrUAegQI4rQhTo7UbUYz+3YkYkO+ncud9C/rcoo/m3K9V34JZWKa0+AMB5e+m257rvXRHPcEDvMsuZ9cmEAejEDNcKaZtyF9SqHZ2vlE5IrexxLaTN5bywF6ekWeRAI8yTk7std1veMTneTum6uTq2Dmpvo4El0gMOPcExaud98LR9zZu9szJGkS2PaMMRL1coaqPNnFuNrjUHJphVt9QOcwNWEPJFXYTPER1fx+iLQcJs+I1VXK94FdypbbwrAx4Km74+SQ24s6AFU3v1eZS+6j+GiiAYiuJ+obdqHOXZsDWzW3GyiR69E5FyEX266VTGtJK7XBV81h9oopBvwLcnEAWO0JtoftCzE7ilGz8tYvw2llrND0CWgE12sOygn9awbSJND273y94IlCkQG2Bw4Fpb6I6c513COXyJrn4tL6E/+eb7dGfpzMVpD8JFY+ly3XvFbULGmuQOYEJlF4RHchVioDJeTimc8mgJwdT8BBr1J/9xu6Tst+jR5hb9AhOj14HMLPymHwE6rmxmkIuARp5gJovZ6uxNRM+VWbhSB+Wjxt67z1qNIJoBHwNjvc4puKdFGm52o99bhJhZNlK4c9OEuTB59PuKI3eN042FujiIVfVQgoE3DEHD+bl/P8R/f12Upd+cljBdgotezMCbl4vtyvd62MF5hGQbxaPw1VWfAr2VAYFkaJBvRlx7joerBAeoCJrtQ4z+rsXHtLDUPi6hh9CJbsuc6ZXzr/KKoahP2Ncp7WLHPyG5hL0XLz1Nil84do9/L57/DeI4ve2+4FSLb7ifaIbdtpwej5dEwNEJ0TSNWgp9doukpMdVwWiBnM3bxreampf74znvDIN5m/Vu/TMEuPNrmubEILWN9ZfjRmxzxBtW6Fa46/JRN1zCSBPWCgpLcwM230+U4/WJs3vV3Sto1yRvtGw9/EVFMOZQeeyp0wvFUT9lqERPqsdAdNX5KVtN77eJVyW4pm9oxhDRCL+eyWJAbM/5NEhhTdbSedavDPx3SrRIHmWuqw7HT5XrwDbWzAXriAE8s5E1zuxc7hwposazjXve8kWWT5l0FmzWyRITp1tkCAzc0k1tx80lAnNeGoZmCcblg43E+eSKPDCPQjH1h9DT1rAVLe3V7prpT54TN/aS2MuzMelH9YtTSL7OU80YEHoFVN+4gl0rCKSz1PQmh1Wuu5vb4lIQ07T5QJJ/BiIJwKWSJqpPS7dmNvSKBmMyX8MVjHAJzygbJhRP1ojwhq27p1SRbVABg4GlQyi5B1viC9HDgFqDm2KQXxrEIgXQeUY24yg2hyEhDEhZriDDyISLywKAejWTJRxOoSz0t1hady8c8E85ptzZIbqFru4J/Q80+jf03eACogCBwi4hPnWjIGAjTL/0l6ltkhTo9yxDY3VAgP4N0RWGQIoh6w7by9A9wisd1sEdEZR/8w3s53weNAMgsE6NdjyYSPc/3Ppf89HvymPESaXeqT7CPQyxbzlgC3SQLNCr0Jj48tZ4kAfWCmN+ftQfBf/SU8guFjW1yPpVoVm2yRRLTpx/QwzZyx+UUerYNuRJgk6KdfcskMvqTaBBVe+gXmFfT+aKoewMuEJSpYwesDV0kdPhDl/sr6deKNQO3syr/DyIh9+e/uPrn+Pnz/Kk9KQN7zFp5vMTomiLfw685CWM0s1RhXywH3mTCX1KoRvtxpAOPhWrTNPM9wXZEINxqyW0nuJEiP67KA1Ty2jATe0W+NBc28dpJ+yi8UA6LqQLyibdF0alVSneqM4qo/qLSCDVvzayhe8NPNNDM/g3EIzrW3IWHHMx6VNj0uzXRlEtcLckaVV9wMToK1w3XNs6fzLiwy21iYEUt5Y/echj8nk3+zi8Hu67nfBEk3CN985fHBP9qVSHHuEvtKe0pTEqGKpZcyvXXE+RIv1z2wWXVOeezz0i+IDAOblbl++UmSoEomBCCyi/8+7/CZwcmiRnHgfX13hBGYU8m+hsiIfth8OR4YxAdMkndOuu/YgJ33jq5Cyx8NlYx058P+Ed+//dRdkCWNtbrKf6pLK+GO/RP7BMsdNq19pt7jOQvXdYr3uNxN4w0/+fBEVzn0BZgu0JdSXp3H//DHggwuRFVOE8N0FILT94xfrkfVBga/cGGB6t2ZxUxX/NOfQsFfPDnuNJtsChavRw+/57B2jqlMXisj5I6MljOPGdZK0n+2xPSIy7HKj0NXYojHFp3z6uf0MH6T+/6xNUJU5j4YqZFpX608d/ww8nauvSKfJswDkVuRqkQR9pR6GSTJYeJ1B+xaRIk7rESc+Ka0rlG6gTGugMQREfl++Gy1MKN6f5UkfnqND6cbuZqrTgG0PXoF3hAPviQbfFpc+SKdkmisw9+Q0z/K4agMF1YEpu4w7x+sTKrw6yEGa+RsJwdPUWcNk+z2VrkbZX6W8zbEr86Tr8evnyOeb4kb3T2FVIywzxIOX5MnnxcFS0wYqy++yuCbOzteS1T64+GZID+IuiGdlReripxlz2Kgj72zQirNM3uEvIYoWDhV7yVkzVM7zI8JJYspmZOn9rOcFNDMvxSJ/Z7RpEj+fWBfGiSHbU/yIv+qcHTJeExQ8O+1KQn+9E1CwEPaBnjuzVFHzz0rqqy2OwTDXbfM+BG/OdU3mmCYaLh9Y4gqU27B0ARJlWM3JdpfqgFzI7r3Em88AaA+IU9iizGQ0/AgWa8ErvJljCKyHmqTlQEifk+BSHgGuFPzH54kKnMRs40ekST67Wzg7Oz4r/UP1mnnrXjr1N0Voyov7CiFmniobXq36jL/FVS919fsOPcZCznQF7tluXnS0HtVT/MrVMx9Is2DyCn0yjUaQ3i98e5T/qmZ5EVMW8BnQvWMMGW2sYTWUawQT9IXlf6/NR0XnMTp+OwXIHmVlsf4ihYUspVQfxH2X/muBHPyo5m7o2d/OtxvWXiRJ34g41hsQVKphVWrkkGzXIeRQOuRIJxSzW7xVhUiwx4PBCMriJtYwDpRJ+8os6xa2xmHBffJtwfYctQqu9XFtuEM2bEFiLWXYuriAayFBxcf7zb8RGrZEl9ciZqGgi1uJjptJclSWolJibza2hJ+SDvCLfDFmyBLZgd4kleug9drUXKN4eR0wcKNbqLWkpBaUV7SeOy7zRWzkTdrw6eJrpMsRoQYNn0/8TWjXQqV3FDh49vxHiH1RK/hzfz7DWaRaD0QVi89MDZ0l/A1dOxP9IYigu0OiYA4Jrs6Sx9EsjHsj9GLmS3iGrFy70eU7tdJwhgjtbkbwGQOMxeKr86hwLB7Q7/sOkE03H5c3R/ho+FuerAsHKAIBJdMbZ3ETMn/c8ocR84oRxBS9pFDiFncKCvxhz4zR46EX/OxsrKwuXCGyQTGXunb18kPiKX/CgT3Fs6xgNxYYQizDV5+INCbo4BiuyJxPUI2OIC/bN4os+ZKcEuTTCFkCSyrEIldwDrLzDJKF8B7qIjrxFZmw7oEL92DRHmxLu79UmLcsYsHHGrTF/FaGqXdZSAKjxsBS3u/uC4tUSSnDS9uWlznELOYxb/jbyCSQE/e2LnI6Yo/pqB9CsiU5/pLYO66ygyTkmpwnvOAEKZJQMjQZlYE0Ia1+VHybOoPKp++8xGFqjWAnUJJvbiSD+AcFeCL1wZnej/2KYDtd0CA3ETPoTel+hCGwN/1exU6kHQbjfyQoAfyQ3jvyg+HxI/oDUnEHJVAQXCvma0h3kQVxSSMNJdCb4nAxW5VHbmcyPIgPyKvZGJA6zEhw8Ql5Sv3Lcj9VO8cVsfVAz+/184oEo8bn/F390D7JHYLYttmsH6c2YeBzo0C01/G3a3oNPIQp2RavRY3ohklFNuGkOk2qszcX5HVs9waVX/1AiODv8D5D2DA/14AM2ctT6+LyST/scITNuHyTFlOCANKQ2xB/vL18kmm4zHYAzX8BxUZsyr8qaGRdiahehjPyIPv9aDKs2crdgcnbAQyuIqSozr3WkyOSFknpfIDuawQYBc/9VWSv9cgZmcKAqu5Ra6tZE+5DMbS7/z4AwU0YeI+4Tum+bpwtmJ8ybp1o+pLlQjKZgZ7Kj4+1sm1pU+gUYa9vZNdN81oUW3olqLklgcIwaOlejPc7yXWsMGC+zxi3RpQGCJXCh8NXEwsCBNaUI2cFTYDfTVGRtcojcTJaCweT/V4x3GQZ21QyDFdDm92DNEpgG+aTavUR8EO5sbwodG9sb4T+bPZ/+Tfb1Dzs2+kpUhz4Y1TR7Hbxuup76av4OZnLfCYRMsciPd1fxUcShi8snoVQeOiyubVaaNul/j6QPp1+56RoJbLFgyOQQDnCO6/UV757MU90LiwXghAdLBOxzpidduyPp6qwqMuLZATSN+kXN/48oE3IwHh29RqjpLmPuaMCcRPo9zntTggEHh94srWQD790YDgs/+IadWausAbF4Ak65/IoRsStEBB8DMW+LxYcVI6gC/+2cEtnjrIPVwWx5GOwcvFrCaklRv1JMkOmp/3u7E7WD5ZVUrEtIfLgtK6Rox3CRSmSEaQiGsOv2rSWQKo8t2iGPz7y/GIHKwN2A7o9/kQtIm7hYA3q4EeoNnYqBZ8Hpj21F+gcVtaY4FytF9AdHWRhZXzAumcOxVgl+qWTCt3HfcAjWuUm7UyfuZntnW8EjkGf9hTBytYkp90XjOSvENCWi/VqMT7wWQ3tv+2cAG5nVSuD4Kgh5ungtR0leTAp0Hg16YFu0SBY7Y9ac6LUlV5yzTkiPFDncnyXjOj3aFVF0VtMIfv6w6ugm6gCvzr4xdkTiwQ+85HyP6PzcucSYZ0KmaJ1/I5eq77OjskcwtwB2jINq0EKT3NWrnIbn+IgzOKeojtdGl8NlQLuZ5+Jnb4FUdG34Xfkri4XGeHKx6YDzhRTCscNfIzFa1fKjw/eUWJjnFNBDIVFm1dQBWxsnthLc3gF2bfiNRHI9F2KZebEWheJqFP8bibAnIYnezclEVEaCrbxxFqv+tdfspnN0t+cXyfDVCypmr1Y6neVGuDtLDei70Ac38+HIVPXNEQc2dcgwqLT/5hG4WKmJ8KysN54rAy89lYfraa59+1mX2Iyebz+TyA4+jZcmXyhdXYVcpflQ7fK30mv2qJ4c1XtGn/xBVMhoFllY2rTHiYt11Rqa6H64jYoY2TWgj4qmPX4hXecPasrVaAWqXLG10yxjXhtSw8P1I10w3z90F8o0rVl8i3rtDFF+6ScSZVsLu8N7IhyZqIMe6kNclCMu2zfLzZ5L2p9lT59yd6yoZJf29zz0q8rRWHPPZYbtVLLI9AInxD70w1+ywIRMR9zAtwDjNKVozjqLXahCyZ8mb9JFc0fWcSUgOgVte878dwZruIXA/erGJ/xMrMj62kB7WjDHBjLNIFoC5Fjta3iIXJABFrpBLVo+FzFBZG8IkDWaYkMW9aM1lO27VSXCl1i9zX2Lx18zH2GCX2eSKg1ei+2FfSAlEEVBsj1dADgq4yartnyFnHxxOh2qzVymOlhTWA1is9FiSsJorWjtFS3d9OgvVlM23/1tbaxze8TqF3kai+/JP4jRo2vUqe3/5J4HskU9O4+YG+HsdCgNcQOwAk5zny9gRBl1ZHfA6FsOQxkzlJMyv8ldyM1EaXb40XVKze5Cgy2l+5/ZDHw1/ZgVNpj7+2lDvy8X01omkTTGsqoNPyNVfvmYzmbeB0bolM25zYPlsqM6QGqnKvKA4Ofzv7fAf4jn+uBXDeusjlWYXEa3LZMlQn8p3lYZZHlJsXYVgAgLLljgJ6KawRQi6xeGoTdJf6bqFb2hAUxzEe6FywbjwCWJYVeGHRzUlPYlsZwHOdte0tngs3gDTQ5Md9WvwaAKBrFUNIYJpDSaUAzcPEGlK8Nl91EIYTpiBot4SJLepR1lAti0OnE1sYRIBAR86FP7K1YFGdhJr2IUzEUGKJPwR3QsD0tDgmvKRZgOLnel+OYZaNQuh0WOw5lx24MN0bW7K4NI8LBE6tXwRNrzKSimfoWYls5IhXTADtmY915MKAkq0X8w70lLqiADIVIhSWWqaSlbyieYTKMbYRMO2eD/jiCcS1eSboL6R5NOv61weYb/Gyrx3kvLyyTR/IKVPMj+GjHO3X+EuYeGykvEQc20KOcSDkYgwkpF38s45UUZZHnaic/2dRXjTJA0nierDRhx8k/AFpP687mBOvz0Em0n/qNZlga4LwFfcRLcjXP0JlsVqFJWG+ChEq0jZaESbmGsFviV1JCN+6a3CItLBNTb4z44tvfsgg13ZsfgHBU2iMIwi1sFmr2LVhSTKcYSR+X3VHj3zlXIPaz3aJB7ejojQo5N4oWpFUOvahz1WJ1V8EmGuY1johgHUTALqh0A2VduVn/D4eHyJ9ACTGrhyLEvsA2NXacZ7HQAHEjVpyHhTiFzBu+UWQY4pFeK27HaOoJzTedHjCV9roNifLgp2dQyeIQuEJBI7kLflqtKjqbwk16Yzc8FV5C3fawq0iMaEg/j4gTsAhGADAwQwpc2f/xbYdBpWsXTxT6OoVzjLH9wLl5kNG4etcvjrrQLyCQXkLJ+R4BIfcZydcGKBK8tI/LMbALI7OiivY4zVQq1wEY87WbY1lRd5POjp6Qvb7knl1rQk6XRmbQKK0o2dYqeicvcLNsIe8x6EqdEPSt4JcxEsCYYI/i5sXd1kJ6rCKZ8eauQus4vyV3Sjp6WQXJlJTwOzyg5Mr+xozTElyrpJRwe5zmc/OVYEdiK4aVc37Xy0m8p+gEdW+J7uRDlQNICyfy9ejb+D++gB0AslE1qBOwZc/9VjRC/FXPzsThA35f7iDWOaV/qmWzF4KJw+U5JACc4E/ytwkfh+qVJ3Nb41pU0VoXOVKxgXXQCvnWoIZOGwZh2ODz5g3MEL9C0W8JTWcXky1Msj5ddks6NhuYxyMShWO5XlOKTBcZfSHiWPcbt74BvTo6lecV2LMZyCF80fxPQ15UEPzbAyLJt9FhNWTgjdACw8XlDtKSC3c1BRg3vHib+fBjzb25D1aXaTQlLxmGOVu3owZXgQ0Vd+hZkWFeJsfCS1XKszuafA8Qvhu1R0CbeKCwh+2Evf4kRDOcORuB9Bk3f8BnuncyFv2YwY5ZKaIoJ5hgyes1qlhIpT9Jydad+0OtZlngkgzO7JUQqZ2snKV8TAqsWjfaG/6fwrVvWUQH+YoZ/MOKUsTSULa/M5J3KST+cGYZp3fLSh89fGThTThihNkDym11IIqYuQazXc5Aw4pq3k/m4xonjIgwzrELh+pkyiWnOvQrziRTIOGL6l695LmNbr/rp15JfxfkrQ+n4xyZElDczis65tbQjTzZ8YYUTi6J+V6TC3DlFLdh7M0i8+gQhuY0EIn7qqwkP7BkcW/wpUM4KSIhxWmOFnoBzL0U1fZucRdQNkqOMlKnifN0jScjaxcfsXXHjmdc3k+863/qhUTBLbGqASwD6tPnbHXPWUHB4KUPrRRRVdpXL5ZC4LHh3xYz/BFWTZYeZ5+ZHUvOw7+xdBD9jiWclSmKrUjqwydtYY9RrZuHpvXjCmyUGXMpiByYfM+mkE1K7hrQVpkgqiM8vl13U9WhD9vYVcp6lPr73adv9u/1l3N5TBFWWnfzg1pVluBTEDLsW9QN8zzCTC2Dc/CaMelUdnpveapwuY0+dNh+bTo5M9h8ZSpEr5antP9F5D2msTsqVtREw6U8WhJfCmob47ijo/x/umGIuHJkmsXw3d1cTYHlP0ZdkCyi57LniDP2GUfmyj6vPQPfCiKVb9ttXo8cWohckL0y67JxAcU5j7PCV1IEMdsn+MpIhYW8jAAUbnZSiBG3zB5o/LawqXt9xLI+F+GmbtvG+jvI+m9QdZNG+Tf33xmtW0aBSbyLl4/m19pIK9KpUzh/wcr3xn3s35yIn8KodGeIX+U3/xwPJ47VoHyUUYHreVHlp7UK9gbNa8qV4TVmT10DtQ7YlMhIW6d5jWYUaFdjEIU/A5jlj+syzao+ZakH/vTIknoezCveiJ93licXv5o4R3zBm+jwc9A2xdtMxeB7jDpaUMKyI60yPwAFKK6tLA0G019O22U5q7L+85K3y6XDAG7HeesFJBTdtorT9cmQdHtWtJB+jCQIruNUiJogiaYcyP8eZuK3NmwHbzsibUr7Cv3hAAH8tWpGHFHYVfwrMFE1aO0IbCGsg4f9YqU87rYmiIUvp49FlV8PmZYJH7++BWFjTmkU0kSBehfiOKidf+Mttuoh35PioribY3AEtOfhhWk85X+YICq/k2N/C+haNS9jrcsCLykgPq5DWjbz6At1ILoDrFsj31vR2rrh8uPytfj/SCEU3hmT/0heVXc9cTxa356uzh6VYPFjlkAnWpH305nwwapDG/a/2asxo2xkrUscNnE2ELJXJMi4U4i70/l4F2bbwOGJgfxyfXQX6c30SQLfqTg0KD+fUUuRcaUwYqHPrUyfPBi7Bap/xZE2MklmNOln1xu2e24+U0YdYnbG1ru99eYZt7eK58hy2Mgc+CxuUohuIVLmklYOZPwlCdmS8KAqZwLZsLBsbKg4tRysH+5GkZmw0jkfh7VJZrZGl83cs249Q/k9IRrUgmeX/I+XUbzqf+RNt/M0QjiKRQD8q5+EQUSA5gFPZpndq08wfnGlFRlgwJqCbCeB5cRVmDCGZCaUqouXrVoaX7VjibyNTNsxeTPxXvXFLE8q4zG/B6wHknqUUJRrO8i4XeNOIFTbp+7UCOlcAzt95tKetAFJuKfsvtJGGJE0bdHe/PXZW+cMA1B4s8Z5GZ560q5RU/gof2PrJPvcrgqlIXMd5fXPM8gzTfDGyGzTui5VilMCvfp5nObWLD41FDeTyd/cuv5YmZzQPNYJmt7ktzjwnpIrlr2iGWEI4G9sWQ1m2lOssmYofUduR4IW495fXslJW0DXlQitV5Bj7wPPZ1EtCg6VzJBXrZbjzZJ1K2ZYa/uPRBhyCKf4THDq15uqrVFL2yz6SzztEB5crFUYFk+Ma/MIey/ii1wqRkBj5dlXsl9Gqeuv815E219hoykoHkI6CypFf7gbCncUVFqVzJDnC0FiIFmSUrA42Z7AOUiJxXYeXxQLCVxrGNEzQyeEm0f5UjCIZtZzwf5EsFkBuzyPXGEFAR2im8ksQUOiHefEL0OgrfY5zr7D7qDNdXGhs9+/adWxsy2wVyuY0cNFeAFjiWl+Nm4QXEK3qP7HqEYbiDrOb7NdDBbV8GEuF6ORScTksLpCyGpGZ1LSK9GlW7Kb3OUvdrowCD00sXFbsVJX8577yn1ZDXBaNmEtM2LJe5GIIrrjZLh7P+taZiGRHAtHXn47DEXeyJGTl+jlSRMiKrqTIcmuUNYYt+xzMMIA1D0z6yRq9Ekl82aoIsYnUYRwDVvEHE+HxdGhTO5mEZy9bCmXWtJ4PzQsELu/5TA2wPXJHrLRtqRYCD+jhUk21W+XMGsZF436GdGVkWyx74nA7B0CYC1F8eIAYhX7lNmvbjjyFO0/996M6xiBGoGz5KysE29CT8tHDxhXVhPIKbesidpauKZMbMlnLTODuDa1pvwK5EbhfDeM3atq3S4ome7A0NUPaVeTqoa8pSGXqXbZ0l0Q0vkejQ7nVUpSlC1GRIRYmsnsPFioteJZ/KM+yaorjHKUSQJe3Hlu0aBnQ+wsrcqix0g6q4NSCBqNov3chdd9nHA7n6Je+b4WubmuM4PASXHbZeDrZihu5jOEZR3hsBeejWeQD1aq3eHgZEmS2drSZL2qOPFXv3g3LBCWSeLtgdCALLAn1G6VL9VfM1VlXuvBI3XUafwXtl9lGdnl9oHEyCpSPnV0gpzWVLpQOg1hhzfxs4/3LOdMcM7ko8e2xfYnPYVJE5inT/VxBnJQ76oNyGfswAyYT5yAlmaYmgCvXAtLY/gzeNwPo5KKkPG/sFUeDzIkPKIK0baR6SvEtcONsRdavvto/KQhK873CDwp1bGNnzX9nk6yWd9tK3A6pqd6/57bUoye/3lQ3SicsmRt+3qmwB7mPFRIYdWwsktrRoFbbXJZAVKTZP1CbEXJA/OPAw2gyfQuPedDyPi79HW/uhty2Jzl22YrPXH7m83v5EYnPkaa6N5tCny7YxINjCRtTPb7DI0E/RpxXVqumeXdLOEiKuHanOp1dXCat7SkcLcmmqLtUn5Na1T0TlUrCV1ma3rXaekhtgrZA/vvRa40CD3ktRv3aOPEtCFO56eRK5dQqZ4QYzPtgqZQC9wCNw0Y96Dq3gkxron96JU5IV8i4kF2OHzLn1du1ku6eeDnC91SvxStbA+zN26ZRjpvJlXMAdQpPt521nn7bFAV+C9WEo/zEKu8p/s8O7YBW112DWFCU+wCwEh9UJxcRSQeNZKOyeyInrjmrfiWXLz8nkymkWBg2I8FEdevve2Z9/9c78bVKxxiHGdSYMLheUO+lEgTbi2MypRnMQtQAs4+EFS+LEsMXsOXHgs29jTSol+uAViLbPLUdLCBVIeqcPWktJr/SMs4PgvV2IDpLM7DjfVSNDLr/nLKCKFlJQbcZSEEq6AQ6uYHGAi+QAkkHangkcQFkbYEEAttQKYISMNM28WBTgqUdLbNDTHPea12n0LrYFbWVrUkeIe9gP+WHcZb/KpgNfF0Lq6SuHhFTYEyr4u1040/JmZOHsFXIEce4ssNQDdcQD4wrxLezKvaCzqlpr3XKtk/tkyx46jUbKyQMoGC8M1P9L1cEljT6Bxh09fRm3E0C3lJpUPQUQ2+1ho4gyQKqPqyycqXQlcV/GUCXFeoGlV8wK3P/VhtMBjEaAE9xbLcg4l6wLieRbF9xQ5jsk8YgusTmJFw/sTVedii7F+eJywhZHCJs9VLvQsO+6d3ya/hc1tI7Ksx3zR/DMa7qpTmx51rJqjoboKcBE9ixxpxszGoZy2dinyK5Td4BZoS+5YkjX+fB+eNw+Z8YelacWqEaDMe2f9FaFBsKiL/uGOzdjp6iuXUqdcOBu3IACTJc1AC/qnZvK37jvHjCU/wN0s8EipMJKU5Udt+Z5usNx8WTtRaRLKdNvBzlJtLMvE5fIsXK4lSmdvBNVuHYBdOQzHAcY0Vd/VrNsk+90wD5ib3kQO5OB1I3W75fcJrhT2CCwvJUlruhrZp330eMNmbPutrvUOwnsXV7mtQ7QQyoK2JlZo56AMyFritYTVdp5EbJzdqarHZ32xJXJJONVzpjttatTHWamh1eJnGaX7ODx4lyQQ4TVs8MdXvUVeRpINSURXNhLwVbs8gpBOj7fCISFeCeya82PqqNItZj29EmGOduq48Eptlal9nvMCprspHADrMh2DW1zXjsWBqZNdye41uH3iX36ln838pcv+xUSux4JCCFnnFKcOzo/6AsdAoKRbt/YufIV5KYG5H6H75H1/Zv79HclYOHowo/xAI+9t64LaUr8l0qqi0eMyinppffveLAVZqY+g5ZxDL7BEOMWk8KV6ELDbBKz/bAVxRELoTKHrjdMZXbqQdBq8RlwgO2fmq0QyPKtVbJ/GqPRkOvzGt0/Ywf88yvnj2++H3xtgZ79/+u/+qTjsiuy+dqed7tTGRz7zy1omr6jujqNEaCLXg7oHDwtxPIV0itjpHaNrPKRqXUI+Fqluihz39f1kv6tK91jW6St9nC450ZCDnTjHPGqY9RXAIbKnqBQ/9XS5AAVTXrl4I/e2rVytPWL7L+80pqLulqAgSv48h5cxlKWQjFB+8RG2IlD2DoGm6WqB7dzdNz7Vp4ndrhbv3viZy+gBE0dBFUWfbC9upP4CtnT7pco1blie/aGOGkiW54a3d7wACPrYzJEfOj5TsPP3l+/LgbN1S6bPYHQ/PCy/Sx//7n3dyrfuvO1INgrh3+Dm9NQSdhTaex6BFN75qCi5USQJjBq193aYKGfUzlvVqrdWKdewc3+yBwkn1gv+bNzd73J8bs37nUIeE1tlLp3gHZaVbBT+t7NzU+e0OfY9HMLq+acoF0s90QxBYpRpkvoo0M6G5uIgYzOrf4ensCWI9hvcvTVaTo++f88+8q49piX/cvGzrW3xp1jiHPbAOSyw9WaHQuxqVeSNsvp0Whw2HG+P98/iqsXlkGX10p6yiweLHrOLWc56TttYWjYOvIUt4elIa+mjAMK8Pa0WeRNFxw+MHmEf3NJYX9kURL54R+dBDbY7LCYLdeIZSSV51z1RTP/lzPo52CjL6wlq98myZTROcx8pgNMupzLhjC2NfWPhKfP0xofPwoA0ZzrS5Wwk9md0Z31q9dIfkjR7GBcJ3qxONxNQyuvbLJg8RWHJS9ssJk14rWJcjgnpq5XyyUQbTaK4qEUu3KcEjGGXwJ27M1DMqK7hUt4xue26BN5ki5ByCVY8uzQl4T8UTYn3mMfRapqAclbl7KfOzZoqjVOXfdqdUarvjP70unX4zEtpf1vdb23eH1Qz+dSzTdgqOaf0zmftb2RntGNcCIfwkEScUzyTBpDl+Wc8txLA128qacFiG3mmj/M24LMRdAAKoBxzd+O2CYiRqNqwNJ62QDVC0j9A5gDGnJ6td55YpT/cSEFfgM/3RRHfv2krUsa6F2AH46t4uc34L3YTC8sYI5mw7rSDtS+sA4BzyYb5PWdlqxwc5s3ezHmQRKEfJ9yTPPTrMOEFshkfC6jPL7QDNZ0oughLVgXpIgXKHsimDwwxG3xfS8wdSowE8TNeuie4fX++cbD58fy3egApBzecfAHRQs+uC0S1J1PgoGLXDaCsiWl8C68Hul2DL1EZ6jcktgkYSfFUN5WtH4oQW5EcYzLAN/wu+oz0TJIOH33NDB3lQ8KsiInYs4nECvOVjVARRViMALGJ8bsqoQ5ADghWHbybo26XtqcXv98vr4yUoVWRP5JQQdF/iJLVTSBhGyhmYsW4sB6ZG4mQ+oMISVyf+NG+g3orDjFShRllt91DwReJ6J/Dx+GPoLrtoVrZsRsnUglLAogVAtRsHEAo0j1JNEf8VzpJFzuhmLGJaImyYw3aEiFX2lDzNaD7M6MUA8nNvrpRAZDhn+yGPWC8KOmND9lsb0BdNxKosR7Itgrh//Yacfg4oNoxwosVVnjmYKMWVz0q4tsNy79u3rvB2HAC6xk6TL/awI3OgMlqOiC/ukO0j4SJlo8DZxIhUU9EiHX3xUu0QByEn3GqGT51RJAhijwAxHuWR28/A9XjeUcNmVjWrwLrfeGZv8WdFXCOxhcBd9LEjkWK7QNgCR5YdFdda4F31ZUwAOd4pegMlBtN0E3G5p0BoFlr+ccgV+uy3ilRQxsgTV+9PFoYjcxS5tVTRLquYS7mXjTJhxMWIgvRAIeGZp60vwDWrw3Tr40v/+YkmkOGvD5fqs5r9RYHeBq7qEvd4bvfrMqcZwfH3pngBwpJZ9TQOVtOz+u1vt7jH2hPvtY9mbrCdEyBebkCfmDZL/R7/IG2Y0dqQ0CaM/CxZUIwS/lz1VwL4xsXG3R241iZtQtjX1ks+/djb/pDcmPH5ZbgMmu85/dAMt0bKdiuotdoRGVJCOx78SUdK4HgdgG/fJGmcCpo+cXdBwz4wjHmNo949LXhtRA9zogqgDbr+6nm+ABZHdj2ZPKgZ8ZJLYsxC+ENUeUDoDXF2aW52SBbXXWiQbJyt3EdSfVNoKjFGGY39PCNXXZ5ov16ZU5PN4cSOYspIsBEhqn/mBfsEvdCMKjuyQUWiuZX2jfsvCWd90SYa6CyOuxi3XcU6F1IKl24xRNqIDOZ6bC4nS+3MrN+AtA6XTu3U5DfFn86lQyxmV39BKCl+b/icQrddf7My2e9i6doehquEO/5EbIFYnCAD1YrUwWhkkcNBvwqVWhykwGYMfQNBXfgHOsg7mju1uaLzXNPTtz6E/Wzxl/nEDBxd03Aqec/CpR/PIdNe/4/Jh9Ry/eMeb3ljETnWRhWJXKW+hHMCNr9/U+zKlygpLOpNB6mgcoOkCe/w/t1dmCbP7CQg/hoz4ml9/x82dkk05j90jclf9vPp3kQ+ToMoBf3xbYG49GFlFsX3ofxhN6Ez5kV66ZTPGrccDyBQcRaElJLzOK7dnryWeVBcXym2XoBRHUUxqZokaBZ+JG7UZKafcQMIHvY8zT+It/mIZlx7WM0L/vYb90NhS+Vcn3qoHdrzSiVvCEo7EkDW+lbbUET/DuyjC9sNgC6wLx+IpcmWfm2jTewgM5yAiMmwQFOI3egATMrjENWz3AFUxpWi0UYwhJFbL/NlNmzj+ES9n5AunD0qC9zfgA12q4B0AFlwN6um6Kiw3DGNuML09Is5kbgeYoMaceLtmKX4yrLV3lIpxik5pwPIrdy5pJYxjqWRljhx7n/ldN5poxGA3v/iiuLdJzYPlBiOp1ysJ8jZQ2Wo8oF3H4zjjdi8+RuHpv38zO7Kk0moDlUXbPmQZ59yeMIZocOeiwXDLbtH3HCewT1B/K+LJzFdXBZmtI+sMTNJCDoGHj4Rd1ZmXjZQ4KeXZ/MQZ26vgSSlk5583rEk8SK4tmwp0xSoo2146Xe/B7Ha5cWnf0haA5/Sst83TXfE164UFYlAfhchOps+gPvgegSo4hyHfiU8CQLcu8iprOHFNhAS1TJE8GXYi9NA9lv9b1aduClWY2ctLcfa7xxq8BeAZAKhVYC/tLmbYP3Er25/NWX678Zauo1T0xjINz2G4CAOtAJGV5EZI/wO0nWvWhm0nVmsQC+fJ5D//IZM5VAiOsFv2Yucxs0pmaYcSNSWDDhtfSMBsmYNMuid0WY03sqftUX7xPioy7DH89pDAEaXUDw2iFkFgbbjG+23sIMjb8VrV4msmy0YxZesg6C0TxXhLWs7J2ycBq7g5AlT6tb7HxDixZVdpQicPfj2NQEncgN8gC07rzt8lQSNn9Nh58EqcTE+bc540pIRH8Ns+dIROIE8ZwpK+naR9lh7nfQUgh6IuTZ+l8icN6LX8zZOkNioUzOWVyZRbIGE5x/Wz/6/ACQSU6hoeZBcpf/spErb8j5PojKgfJrATTo3PRjfZCtcmxgzFAyKpzAPp7Yp9wRgHeHFfjYt25Ue9wkbu63r8dsAmX06oBdUs6AKYPzCuMuwJaqGY9iiS5oSzcQMhpyxgV3+WBWR2K6Y1zCZxe0ayqMjqh11lHXJYKDEMkA4/rkXRqe8Sym34VVPe6ZFzUhVT6IrwTlmqdQkQtA+RWiOd0EAbPZcCInN8++jSYfKJIKzqQ0l1lbPRzr2QiIy4psEQLkCE/i+LLP6gxot/nU8KHZEo0Bq2XtQnhtrowRUic1aidxCz+lHldzTspVjbjQNrC8757M1QSVgPRM2iwQPB+bDLzrVVJuCpgk9qybgKhlfPiQc2rrOvReH5rrEL4dWsZlef4sICah6A4sQdUssQMHK0jLsC2bP4O/iG11EwuBah3VsImywcVflv1svjPRKwoIlDgdFvsrMtwgSgOZE6+WDTkwmnFAKJuveCW2ENnDjtRpDH74nkvKRaJR8+3BZhOVBqlYifF26nkmK1EhWE5X1LDWkdSp3rjJUWhyxFHhFi9vkE7N2o2hnz59/icdyyOvXwch4AcuES2LHjWwDtwZIBQ2zj1x30M20RBxIP9Qc9RLIFocG8DzeuCcyfoAgD3kFteKDOBkjSF6ClNjIPesV9uCmY+BWp+E1pI6QAirDStzeU0ewvVdX+5QnA/Jy6ydGz6l9EvxmLcX80wzjyS2JPdjjqMUsgAhT9ZLU09mOlz6mHyMVi6b9Mjti/iazj6FaGXtTZAsGiGR6LnSPuWZVHWVYdF7eKsSlcePzj8yv2QyOmg5h4rtachfPRSSbJPxUgRf2Sf+kVsXn28AL2f+b+8MRCIVv4/OoSuDrfr01dmFSjA/fYcBICbMdfji9XgUNrTSIyaY3lkLy4OXPLA6DB/4xCsZmSzhHTlKIX94gkE9yGSKca8EkrTF6hvnlQ5XfcUpE1hTzvSKV68bZkGw1wBRjHmBeDRHpnITs061oEzpU7bSYu0CY0kwNTfWpE3cgQWMgGzLRQmv2MgLWPYj0fVAZ8iO5ogFQbrc59UwqXo0NNENyYdZRL3zv4aP21ckj4Lsbc3QVezJ6MutkyiygqhRN5BjUaSOWHTg9eIY4qWDLbZCW7zyaOvwsYiUzZoh0Pxz8kbkBtvxJS/XgrYeB2C3/lpsuO1vUTyxEEmmUMO5SNO++PmqNhopwnBB1I2QNjsovalgrRNdnbwlqaq+TKy4KMzOFn2X4bH1Y80PF+tJ/MHYFgJr/FhDoT6jSPiqN+MlKncIZ8dmn7mtAV5HMamFd20JPesO4NeruCc+r+S5Kl/MaAN5ANTH9hA+PoQKmhFtKtrtj4Db110lUTnTO4QixAN1Ct6FLmZWFQE5P0xDIEAITWOCqUuWCUaIA1+451JplrccuR4oZ5nPUBx8ZcMs8r5l8YQLq6aSV0tpqcvecUUNlYuoKAibIPKvCRjvzUeI8JXu9BaQs4WceUjCpnT/PicYEH90NVnZQ0sRnQDHCgfumC4FS1UyulaPOq454XPWdmAYii9Yec7USd/U0SI2UcO2z+Bg8IVDGRTSlWARveFjm3QhWMPonoPZe6lu755qjHYtNOvzr0TIlRuGxlKPzxHOxGdP4p+5tJUNw6OuIXNrfVe6f/dftfM3oviPHKp835eqjk7kbjuuRFlsX/9Wid9Y4K3Ohfqdzjcs0oEy9tORSgyufHOZbjmjBnKq6xrfS/OEyEgeR95gkyFoEDWUTFsP+TZ7j+AAnVvB6H9oTm83pFSA2LTkgNu3T9jz9NwnAmJ6RgyHkOj9VhAg7TaLRLWVPQhcN/q6wwwK6VCccTGAr/KpKTtEYD33ZvpnqUaaFkSxeIh7ikBaSWSCaMi/ZythfhhtsZBMs7ASAGq5PoTa4wKYNFL+wktwWgAhRxuyvr7Mw7/4tWpsezYCbCTe0yXJrAKMqUU/eFU+51ROQYtfrpUZUqCYSoQN+894u+t1Pp7CJ4kBBaRlpGIQMhY6F06Pm9b8tPjFE8vFkWTwH55PL1zWFr4j5lYvEcHkpeHkebS0xG3OUIPHaQIJ/h0fMa56gjGdjwYacWRrpNRCcCJnHvhZy8Ou8BDSJXeIZxoa2wt3zyBljbkJjD/clg2CGXd8ZP08POnwVvL1zEfv4vU8OocaYETqUBptBnmBT0lU/BoFQN5DPjU5NfORji2O2Cpm0RmK7gxtZ5P1RU0TzUXcjG3nkCzvmPJG7eVzkLRFVAnGWyzpLoiIwA61vuV4fRPG8BBGtIK9/86kN4NDb1XYcbkLMMXarH2JGl3sOhT1SJEBGn3fjMS+0XmrckVPWws7Gozs361aXlqDgv6Cfwmx0XTB7SqXadK73d7c3GjAi6g4/3RH/3LJNMLC/ZHzVUNFpPNYZilLdWKWsHHg8pP7Lf74m7jLvV9t/rkWUI62qDHZr/Jo5nh6mjRwfiRva2cReuGGgnRjE7xzH8sCROOUv1cOq5mticPnvREnGmXG3MG4idhtiNvQC4VTA51jxwFyT0chBUqizZLE7gB0qOZvnJElA/mhpKBUruVo2Yl1aTYA8r49Tg9t7IWYA05pisbBJ8JTRP2kNokkKk98x5ZNbh+j6cB816543ZmUIzWbz+qS63iTRSh3zXfgSr8f0rkWGBCG9mnkjcJKBECYoygsPjhL20OlDLE2O6RtIHnleA7VzlWhlKsINFwuyCcIxFIln9JhvDGeA0TOUqrnLBzgurLKTqG8iR6YQY2YPSZEjGMX+VynYjzNa1XQEWyAUcHoSQG9N9+Q0pU99Rl+CVQeVLuAqdotFyjt4HG0sfoCfWfn18cN1A2ada6xn3FnNopWaehZvtZn69TIZGJJ2joxtpTHComwTsUK5zKCHrAynSHUrHWK18juiplQnUeK6tuA2Fjqjlk5Whet1r0HssTfdSsMyHMOQg/tI+NlFMcgxRBL+YjgjSD3elcOiWWXMn01CcBdNPM8Une3qSeJknUpP0B21eAHlBs5nWcBupsG3vmsesfiN+LjZlrj7Anr0zXvh9B6chYktkbGUD6rHRRJQPUCS5Vy6ILb4jBqq/nJ3LxfTsGS+GR1wMYMC3qalQBuuKvfUNvzRyGo3NHl4V38EQKaUENQKEa+XKPQlOon/0wEw/b6OB69AjRSL1R8oWDTMi+f0ep4vrDIYGeccq/Zz/+DgtHT4kKldhxGbyoxyz/Rg2+9gUrUQJxNZb1JrNGiFky75Tpdb1vvY/cjz58IJVyplgrSx27fLGoiHASZ/Pogt/aihwLj1eeJBHrNz9qTJ5zTdSj/dRiwJmkdZt76JLj8WpXXfOZbt/I0C8waRnyz9UyI6JX+umU0MTgNlTVPHWEpTmLX9rfb2vojbb2Nlp+2r2QUJWSewnHakWrRkV3adFAHvoZpnwLXRW/wvYK21zC5oXFzouDHiP+0Cu1c8q3v4VrC7otWV7Tsc3EH42/T5cNsez48dxPtbx2ukF8HdUs0p9FP30hS/0d2fZV11ZijMB50VAr4Z1qTfnYorbj5qqXI/IokaHDntGaaCFXDEnP6gprH+F4/lzYw6L4jMFvbXF/4X7kQeIIbuXPwnbfM7996Bj59OIPNNmWXH0A4dY/qo0tsod835+mYTxszA3ERZa+8SP6mTYfmjYjsg6NmYu28s5fa0IXfKD/GbjXVq4ao9UlMBrDevGruflC4bnBxzBkORV7dPYDYkbzaZ7mOB38nUhnfVyHL7FarMgjqumYDNTuVMQx1YxZ0tJpxVwIKWxiY3H0ORLdYe5WEm/g237lHl/eWfQe5ao080PKd3rbQNRx2sbzeedFsPovynDkUprLA/VM7rXE0dMRmPbcJG5qn5fYxPF1z1pdhqwgXAbSKgSwHDNb9xOMKV3JljJoGQjuTp/e9lk1hMfYTHperCaboh97KTWZTkd8yZDcCzaOHv3KtHAPsokv0TSUuTll6zY3CKY+yKZaXAibJbXP0ewtQMHu2kRFcMakWmjmVo6QphEbEGhAwvVcTlC33lxxXwWKvqLKyCLL5VogF8ClrLwApa/ae33h2gNiEXF6miJofmtqNZDON/P0HbSJX1h6oU/lx4WG4Xc7qWa5BuXsKmb3xu1aDX2YemXRkIlVhB7+e9ywrGV8yYYDovFVzOPFc7H3yOmrBzJIPuI7SzKkZLlelEiaX/eLAPt2G7xcJssudvJX21XGrzq3/bS+A65X3OAXEzeelibD5Tk40F7IKop7Z61QAPeDEWAOsveNzlCajGn6czscCUAtjps/nkoPKeIMVgd2I0/m6dFyqq0ViCdAX8d4Oph8q88g8Ye2BI9QdAq8exF0FEBd2m9tvFTmv2vB7V9FrouiN/CO2FfRBzZdjmbuQCJchmSy06a6ypflb5sWXKPYj+rKSsv4XjGSQulLcIBly8ib4gLw6vcsfq+6R6bOHQdg0Lz1dxy2wZvJG/Y0YpbOX+XCkZ7KNFs5l6Lw32KWwKZPqHAS7QwXjquMMf1MzZ5ntbgxraGizIWIaVnnVcmJpc1HkXdxWrDRLfWiUBVUlAFf3JfZlH1uSd2hIFRxMyg0GurlUI3SyKjRshplTCTezL+RdaNLyUYGoZSdoWDiRswl1tZfT3Gqz5I2Y3nC5vugRQuZtHQBa5YM74j1G0h8j4uvRI11LqBT6I30K25qqFYjsLjW2mCnK+2aaRnCAy41WbkBNMzXYXH6NmvfZIK+fDy3vdsEvau/23SBkxw8XzvOZp563ALpy0IeZ9oMVOu/JHJ1YJfPOIO7fC78M+qKInQTAip47X0zQqcp48VFFblDLdWXsYQHormZEVcybDaw/m1gAW7cPnSk79a59BdrYBHCeHPKB60tqEbxqm9XH4fduMM/XAOhe2OQlOe6V9PTpdpMVo7RLm/NmTk7yEldPxkP4qpGeIKLxRosZS0PQejx8qhbAZy3fc/msjSeX6xj/I7g+fc+MlqIoo2NdKIW1THDv3msMkhiQEJ0Re2q9gbu0eY8CxRJLLcgf6c9YYfwWSQLmA4A62Qew9alHCA/A1693jHrCfQR594GoO/m1ZdH25sOThcTTbM2Cq6iI/YqEeyXbY76zK9K8fQB1yiTPTyseB42J31b28tbMN+EaMEMYip467QedNUrXcTWoOvcQyz3t95dr71Nyhu07AE1r69uCLGVW0J8GJFIs+81gXD8m9BGnefF+J1WFkPpfps7bKRc14QnM5Fb43h/j6Ls7LgrIENi2gT5PF1W+jKf54PEio+vZ3kVPnutcEtNLTRjfav+8X5XLV9VcGE1gPZtouNnVEPXET0naYbkkKJ7y1vy1ILorLnQdd1mE1flJn9UYHFf5s+buaZJ8xXgvVZEez3vLUXOCl4Z82BTQEkRHPNeu1QH75WBt/N4RDcLPgXkCIst3tmqf5/qD9ffIiBvTKyp/widivyi2e0ZUfW+ThGY/HDryqPdOTn7yQyUFNW4PqG1tK9fzci3vcONmpnxUZ9XNaaAmiV/GLeHPUdyenEV++94NNhrBY4xHNn2FVYiThTyre4heJEolQooBhYrE0Suzo5aH2PVQzIVAnb1YKevIzoSBWFjjnaezh7PDtWWNjzO9AlaT8y+Usg9TTIdTC4kUp3/jOrUfXMQomfUB7IprG7673vak9FCOrLzd8zDWQPUdW1e2XoDdRIgZsYmpV6xC2CU6fXwkris5bRLP+gr+krlUR20QrQ1mHo6vunZ7CfgVP/Piu55scBA9hbHBJqDel3GvSTNZqTjBaxROpRG4xgSsTThJZXSpT8/hQKOybsxrYQUBLWBfmad1Xc3IypcOXq0frWaXDaaJvHuu9gOKjUh4j4Z6hY2PtSakjkTUjFtmHd68pVRuVZGEEo8kEOzce/mRFbjp2WcBUCdZUsXd8KmO3W4fLHYl6wiAXTPY8F1HVthj915hG2qKn4aUa7znXJq1u/rbhhNyjVS+DNhgS/dKxDZ/bz4GbaG/EfVl2qPAOJyYEaVxR6Im3MTR2X3Gwa2OUkqqey+JnnVr0tRcABdpdzeSvxvSnX01YR1Bd6fLrK3NIbiv8i20spj56soMadOuOKNGcnVezmLWGP7kDrEdRZeDK6NgU3O8rQQ3Oj18DDJEPsW2GZyivPRs0RaDLiApuI0FuY2DSP7JGSBu/4j5dul71fPA5KhIdQSxOzdIRpqgwt5pBIwKhyUW67K4okH/k3/MBw3i5GD1P7Zp37jPmuZbtImXT8pEwJL4PXnrpJSDZOcn6mi9+mLSdElcZKdmOOH5X/N+NLNYCt1uVqeAIckqy/5MxMQzrdNkPp6XITTBh08UWvPo9AxS0jOxn6V6KzS4woNZs/mskQz4GasBs9kA3uHPTdhGVEfDMD5TGvzYHCHjAUBmY7Nydzt4tT6DfavfP8gAtwgofjP60jAqiRcy9Ci/WynMJGz8tLM0pdCN4MXSo7DCxudU0ouH5YZP0L/r9PDLVA+eJ7oPppSWprTx1XsIgGAZfMdK0+hDWB5F/jmldXxLjs0w0i5pXVlN9alkBSCPz0mNYiNcKz7sJ0qPySX7hyA5jAFcWvipYxjAsB+15WkQwBZ49tidceyrDL7Bs3mD834fhykR51aJAHUnmAO1SKYCCfCsK4VUvdqdskv2sYwnyWEFq2YgS9uWkQ3USir8wzQ2G23qGMyWiZloWPCvXExymmpbipvLm8rpz/CfKP4kB3xr8bepYOrqQXka4mqrmSppvlOvL0g4OflZLpJ2za/6UGvn1X3k/bs3xrHE1xOl7sN3V3t52ZhOFgjm12NndkO0Psw8qA/k3xVw2nHwbLNTEuxZ7rO2hITrIXwnTbpEyeMAeAymj9m/yqzhCtv4NiRTJFB1ouQqZ3Wxd9dTSX1ZOqLXLd0jzS768umV+wzp1g4h68AkLkyhLqDsrvFYajJN+XihpxC+vjK92wHZOrZ2nB9MXpP6krVlss7vCeurLoIff/b7NQ68NOBVNfJl+BpN4yivoek5tTvzpNXyus1maBUgg07/hacUuZG3c+3xCFJsakOcKnTELQu/HCn71QU4OxA2uYsdEMWGVlqoB8WelKpOyBvyE6DPbnI+wwImEXCYIJlpl8QKiAIdV6XZYgJPbCcucBvHDjFIoHoxA9HEDctrYMQaAbi8lK4DPpc8Nsejm1R38l3S/Ki+7qNrGZ0RY0AgliqueTtJA165ZxzpqPytm5GLJBYeSzAO8VQtbQoAD7VE41gPvaSMm5kTDAQ34uMqjeZG4pm2eTWkl8QXSv0xW7Qdli73ldDKVYd87Dqy24EPwLssGUxTkAxVNWwsMP7a2TMeHKBYpzkRd8dXBJdgaf/IRAhSLNaxf1C8gghkK3kZbqXbGo7zZ0Qd0BEndCi3m4xJxWj69BenvGiVKwah991+aAraIH6XZnZYCRiPZaXpxSuMqH/KtOpmYpm3cQpdyumahGxL5s9TnFutzj5pvtVYZ8n6+RVqkdDkpUUi/1xmtmgrOnK95QU+0Z0r4AQiapOem0j+g1h0hci6CWwhuxTwNg2A7v1OF+l2l2iJo9bkGfoem9eA0dxtYJWCkZVrQDkCrkNIvWJfbr+BWI/2AvZv9WVcSmRtPJH1hsDecLk+OISPusZpAK/Oy3kLsfX8FQqosIMRwEjim6eFXH+7O4vNOAePmmWBMpqu+qP90bFGeLviNBdoa4nhQSNL62H8qe4T7SSq8vCMeSPlmty4mgU/mkDXuNPdzNYiAms6ynbaFbZ9IvZLHlaH82TR4u64zQgtBZh7iVc3GBLASYWIr7BphC2PHnJvzG+Ddr2TmP1kE8ASoW8OEdnZppBXc6bqAhGJHBhBEm6XXCFsJmatsN2JjYekhUizgaW5o0BvEGmvBF/1iTMJkxsgxEfu7gPYx+byOy/Q/HgAlBvCkpM6NCiR6yiQTR2vTdEnVAvMLYUtWo/plD5m/pRi74LO6XDjlXtGcx0n76mMVQz/GOQztnFDrHCc8DZ3WWyWJ7saQFyvuOzIxBHfMXsJifApd9rkzOPZHuHxjMgN4KEFg6LGrWcGfKZCMSOEotxg5aBKtAPkVor8dOH6J3E5otppONcnSoy0akj5YUTkBR6Sjx7t6ymopI0ICYbPDyw3P6Min0yk5KbTF6ZVmDajfLYJjvLntTITIIcKnczh5VZgtMNi++AAnGqXRs3n67omPD5QrXz4H8IuMjHVXEZxnb0LiDS1fBcSVzv75E+d+CSke8bNRMxrX0k/4eZ1A4eAR5iekZJkCueOpX8Dsiujq/VZb0tTn3cZmr9MSSWuNEk7AmOT8BeF8iiR0T6I6cazIV48ryvmN+N3MlhamzU79a5VLw5S2MGAB7gz06GxFO3dTMNMmcZaNB9S6wuUGp3RT04nu1ypAfI6z4/ku1X7fMmV5RbkXvEwuWK/TzGgc8N1f8ruauU2SIClJHqIIfN9bhf1/Po95S44B03MW26BHN35B+Sj03gjhJ4XkfJKPu/mQGvs9GJ1IntKlQ7eaxhpnvhO+NqJ5R/haxppzH6ZNAc2tlGY1ZPwLs0Djw9SPY8x/qOxsToZMH4qd3GL69xH9yWyN++sFlE/Qlp7811+1RTOdAFoHd1/SNDGJiSfihsnXOtdGrXXkpBodKcDqVdBb0KKIpNSPjcOzTxcEYN5FMV6hHdI8XMFQ+jj6RznN6/zJ/PeFCaEkMcGix4DuB4LxSmSxy4wDwjMAvxOJ9e9S2dElj3O2mva+S6T0T/M2JWDNkVnYGC98eGGaBvGfgoW6kwvD3mah/mGze6YiZjzFWCD9zgqj0vs/So4ULXq1z7q0IPprcA8aN0+bh6HjoRm1EpOSN4+AQln44s3MqYU6G+eN/14Rm5ET4b/IWMu6gRAr53LmSsAq6Jfc6obMYTQ+vgkoC6eeB7My7yBbymNTjJA5fyo3wB3ly9AuhSXMJPC+4NYKxlJeByO14zuccczkSoKrGA8ynAyvLuTZgtJW/fbciJgmGurFpH9i09HbrQpoV2O95z6656+4e/PbWKT5TFJK//ERDDiyNj+wUa8A5c9HLT/yAGRQg9gC0RU+FUzV9WiVuB1SdXP0EYdrq5Ds4EUm2ULkFF8RWfvzfwQQyOmVD7CugEVZ5E+98Uj56hl7d+laMKJKeoEvZQBKv2iuii3ACz0hc3bReynXbrBaTPKlxmeMJwGPHe0s++J+9gy3ydN4yjb9fqL72OC8f48kh/mCbAoQgH6+qdesQwerbq3UxuL7kkWp42eucKvPJL/2InOW8xa3sEdi6I6m8MGvVOP3FxM2cp0WIK0y9t5xp9jDRxhyAiwU7QD0X69HiRkxEhwKByt+1sbsyz+EH2g/7kXBi4OoOa7WLSiYefsmel8bfb2hcuBn0Ks6Ds8p/Mve0yDZ8z3Z/wH6xMkQt59RK95gA82YHKvlmwpdoqudTPHmMmDzuUp/3k4whYUTHRbXyMV/gRmb3IRiUaYyRD84AjIDKzyUxAEOFExgvmVMyrbUSP8aXD/f2d8h9kSvb2CmDGRkRjmU85R1XsIsbTWDkaqALZxHe1WNC5rmH2CBKcfUzSdwbowbOrX58XfGB7hKcnjnaXyvVEicZkoxxbj9GU+zZiLsc7sMCWDy1Js3gGTjF2QGmLh9MbHllAqJxRzogKZcqyZOszZsRY0fi+Wbw939QvATVe92lvIyGyQTZPZgMw7XqXSQLS9AaQQBGc+WyIL4cveAhYDUZxRTBAIpthGD1ms2DwBbso4TUEsIU/5i9iN+/SSwkxLyCDt0bNOWnmI55M9wUmSgGVvUvO/mTzzb3Z2sWPga+8qyxUhXiIm1ooRZMnSVxBpjJebRPOgu6piEJeCic1L7g/mQpHOmbxNp45l4wmQKNgIvGDcvaGUS/Ly1aIEk9B+NG65HLBEUKIHae7sCmBwP3uKyMP1ZQSH0rAgwh4FfC7lKaMYonVGL8o5VtHcqCeE+HSy0RQ4/bsl9V/ia+eCqfCUISm04n8BocMmI9bX1GXYP/O8Xkc2vPvPHguXe5/orq4/HugNEjBA+i83/58DDe2HuFMGubn1C4GlA9vum54VQQ9YoVYmFXoyLvyv0P0nruCnIUPMFc3okEeUWxeOu4DJfMtCJF0naKvMUuo9cYDMJM7dMfschrIQO3mSJ81k5wFWuLKtescZcumiX8g6+LmObGK5I/s2KfqKGM1mmvf47XlO51nqULs7s9Wk6cOffVjzLoEy4iAeMTKBv9wFXoqkznbnmC4k87npFDPV2iybWAdeaWUyFR/gvfN91smfLF6/IV2PMR4FjkWiGcnMSidReQJc8Ml5mv+t8p/NUnnatU0cXJ99VD3YJVOuznsnRT48O7P2qcInF3P/CBupnyKc+A3OIplev+7oSxZ72ZXSDDq0mNkvvgs3anPnfbPi3Fj7d7m8ynBGvnvhWlIJeO/sHBq+7vtUu5kKAecf1hpx8mRGHdxn5a4/f3advC+fMWruQtmZyurWRIybhAHNvcCmeafNSwu82Zli6f6pnDuDYNg9CyV/983bvVD0iXRKjbNlZ+Pz0zuBTVuWApdvnTFhFBoK+pNSPEHrI+/Wfzcv5FH/3XwzsNjuH6NR/zuU4RWo5+/JuZKLu7Pj5AlsB+uQLdiDY/DVv9gO0X73XJ88/NU2kDACpXfy6b//QS70QP7z6wW8V/6eR1O0onKHDZmQZQUBGhmSD2ao3Dadf8U6mgnl/cXH9JPDM33BbjLEoXOFmgbUs0ZTS9kboX3YhQsghIqQt9xh7EeEsiba055zBoWd4sIjhOr4/TRJYe64DIXzMHvTvLJZGokAiQoUcJ6PnEJS0tcfBcPf/24neDBz6uSGEKCyGpks5anMynnYwI7wBzrhXydDlofqv++7efMhZjoCImQDrWdGpjThxJaP4vMfa/yceGScTsyO0+cP77SGwWxoM/AAz70GQWDbSB64JPDywLaZ4CSuf0ozRTTpNoTg+dcy73D1s2zoORtbTh0uM+AkWr95oNJ/JlpDBysErYI0Ed+sm9Wp7mTPE6DqJ4aD+X1531pV+Isiox2++4zVk4Q/Ku03uJRfHIToVD55DU//LuSV+d+dW/ufqiHizINdd8fOBD6lF1vCsoO4mEQ3j1krrgxYOOWAyaowph98Me7K9Kk0Vq1gIMMR84HSNDOBRoTJ2OHcM6nITEVvTdInNkgnEkschFRvn0hCPh9594YSuTPgWpzywrpvAa0B8vSb/OYThhYOFuw31rTCfzkdLobbBIuATIBk09uLO9J49SmT7XjjfZG/bmdkrMny85RIvbifl8Ri05iy+WsyyLH5pCbg9rlH2MSezTFqeUA8Vz03fu/YpEQK56g/r+TpNkfrVb9H0K7ZsjI/ixaxTNBeFNjaJAcfPsE25mzpdPIWgOjtDNqm7/1M7ttFTmrof8css+MV4gXSmXgtlBBZK0rO3Btt9SCszIdMI8DIW8WYCVWBijWRg9PMiVdKl445auebzp9x8NoQfQIopBEaiVPI+igOfcWHdyHCj/39fiUxigy+yJBuOu1/enp3uP+RplIje5ukxES8LI4/0MN+8pHOtlC7q2hMioMEyU4mYsrVGs3IIc8+kFitFFk6TTlpFDWkg4A+GcVSfXetqgt9QOg02tj8j2dsi6+llkc41/Fhm6vLkbvlh41fVPJv/SjCj/+PYnT//T/CUYUSxyd+aGP1I/e06H1zjGcfLzfdgb1pdTWTDupmcg43MLROmNbwpvpnQZLMnSY4t/nhNBmPMTcASVefBdTM1FgmgK6UUkAN5AykT8x+sAMS5MIJQHfTmCO/swE3QOx6GODmiBVTAHUqPeMw280dxTfr+X2EyIyxdq706iAjRaGgrYQI8zG5Haq2UtP+6iLjQwz/Yw3CCfUnlR+d2PZxul3bnXNAzvjU+3cBlCmGClGFC4gIyR/8Emp3hwEkWilRkt/iM418xSRhaylKwnIj+9b4nQ2vTa1ITgDNNOOjqzuVSpFEHpUEIP4McJfiMQB2LxuPR9Y+eA6mu6s9AuCRs66IV0lMXbEIpNW2WqlJSR2Hws7mKzdcRCYxYYBlSWzd4mmQDrHTmpIHY2eU/f6WpLt3ft0DJy6ULL5LVOAGAWixA7Xq2WLFHgf7CJ56RCJZO1xe5/WaB7ISHefv+GKlQ5FDb9w/7xMt4j/6g2pUP3pAy+E3NzT23TlzjEdRlatav9a6FiGW9p/h9Jn882PvxnJujW47PGdypFx1JFU/N4QCyTLkv/Mrr22dpp3nmJcgG+vQXcP2mrAnntLPDXLkHS1UBjXvks1Px5Dwg4YM6SXfzuEQLX0MSG2XxgPsCJtIhGFNen+4RvLrd6ZnKtlWe05FwV4HD9fw6gl8BUCsPoj702qn/Qz8Z/6k6t389eunM08ELCH2Zbw1gFmUBhNwLQsZWfJL7jMjvPUHhncNNSXxPxgLK5NsEn/Pv3iU74nm4lJ5fa9XFHPGo78Hk/epmOn+BB/SnQq275RnsbPv9zSj/pwxyJxt0sDKKFbFn4px6Q74nJTq9xoTFxY4NsA4YZyLJ8SrCT4ARrLqRrrvAMBvA/tPlf1irfYHxud5E6R6vnpW9k2bJ5UVYYEno8tNvY/agNbdFB7eSXxaiiRib8nfTwus6o99UZQj/HccKWA23XWuoC/JK4HjoAaSmW90eV/o8tDvFgSZ0Zw/nRtuFcsdNv8U2zK42qOMfA15Yhc9lBWSMU3F658JC2H3XcTRYtdIwF0C9Yhd+fXmfugrjE6e4v5TBesfGv6kGGU4Ju5WAzxPZfxvFRuC4K9trtRp/l//wgabB1v1VmOp3DSfT5gQv5f5/tpfyJFW8IzZCNvsYOUcdkecwdK/+b0pyhUuyYFS/xzBZbc/RuMoyOdfOeKHxp183DXP6Pto/GlTVju4MqfJlJwBY9xLJrZKTnPzEGIGvux5GhT76gNV5m54ZNnXTwMrYvsM0JNcbC79eh0aC1vCeiPIlTt5S1Fx0uwfdVFZ17FLsEoEZv9Mi4KVaYzLagh7ieagG0Irl0fNSzrm5UtfW8GaQ4gpbcChkE7XjgdXq+MkJi2w+YnVyYdis4DIp74lSS5wk+GN2nqueQw2R0sW09ijLaQprfycPPB+e6Sc9vL5aoyuPa1Dyc0t7dlE1tnkCCR5vdjCLs7w++wQm634fFbBQZev48vBlku7Ph15Uq3Umb0irK+N8DoiA5qdSmwIw0hdS6ssdt2gtfVBjvxJc/HC5vdicT5ZLoD1+aNBRiAGsvVIPpggSXkwWLidQYnP274oxDWBgCTgwF85L44m5yYbzsVSmJNIYF8oB+CkAmvyIdO482x5ij0v6Umw2cH06D2g7pxOGiPjv517FWsLGmVEp+LNTh8c+TO5IpvBzt/RTHrl4BuyE2itaEXFM5CE9h+r+xY8EOMYNX4Ln2nnBM/b2r84WqCJB/dusFNOmKlmLOblRG4B9wyoxD+EOvKi4/R96mbiC3cc25fg7zRpaXf4pp2kt40sXwoa2/OBudQiqzETyyKCCbo32onulhpijODF7JtHyKKZ3hh6r4tWgqx+Rz0+6Fycjf5bIfU2y/3+Ou2ym+TecBKkjP6lG4oRBSnmvGWBhKsrheXgPV2LdWsUKjuTGhGbMrIaoi1ScR5fpnTfC8sE8uXI1X0nCcZAFy2mtXkCIfOrsvM+KIn0zU5v5gSiPMZ9Lq40P5CJ/8uwZcPju3nX/JOZ5Oft7bBOawBPiGeRNobKbas7M6KLXkYbREupDU0pGVjhhq9WXR11KE7bNYMHn+LKebHJO707Glv7gW0oN1UCW9mx89qm9Cn8wrRFhoapxOSrWYZGyNbB8tAkQGasWu/FZGF92XGZRJ412Em62lqYSVBo4ZDN57/3fJrHBxWfjnOfszydHch/ErgJxvDt8SQwTY6/af85gZmIkLm71ux8hm6V8/+AgwWzREocLBNojMw3eIKL0v2CV1o66jDluGTwjQiJVremA7VEy4erOhc5LPfJmW4bKcFlOyk/WA9ZYtS5nuoWZEweY2Uz8YDF42qIYUFsfVXPt6f0iG/jCns6j69fMykf44RLXDIVPHPk9rDXsbm8P3lzvDmEHXytW4PUQQm4SBjjDRa15imhwnxGAVRZY4x7wkWesr53hvtV9l6BDRpYb5TE5d3DotBa/Unzv+0uBE0DtrLMcHOv/Eqhg9Bg0fPG4MJ2L2wa9qDtK2zGuwpWwCh77gJNqn+0Z1y4/7VCaic7oiyGFoBjHUv/frAjW4ZZc6uO35sOE6rgcZwVO83bY2K7DjsXxBTT7n8Oe8zyvFr9aCU+UEw3gbUdLYhg5SV5/Y/qxdqbn27ad9NiWM08M5+HPQCZmrdJHrTOCOp0Ru8UDK/sBumtX/KRY3h8tZdKmllW8z/Qdi4Vdjhn+cZz1KRmHd8Tljv8X94y+TlFECzWc66X9sfuiX8IRb5xGOHAkQ/Ics/OO7LaSfr5GY0YnvdP3MjxJxHnfhYNwRML4bQDO/WVpb7E5LyxtH8rNdtMiNSms7dRGu1geCxEH7ht6ull63eZT8qqV8R4m3tQKeRuqiehu0qwwif3RMS0YfzwKOleGg7NJxY7exMaqDaZjECpJSxwrSiKN9shtI162WNytC5tTRGBiOiRFFfYMKTA7JMRYDmNs5R3z6hkCVMM6sjtjE90ZBGwTlH6xeARqt5DCN5oTAaerVDfJyHmOiEOuH+DNb1lv1eSQno2EhJaymXLrwlB2CXnzCfBQmF5UyI3OsLntA+Q00U0z8J9KHNVzTNyp2ex3wQuCC5gtlNiZrD7sAlq6cqbvF3wx608H0B1ioJPhour9HC1be71AMfEmLvhWtTl5sTzy/ynzy+A3/PP+U6RRrhWB+/NwB+hQZPviux8qZ/LtA9PaSUcw99Yvxgk7qtkC69P0gxfvxK6jljtRiJqg52fOF2H8198f8EvqHz3DG2+l+64YxIvHEcKTPHnFbiPWzvSEL7Rcs4mtmZq/TzTtDBE16JZjpmV+7nF2F3X4M8wOGuyev9Xw809XAzagibF6/M3DeGtRqH1aV6CaolCNtaJz3mhkkQHcfkQE1UZXAm/IPTctoyFk5GWLvwq9LLV0sKSmQREZYaFudQjmOhawi7ShE172Fi9zYoAA7yOMYG9qge6j4ny4JgEIs/j6D9PHdV/9w2SR+TeqyQP420DZjtgZ4ap3B67bsKRksFNMQ+BMjuYpsgMrUyMLvKlpKsxopKSyqJ4BtJycSRc1h/OBQwKU2fYIvkRBZDAELvXSfiKmB0JUvtN2FmvDRDGtSMUuQ/odeWwUCRJYnjzk4AmVQZ9bRiB15VVECnIvbY3Ty7wFw//DAjrf5m3l/CNXpQJQwe4jEUKOKm9zJVnSe5/cXDJK77lmnw1+K7JVFZpMPBsr6zdUGRpstchjAPo5X3BHIPpjrWNfMdFRt5s6RuU9wTuIloC4Jq3XZzqCooLzKmd9TlqUcdXS1x9bBjKkM6J0VOFcyMzFvZaHPJlvccQIHv1Abpm0H61Wbu3NK4FVJt+aL3lo0Apb42Va0CCPEgKK65ZqFkFjtAoSMnAv8HJQulmntjkd9GxoRyy5Va15kl2jOIwhzFNdmFr8qxC4yzi607c8uOxz9jcl06vihIAB/Y2JznkLXC6htv+HKRQ52H4U0oreZ4tv/HHUCNnpNoZ8CCWfPALefVDQpJ17dS7RzMkr2RI1gvx62xr7TOf5pui11cgITe7/B+DWFDz60O3hL4u9HWgW0M3QVmLr6lj41fgebtBrgtTzL+aolPj3u9/TQTC1qEtHBjxXWXYXPPfAAR/7wh5M4R7U4R+T2jf94Z2vne04A+q+0Kf4OPQs7v/HqF5PWSdZxTmhe1iukJbjdhAcyKbte9znC03n//9mn/WItf4o80+emz+8sYxqTj6jN/K5ZzIOT5tYrGm2JQJscqzI7o5RRCE1epvpZJSNVcSbNeynAKwG9tSZqJm+pDSuyXyGrURPr2qeQ6PH/IDX0uK6T3+SVlYp47klENXJ8RhrAgscgDs9lgkLbmEPxRo48jfVk2UecyEVVP4KrItOiLqeJ3bydc6R1CrDVORGZaHPw/lYQmvRxxIWEGTNABRb9bpRtd473oYGEdnKqC9+tGc3FcYVwT9QACmG3kAWF+jxzDdtQlNL/UtchTnvcl1uIi3XhbBy9yEundzzTxAslslwUWFua/oNQz7o8eCWBE2IM9k6a6myJ7JcJQ4GnMEs/F5C1CxVVDwgh4AsT9J8O6Mdca73iBW/jLmaAaq9UHoaC10RbTm69H2CKKOUF4JdXQR4GynCfGlOUqHk1XpAk2hrPHI13tjcj3EwzOM0Wfd09Eejk+2VJwFRzB918ubvUT08AOVC/3tt+cXgKc7h/hvSs3eHFs627qxunkgSkpveRzxOjow8B6mW9uVdUMW78K2hTVo/NX9SIdHdWzaDKuFFBoCBDPTyUCA1aesmHYzCr6up6neVjmy70OMXe24TgOmhsPijK4F9nfZ+ZfTSwwe6JOOhODfJUeD7bhBIXbDmJZ6IdGGR8Sa6sapfQe/94CYFApT84YL5Qq8ntQbQRp1TWjSwRo57ZvAmlp3vmoVRTaSrG9C56RsNvEoJ4shgtU9Eko9VeT0hDgYZ/NRYdezxVg8H5zwzMDZxPRMMODW66OTK5FA0GESjR0mO+1DjE2r/sCSiq3lUqHxEjYHzNRsvGSNlX8W/xQRjdDcw/PRT8+3HM2deF8cNVnrkn5gtrYtOpFNsJbn8iivBJ+gfDw1zuMk/l8UY/g44U3wnl1wnfSWaxOyBEfy8WjCm2COy3gIJLtBEL3wcmLCm2CS4DmqPSGedmQy6j1xxC0S/k3Asz7DsgnqkP6zmOXLhPC5qucOMXM86zELh0XFonTpD6hSuXriEiLJ8Rtpzut/AYumUQIB78qzE/4sHs44+AcxIMCKHusbrGBhlwNGrWrB5kyDVBFjg2nxZCYDnB3eT/g3BWN/D0P/EAx/DxgZKzMn4DQvY+1HL38nwNkj2PKFfdBIIzujvoqZQWH8XKtgQwnmdcQp2W0I8CIedhvPfT5UqF/PGQZWkB6Dk5AgePxz72+q/E/5rFjsjLxoaqBt7cBlkNv0qPbKx/XRehw6/HKH68FwbgrP8TYob4GqD7rI0FOItVcCwHD0yf6iB4muOkQhf7neDoAaGsn8MszicdwhXH8ApOwtE9OeLGX7oPexN6FomTPfXgvbzuQ+xxCEMo27W9zH7AzFama67hPczdPW351y2bm9eQUG7dQ6u45agRmTHtoazUjOBpns4v/E6hHlZoXFhslyxayDWc+wffihmMf9JM2SCU2TEmWRmYx2haVKLCTlNlF7COU797STCJCD2S8MFkZrj6O1gzNIfoEjXONuVae60bgwmRrqKMw6N5HCMn5HeB9+07GzALpdRsBnz1IDAguGrj4QstqjDZznw1T0yjOXipcbI42gndxXnYGwe7Nu3wPqYg/edC9BbmMiFl1MRhIrIPUwAJL+sofhyKK5srlzZFtIsN4aaWVA3UBUEwK35PSVrtj1lLd/bQP9VaQO9pLVhtO0ZH3x6Asha2qbNPJ3yPtRkRH6VfIXmOyVpp8dAX6rqn2VPKYX/VhmTUuYtsW94jaWtzZFUwW0E0/hwBd3QpL/J812Hq12YAYpMt7Ep7JtnJVwhPcup2vi3EY9BusNAyvGE7m/nJGBUovasb/ccEEgoHXgPE7XF9981017UUcZ+/PGGIC7I/sBAJT+VxqezJU+BFsmUkC0zwj5oniDUb5F9VouYpN0nxuXcjxY5e6uYDywIkaB5jyJP0Lc9Sj9RMoNYrH1cdc/AWsbj+jvz7Ycy8OpyH2dBNsznJzG7hApZSBQr9wl5NefYTvmct59rBBjk3uKBP2YdrU3AejJPmO66asB5nuEmNQ0h3BHCbjhxFSx4awyrerpag/OonIPR0rWIYgentsc5t1934SRRjvYCwIs1rS9vyffcI/T5Z95K+estTsNfIccSlr6UWVoyarhs4QJahnzYUa0qYC+VfZZwCSPrRM/qyOV9npaJbNbZVChTRw63ceipR4RZ87iPV6BXVQ4SaVgkCh9mSgLT11zYtxsAab+Oi1R1TrLtduKilFAO82Tc3NYiFUzSpqC2hOeDxkHJ0T6W0MNig7AuivO2QLBFym33AAsppm+4XDGboITswVTX3oSpLu9O9XzNJHPOPahZzkPBTV/+sv7uyAHPtYuIdMcthJXqdwJtv1rQkDtODj7ZkWR2klxIyHOci09Ad2K7wN6oK/D7PhZTwoPvteB3v99aroD4QOwLrWJAHdlQvxD15Fa+A3aNH3Mbg9wbZDsEbsfS4mRKw/SdOe5bESSrbQGnTDV0LC/4r5nlsndDJFqnNGUOlxxb5LnbeK71X2SMeN7+veaO8sbunWguEW4jGq0LYRVRjCSHaX58m1jYdnO9BbCG7e/V/YzOWD8EV9iMy+iVbhFGqdV8q9ZA9M5XRKK9UFHaVxb1tF3mzvbQ55MpgifBa47TxSiA4nWU1aj2mWW5PMxZ9g+4hSnrWNVnGUXNemwIkXBM5jlTKrmnZbafLDHSFtcw5yvfWXGvHaP1jWT3jXgnHi6hdD2kH7srhAPau03jAPv0fXeeDwit8emwJo8mCsFO9aqYmxwzaXaGA1ETzKlJjF1iqxEkvpoukNoViVWbzhueewwyR4cny1oG/S/+iM2LZwjTT3WAGn1PF6OAqpNtPo4jMEk5mQlNYLU4ZrWdf0fxF+QcOeaqUIlqPDYU3T7ccZWhNoWxzbPgWq2pOXjL+Gtr6FFNteffTybK/qsjPLuLWmDkH492tlgCWZkhRizsj4lcd2cZaZOLIOWGW7G8QJ7sWN3nG/lkI/VJqebKKMMCO2Z/4VhBpEl2o2OyLW4LYUIS8SlNcMwiK8eYuYBqFfsPX9rUZJccolX8X0DwRhvVM1xRsobPebdBKIbKFC3wse9YZ55N+fINcYu4YbgSrFQ9Cxm43tkAfcq7C1S0WEemU1Ut0iXDql09ksIJT12myU9Ikl92VCL3bdIDYVznKCmrnGWdzLmvdNLm1Ap/1hBSUDrCRm3mmcN9IOAgXa2HXpo/4hWItkSqWnxc0k0pfxzhrmuTXJZK18OPv8Bfm/tnmndGad4Kv559QJVTZxxAqI4xOJq25jf/t6Q66eT3Q0B+GL0xzPI8k5bILqJ8m0GoHndqeJeiHNan4YTCUDYuWklMgPr9/6PFlwz4y+PkqX9ryVHu/jPGdnNdr9zqQXnSEAu4r5EBgbY6hpZmxjiajOtKaFPL3la+fZCnFpud7ACti77ujcJmNqZQNipDJAHQPUUPkBTwz64m5BMG0wbp50SiCQzWklkkSBGmJ1QdJV/H6JRluCqLTmx5uGFtUx3j/SfOCMDfHtJPZDCxcqWN85kXWrFU6y1rxdbB8gZjC7bR6EBaar9NPRtBsBfxDSL/ys3w/Xeh/Ynzf7CiMby53zO4Xa9b5/lxo5jMVO3j+ayKtzuMhC/V7kAHN3w93YHujdOv0iVs/sULm+QhwASPVg2dncDa83LUDKA9Mq1hY2xZ99ITDA7vEybh5uOzVPWRPpU/dDRciUuiBz08NRGmUbJ7PNlifpRaGfpP5fvSUN0AjI1UftgG8Pu983Wg9w9CTDlYysHwW2Ryg8kwEc7I0HfAe6sKZSAVUvZoCWquMvS0hw8AmjrlmwwctBbRSZ7ZhsFjryLFqaPekFzRL9ostf3UPRZ2LN+qYSAIMIYfGO7MShhsyun81umib/5eG4LjKJjK+o9opuPqHxptql7Mu90lwg+OrVJXKoEUP/GO6cEF0dzzPaD6faCiBuDF9kxFb+VJlJFq6a7jxikueg3Z2f2N9THyG3hajGy7omnVwhexuYJXcyHzFYxRqnHUX1fp9x9Q9IEZJ2qKVWO9LrySeQQF01GfQhrbcRvneoOJdlo6r2Tx2JdRHtEa05kZKsWHaNwYgcSwcLfClEL/DxL8+D1Yol+VM5EskIshnZsNZHkGR95SZ+R4rt2W4XC5TOb1d9b1l7vjoZUgMzGMRBZ0srfTXnkSDIPaLpizT1R0Bo6zOTuqNwLd2k+5XqRrrVDHf94N4UJ9kdV7bTcz1lEtQV3qVpD0FhFGW/9GpezHpuBxBahQGuywonLPVmonVJi/S2X6DVPw8pXKSVSG9s0j82iDjONUdxJmouu8D4sq2vxSkOzdQQe1ShOMb/ZWuxBQzlWKc5b4gBShwuK+HrdzYGapDxxTXYTYl8W4UtVAxDgq9QPPH9baYRNcBe+CBqmfLVbmpx28ez19i1IlGI6A44Id61XkPIw+MMtxzSRzrPXqvoKrR2enIxVkeFLJYgqSwrREDHudmmXMATYPBGu1YEw28GEirVL7r9b+QA6Lj2nTaEAXhqnua9eokGPB6BeefAxig9+tdaHfGYfRIzSw075VMP8gVc1h+60Lj/EQYiVmOhwVmgIsbUp593F4yd0jKGTaSC0v0Nvtlb6abXLxkTY99cL9yIyd459Ibe3Gdq55Xf/HoK6lD+w3WoHRfaC8it/uvafBC+iRkEjrnZyBkGmr7P4VV/c+8F3XbaK3C4V8/bPA2NftUGtN1KNOLzmYXgqAIy7SkiVlwBQ9YJhc0+lOqACNeXxD4vI1HMrt/awyG/32KCRq0DUih7TipLfgPP8rXXNXqJ3X9PxEi3qo5xGWdKOOEPihq9Bo/Dz7HGF/5qztZ0ZFLpVOQWoQxU7sYIK8Cz1oJ16TUcBIbPcpq75pO7Vezdvb366yenmp1s73eR0C6ebnV6lt9qKg9y5u5q845WiRd1ah8+hFqWWq4vJ+pH08nNRZ+O0trzf+M4qEUbxKRblBg3rMZK4UU5Iy6Kj8RrLudSxzfmhYeuYpFWPYBIgRh3aJbra+h/7w1Ow3fIosY1zhdnYGL71wfFDB/fGgV6YFHLu5I+C3+cdE38iLRwuQBIwjh963hMANTH9O8gC0nV1pE+60ezLjSkpl3CaqiZHk9RSNJ+49bJHeLESahH4Jb2bx2dvNlcSTLcbUFD1/L0Q9MsbtLFj9TShAJuxdkjUPniqNaIBsg8u3wN0HkbpKxEv1AdqXsVjCYR5g4r8A9H0YkWHPtF7cB4A3amYfazpWwR1MmAO+sBLNrMSYELahl8m71qr/hKD82P7IGiFcu0ib8IRoL2XOCmkSNbUWvcteNCCDRaYzEmraO2W09qnltq6mIXrkOGYFKj6N6t7r752ypAnei41fxLb+6rXJWXATB2XOhYeZ/HErxqAmNt0kiWw9YAj0f4+N/fZPoztRE7bthjIQoMogdqcMN/G0yT4WWiDa0LK69AEihkhWIMjgjshoHNmCxY4abHjygLmWT5Oyyw59SZblpk/sQMR+y4ORLIppHNe6+VaGrUqSqcVwkTaxrR8rLiHCYpukNiUJarZcAiCPDUBNNPLkqJdQNvD6TasBqYXBPghVCa9IqwlTl7mdqwk/CDD6+nok3LdJPS92/fYFJNDbcFXEmj7E5h55diEaTTl2ynqSFhjjaMEu/BNkDu6FE/XzE/2czlfdX4EemvUhjEj6fSh9wLRxB4wB33g5V8dJegx8EDkGN0PUCN9AiouLgiJkuiDMHf2AYS0+JiUUD4AkBn5uFkM36qV82HP1k8F80cI8i6/o76U9WcBNOT96OVqi3azDjHaMkpwYtSTiHkBwPt/nN2e+Jwm20tSTWr8JQDwJ+Vuox+BghIQDVNuhWDEQfv43NYKrI0xcWXH3QhwnU39UBzFHuws1bMjJaisODiPAf8w/nTNsgSjeLeStlb8v1TVOmM7sWOjH5WcsWvjx8hXuhlnox/UwwkjBA0g+w0dtAS4wicOzG6vmOUfzhu7rAg5DpQBqrPphlVFJENmZ1GCvuvXDapFj/aMeayS7xUpybErEzg5yqHt04SqOnV0tskntiRil7FSOKZlKNaNxLjm6hp/lHpOcw9kmK949Vy+z8R0lOSeESkADX6K2/8qyHJeNHLw3KPeGnVpMc9reJUk7rBC3Gr7K3asaUaz7Ru4fEXgBWyL1Z1FP9o8lYWPODjtMpGvk4jTc/p+nwYUHGvm4zG1O1gtQwbyKNHxHXTy1Hi4i3qccIduD4XUX6DQ5SPh9587Ko5iGD4Rqca8/lW6KSQSCXIdW60nb1nEiBgSUDo8yMsYKQtqb2B1jcmQOF5oeYzVxx9yL06LETm2jRxzOHyRgkWtj+EBcHdvxsj43cwQeuxDcXdR9VGdwtHjbjCoXtyRRFFN3bIquyDEn6oxmS0iONhl6pP8Y2aGDHLfgYMXXEHKav3oHYp4TsHnhJKLYPFF5pmeD2ytZD6139hdbZRvJG90rz/vfQ0FDoo7sEHfV+hgi8nJnytTdA/gtW9ubcaq2VmuyUSQVrG8Uetcx4bPAh0yDcfUB6XEm/ppkYNA27cO01Pc0VFIrswbzmCjUet9Qok/HQgK9vHnrYcz+9CjFhkTMxQk3hoFCNY1YFOZjUx8lRnHxDGZVWy8ECt16pt7F0/mEzDwABnNSHdDxX80HO5KooQL07LBc3mQGaIv/Ahil8vjTh71lVByj/poOA3oUccsW2LGIdM5jcxiqU3PdRqLCJ0W9wUKEZurF0njErj06bOcfkiMB8eeUII1ruw8+SJJHZ9GMzRjfVPXR+/FmFfdipoB68vSp1jwks1dsJPNX4ll65OAWEbUU/okpFfxwrmBp/hqxPIAQrhLA6qlmII7fiEDXiDaJt7TG2ecfRotDdAX+O5heBnFrU4XFESIlwO6cHvsVigG9b7gzZE1+hRoOT429ePkTl/JYo2GW/tO2JoFe13d1aGSYSvM3irRVb3q/YKAQ/QKshWNoQY3UPpbjmDIf50oK+MU4oUi5AexC4YZwVUcA6/y7Sd0QXXKVeKh7K5BEjJp4IXsCWMWg+px2CIdDzs4YVc/At5lUpXB9zGHxz1xx6YvFi7EpP8K9XXTKX2412ysfPu+kQ73zi9oml72k7vGhNADbDkLqeqVSuLS8u0WiiGZeeK05ZsoHuQwMdCKgJgtBc/Rer3AboY2RWwTuiwHOfsFEfFloO1uTwR9Dabz0g6ie6NpuR/+GHdrBTYmxVRT7lNj4c9BC97cbTXZIrrFBTASQ19J1YEuz6GjUA7Jy3jVilP+a6deo2Dzb8zV2D3e9X6DJbkqKCth48MgcWyrh1APsCVuQ31tYxswqTzwU5VB+7yOoVYnZQomCgObPIDOOfhIlfq8NSTrMj5Pqdatigf8/C4vZnU24tVKTn5W83xoe56+1geIZ1kd+VG/eRtFfNjPncE6MlMG3j6iIqM39AZSZzTaOfGqjDdjiJSTB6oYl9clnlu4IZbo8Ji1iFxlyREClcPsbjICFvcUyZR/63P44AG/ATLYbOIbJND8sxmIJjMo0s9oYh+p0kzEUDQrR85aMr+yQKoDuWtQLzJRVEKfmLsV53oumgpThka7iTBTT/626aRyrF81uEf6sONEHHAo8OU0AXQ0mPb2Cutg8VJMxWPTnWKHRazCk1Px9gQ4x8nMsnooTJHuAij0Tjm8OQnwxvBe8yL7Kt6kt30YzETGsylTF7lCPV9uvxaegi9I8RaVKMfxsEQVKNtbWDw7HtGtn8NG8rKLk/EborDBLkgdU9D/Pb2/V2WHyXJ7+eh5tRmpfZT97cyjDUwh/igfGRD8a0yfSWzpR1he2TxKb2009XV1ZAHCHbnylQPrhdciDv+b4aWD7a8iL258tFTnyuKkE1VbA2Tqss43bCoHsp9e6KDF3u8Hrt7WssmA8urYDV7C5IPIzJhk5muAcF0ng0KTa3jMyNZGI84B3jx08WMSrjDYqWgPlke4JTbBKzujPSF9dNVfHPKafJunl1tbZpLErayO2mZK1tvLHwfW8Qj1VGL/VvbGmRHHExhPysklr8IeIPgQOpnscj9MjVEPjlwHE5nXcRuA4UjF20VEwldBqZZ2qAcxa+tBUvW7CjpumR8h5cPNVTut0vEK74y1AzfObVf09mtCZVcoexBugAw2/81FfsNOhPEAzVPERyVlkA8vI0eL9UoR5JJsqaStUZ1LOc1n6obLKSaewanwK/wXMgX1ao74/x48214MH0tk7BqRPNsYTkbs4aIRTm3XCqjsizEtrxROuSVbpkFXBLHkKy+OSXUXcOCSN7RPY+PGVPTuccxIWLMTS1Xc5LjgneQqo8bihMDgwbOa2x22dRO3+TiX3OxTrBt+uKMvrNiiSO5Ex+TLotkNOGHi+r/7ksGE1qJfKW1OIB2gRUF9995FCihsyj4+RrNojVhlAmwIsS4HT49uWY1hi2T4/4B2yWtMCCBtyWKEq1vIFhXY63DAoDdhHxluOqQKAK2Ol5I9FVz7rg1VvA7tof6oqQkZzAigz50zAy0QM+FS1mdhHCiMcvfPoDfdUZlZTsZCgp0CfSDxSKelXmNsuyYLNcg91AAZg772JpbLnSrXsFWJahFnvt+bW2TXB3m4psv/xoQ9PvJOVeFVqq2iYURjoYVaNjxRSf7c1wWDtmYRLdWydI+2ZBBoQ7LiSr3ThNjAm2MBmjo6S/3OLtVxbN87nRL2jkTA3KE3mt/KKZh8PA53XLVt2qXBD59v8VOiC1O4x933DI2WEghNVg7XojUrSfnCDlzzgD6DRFxdJK011/fdd7yvmGekMEywmk0qZ3zsDXfgiAbVskeEwXd3p56NWDLgxbbwLxffBDsA4QE3tv2dXxSiXkH+La2LAMKaGy5BWrAyjCu8hvgp8PDqyym639npZy4VsKctzKIHqPVqf1C1VhjFvp0F0lzOiVr1pS88rwzxXq32y3ULncfpKhuAhOpTO6S/fo6+k3kVtXgopv1fyQwJfm1VIy1V61d/932BGWcoA3BDmI5k/LCyiDHsPVZ2xz/BHNeiOf7+Ge26XnJsNwPAybpDvUa8vO98qby9cbeh/oyWJltT2ilmNfyt2b2mvxPLRx6qPTIPHbS3/gRA5KFCjJ5JqkoTcVTnaCuenv7vUHQTyrJe29lPA+wBexuyecOcVtyNlwftm/QaqKcZFcWVpOac1bytybdCNc+G3yjeR85mhptpuKqcBgn+lXrlSXxijO7zEtBPqCVNX3vznmnF8BycCIxGVEMPEhgDQZGthHTKgnqG+A///MrfuvIbXAVOBu9qD8gG9taPUmRQtWaaqiX0GIEWTLvetIkzPUyD4T1MDweaxIX7ptUCLKGa5ub9xzfrI7sJTBurFC/FghqEYo81Wao2P3F+dY3KsEBeljIEhA3xTq9w/bfjN+vHynXnSpOhW45P9WzRLHnYTwD9BkbeBuCZf2qxbQxCPz5gwYUxhXi3M+JQ43rR9c3sbpISXg+3skJbgCzGNo7+Z7B59eWIONfeSrLvnu+8pRcSv4nMBVVggYwoy8KWyk0rQyNqhyyO5TxF5HRtbwqLms4qFt4jr/xCc1T30Z6aaBHaRumE6a2ch11eqtuK8AgiUfVae/mdvcPLqaK9V+uzzy98G1nLg/yIblK8lXKlttKXRcE0sxsdg7mV5WTytYx5eKRbz7g3h2LRg4oTY5/1sdExVfNh8reCDyxnI72qK75PkmoYY1tqtQ3m+7yxrCQgpcLSHfw3REP0fXrZ8z0JJ9ZgFmaziHgaSxw+Ix9JpH+eIxXWp/EJUbwBvjudA7LptTl7jcO4lfCnOsTG6DHgnsqXngcyiBfKonpQfxRG8iHzhHPybEVRncaZcqFcGieH8/1COEtBMaDGXDJf5/g6J3hNKgT/PuAW0s3T2J8Zpv3wDRB4PcJRMr0oHexiJ0jVgN3t+dxULowapqwxJZBMA/aaVC2jwTFj2FsnBJcUoktvxpuLYeXDmcxJke8vLuUfct9OiTgW5UZpqYuNXTZvWRtnRlDjZ8TdcuqNcLl/ryODzmYrW4GXBckM4ZaHXOP7vwXc0DdaPJ+9//USi/MdNeGxFvuYeeA2O2Xam/j2FBJIcT+3i6UYWU9d9+b1bp3atoX/e6Nm8Q3x6Uw1cBlw6cRjdSBk9ABcNtMV+M5Ad/Pm94AYJa7T+BopYvKao4ue7O1IT3/TI6muq9epVCFvacO+6HcD+dWNeRv/IzP7ZYSN0WjLBqYyGKvdWTbNQ/fpG/dIGQ9NNdQzwSAhnplVCe2y2Rn+bNAcPdHqxxiMkm3d9HGf2ZDhKTaDQjlxHgxuu9V8XzojaYZAb+49mCNH/Q4A7VgkTl6ZYjUrp1osfhqFRHK3H1QGnp6DH16POITGo5ilGIyNmFPJRcUIY2jPA1/YOdUEGWh5HrRSma0q92WhqLyPVpoVyntX96sgE+/AqjKg9xxErF5nn4K9ykNUs6fBnHO95wV8WmEIsNookhk9sDOG957HP3L5ZC8smYIMD0eeH9ACUKbsxrllwG92L8VPWcsX3PkMcmGvBCEZLY7A4KHUVwnMlsH/5dVAss5AEtmhw4nWqWg7nbUbbD+lXrJoog432rzEF/jENdPu0ZK9qhoUM6apkyfWeLVnVsxOTd4UKZCSFGN2hO/nBVrc/bk7AKnXAx1FRsATI+lYTB7s0ezj8ks53C0olurPjD2eSAbMED3McWFiOgLoaNvK9/xHajuStvvHbBaXTrKyV2n0raDaJfipytbNwC4VDoTreARU9hJiQtXC4MNGYSKkdYpXJEn2CF0OF/F1+leum9ymWfMc+Jpv5uUT5TOyfTb21W9/JSa/pjL5lYnyhbMUczvmWsvWBDdNpfzwaq7MCqoz7YwFQPRULGLuExr+wxpnbvyL95yjkCaWis8NGsAi1lVi8XqVIiEETT3K0sYGwK+FALtrfEJws9g9tITVip3mmjcRsp4MpF0by9bJBpK86zMcucd31WKDQbI8727FqArOhvOmI4x6mtuqjBN+1jrrrNyEyas9pwA2tuCYPdeyj+/H71l2HcDkZoahhaAlg1yZTvfVcu5GAkSGB8cA3PT4fwq6ojjZeM0SqFx4J5SzP12pbQIi/y4d6Uov3ZgslPulpfzQcaHbcsZWtfmDqu8HJkYS1DKjD8hf7c8lyYL/w+9ds/z9jkQPmt6KIoEM7y1/W7VYvoGWrMv4v86GtSmUHUWXO3rf3T+S/2k5eW0FFS18CHR3HVVzWDZuQDfI7WYgjfsLgp6DRC4BqKdouvgkXE1M2ROzNuwrRdmAkHrdm9Kiayx1GMk2WvEzEjwCS/79vd0UqW7Y/Fg3An+E+/yub/ZNbz3PT0i34RCxBv9YkjazwtcsRGlczgZr6PgQ0RuLmB4zEg3Y4JkBy+CHJHbdM8wYzO8bKXCv8HOK2MPvNWNriM9nDySqy9ealRAFYkOijH3CskwkW1DFL/836La/19t5k9v3Pdzuk93yK2H1zpXMnLj5YDYnYnq2P0yC29ti6Hzi+XoMKvP593jHJMsxR67SjwQ3flKYTlBeqpSydthMetm9XMx44SaW1FXm2ODrcUmrRjJHbPkCSV1SCcFA011BAniJYnG8uoozE0BdZ2ZCYLuRWSTBu5WQ4/NuX7GV3CXO7HI1bt5zQbgIS9zef8I9ksrj/r3cNUh6ItYI+siMzff8IxLLzCvSNWkUYXlVmNBrztEFfTUUGXRhf25uoQsSKVI8lo+HjdLQ/SWFNycqFspQJkv5BK5AFzFW9hFNvkzxlh9Iye3ODcuzni/F+c+5V6U9z1M9BhelPl04E4WmmRR50SDAiOahvJfoqA5gxqm1r37yZbg/lLbnmQsHW4r3CBlXtDqXls5bUDhbiDyIb8JaM7ap6hNybeF9BxPE/NEtsv1nEQAvqAMLNkTZqJnncOGsqvMPEDY+tPxHIkD7LnbEZ5c6CTz/AVIUUVwYKbCGqf1np6XipOuAcH6S9PziJ+zi+lMdz66pgsD90eaZcpR2MksAw5pn6bYOWD+ecTi2oW2GQ5IELZVgEgyMdLETXPbEExC2R2mMMa4Ey9nTR7gs5JgP4YQ74nl4KXm9o/800itWckPqz0n1bcxrP5E5RRjOMK5bdbhGm3TtlQfS/I8baJ8fF2wwQkoj76JfLw/lcUCUAjRRnXST5TUVHpZvtwiQU6WESWEIpq/NO30G8qPjUfNm1QT67BV89gD1OO7tqO3o5YCwvVUMA0Sx3/wAcqzSi8pFBQfKOSlIJMCtV8ivxbIaXDy4fXBuhUvATt8ncaq/FvAt1Heik2bgEu0noX7Z/bQk8VvdDaw/Zl8rvv2H1Jcof/Pd40+yz8ouLz2+q1Ql/lbEEWTCe3E+C/umBCRDluXIiI+Go/cWP5xVWyeyVNTE9djySQxILsue5N9q9vjV6rv/6CYb2h4I36dZuBB95WF0Mr5bKGNa+yBEmsI5o7qM+5ijfxqilpJUoXuAJRR2/itPtVKLaXDdoJzHpBsQ3b0MkgFH1HhRGnXn0b+aSoTUCQXkJr5nkj58bsISgTs46QjiO0s7L8Q8ASJiX31jYuwDOM9mif6ed1IHUEOCO24fpk4xvaqfV0MeCobVBIK2aX7lCNOj2AUCQD7kxyKA9W3yCnw5loIUDyfzVeoTF5A5FxYBn8Op52T6A4rJUYjA2mWV7v3GPu+qtXE4nKJ/dIYGAzS/dtKYJl92+fz3o2llyhvuszx0c/s0L9vQcF+7WkrzvG145JpDnr+/pBqFerTmFt07Ec1nFTUst/HzX7pA2ffnSvvTnieh3zwtyMHG2rsm47fiOUvXeNLrfrAWAM4eYR9pQ9N/2ueZTjbzOtmU0Fbo9Pz5barcAoiCcAbv90LR6JBD0rldeIbN1BWM/UagiyJ0glsfxJSkxJi2PhpQ+TpgVAjzrt9BrYZE7lcgD3BzBq2mDPi8D3YHwE1O5IAKXyI+5bgtKa+WnqwQYHxAO58ZtmmuvRVEym8mEgdihDi7N0jekpAmKuYRYFvoqNBmWTwDgB6R7ijQTsU+PkzSfBDgR9YBPGxVPApcUIBODh1fCJMxnUtxG1IB+LZ5zf5LeGdoWz4FqvH1WYH6E8uKgEKEAyWMMSCeJU6EqBSn+DIsvIPJ1bShfAqipI2WiSGz0XoB+9N49Xrgh4GJjo/OCMKSDvDhhzpw9erwBbCm9wailu9TeF+0M7cAUTcfBXb2fXreiGetTARRYmwpE/IVIyan4V3uAK6oLtnmGIxSN9VvnGLJcyj67YNkE14NyIhBAn2B9G5SfX2q8HLJilK6Rw5/fCkJw+7SBYj6CttXP8oj1bvXSQJfIt2qnrGPysb4YW7yY72t7R1lA42Qty8m5m7DMOgmYcg3BgM17zDTTpwiRzGDBDEE2ab78I9V3cD0ILduVI5NikHnhOM490qa0HSx8420KrIaIBukwqfj/61+2quc1MiQHbQC1oCZvGSt0NSWg4+1OQ7yW5HUo0HF3iu3OPtE2k/D0ijGvEWoEKn34GmvI5eJQx5CIo/re8+Pa+Yax6UQOV3y55edS+cozznFdA19wfSCYGFa7OrSXNH4U4o8ucrNXVLkh4fwprl+coYHdu7pNv6meLbz3s5t50epQl299FuI0Es8fvIKRziqFs5x7WJbwAfkR/L7z1od/V5lvY4fZcLpwu+jrp0fp4NOGwQ+dm/6gPJ8ZVQwJ9q4G18aTcdYzK0Aat4DP1q+FIttIU21HVAEtkL8b8oS3tdv90VYK8tZ4hrw6Ucu/hzsgopIXG/LbwwNrwWkCY5F+KPHApk6rUzJhLMoIWGleGQgGrSVFmS6L2UifzfxGr7ZKonmzb0GsX1THaLR5FImQo4T0BHanzXoAMBQK1XyHMYahyCGfIT6HR5mOzUNZkKXag3EVWTHvYR9JjnP6bYcw9YrxptC/forUCdPdmHianXH2DGvVOVNMdpvd/DE1LZGOb8rJi7xUr/rDiQQdI8kqIIipu2ZJ/crLaHIhMA4GKDw3QbjxGQOHew7V5mrz8pGPMpitFFs2ZCsz7wG1f7tC+HNsWrb1hgS9LRm40Ueyi9HGxDRDKcaxA0pozMJvHuzoFuI+D2IRHpFoK2AAQES6yptOGsSuJMUG5oDxnVL02VcLmW86eI9VcU+6xGhyVhg2uqhsrmmR727jpqxlPiQFPwoH025BaWmVN5Z1878RMlyYuaP3WIfz5VLeMEPcBL3i4te9wRNKM93ee/OP8CPDE9bEcKs4Hd/FyeyPcoJzz6vkqqVlun8eKO8/+vclGa4NFa1gekdsQbgvcC06e2zvbqHi9wA9VvMG0+p5oTYY/O+ktQAPR8VrMkb6PMMGPdk6ea/B6s8IcEg4nrfg8RxRKnWDFZ2SBod+wpvg506OF0vZMOjORUCqF7yo5ayka+itrUzz1gjdqMQXh+cxAsYBVHXdy2RL8fjdO+YhcOouyMz1gNyxnbNgNrkStwKJjLOTCj8xo2M/Tgh2yg+Gt6plJfxf6QwBujOy+1gT/0heSNDtJzVBMbyg3Knj2Obh/9y9u/gO0MaBRYuO9Ku9W078XASYB2GcIu3z8FZp4LrKlXADLCWtexExyc5TAMmTpCfFfmCtQMCPt0zM5aUGIIW8mROxN2WScJB3iYIyeELST5lff4DENmH/cJBS3Kc0TnUVUGzOdMMpJHtzany3pRhAP0NgaOxHMhTggCN8q1w2+RsP1infRWcsJ3TO/qQpSWKgHqk3sCEtVEYXE7rgQegjNpZjnVUDWhJ1BNq2CzXOZEDyR2IKqH4jJF5OwBArI98a2H3ol4rKvJ2NG1jHU/UzrgVNyPGN+8IKsvRWWA0WTzyilSwQkyOutvCZFuggKCueepyXa4KlF6DYE/DWCUjqKF8B9gqWcRzy46xlGN6Qc/7nA8jtW/l0f+4zJS+AjHM3Q/wrBuWdlwD0xdw71bn8FoCIHiANAONcS2nIw7MaTopRZ62FsBd2keU8x14zhfeWpxrTeJR/ujih4cN90vSigKip42YKBygViUjO6puIRAD36I79DpuWO60apmVX3oZ6fwHlwconxVzEh9zUGwkSY+7E5H0Lkwvgpge5hqSlf611Bs/EZuCSOC5qXJNym0sbhT6xk7Jm97cEUb+E6j2fPhuXh1nB0r+yZhlkpSmWSXYURYl6lgLPWe4d7gJqRXNhmyiJLi2tVt811GWIFAyc/JsN2yOhH3WUSgBA+vc3CGdZXq49TFWUQy3khHRaKLbMcwJi4bKzsVWiXWl7Po93jy3GihWpXLWzIK42WmkJ2VmL8hyE88cGSXZpai2T7/UUBCIHIYdqzZdj3ki0sjaMWtdbmlmzWJEgV2obM7xgKY91Z40dR3DgVi9Zw3mc/Yw/TGhNSSaHnUbcs93AFyYH0F4V98zyOQ/PlEyXRPyHxcrJQO0OuZa9XJorRfnGGSAz/tYVTwVmHJAuUkwVRRDOmkWiyAKhEdcNQzTRPaaCEnZAcb3QDbkiOvpB/gXfe+V3EmMTHrSOUR48H/EXRUF3V3NESwbRIQkGkCiPEK376ms4jHOB+1gk0Biwq2siecyf7pKq1X5i755NiIR7mZ08IHOoRQQQLlNL9W+Ull1rSVpymn3C10stdFS/WrhdCZSjDi6B3q7vad8PQeBNotX0ijAL9BcQpFeWh/50b5RqNp2vZ8o0Y5j/wsFNLn8Kx/CDJrp8rUDZY4Mp3FBE6E90g0doHusLZqPRydMEwD1X5gbtbH02PUNJOwvmwmHLHYRiGZ8kL6aG+mOFfIPPqcEeSvDFC0440bcqlooiisZTiv3d9nLokDUFjOiUsy2Lg+gsuJju4+463bUFmX5fl+2+fNTlyYB7FyNCTeS5ujJG6T+zDcslJtZ5W2Y+PufgKcfe1adM9Ebnt+qx9qC7AhC9NN6Vuhx7UVHi2ZHTuuX2oqH15eBS8BJDmuQ2SMPzwBgrJEB2F09eR2Yq6ufciKzDXIvTMZ+83RJuEEPvrVBdKDfPl0Q8oUlOykid6r8ruFf7yZJxdrKWaC2UffIB9mxP05tHa4c53ScM9T0Bv2/9RnQ1zRj1gVmbA37fpw9q4eTqOigvaYB1h0JKrwq9BcdVnbHpSzJVkafA+MA87kwDhHCpyTQvsZpieZd0fj8BThj/cKmY21zOerv+hj80DnwdYuSsq7DL1yTyntCgWqn3wwk6V/1GJ/wczWj+WhO3Nvhkc9bAt0s9eG1LLqAoaMNUp2YLpgdLXqek/lax+4nERKkorRI9J2EopBkHA46NKV9Cix2lcBYkcrxC8bBdlgc+1HgleoVv8M9d/Rd9mXX63jyCLDVimGs6TKAI1VLRfbPANphlu/yBWcSLt/u+x2R8IGKMQPWOfY4l3p2ytGiI4/9efprRxzMiJWz1OBGQKQiBUqD8vEVtUA6lDtB8qASSZj08IXevBKVs5Op9fHS5Fx6f09YnHXks+qFpDk5h1y599CqLFOlaWHyxNJrzvo9wxA4M575oGj2dSZ1FeKAqBCas0aTxrU1vZZWFYDsSuVq5VmXmNp8ErA2W48DqHvmejDA6wZtw+TxeW9N8F4QgnpHC4vPn2dcKTeofup5Wut8Y/P6pQHE047Pvklf1KcB3ztybTzgKtNYrd0wQrSC37zUiIiq9OTb3wqmX8EJUQqwAXowW4I+9SIQcLw+oj8tm0VYxzoXUe7PvtDmbJdbJMmtXGLsG2E2u3sL94fD2I7Vy36mp9UzpqUW+7R3bPi4chZ/Ll8JhHljpBZvycuJhiFOfEUN7FM4unPtZYYc1UNW+ko0tboV+EuJb7hePOrsB+PsmIwyoM64KZa9YgiQYYySwzA+2U8OvtSmX3l3/WpyVUBm6iEQaQl8fd4+4zy2VpWWQ7ORaY0zWncccXz2ZHgrUA3XFL9t5l2fme98Bq81s986w+9oRt/ZTF5z5v4AB+//Mc74nz/Hmar+s8CsR37bYK8P+DoDvfGBX3eQ1x/0jQ1OcHIPszkb2eNMweP4XGWh9OxeCq3M96AXF/h57vLFM+AdalZads7NcCjLt/rjjpJ4UB3U/kyPcX2aJHDUkw2lEUBDDzxzS1Zfy7GGo122RUCU1cdh5w0VFAe2WMFyOaKI0CJ9em6myvTmmMnqUKo5jl6P7T/BrRSbcZRMuA/TIKBH300yTLvHWqkUQg8rqHnKcB2E7kHjXY04TdDz8bKgTsSkFoBWRKcYkWak1GJFmxf7NTmJ3OjlxSFQLxcO0brlNryQq/GoNMLYprOiLlrROidoIL0cDEDndrV1ZQvepjxjHs+oGPmaORrOMLBAJAGmWrQEjuCQJ/XOqFYk21x3/CXHWpzPlftz7KzWFCOh/LD7YOjdViDWbbaXWz/p5M3EwkYDeTYttuzWe2DkUF8Pbq5KPZJhkumi9l3uXJVRQgNmfsY9JgLTPgXgizuHjwO4MoiEfph4AGnfRKkxTzDIhXwpzXqCcTyHE7J6EnCXnCFdS7KD7QEBqS0JyHzf3SrLqe+nORH25SQ7ehKvrdNwBMzbzIFzKXLyQToicRMeqqAFq8+ju39qzqBxad64NyBx1Upy6zVSAfviQhl/nS9viqfI0Jz7+9xPWGqBW3Z6C+uHTpw8GO4vhuJOIJ5kD2x3C5xjXtGry1grecC7HhMrnuy+bLBKpIgJrEMaXBDxKCBxLkZojkZ3zPcSF4vdsNzr86DYWMa1CbA5n1IzzkY1txPYTzah6JVym2H7KCRa/xZdkugcbYPzAOGEKxkBcMXRmYxyrmgD80T4M94LTho78XbKBxc4wNo740iW4r4mwEvZrdYTlYvNo7FJBzDN1JIA4BuUTV9ks7gMME8Uq4p8RDtDUY91sQAMABJNoQlbu27P5ae0kGYDsbjHqQ0jYjMJ2owOxCNUVhN2woQq/lBDyCoB/ojMoBkAtGtCXKrhRoKtuyEyBJSIcTVLCjwXffok2A16XZAQwahlB0ksc53huiVCOyRAxPmVD3ElfhHZiumZKf6VKyxJiPA0gG7n4x15vmXMQodvQeHJt+zp6tm7kkYbCYwzBHGNOOV81Kkl1HZnqGTM8owUhrkAOd2uMXQ2r7LkI1Km+NSXYOyTVDvcM4NRCvNFJKF+hbmIjWRzmDqBHR3neVjNJtXEnmi5EYtfvqWVJ5AvwiPMN8brZ8D45bWStjdVPw7gNq3o3AGuRwS3XZ19SdMOp+WypT6aqi+2RQvw/YXaF+7TfgIjVqayTsGnoPgsHdkg5YAlSlha++BTlD0JLHGvT8naVwpuaVDtOZ11QxxWYtB5CsUzPruCQXiBG2sIKXVoVWwoCWJksT7CaSHWz7MU+X2Swou16sW6b0HrDZ7mRiIlSyNiuXy9h9BOdc4eudL+APXosUwAWMasQfHhYJ58t5fTwnyNitBcEhSG7OMjTGxdrhLVIKZFgKQBwlGOJAGXDQNG/OzGuFAzxgZBuhp2hGaTDfG7lnQDqdcUFdaBgBHpRidA4uqWqCrzJbXQDFDuzPoF4K66kfmYKdUuGTDvLL8wmkKTPP875ep0DmbRDbi4vF6sbQBX3RQEduBYHswGaUt1/5+fC8k4Sop6kk43Zncl98aLa1QMYIu+qroc9NjgGAA45IYJuFlrTZA458YDeEOYT5NOlHq184c4WfRKP+OtzEkNbmgfVVr9sEJxC+XNlyLz+LjWdQKRKuU+FLXDWtgCW76HsXRkWFgU4NbaZnDNsnJ8mpPCrRT406PK+LAYvl9kX50buaVKQUMFLHJlsyEong+D5MAhb9G7wNjgbOQu6CycbaViXnkekRV/1wpj6/BLN77r0En+TWcvrLOatwVCY3qvsZyrmw6iKv83+nKrBp4pYzGgdn/IHcp8Zd7H3b47JpKh2LQ6Uwkj4cTRNHnxvVBtOZxyj2F45hZQWmQKo9XRnh50b7qlrkDdmbWCdCBXNCsMQhHBwX6Ah2imZyhHpTNT+hyWS2OjeJ0mp+iL1Ra1jRkItsfQrFewvh3o3VsHGktfVqywXwKeZOwjfxvvCRPbp9KIwuGGZuEJinOFybMifn7UdVwX7w2JJxA7qiSo+FB9Um1Q+8mCN5y8gE1jrQtJlFHG1N8mXLmDLpq80yhHrB3uFn1HzLvcUq7nLevwamlWG6ipJskjrQKsf1xF/KFFex2YPXMuSsNqgGUhtYLxLnIuXJLIvQTBfefanIP3wXk1R3gcCqiRpBTfVdNklODVSs9djCXngbcJeKNEL3Pht2mmLjPgHszbsR2LkWpsZ7fb/4hfZy10FLIoBVjVIlqWC0qflmqprUCIYnrgMMgRe8lRQezXnMZtB6Bl4c825cvesoWnXoB4Dc77MbGzLDnhIGIfp8jZMlSalOUOWyzyrKaz9svFslRXMudbzNyynarwbYGcyKNEtizU7PCzKdJ06jP0fTut7h3l5ZiiLJGKcbfGkCi9u1m65AsQk7eohJFiZhUbGjMegY0DM6ZKw2eQ+bUYq/lvKr6gHqiMOl0jF95YMInwLnncBZuSiuisirl0tKwDOT+1WPe1yi88YktfJwHJ4y4+ljUlS5b94tNtXaFMAwJauc7jI4047/HPo7sGgbK6Jy2C7mu/yuOEI+kGVr64k4VWfuEnOjR3VOkysrlFIGKO5RwIHSJxbZDNZm3A1UXxoW2i/bKq5HJtlIPZ+F/l2DrwRViVS63WLcN5sOrkgPyAVIlZry4wdK8eTED/Z8+rduclDzlP2PJYvW3TiAXIBlpKcpnddrK3bdeLJLOME+X2DtuwvySislUqM6LbRuV9O8ddZ1FSEk2i92QWk4KIgaJXG2SMlSQ10hpIPxTWaTEhlqQGFcuabG9TrP1xYS+fPUvKAsUHFgqFS80jrvXF9gG5Q2/vzDB93Ll+FT6KsnMkvjpyTIeP5TW0xbCa0ex8NAlLBIWTjzXMqW8+7eWfV/TayDYc+cpjGeLMkOfIQYIna0u13F9xw1/7VEO7dSJLKOCjMHYyrXxV0GKOdlSNyJTIWRGHVG5lBDZ17EdzmD21bk5Iyv1t0fs276+bvsys+05DKFo5rcFy6ujYlnyGe98uK6A2skQT3h48tpyBalk0h1dgoUk1iduitLkVxDr5jcu7uOVdSiu0VaLrzbgGzODy677WZ4Kc28jZbLDGJqeoOdJOY0H+EG7CU/nO1w40FiFoTm0k328hcIXfYakDjV7lvWSE+gzCq7iMj5toTygTRG4DFqNgJlU9X75rWi+x2H3lOi475ceGnQ7O9ogkx9xUa1m7AA0psuuy9ex1ac/sIktYuq+vIJJ4IHhgHxIbR1uhkGxNCahMJ6UAfUK/xdOnPhn1jOFUyZtFzbEXl42LNntkNw1Jc6C3wx7ecx9IoGBQwr+93J+V1u4QUmNs6l3I5DJ0ytP3TZppvrcQ6C87C/jr8to+FVJWzFbaL1n+AZx84tHI/f5t92UXW5lFpHBt9Aj3eFHWAqw1Hl9qnvxw0czT4IZCDZhX7Y8knrQ1CMztma9VaC06ZxmHEFtpomZdJx+DTLcxVV3sRLIbKh5mTSmBNBbBXv/admFTdtyR0sJq4Tz0WI0SmNygYxc6AWW5RPwtTQ/Ho+gNGWBmCa4GKoNzE7IgywqamjAZ0pTsoE/hj3jhEPevuhhB25zIN1K43HeEDXEpx2JjHITlKWp+3N+iBXhvnMbDE3H8gjXz0PSzjIv12hdG/5U3Mr6xRa4vrr/TLW9HLJ/TDEf0b9XuhL+0DNeDRtuH7Opb3+O+DuFyX+H79UHHxcBlsH3063nJEiHlDHPp6urlvXGN0JDSESfyFZej0bUwTBRmnLAfJm9/fDMsAkQmXt/A0qcvjzkO4BclN5cr/syrxyp9xtVwQ/98VmR9P/tKLM+nrcDQfuOrbexghuMMndpFvGRc9KJlMaSW3KlUVCkhujNRuc8PVuDYn7mnMiMY4knV/E5/6M0GydEI4s4tGeMXTCDq9piGP9WaEgtCBrlDutjoZMj8PB1tqzmnr01Zy5y3wt5zKrkFTUlOMS1Z2mveNGbcBsamR6jWGCgnEuyQd5EqO8TzRx4o93YI+Uhrc54AdYdE3cmcJdWLvCgkRvdw1Pf3TY5JrCWNoX2A4i3HtTOxWvBiR1ywQnUskw73TYgLXYdn/c8WU29vQTa6K88LgcVwKDa/9J/aeo/5FhN9/y7saCr8PZl0qylwG2kfXvfBWme4w624EO7o1t1axQuvgvl4RzB+uvv2+1eQF7gSSm4Pf6KECzqgFcZg3TiMHThLczITVBJl1ifc4ofh+ej4fhQWYh7ow2dwkSQKxuwtudzXyqldi7HDHzwh2X0x9/wpE+4q0NGVdhfU+rmRExBV76/n34/t3RQCO03JvUGkQ0KeoujYX8zOUgOkhfI4Q9PZ2LcO+fLoXq/JpzASKB+f7Dj3Yhmfb4DJ6zP3Wkx9ue+zI+ndNK38e8PDJzpa2A/0WXjb2eUPlkc6MrZ+N5JgcjM2UZFO/9iLvBHQAGwqIpRvOm+KxRrql4p1+PIHf/9Z/qxYyQu4C1WYeDN8HvvIanMF9RCgMLCpynfPIG6PKLX+5j8sMRuPlNlbafEIICMJQj0VRfAsSNkkHVTPoseOFZfMg00nEWxSxRwPUoJ/mHp5M/WOcCn4lib+zZjH3zKSxy450ibWh2CfyoKVYECkFYD0I94LF9dxKGZcHDm0DkhIS08ZEN24zYJBQRJ9O1T3GkVCMoJRjyfClOcUBKbhjRrVZyfHCtE5ncdnWLB+Yodk2LXzrPDTFkm12UAjNTBupBPZod30sqjIIOkrIzT+kx4Gr5WOrsYHnipg5osX03gvdqC7Fpkh8QmPat5CLcY0gOoJCyIaoT0nIjIa4I2q7qW94w0z7ig2o63KafFCeMzRDeA1IOXSRlcQEPPMynln+s74yoDRN2TTgNckrBPtn/zk3iwMaFDMPy4y3haqz3Yf/Gt6/k48k8STdkPRr1VOeqSp1w0S13GSLVdRFFq2nFgJWG2JWHh249kMKOZNY2YLucxgv1DbZUzdTrcYYqZEJLI+vBtQsbyJmqdhsJUq9PS+4nU9ESYuNTDwawCgrjNYCePdvQGpHM9exYS+worv6kbAhb4/9GZyKmE4XZj3rq57o0Ey6qWBP/ifftPG+ECaHD2KpVQpoBUyjUvUcOVtG0DoRul+v3Myli7Gc3ClI0iFIgAI0kCHsUvUx3vnSGmOTF47s3w4MAfztRHPsPhMTkCX+tG2ulp0nlExUjz5aNfWuG2XIjGBLFWekHPnslbOEGdUqcBOqeHEyGZPsejCmJw1Yg1DXEHqziqxa85smQA/wS9QlinrCzb/iHzQiBGd6O1E2dWRpsie+g9R8T6M0x+JxPybisMutimfGctHWDPu1GrGsccnlF6DnYtaDtFg2SXiuDGetXy3lVkR9YbXE57pAA1pCn+2A5qCilrSvvMoHfP9XIsWUhDkMUQeHvM9+9U3ZBnf/RvnrRgd5VYe/jBsPgD0d85M9hWRnSFO7lQBExYwekZYCleKgNQZvgTluud48Hl7iFQ+Dy/osMm7aSWjWtUykhbjQ6o8a11DG6+YArZDJZhKh6o2JSc2nT+FCrW7vu69diA7kn68m8c7Rny3YLSqxaZuKxfPenN7PwpfSo44SlYyYkv86dYAbOtQWPWdpaUlTwWNnCNPvsX460+4HOLuu5xgpKx+UEPxLf0wyAMlwF90b/lxUHH78ZG9t/xx7qUw9OHi8V9JlVzG81r5D9hrGGhe2K3xBja+p2a5uY2k8vx+/QZhxY0nvqeH6kSqwEf/g8Gs4ePZeT9QBCYQefDtxgwRtgCfYU9FMDgfozi/xmvK1+2myyDCnPN7R6WdgkBLODYeJtNRTtDpnT2Xw0UF9z7yruvxBmm0OlgldgjBAjPny4Z6UoAuvKX29wXOnR14agGxyEPBrQFxu34ZXV7AOHLHET4bXTv2VSUgtrynlxsE0Pw2diwHHs7h+kl7tdrSNdIOAqqUW+zrvMOtTSPIMMBjBLjoUt9heB4IMrl9gump47B1YGHnAJX8+aZvUDi9gnzWA7hdVGWee0CB2l7cuejdA2bZGFSpwegLDUcPql5pQ9KDYFoz/KrgpZn3bAv/cIvaTjYA0Cst0jCQrUuRE9BWDfXMiIW0zo3Z9u4NDFsCgBy6Zg+8RMeMbI0xR/couFckSnh+/gykzOGncgY9ALKHum07ILeLA9Zsym/6RdONoou3gy8C0STewb9C4D0bBHI58uwX8px5kQJjFMyrWx4HcOugI9Hj+j1qSLw9XbmAP15LkLxXw1ansjDWPiAv+I+5BNNCos8XYrUfiHwx9sWKMcxp6Q6V5aLAGKSjvA1oUjLP+BGR1KF9SwX4Ivy16SCvDa9LIgi19rPSNxk9msteY5I8GO281rud4keiikX6aV74nsLoxSglWYH8YksisuabBhwmZ0XU6sf0e16e3vhRXhMSSqveKs0MQGL60XK2HD87P4oEUyho64XJR8gLFC2/RNHkXnSUPyp6PBP+3rXoMlpPmP+9rwf/YmJ0lQjHQ/l2NTk55gf4LIkuP4Dafv2CevKvpRrVuBW8jGTxA2Y0MUo2yjHxBVOZ4QfTpvA6k51MJhv21wzN74XYmrgvW3mHJhJHATpHCddgtqJKOHnvY3pnhCtiKtXC2uErYAmypYVZDn58Jppc94Yto05B9LxT5dgFOgQt9wjrMx9mKWsVQNKybh2Ng9638piHz3E2Tf6Q29RVFvt+Zq5yb80cPD8Cw69q5hccewMC6Q1W8u9AM6kqfL8xzTfTem+i1WjQQb/372njWzTfoObERyT5d6T5xjRLB3zxd68136UWgJ2zY7cY0JpKm8U0Pov//03L//wDWgmT/xV7j+Yjy/zTtWec7Z7/IfubH/zKdoSFfEybjpip0bIFWMsPTn6gGTnlttV1oeGcel9+TPD+Cp35QNx9T4Q45EMG3ZAhovbT9bryEQBukxmdRNxJbD+2fI29h/BJfTO+i4Wwdbaks584x6FevM7ze9b3sqrO0WPGZSZZOSS5OI9NXc+/kX1G6qche55iozEzW3mMn5SelzwN8wOxIP7yLAh76ARqrDlS00XlS3pXbokqJYM8B8hO/dHh+rUO6/DK6s2Cod9KcAsO+RpurhiVt1+TqOzMxoToG1jvkGR24OZA8VDL9TBxLE/aLvmI7B4HJFpBzY44WgCrmxKPGxFr5a5pUlqvmm7+4KKtDVR80DuGhKbFxw3AulDr67pfMk/UKOhCCKDR8GmpO5SRNaT7v1GmNGnH89lYoAW2k4X1o3SQNkL9427HLuR7beGf0MzriIVNPBxAlwbTDbdQPhPx8GGGI5YmQ1wpP+49iatOS9HJ1FjxQMzfked51kYWKA3rOLkB048xIwfUjt/P78JMvwuD92+iwWxOgyRUjTRT67OX9kOBIyrUrraYSKXXRlL7i4CzKYSimIXyy/kubG7HbxmeCRFQagWYf0Kzj7Ge6ODVnV0BXWkuW6GU3FDTYTEfNeaOACEeFffaC2hasdhYe9nldQy/c8PXN7xu+B0bvgHDN2L4Goavafgxo2eNsT2o4OvU+Ansb6R2KFR+T0Ycf8W+5BhglOyIeFbOLMyOVMRSR7mxcUXIilEJajxBC+cSU318/UT8agMmibFLMPaKjPGEonQ5mogIyj+/eGpLJztJJ19Fs6YaCXF5II23kicxJpmx+o+d7PShWQykD0K1QikPhpFrdqbN/SBTV5mxe4Vva1uu2mjDY68UrH/oNr4xdkE+3RQs0ypjeYkN/quOKrlkKVDFEH94ioclmYtTxd4qK8nPLxr3K6LM9SR9n1Cp8YfPFPTnegKvXHW5wvs0p/IL+fOayb7xROKEIYk86PpOZxM8Sa6YNm8waf56rfyVE99pDlvTxtZFoS/6ngGLCwY2nocNDTtS51TEc7OBWOOhnY1qFmWCCtJ5Pw/WVQkoUfj0s9yg/HXekEfsvkO4qvNDqJEUyv0quvZPdMr/xEj+TzTyf/KX/5MYEYmFQrVktpelS7VUmBgMRSNMtNbwDRKfPX70kJxir9uT9153g6v3pmADN6HXQsNq4iwD2tmkJkM174OgOGZh7Zz88J6YZNoPs+PXH499c1xr/+Ri3gqDM61X4mlxbt+9me9MZnbTcaiOIr2yJjTRptXOmsZJozVUBSXb7yF06th+6Kuqy8xkOFJqF4ZZjXHsmnH3ZnxlBNlaw5ERlVi9i8dAs+5GeXZiJkFZ5goDAqstuOLs5I6XPFA34t87XFTpsyFHbLbV04VdUDhxaD26hemdfiUfHokdcZPTmW5HgE96O0+aiJ0D0rXSX5k7khMsyMxhVgzIU0owrOx7UvbPGVXhnywVYnMaF31bALyVhY0/GMcfqZa2kErytdvIxZVxyzNozaWd+Wjtw9BGJYaxrNDdIyJdPTqaPVChA4W+2GRhPmQPajivIwq+73u5Thz+gJyk8h2xMg7lDU02hbIRzqu40yHRk9q6gHMJW3p/sWE/B5buGXRDoBk119tp3ZbOZI48tp2UNUUZYnLoMBrYF4BrwiT2HZK8IKgk+VLgglMIZH82bKTbsLtwzRSEuhd05/rSkJjtPW/T9rzPwc8YgHLMZUPDV2ZxjXSmj1h4eShmZJ3ZT+Gl5iSOrG6XvnaCugw7J5rO+QDB+iR0femL9J/tYrmQCeSCK6U0J8cMZ1auO+iyHD/L5VxRV6mRUkVKEVu+dPdyGhNZT1bdfCCOz0JrgOwcDqJsuY5c+k4QpUijzeeJIcnlYuyY4cW33FmKNJYqrZFRRM6cou4pQOLR7qwFYthQAsJ65XMeXWmGUklogRdN8LIC7wRMCwZgTsbGiCoUqJdE9WYR65Gw9QTrqJT90Lp1HXzr1inwbhox57gwPJVdKegm/SaTYtaBli9b1TX/wk35hkHDd4zYxhDoeqyGfYVvCLrVtxPI56106JSHcSf/1qRlxMxKQm3+27Q0OcnoREVSgTYLW7db5Bf+B9SVeQU6qiJgF1j/8EHPLHw+MakjnBYjnPjmtkL4+6wDQkh1llGY83wsmZPLl9Uojzd/rTvOptP/mTX7T+zlHVayNqUiUiKtL3eUhB7glOC5DqPTsY9kTLs1VQiU1DGUMmp1qc2ucvWFQF9fxq7TBQPCrq4o1vv2nJL/s4whIquGBOexZ3biCVnczC0HWRE681B2bYtlWH4GxeeMj80MqvDftpvykZLlBsBcxxAIT9RAlQKIjYHlKIkBJabiXdGpSAhhcyZQZdiHZl0IdL3mYZ/12QdzWjD1uxs6iGcP2xXY8R5c0Y+dSP0fMjps3JvsIwXX0oF1ztXR4LXirhONHFgjlQ3A9e4+7NKupfWmyIPPbaeG2rCbQy9+derldIvBlNd0g7663s01bYhGszcob00sCqt8J4JAJ8voQUa+cKAPPlJaRso60t8WhNXnEGJN7E8gTrLAFdt+03uFbvri/cFomFX7X31szlAYMFDYIRWmjKZ3BPaOuk+PGINXDFF1W+b+M2BGO5KK4Dqn4zziL/sOgcS23Zf2tf+Etd+5Ml/GIqFdra+ok0m+F5shTZemnIlH9vqe5Lu3p+/GnoGajlBUCz8QuvYIeUyNYE/U16cl35vtfO+2eFPbJaJmznK1xHsJq/1K7rNTAH1Tfr2ntle5MiLqKhGU7/Bo77AhMuuGTHTtsSpG94jTQSffc+/hq723geOh4TkA1ZZJXt6uyil6ve5P3bw+NhlQZ3SvL9nAdgSKgFNeskmJOQ7euI9Qfs9G+HHH36CHxauKzsjj9N6boW2PO69aOnVQXcWkYgXsdQhpphka1gETFDklySOQngVwwW16dPneXUE3Cplz0GEq56uPVc6/lfJRePxdwPJ7vcfvrfck15owjkJNJ36092cZLm80G3h/rDevehK3RxwbhoBvCJTyEkjmTyklXJOtwRd7SvwTAVZH6Pmo7482suKAur6h1OUIPCTBG0zcKU6sbDnQKEC6a16Ad5l3/C7EQvEWbcpxOqhqB0rOhMqe+IRemXm0vycINdYj1uwng1ORa2lYpLvnRLW7CqvPtS3K/UTcGpF9JlmMmdUm7l95O0o3C2zeo4DtvRZpJRJgbrqPQLdSO4cx1OKPkWk8MGehLgsUPp0/7Y7njMD4rOZrorxzpLh9mJv6sO40x1lLWKkCcK3SyOMmZh0zb3I+Y+7L9gnw6MTHhY9Z5guwyFV7+JoepnW3pSXON+SOUKZSqMuNJ3KYx34cl+uihdurE0f2BheJcFOjHNLNMg6fPxiisS3xlR5X80YvQEt0aAlfVylBXqal83E5rapjyb8yujJzEjwa6G617j7Ni0JMWvNP7sHJO/igweB0HrfFU9aEPWw6D9lghvk0BHrmuanBIj0UV4gUjPuT3+3p4YfO0H/N6TpWF+2OnFY926KyBip6tLHliDmpP4iEgPX2PWt5Dimy0qVe9tvVjdqzzofyDD6LvHWPYzMXHnrzQVdQ7qBsnzj/Cz0zxVadnbiuxdFXe5mo9LaZwLUgpF5h0WoWvJKYmqK61t9JgmW0iT37VhzyX7EezHJA2F31dp1qNSeOBKiuPHbvFfVK6vZveJdmiBKKQXd/cbxinTa/ABkwGJZeWXCVp+rXG7x9FbFwS2F36qLG7yJRobJu/pUHNXXY3if9W/Kt/Uovz/mNmmBlt8HzrH+am7t6gn4jnSHu9jzQV3uH+7qp9ImUfiRK+NFymiMmLhH7+wB5LHGpbO/LxXQ0QaWZ1WVEdyy3QGmm6aoQ5n1BDXruUWoMj7JtdrT6vSPwzz1T50OKY2VH3H0k+eUigLVTMn8T8LWoA4eM+D3yO6a2pq0SOcstfgNmO1mHX2ubrDMacd7kmQYMm29O3OBeOqo98Er36FLN5ON+uvTIYbj0nFGEprJ+uv/5/fI9P8AfzntgZrDuIcXJx+ZNxBueOS2bJEfhi5DCTuqi/PeP1u+PzbMuX6Q4L+/rRZzeLHWGbCfxdxITbwK2blRfHJ1ssJ9cumsdiLUFZHXffWAphwqB9Xw/I8wZA4P27H2fqj6Ar6Xoxu9acay0JFsjX1jqWtt1D1HrFKBVvoxOMykw5gDqwnjkDrej1emtrSlOIKZGiBArs/mOyZB2M6CKHrbFqxkgwKEjIDq2/CiQ5cuxlB84FLgiHl368EaycgVRVXackQW2Idx8wwDbk/E4pc2IrcqpG4oneGiqkTc1qZa/ZVKs1mrG2cHrCkdy3bjtDsc/7AMUL0W9AMZkaJAdHNvT7FDoKeQt/pCKeUWC6DkudSe+bmeTP35161GHhAaGfT2Ls3ua9fQyI1XxY5VcKyhWyltRfPQ3bU94f07+DHI7Izeffzz55Tow1UdTzToGRNy8SDJRn+dKEjF941kBne8CaLemr5WAWNUzxhNcD0T06jajjUcIj2V9FvMBkn3Djq2AqZlxJDeWE73aJ/+VhuZvgJtzu/PVGm8nstaePiFzZ3F/WqOw0zhhM64dXfic1RN9VAAc5ocg7IxfVGGPishC7K73Hc87F/BGlLXWyhGnG0aEsmoEyO69NEy530HdbtqgfGSeiwFhqgmgbNdXRAYbmm/u5FCSodJboZGwbb1qsKTZJaFgIcxLVO2L+djRabvAthr72MW2Advd5pyt+0DTmWTmnl4g7ZsDE5iYZT9dHOo6crc26Ho2H+0vIPAzmQzkEAUj+PnKZ7U/Dg7gqydZ72EA35xy654ykSk/mlbiaSEov+0+wrBppp0CE5V9TYbEQ0H84I13XwXZYGrfPOI9VCSiyUOduaBJmr8JrXYlPd/5w0TT8Pq14WVRgAjf2L8P40FepBO6utKtXmfK1NgpJ7Oc4wnSKTUCAeIx7wQK+DQnYuNlDzB3sSKpeE6rHsGDx0C8YN4v1almivXyWX/AYwLUXUBVxX2UeEy2WKEIQP2kmohc1+Cw0LgdcV0TsjGjaRbhD4T36BnJ9iXBrpj8L/eWCSzBJwryjLH9DNCAYjNcEGOY/wWTbcZwAlQU4zKX1gB3bdbOgHTRwGxcqGAPf5Z4Rg0hkl+6B7cV1pEs68OzVgoZhCrM+HMqyKq1HTCzGxjJjTvK4ongkkaBoLonOxHHVKtnyJvgV+PjEgbI7uRtWlEeuUQHBF3GL4C6cpd+sVTAmf3J3lgwcfZjmzzh8iIFzd330+PazdVTtI2TorECaSZnu1kTIe62V/wdDSOEBuS+bG4RhjHOYgYT7zeZrFsURO3eqCJq5BYMudXQz9cBKVf2uBOCC+qFFEHPf0SzvR3BFPNzg9lAFZ1RLbcPLuB2/4xN2VieTpblzj92fgzL2ydhqq8MqtunBedcs3Vp5iB7KVDSdSdhFqB8lMejsSws1DK4Z5hC/dnGvRwas6+e7wWXHYVV0iE4p4aC9ZPq8oTcoLSPGylwt6KHTdx0WTbo1o57qbLsKUgShDeTl4Jr8Ox9Fhs+m7TCSo7Ari9Ca6duko5MTsC7i6vrQ49g2H9WrpYDqD6jyQKsuK4B22vUVQAd5UdI+IajfX3HJDRAW2PTRPQrGIDx9p2Be9BcV8v7My3AxPg4aK6+EiyBEjIuHjhN2xx2LM62kwLv+F+4xvOu8rCcrRo+5B5mVXdvJcK78xq+Td3dC7IuOgRsDfsOWKOwlfbjiRhkRUbvhwQyMfQcMOvEyqxu4tc5gnr6cLVUC5uXwr19PyItR78absRdpBoAJj7o7ks4eDvyBwgp6DpcILqiP5G6ZRAn6zBU+K7OKVrDnUKcEm2mNCDrVqSg3b1C0WBOAXuLRdqXBqru5p0OgnnZRBUx7gJ8fTYyEV7Xf4jUevcbg4u40dwp054c8BAu+J/ybKSQIfLwUvdGe2V63vlOQEN1Q4L14lUYwLTS3wrTnfg74M+FGtq81UOurvZ3i4HcGP9PjmTwUXK/in8DJGdxFzrZInnk/U6Izu7PkrFqcFHKVD6twKiBWVqX7guSfKvcl2RYxqVCYkvWnrddwr0V1CARfojvRmZ7DVv+plMRaOMefgFlB9b88q3rdEYBTOk7G2jn7AEAzLc59iuEBlRytkF53M6ehcBJWg3P4tMaJjg35pXYI9iWJYlNL023M8vz7lBSm337TQvv8wK+Lh98IfehE9A92hoxzX3o8RfckYiIHcBH6T8pC1zsqjp9Tl9ZUcov+4ev7rwc2g5qApI9rlmV2S+xJ8S2TdZ+zRB+pbA5BKjH9leSBXFeH5MRJLPn8k6zUZyQB3DwM99L4vW1yrl2ux/JLyAGEMQxGSyozFV237pAGrGTANdbbIED4JXXBNQqtZI3zrSUeaPIOc/0q+gi7pmOJb6GRQxDje+2HQPsAhGrcFWd3it9Ytc4GT7ySjXv+7mXd+ahhVbLE3/QZk5eE7/zJrdBccI06Bpge1wduoH6qcjyfSB7zLpWmZP8k8x4pyG3VYJmXsZ8cmzyGXbbbCn/QMuH6cH4BjXvx/8LsKye8gWIDIdlGFINr/8rHViG3FuFM8uhQvf9I6aqjbLiM6tDIdvY8h42qmzL+RUlm3jmh3m0spf0WrBl0Jpz/5iwjzf14XMZrFKJ0+NGW5+CMgK2lLnDIDUlriWKs0faW3Vb+SVs6BlcI68EVyHYJ4A1M3bh1Ve3ce8N49A54JZosuxQ10w8ZRmFwufHxMvFBpeX8cLKp62eICKd4Blo4lrVdf40aErddCfzWkM3x3GblNRBp7v3AeV3GRL03/V7bs0yKS3AlZSy2ba+0noFmJrUCoi1tC1gBeySoqlW3ZI30w1VLFwG+vSPyQyErD2TIMeVa+PcOW3gKh8r02E5Qm1GCPV50vFMJSKW4Rpfb+RuwWdSB67YqOalU7/EHuKMbOFxGVrGAQUrrdKhYrajyfnyyjQ+iROWcUqUJ6psR2O7KGKC5cGj5XiIJsPY9kC10pYNokuuq43DdmdarTssHQmio2r3aSn7Cp+DU0GnV+hFcZqeZnUcqPbpPPOWRNLDlJnSp6p03pwMdWJvBMLbsw8mS5W4YM8STZZPqJtbk2OPWrZcCedZ5uIFnfP7PpR0iX9U74oyA3GsnaTU//2lto8Usf/+c8/2ZHJRrlMLZMXaCU+zMlUf149x9XBXEyPfslLCwoGuKeGdajuI3bY7PDr9afENNq/J7/Cl6NE6FsHBGyZX9gTr9a/4ANr/WQoHleAG8cxwrKrARW+n4ZbyYva6Fffj1yUil6+3xZ5/3/jwRvj27xsfv4VPG3isPlooXrAnr4mkfTbajULTyo+q4mkWvcfVCTZqvBz7d4hHLkpijW0Jr8dGYlE0DZSNm0Kxdo1odASyZoHKWr6SWYYOasdA4yPOML478WfuzZQRdWUn6xpSXFT+g0cfisNpijWhvxJXI/bSbhXXk5vkwLCZG/ZG0h3zGlxZRE22BlbJ8L3sV+Jc+q0dI1czATFi34J54LkqBIYc/peSbpkybuWu4RFFkkNOY6Ue6aTtPn4dxq3ieSn7TkqTySvozfaVK9tdNGgXp1rUZt0VK8Xf6EbSOGoElyaX1oCB9dC/i0L45wPWuX+t61NZnG0/6q1RZKQeRGtTgAMvNbDSxAKwGZS6FPw7T/mYPSR9dFj4u0vLQOYRxbMpGAWbEG+wBOmz2Z+J7GbGiCPYVBrSIXbGH1A8ldg6YVcQCBaxCJjQf/EV/xVvEslzOYfYDGQL3cI8PfUvPxE4fpoLWPruqpx+eSiEzRJA6ygdBky+dNjQR+hK7Z6JrJqAZh9EbBn5lrbQsDUHqZTs4Jj8MK180+jnjTk+Lhay447PuQzaOKKDrCBqxS8Zj4+rgbuqxFOWTUtCWK0oDr2VmBYURdNG828dMAQYUIDFlYoyS+DPoCQZ44g+++fImn1XsstywO7BSHbPNnCeLMDF0lrxJUg52TSus5+u2O96cZenaq9pEDti5yNuw5WJ1aGPx1spqPp7Mf5YTDouHVN5WWEeSr6U7iYJmqrxtwsJNO+8US04kChrN7EtATK1Kldd0xwO5QrlbQq5Jpg8IGa0zKERk8QvIk0wmVpuUyh46IzWpwFJfTtTHV7IOwq1dU8uGNDVvl226QVnqEYQXcPanPCL+ylo2Axp8yG/ww/iu5Y4g7Aec7IOGs9S7vkjWtT3R/qZGGy27Jg/s3VZtqY9Xe8t7oCohyKGmbQ1TvxWNUPzYYnxf8C7tL6GV/fEQgB26zs4IF+cpa0AmZe7xPqtBWXF0uZrxvvsNZiIlVSRbmkPQUfcoc2mwdtxCzC9u5L9TyBLJPH7P2Wjxsk8f2aB5mXt1gFPcBb3Zh1SnGSh71KLwHRQ25uVp+6aWmHLBIoRRiiAENguqEmwQAgjHCOU07427TRowWpXoKVAK2ydvQH2oC3GpyZxSsEWrP0nhf0n4QBECdyEVjO5eIkeoIGFRFSPTyo90JBPqdWuQTsv3BFyPVXFw2fxe6nYi37y2wDjND/2tnu8IELMIM3Xonj4lB9uqvb1+P2Wn9ZUVNblb8GU+x7vsl0BqAUnZbuph7Cyw4zLHpPSAMDzBRxLGZeOJpnIU/TR7mDhA6T5taFVjw3BEXapMtL0XN24+n+a/G4KD1C10hSB+p2RZi7S863Ajnzbd0zMnbvVv3kyCu8y/ybJbK7gFIRowX35UgQHPmrtTKV0KBa9FdyZ2UL6lXMZzrM6KUGjhb9wG+JZxuidDiJWuvDhgCjhikNWQSxXQlCtk6o4yAt82mdiK1R62l0VjFAVACJUbRXoLH+lTk9ZE21nrLRD4ZW8+SmSgR8KjIBUurnOZ/w12X3d0408fcM52260FPMYKfb/BBP+kTeHTv5/e2fEo5KLn7r8OXAv/io2BoHSGS5VHyCdSGb50ba7ubOg1Ofctut7sVniLtPnJxDXLJy51RwYJdDzCR1LuifMKMS3XrI29ct9p7LvYGroTizB31ZEWPPI5wFHqjEDUPWeIRey4CupryjqPGdRhbHVLui/kIb7QZefk/OllZBFx7iWEH55Ij4tv9HNLiPKV3Kh+Hn+SM0FszNKtsJYaMs8dMKT7kG6CylmmSddN/3bJJzpEHqwInpA970M3LNgW+V0kigFfIFa2uUEZnoK0HrU1EvCL2yXd0yAP1zriwbidRFYmSUjdhDaeyZ7mouGkZy+si9awvz2dgF+3SGwB7zaEM96xeJ8zKGwwSPYaRKyDHatCVkbbXJ9tGK6pxp9i+gNC8Qqn9ftBnzVI+Ri3iHEbw0JgtZZTczTpJPHNOyYC59w/FBf40clmyDgC22R5//Dymu26Rq+X92DCvCeiy18R2hPcxlpnWq97v6Np7QRd2n0BlylvJSCN43KTLKeTZt5cgF+JOjlPRlhAyJ6dHdx0LTPTo7Zp33JCtUKyOsvBzyryu/eM9c3UlMytROtSlbltEXYJ6bbujtC3H1w3AxICs0k12h+Vhhv23LUlFfv+oMKgDhTdxnzkoOw9hJWe9iXnl7BM5OG4bwY4KtNRlhQ0FdNzqJQlrwU5NFcbEvmg9tpK5Tfy44uaFdmr8t8C2C318p+zRxeggmECFUXtoMuNEcWC8DVCHfFfDjJds9QotauN2tWkZe6mm7Fkf1B+wQMtSH5sIMox4gaBNeJdt1UlbgclF9eRnqJazaIWluCVu9JIkG+ive5Zdp6P6jyQiMZcNktHX0G90wHPHv/jM+QgIEMVy3PamefPH7GcjGQI9RlkIz790a67tNTfZYxxwyp+q8ibvyB4lltS5av5o6mI7RGbJQO2S8qmUe4Oh9djsgvINqvvTn11elxmleImwsphcpA5D3JLLPL7WjHbTNgi/uEA+/3BEp1LjTmmrJIJIqJOQUDRBuLmB7Hu8BFiQl3XyITrBsYgQSa6Bs7lQySzopELUmSlzMCFUcqcQlHig3G/eVIQbIbApEbLeHrUbyaHzemNswWWbFGX0wyJReY6eTSk0Sf+dODd0wizASQDVNhuUsyaXFtGfkKkqUv0V2I/bwHq6mRj0y8acP0LfLJZQOrRZD2mpTLeY74lzjlPefyiobq9KCo+keZDJ5Bqel2Rr3ZJwSzRnslbToRFEBTYaSgj/vrkWLyv5knyn/BTkx8XAOfKxXlP/PuW6FEtPH3yA2icXUKvHcaDlpTlGE0Q3nUi4Ne7ycyc+ImODL0yUiOj8qP/f/2P26P+u8x+YUMyWQnRh+GrV8QYXLccyXIDdXb8rlkfDGZ6X5iLuF4qP9E0Lq/SG4aJ7ID5V0bIG35gFoD2VMFxNImQ3jqHOE1ebaf0qkTPdycIloVPAA09YUCwTqm8U6fwo4y6ro9Ef0yVCNjQByIaQ2slegbgNfO+NNBVkxUR9jmnlCJUwsz7HRmmazxgMx3IWySLemZuz+LWH00+Ky5JPt6VseybjuO3IgmNwBoeQDysNuUY3XIWAUJszhJSp77cwufKk/0EcQI8/J6G8H9+7kFXVWFMQVfw5GyRZbvI7ubWS8QjNRGJPcIl/TkoduZ2fGvgZ8qS8Vf2GBCHOUGdjgA99R//boD1/m3V9USSUUMIP7C7Qoloh1j4wGkWeUA04YfiH8Atm9JW9qAABFhm8HyZ1s0/9HWdwI=";
+      const decoded = JSON.parse(zlib2.brotliDecompressSync(Buffer.from(encoded, "base64")).toString());
+      typeCoercionStateMachine = () => decoded;
+      return decoded;
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts
+var coerce_api_parameters_exports = {};
+__export(coerce_api_parameters_exports, {
+  Coercer: () => Coercer,
+  coerceApiParameters: () => coerceApiParameters
+});
+function coerceApiParameters(v3service, action, parameters = {}) {
+  const typeMachine = typeCoercionStateMachine();
+  return new Coercer(typeMachine).coerceApiParameters(v3service, action, parameters);
+}
+function coerceValueToUint8Array(x) {
+  if (x instanceof Uint8Array) {
+    return x;
+  }
+  if (typeof x === "string" || typeof x === "number") {
+    return new TextEncoder().encode(x.toString());
+  }
+  return x;
+}
+function coerceValueToNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  if (typeof x === "string") {
+    const n = Number(x);
+    return isNaN(n) ? x : n;
+  }
+  return x;
+}
+function coerceValueToDate(x) {
+  if (typeof x === "string" || typeof x === "number") {
+    const date = new Date(x);
+    if (isNaN(date.getTime())) {
+      return x;
+    }
+    return date;
+  }
+  return x;
+}
+var Coercer;
+var init_coerce_api_parameters = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts"() {
+    "use strict";
+    init_parameter_types();
+    Coercer = class {
+      constructor(typeMachine) {
+        this.typeMachine = typeMachine;
+      }
+      typeMachine;
+      coerceApiParameters(v3service, action, parameters = {}) {
+        const actionState = this.progress(action.toLowerCase(), this.progress(v3service.toLowerCase(), 0));
+        return this.recurse(parameters, actionState);
+      }
+      testCoerce(value) {
+        return this.recurse(value, 0);
+      }
+      recurse(value, state) {
+        switch (state) {
+          case void 0:
+            return value;
+          case "b":
+            return coerceValueToUint8Array(value);
+          case "n":
+            return coerceValueToNumber(value);
+          case "d":
+            return coerceValueToDate(value);
+        }
+        if (Array.isArray(value)) {
+          const elState = this.progress("*", state);
+          return elState !== void 0 ? value.map((e) => this.recurse(e, elState)) : value;
+        }
+        if (value && typeof value === "object") {
+          const mapState = this.progress("*", state);
+          for (const key of Object.keys(value)) {
+            const fieldState = this.progress(key, state) ?? mapState;
+            if (fieldState !== void 0) {
+              value[key] = this.recurse(value[key], fieldState);
+            }
+          }
+          return value;
+        }
+        return value;
+      }
+      /**
+       * From a given state, return the state we would end up in if we followed this field
+       */
+      progress(field, s) {
+        if (s === void 0 || typeof s !== "number") {
+          return void 0;
+        }
+        return this.typeMachine[s][field];
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts
+var find_client_constructor_exports = {};
+__export(find_client_constructor_exports, {
+  findV3ClientConstructor: () => findV3ClientConstructor
+});
+function findV3ClientConstructor(pkg) {
+  const [_clientName, ServiceClient] = Object.entries(pkg).find(
+    ([name]) => {
+      return name.endsWith("Client") && name !== "__Client";
+    }
+  );
+  return ServiceClient;
+}
+var init_find_client_constructor = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json
+var require_sdk_v2_to_v3 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json"(exports2, module2) {
+    module2.exports = {
+      acmpca: "acm-pca",
+      apigateway: "api-gateway",
+      arczonalshift: "arc-zonal-shift",
+      appmesh: "app-mesh",
+      applicationautoscaling: "application-auto-scaling",
+      applicationinsights: "application-insights",
+      applicationsignals: "application-signals",
+      augmentedairuntime: "sagemaker-a2i-runtime",
+      autoscaling: "auto-scaling",
+      autoscalingplans: "auto-scaling-plans",
+      bcmdataexports: "bcm-data-exports",
+      backupgateway: "backup-gateway",
+      bedrockagent: "bedrock-agent",
+      bedrockagentruntime: "bedrock-agent-runtime",
+      bedrockruntime: "bedrock-runtime",
+      cur: "cost-and-usage-report-service",
+      chimesdkidentity: "chime-sdk-identity",
+      chimesdkmediapipelines: "chime-sdk-media-pipelines",
+      chimesdkmeetings: "chime-sdk-meetings",
+      chimesdkmessaging: "chime-sdk-messaging",
+      chimesdkvoice: "chime-sdk-voice",
+      cloudhsmv2: "cloudhsm-v2",
+      cloudsearchdomain: "cloudsearch-domain",
+      cloudtraildata: "cloudtrail-data",
+      cloudwatchevents: "cloudwatch-events",
+      cloudwatchlogs: "cloudwatch-logs",
+      codegurureviewer: "codeguru-reviewer",
+      codegurusecurity: "codeguru-security",
+      codestarnotifications: "codestar-notifications",
+      codestarconnections: "codestar-connections",
+      cognitoidentity: "cognito-identity",
+      cognitoidentityserviceprovider: "cognito-identity-provider",
+      cognitosync: "cognito-sync",
+      computeoptimizer: "compute-optimizer",
+      configservice: "config-service",
+      connectcontactlens: "connect-contact-lens",
+      costexplorer: "cost-explorer",
+      costoptimizationhub: "cost-optimization-hub",
+      customerprofiles: "customer-profiles",
+      dms: "database-migration-service",
+      datapipeline: "data-pipeline",
+      devopsguru: "devops-guru",
+      devicefarm: "device-farm",
+      directconnect: "direct-connect",
+      directoryservice: "directory-service",
+      discovery: "application-discovery-service",
+      docdbelastic: "docdb-elastic",
+      dynamodbstreams: "dynamodb-streams",
+      ec2instanceconnect: "ec2-instance-connect",
+      ecrpublic: "ecr-public",
+      eksauth: "eks-auth",
+      elb: "elastic-load-balancing",
+      elbv2: "elastic-load-balancing-v2",
+      emrserverless: "emr-serverless",
+      emrcontainers: "emr-containers",
+      es: "elasticsearch-service",
+      elasticbeanstalk: "elastic-beanstalk",
+      elasticinference: "elastic-inference",
+      elastictranscoder: "elastic-transcoder",
+      finspacedata: "finspace-data",
+      forecastqueryservice: "forecastquery",
+      forecastservice: "forecast",
+      globalaccelerator: "global-accelerator",
+      ivsrealtime: "ivs-realtime",
+      inspectorscan: "inspector-scan",
+      iot1clickdevicesservice: "iot-1click-devices-service",
+      iot1clickprojects: "iot-1click-projects",
+      iotevents: "iot-events",
+      ioteventsdata: "iot-events-data",
+      iotjobsdataplane: "iot-jobs-data-plane",
+      iotwireless: "iot-wireless",
+      iotdata: "iot-data-plane",
+      kendraranking: "kendra-ranking",
+      kinesisanalytics: "kinesis-analytics",
+      kinesisanalyticsv2: "kinesis-analytics-v2",
+      kinesisvideo: "kinesis-video",
+      kinesisvideoarchivedmedia: "kinesis-video-archived-media",
+      kinesisvideomedia: "kinesis-video-media",
+      kinesisvideosignalingchannels: "kinesis-video-signaling",
+      kinesisvideowebrtcstorage: "kinesis-video-webrtc-storage",
+      launchwizard: "launch-wizard",
+      lexmodelbuildingservice: "lex-model-building-service",
+      lexmodelsv2: "lex-models-v2",
+      lexruntime: "lex-runtime-service",
+      lexruntimev2: "lex-runtime-v2",
+      licensemanager: "license-manager",
+      licensemanagerlinuxsubscriptions: "license-manager-linux-subscriptions",
+      licensemanagerusersubscriptions: "license-manager-user-subscriptions",
+      machinelearning: "machine-learning",
+      managedblockchainquery: "managedblockchain-query",
+      marketplaceagreement: "marketplace-agreement",
+      marketplacecatalog: "marketplace-catalog",
+      marketplacecommerceanalytics: "marketplace-commerce-analytics",
+      marketplacedeployment: "marketplace-deployment",
+      marketplaceentitlementservice: "marketplace-entitlement-service",
+      marketplacemetering: "marketplace-metering",
+      mediapackagevod: "mediapackage-vod",
+      mediastoredata: "mediastore-data",
+      medicalimaging: "medical-imaging",
+      migrationhub: "migration-hub",
+      migrationhubconfig: "migrationhub-config",
+      migrationhubrefactorspaces: "migration-hub-refactor-spaces",
+      networkfirewall: "network-firewall",
+      paymentcryptography: "payment-cryptography",
+      paymentcryptographydata: "payment-cryptography-data",
+      pcaconnectorad: "pca-connector-ad",
+      pcaconnectorscep: "pca-connector-scep",
+      personalizeevents: "personalize-events",
+      personalizeruntime: "personalize-runtime",
+      pinpointemail: "pinpoint-email",
+      pinpointsmsvoice: "pinpoint-sms-voice",
+      pinpointsmsvoicev2: "pinpoint-sms-voice-v2",
+      qldbsession: "qldb-session",
+      rdsdataservice: "rds-data",
+      redshiftdata: "redshift-data",
+      redshiftserverless: "redshift-serverless",
+      resourceexplorer2: "resource-explorer-2",
+      resourcegroups: "resource-groups",
+      resourcegroupstaggingapi: "resource-groups-tagging-api",
+      route53: "route-53",
+      route53domains: "route-53-domains",
+      route53recoverycluster: "route53-recovery-cluster",
+      route53recoverycontrolconfig: "route53-recovery-control-config",
+      route53recoveryreadiness: "route53-recovery-readiness",
+      s3control: "s3-control",
+      ssmcontacts: "ssm-contacts",
+      ssmincidents: "ssm-incidents",
+      ssmquicksetup: "ssm-quicksetup",
+      ssoadmin: "sso-admin",
+      ssooidc: "sso-oidc",
+      sagemakerfeaturestoreruntime: "sagemaker-featurestore-runtime",
+      sagemakergeospatial: "sagemaker-geospatial",
+      sagemakermetrics: "sagemaker-metrics",
+      sagemakerruntime: "sagemaker-runtime",
+      sagemakeredge: "sagemaker-edge",
+      secretsmanager: "secrets-manager",
+      servicecatalog: "service-catalog",
+      servicecatalogappregistry: "service-catalog-appregistry",
+      servicequotas: "service-quotas",
+      snowdevicemanagement: "snow-device-management",
+      ssmsap: "ssm-sap",
+      stepfunctions: "sfn",
+      storagegateway: "storage-gateway",
+      supportapp: "support-app",
+      timestreaminfluxdb: "timestream-influxdb",
+      timestreamquery: "timestream-query",
+      timestreamwrite: "timestream-write",
+      transcribeservice: "transcribe",
+      vpclattice: "vpc-lattice",
+      voiceid: "voice-id",
+      wafregional: "waf-regional",
+      workspacesthinclient: "workspaces-thin-client",
+      workspacesweb: "workspaces-web"
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json
+var require_sdk_v3_metadata = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json"(exports2, module2) {
+    module2.exports = {
+      accessanalyzer: {
+        iamPrefix: "access-analyzer"
+      },
+      account: {
+        iamPrefix: "account"
+      },
+      "acm-pca": {
+        iamPrefix: "acm-pca"
+      },
+      acm: {
+        iamPrefix: "acm"
+      },
+      amp: {
+        iamPrefix: "aps"
+      },
+      amplify: {
+        iamPrefix: "amplify"
+      },
+      amplifybackend: {
+        iamPrefix: "amplifybackend"
+      },
+      amplifyuibuilder: {
+        iamPrefix: "amplifyuibuilder"
+      },
+      "api-gateway": {
+        iamPrefix: "apigateway"
+      },
+      apigatewaymanagementapi: {
+        iamPrefix: "execute-api"
+      },
+      apigatewayv2: {
+        iamPrefix: "apigateway"
+      },
+      "app-mesh": {
+        iamPrefix: "appmesh"
+      },
+      appconfig: {
+        iamPrefix: "appconfig"
+      },
+      appconfigdata: {
+        iamPrefix: "appconfig"
+      },
+      appfabric: {
+        iamPrefix: "appfabric"
+      },
+      appflow: {
+        iamPrefix: "appflow"
+      },
+      appintegrations: {
+        iamPrefix: "app-integrations"
+      },
+      "application-auto-scaling": {
+        iamPrefix: "application-autoscaling"
+      },
+      "application-discovery-service": {
+        iamPrefix: "discovery"
+      },
+      "application-insights": {
+        iamPrefix: "applicationinsights"
+      },
+      "application-signals": {
+        iamPrefix: "application-signals"
+      },
+      applicationcostprofiler: {
+        iamPrefix: "application-cost-profiler"
+      },
+      apprunner: {
+        iamPrefix: "apprunner"
+      },
+      appstream: {
+        iamPrefix: "appstream"
+      },
+      appsync: {
+        iamPrefix: "appsync"
+      },
+      apptest: {
+        iamPrefix: "apptest"
+      },
+      "arc-zonal-shift": {
+        iamPrefix: "arc-zonal-shift"
+      },
+      artifact: {
+        iamPrefix: "artifact"
+      },
+      athena: {
+        iamPrefix: "athena"
+      },
+      auditmanager: {
+        iamPrefix: "auditmanager"
+      },
+      "auto-scaling-plans": {
+        iamPrefix: "autoscaling-plans"
+      },
+      "auto-scaling": {
+        iamPrefix: "autoscaling"
+      },
+      b2bi: {
+        iamPrefix: "b2bi"
+      },
+      "backup-gateway": {
+        iamPrefix: "backup-gateway"
+      },
+      backup: {
+        iamPrefix: "backup"
+      },
+      backupsearch: {
+        iamPrefix: "backup-search"
+      },
+      batch: {
+        iamPrefix: "batch"
+      },
+      "bcm-data-exports": {
+        iamPrefix: "bcm-data-exports"
+      },
+      "bcm-pricing-calculator": {
+        iamPrefix: "bcm-pricing-calculator"
+      },
+      "bedrock-agent-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-agent": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-runtime": {
+        iamPrefix: "bedrock"
+      },
+      bedrock: {
+        iamPrefix: "bedrock"
+      },
+      billing: {
+        iamPrefix: "billing"
+      },
+      billingconductor: {
+        iamPrefix: "billingconductor"
+      },
+      braket: {
+        iamPrefix: "braket"
+      },
+      budgets: {
+        iamPrefix: "budgets"
+      },
+      chatbot: {
+        iamPrefix: "chatbot"
+      },
+      "chime-sdk-identity": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-media-pipelines": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-meetings": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-messaging": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-voice": {
+        iamPrefix: "chime"
+      },
+      chime: {
+        iamPrefix: "chime"
+      },
+      cleanrooms: {
+        iamPrefix: "cleanrooms"
+      },
+      cleanroomsml: {
+        iamPrefix: "cleanrooms-ml"
+      },
+      cloud9: {
+        iamPrefix: "cloud9"
+      },
+      cloudcontrol: {
+        iamPrefix: "cloudcontrolapi"
+      },
+      clouddirectory: {
+        iamPrefix: "clouddirectory"
+      },
+      cloudformation: {
+        iamPrefix: "cloudformation"
+      },
+      "cloudfront-keyvaluestore": {
+        iamPrefix: "cloudfront-keyvaluestore"
+      },
+      cloudfront: {
+        iamPrefix: "cloudfront"
+      },
+      "cloudhsm-v2": {
+        iamPrefix: "cloudhsm"
+      },
+      cloudhsm: {
+        iamPrefix: "cloudhsm"
+      },
+      "cloudsearch-domain": {
+        iamPrefix: "cloudsearch"
+      },
+      cloudsearch: {
+        iamPrefix: "cloudsearch"
+      },
+      "cloudtrail-data": {
+        iamPrefix: "cloudtrail-data"
+      },
+      cloudtrail: {
+        iamPrefix: "cloudtrail"
+      },
+      "cloudwatch-events": {
+        iamPrefix: "events"
+      },
+      "cloudwatch-logs": {
+        iamPrefix: "logs"
+      },
+      cloudwatch: {
+        iamPrefix: "cloudwatch"
+      },
+      codeartifact: {
+        iamPrefix: "codeartifact"
+      },
+      codebuild: {
+        iamPrefix: "codebuild"
+      },
+      codecatalyst: {},
+      codecommit: {
+        iamPrefix: "codecommit"
+      },
+      codeconnections: {
+        iamPrefix: "codeconnections"
+      },
+      codedeploy: {
+        iamPrefix: "codedeploy"
+      },
+      "codeguru-reviewer": {
+        iamPrefix: "codeguru-reviewer"
+      },
+      "codeguru-security": {
+        iamPrefix: "codeguru-security"
+      },
+      codeguruprofiler: {
+        iamPrefix: "codeguru-profiler"
+      },
+      codepipeline: {
+        iamPrefix: "codepipeline"
+      },
+      "codestar-connections": {
+        iamPrefix: "codestar-connections"
+      },
+      "codestar-notifications": {
+        iamPrefix: "codestar-notifications"
+      },
+      "cognito-identity-provider": {
+        iamPrefix: "cognito-idp"
+      },
+      "cognito-identity": {
+        iamPrefix: "cognito-identity"
+      },
+      "cognito-sync": {
+        iamPrefix: "cognito-sync"
+      },
+      comprehend: {
+        iamPrefix: "comprehend"
+      },
+      comprehendmedical: {
+        iamPrefix: "comprehendmedical"
+      },
+      "compute-optimizer": {
+        iamPrefix: "compute-optimizer"
+      },
+      "config-service": {
+        iamPrefix: "config"
+      },
+      "connect-contact-lens": {
+        iamPrefix: "connect"
+      },
+      connect: {
+        iamPrefix: "connect"
+      },
+      connectcampaigns: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcampaignsv2: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcases: {
+        iamPrefix: "cases"
+      },
+      connectparticipant: {
+        iamPrefix: "execute-api"
+      },
+      controlcatalog: {
+        iamPrefix: "controlcatalog"
+      },
+      controltower: {
+        iamPrefix: "controltower"
+      },
+      "cost-and-usage-report-service": {
+        iamPrefix: "cur"
+      },
+      "cost-explorer": {
+        iamPrefix: "ce"
+      },
+      "cost-optimization-hub": {
+        iamPrefix: "cost-optimization-hub"
+      },
+      "customer-profiles": {
+        iamPrefix: "profile"
+      },
+      "data-pipeline": {
+        iamPrefix: "datapipeline"
+      },
+      "database-migration-service": {
+        iamPrefix: "dms"
+      },
+      databrew: {
+        iamPrefix: "databrew"
+      },
+      dataexchange: {
+        iamPrefix: "dataexchange"
+      },
+      datasync: {
+        iamPrefix: "datasync"
+      },
+      datazone: {
+        iamPrefix: "datazone"
+      },
+      dax: {
+        iamPrefix: "dax"
+      },
+      deadline: {
+        iamPrefix: "deadline"
+      },
+      detective: {
+        iamPrefix: "detective"
+      },
+      "device-farm": {
+        iamPrefix: "devicefarm"
+      },
+      "devops-guru": {
+        iamPrefix: "devops-guru"
+      },
+      "direct-connect": {
+        iamPrefix: "directconnect"
+      },
+      "directory-service-data": {
+        iamPrefix: "ds-data"
+      },
+      "directory-service": {
+        iamPrefix: "ds"
+      },
+      dlm: {
+        iamPrefix: "dlm"
+      },
+      "docdb-elastic": {
+        iamPrefix: "docdb-elastic"
+      },
+      docdb: {
+        iamPrefix: "rds"
+      },
+      drs: {
+        iamPrefix: "drs"
+      },
+      dsql: {
+        iamPrefix: "dsql"
+      },
+      "dynamodb-streams": {
+        iamPrefix: "dynamodb"
+      },
+      dynamodb: {
+        iamPrefix: "dynamodb"
+      },
+      ebs: {
+        iamPrefix: "ebs"
+      },
+      "ec2-instance-connect": {
+        iamPrefix: "ec2-instance-connect"
+      },
+      ec2: {
+        iamPrefix: "ec2"
+      },
+      "ecr-public": {
+        iamPrefix: "ecr-public"
+      },
+      ecr: {
+        iamPrefix: "ecr"
+      },
+      ecs: {
+        iamPrefix: "ecs",
+        commands: [
+          "ExecuteCommand"
+        ]
+      },
+      efs: {
+        iamPrefix: "elasticfilesystem"
+      },
+      "eks-auth": {
+        iamPrefix: "eks-auth"
+      },
+      eks: {
+        iamPrefix: "eks"
+      },
+      "elastic-beanstalk": {
+        iamPrefix: "elasticbeanstalk"
+      },
+      "elastic-load-balancing-v2": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-load-balancing": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-transcoder": {
+        iamPrefix: "elastictranscoder"
+      },
+      elasticache: {
+        iamPrefix: "elasticache"
+      },
+      "elasticsearch-service": {
+        iamPrefix: "es"
+      },
+      "emr-containers": {
+        iamPrefix: "emr-containers"
+      },
+      "emr-serverless": {
+        iamPrefix: "emr-serverless"
+      },
+      emr: {
+        iamPrefix: "elasticmapreduce"
+      },
+      entityresolution: {
+        iamPrefix: "entityresolution"
+      },
+      eventbridge: {
+        iamPrefix: "events"
+      },
+      evidently: {
+        iamPrefix: "evidently"
+      },
+      "finspace-data": {
+        iamPrefix: "finspace-api"
+      },
+      finspace: {
+        iamPrefix: "finspace"
+      },
+      firehose: {
+        iamPrefix: "firehose"
+      },
+      fis: {
+        iamPrefix: "fis"
+      },
+      fms: {
+        iamPrefix: "fms"
+      },
+      forecast: {
+        iamPrefix: "forecast"
+      },
+      forecastquery: {
+        iamPrefix: "forecast"
+      },
+      frauddetector: {
+        iamPrefix: "frauddetector"
+      },
+      freetier: {
+        iamPrefix: "freetier"
+      },
+      fsx: {
+        iamPrefix: "fsx"
+      },
+      gamelift: {
+        iamPrefix: "gamelift"
+      },
+      gameliftstreams: {
+        iamPrefix: "gameliftstreams"
+      },
+      "geo-maps": {
+        iamPrefix: "geo-maps"
+      },
+      "geo-places": {
+        iamPrefix: "geo-places"
+      },
+      "geo-routes": {
+        iamPrefix: "geo-routes"
+      },
+      glacier: {
+        iamPrefix: "glacier"
+      },
+      "global-accelerator": {
+        iamPrefix: "globalaccelerator"
+      },
+      glue: {
+        iamPrefix: "glue"
+      },
+      grafana: {
+        iamPrefix: "grafana"
+      },
+      greengrass: {
+        iamPrefix: "greengrass"
+      },
+      greengrassv2: {
+        iamPrefix: "greengrass"
+      },
+      groundstation: {
+        iamPrefix: "groundstation"
+      },
+      guardduty: {
+        iamPrefix: "guardduty"
+      },
+      health: {
+        iamPrefix: "health"
+      },
+      healthlake: {
+        iamPrefix: "healthlake"
+      },
+      iam: {
+        iamPrefix: "iam"
+      },
+      identitystore: {
+        iamPrefix: "identitystore"
+      },
+      imagebuilder: {
+        iamPrefix: "imagebuilder"
+      },
+      "inspector-scan": {
+        iamPrefix: "inspector-scan"
+      },
+      inspector: {
+        iamPrefix: "inspector"
+      },
+      inspector2: {
+        iamPrefix: "inspector2"
+      },
+      internetmonitor: {
+        iamPrefix: "internetmonitor"
+      },
+      invoicing: {
+        iamPrefix: "invoicing"
+      },
+      "iot-data-plane": {
+        iamPrefix: "iotdata"
+      },
+      "iot-events-data": {
+        iamPrefix: "ioteventsdata"
+      },
+      "iot-events": {
+        iamPrefix: "iotevents"
+      },
+      "iot-jobs-data-plane": {
+        iamPrefix: "iot-jobs-data"
+      },
+      "iot-managed-integrations": {
+        iamPrefix: "iotmanagedintegrations"
+      },
+      "iot-wireless": {
+        iamPrefix: "iotwireless"
+      },
+      iot: {
+        iamPrefix: "iot",
+        commands: [
+          "CreateCommand",
+          "DeleteCommand",
+          "GetCommand",
+          "UpdateCommand"
+        ]
+      },
+      iotanalytics: {
+        iamPrefix: "iotanalytics"
+      },
+      iotdeviceadvisor: {
+        iamPrefix: "iotdeviceadvisor"
+      },
+      iotfleethub: {
+        iamPrefix: "iotfleethub"
+      },
+      iotfleetwise: {
+        iamPrefix: "iotfleetwise"
+      },
+      iotsecuretunneling: {
+        iamPrefix: "IoTSecuredTunneling"
+      },
+      iotsitewise: {
+        iamPrefix: "iotsitewise"
+      },
+      iotthingsgraph: {
+        iamPrefix: "iotthingsgraph"
+      },
+      iottwinmaker: {
+        iamPrefix: "iottwinmaker"
+      },
+      "ivs-realtime": {
+        iamPrefix: "ivs"
+      },
+      ivs: {
+        iamPrefix: "ivs"
+      },
+      ivschat: {
+        iamPrefix: "ivschat"
+      },
+      kafka: {
+        iamPrefix: "kafka"
+      },
+      kafkaconnect: {
+        iamPrefix: "kafkaconnect"
+      },
+      "kendra-ranking": {
+        iamPrefix: "kendra-ranking"
+      },
+      kendra: {
+        iamPrefix: "kendra"
+      },
+      keyspaces: {
+        iamPrefix: "cassandra"
+      },
+      "kinesis-analytics-v2": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-analytics": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-video-archived-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-signaling": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-webrtc-storage": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video": {
+        iamPrefix: "kinesisvideo"
+      },
+      kinesis: {
+        iamPrefix: "kinesis"
+      },
+      kms: {
+        iamPrefix: "kms"
+      },
+      lakeformation: {
+        iamPrefix: "lakeformation"
+      },
+      lambda: {
+        iamPrefix: "lambda"
+      },
+      "launch-wizard": {
+        iamPrefix: "launchwizard"
+      },
+      "lex-model-building-service": {
+        iamPrefix: "lex"
+      },
+      "lex-models-v2": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-service": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-v2": {
+        iamPrefix: "lex"
+      },
+      "license-manager-linux-subscriptions": {
+        iamPrefix: "license-manager-linux-subscriptions"
+      },
+      "license-manager-user-subscriptions": {
+        iamPrefix: "license-manager-user-subscriptions"
+      },
+      "license-manager": {
+        iamPrefix: "license-manager"
+      },
+      lightsail: {
+        iamPrefix: "lightsail"
+      },
+      location: {
+        iamPrefix: "geo"
+      },
+      lookoutequipment: {
+        iamPrefix: "lookoutequipment"
+      },
+      lookoutmetrics: {
+        iamPrefix: "lookoutmetrics"
+      },
+      lookoutvision: {
+        iamPrefix: "lookoutvision"
+      },
+      m2: {
+        iamPrefix: "m2"
+      },
+      "machine-learning": {
+        iamPrefix: "machinelearning"
+      },
+      macie2: {
+        iamPrefix: "macie2"
+      },
+      mailmanager: {
+        iamPrefix: "ses"
+      },
+      "managedblockchain-query": {
+        iamPrefix: "managedblockchain-query"
+      },
+      managedblockchain: {
+        iamPrefix: "managedblockchain"
+      },
+      "marketplace-agreement": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-catalog": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-commerce-analytics": {
+        iamPrefix: "marketplacecommerceanalytics"
+      },
+      "marketplace-deployment": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-entitlement-service": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-metering": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-reporting": {
+        iamPrefix: "aws-marketplace"
+      },
+      mediaconnect: {
+        iamPrefix: "mediaconnect"
+      },
+      mediaconvert: {
+        iamPrefix: "mediaconvert"
+      },
+      medialive: {
+        iamPrefix: "medialive"
+      },
+      "mediapackage-vod": {
+        iamPrefix: "mediapackage-vod"
+      },
+      mediapackage: {
+        iamPrefix: "mediapackage"
+      },
+      mediapackagev2: {
+        iamPrefix: "mediapackagev2"
+      },
+      "mediastore-data": {
+        iamPrefix: "mediastore"
+      },
+      mediastore: {
+        iamPrefix: "mediastore"
+      },
+      mediatailor: {
+        iamPrefix: "mediatailor"
+      },
+      "medical-imaging": {
+        iamPrefix: "medical-imaging"
+      },
+      memorydb: {
+        iamPrefix: "memorydb"
+      },
+      mgn: {
+        iamPrefix: "mgn"
+      },
+      "migration-hub-refactor-spaces": {
+        iamPrefix: "refactor-spaces"
+      },
+      "migration-hub": {
+        iamPrefix: "mgh"
+      },
+      "migrationhub-config": {
+        iamPrefix: "mgh"
+      },
+      migrationhuborchestrator: {
+        iamPrefix: "migrationhub-orchestrator"
+      },
+      migrationhubstrategy: {
+        iamPrefix: "migrationhub-strategy"
+      },
+      mq: {
+        iamPrefix: "mq"
+      },
+      mturk: {
+        iamPrefix: "mturk-requester"
+      },
+      mwaa: {
+        iamPrefix: "airflow"
+      },
+      "neptune-graph": {
+        iamPrefix: "neptune-graph"
+      },
+      neptune: {
+        iamPrefix: "rds"
+      },
+      neptunedata: {
+        iamPrefix: "neptune-db"
+      },
+      "network-firewall": {
+        iamPrefix: "network-firewall"
+      },
+      networkflowmonitor: {
+        iamPrefix: "networkflowmonitor"
+      },
+      networkmanager: {
+        iamPrefix: "networkmanager"
+      },
+      networkmonitor: {
+        iamPrefix: "networkmonitor"
+      },
+      notifications: {
+        iamPrefix: "notifications"
+      },
+      notificationscontacts: {
+        iamPrefix: "notifications-contacts"
+      },
+      oam: {
+        iamPrefix: "oam"
+      },
+      observabilityadmin: {
+        iamPrefix: "observabilityadmin"
+      },
+      omics: {
+        iamPrefix: "omics"
+      },
+      opensearch: {
+        iamPrefix: "es"
+      },
+      opensearchserverless: {
+        iamPrefix: "aoss"
+      },
+      opsworks: {
+        iamPrefix: "opsworks"
+      },
+      opsworkscm: {
+        iamPrefix: "opsworks-cm"
+      },
+      organizations: {
+        iamPrefix: "organizations"
+      },
+      osis: {
+        iamPrefix: "osis"
+      },
+      outposts: {
+        iamPrefix: "outposts"
+      },
+      panorama: {
+        iamPrefix: "panorama"
+      },
+      "partnercentral-selling": {
+        iamPrefix: "partnercentral-selling"
+      },
+      "payment-cryptography-data": {
+        iamPrefix: "payment-cryptography"
+      },
+      "payment-cryptography": {
+        iamPrefix: "payment-cryptography"
+      },
+      "pca-connector-ad": {
+        iamPrefix: "pca-connector-ad"
+      },
+      "pca-connector-scep": {
+        iamPrefix: "pca-connector-scep"
+      },
+      pcs: {
+        iamPrefix: "pcs"
+      },
+      "personalize-events": {
+        iamPrefix: "personalize"
+      },
+      "personalize-runtime": {
+        iamPrefix: "personalize"
+      },
+      personalize: {
+        iamPrefix: "personalize"
+      },
+      pi: {
+        iamPrefix: "pi"
+      },
+      "pinpoint-email": {
+        iamPrefix: "ses"
+      },
+      "pinpoint-sms-voice-v2": {
+        iamPrefix: "sms-voice"
+      },
+      "pinpoint-sms-voice": {
+        iamPrefix: "sms-voice"
+      },
+      pinpoint: {
+        iamPrefix: "mobiletargeting"
+      },
+      pipes: {
+        iamPrefix: "pipes"
+      },
+      polly: {
+        iamPrefix: "polly"
+      },
+      pricing: {
+        iamPrefix: "pricing"
+      },
+      proton: {
+        iamPrefix: "proton"
+      },
+      qapps: {
+        iamPrefix: "qapps"
+      },
+      qbusiness: {
+        iamPrefix: "qbusiness"
+      },
+      qconnect: {
+        iamPrefix: "wisdom"
+      },
+      "qldb-session": {
+        iamPrefix: "qldb",
+        commands: [
+          "SendCommand"
+        ]
+      },
+      qldb: {
+        iamPrefix: "qldb"
+      },
+      quicksight: {
+        iamPrefix: "quicksight"
+      },
+      ram: {
+        iamPrefix: "ram"
+      },
+      rbin: {
+        iamPrefix: "rbin"
+      },
+      "rds-data": {
+        iamPrefix: "rds-data"
+      },
+      rds: {
+        iamPrefix: "rds"
+      },
+      "redshift-data": {
+        iamPrefix: "redshift-data"
+      },
+      "redshift-serverless": {
+        iamPrefix: "redshift-serverless"
+      },
+      redshift: {
+        iamPrefix: "redshift"
+      },
+      rekognition: {
+        iamPrefix: "rekognition"
+      },
+      rekognitionstreaming: {
+        iamPrefix: "rekognition"
+      },
+      repostspace: {
+        iamPrefix: "repostspace"
+      },
+      resiliencehub: {
+        iamPrefix: "resiliencehub"
+      },
+      "resource-explorer-2": {
+        iamPrefix: "resource-explorer-2"
+      },
+      "resource-groups-tagging-api": {
+        iamPrefix: "tagging"
+      },
+      "resource-groups": {
+        iamPrefix: "resource-groups"
+      },
+      robomaker: {
+        iamPrefix: "robomaker"
+      },
+      rolesanywhere: {
+        iamPrefix: "rolesanywhere"
+      },
+      "route-53-domains": {
+        iamPrefix: "route53domains"
+      },
+      "route-53": {
+        iamPrefix: "route53"
+      },
+      "route53-recovery-cluster": {
+        iamPrefix: "route53-recovery-cluster"
+      },
+      "route53-recovery-control-config": {
+        iamPrefix: "route53-recovery-control-config"
+      },
+      "route53-recovery-readiness": {
+        iamPrefix: "route53-recovery-readiness"
+      },
+      route53profiles: {
+        iamPrefix: "route53profiles"
+      },
+      route53resolver: {
+        iamPrefix: "route53resolver"
+      },
+      rum: {
+        iamPrefix: "rum"
+      },
+      "s3-control": {
+        iamPrefix: "s3"
+      },
+      s3: {
+        iamPrefix: "s3"
+      },
+      s3outposts: {
+        iamPrefix: "s3-outposts"
+      },
+      s3tables: {
+        iamPrefix: "s3tables"
+      },
+      "sagemaker-a2i-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-edge": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-featurestore-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-geospatial": {
+        iamPrefix: "sagemaker-geospatial"
+      },
+      "sagemaker-metrics": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      sagemaker: {
+        iamPrefix: "sagemaker"
+      },
+      savingsplans: {
+        iamPrefix: "savingsplans"
+      },
+      scheduler: {
+        iamPrefix: "scheduler"
+      },
+      schemas: {
+        iamPrefix: "schemas"
+      },
+      "secrets-manager": {
+        iamPrefix: "secretsmanager"
+      },
+      "security-ir": {
+        iamPrefix: "security-ir"
+      },
+      securityhub: {
+        iamPrefix: "securityhub"
+      },
+      securitylake: {
+        iamPrefix: "securitylake"
+      },
+      serverlessapplicationrepository: {
+        iamPrefix: "serverlessrepo"
+      },
+      "service-catalog-appregistry": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-catalog": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-quotas": {
+        iamPrefix: "servicequotas"
+      },
+      servicediscovery: {
+        iamPrefix: "servicediscovery"
+      },
+      ses: {
+        iamPrefix: "ses"
+      },
+      sesv2: {
+        iamPrefix: "ses"
+      },
+      sfn: {
+        iamPrefix: "states"
+      },
+      shield: {
+        iamPrefix: "shield"
+      },
+      signer: {
+        iamPrefix: "signer"
+      },
+      simspaceweaver: {
+        iamPrefix: "simspaceweaver"
+      },
+      sms: {
+        iamPrefix: "sms"
+      },
+      "snow-device-management": {
+        iamPrefix: "snow-device-management"
+      },
+      snowball: {
+        iamPrefix: "snowball"
+      },
+      sns: {
+        iamPrefix: "sns"
+      },
+      socialmessaging: {
+        iamPrefix: "social-messaging"
+      },
+      sqs: {
+        iamPrefix: "sqs"
+      },
+      "ssm-contacts": {
+        iamPrefix: "ssm-contacts"
+      },
+      "ssm-guiconnect": {
+        iamPrefix: "ssm-guiconnect"
+      },
+      "ssm-incidents": {
+        iamPrefix: "ssm-incidents"
+      },
+      "ssm-quicksetup": {
+        iamPrefix: "ssm-quicksetup"
+      },
+      "ssm-sap": {
+        iamPrefix: "ssm-sap"
+      },
+      ssm: {
+        iamPrefix: "ssm",
+        commands: [
+          "CancelCommand",
+          "SendCommand"
+        ]
+      },
+      "sso-admin": {
+        iamPrefix: "sso"
+      },
+      "sso-oidc": {
+        iamPrefix: "sso-oauth"
+      },
+      sso: {
+        iamPrefix: "awsssoportal"
+      },
+      "storage-gateway": {
+        iamPrefix: "storagegateway"
+      },
+      sts: {
+        iamPrefix: "sts"
+      },
+      supplychain: {
+        iamPrefix: "scn"
+      },
+      "support-app": {
+        iamPrefix: "supportapp"
+      },
+      support: {
+        iamPrefix: "support"
+      },
+      swf: {
+        iamPrefix: "swf"
+      },
+      synthetics: {
+        iamPrefix: "synthetics"
+      },
+      taxsettings: {
+        iamPrefix: "tax"
+      },
+      textract: {
+        iamPrefix: "textract"
+      },
+      "timestream-influxdb": {
+        iamPrefix: "timestream-influxdb"
+      },
+      "timestream-query": {
+        iamPrefix: "timestream"
+      },
+      "timestream-write": {
+        iamPrefix: "timestream"
+      },
+      tnb: {
+        iamPrefix: "tnb"
+      },
+      "transcribe-streaming": {
+        iamPrefix: "transcribe"
+      },
+      transcribe: {
+        iamPrefix: "transcribe"
+      },
+      transfer: {
+        iamPrefix: "transfer"
+      },
+      translate: {
+        iamPrefix: "translate"
+      },
+      trustedadvisor: {
+        iamPrefix: "trustedadvisor"
+      },
+      verifiedpermissions: {
+        iamPrefix: "verifiedpermissions"
+      },
+      "voice-id": {
+        iamPrefix: "voiceid"
+      },
+      "vpc-lattice": {
+        iamPrefix: "vpc-lattice"
+      },
+      "waf-regional": {
+        iamPrefix: "waf-regional"
+      },
+      waf: {
+        iamPrefix: "waf"
+      },
+      wafv2: {
+        iamPrefix: "wafv2"
+      },
+      wellarchitected: {
+        iamPrefix: "wellarchitected"
+      },
+      wisdom: {
+        iamPrefix: "wisdom"
+      },
+      workdocs: {
+        iamPrefix: "workdocs"
+      },
+      workmail: {
+        iamPrefix: "workmail"
+      },
+      workmailmessageflow: {
+        iamPrefix: "workmailmessageflow"
+      },
+      "workspaces-thin-client": {
+        iamPrefix: "thinclient"
+      },
+      "workspaces-web": {
+        iamPrefix: "workspaces-web"
+      },
+      workspaces: {
+        iamPrefix: "workspaces"
+      },
+      xray: {
+        iamPrefix: "xray"
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-info.ts
+var sdk_info_exports = {};
+__export(sdk_info_exports, {
+  normalizeActionName: () => normalizeActionName,
+  normalizeServiceName: () => normalizeServiceName
+});
+function normalizeServiceName(service) {
+  service = service.toLowerCase();
+  service = service.replace(/^@aws-sdk\/client-/, "");
+  service = v2ToV3Mapping()?.[service] ?? service;
+  return service;
+}
+function normalizeActionName(v3Service, action) {
+  if (action.charAt(0).toLowerCase() === action.charAt(0)) {
+    return action.charAt(0).toUpperCase() + action.slice(1);
+  }
+  if (v3Metadata()[v3Service]?.commands?.includes(action)) {
+    return action;
+  }
+  return action.replace(/Command$/, "");
+}
+function v2ToV3Mapping() {
+  return require_sdk_v2_to_v3();
+}
+function v3Metadata() {
+  return require_sdk_v3_metadata();
+}
+var init_sdk_info = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-info.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/api-call.ts
+var api_call_exports = {};
+__export(api_call_exports, {
+  ApiCall: () => ApiCall,
+  coerceSdkv3Response: () => coerceSdkv3Response,
+  flatten: () => flatten2
+});
+function flatten2(root) {
+  const ret = {};
+  recurse(root);
+  return ret;
+  function recurse(x, path23 = []) {
+    if (x && typeof x === "object") {
+      for (const [key, value] of Object.entries(x)) {
+        recurse(value, [...path23, key]);
+      }
+      return;
+    }
+    ret[path23.join(".")] = x;
+  }
+}
+async function coerceSdkv3Response(value) {
+  if (value && typeof value === "object" && typeof value.transformToString === "function") {
+    return value.transformToString();
+  }
+  if (Buffer.isBuffer(value)) {
+    return value.toString("utf8");
+  }
+  if (ArrayBuffer.isView(value)) {
+    return decoder.decode(value.buffer);
+  }
+  if (Array.isArray(value)) {
+    const ret = [];
+    for (const x of value) {
+      ret.push(await coerceSdkv3Response(x));
+    }
+    return ret;
+  }
+  if (value && typeof value === "object") {
+    for (const key of Object.keys(value)) {
+      value[key] = await coerceSdkv3Response(value[key]);
+    }
+    return value;
+  }
+  return value;
+}
+var ApiCall, decoder;
+var init_api_call = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/api-call.ts"() {
+    "use strict";
+    init_coerce_api_parameters();
+    init_find_client_constructor();
+    init_sdk_info();
+    ApiCall = class {
+      service;
+      action;
+      v3PackageName;
+      v3Package;
+      // For testing purposes
+      client;
+      // For testing purposes
+      constructor(service, action) {
+        this.service = normalizeServiceName(service);
+        this.action = normalizeActionName(this.service, action);
+        this.v3PackageName = `@aws-sdk/client-${this.service}`;
+      }
+      async invoke(options) {
+        this.initializePackage(options.sdkPackage);
+        this.initializeClient(options);
+        const Command = this.findCommandClass();
+        const response = await this.client.send(
+          new Command(coerceApiParameters(this.service, this.action, options.parameters ?? {}))
+        );
+        delete response.$metadata;
+        const coerced = await coerceSdkv3Response(response);
+        return options.flattenResponse ? flatten2(coerced) : coerced;
+      }
+      initializePackage(packageOverride) {
+        if (this.v3Package) {
+          return;
+        }
+        if (packageOverride) {
+          this.v3Package = packageOverride;
+          return;
+        }
+        try {
+          this.v3Package = require(this.v3PackageName);
+        } catch (e) {
+          throw Error(`Service ${this.service} client package with name '${this.v3PackageName}' does not exist.`);
+        }
+      }
+      initializeClient(options) {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const ServiceClient = this.findConstructor(this.v3Package);
+        this.client = new ServiceClient({
+          apiVersion: options.apiVersion,
+          credentials: options.credentials,
+          region: options.region
+        });
+        return this.client;
+      }
+      findCommandClass() {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const commandName = `${this.action}Command`;
+        const Command = Object.entries(this.v3Package ?? {}).find(
+          ([name]) => name.toLowerCase() === commandName.toLowerCase()
+        )?.[1];
+        if (!Command) {
+          throw new Error(`Unable to find command named: ${commandName} for action: ${this.action} in service package ${this.v3PackageName}`);
+        }
+        return Command;
+      }
+      findConstructor(pkg) {
+        try {
+          const ret = findV3ClientConstructor(pkg);
+          if (!ret) {
+            throw new Error("findV3ClientConstructor returned undefined");
+          }
+          return ret;
+        } catch (e) {
+          console.error(e);
+          throw Error(`No client constructor found within package: ${this.v3PackageName}`);
+        }
+      }
+    };
+    decoder = new TextDecoder();
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/index.js
+var require_lib6 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.normalizeActionName = exports2.normalizeServiceName = exports2.findV3ClientConstructor = exports2.coerceApiParameters = void 0;
+    var coerce_api_parameters_1 = (init_coerce_api_parameters(), __toCommonJS(coerce_api_parameters_exports));
+    Object.defineProperty(exports2, "coerceApiParameters", { enumerable: true, get: function() {
+      return coerce_api_parameters_1.coerceApiParameters;
+    } });
+    var find_client_constructor_1 = (init_find_client_constructor(), __toCommonJS(find_client_constructor_exports));
+    Object.defineProperty(exports2, "findV3ClientConstructor", { enumerable: true, get: function() {
+      return find_client_constructor_1.findV3ClientConstructor;
+    } });
+    var sdk_info_1 = (init_sdk_info(), __toCommonJS(sdk_info_exports));
+    Object.defineProperty(exports2, "normalizeServiceName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeServiceName;
+    } });
+    Object.defineProperty(exports2, "normalizeActionName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeActionName;
+    } });
+    __exportStar2((init_api_call(), __toCommonJS(api_call_exports)), exports2);
+  }
+});
+
+// ../../../node_modules/webidl-conversions/lib/index.js
+var require_lib7 = __commonJS({
+  "../../../node_modules/webidl-conversions/lib/index.js"(exports2, module2) {
+    "use strict";
+    var conversions = {};
+    module2.exports = conversions;
+    function sign(x) {
+      return x < 0 ? -1 : 1;
+    }
+    function evenRound(x) {
+      if (x % 1 === 0.5 && (x & 1) === 0) {
+        return Math.floor(x);
+      } else {
+        return Math.round(x);
+      }
+    }
+    function createNumberConversion(bitLength, typeOpts) {
+      if (!typeOpts.unsigned) {
+        --bitLength;
+      }
+      const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength);
+      const upperBound = Math.pow(2, bitLength) - 1;
+      const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength);
+      const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1);
+      return function(V, opts) {
+        if (!opts) opts = {};
+        let x = +V;
+        if (opts.enforceRange) {
+          if (!Number.isFinite(x)) {
+            throw new TypeError("Argument is not a finite number");
+          }
+          x = sign(x) * Math.floor(Math.abs(x));
+          if (x < lowerBound || x > upperBound) {
+            throw new TypeError("Argument is not in byte range");
+          }
+          return x;
+        }
+        if (!isNaN(x) && opts.clamp) {
+          x = evenRound(x);
+          if (x < lowerBound) x = lowerBound;
+          if (x > upperBound) x = upperBound;
+          return x;
+        }
+        if (!Number.isFinite(x) || x === 0) {
+          return 0;
+        }
+        x = sign(x) * Math.floor(Math.abs(x));
+        x = x % moduloVal;
+        if (!typeOpts.unsigned && x >= moduloBound) {
+          return x - moduloVal;
+        } else if (typeOpts.unsigned) {
+          if (x < 0) {
+            x += moduloVal;
+          } else if (x === -0) {
+            return 0;
+          }
+        }
+        return x;
+      };
+    }
+    conversions["void"] = function() {
+      return void 0;
+    };
+    conversions["boolean"] = function(val2) {
+      return !!val2;
+    };
+    conversions["byte"] = createNumberConversion(8, { unsigned: false });
+    conversions["octet"] = createNumberConversion(8, { unsigned: true });
+    conversions["short"] = createNumberConversion(16, { unsigned: false });
+    conversions["unsigned short"] = createNumberConversion(16, { unsigned: true });
+    conversions["long"] = createNumberConversion(32, { unsigned: false });
+    conversions["unsigned long"] = createNumberConversion(32, { unsigned: true });
+    conversions["long long"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 });
+    conversions["unsigned long long"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 });
+    conversions["double"] = function(V) {
+      const x = +V;
+      if (!Number.isFinite(x)) {
+        throw new TypeError("Argument is not a finite floating-point value");
+      }
+      return x;
+    };
+    conversions["unrestricted double"] = function(V) {
+      const x = +V;
+      if (isNaN(x)) {
+        throw new TypeError("Argument is NaN");
+      }
+      return x;
+    };
+    conversions["float"] = conversions["double"];
+    conversions["unrestricted float"] = conversions["unrestricted double"];
+    conversions["DOMString"] = function(V, opts) {
+      if (!opts) opts = {};
+      if (opts.treatNullAsEmptyString && V === null) {
+        return "";
+      }
+      return String(V);
+    };
+    conversions["ByteString"] = function(V, opts) {
+      const x = String(V);
+      let c = void 0;
+      for (let i = 0; (c = x.codePointAt(i)) !== void 0; ++i) {
+        if (c > 255) {
+          throw new TypeError("Argument is not a valid bytestring");
+        }
+      }
+      return x;
+    };
+    conversions["USVString"] = function(V) {
+      const S = String(V);
+      const n = S.length;
+      const U = [];
+      for (let i = 0; i < n; ++i) {
+        const c = S.charCodeAt(i);
+        if (c < 55296 || c > 57343) {
+          U.push(String.fromCodePoint(c));
+        } else if (56320 <= c && c <= 57343) {
+          U.push(String.fromCodePoint(65533));
+        } else {
+          if (i === n - 1) {
+            U.push(String.fromCodePoint(65533));
+          } else {
+            const d = S.charCodeAt(i + 1);
+            if (56320 <= d && d <= 57343) {
+              const a = c & 1023;
+              const b = d & 1023;
+              U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b));
+              ++i;
+            } else {
+              U.push(String.fromCodePoint(65533));
+            }
+          }
+        }
+      }
+      return U.join("");
+    };
+    conversions["Date"] = function(V, opts) {
+      if (!(V instanceof Date)) {
+        throw new TypeError("Argument is not a Date object");
+      }
+      if (isNaN(V)) {
+        return void 0;
+      }
+      return V;
+    };
+    conversions["RegExp"] = function(V, opts) {
+      if (!(V instanceof RegExp)) {
+        V = new RegExp(V);
+      }
+      return V;
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/utils.js
+var require_utils3 = __commonJS({
+  "../../../node_modules/whatwg-url/lib/utils.js"(exports2, module2) {
+    "use strict";
+    module2.exports.mixin = function mixin(target, source) {
+      const keys = Object.getOwnPropertyNames(source);
+      for (let i = 0; i < keys.length; ++i) {
+        Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));
+      }
+    };
+    module2.exports.wrapperSymbol = /* @__PURE__ */ Symbol("wrapper");
+    module2.exports.implSymbol = /* @__PURE__ */ Symbol("impl");
+    module2.exports.wrapperForImpl = function(impl) {
+      return impl[module2.exports.wrapperSymbol];
+    };
+    module2.exports.implForWrapper = function(wrapper) {
+      return wrapper[module2.exports.implSymbol];
+    };
+  }
+});
+
+// ../../../node_modules/tr46/lib/mappingTable.json
+var require_mappingTable = __commonJS({
+  "../../../node_modules/tr46/lib/mappingTable.json"(exports2, module2) {
+    module2.exports = [[[0, 44], "disallowed_STD3_valid"], [[45, 46], "valid"], [[47, 47], "disallowed_STD3_valid"], [[48, 57], "valid"], [[58, 64], "disallowed_STD3_valid"], [[65, 65], "mapped", [97]], [[66, 66], "mapped", [98]], [[67, 67], "mapped", [99]], [[68, 68], "mapped", [100]], [[69, 69], "mapped", [101]], [[70, 70], "mapped", [102]], [[71, 71], "mapped", [103]], [[72, 72], "mapped", [104]], [[73, 73], "mapped", [105]], [[74, 74], "mapped", [106]], [[75, 75], "mapped", [107]], [[76, 76], "mapped", [108]], [[77, 77], "mapped", [109]], [[78, 78], "mapped", [110]], [[79, 79], "mapped", [111]], [[80, 80], "mapped", [112]], [[81, 81], "mapped", [113]], [[82, 82], "mapped", [114]], [[83, 83], "mapped", [115]], [[84, 84], "mapped", [116]], [[85, 85], "mapped", [117]], [[86, 86], "mapped", [118]], [[87, 87], "mapped", [119]], [[88, 88], "mapped", [120]], [[89, 89], "mapped", [121]], [[90, 90], "mapped", [122]], [[91, 96], "disallowed_STD3_valid"], [[97, 122], "valid"], [[123, 127], "disallowed_STD3_valid"], [[128, 159], "disallowed"], [[160, 160], "disallowed_STD3_mapped", [32]], [[161, 167], "valid", [], "NV8"], [[168, 168], "disallowed_STD3_mapped", [32, 776]], [[169, 169], "valid", [], "NV8"], [[170, 170], "mapped", [97]], [[171, 172], "valid", [], "NV8"], [[173, 173], "ignored"], [[174, 174], "valid", [], "NV8"], [[175, 175], "disallowed_STD3_mapped", [32, 772]], [[176, 177], "valid", [], "NV8"], [[178, 178], "mapped", [50]], [[179, 179], "mapped", [51]], [[180, 180], "disallowed_STD3_mapped", [32, 769]], [[181, 181], "mapped", [956]], [[182, 182], "valid", [], "NV8"], [[183, 183], "valid"], [[184, 184], "disallowed_STD3_mapped", [32, 807]], [[185, 185], "mapped", [49]], [[186, 186], "mapped", [111]], [[187, 187], "valid", [], "NV8"], [[188, 188], "mapped", [49, 8260, 52]], [[189, 189], "mapped", [49, 8260, 50]], [[190, 190], "mapped", [51, 8260, 52]], [[191, 191], "valid", [], "NV8"], [[192, 192], "mapped", [224]], [[193, 193], "mapped", [225]], [[194, 194], "mapped", [226]], [[195, 195], "mapped", [227]], [[196, 196], "mapped", [228]], [[197, 197], "mapped", [229]], [[198, 198], "mapped", [230]], [[199, 199], "mapped", [231]], [[200, 200], "mapped", [232]], [[201, 201], "mapped", [233]], [[202, 202], "mapped", [234]], [[203, 203], "mapped", [235]], [[204, 204], "mapped", [236]], [[205, 205], "mapped", [237]], [[206, 206], "mapped", [238]], [[207, 207], "mapped", [239]], [[208, 208], "mapped", [240]], [[209, 209], "mapped", [241]], [[210, 210], "mapped", [242]], [[211, 211], "mapped", [243]], [[212, 212], "mapped", [244]], [[213, 213], "mapped", [245]], [[214, 214], "mapped", [246]], [[215, 215], "valid", [], "NV8"], [[216, 216], "mapped", [248]], [[217, 217], "mapped", [249]], [[218, 218], "mapped", [250]], [[219, 219], "mapped", [251]], [[220, 220], "mapped", [252]], [[221, 221], "mapped", [253]], [[222, 222], "mapped", [254]], [[223, 223], "deviation", [115, 115]], [[224, 246], "valid"], [[247, 247], "valid", [], "NV8"], [[248, 255], "valid"], [[256, 256], "mapped", [257]], [[257, 257], "valid"], [[258, 258], "mapped", [259]], [[259, 259], "valid"], [[260, 260], "mapped", [261]], [[261, 261], "valid"], [[262, 262], "mapped", [263]], [[263, 263], "valid"], [[264, 264], "mapped", [265]], [[265, 265], "valid"], [[266, 266], "mapped", [267]], [[267, 267], "valid"], [[268, 268], "mapped", [269]], [[269, 269], "valid"], [[270, 270], "mapped", [271]], [[271, 271], "valid"], [[272, 272], "mapped", [273]], [[273, 273], "valid"], [[274, 274], "mapped", [275]], [[275, 275], "valid"], [[276, 276], "mapped", [277]], [[277, 277], "valid"], [[278, 278], "mapped", [279]], [[279, 279], "valid"], [[280, 280], "mapped", [281]], [[281, 281], "valid"], [[282, 282], "mapped", [283]], [[283, 283], "valid"], [[284, 284], "mapped", [285]], [[285, 285], "valid"], [[286, 286], "mapped", [287]], [[287, 287], "valid"], [[288, 288], "mapped", [289]], [[289, 289], "valid"], [[290, 290], "mapped", [291]], [[291, 291], "valid"], [[292, 292], "mapped", [293]], [[293, 293], "valid"], [[294, 294], "mapped", [295]], [[295, 295], "valid"], [[296, 296], "mapped", [297]], [[297, 297], "valid"], [[298, 298], "mapped", [299]], [[299, 299], "valid"], [[300, 300], "mapped", [301]], [[301, 301], "valid"], [[302, 302], "mapped", [303]], [[303, 303], "valid"], [[304, 304], "mapped", [105, 775]], [[305, 305], "valid"], [[306, 307], "mapped", [105, 106]], [[308, 308], "mapped", [309]], [[309, 309], "valid"], [[310, 310], "mapped", [311]], [[311, 312], "valid"], [[313, 313], "mapped", [314]], [[314, 314], "valid"], [[315, 315], "mapped", [316]], [[316, 316], "valid"], [[317, 317], "mapped", [318]], [[318, 318], "valid"], [[319, 320], "mapped", [108, 183]], [[321, 321], "mapped", [322]], [[322, 322], "valid"], [[323, 323], "mapped", [324]], [[324, 324], "valid"], [[325, 325], "mapped", [326]], [[326, 326], "valid"], [[327, 327], "mapped", [328]], [[328, 328], "valid"], [[329, 329], "mapped", [700, 110]], [[330, 330], "mapped", [331]], [[331, 331], "valid"], [[332, 332], "mapped", [333]], [[333, 333], "valid"], [[334, 334], "mapped", [335]], [[335, 335], "valid"], [[336, 336], "mapped", [337]], [[337, 337], "valid"], [[338, 338], "mapped", [339]], [[339, 339], "valid"], [[340, 340], "mapped", [341]], [[341, 341], "valid"], [[342, 342], "mapped", [343]], [[343, 343], "valid"], [[344, 344], "mapped", [345]], [[345, 345], "valid"], [[346, 346], "mapped", [347]], [[347, 347], "valid"], [[348, 348], "mapped", [349]], [[349, 349], "valid"], [[350, 350], "mapped", [351]], [[351, 351], "valid"], [[352, 352], "mapped", [353]], [[353, 353], "valid"], [[354, 354], "mapped", [355]], [[355, 355], "valid"], [[356, 356], "mapped", [357]], [[357, 357], "valid"], [[358, 358], "mapped", [359]], [[359, 359], "valid"], [[360, 360], "mapped", [361]], [[361, 361], "valid"], [[362, 362], "mapped", [363]], [[363, 363], "valid"], [[364, 364], "mapped", [365]], [[365, 365], "valid"], [[366, 366], "mapped", [367]], [[367, 367], "valid"], [[368, 368], "mapped", [369]], [[369, 369], "valid"], [[370, 370], "mapped", [371]], [[371, 371], "valid"], [[372, 372], "mapped", [373]], [[373, 373], "valid"], [[374, 374], "mapped", [375]], [[375, 375], "valid"], [[376, 376], "mapped", [255]], [[377, 377], "mapped", [378]], [[378, 378], "valid"], [[379, 379], "mapped", [380]], [[380, 380], "valid"], [[381, 381], "mapped", [382]], [[382, 382], "valid"], [[383, 383], "mapped", [115]], [[384, 384], "valid"], [[385, 385], "mapped", [595]], [[386, 386], "mapped", [387]], [[387, 387], "valid"], [[388, 388], "mapped", [389]], [[389, 389], "valid"], [[390, 390], "mapped", [596]], [[391, 391], "mapped", [392]], [[392, 392], "valid"], [[393, 393], "mapped", [598]], [[394, 394], "mapped", [599]], [[395, 395], "mapped", [396]], [[396, 397], "valid"], [[398, 398], "mapped", [477]], [[399, 399], "mapped", [601]], [[400, 400], "mapped", [603]], [[401, 401], "mapped", [402]], [[402, 402], "valid"], [[403, 403], "mapped", [608]], [[404, 404], "mapped", [611]], [[405, 405], "valid"], [[406, 406], "mapped", [617]], [[407, 407], "mapped", [616]], [[408, 408], "mapped", [409]], [[409, 411], "valid"], [[412, 412], "mapped", [623]], [[413, 413], "mapped", [626]], [[414, 414], "valid"], [[415, 415], "mapped", [629]], [[416, 416], "mapped", [417]], [[417, 417], "valid"], [[418, 418], "mapped", [419]], [[419, 419], "valid"], [[420, 420], "mapped", [421]], [[421, 421], "valid"], [[422, 422], "mapped", [640]], [[423, 423], "mapped", [424]], [[424, 424], "valid"], [[425, 425], "mapped", [643]], [[426, 427], "valid"], [[428, 428], "mapped", [429]], [[429, 429], "valid"], [[430, 430], "mapped", [648]], [[431, 431], "mapped", [432]], [[432, 432], "valid"], [[433, 433], "mapped", [650]], [[434, 434], "mapped", [651]], [[435, 435], "mapped", [436]], [[436, 436], "valid"], [[437, 437], "mapped", [438]], [[438, 438], "valid"], [[439, 439], "mapped", [658]], [[440, 440], "mapped", [441]], [[441, 443], "valid"], [[444, 444], "mapped", [445]], [[445, 451], "valid"], [[452, 454], "mapped", [100, 382]], [[455, 457], "mapped", [108, 106]], [[458, 460], "mapped", [110, 106]], [[461, 461], "mapped", [462]], [[462, 462], "valid"], [[463, 463], "mapped", [464]], [[464, 464], "valid"], [[465, 465], "mapped", [466]], [[466, 466], "valid"], [[467, 467], "mapped", [468]], [[468, 468], "valid"], [[469, 469], "mapped", [470]], [[470, 470], "valid"], [[471, 471], "mapped", [472]], [[472, 472], "valid"], [[473, 473], "mapped", [474]], [[474, 474], "valid"], [[475, 475], "mapped", [476]], [[476, 477], "valid"], [[478, 478], "mapped", [479]], [[479, 479], "valid"], [[480, 480], "mapped", [481]], [[481, 481], "valid"], [[482, 482], "mapped", [483]], [[483, 483], "valid"], [[484, 484], "mapped", [485]], [[485, 485], "valid"], [[486, 486], "mapped", [487]], [[487, 487], "valid"], [[488, 488], "mapped", [489]], [[489, 489], "valid"], [[490, 490], "mapped", [491]], [[491, 491], "valid"], [[492, 492], "mapped", [493]], [[493, 493], "valid"], [[494, 494], "mapped", [495]], [[495, 496], "valid"], [[497, 499], "mapped", [100, 122]], [[500, 500], "mapped", [501]], [[501, 501], "valid"], [[502, 502], "mapped", [405]], [[503, 503], "mapped", [447]], [[504, 504], "mapped", [505]], [[505, 505], "valid"], [[506, 506], "mapped", [507]], [[507, 507], "valid"], [[508, 508], "mapped", [509]], [[509, 509], "valid"], [[510, 510], "mapped", [511]], [[511, 511], "valid"], [[512, 512], "mapped", [513]], [[513, 513], "valid"], [[514, 514], "mapped", [515]], [[515, 515], "valid"], [[516, 516], "mapped", [517]], [[517, 517], "valid"], [[518, 518], "mapped", [519]], [[519, 519], "valid"], [[520, 520], "mapped", [521]], [[521, 521], "valid"], [[522, 522], "mapped", [523]], [[523, 523], "valid"], [[524, 524], "mapped", [525]], [[525, 525], "valid"], [[526, 526], "mapped", [527]], [[527, 527], "valid"], [[528, 528], "mapped", [529]], [[529, 529], "valid"], [[530, 530], "mapped", [531]], [[531, 531], "valid"], [[532, 532], "mapped", [533]], [[533, 533], "valid"], [[534, 534], "mapped", [535]], [[535, 535], "valid"], [[536, 536], "mapped", [537]], [[537, 537], "valid"], [[538, 538], "mapped", [539]], [[539, 539], "valid"], [[540, 540], "mapped", [541]], [[541, 541], "valid"], [[542, 542], "mapped", [543]], [[543, 543], "valid"], [[544, 544], "mapped", [414]], [[545, 545], "valid"], [[546, 546], "mapped", [547]], [[547, 547], "valid"], [[548, 548], "mapped", [549]], [[549, 549], "valid"], [[550, 550], "mapped", [551]], [[551, 551], "valid"], [[552, 552], "mapped", [553]], [[553, 553], "valid"], [[554, 554], "mapped", [555]], [[555, 555], "valid"], [[556, 556], "mapped", [557]], [[557, 557], "valid"], [[558, 558], "mapped", [559]], [[559, 559], "valid"], [[560, 560], "mapped", [561]], [[561, 561], "valid"], [[562, 562], "mapped", [563]], [[563, 563], "valid"], [[564, 566], "valid"], [[567, 569], "valid"], [[570, 570], "mapped", [11365]], [[571, 571], "mapped", [572]], [[572, 572], "valid"], [[573, 573], "mapped", [410]], [[574, 574], "mapped", [11366]], [[575, 576], "valid"], [[577, 577], "mapped", [578]], [[578, 578], "valid"], [[579, 579], "mapped", [384]], [[580, 580], "mapped", [649]], [[581, 581], "mapped", [652]], [[582, 582], "mapped", [583]], [[583, 583], "valid"], [[584, 584], "mapped", [585]], [[585, 585], "valid"], [[586, 586], "mapped", [587]], [[587, 587], "valid"], [[588, 588], "mapped", [589]], [[589, 589], "valid"], [[590, 590], "mapped", [591]], [[591, 591], "valid"], [[592, 680], "valid"], [[681, 685], "valid"], [[686, 687], "valid"], [[688, 688], "mapped", [104]], [[689, 689], "mapped", [614]], [[690, 690], "mapped", [106]], [[691, 691], "mapped", [114]], [[692, 692], "mapped", [633]], [[693, 693], "mapped", [635]], [[694, 694], "mapped", [641]], [[695, 695], "mapped", [119]], [[696, 696], "mapped", [121]], [[697, 705], "valid"], [[706, 709], "valid", [], "NV8"], [[710, 721], "valid"], [[722, 727], "valid", [], "NV8"], [[728, 728], "disallowed_STD3_mapped", [32, 774]], [[729, 729], "disallowed_STD3_mapped", [32, 775]], [[730, 730], "disallowed_STD3_mapped", [32, 778]], [[731, 731], "disallowed_STD3_mapped", [32, 808]], [[732, 732], "disallowed_STD3_mapped", [32, 771]], [[733, 733], "disallowed_STD3_mapped", [32, 779]], [[734, 734], "valid", [], "NV8"], [[735, 735], "valid", [], "NV8"], [[736, 736], "mapped", [611]], [[737, 737], "mapped", [108]], [[738, 738], "mapped", [115]], [[739, 739], "mapped", [120]], [[740, 740], "mapped", [661]], [[741, 745], "valid", [], "NV8"], [[746, 747], "valid", [], "NV8"], [[748, 748], "valid"], [[749, 749], "valid", [], "NV8"], [[750, 750], "valid"], [[751, 767], "valid", [], "NV8"], [[768, 831], "valid"], [[832, 832], "mapped", [768]], [[833, 833], "mapped", [769]], [[834, 834], "valid"], [[835, 835], "mapped", [787]], [[836, 836], "mapped", [776, 769]], [[837, 837], "mapped", [953]], [[838, 846], "valid"], [[847, 847], "ignored"], [[848, 855], "valid"], [[856, 860], "valid"], [[861, 863], "valid"], [[864, 865], "valid"], [[866, 866], "valid"], [[867, 879], "valid"], [[880, 880], "mapped", [881]], [[881, 881], "valid"], [[882, 882], "mapped", [883]], [[883, 883], "valid"], [[884, 884], "mapped", [697]], [[885, 885], "valid"], [[886, 886], "mapped", [887]], [[887, 887], "valid"], [[888, 889], "disallowed"], [[890, 890], "disallowed_STD3_mapped", [32, 953]], [[891, 893], "valid"], [[894, 894], "disallowed_STD3_mapped", [59]], [[895, 895], "mapped", [1011]], [[896, 899], "disallowed"], [[900, 900], "disallowed_STD3_mapped", [32, 769]], [[901, 901], "disallowed_STD3_mapped", [32, 776, 769]], [[902, 902], "mapped", [940]], [[903, 903], "mapped", [183]], [[904, 904], "mapped", [941]], [[905, 905], "mapped", [942]], [[906, 906], "mapped", [943]], [[907, 907], "disallowed"], [[908, 908], "mapped", [972]], [[909, 909], "disallowed"], [[910, 910], "mapped", [973]], [[911, 911], "mapped", [974]], [[912, 912], "valid"], [[913, 913], "mapped", [945]], [[914, 914], "mapped", [946]], [[915, 915], "mapped", [947]], [[916, 916], "mapped", [948]], [[917, 917], "mapped", [949]], [[918, 918], "mapped", [950]], [[919, 919], "mapped", [951]], [[920, 920], "mapped", [952]], [[921, 921], "mapped", [953]], [[922, 922], "mapped", [954]], [[923, 923], "mapped", [955]], [[924, 924], "mapped", [956]], [[925, 925], "mapped", [957]], [[926, 926], "mapped", [958]], [[927, 927], "mapped", [959]], [[928, 928], "mapped", [960]], [[929, 929], "mapped", [961]], [[930, 930], "disallowed"], [[931, 931], "mapped", [963]], [[932, 932], "mapped", [964]], [[933, 933], "mapped", [965]], [[934, 934], "mapped", [966]], [[935, 935], "mapped", [967]], [[936, 936], "mapped", [968]], [[937, 937], "mapped", [969]], [[938, 938], "mapped", [970]], [[939, 939], "mapped", [971]], [[940, 961], "valid"], [[962, 962], "deviation", [963]], [[963, 974], "valid"], [[975, 975], "mapped", [983]], [[976, 976], "mapped", [946]], [[977, 977], "mapped", [952]], [[978, 978], "mapped", [965]], [[979, 979], "mapped", [973]], [[980, 980], "mapped", [971]], [[981, 981], "mapped", [966]], [[982, 982], "mapped", [960]], [[983, 983], "valid"], [[984, 984], "mapped", [985]], [[985, 985], "valid"], [[986, 986], "mapped", [987]], [[987, 987], "valid"], [[988, 988], "mapped", [989]], [[989, 989], "valid"], [[990, 990], "mapped", [991]], [[991, 991], "valid"], [[992, 992], "mapped", [993]], [[993, 993], "valid"], [[994, 994], "mapped", [995]], [[995, 995], "valid"], [[996, 996], "mapped", [997]], [[997, 997], "valid"], [[998, 998], "mapped", [999]], [[999, 999], "valid"], [[1e3, 1e3], "mapped", [1001]], [[1001, 1001], "valid"], [[1002, 1002], "mapped", [1003]], [[1003, 1003], "valid"], [[1004, 1004], "mapped", [1005]], [[1005, 1005], "valid"], [[1006, 1006], "mapped", [1007]], [[1007, 1007], "valid"], [[1008, 1008], "mapped", [954]], [[1009, 1009], "mapped", [961]], [[1010, 1010], "mapped", [963]], [[1011, 1011], "valid"], [[1012, 1012], "mapped", [952]], [[1013, 1013], "mapped", [949]], [[1014, 1014], "valid", [], "NV8"], [[1015, 1015], "mapped", [1016]], [[1016, 1016], "valid"], [[1017, 1017], "mapped", [963]], [[1018, 1018], "mapped", [1019]], [[1019, 1019], "valid"], [[1020, 1020], "valid"], [[1021, 1021], "mapped", [891]], [[1022, 1022], "mapped", [892]], [[1023, 1023], "mapped", [893]], [[1024, 1024], "mapped", [1104]], [[1025, 1025], "mapped", [1105]], [[1026, 1026], "mapped", [1106]], [[1027, 1027], "mapped", [1107]], [[1028, 1028], "mapped", [1108]], [[1029, 1029], "mapped", [1109]], [[1030, 1030], "mapped", [1110]], [[1031, 1031], "mapped", [1111]], [[1032, 1032], "mapped", [1112]], [[1033, 1033], "mapped", [1113]], [[1034, 1034], "mapped", [1114]], [[1035, 1035], "mapped", [1115]], [[1036, 1036], "mapped", [1116]], [[1037, 1037], "mapped", [1117]], [[1038, 1038], "mapped", [1118]], [[1039, 1039], "mapped", [1119]], [[1040, 1040], "mapped", [1072]], [[1041, 1041], "mapped", [1073]], [[1042, 1042], "mapped", [1074]], [[1043, 1043], "mapped", [1075]], [[1044, 1044], "mapped", [1076]], [[1045, 1045], "mapped", [1077]], [[1046, 1046], "mapped", [1078]], [[1047, 1047], "mapped", [1079]], [[1048, 1048], "mapped", [1080]], [[1049, 1049], "mapped", [1081]], [[1050, 1050], "mapped", [1082]], [[1051, 1051], "mapped", [1083]], [[1052, 1052], "mapped", [1084]], [[1053, 1053], "mapped", [1085]], [[1054, 1054], "mapped", [1086]], [[1055, 1055], "mapped", [1087]], [[1056, 1056], "mapped", [1088]], [[1057, 1057], "mapped", [1089]], [[1058, 1058], "mapped", [1090]], [[1059, 1059], "mapped", [1091]], [[1060, 1060], "mapped", [1092]], [[1061, 1061], "mapped", [1093]], [[1062, 1062], "mapped", [1094]], [[1063, 1063], "mapped", [1095]], [[1064, 1064], "mapped", [1096]], [[1065, 1065], "mapped", [1097]], [[1066, 1066], "mapped", [1098]], [[1067, 1067], "mapped", [1099]], [[1068, 1068], "mapped", [1100]], [[1069, 1069], "mapped", [1101]], [[1070, 1070], "mapped", [1102]], [[1071, 1071], "mapped", [1103]], [[1072, 1103], "valid"], [[1104, 1104], "valid"], [[1105, 1116], "valid"], [[1117, 1117], "valid"], [[1118, 1119], "valid"], [[1120, 1120], "mapped", [1121]], [[1121, 1121], "valid"], [[1122, 1122], "mapped", [1123]], [[1123, 1123], "valid"], [[1124, 1124], "mapped", [1125]], [[1125, 1125], "valid"], [[1126, 1126], "mapped", [1127]], [[1127, 1127], "valid"], [[1128, 1128], "mapped", [1129]], [[1129, 1129], "valid"], [[1130, 1130], "mapped", [1131]], [[1131, 1131], "valid"], [[1132, 1132], "mapped", [1133]], [[1133, 1133], "valid"], [[1134, 1134], "mapped", [1135]], [[1135, 1135], "valid"], [[1136, 1136], "mapped", [1137]], [[1137, 1137], "valid"], [[1138, 1138], "mapped", [1139]], [[1139, 1139], "valid"], [[1140, 1140], "mapped", [1141]], [[1141, 1141], "valid"], [[1142, 1142], "mapped", [1143]], [[1143, 1143], "valid"], [[1144, 1144], "mapped", [1145]], [[1145, 1145], "valid"], [[1146, 1146], "mapped", [1147]], [[1147, 1147], "valid"], [[1148, 1148], "mapped", [1149]], [[1149, 1149], "valid"], [[1150, 1150], "mapped", [1151]], [[1151, 1151], "valid"], [[1152, 1152], "mapped", [1153]], [[1153, 1153], "valid"], [[1154, 1154], "valid", [], "NV8"], [[1155, 1158], "valid"], [[1159, 1159], "valid"], [[1160, 1161], "valid", [], "NV8"], [[1162, 1162], "mapped", [1163]], [[1163, 1163], "valid"], [[1164, 1164], "mapped", [1165]], [[1165, 1165], "valid"], [[1166, 1166], "mapped", [1167]], [[1167, 1167], "valid"], [[1168, 1168], "mapped", [1169]], [[1169, 1169], "valid"], [[1170, 1170], "mapped", [1171]], [[1171, 1171], "valid"], [[1172, 1172], "mapped", [1173]], [[1173, 1173], "valid"], [[1174, 1174], "mapped", [1175]], [[1175, 1175], "valid"], [[1176, 1176], "mapped", [1177]], [[1177, 1177], "valid"], [[1178, 1178], "mapped", [1179]], [[1179, 1179], "valid"], [[1180, 1180], "mapped", [1181]], [[1181, 1181], "valid"], [[1182, 1182], "mapped", [1183]], [[1183, 1183], "valid"], [[1184, 1184], "mapped", [1185]], [[1185, 1185], "valid"], [[1186, 1186], "mapped", [1187]], [[1187, 1187], "valid"], [[1188, 1188], "mapped", [1189]], [[1189, 1189], "valid"], [[1190, 1190], "mapped", [1191]], [[1191, 1191], "valid"], [[1192, 1192], "mapped", [1193]], [[1193, 1193], "valid"], [[1194, 1194], "mapped", [1195]], [[1195, 1195], "valid"], [[1196, 1196], "mapped", [1197]], [[1197, 1197], "valid"], [[1198, 1198], "mapped", [1199]], [[1199, 1199], "valid"], [[1200, 1200], "mapped", [1201]], [[1201, 1201], "valid"], [[1202, 1202], "mapped", [1203]], [[1203, 1203], "valid"], [[1204, 1204], "mapped", [1205]], [[1205, 1205], "valid"], [[1206, 1206], "mapped", [1207]], [[1207, 1207], "valid"], [[1208, 1208], "mapped", [1209]], [[1209, 1209], "valid"], [[1210, 1210], "mapped", [1211]], [[1211, 1211], "valid"], [[1212, 1212], "mapped", [1213]], [[1213, 1213], "valid"], [[1214, 1214], "mapped", [1215]], [[1215, 1215], "valid"], [[1216, 1216], "disallowed"], [[1217, 1217], "mapped", [1218]], [[1218, 1218], "valid"], [[1219, 1219], "mapped", [1220]], [[1220, 1220], "valid"], [[1221, 1221], "mapped", [1222]], [[1222, 1222], "valid"], [[1223, 1223], "mapped", [1224]], [[1224, 1224], "valid"], [[1225, 1225], "mapped", [1226]], [[1226, 1226], "valid"], [[1227, 1227], "mapped", [1228]], [[1228, 1228], "valid"], [[1229, 1229], "mapped", [1230]], [[1230, 1230], "valid"], [[1231, 1231], "valid"], [[1232, 1232], "mapped", [1233]], [[1233, 1233], "valid"], [[1234, 1234], "mapped", [1235]], [[1235, 1235], "valid"], [[1236, 1236], "mapped", [1237]], [[1237, 1237], "valid"], [[1238, 1238], "mapped", [1239]], [[1239, 1239], "valid"], [[1240, 1240], "mapped", [1241]], [[1241, 1241], "valid"], [[1242, 1242], "mapped", [1243]], [[1243, 1243], "valid"], [[1244, 1244], "mapped", [1245]], [[1245, 1245], "valid"], [[1246, 1246], "mapped", [1247]], [[1247, 1247], "valid"], [[1248, 1248], "mapped", [1249]], [[1249, 1249], "valid"], [[1250, 1250], "mapped", [1251]], [[1251, 1251], "valid"], [[1252, 1252], "mapped", [1253]], [[1253, 1253], "valid"], [[1254, 1254], "mapped", [1255]], [[1255, 1255], "valid"], [[1256, 1256], "mapped", [1257]], [[1257, 1257], "valid"], [[1258, 1258], "mapped", [1259]], [[1259, 1259], "valid"], [[1260, 1260], "mapped", [1261]], [[1261, 1261], "valid"], [[1262, 1262], "mapped", [1263]], [[1263, 1263], "valid"], [[1264, 1264], "mapped", [1265]], [[1265, 1265], "valid"], [[1266, 1266], "mapped", [1267]], [[1267, 1267], "valid"], [[1268, 1268], "mapped", [1269]], [[1269, 1269], "valid"], [[1270, 1270], "mapped", [1271]], [[1271, 1271], "valid"], [[1272, 1272], "mapped", [1273]], [[1273, 1273], "valid"], [[1274, 1274], "mapped", [1275]], [[1275, 1275], "valid"], [[1276, 1276], "mapped", [1277]], [[1277, 1277], "valid"], [[1278, 1278], "mapped", [1279]], [[1279, 1279], "valid"], [[1280, 1280], "mapped", [1281]], [[1281, 1281], "valid"], [[1282, 1282], "mapped", [1283]], [[1283, 1283], "valid"], [[1284, 1284], "mapped", [1285]], [[1285, 1285], "valid"], [[1286, 1286], "mapped", [1287]], [[1287, 1287], "valid"], [[1288, 1288], "mapped", [1289]], [[1289, 1289], "valid"], [[1290, 1290], "mapped", [1291]], [[1291, 1291], "valid"], [[1292, 1292], "mapped", [1293]], [[1293, 1293], "valid"], [[1294, 1294], "mapped", [1295]], [[1295, 1295], "valid"], [[1296, 1296], "mapped", [1297]], [[1297, 1297], "valid"], [[1298, 1298], "mapped", [1299]], [[1299, 1299], "valid"], [[1300, 1300], "mapped", [1301]], [[1301, 1301], "valid"], [[1302, 1302], "mapped", [1303]], [[1303, 1303], "valid"], [[1304, 1304], "mapped", [1305]], [[1305, 1305], "valid"], [[1306, 1306], "mapped", [1307]], [[1307, 1307], "valid"], [[1308, 1308], "mapped", [1309]], [[1309, 1309], "valid"], [[1310, 1310], "mapped", [1311]], [[1311, 1311], "valid"], [[1312, 1312], "mapped", [1313]], [[1313, 1313], "valid"], [[1314, 1314], "mapped", [1315]], [[1315, 1315], "valid"], [[1316, 1316], "mapped", [1317]], [[1317, 1317], "valid"], [[1318, 1318], "mapped", [1319]], [[1319, 1319], "valid"], [[1320, 1320], "mapped", [1321]], [[1321, 1321], "valid"], [[1322, 1322], "mapped", [1323]], [[1323, 1323], "valid"], [[1324, 1324], "mapped", [1325]], [[1325, 1325], "valid"], [[1326, 1326], "mapped", [1327]], [[1327, 1327], "valid"], [[1328, 1328], "disallowed"], [[1329, 1329], "mapped", [1377]], [[1330, 1330], "mapped", [1378]], [[1331, 1331], "mapped", [1379]], [[1332, 1332], "mapped", [1380]], [[1333, 1333], "mapped", [1381]], [[1334, 1334], "mapped", [1382]], [[1335, 1335], "mapped", [1383]], [[1336, 1336], "mapped", [1384]], [[1337, 1337], "mapped", [1385]], [[1338, 1338], "mapped", [1386]], [[1339, 1339], "mapped", [1387]], [[1340, 1340], "mapped", [1388]], [[1341, 1341], "mapped", [1389]], [[1342, 1342], "mapped", [1390]], [[1343, 1343], "mapped", [1391]], [[1344, 1344], "mapped", [1392]], [[1345, 1345], "mapped", [1393]], [[1346, 1346], "mapped", [1394]], [[1347, 1347], "mapped", [1395]], [[1348, 1348], "mapped", [1396]], [[1349, 1349], "mapped", [1397]], [[1350, 1350], "mapped", [1398]], [[1351, 1351], "mapped", [1399]], [[1352, 1352], "mapped", [1400]], [[1353, 1353], "mapped", [1401]], [[1354, 1354], "mapped", [1402]], [[1355, 1355], "mapped", [1403]], [[1356, 1356], "mapped", [1404]], [[1357, 1357], "mapped", [1405]], [[1358, 1358], "mapped", [1406]], [[1359, 1359], "mapped", [1407]], [[1360, 1360], "mapped", [1408]], [[1361, 1361], "mapped", [1409]], [[1362, 1362], "mapped", [1410]], [[1363, 1363], "mapped", [1411]], [[1364, 1364], "mapped", [1412]], [[1365, 1365], "mapped", [1413]], [[1366, 1366], "mapped", [1414]], [[1367, 1368], "disallowed"], [[1369, 1369], "valid"], [[1370, 1375], "valid", [], "NV8"], [[1376, 1376], "disallowed"], [[1377, 1414], "valid"], [[1415, 1415], "mapped", [1381, 1410]], [[1416, 1416], "disallowed"], [[1417, 1417], "valid", [], "NV8"], [[1418, 1418], "valid", [], "NV8"], [[1419, 1420], "disallowed"], [[1421, 1422], "valid", [], "NV8"], [[1423, 1423], "valid", [], "NV8"], [[1424, 1424], "disallowed"], [[1425, 1441], "valid"], [[1442, 1442], "valid"], [[1443, 1455], "valid"], [[1456, 1465], "valid"], [[1466, 1466], "valid"], [[1467, 1469], "valid"], [[1470, 1470], "valid", [], "NV8"], [[1471, 1471], "valid"], [[1472, 1472], "valid", [], "NV8"], [[1473, 1474], "valid"], [[1475, 1475], "valid", [], "NV8"], [[1476, 1476], "valid"], [[1477, 1477], "valid"], [[1478, 1478], "valid", [], "NV8"], [[1479, 1479], "valid"], [[1480, 1487], "disallowed"], [[1488, 1514], "valid"], [[1515, 1519], "disallowed"], [[1520, 1524], "valid"], [[1525, 1535], "disallowed"], [[1536, 1539], "disallowed"], [[1540, 1540], "disallowed"], [[1541, 1541], "disallowed"], [[1542, 1546], "valid", [], "NV8"], [[1547, 1547], "valid", [], "NV8"], [[1548, 1548], "valid", [], "NV8"], [[1549, 1551], "valid", [], "NV8"], [[1552, 1557], "valid"], [[1558, 1562], "valid"], [[1563, 1563], "valid", [], "NV8"], [[1564, 1564], "disallowed"], [[1565, 1565], "disallowed"], [[1566, 1566], "valid", [], "NV8"], [[1567, 1567], "valid", [], "NV8"], [[1568, 1568], "valid"], [[1569, 1594], "valid"], [[1595, 1599], "valid"], [[1600, 1600], "valid", [], "NV8"], [[1601, 1618], "valid"], [[1619, 1621], "valid"], [[1622, 1624], "valid"], [[1625, 1630], "valid"], [[1631, 1631], "valid"], [[1632, 1641], "valid"], [[1642, 1645], "valid", [], "NV8"], [[1646, 1647], "valid"], [[1648, 1652], "valid"], [[1653, 1653], "mapped", [1575, 1652]], [[1654, 1654], "mapped", [1608, 1652]], [[1655, 1655], "mapped", [1735, 1652]], [[1656, 1656], "mapped", [1610, 1652]], [[1657, 1719], "valid"], [[1720, 1721], "valid"], [[1722, 1726], "valid"], [[1727, 1727], "valid"], [[1728, 1742], "valid"], [[1743, 1743], "valid"], [[1744, 1747], "valid"], [[1748, 1748], "valid", [], "NV8"], [[1749, 1756], "valid"], [[1757, 1757], "disallowed"], [[1758, 1758], "valid", [], "NV8"], [[1759, 1768], "valid"], [[1769, 1769], "valid", [], "NV8"], [[1770, 1773], "valid"], [[1774, 1775], "valid"], [[1776, 1785], "valid"], [[1786, 1790], "valid"], [[1791, 1791], "valid"], [[1792, 1805], "valid", [], "NV8"], [[1806, 1806], "disallowed"], [[1807, 1807], "disallowed"], [[1808, 1836], "valid"], [[1837, 1839], "valid"], [[1840, 1866], "valid"], [[1867, 1868], "disallowed"], [[1869, 1871], "valid"], [[1872, 1901], "valid"], [[1902, 1919], "valid"], [[1920, 1968], "valid"], [[1969, 1969], "valid"], [[1970, 1983], "disallowed"], [[1984, 2037], "valid"], [[2038, 2042], "valid", [], "NV8"], [[2043, 2047], "disallowed"], [[2048, 2093], "valid"], [[2094, 2095], "disallowed"], [[2096, 2110], "valid", [], "NV8"], [[2111, 2111], "disallowed"], [[2112, 2139], "valid"], [[2140, 2141], "disallowed"], [[2142, 2142], "valid", [], "NV8"], [[2143, 2207], "disallowed"], [[2208, 2208], "valid"], [[2209, 2209], "valid"], [[2210, 2220], "valid"], [[2221, 2226], "valid"], [[2227, 2228], "valid"], [[2229, 2274], "disallowed"], [[2275, 2275], "valid"], [[2276, 2302], "valid"], [[2303, 2303], "valid"], [[2304, 2304], "valid"], [[2305, 2307], "valid"], [[2308, 2308], "valid"], [[2309, 2361], "valid"], [[2362, 2363], "valid"], [[2364, 2381], "valid"], [[2382, 2382], "valid"], [[2383, 2383], "valid"], [[2384, 2388], "valid"], [[2389, 2389], "valid"], [[2390, 2391], "valid"], [[2392, 2392], "mapped", [2325, 2364]], [[2393, 2393], "mapped", [2326, 2364]], [[2394, 2394], "mapped", [2327, 2364]], [[2395, 2395], "mapped", [2332, 2364]], [[2396, 2396], "mapped", [2337, 2364]], [[2397, 2397], "mapped", [2338, 2364]], [[2398, 2398], "mapped", [2347, 2364]], [[2399, 2399], "mapped", [2351, 2364]], [[2400, 2403], "valid"], [[2404, 2405], "valid", [], "NV8"], [[2406, 2415], "valid"], [[2416, 2416], "valid", [], "NV8"], [[2417, 2418], "valid"], [[2419, 2423], "valid"], [[2424, 2424], "valid"], [[2425, 2426], "valid"], [[2427, 2428], "valid"], [[2429, 2429], "valid"], [[2430, 2431], "valid"], [[2432, 2432], "valid"], [[2433, 2435], "valid"], [[2436, 2436], "disallowed"], [[2437, 2444], "valid"], [[2445, 2446], "disallowed"], [[2447, 2448], "valid"], [[2449, 2450], "disallowed"], [[2451, 2472], "valid"], [[2473, 2473], "disallowed"], [[2474, 2480], "valid"], [[2481, 2481], "disallowed"], [[2482, 2482], "valid"], [[2483, 2485], "disallowed"], [[2486, 2489], "valid"], [[2490, 2491], "disallowed"], [[2492, 2492], "valid"], [[2493, 2493], "valid"], [[2494, 2500], "valid"], [[2501, 2502], "disallowed"], [[2503, 2504], "valid"], [[2505, 2506], "disallowed"], [[2507, 2509], "valid"], [[2510, 2510], "valid"], [[2511, 2518], "disallowed"], [[2519, 2519], "valid"], [[2520, 2523], "disallowed"], [[2524, 2524], "mapped", [2465, 2492]], [[2525, 2525], "mapped", [2466, 2492]], [[2526, 2526], "disallowed"], [[2527, 2527], "mapped", [2479, 2492]], [[2528, 2531], "valid"], [[2532, 2533], "disallowed"], [[2534, 2545], "valid"], [[2546, 2554], "valid", [], "NV8"], [[2555, 2555], "valid", [], "NV8"], [[2556, 2560], "disallowed"], [[2561, 2561], "valid"], [[2562, 2562], "valid"], [[2563, 2563], "valid"], [[2564, 2564], "disallowed"], [[2565, 2570], "valid"], [[2571, 2574], "disallowed"], [[2575, 2576], "valid"], [[2577, 2578], "disallowed"], [[2579, 2600], "valid"], [[2601, 2601], "disallowed"], [[2602, 2608], "valid"], [[2609, 2609], "disallowed"], [[2610, 2610], "valid"], [[2611, 2611], "mapped", [2610, 2620]], [[2612, 2612], "disallowed"], [[2613, 2613], "valid"], [[2614, 2614], "mapped", [2616, 2620]], [[2615, 2615], "disallowed"], [[2616, 2617], "valid"], [[2618, 2619], "disallowed"], [[2620, 2620], "valid"], [[2621, 2621], "disallowed"], [[2622, 2626], "valid"], [[2627, 2630], "disallowed"], [[2631, 2632], "valid"], [[2633, 2634], "disallowed"], [[2635, 2637], "valid"], [[2638, 2640], "disallowed"], [[2641, 2641], "valid"], [[2642, 2648], "disallowed"], [[2649, 2649], "mapped", [2582, 2620]], [[2650, 2650], "mapped", [2583, 2620]], [[2651, 2651], "mapped", [2588, 2620]], [[2652, 2652], "valid"], [[2653, 2653], "disallowed"], [[2654, 2654], "mapped", [2603, 2620]], [[2655, 2661], "disallowed"], [[2662, 2676], "valid"], [[2677, 2677], "valid"], [[2678, 2688], "disallowed"], [[2689, 2691], "valid"], [[2692, 2692], "disallowed"], [[2693, 2699], "valid"], [[2700, 2700], "valid"], [[2701, 2701], "valid"], [[2702, 2702], "disallowed"], [[2703, 2705], "valid"], [[2706, 2706], "disallowed"], [[2707, 2728], "valid"], [[2729, 2729], "disallowed"], [[2730, 2736], "valid"], [[2737, 2737], "disallowed"], [[2738, 2739], "valid"], [[2740, 2740], "disallowed"], [[2741, 2745], "valid"], [[2746, 2747], "disallowed"], [[2748, 2757], "valid"], [[2758, 2758], "disallowed"], [[2759, 2761], "valid"], [[2762, 2762], "disallowed"], [[2763, 2765], "valid"], [[2766, 2767], "disallowed"], [[2768, 2768], "valid"], [[2769, 2783], "disallowed"], [[2784, 2784], "valid"], [[2785, 2787], "valid"], [[2788, 2789], "disallowed"], [[2790, 2799], "valid"], [[2800, 2800], "valid", [], "NV8"], [[2801, 2801], "valid", [], "NV8"], [[2802, 2808], "disallowed"], [[2809, 2809], "valid"], [[2810, 2816], "disallowed"], [[2817, 2819], "valid"], [[2820, 2820], "disallowed"], [[2821, 2828], "valid"], [[2829, 2830], "disallowed"], [[2831, 2832], "valid"], [[2833, 2834], "disallowed"], [[2835, 2856], "valid"], [[2857, 2857], "disallowed"], [[2858, 2864], "valid"], [[2865, 2865], "disallowed"], [[2866, 2867], "valid"], [[2868, 2868], "disallowed"], [[2869, 2869], "valid"], [[2870, 2873], "valid"], [[2874, 2875], "disallowed"], [[2876, 2883], "valid"], [[2884, 2884], "valid"], [[2885, 2886], "disallowed"], [[2887, 2888], "valid"], [[2889, 2890], "disallowed"], [[2891, 2893], "valid"], [[2894, 2901], "disallowed"], [[2902, 2903], "valid"], [[2904, 2907], "disallowed"], [[2908, 2908], "mapped", [2849, 2876]], [[2909, 2909], "mapped", [2850, 2876]], [[2910, 2910], "disallowed"], [[2911, 2913], "valid"], [[2914, 2915], "valid"], [[2916, 2917], "disallowed"], [[2918, 2927], "valid"], [[2928, 2928], "valid", [], "NV8"], [[2929, 2929], "valid"], [[2930, 2935], "valid", [], "NV8"], [[2936, 2945], "disallowed"], [[2946, 2947], "valid"], [[2948, 2948], "disallowed"], [[2949, 2954], "valid"], [[2955, 2957], "disallowed"], [[2958, 2960], "valid"], [[2961, 2961], "disallowed"], [[2962, 2965], "valid"], [[2966, 2968], "disallowed"], [[2969, 2970], "valid"], [[2971, 2971], "disallowed"], [[2972, 2972], "valid"], [[2973, 2973], "disallowed"], [[2974, 2975], "valid"], [[2976, 2978], "disallowed"], [[2979, 2980], "valid"], [[2981, 2983], "disallowed"], [[2984, 2986], "valid"], [[2987, 2989], "disallowed"], [[2990, 2997], "valid"], [[2998, 2998], "valid"], [[2999, 3001], "valid"], [[3002, 3005], "disallowed"], [[3006, 3010], "valid"], [[3011, 3013], "disallowed"], [[3014, 3016], "valid"], [[3017, 3017], "disallowed"], [[3018, 3021], "valid"], [[3022, 3023], "disallowed"], [[3024, 3024], "valid"], [[3025, 3030], "disallowed"], [[3031, 3031], "valid"], [[3032, 3045], "disallowed"], [[3046, 3046], "valid"], [[3047, 3055], "valid"], [[3056, 3058], "valid", [], "NV8"], [[3059, 3066], "valid", [], "NV8"], [[3067, 3071], "disallowed"], [[3072, 3072], "valid"], [[3073, 3075], "valid"], [[3076, 3076], "disallowed"], [[3077, 3084], "valid"], [[3085, 3085], "disallowed"], [[3086, 3088], "valid"], [[3089, 3089], "disallowed"], [[3090, 3112], "valid"], [[3113, 3113], "disallowed"], [[3114, 3123], "valid"], [[3124, 3124], "valid"], [[3125, 3129], "valid"], [[3130, 3132], "disallowed"], [[3133, 3133], "valid"], [[3134, 3140], "valid"], [[3141, 3141], "disallowed"], [[3142, 3144], "valid"], [[3145, 3145], "disallowed"], [[3146, 3149], "valid"], [[3150, 3156], "disallowed"], [[3157, 3158], "valid"], [[3159, 3159], "disallowed"], [[3160, 3161], "valid"], [[3162, 3162], "valid"], [[3163, 3167], "disallowed"], [[3168, 3169], "valid"], [[3170, 3171], "valid"], [[3172, 3173], "disallowed"], [[3174, 3183], "valid"], [[3184, 3191], "disallowed"], [[3192, 3199], "valid", [], "NV8"], [[3200, 3200], "disallowed"], [[3201, 3201], "valid"], [[3202, 3203], "valid"], [[3204, 3204], "disallowed"], [[3205, 3212], "valid"], [[3213, 3213], "disallowed"], [[3214, 3216], "valid"], [[3217, 3217], "disallowed"], [[3218, 3240], "valid"], [[3241, 3241], "disallowed"], [[3242, 3251], "valid"], [[3252, 3252], "disallowed"], [[3253, 3257], "valid"], [[3258, 3259], "disallowed"], [[3260, 3261], "valid"], [[3262, 3268], "valid"], [[3269, 3269], "disallowed"], [[3270, 3272], "valid"], [[3273, 3273], "disallowed"], [[3274, 3277], "valid"], [[3278, 3284], "disallowed"], [[3285, 3286], "valid"], [[3287, 3293], "disallowed"], [[3294, 3294], "valid"], [[3295, 3295], "disallowed"], [[3296, 3297], "valid"], [[3298, 3299], "valid"], [[3300, 3301], "disallowed"], [[3302, 3311], "valid"], [[3312, 3312], "disallowed"], [[3313, 3314], "valid"], [[3315, 3328], "disallowed"], [[3329, 3329], "valid"], [[3330, 3331], "valid"], [[3332, 3332], "disallowed"], [[3333, 3340], "valid"], [[3341, 3341], "disallowed"], [[3342, 3344], "valid"], [[3345, 3345], "disallowed"], [[3346, 3368], "valid"], [[3369, 3369], "valid"], [[3370, 3385], "valid"], [[3386, 3386], "valid"], [[3387, 3388], "disallowed"], [[3389, 3389], "valid"], [[3390, 3395], "valid"], [[3396, 3396], "valid"], [[3397, 3397], "disallowed"], [[3398, 3400], "valid"], [[3401, 3401], "disallowed"], [[3402, 3405], "valid"], [[3406, 3406], "valid"], [[3407, 3414], "disallowed"], [[3415, 3415], "valid"], [[3416, 3422], "disallowed"], [[3423, 3423], "valid"], [[3424, 3425], "valid"], [[3426, 3427], "valid"], [[3428, 3429], "disallowed"], [[3430, 3439], "valid"], [[3440, 3445], "valid", [], "NV8"], [[3446, 3448], "disallowed"], [[3449, 3449], "valid", [], "NV8"], [[3450, 3455], "valid"], [[3456, 3457], "disallowed"], [[3458, 3459], "valid"], [[3460, 3460], "disallowed"], [[3461, 3478], "valid"], [[3479, 3481], "disallowed"], [[3482, 3505], "valid"], [[3506, 3506], "disallowed"], [[3507, 3515], "valid"], [[3516, 3516], "disallowed"], [[3517, 3517], "valid"], [[3518, 3519], "disallowed"], [[3520, 3526], "valid"], [[3527, 3529], "disallowed"], [[3530, 3530], "valid"], [[3531, 3534], "disallowed"], [[3535, 3540], "valid"], [[3541, 3541], "disallowed"], [[3542, 3542], "valid"], [[3543, 3543], "disallowed"], [[3544, 3551], "valid"], [[3552, 3557], "disallowed"], [[3558, 3567], "valid"], [[3568, 3569], "disallowed"], [[3570, 3571], "valid"], [[3572, 3572], "valid", [], "NV8"], [[3573, 3584], "disallowed"], [[3585, 3634], "valid"], [[3635, 3635], "mapped", [3661, 3634]], [[3636, 3642], "valid"], [[3643, 3646], "disallowed"], [[3647, 3647], "valid", [], "NV8"], [[3648, 3662], "valid"], [[3663, 3663], "valid", [], "NV8"], [[3664, 3673], "valid"], [[3674, 3675], "valid", [], "NV8"], [[3676, 3712], "disallowed"], [[3713, 3714], "valid"], [[3715, 3715], "disallowed"], [[3716, 3716], "valid"], [[3717, 3718], "disallowed"], [[3719, 3720], "valid"], [[3721, 3721], "disallowed"], [[3722, 3722], "valid"], [[3723, 3724], "disallowed"], [[3725, 3725], "valid"], [[3726, 3731], "disallowed"], [[3732, 3735], "valid"], [[3736, 3736], "disallowed"], [[3737, 3743], "valid"], [[3744, 3744], "disallowed"], [[3745, 3747], "valid"], [[3748, 3748], "disallowed"], [[3749, 3749], "valid"], [[3750, 3750], "disallowed"], [[3751, 3751], "valid"], [[3752, 3753], "disallowed"], [[3754, 3755], "valid"], [[3756, 3756], "disallowed"], [[3757, 3762], "valid"], [[3763, 3763], "mapped", [3789, 3762]], [[3764, 3769], "valid"], [[3770, 3770], "disallowed"], [[3771, 3773], "valid"], [[3774, 3775], "disallowed"], [[3776, 3780], "valid"], [[3781, 3781], "disallowed"], [[3782, 3782], "valid"], [[3783, 3783], "disallowed"], [[3784, 3789], "valid"], [[3790, 3791], "disallowed"], [[3792, 3801], "valid"], [[3802, 3803], "disallowed"], [[3804, 3804], "mapped", [3755, 3737]], [[3805, 3805], "mapped", [3755, 3745]], [[3806, 3807], "valid"], [[3808, 3839], "disallowed"], [[3840, 3840], "valid"], [[3841, 3850], "valid", [], "NV8"], [[3851, 3851], "valid"], [[3852, 3852], "mapped", [3851]], [[3853, 3863], "valid", [], "NV8"], [[3864, 3865], "valid"], [[3866, 3871], "valid", [], "NV8"], [[3872, 3881], "valid"], [[3882, 3892], "valid", [], "NV8"], [[3893, 3893], "valid"], [[3894, 3894], "valid", [], "NV8"], [[3895, 3895], "valid"], [[3896, 3896], "valid", [], "NV8"], [[3897, 3897], "valid"], [[3898, 3901], "valid", [], "NV8"], [[3902, 3906], "valid"], [[3907, 3907], "mapped", [3906, 4023]], [[3908, 3911], "valid"], [[3912, 3912], "disallowed"], [[3913, 3916], "valid"], [[3917, 3917], "mapped", [3916, 4023]], [[3918, 3921], "valid"], [[3922, 3922], "mapped", [3921, 4023]], [[3923, 3926], "valid"], [[3927, 3927], "mapped", [3926, 4023]], [[3928, 3931], "valid"], [[3932, 3932], "mapped", [3931, 4023]], [[3933, 3944], "valid"], [[3945, 3945], "mapped", [3904, 4021]], [[3946, 3946], "valid"], [[3947, 3948], "valid"], [[3949, 3952], "disallowed"], [[3953, 3954], "valid"], [[3955, 3955], "mapped", [3953, 3954]], [[3956, 3956], "valid"], [[3957, 3957], "mapped", [3953, 3956]], [[3958, 3958], "mapped", [4018, 3968]], [[3959, 3959], "mapped", [4018, 3953, 3968]], [[3960, 3960], "mapped", [4019, 3968]], [[3961, 3961], "mapped", [4019, 3953, 3968]], [[3962, 3968], "valid"], [[3969, 3969], "mapped", [3953, 3968]], [[3970, 3972], "valid"], [[3973, 3973], "valid", [], "NV8"], [[3974, 3979], "valid"], [[3980, 3983], "valid"], [[3984, 3986], "valid"], [[3987, 3987], "mapped", [3986, 4023]], [[3988, 3989], "valid"], [[3990, 3990], "valid"], [[3991, 3991], "valid"], [[3992, 3992], "disallowed"], [[3993, 3996], "valid"], [[3997, 3997], "mapped", [3996, 4023]], [[3998, 4001], "valid"], [[4002, 4002], "mapped", [4001, 4023]], [[4003, 4006], "valid"], [[4007, 4007], "mapped", [4006, 4023]], [[4008, 4011], "valid"], [[4012, 4012], "mapped", [4011, 4023]], [[4013, 4013], "valid"], [[4014, 4016], "valid"], [[4017, 4023], "valid"], [[4024, 4024], "valid"], [[4025, 4025], "mapped", [3984, 4021]], [[4026, 4028], "valid"], [[4029, 4029], "disallowed"], [[4030, 4037], "valid", [], "NV8"], [[4038, 4038], "valid"], [[4039, 4044], "valid", [], "NV8"], [[4045, 4045], "disallowed"], [[4046, 4046], "valid", [], "NV8"], [[4047, 4047], "valid", [], "NV8"], [[4048, 4049], "valid", [], "NV8"], [[4050, 4052], "valid", [], "NV8"], [[4053, 4056], "valid", [], "NV8"], [[4057, 4058], "valid", [], "NV8"], [[4059, 4095], "disallowed"], [[4096, 4129], "valid"], [[4130, 4130], "valid"], [[4131, 4135], "valid"], [[4136, 4136], "valid"], [[4137, 4138], "valid"], [[4139, 4139], "valid"], [[4140, 4146], "valid"], [[4147, 4149], "valid"], [[4150, 4153], "valid"], [[4154, 4159], "valid"], [[4160, 4169], "valid"], [[4170, 4175], "valid", [], "NV8"], [[4176, 4185], "valid"], [[4186, 4249], "valid"], [[4250, 4253], "valid"], [[4254, 4255], "valid", [], "NV8"], [[4256, 4293], "disallowed"], [[4294, 4294], "disallowed"], [[4295, 4295], "mapped", [11559]], [[4296, 4300], "disallowed"], [[4301, 4301], "mapped", [11565]], [[4302, 4303], "disallowed"], [[4304, 4342], "valid"], [[4343, 4344], "valid"], [[4345, 4346], "valid"], [[4347, 4347], "valid", [], "NV8"], [[4348, 4348], "mapped", [4316]], [[4349, 4351], "valid"], [[4352, 4441], "valid", [], "NV8"], [[4442, 4446], "valid", [], "NV8"], [[4447, 4448], "disallowed"], [[4449, 4514], "valid", [], "NV8"], [[4515, 4519], "valid", [], "NV8"], [[4520, 4601], "valid", [], "NV8"], [[4602, 4607], "valid", [], "NV8"], [[4608, 4614], "valid"], [[4615, 4615], "valid"], [[4616, 4678], "valid"], [[4679, 4679], "valid"], [[4680, 4680], "valid"], [[4681, 4681], "disallowed"], [[4682, 4685], "valid"], [[4686, 4687], "disallowed"], [[4688, 4694], "valid"], [[4695, 4695], "disallowed"], [[4696, 4696], "valid"], [[4697, 4697], "disallowed"], [[4698, 4701], "valid"], [[4702, 4703], "disallowed"], [[4704, 4742], "valid"], [[4743, 4743], "valid"], [[4744, 4744], "valid"], [[4745, 4745], "disallowed"], [[4746, 4749], "valid"], [[4750, 4751], "disallowed"], [[4752, 4782], "valid"], [[4783, 4783], "valid"], [[4784, 4784], "valid"], [[4785, 4785], "disallowed"], [[4786, 4789], "valid"], [[4790, 4791], "disallowed"], [[4792, 4798], "valid"], [[4799, 4799], "disallowed"], [[4800, 4800], "valid"], [[4801, 4801], "disallowed"], [[4802, 4805], "valid"], [[4806, 4807], "disallowed"], [[4808, 4814], "valid"], [[4815, 4815], "valid"], [[4816, 4822], "valid"], [[4823, 4823], "disallowed"], [[4824, 4846], "valid"], [[4847, 4847], "valid"], [[4848, 4878], "valid"], [[4879, 4879], "valid"], [[4880, 4880], "valid"], [[4881, 4881], "disallowed"], [[4882, 4885], "valid"], [[4886, 4887], "disallowed"], [[4888, 4894], "valid"], [[4895, 4895], "valid"], [[4896, 4934], "valid"], [[4935, 4935], "valid"], [[4936, 4954], "valid"], [[4955, 4956], "disallowed"], [[4957, 4958], "valid"], [[4959, 4959], "valid"], [[4960, 4960], "valid", [], "NV8"], [[4961, 4988], "valid", [], "NV8"], [[4989, 4991], "disallowed"], [[4992, 5007], "valid"], [[5008, 5017], "valid", [], "NV8"], [[5018, 5023], "disallowed"], [[5024, 5108], "valid"], [[5109, 5109], "valid"], [[5110, 5111], "disallowed"], [[5112, 5112], "mapped", [5104]], [[5113, 5113], "mapped", [5105]], [[5114, 5114], "mapped", [5106]], [[5115, 5115], "mapped", [5107]], [[5116, 5116], "mapped", [5108]], [[5117, 5117], "mapped", [5109]], [[5118, 5119], "disallowed"], [[5120, 5120], "valid", [], "NV8"], [[5121, 5740], "valid"], [[5741, 5742], "valid", [], "NV8"], [[5743, 5750], "valid"], [[5751, 5759], "valid"], [[5760, 5760], "disallowed"], [[5761, 5786], "valid"], [[5787, 5788], "valid", [], "NV8"], [[5789, 5791], "disallowed"], [[5792, 5866], "valid"], [[5867, 5872], "valid", [], "NV8"], [[5873, 5880], "valid"], [[5881, 5887], "disallowed"], [[5888, 5900], "valid"], [[5901, 5901], "disallowed"], [[5902, 5908], "valid"], [[5909, 5919], "disallowed"], [[5920, 5940], "valid"], [[5941, 5942], "valid", [], "NV8"], [[5943, 5951], "disallowed"], [[5952, 5971], "valid"], [[5972, 5983], "disallowed"], [[5984, 5996], "valid"], [[5997, 5997], "disallowed"], [[5998, 6e3], "valid"], [[6001, 6001], "disallowed"], [[6002, 6003], "valid"], [[6004, 6015], "disallowed"], [[6016, 6067], "valid"], [[6068, 6069], "disallowed"], [[6070, 6099], "valid"], [[6100, 6102], "valid", [], "NV8"], [[6103, 6103], "valid"], [[6104, 6107], "valid", [], "NV8"], [[6108, 6108], "valid"], [[6109, 6109], "valid"], [[6110, 6111], "disallowed"], [[6112, 6121], "valid"], [[6122, 6127], "disallowed"], [[6128, 6137], "valid", [], "NV8"], [[6138, 6143], "disallowed"], [[6144, 6149], "valid", [], "NV8"], [[6150, 6150], "disallowed"], [[6151, 6154], "valid", [], "NV8"], [[6155, 6157], "ignored"], [[6158, 6158], "disallowed"], [[6159, 6159], "disallowed"], [[6160, 6169], "valid"], [[6170, 6175], "disallowed"], [[6176, 6263], "valid"], [[6264, 6271], "disallowed"], [[6272, 6313], "valid"], [[6314, 6314], "valid"], [[6315, 6319], "disallowed"], [[6320, 6389], "valid"], [[6390, 6399], "disallowed"], [[6400, 6428], "valid"], [[6429, 6430], "valid"], [[6431, 6431], "disallowed"], [[6432, 6443], "valid"], [[6444, 6447], "disallowed"], [[6448, 6459], "valid"], [[6460, 6463], "disallowed"], [[6464, 6464], "valid", [], "NV8"], [[6465, 6467], "disallowed"], [[6468, 6469], "valid", [], "NV8"], [[6470, 6509], "valid"], [[6510, 6511], "disallowed"], [[6512, 6516], "valid"], [[6517, 6527], "disallowed"], [[6528, 6569], "valid"], [[6570, 6571], "valid"], [[6572, 6575], "disallowed"], [[6576, 6601], "valid"], [[6602, 6607], "disallowed"], [[6608, 6617], "valid"], [[6618, 6618], "valid", [], "XV8"], [[6619, 6621], "disallowed"], [[6622, 6623], "valid", [], "NV8"], [[6624, 6655], "valid", [], "NV8"], [[6656, 6683], "valid"], [[6684, 6685], "disallowed"], [[6686, 6687], "valid", [], "NV8"], [[6688, 6750], "valid"], [[6751, 6751], "disallowed"], [[6752, 6780], "valid"], [[6781, 6782], "disallowed"], [[6783, 6793], "valid"], [[6794, 6799], "disallowed"], [[6800, 6809], "valid"], [[6810, 6815], "disallowed"], [[6816, 6822], "valid", [], "NV8"], [[6823, 6823], "valid"], [[6824, 6829], "valid", [], "NV8"], [[6830, 6831], "disallowed"], [[6832, 6845], "valid"], [[6846, 6846], "valid", [], "NV8"], [[6847, 6911], "disallowed"], [[6912, 6987], "valid"], [[6988, 6991], "disallowed"], [[6992, 7001], "valid"], [[7002, 7018], "valid", [], "NV8"], [[7019, 7027], "valid"], [[7028, 7036], "valid", [], "NV8"], [[7037, 7039], "disallowed"], [[7040, 7082], "valid"], [[7083, 7085], "valid"], [[7086, 7097], "valid"], [[7098, 7103], "valid"], [[7104, 7155], "valid"], [[7156, 7163], "disallowed"], [[7164, 7167], "valid", [], "NV8"], [[7168, 7223], "valid"], [[7224, 7226], "disallowed"], [[7227, 7231], "valid", [], "NV8"], [[7232, 7241], "valid"], [[7242, 7244], "disallowed"], [[7245, 7293], "valid"], [[7294, 7295], "valid", [], "NV8"], [[7296, 7359], "disallowed"], [[7360, 7367], "valid", [], "NV8"], [[7368, 7375], "disallowed"], [[7376, 7378], "valid"], [[7379, 7379], "valid", [], "NV8"], [[7380, 7410], "valid"], [[7411, 7414], "valid"], [[7415, 7415], "disallowed"], [[7416, 7417], "valid"], [[7418, 7423], "disallowed"], [[7424, 7467], "valid"], [[7468, 7468], "mapped", [97]], [[7469, 7469], "mapped", [230]], [[7470, 7470], "mapped", [98]], [[7471, 7471], "valid"], [[7472, 7472], "mapped", [100]], [[7473, 7473], "mapped", [101]], [[7474, 7474], "mapped", [477]], [[7475, 7475], "mapped", [103]], [[7476, 7476], "mapped", [104]], [[7477, 7477], "mapped", [105]], [[7478, 7478], "mapped", [106]], [[7479, 7479], "mapped", [107]], [[7480, 7480], "mapped", [108]], [[7481, 7481], "mapped", [109]], [[7482, 7482], "mapped", [110]], [[7483, 7483], "valid"], [[7484, 7484], "mapped", [111]], [[7485, 7485], "mapped", [547]], [[7486, 7486], "mapped", [112]], [[7487, 7487], "mapped", [114]], [[7488, 7488], "mapped", [116]], [[7489, 7489], "mapped", [117]], [[7490, 7490], "mapped", [119]], [[7491, 7491], "mapped", [97]], [[7492, 7492], "mapped", [592]], [[7493, 7493], "mapped", [593]], [[7494, 7494], "mapped", [7426]], [[7495, 7495], "mapped", [98]], [[7496, 7496], "mapped", [100]], [[7497, 7497], "mapped", [101]], [[7498, 7498], "mapped", [601]], [[7499, 7499], "mapped", [603]], [[7500, 7500], "mapped", [604]], [[7501, 7501], "mapped", [103]], [[7502, 7502], "valid"], [[7503, 7503], "mapped", [107]], [[7504, 7504], "mapped", [109]], [[7505, 7505], "mapped", [331]], [[7506, 7506], "mapped", [111]], [[7507, 7507], "mapped", [596]], [[7508, 7508], "mapped", [7446]], [[7509, 7509], "mapped", [7447]], [[7510, 7510], "mapped", [112]], [[7511, 7511], "mapped", [116]], [[7512, 7512], "mapped", [117]], [[7513, 7513], "mapped", [7453]], [[7514, 7514], "mapped", [623]], [[7515, 7515], "mapped", [118]], [[7516, 7516], "mapped", [7461]], [[7517, 7517], "mapped", [946]], [[7518, 7518], "mapped", [947]], [[7519, 7519], "mapped", [948]], [[7520, 7520], "mapped", [966]], [[7521, 7521], "mapped", [967]], [[7522, 7522], "mapped", [105]], [[7523, 7523], "mapped", [114]], [[7524, 7524], "mapped", [117]], [[7525, 7525], "mapped", [118]], [[7526, 7526], "mapped", [946]], [[7527, 7527], "mapped", [947]], [[7528, 7528], "mapped", [961]], [[7529, 7529], "mapped", [966]], [[7530, 7530], "mapped", [967]], [[7531, 7531], "valid"], [[7532, 7543], "valid"], [[7544, 7544], "mapped", [1085]], [[7545, 7578], "valid"], [[7579, 7579], "mapped", [594]], [[7580, 7580], "mapped", [99]], [[7581, 7581], "mapped", [597]], [[7582, 7582], "mapped", [240]], [[7583, 7583], "mapped", [604]], [[7584, 7584], "mapped", [102]], [[7585, 7585], "mapped", [607]], [[7586, 7586], "mapped", [609]], [[7587, 7587], "mapped", [613]], [[7588, 7588], "mapped", [616]], [[7589, 7589], "mapped", [617]], [[7590, 7590], "mapped", [618]], [[7591, 7591], "mapped", [7547]], [[7592, 7592], "mapped", [669]], [[7593, 7593], "mapped", [621]], [[7594, 7594], "mapped", [7557]], [[7595, 7595], "mapped", [671]], [[7596, 7596], "mapped", [625]], [[7597, 7597], "mapped", [624]], [[7598, 7598], "mapped", [626]], [[7599, 7599], "mapped", [627]], [[7600, 7600], "mapped", [628]], [[7601, 7601], "mapped", [629]], [[7602, 7602], "mapped", [632]], [[7603, 7603], "mapped", [642]], [[7604, 7604], "mapped", [643]], [[7605, 7605], "mapped", [427]], [[7606, 7606], "mapped", [649]], [[7607, 7607], "mapped", [650]], [[7608, 7608], "mapped", [7452]], [[7609, 7609], "mapped", [651]], [[7610, 7610], "mapped", [652]], [[7611, 7611], "mapped", [122]], [[7612, 7612], "mapped", [656]], [[7613, 7613], "mapped", [657]], [[7614, 7614], "mapped", [658]], [[7615, 7615], "mapped", [952]], [[7616, 7619], "valid"], [[7620, 7626], "valid"], [[7627, 7654], "valid"], [[7655, 7669], "valid"], [[7670, 7675], "disallowed"], [[7676, 7676], "valid"], [[7677, 7677], "valid"], [[7678, 7679], "valid"], [[7680, 7680], "mapped", [7681]], [[7681, 7681], "valid"], [[7682, 7682], "mapped", [7683]], [[7683, 7683], "valid"], [[7684, 7684], "mapped", [7685]], [[7685, 7685], "valid"], [[7686, 7686], "mapped", [7687]], [[7687, 7687], "valid"], [[7688, 7688], "mapped", [7689]], [[7689, 7689], "valid"], [[7690, 7690], "mapped", [7691]], [[7691, 7691], "valid"], [[7692, 7692], "mapped", [7693]], [[7693, 7693], "valid"], [[7694, 7694], "mapped", [7695]], [[7695, 7695], "valid"], [[7696, 7696], "mapped", [7697]], [[7697, 7697], "valid"], [[7698, 7698], "mapped", [7699]], [[7699, 7699], "valid"], [[7700, 7700], "mapped", [7701]], [[7701, 7701], "valid"], [[7702, 7702], "mapped", [7703]], [[7703, 7703], "valid"], [[7704, 7704], "mapped", [7705]], [[7705, 7705], "valid"], [[7706, 7706], "mapped", [7707]], [[7707, 7707], "valid"], [[7708, 7708], "mapped", [7709]], [[7709, 7709], "valid"], [[7710, 7710], "mapped", [7711]], [[7711, 7711], "valid"], [[7712, 7712], "mapped", [7713]], [[7713, 7713], "valid"], [[7714, 7714], "mapped", [7715]], [[7715, 7715], "valid"], [[7716, 7716], "mapped", [7717]], [[7717, 7717], "valid"], [[7718, 7718], "mapped", [7719]], [[7719, 7719], "valid"], [[7720, 7720], "mapped", [7721]], [[7721, 7721], "valid"], [[7722, 7722], "mapped", [7723]], [[7723, 7723], "valid"], [[7724, 7724], "mapped", [7725]], [[7725, 7725], "valid"], [[7726, 7726], "mapped", [7727]], [[7727, 7727], "valid"], [[7728, 7728], "mapped", [7729]], [[7729, 7729], "valid"], [[7730, 7730], "mapped", [7731]], [[7731, 7731], "valid"], [[7732, 7732], "mapped", [7733]], [[7733, 7733], "valid"], [[7734, 7734], "mapped", [7735]], [[7735, 7735], "valid"], [[7736, 7736], "mapped", [7737]], [[7737, 7737], "valid"], [[7738, 7738], "mapped", [7739]], [[7739, 7739], "valid"], [[7740, 7740], "mapped", [7741]], [[7741, 7741], "valid"], [[7742, 7742], "mapped", [7743]], [[7743, 7743], "valid"], [[7744, 7744], "mapped", [7745]], [[7745, 7745], "valid"], [[7746, 7746], "mapped", [7747]], [[7747, 7747], "valid"], [[7748, 7748], "mapped", [7749]], [[7749, 7749], "valid"], [[7750, 7750], "mapped", [7751]], [[7751, 7751], "valid"], [[7752, 7752], "mapped", [7753]], [[7753, 7753], "valid"], [[7754, 7754], "mapped", [7755]], [[7755, 7755], "valid"], [[7756, 7756], "mapped", [7757]], [[7757, 7757], "valid"], [[7758, 7758], "mapped", [7759]], [[7759, 7759], "valid"], [[7760, 7760], "mapped", [7761]], [[7761, 7761], "valid"], [[7762, 7762], "mapped", [7763]], [[7763, 7763], "valid"], [[7764, 7764], "mapped", [7765]], [[7765, 7765], "valid"], [[7766, 7766], "mapped", [7767]], [[7767, 7767], "valid"], [[7768, 7768], "mapped", [7769]], [[7769, 7769], "valid"], [[7770, 7770], "mapped", [7771]], [[7771, 7771], "valid"], [[7772, 7772], "mapped", [7773]], [[7773, 7773], "valid"], [[7774, 7774], "mapped", [7775]], [[7775, 7775], "valid"], [[7776, 7776], "mapped", [7777]], [[7777, 7777], "valid"], [[7778, 7778], "mapped", [7779]], [[7779, 7779], "valid"], [[7780, 7780], "mapped", [7781]], [[7781, 7781], "valid"], [[7782, 7782], "mapped", [7783]], [[7783, 7783], "valid"], [[7784, 7784], "mapped", [7785]], [[7785, 7785], "valid"], [[7786, 7786], "mapped", [7787]], [[7787, 7787], "valid"], [[7788, 7788], "mapped", [7789]], [[7789, 7789], "valid"], [[7790, 7790], "mapped", [7791]], [[7791, 7791], "valid"], [[7792, 7792], "mapped", [7793]], [[7793, 7793], "valid"], [[7794, 7794], "mapped", [7795]], [[7795, 7795], "valid"], [[7796, 7796], "mapped", [7797]], [[7797, 7797], "valid"], [[7798, 7798], "mapped", [7799]], [[7799, 7799], "valid"], [[7800, 7800], "mapped", [7801]], [[7801, 7801], "valid"], [[7802, 7802], "mapped", [7803]], [[7803, 7803], "valid"], [[7804, 7804], "mapped", [7805]], [[7805, 7805], "valid"], [[7806, 7806], "mapped", [7807]], [[7807, 7807], "valid"], [[7808, 7808], "mapped", [7809]], [[7809, 7809], "valid"], [[7810, 7810], "mapped", [7811]], [[7811, 7811], "valid"], [[7812, 7812], "mapped", [7813]], [[7813, 7813], "valid"], [[7814, 7814], "mapped", [7815]], [[7815, 7815], "valid"], [[7816, 7816], "mapped", [7817]], [[7817, 7817], "valid"], [[7818, 7818], "mapped", [7819]], [[7819, 7819], "valid"], [[7820, 7820], "mapped", [7821]], [[7821, 7821], "valid"], [[7822, 7822], "mapped", [7823]], [[7823, 7823], "valid"], [[7824, 7824], "mapped", [7825]], [[7825, 7825], "valid"], [[7826, 7826], "mapped", [7827]], [[7827, 7827], "valid"], [[7828, 7828], "mapped", [7829]], [[7829, 7833], "valid"], [[7834, 7834], "mapped", [97, 702]], [[7835, 7835], "mapped", [7777]], [[7836, 7837], "valid"], [[7838, 7838], "mapped", [115, 115]], [[7839, 7839], "valid"], [[7840, 7840], "mapped", [7841]], [[7841, 7841], "valid"], [[7842, 7842], "mapped", [7843]], [[7843, 7843], "valid"], [[7844, 7844], "mapped", [7845]], [[7845, 7845], "valid"], [[7846, 7846], "mapped", [7847]], [[7847, 7847], "valid"], [[7848, 7848], "mapped", [7849]], [[7849, 7849], "valid"], [[7850, 7850], "mapped", [7851]], [[7851, 7851], "valid"], [[7852, 7852], "mapped", [7853]], [[7853, 7853], "valid"], [[7854, 7854], "mapped", [7855]], [[7855, 7855], "valid"], [[7856, 7856], "mapped", [7857]], [[7857, 7857], "valid"], [[7858, 7858], "mapped", [7859]], [[7859, 7859], "valid"], [[7860, 7860], "mapped", [7861]], [[7861, 7861], "valid"], [[7862, 7862], "mapped", [7863]], [[7863, 7863], "valid"], [[7864, 7864], "mapped", [7865]], [[7865, 7865], "valid"], [[7866, 7866], "mapped", [7867]], [[7867, 7867], "valid"], [[7868, 7868], "mapped", [7869]], [[7869, 7869], "valid"], [[7870, 7870], "mapped", [7871]], [[7871, 7871], "valid"], [[7872, 7872], "mapped", [7873]], [[7873, 7873], "valid"], [[7874, 7874], "mapped", [7875]], [[7875, 7875], "valid"], [[7876, 7876], "mapped", [7877]], [[7877, 7877], "valid"], [[7878, 7878], "mapped", [7879]], [[7879, 7879], "valid"], [[7880, 7880], "mapped", [7881]], [[7881, 7881], "valid"], [[7882, 7882], "mapped", [7883]], [[7883, 7883], "valid"], [[7884, 7884], "mapped", [7885]], [[7885, 7885], "valid"], [[7886, 7886], "mapped", [7887]], [[7887, 7887], "valid"], [[7888, 7888], "mapped", [7889]], [[7889, 7889], "valid"], [[7890, 7890], "mapped", [7891]], [[7891, 7891], "valid"], [[7892, 7892], "mapped", [7893]], [[7893, 7893], "valid"], [[7894, 7894], "mapped", [7895]], [[7895, 7895], "valid"], [[7896, 7896], "mapped", [7897]], [[7897, 7897], "valid"], [[7898, 7898], "mapped", [7899]], [[7899, 7899], "valid"], [[7900, 7900], "mapped", [7901]], [[7901, 7901], "valid"], [[7902, 7902], "mapped", [7903]], [[7903, 7903], "valid"], [[7904, 7904], "mapped", [7905]], [[7905, 7905], "valid"], [[7906, 7906], "mapped", [7907]], [[7907, 7907], "valid"], [[7908, 7908], "mapped", [7909]], [[7909, 7909], "valid"], [[7910, 7910], "mapped", [7911]], [[7911, 7911], "valid"], [[7912, 7912], "mapped", [7913]], [[7913, 7913], "valid"], [[7914, 7914], "mapped", [7915]], [[7915, 7915], "valid"], [[7916, 7916], "mapped", [7917]], [[7917, 7917], "valid"], [[7918, 7918], "mapped", [7919]], [[7919, 7919], "valid"], [[7920, 7920], "mapped", [7921]], [[7921, 7921], "valid"], [[7922, 7922], "mapped", [7923]], [[7923, 7923], "valid"], [[7924, 7924], "mapped", [7925]], [[7925, 7925], "valid"], [[7926, 7926], "mapped", [7927]], [[7927, 7927], "valid"], [[7928, 7928], "mapped", [7929]], [[7929, 7929], "valid"], [[7930, 7930], "mapped", [7931]], [[7931, 7931], "valid"], [[7932, 7932], "mapped", [7933]], [[7933, 7933], "valid"], [[7934, 7934], "mapped", [7935]], [[7935, 7935], "valid"], [[7936, 7943], "valid"], [[7944, 7944], "mapped", [7936]], [[7945, 7945], "mapped", [7937]], [[7946, 7946], "mapped", [7938]], [[7947, 7947], "mapped", [7939]], [[7948, 7948], "mapped", [7940]], [[7949, 7949], "mapped", [7941]], [[7950, 7950], "mapped", [7942]], [[7951, 7951], "mapped", [7943]], [[7952, 7957], "valid"], [[7958, 7959], "disallowed"], [[7960, 7960], "mapped", [7952]], [[7961, 7961], "mapped", [7953]], [[7962, 7962], "mapped", [7954]], [[7963, 7963], "mapped", [7955]], [[7964, 7964], "mapped", [7956]], [[7965, 7965], "mapped", [7957]], [[7966, 7967], "disallowed"], [[7968, 7975], "valid"], [[7976, 7976], "mapped", [7968]], [[7977, 7977], "mapped", [7969]], [[7978, 7978], "mapped", [7970]], [[7979, 7979], "mapped", [7971]], [[7980, 7980], "mapped", [7972]], [[7981, 7981], "mapped", [7973]], [[7982, 7982], "mapped", [7974]], [[7983, 7983], "mapped", [7975]], [[7984, 7991], "valid"], [[7992, 7992], "mapped", [7984]], [[7993, 7993], "mapped", [7985]], [[7994, 7994], "mapped", [7986]], [[7995, 7995], "mapped", [7987]], [[7996, 7996], "mapped", [7988]], [[7997, 7997], "mapped", [7989]], [[7998, 7998], "mapped", [7990]], [[7999, 7999], "mapped", [7991]], [[8e3, 8005], "valid"], [[8006, 8007], "disallowed"], [[8008, 8008], "mapped", [8e3]], [[8009, 8009], "mapped", [8001]], [[8010, 8010], "mapped", [8002]], [[8011, 8011], "mapped", [8003]], [[8012, 8012], "mapped", [8004]], [[8013, 8013], "mapped", [8005]], [[8014, 8015], "disallowed"], [[8016, 8023], "valid"], [[8024, 8024], "disallowed"], [[8025, 8025], "mapped", [8017]], [[8026, 8026], "disallowed"], [[8027, 8027], "mapped", [8019]], [[8028, 8028], "disallowed"], [[8029, 8029], "mapped", [8021]], [[8030, 8030], "disallowed"], [[8031, 8031], "mapped", [8023]], [[8032, 8039], "valid"], [[8040, 8040], "mapped", [8032]], [[8041, 8041], "mapped", [8033]], [[8042, 8042], "mapped", [8034]], [[8043, 8043], "mapped", [8035]], [[8044, 8044], "mapped", [8036]], [[8045, 8045], "mapped", [8037]], [[8046, 8046], "mapped", [8038]], [[8047, 8047], "mapped", [8039]], [[8048, 8048], "valid"], [[8049, 8049], "mapped", [940]], [[8050, 8050], "valid"], [[8051, 8051], "mapped", [941]], [[8052, 8052], "valid"], [[8053, 8053], "mapped", [942]], [[8054, 8054], "valid"], [[8055, 8055], "mapped", [943]], [[8056, 8056], "valid"], [[8057, 8057], "mapped", [972]], [[8058, 8058], "valid"], [[8059, 8059], "mapped", [973]], [[8060, 8060], "valid"], [[8061, 8061], "mapped", [974]], [[8062, 8063], "disallowed"], [[8064, 8064], "mapped", [7936, 953]], [[8065, 8065], "mapped", [7937, 953]], [[8066, 8066], "mapped", [7938, 953]], [[8067, 8067], "mapped", [7939, 953]], [[8068, 8068], "mapped", [7940, 953]], [[8069, 8069], "mapped", [7941, 953]], [[8070, 8070], "mapped", [7942, 953]], [[8071, 8071], "mapped", [7943, 953]], [[8072, 8072], "mapped", [7936, 953]], [[8073, 8073], "mapped", [7937, 953]], [[8074, 8074], "mapped", [7938, 953]], [[8075, 8075], "mapped", [7939, 953]], [[8076, 8076], "mapped", [7940, 953]], [[8077, 8077], "mapped", [7941, 953]], [[8078, 8078], "mapped", [7942, 953]], [[8079, 8079], "mapped", [7943, 953]], [[8080, 8080], "mapped", [7968, 953]], [[8081, 8081], "mapped", [7969, 953]], [[8082, 8082], "mapped", [7970, 953]], [[8083, 8083], "mapped", [7971, 953]], [[8084, 8084], "mapped", [7972, 953]], [[8085, 8085], "mapped", [7973, 953]], [[8086, 8086], "mapped", [7974, 953]], [[8087, 8087], "mapped", [7975, 953]], [[8088, 8088], "mapped", [7968, 953]], [[8089, 8089], "mapped", [7969, 953]], [[8090, 8090], "mapped", [7970, 953]], [[8091, 8091], "mapped", [7971, 953]], [[8092, 8092], "mapped", [7972, 953]], [[8093, 8093], "mapped", [7973, 953]], [[8094, 8094], "mapped", [7974, 953]], [[8095, 8095], "mapped", [7975, 953]], [[8096, 8096], "mapped", [8032, 953]], [[8097, 8097], "mapped", [8033, 953]], [[8098, 8098], "mapped", [8034, 953]], [[8099, 8099], "mapped", [8035, 953]], [[8100, 8100], "mapped", [8036, 953]], [[8101, 8101], "mapped", [8037, 953]], [[8102, 8102], "mapped", [8038, 953]], [[8103, 8103], "mapped", [8039, 953]], [[8104, 8104], "mapped", [8032, 953]], [[8105, 8105], "mapped", [8033, 953]], [[8106, 8106], "mapped", [8034, 953]], [[8107, 8107], "mapped", [8035, 953]], [[8108, 8108], "mapped", [8036, 953]], [[8109, 8109], "mapped", [8037, 953]], [[8110, 8110], "mapped", [8038, 953]], [[8111, 8111], "mapped", [8039, 953]], [[8112, 8113], "valid"], [[8114, 8114], "mapped", [8048, 953]], [[8115, 8115], "mapped", [945, 953]], [[8116, 8116], "mapped", [940, 953]], [[8117, 8117], "disallowed"], [[8118, 8118], "valid"], [[8119, 8119], "mapped", [8118, 953]], [[8120, 8120], "mapped", [8112]], [[8121, 8121], "mapped", [8113]], [[8122, 8122], "mapped", [8048]], [[8123, 8123], "mapped", [940]], [[8124, 8124], "mapped", [945, 953]], [[8125, 8125], "disallowed_STD3_mapped", [32, 787]], [[8126, 8126], "mapped", [953]], [[8127, 8127], "disallowed_STD3_mapped", [32, 787]], [[8128, 8128], "disallowed_STD3_mapped", [32, 834]], [[8129, 8129], "disallowed_STD3_mapped", [32, 776, 834]], [[8130, 8130], "mapped", [8052, 953]], [[8131, 8131], "mapped", [951, 953]], [[8132, 8132], "mapped", [942, 953]], [[8133, 8133], "disallowed"], [[8134, 8134], "valid"], [[8135, 8135], "mapped", [8134, 953]], [[8136, 8136], "mapped", [8050]], [[8137, 8137], "mapped", [941]], [[8138, 8138], "mapped", [8052]], [[8139, 8139], "mapped", [942]], [[8140, 8140], "mapped", [951, 953]], [[8141, 8141], "disallowed_STD3_mapped", [32, 787, 768]], [[8142, 8142], "disallowed_STD3_mapped", [32, 787, 769]], [[8143, 8143], "disallowed_STD3_mapped", [32, 787, 834]], [[8144, 8146], "valid"], [[8147, 8147], "mapped", [912]], [[8148, 8149], "disallowed"], [[8150, 8151], "valid"], [[8152, 8152], "mapped", [8144]], [[8153, 8153], "mapped", [8145]], [[8154, 8154], "mapped", [8054]], [[8155, 8155], "mapped", [943]], [[8156, 8156], "disallowed"], [[8157, 8157], "disallowed_STD3_mapped", [32, 788, 768]], [[8158, 8158], "disallowed_STD3_mapped", [32, 788, 769]], [[8159, 8159], "disallowed_STD3_mapped", [32, 788, 834]], [[8160, 8162], "valid"], [[8163, 8163], "mapped", [944]], [[8164, 8167], "valid"], [[8168, 8168], "mapped", [8160]], [[8169, 8169], "mapped", [8161]], [[8170, 8170], "mapped", [8058]], [[8171, 8171], "mapped", [973]], [[8172, 8172], "mapped", [8165]], [[8173, 8173], "disallowed_STD3_mapped", [32, 776, 768]], [[8174, 8174], "disallowed_STD3_mapped", [32, 776, 769]], [[8175, 8175], "disallowed_STD3_mapped", [96]], [[8176, 8177], "disallowed"], [[8178, 8178], "mapped", [8060, 953]], [[8179, 8179], "mapped", [969, 953]], [[8180, 8180], "mapped", [974, 953]], [[8181, 8181], "disallowed"], [[8182, 8182], "valid"], [[8183, 8183], "mapped", [8182, 953]], [[8184, 8184], "mapped", [8056]], [[8185, 8185], "mapped", [972]], [[8186, 8186], "mapped", [8060]], [[8187, 8187], "mapped", [974]], [[8188, 8188], "mapped", [969, 953]], [[8189, 8189], "disallowed_STD3_mapped", [32, 769]], [[8190, 8190], "disallowed_STD3_mapped", [32, 788]], [[8191, 8191], "disallowed"], [[8192, 8202], "disallowed_STD3_mapped", [32]], [[8203, 8203], "ignored"], [[8204, 8205], "deviation", []], [[8206, 8207], "disallowed"], [[8208, 8208], "valid", [], "NV8"], [[8209, 8209], "mapped", [8208]], [[8210, 8214], "valid", [], "NV8"], [[8215, 8215], "disallowed_STD3_mapped", [32, 819]], [[8216, 8227], "valid", [], "NV8"], [[8228, 8230], "disallowed"], [[8231, 8231], "valid", [], "NV8"], [[8232, 8238], "disallowed"], [[8239, 8239], "disallowed_STD3_mapped", [32]], [[8240, 8242], "valid", [], "NV8"], [[8243, 8243], "mapped", [8242, 8242]], [[8244, 8244], "mapped", [8242, 8242, 8242]], [[8245, 8245], "valid", [], "NV8"], [[8246, 8246], "mapped", [8245, 8245]], [[8247, 8247], "mapped", [8245, 8245, 8245]], [[8248, 8251], "valid", [], "NV8"], [[8252, 8252], "disallowed_STD3_mapped", [33, 33]], [[8253, 8253], "valid", [], "NV8"], [[8254, 8254], "disallowed_STD3_mapped", [32, 773]], [[8255, 8262], "valid", [], "NV8"], [[8263, 8263], "disallowed_STD3_mapped", [63, 63]], [[8264, 8264], "disallowed_STD3_mapped", [63, 33]], [[8265, 8265], "disallowed_STD3_mapped", [33, 63]], [[8266, 8269], "valid", [], "NV8"], [[8270, 8274], "valid", [], "NV8"], [[8275, 8276], "valid", [], "NV8"], [[8277, 8278], "valid", [], "NV8"], [[8279, 8279], "mapped", [8242, 8242, 8242, 8242]], [[8280, 8286], "valid", [], "NV8"], [[8287, 8287], "disallowed_STD3_mapped", [32]], [[8288, 8288], "ignored"], [[8289, 8291], "disallowed"], [[8292, 8292], "ignored"], [[8293, 8293], "disallowed"], [[8294, 8297], "disallowed"], [[8298, 8303], "disallowed"], [[8304, 8304], "mapped", [48]], [[8305, 8305], "mapped", [105]], [[8306, 8307], "disallowed"], [[8308, 8308], "mapped", [52]], [[8309, 8309], "mapped", [53]], [[8310, 8310], "mapped", [54]], [[8311, 8311], "mapped", [55]], [[8312, 8312], "mapped", [56]], [[8313, 8313], "mapped", [57]], [[8314, 8314], "disallowed_STD3_mapped", [43]], [[8315, 8315], "mapped", [8722]], [[8316, 8316], "disallowed_STD3_mapped", [61]], [[8317, 8317], "disallowed_STD3_mapped", [40]], [[8318, 8318], "disallowed_STD3_mapped", [41]], [[8319, 8319], "mapped", [110]], [[8320, 8320], "mapped", [48]], [[8321, 8321], "mapped", [49]], [[8322, 8322], "mapped", [50]], [[8323, 8323], "mapped", [51]], [[8324, 8324], "mapped", [52]], [[8325, 8325], "mapped", [53]], [[8326, 8326], "mapped", [54]], [[8327, 8327], "mapped", [55]], [[8328, 8328], "mapped", [56]], [[8329, 8329], "mapped", [57]], [[8330, 8330], "disallowed_STD3_mapped", [43]], [[8331, 8331], "mapped", [8722]], [[8332, 8332], "disallowed_STD3_mapped", [61]], [[8333, 8333], "disallowed_STD3_mapped", [40]], [[8334, 8334], "disallowed_STD3_mapped", [41]], [[8335, 8335], "disallowed"], [[8336, 8336], "mapped", [97]], [[8337, 8337], "mapped", [101]], [[8338, 8338], "mapped", [111]], [[8339, 8339], "mapped", [120]], [[8340, 8340], "mapped", [601]], [[8341, 8341], "mapped", [104]], [[8342, 8342], "mapped", [107]], [[8343, 8343], "mapped", [108]], [[8344, 8344], "mapped", [109]], [[8345, 8345], "mapped", [110]], [[8346, 8346], "mapped", [112]], [[8347, 8347], "mapped", [115]], [[8348, 8348], "mapped", [116]], [[8349, 8351], "disallowed"], [[8352, 8359], "valid", [], "NV8"], [[8360, 8360], "mapped", [114, 115]], [[8361, 8362], "valid", [], "NV8"], [[8363, 8363], "valid", [], "NV8"], [[8364, 8364], "valid", [], "NV8"], [[8365, 8367], "valid", [], "NV8"], [[8368, 8369], "valid", [], "NV8"], [[8370, 8373], "valid", [], "NV8"], [[8374, 8376], "valid", [], "NV8"], [[8377, 8377], "valid", [], "NV8"], [[8378, 8378], "valid", [], "NV8"], [[8379, 8381], "valid", [], "NV8"], [[8382, 8382], "valid", [], "NV8"], [[8383, 8399], "disallowed"], [[8400, 8417], "valid", [], "NV8"], [[8418, 8419], "valid", [], "NV8"], [[8420, 8426], "valid", [], "NV8"], [[8427, 8427], "valid", [], "NV8"], [[8428, 8431], "valid", [], "NV8"], [[8432, 8432], "valid", [], "NV8"], [[8433, 8447], "disallowed"], [[8448, 8448], "disallowed_STD3_mapped", [97, 47, 99]], [[8449, 8449], "disallowed_STD3_mapped", [97, 47, 115]], [[8450, 8450], "mapped", [99]], [[8451, 8451], "mapped", [176, 99]], [[8452, 8452], "valid", [], "NV8"], [[8453, 8453], "disallowed_STD3_mapped", [99, 47, 111]], [[8454, 8454], "disallowed_STD3_mapped", [99, 47, 117]], [[8455, 8455], "mapped", [603]], [[8456, 8456], "valid", [], "NV8"], [[8457, 8457], "mapped", [176, 102]], [[8458, 8458], "mapped", [103]], [[8459, 8462], "mapped", [104]], [[8463, 8463], "mapped", [295]], [[8464, 8465], "mapped", [105]], [[8466, 8467], "mapped", [108]], [[8468, 8468], "valid", [], "NV8"], [[8469, 8469], "mapped", [110]], [[8470, 8470], "mapped", [110, 111]], [[8471, 8472], "valid", [], "NV8"], [[8473, 8473], "mapped", [112]], [[8474, 8474], "mapped", [113]], [[8475, 8477], "mapped", [114]], [[8478, 8479], "valid", [], "NV8"], [[8480, 8480], "mapped", [115, 109]], [[8481, 8481], "mapped", [116, 101, 108]], [[8482, 8482], "mapped", [116, 109]], [[8483, 8483], "valid", [], "NV8"], [[8484, 8484], "mapped", [122]], [[8485, 8485], "valid", [], "NV8"], [[8486, 8486], "mapped", [969]], [[8487, 8487], "valid", [], "NV8"], [[8488, 8488], "mapped", [122]], [[8489, 8489], "valid", [], "NV8"], [[8490, 8490], "mapped", [107]], [[8491, 8491], "mapped", [229]], [[8492, 8492], "mapped", [98]], [[8493, 8493], "mapped", [99]], [[8494, 8494], "valid", [], "NV8"], [[8495, 8496], "mapped", [101]], [[8497, 8497], "mapped", [102]], [[8498, 8498], "disallowed"], [[8499, 8499], "mapped", [109]], [[8500, 8500], "mapped", [111]], [[8501, 8501], "mapped", [1488]], [[8502, 8502], "mapped", [1489]], [[8503, 8503], "mapped", [1490]], [[8504, 8504], "mapped", [1491]], [[8505, 8505], "mapped", [105]], [[8506, 8506], "valid", [], "NV8"], [[8507, 8507], "mapped", [102, 97, 120]], [[8508, 8508], "mapped", [960]], [[8509, 8510], "mapped", [947]], [[8511, 8511], "mapped", [960]], [[8512, 8512], "mapped", [8721]], [[8513, 8516], "valid", [], "NV8"], [[8517, 8518], "mapped", [100]], [[8519, 8519], "mapped", [101]], [[8520, 8520], "mapped", [105]], [[8521, 8521], "mapped", [106]], [[8522, 8523], "valid", [], "NV8"], [[8524, 8524], "valid", [], "NV8"], [[8525, 8525], "valid", [], "NV8"], [[8526, 8526], "valid"], [[8527, 8527], "valid", [], "NV8"], [[8528, 8528], "mapped", [49, 8260, 55]], [[8529, 8529], "mapped", [49, 8260, 57]], [[8530, 8530], "mapped", [49, 8260, 49, 48]], [[8531, 8531], "mapped", [49, 8260, 51]], [[8532, 8532], "mapped", [50, 8260, 51]], [[8533, 8533], "mapped", [49, 8260, 53]], [[8534, 8534], "mapped", [50, 8260, 53]], [[8535, 8535], "mapped", [51, 8260, 53]], [[8536, 8536], "mapped", [52, 8260, 53]], [[8537, 8537], "mapped", [49, 8260, 54]], [[8538, 8538], "mapped", [53, 8260, 54]], [[8539, 8539], "mapped", [49, 8260, 56]], [[8540, 8540], "mapped", [51, 8260, 56]], [[8541, 8541], "mapped", [53, 8260, 56]], [[8542, 8542], "mapped", [55, 8260, 56]], [[8543, 8543], "mapped", [49, 8260]], [[8544, 8544], "mapped", [105]], [[8545, 8545], "mapped", [105, 105]], [[8546, 8546], "mapped", [105, 105, 105]], [[8547, 8547], "mapped", [105, 118]], [[8548, 8548], "mapped", [118]], [[8549, 8549], "mapped", [118, 105]], [[8550, 8550], "mapped", [118, 105, 105]], [[8551, 8551], "mapped", [118, 105, 105, 105]], [[8552, 8552], "mapped", [105, 120]], [[8553, 8553], "mapped", [120]], [[8554, 8554], "mapped", [120, 105]], [[8555, 8555], "mapped", [120, 105, 105]], [[8556, 8556], "mapped", [108]], [[8557, 8557], "mapped", [99]], [[8558, 8558], "mapped", [100]], [[8559, 8559], "mapped", [109]], [[8560, 8560], "mapped", [105]], [[8561, 8561], "mapped", [105, 105]], [[8562, 8562], "mapped", [105, 105, 105]], [[8563, 8563], "mapped", [105, 118]], [[8564, 8564], "mapped", [118]], [[8565, 8565], "mapped", [118, 105]], [[8566, 8566], "mapped", [118, 105, 105]], [[8567, 8567], "mapped", [118, 105, 105, 105]], [[8568, 8568], "mapped", [105, 120]], [[8569, 8569], "mapped", [120]], [[8570, 8570], "mapped", [120, 105]], [[8571, 8571], "mapped", [120, 105, 105]], [[8572, 8572], "mapped", [108]], [[8573, 8573], "mapped", [99]], [[8574, 8574], "mapped", [100]], [[8575, 8575], "mapped", [109]], [[8576, 8578], "valid", [], "NV8"], [[8579, 8579], "disallowed"], [[8580, 8580], "valid"], [[8581, 8584], "valid", [], "NV8"], [[8585, 8585], "mapped", [48, 8260, 51]], [[8586, 8587], "valid", [], "NV8"], [[8588, 8591], "disallowed"], [[8592, 8682], "valid", [], "NV8"], [[8683, 8691], "valid", [], "NV8"], [[8692, 8703], "valid", [], "NV8"], [[8704, 8747], "valid", [], "NV8"], [[8748, 8748], "mapped", [8747, 8747]], [[8749, 8749], "mapped", [8747, 8747, 8747]], [[8750, 8750], "valid", [], "NV8"], [[8751, 8751], "mapped", [8750, 8750]], [[8752, 8752], "mapped", [8750, 8750, 8750]], [[8753, 8799], "valid", [], "NV8"], [[8800, 8800], "disallowed_STD3_valid"], [[8801, 8813], "valid", [], "NV8"], [[8814, 8815], "disallowed_STD3_valid"], [[8816, 8945], "valid", [], "NV8"], [[8946, 8959], "valid", [], "NV8"], [[8960, 8960], "valid", [], "NV8"], [[8961, 8961], "valid", [], "NV8"], [[8962, 9e3], "valid", [], "NV8"], [[9001, 9001], "mapped", [12296]], [[9002, 9002], "mapped", [12297]], [[9003, 9082], "valid", [], "NV8"], [[9083, 9083], "valid", [], "NV8"], [[9084, 9084], "valid", [], "NV8"], [[9085, 9114], "valid", [], "NV8"], [[9115, 9166], "valid", [], "NV8"], [[9167, 9168], "valid", [], "NV8"], [[9169, 9179], "valid", [], "NV8"], [[9180, 9191], "valid", [], "NV8"], [[9192, 9192], "valid", [], "NV8"], [[9193, 9203], "valid", [], "NV8"], [[9204, 9210], "valid", [], "NV8"], [[9211, 9215], "disallowed"], [[9216, 9252], "valid", [], "NV8"], [[9253, 9254], "valid", [], "NV8"], [[9255, 9279], "disallowed"], [[9280, 9290], "valid", [], "NV8"], [[9291, 9311], "disallowed"], [[9312, 9312], "mapped", [49]], [[9313, 9313], "mapped", [50]], [[9314, 9314], "mapped", [51]], [[9315, 9315], "mapped", [52]], [[9316, 9316], "mapped", [53]], [[9317, 9317], "mapped", [54]], [[9318, 9318], "mapped", [55]], [[9319, 9319], "mapped", [56]], [[9320, 9320], "mapped", [57]], [[9321, 9321], "mapped", [49, 48]], [[9322, 9322], "mapped", [49, 49]], [[9323, 9323], "mapped", [49, 50]], [[9324, 9324], "mapped", [49, 51]], [[9325, 9325], "mapped", [49, 52]], [[9326, 9326], "mapped", [49, 53]], [[9327, 9327], "mapped", [49, 54]], [[9328, 9328], "mapped", [49, 55]], [[9329, 9329], "mapped", [49, 56]], [[9330, 9330], "mapped", [49, 57]], [[9331, 9331], "mapped", [50, 48]], [[9332, 9332], "disallowed_STD3_mapped", [40, 49, 41]], [[9333, 9333], "disallowed_STD3_mapped", [40, 50, 41]], [[9334, 9334], "disallowed_STD3_mapped", [40, 51, 41]], [[9335, 9335], "disallowed_STD3_mapped", [40, 52, 41]], [[9336, 9336], "disallowed_STD3_mapped", [40, 53, 41]], [[9337, 9337], "disallowed_STD3_mapped", [40, 54, 41]], [[9338, 9338], "disallowed_STD3_mapped", [40, 55, 41]], [[9339, 9339], "disallowed_STD3_mapped", [40, 56, 41]], [[9340, 9340], "disallowed_STD3_mapped", [40, 57, 41]], [[9341, 9341], "disallowed_STD3_mapped", [40, 49, 48, 41]], [[9342, 9342], "disallowed_STD3_mapped", [40, 49, 49, 41]], [[9343, 9343], "disallowed_STD3_mapped", [40, 49, 50, 41]], [[9344, 9344], "disallowed_STD3_mapped", [40, 49, 51, 41]], [[9345, 9345], "disallowed_STD3_mapped", [40, 49, 52, 41]], [[9346, 9346], "disallowed_STD3_mapped", [40, 49, 53, 41]], [[9347, 9347], "disallowed_STD3_mapped", [40, 49, 54, 41]], [[9348, 9348], "disallowed_STD3_mapped", [40, 49, 55, 41]], [[9349, 9349], "disallowed_STD3_mapped", [40, 49, 56, 41]], [[9350, 9350], "disallowed_STD3_mapped", [40, 49, 57, 41]], [[9351, 9351], "disallowed_STD3_mapped", [40, 50, 48, 41]], [[9352, 9371], "disallowed"], [[9372, 9372], "disallowed_STD3_mapped", [40, 97, 41]], [[9373, 9373], "disallowed_STD3_mapped", [40, 98, 41]], [[9374, 9374], "disallowed_STD3_mapped", [40, 99, 41]], [[9375, 9375], "disallowed_STD3_mapped", [40, 100, 41]], [[9376, 9376], "disallowed_STD3_mapped", [40, 101, 41]], [[9377, 9377], "disallowed_STD3_mapped", [40, 102, 41]], [[9378, 9378], "disallowed_STD3_mapped", [40, 103, 41]], [[9379, 9379], "disallowed_STD3_mapped", [40, 104, 41]], [[9380, 9380], "disallowed_STD3_mapped", [40, 105, 41]], [[9381, 9381], "disallowed_STD3_mapped", [40, 106, 41]], [[9382, 9382], "disallowed_STD3_mapped", [40, 107, 41]], [[9383, 9383], "disallowed_STD3_mapped", [40, 108, 41]], [[9384, 9384], "disallowed_STD3_mapped", [40, 109, 41]], [[9385, 9385], "disallowed_STD3_mapped", [40, 110, 41]], [[9386, 9386], "disallowed_STD3_mapped", [40, 111, 41]], [[9387, 9387], "disallowed_STD3_mapped", [40, 112, 41]], [[9388, 9388], "disallowed_STD3_mapped", [40, 113, 41]], [[9389, 9389], "disallowed_STD3_mapped", [40, 114, 41]], [[9390, 9390], "disallowed_STD3_mapped", [40, 115, 41]], [[9391, 9391], "disallowed_STD3_mapped", [40, 116, 41]], [[9392, 9392], "disallowed_STD3_mapped", [40, 117, 41]], [[9393, 9393], "disallowed_STD3_mapped", [40, 118, 41]], [[9394, 9394], "disallowed_STD3_mapped", [40, 119, 41]], [[9395, 9395], "disallowed_STD3_mapped", [40, 120, 41]], [[9396, 9396], "disallowed_STD3_mapped", [40, 121, 41]], [[9397, 9397], "disallowed_STD3_mapped", [40, 122, 41]], [[9398, 9398], "mapped", [97]], [[9399, 9399], "mapped", [98]], [[9400, 9400], "mapped", [99]], [[9401, 9401], "mapped", [100]], [[9402, 9402], "mapped", [101]], [[9403, 9403], "mapped", [102]], [[9404, 9404], "mapped", [103]], [[9405, 9405], "mapped", [104]], [[9406, 9406], "mapped", [105]], [[9407, 9407], "mapped", [106]], [[9408, 9408], "mapped", [107]], [[9409, 9409], "mapped", [108]], [[9410, 9410], "mapped", [109]], [[9411, 9411], "mapped", [110]], [[9412, 9412], "mapped", [111]], [[9413, 9413], "mapped", [112]], [[9414, 9414], "mapped", [113]], [[9415, 9415], "mapped", [114]], [[9416, 9416], "mapped", [115]], [[9417, 9417], "mapped", [116]], [[9418, 9418], "mapped", [117]], [[9419, 9419], "mapped", [118]], [[9420, 9420], "mapped", [119]], [[9421, 9421], "mapped", [120]], [[9422, 9422], "mapped", [121]], [[9423, 9423], "mapped", [122]], [[9424, 9424], "mapped", [97]], [[9425, 9425], "mapped", [98]], [[9426, 9426], "mapped", [99]], [[9427, 9427], "mapped", [100]], [[9428, 9428], "mapped", [101]], [[9429, 9429], "mapped", [102]], [[9430, 9430], "mapped", [103]], [[9431, 9431], "mapped", [104]], [[9432, 9432], "mapped", [105]], [[9433, 9433], "mapped", [106]], [[9434, 9434], "mapped", [107]], [[9435, 9435], "mapped", [108]], [[9436, 9436], "mapped", [109]], [[9437, 9437], "mapped", [110]], [[9438, 9438], "mapped", [111]], [[9439, 9439], "mapped", [112]], [[9440, 9440], "mapped", [113]], [[9441, 9441], "mapped", [114]], [[9442, 9442], "mapped", [115]], [[9443, 9443], "mapped", [116]], [[9444, 9444], "mapped", [117]], [[9445, 9445], "mapped", [118]], [[9446, 9446], "mapped", [119]], [[9447, 9447], "mapped", [120]], [[9448, 9448], "mapped", [121]], [[9449, 9449], "mapped", [122]], [[9450, 9450], "mapped", [48]], [[9451, 9470], "valid", [], "NV8"], [[9471, 9471], "valid", [], "NV8"], [[9472, 9621], "valid", [], "NV8"], [[9622, 9631], "valid", [], "NV8"], [[9632, 9711], "valid", [], "NV8"], [[9712, 9719], "valid", [], "NV8"], [[9720, 9727], "valid", [], "NV8"], [[9728, 9747], "valid", [], "NV8"], [[9748, 9749], "valid", [], "NV8"], [[9750, 9751], "valid", [], "NV8"], [[9752, 9752], "valid", [], "NV8"], [[9753, 9753], "valid", [], "NV8"], [[9754, 9839], "valid", [], "NV8"], [[9840, 9841], "valid", [], "NV8"], [[9842, 9853], "valid", [], "NV8"], [[9854, 9855], "valid", [], "NV8"], [[9856, 9865], "valid", [], "NV8"], [[9866, 9873], "valid", [], "NV8"], [[9874, 9884], "valid", [], "NV8"], [[9885, 9885], "valid", [], "NV8"], [[9886, 9887], "valid", [], "NV8"], [[9888, 9889], "valid", [], "NV8"], [[9890, 9905], "valid", [], "NV8"], [[9906, 9906], "valid", [], "NV8"], [[9907, 9916], "valid", [], "NV8"], [[9917, 9919], "valid", [], "NV8"], [[9920, 9923], "valid", [], "NV8"], [[9924, 9933], "valid", [], "NV8"], [[9934, 9934], "valid", [], "NV8"], [[9935, 9953], "valid", [], "NV8"], [[9954, 9954], "valid", [], "NV8"], [[9955, 9955], "valid", [], "NV8"], [[9956, 9959], "valid", [], "NV8"], [[9960, 9983], "valid", [], "NV8"], [[9984, 9984], "valid", [], "NV8"], [[9985, 9988], "valid", [], "NV8"], [[9989, 9989], "valid", [], "NV8"], [[9990, 9993], "valid", [], "NV8"], [[9994, 9995], "valid", [], "NV8"], [[9996, 10023], "valid", [], "NV8"], [[10024, 10024], "valid", [], "NV8"], [[10025, 10059], "valid", [], "NV8"], [[10060, 10060], "valid", [], "NV8"], [[10061, 10061], "valid", [], "NV8"], [[10062, 10062], "valid", [], "NV8"], [[10063, 10066], "valid", [], "NV8"], [[10067, 10069], "valid", [], "NV8"], [[10070, 10070], "valid", [], "NV8"], [[10071, 10071], "valid", [], "NV8"], [[10072, 10078], "valid", [], "NV8"], [[10079, 10080], "valid", [], "NV8"], [[10081, 10087], "valid", [], "NV8"], [[10088, 10101], "valid", [], "NV8"], [[10102, 10132], "valid", [], "NV8"], [[10133, 10135], "valid", [], "NV8"], [[10136, 10159], "valid", [], "NV8"], [[10160, 10160], "valid", [], "NV8"], [[10161, 10174], "valid", [], "NV8"], [[10175, 10175], "valid", [], "NV8"], [[10176, 10182], "valid", [], "NV8"], [[10183, 10186], "valid", [], "NV8"], [[10187, 10187], "valid", [], "NV8"], [[10188, 10188], "valid", [], "NV8"], [[10189, 10189], "valid", [], "NV8"], [[10190, 10191], "valid", [], "NV8"], [[10192, 10219], "valid", [], "NV8"], [[10220, 10223], "valid", [], "NV8"], [[10224, 10239], "valid", [], "NV8"], [[10240, 10495], "valid", [], "NV8"], [[10496, 10763], "valid", [], "NV8"], [[10764, 10764], "mapped", [8747, 8747, 8747, 8747]], [[10765, 10867], "valid", [], "NV8"], [[10868, 10868], "disallowed_STD3_mapped", [58, 58, 61]], [[10869, 10869], "disallowed_STD3_mapped", [61, 61]], [[10870, 10870], "disallowed_STD3_mapped", [61, 61, 61]], [[10871, 10971], "valid", [], "NV8"], [[10972, 10972], "mapped", [10973, 824]], [[10973, 11007], "valid", [], "NV8"], [[11008, 11021], "valid", [], "NV8"], [[11022, 11027], "valid", [], "NV8"], [[11028, 11034], "valid", [], "NV8"], [[11035, 11039], "valid", [], "NV8"], [[11040, 11043], "valid", [], "NV8"], [[11044, 11084], "valid", [], "NV8"], [[11085, 11087], "valid", [], "NV8"], [[11088, 11092], "valid", [], "NV8"], [[11093, 11097], "valid", [], "NV8"], [[11098, 11123], "valid", [], "NV8"], [[11124, 11125], "disallowed"], [[11126, 11157], "valid", [], "NV8"], [[11158, 11159], "disallowed"], [[11160, 11193], "valid", [], "NV8"], [[11194, 11196], "disallowed"], [[11197, 11208], "valid", [], "NV8"], [[11209, 11209], "disallowed"], [[11210, 11217], "valid", [], "NV8"], [[11218, 11243], "disallowed"], [[11244, 11247], "valid", [], "NV8"], [[11248, 11263], "disallowed"], [[11264, 11264], "mapped", [11312]], [[11265, 11265], "mapped", [11313]], [[11266, 11266], "mapped", [11314]], [[11267, 11267], "mapped", [11315]], [[11268, 11268], "mapped", [11316]], [[11269, 11269], "mapped", [11317]], [[11270, 11270], "mapped", [11318]], [[11271, 11271], "mapped", [11319]], [[11272, 11272], "mapped", [11320]], [[11273, 11273], "mapped", [11321]], [[11274, 11274], "mapped", [11322]], [[11275, 11275], "mapped", [11323]], [[11276, 11276], "mapped", [11324]], [[11277, 11277], "mapped", [11325]], [[11278, 11278], "mapped", [11326]], [[11279, 11279], "mapped", [11327]], [[11280, 11280], "mapped", [11328]], [[11281, 11281], "mapped", [11329]], [[11282, 11282], "mapped", [11330]], [[11283, 11283], "mapped", [11331]], [[11284, 11284], "mapped", [11332]], [[11285, 11285], "mapped", [11333]], [[11286, 11286], "mapped", [11334]], [[11287, 11287], "mapped", [11335]], [[11288, 11288], "mapped", [11336]], [[11289, 11289], "mapped", [11337]], [[11290, 11290], "mapped", [11338]], [[11291, 11291], "mapped", [11339]], [[11292, 11292], "mapped", [11340]], [[11293, 11293], "mapped", [11341]], [[11294, 11294], "mapped", [11342]], [[11295, 11295], "mapped", [11343]], [[11296, 11296], "mapped", [11344]], [[11297, 11297], "mapped", [11345]], [[11298, 11298], "mapped", [11346]], [[11299, 11299], "mapped", [11347]], [[11300, 11300], "mapped", [11348]], [[11301, 11301], "mapped", [11349]], [[11302, 11302], "mapped", [11350]], [[11303, 11303], "mapped", [11351]], [[11304, 11304], "mapped", [11352]], [[11305, 11305], "mapped", [11353]], [[11306, 11306], "mapped", [11354]], [[11307, 11307], "mapped", [11355]], [[11308, 11308], "mapped", [11356]], [[11309, 11309], "mapped", [11357]], [[11310, 11310], "mapped", [11358]], [[11311, 11311], "disallowed"], [[11312, 11358], "valid"], [[11359, 11359], "disallowed"], [[11360, 11360], "mapped", [11361]], [[11361, 11361], "valid"], [[11362, 11362], "mapped", [619]], [[11363, 11363], "mapped", [7549]], [[11364, 11364], "mapped", [637]], [[11365, 11366], "valid"], [[11367, 11367], "mapped", [11368]], [[11368, 11368], "valid"], [[11369, 11369], "mapped", [11370]], [[11370, 11370], "valid"], [[11371, 11371], "mapped", [11372]], [[11372, 11372], "valid"], [[11373, 11373], "mapped", [593]], [[11374, 11374], "mapped", [625]], [[11375, 11375], "mapped", [592]], [[11376, 11376], "mapped", [594]], [[11377, 11377], "valid"], [[11378, 11378], "mapped", [11379]], [[11379, 11379], "valid"], [[11380, 11380], "valid"], [[11381, 11381], "mapped", [11382]], [[11382, 11383], "valid"], [[11384, 11387], "valid"], [[11388, 11388], "mapped", [106]], [[11389, 11389], "mapped", [118]], [[11390, 11390], "mapped", [575]], [[11391, 11391], "mapped", [576]], [[11392, 11392], "mapped", [11393]], [[11393, 11393], "valid"], [[11394, 11394], "mapped", [11395]], [[11395, 11395], "valid"], [[11396, 11396], "mapped", [11397]], [[11397, 11397], "valid"], [[11398, 11398], "mapped", [11399]], [[11399, 11399], "valid"], [[11400, 11400], "mapped", [11401]], [[11401, 11401], "valid"], [[11402, 11402], "mapped", [11403]], [[11403, 11403], "valid"], [[11404, 11404], "mapped", [11405]], [[11405, 11405], "valid"], [[11406, 11406], "mapped", [11407]], [[11407, 11407], "valid"], [[11408, 11408], "mapped", [11409]], [[11409, 11409], "valid"], [[11410, 11410], "mapped", [11411]], [[11411, 11411], "valid"], [[11412, 11412], "mapped", [11413]], [[11413, 11413], "valid"], [[11414, 11414], "mapped", [11415]], [[11415, 11415], "valid"], [[11416, 11416], "mapped", [11417]], [[11417, 11417], "valid"], [[11418, 11418], "mapped", [11419]], [[11419, 11419], "valid"], [[11420, 11420], "mapped", [11421]], [[11421, 11421], "valid"], [[11422, 11422], "mapped", [11423]], [[11423, 11423], "valid"], [[11424, 11424], "mapped", [11425]], [[11425, 11425], "valid"], [[11426, 11426], "mapped", [11427]], [[11427, 11427], "valid"], [[11428, 11428], "mapped", [11429]], [[11429, 11429], "valid"], [[11430, 11430], "mapped", [11431]], [[11431, 11431], "valid"], [[11432, 11432], "mapped", [11433]], [[11433, 11433], "valid"], [[11434, 11434], "mapped", [11435]], [[11435, 11435], "valid"], [[11436, 11436], "mapped", [11437]], [[11437, 11437], "valid"], [[11438, 11438], "mapped", [11439]], [[11439, 11439], "valid"], [[11440, 11440], "mapped", [11441]], [[11441, 11441], "valid"], [[11442, 11442], "mapped", [11443]], [[11443, 11443], "valid"], [[11444, 11444], "mapped", [11445]], [[11445, 11445], "valid"], [[11446, 11446], "mapped", [11447]], [[11447, 11447], "valid"], [[11448, 11448], "mapped", [11449]], [[11449, 11449], "valid"], [[11450, 11450], "mapped", [11451]], [[11451, 11451], "valid"], [[11452, 11452], "mapped", [11453]], [[11453, 11453], "valid"], [[11454, 11454], "mapped", [11455]], [[11455, 11455], "valid"], [[11456, 11456], "mapped", [11457]], [[11457, 11457], "valid"], [[11458, 11458], "mapped", [11459]], [[11459, 11459], "valid"], [[11460, 11460], "mapped", [11461]], [[11461, 11461], "valid"], [[11462, 11462], "mapped", [11463]], [[11463, 11463], "valid"], [[11464, 11464], "mapped", [11465]], [[11465, 11465], "valid"], [[11466, 11466], "mapped", [11467]], [[11467, 11467], "valid"], [[11468, 11468], "mapped", [11469]], [[11469, 11469], "valid"], [[11470, 11470], "mapped", [11471]], [[11471, 11471], "valid"], [[11472, 11472], "mapped", [11473]], [[11473, 11473], "valid"], [[11474, 11474], "mapped", [11475]], [[11475, 11475], "valid"], [[11476, 11476], "mapped", [11477]], [[11477, 11477], "valid"], [[11478, 11478], "mapped", [11479]], [[11479, 11479], "valid"], [[11480, 11480], "mapped", [11481]], [[11481, 11481], "valid"], [[11482, 11482], "mapped", [11483]], [[11483, 11483], "valid"], [[11484, 11484], "mapped", [11485]], [[11485, 11485], "valid"], [[11486, 11486], "mapped", [11487]], [[11487, 11487], "valid"], [[11488, 11488], "mapped", [11489]], [[11489, 11489], "valid"], [[11490, 11490], "mapped", [11491]], [[11491, 11492], "valid"], [[11493, 11498], "valid", [], "NV8"], [[11499, 11499], "mapped", [11500]], [[11500, 11500], "valid"], [[11501, 11501], "mapped", [11502]], [[11502, 11505], "valid"], [[11506, 11506], "mapped", [11507]], [[11507, 11507], "valid"], [[11508, 11512], "disallowed"], [[11513, 11519], "valid", [], "NV8"], [[11520, 11557], "valid"], [[11558, 11558], "disallowed"], [[11559, 11559], "valid"], [[11560, 11564], "disallowed"], [[11565, 11565], "valid"], [[11566, 11567], "disallowed"], [[11568, 11621], "valid"], [[11622, 11623], "valid"], [[11624, 11630], "disallowed"], [[11631, 11631], "mapped", [11617]], [[11632, 11632], "valid", [], "NV8"], [[11633, 11646], "disallowed"], [[11647, 11647], "valid"], [[11648, 11670], "valid"], [[11671, 11679], "disallowed"], [[11680, 11686], "valid"], [[11687, 11687], "disallowed"], [[11688, 11694], "valid"], [[11695, 11695], "disallowed"], [[11696, 11702], "valid"], [[11703, 11703], "disallowed"], [[11704, 11710], "valid"], [[11711, 11711], "disallowed"], [[11712, 11718], "valid"], [[11719, 11719], "disallowed"], [[11720, 11726], "valid"], [[11727, 11727], "disallowed"], [[11728, 11734], "valid"], [[11735, 11735], "disallowed"], [[11736, 11742], "valid"], [[11743, 11743], "disallowed"], [[11744, 11775], "valid"], [[11776, 11799], "valid", [], "NV8"], [[11800, 11803], "valid", [], "NV8"], [[11804, 11805], "valid", [], "NV8"], [[11806, 11822], "valid", [], "NV8"], [[11823, 11823], "valid"], [[11824, 11824], "valid", [], "NV8"], [[11825, 11825], "valid", [], "NV8"], [[11826, 11835], "valid", [], "NV8"], [[11836, 11842], "valid", [], "NV8"], [[11843, 11903], "disallowed"], [[11904, 11929], "valid", [], "NV8"], [[11930, 11930], "disallowed"], [[11931, 11934], "valid", [], "NV8"], [[11935, 11935], "mapped", [27597]], [[11936, 12018], "valid", [], "NV8"], [[12019, 12019], "mapped", [40863]], [[12020, 12031], "disallowed"], [[12032, 12032], "mapped", [19968]], [[12033, 12033], "mapped", [20008]], [[12034, 12034], "mapped", [20022]], [[12035, 12035], "mapped", [20031]], [[12036, 12036], "mapped", [20057]], [[12037, 12037], "mapped", [20101]], [[12038, 12038], "mapped", [20108]], [[12039, 12039], "mapped", [20128]], [[12040, 12040], "mapped", [20154]], [[12041, 12041], "mapped", [20799]], [[12042, 12042], "mapped", [20837]], [[12043, 12043], "mapped", [20843]], [[12044, 12044], "mapped", [20866]], [[12045, 12045], "mapped", [20886]], [[12046, 12046], "mapped", [20907]], [[12047, 12047], "mapped", [20960]], [[12048, 12048], "mapped", [20981]], [[12049, 12049], "mapped", [20992]], [[12050, 12050], "mapped", [21147]], [[12051, 12051], "mapped", [21241]], [[12052, 12052], "mapped", [21269]], [[12053, 12053], "mapped", [21274]], [[12054, 12054], "mapped", [21304]], [[12055, 12055], "mapped", [21313]], [[12056, 12056], "mapped", [21340]], [[12057, 12057], "mapped", [21353]], [[12058, 12058], "mapped", [21378]], [[12059, 12059], "mapped", [21430]], [[12060, 12060], "mapped", [21448]], [[12061, 12061], "mapped", [21475]], [[12062, 12062], "mapped", [22231]], [[12063, 12063], "mapped", [22303]], [[12064, 12064], "mapped", [22763]], [[12065, 12065], "mapped", [22786]], [[12066, 12066], "mapped", [22794]], [[12067, 12067], "mapped", [22805]], [[12068, 12068], "mapped", [22823]], [[12069, 12069], "mapped", [22899]], [[12070, 12070], "mapped", [23376]], [[12071, 12071], "mapped", [23424]], [[12072, 12072], "mapped", [23544]], [[12073, 12073], "mapped", [23567]], [[12074, 12074], "mapped", [23586]], [[12075, 12075], "mapped", [23608]], [[12076, 12076], "mapped", [23662]], [[12077, 12077], "mapped", [23665]], [[12078, 12078], "mapped", [24027]], [[12079, 12079], "mapped", [24037]], [[12080, 12080], "mapped", [24049]], [[12081, 12081], "mapped", [24062]], [[12082, 12082], "mapped", [24178]], [[12083, 12083], "mapped", [24186]], [[12084, 12084], "mapped", [24191]], [[12085, 12085], "mapped", [24308]], [[12086, 12086], "mapped", [24318]], [[12087, 12087], "mapped", [24331]], [[12088, 12088], "mapped", [24339]], [[12089, 12089], "mapped", [24400]], [[12090, 12090], "mapped", [24417]], [[12091, 12091], "mapped", [24435]], [[12092, 12092], "mapped", [24515]], [[12093, 12093], "mapped", [25096]], [[12094, 12094], "mapped", [25142]], [[12095, 12095], "mapped", [25163]], [[12096, 12096], "mapped", [25903]], [[12097, 12097], "mapped", [25908]], [[12098, 12098], "mapped", [25991]], [[12099, 12099], "mapped", [26007]], [[12100, 12100], "mapped", [26020]], [[12101, 12101], "mapped", [26041]], [[12102, 12102], "mapped", [26080]], [[12103, 12103], "mapped", [26085]], [[12104, 12104], "mapped", [26352]], [[12105, 12105], "mapped", [26376]], [[12106, 12106], "mapped", [26408]], [[12107, 12107], "mapped", [27424]], [[12108, 12108], "mapped", [27490]], [[12109, 12109], "mapped", [27513]], [[12110, 12110], "mapped", [27571]], [[12111, 12111], "mapped", [27595]], [[12112, 12112], "mapped", [27604]], [[12113, 12113], "mapped", [27611]], [[12114, 12114], "mapped", [27663]], [[12115, 12115], "mapped", [27668]], [[12116, 12116], "mapped", [27700]], [[12117, 12117], "mapped", [28779]], [[12118, 12118], "mapped", [29226]], [[12119, 12119], "mapped", [29238]], [[12120, 12120], "mapped", [29243]], [[12121, 12121], "mapped", [29247]], [[12122, 12122], "mapped", [29255]], [[12123, 12123], "mapped", [29273]], [[12124, 12124], "mapped", [29275]], [[12125, 12125], "mapped", [29356]], [[12126, 12126], "mapped", [29572]], [[12127, 12127], "mapped", [29577]], [[12128, 12128], "mapped", [29916]], [[12129, 12129], "mapped", [29926]], [[12130, 12130], "mapped", [29976]], [[12131, 12131], "mapped", [29983]], [[12132, 12132], "mapped", [29992]], [[12133, 12133], "mapped", [3e4]], [[12134, 12134], "mapped", [30091]], [[12135, 12135], "mapped", [30098]], [[12136, 12136], "mapped", [30326]], [[12137, 12137], "mapped", [30333]], [[12138, 12138], "mapped", [30382]], [[12139, 12139], "mapped", [30399]], [[12140, 12140], "mapped", [30446]], [[12141, 12141], "mapped", [30683]], [[12142, 12142], "mapped", [30690]], [[12143, 12143], "mapped", [30707]], [[12144, 12144], "mapped", [31034]], [[12145, 12145], "mapped", [31160]], [[12146, 12146], "mapped", [31166]], [[12147, 12147], "mapped", [31348]], [[12148, 12148], "mapped", [31435]], [[12149, 12149], "mapped", [31481]], [[12150, 12150], "mapped", [31859]], [[12151, 12151], "mapped", [31992]], [[12152, 12152], "mapped", [32566]], [[12153, 12153], "mapped", [32593]], [[12154, 12154], "mapped", [32650]], [[12155, 12155], "mapped", [32701]], [[12156, 12156], "mapped", [32769]], [[12157, 12157], "mapped", [32780]], [[12158, 12158], "mapped", [32786]], [[12159, 12159], "mapped", [32819]], [[12160, 12160], "mapped", [32895]], [[12161, 12161], "mapped", [32905]], [[12162, 12162], "mapped", [33251]], [[12163, 12163], "mapped", [33258]], [[12164, 12164], "mapped", [33267]], [[12165, 12165], "mapped", [33276]], [[12166, 12166], "mapped", [33292]], [[12167, 12167], "mapped", [33307]], [[12168, 12168], "mapped", [33311]], [[12169, 12169], "mapped", [33390]], [[12170, 12170], "mapped", [33394]], [[12171, 12171], "mapped", [33400]], [[12172, 12172], "mapped", [34381]], [[12173, 12173], "mapped", [34411]], [[12174, 12174], "mapped", [34880]], [[12175, 12175], "mapped", [34892]], [[12176, 12176], "mapped", [34915]], [[12177, 12177], "mapped", [35198]], [[12178, 12178], "mapped", [35211]], [[12179, 12179], "mapped", [35282]], [[12180, 12180], "mapped", [35328]], [[12181, 12181], "mapped", [35895]], [[12182, 12182], "mapped", [35910]], [[12183, 12183], "mapped", [35925]], [[12184, 12184], "mapped", [35960]], [[12185, 12185], "mapped", [35997]], [[12186, 12186], "mapped", [36196]], [[12187, 12187], "mapped", [36208]], [[12188, 12188], "mapped", [36275]], [[12189, 12189], "mapped", [36523]], [[12190, 12190], "mapped", [36554]], [[12191, 12191], "mapped", [36763]], [[12192, 12192], "mapped", [36784]], [[12193, 12193], "mapped", [36789]], [[12194, 12194], "mapped", [37009]], [[12195, 12195], "mapped", [37193]], [[12196, 12196], "mapped", [37318]], [[12197, 12197], "mapped", [37324]], [[12198, 12198], "mapped", [37329]], [[12199, 12199], "mapped", [38263]], [[12200, 12200], "mapped", [38272]], [[12201, 12201], "mapped", [38428]], [[12202, 12202], "mapped", [38582]], [[12203, 12203], "mapped", [38585]], [[12204, 12204], "mapped", [38632]], [[12205, 12205], "mapped", [38737]], [[12206, 12206], "mapped", [38750]], [[12207, 12207], "mapped", [38754]], [[12208, 12208], "mapped", [38761]], [[12209, 12209], "mapped", [38859]], [[12210, 12210], "mapped", [38893]], [[12211, 12211], "mapped", [38899]], [[12212, 12212], "mapped", [38913]], [[12213, 12213], "mapped", [39080]], [[12214, 12214], "mapped", [39131]], [[12215, 12215], "mapped", [39135]], [[12216, 12216], "mapped", [39318]], [[12217, 12217], "mapped", [39321]], [[12218, 12218], "mapped", [39340]], [[12219, 12219], "mapped", [39592]], [[12220, 12220], "mapped", [39640]], [[12221, 12221], "mapped", [39647]], [[12222, 12222], "mapped", [39717]], [[12223, 12223], "mapped", [39727]], [[12224, 12224], "mapped", [39730]], [[12225, 12225], "mapped", [39740]], [[12226, 12226], "mapped", [39770]], [[12227, 12227], "mapped", [40165]], [[12228, 12228], "mapped", [40565]], [[12229, 12229], "mapped", [40575]], [[12230, 12230], "mapped", [40613]], [[12231, 12231], "mapped", [40635]], [[12232, 12232], "mapped", [40643]], [[12233, 12233], "mapped", [40653]], [[12234, 12234], "mapped", [40657]], [[12235, 12235], "mapped", [40697]], [[12236, 12236], "mapped", [40701]], [[12237, 12237], "mapped", [40718]], [[12238, 12238], "mapped", [40723]], [[12239, 12239], "mapped", [40736]], [[12240, 12240], "mapped", [40763]], [[12241, 12241], "mapped", [40778]], [[12242, 12242], "mapped", [40786]], [[12243, 12243], "mapped", [40845]], [[12244, 12244], "mapped", [40860]], [[12245, 12245], "mapped", [40864]], [[12246, 12271], "disallowed"], [[12272, 12283], "disallowed"], [[12284, 12287], "disallowed"], [[12288, 12288], "disallowed_STD3_mapped", [32]], [[12289, 12289], "valid", [], "NV8"], [[12290, 12290], "mapped", [46]], [[12291, 12292], "valid", [], "NV8"], [[12293, 12295], "valid"], [[12296, 12329], "valid", [], "NV8"], [[12330, 12333], "valid"], [[12334, 12341], "valid", [], "NV8"], [[12342, 12342], "mapped", [12306]], [[12343, 12343], "valid", [], "NV8"], [[12344, 12344], "mapped", [21313]], [[12345, 12345], "mapped", [21316]], [[12346, 12346], "mapped", [21317]], [[12347, 12347], "valid", [], "NV8"], [[12348, 12348], "valid"], [[12349, 12349], "valid", [], "NV8"], [[12350, 12350], "valid", [], "NV8"], [[12351, 12351], "valid", [], "NV8"], [[12352, 12352], "disallowed"], [[12353, 12436], "valid"], [[12437, 12438], "valid"], [[12439, 12440], "disallowed"], [[12441, 12442], "valid"], [[12443, 12443], "disallowed_STD3_mapped", [32, 12441]], [[12444, 12444], "disallowed_STD3_mapped", [32, 12442]], [[12445, 12446], "valid"], [[12447, 12447], "mapped", [12424, 12426]], [[12448, 12448], "valid", [], "NV8"], [[12449, 12542], "valid"], [[12543, 12543], "mapped", [12467, 12488]], [[12544, 12548], "disallowed"], [[12549, 12588], "valid"], [[12589, 12589], "valid"], [[12590, 12592], "disallowed"], [[12593, 12593], "mapped", [4352]], [[12594, 12594], "mapped", [4353]], [[12595, 12595], "mapped", [4522]], [[12596, 12596], "mapped", [4354]], [[12597, 12597], "mapped", [4524]], [[12598, 12598], "mapped", [4525]], [[12599, 12599], "mapped", [4355]], [[12600, 12600], "mapped", [4356]], [[12601, 12601], "mapped", [4357]], [[12602, 12602], "mapped", [4528]], [[12603, 12603], "mapped", [4529]], [[12604, 12604], "mapped", [4530]], [[12605, 12605], "mapped", [4531]], [[12606, 12606], "mapped", [4532]], [[12607, 12607], "mapped", [4533]], [[12608, 12608], "mapped", [4378]], [[12609, 12609], "mapped", [4358]], [[12610, 12610], "mapped", [4359]], [[12611, 12611], "mapped", [4360]], [[12612, 12612], "mapped", [4385]], [[12613, 12613], "mapped", [4361]], [[12614, 12614], "mapped", [4362]], [[12615, 12615], "mapped", [4363]], [[12616, 12616], "mapped", [4364]], [[12617, 12617], "mapped", [4365]], [[12618, 12618], "mapped", [4366]], [[12619, 12619], "mapped", [4367]], [[12620, 12620], "mapped", [4368]], [[12621, 12621], "mapped", [4369]], [[12622, 12622], "mapped", [4370]], [[12623, 12623], "mapped", [4449]], [[12624, 12624], "mapped", [4450]], [[12625, 12625], "mapped", [4451]], [[12626, 12626], "mapped", [4452]], [[12627, 12627], "mapped", [4453]], [[12628, 12628], "mapped", [4454]], [[12629, 12629], "mapped", [4455]], [[12630, 12630], "mapped", [4456]], [[12631, 12631], "mapped", [4457]], [[12632, 12632], "mapped", [4458]], [[12633, 12633], "mapped", [4459]], [[12634, 12634], "mapped", [4460]], [[12635, 12635], "mapped", [4461]], [[12636, 12636], "mapped", [4462]], [[12637, 12637], "mapped", [4463]], [[12638, 12638], "mapped", [4464]], [[12639, 12639], "mapped", [4465]], [[12640, 12640], "mapped", [4466]], [[12641, 12641], "mapped", [4467]], [[12642, 12642], "mapped", [4468]], [[12643, 12643], "mapped", [4469]], [[12644, 12644], "disallowed"], [[12645, 12645], "mapped", [4372]], [[12646, 12646], "mapped", [4373]], [[12647, 12647], "mapped", [4551]], [[12648, 12648], "mapped", [4552]], [[12649, 12649], "mapped", [4556]], [[12650, 12650], "mapped", [4558]], [[12651, 12651], "mapped", [4563]], [[12652, 12652], "mapped", [4567]], [[12653, 12653], "mapped", [4569]], [[12654, 12654], "mapped", [4380]], [[12655, 12655], "mapped", [4573]], [[12656, 12656], "mapped", [4575]], [[12657, 12657], "mapped", [4381]], [[12658, 12658], "mapped", [4382]], [[12659, 12659], "mapped", [4384]], [[12660, 12660], "mapped", [4386]], [[12661, 12661], "mapped", [4387]], [[12662, 12662], "mapped", [4391]], [[12663, 12663], "mapped", [4393]], [[12664, 12664], "mapped", [4395]], [[12665, 12665], "mapped", [4396]], [[12666, 12666], "mapped", [4397]], [[12667, 12667], "mapped", [4398]], [[12668, 12668], "mapped", [4399]], [[12669, 12669], "mapped", [4402]], [[12670, 12670], "mapped", [4406]], [[12671, 12671], "mapped", [4416]], [[12672, 12672], "mapped", [4423]], [[12673, 12673], "mapped", [4428]], [[12674, 12674], "mapped", [4593]], [[12675, 12675], "mapped", [4594]], [[12676, 12676], "mapped", [4439]], [[12677, 12677], "mapped", [4440]], [[12678, 12678], "mapped", [4441]], [[12679, 12679], "mapped", [4484]], [[12680, 12680], "mapped", [4485]], [[12681, 12681], "mapped", [4488]], [[12682, 12682], "mapped", [4497]], [[12683, 12683], "mapped", [4498]], [[12684, 12684], "mapped", [4500]], [[12685, 12685], "mapped", [4510]], [[12686, 12686], "mapped", [4513]], [[12687, 12687], "disallowed"], [[12688, 12689], "valid", [], "NV8"], [[12690, 12690], "mapped", [19968]], [[12691, 12691], "mapped", [20108]], [[12692, 12692], "mapped", [19977]], [[12693, 12693], "mapped", [22235]], [[12694, 12694], "mapped", [19978]], [[12695, 12695], "mapped", [20013]], [[12696, 12696], "mapped", [19979]], [[12697, 12697], "mapped", [30002]], [[12698, 12698], "mapped", [20057]], [[12699, 12699], "mapped", [19993]], [[12700, 12700], "mapped", [19969]], [[12701, 12701], "mapped", [22825]], [[12702, 12702], "mapped", [22320]], [[12703, 12703], "mapped", [20154]], [[12704, 12727], "valid"], [[12728, 12730], "valid"], [[12731, 12735], "disallowed"], [[12736, 12751], "valid", [], "NV8"], [[12752, 12771], "valid", [], "NV8"], [[12772, 12783], "disallowed"], [[12784, 12799], "valid"], [[12800, 12800], "disallowed_STD3_mapped", [40, 4352, 41]], [[12801, 12801], "disallowed_STD3_mapped", [40, 4354, 41]], [[12802, 12802], "disallowed_STD3_mapped", [40, 4355, 41]], [[12803, 12803], "disallowed_STD3_mapped", [40, 4357, 41]], [[12804, 12804], "disallowed_STD3_mapped", [40, 4358, 41]], [[12805, 12805], "disallowed_STD3_mapped", [40, 4359, 41]], [[12806, 12806], "disallowed_STD3_mapped", [40, 4361, 41]], [[12807, 12807], "disallowed_STD3_mapped", [40, 4363, 41]], [[12808, 12808], "disallowed_STD3_mapped", [40, 4364, 41]], [[12809, 12809], "disallowed_STD3_mapped", [40, 4366, 41]], [[12810, 12810], "disallowed_STD3_mapped", [40, 4367, 41]], [[12811, 12811], "disallowed_STD3_mapped", [40, 4368, 41]], [[12812, 12812], "disallowed_STD3_mapped", [40, 4369, 41]], [[12813, 12813], "disallowed_STD3_mapped", [40, 4370, 41]], [[12814, 12814], "disallowed_STD3_mapped", [40, 44032, 41]], [[12815, 12815], "disallowed_STD3_mapped", [40, 45208, 41]], [[12816, 12816], "disallowed_STD3_mapped", [40, 45796, 41]], [[12817, 12817], "disallowed_STD3_mapped", [40, 46972, 41]], [[12818, 12818], "disallowed_STD3_mapped", [40, 47560, 41]], [[12819, 12819], "disallowed_STD3_mapped", [40, 48148, 41]], [[12820, 12820], "disallowed_STD3_mapped", [40, 49324, 41]], [[12821, 12821], "disallowed_STD3_mapped", [40, 50500, 41]], [[12822, 12822], "disallowed_STD3_mapped", [40, 51088, 41]], [[12823, 12823], "disallowed_STD3_mapped", [40, 52264, 41]], [[12824, 12824], "disallowed_STD3_mapped", [40, 52852, 41]], [[12825, 12825], "disallowed_STD3_mapped", [40, 53440, 41]], [[12826, 12826], "disallowed_STD3_mapped", [40, 54028, 41]], [[12827, 12827], "disallowed_STD3_mapped", [40, 54616, 41]], [[12828, 12828], "disallowed_STD3_mapped", [40, 51452, 41]], [[12829, 12829], "disallowed_STD3_mapped", [40, 50724, 51204, 41]], [[12830, 12830], "disallowed_STD3_mapped", [40, 50724, 54980, 41]], [[12831, 12831], "disallowed"], [[12832, 12832], "disallowed_STD3_mapped", [40, 19968, 41]], [[12833, 12833], "disallowed_STD3_mapped", [40, 20108, 41]], [[12834, 12834], "disallowed_STD3_mapped", [40, 19977, 41]], [[12835, 12835], "disallowed_STD3_mapped", [40, 22235, 41]], [[12836, 12836], "disallowed_STD3_mapped", [40, 20116, 41]], [[12837, 12837], "disallowed_STD3_mapped", [40, 20845, 41]], [[12838, 12838], "disallowed_STD3_mapped", [40, 19971, 41]], [[12839, 12839], "disallowed_STD3_mapped", [40, 20843, 41]], [[12840, 12840], "disallowed_STD3_mapped", [40, 20061, 41]], [[12841, 12841], "disallowed_STD3_mapped", [40, 21313, 41]], [[12842, 12842], "disallowed_STD3_mapped", [40, 26376, 41]], [[12843, 12843], "disallowed_STD3_mapped", [40, 28779, 41]], [[12844, 12844], "disallowed_STD3_mapped", [40, 27700, 41]], [[12845, 12845], "disallowed_STD3_mapped", [40, 26408, 41]], [[12846, 12846], "disallowed_STD3_mapped", [40, 37329, 41]], [[12847, 12847], "disallowed_STD3_mapped", [40, 22303, 41]], [[12848, 12848], "disallowed_STD3_mapped", [40, 26085, 41]], [[12849, 12849], "disallowed_STD3_mapped", [40, 26666, 41]], [[12850, 12850], "disallowed_STD3_mapped", [40, 26377, 41]], [[12851, 12851], "disallowed_STD3_mapped", [40, 31038, 41]], [[12852, 12852], "disallowed_STD3_mapped", [40, 21517, 41]], [[12853, 12853], "disallowed_STD3_mapped", [40, 29305, 41]], [[12854, 12854], "disallowed_STD3_mapped", [40, 36001, 41]], [[12855, 12855], "disallowed_STD3_mapped", [40, 31069, 41]], [[12856, 12856], "disallowed_STD3_mapped", [40, 21172, 41]], [[12857, 12857], "disallowed_STD3_mapped", [40, 20195, 41]], [[12858, 12858], "disallowed_STD3_mapped", [40, 21628, 41]], [[12859, 12859], "disallowed_STD3_mapped", [40, 23398, 41]], [[12860, 12860], "disallowed_STD3_mapped", [40, 30435, 41]], [[12861, 12861], "disallowed_STD3_mapped", [40, 20225, 41]], [[12862, 12862], "disallowed_STD3_mapped", [40, 36039, 41]], [[12863, 12863], "disallowed_STD3_mapped", [40, 21332, 41]], [[12864, 12864], "disallowed_STD3_mapped", [40, 31085, 41]], [[12865, 12865], "disallowed_STD3_mapped", [40, 20241, 41]], [[12866, 12866], "disallowed_STD3_mapped", [40, 33258, 41]], [[12867, 12867], "disallowed_STD3_mapped", [40, 33267, 41]], [[12868, 12868], "mapped", [21839]], [[12869, 12869], "mapped", [24188]], [[12870, 12870], "mapped", [25991]], [[12871, 12871], "mapped", [31631]], [[12872, 12879], "valid", [], "NV8"], [[12880, 12880], "mapped", [112, 116, 101]], [[12881, 12881], "mapped", [50, 49]], [[12882, 12882], "mapped", [50, 50]], [[12883, 12883], "mapped", [50, 51]], [[12884, 12884], "mapped", [50, 52]], [[12885, 12885], "mapped", [50, 53]], [[12886, 12886], "mapped", [50, 54]], [[12887, 12887], "mapped", [50, 55]], [[12888, 12888], "mapped", [50, 56]], [[12889, 12889], "mapped", [50, 57]], [[12890, 12890], "mapped", [51, 48]], [[12891, 12891], "mapped", [51, 49]], [[12892, 12892], "mapped", [51, 50]], [[12893, 12893], "mapped", [51, 51]], [[12894, 12894], "mapped", [51, 52]], [[12895, 12895], "mapped", [51, 53]], [[12896, 12896], "mapped", [4352]], [[12897, 12897], "mapped", [4354]], [[12898, 12898], "mapped", [4355]], [[12899, 12899], "mapped", [4357]], [[12900, 12900], "mapped", [4358]], [[12901, 12901], "mapped", [4359]], [[12902, 12902], "mapped", [4361]], [[12903, 12903], "mapped", [4363]], [[12904, 12904], "mapped", [4364]], [[12905, 12905], "mapped", [4366]], [[12906, 12906], "mapped", [4367]], [[12907, 12907], "mapped", [4368]], [[12908, 12908], "mapped", [4369]], [[12909, 12909], "mapped", [4370]], [[12910, 12910], "mapped", [44032]], [[12911, 12911], "mapped", [45208]], [[12912, 12912], "mapped", [45796]], [[12913, 12913], "mapped", [46972]], [[12914, 12914], "mapped", [47560]], [[12915, 12915], "mapped", [48148]], [[12916, 12916], "mapped", [49324]], [[12917, 12917], "mapped", [50500]], [[12918, 12918], "mapped", [51088]], [[12919, 12919], "mapped", [52264]], [[12920, 12920], "mapped", [52852]], [[12921, 12921], "mapped", [53440]], [[12922, 12922], "mapped", [54028]], [[12923, 12923], "mapped", [54616]], [[12924, 12924], "mapped", [52280, 44256]], [[12925, 12925], "mapped", [51452, 51032]], [[12926, 12926], "mapped", [50864]], [[12927, 12927], "valid", [], "NV8"], [[12928, 12928], "mapped", [19968]], [[12929, 12929], "mapped", [20108]], [[12930, 12930], "mapped", [19977]], [[12931, 12931], "mapped", [22235]], [[12932, 12932], "mapped", [20116]], [[12933, 12933], "mapped", [20845]], [[12934, 12934], "mapped", [19971]], [[12935, 12935], "mapped", [20843]], [[12936, 12936], "mapped", [20061]], [[12937, 12937], "mapped", [21313]], [[12938, 12938], "mapped", [26376]], [[12939, 12939], "mapped", [28779]], [[12940, 12940], "mapped", [27700]], [[12941, 12941], "mapped", [26408]], [[12942, 12942], "mapped", [37329]], [[12943, 12943], "mapped", [22303]], [[12944, 12944], "mapped", [26085]], [[12945, 12945], "mapped", [26666]], [[12946, 12946], "mapped", [26377]], [[12947, 12947], "mapped", [31038]], [[12948, 12948], "mapped", [21517]], [[12949, 12949], "mapped", [29305]], [[12950, 12950], "mapped", [36001]], [[12951, 12951], "mapped", [31069]], [[12952, 12952], "mapped", [21172]], [[12953, 12953], "mapped", [31192]], [[12954, 12954], "mapped", [30007]], [[12955, 12955], "mapped", [22899]], [[12956, 12956], "mapped", [36969]], [[12957, 12957], "mapped", [20778]], [[12958, 12958], "mapped", [21360]], [[12959, 12959], "mapped", [27880]], [[12960, 12960], "mapped", [38917]], [[12961, 12961], "mapped", [20241]], [[12962, 12962], "mapped", [20889]], [[12963, 12963], "mapped", [27491]], [[12964, 12964], "mapped", [19978]], [[12965, 12965], "mapped", [20013]], [[12966, 12966], "mapped", [19979]], [[12967, 12967], "mapped", [24038]], [[12968, 12968], "mapped", [21491]], [[12969, 12969], "mapped", [21307]], [[12970, 12970], "mapped", [23447]], [[12971, 12971], "mapped", [23398]], [[12972, 12972], "mapped", [30435]], [[12973, 12973], "mapped", [20225]], [[12974, 12974], "mapped", [36039]], [[12975, 12975], "mapped", [21332]], [[12976, 12976], "mapped", [22812]], [[12977, 12977], "mapped", [51, 54]], [[12978, 12978], "mapped", [51, 55]], [[12979, 12979], "mapped", [51, 56]], [[12980, 12980], "mapped", [51, 57]], [[12981, 12981], "mapped", [52, 48]], [[12982, 12982], "mapped", [52, 49]], [[12983, 12983], "mapped", [52, 50]], [[12984, 12984], "mapped", [52, 51]], [[12985, 12985], "mapped", [52, 52]], [[12986, 12986], "mapped", [52, 53]], [[12987, 12987], "mapped", [52, 54]], [[12988, 12988], "mapped", [52, 55]], [[12989, 12989], "mapped", [52, 56]], [[12990, 12990], "mapped", [52, 57]], [[12991, 12991], "mapped", [53, 48]], [[12992, 12992], "mapped", [49, 26376]], [[12993, 12993], "mapped", [50, 26376]], [[12994, 12994], "mapped", [51, 26376]], [[12995, 12995], "mapped", [52, 26376]], [[12996, 12996], "mapped", [53, 26376]], [[12997, 12997], "mapped", [54, 26376]], [[12998, 12998], "mapped", [55, 26376]], [[12999, 12999], "mapped", [56, 26376]], [[13e3, 13e3], "mapped", [57, 26376]], [[13001, 13001], "mapped", [49, 48, 26376]], [[13002, 13002], "mapped", [49, 49, 26376]], [[13003, 13003], "mapped", [49, 50, 26376]], [[13004, 13004], "mapped", [104, 103]], [[13005, 13005], "mapped", [101, 114, 103]], [[13006, 13006], "mapped", [101, 118]], [[13007, 13007], "mapped", [108, 116, 100]], [[13008, 13008], "mapped", [12450]], [[13009, 13009], "mapped", [12452]], [[13010, 13010], "mapped", [12454]], [[13011, 13011], "mapped", [12456]], [[13012, 13012], "mapped", [12458]], [[13013, 13013], "mapped", [12459]], [[13014, 13014], "mapped", [12461]], [[13015, 13015], "mapped", [12463]], [[13016, 13016], "mapped", [12465]], [[13017, 13017], "mapped", [12467]], [[13018, 13018], "mapped", [12469]], [[13019, 13019], "mapped", [12471]], [[13020, 13020], "mapped", [12473]], [[13021, 13021], "mapped", [12475]], [[13022, 13022], "mapped", [12477]], [[13023, 13023], "mapped", [12479]], [[13024, 13024], "mapped", [12481]], [[13025, 13025], "mapped", [12484]], [[13026, 13026], "mapped", [12486]], [[13027, 13027], "mapped", [12488]], [[13028, 13028], "mapped", [12490]], [[13029, 13029], "mapped", [12491]], [[13030, 13030], "mapped", [12492]], [[13031, 13031], "mapped", [12493]], [[13032, 13032], "mapped", [12494]], [[13033, 13033], "mapped", [12495]], [[13034, 13034], "mapped", [12498]], [[13035, 13035], "mapped", [12501]], [[13036, 13036], "mapped", [12504]], [[13037, 13037], "mapped", [12507]], [[13038, 13038], "mapped", [12510]], [[13039, 13039], "mapped", [12511]], [[13040, 13040], "mapped", [12512]], [[13041, 13041], "mapped", [12513]], [[13042, 13042], "mapped", [12514]], [[13043, 13043], "mapped", [12516]], [[13044, 13044], "mapped", [12518]], [[13045, 13045], "mapped", [12520]], [[13046, 13046], "mapped", [12521]], [[13047, 13047], "mapped", [12522]], [[13048, 13048], "mapped", [12523]], [[13049, 13049], "mapped", [12524]], [[13050, 13050], "mapped", [12525]], [[13051, 13051], "mapped", [12527]], [[13052, 13052], "mapped", [12528]], [[13053, 13053], "mapped", [12529]], [[13054, 13054], "mapped", [12530]], [[13055, 13055], "disallowed"], [[13056, 13056], "mapped", [12450, 12497, 12540, 12488]], [[13057, 13057], "mapped", [12450, 12523, 12501, 12449]], [[13058, 13058], "mapped", [12450, 12531, 12506, 12450]], [[13059, 13059], "mapped", [12450, 12540, 12523]], [[13060, 13060], "mapped", [12452, 12491, 12531, 12464]], [[13061, 13061], "mapped", [12452, 12531, 12481]], [[13062, 13062], "mapped", [12454, 12457, 12531]], [[13063, 13063], "mapped", [12456, 12473, 12463, 12540, 12489]], [[13064, 13064], "mapped", [12456, 12540, 12459, 12540]], [[13065, 13065], "mapped", [12458, 12531, 12473]], [[13066, 13066], "mapped", [12458, 12540, 12512]], [[13067, 13067], "mapped", [12459, 12452, 12522]], [[13068, 13068], "mapped", [12459, 12521, 12483, 12488]], [[13069, 13069], "mapped", [12459, 12525, 12522, 12540]], [[13070, 13070], "mapped", [12460, 12525, 12531]], [[13071, 13071], "mapped", [12460, 12531, 12510]], [[13072, 13072], "mapped", [12462, 12460]], [[13073, 13073], "mapped", [12462, 12491, 12540]], [[13074, 13074], "mapped", [12461, 12517, 12522, 12540]], [[13075, 13075], "mapped", [12462, 12523, 12480, 12540]], [[13076, 13076], "mapped", [12461, 12525]], [[13077, 13077], "mapped", [12461, 12525, 12464, 12521, 12512]], [[13078, 13078], "mapped", [12461, 12525, 12513, 12540, 12488, 12523]], [[13079, 13079], "mapped", [12461, 12525, 12527, 12483, 12488]], [[13080, 13080], "mapped", [12464, 12521, 12512]], [[13081, 13081], "mapped", [12464, 12521, 12512, 12488, 12531]], [[13082, 13082], "mapped", [12463, 12523, 12476, 12452, 12525]], [[13083, 13083], "mapped", [12463, 12525, 12540, 12493]], [[13084, 13084], "mapped", [12465, 12540, 12473]], [[13085, 13085], "mapped", [12467, 12523, 12490]], [[13086, 13086], "mapped", [12467, 12540, 12509]], [[13087, 13087], "mapped", [12469, 12452, 12463, 12523]], [[13088, 13088], "mapped", [12469, 12531, 12481, 12540, 12512]], [[13089, 13089], "mapped", [12471, 12522, 12531, 12464]], [[13090, 13090], "mapped", [12475, 12531, 12481]], [[13091, 13091], "mapped", [12475, 12531, 12488]], [[13092, 13092], "mapped", [12480, 12540, 12473]], [[13093, 13093], "mapped", [12487, 12471]], [[13094, 13094], "mapped", [12489, 12523]], [[13095, 13095], "mapped", [12488, 12531]], [[13096, 13096], "mapped", [12490, 12494]], [[13097, 13097], "mapped", [12494, 12483, 12488]], [[13098, 13098], "mapped", [12495, 12452, 12484]], [[13099, 13099], "mapped", [12497, 12540, 12475, 12531, 12488]], [[13100, 13100], "mapped", [12497, 12540, 12484]], [[13101, 13101], "mapped", [12496, 12540, 12524, 12523]], [[13102, 13102], "mapped", [12500, 12450, 12473, 12488, 12523]], [[13103, 13103], "mapped", [12500, 12463, 12523]], [[13104, 13104], "mapped", [12500, 12467]], [[13105, 13105], "mapped", [12499, 12523]], [[13106, 13106], "mapped", [12501, 12449, 12521, 12483, 12489]], [[13107, 13107], "mapped", [12501, 12451, 12540, 12488]], [[13108, 13108], "mapped", [12502, 12483, 12471, 12455, 12523]], [[13109, 13109], "mapped", [12501, 12521, 12531]], [[13110, 13110], "mapped", [12504, 12463, 12479, 12540, 12523]], [[13111, 13111], "mapped", [12506, 12477]], [[13112, 13112], "mapped", [12506, 12491, 12498]], [[13113, 13113], "mapped", [12504, 12523, 12484]], [[13114, 13114], "mapped", [12506, 12531, 12473]], [[13115, 13115], "mapped", [12506, 12540, 12472]], [[13116, 13116], "mapped", [12505, 12540, 12479]], [[13117, 13117], "mapped", [12509, 12452, 12531, 12488]], [[13118, 13118], "mapped", [12508, 12523, 12488]], [[13119, 13119], "mapped", [12507, 12531]], [[13120, 13120], "mapped", [12509, 12531, 12489]], [[13121, 13121], "mapped", [12507, 12540, 12523]], [[13122, 13122], "mapped", [12507, 12540, 12531]], [[13123, 13123], "mapped", [12510, 12452, 12463, 12525]], [[13124, 13124], "mapped", [12510, 12452, 12523]], [[13125, 13125], "mapped", [12510, 12483, 12495]], [[13126, 13126], "mapped", [12510, 12523, 12463]], [[13127, 13127], "mapped", [12510, 12531, 12471, 12519, 12531]], [[13128, 13128], "mapped", [12511, 12463, 12525, 12531]], [[13129, 13129], "mapped", [12511, 12522]], [[13130, 13130], "mapped", [12511, 12522, 12496, 12540, 12523]], [[13131, 13131], "mapped", [12513, 12460]], [[13132, 13132], "mapped", [12513, 12460, 12488, 12531]], [[13133, 13133], "mapped", [12513, 12540, 12488, 12523]], [[13134, 13134], "mapped", [12516, 12540, 12489]], [[13135, 13135], "mapped", [12516, 12540, 12523]], [[13136, 13136], "mapped", [12518, 12450, 12531]], [[13137, 13137], "mapped", [12522, 12483, 12488, 12523]], [[13138, 13138], "mapped", [12522, 12521]], [[13139, 13139], "mapped", [12523, 12500, 12540]], [[13140, 13140], "mapped", [12523, 12540, 12502, 12523]], [[13141, 13141], "mapped", [12524, 12512]], [[13142, 13142], "mapped", [12524, 12531, 12488, 12466, 12531]], [[13143, 13143], "mapped", [12527, 12483, 12488]], [[13144, 13144], "mapped", [48, 28857]], [[13145, 13145], "mapped", [49, 28857]], [[13146, 13146], "mapped", [50, 28857]], [[13147, 13147], "mapped", [51, 28857]], [[13148, 13148], "mapped", [52, 28857]], [[13149, 13149], "mapped", [53, 28857]], [[13150, 13150], "mapped", [54, 28857]], [[13151, 13151], "mapped", [55, 28857]], [[13152, 13152], "mapped", [56, 28857]], [[13153, 13153], "mapped", [57, 28857]], [[13154, 13154], "mapped", [49, 48, 28857]], [[13155, 13155], "mapped", [49, 49, 28857]], [[13156, 13156], "mapped", [49, 50, 28857]], [[13157, 13157], "mapped", [49, 51, 28857]], [[13158, 13158], "mapped", [49, 52, 28857]], [[13159, 13159], "mapped", [49, 53, 28857]], [[13160, 13160], "mapped", [49, 54, 28857]], [[13161, 13161], "mapped", [49, 55, 28857]], [[13162, 13162], "mapped", [49, 56, 28857]], [[13163, 13163], "mapped", [49, 57, 28857]], [[13164, 13164], "mapped", [50, 48, 28857]], [[13165, 13165], "mapped", [50, 49, 28857]], [[13166, 13166], "mapped", [50, 50, 28857]], [[13167, 13167], "mapped", [50, 51, 28857]], [[13168, 13168], "mapped", [50, 52, 28857]], [[13169, 13169], "mapped", [104, 112, 97]], [[13170, 13170], "mapped", [100, 97]], [[13171, 13171], "mapped", [97, 117]], [[13172, 13172], "mapped", [98, 97, 114]], [[13173, 13173], "mapped", [111, 118]], [[13174, 13174], "mapped", [112, 99]], [[13175, 13175], "mapped", [100, 109]], [[13176, 13176], "mapped", [100, 109, 50]], [[13177, 13177], "mapped", [100, 109, 51]], [[13178, 13178], "mapped", [105, 117]], [[13179, 13179], "mapped", [24179, 25104]], [[13180, 13180], "mapped", [26157, 21644]], [[13181, 13181], "mapped", [22823, 27491]], [[13182, 13182], "mapped", [26126, 27835]], [[13183, 13183], "mapped", [26666, 24335, 20250, 31038]], [[13184, 13184], "mapped", [112, 97]], [[13185, 13185], "mapped", [110, 97]], [[13186, 13186], "mapped", [956, 97]], [[13187, 13187], "mapped", [109, 97]], [[13188, 13188], "mapped", [107, 97]], [[13189, 13189], "mapped", [107, 98]], [[13190, 13190], "mapped", [109, 98]], [[13191, 13191], "mapped", [103, 98]], [[13192, 13192], "mapped", [99, 97, 108]], [[13193, 13193], "mapped", [107, 99, 97, 108]], [[13194, 13194], "mapped", [112, 102]], [[13195, 13195], "mapped", [110, 102]], [[13196, 13196], "mapped", [956, 102]], [[13197, 13197], "mapped", [956, 103]], [[13198, 13198], "mapped", [109, 103]], [[13199, 13199], "mapped", [107, 103]], [[13200, 13200], "mapped", [104, 122]], [[13201, 13201], "mapped", [107, 104, 122]], [[13202, 13202], "mapped", [109, 104, 122]], [[13203, 13203], "mapped", [103, 104, 122]], [[13204, 13204], "mapped", [116, 104, 122]], [[13205, 13205], "mapped", [956, 108]], [[13206, 13206], "mapped", [109, 108]], [[13207, 13207], "mapped", [100, 108]], [[13208, 13208], "mapped", [107, 108]], [[13209, 13209], "mapped", [102, 109]], [[13210, 13210], "mapped", [110, 109]], [[13211, 13211], "mapped", [956, 109]], [[13212, 13212], "mapped", [109, 109]], [[13213, 13213], "mapped", [99, 109]], [[13214, 13214], "mapped", [107, 109]], [[13215, 13215], "mapped", [109, 109, 50]], [[13216, 13216], "mapped", [99, 109, 50]], [[13217, 13217], "mapped", [109, 50]], [[13218, 13218], "mapped", [107, 109, 50]], [[13219, 13219], "mapped", [109, 109, 51]], [[13220, 13220], "mapped", [99, 109, 51]], [[13221, 13221], "mapped", [109, 51]], [[13222, 13222], "mapped", [107, 109, 51]], [[13223, 13223], "mapped", [109, 8725, 115]], [[13224, 13224], "mapped", [109, 8725, 115, 50]], [[13225, 13225], "mapped", [112, 97]], [[13226, 13226], "mapped", [107, 112, 97]], [[13227, 13227], "mapped", [109, 112, 97]], [[13228, 13228], "mapped", [103, 112, 97]], [[13229, 13229], "mapped", [114, 97, 100]], [[13230, 13230], "mapped", [114, 97, 100, 8725, 115]], [[13231, 13231], "mapped", [114, 97, 100, 8725, 115, 50]], [[13232, 13232], "mapped", [112, 115]], [[13233, 13233], "mapped", [110, 115]], [[13234, 13234], "mapped", [956, 115]], [[13235, 13235], "mapped", [109, 115]], [[13236, 13236], "mapped", [112, 118]], [[13237, 13237], "mapped", [110, 118]], [[13238, 13238], "mapped", [956, 118]], [[13239, 13239], "mapped", [109, 118]], [[13240, 13240], "mapped", [107, 118]], [[13241, 13241], "mapped", [109, 118]], [[13242, 13242], "mapped", [112, 119]], [[13243, 13243], "mapped", [110, 119]], [[13244, 13244], "mapped", [956, 119]], [[13245, 13245], "mapped", [109, 119]], [[13246, 13246], "mapped", [107, 119]], [[13247, 13247], "mapped", [109, 119]], [[13248, 13248], "mapped", [107, 969]], [[13249, 13249], "mapped", [109, 969]], [[13250, 13250], "disallowed"], [[13251, 13251], "mapped", [98, 113]], [[13252, 13252], "mapped", [99, 99]], [[13253, 13253], "mapped", [99, 100]], [[13254, 13254], "mapped", [99, 8725, 107, 103]], [[13255, 13255], "disallowed"], [[13256, 13256], "mapped", [100, 98]], [[13257, 13257], "mapped", [103, 121]], [[13258, 13258], "mapped", [104, 97]], [[13259, 13259], "mapped", [104, 112]], [[13260, 13260], "mapped", [105, 110]], [[13261, 13261], "mapped", [107, 107]], [[13262, 13262], "mapped", [107, 109]], [[13263, 13263], "mapped", [107, 116]], [[13264, 13264], "mapped", [108, 109]], [[13265, 13265], "mapped", [108, 110]], [[13266, 13266], "mapped", [108, 111, 103]], [[13267, 13267], "mapped", [108, 120]], [[13268, 13268], "mapped", [109, 98]], [[13269, 13269], "mapped", [109, 105, 108]], [[13270, 13270], "mapped", [109, 111, 108]], [[13271, 13271], "mapped", [112, 104]], [[13272, 13272], "disallowed"], [[13273, 13273], "mapped", [112, 112, 109]], [[13274, 13274], "mapped", [112, 114]], [[13275, 13275], "mapped", [115, 114]], [[13276, 13276], "mapped", [115, 118]], [[13277, 13277], "mapped", [119, 98]], [[13278, 13278], "mapped", [118, 8725, 109]], [[13279, 13279], "mapped", [97, 8725, 109]], [[13280, 13280], "mapped", [49, 26085]], [[13281, 13281], "mapped", [50, 26085]], [[13282, 13282], "mapped", [51, 26085]], [[13283, 13283], "mapped", [52, 26085]], [[13284, 13284], "mapped", [53, 26085]], [[13285, 13285], "mapped", [54, 26085]], [[13286, 13286], "mapped", [55, 26085]], [[13287, 13287], "mapped", [56, 26085]], [[13288, 13288], "mapped", [57, 26085]], [[13289, 13289], "mapped", [49, 48, 26085]], [[13290, 13290], "mapped", [49, 49, 26085]], [[13291, 13291], "mapped", [49, 50, 26085]], [[13292, 13292], "mapped", [49, 51, 26085]], [[13293, 13293], "mapped", [49, 52, 26085]], [[13294, 13294], "mapped", [49, 53, 26085]], [[13295, 13295], "mapped", [49, 54, 26085]], [[13296, 13296], "mapped", [49, 55, 26085]], [[13297, 13297], "mapped", [49, 56, 26085]], [[13298, 13298], "mapped", [49, 57, 26085]], [[13299, 13299], "mapped", [50, 48, 26085]], [[13300, 13300], "mapped", [50, 49, 26085]], [[13301, 13301], "mapped", [50, 50, 26085]], [[13302, 13302], "mapped", [50, 51, 26085]], [[13303, 13303], "mapped", [50, 52, 26085]], [[13304, 13304], "mapped", [50, 53, 26085]], [[13305, 13305], "mapped", [50, 54, 26085]], [[13306, 13306], "mapped", [50, 55, 26085]], [[13307, 13307], "mapped", [50, 56, 26085]], [[13308, 13308], "mapped", [50, 57, 26085]], [[13309, 13309], "mapped", [51, 48, 26085]], [[13310, 13310], "mapped", [51, 49, 26085]], [[13311, 13311], "mapped", [103, 97, 108]], [[13312, 19893], "valid"], [[19894, 19903], "disallowed"], [[19904, 19967], "valid", [], "NV8"], [[19968, 40869], "valid"], [[40870, 40891], "valid"], [[40892, 40899], "valid"], [[40900, 40907], "valid"], [[40908, 40908], "valid"], [[40909, 40917], "valid"], [[40918, 40959], "disallowed"], [[40960, 42124], "valid"], [[42125, 42127], "disallowed"], [[42128, 42145], "valid", [], "NV8"], [[42146, 42147], "valid", [], "NV8"], [[42148, 42163], "valid", [], "NV8"], [[42164, 42164], "valid", [], "NV8"], [[42165, 42176], "valid", [], "NV8"], [[42177, 42177], "valid", [], "NV8"], [[42178, 42180], "valid", [], "NV8"], [[42181, 42181], "valid", [], "NV8"], [[42182, 42182], "valid", [], "NV8"], [[42183, 42191], "disallowed"], [[42192, 42237], "valid"], [[42238, 42239], "valid", [], "NV8"], [[42240, 42508], "valid"], [[42509, 42511], "valid", [], "NV8"], [[42512, 42539], "valid"], [[42540, 42559], "disallowed"], [[42560, 42560], "mapped", [42561]], [[42561, 42561], "valid"], [[42562, 42562], "mapped", [42563]], [[42563, 42563], "valid"], [[42564, 42564], "mapped", [42565]], [[42565, 42565], "valid"], [[42566, 42566], "mapped", [42567]], [[42567, 42567], "valid"], [[42568, 42568], "mapped", [42569]], [[42569, 42569], "valid"], [[42570, 42570], "mapped", [42571]], [[42571, 42571], "valid"], [[42572, 42572], "mapped", [42573]], [[42573, 42573], "valid"], [[42574, 42574], "mapped", [42575]], [[42575, 42575], "valid"], [[42576, 42576], "mapped", [42577]], [[42577, 42577], "valid"], [[42578, 42578], "mapped", [42579]], [[42579, 42579], "valid"], [[42580, 42580], "mapped", [42581]], [[42581, 42581], "valid"], [[42582, 42582], "mapped", [42583]], [[42583, 42583], "valid"], [[42584, 42584], "mapped", [42585]], [[42585, 42585], "valid"], [[42586, 42586], "mapped", [42587]], [[42587, 42587], "valid"], [[42588, 42588], "mapped", [42589]], [[42589, 42589], "valid"], [[42590, 42590], "mapped", [42591]], [[42591, 42591], "valid"], [[42592, 42592], "mapped", [42593]], [[42593, 42593], "valid"], [[42594, 42594], "mapped", [42595]], [[42595, 42595], "valid"], [[42596, 42596], "mapped", [42597]], [[42597, 42597], "valid"], [[42598, 42598], "mapped", [42599]], [[42599, 42599], "valid"], [[42600, 42600], "mapped", [42601]], [[42601, 42601], "valid"], [[42602, 42602], "mapped", [42603]], [[42603, 42603], "valid"], [[42604, 42604], "mapped", [42605]], [[42605, 42607], "valid"], [[42608, 42611], "valid", [], "NV8"], [[42612, 42619], "valid"], [[42620, 42621], "valid"], [[42622, 42622], "valid", [], "NV8"], [[42623, 42623], "valid"], [[42624, 42624], "mapped", [42625]], [[42625, 42625], "valid"], [[42626, 42626], "mapped", [42627]], [[42627, 42627], "valid"], [[42628, 42628], "mapped", [42629]], [[42629, 42629], "valid"], [[42630, 42630], "mapped", [42631]], [[42631, 42631], "valid"], [[42632, 42632], "mapped", [42633]], [[42633, 42633], "valid"], [[42634, 42634], "mapped", [42635]], [[42635, 42635], "valid"], [[42636, 42636], "mapped", [42637]], [[42637, 42637], "valid"], [[42638, 42638], "mapped", [42639]], [[42639, 42639], "valid"], [[42640, 42640], "mapped", [42641]], [[42641, 42641], "valid"], [[42642, 42642], "mapped", [42643]], [[42643, 42643], "valid"], [[42644, 42644], "mapped", [42645]], [[42645, 42645], "valid"], [[42646, 42646], "mapped", [42647]], [[42647, 42647], "valid"], [[42648, 42648], "mapped", [42649]], [[42649, 42649], "valid"], [[42650, 42650], "mapped", [42651]], [[42651, 42651], "valid"], [[42652, 42652], "mapped", [1098]], [[42653, 42653], "mapped", [1100]], [[42654, 42654], "valid"], [[42655, 42655], "valid"], [[42656, 42725], "valid"], [[42726, 42735], "valid", [], "NV8"], [[42736, 42737], "valid"], [[42738, 42743], "valid", [], "NV8"], [[42744, 42751], "disallowed"], [[42752, 42774], "valid", [], "NV8"], [[42775, 42778], "valid"], [[42779, 42783], "valid"], [[42784, 42785], "valid", [], "NV8"], [[42786, 42786], "mapped", [42787]], [[42787, 42787], "valid"], [[42788, 42788], "mapped", [42789]], [[42789, 42789], "valid"], [[42790, 42790], "mapped", [42791]], [[42791, 42791], "valid"], [[42792, 42792], "mapped", [42793]], [[42793, 42793], "valid"], [[42794, 42794], "mapped", [42795]], [[42795, 42795], "valid"], [[42796, 42796], "mapped", [42797]], [[42797, 42797], "valid"], [[42798, 42798], "mapped", [42799]], [[42799, 42801], "valid"], [[42802, 42802], "mapped", [42803]], [[42803, 42803], "valid"], [[42804, 42804], "mapped", [42805]], [[42805, 42805], "valid"], [[42806, 42806], "mapped", [42807]], [[42807, 42807], "valid"], [[42808, 42808], "mapped", [42809]], [[42809, 42809], "valid"], [[42810, 42810], "mapped", [42811]], [[42811, 42811], "valid"], [[42812, 42812], "mapped", [42813]], [[42813, 42813], "valid"], [[42814, 42814], "mapped", [42815]], [[42815, 42815], "valid"], [[42816, 42816], "mapped", [42817]], [[42817, 42817], "valid"], [[42818, 42818], "mapped", [42819]], [[42819, 42819], "valid"], [[42820, 42820], "mapped", [42821]], [[42821, 42821], "valid"], [[42822, 42822], "mapped", [42823]], [[42823, 42823], "valid"], [[42824, 42824], "mapped", [42825]], [[42825, 42825], "valid"], [[42826, 42826], "mapped", [42827]], [[42827, 42827], "valid"], [[42828, 42828], "mapped", [42829]], [[42829, 42829], "valid"], [[42830, 42830], "mapped", [42831]], [[42831, 42831], "valid"], [[42832, 42832], "mapped", [42833]], [[42833, 42833], "valid"], [[42834, 42834], "mapped", [42835]], [[42835, 42835], "valid"], [[42836, 42836], "mapped", [42837]], [[42837, 42837], "valid"], [[42838, 42838], "mapped", [42839]], [[42839, 42839], "valid"], [[42840, 42840], "mapped", [42841]], [[42841, 42841], "valid"], [[42842, 42842], "mapped", [42843]], [[42843, 42843], "valid"], [[42844, 42844], "mapped", [42845]], [[42845, 42845], "valid"], [[42846, 42846], "mapped", [42847]], [[42847, 42847], "valid"], [[42848, 42848], "mapped", [42849]], [[42849, 42849], "valid"], [[42850, 42850], "mapped", [42851]], [[42851, 42851], "valid"], [[42852, 42852], "mapped", [42853]], [[42853, 42853], "valid"], [[42854, 42854], "mapped", [42855]], [[42855, 42855], "valid"], [[42856, 42856], "mapped", [42857]], [[42857, 42857], "valid"], [[42858, 42858], "mapped", [42859]], [[42859, 42859], "valid"], [[42860, 42860], "mapped", [42861]], [[42861, 42861], "valid"], [[42862, 42862], "mapped", [42863]], [[42863, 42863], "valid"], [[42864, 42864], "mapped", [42863]], [[42865, 42872], "valid"], [[42873, 42873], "mapped", [42874]], [[42874, 42874], "valid"], [[42875, 42875], "mapped", [42876]], [[42876, 42876], "valid"], [[42877, 42877], "mapped", [7545]], [[42878, 42878], "mapped", [42879]], [[42879, 42879], "valid"], [[42880, 42880], "mapped", [42881]], [[42881, 42881], "valid"], [[42882, 42882], "mapped", [42883]], [[42883, 42883], "valid"], [[42884, 42884], "mapped", [42885]], [[42885, 42885], "valid"], [[42886, 42886], "mapped", [42887]], [[42887, 42888], "valid"], [[42889, 42890], "valid", [], "NV8"], [[42891, 42891], "mapped", [42892]], [[42892, 42892], "valid"], [[42893, 42893], "mapped", [613]], [[42894, 42894], "valid"], [[42895, 42895], "valid"], [[42896, 42896], "mapped", [42897]], [[42897, 42897], "valid"], [[42898, 42898], "mapped", [42899]], [[42899, 42899], "valid"], [[42900, 42901], "valid"], [[42902, 42902], "mapped", [42903]], [[42903, 42903], "valid"], [[42904, 42904], "mapped", [42905]], [[42905, 42905], "valid"], [[42906, 42906], "mapped", [42907]], [[42907, 42907], "valid"], [[42908, 42908], "mapped", [42909]], [[42909, 42909], "valid"], [[42910, 42910], "mapped", [42911]], [[42911, 42911], "valid"], [[42912, 42912], "mapped", [42913]], [[42913, 42913], "valid"], [[42914, 42914], "mapped", [42915]], [[42915, 42915], "valid"], [[42916, 42916], "mapped", [42917]], [[42917, 42917], "valid"], [[42918, 42918], "mapped", [42919]], [[42919, 42919], "valid"], [[42920, 42920], "mapped", [42921]], [[42921, 42921], "valid"], [[42922, 42922], "mapped", [614]], [[42923, 42923], "mapped", [604]], [[42924, 42924], "mapped", [609]], [[42925, 42925], "mapped", [620]], [[42926, 42927], "disallowed"], [[42928, 42928], "mapped", [670]], [[42929, 42929], "mapped", [647]], [[42930, 42930], "mapped", [669]], [[42931, 42931], "mapped", [43859]], [[42932, 42932], "mapped", [42933]], [[42933, 42933], "valid"], [[42934, 42934], "mapped", [42935]], [[42935, 42935], "valid"], [[42936, 42998], "disallowed"], [[42999, 42999], "valid"], [[43e3, 43e3], "mapped", [295]], [[43001, 43001], "mapped", [339]], [[43002, 43002], "valid"], [[43003, 43007], "valid"], [[43008, 43047], "valid"], [[43048, 43051], "valid", [], "NV8"], [[43052, 43055], "disallowed"], [[43056, 43065], "valid", [], "NV8"], [[43066, 43071], "disallowed"], [[43072, 43123], "valid"], [[43124, 43127], "valid", [], "NV8"], [[43128, 43135], "disallowed"], [[43136, 43204], "valid"], [[43205, 43213], "disallowed"], [[43214, 43215], "valid", [], "NV8"], [[43216, 43225], "valid"], [[43226, 43231], "disallowed"], [[43232, 43255], "valid"], [[43256, 43258], "valid", [], "NV8"], [[43259, 43259], "valid"], [[43260, 43260], "valid", [], "NV8"], [[43261, 43261], "valid"], [[43262, 43263], "disallowed"], [[43264, 43309], "valid"], [[43310, 43311], "valid", [], "NV8"], [[43312, 43347], "valid"], [[43348, 43358], "disallowed"], [[43359, 43359], "valid", [], "NV8"], [[43360, 43388], "valid", [], "NV8"], [[43389, 43391], "disallowed"], [[43392, 43456], "valid"], [[43457, 43469], "valid", [], "NV8"], [[43470, 43470], "disallowed"], [[43471, 43481], "valid"], [[43482, 43485], "disallowed"], [[43486, 43487], "valid", [], "NV8"], [[43488, 43518], "valid"], [[43519, 43519], "disallowed"], [[43520, 43574], "valid"], [[43575, 43583], "disallowed"], [[43584, 43597], "valid"], [[43598, 43599], "disallowed"], [[43600, 43609], "valid"], [[43610, 43611], "disallowed"], [[43612, 43615], "valid", [], "NV8"], [[43616, 43638], "valid"], [[43639, 43641], "valid", [], "NV8"], [[43642, 43643], "valid"], [[43644, 43647], "valid"], [[43648, 43714], "valid"], [[43715, 43738], "disallowed"], [[43739, 43741], "valid"], [[43742, 43743], "valid", [], "NV8"], [[43744, 43759], "valid"], [[43760, 43761], "valid", [], "NV8"], [[43762, 43766], "valid"], [[43767, 43776], "disallowed"], [[43777, 43782], "valid"], [[43783, 43784], "disallowed"], [[43785, 43790], "valid"], [[43791, 43792], "disallowed"], [[43793, 43798], "valid"], [[43799, 43807], "disallowed"], [[43808, 43814], "valid"], [[43815, 43815], "disallowed"], [[43816, 43822], "valid"], [[43823, 43823], "disallowed"], [[43824, 43866], "valid"], [[43867, 43867], "valid", [], "NV8"], [[43868, 43868], "mapped", [42791]], [[43869, 43869], "mapped", [43831]], [[43870, 43870], "mapped", [619]], [[43871, 43871], "mapped", [43858]], [[43872, 43875], "valid"], [[43876, 43877], "valid"], [[43878, 43887], "disallowed"], [[43888, 43888], "mapped", [5024]], [[43889, 43889], "mapped", [5025]], [[43890, 43890], "mapped", [5026]], [[43891, 43891], "mapped", [5027]], [[43892, 43892], "mapped", [5028]], [[43893, 43893], "mapped", [5029]], [[43894, 43894], "mapped", [5030]], [[43895, 43895], "mapped", [5031]], [[43896, 43896], "mapped", [5032]], [[43897, 43897], "mapped", [5033]], [[43898, 43898], "mapped", [5034]], [[43899, 43899], "mapped", [5035]], [[43900, 43900], "mapped", [5036]], [[43901, 43901], "mapped", [5037]], [[43902, 43902], "mapped", [5038]], [[43903, 43903], "mapped", [5039]], [[43904, 43904], "mapped", [5040]], [[43905, 43905], "mapped", [5041]], [[43906, 43906], "mapped", [5042]], [[43907, 43907], "mapped", [5043]], [[43908, 43908], "mapped", [5044]], [[43909, 43909], "mapped", [5045]], [[43910, 43910], "mapped", [5046]], [[43911, 43911], "mapped", [5047]], [[43912, 43912], "mapped", [5048]], [[43913, 43913], "mapped", [5049]], [[43914, 43914], "mapped", [5050]], [[43915, 43915], "mapped", [5051]], [[43916, 43916], "mapped", [5052]], [[43917, 43917], "mapped", [5053]], [[43918, 43918], "mapped", [5054]], [[43919, 43919], "mapped", [5055]], [[43920, 43920], "mapped", [5056]], [[43921, 43921], "mapped", [5057]], [[43922, 43922], "mapped", [5058]], [[43923, 43923], "mapped", [5059]], [[43924, 43924], "mapped", [5060]], [[43925, 43925], "mapped", [5061]], [[43926, 43926], "mapped", [5062]], [[43927, 43927], "mapped", [5063]], [[43928, 43928], "mapped", [5064]], [[43929, 43929], "mapped", [5065]], [[43930, 43930], "mapped", [5066]], [[43931, 43931], "mapped", [5067]], [[43932, 43932], "mapped", [5068]], [[43933, 43933], "mapped", [5069]], [[43934, 43934], "mapped", [5070]], [[43935, 43935], "mapped", [5071]], [[43936, 43936], "mapped", [5072]], [[43937, 43937], "mapped", [5073]], [[43938, 43938], "mapped", [5074]], [[43939, 43939], "mapped", [5075]], [[43940, 43940], "mapped", [5076]], [[43941, 43941], "mapped", [5077]], [[43942, 43942], "mapped", [5078]], [[43943, 43943], "mapped", [5079]], [[43944, 43944], "mapped", [5080]], [[43945, 43945], "mapped", [5081]], [[43946, 43946], "mapped", [5082]], [[43947, 43947], "mapped", [5083]], [[43948, 43948], "mapped", [5084]], [[43949, 43949], "mapped", [5085]], [[43950, 43950], "mapped", [5086]], [[43951, 43951], "mapped", [5087]], [[43952, 43952], "mapped", [5088]], [[43953, 43953], "mapped", [5089]], [[43954, 43954], "mapped", [5090]], [[43955, 43955], "mapped", [5091]], [[43956, 43956], "mapped", [5092]], [[43957, 43957], "mapped", [5093]], [[43958, 43958], "mapped", [5094]], [[43959, 43959], "mapped", [5095]], [[43960, 43960], "mapped", [5096]], [[43961, 43961], "mapped", [5097]], [[43962, 43962], "mapped", [5098]], [[43963, 43963], "mapped", [5099]], [[43964, 43964], "mapped", [5100]], [[43965, 43965], "mapped", [5101]], [[43966, 43966], "mapped", [5102]], [[43967, 43967], "mapped", [5103]], [[43968, 44010], "valid"], [[44011, 44011], "valid", [], "NV8"], [[44012, 44013], "valid"], [[44014, 44015], "disallowed"], [[44016, 44025], "valid"], [[44026, 44031], "disallowed"], [[44032, 55203], "valid"], [[55204, 55215], "disallowed"], [[55216, 55238], "valid", [], "NV8"], [[55239, 55242], "disallowed"], [[55243, 55291], "valid", [], "NV8"], [[55292, 55295], "disallowed"], [[55296, 57343], "disallowed"], [[57344, 63743], "disallowed"], [[63744, 63744], "mapped", [35912]], [[63745, 63745], "mapped", [26356]], [[63746, 63746], "mapped", [36554]], [[63747, 63747], "mapped", [36040]], [[63748, 63748], "mapped", [28369]], [[63749, 63749], "mapped", [20018]], [[63750, 63750], "mapped", [21477]], [[63751, 63752], "mapped", [40860]], [[63753, 63753], "mapped", [22865]], [[63754, 63754], "mapped", [37329]], [[63755, 63755], "mapped", [21895]], [[63756, 63756], "mapped", [22856]], [[63757, 63757], "mapped", [25078]], [[63758, 63758], "mapped", [30313]], [[63759, 63759], "mapped", [32645]], [[63760, 63760], "mapped", [34367]], [[63761, 63761], "mapped", [34746]], [[63762, 63762], "mapped", [35064]], [[63763, 63763], "mapped", [37007]], [[63764, 63764], "mapped", [27138]], [[63765, 63765], "mapped", [27931]], [[63766, 63766], "mapped", [28889]], [[63767, 63767], "mapped", [29662]], [[63768, 63768], "mapped", [33853]], [[63769, 63769], "mapped", [37226]], [[63770, 63770], "mapped", [39409]], [[63771, 63771], "mapped", [20098]], [[63772, 63772], "mapped", [21365]], [[63773, 63773], "mapped", [27396]], [[63774, 63774], "mapped", [29211]], [[63775, 63775], "mapped", [34349]], [[63776, 63776], "mapped", [40478]], [[63777, 63777], "mapped", [23888]], [[63778, 63778], "mapped", [28651]], [[63779, 63779], "mapped", [34253]], [[63780, 63780], "mapped", [35172]], [[63781, 63781], "mapped", [25289]], [[63782, 63782], "mapped", [33240]], [[63783, 63783], "mapped", [34847]], [[63784, 63784], "mapped", [24266]], [[63785, 63785], "mapped", [26391]], [[63786, 63786], "mapped", [28010]], [[63787, 63787], "mapped", [29436]], [[63788, 63788], "mapped", [37070]], [[63789, 63789], "mapped", [20358]], [[63790, 63790], "mapped", [20919]], [[63791, 63791], "mapped", [21214]], [[63792, 63792], "mapped", [25796]], [[63793, 63793], "mapped", [27347]], [[63794, 63794], "mapped", [29200]], [[63795, 63795], "mapped", [30439]], [[63796, 63796], "mapped", [32769]], [[63797, 63797], "mapped", [34310]], [[63798, 63798], "mapped", [34396]], [[63799, 63799], "mapped", [36335]], [[63800, 63800], "mapped", [38706]], [[63801, 63801], "mapped", [39791]], [[63802, 63802], "mapped", [40442]], [[63803, 63803], "mapped", [30860]], [[63804, 63804], "mapped", [31103]], [[63805, 63805], "mapped", [32160]], [[63806, 63806], "mapped", [33737]], [[63807, 63807], "mapped", [37636]], [[63808, 63808], "mapped", [40575]], [[63809, 63809], "mapped", [35542]], [[63810, 63810], "mapped", [22751]], [[63811, 63811], "mapped", [24324]], [[63812, 63812], "mapped", [31840]], [[63813, 63813], "mapped", [32894]], [[63814, 63814], "mapped", [29282]], [[63815, 63815], "mapped", [30922]], [[63816, 63816], "mapped", [36034]], [[63817, 63817], "mapped", [38647]], [[63818, 63818], "mapped", [22744]], [[63819, 63819], "mapped", [23650]], [[63820, 63820], "mapped", [27155]], [[63821, 63821], "mapped", [28122]], [[63822, 63822], "mapped", [28431]], [[63823, 63823], "mapped", [32047]], [[63824, 63824], "mapped", [32311]], [[63825, 63825], "mapped", [38475]], [[63826, 63826], "mapped", [21202]], [[63827, 63827], "mapped", [32907]], [[63828, 63828], "mapped", [20956]], [[63829, 63829], "mapped", [20940]], [[63830, 63830], "mapped", [31260]], [[63831, 63831], "mapped", [32190]], [[63832, 63832], "mapped", [33777]], [[63833, 63833], "mapped", [38517]], [[63834, 63834], "mapped", [35712]], [[63835, 63835], "mapped", [25295]], [[63836, 63836], "mapped", [27138]], [[63837, 63837], "mapped", [35582]], [[63838, 63838], "mapped", [20025]], [[63839, 63839], "mapped", [23527]], [[63840, 63840], "mapped", [24594]], [[63841, 63841], "mapped", [29575]], [[63842, 63842], "mapped", [30064]], [[63843, 63843], "mapped", [21271]], [[63844, 63844], "mapped", [30971]], [[63845, 63845], "mapped", [20415]], [[63846, 63846], "mapped", [24489]], [[63847, 63847], "mapped", [19981]], [[63848, 63848], "mapped", [27852]], [[63849, 63849], "mapped", [25976]], [[63850, 63850], "mapped", [32034]], [[63851, 63851], "mapped", [21443]], [[63852, 63852], "mapped", [22622]], [[63853, 63853], "mapped", [30465]], [[63854, 63854], "mapped", [33865]], [[63855, 63855], "mapped", [35498]], [[63856, 63856], "mapped", [27578]], [[63857, 63857], "mapped", [36784]], [[63858, 63858], "mapped", [27784]], [[63859, 63859], "mapped", [25342]], [[63860, 63860], "mapped", [33509]], [[63861, 63861], "mapped", [25504]], [[63862, 63862], "mapped", [30053]], [[63863, 63863], "mapped", [20142]], [[63864, 63864], "mapped", [20841]], [[63865, 63865], "mapped", [20937]], [[63866, 63866], "mapped", [26753]], [[63867, 63867], "mapped", [31975]], [[63868, 63868], "mapped", [33391]], [[63869, 63869], "mapped", [35538]], [[63870, 63870], "mapped", [37327]], [[63871, 63871], "mapped", [21237]], [[63872, 63872], "mapped", [21570]], [[63873, 63873], "mapped", [22899]], [[63874, 63874], "mapped", [24300]], [[63875, 63875], "mapped", [26053]], [[63876, 63876], "mapped", [28670]], [[63877, 63877], "mapped", [31018]], [[63878, 63878], "mapped", [38317]], [[63879, 63879], "mapped", [39530]], [[63880, 63880], "mapped", [40599]], [[63881, 63881], "mapped", [40654]], [[63882, 63882], "mapped", [21147]], [[63883, 63883], "mapped", [26310]], [[63884, 63884], "mapped", [27511]], [[63885, 63885], "mapped", [36706]], [[63886, 63886], "mapped", [24180]], [[63887, 63887], "mapped", [24976]], [[63888, 63888], "mapped", [25088]], [[63889, 63889], "mapped", [25754]], [[63890, 63890], "mapped", [28451]], [[63891, 63891], "mapped", [29001]], [[63892, 63892], "mapped", [29833]], [[63893, 63893], "mapped", [31178]], [[63894, 63894], "mapped", [32244]], [[63895, 63895], "mapped", [32879]], [[63896, 63896], "mapped", [36646]], [[63897, 63897], "mapped", [34030]], [[63898, 63898], "mapped", [36899]], [[63899, 63899], "mapped", [37706]], [[63900, 63900], "mapped", [21015]], [[63901, 63901], "mapped", [21155]], [[63902, 63902], "mapped", [21693]], [[63903, 63903], "mapped", [28872]], [[63904, 63904], "mapped", [35010]], [[63905, 63905], "mapped", [35498]], [[63906, 63906], "mapped", [24265]], [[63907, 63907], "mapped", [24565]], [[63908, 63908], "mapped", [25467]], [[63909, 63909], "mapped", [27566]], [[63910, 63910], "mapped", [31806]], [[63911, 63911], "mapped", [29557]], [[63912, 63912], "mapped", [20196]], [[63913, 63913], "mapped", [22265]], [[63914, 63914], "mapped", [23527]], [[63915, 63915], "mapped", [23994]], [[63916, 63916], "mapped", [24604]], [[63917, 63917], "mapped", [29618]], [[63918, 63918], "mapped", [29801]], [[63919, 63919], "mapped", [32666]], [[63920, 63920], "mapped", [32838]], [[63921, 63921], "mapped", [37428]], [[63922, 63922], "mapped", [38646]], [[63923, 63923], "mapped", [38728]], [[63924, 63924], "mapped", [38936]], [[63925, 63925], "mapped", [20363]], [[63926, 63926], "mapped", [31150]], [[63927, 63927], "mapped", [37300]], [[63928, 63928], "mapped", [38584]], [[63929, 63929], "mapped", [24801]], [[63930, 63930], "mapped", [20102]], [[63931, 63931], "mapped", [20698]], [[63932, 63932], "mapped", [23534]], [[63933, 63933], "mapped", [23615]], [[63934, 63934], "mapped", [26009]], [[63935, 63935], "mapped", [27138]], [[63936, 63936], "mapped", [29134]], [[63937, 63937], "mapped", [30274]], [[63938, 63938], "mapped", [34044]], [[63939, 63939], "mapped", [36988]], [[63940, 63940], "mapped", [40845]], [[63941, 63941], "mapped", [26248]], [[63942, 63942], "mapped", [38446]], [[63943, 63943], "mapped", [21129]], [[63944, 63944], "mapped", [26491]], [[63945, 63945], "mapped", [26611]], [[63946, 63946], "mapped", [27969]], [[63947, 63947], "mapped", [28316]], [[63948, 63948], "mapped", [29705]], [[63949, 63949], "mapped", [30041]], [[63950, 63950], "mapped", [30827]], [[63951, 63951], "mapped", [32016]], [[63952, 63952], "mapped", [39006]], [[63953, 63953], "mapped", [20845]], [[63954, 63954], "mapped", [25134]], [[63955, 63955], "mapped", [38520]], [[63956, 63956], "mapped", [20523]], [[63957, 63957], "mapped", [23833]], [[63958, 63958], "mapped", [28138]], [[63959, 63959], "mapped", [36650]], [[63960, 63960], "mapped", [24459]], [[63961, 63961], "mapped", [24900]], [[63962, 63962], "mapped", [26647]], [[63963, 63963], "mapped", [29575]], [[63964, 63964], "mapped", [38534]], [[63965, 63965], "mapped", [21033]], [[63966, 63966], "mapped", [21519]], [[63967, 63967], "mapped", [23653]], [[63968, 63968], "mapped", [26131]], [[63969, 63969], "mapped", [26446]], [[63970, 63970], "mapped", [26792]], [[63971, 63971], "mapped", [27877]], [[63972, 63972], "mapped", [29702]], [[63973, 63973], "mapped", [30178]], [[63974, 63974], "mapped", [32633]], [[63975, 63975], "mapped", [35023]], [[63976, 63976], "mapped", [35041]], [[63977, 63977], "mapped", [37324]], [[63978, 63978], "mapped", [38626]], [[63979, 63979], "mapped", [21311]], [[63980, 63980], "mapped", [28346]], [[63981, 63981], "mapped", [21533]], [[63982, 63982], "mapped", [29136]], [[63983, 63983], "mapped", [29848]], [[63984, 63984], "mapped", [34298]], [[63985, 63985], "mapped", [38563]], [[63986, 63986], "mapped", [40023]], [[63987, 63987], "mapped", [40607]], [[63988, 63988], "mapped", [26519]], [[63989, 63989], "mapped", [28107]], [[63990, 63990], "mapped", [33256]], [[63991, 63991], "mapped", [31435]], [[63992, 63992], "mapped", [31520]], [[63993, 63993], "mapped", [31890]], [[63994, 63994], "mapped", [29376]], [[63995, 63995], "mapped", [28825]], [[63996, 63996], "mapped", [35672]], [[63997, 63997], "mapped", [20160]], [[63998, 63998], "mapped", [33590]], [[63999, 63999], "mapped", [21050]], [[64e3, 64e3], "mapped", [20999]], [[64001, 64001], "mapped", [24230]], [[64002, 64002], "mapped", [25299]], [[64003, 64003], "mapped", [31958]], [[64004, 64004], "mapped", [23429]], [[64005, 64005], "mapped", [27934]], [[64006, 64006], "mapped", [26292]], [[64007, 64007], "mapped", [36667]], [[64008, 64008], "mapped", [34892]], [[64009, 64009], "mapped", [38477]], [[64010, 64010], "mapped", [35211]], [[64011, 64011], "mapped", [24275]], [[64012, 64012], "mapped", [20800]], [[64013, 64013], "mapped", [21952]], [[64014, 64015], "valid"], [[64016, 64016], "mapped", [22618]], [[64017, 64017], "valid"], [[64018, 64018], "mapped", [26228]], [[64019, 64020], "valid"], [[64021, 64021], "mapped", [20958]], [[64022, 64022], "mapped", [29482]], [[64023, 64023], "mapped", [30410]], [[64024, 64024], "mapped", [31036]], [[64025, 64025], "mapped", [31070]], [[64026, 64026], "mapped", [31077]], [[64027, 64027], "mapped", [31119]], [[64028, 64028], "mapped", [38742]], [[64029, 64029], "mapped", [31934]], [[64030, 64030], "mapped", [32701]], [[64031, 64031], "valid"], [[64032, 64032], "mapped", [34322]], [[64033, 64033], "valid"], [[64034, 64034], "mapped", [35576]], [[64035, 64036], "valid"], [[64037, 64037], "mapped", [36920]], [[64038, 64038], "mapped", [37117]], [[64039, 64041], "valid"], [[64042, 64042], "mapped", [39151]], [[64043, 64043], "mapped", [39164]], [[64044, 64044], "mapped", [39208]], [[64045, 64045], "mapped", [40372]], [[64046, 64046], "mapped", [37086]], [[64047, 64047], "mapped", [38583]], [[64048, 64048], "mapped", [20398]], [[64049, 64049], "mapped", [20711]], [[64050, 64050], "mapped", [20813]], [[64051, 64051], "mapped", [21193]], [[64052, 64052], "mapped", [21220]], [[64053, 64053], "mapped", [21329]], [[64054, 64054], "mapped", [21917]], [[64055, 64055], "mapped", [22022]], [[64056, 64056], "mapped", [22120]], [[64057, 64057], "mapped", [22592]], [[64058, 64058], "mapped", [22696]], [[64059, 64059], "mapped", [23652]], [[64060, 64060], "mapped", [23662]], [[64061, 64061], "mapped", [24724]], [[64062, 64062], "mapped", [24936]], [[64063, 64063], "mapped", [24974]], [[64064, 64064], "mapped", [25074]], [[64065, 64065], "mapped", [25935]], [[64066, 64066], "mapped", [26082]], [[64067, 64067], "mapped", [26257]], [[64068, 64068], "mapped", [26757]], [[64069, 64069], "mapped", [28023]], [[64070, 64070], "mapped", [28186]], [[64071, 64071], "mapped", [28450]], [[64072, 64072], "mapped", [29038]], [[64073, 64073], "mapped", [29227]], [[64074, 64074], "mapped", [29730]], [[64075, 64075], "mapped", [30865]], [[64076, 64076], "mapped", [31038]], [[64077, 64077], "mapped", [31049]], [[64078, 64078], "mapped", [31048]], [[64079, 64079], "mapped", [31056]], [[64080, 64080], "mapped", [31062]], [[64081, 64081], "mapped", [31069]], [[64082, 64082], "mapped", [31117]], [[64083, 64083], "mapped", [31118]], [[64084, 64084], "mapped", [31296]], [[64085, 64085], "mapped", [31361]], [[64086, 64086], "mapped", [31680]], [[64087, 64087], "mapped", [32244]], [[64088, 64088], "mapped", [32265]], [[64089, 64089], "mapped", [32321]], [[64090, 64090], "mapped", [32626]], [[64091, 64091], "mapped", [32773]], [[64092, 64092], "mapped", [33261]], [[64093, 64094], "mapped", [33401]], [[64095, 64095], "mapped", [33879]], [[64096, 64096], "mapped", [35088]], [[64097, 64097], "mapped", [35222]], [[64098, 64098], "mapped", [35585]], [[64099, 64099], "mapped", [35641]], [[64100, 64100], "mapped", [36051]], [[64101, 64101], "mapped", [36104]], [[64102, 64102], "mapped", [36790]], [[64103, 64103], "mapped", [36920]], [[64104, 64104], "mapped", [38627]], [[64105, 64105], "mapped", [38911]], [[64106, 64106], "mapped", [38971]], [[64107, 64107], "mapped", [24693]], [[64108, 64108], "mapped", [148206]], [[64109, 64109], "mapped", [33304]], [[64110, 64111], "disallowed"], [[64112, 64112], "mapped", [20006]], [[64113, 64113], "mapped", [20917]], [[64114, 64114], "mapped", [20840]], [[64115, 64115], "mapped", [20352]], [[64116, 64116], "mapped", [20805]], [[64117, 64117], "mapped", [20864]], [[64118, 64118], "mapped", [21191]], [[64119, 64119], "mapped", [21242]], [[64120, 64120], "mapped", [21917]], [[64121, 64121], "mapped", [21845]], [[64122, 64122], "mapped", [21913]], [[64123, 64123], "mapped", [21986]], [[64124, 64124], "mapped", [22618]], [[64125, 64125], "mapped", [22707]], [[64126, 64126], "mapped", [22852]], [[64127, 64127], "mapped", [22868]], [[64128, 64128], "mapped", [23138]], [[64129, 64129], "mapped", [23336]], [[64130, 64130], "mapped", [24274]], [[64131, 64131], "mapped", [24281]], [[64132, 64132], "mapped", [24425]], [[64133, 64133], "mapped", [24493]], [[64134, 64134], "mapped", [24792]], [[64135, 64135], "mapped", [24910]], [[64136, 64136], "mapped", [24840]], [[64137, 64137], "mapped", [24974]], [[64138, 64138], "mapped", [24928]], [[64139, 64139], "mapped", [25074]], [[64140, 64140], "mapped", [25140]], [[64141, 64141], "mapped", [25540]], [[64142, 64142], "mapped", [25628]], [[64143, 64143], "mapped", [25682]], [[64144, 64144], "mapped", [25942]], [[64145, 64145], "mapped", [26228]], [[64146, 64146], "mapped", [26391]], [[64147, 64147], "mapped", [26395]], [[64148, 64148], "mapped", [26454]], [[64149, 64149], "mapped", [27513]], [[64150, 64150], "mapped", [27578]], [[64151, 64151], "mapped", [27969]], [[64152, 64152], "mapped", [28379]], [[64153, 64153], "mapped", [28363]], [[64154, 64154], "mapped", [28450]], [[64155, 64155], "mapped", [28702]], [[64156, 64156], "mapped", [29038]], [[64157, 64157], "mapped", [30631]], [[64158, 64158], "mapped", [29237]], [[64159, 64159], "mapped", [29359]], [[64160, 64160], "mapped", [29482]], [[64161, 64161], "mapped", [29809]], [[64162, 64162], "mapped", [29958]], [[64163, 64163], "mapped", [30011]], [[64164, 64164], "mapped", [30237]], [[64165, 64165], "mapped", [30239]], [[64166, 64166], "mapped", [30410]], [[64167, 64167], "mapped", [30427]], [[64168, 64168], "mapped", [30452]], [[64169, 64169], "mapped", [30538]], [[64170, 64170], "mapped", [30528]], [[64171, 64171], "mapped", [30924]], [[64172, 64172], "mapped", [31409]], [[64173, 64173], "mapped", [31680]], [[64174, 64174], "mapped", [31867]], [[64175, 64175], "mapped", [32091]], [[64176, 64176], "mapped", [32244]], [[64177, 64177], "mapped", [32574]], [[64178, 64178], "mapped", [32773]], [[64179, 64179], "mapped", [33618]], [[64180, 64180], "mapped", [33775]], [[64181, 64181], "mapped", [34681]], [[64182, 64182], "mapped", [35137]], [[64183, 64183], "mapped", [35206]], [[64184, 64184], "mapped", [35222]], [[64185, 64185], "mapped", [35519]], [[64186, 64186], "mapped", [35576]], [[64187, 64187], "mapped", [35531]], [[64188, 64188], "mapped", [35585]], [[64189, 64189], "mapped", [35582]], [[64190, 64190], "mapped", [35565]], [[64191, 64191], "mapped", [35641]], [[64192, 64192], "mapped", [35722]], [[64193, 64193], "mapped", [36104]], [[64194, 64194], "mapped", [36664]], [[64195, 64195], "mapped", [36978]], [[64196, 64196], "mapped", [37273]], [[64197, 64197], "mapped", [37494]], [[64198, 64198], "mapped", [38524]], [[64199, 64199], "mapped", [38627]], [[64200, 64200], "mapped", [38742]], [[64201, 64201], "mapped", [38875]], [[64202, 64202], "mapped", [38911]], [[64203, 64203], "mapped", [38923]], [[64204, 64204], "mapped", [38971]], [[64205, 64205], "mapped", [39698]], [[64206, 64206], "mapped", [40860]], [[64207, 64207], "mapped", [141386]], [[64208, 64208], "mapped", [141380]], [[64209, 64209], "mapped", [144341]], [[64210, 64210], "mapped", [15261]], [[64211, 64211], "mapped", [16408]], [[64212, 64212], "mapped", [16441]], [[64213, 64213], "mapped", [152137]], [[64214, 64214], "mapped", [154832]], [[64215, 64215], "mapped", [163539]], [[64216, 64216], "mapped", [40771]], [[64217, 64217], "mapped", [40846]], [[64218, 64255], "disallowed"], [[64256, 64256], "mapped", [102, 102]], [[64257, 64257], "mapped", [102, 105]], [[64258, 64258], "mapped", [102, 108]], [[64259, 64259], "mapped", [102, 102, 105]], [[64260, 64260], "mapped", [102, 102, 108]], [[64261, 64262], "mapped", [115, 116]], [[64263, 64274], "disallowed"], [[64275, 64275], "mapped", [1396, 1398]], [[64276, 64276], "mapped", [1396, 1381]], [[64277, 64277], "mapped", [1396, 1387]], [[64278, 64278], "mapped", [1406, 1398]], [[64279, 64279], "mapped", [1396, 1389]], [[64280, 64284], "disallowed"], [[64285, 64285], "mapped", [1497, 1460]], [[64286, 64286], "valid"], [[64287, 64287], "mapped", [1522, 1463]], [[64288, 64288], "mapped", [1506]], [[64289, 64289], "mapped", [1488]], [[64290, 64290], "mapped", [1491]], [[64291, 64291], "mapped", [1492]], [[64292, 64292], "mapped", [1499]], [[64293, 64293], "mapped", [1500]], [[64294, 64294], "mapped", [1501]], [[64295, 64295], "mapped", [1512]], [[64296, 64296], "mapped", [1514]], [[64297, 64297], "disallowed_STD3_mapped", [43]], [[64298, 64298], "mapped", [1513, 1473]], [[64299, 64299], "mapped", [1513, 1474]], [[64300, 64300], "mapped", [1513, 1468, 1473]], [[64301, 64301], "mapped", [1513, 1468, 1474]], [[64302, 64302], "mapped", [1488, 1463]], [[64303, 64303], "mapped", [1488, 1464]], [[64304, 64304], "mapped", [1488, 1468]], [[64305, 64305], "mapped", [1489, 1468]], [[64306, 64306], "mapped", [1490, 1468]], [[64307, 64307], "mapped", [1491, 1468]], [[64308, 64308], "mapped", [1492, 1468]], [[64309, 64309], "mapped", [1493, 1468]], [[64310, 64310], "mapped", [1494, 1468]], [[64311, 64311], "disallowed"], [[64312, 64312], "mapped", [1496, 1468]], [[64313, 64313], "mapped", [1497, 1468]], [[64314, 64314], "mapped", [1498, 1468]], [[64315, 64315], "mapped", [1499, 1468]], [[64316, 64316], "mapped", [1500, 1468]], [[64317, 64317], "disallowed"], [[64318, 64318], "mapped", [1502, 1468]], [[64319, 64319], "disallowed"], [[64320, 64320], "mapped", [1504, 1468]], [[64321, 64321], "mapped", [1505, 1468]], [[64322, 64322], "disallowed"], [[64323, 64323], "mapped", [1507, 1468]], [[64324, 64324], "mapped", [1508, 1468]], [[64325, 64325], "disallowed"], [[64326, 64326], "mapped", [1510, 1468]], [[64327, 64327], "mapped", [1511, 1468]], [[64328, 64328], "mapped", [1512, 1468]], [[64329, 64329], "mapped", [1513, 1468]], [[64330, 64330], "mapped", [1514, 1468]], [[64331, 64331], "mapped", [1493, 1465]], [[64332, 64332], "mapped", [1489, 1471]], [[64333, 64333], "mapped", [1499, 1471]], [[64334, 64334], "mapped", [1508, 1471]], [[64335, 64335], "mapped", [1488, 1500]], [[64336, 64337], "mapped", [1649]], [[64338, 64341], "mapped", [1659]], [[64342, 64345], "mapped", [1662]], [[64346, 64349], "mapped", [1664]], [[64350, 64353], "mapped", [1658]], [[64354, 64357], "mapped", [1663]], [[64358, 64361], "mapped", [1657]], [[64362, 64365], "mapped", [1700]], [[64366, 64369], "mapped", [1702]], [[64370, 64373], "mapped", [1668]], [[64374, 64377], "mapped", [1667]], [[64378, 64381], "mapped", [1670]], [[64382, 64385], "mapped", [1671]], [[64386, 64387], "mapped", [1677]], [[64388, 64389], "mapped", [1676]], [[64390, 64391], "mapped", [1678]], [[64392, 64393], "mapped", [1672]], [[64394, 64395], "mapped", [1688]], [[64396, 64397], "mapped", [1681]], [[64398, 64401], "mapped", [1705]], [[64402, 64405], "mapped", [1711]], [[64406, 64409], "mapped", [1715]], [[64410, 64413], "mapped", [1713]], [[64414, 64415], "mapped", [1722]], [[64416, 64419], "mapped", [1723]], [[64420, 64421], "mapped", [1728]], [[64422, 64425], "mapped", [1729]], [[64426, 64429], "mapped", [1726]], [[64430, 64431], "mapped", [1746]], [[64432, 64433], "mapped", [1747]], [[64434, 64449], "valid", [], "NV8"], [[64450, 64466], "disallowed"], [[64467, 64470], "mapped", [1709]], [[64471, 64472], "mapped", [1735]], [[64473, 64474], "mapped", [1734]], [[64475, 64476], "mapped", [1736]], [[64477, 64477], "mapped", [1735, 1652]], [[64478, 64479], "mapped", [1739]], [[64480, 64481], "mapped", [1733]], [[64482, 64483], "mapped", [1737]], [[64484, 64487], "mapped", [1744]], [[64488, 64489], "mapped", [1609]], [[64490, 64491], "mapped", [1574, 1575]], [[64492, 64493], "mapped", [1574, 1749]], [[64494, 64495], "mapped", [1574, 1608]], [[64496, 64497], "mapped", [1574, 1735]], [[64498, 64499], "mapped", [1574, 1734]], [[64500, 64501], "mapped", [1574, 1736]], [[64502, 64504], "mapped", [1574, 1744]], [[64505, 64507], "mapped", [1574, 1609]], [[64508, 64511], "mapped", [1740]], [[64512, 64512], "mapped", [1574, 1580]], [[64513, 64513], "mapped", [1574, 1581]], [[64514, 64514], "mapped", [1574, 1605]], [[64515, 64515], "mapped", [1574, 1609]], [[64516, 64516], "mapped", [1574, 1610]], [[64517, 64517], "mapped", [1576, 1580]], [[64518, 64518], "mapped", [1576, 1581]], [[64519, 64519], "mapped", [1576, 1582]], [[64520, 64520], "mapped", [1576, 1605]], [[64521, 64521], "mapped", [1576, 1609]], [[64522, 64522], "mapped", [1576, 1610]], [[64523, 64523], "mapped", [1578, 1580]], [[64524, 64524], "mapped", [1578, 1581]], [[64525, 64525], "mapped", [1578, 1582]], [[64526, 64526], "mapped", [1578, 1605]], [[64527, 64527], "mapped", [1578, 1609]], [[64528, 64528], "mapped", [1578, 1610]], [[64529, 64529], "mapped", [1579, 1580]], [[64530, 64530], "mapped", [1579, 1605]], [[64531, 64531], "mapped", [1579, 1609]], [[64532, 64532], "mapped", [1579, 1610]], [[64533, 64533], "mapped", [1580, 1581]], [[64534, 64534], "mapped", [1580, 1605]], [[64535, 64535], "mapped", [1581, 1580]], [[64536, 64536], "mapped", [1581, 1605]], [[64537, 64537], "mapped", [1582, 1580]], [[64538, 64538], "mapped", [1582, 1581]], [[64539, 64539], "mapped", [1582, 1605]], [[64540, 64540], "mapped", [1587, 1580]], [[64541, 64541], "mapped", [1587, 1581]], [[64542, 64542], "mapped", [1587, 1582]], [[64543, 64543], "mapped", [1587, 1605]], [[64544, 64544], "mapped", [1589, 1581]], [[64545, 64545], "mapped", [1589, 1605]], [[64546, 64546], "mapped", [1590, 1580]], [[64547, 64547], "mapped", [1590, 1581]], [[64548, 64548], "mapped", [1590, 1582]], [[64549, 64549], "mapped", [1590, 1605]], [[64550, 64550], "mapped", [1591, 1581]], [[64551, 64551], "mapped", [1591, 1605]], [[64552, 64552], "mapped", [1592, 1605]], [[64553, 64553], "mapped", [1593, 1580]], [[64554, 64554], "mapped", [1593, 1605]], [[64555, 64555], "mapped", [1594, 1580]], [[64556, 64556], "mapped", [1594, 1605]], [[64557, 64557], "mapped", [1601, 1580]], [[64558, 64558], "mapped", [1601, 1581]], [[64559, 64559], "mapped", [1601, 1582]], [[64560, 64560], "mapped", [1601, 1605]], [[64561, 64561], "mapped", [1601, 1609]], [[64562, 64562], "mapped", [1601, 1610]], [[64563, 64563], "mapped", [1602, 1581]], [[64564, 64564], "mapped", [1602, 1605]], [[64565, 64565], "mapped", [1602, 1609]], [[64566, 64566], "mapped", [1602, 1610]], [[64567, 64567], "mapped", [1603, 1575]], [[64568, 64568], "mapped", [1603, 1580]], [[64569, 64569], "mapped", [1603, 1581]], [[64570, 64570], "mapped", [1603, 1582]], [[64571, 64571], "mapped", [1603, 1604]], [[64572, 64572], "mapped", [1603, 1605]], [[64573, 64573], "mapped", [1603, 1609]], [[64574, 64574], "mapped", [1603, 1610]], [[64575, 64575], "mapped", [1604, 1580]], [[64576, 64576], "mapped", [1604, 1581]], [[64577, 64577], "mapped", [1604, 1582]], [[64578, 64578], "mapped", [1604, 1605]], [[64579, 64579], "mapped", [1604, 1609]], [[64580, 64580], "mapped", [1604, 1610]], [[64581, 64581], "mapped", [1605, 1580]], [[64582, 64582], "mapped", [1605, 1581]], [[64583, 64583], "mapped", [1605, 1582]], [[64584, 64584], "mapped", [1605, 1605]], [[64585, 64585], "mapped", [1605, 1609]], [[64586, 64586], "mapped", [1605, 1610]], [[64587, 64587], "mapped", [1606, 1580]], [[64588, 64588], "mapped", [1606, 1581]], [[64589, 64589], "mapped", [1606, 1582]], [[64590, 64590], "mapped", [1606, 1605]], [[64591, 64591], "mapped", [1606, 1609]], [[64592, 64592], "mapped", [1606, 1610]], [[64593, 64593], "mapped", [1607, 1580]], [[64594, 64594], "mapped", [1607, 1605]], [[64595, 64595], "mapped", [1607, 1609]], [[64596, 64596], "mapped", [1607, 1610]], [[64597, 64597], "mapped", [1610, 1580]], [[64598, 64598], "mapped", [1610, 1581]], [[64599, 64599], "mapped", [1610, 1582]], [[64600, 64600], "mapped", [1610, 1605]], [[64601, 64601], "mapped", [1610, 1609]], [[64602, 64602], "mapped", [1610, 1610]], [[64603, 64603], "mapped", [1584, 1648]], [[64604, 64604], "mapped", [1585, 1648]], [[64605, 64605], "mapped", [1609, 1648]], [[64606, 64606], "disallowed_STD3_mapped", [32, 1612, 1617]], [[64607, 64607], "disallowed_STD3_mapped", [32, 1613, 1617]], [[64608, 64608], "disallowed_STD3_mapped", [32, 1614, 1617]], [[64609, 64609], "disallowed_STD3_mapped", [32, 1615, 1617]], [[64610, 64610], "disallowed_STD3_mapped", [32, 1616, 1617]], [[64611, 64611], "disallowed_STD3_mapped", [32, 1617, 1648]], [[64612, 64612], "mapped", [1574, 1585]], [[64613, 64613], "mapped", [1574, 1586]], [[64614, 64614], "mapped", [1574, 1605]], [[64615, 64615], "mapped", [1574, 1606]], [[64616, 64616], "mapped", [1574, 1609]], [[64617, 64617], "mapped", [1574, 1610]], [[64618, 64618], "mapped", [1576, 1585]], [[64619, 64619], "mapped", [1576, 1586]], [[64620, 64620], "mapped", [1576, 1605]], [[64621, 64621], "mapped", [1576, 1606]], [[64622, 64622], "mapped", [1576, 1609]], [[64623, 64623], "mapped", [1576, 1610]], [[64624, 64624], "mapped", [1578, 1585]], [[64625, 64625], "mapped", [1578, 1586]], [[64626, 64626], "mapped", [1578, 1605]], [[64627, 64627], "mapped", [1578, 1606]], [[64628, 64628], "mapped", [1578, 1609]], [[64629, 64629], "mapped", [1578, 1610]], [[64630, 64630], "mapped", [1579, 1585]], [[64631, 64631], "mapped", [1579, 1586]], [[64632, 64632], "mapped", [1579, 1605]], [[64633, 64633], "mapped", [1579, 1606]], [[64634, 64634], "mapped", [1579, 1609]], [[64635, 64635], "mapped", [1579, 1610]], [[64636, 64636], "mapped", [1601, 1609]], [[64637, 64637], "mapped", [1601, 1610]], [[64638, 64638], "mapped", [1602, 1609]], [[64639, 64639], "mapped", [1602, 1610]], [[64640, 64640], "mapped", [1603, 1575]], [[64641, 64641], "mapped", [1603, 1604]], [[64642, 64642], "mapped", [1603, 1605]], [[64643, 64643], "mapped", [1603, 1609]], [[64644, 64644], "mapped", [1603, 1610]], [[64645, 64645], "mapped", [1604, 1605]], [[64646, 64646], "mapped", [1604, 1609]], [[64647, 64647], "mapped", [1604, 1610]], [[64648, 64648], "mapped", [1605, 1575]], [[64649, 64649], "mapped", [1605, 1605]], [[64650, 64650], "mapped", [1606, 1585]], [[64651, 64651], "mapped", [1606, 1586]], [[64652, 64652], "mapped", [1606, 1605]], [[64653, 64653], "mapped", [1606, 1606]], [[64654, 64654], "mapped", [1606, 1609]], [[64655, 64655], "mapped", [1606, 1610]], [[64656, 64656], "mapped", [1609, 1648]], [[64657, 64657], "mapped", [1610, 1585]], [[64658, 64658], "mapped", [1610, 1586]], [[64659, 64659], "mapped", [1610, 1605]], [[64660, 64660], "mapped", [1610, 1606]], [[64661, 64661], "mapped", [1610, 1609]], [[64662, 64662], "mapped", [1610, 1610]], [[64663, 64663], "mapped", [1574, 1580]], [[64664, 64664], "mapped", [1574, 1581]], [[64665, 64665], "mapped", [1574, 1582]], [[64666, 64666], "mapped", [1574, 1605]], [[64667, 64667], "mapped", [1574, 1607]], [[64668, 64668], "mapped", [1576, 1580]], [[64669, 64669], "mapped", [1576, 1581]], [[64670, 64670], "mapped", [1576, 1582]], [[64671, 64671], "mapped", [1576, 1605]], [[64672, 64672], "mapped", [1576, 1607]], [[64673, 64673], "mapped", [1578, 1580]], [[64674, 64674], "mapped", [1578, 1581]], [[64675, 64675], "mapped", [1578, 1582]], [[64676, 64676], "mapped", [1578, 1605]], [[64677, 64677], "mapped", [1578, 1607]], [[64678, 64678], "mapped", [1579, 1605]], [[64679, 64679], "mapped", [1580, 1581]], [[64680, 64680], "mapped", [1580, 1605]], [[64681, 64681], "mapped", [1581, 1580]], [[64682, 64682], "mapped", [1581, 1605]], [[64683, 64683], "mapped", [1582, 1580]], [[64684, 64684], "mapped", [1582, 1605]], [[64685, 64685], "mapped", [1587, 1580]], [[64686, 64686], "mapped", [1587, 1581]], [[64687, 64687], "mapped", [1587, 1582]], [[64688, 64688], "mapped", [1587, 1605]], [[64689, 64689], "mapped", [1589, 1581]], [[64690, 64690], "mapped", [1589, 1582]], [[64691, 64691], "mapped", [1589, 1605]], [[64692, 64692], "mapped", [1590, 1580]], [[64693, 64693], "mapped", [1590, 1581]], [[64694, 64694], "mapped", [1590, 1582]], [[64695, 64695], "mapped", [1590, 1605]], [[64696, 64696], "mapped", [1591, 1581]], [[64697, 64697], "mapped", [1592, 1605]], [[64698, 64698], "mapped", [1593, 1580]], [[64699, 64699], "mapped", [1593, 1605]], [[64700, 64700], "mapped", [1594, 1580]], [[64701, 64701], "mapped", [1594, 1605]], [[64702, 64702], "mapped", [1601, 1580]], [[64703, 64703], "mapped", [1601, 1581]], [[64704, 64704], "mapped", [1601, 1582]], [[64705, 64705], "mapped", [1601, 1605]], [[64706, 64706], "mapped", [1602, 1581]], [[64707, 64707], "mapped", [1602, 1605]], [[64708, 64708], "mapped", [1603, 1580]], [[64709, 64709], "mapped", [1603, 1581]], [[64710, 64710], "mapped", [1603, 1582]], [[64711, 64711], "mapped", [1603, 1604]], [[64712, 64712], "mapped", [1603, 1605]], [[64713, 64713], "mapped", [1604, 1580]], [[64714, 64714], "mapped", [1604, 1581]], [[64715, 64715], "mapped", [1604, 1582]], [[64716, 64716], "mapped", [1604, 1605]], [[64717, 64717], "mapped", [1604, 1607]], [[64718, 64718], "mapped", [1605, 1580]], [[64719, 64719], "mapped", [1605, 1581]], [[64720, 64720], "mapped", [1605, 1582]], [[64721, 64721], "mapped", [1605, 1605]], [[64722, 64722], "mapped", [1606, 1580]], [[64723, 64723], "mapped", [1606, 1581]], [[64724, 64724], "mapped", [1606, 1582]], [[64725, 64725], "mapped", [1606, 1605]], [[64726, 64726], "mapped", [1606, 1607]], [[64727, 64727], "mapped", [1607, 1580]], [[64728, 64728], "mapped", [1607, 1605]], [[64729, 64729], "mapped", [1607, 1648]], [[64730, 64730], "mapped", [1610, 1580]], [[64731, 64731], "mapped", [1610, 1581]], [[64732, 64732], "mapped", [1610, 1582]], [[64733, 64733], "mapped", [1610, 1605]], [[64734, 64734], "mapped", [1610, 1607]], [[64735, 64735], "mapped", [1574, 1605]], [[64736, 64736], "mapped", [1574, 1607]], [[64737, 64737], "mapped", [1576, 1605]], [[64738, 64738], "mapped", [1576, 1607]], [[64739, 64739], "mapped", [1578, 1605]], [[64740, 64740], "mapped", [1578, 1607]], [[64741, 64741], "mapped", [1579, 1605]], [[64742, 64742], "mapped", [1579, 1607]], [[64743, 64743], "mapped", [1587, 1605]], [[64744, 64744], "mapped", [1587, 1607]], [[64745, 64745], "mapped", [1588, 1605]], [[64746, 64746], "mapped", [1588, 1607]], [[64747, 64747], "mapped", [1603, 1604]], [[64748, 64748], "mapped", [1603, 1605]], [[64749, 64749], "mapped", [1604, 1605]], [[64750, 64750], "mapped", [1606, 1605]], [[64751, 64751], "mapped", [1606, 1607]], [[64752, 64752], "mapped", [1610, 1605]], [[64753, 64753], "mapped", [1610, 1607]], [[64754, 64754], "mapped", [1600, 1614, 1617]], [[64755, 64755], "mapped", [1600, 1615, 1617]], [[64756, 64756], "mapped", [1600, 1616, 1617]], [[64757, 64757], "mapped", [1591, 1609]], [[64758, 64758], "mapped", [1591, 1610]], [[64759, 64759], "mapped", [1593, 1609]], [[64760, 64760], "mapped", [1593, 1610]], [[64761, 64761], "mapped", [1594, 1609]], [[64762, 64762], "mapped", [1594, 1610]], [[64763, 64763], "mapped", [1587, 1609]], [[64764, 64764], "mapped", [1587, 1610]], [[64765, 64765], "mapped", [1588, 1609]], [[64766, 64766], "mapped", [1588, 1610]], [[64767, 64767], "mapped", [1581, 1609]], [[64768, 64768], "mapped", [1581, 1610]], [[64769, 64769], "mapped", [1580, 1609]], [[64770, 64770], "mapped", [1580, 1610]], [[64771, 64771], "mapped", [1582, 1609]], [[64772, 64772], "mapped", [1582, 1610]], [[64773, 64773], "mapped", [1589, 1609]], [[64774, 64774], "mapped", [1589, 1610]], [[64775, 64775], "mapped", [1590, 1609]], [[64776, 64776], "mapped", [1590, 1610]], [[64777, 64777], "mapped", [1588, 1580]], [[64778, 64778], "mapped", [1588, 1581]], [[64779, 64779], "mapped", [1588, 1582]], [[64780, 64780], "mapped", [1588, 1605]], [[64781, 64781], "mapped", [1588, 1585]], [[64782, 64782], "mapped", [1587, 1585]], [[64783, 64783], "mapped", [1589, 1585]], [[64784, 64784], "mapped", [1590, 1585]], [[64785, 64785], "mapped", [1591, 1609]], [[64786, 64786], "mapped", [1591, 1610]], [[64787, 64787], "mapped", [1593, 1609]], [[64788, 64788], "mapped", [1593, 1610]], [[64789, 64789], "mapped", [1594, 1609]], [[64790, 64790], "mapped", [1594, 1610]], [[64791, 64791], "mapped", [1587, 1609]], [[64792, 64792], "mapped", [1587, 1610]], [[64793, 64793], "mapped", [1588, 1609]], [[64794, 64794], "mapped", [1588, 1610]], [[64795, 64795], "mapped", [1581, 1609]], [[64796, 64796], "mapped", [1581, 1610]], [[64797, 64797], "mapped", [1580, 1609]], [[64798, 64798], "mapped", [1580, 1610]], [[64799, 64799], "mapped", [1582, 1609]], [[64800, 64800], "mapped", [1582, 1610]], [[64801, 64801], "mapped", [1589, 1609]], [[64802, 64802], "mapped", [1589, 1610]], [[64803, 64803], "mapped", [1590, 1609]], [[64804, 64804], "mapped", [1590, 1610]], [[64805, 64805], "mapped", [1588, 1580]], [[64806, 64806], "mapped", [1588, 1581]], [[64807, 64807], "mapped", [1588, 1582]], [[64808, 64808], "mapped", [1588, 1605]], [[64809, 64809], "mapped", [1588, 1585]], [[64810, 64810], "mapped", [1587, 1585]], [[64811, 64811], "mapped", [1589, 1585]], [[64812, 64812], "mapped", [1590, 1585]], [[64813, 64813], "mapped", [1588, 1580]], [[64814, 64814], "mapped", [1588, 1581]], [[64815, 64815], "mapped", [1588, 1582]], [[64816, 64816], "mapped", [1588, 1605]], [[64817, 64817], "mapped", [1587, 1607]], [[64818, 64818], "mapped", [1588, 1607]], [[64819, 64819], "mapped", [1591, 1605]], [[64820, 64820], "mapped", [1587, 1580]], [[64821, 64821], "mapped", [1587, 1581]], [[64822, 64822], "mapped", [1587, 1582]], [[64823, 64823], "mapped", [1588, 1580]], [[64824, 64824], "mapped", [1588, 1581]], [[64825, 64825], "mapped", [1588, 1582]], [[64826, 64826], "mapped", [1591, 1605]], [[64827, 64827], "mapped", [1592, 1605]], [[64828, 64829], "mapped", [1575, 1611]], [[64830, 64831], "valid", [], "NV8"], [[64832, 64847], "disallowed"], [[64848, 64848], "mapped", [1578, 1580, 1605]], [[64849, 64850], "mapped", [1578, 1581, 1580]], [[64851, 64851], "mapped", [1578, 1581, 1605]], [[64852, 64852], "mapped", [1578, 1582, 1605]], [[64853, 64853], "mapped", [1578, 1605, 1580]], [[64854, 64854], "mapped", [1578, 1605, 1581]], [[64855, 64855], "mapped", [1578, 1605, 1582]], [[64856, 64857], "mapped", [1580, 1605, 1581]], [[64858, 64858], "mapped", [1581, 1605, 1610]], [[64859, 64859], "mapped", [1581, 1605, 1609]], [[64860, 64860], "mapped", [1587, 1581, 1580]], [[64861, 64861], "mapped", [1587, 1580, 1581]], [[64862, 64862], "mapped", [1587, 1580, 1609]], [[64863, 64864], "mapped", [1587, 1605, 1581]], [[64865, 64865], "mapped", [1587, 1605, 1580]], [[64866, 64867], "mapped", [1587, 1605, 1605]], [[64868, 64869], "mapped", [1589, 1581, 1581]], [[64870, 64870], "mapped", [1589, 1605, 1605]], [[64871, 64872], "mapped", [1588, 1581, 1605]], [[64873, 64873], "mapped", [1588, 1580, 1610]], [[64874, 64875], "mapped", [1588, 1605, 1582]], [[64876, 64877], "mapped", [1588, 1605, 1605]], [[64878, 64878], "mapped", [1590, 1581, 1609]], [[64879, 64880], "mapped", [1590, 1582, 1605]], [[64881, 64882], "mapped", [1591, 1605, 1581]], [[64883, 64883], "mapped", [1591, 1605, 1605]], [[64884, 64884], "mapped", [1591, 1605, 1610]], [[64885, 64885], "mapped", [1593, 1580, 1605]], [[64886, 64887], "mapped", [1593, 1605, 1605]], [[64888, 64888], "mapped", [1593, 1605, 1609]], [[64889, 64889], "mapped", [1594, 1605, 1605]], [[64890, 64890], "mapped", [1594, 1605, 1610]], [[64891, 64891], "mapped", [1594, 1605, 1609]], [[64892, 64893], "mapped", [1601, 1582, 1605]], [[64894, 64894], "mapped", [1602, 1605, 1581]], [[64895, 64895], "mapped", [1602, 1605, 1605]], [[64896, 64896], "mapped", [1604, 1581, 1605]], [[64897, 64897], "mapped", [1604, 1581, 1610]], [[64898, 64898], "mapped", [1604, 1581, 1609]], [[64899, 64900], "mapped", [1604, 1580, 1580]], [[64901, 64902], "mapped", [1604, 1582, 1605]], [[64903, 64904], "mapped", [1604, 1605, 1581]], [[64905, 64905], "mapped", [1605, 1581, 1580]], [[64906, 64906], "mapped", [1605, 1581, 1605]], [[64907, 64907], "mapped", [1605, 1581, 1610]], [[64908, 64908], "mapped", [1605, 1580, 1581]], [[64909, 64909], "mapped", [1605, 1580, 1605]], [[64910, 64910], "mapped", [1605, 1582, 1580]], [[64911, 64911], "mapped", [1605, 1582, 1605]], [[64912, 64913], "disallowed"], [[64914, 64914], "mapped", [1605, 1580, 1582]], [[64915, 64915], "mapped", [1607, 1605, 1580]], [[64916, 64916], "mapped", [1607, 1605, 1605]], [[64917, 64917], "mapped", [1606, 1581, 1605]], [[64918, 64918], "mapped", [1606, 1581, 1609]], [[64919, 64920], "mapped", [1606, 1580, 1605]], [[64921, 64921], "mapped", [1606, 1580, 1609]], [[64922, 64922], "mapped", [1606, 1605, 1610]], [[64923, 64923], "mapped", [1606, 1605, 1609]], [[64924, 64925], "mapped", [1610, 1605, 1605]], [[64926, 64926], "mapped", [1576, 1582, 1610]], [[64927, 64927], "mapped", [1578, 1580, 1610]], [[64928, 64928], "mapped", [1578, 1580, 1609]], [[64929, 64929], "mapped", [1578, 1582, 1610]], [[64930, 64930], "mapped", [1578, 1582, 1609]], [[64931, 64931], "mapped", [1578, 1605, 1610]], [[64932, 64932], "mapped", [1578, 1605, 1609]], [[64933, 64933], "mapped", [1580, 1605, 1610]], [[64934, 64934], "mapped", [1580, 1581, 1609]], [[64935, 64935], "mapped", [1580, 1605, 1609]], [[64936, 64936], "mapped", [1587, 1582, 1609]], [[64937, 64937], "mapped", [1589, 1581, 1610]], [[64938, 64938], "mapped", [1588, 1581, 1610]], [[64939, 64939], "mapped", [1590, 1581, 1610]], [[64940, 64940], "mapped", [1604, 1580, 1610]], [[64941, 64941], "mapped", [1604, 1605, 1610]], [[64942, 64942], "mapped", [1610, 1581, 1610]], [[64943, 64943], "mapped", [1610, 1580, 1610]], [[64944, 64944], "mapped", [1610, 1605, 1610]], [[64945, 64945], "mapped", [1605, 1605, 1610]], [[64946, 64946], "mapped", [1602, 1605, 1610]], [[64947, 64947], "mapped", [1606, 1581, 1610]], [[64948, 64948], "mapped", [1602, 1605, 1581]], [[64949, 64949], "mapped", [1604, 1581, 1605]], [[64950, 64950], "mapped", [1593, 1605, 1610]], [[64951, 64951], "mapped", [1603, 1605, 1610]], [[64952, 64952], "mapped", [1606, 1580, 1581]], [[64953, 64953], "mapped", [1605, 1582, 1610]], [[64954, 64954], "mapped", [1604, 1580, 1605]], [[64955, 64955], "mapped", [1603, 1605, 1605]], [[64956, 64956], "mapped", [1604, 1580, 1605]], [[64957, 64957], "mapped", [1606, 1580, 1581]], [[64958, 64958], "mapped", [1580, 1581, 1610]], [[64959, 64959], "mapped", [1581, 1580, 1610]], [[64960, 64960], "mapped", [1605, 1580, 1610]], [[64961, 64961], "mapped", [1601, 1605, 1610]], [[64962, 64962], "mapped", [1576, 1581, 1610]], [[64963, 64963], "mapped", [1603, 1605, 1605]], [[64964, 64964], "mapped", [1593, 1580, 1605]], [[64965, 64965], "mapped", [1589, 1605, 1605]], [[64966, 64966], "mapped", [1587, 1582, 1610]], [[64967, 64967], "mapped", [1606, 1580, 1610]], [[64968, 64975], "disallowed"], [[64976, 65007], "disallowed"], [[65008, 65008], "mapped", [1589, 1604, 1746]], [[65009, 65009], "mapped", [1602, 1604, 1746]], [[65010, 65010], "mapped", [1575, 1604, 1604, 1607]], [[65011, 65011], "mapped", [1575, 1603, 1576, 1585]], [[65012, 65012], "mapped", [1605, 1581, 1605, 1583]], [[65013, 65013], "mapped", [1589, 1604, 1593, 1605]], [[65014, 65014], "mapped", [1585, 1587, 1608, 1604]], [[65015, 65015], "mapped", [1593, 1604, 1610, 1607]], [[65016, 65016], "mapped", [1608, 1587, 1604, 1605]], [[65017, 65017], "mapped", [1589, 1604, 1609]], [[65018, 65018], "disallowed_STD3_mapped", [1589, 1604, 1609, 32, 1575, 1604, 1604, 1607, 32, 1593, 1604, 1610, 1607, 32, 1608, 1587, 1604, 1605]], [[65019, 65019], "disallowed_STD3_mapped", [1580, 1604, 32, 1580, 1604, 1575, 1604, 1607]], [[65020, 65020], "mapped", [1585, 1740, 1575, 1604]], [[65021, 65021], "valid", [], "NV8"], [[65022, 65023], "disallowed"], [[65024, 65039], "ignored"], [[65040, 65040], "disallowed_STD3_mapped", [44]], [[65041, 65041], "mapped", [12289]], [[65042, 65042], "disallowed"], [[65043, 65043], "disallowed_STD3_mapped", [58]], [[65044, 65044], "disallowed_STD3_mapped", [59]], [[65045, 65045], "disallowed_STD3_mapped", [33]], [[65046, 65046], "disallowed_STD3_mapped", [63]], [[65047, 65047], "mapped", [12310]], [[65048, 65048], "mapped", [12311]], [[65049, 65049], "disallowed"], [[65050, 65055], "disallowed"], [[65056, 65059], "valid"], [[65060, 65062], "valid"], [[65063, 65069], "valid"], [[65070, 65071], "valid"], [[65072, 65072], "disallowed"], [[65073, 65073], "mapped", [8212]], [[65074, 65074], "mapped", [8211]], [[65075, 65076], "disallowed_STD3_mapped", [95]], [[65077, 65077], "disallowed_STD3_mapped", [40]], [[65078, 65078], "disallowed_STD3_mapped", [41]], [[65079, 65079], "disallowed_STD3_mapped", [123]], [[65080, 65080], "disallowed_STD3_mapped", [125]], [[65081, 65081], "mapped", [12308]], [[65082, 65082], "mapped", [12309]], [[65083, 65083], "mapped", [12304]], [[65084, 65084], "mapped", [12305]], [[65085, 65085], "mapped", [12298]], [[65086, 65086], "mapped", [12299]], [[65087, 65087], "mapped", [12296]], [[65088, 65088], "mapped", [12297]], [[65089, 65089], "mapped", [12300]], [[65090, 65090], "mapped", [12301]], [[65091, 65091], "mapped", [12302]], [[65092, 65092], "mapped", [12303]], [[65093, 65094], "valid", [], "NV8"], [[65095, 65095], "disallowed_STD3_mapped", [91]], [[65096, 65096], "disallowed_STD3_mapped", [93]], [[65097, 65100], "disallowed_STD3_mapped", [32, 773]], [[65101, 65103], "disallowed_STD3_mapped", [95]], [[65104, 65104], "disallowed_STD3_mapped", [44]], [[65105, 65105], "mapped", [12289]], [[65106, 65106], "disallowed"], [[65107, 65107], "disallowed"], [[65108, 65108], "disallowed_STD3_mapped", [59]], [[65109, 65109], "disallowed_STD3_mapped", [58]], [[65110, 65110], "disallowed_STD3_mapped", [63]], [[65111, 65111], "disallowed_STD3_mapped", [33]], [[65112, 65112], "mapped", [8212]], [[65113, 65113], "disallowed_STD3_mapped", [40]], [[65114, 65114], "disallowed_STD3_mapped", [41]], [[65115, 65115], "disallowed_STD3_mapped", [123]], [[65116, 65116], "disallowed_STD3_mapped", [125]], [[65117, 65117], "mapped", [12308]], [[65118, 65118], "mapped", [12309]], [[65119, 65119], "disallowed_STD3_mapped", [35]], [[65120, 65120], "disallowed_STD3_mapped", [38]], [[65121, 65121], "disallowed_STD3_mapped", [42]], [[65122, 65122], "disallowed_STD3_mapped", [43]], [[65123, 65123], "mapped", [45]], [[65124, 65124], "disallowed_STD3_mapped", [60]], [[65125, 65125], "disallowed_STD3_mapped", [62]], [[65126, 65126], "disallowed_STD3_mapped", [61]], [[65127, 65127], "disallowed"], [[65128, 65128], "disallowed_STD3_mapped", [92]], [[65129, 65129], "disallowed_STD3_mapped", [36]], [[65130, 65130], "disallowed_STD3_mapped", [37]], [[65131, 65131], "disallowed_STD3_mapped", [64]], [[65132, 65135], "disallowed"], [[65136, 65136], "disallowed_STD3_mapped", [32, 1611]], [[65137, 65137], "mapped", [1600, 1611]], [[65138, 65138], "disallowed_STD3_mapped", [32, 1612]], [[65139, 65139], "valid"], [[65140, 65140], "disallowed_STD3_mapped", [32, 1613]], [[65141, 65141], "disallowed"], [[65142, 65142], "disallowed_STD3_mapped", [32, 1614]], [[65143, 65143], "mapped", [1600, 1614]], [[65144, 65144], "disallowed_STD3_mapped", [32, 1615]], [[65145, 65145], "mapped", [1600, 1615]], [[65146, 65146], "disallowed_STD3_mapped", [32, 1616]], [[65147, 65147], "mapped", [1600, 1616]], [[65148, 65148], "disallowed_STD3_mapped", [32, 1617]], [[65149, 65149], "mapped", [1600, 1617]], [[65150, 65150], "disallowed_STD3_mapped", [32, 1618]], [[65151, 65151], "mapped", [1600, 1618]], [[65152, 65152], "mapped", [1569]], [[65153, 65154], "mapped", [1570]], [[65155, 65156], "mapped", [1571]], [[65157, 65158], "mapped", [1572]], [[65159, 65160], "mapped", [1573]], [[65161, 65164], "mapped", [1574]], [[65165, 65166], "mapped", [1575]], [[65167, 65170], "mapped", [1576]], [[65171, 65172], "mapped", [1577]], [[65173, 65176], "mapped", [1578]], [[65177, 65180], "mapped", [1579]], [[65181, 65184], "mapped", [1580]], [[65185, 65188], "mapped", [1581]], [[65189, 65192], "mapped", [1582]], [[65193, 65194], "mapped", [1583]], [[65195, 65196], "mapped", [1584]], [[65197, 65198], "mapped", [1585]], [[65199, 65200], "mapped", [1586]], [[65201, 65204], "mapped", [1587]], [[65205, 65208], "mapped", [1588]], [[65209, 65212], "mapped", [1589]], [[65213, 65216], "mapped", [1590]], [[65217, 65220], "mapped", [1591]], [[65221, 65224], "mapped", [1592]], [[65225, 65228], "mapped", [1593]], [[65229, 65232], "mapped", [1594]], [[65233, 65236], "mapped", [1601]], [[65237, 65240], "mapped", [1602]], [[65241, 65244], "mapped", [1603]], [[65245, 65248], "mapped", [1604]], [[65249, 65252], "mapped", [1605]], [[65253, 65256], "mapped", [1606]], [[65257, 65260], "mapped", [1607]], [[65261, 65262], "mapped", [1608]], [[65263, 65264], "mapped", [1609]], [[65265, 65268], "mapped", [1610]], [[65269, 65270], "mapped", [1604, 1570]], [[65271, 65272], "mapped", [1604, 1571]], [[65273, 65274], "mapped", [1604, 1573]], [[65275, 65276], "mapped", [1604, 1575]], [[65277, 65278], "disallowed"], [[65279, 65279], "ignored"], [[65280, 65280], "disallowed"], [[65281, 65281], "disallowed_STD3_mapped", [33]], [[65282, 65282], "disallowed_STD3_mapped", [34]], [[65283, 65283], "disallowed_STD3_mapped", [35]], [[65284, 65284], "disallowed_STD3_mapped", [36]], [[65285, 65285], "disallowed_STD3_mapped", [37]], [[65286, 65286], "disallowed_STD3_mapped", [38]], [[65287, 65287], "disallowed_STD3_mapped", [39]], [[65288, 65288], "disallowed_STD3_mapped", [40]], [[65289, 65289], "disallowed_STD3_mapped", [41]], [[65290, 65290], "disallowed_STD3_mapped", [42]], [[65291, 65291], "disallowed_STD3_mapped", [43]], [[65292, 65292], "disallowed_STD3_mapped", [44]], [[65293, 65293], "mapped", [45]], [[65294, 65294], "mapped", [46]], [[65295, 65295], "disallowed_STD3_mapped", [47]], [[65296, 65296], "mapped", [48]], [[65297, 65297], "mapped", [49]], [[65298, 65298], "mapped", [50]], [[65299, 65299], "mapped", [51]], [[65300, 65300], "mapped", [52]], [[65301, 65301], "mapped", [53]], [[65302, 65302], "mapped", [54]], [[65303, 65303], "mapped", [55]], [[65304, 65304], "mapped", [56]], [[65305, 65305], "mapped", [57]], [[65306, 65306], "disallowed_STD3_mapped", [58]], [[65307, 65307], "disallowed_STD3_mapped", [59]], [[65308, 65308], "disallowed_STD3_mapped", [60]], [[65309, 65309], "disallowed_STD3_mapped", [61]], [[65310, 65310], "disallowed_STD3_mapped", [62]], [[65311, 65311], "disallowed_STD3_mapped", [63]], [[65312, 65312], "disallowed_STD3_mapped", [64]], [[65313, 65313], "mapped", [97]], [[65314, 65314], "mapped", [98]], [[65315, 65315], "mapped", [99]], [[65316, 65316], "mapped", [100]], [[65317, 65317], "mapped", [101]], [[65318, 65318], "mapped", [102]], [[65319, 65319], "mapped", [103]], [[65320, 65320], "mapped", [104]], [[65321, 65321], "mapped", [105]], [[65322, 65322], "mapped", [106]], [[65323, 65323], "mapped", [107]], [[65324, 65324], "mapped", [108]], [[65325, 65325], "mapped", [109]], [[65326, 65326], "mapped", [110]], [[65327, 65327], "mapped", [111]], [[65328, 65328], "mapped", [112]], [[65329, 65329], "mapped", [113]], [[65330, 65330], "mapped", [114]], [[65331, 65331], "mapped", [115]], [[65332, 65332], "mapped", [116]], [[65333, 65333], "mapped", [117]], [[65334, 65334], "mapped", [118]], [[65335, 65335], "mapped", [119]], [[65336, 65336], "mapped", [120]], [[65337, 65337], "mapped", [121]], [[65338, 65338], "mapped", [122]], [[65339, 65339], "disallowed_STD3_mapped", [91]], [[65340, 65340], "disallowed_STD3_mapped", [92]], [[65341, 65341], "disallowed_STD3_mapped", [93]], [[65342, 65342], "disallowed_STD3_mapped", [94]], [[65343, 65343], "disallowed_STD3_mapped", [95]], [[65344, 65344], "disallowed_STD3_mapped", [96]], [[65345, 65345], "mapped", [97]], [[65346, 65346], "mapped", [98]], [[65347, 65347], "mapped", [99]], [[65348, 65348], "mapped", [100]], [[65349, 65349], "mapped", [101]], [[65350, 65350], "mapped", [102]], [[65351, 65351], "mapped", [103]], [[65352, 65352], "mapped", [104]], [[65353, 65353], "mapped", [105]], [[65354, 65354], "mapped", [106]], [[65355, 65355], "mapped", [107]], [[65356, 65356], "mapped", [108]], [[65357, 65357], "mapped", [109]], [[65358, 65358], "mapped", [110]], [[65359, 65359], "mapped", [111]], [[65360, 65360], "mapped", [112]], [[65361, 65361], "mapped", [113]], [[65362, 65362], "mapped", [114]], [[65363, 65363], "mapped", [115]], [[65364, 65364], "mapped", [116]], [[65365, 65365], "mapped", [117]], [[65366, 65366], "mapped", [118]], [[65367, 65367], "mapped", [119]], [[65368, 65368], "mapped", [120]], [[65369, 65369], "mapped", [121]], [[65370, 65370], "mapped", [122]], [[65371, 65371], "disallowed_STD3_mapped", [123]], [[65372, 65372], "disallowed_STD3_mapped", [124]], [[65373, 65373], "disallowed_STD3_mapped", [125]], [[65374, 65374], "disallowed_STD3_mapped", [126]], [[65375, 65375], "mapped", [10629]], [[65376, 65376], "mapped", [10630]], [[65377, 65377], "mapped", [46]], [[65378, 65378], "mapped", [12300]], [[65379, 65379], "mapped", [12301]], [[65380, 65380], "mapped", [12289]], [[65381, 65381], "mapped", [12539]], [[65382, 65382], "mapped", [12530]], [[65383, 65383], "mapped", [12449]], [[65384, 65384], "mapped", [12451]], [[65385, 65385], "mapped", [12453]], [[65386, 65386], "mapped", [12455]], [[65387, 65387], "mapped", [12457]], [[65388, 65388], "mapped", [12515]], [[65389, 65389], "mapped", [12517]], [[65390, 65390], "mapped", [12519]], [[65391, 65391], "mapped", [12483]], [[65392, 65392], "mapped", [12540]], [[65393, 65393], "mapped", [12450]], [[65394, 65394], "mapped", [12452]], [[65395, 65395], "mapped", [12454]], [[65396, 65396], "mapped", [12456]], [[65397, 65397], "mapped", [12458]], [[65398, 65398], "mapped", [12459]], [[65399, 65399], "mapped", [12461]], [[65400, 65400], "mapped", [12463]], [[65401, 65401], "mapped", [12465]], [[65402, 65402], "mapped", [12467]], [[65403, 65403], "mapped", [12469]], [[65404, 65404], "mapped", [12471]], [[65405, 65405], "mapped", [12473]], [[65406, 65406], "mapped", [12475]], [[65407, 65407], "mapped", [12477]], [[65408, 65408], "mapped", [12479]], [[65409, 65409], "mapped", [12481]], [[65410, 65410], "mapped", [12484]], [[65411, 65411], "mapped", [12486]], [[65412, 65412], "mapped", [12488]], [[65413, 65413], "mapped", [12490]], [[65414, 65414], "mapped", [12491]], [[65415, 65415], "mapped", [12492]], [[65416, 65416], "mapped", [12493]], [[65417, 65417], "mapped", [12494]], [[65418, 65418], "mapped", [12495]], [[65419, 65419], "mapped", [12498]], [[65420, 65420], "mapped", [12501]], [[65421, 65421], "mapped", [12504]], [[65422, 65422], "mapped", [12507]], [[65423, 65423], "mapped", [12510]], [[65424, 65424], "mapped", [12511]], [[65425, 65425], "mapped", [12512]], [[65426, 65426], "mapped", [12513]], [[65427, 65427], "mapped", [12514]], [[65428, 65428], "mapped", [12516]], [[65429, 65429], "mapped", [12518]], [[65430, 65430], "mapped", [12520]], [[65431, 65431], "mapped", [12521]], [[65432, 65432], "mapped", [12522]], [[65433, 65433], "mapped", [12523]], [[65434, 65434], "mapped", [12524]], [[65435, 65435], "mapped", [12525]], [[65436, 65436], "mapped", [12527]], [[65437, 65437], "mapped", [12531]], [[65438, 65438], "mapped", [12441]], [[65439, 65439], "mapped", [12442]], [[65440, 65440], "disallowed"], [[65441, 65441], "mapped", [4352]], [[65442, 65442], "mapped", [4353]], [[65443, 65443], "mapped", [4522]], [[65444, 65444], "mapped", [4354]], [[65445, 65445], "mapped", [4524]], [[65446, 65446], "mapped", [4525]], [[65447, 65447], "mapped", [4355]], [[65448, 65448], "mapped", [4356]], [[65449, 65449], "mapped", [4357]], [[65450, 65450], "mapped", [4528]], [[65451, 65451], "mapped", [4529]], [[65452, 65452], "mapped", [4530]], [[65453, 65453], "mapped", [4531]], [[65454, 65454], "mapped", [4532]], [[65455, 65455], "mapped", [4533]], [[65456, 65456], "mapped", [4378]], [[65457, 65457], "mapped", [4358]], [[65458, 65458], "mapped", [4359]], [[65459, 65459], "mapped", [4360]], [[65460, 65460], "mapped", [4385]], [[65461, 65461], "mapped", [4361]], [[65462, 65462], "mapped", [4362]], [[65463, 65463], "mapped", [4363]], [[65464, 65464], "mapped", [4364]], [[65465, 65465], "mapped", [4365]], [[65466, 65466], "mapped", [4366]], [[65467, 65467], "mapped", [4367]], [[65468, 65468], "mapped", [4368]], [[65469, 65469], "mapped", [4369]], [[65470, 65470], "mapped", [4370]], [[65471, 65473], "disallowed"], [[65474, 65474], "mapped", [4449]], [[65475, 65475], "mapped", [4450]], [[65476, 65476], "mapped", [4451]], [[65477, 65477], "mapped", [4452]], [[65478, 65478], "mapped", [4453]], [[65479, 65479], "mapped", [4454]], [[65480, 65481], "disallowed"], [[65482, 65482], "mapped", [4455]], [[65483, 65483], "mapped", [4456]], [[65484, 65484], "mapped", [4457]], [[65485, 65485], "mapped", [4458]], [[65486, 65486], "mapped", [4459]], [[65487, 65487], "mapped", [4460]], [[65488, 65489], "disallowed"], [[65490, 65490], "mapped", [4461]], [[65491, 65491], "mapped", [4462]], [[65492, 65492], "mapped", [4463]], [[65493, 65493], "mapped", [4464]], [[65494, 65494], "mapped", [4465]], [[65495, 65495], "mapped", [4466]], [[65496, 65497], "disallowed"], [[65498, 65498], "mapped", [4467]], [[65499, 65499], "mapped", [4468]], [[65500, 65500], "mapped", [4469]], [[65501, 65503], "disallowed"], [[65504, 65504], "mapped", [162]], [[65505, 65505], "mapped", [163]], [[65506, 65506], "mapped", [172]], [[65507, 65507], "disallowed_STD3_mapped", [32, 772]], [[65508, 65508], "mapped", [166]], [[65509, 65509], "mapped", [165]], [[65510, 65510], "mapped", [8361]], [[65511, 65511], "disallowed"], [[65512, 65512], "mapped", [9474]], [[65513, 65513], "mapped", [8592]], [[65514, 65514], "mapped", [8593]], [[65515, 65515], "mapped", [8594]], [[65516, 65516], "mapped", [8595]], [[65517, 65517], "mapped", [9632]], [[65518, 65518], "mapped", [9675]], [[65519, 65528], "disallowed"], [[65529, 65531], "disallowed"], [[65532, 65532], "disallowed"], [[65533, 65533], "disallowed"], [[65534, 65535], "disallowed"], [[65536, 65547], "valid"], [[65548, 65548], "disallowed"], [[65549, 65574], "valid"], [[65575, 65575], "disallowed"], [[65576, 65594], "valid"], [[65595, 65595], "disallowed"], [[65596, 65597], "valid"], [[65598, 65598], "disallowed"], [[65599, 65613], "valid"], [[65614, 65615], "disallowed"], [[65616, 65629], "valid"], [[65630, 65663], "disallowed"], [[65664, 65786], "valid"], [[65787, 65791], "disallowed"], [[65792, 65794], "valid", [], "NV8"], [[65795, 65798], "disallowed"], [[65799, 65843], "valid", [], "NV8"], [[65844, 65846], "disallowed"], [[65847, 65855], "valid", [], "NV8"], [[65856, 65930], "valid", [], "NV8"], [[65931, 65932], "valid", [], "NV8"], [[65933, 65935], "disallowed"], [[65936, 65947], "valid", [], "NV8"], [[65948, 65951], "disallowed"], [[65952, 65952], "valid", [], "NV8"], [[65953, 65999], "disallowed"], [[66e3, 66044], "valid", [], "NV8"], [[66045, 66045], "valid"], [[66046, 66175], "disallowed"], [[66176, 66204], "valid"], [[66205, 66207], "disallowed"], [[66208, 66256], "valid"], [[66257, 66271], "disallowed"], [[66272, 66272], "valid"], [[66273, 66299], "valid", [], "NV8"], [[66300, 66303], "disallowed"], [[66304, 66334], "valid"], [[66335, 66335], "valid"], [[66336, 66339], "valid", [], "NV8"], [[66340, 66351], "disallowed"], [[66352, 66368], "valid"], [[66369, 66369], "valid", [], "NV8"], [[66370, 66377], "valid"], [[66378, 66378], "valid", [], "NV8"], [[66379, 66383], "disallowed"], [[66384, 66426], "valid"], [[66427, 66431], "disallowed"], [[66432, 66461], "valid"], [[66462, 66462], "disallowed"], [[66463, 66463], "valid", [], "NV8"], [[66464, 66499], "valid"], [[66500, 66503], "disallowed"], [[66504, 66511], "valid"], [[66512, 66517], "valid", [], "NV8"], [[66518, 66559], "disallowed"], [[66560, 66560], "mapped", [66600]], [[66561, 66561], "mapped", [66601]], [[66562, 66562], "mapped", [66602]], [[66563, 66563], "mapped", [66603]], [[66564, 66564], "mapped", [66604]], [[66565, 66565], "mapped", [66605]], [[66566, 66566], "mapped", [66606]], [[66567, 66567], "mapped", [66607]], [[66568, 66568], "mapped", [66608]], [[66569, 66569], "mapped", [66609]], [[66570, 66570], "mapped", [66610]], [[66571, 66571], "mapped", [66611]], [[66572, 66572], "mapped", [66612]], [[66573, 66573], "mapped", [66613]], [[66574, 66574], "mapped", [66614]], [[66575, 66575], "mapped", [66615]], [[66576, 66576], "mapped", [66616]], [[66577, 66577], "mapped", [66617]], [[66578, 66578], "mapped", [66618]], [[66579, 66579], "mapped", [66619]], [[66580, 66580], "mapped", [66620]], [[66581, 66581], "mapped", [66621]], [[66582, 66582], "mapped", [66622]], [[66583, 66583], "mapped", [66623]], [[66584, 66584], "mapped", [66624]], [[66585, 66585], "mapped", [66625]], [[66586, 66586], "mapped", [66626]], [[66587, 66587], "mapped", [66627]], [[66588, 66588], "mapped", [66628]], [[66589, 66589], "mapped", [66629]], [[66590, 66590], "mapped", [66630]], [[66591, 66591], "mapped", [66631]], [[66592, 66592], "mapped", [66632]], [[66593, 66593], "mapped", [66633]], [[66594, 66594], "mapped", [66634]], [[66595, 66595], "mapped", [66635]], [[66596, 66596], "mapped", [66636]], [[66597, 66597], "mapped", [66637]], [[66598, 66598], "mapped", [66638]], [[66599, 66599], "mapped", [66639]], [[66600, 66637], "valid"], [[66638, 66717], "valid"], [[66718, 66719], "disallowed"], [[66720, 66729], "valid"], [[66730, 66815], "disallowed"], [[66816, 66855], "valid"], [[66856, 66863], "disallowed"], [[66864, 66915], "valid"], [[66916, 66926], "disallowed"], [[66927, 66927], "valid", [], "NV8"], [[66928, 67071], "disallowed"], [[67072, 67382], "valid"], [[67383, 67391], "disallowed"], [[67392, 67413], "valid"], [[67414, 67423], "disallowed"], [[67424, 67431], "valid"], [[67432, 67583], "disallowed"], [[67584, 67589], "valid"], [[67590, 67591], "disallowed"], [[67592, 67592], "valid"], [[67593, 67593], "disallowed"], [[67594, 67637], "valid"], [[67638, 67638], "disallowed"], [[67639, 67640], "valid"], [[67641, 67643], "disallowed"], [[67644, 67644], "valid"], [[67645, 67646], "disallowed"], [[67647, 67647], "valid"], [[67648, 67669], "valid"], [[67670, 67670], "disallowed"], [[67671, 67679], "valid", [], "NV8"], [[67680, 67702], "valid"], [[67703, 67711], "valid", [], "NV8"], [[67712, 67742], "valid"], [[67743, 67750], "disallowed"], [[67751, 67759], "valid", [], "NV8"], [[67760, 67807], "disallowed"], [[67808, 67826], "valid"], [[67827, 67827], "disallowed"], [[67828, 67829], "valid"], [[67830, 67834], "disallowed"], [[67835, 67839], "valid", [], "NV8"], [[67840, 67861], "valid"], [[67862, 67865], "valid", [], "NV8"], [[67866, 67867], "valid", [], "NV8"], [[67868, 67870], "disallowed"], [[67871, 67871], "valid", [], "NV8"], [[67872, 67897], "valid"], [[67898, 67902], "disallowed"], [[67903, 67903], "valid", [], "NV8"], [[67904, 67967], "disallowed"], [[67968, 68023], "valid"], [[68024, 68027], "disallowed"], [[68028, 68029], "valid", [], "NV8"], [[68030, 68031], "valid"], [[68032, 68047], "valid", [], "NV8"], [[68048, 68049], "disallowed"], [[68050, 68095], "valid", [], "NV8"], [[68096, 68099], "valid"], [[68100, 68100], "disallowed"], [[68101, 68102], "valid"], [[68103, 68107], "disallowed"], [[68108, 68115], "valid"], [[68116, 68116], "disallowed"], [[68117, 68119], "valid"], [[68120, 68120], "disallowed"], [[68121, 68147], "valid"], [[68148, 68151], "disallowed"], [[68152, 68154], "valid"], [[68155, 68158], "disallowed"], [[68159, 68159], "valid"], [[68160, 68167], "valid", [], "NV8"], [[68168, 68175], "disallowed"], [[68176, 68184], "valid", [], "NV8"], [[68185, 68191], "disallowed"], [[68192, 68220], "valid"], [[68221, 68223], "valid", [], "NV8"], [[68224, 68252], "valid"], [[68253, 68255], "valid", [], "NV8"], [[68256, 68287], "disallowed"], [[68288, 68295], "valid"], [[68296, 68296], "valid", [], "NV8"], [[68297, 68326], "valid"], [[68327, 68330], "disallowed"], [[68331, 68342], "valid", [], "NV8"], [[68343, 68351], "disallowed"], [[68352, 68405], "valid"], [[68406, 68408], "disallowed"], [[68409, 68415], "valid", [], "NV8"], [[68416, 68437], "valid"], [[68438, 68439], "disallowed"], [[68440, 68447], "valid", [], "NV8"], [[68448, 68466], "valid"], [[68467, 68471], "disallowed"], [[68472, 68479], "valid", [], "NV8"], [[68480, 68497], "valid"], [[68498, 68504], "disallowed"], [[68505, 68508], "valid", [], "NV8"], [[68509, 68520], "disallowed"], [[68521, 68527], "valid", [], "NV8"], [[68528, 68607], "disallowed"], [[68608, 68680], "valid"], [[68681, 68735], "disallowed"], [[68736, 68736], "mapped", [68800]], [[68737, 68737], "mapped", [68801]], [[68738, 68738], "mapped", [68802]], [[68739, 68739], "mapped", [68803]], [[68740, 68740], "mapped", [68804]], [[68741, 68741], "mapped", [68805]], [[68742, 68742], "mapped", [68806]], [[68743, 68743], "mapped", [68807]], [[68744, 68744], "mapped", [68808]], [[68745, 68745], "mapped", [68809]], [[68746, 68746], "mapped", [68810]], [[68747, 68747], "mapped", [68811]], [[68748, 68748], "mapped", [68812]], [[68749, 68749], "mapped", [68813]], [[68750, 68750], "mapped", [68814]], [[68751, 68751], "mapped", [68815]], [[68752, 68752], "mapped", [68816]], [[68753, 68753], "mapped", [68817]], [[68754, 68754], "mapped", [68818]], [[68755, 68755], "mapped", [68819]], [[68756, 68756], "mapped", [68820]], [[68757, 68757], "mapped", [68821]], [[68758, 68758], "mapped", [68822]], [[68759, 68759], "mapped", [68823]], [[68760, 68760], "mapped", [68824]], [[68761, 68761], "mapped", [68825]], [[68762, 68762], "mapped", [68826]], [[68763, 68763], "mapped", [68827]], [[68764, 68764], "mapped", [68828]], [[68765, 68765], "mapped", [68829]], [[68766, 68766], "mapped", [68830]], [[68767, 68767], "mapped", [68831]], [[68768, 68768], "mapped", [68832]], [[68769, 68769], "mapped", [68833]], [[68770, 68770], "mapped", [68834]], [[68771, 68771], "mapped", [68835]], [[68772, 68772], "mapped", [68836]], [[68773, 68773], "mapped", [68837]], [[68774, 68774], "mapped", [68838]], [[68775, 68775], "mapped", [68839]], [[68776, 68776], "mapped", [68840]], [[68777, 68777], "mapped", [68841]], [[68778, 68778], "mapped", [68842]], [[68779, 68779], "mapped", [68843]], [[68780, 68780], "mapped", [68844]], [[68781, 68781], "mapped", [68845]], [[68782, 68782], "mapped", [68846]], [[68783, 68783], "mapped", [68847]], [[68784, 68784], "mapped", [68848]], [[68785, 68785], "mapped", [68849]], [[68786, 68786], "mapped", [68850]], [[68787, 68799], "disallowed"], [[68800, 68850], "valid"], [[68851, 68857], "disallowed"], [[68858, 68863], "valid", [], "NV8"], [[68864, 69215], "disallowed"], [[69216, 69246], "valid", [], "NV8"], [[69247, 69631], "disallowed"], [[69632, 69702], "valid"], [[69703, 69709], "valid", [], "NV8"], [[69710, 69713], "disallowed"], [[69714, 69733], "valid", [], "NV8"], [[69734, 69743], "valid"], [[69744, 69758], "disallowed"], [[69759, 69759], "valid"], [[69760, 69818], "valid"], [[69819, 69820], "valid", [], "NV8"], [[69821, 69821], "disallowed"], [[69822, 69825], "valid", [], "NV8"], [[69826, 69839], "disallowed"], [[69840, 69864], "valid"], [[69865, 69871], "disallowed"], [[69872, 69881], "valid"], [[69882, 69887], "disallowed"], [[69888, 69940], "valid"], [[69941, 69941], "disallowed"], [[69942, 69951], "valid"], [[69952, 69955], "valid", [], "NV8"], [[69956, 69967], "disallowed"], [[69968, 70003], "valid"], [[70004, 70005], "valid", [], "NV8"], [[70006, 70006], "valid"], [[70007, 70015], "disallowed"], [[70016, 70084], "valid"], [[70085, 70088], "valid", [], "NV8"], [[70089, 70089], "valid", [], "NV8"], [[70090, 70092], "valid"], [[70093, 70093], "valid", [], "NV8"], [[70094, 70095], "disallowed"], [[70096, 70105], "valid"], [[70106, 70106], "valid"], [[70107, 70107], "valid", [], "NV8"], [[70108, 70108], "valid"], [[70109, 70111], "valid", [], "NV8"], [[70112, 70112], "disallowed"], [[70113, 70132], "valid", [], "NV8"], [[70133, 70143], "disallowed"], [[70144, 70161], "valid"], [[70162, 70162], "disallowed"], [[70163, 70199], "valid"], [[70200, 70205], "valid", [], "NV8"], [[70206, 70271], "disallowed"], [[70272, 70278], "valid"], [[70279, 70279], "disallowed"], [[70280, 70280], "valid"], [[70281, 70281], "disallowed"], [[70282, 70285], "valid"], [[70286, 70286], "disallowed"], [[70287, 70301], "valid"], [[70302, 70302], "disallowed"], [[70303, 70312], "valid"], [[70313, 70313], "valid", [], "NV8"], [[70314, 70319], "disallowed"], [[70320, 70378], "valid"], [[70379, 70383], "disallowed"], [[70384, 70393], "valid"], [[70394, 70399], "disallowed"], [[70400, 70400], "valid"], [[70401, 70403], "valid"], [[70404, 70404], "disallowed"], [[70405, 70412], "valid"], [[70413, 70414], "disallowed"], [[70415, 70416], "valid"], [[70417, 70418], "disallowed"], [[70419, 70440], "valid"], [[70441, 70441], "disallowed"], [[70442, 70448], "valid"], [[70449, 70449], "disallowed"], [[70450, 70451], "valid"], [[70452, 70452], "disallowed"], [[70453, 70457], "valid"], [[70458, 70459], "disallowed"], [[70460, 70468], "valid"], [[70469, 70470], "disallowed"], [[70471, 70472], "valid"], [[70473, 70474], "disallowed"], [[70475, 70477], "valid"], [[70478, 70479], "disallowed"], [[70480, 70480], "valid"], [[70481, 70486], "disallowed"], [[70487, 70487], "valid"], [[70488, 70492], "disallowed"], [[70493, 70499], "valid"], [[70500, 70501], "disallowed"], [[70502, 70508], "valid"], [[70509, 70511], "disallowed"], [[70512, 70516], "valid"], [[70517, 70783], "disallowed"], [[70784, 70853], "valid"], [[70854, 70854], "valid", [], "NV8"], [[70855, 70855], "valid"], [[70856, 70863], "disallowed"], [[70864, 70873], "valid"], [[70874, 71039], "disallowed"], [[71040, 71093], "valid"], [[71094, 71095], "disallowed"], [[71096, 71104], "valid"], [[71105, 71113], "valid", [], "NV8"], [[71114, 71127], "valid", [], "NV8"], [[71128, 71133], "valid"], [[71134, 71167], "disallowed"], [[71168, 71232], "valid"], [[71233, 71235], "valid", [], "NV8"], [[71236, 71236], "valid"], [[71237, 71247], "disallowed"], [[71248, 71257], "valid"], [[71258, 71295], "disallowed"], [[71296, 71351], "valid"], [[71352, 71359], "disallowed"], [[71360, 71369], "valid"], [[71370, 71423], "disallowed"], [[71424, 71449], "valid"], [[71450, 71452], "disallowed"], [[71453, 71467], "valid"], [[71468, 71471], "disallowed"], [[71472, 71481], "valid"], [[71482, 71487], "valid", [], "NV8"], [[71488, 71839], "disallowed"], [[71840, 71840], "mapped", [71872]], [[71841, 71841], "mapped", [71873]], [[71842, 71842], "mapped", [71874]], [[71843, 71843], "mapped", [71875]], [[71844, 71844], "mapped", [71876]], [[71845, 71845], "mapped", [71877]], [[71846, 71846], "mapped", [71878]], [[71847, 71847], "mapped", [71879]], [[71848, 71848], "mapped", [71880]], [[71849, 71849], "mapped", [71881]], [[71850, 71850], "mapped", [71882]], [[71851, 71851], "mapped", [71883]], [[71852, 71852], "mapped", [71884]], [[71853, 71853], "mapped", [71885]], [[71854, 71854], "mapped", [71886]], [[71855, 71855], "mapped", [71887]], [[71856, 71856], "mapped", [71888]], [[71857, 71857], "mapped", [71889]], [[71858, 71858], "mapped", [71890]], [[71859, 71859], "mapped", [71891]], [[71860, 71860], "mapped", [71892]], [[71861, 71861], "mapped", [71893]], [[71862, 71862], "mapped", [71894]], [[71863, 71863], "mapped", [71895]], [[71864, 71864], "mapped", [71896]], [[71865, 71865], "mapped", [71897]], [[71866, 71866], "mapped", [71898]], [[71867, 71867], "mapped", [71899]], [[71868, 71868], "mapped", [71900]], [[71869, 71869], "mapped", [71901]], [[71870, 71870], "mapped", [71902]], [[71871, 71871], "mapped", [71903]], [[71872, 71913], "valid"], [[71914, 71922], "valid", [], "NV8"], [[71923, 71934], "disallowed"], [[71935, 71935], "valid"], [[71936, 72383], "disallowed"], [[72384, 72440], "valid"], [[72441, 73727], "disallowed"], [[73728, 74606], "valid"], [[74607, 74648], "valid"], [[74649, 74649], "valid"], [[74650, 74751], "disallowed"], [[74752, 74850], "valid", [], "NV8"], [[74851, 74862], "valid", [], "NV8"], [[74863, 74863], "disallowed"], [[74864, 74867], "valid", [], "NV8"], [[74868, 74868], "valid", [], "NV8"], [[74869, 74879], "disallowed"], [[74880, 75075], "valid"], [[75076, 77823], "disallowed"], [[77824, 78894], "valid"], [[78895, 82943], "disallowed"], [[82944, 83526], "valid"], [[83527, 92159], "disallowed"], [[92160, 92728], "valid"], [[92729, 92735], "disallowed"], [[92736, 92766], "valid"], [[92767, 92767], "disallowed"], [[92768, 92777], "valid"], [[92778, 92781], "disallowed"], [[92782, 92783], "valid", [], "NV8"], [[92784, 92879], "disallowed"], [[92880, 92909], "valid"], [[92910, 92911], "disallowed"], [[92912, 92916], "valid"], [[92917, 92917], "valid", [], "NV8"], [[92918, 92927], "disallowed"], [[92928, 92982], "valid"], [[92983, 92991], "valid", [], "NV8"], [[92992, 92995], "valid"], [[92996, 92997], "valid", [], "NV8"], [[92998, 93007], "disallowed"], [[93008, 93017], "valid"], [[93018, 93018], "disallowed"], [[93019, 93025], "valid", [], "NV8"], [[93026, 93026], "disallowed"], [[93027, 93047], "valid"], [[93048, 93052], "disallowed"], [[93053, 93071], "valid"], [[93072, 93951], "disallowed"], [[93952, 94020], "valid"], [[94021, 94031], "disallowed"], [[94032, 94078], "valid"], [[94079, 94094], "disallowed"], [[94095, 94111], "valid"], [[94112, 110591], "disallowed"], [[110592, 110593], "valid"], [[110594, 113663], "disallowed"], [[113664, 113770], "valid"], [[113771, 113775], "disallowed"], [[113776, 113788], "valid"], [[113789, 113791], "disallowed"], [[113792, 113800], "valid"], [[113801, 113807], "disallowed"], [[113808, 113817], "valid"], [[113818, 113819], "disallowed"], [[113820, 113820], "valid", [], "NV8"], [[113821, 113822], "valid"], [[113823, 113823], "valid", [], "NV8"], [[113824, 113827], "ignored"], [[113828, 118783], "disallowed"], [[118784, 119029], "valid", [], "NV8"], [[119030, 119039], "disallowed"], [[119040, 119078], "valid", [], "NV8"], [[119079, 119080], "disallowed"], [[119081, 119081], "valid", [], "NV8"], [[119082, 119133], "valid", [], "NV8"], [[119134, 119134], "mapped", [119127, 119141]], [[119135, 119135], "mapped", [119128, 119141]], [[119136, 119136], "mapped", [119128, 119141, 119150]], [[119137, 119137], "mapped", [119128, 119141, 119151]], [[119138, 119138], "mapped", [119128, 119141, 119152]], [[119139, 119139], "mapped", [119128, 119141, 119153]], [[119140, 119140], "mapped", [119128, 119141, 119154]], [[119141, 119154], "valid", [], "NV8"], [[119155, 119162], "disallowed"], [[119163, 119226], "valid", [], "NV8"], [[119227, 119227], "mapped", [119225, 119141]], [[119228, 119228], "mapped", [119226, 119141]], [[119229, 119229], "mapped", [119225, 119141, 119150]], [[119230, 119230], "mapped", [119226, 119141, 119150]], [[119231, 119231], "mapped", [119225, 119141, 119151]], [[119232, 119232], "mapped", [119226, 119141, 119151]], [[119233, 119261], "valid", [], "NV8"], [[119262, 119272], "valid", [], "NV8"], [[119273, 119295], "disallowed"], [[119296, 119365], "valid", [], "NV8"], [[119366, 119551], "disallowed"], [[119552, 119638], "valid", [], "NV8"], [[119639, 119647], "disallowed"], [[119648, 119665], "valid", [], "NV8"], [[119666, 119807], "disallowed"], [[119808, 119808], "mapped", [97]], [[119809, 119809], "mapped", [98]], [[119810, 119810], "mapped", [99]], [[119811, 119811], "mapped", [100]], [[119812, 119812], "mapped", [101]], [[119813, 119813], "mapped", [102]], [[119814, 119814], "mapped", [103]], [[119815, 119815], "mapped", [104]], [[119816, 119816], "mapped", [105]], [[119817, 119817], "mapped", [106]], [[119818, 119818], "mapped", [107]], [[119819, 119819], "mapped", [108]], [[119820, 119820], "mapped", [109]], [[119821, 119821], "mapped", [110]], [[119822, 119822], "mapped", [111]], [[119823, 119823], "mapped", [112]], [[119824, 119824], "mapped", [113]], [[119825, 119825], "mapped", [114]], [[119826, 119826], "mapped", [115]], [[119827, 119827], "mapped", [116]], [[119828, 119828], "mapped", [117]], [[119829, 119829], "mapped", [118]], [[119830, 119830], "mapped", [119]], [[119831, 119831], "mapped", [120]], [[119832, 119832], "mapped", [121]], [[119833, 119833], "mapped", [122]], [[119834, 119834], "mapped", [97]], [[119835, 119835], "mapped", [98]], [[119836, 119836], "mapped", [99]], [[119837, 119837], "mapped", [100]], [[119838, 119838], "mapped", [101]], [[119839, 119839], "mapped", [102]], [[119840, 119840], "mapped", [103]], [[119841, 119841], "mapped", [104]], [[119842, 119842], "mapped", [105]], [[119843, 119843], "mapped", [106]], [[119844, 119844], "mapped", [107]], [[119845, 119845], "mapped", [108]], [[119846, 119846], "mapped", [109]], [[119847, 119847], "mapped", [110]], [[119848, 119848], "mapped", [111]], [[119849, 119849], "mapped", [112]], [[119850, 119850], "mapped", [113]], [[119851, 119851], "mapped", [114]], [[119852, 119852], "mapped", [115]], [[119853, 119853], "mapped", [116]], [[119854, 119854], "mapped", [117]], [[119855, 119855], "mapped", [118]], [[119856, 119856], "mapped", [119]], [[119857, 119857], "mapped", [120]], [[119858, 119858], "mapped", [121]], [[119859, 119859], "mapped", [122]], [[119860, 119860], "mapped", [97]], [[119861, 119861], "mapped", [98]], [[119862, 119862], "mapped", [99]], [[119863, 119863], "mapped", [100]], [[119864, 119864], "mapped", [101]], [[119865, 119865], "mapped", [102]], [[119866, 119866], "mapped", [103]], [[119867, 119867], "mapped", [104]], [[119868, 119868], "mapped", [105]], [[119869, 119869], "mapped", [106]], [[119870, 119870], "mapped", [107]], [[119871, 119871], "mapped", [108]], [[119872, 119872], "mapped", [109]], [[119873, 119873], "mapped", [110]], [[119874, 119874], "mapped", [111]], [[119875, 119875], "mapped", [112]], [[119876, 119876], "mapped", [113]], [[119877, 119877], "mapped", [114]], [[119878, 119878], "mapped", [115]], [[119879, 119879], "mapped", [116]], [[119880, 119880], "mapped", [117]], [[119881, 119881], "mapped", [118]], [[119882, 119882], "mapped", [119]], [[119883, 119883], "mapped", [120]], [[119884, 119884], "mapped", [121]], [[119885, 119885], "mapped", [122]], [[119886, 119886], "mapped", [97]], [[119887, 119887], "mapped", [98]], [[119888, 119888], "mapped", [99]], [[119889, 119889], "mapped", [100]], [[119890, 119890], "mapped", [101]], [[119891, 119891], "mapped", [102]], [[119892, 119892], "mapped", [103]], [[119893, 119893], "disallowed"], [[119894, 119894], "mapped", [105]], [[119895, 119895], "mapped", [106]], [[119896, 119896], "mapped", [107]], [[119897, 119897], "mapped", [108]], [[119898, 119898], "mapped", [109]], [[119899, 119899], "mapped", [110]], [[119900, 119900], "mapped", [111]], [[119901, 119901], "mapped", [112]], [[119902, 119902], "mapped", [113]], [[119903, 119903], "mapped", [114]], [[119904, 119904], "mapped", [115]], [[119905, 119905], "mapped", [116]], [[119906, 119906], "mapped", [117]], [[119907, 119907], "mapped", [118]], [[119908, 119908], "mapped", [119]], [[119909, 119909], "mapped", [120]], [[119910, 119910], "mapped", [121]], [[119911, 119911], "mapped", [122]], [[119912, 119912], "mapped", [97]], [[119913, 119913], "mapped", [98]], [[119914, 119914], "mapped", [99]], [[119915, 119915], "mapped", [100]], [[119916, 119916], "mapped", [101]], [[119917, 119917], "mapped", [102]], [[119918, 119918], "mapped", [103]], [[119919, 119919], "mapped", [104]], [[119920, 119920], "mapped", [105]], [[119921, 119921], "mapped", [106]], [[119922, 119922], "mapped", [107]], [[119923, 119923], "mapped", [108]], [[119924, 119924], "mapped", [109]], [[119925, 119925], "mapped", [110]], [[119926, 119926], "mapped", [111]], [[119927, 119927], "mapped", [112]], [[119928, 119928], "mapped", [113]], [[119929, 119929], "mapped", [114]], [[119930, 119930], "mapped", [115]], [[119931, 119931], "mapped", [116]], [[119932, 119932], "mapped", [117]], [[119933, 119933], "mapped", [118]], [[119934, 119934], "mapped", [119]], [[119935, 119935], "mapped", [120]], [[119936, 119936], "mapped", [121]], [[119937, 119937], "mapped", [122]], [[119938, 119938], "mapped", [97]], [[119939, 119939], "mapped", [98]], [[119940, 119940], "mapped", [99]], [[119941, 119941], "mapped", [100]], [[119942, 119942], "mapped", [101]], [[119943, 119943], "mapped", [102]], [[119944, 119944], "mapped", [103]], [[119945, 119945], "mapped", [104]], [[119946, 119946], "mapped", [105]], [[119947, 119947], "mapped", [106]], [[119948, 119948], "mapped", [107]], [[119949, 119949], "mapped", [108]], [[119950, 119950], "mapped", [109]], [[119951, 119951], "mapped", [110]], [[119952, 119952], "mapped", [111]], [[119953, 119953], "mapped", [112]], [[119954, 119954], "mapped", [113]], [[119955, 119955], "mapped", [114]], [[119956, 119956], "mapped", [115]], [[119957, 119957], "mapped", [116]], [[119958, 119958], "mapped", [117]], [[119959, 119959], "mapped", [118]], [[119960, 119960], "mapped", [119]], [[119961, 119961], "mapped", [120]], [[119962, 119962], "mapped", [121]], [[119963, 119963], "mapped", [122]], [[119964, 119964], "mapped", [97]], [[119965, 119965], "disallowed"], [[119966, 119966], "mapped", [99]], [[119967, 119967], "mapped", [100]], [[119968, 119969], "disallowed"], [[119970, 119970], "mapped", [103]], [[119971, 119972], "disallowed"], [[119973, 119973], "mapped", [106]], [[119974, 119974], "mapped", [107]], [[119975, 119976], "disallowed"], [[119977, 119977], "mapped", [110]], [[119978, 119978], "mapped", [111]], [[119979, 119979], "mapped", [112]], [[119980, 119980], "mapped", [113]], [[119981, 119981], "disallowed"], [[119982, 119982], "mapped", [115]], [[119983, 119983], "mapped", [116]], [[119984, 119984], "mapped", [117]], [[119985, 119985], "mapped", [118]], [[119986, 119986], "mapped", [119]], [[119987, 119987], "mapped", [120]], [[119988, 119988], "mapped", [121]], [[119989, 119989], "mapped", [122]], [[119990, 119990], "mapped", [97]], [[119991, 119991], "mapped", [98]], [[119992, 119992], "mapped", [99]], [[119993, 119993], "mapped", [100]], [[119994, 119994], "disallowed"], [[119995, 119995], "mapped", [102]], [[119996, 119996], "disallowed"], [[119997, 119997], "mapped", [104]], [[119998, 119998], "mapped", [105]], [[119999, 119999], "mapped", [106]], [[12e4, 12e4], "mapped", [107]], [[120001, 120001], "mapped", [108]], [[120002, 120002], "mapped", [109]], [[120003, 120003], "mapped", [110]], [[120004, 120004], "disallowed"], [[120005, 120005], "mapped", [112]], [[120006, 120006], "mapped", [113]], [[120007, 120007], "mapped", [114]], [[120008, 120008], "mapped", [115]], [[120009, 120009], "mapped", [116]], [[120010, 120010], "mapped", [117]], [[120011, 120011], "mapped", [118]], [[120012, 120012], "mapped", [119]], [[120013, 120013], "mapped", [120]], [[120014, 120014], "mapped", [121]], [[120015, 120015], "mapped", [122]], [[120016, 120016], "mapped", [97]], [[120017, 120017], "mapped", [98]], [[120018, 120018], "mapped", [99]], [[120019, 120019], "mapped", [100]], [[120020, 120020], "mapped", [101]], [[120021, 120021], "mapped", [102]], [[120022, 120022], "mapped", [103]], [[120023, 120023], "mapped", [104]], [[120024, 120024], "mapped", [105]], [[120025, 120025], "mapped", [106]], [[120026, 120026], "mapped", [107]], [[120027, 120027], "mapped", [108]], [[120028, 120028], "mapped", [109]], [[120029, 120029], "mapped", [110]], [[120030, 120030], "mapped", [111]], [[120031, 120031], "mapped", [112]], [[120032, 120032], "mapped", [113]], [[120033, 120033], "mapped", [114]], [[120034, 120034], "mapped", [115]], [[120035, 120035], "mapped", [116]], [[120036, 120036], "mapped", [117]], [[120037, 120037], "mapped", [118]], [[120038, 120038], "mapped", [119]], [[120039, 120039], "mapped", [120]], [[120040, 120040], "mapped", [121]], [[120041, 120041], "mapped", [122]], [[120042, 120042], "mapped", [97]], [[120043, 120043], "mapped", [98]], [[120044, 120044], "mapped", [99]], [[120045, 120045], "mapped", [100]], [[120046, 120046], "mapped", [101]], [[120047, 120047], "mapped", [102]], [[120048, 120048], "mapped", [103]], [[120049, 120049], "mapped", [104]], [[120050, 120050], "mapped", [105]], [[120051, 120051], "mapped", [106]], [[120052, 120052], "mapped", [107]], [[120053, 120053], "mapped", [108]], [[120054, 120054], "mapped", [109]], [[120055, 120055], "mapped", [110]], [[120056, 120056], "mapped", [111]], [[120057, 120057], "mapped", [112]], [[120058, 120058], "mapped", [113]], [[120059, 120059], "mapped", [114]], [[120060, 120060], "mapped", [115]], [[120061, 120061], "mapped", [116]], [[120062, 120062], "mapped", [117]], [[120063, 120063], "mapped", [118]], [[120064, 120064], "mapped", [119]], [[120065, 120065], "mapped", [120]], [[120066, 120066], "mapped", [121]], [[120067, 120067], "mapped", [122]], [[120068, 120068], "mapped", [97]], [[120069, 120069], "mapped", [98]], [[120070, 120070], "disallowed"], [[120071, 120071], "mapped", [100]], [[120072, 120072], "mapped", [101]], [[120073, 120073], "mapped", [102]], [[120074, 120074], "mapped", [103]], [[120075, 120076], "disallowed"], [[120077, 120077], "mapped", [106]], [[120078, 120078], "mapped", [107]], [[120079, 120079], "mapped", [108]], [[120080, 120080], "mapped", [109]], [[120081, 120081], "mapped", [110]], [[120082, 120082], "mapped", [111]], [[120083, 120083], "mapped", [112]], [[120084, 120084], "mapped", [113]], [[120085, 120085], "disallowed"], [[120086, 120086], "mapped", [115]], [[120087, 120087], "mapped", [116]], [[120088, 120088], "mapped", [117]], [[120089, 120089], "mapped", [118]], [[120090, 120090], "mapped", [119]], [[120091, 120091], "mapped", [120]], [[120092, 120092], "mapped", [121]], [[120093, 120093], "disallowed"], [[120094, 120094], "mapped", [97]], [[120095, 120095], "mapped", [98]], [[120096, 120096], "mapped", [99]], [[120097, 120097], "mapped", [100]], [[120098, 120098], "mapped", [101]], [[120099, 120099], "mapped", [102]], [[120100, 120100], "mapped", [103]], [[120101, 120101], "mapped", [104]], [[120102, 120102], "mapped", [105]], [[120103, 120103], "mapped", [106]], [[120104, 120104], "mapped", [107]], [[120105, 120105], "mapped", [108]], [[120106, 120106], "mapped", [109]], [[120107, 120107], "mapped", [110]], [[120108, 120108], "mapped", [111]], [[120109, 120109], "mapped", [112]], [[120110, 120110], "mapped", [113]], [[120111, 120111], "mapped", [114]], [[120112, 120112], "mapped", [115]], [[120113, 120113], "mapped", [116]], [[120114, 120114], "mapped", [117]], [[120115, 120115], "mapped", [118]], [[120116, 120116], "mapped", [119]], [[120117, 120117], "mapped", [120]], [[120118, 120118], "mapped", [121]], [[120119, 120119], "mapped", [122]], [[120120, 120120], "mapped", [97]], [[120121, 120121], "mapped", [98]], [[120122, 120122], "disallowed"], [[120123, 120123], "mapped", [100]], [[120124, 120124], "mapped", [101]], [[120125, 120125], "mapped", [102]], [[120126, 120126], "mapped", [103]], [[120127, 120127], "disallowed"], [[120128, 120128], "mapped", [105]], [[120129, 120129], "mapped", [106]], [[120130, 120130], "mapped", [107]], [[120131, 120131], "mapped", [108]], [[120132, 120132], "mapped", [109]], [[120133, 120133], "disallowed"], [[120134, 120134], "mapped", [111]], [[120135, 120137], "disallowed"], [[120138, 120138], "mapped", [115]], [[120139, 120139], "mapped", [116]], [[120140, 120140], "mapped", [117]], [[120141, 120141], "mapped", [118]], [[120142, 120142], "mapped", [119]], [[120143, 120143], "mapped", [120]], [[120144, 120144], "mapped", [121]], [[120145, 120145], "disallowed"], [[120146, 120146], "mapped", [97]], [[120147, 120147], "mapped", [98]], [[120148, 120148], "mapped", [99]], [[120149, 120149], "mapped", [100]], [[120150, 120150], "mapped", [101]], [[120151, 120151], "mapped", [102]], [[120152, 120152], "mapped", [103]], [[120153, 120153], "mapped", [104]], [[120154, 120154], "mapped", [105]], [[120155, 120155], "mapped", [106]], [[120156, 120156], "mapped", [107]], [[120157, 120157], "mapped", [108]], [[120158, 120158], "mapped", [109]], [[120159, 120159], "mapped", [110]], [[120160, 120160], "mapped", [111]], [[120161, 120161], "mapped", [112]], [[120162, 120162], "mapped", [113]], [[120163, 120163], "mapped", [114]], [[120164, 120164], "mapped", [115]], [[120165, 120165], "mapped", [116]], [[120166, 120166], "mapped", [117]], [[120167, 120167], "mapped", [118]], [[120168, 120168], "mapped", [119]], [[120169, 120169], "mapped", [120]], [[120170, 120170], "mapped", [121]], [[120171, 120171], "mapped", [122]], [[120172, 120172], "mapped", [97]], [[120173, 120173], "mapped", [98]], [[120174, 120174], "mapped", [99]], [[120175, 120175], "mapped", [100]], [[120176, 120176], "mapped", [101]], [[120177, 120177], "mapped", [102]], [[120178, 120178], "mapped", [103]], [[120179, 120179], "mapped", [104]], [[120180, 120180], "mapped", [105]], [[120181, 120181], "mapped", [106]], [[120182, 120182], "mapped", [107]], [[120183, 120183], "mapped", [108]], [[120184, 120184], "mapped", [109]], [[120185, 120185], "mapped", [110]], [[120186, 120186], "mapped", [111]], [[120187, 120187], "mapped", [112]], [[120188, 120188], "mapped", [113]], [[120189, 120189], "mapped", [114]], [[120190, 120190], "mapped", [115]], [[120191, 120191], "mapped", [116]], [[120192, 120192], "mapped", [117]], [[120193, 120193], "mapped", [118]], [[120194, 120194], "mapped", [119]], [[120195, 120195], "mapped", [120]], [[120196, 120196], "mapped", [121]], [[120197, 120197], "mapped", [122]], [[120198, 120198], "mapped", [97]], [[120199, 120199], "mapped", [98]], [[120200, 120200], "mapped", [99]], [[120201, 120201], "mapped", [100]], [[120202, 120202], "mapped", [101]], [[120203, 120203], "mapped", [102]], [[120204, 120204], "mapped", [103]], [[120205, 120205], "mapped", [104]], [[120206, 120206], "mapped", [105]], [[120207, 120207], "mapped", [106]], [[120208, 120208], "mapped", [107]], [[120209, 120209], "mapped", [108]], [[120210, 120210], "mapped", [109]], [[120211, 120211], "mapped", [110]], [[120212, 120212], "mapped", [111]], [[120213, 120213], "mapped", [112]], [[120214, 120214], "mapped", [113]], [[120215, 120215], "mapped", [114]], [[120216, 120216], "mapped", [115]], [[120217, 120217], "mapped", [116]], [[120218, 120218], "mapped", [117]], [[120219, 120219], "mapped", [118]], [[120220, 120220], "mapped", [119]], [[120221, 120221], "mapped", [120]], [[120222, 120222], "mapped", [121]], [[120223, 120223], "mapped", [122]], [[120224, 120224], "mapped", [97]], [[120225, 120225], "mapped", [98]], [[120226, 120226], "mapped", [99]], [[120227, 120227], "mapped", [100]], [[120228, 120228], "mapped", [101]], [[120229, 120229], "mapped", [102]], [[120230, 120230], "mapped", [103]], [[120231, 120231], "mapped", [104]], [[120232, 120232], "mapped", [105]], [[120233, 120233], "mapped", [106]], [[120234, 120234], "mapped", [107]], [[120235, 120235], "mapped", [108]], [[120236, 120236], "mapped", [109]], [[120237, 120237], "mapped", [110]], [[120238, 120238], "mapped", [111]], [[120239, 120239], "mapped", [112]], [[120240, 120240], "mapped", [113]], [[120241, 120241], "mapped", [114]], [[120242, 120242], "mapped", [115]], [[120243, 120243], "mapped", [116]], [[120244, 120244], "mapped", [117]], [[120245, 120245], "mapped", [118]], [[120246, 120246], "mapped", [119]], [[120247, 120247], "mapped", [120]], [[120248, 120248], "mapped", [121]], [[120249, 120249], "mapped", [122]], [[120250, 120250], "mapped", [97]], [[120251, 120251], "mapped", [98]], [[120252, 120252], "mapped", [99]], [[120253, 120253], "mapped", [100]], [[120254, 120254], "mapped", [101]], [[120255, 120255], "mapped", [102]], [[120256, 120256], "mapped", [103]], [[120257, 120257], "mapped", [104]], [[120258, 120258], "mapped", [105]], [[120259, 120259], "mapped", [106]], [[120260, 120260], "mapped", [107]], [[120261, 120261], "mapped", [108]], [[120262, 120262], "mapped", [109]], [[120263, 120263], "mapped", [110]], [[120264, 120264], "mapped", [111]], [[120265, 120265], "mapped", [112]], [[120266, 120266], "mapped", [113]], [[120267, 120267], "mapped", [114]], [[120268, 120268], "mapped", [115]], [[120269, 120269], "mapped", [116]], [[120270, 120270], "mapped", [117]], [[120271, 120271], "mapped", [118]], [[120272, 120272], "mapped", [119]], [[120273, 120273], "mapped", [120]], [[120274, 120274], "mapped", [121]], [[120275, 120275], "mapped", [122]], [[120276, 120276], "mapped", [97]], [[120277, 120277], "mapped", [98]], [[120278, 120278], "mapped", [99]], [[120279, 120279], "mapped", [100]], [[120280, 120280], "mapped", [101]], [[120281, 120281], "mapped", [102]], [[120282, 120282], "mapped", [103]], [[120283, 120283], "mapped", [104]], [[120284, 120284], "mapped", [105]], [[120285, 120285], "mapped", [106]], [[120286, 120286], "mapped", [107]], [[120287, 120287], "mapped", [108]], [[120288, 120288], "mapped", [109]], [[120289, 120289], "mapped", [110]], [[120290, 120290], "mapped", [111]], [[120291, 120291], "mapped", [112]], [[120292, 120292], "mapped", [113]], [[120293, 120293], "mapped", [114]], [[120294, 120294], "mapped", [115]], [[120295, 120295], "mapped", [116]], [[120296, 120296], "mapped", [117]], [[120297, 120297], "mapped", [118]], [[120298, 120298], "mapped", [119]], [[120299, 120299], "mapped", [120]], [[120300, 120300], "mapped", [121]], [[120301, 120301], "mapped", [122]], [[120302, 120302], "mapped", [97]], [[120303, 120303], "mapped", [98]], [[120304, 120304], "mapped", [99]], [[120305, 120305], "mapped", [100]], [[120306, 120306], "mapped", [101]], [[120307, 120307], "mapped", [102]], [[120308, 120308], "mapped", [103]], [[120309, 120309], "mapped", [104]], [[120310, 120310], "mapped", [105]], [[120311, 120311], "mapped", [106]], [[120312, 120312], "mapped", [107]], [[120313, 120313], "mapped", [108]], [[120314, 120314], "mapped", [109]], [[120315, 120315], "mapped", [110]], [[120316, 120316], "mapped", [111]], [[120317, 120317], "mapped", [112]], [[120318, 120318], "mapped", [113]], [[120319, 120319], "mapped", [114]], [[120320, 120320], "mapped", [115]], [[120321, 120321], "mapped", [116]], [[120322, 120322], "mapped", [117]], [[120323, 120323], "mapped", [118]], [[120324, 120324], "mapped", [119]], [[120325, 120325], "mapped", [120]], [[120326, 120326], "mapped", [121]], [[120327, 120327], "mapped", [122]], [[120328, 120328], "mapped", [97]], [[120329, 120329], "mapped", [98]], [[120330, 120330], "mapped", [99]], [[120331, 120331], "mapped", [100]], [[120332, 120332], "mapped", [101]], [[120333, 120333], "mapped", [102]], [[120334, 120334], "mapped", [103]], [[120335, 120335], "mapped", [104]], [[120336, 120336], "mapped", [105]], [[120337, 120337], "mapped", [106]], [[120338, 120338], "mapped", [107]], [[120339, 120339], "mapped", [108]], [[120340, 120340], "mapped", [109]], [[120341, 120341], "mapped", [110]], [[120342, 120342], "mapped", [111]], [[120343, 120343], "mapped", [112]], [[120344, 120344], "mapped", [113]], [[120345, 120345], "mapped", [114]], [[120346, 120346], "mapped", [115]], [[120347, 120347], "mapped", [116]], [[120348, 120348], "mapped", [117]], [[120349, 120349], "mapped", [118]], [[120350, 120350], "mapped", [119]], [[120351, 120351], "mapped", [120]], [[120352, 120352], "mapped", [121]], [[120353, 120353], "mapped", [122]], [[120354, 120354], "mapped", [97]], [[120355, 120355], "mapped", [98]], [[120356, 120356], "mapped", [99]], [[120357, 120357], "mapped", [100]], [[120358, 120358], "mapped", [101]], [[120359, 120359], "mapped", [102]], [[120360, 120360], "mapped", [103]], [[120361, 120361], "mapped", [104]], [[120362, 120362], "mapped", [105]], [[120363, 120363], "mapped", [106]], [[120364, 120364], "mapped", [107]], [[120365, 120365], "mapped", [108]], [[120366, 120366], "mapped", [109]], [[120367, 120367], "mapped", [110]], [[120368, 120368], "mapped", [111]], [[120369, 120369], "mapped", [112]], [[120370, 120370], "mapped", [113]], [[120371, 120371], "mapped", [114]], [[120372, 120372], "mapped", [115]], [[120373, 120373], "mapped", [116]], [[120374, 120374], "mapped", [117]], [[120375, 120375], "mapped", [118]], [[120376, 120376], "mapped", [119]], [[120377, 120377], "mapped", [120]], [[120378, 120378], "mapped", [121]], [[120379, 120379], "mapped", [122]], [[120380, 120380], "mapped", [97]], [[120381, 120381], "mapped", [98]], [[120382, 120382], "mapped", [99]], [[120383, 120383], "mapped", [100]], [[120384, 120384], "mapped", [101]], [[120385, 120385], "mapped", [102]], [[120386, 120386], "mapped", [103]], [[120387, 120387], "mapped", [104]], [[120388, 120388], "mapped", [105]], [[120389, 120389], "mapped", [106]], [[120390, 120390], "mapped", [107]], [[120391, 120391], "mapped", [108]], [[120392, 120392], "mapped", [109]], [[120393, 120393], "mapped", [110]], [[120394, 120394], "mapped", [111]], [[120395, 120395], "mapped", [112]], [[120396, 120396], "mapped", [113]], [[120397, 120397], "mapped", [114]], [[120398, 120398], "mapped", [115]], [[120399, 120399], "mapped", [116]], [[120400, 120400], "mapped", [117]], [[120401, 120401], "mapped", [118]], [[120402, 120402], "mapped", [119]], [[120403, 120403], "mapped", [120]], [[120404, 120404], "mapped", [121]], [[120405, 120405], "mapped", [122]], [[120406, 120406], "mapped", [97]], [[120407, 120407], "mapped", [98]], [[120408, 120408], "mapped", [99]], [[120409, 120409], "mapped", [100]], [[120410, 120410], "mapped", [101]], [[120411, 120411], "mapped", [102]], [[120412, 120412], "mapped", [103]], [[120413, 120413], "mapped", [104]], [[120414, 120414], "mapped", [105]], [[120415, 120415], "mapped", [106]], [[120416, 120416], "mapped", [107]], [[120417, 120417], "mapped", [108]], [[120418, 120418], "mapped", [109]], [[120419, 120419], "mapped", [110]], [[120420, 120420], "mapped", [111]], [[120421, 120421], "mapped", [112]], [[120422, 120422], "mapped", [113]], [[120423, 120423], "mapped", [114]], [[120424, 120424], "mapped", [115]], [[120425, 120425], "mapped", [116]], [[120426, 120426], "mapped", [117]], [[120427, 120427], "mapped", [118]], [[120428, 120428], "mapped", [119]], [[120429, 120429], "mapped", [120]], [[120430, 120430], "mapped", [121]], [[120431, 120431], "mapped", [122]], [[120432, 120432], "mapped", [97]], [[120433, 120433], "mapped", [98]], [[120434, 120434], "mapped", [99]], [[120435, 120435], "mapped", [100]], [[120436, 120436], "mapped", [101]], [[120437, 120437], "mapped", [102]], [[120438, 120438], "mapped", [103]], [[120439, 120439], "mapped", [104]], [[120440, 120440], "mapped", [105]], [[120441, 120441], "mapped", [106]], [[120442, 120442], "mapped", [107]], [[120443, 120443], "mapped", [108]], [[120444, 120444], "mapped", [109]], [[120445, 120445], "mapped", [110]], [[120446, 120446], "mapped", [111]], [[120447, 120447], "mapped", [112]], [[120448, 120448], "mapped", [113]], [[120449, 120449], "mapped", [114]], [[120450, 120450], "mapped", [115]], [[120451, 120451], "mapped", [116]], [[120452, 120452], "mapped", [117]], [[120453, 120453], "mapped", [118]], [[120454, 120454], "mapped", [119]], [[120455, 120455], "mapped", [120]], [[120456, 120456], "mapped", [121]], [[120457, 120457], "mapped", [122]], [[120458, 120458], "mapped", [97]], [[120459, 120459], "mapped", [98]], [[120460, 120460], "mapped", [99]], [[120461, 120461], "mapped", [100]], [[120462, 120462], "mapped", [101]], [[120463, 120463], "mapped", [102]], [[120464, 120464], "mapped", [103]], [[120465, 120465], "mapped", [104]], [[120466, 120466], "mapped", [105]], [[120467, 120467], "mapped", [106]], [[120468, 120468], "mapped", [107]], [[120469, 120469], "mapped", [108]], [[120470, 120470], "mapped", [109]], [[120471, 120471], "mapped", [110]], [[120472, 120472], "mapped", [111]], [[120473, 120473], "mapped", [112]], [[120474, 120474], "mapped", [113]], [[120475, 120475], "mapped", [114]], [[120476, 120476], "mapped", [115]], [[120477, 120477], "mapped", [116]], [[120478, 120478], "mapped", [117]], [[120479, 120479], "mapped", [118]], [[120480, 120480], "mapped", [119]], [[120481, 120481], "mapped", [120]], [[120482, 120482], "mapped", [121]], [[120483, 120483], "mapped", [122]], [[120484, 120484], "mapped", [305]], [[120485, 120485], "mapped", [567]], [[120486, 120487], "disallowed"], [[120488, 120488], "mapped", [945]], [[120489, 120489], "mapped", [946]], [[120490, 120490], "mapped", [947]], [[120491, 120491], "mapped", [948]], [[120492, 120492], "mapped", [949]], [[120493, 120493], "mapped", [950]], [[120494, 120494], "mapped", [951]], [[120495, 120495], "mapped", [952]], [[120496, 120496], "mapped", [953]], [[120497, 120497], "mapped", [954]], [[120498, 120498], "mapped", [955]], [[120499, 120499], "mapped", [956]], [[120500, 120500], "mapped", [957]], [[120501, 120501], "mapped", [958]], [[120502, 120502], "mapped", [959]], [[120503, 120503], "mapped", [960]], [[120504, 120504], "mapped", [961]], [[120505, 120505], "mapped", [952]], [[120506, 120506], "mapped", [963]], [[120507, 120507], "mapped", [964]], [[120508, 120508], "mapped", [965]], [[120509, 120509], "mapped", [966]], [[120510, 120510], "mapped", [967]], [[120511, 120511], "mapped", [968]], [[120512, 120512], "mapped", [969]], [[120513, 120513], "mapped", [8711]], [[120514, 120514], "mapped", [945]], [[120515, 120515], "mapped", [946]], [[120516, 120516], "mapped", [947]], [[120517, 120517], "mapped", [948]], [[120518, 120518], "mapped", [949]], [[120519, 120519], "mapped", [950]], [[120520, 120520], "mapped", [951]], [[120521, 120521], "mapped", [952]], [[120522, 120522], "mapped", [953]], [[120523, 120523], "mapped", [954]], [[120524, 120524], "mapped", [955]], [[120525, 120525], "mapped", [956]], [[120526, 120526], "mapped", [957]], [[120527, 120527], "mapped", [958]], [[120528, 120528], "mapped", [959]], [[120529, 120529], "mapped", [960]], [[120530, 120530], "mapped", [961]], [[120531, 120532], "mapped", [963]], [[120533, 120533], "mapped", [964]], [[120534, 120534], "mapped", [965]], [[120535, 120535], "mapped", [966]], [[120536, 120536], "mapped", [967]], [[120537, 120537], "mapped", [968]], [[120538, 120538], "mapped", [969]], [[120539, 120539], "mapped", [8706]], [[120540, 120540], "mapped", [949]], [[120541, 120541], "mapped", [952]], [[120542, 120542], "mapped", [954]], [[120543, 120543], "mapped", [966]], [[120544, 120544], "mapped", [961]], [[120545, 120545], "mapped", [960]], [[120546, 120546], "mapped", [945]], [[120547, 120547], "mapped", [946]], [[120548, 120548], "mapped", [947]], [[120549, 120549], "mapped", [948]], [[120550, 120550], "mapped", [949]], [[120551, 120551], "mapped", [950]], [[120552, 120552], "mapped", [951]], [[120553, 120553], "mapped", [952]], [[120554, 120554], "mapped", [953]], [[120555, 120555], "mapped", [954]], [[120556, 120556], "mapped", [955]], [[120557, 120557], "mapped", [956]], [[120558, 120558], "mapped", [957]], [[120559, 120559], "mapped", [958]], [[120560, 120560], "mapped", [959]], [[120561, 120561], "mapped", [960]], [[120562, 120562], "mapped", [961]], [[120563, 120563], "mapped", [952]], [[120564, 120564], "mapped", [963]], [[120565, 120565], "mapped", [964]], [[120566, 120566], "mapped", [965]], [[120567, 120567], "mapped", [966]], [[120568, 120568], "mapped", [967]], [[120569, 120569], "mapped", [968]], [[120570, 120570], "mapped", [969]], [[120571, 120571], "mapped", [8711]], [[120572, 120572], "mapped", [945]], [[120573, 120573], "mapped", [946]], [[120574, 120574], "mapped", [947]], [[120575, 120575], "mapped", [948]], [[120576, 120576], "mapped", [949]], [[120577, 120577], "mapped", [950]], [[120578, 120578], "mapped", [951]], [[120579, 120579], "mapped", [952]], [[120580, 120580], "mapped", [953]], [[120581, 120581], "mapped", [954]], [[120582, 120582], "mapped", [955]], [[120583, 120583], "mapped", [956]], [[120584, 120584], "mapped", [957]], [[120585, 120585], "mapped", [958]], [[120586, 120586], "mapped", [959]], [[120587, 120587], "mapped", [960]], [[120588, 120588], "mapped", [961]], [[120589, 120590], "mapped", [963]], [[120591, 120591], "mapped", [964]], [[120592, 120592], "mapped", [965]], [[120593, 120593], "mapped", [966]], [[120594, 120594], "mapped", [967]], [[120595, 120595], "mapped", [968]], [[120596, 120596], "mapped", [969]], [[120597, 120597], "mapped", [8706]], [[120598, 120598], "mapped", [949]], [[120599, 120599], "mapped", [952]], [[120600, 120600], "mapped", [954]], [[120601, 120601], "mapped", [966]], [[120602, 120602], "mapped", [961]], [[120603, 120603], "mapped", [960]], [[120604, 120604], "mapped", [945]], [[120605, 120605], "mapped", [946]], [[120606, 120606], "mapped", [947]], [[120607, 120607], "mapped", [948]], [[120608, 120608], "mapped", [949]], [[120609, 120609], "mapped", [950]], [[120610, 120610], "mapped", [951]], [[120611, 120611], "mapped", [952]], [[120612, 120612], "mapped", [953]], [[120613, 120613], "mapped", [954]], [[120614, 120614], "mapped", [955]], [[120615, 120615], "mapped", [956]], [[120616, 120616], "mapped", [957]], [[120617, 120617], "mapped", [958]], [[120618, 120618], "mapped", [959]], [[120619, 120619], "mapped", [960]], [[120620, 120620], "mapped", [961]], [[120621, 120621], "mapped", [952]], [[120622, 120622], "mapped", [963]], [[120623, 120623], "mapped", [964]], [[120624, 120624], "mapped", [965]], [[120625, 120625], "mapped", [966]], [[120626, 120626], "mapped", [967]], [[120627, 120627], "mapped", [968]], [[120628, 120628], "mapped", [969]], [[120629, 120629], "mapped", [8711]], [[120630, 120630], "mapped", [945]], [[120631, 120631], "mapped", [946]], [[120632, 120632], "mapped", [947]], [[120633, 120633], "mapped", [948]], [[120634, 120634], "mapped", [949]], [[120635, 120635], "mapped", [950]], [[120636, 120636], "mapped", [951]], [[120637, 120637], "mapped", [952]], [[120638, 120638], "mapped", [953]], [[120639, 120639], "mapped", [954]], [[120640, 120640], "mapped", [955]], [[120641, 120641], "mapped", [956]], [[120642, 120642], "mapped", [957]], [[120643, 120643], "mapped", [958]], [[120644, 120644], "mapped", [959]], [[120645, 120645], "mapped", [960]], [[120646, 120646], "mapped", [961]], [[120647, 120648], "mapped", [963]], [[120649, 120649], "mapped", [964]], [[120650, 120650], "mapped", [965]], [[120651, 120651], "mapped", [966]], [[120652, 120652], "mapped", [967]], [[120653, 120653], "mapped", [968]], [[120654, 120654], "mapped", [969]], [[120655, 120655], "mapped", [8706]], [[120656, 120656], "mapped", [949]], [[120657, 120657], "mapped", [952]], [[120658, 120658], "mapped", [954]], [[120659, 120659], "mapped", [966]], [[120660, 120660], "mapped", [961]], [[120661, 120661], "mapped", [960]], [[120662, 120662], "mapped", [945]], [[120663, 120663], "mapped", [946]], [[120664, 120664], "mapped", [947]], [[120665, 120665], "mapped", [948]], [[120666, 120666], "mapped", [949]], [[120667, 120667], "mapped", [950]], [[120668, 120668], "mapped", [951]], [[120669, 120669], "mapped", [952]], [[120670, 120670], "mapped", [953]], [[120671, 120671], "mapped", [954]], [[120672, 120672], "mapped", [955]], [[120673, 120673], "mapped", [956]], [[120674, 120674], "mapped", [957]], [[120675, 120675], "mapped", [958]], [[120676, 120676], "mapped", [959]], [[120677, 120677], "mapped", [960]], [[120678, 120678], "mapped", [961]], [[120679, 120679], "mapped", [952]], [[120680, 120680], "mapped", [963]], [[120681, 120681], "mapped", [964]], [[120682, 120682], "mapped", [965]], [[120683, 120683], "mapped", [966]], [[120684, 120684], "mapped", [967]], [[120685, 120685], "mapped", [968]], [[120686, 120686], "mapped", [969]], [[120687, 120687], "mapped", [8711]], [[120688, 120688], "mapped", [945]], [[120689, 120689], "mapped", [946]], [[120690, 120690], "mapped", [947]], [[120691, 120691], "mapped", [948]], [[120692, 120692], "mapped", [949]], [[120693, 120693], "mapped", [950]], [[120694, 120694], "mapped", [951]], [[120695, 120695], "mapped", [952]], [[120696, 120696], "mapped", [953]], [[120697, 120697], "mapped", [954]], [[120698, 120698], "mapped", [955]], [[120699, 120699], "mapped", [956]], [[120700, 120700], "mapped", [957]], [[120701, 120701], "mapped", [958]], [[120702, 120702], "mapped", [959]], [[120703, 120703], "mapped", [960]], [[120704, 120704], "mapped", [961]], [[120705, 120706], "mapped", [963]], [[120707, 120707], "mapped", [964]], [[120708, 120708], "mapped", [965]], [[120709, 120709], "mapped", [966]], [[120710, 120710], "mapped", [967]], [[120711, 120711], "mapped", [968]], [[120712, 120712], "mapped", [969]], [[120713, 120713], "mapped", [8706]], [[120714, 120714], "mapped", [949]], [[120715, 120715], "mapped", [952]], [[120716, 120716], "mapped", [954]], [[120717, 120717], "mapped", [966]], [[120718, 120718], "mapped", [961]], [[120719, 120719], "mapped", [960]], [[120720, 120720], "mapped", [945]], [[120721, 120721], "mapped", [946]], [[120722, 120722], "mapped", [947]], [[120723, 120723], "mapped", [948]], [[120724, 120724], "mapped", [949]], [[120725, 120725], "mapped", [950]], [[120726, 120726], "mapped", [951]], [[120727, 120727], "mapped", [952]], [[120728, 120728], "mapped", [953]], [[120729, 120729], "mapped", [954]], [[120730, 120730], "mapped", [955]], [[120731, 120731], "mapped", [956]], [[120732, 120732], "mapped", [957]], [[120733, 120733], "mapped", [958]], [[120734, 120734], "mapped", [959]], [[120735, 120735], "mapped", [960]], [[120736, 120736], "mapped", [961]], [[120737, 120737], "mapped", [952]], [[120738, 120738], "mapped", [963]], [[120739, 120739], "mapped", [964]], [[120740, 120740], "mapped", [965]], [[120741, 120741], "mapped", [966]], [[120742, 120742], "mapped", [967]], [[120743, 120743], "mapped", [968]], [[120744, 120744], "mapped", [969]], [[120745, 120745], "mapped", [8711]], [[120746, 120746], "mapped", [945]], [[120747, 120747], "mapped", [946]], [[120748, 120748], "mapped", [947]], [[120749, 120749], "mapped", [948]], [[120750, 120750], "mapped", [949]], [[120751, 120751], "mapped", [950]], [[120752, 120752], "mapped", [951]], [[120753, 120753], "mapped", [952]], [[120754, 120754], "mapped", [953]], [[120755, 120755], "mapped", [954]], [[120756, 120756], "mapped", [955]], [[120757, 120757], "mapped", [956]], [[120758, 120758], "mapped", [957]], [[120759, 120759], "mapped", [958]], [[120760, 120760], "mapped", [959]], [[120761, 120761], "mapped", [960]], [[120762, 120762], "mapped", [961]], [[120763, 120764], "mapped", [963]], [[120765, 120765], "mapped", [964]], [[120766, 120766], "mapped", [965]], [[120767, 120767], "mapped", [966]], [[120768, 120768], "mapped", [967]], [[120769, 120769], "mapped", [968]], [[120770, 120770], "mapped", [969]], [[120771, 120771], "mapped", [8706]], [[120772, 120772], "mapped", [949]], [[120773, 120773], "mapped", [952]], [[120774, 120774], "mapped", [954]], [[120775, 120775], "mapped", [966]], [[120776, 120776], "mapped", [961]], [[120777, 120777], "mapped", [960]], [[120778, 120779], "mapped", [989]], [[120780, 120781], "disallowed"], [[120782, 120782], "mapped", [48]], [[120783, 120783], "mapped", [49]], [[120784, 120784], "mapped", [50]], [[120785, 120785], "mapped", [51]], [[120786, 120786], "mapped", [52]], [[120787, 120787], "mapped", [53]], [[120788, 120788], "mapped", [54]], [[120789, 120789], "mapped", [55]], [[120790, 120790], "mapped", [56]], [[120791, 120791], "mapped", [57]], [[120792, 120792], "mapped", [48]], [[120793, 120793], "mapped", [49]], [[120794, 120794], "mapped", [50]], [[120795, 120795], "mapped", [51]], [[120796, 120796], "mapped", [52]], [[120797, 120797], "mapped", [53]], [[120798, 120798], "mapped", [54]], [[120799, 120799], "mapped", [55]], [[120800, 120800], "mapped", [56]], [[120801, 120801], "mapped", [57]], [[120802, 120802], "mapped", [48]], [[120803, 120803], "mapped", [49]], [[120804, 120804], "mapped", [50]], [[120805, 120805], "mapped", [51]], [[120806, 120806], "mapped", [52]], [[120807, 120807], "mapped", [53]], [[120808, 120808], "mapped", [54]], [[120809, 120809], "mapped", [55]], [[120810, 120810], "mapped", [56]], [[120811, 120811], "mapped", [57]], [[120812, 120812], "mapped", [48]], [[120813, 120813], "mapped", [49]], [[120814, 120814], "mapped", [50]], [[120815, 120815], "mapped", [51]], [[120816, 120816], "mapped", [52]], [[120817, 120817], "mapped", [53]], [[120818, 120818], "mapped", [54]], [[120819, 120819], "mapped", [55]], [[120820, 120820], "mapped", [56]], [[120821, 120821], "mapped", [57]], [[120822, 120822], "mapped", [48]], [[120823, 120823], "mapped", [49]], [[120824, 120824], "mapped", [50]], [[120825, 120825], "mapped", [51]], [[120826, 120826], "mapped", [52]], [[120827, 120827], "mapped", [53]], [[120828, 120828], "mapped", [54]], [[120829, 120829], "mapped", [55]], [[120830, 120830], "mapped", [56]], [[120831, 120831], "mapped", [57]], [[120832, 121343], "valid", [], "NV8"], [[121344, 121398], "valid"], [[121399, 121402], "valid", [], "NV8"], [[121403, 121452], "valid"], [[121453, 121460], "valid", [], "NV8"], [[121461, 121461], "valid"], [[121462, 121475], "valid", [], "NV8"], [[121476, 121476], "valid"], [[121477, 121483], "valid", [], "NV8"], [[121484, 121498], "disallowed"], [[121499, 121503], "valid"], [[121504, 121504], "disallowed"], [[121505, 121519], "valid"], [[121520, 124927], "disallowed"], [[124928, 125124], "valid"], [[125125, 125126], "disallowed"], [[125127, 125135], "valid", [], "NV8"], [[125136, 125142], "valid"], [[125143, 126463], "disallowed"], [[126464, 126464], "mapped", [1575]], [[126465, 126465], "mapped", [1576]], [[126466, 126466], "mapped", [1580]], [[126467, 126467], "mapped", [1583]], [[126468, 126468], "disallowed"], [[126469, 126469], "mapped", [1608]], [[126470, 126470], "mapped", [1586]], [[126471, 126471], "mapped", [1581]], [[126472, 126472], "mapped", [1591]], [[126473, 126473], "mapped", [1610]], [[126474, 126474], "mapped", [1603]], [[126475, 126475], "mapped", [1604]], [[126476, 126476], "mapped", [1605]], [[126477, 126477], "mapped", [1606]], [[126478, 126478], "mapped", [1587]], [[126479, 126479], "mapped", [1593]], [[126480, 126480], "mapped", [1601]], [[126481, 126481], "mapped", [1589]], [[126482, 126482], "mapped", [1602]], [[126483, 126483], "mapped", [1585]], [[126484, 126484], "mapped", [1588]], [[126485, 126485], "mapped", [1578]], [[126486, 126486], "mapped", [1579]], [[126487, 126487], "mapped", [1582]], [[126488, 126488], "mapped", [1584]], [[126489, 126489], "mapped", [1590]], [[126490, 126490], "mapped", [1592]], [[126491, 126491], "mapped", [1594]], [[126492, 126492], "mapped", [1646]], [[126493, 126493], "mapped", [1722]], [[126494, 126494], "mapped", [1697]], [[126495, 126495], "mapped", [1647]], [[126496, 126496], "disallowed"], [[126497, 126497], "mapped", [1576]], [[126498, 126498], "mapped", [1580]], [[126499, 126499], "disallowed"], [[126500, 126500], "mapped", [1607]], [[126501, 126502], "disallowed"], [[126503, 126503], "mapped", [1581]], [[126504, 126504], "disallowed"], [[126505, 126505], "mapped", [1610]], [[126506, 126506], "mapped", [1603]], [[126507, 126507], "mapped", [1604]], [[126508, 126508], "mapped", [1605]], [[126509, 126509], "mapped", [1606]], [[126510, 126510], "mapped", [1587]], [[126511, 126511], "mapped", [1593]], [[126512, 126512], "mapped", [1601]], [[126513, 126513], "mapped", [1589]], [[126514, 126514], "mapped", [1602]], [[126515, 126515], "disallowed"], [[126516, 126516], "mapped", [1588]], [[126517, 126517], "mapped", [1578]], [[126518, 126518], "mapped", [1579]], [[126519, 126519], "mapped", [1582]], [[126520, 126520], "disallowed"], [[126521, 126521], "mapped", [1590]], [[126522, 126522], "disallowed"], [[126523, 126523], "mapped", [1594]], [[126524, 126529], "disallowed"], [[126530, 126530], "mapped", [1580]], [[126531, 126534], "disallowed"], [[126535, 126535], "mapped", [1581]], [[126536, 126536], "disallowed"], [[126537, 126537], "mapped", [1610]], [[126538, 126538], "disallowed"], [[126539, 126539], "mapped", [1604]], [[126540, 126540], "disallowed"], [[126541, 126541], "mapped", [1606]], [[126542, 126542], "mapped", [1587]], [[126543, 126543], "mapped", [1593]], [[126544, 126544], "disallowed"], [[126545, 126545], "mapped", [1589]], [[126546, 126546], "mapped", [1602]], [[126547, 126547], "disallowed"], [[126548, 126548], "mapped", [1588]], [[126549, 126550], "disallowed"], [[126551, 126551], "mapped", [1582]], [[126552, 126552], "disallowed"], [[126553, 126553], "mapped", [1590]], [[126554, 126554], "disallowed"], [[126555, 126555], "mapped", [1594]], [[126556, 126556], "disallowed"], [[126557, 126557], "mapped", [1722]], [[126558, 126558], "disallowed"], [[126559, 126559], "mapped", [1647]], [[126560, 126560], "disallowed"], [[126561, 126561], "mapped", [1576]], [[126562, 126562], "mapped", [1580]], [[126563, 126563], "disallowed"], [[126564, 126564], "mapped", [1607]], [[126565, 126566], "disallowed"], [[126567, 126567], "mapped", [1581]], [[126568, 126568], "mapped", [1591]], [[126569, 126569], "mapped", [1610]], [[126570, 126570], "mapped", [1603]], [[126571, 126571], "disallowed"], [[126572, 126572], "mapped", [1605]], [[126573, 126573], "mapped", [1606]], [[126574, 126574], "mapped", [1587]], [[126575, 126575], "mapped", [1593]], [[126576, 126576], "mapped", [1601]], [[126577, 126577], "mapped", [1589]], [[126578, 126578], "mapped", [1602]], [[126579, 126579], "disallowed"], [[126580, 126580], "mapped", [1588]], [[126581, 126581], "mapped", [1578]], [[126582, 126582], "mapped", [1579]], [[126583, 126583], "mapped", [1582]], [[126584, 126584], "disallowed"], [[126585, 126585], "mapped", [1590]], [[126586, 126586], "mapped", [1592]], [[126587, 126587], "mapped", [1594]], [[126588, 126588], "mapped", [1646]], [[126589, 126589], "disallowed"], [[126590, 126590], "mapped", [1697]], [[126591, 126591], "disallowed"], [[126592, 126592], "mapped", [1575]], [[126593, 126593], "mapped", [1576]], [[126594, 126594], "mapped", [1580]], [[126595, 126595], "mapped", [1583]], [[126596, 126596], "mapped", [1607]], [[126597, 126597], "mapped", [1608]], [[126598, 126598], "mapped", [1586]], [[126599, 126599], "mapped", [1581]], [[126600, 126600], "mapped", [1591]], [[126601, 126601], "mapped", [1610]], [[126602, 126602], "disallowed"], [[126603, 126603], "mapped", [1604]], [[126604, 126604], "mapped", [1605]], [[126605, 126605], "mapped", [1606]], [[126606, 126606], "mapped", [1587]], [[126607, 126607], "mapped", [1593]], [[126608, 126608], "mapped", [1601]], [[126609, 126609], "mapped", [1589]], [[126610, 126610], "mapped", [1602]], [[126611, 126611], "mapped", [1585]], [[126612, 126612], "mapped", [1588]], [[126613, 126613], "mapped", [1578]], [[126614, 126614], "mapped", [1579]], [[126615, 126615], "mapped", [1582]], [[126616, 126616], "mapped", [1584]], [[126617, 126617], "mapped", [1590]], [[126618, 126618], "mapped", [1592]], [[126619, 126619], "mapped", [1594]], [[126620, 126624], "disallowed"], [[126625, 126625], "mapped", [1576]], [[126626, 126626], "mapped", [1580]], [[126627, 126627], "mapped", [1583]], [[126628, 126628], "disallowed"], [[126629, 126629], "mapped", [1608]], [[126630, 126630], "mapped", [1586]], [[126631, 126631], "mapped", [1581]], [[126632, 126632], "mapped", [1591]], [[126633, 126633], "mapped", [1610]], [[126634, 126634], "disallowed"], [[126635, 126635], "mapped", [1604]], [[126636, 126636], "mapped", [1605]], [[126637, 126637], "mapped", [1606]], [[126638, 126638], "mapped", [1587]], [[126639, 126639], "mapped", [1593]], [[126640, 126640], "mapped", [1601]], [[126641, 126641], "mapped", [1589]], [[126642, 126642], "mapped", [1602]], [[126643, 126643], "mapped", [1585]], [[126644, 126644], "mapped", [1588]], [[126645, 126645], "mapped", [1578]], [[126646, 126646], "mapped", [1579]], [[126647, 126647], "mapped", [1582]], [[126648, 126648], "mapped", [1584]], [[126649, 126649], "mapped", [1590]], [[126650, 126650], "mapped", [1592]], [[126651, 126651], "mapped", [1594]], [[126652, 126703], "disallowed"], [[126704, 126705], "valid", [], "NV8"], [[126706, 126975], "disallowed"], [[126976, 127019], "valid", [], "NV8"], [[127020, 127023], "disallowed"], [[127024, 127123], "valid", [], "NV8"], [[127124, 127135], "disallowed"], [[127136, 127150], "valid", [], "NV8"], [[127151, 127152], "disallowed"], [[127153, 127166], "valid", [], "NV8"], [[127167, 127167], "valid", [], "NV8"], [[127168, 127168], "disallowed"], [[127169, 127183], "valid", [], "NV8"], [[127184, 127184], "disallowed"], [[127185, 127199], "valid", [], "NV8"], [[127200, 127221], "valid", [], "NV8"], [[127222, 127231], "disallowed"], [[127232, 127232], "disallowed"], [[127233, 127233], "disallowed_STD3_mapped", [48, 44]], [[127234, 127234], "disallowed_STD3_mapped", [49, 44]], [[127235, 127235], "disallowed_STD3_mapped", [50, 44]], [[127236, 127236], "disallowed_STD3_mapped", [51, 44]], [[127237, 127237], "disallowed_STD3_mapped", [52, 44]], [[127238, 127238], "disallowed_STD3_mapped", [53, 44]], [[127239, 127239], "disallowed_STD3_mapped", [54, 44]], [[127240, 127240], "disallowed_STD3_mapped", [55, 44]], [[127241, 127241], "disallowed_STD3_mapped", [56, 44]], [[127242, 127242], "disallowed_STD3_mapped", [57, 44]], [[127243, 127244], "valid", [], "NV8"], [[127245, 127247], "disallowed"], [[127248, 127248], "disallowed_STD3_mapped", [40, 97, 41]], [[127249, 127249], "disallowed_STD3_mapped", [40, 98, 41]], [[127250, 127250], "disallowed_STD3_mapped", [40, 99, 41]], [[127251, 127251], "disallowed_STD3_mapped", [40, 100, 41]], [[127252, 127252], "disallowed_STD3_mapped", [40, 101, 41]], [[127253, 127253], "disallowed_STD3_mapped", [40, 102, 41]], [[127254, 127254], "disallowed_STD3_mapped", [40, 103, 41]], [[127255, 127255], "disallowed_STD3_mapped", [40, 104, 41]], [[127256, 127256], "disallowed_STD3_mapped", [40, 105, 41]], [[127257, 127257], "disallowed_STD3_mapped", [40, 106, 41]], [[127258, 127258], "disallowed_STD3_mapped", [40, 107, 41]], [[127259, 127259], "disallowed_STD3_mapped", [40, 108, 41]], [[127260, 127260], "disallowed_STD3_mapped", [40, 109, 41]], [[127261, 127261], "disallowed_STD3_mapped", [40, 110, 41]], [[127262, 127262], "disallowed_STD3_mapped", [40, 111, 41]], [[127263, 127263], "disallowed_STD3_mapped", [40, 112, 41]], [[127264, 127264], "disallowed_STD3_mapped", [40, 113, 41]], [[127265, 127265], "disallowed_STD3_mapped", [40, 114, 41]], [[127266, 127266], "disallowed_STD3_mapped", [40, 115, 41]], [[127267, 127267], "disallowed_STD3_mapped", [40, 116, 41]], [[127268, 127268], "disallowed_STD3_mapped", [40, 117, 41]], [[127269, 127269], "disallowed_STD3_mapped", [40, 118, 41]], [[127270, 127270], "disallowed_STD3_mapped", [40, 119, 41]], [[127271, 127271], "disallowed_STD3_mapped", [40, 120, 41]], [[127272, 127272], "disallowed_STD3_mapped", [40, 121, 41]], [[127273, 127273], "disallowed_STD3_mapped", [40, 122, 41]], [[127274, 127274], "mapped", [12308, 115, 12309]], [[127275, 127275], "mapped", [99]], [[127276, 127276], "mapped", [114]], [[127277, 127277], "mapped", [99, 100]], [[127278, 127278], "mapped", [119, 122]], [[127279, 127279], "disallowed"], [[127280, 127280], "mapped", [97]], [[127281, 127281], "mapped", [98]], [[127282, 127282], "mapped", [99]], [[127283, 127283], "mapped", [100]], [[127284, 127284], "mapped", [101]], [[127285, 127285], "mapped", [102]], [[127286, 127286], "mapped", [103]], [[127287, 127287], "mapped", [104]], [[127288, 127288], "mapped", [105]], [[127289, 127289], "mapped", [106]], [[127290, 127290], "mapped", [107]], [[127291, 127291], "mapped", [108]], [[127292, 127292], "mapped", [109]], [[127293, 127293], "mapped", [110]], [[127294, 127294], "mapped", [111]], [[127295, 127295], "mapped", [112]], [[127296, 127296], "mapped", [113]], [[127297, 127297], "mapped", [114]], [[127298, 127298], "mapped", [115]], [[127299, 127299], "mapped", [116]], [[127300, 127300], "mapped", [117]], [[127301, 127301], "mapped", [118]], [[127302, 127302], "mapped", [119]], [[127303, 127303], "mapped", [120]], [[127304, 127304], "mapped", [121]], [[127305, 127305], "mapped", [122]], [[127306, 127306], "mapped", [104, 118]], [[127307, 127307], "mapped", [109, 118]], [[127308, 127308], "mapped", [115, 100]], [[127309, 127309], "mapped", [115, 115]], [[127310, 127310], "mapped", [112, 112, 118]], [[127311, 127311], "mapped", [119, 99]], [[127312, 127318], "valid", [], "NV8"], [[127319, 127319], "valid", [], "NV8"], [[127320, 127326], "valid", [], "NV8"], [[127327, 127327], "valid", [], "NV8"], [[127328, 127337], "valid", [], "NV8"], [[127338, 127338], "mapped", [109, 99]], [[127339, 127339], "mapped", [109, 100]], [[127340, 127343], "disallowed"], [[127344, 127352], "valid", [], "NV8"], [[127353, 127353], "valid", [], "NV8"], [[127354, 127354], "valid", [], "NV8"], [[127355, 127356], "valid", [], "NV8"], [[127357, 127358], "valid", [], "NV8"], [[127359, 127359], "valid", [], "NV8"], [[127360, 127369], "valid", [], "NV8"], [[127370, 127373], "valid", [], "NV8"], [[127374, 127375], "valid", [], "NV8"], [[127376, 127376], "mapped", [100, 106]], [[127377, 127386], "valid", [], "NV8"], [[127387, 127461], "disallowed"], [[127462, 127487], "valid", [], "NV8"], [[127488, 127488], "mapped", [12411, 12363]], [[127489, 127489], "mapped", [12467, 12467]], [[127490, 127490], "mapped", [12469]], [[127491, 127503], "disallowed"], [[127504, 127504], "mapped", [25163]], [[127505, 127505], "mapped", [23383]], [[127506, 127506], "mapped", [21452]], [[127507, 127507], "mapped", [12487]], [[127508, 127508], "mapped", [20108]], [[127509, 127509], "mapped", [22810]], [[127510, 127510], "mapped", [35299]], [[127511, 127511], "mapped", [22825]], [[127512, 127512], "mapped", [20132]], [[127513, 127513], "mapped", [26144]], [[127514, 127514], "mapped", [28961]], [[127515, 127515], "mapped", [26009]], [[127516, 127516], "mapped", [21069]], [[127517, 127517], "mapped", [24460]], [[127518, 127518], "mapped", [20877]], [[127519, 127519], "mapped", [26032]], [[127520, 127520], "mapped", [21021]], [[127521, 127521], "mapped", [32066]], [[127522, 127522], "mapped", [29983]], [[127523, 127523], "mapped", [36009]], [[127524, 127524], "mapped", [22768]], [[127525, 127525], "mapped", [21561]], [[127526, 127526], "mapped", [28436]], [[127527, 127527], "mapped", [25237]], [[127528, 127528], "mapped", [25429]], [[127529, 127529], "mapped", [19968]], [[127530, 127530], "mapped", [19977]], [[127531, 127531], "mapped", [36938]], [[127532, 127532], "mapped", [24038]], [[127533, 127533], "mapped", [20013]], [[127534, 127534], "mapped", [21491]], [[127535, 127535], "mapped", [25351]], [[127536, 127536], "mapped", [36208]], [[127537, 127537], "mapped", [25171]], [[127538, 127538], "mapped", [31105]], [[127539, 127539], "mapped", [31354]], [[127540, 127540], "mapped", [21512]], [[127541, 127541], "mapped", [28288]], [[127542, 127542], "mapped", [26377]], [[127543, 127543], "mapped", [26376]], [[127544, 127544], "mapped", [30003]], [[127545, 127545], "mapped", [21106]], [[127546, 127546], "mapped", [21942]], [[127547, 127551], "disallowed"], [[127552, 127552], "mapped", [12308, 26412, 12309]], [[127553, 127553], "mapped", [12308, 19977, 12309]], [[127554, 127554], "mapped", [12308, 20108, 12309]], [[127555, 127555], "mapped", [12308, 23433, 12309]], [[127556, 127556], "mapped", [12308, 28857, 12309]], [[127557, 127557], "mapped", [12308, 25171, 12309]], [[127558, 127558], "mapped", [12308, 30423, 12309]], [[127559, 127559], "mapped", [12308, 21213, 12309]], [[127560, 127560], "mapped", [12308, 25943, 12309]], [[127561, 127567], "disallowed"], [[127568, 127568], "mapped", [24471]], [[127569, 127569], "mapped", [21487]], [[127570, 127743], "disallowed"], [[127744, 127776], "valid", [], "NV8"], [[127777, 127788], "valid", [], "NV8"], [[127789, 127791], "valid", [], "NV8"], [[127792, 127797], "valid", [], "NV8"], [[127798, 127798], "valid", [], "NV8"], [[127799, 127868], "valid", [], "NV8"], [[127869, 127869], "valid", [], "NV8"], [[127870, 127871], "valid", [], "NV8"], [[127872, 127891], "valid", [], "NV8"], [[127892, 127903], "valid", [], "NV8"], [[127904, 127940], "valid", [], "NV8"], [[127941, 127941], "valid", [], "NV8"], [[127942, 127946], "valid", [], "NV8"], [[127947, 127950], "valid", [], "NV8"], [[127951, 127955], "valid", [], "NV8"], [[127956, 127967], "valid", [], "NV8"], [[127968, 127984], "valid", [], "NV8"], [[127985, 127991], "valid", [], "NV8"], [[127992, 127999], "valid", [], "NV8"], [[128e3, 128062], "valid", [], "NV8"], [[128063, 128063], "valid", [], "NV8"], [[128064, 128064], "valid", [], "NV8"], [[128065, 128065], "valid", [], "NV8"], [[128066, 128247], "valid", [], "NV8"], [[128248, 128248], "valid", [], "NV8"], [[128249, 128252], "valid", [], "NV8"], [[128253, 128254], "valid", [], "NV8"], [[128255, 128255], "valid", [], "NV8"], [[128256, 128317], "valid", [], "NV8"], [[128318, 128319], "valid", [], "NV8"], [[128320, 128323], "valid", [], "NV8"], [[128324, 128330], "valid", [], "NV8"], [[128331, 128335], "valid", [], "NV8"], [[128336, 128359], "valid", [], "NV8"], [[128360, 128377], "valid", [], "NV8"], [[128378, 128378], "disallowed"], [[128379, 128419], "valid", [], "NV8"], [[128420, 128420], "disallowed"], [[128421, 128506], "valid", [], "NV8"], [[128507, 128511], "valid", [], "NV8"], [[128512, 128512], "valid", [], "NV8"], [[128513, 128528], "valid", [], "NV8"], [[128529, 128529], "valid", [], "NV8"], [[128530, 128532], "valid", [], "NV8"], [[128533, 128533], "valid", [], "NV8"], [[128534, 128534], "valid", [], "NV8"], [[128535, 128535], "valid", [], "NV8"], [[128536, 128536], "valid", [], "NV8"], [[128537, 128537], "valid", [], "NV8"], [[128538, 128538], "valid", [], "NV8"], [[128539, 128539], "valid", [], "NV8"], [[128540, 128542], "valid", [], "NV8"], [[128543, 128543], "valid", [], "NV8"], [[128544, 128549], "valid", [], "NV8"], [[128550, 128551], "valid", [], "NV8"], [[128552, 128555], "valid", [], "NV8"], [[128556, 128556], "valid", [], "NV8"], [[128557, 128557], "valid", [], "NV8"], [[128558, 128559], "valid", [], "NV8"], [[128560, 128563], "valid", [], "NV8"], [[128564, 128564], "valid", [], "NV8"], [[128565, 128576], "valid", [], "NV8"], [[128577, 128578], "valid", [], "NV8"], [[128579, 128580], "valid", [], "NV8"], [[128581, 128591], "valid", [], "NV8"], [[128592, 128639], "valid", [], "NV8"], [[128640, 128709], "valid", [], "NV8"], [[128710, 128719], "valid", [], "NV8"], [[128720, 128720], "valid", [], "NV8"], [[128721, 128735], "disallowed"], [[128736, 128748], "valid", [], "NV8"], [[128749, 128751], "disallowed"], [[128752, 128755], "valid", [], "NV8"], [[128756, 128767], "disallowed"], [[128768, 128883], "valid", [], "NV8"], [[128884, 128895], "disallowed"], [[128896, 128980], "valid", [], "NV8"], [[128981, 129023], "disallowed"], [[129024, 129035], "valid", [], "NV8"], [[129036, 129039], "disallowed"], [[129040, 129095], "valid", [], "NV8"], [[129096, 129103], "disallowed"], [[129104, 129113], "valid", [], "NV8"], [[129114, 129119], "disallowed"], [[129120, 129159], "valid", [], "NV8"], [[129160, 129167], "disallowed"], [[129168, 129197], "valid", [], "NV8"], [[129198, 129295], "disallowed"], [[129296, 129304], "valid", [], "NV8"], [[129305, 129407], "disallowed"], [[129408, 129412], "valid", [], "NV8"], [[129413, 129471], "disallowed"], [[129472, 129472], "valid", [], "NV8"], [[129473, 131069], "disallowed"], [[131070, 131071], "disallowed"], [[131072, 173782], "valid"], [[173783, 173823], "disallowed"], [[173824, 177972], "valid"], [[177973, 177983], "disallowed"], [[177984, 178205], "valid"], [[178206, 178207], "disallowed"], [[178208, 183969], "valid"], [[183970, 194559], "disallowed"], [[194560, 194560], "mapped", [20029]], [[194561, 194561], "mapped", [20024]], [[194562, 194562], "mapped", [20033]], [[194563, 194563], "mapped", [131362]], [[194564, 194564], "mapped", [20320]], [[194565, 194565], "mapped", [20398]], [[194566, 194566], "mapped", [20411]], [[194567, 194567], "mapped", [20482]], [[194568, 194568], "mapped", [20602]], [[194569, 194569], "mapped", [20633]], [[194570, 194570], "mapped", [20711]], [[194571, 194571], "mapped", [20687]], [[194572, 194572], "mapped", [13470]], [[194573, 194573], "mapped", [132666]], [[194574, 194574], "mapped", [20813]], [[194575, 194575], "mapped", [20820]], [[194576, 194576], "mapped", [20836]], [[194577, 194577], "mapped", [20855]], [[194578, 194578], "mapped", [132380]], [[194579, 194579], "mapped", [13497]], [[194580, 194580], "mapped", [20839]], [[194581, 194581], "mapped", [20877]], [[194582, 194582], "mapped", [132427]], [[194583, 194583], "mapped", [20887]], [[194584, 194584], "mapped", [20900]], [[194585, 194585], "mapped", [20172]], [[194586, 194586], "mapped", [20908]], [[194587, 194587], "mapped", [20917]], [[194588, 194588], "mapped", [168415]], [[194589, 194589], "mapped", [20981]], [[194590, 194590], "mapped", [20995]], [[194591, 194591], "mapped", [13535]], [[194592, 194592], "mapped", [21051]], [[194593, 194593], "mapped", [21062]], [[194594, 194594], "mapped", [21106]], [[194595, 194595], "mapped", [21111]], [[194596, 194596], "mapped", [13589]], [[194597, 194597], "mapped", [21191]], [[194598, 194598], "mapped", [21193]], [[194599, 194599], "mapped", [21220]], [[194600, 194600], "mapped", [21242]], [[194601, 194601], "mapped", [21253]], [[194602, 194602], "mapped", [21254]], [[194603, 194603], "mapped", [21271]], [[194604, 194604], "mapped", [21321]], [[194605, 194605], "mapped", [21329]], [[194606, 194606], "mapped", [21338]], [[194607, 194607], "mapped", [21363]], [[194608, 194608], "mapped", [21373]], [[194609, 194611], "mapped", [21375]], [[194612, 194612], "mapped", [133676]], [[194613, 194613], "mapped", [28784]], [[194614, 194614], "mapped", [21450]], [[194615, 194615], "mapped", [21471]], [[194616, 194616], "mapped", [133987]], [[194617, 194617], "mapped", [21483]], [[194618, 194618], "mapped", [21489]], [[194619, 194619], "mapped", [21510]], [[194620, 194620], "mapped", [21662]], [[194621, 194621], "mapped", [21560]], [[194622, 194622], "mapped", [21576]], [[194623, 194623], "mapped", [21608]], [[194624, 194624], "mapped", [21666]], [[194625, 194625], "mapped", [21750]], [[194626, 194626], "mapped", [21776]], [[194627, 194627], "mapped", [21843]], [[194628, 194628], "mapped", [21859]], [[194629, 194630], "mapped", [21892]], [[194631, 194631], "mapped", [21913]], [[194632, 194632], "mapped", [21931]], [[194633, 194633], "mapped", [21939]], [[194634, 194634], "mapped", [21954]], [[194635, 194635], "mapped", [22294]], [[194636, 194636], "mapped", [22022]], [[194637, 194637], "mapped", [22295]], [[194638, 194638], "mapped", [22097]], [[194639, 194639], "mapped", [22132]], [[194640, 194640], "mapped", [20999]], [[194641, 194641], "mapped", [22766]], [[194642, 194642], "mapped", [22478]], [[194643, 194643], "mapped", [22516]], [[194644, 194644], "mapped", [22541]], [[194645, 194645], "mapped", [22411]], [[194646, 194646], "mapped", [22578]], [[194647, 194647], "mapped", [22577]], [[194648, 194648], "mapped", [22700]], [[194649, 194649], "mapped", [136420]], [[194650, 194650], "mapped", [22770]], [[194651, 194651], "mapped", [22775]], [[194652, 194652], "mapped", [22790]], [[194653, 194653], "mapped", [22810]], [[194654, 194654], "mapped", [22818]], [[194655, 194655], "mapped", [22882]], [[194656, 194656], "mapped", [136872]], [[194657, 194657], "mapped", [136938]], [[194658, 194658], "mapped", [23020]], [[194659, 194659], "mapped", [23067]], [[194660, 194660], "mapped", [23079]], [[194661, 194661], "mapped", [23e3]], [[194662, 194662], "mapped", [23142]], [[194663, 194663], "mapped", [14062]], [[194664, 194664], "disallowed"], [[194665, 194665], "mapped", [23304]], [[194666, 194667], "mapped", [23358]], [[194668, 194668], "mapped", [137672]], [[194669, 194669], "mapped", [23491]], [[194670, 194670], "mapped", [23512]], [[194671, 194671], "mapped", [23527]], [[194672, 194672], "mapped", [23539]], [[194673, 194673], "mapped", [138008]], [[194674, 194674], "mapped", [23551]], [[194675, 194675], "mapped", [23558]], [[194676, 194676], "disallowed"], [[194677, 194677], "mapped", [23586]], [[194678, 194678], "mapped", [14209]], [[194679, 194679], "mapped", [23648]], [[194680, 194680], "mapped", [23662]], [[194681, 194681], "mapped", [23744]], [[194682, 194682], "mapped", [23693]], [[194683, 194683], "mapped", [138724]], [[194684, 194684], "mapped", [23875]], [[194685, 194685], "mapped", [138726]], [[194686, 194686], "mapped", [23918]], [[194687, 194687], "mapped", [23915]], [[194688, 194688], "mapped", [23932]], [[194689, 194689], "mapped", [24033]], [[194690, 194690], "mapped", [24034]], [[194691, 194691], "mapped", [14383]], [[194692, 194692], "mapped", [24061]], [[194693, 194693], "mapped", [24104]], [[194694, 194694], "mapped", [24125]], [[194695, 194695], "mapped", [24169]], [[194696, 194696], "mapped", [14434]], [[194697, 194697], "mapped", [139651]], [[194698, 194698], "mapped", [14460]], [[194699, 194699], "mapped", [24240]], [[194700, 194700], "mapped", [24243]], [[194701, 194701], "mapped", [24246]], [[194702, 194702], "mapped", [24266]], [[194703, 194703], "mapped", [172946]], [[194704, 194704], "mapped", [24318]], [[194705, 194706], "mapped", [140081]], [[194707, 194707], "mapped", [33281]], [[194708, 194709], "mapped", [24354]], [[194710, 194710], "mapped", [14535]], [[194711, 194711], "mapped", [144056]], [[194712, 194712], "mapped", [156122]], [[194713, 194713], "mapped", [24418]], [[194714, 194714], "mapped", [24427]], [[194715, 194715], "mapped", [14563]], [[194716, 194716], "mapped", [24474]], [[194717, 194717], "mapped", [24525]], [[194718, 194718], "mapped", [24535]], [[194719, 194719], "mapped", [24569]], [[194720, 194720], "mapped", [24705]], [[194721, 194721], "mapped", [14650]], [[194722, 194722], "mapped", [14620]], [[194723, 194723], "mapped", [24724]], [[194724, 194724], "mapped", [141012]], [[194725, 194725], "mapped", [24775]], [[194726, 194726], "mapped", [24904]], [[194727, 194727], "mapped", [24908]], [[194728, 194728], "mapped", [24910]], [[194729, 194729], "mapped", [24908]], [[194730, 194730], "mapped", [24954]], [[194731, 194731], "mapped", [24974]], [[194732, 194732], "mapped", [25010]], [[194733, 194733], "mapped", [24996]], [[194734, 194734], "mapped", [25007]], [[194735, 194735], "mapped", [25054]], [[194736, 194736], "mapped", [25074]], [[194737, 194737], "mapped", [25078]], [[194738, 194738], "mapped", [25104]], [[194739, 194739], "mapped", [25115]], [[194740, 194740], "mapped", [25181]], [[194741, 194741], "mapped", [25265]], [[194742, 194742], "mapped", [25300]], [[194743, 194743], "mapped", [25424]], [[194744, 194744], "mapped", [142092]], [[194745, 194745], "mapped", [25405]], [[194746, 194746], "mapped", [25340]], [[194747, 194747], "mapped", [25448]], [[194748, 194748], "mapped", [25475]], [[194749, 194749], "mapped", [25572]], [[194750, 194750], "mapped", [142321]], [[194751, 194751], "mapped", [25634]], [[194752, 194752], "mapped", [25541]], [[194753, 194753], "mapped", [25513]], [[194754, 194754], "mapped", [14894]], [[194755, 194755], "mapped", [25705]], [[194756, 194756], "mapped", [25726]], [[194757, 194757], "mapped", [25757]], [[194758, 194758], "mapped", [25719]], [[194759, 194759], "mapped", [14956]], [[194760, 194760], "mapped", [25935]], [[194761, 194761], "mapped", [25964]], [[194762, 194762], "mapped", [143370]], [[194763, 194763], "mapped", [26083]], [[194764, 194764], "mapped", [26360]], [[194765, 194765], "mapped", [26185]], [[194766, 194766], "mapped", [15129]], [[194767, 194767], "mapped", [26257]], [[194768, 194768], "mapped", [15112]], [[194769, 194769], "mapped", [15076]], [[194770, 194770], "mapped", [20882]], [[194771, 194771], "mapped", [20885]], [[194772, 194772], "mapped", [26368]], [[194773, 194773], "mapped", [26268]], [[194774, 194774], "mapped", [32941]], [[194775, 194775], "mapped", [17369]], [[194776, 194776], "mapped", [26391]], [[194777, 194777], "mapped", [26395]], [[194778, 194778], "mapped", [26401]], [[194779, 194779], "mapped", [26462]], [[194780, 194780], "mapped", [26451]], [[194781, 194781], "mapped", [144323]], [[194782, 194782], "mapped", [15177]], [[194783, 194783], "mapped", [26618]], [[194784, 194784], "mapped", [26501]], [[194785, 194785], "mapped", [26706]], [[194786, 194786], "mapped", [26757]], [[194787, 194787], "mapped", [144493]], [[194788, 194788], "mapped", [26766]], [[194789, 194789], "mapped", [26655]], [[194790, 194790], "mapped", [26900]], [[194791, 194791], "mapped", [15261]], [[194792, 194792], "mapped", [26946]], [[194793, 194793], "mapped", [27043]], [[194794, 194794], "mapped", [27114]], [[194795, 194795], "mapped", [27304]], [[194796, 194796], "mapped", [145059]], [[194797, 194797], "mapped", [27355]], [[194798, 194798], "mapped", [15384]], [[194799, 194799], "mapped", [27425]], [[194800, 194800], "mapped", [145575]], [[194801, 194801], "mapped", [27476]], [[194802, 194802], "mapped", [15438]], [[194803, 194803], "mapped", [27506]], [[194804, 194804], "mapped", [27551]], [[194805, 194805], "mapped", [27578]], [[194806, 194806], "mapped", [27579]], [[194807, 194807], "mapped", [146061]], [[194808, 194808], "mapped", [138507]], [[194809, 194809], "mapped", [146170]], [[194810, 194810], "mapped", [27726]], [[194811, 194811], "mapped", [146620]], [[194812, 194812], "mapped", [27839]], [[194813, 194813], "mapped", [27853]], [[194814, 194814], "mapped", [27751]], [[194815, 194815], "mapped", [27926]], [[194816, 194816], "mapped", [27966]], [[194817, 194817], "mapped", [28023]], [[194818, 194818], "mapped", [27969]], [[194819, 194819], "mapped", [28009]], [[194820, 194820], "mapped", [28024]], [[194821, 194821], "mapped", [28037]], [[194822, 194822], "mapped", [146718]], [[194823, 194823], "mapped", [27956]], [[194824, 194824], "mapped", [28207]], [[194825, 194825], "mapped", [28270]], [[194826, 194826], "mapped", [15667]], [[194827, 194827], "mapped", [28363]], [[194828, 194828], "mapped", [28359]], [[194829, 194829], "mapped", [147153]], [[194830, 194830], "mapped", [28153]], [[194831, 194831], "mapped", [28526]], [[194832, 194832], "mapped", [147294]], [[194833, 194833], "mapped", [147342]], [[194834, 194834], "mapped", [28614]], [[194835, 194835], "mapped", [28729]], [[194836, 194836], "mapped", [28702]], [[194837, 194837], "mapped", [28699]], [[194838, 194838], "mapped", [15766]], [[194839, 194839], "mapped", [28746]], [[194840, 194840], "mapped", [28797]], [[194841, 194841], "mapped", [28791]], [[194842, 194842], "mapped", [28845]], [[194843, 194843], "mapped", [132389]], [[194844, 194844], "mapped", [28997]], [[194845, 194845], "mapped", [148067]], [[194846, 194846], "mapped", [29084]], [[194847, 194847], "disallowed"], [[194848, 194848], "mapped", [29224]], [[194849, 194849], "mapped", [29237]], [[194850, 194850], "mapped", [29264]], [[194851, 194851], "mapped", [149e3]], [[194852, 194852], "mapped", [29312]], [[194853, 194853], "mapped", [29333]], [[194854, 194854], "mapped", [149301]], [[194855, 194855], "mapped", [149524]], [[194856, 194856], "mapped", [29562]], [[194857, 194857], "mapped", [29579]], [[194858, 194858], "mapped", [16044]], [[194859, 194859], "mapped", [29605]], [[194860, 194861], "mapped", [16056]], [[194862, 194862], "mapped", [29767]], [[194863, 194863], "mapped", [29788]], [[194864, 194864], "mapped", [29809]], [[194865, 194865], "mapped", [29829]], [[194866, 194866], "mapped", [29898]], [[194867, 194867], "mapped", [16155]], [[194868, 194868], "mapped", [29988]], [[194869, 194869], "mapped", [150582]], [[194870, 194870], "mapped", [30014]], [[194871, 194871], "mapped", [150674]], [[194872, 194872], "mapped", [30064]], [[194873, 194873], "mapped", [139679]], [[194874, 194874], "mapped", [30224]], [[194875, 194875], "mapped", [151457]], [[194876, 194876], "mapped", [151480]], [[194877, 194877], "mapped", [151620]], [[194878, 194878], "mapped", [16380]], [[194879, 194879], "mapped", [16392]], [[194880, 194880], "mapped", [30452]], [[194881, 194881], "mapped", [151795]], [[194882, 194882], "mapped", [151794]], [[194883, 194883], "mapped", [151833]], [[194884, 194884], "mapped", [151859]], [[194885, 194885], "mapped", [30494]], [[194886, 194887], "mapped", [30495]], [[194888, 194888], "mapped", [30538]], [[194889, 194889], "mapped", [16441]], [[194890, 194890], "mapped", [30603]], [[194891, 194891], "mapped", [16454]], [[194892, 194892], "mapped", [16534]], [[194893, 194893], "mapped", [152605]], [[194894, 194894], "mapped", [30798]], [[194895, 194895], "mapped", [30860]], [[194896, 194896], "mapped", [30924]], [[194897, 194897], "mapped", [16611]], [[194898, 194898], "mapped", [153126]], [[194899, 194899], "mapped", [31062]], [[194900, 194900], "mapped", [153242]], [[194901, 194901], "mapped", [153285]], [[194902, 194902], "mapped", [31119]], [[194903, 194903], "mapped", [31211]], [[194904, 194904], "mapped", [16687]], [[194905, 194905], "mapped", [31296]], [[194906, 194906], "mapped", [31306]], [[194907, 194907], "mapped", [31311]], [[194908, 194908], "mapped", [153980]], [[194909, 194910], "mapped", [154279]], [[194911, 194911], "disallowed"], [[194912, 194912], "mapped", [16898]], [[194913, 194913], "mapped", [154539]], [[194914, 194914], "mapped", [31686]], [[194915, 194915], "mapped", [31689]], [[194916, 194916], "mapped", [16935]], [[194917, 194917], "mapped", [154752]], [[194918, 194918], "mapped", [31954]], [[194919, 194919], "mapped", [17056]], [[194920, 194920], "mapped", [31976]], [[194921, 194921], "mapped", [31971]], [[194922, 194922], "mapped", [32e3]], [[194923, 194923], "mapped", [155526]], [[194924, 194924], "mapped", [32099]], [[194925, 194925], "mapped", [17153]], [[194926, 194926], "mapped", [32199]], [[194927, 194927], "mapped", [32258]], [[194928, 194928], "mapped", [32325]], [[194929, 194929], "mapped", [17204]], [[194930, 194930], "mapped", [156200]], [[194931, 194931], "mapped", [156231]], [[194932, 194932], "mapped", [17241]], [[194933, 194933], "mapped", [156377]], [[194934, 194934], "mapped", [32634]], [[194935, 194935], "mapped", [156478]], [[194936, 194936], "mapped", [32661]], [[194937, 194937], "mapped", [32762]], [[194938, 194938], "mapped", [32773]], [[194939, 194939], "mapped", [156890]], [[194940, 194940], "mapped", [156963]], [[194941, 194941], "mapped", [32864]], [[194942, 194942], "mapped", [157096]], [[194943, 194943], "mapped", [32880]], [[194944, 194944], "mapped", [144223]], [[194945, 194945], "mapped", [17365]], [[194946, 194946], "mapped", [32946]], [[194947, 194947], "mapped", [33027]], [[194948, 194948], "mapped", [17419]], [[194949, 194949], "mapped", [33086]], [[194950, 194950], "mapped", [23221]], [[194951, 194951], "mapped", [157607]], [[194952, 194952], "mapped", [157621]], [[194953, 194953], "mapped", [144275]], [[194954, 194954], "mapped", [144284]], [[194955, 194955], "mapped", [33281]], [[194956, 194956], "mapped", [33284]], [[194957, 194957], "mapped", [36766]], [[194958, 194958], "mapped", [17515]], [[194959, 194959], "mapped", [33425]], [[194960, 194960], "mapped", [33419]], [[194961, 194961], "mapped", [33437]], [[194962, 194962], "mapped", [21171]], [[194963, 194963], "mapped", [33457]], [[194964, 194964], "mapped", [33459]], [[194965, 194965], "mapped", [33469]], [[194966, 194966], "mapped", [33510]], [[194967, 194967], "mapped", [158524]], [[194968, 194968], "mapped", [33509]], [[194969, 194969], "mapped", [33565]], [[194970, 194970], "mapped", [33635]], [[194971, 194971], "mapped", [33709]], [[194972, 194972], "mapped", [33571]], [[194973, 194973], "mapped", [33725]], [[194974, 194974], "mapped", [33767]], [[194975, 194975], "mapped", [33879]], [[194976, 194976], "mapped", [33619]], [[194977, 194977], "mapped", [33738]], [[194978, 194978], "mapped", [33740]], [[194979, 194979], "mapped", [33756]], [[194980, 194980], "mapped", [158774]], [[194981, 194981], "mapped", [159083]], [[194982, 194982], "mapped", [158933]], [[194983, 194983], "mapped", [17707]], [[194984, 194984], "mapped", [34033]], [[194985, 194985], "mapped", [34035]], [[194986, 194986], "mapped", [34070]], [[194987, 194987], "mapped", [160714]], [[194988, 194988], "mapped", [34148]], [[194989, 194989], "mapped", [159532]], [[194990, 194990], "mapped", [17757]], [[194991, 194991], "mapped", [17761]], [[194992, 194992], "mapped", [159665]], [[194993, 194993], "mapped", [159954]], [[194994, 194994], "mapped", [17771]], [[194995, 194995], "mapped", [34384]], [[194996, 194996], "mapped", [34396]], [[194997, 194997], "mapped", [34407]], [[194998, 194998], "mapped", [34409]], [[194999, 194999], "mapped", [34473]], [[195e3, 195e3], "mapped", [34440]], [[195001, 195001], "mapped", [34574]], [[195002, 195002], "mapped", [34530]], [[195003, 195003], "mapped", [34681]], [[195004, 195004], "mapped", [34600]], [[195005, 195005], "mapped", [34667]], [[195006, 195006], "mapped", [34694]], [[195007, 195007], "disallowed"], [[195008, 195008], "mapped", [34785]], [[195009, 195009], "mapped", [34817]], [[195010, 195010], "mapped", [17913]], [[195011, 195011], "mapped", [34912]], [[195012, 195012], "mapped", [34915]], [[195013, 195013], "mapped", [161383]], [[195014, 195014], "mapped", [35031]], [[195015, 195015], "mapped", [35038]], [[195016, 195016], "mapped", [17973]], [[195017, 195017], "mapped", [35066]], [[195018, 195018], "mapped", [13499]], [[195019, 195019], "mapped", [161966]], [[195020, 195020], "mapped", [162150]], [[195021, 195021], "mapped", [18110]], [[195022, 195022], "mapped", [18119]], [[195023, 195023], "mapped", [35488]], [[195024, 195024], "mapped", [35565]], [[195025, 195025], "mapped", [35722]], [[195026, 195026], "mapped", [35925]], [[195027, 195027], "mapped", [162984]], [[195028, 195028], "mapped", [36011]], [[195029, 195029], "mapped", [36033]], [[195030, 195030], "mapped", [36123]], [[195031, 195031], "mapped", [36215]], [[195032, 195032], "mapped", [163631]], [[195033, 195033], "mapped", [133124]], [[195034, 195034], "mapped", [36299]], [[195035, 195035], "mapped", [36284]], [[195036, 195036], "mapped", [36336]], [[195037, 195037], "mapped", [133342]], [[195038, 195038], "mapped", [36564]], [[195039, 195039], "mapped", [36664]], [[195040, 195040], "mapped", [165330]], [[195041, 195041], "mapped", [165357]], [[195042, 195042], "mapped", [37012]], [[195043, 195043], "mapped", [37105]], [[195044, 195044], "mapped", [37137]], [[195045, 195045], "mapped", [165678]], [[195046, 195046], "mapped", [37147]], [[195047, 195047], "mapped", [37432]], [[195048, 195048], "mapped", [37591]], [[195049, 195049], "mapped", [37592]], [[195050, 195050], "mapped", [37500]], [[195051, 195051], "mapped", [37881]], [[195052, 195052], "mapped", [37909]], [[195053, 195053], "mapped", [166906]], [[195054, 195054], "mapped", [38283]], [[195055, 195055], "mapped", [18837]], [[195056, 195056], "mapped", [38327]], [[195057, 195057], "mapped", [167287]], [[195058, 195058], "mapped", [18918]], [[195059, 195059], "mapped", [38595]], [[195060, 195060], "mapped", [23986]], [[195061, 195061], "mapped", [38691]], [[195062, 195062], "mapped", [168261]], [[195063, 195063], "mapped", [168474]], [[195064, 195064], "mapped", [19054]], [[195065, 195065], "mapped", [19062]], [[195066, 195066], "mapped", [38880]], [[195067, 195067], "mapped", [168970]], [[195068, 195068], "mapped", [19122]], [[195069, 195069], "mapped", [169110]], [[195070, 195071], "mapped", [38923]], [[195072, 195072], "mapped", [38953]], [[195073, 195073], "mapped", [169398]], [[195074, 195074], "mapped", [39138]], [[195075, 195075], "mapped", [19251]], [[195076, 195076], "mapped", [39209]], [[195077, 195077], "mapped", [39335]], [[195078, 195078], "mapped", [39362]], [[195079, 195079], "mapped", [39422]], [[195080, 195080], "mapped", [19406]], [[195081, 195081], "mapped", [170800]], [[195082, 195082], "mapped", [39698]], [[195083, 195083], "mapped", [4e4]], [[195084, 195084], "mapped", [40189]], [[195085, 195085], "mapped", [19662]], [[195086, 195086], "mapped", [19693]], [[195087, 195087], "mapped", [40295]], [[195088, 195088], "mapped", [172238]], [[195089, 195089], "mapped", [19704]], [[195090, 195090], "mapped", [172293]], [[195091, 195091], "mapped", [172558]], [[195092, 195092], "mapped", [172689]], [[195093, 195093], "mapped", [40635]], [[195094, 195094], "mapped", [19798]], [[195095, 195095], "mapped", [40697]], [[195096, 195096], "mapped", [40702]], [[195097, 195097], "mapped", [40709]], [[195098, 195098], "mapped", [40719]], [[195099, 195099], "mapped", [40726]], [[195100, 195100], "mapped", [40763]], [[195101, 195101], "mapped", [173568]], [[195102, 196605], "disallowed"], [[196606, 196607], "disallowed"], [[196608, 262141], "disallowed"], [[262142, 262143], "disallowed"], [[262144, 327677], "disallowed"], [[327678, 327679], "disallowed"], [[327680, 393213], "disallowed"], [[393214, 393215], "disallowed"], [[393216, 458749], "disallowed"], [[458750, 458751], "disallowed"], [[458752, 524285], "disallowed"], [[524286, 524287], "disallowed"], [[524288, 589821], "disallowed"], [[589822, 589823], "disallowed"], [[589824, 655357], "disallowed"], [[655358, 655359], "disallowed"], [[655360, 720893], "disallowed"], [[720894, 720895], "disallowed"], [[720896, 786429], "disallowed"], [[786430, 786431], "disallowed"], [[786432, 851965], "disallowed"], [[851966, 851967], "disallowed"], [[851968, 917501], "disallowed"], [[917502, 917503], "disallowed"], [[917504, 917504], "disallowed"], [[917505, 917505], "disallowed"], [[917506, 917535], "disallowed"], [[917536, 917631], "disallowed"], [[917632, 917759], "disallowed"], [[917760, 917999], "ignored"], [[918e3, 983037], "disallowed"], [[983038, 983039], "disallowed"], [[983040, 1048573], "disallowed"], [[1048574, 1048575], "disallowed"], [[1048576, 1114109], "disallowed"], [[1114110, 1114111], "disallowed"]];
+  }
+});
+
+// ../../../node_modules/tr46/index.js
+var require_tr46 = __commonJS({
+  "../../../node_modules/tr46/index.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var mappingTable = require_mappingTable();
+    var PROCESSING_OPTIONS = {
+      TRANSITIONAL: 0,
+      NONTRANSITIONAL: 1
+    };
+    function normalize(str) {
+      return str.split("\0").map(function(s) {
+        return s.normalize("NFC");
+      }).join("\0");
+    }
+    function findStatus(val2) {
+      var start = 0;
+      var end = mappingTable.length - 1;
+      while (start <= end) {
+        var mid = Math.floor((start + end) / 2);
+        var target = mappingTable[mid];
+        if (target[0][0] <= val2 && target[0][1] >= val2) {
+          return target;
+        } else if (target[0][0] > val2) {
+          end = mid - 1;
+        } else {
+          start = mid + 1;
+        }
+      }
+      return null;
+    }
+    var regexAstralSymbols = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
+    function countSymbols(string) {
+      return string.replace(regexAstralSymbols, "_").length;
+    }
+    function mapChars(domain_name, useSTD3, processing_option) {
+      var hasError = false;
+      var processed = "";
+      var len = countSymbols(domain_name);
+      for (var i = 0; i < len; ++i) {
+        var codePoint = domain_name.codePointAt(i);
+        var status = findStatus(codePoint);
+        switch (status[1]) {
+          case "disallowed":
+            hasError = true;
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "ignored":
+            break;
+          case "mapped":
+            processed += String.fromCodePoint.apply(String, status[2]);
+            break;
+          case "deviation":
+            if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            } else {
+              processed += String.fromCodePoint(codePoint);
+            }
+            break;
+          case "valid":
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "disallowed_STD3_mapped":
+            if (useSTD3) {
+              hasError = true;
+              processed += String.fromCodePoint(codePoint);
+            } else {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            }
+            break;
+          case "disallowed_STD3_valid":
+            if (useSTD3) {
+              hasError = true;
+            }
+            processed += String.fromCodePoint(codePoint);
+            break;
+        }
+      }
+      return {
+        string: processed,
+        error: hasError
+      };
+    }
+    var combiningMarksRegex = /[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/;
+    function validateLabel(label, processing_option) {
+      if (label.substr(0, 4) === "xn--") {
+        label = punycode.toUnicode(label);
+        processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL;
+      }
+      var error = false;
+      if (normalize(label) !== label || label[3] === "-" && label[4] === "-" || label[0] === "-" || label[label.length - 1] === "-" || label.indexOf(".") !== -1 || label.search(combiningMarksRegex) === 0) {
+        error = true;
+      }
+      var len = countSymbols(label);
+      for (var i = 0; i < len; ++i) {
+        var status = findStatus(label.codePointAt(i));
+        if (processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== "valid" || processing === PROCESSING_OPTIONS.NONTRANSITIONAL && status[1] !== "valid" && status[1] !== "deviation") {
+          error = true;
+          break;
+        }
+      }
+      return {
+        label,
+        error
+      };
+    }
+    function processing(domain_name, useSTD3, processing_option) {
+      var result = mapChars(domain_name, useSTD3, processing_option);
+      result.string = normalize(result.string);
+      var labels = result.string.split(".");
+      for (var i = 0; i < labels.length; ++i) {
+        try {
+          var validation = validateLabel(labels[i]);
+          labels[i] = validation.label;
+          result.error = result.error || validation.error;
+        } catch (e) {
+          result.error = true;
+        }
+      }
+      return {
+        string: labels.join("."),
+        error: result.error
+      };
+    }
+    module2.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) {
+      var result = processing(domain_name, useSTD3, processing_option);
+      var labels = result.string.split(".");
+      labels = labels.map(function(l) {
+        try {
+          return punycode.toASCII(l);
+        } catch (e) {
+          result.error = true;
+          return l;
+        }
+      });
+      if (verifyDnsLength) {
+        var total = labels.slice(0, labels.length - 1).join(".").length;
+        if (total.length > 253 || total.length === 0) {
+          result.error = true;
+        }
+        for (var i = 0; i < labels.length; ++i) {
+          if (labels.length > 63 || labels.length === 0) {
+            result.error = true;
+            break;
+          }
+        }
+      }
+      if (result.error) return null;
+      return labels.join(".");
+    };
+    module2.exports.toUnicode = function(domain_name, useSTD3) {
+      var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL);
+      return {
+        domain: result.string,
+        error: result.error
+      };
+    };
+    module2.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS;
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/url-state-machine.js
+var require_url_state_machine = __commonJS({
+  "../../../node_modules/whatwg-url/lib/url-state-machine.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var tr46 = require_tr46();
+    var specialSchemes = {
+      ftp: 21,
+      file: null,
+      gopher: 70,
+      http: 80,
+      https: 443,
+      ws: 80,
+      wss: 443
+    };
+    var failure = /* @__PURE__ */ Symbol("failure");
+    function countSymbols(str) {
+      return punycode.ucs2.decode(str).length;
+    }
+    function at(input, idx) {
+      const c = input[idx];
+      return isNaN(c) ? void 0 : String.fromCodePoint(c);
+    }
+    function isASCIIDigit(c) {
+      return c >= 48 && c <= 57;
+    }
+    function isASCIIAlpha(c) {
+      return c >= 65 && c <= 90 || c >= 97 && c <= 122;
+    }
+    function isASCIIAlphanumeric(c) {
+      return isASCIIAlpha(c) || isASCIIDigit(c);
+    }
+    function isASCIIHex(c) {
+      return isASCIIDigit(c) || c >= 65 && c <= 70 || c >= 97 && c <= 102;
+    }
+    function isSingleDot(buffer) {
+      return buffer === "." || buffer.toLowerCase() === "%2e";
+    }
+    function isDoubleDot(buffer) {
+      buffer = buffer.toLowerCase();
+      return buffer === ".." || buffer === "%2e." || buffer === ".%2e" || buffer === "%2e%2e";
+    }
+    function isWindowsDriveLetterCodePoints(cp1, cp2) {
+      return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124);
+    }
+    function isWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === ":" || string[1] === "|");
+    }
+    function isNormalizedWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === ":";
+    }
+    function containsForbiddenHostCodePoint(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function containsForbiddenHostCodePointExcludingPercent(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function isSpecialScheme(scheme) {
+      return specialSchemes[scheme] !== void 0;
+    }
+    function isSpecial(url2) {
+      return isSpecialScheme(url2.scheme);
+    }
+    function defaultPort(scheme) {
+      return specialSchemes[scheme];
+    }
+    function percentEncode(c) {
+      let hex2 = c.toString(16).toUpperCase();
+      if (hex2.length === 1) {
+        hex2 = "0" + hex2;
+      }
+      return "%" + hex2;
+    }
+    function utf8PercentEncode(c) {
+      const buf = new Buffer(c);
+      let str = "";
+      for (let i = 0; i < buf.length; ++i) {
+        str += percentEncode(buf[i]);
+      }
+      return str;
+    }
+    function utf8PercentDecode(str) {
+      const input = new Buffer(str);
+      const output = [];
+      for (let i = 0; i < input.length; ++i) {
+        if (input[i] !== 37) {
+          output.push(input[i]);
+        } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) {
+          output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16));
+          i += 2;
+        } else {
+          output.push(input[i]);
+        }
+      }
+      return new Buffer(output).toString();
+    }
+    function isC0ControlPercentEncode(c) {
+      return c <= 31 || c > 126;
+    }
+    var extraPathPercentEncodeSet = /* @__PURE__ */ new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]);
+    function isPathPercentEncode(c) {
+      return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c);
+    }
+    var extraUserinfoPercentEncodeSet = /* @__PURE__ */ new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]);
+    function isUserinfoPercentEncode(c) {
+      return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c);
+    }
+    function percentEncodeChar(c, encodeSetPredicate) {
+      const cStr = String.fromCodePoint(c);
+      if (encodeSetPredicate(c)) {
+        return utf8PercentEncode(cStr);
+      }
+      return cStr;
+    }
+    function parseIPv4Number(input) {
+      let R = 10;
+      if (input.length >= 2 && input.charAt(0) === "0" && input.charAt(1).toLowerCase() === "x") {
+        input = input.substring(2);
+        R = 16;
+      } else if (input.length >= 2 && input.charAt(0) === "0") {
+        input = input.substring(1);
+        R = 8;
+      }
+      if (input === "") {
+        return 0;
+      }
+      const regex = R === 10 ? /[^0-9]/ : R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/;
+      if (regex.test(input)) {
+        return failure;
+      }
+      return parseInt(input, R);
+    }
+    function parseIPv4(input) {
+      const parts = input.split(".");
+      if (parts[parts.length - 1] === "") {
+        if (parts.length > 1) {
+          parts.pop();
+        }
+      }
+      if (parts.length > 4) {
+        return input;
+      }
+      const numbers = [];
+      for (const part of parts) {
+        if (part === "") {
+          return input;
+        }
+        const n = parseIPv4Number(part);
+        if (n === failure) {
+          return input;
+        }
+        numbers.push(n);
+      }
+      for (let i = 0; i < numbers.length - 1; ++i) {
+        if (numbers[i] > 255) {
+          return failure;
+        }
+      }
+      if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) {
+        return failure;
+      }
+      let ipv4 = numbers.pop();
+      let counter = 0;
+      for (const n of numbers) {
+        ipv4 += n * Math.pow(256, 3 - counter);
+        ++counter;
+      }
+      return ipv4;
+    }
+    function serializeIPv4(address) {
+      let output = "";
+      let n = address;
+      for (let i = 1; i <= 4; ++i) {
+        output = String(n % 256) + output;
+        if (i !== 4) {
+          output = "." + output;
+        }
+        n = Math.floor(n / 256);
+      }
+      return output;
+    }
+    function parseIPv6(input) {
+      const address = [0, 0, 0, 0, 0, 0, 0, 0];
+      let pieceIndex = 0;
+      let compress = null;
+      let pointer = 0;
+      input = punycode.ucs2.decode(input);
+      if (input[pointer] === 58) {
+        if (input[pointer + 1] !== 58) {
+          return failure;
+        }
+        pointer += 2;
+        ++pieceIndex;
+        compress = pieceIndex;
+      }
+      while (pointer < input.length) {
+        if (pieceIndex === 8) {
+          return failure;
+        }
+        if (input[pointer] === 58) {
+          if (compress !== null) {
+            return failure;
+          }
+          ++pointer;
+          ++pieceIndex;
+          compress = pieceIndex;
+          continue;
+        }
+        let value = 0;
+        let length = 0;
+        while (length < 4 && isASCIIHex(input[pointer])) {
+          value = value * 16 + parseInt(at(input, pointer), 16);
+          ++pointer;
+          ++length;
+        }
+        if (input[pointer] === 46) {
+          if (length === 0) {
+            return failure;
+          }
+          pointer -= length;
+          if (pieceIndex > 6) {
+            return failure;
+          }
+          let numbersSeen = 0;
+          while (input[pointer] !== void 0) {
+            let ipv4Piece = null;
+            if (numbersSeen > 0) {
+              if (input[pointer] === 46 && numbersSeen < 4) {
+                ++pointer;
+              } else {
+                return failure;
+              }
+            }
+            if (!isASCIIDigit(input[pointer])) {
+              return failure;
+            }
+            while (isASCIIDigit(input[pointer])) {
+              const number = parseInt(at(input, pointer));
+              if (ipv4Piece === null) {
+                ipv4Piece = number;
+              } else if (ipv4Piece === 0) {
+                return failure;
+              } else {
+                ipv4Piece = ipv4Piece * 10 + number;
+              }
+              if (ipv4Piece > 255) {
+                return failure;
+              }
+              ++pointer;
+            }
+            address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;
+            ++numbersSeen;
+            if (numbersSeen === 2 || numbersSeen === 4) {
+              ++pieceIndex;
+            }
+          }
+          if (numbersSeen !== 4) {
+            return failure;
+          }
+          break;
+        } else if (input[pointer] === 58) {
+          ++pointer;
+          if (input[pointer] === void 0) {
+            return failure;
+          }
+        } else if (input[pointer] !== void 0) {
+          return failure;
+        }
+        address[pieceIndex] = value;
+        ++pieceIndex;
+      }
+      if (compress !== null) {
+        let swaps = pieceIndex - compress;
+        pieceIndex = 7;
+        while (pieceIndex !== 0 && swaps > 0) {
+          const temp = address[compress + swaps - 1];
+          address[compress + swaps - 1] = address[pieceIndex];
+          address[pieceIndex] = temp;
+          --pieceIndex;
+          --swaps;
+        }
+      } else if (compress === null && pieceIndex !== 8) {
+        return failure;
+      }
+      return address;
+    }
+    function serializeIPv6(address) {
+      let output = "";
+      const seqResult = findLongestZeroSequence(address);
+      const compress = seqResult.idx;
+      let ignore0 = false;
+      for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) {
+        if (ignore0 && address[pieceIndex] === 0) {
+          continue;
+        } else if (ignore0) {
+          ignore0 = false;
+        }
+        if (compress === pieceIndex) {
+          const separator = pieceIndex === 0 ? "::" : ":";
+          output += separator;
+          ignore0 = true;
+          continue;
+        }
+        output += address[pieceIndex].toString(16);
+        if (pieceIndex !== 7) {
+          output += ":";
+        }
+      }
+      return output;
+    }
+    function parseHost(input, isSpecialArg) {
+      if (input[0] === "[") {
+        if (input[input.length - 1] !== "]") {
+          return failure;
+        }
+        return parseIPv6(input.substring(1, input.length - 1));
+      }
+      if (!isSpecialArg) {
+        return parseOpaqueHost(input);
+      }
+      const domain = utf8PercentDecode(input);
+      const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false);
+      if (asciiDomain === null) {
+        return failure;
+      }
+      if (containsForbiddenHostCodePoint(asciiDomain)) {
+        return failure;
+      }
+      const ipv4Host = parseIPv4(asciiDomain);
+      if (typeof ipv4Host === "number" || ipv4Host === failure) {
+        return ipv4Host;
+      }
+      return asciiDomain;
+    }
+    function parseOpaqueHost(input) {
+      if (containsForbiddenHostCodePointExcludingPercent(input)) {
+        return failure;
+      }
+      let output = "";
+      const decoded = punycode.ucs2.decode(input);
+      for (let i = 0; i < decoded.length; ++i) {
+        output += percentEncodeChar(decoded[i], isC0ControlPercentEncode);
+      }
+      return output;
+    }
+    function findLongestZeroSequence(arr) {
+      let maxIdx = null;
+      let maxLen = 1;
+      let currStart = null;
+      let currLen = 0;
+      for (let i = 0; i < arr.length; ++i) {
+        if (arr[i] !== 0) {
+          if (currLen > maxLen) {
+            maxIdx = currStart;
+            maxLen = currLen;
+          }
+          currStart = null;
+          currLen = 0;
+        } else {
+          if (currStart === null) {
+            currStart = i;
+          }
+          ++currLen;
+        }
+      }
+      if (currLen > maxLen) {
+        maxIdx = currStart;
+        maxLen = currLen;
+      }
+      return {
+        idx: maxIdx,
+        len: maxLen
+      };
+    }
+    function serializeHost(host) {
+      if (typeof host === "number") {
+        return serializeIPv4(host);
+      }
+      if (host instanceof Array) {
+        return "[" + serializeIPv6(host) + "]";
+      }
+      return host;
+    }
+    function trimControlChars(url2) {
+      return url2.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g, "");
+    }
+    function trimTabAndNewline(url2) {
+      return url2.replace(/\u0009|\u000A|\u000D/g, "");
+    }
+    function shortenPath(url2) {
+      const path23 = url2.path;
+      if (path23.length === 0) {
+        return;
+      }
+      if (url2.scheme === "file" && path23.length === 1 && isNormalizedWindowsDriveLetter(path23[0])) {
+        return;
+      }
+      path23.pop();
+    }
+    function includesCredentials(url2) {
+      return url2.username !== "" || url2.password !== "";
+    }
+    function cannotHaveAUsernamePasswordPort(url2) {
+      return url2.host === null || url2.host === "" || url2.cannotBeABaseURL || url2.scheme === "file";
+    }
+    function isNormalizedWindowsDriveLetter(string) {
+      return /^[A-Za-z]:$/.test(string);
+    }
+    function URLStateMachine(input, base, encodingOverride, url2, stateOverride) {
+      this.pointer = 0;
+      this.input = input;
+      this.base = base || null;
+      this.encodingOverride = encodingOverride || "utf-8";
+      this.stateOverride = stateOverride;
+      this.url = url2;
+      this.failure = false;
+      this.parseError = false;
+      if (!this.url) {
+        this.url = {
+          scheme: "",
+          username: "",
+          password: "",
+          host: null,
+          port: null,
+          path: [],
+          query: null,
+          fragment: null,
+          cannotBeABaseURL: false
+        };
+        const res2 = trimControlChars(this.input);
+        if (res2 !== this.input) {
+          this.parseError = true;
+        }
+        this.input = res2;
+      }
+      const res = trimTabAndNewline(this.input);
+      if (res !== this.input) {
+        this.parseError = true;
+      }
+      this.input = res;
+      this.state = stateOverride || "scheme start";
+      this.buffer = "";
+      this.atFlag = false;
+      this.arrFlag = false;
+      this.passwordTokenSeenFlag = false;
+      this.input = punycode.ucs2.decode(this.input);
+      for (; this.pointer <= this.input.length; ++this.pointer) {
+        const c = this.input[this.pointer];
+        const cStr = isNaN(c) ? void 0 : String.fromCodePoint(c);
+        const ret = this["parse " + this.state](c, cStr);
+        if (!ret) {
+          break;
+        } else if (ret === failure) {
+          this.failure = true;
+          break;
+        }
+      }
+    }
+    URLStateMachine.prototype["parse scheme start"] = function parseSchemeStart(c, cStr) {
+      if (isASCIIAlpha(c)) {
+        this.buffer += cStr.toLowerCase();
+        this.state = "scheme";
+      } else if (!this.stateOverride) {
+        this.state = "no scheme";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse scheme"] = function parseScheme(c, cStr) {
+      if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) {
+        this.buffer += cStr.toLowerCase();
+      } else if (c === 58) {
+        if (this.stateOverride) {
+          if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === "file") {
+            return false;
+          }
+          if (this.url.scheme === "file" && (this.url.host === "" || this.url.host === null)) {
+            return false;
+          }
+        }
+        this.url.scheme = this.buffer;
+        this.buffer = "";
+        if (this.stateOverride) {
+          return false;
+        }
+        if (this.url.scheme === "file") {
+          if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) {
+            this.parseError = true;
+          }
+          this.state = "file";
+        } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) {
+          this.state = "special relative or authority";
+        } else if (isSpecial(this.url)) {
+          this.state = "special authority slashes";
+        } else if (this.input[this.pointer + 1] === 47) {
+          this.state = "path or authority";
+          ++this.pointer;
+        } else {
+          this.url.cannotBeABaseURL = true;
+          this.url.path.push("");
+          this.state = "cannot-be-a-base-URL path";
+        }
+      } else if (!this.stateOverride) {
+        this.buffer = "";
+        this.state = "no scheme";
+        this.pointer = -1;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse no scheme"] = function parseNoScheme(c) {
+      if (this.base === null || this.base.cannotBeABaseURL && c !== 35) {
+        return failure;
+      } else if (this.base.cannotBeABaseURL && c === 35) {
+        this.url.scheme = this.base.scheme;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.url.cannotBeABaseURL = true;
+        this.state = "fragment";
+      } else if (this.base.scheme === "file") {
+        this.state = "file";
+        --this.pointer;
+      } else {
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special relative or authority"] = function parseSpecialRelativeOrAuthority(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path or authority"] = function parsePathOrAuthority(c) {
+      if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative"] = function parseRelative(c) {
+      this.url.scheme = this.base.scheme;
+      if (isNaN(c)) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+      } else if (c === 47) {
+        this.state = "relative slash";
+      } else if (c === 63) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (isSpecial(this.url) && c === 92) {
+        this.parseError = true;
+        this.state = "relative slash";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice(0, this.base.path.length - 1);
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative slash"] = function parseRelativeSlash(c) {
+      if (isSpecial(this.url) && (c === 47 || c === 92)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "special authority ignore slashes";
+      } else if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority slashes"] = function parseSpecialAuthoritySlashes(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "special authority ignore slashes";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority ignore slashes"] = function parseSpecialAuthorityIgnoreSlashes(c) {
+      if (c !== 47 && c !== 92) {
+        this.state = "authority";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse authority"] = function parseAuthority(c, cStr) {
+      if (c === 64) {
+        this.parseError = true;
+        if (this.atFlag) {
+          this.buffer = "%40" + this.buffer;
+        }
+        this.atFlag = true;
+        const len = countSymbols(this.buffer);
+        for (let pointer = 0; pointer < len; ++pointer) {
+          const codePoint = this.buffer.codePointAt(pointer);
+          if (codePoint === 58 && !this.passwordTokenSeenFlag) {
+            this.passwordTokenSeenFlag = true;
+            continue;
+          }
+          const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode);
+          if (this.passwordTokenSeenFlag) {
+            this.url.password += encodedCodePoints;
+          } else {
+            this.url.username += encodedCodePoints;
+          }
+        }
+        this.buffer = "";
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        if (this.atFlag && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        this.pointer -= countSymbols(this.buffer) + 1;
+        this.buffer = "";
+        this.state = "host";
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse hostname"] = URLStateMachine.prototype["parse host"] = function parseHostName(c, cStr) {
+      if (this.stateOverride && this.url.scheme === "file") {
+        --this.pointer;
+        this.state = "file host";
+      } else if (c === 58 && !this.arrFlag) {
+        if (this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "port";
+        if (this.stateOverride === "hostname") {
+          return false;
+        }
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        --this.pointer;
+        if (isSpecial(this.url) && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        } else if (this.stateOverride && this.buffer === "" && (includesCredentials(this.url) || this.url.port !== null)) {
+          this.parseError = true;
+          return false;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "path start";
+        if (this.stateOverride) {
+          return false;
+        }
+      } else {
+        if (c === 91) {
+          this.arrFlag = true;
+        } else if (c === 93) {
+          this.arrFlag = false;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse port"] = function parsePort(c, cStr) {
+      if (isASCIIDigit(c)) {
+        this.buffer += cStr;
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92 || this.stateOverride) {
+        if (this.buffer !== "") {
+          const port = parseInt(this.buffer);
+          if (port > Math.pow(2, 16) - 1) {
+            this.parseError = true;
+            return failure;
+          }
+          this.url.port = port === defaultPort(this.url.scheme) ? null : port;
+          this.buffer = "";
+        }
+        if (this.stateOverride) {
+          return false;
+        }
+        this.state = "path start";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    var fileOtherwiseCodePoints = /* @__PURE__ */ new Set([47, 92, 63, 35]);
+    URLStateMachine.prototype["parse file"] = function parseFile(c) {
+      this.url.scheme = "file";
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file slash";
+      } else if (this.base !== null && this.base.scheme === "file") {
+        if (isNaN(c)) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+        } else if (c === 63) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = "";
+          this.state = "query";
+        } else if (c === 35) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+          this.url.fragment = "";
+          this.state = "fragment";
+        } else {
+          if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points
+          !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) || this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points
+          !fileOtherwiseCodePoints.has(this.input[this.pointer + 2])) {
+            this.url.host = this.base.host;
+            this.url.path = this.base.path.slice();
+            shortenPath(this.url);
+          } else {
+            this.parseError = true;
+          }
+          this.state = "path";
+          --this.pointer;
+        }
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file slash"] = function parseFileSlash(c) {
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file host";
+      } else {
+        if (this.base !== null && this.base.scheme === "file") {
+          if (isNormalizedWindowsDriveLetterString(this.base.path[0])) {
+            this.url.path.push(this.base.path[0]);
+          } else {
+            this.url.host = this.base.host;
+          }
+        }
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file host"] = function parseFileHost(c, cStr) {
+      if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) {
+        --this.pointer;
+        if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) {
+          this.parseError = true;
+          this.state = "path";
+        } else if (this.buffer === "") {
+          this.url.host = "";
+          if (this.stateOverride) {
+            return false;
+          }
+          this.state = "path start";
+        } else {
+          let host = parseHost(this.buffer, isSpecial(this.url));
+          if (host === failure) {
+            return failure;
+          }
+          if (host === "localhost") {
+            host = "";
+          }
+          this.url.host = host;
+          if (this.stateOverride) {
+            return false;
+          }
+          this.buffer = "";
+          this.state = "path start";
+        }
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path start"] = function parsePathStart(c) {
+      if (isSpecial(this.url)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "path";
+        if (c !== 47 && c !== 92) {
+          --this.pointer;
+        }
+      } else if (!this.stateOverride && c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (!this.stateOverride && c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (c !== void 0) {
+        this.state = "path";
+        if (c !== 47) {
+          --this.pointer;
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path"] = function parsePath(c) {
+      if (isNaN(c) || c === 47 || isSpecial(this.url) && c === 92 || !this.stateOverride && (c === 63 || c === 35)) {
+        if (isSpecial(this.url) && c === 92) {
+          this.parseError = true;
+        }
+        if (isDoubleDot(this.buffer)) {
+          shortenPath(this.url);
+          if (c !== 47 && !(isSpecial(this.url) && c === 92)) {
+            this.url.path.push("");
+          }
+        } else if (isSingleDot(this.buffer) && c !== 47 && !(isSpecial(this.url) && c === 92)) {
+          this.url.path.push("");
+        } else if (!isSingleDot(this.buffer)) {
+          if (this.url.scheme === "file" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) {
+            if (this.url.host !== "" && this.url.host !== null) {
+              this.parseError = true;
+              this.url.host = "";
+            }
+            this.buffer = this.buffer[0] + ":";
+          }
+          this.url.path.push(this.buffer);
+        }
+        this.buffer = "";
+        if (this.url.scheme === "file" && (c === void 0 || c === 63 || c === 35)) {
+          while (this.url.path.length > 1 && this.url.path[0] === "") {
+            this.parseError = true;
+            this.url.path.shift();
+          }
+        }
+        if (c === 63) {
+          this.url.query = "";
+          this.state = "query";
+        }
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += percentEncodeChar(c, isPathPercentEncode);
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse cannot-be-a-base-URL path"] = function parseCannotBeABaseURLPath(c) {
+      if (c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else {
+        if (!isNaN(c) && c !== 37) {
+          this.parseError = true;
+        }
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        if (!isNaN(c)) {
+          this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode);
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse query"] = function parseQuery(c, cStr) {
+      if (isNaN(c) || !this.stateOverride && c === 35) {
+        if (!isSpecial(this.url) || this.url.scheme === "ws" || this.url.scheme === "wss") {
+          this.encodingOverride = "utf-8";
+        }
+        const buffer = new Buffer(this.buffer);
+        for (let i = 0; i < buffer.length; ++i) {
+          if (buffer[i] < 33 || buffer[i] > 126 || buffer[i] === 34 || buffer[i] === 35 || buffer[i] === 60 || buffer[i] === 62) {
+            this.url.query += percentEncode(buffer[i]);
+          } else {
+            this.url.query += String.fromCodePoint(buffer[i]);
+          }
+        }
+        this.buffer = "";
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse fragment"] = function parseFragment(c) {
+      if (isNaN(c)) {
+      } else if (c === 0) {
+        this.parseError = true;
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode);
+      }
+      return true;
+    };
+    function serializeURL(url2, excludeFragment) {
+      let output = url2.scheme + ":";
+      if (url2.host !== null) {
+        output += "//";
+        if (url2.username !== "" || url2.password !== "") {
+          output += url2.username;
+          if (url2.password !== "") {
+            output += ":" + url2.password;
+          }
+          output += "@";
+        }
+        output += serializeHost(url2.host);
+        if (url2.port !== null) {
+          output += ":" + url2.port;
+        }
+      } else if (url2.host === null && url2.scheme === "file") {
+        output += "//";
+      }
+      if (url2.cannotBeABaseURL) {
+        output += url2.path[0];
+      } else {
+        for (const string of url2.path) {
+          output += "/" + string;
+        }
+      }
+      if (url2.query !== null) {
+        output += "?" + url2.query;
+      }
+      if (!excludeFragment && url2.fragment !== null) {
+        output += "#" + url2.fragment;
+      }
+      return output;
+    }
+    function serializeOrigin(tuple) {
+      let result = tuple.scheme + "://";
+      result += serializeHost(tuple.host);
+      if (tuple.port !== null) {
+        result += ":" + tuple.port;
+      }
+      return result;
+    }
+    module2.exports.serializeURL = serializeURL;
+    module2.exports.serializeURLOrigin = function(url2) {
+      switch (url2.scheme) {
+        case "blob":
+          try {
+            return module2.exports.serializeURLOrigin(module2.exports.parseURL(url2.path[0]));
+          } catch (e) {
+            return "null";
+          }
+        case "ftp":
+        case "gopher":
+        case "http":
+        case "https":
+        case "ws":
+        case "wss":
+          return serializeOrigin({
+            scheme: url2.scheme,
+            host: url2.host,
+            port: url2.port
+          });
+        case "file":
+          return "file://";
+        default:
+          return "null";
+      }
+    };
+    module2.exports.basicURLParse = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride);
+      if (usm.failure) {
+        return "failure";
+      }
+      return usm.url;
+    };
+    module2.exports.setTheUsername = function(url2, username) {
+      url2.username = "";
+      const decoded = punycode.ucs2.decode(username);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.setThePassword = function(url2, password) {
+      url2.password = "";
+      const decoded = punycode.ucs2.decode(password);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.serializeHost = serializeHost;
+    module2.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort;
+    module2.exports.serializeInteger = function(integer) {
+      return String(integer);
+    };
+    module2.exports.parseURL = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      return module2.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride });
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL-impl.js
+var require_URL_impl = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL-impl.js"(exports2) {
+    "use strict";
+    var usm = require_url_state_machine();
+    exports2.implementation = class URLImpl {
+      constructor(constructorArgs) {
+        const url2 = constructorArgs[0];
+        const base = constructorArgs[1];
+        let parsedBase = null;
+        if (base !== void 0) {
+          parsedBase = usm.basicURLParse(base);
+          if (parsedBase === "failure") {
+            throw new TypeError("Invalid base URL");
+          }
+        }
+        const parsedURL = usm.basicURLParse(url2, { baseURL: parsedBase });
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get href() {
+        return usm.serializeURL(this._url);
+      }
+      set href(v) {
+        const parsedURL = usm.basicURLParse(v);
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get origin() {
+        return usm.serializeURLOrigin(this._url);
+      }
+      get protocol() {
+        return this._url.scheme + ":";
+      }
+      set protocol(v) {
+        usm.basicURLParse(v + ":", { url: this._url, stateOverride: "scheme start" });
+      }
+      get username() {
+        return this._url.username;
+      }
+      set username(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setTheUsername(this._url, v);
+      }
+      get password() {
+        return this._url.password;
+      }
+      set password(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setThePassword(this._url, v);
+      }
+      get host() {
+        const url2 = this._url;
+        if (url2.host === null) {
+          return "";
+        }
+        if (url2.port === null) {
+          return usm.serializeHost(url2.host);
+        }
+        return usm.serializeHost(url2.host) + ":" + usm.serializeInteger(url2.port);
+      }
+      set host(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "host" });
+      }
+      get hostname() {
+        if (this._url.host === null) {
+          return "";
+        }
+        return usm.serializeHost(this._url.host);
+      }
+      set hostname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "hostname" });
+      }
+      get port() {
+        if (this._url.port === null) {
+          return "";
+        }
+        return usm.serializeInteger(this._url.port);
+      }
+      set port(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        if (v === "") {
+          this._url.port = null;
+        } else {
+          usm.basicURLParse(v, { url: this._url, stateOverride: "port" });
+        }
+      }
+      get pathname() {
+        if (this._url.cannotBeABaseURL) {
+          return this._url.path[0];
+        }
+        if (this._url.path.length === 0) {
+          return "";
+        }
+        return "/" + this._url.path.join("/");
+      }
+      set pathname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        this._url.path = [];
+        usm.basicURLParse(v, { url: this._url, stateOverride: "path start" });
+      }
+      get search() {
+        if (this._url.query === null || this._url.query === "") {
+          return "";
+        }
+        return "?" + this._url.query;
+      }
+      set search(v) {
+        const url2 = this._url;
+        if (v === "") {
+          url2.query = null;
+          return;
+        }
+        const input = v[0] === "?" ? v.substring(1) : v;
+        url2.query = "";
+        usm.basicURLParse(input, { url: url2, stateOverride: "query" });
+      }
+      get hash() {
+        if (this._url.fragment === null || this._url.fragment === "") {
+          return "";
+        }
+        return "#" + this._url.fragment;
+      }
+      set hash(v) {
+        if (v === "") {
+          this._url.fragment = null;
+          return;
+        }
+        const input = v[0] === "#" ? v.substring(1) : v;
+        this._url.fragment = "";
+        usm.basicURLParse(input, { url: this._url, stateOverride: "fragment" });
+      }
+      toJSON() {
+        return this.href;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL.js
+var require_URL = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL.js"(exports2, module2) {
+    "use strict";
+    var conversions = require_lib7();
+    var utils = require_utils3();
+    var Impl = require_URL_impl();
+    var impl = utils.implSymbol;
+    function URL3(url2) {
+      if (!this || this[impl] || !(this instanceof URL3)) {
+        throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");
+      }
+      if (arguments.length < 1) {
+        throw new TypeError("Failed to construct 'URL': 1 argument required, but only " + arguments.length + " present.");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 2; ++i) {
+        args[i] = arguments[i];
+      }
+      args[0] = conversions["USVString"](args[0]);
+      if (args[1] !== void 0) {
+        args[1] = conversions["USVString"](args[1]);
+      }
+      module2.exports.setup(this, args);
+    }
+    URL3.prototype.toJSON = function toJSON() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 0; ++i) {
+        args[i] = arguments[i];
+      }
+      return this[impl].toJSON.apply(this[impl], args);
+    };
+    Object.defineProperty(URL3.prototype, "href", {
+      get() {
+        return this[impl].href;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].href = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    URL3.prototype.toString = function() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      return this.href;
+    };
+    Object.defineProperty(URL3.prototype, "origin", {
+      get() {
+        return this[impl].origin;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "protocol", {
+      get() {
+        return this[impl].protocol;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].protocol = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "username", {
+      get() {
+        return this[impl].username;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].username = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "password", {
+      get() {
+        return this[impl].password;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].password = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "host", {
+      get() {
+        return this[impl].host;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].host = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hostname", {
+      get() {
+        return this[impl].hostname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hostname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "port", {
+      get() {
+        return this[impl].port;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].port = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "pathname", {
+      get() {
+        return this[impl].pathname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].pathname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "search", {
+      get() {
+        return this[impl].search;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].search = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hash", {
+      get() {
+        return this[impl].hash;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hash = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    module2.exports = {
+      is(obj) {
+        return !!obj && obj[impl] instanceof Impl.implementation;
+      },
+      create(constructorArgs, privateData) {
+        let obj = Object.create(URL3.prototype);
+        this.setup(obj, constructorArgs, privateData);
+        return obj;
+      },
+      setup(obj, constructorArgs, privateData) {
+        if (!privateData) privateData = {};
+        privateData.wrapper = obj;
+        obj[impl] = new Impl.implementation(constructorArgs, privateData);
+        obj[impl][utils.wrapperSymbol] = obj;
+      },
+      interface: URL3,
+      expose: {
+        Window: { URL: URL3 },
+        Worker: { URL: URL3 }
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/public-api.js
+var require_public_api = __commonJS({
+  "../../../node_modules/whatwg-url/lib/public-api.js"(exports2) {
+    "use strict";
+    exports2.URL = require_URL().interface;
+    exports2.serializeURL = require_url_state_machine().serializeURL;
+    exports2.serializeURLOrigin = require_url_state_machine().serializeURLOrigin;
+    exports2.basicURLParse = require_url_state_machine().basicURLParse;
+    exports2.setTheUsername = require_url_state_machine().setTheUsername;
+    exports2.setThePassword = require_url_state_machine().setThePassword;
+    exports2.serializeHost = require_url_state_machine().serializeHost;
+    exports2.serializeInteger = require_url_state_machine().serializeInteger;
+    exports2.parseURL = require_url_state_machine().parseURL;
+  }
+});
+
+// ../../../node_modules/safer-buffer/safer.js
+var require_safer = __commonJS({
+  "../../../node_modules/safer-buffer/safer.js"(exports2, module2) {
+    "use strict";
+    var buffer = require("buffer");
+    var Buffer2 = buffer.Buffer;
+    var safer = {};
+    var key;
+    for (key in buffer) {
+      if (!buffer.hasOwnProperty(key)) continue;
+      if (key === "SlowBuffer" || key === "Buffer") continue;
+      safer[key] = buffer[key];
+    }
+    var Safer = safer.Buffer = {};
+    for (key in Buffer2) {
+      if (!Buffer2.hasOwnProperty(key)) continue;
+      if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue;
+      Safer[key] = Buffer2[key];
+    }
+    safer.Buffer.prototype = Buffer2.prototype;
+    if (!Safer.from || Safer.from === Uint8Array.from) {
+      Safer.from = function(value, encodingOrOffset, length) {
+        if (typeof value === "number") {
+          throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value);
+        }
+        if (value && typeof value.length === "undefined") {
+          throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value);
+        }
+        return Buffer2(value, encodingOrOffset, length);
+      };
+    }
+    if (!Safer.alloc) {
+      Safer.alloc = function(size, fill, encoding) {
+        if (typeof size !== "number") {
+          throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size);
+        }
+        if (size < 0 || size >= 2 * (1 << 30)) {
+          throw new RangeError('The value "' + size + '" is invalid for option "size"');
+        }
+        var buf = Buffer2(size);
+        if (!fill || fill.length === 0) {
+          buf.fill(0);
+        } else if (typeof encoding === "string") {
+          buf.fill(fill, encoding);
+        } else {
+          buf.fill(fill);
+        }
+        return buf;
+      };
+    }
+    if (!safer.kStringMaxLength) {
+      try {
+        safer.kStringMaxLength = process.binding("buffer").kStringMaxLength;
+      } catch (e) {
+      }
+    }
+    if (!safer.constants) {
+      safer.constants = {
+        MAX_LENGTH: safer.kMaxLength
+      };
+      if (safer.kStringMaxLength) {
+        safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength;
+      }
+    }
+    module2.exports = safer;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js
+var require_bom_handling = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js"(exports2) {
+    "use strict";
+    var BOMChar = "\uFEFF";
+    exports2.PrependBOM = PrependBOMWrapper;
+    function PrependBOMWrapper(encoder, options) {
+      this.encoder = encoder;
+      this.addBOM = true;
+    }
+    PrependBOMWrapper.prototype.write = function(str) {
+      if (this.addBOM) {
+        str = BOMChar + str;
+        this.addBOM = false;
+      }
+      return this.encoder.write(str);
+    };
+    PrependBOMWrapper.prototype.end = function() {
+      return this.encoder.end();
+    };
+    exports2.StripBOM = StripBOMWrapper;
+    function StripBOMWrapper(decoder2, options) {
+      this.decoder = decoder2;
+      this.pass = false;
+      this.options = options || {};
+    }
+    StripBOMWrapper.prototype.write = function(buf) {
+      var res = this.decoder.write(buf);
+      if (this.pass || !res)
+        return res;
+      if (res[0] === BOMChar) {
+        res = res.slice(1);
+        if (typeof this.options.stripBOM === "function")
+          this.options.stripBOM();
+      }
+      this.pass = true;
+      return res;
+    };
+    StripBOMWrapper.prototype.end = function() {
+      return this.decoder.end();
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js
+var require_internal = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = {
+      // Encodings
+      utf8: { type: "_internal", bomAware: true },
+      cesu8: { type: "_internal", bomAware: true },
+      unicode11utf8: "utf8",
+      ucs2: { type: "_internal", bomAware: true },
+      utf16le: "ucs2",
+      binary: { type: "_internal" },
+      base64: { type: "_internal" },
+      hex: { type: "_internal" },
+      // Codec.
+      _internal: InternalCodec
+    };
+    function InternalCodec(codecOptions, iconv) {
+      this.enc = codecOptions.encodingName;
+      this.bomAware = codecOptions.bomAware;
+      if (this.enc === "base64")
+        this.encoder = InternalEncoderBase64;
+      else if (this.enc === "cesu8") {
+        this.enc = "utf8";
+        this.encoder = InternalEncoderCesu8;
+        if (Buffer2.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") {
+          this.decoder = InternalDecoderCesu8;
+          this.defaultCharUnicode = iconv.defaultCharUnicode;
+        }
+      }
+    }
+    InternalCodec.prototype.encoder = InternalEncoder;
+    InternalCodec.prototype.decoder = InternalDecoder;
+    var StringDecoder = require("string_decoder").StringDecoder;
+    if (!StringDecoder.prototype.end)
+      StringDecoder.prototype.end = function() {
+      };
+    function InternalDecoder(options, codec) {
+      this.decoder = new StringDecoder(codec.enc);
+    }
+    InternalDecoder.prototype.write = function(buf) {
+      if (!Buffer2.isBuffer(buf)) {
+        buf = Buffer2.from(buf);
+      }
+      return this.decoder.write(buf);
+    };
+    InternalDecoder.prototype.end = function() {
+      return this.decoder.end();
+    };
+    function InternalEncoder(options, codec) {
+      this.enc = codec.enc;
+    }
+    InternalEncoder.prototype.write = function(str) {
+      return Buffer2.from(str, this.enc);
+    };
+    InternalEncoder.prototype.end = function() {
+    };
+    function InternalEncoderBase64(options, codec) {
+      this.prevStr = "";
+    }
+    InternalEncoderBase64.prototype.write = function(str) {
+      str = this.prevStr + str;
+      var completeQuads = str.length - str.length % 4;
+      this.prevStr = str.slice(completeQuads);
+      str = str.slice(0, completeQuads);
+      return Buffer2.from(str, "base64");
+    };
+    InternalEncoderBase64.prototype.end = function() {
+      return Buffer2.from(this.prevStr, "base64");
+    };
+    function InternalEncoderCesu8(options, codec) {
+    }
+    InternalEncoderCesu8.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length * 3), bufIdx = 0;
+      for (var i = 0; i < str.length; i++) {
+        var charCode = str.charCodeAt(i);
+        if (charCode < 128)
+          buf[bufIdx++] = charCode;
+        else if (charCode < 2048) {
+          buf[bufIdx++] = 192 + (charCode >>> 6);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        } else {
+          buf[bufIdx++] = 224 + (charCode >>> 12);
+          buf[bufIdx++] = 128 + (charCode >>> 6 & 63);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        }
+      }
+      return buf.slice(0, bufIdx);
+    };
+    InternalEncoderCesu8.prototype.end = function() {
+    };
+    function InternalDecoderCesu8(options, codec) {
+      this.acc = 0;
+      this.contBytes = 0;
+      this.accBytes = 0;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+    }
+    InternalDecoderCesu8.prototype.write = function(buf) {
+      var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes, res = "";
+      for (var i = 0; i < buf.length; i++) {
+        var curByte = buf[i];
+        if ((curByte & 192) !== 128) {
+          if (contBytes > 0) {
+            res += this.defaultCharUnicode;
+            contBytes = 0;
+          }
+          if (curByte < 128) {
+            res += String.fromCharCode(curByte);
+          } else if (curByte < 224) {
+            acc = curByte & 31;
+            contBytes = 1;
+            accBytes = 1;
+          } else if (curByte < 240) {
+            acc = curByte & 15;
+            contBytes = 2;
+            accBytes = 1;
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        } else {
+          if (contBytes > 0) {
+            acc = acc << 6 | curByte & 63;
+            contBytes--;
+            accBytes++;
+            if (contBytes === 0) {
+              if (accBytes === 2 && acc < 128 && acc > 0)
+                res += this.defaultCharUnicode;
+              else if (accBytes === 3 && acc < 2048)
+                res += this.defaultCharUnicode;
+              else
+                res += String.fromCharCode(acc);
+            }
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        }
+      }
+      this.acc = acc;
+      this.contBytes = contBytes;
+      this.accBytes = accBytes;
+      return res;
+    };
+    InternalDecoderCesu8.prototype.end = function() {
+      var res = 0;
+      if (this.contBytes > 0)
+        res += this.defaultCharUnicode;
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js
+var require_utf32 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._utf32 = Utf32Codec;
+    function Utf32Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+      this.bomAware = true;
+      this.isLE = codecOptions.isLE;
+    }
+    exports2.utf32le = { type: "_utf32", isLE: true };
+    exports2.utf32be = { type: "_utf32", isLE: false };
+    exports2.ucs4le = "utf32le";
+    exports2.ucs4be = "utf32be";
+    Utf32Codec.prototype.encoder = Utf32Encoder;
+    Utf32Codec.prototype.decoder = Utf32Decoder;
+    function Utf32Encoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.highSurrogate = 0;
+    }
+    Utf32Encoder.prototype.write = function(str) {
+      var src = Buffer2.from(str, "ucs2");
+      var dst = Buffer2.alloc(src.length * 2);
+      var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE;
+      var offset = 0;
+      for (var i = 0; i < src.length; i += 2) {
+        var code = src.readUInt16LE(i);
+        var isHighSurrogate = 55296 <= code && code < 56320;
+        var isLowSurrogate = 56320 <= code && code < 57344;
+        if (this.highSurrogate) {
+          if (isHighSurrogate || !isLowSurrogate) {
+            write32.call(dst, this.highSurrogate, offset);
+            offset += 4;
+          } else {
+            var codepoint = (this.highSurrogate - 55296 << 10 | code - 56320) + 65536;
+            write32.call(dst, codepoint, offset);
+            offset += 4;
+            this.highSurrogate = 0;
+            continue;
+          }
+        }
+        if (isHighSurrogate)
+          this.highSurrogate = code;
+        else {
+          write32.call(dst, code, offset);
+          offset += 4;
+          this.highSurrogate = 0;
+        }
+      }
+      if (offset < dst.length)
+        dst = dst.slice(0, offset);
+      return dst;
+    };
+    Utf32Encoder.prototype.end = function() {
+      if (!this.highSurrogate)
+        return;
+      var buf = Buffer2.alloc(4);
+      if (this.isLE)
+        buf.writeUInt32LE(this.highSurrogate, 0);
+      else
+        buf.writeUInt32BE(this.highSurrogate, 0);
+      this.highSurrogate = 0;
+      return buf;
+    };
+    function Utf32Decoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.badChar = codec.iconv.defaultCharUnicode.charCodeAt(0);
+      this.overflow = [];
+    }
+    Utf32Decoder.prototype.write = function(src) {
+      if (src.length === 0)
+        return "";
+      var i = 0;
+      var codepoint = 0;
+      var dst = Buffer2.alloc(src.length + 4);
+      var offset = 0;
+      var isLE = this.isLE;
+      var overflow = this.overflow;
+      var badChar = this.badChar;
+      if (overflow.length > 0) {
+        for (; i < src.length && overflow.length < 4; i++)
+          overflow.push(src[i]);
+        if (overflow.length === 4) {
+          if (isLE) {
+            codepoint = overflow[i] | overflow[i + 1] << 8 | overflow[i + 2] << 16 | overflow[i + 3] << 24;
+          } else {
+            codepoint = overflow[i + 3] | overflow[i + 2] << 8 | overflow[i + 1] << 16 | overflow[i] << 24;
+          }
+          overflow.length = 0;
+          offset = _writeCodepoint(dst, offset, codepoint, badChar);
+        }
+      }
+      for (; i < src.length - 3; i += 4) {
+        if (isLE) {
+          codepoint = src[i] | src[i + 1] << 8 | src[i + 2] << 16 | src[i + 3] << 24;
+        } else {
+          codepoint = src[i + 3] | src[i + 2] << 8 | src[i + 1] << 16 | src[i] << 24;
+        }
+        offset = _writeCodepoint(dst, offset, codepoint, badChar);
+      }
+      for (; i < src.length; i++) {
+        overflow.push(src[i]);
+      }
+      return dst.slice(0, offset).toString("ucs2");
+    };
+    function _writeCodepoint(dst, offset, codepoint, badChar) {
+      if (codepoint < 0 || codepoint > 1114111) {
+        codepoint = badChar;
+      }
+      if (codepoint >= 65536) {
+        codepoint -= 65536;
+        var high = 55296 | codepoint >> 10;
+        dst[offset++] = high & 255;
+        dst[offset++] = high >> 8;
+        var codepoint = 56320 | codepoint & 1023;
+      }
+      dst[offset++] = codepoint & 255;
+      dst[offset++] = codepoint >> 8;
+      return offset;
+    }
+    Utf32Decoder.prototype.end = function() {
+      this.overflow.length = 0;
+    };
+    exports2.utf32 = Utf32AutoCodec;
+    exports2.ucs4 = "utf32";
+    function Utf32AutoCodec(options, iconv) {
+      this.iconv = iconv;
+    }
+    Utf32AutoCodec.prototype.encoder = Utf32AutoEncoder;
+    Utf32AutoCodec.prototype.decoder = Utf32AutoDecoder;
+    function Utf32AutoEncoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder(options.defaultEncoding || "utf-32le", options);
+    }
+    Utf32AutoEncoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf32AutoEncoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf32AutoDecoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf32AutoDecoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 32)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf32AutoDecoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var invalidLE = 0, invalidBE = 0;
+      var bmpCharsLE = 0, bmpCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 4) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254 && b[2] === 0 && b[3] === 0) {
+                  return "utf-32le";
+                }
+                if (b[0] === 0 && b[1] === 0 && b[2] === 254 && b[3] === 255) {
+                  return "utf-32be";
+                }
+              }
+              if (b[0] !== 0 || b[1] > 16) invalidBE++;
+              if (b[3] !== 0 || b[2] > 16) invalidLE++;
+              if (b[0] === 0 && b[1] === 0 && (b[2] !== 0 || b[3] !== 0)) bmpCharsBE++;
+              if ((b[0] !== 0 || b[1] !== 0) && b[2] === 0 && b[3] === 0) bmpCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (bmpCharsBE - invalidBE > bmpCharsLE - invalidLE) return "utf-32be";
+      if (bmpCharsBE - invalidBE < bmpCharsLE - invalidLE) return "utf-32le";
+      return defaultEncoding || "utf-32le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js
+var require_utf16 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf16be = Utf16BECodec;
+    function Utf16BECodec() {
+    }
+    Utf16BECodec.prototype.encoder = Utf16BEEncoder;
+    Utf16BECodec.prototype.decoder = Utf16BEDecoder;
+    Utf16BECodec.prototype.bomAware = true;
+    function Utf16BEEncoder() {
+    }
+    Utf16BEEncoder.prototype.write = function(str) {
+      var buf = Buffer2.from(str, "ucs2");
+      for (var i = 0; i < buf.length; i += 2) {
+        var tmp = buf[i];
+        buf[i] = buf[i + 1];
+        buf[i + 1] = tmp;
+      }
+      return buf;
+    };
+    Utf16BEEncoder.prototype.end = function() {
+    };
+    function Utf16BEDecoder() {
+      this.overflowByte = -1;
+    }
+    Utf16BEDecoder.prototype.write = function(buf) {
+      if (buf.length == 0)
+        return "";
+      var buf2 = Buffer2.alloc(buf.length + 1), i = 0, j = 0;
+      if (this.overflowByte !== -1) {
+        buf2[0] = buf[0];
+        buf2[1] = this.overflowByte;
+        i = 1;
+        j = 2;
+      }
+      for (; i < buf.length - 1; i += 2, j += 2) {
+        buf2[j] = buf[i + 1];
+        buf2[j + 1] = buf[i];
+      }
+      this.overflowByte = i == buf.length - 1 ? buf[buf.length - 1] : -1;
+      return buf2.slice(0, j).toString("ucs2");
+    };
+    Utf16BEDecoder.prototype.end = function() {
+      this.overflowByte = -1;
+    };
+    exports2.utf16 = Utf16Codec;
+    function Utf16Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf16Codec.prototype.encoder = Utf16Encoder;
+    Utf16Codec.prototype.decoder = Utf16Decoder;
+    function Utf16Encoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder("utf-16le", options);
+    }
+    Utf16Encoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf16Encoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf16Decoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf16Decoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 16)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf16Decoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var asciiCharsLE = 0, asciiCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 2) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254) return "utf-16le";
+                if (b[0] === 254 && b[1] === 255) return "utf-16be";
+              }
+              if (b[0] === 0 && b[1] !== 0) asciiCharsBE++;
+              if (b[0] !== 0 && b[1] === 0) asciiCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (asciiCharsBE > asciiCharsLE) return "utf-16be";
+      if (asciiCharsBE < asciiCharsLE) return "utf-16le";
+      return defaultEncoding || "utf-16le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js
+var require_utf7 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf7 = Utf7Codec;
+    exports2.unicode11utf7 = "utf7";
+    function Utf7Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7Codec.prototype.encoder = Utf7Encoder;
+    Utf7Codec.prototype.decoder = Utf7Decoder;
+    Utf7Codec.prototype.bomAware = true;
+    var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;
+    function Utf7Encoder(options, codec) {
+      this.iconv = codec.iconv;
+    }
+    Utf7Encoder.prototype.write = function(str) {
+      return Buffer2.from(str.replace(nonDirectChars, function(chunk) {
+        return "+" + (chunk === "+" ? "" : this.iconv.encode(chunk, "utf16-be").toString("base64").replace(/=+$/, "")) + "-";
+      }.bind(this)));
+    };
+    Utf7Encoder.prototype.end = function() {
+    };
+    function Utf7Decoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64Regex = /[A-Za-z0-9\/+]/;
+    var base64Chars = [];
+    for (i = 0; i < 256; i++)
+      base64Chars[i] = base64Regex.test(String.fromCharCode(i));
+    var i;
+    var plusChar = "+".charCodeAt(0);
+    var minusChar = "-".charCodeAt(0);
+    var andChar = "&".charCodeAt(0);
+    Utf7Decoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == plusChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64Chars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "+";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7Decoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+    exports2.utf7imap = Utf7IMAPCodec;
+    function Utf7IMAPCodec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder;
+    Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder;
+    Utf7IMAPCodec.prototype.bomAware = true;
+    function Utf7IMAPEncoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = Buffer2.alloc(6);
+      this.base64AccumIdx = 0;
+    }
+    Utf7IMAPEncoder.prototype.write = function(str) {
+      var inBase64 = this.inBase64, base64Accum = this.base64Accum, base64AccumIdx = this.base64AccumIdx, buf = Buffer2.alloc(str.length * 5 + 10), bufIdx = 0;
+      for (var i2 = 0; i2 < str.length; i2++) {
+        var uChar = str.charCodeAt(i2);
+        if (32 <= uChar && uChar <= 126) {
+          if (inBase64) {
+            if (base64AccumIdx > 0) {
+              bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+              base64AccumIdx = 0;
+            }
+            buf[bufIdx++] = minusChar;
+            inBase64 = false;
+          }
+          if (!inBase64) {
+            buf[bufIdx++] = uChar;
+            if (uChar === andChar)
+              buf[bufIdx++] = minusChar;
+          }
+        } else {
+          if (!inBase64) {
+            buf[bufIdx++] = andChar;
+            inBase64 = true;
+          }
+          if (inBase64) {
+            base64Accum[base64AccumIdx++] = uChar >> 8;
+            base64Accum[base64AccumIdx++] = uChar & 255;
+            if (base64AccumIdx == base64Accum.length) {
+              bufIdx += buf.write(base64Accum.toString("base64").replace(/\//g, ","), bufIdx);
+              base64AccumIdx = 0;
+            }
+          }
+        }
+      }
+      this.inBase64 = inBase64;
+      this.base64AccumIdx = base64AccumIdx;
+      return buf.slice(0, bufIdx);
+    };
+    Utf7IMAPEncoder.prototype.end = function() {
+      var buf = Buffer2.alloc(10), bufIdx = 0;
+      if (this.inBase64) {
+        if (this.base64AccumIdx > 0) {
+          bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+          this.base64AccumIdx = 0;
+        }
+        buf[bufIdx++] = minusChar;
+        this.inBase64 = false;
+      }
+      return buf.slice(0, bufIdx);
+    };
+    function Utf7IMAPDecoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64IMAPChars = base64Chars.slice();
+    base64IMAPChars[",".charCodeAt(0)] = true;
+    Utf7IMAPDecoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == andChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64IMAPChars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "&";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii").replace(/,/g, "/");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii").replace(/,/g, "/");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7IMAPDecoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js
+var require_sbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._sbcs = SBCSCodec;
+    function SBCSCodec(codecOptions, iconv) {
+      if (!codecOptions)
+        throw new Error("SBCS codec is called without the data.");
+      if (!codecOptions.chars || codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256)
+        throw new Error("Encoding '" + codecOptions.type + "' has incorrect 'chars' (must be of len 128 or 256)");
+      if (codecOptions.chars.length === 128) {
+        var asciiString = "";
+        for (var i = 0; i < 128; i++)
+          asciiString += String.fromCharCode(i);
+        codecOptions.chars = asciiString + codecOptions.chars;
+      }
+      this.decodeBuf = Buffer2.from(codecOptions.chars, "ucs2");
+      var encodeBuf = Buffer2.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0));
+      for (var i = 0; i < codecOptions.chars.length; i++)
+        encodeBuf[codecOptions.chars.charCodeAt(i)] = i;
+      this.encodeBuf = encodeBuf;
+    }
+    SBCSCodec.prototype.encoder = SBCSEncoder;
+    SBCSCodec.prototype.decoder = SBCSDecoder;
+    function SBCSEncoder(options, codec) {
+      this.encodeBuf = codec.encodeBuf;
+    }
+    SBCSEncoder.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length);
+      for (var i = 0; i < str.length; i++)
+        buf[i] = this.encodeBuf[str.charCodeAt(i)];
+      return buf;
+    };
+    SBCSEncoder.prototype.end = function() {
+    };
+    function SBCSDecoder(options, codec) {
+      this.decodeBuf = codec.decodeBuf;
+    }
+    SBCSDecoder.prototype.write = function(buf) {
+      var decodeBuf = this.decodeBuf;
+      var newBuf = Buffer2.alloc(buf.length * 2);
+      var idx1 = 0, idx2 = 0;
+      for (var i = 0; i < buf.length; i++) {
+        idx1 = buf[i] * 2;
+        idx2 = i * 2;
+        newBuf[idx2] = decodeBuf[idx1];
+        newBuf[idx2 + 1] = decodeBuf[idx1 + 1];
+      }
+      return newBuf.toString("ucs2");
+    };
+    SBCSDecoder.prototype.end = function() {
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js
+var require_sbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // Not supported by iconv, not sure why.
+      "10029": "maccenteuro",
+      "maccenteuro": {
+        "type": "_sbcs",
+        "chars": "\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"
+      },
+      "808": "cp808",
+      "ibm808": "cp808",
+      "cp808": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"
+      },
+      "mik": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "cp720": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      // Aliases of generated encodings.
+      "ascii8bit": "ascii",
+      "usascii": "ascii",
+      "ansix34": "ascii",
+      "ansix341968": "ascii",
+      "ansix341986": "ascii",
+      "csascii": "ascii",
+      "cp367": "ascii",
+      "ibm367": "ascii",
+      "isoir6": "ascii",
+      "iso646us": "ascii",
+      "iso646irv": "ascii",
+      "us": "ascii",
+      "latin1": "iso88591",
+      "latin2": "iso88592",
+      "latin3": "iso88593",
+      "latin4": "iso88594",
+      "latin5": "iso88599",
+      "latin6": "iso885910",
+      "latin7": "iso885913",
+      "latin8": "iso885914",
+      "latin9": "iso885915",
+      "latin10": "iso885916",
+      "csisolatin1": "iso88591",
+      "csisolatin2": "iso88592",
+      "csisolatin3": "iso88593",
+      "csisolatin4": "iso88594",
+      "csisolatincyrillic": "iso88595",
+      "csisolatinarabic": "iso88596",
+      "csisolatingreek": "iso88597",
+      "csisolatinhebrew": "iso88598",
+      "csisolatin5": "iso88599",
+      "csisolatin6": "iso885910",
+      "l1": "iso88591",
+      "l2": "iso88592",
+      "l3": "iso88593",
+      "l4": "iso88594",
+      "l5": "iso88599",
+      "l6": "iso885910",
+      "l7": "iso885913",
+      "l8": "iso885914",
+      "l9": "iso885915",
+      "l10": "iso885916",
+      "isoir14": "iso646jp",
+      "isoir57": "iso646cn",
+      "isoir100": "iso88591",
+      "isoir101": "iso88592",
+      "isoir109": "iso88593",
+      "isoir110": "iso88594",
+      "isoir144": "iso88595",
+      "isoir127": "iso88596",
+      "isoir126": "iso88597",
+      "isoir138": "iso88598",
+      "isoir148": "iso88599",
+      "isoir157": "iso885910",
+      "isoir166": "tis620",
+      "isoir179": "iso885913",
+      "isoir199": "iso885914",
+      "isoir203": "iso885915",
+      "isoir226": "iso885916",
+      "cp819": "iso88591",
+      "ibm819": "iso88591",
+      "cyrillic": "iso88595",
+      "arabic": "iso88596",
+      "arabic8": "iso88596",
+      "ecma114": "iso88596",
+      "asmo708": "iso88596",
+      "greek": "iso88597",
+      "greek8": "iso88597",
+      "ecma118": "iso88597",
+      "elot928": "iso88597",
+      "hebrew": "iso88598",
+      "hebrew8": "iso88598",
+      "turkish": "iso88599",
+      "turkish8": "iso88599",
+      "thai": "iso885911",
+      "thai8": "iso885911",
+      "celtic": "iso885914",
+      "celtic8": "iso885914",
+      "isoceltic": "iso885914",
+      "tis6200": "tis620",
+      "tis62025291": "tis620",
+      "tis62025330": "tis620",
+      "10000": "macroman",
+      "10006": "macgreek",
+      "10007": "maccyrillic",
+      "10079": "maciceland",
+      "10081": "macturkish",
+      "cspc8codepage437": "cp437",
+      "cspc775baltic": "cp775",
+      "cspc850multilingual": "cp850",
+      "cspcp852": "cp852",
+      "cspc862latinhebrew": "cp862",
+      "cpgr": "cp869",
+      "msee": "cp1250",
+      "mscyrl": "cp1251",
+      "msansi": "cp1252",
+      "msgreek": "cp1253",
+      "msturk": "cp1254",
+      "mshebr": "cp1255",
+      "msarab": "cp1256",
+      "winbaltrim": "cp1257",
+      "cp20866": "koi8r",
+      "20866": "koi8r",
+      "ibm878": "koi8r",
+      "cskoi8r": "koi8r",
+      "cp21866": "koi8u",
+      "21866": "koi8u",
+      "ibm1168": "koi8u",
+      "strk10482002": "rk1048",
+      "tcvn5712": "tcvn",
+      "tcvn57121": "tcvn",
+      "gb198880": "iso646cn",
+      "cn": "iso646cn",
+      "csiso14jisc6220ro": "iso646jp",
+      "jisc62201969ro": "iso646jp",
+      "jp": "iso646jp",
+      "cshproman8": "hproman8",
+      "r8": "hproman8",
+      "roman8": "hproman8",
+      "xroman8": "hproman8",
+      "ibm1051": "hproman8",
+      "mac": "macintosh",
+      "csmacintosh": "macintosh"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js
+var require_sbcs_data_generated = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      "437": "cp437",
+      "737": "cp737",
+      "775": "cp775",
+      "850": "cp850",
+      "852": "cp852",
+      "855": "cp855",
+      "856": "cp856",
+      "857": "cp857",
+      "858": "cp858",
+      "860": "cp860",
+      "861": "cp861",
+      "862": "cp862",
+      "863": "cp863",
+      "864": "cp864",
+      "865": "cp865",
+      "866": "cp866",
+      "869": "cp869",
+      "874": "windows874",
+      "922": "cp922",
+      "1046": "cp1046",
+      "1124": "cp1124",
+      "1125": "cp1125",
+      "1129": "cp1129",
+      "1133": "cp1133",
+      "1161": "cp1161",
+      "1162": "cp1162",
+      "1163": "cp1163",
+      "1250": "windows1250",
+      "1251": "windows1251",
+      "1252": "windows1252",
+      "1253": "windows1253",
+      "1254": "windows1254",
+      "1255": "windows1255",
+      "1256": "windows1256",
+      "1257": "windows1257",
+      "1258": "windows1258",
+      "28591": "iso88591",
+      "28592": "iso88592",
+      "28593": "iso88593",
+      "28594": "iso88594",
+      "28595": "iso88595",
+      "28596": "iso88596",
+      "28597": "iso88597",
+      "28598": "iso88598",
+      "28599": "iso88599",
+      "28600": "iso885910",
+      "28601": "iso885911",
+      "28603": "iso885913",
+      "28604": "iso885914",
+      "28605": "iso885915",
+      "28606": "iso885916",
+      "windows874": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "win874": "windows874",
+      "cp874": "windows874",
+      "windows1250": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "win1250": "windows1250",
+      "cp1250": "windows1250",
+      "windows1251": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "win1251": "windows1251",
+      "cp1251": "windows1251",
+      "windows1252": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "win1252": "windows1252",
+      "cp1252": "windows1252",
+      "windows1253": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "win1253": "windows1253",
+      "cp1253": "windows1253",
+      "windows1254": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "win1254": "windows1254",
+      "cp1254": "windows1254",
+      "windows1255": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "win1255": "windows1255",
+      "cp1255": "windows1255",
+      "windows1256": {
+        "type": "_sbcs",
+        "chars": "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"
+      },
+      "win1256": "windows1256",
+      "cp1256": "windows1256",
+      "windows1257": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"
+      },
+      "win1257": "windows1257",
+      "cp1257": "windows1257",
+      "windows1258": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "win1258": "windows1258",
+      "cp1258": "windows1258",
+      "iso88591": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28591": "iso88591",
+      "iso88592": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "cp28592": "iso88592",
+      "iso88593": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"
+      },
+      "cp28593": "iso88593",
+      "iso88594": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"
+      },
+      "cp28594": "iso88594",
+      "iso88595": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "cp28595": "iso88595",
+      "iso88596": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28596": "iso88596",
+      "iso88597": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "cp28597": "iso88597",
+      "iso88598": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "cp28598": "iso88598",
+      "iso88599": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "cp28599": "iso88599",
+      "iso885910": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"
+      },
+      "cp28600": "iso885910",
+      "iso885911": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28601": "iso885911",
+      "iso885913": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"
+      },
+      "cp28603": "iso885913",
+      "iso885914": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"
+      },
+      "cp28604": "iso885914",
+      "iso885915": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28605": "iso885915",
+      "iso885916": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"
+      },
+      "cp28606": "iso885916",
+      "cp437": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm437": "cp437",
+      "csibm437": "cp437",
+      "cp737": {
+        "type": "_sbcs",
+        "chars": "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm737": "cp737",
+      "csibm737": "cp737",
+      "cp775": {
+        "type": "_sbcs",
+        "chars": "\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm775": "cp775",
+      "csibm775": "cp775",
+      "cp850": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm850": "cp850",
+      "csibm850": "cp850",
+      "cp852": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"
+      },
+      "ibm852": "cp852",
+      "csibm852": "cp852",
+      "cp855": {
+        "type": "_sbcs",
+        "chars": "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"
+      },
+      "ibm855": "cp855",
+      "csibm855": "cp855",
+      "cp856": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm856": "cp856",
+      "csibm856": "cp856",
+      "cp857": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm857": "cp857",
+      "csibm857": "cp857",
+      "cp858": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm858": "cp858",
+      "csibm858": "cp858",
+      "cp860": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm860": "cp860",
+      "csibm860": "cp860",
+      "cp861": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm861": "cp861",
+      "csibm861": "cp861",
+      "cp862": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm862": "cp862",
+      "csibm862": "cp862",
+      "cp863": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm863": "cp863",
+      "csibm863": "cp863",
+      "cp864": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD"
+      },
+      "ibm864": "cp864",
+      "csibm864": "cp864",
+      "cp865": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm865": "cp865",
+      "csibm865": "cp865",
+      "cp866": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm866": "cp866",
+      "csibm866": "cp866",
+      "cp869": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"
+      },
+      "ibm869": "cp869",
+      "csibm869": "cp869",
+      "cp922": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"
+      },
+      "ibm922": "cp922",
+      "csibm922": "cp922",
+      "cp1046": {
+        "type": "_sbcs",
+        "chars": "\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"
+      },
+      "ibm1046": "cp1046",
+      "csibm1046": "cp1046",
+      "cp1124": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "ibm1124": "cp1124",
+      "csibm1124": "cp1124",
+      "cp1125": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm1125": "cp1125",
+      "csibm1125": "cp1125",
+      "cp1129": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1129": "cp1129",
+      "csibm1129": "cp1129",
+      "cp1133": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"
+      },
+      "ibm1133": "cp1133",
+      "csibm1133": "cp1133",
+      "cp1161": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"
+      },
+      "ibm1161": "cp1161",
+      "csibm1161": "cp1161",
+      "cp1162": {
+        "type": "_sbcs",
+        "chars": "\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "ibm1162": "cp1162",
+      "csibm1162": "cp1162",
+      "cp1163": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1163": "cp1163",
+      "csibm1163": "cp1163",
+      "maccroatian": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"
+      },
+      "maccyrillic": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "macgreek": {
+        "type": "_sbcs",
+        "chars": "\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"
+      },
+      "maciceland": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macroman": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macromania": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macthai": {
+        "type": "_sbcs",
+        "chars": "\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "macturkish": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macukraine": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "koi8r": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8u": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8ru": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8t": {
+        "type": "_sbcs",
+        "chars": "\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "armscii8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"
+      },
+      "rk1048": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "tcvn": {
+        "type": "_sbcs",
+        "chars": "\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b	\n\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0"
+      },
+      "georgianacademy": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "georgianps": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "pt154": {
+        "type": "_sbcs",
+        "chars": "\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "viscii": {
+        "type": "_sbcs",
+        "chars": "\0\u1EB2\u1EB4\u1EAA\x07\b	\n\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE"
+      },
+      "iso646cn": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "iso646jp": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "hproman8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"
+      },
+      "macintosh": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "ascii": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "tis620": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js
+var require_dbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._dbcs = DBCSCodec;
+    var UNASSIGNED = -1;
+    var GB18030_CODE = -2;
+    var SEQ_START = -10;
+    var NODE_START = -1e3;
+    var UNASSIGNED_NODE = new Array(256);
+    var DEF_CHAR = -1;
+    for (i = 0; i < 256; i++)
+      UNASSIGNED_NODE[i] = UNASSIGNED;
+    var i;
+    function DBCSCodec(codecOptions, iconv) {
+      this.encodingName = codecOptions.encodingName;
+      if (!codecOptions)
+        throw new Error("DBCS codec is called without the data.");
+      if (!codecOptions.table)
+        throw new Error("Encoding '" + this.encodingName + "' has no data.");
+      var mappingTable = codecOptions.table();
+      this.decodeTables = [];
+      this.decodeTables[0] = UNASSIGNED_NODE.slice(0);
+      this.decodeTableSeq = [];
+      for (var i2 = 0; i2 < mappingTable.length; i2++)
+        this._addDecodeChunk(mappingTable[i2]);
+      if (typeof codecOptions.gb18030 === "function") {
+        this.gb18030 = codecOptions.gb18030();
+        var commonThirdByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var commonFourthByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var firstByteNode = this.decodeTables[0];
+        for (var i2 = 129; i2 <= 254; i2++) {
+          var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i2]];
+          for (var j = 48; j <= 57; j++) {
+            if (secondByteNode[j] === UNASSIGNED) {
+              secondByteNode[j] = NODE_START - commonThirdByteNodeIdx;
+            } else if (secondByteNode[j] > NODE_START) {
+              throw new Error("gb18030 decode tables conflict at byte 2");
+            }
+            var thirdByteNode = this.decodeTables[NODE_START - secondByteNode[j]];
+            for (var k = 129; k <= 254; k++) {
+              if (thirdByteNode[k] === UNASSIGNED) {
+                thirdByteNode[k] = NODE_START - commonFourthByteNodeIdx;
+              } else if (thirdByteNode[k] === NODE_START - commonFourthByteNodeIdx) {
+                continue;
+              } else if (thirdByteNode[k] > NODE_START) {
+                throw new Error("gb18030 decode tables conflict at byte 3");
+              }
+              var fourthByteNode = this.decodeTables[NODE_START - thirdByteNode[k]];
+              for (var l = 48; l <= 57; l++) {
+                if (fourthByteNode[l] === UNASSIGNED)
+                  fourthByteNode[l] = GB18030_CODE;
+              }
+            }
+          }
+        }
+      }
+      this.defaultCharUnicode = iconv.defaultCharUnicode;
+      this.encodeTable = [];
+      this.encodeTableSeq = [];
+      var skipEncodeChars = {};
+      if (codecOptions.encodeSkipVals)
+        for (var i2 = 0; i2 < codecOptions.encodeSkipVals.length; i2++) {
+          var val2 = codecOptions.encodeSkipVals[i2];
+          if (typeof val2 === "number")
+            skipEncodeChars[val2] = true;
+          else
+            for (var j = val2.from; j <= val2.to; j++)
+              skipEncodeChars[j] = true;
+        }
+      this._fillEncodeTable(0, 0, skipEncodeChars);
+      if (codecOptions.encodeAdd) {
+        for (var uChar in codecOptions.encodeAdd)
+          if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar))
+            this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]);
+      }
+      this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]["?"];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0);
+    }
+    DBCSCodec.prototype.encoder = DBCSEncoder;
+    DBCSCodec.prototype.decoder = DBCSDecoder;
+    DBCSCodec.prototype._getDecodeTrieNode = function(addr) {
+      var bytes = [];
+      for (; addr > 0; addr >>>= 8)
+        bytes.push(addr & 255);
+      if (bytes.length == 0)
+        bytes.push(0);
+      var node = this.decodeTables[0];
+      for (var i2 = bytes.length - 1; i2 > 0; i2--) {
+        var val2 = node[bytes[i2]];
+        if (val2 == UNASSIGNED) {
+          node[bytes[i2]] = NODE_START - this.decodeTables.length;
+          this.decodeTables.push(node = UNASSIGNED_NODE.slice(0));
+        } else if (val2 <= NODE_START) {
+          node = this.decodeTables[NODE_START - val2];
+        } else
+          throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr.toString(16));
+      }
+      return node;
+    };
+    DBCSCodec.prototype._addDecodeChunk = function(chunk) {
+      var curAddr = parseInt(chunk[0], 16);
+      var writeTable = this._getDecodeTrieNode(curAddr);
+      curAddr = curAddr & 255;
+      for (var k = 1; k < chunk.length; k++) {
+        var part = chunk[k];
+        if (typeof part === "string") {
+          for (var l = 0; l < part.length; ) {
+            var code = part.charCodeAt(l++);
+            if (55296 <= code && code < 56320) {
+              var codeTrail = part.charCodeAt(l++);
+              if (56320 <= codeTrail && codeTrail < 57344)
+                writeTable[curAddr++] = 65536 + (code - 55296) * 1024 + (codeTrail - 56320);
+              else
+                throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]);
+            } else if (4080 < code && code <= 4095) {
+              var len = 4095 - code + 2;
+              var seq = [];
+              for (var m = 0; m < len; m++)
+                seq.push(part.charCodeAt(l++));
+              writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length;
+              this.decodeTableSeq.push(seq);
+            } else
+              writeTable[curAddr++] = code;
+          }
+        } else if (typeof part === "number") {
+          var charCode = writeTable[curAddr - 1] + 1;
+          for (var l = 0; l < part; l++)
+            writeTable[curAddr++] = charCode++;
+        } else
+          throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]);
+      }
+      if (curAddr > 255)
+        throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr);
+    };
+    DBCSCodec.prototype._getEncodeBucket = function(uCode) {
+      var high = uCode >> 8;
+      if (this.encodeTable[high] === void 0)
+        this.encodeTable[high] = UNASSIGNED_NODE.slice(0);
+      return this.encodeTable[high];
+    };
+    DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) {
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      if (bucket[low] <= SEQ_START)
+        this.encodeTableSeq[SEQ_START - bucket[low]][DEF_CHAR] = dbcsCode;
+      else if (bucket[low] == UNASSIGNED)
+        bucket[low] = dbcsCode;
+    };
+    DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) {
+      var uCode = seq[0];
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      var node;
+      if (bucket[low] <= SEQ_START) {
+        node = this.encodeTableSeq[SEQ_START - bucket[low]];
+      } else {
+        node = {};
+        if (bucket[low] !== UNASSIGNED) node[DEF_CHAR] = bucket[low];
+        bucket[low] = SEQ_START - this.encodeTableSeq.length;
+        this.encodeTableSeq.push(node);
+      }
+      for (var j = 1; j < seq.length - 1; j++) {
+        var oldVal = node[uCode];
+        if (typeof oldVal === "object")
+          node = oldVal;
+        else {
+          node = node[uCode] = {};
+          if (oldVal !== void 0)
+            node[DEF_CHAR] = oldVal;
+        }
+      }
+      uCode = seq[seq.length - 1];
+      node[uCode] = dbcsCode;
+    };
+    DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) {
+      var node = this.decodeTables[nodeIdx];
+      var hasValues = false;
+      var subNodeEmpty = {};
+      for (var i2 = 0; i2 < 256; i2++) {
+        var uCode = node[i2];
+        var mbCode = prefix + i2;
+        if (skipEncodeChars[mbCode])
+          continue;
+        if (uCode >= 0) {
+          this._setEncodeChar(uCode, mbCode);
+          hasValues = true;
+        } else if (uCode <= NODE_START) {
+          var subNodeIdx = NODE_START - uCode;
+          if (!subNodeEmpty[subNodeIdx]) {
+            var newPrefix = mbCode << 8 >>> 0;
+            if (this._fillEncodeTable(subNodeIdx, newPrefix, skipEncodeChars))
+              hasValues = true;
+            else
+              subNodeEmpty[subNodeIdx] = true;
+          }
+        } else if (uCode <= SEQ_START) {
+          this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode);
+          hasValues = true;
+        }
+      }
+      return hasValues;
+    };
+    function DBCSEncoder(options, codec) {
+      this.leadSurrogate = -1;
+      this.seqObj = void 0;
+      this.encodeTable = codec.encodeTable;
+      this.encodeTableSeq = codec.encodeTableSeq;
+      this.defaultCharSingleByte = codec.defCharSB;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSEncoder.prototype.write = function(str) {
+      var newBuf = Buffer2.alloc(str.length * (this.gb18030 ? 4 : 3)), leadSurrogate = this.leadSurrogate, seqObj = this.seqObj, nextChar = -1, i2 = 0, j = 0;
+      while (true) {
+        if (nextChar === -1) {
+          if (i2 == str.length) break;
+          var uCode = str.charCodeAt(i2++);
+        } else {
+          var uCode = nextChar;
+          nextChar = -1;
+        }
+        if (55296 <= uCode && uCode < 57344) {
+          if (uCode < 56320) {
+            if (leadSurrogate === -1) {
+              leadSurrogate = uCode;
+              continue;
+            } else {
+              leadSurrogate = uCode;
+              uCode = UNASSIGNED;
+            }
+          } else {
+            if (leadSurrogate !== -1) {
+              uCode = 65536 + (leadSurrogate - 55296) * 1024 + (uCode - 56320);
+              leadSurrogate = -1;
+            } else {
+              uCode = UNASSIGNED;
+            }
+          }
+        } else if (leadSurrogate !== -1) {
+          nextChar = uCode;
+          uCode = UNASSIGNED;
+          leadSurrogate = -1;
+        }
+        var dbcsCode = UNASSIGNED;
+        if (seqObj !== void 0 && uCode != UNASSIGNED) {
+          var resCode = seqObj[uCode];
+          if (typeof resCode === "object") {
+            seqObj = resCode;
+            continue;
+          } else if (typeof resCode == "number") {
+            dbcsCode = resCode;
+          } else if (resCode == void 0) {
+            resCode = seqObj[DEF_CHAR];
+            if (resCode !== void 0) {
+              dbcsCode = resCode;
+              nextChar = uCode;
+            } else {
+            }
+          }
+          seqObj = void 0;
+        } else if (uCode >= 0) {
+          var subtable = this.encodeTable[uCode >> 8];
+          if (subtable !== void 0)
+            dbcsCode = subtable[uCode & 255];
+          if (dbcsCode <= SEQ_START) {
+            seqObj = this.encodeTableSeq[SEQ_START - dbcsCode];
+            continue;
+          }
+          if (dbcsCode == UNASSIGNED && this.gb18030) {
+            var idx = findIdx(this.gb18030.uChars, uCode);
+            if (idx != -1) {
+              var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]);
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 12600);
+              dbcsCode = dbcsCode % 12600;
+              newBuf[j++] = 48 + Math.floor(dbcsCode / 1260);
+              dbcsCode = dbcsCode % 1260;
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 10);
+              dbcsCode = dbcsCode % 10;
+              newBuf[j++] = 48 + dbcsCode;
+              continue;
+            }
+          }
+        }
+        if (dbcsCode === UNASSIGNED)
+          dbcsCode = this.defaultCharSingleByte;
+        if (dbcsCode < 256) {
+          newBuf[j++] = dbcsCode;
+        } else if (dbcsCode < 65536) {
+          newBuf[j++] = dbcsCode >> 8;
+          newBuf[j++] = dbcsCode & 255;
+        } else if (dbcsCode < 16777216) {
+          newBuf[j++] = dbcsCode >> 16;
+          newBuf[j++] = dbcsCode >> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        } else {
+          newBuf[j++] = dbcsCode >>> 24;
+          newBuf[j++] = dbcsCode >>> 16 & 255;
+          newBuf[j++] = dbcsCode >>> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        }
+      }
+      this.seqObj = seqObj;
+      this.leadSurrogate = leadSurrogate;
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.end = function() {
+      if (this.leadSurrogate === -1 && this.seqObj === void 0)
+        return;
+      var newBuf = Buffer2.alloc(10), j = 0;
+      if (this.seqObj) {
+        var dbcsCode = this.seqObj[DEF_CHAR];
+        if (dbcsCode !== void 0) {
+          if (dbcsCode < 256) {
+            newBuf[j++] = dbcsCode;
+          } else {
+            newBuf[j++] = dbcsCode >> 8;
+            newBuf[j++] = dbcsCode & 255;
+          }
+        } else {
+        }
+        this.seqObj = void 0;
+      }
+      if (this.leadSurrogate !== -1) {
+        newBuf[j++] = this.defaultCharSingleByte;
+        this.leadSurrogate = -1;
+      }
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.findIdx = findIdx;
+    function DBCSDecoder(options, codec) {
+      this.nodeIdx = 0;
+      this.prevBytes = [];
+      this.decodeTables = codec.decodeTables;
+      this.decodeTableSeq = codec.decodeTableSeq;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSDecoder.prototype.write = function(buf) {
+      var newBuf = Buffer2.alloc(buf.length * 2), nodeIdx = this.nodeIdx, prevBytes = this.prevBytes, prevOffset = this.prevBytes.length, seqStart = -this.prevBytes.length, uCode;
+      for (var i2 = 0, j = 0; i2 < buf.length; i2++) {
+        var curByte = i2 >= 0 ? buf[i2] : prevBytes[i2 + prevOffset];
+        var uCode = this.decodeTables[nodeIdx][curByte];
+        if (uCode >= 0) {
+        } else if (uCode === UNASSIGNED) {
+          uCode = this.defaultCharUnicode.charCodeAt(0);
+          i2 = seqStart;
+        } else if (uCode === GB18030_CODE) {
+          if (i2 >= 3) {
+            var ptr = (buf[i2 - 3] - 129) * 12600 + (buf[i2 - 2] - 48) * 1260 + (buf[i2 - 1] - 129) * 10 + (curByte - 48);
+          } else {
+            var ptr = (prevBytes[i2 - 3 + prevOffset] - 129) * 12600 + ((i2 - 2 >= 0 ? buf[i2 - 2] : prevBytes[i2 - 2 + prevOffset]) - 48) * 1260 + ((i2 - 1 >= 0 ? buf[i2 - 1] : prevBytes[i2 - 1 + prevOffset]) - 129) * 10 + (curByte - 48);
+          }
+          var idx = findIdx(this.gb18030.gbChars, ptr);
+          uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx];
+        } else if (uCode <= NODE_START) {
+          nodeIdx = NODE_START - uCode;
+          continue;
+        } else if (uCode <= SEQ_START) {
+          var seq = this.decodeTableSeq[SEQ_START - uCode];
+          for (var k = 0; k < seq.length - 1; k++) {
+            uCode = seq[k];
+            newBuf[j++] = uCode & 255;
+            newBuf[j++] = uCode >> 8;
+          }
+          uCode = seq[seq.length - 1];
+        } else
+          throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte);
+        if (uCode >= 65536) {
+          uCode -= 65536;
+          var uCodeLead = 55296 | uCode >> 10;
+          newBuf[j++] = uCodeLead & 255;
+          newBuf[j++] = uCodeLead >> 8;
+          uCode = 56320 | uCode & 1023;
+        }
+        newBuf[j++] = uCode & 255;
+        newBuf[j++] = uCode >> 8;
+        nodeIdx = 0;
+        seqStart = i2 + 1;
+      }
+      this.nodeIdx = nodeIdx;
+      this.prevBytes = seqStart >= 0 ? Array.prototype.slice.call(buf, seqStart) : prevBytes.slice(seqStart + prevOffset).concat(Array.prototype.slice.call(buf));
+      return newBuf.slice(0, j).toString("ucs2");
+    };
+    DBCSDecoder.prototype.end = function() {
+      var ret = "";
+      while (this.prevBytes.length > 0) {
+        ret += this.defaultCharUnicode;
+        var bytesArr = this.prevBytes.slice(1);
+        this.prevBytes = [];
+        this.nodeIdx = 0;
+        if (bytesArr.length > 0)
+          ret += this.write(bytesArr);
+      }
+      this.prevBytes = [];
+      this.nodeIdx = 0;
+      return ret;
+    };
+    function findIdx(table, val2) {
+      if (table[0] > val2)
+        return -1;
+      var l = 0, r = table.length;
+      while (l < r - 1) {
+        var mid = l + (r - l + 1 >> 1);
+        if (table[mid] <= val2)
+          l = mid;
+        else
+          r = mid;
+      }
+      return l;
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json
+var require_shiftjis = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 128],
+      ["a1", "\uFF61", 62],
+      ["8140", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7"],
+      ["8180", "\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["81b8", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["81c8", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["81da", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["81f0", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["81fc", "\u25EF"],
+      ["824f", "\uFF10", 9],
+      ["8260", "\uFF21", 25],
+      ["8281", "\uFF41", 25],
+      ["829f", "\u3041", 82],
+      ["8340", "\u30A1", 62],
+      ["8380", "\u30E0", 22],
+      ["839f", "\u0391", 16, "\u03A3", 6],
+      ["83bf", "\u03B1", 16, "\u03C3", 6],
+      ["8440", "\u0410", 5, "\u0401\u0416", 25],
+      ["8470", "\u0430", 5, "\u0451\u0436", 7],
+      ["8480", "\u043E", 17],
+      ["849f", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["8740", "\u2460", 19, "\u2160", 9],
+      ["875f", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["877e", "\u337B"],
+      ["8780", "\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["889f", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["8940", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],
+      ["8980", "\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["8a40", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],
+      ["8a80", "\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["8b40", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],
+      ["8b80", "\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["8c40", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],
+      ["8c80", "\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["8d40", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],
+      ["8d80", "\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["8e40", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],
+      ["8e80", "\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["8f40", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],
+      ["8f80", "\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["9040", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],
+      ["9080", "\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["9140", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],
+      ["9180", "\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["9240", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],
+      ["9280", "\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["9340", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],
+      ["9380", "\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["9440", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],
+      ["9480", "\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["9540", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],
+      ["9580", "\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["9640", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],
+      ["9680", "\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["9740", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],
+      ["9780", "\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["9840", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["989f", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["9940", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],
+      ["9980", "\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["9a40", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],
+      ["9a80", "\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["9b40", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],
+      ["9b80", "\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["9c40", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],
+      ["9c80", "\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["9d40", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],
+      ["9d80", "\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["9e40", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],
+      ["9e80", "\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["9f40", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],
+      ["9f80", "\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["e040", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],
+      ["e080", "\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e140", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],
+      ["e180", "\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e240", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],
+      ["e280", "\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e340", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],
+      ["e380", "\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e440", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],
+      ["e480", "\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e540", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],
+      ["e580", "\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["e640", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],
+      ["e680", "\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["e740", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],
+      ["e780", "\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["e840", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],
+      ["e880", "\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["e940", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],
+      ["e980", "\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["ea40", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],
+      ["ea80", "\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["ed40", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],
+      ["ed80", "\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["ee40", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],
+      ["ee80", "\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["eeef", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["f040", "\uE000", 62],
+      ["f080", "\uE03F", 124],
+      ["f140", "\uE0BC", 62],
+      ["f180", "\uE0FB", 124],
+      ["f240", "\uE178", 62],
+      ["f280", "\uE1B7", 124],
+      ["f340", "\uE234", 62],
+      ["f380", "\uE273", 124],
+      ["f440", "\uE2F0", 62],
+      ["f480", "\uE32F", 124],
+      ["f540", "\uE3AC", 62],
+      ["f580", "\uE3EB", 124],
+      ["f640", "\uE468", 62],
+      ["f680", "\uE4A7", 124],
+      ["f740", "\uE524", 62],
+      ["f780", "\uE563", 124],
+      ["f840", "\uE5E0", 62],
+      ["f880", "\uE61F", 124],
+      ["f940", "\uE69C"],
+      ["fa40", "\u2170", 9, "\u2160", 9, "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],
+      ["fa80", "\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],
+      ["fb40", "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],
+      ["fb80", "\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],
+      ["fc40", "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json
+var require_eucjp = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8ea1", "\uFF61", 62],
+      ["a1a1", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],
+      ["a2a1", "\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["a2ba", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["a2ca", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["a2dc", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["a2f2", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["a2fe", "\u25EF"],
+      ["a3b0", "\uFF10", 9],
+      ["a3c1", "\uFF21", 25],
+      ["a3e1", "\uFF41", 25],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a8a1", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["ada1", "\u2460", 19, "\u2160", 9],
+      ["adc0", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["addf", "\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["b0a1", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["b1a1", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],
+      ["b2a1", "\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["b3a1", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],
+      ["b4a1", "\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["b5a1", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],
+      ["b6a1", "\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["b7a1", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],
+      ["b8a1", "\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["b9a1", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],
+      ["baa1", "\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["bba1", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],
+      ["bca1", "\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["bda1", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],
+      ["bea1", "\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["bfa1", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],
+      ["c0a1", "\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["c1a1", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],
+      ["c2a1", "\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["c3a1", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],
+      ["c4a1", "\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["c5a1", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],
+      ["c6a1", "\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["c7a1", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],
+      ["c8a1", "\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["c9a1", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],
+      ["caa1", "\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["cba1", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],
+      ["cca1", "\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["cda1", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],
+      ["cea1", "\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["cfa1", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["d0a1", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["d1a1", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],
+      ["d2a1", "\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["d3a1", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],
+      ["d4a1", "\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["d5a1", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],
+      ["d6a1", "\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["d7a1", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],
+      ["d8a1", "\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["d9a1", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],
+      ["daa1", "\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["dba1", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],
+      ["dca1", "\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["dda1", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],
+      ["dea1", "\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["dfa1", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],
+      ["e0a1", "\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e1a1", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],
+      ["e2a1", "\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e3a1", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],
+      ["e4a1", "\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e5a1", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],
+      ["e6a1", "\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e7a1", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],
+      ["e8a1", "\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e9a1", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],
+      ["eaa1", "\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["eba1", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],
+      ["eca1", "\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["eda1", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],
+      ["eea1", "\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["efa1", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],
+      ["f0a1", "\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["f1a1", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],
+      ["f2a1", "\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["f3a1", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],
+      ["f4a1", "\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["f9a1", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],
+      ["faa1", "\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["fba1", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],
+      ["fca1", "\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["fcf1", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["8fa2af", "\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],
+      ["8fa2c2", "\xA1\xA6\xBF"],
+      ["8fa2eb", "\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],
+      ["8fa6e1", "\u0386\u0388\u0389\u038A\u03AA"],
+      ["8fa6e7", "\u038C"],
+      ["8fa6e9", "\u038E\u03AB"],
+      ["8fa6ec", "\u038F"],
+      ["8fa6f1", "\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],
+      ["8fa7c2", "\u0402", 10, "\u040E\u040F"],
+      ["8fa7f2", "\u0452", 10, "\u045E\u045F"],
+      ["8fa9a1", "\xC6\u0110"],
+      ["8fa9a4", "\u0126"],
+      ["8fa9a6", "\u0132"],
+      ["8fa9a8", "\u0141\u013F"],
+      ["8fa9ab", "\u014A\xD8\u0152"],
+      ["8fa9af", "\u0166\xDE"],
+      ["8fa9c1", "\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],
+      ["8faaa1", "\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],
+      ["8faaba", "\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],
+      ["8faba1", "\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],
+      ["8fabbd", "\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],
+      ["8fabc5", "\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],
+      ["8fb0a1", "\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],
+      ["8fb1a1", "\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],
+      ["8fb2a1", "\u5092\u5093\u5094\u5096\u509B\u509C\u509E", 4, "\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],
+      ["8fb3a1", "\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],
+      ["8fb4a1", "\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],
+      ["8fb5a1", "\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],
+      ["8fb6a1", "\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D", 5, "\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4", 4, "\u56F1\u56EB\u56ED"],
+      ["8fb7a1", "\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D", 4, "\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],
+      ["8fb8a1", "\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],
+      ["8fb9a1", "\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],
+      ["8fbaa1", "\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6", 4, "\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],
+      ["8fbba1", "\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],
+      ["8fbca1", "\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A", 4, "\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],
+      ["8fbda1", "\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0", 4, "\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],
+      ["8fbea1", "\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110", 4, "\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],
+      ["8fbfa1", "\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],
+      ["8fc0a1", "\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],
+      ["8fc1a1", "\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],
+      ["8fc2a1", "\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],
+      ["8fc3a1", "\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E", 4, "\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],
+      ["8fc4a1", "\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],
+      ["8fc5a1", "\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],
+      ["8fc6a1", "\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],
+      ["8fc7a1", "\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],
+      ["8fc8a1", "\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],
+      ["8fc9a1", "\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094", 4, "\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103", 4, "\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],
+      ["8fcaa1", "\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],
+      ["8fcba1", "\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],
+      ["8fcca1", "\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428", 9, "\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],
+      ["8fcda1", "\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579", 5, "\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],
+      ["8fcea1", "\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2", 6, "\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],
+      ["8fcfa1", "\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],
+      ["8fd0a1", "\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],
+      ["8fd1a1", "\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],
+      ["8fd2a1", "\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59", 5],
+      ["8fd3a1", "\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],
+      ["8fd4a1", "\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2", 4, "\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],
+      ["8fd5a1", "\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],
+      ["8fd6a1", "\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],
+      ["8fd7a1", "\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],
+      ["8fd8a1", "\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],
+      ["8fd9a1", "\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F", 4, "\u8556\u8559\u855C", 6, "\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],
+      ["8fdaa1", "\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660", 4, "\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],
+      ["8fdba1", "\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783", 6, "\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],
+      ["8fdca1", "\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA", 4, "\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],
+      ["8fdda1", "\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4", 4, "\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],
+      ["8fdea1", "\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42", 4, "\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],
+      ["8fdfa1", "\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],
+      ["8fe0a1", "\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],
+      ["8fe1a1", "\u8F43\u8F47\u8F4F\u8F51", 4, "\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],
+      ["8fe2a1", "\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],
+      ["8fe3a1", "\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC", 5, "\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275", 4, "\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],
+      ["8fe4a1", "\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF", 4, "\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],
+      ["8fe5a1", "\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9", 4, "\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],
+      ["8fe6a1", "\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],
+      ["8fe7a1", "\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],
+      ["8fe8a1", "\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931", 4, "\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],
+      ["8fe9a1", "\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF", 4],
+      ["8feaa1", "\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A", 4, "\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],
+      ["8feba1", "\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26", 4, "\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],
+      ["8feca1", "\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],
+      ["8feda1", "\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43", 4, "\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D", 4, "\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json
+var require_cp936 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127, "\u20AC"],
+      ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"],
+      ["8180", "\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02", 6, "\u4F0B\u4F0C\u4F12", 4, "\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E", 4, "\u4F44\u4F45\u4F47", 5, "\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],
+      ["8240", "\u4FA4\u4FAB\u4FAD\u4FB0", 4, "\u4FB6", 8, "\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2", 4, "\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF", 11],
+      ["8280", "\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F", 10, "\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050", 4, "\u5056\u5057\u5058\u5059\u505B\u505D", 7, "\u5066", 5, "\u506D", 8, "\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E", 20, "\u50A4\u50A6\u50AA\u50AB\u50AD", 4, "\u50B3", 6, "\u50BC"],
+      ["8340", "\u50BD", 17, "\u50D0", 5, "\u50D7\u50D8\u50D9\u50DB", 10, "\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6", 4, "\u50FC", 9, "\u5108"],
+      ["8380", "\u5109\u510A\u510C", 5, "\u5113", 13, "\u5122", 28, "\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D", 4, "\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6", 4, "\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2", 5],
+      ["8440", "\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5", 5, "\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244", 5, "\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],
+      ["8480", "\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273", 9, "\u527E\u5280\u5283", 4, "\u5289", 6, "\u5291\u5292\u5294", 6, "\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4", 9, "\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9", 5, "\u52E0\u52E1\u52E2\u52E3\u52E5", 10, "\u52F1", 7, "\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],
+      ["8540", "\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F", 9, "\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],
+      ["8580", "\u5390", 4, "\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF", 6, "\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3", 4, "\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D", 4, "\u5463\u5465\u5467\u5469", 7, "\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],
+      ["8640", "\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0", 4, "\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4", 5, "\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A", 4, "\u5512\u5513\u5515", 5, "\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],
+      ["8680", "\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B", 4, "\u5551\u5552\u5553\u5554\u5557", 4, "\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F", 5, "\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0", 6, "\u55A8", 8, "\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF", 4, "\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7", 4, "\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8", 4, "\u55FF\u5602\u5603\u5604\u5605"],
+      ["8740", "\u5606\u5607\u560A\u560B\u560D\u5610", 7, "\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640", 11, "\u564F", 4, "\u5655\u5656\u565A\u565B\u565D", 4],
+      ["8780", "\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D", 7, "\u5687", 6, "\u5690\u5691\u5692\u5694", 14, "\u56A4", 10, "\u56B0", 6, "\u56B8\u56B9\u56BA\u56BB\u56BD", 12, "\u56CB", 8, "\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5", 5, "\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B", 6],
+      ["8840", "\u5712", 9, "\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734", 4, "\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752", 4, "\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],
+      ["8880", "\u5781\u5787\u5788\u5789\u578A\u578D", 4, "\u5794", 6, "\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9", 8, "\u57C4", 6, "\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5", 7, "\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825", 4, "\u582B", 4, "\u5831\u5832\u5833\u5834\u5836", 7],
+      ["8940", "\u583E", 5, "\u5845", 6, "\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859", 4, "\u585F", 5, "\u5866", 4, "\u586D", 16, "\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],
+      ["8980", "\u588D", 4, "\u5894", 4, "\u589B\u589C\u589D\u58A0", 7, "\u58AA", 17, "\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6", 10, "\u58D2\u58D3\u58D4\u58D6", 13, "\u58E5", 5, "\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA", 7, "\u5903\u5905\u5906\u5908", 4, "\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],
+      ["8a40", "\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B", 4, "\u5961\u5963\u5964\u5966", 12, "\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],
+      ["8a80", "\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3", 5, "\u59BA\u59BC\u59BD\u59BF", 6, "\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE", 4, "\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED", 11, "\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A", 6, "\u5A33\u5A35\u5A37", 4, "\u5A3D\u5A3E\u5A3F\u5A41", 4, "\u5A47\u5A48\u5A4B", 9, "\u5A56\u5A57\u5A58\u5A59\u5A5B", 5],
+      ["8b40", "\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B", 8, "\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80", 17, "\u5A93", 6, "\u5A9C", 13, "\u5AAB\u5AAC"],
+      ["8b80", "\u5AAD", 4, "\u5AB4\u5AB6\u5AB7\u5AB9", 4, "\u5ABF\u5AC0\u5AC3", 5, "\u5ACA\u5ACB\u5ACD", 4, "\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC", 4, "\u5AF2", 22, "\u5B0A", 11, "\u5B18", 25, "\u5B33\u5B35\u5B36\u5B38", 7, "\u5B41", 6],
+      ["8c40", "\u5B48", 7, "\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],
+      ["8c80", "\u5BD1\u5BD4", 8, "\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9", 4, "\u5BEF\u5BF1", 6, "\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67", 6, "\u5C70\u5C72", 6, "\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83", 4, "\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D", 4, "\u5CA4", 4],
+      ["8d40", "\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5", 5, "\u5CCC", 5, "\u5CD3", 5, "\u5CDA", 6, "\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1", 9, "\u5CFC", 4],
+      ["8d80", "\u5D01\u5D04\u5D05\u5D08", 5, "\u5D0F", 4, "\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F", 4, "\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F", 4, "\u5D35", 7, "\u5D3F", 7, "\u5D48\u5D49\u5D4D", 10, "\u5D59\u5D5A\u5D5C\u5D5E", 10, "\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75", 12, "\u5D83", 21, "\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],
+      ["8e40", "\u5DA1", 21, "\u5DB8", 12, "\u5DC6", 6, "\u5DCE", 12, "\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],
+      ["8e80", "\u5DF0\u5DF5\u5DF6\u5DF8", 4, "\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E", 7, "\u5E28", 4, "\u5E2F\u5E30\u5E32", 4, "\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46", 5, "\u5E4D", 6, "\u5E56", 4, "\u5E5C\u5E5D\u5E5F\u5E60\u5E63", 14, "\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8", 4, "\u5EAE", 4, "\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF", 6],
+      ["8f40", "\u5EC6\u5EC7\u5EC8\u5ECB", 5, "\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC", 11, "\u5EE9\u5EEB", 8, "\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],
+      ["8f80", "\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32", 6, "\u5F3B\u5F3D\u5F3E\u5F3F\u5F41", 14, "\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2", 5, "\u5FA9\u5FAB\u5FAC\u5FAF", 5, "\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE", 4, "\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],
+      ["9040", "\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030", 4, "\u6036", 4, "\u603D\u603E\u6040\u6044", 6, "\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],
+      ["9080", "\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD", 7, "\u60C7\u60C8\u60C9\u60CC", 4, "\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1", 4, "\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB", 4, "\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110", 4, "\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C", 18, "\u6140", 6],
+      ["9140", "\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156", 6, "\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169", 6, "\u6171\u6172\u6173\u6174\u6176\u6178", 18, "\u618C\u618D\u618F", 4, "\u6195"],
+      ["9180", "\u6196", 6, "\u619E", 8, "\u61AA\u61AB\u61AD", 9, "\u61B8", 5, "\u61BF\u61C0\u61C1\u61C3", 4, "\u61C9\u61CC", 4, "\u61D3\u61D5", 16, "\u61E7", 13, "\u61F6", 8, "\u6200", 5, "\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238", 4, "\u6242\u6244\u6245\u6246\u624A"],
+      ["9240", "\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C", 6, "\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B", 5, "\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],
+      ["9280", "\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333", 5, "\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356", 7, "\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399", 6, "\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],
+      ["9340", "\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7", 6, "\u63DF\u63E2\u63E4", 4, "\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406", 4, "\u640D\u640E\u6411\u6412\u6415", 5, "\u641D\u641F\u6422\u6423\u6424"],
+      ["9380", "\u6425\u6427\u6428\u6429\u642B\u642E", 5, "\u6435", 4, "\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B", 6, "\u6453\u6455\u6456\u6457\u6459", 4, "\u645F", 7, "\u6468\u646A\u646B\u646C\u646E", 9, "\u647B", 6, "\u6483\u6486\u6488", 8, "\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F", 4, "\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6", 6, "\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],
+      ["9440", "\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7", 24, "\u6501", 7, "\u650A", 7, "\u6513", 4, "\u6519", 8],
+      ["9480", "\u6522\u6523\u6524\u6526", 4, "\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540", 4, "\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578", 14, "\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1", 7, "\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8", 7, "\u65E1\u65E3\u65E4\u65EA\u65EB"],
+      ["9540", "\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB", 4, "\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637", 4, "\u663D\u663F\u6640\u6642\u6644", 6, "\u664D\u664E\u6650\u6651\u6658"],
+      ["9580", "\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669", 4, "\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698", 4, "\u669E", 8, "\u66A9", 4, "\u66AF", 4, "\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF", 25, "\u66DA\u66DE", 7, "\u66E7\u66E8\u66EA", 5, "\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],
+      ["9640", "\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720", 5, "\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757", 4, "\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],
+      ["9680", "\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9", 7, "\u67C2\u67C5", 9, "\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5", 7, "\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818", 4, "\u681E\u681F\u6820\u6822", 6, "\u682B", 6, "\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856", 5],
+      ["9740", "\u685C\u685D\u685E\u685F\u686A\u686C", 7, "\u6875\u6878", 8, "\u6882\u6884\u6887", 7, "\u6890\u6891\u6892\u6894\u6895\u6896\u6898", 9, "\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],
+      ["9780", "\u68B9", 6, "\u68C1\u68C3", 5, "\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB", 4, "\u68E1\u68E2\u68E4", 9, "\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906", 4, "\u690C\u690F\u6911\u6913", 11, "\u6921\u6922\u6923\u6925", 7, "\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943", 16, "\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],
+      ["9840", "\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972", 4, "\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E", 5, "\u6996\u6997\u6999\u699A\u699D", 9, "\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],
+      ["9880", "\u69BE\u69BF\u69C0\u69C2", 7, "\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5", 5, "\u69DC\u69DD\u69DE\u69E1", 11, "\u69EE\u69EF\u69F0\u69F1\u69F3", 9, "\u69FE\u6A00", 9, "\u6A0B", 11, "\u6A19", 5, "\u6A20\u6A22", 5, "\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36", 6, "\u6A3F", 4, "\u6A45\u6A46\u6A48", 7, "\u6A51", 6, "\u6A5A"],
+      ["9940", "\u6A5C", 4, "\u6A62\u6A63\u6A64\u6A66", 10, "\u6A72", 6, "\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85", 8, "\u6A8F\u6A92", 4, "\u6A98", 7, "\u6AA1", 5],
+      ["9980", "\u6AA7\u6AA8\u6AAA\u6AAD", 114, "\u6B25\u6B26\u6B28", 6],
+      ["9a40", "\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D", 11, "\u6B5A", 7, "\u6B68\u6B69\u6B6B", 13, "\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],
+      ["9a80", "\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C", 4, "\u6BA2", 7, "\u6BAB", 7, "\u6BB6\u6BB8", 6, "\u6BC0\u6BC3\u6BC4\u6BC6", 4, "\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC", 4, "\u6BE2", 7, "\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE", 6, "\u6C08", 4, "\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B", 4, "\u6C51\u6C52\u6C53\u6C56\u6C58"],
+      ["9b40", "\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B", 4, "\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],
+      ["9b80", "\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F", 5, "\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D", 4, "\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96", 4, "\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9", 5, "\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],
+      ["9c40", "\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD", 7, "\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],
+      ["9c80", "\u6E36\u6E37\u6E39\u6E3B", 7, "\u6E45", 7, "\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60", 10, "\u6E6C\u6E6D\u6E6F", 14, "\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A", 4, "\u6E91", 6, "\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA", 5],
+      ["9d40", "\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA", 7, "\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A", 4, "\u6F10\u6F11\u6F12\u6F16", 9, "\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37", 6, "\u6F3F\u6F40\u6F41\u6F42"],
+      ["9d80", "\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E", 9, "\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67", 5, "\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D", 6, "\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F", 12, "\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2", 4, "\u6FA8", 10, "\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA", 5, "\u6FC1\u6FC3", 5, "\u6FCA", 6, "\u6FD3", 10, "\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],
+      ["9e40", "\u6FE6", 7, "\u6FF0", 32, "\u7012", 7, "\u701C", 6, "\u7024", 6],
+      ["9e80", "\u702B", 9, "\u7036\u7037\u7038\u703A", 17, "\u704D\u704E\u7050", 13, "\u705F", 11, "\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E", 12, "\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB", 12, "\u70DA"],
+      ["9f40", "\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0", 6, "\u70F8\u70FA\u70FB\u70FC\u70FE", 10, "\u710B", 4, "\u7111\u7112\u7114\u7117\u711B", 10, "\u7127", 7, "\u7132\u7133\u7134"],
+      ["9f80", "\u7135\u7137", 13, "\u7146\u7147\u7148\u7149\u714B\u714D\u714F", 12, "\u715D\u715F", 4, "\u7165\u7169", 4, "\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E", 5, "\u7185", 4, "\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A", 4, "\u71A1", 6, "\u71A9\u71AA\u71AB\u71AD", 5, "\u71B4\u71B6\u71B7\u71B8\u71BA", 8, "\u71C4", 9, "\u71CF", 4],
+      ["a040", "\u71D6", 9, "\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8", 5, "\u71EF", 9, "\u71FA", 11, "\u7207", 19],
+      ["a080", "\u721B\u721C\u721E", 9, "\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240", 6, "\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285", 4, "\u728C\u728E\u7290\u7291\u7293", 11, "\u72A0", 11, "\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA", 6, "\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],
+      ["a1a1", "\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 7, "\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],
+      ["a2a1", "\u2170", 9],
+      ["a2b1", "\u2488", 19, "\u2474", 19, "\u2460", 9],
+      ["a2e5", "\u3220", 9],
+      ["a2f1", "\u2160", 11],
+      ["a3a1", "\uFF01\uFF02\uFF03\uFFE5\uFF05", 88, "\uFFE3"],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a6e0", "\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],
+      ["a6ee", "\uFE3B\uFE3C\uFE37\uFE38\uFE31"],
+      ["a6f4", "\uFE33\uFE34"],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a840", "\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550", 35, "\u2581", 6],
+      ["a880", "\u2588", 7, "\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],
+      ["a8a1", "\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],
+      ["a8bd", "\u0144\u0148"],
+      ["a8c0", "\u0261"],
+      ["a8c5", "\u3105", 36],
+      ["a940", "\u3021", 8, "\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],
+      ["a959", "\u2121\u3231"],
+      ["a95c", "\u2010"],
+      ["a960", "\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49", 9, "\uFE54\uFE55\uFE56\uFE57\uFE59", 8],
+      ["a980", "\uFE62", 4, "\uFE68\uFE69\uFE6A\uFE6B"],
+      ["a996", "\u3007"],
+      ["a9a4", "\u2500", 75],
+      ["aa40", "\u72DC\u72DD\u72DF\u72E2", 5, "\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304", 5, "\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340", 8],
+      ["aa80", "\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358", 7, "\u7361", 10, "\u736E\u7370\u7371"],
+      ["ab40", "\u7372", 11, "\u737F", 4, "\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3", 5, "\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3", 4],
+      ["ab80", "\u73CB\u73CC\u73CE\u73D2", 6, "\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3", 4],
+      ["ac40", "\u73F8", 10, "\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411", 8, "\u741C", 5, "\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437", 4, "\u743D\u743E\u743F\u7440\u7442", 11],
+      ["ac80", "\u744E", 6, "\u7456\u7458\u745D\u7460", 12, "\u746E\u746F\u7471", 4, "\u7478\u7479\u747A"],
+      ["ad40", "\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491", 10, "\u749D\u749F", 7, "\u74AA", 15, "\u74BB", 12],
+      ["ad80", "\u74C8", 9, "\u74D3", 8, "\u74DD\u74DF\u74E1\u74E5\u74E7", 6, "\u74F0\u74F1\u74F2"],
+      ["ae40", "\u74F3\u74F5\u74F8", 6, "\u7500\u7501\u7502\u7503\u7505", 7, "\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520", 4, "\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],
+      ["ae80", "\u755D", 7, "\u7567\u7568\u7569\u756B", 6, "\u7573\u7575\u7576\u7577\u757A", 4, "\u7580\u7581\u7582\u7584\u7585\u7587"],
+      ["af40", "\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6", 4, "\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],
+      ["af80", "\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],
+      ["b040", "\u7645", 6, "\u764E", 5, "\u7655\u7657", 4, "\u765D\u765F\u7660\u7661\u7662\u7664", 6, "\u766C\u766D\u766E\u7670", 7, "\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],
+      ["b080", "\u769C", 7, "\u76A5", 8, "\u76AF\u76B0\u76B3\u76B5", 9, "\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],
+      ["b140", "\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0", 4, "\u76E6", 7, "\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E", 10, "\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],
+      ["b180", "\u772C\u772E\u7730", 4, "\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748", 7, "\u7752", 7, "\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],
+      ["b240", "\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D", 11, "\u777A\u777B\u777C\u7781\u7782\u7783\u7786", 5, "\u778F\u7790\u7793", 11, "\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6", 4],
+      ["b280", "\u77BC\u77BE\u77C0", 12, "\u77CE", 8, "\u77D8\u77D9\u77DA\u77DD", 4, "\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],
+      ["b340", "\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803", 5, "\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],
+      ["b380", "\u785B\u785C\u785E", 11, "\u786F", 7, "\u7878\u7879\u787A\u787B\u787D", 6, "\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],
+      ["b440", "\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8", 7, "\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA", 9],
+      ["b480", "\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED", 4, "\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB", 5, "\u7902\u7903\u7904\u7906", 6, "\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],
+      ["b540", "\u790D", 5, "\u7914", 9, "\u791F", 4, "\u7925", 14, "\u7935", 4, "\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A", 8, "\u7954\u7955\u7958\u7959\u7961\u7963"],
+      ["b580", "\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970", 6, "\u7979\u797B", 4, "\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],
+      ["b640", "\u7993", 6, "\u799B", 11, "\u79A8", 10, "\u79B4", 4, "\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9", 5, "\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],
+      ["b680", "\u79EC\u79EE\u79F1", 6, "\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F", 4, "\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],
+      ["b740", "\u7A1D\u7A1F\u7A21\u7A22\u7A24", 14, "\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40", 5, "\u7A47", 9, "\u7A52", 4, "\u7A58", 16],
+      ["b780", "\u7A69", 6, "\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],
+      ["b840", "\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE", 4, "\u7AB4", 10, "\u7AC0", 10, "\u7ACC", 9, "\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7", 5, "\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],
+      ["b880", "\u7AF4", 4, "\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],
+      ["b940", "\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F", 5, "\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63", 10, "\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86", 6, "\u7B8E\u7B8F"],
+      ["b980", "\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9", 7, "\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],
+      ["ba40", "\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4", 4, "\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2", 4, "\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF", 7, "\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10", 5, "\u7C17\u7C18\u7C19"],
+      ["ba80", "\u7C1A", 4, "\u7C20", 5, "\u7C28\u7C29\u7C2B", 12, "\u7C39", 5, "\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],
+      ["bb40", "\u7C43", 9, "\u7C4E", 36, "\u7C75", 5, "\u7C7E", 9],
+      ["bb80", "\u7C88\u7C8A", 6, "\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4", 4, "\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],
+      ["bc40", "\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE", 6, "\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1", 6, "\u7CE9", 5, "\u7CF0", 7, "\u7CF9\u7CFA\u7CFC", 13, "\u7D0B", 5],
+      ["bc80", "\u7D11", 14, "\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30", 6, "\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],
+      ["bd40", "\u7D37", 54, "\u7D6F", 7],
+      ["bd80", "\u7D78", 32, "\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],
+      ["be40", "\u7D99", 12, "\u7DA7", 6, "\u7DAF", 42],
+      ["be80", "\u7DDA", 32, "\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],
+      ["bf40", "\u7DFB", 62],
+      ["bf80", "\u7E3A\u7E3C", 4, "\u7E42", 4, "\u7E48", 21, "\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],
+      ["c040", "\u7E5E", 35, "\u7E83", 23, "\u7E9C\u7E9D\u7E9E"],
+      ["c080", "\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B", 6, "\u7F43\u7F46", 9, "\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],
+      ["c140", "\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63", 4, "\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82", 7, "\u7F8B\u7F8D\u7F8F", 4, "\u7F95", 4, "\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8", 6, "\u7FB1"],
+      ["c180", "\u7FB3", 4, "\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF", 4, "\u7FD6\u7FD7\u7FD9", 5, "\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],
+      ["c240", "\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4", 6, "\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B", 5, "\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],
+      ["c280", "\u8059\u805B", 13, "\u806B", 5, "\u8072", 11, "\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],
+      ["c340", "\u807E\u8081\u8082\u8085\u8088\u808A\u808D", 5, "\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7", 4, "\u80CF", 6, "\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],
+      ["c380", "\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F", 12, "\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139", 4, "\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],
+      ["c440", "\u8140", 5, "\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B", 4, "\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183", 4, "\u8189\u818B\u818C\u818D\u818E\u8190\u8192", 5, "\u8199\u819A\u819E", 4, "\u81A4\u81A5"],
+      ["c480", "\u81A7\u81A9\u81AB", 7, "\u81B4", 5, "\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD", 6, "\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],
+      ["c540", "\u81D4", 14, "\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE", 4, "\u81F5", 5, "\u81FD\u81FF\u8203\u8207", 4, "\u820E\u820F\u8211\u8213\u8215", 5, "\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],
+      ["c580", "\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250", 7, "\u8259\u825B\u825C\u825D\u825E\u8260", 7, "\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],
+      ["c640", "\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],
+      ["c680", "\u82FA\u82FC", 4, "\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D", 9, "\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],
+      ["c740", "\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A", 4, "\u8353\u8355", 4, "\u835D\u8362\u8370", 6, "\u8379\u837A\u837E", 6, "\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1", 6, "\u83AC\u83AD\u83AE"],
+      ["c780", "\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],
+      ["c840", "\u83EE\u83EF\u83F3", 4, "\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412", 5, "\u8419\u841A\u841B\u841E", 5, "\u8429", 7, "\u8432", 5, "\u8439\u843A\u843B\u843E", 7, "\u8447\u8448\u8449"],
+      ["c880", "\u844A", 6, "\u8452", 4, "\u8458\u845D\u845E\u845F\u8460\u8462\u8464", 4, "\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],
+      ["c940", "\u847D", 4, "\u8483\u8484\u8485\u8486\u848A\u848D\u848F", 7, "\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2", 12, "\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],
+      ["c980", "\u84D8", 4, "\u84DE\u84E1\u84E2\u84E4\u84E7", 4, "\u84ED\u84EE\u84EF\u84F1", 10, "\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],
+      ["ca40", "\u8503", 8, "\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522", 8, "\u852D", 9, "\u853E", 4, "\u8544\u8545\u8546\u8547\u854B", 10],
+      ["ca80", "\u8557\u8558\u855A\u855B\u855C\u855D\u855F", 4, "\u8565\u8566\u8567\u8569", 8, "\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],
+      ["cb40", "\u8582\u8583\u8586\u8588", 6, "\u8590", 10, "\u859D", 6, "\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1", 5, "\u85B8\u85BA", 6, "\u85C2", 6, "\u85CA", 4, "\u85D1\u85D2"],
+      ["cb80", "\u85D4\u85D6", 5, "\u85DD", 6, "\u85E5\u85E6\u85E7\u85E8\u85EA", 14, "\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],
+      ["cc40", "\u85F9\u85FA\u85FC\u85FD\u85FE\u8600", 4, "\u8606", 10, "\u8612\u8613\u8614\u8615\u8617", 15, "\u8628\u862A", 13, "\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],
+      ["cc80", "\u8641", 11, "\u8652\u8653\u8655", 4, "\u865B\u865C\u865D\u865F\u8660\u8661\u8663", 7, "\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],
+      ["cd40", "\u866D\u866F\u8670\u8672", 6, "\u8683", 6, "\u868E", 4, "\u8694\u8696", 5, "\u869E", 4, "\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB", 4, "\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],
+      ["cd80", "\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],
+      ["ce40", "\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740", 6, "\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A", 5, "\u8761\u8762\u8766", 7, "\u876F\u8771\u8772\u8773\u8775"],
+      ["ce80", "\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E", 4, "\u8794\u8795\u8796\u8798", 6, "\u87A0", 4, "\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],
+      ["cf40", "\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1", 4, "\u87C7\u87C8\u87C9\u87CC", 4, "\u87D4", 6, "\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF", 9],
+      ["cf80", "\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804", 5, "\u880B", 7, "\u8814\u8817\u8818\u8819\u881A\u881C", 4, "\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],
+      ["d040", "\u8824", 13, "\u8833", 5, "\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846", 5, "\u884E", 5, "\u8855\u8856\u8858\u885A", 6, "\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],
+      ["d080", "\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897", 4, "\u889D", 4, "\u88A3\u88A5", 5, "\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],
+      ["d140", "\u88AC\u88AE\u88AF\u88B0\u88B2", 4, "\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA", 4, "\u88E0\u88E1\u88E6\u88E7\u88E9", 6, "\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903", 5],
+      ["d180", "\u8909\u890B", 4, "\u8911\u8914", 4, "\u891C", 4, "\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],
+      ["d240", "\u8938", 8, "\u8942\u8943\u8945", 24, "\u8960", 5, "\u8967", 19, "\u897C"],
+      ["d280", "\u897D\u897E\u8980\u8982\u8984\u8985\u8987", 26, "\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],
+      ["d340", "\u89A2", 30, "\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4", 6],
+      ["d380", "\u89FB", 4, "\u8A01", 5, "\u8A08", 21, "\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],
+      ["d440", "\u8A1E", 31, "\u8A3F", 8, "\u8A49", 21],
+      ["d480", "\u8A5F", 25, "\u8A7A", 6, "\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],
+      ["d540", "\u8A81", 7, "\u8A8B", 7, "\u8A94", 46],
+      ["d580", "\u8AC3", 32, "\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],
+      ["d640", "\u8AE4", 34, "\u8B08", 27],
+      ["d680", "\u8B24\u8B25\u8B27", 30, "\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],
+      ["d740", "\u8B46", 31, "\u8B67", 4, "\u8B6D", 25],
+      ["d780", "\u8B87", 24, "\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],
+      ["d840", "\u8C38", 8, "\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D", 7, "\u8C56\u8C57\u8C58\u8C59\u8C5B", 5, "\u8C63", 6, "\u8C6C", 6, "\u8C74\u8C75\u8C76\u8C77\u8C7B", 6, "\u8C83\u8C84\u8C86\u8C87"],
+      ["d880", "\u8C88\u8C8B\u8C8D", 6, "\u8C95\u8C96\u8C97\u8C99", 20, "\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],
+      ["d940", "\u8CAE", 62],
+      ["d980", "\u8CED", 32, "\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],
+      ["da40", "\u8D0E", 14, "\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78", 8, "\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C", 4, "\u8D92\u8D93\u8D95", 9, "\u8DA0\u8DA1"],
+      ["da80", "\u8DA2\u8DA4", 12, "\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],
+      ["db40", "\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE", 6, "\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15", 7, "\u8E20\u8E21\u8E24", 4, "\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],
+      ["db80", "\u8E3F\u8E43\u8E45\u8E46\u8E4C", 4, "\u8E53", 5, "\u8E5A", 11, "\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],
+      ["dc40", "\u8E73\u8E75\u8E77", 4, "\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88", 6, "\u8E91\u8E92\u8E93\u8E95", 6, "\u8E9D\u8E9F", 11, "\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3", 6, "\u8EBB", 7],
+      ["dc80", "\u8EC3", 10, "\u8ECF", 21, "\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],
+      ["dd40", "\u8EE5", 62],
+      ["dd80", "\u8F24", 32, "\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],
+      ["de40", "\u8F45", 32, "\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],
+      ["de80", "\u8FC9", 4, "\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],
+      ["df40", "\u9019\u901C\u9023\u9024\u9025\u9027", 5, "\u9030", 4, "\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048", 4, "\u904E\u9054\u9055\u9056\u9059\u905A\u905C", 5, "\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F", 4, "\u9076", 6, "\u907E\u9081"],
+      ["df80", "\u9084\u9085\u9086\u9087\u9089\u908A\u908C", 4, "\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],
+      ["e040", "\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105", 19, "\u911A\u911B\u911C"],
+      ["e080", "\u911D\u911F\u9120\u9121\u9124", 10, "\u9130\u9132", 6, "\u913A", 8, "\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],
+      ["e140", "\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180", 4, "\u9186\u9188\u918A\u918E\u918F\u9193", 6, "\u919C", 5, "\u91A4", 5, "\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],
+      ["e180", "\u91BC", 10, "\u91C8\u91CB\u91D0\u91D2", 9, "\u91DD", 8, "\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],
+      ["e240", "\u91E6", 62],
+      ["e280", "\u9225", 32, "\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967", 5, "\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],
+      ["e340", "\u9246", 45, "\u9275", 16],
+      ["e380", "\u9286", 7, "\u928F", 24, "\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],
+      ["e440", "\u92A8", 5, "\u92AF", 24, "\u92C9", 31],
+      ["e480", "\u92E9", 32, "\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],
+      ["e540", "\u930A", 51, "\u933F", 10],
+      ["e580", "\u934A", 31, "\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],
+      ["e640", "\u936C", 34, "\u9390", 27],
+      ["e680", "\u93AC", 29, "\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],
+      ["e740", "\u93CE", 7, "\u93D7", 54],
+      ["e780", "\u940E", 32, "\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21", 6, "\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F", 4, "\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],
+      ["e840", "\u942F", 14, "\u943F", 43, "\u946C\u946D\u946E\u946F"],
+      ["e880", "\u9470", 20, "\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],
+      ["e940", "\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577", 7, "\u9580", 42],
+      ["e980", "\u95AB", 32, "\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],
+      ["ea40", "\u95CC", 27, "\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623", 6, "\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],
+      ["ea80", "\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D", 4, "\u9673\u9678", 12, "\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],
+      ["eb40", "\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D", 9, "\u96A8", 7, "\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6", 9, "\u96E1", 6, "\u96EB"],
+      ["eb80", "\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717", 4, "\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],
+      ["ec40", "\u9721", 8, "\u972B\u972C\u972E\u972F\u9731\u9733", 4, "\u973A\u973B\u973C\u973D\u973F", 18, "\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A", 7],
+      ["ec80", "\u9772\u9775\u9777", 4, "\u977D", 7, "\u9786", 4, "\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799", 4, "\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],
+      ["ed40", "\u979E\u979F\u97A1\u97A2\u97A4", 6, "\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5", 46],
+      ["ed80", "\u97E4\u97E5\u97E8\u97EE", 4, "\u97F4\u97F7", 23, "\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],
+      ["ee40", "\u980F", 62],
+      ["ee80", "\u984E", 32, "\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6", 4, "\u94BC\u94BD\u94BF\u94C4\u94C8", 6, "\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],
+      ["ef40", "\u986F", 5, "\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8", 37, "\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0", 4],
+      ["ef80", "\u98E5\u98E6\u98E9", 30, "\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512", 4, "\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564", 8, "\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],
+      ["f040", "\u9908", 4, "\u990E\u990F\u9911", 28, "\u992F", 26],
+      ["f080", "\u994A", 9, "\u9956", 12, "\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28", 4, "\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66", 6, "\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],
+      ["f140", "\u998C\u998E\u999A", 10, "\u99A6\u99A7\u99A9", 47],
+      ["f180", "\u99D9", 32, "\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],
+      ["f240", "\u99FA", 62],
+      ["f280", "\u9A39", 32, "\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],
+      ["f340", "\u9A5A", 17, "\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9", 6, "\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6", 4, "\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],
+      ["f380", "\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0", 8, "\u9AFA\u9AFC", 6, "\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],
+      ["f440", "\u9B07\u9B09", 5, "\u9B10\u9B11\u9B12\u9B14", 10, "\u9B20\u9B21\u9B22\u9B24", 10, "\u9B30\u9B31\u9B33", 7, "\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55", 5],
+      ["f480", "\u9B5B", 32, "\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],
+      ["f540", "\u9B7C", 62],
+      ["f580", "\u9BBB", 32, "\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],
+      ["f640", "\u9BDC", 62],
+      ["f680", "\u9C1B", 32, "\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85", 5, "\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E", 5, "\u9CA5", 4, "\u9CAB\u9CAD\u9CAE\u9CB0", 7, "\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],
+      ["f740", "\u9C3C", 62],
+      ["f780", "\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE", 4, "\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC", 4, "\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],
+      ["f840", "\u9CE3", 62],
+      ["f880", "\u9D22", 32],
+      ["f940", "\u9D43", 62],
+      ["f980", "\u9D82", 32],
+      ["fa40", "\u9DA3", 62],
+      ["fa80", "\u9DE2", 32],
+      ["fb40", "\u9E03", 27, "\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74", 9, "\u9E80"],
+      ["fb80", "\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C", 5, "\u9E94", 8, "\u9E9E\u9EA0", 5, "\u9EA7\u9EA8\u9EA9\u9EAA"],
+      ["fc40", "\u9EAB", 8, "\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF", 4, "\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0", 8, "\u9EFA\u9EFD\u9EFF", 6],
+      ["fc80", "\u9F06", 4, "\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A", 5, "\u9F21\u9F23", 8, "\u9F2D\u9F2E\u9F30\u9F31"],
+      ["fd40", "\u9F32", 4, "\u9F38\u9F3A\u9F3C\u9F3F", 4, "\u9F45", 10, "\u9F52", 38],
+      ["fd80", "\u9F79", 5, "\u9F81\u9F82\u9F8D", 11, "\u9F9C\u9F9D\u9F9E\u9FA1", 4, "\uF92C\uF979\uF995\uF9E7\uF9F1"],
+      ["fe40", "\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json
+var require_gbk_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) {
+    module2.exports = [
+      ["a140", "\uE4C6", 62],
+      ["a180", "\uE505", 32],
+      ["a240", "\uE526", 62],
+      ["a280", "\uE565", 32],
+      ["a2ab", "\uE766", 5],
+      ["a2e3", "\u20AC\uE76D"],
+      ["a2ef", "\uE76E\uE76F"],
+      ["a2fd", "\uE770\uE771"],
+      ["a340", "\uE586", 62],
+      ["a380", "\uE5C5", 31, "\u3000"],
+      ["a440", "\uE5E6", 62],
+      ["a480", "\uE625", 32],
+      ["a4f4", "\uE772", 10],
+      ["a540", "\uE646", 62],
+      ["a580", "\uE685", 32],
+      ["a5f7", "\uE77D", 7],
+      ["a640", "\uE6A6", 62],
+      ["a680", "\uE6E5", 32],
+      ["a6b9", "\uE785", 7],
+      ["a6d9", "\uE78D", 6],
+      ["a6ec", "\uE794\uE795"],
+      ["a6f3", "\uE796"],
+      ["a6f6", "\uE797", 8],
+      ["a740", "\uE706", 62],
+      ["a780", "\uE745", 32],
+      ["a7c2", "\uE7A0", 14],
+      ["a7f2", "\uE7AF", 12],
+      ["a896", "\uE7BC", 10],
+      ["a8bc", "\u1E3F"],
+      ["a8bf", "\u01F9"],
+      ["a8c1", "\uE7C9\uE7CA\uE7CB\uE7CC"],
+      ["a8ea", "\uE7CD", 20],
+      ["a958", "\uE7E2"],
+      ["a95b", "\uE7E3"],
+      ["a95d", "\uE7E4\uE7E5\uE7E6"],
+      ["a989", "\u303E\u2FF0", 11],
+      ["a997", "\uE7F4", 12],
+      ["a9f0", "\uE801", 14],
+      ["aaa1", "\uE000", 93],
+      ["aba1", "\uE05E", 93],
+      ["aca1", "\uE0BC", 93],
+      ["ada1", "\uE11A", 93],
+      ["aea1", "\uE178", 93],
+      ["afa1", "\uE1D6", 93],
+      ["d7fa", "\uE810", 4],
+      ["f8a1", "\uE234", 93],
+      ["f9a1", "\uE292", 93],
+      ["faa1", "\uE2F0", 93],
+      ["fba1", "\uE34E", 93],
+      ["fca1", "\uE3AC", 93],
+      ["fda1", "\uE40A", 93],
+      ["fe50", "\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],
+      ["fe80", "\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13", 6, "\u4DAE\uE864\uE468", 93],
+      ["8135f437", "\uE7C7"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json
+var require_gb18030_ranges = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) {
+    module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json
+var require_cp949 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"],
+      ["8161", "\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41", 9, "\uAC4C\uAC4E", 5, "\uAC55"],
+      ["8181", "\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D", 18, "\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B", 4, "\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95", 6, "\uAC9E\uACA2", 5, "\uACAB\uACAD\uACAE\uACB1", 6, "\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD", 7, "\uACD6\uACD8", 7, "\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7", 4, "\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07", 4, "\uAD0E\uAD10\uAD12\uAD13"],
+      ["8241", "\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21", 7, "\uAD2A\uAD2B\uAD2E", 5],
+      ["8261", "\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D", 6, "\uAD46\uAD48\uAD4A", 5, "\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],
+      ["8281", "\uAD59", 7, "\uAD62\uAD64", 7, "\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83", 4, "\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91", 10, "\uAD9E", 5, "\uADA5", 17, "\uADB8", 7, "\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9", 6, "\uADD2\uADD4", 7, "\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5", 18],
+      ["8341", "\uADFA\uADFB\uADFD\uADFE\uAE02", 5, "\uAE0A\uAE0C\uAE0E", 5, "\uAE15", 7],
+      ["8361", "\uAE1D", 18, "\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],
+      ["8381", "\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57", 4, "\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71", 6, "\uAE7A\uAE7E", 5, "\uAE86", 5, "\uAE8D", 46, "\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5", 6, "\uAECE\uAED2", 5, "\uAEDA\uAEDB\uAEDD", 8],
+      ["8441", "\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE", 5, "\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD", 8],
+      ["8461", "\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11", 18],
+      ["8481", "\uAF24", 7, "\uAF2E\uAF2F\uAF31\uAF33\uAF35", 6, "\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A", 5, "\uAF51", 10, "\uAF5E", 5, "\uAF66", 18, "\uAF7A", 5, "\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89", 6, "\uAF92\uAF93\uAF94\uAF96", 5, "\uAF9D", 26, "\uAFBA\uAFBB\uAFBD\uAFBE"],
+      ["8541", "\uAFBF\uAFC1", 5, "\uAFCA\uAFCC\uAFCF", 4, "\uAFD5", 6, "\uAFDD", 4],
+      ["8561", "\uAFE2", 5, "\uAFEA", 5, "\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9", 6, "\uB002\uB003"],
+      ["8581", "\uB005", 6, "\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015", 6, "\uB01E", 9, "\uB029", 26, "\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E", 29, "\uB07E\uB07F\uB081\uB082\uB083\uB085", 6, "\uB08E\uB090\uB092", 5, "\uB09B\uB09D\uB09E\uB0A3\uB0A4"],
+      ["8641", "\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD", 6, "\uB0C6\uB0CA", 5, "\uB0D2"],
+      ["8661", "\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9", 6, "\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6", 10],
+      ["8681", "\uB0F1", 22, "\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E", 4, "\uB126\uB127\uB129\uB12A\uB12B\uB12D", 6, "\uB136\uB13A", 5, "\uB142\uB143\uB145\uB146\uB147\uB149", 6, "\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161", 22, "\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183", 4, "\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],
+      ["8741", "\uB19E", 9, "\uB1A9", 15],
+      ["8761", "\uB1B9", 18, "\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],
+      ["8781", "\uB1D6", 5, "\uB1DE\uB1E0", 7, "\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1", 7, "\uB1FA\uB1FC\uB1FE", 5, "\uB206\uB207\uB209\uB20A\uB20D", 6, "\uB216\uB218\uB21A", 5, "\uB221", 18, "\uB235", 6, "\uB23D", 26, "\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261", 6, "\uB26A", 4],
+      ["8841", "\uB26F", 4, "\uB276", 5, "\uB27D", 6, "\uB286\uB287\uB288\uB28A", 4],
+      ["8861", "\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B", 4, "\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],
+      ["8881", "\uB2B8", 15, "\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3", 4, "\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309", 6, "\uB312\uB316", 5, "\uB31D", 54, "\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],
+      ["8941", "\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379", 6, "\uB382\uB386", 5, "\uB38D"],
+      ["8961", "\uB38E\uB38F\uB391\uB392\uB393\uB395", 10, "\uB3A2", 5, "\uB3A9\uB3AA\uB3AB\uB3AD"],
+      ["8981", "\uB3AE", 21, "\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9", 18, "\uB3FD", 18, "\uB411", 6, "\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421", 6, "\uB42A\uB42C", 7, "\uB435", 15],
+      ["8a41", "\uB445", 10, "\uB452\uB453\uB455\uB456\uB457\uB459", 6, "\uB462\uB464\uB466"],
+      ["8a61", "\uB467", 4, "\uB46D", 18, "\uB481\uB482"],
+      ["8a81", "\uB483", 4, "\uB489", 19, "\uB49E", 5, "\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD", 7, "\uB4B6\uB4B8\uB4BA", 5, "\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9", 6, "\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6", 5, "\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7", 4, "\uB4EE\uB4F0\uB4F2", 5, "\uB4F9", 26, "\uB516\uB517\uB519\uB51A\uB51D"],
+      ["8b41", "\uB51E", 5, "\uB526\uB52B", 4, "\uB532\uB533\uB535\uB536\uB537\uB539", 6, "\uB542\uB546"],
+      ["8b61", "\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555", 6, "\uB55E\uB562", 8],
+      ["8b81", "\uB56B", 52, "\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6", 4, "\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5", 6, "\uB5CE\uB5D2", 5, "\uB5D9", 18, "\uB5ED", 18],
+      ["8c41", "\uB600", 15, "\uB612\uB613\uB615\uB616\uB617\uB619", 4],
+      ["8c61", "\uB61E", 6, "\uB626", 5, "\uB62D", 6, "\uB635", 5],
+      ["8c81", "\uB63B", 12, "\uB649", 26, "\uB665\uB666\uB667\uB669", 50, "\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5", 5, "\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2", 16],
+      ["8d41", "\uB6C3", 16, "\uB6D5", 8],
+      ["8d61", "\uB6DE", 17, "\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],
+      ["8d81", "\uB6FB", 4, "\uB702\uB703\uB704\uB706", 33, "\uB72A\uB72B\uB72D\uB72E\uB731", 6, "\uB73A\uB73C", 7, "\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D", 6, "\uB756", 9, "\uB761\uB762\uB763\uB765\uB766\uB767\uB769", 6, "\uB772\uB774\uB776", 5, "\uB77E\uB77F\uB781\uB782\uB783\uB785", 6, "\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],
+      ["8e41", "\uB79F\uB7A1", 6, "\uB7AA\uB7AE", 5, "\uB7B6\uB7B7\uB7B9", 8],
+      ["8e61", "\uB7C2", 4, "\uB7C8\uB7CA", 19],
+      ["8e81", "\uB7DE", 13, "\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5", 6, "\uB7FE\uB802", 4, "\uB80A\uB80B\uB80D\uB80E\uB80F\uB811", 6, "\uB81A\uB81C\uB81E", 5, "\uB826\uB827\uB829\uB82A\uB82B\uB82D", 6, "\uB836\uB83A", 5, "\uB841\uB842\uB843\uB845", 11, "\uB852\uB854", 7, "\uB85E\uB85F\uB861\uB862\uB863\uB865", 6, "\uB86E\uB870\uB872", 5, "\uB879\uB87A\uB87B\uB87D", 7],
+      ["8f41", "\uB885", 7, "\uB88E", 17],
+      ["8f61", "\uB8A0", 7, "\uB8A9", 6, "\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9", 4],
+      ["8f81", "\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6", 5, "\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5", 7, "\uB8DE\uB8E0\uB8E2", 5, "\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1", 6, "\uB8FA\uB8FC\uB8FE", 5, "\uB905", 18, "\uB919", 6, "\uB921", 26, "\uB93E\uB93F\uB941\uB942\uB943\uB945", 6, "\uB94D\uB94E\uB950\uB952", 5],
+      ["9041", "\uB95A\uB95B\uB95D\uB95E\uB95F\uB961", 6, "\uB96A\uB96C\uB96E", 5, "\uB976\uB977\uB979\uB97A\uB97B\uB97D"],
+      ["9061", "\uB97E", 5, "\uB986\uB988\uB98B\uB98C\uB98F", 15],
+      ["9081", "\uB99F", 12, "\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5", 6, "\uB9BE\uB9C0\uB9C2", 5, "\uB9CA\uB9CB\uB9CD\uB9D3", 4, "\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED", 6, "\uB9F6\uB9FB", 4, "\uBA02", 5, "\uBA09", 11, "\uBA16", 33, "\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],
+      ["9141", "\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D", 6, "\uBA66\uBA6A", 5],
+      ["9161", "\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79", 9, "\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D", 5],
+      ["9181", "\uBA93", 20, "\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3", 4, "\uBABA\uBABC\uBABE", 5, "\uBAC5\uBAC6\uBAC7\uBAC9", 14, "\uBADA", 33, "\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05", 7, "\uBB0E\uBB10\uBB12", 5, "\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21", 6],
+      ["9241", "\uBB28\uBB2A\uBB2C", 7, "\uBB37\uBB39\uBB3A\uBB3F", 4, "\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],
+      ["9261", "\uBB53\uBB55\uBB56\uBB57\uBB59", 7, "\uBB62\uBB64", 7, "\uBB6D", 4],
+      ["9281", "\uBB72", 21, "\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91", 18, "\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD", 6, "\uBBB5\uBBB6\uBBB8", 7, "\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9", 6, "\uBBD1\uBBD2\uBBD4", 35, "\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],
+      ["9341", "\uBC03", 4, "\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],
+      ["9361", "\uBC36\uBC37\uBC39", 6, "\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51", 8],
+      ["9381", "\uBC5A\uBC5B\uBC5C\uBC5E", 37, "\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F", 4, "\uBC96\uBC98\uBC9B", 4, "\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9", 6, "\uBCB2\uBCB6", 5, "\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5", 7, "\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD", 22, "\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],
+      ["9441", "\uBCFE", 5, "\uBD06\uBD08\uBD0A", 5, "\uBD11\uBD12\uBD13\uBD15", 8],
+      ["9461", "\uBD1E", 5, "\uBD25", 6, "\uBD2D", 12],
+      ["9481", "\uBD3A", 5, "\uBD41", 6, "\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51", 6, "\uBD5A", 9, "\uBD65\uBD66\uBD67\uBD69", 22, "\uBD82\uBD83\uBD85\uBD86\uBD8B", 4, "\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D", 6, "\uBDA5", 10, "\uBDB1", 6, "\uBDB9", 24],
+      ["9541", "\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD", 11, "\uBDEA", 5, "\uBDF1"],
+      ["9561", "\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9", 6, "\uBE01\uBE02\uBE04\uBE06", 5, "\uBE0E\uBE0F\uBE11\uBE12\uBE13"],
+      ["9581", "\uBE15", 6, "\uBE1E\uBE20", 35, "\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F", 4, "\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B", 4, "\uBE72\uBE76", 4, "\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85", 6, "\uBE8E\uBE92", 5, "\uBE9A", 13, "\uBEA9", 14],
+      ["9641", "\uBEB8", 23, "\uBED2\uBED3"],
+      ["9661", "\uBED5\uBED6\uBED9", 6, "\uBEE1\uBEE2\uBEE6", 5, "\uBEED", 8],
+      ["9681", "\uBEF6", 10, "\uBF02", 5, "\uBF0A", 13, "\uBF1A\uBF1E", 33, "\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49", 6, "\uBF52\uBF53\uBF54\uBF56", 44],
+      ["9741", "\uBF83", 16, "\uBF95", 8],
+      ["9761", "\uBF9E", 17, "\uBFB1", 7],
+      ["9781", "\uBFB9", 11, "\uBFC6", 5, "\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5", 6, "\uBFDD\uBFDE\uBFE0\uBFE2", 89, "\uC03D\uC03E\uC03F"],
+      ["9841", "\uC040", 16, "\uC052", 5, "\uC059\uC05A\uC05B"],
+      ["9861", "\uC05D\uC05E\uC05F\uC061", 6, "\uC06A", 15],
+      ["9881", "\uC07A", 21, "\uC092\uC093\uC095\uC096\uC097\uC099", 6, "\uC0A2\uC0A4\uC0A6", 5, "\uC0AE\uC0B1\uC0B2\uC0B7", 4, "\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1", 6, "\uC0DA\uC0DE", 5, "\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED", 6, "\uC0F6\uC0F8\uC0FA", 5, "\uC101\uC102\uC103\uC105\uC106\uC107\uC109", 6, "\uC111\uC112\uC113\uC114\uC116", 5, "\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],
+      ["9941", "\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141", 6, "\uC14A\uC14E", 5, "\uC156\uC157"],
+      ["9961", "\uC159\uC15A\uC15B\uC15D", 6, "\uC166\uC16A", 5, "\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],
+      ["9981", "\uC17C", 8, "\uC186", 5, "\uC18F\uC191\uC192\uC193\uC195\uC197", 4, "\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1", 11, "\uC1BE", 5, "\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD", 6, "\uC1D5\uC1D6\uC1D9", 6, "\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9", 6, "\uC1F2\uC1F4", 7, "\uC1FE\uC1FF\uC201\uC202\uC203\uC205", 6, "\uC20E\uC210\uC212", 5, "\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],
+      ["9a41", "\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235", 16],
+      ["9a61", "\uC246\uC247\uC249", 6, "\uC252\uC253\uC255\uC256\uC257\uC259", 6, "\uC261\uC262\uC263\uC264\uC266"],
+      ["9a81", "\uC267", 4, "\uC26E\uC26F\uC271\uC272\uC273\uC275", 6, "\uC27E\uC280\uC282", 5, "\uC28A", 5, "\uC291", 6, "\uC299\uC29A\uC29C\uC29E", 5, "\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE", 5, "\uC2B6\uC2B8\uC2BA", 33, "\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5", 5, "\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301", 6, "\uC30A\uC30B\uC30E\uC30F"],
+      ["9b41", "\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D", 6, "\uC326\uC327\uC32A", 8],
+      ["9b61", "\uC333", 17, "\uC346", 7],
+      ["9b81", "\uC34E", 25, "\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373", 4, "\uC37A\uC37B\uC37E", 5, "\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D", 50, "\uC3C1", 22, "\uC3DA"],
+      ["9c41", "\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3", 4, "\uC3EA\uC3EB\uC3EC\uC3EE", 5, "\uC3F6\uC3F7\uC3F9", 5],
+      ["9c61", "\uC3FF", 8, "\uC409", 6, "\uC411", 9],
+      ["9c81", "\uC41B", 8, "\uC425", 6, "\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435", 6, "\uC43E", 9, "\uC449", 26, "\uC466\uC467\uC469\uC46A\uC46B\uC46D", 6, "\uC476\uC477\uC478\uC47A", 5, "\uC481", 18, "\uC495", 6, "\uC49D", 12],
+      ["9d41", "\uC4AA", 13, "\uC4B9\uC4BA\uC4BB\uC4BD", 8],
+      ["9d61", "\uC4C6", 25],
+      ["9d81", "\uC4E0", 8, "\uC4EA", 5, "\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502", 9, "\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515", 6, "\uC51D", 10, "\uC52A\uC52B\uC52D\uC52E\uC52F\uC531", 6, "\uC53A\uC53C\uC53E", 5, "\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569", 6, "\uC572\uC576", 5, "\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],
+      ["9e41", "\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1", 7, "\uC5AA", 9, "\uC5B6"],
+      ["9e61", "\uC5B7\uC5BA\uC5BF", 4, "\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9", 6, "\uC5E2\uC5E4\uC5E6\uC5E7"],
+      ["9e81", "\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611", 6, "\uC61A\uC61D", 6, "\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649", 6, "\uC652\uC656", 5, "\uC65E\uC65F\uC661", 10, "\uC66D\uC66E\uC670\uC672", 5, "\uC67A\uC67B\uC67D\uC67E\uC67F\uC681", 6, "\uC68A\uC68C\uC68E", 5, "\uC696\uC697\uC699\uC69A\uC69B\uC69D", 6, "\uC6A6"],
+      ["9f41", "\uC6A8\uC6AA", 5, "\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB", 4, "\uC6C2\uC6C4\uC6C6", 5, "\uC6CE"],
+      ["9f61", "\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5", 6, "\uC6DE\uC6DF\uC6E2", 5, "\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],
+      ["9f81", "\uC6F3", 4, "\uC6FA\uC6FB\uC6FC\uC6FE", 5, "\uC706\uC707\uC709\uC70A\uC70B\uC70D", 6, "\uC716\uC718\uC71A", 5, "\uC722\uC723\uC725\uC726\uC727\uC729", 6, "\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745", 4, "\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761", 6, "\uC769\uC76A\uC76C", 7, "\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B", 4, "\uC7A2\uC7A7", 4, "\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],
+      ["a041", "\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2", 5, "\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1", 6, "\uC7D9\uC7DA\uC7DB\uC7DC"],
+      ["a061", "\uC7DE", 5, "\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED", 13],
+      ["a081", "\uC7FB", 4, "\uC802\uC803\uC805\uC806\uC807\uC809\uC80B", 4, "\uC812\uC814\uC817", 4, "\uC81E\uC81F\uC821\uC822\uC823\uC825", 6, "\uC82E\uC830\uC832", 5, "\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841", 6, "\uC84A\uC84B\uC84E", 5, "\uC855", 26, "\uC872\uC873\uC875\uC876\uC877\uC879\uC87B", 4, "\uC882\uC884\uC888\uC889\uC88A\uC88E", 5, "\uC895", 7, "\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],
+      ["a141", "\uC8A5\uC8A6\uC8A7\uC8A9", 18, "\uC8BE\uC8BF\uC8C0\uC8C1"],
+      ["a161", "\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD", 6, "\uC8D6\uC8D8\uC8DA", 5, "\uC8E2\uC8E3\uC8E5"],
+      ["a181", "\uC8E6", 14, "\uC8F6", 5, "\uC8FE\uC8FF\uC901\uC902\uC903\uC907", 4, "\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 9, "\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],
+      ["a241", "\uC910\uC912", 5, "\uC919", 18],
+      ["a261", "\uC92D", 6, "\uC935", 18],
+      ["a281", "\uC948", 7, "\uC952\uC953\uC955\uC956\uC957\uC959", 6, "\uC962\uC964", 7, "\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],
+      ["a341", "\uC971\uC972\uC973\uC975", 6, "\uC97D", 10, "\uC98A\uC98B\uC98D\uC98E\uC98F"],
+      ["a361", "\uC991", 6, "\uC99A\uC99C\uC99E", 16],
+      ["a381", "\uC9AF", 16, "\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB", 4, "\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01", 58, "\uFFE6\uFF3D", 32, "\uFFE3"],
+      ["a441", "\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2", 5, "\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],
+      ["a461", "\uCA05\uCA06\uCA07\uCA0A\uCA0E", 5, "\uCA15\uCA16\uCA17\uCA19", 12],
+      ["a481", "\uCA26\uCA27\uCA28\uCA2A", 28, "\u3131", 93],
+      ["a541", "\uCA47", 4, "\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55", 6, "\uCA5E\uCA62", 5, "\uCA69\uCA6A"],
+      ["a561", "\uCA6B", 17, "\uCA7E", 5, "\uCA85\uCA86"],
+      ["a581", "\uCA87", 16, "\uCA99", 14, "\u2170", 9],
+      ["a5b0", "\u2160", 9],
+      ["a5c1", "\u0391", 16, "\u03A3", 6],
+      ["a5e1", "\u03B1", 16, "\u03C3", 6],
+      ["a641", "\uCAA8", 19, "\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],
+      ["a661", "\uCAC6", 5, "\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA", 5, "\uCAE1", 6],
+      ["a681", "\uCAE8\uCAE9\uCAEA\uCAEB\uCAED", 6, "\uCAF5", 18, "\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543", 7],
+      ["a741", "\uCB0B", 4, "\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19", 6, "\uCB22", 7],
+      ["a761", "\uCB2A", 22, "\uCB42\uCB43\uCB44"],
+      ["a781", "\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51", 6, "\uCB5A\uCB5B\uCB5C\uCB5E", 5, "\uCB65", 7, "\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399", 9, "\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0", 9, "\u3380", 4, "\u33BA", 5, "\u3390", 4, "\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],
+      ["a841", "\uCB6D", 10, "\uCB7A", 14],
+      ["a861", "\uCB89", 18, "\uCB9D", 6],
+      ["a881", "\uCBA4", 19, "\uCBB9", 11, "\xC6\xD0\xAA\u0126"],
+      ["a8a6", "\u0132"],
+      ["a8a8", "\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],
+      ["a8b1", "\u3260", 27, "\u24D0", 25, "\u2460", 14, "\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],
+      ["a941", "\uCBC5", 14, "\uCBD5", 10],
+      ["a961", "\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA", 18],
+      ["a981", "\uCBFD", 14, "\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15", 6, "\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200", 27, "\u249C", 25, "\u2474", 14, "\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],
+      ["aa41", "\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31", 6, "\uCC3A\uCC3F", 4, "\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],
+      ["aa61", "\uCC4F", 4, "\uCC56\uCC5A", 5, "\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69", 6, "\uCC71\uCC72"],
+      ["aa81", "\uCC73\uCC74\uCC76", 29, "\u3041", 82],
+      ["ab41", "\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1", 6, "\uCCAA\uCCAE", 5, "\uCCB6\uCCB7\uCCB9"],
+      ["ab61", "\uCCBA\uCCBB\uCCBD", 6, "\uCCC6\uCCC8\uCCCA", 5, "\uCCD1\uCCD2\uCCD3\uCCD5", 5],
+      ["ab81", "\uCCDB", 8, "\uCCE5", 6, "\uCCED\uCCEE\uCCEF\uCCF1", 12, "\u30A1", 85],
+      ["ac41", "\uCCFE\uCCFF\uCD00\uCD02", 5, "\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11", 6, "\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],
+      ["ac61", "\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D", 11, "\uCD3A", 4],
+      ["ac81", "\uCD3F", 28, "\uCD5D\uCD5E\uCD5F\u0410", 5, "\u0401\u0416", 25],
+      ["acd1", "\u0430", 5, "\u0451\u0436", 25],
+      ["ad41", "\uCD61\uCD62\uCD63\uCD65", 6, "\uCD6E\uCD70\uCD72", 5, "\uCD79", 7],
+      ["ad61", "\uCD81", 6, "\uCD89", 10, "\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],
+      ["ad81", "\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA", 5, "\uCDB1", 18, "\uCDC5"],
+      ["ae41", "\uCDC6", 5, "\uCDCD\uCDCE\uCDCF\uCDD1", 16],
+      ["ae61", "\uCDE2", 5, "\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1", 6, "\uCDFA\uCDFC\uCDFE", 4],
+      ["ae81", "\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D", 6, "\uCE15\uCE16\uCE17\uCE18\uCE1A", 5, "\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],
+      ["af41", "\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36", 19],
+      ["af61", "\uCE4A", 13, "\uCE5A\uCE5B\uCE5D\uCE5E\uCE62", 5, "\uCE6A\uCE6C"],
+      ["af81", "\uCE6E", 5, "\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D", 6, "\uCE86\uCE88\uCE8A", 5, "\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],
+      ["b041", "\uCE9A", 5, "\uCEA2\uCEA6", 5, "\uCEAE", 12],
+      ["b061", "\uCEBB", 5, "\uCEC2", 19],
+      ["b081", "\uCED6", 13, "\uCEE6\uCEE7\uCEE9\uCEEA\uCEED", 6, "\uCEF6\uCEFA", 5, "\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10", 7, "\uAC19", 4, "\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],
+      ["b141", "\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09", 6, "\uCF12\uCF14\uCF16", 5, "\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],
+      ["b161", "\uCF25", 6, "\uCF2E\uCF32", 5, "\uCF39", 11],
+      ["b181", "\uCF45", 14, "\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D", 6, "\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],
+      ["b241", "\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79", 6, "\uCF81\uCF82\uCF83\uCF84\uCF86", 5, "\uCF8D"],
+      ["b261", "\uCF8E", 18, "\uCFA2", 5, "\uCFA9"],
+      ["b281", "\uCFAA", 5, "\uCFB1", 18, "\uCFC5", 6, "\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],
+      ["b341", "\uCFCC", 19, "\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],
+      ["b361", "\uCFEA", 5, "\uCFF2\uCFF4\uCFF6", 5, "\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005", 5],
+      ["b381", "\uD00B", 5, "\uD012", 5, "\uD019", 19, "\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB", 4, "\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],
+      ["b441", "\uD02E", 5, "\uD036\uD037\uD039\uD03A\uD03B\uD03D", 6, "\uD046\uD048\uD04A", 5],
+      ["b461", "\uD051\uD052\uD053\uD055\uD056\uD057\uD059", 6, "\uD061", 10, "\uD06E\uD06F"],
+      ["b481", "\uD071\uD072\uD073\uD075", 6, "\uD07E\uD07F\uD080\uD082", 18, "\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB", 4, "\uB2F3\uB2F4\uB2F5\uB2F7", 4, "\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],
+      ["b541", "\uD095", 14, "\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD", 5],
+      ["b561", "\uD0B3\uD0B6\uD0B8\uD0BA", 5, "\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA", 5, "\uD0D2\uD0D6", 4],
+      ["b581", "\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5", 6, "\uD0EE\uD0F2", 5, "\uD0F9", 11, "\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],
+      ["b641", "\uD105", 7, "\uD10E", 17],
+      ["b661", "\uD120", 15, "\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],
+      ["b681", "\uD13F\uD142\uD146", 5, "\uD14E\uD14F\uD151\uD152\uD153\uD155", 6, "\uD15E\uD160\uD162", 5, "\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],
+      ["b741", "\uD16E", 13, "\uD17D", 6, "\uD185\uD186\uD187\uD189\uD18A"],
+      ["b761", "\uD18B", 20, "\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],
+      ["b781", "\uD1A9", 6, "\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1", 14, "\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],
+      ["b841", "\uD1D0", 7, "\uD1D9", 17],
+      ["b861", "\uD1EB", 8, "\uD1F5\uD1F6\uD1F7\uD1F9", 13],
+      ["b881", "\uD208\uD20A", 5, "\uD211", 24, "\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE", 4, "\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],
+      ["b941", "\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235", 6, "\uD23E\uD240\uD242", 5, "\uD249\uD24A\uD24B\uD24C"],
+      ["b961", "\uD24D", 14, "\uD25D", 6, "\uD265\uD266\uD267\uD268"],
+      ["b981", "\uD269", 22, "\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14", 4, "\uBC1B", 4, "\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],
+      ["ba41", "\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296", 5, "\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5", 6, "\uD2AD"],
+      ["ba61", "\uD2AE\uD2AF\uD2B0\uD2B2", 5, "\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3", 4, "\uD2CA\uD2CC", 5],
+      ["ba81", "\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD", 6, "\uD2E6", 9, "\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],
+      ["bb41", "\uD2FB", 4, "\uD302\uD304\uD306", 5, "\uD30F\uD311\uD312\uD313\uD315\uD317", 4, "\uD31E\uD322\uD323"],
+      ["bb61", "\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331", 6, "\uD33A\uD33E", 5, "\uD346\uD347\uD348\uD349"],
+      ["bb81", "\uD34A", 31, "\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],
+      ["bc41", "\uD36A", 17, "\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],
+      ["bc61", "\uD388\uD389\uD38A\uD38B\uD38E\uD392", 5, "\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1", 6, "\uD3AA\uD3AC\uD3AE"],
+      ["bc81", "\uD3AF", 4, "\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD", 6, "\uD3C6\uD3C7\uD3CA", 5, "\uD3D1", 5, "\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C", 4, "\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],
+      ["bd41", "\uD3D7\uD3D9", 7, "\uD3E2\uD3E4", 7, "\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],
+      ["bd61", "\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402", 5, "\uD409", 13],
+      ["bd81", "\uD417", 5, "\uD41E", 25, "\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],
+      ["be41", "\uD438", 7, "\uD441\uD442\uD443\uD445", 14],
+      ["be61", "\uD454", 7, "\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465", 7, "\uD46E\uD470\uD471\uD472"],
+      ["be81", "\uD473", 4, "\uD47A\uD47B\uD47D\uD47E\uD481\uD483", 4, "\uD48A\uD48C\uD48E", 5, "\uD495", 8, "\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4", 6, "\uC5CC\uC5CE"],
+      ["bf41", "\uD49E", 10, "\uD4AA", 14],
+      ["bf61", "\uD4B9", 18, "\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],
+      ["bf81", "\uD4D6", 5, "\uD4DD\uD4DE\uD4E0", 7, "\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1", 6, "\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC", 5, "\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],
+      ["c041", "\uD4FE", 5, "\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D", 6, "\uD516\uD518", 5],
+      ["c061", "\uD51E", 25],
+      ["c081", "\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545", 6, "\uD54E\uD550\uD552", 5, "\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751", 7, "\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],
+      ["c141", "\uD564\uD566\uD567\uD56A\uD56C\uD56E", 5, "\uD576\uD577\uD579\uD57A\uD57B\uD57D", 6, "\uD586\uD58A\uD58B"],
+      ["c161", "\uD58C\uD58D\uD58E\uD58F\uD591", 19, "\uD5A6\uD5A7"],
+      ["c181", "\uD5A8", 31, "\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],
+      ["c241", "\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3", 4, "\uD5DA\uD5DC\uD5DE", 5, "\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],
+      ["c261", "\uD5EF", 4, "\uD5F6\uD5F8\uD5FA", 5, "\uD602\uD603\uD605\uD606\uD607\uD609", 6, "\uD612"],
+      ["c281", "\uD616", 5, "\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625", 7, "\uD62E", 9, "\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],
+      ["c341", "\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D", 4],
+      ["c361", "\uD662", 4, "\uD668\uD66A", 5, "\uD672\uD673\uD675", 11],
+      ["c381", "\uD681\uD682\uD684\uD686", 5, "\uD68E\uD68F\uD691\uD692\uD693\uD695", 7, "\uD69E\uD6A0\uD6A2", 5, "\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],
+      ["c441", "\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1", 7, "\uD6BA\uD6BC", 7, "\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],
+      ["c461", "\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA", 5, "\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9", 4],
+      ["c481", "\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6", 5, "\uD6FE\uD6FF\uD701\uD702\uD703\uD705", 11, "\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],
+      ["c541", "\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721", 6, "\uD72A\uD72C\uD72E", 5, "\uD736\uD737\uD739"],
+      ["c561", "\uD73A\uD73B\uD73D", 6, "\uD745\uD746\uD748\uD74A", 5, "\uD752\uD753\uD755\uD75A", 4],
+      ["c581", "\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775", 6, "\uD77E\uD77F\uD780\uD782", 5, "\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],
+      ["c641", "\uD78D\uD78E\uD78F\uD791", 6, "\uD79A\uD79C\uD79E", 5],
+      ["c6a1", "\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],
+      ["c7a1", "\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],
+      ["c8a1", "\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],
+      ["caa1", "\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],
+      ["cba1", "\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],
+      ["cca1", "\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],
+      ["cda1", "\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],
+      ["cea1", "\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],
+      ["cfa1", "\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],
+      ["d0a1", "\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],
+      ["d1a1", "\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E", 5, "\u90A3\uF914", 4, "\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],
+      ["d2a1", "\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928", 4, "\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933", 5, "\u99D1\uF939", 10, "\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A", 7, "\u5AE9\u8A25\u677B\u7D10\uF952", 5, "\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],
+      ["d3a1", "\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],
+      ["d4a1", "\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],
+      ["d5a1", "\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],
+      ["d6a1", "\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],
+      ["d7a1", "\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],
+      ["d8a1", "\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],
+      ["d9a1", "\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],
+      ["daa1", "\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],
+      ["dba1", "\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],
+      ["dca1", "\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],
+      ["dda1", "\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],
+      ["dea1", "\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],
+      ["dfa1", "\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],
+      ["e0a1", "\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],
+      ["e1a1", "\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],
+      ["e2a1", "\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],
+      ["e3a1", "\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],
+      ["e4a1", "\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],
+      ["e5a1", "\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],
+      ["e6a1", "\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],
+      ["e7a1", "\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],
+      ["e8a1", "\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],
+      ["e9a1", "\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],
+      ["eaa1", "\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],
+      ["eba1", "\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],
+      ["eca1", "\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],
+      ["eda1", "\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],
+      ["eea1", "\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],
+      ["efa1", "\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],
+      ["f0a1", "\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],
+      ["f1a1", "\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],
+      ["f2a1", "\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],
+      ["f3a1", "\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],
+      ["f4a1", "\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],
+      ["f5a1", "\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],
+      ["f6a1", "\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],
+      ["f7a1", "\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],
+      ["f8a1", "\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],
+      ["f9a1", "\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],
+      ["faa1", "\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],
+      ["fba1", "\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],
+      ["fca1", "\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],
+      ["fda1", "\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json
+var require_cp950 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],
+      ["a1a1", "\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62", 4, "\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],
+      ["a240", "\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581", 7, "\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],
+      ["a2a1", "\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10", 9, "\u2160", 9, "\u3021", 8, "\u5341\u5344\u5345\uFF21", 25, "\uFF41", 21],
+      ["a340", "\uFF57\uFF58\uFF59\uFF5A\u0391", 16, "\u03A3", 6, "\u03B1", 16, "\u03C3", 6, "\u3105", 10],
+      ["a3a1", "\u3110", 25, "\u02D9\u02C9\u02CA\u02C7\u02CB"],
+      ["a3e1", "\u20AC"],
+      ["a440", "\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],
+      ["a4a1", "\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],
+      ["a540", "\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],
+      ["a5a1", "\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],
+      ["a640", "\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],
+      ["a6a1", "\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],
+      ["a740", "\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],
+      ["a7a1", "\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],
+      ["a840", "\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],
+      ["a8a1", "\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],
+      ["a940", "\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],
+      ["a9a1", "\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],
+      ["aa40", "\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],
+      ["aaa1", "\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],
+      ["ab40", "\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],
+      ["aba1", "\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],
+      ["ac40", "\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],
+      ["aca1", "\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],
+      ["ad40", "\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],
+      ["ada1", "\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],
+      ["ae40", "\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],
+      ["aea1", "\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],
+      ["af40", "\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],
+      ["afa1", "\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],
+      ["b040", "\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],
+      ["b0a1", "\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],
+      ["b140", "\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],
+      ["b1a1", "\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],
+      ["b240", "\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],
+      ["b2a1", "\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],
+      ["b340", "\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],
+      ["b3a1", "\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],
+      ["b440", "\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],
+      ["b4a1", "\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],
+      ["b540", "\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],
+      ["b5a1", "\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],
+      ["b640", "\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],
+      ["b6a1", "\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],
+      ["b740", "\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],
+      ["b7a1", "\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],
+      ["b840", "\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],
+      ["b8a1", "\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],
+      ["b940", "\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],
+      ["b9a1", "\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],
+      ["ba40", "\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],
+      ["baa1", "\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],
+      ["bb40", "\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],
+      ["bba1", "\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],
+      ["bc40", "\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],
+      ["bca1", "\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],
+      ["bd40", "\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],
+      ["bda1", "\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],
+      ["be40", "\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],
+      ["bea1", "\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],
+      ["bf40", "\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],
+      ["bfa1", "\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],
+      ["c040", "\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],
+      ["c0a1", "\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],
+      ["c140", "\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],
+      ["c1a1", "\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],
+      ["c240", "\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],
+      ["c2a1", "\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],
+      ["c340", "\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],
+      ["c3a1", "\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],
+      ["c440", "\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],
+      ["c4a1", "\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],
+      ["c540", "\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],
+      ["c5a1", "\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],
+      ["c640", "\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],
+      ["c940", "\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],
+      ["c9a1", "\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],
+      ["ca40", "\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],
+      ["caa1", "\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],
+      ["cb40", "\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],
+      ["cba1", "\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],
+      ["cc40", "\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],
+      ["cca1", "\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],
+      ["cd40", "\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],
+      ["cda1", "\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],
+      ["ce40", "\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],
+      ["cea1", "\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],
+      ["cf40", "\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],
+      ["cfa1", "\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],
+      ["d040", "\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],
+      ["d0a1", "\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],
+      ["d140", "\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],
+      ["d1a1", "\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],
+      ["d240", "\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],
+      ["d2a1", "\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],
+      ["d340", "\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],
+      ["d3a1", "\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],
+      ["d440", "\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],
+      ["d4a1", "\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],
+      ["d540", "\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],
+      ["d5a1", "\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],
+      ["d640", "\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],
+      ["d6a1", "\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],
+      ["d740", "\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],
+      ["d7a1", "\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],
+      ["d840", "\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],
+      ["d8a1", "\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],
+      ["d940", "\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],
+      ["d9a1", "\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],
+      ["da40", "\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],
+      ["daa1", "\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],
+      ["db40", "\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],
+      ["dba1", "\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],
+      ["dc40", "\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],
+      ["dca1", "\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],
+      ["dd40", "\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],
+      ["dda1", "\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],
+      ["de40", "\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],
+      ["dea1", "\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],
+      ["df40", "\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],
+      ["dfa1", "\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],
+      ["e040", "\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],
+      ["e0a1", "\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],
+      ["e140", "\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],
+      ["e1a1", "\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],
+      ["e240", "\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],
+      ["e2a1", "\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],
+      ["e340", "\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],
+      ["e3a1", "\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],
+      ["e440", "\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],
+      ["e4a1", "\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],
+      ["e540", "\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],
+      ["e5a1", "\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],
+      ["e640", "\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],
+      ["e6a1", "\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],
+      ["e740", "\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],
+      ["e7a1", "\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],
+      ["e840", "\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],
+      ["e8a1", "\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],
+      ["e940", "\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],
+      ["e9a1", "\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],
+      ["ea40", "\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],
+      ["eaa1", "\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],
+      ["eb40", "\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],
+      ["eba1", "\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],
+      ["ec40", "\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],
+      ["eca1", "\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],
+      ["ed40", "\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],
+      ["eda1", "\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],
+      ["ee40", "\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],
+      ["eea1", "\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],
+      ["ef40", "\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],
+      ["efa1", "\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],
+      ["f040", "\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],
+      ["f0a1", "\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],
+      ["f140", "\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],
+      ["f1a1", "\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],
+      ["f240", "\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],
+      ["f2a1", "\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],
+      ["f340", "\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],
+      ["f3a1", "\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],
+      ["f440", "\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],
+      ["f4a1", "\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],
+      ["f540", "\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],
+      ["f5a1", "\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],
+      ["f640", "\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],
+      ["f6a1", "\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],
+      ["f740", "\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],
+      ["f7a1", "\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],
+      ["f840", "\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],
+      ["f8a1", "\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],
+      ["f940", "\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],
+      ["f9a1", "\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json
+var require_big5_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) {
+    module2.exports = [
+      ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],
+      ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],
+      ["87a1", "\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],
+      ["8840", "\u31C0", 4, "\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],
+      ["88a1", "\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],
+      ["8940", "\u{2A3A9}\u{21145}"],
+      ["8943", "\u650A"],
+      ["8946", "\u4E3D\u6EDD\u9D4E\u91DF"],
+      ["894c", "\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],
+      ["89a1", "\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],
+      ["89ab", "\u918C\u78B8\u915E\u80BC"],
+      ["89b0", "\u8D0B\u80F6\u{209E7}"],
+      ["89b5", "\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],
+      ["89c1", "\u6E9A\u823E\u7519"],
+      ["89c5", "\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],
+      ["8a40", "\u{27D84}\u5525"],
+      ["8a43", "\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],
+      ["8a64", "\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],
+      ["8a76", "\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],
+      ["8aa1", "\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],
+      ["8aac", "\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],
+      ["8ab2", "\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],
+      ["8abb", "\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],
+      ["8ac9", "\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],
+      ["8ace", "\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],
+      ["8adf", "\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],
+      ["8af6", "\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],
+      ["8b40", "\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],
+      ["8b55", "\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],
+      ["8ba1", "\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],
+      ["8bde", "\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],
+      ["8c40", "\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],
+      ["8ca1", "\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],
+      ["8ca7", "\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],
+      ["8cc9", "\u9868\u676B\u4276\u573D"],
+      ["8cce", "\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],
+      ["8ce6", "\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],
+      ["8d40", "\u{20B9F}"],
+      ["8d42", "\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],
+      ["8da1", "\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],
+      ["8e40", "\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],
+      ["8ea1", "\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],
+      ["8f40", "\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],
+      ["8fa1", "\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],
+      ["9040", "\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],
+      ["90a1", "\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],
+      ["9140", "\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],
+      ["91a1", "\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],
+      ["9240", "\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],
+      ["92a1", "\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],
+      ["9340", "\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],
+      ["93a1", "\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],
+      ["9440", "\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],
+      ["94a1", "\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],
+      ["9540", "\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],
+      ["95a1", "\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],
+      ["9640", "\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],
+      ["96a1", "\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],
+      ["9740", "\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],
+      ["97a1", "\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],
+      ["9840", "\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],
+      ["98a1", "\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],
+      ["9940", "\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],
+      ["99a1", "\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],
+      ["9a40", "\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],
+      ["9aa1", "\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],
+      ["9b40", "\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],
+      ["9b62", "\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],
+      ["9ba1", "\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],
+      ["9c40", "\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],
+      ["9ca1", "\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],
+      ["9d40", "\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],
+      ["9da1", "\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],
+      ["9e40", "\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],
+      ["9ea1", "\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],
+      ["9ead", "\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],
+      ["9ec5", "\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],
+      ["9ef5", "\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],
+      ["9f40", "\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],
+      ["9f4f", "\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],
+      ["9fa1", "\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],
+      ["9fae", "\u9159\u9681\u915C"],
+      ["9fb2", "\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],
+      ["9fc1", "\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],
+      ["9fc9", "\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],
+      ["9fdb", "\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],
+      ["9fe7", "\u6BFA\u8818\u7F78"],
+      ["9feb", "\u5620\u{2A64A}\u8E77\u9F53"],
+      ["9ff0", "\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],
+      ["a040", "\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],
+      ["a055", "\u{2183B}\u{26E05}"],
+      ["a058", "\u8A7E\u{2251B}"],
+      ["a05b", "\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],
+      ["a063", "\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],
+      ["a073", "\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],
+      ["a0a1", "\u5D57\u{28BC2}\u8FDA\u{28E39}"],
+      ["a0a6", "\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],
+      ["a0ae", "\u77FE"],
+      ["a0b0", "\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],
+      ["a0d4", "\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],
+      ["a0e2", "\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],
+      ["a3c0", "\u2400", 31, "\u2421"],
+      ["c6a1", "\u2460", 9, "\u2474", 9, "\u2170", 9, "\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041", 23],
+      ["c740", "\u3059", 58, "\u30A1\u30A2\u30A3\u30A4"],
+      ["c7a1", "\u30A5", 81, "\u0410", 5, "\u0401\u0416", 4],
+      ["c840", "\u041B", 26, "\u0451\u0436", 25, "\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],
+      ["c8a1", "\u9FB0\u5188\u9FB1\u{27607}"],
+      ["c8cd", "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],
+      ["c8f5", "\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],
+      ["f9fe", "\uFFED"],
+      ["fa40", "\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],
+      ["faa1", "\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],
+      ["fb40", "\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],
+      ["fba1", "\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],
+      ["fc40", "\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],
+      ["fca1", "\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],
+      ["fd40", "\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],
+      ["fda1", "\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],
+      ["fe40", "\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],
+      ["fea1", "\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js
+var require_dbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // == Japanese/ShiftJIS ====================================================
+      // All japanese encodings are based on JIS X set of standards:
+      // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF.
+      // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes. 
+      //              Has several variations in 1978, 1983, 1990 and 1997.
+      // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead.
+      // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233.
+      //              2 planes, first is superset of 0208, second - revised 0212.
+      //              Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx)
+      // Byte encodings are:
+      //  * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte
+      //               encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC.
+      //               Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI.
+      //  * EUC-JP:    Up to 3 bytes per character. Used mostly on *nixes.
+      //               0x00-0x7F       - lower part of 0201
+      //               0x8E, 0xA1-0xDF - upper part of 0201
+      //               (0xA1-0xFE)x2   - 0208 plane (94x94).
+      //               0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94).
+      //  * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon.
+      //               Used as-is in ISO2022 family.
+      //  * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII, 
+      //                0201-1976 Roman, 0208-1978, 0208-1983.
+      //  * ISO2022-JP-1: Adds esc seq for 0212-1990.
+      //  * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7.
+      //  * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2.
+      //  * ISO2022-JP-2004: Adds 0213-2004 Plane 1.
+      //
+      // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes.
+      //
+      // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html
+      "shiftjis": {
+        type: "_dbcs",
+        table: function() {
+          return require_shiftjis();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 },
+        encodeSkipVals: [{ from: 60736, to: 63808 }]
+      },
+      "csshiftjis": "shiftjis",
+      "mskanji": "shiftjis",
+      "sjis": "shiftjis",
+      "windows31j": "shiftjis",
+      "ms31j": "shiftjis",
+      "xsjis": "shiftjis",
+      "windows932": "shiftjis",
+      "ms932": "shiftjis",
+      "932": "shiftjis",
+      "cp932": "shiftjis",
+      "eucjp": {
+        type: "_dbcs",
+        table: function() {
+          return require_eucjp();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 }
+      },
+      // TODO: KDDI extension to Shift_JIS
+      // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes.
+      // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars.
+      // == Chinese/GBK ==========================================================
+      // http://en.wikipedia.org/wiki/GBK
+      // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder
+      // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936
+      "gb2312": "cp936",
+      "gb231280": "cp936",
+      "gb23121980": "cp936",
+      "csgb2312": "cp936",
+      "csiso58gb231280": "cp936",
+      "euccn": "cp936",
+      // Microsoft's CP936 is a subset and approximation of GBK.
+      "windows936": "cp936",
+      "ms936": "cp936",
+      "936": "cp936",
+      "cp936": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936();
+        }
+      },
+      // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other.
+      "gbk": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        }
+      },
+      "xgbk": "gbk",
+      "isoir58": "gbk",
+      // GB18030 is an algorithmic extension of GBK.
+      // Main source: https://www.w3.org/TR/encoding/#gbk-encoder
+      // http://icu-project.org/docs/papers/gb18030.html
+      // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml
+      // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0
+      "gb18030": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        },
+        gb18030: function() {
+          return require_gb18030_ranges();
+        },
+        encodeSkipVals: [128],
+        encodeAdd: { "\u20AC": 41699 }
+      },
+      "chinese": "gb18030",
+      // == Korean ===============================================================
+      // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same.
+      "windows949": "cp949",
+      "ms949": "cp949",
+      "949": "cp949",
+      "cp949": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp949();
+        }
+      },
+      "cseuckr": "cp949",
+      "csksc56011987": "cp949",
+      "euckr": "cp949",
+      "isoir149": "cp949",
+      "korean": "cp949",
+      "ksc56011987": "cp949",
+      "ksc56011989": "cp949",
+      "ksc5601": "cp949",
+      // == Big5/Taiwan/Hong Kong ================================================
+      // There are lots of tables for Big5 and cp950. Please see the following links for history:
+      // http://moztw.org/docs/big5/  http://www.haible.de/bruno/charsets/conversion-tables/Big5.html
+      // Variations, in roughly number of defined chars:
+      //  * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT
+      //  * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/
+      //  * Big5-2003 (Taiwan standard) almost superset of cp950.
+      //  * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers.
+      //  * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard. 
+      //    many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years.
+      //    Plus, it has 4 combining sequences.
+      //    Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299
+      //    because big5-hkscs is the only encoding to include astral characters in non-algorithmic way.
+      //    Implementations are not consistent within browsers; sometimes labeled as just big5.
+      //    MS Internet Explorer switches from big5 to big5-hkscs when a patch applied.
+      //    Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31
+      //    In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s.
+      //    Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt
+      //                   http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt
+      // 
+      // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder
+      // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong.
+      "windows950": "cp950",
+      "ms950": "cp950",
+      "950": "cp950",
+      "cp950": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950();
+        }
+      },
+      // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus.
+      "big5": "big5hkscs",
+      "big5hkscs": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950().concat(require_big5_added());
+        },
+        encodeSkipVals: [
+          // Although Encoding Standard says we should avoid encoding to HKSCS area (See Step 1 of
+          // https://encoding.spec.whatwg.org/#index-big5-pointer), we still do it to increase compatibility with ICU.
+          // But if a single unicode point can be encoded both as HKSCS and regular Big5, we prefer the latter.
+          36457,
+          36463,
+          36478,
+          36523,
+          36532,
+          36557,
+          36560,
+          36695,
+          36713,
+          36718,
+          36811,
+          36862,
+          36973,
+          36986,
+          37060,
+          37084,
+          37105,
+          37311,
+          37551,
+          37552,
+          37553,
+          37554,
+          37585,
+          37959,
+          38090,
+          38361,
+          38652,
+          39285,
+          39798,
+          39800,
+          39803,
+          39878,
+          39902,
+          39916,
+          39926,
+          40002,
+          40019,
+          40034,
+          40040,
+          40043,
+          40055,
+          40124,
+          40125,
+          40144,
+          40279,
+          40282,
+          40388,
+          40431,
+          40443,
+          40617,
+          40687,
+          40701,
+          40800,
+          40907,
+          41079,
+          41180,
+          41183,
+          36812,
+          37576,
+          38468,
+          38637,
+          // Step 2 of https://encoding.spec.whatwg.org/#index-big5-pointer: Use last pointer for U+2550, U+255E, U+2561, U+256A, U+5341, or U+5345
+          41636,
+          41637,
+          41639,
+          41638,
+          41676,
+          41678
+        ]
+      },
+      "cnbig5": "big5hkscs",
+      "csbig5": "big5hkscs",
+      "xxbig5": "big5hkscs"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js
+var require_encodings = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js"(exports2, module2) {
+    "use strict";
+    var modules = [
+      require_internal(),
+      require_utf32(),
+      require_utf16(),
+      require_utf7(),
+      require_sbcs_codec(),
+      require_sbcs_data(),
+      require_sbcs_data_generated(),
+      require_dbcs_codec(),
+      require_dbcs_data()
+    ];
+    for (i = 0; i < modules.length; i++) {
+      module2 = modules[i];
+      for (enc in module2)
+        if (Object.prototype.hasOwnProperty.call(module2, enc))
+          exports2[enc] = module2[enc];
+    }
+    var module2;
+    var enc;
+    var i;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js
+var require_streams = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = function(stream_module) {
+      var Transform = stream_module.Transform;
+      function IconvLiteEncoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.decodeStrings = false;
+        Transform.call(this, options);
+      }
+      IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteEncoderStream }
+      });
+      IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (typeof chunk != "string")
+          return done(new Error("Iconv encoding stream needs strings as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype.collect = function(cb) {
+        var chunks = [];
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          chunks.push(chunk);
+        });
+        this.on("end", function() {
+          cb(null, Buffer2.concat(chunks));
+        });
+        return this;
+      };
+      function IconvLiteDecoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.encoding = this.encoding = "utf8";
+        Transform.call(this, options);
+      }
+      IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteDecoderStream }
+      });
+      IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (!Buffer2.isBuffer(chunk) && !(chunk instanceof Uint8Array))
+          return done(new Error("Iconv decoding stream needs buffers as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype.collect = function(cb) {
+        var res = "";
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          res += chunk;
+        });
+        this.on("end", function() {
+          cb(null, res);
+        });
+        return this;
+      };
+      return {
+        IconvLiteEncoderStream,
+        IconvLiteDecoderStream
+      };
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js
+var require_lib8 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    var bomHandling = require_bom_handling();
+    var iconv = module2.exports;
+    iconv.encodings = null;
+    iconv.defaultCharUnicode = "\uFFFD";
+    iconv.defaultCharSingleByte = "?";
+    iconv.encode = function encode(str, encoding, options) {
+      str = "" + (str || "");
+      var encoder = iconv.getEncoder(encoding, options);
+      var res = encoder.write(str);
+      var trail = encoder.end();
+      return trail && trail.length > 0 ? Buffer2.concat([res, trail]) : res;
+    };
+    iconv.decode = function decode(buf, encoding, options) {
+      if (typeof buf === "string") {
+        if (!iconv.skipDecodeWarning) {
+          console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding");
+          iconv.skipDecodeWarning = true;
+        }
+        buf = Buffer2.from("" + (buf || ""), "binary");
+      }
+      var decoder2 = iconv.getDecoder(encoding, options);
+      var res = decoder2.write(buf);
+      var trail = decoder2.end();
+      return trail ? res + trail : res;
+    };
+    iconv.encodingExists = function encodingExists(enc) {
+      try {
+        iconv.getCodec(enc);
+        return true;
+      } catch (e) {
+        return false;
+      }
+    };
+    iconv.toEncoding = iconv.encode;
+    iconv.fromEncoding = iconv.decode;
+    iconv._codecDataCache = {};
+    iconv.getCodec = function getCodec(encoding) {
+      if (!iconv.encodings)
+        iconv.encodings = require_encodings();
+      var enc = iconv._canonicalizeEncoding(encoding);
+      var codecOptions = {};
+      while (true) {
+        var codec = iconv._codecDataCache[enc];
+        if (codec)
+          return codec;
+        var codecDef = iconv.encodings[enc];
+        switch (typeof codecDef) {
+          case "string":
+            enc = codecDef;
+            break;
+          case "object":
+            for (var key in codecDef)
+              codecOptions[key] = codecDef[key];
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            enc = codecDef.type;
+            break;
+          case "function":
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            codec = new codecDef(codecOptions, iconv);
+            iconv._codecDataCache[codecOptions.encodingName] = codec;
+            return codec;
+          default:
+            throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '" + enc + "')");
+        }
+      }
+    };
+    iconv._canonicalizeEncoding = function(encoding) {
+      return ("" + encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, "");
+    };
+    iconv.getEncoder = function getEncoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), encoder = new codec.encoder(options, codec);
+      if (codec.bomAware && options && options.addBOM)
+        encoder = new bomHandling.PrependBOM(encoder, options);
+      return encoder;
+    };
+    iconv.getDecoder = function getDecoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), decoder2 = new codec.decoder(options, codec);
+      if (codec.bomAware && !(options && options.stripBOM === false))
+        decoder2 = new bomHandling.StripBOM(decoder2, options);
+      return decoder2;
+    };
+    iconv.enableStreamingAPI = function enableStreamingAPI(stream_module2) {
+      if (iconv.supportsStreams)
+        return;
+      var streams = require_streams()(stream_module2);
+      iconv.IconvLiteEncoderStream = streams.IconvLiteEncoderStream;
+      iconv.IconvLiteDecoderStream = streams.IconvLiteDecoderStream;
+      iconv.encodeStream = function encodeStream(encoding, options) {
+        return new iconv.IconvLiteEncoderStream(iconv.getEncoder(encoding, options), options);
+      };
+      iconv.decodeStream = function decodeStream(encoding, options) {
+        return new iconv.IconvLiteDecoderStream(iconv.getDecoder(encoding, options), options);
+      };
+      iconv.supportsStreams = true;
+    };
+    var stream_module;
+    try {
+      stream_module = require("stream");
+    } catch (e) {
+    }
+    if (stream_module && stream_module.Transform) {
+      iconv.enableStreamingAPI(stream_module);
+    } else {
+      iconv.encodeStream = iconv.decodeStream = function() {
+        throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.");
+      };
+    }
+    if (false) {
+      console.error("iconv-lite warning: js files use non-utf8 encoding. See https://github.com/ashtuchkin/iconv-lite/wiki/Javascript-source-file-encodings for more info.");
+    }
+  }
+});
+
+// ../../../node_modules/encoding/lib/encoding.js
+var require_encoding = __commonJS({
+  "../../../node_modules/encoding/lib/encoding.js"(exports2, module2) {
+    "use strict";
+    var iconvLite = require_lib8();
+    module2.exports.convert = convert3;
+    function convert3(str, to, from) {
+      from = checkEncoding(from || "UTF-8");
+      to = checkEncoding(to || "UTF-8");
+      str = str || "";
+      var result;
+      if (from !== "UTF-8" && typeof str === "string") {
+        str = Buffer.from(str, "binary");
+      }
+      if (from === to) {
+        if (typeof str === "string") {
+          result = Buffer.from(str);
+        } else {
+          result = str;
+        }
+      } else {
+        try {
+          result = convertIconvLite(str, to, from);
+        } catch (E) {
+          console.error(E);
+          result = str;
+        }
+      }
+      if (typeof result === "string") {
+        result = Buffer.from(result, "utf-8");
+      }
+      return result;
+    }
+    function convertIconvLite(str, to, from) {
+      if (to === "UTF-8") {
+        return iconvLite.decode(str, from);
+      } else if (from === "UTF-8") {
+        return iconvLite.encode(str, to);
+      } else {
+        return iconvLite.encode(iconvLite.decode(str, from), to);
+      }
+    }
+    function checkEncoding(name) {
+      return (name || "").toString().trim().replace(/^latin[\-_]?(\d+)$/i, "ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i, "WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i, "UTF-$1").replace(/^ks_c_5601\-1987$/i, "CP949").replace(/^us[\-_]?ascii$/i, "ASCII").toUpperCase();
+    }
+  }
+});
+
+// node_modules/node-fetch/lib/index.js
+var require_lib9 = __commonJS({
+  "node_modules/node-fetch/lib/index.js"(exports2, module2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    function _interopDefault(ex) {
+      return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex;
+    }
+    var Stream = _interopDefault(require("stream"));
+    var http = _interopDefault(require("http"));
+    var Url = _interopDefault(require("url"));
+    var whatwgUrl = _interopDefault(require_public_api());
+    var https2 = _interopDefault(require("https"));
+    var zlib3 = _interopDefault(require("zlib"));
+    var Readable = Stream.Readable;
+    var BUFFER = /* @__PURE__ */ Symbol("buffer");
+    var TYPE = /* @__PURE__ */ Symbol("type");
+    var Blob2 = class _Blob {
+      constructor() {
+        this[TYPE] = "";
+        const blobParts = arguments[0];
+        const options = arguments[1];
+        const buffers = [];
+        let size = 0;
+        if (blobParts) {
+          const a = blobParts;
+          const length = Number(a.length);
+          for (let i = 0; i < length; i++) {
+            const element = a[i];
+            let buffer;
+            if (element instanceof Buffer) {
+              buffer = element;
+            } else if (ArrayBuffer.isView(element)) {
+              buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);
+            } else if (element instanceof ArrayBuffer) {
+              buffer = Buffer.from(element);
+            } else if (element instanceof _Blob) {
+              buffer = element[BUFFER];
+            } else {
+              buffer = Buffer.from(typeof element === "string" ? element : String(element));
+            }
+            size += buffer.length;
+            buffers.push(buffer);
+          }
+        }
+        this[BUFFER] = Buffer.concat(buffers);
+        let type = options && options.type !== void 0 && String(options.type).toLowerCase();
+        if (type && !/[^\u0020-\u007E]/.test(type)) {
+          this[TYPE] = type;
+        }
+      }
+      get size() {
+        return this[BUFFER].length;
+      }
+      get type() {
+        return this[TYPE];
+      }
+      text() {
+        return Promise.resolve(this[BUFFER].toString());
+      }
+      arrayBuffer() {
+        const buf = this[BUFFER];
+        const ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        return Promise.resolve(ab);
+      }
+      stream() {
+        const readable = new Readable();
+        readable._read = function() {
+        };
+        readable.push(this[BUFFER]);
+        readable.push(null);
+        return readable;
+      }
+      toString() {
+        return "[object Blob]";
+      }
+      slice() {
+        const size = this.size;
+        const start = arguments[0];
+        const end = arguments[1];
+        let relativeStart, relativeEnd;
+        if (start === void 0) {
+          relativeStart = 0;
+        } else if (start < 0) {
+          relativeStart = Math.max(size + start, 0);
+        } else {
+          relativeStart = Math.min(start, size);
+        }
+        if (end === void 0) {
+          relativeEnd = size;
+        } else if (end < 0) {
+          relativeEnd = Math.max(size + end, 0);
+        } else {
+          relativeEnd = Math.min(end, size);
+        }
+        const span = Math.max(relativeEnd - relativeStart, 0);
+        const buffer = this[BUFFER];
+        const slicedBuffer = buffer.slice(relativeStart, relativeStart + span);
+        const blob = new _Blob([], { type: arguments[2] });
+        blob[BUFFER] = slicedBuffer;
+        return blob;
+      }
+    };
+    Object.defineProperties(Blob2.prototype, {
+      size: { enumerable: true },
+      type: { enumerable: true },
+      slice: { enumerable: true }
+    });
+    Object.defineProperty(Blob2.prototype, Symbol.toStringTag, {
+      value: "Blob",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function FetchError(message, type, systemError) {
+      Error.call(this, message);
+      this.message = message;
+      this.type = type;
+      if (systemError) {
+        this.code = this.errno = systemError.code;
+      }
+      Error.captureStackTrace(this, this.constructor);
+    }
+    FetchError.prototype = Object.create(Error.prototype);
+    FetchError.prototype.constructor = FetchError;
+    FetchError.prototype.name = "FetchError";
+    var convert3;
+    try {
+      convert3 = require_encoding().convert;
+    } catch (e) {
+    }
+    var INTERNALS = /* @__PURE__ */ Symbol("Body internals");
+    var PassThrough = Stream.PassThrough;
+    function Body(body) {
+      var _this = this;
+      var _ref = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, _ref$size = _ref.size;
+      let size = _ref$size === void 0 ? 0 : _ref$size;
+      var _ref$timeout = _ref.timeout;
+      let timeout = _ref$timeout === void 0 ? 0 : _ref$timeout;
+      if (body == null) {
+        body = null;
+      } else if (isURLSearchParams(body)) {
+        body = Buffer.from(body.toString());
+      } else if (isBlob2(body)) ;
+      else if (Buffer.isBuffer(body)) ;
+      else if (Object.prototype.toString.call(body) === "[object ArrayBuffer]") {
+        body = Buffer.from(body);
+      } else if (ArrayBuffer.isView(body)) {
+        body = Buffer.from(body.buffer, body.byteOffset, body.byteLength);
+      } else if (body instanceof Stream) ;
+      else {
+        body = Buffer.from(String(body));
+      }
+      this[INTERNALS] = {
+        body,
+        disturbed: false,
+        error: null
+      };
+      this.size = size;
+      this.timeout = timeout;
+      if (body instanceof Stream) {
+        body.on("error", function(err) {
+          const error = err.name === "AbortError" ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, "system", err);
+          _this[INTERNALS].error = error;
+        });
+      }
+    }
+    Body.prototype = {
+      get body() {
+        return this[INTERNALS].body;
+      },
+      get bodyUsed() {
+        return this[INTERNALS].disturbed;
+      },
+      /**
+       * Decode response as ArrayBuffer
+       *
+       * @return  Promise
+       */
+      arrayBuffer() {
+        return consumeBody.call(this).then(function(buf) {
+          return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        });
+      },
+      /**
+       * Return raw response as Blob
+       *
+       * @return Promise
+       */
+      blob() {
+        let ct = this.headers && this.headers.get("content-type") || "";
+        return consumeBody.call(this).then(function(buf) {
+          return Object.assign(
+            // Prevent copying
+            new Blob2([], {
+              type: ct.toLowerCase()
+            }),
+            {
+              [BUFFER]: buf
+            }
+          );
+        });
+      },
+      /**
+       * Decode response as json
+       *
+       * @return  Promise
+       */
+      json() {
+        var _this2 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          try {
+            return JSON.parse(buffer.toString());
+          } catch (err) {
+            return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, "invalid-json"));
+          }
+        });
+      },
+      /**
+       * Decode response as text
+       *
+       * @return  Promise
+       */
+      text() {
+        return consumeBody.call(this).then(function(buffer) {
+          return buffer.toString();
+        });
+      },
+      /**
+       * Decode response as buffer (non-spec api)
+       *
+       * @return  Promise
+       */
+      buffer() {
+        return consumeBody.call(this);
+      },
+      /**
+       * Decode response as text, while automatically detecting the encoding and
+       * trying to decode to UTF-8 (non-spec api)
+       *
+       * @return  Promise
+       */
+      textConverted() {
+        var _this3 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          return convertBody(buffer, _this3.headers);
+        });
+      }
+    };
+    Object.defineProperties(Body.prototype, {
+      body: { enumerable: true },
+      bodyUsed: { enumerable: true },
+      arrayBuffer: { enumerable: true },
+      blob: { enumerable: true },
+      json: { enumerable: true },
+      text: { enumerable: true }
+    });
+    Body.mixIn = function(proto) {
+      for (const name of Object.getOwnPropertyNames(Body.prototype)) {
+        if (!(name in proto)) {
+          const desc = Object.getOwnPropertyDescriptor(Body.prototype, name);
+          Object.defineProperty(proto, name, desc);
+        }
+      }
+    };
+    function consumeBody() {
+      var _this4 = this;
+      if (this[INTERNALS].disturbed) {
+        return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));
+      }
+      this[INTERNALS].disturbed = true;
+      if (this[INTERNALS].error) {
+        return Body.Promise.reject(this[INTERNALS].error);
+      }
+      let body = this.body;
+      if (body === null) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      if (isBlob2(body)) {
+        body = body.stream();
+      }
+      if (Buffer.isBuffer(body)) {
+        return Body.Promise.resolve(body);
+      }
+      if (!(body instanceof Stream)) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      let accum = [];
+      let accumBytes = 0;
+      let abort = false;
+      return new Body.Promise(function(resolve6, reject) {
+        let resTimeout;
+        if (_this4.timeout) {
+          resTimeout = setTimeout(function() {
+            abort = true;
+            reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, "body-timeout"));
+          }, _this4.timeout);
+        }
+        body.on("error", function(err) {
+          if (err.name === "AbortError") {
+            abort = true;
+            reject(err);
+          } else {
+            reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+        body.on("data", function(chunk) {
+          if (abort || chunk === null) {
+            return;
+          }
+          if (_this4.size && accumBytes + chunk.length > _this4.size) {
+            abort = true;
+            reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, "max-size"));
+            return;
+          }
+          accumBytes += chunk.length;
+          accum.push(chunk);
+        });
+        body.on("end", function() {
+          if (abort) {
+            return;
+          }
+          clearTimeout(resTimeout);
+          try {
+            resolve6(Buffer.concat(accum, accumBytes));
+          } catch (err) {
+            reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+      });
+    }
+    function convertBody(buffer, headers) {
+      if (typeof convert3 !== "function") {
+        throw new Error("The package `encoding` must be installed to use the textConverted() function");
+      }
+      const ct = headers.get("content-type");
+      let charset = "utf-8";
+      let res, str;
+      if (ct) {
+        res = /charset=([^;]*)/i.exec(ct);
+      }
+      str = buffer.slice(0, 1024).toString();
+      if (!res && str) {
+        res = / 0 && arguments[0] !== void 0 ? arguments[0] : void 0;
+        this[MAP] = /* @__PURE__ */ Object.create(null);
+        if (init instanceof _Headers) {
+          const rawHeaders = init.raw();
+          const headerNames = Object.keys(rawHeaders);
+          for (const headerName of headerNames) {
+            for (const value of rawHeaders[headerName]) {
+              this.append(headerName, value);
+            }
+          }
+          return;
+        }
+        if (init == null) ;
+        else if (typeof init === "object") {
+          const method = init[Symbol.iterator];
+          if (method != null) {
+            if (typeof method !== "function") {
+              throw new TypeError("Header pairs must be iterable");
+            }
+            const pairs = [];
+            for (const pair of init) {
+              if (typeof pair !== "object" || typeof pair[Symbol.iterator] !== "function") {
+                throw new TypeError("Each header pair must be iterable");
+              }
+              pairs.push(Array.from(pair));
+            }
+            for (const pair of pairs) {
+              if (pair.length !== 2) {
+                throw new TypeError("Each header pair must be a name/value tuple");
+              }
+              this.append(pair[0], pair[1]);
+            }
+          } else {
+            for (const key of Object.keys(init)) {
+              const value = init[key];
+              this.append(key, value);
+            }
+          }
+        } else {
+          throw new TypeError("Provided initializer must be an object");
+        }
+      }
+      /**
+       * Return combined header value given name
+       *
+       * @param   String  name  Header name
+       * @return  Mixed
+       */
+      get(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key === void 0) {
+          return null;
+        }
+        return this[MAP][key].join(", ");
+      }
+      /**
+       * Iterate over all headers
+       *
+       * @param   Function  callback  Executed for each item with parameters (value, name, thisArg)
+       * @param   Boolean   thisArg   `this` context for callback function
+       * @return  Void
+       */
+      forEach(callback) {
+        let thisArg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : void 0;
+        let pairs = getHeaders(this);
+        let i = 0;
+        while (i < pairs.length) {
+          var _pairs$i = pairs[i];
+          const name = _pairs$i[0], value = _pairs$i[1];
+          callback.call(thisArg, value, name, this);
+          pairs = getHeaders(this);
+          i++;
+        }
+      }
+      /**
+       * Overwrite header values given name
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      set(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        this[MAP][key !== void 0 ? key : name] = [value];
+      }
+      /**
+       * Append a value onto existing header
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      append(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          this[MAP][key].push(value);
+        } else {
+          this[MAP][name] = [value];
+        }
+      }
+      /**
+       * Check for header name existence
+       *
+       * @param   String   name  Header name
+       * @return  Boolean
+       */
+      has(name) {
+        name = `${name}`;
+        validateName(name);
+        return find(this[MAP], name) !== void 0;
+      }
+      /**
+       * Delete all header values given name
+       *
+       * @param   String  name  Header name
+       * @return  Void
+       */
+      delete(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          delete this[MAP][key];
+        }
+      }
+      /**
+       * Return raw headers (non-spec api)
+       *
+       * @return  Object
+       */
+      raw() {
+        return this[MAP];
+      }
+      /**
+       * Get an iterator on keys.
+       *
+       * @return  Iterator
+       */
+      keys() {
+        return createHeadersIterator(this, "key");
+      }
+      /**
+       * Get an iterator on values.
+       *
+       * @return  Iterator
+       */
+      values() {
+        return createHeadersIterator(this, "value");
+      }
+      /**
+       * Get an iterator on entries.
+       *
+       * This is the default iterator of the Headers object.
+       *
+       * @return  Iterator
+       */
+      [Symbol.iterator]() {
+        return createHeadersIterator(this, "key+value");
+      }
+    };
+    Headers2.prototype.entries = Headers2.prototype[Symbol.iterator];
+    Object.defineProperty(Headers2.prototype, Symbol.toStringTag, {
+      value: "Headers",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Headers2.prototype, {
+      get: { enumerable: true },
+      forEach: { enumerable: true },
+      set: { enumerable: true },
+      append: { enumerable: true },
+      has: { enumerable: true },
+      delete: { enumerable: true },
+      keys: { enumerable: true },
+      values: { enumerable: true },
+      entries: { enumerable: true }
+    });
+    function getHeaders(headers) {
+      let kind = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "key+value";
+      const keys = Object.keys(headers[MAP]).sort();
+      return keys.map(kind === "key" ? function(k) {
+        return k.toLowerCase();
+      } : kind === "value" ? function(k) {
+        return headers[MAP][k].join(", ");
+      } : function(k) {
+        return [k.toLowerCase(), headers[MAP][k].join(", ")];
+      });
+    }
+    var INTERNAL = /* @__PURE__ */ Symbol("internal");
+    function createHeadersIterator(target, kind) {
+      const iterator = Object.create(HeadersIteratorPrototype);
+      iterator[INTERNAL] = {
+        target,
+        kind,
+        index: 0
+      };
+      return iterator;
+    }
+    var HeadersIteratorPrototype = Object.setPrototypeOf({
+      next() {
+        if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {
+          throw new TypeError("Value of `this` is not a HeadersIterator");
+        }
+        var _INTERNAL = this[INTERNAL];
+        const target = _INTERNAL.target, kind = _INTERNAL.kind, index = _INTERNAL.index;
+        const values = getHeaders(target, kind);
+        const len = values.length;
+        if (index >= len) {
+          return {
+            value: void 0,
+            done: true
+          };
+        }
+        this[INTERNAL].index = index + 1;
+        return {
+          value: values[index],
+          done: false
+        };
+      }
+    }, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));
+    Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {
+      value: "HeadersIterator",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function exportNodeCompatibleHeaders(headers) {
+      const obj = Object.assign({ __proto__: null }, headers[MAP]);
+      const hostHeaderKey = find(headers[MAP], "Host");
+      if (hostHeaderKey !== void 0) {
+        obj[hostHeaderKey] = obj[hostHeaderKey][0];
+      }
+      return obj;
+    }
+    function createHeadersLenient(obj) {
+      const headers = new Headers2();
+      for (const name of Object.keys(obj)) {
+        if (invalidTokenRegex.test(name)) {
+          continue;
+        }
+        if (Array.isArray(obj[name])) {
+          for (const val2 of obj[name]) {
+            if (invalidHeaderCharRegex.test(val2)) {
+              continue;
+            }
+            if (headers[MAP][name] === void 0) {
+              headers[MAP][name] = [val2];
+            } else {
+              headers[MAP][name].push(val2);
+            }
+          }
+        } else if (!invalidHeaderCharRegex.test(obj[name])) {
+          headers[MAP][name] = [obj[name]];
+        }
+      }
+      return headers;
+    }
+    var INTERNALS$1 = /* @__PURE__ */ Symbol("Response internals");
+    var STATUS_CODES = http.STATUS_CODES;
+    var Response = class _Response {
+      constructor() {
+        let body = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
+        let opts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        Body.call(this, body, opts);
+        const status = opts.status || 200;
+        const headers = new Headers2(opts.headers);
+        if (body != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(body);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        this[INTERNALS$1] = {
+          url: opts.url,
+          status,
+          statusText: opts.statusText || STATUS_CODES[status],
+          headers,
+          counter: opts.counter
+        };
+      }
+      get url() {
+        return this[INTERNALS$1].url || "";
+      }
+      get status() {
+        return this[INTERNALS$1].status;
+      }
+      /**
+       * Convenience property representing if the request ended normally
+       */
+      get ok() {
+        return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;
+      }
+      get redirected() {
+        return this[INTERNALS$1].counter > 0;
+      }
+      get statusText() {
+        return this[INTERNALS$1].statusText;
+      }
+      get headers() {
+        return this[INTERNALS$1].headers;
+      }
+      /**
+       * Clone this response
+       *
+       * @return  Response
+       */
+      clone() {
+        return new _Response(clone(this), {
+          url: this.url,
+          status: this.status,
+          statusText: this.statusText,
+          headers: this.headers,
+          ok: this.ok,
+          redirected: this.redirected
+        });
+      }
+    };
+    Body.mixIn(Response.prototype);
+    Object.defineProperties(Response.prototype, {
+      url: { enumerable: true },
+      status: { enumerable: true },
+      ok: { enumerable: true },
+      redirected: { enumerable: true },
+      statusText: { enumerable: true },
+      headers: { enumerable: true },
+      clone: { enumerable: true }
+    });
+    Object.defineProperty(Response.prototype, Symbol.toStringTag, {
+      value: "Response",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    var INTERNALS$2 = /* @__PURE__ */ Symbol("Request internals");
+    var URL3 = Url.URL || whatwgUrl.URL;
+    var parse_url = Url.parse;
+    var format_url = Url.format;
+    function parseURL(urlStr) {
+      if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) {
+        urlStr = new URL3(urlStr).toString();
+      }
+      return parse_url(urlStr);
+    }
+    var streamDestructionSupported = "destroy" in Stream.Readable.prototype;
+    function isRequest(input) {
+      return typeof input === "object" && typeof input[INTERNALS$2] === "object";
+    }
+    function isAbortSignal(signal) {
+      const proto = signal && typeof signal === "object" && Object.getPrototypeOf(signal);
+      return !!(proto && proto.constructor.name === "AbortSignal");
+    }
+    var Request2 = class _Request {
+      constructor(input) {
+        let init = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        let parsedURL;
+        if (!isRequest(input)) {
+          if (input && input.href) {
+            parsedURL = parseURL(input.href);
+          } else {
+            parsedURL = parseURL(`${input}`);
+          }
+          input = {};
+        } else {
+          parsedURL = parseURL(input.url);
+        }
+        let method = init.method || input.method || "GET";
+        method = method.toUpperCase();
+        if ((init.body != null || isRequest(input) && input.body !== null) && (method === "GET" || method === "HEAD")) {
+          throw new TypeError("Request with GET/HEAD method cannot have body");
+        }
+        let inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;
+        Body.call(this, inputBody, {
+          timeout: init.timeout || input.timeout || 0,
+          size: init.size || input.size || 0
+        });
+        const headers = new Headers2(init.headers || input.headers || {});
+        if (inputBody != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(inputBody);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        let signal = isRequest(input) ? input.signal : null;
+        if ("signal" in init) signal = init.signal;
+        if (signal != null && !isAbortSignal(signal)) {
+          throw new TypeError("Expected signal to be an instanceof AbortSignal");
+        }
+        this[INTERNALS$2] = {
+          method,
+          redirect: init.redirect || input.redirect || "follow",
+          headers,
+          parsedURL,
+          signal
+        };
+        this.follow = init.follow !== void 0 ? init.follow : input.follow !== void 0 ? input.follow : 20;
+        this.compress = init.compress !== void 0 ? init.compress : input.compress !== void 0 ? input.compress : true;
+        this.counter = init.counter || input.counter || 0;
+        this.agent = init.agent || input.agent;
+      }
+      get method() {
+        return this[INTERNALS$2].method;
+      }
+      get url() {
+        return format_url(this[INTERNALS$2].parsedURL);
+      }
+      get headers() {
+        return this[INTERNALS$2].headers;
+      }
+      get redirect() {
+        return this[INTERNALS$2].redirect;
+      }
+      get signal() {
+        return this[INTERNALS$2].signal;
+      }
+      /**
+       * Clone this request
+       *
+       * @return  Request
+       */
+      clone() {
+        return new _Request(this);
+      }
+    };
+    Body.mixIn(Request2.prototype);
+    Object.defineProperty(Request2.prototype, Symbol.toStringTag, {
+      value: "Request",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Request2.prototype, {
+      method: { enumerable: true },
+      url: { enumerable: true },
+      headers: { enumerable: true },
+      redirect: { enumerable: true },
+      clone: { enumerable: true },
+      signal: { enumerable: true }
+    });
+    function getNodeRequestOptions(request2) {
+      const parsedURL = request2[INTERNALS$2].parsedURL;
+      const headers = new Headers2(request2[INTERNALS$2].headers);
+      if (!headers.has("Accept")) {
+        headers.set("Accept", "*/*");
+      }
+      if (!parsedURL.protocol || !parsedURL.hostname) {
+        throw new TypeError("Only absolute URLs are supported");
+      }
+      if (!/^https?:$/.test(parsedURL.protocol)) {
+        throw new TypeError("Only HTTP(S) protocols are supported");
+      }
+      if (request2.signal && request2.body instanceof Stream.Readable && !streamDestructionSupported) {
+        throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");
+      }
+      let contentLengthValue = null;
+      if (request2.body == null && /^(POST|PUT)$/i.test(request2.method)) {
+        contentLengthValue = "0";
+      }
+      if (request2.body != null) {
+        const totalBytes = getTotalBytes(request2);
+        if (typeof totalBytes === "number") {
+          contentLengthValue = String(totalBytes);
+        }
+      }
+      if (contentLengthValue) {
+        headers.set("Content-Length", contentLengthValue);
+      }
+      if (!headers.has("User-Agent")) {
+        headers.set("User-Agent", "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)");
+      }
+      if (request2.compress && !headers.has("Accept-Encoding")) {
+        headers.set("Accept-Encoding", "gzip,deflate");
+      }
+      let agent = request2.agent;
+      if (typeof agent === "function") {
+        agent = agent(parsedURL);
+      }
+      return Object.assign({}, parsedURL, {
+        method: request2.method,
+        headers: exportNodeCompatibleHeaders(headers),
+        agent
+      });
+    }
+    function AbortError(message) {
+      Error.call(this, message);
+      this.type = "aborted";
+      this.message = message;
+      Error.captureStackTrace(this, this.constructor);
+    }
+    AbortError.prototype = Object.create(Error.prototype);
+    AbortError.prototype.constructor = AbortError;
+    AbortError.prototype.name = "AbortError";
+    var URL$1 = Url.URL || whatwgUrl.URL;
+    var PassThrough$1 = Stream.PassThrough;
+    var isDomainOrSubdomain = function isDomainOrSubdomain2(destination, original) {
+      const orig = new URL$1(original).hostname;
+      const dest = new URL$1(destination).hostname;
+      return orig === dest || orig[orig.length - dest.length - 1] === "." && orig.endsWith(dest);
+    };
+    var isSameProtocol = function isSameProtocol2(destination, original) {
+      const orig = new URL$1(original).protocol;
+      const dest = new URL$1(destination).protocol;
+      return orig === dest;
+    };
+    function fetch3(url2, opts) {
+      if (!fetch3.Promise) {
+        throw new Error("native promise missing, set fetch.Promise to your favorite alternative");
+      }
+      Body.Promise = fetch3.Promise;
+      return new fetch3.Promise(function(resolve6, reject) {
+        const request2 = new Request2(url2, opts);
+        const options = getNodeRequestOptions(request2);
+        const send = (options.protocol === "https:" ? https2 : http).request;
+        const signal = request2.signal;
+        let response = null;
+        const abort = function abort2() {
+          let error = new AbortError("The user aborted a request.");
+          reject(error);
+          if (request2.body && request2.body instanceof Stream.Readable) {
+            destroyStream(request2.body, error);
+          }
+          if (!response || !response.body) return;
+          response.body.emit("error", error);
+        };
+        if (signal && signal.aborted) {
+          abort();
+          return;
+        }
+        const abortAndFinalize = function abortAndFinalize2() {
+          abort();
+          finalize();
+        };
+        const req = send(options);
+        let reqTimeout;
+        if (signal) {
+          signal.addEventListener("abort", abortAndFinalize);
+        }
+        function finalize() {
+          req.abort();
+          if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          clearTimeout(reqTimeout);
+        }
+        if (request2.timeout) {
+          req.once("socket", function(socket) {
+            reqTimeout = setTimeout(function() {
+              reject(new FetchError(`network timeout at: ${request2.url}`, "request-timeout"));
+              finalize();
+            }, request2.timeout);
+          });
+        }
+        req.on("error", function(err) {
+          reject(new FetchError(`request to ${request2.url} failed, reason: ${err.message}`, "system", err));
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+          finalize();
+        });
+        fixResponseChunkedTransferBadEnding(req, function(err) {
+          if (signal && signal.aborted) {
+            return;
+          }
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+        });
+        if (parseInt(process.version.substring(1)) < 14) {
+          req.on("socket", function(s) {
+            s.addListener("close", function(hadError) {
+              const hasDataListener = s.listenerCount("data") > 0;
+              if (response && hasDataListener && !hadError && !(signal && signal.aborted)) {
+                const err = new Error("Premature close");
+                err.code = "ERR_STREAM_PREMATURE_CLOSE";
+                response.body.emit("error", err);
+              }
+            });
+          });
+        }
+        req.on("response", function(res) {
+          clearTimeout(reqTimeout);
+          const headers = createHeadersLenient(res.headers);
+          if (fetch3.isRedirect(res.statusCode)) {
+            const location = headers.get("Location");
+            let locationURL = null;
+            try {
+              locationURL = location === null ? null : new URL$1(location, request2.url).toString();
+            } catch (err) {
+              if (request2.redirect !== "manual") {
+                reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, "invalid-redirect"));
+                finalize();
+                return;
+              }
+            }
+            switch (request2.redirect) {
+              case "error":
+                reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request2.url}`, "no-redirect"));
+                finalize();
+                return;
+              case "manual":
+                if (locationURL !== null) {
+                  try {
+                    headers.set("Location", locationURL);
+                  } catch (err) {
+                    reject(err);
+                  }
+                }
+                break;
+              case "follow":
+                if (locationURL === null) {
+                  break;
+                }
+                if (request2.counter >= request2.follow) {
+                  reject(new FetchError(`maximum redirect reached at: ${request2.url}`, "max-redirect"));
+                  finalize();
+                  return;
+                }
+                const requestOpts = {
+                  headers: new Headers2(request2.headers),
+                  follow: request2.follow,
+                  counter: request2.counter + 1,
+                  agent: request2.agent,
+                  compress: request2.compress,
+                  method: request2.method,
+                  body: request2.body,
+                  signal: request2.signal,
+                  timeout: request2.timeout,
+                  size: request2.size
+                };
+                if (!isDomainOrSubdomain(request2.url, locationURL) || !isSameProtocol(request2.url, locationURL)) {
+                  for (const name of ["authorization", "www-authenticate", "cookie", "cookie2"]) {
+                    requestOpts.headers.delete(name);
+                  }
+                }
+                if (res.statusCode !== 303 && request2.body && getTotalBytes(request2) === null) {
+                  reject(new FetchError("Cannot follow redirect with body being a readable stream", "unsupported-redirect"));
+                  finalize();
+                  return;
+                }
+                if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request2.method === "POST") {
+                  requestOpts.method = "GET";
+                  requestOpts.body = void 0;
+                  requestOpts.headers.delete("content-length");
+                }
+                resolve6(fetch3(new Request2(locationURL, requestOpts)));
+                finalize();
+                return;
+            }
+          }
+          res.once("end", function() {
+            if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          });
+          let body = res.pipe(new PassThrough$1());
+          const response_options = {
+            url: request2.url,
+            status: res.statusCode,
+            statusText: res.statusMessage,
+            headers,
+            size: request2.size,
+            timeout: request2.timeout,
+            counter: request2.counter
+          };
+          const codings = headers.get("Content-Encoding");
+          if (!request2.compress || request2.method === "HEAD" || codings === null || res.statusCode === 204 || res.statusCode === 304) {
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          const zlibOptions = {
+            flush: zlib3.Z_SYNC_FLUSH,
+            finishFlush: zlib3.Z_SYNC_FLUSH
+          };
+          if (codings == "gzip" || codings == "x-gzip") {
+            body = body.pipe(zlib3.createGunzip(zlibOptions));
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          if (codings == "deflate" || codings == "x-deflate") {
+            const raw = res.pipe(new PassThrough$1());
+            raw.once("data", function(chunk) {
+              if ((chunk[0] & 15) === 8) {
+                body = body.pipe(zlib3.createInflate());
+              } else {
+                body = body.pipe(zlib3.createInflateRaw());
+              }
+              response = new Response(body, response_options);
+              resolve6(response);
+            });
+            raw.on("end", function() {
+              if (!response) {
+                response = new Response(body, response_options);
+                resolve6(response);
+              }
+            });
+            return;
+          }
+          if (codings == "br" && typeof zlib3.createBrotliDecompress === "function") {
+            body = body.pipe(zlib3.createBrotliDecompress());
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          response = new Response(body, response_options);
+          resolve6(response);
+        });
+        writeToStream(req, request2);
+      });
+    }
+    function fixResponseChunkedTransferBadEnding(request2, errorCallback) {
+      let socket;
+      request2.on("socket", function(s) {
+        socket = s;
+      });
+      request2.on("response", function(response) {
+        const headers = response.headers;
+        if (headers["transfer-encoding"] === "chunked" && !headers["content-length"]) {
+          response.once("close", function(hadError) {
+            const hasDataListener = socket && socket.listenerCount("data") > 0;
+            if (hasDataListener && !hadError) {
+              const err = new Error("Premature close");
+              err.code = "ERR_STREAM_PREMATURE_CLOSE";
+              errorCallback(err);
+            }
+          });
+        }
+      });
+    }
+    function destroyStream(stream, err) {
+      if (stream.destroy) {
+        stream.destroy(err);
+      } else {
+        stream.emit("error", err);
+        stream.end();
+      }
+    }
+    fetch3.isRedirect = function(code) {
+      return code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
+    };
+    fetch3.Promise = global.Promise;
+    module2.exports = exports2 = fetch3;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.default = exports2;
+    exports2.Headers = Headers2;
+    exports2.Request = Request2;
+    exports2.Response = Response;
+    exports2.FetchError = FetchError;
+    exports2.AbortError = AbortError;
+  }
+});
+
+// lib/assertions/providers/lambda-handler/index.ts
+var index_exports = {};
+__export(index_exports, {
+  handler: () => handler,
+  isComplete: () => isComplete,
+  onTimeout: () => onTimeout
+});
+module.exports = __toCommonJS(index_exports);
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var import_helpers_internal8 = __toESM(require_helpers_internal());
+
+// lib/assertions/providers/lambda-handler/base.ts
+var https = __toESM(require("https"));
+var url = __toESM(require("url"));
+var import_client_sfn = __toESM(require_dist_cjs53());
+var CustomResourceHandler = class {
+  constructor(event, context) {
+    this.event = event;
+    this.context = context;
+    this.timeout = setTimeout(async () => {
+      await this.respond({
+        status: "FAILED",
+        reason: "Lambda Function Timeout",
+        data: this.context.logStreamName
+      });
+      this.timedOut = true;
+    }, context.getRemainingTimeInMillis() - 1200);
+    this.event = event;
+    this.physicalResourceId = extractPhysicalResourceId(event);
+  }
+  event;
+  context;
+  physicalResourceId;
+  timeout;
+  timedOut = false;
+  /**
+   * Handles executing the custom resource event. If `stateMachineArn` is present
+   * in the props then trigger the waiter statemachine
+   */
+  async handle() {
+    try {
+      if ("stateMachineArn" in this.event.ResourceProperties) {
+        const req = {
+          stateMachineArn: this.event.ResourceProperties.stateMachineArn,
+          name: this.event.RequestId,
+          input: JSON.stringify(this.event)
+        };
+        await this.startExecution(req);
+        return;
+      } else {
+        const response = await this.processEvent(this.event.ResourceProperties);
+        return response;
+      }
+    } catch (e) {
+      console.log(e);
+      throw e;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Handle async requests from the waiter state machine
+   */
+  async handleIsComplete() {
+    try {
+      const result = await this.processEvent(this.event.ResourceProperties);
+      return result;
+    } catch (e) {
+      console.log(e);
+      return;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Start a step function state machine which will wait for the request
+   * to be successful.
+   */
+  async startExecution(req) {
+    try {
+      const sfn = new import_client_sfn.SFN({});
+      await sfn.startExecution(req);
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  respond(response) {
+    if (this.timedOut) {
+      return;
+    }
+    const cfResponse = {
+      Status: response.status,
+      Reason: response.reason,
+      PhysicalResourceId: this.physicalResourceId,
+      StackId: this.event.StackId,
+      RequestId: this.event.RequestId,
+      LogicalResourceId: this.event.LogicalResourceId,
+      NoEcho: false,
+      Data: response.data
+    };
+    const responseBody = JSON.stringify(cfResponse);
+    console.log("Responding to CloudFormation", responseBody);
+    const parsedUrl = url.parse(this.event.ResponseURL);
+    const requestOptions = {
+      hostname: parsedUrl.hostname,
+      path: parsedUrl.path,
+      method: "PUT",
+      headers: {
+        "content-type": "",
+        "content-length": Buffer.byteLength(responseBody, "utf8")
+      }
+    };
+    return new Promise((resolve6, reject) => {
+      try {
+        const request2 = https.request(requestOptions, resolve6);
+        request2.on("error", reject);
+        request2.write(responseBody);
+        request2.end();
+      } catch (e) {
+        reject(e);
+      } finally {
+        clearTimeout(this.timeout);
+      }
+    });
+  }
+};
+function extractPhysicalResourceId(event) {
+  switch (event.RequestType) {
+    case "Create":
+      return event.LogicalResourceId;
+    case "Update":
+    case "Delete":
+      return event.PhysicalResourceId;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var AssertionHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    let actual = decodeCall(request2.actual);
+    const expected = decodeCall(request2.expected);
+    let result;
+    const matcher = new MatchCreator(expected).getMatcher();
+    console.log(`Testing equality between ${JSON.stringify(request2.actual)} and ${JSON.stringify(request2.expected)}`);
+    const matchResult = matcher.test(actual);
+    matchResult.finished();
+    if (matchResult.hasFailed()) {
+      result = {
+        failed: true,
+        assertion: JSON.stringify({
+          status: "fail",
+          message: matchResult.renderMismatch()
+        })
+      };
+      if (request2.failDeployment) {
+        throw new Error(result.assertion);
+      }
+    } else {
+      result = {
+        assertion: JSON.stringify({
+          status: "success"
+        })
+      };
+    }
+    return result;
+  }
+};
+var MatchCreator = class {
+  parsedObj;
+  constructor(obj) {
+    this.parsedObj = {
+      matcher: obj
+    };
+  }
+  /**
+   * Return a Matcher that can be tested against the actual results.
+   * This will convert the encoded matchers into their corresponding
+   * assertions matcher.
+   *
+   * For example:
+   *
+   * ExpectedResult.objectLike({
+   *   Messages: [{
+   *     Body: Match.objectLike({
+   *       Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *       Payload: Match.serializedJson({ key: 'value' }),
+   *     }),
+   *   }],
+   * });
+   *
+   * Will be encoded as:
+   * {
+   *   $ObjectLike: {
+   *     Messages: [{
+   *       Body: {
+   *         $ObjectLike: {
+   *           Elements: {
+   *             $ArrayWith: [{ Asdf: 3 }],
+   *           },
+   *           Payload: {
+   *             $SerializedJson: { key: 'value' }
+   *           }
+   *         },
+   *       },
+   *     }],
+   *   },
+   * }
+   *
+   * Which can then be parsed by this function. For each key (recursively)
+   * the parser will check if the value has one of the encoded matchers as a key
+   * and if so, it will set the value as the Matcher. So,
+   *
+   * {
+   *   Body: {
+   *     $ObjectLike: {
+   *       Elements: {
+   *         $ArrayWith: [{ Asdf: 3 }],
+   *       },
+   *       Payload: {
+   *         $SerializedJson: { key: 'value' }
+   *       }
+   *     },
+   *   },
+   * }
+   *
+   * Will be converted to
+   * {
+   *   Body: Match.objectLike({
+   *     Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *     Payload: Match.serializedJson({ key: 'value' }),
+   *   }),
+   * }
+   */
+  getMatcher() {
+    try {
+      const final = JSON.parse(JSON.stringify(this.parsedObj), function(_k, v) {
+        const nested = Object.keys(v)[0];
+        switch (nested) {
+          case "$ArrayWith":
+            return import_helpers_internal8.Match.arrayWith(v[nested]);
+          case "$ObjectLike":
+            return import_helpers_internal8.Match.objectLike(v[nested]);
+          case "$StringLike":
+            return import_helpers_internal8.Match.stringLikeRegexp(v[nested]);
+          case "$SerializedJson":
+            return import_helpers_internal8.Match.serializedJson(v[nested]);
+          default:
+            return v;
+        }
+      });
+      if (import_helpers_internal8.Matcher.isMatcher(final.matcher)) {
+        return final.matcher;
+      }
+      return import_helpers_internal8.Match.exact(final.matcher);
+    } catch {
+      return import_helpers_internal8.Match.exact(this.parsedObj.matcher);
+    }
+  }
+};
+function decodeCall(call) {
+  if (!call) {
+    return void 0;
+  }
+  try {
+    const parsed = JSON.parse(call);
+    return parsed;
+  } catch {
+    return call;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var import_aws_custom_resource_sdk_adapter = __toESM(require_lib6());
+var import_node_fetch = __toESM(require_lib9());
+
+// lib/assertions/providers/lambda-handler/utils.ts
+function deepParseJson(x) {
+  if (typeof x === "string") {
+    return tryJsonParse(x);
+  }
+  if (Array.isArray(x)) {
+    return x.map(deepParseJson);
+  }
+  if (x && typeof x === "object") {
+    for (const [key, value] of Object.entries(x)) {
+      x[key] = deepParseJson(value);
+    }
+    return x;
+  }
+  return x;
+}
+function tryJsonParse(v) {
+  if (typeof v !== "string") {
+    return v;
+  }
+  try {
+    return JSON.parse(v);
+  } catch {
+    return v;
+  }
+}
+function decodeParameters(obj) {
+  return Object.fromEntries(Object.entries(obj).map(([key, value]) => {
+    try {
+      return [key, decodeValue(value)];
+    } catch {
+      return [key, value];
+    }
+  }));
+}
+function decodeValue(value) {
+  if (value != null && !Array.isArray(value) && typeof value === "object") {
+    if (value.$type === "ArrayBufferView") {
+      return new TextEncoder().encode(value.string);
+    }
+  }
+  return JSON.parse(value);
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var HttpHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    console.log("request", request2);
+    const response = await (0, import_node_fetch.default)(request2.parameters.url, request2.parameters.fetchOptions);
+    const result = {
+      ok: response.ok,
+      status: response.status,
+      statusText: response.statusText,
+      headers: response.headers.raw()
+    };
+    result.body = await response.text();
+    try {
+      result.body = JSON.parse(result.body);
+    } catch (e) {
+    }
+    let resp;
+    if (request2.flattenResponse === "true") {
+      resp = (0, import_aws_custom_resource_sdk_adapter.flatten)(deepParseJson({ apiCallResponse: result }));
+    } else {
+      resp = { apiCallResponse: result };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+
+// lib/assertions/providers/lambda-handler/sdk.ts
+var import_aws_custom_resource_sdk_adapter2 = __toESM(require_lib6());
+var AwsApiCallHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    const apiCall = new import_aws_custom_resource_sdk_adapter2.ApiCall(request2.service, request2.api);
+    const parameters = request2.parameters ? decodeParameters(request2.parameters) : {};
+    console.log(`SDK request to ${apiCall.service}.${apiCall.action} with parameters ${JSON.stringify(parameters)}`);
+    const response = await apiCall.invoke({ parameters });
+    console.log(`SDK response received ${JSON.stringify(response)}`);
+    delete response.$metadata;
+    let resp;
+    if (request2.outputPaths || request2.flattenResponse === "true") {
+      const flattened = (0, import_aws_custom_resource_sdk_adapter2.flatten)(deepParseJson({ apiCallResponse: response }));
+      resp = request2.outputPaths ? filterKeys(flattened, request2.outputPaths) : flattened;
+    } else {
+      resp = { apiCallResponse: response };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+function filterKeys(object, searchStrings) {
+  return Object.entries(object).reduce((filteredObject, [key, value]) => {
+    for (const searchString of searchStrings) {
+      if (key.startsWith(`apiCallResponse.${searchString}`)) {
+        filteredObject[key] = value;
+      }
+    }
+    return filteredObject;
+  }, {});
+}
+
+// lib/assertions/providers/lambda-handler/types.ts
+var ASSERT_RESOURCE_TYPE = "Custom::DeployAssert@AssertEquals";
+var SDK_RESOURCE_TYPE_PREFIX = "Custom::DeployAssert@SdkCall";
+var HTTP_RESOURCE_TYPE = "Custom::DeployAssert@HttpCall";
+
+// lib/assertions/providers/lambda-handler/index.ts
+async function handler(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    if (event.RequestType === "Delete") {
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK"
+      });
+      return;
+    }
+    const result = await provider.handle();
+    if ("stateMachineArn" in event.ResourceProperties) {
+      console.info('Found "stateMachineArn", waiter statemachine started');
+      return;
+    } else if ("expected" in event.ResourceProperties) {
+      console.info('Found "expected", testing assertions');
+      const actualPath = event.ResourceProperties.actualPath;
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      const assertion = new AssertionHandler({
+        ...event,
+        ResourceProperties: {
+          ServiceToken: event.ServiceToken,
+          actual,
+          expected: event.ResourceProperties.expected
+        }
+      }, context);
+      try {
+        const assertionResult = await assertion.handle();
+        await provider.respond({
+          status: "SUCCESS",
+          reason: "OK",
+          // return both the result of the API call _and_ the assertion results
+          data: {
+            ...assertionResult,
+            ...result
+          }
+        });
+        return;
+      } catch (e) {
+        await provider.respond({
+          status: "FAILED",
+          reason: e.message ?? "Internal Error"
+        });
+        return;
+      }
+    }
+    await provider.respond({
+      status: "SUCCESS",
+      reason: "OK",
+      data: result
+    });
+  } catch (e) {
+    await provider.respond({
+      status: "FAILED",
+      reason: e.message ?? "Internal Error"
+    });
+    return;
+  }
+  return;
+}
+async function onTimeout(timeoutEvent) {
+  const eventPayload = JSON.parse(JSON.parse(timeoutEvent.Cause).errorMessage);
+  const provider = createResourceHandler(eventPayload, standardContext);
+  await provider.respond({
+    status: "FAILED",
+    // Only the properties to the IsComplete Resource need to be included.
+    reason: "Operation timed out: " + JSON.stringify(eventPayload.ResourceProperties)
+  });
+}
+async function isComplete(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    const result = await provider.handleIsComplete();
+    const actualPath = event.ResourceProperties.actualPath;
+    if (result) {
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      if ("expected" in event.ResourceProperties) {
+        const assertion = new AssertionHandler({
+          ...event,
+          ResourceProperties: {
+            ServiceToken: event.ServiceToken,
+            actual,
+            expected: event.ResourceProperties.expected
+          }
+        }, context);
+        const assertionResult = await assertion.handleIsComplete();
+        if (!assertionResult?.failed) {
+          await provider.respond({
+            status: "SUCCESS",
+            reason: "OK",
+            data: {
+              ...assertionResult,
+              ...result
+            }
+          });
+          return;
+        } else {
+          console.log(`Assertion Failed: ${JSON.stringify(assertionResult)}`);
+          throw new Error(JSON.stringify(event));
+        }
+      }
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK",
+        data: result
+      });
+    } else {
+      console.log("No result");
+      throw new Error(JSON.stringify(event));
+    }
+    return;
+  } catch (e) {
+    console.log(e);
+    throw new Error(JSON.stringify(event));
+  }
+}
+function createResourceHandler(event, context) {
+  if (event.ResourceType.startsWith(SDK_RESOURCE_TYPE_PREFIX)) {
+    return new AwsApiCallHandler(event, context);
+  } else if (event.ResourceType.startsWith(ASSERT_RESOURCE_TYPE)) {
+    return new AssertionHandler(event, context);
+  } else if (event.ResourceType.startsWith(HTTP_RESOURCE_TYPE)) {
+    return new HttpHandler(event, context);
+  } else {
+    throw new Error(`Unsupported resource type "${event.ResourceType}`);
+  }
+}
+var standardContext = {
+  getRemainingTimeInMillis: () => 9e4
+};
+// Annotate the CommonJS export names for ESM import in node:
+0 && (module.exports = {
+  handler,
+  isComplete,
+  onTimeout
+});
+/*! Bundled license information:
+
+@balena/dockerignore/ignore.js:
+  (**
+   * @license
+   * Copyright 2020 Balena Ltd.
+   *
+   * Licensed under the Apache License, Version 2.0 (the "License");
+   * you may not use this file except in compliance with the License.
+   * You may obtain a copy of the License at
+   *
+   *    http://www.apache.org/licenses/LICENSE-2.0
+   *
+   * Unless required by applicable law or agreed to in writing, software
+   * distributed under the License is distributed on an "AS IS" BASIS,
+   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   * See the License for the specific language governing permissions and
+   * limitations under the License.
+   *
+   * ------------------------------------------------------------------------
+   *
+   * Copyright 2018 Zeit, Inc.
+   * Licensed under the MIT License. See file LICENSE.md for a full copy.
+   *
+   * ------------------------------------------------------------------------
+   *)
+*/
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d/index.js
new file mode 100644
index 0000000000000..ed5892d7e6e42
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d/index.js
@@ -0,0 +1 @@
+"use strict";var k=Object.create;var a=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var O=Object.getPrototypeOf,x=Object.prototype.hasOwnProperty;var L=(e,t)=>{for(var o in t)a(e,o,{get:t[o],enumerable:!0})},R=(e,t,o,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of D(t))!x.call(e,n)&&n!==o&&a(e,n,{get:()=>t[n],enumerable:!(s=A(t,n))||s.enumerable});return e};var p=(e,t,o)=>(o=e!=null?k(O(e)):{},R(t||!e||!e.__esModule?a(o,"default",{value:e,enumerable:!0}):o,e)),B=e=>R(a({},"__esModule",{value:!0}),e);var U={};L(U,{destinationKey:()=>m,handler:()=>j,s3:()=>y,s3ObjectCopyHandler:()=>w});module.exports=B(U);var C=require("crypto"),E=require("@aws-sdk/client-s3");var f=p(require("https")),I=p(require("url")),i={sendHttpRequest:N,log:K,includeStackTraces:!0,userHandlerIndex:"./index"},h="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",$="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function g(e){return async(t,o)=>{let s={...t,ResponseURL:"..."};if(i.log(JSON.stringify(s,void 0,2)),t.RequestType==="Delete"&&t.PhysicalResourceId===h){i.log("ignoring DELETE event caused by a failed CREATE event"),await c("SUCCESS",t);return}try{let n=await e(s,o),r=H(t,n);await c("SUCCESS",r)}catch(n){let r={...t,Reason:i.includeStackTraces?n.stack:n.message};r.PhysicalResourceId||(t.RequestType==="Create"?(i.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),r.PhysicalResourceId=h):i.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(t)}`)),await c("FAILED",r)}}}function H(e,t={}){let o=t.PhysicalResourceId??e.PhysicalResourceId??e.RequestId;if(e.RequestType==="Delete"&&o!==e.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${e.PhysicalResourceId}" to "${t.PhysicalResourceId}" during deletion`);return{...e,...t,PhysicalResourceId:o}}async function c(e,t){let o={Status:e,Reason:t.Reason??e,StackId:t.StackId,RequestId:t.RequestId,PhysicalResourceId:t.PhysicalResourceId||$,LogicalResourceId:t.LogicalResourceId,NoEcho:t.NoEcho,Data:t.Data},s=I.parse(t.ResponseURL),n=`${s.protocol}//${s.hostname}/${s.pathname}?***`;i.log("submit response to cloudformation",n,o);let r=JSON.stringify(o),b={hostname:s.hostname,path:s.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(r,"utf8")}};await T({attempts:5,sleep:1e3},i.sendHttpRequest)(b,r)}async function N(e,t){return new Promise((o,s)=>{try{let n=f.request(e,r=>{r.resume(),!r.statusCode||r.statusCode>=400?s(new Error(`Unsuccessful HTTP response: ${r.statusCode}`)):o()});n.on("error",s),n.write(t),n.end()}catch(n){s(n)}})}function K(e,...t){console.log(e,...t)}function T(e,t){return async(...o)=>{let s=e.attempts,n=e.sleep;for(;;)try{return await t(...o)}catch(r){if(s--<=0)throw r;await V(Math.floor(Math.random()*n)),n*=2}}}async function V(e){return new Promise(t=>setTimeout(t,e))}var y=new E.S3({followRegionRedirects:!0}),j=g(w);async function w(e){let t=e.ResourceProperties;switch(e.RequestType){case"Create":return u(await P(t));case"Update":{let o=S(e.PhysicalResourceId);return o&&o.Bucket===t.DestinationBucketName&&o.Key===m(t)?u(o):u(await P(t))}case"Delete":{let o=S(e.PhysicalResourceId);return o?await q(o):console.log(`Physical resource ID '${e.PhysicalResourceId}' names no object version; nothing to delete`),{PhysicalResourceId:e.PhysicalResourceId}}}}function m(e){let t=d([e.ContentHash,e.Configuration??null]),o=(0,C.createHash)("sha256").update(t).digest("hex").slice(0,32);return`${e.DestinationKeyPrefix}${o}.zip`}function d(e){return Array.isArray(e)?`[${e.map(d).join(",")}]`:e!==null&&typeof e=="object"?`{${Object.keys(e).sort().map(o=>`${JSON.stringify(o)}:${d(e[o])}`).join(",")}}`:JSON.stringify(e)}var l="?versionId=";function u(e){return{PhysicalResourceId:`${e.Bucket}/${e.Key}${l}${e.VersionId}`,Data:e}}function S(e){let t=e.lastIndexOf(l),o=e.indexOf("/");if(t<0||o<=0||o+1>=t)return;let s=e.slice(t+l.length);if(s)return{Bucket:e.slice(0,o),Key:e.slice(o+1,t),VersionId:s}}function F(e){return e.split("/").map(encodeURIComponent).join("/")}async function P(e){let t=m(e),o=await y.copyObject({Bucket:e.DestinationBucketName,Key:t,CopySource:`${e.SourceBucketName}/${F(e.SourceObjectKey)}`});if(!o.VersionId)throw new Error(`Copied s3://${e.DestinationBucketName}/${t} but S3 returned no VersionId. Enable versioning on the destination bucket.`);return{Bucket:e.DestinationBucketName,Key:t,VersionId:o.VersionId}}async function q(e){try{await y.deleteObject({Bucket:e.Bucket,Key:e.Key,VersionId:e.VersionId})}catch(t){if(t.name==="NoSuchBucket"){console.log(`Bucket '${e.Bucket}' does not exist; nothing to delete.`);return}throw t}}0&&(module.exports={destinationKey,handler,s3,s3ObjectCopyHandler});
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/__entrypoint__.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/__entrypoint__.js
new file mode 100644
index 0000000000000..3fb51ba2a51e2
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/__entrypoint__.js
@@ -0,0 +1,187 @@
+"use strict";
+var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+    if (k2 === undefined) k2 = k;
+    var desc = Object.getOwnPropertyDescriptor(m, k);
+    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+      desc = { enumerable: true, get: function() { return m[k]; } };
+    }
+    Object.defineProperty(o, k2, desc);
+}) : (function(o, m, k, k2) {
+    if (k2 === undefined) k2 = k;
+    o[k2] = m[k];
+}));
+var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+    Object.defineProperty(o, "default", { enumerable: true, value: v });
+}) : function(o, v) {
+    o["default"] = v;
+});
+var __importStar = (this && this.__importStar) || (function () {
+    var ownKeys = function(o) {
+        ownKeys = Object.getOwnPropertyNames || function (o) {
+            var ar = [];
+            for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
+            return ar;
+        };
+        return ownKeys(o);
+    };
+    return function (mod) {
+        if (mod && mod.__esModule) return mod;
+        var result = {};
+        if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
+        __setModuleDefault(result, mod);
+        return result;
+    };
+})();
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.external = void 0;
+exports.handler = handler;
+exports.withRetries = withRetries;
+const https = __importStar(require("https"));
+const url = __importStar(require("url"));
+// for unit tests
+exports.external = {
+    sendHttpRequest: defaultSendHttpRequest,
+    log: defaultLog,
+    includeStackTraces: true,
+    userHandlerIndex: './index',
+};
+const CREATE_FAILED_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::CREATE_FAILED';
+const MISSING_PHYSICAL_ID_MARKER = 'AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID';
+async function handler(event, context) {
+    const sanitizedEvent = { ...event, ResponseURL: '...' };
+    exports.external.log(JSON.stringify(sanitizedEvent, undefined, 2));
+    // ignore DELETE event when the physical resource ID is the marker that
+    // indicates that this DELETE is a subsequent DELETE to a failed CREATE
+    // operation.
+    if (event.RequestType === 'Delete' && event.PhysicalResourceId === CREATE_FAILED_PHYSICAL_ID_MARKER) {
+        exports.external.log('ignoring DELETE event caused by a failed CREATE event');
+        await submitResponse('SUCCESS', event);
+        return;
+    }
+    try {
+        // invoke the user handler. this is intentionally inside the try-catch to
+        // ensure that if there is an error it's reported as a failure to
+        // cloudformation (otherwise cfn waits).
+        // eslint-disable-next-line @typescript-eslint/no-require-imports
+        const userHandler = require(exports.external.userHandlerIndex).handler;
+        const result = await userHandler(sanitizedEvent, context);
+        // validate user response and create the combined event
+        const responseEvent = renderResponse(event, result);
+        // submit to cfn as success
+        await submitResponse('SUCCESS', responseEvent);
+    }
+    catch (e) {
+        const resp = {
+            ...event,
+            Reason: exports.external.includeStackTraces ? e.stack : e.message,
+        };
+        if (!resp.PhysicalResourceId) {
+            // special case: if CREATE fails, which usually implies, we usually don't
+            // have a physical resource id. in this case, the subsequent DELETE
+            // operation does not have any meaning, and will likely fail as well. to
+            // address this, we use a marker so the provider framework can simply
+            // ignore the subsequent DELETE.
+            if (event.RequestType === 'Create') {
+                exports.external.log('CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored');
+                resp.PhysicalResourceId = CREATE_FAILED_PHYSICAL_ID_MARKER;
+            }
+            else {
+                // otherwise, if PhysicalResourceId is not specified, something is
+                // terribly wrong because all other events should have an ID.
+                exports.external.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(event)}`);
+            }
+        }
+        // this is an actual error, fail the activity altogether and exist.
+        await submitResponse('FAILED', resp);
+    }
+}
+function renderResponse(cfnRequest, handlerResponse = {}) {
+    // if physical ID is not returned, we have some defaults for you based
+    // on the request type.
+    const physicalResourceId = handlerResponse.PhysicalResourceId ?? cfnRequest.PhysicalResourceId ?? cfnRequest.RequestId;
+    // if we are in DELETE and physical ID was changed, it's an error.
+    if (cfnRequest.RequestType === 'Delete' && physicalResourceId !== cfnRequest.PhysicalResourceId) {
+        throw new Error(`DELETE: cannot change the physical resource ID from "${cfnRequest.PhysicalResourceId}" to "${handlerResponse.PhysicalResourceId}" during deletion`);
+    }
+    // merge request event and result event (result prevails).
+    return {
+        ...cfnRequest,
+        ...handlerResponse,
+        PhysicalResourceId: physicalResourceId,
+    };
+}
+async function submitResponse(status, event) {
+    const json = {
+        Status: status,
+        Reason: event.Reason ?? status,
+        StackId: event.StackId,
+        RequestId: event.RequestId,
+        PhysicalResourceId: event.PhysicalResourceId || MISSING_PHYSICAL_ID_MARKER,
+        LogicalResourceId: event.LogicalResourceId,
+        NoEcho: event.NoEcho,
+        Data: event.Data,
+    };
+    const parsedUrl = url.parse(event.ResponseURL);
+    const loggingSafeUrl = `${parsedUrl.protocol}//${parsedUrl.hostname}/${parsedUrl.pathname}?***`;
+    exports.external.log('submit response to cloudformation', loggingSafeUrl, json);
+    const responseBody = JSON.stringify(json);
+    const req = {
+        hostname: parsedUrl.hostname,
+        path: parsedUrl.path,
+        method: 'PUT',
+        headers: {
+            'content-type': '',
+            'content-length': Buffer.byteLength(responseBody, 'utf8'),
+        },
+    };
+    const retryOptions = {
+        attempts: 5,
+        sleep: 1000,
+    };
+    await withRetries(retryOptions, exports.external.sendHttpRequest)(req, responseBody);
+}
+async function defaultSendHttpRequest(options, requestBody) {
+    return new Promise((resolve, reject) => {
+        try {
+            const request = https.request(options, (response) => {
+                response.resume(); // Consume the response but don't care about it
+                if (!response.statusCode || response.statusCode >= 400) {
+                    reject(new Error(`Unsuccessful HTTP response: ${response.statusCode}`));
+                }
+                else {
+                    resolve();
+                }
+            });
+            request.on('error', reject);
+            request.write(requestBody);
+            request.end();
+        }
+        catch (e) {
+            reject(e);
+        }
+    });
+}
+function defaultLog(fmt, ...params) {
+    console.log(fmt, ...params);
+}
+function withRetries(options, fn) {
+    return async (...xs) => {
+        let attempts = options.attempts;
+        let ms = options.sleep;
+        while (true) {
+            try {
+                return await fn(...xs);
+            }
+            catch (e) {
+                if (attempts-- <= 0) {
+                    throw e;
+                }
+                await sleep(Math.floor(Math.random() * ms));
+                ms *= 2;
+            }
+        }
+    };
+}
+async function sleep(ms) {
+    return new Promise((ok) => setTimeout(ok, ms));
+}
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/index.js
new file mode 100644
index 0000000000000..013bcaffd8fe5
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.bea78ce725e22a5e0d82378f6b49028c09ba86499286d6945a0506e820854e92/index.js
@@ -0,0 +1 @@
+"use strict";var I=Object.create;var t=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;var G=(r,e)=>{for(var o in e)t(r,o,{get:e[o],enumerable:!0})},n=(r,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of P(e))!l.call(r,s)&&s!==o&&t(r,s,{get:()=>e[s],enumerable:!(i=y(e,s))||i.enumerable});return r};var R=(r,e,o)=>(o=r!=null?I(g(r)):{},n(e||!r||!r.__esModule?t(o,"default",{value:r,enumerable:!0}):o,r)),S=r=>n(t({},"__esModule",{value:!0}),r);var k={};G(k,{handler:()=>f});module.exports=S(k);var a=R(require("@aws-sdk/client-ec2")),u=new a.EC2({});function c(r,e){return{GroupId:r,IpPermissions:[{UserIdGroupPairs:[{GroupId:r,UserId:e}],IpProtocol:"-1"}]}}function d(r){return{GroupId:r,IpPermissions:[{IpRanges:[{CidrIp:"0.0.0.0/0"}],IpProtocol:"-1"}]}}async function f(r){let e=r.ResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.Account;switch(r.RequestType){case"Create":return p(e,o);case"Update":return h(r);case"Delete":return m(e,o)}}async function h(r){let e=r.OldResourceProperties.DefaultSecurityGroupId,o=r.ResourceProperties.DefaultSecurityGroupId;e!==o&&(await m(e,r.ResourceProperties.Account),await p(o,r.ResourceProperties.Account))}async function p(r,e){try{await u.revokeSecurityGroupEgress(d(r))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}try{await u.revokeSecurityGroupIngress(c(r,e))}catch(o){if(o.name!=="InvalidPermission.NotFound")throw o}}async function m(r,e){await u.authorizeSecurityGroupIngress(c(r,e)),await u.authorizeSecurityGroupEgress(d(r))}0&&(module.exports={handler});
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.f43caef5f59d8d69c7a740076b980608cb5d502efb430a777568820012525e43/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.f43caef5f59d8d69c7a740076b980608cb5d502efb430a777568820012525e43/index.js
new file mode 100644
index 0000000000000..e6ae5c0940030
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/asset.f43caef5f59d8d69c7a740076b980608cb5d502efb430a777568820012525e43/index.js
@@ -0,0 +1,39 @@
+// A WebFunction runs this file as a long-lived HTTP server. The platform passes the address
+// to listen on in AWS_LAMBDA_HTTP_ENDPOINT (for example "0.0.0.0:3000").
+//
+// Each request fetches OBJECT_URL and returns its body. The bucket only serves that object
+// through the VPC's S3 gateway endpoint, so a 200 here shows both that the handler runs and
+// that its egress goes through the network connector into the VPC.
+const http = require('http');
+const https = require('https');
+
+function fetchObject(url) {
+  return new Promise((resolve, reject) => {
+    const req = https.get(url, { timeout: 5000 }, (res) => {
+      let body = '';
+      res.on('data', (chunk) => { body += chunk; });
+      res.on('end', () => resolve({ status: res.statusCode, body }));
+    });
+    req.on('timeout', () => req.destroy(new Error('timed out')));
+    req.on('error', reject);
+  });
+}
+
+const server = http.createServer(async (_req, res) => {
+  let status;
+  let result;
+  try {
+    const object = await fetchObject(process.env.OBJECT_URL);
+    status = object.status === 200 ? 200 : 502;
+    result = { objectStatus: object.status, object: object.body };
+  } catch (err) {
+    status = 502;
+    result = { error: err.message };
+  }
+  res.writeHead(status, { 'Content-Type': 'application/json' });
+  res.end(JSON.stringify(result));
+});
+
+const endpoint = (process.env.AWS_LAMBDA_HTTP_ENDPOINT || '0.0.0.0:3000').replace(/^[a-z]+:\/\//, '');
+const sep = endpoint.lastIndexOf(':');
+server.listen(Number(endpoint.slice(sep + 1)) || 3000, endpoint.slice(0, sep) || '0.0.0.0');
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/cdk.out
new file mode 100644
index 0000000000000..a130d293db2dd
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/cdk.out
@@ -0,0 +1 @@
+{"version":"55.0.0"}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/integ.json
new file mode 100644
index 0000000000000..897f8c01f8def
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/integ.json
@@ -0,0 +1,15 @@
+{
+  "version": "55.0.0",
+  "testCases": {
+    "WebFunctionNetworkConnectorTest/DefaultTest": {
+      "stacks": [
+        "WebFunctionNetworkConnectorStack"
+      ],
+      "diffAssets": false,
+      "assertionStack": "WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert",
+      "assertionStackName": "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309"
+    }
+  },
+  "enableLookups": true,
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/manifest.json
new file mode 100644
index 0000000000000..e46f430b507bf
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/manifest.json
@@ -0,0 +1,640 @@
+{
+  "version": "55.0.0",
+  "artifacts": {
+    "WebFunctionNetworkConnectorStack.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionNetworkConnectorStack.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionNetworkConnectorStack": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionNetworkConnectorStack.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/212799551c8d0281eab2fa30d5f499153de9523e551f2b02b316093f38764894.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionNetworkConnectorStack.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionNetworkConnectorStack.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionNetworkConnectorStack.metadata.json",
+      "displayName": "WebFunctionNetworkConnectorStack"
+    },
+    "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/4d11b10f03db842d861be3da63774f57d182c9f11fdd221007b3126e81464fb0.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionNetworkConnectorStack",
+        "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionNetworkConnectorTestDefaultTestDeployAssert18DC0309.metadata.json",
+      "displayName": "WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert"
+    },
+    "Tree": {
+      "type": "cdk:tree",
+      "properties": {
+        "file": "tree.json"
+      }
+    },
+    "aws-cdk-lib/feature-flag-report": {
+      "type": "cdk:feature-flag-report",
+      "properties": {
+        "module": "aws-cdk-lib",
+        "flags": {
+          "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Pass signingProfileName to CfnSigningProfile"
+          },
+          "@aws-cdk/core:newStyleStackSynthesis": {
+            "recommendedValue": true,
+            "explanation": "Switch to new stack synthesis method which enables CI/CD",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:stackRelativeExports": {
+            "recommendedValue": true,
+            "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Disable implicit openListener when custom security groups are provided"
+          },
+          "@aws-cdk/aws-rds:lowercaseDbIdentifier": {
+            "recommendedValue": true,
+            "explanation": "Force lowercasing of RDS Cluster names in CDK",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": {
+            "recommendedValue": true,
+            "explanation": "Allow adding/removing multiple UsagePlanKeys independently",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeVersionProps": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the  `fn.currentVersion`.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeLayerVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`."
+          },
+          "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:checkSecretUsage": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations"
+          },
+          "@aws-cdk/core:target-partitions": {
+            "recommendedValue": [
+              "aws",
+              "aws-cn"
+            ],
+            "explanation": "What regions to include in lookup tables of environment agnostic stacks"
+          },
+          "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ECS extensions will automatically add an `awslogs` driver if no logging is specified"
+          },
+          "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names."
+          },
+          "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID."
+          },
+          "@aws-cdk/aws-iam:minimizePolicies": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Minimize IAM policies by combining Statements"
+          },
+          "@aws-cdk/core:validateSnapshotRemovalPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Error on snapshot removal policies on resources that do not support it."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate key aliases that include the stack name"
+          },
+          "@aws-cdk/aws-s3:createDefaultLoggingPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist."
+          },
+          "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict KMS key policy for encrypted Queues a bit more"
+          },
+          "@aws-cdk/aws-apigateway:disableCloudWatchRole": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment"
+          },
+          "@aws-cdk/core:enablePartitionLiterals": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make ARNs concrete if AWS partition is known"
+          },
+          "@aws-cdk/aws-events:eventsTargetQueueSameAccount": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Event Rules may only push to encrypted SQS queues in the same account"
+          },
+          "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Avoid setting the \"ECS\" deployment controller when adding a circuit breaker"
+          },
+          "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in."
+          },
+          "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use S3 Bucket Policy instead of ACLs for Server Access Logging"
+          },
+          "@aws-cdk/aws-route53-patters:useCertificate": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the official `Certificate` resource instead of `DnsValidatedCertificate`"
+          },
+          "@aws-cdk/customresources:installLatestAwsSdkDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "Whether to install the latest SDK by default in AwsCustomResource"
+          },
+          "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use unique resource name for Database Proxy"
+          },
+          "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Remove CloudWatch alarms from deployment group"
+          },
+          "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include authorizer configuration in the calculation of the API deployment logical ID."
+          },
+          "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Define user data for a launch template by default when a machine image is provided."
+          },
+          "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "SecretTargetAttachments uses the ResourcePolicy of the attached Secret."
+          },
+          "@aws-cdk/aws-redshift:columnId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Whether to use an ID to track Redshift column changes"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable AmazonEMRServicePolicy_v2 managed policies"
+          },
+          "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict access to the VPC default security group"
+          },
+          "@aws-cdk/aws-apigateway:requestValidatorUniqueId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a unique id for each RequestValidator added to a method"
+          },
+          "@aws-cdk/aws-kms:aliasNameRef": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "KMS Alias name and keyArn will have implicit reference to KMS Key"
+          },
+          "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition"
+          },
+          "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a launch template when creating an AutoScalingGroup"
+          },
+          "@aws-cdk/core:includePrefixInUniqueNameGeneration": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include the stack prefix in the stack name generation process"
+          },
+          "@aws-cdk/aws-efs:denyAnonymousAccess": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "EFS denies anonymous clients accesses"
+          },
+          "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables support for Multi-AZ with Standby deployment for opensearch domains"
+          },
+          "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default"
+          },
+          "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet."
+          },
+          "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change."
+          },
+          "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id."
+          },
+          "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials."
+          },
+          "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the CodeCommit source action is using the default branch name 'main'."
+          },
+          "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default value for crossAccountKeys to false."
+          },
+          "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default pipeline type to V2."
+          },
+          "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only."
+          },
+          "@aws-cdk/pipelines:reduceAssetRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-eks:nodegroupNameAttribute": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix."
+          },
+          "@aws-cdk/aws-eks:useNativeOidcProvider": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider)."
+          },
+          "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default volume type of the EBS volume will be GP3"
+          },
+          "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, remove default deployment alarm settings"
+          },
+          "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default"
+          },
+          "@aws-cdk/aws-s3:keepNotificationInImportedBucket": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": {
+            "recommendedValue": true,
+            "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:explicitStackTags": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, stack tags need to be assigned explicitly on a Stack."
+          },
+          "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration"
+          },
+          "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas"
+          },
+          "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together."
+          },
+          "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn."
+          },
+          "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`"
+          },
+          "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values."
+          },
+          "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN."
+          },
+          "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2."
+          },
+          "@aws-cdk/core:aspectStabilization": {
+            "recommendedValue": true,
+            "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource."
+          },
+          "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere"
+          },
+          "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default behaviour of OIDC provider will reject unauthorized connections"
+          },
+          "@aws-cdk/core:enableAdditionalMetadataCollection": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues."
+          },
+          "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement"
+          },
+          "@aws-cdk/aws-s3:setUniqueReplicationRoleName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication."
+          },
+          "@aws-cdk/pipelines:reduceStageRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from Stage addActions trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-events:requireEventBusPolicySid": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals."
+          },
+          "@aws-cdk/core:aspectPrioritiesMutating": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING."
+          },
+          "@aws-cdk/aws-dynamodb:retainTableReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, table replica will be default to the removal policy of source table unless specified otherwise."
+          },
+          "@aws-cdk/cognito:logUserPoolClientSecretValue": {
+            "recommendedValue": false,
+            "explanation": "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs."
+          },
+          "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "When enabled, scopes down the trust policy for the cross-account action role",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter"
+          },
+          "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions."
+          },
+          "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC."
+          },
+          "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration": {
+            "recommendedValue": false,
+            "explanation": "When enabled, use resource IDs for VPC V2 migration"
+          },
+          "@aws-cdk/aws-s3:publicAccessBlockedByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined."
+          },
+          "@aws-cdk/aws-lambda:useCdkManagedLogGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK creates and manages loggroup for the lambda function"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, Network Load Balancer will be created with a security group by default."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": {
+            "recommendedValue": true,
+            "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement"
+          },
+          "@aws-cdk/aws-route53-patterns:useDistribution": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the `Distribution` resource instead of `CloudFrontWebDistribution`"
+          },
+          "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default"
+          },
+          "@aws-cdk/core:automaticL1Traits": {
+            "recommendedValue": true,
+            "explanation": "Automatically use the default L1 traits for L1 constructs`",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-batch:defaultToAL2023": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2"
+          },
+          "@aws-cdk/aws-eks:defaultToAL2023": {
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2"
+          },
+          "@aws-cdk/core:annotationsInValidationReport": {
+            "recommendedValue": true,
+            "explanation": "Include construct annotations (warnings and errors) in the policy validation report"
+          },
+          "@aws-cdk/core:defaultCrossStackReferences": {
+            "recommendedValue": "weak",
+            "explanation": "Controls whether cross-stack references are strong, weak, or both",
+            "unconfiguredBehavesLike": {
+              "v2": "strong"
+            }
+          },
+          "@aws-cdk/core:validateAgainstDefaultRules": {
+            "recommendedValue": true,
+            "explanation": "Treat CloudFormation Validate findings as errors"
+          },
+          "@aws-cdk/aws-ecs:removeEmptyLoadBalancers": {
+            "recommendedValue": true,
+            "explanation": "Render an empty `LoadBalancers` array on an ECS service that has no target groups"
+          },
+          "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps": {
+            "recommendedValue": true,
+            "explanation": "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS"
+          },
+          "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard": {
+            "recommendedValue": true,
+            "explanation": "Render the API Gateway access log destination ARN without the trailing `:*`"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:evaluateExpressionDedicatedFunction": {
+            "recommendedValue": true,
+            "explanation": "When enabled, each EvaluateExpression task gets its own Lambda function",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          }
+        }
+      }
+    }
+  },
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/tree.json
new file mode 100644
index 0000000000000..2f45d25af0451
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/tree.json
@@ -0,0 +1 @@
+{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"WebFunctionNetworkConnectorStack":{"id":"WebFunctionNetworkConnectorStack","path":"WebFunctionNetworkConnectorStack","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Vpc":{"id":"Vpc","path":"WebFunctionNetworkConnectorStack/Vpc","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.Vpc","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Vpc/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPC","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPC","aws:cdk:cloudformation:logicalId":"Vpc8378EB38","aws:cdk:cloudformation:props":{"cidrBlock":"10.0.0.0/16","enableDnsHostnames":true,"enableDnsSupport":true,"instanceTenancy":"default","tags":[{"key":"Name","value":"WebFunctionNetworkConnectorStack/Vpc"}]}}},"isolatedSubnet1":{"id":"isolatedSubnet1","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0"},"children":{"Subnet":{"id":"Subnet","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet1SubnetE62B1B9B","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[0,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.0.0/17","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0"}},"RouteTable":{"id":"RouteTable","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet1RouteTableE442650B","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet1/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet1RouteTableAssociationD259E31A","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcisolatedSubnet1RouteTableE442650B"},"subnetId":{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"}}}}}},"isolatedSubnet2":{"id":"isolatedSubnet2","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.PrivateSubnet","version":"0.0.0"},"children":{"Subnet":{"id":"Subnet","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2/Subnet","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnet","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::Subnet","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet2Subnet39217055","aws:cdk:cloudformation:props":{"availabilityZone":{"Fn::Select":[1,{"Fn::GetAZs":""}]},"cidrBlock":"10.0.128.0/17","mapPublicIpOnLaunch":false,"tags":[{"key":"aws-cdk:subnet-name","value":"isolated"},{"key":"aws-cdk:subnet-type","value":"Isolated"},{"key":"Name","value":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"Acl":{"id":"Acl","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2/Acl","constructInfo":{"fqn":"aws-cdk-lib.Resource","version":"0.0.0"}},"RouteTable":{"id":"RouteTable","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2/RouteTable","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnRouteTable","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::RouteTable","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet2RouteTable334F9764","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2"}],"vpcId":{"Ref":"Vpc8378EB38"}}}},"RouteTableAssociation":{"id":"RouteTableAssociation","path":"WebFunctionNetworkConnectorStack/Vpc/isolatedSubnet2/RouteTableAssociation","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSubnetRouteTableAssociation","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SubnetRouteTableAssociation","aws:cdk:cloudformation:logicalId":"VpcisolatedSubnet2RouteTableAssociation25A4716F","aws:cdk:cloudformation:props":{"routeTableId":{"Ref":"VpcisolatedSubnet2RouteTable334F9764"},"subnetId":{"Ref":"VpcisolatedSubnet2Subnet39217055"}}}}}},"RestrictDefaultSecurityGroupCustomResource":{"id":"RestrictDefaultSecurityGroupCustomResource","path":"WebFunctionNetworkConnectorStack/Vpc/RestrictDefaultSecurityGroupCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionNetworkConnectorStack/Vpc/RestrictDefaultSecurityGroupCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"S3Endpoint":{"id":"S3Endpoint","path":"WebFunctionNetworkConnectorStack/Vpc/S3Endpoint","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.GatewayVpcEndpoint","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Vpc/S3Endpoint/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnVPCEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::VPCEndpoint","aws:cdk:cloudformation:logicalId":"VpcS3Endpoint4A3DE4B5","aws:cdk:cloudformation:props":{"tags":[{"key":"Name","value":"WebFunctionNetworkConnectorStack/Vpc"}],"routeTableIds":[{"Ref":"VpcisolatedSubnet1RouteTableE442650B"},{"Ref":"VpcisolatedSubnet2RouteTable334F9764"}],"serviceName":{"Fn::Join":["",["com.amazonaws.",{"Ref":"AWS::Region"},".s3"]]},"vpcEndpointType":"Gateway","vpcId":{"Ref":"Vpc8378EB38"}}}}}}}},"Custom::VpcRestrictDefaultSGCustomResourceProvider":{"id":"Custom::VpcRestrictDefaultSGCustomResourceProvider","path":"WebFunctionNetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"WebFunctionNetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionNetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionNetworkConnectorStack/Custom::VpcRestrictDefaultSGCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"EgressBucket":{"id":"EgressBucket","path":"WebFunctionNetworkConnectorStack/EgressBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/EgressBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:logicalId":"EgressBucket1ABE5DC5","aws:cdk:cloudformation:props":{"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}]}}},"Policy":{"id":"Policy","path":"WebFunctionNetworkConnectorStack/EgressBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/EgressBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:logicalId":"EgressBucketPolicyBE4DCA6C","aws:cdk:cloudformation:props":{"bucket":{"Ref":"EgressBucket1ABE5DC5"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["EgressBucket1ABE5DC5","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["EgressBucket1ABE5DC5","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["EgressBucket1ABE5DC5","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["EgressBucket1ABE5DC5","Arn"]},"/*"]]}]},{"Action":"s3:GetObject","Condition":{"StringEquals":{"aws:SourceVpce":{"Ref":"VpcS3Endpoint4A3DE4B5"}}},"Effect":"Allow","Principal":{"AWS":"*"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["EgressBucket1ABE5DC5","Arn"]},"/egress.txt"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"WebFunctionNetworkConnectorStack/EgressBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionNetworkConnectorStack/EgressBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"WebFunctionNetworkConnectorStack/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"WebFunctionNetworkConnectorStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionNetworkConnectorStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionNetworkConnectorStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"ConnectorSecurityGroup":{"id":"ConnectorSecurityGroup","path":"WebFunctionNetworkConnectorStack/ConnectorSecurityGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.SecurityGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/ConnectorSecurityGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_ec2.CfnSecurityGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::EC2::SecurityGroup","aws:cdk:cloudformation:logicalId":"ConnectorSecurityGroup5AD7DC86","aws:cdk:cloudformation:props":{"groupDescription":"WebFunctionNetworkConnectorStack/ConnectorSecurityGroup","securityGroupEgress":[{"cidrIp":"0.0.0.0/0","description":"Allow all outbound traffic by default","ipProtocol":"-1"}],"vpcId":{"Ref":"Vpc8378EB38"}}}}}},"Connector":{"id":"Connector","path":"WebFunctionNetworkConnectorStack/Connector","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.NetworkConnector","version":"0.0.0"},"children":{"OperatorRole":{"id":"OperatorRole","path":"WebFunctionNetworkConnectorStack/Connector/OperatorRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Connector/OperatorRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"ConnectorOperatorRoleC4EE1CDE","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/AWSLambdaNetworkConnectorOperatorPolicy"]]}]}}}}},"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Connector/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnNetworkConnector","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::NetworkConnector","aws:cdk:cloudformation:logicalId":"ConnectorC537A2FB","aws:cdk:cloudformation:props":{"configuration":{"vpcEgressConfiguration":{"subnetIds":[{"Ref":"VpcisolatedSubnet1SubnetE62B1B9B"},{"Ref":"VpcisolatedSubnet2Subnet39217055"}],"securityGroupIds":[{"Fn::GetAtt":["ConnectorSecurityGroup5AD7DC86","GroupId"]}],"networkProtocol":"IPv4","associatedComputeResourceTypes":["WebFunction"]}},"operatorRole":{"Fn::GetAtt":["ConnectorOperatorRoleC4EE1CDE","Arn"]}}}}}},"Function":{"id":"Function","path":"WebFunctionNetworkConnectorStack/Function","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunction","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionNetworkConnectorStack/Function/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Function/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"FunctionServiceRole675BB04A","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}}}},"Code":{"id":"Code","path":"WebFunctionNetworkConnectorStack/Function/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionNetworkConnectorStack/Function/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionNetworkConnectorStack/Function/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"CodeCopyd6190910":{"id":"CodeCopyd6190910","path":"WebFunctionNetworkConnectorStack/Function/CodeCopyd6190910","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"CustomResourceHandler":{"id":"CustomResourceHandler","path":"WebFunctionNetworkConnectorStack/Function/CodeCopyd6190910/CustomResourceHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.SingletonFunction","version":"0.0.0"}},"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Function/CodeCopyd6190910/Resource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionNetworkConnectorStack/Function/CodeCopyd6190910/Resource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionNetworkConnectorStack/Function/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Function/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"FunctionLogGroup55B80E27","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"Function":{"id":"Function","path":"WebFunctionNetworkConnectorStack/Function/Function","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunction","aws:cdk:cloudformation:logicalId":"Function042596DC","aws:cdk:cloudformation:props":{"functionName":"WebFunctionNetwotorStackFunction4CFB0255"}}},"Revision":{"id":"Revision","path":"WebFunctionNetworkConnectorStack/Function/Revision","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionRevision","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionRevision","aws:cdk:cloudformation:logicalId":"FunctionRevision22F51A9C","aws:cdk:cloudformation:props":{"buildConfig":{"codeConfig":{"s3Object":{"bucket":{"Fn::GetAtt":["FunctionCodeCopyd61909107AB50639","Bucket"]},"key":{"Fn::GetAtt":["FunctionCodeCopyd61909107AB50639","Key"]},"versionId":{"Fn::GetAtt":["FunctionCodeCopyd61909107AB50639","VersionId"]}}},"runtimeConfig":{"runtime":"nodejs24.x"}},"functionName":{"Ref":"Function042596DC"},"serviceConfig":{"executionRoleArn":{"Fn::GetAtt":["FunctionServiceRole675BB04A","Arn"]},"environmentVariables":{"OBJECT_URL":{"Fn::Join":["",["https://",{"Fn::GetAtt":["EgressBucket1ABE5DC5","RegionalDomainName"]},"/egress.txt"]]}},"telemetryConfig":{"loggingConfig":{"logGroup":{"Ref":"FunctionLogGroup55B80E27"}}},"timeoutSeconds":30,"egressNetworkConnectorArn":{"Fn::GetAtt":["ConnectorC537A2FB","LatestVersionArn"]}}}}},"Endpoint":{"id":"Endpoint","path":"WebFunctionNetworkConnectorStack/Function/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunctionEndpoint","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionNetworkConnectorStack/Function/Endpoint/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionEndpoint","aws:cdk:cloudformation:logicalId":"FunctionEndpoint85BE574A","aws:cdk:cloudformation:props":{"authType":"ApplicationManaged","endpointName":"prod","endpointType":"HomeRegion","functionName":{"Fn::GetAtt":["Function042596DC","FunctionArn"]},"revisionWeights":[{"revisionId":{"Fn::GetAtt":["FunctionRevision22F51A9C","RevisionId"]},"weight":100}]}}}}}}},"AWSCDKWebFunctionAssetBucket":{"id":"AWSCDKWebFunctionAssetBucket","path":"WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:logicalId":"AWSCDKWebFunctionAssetBucket5B596593","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:logicalId":"AWSCDKWebFunctionAssetBucketPolicy406CF5E7","aws:cdk:cloudformation:props":{"bucket":{"Ref":"AWSCDKWebFunctionAssetBucket5B596593"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/*"]]}]},{"Action":["s3:GetObject","s3:GetObjectVersion"],"Condition":{"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}},"ArnLike":{"aws:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":lambda:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":web-function/*/revision/*"]]}}},"Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/web-function/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionNetworkConnectorStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312":{"id":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","path":"WebFunctionNetworkConnectorStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312":{"id":"Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","path":"WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["s3:GetObject","s3:GetObjectVersion"],"Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":s3:::",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/*"]]}},{"Action":["s3:Abort*","s3:DeleteObject*","s3:PutObject","s3:PutObjectLegalHold","s3:PutObjectRetention","s3:PutObjectTagging","s3:PutObjectVersionTagging"],"Effect":"Allow","Resource":{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/web-function/*"]]}}],"Version":"2012-10-17"},"policyName":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207","roles":[{"Ref":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"}]}}}}}}},"Code":{"id":"Code","path":"WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"Resource":{"id":"Resource","path":"WebFunctionNetworkConnectorStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085","aws:cdk:cloudformation:props":{"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip"},"handler":"index.handler","loggingConfig":{"logGroup":{"Ref":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C"}},"role":{"Fn::GetAtt":["CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE","Arn"]},"runtime":"nodejs24.x","timeout":900}}}}},"ConnectorArn":{"id":"ConnectorArn","path":"WebFunctionNetworkConnectorStack/ConnectorArn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"ConnectorVersionArn":{"id":"ConnectorVersionArn","path":"WebFunctionNetworkConnectorStack/ConnectorVersionArn","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Exports":{"id":"Exports","path":"WebFunctionNetworkConnectorStack/Exports","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Output{\"Ref\":\"EgressBucket1ABE5DC5\"}":{"id":"Output{\"Ref\":\"EgressBucket1ABE5DC5\"}","path":"WebFunctionNetworkConnectorStack/Exports/Output{\"Ref\":\"EgressBucket1ABE5DC5\"}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Fn::GetAtt\":[\"FunctionEndpoint85BE574A\",\"DomainName\"]}":{"id":"Output{\"Fn::GetAtt\":[\"FunctionEndpoint85BE574A\",\"DomainName\"]}","path":"WebFunctionNetworkConnectorStack/Exports/Output{\"Fn::GetAtt\":[\"FunctionEndpoint85BE574A\",\"DomainName\"]}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionNetworkConnectorStack/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionNetworkConnectorStack/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"WebFunctionNetworkConnectorTest":{"id":"WebFunctionNetworkConnectorTest","path":"WebFunctionNetworkConnectorTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"WebFunctionNetworkConnectorTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionNetworkConnectorTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}},"DeployAssert":{"id":"DeployAssert","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97":{"id":"AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AwsApiCall","version":"0.0.0"},"children":{"SdkProvider":{"id":"SdkProvider","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97/SdkProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97/SdkProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/AwsApiCallS3putObject5d965a19a7cf9826f911494ff03b6a97/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"SingletonFunction1488541a7b23466481b69b4408076b81":{"id":"SingletonFunction1488541a7b23466481b69b4408076b81","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Staging":{"id":"Staging","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"HttpApiCall1e076b772eb3ca399ac7583a5f5035eb":{"id":"HttpApiCall1e076b772eb3ca399ac7583a5f5035eb","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/HttpApiCall1e076b772eb3ca399ac7583a5f5035eb","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.HttpApiCall","version":"0.0.0"},"children":{"HttpProvider":{"id":"HttpProvider","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/HttpApiCall1e076b772eb3ca399ac7583a5f5035eb/HttpProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/HttpApiCall1e076b772eb3ca399ac7583a5f5035eb/HttpProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/HttpApiCall1e076b772eb3ca399ac7583a5f5035eb/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/HttpApiCall1e076b772eb3ca399ac7583a5f5035eb/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/HttpApiCall1e076b772eb3ca399ac7583a5f5035eb/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionNetworkConnectorTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}}}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/validation-report.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/validation-report.json
new file mode 100644
index 0000000000000..6e40fa68c963a
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.js.snapshot/validation-report.json
@@ -0,0 +1,5 @@
+{
+  "version": "55.0.0",
+  "title": "Validation Report",
+  "pluginReports": []
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.ts
new file mode 100644
index 0000000000000..3e07a8b7c3b40
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-network-connector.ts
@@ -0,0 +1,107 @@
+import * as path from 'path';
+import * as cdk from 'aws-cdk-lib/core';
+import * as ec2 from 'aws-cdk-lib/aws-ec2';
+import * as iam from 'aws-cdk-lib/aws-iam';
+import * as s3 from 'aws-cdk-lib/aws-s3';
+import * as integ from '@aws-cdk/integ-tests-alpha';
+import {
+  NetworkConnector,
+  NetworkConnectorComputeType,
+  NetworkConnectorConfiguration,
+  WebFunction,
+  WebFunctionAuthType,
+  WebFunctionCode,
+  WebFunctionRuntime,
+} from 'aws-cdk-lib/aws-lambda';
+
+const app = new cdk.App({ analyticsReporting: false });
+const stack = new cdk.Stack(app, 'WebFunctionNetworkConnectorStack');
+
+// Isolated subnets: the connector provisions ENIs into them. With no NAT gateway or internet
+// gateway, the only way out of the VPC is the S3 gateway endpoint added below.
+const vpc = new ec2.Vpc(stack, 'Vpc', {
+  maxAzs: 2,
+  natGateways: 0,
+  subnetConfiguration: [
+    { name: 'isolated', subnetType: ec2.SubnetType.PRIVATE_ISOLATED },
+  ],
+});
+
+// The function proves its egress goes through the VPC by reading an object that the bucket
+// serves only through this endpoint.
+const s3Endpoint = vpc.addGatewayEndpoint('S3Endpoint', {
+  service: ec2.GatewayVpcEndpointAwsService.S3,
+});
+
+const EGRESS_OBJECT_KEY = 'egress.txt';
+const EGRESS_OBJECT_BODY = 'reached-through-the-vpc';
+
+const egressBucket = new s3.Bucket(stack, 'EgressBucket', {
+  blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL,
+  enforceSSL: true,
+  removalPolicy: cdk.RemovalPolicy.DESTROY,
+  autoDeleteObjects: true,
+});
+// Unsigned reads of the one object, but only when they arrive through the endpoint. The
+// aws:SourceVpce condition keeps this out of S3's definition of a public policy.
+egressBucket.addToResourcePolicy(new iam.PolicyStatement({
+  principals: [new iam.AnyPrincipal()],
+  actions: ['s3:GetObject'],
+  resources: [egressBucket.arnForObjects(EGRESS_OBJECT_KEY)],
+  conditions: { StringEquals: { 'aws:SourceVpce': s3Endpoint.vpcEndpointId } },
+}));
+
+const securityGroup = new ec2.SecurityGroup(stack, 'ConnectorSecurityGroup', {
+  vpc,
+  allowAllOutbound: true,
+});
+
+const connector = new NetworkConnector(stack, 'Connector', {
+  configuration: NetworkConnectorConfiguration.vpcEgress({
+    computeType: NetworkConnectorComputeType.WEB_FUNCTION,
+    vpc,
+    securityGroups: [securityGroup],
+  }),
+});
+
+// Same stack as the connector, so the revision pins the connector's latest version and
+// follows it: an update to the connector replaces the revision in the same deployment.
+const webFunction = new WebFunction(stack, 'Function', {
+  code: WebFunctionCode.fromAssetToManagedBucket(path.join(__dirname, 'webfunction-egress-handler')),
+  runtime: WebFunctionRuntime.NODEJS_24_X,
+  // The assertion below has to reach the handler, and integ-tests cannot sign requests.
+  // The handler only returns the test object's fixed content, and the stack is torn down
+  // after the test.
+  defaultEndpointAuth: WebFunctionAuthType.APPLICATION_MANAGED,
+  egressNetworkConnector: connector,
+  environment: {
+    OBJECT_URL: egressBucket.virtualHostedUrlForObject(EGRESS_OBJECT_KEY),
+  },
+});
+
+new cdk.CfnOutput(stack, 'ConnectorArn', { value: connector.networkConnectorArn });
+new cdk.CfnOutput(stack, 'ConnectorVersionArn', { value: connector.latestVersionArn });
+
+const testCase = new integ.IntegTest(app, 'WebFunctionNetworkConnectorTest', {
+  testCases: [stack],
+  diffAssets: false,
+});
+
+// Write the object, then call the function. A 200 carrying the object's body shows that the
+// handler runs and that its request left through the VPC's S3 endpoint, the only way to
+// satisfy the bucket policy. Without working egress through the connector the handler
+// returns 502.
+testCase.assertions
+  .awsApiCall('S3', 'putObject', {
+    Bucket: egressBucket.bucketName,
+    Key: EGRESS_OBJECT_KEY,
+    Body: EGRESS_OBJECT_BODY,
+  })
+  .next(
+    testCase.assertions
+      .httpApiCall(`https://${webFunction.endpoint.domainName}/`)
+      .expect(integ.ExpectedResult.objectLike({
+        status: 200,
+        body: { object: EGRESS_OBJECT_BODY },
+      })),
+  );
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetStack.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetStack.assets.json
new file mode 100644
index 0000000000000..3e3c24d93fcec
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetStack.assets.json
@@ -0,0 +1,62 @@
+{
+  "version": "55.0.0",
+  "files": {
+    "a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a": {
+      "displayName": "Automatic/Code",
+      "source": {
+        "path": "asset.a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-39e96b80": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61": {
+      "displayName": "WebFunctionStagedAssetStack/Custom::S3AutoDeleteObjectsCustomResourceProvider Code",
+      "source": {
+        "path": "asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-094cbf39": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d": {
+      "displayName": "Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code",
+      "source": {
+        "path": "asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-40395998": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "4396ab2ae7ba183c10424cf7ef726f4cc8087ece11868aed1bcffb051a836d64": {
+      "displayName": "WebFunctionStagedAssetStack Template",
+      "source": {
+        "path": "WebFunctionStagedAssetStack.template.json",
+        "packaging": "file"
+      },
+      "destinations": {
+        "current_account-current_region-c42e48fc": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "4396ab2ae7ba183c10424cf7ef726f4cc8087ece11868aed1bcffb051a836d64.json",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    }
+  },
+  "dockerImages": {}
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetStack.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetStack.metadata.json
new file mode 100644
index 0000000000000..6cd39be9b442f
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetStack.metadata.json
@@ -0,0 +1,986 @@
+{
+  "/WebFunctionStagedAssetStack": [
+    {
+      "type": "aws:cdk:templateFile",
+      "data": "WebFunctionStagedAssetStack.template.json"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "versioned": true,
+        "encryption": "S3_MANAGED",
+        "blockPublicAccess": "*",
+        "enforceSSL": true,
+        "removalPolicy": "destroy",
+        "autoDeleteObjects": true
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3AutoDeleteObjectsCustomResourceProvider": [
+    {
+      "type": "aws:cdk:is-custom-resource-handler-customResourceProvider",
+      "data": true
+    }
+  ],
+  "/WebFunctionStagedAssetStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-logGroup",
+      "data": true
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-logGroup",
+      "data": true
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "timeout": "*",
+        "role": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-singleton",
+      "data": true
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-runtime-family",
+      "data": 0
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-singleton",
+      "data": true
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-runtime-family",
+      "data": 0
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/CallerCodeBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "versioned": true,
+        "encryption": "S3_MANAGED",
+        "removalPolicy": "destroy",
+        "autoDeleteObjects": true
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-logGroup",
+      "data": true
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "timeout": "*",
+        "role": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-singleton",
+      "data": true
+    },
+    {
+      "type": "aws:cdk:is-custom-resource-handler-runtime-family",
+      "data": 0
+    }
+  ],
+  "/WebFunctionStagedAssetStack/BootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "BootstrapVersion"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/CheckBootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CheckBootstrapVersion"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/LogGroup": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/Function": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticFunctionB47C23F8"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/Revision": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticRevision65EF45A7"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/Endpoint": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/Policy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "bucket": "*"
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/LogGroup": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/Function": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticSecondFunctionAB53D7F9"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/Revision": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticSecondRevision59068325"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/Endpoint": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/CallerCodeBucket/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CallerCodeBucketFB907A2B"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketAutoDeleteObjects"
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/CallerCodeBucket/Policy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "bucket": "*"
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/CallerCodeBucket/AutoDeleteObjectsCustomResource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/LogGroup": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/Function": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SpecificFunction2B9945D8"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/Revision": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SpecificRevisionF768306C"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/Endpoint": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f0A314486"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/ServiceRole": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "assumedBy": {
+          "principalAccount": "*",
+          "assumeRoleAction": "*"
+        },
+        "managedPolicies": [
+          {
+            "managedPolicyArn": "*"
+          }
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachInlinePolicy": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addToPrincipalPolicy": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f8D1137DB"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Exports/Output{\"Fn::GetAtt\":[\"AutomaticEndpointC59D3C8A\",\"DomainName\"]}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputFnGetAttAutomaticEndpointC59D3C8ADomainName500D3673"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Exports/Output{\"Fn::GetAtt\":[\"AutomaticSecondEndpointA57E8247\",\"DomainName\"]}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputFnGetAttAutomaticSecondEndpointA57E8247DomainName2FE58DFC"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Exports/Output{\"Fn::GetAtt\":[\"SpecificEndpoint6806C68C\",\"DomainName\"]}": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "ExportsOutputFnGetAttSpecificEndpoint6806C68CDomainNameB4A7615B"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticServiceRole73715D6D"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/CodeCopyd6190910/CustomResourceHandler": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "uuid": "*",
+        "lambdaPurpose": "*",
+        "timeout": "*",
+        "role": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          true
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          "*"
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/CodeCopyd6190910/Resource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/LogGroup/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticLogGroupC4AD0641"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/Endpoint/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticEndpointC59D3C8A"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/Policy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AWSCDKWebFunctionAssetBucketAutoDeleteObjectsCustomResource7C95046A"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticSecondServiceRoleCA7814FD"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/CodeCopyd6190910/CustomResourceHandler": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "uuid": "*",
+        "lambdaPurpose": "*",
+        "timeout": "*",
+        "role": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          true
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          "*"
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/CodeCopyd6190910/Resource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/LogGroup/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticSecondLogGroup7FE94734"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/Endpoint/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticSecondEndpointA57E8247"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/CallerCodeBucket/Policy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CallerCodeBucketPolicy2C433922"
+    },
+    {
+      "type": "aws:cdk:analytics:mixin",
+      "data": {
+        "mixin": "aws-cdk-lib.aws_s3.mixins.BucketPolicyStatements"
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/CallerCodeBucket/AutoDeleteObjectsCustomResource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CallerCodeBucketAutoDeleteObjectsCustomResource7C6FC143"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SpecificServiceRole381077C9"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/CodeCopy8a875a7a/CustomResourceHandler": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": {
+        "uuid": "*",
+        "lambdaPurpose": "*",
+        "timeout": "*",
+        "role": "*",
+        "vpc": "*",
+        "vpcSubnets": "*",
+        "securityGroups": "*",
+        "logGroup": "*",
+        "code": "*",
+        "handler": "*",
+        "runtime": "*"
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          true
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addMetadata": [
+          "*",
+          "*"
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/CodeCopy8a875a7a/Resource": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/LogGroup/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SpecificLogGroup92FAE761"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/Endpoint/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SpecificEndpoint6806C68C"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/ServiceRole/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRole0A9D2289"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/ServiceRole/DefaultPolicy": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "attachToRole": [
+          "*"
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": {
+        "addStatements": [
+          {}
+        ]
+      }
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/Code/AssetBucket": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Automatic/CodeCopyd6190910/Resource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticCodeCopyd6190910DFE30AB1"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/AutomaticSecond/CodeCopyd6190910/Resource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AutomaticSecondCodeCopyd6190910A8C0FF92"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Specific/CodeCopy8a875a7a/Resource/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SpecificCodeCopy8a875a7aD278F5D7"
+    }
+  ],
+  "/WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/ServiceRole/DefaultPolicy/Resource": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRoleDefaultPolicyCCD65154"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetStack.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetStack.template.json
new file mode 100644
index 0000000000000..b7ec439e0a510
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetStack.template.json
@@ -0,0 +1,1314 @@
+{
+ "Resources": {
+  "AutomaticServiceRole73715D6D": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "AutomaticCodeCopyd6190910DFE30AB1": {
+   "Type": "Custom::S3ObjectCopy",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085",
+      "Arn"
+     ]
+    },
+    "SourceBucketName": {
+     "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+    },
+    "SourceObjectKey": "a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a.zip",
+    "DestinationBucketName": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    "DestinationKeyPrefix": "web-function/WebFunctionStagedAssetStackAutomaticA68429D7/",
+    "ContentHash": "a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a",
+    "Configuration": {
+     "Properties": {
+      "BuildConfig": {
+       "RuntimeConfig": {
+        "Runtime": "ea70e0b0f76ff72b61a06c9d0f7ca9ad"
+       }
+      },
+      "FunctionName": {
+       "Ref": "AutomaticFunctionB47C23F8"
+      },
+      "ServiceConfig": {
+       "ExecutionRoleArn": {
+        "Fn::GetAtt": [
+         "AutomaticServiceRole73715D6D",
+         "Arn"
+        ]
+       },
+       "TelemetryConfig": {
+        "LoggingConfig": {
+         "LogGroup": {
+          "Ref": "AutomaticLogGroupC4AD0641"
+         }
+        }
+       },
+       "TimeoutSeconds": 30
+      }
+     },
+     "References": []
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "AutomaticLogGroupC4AD0641": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "AutomaticFunctionB47C23F8": {
+   "Type": "AWS::Lambda::WebFunction",
+   "Properties": {
+    "FunctionName": "WebFunctionStageetStackAutomaticA68429D7"
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "AutomaticRevision65EF45A7": {
+   "Type": "AWS::Lambda::WebFunctionRevision",
+   "Properties": {
+    "BuildConfig": {
+     "CodeConfig": {
+      "S3Object": {
+       "Bucket": {
+        "Fn::GetAtt": [
+         "AutomaticCodeCopyd6190910DFE30AB1",
+         "Bucket"
+        ]
+       },
+       "Key": {
+        "Fn::GetAtt": [
+         "AutomaticCodeCopyd6190910DFE30AB1",
+         "Key"
+        ]
+       },
+       "VersionId": {
+        "Fn::GetAtt": [
+         "AutomaticCodeCopyd6190910DFE30AB1",
+         "VersionId"
+        ]
+       }
+      }
+     },
+     "RuntimeConfig": {
+      "Runtime": "nodejs24.x"
+     }
+    },
+    "FunctionName": {
+     "Ref": "AutomaticFunctionB47C23F8"
+    },
+    "ServiceConfig": {
+     "ExecutionRoleArn": {
+      "Fn::GetAtt": [
+       "AutomaticServiceRole73715D6D",
+       "Arn"
+      ]
+     },
+     "TelemetryConfig": {
+      "LoggingConfig": {
+       "LogGroup": {
+        "Ref": "AutomaticLogGroupC4AD0641"
+       }
+      }
+     },
+     "TimeoutSeconds": 30
+    }
+   },
+   "DependsOn": [
+    "AutomaticFunctionB47C23F8",
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "AutomaticEndpointC59D3C8A": {
+   "Type": "AWS::Lambda::WebFunctionEndpoint",
+   "Properties": {
+    "AuthType": "IamAuth",
+    "EndpointName": "prod",
+    "EndpointType": "HomeRegion",
+    "FunctionName": {
+     "Fn::GetAtt": [
+      "AutomaticFunctionB47C23F8",
+      "FunctionArn"
+     ]
+    },
+    "RevisionWeights": [
+     {
+      "RevisionId": {
+       "Fn::GetAtt": [
+        "AutomaticRevision65EF45A7",
+        "RevisionId"
+       ]
+      },
+      "Weight": 100
+     }
+    ]
+   },
+   "DependsOn": [
+    "AutomaticFunctionB47C23F8",
+    "AutomaticRevision65EF45A7",
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "AWSCDKWebFunctionAssetBucket5B596593": {
+   "Type": "AWS::S3::Bucket",
+   "Properties": {
+    "BucketEncryption": {
+     "ServerSideEncryptionConfiguration": [
+      {
+       "ServerSideEncryptionByDefault": {
+        "SSEAlgorithm": "AES256"
+       }
+      }
+     ]
+    },
+    "PublicAccessBlockConfiguration": {
+     "BlockPublicAcls": true,
+     "BlockPublicPolicy": true,
+     "IgnorePublicAcls": true,
+     "RestrictPublicBuckets": true
+    },
+    "Tags": [
+     {
+      "Key": "aws-cdk:auto-delete-objects",
+      "Value": "true"
+     }
+    ],
+    "VersioningConfiguration": {
+     "Status": "Enabled"
+    }
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "AWSCDKWebFunctionAssetBucketPolicy406CF5E7": {
+   "Type": "AWS::S3::BucketPolicy",
+   "Properties": {
+    "Bucket": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": "s3:*",
+       "Condition": {
+        "Bool": {
+         "aws:SecureTransport": "false"
+        }
+       },
+       "Effect": "Deny",
+       "Principal": {
+        "AWS": "*"
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "AWSCDKWebFunctionAssetBucket5B596593",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "AWSCDKWebFunctionAssetBucket5B596593",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:DeleteObject*",
+        "s3:GetBucket*",
+        "s3:List*",
+        "s3:PutBucketPolicy"
+       ],
+       "Effect": "Allow",
+       "Principal": {
+        "AWS": {
+         "Fn::GetAtt": [
+          "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+          "Arn"
+         ]
+        }
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "AWSCDKWebFunctionAssetBucket5B596593",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "AWSCDKWebFunctionAssetBucket5B596593",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:GetObject",
+        "s3:GetObjectVersion"
+       ],
+       "Condition": {
+        "StringEquals": {
+         "aws:SourceAccount": {
+          "Ref": "AWS::AccountId"
+         }
+        },
+        "ArnLike": {
+         "aws:SourceArn": {
+          "Fn::Join": [
+           "",
+           [
+            "arn:",
+            {
+             "Ref": "AWS::Partition"
+            },
+            ":lambda:",
+            {
+             "Ref": "AWS::Region"
+            },
+            ":",
+            {
+             "Ref": "AWS::AccountId"
+            },
+            ":web-function/*/revision/*"
+           ]
+          ]
+         }
+        }
+       },
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       },
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "AWSCDKWebFunctionAssetBucket5B596593",
+            "Arn"
+           ]
+          },
+          "/web-function/*"
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    }
+   }
+  },
+  "AWSCDKWebFunctionAssetBucketAutoDeleteObjectsCustomResource7C95046A": {
+   "Type": "Custom::S3AutoDeleteObjects",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F",
+      "Arn"
+     ]
+    },
+    "BucketName": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Version": "2012-10-17",
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ]
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+     }
+    ]
+   }
+  },
+  "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61.zip"
+    },
+    "Timeout": 900,
+    "MemorySize": 128,
+    "Handler": "index.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs24.x",
+    "Description": {
+     "Fn::Join": [
+      "",
+      [
+       "Lambda function for auto-deleting objects in ",
+       {
+        "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+       },
+       " S3 bucket."
+      ]
+     ]
+    }
+   },
+   "DependsOn": [
+    "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092"
+   ]
+  },
+  "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731
+   },
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   }
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207": {
+   "Type": "AWS::IAM::Policy",
+   "Properties": {
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": [
+        "s3:GetObject",
+        "s3:GetObjectVersion"
+       ],
+       "Effect": "Allow",
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          "arn:",
+          {
+           "Ref": "AWS::Partition"
+          },
+          ":s3:::",
+          {
+           "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+          },
+          "/*"
+         ]
+        ]
+       }
+      },
+      {
+       "Action": [
+        "s3:Abort*",
+        "s3:DeleteObject*",
+        "s3:PutObject",
+        "s3:PutObjectLegalHold",
+        "s3:PutObjectRetention",
+        "s3:PutObjectTagging",
+        "s3:PutObjectVersionTagging"
+       ],
+       "Effect": "Allow",
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "AWSCDKWebFunctionAssetBucket5B596593",
+            "Arn"
+           ]
+          },
+          "/web-function/*"
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "PolicyName": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207",
+    "Roles": [
+     {
+      "Ref": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"
+     }
+    ]
+   }
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip"
+    },
+    "Handler": "index.handler",
+    "LoggingConfig": {
+     "LogGroup": {
+      "Ref": "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C"
+     }
+    },
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs24.x",
+    "Timeout": 900
+   },
+   "DependsOn": [
+    "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207",
+    "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"
+   ]
+  },
+  "AutomaticSecondServiceRoleCA7814FD": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "AutomaticSecondCodeCopyd6190910A8C0FF92": {
+   "Type": "Custom::S3ObjectCopy",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085",
+      "Arn"
+     ]
+    },
+    "SourceBucketName": {
+     "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+    },
+    "SourceObjectKey": "a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a.zip",
+    "DestinationBucketName": {
+     "Ref": "AWSCDKWebFunctionAssetBucket5B596593"
+    },
+    "DestinationKeyPrefix": "web-function/WebFunctionStagedAssetStackAutomaticSecondB3C75A59/",
+    "ContentHash": "a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a",
+    "Configuration": {
+     "Properties": {
+      "BuildConfig": {
+       "RuntimeConfig": {
+        "Runtime": "ea70e0b0f76ff72b61a06c9d0f7ca9ad"
+       }
+      },
+      "FunctionName": {
+       "Ref": "AutomaticSecondFunctionAB53D7F9"
+      },
+      "ServiceConfig": {
+       "ExecutionRoleArn": {
+        "Fn::GetAtt": [
+         "AutomaticSecondServiceRoleCA7814FD",
+         "Arn"
+        ]
+       },
+       "TelemetryConfig": {
+        "LoggingConfig": {
+         "LogGroup": {
+          "Ref": "AutomaticSecondLogGroup7FE94734"
+         }
+        }
+       },
+       "TimeoutSeconds": 30
+      }
+     },
+     "References": []
+    }
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "AutomaticSecondLogGroup7FE94734": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ],
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "AutomaticSecondFunctionAB53D7F9": {
+   "Type": "AWS::Lambda::WebFunction",
+   "Properties": {
+    "FunctionName": "WebFunctionStagekAutomaticSecondB3C75A59"
+   },
+   "DependsOn": [
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "AutomaticSecondRevision59068325": {
+   "Type": "AWS::Lambda::WebFunctionRevision",
+   "Properties": {
+    "BuildConfig": {
+     "CodeConfig": {
+      "S3Object": {
+       "Bucket": {
+        "Fn::GetAtt": [
+         "AutomaticSecondCodeCopyd6190910A8C0FF92",
+         "Bucket"
+        ]
+       },
+       "Key": {
+        "Fn::GetAtt": [
+         "AutomaticSecondCodeCopyd6190910A8C0FF92",
+         "Key"
+        ]
+       },
+       "VersionId": {
+        "Fn::GetAtt": [
+         "AutomaticSecondCodeCopyd6190910A8C0FF92",
+         "VersionId"
+        ]
+       }
+      }
+     },
+     "RuntimeConfig": {
+      "Runtime": "nodejs24.x"
+     }
+    },
+    "FunctionName": {
+     "Ref": "AutomaticSecondFunctionAB53D7F9"
+    },
+    "ServiceConfig": {
+     "ExecutionRoleArn": {
+      "Fn::GetAtt": [
+       "AutomaticSecondServiceRoleCA7814FD",
+       "Arn"
+      ]
+     },
+     "TelemetryConfig": {
+      "LoggingConfig": {
+       "LogGroup": {
+        "Ref": "AutomaticSecondLogGroup7FE94734"
+       }
+      }
+     },
+     "TimeoutSeconds": 30
+    }
+   },
+   "DependsOn": [
+    "AutomaticSecondFunctionAB53D7F9",
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "AutomaticSecondEndpointA57E8247": {
+   "Type": "AWS::Lambda::WebFunctionEndpoint",
+   "Properties": {
+    "AuthType": "IamAuth",
+    "EndpointName": "prod",
+    "EndpointType": "HomeRegion",
+    "FunctionName": {
+     "Fn::GetAtt": [
+      "AutomaticSecondFunctionAB53D7F9",
+      "FunctionArn"
+     ]
+    },
+    "RevisionWeights": [
+     {
+      "RevisionId": {
+       "Fn::GetAtt": [
+        "AutomaticSecondRevision59068325",
+        "RevisionId"
+       ]
+      },
+      "Weight": 100
+     }
+    ]
+   },
+   "DependsOn": [
+    "AutomaticSecondFunctionAB53D7F9",
+    "AutomaticSecondRevision59068325",
+    "AWSCDKWebFunctionAssetBucketPolicy406CF5E7"
+   ]
+  },
+  "CallerCodeBucketFB907A2B": {
+   "Type": "AWS::S3::Bucket",
+   "Properties": {
+    "BucketEncryption": {
+     "ServerSideEncryptionConfiguration": [
+      {
+       "ServerSideEncryptionByDefault": {
+        "SSEAlgorithm": "AES256"
+       }
+      }
+     ]
+    },
+    "Tags": [
+     {
+      "Key": "aws-cdk:auto-delete-objects",
+      "Value": "true"
+     }
+    ],
+    "VersioningConfiguration": {
+     "Status": "Enabled"
+    }
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "CallerCodeBucketPolicy2C433922": {
+   "Type": "AWS::S3::BucketPolicy",
+   "Properties": {
+    "Bucket": {
+     "Ref": "CallerCodeBucketFB907A2B"
+    },
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": [
+        "s3:DeleteObject*",
+        "s3:GetBucket*",
+        "s3:List*",
+        "s3:PutBucketPolicy"
+       ],
+       "Effect": "Allow",
+       "Principal": {
+        "AWS": {
+         "Fn::GetAtt": [
+          "CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092",
+          "Arn"
+         ]
+        }
+       },
+       "Resource": [
+        {
+         "Fn::GetAtt": [
+          "CallerCodeBucketFB907A2B",
+          "Arn"
+         ]
+        },
+        {
+         "Fn::Join": [
+          "",
+          [
+           {
+            "Fn::GetAtt": [
+             "CallerCodeBucketFB907A2B",
+             "Arn"
+            ]
+           },
+           "/*"
+          ]
+         ]
+        }
+       ]
+      },
+      {
+       "Action": [
+        "s3:GetObject",
+        "s3:GetObjectVersion"
+       ],
+       "Condition": {
+        "StringEquals": {
+         "aws:SourceAccount": {
+          "Ref": "AWS::AccountId"
+         }
+        },
+        "ArnLike": {
+         "aws:SourceArn": {
+          "Fn::Join": [
+           "",
+           [
+            "arn:",
+            {
+             "Ref": "AWS::Partition"
+            },
+            ":lambda:",
+            {
+             "Ref": "AWS::Region"
+            },
+            ":",
+            {
+             "Ref": "AWS::AccountId"
+            },
+            ":web-function/WebFunctionStagesetStackSpecificD983D53C/revision/*"
+           ]
+          ]
+         }
+        }
+       },
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       },
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "CallerCodeBucketFB907A2B",
+            "Arn"
+           ]
+          },
+          "/webfunctions/web-function/WebFunctionStagedAssetStackSpecificD983D53C/*"
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    }
+   }
+  },
+  "CallerCodeBucketAutoDeleteObjectsCustomResource7C6FC143": {
+   "Type": "Custom::S3AutoDeleteObjects",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3AutoDeleteObjectsCustomResourceProviderHandler9D90184F",
+      "Arn"
+     ]
+    },
+    "BucketName": {
+     "Ref": "CallerCodeBucketFB907A2B"
+    }
+   },
+   "DependsOn": [
+    "CallerCodeBucketPolicy2C433922"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "SpecificServiceRole381077C9": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   },
+   "DependsOn": [
+    "CallerCodeBucketPolicy2C433922"
+   ]
+  },
+  "SpecificCodeCopy8a875a7aD278F5D7": {
+   "Type": "Custom::S3ObjectCopy",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f8D1137DB",
+      "Arn"
+     ]
+    },
+    "SourceBucketName": {
+     "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+    },
+    "SourceObjectKey": "a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a.zip",
+    "DestinationBucketName": {
+     "Ref": "CallerCodeBucketFB907A2B"
+    },
+    "DestinationKeyPrefix": "webfunctions/web-function/WebFunctionStagedAssetStackSpecificD983D53C/",
+    "ContentHash": "a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a",
+    "Configuration": {
+     "Properties": {
+      "BuildConfig": {
+       "RuntimeConfig": {
+        "Runtime": "ea70e0b0f76ff72b61a06c9d0f7ca9ad"
+       }
+      },
+      "FunctionName": {
+       "Ref": "SpecificFunction2B9945D8"
+      },
+      "ServiceConfig": {
+       "ExecutionRoleArn": {
+        "Fn::GetAtt": [
+         "SpecificServiceRole381077C9",
+         "Arn"
+        ]
+       },
+       "TelemetryConfig": {
+        "LoggingConfig": {
+         "LogGroup": {
+          "Ref": "SpecificLogGroup92FAE761"
+         }
+        }
+       },
+       "TimeoutSeconds": 30
+      }
+     },
+     "References": []
+    }
+   },
+   "DependsOn": [
+    "CallerCodeBucketPolicy2C433922"
+   ],
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "SpecificLogGroup92FAE761": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731
+   },
+   "DependsOn": [
+    "CallerCodeBucketPolicy2C433922"
+   ],
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "SpecificFunction2B9945D8": {
+   "Type": "AWS::Lambda::WebFunction",
+   "Properties": {
+    "FunctionName": "WebFunctionStagesetStackSpecificD983D53C"
+   },
+   "DependsOn": [
+    "CallerCodeBucketPolicy2C433922"
+   ]
+  },
+  "SpecificRevisionF768306C": {
+   "Type": "AWS::Lambda::WebFunctionRevision",
+   "Properties": {
+    "BuildConfig": {
+     "CodeConfig": {
+      "S3Object": {
+       "Bucket": {
+        "Fn::GetAtt": [
+         "SpecificCodeCopy8a875a7aD278F5D7",
+         "Bucket"
+        ]
+       },
+       "Key": {
+        "Fn::GetAtt": [
+         "SpecificCodeCopy8a875a7aD278F5D7",
+         "Key"
+        ]
+       },
+       "VersionId": {
+        "Fn::GetAtt": [
+         "SpecificCodeCopy8a875a7aD278F5D7",
+         "VersionId"
+        ]
+       }
+      }
+     },
+     "RuntimeConfig": {
+      "Runtime": "nodejs24.x"
+     }
+    },
+    "FunctionName": {
+     "Ref": "SpecificFunction2B9945D8"
+    },
+    "ServiceConfig": {
+     "ExecutionRoleArn": {
+      "Fn::GetAtt": [
+       "SpecificServiceRole381077C9",
+       "Arn"
+      ]
+     },
+     "TelemetryConfig": {
+      "LoggingConfig": {
+       "LogGroup": {
+        "Ref": "SpecificLogGroup92FAE761"
+       }
+      }
+     },
+     "TimeoutSeconds": 30
+    }
+   },
+   "DependsOn": [
+    "CallerCodeBucketPolicy2C433922",
+    "SpecificFunction2B9945D8"
+   ]
+  },
+  "SpecificEndpoint6806C68C": {
+   "Type": "AWS::Lambda::WebFunctionEndpoint",
+   "Properties": {
+    "AuthType": "IamAuth",
+    "EndpointName": "prod",
+    "EndpointType": "HomeRegion",
+    "FunctionName": {
+     "Fn::GetAtt": [
+      "SpecificFunction2B9945D8",
+      "FunctionArn"
+     ]
+    },
+    "RevisionWeights": [
+     {
+      "RevisionId": {
+       "Fn::GetAtt": [
+        "SpecificRevisionF768306C",
+        "RevisionId"
+       ]
+      },
+      "Weight": 100
+     }
+    ]
+   },
+   "DependsOn": [
+    "CallerCodeBucketPolicy2C433922",
+    "SpecificFunction2B9945D8",
+    "SpecificRevisionF768306C"
+   ]
+  },
+  "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f0A314486": {
+   "Type": "AWS::Logs::LogGroup",
+   "Properties": {
+    "RetentionInDays": 731
+   },
+   "UpdateReplacePolicy": "Retain",
+   "DeletionPolicy": "Retain"
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRole0A9D2289": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Join": [
+       "",
+       [
+        "arn:",
+        {
+         "Ref": "AWS::Partition"
+        },
+        ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+       ]
+      ]
+     }
+    ]
+   }
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRoleDefaultPolicyCCD65154": {
+   "Type": "AWS::IAM::Policy",
+   "Properties": {
+    "PolicyDocument": {
+     "Statement": [
+      {
+       "Action": [
+        "s3:GetObject",
+        "s3:GetObjectVersion"
+       ],
+       "Effect": "Allow",
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          "arn:",
+          {
+           "Ref": "AWS::Partition"
+          },
+          ":s3:::",
+          {
+           "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+          },
+          "/*"
+         ]
+        ]
+       }
+      },
+      {
+       "Action": [
+        "s3:Abort*",
+        "s3:DeleteObject*",
+        "s3:PutObject",
+        "s3:PutObjectLegalHold",
+        "s3:PutObjectRetention",
+        "s3:PutObjectTagging",
+        "s3:PutObjectVersionTagging"
+       ],
+       "Effect": "Allow",
+       "Resource": {
+        "Fn::Join": [
+         "",
+         [
+          {
+           "Fn::GetAtt": [
+            "CallerCodeBucketFB907A2B",
+            "Arn"
+           ]
+          },
+          "/webfunctions/web-function/*"
+         ]
+        ]
+       }
+      }
+     ],
+     "Version": "2012-10-17"
+    },
+    "PolicyName": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRoleDefaultPolicyCCD65154",
+    "Roles": [
+     {
+      "Ref": "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRole0A9D2289"
+     }
+    ]
+   }
+  },
+  "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f8D1137DB": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip"
+    },
+    "Handler": "index.handler",
+    "LoggingConfig": {
+     "LogGroup": {
+      "Ref": "S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f0A314486"
+     }
+    },
+    "Role": {
+     "Fn::GetAtt": [
+      "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRole0A9D2289",
+      "Arn"
+     ]
+    },
+    "Runtime": "nodejs24.x",
+    "Timeout": 900
+   },
+   "DependsOn": [
+    "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRoleDefaultPolicyCCD65154",
+    "CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRole0A9D2289"
+   ]
+  }
+ },
+ "Outputs": {
+  "ExportsOutputFnGetAttAutomaticEndpointC59D3C8ADomainName500D3673": {
+   "Value": {
+    "Fn::GetAtt": [
+     "AutomaticEndpointC59D3C8A",
+     "DomainName"
+    ]
+   },
+   "Export": {
+    "Name": "WebFunctionStagedAssetStack:ExportsOutputFnGetAttAutomaticEndpointC59D3C8ADomainName500D3673"
+   }
+  },
+  "ExportsOutputFnGetAttAutomaticSecondEndpointA57E8247DomainName2FE58DFC": {
+   "Value": {
+    "Fn::GetAtt": [
+     "AutomaticSecondEndpointA57E8247",
+     "DomainName"
+    ]
+   },
+   "Export": {
+    "Name": "WebFunctionStagedAssetStack:ExportsOutputFnGetAttAutomaticSecondEndpointA57E8247DomainName2FE58DFC"
+   }
+  },
+  "ExportsOutputFnGetAttSpecificEndpoint6806C68CDomainNameB4A7615B": {
+   "Value": {
+    "Fn::GetAtt": [
+     "SpecificEndpoint6806C68C",
+     "DomainName"
+    ]
+   },
+   "Export": {
+    "Name": "WebFunctionStagedAssetStack:ExportsOutputFnGetAttSpecificEndpoint6806C68CDomainNameB4A7615B"
+   }
+  }
+ },
+ "Parameters": {
+  "BootstrapVersion": {
+   "Type": "AWS::SSM::Parameter::Value",
+   "Default": "/cdk-bootstrap/hnb659fds/version",
+   "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
+  }
+ },
+ "Rules": {
+  "CheckBootstrapVersion": {
+   "Assertions": [
+    {
+     "Assert": {
+      "Fn::Not": [
+       {
+        "Fn::Contains": [
+         [
+          "1",
+          "2",
+          "3",
+          "4",
+          "5"
+         ],
+         {
+          "Ref": "BootstrapVersion"
+         }
+        ]
+       }
+      ]
+     },
+     "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
+    }
+   ]
+  }
+ }
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.assets.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.assets.json
new file mode 100644
index 0000000000000..661f764ef1643
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.assets.json
@@ -0,0 +1,33 @@
+{
+  "version": "55.0.0",
+  "files": {
+    "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57": {
+      "source": {
+        "path": "asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle",
+        "packaging": "zip"
+      },
+      "destinations": {
+        "current_account-current_region-d3646850": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    },
+    "49f7db91eb25673d4d0a81bd3537fc1b5213ff58b3be731b1fe9390b302c5141": {
+      "displayName": "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5 Template",
+      "source": {
+        "path": "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.template.json",
+        "packaging": "file"
+      },
+      "destinations": {
+        "current_account-current_region-37ad7dee": {
+          "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
+          "objectKey": "49f7db91eb25673d4d0a81bd3537fc1b5213ff58b3be731b1fe9390b302c5141.json",
+          "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
+        }
+      }
+    }
+  },
+  "dockerImages": {}
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.metadata.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.metadata.json
new file mode 100644
index 0000000000000..90b7729cbe006
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.metadata.json
@@ -0,0 +1,128 @@
+{
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert": [
+    {
+      "type": "aws:cdk:warning",
+      "data": "No cross-stack-reference strength configured, defaulting to \"strong\". We recommend you set feature flag \"@aws-cdk/core:defaultCrossStackReferences\" to \"both\", then deploy everywhere, then set it to \"weak\". Alternatively, set it to \"strong\" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength) [ack: @aws-cdk/core:crossStackReferencesDefaultStrong]",
+      "trace": [
+        "Annotations.addMessage (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:244:29)",
+        "Annotations.addWarningV2 (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/annotations.js:113:18)",
+        "resolveValue (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:215:54)",
+        "resolveReferencesInElements (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:139:30)",
+        "resolveReferences (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/refs.js:124:5)",
+        "prepareApp (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/prepare-app.js:35:36)",
+        "synthesize (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/private/synthesis.js:72:36)",
+        "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/stage.js:230:96)",
+        "App.synth (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:231:27)",
+        "process. (/Users/licjun/workplace/SourceCode/licjun-code/aws-cdk/packages/aws-cdk-lib/core/lib/app.js:178:51)",
+        "Object.onceWrapper (node:events:634:26)",
+        "process.emit (node:events:519:28)"
+      ]
+    },
+    {
+      "type": "aws:cdk:templateFile",
+      "data": "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.template.json"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/BootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "BootstrapVersion"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/CheckBootstrapVersion": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "CheckBootstrapVersion"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCallf5247841c099f14e599f1096f222023a/Default": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCallf5247841c099f14e599f1096f222023a/AssertionResults": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AssertionResultsHttpApiCallf5247841c099f14e599f1096f222023a"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594/Default": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594/AssertionResults": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AssertionResultsHttpApiCall78edc3d6d5268ebc8bb6e483a00e2594"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall2b2e3be73503121aacc94303204a9ff2/Default": [
+    {
+      "type": "aws:cdk:analytics:construct",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    },
+    {
+      "type": "aws:cdk:analytics:method",
+      "data": "*"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall2b2e3be73503121aacc94303204a9ff2/AssertionResults": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "AssertionResultsHttpApiCall2b2e3be73503121aacc94303204a9ff2"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCallf5247841c099f14e599f1096f222023a/Default/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "HttpApiCallf5247841c099f14e599f1096f222023a"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594/Default/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594"
+    }
+  ],
+  "/WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall2b2e3be73503121aacc94303204a9ff2/Default/Default": [
+    {
+      "type": "aws:cdk:logicalId",
+      "data": "HttpApiCall2b2e3be73503121aacc94303204a9ff2"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.template.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.template.json
new file mode 100644
index 0000000000000..961d3ea543928
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.template.json
@@ -0,0 +1,200 @@
+{
+ "Resources": {
+  "HttpApiCallf5247841c099f14e599f1096f222023a": {
+   "Type": "Custom::DeployAssert@HttpCall",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F",
+      "Arn"
+     ]
+    },
+    "parameters": {
+     "url": {
+      "Fn::Join": [
+       "",
+       [
+        "https://",
+        {
+         "Fn::ImportValue": "WebFunctionStagedAssetStack:ExportsOutputFnGetAttAutomaticEndpointC59D3C8ADomainName500D3673"
+        },
+        "/"
+       ]
+      ]
+     }
+    },
+    "expected": "{\"$ObjectLike\":{\"status\":403}}",
+    "flattenResponse": "false",
+    "salt": "1793234696971"
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73": {
+   "Type": "AWS::IAM::Role",
+   "Properties": {
+    "AssumeRolePolicyDocument": {
+     "Version": "2012-10-17",
+     "Statement": [
+      {
+       "Action": "sts:AssumeRole",
+       "Effect": "Allow",
+       "Principal": {
+        "Service": "lambda.amazonaws.com"
+       }
+      }
+     ]
+    },
+    "ManagedPolicyArns": [
+     {
+      "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
+     }
+    ]
+   }
+  },
+  "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F": {
+   "Type": "AWS::Lambda::Function",
+   "Properties": {
+    "Runtime": "nodejs24.x",
+    "Code": {
+     "S3Bucket": {
+      "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
+     },
+     "S3Key": "51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.zip"
+    },
+    "Timeout": 120,
+    "Handler": "index.handler",
+    "Role": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81Role37ABCE73",
+      "Arn"
+     ]
+    },
+    "LoggingConfig": {
+     "LogFormat": "JSON",
+     "ApplicationLogLevel": "FATAL"
+    }
+   }
+  },
+  "HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594": {
+   "Type": "Custom::DeployAssert@HttpCall",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F",
+      "Arn"
+     ]
+    },
+    "parameters": {
+     "url": {
+      "Fn::Join": [
+       "",
+       [
+        "https://",
+        {
+         "Fn::ImportValue": "WebFunctionStagedAssetStack:ExportsOutputFnGetAttAutomaticSecondEndpointA57E8247DomainName2FE58DFC"
+        },
+        "/"
+       ]
+      ]
+     }
+    },
+    "expected": "{\"$ObjectLike\":{\"status\":403}}",
+    "flattenResponse": "false",
+    "salt": "1793234696971"
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  },
+  "HttpApiCall2b2e3be73503121aacc94303204a9ff2": {
+   "Type": "Custom::DeployAssert@HttpCall",
+   "Properties": {
+    "ServiceToken": {
+     "Fn::GetAtt": [
+      "SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F",
+      "Arn"
+     ]
+    },
+    "parameters": {
+     "url": {
+      "Fn::Join": [
+       "",
+       [
+        "https://",
+        {
+         "Fn::ImportValue": "WebFunctionStagedAssetStack:ExportsOutputFnGetAttSpecificEndpoint6806C68CDomainNameB4A7615B"
+        },
+        "/"
+       ]
+      ]
+     }
+    },
+    "expected": "{\"$ObjectLike\":{\"status\":403}}",
+    "flattenResponse": "false",
+    "salt": "1793234696971"
+   },
+   "UpdateReplacePolicy": "Delete",
+   "DeletionPolicy": "Delete"
+  }
+ },
+ "Outputs": {
+  "AssertionResultsHttpApiCallf5247841c099f14e599f1096f222023a": {
+   "Value": {
+    "Fn::GetAtt": [
+     "HttpApiCallf5247841c099f14e599f1096f222023a",
+     "assertion"
+    ]
+   }
+  },
+  "AssertionResultsHttpApiCall78edc3d6d5268ebc8bb6e483a00e2594": {
+   "Value": {
+    "Fn::GetAtt": [
+     "HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594",
+     "assertion"
+    ]
+   }
+  },
+  "AssertionResultsHttpApiCall2b2e3be73503121aacc94303204a9ff2": {
+   "Value": {
+    "Fn::GetAtt": [
+     "HttpApiCall2b2e3be73503121aacc94303204a9ff2",
+     "assertion"
+    ]
+   }
+  }
+ },
+ "Parameters": {
+  "BootstrapVersion": {
+   "Type": "AWS::SSM::Parameter::Value",
+   "Default": "/cdk-bootstrap/hnb659fds/version",
+   "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
+  }
+ },
+ "Rules": {
+  "CheckBootstrapVersion": {
+   "Assertions": [
+    {
+     "Assert": {
+      "Fn::Not": [
+       {
+        "Fn::Contains": [
+         [
+          "1",
+          "2",
+          "3",
+          "4",
+          "5"
+         ],
+         {
+          "Ref": "BootstrapVersion"
+         }
+        ]
+       }
+      ]
+     },
+     "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
+    }
+   ]
+  }
+ }
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js
new file mode 100644
index 0000000000000..1002ba018e9fb
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.44e9c4d7a5d3fd2d677e1a7e416b2b56f6b0104bd5eff9cac5557b4c65a9dc61/index.js
@@ -0,0 +1 @@
+"use strict";var f=Object.create;var i=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var A=(t,e)=>{for(var o in e)i(t,o,{get:e[o],enumerable:!0})},d=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of C(e))!P.call(t,s)&&s!==o&&i(t,s,{get:()=>e[s],enumerable:!(r=I(e,s))||r.enumerable});return t};var l=(t,e,o)=>(o=t!=null?f(w(t)):{},d(e||!t||!t.__esModule?i(o,"default",{value:t,enumerable:!0}):o,t)),B=t=>d(i({},"__esModule",{value:!0}),t);var q={};A(q,{autoDeleteHandler:()=>S,handler:()=>H});module.exports=B(q);var h=require("@aws-sdk/client-s3");var y=l(require("https")),m=l(require("url")),a={sendHttpRequest:D,log:T,includeStackTraces:!0,userHandlerIndex:"./index"},p="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",L="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function R(t){return async(e,o)=>{let r={...e,ResponseURL:"..."};if(a.log(JSON.stringify(r,void 0,2)),e.RequestType==="Delete"&&e.PhysicalResourceId===p){a.log("ignoring DELETE event caused by a failed CREATE event"),await u("SUCCESS",e);return}try{let s=await t(r,o),n=k(e,s);await u("SUCCESS",n)}catch(s){let n={...e,Reason:a.includeStackTraces?s.stack:s.message};n.PhysicalResourceId||(e.RequestType==="Create"?(a.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),n.PhysicalResourceId=p):a.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(e)}`)),await u("FAILED",n)}}}function k(t,e={}){let o=e.PhysicalResourceId??t.PhysicalResourceId??t.RequestId;if(t.RequestType==="Delete"&&o!==t.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${t.PhysicalResourceId}" to "${e.PhysicalResourceId}" during deletion`);return{...t,...e,PhysicalResourceId:o}}async function u(t,e){let o={Status:t,Reason:e.Reason??t,StackId:e.StackId,RequestId:e.RequestId,PhysicalResourceId:e.PhysicalResourceId||L,LogicalResourceId:e.LogicalResourceId,NoEcho:e.NoEcho,Data:e.Data},r=m.parse(e.ResponseURL),s=`${r.protocol}//${r.hostname}/${r.pathname}?***`;a.log("submit response to cloudformation",s,o);let n=JSON.stringify(o),E={hostname:r.hostname,path:r.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(n,"utf8")}};await O({attempts:5,sleep:1e3},a.sendHttpRequest)(E,n)}async function D(t,e){return new Promise((o,r)=>{try{let s=y.request(t,n=>{n.resume(),!n.statusCode||n.statusCode>=400?r(new Error(`Unsuccessful HTTP response: ${n.statusCode}`)):o()});s.on("error",r),s.write(e),s.end()}catch(s){r(s)}})}function T(t,...e){console.log(t,...e)}function O(t,e){return async(...o)=>{let r=t.attempts,s=t.sleep;for(;;)try{return await e(...o)}catch(n){if(r--<=0)throw n;await b(Math.floor(Math.random()*s)),s*=2}}}async function b(t){return new Promise(e=>setTimeout(e,t))}var g="aws-cdk:auto-delete-objects",x=JSON.stringify({Version:"2012-10-17",Statement:[]}),c=new h.S3({}),H=R(S);async function S(t){switch(t.RequestType){case"Create":return;case"Update":return{PhysicalResourceId:(await F(t)).PhysicalResourceId};case"Delete":return N(t.ResourceProperties?.BucketName)}}async function F(t){let e=t,o=e.OldResourceProperties?.BucketName;return{PhysicalResourceId:e.ResourceProperties?.BucketName??o}}async function _(t){try{let e=(await c.getBucketPolicy({Bucket:t}))?.Policy??x,o=JSON.parse(e);o.Statement.push({Principal:"*",Effect:"Deny",Action:["s3:PutObject"],Resource:[`arn:aws:s3:::${t}/*`]}),await c.putBucketPolicy({Bucket:t,Policy:JSON.stringify(o)})}catch(e){if(e.name==="NoSuchBucket")throw e;console.log(`Could not set new object deny policy on bucket '${t}' prior to deletion.`)}}async function U(t){let e;do{e=await c.listObjectVersions({Bucket:t});let o=[...e.Versions??[],...e.DeleteMarkers??[]];if(o.length===0)return;let r=o.map(s=>({Key:s.Key,VersionId:s.VersionId}));await c.deleteObjects({Bucket:t,Delete:{Objects:r}})}while(e?.IsTruncated)}async function N(t){if(!t)throw new Error("No BucketName was provided.");try{if(!await W(t)){console.log(`Bucket does not have '${g}' tag, skipping cleaning.`);return}await _(t),await U(t)}catch(e){if(e.name==="NoSuchBucket"){console.log(`Bucket '${t}' does not exist.`);return}throw e}}async function W(t){return(await c.getBucketTagging({Bucket:t})).TagSet?.some(o=>o.Key===g&&o.Value==="true")}0&&(module.exports={autoDeleteHandler,handler});
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js
new file mode 100644
index 0000000000000..44fb7e8727ea5
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.51b944905f939c72f2e3f1b195abdd28b736d035fbd71eed92fb900f3cb95f57.bundle/index.js
@@ -0,0 +1,117765 @@
+"use strict";
+var __create = Object.create;
+var __defProp = Object.defineProperty;
+var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+var __getOwnPropNames = Object.getOwnPropertyNames;
+var __getProtoOf = Object.getPrototypeOf;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
+var __typeError = (msg) => {
+  throw TypeError(msg);
+};
+var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
+var __esm = (fn, res, err) => function __init() {
+  if (err) throw err[0];
+  try {
+    return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
+  } catch (e) {
+    throw err = [e], e;
+  }
+};
+var __commonJS = (cb, mod) => function __require() {
+  try {
+    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
+  } catch (e) {
+    throw mod = 0, e;
+  }
+};
+var __export = (target, all) => {
+  for (var name in all)
+    __defProp(target, name, { get: all[name], enumerable: true });
+};
+var __copyProps = (to, from, except, desc) => {
+  if (from && typeof from === "object" || typeof from === "function") {
+    for (let key of __getOwnPropNames(from))
+      if (!__hasOwnProp.call(to, key) && key !== except)
+        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
+  }
+  return to;
+};
+var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
+var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
+  // If the importer is in node compatibility mode or this is not an ESM
+  // file that has been converted to a CommonJS file using a Babel-
+  // compatible transform (i.e. "__esModule" has not been set), then set
+  // "default" to the CommonJS "module.exports" for node compatibility.
+  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
+  mod
+));
+var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
+var __decoratorStart = (base) => [, , , __create(base?.[__knownSymbol("metadata")] ?? null)];
+var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
+var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn;
+var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null)) });
+var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]);
+var __runInitializers = (array, flags, self2, value) => {
+  for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self2) : value = fns[i].call(self2, value);
+  return value;
+};
+var __decorateElement = (array, flags, name, decorators, target, extra) => {
+  var fn, it, done, ctx, access, k = flags & 7, s = !!(flags & 8), p = !!(flags & 16);
+  var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0, key = __decoratorStrings[k + 5];
+  var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
+  var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [name]() {
+    return __privateGet(this, extra);
+  }, set [name](x) {
+    return __privateSet(this, extra, x);
+  } }, name));
+  k ? p && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name(target, name);
+  for (var i = decorators.length - 1; i >= 0; i--) {
+    ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
+    if (k) {
+      ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) => name in x };
+      if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];
+      if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y;
+    }
+    it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;
+    if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it);
+    else if (typeof it !== "object" || it === null) __typeError("Object expected");
+    else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);
+  }
+  return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;
+};
+var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
+var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
+var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the "in" operator on this value') : member.has(obj);
+var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
+var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
+var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
+var __using = (stack, value, async) => {
+  if (value != null) {
+    if (typeof value !== "object" && typeof value !== "function") __typeError("Object expected");
+    var dispose, inner;
+    if (async) dispose = value[__knownSymbol("asyncDispose")];
+    if (dispose === void 0) {
+      dispose = value[__knownSymbol("dispose")];
+      if (async) inner = dispose;
+    }
+    if (typeof dispose !== "function") __typeError("Object not disposable");
+    if (inner) dispose = function() {
+      try {
+        inner.call(this);
+      } catch (e) {
+        return Promise.reject(e);
+      }
+    };
+    stack.push([async, dispose, value]);
+  } else if (async) {
+    stack.push([async]);
+  }
+  return value;
+};
+var __callDispose = (stack, error, hasError) => {
+  var E = typeof SuppressedError === "function" ? SuppressedError : function(e, s, m, _) {
+    return _ = Error(m), _.name = "SuppressedError", _.error = e, _.suppressed = s, _;
+  };
+  var fail = (e) => error = hasError ? new E(e, error, "An error was suppressed during disposal") : (hasError = true, e);
+  var next = (it) => {
+    while (it = stack.pop()) {
+      try {
+        var result = it[1] && it[1].call(it[2]);
+        if (it[0]) return Promise.resolve(result).then(next, (e) => (fail(e), next()));
+      } catch (e) {
+        fail(e);
+      }
+    }
+    if (hasError) throw error;
+  };
+  return next();
+};
+
+// ../../aws-cdk-lib/assertions/lib/matcher.ts
+var matcher_exports = {};
+__export(matcher_exports, {
+  MatchResult: () => MatchResult,
+  Matcher: () => Matcher
+});
+function* range(n) {
+  for (let i = 0; i < n; i++) {
+    yield i;
+  }
+}
+function* enumFirst(xs) {
+  let first = true;
+  for (const x of xs) {
+    yield [first, x];
+    first = false;
+  }
+}
+var Matcher, MatchResult;
+var init_matcher = __esm({
+  "../../aws-cdk-lib/assertions/lib/matcher.ts"() {
+    "use strict";
+    Matcher = class _Matcher {
+      /**
+       * Check whether the provided object is a subtype of the `IMatcher`.
+       */
+      static isMatcher(x) {
+        return x && x instanceof _Matcher;
+      }
+    };
+    MatchResult = class {
+      /**
+       * The target for which this result was generated.
+       */
+      target;
+      failuresHere = /* @__PURE__ */ new Map();
+      captures = /* @__PURE__ */ new Map();
+      finalized = false;
+      innerMatchFailures = /* @__PURE__ */ new Map();
+      _hasFailed = false;
+      _failCount = 0;
+      _cost = 0;
+      constructor(target) {
+        this.target = target;
+      }
+      /**
+       * DEPRECATED
+       * @deprecated use recordFailure()
+       */
+      push(matcher, path23, message) {
+        return this.recordFailure({ matcher, path: path23, message });
+      }
+      /**
+       * Record a new failure into this result at a specific path.
+       */
+      recordFailure(failure) {
+        const failKey = failure.path.join(".");
+        let list = this.failuresHere.get(failKey);
+        if (!list) {
+          list = [];
+          this.failuresHere.set(failKey, list);
+        }
+        this._failCount += 1;
+        this._cost += failure.cost ?? 1;
+        list.push(failure);
+        this._hasFailed = true;
+        return this;
+      }
+      /** Whether the match is a success */
+      get isSuccess() {
+        return !this._hasFailed;
+      }
+      /** Does the result contain any failures. If not, the result is a success */
+      hasFailed() {
+        return this._hasFailed;
+      }
+      /** The number of failures */
+      get failCount() {
+        return this._failCount;
+      }
+      /** The cost of the failures so far */
+      get failCost() {
+        return this._cost;
+      }
+      /**
+       * Compose the results of a previous match as a subtree.
+       * @param id the id of the parent tree.
+       */
+      compose(id, inner) {
+        if (inner.hasFailed()) {
+          this._hasFailed = true;
+          this._failCount += inner.failCount;
+          this._cost += inner._cost;
+          this.innerMatchFailures.set(id, inner);
+        }
+        inner.captures.forEach((vals, capture) => {
+          vals.forEach((value) => this.recordCapture({ capture, value }));
+        });
+        return this;
+      }
+      /**
+       * Prepare the result to be analyzed.
+       * This API *must* be called prior to analyzing these results.
+       */
+      finished() {
+        if (this.finalized) {
+          return this;
+        }
+        if (this.failCount === 0) {
+          this.captures.forEach((vals, cap) => cap._captured.push(...vals));
+        }
+        this.finalized = true;
+        return this;
+      }
+      /**
+       * Render the failed match in a presentable way
+       *
+       * Prefer using `renderMismatch` over this method. It is left for backwards
+       * compatibility for test suites that expect it, but `renderMismatch()` will
+       * produce better output.
+       */
+      toHumanStrings() {
+        const failures = new Array();
+        recurse(this, []);
+        return failures.map((r) => {
+          const loc = r.path.length === 0 ? "" : ` at /${r.path.join("/")}`;
+          return "" + r.message + loc + ` (using ${r.matcher.name} matcher)`;
+        });
+        function recurse(x, prefix) {
+          for (const fail of Array.from(x.failuresHere.values()).flat()) {
+            failures.push({
+              matcher: fail.matcher,
+              message: fail.message,
+              path: [...prefix, ...fail.path]
+            });
+          }
+          for (const [key, inner] of x.innerMatchFailures.entries()) {
+            recurse(inner, [...prefix, key]);
+          }
+        }
+      }
+      /**
+       * Do a deep render of the match result, showing the structure mismatches in context
+       */
+      renderMismatch() {
+        if (!this.hasFailed()) {
+          return "";
+        }
+        const parts = new Array();
+        const indents = new Array();
+        emitFailures(this, "");
+        recurse(this);
+        return moveMarkersToFront(parts.join("").trimEnd());
+        function emit(x) {
+          if (x === void 0) {
+            debugger;
+          }
+          parts.push(x.replace(/\n/g, `
+${indents.join("")}`));
+        }
+        function emitFailures(r, path23, scrapSet) {
+          for (const fail of r.failuresHere.get(path23) ?? []) {
+            emit(`!! ${fail.message}
+`);
+          }
+          scrapSet?.delete(path23);
+        }
+        function recurse(r) {
+          const remainingFailures = new Set(Array.from(r.failuresHere.keys()).filter((x) => x !== ""));
+          if (Array.isArray(r.target)) {
+            indents.push("  ");
+            emit("[\n");
+            for (const [first, i] of enumFirst(range(r.target.length))) {
+              if (!first) {
+                emit(",\n");
+              }
+              emitFailures(r, `${i}`, remainingFailures);
+              const innerMatcher = r.innerMatchFailures.get(`${i}`);
+              if (innerMatcher) {
+                emitFailures(innerMatcher, "");
+                recurseComparingValues(innerMatcher, r.target[i]);
+              } else {
+                emit(renderAbridged(r.target[i]));
+              }
+            }
+            emitRemaining();
+            indents.pop();
+            emit("\n]");
+            return;
+          }
+          if (r.target && typeof r.target === "object") {
+            indents.push("  ");
+            emit("{\n");
+            const keys = Array.from(/* @__PURE__ */ new Set([
+              ...Object.keys(r.target),
+              ...Array.from(remainingFailures)
+            ])).sort();
+            for (const [first, key] of enumFirst(keys)) {
+              if (!first) {
+                emit(",\n");
+              }
+              emitFailures(r, key, remainingFailures);
+              const innerMatcher = r.innerMatchFailures.get(key);
+              if (innerMatcher) {
+                emitFailures(innerMatcher, "");
+                emit(`${jsonify(key)}: `);
+                recurseComparingValues(innerMatcher, r.target[key]);
+              } else {
+                emit(`${jsonify(key)}: `);
+                emit(renderAbridged(r.target[key]));
+              }
+            }
+            emitRemaining();
+            indents.pop();
+            emit("\n}");
+            return;
+          }
+          emitRemaining();
+          emit(jsonify(r.target));
+          function emitRemaining() {
+            if (remainingFailures.size > 0) {
+              emit("\n");
+            }
+            for (const key of remainingFailures) {
+              emitFailures(r, key);
+            }
+          }
+        }
+        function recurseComparingValues(inner, actualValue) {
+          if (inner.target === actualValue) {
+            return recurse(inner);
+          }
+          emit(renderAbridged(actualValue));
+          emit(" <*> ");
+          recurse(inner);
+        }
+        function renderAbridged(x) {
+          if (Array.isArray(x)) {
+            switch (x.length) {
+              case 0:
+                return "[]";
+              case 1:
+                return `[ ${renderAbridged(x[0])} ]`;
+              case 2:
+                if (x.every((e) => ["number", "boolean", "string"].includes(typeof e))) {
+                  return `[ ${x.map(renderAbridged).join(", ")} ]`;
+                }
+                return "[ ... ]";
+              default:
+                return "[ ... ]";
+            }
+          }
+          if (x && typeof x === "object") {
+            const keys = Object.keys(x);
+            switch (keys.length) {
+              case 0:
+                return "{}";
+              case 1:
+                return `{ ${JSON.stringify(keys[0])}: ${renderAbridged(x[keys[0]])} }`;
+              default:
+                return "{ ... }";
+            }
+          }
+          return jsonify(x);
+        }
+        function jsonify(x) {
+          return JSON.stringify(x) ?? "undefined";
+        }
+        function moveMarkersToFront(x) {
+          const re = /^(\s+)!!/gm;
+          return x.replace(re, (_, spaces) => `!!${spaces.substring(0, spaces.length - 2)}`);
+        }
+      }
+      /**
+       * Record a capture against in this match result.
+       */
+      recordCapture(options) {
+        let values = this.captures.get(options.capture);
+        if (values === void 0) {
+          values = [];
+        }
+        values.push(options.value);
+        this.captures.set(options.capture, values);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/error.ts
+var ASSERTION_ERROR_SYMBOL, AssertionError;
+var init_error = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/error.ts"() {
+    "use strict";
+    ASSERTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/assertions.AssertionError");
+    AssertionError = class _AssertionError extends Error {
+      #time;
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return this.#time;
+      }
+      get type() {
+        return "assertion";
+      }
+      constructor(msg) {
+        super(msg);
+        Object.setPrototypeOf(this, _AssertionError.prototype);
+        Object.defineProperty(this, ASSERTION_ERROR_SYMBOL, { value: true });
+        this.name = new.target.name;
+        this.#time = (/* @__PURE__ */ new Date()).toISOString();
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts
+var AbsentMatch;
+var init_absent = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/matchers/absent.ts"() {
+    "use strict";
+    init_matcher();
+    AbsentMatch = class extends Matcher {
+      constructor(name) {
+        super();
+        this.name = name;
+      }
+      name;
+      test(actual) {
+        const result = new MatchResult(actual);
+        if (actual !== void 0) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Received ${actual}, but key should be absent`
+          });
+        }
+        return result;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/sorting.ts
+function sortKeyComparator(keyFn) {
+  return (a, b) => {
+    const ak = keyFn(a);
+    const bk = keyFn(b);
+    for (let i = 0; i < ak.length && i < bk.length; i++) {
+      const av = ak[i];
+      const bv = bk[i];
+      let diff = 0;
+      if (typeof av === "number" && typeof bv === "number") {
+        diff = av - bv;
+      } else if (typeof av === "string" && typeof bv === "string") {
+        diff = av.localeCompare(bv);
+      }
+      if (diff !== 0) {
+        return diff;
+      }
+    }
+    return bk.length - ak.length;
+  };
+}
+var init_sorting = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/sorting.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts
+var SparseMatrix;
+var init_sparse_matrix = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/sparse-matrix.ts"() {
+    "use strict";
+    SparseMatrix = class {
+      matrix = /* @__PURE__ */ new Map();
+      get(row, col) {
+        return this.matrix.get(row)?.get(col);
+      }
+      row(row) {
+        return Array.from(this.matrix.get(row)?.entries() ?? []);
+      }
+      set(row, col, value) {
+        let r = this.matrix.get(row);
+        if (!r) {
+          r = /* @__PURE__ */ new Map();
+          this.matrix.set(row, r);
+        }
+        r.set(col, value);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/private/type.ts
+function getType(obj) {
+  return Array.isArray(obj) ? "array" : typeof obj;
+}
+var init_type = __esm({
+  "../../aws-cdk-lib/assertions/lib/private/type.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/match.ts
+var match_exports = {};
+__export(match_exports, {
+  Match: () => Match
+});
+var Match, LiteralMatch, ArrayMatch, ObjectMatch, SerializedJson, NotMatch, AnyMatch, StringLikeRegexpMatch;
+var init_match = __esm({
+  "../../aws-cdk-lib/assertions/lib/match.ts"() {
+    "use strict";
+    init_matcher();
+    init_error();
+    init_absent();
+    init_sorting();
+    init_sparse_matrix();
+    init_type();
+    Match = class {
+      /**
+       * Use this matcher in the place of a field's value, if the field must not be present.
+       */
+      static absent() {
+        return new AbsentMatch("absent");
+      }
+      /**
+       * Matches the specified pattern with the array found in the same relative path of the target.
+       * The set of elements (or matchers) must be in the same order as would be found.
+       * @param pattern the pattern to match
+       */
+      static arrayWith(pattern) {
+        return new ArrayMatch("arrayWith", pattern);
+      }
+      /**
+       * Matches the specified pattern with the array found in the same relative path of the target.
+       * The set of elements (or matchers) must match exactly and in order.
+       * @param pattern the pattern to match
+       */
+      static arrayEquals(pattern) {
+        return new ArrayMatch("arrayEquals", pattern, { subsequence: false });
+      }
+      /**
+       * Deep exact matching of the specified pattern to the target.
+       * @param pattern the pattern to match
+       */
+      static exact(pattern) {
+        return new LiteralMatch("exact", pattern, { partialObjects: false });
+      }
+      /**
+       * Matches the specified pattern to an object found in the same relative path of the target.
+       * The keys and their values (or matchers) must be present in the target but the target can be a superset.
+       * @param pattern the pattern to match
+       */
+      static objectLike(pattern) {
+        return new ObjectMatch("objectLike", pattern);
+      }
+      /**
+       * Matches the specified pattern to an object found in the same relative path of the target.
+       * The keys and their values (or matchers) must match exactly with the target.
+       * @param pattern the pattern to match
+       */
+      static objectEquals(pattern) {
+        return new ObjectMatch("objectEquals", pattern, { partial: false });
+      }
+      /**
+       * Matches any target which does NOT follow the specified pattern.
+       * @param pattern the pattern to NOT match
+       */
+      static not(pattern) {
+        return new NotMatch("not", pattern);
+      }
+      /**
+       * Matches any string-encoded JSON and applies the specified pattern after parsing it.
+       * @param pattern the pattern to match after parsing the encoded JSON.
+       */
+      static serializedJson(pattern) {
+        return new SerializedJson("serializedJson", pattern);
+      }
+      /**
+       * Matches any non-null value at the target.
+       */
+      static anyValue() {
+        return new AnyMatch("anyValue");
+      }
+      /**
+       * Matches targets according to a regular expression
+       */
+      static stringLikeRegexp(pattern) {
+        return new StringLikeRegexpMatch("stringLikeRegexp", pattern);
+      }
+    };
+    LiteralMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.partialObjects = options.partialObjects ?? false;
+        if (Matcher.isMatcher(this.pattern)) {
+          throw new AssertionError("LiteralMatch cannot directly contain another matcher. Remove the top-level matcher or nest it more deeply.");
+        }
+      }
+      name;
+      pattern;
+      partialObjects;
+      test(actual) {
+        if (Array.isArray(this.pattern)) {
+          return new ArrayMatch(this.name, this.pattern, { subsequence: false, partialObjects: this.partialObjects }).test(actual);
+        }
+        if (typeof this.pattern === "object") {
+          return new ObjectMatch(this.name, this.pattern, { partial: this.partialObjects }).test(actual);
+        }
+        const result = new MatchResult(actual);
+        if (typeof this.pattern !== typeof actual) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type ${typeof this.pattern} but received ${getType(actual)}`
+          });
+          return result;
+        }
+        if (actual !== this.pattern) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected ${this.pattern} but received ${actual}`
+          });
+        }
+        return result;
+      }
+    };
+    ArrayMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.subsequence = options.subsequence ?? true;
+        this.partialObjects = options.partialObjects ?? false;
+      }
+      name;
+      pattern;
+      subsequence;
+      partialObjects;
+      test(actual) {
+        if (!Array.isArray(actual)) {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type array but received ${getType(actual)}`
+          });
+        }
+        return this.subsequence ? this.testSubsequence(actual) : this.testFullArray(actual);
+      }
+      testFullArray(actual) {
+        const result = new MatchResult(actual);
+        let i = 0;
+        for (; i < this.pattern.length && i < actual.length; i++) {
+          const patternElement = this.pattern[i];
+          const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects });
+          const innerResult = matcher.test(actual[i]);
+          result.compose(`${i}`, innerResult);
+        }
+        if (i < this.pattern.length) {
+          result.recordFailure({
+            matcher: this,
+            message: `Not enough elements in array (expecting ${this.pattern.length}, got ${actual.length})`,
+            path: [`${i}`]
+          });
+        }
+        if (i < actual.length) {
+          result.recordFailure({
+            matcher: this,
+            message: `Too many elements in array (expecting ${this.pattern.length}, got ${actual.length})`,
+            path: [`${i}`]
+          });
+        }
+        return result;
+      }
+      testSubsequence(actual) {
+        const result = new MatchResult(actual);
+        let patternIdx = 0;
+        let actualIdx = 0;
+        const matches = new SparseMatrix();
+        while (patternIdx < this.pattern.length && actualIdx < actual.length) {
+          const patternElement = this.pattern[patternIdx];
+          const matcher = Matcher.isMatcher(patternElement) ? patternElement : new LiteralMatch(this.name, patternElement, { partialObjects: this.partialObjects });
+          const matcherName = matcher.name;
+          if (matcherName == "absent" || matcherName == "anyValue") {
+            throw new AssertionError(`The Matcher ${matcherName}() cannot be nested within arrayWith()`);
+          }
+          const innerResult = matcher.test(actual[actualIdx]);
+          matches.set(patternIdx, actualIdx, innerResult);
+          actualIdx++;
+          if (innerResult.isSuccess) {
+            result.compose(`${actualIdx}`, innerResult);
+            patternIdx++;
+          }
+        }
+        if (patternIdx < this.pattern.length) {
+          for (let spi = 0; spi < patternIdx; spi++) {
+            const foundMatch = matches.row(spi).find(([, r]) => r.isSuccess);
+            if (!foundMatch) {
+              continue;
+            }
+            const [index] = foundMatch;
+            result.compose(`${index}`, new MatchResult(actual[index]).recordFailure({
+              matcher: this,
+              message: `arrayWith pattern ${spi} matched here`,
+              path: [],
+              cost: 0
+              // This is an informational message so it would be unfair to assign it cost
+            }));
+          }
+          const failedMatches = matches.row(patternIdx);
+          failedMatches.sort(sortKeyComparator(([i, r]) => [r.failCost, i]));
+          if (failedMatches.length > 0) {
+            const [index, innerResult] = failedMatches[0];
+            result.recordFailure({
+              matcher: this,
+              message: `Could not match arrayWith pattern ${patternIdx}. This is the closest match`,
+              path: [`${index}`],
+              cost: 0
+              //  Informational message
+            });
+            result.compose(`${index}`, innerResult);
+          } else {
+            result.recordFailure({
+              matcher: this,
+              message: `Could not match arrayWith pattern ${patternIdx}. No more elements to try`,
+              path: [`${actual.length}`]
+            });
+          }
+        }
+        return result;
+      }
+    };
+    ObjectMatch = class extends Matcher {
+      constructor(name, pattern, options = {}) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+        this.partial = options.partial ?? true;
+      }
+      name;
+      pattern;
+      partial;
+      test(actual) {
+        if (typeof actual !== "object" || Array.isArray(actual)) {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected type object but received ${getType(actual)}`
+          });
+        }
+        const result = new MatchResult(actual);
+        if (!this.partial) {
+          for (const a of Object.keys(actual)) {
+            if (!(a in this.pattern)) {
+              result.recordFailure({
+                matcher: this,
+                path: [a],
+                message: `Unexpected key ${a}`
+              });
+            }
+          }
+        }
+        for (const [patternKey, patternVal] of Object.entries(this.pattern)) {
+          if (!(patternKey in actual) && !(patternVal instanceof AbsentMatch)) {
+            result.recordFailure({
+              matcher: this,
+              path: [patternKey],
+              message: `Missing key '${patternKey}'`
+            });
+            continue;
+          }
+          const matcher = Matcher.isMatcher(patternVal) ? patternVal : new LiteralMatch(this.name, patternVal, { partialObjects: this.partial });
+          const inner = matcher.test(actual[patternKey]);
+          result.compose(patternKey, inner);
+        }
+        return result;
+      }
+    };
+    SerializedJson = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        if (getType(actual) !== "string") {
+          return new MatchResult(actual).recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected JSON as a string but found ${getType(actual)}`
+          });
+        }
+        let parsed;
+        try {
+          parsed = JSON.parse(actual);
+        } catch (err) {
+          if (err instanceof SyntaxError) {
+            return new MatchResult(actual).recordFailure({
+              matcher: this,
+              path: [],
+              message: `Invalid JSON string: ${actual}`
+            });
+          } else {
+            throw err;
+          }
+        }
+        const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern);
+        const innerResult = matcher.test(parsed);
+        if (innerResult.hasFailed()) {
+          innerResult.recordFailure({
+            matcher: this,
+            path: [],
+            message: "Encoded JSON value does not match"
+          });
+        }
+        return innerResult;
+      }
+    };
+    NotMatch = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        const matcher = Matcher.isMatcher(this.pattern) ? this.pattern : new LiteralMatch(this.name, this.pattern);
+        const innerResult = matcher.test(actual);
+        const result = new MatchResult(actual);
+        if (innerResult.failCount === 0) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Found unexpected match: ${JSON.stringify(actual, void 0, 2)}`
+          });
+        }
+        return result;
+      }
+    };
+    AnyMatch = class extends Matcher {
+      constructor(name) {
+        super();
+        this.name = name;
+      }
+      name;
+      test(actual) {
+        const result = new MatchResult(actual);
+        if (actual == null) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: "Expected a value but found none"
+          });
+        }
+        return result;
+      }
+    };
+    StringLikeRegexpMatch = class extends Matcher {
+      constructor(name, pattern) {
+        super();
+        this.name = name;
+        this.pattern = pattern;
+      }
+      name;
+      pattern;
+      test(actual) {
+        const result = new MatchResult(actual);
+        const regex = new RegExp(this.pattern, "gm");
+        if (typeof actual !== "string") {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `Expected a string, but got '${typeof actual}'`
+          });
+        }
+        if (!regex.test(actual)) {
+          result.recordFailure({
+            matcher: this,
+            path: [],
+            message: `String '${actual}' did not match pattern '${this.pattern}'`
+          });
+        }
+        return result;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/literal-string.ts
+function lit(x) {
+  if (x.length !== 1) {
+    throw new AssumptionError("NotLiteral", `String literal may not contain any variables, got \`${x.join("${...}")}\``);
+  }
+  return x[0];
+}
+var init_literal_string = __esm({
+  "../../aws-cdk-lib/core/lib/private/literal-string.ts"() {
+    "use strict";
+    init_errors();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/runtime-info.ts
+function constructInfoFromConstruct(construct) {
+  const jsiiRuntimeInfo = Object.getPrototypeOf(construct).constructor[JSII_RUNTIME_SYMBOL];
+  if (typeof jsiiRuntimeInfo === "object" && jsiiRuntimeInfo !== null && typeof jsiiRuntimeInfo.fqn === "string" && typeof jsiiRuntimeInfo.version === "string") {
+    return {
+      fqn: jsiiRuntimeInfo.fqn,
+      version: jsiiRuntimeInfo.version
+    };
+  } else if (jsiiRuntimeInfo) {
+    throw new AssumptionError(lit`MalformedJsiiRuntimeInfo`, `malformed jsii runtime info for construct: '${construct.node.path}'`);
+  }
+  return void 0;
+}
+var JSII_RUNTIME_SYMBOL;
+var init_runtime_info = __esm({
+  "../../aws-cdk-lib/core/lib/private/runtime-info.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    JSII_RUNTIME_SYMBOL = /* @__PURE__ */ Symbol.for("jsii.rtti");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/stack-trace.ts
+function captureStackTrace(below = captureStackTrace, limit = void 0) {
+  if (!limit) {
+    return enhancedStackTrace(below, false);
+  }
+  const previousLimit = Error.stackTraceLimit;
+  try {
+    Error.stackTraceLimit = limit;
+    return enhancedStackTrace(below, false);
+  } finally {
+    Error.stackTraceLimit = previousLimit;
+  }
+}
+function enhancedStackTrace(upTo, indent = true) {
+  return withExternalTrace(renderCallStackJustMyCode(captureCallStack(upTo), indent));
+}
+function withExternalTrace(internal) {
+  const hostTrace = global[/* @__PURE__ */ Symbol.for("jsii.context.hostStackTrace")];
+  if (hostTrace != null) {
+    return internal.concat(hostTrace.slice(1).map(formatExternalFrame));
+  }
+  return internal;
+}
+function captureCallStack(upTo) {
+  const obj = {};
+  Error.captureStackTrace(obj, upTo);
+  let trace = parseErrorStack(obj.stack);
+  if (trace.length === 0) {
+    Error.captureStackTrace(obj);
+    trace = parseErrorStack(obj.stack);
+  }
+  return trace;
+}
+function formatExternalFrame(trace) {
+  const [filename, line, column, name] = trace;
+  return `${name} (${filename}:${line}${column > 0 ? ":" + column : ""})`;
+}
+function parseErrorStack(stack) {
+  const lines = stack.split("\n");
+  const framePrefix = "    at ";
+  return lines.filter((line) => line.startsWith(framePrefix)).map((line) => {
+    line = line.slice(framePrefix.length);
+    const frame = parseStackFrame(line);
+    if (frame.functionName === "Object.") {
+      frame.functionName = "";
+    }
+    return frame;
+  });
+}
+function parseStackFrame(frame) {
+  let fileName;
+  let functionName;
+  let sourceLocation;
+  const paren = frame.indexOf("(");
+  if (paren) {
+    functionName = frame.slice(0, paren - 1);
+    frame = frame.slice(paren + 1, -1);
+  } else {
+    functionName = "";
+  }
+  let asI = functionName.indexOf(" [as ");
+  if (asI > -1) {
+    const endOfAlias = functionName.indexOf("]", asI);
+    const lastPeriod = functionName.lastIndexOf(".", asI);
+    functionName = functionName.slice(0, lastPeriod + 1) + functionName.slice(asI + 5, endOfAlias);
+  }
+  const m = frame.match(/(:[0-9]+){0,2}$/);
+  fileName = m ? frame.slice(0, -m[0].length) : frame;
+  sourceLocation = m ? m[0].slice(1) : "";
+  return {
+    fileName,
+    functionName,
+    sourceLocation
+  };
+}
+function renderCallStackJustMyCode(stack, indent = true) {
+  const lines = [];
+  let skipped = new Array();
+  let sawMyCode = false;
+  let i = 0;
+  while (i < stack.length) {
+    const frame = stack[i++];
+    if (frame.fileName.match(DECORATOR_RE)) {
+      continue;
+    }
+    const pat = frame.fileName.match(MODULE_RE);
+    if (pat) {
+      while (i < stack.length && stack[i].fileName.includes(pat[0])) {
+        i++;
+      }
+      skip({ functionName: stack[i - 1].functionName, fileName: pat[3] });
+    } else if (frame.fileName.includes("node:")) {
+      skip({ fileName: "node internals" });
+      while (i < stack.length && stack[i].fileName.includes("node:")) {
+        i++;
+      }
+    } else if (isHostInternalFrame(frame)) {
+      skip({ fileName: "jsii runtime" });
+      while (i < stack.length && isHostInternalFrame(stack[i])) {
+        i++;
+      }
+    } else {
+      reportSkipped(true);
+      const prefix = indent ? "    at " : "";
+      lines.push(`${prefix}${frame.functionName} (${frame.fileName}:${frame.sourceLocation})`);
+      sawMyCode = true;
+    }
+  }
+  reportSkipped(false);
+  if (!sawMyCode) {
+    lines.push(`${indent ? "    " : ""}(no user code in ${Error.stackTraceLimit} frames, use --stack-trace-limit to capture more)`);
+  }
+  return lines;
+  function skip(what) {
+    if (!skipped.find((x) => x.fileName === what.fileName && x.functionName === what.functionName)) {
+      skipped.push(what);
+    }
+  }
+  function reportSkipped(includeFunction) {
+    if (skipped.length > 0) {
+      const rendered = skipped.map((s, j) => (
+        // Only render the function name of the last frame before user code
+        j === skipped.length - 1 && s.functionName && includeFunction ? `${s.functionName} in ${s.fileName}` : s.fileName
+      ));
+      const prefix = indent ? "    " : "";
+      lines.push(`${prefix}...${rendered.join(", ")}...`);
+    }
+    skipped = [];
+  }
+}
+function topUserFrame(stackTrace, frameFinder) {
+  for (const frame of stackTrace) {
+    if (frameFinder.isUserCodeFrame(frame)) {
+      return parseStackFrame(frame);
+    }
+  }
+  return void 0;
+}
+function isHostInternalFrame(frame) {
+  const hostDirName = global[/* @__PURE__ */ Symbol.for("jsii.context.hostDirName")];
+  return frame.fileName.includes(hostDirName);
+}
+var MODULE_RE, DECORATOR_RE, DEFAULT_STACK_FRAME_FINDER;
+var init_stack_trace = __esm({
+  "../../aws-cdk-lib/core/lib/private/stack-trace.ts"() {
+    "use strict";
+    MODULE_RE = /(\/|\\)node_modules(\/|\\)(@[^/\\]+[/\\][^/\\]+|[^@][^/\\]*)/;
+    DECORATOR_RE = /(\/|\\)(prop-injectable|no-box-stack-traces)\./;
+    DEFAULT_STACK_FRAME_FINDER = {
+      isUserCodeFrame(frame) {
+        return frame.includes(" (") && frame.endsWith(")");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js
+var require_vpc = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/vpc.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.VpcSubnetGroupType = void 0;
+    var VpcSubnetGroupType;
+    (function(VpcSubnetGroupType2) {
+      VpcSubnetGroupType2["PUBLIC"] = "Public";
+      VpcSubnetGroupType2["PRIVATE"] = "Private";
+      VpcSubnetGroupType2["ISOLATED"] = "Isolated";
+    })(VpcSubnetGroupType || (exports2.VpcSubnetGroupType = VpcSubnetGroupType = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js
+var require_ami = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/ami.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js
+var require_load_balancer = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/load-balancer.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.LoadBalancerIpAddressType = void 0;
+    var LoadBalancerIpAddressType;
+    (function(LoadBalancerIpAddressType2) {
+      LoadBalancerIpAddressType2["IPV4"] = "ipv4";
+      LoadBalancerIpAddressType2["DUAL_STACK"] = "dualstack";
+      LoadBalancerIpAddressType2["DUAL_STACK_WITHOUT_PUBLIC_IPV4"] = "dualstack-without-public-ipv4";
+    })(LoadBalancerIpAddressType || (exports2.LoadBalancerIpAddressType = LoadBalancerIpAddressType = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js
+var require_availability_zones = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/availability-zones.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = void 0;
+    exports2.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY = "aws:cdk:availability-zones:fallback";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js
+var require_endpoint_service_availability_zones = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/endpoint-service-availability-zones.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = void 0;
+    exports2.ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = "endpoint-service-availability-zones";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js
+var require_security_group = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/security-group.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js
+var require_key = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/key.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js
+var require_generic = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/context/generic.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.PROVIDER_ERROR_KEY = void 0;
+    exports2.PROVIDER_ERROR_KEY = "$providerError";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js
+var require_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ArtifactType = void 0;
+    var ArtifactType5;
+    (function(ArtifactType6) {
+      ArtifactType6["NONE"] = "none";
+      ArtifactType6["AWS_CLOUDFORMATION_STACK"] = "aws:cloudformation:stack";
+      ArtifactType6["CDK_TREE"] = "cdk:tree";
+      ArtifactType6["ASSET_MANIFEST"] = "cdk:asset-manifest";
+      ArtifactType6["NESTED_CLOUD_ASSEMBLY"] = "cdk:cloud-assembly";
+      ArtifactType6["FEATURE_FLAG_REPORT"] = "cdk:feature-flag-report";
+    })(ArtifactType5 || (exports2.ArtifactType = ArtifactType5 = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js
+var require_metadata_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/metadata-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = exports2.ArtifactMetadataEntryType = void 0;
+    var ArtifactMetadataEntryType9;
+    (function(ArtifactMetadataEntryType10) {
+      ArtifactMetadataEntryType10["ASSET"] = "aws:cdk:asset";
+      ArtifactMetadataEntryType10["INFO"] = "aws:cdk:info";
+      ArtifactMetadataEntryType10["WARN"] = "aws:cdk:warning";
+      ArtifactMetadataEntryType10["ERROR"] = "aws:cdk:error";
+      ArtifactMetadataEntryType10["LOGICAL_ID"] = "aws:cdk:logicalId";
+      ArtifactMetadataEntryType10["STACK_TAGS"] = "aws:cdk:stack-tags";
+      ArtifactMetadataEntryType10["DO_NOT_REFACTOR"] = "aws:cdk:do-not-refactor";
+      ArtifactMetadataEntryType10["CREATION_STACK"] = "aws:cdk:creationStack";
+      ArtifactMetadataEntryType10["PROPERTY_ASSIGNMENT"] = "aws:cdk:propertyAssignment";
+    })(ArtifactMetadataEntryType9 || (exports2.ArtifactMetadataEntryType = ArtifactMetadataEntryType9 = {}));
+    exports2.CFN_RESOURCE_TYPE_ATTRIBUTE = "aws:cdk:cloudformation:type";
+    exports2.CFN_RESOURCE_PROPS_ATTRIBUTE = "aws:cdk:cloudformation:props";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js
+var require_artifact_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/artifact-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js
+var require_context_queries = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/context-queries.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.LoadBalancerListenerProtocol = exports2.LoadBalancerType = exports2.ContextProvider = void 0;
+    var ContextProvider3;
+    (function(ContextProvider4) {
+      ContextProvider4["AMI_PROVIDER"] = "ami";
+      ContextProvider4["AVAILABILITY_ZONE_PROVIDER"] = "availability-zones";
+      ContextProvider4["HOSTED_ZONE_PROVIDER"] = "hosted-zone";
+      ContextProvider4["SSM_PARAMETER_PROVIDER"] = "ssm";
+      ContextProvider4["VPC_PROVIDER"] = "vpc-provider";
+      ContextProvider4["ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER"] = "endpoint-service-availability-zones";
+      ContextProvider4["LOAD_BALANCER_PROVIDER"] = "load-balancer";
+      ContextProvider4["LOAD_BALANCER_LISTENER_PROVIDER"] = "load-balancer-listener";
+      ContextProvider4["SECURITY_GROUP_PROVIDER"] = "security-group";
+      ContextProvider4["KEY_PROVIDER"] = "key-provider";
+      ContextProvider4["CC_API_PROVIDER"] = "cc-api-provider";
+      ContextProvider4["PLUGIN"] = "plugin";
+    })(ContextProvider3 || (exports2.ContextProvider = ContextProvider3 = {}));
+    var LoadBalancerType;
+    (function(LoadBalancerType2) {
+      LoadBalancerType2["NETWORK"] = "network";
+      LoadBalancerType2["APPLICATION"] = "application";
+    })(LoadBalancerType || (exports2.LoadBalancerType = LoadBalancerType = {}));
+    var LoadBalancerListenerProtocol;
+    (function(LoadBalancerListenerProtocol2) {
+      LoadBalancerListenerProtocol2["HTTP"] = "HTTP";
+      LoadBalancerListenerProtocol2["HTTPS"] = "HTTPS";
+      LoadBalancerListenerProtocol2["TCP"] = "TCP";
+      LoadBalancerListenerProtocol2["TLS"] = "TLS";
+      LoadBalancerListenerProtocol2["UDP"] = "UDP";
+      LoadBalancerListenerProtocol2["TCP_UDP"] = "TCP_UDP";
+    })(LoadBalancerListenerProtocol || (exports2.LoadBalancerListenerProtocol = LoadBalancerListenerProtocol = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js
+var require_interfaces = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/interfaces.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js
+var require_validation_report_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/validation-report-schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js
+var require_cloud_assembly = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/cloud-assembly/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema(), exports2);
+    __exportStar2(require_metadata_schema(), exports2);
+    __exportStar2(require_artifact_schema(), exports2);
+    __exportStar2(require_context_queries(), exports2);
+    __exportStar2(require_interfaces(), exports2);
+    __exportStar2(require_validation_report_schema(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js
+var require_schema2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js
+var require_docker_image_asset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/docker-image-asset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js
+var require_file_asset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/file-asset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.FileAssetPackaging = void 0;
+    var FileAssetPackaging2;
+    (function(FileAssetPackaging3) {
+      FileAssetPackaging3["FILE"] = "file";
+      FileAssetPackaging3["ZIP_DIRECTORY"] = "zip";
+    })(FileAssetPackaging2 || (exports2.FileAssetPackaging = FileAssetPackaging2 = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js
+var require_aws_destination = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/aws-destination.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js
+var require_assets = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/assets/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema2(), exports2);
+    __exportStar2(require_docker_image_asset(), exports2);
+    __exportStar2(require_file_asset(), exports2);
+    __exportStar2(require_aws_destination(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js
+var require_helpers = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/helpers.js"(exports2, module2) {
+    "use strict";
+    var ValidationError2 = exports2.ValidationError = function ValidationError3(message, instance, schema, path23, name, argument) {
+      if (Array.isArray(path23)) {
+        this.path = path23;
+        this.property = path23.reduce(function(sum, item) {
+          return sum + makeSuffix(item);
+        }, "instance");
+      } else if (path23 !== void 0) {
+        this.property = path23;
+      }
+      if (message) {
+        this.message = message;
+      }
+      if (schema) {
+        var id = schema.$id || schema.id;
+        this.schema = id || schema;
+      }
+      if (instance !== void 0) {
+        this.instance = instance;
+      }
+      this.name = name;
+      this.argument = argument;
+      this.stack = this.toString();
+    };
+    ValidationError2.prototype.toString = function toString2() {
+      return this.property + " " + this.message;
+    };
+    var ValidatorResult = exports2.ValidatorResult = function ValidatorResult2(instance, schema, options, ctx) {
+      this.instance = instance;
+      this.schema = schema;
+      this.options = options;
+      this.path = ctx.path;
+      this.propertyPath = ctx.propertyPath;
+      this.errors = [];
+      this.throwError = options && options.throwError;
+      this.throwFirst = options && options.throwFirst;
+      this.throwAll = options && options.throwAll;
+      this.disableFormat = options && options.disableFormat === true;
+    };
+    ValidatorResult.prototype.addError = function addError(detail) {
+      var err;
+      if (typeof detail == "string") {
+        err = new ValidationError2(detail, this.instance, this.schema, this.path);
+      } else {
+        if (!detail) throw new Error("Missing error detail");
+        if (!detail.message) throw new Error("Missing error message");
+        if (!detail.name) throw new Error("Missing validator type");
+        err = new ValidationError2(detail.message, this.instance, this.schema, this.path, detail.name, detail.argument);
+      }
+      this.errors.push(err);
+      if (this.throwFirst) {
+        throw new ValidatorResultError(this);
+      } else if (this.throwError) {
+        throw err;
+      }
+      return err;
+    };
+    ValidatorResult.prototype.importErrors = function importErrors(res) {
+      if (typeof res == "string" || res && res.validatorType) {
+        this.addError(res);
+      } else if (res && res.errors) {
+        this.errors = this.errors.concat(res.errors);
+      }
+    };
+    function stringizer(v, i) {
+      return i + ": " + v.toString() + "\n";
+    }
+    ValidatorResult.prototype.toString = function toString2(res) {
+      return this.errors.map(stringizer).join("");
+    };
+    Object.defineProperty(ValidatorResult.prototype, "valid", { get: function() {
+      return !this.errors.length;
+    } });
+    module2.exports.ValidatorResultError = ValidatorResultError;
+    function ValidatorResultError(result) {
+      if (typeof Error.captureStackTrace === "function") {
+        Error.captureStackTrace(this, ValidatorResultError);
+      }
+      this.instance = result.instance;
+      this.schema = result.schema;
+      this.options = result.options;
+      this.errors = result.errors;
+    }
+    ValidatorResultError.prototype = new Error();
+    ValidatorResultError.prototype.constructor = ValidatorResultError;
+    ValidatorResultError.prototype.name = "Validation Error";
+    var SchemaError = exports2.SchemaError = function SchemaError2(msg, schema) {
+      this.message = msg;
+      this.schema = schema;
+      Error.call(this, msg);
+      if (typeof Error.captureStackTrace === "function") {
+        Error.captureStackTrace(this, SchemaError2);
+      }
+    };
+    SchemaError.prototype = Object.create(
+      Error.prototype,
+      {
+        constructor: { value: SchemaError, enumerable: false },
+        name: { value: "SchemaError", enumerable: false }
+      }
+    );
+    var SchemaContext = exports2.SchemaContext = function SchemaContext2(schema, options, path23, base, schemas) {
+      this.schema = schema;
+      this.options = options;
+      if (Array.isArray(path23)) {
+        this.path = path23;
+        this.propertyPath = path23.reduce(function(sum, item) {
+          return sum + makeSuffix(item);
+        }, "instance");
+      } else {
+        this.propertyPath = path23;
+      }
+      this.base = base;
+      this.schemas = schemas;
+    };
+    SchemaContext.prototype.resolve = function resolve6(target) {
+      return (() => resolveUrl(this.base, target))();
+    };
+    SchemaContext.prototype.makeChild = function makeChild(schema, propertyName) {
+      var path23 = propertyName === void 0 ? this.path : this.path.concat([propertyName]);
+      var id = schema.$id || schema.id;
+      let base = (() => resolveUrl(this.base, id || ""))();
+      var ctx = new SchemaContext(schema, this.options, path23, base, Object.create(this.schemas));
+      if (id && !ctx.schemas[base]) {
+        ctx.schemas[base] = schema;
+      }
+      return ctx;
+    };
+    var FORMAT_REGEXPS = exports2.FORMAT_REGEXPS = {
+      // 7.3.1. Dates, Times, and Duration
+      "date-time": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])[tT ](2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])(\.\d+)?([zZ]|[+-]([0-5][0-9]):(60|[0-5][0-9]))$/,
+      "date": /^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])$/,
+      "time": /^(2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])$/,
+      "duration": /P(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S)|\d+(D|M(\d+D)?|Y(\d+M(\d+D)?)?)(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S))?|\d+W)/i,
+      // 7.3.2. Email Addresses
+      // TODO: fix the email production
+      "email": /^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/,
+      "idn-email": /^("(?:[!#-\[\]-\u{10FFFF}]|\\[\t -\u{10FFFF}])*"|[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*)@([!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*|\[[!-Z\^-\u{10FFFF}]*\])$/u,
+      // 7.3.3. Hostnames
+      // 7.3.4. IP Addresses
+      "ip-address": /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,
+      // FIXME whitespace is invalid
+      "ipv6": /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/,
+      // 7.3.5. Resource Identifiers
+      // TODO: A more accurate regular expression for "uri" goes:
+      // [A-Za-z][+\-.0-9A-Za-z]*:((/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?)?#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])|/?%[0-9A-Fa-f]{2}|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*(#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|/(/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?)?
+      "uri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,
+      "uri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/,
+      "iri": /^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,
+      "iri-reference": /^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~-\u{10FFFF}]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~-\u{10FFFF}])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/u,
+      "uuid": /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i,
+      // 7.3.6. uri-template
+      "uri-template": /(%[0-9a-f]{2}|[!#$&(-;=?@\[\]_a-z~]|\{[!#&+,./;=?@|]?(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?(,(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?)*\})*/iu,
+      // 7.3.7. JSON Pointers
+      "json-pointer": /^(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*$/iu,
+      "relative-json-pointer": /^\d+(#|(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*)$/iu,
+      // hostname regex from: http://stackoverflow.com/a/1420225/5628
+      "hostname": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,
+      "host-name": /^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,
+      "utc-millisec": function(input) {
+        return typeof input === "string" && parseFloat(input) === parseInt(input, 10) && !isNaN(input);
+      },
+      // 7.3.8. regex
+      "regex": function(input) {
+        var result = true;
+        try {
+          new RegExp(input);
+        } catch (e) {
+          result = false;
+        }
+        return result;
+      },
+      // Other definitions
+      // "style" was removed from JSON Schema in draft-4 and is deprecated
+      "style": /[\r\n\t ]*[^\r\n\t ][^:]*:[\r\n\t ]*[^\r\n\t ;]*[\r\n\t ]*;?/,
+      // "color" was removed from JSON Schema in draft-4 and is deprecated
+      "color": /^(#?([0-9A-Fa-f]{3}){1,2}\b|aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|(rgb\(\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*\))|(rgb\(\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*\)))$/,
+      "phone": /^\+(?:[0-9] ?){6,14}[0-9]$/,
+      "alpha": /^[a-zA-Z]+$/,
+      "alphanumeric": /^[a-zA-Z0-9]+$/
+    };
+    FORMAT_REGEXPS.regexp = FORMAT_REGEXPS.regex;
+    FORMAT_REGEXPS.pattern = FORMAT_REGEXPS.regex;
+    FORMAT_REGEXPS.ipv4 = FORMAT_REGEXPS["ip-address"];
+    exports2.isFormat = function isFormat(input, format, validator) {
+      if (typeof input === "string" && FORMAT_REGEXPS[format] !== void 0) {
+        if (FORMAT_REGEXPS[format] instanceof RegExp) {
+          return FORMAT_REGEXPS[format].test(input);
+        }
+        if (typeof FORMAT_REGEXPS[format] === "function") {
+          return FORMAT_REGEXPS[format](input);
+        }
+      } else if (validator && validator.customFormats && typeof validator.customFormats[format] === "function") {
+        return validator.customFormats[format](input);
+      }
+      return true;
+    };
+    var makeSuffix = exports2.makeSuffix = function makeSuffix2(key) {
+      key = key.toString();
+      if (!key.match(/[.\s\[\]]/) && !key.match(/^[\d]/)) {
+        return "." + key;
+      }
+      if (key.match(/^\d+$/)) {
+        return "[" + key + "]";
+      }
+      return "[" + JSON.stringify(key) + "]";
+    };
+    exports2.deepCompareStrict = function deepCompareStrict(a, b) {
+      if (typeof a !== typeof b) {
+        return false;
+      }
+      if (Array.isArray(a)) {
+        if (!Array.isArray(b)) {
+          return false;
+        }
+        if (a.length !== b.length) {
+          return false;
+        }
+        return a.every(function(v, i) {
+          return deepCompareStrict(a[i], b[i]);
+        });
+      }
+      if (typeof a === "object") {
+        if (!a || !b) {
+          return a === b;
+        }
+        var aKeys = Object.keys(a);
+        var bKeys = Object.keys(b);
+        if (aKeys.length !== bKeys.length) {
+          return false;
+        }
+        return aKeys.every(function(v) {
+          return deepCompareStrict(a[v], b[v]);
+        });
+      }
+      return a === b;
+    };
+    function deepMerger(target, dst, e, i) {
+      if (typeof e === "object") {
+        dst[i] = deepMerge2(target[i], e);
+      } else {
+        if (target.indexOf(e) === -1) {
+          dst.push(e);
+        }
+      }
+    }
+    function copyist(src, dst, key) {
+      dst[key] = src[key];
+    }
+    function copyistWithDeepMerge(target, src, dst, key) {
+      if (typeof src[key] !== "object" || !src[key]) {
+        dst[key] = src[key];
+      } else {
+        if (!target[key]) {
+          dst[key] = src[key];
+        } else {
+          dst[key] = deepMerge2(target[key], src[key]);
+        }
+      }
+    }
+    function deepMerge2(target, src) {
+      var array = Array.isArray(src);
+      var dst = array && [] || {};
+      if (array) {
+        target = target || [];
+        dst = dst.concat(target);
+        src.forEach(deepMerger.bind(null, target, dst));
+      } else {
+        if (target && typeof target === "object") {
+          Object.keys(target).forEach(copyist.bind(null, target, dst));
+        }
+        Object.keys(src).forEach(copyistWithDeepMerge.bind(null, target, src, dst));
+      }
+      return dst;
+    }
+    module2.exports.deepMerge = deepMerge2;
+    exports2.objectGetPath = function objectGetPath(o, s) {
+      var parts = s.split("/").slice(1);
+      var k;
+      while (typeof (k = parts.shift()) == "string") {
+        var n = decodeURIComponent(k.replace(/~0/, "~").replace(/~1/g, "/"));
+        if (!(n in o)) return;
+        o = o[n];
+      }
+      return o;
+    };
+    function pathEncoder(v) {
+      return "/" + encodeURIComponent(v).replace(/~/g, "%7E");
+    }
+    exports2.encodePath = function encodePointer(a) {
+      return a.map(pathEncoder).join("");
+    };
+    exports2.getDecimalPlaces = function getDecimalPlaces(number) {
+      var decimalPlaces = 0;
+      if (isNaN(number)) return decimalPlaces;
+      if (typeof number !== "number") {
+        number = Number(number);
+      }
+      var parts = number.toString().split("e");
+      if (parts.length === 2) {
+        if (parts[1][0] !== "-") {
+          return decimalPlaces;
+        } else {
+          decimalPlaces = Number(parts[1].slice(1));
+        }
+      }
+      var decimalParts = parts[0].split(".");
+      if (decimalParts.length === 2) {
+        decimalPlaces += decimalParts[1].length;
+      }
+      return decimalPlaces;
+    };
+    exports2.isSchema = function isSchema(val2) {
+      return typeof val2 === "object" && val2 || typeof val2 === "boolean";
+    };
+    var resolveUrl = exports2.resolveUrl = function resolveUrl2(from, to) {
+      const resolvedUrl = new URL(to, new URL(from, "resolve://"));
+      if (resolvedUrl.protocol === "resolve:") {
+        const { pathname, search, hash } = resolvedUrl;
+        return pathname + search + hash;
+      }
+      return resolvedUrl.toString();
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js
+var require_attribute = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/attribute.js"(exports2, module2) {
+    "use strict";
+    var helpers = require_helpers();
+    var ValidatorResult = helpers.ValidatorResult;
+    var SchemaError = helpers.SchemaError;
+    var attribute = {};
+    attribute.ignoreProperties = {
+      // informative properties
+      "id": true,
+      "default": true,
+      "description": true,
+      "title": true,
+      // arguments to other properties
+      "additionalItems": true,
+      "then": true,
+      "else": true,
+      // special-handled properties
+      "$schema": true,
+      "$ref": true,
+      "extends": true
+    };
+    var validators = attribute.validators = {};
+    validators.type = function validateType(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var types2 = Array.isArray(schema.type) ? schema.type : [schema.type];
+      if (!types2.some(this.testType.bind(this, instance, schema, options, ctx))) {
+        var list = types2.map(function(v) {
+          if (!v) return;
+          var id = v.$id || v.id;
+          return id ? "<" + id + ">" : v + "";
+        });
+        result.addError({
+          name: "type",
+          argument: list,
+          message: "is not of a type(s) " + list
+        });
+      }
+      return result;
+    };
+    function testSchemaNoThrow(instance, options, ctx, callback, schema) {
+      var throwError = options.throwError;
+      var throwAll = options.throwAll;
+      options.throwError = false;
+      options.throwAll = false;
+      var res = this.validateSchema(instance, schema, options, ctx);
+      options.throwError = throwError;
+      options.throwAll = throwAll;
+      if (!res.valid && callback instanceof Function) {
+        callback(res);
+      }
+      return res.valid;
+    }
+    validators.anyOf = function validateAnyOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var inner = new ValidatorResult(instance, schema, options, ctx);
+      if (!Array.isArray(schema.anyOf)) {
+        throw new SchemaError("anyOf must be an array");
+      }
+      if (!schema.anyOf.some(
+        testSchemaNoThrow.bind(
+          this,
+          instance,
+          options,
+          ctx,
+          function(res) {
+            inner.importErrors(res);
+          }
+        )
+      )) {
+        var list = schema.anyOf.map(function(v, i) {
+          var id = v.$id || v.id;
+          if (id) return "<" + id + ">";
+          return v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+        });
+        if (options.nestedErrors) {
+          result.importErrors(inner);
+        }
+        result.addError({
+          name: "anyOf",
+          argument: list,
+          message: "is not any of " + list.join(",")
+        });
+      }
+      return result;
+    };
+    validators.allOf = function validateAllOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema.allOf)) {
+        throw new SchemaError("allOf must be an array");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var self2 = this;
+      schema.allOf.forEach(function(v, i) {
+        var valid = self2.validateSchema(instance, v, options, ctx);
+        if (!valid.valid) {
+          var id = v.$id || v.id;
+          var msg = id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+          result.addError({
+            name: "allOf",
+            argument: { id: msg, length: valid.errors.length, valid },
+            message: "does not match allOf schema " + msg + " with " + valid.errors.length + " error[s]:"
+          });
+          result.importErrors(valid);
+        }
+      });
+      return result;
+    };
+    validators.oneOf = function validateOneOf(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema.oneOf)) {
+        throw new SchemaError("oneOf must be an array");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var inner = new ValidatorResult(instance, schema, options, ctx);
+      var count2 = schema.oneOf.filter(
+        testSchemaNoThrow.bind(
+          this,
+          instance,
+          options,
+          ctx,
+          function(res) {
+            inner.importErrors(res);
+          }
+        )
+      ).length;
+      var list = schema.oneOf.map(function(v, i) {
+        var id = v.$id || v.id;
+        return id || v.title && JSON.stringify(v.title) || v["$ref"] && "<" + v["$ref"] + ">" || "[subschema " + i + "]";
+      });
+      if (count2 !== 1) {
+        if (options.nestedErrors) {
+          result.importErrors(inner);
+        }
+        result.addError({
+          name: "oneOf",
+          argument: list,
+          message: "is not exactly one from " + list.join(",")
+        });
+      }
+      return result;
+    };
+    validators.if = function validateIf(instance, schema, options, ctx) {
+      if (instance === void 0) return null;
+      if (!helpers.isSchema(schema.if)) throw new Error('Expected "if" keyword to be a schema');
+      var ifValid = testSchemaNoThrow.call(this, instance, options, ctx, null, schema.if);
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var res;
+      if (ifValid) {
+        if (schema.then === void 0) return;
+        if (!helpers.isSchema(schema.then)) throw new Error('Expected "then" keyword to be a schema');
+        res = this.validateSchema(instance, schema.then, options, ctx.makeChild(schema.then));
+        result.importErrors(res);
+      } else {
+        if (schema.else === void 0) return;
+        if (!helpers.isSchema(schema.else)) throw new Error('Expected "else" keyword to be a schema');
+        res = this.validateSchema(instance, schema.else, options, ctx.makeChild(schema.else));
+        result.importErrors(res);
+      }
+      return result;
+    };
+    function getEnumerableProperty(object, key) {
+      if (Object.hasOwnProperty.call(object, key)) return object[key];
+      if (!(key in object)) return;
+      while (object = Object.getPrototypeOf(object)) {
+        if (Object.propertyIsEnumerable.call(object, key)) return object[key];
+      }
+    }
+    validators.propertyNames = function validatePropertyNames(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var subschema = schema.propertyNames !== void 0 ? schema.propertyNames : {};
+      if (!helpers.isSchema(subschema)) throw new SchemaError('Expected "propertyNames" to be a schema (object or boolean)');
+      for (var property in instance) {
+        if (getEnumerableProperty(instance, property) !== void 0) {
+          var res = this.validateSchema(property, subschema, options, ctx.makeChild(subschema));
+          result.importErrors(res);
+        }
+      }
+      return result;
+    };
+    validators.properties = function validateProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var properties = schema.properties || {};
+      for (var property in properties) {
+        var subschema = properties[property];
+        if (subschema === void 0) {
+          continue;
+        } else if (subschema === null) {
+          throw new SchemaError('Unexpected null, expected schema in "properties"');
+        }
+        if (typeof options.preValidateProperty == "function") {
+          options.preValidateProperty(instance, property, subschema, options, ctx);
+        }
+        var prop = getEnumerableProperty(instance, property);
+        var res = this.validateSchema(prop, subschema, options, ctx.makeChild(subschema, property));
+        if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+        result.importErrors(res);
+      }
+      return result;
+    };
+    function testAdditionalProperty(instance, schema, options, ctx, property, result) {
+      if (!this.types.object(instance)) return;
+      if (schema.properties && schema.properties[property] !== void 0) {
+        return;
+      }
+      if (schema.additionalProperties === false) {
+        result.addError({
+          name: "additionalProperties",
+          argument: property,
+          message: "is not allowed to have the additional property " + JSON.stringify(property)
+        });
+      } else {
+        var additionalProperties = schema.additionalProperties || {};
+        if (typeof options.preValidateProperty == "function") {
+          options.preValidateProperty(instance, property, additionalProperties, options, ctx);
+        }
+        var res = this.validateSchema(instance[property], additionalProperties, options, ctx.makeChild(additionalProperties, property));
+        if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+        result.importErrors(res);
+      }
+    }
+    validators.patternProperties = function validatePatternProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var patternProperties = schema.patternProperties || {};
+      for (var property in instance) {
+        var test = true;
+        for (var pattern in patternProperties) {
+          var subschema = patternProperties[pattern];
+          if (subschema === void 0) {
+            continue;
+          } else if (subschema === null) {
+            throw new SchemaError('Unexpected null, expected schema in "patternProperties"');
+          }
+          try {
+            var regexp = new RegExp(pattern, "u");
+          } catch (_e) {
+            regexp = new RegExp(pattern);
+          }
+          if (!regexp.test(property)) {
+            continue;
+          }
+          test = false;
+          if (typeof options.preValidateProperty == "function") {
+            options.preValidateProperty(instance, property, subschema, options, ctx);
+          }
+          var res = this.validateSchema(instance[property], subschema, options, ctx.makeChild(subschema, property));
+          if (res.instance !== result.instance[property]) result.instance[property] = res.instance;
+          result.importErrors(res);
+        }
+        if (test) {
+          testAdditionalProperty.call(this, instance, schema, options, ctx, property, result);
+        }
+      }
+      return result;
+    };
+    validators.additionalProperties = function validateAdditionalProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      if (schema.patternProperties) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      for (var property in instance) {
+        testAdditionalProperty.call(this, instance, schema, options, ctx, property, result);
+      }
+      return result;
+    };
+    validators.minProperties = function validateMinProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var keys = Object.keys(instance);
+      if (!(keys.length >= schema.minProperties)) {
+        result.addError({
+          name: "minProperties",
+          argument: schema.minProperties,
+          message: "does not meet minimum property length of " + schema.minProperties
+        });
+      }
+      return result;
+    };
+    validators.maxProperties = function validateMaxProperties(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var keys = Object.keys(instance);
+      if (!(keys.length <= schema.maxProperties)) {
+        result.addError({
+          name: "maxProperties",
+          argument: schema.maxProperties,
+          message: "does not meet maximum property length of " + schema.maxProperties
+        });
+      }
+      return result;
+    };
+    validators.items = function validateItems(instance, schema, options, ctx) {
+      var self2 = this;
+      if (!this.types.array(instance)) return;
+      if (schema.items === void 0) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      instance.every(function(value, i) {
+        if (Array.isArray(schema.items)) {
+          var items = schema.items[i] === void 0 ? schema.additionalItems : schema.items[i];
+        } else {
+          var items = schema.items;
+        }
+        if (items === void 0) {
+          return true;
+        }
+        if (items === false) {
+          result.addError({
+            name: "items",
+            message: "additionalItems not permitted"
+          });
+          return false;
+        }
+        var res = self2.validateSchema(value, items, options, ctx.makeChild(items, i));
+        if (res.instance !== result.instance[i]) result.instance[i] = res.instance;
+        result.importErrors(res);
+        return true;
+      });
+      return result;
+    };
+    validators.contains = function validateContains(instance, schema, options, ctx) {
+      var self2 = this;
+      if (!this.types.array(instance)) return;
+      if (schema.contains === void 0) return;
+      if (!helpers.isSchema(schema.contains)) throw new Error('Expected "contains" keyword to be a schema');
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var count2 = instance.some(function(value, i) {
+        var res = self2.validateSchema(value, schema.contains, options, ctx.makeChild(schema.contains, i));
+        return res.errors.length === 0;
+      });
+      if (count2 === false) {
+        result.addError({
+          name: "contains",
+          argument: schema.contains,
+          message: "must contain an item matching given schema"
+        });
+      }
+      return result;
+    };
+    validators.minimum = function validateMinimum(instance, schema, options, ctx) {
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (schema.exclusiveMinimum && schema.exclusiveMinimum === true) {
+        if (!(instance > schema.minimum)) {
+          result.addError({
+            name: "minimum",
+            argument: schema.minimum,
+            message: "must be greater than " + schema.minimum
+          });
+        }
+      } else {
+        if (!(instance >= schema.minimum)) {
+          result.addError({
+            name: "minimum",
+            argument: schema.minimum,
+            message: "must be greater than or equal to " + schema.minimum
+          });
+        }
+      }
+      return result;
+    };
+    validators.maximum = function validateMaximum(instance, schema, options, ctx) {
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (schema.exclusiveMaximum && schema.exclusiveMaximum === true) {
+        if (!(instance < schema.maximum)) {
+          result.addError({
+            name: "maximum",
+            argument: schema.maximum,
+            message: "must be less than " + schema.maximum
+          });
+        }
+      } else {
+        if (!(instance <= schema.maximum)) {
+          result.addError({
+            name: "maximum",
+            argument: schema.maximum,
+            message: "must be less than or equal to " + schema.maximum
+          });
+        }
+      }
+      return result;
+    };
+    validators.exclusiveMinimum = function validateExclusiveMinimum(instance, schema, options, ctx) {
+      if (typeof schema.exclusiveMinimum === "boolean") return;
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var valid = instance > schema.exclusiveMinimum;
+      if (!valid) {
+        result.addError({
+          name: "exclusiveMinimum",
+          argument: schema.exclusiveMinimum,
+          message: "must be strictly greater than " + schema.exclusiveMinimum
+        });
+      }
+      return result;
+    };
+    validators.exclusiveMaximum = function validateExclusiveMaximum(instance, schema, options, ctx) {
+      if (typeof schema.exclusiveMaximum === "boolean") return;
+      if (!this.types.number(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var valid = instance < schema.exclusiveMaximum;
+      if (!valid) {
+        result.addError({
+          name: "exclusiveMaximum",
+          argument: schema.exclusiveMaximum,
+          message: "must be strictly less than " + schema.exclusiveMaximum
+        });
+      }
+      return result;
+    };
+    var validateMultipleOfOrDivisbleBy = function validateMultipleOfOrDivisbleBy2(instance, schema, options, ctx, validationType, errorMessage) {
+      if (!this.types.number(instance)) return;
+      var validationArgument = schema[validationType];
+      if (validationArgument == 0) {
+        throw new SchemaError(validationType + " cannot be zero");
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var instanceDecimals = helpers.getDecimalPlaces(instance);
+      var divisorDecimals = helpers.getDecimalPlaces(validationArgument);
+      var maxDecimals = Math.max(instanceDecimals, divisorDecimals);
+      var multiplier = Math.pow(10, maxDecimals);
+      if (Math.round(instance * multiplier) % Math.round(validationArgument * multiplier) !== 0) {
+        result.addError({
+          name: validationType,
+          argument: validationArgument,
+          message: errorMessage + JSON.stringify(validationArgument)
+        });
+      }
+      return result;
+    };
+    validators.multipleOf = function validateMultipleOf(instance, schema, options, ctx) {
+      return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "multipleOf", "is not a multiple of (divisible by) ");
+    };
+    validators.divisibleBy = function validateDivisibleBy(instance, schema, options, ctx) {
+      return validateMultipleOfOrDivisbleBy.call(this, instance, schema, options, ctx, "divisibleBy", "is not divisible by (multiple of) ");
+    };
+    validators.required = function validateRequired(instance, schema, options, ctx) {
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (instance === void 0 && schema.required === true) {
+        result.addError({
+          name: "required",
+          message: "is required"
+        });
+      } else if (this.types.object(instance) && Array.isArray(schema.required)) {
+        schema.required.forEach(function(n) {
+          if (getEnumerableProperty(instance, n) === void 0) {
+            result.addError({
+              name: "required",
+              argument: n,
+              message: "requires property " + JSON.stringify(n)
+            });
+          }
+        });
+      }
+      return result;
+    };
+    validators.pattern = function validatePattern(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var pattern = schema.pattern;
+      try {
+        var regexp = new RegExp(pattern, "u");
+      } catch (_e) {
+        regexp = new RegExp(pattern);
+      }
+      if (!instance.match(regexp)) {
+        result.addError({
+          name: "pattern",
+          argument: schema.pattern,
+          message: "does not match pattern " + JSON.stringify(schema.pattern.toString())
+        });
+      }
+      return result;
+    };
+    validators.format = function validateFormat(instance, schema, options, ctx) {
+      if (instance === void 0) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!result.disableFormat && !helpers.isFormat(instance, schema.format, this)) {
+        result.addError({
+          name: "format",
+          argument: schema.format,
+          message: "does not conform to the " + JSON.stringify(schema.format) + " format"
+        });
+      }
+      return result;
+    };
+    validators.minLength = function validateMinLength(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var hsp = instance.match(/[\uDC00-\uDFFF]/g);
+      var length = instance.length - (hsp ? hsp.length : 0);
+      if (!(length >= schema.minLength)) {
+        result.addError({
+          name: "minLength",
+          argument: schema.minLength,
+          message: "does not meet minimum length of " + schema.minLength
+        });
+      }
+      return result;
+    };
+    validators.maxLength = function validateMaxLength(instance, schema, options, ctx) {
+      if (!this.types.string(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var hsp = instance.match(/[\uDC00-\uDFFF]/g);
+      var length = instance.length - (hsp ? hsp.length : 0);
+      if (!(length <= schema.maxLength)) {
+        result.addError({
+          name: "maxLength",
+          argument: schema.maxLength,
+          message: "does not meet maximum length of " + schema.maxLength
+        });
+      }
+      return result;
+    };
+    validators.minItems = function validateMinItems(instance, schema, options, ctx) {
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!(instance.length >= schema.minItems)) {
+        result.addError({
+          name: "minItems",
+          argument: schema.minItems,
+          message: "does not meet minimum length of " + schema.minItems
+        });
+      }
+      return result;
+    };
+    validators.maxItems = function validateMaxItems(instance, schema, options, ctx) {
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!(instance.length <= schema.maxItems)) {
+        result.addError({
+          name: "maxItems",
+          argument: schema.maxItems,
+          message: "does not meet maximum length of " + schema.maxItems
+        });
+      }
+      return result;
+    };
+    function testArrays(v, i, a) {
+      var j, len = a.length;
+      for (j = i + 1, len; j < len; j++) {
+        if (helpers.deepCompareStrict(v, a[j])) {
+          return false;
+        }
+      }
+      return true;
+    }
+    validators.uniqueItems = function validateUniqueItems(instance, schema, options, ctx) {
+      if (schema.uniqueItems !== true) return;
+      if (!this.types.array(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!instance.every(testArrays)) {
+        result.addError({
+          name: "uniqueItems",
+          message: "contains duplicate item"
+        });
+      }
+      return result;
+    };
+    validators.dependencies = function validateDependencies(instance, schema, options, ctx) {
+      if (!this.types.object(instance)) return;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      for (var property in schema.dependencies) {
+        if (instance[property] === void 0) {
+          continue;
+        }
+        var dep = schema.dependencies[property];
+        var childContext = ctx.makeChild(dep, property);
+        if (typeof dep == "string") {
+          dep = [dep];
+        }
+        if (Array.isArray(dep)) {
+          dep.forEach(function(prop) {
+            if (instance[prop] === void 0) {
+              result.addError({
+                // FIXME there's two different "dependencies" errors here with slightly different outputs
+                // Can we make these the same? Or should we create different error types?
+                name: "dependencies",
+                argument: childContext.propertyPath,
+                message: "property " + prop + " not found, required by " + childContext.propertyPath
+              });
+            }
+          });
+        } else {
+          var res = this.validateSchema(instance, dep, options, childContext);
+          if (result.instance !== res.instance) result.instance = res.instance;
+          if (res && res.errors.length) {
+            result.addError({
+              name: "dependencies",
+              argument: childContext.propertyPath,
+              message: "does not meet dependency required by " + childContext.propertyPath
+            });
+            result.importErrors(res);
+          }
+        }
+      }
+      return result;
+    };
+    validators["enum"] = function validateEnum(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      if (!Array.isArray(schema["enum"])) {
+        throw new SchemaError("enum expects an array", schema);
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!schema["enum"].some(helpers.deepCompareStrict.bind(null, instance))) {
+        result.addError({
+          name: "enum",
+          argument: schema["enum"],
+          message: "is not one of enum values: " + schema["enum"].map(String).join(",")
+        });
+      }
+      return result;
+    };
+    validators["const"] = function validateEnum(instance, schema, options, ctx) {
+      if (instance === void 0) {
+        return null;
+      }
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (!helpers.deepCompareStrict(schema["const"], instance)) {
+        result.addError({
+          name: "const",
+          argument: schema["const"],
+          message: "does not exactly match expected constant: " + schema["const"]
+        });
+      }
+      return result;
+    };
+    validators.not = validators.disallow = function validateNot(instance, schema, options, ctx) {
+      var self2 = this;
+      if (instance === void 0) return null;
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      var notTypes = schema.not || schema.disallow;
+      if (!notTypes) return null;
+      if (!Array.isArray(notTypes)) notTypes = [notTypes];
+      notTypes.forEach(function(type) {
+        if (self2.testType(instance, schema, options, ctx, type)) {
+          var id = type && (type.$id || type.id);
+          var schemaId = id || type;
+          result.addError({
+            name: "not",
+            argument: schemaId,
+            message: "is of prohibited type " + schemaId
+          });
+        }
+      });
+      return result;
+    };
+    module2.exports = attribute;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js
+var require_scan = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/scan.js"(exports2, module2) {
+    "use strict";
+    var helpers = require_helpers();
+    module2.exports.SchemaScanResult = SchemaScanResult;
+    function SchemaScanResult(found, ref) {
+      this.id = found;
+      this.ref = ref;
+    }
+    module2.exports.scan = function scan(base, schema) {
+      function scanSchema(baseuri, schema2) {
+        if (!schema2 || typeof schema2 != "object") return;
+        if (schema2.$ref) {
+          let resolvedUri = helpers.resolveUrl(baseuri, schema2.$ref);
+          ref[resolvedUri] = ref[resolvedUri] ? ref[resolvedUri] + 1 : 0;
+          return;
+        }
+        var id = schema2.$id || schema2.id;
+        let resolvedBase = helpers.resolveUrl(baseuri, id);
+        var ourBase = id ? resolvedBase : baseuri;
+        if (ourBase) {
+          if (ourBase.indexOf("#") < 0) ourBase += "#";
+          if (found[ourBase]) {
+            if (!helpers.deepCompareStrict(found[ourBase], schema2)) {
+              throw new Error("Schema <" + ourBase + "> already exists with different definition");
+            }
+            return found[ourBase];
+          }
+          found[ourBase] = schema2;
+          if (ourBase[ourBase.length - 1] == "#") {
+            found[ourBase.substring(0, ourBase.length - 1)] = schema2;
+          }
+        }
+        scanArray(ourBase + "/items", Array.isArray(schema2.items) ? schema2.items : [schema2.items]);
+        scanArray(ourBase + "/extends", Array.isArray(schema2.extends) ? schema2.extends : [schema2.extends]);
+        scanSchema(ourBase + "/additionalItems", schema2.additionalItems);
+        scanObject(ourBase + "/properties", schema2.properties);
+        scanSchema(ourBase + "/additionalProperties", schema2.additionalProperties);
+        scanObject(ourBase + "/definitions", schema2.definitions);
+        scanObject(ourBase + "/patternProperties", schema2.patternProperties);
+        scanObject(ourBase + "/dependencies", schema2.dependencies);
+        scanArray(ourBase + "/disallow", schema2.disallow);
+        scanArray(ourBase + "/allOf", schema2.allOf);
+        scanArray(ourBase + "/anyOf", schema2.anyOf);
+        scanArray(ourBase + "/oneOf", schema2.oneOf);
+        scanSchema(ourBase + "/not", schema2.not);
+      }
+      function scanArray(baseuri, schemas) {
+        if (!Array.isArray(schemas)) return;
+        for (var i = 0; i < schemas.length; i++) {
+          scanSchema(baseuri + "/" + i, schemas[i]);
+        }
+      }
+      function scanObject(baseuri, schemas) {
+        if (!schemas || typeof schemas != "object") return;
+        for (var p in schemas) {
+          scanSchema(baseuri + "/" + p, schemas[p]);
+        }
+      }
+      var found = {};
+      var ref = {};
+      scanSchema(base, schema);
+      return new SchemaScanResult(found, ref);
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js
+var require_validator = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/validator.js"(exports2, module2) {
+    "use strict";
+    var attribute = require_attribute();
+    var helpers = require_helpers();
+    var scanSchema = require_scan().scan;
+    var ValidatorResult = helpers.ValidatorResult;
+    var ValidatorResultError = helpers.ValidatorResultError;
+    var SchemaError = helpers.SchemaError;
+    var SchemaContext = helpers.SchemaContext;
+    var anonymousBase = "/";
+    var Validator = function Validator2() {
+      this.customFormats = Object.create(Validator2.prototype.customFormats);
+      this.schemas = {};
+      this.unresolvedRefs = [];
+      this.types = Object.create(types2);
+      this.attributes = Object.create(attribute.validators);
+    };
+    Validator.prototype.customFormats = {};
+    Validator.prototype.schemas = null;
+    Validator.prototype.types = null;
+    Validator.prototype.attributes = null;
+    Validator.prototype.unresolvedRefs = null;
+    Validator.prototype.addSchema = function addSchema(schema, base) {
+      var self2 = this;
+      if (!schema) {
+        return null;
+      }
+      var scan = scanSchema(base || anonymousBase, schema);
+      var ourUri = base || schema.$id || schema.id;
+      for (var uri in scan.id) {
+        this.schemas[uri] = scan.id[uri];
+      }
+      for (var uri in scan.ref) {
+        this.unresolvedRefs.push(uri);
+      }
+      this.unresolvedRefs = this.unresolvedRefs.filter(function(uri2) {
+        return typeof self2.schemas[uri2] === "undefined";
+      });
+      return this.schemas[ourUri];
+    };
+    Validator.prototype.addSubSchemaArray = function addSubSchemaArray(baseuri, schemas) {
+      if (!Array.isArray(schemas)) return;
+      for (var i = 0; i < schemas.length; i++) {
+        this.addSubSchema(baseuri, schemas[i]);
+      }
+    };
+    Validator.prototype.addSubSchemaObject = function addSubSchemaArray(baseuri, schemas) {
+      if (!schemas || typeof schemas != "object") return;
+      for (var p in schemas) {
+        this.addSubSchema(baseuri, schemas[p]);
+      }
+    };
+    Validator.prototype.setSchemas = function setSchemas(schemas) {
+      this.schemas = schemas;
+    };
+    Validator.prototype.getSchema = function getSchema(urn) {
+      return this.schemas[urn];
+    };
+    Validator.prototype.validate = function validate2(instance, schema, options, ctx) {
+      if (typeof schema !== "boolean" && typeof schema !== "object" || schema === null) {
+        throw new SchemaError("Expected `schema` to be an object or boolean");
+      }
+      if (!options) {
+        options = {};
+      }
+      var id = schema.$id || schema.id;
+      let base = helpers.resolveUrl(options.base, id || "");
+      if (!ctx) {
+        ctx = new SchemaContext(schema, options, [], base, Object.create(this.schemas));
+        if (!ctx.schemas[base]) {
+          ctx.schemas[base] = schema;
+        }
+        var found = scanSchema(base, schema);
+        for (var n in found.id) {
+          var sch = found.id[n];
+          ctx.schemas[n] = sch;
+        }
+      }
+      if (options.required && instance === void 0) {
+        var result = new ValidatorResult(instance, schema, options, ctx);
+        result.addError("is required, but is undefined");
+        return result;
+      }
+      var result = this.validateSchema(instance, schema, options, ctx);
+      if (!result) {
+        throw new Error("Result undefined");
+      } else if (options.throwAll && result.errors.length) {
+        throw new ValidatorResultError(result);
+      }
+      return result;
+    };
+    function shouldResolve(schema) {
+      var ref = typeof schema === "string" ? schema : schema.$ref;
+      if (typeof ref == "string") return ref;
+      return false;
+    }
+    Validator.prototype.validateSchema = function validateSchema(instance, schema, options, ctx) {
+      var result = new ValidatorResult(instance, schema, options, ctx);
+      if (typeof schema === "boolean") {
+        if (schema === true) {
+          schema = {};
+        } else if (schema === false) {
+          schema = { type: [] };
+        }
+      } else if (!schema) {
+        throw new Error("schema is undefined");
+      }
+      if (schema["extends"]) {
+        if (Array.isArray(schema["extends"])) {
+          var schemaobj = { schema, ctx };
+          schema["extends"].forEach(this.schemaTraverser.bind(this, schemaobj));
+          schema = schemaobj.schema;
+          schemaobj.schema = null;
+          schemaobj.ctx = null;
+          schemaobj = null;
+        } else {
+          schema = helpers.deepMerge(schema, this.superResolve(schema["extends"], ctx));
+        }
+      }
+      var switchSchema = shouldResolve(schema);
+      if (switchSchema) {
+        var resolved = this.resolve(schema, switchSchema, ctx);
+        var subctx = new SchemaContext(resolved.subschema, options, ctx.path, resolved.switchSchema, ctx.schemas);
+        return this.validateSchema(instance, resolved.subschema, options, subctx);
+      }
+      var skipAttributes = options && options.skipAttributes || [];
+      for (var key in schema) {
+        if (!attribute.ignoreProperties[key] && skipAttributes.indexOf(key) < 0) {
+          var validatorErr = null;
+          var validator = this.attributes[key];
+          if (validator) {
+            validatorErr = validator.call(this, instance, schema, options, ctx);
+          } else if (options.allowUnknownAttributes === false) {
+            throw new SchemaError("Unsupported attribute: " + key, schema);
+          }
+          if (validatorErr) {
+            result.importErrors(validatorErr);
+          }
+        }
+      }
+      if (typeof options.rewrite == "function") {
+        var value = options.rewrite.call(this, instance, schema, options, ctx);
+        result.instance = value;
+      }
+      return result;
+    };
+    Validator.prototype.schemaTraverser = function schemaTraverser(schemaobj, s) {
+      schemaobj.schema = helpers.deepMerge(schemaobj.schema, this.superResolve(s, schemaobj.ctx));
+    };
+    Validator.prototype.superResolve = function superResolve(schema, ctx) {
+      var ref = shouldResolve(schema);
+      if (ref) {
+        return this.resolve(schema, ref, ctx).subschema;
+      }
+      return schema;
+    };
+    Validator.prototype.resolve = function resolve6(schema, switchSchema, ctx) {
+      switchSchema = ctx.resolve(switchSchema);
+      if (ctx.schemas[switchSchema]) {
+        return { subschema: ctx.schemas[switchSchema], switchSchema };
+      }
+      let hashIndex = switchSchema.indexOf("#");
+      let fragment = hashIndex === -1 || hashIndex === switchSchema.length - 1 ? "" : switchSchema.substr(hashIndex);
+      var document = fragment && fragment.length && switchSchema.substr(0, switchSchema.length - fragment.length);
+      if (!document || !ctx.schemas[document]) {
+        throw new SchemaError("no such schema <" + switchSchema + ">", schema);
+      }
+      var subschema = helpers.objectGetPath(ctx.schemas[document], fragment.substr(1));
+      if (subschema === void 0) {
+        throw new SchemaError("no such schema " + fragment + " located in <" + document + ">", schema);
+      }
+      return { subschema, switchSchema };
+    };
+    Validator.prototype.testType = function validateType(instance, schema, options, ctx, type) {
+      if (type === void 0) {
+        return;
+      } else if (type === null) {
+        throw new SchemaError('Unexpected null in "type" keyword');
+      }
+      if (typeof this.types[type] == "function") {
+        return this.types[type].call(this, instance);
+      }
+      if (type && typeof type == "object") {
+        var res = this.validateSchema(instance, type, options, ctx);
+        return res === void 0 || !(res && res.errors.length);
+      }
+      return true;
+    };
+    var types2 = Validator.prototype.types = {};
+    types2.string = function testString(instance) {
+      return typeof instance == "string";
+    };
+    types2.number = function testNumber(instance) {
+      return typeof instance == "number" && isFinite(instance);
+    };
+    types2.integer = function testInteger(instance) {
+      return typeof instance == "number" && instance % 1 === 0;
+    };
+    types2.boolean = function testBoolean(instance) {
+      return typeof instance == "boolean";
+    };
+    types2.array = function testArray(instance) {
+      return Array.isArray(instance);
+    };
+    types2["null"] = function testNull(instance) {
+      return instance === null;
+    };
+    types2.date = function testDate(instance) {
+      return instance instanceof Date;
+    };
+    types2.any = function testAny(instance) {
+      return true;
+    };
+    types2.object = function testObject(instance) {
+      return instance && typeof instance === "object" && !Array.isArray(instance) && !(instance instanceof Date);
+    };
+    module2.exports = Validator;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js
+var require_lib = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/jsonschema/lib/index.js"(exports2, module2) {
+    "use strict";
+    var Validator = module2.exports.Validator = require_validator();
+    module2.exports.ValidatorResult = require_helpers().ValidatorResult;
+    module2.exports.ValidatorResultError = require_helpers().ValidatorResultError;
+    module2.exports.ValidationError = require_helpers().ValidationError;
+    module2.exports.SchemaError = require_helpers().SchemaError;
+    module2.exports.SchemaScanResult = require_scan().SchemaScanResult;
+    module2.exports.scan = require_scan().scan;
+    module2.exports.validate = function(instance, schema, options) {
+      var v = new Validator();
+      return v.validate(instance, schema, options);
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js
+var require_constants = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/constants.js"(exports2, module2) {
+    "use strict";
+    var SEMVER_SPEC_VERSION = "2.0.0";
+    var MAX_LENGTH = 256;
+    var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */
+    9007199254740991;
+    var MAX_SAFE_COMPONENT_LENGTH = 16;
+    var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6;
+    var RELEASE_TYPES = [
+      "major",
+      "premajor",
+      "minor",
+      "preminor",
+      "patch",
+      "prepatch",
+      "prerelease"
+    ];
+    module2.exports = {
+      MAX_LENGTH,
+      MAX_SAFE_COMPONENT_LENGTH,
+      MAX_SAFE_BUILD_LENGTH,
+      MAX_SAFE_INTEGER,
+      RELEASE_TYPES,
+      SEMVER_SPEC_VERSION,
+      FLAG_INCLUDE_PRERELEASE: 1,
+      FLAG_LOOSE: 2
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js
+var require_debug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/debug.js"(exports2, module2) {
+    "use strict";
+    var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {
+    };
+    module2.exports = debug;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js
+var require_re = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/re.js"(exports2, module2) {
+    "use strict";
+    var {
+      MAX_SAFE_COMPONENT_LENGTH,
+      MAX_SAFE_BUILD_LENGTH,
+      MAX_LENGTH
+    } = require_constants();
+    var debug = require_debug();
+    exports2 = module2.exports = {};
+    var re = exports2.re = [];
+    var safeRe = exports2.safeRe = [];
+    var src = exports2.src = [];
+    var safeSrc = exports2.safeSrc = [];
+    var t = exports2.t = {};
+    var R = 0;
+    var LETTERDASHNUMBER = "[a-zA-Z0-9-]";
+    var safeRegexReplacements = [
+      ["\\s", 1],
+      ["\\d", MAX_LENGTH],
+      [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH]
+    ];
+    var makeSafeRegex = (value) => {
+      for (const [token, max] of safeRegexReplacements) {
+        value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`);
+      }
+      return value;
+    };
+    var createToken = (name, value, isGlobal) => {
+      const safe = makeSafeRegex(value);
+      const index = R++;
+      debug(name, index, value);
+      t[name] = index;
+      src[index] = value;
+      safeSrc[index] = safe;
+      re[index] = new RegExp(value, isGlobal ? "g" : void 0);
+      safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0);
+    };
+    createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*");
+    createToken("NUMERICIDENTIFIERLOOSE", "\\d+");
+    createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`);
+    createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`);
+    createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`);
+    createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIER]})`);
+    createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIERLOOSE]})`);
+    createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`);
+    createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`);
+    createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`);
+    createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`);
+    createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`);
+    createToken("FULL", `^${src[t.FULLPLAIN]}$`);
+    createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`);
+    createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`);
+    createToken("GTLT", "((?:<|>)?=?)");
+    createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);
+    createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`);
+    createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`);
+    createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`);
+    createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`);
+    createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);
+    createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`);
+    createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?(?:${src[t.BUILD]})?(?:$|[^\\d])`);
+    createToken("COERCERTL", src[t.COERCE], true);
+    createToken("COERCERTLFULL", src[t.COERCEFULL], true);
+    createToken("LONETILDE", "(?:~>?)");
+    createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true);
+    exports2.tildeTrimReplace = "$1~";
+    createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`);
+    createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("LONECARET", "(?:\\^)");
+    createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true);
+    exports2.caretTrimReplace = "$1^";
+    createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`);
+    createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`);
+    createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`);
+    createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`);
+    createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true);
+    exports2.comparatorTrimReplace = "$1$2$3";
+    createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`);
+    createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`);
+    createToken("STAR", "(<|>)?=?\\s*\\*");
+    createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$");
+    createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$");
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js
+var require_parse_options = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/parse-options.js"(exports2, module2) {
+    "use strict";
+    var looseOption = Object.freeze({ loose: true });
+    var emptyOpts = Object.freeze({});
+    var parseOptions = (options) => {
+      if (!options) {
+        return emptyOpts;
+      }
+      if (typeof options !== "object") {
+        return looseOption;
+      }
+      return options;
+    };
+    module2.exports = parseOptions;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js
+var require_identifiers = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/identifiers.js"(exports2, module2) {
+    "use strict";
+    var numeric = /^[0-9]+$/;
+    var compareIdentifiers = (a, b) => {
+      if (typeof a === "number" && typeof b === "number") {
+        return a === b ? 0 : a < b ? -1 : 1;
+      }
+      const anum = numeric.test(a);
+      const bnum = numeric.test(b);
+      if (anum && bnum) {
+        a = +a;
+        b = +b;
+      }
+      return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1;
+    };
+    var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a);
+    module2.exports = {
+      compareIdentifiers,
+      rcompareIdentifiers
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js
+var require_semver = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/semver.js"(exports2, module2) {
+    "use strict";
+    var debug = require_debug();
+    var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
+    var { safeRe: re, t } = require_re();
+    var parseOptions = require_parse_options();
+    var { compareIdentifiers } = require_identifiers();
+    var isPrereleaseIdentifier = (prerelease, identifier) => {
+      const identifiers = identifier.split(".");
+      if (identifiers.length > prerelease.length) {
+        return false;
+      }
+      for (let i = 0; i < identifiers.length; i++) {
+        if (compareIdentifiers(prerelease[i], identifiers[i]) !== 0) {
+          return false;
+        }
+      }
+      return true;
+    };
+    var SemVer = class _SemVer {
+      constructor(version3, options) {
+        options = parseOptions(options);
+        if (version3 instanceof _SemVer) {
+          if (version3.loose === !!options.loose && version3.includePrerelease === !!options.includePrerelease) {
+            return version3;
+          } else {
+            version3 = version3.version;
+          }
+        } else if (typeof version3 !== "string") {
+          throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version3}".`);
+        }
+        if (version3.length > MAX_LENGTH) {
+          throw new TypeError(
+            `version is longer than ${MAX_LENGTH} characters`
+          );
+        }
+        debug("SemVer", version3, options);
+        this.options = options;
+        this.loose = !!options.loose;
+        this.includePrerelease = !!options.includePrerelease;
+        const m = version3.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]);
+        if (!m) {
+          throw new TypeError(`Invalid Version: ${version3}`);
+        }
+        this.raw = version3;
+        this.major = +m[1];
+        this.minor = +m[2];
+        this.patch = +m[3];
+        if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
+          throw new TypeError("Invalid major version");
+        }
+        if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
+          throw new TypeError("Invalid minor version");
+        }
+        if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
+          throw new TypeError("Invalid patch version");
+        }
+        if (!m[4]) {
+          this.prerelease = [];
+        } else {
+          this.prerelease = m[4].split(".").map((id) => {
+            if (/^[0-9]+$/.test(id)) {
+              const num = +id;
+              if (num >= 0 && num < MAX_SAFE_INTEGER) {
+                return num;
+              }
+            }
+            return id;
+          });
+        }
+        this.build = m[5] ? m[5].split(".") : [];
+        this.format();
+      }
+      format() {
+        this.version = `${this.major}.${this.minor}.${this.patch}`;
+        if (this.prerelease.length) {
+          this.version += `-${this.prerelease.join(".")}`;
+        }
+        return this.version;
+      }
+      toString() {
+        return this.version;
+      }
+      compare(other) {
+        debug("SemVer.compare", this.version, this.options, other);
+        if (!(other instanceof _SemVer)) {
+          if (typeof other === "string" && other === this.version) {
+            return 0;
+          }
+          other = new _SemVer(other, this.options);
+        }
+        if (other.version === this.version) {
+          return 0;
+        }
+        return this.compareMain(other) || this.comparePre(other);
+      }
+      compareMain(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        if (this.major < other.major) {
+          return -1;
+        }
+        if (this.major > other.major) {
+          return 1;
+        }
+        if (this.minor < other.minor) {
+          return -1;
+        }
+        if (this.minor > other.minor) {
+          return 1;
+        }
+        if (this.patch < other.patch) {
+          return -1;
+        }
+        if (this.patch > other.patch) {
+          return 1;
+        }
+        return 0;
+      }
+      comparePre(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        if (this.prerelease.length && !other.prerelease.length) {
+          return -1;
+        } else if (!this.prerelease.length && other.prerelease.length) {
+          return 1;
+        } else if (!this.prerelease.length && !other.prerelease.length) {
+          return 0;
+        }
+        let i = 0;
+        do {
+          const a = this.prerelease[i];
+          const b = other.prerelease[i];
+          debug("prerelease compare", i, a, b);
+          if (a === void 0 && b === void 0) {
+            return 0;
+          } else if (b === void 0) {
+            return 1;
+          } else if (a === void 0) {
+            return -1;
+          } else if (a === b) {
+            continue;
+          } else {
+            return compareIdentifiers(a, b);
+          }
+        } while (++i);
+      }
+      compareBuild(other) {
+        if (!(other instanceof _SemVer)) {
+          other = new _SemVer(other, this.options);
+        }
+        let i = 0;
+        do {
+          const a = this.build[i];
+          const b = other.build[i];
+          debug("build compare", i, a, b);
+          if (a === void 0 && b === void 0) {
+            return 0;
+          } else if (b === void 0) {
+            return 1;
+          } else if (a === void 0) {
+            return -1;
+          } else if (a === b) {
+            continue;
+          } else {
+            return compareIdentifiers(a, b);
+          }
+        } while (++i);
+      }
+      // preminor will bump the version up to the next minor release, and immediately
+      // down to pre-release. premajor and prepatch work the same way.
+      inc(release, identifier, identifierBase) {
+        if (release.startsWith("pre")) {
+          if (!identifier && identifierBase === false) {
+            throw new Error("invalid increment argument: identifier is empty");
+          }
+          if (identifier) {
+            const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]);
+            if (!match || match[1] !== identifier) {
+              throw new Error(`invalid identifier: ${identifier}`);
+            }
+          }
+        }
+        switch (release) {
+          case "premajor":
+            this.prerelease.length = 0;
+            this.patch = 0;
+            this.minor = 0;
+            this.major++;
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "preminor":
+            this.prerelease.length = 0;
+            this.patch = 0;
+            this.minor++;
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "prepatch":
+            this.prerelease.length = 0;
+            this.inc("patch", identifier, identifierBase);
+            this.inc("pre", identifier, identifierBase);
+            break;
+          // If the input is a non-prerelease version, this acts the same as
+          // prepatch.
+          case "prerelease":
+            if (this.prerelease.length === 0) {
+              this.inc("patch", identifier, identifierBase);
+            }
+            this.inc("pre", identifier, identifierBase);
+            break;
+          case "release":
+            if (this.prerelease.length === 0) {
+              throw new Error(`version ${this.raw} is not a prerelease`);
+            }
+            this.prerelease.length = 0;
+            break;
+          case "major":
+            if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {
+              this.major++;
+            }
+            this.minor = 0;
+            this.patch = 0;
+            this.prerelease = [];
+            break;
+          case "minor":
+            if (this.patch !== 0 || this.prerelease.length === 0) {
+              this.minor++;
+            }
+            this.patch = 0;
+            this.prerelease = [];
+            break;
+          case "patch":
+            if (this.prerelease.length === 0) {
+              this.patch++;
+            }
+            this.prerelease = [];
+            break;
+          // This probably shouldn't be used publicly.
+          // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
+          case "pre": {
+            const base = Number(identifierBase) ? 1 : 0;
+            if (this.prerelease.length === 0) {
+              this.prerelease = [base];
+            } else {
+              let i = this.prerelease.length;
+              while (--i >= 0) {
+                if (typeof this.prerelease[i] === "number") {
+                  this.prerelease[i]++;
+                  i = -2;
+                }
+              }
+              if (i === -1) {
+                if (identifier === this.prerelease.join(".") && identifierBase === false) {
+                  throw new Error("invalid increment argument: identifier already exists");
+                }
+                this.prerelease.push(base);
+              }
+            }
+            if (identifier) {
+              let prerelease = [identifier, base];
+              if (identifierBase === false) {
+                prerelease = [identifier];
+              }
+              if (isPrereleaseIdentifier(this.prerelease, identifier)) {
+                const prereleaseBase = this.prerelease[identifier.split(".").length];
+                if (isNaN(prereleaseBase)) {
+                  this.prerelease = prerelease;
+                }
+              } else {
+                this.prerelease = prerelease;
+              }
+            }
+            break;
+          }
+          default:
+            throw new Error(`invalid increment argument: ${release}`);
+        }
+        this.raw = this.format();
+        if (this.build.length) {
+          this.raw += `+${this.build.join(".")}`;
+        }
+        return this;
+      }
+    };
+    module2.exports = SemVer;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js
+var require_parse = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/parse.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var parse3 = (version3, options, throwErrors = false) => {
+      if (version3 instanceof SemVer) {
+        return version3;
+      }
+      try {
+        return new SemVer(version3, options);
+      } catch (er) {
+        if (!throwErrors) {
+          return null;
+        }
+        throw er;
+      }
+    };
+    module2.exports = parse3;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js
+var require_valid = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/valid.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var valid = (version3, options) => {
+      const v = parse3(version3, options);
+      return v ? v.version : null;
+    };
+    module2.exports = valid;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js
+var require_clean = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/clean.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var clean = (version3, options) => {
+      const s = parse3(version3.trim().replace(/^[=v]+/, ""), options);
+      return s ? s.version : null;
+    };
+    module2.exports = clean;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js
+var require_inc = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/inc.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var inc = (version3, release, options, identifier, identifierBase) => {
+      if (typeof options === "string") {
+        identifierBase = identifier;
+        identifier = options;
+        options = void 0;
+      }
+      try {
+        return new SemVer(
+          version3 instanceof SemVer ? version3.version : version3,
+          options
+        ).inc(release, identifier, identifierBase).version;
+      } catch (er) {
+        return null;
+      }
+    };
+    module2.exports = inc;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js
+var require_diff = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/diff.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var diff = (version1, version22) => {
+      const v12 = parse3(version1, null, true);
+      const v2 = parse3(version22, null, true);
+      const comparison = v12.compare(v2);
+      if (comparison === 0) {
+        return null;
+      }
+      const v1Higher = comparison > 0;
+      const highVersion = v1Higher ? v12 : v2;
+      const lowVersion = v1Higher ? v2 : v12;
+      const highHasPre = !!highVersion.prerelease.length;
+      const lowHasPre = !!lowVersion.prerelease.length;
+      if (lowHasPre && !highHasPre) {
+        if (!lowVersion.patch && !lowVersion.minor) {
+          return "major";
+        }
+        if (lowVersion.compareMain(highVersion) === 0) {
+          if (lowVersion.minor && !lowVersion.patch) {
+            return "minor";
+          }
+          return "patch";
+        }
+      }
+      const prefix = highHasPre ? "pre" : "";
+      if (v12.major !== v2.major) {
+        return prefix + "major";
+      }
+      if (v12.minor !== v2.minor) {
+        return prefix + "minor";
+      }
+      if (v12.patch !== v2.patch) {
+        return prefix + "patch";
+      }
+      return "prerelease";
+    };
+    module2.exports = diff;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js
+var require_major = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/major.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var major = (a, loose) => new SemVer(a, loose).major;
+    module2.exports = major;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js
+var require_minor = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/minor.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var minor = (a, loose) => new SemVer(a, loose).minor;
+    module2.exports = minor;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js
+var require_patch = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/patch.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var patch = (a, loose) => new SemVer(a, loose).patch;
+    module2.exports = patch;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js
+var require_prerelease = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/prerelease.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var prerelease = (version3, options) => {
+      const parsed = parse3(version3, options);
+      return parsed && parsed.prerelease.length ? parsed.prerelease : null;
+    };
+    module2.exports = prerelease;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js
+var require_compare = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
+    module2.exports = compare;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js
+var require_rcompare = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rcompare.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var rcompare = (a, b, loose) => compare(b, a, loose);
+    module2.exports = rcompare;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js
+var require_compare_loose = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-loose.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var compareLoose = (a, b) => compare(a, b, true);
+    module2.exports = compareLoose;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js
+var require_compare_build = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/compare-build.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var compareBuild = (a, b, loose) => {
+      const versionA = new SemVer(a, loose);
+      const versionB = new SemVer(b, loose);
+      return versionA.compare(versionB) || versionA.compareBuild(versionB);
+    };
+    module2.exports = compareBuild;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js
+var require_sort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/sort.js"(exports2, module2) {
+    "use strict";
+    var compareBuild = require_compare_build();
+    var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
+    module2.exports = sort;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js
+var require_rsort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/rsort.js"(exports2, module2) {
+    "use strict";
+    var compareBuild = require_compare_build();
+    var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
+    module2.exports = rsort;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js
+var require_gt = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gt.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var gt = (a, b, loose) => compare(a, b, loose) > 0;
+    module2.exports = gt;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js
+var require_lt = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lt.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var lt = (a, b, loose) => compare(a, b, loose) < 0;
+    module2.exports = lt;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js
+var require_eq = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/eq.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var eq = (a, b, loose) => compare(a, b, loose) === 0;
+    module2.exports = eq;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js
+var require_neq = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/neq.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var neq = (a, b, loose) => compare(a, b, loose) !== 0;
+    module2.exports = neq;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js
+var require_gte = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/gte.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var gte = (a, b, loose) => compare(a, b, loose) >= 0;
+    module2.exports = gte;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js
+var require_lte = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/lte.js"(exports2, module2) {
+    "use strict";
+    var compare = require_compare();
+    var lte = (a, b, loose) => compare(a, b, loose) <= 0;
+    module2.exports = lte;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js
+var require_cmp = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/cmp.js"(exports2, module2) {
+    "use strict";
+    var eq = require_eq();
+    var neq = require_neq();
+    var gt = require_gt();
+    var gte = require_gte();
+    var lt = require_lt();
+    var lte = require_lte();
+    var cmp = (a, op, b, loose) => {
+      switch (op) {
+        case "===":
+          if (typeof a === "object") {
+            a = a.version;
+          }
+          if (typeof b === "object") {
+            b = b.version;
+          }
+          return a === b;
+        case "!==":
+          if (typeof a === "object") {
+            a = a.version;
+          }
+          if (typeof b === "object") {
+            b = b.version;
+          }
+          return a !== b;
+        case "":
+        case "=":
+        case "==":
+          return eq(a, b, loose);
+        case "!=":
+          return neq(a, b, loose);
+        case ">":
+          return gt(a, b, loose);
+        case ">=":
+          return gte(a, b, loose);
+        case "<":
+          return lt(a, b, loose);
+        case "<=":
+          return lte(a, b, loose);
+        default:
+          throw new TypeError(`Invalid operator: ${op}`);
+      }
+    };
+    module2.exports = cmp;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js
+var require_coerce = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/coerce.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var parse3 = require_parse();
+    var { safeRe: re, t } = require_re();
+    var coerce = (version3, options) => {
+      if (version3 instanceof SemVer) {
+        return version3;
+      }
+      if (typeof version3 === "number") {
+        version3 = String(version3);
+      }
+      if (typeof version3 !== "string") {
+        return null;
+      }
+      options = options || {};
+      let match = null;
+      if (!options.rtl) {
+        match = version3.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
+      } else {
+        const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL];
+        let next;
+        while ((next = coerceRtlRegex.exec(version3)) && (!match || match.index + match[0].length !== version3.length)) {
+          if (!match || next.index + next[0].length !== match.index + match[0].length) {
+            match = next;
+          }
+          coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
+        }
+        coerceRtlRegex.lastIndex = -1;
+      }
+      if (match === null) {
+        return null;
+      }
+      const major = match[2];
+      const minor = match[3] || "0";
+      const patch = match[4] || "0";
+      const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
+      const build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
+      return parse3(`${major}.${minor}.${patch}${prerelease}${build}`, options);
+    };
+    module2.exports = coerce;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js
+var require_truncate = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/truncate.js"(exports2, module2) {
+    "use strict";
+    var parse3 = require_parse();
+    var constants2 = require_constants();
+    var SemVer = require_semver();
+    var truncate = (version3, truncation, options) => {
+      if (!constants2.RELEASE_TYPES.includes(truncation)) {
+        return null;
+      }
+      const clonedVersion = cloneInputVersion(version3, options);
+      return clonedVersion && doTruncation(clonedVersion, truncation);
+    };
+    var cloneInputVersion = (version3, options) => {
+      const versionStringToParse = version3 instanceof SemVer ? version3.version : version3;
+      return parse3(versionStringToParse, options);
+    };
+    var doTruncation = (version3, truncation) => {
+      if (isPrerelease(truncation)) {
+        return version3.version;
+      }
+      version3.prerelease = [];
+      switch (truncation) {
+        case "major":
+          version3.minor = 0;
+          version3.patch = 0;
+          break;
+        case "minor":
+          version3.patch = 0;
+          break;
+      }
+      return version3.format();
+    };
+    var isPrerelease = (type) => {
+      return type.startsWith("pre");
+    };
+    module2.exports = truncate;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js
+var require_lrucache = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/internal/lrucache.js"(exports2, module2) {
+    "use strict";
+    var LRUCache = class {
+      constructor() {
+        this.max = 1e3;
+        this.map = /* @__PURE__ */ new Map();
+      }
+      get(key) {
+        const value = this.map.get(key);
+        if (value === void 0) {
+          return void 0;
+        } else {
+          this.map.delete(key);
+          this.map.set(key, value);
+          return value;
+        }
+      }
+      delete(key) {
+        return this.map.delete(key);
+      }
+      set(key, value) {
+        const deleted = this.delete(key);
+        if (!deleted && value !== void 0) {
+          if (this.map.size >= this.max) {
+            const firstKey = this.map.keys().next().value;
+            this.delete(firstKey);
+          }
+          this.map.set(key, value);
+        }
+        return this;
+      }
+    };
+    module2.exports = LRUCache;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js
+var require_range = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/range.js"(exports2, module2) {
+    "use strict";
+    var SPACE_CHARACTERS = /\s+/g;
+    var Range = class _Range {
+      constructor(range4, options) {
+        options = parseOptions(options);
+        if (range4 instanceof _Range) {
+          if (range4.loose === !!options.loose && range4.includePrerelease === !!options.includePrerelease) {
+            return range4;
+          } else {
+            return new _Range(range4.raw, options);
+          }
+        }
+        if (range4 instanceof Comparator) {
+          this.raw = range4.value;
+          this.set = [[range4]];
+          this.formatted = void 0;
+          return this;
+        }
+        this.options = options;
+        this.loose = !!options.loose;
+        this.includePrerelease = !!options.includePrerelease;
+        this.raw = range4.trim().replace(SPACE_CHARACTERS, " ");
+        this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length);
+        if (!this.set.length) {
+          throw new TypeError(`Invalid SemVer Range: ${this.raw}`);
+        }
+        if (this.set.length > 1) {
+          const first = this.set[0];
+          this.set = this.set.filter((c) => !isNullSet(c[0]));
+          if (this.set.length === 0) {
+            this.set = [first];
+          } else if (this.set.length > 1) {
+            for (const c of this.set) {
+              if (c.length === 1 && isAny(c[0])) {
+                this.set = [c];
+                break;
+              }
+            }
+          }
+        }
+        this.formatted = void 0;
+      }
+      get range() {
+        if (this.formatted === void 0) {
+          this.formatted = "";
+          for (let i = 0; i < this.set.length; i++) {
+            if (i > 0) {
+              this.formatted += "||";
+            }
+            const comps = this.set[i];
+            for (let k = 0; k < comps.length; k++) {
+              if (k > 0) {
+                this.formatted += " ";
+              }
+              this.formatted += comps[k].toString().trim();
+            }
+          }
+        }
+        return this.formatted;
+      }
+      format() {
+        return this.range;
+      }
+      toString() {
+        return this.range;
+      }
+      parseRange(range4) {
+        range4 = range4.replace(BUILDSTRIPRE, "");
+        const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE);
+        const memoKey = memoOpts + ":" + range4;
+        const cached = cache.get(memoKey);
+        if (cached) {
+          return cached;
+        }
+        const loose = this.options.loose;
+        const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE];
+        range4 = range4.replace(hr, hyphenReplace(this.options.includePrerelease));
+        debug("hyphen replace", range4);
+        range4 = range4.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
+        debug("comparator trim", range4);
+        range4 = range4.replace(re[t.TILDETRIM], tildeTrimReplace);
+        debug("tilde trim", range4);
+        range4 = range4.replace(re[t.CARETTRIM], caretTrimReplace);
+        debug("caret trim", range4);
+        let rangeList = range4.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options));
+        if (loose) {
+          rangeList = rangeList.filter((comp) => {
+            debug("loose invalid filter", comp, this.options);
+            return !!comp.match(re[t.COMPARATORLOOSE]);
+          });
+        }
+        debug("range list", rangeList);
+        const rangeMap = /* @__PURE__ */ new Map();
+        const comparators = rangeList.map((comp) => new Comparator(comp, this.options));
+        for (const comp of comparators) {
+          if (isNullSet(comp)) {
+            return [comp];
+          }
+          rangeMap.set(comp.value, comp);
+        }
+        if (rangeMap.size > 1 && rangeMap.has("")) {
+          rangeMap.delete("");
+        }
+        const result = [...rangeMap.values()];
+        cache.set(memoKey, result);
+        return result;
+      }
+      intersects(range4, options) {
+        if (!(range4 instanceof _Range)) {
+          throw new TypeError("a Range is required");
+        }
+        return this.set.some((thisComparators) => {
+          return isSatisfiable(thisComparators, options) && range4.set.some((rangeComparators) => {
+            return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => {
+              return rangeComparators.every((rangeComparator) => {
+                return thisComparator.intersects(rangeComparator, options);
+              });
+            });
+          });
+        });
+      }
+      // if ANY of the sets match ALL of its comparators, then pass
+      test(version3) {
+        if (!version3) {
+          return false;
+        }
+        if (typeof version3 === "string") {
+          try {
+            version3 = new SemVer(version3, this.options);
+          } catch (er) {
+            return false;
+          }
+        }
+        for (let i = 0; i < this.set.length; i++) {
+          if (testSet(this.set[i], version3, this.options)) {
+            return true;
+          }
+        }
+        return false;
+      }
+    };
+    module2.exports = Range;
+    var LRU = require_lrucache();
+    var cache = new LRU();
+    var parseOptions = require_parse_options();
+    var Comparator = require_comparator();
+    var debug = require_debug();
+    var SemVer = require_semver();
+    var {
+      safeRe: re,
+      src,
+      t,
+      comparatorTrimReplace,
+      tildeTrimReplace,
+      caretTrimReplace
+    } = require_re();
+    var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants();
+    var BUILDSTRIPRE = new RegExp(src[t.BUILD], "g");
+    var isNullSet = (c) => c.value === "<0.0.0-0";
+    var isAny = (c) => c.value === "";
+    var isSatisfiable = (comparators, options) => {
+      let result = true;
+      const remainingComparators = comparators.slice();
+      let testComparator = remainingComparators.pop();
+      while (result && remainingComparators.length) {
+        result = remainingComparators.every((otherComparator) => {
+          return testComparator.intersects(otherComparator, options);
+        });
+        testComparator = remainingComparators.pop();
+      }
+      return result;
+    };
+    var parseComparator = (comp, options) => {
+      comp = comp.replace(re[t.BUILD], "");
+      debug("comp", comp, options);
+      comp = replaceCarets(comp, options);
+      debug("caret", comp);
+      comp = replaceTildes(comp, options);
+      debug("tildes", comp);
+      comp = replaceXRanges(comp, options);
+      debug("xrange", comp);
+      comp = replaceStars(comp, options);
+      debug("stars", comp);
+      return comp;
+    };
+    var isX = (id) => !id || id.toLowerCase() === "x" || id === "*";
+    var invalidXRangeOrder = (M, m, p) => isX(M) && !isX(m) || isX(m) && p && !isX(p);
+    var replaceTildes = (comp, options) => {
+      return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" ");
+    };
+    var replaceTilde = (comp, options) => {
+      const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
+      const z = options.includePrerelease ? "-0" : "";
+      return comp.replace(r, (_, M, m, p, pr) => {
+        debug("tilde", comp, _, M, m, p, pr);
+        let ret;
+        if (isX(M)) {
+          ret = "";
+        } else if (isX(m)) {
+          ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
+        } else if (isX(p)) {
+          ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
+        } else if (pr) {
+          debug("replaceTilde pr", pr);
+          ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
+        } else {
+          ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
+        }
+        debug("tilde return", ret);
+        return ret;
+      });
+    };
+    var replaceCarets = (comp, options) => {
+      return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" ");
+    };
+    var replaceCaret = (comp, options) => {
+      debug("caret", comp, options);
+      const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET];
+      const z = options.includePrerelease ? "-0" : "";
+      return comp.replace(r, (_, M, m, p, pr) => {
+        debug("caret", comp, _, M, m, p, pr);
+        let ret;
+        if (isX(M)) {
+          ret = "";
+        } else if (isX(m)) {
+          ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
+        } else if (isX(p)) {
+          if (M === "0") {
+            ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
+          } else {
+            ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`;
+          }
+        } else if (pr) {
+          debug("replaceCaret pr", pr);
+          if (M === "0") {
+            if (m === "0") {
+              ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`;
+            } else {
+              ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
+            }
+          } else {
+            ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`;
+          }
+        } else {
+          debug("no pr");
+          if (M === "0") {
+            if (m === "0") {
+              ret = `>=${M}.${m}.${p} <${M}.${m}.${+p + 1}-0`;
+            } else {
+              ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
+            }
+          } else {
+            ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`;
+          }
+        }
+        debug("caret return", ret);
+        return ret;
+      });
+    };
+    var replaceXRanges = (comp, options) => {
+      debug("replaceXRanges", comp, options);
+      return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" ");
+    };
+    var replaceXRange = (comp, options) => {
+      comp = comp.trim();
+      const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE];
+      return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
+        debug("xRange", comp, ret, gtlt, M, m, p, pr);
+        if (invalidXRangeOrder(M, m, p)) {
+          return comp;
+        }
+        const xM = isX(M);
+        const xm = xM || isX(m);
+        const xp = xm || isX(p);
+        const anyX = xp;
+        if (gtlt === "=" && anyX) {
+          gtlt = "";
+        }
+        pr = options.includePrerelease ? "-0" : "";
+        if (xM) {
+          if (gtlt === ">" || gtlt === "<") {
+            ret = "<0.0.0-0";
+          } else {
+            ret = "*";
+          }
+        } else if (gtlt && anyX) {
+          if (xm) {
+            m = 0;
+          }
+          p = 0;
+          if (gtlt === ">") {
+            gtlt = ">=";
+            if (xm) {
+              M = +M + 1;
+              m = 0;
+              p = 0;
+            } else {
+              m = +m + 1;
+              p = 0;
+            }
+          } else if (gtlt === "<=") {
+            gtlt = "<";
+            if (xm) {
+              M = +M + 1;
+            } else {
+              m = +m + 1;
+            }
+          }
+          if (gtlt === "<") {
+            pr = "-0";
+          }
+          ret = `${gtlt + M}.${m}.${p}${pr}`;
+        } else if (xm) {
+          ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`;
+        } else if (xp) {
+          ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`;
+        }
+        debug("xRange return", ret);
+        return ret;
+      });
+    };
+    var replaceStars = (comp, options) => {
+      debug("replaceStars", comp, options);
+      return comp.trim().replace(re[t.STAR], "");
+    };
+    var replaceGTE0 = (comp, options) => {
+      debug("replaceGTE0", comp, options);
+      return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], "");
+    };
+    var hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => {
+      if (isX(fM)) {
+        from = "";
+      } else if (isX(fm)) {
+        from = `>=${fM}.0.0${incPr ? "-0" : ""}`;
+      } else if (isX(fp)) {
+        from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`;
+      } else if (fpr) {
+        from = `>=${from}`;
+      } else {
+        from = `>=${from}${incPr ? "-0" : ""}`;
+      }
+      if (isX(tM)) {
+        to = "";
+      } else if (isX(tm)) {
+        to = `<${+tM + 1}.0.0-0`;
+      } else if (isX(tp)) {
+        to = `<${tM}.${+tm + 1}.0-0`;
+      } else if (tpr) {
+        to = `<=${tM}.${tm}.${tp}-${tpr}`;
+      } else if (incPr) {
+        to = `<${tM}.${tm}.${+tp + 1}-0`;
+      } else {
+        to = `<=${to}`;
+      }
+      return `${from} ${to}`.trim();
+    };
+    var testSet = (set, version3, options) => {
+      for (let i = 0; i < set.length; i++) {
+        if (!set[i].test(version3)) {
+          return false;
+        }
+      }
+      if (version3.prerelease.length && !options.includePrerelease) {
+        for (let i = 0; i < set.length; i++) {
+          debug(set[i].semver);
+          if (set[i].semver === Comparator.ANY) {
+            continue;
+          }
+          if (set[i].semver.prerelease.length > 0) {
+            const allowed = set[i].semver;
+            if (allowed.major === version3.major && allowed.minor === version3.minor && allowed.patch === version3.patch) {
+              return true;
+            }
+          }
+        }
+        return false;
+      }
+      return true;
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js
+var require_comparator = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/classes/comparator.js"(exports2, module2) {
+    "use strict";
+    var ANY = /* @__PURE__ */ Symbol("SemVer ANY");
+    var Comparator = class _Comparator {
+      static get ANY() {
+        return ANY;
+      }
+      constructor(comp, options) {
+        options = parseOptions(options);
+        if (comp instanceof _Comparator) {
+          if (comp.loose === !!options.loose) {
+            return comp;
+          } else {
+            comp = comp.value;
+          }
+        }
+        comp = comp.trim().split(/\s+/).join(" ");
+        debug("comparator", comp, options);
+        this.options = options;
+        this.loose = !!options.loose;
+        this.parse(comp);
+        if (this.semver === ANY) {
+          this.value = "";
+        } else {
+          this.value = this.operator + this.semver.version;
+        }
+        debug("comp", this);
+      }
+      parse(comp) {
+        const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR];
+        const m = comp.match(r);
+        if (!m) {
+          throw new TypeError(`Invalid comparator: ${comp}`);
+        }
+        this.operator = m[1] !== void 0 ? m[1] : "";
+        if (this.operator === "=") {
+          this.operator = "";
+        }
+        if (!m[2]) {
+          this.semver = ANY;
+        } else {
+          this.semver = new SemVer(m[2], this.options.loose);
+        }
+      }
+      toString() {
+        return this.value;
+      }
+      test(version3) {
+        debug("Comparator.test", version3, this.options.loose);
+        if (this.semver === ANY || version3 === ANY) {
+          return true;
+        }
+        if (typeof version3 === "string") {
+          try {
+            version3 = new SemVer(version3, this.options);
+          } catch (er) {
+            return false;
+          }
+        }
+        return cmp(version3, this.operator, this.semver, this.options);
+      }
+      intersects(comp, options) {
+        if (!(comp instanceof _Comparator)) {
+          throw new TypeError("a Comparator is required");
+        }
+        if (this.operator === "") {
+          if (this.value === "") {
+            return true;
+          }
+          return new Range(comp.value, options).test(this.value);
+        } else if (comp.operator === "") {
+          if (comp.value === "") {
+            return true;
+          }
+          return new Range(this.value, options).test(comp.semver);
+        }
+        options = parseOptions(options);
+        if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) {
+          return false;
+        }
+        if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) {
+          return false;
+        }
+        if (this.operator.startsWith(">") && comp.operator.startsWith(">")) {
+          return true;
+        }
+        if (this.operator.startsWith("<") && comp.operator.startsWith("<")) {
+          return true;
+        }
+        if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) {
+          return true;
+        }
+        if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) {
+          return true;
+        }
+        if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) {
+          return true;
+        }
+        return false;
+      }
+    };
+    module2.exports = Comparator;
+    var parseOptions = require_parse_options();
+    var { safeRe: re, t } = require_re();
+    var cmp = require_cmp();
+    var debug = require_debug();
+    var SemVer = require_semver();
+    var Range = require_range();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js
+var require_satisfies = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/functions/satisfies.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var satisfies = (version3, range4, options) => {
+      try {
+        range4 = new Range(range4, options);
+      } catch (er) {
+        return false;
+      }
+      return range4.test(version3);
+    };
+    module2.exports = satisfies;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js
+var require_to_comparators = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/to-comparators.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var toComparators = (range4, options) => new Range(range4, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" "));
+    module2.exports = toComparators;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js
+var require_max_satisfying = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var maxSatisfying = (versions, range4, options) => {
+      let max = null;
+      let maxSV = null;
+      let rangeObj = null;
+      try {
+        rangeObj = new Range(range4, options);
+      } catch (er) {
+        return null;
+      }
+      versions.forEach((v) => {
+        if (rangeObj.test(v)) {
+          if (!max || maxSV.compare(v) === -1) {
+            max = v;
+            maxSV = new SemVer(max, options);
+          }
+        }
+      });
+      return max;
+    };
+    module2.exports = maxSatisfying;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js
+var require_min_satisfying = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var minSatisfying = (versions, range4, options) => {
+      let min = null;
+      let minSV = null;
+      let rangeObj = null;
+      try {
+        rangeObj = new Range(range4, options);
+      } catch (er) {
+        return null;
+      }
+      versions.forEach((v) => {
+        if (rangeObj.test(v)) {
+          if (!min || minSV.compare(v) === 1) {
+            min = v;
+            minSV = new SemVer(min, options);
+          }
+        }
+      });
+      return min;
+    };
+    module2.exports = minSatisfying;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js
+var require_min_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/min-version.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Range = require_range();
+    var gt = require_gt();
+    var minVersion = (range4, loose) => {
+      range4 = new Range(range4, loose);
+      let minver = new SemVer("0.0.0");
+      if (range4.test(minver)) {
+        return minver;
+      }
+      minver = new SemVer("0.0.0-0");
+      if (range4.test(minver)) {
+        return minver;
+      }
+      minver = null;
+      for (let i = 0; i < range4.set.length; ++i) {
+        const comparators = range4.set[i];
+        let setMin = null;
+        comparators.forEach((comparator) => {
+          const compver = new SemVer(comparator.semver.version);
+          switch (comparator.operator) {
+            case ">":
+              if (compver.prerelease.length === 0) {
+                compver.patch++;
+              } else {
+                compver.prerelease.push(0);
+              }
+              compver.raw = compver.format();
+            /* fallthrough */
+            case "":
+            case ">=":
+              if (!setMin || gt(compver, setMin)) {
+                setMin = compver;
+              }
+              break;
+            case "<":
+            case "<=":
+              break;
+            /* istanbul ignore next */
+            default:
+              throw new Error(`Unexpected operation: ${comparator.operator}`);
+          }
+        });
+        if (setMin && (!minver || gt(minver, setMin))) {
+          minver = setMin;
+        }
+      }
+      if (minver && range4.test(minver)) {
+        return minver;
+      }
+      return null;
+    };
+    module2.exports = minVersion;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js
+var require_valid2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/valid.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var validRange = (range4, options) => {
+      try {
+        return new Range(range4, options).range || "*";
+      } catch (er) {
+        return null;
+      }
+    };
+    module2.exports = validRange;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js
+var require_outside = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/outside.js"(exports2, module2) {
+    "use strict";
+    var SemVer = require_semver();
+    var Comparator = require_comparator();
+    var { ANY } = Comparator;
+    var Range = require_range();
+    var satisfies = require_satisfies();
+    var gt = require_gt();
+    var lt = require_lt();
+    var lte = require_lte();
+    var gte = require_gte();
+    var outside = (version3, range4, hilo, options) => {
+      version3 = new SemVer(version3, options);
+      range4 = new Range(range4, options);
+      let gtfn, ltefn, ltfn, comp, ecomp;
+      switch (hilo) {
+        case ">":
+          gtfn = gt;
+          ltefn = lte;
+          ltfn = lt;
+          comp = ">";
+          ecomp = ">=";
+          break;
+        case "<":
+          gtfn = lt;
+          ltefn = gte;
+          ltfn = gt;
+          comp = "<";
+          ecomp = "<=";
+          break;
+        default:
+          throw new TypeError('Must provide a hilo val of "<" or ">"');
+      }
+      if (satisfies(version3, range4, options)) {
+        return false;
+      }
+      for (let i = 0; i < range4.set.length; ++i) {
+        const comparators = range4.set[i];
+        let high = null;
+        let low = null;
+        comparators.forEach((comparator) => {
+          if (comparator.semver === ANY) {
+            comparator = new Comparator(">=0.0.0");
+          }
+          high = high || comparator;
+          low = low || comparator;
+          if (gtfn(comparator.semver, high.semver, options)) {
+            high = comparator;
+          } else if (ltfn(comparator.semver, low.semver, options)) {
+            low = comparator;
+          }
+        });
+        if (high.operator === comp || high.operator === ecomp) {
+          return false;
+        }
+        if ((!low.operator || low.operator === comp) && ltefn(version3, low.semver)) {
+          return false;
+        } else if (low.operator === ecomp && ltfn(version3, low.semver)) {
+          return false;
+        }
+      }
+      return true;
+    };
+    module2.exports = outside;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js
+var require_gtr = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/gtr.js"(exports2, module2) {
+    "use strict";
+    var outside = require_outside();
+    var gtr = (version3, range4, options) => outside(version3, range4, ">", options);
+    module2.exports = gtr;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js
+var require_ltr = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/ltr.js"(exports2, module2) {
+    "use strict";
+    var outside = require_outside();
+    var ltr = (version3, range4, options) => outside(version3, range4, "<", options);
+    module2.exports = ltr;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js
+var require_intersects = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/intersects.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var intersects = (r1, r2, options) => {
+      r1 = new Range(r1, options);
+      r2 = new Range(r2, options);
+      return r1.intersects(r2, options);
+    };
+    module2.exports = intersects;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js
+var require_simplify = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/simplify.js"(exports2, module2) {
+    "use strict";
+    var satisfies = require_satisfies();
+    var compare = require_compare();
+    module2.exports = (versions, range4, options) => {
+      const set = [];
+      let first = null;
+      let prev = null;
+      const v = versions.sort((a, b) => compare(a, b, options));
+      for (const version3 of v) {
+        const included = satisfies(version3, range4, options);
+        if (included) {
+          prev = version3;
+          if (!first) {
+            first = version3;
+          }
+        } else {
+          if (prev) {
+            set.push([first, prev]);
+          }
+          prev = null;
+          first = null;
+        }
+      }
+      if (first) {
+        set.push([first, null]);
+      }
+      const ranges = [];
+      for (const [min, max] of set) {
+        if (min === max) {
+          ranges.push(min);
+        } else if (!max && min === v[0]) {
+          ranges.push("*");
+        } else if (!max) {
+          ranges.push(`>=${min}`);
+        } else if (min === v[0]) {
+          ranges.push(`<=${max}`);
+        } else {
+          ranges.push(`${min} - ${max}`);
+        }
+      }
+      const simplified = ranges.join(" || ");
+      const original = typeof range4.raw === "string" ? range4.raw : String(range4);
+      return simplified.length < original.length ? simplified : range4;
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js
+var require_subset = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/ranges/subset.js"(exports2, module2) {
+    "use strict";
+    var Range = require_range();
+    var Comparator = require_comparator();
+    var { ANY } = Comparator;
+    var satisfies = require_satisfies();
+    var compare = require_compare();
+    var subset = (sub, dom, options = {}) => {
+      if (sub === dom) {
+        return true;
+      }
+      sub = new Range(sub, options);
+      dom = new Range(dom, options);
+      let sawNonNull = false;
+      OUTER: for (const simpleSub of sub.set) {
+        for (const simpleDom of dom.set) {
+          const isSub = simpleSubset(simpleSub, simpleDom, options);
+          sawNonNull = sawNonNull || isSub !== null;
+          if (isSub) {
+            continue OUTER;
+          }
+        }
+        if (sawNonNull) {
+          return false;
+        }
+      }
+      return true;
+    };
+    var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")];
+    var minimumVersion = [new Comparator(">=0.0.0")];
+    var simpleSubset = (sub, dom, options) => {
+      if (sub === dom) {
+        return true;
+      }
+      if (sub.length === 1 && sub[0].semver === ANY) {
+        if (dom.length === 1 && dom[0].semver === ANY) {
+          return true;
+        } else if (options.includePrerelease) {
+          sub = minimumVersionWithPreRelease;
+        } else {
+          sub = minimumVersion;
+        }
+      }
+      if (dom.length === 1 && dom[0].semver === ANY) {
+        if (options.includePrerelease) {
+          return true;
+        } else {
+          dom = minimumVersion;
+        }
+      }
+      const eqSet = /* @__PURE__ */ new Set();
+      let gt, lt;
+      for (const c of sub) {
+        if (c.operator === ">" || c.operator === ">=") {
+          gt = higherGT(gt, c, options);
+        } else if (c.operator === "<" || c.operator === "<=") {
+          lt = lowerLT(lt, c, options);
+        } else {
+          eqSet.add(c.semver);
+        }
+      }
+      if (eqSet.size > 1) {
+        return null;
+      }
+      let gtltComp;
+      if (gt && lt) {
+        gtltComp = compare(gt.semver, lt.semver, options);
+        if (gtltComp > 0) {
+          return null;
+        } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) {
+          return null;
+        }
+      }
+      for (const eq of eqSet) {
+        if (gt && !satisfies(eq, String(gt), options)) {
+          return null;
+        }
+        if (lt && !satisfies(eq, String(lt), options)) {
+          return null;
+        }
+        for (const c of dom) {
+          if (!satisfies(eq, String(c), options)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      let higher, lower;
+      let hasDomLT, hasDomGT;
+      let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false;
+      let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
+      if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) {
+        needDomLTPre = false;
+      }
+      for (const c of dom) {
+        hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">=";
+        hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<=";
+        if (gt) {
+          if (needDomGTPre) {
+            if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) {
+              needDomGTPre = false;
+            }
+          }
+          if (c.operator === ">" || c.operator === ">=") {
+            higher = higherGT(gt, c, options);
+            if (higher === c && higher !== gt) {
+              return false;
+            }
+          } else if (gt.operator === ">=" && !c.test(gt.semver)) {
+            return false;
+          }
+        }
+        if (lt) {
+          if (needDomLTPre) {
+            if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) {
+              needDomLTPre = false;
+            }
+          }
+          if (c.operator === "<" || c.operator === "<=") {
+            lower = lowerLT(lt, c, options);
+            if (lower === c && lower !== lt) {
+              return false;
+            }
+          } else if (lt.operator === "<=" && !c.test(lt.semver)) {
+            return false;
+          }
+        }
+        if (!c.operator && (lt || gt) && gtltComp !== 0) {
+          return false;
+        }
+      }
+      if (gt && hasDomLT && !lt && gtltComp !== 0) {
+        return false;
+      }
+      if (lt && hasDomGT && !gt && gtltComp !== 0) {
+        return false;
+      }
+      if (needDomGTPre || needDomLTPre) {
+        return false;
+      }
+      return true;
+    };
+    var higherGT = (a, b, options) => {
+      if (!a) {
+        return b;
+      }
+      const comp = compare(a.semver, b.semver, options);
+      return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a;
+    };
+    var lowerLT = (a, b, options) => {
+      if (!a) {
+        return b;
+      }
+      const comp = compare(a.semver, b.semver, options);
+      return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a;
+    };
+    module2.exports = subset;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js
+var require_semver2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/node_modules/semver/index.js"(exports2, module2) {
+    "use strict";
+    var internalRe = require_re();
+    var constants2 = require_constants();
+    var SemVer = require_semver();
+    var identifiers = require_identifiers();
+    var parse3 = require_parse();
+    var valid = require_valid();
+    var clean = require_clean();
+    var inc = require_inc();
+    var diff = require_diff();
+    var major = require_major();
+    var minor = require_minor();
+    var patch = require_patch();
+    var prerelease = require_prerelease();
+    var compare = require_compare();
+    var rcompare = require_rcompare();
+    var compareLoose = require_compare_loose();
+    var compareBuild = require_compare_build();
+    var sort = require_sort();
+    var rsort = require_rsort();
+    var gt = require_gt();
+    var lt = require_lt();
+    var eq = require_eq();
+    var neq = require_neq();
+    var gte = require_gte();
+    var lte = require_lte();
+    var cmp = require_cmp();
+    var coerce = require_coerce();
+    var truncate = require_truncate();
+    var Comparator = require_comparator();
+    var Range = require_range();
+    var satisfies = require_satisfies();
+    var toComparators = require_to_comparators();
+    var maxSatisfying = require_max_satisfying();
+    var minSatisfying = require_min_satisfying();
+    var minVersion = require_min_version();
+    var validRange = require_valid2();
+    var outside = require_outside();
+    var gtr = require_gtr();
+    var ltr = require_ltr();
+    var intersects = require_intersects();
+    var simplifyRange = require_simplify();
+    var subset = require_subset();
+    module2.exports = {
+      parse: parse3,
+      valid,
+      clean,
+      inc,
+      diff,
+      major,
+      minor,
+      patch,
+      prerelease,
+      compare,
+      rcompare,
+      compareLoose,
+      compareBuild,
+      sort,
+      rsort,
+      gt,
+      lt,
+      eq,
+      neq,
+      gte,
+      lte,
+      cmp,
+      coerce,
+      truncate,
+      Comparator,
+      Range,
+      satisfies,
+      toComparators,
+      maxSatisfying,
+      minSatisfying,
+      minVersion,
+      validRange,
+      outside,
+      gtr,
+      ltr,
+      intersects,
+      simplifyRange,
+      subset,
+      SemVer,
+      re: internalRe.re,
+      src: internalRe.src,
+      tokens: internalRe.t,
+      SEMVER_SPEC_VERSION: constants2.SEMVER_SPEC_VERSION,
+      RELEASE_TYPES: constants2.RELEASE_TYPES,
+      compareIdentifiers: identifiers.compareIdentifiers,
+      rcompareIdentifiers: identifiers.rcompareIdentifiers
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json
+var require_cli_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/cli-version.json"(exports2, module2) {
+    module2.exports = { version: "2.1142.0" };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json
+var require_assets_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/assets.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/AssetManifest",
+      definitions: {
+        AssetManifest: {
+          description: "Definitions for the asset manifest",
+          type: "object",
+          properties: {
+            version: {
+              description: "Version of the manifest",
+              type: "string"
+            },
+            files: {
+              description: "The file assets in this manifest (Default - No files)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FileAsset"
+              }
+            },
+            dockerImages: {
+              description: "The Docker image assets in this manifest (Default - No Docker images)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/DockerImageAsset"
+              }
+            }
+          },
+          required: [
+            "version"
+          ]
+        },
+        FileAsset: {
+          description: "A file asset",
+          type: "object",
+          properties: {
+            displayName: {
+              description: "A display name for this asset (Default - The identifier will be used as the display name)",
+              type: "string"
+            },
+            source: {
+              $ref: "#/definitions/FileSource",
+              description: "Source description for file assets"
+            },
+            destinations: {
+              description: "Destinations for this file asset",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FileDestination"
+              }
+            }
+          },
+          required: [
+            "destinations",
+            "source"
+          ]
+        },
+        FileSource: {
+          description: "Describe the source of a file asset",
+          type: "object",
+          properties: {
+            executable: {
+              description: "External command which will produce the file asset to upload. (Default - Exactly one of `executable` and `path` is required.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            path: {
+              description: "The filesystem object to upload\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `executable` and `path` is required.)",
+              type: "string"
+            },
+            packaging: {
+              description: "Packaging method\n\nOnly allowed when `path` is specified. (Default FILE)",
+              enum: [
+                "file",
+                "zip"
+              ],
+              type: "string"
+            }
+          }
+        },
+        FileDestination: {
+          description: "Where in S3 a file asset needs to be published",
+          type: "object",
+          properties: {
+            bucketName: {
+              description: "The name of the bucket",
+              type: "string"
+            },
+            objectKey: {
+              description: "The destination object key",
+              type: "string"
+            },
+            region: {
+              description: "The region where this asset will need to be published (Default - Current region)",
+              type: "string"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "bucketName",
+            "objectKey"
+          ]
+        },
+        DockerImageAsset: {
+          description: "A file asset",
+          type: "object",
+          properties: {
+            displayName: {
+              description: "A display name for this asset (Default - The identifier will be used as the display name)",
+              type: "string"
+            },
+            source: {
+              $ref: "#/definitions/DockerImageSource",
+              description: "Source description for container assets"
+            },
+            destinations: {
+              description: "Destinations for this container asset",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/DockerImageDestination"
+              }
+            }
+          },
+          required: [
+            "destinations",
+            "source"
+          ]
+        },
+        DockerImageSource: {
+          description: "Properties for how to produce a Docker image from a source",
+          type: "object",
+          properties: {
+            directory: {
+              description: "The directory containing the Docker image build instructions.\n\nThis path is relative to the asset manifest location. (Default - Exactly one of `directory` and `executable` is required)",
+              type: "string"
+            },
+            executable: {
+              description: "A command-line executable that returns the name of a local\nDocker image on stdout after being run. (Default - Exactly one of `directory` and `executable` is required)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            dockerFile: {
+              description: "The name of the file with build instructions\n\nOnly allowed when `directory` is set. (Default Dockerfile)",
+              type: "string"
+            },
+            dockerBuildTarget: {
+              description: "Target build stage in a Dockerfile with multiple build stages\n\nOnly allowed when `directory` is set. (Default - The last stage in the Dockerfile)",
+              type: "string"
+            },
+            dockerBuildArgs: {
+              description: "Additional build arguments\n\nOnly allowed when `directory` is set. (Default - No additional build arguments)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            dockerBuildContexts: {
+              description: "Additional build contexts\n\nOnly allowed when `directory` is set. (Default - No additional build contexts)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            dockerBuildSsh: {
+              description: "SSH agent socket or keys\n\nRequires building with docker buildkit. (Default - No ssh flag is set)",
+              type: "string"
+            },
+            dockerBuildSecrets: {
+              description: "Additional build secrets\n\nOnly allowed when `directory` is set. (Default - No additional build secrets)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            networkMode: {
+              description: "Networking mode for the RUN commands during build. _Requires Docker Engine API v1.25+_.\n\nSpecify this property to build images on a specific networking mode. (Default - no networking mode specified)",
+              type: "string"
+            },
+            platform: {
+              description: "Platform to build for. _Requires Docker Buildx_.\n\nSpecify this property to build images on a specific platform/architecture. (Default - current machine platform)",
+              type: "string"
+            },
+            dockerOutputs: {
+              description: "Outputs (Default - no outputs are passed to the build command (default outputs are used))",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            cacheFrom: {
+              description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/DockerCacheOption"
+              }
+            },
+            cacheTo: {
+              description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)",
+              $ref: "#/definitions/DockerCacheOption"
+            },
+            cacheDisabled: {
+              description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)",
+              type: "boolean"
+            }
+          }
+        },
+        DockerCacheOption: {
+          description: "Options for configuring the Docker cache backend",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)",
+              type: "string"
+            },
+            params: {
+              description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        DockerImageDestination: {
+          description: "Where to publish docker images",
+          type: "object",
+          properties: {
+            repositoryName: {
+              description: "Name of the ECR repository to publish to",
+              type: "string"
+            },
+            imageTag: {
+              description: "Tag of the image to publish",
+              type: "string"
+            },
+            region: {
+              description: "The region where this asset will need to be published (Default - Current region)",
+              type: "string"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed while publishing this asset (Default - No role will be assumed)",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "imageTag",
+            "repositoryName"
+          ]
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json
+var require_cloud_assembly_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/AssemblyManifest",
+      definitions: {
+        AssemblyManifest: {
+          description: "A manifest which describes the cloud assembly.",
+          type: "object",
+          properties: {
+            version: {
+              description: "Protocol version",
+              type: "string"
+            },
+            minimumCliVersion: {
+              description: "Required CLI version, if available\n\nIf the manifest producer knows, it can put the minimum version of the CLI\nhere that supports reading this assembly.\n\nIf set, it can be used to show a more informative error message to users. (Default - Minimum CLI version unknown)",
+              type: "string"
+            },
+            artifacts: {
+              description: "The set of artifacts in this assembly. (Default - no artifacts.)",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/ArtifactManifest"
+              }
+            },
+            missing: {
+              description: "Missing context information. If this field has values, it means that the\ncloud assembly is not complete and should not be deployed. (Default - no missing context.)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/MissingContext"
+              }
+            },
+            runtime: {
+              description: "Runtime information. (Default - no info.)",
+              $ref: "#/definitions/RuntimeInfo"
+            }
+          },
+          required: [
+            "version"
+          ]
+        },
+        ArtifactManifest: {
+          description: "A manifest for a single artifact within the cloud assembly.",
+          type: "object",
+          properties: {
+            type: {
+              $ref: "#/definitions/ArtifactType",
+              description: "The type of artifact."
+            },
+            environment: {
+              description: "The environment into which this artifact is deployed. (Default - no envrionment.)",
+              type: "string"
+            },
+            metadata: {
+              description: "Associated metadata.\n\nMetadata can be stored directly in the assembly manifest, as well as in a\nseparate file (see `additionalMetadataFile`). It should prefer to be stored\nin the additional file, as that will reduce the size of the assembly\nmanifest in cases of a lot of metdata (which CDK does emit by default). (Default - no metadata.)",
+              type: "object",
+              additionalProperties: {
+                type: "array",
+                items: {
+                  $ref: "#/definitions/MetadataEntry"
+                }
+              }
+            },
+            additionalMetadataFile: {
+              description: "A file with additional metadata entries.\n\nThe schema of this file is exactly the same as the type of the `metadata` field.\nIn other words, that file contains an object mapping construct paths to arrays\nof metadata entries. (Default - no additional metadata)",
+              type: "string"
+            },
+            dependencies: {
+              description: "IDs of artifacts that must be deployed before this artifact. (Default - no dependencies.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            properties: {
+              description: "The set of properties for this artifact (depends on type) (Default - no properties.)",
+              anyOf: [
+                {
+                  $ref: "#/definitions/AwsCloudFormationStackProperties"
+                },
+                {
+                  $ref: "#/definitions/AssetManifestProperties"
+                },
+                {
+                  $ref: "#/definitions/TreeArtifactProperties"
+                },
+                {
+                  $ref: "#/definitions/NestedCloudAssemblyProperties"
+                },
+                {
+                  $ref: "#/definitions/FeatureFlagReportProperties"
+                }
+              ]
+            },
+            displayName: {
+              description: `A string that can be shown to a user to uniquely identify this artifact inside a cloud assembly tree
+
+Is used by the CLI to present a list of stacks to the user in a way that
+makes sense to them. Even though the property name "display name" doesn't
+imply it, this field is used to select stacks as well, so all stacks should
+have a unique display name. (Default - no display name)`,
+              type: "string"
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        ArtifactType: {
+          description: "Type of cloud artifact.",
+          type: "string",
+          enum: [
+            "none",
+            "aws:cloudformation:stack",
+            "cdk:tree",
+            "cdk:asset-manifest",
+            "cdk:cloud-assembly",
+            "cdk:feature-flag-report"
+          ]
+        },
+        MetadataEntry: {
+          description: "A metadata entry in a cloud assembly artifact.",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of the metadata entry.",
+              type: "string"
+            },
+            data: {
+              description: "The data. (Default - no data.)",
+              anyOf: [
+                {
+                  $ref: "#/definitions/FileAssetMetadataEntry"
+                },
+                {
+                  $ref: "#/definitions/ContainerImageAssetMetadataEntry"
+                },
+                {
+                  $ref: "#/definitions/PropertyMutationMetadataEntry"
+                },
+                {
+                  type: "array",
+                  items: {
+                    anyOf: [
+                      {
+                        $ref: "#/definitions/Tag"
+                      },
+                      {
+                        type: "string"
+                      }
+                    ]
+                  }
+                },
+                {
+                  type: [
+                    "string",
+                    "number",
+                    "boolean"
+                  ]
+                },
+                {
+                  description: "Free form data."
+                }
+              ]
+            },
+            trace: {
+              description: "A stack trace for when the entry was created. (Default - no trace.)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        FileAssetMetadataEntry: {
+          description: "Metadata Entry spec for files.",
+          type: "object",
+          properties: {
+            packaging: {
+              description: "Requested packaging style",
+              enum: [
+                "file",
+                "zip"
+              ],
+              type: "string"
+            },
+            s3BucketParameter: {
+              description: "Name of parameter where S3 bucket should be passed in",
+              type: "string"
+            },
+            s3KeyParameter: {
+              description: "Name of parameter where S3 key should be passed in",
+              type: "string"
+            },
+            artifactHashParameter: {
+              description: "The name of the parameter where the hash of the bundled asset should be passed in.",
+              type: "string"
+            },
+            id: {
+              description: "Logical identifier for the asset",
+              type: "string"
+            },
+            sourceHash: {
+              description: "The hash of the asset source.",
+              type: "string"
+            },
+            path: {
+              description: "Path on disk to the asset",
+              type: "string"
+            }
+          },
+          required: [
+            "artifactHashParameter",
+            "id",
+            "packaging",
+            "path",
+            "s3BucketParameter",
+            "s3KeyParameter",
+            "sourceHash"
+          ]
+        },
+        ContainerImageAssetMetadataEntry: {
+          description: "Metadata Entry spec for container images.",
+          type: "object",
+          properties: {
+            packaging: {
+              description: "Type of asset",
+              type: "string",
+              const: "container-image"
+            },
+            imageNameParameter: {
+              description: 'ECR Repository name and repo digest (separated by "@sha256:") where this\nimage is stored. (Default undefined If not specified, `repositoryName` and `imageTag` are\nrequired because otherwise how will the stack know where to find the asset,\nha?)',
+              type: "string"
+            },
+            repositoryName: {
+              description: "ECR repository name, if omitted a default name based on the asset's ID is\nused instead. Specify this property if you need to statically address the\nimage, e.g. from a Kubernetes Pod. Note, this is only the repository name,\nwithout the registry and the tag parts. (Default - this parameter is REQUIRED after 1.21.0)",
+              type: "string"
+            },
+            imageTag: {
+              description: "The docker image tag to use for tagging pushed images. This field is\nrequired if `imageParameterName` is ommited (otherwise, the app won't be\nable to find the image). (Default - this parameter is REQUIRED after 1.21.0)",
+              type: "string"
+            },
+            buildArgs: {
+              description: "Build args to pass to the `docker build` command (Default no build args are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            buildContexts: {
+              description: "Build contexts to pass to the `docker build` command (Default no build contexts are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            buildSsh: {
+              description: "SSH agent socket or keys to pass to the `docker build` command (Default no ssh arg is passed)",
+              type: "string"
+            },
+            buildSecrets: {
+              description: "Build secrets to pass to the `docker build` command (Default no build secrets are passed)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            target: {
+              description: "Docker target to build to (Default no build target)",
+              type: "string"
+            },
+            file: {
+              description: "Path to the Dockerfile (relative to the directory). (Default - no file is passed)",
+              type: "string"
+            },
+            networkMode: {
+              description: "Networking mode for the RUN commands during build. (Default - no networking mode specified)",
+              type: "string"
+            },
+            platform: {
+              description: "Platform to build for. _Requires Docker Buildx_. (Default - current machine platform)",
+              type: "string"
+            },
+            outputs: {
+              description: "Outputs to pass to the `docker build` command. (Default - no outputs are passed to the build command (default outputs are used))",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            cacheFrom: {
+              description: "Cache from options to pass to the `docker build` command. (Default - no cache from options are passed to the build command)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ContainerImageAssetCacheOption"
+              }
+            },
+            cacheTo: {
+              description: "Cache to options to pass to the `docker build` command. (Default - no cache to options are passed to the build command)",
+              $ref: "#/definitions/ContainerImageAssetCacheOption"
+            },
+            cacheDisabled: {
+              description: "Disable the cache and pass `--no-cache` to the `docker build` command. (Default - cache is used)",
+              type: "boolean"
+            },
+            id: {
+              description: "Logical identifier for the asset",
+              type: "string"
+            },
+            sourceHash: {
+              description: "The hash of the asset source.",
+              type: "string"
+            },
+            path: {
+              description: "Path on disk to the asset",
+              type: "string"
+            }
+          },
+          required: [
+            "id",
+            "packaging",
+            "path",
+            "sourceHash"
+          ]
+        },
+        ContainerImageAssetCacheOption: {
+          description: "Options for configuring the Docker cache backend",
+          type: "object",
+          properties: {
+            type: {
+              description: "The type of cache to use.\nRefer to https://docs.docker.com/build/cache/backends/ for full list of backends. (Default - unspecified)",
+              type: "string"
+            },
+            params: {
+              description: "Any parameters to pass into the docker cache backend configuration.\nRefer to https://docs.docker.com/build/cache/backends/ for cache backend configuration. (Default {} No options provided)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "type"
+          ]
+        },
+        PropertyMutationMetadataEntry: {
+          description: "Metadata type of a PropertyMutation",
+          type: "object",
+          properties: {
+            propertyName: {
+              description: "Name of the property",
+              type: "string"
+            },
+            stackTrace: {
+              description: "Stack trace of the mutation",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "propertyName",
+            "stackTrace"
+          ]
+        },
+        Tag: {
+          description: "Metadata Entry spec for stack tag.",
+          type: "object",
+          properties: {
+            key: {
+              description: 'Tag key.\n\n(In the actual file on disk this will be cased as "Key", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)',
+              type: "string"
+            },
+            value: {
+              description: 'Tag value.\n\n(In the actual file on disk this will be cased as "Value", and the structure is\npatched to match this structure upon loading:\nhttps://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)',
+              type: "string"
+            }
+          },
+          required: [
+            "key",
+            "value"
+          ]
+        },
+        AwsCloudFormationStackProperties: {
+          description: "Artifact properties for CloudFormation stacks.",
+          type: "object",
+          properties: {
+            templateFile: {
+              description: "A file relative to the assembly root which contains the CloudFormation template for this stack.",
+              type: "string"
+            },
+            parameters: {
+              description: "Values for CloudFormation stack parameters that should be passed when the stack is deployed. (Default - No parameters)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            tags: {
+              description: "Values for CloudFormation stack tags that should be passed when the stack is deployed.\n\nN.B.: Tags are also written to stack metadata, under the path of the Stack\nconstruct. Only in CDK CLI v1 are those tags found in metadata used for\nactual deployments; in all stable versions of CDK only the stack tags\ndirectly found in the `tags` property of `AwsCloudFormationStack` artifact\n(i.e., this property) are used. (Default - No tags)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            notificationArns: {
+              description: "SNS Notification ARNs that should receive CloudFormation Stack Events. (Default - No notification arns)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            stackName: {
+              description: "The name to use for the CloudFormation stack. (Default - name derived from artifact ID)",
+              type: "string"
+            },
+            terminationProtection: {
+              description: "Whether to enable termination protection for this stack.",
+              default: false,
+              type: "boolean"
+            },
+            assumeRoleArn: {
+              description: "The role that needs to be assumed to deploy the stack (Default - No role is assumed (current credentials are used))",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "External ID to use when assuming role for cloudformation deployments (Default - No external ID)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            },
+            cloudFormationExecutionRoleArn: {
+              description: "The role that is passed to CloudFormation to execute the change set (Default - No role is passed (currently assumed role/credentials are used))",
+              type: "string"
+            },
+            lookupRole: {
+              description: "The role to use to look up values from the target AWS account (Default - No role is assumed (current credentials are used))",
+              $ref: "#/definitions/BootstrapRole"
+            },
+            stackTemplateAssetObjectUrl: {
+              description: "If the stack template has already been included in the asset manifest, its asset URL (Default - Not uploaded yet, upload just before deploying)",
+              type: "string"
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to deploy this stack (Default - No bootstrap stack required)",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "SSM parameter where the bootstrap stack version number can be found\n\nOnly used if `requiresBootstrapStackVersion` is set.\n\n- If this value is not set, the bootstrap stack name must be known at\n  deployment time so the stack version can be looked up from the stack\n  outputs.\n- If this value is set, the bootstrap stack can have any name because\n  we won't need to look it up. (Default - Bootstrap stack version number looked up)",
+              type: "string"
+            },
+            validateOnSynth: {
+              description: "Whether this stack should be validated by the CLI after synthesis (Default - false)",
+              type: "boolean"
+            }
+          },
+          required: [
+            "templateFile"
+          ]
+        },
+        BootstrapRole: {
+          description: "Information needed to access an IAM role created\nas part of the bootstrap process",
+          type: "object",
+          properties: {
+            arn: {
+              description: "The ARN of the IAM role created as part of bootrapping\ne.g. lookupRoleArn",
+              type: "string"
+            },
+            assumeRoleExternalId: {
+              description: "External ID to use when assuming the bootstrap role (Default - No external ID)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the role.\n\n- `RoleArn` should not be used. Use the dedicated `arn` property instead.\n- `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to use this role (Default - No bootstrap stack required)",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "Name of SSM parameter with bootstrap stack version (Default - Discover SSM parameter by reading stack)",
+              type: "string"
+            }
+          },
+          required: [
+            "arn"
+          ]
+        },
+        AssetManifestProperties: {
+          description: "Artifact properties for the Asset Manifest",
+          type: "object",
+          properties: {
+            file: {
+              description: "Filename of the asset manifest",
+              type: "string"
+            },
+            requiresBootstrapStackVersion: {
+              description: "Version of bootstrap stack required to deploy this stack (Default - Version 1 (basic modern bootstrap stack))",
+              type: "number"
+            },
+            bootstrapStackVersionSsmParameter: {
+              description: "SSM parameter where the bootstrap stack version number can be found\n\n- If this value is not set, the bootstrap stack name must be known at\n  deployment time so the stack version can be looked up from the stack\n  outputs.\n- If this value is set, the bootstrap stack can have any name because\n  we won't need to look it up. (Default - Bootstrap stack version number looked up)",
+              type: "string"
+            }
+          },
+          required: [
+            "file"
+          ]
+        },
+        TreeArtifactProperties: {
+          description: "Artifact properties for the Construct Tree Artifact",
+          type: "object",
+          properties: {
+            file: {
+              description: "Filename of the tree artifact",
+              type: "string"
+            }
+          },
+          required: [
+            "file"
+          ]
+        },
+        NestedCloudAssemblyProperties: {
+          description: "Artifact properties for nested cloud assemblies",
+          type: "object",
+          properties: {
+            directoryName: {
+              description: "Relative path to the nested cloud assembly",
+              type: "string"
+            },
+            displayName: {
+              description: "Display name for the cloud assembly (Default - The artifact ID)",
+              type: "string"
+            }
+          },
+          required: [
+            "directoryName"
+          ]
+        },
+        FeatureFlagReportProperties: {
+          description: "Artifact properties for a feature flag report\n\nA feature flag report is small enough that all the properties can be inlined\nhere, and doesn't need an additional file.",
+          type: "object",
+          properties: {
+            module: {
+              description: "The library that this feature flag report applies to.",
+              type: "string"
+            },
+            flags: {
+              description: "Information about every feature flag supported by this library.",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/FeatureFlag"
+              }
+            }
+          },
+          required: [
+            "flags",
+            "module"
+          ]
+        },
+        FeatureFlag: {
+          description: "A single feature flag",
+          type: "object",
+          properties: {
+            recommendedValue: {
+              description: "The library-recommended value for this flag, if any\n\nIt is possible that there is no recommended value. (Default - No recommended value.)"
+            },
+            userValue: {
+              description: "The value configured by the user\n\nThis is the value configured at the root of the tree. Users may also have\nconfigured values at specific locations in the tree; we don't report on\nthose. (Default - Not configured by the user)"
+            },
+            explanation: {
+              description: "Explanation about the purpose of this flag that can be shown to the user. (Default - No description)",
+              type: "string"
+            },
+            unconfiguredBehavesLike: {
+              description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nThe structure of this field is a historical accident. The type of this field\nshould have been boolean, which should have contained the default value for\nthe flag appropriate for the *current* version of the CDK library. We are\nnot rectifying this accident because doing so\n\nInstead, the canonical way to access this value is by evaluating\n`unconfiguredBehavesLike?.v2 ?? false`.",
+              default: false,
+              $ref: "#/definitions/UnconfiguredBehavesLike"
+            }
+          }
+        },
+        UnconfiguredBehavesLike: {
+          type: "object",
+          properties: {
+            v1: {
+              description: "Historical accident, don't use.\n\nThis value may be present, but it should never be used. The actual value is\nin the `v2` field, regardless of the version of the CDK library. (Default - ignore)"
+            },
+            v2: {
+              description: "The value of the flag that produces the same behavior as when the flag is not configured at all\n\nEven though it is called 'v2', this is the official name of this field. In\nany future versions of CDK (v3, v4, ...), this field will still be called 'v2'.\n\nThe structure of this field is a historical accident. See the comment on\n`unconfiguredBehavesLike` for more information.",
+              default: false
+            }
+          }
+        },
+        MissingContext: {
+          description: "Represents a missing piece of context.",
+          type: "object",
+          properties: {
+            key: {
+              description: "The missing context key.",
+              type: "string"
+            },
+            provider: {
+              $ref: "#/definitions/ContextProvider",
+              description: "The provider from which we expect this context key to be obtained."
+            },
+            props: {
+              $ref: "#/definitions/ContextQueryProperties",
+              description: "A set of provider-specific options."
+            }
+          },
+          required: [
+            "key",
+            "props",
+            "provider"
+          ]
+        },
+        ContextProvider: {
+          description: "Identifier for the context provider",
+          type: "string",
+          enum: [
+            "ami",
+            "availability-zones",
+            "hosted-zone",
+            "ssm",
+            "vpc-provider",
+            "endpoint-service-availability-zones",
+            "load-balancer",
+            "load-balancer-listener",
+            "security-group",
+            "key-provider",
+            "cc-api-provider",
+            "plugin"
+          ]
+        },
+        ContextQueryProperties: {
+          anyOf: [
+            {
+              $ref: "#/definitions/AmiContextQuery"
+            },
+            {
+              $ref: "#/definitions/AvailabilityZonesContextQuery"
+            },
+            {
+              $ref: "#/definitions/HostedZoneContextQuery"
+            },
+            {
+              $ref: "#/definitions/SSMParameterContextQuery"
+            },
+            {
+              $ref: "#/definitions/VpcContextQuery"
+            },
+            {
+              $ref: "#/definitions/EndpointServiceAvailabilityZonesContextQuery"
+            },
+            {
+              $ref: "#/definitions/LoadBalancerContextQuery"
+            },
+            {
+              $ref: "#/definitions/LoadBalancerListenerContextQuery"
+            },
+            {
+              $ref: "#/definitions/SecurityGroupContextQuery"
+            },
+            {
+              $ref: "#/definitions/KeyContextQuery"
+            },
+            {
+              $ref: "#/definitions/CcApiContextQuery"
+            },
+            {
+              $ref: "#/definitions/PluginContextQuery"
+            }
+          ]
+        },
+        AmiContextQuery: {
+          description: "Query to AMI context provider",
+          type: "object",
+          properties: {
+            owners: {
+              description: "Owners to DescribeImages call (Default - All owners)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            filters: {
+              description: "Filters to DescribeImages call",
+              type: "object",
+              additionalProperties: {
+                type: "array",
+                items: {
+                  type: "string"
+                }
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "filters",
+            "region"
+          ]
+        },
+        AvailabilityZonesContextQuery: {
+          description: "Query to availability zone context provider",
+          type: "object",
+          properties: {
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region"
+          ]
+        },
+        HostedZoneContextQuery: {
+          description: "Query to hosted zone context provider",
+          type: "object",
+          properties: {
+            domainName: {
+              description: "The domain name e.g. example.com to lookup",
+              type: "string"
+            },
+            privateZone: {
+              description: "True if the zone you want to find is a private hosted zone",
+              default: false,
+              type: "boolean"
+            },
+            vpcId: {
+              description: "The VPC ID to that the private zone must be associated with\n\nIf you provide VPC ID and privateZone is false, this will return no results\nand raise an error. (Default - Required if privateZone=true)",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "domainName",
+            "region"
+          ]
+        },
+        SSMParameterContextQuery: {
+          description: "Query to SSM Parameter Context Provider",
+          type: "object",
+          properties: {
+            parameterName: {
+              description: "Parameter name to query",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "parameterName",
+            "region"
+          ]
+        },
+        VpcContextQuery: {
+          description: "Query input for looking up a VPC",
+          type: "object",
+          properties: {
+            filter: {
+              description: "Filters to apply to the VPC\n\nFilter parameters are the same as passed to DescribeVpcs.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            returnAsymmetricSubnets: {
+              description: "Whether to populate the subnetGroups field of the `VpcContextResponse`,\nwhich contains potentially asymmetric subnet groups.",
+              default: false,
+              type: "boolean"
+            },
+            subnetGroupNameTag: {
+              description: "Optional tag for subnet group name.\nIf not provided, we'll look at the aws-cdk:subnet-name tag.\nIf the subnet does not have the specified tag,\nwe'll use its type as the name. (Default 'aws-cdk:subnet-name')",
+              type: "string"
+            },
+            returnVpnGateways: {
+              description: "Whether to populate the `vpnGatewayId` field of the `VpcContextResponse`,\nwhich contains the VPN Gateway ID, if one exists. You can explicitly\ndisable this in order to avoid the lookup if you know the VPC does not have\na VPN Gatway attached. (Default true)",
+              type: "boolean"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "filter",
+            "region"
+          ]
+        },
+        EndpointServiceAvailabilityZonesContextQuery: {
+          description: "Query to endpoint service context provider",
+          type: "object",
+          properties: {
+            serviceName: {
+              description: "Query service name",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region",
+            "serviceName"
+          ]
+        },
+        LoadBalancerContextQuery: {
+          description: "Query input for looking up a load balancer",
+          type: "object",
+          properties: {
+            loadBalancerType: {
+              $ref: "#/definitions/LoadBalancerType",
+              description: "Filter load balancers by their type"
+            },
+            loadBalancerArn: {
+              description: "Find by load balancer's ARN (Default - does not search by load balancer arn)",
+              type: "string"
+            },
+            loadBalancerTags: {
+              description: "Match load balancer tags (Default - does not match load balancers by tags)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/Tag"
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "loadBalancerType",
+            "region"
+          ]
+        },
+        LoadBalancerType: {
+          description: "Type of load balancer",
+          type: "string",
+          enum: [
+            "network",
+            "application"
+          ]
+        },
+        LoadBalancerListenerContextQuery: {
+          description: "Query input for looking up a load balancer listener",
+          type: "object",
+          properties: {
+            listenerArn: {
+              description: "Find by listener's arn (Default - does not find by listener arn)",
+              type: "string"
+            },
+            listenerProtocol: {
+              description: "Filter by listener protocol (Default - does not filter by listener protocol)",
+              enum: [
+                "HTTP",
+                "HTTPS",
+                "TCP",
+                "TCP_UDP",
+                "TLS",
+                "UDP"
+              ],
+              type: "string"
+            },
+            listenerPort: {
+              description: "Filter listeners by listener port (Default - does not filter by a listener port)",
+              type: "number"
+            },
+            loadBalancerType: {
+              $ref: "#/definitions/LoadBalancerType",
+              description: "Filter load balancers by their type"
+            },
+            loadBalancerArn: {
+              description: "Find by load balancer's ARN (Default - does not search by load balancer arn)",
+              type: "string"
+            },
+            loadBalancerTags: {
+              description: "Match load balancer tags (Default - does not match load balancers by tags)",
+              type: "array",
+              items: {
+                $ref: "#/definitions/Tag"
+              }
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "loadBalancerType",
+            "region"
+          ]
+        },
+        SecurityGroupContextQuery: {
+          description: "Query input for looking up a security group",
+          type: "object",
+          properties: {
+            securityGroupId: {
+              description: "Security group id (Default - None)",
+              type: "string"
+            },
+            securityGroupName: {
+              description: "Security group name (Default - None)",
+              type: "string"
+            },
+            vpcId: {
+              description: "VPC ID (Default - None)",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "region"
+          ]
+        },
+        KeyContextQuery: {
+          description: "Query input for looking up a KMS Key",
+          type: "object",
+          properties: {
+            aliasName: {
+              description: "Alias name used to search the Key",
+              type: "string"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "aliasName",
+            "region"
+          ]
+        },
+        CcApiContextQuery: {
+          description: "Query input for lookup up CloudFormation resources using CC API\n\nThe example below is required to successfully compile CDK (otherwise,\nthe CDK build will generate a synthetic example for the below, but it\ndoesn't have enough type information about the literal string union\nto generate a validly compiling example).",
+          type: "object",
+          properties: {
+            typeName: {
+              description: "The CloudFormation resource type.\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/supported-resources.html",
+              type: "string"
+            },
+            exactIdentifier: {
+              description: "Identifier of the resource to look up using `GetResource`.\n\nSpecifying exactIdentifier will return exactly one result, or throw an error\nunless `ignoreErrorOnMissingContext` is set. (Default - Either exactIdentifier or propertyMatch should be specified.)",
+              type: "string"
+            },
+            resourceModel: {
+              description: "The resource model to use to select the resources, using `ListResources`..\n\nThis is needed for sub-resources where the parent Arn is required.\n\nSee https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-list.html#resource-operations-list-containers (Default - no resource Model is provided)",
+              $ref: "#/definitions/Record%3Cstring%2Cunknown%3E"
+            },
+            propertyMatch: {
+              description: "Returns any resources matching these properties, using `ListResources`.\n\nBy default, specifying propertyMatch will successfully return 0 or more\nresults. To throw an error if the number of results is unexpected (and\nprevent the query results from being committed to context), specify\n`expectedMatchCount`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe resources that `propertyMatch` matches against will *only ever* be the\nproperties returned by the `ListResources` call. (Default - Either exactIdentifier or propertyMatch should be specified.)",
+              $ref: "#/definitions/Record%3Cstring%2Cunknown%3E"
+            },
+            propertiesToReturn: {
+              description: "This is a set of properties returned from CC API that we want to return from ContextQuery.\n\nIf any properties listed here are absent from the target resource, an error will be thrown.\n\nThe returned object will always include the key `Identifier` with the CC-API returned\nfield `Identifier`.\n\n## Notes on property completeness\n\nCloudControl API's `ListResources` may return fewer properties than\n`GetResource` would, depending on the resource implementation.\n\nThe returned properties here are *currently* selected from the response\nobject that CloudControl API returns to the CDK CLI.\n\nHowever, if we find there is need to do so, we may decide to change this\nbehavior in the future: we might change it to perform an additional\n`GetResource` call for resources matched by `propertyMatch`.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            expectedMatchCount: {
+              description: "Expected count of results if `propertyMatch` is specified.\n\nIf the expected result count does not match the actual count,\nby default an error is produced and the result is not committed to cached\ncontext, and the user can correct the situation and try again without\nhaving to manually clear out the context key using `cdk context --remove`\n\nIf the value of * `ignoreErrorOnMissingContext` is `true`, the value of\n`expectedMatchCount` is `at-least-one | exactly-one` and the number\nof found resources is 0, `dummyValue` is returned and committed to context\ninstead. (Default 'any')",
+              enum: [
+                "any",
+                "at-least-one",
+                "at-most-one",
+                "exactly-one"
+              ],
+              type: "string"
+            },
+            dummyValue: {
+              description: "The value to return if the resource was not found and `ignoreErrorOnMissingContext` is true.\n\nIf supplied, `dummyValue` should be an array of objects.\n\n`dummyValue` does not have to have elements, and it may have objects with\ndifferent properties than the properties in `propertiesToReturn`, but it\nwill be easiest for downstream code if the `dummyValue` conforms to\nthe expected response shape. (Default - No dummy value available)"
+            },
+            ignoreErrorOnMissingContext: {
+              description: "Ignore an error and return the `dummyValue` instead if the resource was not found.\n\n- In case of an `exactIdentifier` lookup, return the `dummyValue` if the resource with\n  that identifier was not found.\n- In case of a `propertyMatch` lookup, return the `dummyValue` if `expectedMatchCount`\n  is `at-least-one | exactly-one` and the number of resources found was 0.\n\nif `ignoreErrorOnMissingContext` is set, `dummyValue` should be set and be an array.",
+              default: false,
+              type: "boolean"
+            },
+            account: {
+              description: "Query account",
+              type: "string"
+            },
+            region: {
+              description: "Query region",
+              type: "string"
+            },
+            lookupRoleArn: {
+              description: "The ARN of the role that should be used to look up the missing values (Default - None)",
+              type: "string"
+            },
+            lookupRoleExternalId: {
+              description: "The ExternalId that needs to be supplied while assuming this role (Default - No ExternalId will be supplied)",
+              type: "string"
+            },
+            assumeRoleAdditionalOptions: {
+              description: "Additional options to pass to STS when assuming the lookup role.\n\n- `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.\n- `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead. (Default - No additional options.)",
+              type: "object",
+              additionalProperties: {}
+            }
+          },
+          required: [
+            "account",
+            "propertiesToReturn",
+            "region",
+            "typeName"
+          ]
+        },
+        "Record": {
+          type: "object"
+        },
+        PluginContextQuery: {
+          description: "Query input for plugins\n\nThis alternate branch is necessary because it needs to be able to escape all type checking\nwe do on on the cloud assembly -- we cannot know the properties that will be used a priori.",
+          type: "object",
+          additionalProperties: {},
+          properties: {
+            pluginName: {
+              description: "The name of the plugin",
+              type: "string"
+            }
+          },
+          required: [
+            "pluginName"
+          ]
+        },
+        RuntimeInfo: {
+          description: "Information about the application's runtime components.",
+          type: "object",
+          properties: {
+            libraries: {
+              description: "The list of libraries loaded in the application, associated with their versions.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "libraries"
+          ]
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json
+var require_integ_schema = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/integ.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/IntegManifest",
+      definitions: {
+        IntegManifest: {
+          description: "Definitions for the integration testing manifest",
+          type: "object",
+          properties: {
+            version: {
+              description: "Version of the manifest",
+              type: "string"
+            },
+            enableLookups: {
+              description: "Enable lookups for this test. If lookups are enabled\nthen `stackUpdateWorkflow` must be set to false.\nLookups should only be enabled when you are explicitly testing\nlookups.",
+              default: false,
+              type: "boolean"
+            },
+            synthContext: {
+              description: "Additional context to use when performing\na synth. Any context provided here will override\nany default context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            testCases: {
+              description: "test cases",
+              type: "object",
+              additionalProperties: {
+                $ref: "#/definitions/TestCase"
+              }
+            }
+          },
+          required: [
+            "testCases",
+            "version"
+          ]
+        },
+        TestCase: {
+          description: "Represents an integration test case",
+          type: "object",
+          properties: {
+            stacks: {
+              description: "Stacks that should be tested as part of this test case\nThe stackNames will be passed as args to the cdk commands\nso dependent stacks will be automatically deployed unless\n`exclusively` is passed",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            assertionStack: {
+              description: "The node id of the stack that contains assertions.\nThis is the value that can be used to deploy the stack with the CDK CLI (Default - no assertion stack)",
+              type: "string"
+            },
+            assertionStackName: {
+              description: "The name of the stack that contains assertions (Default - no assertion stack)",
+              type: "string"
+            },
+            stackUpdateWorkflow: {
+              description: "Run update workflow on this test case\nThis should only be set to false to test scenarios\nthat are not possible to test as part of the update workflow (Default true)",
+              type: "boolean"
+            },
+            cdkCommandOptions: {
+              description: "Additional options to use for each CDK command (Default - runner default options)",
+              $ref: "#/definitions/CdkCommands"
+            },
+            hooks: {
+              description: "Additional commands to run at predefined points in the test workflow\n\ne.g. { postDeploy: ['yarn', 'test'] } (Default - no hooks)",
+              $ref: "#/definitions/Hooks"
+            },
+            allowDeleteFailures: {
+              description: "Whether to allow resources that fail to delete during a stack update.\n\nWhen false, the test will fail if CloudFormation skips deleting a resource\nduring a stack update. When true, only a warning is printed.",
+              default: false,
+              type: "boolean"
+            },
+            diffAssets: {
+              description: "Whether or not to include asset hashes in the diff\nAsset hashes can introduces a lot of unneccessary noise into tests,\nbut there are some cases where asset hashes _should_ be included. For example\nany tests involving custom resources or bundling",
+              default: false,
+              type: "boolean"
+            },
+            allowDestroy: {
+              description: "List of CloudFormation resource types in this stack that can\nbe destroyed as part of an update without failing the test.\n\nThis list should only include resources that for this specific\nintegration test we are sure will not cause errors or an outage if\ndestroyed. For example, maybe we know that a new resource will be created\nfirst before the old resource is destroyed which prevents any outage.\n\ne.g. ['AWS::IAM::Role'] (Default - do not allow destruction of any resources on update)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            regions: {
+              description: "Limit deployment to these regions (Default - can run in any region)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: [
+            "stacks"
+          ]
+        },
+        CdkCommands: {
+          description: "Options for specific cdk commands that are run\nas part of the integration test workflow",
+          type: "object",
+          properties: {
+            deploy: {
+              description: "Options to for the cdk deploy command (Default - default deploy options)",
+              $ref: "#/definitions/DeployCommand"
+            },
+            destroy: {
+              description: "Options to for the cdk destroy command (Default - default destroy options)",
+              $ref: "#/definitions/DestroyCommand"
+            }
+          }
+        },
+        DeployCommand: {
+          description: "Represents a cdk deploy command",
+          type: "object",
+          properties: {
+            args: {
+              description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)",
+              $ref: "#/definitions/DeployOptions"
+            },
+            enabled: {
+              description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)",
+              type: "boolean"
+            },
+            expectError: {
+              description: "If the runner should expect this command to fail",
+              default: false,
+              type: "boolean"
+            },
+            expectedMessage: {
+              description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)",
+              type: "string"
+            }
+          }
+        },
+        DeployOptions: {
+          description: "Options to use with cdk deploy",
+          type: "object",
+          properties: {
+            exclusively: {
+              description: "Only perform action on the given stack",
+              default: false,
+              type: "boolean"
+            },
+            toolkitStackName: {
+              description: "Name of the toolkit stack to use/deploy (Default CDKToolkit)",
+              type: "string"
+            },
+            reuseAssets: {
+              description: "Reuse the assets with the given asset IDs (Default - do not reuse assets)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            changeSetName: {
+              description: "Optional name to use for the CloudFormation change set.\nIf not provided, a name will be generated automatically. (Default - auto generate a name)",
+              type: "string"
+            },
+            force: {
+              description: "Always deploy, even if templates are identical.",
+              default: false,
+              type: "boolean"
+            },
+            rollback: {
+              description: "Rollback failed deployments (Default true)",
+              type: "boolean"
+            },
+            notificationArns: {
+              description: "ARNs of SNS topics that CloudFormation will notify with stack related events (Default - no notifications)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            requireApproval: {
+              description: "What kind of security changes require approval (Default RequireApproval.NEVER)",
+              enum: [
+                "any-change",
+                "broadening",
+                "never"
+              ],
+              type: "string"
+            },
+            execute: {
+              description: "Whether to execute the ChangeSet\nNot providing `execute` parameter will result in execution of ChangeSet (Default true)",
+              type: "boolean"
+            },
+            parameters: {
+              description: "Additional parameters for CloudFormation at deploy time (Default [object Object])",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            usePreviousParameters: {
+              description: "Use previous values for unspecified parameters\n\nIf not set, all parameters must be specified for every deployment. (Default true)",
+              type: "boolean"
+            },
+            outputsFile: {
+              description: "Path to file where stack outputs will be written after a successful deploy as JSON (Default - Outputs are not written to any file)",
+              type: "string"
+            },
+            ci: {
+              description: "Whether we are on a CI system",
+              default: false,
+              type: "boolean"
+            },
+            concurrency: {
+              description: "Deploy multiple stacks in parallel (Default 1)",
+              type: "number"
+            },
+            stacks: {
+              description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            all: {
+              description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)",
+              type: "boolean"
+            },
+            app: {
+              description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)',
+              type: "string"
+            },
+            roleArn: {
+              description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)",
+              type: "string"
+            },
+            context: {
+              description: "Additional context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            trace: {
+              description: "Print trace for stack warnings",
+              default: false,
+              type: "boolean"
+            },
+            strict: {
+              description: "Do not construct stacks with warnings",
+              default: false,
+              type: "boolean"
+            },
+            lookups: {
+              description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)",
+              type: "boolean"
+            },
+            ignoreErrors: {
+              description: "Ignores synthesis errors, which will likely produce an invalid output",
+              default: false,
+              type: "boolean"
+            },
+            json: {
+              description: "Use JSON output instead of YAML when templates are printed\nto STDOUT",
+              default: false,
+              type: "boolean"
+            },
+            verbose: {
+              description: "show debug logs",
+              default: false,
+              type: "boolean"
+            },
+            debug: {
+              description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens",
+              default: false,
+              type: "boolean"
+            },
+            profile: {
+              description: "Use the indicated AWS profile as the default environment (Default - no profile is used)",
+              type: "string"
+            },
+            proxy: {
+              description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)",
+              type: "string"
+            },
+            caBundlePath: {
+              description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)",
+              type: "string"
+            },
+            ec2Creds: {
+              description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)",
+              type: "boolean"
+            },
+            versionReporting: {
+              description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)',
+              type: "boolean"
+            },
+            pathMetadata: {
+              description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)',
+              type: "boolean"
+            },
+            assetMetadata: {
+              description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)',
+              type: "boolean"
+            },
+            staging: {
+              description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI",
+              default: false,
+              type: "boolean"
+            },
+            output: {
+              description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)",
+              type: "string"
+            },
+            notices: {
+              description: "Show relevant notices (Default true)",
+              type: "boolean"
+            },
+            color: {
+              description: "Show colors and other style from console output (Default true)",
+              type: "boolean"
+            }
+          }
+        },
+        DestroyCommand: {
+          description: "Represents a cdk destroy command",
+          type: "object",
+          properties: {
+            args: {
+              description: "Additional arguments to pass to the command\nThis can be used to test specific CLI functionality (Default - only default args are used)",
+              $ref: "#/definitions/DestroyOptions"
+            },
+            enabled: {
+              description: "Whether or not to run this command as part of the workflow\nThis can be used if you only want to test some of the workflow\nfor example enable `synth` and disable `deploy` & `destroy` in order\nto limit the test to synthesis (Default true)",
+              type: "boolean"
+            },
+            expectError: {
+              description: "If the runner should expect this command to fail",
+              default: false,
+              type: "boolean"
+            },
+            expectedMessage: {
+              description: "This can be used in combination with `expectedError`\nto validate that a specific message is returned. (Default - do not validate message)",
+              type: "string"
+            }
+          }
+        },
+        DestroyOptions: {
+          description: "Options to use with cdk destroy",
+          type: "object",
+          properties: {
+            force: {
+              description: "Do not ask for permission before destroying stacks",
+              default: false,
+              type: "boolean"
+            },
+            exclusively: {
+              description: "Only destroy the given stack",
+              default: false,
+              type: "boolean"
+            },
+            stacks: {
+              description: "List of stacks to deploy\n\nRequried if `all` is not set (Default - [])",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            all: {
+              description: "Deploy all stacks\n\nRequried if `stacks` is not set (Default - false)",
+              type: "boolean"
+            },
+            app: {
+              description: 'command-line for executing your app or a cloud assembly directory\ne.g. "node bin/my-app.js"\nor\n"cdk.out" (Default - read from cdk.json)',
+              type: "string"
+            },
+            roleArn: {
+              description: "Role to pass to CloudFormation for deployment (Default - use the bootstrap cfn-exec role)",
+              type: "string"
+            },
+            context: {
+              description: "Additional context (Default - no additional context)",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            trace: {
+              description: "Print trace for stack warnings",
+              default: false,
+              type: "boolean"
+            },
+            strict: {
+              description: "Do not construct stacks with warnings",
+              default: false,
+              type: "boolean"
+            },
+            lookups: {
+              description: "Perform context lookups.\n\nSynthesis fails if this is disabled and context lookups need\nto be performed (Default true)",
+              type: "boolean"
+            },
+            ignoreErrors: {
+              description: "Ignores synthesis errors, which will likely produce an invalid output",
+              default: false,
+              type: "boolean"
+            },
+            json: {
+              description: "Use JSON output instead of YAML when templates are printed\nto STDOUT",
+              default: false,
+              type: "boolean"
+            },
+            verbose: {
+              description: "show debug logs",
+              default: false,
+              type: "boolean"
+            },
+            debug: {
+              description: "enable emission of additional debugging information, such as creation stack\ntraces of tokens",
+              default: false,
+              type: "boolean"
+            },
+            profile: {
+              description: "Use the indicated AWS profile as the default environment (Default - no profile is used)",
+              type: "string"
+            },
+            proxy: {
+              description: "Use the indicated proxy. Will read from\nHTTPS_PROXY environment if specified (Default - no proxy)",
+              type: "string"
+            },
+            caBundlePath: {
+              description: "Path to CA certificate to use when validating HTTPS\nrequests. (Default - read from AWS_CA_BUNDLE environment variable)",
+              type: "string"
+            },
+            ec2Creds: {
+              description: "Force trying to fetch EC2 instance credentials (Default - guess EC2 instance status)",
+              type: "boolean"
+            },
+            versionReporting: {
+              description: 'Include "AWS::CDK::Metadata" resource in synthesized templates (Default true)',
+              type: "boolean"
+            },
+            pathMetadata: {
+              description: 'Include "aws:cdk:path" CloudFormation metadata for each resource (Default true)',
+              type: "boolean"
+            },
+            assetMetadata: {
+              description: 'Include "aws:asset:*" CloudFormation metadata for resources that use assets (Default true)',
+              type: "boolean"
+            },
+            staging: {
+              description: "Copy assets to the output directory\n\nNeeded for local debugging the source files with SAM CLI",
+              default: false,
+              type: "boolean"
+            },
+            output: {
+              description: "Emits the synthesized cloud assembly into a directory (Default cdk.out)",
+              type: "string"
+            },
+            notices: {
+              description: "Show relevant notices (Default true)",
+              type: "boolean"
+            },
+            color: {
+              description: "Show colors and other style from console output (Default true)",
+              type: "boolean"
+            }
+          }
+        },
+        Hooks: {
+          description: "Commands to run at predefined points during the\nintegration test workflow",
+          type: "object",
+          properties: {
+            preDeploy: {
+              description: "Commands to run prior to deploying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            postDeploy: {
+              description: "Commands to run prior after deploying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            preDestroy: {
+              description: "Commands to run prior to destroying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            },
+            postDestroy: {
+              description: "Commands to run after destroying the cdk stacks\nin the integration test (Default - no commands)",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          }
+        }
+      },
+      $schema: "http://json-schema.org/draft-07/schema#"
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json
+var require_validation_report_schema2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/validation-report.schema.json"(exports2, module2) {
+    module2.exports = {
+      $ref: "#/definitions/PolicyValidationReportJson",
+      definitions: {
+        PolicyValidationReportJson: {
+          description: "The top-level structure of the policy validation report file.",
+          type: "object",
+          properties: {
+            version: {
+              description: "Protocol version",
+              type: "string"
+            },
+            title: {
+              description: "Report title, if present.",
+              type: "string"
+            },
+            pluginReports: {
+              description: "Reports from all validation plugins that ran during synthesis.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/PluginReportJson"
+              }
+            }
+          },
+          required: ["version", "pluginReports"]
+        },
+        PluginReportJson: {
+          description: "A report from a single validation plugin.",
+          type: "object",
+          properties: {
+            pluginName: {
+              description: "The name of the plugin that produced this report.",
+              type: "string"
+            },
+            pluginVersion: {
+              description: "Version of the plugin that produced this report.",
+              type: "string"
+            },
+            conclusion: {
+              description: "Whether the plugin's validation passed or failed.",
+              $ref: "#/definitions/PolicyValidationReportConclusion"
+            },
+            metadata: {
+              description: "Additional plugin-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violations: {
+              description: "Violations found by this plugin.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/PolicyViolationJson"
+              }
+            },
+            suppressedViolations: {
+              description: "Violations that were suppressed via acknowledgement.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/SuppressedViolationJson"
+              }
+            }
+          },
+          required: ["pluginName", "conclusion", "violations"]
+        },
+        PolicyValidationReportConclusion: {
+          description: "The final conclusion of a validation report.",
+          type: "string",
+          enum: ["success", "failure"]
+        },
+        PolicyViolationJson: {
+          description: "A single policy violation found by a validation plugin.",
+          type: "object",
+          properties: {
+            ruleName: {
+              description: "The name of the rule that was violated.",
+              type: "string"
+            },
+            description: {
+              description: "A description of the violation.",
+              type: "string"
+            },
+            suggestedFix: {
+              description: "How to fix the violation.",
+              type: "string"
+            },
+            severity: {
+              description: "The severity of the violation.",
+              $ref: "#/definitions/PolicyViolationSeverity"
+            },
+            customSeverity: {
+              description: "If the plugin wants to report using a non-standard severity, put it here.",
+              type: "string"
+            },
+            ruleMetadata: {
+              description: "Additional rule-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violatingConstructs: {
+              description: "Constructs that violated the rule.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ViolatingConstructJson"
+              }
+            }
+          },
+          required: ["ruleName", "description", "severity", "violatingConstructs"]
+        },
+        PolicyViolationSeverity: {
+          description: "The severity of a policy violation.",
+          type: "string",
+          enum: ["fatal", "error", "warning", "info", "custom"]
+        },
+        SuppressedViolationJson: {
+          description: "A violation that was acknowledged/suppressed and excluded from the active violation set.",
+          type: "object",
+          properties: {
+            ruleName: {
+              description: "The name of the rule that was violated.",
+              type: "string"
+            },
+            description: {
+              description: "A description of the violation.",
+              type: "string"
+            },
+            suggestedFix: {
+              description: "How to fix the violation.",
+              type: "string"
+            },
+            severity: {
+              description: "The severity of the violation.",
+              $ref: "#/definitions/PolicyViolationSeverity"
+            },
+            customSeverity: {
+              description: "If the plugin wants to report using a non-standard severity, put it here.",
+              type: "string"
+            },
+            ruleMetadata: {
+              description: "Additional rule-specific metadata.",
+              type: "object",
+              additionalProperties: {
+                type: "string"
+              }
+            },
+            violatingConstructs: {
+              description: "Constructs that violated the rule.",
+              type: "array",
+              items: {
+                $ref: "#/definitions/ViolatingConstructJson"
+              }
+            },
+            acknowledgedId: {
+              description: "The acknowledgement ID that caused this violation to be suppressed.",
+              type: "string"
+            },
+            reason: {
+              description: "The reason given for the acknowledgement, if provided.",
+              type: "string"
+            },
+            acknowledgedAt: {
+              description: "The construct path where the acknowledgement was declared.",
+              type: "string"
+            },
+            acknowledgedStackTrace: {
+              description: "Stack trace showing where the acknowledgement was declared.",
+              type: "string"
+            }
+          },
+          required: ["ruleName", "description", "severity", "violatingConstructs", "acknowledgedId"]
+        },
+        ViolatingConstructJson: {
+          description: "A construct that violated a policy rule.",
+          type: "object",
+          properties: {
+            constructPath: {
+              description: "The construct path as defined in the application.",
+              type: "string"
+            },
+            constructFqn: {
+              description: "The fully qualified name of the construct class (includes the library name).",
+              type: "string"
+            },
+            libraryVersion: {
+              description: "The version of the library that contains this construct.",
+              type: "string"
+            },
+            cloudFormationResource: {
+              description: "If this construct violation regards a CloudFormation resource, a reference to the resource details.",
+              $ref: "#/definitions/CloudFormationResourceJson"
+            },
+            stackTraces: {
+              description: "Stack traces associated with this violation.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: ["constructPath"]
+        },
+        CloudFormationResourceJson: {
+          description: "CloudFormation resource details for a violating construct.",
+          type: "object",
+          properties: {
+            templatePath: {
+              description: "The path to the CloudFormation template containing this resource.",
+              type: "string"
+            },
+            logicalId: {
+              description: "The logical ID of the resource in the CloudFormation template.",
+              type: "string"
+            },
+            propertyPaths: {
+              description: "Properties within the construct where the violation was detected.",
+              type: "array",
+              items: {
+                type: "string"
+              }
+            }
+          },
+          required: ["templatePath", "logicalId"]
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json
+var require_version = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/schema/version.json"(exports2, module2) {
+    module2.exports = {
+      schemaHash: "095859ad1d3d89d3bc4f9cbe9393d219798972dbd2389287bcc66b49f323cef1",
+      $comment: "Do not hold back the version on additions: jsonschema validation of the manifest by the consumer will trigger errors on unexpected fields.",
+      revision: 54
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js
+var require_manifest = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/manifest.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    });
+    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
+      var ownKeys2 = function(o) {
+        ownKeys2 = Object.getOwnPropertyNames || function(o2) {
+          var ar = [];
+          for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
+          return ar;
+        };
+        return ownKeys2(o);
+      };
+      return function(mod) {
+        if (mod && mod.__esModule) return mod;
+        var result = {};
+        if (mod != null) {
+          for (var k = ownKeys2(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding2(result, mod, k[i]);
+        }
+        __setModuleDefault2(result, mod);
+        return result;
+      };
+    })();
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.Manifest = exports2.VALIDATION_REPORT_FILE = exports2.VERSION_MISMATCH = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var fs19 = __importStar2(require("fs"));
+    var jsonschema = __importStar2(require_lib());
+    var semver = __importStar2(require_semver2());
+    var assembly = __importStar2(require_cloud_assembly());
+    exports2.VERSION_MISMATCH = "Cloud assembly schema version mismatch";
+    exports2.VALIDATION_REPORT_FILE = "validation-report.json";
+    var CLI_VERSION = require_cli_version();
+    var ASSETS_SCHEMA = require_assets_schema();
+    var ASSEMBLY_SCHEMA = require_cloud_assembly_schema();
+    var INTEG_SCHEMA = require_integ_schema();
+    var VALIDATION_REPORT_SCHEMA = require_validation_report_schema2();
+    var SCHEMA_VERSION = require_version();
+    var Manifest2 = class _Manifest {
+      static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/cloud-assembly-schema.Manifest", version: "54.24.0" };
+      /**
+       * Validates and saves the cloud assembly manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveAssemblyManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, ASSEMBLY_SCHEMA);
+      }
+      /**
+       * Load and validates the cloud assembly manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadAssemblyManifest(filePath, options) {
+        return _Manifest.loadManifest(filePath, ASSEMBLY_SCHEMA, _Manifest.patchStackTagsOnRead, options);
+      }
+      /**
+       * Validates and saves the asset manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveAssetManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, ASSETS_SCHEMA);
+      }
+      /**
+       * Load and validates the asset manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadAssetManifest(filePath) {
+        return _Manifest.loadManifest(filePath, ASSETS_SCHEMA);
+      }
+      /**
+       * Validates and saves the integ manifest to file.
+       *
+       * @param manifest - manifest.
+       * @param filePath - output file path.
+       */
+      static saveIntegManifest(manifest, filePath) {
+        _Manifest.saveManifest(manifest, filePath, INTEG_SCHEMA);
+      }
+      /**
+       * Load and validates the integ manifest from file.
+       *
+       * @param filePath - path to the manifest file.
+       */
+      static loadIntegManifest(filePath) {
+        const manifest = this.loadManifest(filePath, INTEG_SCHEMA);
+        return {
+          ...manifest,
+          testCases: manifest.testCases ?? []
+        };
+      }
+      /**
+       * Load and validate the policy validation report from file.
+       *
+       * @param filePath - path to the validation report file.
+       */
+      static loadValidationReport(filePath) {
+        return _Manifest.loadManifest(filePath, VALIDATION_REPORT_SCHEMA);
+      }
+      /**
+       * Fetch the current schema version number.
+       */
+      static version() {
+        return `${SCHEMA_VERSION.revision}.0.0`;
+      }
+      /**
+       * Return the CLI version that supports this Cloud Assembly Schema version
+       */
+      static cliVersion() {
+        const version3 = CLI_VERSION.version;
+        return version3 ? version3 : void 0;
+      }
+      /**
+       * Deprecated
+       * @deprecated use `saveAssemblyManifest()`
+       */
+      static save(manifest, filePath) {
+        return this.saveAssemblyManifest(manifest, filePath);
+      }
+      /**
+       * Deprecated
+       * @deprecated use `loadAssemblyManifest()`
+       */
+      static load(filePath) {
+        return this.loadAssemblyManifest(filePath);
+      }
+      static validate(manifest, schema, options) {
+        function parseVersion(version3) {
+          const ver = semver.valid(version3);
+          if (!ver) {
+            throw new Error(`Invalid semver string: "${version3}"`);
+          }
+          return ver;
+        }
+        const maxSupported = semver.major(parseVersion(_Manifest.version()));
+        const actual = parseVersion(manifest.version);
+        if (maxSupported < semver.major(actual) && !options?.skipVersionCheck) {
+          const cliVersion = manifest.minimumCliVersion;
+          let cliWarning = "";
+          if (cliVersion) {
+            cliWarning = `. You need at least CLI version ${cliVersion} to read this manifest.`;
+          }
+          throw new Error(`${exports2.VERSION_MISMATCH}: Maximum schema version supported is ${maxSupported}.x.x, but found ${actual}${cliWarning}`);
+        }
+        if (options?.validateSchema ?? process.env.TESTING_CDK === "1") {
+          const validator = new jsonschema.Validator();
+          const result = validator.validate(manifest, schema, {
+            nestedErrors: true,
+            allowUnknownAttributes: false,
+            preValidateProperty: _Manifest.validateAssumeRoleAdditionalOptions
+          });
+          let errors = result.errors;
+          if (options?.skipEnumCheck) {
+            errors = stripEnumErrors(errors);
+          }
+          if (errors.length > 0) {
+            throw new Error(`Invalid assembly manifest:
+${errors.map((e) => e.stack).join("\n")}`);
+          }
+        }
+      }
+      static saveManifest(manifest, filePath, schema, preprocess) {
+        let withVersion = {
+          ...manifest,
+          version: _Manifest.version(),
+          minimumCliVersion: _Manifest.cliVersion()
+        };
+        _Manifest.validate(withVersion, schema);
+        if (preprocess) {
+          withVersion = preprocess(withVersion);
+        }
+        fs19.writeFileSync(filePath, JSON.stringify(withVersion, void 0, 2));
+      }
+      static loadManifest(filePath, schema, preprocess, options) {
+        const contents = fs19.readFileSync(filePath, { encoding: "utf-8" });
+        let obj;
+        try {
+          obj = JSON.parse(contents);
+        } catch (e) {
+          throw new Error(`${e.message}, while parsing ${JSON.stringify(contents)}`);
+        }
+        if (preprocess) {
+          obj = preprocess(obj);
+        }
+        _Manifest.validate(obj, schema, options);
+        return obj;
+      }
+      /**
+       * Fix the casing of stack tags entries
+       *
+       * At the very beginning of the CDK we used to emit stack tags as an object with
+       * `{ Key, Value }` keys; this had the "advantage" that we could stick those
+       * tags directly into the `CreateChangeSet` call.
+       *
+       * Then we later on used jsii on the assembly schema and we were forced to type
+       * the in-memory objects as `{ key, value }` with lowercase letters. Now the
+       * objects have a different on-disk and in-memory format, and we need to convert
+       * between them.
+       *
+       * For backwards compatibility reasons, we used to convert lowercase in-memory
+       * to uppercase on-disk variant until very recently. This is now unnecessary,
+       * since no officially supported CDK tools read the stack tags from the
+       * metadata; the CLI and toolkit library read stack tags from the artifact
+       * properties.
+       *
+       * So although we don't emit uppercase stack tag objects anymore, we might still read
+       * manifests that have them. Because the manifest we read must pass JSON Schema
+       * validation (which expects lowercase tag objects), we have to fix the casing
+       * of these objects after reading from disk and before validating.
+       *
+       * That's what this function does.
+       */
+      static patchStackTagsOnRead(manifest) {
+        const artifacts = Object.values(manifest.artifacts ?? {}).filter((artifact) => artifact.type === assembly.ArtifactType.AWS_CLOUDFORMATION_STACK);
+        for (const artifact of artifacts) {
+          const tagMetadata = Object.values(artifact.metadata ?? {}).flatMap((x) => x).filter((entry) => entry.type === assembly.ArtifactMetadataEntryType.STACK_TAGS);
+          for (const entry of tagMetadata) {
+            const tags = entry.data;
+            for (const tag of tags ?? []) {
+              const t = tag;
+              if ("Key" in t) {
+                t.key = t.Key;
+                delete t.Key;
+              }
+              if ("Value" in t) {
+                t.value = t.Value;
+                delete t.Value;
+              }
+            }
+          }
+        }
+        return manifest;
+      }
+      /**
+       * Validates that `assumeRoleAdditionalOptions` doesn't contain nor `ExternalId` neither `RoleArn`, as they
+       * should have dedicated properties preceding this (e.g `assumeRoleArn` and `assumeRoleExternalId`).
+       */
+      static validateAssumeRoleAdditionalOptions(instance, key, _schema, _options, _ctx) {
+        if (key !== "assumeRoleAdditionalOptions") {
+          return;
+        }
+        const assumeRoleOptions = instance[key];
+        if (assumeRoleOptions?.RoleArn) {
+          throw new Error(`RoleArn is not allowed inside '${key}'`);
+        }
+        if (assumeRoleOptions?.ExternalId) {
+          throw new Error(`ExternalId is not allowed inside '${key}'`);
+        }
+      }
+    };
+    exports2.Manifest = Manifest2;
+    function stripEnumErrors(errors) {
+      return errors.filter((e) => typeof e.schema === "string" || !("enum" in e.schema));
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js
+var require_schema3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/schema.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js
+var require_common = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/common.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.RequireApproval = void 0;
+    var RequireApproval;
+    (function(RequireApproval2) {
+      RequireApproval2["NEVER"] = "never";
+      RequireApproval2["ANYCHANGE"] = "any-change";
+      RequireApproval2["BROADENING"] = "broadening";
+    })(RequireApproval || (exports2.RequireApproval = RequireApproval = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js
+var require_deploy = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/deploy.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js
+var require_destroy = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/destroy.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js
+var require_commands = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/commands/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_common(), exports2);
+    __exportStar2(require_deploy(), exports2);
+    __exportStar2(require_destroy(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js
+var require_test_case = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/test-case.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js
+var require_integ_tests = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/integ-tests/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_schema3(), exports2);
+    __exportStar2(require_commands(), exports2);
+    __exportStar2(require_test_case(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js
+var require_lib2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-schema/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_cloud_assembly(), exports2);
+    __exportStar2(require_assets(), exports2);
+    __exportStar2(require_manifest(), exports2);
+    __exportStar2(require_integ_tests(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js
+var require_metadata = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/metadata.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.SynthesisMessageLevel = exports2.PATH_METADATA_KEY = void 0;
+    exports2.PATH_METADATA_KEY = "aws:cdk:path";
+    var SynthesisMessageLevel;
+    (function(SynthesisMessageLevel2) {
+      SynthesisMessageLevel2["INFO"] = "info";
+      SynthesisMessageLevel2["WARNING"] = "warning";
+      SynthesisMessageLevel2["ERROR"] = "error";
+    })(SynthesisMessageLevel || (exports2.SynthesisMessageLevel = SynthesisMessageLevel = {}));
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js
+var require_error = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/error.js"(exports2) {
+    "use strict";
+    var __classPrivateFieldGet2 = exports2 && exports2.__classPrivateFieldGet || function(receiver, state, kind, f) {
+      if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+      if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+      return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+    };
+    var __classPrivateFieldSet2 = exports2 && exports2.__classPrivateFieldSet || function(receiver, state, value, kind, f) {
+      if (kind === "m") throw new TypeError("Private method is not writable");
+      if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+      if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+      return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
+    };
+    var _CloudAssemblyError_time;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudAssemblyError = void 0;
+    var ASSEMBLY_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssemblyError");
+    var CloudAssemblyError = class _CloudAssemblyError extends Error {
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return __classPrivateFieldGet2(this, _CloudAssemblyError_time, "f");
+      }
+      get type() {
+        return "assembly";
+      }
+      constructor(msg) {
+        super(msg);
+        _CloudAssemblyError_time.set(this, void 0);
+        Object.setPrototypeOf(this, _CloudAssemblyError.prototype);
+        Object.defineProperty(this, ASSEMBLY_ERROR_SYMBOL, { value: true });
+        this.name = new.target.name;
+        __classPrivateFieldSet2(this, _CloudAssemblyError_time, (/* @__PURE__ */ new Date()).toISOString(), "f");
+      }
+    };
+    exports2.CloudAssemblyError = CloudAssemblyError;
+    _CloudAssemblyError_time = /* @__PURE__ */ new WeakMap();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js
+var require_cloud_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var metadata_1 = require_metadata();
+    var error_1 = require_error();
+    var CloudArtifact = class _CloudArtifact {
+      /**
+       * Read the metadata for the given artifact
+       *
+       * HISTORICAL OR PRIVATE USE ONLY
+       *
+       * This is publicly exposed as a static function for downstream libraries that
+       * don't use the `CloudAssembly`/`CloudArtifact` API, yet still need to read
+       * an artifact's metadata.
+       *
+       * 99% of consumers should just access `artifact.metadata`.
+       */
+      static readMetadata(assemblyDirectory, x) {
+        const ret = {};
+        if (x.additionalMetadataFile) {
+          Object.assign(ret, JSON.parse(fs19.readFileSync(path23.join(assemblyDirectory, x.additionalMetadataFile), "utf-8")));
+        }
+        for (const [p, entries] of Object.entries(x.metadata ?? {})) {
+          if (ret[p]) {
+            ret[p].push(...entries);
+          } else {
+            ret[p] = entries;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Returns a subclass of `CloudArtifact` based on the artifact type defined in the artifact manifest.
+       *
+       * @param assembly - The cloud assembly from which to load the artifact
+       * @param id - The artifact ID
+       * @param artifact - The artifact manifest
+       * @returns the `CloudArtifact` that matches the artifact type or `undefined` if it's an artifact type that is unrecognized by this module.
+       */
+      static fromManifest(assembly, id, artifact) {
+        void assembly, void id, void artifact;
+        throw new error_1.CloudAssemblyError("Implementation not overridden yet");
+      }
+      constructor(assembly, id, manifest) {
+        this.assembly = assembly;
+        this.id = id;
+        this.manifest = manifest;
+        this.messages = this.renderMessages();
+        this._dependencyIDs = manifest.dependencies || [];
+      }
+      /**
+       * Returns the metadata associated with this Cloud Artifact
+       */
+      get metadata() {
+        return _CloudArtifact.readMetadata(this.assembly.directory, this.manifest);
+      }
+      /**
+       * Returns all the artifacts that this artifact depends on.
+       */
+      get dependencies() {
+        if (this._deps) {
+          return this._deps;
+        }
+        this._deps = this._dependencyIDs.map((id) => {
+          const dep = this.assembly.tryGetArtifact(id);
+          if (!dep) {
+            throw new error_1.CloudAssemblyError(`Artifact ${this.id} depends on non-existing artifact ${id}`);
+          }
+          return dep;
+        });
+        return this._deps;
+      }
+      /**
+       * @returns all the metadata entries of a specific type in this artifact.
+       */
+      findMetadataByType(type) {
+        const metadata = this.metadata;
+        const result = new Array();
+        for (const p of Object.keys(metadata || {})) {
+          for (const entry of (metadata || {})[p]) {
+            if (entry.type === type) {
+              result.push({ path: p, ...entry });
+            }
+          }
+        }
+        return result;
+      }
+      renderMessages() {
+        const messages = new Array();
+        for (const [id, metadata] of Object.entries(this.metadata || {})) {
+          for (const entry of metadata) {
+            let level;
+            switch (entry.type) {
+              case cxschema2.ArtifactMetadataEntryType.WARN:
+                level = metadata_1.SynthesisMessageLevel.WARNING;
+                break;
+              case cxschema2.ArtifactMetadataEntryType.ERROR:
+                level = metadata_1.SynthesisMessageLevel.ERROR;
+                break;
+              case cxschema2.ArtifactMetadataEntryType.INFO:
+                level = metadata_1.SynthesisMessageLevel.INFO;
+                break;
+              default:
+                continue;
+            }
+            messages.push({ level, entry, id });
+          }
+        }
+        return messages;
+      }
+      /**
+       * An identifier that shows where this artifact is located in the tree
+       * of nested assemblies, based on their manifests. Defaults to the normal
+       * id. Should only be used in user interfaces.
+       */
+      get hierarchicalId() {
+        return this.manifest.displayName ?? this.id;
+      }
+    };
+    exports2.CloudArtifact = CloudArtifact;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js
+var require_asset_manifest_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/asset-manifest-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AssetManifestArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var ASSET_MANIFEST_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.AssetManifestArtifact");
+    var AssetManifestArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `AssetManifestArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `AssetManifestArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isAssetManifestArtifact(art) {
+        return art && typeof art === "object" && art[ASSET_MANIFEST_ARTIFACT_SYM];
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.file) {
+          throw new error_1.CloudAssemblyError('Invalid AssetManifestArtifact. Missing "file" property');
+        }
+        this.file = path23.resolve(this.assembly.directory, properties.file);
+        this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion;
+        this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter;
+      }
+      /**
+       * The Asset Manifest contents
+       */
+      get contents() {
+        if (this._contents !== void 0) {
+          return this._contents;
+        }
+        const contents = this._contents = JSON.parse(fs19.readFileSync(this.file, "utf-8"));
+        return contents;
+      }
+    };
+    exports2.AssetManifestArtifact = AssetManifestArtifact;
+    Object.defineProperty(AssetManifestArtifact.prototype, ASSET_MANIFEST_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js
+var require_environment = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/environment.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EnvironmentUtils = exports2.UNKNOWN_REGION = exports2.UNKNOWN_ACCOUNT = void 0;
+    var error_1 = require_error();
+    var AWS_ENV_REGEX = /aws\:\/\/([a-z0-9A-Z\-\@\.\_]+)\/([a-z\-0-9]+)/;
+    exports2.UNKNOWN_ACCOUNT = "unknown-account";
+    exports2.UNKNOWN_REGION = "unknown-region";
+    var EnvironmentUtils2 = class {
+      static parse(environment) {
+        const env2 = AWS_ENV_REGEX.exec(environment);
+        if (!env2) {
+          throw new error_1.CloudAssemblyError(`Unable to parse environment specification "${environment}". Expected format: aws://account/region`);
+        }
+        const [, account, region] = env2;
+        if (!account || !region) {
+          throw new error_1.CloudAssemblyError(`Invalid environment specification: ${environment}`);
+        }
+        return { account, region, name: environment };
+      }
+      /**
+       * Build an environment object from an account and region
+       */
+      static make(account, region) {
+        return { account, region, name: this.format(account, region) };
+      }
+      /**
+       * Format an environment string from an account and region
+       */
+      static format(account, region) {
+        return `aws://${account}/${region}`;
+      }
+    };
+    exports2.EnvironmentUtils = EnvironmentUtils2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js
+var require_cloudformation_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/cloudformation-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudFormationStackArtifact = void 0;
+    var fs19 = require("fs");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var cloud_artifact_1 = require_cloud_artifact();
+    var environment_1 = require_environment();
+    var error_1 = require_error();
+    var CLOUDFORMATION_STACK_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudFormationStackArtifact");
+    var CloudFormationStackArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `CloudFormationStackArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `CloudFormationStackArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isCloudFormationStackArtifact(art) {
+        return art && typeof art === "object" && CLOUDFORMATION_STACK_ARTIFACT_SYM in art;
+      }
+      constructor(assembly, artifactId, artifact) {
+        super(assembly, artifactId, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.templateFile) {
+          throw new error_1.CloudAssemblyError('Invalid CloudFormation stack artifact. Missing "templateFile" property in cloud assembly manifest');
+        }
+        if (!artifact.environment) {
+          throw new error_1.CloudAssemblyError("Invalid CloudFormation stack artifact. Missing environment");
+        }
+        this.environment = environment_1.EnvironmentUtils.parse(artifact.environment);
+        this.templateFile = properties.templateFile;
+        this.parameters = properties.parameters ?? {};
+        this.tags = properties.tags ?? {};
+        this.notificationArns = properties.notificationArns;
+        this.assumeRoleArn = properties.assumeRoleArn;
+        this.assumeRoleExternalId = properties.assumeRoleExternalId;
+        this.assumeRoleAdditionalOptions = properties.assumeRoleAdditionalOptions;
+        this.cloudFormationExecutionRoleArn = properties.cloudFormationExecutionRoleArn;
+        this.stackTemplateAssetObjectUrl = properties.stackTemplateAssetObjectUrl;
+        this.requiresBootstrapStackVersion = properties.requiresBootstrapStackVersion;
+        this.bootstrapStackVersionSsmParameter = properties.bootstrapStackVersionSsmParameter;
+        this.terminationProtection = properties.terminationProtection;
+        this.validateOnSynth = properties.validateOnSynth;
+        this.lookupRole = properties.lookupRole;
+        this.stackName = properties.stackName || artifactId;
+        this.assets = this.findMetadataByType(cxschema2.ArtifactMetadataEntryType.ASSET).map((e) => e.data);
+        this.displayName = this.stackName === artifactId ? this.hierarchicalId : `${this.hierarchicalId} (${this.stackName})`;
+        this.name = this.stackName;
+        this.originalName = this.stackName;
+      }
+      /**
+       * Full path to the template file
+       */
+      get templateFullPath() {
+        return path23.join(this.assembly.directory, this.templateFile);
+      }
+      /**
+       * The CloudFormation template for this stack.
+       */
+      get template() {
+        if (this._template === void 0) {
+          this._template = JSON.parse(fs19.readFileSync(this.templateFullPath, "utf-8"));
+        }
+        return this._template;
+      }
+    };
+    exports2.CloudFormationStackArtifact = CloudFormationStackArtifact;
+    Object.defineProperty(CloudFormationStackArtifact.prototype, CLOUDFORMATION_STACK_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js
+var require_nested_cloud_assembly_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.NestedCloudAssemblyArtifact = void 0;
+    var path23 = require("path");
+    var cloud_artifact_1 = require_cloud_artifact();
+    var NESTED_CLOUD_ASSEMBLY_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.NestedCloudAssemblyArtifact");
+    var NestedCloudAssemblyArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `NestedCloudAssemblyArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `NestedCloudAssemblyArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isNestedCloudAssemblyArtifact(art) {
+        return art && typeof art === "object" && NESTED_CLOUD_ASSEMBLY_SYM in art;
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        this.directoryName = properties.directoryName;
+        this.displayName = properties.displayName ?? name;
+      }
+      /**
+       * Full path to the nested assembly directory
+       */
+      get fullPath() {
+        return path23.join(this.assembly.directory, this.directoryName);
+      }
+    };
+    exports2.NestedCloudAssemblyArtifact = NestedCloudAssemblyArtifact;
+    Object.defineProperty(NestedCloudAssemblyArtifact.prototype, NESTED_CLOUD_ASSEMBLY_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js
+var require_tree_cloud_artifact = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/tree-cloud-artifact.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.TreeCloudArtifact = void 0;
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var TREE_CLOUD_ARTIFACT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.TreeCloudArtifact");
+    var TreeCloudArtifact = class extends cloud_artifact_1.CloudArtifact {
+      /**
+       * Checks if `art` is an instance of this class.
+       *
+       * Use this method instead of `instanceof` to properly detect `TreeCloudArtifact`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `cx-api` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `TreeCloudArtifact` in each copy of the `cx-api` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `cx-api`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       */
+      static isTreeCloudArtifact(art) {
+        return art && typeof art === "object" && TREE_CLOUD_ARTIFACT_SYM in art;
+      }
+      constructor(assembly, name, artifact) {
+        super(assembly, name, artifact);
+        const properties = this.manifest.properties || {};
+        if (!properties.file) {
+          throw new error_1.CloudAssemblyError('Invalid TreeCloudArtifact. Missing "file" property');
+        }
+        this.file = properties.file;
+      }
+    };
+    exports2.TreeCloudArtifact = TreeCloudArtifact;
+    Object.defineProperty(TreeCloudArtifact.prototype, TREE_CLOUD_ARTIFACT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js
+var require_cloud_artifact_aug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-artifact-aug.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var cxschema2 = require_lib2();
+    var asset_manifest_artifact_1 = require_asset_manifest_artifact();
+    var cloudformation_artifact_1 = require_cloudformation_artifact();
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var tree_cloud_artifact_1 = require_tree_cloud_artifact();
+    var cloud_artifact_1 = require_cloud_artifact();
+    cloud_artifact_1.CloudArtifact.fromManifest = function fromManifest(assembly, id, artifact) {
+      switch (artifact.type) {
+        case cxschema2.ArtifactType.AWS_CLOUDFORMATION_STACK:
+          return new cloudformation_artifact_1.CloudFormationStackArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.CDK_TREE:
+          return new tree_cloud_artifact_1.TreeCloudArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.ASSET_MANIFEST:
+          return new asset_manifest_artifact_1.AssetManifestArtifact(assembly, id, artifact);
+        case cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY:
+          return new nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact(assembly, id, artifact);
+        default:
+          return void 0;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js
+var require_toposort = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/private/toposort.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.topologicalSort = topologicalSort;
+    var error_1 = require_error();
+    function topologicalSort(xs, keyFn, depFn) {
+      const remaining = /* @__PURE__ */ new Map();
+      for (const element of xs) {
+        const key = keyFn(element);
+        remaining.set(key, { key, element, dependencies: depFn(element) });
+      }
+      const ret = new Array();
+      while (remaining.size > 0) {
+        const selectable = Array.from(remaining.values()).filter((e) => e.dependencies.every((d) => !remaining.has(d)));
+        selectable.sort((a, b) => a.key < b.key ? -1 : b.key < a.key ? 1 : 0);
+        for (const selected of selectable) {
+          ret.push(selected.element);
+          remaining.delete(selected.key);
+        }
+        if (selectable.length === 0) {
+          throw new error_1.CloudAssemblyError(`Could not determine ordering between: ${Array.from(remaining.keys()).join(", ")}`);
+        }
+      }
+      return ret;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js
+var require_cloud_assembly2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/cloud-assembly.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CloudAssemblyBuilder = exports2.CloudAssembly = void 0;
+    var fs19 = require("fs");
+    var os4 = require("os");
+    var path23 = require("path");
+    var cxschema2 = require_lib2();
+    var cloudformation_artifact_1 = require_cloudformation_artifact();
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var tree_cloud_artifact_1 = require_tree_cloud_artifact();
+    var cloud_artifact_1 = require_cloud_artifact();
+    var error_1 = require_error();
+    var toposort_1 = require_toposort();
+    var CLOUD_ASSEMBLY_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/cx-api.CloudAssembly");
+    var MANIFEST_FILE = "manifest.json";
+    var CloudAssembly = class {
+      /**
+       * Return whether the given object is a CloudAssembly.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static isCloudAssembly(x) {
+        return x !== null && typeof x === "object" && CLOUD_ASSEMBLY_SYMBOL in x;
+      }
+      /**
+       * Cleans up any temporary assembly directories that got created in this process
+       *
+       * If a Cloud Assembly is emitted to a temporary directory, its directory gets
+       * added to a list. This function iterates over that list and deletes each
+       * directory in it, to free up disk space.
+       *
+       * This function will normally be called automatically during Node process
+       * exit and so you don't need to call this. However, some test environments do
+       * not properly trigger Node's `exit` event. Notably: Jest does not trigger
+       * the `exit` event ().
+       *
+       * ## Cleaning up temporary directories in jest
+       *
+       * For Jest, you have to make sure this function is called at the end of the
+       * test suite instead:
+       *
+       * ```js
+       * import { CloudAssembly } from 'aws-cdk-lib/cx-api';
+       *
+       * afterAll(CloudAssembly.cleanupTemporaryDirectories);
+       * ```
+       *
+       * Alternatively, you can use the `setupFilesAfterEnv` feature and use a
+       * provided helper script to automatically inject the above into every
+       * test file, so you don't have to do it by hand.
+       *
+       * ```
+       * $ npx jest --setupFilesAfterEnv aws-cdk-lib/testhelpers/jest-autoclean
+       * ```
+       *
+       * Or put the following into `jest.config.js`:
+       *
+       * ```js
+       * module.exports = {
+       *   // ...
+       *   setupFilesAfterEnv: ['aws-cdk-lib/testhelpers/jest-cleanup'],
+       * };
+       * ```
+       */
+      static cleanupTemporaryDirectories() {
+        for (const dir of TEMPORARY_ASSEMBLY_DIRS) {
+          fs19.rmSync(dir, { recursive: true, force: true });
+        }
+        TEMPORARY_ASSEMBLY_DIRS.splice(0, TEMPORARY_ASSEMBLY_DIRS.length);
+      }
+      /**
+       * Reads a cloud assembly from the specified directory.
+       * @param directory - The root directory of the assembly.
+       */
+      constructor(directory, loadOptions) {
+        this.directory = directory;
+        this.loadOptions = loadOptions;
+        this.manifest = cxschema2.Manifest.loadAssemblyManifest(path23.join(directory, MANIFEST_FILE), this.loadOptions);
+        this.version = this.manifest.version;
+        this.artifacts = this.renderArtifacts(this.loadOptions?.topoSort ?? true);
+        this.runtime = this.manifest.runtime || { libraries: {} };
+        Object.defineProperty(this, CLOUD_ASSEMBLY_SYMBOL, { value: true });
+        this.validateDeps();
+      }
+      /**
+       * Attempts to find an artifact with a specific identity.
+       * @returns A `CloudArtifact` object or `undefined` if the artifact does not exist in this assembly.
+       * @param id - The artifact ID
+       */
+      tryGetArtifact(id) {
+        return this.artifacts.find((a) => a.id === id);
+      }
+      /**
+       * Returns a CloudFormation stack artifact from this assembly.
+       *
+       * Will only search the current assembly.
+       *
+       * @param stackName - the name of the CloudFormation stack.
+       * @throws if there is no stack artifact by that name
+       * @throws if there is more than one stack with the same stack name. You can
+       * use `getStackArtifact(stack.artifactId)` instead.
+       * @returns a `CloudFormationStackArtifact` object.
+       */
+      getStackByName(stackName) {
+        const artifacts = this.artifacts.filter((a) => a instanceof cloudformation_artifact_1.CloudFormationStackArtifact && a.stackName === stackName);
+        if (!artifacts || artifacts.length === 0) {
+          throw new error_1.CloudAssemblyError(`Unable to find stack with stack name "${stackName}"`);
+        }
+        if (artifacts.length > 1) {
+          throw new error_1.CloudAssemblyError(`There are multiple stacks with the stack name "${stackName}" (${artifacts.map((a) => a.id).join(",")}). Use "getStackArtifact(id)" instead`);
+        }
+        return artifacts[0];
+      }
+      /**
+       * Returns a CloudFormation stack artifact by name from this assembly.
+       * @deprecated renamed to `getStackByName` (or `getStackArtifact(id)`)
+       */
+      getStack(stackName) {
+        return this.getStackByName(stackName);
+      }
+      /**
+       * Returns a CloudFormation stack artifact from this assembly.
+       *
+       * @param artifactId - the artifact id of the stack (can be obtained through `stack.artifactId`).
+       * @throws if there is no stack artifact with that id
+       * @returns a `CloudFormationStackArtifact` object.
+       */
+      getStackArtifact(artifactId) {
+        const artifact = this.tryGetArtifactRecursively(artifactId);
+        if (!artifact) {
+          throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`);
+        }
+        if (!(artifact instanceof cloudformation_artifact_1.CloudFormationStackArtifact)) {
+          throw new error_1.CloudAssemblyError(`Artifact ${artifactId} is not a CloudFormation stack`);
+        }
+        return artifact;
+      }
+      tryGetArtifactRecursively(artifactId) {
+        return this.stacksRecursively.find((a) => a.id === artifactId);
+      }
+      /**
+       * Returns all the stacks, including the ones in nested assemblies
+       */
+      get stacksRecursively() {
+        function search(stackArtifacts, assemblies) {
+          if (assemblies.length === 0) {
+            return stackArtifacts;
+          }
+          const [head, ...tail] = assemblies;
+          const nestedAssemblies = head.nestedAssemblies.map((asm) => asm.nestedAssembly);
+          return search(stackArtifacts.concat(head.stacks), tail.concat(nestedAssemblies));
+        }
+        return search([], [this]);
+      }
+      /**
+       * Returns a nested assembly artifact.
+       *
+       * @param artifactId - The artifact ID of the nested assembly
+       */
+      getNestedAssemblyArtifact(artifactId) {
+        const artifact = this.tryGetArtifact(artifactId);
+        if (!artifact) {
+          throw new error_1.CloudAssemblyError(`Unable to find artifact with id "${artifactId}"`);
+        }
+        if (!(artifact instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact)) {
+          throw new error_1.CloudAssemblyError(`Found artifact '${artifactId}' but it's not a nested cloud assembly`);
+        }
+        return artifact;
+      }
+      /**
+       * Returns a nested assembly.
+       *
+       * @param artifactId - The artifact ID of the nested assembly
+       */
+      getNestedAssembly(artifactId) {
+        return this.getNestedAssemblyArtifact(artifactId).nestedAssembly;
+      }
+      /**
+       * Returns the tree metadata artifact from this assembly.
+       * @throws if there is no metadata artifact by that name
+       * @returns a `TreeCloudArtifact` object if there is one defined in the manifest, `undefined` otherwise.
+       */
+      tree() {
+        const trees = this.artifacts.filter((a) => a.manifest.type === cxschema2.ArtifactType.CDK_TREE);
+        if (trees.length === 0) {
+          return void 0;
+        } else if (trees.length > 1) {
+          throw new error_1.CloudAssemblyError(`Multiple artifacts of type ${cxschema2.ArtifactType.CDK_TREE} found in manifest`);
+        }
+        const tree = trees[0];
+        if (!(tree instanceof tree_cloud_artifact_1.TreeCloudArtifact)) {
+          throw new error_1.CloudAssemblyError('"Tree" artifact is not of expected type');
+        }
+        return tree;
+      }
+      /**
+       * @returns all the CloudFormation stack artifacts that are included in this assembly.
+       */
+      get stacks() {
+        return this.artifacts.filter(isCloudFormationStackArtifact);
+        function isCloudFormationStackArtifact(x) {
+          return x instanceof cloudformation_artifact_1.CloudFormationStackArtifact;
+        }
+      }
+      /**
+       * The nested assembly artifacts in this assembly
+       */
+      get nestedAssemblies() {
+        return this.artifacts.filter(isNestedCloudAssemblyArtifact);
+        function isNestedCloudAssemblyArtifact(x) {
+          return x instanceof nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact;
+        }
+      }
+      validateDeps() {
+        for (const artifact of this.artifacts) {
+          ignore(artifact.dependencies);
+        }
+      }
+      renderArtifacts(topoSort) {
+        const result = new Array();
+        for (const [name, artifact] of Object.entries(this.manifest.artifacts || {})) {
+          const cloudartifact = cloud_artifact_1.CloudArtifact.fromManifest(this, name, artifact);
+          if (cloudartifact) {
+            result.push(cloudartifact);
+          }
+        }
+        return topoSort ? (0, toposort_1.topologicalSort)(result, (x) => x.id, (x) => x._dependencyIDs) : result;
+      }
+    };
+    exports2.CloudAssembly = CloudAssembly;
+    var CloudAssemblyBuilder3 = class _CloudAssemblyBuilder {
+      /**
+       * Initializes a cloud assembly builder.
+       * @param outdir - The output directory, uses temporary directory if undefined
+       */
+      constructor(outdir, props = {}) {
+        this.artifacts = {};
+        this.missing = new Array();
+        this.outdir = determineOutputDirectory(outdir);
+        this.assetOutdir = props.assetOutdir ?? this.outdir;
+        this.parentBuilder = props.parentBuilder;
+        ensureDirSync2(this.outdir);
+      }
+      /**
+       * Adds an artifact into the cloud assembly.
+       * @param id - The ID of the artifact.
+       * @param manifest - The artifact manifest
+       */
+      addArtifact(id, manifest) {
+        this.artifacts[id] = filterUndefined2(manifest);
+      }
+      /**
+       * Reports that some context is missing in order for this cloud assembly to be fully synthesized.
+       * @param missing - Missing context information.
+       */
+      addMissing(missing) {
+        if (this.missing.every((m) => m.key !== missing.key)) {
+          this.missing.push(missing);
+        }
+        this.parentBuilder?.addMissing(missing);
+      }
+      /**
+       * Finalizes the cloud assembly into the output directory returns a
+       * `CloudAssembly` object that can be used to inspect the assembly.
+       */
+      buildAssembly(options = {}) {
+        let manifest = {
+          version: cxschema2.Manifest.version(),
+          artifacts: this.artifacts,
+          runtime: options.runtimeInfo,
+          missing: this.missing.length > 0 ? this.missing : void 0
+        };
+        manifest = filterUndefined2(manifest);
+        const manifestFilePath = path23.join(this.outdir, MANIFEST_FILE);
+        cxschema2.Manifest.saveAssemblyManifest(manifest, manifestFilePath);
+        fs19.writeFileSync(path23.join(this.outdir, "cdk.out"), JSON.stringify({ version: manifest.version }));
+        return new CloudAssembly(this.outdir);
+      }
+      /**
+       * Creates a nested cloud assembly
+       */
+      createNestedAssembly(artifactId, displayName) {
+        const directoryName = artifactId;
+        const innerAsmDir = path23.join(this.outdir, directoryName);
+        this.addArtifact(artifactId, {
+          type: cxschema2.ArtifactType.NESTED_CLOUD_ASSEMBLY,
+          properties: {
+            directoryName,
+            displayName
+          }
+        });
+        return new _CloudAssemblyBuilder(innerAsmDir, {
+          // Reuse the same asset output directory as the current Casm builder
+          assetOutdir: this.assetOutdir,
+          parentBuilder: this
+        });
+      }
+      /**
+       * Delete the cloud assembly directory
+       */
+      delete() {
+        fs19.rmSync(this.outdir, { recursive: true, force: true });
+      }
+    };
+    exports2.CloudAssemblyBuilder = CloudAssemblyBuilder3;
+    function filterUndefined2(obj) {
+      if (Array.isArray(obj)) {
+        return obj.filter((x) => x !== void 0).map((x) => filterUndefined2(x));
+      }
+      if (typeof obj === "object") {
+        const ret = {};
+        for (const [key, value] of Object.entries(obj)) {
+          if (value === void 0) {
+            continue;
+          }
+          ret[key] = filterUndefined2(value);
+        }
+        return ret;
+      }
+      return obj;
+    }
+    function ignore(_x) {
+      return;
+    }
+    function determineOutputDirectory(outdir) {
+      if (outdir) {
+        return outdir;
+      }
+      const tmpDir = fs19.mkdtempSync(path23.join(fs19.realpathSync(os4.tmpdir()), "cdk.out"));
+      TEMPORARY_ASSEMBLY_DIRS.push(tmpDir);
+      return outdir ?? tmpDir;
+    }
+    function ensureDirSync2(dir) {
+      if (fs19.existsSync(dir)) {
+        if (!fs19.statSync(dir).isDirectory()) {
+          throw new error_1.CloudAssemblyError(`${dir} must be a directory`);
+        }
+      } else {
+        fs19.mkdirSync(dir, { recursive: true });
+      }
+    }
+    var TEMPORARY_ASSEMBLY_DIRS = [];
+    process.on("exit", () => CloudAssembly.cleanupTemporaryDirectories());
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js
+var require_nested_cloud_assembly_artifact_aug = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/artifacts/nested-cloud-assembly-artifact-aug.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var nested_cloud_assembly_artifact_1 = require_nested_cloud_assembly_artifact();
+    var cloud_assembly_1 = require_cloud_assembly2();
+    var cacheSym = /* @__PURE__ */ Symbol();
+    Object.defineProperty(nested_cloud_assembly_artifact_1.NestedCloudAssemblyArtifact.prototype, "nestedAssembly", {
+      get() {
+        if (!this[cacheSym]) {
+          this[cacheSym] = new cloud_assembly_1.CloudAssembly(this.fullPath, this.assembly.loadOptions);
+        }
+        return this[cacheSym];
+      }
+    });
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js
+var require_assets2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/assets.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ASSET_PREFIX_SEPARATOR = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_PATH_KEY = exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = void 0;
+    exports2.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT = "aws:cdk:enable-asset-metadata";
+    exports2.ASSET_RESOURCE_METADATA_PATH_KEY = "aws:asset:path";
+    exports2.ASSET_RESOURCE_METADATA_DOCKERFILE_PATH_KEY = "aws:asset:dockerfile-path";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_ARGS_KEY = "aws:asset:docker-build-args";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_CONTEXTS_KEY = "aws:asset:docker-build-contexts";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SECRETS_KEY = "aws:asset:docker-build-secrets";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_SSH_KEY = "aws:asset:docker-build-ssh";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_BUILD_TARGET_KEY = "aws:asset:docker-build-target";
+    exports2.ASSET_RESOURCE_METADATA_PROPERTY_KEY = "aws:asset:property";
+    exports2.ASSET_RESOURCE_METADATA_IS_BUNDLED_KEY = "aws:asset:is-bundled";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_OUTPUTS_KEY = "aws:asset:docker-outputs";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_FROM_KEY = "aws:asset:docker-cache-from";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_TO_KEY = "aws:asset:docker-cache-to";
+    exports2.ASSET_RESOURCE_METADATA_DOCKER_CACHE_DISABLED_KEY = "aws:asset:docker-cache-disabled";
+    exports2.ASSET_PREFIX_SEPARATOR = "||";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js
+var require_placeholders = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/placeholders.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EnvironmentPlaceholders = void 0;
+    var EnvironmentPlaceholders4 = class _EnvironmentPlaceholders {
+      /**
+       * Replace the environment placeholders in all strings found in a complex object.
+       *
+       * Duplicated between cdk-assets and aws-cdk CLI because we don't have a good single place to put it
+       * (they're nominally independent tools).
+       */
+      static replace(object, values) {
+        return this.recurse(object, (value) => {
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, values.region);
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, values.accountId);
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, values.partition);
+          return value;
+        });
+      }
+      /**
+       * Like 'replace', but asynchronous
+       */
+      static async replaceAsync(object, provider) {
+        let needRegion = false;
+        let needAccountId = false;
+        let needPartition = false;
+        this.recurse(object, (value) => {
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_REGION) > 1) {
+            needRegion = true;
+          }
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_ACCOUNT) > 1) {
+            needAccountId = true;
+          }
+          if (value.indexOf(_EnvironmentPlaceholders.CURRENT_PARTITION) > 1) {
+            needPartition = true;
+          }
+          return value;
+        });
+        const region = needRegion ? await provider.region() : void 0;
+        const accountId = needAccountId ? await provider.accountId() : void 0;
+        const partition = needPartition ? await provider.partition() : void 0;
+        return this.recurse(object, (value) => {
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_REGION, region ?? "WONTHAPPEN");
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_ACCOUNT, accountId ?? "WONTHAPPEN");
+          value = replaceAll3(value, _EnvironmentPlaceholders.CURRENT_PARTITION, partition ?? "WONTHAPPEN");
+          return value;
+        });
+      }
+      static recurse(value, cb) {
+        if (typeof value === "string") {
+          return cb(value);
+        }
+        if (typeof value !== "object" || value === null) {
+          return value;
+        }
+        if (Array.isArray(value)) {
+          return value.map((x) => this.recurse(x, cb));
+        }
+        const ret = {};
+        for (const [key, inner] of Object.entries(value)) {
+          ret[key] = this.recurse(inner, cb);
+        }
+        return ret;
+      }
+    };
+    exports2.EnvironmentPlaceholders = EnvironmentPlaceholders4;
+    EnvironmentPlaceholders4.CURRENT_REGION = "${AWS::Region}";
+    EnvironmentPlaceholders4.CURRENT_ACCOUNT = "${AWS::AccountId}";
+    EnvironmentPlaceholders4.CURRENT_PARTITION = "${AWS::Partition}";
+    function replaceAll3(s, search, replace) {
+      return s.split(search).join(replace);
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js
+var require_bootstrap = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/bootstrap.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.SSMPARAM_NO_INVALIDATE = void 0;
+    exports2.SSMPARAM_NO_INVALIDATE = "[cdk:skip]";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js
+var require_lib3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws-cdk/cloud-assembly-api/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_vpc(), exports2);
+    __exportStar2(require_ami(), exports2);
+    __exportStar2(require_load_balancer(), exports2);
+    __exportStar2(require_availability_zones(), exports2);
+    __exportStar2(require_endpoint_service_availability_zones(), exports2);
+    __exportStar2(require_security_group(), exports2);
+    __exportStar2(require_key(), exports2);
+    __exportStar2(require_generic(), exports2);
+    __exportStar2(require_cloud_artifact(), exports2);
+    require_cloud_artifact_aug();
+    __exportStar2(require_asset_manifest_artifact(), exports2);
+    __exportStar2(require_cloudformation_artifact(), exports2);
+    __exportStar2(require_tree_cloud_artifact(), exports2);
+    __exportStar2(require_nested_cloud_assembly_artifact(), exports2);
+    require_nested_cloud_assembly_artifact_aug();
+    __exportStar2(require_cloud_assembly2(), exports2);
+    __exportStar2(require_assets2(), exports2);
+    __exportStar2(require_metadata(), exports2);
+    __exportStar2(require_placeholders(), exports2);
+    __exportStar2(require_environment(), exports2);
+    __exportStar2(require_bootstrap(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/legacy-moved.ts
+function _convertCloudAssembly(x) {
+  return x;
+}
+function _convertCloudAssemblyBuilder(x) {
+  return x;
+}
+var import_cloud_assembly_api;
+var init_legacy_moved = __esm({
+  "../../aws-cdk-lib/cx-api/lib/legacy-moved.ts"() {
+    "use strict";
+    import_cloud_assembly_api = __toESM(require_lib3());
+    exports.CloudAssembly = import_cloud_assembly_api.CloudAssembly;
+    exports.CloudArtifact = import_cloud_assembly_api.CloudArtifact;
+    exports.CloudFormationStackArtifact = import_cloud_assembly_api.CloudFormationStackArtifact;
+    exports.AssetManifestArtifact = import_cloud_assembly_api.AssetManifestArtifact;
+    exports.NestedCloudAssemblyArtifact = import_cloud_assembly_api.NestedCloudAssemblyArtifact;
+    exports.TreeCloudArtifact = import_cloud_assembly_api.TreeCloudArtifact;
+    exports.CloudAssemblyBuilder = import_cloud_assembly_api.CloudAssemblyBuilder;
+    exports.EnvironmentPlaceholders = import_cloud_assembly_api.EnvironmentPlaceholders;
+    exports.EnvironmentUtils = import_cloud_assembly_api.EnvironmentUtils;
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/cxapi.ts
+var OUTDIR_ENV, CONTEXT_ENV, ERRORFILE_ENV, PERF_COUNTERS_FILE_ENV, CONTEXT_OVERFLOW_LOCATION_ENV, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, VALIDATION_REPORT_FILE, VALIDATION_REPORT_JSON_CONTEXT, STRICT_CFN_VALIDATE_ERRORS, CDK_APP_MODE_ENV, CDK_APP_MODE_CONTEXT, CDK_TEMPLATE_FILE_KEY;
+var init_cxapi = __esm({
+  "../../aws-cdk-lib/cx-api/lib/cxapi.ts"() {
+    "use strict";
+    OUTDIR_ENV = "CDK_OUTDIR";
+    CONTEXT_ENV = "CDK_CONTEXT_JSON";
+    ERRORFILE_ENV = "CDK_ERROR_FILE";
+    PERF_COUNTERS_FILE_ENV = "CDK_PERF_COUNTERS_FILE";
+    CONTEXT_OVERFLOW_LOCATION_ENV = "CONTEXT_OVERFLOW_LOCATION_ENV";
+    FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT = "@aws-cdk/core:failSynthOnValidationErrors";
+    VALIDATION_REPORT_FILE = "validation-report.json";
+    VALIDATION_REPORT_JSON_CONTEXT = "@aws-cdk/core:validationReportJson";
+    STRICT_CFN_VALIDATE_ERRORS = "@aws-cdk/core:strictCfnValidateErrors";
+    CDK_APP_MODE_ENV = "CDK_APP_MODE";
+    CDK_APP_MODE_CONTEXT = "@aws-cdk/core:appMode";
+    CDK_TEMPLATE_FILE_KEY = "aws:cdk:templateFile";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts
+var init_flag_modeling = __esm({
+  "../../aws-cdk-lib/cx-api/lib/private/flag-modeling.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/features.ts
+function futureFlagDefault(flag) {
+  const value = CURRENT_VERSION_FLAG_DEFAULTS[flag] ?? false;
+  if (typeof value !== "boolean") {
+    throw new Error(`futureFlagDefault: default type of flag '${flag}' should be boolean, got '${typeof value}'`);
+  }
+  return value;
+}
+var ENABLE_STACK_NAME_DUPLICATES_CONTEXT, ENABLE_DIFF_NO_FAIL_CONTEXT, NEW_STYLE_STACK_SYNTHESIS_CONTEXT, STACK_RELATIVE_EXPORTS_CONTEXT, DOCKER_IGNORE_SUPPORT, SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME, KMS_DEFAULT_KEY_POLICIES, S3_GRANT_WRITE_WITHOUT_ACL, ECS_REMOVE_DEFAULT_DESIRED_COUNT, RDS_LOWERCASE_DB_IDENTIFIER, APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID, EFS_DEFAULT_ENCRYPTION_AT_REST, LAMBDA_RECOGNIZE_VERSION_PROPS, LAMBDA_RECOGNIZE_LAYER_VERSION, CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021, CHECK_SECRET_USAGE, TARGET_PARTITIONS, ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER, EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME, ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME, IAM_MINIMIZE_POLICIES, IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME, VALIDATE_SNAPSHOT_REMOVAL_POLICY, CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME, S3_CREATE_DEFAULT_LOGGING_POLICY, SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY, APIGATEWAY_DISABLE_CLOUDWATCH_ROLE, ENABLE_PARTITION_LITERALS, EVENTS_TARGET_QUEUE_SAME_ACCOUNT, ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER, ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER, S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY, ROUTE53_PATTERNS_USE_CERTIFICATE, ROUTE53_PATTERNS_USE_DISTRIBUTION, AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT, DATABASE_PROXY_UNIQUE_RESOURCE_NAME, CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP, APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID, EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA, SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY, REDSHIFT_COLUMN_ID, ENABLE_EMR_SERVICE_POLICY_V2, EC2_RESTRICT_DEFAULT_SECURITY_GROUP, APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID, APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD, INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION, KMS_ALIAS_NAME_REF, KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL, EFS_DENY_ANONYMOUS_ACCESS, EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID, AUTOSCALING_GENERATE_LAUNCH_TEMPLATE, ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY, LAMBDA_NODEJS_USE_LATEST_RUNTIME, RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS, AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS, APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION, CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME, LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION, CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE, CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2, KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE, PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE, EKS_NODEGROUP_NAME, EKS_USE_NATIVE_OIDC_PROVIDER, ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID, EBS_DEFAULT_GP3, ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM, LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT, S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET, USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK, EXPLICIT_STACK_TAGS, REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS, DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA, EC2_SUM_TIMEOUT_ENABLED, APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION, USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY, CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS, LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES, STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY, STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2, BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT, ASPECT_STABILIZATION, SIGNER_PROFILE_NAME_PASSED_TO_CFN, USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE, ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT, IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS, ENABLE_ADDITIONAL_METADATA_COLLECTION, LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY, SET_UNIQUE_REPLICATION_ROLE_NAME, PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE, EVENTBUS_POLICY_SID_REQUIRED, ASPECT_PRIORITIES_MUTATING, DYNAMODB_TABLE_RETAIN_TABLE_REPLICA, LOG_USER_POOL_CLIENT_SECRET_VALUE, PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE, S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS, EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY, USE_RESOURCEID_FOR_VPCV2_MIGRATION, S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT, USE_CDK_MANAGED_LAMBDA_LOGGROUP, NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT, STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT, CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0, ELB_USE_POST_QUANTUM_TLS_POLICY, AUTOMATIC_L1_TRAITS, BATCH_DEFAULT_AL2023, EKS_DEFAULT_AL2023, ANNOTATIONS_IN_VALIDATION_REPORT, DEFAULT_CROSS_STACK_REFERENCES, VALIDATE_AGAINST_DEFAULT_RULES, ECS_REMOVE_EMPTY_LOAD_BALANCERS, CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS, FLAGS, CURRENT_MV, CURRENT_VERSION_EXPIRED_FLAGS, CURRENTLY_RECOMMENDED_FLAGS, CURRENT_VERSION_FLAG_DEFAULTS, FUTURE_FLAGS, NEW_PROJECT_DEFAULT_CONTEXT;
+var init_features = __esm({
+  "../../aws-cdk-lib/cx-api/lib/features.ts"() {
+    "use strict";
+    init_flag_modeling();
+    ENABLE_STACK_NAME_DUPLICATES_CONTEXT = "@aws-cdk/core:enableStackNameDuplicates";
+    ENABLE_DIFF_NO_FAIL_CONTEXT = "aws-cdk:enableDiffNoFail";
+    NEW_STYLE_STACK_SYNTHESIS_CONTEXT = "@aws-cdk/core:newStyleStackSynthesis";
+    STACK_RELATIVE_EXPORTS_CONTEXT = "@aws-cdk/core:stackRelativeExports";
+    DOCKER_IGNORE_SUPPORT = "@aws-cdk/aws-ecr-assets:dockerIgnoreSupport";
+    SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME = "@aws-cdk/aws-secretsmanager:parseOwnedSecretName";
+    KMS_DEFAULT_KEY_POLICIES = "@aws-cdk/aws-kms:defaultKeyPolicies";
+    S3_GRANT_WRITE_WITHOUT_ACL = "@aws-cdk/aws-s3:grantWriteWithoutAcl";
+    ECS_REMOVE_DEFAULT_DESIRED_COUNT = "@aws-cdk/aws-ecs-patterns:removeDefaultDesiredCount";
+    RDS_LOWERCASE_DB_IDENTIFIER = "@aws-cdk/aws-rds:lowercaseDbIdentifier";
+    APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID = "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId";
+    EFS_DEFAULT_ENCRYPTION_AT_REST = "@aws-cdk/aws-efs:defaultEncryptionAtRest";
+    LAMBDA_RECOGNIZE_VERSION_PROPS = "@aws-cdk/aws-lambda:recognizeVersionProps";
+    LAMBDA_RECOGNIZE_LAYER_VERSION = "@aws-cdk/aws-lambda:recognizeLayerVersion";
+    CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021 = "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021";
+    CHECK_SECRET_USAGE = "@aws-cdk/core:checkSecretUsage";
+    TARGET_PARTITIONS = "@aws-cdk/core:target-partitions";
+    ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER = "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver";
+    EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME = "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName";
+    ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME = "@aws-cdk/aws-ecs:arnFormatIncludesClusterName";
+    IAM_MINIMIZE_POLICIES = "@aws-cdk/aws-iam:minimizePolicies";
+    IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME = "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName";
+    VALIDATE_SNAPSHOT_REMOVAL_POLICY = "@aws-cdk/core:validateSnapshotRemovalPolicy";
+    CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME = "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName";
+    S3_CREATE_DEFAULT_LOGGING_POLICY = "@aws-cdk/aws-s3:createDefaultLoggingPolicy";
+    SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY = "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption";
+    APIGATEWAY_DISABLE_CLOUDWATCH_ROLE = "@aws-cdk/aws-apigateway:disableCloudWatchRole";
+    ENABLE_PARTITION_LITERALS = "@aws-cdk/core:enablePartitionLiterals";
+    EVENTS_TARGET_QUEUE_SAME_ACCOUNT = "@aws-cdk/aws-events:eventsTargetQueueSameAccount";
+    ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER = "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker";
+    ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER = "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener";
+    S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY = "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy";
+    ROUTE53_PATTERNS_USE_CERTIFICATE = "@aws-cdk/aws-route53-patters:useCertificate";
+    ROUTE53_PATTERNS_USE_DISTRIBUTION = "@aws-cdk/aws-route53-patterns:useDistribution";
+    AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT = "@aws-cdk/customresources:installLatestAwsSdkDefault";
+    DATABASE_PROXY_UNIQUE_RESOURCE_NAME = "@aws-cdk/aws-rds:databaseProxyUniqueResourceName";
+    CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP = "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup";
+    APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID = "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId";
+    EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA = "@aws-cdk/aws-ec2:launchTemplateDefaultUserData";
+    SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY = "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments";
+    REDSHIFT_COLUMN_ID = "@aws-cdk/aws-redshift:columnId";
+    ENABLE_EMR_SERVICE_POLICY_V2 = "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2";
+    EC2_RESTRICT_DEFAULT_SECURITY_GROUP = "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup";
+    APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID = "@aws-cdk/aws-apigateway:requestValidatorUniqueId";
+    APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD = "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard";
+    INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION = "@aws-cdk/core:includePrefixInUniqueNameGeneration";
+    KMS_ALIAS_NAME_REF = "@aws-cdk/aws-kms:aliasNameRef";
+    KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL = "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal";
+    EFS_DENY_ANONYMOUS_ACCESS = "@aws-cdk/aws-efs:denyAnonymousAccess";
+    EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID = "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId";
+    AUTOSCALING_GENERATE_LAUNCH_TEMPLATE = "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig";
+    ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY = "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby";
+    LAMBDA_NODEJS_USE_LATEST_RUNTIME = "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion";
+    RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS = "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials";
+    AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS = "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters";
+    APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION = "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier";
+    CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME = "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource";
+    LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION = "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction";
+    CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE = "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse";
+    CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2 = "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2";
+    KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE = "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope";
+    PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceAssetRoleTrustScope";
+    EKS_NODEGROUP_NAME = "@aws-cdk/aws-eks:nodegroupNameAttribute";
+    EKS_USE_NATIVE_OIDC_PROVIDER = "@aws-cdk/aws-eks:useNativeOidcProvider";
+    ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID = "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId";
+    EBS_DEFAULT_GP3 = "@aws-cdk/aws-ec2:ebsDefaultGp3Volume";
+    ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM = "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm";
+    LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT = "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault";
+    S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET = "@aws-cdk/aws-s3:keepNotificationInImportedBucket";
+    USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK = "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask";
+    EXPLICIT_STACK_TAGS = "@aws-cdk/core:explicitStackTags";
+    REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS = "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions";
+    DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA = "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica";
+    EC2_SUM_TIMEOUT_ENABLED = "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled";
+    APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION = "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission";
+    USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY = "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId";
+    CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS = "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics";
+    LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES = "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages";
+    STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY = "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy";
+    STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2 = "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2";
+    BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT = "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault";
+    ASPECT_STABILIZATION = "@aws-cdk/core:aspectStabilization";
+    SIGNER_PROFILE_NAME_PASSED_TO_CFN = "@aws-cdk/aws-signer:signingProfileNamePassedToCfn";
+    USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE = "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource";
+    ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT = "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault";
+    IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS = "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections";
+    ENABLE_ADDITIONAL_METADATA_COLLECTION = "@aws-cdk/core:enableAdditionalMetadataCollection";
+    LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY = "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy";
+    SET_UNIQUE_REPLICATION_ROLE_NAME = "@aws-cdk/aws-s3:setUniqueReplicationRoleName";
+    PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceStageRoleTrustScope";
+    EVENTBUS_POLICY_SID_REQUIRED = "@aws-cdk/aws-events:requireEventBusPolicySid";
+    ASPECT_PRIORITIES_MUTATING = "@aws-cdk/core:aspectPrioritiesMutating";
+    DYNAMODB_TABLE_RETAIN_TABLE_REPLICA = "@aws-cdk/aws-dynamodb:retainTableReplica";
+    LOG_USER_POOL_CLIENT_SECRET_VALUE = "@aws-cdk/cognito:logUserPoolClientSecretValue";
+    PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE = "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope";
+    S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS = "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions";
+    EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY = "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway";
+    USE_RESOURCEID_FOR_VPCV2_MIGRATION = "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration";
+    S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT = "@aws-cdk/aws-s3:publicAccessBlockedByDefault";
+    USE_CDK_MANAGED_LAMBDA_LOGGROUP = "@aws-cdk/aws-lambda:useCdkManagedLogGroup";
+    NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT = "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault";
+    STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT = "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint";
+    CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0 = "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0";
+    ELB_USE_POST_QUANTUM_TLS_POLICY = "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy";
+    AUTOMATIC_L1_TRAITS = "@aws-cdk/core:automaticL1Traits";
+    BATCH_DEFAULT_AL2023 = "@aws-cdk/aws-batch:defaultToAL2023";
+    EKS_DEFAULT_AL2023 = "@aws-cdk/aws-eks:defaultToAL2023";
+    ANNOTATIONS_IN_VALIDATION_REPORT = "@aws-cdk/core:annotationsInValidationReport";
+    DEFAULT_CROSS_STACK_REFERENCES = "@aws-cdk/core:defaultCrossStackReferences";
+    VALIDATE_AGAINST_DEFAULT_RULES = "@aws-cdk/core:validateAgainstDefaultRules";
+    ECS_REMOVE_EMPTY_LOAD_BALANCERS = "@aws-cdk/aws-ecs:removeEmptyLoadBalancers";
+    CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS = "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps";
+    FLAGS = {
+      //////////////////////////////////////////////////////////////////////
+      [SIGNER_PROFILE_NAME_PASSED_TO_CFN]: {
+        type: 1 /* BugFix */,
+        summary: "Pass signingProfileName to CfnSigningProfile",
+        detailsMd: `
+      When enabled, the \`signingProfileName\` property is passed to the L1 \`CfnSigningProfile\` construct,
+      which ensures that the AWS Signer profile is created with the specified name.
+
+      When disabled, the \`signingProfileName\` is not passed to CloudFormation, maintaining backward
+      compatibility with existing deployments where CloudFormation auto-generated profile names.
+
+      This feature flag is needed because enabling it can cause existing signing profiles to be
+      replaced during deployment if a \`signingProfileName\` was specified but not previously used
+      in the CloudFormation template.`,
+        introducedIn: { v2: "2.212.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_STACK_NAME_DUPLICATES_CONTEXT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Allow multiple stacks with the same name",
+        detailsMd: `
+      If this is set, multiple stacks can use the same stack name (e.g. deployed to
+      different environments). This means that the name of the synthesized template
+      file will be based on the construct path and not on the defined \`stackName\`
+      of the stack.`,
+        recommendedValue: true,
+        introducedIn: { v1: "1.16.0" },
+        unconfiguredBehavesLike: { v2: true },
+        compatibilityWithOldBehaviorMd: "Pass stack identifiers to the CLI instead of stack names."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_DIFF_NO_FAIL_CONTEXT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Make `cdk diff` not fail when there are differences",
+        detailsMd: `
+      Determines what status code \`cdk diff\` should return when the specified stack
+      differs from the deployed stack or the local CloudFormation template:
+
+      * \`aws-cdk:enableDiffNoFail=true\` => status code == 0
+      * \`aws-cdk:enableDiffNoFail=false\` => status code == 1
+
+      You can override this behavior with the --fail flag:
+
+      * \`--fail\` => status code == 1
+      * \`--no-fail\` => status code == 0`,
+        introducedIn: { v1: "1.19.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Specify `--fail` to the CLI."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [NEW_STYLE_STACK_SYNTHESIS_CONTEXT]: {
+        type: 1 /* BugFix */,
+        summary: "Switch to new stack synthesis method which enables CI/CD",
+        detailsMd: `
+      If this flag is specified, all \`Stack\`s will use the \`DefaultStackSynthesizer\` by
+      default. If it is not set, they will use the \`LegacyStackSynthesizer\`.`,
+        introducedIn: { v1: "1.39.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STACK_RELATIVE_EXPORTS_CONTEXT]: {
+        type: 1 /* BugFix */,
+        summary: "Name exports based on the construct paths relative to the stack, rather than the global construct path",
+        detailsMd: `
+      Combined with the stack name this relative construct path is good enough to
+      ensure uniqueness, and makes the export names robust against refactoring
+      the location of the stack in the construct tree (specifically, moving the Stack
+      into a Stage).`,
+        introducedIn: { v1: "1.58.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DOCKER_IGNORE_SUPPORT]: {
+        type: 0 /* ApiDefault */,
+        summary: "DockerImageAsset properly supports `.dockerignore` files by default",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`DockerImageAsset\` is to use
+      glob semantics for \`.dockerignore\` files. If this flag is set, the default behavior
+      is standard Docker ignore semantics.
+
+      This is a feature flag as the old behavior was technically incorrect but
+      users may have come to depend on it.`,
+        introducedIn: { v1: "1.73.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Update your `.dockerignore` file to match standard Docker ignore rules, if necessary."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SECRETS_MANAGER_PARSE_OWNED_SECRET_NAME]: {
+        type: 0 /* ApiDefault */,
+        summary: "Fix the referencing of SecretsManager names from ARNs",
+        detailsMd: `
+      Secret.secretName for an "owned" secret will attempt to parse the secretName from the ARN,
+      rather than the default full resource name, which includes the SecretsManager suffix.
+
+      If this flag is not set, Secret.secretName will include the SecretsManager suffix, which cannot be directly
+      used by SecretsManager.DescribeSecret, and must be parsed by the user first (e.g., Fn:Join, Fn:Select, Fn:Split).`,
+        introducedIn: { v1: "1.77.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Use `parseArn(secret.secretName).resourceName` to emulate the incorrect old parsing."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_DEFAULT_KEY_POLICIES]: {
+        type: 0 /* ApiDefault */,
+        summary: "Tighten default KMS key policies",
+        detailsMd: `
+      KMS Keys start with a default key policy that grants the account access to administer the key,
+      mirroring the behavior of the KMS SDK/CLI/Console experience. Users may override the default key
+      policy by specifying their own.
+
+      If this flag is not set, the default key policy depends on the setting of the \`trustAccountIdentities\`
+      flag. If false (the default, for backwards-compatibility reasons), the default key policy somewhat
+      resembles the default admin key policy, but with the addition of 'GenerateDataKey' permissions. If
+      true, the policy matches what happens when this feature flag is set.
+
+      Additionally, if this flag is not set and the user supplies a custom key policy, this will be appended
+      to the key's default policy (rather than replacing it).`,
+        introducedIn: { v1: "1.78.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `trustAccountIdentities: false` to `Key` construct to restore the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_GRANT_WRITE_WITHOUT_ACL]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove `PutObjectAcl` from Bucket.grantWrite",
+        detailsMd: `
+      Change the old 's3:PutObject*' permission to 's3:PutObject' on Bucket,
+      as the former includes 's3:PutObjectAcl',
+      which could be used to grant read/write object access to IAM principals in other accounts.
+      Use a feature flag to make sure existing customers who might be relying
+      on the overly-broad permissions are not broken.`,
+        introducedIn: { v1: "1.85.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Call `bucket.grantPutAcl()` in addition to `bucket.grantWrite()` to grant ACL permissions."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_DEFAULT_DESIRED_COUNT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Do not specify a default DesiredCount for ECS services",
+        detailsMd: `
+      ApplicationLoadBalancedServiceBase, ApplicationMultipleTargetGroupServiceBase,
+      NetworkLoadBalancedServiceBase, NetworkMultipleTargetGroupServiceBase, and
+      QueueProcessingServiceBase currently determine a default value for the desired count of
+      a CfnService if a desiredCount is not provided. The result of this is that on every
+      deployment, the service count is reset to the fixed value, even if it was autoscaled.
+
+      If this flag is not set, the default behaviour for CfnService.desiredCount is to set a
+      desiredCount of 1, if one is not provided. If true, a default will not be defined for
+      CfnService.desiredCount and as such desiredCount will be undefined, if one is not provided.`,
+        introducedIn: { v1: "1.92.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `desiredCount: 1` explicitly, but you should never need this."
+      },
+      [ECS_PATTERNS_SEC_GROUPS_DISABLES_IMPLICIT_OPEN_LISTENER]: {
+        type: 0 /* ApiDefault */,
+        summary: "Disable implicit openListener when custom security groups are provided",
+        detailsMd: `
+      ApplicationLoadBalancedServiceBase currently defaults openListener to true, which creates
+      security group rules allowing ingress from 0.0.0.0/0. This can be a security risk when
+      users provide custom security groups on their load balancer, expecting those to be the
+      only ingress rules.
+
+      If this flag is not set, openListener will always default to true for backward compatibility.
+      If true, openListener will default to false when custom security groups are detected on the
+      load balancer, and true otherwise. Users can still explicitly set openListener: true to
+      override this behavior.`,
+        introducedIn: { v2: "2.214.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `openListener: true` explicitly to maintain the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [RDS_LOWERCASE_DB_IDENTIFIER]: {
+        type: 1 /* BugFix */,
+        summary: "Force lowercasing of RDS Cluster names in CDK",
+        detailsMd: `
+      Cluster names must be lowercase, and the service will lowercase the name when the cluster
+      is created. However, CDK did not use to know about this, and would use the user-provided name
+      referencing the cluster, which would fail if it happened to be mixed-case.
+
+      With this flag, lowercase the name in CDK so we can reference it properly.
+
+      Must be behind a permanent flag because changing a name from mixed case to lowercase between deployments
+      would lead CloudFormation to think the name was changed and would trigger a cluster replacement
+      (losing data!).`,
+        introducedIn: { v1: "1.97.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_USAGEPLANKEY_ORDERINSENSITIVE_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Allow adding/removing multiple UsagePlanKeys independently",
+        detailsMd: `
+      The UsagePlanKey resource connects an ApiKey with a UsagePlan. API Gateway does not allow more than one UsagePlanKey
+      for any given UsagePlan and ApiKey combination. For this reason, CloudFormation cannot replace this resource without
+      either the UsagePlan or ApiKey changing.
+
+      The feature addition to support multiple UsagePlanKey resources - 142bd0e2 - recognized this and attempted to keep
+      existing UsagePlanKey logical ids unchanged.
+      However, this intentionally caused the logical id of the UsagePlanKey to be sensitive to order. That is, when
+      the 'first' UsagePlanKey resource is removed, the logical id of the 'second' assumes what was originally the 'first',
+      which again is disallowed.
+
+      In effect, there is no way to get out of this mess in a backwards compatible way, while supporting existing stacks.
+      This flag changes the logical id layout of UsagePlanKey to not be sensitive to order.`,
+        introducedIn: { v1: "1.98.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_DEFAULT_ENCRYPTION_AT_REST]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enable this feature flag to have elastic file systems encrypted at rest by default.",
+        detailsMd: `
+      Encryption can also be configured explicitly using the \`encrypted\` property.
+      `,
+        introducedIn: { v1: "1.98.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass the `encrypted: false` property to the `FileSystem` construct to disable encryption."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_RECOGNIZE_VERSION_PROPS]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the  `fn.currentVersion`.",
+        detailsMd: `
+      The previous calculation incorrectly considered properties of the \`AWS::Lambda::Function\` resource that did
+      not constitute creating a new Version.
+
+      See 'currentVersion' section in the aws-lambda module's README for more details.`,
+        introducedIn: { v1: "1.106.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_RECOGNIZE_LAYER_VERSION]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`.",
+        detailsMd: `
+      This flag correct incorporates Lambda Layer properties into the Lambda Function Version.
+
+      See 'currentVersion' section in the aws-lambda module's README for more details.`,
+        introducedIn: { v1: "1.159.0", v2: "2.27.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_DEFAULT_SECURITY_POLICY_TLS_V1_2_2021]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
+        detailsMd: `
+      The security policy can also be configured explicitly using the \`minimumProtocolVersion\` property.`,
+        introducedIn: { v1: "1.117.0", v2: "2.0.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CHECK_SECRET_USAGE]: {
+        type: 2 /* VisibleContext */,
+        summary: "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations",
+        detailsMd: `
+      With this flag enabled, \`SecretValue\` instances can only be passed to
+      constructs that accept \`SecretValue\`s; otherwise, \`unsafeUnwrap()\` must be
+      called to use it as a regular string.`,
+        introducedIn: { v1: "1.153.0", v2: "2.21.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [TARGET_PARTITIONS]: {
+        type: 2 /* VisibleContext */,
+        summary: "What regions to include in lookup tables of environment agnostic stacks",
+        detailsMd: `
+      Has no effect on stacks that have a defined region, but will limit the amount
+      of unnecessary regions included in stacks without a known region.
+
+      The type of this value should be a list of strings.`,
+        introducedIn: { v1: "1.137.0", v2: "2.4.0" },
+        recommendedValue: ["aws", "aws-cn"]
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_SERVICE_EXTENSIONS_ENABLE_DEFAULT_LOG_DRIVER]: {
+        type: 0 /* ApiDefault */,
+        summary: "ECS extensions will automatically add an `awslogs` driver if no logging is specified",
+        detailsMd: `
+      Enable this feature flag to configure default logging behavior for the ECS Service Extensions. This will enable the
+      \`awslogs\` log driver for the application container of the service to send the container logs to CloudWatch Logs.
+
+      This is a feature flag as the new behavior provides a better default experience for the users.`,
+        introducedIn: { v1: "1.140.0", v2: "2.8.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Specify a log driver explicitly."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_UNIQUE_IMDSV2_LAUNCH_TEMPLATE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names.",
+        detailsMd: `
+      Previously, the generated Launch Template names were only unique within a stack because they were based only on the
+      \`Instance\` construct ID. If another stack that has an \`Instance\` with the same construct ID is deployed in the same
+      account and region, the deployments would always fail as the generated Launch Template names were the same.
+
+      The new implementation addresses this issue by generating the Launch Template name with the \`Names.uniqueId\` method.`,
+        introducedIn: { v1: "1.140.0", v2: "2.8.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_ARN_FORMAT_INCLUDES_CLUSTER_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID.",
+        detailsMd: `
+      If this flag is not set, the old ARN format (without cluster name) for ECS is used.
+      If this flag is set, the new ARN format (with cluster name) for ECS is used.
+
+      This is a feature flag as the old format is still valid for existing ECS clusters.
+
+      See https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#ecs-resource-ids
+      `,
+        introducedIn: { v2: "2.35.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_MINIMIZE_POLICIES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Minimize IAM policies by combining Statements",
+        detailsMd: `
+      Minimize IAM policies by combining Principals, Actions and Resources of two
+      Statements in the policies, as long as it doesn't change the meaning of the
+      policy.`,
+        introducedIn: { v1: "1.150.0", v2: "2.18.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [VALIDATE_SNAPSHOT_REMOVAL_POLICY]: {
+        type: 0 /* ApiDefault */,
+        summary: "Error on snapshot removal policies on resources that do not support it.",
+        detailsMd: `
+      Makes sure we do not allow snapshot removal policy on resources that do not support it.
+      If supplied on an unsupported resource, CloudFormation ignores the policy altogether.
+      This flag will reduce confusion and unexpected loss of data when erroneously supplying
+      the snapshot removal policy.`,
+        introducedIn: { v2: "2.28.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "The old behavior was incorrect. Update your source to not specify SNAPSHOT policies on resources that do not support it."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_CROSS_ACCOUNT_KEY_ALIAS_STACK_SAFE_RESOURCE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Generate key aliases that include the stack name",
+        detailsMd: `
+      Enable this feature flag to have CodePipeline generate a unique cross account key alias name using the stack name.
+
+      Previously, when creating multiple pipelines with similar naming conventions and when crossAccountKeys is true,
+      the KMS key alias name created for these pipelines may be the same due to how the uniqueId is generated.
+
+      This new implementation creates a stack safe resource name for the alias using the stack name instead of the stack ID.
+      `,
+        introducedIn: { v2: "2.29.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_CREATE_DEFAULT_LOGGING_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist.",
+        detailsMd: `
+      For example, in order to send VPC flow logs to an S3 bucket, there is a specific Bucket Policy
+      that needs to be attached to the bucket. If you create the bucket without a policy and then add the
+      bucket as the flow log destination, the service will automatically create the bucket policy with the
+      necessary permissions. If you were to then try and add your own bucket policy CloudFormation will throw
+      and error indicating that a bucket policy already exists.
+
+      In cases where we know what the required policy is we can go ahead and create the policy so we can
+      remain in control of it.
+
+      @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-S3
+      `,
+        introducedIn: { v2: "2.31.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SNS_SUBSCRIPTIONS_SQS_DECRYPTION_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Restrict KMS key policy for encrypted Queues a bit more",
+        detailsMd: `
+      Enable this feature flag to restrict the decryption of a SQS queue, which is subscribed to a SNS topic, to
+      only the topic which it is subscribed to and not the whole SNS service of an account.
+
+      Previously the decryption was only restricted to the SNS service principal. To make the SQS subscription more
+      secure, it is a good practice to restrict the decryption further and only allow the connected SNS topic to decryption
+      the subscribed queue.`,
+        introducedIn: { v2: "2.32.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_DISABLE_CLOUDWATCH_ROLE]: {
+        type: 1 /* BugFix */,
+        summary: "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment",
+        detailsMd: `
+      Enable this feature flag to change the default behavior for aws-apigateway.RestApi and aws-apigateway.SpecRestApi
+      to _not_ create a CloudWatch role and Account. There is only a single ApiGateway account per AWS
+      environment which means that each time you create a RestApi in your account the ApiGateway account
+      is overwritten. If at some point the newest RestApi is deleted, the ApiGateway Account and CloudWatch
+      role will also be deleted, breaking any existing ApiGateways that were depending on them.
+
+      When this flag is enabled you should either create the ApiGateway account and CloudWatch role
+      separately _or_ only enable the cloudWatchRole on a single RestApi.
+      `,
+        introducedIn: { v2: "2.38.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_PARTITION_LITERALS]: {
+        type: 1 /* BugFix */,
+        summary: "Make ARNs concrete if AWS partition is known",
+        // eslint-disable-next-line @cdklabs/no-literal-partition
+        detailsMd: `
+      Enable this feature flag to get partition names as string literals in Stacks with known regions defined in
+      their environment, such as "aws" or "aws-cn".  Previously the CloudFormation intrinsic function
+      "Ref: AWS::Partition" was used.  For example:
+
+      \`\`\`yaml
+      Principal:
+        AWS:
+          Fn::Join:
+            - ""
+            - - "arn:"
+              - Ref: AWS::Partition
+              - :iam::123456789876:root
+      \`\`\`
+
+      becomes:
+
+      \`\`\`yaml
+      Principal:
+        AWS: "arn:aws:iam::123456789876:root"
+      \`\`\`
+
+      The intrinsic function will still be used in Stacks where no region is defined or the region's partition
+      is unknown.
+      `,
+        introducedIn: { v2: "2.38.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EVENTS_TARGET_QUEUE_SAME_ACCOUNT]: {
+        type: 1 /* BugFix */,
+        summary: "Event Rules may only push to encrypted SQS queues in the same account",
+        detailsMd: `
+      This flag applies to SQS Queues that are used as the target of event Rules. When enabled, only principals
+      from the same account as the Rule can send messages. If a queue is unencrypted, this restriction will
+      always apply, regardless of the value of this flag.
+      `,
+        introducedIn: { v2: "2.51.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_DISABLE_EXPLICIT_DEPLOYMENT_CONTROLLER_FOR_CIRCUIT_BREAKER]: {
+        type: 1 /* BugFix */,
+        summary: 'Avoid setting the "ECS" deployment controller when adding a circuit breaker',
+        detailsMd: `
+      Enable this feature flag to avoid setting the "ECS" deployment controller when adding a circuit breaker to an
+      ECS Service, as this will trigger a full replacement which fails to deploy when using set service names.
+      This does not change any behaviour as the default deployment controller when it is not defined is ECS.
+
+      This is a feature flag as the new behavior provides a better default experience for the users.
+      `,
+        introducedIn: { v2: "2.51.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Enable this feature to create default policy names for imported roles that depend on the stack the role is in.",
+        detailsMd: `
+      Without this, importing the same role in multiple places could lead to the permissions given for one version of the imported role
+      to overwrite permissions given to the role at a different place where it was imported. This was due to all imported instances
+      of a role using the same default policy name.
+
+      This new implementation creates default policy names based on the constructs node path in their stack.
+      `,
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_SERVER_ACCESS_LOGS_USE_BUCKET_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "Use S3 Bucket Policy instead of ACLs for Server Access Logging",
+        detailsMd: `
+      Enable this feature flag to use S3 Bucket Policy for granting permission for Server Access Logging
+      rather than using the canned \`LogDeliveryWrite\` ACL. ACLs do not work when Object Ownership is
+      enabled on the bucket.
+
+      This flag uses a Bucket Policy statement to allow Server Access Log delivery, following best
+      practices for S3.
+
+      @see https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html
+    `,
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ROUTE53_PATTERNS_USE_CERTIFICATE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use the official `Certificate` resource instead of `DnsValidatedCertificate`",
+        detailsMd: `
+      Enable this feature flag to use the official CloudFormation supported \`Certificate\` resource instead
+      of the deprecated \`DnsValidatedCertificate\` construct. If this flag is enabled and you are creating
+      the stack in a region other than us-east-1 then you must also set \`crossRegionReferences=true\` on the
+      stack.
+      `,
+        introducedIn: { v2: "2.61.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Define a `DnsValidatedCertificate` explicitly and pass in the `certificate` property"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AWS_CUSTOM_RESOURCE_LATEST_SDK_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "Whether to install the latest SDK by default in AwsCustomResource",
+        detailsMd: `
+      This was originally introduced and enabled by default to not be limited by the SDK version
+      that's installed on AWS Lambda. However, it creates issues for Lambdas bound to VPCs that
+      do not have internet access, or in environments where 'npmjs.com' is not available.
+
+      The recommended setting is to disable the default installation behavior, and pass the
+      flag on a resource-by-resource basis to enable it if necessary.
+    `,
+        compatibilityWithOldBehaviorMd: "Set installLatestAwsSdk: true on all resources that need it.",
+        introducedIn: { v2: "2.60.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DATABASE_PROXY_UNIQUE_RESOURCE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "Use unique resource name for Database Proxy",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`DatabaseProxy\` is
+      to use \`id\` of the constructor for \`dbProxyName\` when it's not specified in the argument.
+      In this case, users can't deploy \`DatabaseProxy\`s that have the same \`id\` in the same region.
+
+      If this flag is set, the default behavior is to use unique resource names for each \`DatabaseProxy\`.
+
+      This is a feature flag as the old behavior was technically incorrect, but users may have come to depend on it.
+    `,
+        introducedIn: { v2: "2.65.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEDEPLOY_REMOVE_ALARMS_FROM_DEPLOYMENT_GROUP]: {
+        type: 1 /* BugFix */,
+        summary: "Remove CloudWatch alarms from deployment group",
+        detailsMd: `
+      Enable this flag to be able to remove all CloudWatch alarms from a deployment group by removing
+      the alarms from the construct. If this flag is not set, removing all alarms from the construct
+      will still leave the alarms configured for the deployment group.
+    `,
+        introducedIn: { v2: "2.65.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_AUTHORIZER_CHANGE_DEPLOYMENT_LOGICAL_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Include authorizer configuration in the calculation of the API deployment logical ID.",
+        detailsMd: `
+      The logical ID of the AWS::ApiGateway::Deployment resource is calculated by hashing
+      the API configuration, including methods, and resources, etc. Enable this feature flag
+      to also include the configuration of any authorizer attached to the API in the
+      calculation, so any changes made to an authorizer will create a new deployment.
+      `,
+        introducedIn: { v2: "2.66.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_LAUNCH_TEMPLATE_DEFAULT_USER_DATA]: {
+        type: 1 /* BugFix */,
+        summary: "Define user data for a launch template by default when a machine image is provided.",
+        detailsMd: `
+      The ec2.LaunchTemplate construct did not define user data when a machine image is
+      provided despite the document. If this is set, a user data is automatically defined
+      according to the OS of the machine image.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.67.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SECRETS_MANAGER_TARGET_ATTACHMENT_RESOURCE_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "SecretTargetAttachments uses the ResourcePolicy of the attached Secret.",
+        detailsMd: `
+      Enable this feature flag to make SecretTargetAttachments use the ResourcePolicy of the attached Secret.
+      SecretTargetAttachments are created to connect a Secret to a target resource.
+      In CDK code, they behave like regular Secret and can be used as a stand-in in most situations.
+      Previously, adding to the ResourcePolicy of a SecretTargetAttachment did attempt to create a separate ResourcePolicy for the same Secret.
+      However Secrets can only have a single ResourcePolicy, causing the CloudFormation deployment to fail.
+
+      When enabling this feature flag for an existing Stack, ResourcePolicies created via a SecretTargetAttachment will need replacement.
+      This won't be possible without intervention due to limitation outlined above.
+      First remove all permissions granted to the Secret and deploy without the ResourcePolicies.
+      Then you can re-add the permissions and deploy again.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.67.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [REDSHIFT_COLUMN_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Whether to use an ID to track Redshift column changes",
+        detailsMd: `
+      Redshift columns are identified by their \`name\`. If a column is renamed, the old column
+      will be dropped and a new column will be created. This can cause data loss.
+
+      This flag enables the use of an \`id\` attribute for Redshift columns. If this flag is enabled, the
+      internal CDK architecture will track changes of Redshift columns through their \`id\`, rather
+      than their \`name\`. This will prevent data loss when columns are renamed.
+
+      **NOTE** - Enabling this flag comes at a **risk**. When enabled, update the \`id\`s of all columns,
+      **however** do not change the \`names\`s of the columns. If the \`name\`s of the columns are changed during
+      initial deployment, the columns will be dropped and recreated, causing data loss. After the initial deployment
+      of the \`id\`s, the \`name\`s of the columns can be changed without data loss.
+      `,
+        introducedIn: { v2: "2.68.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_EMR_SERVICE_POLICY_V2]: {
+        type: 1 /* BugFix */,
+        summary: "Enable AmazonEMRServicePolicy_v2 managed policies",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`EmrCreateCluster\` is
+      to use \`AmazonElasticMapReduceRole\` managed policies.
+
+      If this flag is set, the default behavior is to use the new \`AmazonEMRServicePolicy_v2\`
+      managed policies.
+
+      This is a feature flag as the old behavior will be deprecated, but some resources may require manual
+      intervention since they might not have the appropriate tags propagated automatically.
+      `,
+        introducedIn: { v2: "2.72.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_RESTRICT_DEFAULT_SECURITY_GROUP]: {
+        type: 0 /* ApiDefault */,
+        summary: "Restrict access to the VPC default security group",
+        detailsMd: `
+      Enable this feature flag to remove the default ingress/egress rules from the
+      VPC default security group.
+
+      When a VPC is created, a default security group is created as well and this cannot
+      be deleted. The default security group is created with ingress/egress rules that allow
+      _all_ traffic. [AWS Security best practices recommend](https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-2)
+      removing these ingress/egress rules in order to restrict access to the default security group.
+    `,
+        introducedIn: { v2: "2.78.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: `
+      To allow all ingress/egress traffic to the VPC default security group you
+      can set the \`restrictDefaultSecurityGroup: false\`.
+    `
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_REQUEST_VALIDATOR_UNIQUE_ID]: {
+        type: 1 /* BugFix */,
+        summary: "Generate a unique id for each RequestValidator added to a method",
+        detailsMd: `
+      This flag allows multiple RequestValidators to be added to a RestApi when
+      providing the \`RequestValidatorOptions\` in the \`addMethod()\` method.
+
+      If the flag is not set then only a single RequestValidator can be added in this way.
+      Any additional RequestValidators have to be created directly with \`new RequestValidator\`.
+    `,
+        introducedIn: { v2: "2.78.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_ALIAS_NAME_REF]: {
+        type: 1 /* BugFix */,
+        summary: "KMS Alias name and keyArn will have implicit reference to KMS Key",
+        detailsMd: `
+      This flag allows an implicit dependency to be created between KMS Alias and KMS Key
+      when referencing key.aliasName or key.keyArn.
+
+      If the flag is not set then a raw string is passed as the Alias name and no
+      implicit dependencies will be set.
+    `,
+        introducedIn: { v2: "2.83.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_APPLY_IMPORTED_ALIAS_PERMISSIONS_TO_PRINCIPAL]: {
+        type: 1 /* BugFix */,
+        summary: "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition",
+        detailsMd: `
+      This flag enables the grant methods (grant, grantDecrypt, grantEncrypt, etc.) on Aliases imported
+      by name to grant permissions based on the 'kms:ResourceAliases' condition rather than no-op grants.
+      When disabled, grant calls on imported aliases will be dropped (no-op) to maintain compatibility.
+    `,
+        introducedIn: { v2: "2.202.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Remove calls to the grant* methods on the aliases referenced by name"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AUTOSCALING_GENERATE_LAUNCH_TEMPLATE]: {
+        type: 1 /* BugFix */,
+        summary: "Generate a launch template when creating an AutoScalingGroup",
+        detailsMd: `
+      Enable this flag to allow AutoScalingGroups to generate a launch template when being created.
+      Launch configurations have been deprecated and cannot be created in AWS Accounts created after
+      December 31, 2023. Existing 'AutoScalingGroup' properties used for creating a launch configuration
+      will now create an equivalent 'launchTemplate'. Alternatively, users can provide an explicit
+      'launchTemplate' or 'mixedInstancesPolicy'. When this flag is enabled a 'launchTemplate' will
+      attempt to set user data according to the OS of the machine image if explicit user data is not
+      provided.
+    `,
+        introducedIn: { v2: "2.88.0" },
+        compatibilityWithOldBehaviorMd: `
+      If backwards compatibility needs to be maintained due to an existing autoscaling group
+      using a launch config, set this flag to false.
+    `,
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION]: {
+        type: 1 /* BugFix */,
+        summary: "Include the stack prefix in the stack name generation process",
+        detailsMd: `
+      This flag prevents the prefix of a stack from making the stack's name longer than the 128 character limit.
+
+      If the flag is set, the prefix is included in the stack name generation process.
+      If the flag is not set, then the prefix of the stack is prepended to the generated stack name.
+
+      **NOTE** - Enabling this flag comes at a **risk**. If you have already deployed stacks, changing the status of this
+      feature flag can lead to a change in stacks' name. Changing a stack name mean recreating the whole stack, which
+      is not viable in some productive setups.
+    `,
+        introducedIn: { v2: "2.84.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_DENY_ANONYMOUS_ACCESS]: {
+        type: 0 /* ApiDefault */,
+        summary: "EFS denies anonymous clients accesses",
+        detailsMd: `
+      This flag adds the file system policy that denies anonymous clients
+      access to \`efs.FileSystem\`.
+
+      If this flag is not set, \`efs.FileSystem\` will allow all anonymous clients
+      that can access over the network.`,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "You can pass `allowAnonymousAccess: true` so allow anonymous clients access."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_OPENSEARCH_MULTIAZ_WITH_STANDBY]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables support for Multi-AZ with Standby deployment for opensearch domains",
+        detailsMd: `
+      If this is set, an opensearch domain will automatically be created with
+      multi-az with standby enabled.
+    `,
+        introducedIn: { v2: "2.88.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `capacity.multiAzWithStandbyEnabled: false` to `Domain` construct to restore the old behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_NODEJS_USE_LATEST_RUNTIME]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default",
+        detailsMd: `
+      If this is set, and a \`runtime\` prop is not passed to, Lambda NodeJs
+      functions will use the latest version of the runtime provided by the Lambda
+      service. Do not use this if you your lambda function is reliant on dependencies
+      shipped as part of the runtime environment.
+    `,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `runtime: lambda.Runtime.NODEJS_16_X` to `Function` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EFS_MOUNTTARGET_ORDERINSENSITIVE_LOGICAL_ID]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet.",
+        detailsMd: `
+      When this feature flag is enabled, each mount target will have a stable
+      logicalId that is linked to the associated subnet. If the flag is set to
+      false then the logicalIds of the mount targets can change if the number of
+      subnets changes.
+
+      Set this flag to false for existing mount targets.
+    `,
+        introducedIn: { v2: "2.93.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [AURORA_CLUSTER_CHANGE_SCOPE_OF_INSTANCE_PARAMETER_GROUP_WITH_EACH_PARAMETERS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change.",
+        detailsMd: `
+      When this feature flag is enabled, a scope of \`InstanceParameterGroup\` for
+      \`AuroraClusterInstance\` with each parameters will change to AuroraClusterInstance
+      from AuroraCluster.
+
+      If the flag is set to false then it can only make one \`AuroraClusterInstance\`
+      with each \`InstanceParameterGroup\` in the AuroraCluster.
+    `,
+        introducedIn: { v2: "2.97.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APPSYNC_ENABLE_USE_ARN_IDENTIFIER_SOURCE_API_ASSOCIATION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id.",
+        detailsMd: `
+      When this feature flag is enabled, we use the IGraphqlApi ARN rather than ID when creating or updating CfnSourceApiAssociation in
+      the GraphqlApi construct. Using the ARN allows the association to support an association with a source api or merged api in another account.
+      Note that for existing source api associations created with this flag disabled, enabling the flag will lead to a resource replacement.
+    `,
+        introducedIn: { v2: "2.97.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [RDS_PREVENT_RENDERING_DEPRECATED_CREDENTIALS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials.",
+        detailsMd: `
+      The \`credentials\` property on the \`DatabaseClusterFromSnapshotProps\`
+      interface was deprecated with the new \`snapshotCredentials\` property being
+      recommended. Before deprecating \`credentials\`, a secret would be generated
+      while rendering credentials if the \`credentials\` property was undefined or
+      if a secret wasn't provided via the \`credentials\` property. This behavior
+      is replicated with the new \`snapshotCredentials\` property, but the original
+      \`credentials\` secret can still be created resulting in an extra database
+      secret.
+
+      Set this flag to prevent rendering deprecated \`credentials\` and creating an
+      extra database secret when only using \`snapshotCredentials\` to create an RDS
+      database cluster from a snapshot.
+    `,
+        introducedIn: { v2: "2.98.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODECOMMIT_SOURCE_ACTION_DEFAULT_BRANCH_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the CodeCommit source action is using the default branch name 'main'.",
+        detailsMd: `
+      When setting up a CodeCommit source action for the source stage of a pipeline, please note that the
+      default branch is 'master'.
+      However, with the activation of this feature flag, the default branch is updated to 'main'.
+    `,
+        introducedIn: { v2: "2.103.1" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_PERMISSION_LOGICAL_ID_FOR_LAMBDA_ACTION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID.",
+        detailsMd: `
+      When this feature flag is enabled, a logical ID of \`LambdaPermission\` for a
+      \`LambdaAction\` will include an alarm ID. Therefore multiple alarms for the same Lambda
+      can be created with \`LambdaAction\`.
+
+      If the flag is set to false then it can only make one alarm for the Lambda with
+      \`LambdaAction\`.
+    `,
+        introducedIn: { v2: "2.124.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_CROSS_ACCOUNT_KEYS_DEFAULT_VALUE_TO_FALSE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables Pipeline to set the default value for crossAccountKeys to false.",
+        detailsMd: `
+      When this feature flag is enabled, and the \`crossAccountKeys\` property is not provided in a \`Pipeline\`
+      construct, the construct automatically defaults the value of this property to false.
+    `,
+        introducedIn: { v2: "2.127.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `crossAccountKeys: true` to `Pipeline` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CODEPIPELINE_DEFAULT_PIPELINE_TYPE_TO_V2]: {
+        type: 0 /* ApiDefault */,
+        summary: "Enables Pipeline to set the default pipeline type to V2.",
+        detailsMd: `
+      When this feature flag is enabled, and the \`pipelineType\` property is not provided in a \`Pipeline\`
+      construct, the construct automatically defaults the value of this property to \`PipelineType.V2\`.
+    `,
+        introducedIn: { v2: "2.133.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `pipelineType: PipelineType.V1` to `Pipeline` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [KMS_REDUCE_CROSS_ACCOUNT_REGION_POLICY_SCOPE]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only.",
+        detailsMd: `
+      When this feature flag is enabled and calling KMS key grant method, the created IAM policy will reduce the resource scope from
+      '*' to this specific granting KMS key.
+    `,
+        introducedIn: { v2: "2.134.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_ASSET_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove the root account principal from PipelineAssetsFileRole trust policy",
+        detailsMd: `
+      When this feature flag is enabled, the root account principal will not be added to the trust policy of asset role.
+      When this feature flag is disabled, it will keep the root account principal in the trust policy.
+    `,
+        introducedIn: { v2: "2.141.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_NODEGROUP_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix.",
+        detailsMd: `
+      When this feature flag is enabled, the nodegroupName attribute will be exactly the name of the nodegroup without
+      any prefix.
+    `,
+        introducedIn: { v2: "2.139.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_USE_NATIVE_OIDC_PROVIDER]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider).",
+        detailsMd: `
+      When this feature flag is enabled, EKS clusters will use the native AWS::IAM::OIDCProvider
+      CloudFormation resource instead of the custom resource provider for creating OIDC providers.
+
+			WARNING: Enabling this flag on a cluster with an existing OIDC provider created by the custom resource (iam.OpenIDConnectProvider)
+			will cause the OIDC provider to be replaced with the native resource, which may lead to disruption.
+
+			To migrate in place without disruption, follow the guide at: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/aws-eks/README.md#migrating-from-the-deprecated-eksopenidconnectprovider-to-eksoidcprovidernative
+    `,
+        introducedIn: { v2: "2.237.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use the custom resource provider."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EBS_DEFAULT_GP3]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the default volume type of the EBS volume will be GP3",
+        detailsMd: `
+      When this featuer flag is enabled, the default volume type of the EBS volume will be \`EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3\`.
+    `,
+        introducedIn: { v2: "2.140.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Pass `volumeType: EbsDeviceVolumeType.GENERAL_PURPOSE_SSD` to `Volume` construct to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_DEFAULT_DEPLOYMENT_ALARM]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, remove default deployment alarm settings",
+        detailsMd: `
+      When this feature flag is enabled, remove the default deployment alarm settings when creating a AWS ECS service.
+    `,
+        introducedIn: { v2: "2.143.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Set AWS::ECS::Service 'DeploymentAlarms' manually to restore the previous behavior."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LOG_API_RESPONSE_DATA_PROPERTY_TRUE_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default",
+        detailsMd: `
+      This results in 'logApiResponseData' being passed as true to the custom resource provider. This will cause the custom resource handler to receive an 'Update' event. If you don't
+      have an SDK call configured for the 'Update' event and you're dependent on specific SDK call response data, you will see this error from CFN:
+
+      CustomResource attribute error: Vendor response doesn't contain  attribute in object. See https://github.com/aws/aws-cdk/issues/29949) for more details.
+
+      Unlike most feature flags, we don't recommend setting this feature flag to true. However, if you're using the 'AwsCustomResource' construct with 'logApiResponseData' as true in
+      the event object, then setting this feature flag will keep this behavior. Otherwise, setting this feature flag to false will trigger an 'Update' event by removing the 'logApiResponseData'
+      property from the event object.
+    `,
+        introducedIn: { v2: "2.145.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_KEEP_NOTIFICATION_IN_IMPORTED_BUCKET]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack.",
+        detailsMd: `
+      Currently, adding notifications to a bucket where it was created by ourselves will override notification added where it is imported.
+
+      When this feature flag is enabled, adding notifications to a bucket in the current stack will only update notification defined in this stack.
+      Other notifications that are not managed by this stack will be kept.
+    `,
+        introducedIn: { v2: "2.155.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_NEW_S3URI_PARAMETERS_FOR_BEDROCK_INVOKE_MODEL_TASK]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
+        detailsMd: `
+    Currently, 'inputPath' and 'outputPath' from the TaskStateBase Props is being used under BedrockInvokeModelProps to define S3URI under 'input' and 'output' fields
+    of State Machine Task definition.
+
+    When this feature flag is enabled, specify newly introduced props 's3InputUri' and
+    's3OutputUri' to populate S3 uri under input and output fields in state machine task definition for Bedrock invoke model.
+
+    `,
+        introducedIn: { v2: "2.156.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use input and output path fields for s3 URI"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EXPLICIT_STACK_TAGS]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, stack tags need to be assigned explicitly on a Stack.",
+        detailsMd: `
+    Without this feature flag enabled, if tags are added to a Stack using
+    \`Tags.of(scope).add(...)\`, they will be added to both the stack and all resources
+    in the stack template.
+
+    That leads to the tags being applied twice: once in the template, and once
+    again automatically by CloudFormation, which will apply all stack tags to
+    all resources in the stack. This leads to loss of control, as the
+    \`excludeResourceTypes\` option of the Tags API will not have any effect.
+
+    With this flag enabled, tags added to a stack using \`Tags.of(...)\` are ignored,
+    and Stack tags must be configured explicitly on the Stack object.
+    `,
+        introducedIn: { v2: "2.205.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Configure stack-level tags using `new Stack(..., { tags: { ... } })`."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [REDUCE_EC2_FARGATE_CLOUDWATCH_PERMISSIONS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration",
+        detailsMd: `
+    Currently, we automatically add a number of cloudwatch permissions to the task role when no cloudwatch log group is
+    specified as logConfiguration and it will grant 'Resources': ['*'] to the task role.
+
+    When this feature flag is enabled, we will only grant the necessary permissions when users specify cloudwatch log group.
+    `,
+        introducedIn: { v2: "2.159.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to continue grant permissions to log group when no log group is specified"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DYNAMODB_TABLEV2_RESOURCE_POLICY_PER_REPLICA]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas",
+        detailsMd: `
+      If this flag is not set, the default behavior for \`TableV2\` is to use a different \`resourcePolicy\` for each replica.
+
+      If this flag is set to false, the behavior is that each replica shares the same \`resourcePolicy\` as the source table.
+      This will prevent you from creating a new table which has an additional replica and a resource policy.
+
+      This is a feature flag as the old behavior was technically incorrect but users may have come to depend on it.`,
+        introducedIn: { v2: "2.164.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_SUM_TIMEOUT_ENABLED]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together.",
+        detailsMd: `
+      Currently is both initOptions.timeout and resourceSignalTimeout are both specified in the options for creating an EC2 Instance,
+      only the value from 'resourceSignalTimeout' will be used.
+
+      When this feature flag is enabled, if both initOptions.timeout and resourceSignalTimeout are specified, the values will to be summed together.
+      `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.160.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APPSYNC_GRAPHQLAPI_SCOPE_LAMBDA_FUNCTION_PERMISSION]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn.",
+        detailsMd: `
+        Currently, when using a Lambda authorizer with an AppSync GraphQL API, the AWS CDK automatically generates the necessary AWS::Lambda::Permission
+        to allow the AppSync API to invoke the Lambda authorizer. This permission is overly permissive because it lacks a SourceArn, meaning
+        it allows invocations from any source.
+
+        When this feature flag is enabled, the AWS::Lambda::Permission will be properly scoped with the SourceArn corresponding to the
+        specific AppSync GraphQL API.
+        `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.161.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_CORRECT_VALUE_FOR_INSTANCE_RESOURCE_ID_PROPERTY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`",
+        detailsMd: `
+      Currently, the value of the property 'instanceResourceId' in construct 'DatabaseInstanceReadReplica' is not correct, and set to 'DbInstanceArn' which is not correct when it is used to create the IAM Policy in the grantConnect method.
+
+      When this feature flag is enabled, the value of that property will be as expected set to 'DbiResourceId' attribute, and that will fix the grantConnect method.
+    `,
+        introducedIn: { v2: "2.161.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use `DbInstanceArn` as value for property `instanceResourceId`"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CFN_INCLUDE_REJECT_COMPLEX_RESOURCE_UPDATE_CREATE_POLICY_INTRINSICS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values.",
+        detailsMd: `
+    Without enabling this feature flag, \`cfn-include\` will silently drop resource update or create policies that contain CFN Intrinsics if they include non-primitive values.
+
+    Enabling this feature flag will make \`cfn-include\` throw on these templates, unless you specify the logical ID of the resource in the 'unhydratedResources' property.
+    `,
+        recommendedValue: true,
+        introducedIn: { v2: "2.161.0" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_NODEJS_SDK_V3_EXCLUDE_SMITHY_PACKAGES]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications.",
+        detailsMd: `
+      Currently, when bundling Lambda functions with the non-latest runtime that supports AWS SDK JavaScript (v3), only the '@aws-sdk/*' packages are excluded by default.
+      However, this can cause version mismatches between the '@aws-sdk/*' and '@smithy/*' packages, as they are tightly coupled dependencies in AWS SDK v3.
+
+      When this feature flag is enabled, both '@aws-sdk/*' and '@smithy/*' packages will be excluded during the bundling process. This ensures that no mismatches
+      occur between these tightly coupled dependencies when using the AWS SDK v3 in Lambda functions.
+    `,
+        introducedIn: { v2: "2.161.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_TASKS_FIX_RUN_ECS_TASK_POLICY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN.",
+        detailsMd: `
+      Currently, in the IAM Run Ecs policy generated by SFN EcsRunTask(), CDK will construct the ARN with wildcard attached at the end.
+      The revision number at the end will be replaced with a wildcard which it shouldn't.
+
+      When this feature flag is enabled, if the task definition is created in the stack, the 'Resource' section will 'Ref' the taskDefinition.
+    `,
+        introducedIn: { v2: "2.163.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [BASTION_HOST_USE_AMAZON_LINUX_2023_BY_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2.",
+        detailsMd: `
+      Currently, if the machineImage property of the BastionHost construct defaults to using the latest Amazon Linux 2
+      AMI. Amazon Linux 2 hits end-of-life in June 2025, so using Amazon Linux 2023 by default is a more future-proof
+      and secure option.
+
+      When this feature flag is enabled, if you do not pass the machineImage property to the BastionHost construct,
+      the latest Amazon Linux 2023 version will be used instead of Amazon Linux 2.
+    `,
+        introducedIn: { v2: "2.172.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag or explicitly pass an Amazon Linux 2 machine image to the BastionHost construct."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ASPECT_STABILIZATION]: {
+        type: 2 /* VisibleContext */,
+        summary: "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
+        detailsMd: `
+      Previously, Aspects were invoked in a single pass of the construct tree.
+      This meant that Aspects which created other Aspects were not run, and Aspects that created new nodes in the tree sometimes did not inherit their parent Aspects.
+
+      When this feature flag is enabled, a stabilization loop is run to recurse the construct tree multiple times when invoking Aspects.
+    `,
+        unconfiguredBehavesLike: { v2: true },
+        introducedIn: { v2: "2.172.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USER_POOL_DOMAIN_NAME_METHOD_WITHOUT_CUSTOM_RESOURCE]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource.",
+        detailsMd: `
+    When this feature flag is enabled, a new method will be used to get the DNS Name of the user pool domain target. The old method
+    creates a custom resource internally, but the new method doesn't need a custom resource.
+
+    If the flag is set to false then a custom resource will be created when using \`UserPoolDomainTarget\`.
+    `,
+        introducedIn: { v2: "2.174.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ALB_DUALSTACK_WITHOUT_PUBLIC_IPV4_SECURITY_GROUP_RULES_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere",
+        detailsMd: `
+      For internet facing ALBs with 'dualstack-without-public-ipv4' IP address type, the default security group rules
+      will allow IPv6 ingress from anywhere (::/0). Previously, the default security group rules would only allow IPv4 ingress.
+
+      Using a feature flag to make sure existing customers who might be relying
+      on the overly restrictive permissions are not broken.`,
+        introducedIn: { v2: "2.176.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to only allow IPv4 ingress in the default security group rules."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [IAM_OIDC_REJECT_UNAUTHORIZED_CONNECTIONS]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the default behaviour of OIDC provider will reject unauthorized connections",
+        detailsMd: `
+      When this feature flag is enabled, the default behaviour of OIDC Provider's custom resource handler will
+      default to reject unauthorized connections when downloading CA Certificates.
+
+      When this feature flag is disabled, the behaviour will be the same as current and will allow downloading
+      thumbprints from unsecure connections.`,
+        introducedIn: { v2: "2.177.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to allow unsecure OIDC connection."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ENABLE_ADDITIONAL_METADATA_COLLECTION]: {
+        type: 2 /* VisibleContext */,
+        summary: "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues.",
+        detailsMd: `
+    When this feature flag is enabled, CDK expands the scope of usage data collection to include the following:
+      * L2 construct property keys - Collect which property keys you use from the L2 constructs in your app. This includes property keys nested in dictionary objects.
+      * L2 construct property values of BOOL and ENUM types - Collect property key values of only BOOL and ENUM types. All other types, such as string values or construct references will be redacted.
+      * L2 construct method usage - Collection method name, parameter keys and parameter values of BOOL and ENUM type.
+    `,
+        introducedIn: { v2: "2.178.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LAMBDA_CREATE_NEW_POLICIES_WITH_ADDTOROLEPOLICY]: {
+        type: 1 /* BugFix */,
+        summary: "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement",
+        detailsMd: `
+      [Deprecated default feature] When this feature flag is enabled, Lambda will create new inline policies with AddToRolePolicy.
+      The purpose of this is to prevent lambda from creating a dependency on the Default Policy Statement.
+      This solves an issue where a circular dependency could occur if adding lambda to something like a Cognito Trigger, then adding the User Pool to the lambda execution role permissions.
+      However in the current implementation, we have removed a dependency of the lambda function on the policy. In addition to this, a Role will be attached to the Policy instead of an inline policy being attached to the role.
+      This will create a data race condition in the CloudFormation template because the creation of the Lambda function no longer waits for the policy to be created. Having said that, we are not deprecating the feature (we are defaulting the feature flag to false for new stacks) since this feature can still be used to get around the circular dependency issue (issue-7016) particularly in cases where the lambda resource creation doesnt need to depend on the policy resource creation.
+      We recommend to unset the feature flag if already set which will restore the original behavior.
+    `,
+        introducedIn: { v2: "2.180.0" },
+        recommendedValue: false
+      },
+      //////////////////////////////////////////////////////////////////////
+      [SET_UNIQUE_REPLICATION_ROLE_NAME]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication.",
+        detailsMd: `
+      When performing cross-account S3 replication, we need to explicitly specify a role name for the replication execution role.
+      When this feature flag is enabled, a unique role name is specified only when performing cross-account replication.
+      When disabled, 'CDKReplicationRole' is always specified.
+    `,
+        introducedIn: { v2: "2.182.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_STAGE_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "Remove the root account principal from Stage addActions trust policy",
+        detailsMd: `
+      When this feature flag is enabled, the root account principal will not be added to the trust policy of stage role.
+      When this feature flag is disabled, it will keep the root account principal in the trust policy.
+
+      For cross-account cases, when this feature flag is enabled the trust policy will be scoped to the role only.
+      If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED.
+    `,
+        introducedIn: { v2: "2.184.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EVENTBUS_POLICY_SID_REQUIRED]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals.",
+        detailsMd: `
+      Currently, when granting permissions to service principals using grantPutEventsTo(), the operation silently fails
+      because service principals require resource policies with Statement IDs.
+
+      When this flag is enabled:
+      - Resource policies will be created with Statement IDs for service principals
+      - The operation will succeed as expected
+
+      When this flag is disabled:
+      - A warning will be emitted
+      - The grant operation will be dropped
+      - No permissions will be added
+
+      This fixes the issue where permissions were silently not being added for service principals.
+    `,
+        introducedIn: { v2: "2.186.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ASPECT_PRIORITIES_MUTATING]: {
+        type: 0 /* ApiDefault */,
+        summary: "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING.",
+        detailsMd: `
+      Custom Aspects you add have a priority of DEFAULT (500) if you don't
+      assign a more specific priority, which is higher than MUTATING (200). This
+      is relevant if a custom Aspect you add and an Aspect added by CDK try to
+      configure the same value.
+
+      If this flag is set to false (old behavior), Aspects added by CDK are also
+      added with a priority of DEFAULT; because their priorities are equal, the
+      Aspects that is closest to the target construct executes last (either
+      yours or the Aspect added by the CDK).
+
+      If this flag is set to true (recommended behavior), Aspects added by CDK are added
+      with a priority of MUTATING, and custom Aspects you add with DEFAULT
+      priority will always execute last and "win" the write. If you need Aspects
+      added by CDK to run after yours, your Aspect needs to have a priority of
+      MUTATING or lower.
+
+      This setting only applies to Aspects that were already being added for you
+      before version 2.172.0. Aspects introduced since that version will always
+      be added with a priority of MUTATING, independent of this feature flag.
+    `,
+        introducedIn: { v2: "2.189.1" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: `
+      To add mutating Aspects controlling construct values that can be overridden
+      by Aspects added by CDK, give them MUTATING priority:
+
+      \`\`\`
+      Aspects.of(stack).add(new MyCustomAspect(), {
+        priority: AspectPriority.MUTATING,
+      });
+      \`\`\`
+    `
+      },
+      [DYNAMODB_TABLE_RETAIN_TABLE_REPLICA]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, table replica will be default to the removal policy of source table unless specified otherwise.",
+        detailsMd: `
+      Currently, table replica will always be deleted when stack deletes regardless of source table's deletion policy.
+      When enabled, table replica will be default to the removal policy of source table unless specified otherwise.
+    `,
+        introducedIn: { v2: "2.187.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [LOG_USER_POOL_CLIENT_SECRET_VALUE]: {
+        type: 0 /* ApiDefault */,
+        summary: "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs.",
+        detailsMd: `
+      When this feature flag is enabled, the SDK API call response to describe user pool client values will be logged in the custom
+      resource lambda function logs.
+
+      When this feature flag is disabled, the SDK API call response to describe user pool client values will not be logged in the custom
+      resource lambda function logs.
+    `,
+        introducedIn: { v2: "2.187.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: false,
+        compatibilityWithOldBehaviorMd: "Enable the feature flag to keep the old behavior and log the client secret values"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [PIPELINE_REDUCE_CROSS_ACCOUNT_ACTION_ROLE_TRUST_SCOPE]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, scopes down the trust policy for the cross-account action role",
+        detailsMd: `
+        When this feature flag is enabled, the trust policy of the cross-account action role will be scoped to the pipeline role.
+        If you are providing a custom role, you will need to ensure 'roleName' is specified or set to PhysicalName.GENERATE_IF_NEEDED.
+        When this feature flag is disabled, it will keep the root account principal in the trust policy.
+      `,
+        introducedIn: { v2: "2.189.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to add the root account principal back"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_USE_DISTRIBUTED_MAP_RESULT_WRITER_V2]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter",
+        detailsMd: `
+      When this feature flag is enabled, the resultWriterV2 property is used instead of resultWriter in DistributedMap class.
+      resultWriterV2 uses ResultWriterV2 class in StepFunctions ASL and can have either Bucket/Prefix or WriterConfig or both.
+    `,
+        introducedIn: { v2: "2.188.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag and set resultWriter in DistributedMap"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_TRUST_KEY_POLICY_FOR_SNS_SUBSCRIPTIONS]: {
+        type: 1 /* BugFix */,
+        summary: "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions.",
+        detailsMd: `
+      When this feature flag is enabled, a S3 trust policy will be added to the KMS key resource policy for encrypted SNS subscriptions.
+          `,
+        introducedIn: { v2: "2.195.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EC2_REQUIRE_PRIVATE_SUBNETS_FOR_EGRESSONLYINTERNETGATEWAY]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC.",
+        detailsMd: `
+      When this feature flag is enabled, EgressOnlyGateway resource will not be created when you create a vpc with only public subnets.
+          `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: true
+      },
+      /// ///////////////////////////////////////////////////////////////////
+      [USE_RESOURCEID_FOR_VPCV2_MIGRATION]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, use resource IDs for VPC V2 migration",
+        detailsMd: `
+        When this feature flag is enabled, the VPC V2 migration will use resource IDs instead of getAtt references
+        for migrating resources from VPC V1 to VPC V2. This helps ensure a smoother migration path between
+        the two versions.
+      `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: false,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to use getAtt references for VPC V2 migration"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [S3_PUBLIC_ACCESS_BLOCKED_BY_DEFAULT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined.",
+        detailsMd: `
+      When BlockPublicAccess is not set at all, s3's default behavior will be to set all options to true in aws console.
+      The previous behavior in cdk before this feature was; if only some of the BlockPublicAccessOptions were set (not all 4), then the ones undefined would default to false.
+      This is counter intuitive to the console behavior where the options would start in true state and a user would uncheck the boxes as needed.
+      The new behavior from this feature will allow a user, for example, to set 1 of the 4 BlockPublicAccessOpsions to false, and on deployment the other 3 will remain true.
+    `,
+        introducedIn: { v2: "2.196.0" },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [USE_CDK_MANAGED_LAMBDA_LOGGROUP]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, CDK creates and manages loggroup for the lambda function",
+        detailsMd: `
+        When this feature flag is enabled, CDK will create a loggroup for lambda function with default properties
+        which supports CDK features Tag propagation, Property Injectors, Aspects
+        if the cdk app doesnt pass a 'logRetention' or 'logGroup' explicitly.
+        LogGroups created via 'logRetention' do not support Tag propagation, Property Injectors, Aspects.
+        LogGroups created via 'logGroup' created in CDK support Tag propagation, Property Injectors, Aspects.
+
+        When this feature flag is disabled, a loggroup is created by Lambda service on first invocation
+        of the function (existing behavior).
+        LogGroups created in this way do not support Tag propagation, Property Injectors, Aspects.
+
+        DO NOT ENABLE: If you have an existing app defining a lambda function and
+        have not supplied a logGroup or logRetention prop and your lambda function has
+        executed at least once, the logGroup has been already created with the same name
+        so your deployment will start failing.
+        Refer aws-lambda/README.md for more details on Customizing Log Group creation.
+      `,
+        introducedIn: { v2: "2.200.0" },
+        unconfiguredBehavesLike: { v2: false },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to let lambda service create logGroup or specify logGroup or logRetention"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [NETWORK_LOAD_BALANCER_WITH_SECURITY_GROUP_BY_DEFAULT]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, Network Load Balancer will be created with a security group by default.",
+        detailsMd: `
+      When this feature flag is enabled, Network Load Balancer will be created with a security group by default.
+    `,
+        introducedIn: { v2: "2.222.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable the feature flag to create Network Load Balancer without a security group by default."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [STEPFUNCTIONS_TASKS_HTTPINVOKE_DYNAMIC_JSONPATH_ENDPOINT]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
+        detailsMd: `
+      When this feature flag is enabled, the JSONPath apiEndpoint value will be resolved dynamically at runtime, while slightly increasing the size of the state machine definition.
+      When disabled, the JSONPath apiEndpoint property will only support a static string value.
+    `,
+        introducedIn: { v2: "2.221.0" },
+        unconfiguredBehavesLike: { v2: true },
+        recommendedValue: true
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_PATTERNS_UNIQUE_TARGET_GROUP_ID]: {
+        type: 1 /* BugFix */,
+        summary: "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement",
+        detailsMd: `
+      When this feature flag is enabled, ECS patterns will generate unique target group IDs that include
+      both the load balancer type (public/private) and load balancer name. This prevents CloudFormation
+      conflicts when switching between public and private load balancers or when changing load balancer names.
+
+      Without this flag, target groups use generic IDs like 'ECS' which can cause conflicts when the
+      underlying load balancer is replaced due to changes in internetFacing or loadBalancerName properties.
+
+      This is a breaking change as it will cause target group replacement when the flag is enabled.
+    `,
+        introducedIn: { v2: "2.221.0" },
+        recommendedValue: true
+      },
+      [ROUTE53_PATTERNS_USE_DISTRIBUTION]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use the `Distribution` resource instead of `CloudFrontWebDistribution`",
+        detailsMd: `
+      Enable this feature flag to use the new \`Distribution\` resource instead
+      of the deprecated \`CloudFrontWebDistribution\` construct.
+      `,
+        introducedIn: { v2: "2.233.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Define a `CloudFrontWebDistribution` explicitly"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_FUNCTION_DEFAULT_RUNTIME_V2_0]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions",
+        detailsMd: `
+      When enabled, CloudFront Functions will use cloudfront-js-2.0 runtime by default instead of cloudfront-js-1.0.
+      The runtime can still be configured explicitly using the \`runtime\` property.
+
+      If \`keyValueStore\` is specified, the runtime will always be cloudfront-js-2.0 regardless of this flag.`,
+        introducedIn: { v2: "2.245.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Set `runtime: FunctionRuntime.JS_1_0` explicitly to use the v1.0 runtime."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ELB_USE_POST_QUANTUM_TLS_POLICY]: {
+        type: 0 /* ApiDefault */,
+        summary: "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default",
+        detailsMd: `
+      When this feature flag is enabled, HTTPS and TLS listeners that do not have an explicit
+      \`sslPolicy\` will use the post-quantum cryptography policy
+      \`ELBSecurityPolicy-TLS13-1-2-PQ-2025-09\` by default.
+
+      This policy uses the non-restricted variant (without -Res-) to maintain AES-CBC cipher support
+      for TLS 1.2 clients, ensuring nearly 100% backward compatibility with the previous CDK default.
+      Post-quantum policies provide protection against "Harvest Now, Decrypt Later" attacks using
+      hybrid ML-KEM key exchange.
+
+      When disabled (default), no explicit SSL policy is set, preserving the existing CDK behavior
+      where \`RECOMMENDED_TLS\` (\`ELBSecurityPolicy-TLS13-1-2-2021-06\`) is used.
+    `,
+        introducedIn: { v2: "2.245.0" },
+        recommendedValue: true,
+        compatibilityWithOldBehaviorMd: "Disable this feature flag to preserve existing behavior where no explicit SSL policy is set."
+      },
+      [AUTOMATIC_L1_TRAITS]: {
+        type: 0 /* ApiDefault */,
+        summary: "Automatically use the default L1 traits for L1 constructs`",
+        detailsMd: `
+      When enabled, the construct library will apply default L1 traits for types that
+      have no traits defined yet. Traits regulate behaviors such as how to create
+      resource policies, or how to find an encryption key for a given L1 construct.
+      `,
+        introducedIn: { v2: "2.239.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: true },
+        compatibilityWithOldBehaviorMd: "Register traits explicitly for each resource type"
+      },
+      //////////////////////////////////////////////////////////////////////
+      [BATCH_DEFAULT_AL2023]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2",
+        detailsMd: `
+      When enabled, EC2 Batch compute environments (both ECS and EKS) that do not specify an \`imageType\`
+      will default to \`ECS_AL2023\` or \`EKS_AL2023\` instead of the deprecated \`ECS_AL2\` or \`EKS_AL2\`
+      (Amazon Linux 2, reaching EOL June 2026 for ECS; already EOL for EKS).
+
+      For EKS compute environments with a launch template, \`userdataType\` will automatically be set
+      to \`EKS_NODEADM\` when an AL2023 image type is used, as required by the AWS Batch API.
+
+      When disabled, the default \`imageType\` remains \`ECS_AL2\` / \`EKS_AL2\` for backward compatibility.`,
+        introducedIn: { v2: "2.249.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: `Explicitly set \`imageType\` to \`ECS_AL2\` or \`EKS_AL2\` in your compute environment images configuration.
+
+**Warning**: Enabling this flag on existing stacks may cause compute environment replacement, which terminates running jobs. To migrate safely, first pin existing environments to their current imageType explicitly, then enable the flag.`
+      },
+      //////////////////////////////////////////////////////////////////////
+      [EKS_DEFAULT_AL2023]: {
+        type: 0 /* ApiDefault */,
+        summary: "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2",
+        detailsMd: `
+      When enabled, EKS managed node groups that do not specify an \`amiType\` will default to
+      AL2023 AMI types (AL2023_x86_64_STANDARD, AL2023_ARM_64_STANDARD) instead of the deprecated
+      AL2 types (AL2_x86_64, AL2_ARM_64).
+
+      This only affects non-GPU instance types. GPU instances continue to default to AL2_x86_64_GPU
+      because AL2023 splits GPU support into separate NVIDIA and Neuron AMI variants.
+
+      Amazon Linux 2 reached end of support on November 26, 2025. AL2023 is the AWS-recommended default.
+
+      When disabled, the default AMI types remain AL2 for backward compatibility.`,
+        introducedIn: { v2: "2.259.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: `Explicitly set \`amiType\` to the desired AL2 type (e.g., \`NodegroupAmiType.AL2_X86_64\`) in your nodegroup configuration.
+
+**Warning**: Enabling this flag on existing stacks will cause node group replacement, which terminates running pods. To migrate safely, first pin existing node groups to their current amiType explicitly, then enable the flag for new node groups.`
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ANNOTATIONS_IN_VALIDATION_REPORT]: {
+        type: 2 /* VisibleContext */,
+        summary: "Include construct annotations (warnings and errors) in the policy validation report",
+        detailsMd: `
+      When enabled, construct annotations added via \`Annotations.of()\` or \`Validations.of()\`
+      are collected post-synthesis and included in the policy validation report alongside
+      plugin violations. Annotations appear under a "Construct Annotations" source entry.
+
+      When disabled, annotations are only displayed through the CLI's standard metadata
+      output (e.g. \`[Warning at /path] message\`) and do not appear in the validation report.
+
+      Note: enabling this flag may cause annotations to appear twice \u2014 once in the CLI's
+      standard output and once in the validation report \u2014 until the CLI is updated to
+      consolidate both displays.`,
+        introducedIn: { v2: "2.253.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [DEFAULT_CROSS_STACK_REFERENCES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Controls whether cross-stack references are strong, weak, or both",
+        detailsMd: `
+      Controls the default type of cross-stack references. Accepted values are
+      \`"strong"\`, \`"weak"\`, and \`"both"\`.
+
+      The flag is read from the **consumer** stack's context, not the producer's.
+
+      - \`"strong"\` (default): Uses ExportWriter/ExportReader custom resources that
+        write values to SSM Parameters in the consuming region. This prevents the
+        producing stack from being deleted while consumers exist.
+      - \`"weak"\`: Uses Fn::GetStackOutput to read an output directly from the
+        producing stack. Simpler (no extra infrastructure), but the producing stack
+        can be deleted independently of consumers.
+      - \`"both"\`: A transitional state for migrating from strong to weak. The producer
+        keeps the ExportWriter (continues writing to SSM) and also adds an Output. The
+        consumer switches to Fn::GetStackOutput. This allows removing the ExportReader
+        without breaking anything.
+
+      **Migration from strong to weak**: set to \`"both"\` and deploy, then set to
+      \`"weak"\` and deploy again.
+
+      **Migration from weak to strong**: set directly to \`"strong"\` (single deployment).`,
+        introducedIn: { v2: "2.254.0" },
+        recommendedValue: "weak",
+        unconfiguredBehavesLike: { v2: "strong" }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [VALIDATE_AGAINST_DEFAULT_RULES]: {
+        type: 2 /* VisibleContext */,
+        summary: "Treat CloudFormation Validate findings as errors",
+        detailsMd: `
+      The CDK always validates synthesized templates against a default set of CloudFormation
+      rules during synthesis. These rules include schema validation, best-practice linting,
+      and common misconfiguration detection.
+
+      When this flag is explicitly set to \`true\`, violations are treated as errors and will
+      fail synthesis. When unconfigured, violations are reported as warnings only.`,
+        introducedIn: { v2: "2.262.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false }
+      },
+      //////////////////////////////////////////////////////////////////////
+      [ECS_REMOVE_EMPTY_LOAD_BALANCERS]: {
+        type: 1 /* BugFix */,
+        summary: "Render an empty `LoadBalancers` array on an ECS service that has no target groups",
+        detailsMd: `
+      CloudFormation distinguishes between an absent \`LoadBalancers\` property, which leaves the live
+      service configuration untouched, and an empty array, which removes the existing load balancer
+      registrations. Without this flag the CDK omits the property when a service has no target groups,
+      so removing the last target group from a service never reaches the deployed service: it keeps
+      serving traffic from the target groups it was registered in, and a later deployment can fail with
+      \`The target group with targetGroupArn ... does not have an associated load balancer\`.
+
+      When this flag is enabled, a service with no target groups renders \`LoadBalancers: []\` and
+      CloudFormation removes the registrations.
+
+      Enabling this adds \`LoadBalancers: []\` to every ECS service that has no target groups, including
+      services that never had any. Amazon ECS starts a new deployment when a load balancer configuration
+      is added, updated or removed, so expect a one-time deployment of those services.`,
+        introducedIn: { v2: "2.269.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Set this flag to `false` to keep omitting the property, and remove the registrations with `aws ecs update-service --load-balancers '[]'` instead."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [CLOUDFRONT_DEFAULT_VIEWER_PROTOCOL_POLICY_REDIRECT_TO_HTTPS]: {
+        type: 0 /* ApiDefault */,
+        summary: "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS",
+        detailsMd: `
+      When enabled, cache behaviors on a \`Distribution\` that do not specify an explicit
+      \`viewerProtocolPolicy\` default to \`ViewerProtocolPolicy.REDIRECT_TO_HTTPS\` instead of
+      \`ViewerProtocolPolicy.ALLOW_ALL\`, so viewers are redirected from HTTP to HTTPS rather
+      than being served over plaintext HTTP.
+
+      This applies to the default behavior, to \`additionalBehaviors\`, and to behaviors added
+      later with \`addBehavior()\`. An explicitly specified \`viewerProtocolPolicy\` always wins,
+      regardless of this flag.
+
+      Note that \`REDIRECT_TO_HTTPS\` answers an HTTP request with an HTTP 301 redirect, which the
+      viewer then follows with a second request. That additional request is billable.`,
+        introducedIn: { v2: "2.273.0" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Set `viewerProtocolPolicy: ViewerProtocolPolicy.ALLOW_ALL` explicitly on each behavior to keep the old default."
+      },
+      //////////////////////////////////////////////////////////////////////
+      [APIGATEWAY_LOG_GROUP_DESTINATION_ARN_WITHOUT_WILDCARD]: {
+        type: 1 /* BugFix */,
+        summary: "Render the API Gateway access log destination ARN without the trailing `:*`",
+        detailsMd: `
+      API Gateway stores the access log destination ARN without the trailing \`:*\` that
+      \`LogGroup.logGroupArn\` carries. When the CDK renders the log group \`Arn\` attribute,
+      CloudFormation drift detection reports the stage as \`MODIFIED\` on every run, even
+      though the access logging configuration has not changed.
+
+      When this flag is enabled, \`LogGroupLogDestination\` rebuilds the ARN from the log
+      group name, so the synthesized template matches the value stored by the service and
+      drift detection reports the stage as \`IN_SYNC\`.
+
+      When disabled, the destination ARN keeps using the log group \`Arn\` attribute.
+    `,
+        introducedIn: { v2: "V2NEXT" },
+        recommendedValue: true,
+        unconfiguredBehavesLike: { v2: false },
+        compatibilityWithOldBehaviorMd: "Disable this flag to keep using the log group `Arn` attribute as the destination ARN."
+      }
+    };
+    CURRENT_MV = "v2";
+    CURRENT_VERSION_EXPIRED_FLAGS = Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] === void 0).map(([name, _]) => name).sort();
+    CURRENTLY_RECOMMENDED_FLAGS = Object.fromEntries(
+      Object.entries(FLAGS).filter(([_, flag]) => flag.introducedIn[CURRENT_MV] !== void 0).filter(([_, flag]) => flag.recommendedValue !== flag.unconfiguredBehavesLike?.[CURRENT_MV]).map(([name, flag]) => [name, flag.recommendedValue])
+    );
+    CURRENT_VERSION_FLAG_DEFAULTS = Object.fromEntries(Object.entries(FLAGS).filter(([_, flag]) => flag.unconfiguredBehavesLike?.[CURRENT_MV] !== void 0).map(([name, flag]) => [name, flag.unconfiguredBehavesLike?.[CURRENT_MV]]));
+    FUTURE_FLAGS = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v === "boolean"));
+    NEW_PROJECT_DEFAULT_CONTEXT = Object.fromEntries(Object.entries(CURRENTLY_RECOMMENDED_FLAGS).filter(([_, v]) => typeof v !== "boolean"));
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/app.ts
+var PATH_METADATA_ENABLE_CONTEXT, ANALYTICS_REPORTING_ENABLED_CONTEXT, PERFORMANCE_REPORTING_ENABLED_CONTEXT, DISABLE_ASSET_STAGING_CONTEXT, DISABLE_METADATA_STACK_TRACE, DISABLE_LOGICAL_ID_METADATA, DISABLE_CREATION_STACK_TRACES, BUNDLING_STACKS;
+var init_app = __esm({
+  "../../aws-cdk-lib/cx-api/lib/app.ts"() {
+    "use strict";
+    PATH_METADATA_ENABLE_CONTEXT = "aws:cdk:enable-path-metadata";
+    ANALYTICS_REPORTING_ENABLED_CONTEXT = "aws:cdk:version-reporting";
+    PERFORMANCE_REPORTING_ENABLED_CONTEXT = "aws:cdk:performance-reporting";
+    DISABLE_ASSET_STAGING_CONTEXT = "aws:cdk:disable-asset-staging";
+    DISABLE_METADATA_STACK_TRACE = "aws:cdk:disable-stack-trace";
+    DISABLE_LOGICAL_ID_METADATA = "aws:cdk:disable-logicalId-metadata";
+    DISABLE_CREATION_STACK_TRACES = "aws:cdk:disable-creation-stack-traces";
+    BUNDLING_STACKS = "aws:cdk:bundling-stacks";
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/lib/index.ts
+var init_lib = __esm({
+  "../../aws-cdk-lib/cx-api/lib/index.ts"() {
+    "use strict";
+    init_legacy_moved();
+    init_cxapi();
+    init_features();
+    init_app();
+  }
+});
+
+// ../../aws-cdk-lib/cx-api/index.ts
+var init_cx_api = __esm({
+  "../../aws-cdk-lib/cx-api/index.ts"() {
+    "use strict";
+    init_lib();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/errors.ts
+function renderConstructRootPath(construct) {
+  const rootPath = [];
+  let cur = construct;
+  while (cur !== void 0) {
+    rootPath.push(cur);
+    cur = cur.node.scope;
+  }
+  rootPath.reverse();
+  const ret = new Array();
+  for (let i = 0; i < rootPath.length; i++) {
+    const constructId = rootPath[i].node.id || "<.>";
+    let suffix = "";
+    try {
+      const constructInfo = constructInfoFromConstruct(rootPath[i]);
+      suffix = ` (${constructInfo?.fqn})`;
+    } catch (_) {
+    }
+    const branch = " \u2514\u2500 ";
+    const indent = i > 0 ? " ".repeat(branch.length * (i - 1)) + branch : "";
+    ret.push(`    ${indent}${constructId}${suffix}`);
+  }
+  return ret.join("\n");
+}
+function maybeWriteErrorCode(errorCode) {
+  const file = process.env[ERRORFILE_ENV];
+  if (!file) {
+    return;
+  }
+  fs.writeFileSync(file, errorCode, "utf-8");
+}
+var fs, CONSTRUCT_ERROR_SYMBOL, VALIDATION_ERROR_SYMBOL, ASSUMPTION_ERROR_SYMBOL, EXECUTION_ERROR_SYMBOL, ConstructError, ValidationError, UnscopedValidationError, AssumptionError, ExecutionError;
+var init_errors = __esm({
+  "../../aws-cdk-lib/core/lib/errors.ts"() {
+    "use strict";
+    fs = __toESM(require("fs"));
+    init_runtime_info();
+    init_stack_trace();
+    init_cx_api();
+    CONSTRUCT_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError");
+    VALIDATION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ValidationError");
+    ASSUMPTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.AssumptionError");
+    EXECUTION_ERROR_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.ExecutionError");
+    ConstructError = class _ConstructError extends Error {
+      #time;
+      #constructPath;
+      #constructInfo;
+      /**
+       * The time the error was thrown.
+       */
+      get time() {
+        return this.#time;
+      }
+      /**
+       * The level. Always `'error'`.
+       */
+      get level() {
+        return "error";
+      }
+      /**
+       * The path of the construct this error is thrown from, if available.
+       */
+      get constructPath() {
+        return this.#constructPath;
+      }
+      /**
+       * Information on the construct this error is thrown from, if available.
+       */
+      get constructInfo() {
+        return this.#constructInfo;
+      }
+      constructor(msg, scope, name) {
+        super(msg);
+        const ctr = this.constructor;
+        Object.setPrototypeOf(this, _ConstructError.prototype);
+        Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL, { value: true });
+        this.name = name ?? ctr.name;
+        this.#time = (/* @__PURE__ */ new Date()).toISOString();
+        this.#constructPath = scope?.node.path;
+        if (scope) {
+          try {
+            this.#constructInfo = constructInfoFromConstruct(scope);
+          } catch (_) {
+          }
+        }
+        this.stack = `\xAB${this.name}\xBB ${msg}
+${enhancedStackTrace(ctr).join("\n")}`;
+        if (scope) {
+          this.stack += `
+Relates to construct:
+${renderConstructRootPath(scope)}`;
+        }
+        maybeWriteErrorCode(this.name);
+      }
+    };
+    ValidationError = class _ValidationError extends ConstructError {
+      get type() {
+        return "validation";
+      }
+      constructor(name, msg, scope) {
+        super(msg, scope, name);
+        Object.setPrototypeOf(this, _ValidationError.prototype);
+        Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    UnscopedValidationError = class _UnscopedValidationError extends ConstructError {
+      get type() {
+        return "validation";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _UnscopedValidationError.prototype);
+        Object.defineProperty(this, VALIDATION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    AssumptionError = class _AssumptionError extends ConstructError {
+      get type() {
+        return "assumption";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _AssumptionError.prototype);
+        Object.defineProperty(this, ASSUMPTION_ERROR_SYMBOL, { value: true });
+      }
+    };
+    ExecutionError = class _ExecutionError extends ConstructError {
+      get type() {
+        return "exec";
+      }
+      constructor(name, msg) {
+        super(msg, void 0, name);
+        Object.setPrototypeOf(this, _ExecutionError.prototype);
+        Object.defineProperty(this, EXECUTION_ERROR_SYMBOL, { value: true });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/aspect.ts
+function bumpAspectTreeRevision(construct) {
+  const root = construct.node.root;
+  const rev = root[TREE_REVISION_SYM] ?? 0;
+  root[TREE_REVISION_SYM] = rev + 1;
+}
+function _aspectTreeRevisionReader(construct) {
+  const root = construct.node.root;
+  return () => root[TREE_REVISION_SYM] ?? 0;
+}
+var ASPECTS_SYMBOL, AspectPriority, Aspects, AspectApplication, TREE_REVISION_SYM;
+var init_aspect = __esm({
+  "../../aws-cdk-lib/core/lib/aspect.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ASPECTS_SYMBOL = /* @__PURE__ */ Symbol.for("cdk-aspects");
+    AspectPriority = class {
+      /**
+       * Suggested priority for Aspects that mutate the construct tree.
+       */
+      static MUTATING = 200;
+      /**
+       * Suggested priority for Aspects that only read the construct tree.
+       */
+      static READONLY = 1e3;
+      /**
+       * Default priority for Aspects that are applied without a priority.
+       */
+      static DEFAULT = 500;
+    };
+    Aspects = class _Aspects {
+      /**
+       * Returns the `Aspects` object associated with a construct scope.
+       * @param scope The scope for which these aspects will apply.
+       */
+      static of(scope) {
+        let aspects = scope[ASPECTS_SYMBOL];
+        if (!aspects) {
+          aspects = new _Aspects(scope);
+          Object.defineProperty(scope, ASPECTS_SYMBOL, {
+            value: aspects,
+            configurable: false,
+            enumerable: false
+          });
+        }
+        return aspects;
+      }
+      _scope;
+      _appliedAspects;
+      constructor(scope) {
+        this._appliedAspects = [];
+        this._scope = scope;
+      }
+      /**
+       * Adds an aspect to apply this scope before synthesis.
+       * @param aspect The aspect to add.
+       * @param options Options to apply on this aspect.
+       */
+      add(aspect, options) {
+        const newApplication = new AspectApplication(this._scope, aspect, options?.priority ?? AspectPriority.DEFAULT);
+        if (this._appliedAspects.some((a) => a.aspect === newApplication.aspect && a.priority === newApplication.priority)) {
+          return;
+        }
+        this._appliedAspects.push(newApplication);
+        bumpAspectTreeRevision(this._scope);
+      }
+      /**
+       * The list of aspects which were directly applied on this scope.
+       */
+      get all() {
+        return this._appliedAspects.map((application) => application.aspect);
+      }
+      /**
+       * The list of aspects with priority which were directly applied on this scope.
+       *
+       * Also returns inherited Aspects of this node.
+       */
+      get applied() {
+        return [...this._appliedAspects];
+      }
+    };
+    AspectApplication = class {
+      /**
+       * The construct that the Aspect was applied to.
+       */
+      construct;
+      /**
+       * The Aspect that was applied.
+       */
+      aspect;
+      /**
+       * The priority value of this Aspect. Must be non-negative integer.
+       */
+      _priority;
+      /**
+       * Initializes AspectApplication object
+       */
+      constructor(construct, aspect, priority) {
+        this.construct = construct;
+        this.aspect = aspect;
+        this._priority = priority;
+      }
+      /**
+       * Gets the priority value.
+       */
+      get priority() {
+        return this._priority;
+      }
+      /**
+       * Sets the priority value.
+       */
+      set priority(priority) {
+        if (priority < 0) {
+          throw new ValidationError(lit`PriorityNonNegativeNumber`, "Priority must be a non-negative number", this.construct);
+        }
+        this._priority = priority;
+        bumpAspectTreeRevision(this.construct);
+      }
+    };
+    TREE_REVISION_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Aspects.treeRevision");
+  }
+});
+
+// ../../aws-cdk-lib/cloud-assembly-schema/index.ts
+var cloud_assembly_schema_exports = {};
+var init_cloud_assembly_schema = __esm({
+  "../../aws-cdk-lib/cloud-assembly-schema/index.ts"() {
+    "use strict";
+    __reExport(cloud_assembly_schema_exports, __toESM(require_lib2()));
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/core-construct-finders.ts
+function stackOf(construct) {
+  const cache = construct[MY_STACK_CACHE];
+  if (cache) {
+    return cache;
+  } else {
+    const value = _lookup(construct);
+    Object.defineProperty(construct, MY_STACK_CACHE, {
+      enumerable: false,
+      writable: false,
+      configurable: false,
+      value
+    });
+    return value;
+  }
+  function _lookup(c) {
+    if (STACK_TYPE.isMarked(c)) {
+      return c;
+    }
+    const _scope = c.node.scope;
+    if (STAGE_TYPE.isMarked(c) || !_scope) {
+      throw new ValidationError(lit`ShouldBeCreatedInStackScope`, `${construct.constructor?.name ?? "Construct"} at '${construct.node.path}' should be created in the scope of a Stack, but no Stack found`, c);
+    }
+    return _lookup(_scope);
+  }
+}
+function stageOf(construct) {
+  return construct.node.scopes.reverse().slice(1).find(STAGE_TYPE.isMarked.bind(STAGE_TYPE));
+}
+function appOf(construct) {
+  const root = construct.node.root;
+  return APP_TYPE.isMarked(root) ? root : void 0;
+}
+function isCfnResource(x) {
+  return x !== null && typeof x === "object" && x.cfnResourceType !== void 0;
+}
+var ConstructType, APP_TYPE, STACK_TYPE, STAGE_TYPE, NESTED_STACK_TYPE, MY_STACK_CACHE;
+var init_core_construct_finders = __esm({
+  "../../aws-cdk-lib/core/lib/private/core-construct-finders.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ConstructType = class {
+      constructor(sym) {
+        this.sym = sym;
+      }
+      sym;
+      mark(x) {
+        Object.defineProperty(x, this.sym, { value: true });
+      }
+      isMarked(x) {
+        return x !== null && typeof x === "object" && this.sym in x;
+      }
+    };
+    APP_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.App"));
+    STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack"));
+    STAGE_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.Stage"));
+    NESTED_STACK_TYPE = new ConstructType(/* @__PURE__ */ Symbol.for("@aws-cdk/core.NestedStack"));
+    MY_STACK_CACHE = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Stack.myStack");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/annotations.ts
+function removeWarningDeep(construct, id) {
+  const stack = [construct];
+  while (stack.length > 0) {
+    const next = stack.pop();
+    removeWarning(next, id);
+    stack.push(...next.node.children);
+  }
+}
+function removeWarning(construct, id) {
+  const meta = construct.node._metadata;
+  if (!meta) {
+    return;
+  }
+  let i = 0;
+  while (i < meta.length) {
+    const m = meta[i];
+    if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && m.data.includes(ackTag(id))) {
+      meta.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+}
+function removeInfoDeep(construct, id) {
+  const stack = [construct];
+  while (stack.length > 0) {
+    const next = stack.pop();
+    removeInfo(next, id);
+    stack.push(...next.node.children);
+  }
+}
+function removeInfo(construct, id) {
+  const meta = construct.node._metadata;
+  if (!meta) {
+    return;
+  }
+  let i = 0;
+  while (i < meta.length) {
+    const m = meta[i];
+    if (m.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO && m.data.includes(ackTag(id))) {
+      meta.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+}
+function ackTag(id) {
+  return `[ack: ${id}]`;
+}
+var Annotations, Acknowledgements;
+var init_annotations = __esm({
+  "../../aws-cdk-lib/core/lib/annotations.ts"() {
+    "use strict";
+    init_errors();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_core_construct_finders();
+    init_literal_string();
+    Annotations = class _Annotations {
+      constructor(scope) {
+        this.scope = scope;
+        const disableTrace = scope.node.tryGetContext(DISABLE_METADATA_STACK_TRACE) || process.env.CDK_DISABLE_STACK_TRACE;
+        this.stackTraces = !disableTrace;
+      }
+      scope;
+      /**
+       * Returns the annotations API for a construct scope.
+       * @param scope The scope
+       */
+      static of(scope) {
+        return new _Annotations(scope);
+      }
+      stackTraces;
+      /**
+       * Acknowledge a warning. When a warning is acknowledged for a scope
+       * all warnings that match the id will be ignored.
+       *
+       * The acknowledgement will apply to all child scopes
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).acknowledgeWarning('SomeWarningId', 'This warning can be ignored because...');
+       *
+       * @param id - the id of the warning message to acknowledge
+       * @param message optional message to explain the reason for acknowledgement
+       */
+      acknowledgeWarning(id, message) {
+        Acknowledgements.of(this.scope).add(this.scope, id);
+        void message;
+        removeWarningDeep(this.scope, id);
+      }
+      /**
+       * Adds an acknowledgeable warning metadata entry to this construct.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * If the warning is acknowledged using `acknowledgeWarning()`, it will not be shown by
+       * the CLI, and will not cause `--strict` mode to fail synthesis.
+       *
+       * Prefer using `Validations.of(scope).addWarning()` instead.
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).addWarningV2('my-library:Construct.someWarning', 'Some message explaining the warning');
+       *
+       * @param id the unique identifier for the warning. This can be used to acknowledge the warning
+       * @param message The warning message.
+       */
+      addWarningV2(id, message) {
+        if (!Acknowledgements.of(this.scope).has(this.scope, id)) {
+          this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, `${message} ${ackTag(id)}`);
+        }
+      }
+      /**
+       * Adds a warning metadata entry to this construct. Prefer using `Validations.of(scope).addWarning()`.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * Warnings added by this call cannot be acknowledged. This will block users from
+       * running in `--strict` mode until the deal with the warning, which makes it
+       * effectively not very different from `addError`. Prefer using `addWarningV2` instead.
+       *
+       * @param message The warning message.
+       */
+      addWarning(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN, message);
+      }
+      /**
+       * Acknowledge a info. When a info is acknowledged for a scope
+       * all infos that match the id will be ignored.
+       *
+       * The acknowledgement will apply to all child scopes
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).acknowledgeInfo('SomeInfoId', 'This info can be ignored because...');
+       *
+       * @param id - the id of the info message to acknowledge
+       * @param message optional message to explain the reason for acknowledgement
+       */
+      acknowledgeInfo(id, message) {
+        Acknowledgements.of(this.scope).add(this.scope, id);
+        void message;
+        removeInfoDeep(this.scope, id);
+      }
+      /**
+       * Adds an acknowledgeable info metadata entry to this construct.
+       *
+       * The CLI will display the info when an app is synthesized.
+       *
+       * If the info is acknowledged using `acknowledgeInfo()`, it will not be shown by the CLI.
+       *
+       * @example
+       * declare const myConstruct: Construct;
+       * Annotations.of(myConstruct).addInfoV2('my-library:Construct.someInfo', 'Some message explaining the info');
+       *
+       * @param id the unique identifier for the info. This can be used to acknowledge the info
+       * @param message The info message.
+       */
+      addInfoV2(id, message) {
+        if (!Acknowledgements.of(this.scope).has(this.scope, id)) {
+          this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, `${message} ${ackTag(id)}`);
+        }
+      }
+      /**
+       * Adds an info metadata entry to this construct.
+       *
+       * The CLI will display the info message when apps are synthesized.
+       *
+       * @param message The info message.
+       */
+      addInfo(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO, message);
+      }
+      /**
+       * Adds an { "error":  } metadata entry to this construct.
+       * The toolkit will fail deployment of any stack that has errors reported against it.
+       * Prefer using `Validations.of(scope).addError()` instead.
+       * @param message The error message.
+       */
+      addError(message) {
+        this.addMessage(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR, message);
+      }
+      /**
+       * Add an error annotation to this construct, along with a tracking ID
+       *
+       * The toolkit will fail deployment of any stack that has errors reported against it.
+       *
+       * The error code will be tracked by telemetry; this method should only be used
+       * by CDK source code.
+       *
+       * @param id The error ID.
+       * @param message The error message.
+       * @internal
+       */
+      _addTrackableError(id, message) {
+        this.addError(message);
+        const type = "aws:cdk:error-code";
+        const isNew = !this.scope.node.metadata.find((x) => x.type === type && x.data === id);
+        if (isNew) {
+          this.scope.node.addMetadata(type, id);
+        }
+      }
+      /**
+       * Adds a deprecation warning for a specific API.
+       *
+       * Deprecations will be added only once per construct as a warning and will be
+       * deduplicated based on the `api`.
+       *
+       * If the environment variable `CDK_BLOCK_DEPRECATIONS` is set, this method
+       * will throw an error instead with the deprecation message.
+       *
+       * @param api The API being deprecated in the format `module.Class.property`
+       * (e.g. `@aws-cdk/core.Construct.node`).
+       * @param message The deprecation message to display, with information about
+       * alternatives.
+       */
+      addDeprecation(api, message) {
+        const text = `The API ${api} is deprecated: ${message}. This API will be removed in the next major release`;
+        if (process.env.CDK_BLOCK_DEPRECATIONS) {
+          throw new UnscopedValidationError(lit`ValidationError`, `${this.scope.node.path}: ${text}`);
+        }
+        this.addWarningV2(`Deprecated:${api}`, text);
+      }
+      /**
+       * Adds a message metadata entry to the construct node, to be displayed by the CDK CLI.
+       *
+       * Records the message once per construct.
+       * @param level The message level
+       * @param message The message itself
+       */
+      addMessage(level, message) {
+        const isNew = !this.scope.node.metadata.find((x) => x.data === message);
+        if (isNew) {
+          let normalizedMessage = typeof message === "string" ? message : JSON.stringify(message);
+          this.scope.node.addMetadata(level, normalizedMessage, { stackTrace: this.stackTraces });
+        }
+      }
+    };
+    Acknowledgements = class _Acknowledgements {
+      static of(scope) {
+        const app = appOf(scope);
+        if (!app) {
+          return new _Acknowledgements();
+        }
+        const existing = app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM];
+        if (existing) {
+          return existing;
+        }
+        const fresh = new _Acknowledgements();
+        app[_Acknowledgements.ACKNOWLEDGEMENTS_SYM] = fresh;
+        return fresh;
+      }
+      static ACKNOWLEDGEMENTS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Acknowledgements");
+      acks = /* @__PURE__ */ new Map();
+      constructor() {
+      }
+      add(node, ack) {
+        const nodePath = this.nodePath(node);
+        let arr = this.acks.get(nodePath);
+        if (!arr) {
+          arr = /* @__PURE__ */ new Set();
+          this.acks.set(nodePath, arr);
+        }
+        arr.add(ack);
+      }
+      has(node, ack) {
+        for (const candidate of this.searchPaths(this.nodePath(node))) {
+          if (this.acks.get(candidate)?.has(ack)) {
+            return true;
+          }
+        }
+        return false;
+      }
+      nodePath(node) {
+        return (typeof node === "string" ? node : node.node.path).replace(/^\//, "");
+      }
+      /**
+       * Given 'a/b/c', return ['a/b/c', 'a/b', 'a']
+       */
+      searchPaths(path23) {
+        const ret = new Array();
+        let start = 0;
+        while (start < path23.length) {
+          let i = path23.indexOf("/", start);
+          if (i !== -1) {
+            ret.push(path23.substring(0, i));
+            start = i + 1;
+          } else {
+            start = path23.length;
+          }
+        }
+        ret.push(path23);
+        return ret.reverse();
+      }
+    };
+  }
+});
+
+// ../../../node_modules/constructs/lib/dependency.js
+var require_dependency = __commonJS({
+  "../../../node_modules/constructs/lib/dependency.js"(exports2) {
+    "use strict";
+    var _a7;
+    var _b;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.Dependable = exports2.DependencyGroup = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var DependencyGroup = class {
+      constructor(...deps) {
+        this._deps = new Array();
+        const self2 = this;
+        Dependable2.implement(this, {
+          get dependencyRoots() {
+            const result = new Array();
+            for (const d of self2._deps) {
+              result.push(...Dependable2.of(d).dependencyRoots);
+            }
+            return result;
+          }
+        });
+        this.add(...deps);
+      }
+      /**
+       * Add a construct to the dependency roots
+       */
+      add(...scopes) {
+        this._deps.push(...scopes);
+      }
+    };
+    exports2.DependencyGroup = DependencyGroup;
+    _a7 = JSII_RTTI_SYMBOL_1;
+    DependencyGroup[_a7] = { fqn: "constructs.DependencyGroup", version: "10.6.0" };
+    var DEPENDABLE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.DependableTrait");
+    var Dependable2 = class {
+      /**
+       * Turn any object into an IDependable.
+       */
+      static implement(instance, trait) {
+        instance[DEPENDABLE_SYMBOL] = trait;
+      }
+      /**
+       * Return the matching Dependable for the given class instance.
+       */
+      static of(instance) {
+        const ret = instance[DEPENDABLE_SYMBOL];
+        if (!ret) {
+          throw new Error(`${instance} does not implement IDependable. Use "Dependable.implement()" to implement`);
+        }
+        return ret;
+      }
+      /**
+       * Return the matching Dependable for the given class instance.
+       * @deprecated use `of`
+       */
+      static get(instance) {
+        return this.of(instance);
+      }
+    };
+    exports2.Dependable = Dependable2;
+    _b = JSII_RTTI_SYMBOL_1;
+    Dependable2[_b] = { fqn: "constructs.Dependable", version: "10.6.0" };
+  }
+});
+
+// ../../../node_modules/constructs/lib/private/stack-trace.js
+var require_stack_trace = __commonJS({
+  "../../../node_modules/constructs/lib/private/stack-trace.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.captureStackTrace = captureStackTrace2;
+    function captureStackTrace2(below) {
+      below = below || captureStackTrace2;
+      const object = { stack: "" };
+      const previousLimit = Error.stackTraceLimit;
+      try {
+        Error.stackTraceLimit = Number.MAX_SAFE_INTEGER;
+        Error.captureStackTrace(object, below);
+      } finally {
+        Error.stackTraceLimit = previousLimit;
+      }
+      if (!object.stack) {
+        return [];
+      }
+      return object.stack.split("\n").slice(1).map((s) => s.replace(/^\s*at\s+/, ""));
+    }
+  }
+});
+
+// ../../../node_modules/constructs/lib/private/uniqueid.js
+var require_uniqueid = __commonJS({
+  "../../../node_modules/constructs/lib/private/uniqueid.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.addressOf = addressOf;
+    var crypto13 = require("crypto");
+    var HIDDEN_ID3 = "Default";
+    function addressOf(components) {
+      const hash = crypto13.createHash("sha1");
+      for (const c of components) {
+        if (c === HIDDEN_ID3) {
+          continue;
+        }
+        hash.update(c);
+        hash.update("\n");
+      }
+      return "c8" + hash.digest("hex");
+    }
+  }
+});
+
+// ../../../node_modules/constructs/lib/construct.js
+var require_construct = __commonJS({
+  "../../../node_modules/constructs/lib/construct.js"(exports2) {
+    "use strict";
+    var _a7;
+    var _b;
+    var _c;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.RootConstruct = exports2.ConstructOrder = exports2.Construct = exports2.Node = void 0;
+    var JSII_RTTI_SYMBOL_1 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+    var dependency_1 = require_dependency();
+    var stack_trace_1 = require_stack_trace();
+    var uniqueid_1 = require_uniqueid();
+    var CONSTRUCT_SYM = /* @__PURE__ */ Symbol.for("constructs.Construct");
+    var Node11 = class _Node {
+      /**
+       * Returns the node associated with a construct.
+       * @param construct the construct
+       *
+       * @deprecated use `construct.node` instead
+       */
+      static of(construct) {
+        return construct.node;
+      }
+      constructor(host, scope, id) {
+        this.host = host;
+        this._locked = false;
+        id = id ?? "";
+        this.id = sanitizeId(id);
+        this.scope = scope;
+        if (scope && !this.id) {
+          throw new Error("Only root constructs may have an empty ID");
+        }
+        scope?.node.addChild(host, this.id);
+      }
+      /**
+       * The full, absolute path of this construct in the tree.
+       *
+       * Components are separated by '/'.
+       */
+      get path() {
+        const components = [];
+        for (const scope of this.scopes) {
+          if (scope.node.id) {
+            components.push(scope.node.id);
+          }
+        }
+        return components.join(_Node.PATH_SEP);
+      }
+      /**
+       * Returns an opaque tree-unique address for this construct.
+       *
+       * Addresses are 42 characters hexadecimal strings. They begin with "c8"
+       * followed by 40 lowercase hexadecimal characters (0-9a-f).
+       *
+       * Addresses are calculated using a SHA-1 of the components of the construct
+       * path.
+       *
+       * To enable refactoring of construct trees, constructs with the ID `Default`
+       * will be excluded from the calculation. In those cases constructs in the
+       * same tree may have the same address.
+       *
+       * @example c83a2846e506bcc5f10682b564084bca2d275709ee
+       */
+      get addr() {
+        if (!this._addr) {
+          this._addr = (0, uniqueid_1.addressOf)(this.scopes.map((c) => c.node.id));
+        }
+        return this._addr;
+      }
+      /**
+       * Return a direct child by id, or undefined
+       *
+       * @param id Identifier of direct child
+       * @returns the child if found, or undefined
+       */
+      tryFindChild(id) {
+        return this._children?.[sanitizeId(id)];
+      }
+      /**
+       * Return a direct child by id
+       *
+       * Throws an error if the child is not found.
+       *
+       * @param id Identifier of direct child
+       * @returns Child with the given id.
+       */
+      findChild(id) {
+        const ret = this.tryFindChild(id);
+        if (!ret) {
+          throw new Error(`No child with id: '${id}'`);
+        }
+        return ret;
+      }
+      /**
+       * Returns the child construct that has the id `Default` or `Resource`.
+       * This is usually the construct that provides the bulk of the underlying functionality.
+       * Useful for modifications of the underlying construct that are not available at the higher levels.
+       *
+       * @throws if there is more than one child
+       * @returns a construct or undefined if there is no default child
+       */
+      get defaultChild() {
+        if (this._defaultChild !== void 0) {
+          return this._defaultChild;
+        }
+        const resourceChild = this.tryFindChild("Resource");
+        const defaultChild = this.tryFindChild("Default");
+        if (resourceChild && defaultChild) {
+          throw new Error(`Cannot determine default child for ${this.path}. There is both a child with id "Resource" and id "Default"`);
+        }
+        return defaultChild || resourceChild;
+      }
+      /**
+       * Override the defaultChild property.
+       *
+       * This should only be used in the cases where the correct
+       * default child is not named 'Resource' or 'Default' as it
+       * should be.
+       *
+       * If you set this to undefined, the default behavior of finding
+       * the child named 'Resource' or 'Default' will be used.
+       */
+      set defaultChild(value) {
+        this._defaultChild = value;
+      }
+      /**
+       * All direct children of this construct.
+       */
+      get children() {
+        return Object.values(this._children ?? {});
+      }
+      /**
+       * Return this construct and all of its children in the given order
+       */
+      findAll(order = ConstructOrder.PREORDER) {
+        const ret = new Array();
+        visit2(this.host);
+        return ret;
+        function visit2(c) {
+          if (order === ConstructOrder.PREORDER) {
+            ret.push(c);
+          }
+          for (const child of c.node.children) {
+            visit2(child);
+          }
+          if (order === ConstructOrder.POSTORDER) {
+            ret.push(c);
+          }
+        }
+      }
+      /**
+       * This can be used to set contextual values.
+       * Context must be set before any children are added, since children may consult context info during construction.
+       * If the key already exists, it will be overridden.
+       * @param key The context key
+       * @param value The context value
+       */
+      setContext(key, value) {
+        if (this.children.length > 0) {
+          const names = this.children.map((c) => c.node.id);
+          throw new Error("Cannot set context after children have been added: " + names.join(","));
+        }
+        if (!this._context) {
+          this._context = {};
+        }
+        this._context[key] = value;
+      }
+      /**
+       * Retrieves a value from tree context if present. Otherwise, would throw an error.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param key The context key
+       * @returns The context value or throws error if there is no context value for this key
+       */
+      getContext(key) {
+        const value = this._context?.[key];
+        if (value !== void 0) {
+          return value;
+        }
+        if (value === void 0 && !this.scope?.node) {
+          throw new Error(`No context value present for ${key} key`);
+        }
+        return this.scope && this.scope.node.getContext(key);
+      }
+      /**
+       * Retrieves the all context of a node from tree context.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param defaults Any keys to override the retrieved context
+       * @returns The context object or an empty object if there is discovered context
+       */
+      getAllContext(defaults) {
+        return this.scopes.reverse().reduce((a, s) => ({ ...s.node._context, ...a }), { ...defaults });
+      }
+      /**
+       * Retrieves a value from tree context.
+       *
+       * Context is usually initialized at the root, but can be overridden at any point in the tree.
+       *
+       * @param key The context key
+       * @returns The context value or `undefined` if there is no context value for this key.
+       */
+      tryGetContext(key) {
+        const value = this._context?.[key];
+        if (value !== void 0) {
+          return value;
+        }
+        return this.scope && this.scope.node.tryGetContext(key);
+      }
+      /**
+       * An immutable array of metadata objects associated with this construct.
+       * This can be used, for example, to implement support for deprecation notices, source mapping, etc.
+       */
+      get metadata() {
+        return [...this._metadata ?? []];
+      }
+      /**
+       * Adds a metadata entry to this construct.
+       * Entries are arbitrary values and will also include a stack trace to allow tracing back to
+       * the code location for when the entry was added. It can be used, for example, to include source
+       * mapping in CloudFormation templates to improve diagnostics.
+       * Note that construct metadata is not the same as CloudFormation resource metadata and is never written to the CloudFormation template.
+       * The metadata entries are written to the Cloud Assembly Manifest if the `treeMetadata` property is specified in the props of the App that contains this Construct.
+       *
+       * @param type a string denoting the type of metadata
+       * @param data the value of the metadata (can be a Token). If null/undefined, metadata will not be added.
+       * @param options options
+       */
+      addMetadata(type, data, options = {}) {
+        if (data == null) {
+          return;
+        }
+        const node = this;
+        function getTrace() {
+          if (options.stackTraceOverride && options.stackTraceOverride.length > 0) {
+            return options.stackTraceOverride;
+          }
+          const shouldTrace = options.stackTrace ?? false;
+          return shouldTrace ? (0, stack_trace_1.captureStackTrace)(options.traceFromFunction ?? node.addMetadata) : void 0;
+        }
+        if (!this._metadata) {
+          this._metadata = [];
+        }
+        this._metadata.push({ type, data, trace: getTrace() });
+      }
+      /**
+       * All parent scopes of this construct.
+       *
+       * @returns a list of parent scopes. The last element in the list will always
+       * be the current construct and the first element will be the root of the
+       * tree.
+       */
+      get scopes() {
+        const ret = new Array();
+        let curr = this.host;
+        while (curr) {
+          ret.unshift(curr);
+          curr = curr.node.scope;
+        }
+        return ret;
+      }
+      /**
+       * Returns the root of the construct tree.
+       * @returns The root of the construct tree.
+       */
+      get root() {
+        return this.scopes[0];
+      }
+      /**
+       * Returns true if this construct or the scopes in which it is defined are
+       * locked.
+       */
+      get locked() {
+        if (this._locked) {
+          return true;
+        }
+        if (this.scope && this.scope.node.locked) {
+          return true;
+        }
+        return false;
+      }
+      /**
+       * Add an ordering dependency on another construct.
+       *
+       * An `IDependable`
+       */
+      addDependency(...deps) {
+        if (!this._dependencies) {
+          this._dependencies = /* @__PURE__ */ new Set();
+        }
+        for (const d of deps) {
+          this._dependencies.add(d);
+        }
+      }
+      /**
+       * Return all dependencies registered on this node (non-recursive).
+       */
+      get dependencies() {
+        const result = new Array();
+        if (this._dependencies) {
+          for (const dep of this._dependencies) {
+            for (const root of dependency_1.Dependable.of(dep).dependencyRoots) {
+              result.push(root);
+            }
+          }
+        }
+        return result;
+      }
+      /**
+       * Remove the child with the given name, if present.
+       *
+       * @returns Whether a child with the given name was deleted.
+       */
+      tryRemoveChild(childName) {
+        if (!this._children || !(childName in this._children)) {
+          return false;
+        }
+        delete this._children[childName];
+        return true;
+      }
+      /**
+       * Adds a validation to this construct.
+       *
+       * When `node.validate()` is called, the `validate()` method will be called on
+       * all validations and all errors will be returned.
+       *
+       * @param validation The validation object
+       */
+      addValidation(validation) {
+        if (!this._validations) {
+          this._validations = [];
+        }
+        this._validations.push(validation);
+      }
+      /**
+       * Validates this construct.
+       *
+       * Invokes the `validate()` method on all validations added through
+       * `addValidation()`.
+       *
+       * @returns an array of validation error messages associated with this
+       * construct.
+       */
+      validate() {
+        return (this._validations ?? []).flatMap((v) => v.validate());
+      }
+      /**
+       * Locks this construct from allowing more children to be added. After this
+       * call, no more children can be added to this construct or to any children.
+       */
+      lock() {
+        this._locked = true;
+      }
+      /**
+       * Applies one or more mixins to this construct.
+       *
+       * Mixins are applied in order. The list of constructs is captured at the
+       * start of the call, so constructs added by a mixin will not be visited.
+       * Use multiple `with()` calls if subsequent mixins should apply to added
+       * constructs.
+       *
+       * @param mixins The mixins to apply
+       * @returns This construct for chaining
+       */
+      with(...mixins) {
+        const allConstructs = this.findAll();
+        for (const mixin of mixins) {
+          for (const construct of allConstructs) {
+            if (mixin.supports(construct)) {
+              mixin.applyTo(construct);
+            }
+          }
+        }
+        return this.host;
+      }
+      /**
+       * Adds a child construct to this node.
+       *
+       * @param child The child construct
+       * @param childName The type name of the child construct.
+       * @returns The resolved path part name of the child
+       */
+      addChild(child, childName) {
+        if (this.locked) {
+          if (!this.path) {
+            throw new Error("Cannot add children during synthesis");
+          }
+          throw new Error(`Cannot add children to "${this.path}" during synthesis`);
+        }
+        if (!this._children) {
+          this._children = {};
+        }
+        if (this._children[childName]) {
+          const name = this.id ?? "";
+          const typeName = this.host.constructor.name;
+          throw new Error(`There is already a Construct with name '${childName}' in ${typeName}${name.length > 0 ? " [" + name + "]" : ""}`);
+        }
+        this._children[childName] = child;
+      }
+    };
+    exports2.Node = Node11;
+    _a7 = JSII_RTTI_SYMBOL_1;
+    Node11[_a7] = { fqn: "constructs.Node", version: "10.6.0" };
+    Node11.PATH_SEP = "/";
+    var Construct19 = class {
+      /**
+       * Checks if `x` is a construct.
+       *
+       * Use this method instead of `instanceof` to properly detect `Construct`
+       * instances, even when the construct library is symlinked.
+       *
+       * Explanation: in JavaScript, multiple copies of the `constructs` library on
+       * disk are seen as independent, completely different libraries. As a
+       * consequence, the class `Construct` in each copy of the `constructs` library
+       * is seen as a different class, and an instance of one class will not test as
+       * `instanceof` the other class. `npm install` will not create installations
+       * like this, but users may manually symlink construct libraries together or
+       * use a monorepo tool: in those cases, multiple copies of the `constructs`
+       * library can be accidentally installed, and `instanceof` will behave
+       * unpredictably. It is safest to avoid using `instanceof`, and using
+       * this type-testing method instead.
+       *
+       * @returns true if `x` is an object created from a class which extends `Construct`.
+       * @param x Any object
+       */
+      static isConstruct(x) {
+        return x && typeof x === "object" && x[CONSTRUCT_SYM];
+      }
+      /**
+       * Creates a new construct node.
+       *
+       * @param scope The scope in which to define this construct
+       * @param id The scoped construct ID. Must be unique amongst siblings. If
+       * the ID includes a path separator (`/`), then it will be replaced by double
+       * dash `--`.
+       */
+      constructor(scope, id) {
+        this.node = new Node11(this, scope, id);
+        dependency_1.Dependable.implement(this, {
+          dependencyRoots: [this]
+        });
+      }
+      /**
+       * Applies one or more mixins to this construct.
+       *
+       * Mixins are applied in order. The list of constructs is captured at the
+       * start of the call, so constructs added by a mixin will not be visited.
+       * Use multiple `with()` calls if subsequent mixins should apply to added
+       * constructs.
+       *
+       * @param mixins The mixins to apply
+       * @returns This construct for chaining
+       */
+      with(...mixins) {
+        return this.node.with(...mixins);
+      }
+      /**
+       * Returns a string representation of this construct.
+       */
+      toString() {
+        return this.node.path || "";
+      }
+    };
+    exports2.Construct = Construct19;
+    _b = JSII_RTTI_SYMBOL_1;
+    Construct19[_b] = { fqn: "constructs.Construct", version: "10.6.0" };
+    var ConstructOrder;
+    (function(ConstructOrder2) {
+      ConstructOrder2[ConstructOrder2["PREORDER"] = 0] = "PREORDER";
+      ConstructOrder2[ConstructOrder2["POSTORDER"] = 1] = "POSTORDER";
+    })(ConstructOrder || (exports2.ConstructOrder = ConstructOrder = {}));
+    var PATH_SEP_REGEX = new RegExp(`${Node11.PATH_SEP}`, "g");
+    function sanitizeId(id) {
+      return id.replace(PATH_SEP_REGEX, "--");
+    }
+    Object.defineProperty(Construct19.prototype, CONSTRUCT_SYM, {
+      value: true,
+      enumerable: false,
+      writable: false
+    });
+    var RootConstruct = class extends Construct19 {
+      /**
+       * Creates a new root construct node.
+       *
+       * @param id The scoped construct ID. Must be unique amongst siblings. If
+       * the ID includes a path separator (`/`), then it will be replaced by double
+       * dash `--`.
+       */
+      constructor(id) {
+        super(void 0, id ?? "");
+      }
+    };
+    exports2.RootConstruct = RootConstruct;
+    _c = JSII_RTTI_SYMBOL_1;
+    RootConstruct[_c] = { fqn: "constructs.RootConstruct", version: "10.6.0" };
+  }
+});
+
+// ../../../node_modules/constructs/lib/index.js
+var require_lib4 = __commonJS({
+  "../../../node_modules/constructs/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    __exportStar2(require_construct(), exports2);
+    __exportStar2(require_dependency(), exports2);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/feature-flags.ts
+var import_constructs, FeatureFlags;
+var init_feature_flags = __esm({
+  "../../aws-cdk-lib/core/lib/feature-flags.ts"() {
+    "use strict";
+    import_constructs = __toESM(require_lib4());
+    init_errors();
+    init_cx_api();
+    init_literal_string();
+    FeatureFlags = class _FeatureFlags {
+      constructor(construct) {
+        this.construct = construct;
+      }
+      construct;
+      /**
+       * Inspect feature flags on the construct node's context.
+       */
+      static of(scope) {
+        return new _FeatureFlags(scope);
+      }
+      /**
+       * Check whether a feature flag is enabled. If configured, the flag is present in
+       * the construct node context. Falls back to the defaults defined in the `cx-api`
+       * module.
+       */
+      isEnabled(featureFlag) {
+        const context = import_constructs.Node.of(this.construct).tryGetContext(featureFlag);
+        if (CURRENT_VERSION_EXPIRED_FLAGS.includes(featureFlag)) {
+          if (context !== void 0) {
+            throw new UnscopedValidationError(lit`UnsupportedFeatureFlag`, `Unsupported feature flag '${featureFlag}'. This flag existed on CDKv1 but has been removed in CDKv2. CDK will now behave as the same as when the flag is enabled.`);
+          }
+          return true;
+        }
+        return context !== void 0 ? Boolean(context) : futureFlagDefault(featureFlag);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/aspect-prio.ts
+function mutatingAspectPrio32333(scope) {
+  return FeatureFlags.of(scope).isEnabled(ASPECT_PRIORITIES_MUTATING) ? AspectPriority.MUTATING : void 0;
+}
+var init_aspect_prio = __esm({
+  "../../aws-cdk-lib/core/lib/private/aspect-prio.ts"() {
+    "use strict";
+    init_cx_api();
+    init_aspect();
+    init_feature_flags();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/debug.ts
+function debugModeEnabled() {
+  return isTruthy(import_process.env[CDK_DEBUG]);
+}
+function isTruthy(value) {
+  if (!value) {
+    return false;
+  }
+  return TRUTHY_VALUES.has(value.toLowerCase());
+}
+var import_process, CDK_DEBUG, TRUTHY_VALUES;
+var init_debug = __esm({
+  "../../aws-cdk-lib/core/lib/debug.ts"() {
+    "use strict";
+    import_process = require("process");
+    CDK_DEBUG = "CDK_DEBUG";
+    TRUTHY_VALUES = /* @__PURE__ */ new Set(["1", "on", "true"]);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/box.ts
+var BOX_SYM, stackTraceCollectionEnabled, globalSeq, Box, BaseReadableBox, Combined, Computed, ReadonlyState, State, ArrayState, MapState, SetState;
+var init_box = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/box.ts"() {
+    "use strict";
+    init_debug();
+    init_stack_trace();
+    BOX_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Box");
+    stackTraceCollectionEnabled = true;
+    globalSeq = 0;
+    Box = class {
+      /**
+       * Creates a mutable box holding a single value.
+       *
+       * @param value the initial value.
+       * @param options.equals optional equality function used to skip no-op `set` calls.
+       *   Defaults to reference equality (`===`).
+       * @returns a new `Box`.
+       */
+      static fromValue(value, options) {
+        return new State(value, options);
+      }
+      /**
+       * Creates a read-only box that combines multiple source boxes through a function.
+       *
+       * The resulting box collects stack traces from all source boxes, sorted by
+       * the global mutation order. This is useful when a single CloudFormation
+       * property depends on multiple pieces of L2 state.
+       *
+       * @param boxes a record of named source boxes.
+       * @param fn a pure function that receives the unwrapped values and produces the result.
+       * @returns a new read-only `IReadableBox`.
+       * @example
+       *   const a = Boxes.fromValue(10);
+       *   const b = Boxes.fromValue(20);
+       *   const result = Boxes.combine({ a, b }, (x) => x.a + x.b).derive((x) => x * 2);
+       *   result.get(); // 60
+       */
+      static combine(boxes, fn) {
+        return new Combined(boxes, fn);
+      }
+      /**
+       * Type guard that checks whether a value is a box.
+       *
+       * Used internally by `PropertyAssignmentMetadataWriter` to decide whether a
+       * resolved token should contribute `aws:cdk:propertyAssignment` metadata.
+       */
+      static isBox(x) {
+        return typeof x === "object" && x && BOX_SYM in x;
+      }
+      /**
+       * Creates a mutable array box.
+       *
+       * @param as the initial array contents.
+       * @param options.omitEmpty if true (the default), the box resolves to `undefined` when the
+       *   array is empty. This behavior propagates through `map`, `derive`, and
+       *   `reduce`, so derived boxes also resolve to `undefined` when the source
+       *   array is empty. Set to `false` to resolve to an empty array instead.
+       * @returns a new `ArrayBox`.
+       */
+      static fromArray(as = [], options) {
+        return new ArrayState(as, options?.omitEmpty ?? true);
+      }
+      /**
+       * Creates a mutable map box.
+       *
+       * @param map the initial map contents.
+       * @returns a new `MapBox`.
+       */
+      static fromMap(map = /* @__PURE__ */ new Map()) {
+        return new MapState(map);
+      }
+      /**
+       * Creates a mutable set box.
+       *
+       * @param set the initial set contents.
+       * @returns a new `SetBox`.
+       */
+      static fromSet(set = /* @__PURE__ */ new Set()) {
+        return new SetState(set);
+      }
+      /**
+       * Globally disables stack trace collection for all box mutations.
+       *
+       * Called by the `@noBoxStackTraces` decorator before entering an L2
+       * constructor, so that default/initial values set during construction
+       * do not produce misleading stack traces.
+       */
+      static disableStackTraceCollection() {
+        stackTraceCollectionEnabled = false;
+      }
+      /**
+       * Re-enables stack trace collection for all box mutations.
+       *
+       * Called by the `@noBoxStackTraces` decorator after the L2 constructor
+       * returns, so that subsequent mutations (from user code) are tracked.
+       */
+      static enableStackTraceCollection() {
+        stackTraceCollectionEnabled = true;
+      }
+    };
+    BaseReadableBox = class {
+      creationStack = [];
+      constructor() {
+        Object.defineProperty(this, BOX_SYM, { value: true });
+      }
+      derive(fn) {
+        return new Computed(this, fn);
+      }
+      resolve(_) {
+        return this.get();
+      }
+    };
+    Combined = class extends BaseReadableBox {
+      constructor(boxes, fn) {
+        super();
+        this.boxes = boxes;
+        this.fn = fn;
+      }
+      boxes;
+      fn;
+      get() {
+        const values = Object.fromEntries(
+          Object.entries(this.boxes).map(([k, b]) => [k, b.get()])
+        );
+        return this.fn(values);
+      }
+      getMutable() {
+        return this.get();
+      }
+      getStackTraces() {
+        const all = Object.values(this.boxes).flatMap((b) => b.getOrderedStackTraces?.() ?? []);
+        all.sort((a, b) => a.seq - b.seq);
+        return all.map((t) => t.trace);
+      }
+    };
+    Computed = class extends BaseReadableBox {
+      constructor(source, fn) {
+        super();
+        this.source = source;
+        this.fn = fn;
+      }
+      source;
+      fn;
+      get() {
+        return this.fn(this.source.get());
+      }
+      getMutable() {
+        return this.get();
+      }
+      resolve(context) {
+        const sourceResolved = this.source.resolve(context);
+        if (sourceResolved === void 0) {
+          return void 0;
+        }
+        return this.fn(sourceResolved);
+      }
+      getStackTraces() {
+        return this.source.getStackTraces();
+      }
+      getOrderedStackTraces() {
+        return this.source.getOrderedStackTraces?.() ?? [];
+      }
+    };
+    ReadonlyState = class extends BaseReadableBox {
+      constructor(value) {
+        super();
+        this.value = value;
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces = [{ trace: captureStackTrace(this.constructor), seq: globalSeq++ }];
+        }
+      }
+      value;
+      orderedTraces = [];
+      get() {
+        return this.value;
+      }
+      getMutable() {
+        return this.value;
+      }
+      getStackTraces() {
+        return this.orderedTraces.map((t) => t.trace);
+      }
+      getOrderedStackTraces() {
+        return this.orderedTraces;
+      }
+    };
+    State = class _State extends ReadonlyState {
+      equals;
+      constructor(value, options) {
+        super(value);
+        this.equals = options?.equals ?? ((a, b) => a === b);
+      }
+      set(value) {
+        if (this.equals(this.value, value)) {
+          return;
+        }
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces = [{ trace: captureStackTrace(_State.prototype.set), seq: globalSeq++ }];
+        }
+        this.value = value;
+      }
+      update(fn) {
+        this.set(fn(this.value));
+      }
+    };
+    ArrayState = class _ArrayState extends State {
+      constructor(array, omitEmptyFlag) {
+        super(array);
+        this.array = array;
+        this.omitEmptyFlag = omitEmptyFlag;
+      }
+      array;
+      omitEmptyFlag;
+      resolve(_) {
+        if (this.omitEmptyFlag && this.array.length === 0) {
+          return void 0;
+        }
+        return this.get();
+      }
+      set(value) {
+        super.set(value);
+        this.array = value;
+      }
+      push(...items) {
+        this.array.push(...items);
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.push));
+      }
+      pop() {
+        const result = this.array.pop();
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.pop));
+        return result;
+      }
+      findIndex(predicate) {
+        return this.array.findIndex(predicate);
+      }
+      find(predicate) {
+        return this.array.find(predicate);
+      }
+      get length() {
+        return this.array.length;
+      }
+      splice(start, deleteCount, ...items) {
+        const result = this.array.splice(start, deleteCount, ...items);
+        this.appendTrace(() => captureStackTrace(_ArrayState.prototype.splice));
+        return result;
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      some(predicate) {
+        return this.array.some(predicate);
+      }
+      includes(searchElement) {
+        return this.array.includes(searchElement);
+      }
+      map(fn) {
+        return this.derive((arr) => arr.map(fn));
+      }
+      filter(fn) {
+        return this.derive((arr) => arr.filter(fn));
+      }
+      [Symbol.iterator]() {
+        return this.array[Symbol.iterator]();
+      }
+    };
+    MapState = class _MapState extends State {
+      constructor(map) {
+        super(map);
+        this.map = map;
+      }
+      map;
+      set(value) {
+        super.set(value);
+        this.map = value;
+      }
+      get size() {
+        return this.map.size;
+      }
+      put(key, value) {
+        this.map.set(key, value);
+        this.appendTrace(() => captureStackTrace(_MapState.prototype.put));
+      }
+      delete(key) {
+        const result = this.map.delete(key);
+        this.appendTrace(() => captureStackTrace(_MapState.prototype.delete));
+        return result;
+      }
+      has(key) {
+        return this.map.has(key);
+      }
+      getEntry(key) {
+        return this.map.get(key);
+      }
+      keys() {
+        return this.map.keys();
+      }
+      values() {
+        return this.map.values();
+      }
+      entries() {
+        return this.map.entries();
+      }
+      forEach(callbackfn) {
+        this.map.forEach(callbackfn);
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      [Symbol.iterator]() {
+        return this.map[Symbol.iterator]();
+      }
+    };
+    SetState = class _SetState extends State {
+      constructor(_set) {
+        super(_set);
+        this._set = _set;
+      }
+      _set;
+      set(value) {
+        super.set(value);
+        this._set = value;
+      }
+      get size() {
+        return this._set.size;
+      }
+      add(value) {
+        this._set.add(value);
+        this.appendTrace(() => captureStackTrace(_SetState.prototype.add));
+      }
+      delete(value) {
+        const result = this._set.delete(value);
+        this.appendTrace(() => captureStackTrace(_SetState.prototype.delete));
+        return result;
+      }
+      has(value) {
+        return this._set.has(value);
+      }
+      values() {
+        return this._set.values();
+      }
+      entries() {
+        return this._set.entries();
+      }
+      forEach(callbackfn) {
+        this._set.forEach(callbackfn);
+      }
+      appendTrace(deferredTrace) {
+        if (debugModeEnabled() && stackTraceCollectionEnabled) {
+          this.orderedTraces.push({ trace: deferredTrace(), seq: globalSeq++ });
+        }
+      }
+      [Symbol.iterator]() {
+        return this._set[Symbol.iterator]();
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/string-fragments.ts
+function fragmentValue(fragment) {
+  switch (fragment.type) {
+    case "literal":
+      return fragment.lit;
+    case "token":
+      return fragment.token.toString();
+    case "intrinsic":
+      return fragment.value;
+  }
+}
+var TokenizedStringFragments;
+var init_string_fragments = __esm({
+  "../../aws-cdk-lib/core/lib/string-fragments.ts"() {
+    "use strict";
+    init_token();
+    TokenizedStringFragments = class _TokenizedStringFragments {
+      fragments = new Array();
+      get firstToken() {
+        const first = this.fragments[0];
+        if (first.type === "token") {
+          return first.token;
+        }
+        return void 0;
+      }
+      get firstValue() {
+        return fragmentValue(this.fragments[0]);
+      }
+      get length() {
+        return this.fragments.length;
+      }
+      addLiteral(lit2) {
+        this.fragments.push({ type: "literal", lit: lit2 });
+      }
+      addToken(token) {
+        this.fragments.push({ type: "token", token });
+      }
+      addIntrinsic(value) {
+        this.fragments.push({ type: "intrinsic", value });
+      }
+      /**
+       * Return all Tokens from this string
+       */
+      get tokens() {
+        const ret = new Array();
+        for (const f of this.fragments) {
+          if (f.type === "token") {
+            ret.push(f.token);
+          }
+        }
+        return ret;
+      }
+      /**
+       * Apply a transformation function to all tokens in the string
+       */
+      mapTokens(mapper) {
+        const ret = new _TokenizedStringFragments();
+        for (const f of this.fragments) {
+          switch (f.type) {
+            case "literal":
+              ret.addLiteral(f.lit);
+              break;
+            case "token":
+              const mapped = mapper.mapToken(f.token);
+              if (isResolvableObject(mapped)) {
+                ret.addToken(mapped);
+              } else if (Token.isUnresolved(mapped)) {
+                ret.addIntrinsic(mapped);
+              } else {
+                ret.addLiteral(mapped);
+              }
+              break;
+            case "intrinsic":
+              ret.addIntrinsic(f.value);
+              break;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Combine the string fragments using the given joiner.
+       *
+       * If there are any
+       */
+      join(concat) {
+        if (this.fragments.length === 0) {
+          return concat.join(void 0, void 0);
+        }
+        if (this.fragments.length === 1) {
+          return this.firstValue;
+        }
+        const values = this.fragments.map(fragmentValue);
+        while (values.length > 1) {
+          const prefix = values.splice(0, 2);
+          values.splice(0, 0, concat.join(prefix[0], prefix[1]));
+        }
+        return values[0];
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/encoding.ts
+function regexQuote(s) {
+  return s.replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&");
+}
+function unresolved(obj) {
+  if (typeof obj === "string") {
+    return obj.includes(ANY_TOKEN_MARKER) && TokenString.forString(obj).test();
+  } else if (typeof obj === "number") {
+    return extractTokenDouble(obj) !== void 0;
+  } else if (Array.isArray(obj) && obj.length === 1) {
+    return typeof obj[0] === "string" && TokenString.forListToken(obj[0]).test();
+  } else {
+    return isResolvableObject(obj);
+  }
+}
+function createTokenDouble(x) {
+  if (Math.floor(x) !== x || x < 0) {
+    throw new UnscopedValidationError(lit`OnlyEncodePositiveIntegers`, "Can only encode positive integers");
+  }
+  if (x > MAX_ENCODABLE_INTEGER) {
+    throw new UnscopedValidationError(lit`IndexLargeEncode`, `Got an index too large to encode: ${x}`);
+  }
+  const buf = new ArrayBuffer(8);
+  const ints = new Uint32Array(buf);
+  ints[0] = x & 4294967295;
+  ints[1] = shr32(x) & 65535 | DOUBLE_TOKEN_MARKER_BITS;
+  return new Float64Array(buf)[0];
+}
+function shr32(x) {
+  return Math.floor(x / BITS32);
+}
+function shl32(x) {
+  return x * BITS32;
+}
+function extractTokenDouble(encoded) {
+  const buf = new ArrayBuffer(8);
+  new Float64Array(buf)[0] = encoded;
+  const ints = new Uint32Array(buf);
+  if ((ints[1] & 4294901760) !== DOUBLE_TOKEN_MARKER_BITS) {
+    return void 0;
+  }
+  return ints[0] + shl32(ints[1] & 65535);
+}
+var ANY_TOKEN_MARKER, BEGIN_STRING_TOKEN_MARKER, BEGIN_LIST_TOKEN_MARKER, END_TOKEN_MARKER, VALID_KEY_CHARS, QUOTED_BEGIN_STRING_TOKEN_MARKER, QUOTED_BEGIN_LIST_TOKEN_MARKER, QUOTED_END_TOKEN_MARKER, STRINGIFIED_NUMBER_PATTERN, STRING_TOKEN_REGEX, LIST_TOKEN_REGEX, TokenString, DOUBLE_TOKEN_MARKER_BITS, MAX_ENCODABLE_INTEGER, BITS32, STRINGIFIED_NUMBER_REGEX;
+var init_encoding = __esm({
+  "../../aws-cdk-lib/core/lib/private/encoding.ts"() {
+    "use strict";
+    init_errors();
+    init_string_fragments();
+    init_token();
+    init_literal_string();
+    ANY_TOKEN_MARKER = "Token[";
+    BEGIN_STRING_TOKEN_MARKER = "${Token[";
+    BEGIN_LIST_TOKEN_MARKER = "#{Token[";
+    END_TOKEN_MARKER = "]}";
+    VALID_KEY_CHARS = "a-zA-Z0-9:._-";
+    QUOTED_BEGIN_STRING_TOKEN_MARKER = regexQuote(BEGIN_STRING_TOKEN_MARKER);
+    QUOTED_BEGIN_LIST_TOKEN_MARKER = regexQuote(BEGIN_LIST_TOKEN_MARKER);
+    QUOTED_END_TOKEN_MARKER = regexQuote(END_TOKEN_MARKER);
+    STRINGIFIED_NUMBER_PATTERN = "-1\\.\\d{10,16}e\\+289";
+    STRING_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_STRING_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}|(${STRINGIFIED_NUMBER_PATTERN})`, "g");
+    LIST_TOKEN_REGEX = new RegExp(`${QUOTED_BEGIN_LIST_TOKEN_MARKER}([${VALID_KEY_CHARS}]+)${QUOTED_END_TOKEN_MARKER}`, "g");
+    TokenString = class _TokenString {
+      constructor(str, re) {
+        this.str = str;
+        this.re = re;
+      }
+      str;
+      re;
+      /**
+       * Returns a `TokenString` for this string.
+       */
+      static forString(s) {
+        return new _TokenString(s, STRING_TOKEN_REGEX);
+      }
+      /**
+       * Returns a `TokenString` for this string (must be the first string element of the list)
+       */
+      static forListToken(s) {
+        return new _TokenString(s, LIST_TOKEN_REGEX);
+      }
+      /**
+       * Split string on markers, substituting markers with Tokens
+       */
+      split(lookup) {
+        const ret = new TokenizedStringFragments();
+        let rest = 0;
+        this.re.lastIndex = 0;
+        let m = this.re.exec(this.str);
+        while (m) {
+          if (m.index > rest) {
+            ret.addLiteral(this.str.substring(rest, m.index));
+          }
+          ret.addToken(lookup(m[1] ?? m[2]));
+          rest = this.re.lastIndex;
+          m = this.re.exec(this.str);
+        }
+        if (rest < (this.str ?? "").length) {
+          ret.addLiteral(this.str.substring(rest));
+        }
+        return ret;
+      }
+      /**
+       * Indicates if this string includes tokens.
+       */
+      test() {
+        this.re.lastIndex = 0;
+        return this.re.test(this.str);
+      }
+    };
+    DOUBLE_TOKEN_MARKER_BITS = 64511 << 16;
+    MAX_ENCODABLE_INTEGER = Math.pow(2, 48) - 1;
+    BITS32 = Math.pow(2, 32);
+    STRINGIFIED_NUMBER_REGEX = new RegExp(STRINGIFIED_NUMBER_PATTERN);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/type-hints.ts
+var init_type_hints = __esm({
+  "../../aws-cdk-lib/core/lib/type-hints.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/intrinsic.ts
+function isFunction(x) {
+  return typeof x === "function";
+}
+var Intrinsic;
+var init_intrinsic = __esm({
+  "../../aws-cdk-lib/core/lib/private/intrinsic.ts"() {
+    "use strict";
+    init_errors();
+    init_token();
+    init_type_hints();
+    init_literal_string();
+    Intrinsic = class {
+      /**
+       * The captured stack trace which represents the location in which this token was created.
+       */
+      creationStack;
+      /**
+       * Type that the Intrinsic is expected to evaluate to.
+       */
+      typeHint;
+      value;
+      constructor(value, options = {}) {
+        if (isFunction(value)) {
+          throw new UnscopedValidationError(lit`MustBeArgumentIntrinsicPlain`, `Argument to Intrinsic must be a plain value object, got ${value}`);
+        }
+        this.value = value;
+        this.typeHint = options.typeHint ?? "string" /* STRING */;
+      }
+      resolve(_context) {
+        return this.value;
+      }
+      /**
+       * Convert an instance of this Token to a string
+       *
+       * This method will be called implicitly by language runtimes if the object
+       * is embedded into a string. We treat it the same as an explicit
+       * stringification.
+       */
+      toString() {
+        return Token.asString(this);
+      }
+      /**
+       * Convert an instance of this Token to a string list
+       *
+       * This method will be called implicitly by language runtimes if the object
+       * is embedded into a list. We treat it the same as an explicit
+       * stringification.
+       */
+      toStringList() {
+        return Token.asList(this);
+      }
+      /**
+       * Turn this Token into JSON
+       *
+       * Called automatically when JSON.stringify() is called on a Token.
+       */
+      toJSON() {
+        return "";
+      }
+      /**
+       * Creates a throwable Error object that contains the token creation stack trace.
+       * @param message Error message
+       */
+      newError(message) {
+        return new Error(`${message}
+Token created:
+    at ${this.creationStack.join("\n    at ")}
+Error thrown:`);
+      }
+    };
+    Intrinsic.prototype.creationStack = ["Token stack traces are no longer captured"];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/token-map.ts
+function cachedValue(x, sym, prod) {
+  let cached = x[sym];
+  if (cached === void 0) {
+    cached = prod();
+    Object.defineProperty(x, sym, { value: cached });
+  }
+  return cached;
+}
+var glob, STRING_SYMBOL, LIST_SYMBOL, NUMBER_SYMBOL, TokenMap;
+var init_token_map = __esm({
+  "../../aws-cdk-lib/core/lib/private/token-map.ts"() {
+    "use strict";
+    init_encoding();
+    init_errors();
+    init_token();
+    init_literal_string();
+    glob = global;
+    STRING_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.STRING");
+    LIST_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.LIST");
+    NUMBER_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TokenMap.NUMBER");
+    TokenMap = class _TokenMap {
+      /**
+       * Singleton instance of the token string map
+       */
+      static instance() {
+        if (!glob.__cdkTokenMap) {
+          glob.__cdkTokenMap = new _TokenMap();
+        }
+        return glob.__cdkTokenMap;
+      }
+      stringTokenMap = /* @__PURE__ */ new Map();
+      numberTokenMap = /* @__PURE__ */ new Map();
+      /**
+       * Counter to assign unique IDs to tokens
+       *
+       * Start at a random number to prevent people from accidentally taking
+       * dependencies on token values between runs.
+       *
+       * This is most prominent in tests, where people will write:
+       *
+       * ```ts
+       * sha256(JSON.stringify({ ...some structure that can contain tokens ... }))
+       * ```
+       *
+       * This should have been:
+       *
+       * ```ts
+       * sha256(JSON.stringify(stack.resolve({ ...some structure that can contain tokens ... })))
+       * ```
+       *
+       * The hash value is hard to inspect for correctness. It will LOOK consistent
+       * during testing, but will break as soon as someone stringifies another
+       * token before the run.
+       *
+       * By changing the starting number for tokens, we ensure that the hash is almost
+       * guaranteed to be different during a few test runs, so the hashing of unresolved
+       * tokens can be detected.
+       */
+      tokenCounter = Math.floor(Math.random() * 10);
+      /**
+       * Generate a unique string for this Token, returning a key
+       *
+       * Every call for the same Token will produce a new unique string, no
+       * attempt is made to deduplicate. Token objects should cache the
+       * value themselves, if required.
+       *
+       * The token can choose (part of) its own representation string with a
+       * hint. This may be used to produce aesthetically pleasing and
+       * recognizable token representations for humans.
+       */
+      registerString(token, displayHint) {
+        return cachedValue(token, STRING_SYMBOL, () => {
+          const key = this.registerStringKey(token, displayHint);
+          return `${BEGIN_STRING_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`;
+        });
+      }
+      /**
+       * Generate a unique string for this Token, returning a key
+       */
+      registerList(token, displayHint) {
+        return cachedValue(token, LIST_SYMBOL, () => {
+          const key = this.registerStringKey(token, displayHint);
+          return [`${BEGIN_LIST_TOKEN_MARKER}${key}${END_TOKEN_MARKER}`];
+        });
+      }
+      /**
+       * Create a unique number representation for this Token and return it
+       */
+      registerNumber(token) {
+        return cachedValue(token, NUMBER_SYMBOL, () => {
+          return this.registerNumberKey(token);
+        });
+      }
+      /**
+       * Lookup a token from an encoded value
+       */
+      tokenFromEncoding(x) {
+        if (isResolvableObject(x)) {
+          return x;
+        }
+        if (typeof x === "string") {
+          return this.lookupString(x);
+        }
+        if (Array.isArray(x)) {
+          return this.lookupList(x);
+        }
+        if (Token.isUnresolved(x)) {
+          return x;
+        }
+        return void 0;
+      }
+      /**
+       * Reverse a string representation into a Token object
+       */
+      lookupString(s) {
+        const fragments = this.splitString(s);
+        if (fragments.tokens.length > 0 && fragments.length === 1) {
+          return fragments.firstToken;
+        }
+        return void 0;
+      }
+      /**
+       * Reverse a string representation into a Token object
+       */
+      lookupList(xs) {
+        if (xs.length !== 1) {
+          return void 0;
+        }
+        const str = TokenString.forListToken(xs[0]);
+        const fragments = str.split(this.lookupToken.bind(this));
+        if (fragments.length === 1) {
+          return fragments.firstToken;
+        }
+        return void 0;
+      }
+      /**
+       * Split a string into literals and Tokens
+       */
+      splitString(s) {
+        const str = TokenString.forString(s);
+        return str.split(this.lookupToken.bind(this));
+      }
+      /**
+       * Reverse a number encoding into a Token, or undefined if the number wasn't a Token
+       */
+      lookupNumberToken(x) {
+        const tokenIndex = extractTokenDouble(x);
+        if (tokenIndex === void 0) {
+          return void 0;
+        }
+        const t = this.numberTokenMap.get(tokenIndex);
+        if (t === void 0) {
+          throw new UnscopedValidationError(lit`EncodedRepresentationUnknownNumber`, "Encoded representation of unknown number Token found");
+        }
+        return t;
+      }
+      /**
+       * Find a Token by key.
+       *
+       * This excludes the token markers.
+       */
+      lookupToken(key) {
+        const token = this.stringTokenMap.get(key);
+        if (!token) {
+          throw new UnscopedValidationError(lit`UnrecognizedTokenKey`, `Unrecognized token key: ${key}`);
+        }
+        return token;
+      }
+      registerStringKey(token, displayHint) {
+        const counter = this.tokenCounter++;
+        const representation = (displayHint || "TOKEN").replace(new RegExp(`[^${VALID_KEY_CHARS}]`, "g"), ".");
+        const key = `${representation}.${counter}`;
+        this.stringTokenMap.set(key, token);
+        return key;
+      }
+      registerNumberKey(token) {
+        const counter = this.tokenCounter++;
+        const dbl = createTokenDouble(counter);
+        this.numberTokenMap.set(counter, token);
+        this.stringTokenMap.set(`${dbl}`, token);
+        return dbl;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/resolvable.ts
+var StringConcat, DefaultTokenResolver;
+var init_resolvable = __esm({
+  "../../aws-cdk-lib/core/lib/resolvable.ts"() {
+    "use strict";
+    init_errors();
+    init_encoding();
+    init_literal_string();
+    init_token_map();
+    StringConcat = class {
+      join(left, right) {
+        if (left === void 0) {
+          return right !== void 0 ? `${right}` : void 0;
+        }
+        if (right === void 0) {
+          return `${left}`;
+        }
+        return `${left}${right}`;
+      }
+    };
+    DefaultTokenResolver = class {
+      constructor(concat) {
+        this.concat = concat;
+      }
+      concat;
+      /**
+       * Default Token resolution
+       *
+       * Resolve the Token, recurse into whatever it returns,
+       * then finally post-process it.
+       */
+      resolveToken(t, context, postProcessor) {
+        try {
+          let resolved = t.resolve(context);
+          resolved = context.resolve(resolved);
+          resolved = postProcessor.postProcess(resolved, context);
+          return resolved;
+        } catch (e) {
+          let message = `Resolution error: ${e.message}.`;
+          e.message = message;
+          throw e;
+        }
+      }
+      /**
+       * Resolve string fragments to Tokens
+       */
+      resolveString(fragments, context) {
+        return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).join(this.concat);
+      }
+      resolveList(xs, context) {
+        if (xs.length !== 1) {
+          throw new UnscopedValidationError(lit`CannotAddElementsListToken`, `Cannot add elements to list token, got: ${xs}`);
+        }
+        const str = TokenString.forListToken(xs[0]);
+        const tokenMap2 = TokenMap.instance();
+        const fragments = str.split(tokenMap2.lookupToken.bind(tokenMap2));
+        if (fragments.length !== 1) {
+          throw new UnscopedValidationError(lit`CannotConcatenateStringsTokenizedString`, `Cannot concatenate strings in a tokenized string array, got: ${xs[0]}`);
+        }
+        return fragments.mapTokens({ mapToken: (x) => context.resolve(x) }).firstValue;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/resolve.ts
+function couldContainToken(s) {
+  return s.includes(ANY_TOKEN_MARKER) || s.length >= MIN_NUMBER_TOKEN_LENGTH && s.includes("e+289");
+}
+function hasListTokenMarker(s) {
+  return s.includes(BEGIN_LIST_TOKEN_MARKER);
+}
+function resolve(obj, options) {
+  const prefix = options.prefix || [];
+  const leaveEmpty = options.removeEmpty === false;
+  return _resolve(obj, options, prefix, leaveEmpty);
+}
+function _resolve(obj, options, prefix, leaveEmpty) {
+  const t = typeof obj;
+  if (t === "string") {
+    const hasTokenBracket = obj.includes("Token[");
+    if (!hasTokenBracket && !(obj.length >= MIN_NUMBER_TOKEN_LENGTH && obj.includes("e+289"))) {
+      return obj;
+    }
+    if (hasTokenBracket && obj.includes(BEGIN_LIST_TOKEN_MARKER)) {
+      if (TokenString.forListToken(obj).test()) {
+        throw new UnscopedValidationError(lit`EncodedListTokenInScalarContext`, "Found an encoded list token string in a scalar string context. Use 'Fn.select(0, list)' (not 'list[0]') to extract elements from token lists.");
+      }
+    }
+    const str = TokenString.forString(obj);
+    if (str.test()) {
+      const fragments = str.split(lookupToken);
+      return tagResolvedValue(options.resolver.resolveString(fragments, makeContext(options, prefix)), "string" /* STRING */);
+    }
+    return obj;
+  }
+  if (obj === void 0) {
+    return void 0;
+  }
+  if (obj === null) {
+    return null;
+  }
+  if (t === "number") {
+    if (obj > -1e287 && obj < 1e287) {
+      return obj;
+    }
+    return tagResolvedValue(resolveNumberToken(obj, makeContext(options, prefix)), "number" /* NUMBER */);
+  }
+  if (t === "boolean") {
+    return obj;
+  }
+  if (t === "function") {
+    throw new UnscopedValidationError(lit`TryingToResolveNonDataObject`, `Trying to resolve a non-data object. Only token are supported for lazy evaluation. Path: /${prefix.join("/")}. Object: ${obj}`);
+  }
+  if (obj instanceof Date) {
+    return obj;
+  }
+  if (prefix.length > 200) {
+    throw new UnscopedValidationError(lit`CircularReferenceDetected`, "Unable to resolve object tree with circular reference. Path: /" + prefix.join("/"));
+  }
+  if (Array.isArray(obj)) {
+    return resolveArray(obj, options, prefix, leaveEmpty);
+  }
+  if (t === "object" && obj.resolve !== void 0 && typeof obj.resolve === "function") {
+    const context = makeContext(options, prefix);
+    const postProcessor = makePostProcessor(context);
+    return tagResolvedValue(options.resolver.resolveToken(obj, context, postProcessor), "string" /* STRING */);
+  }
+  if (obj._children !== void 0 && obj._metadata !== void 0) {
+    throw new UnscopedValidationError(lit`TryingToResolveConstruct`, "Trying to resolve() a Construct at /" + prefix.join("/"));
+  }
+  return resolveObject(obj, options, prefix, leaveEmpty);
+}
+function resolveArray(obj, options, prefix, leaveEmpty) {
+  for (let i = 0; i < obj.length; i++) {
+    const x = obj[i];
+    if (typeof x === "string" && hasListTokenMarker(x) && TokenString.forListToken(x).test()) {
+      return tagResolvedValue(options.resolver.resolveList(obj, makeContext(options, prefix)), "string-list" /* STRING_LIST */);
+    }
+  }
+  const len = obj.length;
+  const arr = [];
+  for (let i = 0; i < len; i++) {
+    prefix.push(String(i));
+    const value = _resolve(obj[i], options, prefix, leaveEmpty);
+    prefix.pop();
+    if (value === void 0 && !leaveEmpty) {
+      continue;
+    }
+    arr.push(value);
+  }
+  return arr;
+}
+function resolveObject(obj, options, prefix, leaveEmpty) {
+  const keys = Object.keys(obj);
+  const result = {};
+  let intrinsicKeyCtr = 0;
+  for (let ki = 0; ki < keys.length; ki++) {
+    const key = keys[ki];
+    const raw = obj[key];
+    let value;
+    const rawType = typeof raw;
+    if (rawType === "string") {
+      value = couldContainToken(raw) ? _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) : raw;
+    } else if (raw === void 0) {
+      value = void 0;
+    } else if (raw === null) {
+      value = null;
+    } else if (rawType === "number") {
+      value = raw > -1e287 && raw < 1e287 ? raw : _resolveWithPrefix(raw, options, prefix, leaveEmpty, key);
+    } else if (rawType === "boolean") {
+      value = raw;
+    } else {
+      value = _resolveWithPrefix(raw, options, prefix, leaveEmpty, key);
+    }
+    if (value === void 0) {
+      if (leaveEmpty) {
+        result[key] = void 0;
+      }
+      continue;
+    }
+    if (key.length < 5 || !couldContainToken(key)) {
+      result[key] = value;
+      continue;
+    }
+    if (!unresolved(key)) {
+      result[key] = value;
+      continue;
+    }
+    const resolvedKey = makeContext(options, prefix).resolve(key);
+    if (typeof resolvedKey === "string") {
+      result[resolvedKey] = value;
+    } else {
+      if (!options.allowIntrinsicKeys) {
+        throw new UnscopedValidationError(lit`KeyMustResolveToString`, `"${String(key)}" is used as the key in a map so must resolve to a string, but it resolves to: ${JSON.stringify(resolvedKey)}. Consider using "CfnJson" to delay resolution to deployment-time`);
+      }
+      result[`${INTRINSIC_KEY_PREFIX}${intrinsicKeyCtr++}`] = [resolvedKey, value];
+    }
+  }
+  const previousTypeHint = resolvedTypeHint(obj);
+  return previousTypeHint ? tagResolvedValue(result, previousTypeHint) : result;
+}
+function _resolveWithPrefix(raw, options, prefix, leaveEmpty, key) {
+  prefix.push(key);
+  const value = _resolve(raw, options, prefix, leaveEmpty);
+  prefix.pop();
+  return value;
+}
+function makeContext(options, prefix) {
+  const documentPath = prefix.slice();
+  const context = {
+    preparing: options.preparing,
+    scope: options.scope,
+    documentPath,
+    registerPostProcessor(pp) {
+      context._postProcessor = pp;
+    },
+    resolve(x, changeOptions) {
+      const newOptions = changeOptions ? { ...options, ...changeOptions, prefix: documentPath } : { ...options, prefix: documentPath };
+      return resolve(x, newOptions);
+    }
+  };
+  return context;
+}
+function makePostProcessor(context) {
+  return {
+    postProcess(x) {
+      const pp = context._postProcessor;
+      return pp ? pp.postProcess(x, context) : x;
+    }
+  };
+}
+function findTokens(scope, fn) {
+  const resolver = new RememberingTokenResolver(new StringConcat());
+  resolve(fn(), { scope, prefix: [], resolver, preparing: true });
+  return resolver.tokens;
+}
+function writePropertyAssignmentMetadataForConstruct(scope, fn, lookupTable) {
+  const resolver = new PropertyAssignmentMetadataWriter(new StringConcat(), lookupTable);
+  resolve(fn(), { scope, prefix: [], resolver, preparing: true });
+}
+function resolveNumberToken(x, context) {
+  const token = tokenMap.lookupNumberToken(x);
+  if (token === void 0) {
+    return x;
+  }
+  return context.resolve(token);
+}
+function tagResolvedValue(value, typeHint) {
+  if (typeof value !== "object" || value == null) {
+    return value;
+  }
+  Object.defineProperty(value, RESOLUTION_TYPEHINT_SYM, {
+    value: typeHint,
+    configurable: true
+  });
+  return value;
+}
+function resolvedTypeHint(value) {
+  if (typeof value !== "object" || value == null) {
+    return void 0;
+  }
+  return value[RESOLUTION_TYPEHINT_SYM];
+}
+var tokenMap, lookupToken, MIN_NUMBER_TOKEN_LENGTH, RESOLUTION_TYPEHINT_SYM, INTRINSIC_KEY_PREFIX, PropertyAssignmentMetadataWriter, RememberingTokenResolver;
+var init_resolve = __esm({
+  "../../aws-cdk-lib/core/lib/private/resolve.ts"() {
+    "use strict";
+    init_encoding();
+    init_token_map();
+    init_errors();
+    init_resolvable();
+    init_type_hints();
+    init_literal_string();
+    init_box();
+    tokenMap = TokenMap.instance();
+    lookupToken = tokenMap.lookupToken.bind(tokenMap);
+    MIN_NUMBER_TOKEN_LENGTH = 16;
+    RESOLUTION_TYPEHINT_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.resolvedTypeHint");
+    INTRINSIC_KEY_PREFIX = "$IntrinsicKey$";
+    PropertyAssignmentMetadataWriter = class extends DefaultTokenResolver {
+      lookupTable;
+      seenDocumentPaths = /* @__PURE__ */ new Set();
+      constructor(concat, lookupTable) {
+        super(concat);
+        this.lookupTable = lookupTable;
+      }
+      resolveToken(t, context, postProcessor) {
+        const result = super.resolveToken(t, context, postProcessor);
+        const lookupTable = this.lookupTable;
+        function propertyNameFromContext(ctx) {
+          const documentPath = ctx.documentPath;
+          if (documentPath.length < 4 || documentPath[0] !== "Resources" || documentPath[2] !== "Properties") {
+            return void 0;
+          }
+          return lookupTable.cfnPropertyName(documentPath[3]);
+        }
+        const propertyName = propertyNameFromContext(context);
+        const documentPathKey = context.documentPath.join("/");
+        if (Box.isBox(t) && propertyName && !this.seenDocumentPaths.has(documentPathKey)) {
+          for (let stackTrace of t.getStackTraces()) {
+            context.scope.node.addMetadata("aws:cdk:propertyAssignment", {
+              propertyName,
+              stackTrace
+            });
+            this.seenDocumentPaths.add(documentPathKey);
+          }
+        }
+        return result;
+      }
+    };
+    RememberingTokenResolver = class extends DefaultTokenResolver {
+      tokensSeen = /* @__PURE__ */ new Set();
+      resolveToken(t, context, postProcessor) {
+        this.tokensSeen.add(t);
+        return super.resolveToken(t, context, postProcessor);
+      }
+      resolveString(s, context) {
+        const ret = super.resolveString(s, context);
+        return ret;
+      }
+      get tokens() {
+        return Array.from(this.tokensSeen);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/token.ts
+function isResolvableObject(x) {
+  return typeof x === "object" && x !== null && typeof x.resolve === "function";
+}
+var TokenComparison, Token, Tokenization, JsonNull;
+var init_token = __esm({
+  "../../aws-cdk-lib/core/lib/token.ts"() {
+    "use strict";
+    init_errors();
+    init_lazy();
+    init_encoding();
+    init_intrinsic();
+    init_literal_string();
+    init_resolve();
+    init_token_map();
+    TokenComparison = class _TokenComparison {
+      /**
+       * This means we're certain the two components are NOT
+       * Tokens, and identical.
+       */
+      static SAME = new _TokenComparison();
+      /**
+       * This means we're certain the two components are NOT
+       * Tokens, and different.
+       */
+      static DIFFERENT = new _TokenComparison();
+      /** This means exactly one of the components is a Token. */
+      static ONE_UNRESOLVED = new _TokenComparison();
+      /** This means both components are Tokens. */
+      static BOTH_UNRESOLVED = new _TokenComparison();
+      constructor() {
+      }
+    };
+    Token = class _Token {
+      /**
+       * Returns true if obj represents an unresolved value
+       *
+       * One of these must be true:
+       *
+       * - `obj` is an IResolvable
+       * - `obj` is a string containing at least one encoded `IResolvable`
+       * - `obj` is either an encoded number or list
+       *
+       * This does NOT recurse into lists or objects to see if they
+       * contain resolvables.
+       *
+       * @param obj The object to test.
+       */
+      static isUnresolved(obj) {
+        return unresolved(obj);
+      }
+      /**
+       * The negation of `Token.isUnresolved()`. In TypeScript, narrows the type
+       * to exclude `IResolvable`.
+       * @param obj The object to test.
+       */
+      static isResolved(obj) {
+        return !_Token.isUnresolved(obj);
+      }
+      /**
+       * Return a reversible string representation of this token
+       *
+       * If the Token is initialized with a literal, the stringified value of the
+       * literal is returned. Otherwise, a special quoted string representation
+       * of the Token is returned that can be embedded into other strings.
+       *
+       * Strings with quoted Tokens in them can be restored back into
+       * complex values with the Tokens restored by calling `resolve()`
+       * on the string.
+       */
+      static asString(value, options = {}) {
+        if (typeof value === "string") {
+          return value;
+        }
+        return TokenMap.instance().registerString(_Token.asAny(value), options.displayHint);
+      }
+      /**
+       * Return a reversible number representation of this token
+       */
+      static asNumber(value) {
+        if (typeof value === "number") {
+          return value;
+        }
+        return TokenMap.instance().registerNumber(_Token.asAny(value));
+      }
+      /**
+       * Return a reversible list representation of this token
+       */
+      static asList(value, options = {}) {
+        if (Array.isArray(value) && value.every((x) => typeof x === "string")) {
+          return value;
+        }
+        return TokenMap.instance().registerList(_Token.asAny(value), options.displayHint);
+      }
+      /**
+       * Return a resolvable representation of the given value
+       */
+      static asAny(value) {
+        value = Tokenization.reverse(value) ?? value;
+        return isResolvableObject(value) ? value : new Intrinsic(value);
+      }
+      /** Compare two strings that might contain Tokens with each other. */
+      static compareStrings(possibleToken1, possibleToken2) {
+        const firstIsUnresolved = _Token.isUnresolved(possibleToken1);
+        const secondIsUnresolved = _Token.isUnresolved(possibleToken2);
+        if (firstIsUnresolved && secondIsUnresolved) {
+          return TokenComparison.BOTH_UNRESOLVED;
+        }
+        if (firstIsUnresolved || secondIsUnresolved) {
+          return TokenComparison.ONE_UNRESOLVED;
+        }
+        return possibleToken1 === possibleToken2 ? TokenComparison.SAME : TokenComparison.DIFFERENT;
+      }
+      constructor() {
+      }
+    };
+    Tokenization = class _Tokenization {
+      /**
+       * Un-encode a string potentially containing encoded tokens
+       */
+      static reverseString(s) {
+        return TokenMap.instance().splitString(s);
+      }
+      /**
+       * Un-encode a string which is either a complete encoded token, or doesn't contain tokens at all
+       *
+       * It's illegal for the string to be a concatenation of an encoded token and something else.
+       */
+      static reverseCompleteString(s) {
+        const fragments = _Tokenization.reverseString(s);
+        if (fragments.length !== 1) {
+          throw new UnscopedValidationError(lit`TokenzationReverseCompleteStringArgument`, `Tokenzation.reverseCompleteString: argument must not be a concatenation, got '${s}'`);
+        }
+        return fragments.firstToken;
+      }
+      /**
+       * Un-encode a Tokenized value from a number
+       */
+      static reverseNumber(n) {
+        return TokenMap.instance().lookupNumberToken(n);
+      }
+      /**
+       * Un-encode a Tokenized value from a list
+       */
+      static reverseList(l) {
+        return TokenMap.instance().lookupList(l);
+      }
+      /**
+       * Reverse any value into a Resolvable, if possible
+       *
+       * In case of a string, the string must not be a concatenation.
+       */
+      static reverse(x, options = {}) {
+        if (_Tokenization.isResolvable(x)) {
+          return x;
+        }
+        if (typeof x === "string") {
+          if (options.failConcat === false) {
+            const fragments = _Tokenization.reverseString(x);
+            return fragments.length === 1 ? fragments.firstToken : void 0;
+          }
+          return _Tokenization.reverseCompleteString(x);
+        }
+        if (Array.isArray(x)) {
+          return _Tokenization.reverseList(x);
+        }
+        if (typeof x === "number") {
+          return _Tokenization.reverseNumber(x);
+        }
+        return void 0;
+      }
+      /**
+       * Resolves an object by evaluating all tokens and removing any undefined or empty objects or arrays.
+       * Values can only be primitives, arrays or tokens. Other objects (i.e. with methods) will be rejected.
+       *
+       * @param obj The object to resolve.
+       * @param options Prefix key path components for diagnostics.
+       */
+      static resolve(obj, options) {
+        return resolve(obj, {
+          scope: options.scope,
+          resolver: options.resolver,
+          preparing: options.preparing ?? false,
+          removeEmpty: options.removeEmpty
+        });
+      }
+      /**
+       * Return whether the given object is an IResolvable object
+       *
+       * This is different from Token.isUnresolved() which will also check for
+       * encoded Tokens, whereas this method will only do a type check on the given
+       * object.
+       */
+      static isResolvable(obj) {
+        return isResolvableObject(obj);
+      }
+      /**
+       * Stringify a number directly or lazily if it's a Token. If it is an object (i.e., { Ref: 'SomeLogicalId' }), return it as-is.
+       */
+      static stringifyNumber(x) {
+        if (Token.isUnresolved(x)) {
+          return Lazy.uncachedString({
+            produce: (context) => {
+              const resolved = context.resolve(x);
+              return typeof resolved !== "number" ? resolved : `${resolved}`;
+            }
+          });
+        } else {
+          return typeof x !== "number" ? x : `${x}`;
+        }
+      }
+      constructor() {
+      }
+    };
+    JsonNull = class _JsonNull {
+      /** The canonical instance of `JsonNull`. */
+      static INSTANCE = new _JsonNull();
+      creationStack = ["Token stack traces are no longer captured"];
+      constructor() {
+      }
+      resolve(_ctx) {
+        return null;
+      }
+      /** Obtains the JSON representation of this object (`null`) */
+      toJSON() {
+        return null;
+      }
+      /** Obtains the string representation of this object (`'null'`) */
+      toString() {
+        return "null";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/lazy.ts
+var Lazy, LazyBase, LazyBox, LazyString, LazyNumber, LazyList, LazyAny;
+var init_lazy = __esm({
+  "../../aws-cdk-lib/core/lib/lazy.ts"() {
+    "use strict";
+    init_box();
+    init_token();
+    Lazy = class {
+      /**
+       * Defer the calculation of a string value to synthesis time
+       *
+       * Use this if you want to render a string to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string` type and don't need
+       * the calculation to be deferred, use `Token.asString()` instead.
+       *
+       * @deprecated Use `Lazy.string()` or `Lazy.uncachedString()` instead.
+       */
+      static stringValue(producer, options = {}) {
+        return Token.asString(new LazyString(producer, false), options);
+      }
+      /**
+       * Defer the one-time calculation of a string value to synthesis time
+       *
+       * Use this if you want to render a string to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string` type and don't need
+       * the calculation to be deferred, use `Token.asString()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static string(producer, options = {}) {
+        return Token.asString(new LazyBox(new LazyString(producer, true)), options);
+      }
+      /**
+       * Defer the calculation of a string value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.string()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedString(producer, options = {}) {
+        return Token.asString(new LazyString(producer, false), options);
+      }
+      /**
+       * Defer the one-time calculation of a number value to synthesis time
+       *
+       * Use this if you want to render a number to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `number` type and don't need
+       * the calculation to be deferred, use `Token.asNumber()` instead.
+       *
+       * @deprecated Use `Lazy.number()` or `Lazy.uncachedNumber()` instead.
+       */
+      static numberValue(producer) {
+        return Token.asNumber(new LazyNumber(producer, false));
+      }
+      /**
+       * Defer the one-time calculation of a number value to synthesis time
+       *
+       * Use this if you want to render a number to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `number` type and don't need
+       * the calculation to be deferred, use `Token.asNumber()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static number(producer) {
+        return Token.asNumber(new LazyBox(new LazyNumber(producer, true)));
+      }
+      /**
+       * Defer the calculation of a number value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.number()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedNumber(producer) {
+        return Token.asNumber(new LazyNumber(producer, false));
+      }
+      /**
+       * Defer the one-time calculation of a list value to synthesis time
+       *
+       * Use this if you want to render a list to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string[]` type and don't need
+       * the calculation to be deferred, use `Token.asList()` instead.
+       *
+       * @deprecated Use `Lazy.list()` or `Lazy.uncachedList()` instead.
+       */
+      static listValue(producer, options = {}) {
+        return Token.asList(new LazyList(producer, false, options), options);
+      }
+      /**
+       * Defer the calculation of a list value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.list()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedList(producer, options = {}) {
+        return Token.asList(new LazyList(producer, false, options), options);
+      }
+      /**
+       * Defer the one-time calculation of a list value to synthesis time
+       *
+       * Use this if you want to render a list to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * If you are simply looking to force a value to a `string[]` type and don't need
+       * the calculation to be deferred, use `Token.asList()` instead.
+       *
+       * The inner function will only be invoked once, and the resolved value
+       * cannot depend on the Stack the Token is used in.
+       */
+      static list(producer, options = {}) {
+        return Token.asList(new LazyBox(new LazyList(producer, true, options)), options);
+      }
+      /**
+       * Defer the one-time calculation of an arbitrarily typed value to synthesis time
+       *
+       * Use this if you want to render an object to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * @deprecated Use `Lazy.any()` or `Lazy.uncachedAny()` instead.
+       */
+      static anyValue(producer, options = {}) {
+        return new LazyAny(producer, false, options);
+      }
+      /**
+       * Defer the one-time calculation of an arbitrarily typed value to synthesis time
+       *
+       * Use this if you want to render an object to a template whose actual value depends on
+       * some state mutation that may happen after the construct has been created.
+       *
+       * The inner function will only be invoked one time and cannot depend on
+       * resolution context.
+       */
+      static any(producer, options = {}) {
+        return new LazyBox(new LazyAny(producer, true, options));
+      }
+      /**
+       * Defer the calculation of an untyped value to synthesis time
+       *
+       * Use of this function is not recommended; unless you know you need it for sure, you
+       * probably don't. Use `Lazy.any()` instead.
+       *
+       * The inner function may be invoked multiple times during synthesis. You
+       * should only use this method if the returned value depends on variables
+       * that may change during the Aspect application phase of synthesis, or if
+       * the value depends on the Stack the value is being used in. Both of these
+       * cases are rare, and only ever occur for AWS Construct Library authors.
+       */
+      static uncachedAny(producer, options = {}) {
+        return new LazyAny(producer, false, options);
+      }
+      constructor() {
+      }
+    };
+    LazyBase = class {
+      constructor(producer, cache) {
+        this.producer = producer;
+        this.cache = cache;
+      }
+      producer;
+      cache;
+      creationStack;
+      _cached;
+      resolve(context) {
+        if (this.cache) {
+          return this._cached ?? (this._cached = this.producer.produce(context));
+        } else {
+          return this.producer.produce(context);
+        }
+      }
+      toString() {
+        return Token.asString(this);
+      }
+      /**
+       * Turn this Token into JSON
+       *
+       * Called automatically when JSON.stringify() is called on a Token.
+       */
+      toJSON() {
+        return "";
+      }
+    };
+    LazyBase.prototype.creationStack = ["Token stack traces are no longer captured"];
+    LazyBox = class extends ReadonlyState {
+      inner;
+      constructor(inner) {
+        super(void 0);
+        this.inner = inner;
+      }
+      get() {
+        return this.inner.resolve(void 0);
+      }
+      toString() {
+        return Token.asString(this);
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    LazyString = class extends LazyBase {
+    };
+    LazyNumber = class extends LazyBase {
+    };
+    LazyList = class extends LazyBase {
+      constructor(producer, cache, options = {}) {
+        super(producer, cache);
+        this.options = options;
+      }
+      options;
+      resolve(context) {
+        const resolved = super.resolve(context);
+        if (resolved?.length === 0 && this.options.omitEmpty) {
+          return void 0;
+        }
+        return resolved;
+      }
+    };
+    LazyAny = class extends LazyBase {
+      constructor(producer, cache, options = {}) {
+        super(producer, cache);
+        this.options = options;
+      }
+      options;
+      resolve(context) {
+        const resolved = super.resolve(context);
+        if (Array.isArray(resolved) && resolved.length === 0 && this.options.omitEmptyArray) {
+          return void 0;
+        }
+        return resolved;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/reference.ts
+var REFERENCE_SYMBOL, Reference;
+var init_reference = __esm({
+  "../../aws-cdk-lib/core/lib/reference.ts"() {
+    "use strict";
+    init_intrinsic();
+    REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Reference");
+    Reference = class extends Intrinsic {
+      /**
+       * Check whether this is actually a Reference
+       */
+      static isReference(x) {
+        return typeof x === "object" && x !== null && REFERENCE_SYMBOL in x;
+      }
+      target;
+      displayName;
+      constructor(value, target, displayName, typeHint) {
+        super(value, { typeHint });
+        Object.defineProperty(this, REFERENCE_SYMBOL, { value: true });
+        this.target = target;
+        this.displayName = displayName || "Reference";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-reference.ts
+var CFN_REFERENCE_SYMBOL, CfnReference;
+var init_cfn_reference = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-reference.ts"() {
+    "use strict";
+    init_reference();
+    init_token();
+    init_errors();
+    init_literal_string();
+    init_core_construct_finders();
+    CFN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnReference");
+    CfnReference = class _CfnReference extends Reference {
+      constructor(value, displayName, target, typeHint) {
+        super(value, target, displayName, typeHint);
+        this.target = target;
+        this.replacementTokens = /* @__PURE__ */ new Map();
+        this.targetStack = stackOf(target);
+        Object.defineProperty(this, CFN_REFERENCE_SYMBOL, { value: true });
+      }
+      target;
+      /**
+       * Check whether this is actually a Reference
+       */
+      static isCfnReference(x) {
+        return CFN_REFERENCE_SYMBOL in x;
+      }
+      /**
+       * Return the CfnReference for the indicated target
+       *
+       * Will make sure that multiple invocations for the same target and intrinsic
+       * return the same CfnReference. Because CfnReferences accumulate state in
+       * the prepare() phase (for the purpose of cross-stack references), it's
+       * important that the state isn't lost if it's lazily created, like so:
+       *
+       *     Lazy.string({ produce: () => new CfnReference(...) })
+       *
+       */
+      static for(target, attribute, refRender, typeHint) {
+        return _CfnReference.singletonReference(target, attribute, refRender, () => {
+          const cfnIntrinsic = refRender === 0 /* FN_SUB */ ? "${" + target.logicalId + (attribute === "Ref" ? "" : `.${attribute}`) + "}" : attribute === "Ref" ? { Ref: target.logicalId } : {
+            "Fn::GetAtt": refRender === 1 /* GET_ATT_STRING */ ? `${target.logicalId}.${attribute}` : [target.logicalId, attribute]
+          };
+          return new _CfnReference(cfnIntrinsic, attribute, target, typeHint);
+        });
+      }
+      /**
+       * Return a CfnReference that references a pseudo referenced
+       */
+      static forPseudo(pseudoName, scope) {
+        return _CfnReference.singletonReference(scope, `Pseudo:${pseudoName}`, void 0, () => {
+          const cfnIntrinsic = { Ref: pseudoName };
+          return new _CfnReference(cfnIntrinsic, pseudoName, scope);
+        });
+      }
+      /**
+       * Static table where we keep singleton CfnReference instances
+       */
+      static referenceTable = /* @__PURE__ */ new Map();
+      /**
+       * Get or create the table.
+       * Passing fnSub = true allows cloudformation-include to correctly handle Fn::Sub.
+       */
+      static singletonReference(target, attribKey, refRender, fresh) {
+        let attribs = _CfnReference.referenceTable.get(target);
+        if (!attribs) {
+          attribs = /* @__PURE__ */ new Map();
+          _CfnReference.referenceTable.set(target, attribs);
+        }
+        let cacheKey = attribKey;
+        switch (refRender) {
+          case 0 /* FN_SUB */:
+            cacheKey += "Fn::Sub";
+            break;
+          case 1 /* GET_ATT_STRING */:
+            cacheKey += "Fn::GetAtt::String";
+            break;
+        }
+        let ref = attribs.get(cacheKey);
+        if (!ref) {
+          ref = fresh();
+          attribs.set(cacheKey, ref);
+        }
+        return ref;
+      }
+      /**
+       * The Tokens that should be returned for each consuming stack (as decided by the producing Stack)
+       */
+      replacementTokens;
+      targetStack;
+      resolve(context) {
+        const consumingStack = stackOf(context.scope);
+        const token = this.replacementTokens.get(consumingStack);
+        if (token) {
+          return token.resolve(context);
+        } else {
+          return super.resolve(context);
+        }
+      }
+      hasValueForStack(stack) {
+        if (stack === this.targetStack) {
+          return true;
+        }
+        return this.replacementTokens.has(stack);
+      }
+      assignValueForStack(stack, value) {
+        if (stack === this.targetStack) {
+          throw new UnscopedValidationError(lit`CannotAssignValueStack`, "cannot assign a value for the same stack");
+        }
+        if (this.hasValueForStack(stack)) {
+          throw new UnscopedValidationError(lit`CannotAssignReferenceValueTwice`, "Cannot assign a reference value twice to the same stack. Use hasValueForStack to check first");
+        }
+        this.replacementTokens.set(stack, value);
+      }
+      /**
+       * Implementation of toString() that will use the display name
+       */
+      toString() {
+        return Token.asString(this, {
+          displayHint: `${this.target.node.id}.${this.displayName}`
+        });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/universalify/index.js
+var require_universalify = __commonJS({
+  "../../aws-cdk-lib/node_modules/universalify/index.js"(exports2) {
+    "use strict";
+    exports2.fromCallback = function(fn) {
+      return Object.defineProperty(function(...args) {
+        if (typeof args[args.length - 1] === "function") fn.apply(this, args);
+        else {
+          return new Promise((resolve6, reject) => {
+            args.push((err, res) => err != null ? reject(err) : resolve6(res));
+            fn.apply(this, args);
+          });
+        }
+      }, "name", { value: fn.name });
+    };
+    exports2.fromPromise = function(fn) {
+      return Object.defineProperty(function(...args) {
+        const cb = args[args.length - 1];
+        if (typeof cb !== "function") return fn.apply(this, args);
+        else {
+          args.pop();
+          fn.apply(this, args).then((r) => cb(null, r), cb);
+        }
+      }, "name", { value: fn.name });
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js
+var require_polyfills = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/polyfills.js"(exports2, module2) {
+    var constants2 = require("constants");
+    var origCwd = process.cwd;
+    var cwd = null;
+    var platform = process.env.GRACEFUL_FS_PLATFORM || process.platform;
+    process.cwd = function() {
+      if (!cwd)
+        cwd = origCwd.call(process);
+      return cwd;
+    };
+    try {
+      process.cwd();
+    } catch (er) {
+    }
+    if (typeof process.chdir === "function") {
+      chdir = process.chdir;
+      process.chdir = function(d) {
+        cwd = null;
+        chdir.call(process, d);
+      };
+      if (Object.setPrototypeOf) Object.setPrototypeOf(process.chdir, chdir);
+    }
+    var chdir;
+    module2.exports = patch;
+    function patch(fs19) {
+      if (constants2.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) {
+        patchLchmod(fs19);
+      }
+      if (!fs19.lutimes) {
+        patchLutimes(fs19);
+      }
+      fs19.chown = chownFix(fs19.chown);
+      fs19.fchown = chownFix(fs19.fchown);
+      fs19.lchown = chownFix(fs19.lchown);
+      fs19.chmod = chmodFix(fs19.chmod);
+      fs19.fchmod = chmodFix(fs19.fchmod);
+      fs19.lchmod = chmodFix(fs19.lchmod);
+      fs19.chownSync = chownFixSync(fs19.chownSync);
+      fs19.fchownSync = chownFixSync(fs19.fchownSync);
+      fs19.lchownSync = chownFixSync(fs19.lchownSync);
+      fs19.chmodSync = chmodFixSync(fs19.chmodSync);
+      fs19.fchmodSync = chmodFixSync(fs19.fchmodSync);
+      fs19.lchmodSync = chmodFixSync(fs19.lchmodSync);
+      fs19.stat = statFix(fs19.stat);
+      fs19.fstat = statFix(fs19.fstat);
+      fs19.lstat = statFix(fs19.lstat);
+      fs19.statSync = statFixSync(fs19.statSync);
+      fs19.fstatSync = statFixSync(fs19.fstatSync);
+      fs19.lstatSync = statFixSync(fs19.lstatSync);
+      if (fs19.chmod && !fs19.lchmod) {
+        fs19.lchmod = function(path23, mode, cb) {
+          if (cb) process.nextTick(cb);
+        };
+        fs19.lchmodSync = function() {
+        };
+      }
+      if (fs19.chown && !fs19.lchown) {
+        fs19.lchown = function(path23, uid, gid, cb) {
+          if (cb) process.nextTick(cb);
+        };
+        fs19.lchownSync = function() {
+        };
+      }
+      if (platform === "win32") {
+        fs19.rename = typeof fs19.rename !== "function" ? fs19.rename : (function(fs$rename) {
+          function rename(from, to, cb) {
+            var start = Date.now();
+            var backoff = 0;
+            fs$rename(from, to, function CB(er) {
+              if (er && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") && Date.now() - start < 6e4) {
+                setTimeout(function() {
+                  fs19.stat(to, function(stater, st) {
+                    if (stater && stater.code === "ENOENT")
+                      fs$rename(from, to, CB);
+                    else
+                      cb(er);
+                  });
+                }, backoff);
+                if (backoff < 100)
+                  backoff += 10;
+                return;
+              }
+              if (cb) cb(er);
+            });
+          }
+          if (Object.setPrototypeOf) Object.setPrototypeOf(rename, fs$rename);
+          return rename;
+        })(fs19.rename);
+      }
+      fs19.read = typeof fs19.read !== "function" ? fs19.read : (function(fs$read) {
+        function read(fd, buffer, offset, length, position, callback_) {
+          var callback;
+          if (callback_ && typeof callback_ === "function") {
+            var eagCounter = 0;
+            callback = function(er, _, __) {
+              if (er && er.code === "EAGAIN" && eagCounter < 10) {
+                eagCounter++;
+                return fs$read.call(fs19, fd, buffer, offset, length, position, callback);
+              }
+              callback_.apply(this, arguments);
+            };
+          }
+          return fs$read.call(fs19, fd, buffer, offset, length, position, callback);
+        }
+        if (Object.setPrototypeOf) Object.setPrototypeOf(read, fs$read);
+        return read;
+      })(fs19.read);
+      fs19.readSync = typeof fs19.readSync !== "function" ? fs19.readSync : /* @__PURE__ */ (function(fs$readSync) {
+        return function(fd, buffer, offset, length, position) {
+          var eagCounter = 0;
+          while (true) {
+            try {
+              return fs$readSync.call(fs19, fd, buffer, offset, length, position);
+            } catch (er) {
+              if (er.code === "EAGAIN" && eagCounter < 10) {
+                eagCounter++;
+                continue;
+              }
+              throw er;
+            }
+          }
+        };
+      })(fs19.readSync);
+      function patchLchmod(fs20) {
+        fs20.lchmod = function(path23, mode, callback) {
+          fs20.open(
+            path23,
+            constants2.O_WRONLY | constants2.O_SYMLINK,
+            mode,
+            function(err, fd) {
+              if (err) {
+                if (callback) callback(err);
+                return;
+              }
+              fs20.fchmod(fd, mode, function(err2) {
+                fs20.close(fd, function(err22) {
+                  if (callback) callback(err2 || err22);
+                });
+              });
+            }
+          );
+        };
+        fs20.lchmodSync = function(path23, mode) {
+          var fd = fs20.openSync(path23, constants2.O_WRONLY | constants2.O_SYMLINK, mode);
+          var threw = true;
+          var ret;
+          try {
+            ret = fs20.fchmodSync(fd, mode);
+            threw = false;
+          } finally {
+            if (threw) {
+              try {
+                fs20.closeSync(fd);
+              } catch (er) {
+              }
+            } else {
+              fs20.closeSync(fd);
+            }
+          }
+          return ret;
+        };
+      }
+      function patchLutimes(fs20) {
+        if (constants2.hasOwnProperty("O_SYMLINK") && fs20.futimes) {
+          fs20.lutimes = function(path23, at, mt, cb) {
+            fs20.open(path23, constants2.O_SYMLINK, function(er, fd) {
+              if (er) {
+                if (cb) cb(er);
+                return;
+              }
+              fs20.futimes(fd, at, mt, function(er2) {
+                fs20.close(fd, function(er22) {
+                  if (cb) cb(er2 || er22);
+                });
+              });
+            });
+          };
+          fs20.lutimesSync = function(path23, at, mt) {
+            var fd = fs20.openSync(path23, constants2.O_SYMLINK);
+            var ret;
+            var threw = true;
+            try {
+              ret = fs20.futimesSync(fd, at, mt);
+              threw = false;
+            } finally {
+              if (threw) {
+                try {
+                  fs20.closeSync(fd);
+                } catch (er) {
+                }
+              } else {
+                fs20.closeSync(fd);
+              }
+            }
+            return ret;
+          };
+        } else if (fs20.futimes) {
+          fs20.lutimes = function(_a7, _b, _c, cb) {
+            if (cb) process.nextTick(cb);
+          };
+          fs20.lutimesSync = function() {
+          };
+        }
+      }
+      function chmodFix(orig) {
+        if (!orig) return orig;
+        return function(target, mode, cb) {
+          return orig.call(fs19, target, mode, function(er) {
+            if (chownErOk(er)) er = null;
+            if (cb) cb.apply(this, arguments);
+          });
+        };
+      }
+      function chmodFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, mode) {
+          try {
+            return orig.call(fs19, target, mode);
+          } catch (er) {
+            if (!chownErOk(er)) throw er;
+          }
+        };
+      }
+      function chownFix(orig) {
+        if (!orig) return orig;
+        return function(target, uid, gid, cb) {
+          return orig.call(fs19, target, uid, gid, function(er) {
+            if (chownErOk(er)) er = null;
+            if (cb) cb.apply(this, arguments);
+          });
+        };
+      }
+      function chownFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, uid, gid) {
+          try {
+            return orig.call(fs19, target, uid, gid);
+          } catch (er) {
+            if (!chownErOk(er)) throw er;
+          }
+        };
+      }
+      function statFix(orig) {
+        if (!orig) return orig;
+        return function(target, options, cb) {
+          if (typeof options === "function") {
+            cb = options;
+            options = null;
+          }
+          function callback(er, stats) {
+            if (stats) {
+              if (stats.uid < 0) stats.uid += 4294967296;
+              if (stats.gid < 0) stats.gid += 4294967296;
+            }
+            if (cb) cb.apply(this, arguments);
+          }
+          return options ? orig.call(fs19, target, options, callback) : orig.call(fs19, target, callback);
+        };
+      }
+      function statFixSync(orig) {
+        if (!orig) return orig;
+        return function(target, options) {
+          var stats = options ? orig.call(fs19, target, options) : orig.call(fs19, target);
+          if (stats) {
+            if (stats.uid < 0) stats.uid += 4294967296;
+            if (stats.gid < 0) stats.gid += 4294967296;
+          }
+          return stats;
+        };
+      }
+      function chownErOk(er) {
+        if (!er)
+          return true;
+        if (er.code === "ENOSYS")
+          return true;
+        var nonroot = !process.getuid || process.getuid() !== 0;
+        if (nonroot) {
+          if (er.code === "EINVAL" || er.code === "EPERM")
+            return true;
+        }
+        return false;
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js
+var require_legacy_streams = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) {
+    var Stream = require("stream").Stream;
+    module2.exports = legacy;
+    function legacy(fs19) {
+      return {
+        ReadStream,
+        WriteStream
+      };
+      function ReadStream(path23, options) {
+        if (!(this instanceof ReadStream)) return new ReadStream(path23, options);
+        Stream.call(this);
+        var self2 = this;
+        this.path = path23;
+        this.fd = null;
+        this.readable = true;
+        this.paused = false;
+        this.flags = "r";
+        this.mode = 438;
+        this.bufferSize = 64 * 1024;
+        options = options || {};
+        var keys = Object.keys(options);
+        for (var index = 0, length = keys.length; index < length; index++) {
+          var key = keys[index];
+          this[key] = options[key];
+        }
+        if (this.encoding) this.setEncoding(this.encoding);
+        if (this.start !== void 0) {
+          if ("number" !== typeof this.start) {
+            throw TypeError("start must be a Number");
+          }
+          if (this.end === void 0) {
+            this.end = Infinity;
+          } else if ("number" !== typeof this.end) {
+            throw TypeError("end must be a Number");
+          }
+          if (this.start > this.end) {
+            throw new Error("start must be <= end");
+          }
+          this.pos = this.start;
+        }
+        if (this.fd !== null) {
+          process.nextTick(function() {
+            self2._read();
+          });
+          return;
+        }
+        fs19.open(this.path, this.flags, this.mode, function(err, fd) {
+          if (err) {
+            self2.emit("error", err);
+            self2.readable = false;
+            return;
+          }
+          self2.fd = fd;
+          self2.emit("open", fd);
+          self2._read();
+        });
+      }
+      function WriteStream(path23, options) {
+        if (!(this instanceof WriteStream)) return new WriteStream(path23, options);
+        Stream.call(this);
+        this.path = path23;
+        this.fd = null;
+        this.writable = true;
+        this.flags = "w";
+        this.encoding = "binary";
+        this.mode = 438;
+        this.bytesWritten = 0;
+        options = options || {};
+        var keys = Object.keys(options);
+        for (var index = 0, length = keys.length; index < length; index++) {
+          var key = keys[index];
+          this[key] = options[key];
+        }
+        if (this.start !== void 0) {
+          if ("number" !== typeof this.start) {
+            throw TypeError("start must be a Number");
+          }
+          if (this.start < 0) {
+            throw new Error("start must be >= zero");
+          }
+          this.pos = this.start;
+        }
+        this.busy = false;
+        this._queue = [];
+        if (this.fd === null) {
+          this._open = fs19.open;
+          this._queue.push([this._open, this.path, this.flags, this.mode, void 0]);
+          this.flush();
+        }
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/clone.js
+var require_clone = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/clone.js"(exports2, module2) {
+    "use strict";
+    module2.exports = clone;
+    var getPrototypeOf = Object.getPrototypeOf || function(obj) {
+      return obj.__proto__;
+    };
+    function clone(obj) {
+      if (obj === null || typeof obj !== "object")
+        return obj;
+      if (obj instanceof Object)
+        var copy = { __proto__: getPrototypeOf(obj) };
+      else
+        var copy = /* @__PURE__ */ Object.create(null);
+      Object.getOwnPropertyNames(obj).forEach(function(key) {
+        Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key));
+      });
+      return copy;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js
+var require_graceful_fs = __commonJS({
+  "../../aws-cdk-lib/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) {
+    var fs19 = require("fs");
+    var polyfills = require_polyfills();
+    var legacy = require_legacy_streams();
+    var clone = require_clone();
+    var util = require("util");
+    var gracefulQueue;
+    var previousSymbol;
+    if (typeof Symbol === "function" && typeof Symbol.for === "function") {
+      gracefulQueue = /* @__PURE__ */ Symbol.for("graceful-fs.queue");
+      previousSymbol = /* @__PURE__ */ Symbol.for("graceful-fs.previous");
+    } else {
+      gracefulQueue = "___graceful-fs.queue";
+      previousSymbol = "___graceful-fs.previous";
+    }
+    function noop() {
+    }
+    function publishQueue(context, queue2) {
+      Object.defineProperty(context, gracefulQueue, {
+        get: function() {
+          return queue2;
+        }
+      });
+    }
+    var debug = noop;
+    if (util.debuglog)
+      debug = util.debuglog("gfs4");
+    else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || ""))
+      debug = function() {
+        var m = util.format.apply(util, arguments);
+        m = "GFS4: " + m.split(/\n/).join("\nGFS4: ");
+        console.error(m);
+      };
+    if (!fs19[gracefulQueue]) {
+      queue = global[gracefulQueue] || [];
+      publishQueue(fs19, queue);
+      fs19.close = (function(fs$close) {
+        function close(fd, cb) {
+          return fs$close.call(fs19, fd, function(err) {
+            if (!err) {
+              resetQueue();
+            }
+            if (typeof cb === "function")
+              cb.apply(this, arguments);
+          });
+        }
+        Object.defineProperty(close, previousSymbol, {
+          value: fs$close
+        });
+        return close;
+      })(fs19.close);
+      fs19.closeSync = (function(fs$closeSync) {
+        function closeSync3(fd) {
+          fs$closeSync.apply(fs19, arguments);
+          resetQueue();
+        }
+        Object.defineProperty(closeSync3, previousSymbol, {
+          value: fs$closeSync
+        });
+        return closeSync3;
+      })(fs19.closeSync);
+      if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) {
+        process.on("exit", function() {
+          debug(fs19[gracefulQueue]);
+          require("assert").equal(fs19[gracefulQueue].length, 0);
+        });
+      }
+    }
+    var queue;
+    if (!global[gracefulQueue]) {
+      publishQueue(global, fs19[gracefulQueue]);
+    }
+    module2.exports = patch(clone(fs19));
+    if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs19.__patched) {
+      module2.exports = patch(fs19);
+      fs19.__patched = true;
+    }
+    function patch(fs20) {
+      polyfills(fs20);
+      fs20.gracefulify = patch;
+      fs20.createReadStream = createReadStream;
+      fs20.createWriteStream = createWriteStream;
+      var fs$readFile = fs20.readFile;
+      fs20.readFile = readFile;
+      function readFile(path23, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$readFile(path23, options, cb);
+        function go$readFile(path24, options2, cb2, startTime) {
+          return fs$readFile(path24, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$readFile, [path24, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$writeFile = fs20.writeFile;
+      fs20.writeFile = writeFile;
+      function writeFile(path23, data, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$writeFile(path23, data, options, cb);
+        function go$writeFile(path24, data2, options2, cb2, startTime) {
+          return fs$writeFile(path24, data2, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$writeFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$appendFile = fs20.appendFile;
+      if (fs$appendFile)
+        fs20.appendFile = appendFile;
+      function appendFile(path23, data, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        return go$appendFile(path23, data, options, cb);
+        function go$appendFile(path24, data2, options2, cb2, startTime) {
+          return fs$appendFile(path24, data2, options2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$appendFile, [path24, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$copyFile = fs20.copyFile;
+      if (fs$copyFile)
+        fs20.copyFile = copyFile;
+      function copyFile(src, dest, flags, cb) {
+        if (typeof flags === "function") {
+          cb = flags;
+          flags = 0;
+        }
+        return go$copyFile(src, dest, flags, cb);
+        function go$copyFile(src2, dest2, flags2, cb2, startTime) {
+          return fs$copyFile(src2, dest2, flags2, function(err) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$copyFile, [src2, dest2, flags2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      var fs$readdir = fs20.readdir;
+      fs20.readdir = readdir;
+      var noReaddirOptionVersions = /^v[0-5]\./;
+      function readdir(path23, options, cb) {
+        if (typeof options === "function")
+          cb = options, options = null;
+        var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path24, options2, cb2, startTime) {
+          return fs$readdir(path24, fs$readdirCallback(
+            path24,
+            options2,
+            cb2,
+            startTime
+          ));
+        } : function go$readdir2(path24, options2, cb2, startTime) {
+          return fs$readdir(path24, options2, fs$readdirCallback(
+            path24,
+            options2,
+            cb2,
+            startTime
+          ));
+        };
+        return go$readdir(path23, options, cb);
+        function fs$readdirCallback(path24, options2, cb2, startTime) {
+          return function(err, files) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([
+                go$readdir,
+                [path24, options2, cb2],
+                err,
+                startTime || Date.now(),
+                Date.now()
+              ]);
+            else {
+              if (files && files.sort)
+                files.sort();
+              if (typeof cb2 === "function")
+                cb2.call(this, err, files);
+            }
+          };
+        }
+      }
+      if (process.version.substr(0, 4) === "v0.8") {
+        var legStreams = legacy(fs20);
+        ReadStream = legStreams.ReadStream;
+        WriteStream = legStreams.WriteStream;
+      }
+      var fs$ReadStream = fs20.ReadStream;
+      if (fs$ReadStream) {
+        ReadStream.prototype = Object.create(fs$ReadStream.prototype);
+        ReadStream.prototype.open = ReadStream$open;
+      }
+      var fs$WriteStream = fs20.WriteStream;
+      if (fs$WriteStream) {
+        WriteStream.prototype = Object.create(fs$WriteStream.prototype);
+        WriteStream.prototype.open = WriteStream$open;
+      }
+      Object.defineProperty(fs20, "ReadStream", {
+        get: function() {
+          return ReadStream;
+        },
+        set: function(val2) {
+          ReadStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      Object.defineProperty(fs20, "WriteStream", {
+        get: function() {
+          return WriteStream;
+        },
+        set: function(val2) {
+          WriteStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      var FileReadStream = ReadStream;
+      Object.defineProperty(fs20, "FileReadStream", {
+        get: function() {
+          return FileReadStream;
+        },
+        set: function(val2) {
+          FileReadStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      var FileWriteStream = WriteStream;
+      Object.defineProperty(fs20, "FileWriteStream", {
+        get: function() {
+          return FileWriteStream;
+        },
+        set: function(val2) {
+          FileWriteStream = val2;
+        },
+        enumerable: true,
+        configurable: true
+      });
+      function ReadStream(path23, options) {
+        if (this instanceof ReadStream)
+          return fs$ReadStream.apply(this, arguments), this;
+        else
+          return ReadStream.apply(Object.create(ReadStream.prototype), arguments);
+      }
+      function ReadStream$open() {
+        var that = this;
+        open(that.path, that.flags, that.mode, function(err, fd) {
+          if (err) {
+            if (that.autoClose)
+              that.destroy();
+            that.emit("error", err);
+          } else {
+            that.fd = fd;
+            that.emit("open", fd);
+            that.read();
+          }
+        });
+      }
+      function WriteStream(path23, options) {
+        if (this instanceof WriteStream)
+          return fs$WriteStream.apply(this, arguments), this;
+        else
+          return WriteStream.apply(Object.create(WriteStream.prototype), arguments);
+      }
+      function WriteStream$open() {
+        var that = this;
+        open(that.path, that.flags, that.mode, function(err, fd) {
+          if (err) {
+            that.destroy();
+            that.emit("error", err);
+          } else {
+            that.fd = fd;
+            that.emit("open", fd);
+          }
+        });
+      }
+      function createReadStream(path23, options) {
+        return new fs20.ReadStream(path23, options);
+      }
+      function createWriteStream(path23, options) {
+        return new fs20.WriteStream(path23, options);
+      }
+      var fs$open = fs20.open;
+      fs20.open = open;
+      function open(path23, flags, mode, cb) {
+        if (typeof mode === "function")
+          cb = mode, mode = null;
+        return go$open(path23, flags, mode, cb);
+        function go$open(path24, flags2, mode2, cb2, startTime) {
+          return fs$open(path24, flags2, mode2, function(err, fd) {
+            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
+              enqueue([go$open, [path24, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
+            else {
+              if (typeof cb2 === "function")
+                cb2.apply(this, arguments);
+            }
+          });
+        }
+      }
+      return fs20;
+    }
+    function enqueue(elem) {
+      debug("ENQUEUE", elem[0].name, elem[1]);
+      fs19[gracefulQueue].push(elem);
+      retry();
+    }
+    var retryTimer;
+    function resetQueue() {
+      var now = Date.now();
+      for (var i = 0; i < fs19[gracefulQueue].length; ++i) {
+        if (fs19[gracefulQueue][i].length > 2) {
+          fs19[gracefulQueue][i][3] = now;
+          fs19[gracefulQueue][i][4] = now;
+        }
+      }
+      retry();
+    }
+    function retry() {
+      clearTimeout(retryTimer);
+      retryTimer = void 0;
+      if (fs19[gracefulQueue].length === 0)
+        return;
+      var elem = fs19[gracefulQueue].shift();
+      var fn = elem[0];
+      var args = elem[1];
+      var err = elem[2];
+      var startTime = elem[3];
+      var lastTime = elem[4];
+      if (startTime === void 0) {
+        debug("RETRY", fn.name, args);
+        fn.apply(null, args);
+      } else if (Date.now() - startTime >= 6e4) {
+        debug("TIMEOUT", fn.name, args);
+        var cb = args.pop();
+        if (typeof cb === "function")
+          cb.call(null, err);
+      } else {
+        var sinceAttempt = Date.now() - lastTime;
+        var sinceStart = Math.max(lastTime - startTime, 1);
+        var desiredDelay = Math.min(sinceStart * 1.2, 100);
+        if (sinceAttempt >= desiredDelay) {
+          debug("RETRY", fn.name, args);
+          fn.apply(null, args.concat([startTime]));
+        } else {
+          fs19[gracefulQueue].push(elem);
+        }
+      }
+      if (retryTimer === void 0) {
+        retryTimer = setTimeout(retry, 0);
+      }
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js
+var require_fs = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/fs/index.js"(exports2) {
+    "use strict";
+    var u = require_universalify().fromCallback;
+    var fs19 = require_graceful_fs();
+    var api = [
+      "access",
+      "appendFile",
+      "chmod",
+      "chown",
+      "close",
+      "copyFile",
+      "cp",
+      "fchmod",
+      "fchown",
+      "fdatasync",
+      "fstat",
+      "fsync",
+      "ftruncate",
+      "futimes",
+      "glob",
+      "lchmod",
+      "lchown",
+      "lutimes",
+      "link",
+      "lstat",
+      "mkdir",
+      "mkdtemp",
+      "open",
+      "opendir",
+      "readdir",
+      "readFile",
+      "readlink",
+      "realpath",
+      "rename",
+      "rm",
+      "rmdir",
+      "stat",
+      "statfs",
+      "symlink",
+      "truncate",
+      "unlink",
+      "utimes",
+      "writeFile"
+    ].filter((key) => {
+      return typeof fs19[key] === "function";
+    });
+    Object.assign(exports2, fs19);
+    api.forEach((method) => {
+      exports2[method] = u(fs19[method]);
+    });
+    exports2.exists = function(filename, callback) {
+      if (typeof callback === "function") {
+        return fs19.exists(filename, callback);
+      }
+      return new Promise((resolve6) => {
+        return fs19.exists(filename, resolve6);
+      });
+    };
+    exports2.read = function(fd, buffer, offset, length, position, callback) {
+      if (typeof callback === "function") {
+        return fs19.read(fd, buffer, offset, length, position, callback);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.read(fd, buffer, offset, length, position, (err, bytesRead, buffer2) => {
+          if (err) return reject(err);
+          resolve6({ bytesRead, buffer: buffer2 });
+        });
+      });
+    };
+    exports2.write = function(fd, buffer, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.write(fd, buffer, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.write(fd, buffer, ...args, (err, bytesWritten, buffer2) => {
+          if (err) return reject(err);
+          resolve6({ bytesWritten, buffer: buffer2 });
+        });
+      });
+    };
+    exports2.readv = function(fd, buffers, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.readv(fd, buffers, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.readv(fd, buffers, ...args, (err, bytesRead, buffers2) => {
+          if (err) return reject(err);
+          resolve6({ bytesRead, buffers: buffers2 });
+        });
+      });
+    };
+    exports2.writev = function(fd, buffers, ...args) {
+      if (typeof args[args.length - 1] === "function") {
+        return fs19.writev(fd, buffers, ...args);
+      }
+      return new Promise((resolve6, reject) => {
+        fs19.writev(fd, buffers, ...args, (err, bytesWritten, buffers2) => {
+          if (err) return reject(err);
+          resolve6({ bytesWritten, buffers: buffers2 });
+        });
+      });
+    };
+    if (typeof fs19.realpath.native === "function") {
+      exports2.realpath.native = u(fs19.realpath.native);
+    } else {
+      process.emitWarning(
+        "fs.realpath.native is not a function. Is fs being monkey-patched?",
+        "Warning",
+        "fs-extra-WARN0003"
+      );
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js
+var require_utils = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    module2.exports.checkPath = function checkPath(pth) {
+      if (process.platform === "win32") {
+        const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path23.parse(pth).root, ""));
+        if (pathHasInvalidWinCharacters) {
+          const error = new Error(`Path contains invalid characters: ${pth}`);
+          error.code = "EINVAL";
+          throw error;
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js
+var require_make_dir = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var { checkPath } = require_utils();
+    var getMode = (options) => {
+      const defaults = { mode: 511 };
+      if (typeof options === "number") return options;
+      return { ...defaults, ...options }.mode;
+    };
+    module2.exports.makeDir = async (dir, options) => {
+      checkPath(dir);
+      return fs19.mkdir(dir, {
+        mode: getMode(options),
+        recursive: true
+      });
+    };
+    module2.exports.makeDirSync = (dir, options) => {
+      checkPath(dir);
+      return fs19.mkdirSync(dir, {
+        mode: getMode(options),
+        recursive: true
+      });
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js
+var require_mkdirs = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var { makeDir: _makeDir, makeDirSync } = require_make_dir();
+    var makeDir = u(_makeDir);
+    module2.exports = {
+      mkdirs: makeDir,
+      mkdirsSync: makeDirSync,
+      // alias
+      mkdirp: makeDir,
+      mkdirpSync: makeDirSync,
+      ensureDir: makeDir,
+      ensureDirSync: makeDirSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js
+var require_path_exists = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    function pathExists(path23) {
+      return fs19.access(path23).then(() => true).catch(() => false);
+    }
+    module2.exports = {
+      pathExists: u(pathExists),
+      pathExistsSync: fs19.existsSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js
+var require_utimes = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var u = require_universalify().fromPromise;
+    async function utimesMillis(path23, atime, mtime) {
+      const fd = await fs19.open(path23, "r+");
+      let error = null;
+      try {
+        await fs19.futimes(fd, atime, mtime);
+      } catch (futimesErr) {
+        error = futimesErr;
+      } finally {
+        try {
+          await fs19.close(fd);
+        } catch (closeErr) {
+          if (!error) error = closeErr;
+        }
+      }
+      if (error) {
+        throw error;
+      }
+    }
+    function utimesMillisSync(path23, atime, mtime) {
+      const fd = fs19.openSync(path23, "r+");
+      let error = null;
+      try {
+        fs19.futimesSync(fd, atime, mtime);
+      } catch (futimesErr) {
+        error = futimesErr;
+      } finally {
+        try {
+          fs19.closeSync(fd);
+        } catch (closeErr) {
+          if (!error) error = closeErr;
+        }
+      }
+      if (error) {
+        throw error;
+      }
+    }
+    module2.exports = {
+      utimesMillis: u(utimesMillis),
+      utimesMillisSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js
+var require_stat = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var u = require_universalify().fromPromise;
+    function getStats(src, dest, opts) {
+      const statFunc = opts.dereference ? (file) => fs19.stat(file, { bigint: true }) : (file) => fs19.lstat(file, { bigint: true });
+      return Promise.all([
+        statFunc(src),
+        statFunc(dest).catch((err) => {
+          if (err.code === "ENOENT") return null;
+          throw err;
+        })
+      ]).then(([srcStat, destStat]) => ({ srcStat, destStat }));
+    }
+    function getStatsSync(src, dest, opts) {
+      let destStat;
+      const statFunc = opts.dereference ? (file) => fs19.statSync(file, { bigint: true }) : (file) => fs19.lstatSync(file, { bigint: true });
+      const srcStat = statFunc(src);
+      try {
+        destStat = statFunc(dest);
+      } catch (err) {
+        if (err.code === "ENOENT") return { srcStat, destStat: null };
+        throw err;
+      }
+      return { srcStat, destStat };
+    }
+    async function checkPaths(src, dest, funcName, opts) {
+      const { srcStat, destStat } = await getStats(src, dest, opts);
+      if (destStat) {
+        if (areIdentical(srcStat, destStat)) {
+          const srcBaseName = path23.basename(src);
+          const destBaseName = path23.basename(dest);
+          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
+            return { srcStat, destStat, isChangingCase: true };
+          }
+          throw new Error("Source and destination must not be the same.");
+        }
+        if (srcStat.isDirectory() && !destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`);
+        }
+        if (!srcStat.isDirectory() && destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`);
+        }
+      }
+      if (srcStat.isDirectory() && isSrcSubdir(src, dest)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return { srcStat, destStat };
+    }
+    function checkPathsSync(src, dest, funcName, opts) {
+      const { srcStat, destStat } = getStatsSync(src, dest, opts);
+      if (destStat) {
+        if (areIdentical(srcStat, destStat)) {
+          const srcBaseName = path23.basename(src);
+          const destBaseName = path23.basename(dest);
+          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
+            return { srcStat, destStat, isChangingCase: true };
+          }
+          throw new Error("Source and destination must not be the same.");
+        }
+        if (srcStat.isDirectory() && !destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`);
+        }
+        if (!srcStat.isDirectory() && destStat.isDirectory()) {
+          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`);
+        }
+      }
+      if (srcStat.isDirectory() && isSrcSubdir(src, dest)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return { srcStat, destStat };
+    }
+    async function checkParentPaths(src, srcStat, dest, funcName) {
+      const srcParent = path23.resolve(path23.dirname(src));
+      const destParent = path23.resolve(path23.dirname(dest));
+      if (destParent === srcParent || destParent === path23.parse(destParent).root) return;
+      let destStat;
+      try {
+        destStat = await fs19.stat(destParent, { bigint: true });
+      } catch (err) {
+        if (err.code === "ENOENT") return checkParentPaths(src, srcStat, destParent, funcName);
+        throw err;
+      }
+      if (areIdentical(srcStat, destStat)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return checkParentPaths(src, srcStat, destParent, funcName);
+    }
+    function checkParentPathsSync(src, srcStat, dest, funcName) {
+      const srcParent = path23.resolve(path23.dirname(src));
+      const destParent = path23.resolve(path23.dirname(dest));
+      if (destParent === srcParent || destParent === path23.parse(destParent).root) return;
+      let destStat;
+      try {
+        destStat = fs19.statSync(destParent, { bigint: true });
+      } catch (err) {
+        if (err.code === "ENOENT") return checkParentPathsSync(src, srcStat, destParent, funcName);
+        throw err;
+      }
+      if (areIdentical(srcStat, destStat)) {
+        throw new Error(errMsg(src, dest, funcName));
+      }
+      return checkParentPathsSync(src, srcStat, destParent, funcName);
+    }
+    function areIdentical(srcStat, destStat) {
+      return destStat.ino !== void 0 && destStat.dev !== void 0 && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev;
+    }
+    function isSrcSubdir(src, dest) {
+      const srcArr = path23.resolve(src).split(path23.sep).filter((i) => i);
+      const destArr = path23.resolve(dest).split(path23.sep).filter((i) => i);
+      return srcArr.every((cur, i) => destArr[i] === cur);
+    }
+    function errMsg(src, dest, funcName) {
+      return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.`;
+    }
+    module2.exports = {
+      // checkPaths
+      checkPaths: u(checkPaths),
+      checkPathsSync,
+      // checkParent
+      checkParentPaths: u(checkParentPaths),
+      checkParentPathsSync,
+      // Misc
+      isSrcSubdir,
+      areIdentical
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js
+var require_async = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/util/async.js"(exports2, module2) {
+    "use strict";
+    async function asyncIteratorConcurrentProcess(iterator, fn) {
+      const promises = [];
+      for await (const item of iterator) {
+        promises.push(
+          fn(item).then(
+            () => null,
+            (err) => err ?? new Error("unknown error")
+          )
+        );
+      }
+      await Promise.all(
+        promises.map(
+          (promise) => promise.then((possibleErr) => {
+            if (possibleErr !== null) throw possibleErr;
+          })
+        )
+      );
+    }
+    module2.exports = {
+      asyncIteratorConcurrentProcess
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js
+var require_copy = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var { mkdirs } = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var { utimesMillis } = require_utimes();
+    var stat = require_stat();
+    var { asyncIteratorConcurrentProcess } = require_async();
+    async function copy(src, dest, opts = {}) {
+      if (typeof opts === "function") {
+        opts = { filter: opts };
+      }
+      opts.clobber = "clobber" in opts ? !!opts.clobber : true;
+      opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber;
+      if (opts.preserveTimestamps && process.arch === "ia32") {
+        process.emitWarning(
+          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
+          "Warning",
+          "fs-extra-WARN0001"
+        );
+      }
+      const { srcStat, destStat } = await stat.checkPaths(src, dest, "copy", opts);
+      await stat.checkParentPaths(src, srcStat, dest, "copy");
+      const include = await runFilter(src, dest, opts);
+      if (!include) return;
+      const destParent = path23.dirname(dest);
+      const dirExists = await pathExists(destParent);
+      if (!dirExists) {
+        await mkdirs(destParent);
+      }
+      await getStatsAndPerformCopy(destStat, src, dest, opts);
+    }
+    async function runFilter(src, dest, opts) {
+      if (!opts.filter) return true;
+      return opts.filter(src, dest);
+    }
+    async function getStatsAndPerformCopy(destStat, src, dest, opts) {
+      const statFn = opts.dereference ? fs19.stat : fs19.lstat;
+      const srcStat = await statFn(src);
+      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts);
+      if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts);
+      if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts);
+      if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`);
+      if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`);
+      throw new Error(`Unknown file: ${src}`);
+    }
+    async function onFile(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return copyFile(srcStat, src, dest, opts);
+      if (opts.overwrite) {
+        await fs19.unlink(dest);
+        return copyFile(srcStat, src, dest, opts);
+      }
+      if (opts.errorOnExist) {
+        throw new Error(`'${dest}' already exists`);
+      }
+    }
+    async function copyFile(srcStat, src, dest, opts) {
+      await fs19.copyFile(src, dest);
+      if (opts.preserveTimestamps) {
+        if (fileIsNotWritable(srcStat.mode)) {
+          await makeFileWritable(dest, srcStat.mode);
+        }
+        const updatedSrcStat = await fs19.stat(src);
+        await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
+      }
+      return fs19.chmod(dest, srcStat.mode);
+    }
+    function fileIsNotWritable(srcMode) {
+      return (srcMode & 128) === 0;
+    }
+    function makeFileWritable(dest, srcMode) {
+      return fs19.chmod(dest, srcMode | 128);
+    }
+    async function onDir(srcStat, destStat, src, dest, opts) {
+      if (!destStat) {
+        await fs19.mkdir(dest);
+      }
+      await asyncIteratorConcurrentProcess(await fs19.opendir(src), async (item) => {
+        const srcItem = path23.join(src, item.name);
+        const destItem = path23.join(dest, item.name);
+        const include = await runFilter(srcItem, destItem, opts);
+        if (include) {
+          const { destStat: destStat2 } = await stat.checkPaths(srcItem, destItem, "copy", opts);
+          await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts);
+        }
+      });
+      if (!destStat) {
+        await fs19.chmod(dest, srcStat.mode);
+      }
+    }
+    async function onLink(destStat, src, dest, opts) {
+      let resolvedSrc = await fs19.readlink(src);
+      if (opts.dereference) {
+        resolvedSrc = path23.resolve(process.cwd(), resolvedSrc);
+      }
+      if (!destStat) {
+        return fs19.symlink(resolvedSrc, dest);
+      }
+      let resolvedDest = null;
+      try {
+        resolvedDest = await fs19.readlink(dest);
+      } catch (e) {
+        if (e.code === "EINVAL" || e.code === "UNKNOWN") return fs19.symlink(resolvedSrc, dest);
+        throw e;
+      }
+      if (opts.dereference) {
+        resolvedDest = path23.resolve(process.cwd(), resolvedDest);
+      }
+      if (resolvedSrc !== resolvedDest) {
+        if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
+          throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
+        }
+        if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) {
+          throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
+        }
+      }
+      await fs19.unlink(dest);
+      return fs19.symlink(resolvedSrc, dest);
+    }
+    module2.exports = copy;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js
+var require_copy_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var path23 = require("path");
+    var mkdirsSync = require_mkdirs().mkdirsSync;
+    var utimesMillisSync = require_utimes().utimesMillisSync;
+    var stat = require_stat();
+    function copySync2(src, dest, opts) {
+      if (typeof opts === "function") {
+        opts = { filter: opts };
+      }
+      opts = opts || {};
+      opts.clobber = "clobber" in opts ? !!opts.clobber : true;
+      opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber;
+      if (opts.preserveTimestamps && process.arch === "ia32") {
+        process.emitWarning(
+          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
+          "Warning",
+          "fs-extra-WARN0002"
+        );
+      }
+      const { srcStat, destStat } = stat.checkPathsSync(src, dest, "copy", opts);
+      stat.checkParentPathsSync(src, srcStat, dest, "copy");
+      if (opts.filter && !opts.filter(src, dest)) return;
+      const destParent = path23.dirname(dest);
+      if (!fs19.existsSync(destParent)) mkdirsSync(destParent);
+      return getStats(destStat, src, dest, opts);
+    }
+    function getStats(destStat, src, dest, opts) {
+      const statSync6 = opts.dereference ? fs19.statSync : fs19.lstatSync;
+      const srcStat = statSync6(src);
+      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts);
+      else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts);
+      else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts);
+      else if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`);
+      else if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`);
+      throw new Error(`Unknown file: ${src}`);
+    }
+    function onFile(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return copyFile(srcStat, src, dest, opts);
+      return mayCopyFile(srcStat, src, dest, opts);
+    }
+    function mayCopyFile(srcStat, src, dest, opts) {
+      if (opts.overwrite) {
+        fs19.unlinkSync(dest);
+        return copyFile(srcStat, src, dest, opts);
+      } else if (opts.errorOnExist) {
+        throw new Error(`'${dest}' already exists`);
+      }
+    }
+    function copyFile(srcStat, src, dest, opts) {
+      fs19.copyFileSync(src, dest);
+      if (opts.preserveTimestamps) handleTimestamps(srcStat.mode, src, dest);
+      return setDestMode(dest, srcStat.mode);
+    }
+    function handleTimestamps(srcMode, src, dest) {
+      if (fileIsNotWritable(srcMode)) makeFileWritable(dest, srcMode);
+      return setDestTimestamps(src, dest);
+    }
+    function fileIsNotWritable(srcMode) {
+      return (srcMode & 128) === 0;
+    }
+    function makeFileWritable(dest, srcMode) {
+      return setDestMode(dest, srcMode | 128);
+    }
+    function setDestMode(dest, srcMode) {
+      return fs19.chmodSync(dest, srcMode);
+    }
+    function setDestTimestamps(src, dest) {
+      const updatedSrcStat = fs19.statSync(src);
+      return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
+    }
+    function onDir(srcStat, destStat, src, dest, opts) {
+      if (!destStat) return mkDirAndCopy(srcStat.mode, src, dest, opts);
+      return copyDir(src, dest, opts);
+    }
+    function mkDirAndCopy(srcMode, src, dest, opts) {
+      fs19.mkdirSync(dest);
+      copyDir(src, dest, opts);
+      return setDestMode(dest, srcMode);
+    }
+    function copyDir(src, dest, opts) {
+      const dir = fs19.opendirSync(src);
+      try {
+        let dirent;
+        while ((dirent = dir.readSync()) !== null) {
+          copyDirItem(dirent.name, src, dest, opts);
+        }
+      } finally {
+        dir.closeSync();
+      }
+    }
+    function copyDirItem(item, src, dest, opts) {
+      const srcItem = path23.join(src, item);
+      const destItem = path23.join(dest, item);
+      if (opts.filter && !opts.filter(srcItem, destItem)) return;
+      const { destStat } = stat.checkPathsSync(srcItem, destItem, "copy", opts);
+      return getStats(destStat, srcItem, destItem, opts);
+    }
+    function onLink(destStat, src, dest, opts) {
+      let resolvedSrc = fs19.readlinkSync(src);
+      if (opts.dereference) {
+        resolvedSrc = path23.resolve(process.cwd(), resolvedSrc);
+      }
+      if (!destStat) {
+        return fs19.symlinkSync(resolvedSrc, dest);
+      } else {
+        let resolvedDest;
+        try {
+          resolvedDest = fs19.readlinkSync(dest);
+        } catch (err) {
+          if (err.code === "EINVAL" || err.code === "UNKNOWN") return fs19.symlinkSync(resolvedSrc, dest);
+          throw err;
+        }
+        if (opts.dereference) {
+          resolvedDest = path23.resolve(process.cwd(), resolvedDest);
+        }
+        if (resolvedSrc !== resolvedDest) {
+          if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
+            throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
+          }
+          if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) {
+            throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
+          }
+        }
+        return copyLink(resolvedSrc, dest);
+      }
+    }
+    function copyLink(resolvedSrc, dest) {
+      fs19.unlinkSync(dest);
+      return fs19.symlinkSync(resolvedSrc, dest);
+    }
+    module2.exports = copySync2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js
+var require_copy2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    module2.exports = {
+      copy: u(require_copy()),
+      copySync: require_copy_sync()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js
+var require_remove = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var u = require_universalify().fromCallback;
+    function remove(path23, callback) {
+      fs19.rm(path23, { recursive: true, force: true }, callback);
+    }
+    function removeSync2(path23) {
+      fs19.rmSync(path23, { recursive: true, force: true });
+    }
+    module2.exports = {
+      remove: u(remove),
+      removeSync: removeSync2
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js
+var require_empty = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var mkdir = require_mkdirs();
+    var remove = require_remove();
+    var emptyDir = u(async function emptyDir2(dir) {
+      let items;
+      try {
+        items = await fs19.readdir(dir);
+      } catch {
+        return mkdir.mkdirs(dir);
+      }
+      return Promise.all(items.map((item) => remove.remove(path23.join(dir, item))));
+    });
+    function emptyDirSync(dir) {
+      let items;
+      try {
+        items = fs19.readdirSync(dir);
+      } catch {
+        return mkdir.mkdirsSync(dir);
+      }
+      items.forEach((item) => {
+        item = path23.join(dir, item);
+        remove.removeSync(item);
+      });
+    }
+    module2.exports = {
+      emptyDirSync,
+      emptydirSync: emptyDirSync,
+      emptyDir,
+      emptydir: emptyDir
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js
+var require_file = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var mkdir = require_mkdirs();
+    async function createFile(file) {
+      let stats;
+      try {
+        stats = await fs19.stat(file);
+      } catch {
+      }
+      if (stats && stats.isFile()) return;
+      const dir = path23.dirname(file);
+      let dirStats = null;
+      try {
+        dirStats = await fs19.stat(dir);
+      } catch (err) {
+        if (err.code === "ENOENT") {
+          await mkdir.mkdirs(dir);
+          await fs19.writeFile(file, "");
+          return;
+        } else {
+          throw err;
+        }
+      }
+      if (dirStats.isDirectory()) {
+        await fs19.writeFile(file, "");
+      } else {
+        await fs19.readdir(dir);
+      }
+    }
+    function createFileSync(file) {
+      let stats;
+      try {
+        stats = fs19.statSync(file);
+      } catch {
+      }
+      if (stats && stats.isFile()) return;
+      const dir = path23.dirname(file);
+      try {
+        if (!fs19.statSync(dir).isDirectory()) {
+          fs19.readdirSync(dir);
+        }
+      } catch (err) {
+        if (err && err.code === "ENOENT") mkdir.mkdirsSync(dir);
+        else throw err;
+      }
+      fs19.writeFileSync(file, "");
+    }
+    module2.exports = {
+      createFile: u(createFile),
+      createFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js
+var require_link = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var mkdir = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var { areIdentical } = require_stat();
+    async function createLink(srcpath, dstpath) {
+      let dstStat;
+      try {
+        dstStat = await fs19.lstat(dstpath, { bigint: true });
+      } catch {
+      }
+      let srcStat;
+      try {
+        srcStat = await fs19.lstat(srcpath, { bigint: true });
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureLink");
+        throw err;
+      }
+      if (dstStat && areIdentical(srcStat, dstStat)) return;
+      const dir = path23.dirname(dstpath);
+      const dirExists = await pathExists(dir);
+      if (!dirExists) {
+        await mkdir.mkdirs(dir);
+      }
+      await fs19.link(srcpath, dstpath);
+    }
+    function createLinkSync(srcpath, dstpath) {
+      let dstStat;
+      try {
+        dstStat = fs19.lstatSync(dstpath, { bigint: true });
+      } catch {
+      }
+      try {
+        const srcStat = fs19.lstatSync(srcpath, { bigint: true });
+        if (dstStat && areIdentical(srcStat, dstStat)) return;
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureLink");
+        throw err;
+      }
+      const dir = path23.dirname(dstpath);
+      const dirExists = fs19.existsSync(dir);
+      if (dirExists) return fs19.linkSync(srcpath, dstpath);
+      mkdir.mkdirsSync(dir);
+      return fs19.linkSync(srcpath, dstpath);
+    }
+    module2.exports = {
+      createLink: u(createLink),
+      createLinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js
+var require_symlink_paths = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var { pathExists } = require_path_exists();
+    var u = require_universalify().fromPromise;
+    async function symlinkPaths(srcpath, dstpath) {
+      if (path23.isAbsolute(srcpath)) {
+        try {
+          await fs19.lstat(srcpath);
+        } catch (err) {
+          err.message = err.message.replace("lstat", "ensureSymlink");
+          throw err;
+        }
+        return {
+          toCwd: srcpath,
+          toDst: srcpath
+        };
+      }
+      const dstdir = path23.dirname(dstpath);
+      const relativeToDst = path23.join(dstdir, srcpath);
+      const exists = await pathExists(relativeToDst);
+      if (exists) {
+        return {
+          toCwd: relativeToDst,
+          toDst: srcpath
+        };
+      }
+      try {
+        await fs19.lstat(srcpath);
+      } catch (err) {
+        err.message = err.message.replace("lstat", "ensureSymlink");
+        throw err;
+      }
+      return {
+        toCwd: srcpath,
+        toDst: path23.relative(dstdir, srcpath)
+      };
+    }
+    function symlinkPathsSync(srcpath, dstpath) {
+      if (path23.isAbsolute(srcpath)) {
+        const exists2 = fs19.existsSync(srcpath);
+        if (!exists2) throw new Error("absolute srcpath does not exist");
+        return {
+          toCwd: srcpath,
+          toDst: srcpath
+        };
+      }
+      const dstdir = path23.dirname(dstpath);
+      const relativeToDst = path23.join(dstdir, srcpath);
+      const exists = fs19.existsSync(relativeToDst);
+      if (exists) {
+        return {
+          toCwd: relativeToDst,
+          toDst: srcpath
+        };
+      }
+      const srcExists = fs19.existsSync(srcpath);
+      if (!srcExists) throw new Error("relative srcpath does not exist");
+      return {
+        toCwd: srcpath,
+        toDst: path23.relative(dstdir, srcpath)
+      };
+    }
+    module2.exports = {
+      symlinkPaths: u(symlinkPaths),
+      symlinkPathsSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js
+var require_symlink_type = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var u = require_universalify().fromPromise;
+    async function symlinkType(srcpath, type) {
+      if (type) return type;
+      let stats;
+      try {
+        stats = await fs19.lstat(srcpath);
+      } catch {
+        return "file";
+      }
+      return stats && stats.isDirectory() ? "dir" : "file";
+    }
+    function symlinkTypeSync(srcpath, type) {
+      if (type) return type;
+      let stats;
+      try {
+        stats = fs19.lstatSync(srcpath);
+      } catch {
+        return "file";
+      }
+      return stats && stats.isDirectory() ? "dir" : "file";
+    }
+    module2.exports = {
+      symlinkType: u(symlinkType),
+      symlinkTypeSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js
+var require_symlink = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var path23 = require("path");
+    var fs19 = require_fs();
+    var { mkdirs, mkdirsSync } = require_mkdirs();
+    var { symlinkPaths, symlinkPathsSync } = require_symlink_paths();
+    var { symlinkType, symlinkTypeSync } = require_symlink_type();
+    var { pathExists } = require_path_exists();
+    var { areIdentical } = require_stat();
+    async function createSymlink(srcpath, dstpath, type) {
+      let stats;
+      try {
+        stats = await fs19.lstat(dstpath);
+      } catch {
+      }
+      if (stats && stats.isSymbolicLink()) {
+        let srcStat;
+        if (path23.isAbsolute(srcpath)) {
+          srcStat = await fs19.stat(srcpath, { bigint: true });
+        } else {
+          const dstdir = path23.dirname(dstpath);
+          const relativeToDst = path23.join(dstdir, srcpath);
+          try {
+            srcStat = await fs19.stat(relativeToDst, { bigint: true });
+          } catch {
+            srcStat = await fs19.stat(srcpath, { bigint: true });
+          }
+        }
+        const dstStat = await fs19.stat(dstpath, { bigint: true });
+        if (areIdentical(srcStat, dstStat)) return;
+      }
+      const relative7 = await symlinkPaths(srcpath, dstpath);
+      srcpath = relative7.toDst;
+      const toType = await symlinkType(relative7.toCwd, type);
+      const dir = path23.dirname(dstpath);
+      if (!await pathExists(dir)) {
+        await mkdirs(dir);
+      }
+      return fs19.symlink(srcpath, dstpath, toType);
+    }
+    function createSymlinkSync(srcpath, dstpath, type) {
+      let stats;
+      try {
+        stats = fs19.lstatSync(dstpath);
+      } catch {
+      }
+      if (stats && stats.isSymbolicLink()) {
+        let srcStat;
+        if (path23.isAbsolute(srcpath)) {
+          srcStat = fs19.statSync(srcpath, { bigint: true });
+        } else {
+          const dstdir = path23.dirname(dstpath);
+          const relativeToDst = path23.join(dstdir, srcpath);
+          try {
+            srcStat = fs19.statSync(relativeToDst, { bigint: true });
+          } catch {
+            srcStat = fs19.statSync(srcpath, { bigint: true });
+          }
+        }
+        const dstStat = fs19.statSync(dstpath, { bigint: true });
+        if (areIdentical(srcStat, dstStat)) return;
+      }
+      const relative7 = symlinkPathsSync(srcpath, dstpath);
+      srcpath = relative7.toDst;
+      type = symlinkTypeSync(relative7.toCwd, type);
+      const dir = path23.dirname(dstpath);
+      const exists = fs19.existsSync(dir);
+      if (exists) return fs19.symlinkSync(srcpath, dstpath, type);
+      mkdirsSync(dir);
+      return fs19.symlinkSync(srcpath, dstpath, type);
+    }
+    module2.exports = {
+      createSymlink: u(createSymlink),
+      createSymlinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js
+var require_ensure = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) {
+    "use strict";
+    var { createFile, createFileSync } = require_file();
+    var { createLink, createLinkSync } = require_link();
+    var { createSymlink, createSymlinkSync } = require_symlink();
+    module2.exports = {
+      // file
+      createFile,
+      createFileSync,
+      ensureFile: createFile,
+      ensureFileSync: createFileSync,
+      // link
+      createLink,
+      createLinkSync,
+      ensureLink: createLink,
+      ensureLinkSync: createLinkSync,
+      // symlink
+      createSymlink,
+      createSymlinkSync,
+      ensureSymlink: createSymlink,
+      ensureSymlinkSync: createSymlinkSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/jsonfile/utils.js
+var require_utils2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/jsonfile/utils.js"(exports2, module2) {
+    function stringify3(obj, { EOL = "\n", finalEOL = true, replacer = null, spaces } = {}) {
+      const EOF = finalEOL ? EOL : "";
+      const str = JSON.stringify(obj, replacer, spaces);
+      if (str === void 0) {
+        throw new TypeError(`Converting ${typeof obj} value to JSON is not supported`);
+      }
+      return str.replace(/\n/g, EOL) + EOF;
+    }
+    function stripBom(content) {
+      if (Buffer.isBuffer(content)) content = content.toString("utf8");
+      return content.replace(/^\uFEFF/, "");
+    }
+    module2.exports = { stringify: stringify3, stripBom };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/jsonfile/index.js
+var require_jsonfile = __commonJS({
+  "../../aws-cdk-lib/node_modules/jsonfile/index.js"(exports2, module2) {
+    var _fs;
+    try {
+      _fs = require_graceful_fs();
+    } catch (_) {
+      _fs = require("fs");
+    }
+    var universalify = require_universalify();
+    var { stringify: stringify3, stripBom } = require_utils2();
+    async function _readFile(file, options = {}) {
+      if (typeof options === "string") {
+        options = { encoding: options };
+      }
+      const fs19 = options.fs || _fs;
+      const shouldThrow = "throws" in options ? options.throws : true;
+      let data = await universalify.fromCallback(fs19.readFile)(file, options);
+      data = stripBom(data);
+      let obj;
+      try {
+        obj = JSON.parse(data, options ? options.reviver : null);
+      } catch (err) {
+        if (shouldThrow) {
+          err.message = `${file}: ${err.message}`;
+          throw err;
+        } else {
+          return null;
+        }
+      }
+      return obj;
+    }
+    var readFile = universalify.fromPromise(_readFile);
+    function readFileSync7(file, options = {}) {
+      if (typeof options === "string") {
+        options = { encoding: options };
+      }
+      const fs19 = options.fs || _fs;
+      const shouldThrow = "throws" in options ? options.throws : true;
+      try {
+        let content = fs19.readFileSync(file, options);
+        content = stripBom(content);
+        return JSON.parse(content, options.reviver);
+      } catch (err) {
+        if (shouldThrow) {
+          err.message = `${file}: ${err.message}`;
+          throw err;
+        } else {
+          return null;
+        }
+      }
+    }
+    async function _writeFile(file, obj, options = {}) {
+      const fs19 = options.fs || _fs;
+      const str = stringify3(obj, options);
+      await universalify.fromCallback(fs19.writeFile)(file, str, options);
+    }
+    var writeFile = universalify.fromPromise(_writeFile);
+    function writeFileSync10(file, obj, options = {}) {
+      const fs19 = options.fs || _fs;
+      const str = stringify3(obj, options);
+      return fs19.writeFileSync(file, str, options);
+    }
+    module2.exports = {
+      readFile,
+      readFileSync: readFileSync7,
+      writeFile,
+      writeFileSync: writeFileSync10
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js
+var require_jsonfile2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) {
+    "use strict";
+    var jsonFile = require_jsonfile();
+    module2.exports = {
+      // jsonfile exports
+      readJson: jsonFile.readFile,
+      readJsonSync: jsonFile.readFileSync,
+      writeJson: jsonFile.writeFile,
+      writeJsonSync: jsonFile.writeFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js
+var require_output_file = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var mkdir = require_mkdirs();
+    var pathExists = require_path_exists().pathExists;
+    async function outputFile(file, data, encoding = "utf-8") {
+      const dir = path23.dirname(file);
+      if (!await pathExists(dir)) {
+        await mkdir.mkdirs(dir);
+      }
+      return fs19.writeFile(file, data, encoding);
+    }
+    function outputFileSync(file, ...args) {
+      const dir = path23.dirname(file);
+      if (!fs19.existsSync(dir)) {
+        mkdir.mkdirsSync(dir);
+      }
+      fs19.writeFileSync(file, ...args);
+    }
+    module2.exports = {
+      outputFile: u(outputFile),
+      outputFileSync
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js
+var require_output_json = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) {
+    "use strict";
+    var { stringify: stringify3 } = require_utils2();
+    var { outputFile } = require_output_file();
+    async function outputJson(file, data, options = {}) {
+      const str = stringify3(data, options);
+      await outputFile(file, str, options);
+    }
+    module2.exports = outputJson;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js
+var require_output_json_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) {
+    "use strict";
+    var { stringify: stringify3 } = require_utils2();
+    var { outputFileSync } = require_output_file();
+    function outputJsonSync(file, data, options) {
+      const str = stringify3(data, options);
+      outputFileSync(file, str, options);
+    }
+    module2.exports = outputJsonSync;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js
+var require_json = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/json/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    var jsonFile = require_jsonfile2();
+    jsonFile.outputJson = u(require_output_json());
+    jsonFile.outputJsonSync = require_output_json_sync();
+    jsonFile.outputJSON = jsonFile.outputJson;
+    jsonFile.outputJSONSync = jsonFile.outputJsonSync;
+    jsonFile.writeJSON = jsonFile.writeJson;
+    jsonFile.writeJSONSync = jsonFile.writeJsonSync;
+    jsonFile.readJSON = jsonFile.readJson;
+    jsonFile.readJSONSync = jsonFile.readJsonSync;
+    module2.exports = jsonFile;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js
+var require_move = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_fs();
+    var path23 = require("path");
+    var { copy } = require_copy2();
+    var { remove } = require_remove();
+    var { mkdirp } = require_mkdirs();
+    var { pathExists } = require_path_exists();
+    var stat = require_stat();
+    async function move(src, dest, opts = {}) {
+      const overwrite = opts.overwrite || opts.clobber || false;
+      const { srcStat, isChangingCase = false } = await stat.checkPaths(src, dest, "move", opts);
+      await stat.checkParentPaths(src, srcStat, dest, "move");
+      const destParent = path23.dirname(dest);
+      const parsedParentPath = path23.parse(destParent);
+      if (parsedParentPath.root !== destParent) {
+        await mkdirp(destParent);
+      }
+      return doRename(src, dest, overwrite, isChangingCase);
+    }
+    async function doRename(src, dest, overwrite, isChangingCase) {
+      if (!isChangingCase) {
+        if (overwrite) {
+          await remove(dest);
+        } else if (await pathExists(dest)) {
+          throw new Error("dest already exists.");
+        }
+      }
+      try {
+        await fs19.rename(src, dest);
+      } catch (err) {
+        if (err.code !== "EXDEV") {
+          throw err;
+        }
+        await moveAcrossDevice(src, dest, overwrite);
+      }
+    }
+    async function moveAcrossDevice(src, dest, overwrite) {
+      const opts = {
+        overwrite,
+        errorOnExist: true,
+        preserveTimestamps: true
+      };
+      await copy(src, dest, opts);
+      return remove(src);
+    }
+    module2.exports = move;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js
+var require_move_sync = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) {
+    "use strict";
+    var fs19 = require_graceful_fs();
+    var path23 = require("path");
+    var copySync2 = require_copy2().copySync;
+    var removeSync2 = require_remove().removeSync;
+    var mkdirpSync = require_mkdirs().mkdirpSync;
+    var stat = require_stat();
+    function moveSync(src, dest, opts) {
+      opts = opts || {};
+      const overwrite = opts.overwrite || opts.clobber || false;
+      const { srcStat, isChangingCase = false } = stat.checkPathsSync(src, dest, "move", opts);
+      stat.checkParentPathsSync(src, srcStat, dest, "move");
+      if (!isParentRoot(dest)) mkdirpSync(path23.dirname(dest));
+      return doRename(src, dest, overwrite, isChangingCase);
+    }
+    function isParentRoot(dest) {
+      const parent = path23.dirname(dest);
+      const parsedPath = path23.parse(parent);
+      return parsedPath.root === parent;
+    }
+    function doRename(src, dest, overwrite, isChangingCase) {
+      if (isChangingCase) return rename(src, dest, overwrite);
+      if (overwrite) {
+        removeSync2(dest);
+        return rename(src, dest, overwrite);
+      }
+      if (fs19.existsSync(dest)) throw new Error("dest already exists.");
+      return rename(src, dest, overwrite);
+    }
+    function rename(src, dest, overwrite) {
+      try {
+        fs19.renameSync(src, dest);
+      } catch (err) {
+        if (err.code !== "EXDEV") throw err;
+        return moveAcrossDevice(src, dest, overwrite);
+      }
+    }
+    function moveAcrossDevice(src, dest, overwrite) {
+      const opts = {
+        overwrite,
+        errorOnExist: true,
+        preserveTimestamps: true
+      };
+      copySync2(src, dest, opts);
+      return removeSync2(src);
+    }
+    module2.exports = moveSync;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js
+var require_move2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/move/index.js"(exports2, module2) {
+    "use strict";
+    var u = require_universalify().fromPromise;
+    module2.exports = {
+      move: u(require_move()),
+      moveSync: require_move_sync()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/fs-extra/lib/index.js
+var require_lib5 = __commonJS({
+  "../../aws-cdk-lib/node_modules/fs-extra/lib/index.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // Export promiseified graceful-fs:
+      ...require_fs(),
+      // Export extra methods:
+      ...require_copy2(),
+      ...require_empty(),
+      ...require_ensure(),
+      ...require_json(),
+      ...require_mkdirs(),
+      ...require_move2(),
+      ...require_output_file(),
+      ...require_path_exists(),
+      ...require_remove()
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts
+var AWS_CDK_CONSTRUCTOR_PROPS;
+var init_classes = __esm({
+  "../../aws-cdk-lib/core/lib/analytics-data-source/classes.ts"() {
+    "use strict";
+    AWS_CDK_CONSTRUCTOR_PROPS = {
+      "@aws-cdk.aws-amplify-alpha": {
+        "App": {
+          "appName": "*",
+          "sourceCodeProvider": "*",
+          "autoBranchCreation": {
+            "patterns": "*",
+            "basicAuth": "*",
+            "buildSpec": "*",
+            "autoBuild": "boolean",
+            "pullRequestPreview": "boolean",
+            "environmentVariables": "*",
+            "pullRequestEnvironmentName": "*",
+            "stage": "*"
+          },
+          "autoBranchDeletion": "boolean",
+          "basicAuth": "*",
+          "buildSpec": "*",
+          "customResponseHeaders": {
+            "appRoot": "*",
+            "pattern": "*",
+            "headers": "*"
+          },
+          "customRules": "*",
+          "description": "*",
+          "environmentVariables": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "platform": "Platform",
+          "cacheConfigType": "CacheConfigType",
+          "computeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "buildComputeType": "BuildComputeType",
+          "addCustomRule": [
+            "*"
+          ],
+          "addEnvironment": [
+            "*",
+            "*"
+          ],
+          "addAutoBranchEnvironment": [
+            "*",
+            "*"
+          ],
+          "addBranch": [
+            "*",
+            {
+              "basicAuth": "*",
+              "branchName": "*",
+              "buildSpec": "*",
+              "description": "*",
+              "autoBuild": "boolean",
+              "pullRequestPreview": "boolean",
+              "environmentVariables": "*",
+              "pullRequestEnvironmentName": "*",
+              "stage": "*",
+              "asset": "*",
+              "performanceMode": "boolean",
+              "skewProtection": "boolean",
+              "computeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ],
+          "addDomain": [
+            "*",
+            {
+              "domainName": "*",
+              "subDomains": {
+                "branch": {
+                  "branchName": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "prefix": "*"
+              },
+              "enableAutoSubdomain": "boolean",
+              "autoSubdomainCreationPatterns": "*",
+              "customCertificate": {
+                "certificateArn": "*"
+              }
+            }
+          ]
+        },
+        "Branch": {
+          "app": {
+            "appId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "basicAuth": "*",
+          "branchName": "*",
+          "buildSpec": "*",
+          "description": "*",
+          "autoBuild": "boolean",
+          "pullRequestPreview": "boolean",
+          "environmentVariables": "*",
+          "pullRequestEnvironmentName": "*",
+          "stage": "*",
+          "asset": "*",
+          "performanceMode": "boolean",
+          "skewProtection": "boolean",
+          "computeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addEnvironment": [
+            "*",
+            "*"
+          ]
+        },
+        "Domain": {
+          "app": {
+            "appId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoSubDomainIamRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "domainName": "*",
+          "subDomains": {
+            "branch": {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "prefix": "*"
+          },
+          "enableAutoSubdomain": "boolean",
+          "autoSubdomainCreationPatterns": "*",
+          "customCertificate": {
+            "certificateArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mapSubDomain": [
+            {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "*"
+          ],
+          "mapRoot": [
+            {
+              "branchName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-apprunner-alpha": {
+        "AutoScalingConfiguration": {
+          "autoScalingConfigurationName": "*",
+          "maxConcurrency": "*",
+          "maxSize": "*",
+          "minSize": "*"
+        },
+        "ObservabilityConfiguration": {
+          "observabilityConfigurationName": "*",
+          "traceConfigurationVendor": "TraceConfigurationVendor"
+        },
+        "Service": {
+          "source": "*",
+          "autoDeploymentsEnabled": "boolean",
+          "autoScalingConfiguration": {
+            "autoScalingConfigurationArn": "*",
+            "autoScalingConfigurationName": "*",
+            "autoScalingConfigurationRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cpu": "*",
+          "memory": "*",
+          "accessRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serviceName": "*",
+          "vpcConnector": {
+            "vpcConnectorName": "*",
+            "vpcConnectorArn": "*",
+            "vpcConnectorRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "isPubliclyAccessible": "boolean",
+          "healthCheck": "*",
+          "kmsKey": "*",
+          "ipAddressType": "IpAddressType",
+          "observabilityConfiguration": {
+            "observabilityConfigurationName": "*",
+            "observabilityConfigurationArn": "*",
+            "observabilityConfigurationRevision": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addToRolePolicy": [
+            "*"
+          ],
+          "addEnvironmentVariable": [
+            "*",
+            "*"
+          ],
+          "addSecret": [
+            "*",
+            "*"
+          ]
+        },
+        "VpcConnector": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcConnectorName": "*"
+        },
+        "VpcIngressConnection": {
+          "vpcIngressConnectionName": "*",
+          "service": {
+            "serviceName": "*",
+            "serviceArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "interfaceVpcEndpoint": {
+            "vpcEndpointId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          }
+        }
+      },
+      "@aws-cdk.aws-cloud9-alpha": {
+        "Ec2Environment": {
+          "owner": "*",
+          "instanceType": "*",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ec2EnvironmentName": "*",
+          "description": "*",
+          "clonedRepositories": "*",
+          "connectionType": "ConnectionType",
+          "imageId": "ImageId",
+          "automaticStop": "*"
+        }
+      },
+      "@aws-cdk.aws-codestar-alpha": {
+        "GitHubRepository": {
+          "owner": "*",
+          "repositoryName": "*",
+          "accessToken": "*",
+          "contentsBucket": "*",
+          "contentsKey": "*",
+          "contentsS3Version": "*",
+          "enableIssues": "boolean",
+          "visibility": "RepositoryVisibility",
+          "description": "*"
+        }
+      },
+      "@aws-cdk.aws-dsql-alpha": {
+        "Cluster": {}
+      },
+      "@aws-cdk.aws-ec2-alpha": {
+        "IpamPool": {
+          "ipamScopeId": "*",
+          "addressFamily": "AddressFamily",
+          "ipv4ProvisionedCidrs": "*",
+          "locale": "*",
+          "publicIpSource": "IpamPoolPublicIpSource",
+          "awsService": "AwsServiceName",
+          "ipamPoolName": "*",
+          "provisionCidr": [
+            "*",
+            {
+              "netmaskLength": "*",
+              "cidr": "*"
+            }
+          ]
+        },
+        "IpamScope": {
+          "ipamId": "*",
+          "ipamOperatingRegions": "*",
+          "ipamScopeId": "*",
+          "ipamScopeName": "*"
+        },
+        "Ipam": {
+          "addScope": [
+            "*",
+            "*",
+            {
+              "ipamScopeName": "*"
+            }
+          ]
+        },
+        "EgressOnlyInternetGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "egressOnlyInternetGatewayName": "*"
+        },
+        "InternetGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetGatewayName": "*"
+        },
+        "VPNGatewayV2": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "type": "VpnConnectionType",
+          "amazonSideAsn": "*",
+          "vpnGatewayName": "*",
+          "vpnRoutePropagation": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "NatGateway": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnet": {
+            "ipv6CidrBlock": "*",
+            "subnetType": "SubnetType",
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "allocationId": "*",
+          "connectivityType": "NatConnectivityType",
+          "maxDrainDuration": "*",
+          "privateIpAddress": "*",
+          "secondaryAllocationIds": "*",
+          "secondaryPrivateIpAddressCount": "*",
+          "secondaryPrivateIpAddresses": "*",
+          "natGatewayName": "*"
+        },
+        "VPCPeeringConnection": {
+          "requestorVpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "acceptorVpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "peerRoleArn": "*",
+          "vpcPeeringConnectionName": "*"
+        },
+        "Route": {
+          "routeTable": {
+            "routeTableId": "*"
+          },
+          "destination": "*",
+          "target": "*",
+          "routeName": "*"
+        },
+        "RouteTable": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "routeTableName": "*",
+          "addRoute": [
+            "*",
+            "*",
+            "*",
+            "*"
+          ]
+        },
+        "SubnetV2": {
+          "vpc": {
+            "secondaryCidrBlock": {
+              "amazonProvidedIpv6CidrBlock": "boolean",
+              "cidrBlock": "*",
+              "ipv6IpamPoolId": "*",
+              "ipv4IpamPoolId": "*",
+              "ipv6CidrBlock": "*",
+              "ipv6Pool": "*"
+            },
+            "ipv4CidrBlock": "*",
+            "region": "*",
+            "ownerAccountId": "*",
+            "ipv4IpamProvisionedCidrs": "*",
+            "vpcName": "*",
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv4CidrBlock": "*",
+          "ipv6CidrBlock": "*",
+          "availabilityZone": "*",
+          "routeTable": {
+            "routeTableId": "*"
+          },
+          "defaultRouteTableName": "*",
+          "subnetType": "SubnetType",
+          "subnetName": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "mapPublicIpOnLaunch": "boolean",
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "TransitGatewayRouteTableAssociation": {
+          "transitGatewayVpcAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteTableAssociationName": "*"
+        },
+        "TransitGatewayRouteTablePropagation": {
+          "transitGatewayVpcAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteTablePropagationName": "*"
+        },
+        "TransitGatewayRouteTable": {
+          "transitGateway": {
+            "transitGatewayId": "*",
+            "transitGatewayArn": "*",
+            "defaultRouteTable": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "routeTableId": "*"
+            },
+            "defaultRouteTableAssociation": "boolean",
+            "defaultRouteTablePropagation": "boolean",
+            "dnsSupport": "boolean",
+            "securityGroupReferencingSupport": "boolean",
+            "routerType": "RouterType",
+            "routerTargetId": "*"
+          },
+          "transitGatewayRouteTableName": "*"
+        },
+        "TransitGatewayRoute": {
+          "transitGatewayAttachment": {
+            "transitGatewayAttachmentId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "destinationCidrBlock": "*",
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteName": "*"
+        },
+        "TransitGatewayBlackholeRoute": {
+          "destinationCidrBlock": "*",
+          "transitGatewayRouteTable": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "routeTableId": "*"
+          },
+          "transitGatewayRouteName": "*"
+        },
+        "TransitGatewayVpcAttachment": {
+          "transitGateway": {
+            "transitGatewayId": "*",
+            "transitGatewayArn": "*",
+            "defaultRouteTable": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "routeTableId": "*"
+            },
+            "defaultRouteTableAssociation": "boolean",
+            "defaultRouteTablePropagation": "boolean",
+            "dnsSupport": "boolean",
+            "securityGroupReferencingSupport": "boolean",
+            "routerType": "RouterType",
+            "routerTargetId": "*"
+          },
+          "subnets": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcAttachmentOptions": {
+            "applianceModeSupport": "boolean",
+            "dnsSupport": "boolean",
+            "ipv6Support": "boolean",
+            "securityGroupReferencingSupport": "boolean"
+          },
+          "transitGatewayAttachmentName": "*"
+        },
+        "TransitGateway": {
+          "transitGatewayName": "*",
+          "amazonSideAsn": "*",
+          "autoAcceptSharedAttachments": "boolean",
+          "defaultRouteTableAssociation": "boolean",
+          "defaultRouteTablePropagation": "boolean",
+          "description": "*",
+          "dnsSupport": "boolean",
+          "securityGroupReferencingSupport": "boolean",
+          "transitGatewayCidrBlocks": "*"
+        },
+        "VpcV2": {
+          "primaryAddressBlock": "*",
+          "secondaryAddressBlocks": "*",
+          "enableDnsHostnames": "boolean",
+          "enableDnsSupport": "boolean",
+          "defaultInstanceTenancy": "DefaultInstanceTenancy",
+          "vpcName": "*"
+        },
+        "VPCCidrBlock": {
+          "vpcId": "*",
+          "amazonProvidedIpv6CidrBlock": "boolean",
+          "cidrBlock": "*",
+          "cidrBlockName": "*",
+          "ipv6NetmaskLength": "*",
+          "ipv4NetmaskLength": "*",
+          "ipv6IpamPoolId": "*",
+          "ipv4IpamPoolId": "*",
+          "ipv4IpamProvisionedCidrs": "*",
+          "ipv6CidrBlock": "*",
+          "ipv6Pool": "*"
+        }
+      },
+      "@aws-cdk.aws-elasticache-alpha": {
+        "IamUser": {
+          "userName": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*",
+          "grantConnect": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "NoPasswordUser": {
+          "userName": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*"
+        },
+        "PasswordUser": {
+          "userName": "*",
+          "passwords": "*",
+          "engine": "*",
+          "userId": "*",
+          "accessControl": "*"
+        },
+        "ServerlessCache": {
+          "engine": "*",
+          "serverlessCacheName": "*",
+          "description": "*",
+          "cacheUsageLimits": {
+            "dataStorageMinimumSize": "*",
+            "requestRateLimitMinimum": "*",
+            "requestRateLimitMaximum": "*"
+          },
+          "backup": {
+            "backupTime": "*",
+            "backupRetentionLimit": "*",
+            "backupNameBeforeDeletion": "*",
+            "backupArnsToRestore": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "userGroup": {
+            "userGroupName": "*",
+            "engine": "*",
+            "users": {
+              "userId": "*",
+              "userName": "*",
+              "userArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "userGroupArn": "*"
+          }
+        },
+        "UserGroup": {
+          "userGroupName": "*",
+          "engine": "*",
+          "users": {
+            "userId": "*",
+            "engine": "*",
+            "userName": "*",
+            "userArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addUser": [
+            {
+              "userId": "*",
+              "engine": "*",
+              "userName": "*",
+              "userArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-gamelift-alpha": {
+        "Alias": {
+          "aliasName": "*",
+          "description": "*",
+          "fleet": {
+            "fleetId": "*",
+            "fleetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "resourceArnForDestination": "*"
+          },
+          "terminalMessage": "*"
+        },
+        "BuildFleet": {
+          "content": {
+            "buildId": "*",
+            "buildArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "ingressRules": {
+            "port": "*",
+            "source": {
+              "uniqueId": "*"
+            }
+          },
+          "fleetName": "*",
+          "description": "*",
+          "useSpot": "boolean",
+          "useCertificate": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "peerVpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "metricGroup": "*",
+          "instanceType": "*",
+          "desiredCapacity": "*",
+          "minSize": "*",
+          "maxSize": "*",
+          "protectNewGameSession": "boolean",
+          "runtimeConfiguration": {
+            "gameSessionActivationTimeout": "*",
+            "maxConcurrentGameSessionActivations": "*",
+            "serverProcesses": {
+              "concurrentExecutions": "*",
+              "launchPath": "*",
+              "parameters": "*"
+            }
+          },
+          "locations": {
+            "region": "*",
+            "capacity": {
+              "desiredCapacity": "*",
+              "maxSize": "*",
+              "minSize": "*"
+            }
+          },
+          "resourceCreationLimitPolicy": {
+            "newGameSessionsPerCreator": "*",
+            "policyPeriod": "*"
+          },
+          "addIngressRule": [
+            {
+              "uniqueId": "*"
+            },
+            "*"
+          ]
+        },
+        "Build": {
+          "buildName": "*",
+          "buildVersion": "*",
+          "operatingSystem": "OperatingSystem",
+          "content": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serverSdkVersion": "*"
+        },
+        "GameServerGroup": {
+          "gameServerGroupName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minSize": "*",
+          "maxSize": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceDefinitions": {
+            "instanceType": "*",
+            "weight": "*"
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "protectGameServer": "boolean",
+          "autoScalingPolicy": {
+            "estimatedInstanceWarmup": "*",
+            "targetTrackingConfiguration": "*"
+          },
+          "deleteOption": "DeleteOption",
+          "balancingStrategy": "BalancingStrategy"
+        },
+        "GameSessionQueue": {
+          "gameSessionQueueName": "*",
+          "customEventData": "*",
+          "allowedLocations": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "playerLatencyPolicies": {
+            "maximumIndividualPlayerLatency": "*"
+          },
+          "priorityConfiguration": {
+            "locationOrder": "*",
+            "priorityOrder": "PriorityType"
+          },
+          "timeout": "*",
+          "destinations": {
+            "resourceArnForDestination": "*"
+          },
+          "addDestination": [
+            {
+              "resourceArnForDestination": "*"
+            }
+          ]
+        },
+        "MatchmakingRuleSet": {
+          "matchmakingRuleSetName": "*",
+          "content": "*"
+        },
+        "QueuedMatchmakingConfiguration": {
+          "additionalPlayerCount": "*",
+          "manualBackfillMode": "boolean",
+          "gameProperties": {
+            "key": "*",
+            "value": "*"
+          },
+          "gameSessionData": "*",
+          "gameSessionQueues": {
+            "gameSessionQueueName": "*",
+            "gameSessionQueueArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "matchmakingConfigurationName": "*",
+          "description": "*",
+          "requireAcceptance": "boolean",
+          "acceptanceTimeout": "*",
+          "customEventData": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "requestTimeout": "*",
+          "ruleSet": {
+            "matchmakingRuleSetName": "*",
+            "matchmakingRuleSetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addGameSessionQueue": [
+            {
+              "gameSessionQueueName": "*",
+              "gameSessionQueueArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Script": {
+          "scriptName": "*",
+          "scriptVersion": "*",
+          "content": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "StandaloneMatchmakingConfiguration": {
+          "matchmakingConfigurationName": "*",
+          "description": "*",
+          "requireAcceptance": "boolean",
+          "acceptanceTimeout": "*",
+          "customEventData": "*",
+          "notificationTarget": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "requestTimeout": "*",
+          "ruleSet": {
+            "matchmakingRuleSetName": "*",
+            "matchmakingRuleSetArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-glue-alpha": {
+        "Catalog": {
+          "catalogName": "*",
+          "description": "*",
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "AccountCatalog": {
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "ImportedCatalog": {},
+        "Connection": {
+          "type": "*",
+          "connectionName": "*",
+          "description": "*",
+          "properties": "*",
+          "secret": "*",
+          "matchCriteria": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "network": "*",
+          "addProperty": [
+            "*",
+            "*"
+          ]
+        },
+        "DataQualityRuleset": {
+          "rulesetName": "*",
+          "description": "*",
+          "dqdl": "*",
+          "tags": "*",
+          "targetTable": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Database": {
+          "databaseName": "*",
+          "locationUri": "*",
+          "description": "*",
+          "catalog": {
+            "catalogId": "*",
+            "catalogArn": "*",
+            "encryptionKey": "*",
+            "connectionPasswordKey": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ExternalTable": {
+          "connection": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "externalDataLocation": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "S3Table": {
+          "storage": "*",
+          "s3Prefix": "*",
+          "clientSideEncryption": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "SecurityConfiguration": {
+          "securityConfigurationName": "*",
+          "cloudWatchEncryption": "*",
+          "jobBookmarksEncryption": "*",
+          "s3Encryption": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-imagebuilder-alpha": {
+        "Component": {
+          "data": "*",
+          "platform": "Platform",
+          "componentName": "*",
+          "componentVersion": "*",
+          "description": "*",
+          "changeDescription": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "supportedOsVersions": "*",
+          "tags": "*"
+        },
+        "ContainerRecipe": {
+          "baseImage": "*",
+          "targetRepository": "*",
+          "containerRecipeName": "*",
+          "containerRecipeVersion": "*",
+          "description": "*",
+          "dockerfile": "*",
+          "components": {
+            "component": {
+              "componentArn": "*",
+              "componentName": "*",
+              "componentVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "parameters": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workingDirectory": "*",
+          "osVersion": "*",
+          "instanceBlockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "instanceImage": "*",
+          "tags": "*",
+          "addInstanceBlockDevice": [
+            {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            }
+          ]
+        },
+        "DistributionConfiguration": {
+          "amiDistributions": {
+            "region": "*",
+            "amiTags": "*",
+            "amiDescription": "*",
+            "amiKmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "amiLaunchPermission": {
+              "organizationalUnitArns": "*",
+              "organizationArns": "*",
+              "isPublicUserGroup": "boolean",
+              "accountIds": "*"
+            },
+            "amiName": "*",
+            "amiTargetAccountIds": "*",
+            "ssmParameters": {
+              "amiAccount": "*",
+              "dataType": "ParameterDataType",
+              "parameter": {
+                "stringValue": "*",
+                "parameterArn": "*",
+                "parameterName": "*",
+                "parameterType": "*"
+              }
+            },
+            "launchTemplates": {
+              "launchTemplate": {
+                "versionNumber": "*",
+                "launchTemplateId": "*",
+                "launchTemplateName": "*"
+              },
+              "accountId": "*",
+              "setDefaultVersion": "boolean"
+            },
+            "fastLaunchConfigurations": {
+              "enabled": "boolean",
+              "maxParallelLaunches": "*",
+              "targetSnapshotCount": "*"
+            },
+            "licenseConfigurationArns": "*"
+          },
+          "containerDistributions": {
+            "region": "*",
+            "containerRepository": "*",
+            "containerDescription": "*",
+            "containerTags": "*"
+          },
+          "distributionConfigurationName": "*",
+          "description": "*",
+          "tags": "*",
+          "addAmiDistributions": [
+            {
+              "region": "*",
+              "amiTags": "*",
+              "amiDescription": "*",
+              "amiKmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "amiLaunchPermission": {
+                "organizationalUnitArns": "*",
+                "organizationArns": "*",
+                "isPublicUserGroup": "boolean",
+                "accountIds": "*"
+              },
+              "amiName": "*",
+              "amiTargetAccountIds": "*",
+              "ssmParameters": {
+                "amiAccount": "*",
+                "dataType": "ParameterDataType",
+                "parameter": {
+                  "stringValue": "*",
+                  "parameterArn": "*",
+                  "parameterName": "*",
+                  "parameterType": "*"
+                }
+              },
+              "launchTemplates": {
+                "launchTemplate": {
+                  "versionNumber": "*",
+                  "launchTemplateId": "*",
+                  "launchTemplateName": "*"
+                },
+                "accountId": "*",
+                "setDefaultVersion": "boolean"
+              },
+              "fastLaunchConfigurations": {
+                "enabled": "boolean",
+                "maxParallelLaunches": "*",
+                "targetSnapshotCount": "*"
+              },
+              "licenseConfigurationArns": "*"
+            }
+          ],
+          "addContainerDistributions": [
+            {
+              "region": "*",
+              "containerRepository": "*",
+              "containerDescription": "*",
+              "containerTags": "*"
+            }
+          ]
+        },
+        "ImagePipeline": {
+          "recipe": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imagePipelineName": "*",
+          "description": "*",
+          "schedule": {
+            "expression": "*",
+            "autoDisableFailureCount": "*",
+            "startCondition": "ScheduleStartCondition"
+          },
+          "status": "ImagePipelineStatus",
+          "infrastructureConfiguration": {
+            "infrastructureConfigurationArn": "*",
+            "infrastructureConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "distributionConfiguration": {
+            "distributionConfigurationArn": "*",
+            "distributionConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workflows": {
+            "workflow": {
+              "workflowArn": "*",
+              "workflowName": "*",
+              "workflowType": "*",
+              "workflowVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "onFailure": "WorkflowOnFailure",
+            "parallelGroup": "*",
+            "parameters": "*"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imagePipelineLogGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageLogGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageScanningEnabled": "boolean",
+          "imageScanningEcrRepository": {
+            "repositoryName": "*",
+            "repositoryArn": "*",
+            "repositoryUri": "*",
+            "registryUri": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imageScanningEcrTags": "*",
+          "enhancedImageMetadataEnabled": "boolean",
+          "imageTestsEnabled": "boolean",
+          "tags": "*",
+          "grantDefaultExecutionRolePermissions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ImageRecipe": {
+          "baseImage": "*",
+          "imageRecipeName": "*",
+          "imageRecipeVersion": "*",
+          "description": "*",
+          "components": {
+            "component": {
+              "componentArn": "*",
+              "componentName": "*",
+              "componentVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "parameters": "*"
+          },
+          "amiTags": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "workingDirectory": "*",
+          "uninstallSsmAgentAfterBuild": "boolean",
+          "userDataOverride": "*",
+          "tags": "*",
+          "addBlockDevice": [
+            {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            }
+          ]
+        },
+        "Image": {
+          "recipe": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "infrastructureConfiguration": {
+            "infrastructureConfigurationArn": "*",
+            "infrastructureConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "distributionConfiguration": {
+            "distributionConfigurationArn": "*",
+            "distributionConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "workflows": {
+            "workflow": {
+              "workflowArn": "*",
+              "workflowName": "*",
+              "workflowType": "*",
+              "workflowVersion": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "onFailure": "WorkflowOnFailure",
+            "parallelGroup": "*",
+            "parameters": "*"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "imageScanningEnabled": "boolean",
+          "imageScanningEcrRepository": {
+            "repositoryName": "*",
+            "repositoryArn": "*",
+            "repositoryUri": "*",
+            "registryUri": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "imageScanningEcrTags": "*",
+          "enhancedImageMetadataEnabled": "boolean",
+          "imageTestsEnabled": "boolean",
+          "deletionExecutionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "grantDefaultExecutionRolePermissions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "InfrastructureConfiguration": {
+          "infrastructureConfigurationName": "*",
+          "description": "*",
+          "instanceTypes": "*",
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "terminateInstanceOnFailure": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "HttpTokens",
+          "notificationTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "logging": {
+            "s3Bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "s3KeyPrefix": "*"
+          },
+          "ec2InstanceAvailabilityZone": "*",
+          "ec2InstanceHostId": "*",
+          "ec2InstanceHostResourceGroupArn": "*",
+          "ec2InstanceTenancy": "Tenancy",
+          "resourceTags": "*",
+          "tags": "*",
+          "_bind": [
+            {
+              "isContainerBuild": "boolean"
+            }
+          ]
+        },
+        "LifecyclePolicy": {
+          "resourceType": "LifecyclePolicyResourceType",
+          "details": {
+            "action": {
+              "type": "LifecyclePolicyActionType",
+              "includeAmis": "boolean",
+              "includeContainers": "boolean",
+              "includeSnapshots": "boolean"
+            },
+            "filter": {
+              "ageFilter": {
+                "age": "*",
+                "retainAtLeast": "*"
+              },
+              "countFilter": {
+                "count": "*"
+              }
+            },
+            "exclusionRules": {
+              "imageExclusionRules": {
+                "tags": "*"
+              },
+              "amiExclusionRules": {
+                "isPublic": "boolean",
+                "regions": "*",
+                "sharedAccounts": "*",
+                "tags": "*"
+              }
+            }
+          },
+          "resourceSelection": {
+            "recipes": {
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "tags": "*"
+          },
+          "lifecyclePolicyName": "*",
+          "description": "*",
+          "status": "LifecyclePolicyStatus",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*"
+        },
+        "Workflow": {
+          "data": "*",
+          "workflowType": "WorkflowType",
+          "workflowName": "*",
+          "workflowVersion": "*",
+          "description": "*",
+          "changeDescription": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-iot-alpha": {
+        "AccountAuditConfiguration": {},
+        "Logging": {},
+        "ScheduledAudit": {
+          "auditChecks": "AuditCheck",
+          "accountAuditConfiguration": {
+            "accountId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dayOfWeek": "DayOfWeek",
+          "dayOfMonth": "*",
+          "frequency": "Frequency",
+          "scheduledAuditName": "*"
+        },
+        "TopicRule": {
+          "topicRuleName": "*",
+          "actions": "*",
+          "description": "*",
+          "errorAction": "*",
+          "enabled": "boolean",
+          "sql": "*",
+          "addAction": [
+            "*"
+          ]
+        }
+      },
+      "@aws-cdk.aws-iotevents-alpha": {
+        "DetectorModel": {
+          "detectorModelName": "*",
+          "description": "*",
+          "evaluationMethod": "EventEvaluation",
+          "detectorKey": "*",
+          "initialState": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Input": {
+          "inputName": "*",
+          "attributeJsonPaths": "*"
+        }
+      },
+      "@aws-cdk.aws-ivs-alpha": {
+        "Channel": {
+          "authorized": "boolean",
+          "containerFormat": "ContainerFormat",
+          "insecureIngest": "boolean",
+          "latencyMode": "LatencyMode",
+          "channelName": "*",
+          "multitrackInputConfiguration": {
+            "maximumResolution": "MaximumResolution",
+            "policy": "Policy"
+          },
+          "type": "ChannelType",
+          "preset": "Preset",
+          "recordingConfiguration": {
+            "recordingConfigurationId": "*",
+            "recordingConfigurationArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "PlaybackKeyPair": {
+          "publicKeyMaterial": "*",
+          "playbackKeyPairName": "*"
+        },
+        "RecordingConfiguration": {
+          "bucket": "*",
+          "recordingConfigurationName": "*",
+          "recordingReconnectWindow": "*",
+          "renditionConfiguration": "*",
+          "thumbnailConfiguration": "*"
+        },
+        "StreamKey": {
+          "channel": {
+            "channelArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-kinesisanalytics-flink-alpha": {
+        "Import": {
+          "applicationArn": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        },
+        "Application": {
+          "applicationName": "*",
+          "runtime": "*",
+          "code": "*",
+          "checkpointingEnabled": "boolean",
+          "checkpointInterval": "*",
+          "minPauseBetweenCheckpoints": "*",
+          "logLevel": "LogLevel",
+          "metricsLevel": "MetricsLevel",
+          "autoScalingEnabled": "boolean",
+          "parallelism": "*",
+          "parallelismPerKpu": "*",
+          "snapshotsEnabled": "boolean",
+          "propertyGroups": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "logGroup": {
+            "logGroupArn": "*",
+            "logGroupName": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "stack": "*",
+            "node": "*"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        }
+      },
+      "@aws-cdk.aws-lambda-go-alpha": {
+        "GoFunction": {
+          "entry": "*",
+          "runtime": "*",
+          "moduleDir": "*",
+          "bundling": {
+            "forcedDockerBundling": "boolean",
+            "dockerImage": "*",
+            "goBuildFlags": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "cgoEnabled": "boolean",
+            "goProxies": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        }
+      },
+      "@aws-cdk.aws-lambda-python-alpha": {
+        "PythonFunction": {
+          "entry": "*",
+          "runtime": "*",
+          "index": "*",
+          "handler": "*",
+          "bundling": {
+            "poetryIncludeHashes": "boolean",
+            "poetryWithoutUrls": "boolean",
+            "assetExcludes": "*",
+            "outputPathSuffix": "*",
+            "image": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "PythonLayerVersion": {
+          "entry": "*",
+          "compatibleRuntimes": "*",
+          "compatibleArchitectures": "*",
+          "bundling": {
+            "poetryIncludeHashes": "boolean",
+            "poetryWithoutUrls": "boolean",
+            "assetExcludes": "*",
+            "outputPathSuffix": "*",
+            "image": "*",
+            "buildArgs": "*",
+            "assetHashType": "AssetHashType",
+            "assetHash": "*",
+            "commandHooks": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "description": "*",
+          "license": "*",
+          "layerVersionName": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-location-alpha": {
+        "ApiKey": {
+          "apiKeyName": "*",
+          "description": "*",
+          "expireTime": "*",
+          "forceDelete": "boolean",
+          "forceUpdate": "boolean",
+          "noExpiry": "boolean",
+          "allowMapsActions": "AllowMapsAction",
+          "allowPlacesActions": "AllowPlacesAction",
+          "allowRoutesActions": "AllowRoutesAction",
+          "allowReferers": "*"
+        },
+        "GeofenceCollection": {
+          "geofenceCollectionName": "*",
+          "description": "*",
+          "kmsKey": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Map": {
+          "mapName": "*",
+          "description": "*",
+          "style": "Style",
+          "customLayers": "CustomLayer",
+          "politicalView": "PoliticalView",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRendering": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "PlaceIndex": {
+          "placeIndexName": "*",
+          "dataSource": "DataSource",
+          "intendedUse": "IntendedUse",
+          "description": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantSearch": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "RouteCalculator": {
+          "routeCalculatorName": "*",
+          "dataSource": "DataSource",
+          "description": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Tracker": {
+          "trackerName": "*",
+          "description": "*",
+          "eventBridgeEnabled": "boolean",
+          "kmsKey": "*",
+          "kmsKeyEnableGeospatialQueries": "boolean",
+          "positionFiltering": "PositionFiltering",
+          "geofenceCollections": {
+            "geofenceCollectionName": "*",
+            "geofenceCollectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addGeofenceCollections": [
+            {
+              "geofenceCollectionName": "*",
+              "geofenceCollectionArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantUpdateDevicePositions": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-mediaconnect-alpha": {
+        "BridgeOutput": {
+          "bridgeOutputName": "*",
+          "bridge": {
+            "bridgeArn": "*",
+            "bridgeName": "*",
+            "bridgeType": "*",
+            "bridgeState": "*",
+            "isFailoverEnabled": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "output": "*"
+        },
+        "BridgeSource": {
+          "bridgeSourceName": "*",
+          "bridge": {
+            "bridgeArn": "*",
+            "bridgeName": "*",
+            "bridgeType": "*",
+            "bridgeState": "*",
+            "isFailoverEnabled": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "source": "*"
+        },
+        "Bridge": {
+          "bridgeName": "*",
+          "config": "*",
+          "gateway": {
+            "gatewayArn": "*",
+            "gatewayState": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "sourceFailoverConfig": "*"
+        },
+        "FlowEntitlement": {
+          "flowEntitlementName": "*",
+          "dataTransferSubscriberFeePercent": "*",
+          "description": "*",
+          "encryption": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secret": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "algorithm": "*"
+          },
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subscribers": "*",
+          "entitlementStatus": "EntitlementStatus"
+        },
+        "FlowOutput": {
+          "flowOutputName": "*",
+          "description": "*",
+          "outputStatus": "State",
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "output": "*"
+        },
+        "FlowSource": {
+          "source": "*",
+          "flow": {
+            "flowArn": "*",
+            "sourceArn": "*",
+            "egressIp": "*",
+            "sourceIngestIp": "*",
+            "sourceIngestPort": "*",
+            "sourceIngestUrl": "*",
+            "flowAvailabilityZone": "*",
+            "isFailoverEnabled": "boolean",
+            "grants": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Flow": {
+          "flowName": "*",
+          "availabilityZone": "*",
+          "flowSize": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "mediaStreams": "*",
+          "ndiConfig": {
+            "machineName": "*",
+            "ndiDiscoveryServers": {
+              "discoveryServerAddress": "*",
+              "discoveryServerPort": "*",
+              "vpcInterface": {
+                "name": "*",
+                "networkInterfaceIds": "*",
+                "networkInterfaceType": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "securityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                },
+                "subnet": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              }
+            },
+            "ndiState": "State"
+          },
+          "encodingConfig": {
+            "encodingProfile": "EncodingProfile",
+            "videoMaxBitrate": "*"
+          },
+          "source": "*",
+          "sourceFailoverConfig": "*",
+          "sourceMonitoringConfig": {
+            "contentQualityAnalysisState": "State",
+            "thumbnailState": "State",
+            "silentAudio": {
+              "state": "State",
+              "threshold": "*"
+            }
+          },
+          "vpcInterfaces": {
+            "name": "*",
+            "networkInterfaceIds": "*",
+            "networkInterfaceType": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "subnet": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            }
+          },
+          "addVpcInterface": [
+            {
+              "name": "*",
+              "networkInterfaceIds": "*",
+              "networkInterfaceType": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              },
+              "subnet": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              }
+            }
+          ]
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "egressCidrBlocks": "*",
+          "networks": "*",
+          "addNetwork": [
+            "*"
+          ]
+        },
+        "RouterInput": {
+          "routerInputName": "*",
+          "maximumBitrate": "*",
+          "routingScope": "*",
+          "tier": "*",
+          "configuration": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "regionName": "*",
+          "tags": "*",
+          "transitEncryption": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secret": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            }
+          }
+        },
+        "RouterNetworkInterface": {
+          "routerNetworkInterfaceName": "*",
+          "configuration": "*",
+          "regionName": "*",
+          "tags": "*"
+        },
+        "RouterOutput": {
+          "routerOutputName": "*",
+          "maximumBitrate": "*",
+          "routingScope": "*",
+          "tier": "*",
+          "configuration": "*",
+          "maintenanceConfiguration": {
+            "day": "MaintenanceDay",
+            "time": "*"
+          },
+          "regionName": "*",
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-medialive-alpha": {
+        "ChannelPlacementGroup": {
+          "channelPlacementGroupName": "*",
+          "cluster": "*",
+          "nodes": "*",
+          "tags": "*"
+        },
+        "Channel": {
+          "channelName": "*",
+          "channelClass": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "inputs": {
+            "input": {
+              "inputArn": "*",
+              "inputId": "*",
+              "inputClass": "*",
+              "inputType": "*",
+              "inputDestinations": "*",
+              "inputSources": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "inputAttachmentName": "*",
+            "sourceEndBehavior": "*",
+            "inputFilter": "*",
+            "filterStrength": "*",
+            "deblockFilter": "boolean",
+            "denoiseFilter": "boolean",
+            "smpte2038DataPreference": "*",
+            "audioSelectors": "*",
+            "captionSelectors": "*",
+            "scte35Pid": "*",
+            "videoSelector": {
+              "colorSpace": "*",
+              "colorSpaceUsage": "*",
+              "hdr10": {
+                "maxContentLightLevel": "*",
+                "maxFrameAverageLightLevel": "*"
+              },
+              "selectBy": "*"
+            },
+            "networkInputSettings": {
+              "serverValidation": "*",
+              "hlsInputSettings": {
+                "bandwidth": "*",
+                "bufferSegments": "*",
+                "retries": "*",
+                "retryInterval": "*",
+                "scte35Source": "*"
+              },
+              "multicastSourceIp": "*"
+            },
+            "logicalInterfaceNames": "*",
+            "automaticInputFailover": {
+              "failoverConditions": "*",
+              "inputPreference": "*"
+            }
+          },
+          "outputGroups": "*",
+          "logLevel": "*",
+          "inputSpecification": "*",
+          "globalConfiguration": {
+            "initialAudioGain": "*",
+            "inputEndAction": "*",
+            "outputTimingSource": "*",
+            "supportLowFramerateInputs": "boolean",
+            "inputLossBehavior": {
+              "blackFrame": "*",
+              "imageType": "*",
+              "imageColor": "*",
+              "imageSlate": "*"
+            },
+            "outputLocking": "*"
+          },
+          "tags": "*",
+          "maintenance": {
+            "day": "*",
+            "time": "*"
+          },
+          "timecodeConfig": {
+            "source": "*",
+            "syncThreshold": "*"
+          },
+          "vpc": {
+            "subnets": "*",
+            "securityGroups": "*",
+            "publicAddressAllocationIds": "*"
+          },
+          "availBlanking": {
+            "state": "*",
+            "image": "*"
+          },
+          "availSettings": "*",
+          "scte35SegmentationScope": "*",
+          "featureActivations": {
+            "inputPrepareScheduleActions": "*"
+          },
+          "motionGraphicsConfiguration": {
+            "motionGraphicsInsertion": "*"
+          },
+          "nielsenConfiguration": {
+            "distributorId": "*",
+            "nielsenPcmToId3Tagging": "*"
+          },
+          "thumbnailConfiguration": {
+            "state": "*"
+          },
+          "blackoutSlate": {
+            "state": "*",
+            "image": "*",
+            "networkEndBlackout": "*",
+            "networkId": "*"
+          },
+          "colorCorrections": {
+            "inputColorSpace": "*",
+            "lut": "*"
+          },
+          "anywhereSettings": {
+            "cluster": "*",
+            "channelPlacementGroup": "*"
+          },
+          "channelEngineVersion": "*",
+          "linkedChannelSettings": "*",
+          "channelSecurityGroups": "*",
+          "inferenceFeedArn": "*",
+          "addInput": [
+            {
+              "input": {
+                "inputArn": "*",
+                "inputId": "*",
+                "inputClass": "*",
+                "inputType": "*",
+                "inputDestinations": "*",
+                "inputSources": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "inputAttachmentName": "*",
+              "sourceEndBehavior": "*",
+              "inputFilter": "*",
+              "filterStrength": "*",
+              "deblockFilter": "boolean",
+              "denoiseFilter": "boolean",
+              "smpte2038DataPreference": "*",
+              "audioSelectors": "*",
+              "captionSelectors": "*",
+              "scte35Pid": "*",
+              "videoSelector": {
+                "colorSpace": "*",
+                "colorSpaceUsage": "*",
+                "hdr10": {
+                  "maxContentLightLevel": "*",
+                  "maxFrameAverageLightLevel": "*"
+                },
+                "selectBy": "*"
+              },
+              "networkInputSettings": {
+                "serverValidation": "*",
+                "hlsInputSettings": {
+                  "bandwidth": "*",
+                  "bufferSegments": "*",
+                  "retries": "*",
+                  "retryInterval": "*",
+                  "scte35Source": "*"
+                },
+                "multicastSourceIp": "*"
+              },
+              "logicalInterfaceNames": "*",
+              "automaticInputFailover": {
+                "failoverConditions": "*",
+                "inputPreference": "*"
+              }
+            }
+          ],
+          "addOutputGroup": [
+            "*"
+          ]
+        },
+        "Cluster": {
+          "clusterName": "*",
+          "clusterType": "*",
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkSettings": {
+            "defaultRoute": "*",
+            "interfaceMappings": {
+              "logicalInterfaceName": "*",
+              "networkId": "*"
+            }
+          },
+          "tags": "*"
+        },
+        "InputSecurityGroup": {
+          "allowlistRules": "*",
+          "tags": "*"
+        },
+        "Input": {
+          "inputName": "*",
+          "input": "*",
+          "inputNetworkLocation": "*",
+          "tags": "*",
+          "_grantPermissions": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Network": {
+          "networkName": "*",
+          "ipPools": "*",
+          "routes": {
+            "cidr": "*",
+            "gateway": "*"
+          },
+          "tags": "*"
+        },
+        "SdiSource": {
+          "sdiSourceName": "*",
+          "type": "*",
+          "mode": "*",
+          "tags": "*"
+        }
+      },
+      "@aws-cdk.aws-mediapackagev2-alpha": {
+        "ChannelPolicy": {
+          "channel": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "channelArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "ingestEndpointUrls": "*",
+            "channelGroup": {
+              "channelGroupName": "*",
+              "channelGroupArn": "*",
+              "egressDomain": "*",
+              "createdAt": "*",
+              "modifiedAt": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "region": "*",
+            "grants": "*"
+          },
+          "policyDocument": "*"
+        },
+        "Channel": {
+          "channelGroup": {
+            "channelGroupName": "*",
+            "channelGroupArn": "*",
+            "egressDomain": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "channelName": "*",
+          "input": "*",
+          "description": "*",
+          "tags": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OriginEndpoint": {
+          "channel": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "channelArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "ingestEndpointUrls": "*",
+            "channelGroup": {
+              "channelGroupName": "*",
+              "channelGroupArn": "*",
+              "egressDomain": "*",
+              "createdAt": "*",
+              "modifiedAt": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "region": "*",
+            "grants": "*"
+          },
+          "originEndpointName": "*",
+          "description": "*",
+          "tags": "*",
+          "manifests": "*",
+          "startoverWindow": "*",
+          "segment": {
+            "containerType": "ContainerType",
+            "includeIframeOnlyStreams": "boolean",
+            "scteFilter": "ScteMessageType",
+            "scteInSegments": "ScteInSegments",
+            "segmentDuration": "*",
+            "segmentName": "*",
+            "tsIncludeDvbSubtitles": "boolean",
+            "tsUseAudioRenditionGroup": "boolean",
+            "encryption": "*"
+          },
+          "forceEndpointConfigurationConditions": "EndpointErrorConfiguration",
+          "cdnAuth": {
+            "secrets": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ChannelGroup": {},
+        "OriginEndpointPolicy": {
+          "originEndpoint": {
+            "channelGroupName": "*",
+            "channelName": "*",
+            "originEndpointName": "*",
+            "originEndpointArn": "*",
+            "createdAt": "*",
+            "modifiedAt": "*",
+            "hlsManifestUrls": "*",
+            "lowLatencyHlsManifestUrls": "*",
+            "dashManifestUrls": "*",
+            "mssManifestUrls": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "policyDocument": "*",
+          "cdnAuth": {
+            "secrets": {
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "secretArn": "*",
+              "secretFullArn": "*",
+              "secretName": "*",
+              "secretValue": "*"
+            },
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-msk-alpha": {
+        "Cluster": {
+          "clusterName": "*",
+          "kafkaVersion": "*",
+          "numberOfBrokerNodes": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceType": "*",
+          "brokerType": "BrokerType",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ebsStorageInfo": {
+            "volumeSize": "*",
+            "encryptionKey": "*"
+          },
+          "storageMode": "StorageMode",
+          "configurationInfo": {
+            "arn": "*",
+            "revision": "*"
+          },
+          "monitoring": {
+            "clusterMonitoringLevel": "ClusterMonitoringLevel",
+            "enablePrometheusJmxExporter": "boolean",
+            "enablePrometheusNodeExporter": "boolean"
+          },
+          "logging": {
+            "firehoseDeliveryStreamName": "*",
+            "cloudwatchLogGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "s3": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*"
+            }
+          },
+          "encryptionInTransit": {
+            "clientBroker": "ClientBrokerEncryption",
+            "enableInCluster": "boolean"
+          },
+          "clientAuthentication": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addUser": [
+            "*"
+          ]
+        },
+        "ServerlessCluster": {
+          "clusterName": "*",
+          "vpcConfigs": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-neptune-alpha": {
+        "DatabaseCluster": {
+          "engineVersion": "*",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "kmsKey": "*",
+          "storageEncrypted": "boolean",
+          "instances": "*",
+          "dbClusterName": "*",
+          "iamAuthentication": "boolean",
+          "instanceIdentifierBase": "*",
+          "instanceType": "*",
+          "associatedRoles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "clusterParameterGroup": {
+            "clusterParameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameterGroup": {
+            "parameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": {
+            "subnetGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "autoMinorVersionUpgrade": "boolean",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "serverlessScalingConfiguration": {
+            "minCapacity": "*",
+            "maxCapacity": "*"
+          },
+          "copyTagsToSnapshot": "boolean",
+          "port": "*"
+        },
+        "DatabaseInstance": {
+          "cluster": {
+            "clusterIdentifier": "*",
+            "clusterResourceIdentifier": "*",
+            "clusterEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "availabilityZone": "*",
+          "dbInstanceName": "*",
+          "parameterGroup": {
+            "parameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "autoMinorVersionUpgrade": "boolean"
+        },
+        "ClusterParameterGroup": {
+          "clusterParameterGroupName": "*",
+          "description": "*",
+          "parameters": "*",
+          "family": "*"
+        },
+        "ParameterGroup": {
+          "parameterGroupName": "*",
+          "description": "*",
+          "parameters": "*",
+          "family": "*"
+        },
+        "SubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetGroupName": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-pipes-alpha": {
+        "ImportedPipe": {},
+        "Pipe": {
+          "source": {
+            "sourceArn": "*"
+          },
+          "filter": {
+            "filters": {
+              "pattern": "*"
+            }
+          },
+          "enrichment": {
+            "enrichmentArn": "*"
+          },
+          "target": {
+            "targetArn": "*"
+          },
+          "pipeName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logDestinations": "*",
+          "logLevel": "LogLevel",
+          "logIncludeExecutionData": "IncludeExecutionData",
+          "description": "*",
+          "desiredState": "DesiredState",
+          "tags": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "@aws-cdk.aws-redshift-alpha": {
+        "Cluster": {
+          "clusterName": "*",
+          "parameterGroup": {
+            "clusterParameterGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "numberOfNodes": "*",
+          "nodeType": "NodeType",
+          "clusterType": "ClusterType",
+          "port": "*",
+          "encrypted": "boolean",
+          "encryptionKey": "*",
+          "preferredMaintenanceWindow": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "subnetGroup": {
+            "clusterSubnetGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "masterUser": {
+            "masterUsername": "*",
+            "masterPassword": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "excludeCharacters": "*"
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultDatabaseName": "*",
+          "logging": "*",
+          "removalPolicy": "RemovalPolicy",
+          "publiclyAccessible": "boolean",
+          "classicResizing": "boolean",
+          "elasticIp": "*",
+          "rebootForParameterChanges": "boolean",
+          "enhancedVpcRouting": "boolean",
+          "multiAz": "boolean",
+          "resourceAction": "ResourceAction",
+          "availabilityZoneRelocation": "boolean",
+          "maintenanceTrackName": "MaintenanceTrackName",
+          "addRotationSingleUser": [
+            "*"
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*"
+            }
+          ],
+          "addToParameterGroup": [
+            "*",
+            "*"
+          ],
+          "enableRebootForParameterChanges": [],
+          "addDefaultIamRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addIamRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "excludeCharacters": "*"
+        },
+        "ClusterParameterGroup": {
+          "description": "*",
+          "parameters": "*",
+          "addParameter": [
+            "*",
+            "*"
+          ]
+        },
+        "ClusterSubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "@aws-cdk.aws-route53resolver-alpha": {
+        "FirewallDomainList": {
+          "name": "*",
+          "domains": "*"
+        },
+        "FirewallRuleGroupAssociation": {
+          "firewallRuleGroup": {
+            "firewallRuleGroupId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mutationProtection": "boolean",
+          "name": "*",
+          "priority": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          }
+        },
+        "FirewallRuleGroup": {
+          "name": "*",
+          "rules": {
+            "action": "*",
+            "firewallDomainList": {
+              "firewallDomainListId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "priority": "*"
+          },
+          "addRule": [
+            {
+              "action": "*",
+              "firewallDomainList": {
+                "firewallDomainListId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "priority": "*"
+            }
+          ],
+          "associate": [
+            "*",
+            {
+              "mutationProtection": "boolean",
+              "name": "*",
+              "priority": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-s3objectlambda-alpha": {
+        "AccessPoint": {
+          "bucket": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "accessPointName": "*",
+          "cloudWatchMetricsEnabled": "boolean",
+          "supportsGetObjectRange": "boolean",
+          "supportsGetObjectPartNumber": "boolean",
+          "payload": "*"
+        }
+      },
+      "@aws-cdk.aws-s3tables-alpha": {
+        "Namespace": {
+          "namespaceName": "*",
+          "tableBucket": {
+            "tableBucketArn": "*",
+            "tableBucketName": "*",
+            "account": "*",
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "TableBucketPolicy": {
+          "tableBucket": {
+            "tableBucketArn": "*",
+            "tableBucketName": "*",
+            "account": "*",
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "resourcePolicy": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "TableBucket": {
+          "tableBucketName": "*",
+          "unreferencedFileRemoval": {
+            "noncurrentDays": "*",
+            "status": "UnreferencedFileRemovalStatus",
+            "unreferencedDays": "*"
+          },
+          "region": "*",
+          "account": "*",
+          "encryption": "TableBucketEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy",
+          "requestMetricsStatus": "RequestMetricsStatus",
+          "storageClass": "StorageClass"
+        },
+        "TablePolicy": {
+          "table": {
+            "tableArn": "*",
+            "tableName": "*",
+            "account": "*",
+            "region": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "resourcePolicy": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Table": {
+          "tableName": "*",
+          "namespace": {
+            "namespaceName": "*",
+            "tableBucket": {
+              "tableBucketArn": "*",
+              "tableBucketName": "*",
+              "account": "*",
+              "region": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          },
+          "openTableFormat": "OpenTableFormat",
+          "compaction": {
+            "status": "Status",
+            "targetFileSizeMb": "*"
+          },
+          "icebergMetadata": {
+            "icebergSchema": {
+              "schemaFieldList": {
+                "id": "*",
+                "name": "*",
+                "required": "boolean",
+                "type": "*"
+              }
+            },
+            "icebergPartitionSpec": {
+              "fields": {
+                "sourceId": "*",
+                "transform": "*",
+                "name": "*",
+                "fieldId": "*"
+              },
+              "specId": "*"
+            },
+            "icebergSortOrder": {
+              "fields": {
+                "sourceId": "*",
+                "direction": "SortDirection",
+                "nullOrder": "NullOrder"
+              },
+              "orderId": "*"
+            },
+            "tableProperties": {
+              "key": "*",
+              "value": "*"
+            }
+          },
+          "snapshotManagement": {
+            "maxSnapshotAgeHours": "*",
+            "minSnapshotsToKeep": "*",
+            "status": "Status"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "withoutMetadata": "boolean",
+          "storageClass": "StorageClass"
+        }
+      },
+      "@aws-cdk.aws-sagemaker-alpha": {
+        "EndpointConfig": {
+          "endpointConfigName": "*",
+          "encryptionKey": "*",
+          "instanceProductionVariants": {
+            "acceleratorType": "*",
+            "initialInstanceCount": "*",
+            "instanceType": "*",
+            "containerStartupHealthCheckTimeout": "*",
+            "initialVariantWeight": "*",
+            "model": {
+              "modelArn": "*",
+              "modelName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "connections": "*"
+            },
+            "variantName": "*"
+          },
+          "serverlessProductionVariant": {
+            "maxConcurrency": "*",
+            "memorySizeInMB": "*",
+            "provisionedConcurrency": "*",
+            "initialVariantWeight": "*",
+            "model": {
+              "modelArn": "*",
+              "modelName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "connections": "*"
+            },
+            "variantName": "*"
+          },
+          "addInstanceProductionVariant": [
+            {
+              "acceleratorType": "*",
+              "initialInstanceCount": "*",
+              "instanceType": "*",
+              "containerStartupHealthCheckTimeout": "*",
+              "initialVariantWeight": "*",
+              "model": {
+                "modelArn": "*",
+                "modelName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "connections": "*"
+              },
+              "variantName": "*"
+            }
+          ],
+          "addServerlessProductionVariant": [
+            {
+              "maxConcurrency": "*",
+              "memorySizeInMB": "*",
+              "provisionedConcurrency": "*",
+              "initialVariantWeight": "*",
+              "model": {
+                "modelArn": "*",
+                "modelName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "connections": "*"
+              },
+              "variantName": "*"
+            }
+          ],
+          "_findInstanceProductionVariant": [
+            "*"
+          ]
+        },
+        "Endpoint": {
+          "endpointName": "*",
+          "endpointConfig": {
+            "endpointConfigArn": "*",
+            "endpointConfigName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "findInstanceProductionVariant": [
+            "*"
+          ]
+        },
+        "Model": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "modelName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "containers": {
+            "image": "*",
+            "environment": "*",
+            "containerHostname": "*",
+            "modelData": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "networkIsolation": "boolean",
+          "addContainer": [
+            {
+              "image": "*",
+              "environment": "*",
+              "containerHostname": "*",
+              "modelData": "*"
+            }
+          ]
+        },
+        "Pipeline": {
+          "grantStartPipelineExecution": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "@aws-cdk.aws-servicecatalogappregistry-alpha": {
+        "Application": {
+          "applicationName": "*",
+          "description": "*"
+        },
+        "AttributeGroup": {
+          "attributeGroupName": "*",
+          "description": "*",
+          "attributes": "*"
+        }
+      },
+      "@aws-cdk.example-construct-library": {
+        "ExampleResource": {
+          "waitConditionHandleName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-apigateway": {
+        "ApiKey": {
+          "resources": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "stages": {
+            "stageName": "*",
+            "restApi": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "RateLimitedApiKey": {
+          "apiStages": {
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "throttle": {
+              "method": "*",
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              }
+            }
+          },
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "resources": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "stages": {
+            "stageName": "*",
+            "restApi": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "BasePathMapping": {
+          "domainName": "*",
+          "restApi": "*",
+          "basePath": "*",
+          "stage": "*",
+          "attachToStage": "boolean"
+        },
+        "Deployment": {
+          "api": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "description": "*",
+          "retainDeployments": "boolean",
+          "stageName": "*",
+          "addToLogicalId": [
+            "*"
+          ],
+          "_addMethodDependency": [
+            "*"
+          ]
+        },
+        "DomainName": {
+          "mapping": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "domainName": "*",
+          "certificate": "*",
+          "endpointType": "EndpointType",
+          "securityPolicy": "SecurityPolicy",
+          "endpointAccessMode": "EndpointAccessMode",
+          "mtls": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "key": "*",
+            "version": "*"
+          },
+          "basePath": "*",
+          "addBasePathMapping": [
+            "*",
+            {
+              "basePath": "*",
+              "stage": "*",
+              "attachToStage": "boolean"
+            }
+          ],
+          "addApiMapping": [
+            "*",
+            {
+              "basePath": "*"
+            }
+          ]
+        },
+        "GatewayResponse": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "type": "*",
+          "statusCode": "*",
+          "responseHeaders": "*",
+          "templates": "*"
+        },
+        "LambdaRestApi": {
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "integrationOptions": {
+            "proxy": "boolean",
+            "allowTestInvoke": "boolean",
+            "scopePermissionToMethod": "boolean",
+            "cacheKeyParameters": "*",
+            "cacheNamespace": "*",
+            "contentHandling": "ContentHandling",
+            "credentialsRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "credentialsPassthrough": "boolean",
+            "passthroughBehavior": "PassthroughBehavior",
+            "requestParameters": "*",
+            "requestTemplates": "*",
+            "timeout": "*",
+            "integrationResponses": {
+              "selectionPattern": "*",
+              "statusCode": "*",
+              "contentHandling": "ContentHandling",
+              "responseParameters": "*",
+              "responseTemplates": "*"
+            },
+            "connectionType": "ConnectionType",
+            "vpcLink": {
+              "vpcLinkId": "*"
+            },
+            "responseTransferMode": "ResponseTransferMode"
+          },
+          "proxy": "boolean",
+          "options": {
+            "binaryMediaTypes": "*",
+            "minimumCompressionSize": "*",
+            "minCompressionSize": "*",
+            "cloneFrom": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "apiKeySourceType": "ApiKeySourceType",
+            "deploy": "boolean",
+            "deployOptions": {
+              "stageName": "*",
+              "accessLogDestination": "*",
+              "accessLogFormat": "*",
+              "tracingEnabled": "boolean",
+              "cacheClusterEnabled": "boolean",
+              "cacheClusterSize": "*",
+              "clientCertificateId": "*",
+              "description": "*",
+              "documentationVersion": "*",
+              "variables": "*",
+              "methodOptions": "*",
+              "metricsEnabled": "boolean",
+              "loggingLevel": "MethodLoggingLevel",
+              "dataTraceEnabled": "boolean",
+              "throttlingBurstLimit": "*",
+              "throttlingRateLimit": "*",
+              "cachingEnabled": "boolean",
+              "cacheDataEncrypted": "boolean"
+            },
+            "retainDeployments": "boolean",
+            "restApiName": "*",
+            "parameters": "*",
+            "policy": "*",
+            "failOnWarnings": "boolean",
+            "domainName": {
+              "domainName": "*",
+              "certificate": "*",
+              "endpointType": "EndpointType",
+              "securityPolicy": "SecurityPolicy",
+              "endpointAccessMode": "EndpointAccessMode",
+              "mtls": {
+                "bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "encryptionKey": {
+                    "keyArn": "*",
+                    "keyId": "*"
+                  },
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "key": "*",
+                "version": "*"
+              },
+              "basePath": "*"
+            },
+            "cloudWatchRole": "boolean",
+            "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+            "endpointExportName": "*",
+            "endpointTypes": "EndpointType",
+            "endpointConfiguration": {
+              "types": "EndpointType",
+              "vpcEndpoints": {
+                "vpcEndpointId": "*"
+              },
+              "ipAddressType": "IpAddressType"
+            },
+            "disableExecuteApiEndpoint": "boolean",
+            "description": "*"
+          },
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "Method": {
+          "resource": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "httpMethod": "*",
+          "integration": "*",
+          "options": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "addMethodResponse": [
+            {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricClientError": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricServerError": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheHitCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheMissCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCount": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIntegrationLatency": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricLatency": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "grantExecute": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Model": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "contentType": "*",
+          "description": "*",
+          "modelName": "*",
+          "schema": {
+            "schema": "JsonSchemaVersion",
+            "id": "*",
+            "ref": "*",
+            "type": "JsonSchemaType",
+            "title": "*",
+            "description": "*",
+            "enum": "*",
+            "default": "*",
+            "format": "*",
+            "definitions": "*",
+            "multipleOf": "*",
+            "maximum": "*",
+            "exclusiveMaximum": "boolean",
+            "minimum": "*",
+            "exclusiveMinimum": "boolean",
+            "maxLength": "*",
+            "minLength": "*",
+            "pattern": "*",
+            "additionalItems": "boolean",
+            "maxItems": "*",
+            "minItems": "*",
+            "uniqueItems": "boolean",
+            "maxProperties": "*",
+            "minProperties": "*",
+            "required": "*",
+            "properties": "*",
+            "additionalProperties": "boolean",
+            "patternProperties": "*",
+            "dependencies": "*"
+          }
+        },
+        "RequestValidator": {
+          "restApi": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "requestValidatorName": "*",
+          "validateRequestBody": "boolean",
+          "validateRequestParameters": "boolean"
+        },
+        "Resource": {
+          "parent": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "pathPart": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "ProxyResource": {
+          "parent": {
+            "restApi": "*",
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "resourceId": "*",
+            "path": "*",
+            "defaultIntegration": "*",
+            "defaultMethodOptions": {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*"
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            },
+            "defaultCorsPreflightOptions": {
+              "statusCode": "*",
+              "allowOrigins": "*",
+              "allowHeaders": "*",
+              "allowMethods": "*",
+              "allowCredentials": "boolean",
+              "maxAge": "*",
+              "disableCache": "boolean",
+              "exposeHeaders": "*"
+            }
+          },
+          "anyMethod": "boolean",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          },
+          "addMethod": [
+            "*",
+            "*",
+            {
+              "operationName": "*",
+              "authorizationType": "AuthorizationType",
+              "authorizer": {
+                "authorizerId": "*",
+                "authorizationType": "AuthorizationType"
+              },
+              "apiKeyRequired": "boolean",
+              "methodResponses": {
+                "statusCode": "*",
+                "responseParameters": "*",
+                "responseModels": "*"
+              },
+              "requestParameters": "*",
+              "requestModels": "*",
+              "requestValidator": {
+                "requestValidatorId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "authorizationScopes": "*",
+              "requestValidatorOptions": {
+                "requestValidatorName": "*",
+                "validateRequestBody": "boolean",
+                "validateRequestParameters": "boolean"
+              }
+            }
+          ]
+        },
+        "SpecRestApi": {
+          "apiDefinition": "*",
+          "binaryMediaTypes": "*",
+          "minCompressionSize": "*",
+          "mode": "RestApiMode",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "RestApi": {
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          },
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addModel": [
+            "*",
+            {
+              "contentType": "*",
+              "description": "*",
+              "modelName": "*",
+              "schema": {
+                "schema": "JsonSchemaVersion",
+                "id": "*",
+                "ref": "*",
+                "type": "JsonSchemaType",
+                "title": "*",
+                "description": "*",
+                "enum": "*",
+                "default": "*",
+                "format": "*",
+                "definitions": "*",
+                "multipleOf": "*",
+                "maximum": "*",
+                "exclusiveMaximum": "boolean",
+                "minimum": "*",
+                "exclusiveMinimum": "boolean",
+                "maxLength": "*",
+                "minLength": "*",
+                "pattern": "*",
+                "additionalItems": "boolean",
+                "maxItems": "*",
+                "minItems": "*",
+                "uniqueItems": "boolean",
+                "maxProperties": "*",
+                "minProperties": "*",
+                "required": "*",
+                "properties": "*",
+                "additionalProperties": "boolean",
+                "patternProperties": "*",
+                "dependencies": "*"
+              }
+            }
+          ],
+          "addRequestValidator": [
+            "*",
+            {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          ],
+          "_attachMethod": [
+            "*"
+          ],
+          "_attachDeployment": [
+            "*"
+          ]
+        },
+        "RootResource": {},
+        "Stage": {
+          "deployment": "*",
+          "stageName": "*",
+          "accessLogDestination": "*",
+          "accessLogFormat": "*",
+          "tracingEnabled": "boolean",
+          "cacheClusterEnabled": "boolean",
+          "cacheClusterSize": "*",
+          "clientCertificateId": "*",
+          "description": "*",
+          "documentationVersion": "*",
+          "variables": "*",
+          "methodOptions": "*",
+          "metricsEnabled": "boolean",
+          "loggingLevel": "MethodLoggingLevel",
+          "dataTraceEnabled": "boolean",
+          "throttlingBurstLimit": "*",
+          "throttlingRateLimit": "*",
+          "cachingEnabled": "boolean",
+          "cacheTtl": "*",
+          "cacheDataEncrypted": "boolean"
+        },
+        "StepFunctionsRestApi": {
+          "stateMachine": {
+            "stateMachineArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "requestContext": {
+            "accountId": "boolean",
+            "apiId": "boolean",
+            "apiKey": "boolean",
+            "authorizerPrincipalId": "boolean",
+            "caller": "boolean",
+            "cognitoAuthenticationProvider": "boolean",
+            "cognitoAuthenticationType": "boolean",
+            "cognitoIdentityId": "boolean",
+            "cognitoIdentityPoolId": "boolean",
+            "httpMethod": "boolean",
+            "stage": "boolean",
+            "sourceIp": "boolean",
+            "user": "boolean",
+            "userAgent": "boolean",
+            "userArn": "boolean",
+            "requestId": "boolean",
+            "resourceId": "boolean",
+            "resourcePath": "boolean"
+          },
+          "querystring": "boolean",
+          "path": "boolean",
+          "headers": "boolean",
+          "authorizer": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "useDefaultMethodResponses": "boolean",
+          "binaryMediaTypes": "*",
+          "minimumCompressionSize": "*",
+          "minCompressionSize": "*",
+          "cloneFrom": {
+            "restApiId": "*",
+            "restApiName": "*",
+            "restApiRootResourceId": "*",
+            "latestDeployment": "*",
+            "deploymentStage": "*",
+            "root": {
+              "restApi": "*",
+              "resourceId": "*",
+              "path": "*",
+              "defaultIntegration": "*",
+              "defaultMethodOptions": {
+                "operationName": "*",
+                "authorizationType": "AuthorizationType",
+                "authorizer": {
+                  "authorizerId": "*",
+                  "authorizationType": "AuthorizationType"
+                },
+                "apiKeyRequired": "boolean",
+                "methodResponses": {
+                  "statusCode": "*",
+                  "responseParameters": "*",
+                  "responseModels": "*"
+                },
+                "requestParameters": "*",
+                "requestModels": "*",
+                "requestValidator": {
+                  "requestValidatorId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "authorizationScopes": "*",
+                "requestValidatorOptions": {
+                  "requestValidatorName": "*",
+                  "validateRequestBody": "boolean",
+                  "validateRequestParameters": "boolean"
+                }
+              },
+              "defaultCorsPreflightOptions": {
+                "statusCode": "*",
+                "allowOrigins": "*",
+                "allowHeaders": "*",
+                "allowMethods": "*",
+                "allowCredentials": "boolean",
+                "maxAge": "*",
+                "disableCache": "boolean",
+                "exposeHeaders": "*"
+              }
+            }
+          },
+          "apiKeySourceType": "ApiKeySourceType",
+          "deploy": "boolean",
+          "deployOptions": {
+            "stageName": "*",
+            "accessLogDestination": "*",
+            "accessLogFormat": "*",
+            "tracingEnabled": "boolean",
+            "cacheClusterEnabled": "boolean",
+            "cacheClusterSize": "*",
+            "clientCertificateId": "*",
+            "description": "*",
+            "documentationVersion": "*",
+            "variables": "*",
+            "methodOptions": "*",
+            "metricsEnabled": "boolean",
+            "loggingLevel": "MethodLoggingLevel",
+            "dataTraceEnabled": "boolean",
+            "throttlingBurstLimit": "*",
+            "throttlingRateLimit": "*",
+            "cachingEnabled": "boolean",
+            "cacheTtl": "*",
+            "cacheDataEncrypted": "boolean"
+          },
+          "retainDeployments": "boolean",
+          "restApiName": "*",
+          "parameters": "*",
+          "policy": "*",
+          "failOnWarnings": "boolean",
+          "domainName": {
+            "domainName": "*",
+            "certificate": "*",
+            "endpointType": "EndpointType",
+            "securityPolicy": "SecurityPolicy",
+            "endpointAccessMode": "EndpointAccessMode",
+            "mtls": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "key": "*",
+              "version": "*"
+            },
+            "basePath": "*"
+          },
+          "cloudWatchRole": "boolean",
+          "cloudWatchRoleRemovalPolicy": "RemovalPolicy",
+          "endpointExportName": "*",
+          "endpointTypes": "EndpointType",
+          "endpointConfiguration": {
+            "types": "EndpointType",
+            "vpcEndpoints": {
+              "vpcEndpointId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "ipAddressType": "IpAddressType"
+          },
+          "disableExecuteApiEndpoint": "boolean",
+          "description": "*",
+          "defaultIntegration": "*",
+          "defaultMethodOptions": {
+            "operationName": "*",
+            "authorizationType": "AuthorizationType",
+            "authorizer": {
+              "authorizerId": "*",
+              "authorizationType": "AuthorizationType"
+            },
+            "apiKeyRequired": "boolean",
+            "methodResponses": {
+              "statusCode": "*",
+              "responseParameters": "*",
+              "responseModels": "*"
+            },
+            "requestParameters": "*",
+            "requestModels": "*",
+            "requestValidator": {
+              "requestValidatorId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "authorizationScopes": "*",
+            "requestValidatorOptions": {
+              "requestValidatorName": "*",
+              "validateRequestBody": "boolean",
+              "validateRequestParameters": "boolean"
+            }
+          },
+          "defaultCorsPreflightOptions": {
+            "statusCode": "*",
+            "allowOrigins": "*",
+            "allowHeaders": "*",
+            "allowMethods": "*",
+            "allowCredentials": "boolean",
+            "maxAge": "*",
+            "disableCache": "boolean",
+            "exposeHeaders": "*"
+          }
+        },
+        "UsagePlan": {
+          "apiStages": {
+            "api": {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            },
+            "throttle": {
+              "method": "*",
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              }
+            }
+          },
+          "description": "*",
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "name": "*",
+          "apiKey": {
+            "keyId": "*",
+            "keyArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addApiStage": [
+            {
+              "api": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "throttle": {
+                "method": "*",
+                "throttle": {
+                  "rateLimit": "*",
+                  "burstLimit": "*"
+                }
+              }
+            }
+          ]
+        },
+        "VpcLink": {
+          "vpcLinkName": "*",
+          "description": "*",
+          "targets": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "metrics": "*",
+            "securityGroups": "*",
+            "ipAddressType": "IpAddressType",
+            "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "loadBalancerArn": "*",
+            "connections": "*"
+          },
+          "addTargets": [
+            {
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "metrics": "*",
+              "securityGroups": "*",
+              "ipAddressType": "IpAddressType",
+              "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+              "loadBalancerCanonicalHostedZoneId": "*",
+              "loadBalancerDnsName": "*",
+              "loadBalancerArn": "*",
+              "connections": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-appconfig": {
+        "Application": {
+          "applicationName": "*",
+          "description": "*"
+        },
+        "DeploymentStrategy": {
+          "rolloutStrategy": "*",
+          "deploymentStrategyName": "*",
+          "description": "*"
+        },
+        "Environment": {
+          "application": {
+            "description": "*",
+            "name": "*",
+            "applicationId": "*",
+            "applicationArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "environmentName": "*",
+          "description": "*",
+          "monitors": "*",
+          "deletionProtectionCheck": "DeletionProtectionCheck"
+        },
+        "Extension": {
+          "actions": "*",
+          "extensionName": "*",
+          "description": "*",
+          "latestVersionNumber": "*",
+          "parameters": "*"
+        }
+      },
+      "aws-cdk-lib.aws-applicationautoscaling": {
+        "ScalableTarget": {
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "resourceId": "*",
+          "scalableDimension": "*",
+          "serviceNamespace": "ServiceNamespace",
+          "addToRolePolicy": [
+            "*"
+          ],
+          "scaleOnSchedule": [
+            "*",
+            {
+              "schedule": "*",
+              "startTime": "*",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "timeZone": "*"
+            }
+          ],
+          "scaleOnMetric": [
+            "*",
+            {
+              "metric": {
+                "warnings": "*",
+                "warningsV2": "*"
+              },
+              "scalingSteps": {
+                "lower": "*",
+                "upper": "*",
+                "change": "*"
+              },
+              "adjustmentType": "AdjustmentType",
+              "cooldown": "*",
+              "minAdjustmentMagnitude": "*",
+              "evaluationPeriods": "*",
+              "datapointsToAlarm": "*",
+              "metricAggregationType": "MetricAggregationType"
+            }
+          ],
+          "scaleToTrackMetric": [
+            "*",
+            {
+              "targetValue": "*",
+              "predefinedMetric": "PredefinedMetric",
+              "resourceLabel": "*",
+              "customMetric": {
+                "warnings": "*",
+                "warningsV2": "*"
+              },
+              "policyName": "*",
+              "disableScaleIn": "boolean",
+              "scaleInCooldown": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-appmesh": {
+        "GatewayRoute": {
+          "virtualGateway": {
+            "virtualGatewayName": "*",
+            "virtualGatewayArn": "*",
+            "mesh": {
+              "meshName": "*",
+              "meshArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "gatewayRouteName": "*",
+          "routeSpec": "*"
+        },
+        "Mesh": {
+          "meshName": "*",
+          "egressFilter": "MeshFilterType",
+          "serviceDiscovery": {
+            "ipPreference": "IpPreference"
+          }
+        },
+        "Route": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualRouter": {
+            "virtualRouterName": "*",
+            "virtualRouterArn": "*",
+            "mesh": {
+              "meshName": "*",
+              "meshArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "routeName": "*",
+          "routeSpec": "*"
+        },
+        "VirtualGateway": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualGatewayName": "*",
+          "listeners": "*",
+          "accessLog": "*",
+          "backendDefaults": {
+            "tlsClientPolicy": {
+              "enforce": "boolean",
+              "ports": "*",
+              "validation": {
+                "trust": "*",
+                "subjectAlternativeNames": "*"
+              },
+              "mutualTlsCertificate": "*"
+            }
+          }
+        },
+        "VirtualNode": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "virtualNodeName": "*",
+          "serviceDiscovery": "*",
+          "backends": "*",
+          "listeners": "*",
+          "accessLog": "*",
+          "backendDefaults": {
+            "tlsClientPolicy": {
+              "enforce": "boolean",
+              "ports": "*",
+              "validation": {
+                "trust": "*",
+                "subjectAlternativeNames": "*"
+              },
+              "mutualTlsCertificate": "*"
+            }
+          },
+          "addListener": [
+            "*"
+          ],
+          "addBackend": [
+            "*"
+          ]
+        },
+        "VirtualRouter": {
+          "mesh": {
+            "meshName": "*",
+            "meshArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "listeners": "*",
+          "virtualRouterName": "*"
+        },
+        "VirtualService": {
+          "virtualServiceName": "*",
+          "virtualServiceProvider": "*"
+        }
+      },
+      "aws-cdk-lib.aws-appsync": {
+        "AppsyncFunction": {
+          "api": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dataSource": "*",
+          "name": "*",
+          "description": "*",
+          "requestMappingTemplate": "*",
+          "responseMappingTemplate": "*",
+          "runtime": "*",
+          "code": "*",
+          "maxBatchSize": "*"
+        },
+        "ChannelNamespace": {
+          "api": {
+            "authProviderTypes": "AppSyncAuthorizationType",
+            "httpDns": "*",
+            "realtimeDns": "*",
+            "apiId": "*",
+            "apiArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "channelNamespaceName": "*",
+          "code": "*",
+          "publishHandlerConfig": {
+            "direct": "boolean",
+            "dataSource": "*",
+            "lambdaInvokeType": "LambdaInvokeType"
+          },
+          "subscribeHandlerConfig": {
+            "direct": "boolean",
+            "dataSource": "*",
+            "lambdaInvokeType": "LambdaInvokeType"
+          },
+          "authorizationConfig": {
+            "publishAuthModeTypes": "AppSyncAuthorizationType",
+            "subscribeAuthModeTypes": "AppSyncAuthorizationType"
+          },
+          "grantSubscribe": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantPublish": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantPublishAndSubscribe": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "EventApi": {
+          "apiName": "*",
+          "authorizationConfig": {
+            "authProviders": {
+              "authorizationType": "AppSyncAuthorizationType",
+              "cognitoConfig": {
+                "userPool": {
+                  "userPoolId": "*",
+                  "userPoolArn": "*",
+                  "userPoolProviderName": "*",
+                  "identityProviders": {
+                    "providerName": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  }
+                },
+                "appIdClientRegex": "*"
+              },
+              "apiKeyConfig": {
+                "name": "*",
+                "description": "*",
+                "expires": "*"
+              },
+              "openIdConnectConfig": {
+                "tokenExpiryFromAuth": "*",
+                "tokenExpiryFromIssue": "*",
+                "clientId": "*",
+                "oidcProvider": "*"
+              },
+              "lambdaAuthorizerConfig": {
+                "handler": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "latestVersion": {
+                    "version": "*",
+                    "edgeArn": "*",
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "resultsCacheTtl": "*",
+                "validationRegex": "*"
+              }
+            },
+            "connectionAuthModeTypes": "AppSyncAuthorizationType",
+            "defaultPublishAuthModeTypes": "AppSyncAuthorizationType",
+            "defaultSubscribeAuthModeTypes": "AppSyncAuthorizationType"
+          },
+          "logConfig": {
+            "excludeVerboseContent": "boolean",
+            "fieldLogLevel": "AppSyncFieldLogLevel",
+            "role": "*",
+            "retention": "RetentionDays"
+          },
+          "ownerContact": "*",
+          "domainName": {
+            "certificate": "*",
+            "domainName": "*"
+          }
+        },
+        "GraphqlApi": {
+          "name": "*",
+          "authorizationConfig": {
+            "defaultAuthorization": {
+              "authorizationType": "AuthorizationType",
+              "userPoolConfig": {
+                "userPool": {
+                  "userPoolId": "*",
+                  "userPoolArn": "*",
+                  "userPoolProviderName": "*",
+                  "identityProviders": {
+                    "providerName": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  }
+                },
+                "appIdClientRegex": "*",
+                "defaultAction": "UserPoolDefaultAction"
+              },
+              "apiKeyConfig": {
+                "name": "*",
+                "description": "*",
+                "expires": "*"
+              },
+              "openIdConnectConfig": {
+                "tokenExpiryFromAuth": "*",
+                "tokenExpiryFromIssue": "*",
+                "clientId": "*",
+                "oidcProvider": "*"
+              },
+              "lambdaAuthorizerConfig": {
+                "handler": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "latestVersion": {
+                    "version": "*",
+                    "edgeArn": "*",
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "resultsCacheTtl": "*",
+                "validationRegex": "*"
+              }
+            }
+          },
+          "logConfig": {
+            "excludeVerboseContent": "boolean",
+            "fieldLogLevel": "FieldLogLevel",
+            "role": "*",
+            "retention": "RetentionDays"
+          },
+          "definition": "*",
+          "schema": "*",
+          "xrayEnabled": "boolean",
+          "visibility": "Visibility",
+          "domainName": {
+            "certificate": "*",
+            "domainName": "*"
+          },
+          "introspectionConfig": "IntrospectionConfig",
+          "queryDepthLimit": "*",
+          "resolverCountLimit": "*",
+          "environmentVariables": "*",
+          "ownerContact": "*",
+          "enhancedMetricsConfig": {
+            "dataSourceLevelMetricsBehavior": "DataSourceLevelMetricsBehavior",
+            "operationLevelMetricsConfig": "OperationLevelMetricsConfig",
+            "resolverLevelMetricsBehavior": "ResolverLevelMetricsBehavior"
+          },
+          "addSchemaDependency": [
+            "*"
+          ],
+          "addEnvironmentVariable": [
+            "*",
+            "*"
+          ]
+        },
+        "SourceApiAssociation": {
+          "sourceApi": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergedApi": {
+            "apiId": "*",
+            "arn": "*",
+            "graphQLEndpointArn": "*",
+            "visibility": "Visibility",
+            "modes": "AuthorizationType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergedApiExecutionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "mergeType": "MergeType",
+          "description": "*"
+        }
+      },
+      "aws-cdk-lib.aws-autoscaling": {
+        "AutoScalingGroup": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "migrateToLaunchTemplate": "boolean",
+          "mixedInstancesPolicy": {
+            "instancesDistribution": {
+              "onDemandAllocationStrategy": "OnDemandAllocationStrategy",
+              "onDemandBaseCapacity": "*",
+              "onDemandPercentageAboveBaseCapacity": "*",
+              "spotAllocationStrategy": "SpotAllocationStrategy",
+              "spotInstancePools": "*",
+              "spotMaxPrice": "*"
+            },
+            "launchTemplate": {
+              "versionNumber": "*",
+              "launchTemplateId": "*",
+              "launchTemplateName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "launchTemplateOverrides": {
+              "instanceRequirements": "*",
+              "instanceType": "*",
+              "weightedCapacity": "*"
+            }
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "userData": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "maxHealthyPercentage": "*",
+          "minHealthyPercentage": "*",
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "desiredCapacity": "*",
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "notificationsTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "notifications": {
+            "topic": {
+              "topicArn": "*",
+              "topicName": "*",
+              "masterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            },
+            "scalingEvents": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "updateType": "UpdateType",
+          "rollingUpdateConfiguration": {
+            "maxBatchSize": "*",
+            "minInstancesInService": "*",
+            "minSuccessfulInstancesPercent": "*",
+            "pauseTime": "*",
+            "waitOnResourceSignals": "boolean",
+            "suspendProcesses": "ScalingProcess"
+          },
+          "replacingUpdateMinSuccessfulInstancesPercent": "*",
+          "ignoreUnmodifiedSizeProperties": "boolean",
+          "resourceSignalCount": "*",
+          "resourceSignalTimeout": "*",
+          "cooldown": "*",
+          "associatePublicIpAddress": "boolean",
+          "spotPrice": "*",
+          "healthCheck": "*",
+          "healthChecks": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "maxInstanceLifetime": "*",
+          "instanceMonitoring": "Monitoring",
+          "groupMetrics": "*",
+          "signals": "*",
+          "updatePolicy": "*",
+          "newInstancesProtectedFromScaleIn": "boolean",
+          "autoScalingGroupName": "*",
+          "terminationPolicies": "TerminationPolicy",
+          "terminationPolicyCustomLambdaFunctionArn": "*",
+          "defaultInstanceWarmup": "*",
+          "capacityRebalance": "boolean",
+          "ssmSessionPermissions": "boolean",
+          "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+          "deletionProtection": "DeletionProtection",
+          "instanceLifecyclePolicy": {
+            "retentionTriggers": {
+              "terminateHookAbandon": "TerminateHookAbandonAction"
+            }
+          },
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "attachToClassicLB": [
+            "*"
+          ],
+          "attachToApplicationTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            }
+          ],
+          "attachToNetworkTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*",
+              "isNetworkTargetGroup": "boolean"
+            }
+          ],
+          "addUserData": [
+            "*"
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "applyCloudFormationInit": [
+            "*",
+            {
+              "configSets": "*",
+              "embedFingerprint": "boolean",
+              "printLog": "boolean",
+              "ignoreFailures": "boolean",
+              "includeUrl": "boolean",
+              "includeRole": "boolean"
+            }
+          ],
+          "protectNewInstancesFromScaleIn": [],
+          "areNewInstancesProtectedFromScaleIn": []
+        },
+        "LifecycleHook": {
+          "autoScalingGroup": "*",
+          "lifecycleHookName": "*",
+          "defaultResult": "DefaultResult",
+          "heartbeatTimeout": "*",
+          "lifecycleTransition": "LifecycleTransition",
+          "notificationMetadata": "*",
+          "notificationTarget": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "ScheduledAction": {
+          "autoScalingGroup": "*",
+          "timeZone": "*",
+          "schedule": "*",
+          "startTime": "*",
+          "endTime": "*",
+          "minCapacity": "*",
+          "maxCapacity": "*",
+          "desiredCapacity": "*"
+        },
+        "WarmPool": {
+          "autoScalingGroup": "*",
+          "reuseOnScaleIn": "boolean",
+          "maxGroupPreparedCapacity": "*",
+          "minSize": "*",
+          "poolState": "PoolState"
+        }
+      },
+      "aws-cdk-lib.aws-backup": {
+        "BackupPlan": {
+          "backupPlanName": "*",
+          "backupVault": "*",
+          "backupPlanRules": "*",
+          "windowsVss": "boolean",
+          "addRule": [
+            "*"
+          ],
+          "addSelection": [
+            "*",
+            {
+              "resources": "*",
+              "backupSelectionName": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "disableDefaultBackupPolicy": "boolean",
+              "allowRestores": "boolean"
+            }
+          ]
+        },
+        "BackupSelection": {
+          "backupPlan": "*",
+          "resources": "*",
+          "backupSelectionName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "disableDefaultBackupPolicy": "boolean",
+          "allowRestores": "boolean"
+        },
+        "BackupVault": {
+          "backupVaultName": "*",
+          "accessPolicy": "*",
+          "encryptionKey": "*",
+          "notificationTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "notificationEvents": "BackupVaultEvents",
+          "removalPolicy": "RemovalPolicy",
+          "blockRecoveryPointDeletion": [],
+          "lockConfiguration": {
+            "minRetention": "*"
+          },
+          "addToAccessPolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-batch": {
+        "ConsumableResource": {
+          "consumableResourceName": "*",
+          "resourceType": "ConsumableResourceType",
+          "totalQuantity": "*",
+          "tags": "*"
+        },
+        "EcsJobDefinition": {
+          "container": {
+            "image": "*",
+            "cpu": "*",
+            "memory": "*",
+            "command": "*",
+            "environment": "*",
+            "executionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "linuxParameters": "*",
+            "logDriverConfig": {
+              "logDriver": "*",
+              "options": "*",
+              "secretOptions": "*"
+            },
+            "readonlyRootFilesystem": "boolean",
+            "secrets": "*",
+            "user": "*",
+            "volumes": "*",
+            "enableExecuteCommand": "boolean"
+          },
+          "propagateTags": "boolean",
+          "jobDefinitionName": "*",
+          "parameters": "*",
+          "retryAttempts": "*",
+          "retryStrategies": "*",
+          "schedulingPriority": "*",
+          "timeout": "*",
+          "skipDeregisterOnUpdate": "boolean",
+          "grantSubmitJob": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "EksJobDefinition": {
+          "container": "*",
+          "dnsPolicy": "DnsPolicy",
+          "useHostNetwork": "boolean",
+          "serviceAccount": "*",
+          "jobDefinitionName": "*",
+          "parameters": "*",
+          "retryAttempts": "*",
+          "retryStrategies": "*",
+          "schedulingPriority": "*",
+          "timeout": "*",
+          "skipDeregisterOnUpdate": "boolean"
+        },
+        "JobQueue": {},
+        "ManagedEc2EcsComputeEnvironment": {
+          "defaultInstanceClasses": "DefaultInstanceClass",
+          "useOptimalInstanceClasses": "boolean",
+          "images": {
+            "imageType": "EcsMachineImageType",
+            "image": "*"
+          },
+          "allocationStrategy": "AllocationStrategy",
+          "spotBidPercentage": "*",
+          "spotFleetRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minvCpus": "*",
+          "placementGroup": "*",
+          "instanceTypes": "*",
+          "instanceClasses": "InstanceClass",
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "ManagedEc2EksComputeEnvironment": {
+          "kubernetesNamespace": "*",
+          "eksCluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "defaultInstanceClasses": "DefaultInstanceClass",
+          "useOptimalInstanceClasses": "boolean",
+          "images": {
+            "imageType": "EksMachineImageType",
+            "image": "*"
+          },
+          "allocationStrategy": "AllocationStrategy",
+          "spotBidPercentage": "*",
+          "instanceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "launchTemplate": {
+            "versionNumber": "*",
+            "launchTemplateId": "*",
+            "launchTemplateName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "minvCpus": "*",
+          "placementGroup": "*",
+          "instanceTypes": "*",
+          "instanceClasses": "InstanceClass",
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "FargateComputeEnvironment": {
+          "maxvCpus": "*",
+          "replaceComputeEnvironment": "boolean",
+          "spot": "boolean",
+          "updateTimeout": "*",
+          "terminateOnUpdate": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "updateToLatestImageVersion": "boolean",
+          "computeEnvironmentName": "*",
+          "serviceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean"
+        },
+        "MultiNodeJobDefinition": {
+          "addContainer": [
+            {
+              "startNode": "*",
+              "endNode": "*",
+              "container": {
+                "image": "*",
+                "cpu": "*",
+                "memory": "*",
+                "command": "*",
+                "environment": "*",
+                "executionRole": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "linuxParameters": "*",
+                "logDriverConfig": {
+                  "logDriver": "*",
+                  "options": "*",
+                  "secretOptions": "*"
+                },
+                "readonlyRootFilesystem": "boolean",
+                "secrets": "*",
+                "user": "*",
+                "volumes": "*",
+                "enableExecuteCommand": "boolean"
+              }
+            }
+          ]
+        },
+        "FairshareSchedulingPolicy": {
+          "addShare": [
+            {
+              "shareIdentifier": "*",
+              "weightFactor": "*"
+            }
+          ]
+        },
+        "UnmanagedComputeEnvironment": {}
+      },
+      "aws-cdk-lib.aws-certificatemanager": {
+        "Certificate": {
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "validationDomains": "*",
+          "validationMethod": "ValidationMethod",
+          "validation": "*",
+          "allowExport": "boolean",
+          "transparencyLoggingEnabled": "boolean",
+          "certificateName": "*",
+          "keyAlgorithm": "*"
+        },
+        "DnsValidatedCertificate": {
+          "hostedZone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "region": "*",
+          "route53Endpoint": "*",
+          "customResourceRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cleanupRoute53Records": "boolean",
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "validationDomains": "*",
+          "validationMethod": "ValidationMethod",
+          "validation": "*",
+          "allowExport": "boolean",
+          "transparencyLoggingEnabled": "boolean",
+          "certificateName": "*",
+          "keyAlgorithm": "*",
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "PrivateCertificate": {
+          "domainName": "*",
+          "subjectAlternativeNames": "*",
+          "certificateAuthority": "*",
+          "keyAlgorithm": "*",
+          "allowExport": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-chatbot": {
+        "SlackChannelConfiguration": {
+          "slackChannelConfigurationName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "slackWorkspaceId": "*",
+          "slackChannelId": "*",
+          "notificationTopics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "loggingLevel": "LoggingLevel",
+          "logRetention": "RetentionDays",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "guardrailPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "userRoleRequired": "boolean",
+          "addNotificationTopic": [
+            {
+              "topicArn": "*",
+              "topicName": "*",
+              "masterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudformation": {
+        "CustomResource": {
+          "provider": "*",
+          "properties": "*",
+          "resourceType": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-cloudfront": {
+        "CachePolicy": {
+          "cachePolicyName": "*",
+          "comment": "*",
+          "defaultTtl": "*",
+          "minTtl": "*",
+          "maxTtl": "*",
+          "cookieBehavior": "*",
+          "headerBehavior": "*",
+          "queryStringBehavior": "*",
+          "enableAcceptEncodingGzip": "boolean",
+          "enableAcceptEncodingBrotli": "boolean"
+        },
+        "Distribution": {
+          "defaultBehavior": {
+            "origin": "*",
+            "allowedMethods": "*",
+            "cachedMethods": "*",
+            "cachePolicy": "*",
+            "compress": "boolean",
+            "originRequestPolicy": "*",
+            "realtimeLogConfig": "*",
+            "responseHeadersPolicy": "*",
+            "smoothStreaming": "boolean",
+            "viewerProtocolPolicy": "ViewerProtocolPolicy",
+            "functionAssociations": {
+              "function": "*",
+              "eventType": "FunctionEventType"
+            },
+            "edgeLambdas": {
+              "functionVersion": {
+                "version": "*",
+                "lambda": {
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    },
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "eventType": "LambdaEdgeEventType",
+              "includeBody": "boolean"
+            },
+            "trustedKeyGroups": "*",
+            "enableGrpc": "boolean"
+          },
+          "additionalBehaviors": "*",
+          "certificate": "*",
+          "comment": "*",
+          "defaultRootObject": "*",
+          "domainNames": "*",
+          "enabled": "boolean",
+          "enableIpv6": "boolean",
+          "enableLogging": "boolean",
+          "geoRestriction": "*",
+          "httpVersion": "HttpVersion",
+          "logBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "logIncludesCookies": "boolean",
+          "logFilePrefix": "*",
+          "priceClass": "PriceClass",
+          "webAclId": "*",
+          "errorResponses": {
+            "ttl": "*",
+            "httpStatus": "*",
+            "responseHttpStatus": "*",
+            "responsePagePath": "*"
+          },
+          "minimumProtocolVersion": "SecurityPolicyProtocol",
+          "sslSupportMethod": "SSLMethod",
+          "publishAdditionalMetrics": "boolean",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRequests": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricBytesUploaded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricBytesDownloaded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTotalErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric4xxErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric5xxErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricOriginLatency": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCacheHitRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric401ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric403ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric404ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric502ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric503ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric504ErrorRate": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addBehavior": [
+            "*",
+            "*",
+            {
+              "allowedMethods": "*",
+              "cachedMethods": "*",
+              "cachePolicy": "*",
+              "compress": "boolean",
+              "originRequestPolicy": "*",
+              "realtimeLogConfig": "*",
+              "responseHeadersPolicy": "*",
+              "smoothStreaming": "boolean",
+              "viewerProtocolPolicy": "ViewerProtocolPolicy",
+              "functionAssociations": {
+                "function": "*",
+                "eventType": "FunctionEventType"
+              },
+              "edgeLambdas": {
+                "functionVersion": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "eventType": "LambdaEdgeEventType",
+                "includeBody": "boolean"
+              },
+              "trustedKeyGroups": "*",
+              "enableGrpc": "boolean"
+            }
+          ],
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "grantCreateInvalidation": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "attachWebAclId": [
+            "*"
+          ]
+        },
+        "Function": {
+          "functionName": "*",
+          "comment": "*",
+          "code": "*",
+          "runtime": "*",
+          "keyValueStore": "*",
+          "autoPublish": "boolean"
+        },
+        "KeyGroup": {
+          "keyGroupName": "*",
+          "comment": "*",
+          "items": "*"
+        },
+        "KeyValueStore": {},
+        "S3OriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "FunctionUrlOriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "MediaPackageV2OriginAccessControl": {
+          "description": "*",
+          "originAccessControlName": "*",
+          "signing": "*"
+        },
+        "OriginAccessIdentity": {},
+        "OriginRequestPolicy": {
+          "originRequestPolicyName": "*",
+          "comment": "*",
+          "cookieBehavior": "*",
+          "headerBehavior": "*",
+          "queryStringBehavior": "*"
+        },
+        "PublicKey": {
+          "publicKeyName": "*",
+          "comment": "*",
+          "encodedKey": "*"
+        },
+        "RealtimeLogConfig": {
+          "realtimeLogConfigName": "*",
+          "fields": "*",
+          "samplingRate": "*",
+          "endPoints": "*"
+        },
+        "ResponseHeadersPolicy": {
+          "responseHeadersPolicyName": "*",
+          "comment": "*",
+          "corsBehavior": {
+            "accessControlAllowCredentials": "boolean",
+            "accessControlAllowHeaders": "*",
+            "accessControlAllowMethods": "*",
+            "accessControlAllowOrigins": "*",
+            "accessControlExposeHeaders": "*",
+            "accessControlMaxAge": "*",
+            "originOverride": "boolean"
+          },
+          "customHeadersBehavior": {
+            "customHeaders": {
+              "header": "*",
+              "override": "boolean",
+              "value": "*"
+            }
+          },
+          "securityHeadersBehavior": {
+            "contentSecurityPolicy": {
+              "contentSecurityPolicy": "*",
+              "override": "boolean"
+            },
+            "contentTypeOptions": {
+              "override": "boolean"
+            },
+            "frameOptions": {
+              "frameOption": "HeadersFrameOption",
+              "override": "boolean"
+            },
+            "referrerPolicy": {
+              "referrerPolicy": "HeadersReferrerPolicy",
+              "override": "boolean"
+            },
+            "strictTransportSecurity": {
+              "accessControlMaxAge": "*",
+              "includeSubdomains": "boolean",
+              "override": "boolean",
+              "preload": "boolean"
+            },
+            "xssProtection": {
+              "modeBlock": "boolean",
+              "override": "boolean",
+              "protection": "boolean",
+              "reportUri": "*"
+            }
+          },
+          "removeHeaders": "*",
+          "serverTimingSamplingRate": "*"
+        },
+        "VpcOrigin": {
+          "endpoint": "*",
+          "httpPort": "*",
+          "httpsPort": "*",
+          "vpcOriginName": "*",
+          "protocolPolicy": "OriginProtocolPolicy",
+          "originSslProtocols": "OriginSslPolicy"
+        },
+        "CloudFrontWebDistribution": {
+          "aliasConfiguration": {
+            "acmCertRef": "*",
+            "names": "*",
+            "sslMethod": "SSLMethod",
+            "securityPolicy": "SecurityPolicyProtocol"
+          },
+          "comment": "*",
+          "enabled": "boolean",
+          "defaultRootObject": "*",
+          "enableIpV6": "boolean",
+          "httpVersion": "HttpVersion",
+          "priceClass": "PriceClass",
+          "viewerProtocolPolicy": "ViewerProtocolPolicy",
+          "originConfigs": {
+            "connectionAttempts": "*",
+            "connectionTimeout": "*",
+            "s3OriginSource": {
+              "s3BucketSource": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "originAccessIdentity": "*",
+              "originPath": "*",
+              "originHeaders": "*",
+              "originShieldRegion": "*"
+            },
+            "customOriginSource": {
+              "domainName": "*",
+              "httpPort": "*",
+              "httpsPort": "*",
+              "originProtocolPolicy": "OriginProtocolPolicy",
+              "allowedOriginSSLVersions": "OriginSslPolicy",
+              "originPath": "*",
+              "originHeaders": "*",
+              "originShieldRegion": "*"
+            },
+            "failoverCriteriaStatusCodes": "FailoverStatusCode",
+            "behaviors": {
+              "compress": "boolean",
+              "isDefaultBehavior": "boolean",
+              "trustedSigners": "*",
+              "trustedKeyGroups": "*",
+              "allowedMethods": "CloudFrontAllowedMethods",
+              "pathPattern": "*",
+              "cachedMethods": "CloudFrontAllowedCachedMethods",
+              "forwardedValues": "*",
+              "lambdaFunctionAssociations": {
+                "eventType": "LambdaEdgeEventType",
+                "lambdaFunction": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "includeBody": "boolean"
+              },
+              "functionAssociations": {
+                "function": "*",
+                "eventType": "FunctionEventType"
+              },
+              "viewerProtocolPolicy": "ViewerProtocolPolicy"
+            },
+            "originPath": "*",
+            "originHeaders": "*",
+            "originShieldRegion": "*"
+          },
+          "loggingConfig": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "includeCookies": "boolean",
+            "prefix": "*"
+          },
+          "errorConfigurations": "*",
+          "webACLId": "*",
+          "viewerCertificate": "*",
+          "geoRestriction": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudtrail": {
+        "Trail": {
+          "includeGlobalServiceEvents": "boolean",
+          "isMultiRegionTrail": "boolean",
+          "managementEvents": "ReadWriteType",
+          "enableFileValidation": "boolean",
+          "sendToCloudWatchLogs": "boolean",
+          "cloudWatchLogsRetention": "RetentionDays",
+          "cloudWatchLogGroup": "*",
+          "kmsKey": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "snsTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "trailName": "*",
+          "s3KeyPrefix": "*",
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "isOrganizationTrail": "boolean",
+          "orgId": "*",
+          "insightTypes": "*",
+          "addEventSelector": [
+            "DataResourceType",
+            "*",
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "addLambdaEventSelector": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "logAllLambdaDataEvents": [
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "addS3EventSelector": [
+            {
+              "bucket": "*",
+              "objectPrefix": "*"
+            },
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "logAllS3DataEvents": [
+            {
+              "readWriteType": "ReadWriteType",
+              "includeManagementEvents": "boolean",
+              "excludeManagementEventSources": "ManagementEventSources"
+            }
+          ],
+          "onCloudTrailEvent": [
+            "*",
+            {
+              "target": "*",
+              "description": "*",
+              "ruleName": "*",
+              "eventPattern": {
+                "version": "*",
+                "id": "*",
+                "detailType": "*",
+                "source": "*",
+                "account": "*",
+                "time": "*",
+                "region": "*",
+                "resources": "*",
+                "detail": "*"
+              },
+              "crossStackScope": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cloudwatch": {
+        "AlarmMuteRule": {
+          "alarms": "*",
+          "alarmMuteRuleName": "*",
+          "description": "*",
+          "schedule": "*",
+          "duration": "*",
+          "start": {
+            "year": "*",
+            "month": "*",
+            "day": "*",
+            "hour": "*",
+            "minute": "*"
+          },
+          "expire": {
+            "year": "*",
+            "month": "*",
+            "day": "*",
+            "hour": "*",
+            "minute": "*"
+          },
+          "tags": "*",
+          "addAlarm": [
+            "*"
+          ]
+        },
+        "Alarm": {
+          "metric": {
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "comparisonOperator": "ComparisonOperator",
+          "threshold": "*",
+          "period": "*",
+          "statistic": "*",
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "evaluationPeriods": "*",
+          "evaluateLowSampleCountPercentile": "*",
+          "treatMissingData": "TreatMissingData",
+          "actionsEnabled": "boolean",
+          "datapointsToAlarm": "*",
+          "toAnnotation": [],
+          "addAlarmAction": [
+            "*"
+          ]
+        },
+        "AnomalyDetectionAlarm": {
+          "metric": {
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "stdDevs": "*",
+          "comparisonOperator": "ComparisonOperator",
+          "period": "*",
+          "statistic": "*",
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "evaluationPeriods": "*",
+          "evaluateLowSampleCountPercentile": "*",
+          "treatMissingData": "TreatMissingData",
+          "actionsEnabled": "boolean",
+          "datapointsToAlarm": "*"
+        },
+        "CompositeAlarm": {
+          "actionsEnabled": "boolean",
+          "alarmDescription": "*",
+          "compositeAlarmName": "*",
+          "alarmRule": "*",
+          "actionsSuppressor": "*",
+          "actionsSuppressorExtensionPeriod": "*",
+          "actionsSuppressorWaitPeriod": "*"
+        },
+        "Dashboard": {
+          "dashboardName": "*",
+          "defaultInterval": "*",
+          "start": "*",
+          "end": "*",
+          "periodOverride": "PeriodOverride",
+          "widgets": {
+            "width": "*",
+            "height": "*",
+            "warnings": "*",
+            "warningsV2": "*"
+          },
+          "variables": "*",
+          "addWidgets": [
+            {
+              "width": "*",
+              "height": "*",
+              "warnings": "*",
+              "warningsV2": "*"
+            }
+          ],
+          "addVariable": [
+            "*"
+          ]
+        },
+        "PromQLAlarm": {
+          "alarmName": "*",
+          "alarmDescription": "*",
+          "pendingPeriod": "*",
+          "recoveryPeriod": "*",
+          "query": "*",
+          "evaluationInterval": "*",
+          "actionsEnabled": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-codebuild": {
+        "Fleet": {
+          "fleetName": "*",
+          "baseCapacity": "*",
+          "computeType": "FleetComputeType",
+          "environmentType": "EnvironmentType",
+          "computeConfiguration": {
+            "disk": "*",
+            "machineType": "MachineType",
+            "vCpu": "*",
+            "instanceType": "*"
+          },
+          "overflowBehavior": "FleetOverflowBehavior",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          }
+        },
+        "PipelineProject": {},
+        "Project": {
+          "source": {
+            "identifier": "*",
+            "type": "*",
+            "badgeSupported": "boolean"
+          },
+          "artifacts": {
+            "identifier": "*",
+            "type": "*"
+          },
+          "secondarySources": {
+            "identifier": "*",
+            "type": "*",
+            "badgeSupported": "boolean"
+          },
+          "secondaryArtifacts": {
+            "identifier": "*",
+            "type": "*"
+          },
+          "description": "*",
+          "buildSpec": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cache": "*",
+          "environment": {
+            "buildImage": {
+              "type": "*",
+              "imageId": "*",
+              "defaultComputeType": "ComputeType",
+              "imagePullPrincipalType": "ImagePullPrincipalType",
+              "secretsManagerCredentials": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "repository": {
+                "repositoryName": "*",
+                "repositoryArn": "*",
+                "repositoryUri": "*",
+                "registryUri": "*"
+              }
+            },
+            "computeType": "ComputeType",
+            "dockerServer": {
+              "computeType": "DockerServerComputeType",
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              }
+            },
+            "fleet": {
+              "fleetArn": "*",
+              "fleetName": "*",
+              "computeType": "FleetComputeType",
+              "environmentType": "EnvironmentType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "hostKernel": "HostKernel",
+            "privileged": "boolean",
+            "certificate": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "objectKey": "*"
+            },
+            "environmentVariables": "*"
+          },
+          "badge": "boolean",
+          "timeout": "*",
+          "environmentVariables": "*",
+          "checkSecretsInPlainTextEnvVariables": "boolean",
+          "projectName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "fileSystemLocations": "*",
+          "grantReportGroupPermissions": "boolean",
+          "logging": {
+            "s3": {
+              "encrypted": "boolean",
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*",
+              "enabled": "boolean"
+            },
+            "cloudWatch": {
+              "logGroup": {
+                "logGroupArn": "*",
+                "logGroupName": "*"
+              },
+              "prefix": "*",
+              "enabled": "boolean"
+            }
+          },
+          "queuedTimeout": "*",
+          "concurrentBuildLimit": "*",
+          "ssmSessionPermissions": "boolean",
+          "visibility": "ProjectVisibility",
+          "autoRetryLimit": "*",
+          "enableBatchBuilds": [],
+          "addSecondarySource": [
+            {
+              "identifier": "*",
+              "type": "*",
+              "badgeSupported": "boolean"
+            }
+          ],
+          "addFileSystemLocation": [
+            "*"
+          ],
+          "addSecondaryArtifact": [
+            {
+              "identifier": "*",
+              "type": "*"
+            }
+          ],
+          "bindToCodePipeline": [
+            "*",
+            {
+              "artifactBucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              }
+            }
+          ]
+        },
+        "ReportGroup": {
+          "reportGroupName": "*",
+          "exportBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "zipExport": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "type": "ReportGroupType",
+          "deleteReports": "boolean"
+        },
+        "GitHubSourceCredentials": {
+          "accessToken": "*"
+        },
+        "GitHubEnterpriseSourceCredentials": {
+          "accessToken": "*"
+        },
+        "BitBucketSourceCredentials": {
+          "username": "*",
+          "password": "*"
+        },
+        "UntrustedCodeBoundaryPolicy": {
+          "managedPolicyName": "*",
+          "additionalStatements": "*"
+        }
+      },
+      "aws-cdk-lib.aws-codecommit": {
+        "Repository": {
+          "repositoryName": "*",
+          "description": "*",
+          "code": "*",
+          "kmsKey": "*",
+          "notify": [
+            "*",
+            {
+              "name": "*",
+              "events": "RepositoryEventTrigger",
+              "branches": "*",
+              "customData": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-codeguruprofiler": {
+        "ProfilingGroup": {
+          "profilingGroupName": "*",
+          "computePlatform": "ComputePlatform"
+        }
+      },
+      "aws-cdk-lib.aws-codepipeline": {
+        "Pipeline": {
+          "artifactBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "restartExecutionOnUpdate": "boolean",
+          "pipelineName": "*",
+          "crossRegionReplicationBuckets": "*",
+          "stages": {
+            "stageName": "*",
+            "actions": {
+              "actionProperties": {
+                "actionName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "region": "*",
+                "account": "*",
+                "resource": "*",
+                "category": "ActionCategory",
+                "provider": "*",
+                "owner": "*",
+                "version": "*",
+                "runOrder": "*",
+                "artifactBounds": {
+                  "minInputs": "*",
+                  "maxInputs": "*",
+                  "minOutputs": "*",
+                  "maxOutputs": "*"
+                },
+                "inputs": "*",
+                "variablesNamespace": "*",
+                "commands": "*",
+                "outputVariables": "*",
+                "timeout": "*"
+              }
+            },
+            "transitionToEnabled": "boolean",
+            "transitionDisabledReason": "*",
+            "beforeEntry": {
+              "conditions": {
+                "rules": "*",
+                "result": "Result"
+              }
+            },
+            "onFailure": {
+              "result": "Result",
+              "retryMode": "RetryMode"
+            }
+          },
+          "crossAccountKeys": "boolean",
+          "enableKeyRotation": "boolean",
+          "reuseCrossRegionSupportStacks": "boolean",
+          "pipelineType": "PipelineType",
+          "variables": "*",
+          "triggers": {
+            "providerType": "ProviderType",
+            "gitConfiguration": {
+              "sourceAction": {
+                "actionProperties": {
+                  "actionName": "*",
+                  "role": {
+                    "roleArn": "*",
+                    "roleName": "*",
+                    "assumeRoleAction": "*",
+                    "policyFragment": "*",
+                    "principalAccount": "*",
+                    "grantPrincipal": {
+                      "assumeRoleAction": "*",
+                      "principalAccount": "*"
+                    },
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "region": "*",
+                  "account": "*",
+                  "resource": "*",
+                  "category": "ActionCategory",
+                  "provider": "*",
+                  "owner": "*",
+                  "version": "*",
+                  "runOrder": "*",
+                  "artifactBounds": {
+                    "minInputs": "*",
+                    "maxInputs": "*",
+                    "minOutputs": "*",
+                    "maxOutputs": "*"
+                  },
+                  "inputs": "*",
+                  "variablesNamespace": "*",
+                  "commands": "*",
+                  "outputVariables": "*",
+                  "timeout": "*"
+                }
+              },
+              "pushFilter": {
+                "tagsExcludes": "*",
+                "tagsIncludes": "*",
+                "branchesExcludes": "*",
+                "branchesIncludes": "*",
+                "filePathsExcludes": "*",
+                "filePathsIncludes": "*"
+              },
+              "pullRequestFilter": {
+                "events": "GitPullRequestEvent",
+                "branchesExcludes": "*",
+                "branchesIncludes": "*",
+                "filePathsExcludes": "*",
+                "filePathsIncludes": "*"
+              }
+            }
+          },
+          "executionMode": "ExecutionMode",
+          "usePipelineRoleForActions": "boolean",
+          "addStage": [
+            {
+              "placement": {
+                "rightBefore": {
+                  "stageName": "*",
+                  "pipeline": {
+                    "pipelineName": "*",
+                    "pipelineArn": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "actions": {
+                    "actionProperties": {
+                      "actionName": "*",
+                      "role": {
+                        "roleArn": "*",
+                        "roleName": "*",
+                        "assumeRoleAction": "*",
+                        "policyFragment": "*",
+                        "principalAccount": "*",
+                        "grantPrincipal": {
+                          "assumeRoleAction": "*",
+                          "principalAccount": "*"
+                        }
+                      },
+                      "region": "*",
+                      "account": "*",
+                      "resource": "*",
+                      "category": "ActionCategory",
+                      "provider": "*",
+                      "owner": "*",
+                      "version": "*",
+                      "runOrder": "*",
+                      "artifactBounds": {
+                        "minInputs": "*",
+                        "maxInputs": "*",
+                        "minOutputs": "*",
+                        "maxOutputs": "*"
+                      },
+                      "inputs": "*",
+                      "variablesNamespace": "*",
+                      "commands": "*",
+                      "outputVariables": "*",
+                      "timeout": "*"
+                    }
+                  }
+                }
+              },
+              "stageName": "*",
+              "transitionToEnabled": "boolean",
+              "transitionDisabledReason": "*",
+              "beforeEntry": {
+                "conditions": {
+                  "rules": "*",
+                  "result": "Result"
+                }
+              },
+              "onFailure": {
+                "result": "Result",
+                "retryMode": "RetryMode"
+              }
+            }
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "addVariable": [
+            "*"
+          ],
+          "addTrigger": [
+            {
+              "providerType": "ProviderType",
+              "gitConfiguration": {
+                "sourceAction": {
+                  "actionProperties": {
+                    "actionName": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "region": "*",
+                    "account": "*",
+                    "resource": "*",
+                    "category": "ActionCategory",
+                    "provider": "*",
+                    "owner": "*",
+                    "version": "*",
+                    "runOrder": "*",
+                    "artifactBounds": {
+                      "minInputs": "*",
+                      "maxInputs": "*",
+                      "minOutputs": "*",
+                      "maxOutputs": "*"
+                    },
+                    "inputs": "*",
+                    "variablesNamespace": "*",
+                    "commands": "*",
+                    "outputVariables": "*",
+                    "timeout": "*"
+                  }
+                },
+                "pushFilter": {
+                  "tagsExcludes": "*",
+                  "tagsIncludes": "*",
+                  "branchesExcludes": "*",
+                  "branchesIncludes": "*",
+                  "filePathsExcludes": "*",
+                  "filePathsIncludes": "*"
+                },
+                "pullRequestFilter": {
+                  "events": "GitPullRequestEvent",
+                  "branchesExcludes": "*",
+                  "branchesIncludes": "*",
+                  "filePathsExcludes": "*",
+                  "filePathsIncludes": "*"
+                }
+              }
+            }
+          ],
+          "stage": [
+            "*"
+          ],
+          "_attachActionToPipeline": [
+            "*",
+            {
+              "actionProperties": {
+                "actionName": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "region": "*",
+                "account": "*",
+                "resource": "*",
+                "category": "ActionCategory",
+                "provider": "*",
+                "owner": "*",
+                "version": "*",
+                "runOrder": "*",
+                "artifactBounds": {
+                  "minInputs": "*",
+                  "maxInputs": "*",
+                  "minOutputs": "*",
+                  "maxOutputs": "*"
+                },
+                "inputs": "*",
+                "variablesNamespace": "*",
+                "commands": "*",
+                "outputVariables": "*",
+                "timeout": "*"
+              }
+            },
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-codestarnotifications": {
+        "NotificationRule": {
+          "events": "*",
+          "source": "*",
+          "targets": "*",
+          "notificationRuleName": "*",
+          "enabled": "boolean",
+          "detailType": "DetailType",
+          "createdBy": "*",
+          "addTarget": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cognito": {
+        "UserPoolClient": {
+          "userPool": "*",
+          "userPoolClientName": "*",
+          "generateSecret": "boolean",
+          "authFlows": {
+            "adminUserPassword": "boolean",
+            "custom": "boolean",
+            "userPassword": "boolean",
+            "userSrp": "boolean",
+            "user": "boolean"
+          },
+          "disableOAuth": "boolean",
+          "oAuth": {
+            "flows": {
+              "authorizationCodeGrant": "boolean",
+              "implicitCodeGrant": "boolean",
+              "clientCredentials": "boolean"
+            },
+            "callbackUrls": "*",
+            "logoutUrls": "*",
+            "scopes": "*",
+            "defaultRedirectUri": "*"
+          },
+          "authSessionValidity": "*",
+          "preventUserExistenceErrors": "boolean",
+          "supportedIdentityProviders": "*",
+          "idTokenValidity": "*",
+          "refreshTokenValidity": "*",
+          "accessTokenValidity": "*",
+          "refreshTokenRotationGracePeriod": "*",
+          "readAttributes": "*",
+          "writeAttributes": "*",
+          "enableTokenRevocation": "boolean",
+          "enablePropagateAdditionalUserContextData": "boolean",
+          "analytics": {
+            "application": "*",
+            "applicationId": "*",
+            "externalId": "*",
+            "role": "*",
+            "shareUserData": "boolean"
+          }
+        },
+        "UserPoolDomain": {
+          "userPool": "*",
+          "customDomain": {
+            "domainName": "*",
+            "certificate": "*"
+          },
+          "cognitoDomain": {
+            "domainPrefix": "*"
+          },
+          "managedLoginVersion": "ManagedLoginVersion",
+          "baseUrl": [
+            {
+              "fips": "boolean"
+            }
+          ],
+          "signInUrl": [
+            "*",
+            {
+              "redirectUri": "*",
+              "signInPath": "*",
+              "fips": "boolean"
+            }
+          ]
+        },
+        "UserPoolGroup": {
+          "userPool": "*",
+          "description": "*",
+          "groupName": "*",
+          "precedence": "*",
+          "role": "*"
+        },
+        "UserPoolResourceServer": {
+          "userPool": "*",
+          "identifier": "*",
+          "userPoolResourceServerName": "*",
+          "scopes": "*"
+        },
+        "UserPool": {
+          "userPoolName": "*",
+          "selfSignUpEnabled": "boolean",
+          "userVerification": {
+            "emailSubject": "*",
+            "emailBody": "*",
+            "emailStyle": "VerificationEmailStyle",
+            "smsMessage": "*"
+          },
+          "userInvitation": {
+            "emailSubject": "*",
+            "emailBody": "*",
+            "smsMessage": "*"
+          },
+          "smsRole": "*",
+          "smsRoleExternalId": "*",
+          "snsRegion": "*",
+          "enableSmsRole": "boolean",
+          "signInAliases": {
+            "username": "boolean",
+            "email": "boolean",
+            "phone": "boolean",
+            "preferredUsername": "boolean"
+          },
+          "autoVerify": {
+            "email": "boolean",
+            "phone": "boolean"
+          },
+          "keepOriginal": {
+            "email": "boolean",
+            "phone": "boolean"
+          },
+          "standardAttributes": {
+            "address": {
+              "mutable": "boolean",
+              "required": "boolean"
+            }
+          },
+          "customAttributes": "*",
+          "mfa": "Mfa",
+          "mfaMessage": "*",
+          "mfaSecondFactor": {
+            "sms": "boolean",
+            "otp": "boolean",
+            "email": "boolean"
+          },
+          "passwordPolicy": {
+            "tempPasswordValidity": "*",
+            "minLength": "*",
+            "requireLowercase": "boolean",
+            "requireUppercase": "boolean",
+            "requireDigits": "boolean",
+            "requireSymbols": "boolean",
+            "passwordHistorySize": "*"
+          },
+          "signInPolicy": {
+            "allowedFirstAuthFactors": {
+              "password": "boolean",
+              "emailOtp": "boolean",
+              "smsOtp": "boolean",
+              "passkey": "boolean"
+            }
+          },
+          "passkeyRelyingPartyId": "*",
+          "passkeyUserVerification": "PasskeyUserVerification",
+          "emailSettings": {
+            "from": "*",
+            "replyTo": "*"
+          },
+          "email": "*",
+          "lambdaTriggers": {
+            "createAuthChallenge": {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          },
+          "signInCaseSensitive": "boolean",
+          "accountRecovery": "AccountRecovery",
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "deviceTracking": {
+            "challengeRequiredOnNewDevice": "boolean",
+            "deviceOnlyRememberedOnUserPrompt": "boolean"
+          },
+          "customSenderKmsKey": "*",
+          "advancedSecurityMode": "AdvancedSecurityMode",
+          "featurePlan": "FeaturePlan",
+          "standardThreatProtectionMode": "StandardThreatProtectionMode",
+          "customThreatProtectionMode": "CustomThreatProtectionMode",
+          "addTrigger": [
+            "*",
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            "LambdaVersion"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-cognito-identitypool": {
+        "IdentityPool": {
+          "identityPoolName": "*",
+          "authenticatedRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "unauthenticatedRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "allowUnauthenticatedIdentities": "boolean",
+          "roleMappings": {
+            "providerUrl": "*",
+            "mappingKey": "*",
+            "useToken": "boolean",
+            "resolveAmbiguousRoles": "boolean",
+            "rules": {
+              "claim": "*",
+              "mappedRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "claimValue": "*",
+              "matchType": "RoleMappingMatchType"
+            }
+          },
+          "allowClassicFlow": "boolean",
+          "authenticationProviders": {
+            "facebook": {
+              "appId": "*"
+            },
+            "google": {
+              "clientId": "*"
+            },
+            "amazon": {
+              "appId": "*"
+            },
+            "apple": {
+              "servicesId": "*"
+            },
+            "twitter": {
+              "consumerKey": "*",
+              "consumerSecret": "*"
+            },
+            "userPools": "*",
+            "openIdConnectProviders": "*",
+            "samlProviders": "*",
+            "customProvider": "*"
+          },
+          "addUserPoolAuthentication": [
+            "*"
+          ]
+        },
+        "IdentityPoolRoleAttachment": {
+          "identityPool": {
+            "identityPoolId": "*",
+            "identityPoolArn": "*",
+            "identityPoolName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "authenticatedRole": "*",
+          "unauthenticatedRole": "*",
+          "roleMappings": {
+            "providerUrl": "*",
+            "mappingKey": "*",
+            "useToken": "boolean",
+            "resolveAmbiguousRoles": "boolean",
+            "rules": {
+              "claim": "*",
+              "mappedRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "claimValue": "*",
+              "matchType": "RoleMappingMatchType"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-config": {
+        "AccessKeysRotated": {
+          "maxAge": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CloudFormationStackDriftDetectionCheck": {
+          "ownStackOnly": "boolean",
+          "role": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CloudFormationStackNotificationCheck": {
+          "topics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "ManagedRule": {
+          "identifier": "*",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CustomRule": {
+          "lambdaFunction": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "configurationChanges": "boolean",
+          "periodic": "boolean",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        },
+        "CustomPolicy": {
+          "policyText": "*",
+          "enableDebugLog": "boolean",
+          "configRuleName": "*",
+          "description": "*",
+          "inputParameters": "*",
+          "maximumExecutionFrequency": "MaximumExecutionFrequency",
+          "ruleScope": "*",
+          "evaluationModes": "*"
+        }
+      },
+      "aws-cdk-lib.aws-docdb": {
+        "DatabaseCluster": {
+          "engineVersion": "*",
+          "port": "*",
+          "masterUser": {
+            "username": "*",
+            "password": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "excludeCharacters": "*",
+            "secretName": "*"
+          },
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "storageEncrypted": "boolean",
+          "dbClusterName": "*",
+          "instanceIdentifierBase": "*",
+          "instanceType": "*",
+          "instances": "*",
+          "serverlessV2ScalingConfiguration": {
+            "minCapacity": "*",
+            "maxCapacity": "*"
+          },
+          "caCertificate": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": "*",
+          "preferredMaintenanceWindow": "*",
+          "instanceMaintenanceWindow": "*",
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "exportProfilerLogsToCloudWatch": "boolean",
+          "exportAuditLogsToCloudWatch": "boolean",
+          "cloudWatchLogsRetention": "RetentionDays",
+          "cloudWatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enablePerformanceInsights": "boolean",
+          "instanceRemovalPolicy": "RemovalPolicy",
+          "securityGroupRemovalPolicy": "RemovalPolicy",
+          "copyTagsToSnapshot": "boolean",
+          "storageType": "StorageType",
+          "manageMasterUserPassword": "boolean",
+          "masterUserSecretKmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addRotationSingleUser": [
+            "*"
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*"
+            }
+          ],
+          "addSecurityGroups": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "secretName": "*",
+          "masterSecret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "excludeCharacters": "*"
+        },
+        "DatabaseInstance": {
+          "cluster": "*",
+          "instanceType": "*",
+          "availabilityZone": "*",
+          "dbInstanceName": "*",
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "removalPolicy": "RemovalPolicy",
+          "enablePerformanceInsights": "boolean",
+          "caCertificate": "*"
+        },
+        "ClusterParameterGroup": {
+          "description": "*",
+          "family": "*",
+          "dbClusterParameterGroupName": "*",
+          "parameters": "*"
+        }
+      },
+      "aws-cdk-lib.aws-dynamodb": {
+        "TableV2": {
+          "partitionKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "sortKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "tableName": "*",
+          "timeToLiveAttribute": "*",
+          "dynamoStream": "StreamViewType",
+          "removalPolicy": "RemovalPolicy",
+          "billing": "*",
+          "replicas": {
+            "region": "*",
+            "readCapacity": "*",
+            "maxReadRequestUnits": "*",
+            "globalSecondaryIndexOptions": "*",
+            "contributorInsights": "boolean",
+            "contributorInsightsSpecification": {
+              "enabled": "boolean",
+              "mode": "ContributorInsightsMode"
+            },
+            "deletionProtection": "boolean",
+            "pointInTimeRecovery": "boolean",
+            "pointInTimeRecoverySpecification": {
+              "pointInTimeRecoveryEnabled": "boolean",
+              "recoveryPeriodInDays": "*"
+            },
+            "tableClass": "TableClass",
+            "kinesisStream": {
+              "streamArn": "*",
+              "streamName": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            },
+            "tags": {
+              "key": "*",
+              "value": "*"
+            },
+            "resourcePolicy": "*"
+          },
+          "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode",
+          "witnessRegion": "*",
+          "multiRegionConsistency": "MultiRegionConsistency",
+          "globalSecondaryIndexes": {
+            "partitionKey": {
+              "name": "*",
+              "type": "AttributeType"
+            },
+            "readCapacity": "*",
+            "maxReadRequestUnits": "*",
+            "maxWriteRequestUnits": "*",
+            "warmThroughput": {
+              "readUnitsPerSecond": "*",
+              "writeUnitsPerSecond": "*"
+            },
+            "indexName": "*",
+            "projectionType": "ProjectionType",
+            "nonKeyAttributes": "*"
+          },
+          "localSecondaryIndexes": {
+            "sortKey": {
+              "name": "*",
+              "type": "AttributeType"
+            },
+            "indexName": "*",
+            "projectionType": "ProjectionType",
+            "nonKeyAttributes": "*"
+          },
+          "encryption": "*",
+          "warmThroughput": {
+            "readUnitsPerSecond": "*",
+            "writeUnitsPerSecond": "*"
+          },
+          "contributorInsights": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "tableClass": "TableClass",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tags": {
+            "key": "*",
+            "value": "*"
+          },
+          "resourcePolicy": "*",
+          "streamResourcePolicy": "*",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addToStreamResourcePolicy": [
+            "*"
+          ],
+          "addReplica": [
+            {
+              "region": "*",
+              "readCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "globalSecondaryIndexOptions": "*",
+              "contributorInsights": "boolean",
+              "contributorInsightsSpecification": {
+                "enabled": "boolean",
+                "mode": "ContributorInsightsMode"
+              },
+              "deletionProtection": "boolean",
+              "pointInTimeRecovery": "boolean",
+              "pointInTimeRecoverySpecification": {
+                "pointInTimeRecoveryEnabled": "boolean",
+                "recoveryPeriodInDays": "*"
+              },
+              "tableClass": "TableClass",
+              "kinesisStream": {
+                "streamArn": "*",
+                "streamName": "*",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "tags": {
+                "key": "*",
+                "value": "*"
+              },
+              "resourcePolicy": "*"
+            }
+          ],
+          "addGlobalSecondaryIndex": [
+            {
+              "partitionKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "readCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "maxWriteRequestUnits": "*",
+              "warmThroughput": {
+                "readUnitsPerSecond": "*",
+                "writeUnitsPerSecond": "*"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "addLocalSecondaryIndex": [
+            {
+              "sortKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "replica": [
+            "*"
+          ]
+        },
+        "TableV2MultiAccountReplica": {
+          "replicaSourceTable": {
+            "tableId": "*",
+            "grants": "*",
+            "tableArn": "*",
+            "tableName": "*",
+            "tableStreamArn": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tableName": "*",
+          "encryption": "*",
+          "removalPolicy": "RemovalPolicy",
+          "globalTableSettingsReplicationMode": "GlobalTableSettingsReplicationMode",
+          "grantIndexPermissions": "boolean",
+          "contributorInsights": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "tableClass": "TableClass",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "tags": {
+            "key": "*",
+            "value": "*"
+          },
+          "resourcePolicy": "*",
+          "streamResourcePolicy": "*",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addToStreamResourcePolicy": [
+            "*"
+          ]
+        },
+        "Table": {
+          "tableName": "*",
+          "kinesisStream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kinesisPrecisionTimestamp": "ApproximateCreationDateTimePrecision",
+          "readCapacity": "*",
+          "writeCapacity": "*",
+          "maxReadRequestUnits": "*",
+          "maxWriteRequestUnits": "*",
+          "billingMode": "BillingMode",
+          "warmThroughput": {
+            "readUnitsPerSecond": "*",
+            "writeUnitsPerSecond": "*"
+          },
+          "pointInTimeRecovery": "boolean",
+          "pointInTimeRecoverySpecification": {
+            "pointInTimeRecoveryEnabled": "boolean",
+            "recoveryPeriodInDays": "*"
+          },
+          "serverSideEncryption": "boolean",
+          "tableClass": "TableClass",
+          "encryption": "TableEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeToLiveAttribute": "*",
+          "stream": "StreamViewType",
+          "removalPolicy": "RemovalPolicy",
+          "replicaRemovalPolicy": "RemovalPolicy",
+          "replicationRegions": "*",
+          "replicationTimeout": "*",
+          "waitForReplicationToFinish": "boolean",
+          "contributorInsightsEnabled": "boolean",
+          "contributorInsightsSpecification": {
+            "enabled": "boolean",
+            "mode": "ContributorInsightsMode"
+          },
+          "deletionProtection": "boolean",
+          "importSource": {
+            "compressionType": "InputCompressionType",
+            "inputFormat": "*",
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "bucketOwner": "*",
+            "keyPrefix": "*"
+          },
+          "resourcePolicy": "*",
+          "partitionKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "sortKey": {
+            "name": "*",
+            "type": "AttributeType"
+          },
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addGlobalSecondaryIndex": [
+            {
+              "partitionKeys": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "readCapacity": "*",
+              "writeCapacity": "*",
+              "maxReadRequestUnits": "*",
+              "maxWriteRequestUnits": "*",
+              "warmThroughput": {
+                "readUnitsPerSecond": "*",
+                "writeUnitsPerSecond": "*"
+              },
+              "contributorInsightsEnabled": "boolean",
+              "contributorInsightsSpecification": {
+                "enabled": "boolean",
+                "mode": "ContributorInsightsMode"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "addLocalSecondaryIndex": [
+            {
+              "sortKey": {
+                "name": "*",
+                "type": "AttributeType"
+              },
+              "indexName": "*",
+              "projectionType": "ProjectionType",
+              "nonKeyAttributes": "*"
+            }
+          ],
+          "autoScaleReadCapacity": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleWriteCapacity": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleGlobalSecondaryIndexReadCapacity": [
+            "*",
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "autoScaleGlobalSecondaryIndexWriteCapacity": [
+            "*",
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "schema": [
+            "*"
+          ],
+          "schemaV2": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ec2": {
+        "BastionHostLinux": {
+          "availabilityZone": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "instanceName": "*",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "timeout": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "userDataCausesReplacement": "boolean",
+          "allowSshAccessFrom": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "ClientVpnAuthorizationRule": {
+          "clientVpnEndpoint": "*",
+          "clientVpnEndoint": "*",
+          "cidr": "*",
+          "groupId": "*",
+          "description": "*"
+        },
+        "ClientVpnEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "cidr": "*",
+          "clientCertificateArn": "*",
+          "userBasedAuthentication": "*",
+          "logging": "boolean",
+          "logGroup": "*",
+          "logStream": "*",
+          "clientConnectionHandler": {
+            "functionName": "*",
+            "functionArn": "*"
+          },
+          "description": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "selfServicePortal": "boolean",
+          "serverCertificateArn": "*",
+          "splitTunnel": "boolean",
+          "transportProtocol": "TransportProtocol",
+          "port": "VpnPort",
+          "dnsServers": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "authorizeAllUsersToVpcCidr": "boolean",
+          "sessionTimeout": "ClientVpnSessionTimeout",
+          "disconnectOnSessionTimeout": "boolean",
+          "clientLoginBanner": "*",
+          "clientRouteEnforcementOptions": {
+            "enforced": "boolean"
+          },
+          "addAuthorizationRule": [
+            "*",
+            {
+              "cidr": "*",
+              "groupId": "*",
+              "description": "*"
+            }
+          ],
+          "addRoute": [
+            "*",
+            {
+              "cidr": "*",
+              "description": "*",
+              "target": "*"
+            }
+          ]
+        },
+        "ClientVpnRoute": {
+          "clientVpnEndpoint": {
+            "endpointId": "*",
+            "targetNetworksAssociated": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "clientVpnEndoint": {
+            "endpointId": "*",
+            "targetNetworksAssociated": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "cidr": "*",
+          "description": "*",
+          "target": "*"
+        },
+        "Instance": {
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "availabilityZone": "*",
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "resourceSignalTimeout": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "machineImage": "*",
+          "userData": "*",
+          "userDataCausesReplacement": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "instanceName": "*",
+          "sourceDestCheck": "boolean",
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "privateIpAddress": "*",
+          "propagateTagsToVolumeOnCreation": "boolean",
+          "init": "*",
+          "initOptions": {
+            "configSets": "*",
+            "timeout": "*",
+            "embedFingerprint": "boolean",
+            "printLog": "boolean",
+            "ignoreFailures": "boolean",
+            "includeUrl": "boolean",
+            "includeRole": "boolean"
+          },
+          "requireImdsv2": "boolean",
+          "httpEndpoint": "boolean",
+          "httpProtocolIpv6": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "HttpTokens",
+          "instanceMetadataTags": "boolean",
+          "detailedMonitoring": "boolean",
+          "ssmSessionPermissions": "boolean",
+          "associatePublicIpAddress": "boolean",
+          "creditSpecification": "CpuCredits",
+          "ebsOptimized": "boolean",
+          "disableApiTermination": "boolean",
+          "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior",
+          "placementGroup": "*",
+          "enclaveEnabled": "boolean",
+          "hibernationEnabled": "boolean",
+          "ipv6AddressCount": "*",
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "addUserData": [
+            "*"
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "applyCloudFormationInit": [
+            "*",
+            {
+              "configSets": "*",
+              "timeout": "*",
+              "embedFingerprint": "boolean",
+              "printLog": "boolean",
+              "ignoreFailures": "boolean",
+              "includeUrl": "boolean",
+              "includeRole": "boolean"
+            }
+          ]
+        },
+        "KeyPair": {
+          "_isOsCompatible": [
+            "OperatingSystemType"
+          ]
+        },
+        "LaunchTemplate": {
+          "launchTemplateName": "*",
+          "versionDescription": "*",
+          "instanceType": "*",
+          "machineImage": "*",
+          "userData": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "blockDevices": {
+            "deviceName": "*",
+            "volume": "*",
+            "mappingEnabled": "boolean"
+          },
+          "cpuCredits": "CpuCredits",
+          "cpuOptions": {
+            "amdSevSnp": "boolean",
+            "coreCount": "*",
+            "nestedVirtualization": "boolean",
+            "threadsPerCore": "*"
+          },
+          "disableApiTermination": "boolean",
+          "ebsOptimized": "boolean",
+          "nitroEnclaveEnabled": "boolean",
+          "hibernationConfigured": "boolean",
+          "instanceInitiatedShutdownBehavior": "InstanceInitiatedShutdownBehavior",
+          "spotOptions": {
+            "blockDuration": "*",
+            "interruptionBehavior": "SpotInstanceInterruption",
+            "maxPrice": "*",
+            "requestType": "SpotRequestType",
+            "validUntil": "*"
+          },
+          "keyName": "*",
+          "keyPair": {
+            "keyPairName": "*",
+            "type": "KeyPairType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "detailedMonitoring": "boolean",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "requireImdsv2": "boolean",
+          "httpEndpoint": "boolean",
+          "httpProtocolIpv6": "boolean",
+          "httpPutResponseHopLimit": "*",
+          "httpTokens": "LaunchTemplateHttpTokens",
+          "instanceMetadataTags": "boolean",
+          "associatePublicIpAddress": "boolean",
+          "instanceProfile": {
+            "instanceProfileName": "*",
+            "instanceProfileArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "placementGroup": "*",
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ]
+        },
+        "NetworkAcl": {
+          "networkAclName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "associateWithSubnet": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ]
+        },
+        "NetworkAclEntry": {
+          "networkAcl": {
+            "networkAclId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkAclEntryName": "*",
+          "cidr": "*",
+          "traffic": "*",
+          "direction": "TrafficDirection",
+          "ruleAction": "Action",
+          "ruleNumber": "*"
+        },
+        "SubnetNetworkAclAssociation": {
+          "subnetNetworkAclAssociationName": "*",
+          "networkAcl": "*",
+          "subnet": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "PlacementGroup": {},
+        "PrefixList": {},
+        "SecurityGroup": {
+          "securityGroupName": "*",
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "disableInlineRules": "boolean",
+          "addIngressRule": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "*",
+            "*",
+            "boolean"
+          ],
+          "addEgressRule": [
+            {
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "*",
+            "*",
+            "boolean"
+          ]
+        },
+        "Volume": {
+          "volumeName": "*",
+          "availabilityZone": "*",
+          "size": "*",
+          "snapshotId": "*",
+          "enableMultiAttach": "boolean",
+          "encrypted": "boolean",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoEnableIo": "boolean",
+          "volumeType": "EbsDeviceVolumeType",
+          "iops": "*",
+          "removalPolicy": "RemovalPolicy",
+          "throughput": "*",
+          "volumeInitializationRate": "*"
+        },
+        "VpcEndpointService": {
+          "vpcEndpointServiceName": "*",
+          "vpcEndpointServiceLoadBalancers": {
+            "loadBalancerArn": "*"
+          },
+          "acceptanceRequired": "boolean",
+          "contributorInsights": "boolean",
+          "whitelistedPrincipals": "*",
+          "allowedPrincipals": "*",
+          "supportedIpAddressTypes": "IpAddressType",
+          "allowedRegions": "*"
+        },
+        "GatewayVpcEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "service": {
+            "name": "*"
+          },
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "ipAddressType": "VpcEndpointIpAddressType",
+          "dnsRecordIpType": "VpcEndpointDnsRecordIpType"
+        },
+        "InterfaceVpcEndpoint": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "service": {
+            "name": "*",
+            "port": "*",
+            "privateDnsDefault": "boolean"
+          },
+          "privateDnsEnabled": "boolean",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "open": "boolean",
+          "lookupSupportedAzs": "boolean",
+          "ipAddressType": "VpcEndpointIpAddressType",
+          "dnsRecordIpType": "VpcEndpointDnsRecordIpType",
+          "privateDnsOnlyForInboundResolverEndpoint": "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint",
+          "serviceRegion": "*"
+        },
+        "FlowLog": {
+          "flowLogName": "*",
+          "resourceType": "*",
+          "trafficType": "FlowLogTrafficType",
+          "destination": "*",
+          "logFormat": "*",
+          "maxAggregationInterval": "FlowLogMaxAggregationInterval"
+        },
+        "Vpc": {
+          "ipProtocol": "IpProtocol",
+          "ipAddresses": "*",
+          "cidr": "*",
+          "enableDnsHostnames": "boolean",
+          "enableDnsSupport": "boolean",
+          "defaultInstanceTenancy": "DefaultInstanceTenancy",
+          "maxAzs": "*",
+          "reservedAzs": "*",
+          "availabilityZones": "*",
+          "natGateways": "*",
+          "natGatewaySubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "natGatewayProvider": "*",
+          "subnetConfiguration": {
+            "cidrMask": "*",
+            "subnetType": "SubnetType",
+            "name": "*",
+            "reserved": "boolean",
+            "mapPublicIpOnLaunch": "boolean",
+            "ipv6AssignAddressOnCreation": "boolean"
+          },
+          "vpnGateway": "boolean",
+          "vpnGatewayAsn": "*",
+          "vpnConnections": "*",
+          "vpnRoutePropagation": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "gatewayEndpoints": "*",
+          "flowLogs": "*",
+          "vpcName": "*",
+          "restrictDefaultSecurityGroup": "boolean",
+          "createInternetGateway": "boolean",
+          "ipv6Addresses": {
+            "amazonProvided": "boolean"
+          },
+          "addS3Endpoint": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ],
+          "addDynamoDbEndpoint": [
+            "*",
+            {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          ]
+        },
+        "Subnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "addDefaultInternetRoute": [
+            "*",
+            "*"
+          ],
+          "addIpv6DefaultInternetRoute": [
+            "*",
+            "*"
+          ],
+          "addIpv6DefaultEgressOnlyInternetRoute": [
+            "*"
+          ],
+          "addDefaultNatRoute": [
+            "*"
+          ],
+          "addIpv6Nat64Route": [
+            "*"
+          ],
+          "addRoute": [
+            "*",
+            {
+              "destinationCidrBlock": "*",
+              "destinationIpv6CidrBlock": "*",
+              "routerType": "RouterType",
+              "routerId": "*",
+              "enablesInternetConnectivity": "boolean"
+            }
+          ],
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "PublicSubnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean",
+          "addNatGateway": [
+            "*",
+            {
+              "maxDrainDuration": "*"
+            }
+          ]
+        },
+        "PrivateSubnet": {
+          "availabilityZone": "*",
+          "vpcId": "*",
+          "cidrBlock": "*",
+          "mapPublicIpOnLaunch": "boolean",
+          "ipv6CidrBlock": "*",
+          "assignIpv6AddressOnCreation": "boolean"
+        },
+        "ImportedVpc": {
+          "vpcId": "*",
+          "vpcCidrBlock": "*",
+          "availabilityZones": "*",
+          "publicSubnetIds": "*",
+          "publicSubnetNames": "*",
+          "publicSubnetRouteTableIds": "*",
+          "publicSubnetIpv4CidrBlocks": "*",
+          "privateSubnetIds": "*",
+          "privateSubnetNames": "*",
+          "privateSubnetRouteTableIds": "*",
+          "privateSubnetIpv4CidrBlocks": "*",
+          "isolatedSubnetIds": "*",
+          "isolatedSubnetNames": "*",
+          "isolatedSubnetRouteTableIds": "*",
+          "isolatedSubnetIpv4CidrBlocks": "*",
+          "vpnGatewayId": "*",
+          "region": "*"
+        },
+        "LookedUpVpc": {
+          "vpcId": "*",
+          "vpcCidrBlock": "*",
+          "availabilityZones": "*",
+          "publicSubnetIds": "*",
+          "publicSubnetNames": "*",
+          "publicSubnetRouteTableIds": "*",
+          "privateSubnetIds": "*",
+          "privateSubnetNames": "*",
+          "privateSubnetRouteTableIds": "*",
+          "isolatedSubnetIds": "*",
+          "isolatedSubnetNames": "*",
+          "isolatedSubnetRouteTableIds": "*",
+          "vpnGatewayId": "*",
+          "subnetGroups": {
+            "name": "*",
+            "type": "VpcSubnetGroupType",
+            "subnets": {
+              "subnetId": "*",
+              "availabilityZone": "*",
+              "routeTableId": "*",
+              "cidr": "*"
+            }
+          },
+          "region": "*",
+          "ownerAccountId": "*"
+        },
+        "ImportedSubnet": {
+          "availabilityZone": "*",
+          "ipv4CidrBlock": "*",
+          "routeTableId": "*",
+          "subnetId": "*",
+          "associateNetworkAcl": [
+            "*",
+            {
+              "networkAclId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "VpnGateway": {
+          "type": "*",
+          "amazonSideAsn": "*"
+        },
+        "VpnConnection": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ip": "*",
+          "asn": "*",
+          "staticRoutes": "*",
+          "tunnelOptions": {
+            "preSharedKey": "*",
+            "preSharedKeySecret": "*",
+            "tunnelInsideCidr": "*"
+          }
+        }
+      },
+      "aws-cdk-lib.aws-ecr": {
+        "Repository": {
+          "repositoryName": "*",
+          "encryption": "*",
+          "encryptionKey": "*",
+          "lifecycleRules": {
+            "rulePriority": "*",
+            "description": "*",
+            "tagStatus": "TagStatus",
+            "tagPrefixList": "*",
+            "tagPatternList": "*",
+            "maxImageCount": "*",
+            "maxImageAge": "*"
+          },
+          "lifecycleRegistryId": "*",
+          "removalPolicy": "RemovalPolicy",
+          "imageScanOnPush": "boolean",
+          "imageTagMutability": "TagMutability",
+          "imageTagMutabilityExclusionFilters": "*",
+          "autoDeleteImages": "boolean",
+          "emptyOnDelete": "boolean",
+          "addToResourcePolicy": [
+            "*"
+          ],
+          "addLifecycleRule": [
+            {
+              "rulePriority": "*",
+              "description": "*",
+              "tagStatus": "TagStatus",
+              "tagPrefixList": "*",
+              "tagPatternList": "*",
+              "maxImageCount": "*",
+              "maxImageAge": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ecs": {
+        "Cluster": {
+          "clusterName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "defaultCloudMapNamespace": {
+            "name": "*",
+            "type": "NamespaceType",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "useForServiceConnect": "boolean"
+          },
+          "capacity": {
+            "instanceType": "*",
+            "machineImage": "*",
+            "taskDrainTime": "*",
+            "spotInstanceDraining": "boolean",
+            "topicEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "machineImageType": "MachineImageType",
+            "minCapacity": "*",
+            "maxCapacity": "*",
+            "desiredCapacity": "*",
+            "keyName": "*",
+            "keyPair": {
+              "keyPairName": "*",
+              "type": "KeyPairType"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*",
+              "subnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              }
+            },
+            "notificationsTopic": {
+              "topicArn": "*",
+              "topicName": "*",
+              "contentBasedDeduplication": "boolean",
+              "fifo": "boolean"
+            },
+            "notifications": {
+              "scalingEvents": "*"
+            },
+            "allowAllOutbound": "boolean",
+            "updateType": "UpdateType",
+            "rollingUpdateConfiguration": {
+              "maxBatchSize": "*",
+              "minInstancesInService": "*",
+              "minSuccessfulInstancesPercent": "*",
+              "waitOnResourceSignals": "boolean",
+              "suspendProcesses": "ScalingProcess"
+            },
+            "replacingUpdateMinSuccessfulInstancesPercent": "*",
+            "ignoreUnmodifiedSizeProperties": "boolean",
+            "resourceSignalCount": "*",
+            "associatePublicIpAddress": "boolean",
+            "spotPrice": "*",
+            "healthCheck": "*",
+            "healthChecks": "*",
+            "blockDevices": {
+              "deviceName": "*",
+              "volume": "*",
+              "mappingEnabled": "boolean"
+            },
+            "instanceMonitoring": "Monitoring",
+            "groupMetrics": "*",
+            "signals": "*",
+            "updatePolicy": "*",
+            "newInstancesProtectedFromScaleIn": "boolean",
+            "autoScalingGroupName": "*",
+            "terminationPolicies": "TerminationPolicy",
+            "terminationPolicyCustomLambdaFunctionArn": "*",
+            "capacityRebalance": "boolean",
+            "ssmSessionPermissions": "boolean",
+            "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+            "deletionProtection": "DeletionProtection",
+            "instanceLifecyclePolicy": {
+              "retentionTriggers": {
+                "terminateHookAbandon": "TerminateHookAbandonAction"
+              }
+            }
+          },
+          "capacityProviders": "*",
+          "enableFargateCapacityProviders": [],
+          "containerInsights": "boolean",
+          "containerInsightsV2": "ContainerInsights",
+          "executeCommandConfiguration": {
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "logConfiguration": {
+              "cloudWatchEncryptionEnabled": "boolean",
+              "cloudWatchLogGroup": "*",
+              "s3Bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "s3EncryptionEnabled": "boolean",
+              "s3KeyPrefix": "*"
+            },
+            "logging": "ExecuteCommandLogging"
+          },
+          "managedStorageConfiguration": {
+            "fargateEphemeralStorageKmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "kmsKey": "*"
+          },
+          "addDefaultCapacityProviderStrategy": [
+            {
+              "capacityProvider": "*",
+              "base": "*",
+              "weight": "*"
+            }
+          ],
+          "addDefaultCloudMapNamespace": [
+            {
+              "name": "*",
+              "type": "NamespaceType",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "useForServiceConnect": "boolean"
+            }
+          ],
+          "addExistingDefaultCloudMapNamespace": [
+            {
+              "namespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "useForServiceConnect": "boolean"
+            }
+          ],
+          "addCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "machineImage": "*",
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType"
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addAsgCapacityProvider": [
+            "*",
+            {
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType"
+            }
+          ],
+          "addManagedInstancesCapacityProvider": [
+            "*"
+          ],
+          "addAutoScalingGroup": [
+            "*",
+            {
+              "taskDrainTime": "*",
+              "spotInstanceDraining": "boolean",
+              "topicEncryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "machineImageType": "MachineImageType"
+            }
+          ],
+          "addCapacityProvider": [
+            "*"
+          ],
+          "arnForTasks": [
+            "*"
+          ],
+          "grantTaskProtection": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "metricCpuReservation": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricCpuUtilization": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricMemoryReservation": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricMemoryUtilization": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ImportedCluster": {
+          "clusterName": "*",
+          "clusterArn": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "hasEc2Capacity": "boolean",
+          "defaultCloudMapNamespace": {
+            "namespaceName": "*",
+            "namespaceId": "*",
+            "namespaceArn": "*",
+            "type": "NamespaceType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoscalingGroup": {
+            "autoScalingGroupName": "*",
+            "autoScalingGroupArn": "*",
+            "osType": "OperatingSystemType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "executeCommandConfiguration": {
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "logConfiguration": {
+              "cloudWatchEncryptionEnabled": "boolean",
+              "cloudWatchLogGroup": "*",
+              "s3Bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "s3EncryptionEnabled": "boolean",
+              "s3KeyPrefix": "*"
+            },
+            "logging": "ExecuteCommandLogging"
+          }
+        }
+      },
+      "aws-cdk-lib.aws-efs": {
+        "AccessPoint": {
+          "fileSystem": "*",
+          "createAcl": {
+            "ownerUid": "*",
+            "ownerGid": "*",
+            "permissions": "*"
+          },
+          "path": "*",
+          "posixUser": {
+            "uid": "*",
+            "gid": "*",
+            "secondaryGids": "*"
+          },
+          "clientToken": "*"
+        },
+        "ImportedAccessPoint": {
+          "accessPointId": "*",
+          "accessPointArn": "*",
+          "fileSystem": "*"
+        },
+        "FileSystem": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "encrypted": "boolean",
+          "fileSystemName": "*",
+          "kmsKey": "*",
+          "lifecyclePolicy": "LifecyclePolicy",
+          "outOfInfrequentAccessPolicy": "OutOfInfrequentAccessPolicy",
+          "transitionToArchivePolicy": "LifecyclePolicy",
+          "performanceMode": "PerformanceMode",
+          "throughputMode": "ThroughputMode",
+          "provisionedThroughputPerSecond": "*",
+          "removalPolicy": "RemovalPolicy",
+          "enableAutomaticBackups": "boolean",
+          "fileSystemPolicy": "*",
+          "allowAnonymousAccess": "boolean",
+          "oneZone": "boolean",
+          "replicationOverwriteProtection": "ReplicationOverwriteProtection",
+          "replicationConfiguration": "*",
+          "addAccessPoint": [
+            "*",
+            {
+              "createAcl": {
+                "ownerUid": "*",
+                "ownerGid": "*",
+                "permissions": "*"
+              },
+              "path": "*",
+              "posixUser": {
+                "uid": "*",
+                "gid": "*",
+                "secondaryGids": "*"
+              },
+              "clientToken": "*"
+            }
+          ]
+        },
+        "ImportedFileSystem": {
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "fileSystemId": "*",
+          "fileSystemArn": "*"
+        }
+      },
+      "aws-cdk-lib.aws-eks": {
+        "AccessEntry": {
+          "accessEntryName": "*",
+          "accessEntryType": "AccessEntryType",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "accessPolicies": {
+            "accessScope": {
+              "namespaces": "*",
+              "type": "AccessScopeType"
+            },
+            "policy": "*"
+          },
+          "principal": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addAccessPolicies": [
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            }
+          ]
+        },
+        "Addon": {
+          "addonName": "*",
+          "addonVersion": "*",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "preserveOnDelete": "boolean",
+          "configurationValues": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Cluster": {
+          "defaultCapacity": "*",
+          "defaultCapacityInstance": "*",
+          "defaultCapacityType": "DefaultCapacityType",
+          "kubectlLambdaRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "bootstrapClusterCreatorAdminPermissions": "boolean",
+          "bootstrapSelfManagedAddons": "boolean",
+          "tags": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "outputMastersRoleArn": "boolean",
+          "endpointAccess": "*",
+          "kubectlEnvironment": "*",
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerEnvironment": "*",
+          "clusterHandlerSecurityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean",
+          "placeClusterHandlerInVpc": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": {
+              "enableWafv2": "boolean",
+              "enableWaf": "boolean"
+            },
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "authenticationMode": "AuthenticationMode",
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "controlPlaneScalingTier": "ControlPlaneScalingTier",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "outputClusterName": "boolean",
+          "outputConfigCommand": "boolean",
+          "grantAccess": [
+            "*",
+            "*",
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            },
+            {
+              "accessEntryType": "AccessEntryType"
+            }
+          ],
+          "getServiceLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "getIngressLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "addAutoScalingGroupCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "mapRole": "boolean",
+              "bootstrapEnabled": "boolean",
+              "bootstrapOptions": {
+                "useMaxPods": "boolean",
+                "enableDockerBridge": "boolean",
+                "awsApiRetryAttempts": "*",
+                "dockerConfigJson": "*",
+                "dnsClusterIp": "*",
+                "kubeletExtraArgs": "*",
+                "additionalArgs": "*"
+              },
+              "machineImageType": "MachineImageType",
+              "spotInterruptHandler": "boolean",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "masterKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "pauseTime": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addNodegroupCapacity": [
+            "*",
+            {
+              "nodegroupName": "*",
+              "subnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "amiType": "NodegroupAmiType",
+              "diskSize": "*",
+              "desiredSize": "*",
+              "maxSize": "*",
+              "minSize": "*",
+              "forceUpdate": "boolean",
+              "instanceType": "*",
+              "labels": "*",
+              "taints": {
+                "effect": "TaintEffect",
+                "key": "*",
+                "value": "*"
+              },
+              "nodeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "releaseVersion": "*",
+              "remoteAccess": {
+                "sshKeyName": "*",
+                "sourceSecurityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                }
+              },
+              "tags": "*",
+              "launchTemplateSpec": {
+                "id": "*",
+                "version": "*"
+              },
+              "capacityType": "CapacityType",
+              "maxUnavailable": "*",
+              "maxUnavailablePercentage": "*",
+              "enableNodeAutoRepair": "boolean",
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "addFargateProfile": [
+            "*",
+            {
+              "fargateProfileName": "*",
+              "podExecutionRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "selectors": {
+                "namespace": "*",
+                "labels": "*"
+              },
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "subnetSelection": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "_attachFargateProfile": [
+            "*"
+          ],
+          "_attachKubectlResourceScope": [
+            "*"
+          ]
+        },
+        "ImportedCluster": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clusterName": "*",
+          "clusterEndpoint": "*",
+          "clusterCertificateAuthorityData": "*",
+          "clusterSecurityGroupId": "*",
+          "clusterEncryptionConfigKeyArn": "*",
+          "ipFamily": "IpFamily",
+          "securityGroupIds": "*",
+          "kubectlRoleArn": "*",
+          "kubectlLambdaRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlEnvironment": "*",
+          "kubectlSecurityGroupId": "*",
+          "kubectlPrivateSubnetIds": "*",
+          "openIdConnectProvider": {
+            "openIdConnectProviderArn": "*",
+            "openIdConnectProviderIssuer": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlProvider": {
+            "serviceToken": "*",
+            "roleArn": "*",
+            "handlerRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerSecurityGroupId": "*",
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean"
+        },
+        "FargateCluster": {
+          "defaultProfile": {
+            "fargateProfileName": "*",
+            "podExecutionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "selectors": {
+              "namespace": "*",
+              "labels": "*"
+            },
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "subnetSelection": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "outputMastersRoleArn": "boolean",
+          "endpointAccess": "*",
+          "kubectlEnvironment": "*",
+          "kubectlLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "awscliLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlMemory": "*",
+          "clusterHandlerEnvironment": "*",
+          "clusterHandlerSecurityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "onEventLayer": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "prune": "boolean",
+          "placeClusterHandlerInVpc": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": {
+              "enableWafv2": "boolean",
+              "enableWaf": "boolean"
+            },
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "authenticationMode": "AuthenticationMode",
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "deletionProtection": "boolean",
+          "controlPlaneScalingTier": "ControlPlaneScalingTier",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "outputClusterName": "boolean",
+          "outputConfigCommand": "boolean"
+        },
+        "Nodegroup": {
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "kubectlRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              }
+            },
+            "kubectlEnvironment": "*",
+            "kubectlLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProvider": {
+              "serviceToken": "*",
+              "roleArn": "*"
+            },
+            "kubectlMemory": "*",
+            "prune": "boolean",
+            "authenticationMode": "AuthenticationMode"
+          },
+          "nodegroupName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "amiType": "NodegroupAmiType",
+          "diskSize": "*",
+          "desiredSize": "*",
+          "maxSize": "*",
+          "minSize": "*",
+          "forceUpdate": "boolean",
+          "instanceType": "*",
+          "instanceTypes": "*",
+          "labels": "*",
+          "taints": {
+            "effect": "TaintEffect",
+            "key": "*",
+            "value": "*"
+          },
+          "nodeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "releaseVersion": "*",
+          "remoteAccess": {
+            "sshKeyName": "*",
+            "sourceSecurityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "tags": "*",
+          "launchTemplateSpec": {
+            "id": "*",
+            "version": "*"
+          },
+          "capacityType": "CapacityType",
+          "maxUnavailable": "*",
+          "maxUnavailablePercentage": "*",
+          "enableNodeAutoRepair": "boolean",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OidcProviderNative": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-eks-v2": {
+        "AccessEntry": {
+          "accessEntryName": "*",
+          "accessEntryType": "AccessEntryType",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "accessPolicies": {
+            "accessScope": {
+              "namespaces": "*",
+              "type": "AccessScopeType"
+            },
+            "policy": "*"
+          },
+          "principal": "*",
+          "removalPolicy": "RemovalPolicy",
+          "addAccessPolicies": [
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            }
+          ]
+        },
+        "Addon": {
+          "addonName": "*",
+          "addonVersion": "*",
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "preserveOnDelete": "boolean",
+          "configurationValues": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Cluster": {
+          "compute": {
+            "nodePools": "*",
+            "nodeRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "defaultCapacity": "*",
+          "defaultCapacityInstance": "*",
+          "defaultCapacityType": "DefaultCapacityType",
+          "bootstrapClusterCreatorAdminPermissions": "boolean",
+          "bootstrapSelfManagedAddons": "boolean",
+          "outputConfigCommand": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "endpointAccess": "*",
+          "prune": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": "*",
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "tags": "*",
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "controlPlaneScalingTier": "*",
+          "removalPolicy": "RemovalPolicy",
+          "grantAccess": [
+            "*",
+            "*",
+            {
+              "accessScope": {
+                "namespaces": "*",
+                "type": "AccessScopeType"
+              },
+              "policy": "*"
+            },
+            {
+              "accessEntryType": "AccessEntryType"
+            }
+          ],
+          "grantClusterAdmin": [
+            "*",
+            "*"
+          ],
+          "getServiceLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "getIngressLoadBalancerAddress": [
+            "*",
+            {
+              "timeout": "*",
+              "namespace": "*"
+            }
+          ],
+          "addAutoScalingGroupCapacity": [
+            "*",
+            {
+              "instanceType": "*",
+              "bootstrapEnabled": "boolean",
+              "bootstrapOptions": {
+                "useMaxPods": "boolean",
+                "enableDockerBridge": "boolean",
+                "awsApiRetryAttempts": "*",
+                "dockerConfigJson": "*",
+                "dnsClusterIp": "*",
+                "kubeletExtraArgs": "*",
+                "additionalArgs": "*"
+              },
+              "machineImageType": "MachineImageType",
+              "minCapacity": "*",
+              "maxCapacity": "*",
+              "desiredCapacity": "*",
+              "keyName": "*",
+              "keyPair": {
+                "keyPairName": "*",
+                "type": "KeyPairType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "notificationsTopic": {
+                "topicArn": "*",
+                "topicName": "*",
+                "masterKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "contentBasedDeduplication": "boolean",
+                "fifo": "boolean"
+              },
+              "notifications": {
+                "scalingEvents": "*"
+              },
+              "allowAllOutbound": "boolean",
+              "updateType": "UpdateType",
+              "rollingUpdateConfiguration": {
+                "maxBatchSize": "*",
+                "minInstancesInService": "*",
+                "minSuccessfulInstancesPercent": "*",
+                "pauseTime": "*",
+                "waitOnResourceSignals": "boolean",
+                "suspendProcesses": "ScalingProcess"
+              },
+              "replacingUpdateMinSuccessfulInstancesPercent": "*",
+              "ignoreUnmodifiedSizeProperties": "boolean",
+              "resourceSignalCount": "*",
+              "associatePublicIpAddress": "boolean",
+              "spotPrice": "*",
+              "healthCheck": "*",
+              "healthChecks": "*",
+              "blockDevices": {
+                "deviceName": "*",
+                "volume": "*",
+                "mappingEnabled": "boolean"
+              },
+              "instanceMonitoring": "Monitoring",
+              "groupMetrics": "*",
+              "signals": "*",
+              "updatePolicy": "*",
+              "newInstancesProtectedFromScaleIn": "boolean",
+              "autoScalingGroupName": "*",
+              "terminationPolicies": "TerminationPolicy",
+              "terminationPolicyCustomLambdaFunctionArn": "*",
+              "capacityRebalance": "boolean",
+              "ssmSessionPermissions": "boolean",
+              "azCapacityDistributionStrategy": "CapacityDistributionStrategy",
+              "deletionProtection": "DeletionProtection",
+              "instanceLifecyclePolicy": {
+                "retentionTriggers": {
+                  "terminateHookAbandon": "TerminateHookAbandonAction"
+                }
+              }
+            }
+          ],
+          "addNodegroupCapacity": [
+            "*",
+            {
+              "nodegroupName": "*",
+              "subnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "amiType": "NodegroupAmiType",
+              "diskSize": "*",
+              "desiredSize": "*",
+              "maxSize": "*",
+              "minSize": "*",
+              "forceUpdate": "boolean",
+              "instanceTypes": "*",
+              "labels": "*",
+              "taints": {
+                "effect": "TaintEffect",
+                "key": "*",
+                "value": "*"
+              },
+              "nodeRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "releaseVersion": "*",
+              "remoteAccess": {
+                "sshKeyName": "*",
+                "sourceSecurityGroups": {
+                  "securityGroupId": "*",
+                  "allowAllOutbound": "boolean",
+                  "canInlineRule": "boolean",
+                  "uniqueId": "*",
+                  "connections": "*"
+                }
+              },
+              "tags": "*",
+              "launchTemplateSpec": {
+                "id": "*",
+                "version": "*"
+              },
+              "capacityType": "CapacityType",
+              "maxUnavailable": "*",
+              "maxUnavailablePercentage": "*",
+              "enableNodeAutoRepair": "boolean",
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "addFargateProfile": [
+            "*",
+            {
+              "fargateProfileName": "*",
+              "podExecutionRole": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "selectors": {
+                "namespace": "*",
+                "labels": "*"
+              },
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "subnetSelection": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "removalPolicy": "RemovalPolicy"
+            }
+          ],
+          "_attachFargateProfile": [
+            "*"
+          ],
+          "_dependOnKubectlBarrier": [
+            "*"
+          ]
+        },
+        "ImportedCluster": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clusterName": "*",
+          "clusterEndpoint": "*",
+          "clusterCertificateAuthorityData": "*",
+          "clusterSecurityGroupId": "*",
+          "clusterEncryptionConfigKeyArn": "*",
+          "ipFamily": "IpFamily",
+          "securityGroupIds": "*",
+          "openIdConnectProvider": {
+            "openIdConnectProviderArn": "*",
+            "openIdConnectProviderIssuer": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "kubectlProvider": {
+            "serviceToken": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "prune": "boolean"
+        },
+        "FargateCluster": {
+          "defaultProfile": {
+            "fargateProfileName": "*",
+            "podExecutionRole": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "selectors": {
+              "namespace": "*",
+              "labels": "*"
+            },
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "subnetSelection": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "clusterName": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "version": "*",
+          "mastersRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "coreDnsComputeType": "CoreDnsComputeType",
+          "endpointAccess": "*",
+          "prune": "boolean",
+          "secretsEncryptionKey": "*",
+          "ipFamily": "IpFamily",
+          "serviceIpv4Cidr": "*",
+          "albController": {
+            "version": "*",
+            "repository": "*",
+            "policy": "*",
+            "additionalHelmChartValues": "*",
+            "overwriteServiceAccount": "boolean",
+            "removalPolicy": "RemovalPolicy"
+          },
+          "clusterLogging": "ClusterLoggingTypes",
+          "tags": "*",
+          "kubectlProviderOptions": {
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "awscliLayer": {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*"
+            },
+            "environment": "*",
+            "securityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "memory": "*",
+            "privateSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              }
+            },
+            "removalPolicy": "RemovalPolicy"
+          },
+          "remoteNodeNetworks": {
+            "cidrs": "*"
+          },
+          "remotePodNetworks": {
+            "cidrs": "*"
+          },
+          "controlPlaneScalingTier": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Nodegroup": {
+          "cluster": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "clusterName": "*",
+            "clusterArn": "*",
+            "clusterEndpoint": "*",
+            "clusterCertificateAuthorityData": "*",
+            "clusterSecurityGroupId": "*",
+            "clusterSecurityGroup": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "clusterEncryptionConfigKeyArn": "*",
+            "openIdConnectProvider": {
+              "openIdConnectProviderArn": "*",
+              "openIdConnectProviderIssuer": "*"
+            },
+            "eksPodIdentityAgent": {
+              "addonName": "*",
+              "addonArn": "*"
+            },
+            "ipFamily": "IpFamily",
+            "kubectlProviderOptions": {
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "awscliLayer": {
+                "layerVersionArn": "*",
+                "compatibleRuntimes": "*"
+              },
+              "environment": "*",
+              "memory": "*",
+              "removalPolicy": "RemovalPolicy"
+            },
+            "kubectlProvider": {
+              "serviceToken": "*"
+            },
+            "prune": "boolean"
+          },
+          "nodegroupName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "amiType": "NodegroupAmiType",
+          "diskSize": "*",
+          "desiredSize": "*",
+          "maxSize": "*",
+          "minSize": "*",
+          "forceUpdate": "boolean",
+          "instanceTypes": "*",
+          "labels": "*",
+          "taints": {
+            "effect": "TaintEffect",
+            "key": "*",
+            "value": "*"
+          },
+          "nodeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "releaseVersion": "*",
+          "remoteAccess": {
+            "sshKeyName": "*",
+            "sourceSecurityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "tags": "*",
+          "launchTemplateSpec": {
+            "id": "*",
+            "version": "*"
+          },
+          "capacityType": "CapacityType",
+          "maxUnavailable": "*",
+          "maxUnavailablePercentage": "*",
+          "enableNodeAutoRepair": "boolean",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OidcProviderNative": {
+          "url": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-elasticloadbalancing": {
+        "LoadBalancer": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "listeners": {
+            "externalPort": "*",
+            "externalProtocol": "LoadBalancingProtocol",
+            "internalPort": "*",
+            "internalProtocol": "LoadBalancingProtocol",
+            "policyNames": "*",
+            "sslCertificateId": "*",
+            "sslCertificateArn": "*",
+            "allowConnectionsFrom": {
+              "connections": "*"
+            }
+          },
+          "targets": {
+            "connections": "*"
+          },
+          "healthCheck": {
+            "port": "*",
+            "protocol": "LoadBalancingProtocol",
+            "path": "*",
+            "healthyThreshold": "*",
+            "unhealthyThreshold": "*",
+            "interval": "*"
+          },
+          "crossZone": "boolean",
+          "subnetSelection": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "accessLoggingPolicy": "*",
+          "addListener": [
+            {
+              "externalPort": "*",
+              "externalProtocol": "LoadBalancingProtocol",
+              "internalPort": "*",
+              "internalProtocol": "LoadBalancingProtocol",
+              "policyNames": "*",
+              "sslCertificateId": "*",
+              "sslCertificateArn": "*",
+              "allowConnectionsFrom": {
+                "connections": "*"
+              }
+            }
+          ],
+          "addTarget": [
+            {
+              "connections": "*"
+            }
+          ],
+          "_addInstanceId": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-elasticsearch": {
+        "Domain": {
+          "accessPolicies": "*",
+          "advancedOptions": "*",
+          "cognitoKibanaAuth": {
+            "identityPoolId": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "userPoolId": "*"
+          },
+          "domainName": "*",
+          "ebs": {
+            "enabled": "boolean",
+            "iops": "*",
+            "volumeSize": "*",
+            "volumeType": "EbsDeviceVolumeType"
+          },
+          "capacity": {
+            "masterNodes": "*",
+            "masterNodeInstanceType": "*",
+            "dataNodes": "*",
+            "dataNodeInstanceType": "*",
+            "warmNodes": "*",
+            "warmInstanceType": "*"
+          },
+          "zoneAwareness": {
+            "enabled": "boolean",
+            "availabilityZoneCount": "*"
+          },
+          "version": "*",
+          "encryptionAtRest": {
+            "enabled": "boolean",
+            "kmsKey": "*"
+          },
+          "logging": {
+            "slowSearchLogEnabled": "boolean",
+            "slowSearchLogGroup": "*",
+            "slowIndexLogEnabled": "boolean",
+            "slowIndexLogGroup": "*",
+            "appLogEnabled": "boolean",
+            "appLogGroup": "*",
+            "auditLogEnabled": "boolean",
+            "auditLogGroup": "*"
+          },
+          "nodeToNodeEncryption": "boolean",
+          "automatedSnapshotStartHour": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "enforceHttps": "boolean",
+          "tlsSecurityPolicy": "TLSSecurityPolicy",
+          "fineGrainedAccessControl": {
+            "masterUserArn": "*",
+            "masterUserName": "*",
+            "masterUserPassword": "*"
+          },
+          "useUnsignedBasicAuth": "boolean",
+          "enableVersionUpgrade": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "customEndpoint": {
+            "domainName": "*",
+            "certificate": "*",
+            "hostedZone": {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            }
+          },
+          "addAccessPolicies": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-events": {
+        "ApiDestination": {
+          "apiDestinationName": "*",
+          "description": "*",
+          "connection": "*",
+          "endpoint": "*",
+          "httpMethod": "HttpMethod",
+          "rateLimitPerSecond": "*"
+        },
+        "Archive": {
+          "sourceEventBus": "*",
+          "archiveName": "*",
+          "description": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "retention": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Connection": {
+          "connectionName": "*",
+          "description": "*",
+          "authorization": "*",
+          "bodyParameters": "*",
+          "headerParameters": "*",
+          "queryStringParameters": "*"
+        },
+        "ImportedConnection": {
+          "connectionName": "*",
+          "connectionArn": "*",
+          "connectionSecretArn": "*"
+        },
+        "EventBus": {
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "ImportedEventBus": {
+          "eventBusName": "*",
+          "eventBusArn": "*",
+          "eventBusPolicy": "*",
+          "eventSourceName": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        },
+        "EventBusPolicy": {
+          "eventBus": {
+            "eventBusName": "*",
+            "eventBusArn": "*",
+            "eventBusPolicy": "*",
+            "eventSourceName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "statement": "*",
+          "statementId": "*"
+        },
+        "Rule": {
+          "enabled": "boolean",
+          "schedule": "*",
+          "targets": "*",
+          "eventBus": "*",
+          "role": "*",
+          "description": "*",
+          "ruleName": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "crossStackScope": "*",
+          "addTarget": [
+            "*"
+          ],
+          "addEventPattern": [
+            {
+              "version": "*",
+              "id": "*",
+              "detailType": "*",
+              "source": "*",
+              "account": "*",
+              "time": "*",
+              "region": "*",
+              "resources": "*",
+              "detail": "*"
+            }
+          ],
+          "_renderEventPattern": []
+        },
+        "MirrorRule": {
+          "enabled": "boolean",
+          "schedule": "*",
+          "targets": "*",
+          "eventBus": "*",
+          "role": "*",
+          "description": "*",
+          "ruleName": "*",
+          "eventPattern": {
+            "version": "*",
+            "id": "*",
+            "detailType": "*",
+            "source": "*",
+            "account": "*",
+            "time": "*",
+            "region": "*",
+            "resources": "*",
+            "detail": "*"
+          },
+          "crossStackScope": "*",
+          "_renderEventPattern": []
+        }
+      },
+      "aws-cdk-lib.aws-fsx": {
+        "LustreFileSystem": {
+          "lustreConfiguration": {
+            "deploymentType": "LustreDeploymentType",
+            "exportPath": "*",
+            "importedFileChunkSizeMiB": "*",
+            "importPath": "*",
+            "autoImportPolicy": "LustreAutoImportPolicy",
+            "dataCompressionType": "LustreDataCompressionType",
+            "perUnitStorageThroughput": "*",
+            "weeklyMaintenanceStartTime": "*",
+            "automaticBackupRetention": "*",
+            "copyTagsToBackups": "boolean",
+            "dailyAutomaticBackupStartTime": "*",
+            "driveCacheType": "DriveCacheType"
+          },
+          "fileSystemTypeVersion": "FileSystemTypeVersion",
+          "vpcSubnet": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "backupId": "*",
+          "kmsKey": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "storageCapacityGiB": "*",
+          "removalPolicy": "RemovalPolicy",
+          "storageType": "StorageType"
+        }
+      },
+      "aws-cdk-lib.aws-globalaccelerator": {
+        "Accelerator": {
+          "acceleratorName": "*",
+          "enabled": "boolean",
+          "ipAddresses": "*",
+          "ipAddressType": "IpAddressType",
+          "addListener": [
+            "*",
+            {
+              "listenerName": "*",
+              "portRanges": {
+                "fromPort": "*",
+                "toPort": "*"
+              },
+              "protocol": "ConnectionProtocol",
+              "clientAffinity": "ClientAffinity"
+            }
+          ]
+        },
+        "EndpointGroup": {
+          "listener": "*",
+          "endpointGroupName": "*",
+          "region": "*",
+          "healthCheckInterval": "*",
+          "healthCheckPath": "*",
+          "healthCheckPort": "*",
+          "healthCheckProtocol": "HealthCheckProtocol",
+          "healthCheckThreshold": "*",
+          "trafficDialPercentage": "*",
+          "portOverrides": {
+            "listenerPort": "*",
+            "endpointPort": "*"
+          },
+          "endpoints": {
+            "region": "*"
+          },
+          "addEndpoint": [
+            {
+              "region": "*"
+            }
+          ],
+          "connectionsPeer": [
+            "*",
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ]
+        },
+        "Listener": {
+          "accelerator": "*",
+          "listenerName": "*",
+          "portRanges": {
+            "fromPort": "*",
+            "toPort": "*"
+          },
+          "protocol": "ConnectionProtocol",
+          "clientAffinity": "ClientAffinity",
+          "addEndpointGroup": [
+            "*",
+            {
+              "endpointGroupName": "*",
+              "region": "*",
+              "healthCheckInterval": "*",
+              "healthCheckPath": "*",
+              "healthCheckPort": "*",
+              "healthCheckProtocol": "HealthCheckProtocol",
+              "healthCheckThreshold": "*",
+              "trafficDialPercentage": "*",
+              "portOverrides": {
+                "listenerPort": "*",
+                "endpointPort": "*"
+              },
+              "endpoints": {
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-glue": {
+        "Catalog": {
+          "catalogName": "*",
+          "description": "*",
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "AccountCatalog": {
+          "encryptionAtRest": "*",
+          "connectionPasswordEncryption": {
+            "kmsKey": "*",
+            "returnConnectionPasswordEncrypted": "boolean"
+          }
+        },
+        "ImportedCatalog": {},
+        "Connection": {
+          "type": "*",
+          "connectionName": "*",
+          "description": "*",
+          "properties": "*",
+          "secret": "*",
+          "matchCriteria": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "network": "*",
+          "addProperty": [
+            "*",
+            "*"
+          ]
+        },
+        "DataQualityRuleset": {
+          "rulesetName": "*",
+          "description": "*",
+          "dqdl": "*",
+          "tags": "*",
+          "targetTable": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Database": {
+          "databaseName": "*",
+          "locationUri": "*",
+          "description": "*",
+          "catalog": {
+            "catalogId": "*",
+            "catalogArn": "*",
+            "encryptionKey": "*",
+            "connectionPasswordKey": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "ExternalTable": {
+          "connection": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "externalDataLocation": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "S3Table": {
+          "storage": "*",
+          "s3Prefix": "*",
+          "clientSideEncryption": "*",
+          "tableName": "*",
+          "description": "*",
+          "database": {
+            "catalog": {
+              "catalogId": "*",
+              "catalogArn": "*",
+              "encryptionKey": "*",
+              "connectionPasswordKey": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "databaseArn": "*",
+            "databaseName": "*"
+          },
+          "columns": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionKeys": {
+            "name": "*",
+            "type": "*",
+            "comment": "*"
+          },
+          "partitionIndexes": {
+            "indexName": "*",
+            "keyNames": "*"
+          },
+          "dataFormat": "*",
+          "compressed": "boolean",
+          "storedAsSubDirectories": "boolean",
+          "enablePartitionFiltering": "boolean",
+          "storageParameters": "*",
+          "parameters": "*",
+          "hasEncryptedData": "boolean",
+          "partitionProjection": "*",
+          "grantRead": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantReadWrite": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "SecurityConfiguration": {
+          "securityConfigurationName": "*",
+          "cloudWatchEncryption": "*",
+          "jobBookmarksEncryption": "*",
+          "s3Encryption": "*",
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-iam": {
+        "AccessKey": {
+          "serial": "*",
+          "status": "AccessKeyStatus",
+          "user": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "Group": {
+          "groupName": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "path": "*",
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ]
+        },
+        "InstanceProfile": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "instanceProfileName": "*",
+          "path": "*"
+        },
+        "LazyRole": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ]
+        },
+        "ManagedPolicy": {
+          "managedPolicyName": "*",
+          "description": "*",
+          "path": "*",
+          "users": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "groups": "*",
+          "statements": "*",
+          "document": "*",
+          "addStatements": [
+            "*"
+          ],
+          "attachToUser": [
+            "*"
+          ],
+          "attachToRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToGroup": [
+            "*"
+          ]
+        },
+        "OidcProviderNative": {
+          "oidcProviderName": "*",
+          "url": "*",
+          "clientIds": "*",
+          "thumbprints": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "OpenIdConnectProvider": {
+          "url": "*",
+          "clientIds": "*",
+          "thumbprints": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Policy": {
+          "policyName": "*",
+          "users": {
+            "userName": "*",
+            "userArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roles": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "groups": {
+            "groupName": "*",
+            "groupArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "statements": "*",
+          "force": "boolean",
+          "document": "*",
+          "addStatements": [
+            "*"
+          ],
+          "attachToUser": [
+            {
+              "userName": "*",
+              "userArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToRole": [
+            {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "attachToGroup": [
+            {
+              "groupName": "*",
+              "groupArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        },
+        "Role": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "withoutPolicyUpdates": [
+            {
+              "addGrantsToResources": "boolean"
+            }
+          ],
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "SamlProvider": {
+          "name": "*",
+          "metadataDocument": "*"
+        },
+        "User": {
+          "groups": {
+            "groupName": "*",
+            "groupArn": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "userName": "*",
+          "password": "*",
+          "passwordResetRequired": "boolean",
+          "addToGroup": [
+            {
+              "groupName": "*",
+              "groupArn": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addToPolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-inspector": {
+        "AssessmentTemplate": {}
+      },
+      "aws-cdk-lib.aws-kinesis": {
+        "ResourcePolicy": {
+          "stream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "streamConsumer": {
+            "streamConsumerArn": "*",
+            "streamConsumerName": "*",
+            "stream": {
+              "streamArn": "*",
+              "streamName": "*",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              }
+            }
+          },
+          "policyDocument": "*"
+        },
+        "StreamConsumer": {
+          "streamConsumerName": "*",
+          "stream": {
+            "streamArn": "*",
+            "streamName": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "Stream": {
+          "streamName": "*",
+          "retentionPeriod": "*",
+          "shardCount": "*",
+          "encryption": "StreamEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "streamMode": "StreamMode",
+          "removalPolicy": "RemovalPolicy",
+          "shardLevelMetrics": "ShardLevelMetrics"
+        }
+      },
+      "aws-cdk-lib.aws-kinesisfirehose": {
+        "DeliveryStream": {
+          "destination": "*",
+          "deliveryStreamName": "*",
+          "source": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "encryption": "*"
+        }
+      },
+      "aws-cdk-lib.aws-kms": {
+        "Alias": {
+          "aliasName": "*",
+          "targetKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        },
+        "Key": {
+          "description": "*",
+          "alias": "*",
+          "enableKeyRotation": "boolean",
+          "rotationPeriod": "*",
+          "enabled": "boolean",
+          "keySpec": "KeySpec",
+          "keyUsage": "KeyUsage",
+          "multiRegion": "boolean",
+          "policy": "*",
+          "admins": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "trustAccountIdentities": "boolean",
+          "pendingWindow": "*",
+          "grantAdmin": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ReferencedKey": {
+          "environmentFromArn": "*",
+          "keyArn": "*",
+          "keyId": "*",
+          "policy": "*",
+          "trustAccountIdentities": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-lambda": {
+        "Alias": {
+          "aliasName": "*",
+          "version": {
+            "version": "*",
+            "lambda": {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "edgeArn": "*",
+            "functionName": "*",
+            "functionArn": "*",
+            "isBoundToVpc": "boolean",
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "description": "*",
+          "additionalVersions": {
+            "version": {
+              "version": "*",
+              "lambda": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "resourceArnsForGrantInvoke": "*"
+            },
+            "weight": "*"
+          },
+          "provisionedConcurrentExecutions": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addAutoScaling": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ]
+        },
+        "CapacityProvider": {
+          "capacityProviderName": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "subnets": {
+            "availabilityZone": "*",
+            "subnetId": "*",
+            "internetConnectivityEstablished": "*",
+            "ipv4CidrBlock": "*",
+            "routeTable": {
+              "routeTableId": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "operatorRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "architectures": "*",
+          "instanceTypeFilter": "*",
+          "maxVCpuCount": "*",
+          "scalingOptions": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "propagateTags": "*",
+          "logGroup": "*",
+          "systemLogLevel": "SystemLogLevel",
+          "addFunction": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            },
+            {
+              "perExecutionEnvironmentMaxConcurrency": "*",
+              "executionEnvironmentMemoryGiBPerVCpu": "*",
+              "publishToLatestPublished": "boolean",
+              "latestPublishedScalingConfig": {
+                "minExecutionEnvironments": "*",
+                "maxExecutionEnvironments": "*"
+              }
+            }
+          ]
+        },
+        "CodeSigningConfig": {
+          "signingProfiles": {
+            "signingProfileArn": "*",
+            "signingProfileName": "*",
+            "signingProfileVersion": "*",
+            "signingProfileVersionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "untrustedArtifactOnDeployment": "UntrustedArtifactOnDeployment",
+          "description": "*"
+        },
+        "EventInvokeConfig": {
+          "function": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "qualifier": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "EventSourceMapping": {
+          "target": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "eventSourceArn": "*",
+          "batchSize": "*",
+          "bisectBatchOnError": "boolean",
+          "onFailure": "*",
+          "enabled": "boolean",
+          "startingPosition": "StartingPosition",
+          "startingPositionTimestamp": "*",
+          "reportBatchItemFailures": "boolean",
+          "maxBatchingWindow": "*",
+          "maxConcurrency": "*",
+          "maxRecordAge": "*",
+          "retryAttempts": "*",
+          "parallelizationFactor": "*",
+          "kafkaTopic": "*",
+          "tumblingWindow": "*",
+          "kafkaBootstrapServers": "*",
+          "kafkaConsumerGroupId": "*",
+          "sourceAccessConfigurations": {
+            "type": "*",
+            "uri": "*"
+          },
+          "filters": "*",
+          "filterEncryption": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "supportS3OnFailureDestination": "boolean",
+          "provisionedPollerConfig": {
+            "minimumPollers": "*",
+            "maximumPollers": "*",
+            "pollerGroupName": "*"
+          },
+          "metricsConfig": {
+            "metrics": "MetricType"
+          },
+          "logLevel": "EventSourceMappingLogLevel",
+          "schemaRegistryConfig": "*"
+        },
+        "LatestVersion": {
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ]
+        },
+        "FunctionUrl": {
+          "function": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "authType": "FunctionUrlAuthType",
+          "cors": {
+            "allowCredentials": "boolean",
+            "allowedHeaders": "*",
+            "allowedMethods": "HttpMethod",
+            "allowedOrigins": "*",
+            "exposedHeaders": "*",
+            "maxAge": "*"
+          },
+          "invokeMode": "InvokeMode",
+          "grantInvokeUrl": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Function": {
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addEnvironment": [
+            "*",
+            "*",
+            {
+              "removeInEdge": "boolean"
+            }
+          ],
+          "invalidateVersionBasedOn": [
+            "*"
+          ],
+          "addLayers": [
+            {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addVersion": [
+            "*",
+            "*",
+            "*",
+            "*",
+            {
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "_checkEdgeCompatibility": []
+        },
+        "DockerImageFunction": {
+          "code": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        },
+        "Version": {
+          "lambda": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "codeSha256": "*",
+          "description": "*",
+          "provisionedConcurrentExecutions": "*",
+          "removalPolicy": "RemovalPolicy",
+          "minExecutionEnvironments": "*",
+          "maxExecutionEnvironments": "*",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ]
+        },
+        "LayerVersion": {
+          "compatibleRuntimes": "*",
+          "compatibleArchitectures": "*",
+          "code": "*",
+          "description": "*",
+          "license": "*",
+          "layerVersionName": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "SingletonFunction": {
+          "uuid": "*",
+          "lambdaPurpose": "*",
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addEnvironment": [
+            "*",
+            "*",
+            {
+              "removeInEdge": "boolean"
+            }
+          ],
+          "addLayers": [
+            {
+              "layerVersionArn": "*",
+              "compatibleRuntimes": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ],
+          "addPermission": [
+            "*",
+            {
+              "action": "*",
+              "eventSourceToken": "*",
+              "principal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              },
+              "scope": "*",
+              "sourceAccount": "*",
+              "sourceArn": "*",
+              "organizationId": "*",
+              "functionUrlAuthType": "FunctionUrlAuthType",
+              "invokedViaFunctionUrl": "boolean"
+            }
+          ],
+          "addDependency": [
+            "*"
+          ],
+          "addMetadata": [
+            "*",
+            "*",
+            {
+              "stackTrace": "boolean",
+              "traceFromFunction": "*",
+              "stackTraceOverride": "*"
+            }
+          ],
+          "dependOn": [
+            {
+              "node": "*"
+            }
+          ],
+          "_checkEdgeCompatibility": []
+        }
+      },
+      "aws-cdk-lib.aws-lambda-nodejs": {
+        "NodejsFunction": {
+          "entry": "*",
+          "handler": "*",
+          "runtime": "*",
+          "awsSdkConnectionReuse": "boolean",
+          "depsLockFilePath": "*",
+          "bundling": {
+            "minify": "boolean",
+            "sourceMap": "boolean",
+            "sourceMapMode": "SourceMapMode",
+            "sourcesContent": "boolean",
+            "target": "*",
+            "loader": "*",
+            "logLevel": "LogLevel",
+            "keepNames": "boolean",
+            "tsconfig": "*",
+            "metafile": "boolean",
+            "banner": "*",
+            "footer": "*",
+            "charset": "Charset",
+            "define": "*",
+            "externalModules": "*",
+            "bundleAwsSDK": "boolean",
+            "nodeModules": "*",
+            "esbuildVersion": "*",
+            "esbuildArgs": "*",
+            "buildArgs": "*",
+            "forceDockerBundling": "boolean",
+            "preCompilation": "boolean",
+            "dockerImage": "*",
+            "commandHooks": "*",
+            "assetHash": "*",
+            "format": "OutputFormat",
+            "mainFields": "*",
+            "inject": "*",
+            "bundlingFileAccess": "BundlingFileAccess",
+            "entrypoint": "*",
+            "command": "*",
+            "volumes": {
+              "hostPath": "*",
+              "containerPath": "*",
+              "consistency": "DockerVolumeConsistency"
+            },
+            "volumesFrom": "*",
+            "environment": "*",
+            "workingDirectory": "*",
+            "user": "*",
+            "securityOpt": "*",
+            "network": "*",
+            "platform": "*"
+          },
+          "projectRoot": "*",
+          "code": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*"
+        }
+      },
+      "aws-cdk-lib.aws-logs": {
+        "CrossAccountDestination": {
+          "destinationName": "*",
+          "role": "*",
+          "targetArn": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "bind": [
+            "*",
+            "*"
+          ]
+        },
+        "LogGroup": {
+          "encryptionKey": "*",
+          "logGroupName": "*",
+          "dataProtectionPolicy": "*",
+          "deletionProtectionEnabled": "boolean",
+          "fieldIndexPolicies": "*",
+          "retention": "RetentionDays",
+          "logGroupClass": "LogGroupClass",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "LogStream": {
+          "logGroup": "*",
+          "logStreamName": "*",
+          "removalPolicy": "RemovalPolicy"
+        },
+        "MetricFilter": {
+          "logGroup": "*",
+          "filterPattern": {
+            "logPatternString": "*"
+          },
+          "metricNamespace": "*",
+          "metricName": "*",
+          "metricValue": "*",
+          "defaultValue": "*",
+          "dimensions": "*",
+          "unit": "Unit",
+          "filterName": "*",
+          "applyOnTransformedLogs": "boolean",
+          "metric": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ResourcePolicy": {},
+        "QueryDefinition": {
+          "queryDefinitionName": "*",
+          "queryString": "*",
+          "logGroups": "*"
+        },
+        "SubscriptionFilter": {
+          "logGroup": "*",
+          "destination": "*",
+          "filterPattern": {
+            "logPatternString": "*"
+          },
+          "filterName": "*",
+          "distribution": "Distribution"
+        },
+        "Transformer": {
+          "transformerName": "*",
+          "logGroup": "*",
+          "transformerConfig": "*"
+        }
+      },
+      "aws-cdk-lib.aws-opensearchservice": {
+        "Domain": {
+          "accessPolicies": "*",
+          "advancedOptions": "*",
+          "cognitoDashboardsAuth": {
+            "identityPoolId": "*",
+            "role": "*",
+            "userPoolId": "*"
+          },
+          "domainName": "*",
+          "ebs": {
+            "enabled": "boolean",
+            "iops": "*",
+            "throughput": "*",
+            "volumeSize": "*",
+            "volumeType": "EbsDeviceVolumeType"
+          },
+          "capacity": {
+            "masterNodes": "*",
+            "masterNodeInstanceType": "*",
+            "dataNodes": "*",
+            "dataNodeInstanceType": "*",
+            "warmNodes": "*",
+            "warmInstanceType": "*",
+            "multiAzWithStandbyEnabled": "boolean",
+            "nodeOptions": {
+              "nodeType": "NodeType",
+              "nodeConfig": {
+                "enabled": "boolean",
+                "type": "*",
+                "count": "*"
+              }
+            }
+          },
+          "zoneAwareness": {
+            "enabled": "boolean",
+            "availabilityZoneCount": "*"
+          },
+          "version": "*",
+          "encryptionAtRest": {
+            "enabled": "boolean",
+            "kmsKey": "*"
+          },
+          "logging": {
+            "slowSearchLogEnabled": "boolean",
+            "slowSearchLogGroup": "*",
+            "slowIndexLogEnabled": "boolean",
+            "slowIndexLogGroup": "*",
+            "appLogEnabled": "boolean",
+            "appLogGroup": "*",
+            "auditLogEnabled": "boolean",
+            "auditLogGroup": "*"
+          },
+          "nodeToNodeEncryption": "boolean",
+          "automatedSnapshotStartHour": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "enforceHttps": "boolean",
+          "tlsSecurityPolicy": "TLSSecurityPolicy",
+          "fineGrainedAccessControl": {
+            "masterUserArn": "*",
+            "masterUserName": "*",
+            "masterUserPassword": "*",
+            "samlAuthenticationEnabled": "boolean",
+            "samlAuthenticationOptions": {
+              "idpEntityId": "*",
+              "idpMetadataContent": "*",
+              "masterUserName": "*",
+              "masterBackendRole": "*",
+              "rolesKey": "*",
+              "subjectKey": "*",
+              "sessionTimeoutMinutes": "*"
+            }
+          },
+          "useUnsignedBasicAuth": "boolean",
+          "enableVersionUpgrade": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "customEndpoint": {
+            "domainName": "*",
+            "certificate": "*",
+            "hostedZone": {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            }
+          },
+          "offPeakWindowEnabled": "boolean",
+          "offPeakWindowStart": {
+            "hours": "*",
+            "minutes": "*"
+          },
+          "enableAutoSoftwareUpdate": "boolean",
+          "useLatestServiceSoftwareForBlueGreen": "boolean",
+          "ipAddressType": "IpAddressType",
+          "suppressLogsResourcePolicy": "boolean",
+          "coldStorageEnabled": "boolean",
+          "s3VectorsEngineEnabled": "boolean",
+          "addAccessPolicies": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-rds": {
+        "AuroraClusterInstance": {
+          "cluster": {
+            "clusterIdentifier": "*",
+            "clusterResourceIdentifier": "*",
+            "instanceIdentifiers": "*",
+            "clusterEndpoint": "*",
+            "engine": {
+              "singleUserRotationApplication": "*",
+              "supportedLogTypes": "*",
+              "combineImportAndExportRoles": "boolean",
+              "engineType": "*",
+              "engineVersion": {
+                "fullVersion": "*",
+                "majorVersion": "*"
+              },
+              "parameterGroupFamily": "*",
+              "engineFamily": "*",
+              "defaultUsername": "*"
+            },
+            "clusterArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "instanceType": "*",
+          "promotionTier": "*",
+          "instanceIdentifier": "*",
+          "autoMinorVersionUpgrade": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "publiclyAccessible": "boolean",
+          "availabilityZone": "*",
+          "preferredMaintenanceWindow": "*",
+          "parameters": "*",
+          "allowMajorVersionUpgrade": "boolean",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "isFromLegacyInstanceProps": "boolean",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "removalPolicy": "RemovalPolicy",
+          "subnetGroup": "*"
+        },
+        "ImportedDatabaseCluster": {
+          "clusterIdentifier": "*",
+          "clusterResourceIdentifier": "*",
+          "port": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceIdentifiers": "*",
+          "clusterEndpointAddress": "*",
+          "readerEndpointAddress": "*",
+          "instanceEndpointAddresses": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "dataApiEnabled": "boolean"
+        },
+        "DatabaseCluster": {
+          "credentials": "*",
+          "replicationSourceIdentifier": "*",
+          "manageMasterUserPassword": "boolean",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instances": "*",
+          "instanceProps": {
+            "instanceType": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "parameterGroup": "*",
+            "parameters": "*",
+            "enablePerformanceInsights": "boolean",
+            "performanceInsightRetention": "PerformanceInsightRetention",
+            "performanceInsightEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "autoMinorVersionUpgrade": "boolean",
+            "allowMajorVersionUpgrade": "boolean",
+            "deleteAutomatedBackups": "boolean",
+            "publiclyAccessible": "boolean",
+            "preferredMaintenanceWindow": "*"
+          },
+          "writer": "*",
+          "readers": "*",
+          "serverlessV2MaxCapacity": "*",
+          "serverlessV2MinCapacity": "*",
+          "serverlessV2AutoPauseDuration": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceUpdateBehaviour": "InstanceUpdateBehaviour",
+          "backtrackWindow": "*",
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "port": "*",
+          "clusterIdentifier": "*",
+          "instanceIdentifierBase": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "monitoringInterval": "*",
+          "monitoringRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableClusterLevelEnhancedMonitoring": "boolean",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "subnetGroup": "*",
+          "iamAuthentication": "boolean",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "storageType": "DBClusterStorageType",
+          "copyTagsToSnapshot": "boolean",
+          "networkType": "NetworkType",
+          "domain": "*",
+          "domainRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableDataApi": "boolean",
+          "enableLocalWriteForwarding": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "autoMinorVersionUpgrade": "boolean",
+          "clusterScalabilityType": "ClusterScalabilityType",
+          "clusterScailabilityType": "ClusterScailabilityType",
+          "engineLifecycleSupport": "EngineLifecycleSupport",
+          "deleteAutomatedBackups": "boolean"
+        },
+        "DatabaseClusterFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "credentials": "*",
+          "snapshotCredentials": "*",
+          "manageMasterUserPassword": "boolean",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instances": "*",
+          "instanceProps": {
+            "instanceType": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "vpcSubnets": {
+              "subnetType": "SubnetType",
+              "availabilityZones": "*",
+              "subnetGroupName": "*",
+              "subnetName": "*",
+              "onePerAz": "boolean",
+              "subnetFilters": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            },
+            "parameterGroup": "*",
+            "parameters": "*",
+            "enablePerformanceInsights": "boolean",
+            "performanceInsightRetention": "PerformanceInsightRetention",
+            "performanceInsightEncryptionKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "autoMinorVersionUpgrade": "boolean",
+            "allowMajorVersionUpgrade": "boolean",
+            "deleteAutomatedBackups": "boolean",
+            "publiclyAccessible": "boolean",
+            "preferredMaintenanceWindow": "*"
+          },
+          "writer": "*",
+          "readers": "*",
+          "serverlessV2MaxCapacity": "*",
+          "serverlessV2MinCapacity": "*",
+          "serverlessV2AutoPauseDuration": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "instanceUpdateBehaviour": "InstanceUpdateBehaviour",
+          "backtrackWindow": "*",
+          "backup": {
+            "retention": "*",
+            "preferredWindow": "*"
+          },
+          "port": "*",
+          "clusterIdentifier": "*",
+          "instanceIdentifierBase": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "monitoringInterval": "*",
+          "monitoringRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableClusterLevelEnhancedMonitoring": "boolean",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "subnetGroup": "*",
+          "iamAuthentication": "boolean",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "storageType": "DBClusterStorageType",
+          "copyTagsToSnapshot": "boolean",
+          "networkType": "NetworkType",
+          "domain": "*",
+          "domainRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableDataApi": "boolean",
+          "enableLocalWriteForwarding": "boolean",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "autoMinorVersionUpgrade": "boolean",
+          "clusterScalabilityType": "ClusterScalabilityType",
+          "clusterScailabilityType": "ClusterScailabilityType",
+          "engineLifecycleSupport": "EngineLifecycleSupport",
+          "deleteAutomatedBackups": "boolean"
+        },
+        "DatabaseSecret": {
+          "username": "*",
+          "dbname": "*",
+          "secretName": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "masterSecret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "excludeCharacters": "*",
+          "replaceOnPasswordCriteriaChanges": "boolean",
+          "replicaRegions": {
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          }
+        },
+        "DatabaseInstance": {
+          "credentials": "*",
+          "manageMasterUserPassword": "boolean",
+          "characterSetName": "*",
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instanceType": "*",
+          "licenseModel": "LicenseModel",
+          "allowMajorVersionUpgrade": "boolean",
+          "timezone": "*",
+          "allocatedStorage": "*",
+          "databaseName": "*",
+          "parameters": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "DatabaseInstanceFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "clusterSnapshotIdentifier": "*",
+          "credentials": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "instanceType": "*",
+          "licenseModel": "LicenseModel",
+          "allowMajorVersionUpgrade": "boolean",
+          "timezone": "*",
+          "allocatedStorage": "*",
+          "databaseName": "*",
+          "parameters": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "DatabaseInstanceReadReplica": {
+          "instanceType": "*",
+          "sourceDatabaseInstance": {
+            "instanceIdentifier": "*",
+            "instanceArn": "*",
+            "dbInstanceEndpointAddress": "*",
+            "dbInstanceEndpointPort": "*",
+            "instanceResourceId": "*",
+            "instanceEndpoint": "*",
+            "engine": {
+              "singleUserRotationApplication": "*",
+              "supportsReadReplicaBackups": "boolean",
+              "engineType": "*",
+              "engineVersion": {
+                "fullVersion": "*",
+                "majorVersion": "*"
+              },
+              "parameterGroupFamily": "*",
+              "engineFamily": "*",
+              "defaultUsername": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "connections": "*"
+          },
+          "storageEncrypted": "boolean",
+          "storageEncryptionKey": "*",
+          "allocatedStorage": "*",
+          "multiAz": "boolean",
+          "availabilityZone": "*",
+          "storageType": "StorageType",
+          "storageThroughput": "*",
+          "iops": "*",
+          "processorFeatures": {
+            "coreCount": "*",
+            "threadsPerCore": "*"
+          },
+          "instanceIdentifier": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcPlacement": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "optionGroup": {
+            "optionGroupName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "iamAuthentication": "boolean",
+          "backupRetention": "*",
+          "preferredBackupWindow": "*",
+          "copyTagsToSnapshot": "boolean",
+          "deleteAutomatedBackups": "boolean",
+          "monitoringInterval": "*",
+          "monitoringRole": "*",
+          "enablePerformanceInsights": "boolean",
+          "performanceInsightRetention": "PerformanceInsightRetention",
+          "performanceInsightEncryptionKey": "*",
+          "databaseInsightsMode": "DatabaseInsightsMode",
+          "cloudwatchLogsExports": "*",
+          "cloudwatchLogsRetention": "RetentionDays",
+          "cloudwatchLogsRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "autoMinorVersionUpgrade": "boolean",
+          "preferredMaintenanceWindow": "*",
+          "deletionProtection": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "maxAllocatedStorage": "*",
+          "domain": "*",
+          "domainRole": "*",
+          "subnetGroup": "*",
+          "s3ImportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ImportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "s3ExportRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "s3ExportBuckets": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "publiclyAccessible": "boolean",
+          "networkType": "NetworkType",
+          "caCertificate": "*",
+          "applyImmediately": "boolean",
+          "engineLifecycleSupport": "EngineLifecycleSupport"
+        },
+        "OptionGroup": {
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportsReadReplicaBackups": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "description": "*",
+          "configurations": {
+            "name": "*",
+            "settings": "*",
+            "version": "*",
+            "port": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "securityGroups": {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          },
+          "optionGroupName": "*",
+          "addConfiguration": [
+            {
+              "name": "*",
+              "settings": "*",
+              "version": "*",
+              "port": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              }
+            }
+          ]
+        },
+        "ParameterGroup": {
+          "engine": {
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "name": "*",
+          "description": "*",
+          "parameters": "*",
+          "removalPolicy": "RemovalPolicy",
+          "bindToCluster": [
+            "*"
+          ],
+          "bindToInstance": [
+            "*"
+          ],
+          "addParameter": [
+            "*",
+            "*"
+          ]
+        },
+        "DatabaseProxyEndpoint": {
+          "dbProxy": "*",
+          "dbProxyEndpointName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "targetRole": "ProxyEndpointTargetRole"
+        },
+        "DatabaseProxy": {
+          "proxyTarget": "*",
+          "dbProxyName": "*",
+          "borrowTimeout": "*",
+          "initQuery": "*",
+          "maxConnectionsPercent": "*",
+          "maxIdleConnectionsPercent": "*",
+          "sessionPinningFilters": "*",
+          "debugLogging": "boolean",
+          "iamAuth": "boolean",
+          "idleClientTimeout": "*",
+          "requireTLS": "boolean",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "secrets": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "clientPasswordAuthType": "ClientPasswordAuthType",
+          "defaultAuthScheme": "DefaultAuthScheme",
+          "addEndpoint": [
+            "*",
+            {
+              "dbProxyEndpointName": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "securityGroups": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*",
+                "connections": "*"
+              },
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*"
+              },
+              "targetRole": "ProxyEndpointTargetRole"
+            }
+          ],
+          "asSecretAttachmentTarget": [],
+          "grantConnect": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ]
+        },
+        "ServerlessCluster": {
+          "credentials": "*",
+          "storageEncryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "clusterIdentifier": "*",
+          "backupRetention": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "enableDataApi": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "scaling": {
+            "minCapacity": "AuroraCapacityUnit",
+            "maxCapacity": "AuroraCapacityUnit",
+            "autoPause": "*",
+            "timeoutAction": "TimeoutAction"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": "*",
+          "copyTagsToSnapshot": "boolean",
+          "addRotationSingleUser": [
+            {
+              "automaticallyAfter": "*",
+              "excludeCharacters": "*",
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              },
+              "endpoint": {
+                "vpcEndpointId": "*",
+                "connections": "*"
+              },
+              "securityGroup": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*"
+              },
+              "rotateImmediatelyOnUpdate": "boolean"
+            }
+          ],
+          "addRotationMultiUser": [
+            "*",
+            {
+              "secret": {
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "secretArn": "*",
+                "secretFullArn": "*",
+                "secretName": "*",
+                "secretValue": "*"
+              },
+              "automaticallyAfter": "*",
+              "excludeCharacters": "*",
+              "vpcSubnets": {
+                "subnetType": "SubnetType",
+                "availabilityZones": "*",
+                "subnetGroupName": "*",
+                "subnetName": "*",
+                "onePerAz": "boolean",
+                "subnetFilters": "*",
+                "subnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  }
+                }
+              },
+              "endpoint": {
+                "vpcEndpointId": "*",
+                "connections": "*"
+              },
+              "securityGroup": {
+                "securityGroupId": "*",
+                "allowAllOutbound": "boolean",
+                "canInlineRule": "boolean",
+                "uniqueId": "*"
+              },
+              "rotateImmediatelyOnUpdate": "boolean"
+            }
+          ]
+        },
+        "ImportedServerlessCluster": {
+          "clusterIdentifier": "*",
+          "port": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "clusterEndpointAddress": "*",
+          "readerEndpointAddress": "*",
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          }
+        },
+        "ServerlessClusterFromSnapshot": {
+          "snapshotIdentifier": "*",
+          "credentials": "*",
+          "engine": {
+            "singleUserRotationApplication": "*",
+            "supportedLogTypes": "*",
+            "combineImportAndExportRoles": "boolean",
+            "engineType": "*",
+            "engineVersion": {
+              "fullVersion": "*",
+              "majorVersion": "*"
+            },
+            "parameterGroupFamily": "*",
+            "engineFamily": "*",
+            "defaultUsername": "*"
+          },
+          "clusterIdentifier": "*",
+          "backupRetention": "*",
+          "defaultDatabaseName": "*",
+          "deletionProtection": "boolean",
+          "enableDataApi": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "scaling": {
+            "minCapacity": "AuroraCapacityUnit",
+            "maxCapacity": "AuroraCapacityUnit",
+            "autoPause": "*",
+            "timeoutAction": "TimeoutAction"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "parameterGroup": {
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "subnetGroup": "*",
+          "copyTagsToSnapshot": "boolean"
+        },
+        "SubnetGroup": {
+          "description": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "subnetGroupName": "*",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "removalPolicy": "RemovalPolicy"
+        }
+      },
+      "aws-cdk-lib.aws-route53": {
+        "HealthCheck": {
+          "type": "HealthCheckType",
+          "alarmIdentifier": {
+            "region": "*",
+            "name": "*"
+          },
+          "childHealthChecks": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enableSNI": "boolean",
+          "failureThreshold": "*",
+          "fqdn": "*",
+          "healthThreshold": "*",
+          "insufficientDataHealthStatus": "InsufficientDataHealthStatusEnum",
+          "inverted": "boolean",
+          "ipAddress": "*",
+          "measureLatency": "boolean",
+          "port": "*",
+          "regions": "*",
+          "requestInterval": "*",
+          "resourcePath": "*",
+          "routingControl": "*",
+          "searchString": "*"
+        },
+        "HostedZone": {
+          "vpcs": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*",
+          "addVpc": [
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ],
+          "grantDelegation": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "delegatedZoneNames": "*"
+            }
+          ],
+          "enableDnssec": [
+            {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "keySigningKeyName": "*"
+            }
+          ]
+        },
+        "PublicHostedZone": {
+          "caaAmazon": "boolean",
+          "acceleratedRecoveryEnabled": "boolean",
+          "crossAccountZoneDelegationPrincipal": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "crossAccountZoneDelegationRoleName": "*",
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*",
+          "addVpc": [
+            {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            }
+          ],
+          "addDelegation": [
+            {
+              "hostedZoneId": "*",
+              "zoneName": "*",
+              "hostedZoneArn": "*",
+              "hostedZoneNameServers": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "name": "*"
+            },
+            {
+              "comment": "*",
+              "ttl": "*"
+            }
+          ]
+        },
+        "PrivateHostedZone": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "zoneName": "*",
+          "addTrailingDot": "boolean",
+          "comment": "*",
+          "queryLogsLogGroupArn": "*"
+        },
+        "KeySigningKey": {
+          "hostedZone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "keySigningKeyName": "*",
+          "status": "KeySigningKeyStatus"
+        },
+        "RecordSet": {
+          "recordType": "RecordType",
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "ARecord": {
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "AaaaRecord": {
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CnameRecord": {
+          "domainName": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "TxtRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "SrvRecord": {
+          "values": {
+            "priority": "*",
+            "weight": "*",
+            "port": "*",
+            "hostName": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CaaRecord": {
+          "values": {
+            "flag": "*",
+            "tag": "CaaTag",
+            "value": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "CaaAmazonRecord": {
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "MxRecord": {
+          "values": {
+            "priority": "*",
+            "hostName": "*"
+          },
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "NsRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "DsRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "SvcbRecord": {
+          "values": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "HttpsRecord": {
+          "values": "*",
+          "target": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        },
+        "ZoneDelegationRecord": {
+          "nameServers": "*",
+          "zone": {
+            "hostedZoneId": "*",
+            "zoneName": "*",
+            "hostedZoneArn": "*",
+            "hostedZoneNameServers": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "name": "*"
+          },
+          "geoLocation": "*",
+          "recordName": "*",
+          "ttl": "*",
+          "comment": "*",
+          "deleteExisting": "boolean",
+          "weight": "*",
+          "region": "*",
+          "multiValueAnswer": "boolean",
+          "setIdentifier": "*",
+          "healthCheck": {
+            "healthCheckId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "cidrRoutingConfig": "*",
+          "failover": "Failover"
+        }
+      },
+      "aws-cdk-lib.aws-s3": {
+        "BucketPolicy": {
+          "bucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "removalPolicy": "RemovalPolicy",
+          "document": "*",
+          "applyRemovalPolicy": [
+            "RemovalPolicy"
+          ]
+        },
+        "Bucket": {
+          "encryption": "BucketEncryption",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "blockedEncryptionTypes": "*",
+          "enforceSSL": "boolean",
+          "bucketKeyEnabled": "boolean",
+          "bucketName": "*",
+          "bucketNamePrefix": "*",
+          "bucketNamespace": "BucketNamespace",
+          "removalPolicy": "RemovalPolicy",
+          "autoDeleteObjects": "boolean",
+          "versioned": "boolean",
+          "objectLockEnabled": "boolean",
+          "abacStatus": "boolean",
+          "objectLockDefaultRetention": "*",
+          "eventBridgeEnabled": "boolean",
+          "lifecycleRules": {
+            "id": "*",
+            "enabled": "boolean",
+            "abortIncompleteMultipartUploadAfter": "*",
+            "expirationDate": "*",
+            "noncurrentVersionsToRetain": "*",
+            "noncurrentVersionTransitions": {
+              "storageClass": "*",
+              "noncurrentVersionsToRetain": "*"
+            },
+            "transitions": "*",
+            "prefix": "*",
+            "tagFilters": "*",
+            "expiredObjectDeleteMarker": "boolean",
+            "objectSizeLessThan": "*",
+            "objectSizeGreaterThan": "*"
+          },
+          "transitionDefaultMinimumObjectSize": "TransitionDefaultMinimumObjectSize",
+          "websiteIndexDocument": "*",
+          "websiteErrorDocument": "*",
+          "websiteRedirect": {
+            "hostName": "*",
+            "protocol": "RedirectProtocol"
+          },
+          "websiteRoutingRules": {
+            "hostName": "*",
+            "httpRedirectCode": "*",
+            "protocol": "RedirectProtocol",
+            "replaceKey": "*",
+            "condition": {
+              "httpErrorCodeReturnedEquals": "*",
+              "keyPrefixEquals": "*"
+            }
+          },
+          "accessControl": "BucketAccessControl",
+          "publicReadAccess": "boolean",
+          "blockPublicAccess": "*",
+          "metrics": {
+            "id": "*",
+            "prefix": "*",
+            "tagFilters": "*"
+          },
+          "cors": {
+            "id": "*",
+            "maxAge": "*",
+            "allowedHeaders": "*",
+            "allowedMethods": "HttpMethods",
+            "allowedOrigins": "*",
+            "exposedHeaders": "*"
+          },
+          "serverAccessLogsBucket": {
+            "bucketArn": "*",
+            "bucketName": "*",
+            "bucketWebsiteUrl": "*",
+            "bucketWebsiteDomainName": "*",
+            "bucketDomainName": "*",
+            "bucketDualStackDomainName": "*",
+            "bucketRegionalDomainName": "*",
+            "isWebsite": "boolean",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "policy": "*",
+            "replicationRoleArn": "*"
+          },
+          "serverAccessLogsPrefix": "*",
+          "targetObjectKeyFormat": "*",
+          "inventories": {
+            "destination": {
+              "bucket": {
+                "bucketArn": "*",
+                "bucketName": "*",
+                "bucketWebsiteUrl": "*",
+                "bucketWebsiteDomainName": "*",
+                "bucketDomainName": "*",
+                "bucketDualStackDomainName": "*",
+                "bucketRegionalDomainName": "*",
+                "isWebsite": "boolean",
+                "encryptionKey": {
+                  "keyArn": "*",
+                  "keyId": "*",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "policy": "*",
+                "replicationRoleArn": "*"
+              },
+              "prefix": "*",
+              "bucketOwner": "*"
+            },
+            "objectsPrefix": "*",
+            "format": "InventoryFormat",
+            "enabled": "boolean",
+            "inventoryId": "*",
+            "frequency": "InventoryFrequency",
+            "includeObjectVersions": "InventoryObjectVersion",
+            "optionalFields": "*"
+          },
+          "objectOwnership": "ObjectOwnership",
+          "transferAcceleration": "boolean",
+          "notificationsHandlerRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "notificationsSkipDestinationValidation": "boolean",
+          "intelligentTieringConfigurations": {
+            "name": "*",
+            "prefix": "*",
+            "tags": {
+              "key": "*",
+              "value": "*"
+            },
+            "archiveAccessTierTime": "*"
+          },
+          "minimumTLSVersion": "*",
+          "replicationRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "replicationRules": {
+            "destination": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "accessControlTransition": "boolean",
+            "replicationTimeControl": "*",
+            "storageClass": "*",
+            "sseKmsEncryptedObjects": "boolean",
+            "replicaModifications": "boolean",
+            "priority": "*",
+            "deleteMarkerReplication": "boolean",
+            "id": "*",
+            "filter": {
+              "prefix": "*",
+              "tags": {
+                "key": "*",
+                "value": "*"
+              }
+            }
+          },
+          "addLifecycleRule": [
+            {
+              "id": "*",
+              "enabled": "boolean",
+              "abortIncompleteMultipartUploadAfter": "*",
+              "expirationDate": "*",
+              "noncurrentVersionsToRetain": "*",
+              "noncurrentVersionTransitions": {
+                "storageClass": "*",
+                "noncurrentVersionsToRetain": "*"
+              },
+              "transitions": "*",
+              "prefix": "*",
+              "tagFilters": "*",
+              "expiredObjectDeleteMarker": "boolean",
+              "objectSizeLessThan": "*",
+              "objectSizeGreaterThan": "*"
+            }
+          ],
+          "addMetric": [
+            {
+              "id": "*",
+              "prefix": "*",
+              "tagFilters": "*"
+            }
+          ],
+          "addCorsRule": [
+            {
+              "id": "*",
+              "maxAge": "*",
+              "allowedHeaders": "*",
+              "allowedMethods": "HttpMethods",
+              "allowedOrigins": "*",
+              "exposedHeaders": "*"
+            }
+          ],
+          "addInventory": [
+            {
+              "destination": {
+                "bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "encryptionKey": {
+                    "keyArn": "*",
+                    "keyId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "prefix": "*",
+                "bucketOwner": "*"
+              },
+              "objectsPrefix": "*",
+              "format": "InventoryFormat",
+              "enabled": "boolean",
+              "inventoryId": "*",
+              "frequency": "InventoryFrequency",
+              "includeObjectVersions": "InventoryObjectVersion",
+              "optionalFields": "*"
+            }
+          ]
+        },
+        "ReferencedBucket": {
+          "account": "*",
+          "region": "*",
+          "bucketArn": "*",
+          "bucketName": "*",
+          "bucketDomainName": "*",
+          "bucketWebsiteUrl": "*",
+          "bucketWebsiteDomainName": "*",
+          "bucketRegionalDomainName": "*",
+          "bucketDualStackDomainName": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "isWebsite": "boolean",
+          "policy": "*",
+          "replicationRoleArn": "*",
+          "autoCreatePolicy": "boolean",
+          "disallowPublicAccess": "boolean",
+          "notificationsHandlerRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-scheduler": {
+        "ScheduleGroup": {},
+        "Schedule": {
+          "schedule": "*",
+          "target": "*",
+          "scheduleName": "*",
+          "description": "*",
+          "scheduleGroup": {
+            "scheduleGroupName": "*",
+            "scheduleGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "enabled": "boolean",
+          "key": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeWindow": "*",
+          "start": "*",
+          "end": "*"
+        }
+      },
+      "aws-cdk-lib.aws-secretsmanager": {
+        "ResourcePolicy": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          }
+        },
+        "RotationSchedule": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "rotationLambda": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "hostedRotation": "*",
+          "automaticallyAfter": "*",
+          "rotateImmediatelyOnUpdate": "boolean"
+        },
+        "Secret": {
+          "description": "*",
+          "encryptionKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "generateSecretString": {
+            "excludeUppercase": "boolean",
+            "requireEachIncludedType": "boolean",
+            "includeSpace": "boolean",
+            "excludeCharacters": "*",
+            "passwordLength": "*",
+            "excludePunctuation": "boolean",
+            "excludeLowercase": "boolean",
+            "excludeNumbers": "boolean",
+            "secretStringTemplate": "*",
+            "generateStringKey": "*"
+          },
+          "secretName": "*",
+          "secretStringBeta1": "*",
+          "secretStringValue": "*",
+          "secretObjectValue": "*",
+          "removalPolicy": "RemovalPolicy",
+          "replicaRegions": {
+            "region": "*",
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "addTargetAttachment": [
+            "*",
+            {
+              "target": "*"
+            }
+          ],
+          "addReplicaRegion": [
+            "*",
+            "*"
+          ]
+        },
+        "SecretTargetAttachment": {
+          "secret": {
+            "encryptionKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "secretArn": "*",
+            "secretFullArn": "*",
+            "secretName": "*",
+            "secretValue": "*"
+          },
+          "target": "*",
+          "addToResourcePolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-servicecatalog": {
+        "Portfolio": {
+          "displayName": "*",
+          "providerName": "*",
+          "messageLanguage": "MessageLanguage",
+          "description": "*",
+          "tagOptions": "*"
+        },
+        "CloudFormationProduct": {
+          "owner": "*",
+          "productName": "*",
+          "productVersions": {
+            "description": "*",
+            "validateTemplate": "boolean",
+            "cloudFormationTemplate": "*",
+            "productVersionName": "*"
+          },
+          "messageLanguage": "MessageLanguage",
+          "description": "*",
+          "distributor": "*",
+          "replaceProductVersionIds": "boolean",
+          "supportDescription": "*",
+          "supportEmail": "*",
+          "supportUrl": "*",
+          "tagOptions": "*"
+        },
+        "TagOptions": {
+          "allowedValuesForTags": "*"
+        }
+      },
+      "aws-cdk-lib.aws-servicediscovery": {
+        "AliasTargetInstance": {
+          "dnsName": "*",
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "CnameInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceCname": "*",
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "HttpNamespace": {
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "IpInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "port": "*",
+          "ipv4": "*",
+          "ipv6": "*",
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "NonIpInstance": {
+          "service": {
+            "serviceName": "*",
+            "namespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "serviceId": "*",
+            "serviceArn": "*",
+            "dnsRecordType": "DnsRecordType",
+            "routingPolicy": "RoutingPolicy",
+            "discoveryType": "DiscoveryType"
+          },
+          "instanceId": "*",
+          "customAttributes": "*"
+        },
+        "PrivateDnsNamespace": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "discoveryType": "DiscoveryType",
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "routingPolicy": "RoutingPolicy",
+              "loadBalancer": "boolean",
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "PublicDnsNamespace": {
+          "name": "*",
+          "description": "*",
+          "createService": [
+            "*",
+            {
+              "discoveryType": "DiscoveryType",
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "routingPolicy": "RoutingPolicy",
+              "loadBalancer": "boolean",
+              "name": "*",
+              "description": "*",
+              "healthCheck": {
+                "type": "HealthCheckType",
+                "resourcePath": "*",
+                "failureThreshold": "*"
+              },
+              "customHealthCheck": {
+                "failureThreshold": "*"
+              }
+            }
+          ]
+        },
+        "Service": {
+          "namespace": {
+            "namespaceName": "*",
+            "namespaceId": "*",
+            "namespaceArn": "*",
+            "type": "NamespaceType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "discoveryType": "DiscoveryType",
+          "dnsRecordType": "DnsRecordType",
+          "dnsTtl": "*",
+          "routingPolicy": "RoutingPolicy",
+          "loadBalancer": "boolean",
+          "name": "*",
+          "description": "*",
+          "healthCheck": {
+            "type": "HealthCheckType",
+            "resourcePath": "*",
+            "failureThreshold": "*"
+          },
+          "customHealthCheck": {
+            "failureThreshold": "*"
+          },
+          "registerLoadBalancer": [
+            "*",
+            {
+              "loadBalancerCanonicalHostedZoneId": "*",
+              "loadBalancerDnsName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "*"
+          ],
+          "registerNonIpInstance": [
+            "*",
+            {
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ],
+          "registerIpInstance": [
+            "*",
+            {
+              "port": "*",
+              "ipv4": "*",
+              "ipv6": "*",
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ],
+          "registerCnameInstance": [
+            "*",
+            {
+              "instanceCname": "*",
+              "instanceId": "*",
+              "customAttributes": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-ses": {
+        "ConfigurationSetEventDestination": {
+          "configurationSet": "*",
+          "configurationSetEventDestinationName": "*",
+          "enabled": "boolean",
+          "destination": "*",
+          "events": "EmailSendingEvent"
+        },
+        "ConfigurationSet": {
+          "configurationSetName": "*",
+          "dedicatedIpPool": "*",
+          "tlsPolicy": "ConfigurationSetTlsPolicy",
+          "reputationMetrics": "boolean",
+          "sendingEnabled": "boolean",
+          "suppressionReasons": "SuppressionReasons",
+          "disableSuppressionList": "boolean",
+          "autoValidationThreshold": "AutoValidationThreshold",
+          "disableAutoValidation": "boolean",
+          "customTrackingRedirectDomain": "*",
+          "customTrackingHttpsPolicy": "HttpsPolicy",
+          "vdmOptions": {
+            "engagementMetrics": "boolean",
+            "optimizedSharedDelivery": "boolean"
+          },
+          "maxDeliveryDuration": "*",
+          "addEventDestination": [
+            "*",
+            {
+              "configurationSetEventDestinationName": "*",
+              "enabled": "boolean",
+              "destination": "*",
+              "events": "EmailSendingEvent"
+            }
+          ]
+        },
+        "DedicatedIpPool": {
+          "dedicatedIpPoolName": "*",
+          "scalingMode": "ScalingMode"
+        },
+        "EmailIdentity": {
+          "identity": "*",
+          "configurationSet": "*",
+          "dkimSigning": "boolean",
+          "dkimIdentity": "*",
+          "feedbackForwarding": "boolean",
+          "mailFromDomain": "*",
+          "mailFromBehaviorOnMxFailure": "MailFromBehaviorOnMxFailure"
+        },
+        "ReceiptFilter": {
+          "receiptFilterName": "*",
+          "ip": "*",
+          "policy": "ReceiptFilterPolicy"
+        },
+        "ReceiptRuleSet": {
+          "receiptRuleSetName": "*",
+          "rules": {
+            "actions": "*",
+            "after": "*",
+            "enabled": "boolean",
+            "receiptRuleName": "*",
+            "recipients": "*",
+            "scanEnabled": "boolean",
+            "tlsPolicy": "TlsPolicy"
+          },
+          "dropSpam": "boolean"
+        },
+        "ReceiptRule": {
+          "ruleSet": "*",
+          "actions": "*",
+          "after": "*",
+          "enabled": "boolean",
+          "receiptRuleName": "*",
+          "recipients": "*",
+          "scanEnabled": "boolean",
+          "tlsPolicy": "TlsPolicy",
+          "addAction": [
+            "*"
+          ]
+        },
+        "VdmAttributes": {
+          "engagementMetrics": "boolean",
+          "optimizedSharedDelivery": "boolean"
+        }
+      },
+      "aws-cdk-lib.aws-signer": {
+        "SigningProfile": {
+          "platform": "*",
+          "signatureValidity": "*",
+          "signingProfileName": "*"
+        }
+      },
+      "aws-cdk-lib.aws-sns": {
+        "TopicPolicy": {
+          "topics": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "policyDocument": "*",
+          "enforceSSL": "boolean"
+        },
+        "Subscription": {
+          "topic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "protocol": "SubscriptionProtocol",
+          "endpoint": "*",
+          "rawMessageDelivery": "boolean",
+          "filterPolicy": "*",
+          "filterPolicyWithMessageBody": "*",
+          "region": "*",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "subscriptionRoleArn": "*",
+          "deliveryPolicy": {
+            "healthyRetryPolicy": {
+              "minDelayTarget": "*",
+              "numRetries": "*",
+              "numNoDelayRetries": "*",
+              "numMinDelayRetries": "*",
+              "numMaxDelayRetries": "*",
+              "backoffFunction": "BackoffFunction"
+            },
+            "throttlePolicy": {
+              "maxReceivesPerSecond": "*"
+            },
+            "requestPolicy": {
+              "headerContentType": "*"
+            }
+          }
+        },
+        "Topic": {
+          "displayName": "*",
+          "topicName": "*",
+          "masterKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "contentBasedDeduplication": "boolean",
+          "fifo": "boolean",
+          "loggingConfigs": {
+            "protocol": "LoggingProtocol",
+            "failureFeedbackRole": "*",
+            "successFeedbackRole": "*",
+            "successFeedbackSampleRate": "*"
+          },
+          "messageRetentionPeriodInDays": "*",
+          "enforceSSL": "boolean",
+          "signatureVersion": "*",
+          "tracingConfig": "TracingConfig",
+          "fifoThroughputScope": "FifoThroughputScope",
+          "addLoggingConfig": [
+            {
+              "protocol": "LoggingProtocol",
+              "failureFeedbackRole": "*",
+              "successFeedbackRole": "*",
+              "successFeedbackSampleRate": "*"
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-sqs": {
+        "QueuePolicy": {
+          "queues": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          }
+        },
+        "Queue": {
+          "queueName": "*",
+          "retentionPeriod": "*",
+          "deliveryDelay": "*",
+          "maxMessageSizeBytes": "*",
+          "receiveMessageWaitTime": "*",
+          "visibilityTimeout": "*",
+          "deadLetterQueue": {
+            "queue": {
+              "queueArn": "*",
+              "queueUrl": "*",
+              "queueName": "*",
+              "encryptionMasterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "fifo": "boolean",
+              "encryptionType": "QueueEncryption"
+            },
+            "maxReceiveCount": "*"
+          },
+          "encryption": "QueueEncryption",
+          "encryptionMasterKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "dataKeyReuse": "*",
+          "fifo": "boolean",
+          "contentBasedDeduplication": "boolean",
+          "deduplicationScope": "DeduplicationScope",
+          "fifoThroughputLimit": "FifoThroughputLimit",
+          "removalPolicy": "RemovalPolicy",
+          "enforceSSL": "boolean",
+          "redriveAllowPolicy": {
+            "redrivePermission": "RedrivePermission",
+            "sourceQueues": {
+              "queueArn": "*",
+              "queueUrl": "*",
+              "queueName": "*",
+              "encryptionMasterKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "fifo": "boolean",
+              "encryptionType": "QueueEncryption"
+            }
+          }
+        }
+      },
+      "aws-cdk-lib.aws-ssm": {
+        "StringParameter": {
+          "stringValue": "*",
+          "type": "ParameterType",
+          "dataType": "ParameterDataType",
+          "allowedPattern": "*",
+          "description": "*",
+          "parameterName": "*",
+          "simpleName": "boolean",
+          "tier": "ParameterTier"
+        },
+        "StringListParameter": {
+          "stringListValue": "*",
+          "allowedPattern": "*",
+          "description": "*",
+          "parameterName": "*",
+          "simpleName": "boolean",
+          "tier": "ParameterTier"
+        }
+      },
+      "aws-cdk-lib.aws-stepfunctions": {
+        "Activity": {
+          "activityName": "*",
+          "encryptionConfiguration": "*",
+          "grant": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "*"
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRunTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricScheduleTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricScheduled": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTimedOut": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricStarted": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricSucceeded": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricFailed": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHeartbeatTimedOut": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "StateMachine": {
+          "stateMachineName": "*",
+          "definition": {
+            "id": "*",
+            "startState": "*",
+            "endStates": "*"
+          },
+          "definitionBody": "*",
+          "definitionSubstitutions": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeout": "*",
+          "comment": "*",
+          "queryLanguage": "QueryLanguage",
+          "stateMachineType": "StateMachineType",
+          "logs": {
+            "destination": "*",
+            "includeExecutionData": "boolean",
+            "level": "LogLevel"
+          },
+          "tracingEnabled": "boolean",
+          "removalPolicy": "RemovalPolicy",
+          "encryptionConfiguration": "*",
+          "addToRolePolicy": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.aws-synthetics": {
+        "Canary": {
+          "artifactsBucketLocation": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "timeToLive": "*",
+          "schedule": "*",
+          "maxRetries": "*",
+          "startAfterCreation": "boolean",
+          "successRetentionPeriod": "*",
+          "failureRetentionPeriod": "*",
+          "canaryName": "*",
+          "runtime": "*",
+          "test": "*",
+          "activeTracing": "boolean",
+          "environmentVariables": "*",
+          "memory": "*",
+          "timeout": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "cleanup": "Cleanup",
+          "provisionedResourceCleanup": "boolean",
+          "artifactsBucketLifecycleRules": {
+            "id": "*",
+            "enabled": "boolean",
+            "abortIncompleteMultipartUploadAfter": "*",
+            "expirationDate": "*",
+            "noncurrentVersionsToRetain": "*",
+            "noncurrentVersionTransitions": {
+              "storageClass": "*",
+              "noncurrentVersionsToRetain": "*"
+            },
+            "transitions": "*",
+            "prefix": "*",
+            "tagFilters": "*",
+            "expiredObjectDeleteMarker": "boolean",
+            "objectSizeLessThan": "*",
+            "objectSizeGreaterThan": "*"
+          },
+          "artifactS3EncryptionMode": "ArtifactsEncryptionMode",
+          "artifactS3KmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "environmentEncryption": "*",
+          "dryRunAndUpdate": "boolean",
+          "resourcesToReplicateTags": "ResourceToReplicateTags",
+          "browserConfigs": "BrowserType",
+          "metricDuration": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricSuccessPercent": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricFailed": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "Group": {
+          "groupName": "*",
+          "canaries": {
+            "canaryId": "*",
+            "canaryName": "*",
+            "canaryArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "addCanary": [
+            {
+              "canaryId": "*",
+              "canaryName": "*",
+              "canaryArn": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-cdk-lib.core": {
+        "CustomResource": {
+          "serviceToken": "*",
+          "serviceTimeout": "*",
+          "properties": "*",
+          "resourceType": "*",
+          "removalPolicy": "RemovalPolicy",
+          "pascalCaseProperties": "boolean",
+          "getAtt": [
+            "*"
+          ],
+          "getAttString": [
+            "*"
+          ]
+        }
+      },
+      "aws-cdk-lib.lambda-layer-awscli": {
+        "AwsCliLayer": {}
+      },
+      "aws-cdk-lib.lambda-layer-node-proxy-agent": {
+        "NodeProxyAgentLayer": {}
+      },
+      "aws-cdk-lib.triggers": {
+        "TriggerFunction": {
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "executeAfter": [
+            "*"
+          ],
+          "executeBefore": [
+            "*"
+          ],
+          "executeOnHandlerChange": "boolean"
+        }
+      },
+      "aws-bedrock-agentcore-alpha.lib": {
+        "Evaluator": {
+          "evaluatorName": "*",
+          "evaluatorConfig": "*",
+          "level": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "OnlineEvaluationConfig": {
+          "evaluators": "*",
+          "dataSource": "*",
+          "tags": "*",
+          "onlineEvaluationConfigName": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "samplingPercentage": "*",
+          "filters": {
+            "key": "*",
+            "operator": "*",
+            "value": "*"
+          },
+          "sessionTimeout": "*",
+          "executionStatus": "*"
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "description": "*",
+          "protocolConfiguration": {
+            "protocolType": "*"
+          },
+          "authorizerConfiguration": {
+            "authorizerType": "GatewayAuthorizerType"
+          },
+          "exceptionLevel": "GatewayExceptionLevel",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "interceptorConfigurations": {
+            "interceptionPoint": "InterceptionPoint"
+          },
+          "policyEngineConfiguration": {
+            "policyEngine": {
+              "policyEngineArn": "*",
+              "policyEngineId": "*",
+              "policyEngineName": "*",
+              "description": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "mode": "*"
+          },
+          "addLambdaTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "lambdaFunction": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "latestVersion": {
+                  "version": "*",
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "toolSchema": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addOpenApiTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "apiSchema": "*",
+              "validateOpenApiSchema": "boolean",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addSmithyTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "smithyModel": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addMcpServerTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "endpoint": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addApiGatewayTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "restApi": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "stage": "*",
+              "apiGatewayToolConfiguration": {
+                "toolFilters": {
+                  "filterPath": "*",
+                  "methods": "ApiGatewayHttpMethod"
+                },
+                "toolOverrides": {
+                  "path": "*",
+                  "method": "ApiGatewayHttpMethod",
+                  "name": "*",
+                  "description": "*"
+                }
+              },
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              },
+              "metadataConfiguration": {
+                "allowedQueryParameters": "*",
+                "allowedRequestHeaders": "*",
+                "allowedResponseHeaders": "*"
+              }
+            }
+          ],
+          "addInterceptor": [
+            {
+              "interceptionPoint": "InterceptionPoint"
+            }
+          ]
+        },
+        "ApiKeyCredentialProvider": {
+          "apiKeyCredentialProviderName": "*",
+          "apiKey": "*",
+          "tags": "*",
+          "bindForGatewayApiKeyTarget": []
+        },
+        "OAuth2CredentialProvider": {
+          "oAuth2CredentialProviderName": "*",
+          "credentialProviderVendor": "*",
+          "oauth2ProviderConfigInput": "*",
+          "tags": "*",
+          "bindForGatewayOAuthTarget": [
+            "*",
+            "*"
+          ]
+        },
+        "WorkloadIdentity": {
+          "workloadIdentityName": "*",
+          "allowedResourceOauth2ReturnUrls": "*",
+          "tags": "*"
+        },
+        "Memory": {
+          "memoryName": "*",
+          "expirationDuration": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "memoryStrategies": {
+            "name": "*",
+            "description": "*",
+            "strategyType": "MemoryStrategyType"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addMemoryStrategy": [
+            {
+              "name": "*",
+              "description": "*",
+              "strategyType": "MemoryStrategyType"
+            }
+          ]
+        },
+        "PolicyEngine": {
+          "policyEngineName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addPolicy": [
+            "*",
+            {
+              "definition": "*",
+              "statement": "*",
+              "policyName": "*",
+              "description": "*",
+              "validationMode": "*"
+            }
+          ]
+        },
+        "Policy": {
+          "policyName": "*",
+          "policyEngine": {
+            "policyEngineArn": "*",
+            "policyEngineId": "*",
+            "policyEngineName": "*",
+            "description": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "definition": "*",
+          "statement": "*",
+          "description": "*",
+          "validationMode": "*"
+        },
+        "RuntimeEndpoint": {
+          "endpointName": "*",
+          "agentRuntimeId": "*",
+          "agentRuntimeVersion": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "Runtime": {
+          "runtimeName": "*",
+          "agentRuntimeArtifact": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "description": "*",
+          "protocolConfiguration": "ProtocolType",
+          "environmentVariables": "*",
+          "authorizerConfiguration": "*",
+          "tags": "*",
+          "requestHeaderConfiguration": {
+            "allowlistedHeaders": "*"
+          },
+          "lifecycleConfiguration": {
+            "idleRuntimeSessionTimeout": "*"
+          },
+          "tracingEnabled": "boolean",
+          "loggingConfigs": {
+            "logType": "*",
+            "destination": "*"
+          },
+          "addEndpoint": [
+            "*",
+            {
+              "description": "*",
+              "version": "*"
+            }
+          ]
+        },
+        "BrowserCustom": {
+          "browserCustomName": "*",
+          "description": "*",
+          "networkConfiguration": "*",
+          "recordingConfig": {
+            "enabled": "boolean",
+            "s3Location": {
+              "bucketName": "*",
+              "objectKey": "*",
+              "objectVersion": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "browserSigning": "BrowserSigning"
+        },
+        "CodeInterpreterCustom": {
+          "codeInterpreterCustomName": "*",
+          "description": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "tags": "*"
+        }
+      },
+      "aws-bedrock-alpha.bedrock": {
+        "AgentAlias": {
+          "agentAliasName": "*",
+          "agentVersion": "*",
+          "agent": {
+            "agentArn": "*",
+            "agentId": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "lastUpdated": "*"
+          },
+          "description": "*"
+        },
+        "Agent": {
+          "agentName": "*",
+          "instruction": "*",
+          "foundationModel": {
+            "invokableArn": "*"
+          },
+          "existingRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "shouldPrepareAgent": "boolean",
+          "idleSessionTTL": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "actionGroups": "*",
+          "guardrail": {
+            "guardrailArn": "*",
+            "guardrailId": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "lastUpdated": "*",
+            "guardrailVersion": "*"
+          },
+          "promptOverrideConfiguration": "*",
+          "userInputEnabled": "boolean",
+          "codeInterpreterEnabled": "boolean",
+          "forceDelete": "boolean",
+          "memory": "*",
+          "agentCollaboration": "*",
+          "customOrchestrationExecutor": "*",
+          "addGuardrail": [
+            {
+              "guardrailArn": "*",
+              "guardrailId": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "lastUpdated": "*",
+              "guardrailVersion": "*"
+            }
+          ],
+          "addActionGroup": [
+            "*"
+          ],
+          "addActionGroups": [
+            "*"
+          ]
+        },
+        "GuardrailVersion": {
+          "guardrail": {
+            "guardrailArn": "*",
+            "guardrailId": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "lastUpdated": "*",
+            "guardrailVersion": "*"
+          },
+          "description": "*"
+        },
+        "Guardrail": {
+          "guardrailName": "*",
+          "description": "*",
+          "blockedInputMessaging": "*",
+          "blockedOutputsMessaging": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "contentFilters": {
+            "type": "ContentFilterType",
+            "inputStrength": "ContentFilterStrength",
+            "outputStrength": "ContentFilterStrength",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean",
+            "inputModalities": "ModalityType",
+            "outputModalities": "ModalityType"
+          },
+          "contentFiltersTierConfig": "TierConfig",
+          "deniedTopics": "*",
+          "topicsTierConfig": "TierConfig",
+          "wordFilters": {
+            "text": "*",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "managedWordListFilters": {
+            "type": "ManagedWordFilterType",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "piiFilters": {
+            "type": "*",
+            "action": "GuardrailAction",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean"
+          },
+          "regexFilters": {
+            "name": "*",
+            "description": "*",
+            "action": "GuardrailAction",
+            "inputAction": "GuardrailAction",
+            "inputEnabled": "boolean",
+            "outputAction": "GuardrailAction",
+            "outputEnabled": "boolean",
+            "pattern": "*"
+          },
+          "contextualGroundingFilters": {
+            "type": "ContextualGroundingFilterType",
+            "action": "GuardrailAction",
+            "enabled": "boolean",
+            "threshold": "*"
+          },
+          "crossRegionConfig": {
+            "guardrailProfileArn": "*"
+          },
+          "addContentFilter": [
+            {
+              "type": "ContentFilterType",
+              "inputStrength": "ContentFilterStrength",
+              "outputStrength": "ContentFilterStrength",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean",
+              "inputModalities": "ModalityType",
+              "outputModalities": "ModalityType"
+            }
+          ],
+          "addPIIFilter": [
+            {
+              "type": "*",
+              "action": "GuardrailAction",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "addRegexFilter": [
+            {
+              "name": "*",
+              "description": "*",
+              "action": "GuardrailAction",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean",
+              "pattern": "*"
+            }
+          ],
+          "addDeniedTopicFilter": [
+            "*"
+          ],
+          "addContextualGroundingFilter": [
+            {
+              "type": "ContextualGroundingFilterType",
+              "action": "GuardrailAction",
+              "enabled": "boolean",
+              "threshold": "*"
+            }
+          ],
+          "addWordFilter": [
+            {
+              "text": "*",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "addWordFilterFromFile": [
+            "*",
+            "GuardrailAction",
+            "GuardrailAction",
+            "boolean",
+            "boolean"
+          ],
+          "addManagedWordListFilter": [
+            {
+              "type": "ManagedWordFilterType",
+              "inputAction": "GuardrailAction",
+              "inputEnabled": "boolean",
+              "outputAction": "GuardrailAction",
+              "outputEnabled": "boolean"
+            }
+          ],
+          "createVersion": [
+            "*"
+          ]
+        },
+        "ApplicationInferenceProfile": {
+          "applicationInferenceProfileName": "*",
+          "description": "*",
+          "modelSource": {
+            "invokableArn": "*"
+          },
+          "tags": "*",
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantProfileUsage": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "Prompt": {
+          "promptName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "defaultVariant": {
+            "name": "*",
+            "templateType": "PromptTemplateType",
+            "inferenceConfiguration": "*",
+            "modelId": "*",
+            "templateConfiguration": "*",
+            "genAiResource": "*"
+          },
+          "variants": {
+            "name": "*",
+            "templateType": "PromptTemplateType",
+            "inferenceConfiguration": "*",
+            "modelId": "*",
+            "templateConfiguration": "*",
+            "genAiResource": "*"
+          },
+          "tags": "*",
+          "createVersion": [
+            "*"
+          ],
+          "addVariant": [
+            {
+              "name": "*",
+              "templateType": "PromptTemplateType",
+              "inferenceConfiguration": "*",
+              "modelId": "*",
+              "templateConfiguration": "*",
+              "genAiResource": "*"
+            }
+          ]
+        }
+      },
+      "aws-glue-alpha.lib": {
+        "PySparkEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkStreamingJob": {
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PythonShellJob": {
+          "pythonVersion": "PythonVersion",
+          "maxCapacity": "MaxCapacity",
+          "librarySet": "LibrarySet",
+          "extraPythonFiles": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "RayJob": {
+          "runtime": "Runtime",
+          "numberOfWorkers": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkEtlJob": {
+          "className": "*",
+          "notifyDelayAfter": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkStreamingJob": {
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "Workflow": {}
+      },
+      "aws-apigateway.lib": {
+        "CognitoUserPoolsAuthorizer": {
+          "authorizerName": "*",
+          "cognitoUserPools": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "resultsCacheTtl": "*",
+          "identitySource": "*",
+          "_attachToApi": [
+            {
+              "restApiId": "*",
+              "restApiName": "*",
+              "restApiRootResourceId": "*",
+              "latestDeployment": "*",
+              "deploymentStage": "*",
+              "root": {
+                "restApi": "*",
+                "resourceId": "*",
+                "path": "*",
+                "defaultIntegration": "*",
+                "defaultMethodOptions": {
+                  "operationName": "*",
+                  "authorizationType": "AuthorizationType",
+                  "authorizer": {
+                    "authorizerId": "*",
+                    "authorizationType": "AuthorizationType"
+                  },
+                  "apiKeyRequired": "boolean",
+                  "methodResponses": {
+                    "statusCode": "*",
+                    "responseParameters": "*",
+                    "responseModels": "*"
+                  },
+                  "requestParameters": "*",
+                  "requestModels": "*",
+                  "requestValidator": {
+                    "requestValidatorId": "*",
+                    "stack": "*",
+                    "node": "*",
+                    "env": {
+                      "account": "*",
+                      "region": "*"
+                    }
+                  },
+                  "authorizationScopes": "*",
+                  "requestValidatorOptions": {
+                    "requestValidatorName": "*",
+                    "validateRequestBody": "boolean",
+                    "validateRequestParameters": "boolean"
+                  }
+                },
+                "defaultCorsPreflightOptions": {
+                  "statusCode": "*",
+                  "allowOrigins": "*",
+                  "allowHeaders": "*",
+                  "allowMethods": "*",
+                  "allowCredentials": "boolean",
+                  "maxAge": "*",
+                  "disableCache": "boolean",
+                  "exposeHeaders": "*"
+                }
+              }
+            }
+          ]
+        },
+        "TokenAuthorizer": {
+          "validationRegex": "*",
+          "identitySource": "*",
+          "authorizerName": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "resultsCacheTtl": "*",
+          "assumeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "RequestAuthorizer": {
+          "identitySources": "*",
+          "authorizerName": "*",
+          "handler": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "resultsCacheTtl": "*",
+          "assumeRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        }
+      },
+      "aws-apigatewayv2.lib": {
+        "ApiMapping": {
+          "apiMappingKey": "*",
+          "api": "*",
+          "domainName": "*",
+          "stage": {
+            "stageName": "*",
+            "url": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "DomainName": {
+          "domainName": "*",
+          "mtls": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "key": "*",
+            "version": "*"
+          },
+          "certificate": "*",
+          "certificateName": "*",
+          "endpointType": "EndpointType",
+          "securityPolicy": "SecurityPolicy",
+          "ownershipCertificate": "*",
+          "ipAddressType": "IpAddressType",
+          "addEndpoint": [
+            {
+              "certificate": "*",
+              "certificateName": "*",
+              "endpointType": "EndpointType",
+              "securityPolicy": "SecurityPolicy",
+              "ownershipCertificate": "*",
+              "ipAddressType": "IpAddressType"
+            }
+          ]
+        },
+        "HttpApi": {
+          "addStage": [
+            "*",
+            {
+              "stageName": "*",
+              "autoDeploy": "boolean",
+              "domainMapping": {
+                "domainName": "*",
+                "mappingKey": "*"
+              },
+              "throttle": {
+                "rateLimit": "*",
+                "burstLimit": "*"
+              },
+              "description": "*",
+              "detailedMetricsEnabled": "boolean",
+              "accessLogSettings": {
+                "destination": "*",
+                "format": "*"
+              },
+              "stageVariables": "*"
+            }
+          ],
+          "addRoutes": [
+            {
+              "path": "*",
+              "methods": "HttpMethod",
+              "authorizer": "*",
+              "authorizationScopes": "*",
+              "integration": "*"
+            }
+          ]
+        },
+        "HttpAuthorizer": {
+          "authorizerName": "*",
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "type": "HttpAuthorizerType",
+          "identitySource": "*",
+          "jwtAudience": "*",
+          "jwtIssuer": "*",
+          "enableSimpleResponses": "boolean",
+          "payloadFormatVersion": "AuthorizerPayloadVersion",
+          "authorizerUri": "*",
+          "resultsCacheTtl": "*",
+          "role": "*"
+        },
+        "HttpIntegration": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "integrationType": "HttpIntegrationType",
+          "integrationSubtype": "HttpIntegrationSubtype",
+          "integrationUri": "*",
+          "method": "HttpMethod",
+          "connectionId": "*",
+          "connectionType": "HttpConnectionType",
+          "payloadFormatVersion": "*",
+          "secureServerName": "*",
+          "timeout": "*",
+          "parameterMapping": "*",
+          "credentials": "*"
+        },
+        "HttpRoute": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "routeKey": "*",
+          "authorizer": "*",
+          "authorizationScopes": "*",
+          "integration": "*",
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "httpMethods": "HttpMethod"
+            }
+          ]
+        },
+        "HttpStage": {
+          "httpApi": {
+            "isHttpApi": "boolean"
+          },
+          "stageName": "*",
+          "autoDeploy": "boolean",
+          "domainMapping": {
+            "domainName": "*",
+            "mappingKey": "*"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "description": "*",
+          "detailedMetricsEnabled": "boolean",
+          "accessLogSettings": {
+            "destination": "*",
+            "format": "*"
+          },
+          "stageVariables": "*"
+        },
+        "VpcLink": {
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "vpcLinkName": "*",
+          "subnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroups": "*",
+          "addSubnets": [
+            "*"
+          ],
+          "addSecurityGroups": [
+            "*"
+          ]
+        },
+        "ApiKey": {
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*"
+        },
+        "RateLimitedApiKey": {
+          "apiStages": {
+            "api": {
+              "apiId": "*",
+              "apiEndpoint": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "isWebsocketApi": "boolean"
+            },
+            "stage": {
+              "callbackUrl": "*",
+              "stageName": "*",
+              "url": "*"
+            }
+          },
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "customerId": "*",
+          "enabled": "boolean",
+          "generateDistinctId": "boolean",
+          "apiKeyName": "*",
+          "value": "*",
+          "description": "*"
+        },
+        "WebSocketApi": {
+          "addRoute": [
+            "*",
+            {
+              "integration": "*",
+              "authorizer": "*",
+              "returnResponse": "boolean"
+            }
+          ],
+          "grantManageConnections": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "arnForExecuteApi": [
+            "*",
+            "*",
+            "*"
+          ],
+          "arnForExecuteApiV2": [
+            "*",
+            "*"
+          ]
+        },
+        "WebSocketAuthorizer": {
+          "authorizerName": "*",
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "type": "WebSocketAuthorizerType",
+          "identitySource": "*",
+          "authorizerUri": "*"
+        },
+        "WebSocketIntegration": {
+          "webSocketApi": {
+            "isWebsocketApi": "boolean"
+          },
+          "integrationType": "WebSocketIntegrationType",
+          "integrationUri": "*",
+          "integrationMethod": "*",
+          "contentHandling": "ContentHandling",
+          "credentialsRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "requestParameters": "*",
+          "requestTemplates": "*",
+          "templateSelectionExpression": "*",
+          "timeout": "*",
+          "passthroughBehavior": "PassthroughBehavior"
+        },
+        "WebSocketRoute": {
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "routeKey": "*",
+          "apiKeyRequired": "boolean",
+          "integration": "*",
+          "authorizer": "*",
+          "returnResponse": "boolean"
+        },
+        "WebSocketStage": {
+          "webSocketApi": {
+            "apiId": "*",
+            "apiEndpoint": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "isWebsocketApi": "boolean"
+          },
+          "stageName": "*",
+          "autoDeploy": "boolean",
+          "domainMapping": {
+            "domainName": "*",
+            "mappingKey": "*"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "description": "*",
+          "detailedMetricsEnabled": "boolean",
+          "accessLogSettings": {
+            "destination": "*",
+            "format": "*"
+          },
+          "stageVariables": "*",
+          "grantManagementApiAccess": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "UsagePlan": {
+          "apiStages": {
+            "api": {
+              "apiId": "*",
+              "apiEndpoint": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "isWebsocketApi": "boolean"
+            },
+            "stage": {
+              "callbackUrl": "*",
+              "stageName": "*",
+              "url": "*"
+            }
+          },
+          "description": "*",
+          "quota": {
+            "limit": "*",
+            "offset": "*",
+            "period": "Period"
+          },
+          "throttle": {
+            "rateLimit": "*",
+            "burstLimit": "*"
+          },
+          "usagePlanName": "*",
+          "addApiStage": [
+            {
+              "api": {
+                "apiId": "*",
+                "apiEndpoint": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                },
+                "isWebsocketApi": "boolean"
+              },
+              "stage": {
+                "callbackUrl": "*",
+                "stageName": "*",
+                "url": "*"
+              }
+            }
+          ]
+        }
+      },
+      "aws-bedrockagentcore.lib": {
+        "Evaluator": {
+          "evaluatorName": "*",
+          "evaluatorConfig": "*",
+          "level": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "OnlineEvaluationConfig": {
+          "evaluators": "*",
+          "dataSource": "*",
+          "tags": "*",
+          "onlineEvaluationConfigName": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "description": "*",
+          "samplingPercentage": "*",
+          "filters": {
+            "key": "*",
+            "operator": "*",
+            "value": "*"
+          },
+          "sessionTimeout": "*",
+          "executionStatus": "*"
+        },
+        "Gateway": {
+          "gatewayName": "*",
+          "description": "*",
+          "protocolConfiguration": {
+            "protocolType": "*"
+          },
+          "authorizerConfiguration": {
+            "authorizerType": "GatewayAuthorizerType"
+          },
+          "exceptionLevel": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "interceptorConfigurations": {
+            "interceptionPoint": "InterceptionPoint"
+          },
+          "policyEngineConfiguration": {
+            "policyEngine": {
+              "policyEngineArn": "*",
+              "policyEngineId": "*",
+              "policyEngineName": "*",
+              "description": "*",
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "mode": "*"
+          },
+          "addLambdaTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "lambdaFunction": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "latestVersion": {
+                  "version": "*",
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "tenancyConfig": "*",
+                  "architecture": "*",
+                  "resourceArnsForGrantInvoke": "*",
+                  "connections": "*"
+                },
+                "resourceArnsForGrantInvoke": "*"
+              },
+              "toolSchema": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addOpenApiTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "apiSchema": "*",
+              "validateOpenApiSchema": "boolean",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addSmithyTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "smithyModel": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addMcpServerTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "endpoint": "*",
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              }
+            }
+          ],
+          "addApiGatewayTarget": [
+            "*",
+            {
+              "gatewayTargetName": "*",
+              "description": "*",
+              "restApi": {
+                "restApiId": "*",
+                "restApiName": "*",
+                "restApiRootResourceId": "*",
+                "latestDeployment": "*",
+                "deploymentStage": "*",
+                "root": {
+                  "restApi": "*",
+                  "resourceId": "*",
+                  "path": "*",
+                  "defaultIntegration": "*",
+                  "defaultMethodOptions": {
+                    "operationName": "*",
+                    "authorizationType": "AuthorizationType",
+                    "authorizer": {
+                      "authorizerId": "*",
+                      "authorizationType": "AuthorizationType"
+                    },
+                    "apiKeyRequired": "boolean",
+                    "methodResponses": {
+                      "statusCode": "*",
+                      "responseParameters": "*",
+                      "responseModels": "*"
+                    },
+                    "requestParameters": "*",
+                    "requestModels": "*",
+                    "requestValidator": {
+                      "requestValidatorId": "*",
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "authorizationScopes": "*",
+                    "requestValidatorOptions": {
+                      "requestValidatorName": "*",
+                      "validateRequestBody": "boolean",
+                      "validateRequestParameters": "boolean"
+                    }
+                  },
+                  "defaultCorsPreflightOptions": {
+                    "statusCode": "*",
+                    "allowOrigins": "*",
+                    "allowHeaders": "*",
+                    "allowMethods": "*",
+                    "allowCredentials": "boolean",
+                    "maxAge": "*",
+                    "disableCache": "boolean",
+                    "exposeHeaders": "*"
+                  }
+                }
+              },
+              "stage": "*",
+              "apiGatewayToolConfiguration": {
+                "toolFilters": {
+                  "filterPath": "*",
+                  "methods": "*"
+                },
+                "toolOverrides": {
+                  "path": "*",
+                  "name": "*",
+                  "description": "*"
+                }
+              },
+              "credentialProviderConfigurations": {
+                "credentialProviderType": "CredentialProviderType"
+              },
+              "metadataConfiguration": {
+                "allowedQueryParameters": "*",
+                "allowedRequestHeaders": "*",
+                "allowedResponseHeaders": "*"
+              }
+            }
+          ],
+          "addInterceptor": [
+            {
+              "interceptionPoint": "InterceptionPoint"
+            }
+          ]
+        },
+        "ApiKeyCredentialProvider": {
+          "apiKeyCredentialProviderName": "*",
+          "apiKey": "*",
+          "tags": "*",
+          "bindForGatewayApiKeyTarget": []
+        },
+        "OAuth2CredentialProvider": {
+          "oAuth2CredentialProviderName": "*",
+          "credentialProviderVendor": "*",
+          "oauth2ProviderConfigInput": "*",
+          "tags": "*",
+          "bindForGatewayOAuthTarget": [
+            "*",
+            "*"
+          ]
+        },
+        "WorkloadIdentity": {
+          "workloadIdentityName": "*",
+          "allowedResourceOauth2ReturnUrls": "*",
+          "tags": "*"
+        },
+        "Memory": {
+          "memoryName": "*",
+          "expirationDuration": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "memoryStrategies": {
+            "strategyName": "*",
+            "description": "*",
+            "strategyType": "MemoryStrategyType"
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "streamDeliveryResources": "*",
+          "addMemoryStrategy": [
+            {
+              "strategyName": "*",
+              "description": "*",
+              "strategyType": "MemoryStrategyType"
+            }
+          ],
+          "addStreamDeliveryResource": [
+            "*"
+          ]
+        },
+        "PolicyEngine": {
+          "policyEngineName": "*",
+          "description": "*",
+          "kmsKey": {
+            "keyArn": "*",
+            "keyId": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "addPolicy": [
+            "*",
+            {
+              "statement": "*",
+              "policyName": "*",
+              "description": "*",
+              "validationMode": "*"
+            }
+          ]
+        },
+        "Policy": {
+          "policyName": "*",
+          "policyEngine": {
+            "policyEngineArn": "*",
+            "policyEngineId": "*",
+            "policyEngineName": "*",
+            "description": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "statement": "*",
+          "description": "*",
+          "validationMode": "*"
+        },
+        "RuntimeEndpoint": {
+          "endpointName": "*",
+          "agentRuntimeId": "*",
+          "agentRuntimeVersion": "*",
+          "description": "*",
+          "tags": "*"
+        },
+        "Runtime": {
+          "runtimeName": "*",
+          "agentRuntimeArtifact": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "description": "*",
+          "protocolConfiguration": "*",
+          "platformVersion": "*",
+          "environmentVariables": "*",
+          "authorizerConfiguration": "*",
+          "tags": "*",
+          "requestHeaderConfiguration": {
+            "allowlistedHeaders": "*"
+          },
+          "lifecycleConfiguration": {
+            "idleRuntimeSessionTimeout": "*"
+          },
+          "tracingEnabled": "boolean",
+          "loggingConfigs": {
+            "logType": "*",
+            "destination": "*"
+          },
+          "manageDeliveryResourcePolicy": "boolean",
+          "addEndpoint": [
+            "*",
+            {
+              "description": "*",
+              "version": "*"
+            }
+          ]
+        },
+        "BrowserCustom": {
+          "browserCustomName": "*",
+          "description": "*",
+          "networkConfiguration": "*",
+          "recordingConfig": {
+            "enabled": "boolean",
+            "s3Location": {
+              "bucketName": "*",
+              "objectKey": "*",
+              "objectVersion": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "browserSigning": "BrowserSigning"
+        },
+        "CodeInterpreterCustom": {
+          "codeInterpreterCustomName": "*",
+          "description": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "networkConfiguration": "*",
+          "tags": "*"
+        }
+      },
+      "aws-cloudfront.lib": {
+        "EdgeFunction": {
+          "stackId": "*",
+          "runtime": "*",
+          "code": "*",
+          "handler": "*",
+          "description": "*",
+          "timeout": "*",
+          "environment": "*",
+          "functionName": "*",
+          "memorySize": "*",
+          "ephemeralStorageSize": "*",
+          "initialPolicy": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "ipv6AllowedForDualStack": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "allowAllOutbound": "boolean",
+          "allowAllIpv6Outbound": "boolean",
+          "deadLetterQueueEnabled": "boolean",
+          "deadLetterQueue": {
+            "queueArn": "*",
+            "queueUrl": "*",
+            "queueName": "*",
+            "encryptionMasterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "fifo": "boolean",
+            "encryptionType": "QueueEncryption"
+          },
+          "deadLetterTopic": {
+            "topicArn": "*",
+            "topicName": "*",
+            "masterKey": {
+              "keyArn": "*",
+              "keyId": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "contentBasedDeduplication": "boolean",
+            "fifo": "boolean"
+          },
+          "tracing": "Tracing",
+          "snapStart": "*",
+          "profiling": "boolean",
+          "profilingGroup": {
+            "profilingGroupName": "*",
+            "profilingGroupArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "insightsVersion": "*",
+          "adotInstrumentation": {
+            "layerVersion": "*",
+            "execWrapper": "AdotLambdaExecWrapper"
+          },
+          "paramsAndSecrets": "*",
+          "layers": {
+            "layerVersionArn": "*",
+            "compatibleRuntimes": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "reservedConcurrentExecutions": "*",
+          "events": "*",
+          "logRetention": "RetentionDays",
+          "logRemovalPolicy": "RemovalPolicy",
+          "logRetentionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "logRetentionRetryOptions": {
+            "maxRetries": "*",
+            "base": "*"
+          },
+          "currentVersionOptions": {
+            "codeSha256": "*",
+            "description": "*",
+            "provisionedConcurrentExecutions": "*",
+            "removalPolicy": "RemovalPolicy",
+            "minExecutionEnvironments": "*",
+            "maxExecutionEnvironments": "*",
+            "onFailure": "*",
+            "maxEventAge": "*",
+            "retryAttempts": "*"
+          },
+          "filesystem": "*",
+          "allowPublicSubnet": "boolean",
+          "environmentEncryption": "*",
+          "codeSigningConfig": "*",
+          "architectures": "*",
+          "architecture": "*",
+          "runtimeManagementMode": "*",
+          "tenancyConfig": "*",
+          "durableConfig": {
+            "executionTimeout": "*"
+          },
+          "logGroup": "*",
+          "logFormat": "*",
+          "loggingFormat": "LoggingFormat",
+          "recursiveLoop": "RecursiveLoop",
+          "applicationLogLevel": "*",
+          "applicationLogLevelV2": "ApplicationLogLevel",
+          "systemLogLevel": "*",
+          "systemLogLevelV2": "SystemLogLevel",
+          "onFailure": "*",
+          "onSuccess": "*",
+          "maxEventAge": "*",
+          "retryAttempts": "*",
+          "addAlias": [
+            "*",
+            {
+              "description": "*",
+              "additionalVersions": {
+                "version": {
+                  "version": "*",
+                  "lambda": {
+                    "functionName": "*",
+                    "functionArn": "*",
+                    "role": {
+                      "roleArn": "*",
+                      "roleName": "*",
+                      "assumeRoleAction": "*",
+                      "policyFragment": "*",
+                      "principalAccount": "*",
+                      "grantPrincipal": {
+                        "assumeRoleAction": "*",
+                        "principalAccount": "*"
+                      },
+                      "stack": "*",
+                      "node": "*",
+                      "env": {
+                        "account": "*",
+                        "region": "*"
+                      }
+                    },
+                    "isBoundToVpc": "boolean",
+                    "tenancyConfig": "*",
+                    "architecture": "*",
+                    "resourceArnsForGrantInvoke": "*",
+                    "connections": "*"
+                  },
+                  "edgeArn": "*",
+                  "functionName": "*",
+                  "functionArn": "*",
+                  "isBoundToVpc": "boolean",
+                  "resourceArnsForGrantInvoke": "*"
+                },
+                "weight": "*"
+              },
+              "provisionedConcurrentExecutions": "*",
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addEventSourceMapping": [
+            "*",
+            {
+              "eventSourceArn": "*",
+              "batchSize": "*",
+              "bisectBatchOnError": "boolean",
+              "onFailure": "*",
+              "enabled": "boolean",
+              "startingPosition": "StartingPosition",
+              "startingPositionTimestamp": "*",
+              "reportBatchItemFailures": "boolean",
+              "maxBatchingWindow": "*",
+              "maxConcurrency": "*",
+              "retryAttempts": "*",
+              "parallelizationFactor": "*",
+              "kafkaTopic": "*",
+              "kafkaBootstrapServers": "*",
+              "kafkaConsumerGroupId": "*",
+              "sourceAccessConfigurations": {
+                "type": "*",
+                "uri": "*"
+              },
+              "filters": "*",
+              "filterEncryption": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "supportS3OnFailureDestination": "boolean",
+              "provisionedPollerConfig": {
+                "minimumPollers": "*",
+                "maximumPollers": "*",
+                "pollerGroupName": "*"
+              },
+              "metricsConfig": {
+                "metrics": "MetricType"
+              },
+              "logLevel": "EventSourceMappingLogLevel",
+              "schemaRegistryConfig": "*"
+            }
+          ],
+          "addPermission": [
+            "*",
+            {
+              "action": "*",
+              "eventSourceToken": "*",
+              "principal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              },
+              "scope": "*",
+              "sourceAccount": "*",
+              "sourceArn": "*",
+              "organizationId": "*",
+              "functionUrlAuthType": "FunctionUrlAuthType",
+              "invokedViaFunctionUrl": "boolean"
+            }
+          ],
+          "addToRolePolicy": [
+            "*"
+          ],
+          "grantInvoke": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeLatestVersion": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeVersion": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            {
+              "version": "*",
+              "lambda": {
+                "functionName": "*",
+                "functionArn": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "grantInvokeUrl": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "grantInvokeCompositePrincipal": [
+            "*"
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricDuration": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricErrors": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricInvocations": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricThrottles": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "addEventSource": [
+            "*"
+          ],
+          "configureAsyncInvoke": [
+            {
+              "onFailure": "*",
+              "maxEventAge": "*",
+              "retryAttempts": "*"
+            }
+          ],
+          "addFunctionUrl": [
+            {
+              "authType": "FunctionUrlAuthType",
+              "cors": {
+                "allowCredentials": "boolean",
+                "allowedHeaders": "*",
+                "allowedMethods": "HttpMethod",
+                "allowedOrigins": "*",
+                "exposedHeaders": "*",
+                "maxAge": "*"
+              },
+              "invokeMode": "InvokeMode"
+            }
+          ]
+        }
+      },
+      "aws-codedeploy.lib": {
+        "EcsApplication": {
+          "applicationName": "*"
+        },
+        "EcsDeploymentConfig": {},
+        "EcsDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*",
+          "alarms": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "service": {
+            "cluster": {
+              "clusterName": "*",
+              "clusterArn": "*",
+              "vpc": {
+                "vpcId": "*",
+                "vpcArn": "*",
+                "vpcCidrBlock": "*",
+                "publicSubnets": {
+                  "availabilityZone": "*",
+                  "subnetId": "*",
+                  "internetConnectivityEstablished": "*",
+                  "ipv4CidrBlock": "*",
+                  "routeTable": {
+                    "routeTableId": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "availabilityZones": "*",
+                "vpnGatewayId": "*"
+              },
+              "connections": "*",
+              "hasEc2Capacity": "boolean",
+              "defaultCloudMapNamespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType"
+              },
+              "autoscalingGroup": {
+                "autoScalingGroupName": "*",
+                "autoScalingGroupArn": "*",
+                "osType": "OperatingSystemType",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*"
+                }
+              },
+              "executeCommandConfiguration": {
+                "kmsKey": {
+                  "keyArn": "*",
+                  "keyId": "*"
+                },
+                "logConfiguration": {
+                  "cloudWatchEncryptionEnabled": "boolean",
+                  "cloudWatchLogGroup": "*",
+                  "s3Bucket": {
+                    "bucketArn": "*",
+                    "bucketName": "*",
+                    "bucketWebsiteUrl": "*",
+                    "bucketWebsiteDomainName": "*",
+                    "bucketDomainName": "*",
+                    "bucketDualStackDomainName": "*",
+                    "bucketRegionalDomainName": "*",
+                    "isWebsite": "boolean",
+                    "policy": "*",
+                    "replicationRoleArn": "*"
+                  },
+                  "s3EncryptionEnabled": "boolean",
+                  "s3KeyPrefix": "*"
+                },
+                "logging": "ExecuteCommandLogging"
+              }
+            },
+            "serviceArn": "*",
+            "serviceName": "*"
+          },
+          "blueGreenDeploymentConfig": {
+            "blueTargetGroup": {
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            },
+            "listener": "*",
+            "testListener": "*",
+            "deploymentApprovalWaitTime": "*"
+          },
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "addAlarm": [
+            "*"
+          ]
+        },
+        "ImportedEcsDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*"
+        },
+        "LambdaApplication": {
+          "applicationName": "*"
+        },
+        "CustomLambdaDeploymentConfig": {
+          "type": "CustomLambdaDeploymentConfigType",
+          "percentage": "*",
+          "interval": "*",
+          "deploymentConfigName": "*",
+          "bindEnvironment": [
+            "*"
+          ]
+        },
+        "LambdaDeploymentConfig": {},
+        "LambdaDeploymentGroup": {
+          "application": {
+            "applicationArn": "*",
+            "applicationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": {
+            "deploymentConfigName": "*",
+            "deploymentConfigArn": "*"
+          },
+          "alarms": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "alias": "*",
+          "preHook": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "postHook": {
+            "functionName": "*",
+            "functionArn": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "isBoundToVpc": "boolean",
+            "latestVersion": {
+              "version": "*",
+              "edgeArn": "*",
+              "functionName": "*",
+              "functionArn": "*",
+              "isBoundToVpc": "boolean",
+              "tenancyConfig": "*",
+              "architecture": "*",
+              "resourceArnsForGrantInvoke": "*",
+              "connections": "*"
+            },
+            "resourceArnsForGrantInvoke": "*"
+          },
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "addAlarm": [
+            "*"
+          ],
+          "addPreHook": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "addPostHook": [
+            {
+              "functionName": "*",
+              "functionArn": "*",
+              "role": {
+                "roleArn": "*",
+                "roleName": "*",
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*",
+                "grantPrincipal": {
+                  "assumeRoleAction": "*",
+                  "principalAccount": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "isBoundToVpc": "boolean",
+              "latestVersion": {
+                "version": "*",
+                "edgeArn": "*",
+                "functionName": "*",
+                "functionArn": "*",
+                "isBoundToVpc": "boolean",
+                "tenancyConfig": "*",
+                "architecture": "*",
+                "resourceArnsForGrantInvoke": "*",
+                "connections": "*"
+              },
+              "resourceArnsForGrantInvoke": "*"
+            }
+          ],
+          "grantPutLifecycleEventHookExecutionStatus": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        },
+        "ImportedLambdaDeploymentGroup": {
+          "application": {
+            "applicationArn": "*",
+            "applicationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": {
+            "deploymentConfigName": "*",
+            "deploymentConfigArn": "*"
+          }
+        },
+        "ImportedDeploymentGroupBase": {
+          "application": "*",
+          "deploymentGroupName": "*"
+        },
+        "DeploymentGroupBase": {
+          "deploymentGroupName": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "roleConstructId": "*"
+        },
+        "ServerApplication": {
+          "applicationName": "*"
+        },
+        "ServerDeploymentConfig": {
+          "minimumHealthyHosts": "*",
+          "zonalConfig": {
+            "monitorDuration": "*",
+            "minimumHealthyHostsPerZone": "*"
+          },
+          "deploymentConfigName": "*"
+        },
+        "ImportedServerDeploymentGroup": {
+          "application": "*",
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*"
+        },
+        "ServerDeploymentGroup": {
+          "application": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "deploymentGroupName": "*",
+          "deploymentConfig": "*",
+          "autoScalingGroups": {
+            "autoScalingGroupName": "*",
+            "autoScalingGroupArn": "*",
+            "osType": "OperatingSystemType",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          },
+          "installAgent": "boolean",
+          "loadBalancer": "*",
+          "loadBalancers": "*",
+          "ec2InstanceTags": "*",
+          "onPremiseInstanceTags": "*",
+          "alarms": "*",
+          "ignorePollAlarmsFailure": "boolean",
+          "autoRollback": {
+            "failedDeployment": "boolean",
+            "stoppedDeployment": "boolean",
+            "deploymentInAlarm": "boolean"
+          },
+          "ignoreAlarmConfiguration": "boolean",
+          "terminationHook": "boolean",
+          "addAutoScalingGroup": [
+            "*"
+          ],
+          "addAlarm": [
+            "*"
+          ]
+        }
+      },
+      "aws-codepipeline.lib": {
+        "AliasWithShorterGeneratedName": {}
+      },
+      "aws-cognito.lib": {
+        "UserPoolIdentityProviderAmazon": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderApple": {
+          "clientId": "*",
+          "teamId": "*",
+          "keyId": "*",
+          "privateKey": "*",
+          "privateKeyValue": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderFacebook": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "scopes": "*",
+          "apiVersion": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderGoogle": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "clientSecretValue": "*",
+          "scopes": "*",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderOidc": {
+          "clientId": "*",
+          "clientSecret": "*",
+          "issuerUrl": "*",
+          "name": "*",
+          "scopes": "*",
+          "identifiers": "*",
+          "attributeRequestMethod": "OidcAttributeRequestMethod",
+          "endpoints": {
+            "authorization": "*",
+            "token": "*",
+            "userInfo": "*",
+            "jwksUri": "*"
+          },
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        },
+        "UserPoolIdentityProviderSaml": {
+          "name": "*",
+          "identifiers": "*",
+          "metadata": "*",
+          "idpSignout": "boolean",
+          "encryptedResponses": "boolean",
+          "requestSigningAlgorithm": "SigningAlgorithm",
+          "idpInitiated": "boolean",
+          "userPool": {
+            "userPoolId": "*",
+            "userPoolArn": "*",
+            "userPoolProviderName": "*",
+            "identityProviders": {
+              "providerName": "*",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "attributeMapping": {
+            "address": "*",
+            "custom": "*"
+          }
+        }
+      },
+      "aws-ecs.lib": {
+        "ImportedTaskDefinition": {
+          "taskDefinitionArn": "*",
+          "compatibility": "Compatibility",
+          "networkMode": "NetworkMode",
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          }
+        },
+        "TaskDefinition": {
+          "networkMode": "NetworkMode",
+          "placementConstraints": "*",
+          "compatibility": "Compatibility",
+          "cpu": "*",
+          "memoryMiB": "*",
+          "ipcMode": "IpcMode",
+          "pidMode": "PidMode",
+          "inferenceAccelerators": {
+            "deviceName": "*",
+            "deviceType": "*"
+          },
+          "ephemeralStorageGiB": "*",
+          "runtimePlatform": {
+            "cpuArchitecture": "*",
+            "operatingSystemFamily": "*"
+          },
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean",
+          "_validateTarget": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "alternateTarget": "*"
+            }
+          ],
+          "_portRangeFromPortMapping": [
+            {
+              "containerPort": "*",
+              "containerPortRange": "*",
+              "hostPort": "*",
+              "protocol": "Protocol",
+              "name": "*",
+              "appProtocol": "*"
+            }
+          ],
+          "addToTaskRolePolicy": [
+            "*"
+          ],
+          "addToExecutionRolePolicy": [
+            "*"
+          ],
+          "addContainer": [
+            "*",
+            {
+              "image": "*",
+              "containerName": "*",
+              "command": "*",
+              "credentialSpecs": "*",
+              "cpu": "*",
+              "disableNetworking": "boolean",
+              "dnsSearchDomains": "*",
+              "dnsServers": "*",
+              "dockerLabels": "*",
+              "dockerSecurityOptions": "*",
+              "entryPoint": "*",
+              "environment": "*",
+              "environmentFiles": "*",
+              "secrets": "*",
+              "startTimeout": "*",
+              "essential": "boolean",
+              "extraHosts": "*",
+              "healthCheck": {
+                "command": "*",
+                "retries": "*"
+              },
+              "hostname": "*",
+              "interactive": "boolean",
+              "memoryLimitMiB": "*",
+              "memoryReservationMiB": "*",
+              "privileged": "boolean",
+              "readonlyRootFilesystem": "boolean",
+              "user": "*",
+              "versionConsistency": "VersionConsistency",
+              "workingDirectory": "*",
+              "logging": "*",
+              "linuxParameters": "*",
+              "gpuCount": "*",
+              "portMappings": {
+                "containerPort": "*",
+                "containerPortRange": "*",
+                "hostPort": "*",
+                "protocol": "Protocol",
+                "name": "*",
+                "appProtocol": "*"
+              },
+              "inferenceAcceleratorResources": "*",
+              "systemControls": {
+                "namespace": "*",
+                "value": "*"
+              },
+              "pseudoTerminal": "boolean",
+              "ulimits": {
+                "name": "UlimitName",
+                "softLimit": "*",
+                "hardLimit": "*"
+              },
+              "enableRestartPolicy": "boolean",
+              "restartIgnoredExitCodes": "*"
+            }
+          ],
+          "addFirelensLogRouter": [
+            "*",
+            {
+              "firelensConfig": {
+                "type": "FirelensLogRouterType",
+                "options": {
+                  "enableECSLogMetadata": "boolean",
+                  "configFileType": "FirelensConfigFileType",
+                  "configFileValue": "*"
+                }
+              },
+              "image": "*",
+              "containerName": "*",
+              "command": "*",
+              "credentialSpecs": "*",
+              "cpu": "*",
+              "disableNetworking": "boolean",
+              "dnsSearchDomains": "*",
+              "dnsServers": "*",
+              "dockerLabels": "*",
+              "dockerSecurityOptions": "*",
+              "entryPoint": "*",
+              "environment": "*",
+              "environmentFiles": "*",
+              "secrets": "*",
+              "startTimeout": "*",
+              "essential": "boolean",
+              "extraHosts": "*",
+              "healthCheck": {
+                "command": "*",
+                "retries": "*"
+              },
+              "hostname": "*",
+              "interactive": "boolean",
+              "memoryLimitMiB": "*",
+              "memoryReservationMiB": "*",
+              "privileged": "boolean",
+              "readonlyRootFilesystem": "boolean",
+              "user": "*",
+              "versionConsistency": "VersionConsistency",
+              "workingDirectory": "*",
+              "logging": "*",
+              "linuxParameters": "*",
+              "gpuCount": "*",
+              "portMappings": {
+                "containerPort": "*",
+                "containerPortRange": "*",
+                "hostPort": "*",
+                "protocol": "Protocol",
+                "name": "*",
+                "appProtocol": "*"
+              },
+              "inferenceAcceleratorResources": "*",
+              "systemControls": {
+                "namespace": "*",
+                "value": "*"
+              },
+              "pseudoTerminal": "boolean",
+              "ulimits": {
+                "name": "UlimitName",
+                "softLimit": "*",
+                "hardLimit": "*"
+              },
+              "enableRestartPolicy": "boolean",
+              "restartIgnoredExitCodes": "*"
+            }
+          ],
+          "_linkContainer": [
+            "*"
+          ],
+          "addVolume": [
+            {
+              "host": {
+                "sourcePath": "*"
+              },
+              "name": "*",
+              "configuredAtLaunch": "boolean",
+              "dockerVolumeConfiguration": {
+                "autoprovision": "boolean",
+                "driver": "*",
+                "driverOpts": "*",
+                "labels": "*",
+                "scope": "Scope"
+              },
+              "efsVolumeConfiguration": {
+                "fileSystemId": "*",
+                "rootDirectory": "*",
+                "transitEncryption": "*",
+                "transitEncryptionPort": "*",
+                "authorizationConfig": {
+                  "accessPointId": "*",
+                  "iam": "*"
+                }
+              }
+            }
+          ],
+          "addPlacementConstraint": [
+            "*"
+          ],
+          "addExtension": [
+            "*"
+          ],
+          "addInferenceAccelerator": [
+            {
+              "deviceName": "*",
+              "deviceType": "*"
+            }
+          ],
+          "grantRun": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ],
+          "obtainExecutionRole": [],
+          "findPortMappingByName": [
+            "*"
+          ],
+          "findContainer": [
+            "*"
+          ]
+        },
+        "Ec2Service": {
+          "taskDefinition": "*",
+          "assignPublicIp": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "placementConstraints": "*",
+          "placementStrategies": "*",
+          "daemon": "boolean",
+          "availabilityZoneRebalancing": "AvailabilityZoneRebalancing",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "addPlacementStrategies": [
+            "*"
+          ],
+          "addPlacementConstraints": [
+            "*"
+          ],
+          "attachToClassicLB": [
+            "*"
+          ]
+        },
+        "Ec2TaskDefinition": {
+          "networkMode": "NetworkMode",
+          "placementConstraints": "*",
+          "ipcMode": "IpcMode",
+          "pidMode": "PidMode",
+          "inferenceAccelerators": {
+            "deviceName": "*",
+            "deviceType": "*"
+          },
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean"
+        },
+        "ExternalService": {
+          "taskDefinition": "*",
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "daemon": "boolean",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "attachToApplicationTargetGroup": [
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*"
+            }
+          ],
+          "loadBalancerTarget": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "alternateTarget": "*"
+            }
+          ],
+          "registerLoadBalancerTargets": [
+            {
+              "containerName": "*",
+              "containerPort": "*",
+              "protocol": "Protocol",
+              "newTargetGroupId": "*",
+              "listener": "*"
+            }
+          ],
+          "autoScaleTaskCount": [
+            {
+              "minCapacity": "*",
+              "maxCapacity": "*"
+            }
+          ],
+          "enableCloudMap": [
+            {
+              "name": "*",
+              "cloudMapNamespace": {
+                "namespaceName": "*",
+                "namespaceId": "*",
+                "namespaceArn": "*",
+                "type": "NamespaceType",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "dnsRecordType": "DnsRecordType",
+              "dnsTtl": "*",
+              "failureThreshold": "*",
+              "container": "*",
+              "containerPort": "*"
+            }
+          ],
+          "associateCloudMapService": [
+            {
+              "service": {
+                "serviceName": "*",
+                "namespace": {
+                  "namespaceName": "*",
+                  "namespaceId": "*",
+                  "namespaceArn": "*",
+                  "type": "NamespaceType",
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                },
+                "serviceId": "*",
+                "serviceArn": "*",
+                "dnsRecordType": "DnsRecordType",
+                "routingPolicy": "RoutingPolicy",
+                "discoveryType": "DiscoveryType"
+              },
+              "container": "*",
+              "containerPort": "*"
+            }
+          ]
+        },
+        "ExternalTaskDefinition": {
+          "networkMode": "NetworkMode",
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean",
+          "addInferenceAccelerator": [
+            {
+              "deviceName": "*",
+              "deviceType": "*"
+            }
+          ]
+        },
+        "FargateService": {
+          "taskDefinition": "*",
+          "assignPublicIp": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "platformVersion": "FargatePlatformVersion",
+          "availabilityZoneRebalancing": "AvailabilityZoneRebalancing",
+          "cluster": {
+            "clusterName": "*",
+            "clusterArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "connections": "*",
+            "hasEc2Capacity": "boolean",
+            "defaultCloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType"
+            },
+            "autoscalingGroup": {
+              "autoScalingGroupName": "*",
+              "autoScalingGroupArn": "*",
+              "osType": "OperatingSystemType",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            },
+            "executeCommandConfiguration": {
+              "kmsKey": {
+                "keyArn": "*",
+                "keyId": "*"
+              },
+              "logConfiguration": {
+                "cloudWatchEncryptionEnabled": "boolean",
+                "cloudWatchLogGroup": "*",
+                "s3Bucket": {
+                  "bucketArn": "*",
+                  "bucketName": "*",
+                  "bucketWebsiteUrl": "*",
+                  "bucketWebsiteDomainName": "*",
+                  "bucketDomainName": "*",
+                  "bucketDualStackDomainName": "*",
+                  "bucketRegionalDomainName": "*",
+                  "isWebsite": "boolean",
+                  "policy": "*",
+                  "replicationRoleArn": "*"
+                },
+                "s3EncryptionEnabled": "boolean",
+                "s3KeyPrefix": "*"
+              },
+              "logging": "ExecuteCommandLogging"
+            }
+          },
+          "desiredCount": "*",
+          "serviceName": "*",
+          "maxHealthyPercent": "*",
+          "minHealthyPercent": "*",
+          "healthCheckGracePeriod": "*",
+          "cloudMapOptions": {
+            "name": "*",
+            "cloudMapNamespace": {
+              "namespaceName": "*",
+              "namespaceId": "*",
+              "namespaceArn": "*",
+              "type": "NamespaceType",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "dnsRecordType": "DnsRecordType",
+            "dnsTtl": "*",
+            "failureThreshold": "*",
+            "container": "*",
+            "containerPort": "*"
+          },
+          "propagateTags": "PropagatedTagSource",
+          "propagateTaskTagsFrom": "PropagatedTagSource",
+          "enableECSManagedTags": "boolean",
+          "deploymentController": {
+            "type": "DeploymentControllerType"
+          },
+          "circuitBreaker": {
+            "enable": "boolean",
+            "rollback": "boolean"
+          },
+          "deploymentAlarms": {
+            "alarmNames": "*",
+            "behavior": "AlarmBehavior"
+          },
+          "capacityProviderStrategies": {
+            "capacityProvider": "*",
+            "base": "*",
+            "weight": "*"
+          },
+          "enableExecuteCommand": "boolean",
+          "serviceConnectConfiguration": {
+            "namespace": "*",
+            "services": {
+              "portMappingName": "*",
+              "discoveryName": "*",
+              "dnsName": "*",
+              "port": "*",
+              "ingressPortOverride": "*",
+              "idleTimeout": "*",
+              "tls": {
+                "awsPcaAuthorityArn": "*",
+                "kmsKey": "*",
+                "role": {
+                  "roleArn": "*",
+                  "roleName": "*",
+                  "assumeRoleAction": "*",
+                  "policyFragment": "*",
+                  "principalAccount": "*",
+                  "grantPrincipal": {
+                    "assumeRoleAction": "*",
+                    "principalAccount": "*"
+                  },
+                  "stack": "*",
+                  "node": "*",
+                  "env": {
+                    "account": "*",
+                    "region": "*"
+                  }
+                }
+              }
+            },
+            "logDriver": "*",
+            "accessLogConfiguration": {
+              "format": "ServiceConnectAccessLogFormat",
+              "includeQueryParameters": "boolean"
+            }
+          },
+          "taskDefinitionRevision": "*",
+          "volumeConfigurations": "*",
+          "deploymentStrategy": "DeploymentStrategy",
+          "bakeTime": "*",
+          "lifecycleHooks": "*",
+          "linearConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "canaryConfiguration": {
+            "stepPercent": "*",
+            "stepBakeTime": "*"
+          },
+          "forceNewDeployment": {
+            "enabled": "boolean",
+            "nonce": "*"
+          },
+          "attachToClassicLB": [
+            "*"
+          ]
+        },
+        "FargateTaskDefinition": {
+          "cpu": "*",
+          "memoryLimitMiB": "*",
+          "ephemeralStorageGiB": "*",
+          "runtimePlatform": {
+            "cpuArchitecture": "*",
+            "operatingSystemFamily": "*"
+          },
+          "pidMode": "PidMode",
+          "family": "*",
+          "executionRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "taskRole": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "proxyConfiguration": "*",
+          "volumes": {
+            "host": {
+              "sourcePath": "*"
+            },
+            "name": "*",
+            "configuredAtLaunch": "boolean",
+            "dockerVolumeConfiguration": {
+              "autoprovision": "boolean",
+              "driver": "*",
+              "driverOpts": "*",
+              "labels": "*",
+              "scope": "Scope"
+            },
+            "efsVolumeConfiguration": {
+              "fileSystemId": "*",
+              "rootDirectory": "*",
+              "transitEncryption": "*",
+              "transitEncryptionPort": "*",
+              "authorizationConfig": {
+                "accessPointId": "*",
+                "iam": "*"
+              }
+            }
+          },
+          "enableFaultInjection": "boolean"
+        }
+      },
+      "aws-elasticloadbalancingv2.lib": {
+        "ApplicationListener": {
+          "loadBalancer": {
+            "loadBalancerArn": "*",
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "ipAddressType": "IpAddressType",
+            "listeners": "*",
+            "metrics": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "connections": "*",
+            "isApplicationLoadBalancer": "boolean"
+          },
+          "protocol": "ApplicationProtocol",
+          "port": "*",
+          "certificateArns": "*",
+          "certificates": {
+            "certificateArn": "*"
+          },
+          "sslPolicy": "SslPolicy",
+          "defaultTargetGroups": {
+            "metrics": "*",
+            "targetGroupName": "*",
+            "targetGroupArn": "*",
+            "loadBalancerArns": "*",
+            "loadBalancerAttached": "*",
+            "node": "*"
+          },
+          "defaultAction": "*",
+          "open": "boolean",
+          "mutualAuthentication": {
+            "mutualAuthenticationMode": "MutualAuthenticationMode",
+            "trustStore": "*",
+            "ignoreClientCertificateExpiry": "boolean",
+            "advertiseTrustStoreCaNames": "boolean"
+          },
+          "addCertificateArns": [
+            "*",
+            "*"
+          ],
+          "addCertificates": [
+            "*",
+            {
+              "certificateArn": "*"
+            }
+          ],
+          "addAction": [
+            "*",
+            {
+              "action": "*",
+              "removeSuffix": "boolean",
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addTargetGroups": [
+            "*",
+            {
+              "targetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addTargets": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "protocolVersion": "ApplicationProtocolVersion",
+              "port": "*",
+              "slowStart": "*",
+              "stickinessCookieName": "*",
+              "targets": "*",
+              "targetGroupName": "*",
+              "healthCheck": {
+                "enabled": "boolean",
+                "path": "*",
+                "port": "*",
+                "protocol": "Protocol",
+                "healthyThresholdCount": "*",
+                "unhealthyThresholdCount": "*",
+                "healthyGrpcCodes": "*",
+                "healthyHttpCodes": "*"
+              },
+              "loadBalancingAlgorithmType": "TargetGroupLoadBalancingAlgorithmType",
+              "enableAnomalyMitigation": "boolean",
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*"
+            }
+          ],
+          "addFixedResponse": [
+            "*",
+            {
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*",
+              "statusCode": "*",
+              "contentType": "ContentType",
+              "messageBody": "*"
+            }
+          ],
+          "addRedirectResponse": [
+            "*",
+            {
+              "priority": "*",
+              "conditions": "*",
+              "hostHeader": "*",
+              "pathPattern": "*",
+              "pathPatterns": "*",
+              "host": "*",
+              "path": "*",
+              "port": "*",
+              "protocol": "*",
+              "query": "*",
+              "statusCode": "*"
+            }
+          ],
+          "registerConnectable": [
+            {
+              "connections": "*"
+            },
+            "*"
+          ]
+        },
+        "ImportedApplicationListener": {
+          "listenerArn": "*",
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "defaultPort": "*",
+          "securityGroupAllowsAllOutbound": "boolean"
+        },
+        "LookedUpApplicationListener": {
+          "listenerArn": "*",
+          "listenerPort": "*",
+          "securityGroupIds": "*"
+        },
+        "ApplicationLoadBalancer": {
+          "securityGroup": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ipAddressType": "IpAddressType",
+          "http2Enabled": "boolean",
+          "idleTimeout": "*",
+          "dropInvalidHeaderFields": "boolean",
+          "desyncMitigationMode": "DesyncMitigationMode",
+          "clientKeepAlive": "*",
+          "preserveHostHeader": "boolean",
+          "xAmznTlsVersionAndCipherSuiteHeaders": "boolean",
+          "preserveXffClientPort": "boolean",
+          "xffHeaderProcessingMode": "XffHeaderProcessingMode",
+          "wafFailOpen": "boolean",
+          "loadBalancerName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "deletionProtection": "boolean",
+          "crossZoneEnabled": "boolean",
+          "denyAllIgwTraffic": "boolean",
+          "minimumCapacityUnit": "*",
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ],
+          "addRedirect": [
+            {
+              "sourceProtocol": "ApplicationProtocol",
+              "sourcePort": "*",
+              "targetProtocol": "ApplicationProtocol",
+              "targetPort": "*",
+              "open": "boolean"
+            }
+          ],
+          "logAccessLogs": [
+            {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "*"
+          ],
+          "logConnectionLogs": [
+            {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "*"
+          ],
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricActiveConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricClientTlsNegotiationErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricConsumedLCUs": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpFixedResponseCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpRedirectCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpRedirectUrlLimitExceededCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpCodeElb": [
+            "HttpCodeElb",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHttpCodeTarget": [
+            "HttpCodeTarget",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIpv6ProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricIpv6RequestCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricNewConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRejectedConnectionCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRequestCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricRuleEvaluations": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetConnectionErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetResponseTime": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTargetTLSNegotiationErrorCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthError": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthFailure": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthLatency": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricElbAuthSuccess": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "ImportedApplicationLoadBalancer": {
+          "loadBalancerArn": "*",
+          "securityGroupId": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "securityGroupAllowsAllOutbound": "boolean",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ]
+        },
+        "LookedUpApplicationLoadBalancer": {
+          "loadBalancerArn": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "ipAddressType": "LoadBalancerIpAddressType",
+          "securityGroupIds": "*",
+          "vpcId": "*",
+          "addListener": [
+            "*",
+            {
+              "protocol": "ApplicationProtocol",
+              "port": "*",
+              "certificateArns": "*",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*"
+              },
+              "defaultAction": "*",
+              "open": "boolean",
+              "mutualAuthentication": {
+                "mutualAuthenticationMode": "MutualAuthenticationMode",
+                "trustStore": "*",
+                "ignoreClientCertificateExpiry": "boolean",
+                "advertiseTrustStoreCaNames": "boolean"
+              }
+            }
+          ]
+        },
+        "TrustStoreRevocation": {
+          "trustStore": "*",
+          "revocationContents": {
+            "revocationType": "RevocationType",
+            "bucket": "*",
+            "key": "*",
+            "version": "*"
+          }
+        },
+        "TrustStore": {
+          "trustStoreName": "*",
+          "bucket": "*",
+          "key": "*",
+          "version": "*"
+        },
+        "NetworkListener": {
+          "loadBalancer": {
+            "vpc": {
+              "vpcId": "*",
+              "vpcArn": "*",
+              "vpcCidrBlock": "*",
+              "publicSubnets": {
+                "availabilityZone": "*",
+                "subnetId": "*",
+                "internetConnectivityEstablished": "*",
+                "ipv4CidrBlock": "*",
+                "routeTable": {
+                  "routeTableId": "*"
+                },
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "availabilityZones": "*",
+              "vpnGatewayId": "*"
+            },
+            "metrics": "*",
+            "securityGroups": "*",
+            "ipAddressType": "IpAddressType",
+            "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "*",
+            "loadBalancerCanonicalHostedZoneId": "*",
+            "loadBalancerDnsName": "*",
+            "loadBalancerArn": "*",
+            "connections": "*"
+          },
+          "port": "*",
+          "defaultTargetGroups": {
+            "metrics": "*",
+            "targetGroupName": "*",
+            "targetGroupArn": "*",
+            "loadBalancerArns": "*",
+            "loadBalancerAttached": "*",
+            "node": "*",
+            "isNetworkTargetGroup": "boolean"
+          },
+          "defaultAction": "*",
+          "protocol": "Protocol",
+          "certificates": {
+            "certificateArn": "*"
+          },
+          "sslPolicy": "SslPolicy",
+          "alpnPolicy": "AlpnPolicy",
+          "tcpIdleTimeout": "*",
+          "addCertificates": [
+            "*",
+            {
+              "certificateArn": "*"
+            }
+          ],
+          "addTargetGroups": [
+            "*",
+            {
+              "metrics": "*",
+              "targetGroupName": "*",
+              "targetGroupArn": "*",
+              "loadBalancerArns": "*",
+              "loadBalancerAttached": "*",
+              "node": "*",
+              "isNetworkTargetGroup": "boolean"
+            }
+          ],
+          "addAction": [
+            "*",
+            {
+              "action": "*"
+            }
+          ],
+          "addTargets": [
+            "*",
+            {
+              "port": "*",
+              "protocol": "Protocol",
+              "targets": "*",
+              "targetGroupName": "*",
+              "deregistrationDelay": "*",
+              "proxyProtocolV2": "boolean",
+              "preserveClientIp": "boolean",
+              "healthCheck": {
+                "enabled": "boolean",
+                "path": "*",
+                "port": "*",
+                "protocol": "Protocol",
+                "healthyThresholdCount": "*",
+                "unhealthyThresholdCount": "*",
+                "healthyGrpcCodes": "*",
+                "healthyHttpCodes": "*"
+              }
+            }
+          ]
+        },
+        "NetworkLoadBalancer": {
+          "securityGroups": {
+            "securityGroupId": "*",
+            "allowAllOutbound": "boolean",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            },
+            "canInlineRule": "boolean",
+            "uniqueId": "*",
+            "connections": "*"
+          },
+          "ipAddressType": "IpAddressType",
+          "clientRoutingPolicy": "ClientRoutingPolicy",
+          "enforceSecurityGroupInboundRulesOnPrivateLinkTraffic": "boolean",
+          "zonalShift": "boolean",
+          "enablePrefixForIpv6SourceNat": "boolean",
+          "subnetMappings": {
+            "subnet": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "allocationId": "*",
+            "ipv6Address": "*",
+            "privateIpv4Address": "*",
+            "sourceNatIpv6Prefix": "*"
+          },
+          "disableSecurityGroups": "boolean",
+          "loadBalancerName": "*",
+          "vpc": {
+            "vpcId": "*",
+            "vpcArn": "*",
+            "vpcCidrBlock": "*",
+            "publicSubnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "availabilityZones": "*",
+            "vpnGatewayId": "*"
+          },
+          "internetFacing": "boolean",
+          "vpcSubnets": {
+            "subnetType": "SubnetType",
+            "availabilityZones": "*",
+            "subnetGroupName": "*",
+            "subnetName": "*",
+            "onePerAz": "boolean",
+            "subnetFilters": "*",
+            "subnets": {
+              "availabilityZone": "*",
+              "subnetId": "*",
+              "internetConnectivityEstablished": "*",
+              "ipv4CidrBlock": "*",
+              "routeTable": {
+                "routeTableId": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            }
+          },
+          "deletionProtection": "boolean",
+          "crossZoneEnabled": "boolean",
+          "denyAllIgwTraffic": "boolean",
+          "minimumCapacityUnit": "*",
+          "addListener": [
+            "*",
+            {
+              "port": "*",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*",
+                "isNetworkTargetGroup": "boolean"
+              },
+              "defaultAction": "*",
+              "protocol": "Protocol",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "alpnPolicy": "AlpnPolicy",
+              "tcpIdleTimeout": "*"
+            }
+          ],
+          "addSecurityGroup": [
+            {
+              "securityGroupId": "*",
+              "allowAllOutbound": "boolean",
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "canInlineRule": "boolean",
+              "uniqueId": "*",
+              "connections": "*"
+            }
+          ],
+          "metric": [
+            "*",
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricActiveFlowCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricConsumedLCUs": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricHealthyHostCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricUnHealthyHostCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricNewFlowCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricProcessedBytes": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpClientResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpElbResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ],
+          "metricTcpTargetResetCount": [
+            {
+              "period": "*",
+              "statistic": "*",
+              "dimensions": "*",
+              "dimensionsMap": "*",
+              "unit": "Unit",
+              "label": "*",
+              "color": "*",
+              "id": "*",
+              "visible": "boolean",
+              "account": "*",
+              "region": "*",
+              "stackAccount": "*",
+              "stackRegion": "*"
+            }
+          ]
+        },
+        "LookedUpNetworkLoadBalancer": {
+          "loadBalancerArn": "*",
+          "loadBalancerCanonicalHostedZoneId": "*",
+          "loadBalancerDnsName": "*",
+          "ipAddressType": "LoadBalancerIpAddressType",
+          "securityGroupIds": "*",
+          "vpcId": "*",
+          "addListener": [
+            "*",
+            {
+              "port": "*",
+              "defaultTargetGroups": {
+                "metrics": "*",
+                "targetGroupName": "*",
+                "targetGroupArn": "*",
+                "loadBalancerArns": "*",
+                "loadBalancerAttached": "*",
+                "node": "*",
+                "isNetworkTargetGroup": "boolean"
+              },
+              "defaultAction": "*",
+              "protocol": "Protocol",
+              "certificates": {
+                "certificateArn": "*"
+              },
+              "sslPolicy": "SslPolicy",
+              "alpnPolicy": "AlpnPolicy",
+              "tcpIdleTimeout": "*"
+            }
+          ]
+        }
+      },
+      "aws-glue.lib": {
+        "PySparkEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PySparkStreamingJob": {
+          "extraPythonFiles": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "PythonShellJob": {
+          "pythonVersion": "PythonVersion",
+          "maxCapacity": "MaxCapacity",
+          "librarySet": "LibrarySet",
+          "extraPythonFiles": "*",
+          "jobRunQueuingEnabled": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkEtlJob": {
+          "className": "*",
+          "notifyDelayAfter": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkFlexEtlJob": {
+          "notifyDelayAfter": "*",
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "ScalaSparkStreamingJob": {
+          "className": "*",
+          "extraFiles": "*",
+          "extraJars": "*",
+          "extraJarsFirst": "boolean",
+          "jobRunQueuingEnabled": "boolean",
+          "workerConfiguration": {
+            "workerType": "WorkerType",
+            "numberOfWorkers": "*"
+          },
+          "sparkUI": {
+            "bucket": {
+              "bucketArn": "*",
+              "bucketName": "*",
+              "bucketWebsiteUrl": "*",
+              "bucketWebsiteDomainName": "*",
+              "bucketDomainName": "*",
+              "bucketDualStackDomainName": "*",
+              "bucketRegionalDomainName": "*",
+              "isWebsite": "boolean",
+              "encryptionKey": {
+                "keyArn": "*",
+                "keyId": "*",
+                "stack": "*",
+                "node": "*",
+                "env": {
+                  "account": "*",
+                  "region": "*"
+                }
+              },
+              "policy": "*",
+              "replicationRoleArn": "*"
+            },
+            "prefix": "*"
+          },
+          "enableMetrics": "boolean",
+          "enableObservabilityMetrics": "boolean",
+          "script": "*",
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "jobName": "*",
+          "description": "*",
+          "maxConcurrentRuns": "*",
+          "defaultArguments": "*",
+          "connections": {
+            "connectionName": "*",
+            "connectionArn": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "maxRetries": "*",
+          "timeout": "*",
+          "securityConfiguration": {
+            "securityConfigurationName": "*",
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "tags": "*",
+          "glueVersion": "GlueVersion",
+          "continuousLogging": {
+            "enabled": "boolean",
+            "logGroup": {
+              "logGroupArn": "*",
+              "logGroupName": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              },
+              "stack": "*",
+              "node": "*"
+            },
+            "logStreamPrefix": "*",
+            "quiet": "boolean",
+            "conversionPattern": "*"
+          }
+        },
+        "Workflow": {}
+      },
+      "aws-iam.lib": {
+        "ImmutableRole": {
+          "roleArn": "*",
+          "roleName": "*",
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "assumeRoleAction": "*",
+          "policyFragment": "*",
+          "principalAccount": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "grantPrincipal": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "stack": "*",
+          "applyRemovalPolicy": "*",
+          "node": "*",
+          "with": "*",
+          "env": {
+            "account": "*",
+            "region": "*"
+          }
+        },
+        "ImportedRole": {
+          "roleArn": "*",
+          "roleName": "*",
+          "account": "*",
+          "mutable": "boolean",
+          "addGrantsToResources": "boolean",
+          "defaultPolicyName": "*",
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "dedupeString": []
+        },
+        "PrecreatedRole": {
+          "role": {
+            "roleArn": "*",
+            "roleName": "*",
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*",
+            "grantPrincipal": {
+              "assumeRoleAction": "*",
+              "principalAccount": "*"
+            },
+            "stack": "*",
+            "node": "*",
+            "env": {
+              "account": "*",
+              "region": "*"
+            }
+          },
+          "assumeRolePolicy": "*",
+          "missing": "boolean",
+          "rolePath": "*",
+          "attachInlinePolicy": [
+            "*"
+          ],
+          "addManagedPolicy": [
+            {
+              "managedPolicyArn": "*"
+            }
+          ],
+          "addToPolicy": [
+            "*"
+          ],
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "grant": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            },
+            "*"
+          ],
+          "grantPassRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ],
+          "grantAssumeRole": [
+            {
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*"
+            }
+          ]
+        }
+      },
+      "pipelines.lib": {
+        "AssetSingletonRole": {
+          "assumedBy": {
+            "assumeRoleAction": "*",
+            "policyFragment": "*",
+            "principalAccount": "*"
+          },
+          "externalId": "*",
+          "externalIds": "*",
+          "managedPolicies": {
+            "managedPolicyArn": "*"
+          },
+          "inlinePolicies": "*",
+          "path": "*",
+          "permissionsBoundary": {
+            "managedPolicyArn": "*"
+          },
+          "roleName": "*",
+          "maxSessionDuration": "*",
+          "description": "*",
+          "addToPrincipalPolicy": [
+            "*"
+          ],
+          "addAssumeRole": [
+            "*"
+          ]
+        }
+      },
+      "lib.gateway": {
+        "GatewayTarget": {
+          "gateway": {
+            "gatewayArn": "*",
+            "gatewayId": "*",
+            "gatewayName": "*",
+            "role": {
+              "roleArn": "*",
+              "roleName": "*",
+              "assumeRoleAction": "*",
+              "policyFragment": "*",
+              "principalAccount": "*",
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "principalAccount": "*"
+              },
+              "stack": "*",
+              "node": "*",
+              "env": {
+                "account": "*",
+                "region": "*"
+              }
+            },
+            "description": "*",
+            "protocolConfiguration": {
+              "protocolType": "*"
+            },
+            "authorizerConfiguration": {
+              "authorizerType": "GatewayAuthorizerType"
+            },
+            "exceptionLevel": "*",
+            "kmsKey": {
+              "keyArn": "*",
+              "keyId": "*"
+            },
+            "gatewayUrl": "*",
+            "status": "*",
+            "statusReason": "*",
+            "createdAt": "*",
+            "updatedAt": "*"
+          },
+          "targetConfiguration": {
+            "targetType": "McpTargetType"
+          },
+          "credentialProviderConfigurations": {
+            "credentialProviderType": "CredentialProviderType"
+          },
+          "gatewayTargetName": "*",
+          "description": "*",
+          "grantSync": [
+            {
+              "grantPrincipal": {
+                "assumeRoleAction": "*",
+                "policyFragment": "*",
+                "principalAccount": "*"
+              }
+            }
+          ]
+        }
+      },
+      "lib.services": {
+        "ResourcePolicy": {}
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts
+var AWS_CDK_ENUMS;
+var init_enums = __esm({
+  "../../aws-cdk-lib/core/lib/analytics-data-source/enums.ts"() {
+    "use strict";
+    AWS_CDK_ENUMS = {
+      "AcceleratorManufacturer": [
+        "amazon-web-services",
+        "amd",
+        "nvidia",
+        "xilinx",
+        "habana"
+      ],
+      "AcceleratorName": [
+        "a100",
+        "k80",
+        "m60",
+        "radeon-pro-v520",
+        "t4",
+        "v100",
+        "vu9p",
+        "a10g",
+        "h100",
+        "inferentia",
+        "k520",
+        "t4g",
+        "l40s",
+        "l4",
+        "gaudi-hl-205",
+        "inferentia2",
+        "trainium",
+        "trainium2",
+        "u30"
+      ],
+      "AcceleratorType": [
+        "gpu",
+        "fpga",
+        "inference",
+        "media"
+      ],
+      "AccessEntryType": [
+        "STANDARD",
+        "FARGATE_LINUX",
+        "EC2_LINUX",
+        "EC2_WINDOWS",
+        "EC2",
+        "HYBRID_LINUX",
+        "HYPERPOD_LINUX"
+      ],
+      "AccessKeyStatus": [
+        "Active",
+        "Inactive",
+        "Expired"
+      ],
+      "AccessLevel": [
+        "READ",
+        "READ_VERSIONED",
+        "LIST",
+        "WRITE",
+        "DELETE"
+      ],
+      "AccessScopeType": [
+        "namespace",
+        "cluster"
+      ],
+      "AccountRecovery": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5
+      ],
+      "Action": [
+        "allow",
+        "deny"
+      ],
+      "ActionAfterCompletion": [
+        "NONE",
+        "DELETE"
+      ],
+      "ActionCategory": [
+        "Source",
+        "Build",
+        "Test",
+        "Approval",
+        "Deploy",
+        "Invoke",
+        "Compute"
+      ],
+      "ActionOnFailure": [
+        "TERMINATE_CLUSTER",
+        "CANCEL_AND_WAIT",
+        "CONTINUE"
+      ],
+      "ActionPoint": [
+        "PRE_CREATE_HOSTED_CONFIGURATION_VERSION",
+        "PRE_START_DEPLOYMENT",
+        "ON_DEPLOYMENT_START",
+        "ON_DEPLOYMENT_STEP",
+        "ON_DEPLOYMENT_BAKING",
+        "ON_DEPLOYMENT_COMPLETE",
+        "ON_DEPLOYMENT_ROLLED_BACK",
+        "AT_DEPLOYMENT_TICK"
+      ],
+      "ActionScope": [
+        "all",
+        "specific"
+      ],
+      "AdMarkerDash": [
+        "BINARY",
+        "XML"
+      ],
+      "AdMarkerHls": [
+        "DATERANGE",
+        "SCTE35_ENHANCED"
+      ],
+      "AdditionalHealthCheckType": [
+        "ELB",
+        "EBS",
+        "VPC_LATTICE"
+      ],
+      "AddressFamily": [
+        "IPv4",
+        "IPv6"
+      ],
+      "AdjustmentType": [
+        "ChangeInCapacity",
+        "PercentChangeInCapacity",
+        "ExactCapacity"
+      ],
+      "AdotLambdaExecWrapper": [
+        "/opt/otel-handler",
+        "/opt/otel-proxy-handler",
+        "/opt/otel-stream-handler",
+        "/opt/otel-instrument",
+        "/opt/otel-sqs-handler"
+      ],
+      "AdotLambdaLayerType": [
+        "JAVA_SDK",
+        "JAVA_AUTO_INSTRUMENTATION",
+        "JAVASCRIPT_SDK",
+        "PYTHON_SDK",
+        "GENERIC"
+      ],
+      "AdvancedSecurityMode": [
+        "ENFORCED",
+        "AUDIT",
+        "OFF"
+      ],
+      "AgentCollaboratorType": [
+        "SUPERVISOR",
+        "DISABLED",
+        "SUPERVISOR_ROUTER"
+      ],
+      "AgentCoreRuntime": [
+        "PYTHON_3_10",
+        "PYTHON_3_11",
+        "PYTHON_3_12",
+        "PYTHON_3_13",
+        "PYTHON_3_14",
+        "NODE_22"
+      ],
+      "AgentStepType": [
+        "PRE_PROCESSING",
+        "ORCHESTRATION",
+        "POST_PROCESSING",
+        "ROUTING_CLASSIFIER",
+        "MEMORY_SUMMARIZATION",
+        "KNOWLEDGE_BASE_RESPONSE_GENERATION"
+      ],
+      "AlarmBehavior": [
+        "ROLLBACK_ON_ALARM",
+        "FAIL_ON_ALARM"
+      ],
+      "AlarmState": [
+        "ALARM",
+        "OK",
+        "INSUFFICIENT_DATA"
+      ],
+      "AlarmStatusWidgetSortBy": [
+        "default",
+        "stateUpdatedTimestamp",
+        "timestamp"
+      ],
+      "AlbScheme": [
+        "internal",
+        "internet-facing"
+      ],
+      "AllocationStrategy": [
+        "BEST_FIT",
+        "BEST_FIT_PROGRESSIVE",
+        "SPOT_CAPACITY_OPTIMIZED",
+        "SPOT_PRICE_CAPACITY_OPTIMIZED"
+      ],
+      "AllowMapsAction": [
+        "geo-maps:GetStaticMap",
+        "geo-maps:GetTile",
+        "geo-maps:*"
+      ],
+      "AllowPlacesAction": [
+        "geo-places:Autocomplete",
+        "geo-places:Geocode",
+        "geo-places:GetPlace",
+        "geo-places:ReverseGeocode",
+        "geo-places:SearchNearby",
+        "geo-places:SearchText",
+        "geo-places:Suggest",
+        "geo-places:*"
+      ],
+      "AllowRoutesAction": [
+        "geo-routes:CalculateIsolines",
+        "geo-routes:CalculateRoutes",
+        "geo-routes:CalculateRouteMatrix",
+        "geo-routes:OptimizeWaypoints",
+        "geo-routes:SnapToRoads",
+        "geo-routes:*"
+      ],
+      "AlpnPolicy": [
+        "HTTP1Only",
+        "HTTP2Only",
+        "HTTP2Optional",
+        "HTTP2Preferred",
+        "None"
+      ],
+      "AmazonLinuxCpuType": [
+        "arm64",
+        "x86_64"
+      ],
+      "AmazonLinuxEdition": [
+        "standard",
+        "minimal"
+      ],
+      "AmazonLinuxGeneration": [
+        "amzn",
+        "amzn2",
+        "al2022",
+        "al2023"
+      ],
+      "AmazonLinuxKernel": [
+        "kernel-5.10",
+        "kernel-6.1"
+      ],
+      "AmazonLinuxStorage": [
+        "ebs",
+        "s3",
+        "gp2"
+      ],
+      "AmazonLinuxVirt": [
+        "hvm",
+        "pv"
+      ],
+      "AmiHardwareType": [
+        "Standard",
+        "GPU",
+        "ARM64",
+        "Neuron"
+      ],
+      "ApiGatewayHttpMethod": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD",
+        "OPTIONS"
+      ],
+      "ApiKeyCredentialLocationType": [
+        "HEADER",
+        "QUERY_PARAMETER"
+      ],
+      "ApiKeySourceType": [
+        "HEADER",
+        "AUTHORIZER"
+      ],
+      "AppSyncAuthorizationType": [
+        "API_KEY",
+        "AWS_IAM",
+        "AMAZON_COGNITO_USER_POOLS",
+        "OPENID_CONNECT",
+        "AWS_LAMBDA"
+      ],
+      "AppSyncDataSourceType": [
+        "AWS_LAMBDA",
+        "AMAZON_DYNAMODB",
+        "AMAZON_EVENTBRIDGE",
+        "AMAZON_OPENSEARCH_SERVICE",
+        "HTTP",
+        "RELATIONAL_DATABASE",
+        "AMAZON_BEDROCK_RUNTIME",
+        "AMAZON_ELASTICSEARCH"
+      ],
+      "AppSyncFieldLogLevel": [
+        "NONE",
+        "ERROR",
+        "INFO",
+        "DEBUG",
+        "ALL"
+      ],
+      "ApplicationLoadBalancedServiceRecordType": [
+        0,
+        1,
+        2
+      ],
+      "ApplicationLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN",
+        "TRACE",
+        "ERROR",
+        "FATAL"
+      ],
+      "ApplicationProtocol": [
+        "HTTP",
+        "HTTPS"
+      ],
+      "ApplicationProtocolVersion": [
+        "GRPC",
+        "HTTP1",
+        "HTTP2"
+      ],
+      "ApproximateCreationDateTimePrecision": [
+        "MILLISECOND",
+        "MICROSECOND"
+      ],
+      "ArnFormat": [
+        "arn:aws:service:region:account:resource",
+        "arn:aws:service:region:account:resource:resourceName",
+        "arn:aws:service:region:account:resource/resourceName",
+        "arn:aws:service:region:account:/resource/resourceName"
+      ],
+      "ArtifactsEncryptionMode": [
+        "SSE_S3",
+        "SSE_KMS"
+      ],
+      "AssembleWith": [
+        "None",
+        "Line"
+      ],
+      "AssertionType": [
+        "equals",
+        "objectLike",
+        "arrayWith"
+      ],
+      "AssetHashType": [
+        "source",
+        "bundle",
+        "output",
+        "custom"
+      ],
+      "AssetType": [
+        "file",
+        "docker-image"
+      ],
+      "AttachmentTargetType": [
+        "AWS::RDS::DBInstance",
+        "deprecated_AWS::RDS::DBInstance",
+        "AWS::RDS::DBCluster",
+        "deprecated_AWS::RDS::DBCluster",
+        "AWS::RDS::DBProxy",
+        "AWS::Redshift::Cluster",
+        "AWS::DocDB::DBInstance",
+        "AWS::DocDB::DBCluster"
+      ],
+      "AttributeType": [
+        "B",
+        "N",
+        "S"
+      ],
+      "AudioCodec": [
+        "AACL",
+        "AACH",
+        "AC-3",
+        "EC-3"
+      ],
+      "AudioCodecType": [
+        "AAC",
+        "AC3",
+        "EAC3",
+        "EAC3_ATMOS",
+        "MP2",
+        "WAV",
+        "PASSTHROUGH"
+      ],
+      "AuditCheck": [
+        "AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK",
+        "CA_CERTIFICATE_EXPIRING_CHECK",
+        "CA_CERTIFICATE_KEY_QUALITY_CHECK",
+        "CONFLICTING_CLIENT_IDS_CHECK",
+        "DEVICE_CERTIFICATE_EXPIRING_CHECK",
+        "DEVICE_CERTIFICATE_KEY_QUALITY_CHECK",
+        "DEVICE_CERTIFICATE_SHARED_CHECK",
+        "IOT_POLICY_OVERLY_PERMISSIVE_CHECK",
+        "IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK",
+        "IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK",
+        "LOGGING_DISABLED_CHECK",
+        "REVOKED_CA_CERTIFICATE_STILL_ACTIVE_CHECK",
+        "REVOKED_DEVICE_CERTIFICATE_STILL_ACTIVE_CHECK",
+        "UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK"
+      ],
+      "AuroraCapacityUnit": [
+        1,
+        2,
+        4,
+        8,
+        16,
+        32,
+        64,
+        128,
+        192,
+        256,
+        384
+      ],
+      "AuthType": [
+        "NO_AUTH",
+        "IAM_ROLE",
+        "RESOURCE_POLICY"
+      ],
+      "AuthenticationMethod": [
+        "SASL_SCRAM_512_AUTH",
+        "SASL_SCRAM_256_AUTH",
+        "BASIC_AUTH",
+        "CLIENT_CERTIFICATE_TLS_AUTH"
+      ],
+      "AuthenticationMode": [
+        "CONFIG_MAP",
+        "API_AND_CONFIG_MAP",
+        "API"
+      ],
+      "AuthorizationType": [
+        "API_KEY",
+        "BASIC",
+        "OAUTH_CLIENT_CREDENTIALS"
+      ],
+      "AuthorizerPayloadVersion": [
+        "1.0",
+        "2.0"
+      ],
+      "AutoRollbackEvent": [
+        "DEPLOYMENT_FAILURE",
+        "DEPLOYMENT_STOP_ON_ALARM",
+        "DEPLOYMENT_STOP_ON_REQUEST"
+      ],
+      "AutoValidationThreshold": [
+        "MEDIUM",
+        "HIGH",
+        "MANAGED"
+      ],
+      "AvailabilityZoneRebalancing": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "AwsLogDriverMode": [
+        "blocking",
+        "non-blocking"
+      ],
+      "AwsServiceName": [
+        "ec2"
+      ],
+      "BackoffFunction": [
+        "ARITHMETIC",
+        "EXPONENTIAL",
+        "GEOMETRIC",
+        "LINEAR"
+      ],
+      "BackupMode": [
+        0,
+        1
+      ],
+      "BackupVaultEvents": [
+        "BACKUP_JOB_STARTED",
+        "BACKUP_JOB_COMPLETED",
+        "BACKUP_JOB_SUCCESSFUL",
+        "BACKUP_JOB_FAILED",
+        "BACKUP_JOB_EXPIRED",
+        "RESTORE_JOB_STARTED",
+        "RESTORE_JOB_COMPLETED",
+        "RESTORE_JOB_SUCCESSFUL",
+        "RESTORE_JOB_FAILED",
+        "COPY_JOB_STARTED",
+        "COPY_JOB_SUCCESSFUL",
+        "COPY_JOB_FAILED",
+        "RECOVERY_POINT_MODIFIED",
+        "BACKUP_PLAN_CREATED",
+        "BACKUP_PLAN_MODIFIED",
+        "S3_BACKUP_OBJECT_FAILED",
+        "S3_RESTORE_OBJECT_FAILED"
+      ],
+      "BalancingStrategy": [
+        "SPOT_ONLY",
+        "SPOT_PREFERRED",
+        "ON_DEMAND_ONLY"
+      ],
+      "BareMetal": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "BatchStrategy": [
+        "MultiRecord",
+        "SingleRecord"
+      ],
+      "BillingMode": [
+        "PAY_PER_REQUEST",
+        "PROVISIONED"
+      ],
+      "BinPackResource": [
+        "CPU",
+        "MEMORY"
+      ],
+      "BitrateFilterKey": [
+        "audio_bitrate",
+        "video_bitrate"
+      ],
+      "BottlerocketEcsVariant": [
+        "aws-ecs-1",
+        "aws-ecs-1-nvidia",
+        "aws-ecs-2",
+        "aws-ecs-2-nvidia"
+      ],
+      "BrokerType": [
+        "STANDARD",
+        "EXPRESS"
+      ],
+      "BrowserSigning": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "BrowserType": [
+        "CHROME",
+        "FIREFOX"
+      ],
+      "BucketAccessControl": [
+        "Private",
+        "PublicRead",
+        "PublicReadWrite",
+        "AuthenticatedRead",
+        "LogDeliveryWrite",
+        "BucketOwnerRead",
+        "BucketOwnerFullControl",
+        "AwsExecRead"
+      ],
+      "BucketEncryption": [
+        "UNENCRYPTED",
+        "KMS_MANAGED",
+        "S3_MANAGED",
+        "KMS",
+        "DSSE_MANAGED",
+        "DSSE"
+      ],
+      "BucketNamespace": [
+        "global",
+        "account-regional"
+      ],
+      "BucketNotificationDestinationType": [
+        0,
+        1,
+        2
+      ],
+      "BuildComputeType": [
+        "STANDARD_8GB",
+        "LARGE_16GB",
+        "XLARGE_72GB"
+      ],
+      "BuildEnvironmentVariableType": [
+        "PLAINTEXT",
+        "PARAMETER_STORE",
+        "SECRETS_MANAGER"
+      ],
+      "BundlingFileAccess": [
+        "VOLUME_COPY",
+        "BIND_MOUNT"
+      ],
+      "BundlingOutput": [
+        "archived",
+        "not-archived",
+        "auto-discover",
+        "single-file"
+      ],
+      "BurstablePerformance": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "CaaTag": [
+        "issue",
+        "issuewild",
+        "iodef"
+      ],
+      "CacheConfigType": [
+        "AMPLIFY_MANAGED",
+        "AMPLIFY_MANAGED_NO_COOKIES"
+      ],
+      "Capability": [
+        "ALL",
+        "AUDIT_CONTROL",
+        "AUDIT_WRITE",
+        "BLOCK_SUSPEND",
+        "CHOWN",
+        "DAC_OVERRIDE",
+        "DAC_READ_SEARCH",
+        "FOWNER",
+        "FSETID",
+        "IPC_LOCK",
+        "IPC_OWNER",
+        "KILL",
+        "LEASE",
+        "LINUX_IMMUTABLE",
+        "MAC_ADMIN",
+        "MAC_OVERRIDE",
+        "MKNOD",
+        "NET_ADMIN",
+        "NET_BIND_SERVICE",
+        "NET_BROADCAST",
+        "NET_RAW",
+        "SETFCAP",
+        "SETGID",
+        "SETPCAP",
+        "SETUID",
+        "SYS_ADMIN",
+        "SYS_BOOT",
+        "SYS_CHROOT",
+        "SYS_MODULE",
+        "SYS_NICE",
+        "SYS_PACCT",
+        "SYS_PTRACE",
+        "SYS_RAWIO",
+        "SYS_RESOURCE",
+        "SYS_TIME",
+        "SYS_TTY_CONFIG",
+        "SYSLOG",
+        "WAKE_ALARM"
+      ],
+      "CapacityDistributionStrategy": [
+        "balanced-only",
+        "balanced-best-effort"
+      ],
+      "CapacityMode": [
+        "FIXED",
+        "AUTOSCALED"
+      ],
+      "CapacityOptionType": [
+        "ON_DEMAND",
+        "SPOT"
+      ],
+      "CapacityType": [
+        "SPOT",
+        "ON_DEMAND",
+        "CAPACITY_BLOCK"
+      ],
+      "CatalogEncryptionMode": [
+        "DISABLED",
+        "SSE-KMS",
+        "SSE-KMS-WITH-SERVICE-ROLE"
+      ],
+      "CfnCapabilities": [
+        "",
+        "CAPABILITY_IAM",
+        "CAPABILITY_NAMED_IAM",
+        "CAPABILITY_AUTO_EXPAND"
+      ],
+      "CfnDeletionPolicy": [
+        "Delete",
+        "Retain",
+        "RetainExceptOnCreate",
+        "Snapshot"
+      ],
+      "CfnDynamicReferenceService": [
+        "ssm",
+        "ssm-secure",
+        "secretsmanager"
+      ],
+      "CfnParsingContext": [
+        0,
+        1
+      ],
+      "CfnTrafficRoutingType": [
+        "AllAtOnce",
+        "TimeBasedCanary",
+        "TimeBasedLinear"
+      ],
+      "CfnUtilsResourceType": [
+        "Custom::AWSCDKCfnJson",
+        "Custom::AWSCDKCfnJsonStringify"
+      ],
+      "ChannelType": [
+        "STANDARD",
+        "BASIC",
+        "ADVANCED_SD",
+        "ADVANCED_HD"
+      ],
+      "Charset": [
+        "ascii",
+        "utf8"
+      ],
+      "ChatMessageRole": [
+        "user",
+        "assistant"
+      ],
+      "Cleanup": [
+        "nothing",
+        "lambda"
+      ],
+      "ClientAction": [
+        "elasticfilesystem:ClientMount",
+        "elasticfilesystem:ClientWrite",
+        "elasticfilesystem:ClientRootAccess"
+      ],
+      "ClientAffinity": [
+        "NONE",
+        "SOURCE_IP"
+      ],
+      "ClientBrokerEncryption": [
+        "TLS",
+        "TLS_PLAINTEXT",
+        "PLAINTEXT"
+      ],
+      "ClientPasswordAuthType": [
+        "MYSQL_NATIVE_PASSWORD",
+        "POSTGRES_SCRAM_SHA_256",
+        "POSTGRES_MD5",
+        "SQL_SERVER_AUTHENTICATION",
+        "MYSQL_CACHING_SHA2_PASSWORD"
+      ],
+      "ClientRoutingPolicy": [
+        "availability_zone_affinity",
+        "partial_availability_zone_affinity",
+        "any_availability_zone"
+      ],
+      "ClientVpnSessionTimeout": [
+        8,
+        10,
+        12,
+        24
+      ],
+      "CloudFormationCapabilities": [
+        "",
+        "CAPABILITY_IAM",
+        "CAPABILITY_NAMED_IAM",
+        "CAPABILITY_AUTO_EXPAND"
+      ],
+      "CloudFrontAllowedCachedMethods": [
+        "GH",
+        "GHO"
+      ],
+      "CloudFrontAllowedMethods": [
+        "GH",
+        "GHO",
+        "ALL"
+      ],
+      "CloudWatchDimensionSource": [
+        "emailHeader",
+        "linkTag",
+        "messageTag"
+      ],
+      "ClusterLoggingTypes": [
+        "api",
+        "audit",
+        "authenticator",
+        "controllerManager",
+        "scheduler"
+      ],
+      "ClusterMonitoringLevel": [
+        "DEFAULT",
+        "PER_BROKER",
+        "PER_TOPIC_PER_BROKER",
+        "PER_TOPIC_PER_PARTITION"
+      ],
+      "ClusterScailabilityType": [
+        "standard",
+        "limitless"
+      ],
+      "ClusterScalabilityType": [
+        "standard",
+        "limitless"
+      ],
+      "ClusterType": [
+        "single-node",
+        "multi-node"
+      ],
+      "CmafDrmSystem": [
+        "FAIRPLAY",
+        "PLAYREADY",
+        "WIDEVINE",
+        "IRDETO"
+      ],
+      "CmafEncryptionMethod": [
+        "CENC",
+        "CBCS"
+      ],
+      "CodeBuildActionType": [
+        0,
+        1
+      ],
+      "CodeBuildProjectType": [
+        "SYNTH",
+        "ASSETS",
+        "SELF_MUTATE",
+        "STEP"
+      ],
+      "CodeCommitTrigger": [
+        "None",
+        "Poll",
+        "Events"
+      ],
+      "ColumnCountMismatchHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW"
+      ],
+      "ColumnEncoding": [
+        "AUTO",
+        "RAW",
+        "AZ64",
+        "BYTEDICT",
+        "DELTA",
+        "DELTA32K",
+        "LZO",
+        "MOSTLY8",
+        "MOSTLY16",
+        "MOSTLY32",
+        "RUNLENGTH",
+        "TEXT255",
+        "TEXT32K",
+        "ZSTD"
+      ],
+      "ComparisonOperator": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6,
+        7,
+        8,
+        9,
+        10,
+        11,
+        12,
+        13,
+        14,
+        15,
+        16,
+        17,
+        18,
+        19,
+        20,
+        21,
+        22,
+        23,
+        24,
+        25,
+        26,
+        27,
+        28,
+        29,
+        30,
+        31,
+        32,
+        33,
+        34,
+        35,
+        36,
+        37,
+        38
+      ],
+      "Compatibility": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6,
+        7
+      ],
+      "ComponentAction": [
+        "AppendFile",
+        "Assert",
+        "CopyFile",
+        "CopyFolder",
+        "CreateFile",
+        "CreateFolder",
+        "CreateSymlink",
+        "DeleteFile",
+        "DeleteFolder",
+        "ExecuteBash",
+        "ExecuteBinary",
+        "ExecuteDocument",
+        "ExecutePowerShell",
+        "InstallMSI",
+        "ListFiles",
+        "MoveFile",
+        "MoveFolder",
+        "ReadFile",
+        "Reboot",
+        "SetFileEncoding",
+        "SetFileOwner",
+        "SetFolderOwner",
+        "SetFilePermissions",
+        "SetFolderPermissions",
+        "SetRegistry",
+        "S3Download",
+        "S3Upload",
+        "UninstallMSI",
+        "UpdateOS",
+        "WebDownload"
+      ],
+      "ComponentOnFailure": [
+        "Abort",
+        "Continue",
+        "Ignore"
+      ],
+      "ComponentParameterType": [
+        "string"
+      ],
+      "ComponentPhaseName": [
+        "build",
+        "container-host-test",
+        "test",
+        "validate"
+      ],
+      "ComponentSchemaVersion": [
+        "1.0"
+      ],
+      "ComponentType": [
+        "Function",
+        "SingletonFunction",
+        "CustomResourceProvider",
+        "NoOp"
+      ],
+      "CompoundOperator": [
+        0,
+        1
+      ],
+      "CompressionType": [
+        "None",
+        "Gzip"
+      ],
+      "ComputePlatform": [
+        "AWSLambda",
+        "Default"
+      ],
+      "ComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "BUILD_LAMBDA_1GB",
+        "BUILD_LAMBDA_2GB",
+        "BUILD_LAMBDA_4GB",
+        "BUILD_LAMBDA_8GB",
+        "BUILD_LAMBDA_10GB",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "ConditionLogicalOperator": [
+        "EQUALS"
+      ],
+      "ConfigurationSetTlsPolicy": [
+        "REQUIRE",
+        "OPTIONAL"
+      ],
+      "ConfigurationSourceType": [
+        "S3",
+        "SECRETS_MANAGER",
+        "SSM_PARAMETER",
+        "SSM_DOCUMENT",
+        "CODE_PIPELINE"
+      ],
+      "ConfigurationType": [
+        "AWS.Freeform",
+        "AWS.AppConfig.FeatureFlags"
+      ],
+      "ConnectionProtocol": [
+        "TCP",
+        "UDP"
+      ],
+      "ConnectionType": [
+        "INTERNET",
+        "VPC_LINK"
+      ],
+      "ConsumableResourceType": [
+        "REPLENISHABLE",
+        "NON_REPLENISHABLE"
+      ],
+      "ContainerDependencyCondition": [
+        "START",
+        "COMPLETE",
+        "SUCCESS",
+        "HEALTHY"
+      ],
+      "ContainerFormat": [
+        "TS",
+        "FRAGMENTED_MP4"
+      ],
+      "ContainerInsights": [
+        "enabled",
+        "disabled",
+        "enhanced"
+      ],
+      "ContainerProviderTypes": [
+        "EKS"
+      ],
+      "ContainerType": [
+        "TS",
+        "CMAF",
+        "ISM"
+      ],
+      "ContentFilterStrength": [
+        "NONE",
+        "LOW",
+        "MEDIUM",
+        "HIGH"
+      ],
+      "ContentFilterType": [
+        "SEXUAL",
+        "VIOLENCE",
+        "HATE",
+        "INSULTS",
+        "MISCONDUCT",
+        "PROMPT_ATTACK"
+      ],
+      "ContentHandling": [
+        "CONVERT_TO_BINARY",
+        "CONVERT_TO_TEXT"
+      ],
+      "ContentType": [
+        "text/plain",
+        "text/css",
+        "text/html",
+        "application/javascript",
+        "application/json"
+      ],
+      "ContextualGroundingFilterType": [
+        "GROUNDING",
+        "RELEVANCE"
+      ],
+      "Continent": [
+        "AF",
+        "AN",
+        "AS",
+        "EU",
+        "OC",
+        "NA",
+        "SA"
+      ],
+      "ContributorInsightsMode": [
+        "ACCESSED_AND_THROTTLED_KEYS",
+        "THROTTLED_KEYS"
+      ],
+      "ControlPlaneScalingTier": [
+        "standard",
+        "tier-xl",
+        "tier-2xl",
+        "tier-4xl",
+        "tier-8xl"
+      ],
+      "CoreDnsComputeType": [
+        "ec2",
+        "fargate"
+      ],
+      "CorsHttpMethod": [
+        "*",
+        "DELETE",
+        "GET",
+        "HEAD",
+        "OPTIONS",
+        "PATCH",
+        "POST",
+        "PUT"
+      ],
+      "CountType": [
+        "imageCountMoreThan",
+        "sinceImagePushed"
+      ],
+      "CpuArch": [
+        "arm64",
+        "x86_64"
+      ],
+      "CpuCredits": [
+        "standard",
+        "unlimited"
+      ],
+      "CpuManufacturer": [
+        "intel",
+        "amd",
+        "amazon-web-services",
+        "apple"
+      ],
+      "CrawlerState": [
+        "RUNNING",
+        "CANCELLING",
+        "CANCELLED",
+        "SUCCEEDED",
+        "FAILED",
+        "ERROR"
+      ],
+      "CredentialProviderType": [
+        "API_KEY",
+        "OAUTH",
+        "GATEWAY_IAM_ROLE"
+      ],
+      "CrossRegionInferenceProfileRegion": [
+        "global",
+        "eu",
+        "us",
+        "us-gov",
+        "apac",
+        "jp",
+        "au"
+      ],
+      "CsvDelimiter": [
+        "COMMA",
+        "PIPE",
+        "SEMICOLON",
+        "SPACE",
+        "TAB"
+      ],
+      "CsvHeaderLocation": [
+        "FIRST_ROW",
+        "GIVEN"
+      ],
+      "CustomClaimOperator": [
+        "EQUALS",
+        "CONTAINS",
+        "CONTAINS_ANY"
+      ],
+      "CustomClaimValueType": [
+        "STRING",
+        "STRING_ARRAY"
+      ],
+      "CustomControl": [
+        "RETURN_CONTROL"
+      ],
+      "CustomLambdaDeploymentConfigType": [
+        "Canary",
+        "Linear"
+      ],
+      "CustomLayer": [
+        "POI"
+      ],
+      "CustomResourceProviderRuntime": [
+        "nodejs12.x",
+        "deprecated_nodejs12.x",
+        "nodejs14.x",
+        "nodejs16.x",
+        "nodejs18.x",
+        "nodejs20.x",
+        "nodejs22.x",
+        "nodejs24.x"
+      ],
+      "CustomThreatProtectionMode": [
+        "ENFORCED",
+        "AUDIT"
+      ],
+      "CustomizationType": [
+        "FINE_TUNING",
+        "CONTINUED_PRE_TRAINING",
+        "DISTILLATION"
+      ],
+      "DBClusterStorageType": [
+        "aurora",
+        "aurora-iopt1"
+      ],
+      "DashManifestCompactness": [
+        "STANDARD",
+        "NONE"
+      ],
+      "DashPeriodTriggers": [
+        "AVAILS",
+        "DRM_KEY_ROTATION",
+        "SOURCE_CHANGES",
+        "SOURCE_DISRUPTIONS",
+        "NONE"
+      ],
+      "DashUtcTimingMode": [
+        "HTTP_HEAD",
+        "HTTP_ISO",
+        "HTTP_XSDATE",
+        "UTC_DIRECT"
+      ],
+      "DataConverterType": [
+        0,
+        1
+      ],
+      "DataResourceType": [
+        "AWS::Lambda::Function",
+        "AWS::S3::Object"
+      ],
+      "DataSource": [
+        "Esri",
+        "Grab",
+        "Here"
+      ],
+      "DataSourceLevelMetricsBehavior": [
+        "FULL_REQUEST_DATA_SOURCE_METRICS",
+        "PER_DATA_SOURCE_METRICS"
+      ],
+      "DataSourceMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "DataStorageUnit": [
+        "GB"
+      ],
+      "DatabaseInsightsMode": [
+        "standard",
+        "advanced"
+      ],
+      "DateIntervalUnit": [
+        "YEARS",
+        "MONTHS",
+        "WEEKS",
+        "DAYS",
+        "HOURS",
+        "MINUTES",
+        "SECONDS"
+      ],
+      "DateTimeFormat": [
+        "yyyy-MM-dd'T'HH:mm:ss'Z'",
+        "epoch",
+        "custom"
+      ],
+      "DayOfWeek": [
+        "SUN",
+        "MON",
+        "TUE",
+        "WED",
+        "THU",
+        "FRI",
+        "SAT",
+        "UNSET_VALUE"
+      ],
+      "DeduplicationScope": [
+        "messageGroup",
+        "queue"
+      ],
+      "DefaultAuthScheme": [
+        "IAM_AUTH",
+        "NONE"
+      ],
+      "DefaultCapacityType": [
+        0,
+        1,
+        2
+      ],
+      "DefaultInstanceClass": [
+        "default_x86_64",
+        "default_arm64"
+      ],
+      "DefaultInstanceTenancy": [
+        "default",
+        "dedicated",
+        "host"
+      ],
+      "DefaultResult": [
+        "CONTINUE",
+        "ABANDON"
+      ],
+      "DeleteOption": [
+        "SAFE_DELETE",
+        "FORCE_DELETE",
+        "RETAIN"
+      ],
+      "DeletionProtection": [
+        "none",
+        "prevent-force-deletion",
+        "prevent-all-deletion"
+      ],
+      "DeletionProtectionCheck": [
+        "ACCOUNT_DEFAULT",
+        "APPLY",
+        "BYPASS"
+      ],
+      "DelimiterCharacter": [
+        ",",
+        "	",
+        " ",
+        ";",
+        "|"
+      ],
+      "DependenciesFile": [
+        "requirements.txt",
+        "poetry.lock",
+        "Pipfile.lock",
+        "uv.lock",
+        ""
+      ],
+      "DeploymentControllerType": [
+        "ECS",
+        "CODE_DEPLOY",
+        "EXTERNAL"
+      ],
+      "DeploymentLifecycleStage": [
+        "RECONCILE_SERVICE",
+        "PRE_SCALE_UP",
+        "POST_SCALE_UP",
+        "TEST_TRAFFIC_SHIFT",
+        "POST_TEST_TRAFFIC_SHIFT",
+        "PRODUCTION_TRAFFIC_SHIFT",
+        "POST_PRODUCTION_TRAFFIC_SHIFT"
+      ],
+      "DeploymentStrategy": [
+        "ROLLING",
+        "BLUE_GREEN",
+        "LINEAR",
+        "CANARY"
+      ],
+      "DesiredState": [
+        "RUNNING",
+        "STOPPED"
+      ],
+      "DestinationType": [
+        "Failure",
+        "Success"
+      ],
+      "DesyncMitigationMode": [
+        "monitor",
+        "defensive",
+        "strictest"
+      ],
+      "DetailType": [
+        "BASIC",
+        "FULL"
+      ],
+      "DevicePermission": [
+        "read",
+        "write",
+        "mknod"
+      ],
+      "DiscoveryType": [
+        "API",
+        "DNS_AND_API"
+      ],
+      "Distribution": [
+        "ByLogStream",
+        "Random"
+      ],
+      "DnsPolicy": [
+        "Default",
+        "ClusterFirst",
+        "ClusterFirstWithHostNet"
+      ],
+      "DnsRecordType": [
+        "A",
+        "AAAA",
+        "A, AAAA",
+        "SRV",
+        "CNAME"
+      ],
+      "DnsResponseType": [
+        "LOADBALANCER",
+        "ENDPOINTS"
+      ],
+      "DockerCredentialUsage": [
+        "SYNTH",
+        "SELF_UPDATE",
+        "ASSET_PUBLISHING"
+      ],
+      "DockerServerComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "BUILD_LAMBDA_10GB",
+        "BUILD_LAMBDA_1GB",
+        "BUILD_LAMBDA_2GB",
+        "BUILD_LAMBDA_4GB",
+        "BUILD_LAMBDA_8GB",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "DockerVolumeConsistency": [
+        "consistent",
+        "delegated",
+        "cached"
+      ],
+      "DriveCacheType": [
+        "NONE",
+        "READ"
+      ],
+      "DrmSettingsKey": [
+        "exclude_session_keys"
+      ],
+      "DrmSignalling": [
+        "INDIVIDUAL",
+        "REFERENCED"
+      ],
+      "DynamoConsumedCapacity": [
+        "INDEXES",
+        "TOTAL",
+        "NONE"
+      ],
+      "DynamoDBStartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST"
+      ],
+      "DynamoItemCollectionMetrics": [
+        "SIZE",
+        "NONE"
+      ],
+      "DynamoMethod": [
+        "Get",
+        "Put",
+        "Delete",
+        "Update"
+      ],
+      "DynamoReturnValues": [
+        "NONE",
+        "ALL_OLD",
+        "UPDATED_OLD",
+        "ALL_NEW",
+        "UPDATED_NEW"
+      ],
+      "EasyDkimSigningKeyLength": [
+        "RSA_1024_BIT",
+        "RSA_2048_BIT"
+      ],
+      "EbsDeviceVolumeType": [
+        "standard",
+        "io1",
+        "io2",
+        "gp2",
+        "gp3",
+        "st1",
+        "sc1",
+        "gp2",
+        "gp3",
+        "io1",
+        "io2",
+        "st1",
+        "sc1",
+        "standard"
+      ],
+      "EbsPropagatedTagSource": [
+        "SERVICE",
+        "TASK_DEFINITION"
+      ],
+      "Ec2InstanceAction": [
+        "stop",
+        "terminate",
+        "recover",
+        "reboot"
+      ],
+      "Ec2InstanceType": [
+        "EC2",
+        "SSM_MANAGED_NODE"
+      ],
+      "EcsMachineImageType": [
+        "ECS_AL2",
+        "ECS_AL2023",
+        "ECS_AL2_NVIDIA",
+        "ECS_AL2023_NVIDIA"
+      ],
+      "Effect": [
+        "Allow",
+        "Deny"
+      ],
+      "EksMachineImageType": [
+        "EKS_AL2",
+        "EKS_AL2_NVIDIA",
+        "EKS_AL2023",
+        "EKS_AL2023_NVIDIA"
+      ],
+      "EmailEncoding": [
+        "Base64",
+        "UTF-8"
+      ],
+      "EmailSendingEvent": [
+        "send",
+        "reject",
+        "bounce",
+        "complaint",
+        "delivery",
+        "open",
+        "click",
+        "renderingFailure",
+        "deliveryDelay",
+        "subscription"
+      ],
+      "EmptyDirMediumType": [
+        "",
+        "Memory"
+      ],
+      "EncodingProfile": [
+        "CONTRIBUTION_H264_DEFAULT",
+        "DISTRIBUTION_H264_DEFAULT"
+      ],
+      "EncryptionKeyType": [
+        "SECRETS_MANAGER",
+        "AUTOMATIC"
+      ],
+      "EncryptionOption": [
+        "SSE_S3",
+        "SSE_KMS",
+        "CSE_KMS"
+      ],
+      "EndpointAccessMode": [
+        "STRICT",
+        "BASIC"
+      ],
+      "EndpointErrorConfiguration": [
+        "STALE_MANIFEST",
+        "INCOMPLETE_MANIFEST",
+        "MISSING_DRM_KEY",
+        "SLATE_INPUT"
+      ],
+      "EndpointType": [
+        "EDGE",
+        "REGIONAL"
+      ],
+      "EngineLifecycleSupport": [
+        "open-source-rds-extended-support",
+        "open-source-rds-extended-support-disabled"
+      ],
+      "EntitlementStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "EnvironmentFileType": [
+        "s3"
+      ],
+      "EnvironmentType": [
+        "ARM_CONTAINER",
+        "LINUX_CONTAINER",
+        "LINUX_GPU_CONTAINER",
+        "WINDOWS_SERVER_2019_CONTAINER",
+        "WINDOWS_SERVER_2022_CONTAINER",
+        "MAC_ARM",
+        "LINUX_EC2",
+        "ARM_EC2",
+        "WINDOWS_EC2"
+      ],
+      "EventAction": [
+        "PUSH",
+        "PULL_REQUEST_CREATED",
+        "PULL_REQUEST_UPDATED",
+        "PULL_REQUEST_CLOSED",
+        "PULL_REQUEST_MERGED",
+        "PULL_REQUEST_REOPENED",
+        "RELEASED",
+        "PRERELEASED",
+        "WORKFLOW_JOB_QUEUED"
+      ],
+      "EventEvaluation": [
+        "BATCH",
+        "SERIAL"
+      ],
+      "EventSource": [
+        "aws.config"
+      ],
+      "EventSourceMappingLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN"
+      ],
+      "EventType": [
+        "s3:ObjectCreated:*",
+        "s3:ObjectCreated:Put",
+        "s3:ObjectCreated:Post",
+        "s3:ObjectCreated:Copy",
+        "s3:ObjectCreated:CompleteMultipartUpload",
+        "s3:ObjectRemoved:*",
+        "s3:ObjectRemoved:Delete",
+        "s3:ObjectRemoved:DeleteMarkerCreated",
+        "s3:ObjectRestore:Post",
+        "s3:ObjectRestore:Completed",
+        "s3:ObjectRestore:Delete",
+        "s3:ReducedRedundancyLostObject",
+        "s3:Replication:OperationFailedReplication",
+        "s3:Replication:OperationMissedThreshold",
+        "s3:Replication:OperationReplicatedAfterThreshold",
+        "s3:Replication:OperationNotTracked",
+        "s3:LifecycleExpiration:*",
+        "s3:LifecycleExpiration:Delete",
+        "s3:LifecycleExpiration:DeleteMarkerCreated",
+        "s3:LifecycleTransition",
+        "s3:IntelligentTiering",
+        "s3:ObjectTagging:*",
+        "s3:ObjectTagging:Put",
+        "s3:ObjectTagging:Delete",
+        "s3:ObjectAcl:Put",
+        "s3:ObjectRestore:*",
+        "s3:Replication:*"
+      ],
+      "ExecuteCommandLogging": [
+        "NONE",
+        "DEFAULT",
+        "OVERRIDE"
+      ],
+      "ExecutionClass": [
+        "FLEX",
+        "STANDARD"
+      ],
+      "ExecutionMode": [
+        "QUEUED",
+        "SUPERSEDED",
+        "PARALLEL"
+      ],
+      "Failover": [
+        "PRIMARY",
+        "SECONDARY"
+      ],
+      "FailoverStatusCode": [
+        403,
+        404,
+        500,
+        502,
+        503,
+        504
+      ],
+      "FargatePlatformVersion": [
+        "LATEST",
+        "1.4.0",
+        "1.3.0",
+        "1.2.0",
+        "1.1.0",
+        "1.0.0"
+      ],
+      "FeaturePlan": [
+        "LITE",
+        "ESSENTIALS",
+        "PLUS"
+      ],
+      "FieldLogLevel": [
+        "NONE",
+        "ERROR",
+        "INFO",
+        "DEBUG",
+        "ALL"
+      ],
+      "FifoThroughputLimit": [
+        "perQueue",
+        "perMessageGroupId"
+      ],
+      "FifoThroughputScope": [
+        "Topic",
+        "MessageGroup"
+      ],
+      "FileAssetPackaging": [
+        "zip",
+        "file"
+      ],
+      "FileSystemType": [
+        "ext3",
+        "ext4",
+        "xfs",
+        "ntfs"
+      ],
+      "FileSystemTypeVersion": [
+        "2.10",
+        "2.12",
+        "2.15"
+      ],
+      "FilterOrPolicyType": [
+        0,
+        1
+      ],
+      "FirehoseRecordSeparator": [
+        "\n",
+        "	",
+        "\r\n",
+        ","
+      ],
+      "FirelensConfigFileType": [
+        "s3",
+        "file"
+      ],
+      "FirelensLogRouterType": [
+        "fluentbit",
+        "fluentd"
+      ],
+      "FlagType": [
+        0,
+        1,
+        2,
+        3
+      ],
+      "FleetComputeType": [
+        "BUILD_GENERAL1_SMALL",
+        "BUILD_GENERAL1_MEDIUM",
+        "BUILD_GENERAL1_LARGE",
+        "BUILD_GENERAL1_XLARGE",
+        "BUILD_GENERAL1_2XLARGE",
+        "ATTRIBUTE_BASED_COMPUTE",
+        "CUSTOM_INSTANCE_TYPE"
+      ],
+      "FleetOverflowBehavior": [
+        "QUEUE",
+        "ON_DEMAND"
+      ],
+      "FlowLogDestinationType": [
+        "cloud-watch-logs",
+        "s3",
+        "kinesis-data-firehose"
+      ],
+      "FlowLogFileFormat": [
+        "plain-text",
+        "parquet"
+      ],
+      "FlowLogMaxAggregationInterval": [
+        60,
+        600
+      ],
+      "FlowLogTrafficType": [
+        "ACCEPT",
+        "ALL",
+        "REJECT"
+      ],
+      "FlowOutputProtocol": [
+        "zixi-push",
+        "rtp-fec",
+        "rtp",
+        "zixi-pull",
+        "rist",
+        "srt-listener",
+        "srt-caller",
+        "ndi-speed-hq"
+      ],
+      "FollowMode": [
+        "never",
+        "always",
+        "external",
+        "internal-only"
+      ],
+      "ForwardErrorCorrection": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Frequency": [
+        "DAILY",
+        "WEEKLY",
+        "BIWEEKLY",
+        "MONTHLY"
+      ],
+      "FunctionEventType": [
+        "viewer-request",
+        "viewer-response"
+      ],
+      "FunctionRuntimeFamily": [
+        "APPSYNC_JS"
+      ],
+      "FunctionUrlAuthType": [
+        "AWS_IAM",
+        "NONE"
+      ],
+      "GatewayAuthorizerType": [
+        "CUSTOM_JWT",
+        "AWS_IAM",
+        "NONE"
+      ],
+      "GatewayExceptionLevel": [
+        "DEBUG"
+      ],
+      "GatewayProtocolType": [
+        "MCP"
+      ],
+      "GatewayTargetProtocolType": [
+        "MCP"
+      ],
+      "GelfCompressionType": [
+        "gzip",
+        "zlib",
+        "none"
+      ],
+      "GitHubTrigger": [
+        "None",
+        "Poll",
+        "WebHook"
+      ],
+      "GitPullRequestEvent": [
+        "OPEN",
+        "UPDATED",
+        "CLOSED"
+      ],
+      "GlobalTableSettingsReplicationMode": [
+        "ENABLED"
+      ],
+      "GlueVersion": [
+        "0.9",
+        "1.0",
+        "2.0",
+        "3.0",
+        "4.0",
+        "5.0",
+        "5.1",
+        "6.0"
+      ],
+      "GraphWidgetView": [
+        "timeSeries",
+        "bar",
+        "pie"
+      ],
+      "GrowthType": [
+        "LINEAR",
+        "EXPONENTIAL"
+      ],
+      "GrpcRetryEvent": [
+        "cancelled",
+        "deadline-exceeded",
+        "internal",
+        "resource-exhausted",
+        "unavailable"
+      ],
+      "GuardrailAction": [
+        "BLOCK",
+        "ANONYMIZE",
+        "NONE"
+      ],
+      "HandlerBehavior": [
+        "CODE",
+        "DIRECT"
+      ],
+      "HandlerName": [
+        "user",
+        "table",
+        "user-table-privileges"
+      ],
+      "HeadersFrameOption": [
+        "DENY",
+        "SAMEORIGIN"
+      ],
+      "HeadersReferrerPolicy": [
+        "no-referrer",
+        "no-referrer-when-downgrade",
+        "origin",
+        "origin-when-cross-origin",
+        "same-origin",
+        "strict-origin",
+        "strict-origin-when-cross-origin",
+        "unsafe-url"
+      ],
+      "HealthCheckProtocol": [
+        "TCP",
+        "HTTP",
+        "HTTPS"
+      ],
+      "HealthCheckProtocolType": [
+        "HTTP",
+        "TCP"
+      ],
+      "HealthCheckType": [
+        "HTTP",
+        "HTTPS",
+        "TCP"
+      ],
+      "HostKernel": [
+        "LINUX_KERNEL_4",
+        "LINUX_KERNEL_6",
+        "LINUX_KERNEL_LATEST"
+      ],
+      "HttpAuthorizerType": [
+        "AWS_IAM",
+        "JWT",
+        "REQUEST"
+      ],
+      "HttpBackupMode": [
+        "FailedDataOnly",
+        "AllData"
+      ],
+      "HttpCodeElb": [
+        "HTTPCode_ELB_3XX_Count",
+        "HTTPCode_ELB_4XX_Count",
+        "HTTPCode_ELB_5XX_Count",
+        "HTTPCode_ELB_500_Count",
+        "HTTPCode_ELB_502_Count",
+        "HTTPCode_ELB_503_Count",
+        "HTTPCode_ELB_504_Count"
+      ],
+      "HttpCodeTarget": [
+        "HTTPCode_Target_2XX_Count",
+        "HTTPCode_Target_3XX_Count",
+        "HTTPCode_Target_4XX_Count",
+        "HTTPCode_Target_5XX_Count"
+      ],
+      "HttpCompression": [
+        "GZIP",
+        "NONE"
+      ],
+      "HttpConnectionType": [
+        "VPC_LINK",
+        "INTERNET"
+      ],
+      "HttpIntegrationSubtype": [
+        "EventBridge-PutEvents",
+        "SQS-SendMessage",
+        "SQS-ReceiveMessage",
+        "SQS-DeleteMessage",
+        "SQS-PurgeQueue",
+        "AppConfig-GetConfiguration",
+        "Kinesis-PutRecord",
+        "StepFunctions-StartExecution",
+        "StepFunctions-StartSyncExecution",
+        "StepFunctions-StopExecution"
+      ],
+      "HttpIntegrationType": [
+        "HTTP_PROXY",
+        "AWS_PROXY"
+      ],
+      "HttpLambdaResponseType": [
+        0,
+        1
+      ],
+      "HttpMethod": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD",
+        "OPTIONS"
+      ],
+      "HttpMethods": [
+        "GET",
+        "POST",
+        "PUT",
+        "DELETE",
+        "PATCH",
+        "HEAD"
+      ],
+      "HttpRetryEvent": [
+        "server-error",
+        "gateway-error",
+        "client-error",
+        "stream-error"
+      ],
+      "HttpRouteAuthorizationType": [
+        "AWS_IAM",
+        "JWT",
+        "CUSTOM",
+        "NONE"
+      ],
+      "HttpRouteMethod": [
+        "GET",
+        "HEAD",
+        "POST",
+        "PUT",
+        "DELETE",
+        "CONNECT",
+        "OPTIONS",
+        "TRACE",
+        "PATCH"
+      ],
+      "HttpRouteProtocol": [
+        "http",
+        "https"
+      ],
+      "HttpTokens": [
+        "optional",
+        "required"
+      ],
+      "HttpVersion": [
+        "http1.1",
+        "http2",
+        "http2and3",
+        "http3"
+      ],
+      "HttpsPolicy": [
+        "REQUIRE",
+        "REQUIRE_OPEN_ONLY",
+        "OPTIONAL"
+      ],
+      "IdentityPoolProviderType": [
+        "Facebook",
+        "Google",
+        "Amazon",
+        "Apple",
+        "Twitter",
+        "OpenId",
+        "Saml",
+        "UserPool",
+        "Custom"
+      ],
+      "IdentityType": [
+        "IRSA",
+        "POD_IDENTITY"
+      ],
+      "IgnoreMode": [
+        "glob",
+        "git",
+        "docker"
+      ],
+      "ImageArchitecture": [
+        "arm64",
+        "x86_64"
+      ],
+      "ImageId": [
+        "amazonlinux-2-x86_64",
+        "amazonlinux-2023-x86_64",
+        "ubuntu-18.04-x86_64",
+        "ubuntu-22.04-x86_64"
+      ],
+      "ImagePipelineStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ImagePullPolicy": [
+        "Always",
+        "IfNotPresent",
+        "Never"
+      ],
+      "ImagePullPrincipalType": [
+        "CODEBUILD",
+        "SERVICE_ROLE"
+      ],
+      "ImageRepositoryType": [
+        "ECR_PUBLIC",
+        "ECR"
+      ],
+      "ImageType": [
+        "AMI",
+        "DOCKER"
+      ],
+      "IncludeDetail": [
+        "FULL",
+        "NONE"
+      ],
+      "IncludeExecutionData": [
+        "ALL"
+      ],
+      "InferenceProfileType": [
+        "SYSTEM_DEFINED",
+        "APPLICATION"
+      ],
+      "IngestEndpoint": [
+        1,
+        2
+      ],
+      "InitElementType": [
+        "PACKAGE",
+        "GROUP",
+        "USER",
+        "SOURCE",
+        "FILE",
+        "COMMAND",
+        "SERVICE"
+      ],
+      "InitPlatform": [
+        "WINDOWS",
+        "LINUX"
+      ],
+      "InputCompressionType": [
+        "GZIP",
+        "ZSTD",
+        "NONE"
+      ],
+      "InputMode": [
+        "Pipe",
+        "File",
+        "FastFile"
+      ],
+      "InputType": [
+        0,
+        1
+      ],
+      "InstanceArchitecture": [
+        "arm64",
+        "x86_64"
+      ],
+      "InstanceClass": [
+        "standard3",
+        "m3",
+        "standard4",
+        "m4",
+        "standard5",
+        "m5",
+        "standard5-nvme-drive",
+        "m5d",
+        "standard5-amd",
+        "m5a",
+        "standard5-amd-nvme-drive",
+        "m5ad",
+        "standard5-high-performance",
+        "m5n",
+        "standard5-nvme-drive-high-performance",
+        "m5dn",
+        "standard5-high-compute",
+        "m5zn",
+        "memory3",
+        "r3",
+        "memory4",
+        "r4",
+        "memory5",
+        "r5",
+        "memory6-amd",
+        "r6a",
+        "memory6-intel",
+        "r6i",
+        "memory6-intel-nvme-drive",
+        "r6id",
+        "memory6-intel-high-performance",
+        "r6in",
+        "memory6-intel-nvme-drive-high-performance",
+        "r6idn",
+        "memory5-high-performance",
+        "r5n",
+        "memory5-nvme-drive",
+        "r5d",
+        "memory5-nvme-drive-high-performance",
+        "r5dn",
+        "memory5-amd",
+        "r5a",
+        "memory5-amd-nvme-drive",
+        "r5ad",
+        "high-memory-3tb-1",
+        "u-3tb1",
+        "high-memory-6tb-1",
+        "u-6tb1",
+        "high-memory-9tb-1",
+        "u-9tb1",
+        "high-memory-12tb-1",
+        "u-12tb1",
+        "high-memory-18tb-1",
+        "u-18tb1",
+        "high-memory-24tb-1",
+        "u-24tb1",
+        "high-memory-6tb-7",
+        "u7i-6tb",
+        "high-memory-8tb-7",
+        "u7i-8tb",
+        "high-memory-12tb-7",
+        "u7i-12tb",
+        "high-memory-high-network-16tb-7",
+        "u7in-16tb",
+        "high-memory-high-network-24tb-7",
+        "u7in-24tb",
+        "high-memory-high-network-32tb-7",
+        "u7in-32tb",
+        "high-memory-high-network-hpe-32tb-7",
+        "u7inh-32tb",
+        "memory5-ebs-optimized",
+        "r5b",
+        "memory6-graviton",
+        "r6g",
+        "memory6-graviton2-nvme-drive",
+        "r6gd",
+        "memory7-graviton",
+        "r7g",
+        "memory7-graviton3-nvme-drive",
+        "r7gd",
+        "memory7-intel-base",
+        "r7i",
+        "memory7-intel",
+        "r7iz",
+        "memory8-intel-base",
+        "r8i",
+        "memory8-intel-flex",
+        "r8i-flex",
+        "memory7-amd",
+        "r7a",
+        "memory8-amd",
+        "r8a",
+        "memory8-graviton",
+        "r8g",
+        "memory8-graviton4-nvme-drive",
+        "r8gd",
+        "memory8-graviton4-high-network-bandwidth",
+        "r8gn",
+        "memory8-graviton4-ebs-optimized",
+        "r8gb",
+        "compute3",
+        "c3",
+        "compute4",
+        "c4",
+        "compute5",
+        "c5",
+        "compute5-nvme-drive",
+        "c5d",
+        "compute5-amd",
+        "c5a",
+        "compute5-amd-nvme-drive",
+        "c5ad",
+        "compute5-high-performance",
+        "c5n",
+        "compute6-intel",
+        "c6i",
+        "compute6-intel-nvme-drive",
+        "c6id",
+        "compute6-intel-high-performance",
+        "c6in",
+        "compute6-amd",
+        "c6a",
+        "compute6-graviton2",
+        "c6g",
+        "compute7-graviton3",
+        "c7g",
+        "compute8-graviton4",
+        "c8g",
+        "compute6-graviton2-nvme-drive",
+        "c6gd",
+        "compute7-graviton3-nvme-drive",
+        "c7gd",
+        "compute8-graviton4-nvme-drive",
+        "c8gd",
+        "compute6-graviton2-high-network-bandwidth",
+        "c6gn",
+        "compute7-graviton3-high-network-bandwidth",
+        "c7gn",
+        "compute8-graviton4-high-network-bandwidth",
+        "c8gn",
+        "compute7-intel",
+        "c7i",
+        "compute7-intel-flex",
+        "c7i-flex",
+        "compute8-intel",
+        "c8i",
+        "compute8-intel-flex",
+        "c8i-flex",
+        "compute7-amd",
+        "c7a",
+        "compute8-amd",
+        "c8a",
+        "storage2",
+        "d2",
+        "storage3",
+        "d3",
+        "storage3-enhanced-network",
+        "d3en",
+        "storage-compute-1",
+        "h1",
+        "training-accelerator1",
+        "trn1",
+        "training-accelerator1-enhanced-network",
+        "trn1n",
+        "training-accelerator2",
+        "trn2",
+        "training-accelerator2-ultraserver",
+        "trn2u",
+        "io3",
+        "i3",
+        "io3-dense-nvme-drive",
+        "i3en",
+        "io4_intel",
+        "i4i",
+        "storage4_graviton",
+        "i4g",
+        "storage4-graviton-network-optimized",
+        "im4gn",
+        "storage4-graviton-network-storage-optimized",
+        "is4gen",
+        "storage7-intel-storage-optimized",
+        "i7ie",
+        "io7_intel",
+        "i7i",
+        "storage8-graviton",
+        "i8g",
+        "storage8-graviton-storage-optimized",
+        "i8ge",
+        "burstable2",
+        "t2",
+        "burstable3",
+        "t3",
+        "burstable3-amd",
+        "t3a",
+        "burstable4-graviton",
+        "t4g",
+        "memory-intensive-1",
+        "x1",
+        "memory-intensive-1-extended",
+        "x1e",
+        "memory-intensive-2-graviton2",
+        "x2g",
+        "memory-intensive-2-graviton2-nvme-drive",
+        "x2gd",
+        "memory_intensive_2_xt_intel",
+        "x2iedn",
+        "memory_intensive_2_intel",
+        "x2idn",
+        "memory_intensive_2_xtz_intel",
+        "x2iezn",
+        "memory-intensive-8-graviton",
+        "x8g",
+        "fpga1",
+        "f1",
+        "fpga2",
+        "f2",
+        "graphics3-small",
+        "g3s",
+        "graphics3",
+        "g3",
+        "graphics4-nvme-drive-high-performance",
+        "g4dn",
+        "graphics4-amd-nvme-drive",
+        "g4ad",
+        "graphics5",
+        "g5",
+        "graphics5-graviton2",
+        "g5g",
+        "graphics6",
+        "g6",
+        "graphics6-efficient",
+        "g6e",
+        "graphics7-efficient",
+        "g7e",
+        "graphics-ram-6",
+        "gr6",
+        "parallel2",
+        "p2",
+        "parallel3",
+        "p3",
+        "parallel3-nvme-drive-high-performance",
+        "p3dn",
+        "parallel4-nvme-drive-extended",
+        "p4de",
+        "parallel4",
+        "p4d",
+        "parallel5",
+        "p5",
+        "parallel5-extended",
+        "p5e",
+        "parallel5-extended-network",
+        "p5en",
+        "arm1",
+        "a1",
+        "standard6-graviton",
+        "m6g",
+        "standard6-intel",
+        "m6i",
+        "standard6-intel-nvme-drive",
+        "m6id",
+        "standard6-intel-high-performance",
+        "m6in",
+        "standard6-intel-nvme-drive-high-performance",
+        "m6idn",
+        "standard6-amd",
+        "m6a",
+        "standard6-graviton2-nvme-drive",
+        "m6gd",
+        "standard7-graviton",
+        "m7g",
+        "standard8-graviton",
+        "m8g",
+        "standard7-graviton3-nvme-drive",
+        "m7gd",
+        "standard8-graviton4-nvme-drive",
+        "m8gd",
+        "standard8-intel",
+        "m8i",
+        "standard8-intel-flex",
+        "m8i-flex",
+        "standard7-intel",
+        "m7i",
+        "standard7-intel-flex",
+        "m7i-flex",
+        "standard7-amd",
+        "m7a",
+        "standard8-amd",
+        "m8a",
+        "standard9-graviton",
+        "m9g",
+        "high-compute-memory1",
+        "z1d",
+        "inference1",
+        "inf1",
+        "inference2",
+        "inf2",
+        "macintosh1-intel",
+        "mac1",
+        "macintosh2-m1",
+        "mac2",
+        "macintosh2-m2",
+        "mac2-m2",
+        "macintosh2-m2-pro",
+        "mac2-m2pro",
+        "macintosh2-m1-ultra",
+        "mac2-m1ultra",
+        "video-transcoding1",
+        "vt1",
+        "high-performance-computing6-amd",
+        "hpc6a",
+        "high-performance-computing6-intel-nvme-drive",
+        "hpc6id",
+        "high-performance-computing7-amd",
+        "hpc7a",
+        "high-performance-computing7-graviton",
+        "hpc7g",
+        "deep-learning1",
+        "dl1",
+        "deep-learning2-qualcomm",
+        "dl2q"
+      ],
+      "InstanceGeneration": [
+        "current",
+        "previous"
+      ],
+      "InstanceInitiatedShutdownBehavior": [
+        "stop",
+        "terminate"
+      ],
+      "InstanceMonitoring": [
+        "BASIC",
+        "DETAILED"
+      ],
+      "InstanceRefreshStrategy": [
+        "Rolling",
+        "ReplaceRootVolume"
+      ],
+      "InstanceSize": [
+        "nano",
+        "micro",
+        "small",
+        "medium",
+        "large",
+        "xlarge",
+        "2xlarge",
+        "3xlarge",
+        "4xlarge",
+        "6xlarge",
+        "8xlarge",
+        "9xlarge",
+        "10xlarge",
+        "12xlarge",
+        "16xlarge",
+        "18xlarge",
+        "24xlarge",
+        "32xlarge",
+        "48xlarge",
+        "56xlarge",
+        "96xlarge",
+        "112xlarge",
+        "224xlarge",
+        "480xlarge",
+        "metal",
+        "metal-16xl",
+        "metal-24xl",
+        "metal-32xl",
+        "metal-48xl"
+      ],
+      "InstanceType": [
+        "PROVISIONED",
+        "SERVERLESS_V2"
+      ],
+      "InstanceUpdateBehaviour": [
+        "BULK",
+        "ROLLING"
+      ],
+      "InsufficientDataHealthStatusEnum": [
+        "Healthy",
+        "Unhealthy",
+        "LastKnownStatus"
+      ],
+      "IntegrationPattern": [
+        "REQUEST_RESPONSE",
+        "RUN_JOB",
+        "WAIT_FOR_TASK_TOKEN"
+      ],
+      "IntegrationType": [
+        "AWS",
+        "AWS_PROXY",
+        "HTTP",
+        "HTTP_PROXY",
+        "MOCK"
+      ],
+      "IntendedUse": [
+        "SingleUse",
+        "Storage"
+      ],
+      "InterceptionPoint": [
+        "REQUEST",
+        "RESPONSE"
+      ],
+      "IntrospectionConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "InvalidCharHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW",
+        "REPLACE"
+      ],
+      "InventoryFormat": [
+        "CSV",
+        "Parquet",
+        "ORC"
+      ],
+      "InventoryFrequency": [
+        "Daily",
+        "Weekly"
+      ],
+      "InventoryObjectVersion": [
+        "All",
+        "Current"
+      ],
+      "InvocationHttpResponseCode": [
+        "Invocation4XXErrors",
+        "Invocation5XXErrors"
+      ],
+      "InvocationType": [
+        "RequestResponse",
+        "Event",
+        "DryRun"
+      ],
+      "InvokeMode": [
+        "BUFFERED",
+        "RESPONSE_STREAM"
+      ],
+      "IpAddressType": [
+        "ipv4",
+        "dualstack",
+        "dualstack-without-public-ipv4"
+      ],
+      "IpFamily": [
+        "ipv4",
+        "ipv6"
+      ],
+      "IpPreference": [
+        "IPv4_ONLY",
+        "IPv4_PREFERRED",
+        "IPv6_ONLY",
+        "IPv6_PREFERRED"
+      ],
+      "IpProtocol": [
+        "Ipv4_Only",
+        "Dual_Stack"
+      ],
+      "IpamPoolPublicIpSource": [
+        "byoip",
+        "amazon"
+      ],
+      "IpamScopeType": [
+        "default",
+        "custom"
+      ],
+      "IpcMode": [
+        "none",
+        "host",
+        "task"
+      ],
+      "IsmDrmSystem": [
+        "PLAYREADY"
+      ],
+      "JenkinsActionType": [
+        0,
+        1
+      ],
+      "JitterType": [
+        "FULL",
+        "NONE"
+      ],
+      "JobLanguage": [
+        "scala",
+        "python"
+      ],
+      "JobState": [
+        "SUCCEEDED",
+        "FAILED",
+        "TIMEOUT",
+        "STARTING",
+        "RUNNING",
+        "STOPPING",
+        "STOPPED"
+      ],
+      "JobStateTimeLimitActionsAction": [
+        "CANCEL",
+        "TERMINATE"
+      ],
+      "JobStateTimeLimitActionsReason": [
+        "CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY",
+        "MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE",
+        "MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT"
+      ],
+      "JobStateTimeLimitActionsState": [
+        "RUNNABLE"
+      ],
+      "JobType": [
+        "glueetl",
+        "gluestreaming",
+        "pythonshell"
+      ],
+      "JsonMutatorType": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5
+      ],
+      "JsonSchemaType": [
+        "null",
+        "boolean",
+        "object",
+        "array",
+        "number",
+        "integer",
+        "string"
+      ],
+      "JsonSchemaVersion": [
+        "http://json-schema.org/draft-04/schema#",
+        "http://json-schema.org/draft-07/schema#"
+      ],
+      "KeyPairFormat": [
+        "ppk",
+        "pem"
+      ],
+      "KeyPairType": [
+        "rsa",
+        "ed25519"
+      ],
+      "KeySigningKeyStatus": [
+        "ACTIVE",
+        "INACTIVE"
+      ],
+      "KeySpec": [
+        "SYMMETRIC_DEFAULT",
+        "RSA_2048",
+        "RSA_3072",
+        "RSA_4096",
+        "ECC_NIST_P256",
+        "ECC_NIST_P384",
+        "ECC_NIST_P521",
+        "ECC_SECG_P256K1",
+        "HMAC_224",
+        "HMAC_256",
+        "HMAC_384",
+        "HMAC_512",
+        "SM2",
+        "ML_DSA_44",
+        "ML_DSA_65",
+        "ML_DSA_87",
+        "ECC_NIST_EDWARDS25519"
+      ],
+      "KeyUsage": [
+        "ENCRYPT_DECRYPT",
+        "SIGN_VERIFY",
+        "GENERATE_VERIFY_MAC",
+        "KEY_AGREEMENT"
+      ],
+      "KeyValueDelimiter": [
+        "=",
+        ":"
+      ],
+      "KeyValuePairDelimiter": [
+        "&",
+        ";",
+        " ",
+        "\n"
+      ],
+      "KinesisStartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST",
+        "AT_TIMESTAMP"
+      ],
+      "LambdaEdgeEventType": [
+        "origin-request",
+        "origin-response",
+        "viewer-request",
+        "viewer-response"
+      ],
+      "LambdaFunctionInvocationType": [
+        "FIRE_AND_FORGET",
+        "REQUEST_RESPONSE"
+      ],
+      "LambdaInvocationType": [
+        "RequestResponse",
+        "Event",
+        "DryRun"
+      ],
+      "LambdaInvokeType": [
+        "EVENT",
+        "REQUEST_RESPONSE"
+      ],
+      "LambdaVersion": [
+        "V1_0",
+        "V2_0",
+        "V3_0"
+      ],
+      "LatencyMode": [
+        "LOW",
+        "NORMAL"
+      ],
+      "LaunchTemplateHttpTokens": [
+        "optional",
+        "required"
+      ],
+      "LaunchType": [
+        "EC2",
+        "FARGATE",
+        "EXTERNAL"
+      ],
+      "LegendPosition": [
+        "bottom",
+        "right",
+        "hidden"
+      ],
+      "Level": [
+        "INFO",
+        "ERROR",
+        "TRACE",
+        "OFF"
+      ],
+      "LibrarySet": [
+        "analytics",
+        "none"
+      ],
+      "LicenseModel": [
+        "license-included",
+        "bring-your-own-license",
+        "general-public-license"
+      ],
+      "LifecycleLabel": [
+        "OnDemand",
+        "Ec2Spot"
+      ],
+      "LifecyclePolicy": [
+        "AFTER_1_DAY",
+        "AFTER_7_DAYS",
+        "AFTER_14_DAYS",
+        "AFTER_30_DAYS",
+        "AFTER_60_DAYS",
+        "AFTER_90_DAYS",
+        "AFTER_180_DAYS",
+        "AFTER_270_DAYS",
+        "AFTER_365_DAYS"
+      ],
+      "LifecyclePolicyActionType": [
+        "DELETE",
+        "DEPRECATE",
+        "DISABLE"
+      ],
+      "LifecyclePolicyResourceType": [
+        "AMI_IMAGE",
+        "CONTAINER_IMAGE"
+      ],
+      "LifecyclePolicyStatus": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "LifecycleTransition": [
+        "autoscaling:EC2_INSTANCE_LAUNCHING",
+        "autoscaling:EC2_INSTANCE_TERMINATING"
+      ],
+      "LinkedChannelType": [
+        "PRIMARY_CHANNEL",
+        "FOLLOWING_CHANNEL"
+      ],
+      "LoadBalancerGeneration": [
+        0,
+        1
+      ],
+      "LoadBalancerIpAddressType": [
+        "ipv4",
+        "dualstack",
+        "dualstack-without-public-ipv4"
+      ],
+      "LoadBalancingProtocol": [
+        "tcp",
+        "ssl",
+        "http",
+        "https"
+      ],
+      "LocalCacheMode": [
+        "LOCAL_SOURCE_CACHE",
+        "LOCAL_DOCKER_LAYER_CACHE",
+        "LOCAL_CUSTOM_CACHE"
+      ],
+      "LocalStorage": [
+        "included",
+        "required",
+        "excluded"
+      ],
+      "LocalStorageType": [
+        "hdd",
+        "ssd"
+      ],
+      "LockFile": [
+        "package-lock.json",
+        "yarn.lock",
+        "bun.lockb",
+        "bun.lock",
+        "pnpm-lock.yaml"
+      ],
+      "LogDestinationType": [
+        "s3",
+        "cloudwatch"
+      ],
+      "LogExport": [
+        "connectionlog",
+        "useractivitylog",
+        "userlog"
+      ],
+      "LogFormat": [
+        "Text",
+        "JSON"
+      ],
+      "LogGroupClass": [
+        "STANDARD",
+        "INFREQUENT_ACCESS",
+        "DELIVERY"
+      ],
+      "LogLevel": [
+        "OFF",
+        "ALL",
+        "ERROR",
+        "FATAL"
+      ],
+      "LogQueryLanguage": [
+        "Logs",
+        "SQL",
+        "PPL"
+      ],
+      "LogQueryVisualizationType": [
+        "table",
+        "line",
+        "stackedarea",
+        "bar",
+        "pie"
+      ],
+      "LogType": [
+        "None",
+        "Tail"
+      ],
+      "LoggingFormat": [
+        "Text",
+        "JSON"
+      ],
+      "LoggingLevel": [
+        "ERROR",
+        "INFO",
+        "NONE"
+      ],
+      "LoggingProtocol": [
+        "http/s",
+        "sqs",
+        "lambda",
+        "firehose",
+        "application"
+      ],
+      "LustreAutoImportPolicy": [
+        "NONE",
+        "NEW",
+        "NEW_CHANGED",
+        "NEW_CHANGED_DELETED"
+      ],
+      "LustreDataCompressionType": [
+        "NONE",
+        "LZ4"
+      ],
+      "LustreDeploymentType": [
+        "SCRATCH_1",
+        "SCRATCH_2",
+        "PERSISTENT_1",
+        "PERSISTENT_2"
+      ],
+      "MCPProtocolVersion": [
+        "2025-06-18",
+        "2025-03-26"
+      ],
+      "MachineImageType": [
+        0,
+        1
+      ],
+      "MachineType": [
+        "GENERAL",
+        "NVME"
+      ],
+      "MailFromBehaviorOnMxFailure": [
+        "USE_DEFAULT_VALUE",
+        "REJECT_MESSAGE"
+      ],
+      "MaintenanceDay": [
+        "MONDAY",
+        "TUESDAY",
+        "WEDNESDAY",
+        "THURSDAY",
+        "FRIDAY",
+        "SATURDAY",
+        "SUNDAY"
+      ],
+      "MaintenanceTrackName": [
+        "current",
+        "trailing"
+      ],
+      "ManagedLoginVersion": [
+        1,
+        2
+      ],
+      "ManagedWordFilterType": [
+        "PROFANITY"
+      ],
+      "ManagementEventSources": [
+        "kms.amazonaws.com",
+        "rdsdata.amazonaws.com"
+      ],
+      "MaxCapacity": [
+        0.0625,
+        1
+      ],
+      "MaximumExecutionFrequency": [
+        "One_Hour",
+        "Three_Hours",
+        "Six_Hours",
+        "Twelve_Hours",
+        "TwentyFour_Hours"
+      ],
+      "MaximumResolution": [
+        "FULL_HD",
+        "HD",
+        "SD"
+      ],
+      "McpGatewaySearchType": [
+        "SEMANTIC"
+      ],
+      "McpTargetType": [
+        "OPENAPI_SCHEMA",
+        "SMITHY_MODEL",
+        "LAMBDA",
+        "MCP_SERVER",
+        "API_GATEWAY"
+      ],
+      "MediaLivePipeline": [
+        "PIPELINE_0",
+        "PIPELINE_1"
+      ],
+      "MediaStreamType": [
+        "video",
+        "audio",
+        "ancillary-data"
+      ],
+      "MemoryStrategyType": [
+        "SUMMARIZATION",
+        "SEMANTIC",
+        "USER_PREFERENCE",
+        "EPISODIC",
+        "CUSTOM"
+      ],
+      "MemoryType": [
+        "SESSION_SUMMARY"
+      ],
+      "MergeType": [
+        "MANUAL_MERGE",
+        "AUTO_MERGE"
+      ],
+      "MeshFilterType": [
+        "ALLOW_ALL",
+        "DROP_ALL"
+      ],
+      "MessageAttributeDataType": [
+        "String",
+        "String.Array",
+        "Number",
+        "Binary"
+      ],
+      "MessageLanguage": [
+        "en",
+        "jp",
+        "zh"
+      ],
+      "MessageType": [
+        "ConfigurationItemChangeNotification",
+        "OversizedConfigurationItemChangeNotification",
+        "ScheduledNotification",
+        "ConfigurationSnapshotDeliveryCompleted"
+      ],
+      "MetadataType": [
+        "aws:cdk:analytics:construct",
+        "aws:cdk:analytics:method",
+        "aws:cdk:analytics:featureflag",
+        "aws:cdk:analytics:mixin"
+      ],
+      "MethodLoggingLevel": [
+        "OFF",
+        "ERROR",
+        "INFO"
+      ],
+      "MetricAggregationType": [
+        "Average",
+        "Minimum",
+        "Maximum"
+      ],
+      "MetricType": [
+        "EventCount",
+        "ErrorCount",
+        "KafkaMetrics"
+      ],
+      "MetricsLevel": [
+        "APPLICATION",
+        "TASK",
+        "OPERATOR",
+        "PARALLELISM"
+      ],
+      "Mfa": [
+        "OFF",
+        "OPTIONAL",
+        "ON"
+      ],
+      "ModalityType": [
+        "TEXT",
+        "IMAGE"
+      ],
+      "Mode": [
+        "SingleModel",
+        "MultiModel"
+      ],
+      "MonitorType": [
+        0,
+        1
+      ],
+      "Monitoring": [
+        0,
+        1
+      ],
+      "MqttQualityOfService": [
+        0,
+        1
+      ],
+      "MssManifestLayout": [
+        "FULL",
+        "COMPACT"
+      ],
+      "MultiRegionConsistency": [
+        "EVENTUAL",
+        "STRONG"
+      ],
+      "MutualAuthenticationMode": [
+        "off",
+        "passthrough",
+        "verify"
+      ],
+      "NamespaceType": [
+        "HTTP",
+        "DNS_PRIVATE",
+        "DNS_PUBLIC"
+      ],
+      "NatConnectivityType": [
+        "public",
+        "private"
+      ],
+      "NatTrafficDirection": [
+        "OUTBOUND_ONLY",
+        "INBOUND_AND_OUTBOUND",
+        "NONE"
+      ],
+      "NetworkLoadBalancedServiceRecordType": [
+        0,
+        1,
+        2
+      ],
+      "NetworkMode": [
+        "none",
+        "bridge",
+        "awsvpc",
+        "host",
+        "nat"
+      ],
+      "NetworkType": [
+        "IPV4",
+        "DUAL",
+        "IPV6"
+      ],
+      "NodeType": [
+        "coordinator"
+      ],
+      "NodegroupAmiType": [
+        "AL2_x86_64",
+        "AL2_x86_64_GPU",
+        "AL2_ARM_64",
+        "BOTTLEROCKET_ARM_64",
+        "BOTTLEROCKET_x86_64",
+        "BOTTLEROCKET_ARM_64_NVIDIA",
+        "BOTTLEROCKET_x86_64_NVIDIA",
+        "BOTTLEROCKET_ARM_64_FIPS",
+        "BOTTLEROCKET_x86_64_FIPS",
+        "WINDOWS_CORE_2019_x86_64",
+        "WINDOWS_CORE_2022_x86_64",
+        "WINDOWS_FULL_2019_x86_64",
+        "WINDOWS_FULL_2022_x86_64",
+        "AL2023_x86_64_STANDARD",
+        "AL2023_x86_64_NEURON",
+        "AL2023_x86_64_NVIDIA",
+        "AL2023_ARM_64_NVIDIA",
+        "AL2023_ARM_64_STANDARD"
+      ],
+      "NullOrder": [
+        "nulls-first",
+        "nulls-last"
+      ],
+      "NumericFilterKey": [
+        "audio_channels",
+        "audio_sample_rate",
+        "trickplay_height",
+        "video_framerate",
+        "video_height"
+      ],
+      "NumericOverflowHandlingAction": [
+        "DISABLED",
+        "FAIL",
+        "SET_TO_NULL",
+        "DROP_ROW"
+      ],
+      "OAuth2CredentialProviderVendor": [
+        "GoogleOauth2",
+        "GithubOauth2",
+        "SlackOauth2",
+        "SalesforceOauth2",
+        "MicrosoftOauth2",
+        "CustomOauth2",
+        "AtlassianOauth2",
+        "LinkedinOauth2",
+        "XOauth2",
+        "OktaOauth2",
+        "OneLoginOauth2",
+        "PingOneOauth2",
+        "FacebookOauth2",
+        "YandexOauth2",
+        "RedditOauth2",
+        "ZoomOauth2",
+        "TwitchOauth2",
+        "SpotifyOauth2",
+        "DropboxOauth2",
+        "NotionOauth2",
+        "HubspotOauth2",
+        "CyberArkOauth2",
+        "FusionAuthOauth2",
+        "Auth0Oauth2",
+        "CognitoOauth2"
+      ],
+      "OCSFSourceType": [
+        "CloudTrail",
+        "Route53Resolver",
+        "VPCFlow",
+        "EKSAudit",
+        "AWSWAF"
+      ],
+      "OCSFVersion": [
+        "V1.1"
+      ],
+      "ObjectLockMode": [
+        "GOVERNANCE",
+        "COMPLIANCE"
+      ],
+      "ObjectOwnership": [
+        "BucketOwnerEnforced",
+        "BucketOwnerPreferred",
+        "ObjectWriter"
+      ],
+      "OidcAttributeRequestMethod": [
+        "GET",
+        "POST"
+      ],
+      "OnDemandAllocationStrategy": [
+        "prioritized",
+        "lowest-price"
+      ],
+      "OnPartialBatchItemFailure": [
+        "AUTOMATIC_BISECT"
+      ],
+      "OpenTableFormat": [
+        "ICEBERG"
+      ],
+      "OperatingSystem": [
+        "AMAZON_LINUX",
+        "AMAZON_LINUX_2",
+        "AMAZON_LINUX_2023",
+        "WINDOWS_2012",
+        "WINDOWS_2016"
+      ],
+      "OperatingSystemType": [
+        0,
+        1,
+        2
+      ],
+      "Operation": [
+        "GetItem",
+        "BatchGetItem",
+        "Scan",
+        "Query",
+        "GetRecords",
+        "PutItem",
+        "DeleteItem",
+        "UpdateItem",
+        "BatchWriteItem",
+        "TransactWriteItems",
+        "TransactGetItems",
+        "ExecuteTransaction",
+        "BatchExecuteStatement",
+        "ExecuteStatement"
+      ],
+      "OperationLevelMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Operator": [
+        "AND",
+        "OR",
+        "NOT"
+      ],
+      "OpsItemCategory": [
+        "Availability",
+        "Cost",
+        "Performance",
+        "Recovery",
+        "Security"
+      ],
+      "OpsItemSeverity": [
+        "1",
+        "2",
+        "3",
+        "4"
+      ],
+      "OrcColumnMappingType": [
+        "name",
+        "position"
+      ],
+      "OrcFormatVersion": [
+        "V0_11",
+        "V0_12"
+      ],
+      "OrchestrationType": [
+        "DEFAULT",
+        "CUSTOM_ORCHESTRATION"
+      ],
+      "OriginAccessControlOriginType": [
+        "s3",
+        "lambda",
+        "mediastore",
+        "mediapackagev2"
+      ],
+      "OriginIpAddressType": [
+        "ipv4",
+        "ipv6",
+        "dualstack"
+      ],
+      "OriginProtocolPolicy": [
+        "http-only",
+        "match-viewer",
+        "https-only"
+      ],
+      "OriginSelectionCriteria": [
+        "default",
+        "media-quality-based"
+      ],
+      "OriginSslPolicy": [
+        "SSLv3",
+        "TLSv1",
+        "TLSv1.1",
+        "TLSv1.2"
+      ],
+      "OutOfInfrequentAccessPolicy": [
+        "AFTER_1_ACCESS"
+      ],
+      "OutputFormat": [
+        "cjs",
+        "esm"
+      ],
+      "OutputLockingMode": [
+        "PIPELINE_LOCKING",
+        "EPOCH_LOCKING"
+      ],
+      "OutputType": [
+        "JSON",
+        "JSONL"
+      ],
+      "ParameterDataType": [
+        "text",
+        "aws:ec2:image"
+      ],
+      "ParameterTier": [
+        "Advanced",
+        "Intelligent-Tiering",
+        "Standard"
+      ],
+      "ParameterType": [
+        "string",
+        "number",
+        "integer",
+        "boolean",
+        "array",
+        "object"
+      ],
+      "ParameterValueType": [
+        "String",
+        "AWS::EC2::AvailabilityZone::Name",
+        "AWS::EC2::Image::Id",
+        "AWS::EC2::Instance::Id",
+        "AWS::EC2::KeyPair::KeyName",
+        "AWS::EC2::SecurityGroup::GroupName",
+        "AWS::EC2::SecurityGroup::Id",
+        "AWS::EC2::Subnet::Id",
+        "AWS::EC2::Volume::Id",
+        "AWS::EC2::VPC::Id",
+        "AWS::Route53::HostedZone::Id"
+      ],
+      "ParamsAndSecretsLogLevel": [
+        "debug",
+        "info",
+        "warn",
+        "error",
+        "none"
+      ],
+      "ParamsAndSecretsVersions": [
+        "1.0.103"
+      ],
+      "ParquetWriterVersion": [
+        "V1",
+        "V2"
+      ],
+      "ParserProcessorType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "Partition": [
+        "aws",
+        "aws-cn",
+        "aws-us-gov",
+        "aws-iso",
+        "aws-iso-b",
+        "aws-iso-f",
+        "aws-iso-e",
+        "aws-eusc"
+      ],
+      "PartitionDateSource": [
+        "EventTime",
+        "DeliveryTime"
+      ],
+      "PartitionProjectionType": [
+        "integer",
+        "date",
+        "enum",
+        "injected"
+      ],
+      "PasskeyUserVerification": [
+        "preferred",
+        "required"
+      ],
+      "PassthroughBehavior": [
+        "WHEN_NO_MATCH",
+        "NEVER",
+        "WHEN_NO_TEMPLATES"
+      ],
+      "PatchType": [
+        "json",
+        "merge",
+        "strategic"
+      ],
+      "PerformanceInsightRetention": [
+        7,
+        31,
+        62,
+        93,
+        124,
+        155,
+        186,
+        217,
+        248,
+        279,
+        310,
+        341,
+        372,
+        403,
+        434,
+        465,
+        496,
+        527,
+        558,
+        589,
+        620,
+        651,
+        682,
+        713,
+        731
+      ],
+      "PerformanceMode": [
+        "generalPurpose",
+        "maxIO"
+      ],
+      "Period": [
+        "DAY",
+        "WEEK",
+        "MONTH"
+      ],
+      "PeriodOverride": [
+        "auto",
+        "inherit"
+      ],
+      "PidMode": [
+        "host",
+        "task"
+      ],
+      "PipeVariable": [
+        "",
+        "",
+        "",
+        "",
+        "",
+        "",
+        "",
+        ""
+      ],
+      "PipelineNotificationEvents": [
+        "codepipeline-pipeline-pipeline-execution-failed",
+        "codepipeline-pipeline-pipeline-execution-canceled",
+        "codepipeline-pipeline-pipeline-execution-started",
+        "codepipeline-pipeline-pipeline-execution-resumed",
+        "codepipeline-pipeline-pipeline-execution-succeeded",
+        "codepipeline-pipeline-pipeline-execution-superseded",
+        "codepipeline-pipeline-stage-execution-started",
+        "codepipeline-pipeline-stage-execution-succeeded",
+        "codepipeline-pipeline-stage-execution-resumed",
+        "codepipeline-pipeline-stage-execution-canceled",
+        "codepipeline-pipeline-stage-execution-failed",
+        "codepipeline-pipeline-action-execution-succeeded",
+        "codepipeline-pipeline-action-execution-failed",
+        "codepipeline-pipeline-action-execution-canceled",
+        "codepipeline-pipeline-action-execution-started",
+        "codepipeline-pipeline-manual-approval-failed",
+        "codepipeline-pipeline-manual-approval-needed",
+        "codepipeline-pipeline-manual-approval-succeeded"
+      ],
+      "PipelineType": [
+        "V1",
+        "V2"
+      ],
+      "PlacementGroupSpreadLevel": [
+        "host",
+        "rack"
+      ],
+      "PlacementGroupStrategy": [
+        "cluster",
+        "partition",
+        "spread"
+      ],
+      "Platform": [
+        "x86-64",
+        "ARM64"
+      ],
+      "Policy": [
+        "ALLOW",
+        "REQUIRE"
+      ],
+      "PolicyEffect": [
+        "permit",
+        "forbid"
+      ],
+      "PolicyValidationReportStatus": [
+        "success",
+        "failure"
+      ],
+      "PolicyValidationReportStatusBeta1": [
+        "success",
+        "failure"
+      ],
+      "PoliticalView": [
+        "IND"
+      ],
+      "PoolState": [
+        "Hibernated",
+        "Running",
+        "Stopped"
+      ],
+      "PositionFiltering": [
+        "TimeBased",
+        "DistanceBased",
+        "AccuracyBased"
+      ],
+      "PredefinedMetric": [
+        "ASGAverageCPUUtilization",
+        "ASGAverageNetworkIn",
+        "ASGAverageNetworkOut",
+        "ALBRequestCountPerTarget"
+      ],
+      "PredicateLogical": [
+        "AND",
+        "ANY"
+      ],
+      "Preset": [
+        "CONSTRAINED_BANDWIDTH_DELIVERY",
+        "HIGHER_BANDWIDTH_DELIVERY"
+      ],
+      "PresetSpeke20Audio": [
+        "PRESET_AUDIO_1",
+        "PRESET_AUDIO_2",
+        "PRESET_AUDIO_3",
+        "SHARED",
+        "UNENCRYPTED"
+      ],
+      "PresetSpeke20Video": [
+        "PRESET_VIDEO_1",
+        "PRESET_VIDEO_2",
+        "PRESET_VIDEO_3",
+        "PRESET_VIDEO_4",
+        "PRESET_VIDEO_5",
+        "PRESET_VIDEO_6",
+        "PRESET_VIDEO_7",
+        "PRESET_VIDEO_8",
+        "SHARED",
+        "UNENCRYPTED"
+      ],
+      "PriceClass": [
+        "PriceClass_100",
+        "PriceClass_200",
+        "PriceClass_All"
+      ],
+      "PrimarySource": [
+        0,
+        1
+      ],
+      "PrincipalScope": [
+        "all",
+        "specific"
+      ],
+      "PriorityType": [
+        "LATENCY",
+        "COST",
+        "DESTINATION",
+        "LOCATION"
+      ],
+      "ProcessorMode": [
+        "INLINE",
+        "DISTRIBUTED"
+      ],
+      "ProcessorType": [
+        "STANDARD",
+        "EXPRESS"
+      ],
+      "ProjectNotificationEvents": [
+        "codebuild-project-build-state-failed",
+        "codebuild-project-build-state-succeeded",
+        "codebuild-project-build-state-in-progress",
+        "codebuild-project-build-state-stopped",
+        "codebuild-project-build-phase-failure",
+        "codebuild-project-build-phase-success"
+      ],
+      "ProjectVisibility": [
+        "PUBLIC_READ",
+        "PRIVATE"
+      ],
+      "ProjectionType": [
+        "KEYS_ONLY",
+        "INCLUDE",
+        "ALL"
+      ],
+      "PromptTemplateType": [
+        "TEXT",
+        "CHAT"
+      ],
+      "PropagateManagedInstancesTags": [
+        "CAPACITY_PROVIDER",
+        "NONE"
+      ],
+      "PropagatedTagSource": [
+        "SERVICE",
+        "TASK_DEFINITION",
+        "NONE"
+      ],
+      "Protocol": [
+        "HTTP",
+        "HTTPS",
+        "TCP",
+        "TLS",
+        "UDP",
+        "TCP_UDP"
+      ],
+      "ProtocolConfigType": [
+        "failover",
+        "merge"
+      ],
+      "ProtocolType": [
+        "MCP",
+        "HTTP",
+        "A2A",
+        "AGUI"
+      ],
+      "ProviderType": [
+        "CodeStarSourceConnection"
+      ],
+      "ProxyEndpointTargetRole": [
+        "READ_WRITE",
+        "READ_ONLY"
+      ],
+      "PythonVersion": [
+        "2",
+        "3",
+        "3.9"
+      ],
+      "QueryLanguage": [
+        "JSONPath",
+        "JSONata"
+      ],
+      "QueueEncryption": [
+        "NONE",
+        "KMS_MANAGED",
+        "KMS",
+        "SQS_MANAGED"
+      ],
+      "QuoteCharacter": [
+        '"',
+        "'"
+      ],
+      "ReadWriteType": [
+        "ReadOnly",
+        "WriteOnly",
+        "All",
+        "None"
+      ],
+      "ReceiptFilterPolicy": [
+        "Allow",
+        "Block"
+      ],
+      "RecordType": [
+        "A",
+        "AAAA",
+        "CAA",
+        "CNAME",
+        "DS",
+        "HTTPS",
+        "MX",
+        "NAPTR",
+        "NS",
+        "PTR",
+        "SOA",
+        "SPF",
+        "SRV",
+        "SSHFP",
+        "SVCB",
+        "TLSA",
+        "TXT"
+      ],
+      "RecordWrapperType": [
+        "None",
+        "RecordIO"
+      ],
+      "RecordingMode": [
+        "INTERVAL",
+        "DISABLED"
+      ],
+      "RecursiveLoop": [
+        "Allow",
+        "Terminate"
+      ],
+      "RedirectProtocol": [
+        "http",
+        "https"
+      ],
+      "RedirectStatus": [
+        "200",
+        "301",
+        "302",
+        "404",
+        "404-200"
+      ],
+      "RedrivePermission": [
+        "allowAll",
+        "denyAll",
+        "byQueue"
+      ],
+      "ReferenceRendering": [
+        0,
+        1
+      ],
+      "ReferenceStrength": [
+        "strong",
+        "weak",
+        "both"
+      ],
+      "RegistryType": [
+        "private",
+        "public"
+      ],
+      "RelayConversationHistoryType": [
+        "TO_COLLABORATOR",
+        "DISABLED"
+      ],
+      "RemovalPolicy": [
+        "destroy",
+        "retain",
+        "snapshot",
+        "retain-on-update-or-delete"
+      ],
+      "RenditionSelection": [
+        "ALL",
+        "NONE",
+        "CUSTOM"
+      ],
+      "ReplicationOverwriteProtection": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ReportGroupType": [
+        "TEST",
+        "CODE_COVERAGE"
+      ],
+      "RepositoryEventTrigger": [
+        "all",
+        "updateReference",
+        "createReference",
+        "deleteReference"
+      ],
+      "RepositoryNotificationEvents": [
+        "codecommit-repository-comments-on-commits",
+        "codecommit-repository-comments-on-pull-requests",
+        "codecommit-repository-approvals-status-changed",
+        "codecommit-repository-approvals-rule-override",
+        "codecommit-repository-pull-request-created",
+        "codecommit-repository-pull-request-source-updated",
+        "codecommit-repository-pull-request-status-changed",
+        "codecommit-repository-pull-request-merged",
+        "codecommit-repository-branches-and-tags-created",
+        "codecommit-repository-branches-and-tags-deleted",
+        "codecommit-repository-branches-and-tags-updated"
+      ],
+      "RepositoryService": [
+        "ECR"
+      ],
+      "RepositoryVisibility": [
+        0,
+        1
+      ],
+      "RequestMetricsStatus": [
+        "Enabled",
+        "Disabled"
+      ],
+      "RequireConfirmation": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "Resolution": [
+        "FULL_HD",
+        "HD",
+        "SD",
+        "LOWEST_RESOLUTION"
+      ],
+      "ResolutionTypeHint": [
+        "string",
+        "number",
+        "string-list"
+      ],
+      "ResolverLevelMetricsBehavior": [
+        "FULL_REQUEST_RESOLVER_METRICS",
+        "PER_RESOLVER_METRICS"
+      ],
+      "ResolverMetricsConfig": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "ResourceAction": [
+        "pause-cluster",
+        "resume-cluster",
+        "failover-primary-compute"
+      ],
+      "ResourceScope": [
+        "all",
+        "type",
+        "specific"
+      ],
+      "ResourceToReplicateTags": [
+        "lambda-function"
+      ],
+      "ResponseTransferMode": [
+        "BUFFERED",
+        "STREAM"
+      ],
+      "RestApiMode": [
+        "overwrite",
+        "merge"
+      ],
+      "Result": [
+        "ROLLBACK",
+        "FAIL",
+        "RETRY",
+        "SKIP"
+      ],
+      "RetentionDays": [
+        1,
+        3,
+        5,
+        7,
+        14,
+        30,
+        60,
+        90,
+        120,
+        150,
+        180,
+        365,
+        400,
+        545,
+        731,
+        1096,
+        1827,
+        2192,
+        2557,
+        2922,
+        3288,
+        3653,
+        9999
+      ],
+      "RetryMode": [
+        "ALL_ACTIONS",
+        "FAILED_ACTIONS"
+      ],
+      "RevisionType": [
+        "COMMIT_ID",
+        "IMAGE_DIGEST",
+        "S3_OBJECT_VERSION_ID",
+        "S3_OBJECT_KEY"
+      ],
+      "RevocationType": [
+        "CRL"
+      ],
+      "RoleMappingMatchType": [
+        "Equals",
+        "Contains",
+        "StartsWith",
+        "NotEqual"
+      ],
+      "RouterType": [
+        "CarrierGateway",
+        "EgressOnlyInternetGateway",
+        "Gateway",
+        "Instance",
+        "LocalGateway",
+        "NatGateway",
+        "NetworkInterface",
+        "TransitGateway",
+        "VpcPeeringConnection",
+        "VpcEndpoint",
+        "CoreNetwork"
+      ],
+      "RoutingPolicy": [
+        "WEIGHTED",
+        "MULTIVALUE"
+      ],
+      "Runtime": [
+        "nodejs20.x",
+        "python3.9",
+        "python3.10",
+        "python3.11",
+        "python3.13",
+        "python3.13"
+      ],
+      "RuntimeFamily": [
+        0,
+        1,
+        2
+      ],
+      "S3DataDistributionType": [
+        "FullyReplicated",
+        "ShardedByS3Key"
+      ],
+      "S3DataType": [
+        "ManifestFile",
+        "S3Prefix",
+        "AugmentedManifestFile"
+      ],
+      "S3EncryptionMode": [
+        "SSE-S3",
+        "SSE-KMS"
+      ],
+      "S3LogsDeliveryPermissionsVersion": [
+        "V1",
+        "V2"
+      ],
+      "S3ObjectStorageMode": [
+        "COPY",
+        "REFERENCE"
+      ],
+      "S3OutputFormat": [
+        "plain",
+        "json",
+        "w3c"
+      ],
+      "S3Trigger": [
+        "None",
+        "Poll",
+        "Events"
+      ],
+      "SSLMethod": [
+        "sni-only",
+        "vip",
+        "static-ip"
+      ],
+      "ScaleInProtectedInstances": [
+        "Refresh",
+        "Ignore",
+        "Wait"
+      ],
+      "ScalingEvent": [
+        "autoscaling:EC2_INSTANCE_LAUNCH",
+        "autoscaling:EC2_INSTANCE_TERMINATE",
+        "autoscaling:EC2_INSTANCE_TERMINATE_ERROR",
+        "autoscaling:EC2_INSTANCE_LAUNCH_ERROR",
+        "autoscaling:TEST_NOTIFICATION"
+      ],
+      "ScalingMode": [
+        "STANDARD",
+        "MANAGED"
+      ],
+      "ScalingProcess": [
+        "Launch",
+        "Terminate",
+        "HealthCheck",
+        "ReplaceUnhealthy",
+        "AZRebalance",
+        "AlarmNotification",
+        "ScheduledActions",
+        "AddToLoadBalancer",
+        "InstanceRefresh"
+      ],
+      "ScheduleStartCondition": [
+        "EXPRESSION_MATCH_ONLY",
+        "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE"
+      ],
+      "SchemaDefinitionType": [
+        "string",
+        "number",
+        "object",
+        "array",
+        "boolean",
+        "integer"
+      ],
+      "Scope": [
+        "task",
+        "shared"
+      ],
+      "ScteInSegments": [
+        "NONE",
+        "ALL"
+      ],
+      "ScteMessageType": [
+        "SPLICE_INSERT",
+        "BREAK",
+        "PROVIDER_ADVERTISEMENT",
+        "DISTRIBUTOR_ADVERTISEMENT",
+        "PROVIDER_PLACEMENT_OPPORTUNITY",
+        "DISTRIBUTOR_PLACEMENT_OPPORTUNITY",
+        "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY",
+        "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY",
+        "PROGRAM"
+      ],
+      "SecurityPolicy": [
+        "TLS_1_0",
+        "TLS_1_2"
+      ],
+      "SecurityPolicyProtocol": [
+        "SSLv3",
+        "TLSv1",
+        "TLSv1_2016",
+        "TLSv1.1_2016",
+        "TLSv1.2_2018",
+        "TLSv1.2_2019",
+        "TLSv1.2_2021",
+        "TLSv1.2_2025",
+        "TLSv1.3_2025"
+      ],
+      "SegmentLengthUnits": [
+        "MILLISECONDS",
+        "SECONDS"
+      ],
+      "SegmentTemplateFormat": [
+        "NUMBER_WITH_TIMELINE"
+      ],
+      "ServerSideEncryption": [
+        "AES256",
+        "aws:kms",
+        "aws:kms:dsse"
+      ],
+      "ServiceConnectAccessLogFormat": [
+        "TEXT",
+        "JSON"
+      ],
+      "ServiceIntegrationPattern": [
+        "FIRE_AND_FORGET",
+        "SYNC",
+        "WAIT_FOR_TASK_TOKEN"
+      ],
+      "ServiceManager": [
+        0,
+        1,
+        2
+      ],
+      "ServiceNamespace": [
+        "ecs",
+        "elasticmapreduce",
+        "ec2",
+        "appstream",
+        "dynamodb",
+        "rds",
+        "sagemaker",
+        "custom-resource",
+        "lambda",
+        "comprehend",
+        "kafka",
+        "elasticache",
+        "neptune",
+        "cassandra",
+        "workspaces"
+      ],
+      "Shading": [
+        "none",
+        "above",
+        "below"
+      ],
+      "ShardLevelMetrics": [
+        "IncomingBytes",
+        "IncomingRecords",
+        "IteratorAgeMilliseconds",
+        "OutgoingBytes",
+        "OutgoingRecords",
+        "ReadProvisionedThroughputExceeded",
+        "WriteProvisionedThroughputExceeded",
+        "ALL"
+      ],
+      "SharePermission": [
+        0,
+        1
+      ],
+      "SigningAlgorithm": [
+        "rsa-sha256"
+      ],
+      "SigningBehavior": [
+        "always",
+        "never",
+        "no-override"
+      ],
+      "SigningProtocol": [
+        "sigv4"
+      ],
+      "SizeRoundingBehavior": [
+        0,
+        1,
+        2
+      ],
+      "SnsActionMessageFormat": [
+        "RAW",
+        "JSON"
+      ],
+      "SortDirection": [
+        "asc",
+        "desc"
+      ],
+      "SourceMapMode": [
+        "default",
+        "external",
+        "inline",
+        "both"
+      ],
+      "SourcePriorityMode": [
+        "NO_PRIORITY",
+        "PRIMARY_SECONDARY"
+      ],
+      "SourceType": [
+        "lambda",
+        "sqs",
+        "sns",
+        "events"
+      ],
+      "SplitType": [
+        "None",
+        "Line",
+        "RecordIO",
+        "TFRecord"
+      ],
+      "SplunkLogFormat": [
+        "inline",
+        "json",
+        "raw"
+      ],
+      "SpotAllocationStrategy": [
+        "lowest-price",
+        "capacity-optimized",
+        "capacity-optimized-prioritized",
+        "price-capacity-optimized"
+      ],
+      "SpotInstanceInterruption": [
+        "stop",
+        "terminate",
+        "hibernate"
+      ],
+      "SpotRequestType": [
+        "one-time",
+        "persistent"
+      ],
+      "SslPolicy": [
+        "ELBSecurityPolicy-TLS13-1-2-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-PQ-2025-09",
+        "ELBSecurityPolicy-2016-08",
+        "ELBSecurityPolicy-TLS13-1-2-Res-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06",
+        "ELBSecurityPolicy-TLS13-1-0-2021-06",
+        "ELBSecurityPolicy-TLS13-1-1-2021-06",
+        "ELBSecurityPolicy-TLS13-1-3-2021-06",
+        "ELBSecurityPolicy-TLS13-1-3-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Res-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-0-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-3-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-1-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-0-FIPS-2023-04",
+        "ELBSecurityPolicy-TLS13-1-3-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Res-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext0-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext1-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-2-Ext2-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-TLS13-1-0-FIPS-PQ-2025-09",
+        "ELBSecurityPolicy-FS-1-2-Res-2020-10",
+        "ELBSecurityPolicy-FS-1-2-Res-2019-08",
+        "ELBSecurityPolicy-FS-1-2-2019-08",
+        "ELBSecurityPolicy-FS-1-1-2019-08",
+        "ELBSecurityPolicy-FS-2018-06",
+        "ELBSecurityPolicy-TLS-1-2-2017-01",
+        "ELBSecurityPolicy-TLS-1-2-Ext-2018-06",
+        "ELBSecurityPolicy-TLS-1-1-2017-01",
+        "ELBSecurityPolicy-TLS-1-0-2015-04"
+      ],
+      "StackSetOrganizationsAutoDeployment": [
+        "Enabled",
+        "Disabled",
+        "EnabledWithStackRetention"
+      ],
+      "StandardThreatProtectionMode": [
+        "ENFORCED",
+        "AUDIT",
+        "OFF"
+      ],
+      "StandbyInstances": [
+        "Terminate",
+        "Ignore",
+        "Wait"
+      ],
+      "StartingPosition": [
+        "TRIM_HORIZON",
+        "LATEST",
+        "AT_TIMESTAMP"
+      ],
+      "State": [
+        "ENABLED",
+        "DISABLED"
+      ],
+      "StateMachineInvocationType": [
+        "FIRE_AND_FORGET",
+        "REQUEST_RESPONSE"
+      ],
+      "StateMachineType": [
+        "EXPRESS",
+        "STANDARD"
+      ],
+      "StateType": [
+        "Pass",
+        "Task",
+        "Choice",
+        "Wait",
+        "Succeed",
+        "Fail",
+        "Parallel",
+        "Map"
+      ],
+      "Statistic": [
+        "SampleCount",
+        "Average",
+        "Sum",
+        "Minimum",
+        "Maximum"
+      ],
+      "Status": [
+        "pass",
+        "fail"
+      ],
+      "Storage": [
+        "SEQUENTIAL",
+        "LATEST"
+      ],
+      "StorageClass": [
+        "STANDARD",
+        "REDUCED_REDUNDANCY",
+        "STANDARD_IA",
+        "ONEZONE_IA",
+        "INTELLIGENT_TIERING",
+        "GLACIER",
+        "DEEP_ARCHIVE"
+      ],
+      "StorageMode": [
+        "LOCAL",
+        "TIERED"
+      ],
+      "StorageParameters": [
+        "skip.header.line.count",
+        "data_cleansing_enabled",
+        "compression_type",
+        "invalid_char_handling",
+        "replacement_char",
+        "numeric_overflow_handling",
+        "surplus_bytes_handling",
+        "surplus_char_handling",
+        "column_count_mismatch_handling",
+        "num_rows",
+        "serialization.null.format",
+        "orc.schema.resolution",
+        "write.parallel",
+        "write.maxfilesize.mb",
+        "write.kms.key.id"
+      ],
+      "StorageType": [
+        "standard",
+        "gp2",
+        "gp3",
+        "io1",
+        "io2"
+      ],
+      "StreamDeliveryContentLevel": [
+        "METADATA_ONLY",
+        "FULL_CONTENT"
+      ],
+      "StreamDeliveryContentType": [
+        "MEMORY_RECORDS"
+      ],
+      "StreamEncryption": [
+        "NONE",
+        "KMS",
+        "MANAGED"
+      ],
+      "StreamEncryptionType": [
+        0,
+        1,
+        2
+      ],
+      "StreamMode": [
+        "PROVISIONED",
+        "ON_DEMAND"
+      ],
+      "StreamViewType": [
+        "NEW_IMAGE",
+        "OLD_IMAGE",
+        "NEW_AND_OLD_IMAGES",
+        "KEYS_ONLY"
+      ],
+      "StringMutatorType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "Style": [
+        "VectorEsriNavigation",
+        "RasterEsriImagery",
+        "VectorEsriLightGrayCanvas",
+        "VectorEsriTopographic",
+        "VectorEsriStreets",
+        "VectorEsriDarkGrayCanvas",
+        "VectorHereExplore",
+        "RasterHereExploreSatellite",
+        "HybridHereExploreSatellite",
+        "VectorHereContrast",
+        "VectorHereExploreTruck",
+        "VectorGrabStandardLight",
+        "VectorGrabStandardDark",
+        "VectorOpenDataStandardLight",
+        "VectorOpenDataStandardDark",
+        "VectorOpenDataVisualizationLight",
+        "VectorOpenDataVisualizationDark"
+      ],
+      "SubRecordType": [
+        "JSON",
+        "DELIMITED"
+      ],
+      "SubnetType": [
+        "Isolated",
+        "Deprecated_Isolated",
+        "Private",
+        "Deprecated_Private_NAT",
+        "Deprecated_Private",
+        "Public"
+      ],
+      "SubscriptionProtocol": [
+        "http",
+        "https",
+        "email",
+        "email-json",
+        "sms",
+        "sqs",
+        "application",
+        "lambda",
+        "firehose"
+      ],
+      "SuppressionReasons": [
+        "BOUNCES_AND_COMPLAINTS",
+        "BOUNCES_ONLY",
+        "COMPLAINTS_ONLY"
+      ],
+      "SurplusBytesHandlingAction": [
+        "SET_TO_NULL",
+        "DISABLED",
+        "FAIL",
+        "DROP_ROW",
+        "TRUNCATE"
+      ],
+      "SurplusCharHandlingAction": [
+        "SET_TO_NULL",
+        "DISABLED",
+        "FAIL",
+        "DROP_ROW",
+        "TRUNCATE"
+      ],
+      "SymlinkFollowMode": [
+        "never",
+        "always",
+        "external",
+        "internal-only"
+      ],
+      "SynthesisMessageLevel": [
+        "info",
+        "warning",
+        "error"
+      ],
+      "SystemLogLevel": [
+        "INFO",
+        "DEBUG",
+        "WARN"
+      ],
+      "TLSSecurityPolicy": [
+        "Policy-Min-TLS-1-0-2019-07",
+        "Policy-Min-TLS-1-2-2019-07",
+        "Policy-Min-TLS-1-2-PFS-2023-10"
+      ],
+      "TableAction": [
+        0,
+        1,
+        2,
+        3,
+        4,
+        5,
+        6
+      ],
+      "TableBucketEncryption": [
+        "aws:kms",
+        "AES256"
+      ],
+      "TableClass": [
+        "STANDARD",
+        "STANDARD_INFREQUENT_ACCESS"
+      ],
+      "TableDistStyle": [
+        "AUTO",
+        "EVEN",
+        "KEY",
+        "ALL"
+      ],
+      "TableEncryption": [
+        "AWS_OWNED",
+        "CUSTOMER_MANAGED",
+        "AWS_MANAGED"
+      ],
+      "TableLayout": [
+        "horizontal",
+        "vertical"
+      ],
+      "TableSortStyle": [
+        "AUTO",
+        "COMPOUND",
+        "INTERLEAVED"
+      ],
+      "TableSummaryColumn": [
+        "MIN",
+        "MAX",
+        "SUM",
+        "AVG"
+      ],
+      "TagMutability": [
+        "MUTABLE",
+        "IMMUTABLE",
+        "IMMUTABLE_WITH_EXCLUSION",
+        "MUTABLE_WITH_EXCLUSION"
+      ],
+      "TagOperation": [
+        "STRINGEQUALS",
+        "dummy"
+      ],
+      "TagStatus": [
+        "any",
+        "tagged",
+        "untagged"
+      ],
+      "TagType": [
+        "StandardTag",
+        "AutoScalingGroupTag",
+        "StringToStringMap",
+        "KeyValue",
+        "NotTaggable"
+      ],
+      "TaintEffect": [
+        "NO_SCHEDULE",
+        "PREFER_NO_SCHEDULE",
+        "NO_EXECUTE"
+      ],
+      "TargetGroupIpAddressType": [
+        "ipv4",
+        "ipv6"
+      ],
+      "TargetGroupLoadBalancingAlgorithmType": [
+        "round_robin",
+        "least_outstanding_requests",
+        "weighted_random"
+      ],
+      "TargetType": [
+        "instance",
+        "ip",
+        "lambda",
+        "alb"
+      ],
+      "TcpRetryEvent": [
+        "connection-error"
+      ],
+      "TemplateType": [
+        "Text",
+        "Object"
+      ],
+      "Tenancy": [
+        "default",
+        "dedicated",
+        "host"
+      ],
+      "TerminateHookAbandonAction": [
+        "retain",
+        "terminate"
+      ],
+      "TerminationPolicy": [
+        "AllocationStrategy",
+        "ClosestToNextInstanceHour",
+        "Default",
+        "NewestInstance",
+        "OldestInstance",
+        "OldestLaunchConfiguration",
+        "OldestLaunchTemplate",
+        "CustomLambdaFunction"
+      ],
+      "TextFilterKey": [
+        "audio_language",
+        "subtitle_language"
+      ],
+      "TextWidgetBackground": [
+        "solid",
+        "transparent"
+      ],
+      "ThroughputMode": [
+        "bursting",
+        "provisioned",
+        "elastic"
+      ],
+      "TierConfig": [
+        "CLASSIC",
+        "STANDARD"
+      ],
+      "TimeoutAction": [
+        "ForceApplyCapacityChange",
+        "RollbackCapacityChange"
+      ],
+      "TlsMode": [
+        "STRICT",
+        "PERMISSIVE",
+        "DISABLED"
+      ],
+      "TlsPolicy": [
+        "Optional",
+        "Require"
+      ],
+      "TmpfsMountOption": [
+        "defaults",
+        "ro",
+        "rw",
+        "suid",
+        "nosuid",
+        "dev",
+        "nodev",
+        "exec",
+        "noexec",
+        "sync",
+        "async",
+        "dirsync",
+        "remount",
+        "mand",
+        "nomand",
+        "atime",
+        "noatime",
+        "diratime",
+        "nodiratime",
+        "bind",
+        "rbind",
+        "unbindable",
+        "runbindable",
+        "private",
+        "rprivate",
+        "shared",
+        "rshared",
+        "slave",
+        "rslave",
+        "relatime",
+        "norelatime",
+        "strictatime",
+        "nostrictatime",
+        "mode",
+        "uid",
+        "gid",
+        "nr_inodes",
+        "nr_blocks",
+        "mpol"
+      ],
+      "TraceConfigurationVendor": [
+        "AWSXRAY"
+      ],
+      "Tracing": [
+        "Active",
+        "PassThrough",
+        "Disabled"
+      ],
+      "TracingConfig": [
+        "PassThrough",
+        "Active"
+      ],
+      "TrafficDirection": [
+        0,
+        1
+      ],
+      "Transformation": [
+        "NONE",
+        "COMPACT",
+        "FLATTEN"
+      ],
+      "TransitGatewayFeatureStatus": [
+        "enable",
+        "disable"
+      ],
+      "TransitionDefaultMinimumObjectSize": [
+        "all_storage_classes_128K",
+        "varies_by_storage_class"
+      ],
+      "TransportProtocol": [
+        "tcp",
+        "udp"
+      ],
+      "TreatMissingData": [
+        "breaching",
+        "notBreaching",
+        "ignore",
+        "missing"
+      ],
+      "TrickplayType": [
+        "iframe",
+        "image",
+        "none"
+      ],
+      "TriggerInvalidation": [
+        "WHEN_FUNCTION_CHANGES"
+      ],
+      "TsDrmSystem": [
+        "FAIRPLAY",
+        "CLEAR_KEY_AES_128"
+      ],
+      "TsEncryptionMethod": [
+        "AES_128",
+        "SAMPLE_AES"
+      ],
+      "TtmlProfile": [
+        "IMSC_1",
+        "EBU_TT_D_101"
+      ],
+      "TypeConverterType": [
+        "boolean",
+        "integer",
+        "double",
+        "string"
+      ],
+      "URLEncodingFormat": [
+        "BRACKETS",
+        "COMMAS",
+        "DEFAULT",
+        "INDICES",
+        "NONE",
+        "REPEAT"
+      ],
+      "UlimitName": [
+        "core",
+        "cpu",
+        "data",
+        "fsize",
+        "locks",
+        "memlock",
+        "msgqueue",
+        "nice",
+        "nofile",
+        "nproc",
+        "rss",
+        "rtprio",
+        "rttime",
+        "sigpending",
+        "stack"
+      ],
+      "UnauthenticatedAction": [
+        "deny",
+        "allow",
+        "authenticate"
+      ],
+      "Unit": [
+        "Seconds",
+        "Microseconds",
+        "Milliseconds",
+        "Bytes",
+        "Kilobytes",
+        "Megabytes",
+        "Gigabytes",
+        "Terabytes",
+        "Bits",
+        "Kilobits",
+        "Megabits",
+        "Gigabits",
+        "Terabits",
+        "Percent",
+        "Count",
+        "Bytes/Second",
+        "Kilobytes/Second",
+        "Megabytes/Second",
+        "Gigabytes/Second",
+        "Terabytes/Second",
+        "Bits/Second",
+        "Kilobits/Second",
+        "Megabits/Second",
+        "Gigabits/Second",
+        "Terabits/Second",
+        "Count/Second",
+        "None"
+      ],
+      "UnreferencedFileRemovalStatus": [
+        "Enabled",
+        "Disabled"
+      ],
+      "UntrustedArtifactOnDeployment": [
+        "Enforce",
+        "Warn"
+      ],
+      "UpdateType": [
+        "None",
+        "Replace",
+        "RollingUpdate"
+      ],
+      "UsagePlanKeyType": [
+        "API_KEY"
+      ],
+      "UserPoolDefaultAction": [
+        "ALLOW",
+        "DENY"
+      ],
+      "UserPoolIdentityProviderSamlMetadataType": [
+        "url",
+        "file"
+      ],
+      "ValidationMethod": [
+        "EMAIL",
+        "DNS"
+      ],
+      "ValidatorType": [
+        "JSON_SCHEMA",
+        "LAMBDA"
+      ],
+      "VariableInputType": [
+        "input",
+        "radio",
+        "select"
+      ],
+      "VariableType": [
+        "property",
+        "pattern"
+      ],
+      "VectorType": [
+        "FLOAT32",
+        "BINARY"
+      ],
+      "VendedLogType": [
+        0,
+        1,
+        2,
+        3,
+        4
+      ],
+      "VerificationEmailStyle": [
+        "CONFIRM_WITH_CODE",
+        "CONFIRM_WITH_LINK"
+      ],
+      "VersionConsistency": [
+        "enabled",
+        "disabled"
+      ],
+      "VerticalShading": [
+        "none",
+        "before",
+        "after"
+      ],
+      "VideoCodec": [
+        "H264",
+        "H265",
+        "AV1"
+      ],
+      "VideoCodecType": [
+        "H264",
+        "H265",
+        "AV1",
+        "FRAME_CAPTURE"
+      ],
+      "VideoDynamicRange": [
+        "dv",
+        "hdr10",
+        "hlg",
+        "sdr"
+      ],
+      "ViewerProtocolPolicy": [
+        "https-only",
+        "redirect-to-https",
+        "allow-all"
+      ],
+      "Visibility": [
+        "GLOBAL",
+        "PRIVATE"
+      ],
+      "VpcEndpointDnsRecordIpType": [
+        "ipv4",
+        "ipv6",
+        "dualstack",
+        "service-defined"
+      ],
+      "VpcEndpointIpAddressType": [
+        "ipv4",
+        "ipv6",
+        "dualstack"
+      ],
+      "VpcEndpointPrivateDnsOnlyForInboundResolverEndpoint": [
+        "AllResolvers",
+        "OnlyInboundResolver"
+      ],
+      "VpcEndpointType": [
+        "Interface",
+        "Gateway",
+        "GatewayLoadBalancer",
+        "ServiceNetwork",
+        "Resource"
+      ],
+      "VpcSubnetGroupType": [
+        "Public",
+        "Private",
+        "Isolated"
+      ],
+      "VpnConnectionType": [
+        "ipsec.1",
+        "dummy"
+      ],
+      "VpnPort": [
+        443,
+        1194
+      ],
+      "WebSocketAuthorizerType": [
+        "REQUEST",
+        "AWS_IAM"
+      ],
+      "WebSocketIntegrationType": [
+        "AWS_PROXY",
+        "MOCK",
+        "AWS"
+      ],
+      "WebhookFilterTypes": [
+        "FILE_PATH",
+        "COMMIT_MESSAGE",
+        "HEAD_REF",
+        "ACTOR_ACCOUNT_ID",
+        "BASE_REF",
+        "REPOSITORY_NAME"
+      ],
+      "Weekday": [
+        "1",
+        "2",
+        "3",
+        "4",
+        "5",
+        "6",
+        "7"
+      ],
+      "WindowsImageType": [
+        "WINDOWS_CONTAINER",
+        "WINDOWS_SERVER_2019_CONTAINER",
+        "WINDOWS_SERVER_2022_CONTAINER"
+      ],
+      "WindowsOptimizedVersion": [
+        "2025",
+        "2022",
+        "2019",
+        "2016"
+      ],
+      "WindowsVersion": [
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.22",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.22",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.23",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.23",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.24",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.24",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.25",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.25",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.26",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.26",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.27",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.27",
+        "Windows_Server-2019-English-Core-EKS_Optimized-1.28",
+        "Windows_Server-2019-English-Full-EKS_Optimized-1.28",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.23",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.23",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.24",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.24",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.25",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.25",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.26",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.26",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.27",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.27",
+        "Windows_Server-2022-English-Core-EKS_Optimized-1.28",
+        "Windows_Server-2022-English-Full-EKS_Optimized-1.28",
+        "Windows_Server-1709-English-Core-ContainersLatest",
+        "Windows_Server-1709-English-Core-Base",
+        "Windows_Server-1803-English-Core-Base",
+        "Windows_Server-1803-English-Core-ContainersLatest",
+        "Windows_Server-1809-English-Core-Base",
+        "Windows_Server-1809-English-Core-ContainersLatest",
+        "Windows_Server-2003-R2_SP2-Language_Packs-32Bit-Base",
+        "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Express",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Standard",
+        "Windows_Server-2003-R2_SP2-English-32Bit-Base",
+        "Windows_Server-2003-R2_SP2-English-64Bit-Base",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-SQL_2005_SP4_Express",
+        "Windows_Server-2003-R2_SP2-English-64Bit-SQL_2005_SP4_Standard",
+        "Windows_Server-2003-R2_SP2-Language_Packs-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-Base",
+        "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Express",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2008-R2_SP1-Korean-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Chinese_Hong_Kong_SAR-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Chinese_PRC-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-SP2-English-32Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-Base",
+        "Windows_Server-2008-SP2-English-64Bit-SQL_2008_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-SP2-English-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2008-R2_SP1-Japanese-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_RTM_SP2_Enterprise",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-SP2-Portuguese_Brazil-32Bit-Base",
+        "Windows_Server-2008-SP2-Portugese_Brazil-32Bit-Base",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Base",
+        "Windows_Server-2008-R2_SP1-Language_Packs-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Core_SQL_2012_SP4_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-Core",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2008-R2_SP1-English-64Bit-SharePoint_2010_SP2_Foundation",
+        "Windows_Server-2012-R2_RTM-Chinese_Simplified-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Chinese_Traditional-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Dutch-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Enterprise",
+        "Windows_Server-2012-R2_RTM-Hungarian-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2008-R2_SP1-Portuguese_Brazil-64Bit-Core",
+        "Windows_Server-2008-R2_SP1-Portugese_Brazil-64Bit-Core",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-RTM-Italian-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Express",
+        "Windows_Server-2012-R2_RTM-English-Deep-Learning",
+        "Windows_Server-2012-R2_RTM-German-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Express",
+        "Windows_Server-2012-R2_RTM-Russian-64Bit-Base",
+        "Windows_Server-2012-RTM-Chinese_Traditional_Hong_Kong_SAR-64Bit-Base",
+        "Windows_Server-2012-RTM-Hungarian-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-RTM-French-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-French-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Polish-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-Core",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Enterprise",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-RTM-Swedish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portuguese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Portugese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Swedish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2012-RTM-Chinese_Traditional-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-RTM-Czech-64Bit-Base",
+        "Windows_Server-2012-RTM-Turkish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-HyperV",
+        "Windows_Server-2012-RTM-Korean-64Bit-Base",
+        "Windows_Server-2012-RTM-Russian-64Bit-Base",
+        "Windows_Server-2012_R2_RTM-English-Full-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-R2_RTM-Italian-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Standard",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2008_R2_SP3_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-R2_RTM-Czech-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Standard",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Standard",
+        "Windows_Server-2008-SP2-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2008-SP2-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2012-RTM-Japanese-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP2_Express",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012_RTM-English-Full-Base",
+        "Windows_Server-2012-R2-English-STIG-Full",
+        "Windows_Server-2012-RTM-Portuguese_Portugal-64Bit-Base",
+        "Windows_Server-2012-RTM-Portugese_Portugal-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2014_SP2_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-Base",
+        "Windows_Server-2012-RTM-Portuguese_Brazil-64Bit-Base",
+        "Windows_Server-2012-RTM-Portugese_Brazil-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-P3",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-Spanish-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Standard",
+        "Windows_Server-2012-R2-English-STIG-Core",
+        "Windows_Server-2012-R2_RTM-Turkish-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2012-RTM-Polish-64Bit-Base",
+        "Windows_Server-2012-RTM-Spanish-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Web",
+        "Windows_Server-2012-R2_RTM-Korean-64Bit-Base",
+        "Windows_Server-2012-RTM-Dutch-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-Chinese_Traditional_Hong_Kong-64Bit-Base",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2012-RTM-Chinese_Simplified-64Bit-Base",
+        "Windows_Server-2012-RTM-English-64Bit-SQL_2012_SP4_Web",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Web",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Standard",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Express",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Web",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2014_SP2_Standard",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2012_SP4_Express",
+        "Windows_Server-2012-R2_RTM-Japanese-64Bit-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2012-R2_RTM-English-64Bit-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-Core-Containers",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Web",
+        "Windows_Server-2016-German-Full-Base",
+        "Windows_Server-2016-Germal-Full-Base",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Express",
+        "Windows_Server-2016-English-Deep-Learning",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2016-Korean-Full-Base",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Polish-Full-Base",
+        "Windows_Server-2016-English-Full-Containers",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-Russian-Full-Base",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Express",
+        "Windows_Server-2016-Italian-Full-Base",
+        "Windows_Server-2016-Spanish-Full-Base",
+        "Windows_Server-2012-RTM-German-64Bit-Base",
+        "Windows_Server-2012-RTM-Japanese-64Bit-SQL_2008_R2_SP3_Standard",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-English-Full-HyperV",
+        "Windows_Server-2016-English-Core-ContainersLatest",
+        "Windows_Server-2016-Dutch-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2016-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2016-Hungarian-Full-Base",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-Base",
+        "Windows_Server-2016-English-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2017_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Web",
+        "Windows_Server-2016-Swedish-Full-Base",
+        "Windows_Server-2016-Turkish-Full-Base",
+        "Windows_Server-2016-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2016-Portugese_Brazil-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2019_Standard",
+        "Windows_Server-2016-English-Full-SQL_2014_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-64Bit-SQL_2012_SP4_Enterprise",
+        "Windows_Server-2016-English-Core-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Express",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Web",
+        "Windows_Server-2016-English-Full-SQL_2017_Standard",
+        "Windows_Server-2016-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2016-Portugese_Portugal-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2014_SP3_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2016-English-Full-SQL_2019_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-STIG-Core",
+        "Windows_Server-2016-Korean-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-English-Full-ECS_Optimized",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Web",
+        "Windows_Server-2016-English-P3",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2016-Japanese-Full-Base",
+        "Windows_Server-2016-Chinese_Simplified-Full-Base",
+        "Windows_Server-2016-French-Full-Base",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2016-Czech-Full-Base",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Standard",
+        "Windows_Server-2016-English-Core-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2016-Chinese_Traditional-Full-Base",
+        "Windows_Server-2016-English-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2016-English-Full-SQL_2017_Express",
+        "Windows_Server-2016-English-Full-SQL_2019_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2016-English-Tesla",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2016-English-STIG-Full",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2016-English-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2016-English-Core-SQL_2016_SP3_Standard",
+        "Windows_Server-2016-Japanese-Full-SQL_2016_SP1_Express",
+        "Windows_Server-2016-English-Full-SQL_2016_SP1_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2017_Web",
+        "Windows_Server-2019-French-Full-Base",
+        "Windows_Server-2019-Korean-Full-Base",
+        "Windows_Server-2019-Italian-Full-Base",
+        "Windows_Server-2019-Chinese_Simplified-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Web",
+        "Windows_Server-2019-English-Full-HyperV",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Standard",
+        "Windows_Server-2019-Hungarian-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Express",
+        "Windows_Server-2019-Turkish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2019_Standard",
+        "Windows_Server-2019-English-Full-SQL_2017_Standard",
+        "Windows_Server-2019-English-Core-ContainersLatest",
+        "Windows_Server-2019-English-Full-SQL_2017_Express",
+        "Windows_Server-2019-Japanese-Full-Base",
+        "Windows_Server-2019-Russian-Full-Base",
+        "Windows_Server-2019-Chinese_Traditional-Full-Base",
+        "Windows_Server-2019-English-Core-Base",
+        "Windows_Server-2019-English-Full-Base",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Enterprise",
+        "Windows_Server-2019-English-Tesla",
+        "Windows_Server-2019-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2019-Spanish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2019-English-STIG-Full",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2016_SP2_Enterprise",
+        "Windows_Server-2019-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2019-Portugese_Portugal-Full-Base",
+        "Windows_Server-2019-Swedish-Full-Base",
+        "Windows_Server-2019-English-Full-SQL_2022_Express",
+        "Windows_Server-2019-Japanese-Full-SQL_2022_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2022_Web",
+        "Windows_Server-2019-English-Full-SQL_2019_Web",
+        "Windows_Server-2019-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2019-Portugese_Brazil-Full-Base",
+        "Windows_Server-2019-English-Full-ContainersLatest",
+        "Windows_Server-2019-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2019-English-Full-SQL_2019_Express",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2019-English-Full-SQL_2016_SP3_Express",
+        "Windows_Server-2019-English-STIG-Core",
+        "Windows_Server-2019-English-Core-ECS_Optimized",
+        "Windows_Server-2019-English-Full-SQL_2022_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2019-English-Full-ECS_Optimized",
+        "Windows_Server-2019-English-Deep-Learning",
+        "Windows_Server-2019-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2019-Czech-Full-Base",
+        "Windows_Server-2019-Polish-Full-Base",
+        "Windows_Server-2019-German-Full-Base",
+        "Windows_Server-2019-Dutch-Full-Base",
+        "Windows_Server-2022-English-STIG-Full",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Web",
+        "Windows_Server-2022-English-Full-SQL_2022_Web",
+        "Windows_Server-2022-English-STIG-Core",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Enterprise",
+        "Windows_Server-2022-Portuguese_Brazil-Full-Base",
+        "Windows_Server-2022-Italian-Full-Base",
+        "Windows_Server-2022-English-Full-ContainersLatest",
+        "Windows_Server-2022-Russian-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Express",
+        "Windows_Server-2022-Polish-Full-Base",
+        "Windows_Server-2022-English-Core-Base",
+        "Windows_Server-2022-Hungarian-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2017_Express",
+        "Windows_Server-2022-German-Full-Base",
+        "Windows_Server-2022-English-Core-ContainersLatest",
+        "Windows_Server-2022-English-Full-SQL_2019_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Web",
+        "Windows_Server-2022-English-Full-SQL_2017_Web",
+        "Windows_Server-2022-Japanese-Full-Base",
+        "Windows_Server-2022-Korean-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Enterprise",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Standard",
+        "Windows_Server-2022-Chinese_Simplified-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Web",
+        "Windows_Server-2022-Spanish-Full-Base",
+        "Windows_Server-2022-English-Core-ECS_Optimized",
+        "Windows_Server-2022-English-Full-SQL_2017_Standard",
+        "Windows_Server-2022-Chinese_Traditional-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2019_Enterprise",
+        "Windows_Server-2022-French-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2017_Standard",
+        "Windows_Server-2022-English-Full-Base",
+        "Windows_Server-2022-Japanese-Full-SQL_2019_Web",
+        "Windows_Server-2022-Turkish-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2017_Enterprise",
+        "Windows_Server-2022-Portuguese_Portugal-Full-Base",
+        "Windows_Server-2022-Czech-Full-Base",
+        "Windows_Server-2022-English-Full-ECS_Optimized",
+        "Windows_Server-2022-Dutch-Full-Base",
+        "Windows_Server-2022-Swedish-Full-Base",
+        "Windows_Server-2022-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2022-English-Full-SQL_2022_Express",
+        "Windows_Server-2022-English-Full-SQL_2022_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Standard",
+        "Windows_Server-2022-Japanese-Full-SQL_2022_Enterprise",
+        "Windows_Server-2025-Chinese_Simplified-Full-Base",
+        "Windows_Server-2025-Chinese_Traditional-Full-Base",
+        "Windows_Server-2025-English-Core-Base",
+        "Windows_Server-2025-English-Full-Base",
+        "Windows_Server-2025-English-Full-SQL_2022_Enterprise",
+        "Windows_Server-2025-English-Full-SQL_2022_Express",
+        "Windows_Server-2025-English-Full-SQL_2022_Standard",
+        "Windows_Server-2025-English-Full-SQL_2022_Web",
+        "Windows_Server-2025-Japanese-Full-Base",
+        "Windows_Server-2025-Korean-Full-Base"
+      ],
+      "WorkerType": [
+        "Standard",
+        "G.025X",
+        "G.1X",
+        "G.2X",
+        "G.4X",
+        "G.8X",
+        "Z.2X"
+      ],
+      "WorkflowAction": [
+        "ApplyImageConfigurations",
+        "BootstrapInstanceForContainer",
+        "CollectImageMetadata",
+        "CollectImageScanFindings",
+        "CreateImage",
+        "DistributeImage",
+        "ExecuteComponents",
+        "ExecuteStateMachine",
+        "LaunchInstance",
+        "ModifyImageAttributes",
+        "RunCommand",
+        "RegisterImage",
+        "RunSysPrep",
+        "SanitizeInstance",
+        "TerminateInstance",
+        "WaitForAction",
+        "WaitForSSMAgent"
+      ],
+      "WorkflowOnFailure": [
+        "Abort",
+        "Continue"
+      ],
+      "WorkflowParameterType": [
+        "boolean",
+        "integer",
+        "string",
+        "stringList"
+      ],
+      "WorkflowSchemaVersion": [
+        "1.0"
+      ],
+      "WorkflowType": [
+        "BUILD",
+        "TEST",
+        "DISTRIBUTION"
+      ],
+      "WriteParallel": [
+        "on",
+        "off"
+      ],
+      "XffHeaderProcessingMode": [
+        "append",
+        "preserve",
+        "remove"
+      ]
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/constants.ts
+var RESOURCE_SYMBOL, JSII_RUNTIME_SYMBOL2;
+var init_constants = __esm({
+  "../../aws-cdk-lib/core/lib/constants.ts"() {
+    "use strict";
+    RESOURCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.Resource");
+    JSII_RUNTIME_SYMBOL2 = /* @__PURE__ */ Symbol.for("jsii.rtti");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/metadata-type.ts
+var init_metadata_type = __esm({
+  "../../aws-cdk-lib/core/lib/metadata-type.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/metadata-resource.ts
+function addConstructMetadata(construct, props) {
+  try {
+    addPropsAsMetadata(construct, "aws:cdk:analytics:construct" /* CONSTRUCT */, props);
+  } catch (e) {
+    Annotations.of(construct).addWarningV2("@aws-cdk/core:addConstructMetadataFailed", `Failed to add construct metadata for node [${construct.node.id}]. Reason: ${e}`);
+  }
+}
+function addMethodMetadata(scope, methodName, props) {
+  try {
+    addPropsAsMetadata(scope, "aws:cdk:analytics:method" /* METHOD */, {
+      [methodName]: props
+    });
+  } catch (e) {
+    Annotations.of(scope).addWarningV2("@aws-cdk/core:addMethodMetadataFailed", `Failed to add method metadata for node [${scope.node.id}], method name ${methodName}. Reason: ${e}`);
+  }
+}
+function MethodMetadata() {
+  return function(originalMethod, context) {
+    if (typeof originalMethod !== "function") {
+      return originalMethod;
+    }
+    return function(...args) {
+      if (this instanceof import_constructs2.Construct) {
+        addMethodMetadata(this, context.name.toString(), args);
+      }
+      return originalMethod.apply(this, args);
+    };
+  };
+}
+function addPropsAsMetadata(construct, type, props) {
+  const telemetryEnabled = FeatureFlags.of(construct).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false;
+  if (!telemetryEnabled) {
+    return;
+  }
+  const fqn = construct.constructor[JSII_RUNTIME_SYMBOL2].fqn;
+  construct.node.addMetadata(type, redactMetadata(fqn, props));
+}
+function redactMetadata(fqn, data) {
+  const fqnParts = fqn.replace(/[-_]/g, "-").split(".");
+  if (fqnParts.length !== 3) {
+    return "*";
+  }
+  const module2 = fqnParts.slice(0, 2).join(".");
+  const name = fqnParts[2];
+  if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS).includes(module2)) {
+    return "*";
+  }
+  if (!Object.keys(AWS_CDK_CONSTRUCTOR_PROPS[module2]).includes(name)) {
+    return "*";
+  }
+  const allowedKeys = AWS_CDK_CONSTRUCTOR_PROPS[module2][name];
+  return redactTelemetryDataHelper(allowedKeys, data);
+}
+function redactTelemetryDataHelper(allowedKeys, data) {
+  if (allowedKeys === void 0) {
+    return "*";
+  }
+  if (typeof data === "boolean") {
+    return data;
+  }
+  if (isEnumValue(allowedKeys, data)) {
+    return data;
+  }
+  if (typeof data === "string" || typeof data === "number") {
+    return "*";
+  }
+  if (data && Token.isUnresolved(data)) {
+    return "*";
+  }
+  if (Array.isArray(data)) {
+    return data.map((item, index) => {
+      if (Array.isArray(allowedKeys)) {
+        return redactTelemetryDataHelper(allowedKeys[index], item);
+      }
+      return redactTelemetryDataHelper(allowedKeys, item);
+    });
+  }
+  if (data && Object.keys(data).length > 0 && typeof data === "object") {
+    if (import_constructs2.Construct.isConstruct(data)) {
+      return "*";
+    }
+    const redactedResult = {};
+    for (const [key, value] of Object.entries(data)) {
+      if (key && Token.isUnresolved(key)) {
+        continue;
+      }
+      if (allowedKeys && typeof allowedKeys === "object") {
+        if (!Object.keys(allowedKeys).includes(key)) {
+          continue;
+        }
+        const allowedValue = allowedKeys[key];
+        if (allowedValue === "*") {
+          redactedResult[key] = "*";
+          continue;
+        }
+        redactedResult[key] = redactTelemetryDataHelper(allowedKeys[key], value);
+      }
+    }
+    return redactedResult;
+  }
+  return "*";
+}
+function isEnumValue(allowedKeys, value) {
+  if (typeof allowedKeys !== "string" || allowedKeys === "*") {
+    return false;
+  }
+  if (!Object.keys(AWS_CDK_ENUMS).includes(allowedKeys)) {
+    return false;
+  }
+  return AWS_CDK_ENUMS[allowedKeys].includes(value);
+}
+var import_constructs2;
+var init_metadata_resource = __esm({
+  "../../aws-cdk-lib/core/lib/metadata-resource.ts"() {
+    "use strict";
+    import_constructs2 = __toESM(require_lib4());
+    init_classes();
+    init_enums();
+    init_annotations();
+    init_constants();
+    init_feature_flags();
+    init_metadata_type();
+    init_token();
+    init_cx_api();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/no-box-stack-traces.ts
+function noBoxStackTraces(constructor) {
+  const NoBoxStackTraces = class extends constructor {
+    constructor(...args) {
+      Box.disableStackTraceCollection();
+      try {
+        super(...args);
+      } finally {
+        Box.enableStackTraceCollection();
+      }
+    }
+  };
+  Object.defineProperty(NoBoxStackTraces, "name", {
+    value: constructor.name,
+    writable: false
+  });
+  return NoBoxStackTraces;
+}
+var init_no_box_stack_traces = __esm({
+  "../../aws-cdk-lib/core/lib/no-box-stack-traces.ts"() {
+    "use strict";
+    init_box();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectors.ts
+var PropertyInjectors;
+var init_prop_injectors = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectors.ts"() {
+    "use strict";
+    init_prop_injectors_helpers();
+    PropertyInjectors = class _PropertyInjectors {
+      /**
+       * Return whether the given object has a PropertyInjectors property.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static hasPropertyInjectors(x) {
+        return x !== null && typeof x === "object" && PROPERTY_INJECTORS_SYMBOL in x;
+      }
+      /**
+       * Returns the `PropertyInjectors` object associated with a construct scope.
+       * If `PropertyInjectors` object doesn't exist on this scope, then it creates one and attaches it to scope.
+       * @param scope The scope for which these PropertyInjectors will apply.
+       */
+      static of(scope) {
+        let propInjectors = scope[PROPERTY_INJECTORS_SYMBOL];
+        if (!propInjectors) {
+          propInjectors = new _PropertyInjectors(scope);
+          Object.defineProperty(scope, PROPERTY_INJECTORS_SYMBOL, {
+            value: propInjectors,
+            configurable: false,
+            enumerable: false
+          });
+        }
+        return propInjectors;
+      }
+      /**
+       * The scope attached to Injectors.
+       */
+      scope;
+      _injectors;
+      constructor(scope) {
+        this._injectors = /* @__PURE__ */ new Map();
+        this.scope = scope;
+      }
+      /**
+       * Add a list of  IPropertyInjectors to this collection of PropertyInjectors.
+       * @param propsInjectors - a list of IPropertyInjector
+       */
+      add(...propsInjectors) {
+        for (const pi of propsInjectors) {
+          this._injectors.set(pi.constructUniqueId, pi);
+        }
+      }
+      /**
+       * Get the PropertyInjector that is registered to the Construct's uniqueId.
+       * @param uniqueId - the construct uniqueId
+       * @returns - the IPropertyInjector for that construct uniqueId
+       */
+      for(uniqueId) {
+        return this._injectors.get(uniqueId);
+      }
+      /**
+       * This returns a list of the Constructs that are supporting by this PropertyInjectors.
+       * @returns a list of string showing the supported Constructs.
+       */
+      supportedClasses() {
+        return Array.from(this._injectors.keys());
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts
+function applyInjectors(uniqueId, originalProps, context) {
+  const injector = findInjectorFromConstruct(context.scope, uniqueId);
+  if (injector === void 0) {
+    return originalProps;
+  }
+  return injector.inject(originalProps, {
+    scope: context.scope,
+    id: context.id
+  });
+}
+function findInjectorFromConstruct(scope, uniqueId) {
+  const result = _lookup(scope);
+  if (result === void 0) {
+    return void 0;
+  }
+  const injectors = _getInjectorsFromConstruct(result);
+  const propsInjector = injectors.for(uniqueId);
+  if (!propsInjector) {
+    const parent = import_constructs3.Node.of(scope).scope;
+    if (parent) {
+      return findInjectorFromConstruct(parent, uniqueId);
+    }
+  }
+  return propsInjector;
+  function _getInjectorsFromConstruct(c) {
+    const k = PROPERTY_INJECTORS_SYMBOL;
+    return c[k];
+  }
+  function _lookup(c) {
+    if (PropertyInjectors.hasPropertyInjectors(c)) {
+      return c;
+    }
+    const n = import_constructs3.Node.of(c);
+    if (n === void 0) {
+      return void 0;
+    }
+    const _scope = n.scope;
+    if (!_scope) {
+      return void 0;
+    }
+    return _lookup(_scope);
+  }
+}
+var import_constructs3, PROPERTY_INJECTORS_SYMBOL;
+var init_prop_injectors_helpers = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectors-helpers.ts"() {
+    "use strict";
+    import_constructs3 = __toESM(require_lib4());
+    init_prop_injectors();
+    PROPERTY_INJECTORS_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.PropertyInjectors");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/prop-injectable.ts
+function propertyInjectable(constructor) {
+  const PropertyInjectable = class extends constructor {
+    constructor(scope, id, props, ...args) {
+      const uniqueId = constructor.PROPERTY_INJECTION_ID;
+      if (uniqueId === void 0) {
+        throw new AssumptionError(lit`ConstructStaticPropertyInjectionIdProperty`, "Construct must have a static PROPERTY_INJECTION_ID property");
+      }
+      props = applyInjectors(uniqueId, props, {
+        scope,
+        id
+      });
+      super(scope, id, props, ...args);
+    }
+  };
+  Object.defineProperty(PropertyInjectable, "name", {
+    value: constructor.name,
+    writable: false
+  });
+  return PropertyInjectable;
+}
+var init_prop_injectable = __esm({
+  "../../aws-cdk-lib/core/lib/prop-injectable.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_prop_injectors_helpers();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/removal-policy.ts
+var init_removal_policy = __esm({
+  "../../aws-cdk-lib/core/lib/removal-policy.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/util.ts
+function capitalizePropertyNames(construct, obj) {
+  const stack = stackOf(construct);
+  obj = stack.resolve(obj);
+  if (typeof obj !== "object") {
+    return obj;
+  }
+  if (Array.isArray(obj)) {
+    return obj.map((x) => capitalizePropertyNames(construct, x));
+  }
+  const newObj = {};
+  for (const key of Object.keys(obj)) {
+    const value = obj[key];
+    const first = key.charAt(0).toUpperCase();
+    const newKey = first + key.slice(1);
+    newObj[newKey] = capitalizePropertyNames(construct, value);
+  }
+  return newObj;
+}
+function ignoreEmpty(obj) {
+  return new PostResolveToken(obj, (o) => {
+    if (o == null) {
+      return o;
+    }
+    if (Array.isArray(o) && o.length === 0) {
+      return void 0;
+    }
+    if (typeof o === "object" && Object.keys(o).length === 0) {
+      return void 0;
+    }
+    return o;
+  });
+}
+function filterUndefined(obj) {
+  if (Array.isArray(obj)) {
+    return obj.filter((x) => x != null).map((x) => filterUndefined(x));
+  }
+  if (typeof obj === "object") {
+    const ret = {};
+    for (const [key, value] of Object.entries(obj)) {
+      if (value == null) {
+        continue;
+      }
+      ret[key] = filterUndefined(value);
+    }
+    return ret;
+  }
+  return obj;
+}
+var PostResolveToken;
+var init_util = __esm({
+  "../../aws-cdk-lib/core/lib/util.ts"() {
+    "use strict";
+    init_core_construct_finders();
+    init_intrinsic();
+    PostResolveToken = class extends Intrinsic {
+      constructor(value, processor) {
+        super(value, { stackTrace: false });
+        this.processor = processor;
+      }
+      processor;
+      resolve(context) {
+        context.registerPostProcessor(this);
+        return super.resolve(context);
+      }
+      postProcess(o, context) {
+        return this.processor(o, context);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/arn.ts
+function parseTokenArn(arnToken, arnFormat) {
+  const components = Fn.split(":", arnToken);
+  const partition = Fn.select(1, components).toString();
+  const service = Fn.select(2, components).toString();
+  const region = Fn.select(3, components).toString();
+  const account = Fn.select(4, components).toString();
+  let resource;
+  let resourceName;
+  let sep3;
+  if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */ || arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) {
+    resource = Fn.select(5, components);
+    if (arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */) {
+      resourceName = Fn.select(6, components);
+      sep3 = ":";
+    } else {
+      resourceName = void 0;
+      sep3 = void 0;
+    }
+  } else {
+    const lastComponents = Fn.split("/", Fn.select(5, components));
+    if (arnFormat === "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */) {
+      resource = Fn.select(0, lastComponents);
+      resourceName = Fn.select(1, lastComponents);
+    } else {
+      resource = Fn.select(1, lastComponents);
+      resourceName = Fn.select(2, lastComponents);
+    }
+    sep3 = "/";
+  }
+  return { partition, service, region, account, resource, resourceName, sep: sep3, arnFormat };
+}
+function parseArnShape(arn) {
+  const looksLikeArn = arn.startsWith("arn:");
+  if (!looksLikeArn) {
+    if (Token.isUnresolved(arn)) {
+      return "token";
+    } else {
+      throw new UnscopedValidationError(lit`ArnsMustStartWithArn`, `ARNs must start with "arn:" and have at least 6 components: ${arn}`);
+    }
+  }
+  const components = arn.split(":");
+  const partition = components.length > 1 ? components[1] : void 0;
+  if (!partition) {
+    throw new UnscopedValidationError(lit`ArnPartitionRequired`, "The `partition` component (2nd component) of an ARN is required: " + arn);
+  }
+  const service = components.length > 2 ? components[2] : void 0;
+  if (!service) {
+    throw new UnscopedValidationError(lit`ArnServiceRequired`, "The `service` component (3rd component) of an ARN is required: " + arn);
+  }
+  const resource = components.length > 5 ? components[5] : void 0;
+  if (!resource) {
+    throw new UnscopedValidationError(lit`ArnResourceRequired`, "The `resource` component (6th component) of an ARN is required: " + arn);
+  }
+  return components;
+}
+var Arn;
+var init_arn = __esm({
+  "../../aws-cdk-lib/core/lib/arn.ts"() {
+    "use strict";
+    init_cfn_fn();
+    init_errors();
+    init_literal_string();
+    init_token();
+    init_util();
+    Arn = class _Arn {
+      /**
+       * Creates an ARN from components.
+       *
+       * If `partition`, `region` or `account` are not specified, the stack's
+       * partition, region and account will be used.
+       *
+       * If any component is the empty string, an empty string will be inserted
+       * into the generated ARN at the location that component corresponds to.
+       *
+       * The ARN will be formatted as follows:
+       *
+       *   arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}
+       *
+       * The required ARN pieces that are omitted will be taken from the stack that
+       * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope
+       * can be 'undefined'.
+       */
+      static format(components, stack) {
+        const partition = components.partition ?? stack?.partition;
+        const region = components.region ?? stack?.region;
+        const account = components.account ?? stack?.account;
+        if (partition == null || region == null || account == null) {
+          throw new UnscopedValidationError(lit`ArnFormatMissingStackInfo`, `Arn.format: partition (${partition}), region (${region}), and account (${account}) must all be passed if stack is not passed.`);
+        }
+        const sep3 = components.sep ?? (components.arnFormat === "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */ ? ":" : "/");
+        const values = [
+          "arn",
+          ":",
+          partition,
+          ":",
+          components.service,
+          ":",
+          region,
+          ":",
+          account,
+          ":",
+          ...components.arnFormat === "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */ ? ["/"] : [],
+          components.resource
+        ];
+        if (sep3 !== "/" && sep3 !== ":" && sep3 !== "") {
+          throw new UnscopedValidationError(lit`InvalidResourcePathSeparator`, 'resourcePathSep may only be ":", "/" or an empty string');
+        }
+        if (components.resourceName != null) {
+          values.push(sep3);
+          values.push(components.resourceName);
+        }
+        return values.join("");
+      }
+      /**
+       * Given an ARN, parses it and returns components.
+       *
+       * IF THE ARN IS A CONCRETE STRING...
+       *
+       * ...it will be parsed and validated. The separator (`sep`) will be set to '/'
+       * if the 6th component includes a '/', in which case, `resource` will be set
+       * to the value before the '/' and `resourceName` will be the rest. In case
+       * there is no '/', `resource` will be set to the 6th components and
+       * `resourceName` will be set to the rest of the string.
+       *
+       * IF THE ARN IS A TOKEN...
+       *
+       * ...it cannot be validated, since we don't have the actual value yet at the
+       * time of this function call. You will have to supply `sepIfToken` and
+       * whether or not ARNs of the expected format usually have resource names
+       * in order to parse it properly. The resulting `ArnComponents` object will
+       * contain tokens for the subexpressions of the ARN, not string literals.
+       *
+       * If the resource name could possibly contain the separator char, the actual
+       * resource name cannot be properly parsed. This only occurs if the separator
+       * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs,
+       * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a
+       * Tokenized ARN, you must know the resource type and call
+       * `Arn.extractResourceName`.
+       *
+       * @param arn The ARN to parse
+       * @param sepIfToken The separator used to separate resource from resourceName
+       * @param hasName Whether there is a name component in the ARN at all. For
+       * example, SNS Topics ARNs have the 'resource' component contain the topic
+       * name, and no 'resourceName' component.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       * components of the ARN.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       *      components of the ARN.
+       *
+       * @deprecated use split instead
+       */
+      static parse(arn, sepIfToken = "/", hasName = true) {
+        let arnFormat;
+        if (!hasName) {
+          arnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+        } else {
+          arnFormat = sepIfToken === "/" ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */;
+        }
+        return this.split(arn, arnFormat);
+      }
+      /**
+       * Splits the provided ARN into its components.
+       * Works both if 'arn' is a string like 'arn:aws:s3:::bucket',
+       * and a Token representing a dynamic CloudFormation expression
+       * (in which case the returned components will also be dynamic CloudFormation expressions,
+       * encoded as Tokens).
+       *
+       * @param arn the ARN to split into its components
+       * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses
+       */
+      static split(arn, arnFormat) {
+        const components = parseArnShape(arn);
+        if (components === "token") {
+          return parseTokenArn(arn, arnFormat);
+        }
+        const [, partition, service, region, account, resourceTypeOrName, ...rest] = components;
+        let resource;
+        let resourceName;
+        let sep3;
+        let resourcePartStartIndex = 0;
+        let detectedArnFormat;
+        let slashIndex = resourceTypeOrName.indexOf("/");
+        if (slashIndex === 0) {
+          slashIndex = resourceTypeOrName.indexOf("/", 1);
+          resourcePartStartIndex = 1;
+          detectedArnFormat = "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */;
+        }
+        if (slashIndex !== -1) {
+          if (arnFormat === "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */) {
+            sep3 = void 0;
+            slashIndex = -1;
+            detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+          } else {
+            sep3 = "/";
+            detectedArnFormat = resourcePartStartIndex === 0 ? "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */ : "arn:aws:service:region:account:/resource/resourceName" /* SLASH_RESOURCE_SLASH_RESOURCE_NAME */;
+          }
+        } else if (rest.length > 0) {
+          sep3 = ":";
+          slashIndex = -1;
+          detectedArnFormat = "arn:aws:service:region:account:resource:resourceName" /* COLON_RESOURCE_NAME */;
+        } else {
+          sep3 = void 0;
+          detectedArnFormat = "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */;
+        }
+        if (slashIndex !== -1) {
+          resource = resourceTypeOrName.substring(resourcePartStartIndex, slashIndex);
+          resourceName = resourceTypeOrName.substring(slashIndex + 1);
+        } else {
+          resource = resourceTypeOrName;
+        }
+        if (rest.length > 0) {
+          if (!resourceName) {
+            resourceName = "";
+          } else {
+            resourceName += ":";
+          }
+          resourceName += rest.join(":");
+        }
+        return filterUndefined({
+          service: service || void 0,
+          resource: resource || void 0,
+          partition: partition || void 0,
+          region,
+          account,
+          resourceName,
+          sep: sep3,
+          arnFormat: detectedArnFormat
+        });
+      }
+      /**
+       * Extract the full resource name from an ARN
+       *
+       * Necessary for resource names (paths) that may contain the separator, like
+       * `arn:aws:iam::111111111111:role/path/to/role/name`.
+       *
+       * Only works if we statically know the expected `resourceType` beforehand, since we're going
+       * to use that to split the string on ':/' (and take the right-hand side).
+       *
+       * We can't extract the 'resourceType' from the ARN at hand, because CloudFormation Expressions
+       * only allow literals in the 'separator' argument to `{ Fn::Split }`, and so it can't be
+       * `{ Fn::Select: [5, { Fn::Split: [':', ARN] }}`.
+       *
+       * Only necessary for ARN formats for which the type-name separator is `/`.
+       */
+      static extractResourceName(arn, resourceType) {
+        const components = parseArnShape(arn);
+        if (components === "token") {
+          return Fn.select(1, Fn.split(`:${resourceType}/`, arn));
+        }
+        const parsed = _Arn.split(arn, "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */);
+        if (!Token.isUnresolved(parsed.resource) && parsed.resource !== resourceType) {
+          throw new UnscopedValidationError(lit`ExpectedResourceType`, `Expected resource type '${resourceType}' in ARN, got '${parsed.resource}' in '${arn}'`);
+        }
+        if (!parsed.resourceName) {
+          throw new UnscopedValidationError(lit`ExpectedResourceName`, `Expected resource name in ARN, didn't find one: '${arn}'`);
+        }
+        return parsed.resourceName;
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts
+function memoizedGetter(target, _context) {
+  let m;
+  function replacementMethod() {
+    if (!m) {
+      m = /* @__PURE__ */ new WeakMap();
+    }
+    if (m.has(this)) {
+      return m.get(this);
+    }
+    const ret = target.call(this);
+    m.set(this, ret);
+    return ret;
+  }
+  return replacementMethod;
+}
+var init_memoize = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/memoize.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/md5.ts
+function md5hash(x) {
+  if (!_impl) {
+    try {
+      crypto.createHash("md5");
+      _impl = cryptoMd5;
+    } catch {
+      _impl = jsMd5;
+    }
+  }
+  return _impl(x);
+}
+function cryptoMd5(x) {
+  const hash = crypto.createHash("md5");
+  hash.update(x);
+  return hash.digest("hex");
+}
+function jsMd5(s) {
+  return hex(md5Buffer(Buffer.from(s, "utf-8")));
+}
+function md5Round(x, k) {
+  let a = x[0], b = x[1], c = x[2], d = x[3];
+  a = F(a, b, c, d, k[0], 7, -680876936);
+  d = F(d, a, b, c, k[1], 12, -389564586);
+  c = F(c, d, a, b, k[2], 17, 606105819);
+  b = F(b, c, d, a, k[3], 22, -1044525330);
+  a = F(a, b, c, d, k[4], 7, -176418897);
+  d = F(d, a, b, c, k[5], 12, 1200080426);
+  c = F(c, d, a, b, k[6], 17, -1473231341);
+  b = F(b, c, d, a, k[7], 22, -45705983);
+  a = F(a, b, c, d, k[8], 7, 1770035416);
+  d = F(d, a, b, c, k[9], 12, -1958414417);
+  c = F(c, d, a, b, k[10], 17, -42063);
+  b = F(b, c, d, a, k[11], 22, -1990404162);
+  a = F(a, b, c, d, k[12], 7, 1804603682);
+  d = F(d, a, b, c, k[13], 12, -40341101);
+  c = F(c, d, a, b, k[14], 17, -1502002290);
+  b = F(b, c, d, a, k[15], 22, 1236535329);
+  a = G(a, b, c, d, k[1], 5, -165796510);
+  d = G(d, a, b, c, k[6], 9, -1069501632);
+  c = G(c, d, a, b, k[11], 14, 643717713);
+  b = G(b, c, d, a, k[0], 20, -373897302);
+  a = G(a, b, c, d, k[5], 5, -701558691);
+  d = G(d, a, b, c, k[10], 9, 38016083);
+  c = G(c, d, a, b, k[15], 14, -660478335);
+  b = G(b, c, d, a, k[4], 20, -405537848);
+  a = G(a, b, c, d, k[9], 5, 568446438);
+  d = G(d, a, b, c, k[14], 9, -1019803690);
+  c = G(c, d, a, b, k[3], 14, -187363961);
+  b = G(b, c, d, a, k[8], 20, 1163531501);
+  a = G(a, b, c, d, k[13], 5, -1444681467);
+  d = G(d, a, b, c, k[2], 9, -51403784);
+  c = G(c, d, a, b, k[7], 14, 1735328473);
+  b = G(b, c, d, a, k[12], 20, -1926607734);
+  a = H(a, b, c, d, k[5], 4, -378558);
+  d = H(d, a, b, c, k[8], 11, -2022574463);
+  c = H(c, d, a, b, k[11], 16, 1839030562);
+  b = H(b, c, d, a, k[14], 23, -35309556);
+  a = H(a, b, c, d, k[1], 4, -1530992060);
+  d = H(d, a, b, c, k[4], 11, 1272893353);
+  c = H(c, d, a, b, k[7], 16, -155497632);
+  b = H(b, c, d, a, k[10], 23, -1094730640);
+  a = H(a, b, c, d, k[13], 4, 681279174);
+  d = H(d, a, b, c, k[0], 11, -358537222);
+  c = H(c, d, a, b, k[3], 16, -722521979);
+  b = H(b, c, d, a, k[6], 23, 76029189);
+  a = H(a, b, c, d, k[9], 4, -640364487);
+  d = H(d, a, b, c, k[12], 11, -421815835);
+  c = H(c, d, a, b, k[15], 16, 530742520);
+  b = H(b, c, d, a, k[2], 23, -995338651);
+  a = I(a, b, c, d, k[0], 6, -198630844);
+  d = I(d, a, b, c, k[7], 10, 1126891415);
+  c = I(c, d, a, b, k[14], 15, -1416354905);
+  b = I(b, c, d, a, k[5], 21, -57434055);
+  a = I(a, b, c, d, k[12], 6, 1700485571);
+  d = I(d, a, b, c, k[3], 10, -1894986606);
+  c = I(c, d, a, b, k[10], 15, -1051523);
+  b = I(b, c, d, a, k[1], 21, -2054922799);
+  a = I(a, b, c, d, k[8], 6, 1873313359);
+  d = I(d, a, b, c, k[15], 10, -30611744);
+  c = I(c, d, a, b, k[6], 15, -1560198380);
+  b = I(b, c, d, a, k[13], 21, 1309151649);
+  a = I(a, b, c, d, k[4], 6, -145523070);
+  d = I(d, a, b, c, k[11], 10, -1120210379);
+  c = I(c, d, a, b, k[2], 15, 718787259);
+  b = I(b, c, d, a, k[9], 21, -343485551);
+  x[0] = add32(a, x[0]);
+  x[1] = add32(b, x[1]);
+  x[2] = add32(c, x[2]);
+  x[3] = add32(d, x[3]);
+}
+function cmn(q, a, b, x, s, t) {
+  a = add32(add32(a, q), add32(x, t));
+  return add32(a << s | a >>> 32 - s, b);
+}
+function F(a, b, c, d, x, s, t) {
+  return cmn(b & c | ~b & d, a, b, x, s, t);
+}
+function G(a, b, c, d, x, s, t) {
+  return cmn(b & d | c & ~d, a, b, x, s, t);
+}
+function H(a, b, c, d, x, s, t) {
+  return cmn(b ^ c ^ d, a, b, x, s, t);
+}
+function I(a, b, c, d, x, s, t) {
+  return cmn(c ^ (b | ~d), a, b, x, s, t);
+}
+function md5Buffer(buf) {
+  let n = buf.length, state = [1732584193, -271733879, -1732584194, 271733878], i = 0;
+  for (; i + 64 <= n; i += 64) {
+    md5Round(state, bytesToWordsBuf(buf, i));
+  }
+  const remainingBytes = n - i;
+  const padding = Buffer.alloc(64 - remainingBytes < 9 ? 128 : 64);
+  buf.copy(padding, 0, i);
+  padding.writeUint8(128, remainingBytes);
+  const bitLength = n * 8;
+  padding.writeUint32LE(n << 3, padding.length - 8);
+  if (bitLength >= 4294967295) {
+    padding.writeUint32LE(Math.floor(bitLength / 4294967295), padding.length - 4);
+  }
+  md5Round(state, bytesToWordsBuf(padding, 0));
+  if (padding.length > 64) {
+    md5Round(state, bytesToWordsBuf(padding, 64));
+  }
+  return state;
+}
+function bytesToWordsBuf(buf, byteOffset) {
+  const ret = new Array(16);
+  let i = 0, j = byteOffset;
+  for (; i < 16; i++, j += 4) {
+    ret[i] = buf.readUint32LE(j);
+  }
+  return ret;
+}
+function hexify(n) {
+  const s = new Array();
+  for (let j = 0; j < 4; j++) {
+    s.push(hex_chr[n >>> j * 8 + 4 & 15] + hex_chr[n >>> j * 8 & 15]);
+  }
+  return s.join("");
+}
+function hex(x) {
+  const ret = new Array(x.length);
+  for (let i = 0; i < x.length; i++) ret[i] = hexify(x[i]);
+  return ret.join("");
+}
+function add32(a, b) {
+  return a + b & 4294967295;
+}
+var crypto, _impl, hex_chr;
+var init_md5 = __esm({
+  "../../aws-cdk-lib/core/lib/private/md5.ts"() {
+    "use strict";
+    crypto = __toESM(require("crypto"));
+    hex_chr = "0123456789abcdef".split("");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/unique-resource-name.ts
+function makeUniqueResourceName(components, options) {
+  const maxLength = options.maxLength ?? 256;
+  const separator = options.separator ?? "";
+  const prefix = options.prefix ?? "";
+  components = components.filter((x) => x !== HIDDEN_ID);
+  if (components.length === 0) {
+    throw new UnscopedValidationError(lit`UnableToUnableCalculateUnique`, "Unable to calculate a unique resource name for an empty set of components");
+  }
+  if (components.length === 1) {
+    const topLevelResource = prefix + removeNonAllowedSpecialCharacters(components[0], separator, options.allowedSpecialCharacters);
+    if (topLevelResource.length <= maxLength) {
+      return topLevelResource;
+    }
+  }
+  const hash = pathHash(components);
+  const human = prefix + removeDupes(components).filter((pathElement) => pathElement !== HIDDEN_FROM_HUMAN_ID).map((pathElement) => removeNonAllowedSpecialCharacters(pathElement, separator, options.allowedSpecialCharacters)).filter((pathElement) => pathElement).join(separator).concat(separator);
+  const maxhumanLength = maxLength - HASH_LEN;
+  return human.length > maxhumanLength ? `${splitInMiddle(human, maxhumanLength)}${hash}` : `${human}${hash}`;
+}
+function pathHash(path23) {
+  const md52 = md5hash(path23.join(PATH_SEP));
+  return md52.slice(0, HASH_LEN).toUpperCase();
+}
+function removeNonAllowedSpecialCharacters(s, _separator, allowedSpecialCharacters) {
+  const pattern = allowedSpecialCharacters ? `[^A-Za-z0-9${allowedSpecialCharacters}]` : "[^A-Za-z0-9]";
+  const regex = new RegExp(pattern, "g");
+  return s.replace(regex, "");
+}
+function removeDupes(path23) {
+  const ret = new Array();
+  for (const component of path23) {
+    if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) {
+      ret.push(component);
+    }
+  }
+  return ret;
+}
+function splitInMiddle(s, maxLength = MAX_LEN - HASH_LEN) {
+  const half = maxLength / 2;
+  return s.slice(0, half) + s.slice(-half);
+}
+var HIDDEN_FROM_HUMAN_ID, HIDDEN_ID, PATH_SEP, MAX_LEN, HASH_LEN;
+var init_unique_resource_name = __esm({
+  "../../aws-cdk-lib/core/lib/private/unique-resource-name.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_md5();
+    HIDDEN_FROM_HUMAN_ID = "Resource";
+    HIDDEN_ID = "Default";
+    PATH_SEP = "/";
+    MAX_LEN = 256;
+    HASH_LEN = 8;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/uniqueid.ts
+function makeUniqueId(components) {
+  components = components.filter((x) => x !== HIDDEN_ID2);
+  if (components.length === 0) {
+    throw new UnscopedValidationError(lit`UnableToCalculateUniqueId`, "Unable to calculate a unique id for an empty set of components");
+  }
+  const unresolvedTokens = components.filter((c) => unresolved(c));
+  if (unresolvedTokens.length > 0) {
+    throw new UnscopedValidationError(lit`ComponentsContainUnresolvedTokens`, `ID components may not include unresolved tokens: ${unresolvedTokens.join(",")}`);
+  }
+  if (components.length === 1) {
+    const candidate = removeNonAlphanumeric(components[0]);
+    if (candidate.length <= MAX_ID_LEN) {
+      return candidate;
+    }
+  }
+  const hash = pathHash2(components);
+  const human = removeDupes2(components).filter((x) => x !== HIDDEN_FROM_HUMAN_ID2).map(removeNonAlphanumeric).join("").slice(0, MAX_HUMAN_LEN);
+  return human + hash;
+}
+function pathHash2(path23) {
+  const md52 = md5hash(path23.join(PATH_SEP2));
+  return md52.slice(0, HASH_LEN2).toUpperCase();
+}
+function removeNonAlphanumeric(s) {
+  return s.replace(/[^A-Za-z0-9]/g, "");
+}
+function removeDupes2(path23) {
+  const ret = new Array();
+  for (const component of path23) {
+    if (ret.length === 0 || !ret[ret.length - 1].endsWith(component)) {
+      ret.push(component);
+    }
+  }
+  return ret;
+}
+var HIDDEN_FROM_HUMAN_ID2, HIDDEN_ID2, PATH_SEP2, HASH_LEN2, MAX_HUMAN_LEN, MAX_ID_LEN;
+var init_uniqueid = __esm({
+  "../../aws-cdk-lib/core/lib/private/uniqueid.ts"() {
+    "use strict";
+    init_errors();
+    init_encoding();
+    init_literal_string();
+    init_md5();
+    HIDDEN_FROM_HUMAN_ID2 = "Resource";
+    HIDDEN_ID2 = "Default";
+    PATH_SEP2 = "/";
+    HASH_LEN2 = 8;
+    MAX_HUMAN_LEN = 240;
+    MAX_ID_LEN = 255;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/names.ts
+function isTopLevelStack(x) {
+  return STACK_TYPE.isMarked(x) && !unresolved(x.stackName);
+}
+function findLastIndex(xs, pred) {
+  for (let i = xs.length - 1; i >= 0; i--) {
+    if (pred(xs[i])) {
+      return i;
+    }
+  }
+  return -1;
+}
+var import_constructs4, Names;
+var init_names = __esm({
+  "../../aws-cdk-lib/core/lib/names.ts"() {
+    "use strict";
+    import_constructs4 = __toESM(require_lib4());
+    init_core_construct_finders();
+    init_encoding();
+    init_unique_resource_name();
+    init_uniqueid();
+    Names = class {
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. The identifier includes a human readable portion rendered
+       * from the path components and a hash suffix. uniqueId is not unique if multiple
+       * copies of the stack are deployed. Prefer using uniqueResourceName().
+       *
+       * @param construct The construct
+       * @returns a unique id based on the construct path
+       */
+      static uniqueId(construct) {
+        const node = import_constructs4.Node.of(construct);
+        const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id);
+        return components.length > 0 ? makeUniqueId(components) : "";
+      }
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. The identifier includes a human readable portion rendered
+       * from the path components and a hash suffix.
+       *
+       * TODO (v2): replace with API to use `constructs.Node`.
+       *
+       * @param node The construct node
+       * @returns a unique id based on the construct path
+       */
+      static nodeUniqueId(node) {
+        const components = node.scopes.slice(1).map((c) => import_constructs4.Node.of(c).id);
+        return components.length > 0 ? makeUniqueId(components) : "";
+      }
+      /**
+       * Returns a CloudFormation-compatible unique identifier for a construct based
+       * on its path. This function finds the stackName of the parent stack (non-nested)
+       * to the construct, and the ids of the components in the construct path.
+       *
+       * The user can define allowed special characters, a separator between the elements,
+       * and the maximum length of the resource name. The name includes a human readable portion rendered
+       * from the path components, with or without user defined separators, and a hash suffix.
+       * If the resource name is longer than the maximum length, it is trimmed in the middle.
+       *
+       * @param construct The construct
+       * @param options Options for defining the unique resource name
+       * @returns a unique resource name based on the construct path
+       */
+      static uniqueResourceName(construct, options) {
+        const node = import_constructs4.Node.of(construct);
+        const scopes = node.scopes;
+        const isStack = scopes.map(isTopLevelStack);
+        const lastStackIndex = Math.max(findLastIndex(isStack, (x) => x), 0);
+        const componentsPath = node.scopes.slice(lastStackIndex).map((component) => isTopLevelStack(component) ? component.stackName : import_constructs4.Node.of(component).id);
+        return makeUniqueResourceName(componentsPath, options);
+      }
+      /**
+       * Return the construct path of the given construct, starting at the nearest enclosing Stack
+       *
+       * Skips over Nested Stacks, in other words Nested Stacks are included in the construct
+       * paths.
+       */
+      static stackRelativeConstructPath(construct) {
+        const scopes = construct.node.scopes;
+        const isStack = scopes.map(isTopLevelStack);
+        const lastStackIndex = findLastIndex(isStack, (x) => x);
+        return scopes.slice(lastStackIndex + 1).map((x) => x.node.id).join("/");
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/physical-name-generator.ts
+function generatePhysicalName(resource) {
+  const stack = stackOf(resource);
+  const stackPart = new PrefixNamePart(stack.stackName, 25);
+  const idPart = new SuffixNamePart(Names.nodeUniqueId(resource.node), 24);
+  const region = stack.region;
+  if (Token.isUnresolved(region) || !region) {
+    throw new ValidationError(lit`CannotGeneratePhysicalNameRegionUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the region is un-resolved or missing`, resource);
+  }
+  const account = stack.account;
+  if (Token.isUnresolved(account) || !account) {
+    throw new ValidationError(lit`CannotGeneratePhysicalNameAccountUnresolved`, `Cannot generate a physical name for ${import_constructs5.Node.of(resource).path}, because the account is un-resolved or missing`, resource);
+  }
+  const parts = [stackPart, idPart].map((part) => part.generate());
+  const hashLength = 12;
+  const sha256 = crypto2.createHash("sha256").update(stackPart.bareStr).update(idPart.bareStr).update(region).update(account);
+  const hash = sha256.digest("hex").slice(0, hashLength);
+  const ret = [...parts, hash].join("");
+  return ret.toLowerCase();
+}
+function isGeneratedWhenNeededMarker(val2) {
+  const token = TokenMap.instance().lookupString(val2);
+  return !!token && GENERATE_IF_NEEDED_SYMBOL in token;
+}
+var crypto2, import_constructs5, NamePart, PrefixNamePart, SuffixNamePart, GENERATE_IF_NEEDED_SYMBOL, GeneratedWhenNeededMarker;
+var init_physical_name_generator = __esm({
+  "../../aws-cdk-lib/core/lib/private/physical-name-generator.ts"() {
+    "use strict";
+    crypto2 = __toESM(require("crypto"));
+    import_constructs5 = __toESM(require_lib4());
+    init_token_map();
+    init_errors();
+    init_names();
+    init_token();
+    init_core_construct_finders();
+    init_literal_string();
+    NamePart = class {
+      bareStr;
+      constructor(bareStr) {
+        this.bareStr = bareStr;
+      }
+    };
+    PrefixNamePart = class extends NamePart {
+      constructor(bareStr, prefixLength) {
+        super(bareStr);
+        this.prefixLength = prefixLength;
+      }
+      prefixLength;
+      generate() {
+        return this.bareStr.slice(0, this.prefixLength);
+      }
+    };
+    SuffixNamePart = class extends NamePart {
+      constructor(str, suffixLength) {
+        super(str);
+        this.suffixLength = suffixLength;
+      }
+      suffixLength;
+      generate() {
+        const strLen = this.bareStr.length;
+        const startIndex = Math.max(strLen - this.suffixLength, 0);
+        return this.bareStr.slice(startIndex, strLen);
+      }
+    };
+    GENERATE_IF_NEEDED_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core..GenerateIfNeeded");
+    GeneratedWhenNeededMarker = class {
+      creationStack = ["Token stack traces are no longer captured"];
+      constructor() {
+        Object.defineProperty(this, GENERATE_IF_NEEDED_SYMBOL, { value: true });
+      }
+      resolve(_ctx) {
+        throw new UnscopedValidationError(lit`InvalidPhysicalNameMarker`, 'Invalid physical name passed to CloudFormation. Use "this.physicalName" instead');
+      }
+      toString() {
+        return "PhysicalName.GENERATE_IF_NEEDED";
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/constants.ts
+var ALLOWED_FQN_PREFIXES;
+var init_constants2 = __esm({
+  "../../aws-cdk-lib/core/lib/private/constants.ts"() {
+    "use strict";
+    ALLOWED_FQN_PREFIXES = [
+      // SCOPES
+      "@aws-cdk/",
+      "@aws-cdk-containers/",
+      "@aws-solutions-konstruk/",
+      "@aws-solutions-constructs/",
+      "@amzn/",
+      "@cdklabs/",
+      // PACKAGES
+      "aws-rfdk.",
+      "aws-cdk-lib.",
+      "cdk8s."
+    ];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts
+function addMetadata(construct, mixin) {
+  let reportedValue = "*";
+  const fqn = Object.getPrototypeOf(mixin).constructor[JSII_RUNTIME_SYMBOL2]?.fqn;
+  if (fqn && ALLOWED_FQN_PREFIXES.find((prefix) => fqn.startsWith(prefix))) {
+    reportedValue = fqn;
+  }
+  construct.node.addMetadata(MIXIN_METADATA_KEY, { mixin: reportedValue });
+}
+function applyMixin(construct, mixin) {
+  addMetadata(construct, mixin);
+  mixin.applyTo(construct);
+}
+function withMixins(target, ...mixins) {
+  const allConstructs = target.node.findAll();
+  for (const mixin of mixins) {
+    for (const construct of allConstructs) {
+      if (mixin.supports(construct)) {
+        applyMixin(construct, mixin);
+      }
+    }
+  }
+  return target;
+}
+var MIXIN_METADATA_KEY;
+var init_mixin_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/private/mixin-metadata.ts"() {
+    "use strict";
+    init_constants();
+    init_constants2();
+    MIXIN_METADATA_KEY = "aws:cdk:analytics:mixin";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/resource.ts
+function mimicReference(refSource, producer) {
+  const reference = Tokenization.reverse(refSource, {
+    // If this is an ARN concatenation, just fail to extract a reference.
+    failConcat: false
+  });
+  if (!Reference.isReference(reference)) {
+    return Lazy.uncachedString(producer);
+  }
+  return Token.asString(new class extends Reference {
+    resolve(context) {
+      return producer.produce(context);
+    }
+  }(reference, reference.target, reference.displayName));
+}
+var import_constructs6, _physicalName_dec, _env_dec, _stack_dec, _a, _init, Resource;
+var init_resource = __esm({
+  "../../aws-cdk-lib/core/lib/resource.ts"() {
+    "use strict";
+    import_constructs6 = __toESM(require_lib4());
+    init_arn();
+    init_cfn_resource();
+    init_constants();
+    init_errors();
+    init_helpers_internal();
+    init_memoize();
+    init_lazy();
+    init_core_construct_finders();
+    init_physical_name_generator();
+    init_reference();
+    init_token();
+    init_mixin_metadata();
+    init_literal_string();
+    Resource = class extends (_a = import_constructs6.Construct, _stack_dec = [memoizedGetter], _env_dec = [memoizedGetter], _physicalName_dec = [memoizedGetter], _a) {
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        __runInitializers(_init, 5, this);
+        __publicField(this, "_allowCrossEnvironment");
+        /** Account given in the constructor, if any. Will be same as Stack if not supplied. */
+        __publicField(this, "_customAccount");
+        /** Account given in the constructor, if any. Will be same as Stack if not supplied.*/
+        __publicField(this, "_customRegion");
+        /** What we are doing for the physical name */
+        __publicField(this, "_physicalNameMode");
+        /** The physicalName supplied into the constructor */
+        __publicField(this, "_givenPhysicalName");
+        /** The generated physical name, in case of cross-env access */
+        __publicField(this, "_generatedPhysicalName", Box.fromValue(void 0));
+        if ((props.account !== void 0 || props.region !== void 0) && props.environmentFromArn !== void 0) {
+          throw new ValidationError(lit`ConflictingEnvironmentOptions`, `Supply at most one of 'account'/'region' (${props.account}/${props.region}) and 'environmentFromArn' (${props.environmentFromArn})`, this);
+        }
+        Object.defineProperty(this, RESOURCE_SYMBOL, { value: true });
+        const parsedArn = props.environmentFromArn ? (
+          // Since we only want the region and account, NO_RESOURCE_NAME is good enough
+          Arn.split(props.environmentFromArn, "arn:aws:service:region:account:resource" /* NO_RESOURCE_NAME */)
+        ) : void 0;
+        this._customAccount = props.account ?? parsedArn?.account;
+        this._customRegion = props.region ?? parsedArn?.region;
+        this._givenPhysicalName = props.physicalName;
+        if (props.physicalName && isGeneratedWhenNeededMarker(props.physicalName)) {
+          this._physicalNameMode = "generate";
+          this._allowCrossEnvironment = true;
+        } else if (props.physicalName && !Token.isUnresolved(props.physicalName)) {
+          this._physicalNameMode = "given-resolved";
+          this._allowCrossEnvironment = true;
+        } else {
+          this._physicalNameMode = "deploy-time";
+          this._allowCrossEnvironment = false;
+        }
+      }
+      /**
+       * Check whether the given construct is a Resource
+       */
+      static isResource(construct) {
+        return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct;
+      }
+      /**
+       * Returns true if the construct was created by CDK, and false otherwise
+       */
+      static isOwnedResource(construct) {
+        return construct.node.defaultChild ? CfnResource.isCfnResource(construct.node.defaultChild) : false;
+      }
+      get stack() {
+        return stackOf(this);
+      }
+      get env() {
+        return {
+          account: this._customAccount ?? this.stack.account,
+          region: this._customRegion ?? this.stack.region
+        };
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      get physicalName() {
+        switch (this._physicalNameMode) {
+          case "generate":
+            return Token.asString(this._generatedPhysicalName);
+          case "given-resolved":
+            return this._givenPhysicalName;
+          case "deploy-time":
+            return this._givenPhysicalName ?? Token.asString(void 0);
+        }
+      }
+      /**
+       * Called when this resource is referenced across environments
+       * (account/region) to order to request that a physical name will be generated
+       * for this resource during synthesis, so the resource can be referenced
+       * through its absolute name/arn.
+       *
+       * @internal
+       */
+      _enableCrossEnvironment() {
+        if (!this._allowCrossEnvironment) {
+          throw new ValidationError(lit`CannotUseCrossEnvironment`, `Cannot use resource '${this.node.path}' in a cross-environment fashion, the resource's physical name must be explicit set or use \`PhysicalName.GENERATE_IF_NEEDED\``, this);
+        }
+        this._generatedPhysicalName.update(
+          (name) => this._physicalNameMode === "generate" && !name ? this.generatePhysicalName() : name
+        );
+      }
+      /**
+       * Apply the given removal policy to this resource
+       *
+       * The Removal Policy controls what happens to this resource when it stops
+       * being managed by CloudFormation, either because you've removed it from the
+       * CDK application or because you've made a change that requires the resource
+       * to be replaced.
+       *
+       * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
+       * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
+       */
+      applyRemovalPolicy(policy) {
+        const child = this.node.defaultChild;
+        if (!child || !CfnResource.isCfnResource(child)) {
+          throw new ValidationError(lit`CannotApplyRemovalPolicy`, "Cannot apply RemovalPolicy: no child or not a CfnResource. Apply the removal policy on the CfnResource directly.", this);
+        }
+        child.applyRemovalPolicy(policy);
+      }
+      /**
+       * Override the cross-stack reference strength for this resource.
+       *
+       * When set, any cross-stack reference to this resource will use the specified
+       * mechanism instead of the global default determined by the
+       * `@aws-cdk/core:defaultCrossStackReferences` context key. This is useful for
+       * selectively weakening specific references to avoid the "deadly embrace" problem
+       * without changing the app-wide default.
+       *
+       * @param strength - The reference strength to use for this resource.
+       */
+      applyCrossStackReferenceStrength(strength) {
+        const child = this.node.defaultChild;
+        if (!child || !CfnResource.isCfnResource(child)) {
+          throw new ValidationError(lit`CannotApplyCrossStackReferenceStrength`, "Cannot apply CrossStackReferenceStrength: no child or not a CfnResource. Apply the override on the CfnResource directly.", this);
+        }
+        child.applyCrossStackReferenceStrength(strength);
+      }
+      generatePhysicalName() {
+        return generatePhysicalName(this);
+      }
+      /**
+       * Returns an environment-sensitive token that should be used for the
+       * resource's "name" attribute (e.g. `bucket.bucketName`).
+       *
+       * Normally, this token will resolve to `nameAttr`, but if the resource is
+       * referenced across environments, it will be resolved to `this.physicalName`,
+       * which will be a concrete name.
+       *
+       * @param nameAttr The CFN attribute which resolves to the resource's name.
+       * Commonly this is the resource's `ref`.
+       */
+      getResourceNameAttribute(nameAttr) {
+        return mimicReference(nameAttr, {
+          produce: (context) => {
+            const consumingStack = stackOf(context.scope);
+            if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) {
+              this._enableCrossEnvironment();
+              return this.physicalName;
+            } else {
+              return nameAttr;
+            }
+          }
+        });
+      }
+      /**
+       * Returns an environment-sensitive token that should be used for the
+       * resource's "ARN" attribute (e.g. `bucket.bucketArn`).
+       *
+       * Normally, this token will resolve to `arnAttr`, but if the resource is
+       * referenced across environments, `arnComponents` will be used to synthesize
+       * a concrete ARN with the resource's physical name. Make sure to reference
+       * `this.physicalName` in `arnComponents`.
+       *
+       * @param arnAttr The CFN attribute which resolves to the ARN of the resource.
+       * Commonly it will be called "Arn" (e.g. `resource.attrArn`), but sometimes
+       * it's the CFN resource's `ref`.
+       * @param arnComponents The format of the ARN of this resource. You must
+       * reference `this.physicalName` somewhere within the ARN in order for
+       * cross-environment references to work.
+       *
+       */
+      getResourceArnAttribute(arnAttr, arnComponents) {
+        return mimicReference(arnAttr, {
+          produce: (context) => {
+            const consumingStack = stackOf(context.scope);
+            if (this.stack.account !== consumingStack.account || this.stack.region !== consumingStack.region && !consumingStack._crossRegionReferences) {
+              this._enableCrossEnvironment();
+              return this.stack.formatArn(arnComponents);
+            } else {
+              return arnAttr;
+            }
+          }
+        });
+      }
+    };
+    _init = __decoratorStart(_a);
+    __decorateElement(_init, 2, "stack", _stack_dec, Resource);
+    __decorateElement(_init, 2, "env", _env_dec, Resource);
+    __decorateElement(_init, 2, "physicalName", _physicalName_dec, Resource);
+    __decoratorMetadata(_init, Resource);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource.ts
+function uppercaseProperties(props) {
+  const ret = {};
+  Object.keys(props).forEach((key) => {
+    const upper = key.slice(0, 1).toUpperCase() + key.slice(1);
+    ret[upper] = props[key];
+  });
+  return ret;
+}
+function renderResourceType(scope, resourceType) {
+  if (!resourceType) {
+    return "AWS::CloudFormation::CustomResource";
+  }
+  if (!resourceType.startsWith("Custom::")) {
+    throw new ValidationError(lit`MustBeCustomResourceType`, `Custom resource type must begin with "Custom::" (${resourceType})`, scope);
+  }
+  if (resourceType.length > 60) {
+    throw new ValidationError(lit`CustomResourceTypeLength`, `Custom resource type length > 60 (${resourceType})`, scope);
+  }
+  const typeName = resourceType.slice(resourceType.indexOf("::") + 2);
+  if (!/^[a-z0-9_@-]+$/i.test(typeName)) {
+    throw new ValidationError(lit`CustomResourceTypeNameInclude`, `Custom resource type name can only include alphanumeric characters and _@- (${typeName})`, scope);
+  }
+  return resourceType;
+}
+var _getAttString_dec, _getAtt_dec, _a2, _CustomResource_decorators, _init2, CustomResource;
+var init_custom_resource = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource.ts"() {
+    "use strict";
+    init_annotations();
+    init_cfn_resource();
+    init_errors();
+    init_metadata_resource();
+    init_no_box_stack_traces();
+    init_literal_string();
+    init_prop_injectable();
+    init_removal_policy();
+    init_resource();
+    init_token();
+    _CustomResource_decorators = [noBoxStackTraces, propertyInjectable];
+    CustomResource = class extends (_a2 = Resource, _getAtt_dec = [MethodMetadata()], _getAttString_dec = [MethodMetadata()], _a2) {
+      constructor(scope, id, props) {
+        super(scope, id);
+        __runInitializers(_init2, 5, this);
+        __publicField(this, "resource");
+        addConstructMetadata(this, props);
+        const type = renderResourceType(this, props.resourceType);
+        const pascalCaseProperties = props.pascalCaseProperties ?? false;
+        const properties = pascalCaseProperties ? uppercaseProperties(props.properties || {}) : props.properties || {};
+        if (props.serviceTimeout !== void 0 && !props.serviceTimeout.isUnresolved()) {
+          const serviceTimeoutSeconds = props.serviceTimeout.toSeconds();
+          if (serviceTimeoutSeconds < 1 || serviceTimeoutSeconds > 3600) {
+            throw new ValidationError(lit`ServiceTimeoutSeconds`, `serviceTimeout must either be between 1 and 3600 seconds, got ${serviceTimeoutSeconds}`, this);
+          }
+        }
+        const constructPropertiesPassed = {
+          ServiceToken: props.serviceToken,
+          ServiceTimeout: props.serviceTimeout?.toSeconds().toString()
+        };
+        const hasCommonKeys = Object.keys(properties).some((key) => key in constructPropertiesPassed);
+        if (hasCommonKeys) {
+          Annotations.of(this).addWarningV2("@aws-cdk/core:customResourcePropConflict", `The following keys will be overwritten as they exist in the 'properties' prop. Keys found: ${Object.keys(properties).filter((key) => key in constructPropertiesPassed)}`);
+        }
+        this.resource = new CfnResource(this, "Default", {
+          type,
+          properties: {
+            ...constructPropertiesPassed,
+            ...properties
+          }
+        });
+        this.resource.applyRemovalPolicy(props.removalPolicy, {
+          default: "destroy" /* DESTROY */
+        });
+      }
+      /**
+       * The physical name of this custom resource.
+       */
+      get ref() {
+        return this.resource.ref;
+      }
+      getAtt(attributeName) {
+        return this.resource.getAtt(attributeName);
+      }
+      getAttString(attributeName) {
+        return Token.asString(this.getAtt(attributeName));
+      }
+    };
+    _init2 = __decoratorStart(_a2);
+    __decorateElement(_init2, 1, "getAtt", _getAtt_dec, CustomResource);
+    __decorateElement(_init2, 1, "getAttString", _getAttString_dec, CustomResource);
+    CustomResource = __decorateElement(_init2, 0, "CustomResource", _CustomResource_decorators, CustomResource);
+    /** Uniquely identifies this class. */
+    __publicField(CustomResource, "PROPERTY_INJECTION_ID", "aws-cdk-lib.core.CustomResource");
+    __runInitializers(_init2, 1, CustomResource);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts
+var init_consts = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-utils-provider/consts.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts
+var INLINE_CUSTOM_RESOURCE_CONTEXT;
+var init_shared = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/shared.ts"() {
+    "use strict";
+    INLINE_CUSTOM_RESOURCE_CONTEXT = "@aws-cdk/core:inlineCustomResourceIfPossible";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/assets.ts
+var init_assets = __esm({
+  "../../aws-cdk-lib/core/lib/assets.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js
+var require_ignore = __commonJS({
+  "../../aws-cdk-lib/node_modules/@balena/dockerignore/ignore.js"(exports2, module2) {
+    "use strict";
+    var path23 = require("path");
+    var factory = (options) => new IgnoreBase(options);
+    factory.default = factory;
+    module2.exports = factory;
+    function make_array(subject) {
+      return Array.isArray(subject) ? subject : [subject];
+    }
+    var REGEX_TRAILING_SLASH = /(?<=.)\/$/;
+    var REGEX_TRAILING_BACKSLASH = /(?<=.)\\$/;
+    var REGEX_TRAILING_PATH_SEP = path23.sep === "\\" ? REGEX_TRAILING_BACKSLASH : REGEX_TRAILING_SLASH;
+    var KEY_IGNORE = typeof Symbol !== "undefined" ? /* @__PURE__ */ Symbol.for("dockerignore") : "dockerignore";
+    function cleanPath(file) {
+      return path23.normalize(file).replace(REGEX_TRAILING_PATH_SEP, "");
+    }
+    function toSlash(file) {
+      if (path23.sep === "/") {
+        return file;
+      }
+      return file.replace(/\\/g, "/");
+    }
+    function fromSlash(file) {
+      if (path23.sep === "/") {
+        return file;
+      }
+      return file.replace(/\//g, path23.sep);
+    }
+    var IgnoreBase = class {
+      constructor({
+        // https://github.com/kaelzhang/node-ignore/blob/5.1.4/index.js#L372
+        ignorecase = true
+      } = {}) {
+        this._rules = [];
+        this._ignorecase = ignorecase;
+        this[KEY_IGNORE] = true;
+        this._initCache();
+      }
+      _initCache() {
+        this._cache = {};
+      }
+      // @param {Array.|string|Ignore} pattern
+      add(pattern) {
+        this._added = false;
+        if (typeof pattern === "string") {
+          pattern = pattern.split(/\r?\n/g);
+        }
+        make_array(pattern).forEach(this._addPattern, this);
+        if (this._added) {
+          this._initCache();
+        }
+        return this;
+      }
+      // legacy
+      addPattern(pattern) {
+        return this.add(pattern);
+      }
+      _addPattern(pattern) {
+        if (pattern && pattern[KEY_IGNORE]) {
+          this._rules = this._rules.concat(pattern._rules);
+          this._added = true;
+          return;
+        }
+        if (this._checkPattern(pattern)) {
+          const rule = this._createRule(pattern.trim());
+          if (rule !== null) {
+            this._added = true;
+            this._rules.push(rule);
+          }
+        }
+      }
+      _checkPattern(pattern) {
+        return pattern && typeof pattern === "string" && pattern.indexOf("#") !== 0 && pattern.trim() !== "";
+      }
+      filter(paths) {
+        return make_array(paths).filter((path24) => this._filter(path24));
+      }
+      createFilter() {
+        return (path24) => this._filter(path24);
+      }
+      ignores(path24) {
+        return !this._filter(path24);
+      }
+      // https://github.com/moby/moby/blob/v19.03.8/builder/dockerignore/dockerignore.go#L41-L53
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L29-L55
+      _createRule(pattern) {
+        const origin = pattern;
+        let negative = false;
+        if (pattern[0] === "!") {
+          negative = true;
+          pattern = pattern.substring(1).trim();
+        }
+        if (pattern.length > 0) {
+          pattern = cleanPath(pattern);
+          pattern = toSlash(pattern);
+          if (pattern.length > 1 && pattern[0] === "/") {
+            pattern = pattern.slice(1);
+          }
+        }
+        if (negative) {
+          pattern = "!" + pattern;
+        }
+        pattern = pattern.trim();
+        if (pattern === "") {
+          return null;
+        }
+        pattern = cleanPath(pattern);
+        if (pattern[0] === "!") {
+          if (pattern.length === 1) {
+            return null;
+          }
+          negative = true;
+          pattern = pattern.substring(1);
+        } else {
+          negative = false;
+        }
+        return {
+          origin,
+          pattern,
+          // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L54
+          dirs: pattern.split(path23.sep),
+          negative
+        };
+      }
+      // @returns `Boolean` true if the `path` is NOT ignored
+      _filter(path24) {
+        if (!path24) {
+          return false;
+        }
+        if (path24 in this._cache) {
+          return this._cache[path24];
+        }
+        return this._cache[path24] = this._test(path24);
+      }
+      // @returns {Boolean} true if a file is NOT ignored
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L62
+      _test(file) {
+        file = fromSlash(file);
+        const parentPath = cleanPath(path23.dirname(file));
+        const parentPathDirs = parentPath.split(path23.sep);
+        let matched = false;
+        this._rules.forEach((rule) => {
+          let match = this._match(file, rule);
+          if (!match && parentPath !== ".") {
+            if (rule.dirs.includes("**")) {
+              for (let i = rule.dirs.filter((x) => x !== "**").length; i <= parentPathDirs.length; i++) {
+                match = match || this._match(parentPathDirs.slice(0, i).join(path23.sep), rule);
+              }
+            } else if (rule.dirs.length <= parentPathDirs.length) {
+              match = this._match(parentPathDirs.slice(0, rule.dirs.length).join(path23.sep), rule);
+            }
+          }
+          if (match) {
+            matched = !rule.negative;
+          }
+        });
+        return !matched;
+      }
+      // @returns {Boolean} true if a file is matched by a rule
+      _match(file, rule) {
+        return this._compile(rule).regexp.test(file);
+      }
+      // https://github.com/moby/moby/blob/v19.03.8/pkg/fileutils/fileutils.go#L139
+      _compile(rule) {
+        if (rule.regexp) {
+          return rule;
+        }
+        let regStr = "^";
+        let escapedSlash = path23.sep === "\\" ? "\\\\" : path23.sep;
+        for (let i = 0; i < rule.pattern.length; i++) {
+          const ch = rule.pattern[i];
+          if (ch === "*") {
+            if (rule.pattern[i + 1] === "*") {
+              i++;
+              if (rule.pattern[i + 1] === path23.sep) {
+                i++;
+              }
+              if (rule.pattern[i + 1] === void 0) {
+                regStr += ".*";
+              } else {
+                regStr += `(.*${escapedSlash})?`;
+              }
+            } else {
+              regStr += `[^${escapedSlash}]*`;
+            }
+          } else if (ch === "?") {
+            regStr += `[^${escapedSlash}]`;
+          } else if (ch === "." || ch === "$") {
+            regStr += `\\${ch}`;
+          } else if (ch === "\\") {
+            if (path23.sep === "\\") {
+              regStr += escapedSlash;
+              continue;
+            }
+            if (rule.pattern[i + 1] !== void 0) {
+              regStr += "\\" + rule.pattern[i + 1];
+              i++;
+            } else {
+              regStr += "\\";
+            }
+          } else {
+            regStr += ch;
+          }
+        }
+        regStr += "$";
+        rule.regexp = new RegExp(regStr, this._ignorecase ? "i" : "");
+        return rule;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/ignore/index.js
+var require_ignore2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/ignore/index.js"(exports2, module2) {
+    function makeArray(subject) {
+      return Array.isArray(subject) ? subject : [subject];
+    }
+    var EMPTY = "";
+    var SPACE = " ";
+    var ESCAPE = "\\";
+    var REGEX_TEST_BLANK_LINE = /^\s+$/;
+    var REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/;
+    var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/;
+    var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/;
+    var REGEX_SPLITALL_CRLF = /\r?\n/g;
+    var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/;
+    var SLASH = "/";
+    var TMP_KEY_IGNORE = "node-ignore";
+    if (typeof Symbol !== "undefined") {
+      TMP_KEY_IGNORE = /* @__PURE__ */ Symbol.for("node-ignore");
+    }
+    var KEY_IGNORE = TMP_KEY_IGNORE;
+    var define = (object, key, value) => Object.defineProperty(object, key, { value });
+    var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g;
+    var RETURN_FALSE = () => false;
+    var sanitizeRange = (range4) => range4.replace(
+      REGEX_REGEXP_RANGE,
+      (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) ? match : EMPTY
+    );
+    var cleanRangeBackSlash = (slashes) => {
+      const { length } = slashes;
+      return slashes.slice(0, length - length % 2);
+    };
+    var REPLACERS = [
+      [
+        // remove BOM
+        // TODO:
+        // Other similar zero-width characters?
+        /^\uFEFF/,
+        () => EMPTY
+      ],
+      // > Trailing spaces are ignored unless they are quoted with backslash ("\")
+      [
+        // (a\ ) -> (a )
+        // (a  ) -> (a)
+        // (a ) -> (a)
+        // (a \ ) -> (a  )
+        /((?:\\\\)*?)(\\?\s+)$/,
+        (_, m1, m2) => m1 + (m2.indexOf("\\") === 0 ? SPACE : EMPTY)
+      ],
+      // replace (\ ) with ' '
+      // (\ ) -> ' '
+      // (\\ ) -> '\\ '
+      // (\\\ ) -> '\\ '
+      [
+        /(\\+?)\s/g,
+        (_, m1) => {
+          const { length } = m1;
+          return m1.slice(0, length - length % 2) + SPACE;
+        }
+      ],
+      // Escape metacharacters
+      // which is written down by users but means special for regular expressions.
+      // > There are 12 characters with special meanings:
+      // > - the backslash \,
+      // > - the caret ^,
+      // > - the dollar sign $,
+      // > - the period or dot .,
+      // > - the vertical bar or pipe symbol |,
+      // > - the question mark ?,
+      // > - the asterisk or star *,
+      // > - the plus sign +,
+      // > - the opening parenthesis (,
+      // > - the closing parenthesis ),
+      // > - and the opening square bracket [,
+      // > - the opening curly brace {,
+      // > These special characters are often called "metacharacters".
+      [
+        /[\\$.|*+(){^]/g,
+        (match) => `\\${match}`
+      ],
+      [
+        // > a question mark (?) matches a single character
+        /(?!\\)\?/g,
+        () => "[^/]"
+      ],
+      // leading slash
+      [
+        // > A leading slash matches the beginning of the pathname.
+        // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c".
+        // A leading slash matches the beginning of the pathname
+        /^\//,
+        () => "^"
+      ],
+      // replace special metacharacter slash after the leading slash
+      [
+        /\//g,
+        () => "\\/"
+      ],
+      [
+        // > A leading "**" followed by a slash means match in all directories.
+        // > For example, "**/foo" matches file or directory "foo" anywhere,
+        // > the same as pattern "foo".
+        // > "**/foo/bar" matches file or directory "bar" anywhere that is directly
+        // >   under directory "foo".
+        // Notice that the '*'s have been replaced as '\\*'
+        /^\^*\\\*\\\*\\\//,
+        // '**/foo' <-> 'foo'
+        () => "^(?:.*\\/)?"
+      ],
+      // starting
+      [
+        // there will be no leading '/'
+        //   (which has been replaced by section "leading slash")
+        // If starts with '**', adding a '^' to the regular expression also works
+        /^(?=[^^])/,
+        function startingReplacer() {
+          return !/\/(?!$)/.test(this) ? "(?:^|\\/)" : "^";
+        }
+      ],
+      // two globstars
+      [
+        // Use lookahead assertions so that we could match more than one `'/**'`
+        /\\\/\\\*\\\*(?=\\\/|$)/g,
+        // Zero, one or several directories
+        // should not use '*', or it will be replaced by the next replacer
+        // Check if it is not the last `'/**'`
+        (_, index, str) => index + 6 < str.length ? "(?:\\/[^\\/]+)*" : "\\/.+"
+      ],
+      // normal intermediate wildcards
+      [
+        // Never replace escaped '*'
+        // ignore rule '\*' will match the path '*'
+        // 'abc.*/' -> go
+        // 'abc.*'  -> skip this rule,
+        //    coz trailing single wildcard will be handed by [trailing wildcard]
+        /(^|[^\\]+)(\\\*)+(?=.+)/g,
+        // '*.js' matches '.js'
+        // '*.js' doesn't match 'abc'
+        (_, p1, p2) => {
+          const unescaped = p2.replace(/\\\*/g, "[^\\/]*");
+          return p1 + unescaped;
+        }
+      ],
+      [
+        // unescape, revert step 3 except for back slash
+        // For example, if a user escape a '\\*',
+        // after step 3, the result will be '\\\\\\*'
+        /\\\\\\(?=[$.|*+(){^])/g,
+        () => ESCAPE
+      ],
+      [
+        // '\\\\' -> '\\'
+        /\\\\/g,
+        () => ESCAPE
+      ],
+      [
+        // > The range notation, e.g. [a-zA-Z],
+        // > can be used to match one of the characters in a range.
+        // `\` is escaped by step 3
+        /(\\)?\[([^\]/]*?)(\\*)($|\])/g,
+        (match, leadEscape, range4, endEscape, close) => leadEscape === ESCAPE ? `\\[${range4}${cleanRangeBackSlash(endEscape)}${close}` : close === "]" ? endEscape.length % 2 === 0 ? `[${sanitizeRange(range4)}${endEscape}]` : "[]" : "[]"
+      ],
+      // ending
+      [
+        // 'js' will not match 'js.'
+        // 'ab' will not match 'abc'
+        /(?:[^*])$/,
+        // WTF!
+        // https://git-scm.com/docs/gitignore
+        // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1)
+        // which re-fixes #24, #38
+        // > If there is a separator at the end of the pattern then the pattern
+        // > will only match directories, otherwise the pattern can match both
+        // > files and directories.
+        // 'js*' will not match 'a.js'
+        // 'js/' will not match 'a.js'
+        // 'js' will match 'a.js' and 'a.js/'
+        (match) => /\/$/.test(match) ? `${match}$` : `${match}(?=$|\\/$)`
+      ],
+      // trailing wildcard
+      [
+        /(\^|\\\/)?\\\*$/,
+        (_, p1) => {
+          const prefix = p1 ? `${p1}[^/]+` : "[^/]*";
+          return `${prefix}(?=$|\\/$)`;
+        }
+      ]
+    ];
+    var regexCache = /* @__PURE__ */ Object.create(null);
+    var makeRegex = (pattern, ignoreCase) => {
+      let source = regexCache[pattern];
+      if (!source) {
+        source = REPLACERS.reduce(
+          (prev, [matcher, replacer]) => prev.replace(matcher, replacer.bind(pattern)),
+          pattern
+        );
+        regexCache[pattern] = source;
+      }
+      return ignoreCase ? new RegExp(source, "i") : new RegExp(source);
+    };
+    var isString = (subject) => typeof subject === "string";
+    var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) && pattern.indexOf("#") !== 0;
+    var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF);
+    var IgnoreRule = class {
+      constructor(origin, pattern, negative, regex) {
+        this.origin = origin;
+        this.pattern = pattern;
+        this.negative = negative;
+        this.regex = regex;
+      }
+    };
+    var createRule = (pattern, ignoreCase) => {
+      const origin = pattern;
+      let negative = false;
+      if (pattern.indexOf("!") === 0) {
+        negative = true;
+        pattern = pattern.substr(1);
+      }
+      pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#");
+      const regex = makeRegex(pattern, ignoreCase);
+      return new IgnoreRule(
+        origin,
+        pattern,
+        negative,
+        regex
+      );
+    };
+    var throwError = (message, Ctor) => {
+      throw new Ctor(message);
+    };
+    var checkPath = (path23, originalPath, doThrow) => {
+      if (!isString(path23)) {
+        return doThrow(
+          `path must be a string, but got \`${originalPath}\``,
+          TypeError
+        );
+      }
+      if (!path23) {
+        return doThrow(`path must not be empty`, TypeError);
+      }
+      if (checkPath.isNotRelative(path23)) {
+        const r = "`path.relative()`d";
+        return doThrow(
+          `path should be a ${r} string, but got "${originalPath}"`,
+          RangeError
+        );
+      }
+      return true;
+    };
+    var isNotRelative = (path23) => REGEX_TEST_INVALID_PATH.test(path23);
+    checkPath.isNotRelative = isNotRelative;
+    checkPath.convert = (p) => p;
+    var Ignore = class {
+      constructor({
+        ignorecase = true,
+        ignoreCase = ignorecase,
+        allowRelativePaths = false
+      } = {}) {
+        define(this, KEY_IGNORE, true);
+        this._rules = [];
+        this._ignoreCase = ignoreCase;
+        this._allowRelativePaths = allowRelativePaths;
+        this._initCache();
+      }
+      _initCache() {
+        this._ignoreCache = /* @__PURE__ */ Object.create(null);
+        this._testCache = /* @__PURE__ */ Object.create(null);
+      }
+      _addPattern(pattern) {
+        if (pattern && pattern[KEY_IGNORE]) {
+          this._rules = this._rules.concat(pattern._rules);
+          this._added = true;
+          return;
+        }
+        if (checkPattern(pattern)) {
+          const rule = createRule(pattern, this._ignoreCase);
+          this._added = true;
+          this._rules.push(rule);
+        }
+      }
+      // @param {Array | string | Ignore} pattern
+      add(pattern) {
+        this._added = false;
+        makeArray(
+          isString(pattern) ? splitPattern(pattern) : pattern
+        ).forEach(this._addPattern, this);
+        if (this._added) {
+          this._initCache();
+        }
+        return this;
+      }
+      // legacy
+      addPattern(pattern) {
+        return this.add(pattern);
+      }
+      //          |           ignored : unignored
+      // negative |   0:0   |   0:1   |   1:0   |   1:1
+      // -------- | ------- | ------- | ------- | --------
+      //     0    |  TEST   |  TEST   |  SKIP   |    X
+      //     1    |  TESTIF |  SKIP   |  TEST   |    X
+      // - SKIP: always skip
+      // - TEST: always test
+      // - TESTIF: only test if checkUnignored
+      // - X: that never happen
+      // @param {boolean} whether should check if the path is unignored,
+      //   setting `checkUnignored` to `false` could reduce additional
+      //   path matching.
+      // @returns {TestResult} true if a file is ignored
+      _testOne(path23, checkUnignored) {
+        let ignored = false;
+        let unignored = false;
+        this._rules.forEach((rule) => {
+          const { negative } = rule;
+          if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) {
+            return;
+          }
+          const matched = rule.regex.test(path23);
+          if (matched) {
+            ignored = !negative;
+            unignored = negative;
+          }
+        });
+        return {
+          ignored,
+          unignored
+        };
+      }
+      // @returns {TestResult}
+      _test(originalPath, cache, checkUnignored, slices) {
+        const path23 = originalPath && checkPath.convert(originalPath);
+        checkPath(
+          path23,
+          originalPath,
+          this._allowRelativePaths ? RETURN_FALSE : throwError
+        );
+        return this._t(path23, cache, checkUnignored, slices);
+      }
+      _t(path23, cache, checkUnignored, slices) {
+        if (path23 in cache) {
+          return cache[path23];
+        }
+        if (!slices) {
+          slices = path23.split(SLASH);
+        }
+        slices.pop();
+        if (!slices.length) {
+          return cache[path23] = this._testOne(path23, checkUnignored);
+        }
+        const parent = this._t(
+          slices.join(SLASH) + SLASH,
+          cache,
+          checkUnignored,
+          slices
+        );
+        return cache[path23] = parent.ignored ? parent : this._testOne(path23, checkUnignored);
+      }
+      ignores(path23) {
+        return this._test(path23, this._ignoreCache, false).ignored;
+      }
+      createFilter() {
+        return (path23) => !this.ignores(path23);
+      }
+      filter(paths) {
+        return makeArray(paths).filter(this.createFilter());
+      }
+      // @returns {TestResult}
+      test(path23) {
+        return this._test(path23, this._testCache, true);
+      }
+    };
+    var factory = (options) => new Ignore(options);
+    var isPathValid = (path23) => checkPath(path23 && checkPath.convert(path23), path23, RETURN_FALSE);
+    factory.isPathValid = isPathValid;
+    factory.default = factory;
+    module2.exports = factory;
+    if (
+      // Detect `process` so that it can run in browsers.
+      typeof process !== "undefined" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32")
+    ) {
+      const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/");
+      checkPath.convert = makePosix;
+      const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i;
+      checkPath.isNotRelative = (path23) => REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path23) || isNotRelative(path23);
+    }
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/options.ts
+var init_options = __esm({
+  "../../aws-cdk-lib/core/lib/fs/options.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js
+var require_commonjs = __commonJS({
+  "../../aws-cdk-lib/node_modules/balanced-match/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.range = exports2.balanced = void 0;
+    var balanced = (a, b, str) => {
+      const ma = a instanceof RegExp ? maybeMatch(a, str) : a;
+      const mb = b instanceof RegExp ? maybeMatch(b, str) : b;
+      const r = ma !== null && mb != null && (0, exports2.range)(ma, mb, str);
+      return r && {
+        start: r[0],
+        end: r[1],
+        pre: str.slice(0, r[0]),
+        body: str.slice(r[0] + ma.length, r[1]),
+        post: str.slice(r[1] + mb.length)
+      };
+    };
+    exports2.balanced = balanced;
+    var maybeMatch = (reg, str) => {
+      const m = str.match(reg);
+      return m ? m[0] : null;
+    };
+    var range4 = (a, b, str) => {
+      let begs, beg, left, right = void 0, result;
+      let ai = str.indexOf(a);
+      let bi = str.indexOf(b, ai + 1);
+      let i = ai;
+      if (ai >= 0 && bi > 0) {
+        if (a === b) {
+          return [ai, bi];
+        }
+        begs = [];
+        left = str.length;
+        while (i >= 0 && !result) {
+          if (i === ai) {
+            begs.push(i);
+            ai = str.indexOf(a, i + 1);
+          } else if (begs.length === 1) {
+            const r = begs.pop();
+            if (r !== void 0)
+              result = [r, bi];
+          } else {
+            beg = begs.pop();
+            if (beg !== void 0 && beg < left) {
+              left = beg;
+              right = bi;
+            }
+            bi = str.indexOf(b, i + 1);
+          }
+          i = ai < bi && ai >= 0 ? ai : bi;
+        }
+        if (begs.length && right !== void 0) {
+          result = [left, right];
+        }
+      }
+      return result;
+    };
+    exports2.range = range4;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js
+var require_commonjs2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/brace-expansion/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.EXPANSION_MAX_REWRITES = exports2.EXPANSION_MAX_DEPTH = exports2.EXPANSION_MAX_LENGTH = exports2.EXPANSION_MAX = void 0;
+    exports2.expand = expand;
+    var balanced_match_1 = require_commonjs();
+    var escSlash = "\0SLASH" + Math.random() + "\0";
+    var escOpen = "\0OPEN" + Math.random() + "\0";
+    var escClose = "\0CLOSE" + Math.random() + "\0";
+    var escComma = "\0COMMA" + Math.random() + "\0";
+    var escPeriod = "\0PERIOD" + Math.random() + "\0";
+    var escSlashPattern = new RegExp(escSlash, "g");
+    var escOpenPattern = new RegExp(escOpen, "g");
+    var escClosePattern = new RegExp(escClose, "g");
+    var escCommaPattern = new RegExp(escComma, "g");
+    var escPeriodPattern = new RegExp(escPeriod, "g");
+    var slashPattern = /\\\\/g;
+    var openPattern = /\\{/g;
+    var closePattern = /\\}/g;
+    var commaPattern = /\\,/g;
+    var periodPattern = /\\\./g;
+    exports2.EXPANSION_MAX = 1e5;
+    exports2.EXPANSION_MAX_LENGTH = 4e6;
+    exports2.EXPANSION_MAX_DEPTH = 1e3;
+    exports2.EXPANSION_MAX_REWRITES = 1e3;
+    function numeric(str) {
+      return !isNaN(str) ? parseInt(str, 10) : str.charCodeAt(0);
+    }
+    function escapeBraces(str) {
+      return str.replace(slashPattern, escSlash).replace(openPattern, escOpen).replace(closePattern, escClose).replace(commaPattern, escComma).replace(periodPattern, escPeriod);
+    }
+    function unescapeBraces(str) {
+      return str.replace(escSlashPattern, "\\").replace(escOpenPattern, "{").replace(escClosePattern, "}").replace(escCommaPattern, ",").replace(escPeriodPattern, ".");
+    }
+    function pushAll(target, items) {
+      for (let i = 0; i < items.length; i++) {
+        target.push(items[i]);
+      }
+    }
+    function parseCommaParts(str) {
+      const parts = [];
+      let carry = "";
+      for (; ; ) {
+        const m = (0, balanced_match_1.balanced)("{", "}", str);
+        if (!m) {
+          const tail = str.split(",");
+          tail[0] = carry + tail[0];
+          pushAll(parts, tail);
+          return parts;
+        }
+        const { pre, body, post } = m;
+        const p = pre.split(",");
+        p[0] = carry + p[0];
+        p[p.length - 1] += "{" + body + "}";
+        if (!post.length) {
+          pushAll(parts, p);
+          return parts;
+        }
+        carry = p.pop();
+        pushAll(parts, p);
+        str = post;
+      }
+    }
+    function expand(str, options = {}) {
+      if (!str) {
+        return [];
+      }
+      const { max = exports2.EXPANSION_MAX, maxLength = exports2.EXPANSION_MAX_LENGTH, maxDepth = exports2.EXPANSION_MAX_DEPTH, maxRewrites = exports2.EXPANSION_MAX_REWRITES } = options;
+      if (str.slice(0, 2) === "{}") {
+        str = "\\{\\}" + str.slice(2);
+      }
+      return expand_(escapeBraces(str), max, maxLength, maxDepth, 0, maxRewrites, true).map(unescapeBraces);
+    }
+    function embrace(str) {
+      return "{" + str + "}";
+    }
+    function isPadded(el) {
+      return /^-?0\d/.test(el);
+    }
+    function lte(i, y) {
+      return i <= y;
+    }
+    function gte(i, y) {
+      return i >= y;
+    }
+    function combine(acc, pre, values, max, maxLength, dropEmpties) {
+      const out = [];
+      let length = 0;
+      for (let a = 0; a < acc.length; a++) {
+        for (let v = 0; v < values.length; v++) {
+          if (out.length >= max)
+            return out;
+          const expansion = acc[a] + pre + values[v];
+          if (dropEmpties && !expansion)
+            continue;
+          if (length + expansion.length > maxLength)
+            return out;
+          out.push(expansion);
+          length += expansion.length;
+        }
+      }
+      return out;
+    }
+    function expandSequence(body, isAlphaSequence, max, maxLength) {
+      const n = body.split(/\.\./);
+      const N = [];
+      if (n[0] === void 0 || n[1] === void 0) {
+        return N;
+      }
+      const x = numeric(n[0]);
+      const y = numeric(n[1]);
+      const width = Math.max(n[0].length, n[1].length);
+      let incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric(n[2])), 1) : 1;
+      let test = lte;
+      const reverse = y < x;
+      if (reverse) {
+        incr *= -1;
+        test = gte;
+      }
+      const pad = n.some(isPadded);
+      let length = 0;
+      for (let i = x; test(i, y) && N.length < max; i += incr) {
+        let c;
+        if (isAlphaSequence) {
+          c = String.fromCharCode(i);
+          if (c === "\\") {
+            c = "";
+          }
+        } else {
+          c = String(i);
+          if (pad) {
+            const need = width - c.length;
+            if (need > 0) {
+              const z = new Array(need + 1).join("0");
+              if (i < 0) {
+                c = "-" + z + c.slice(1);
+              } else {
+                c = z + c;
+              }
+            }
+          }
+        }
+        if (length + c.length > maxLength)
+          break;
+        N.push(c);
+        length += c.length;
+      }
+      return N;
+    }
+    function expand_(str, max, maxLength, maxDepth, depth, maxRewrites, isTop) {
+      if (depth > maxDepth) {
+        return [str];
+      }
+      let acc = [""];
+      let rewrites = 0;
+      let dropEmpties = false;
+      let firstGroup = true;
+      for (; ; ) {
+        const m = (0, balanced_match_1.balanced)("{", "}", str);
+        if (!m) {
+          return combine(acc, str, [""], max, maxLength, dropEmpties);
+        }
+        const pre = m.pre;
+        if (/\$$/.test(pre)) {
+          acc = combine(acc, pre + "{" + m.body + "}", [""], max, maxLength, dropEmpties && !m.post.length);
+          firstGroup = false;
+          if (!m.post.length)
+            break;
+          str = m.post;
+          continue;
+        }
+        const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
+        const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
+        const isSequence = isNumericSequence || isAlphaSequence;
+        const isOptions = m.body.indexOf(",") >= 0;
+        if (!isSequence && !isOptions) {
+          if (rewrites < maxRewrites && m.post.match(/,(?!,).*\}/)) {
+            rewrites++;
+            str = m.pre + "{" + m.body + escClose + m.post;
+            isTop = true;
+            continue;
+          }
+          return combine(acc, pre + "{" + m.body + "}" + m.post, [""], max, maxLength, dropEmpties);
+        }
+        if (firstGroup) {
+          dropEmpties = isTop && !isSequence;
+          firstGroup = false;
+        }
+        let values;
+        if (isSequence) {
+          values = expandSequence(m.body, isAlphaSequence, max, maxLength);
+        } else {
+          let n = parseCommaParts(m.body);
+          if (n.length === 1 && n[0] !== void 0) {
+            n = expand_(n[0], max, maxLength, maxDepth, depth + 1, maxRewrites, false).map(embrace);
+            if (n.length === 1) {
+              acc = combine(acc, pre + n[0], [""], max, maxLength, dropEmpties && !m.post.length);
+              if (!m.post.length)
+                break;
+              str = m.post;
+              continue;
+            }
+          }
+          let dropsEmpties = dropEmpties && !m.post.length && !pre;
+          for (let d = 0; dropsEmpties && d < acc.length; d++) {
+            if (acc[d]) {
+              dropsEmpties = false;
+            }
+          }
+          values = [];
+          let valuesLength = 0;
+          outer: for (let j = 0; j < n.length; j++) {
+            const expanded = expand_(n[j], max, maxLength, maxDepth, depth + 1, maxRewrites, false);
+            for (let k = 0; k < expanded.length; k++) {
+              const v = expanded[k];
+              if (dropsEmpties && !v)
+                continue;
+              if (values.length >= max || valuesLength + v.length > maxLength) {
+                break outer;
+              }
+              values.push(v);
+              valuesLength += v.length;
+            }
+          }
+        }
+        acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
+        if (!m.post.length)
+          break;
+        str = m.post;
+      }
+      return acc;
+    }
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js
+var require_assert_valid_pattern = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.assertValidPattern = void 0;
+    var MAX_PATTERN_LENGTH = 1024 * 64;
+    var assertValidPattern = (pattern) => {
+      if (typeof pattern !== "string") {
+        throw new TypeError("invalid pattern");
+      }
+      if (pattern.length > MAX_PATTERN_LENGTH) {
+        throw new TypeError("pattern is too long");
+      }
+    };
+    exports2.assertValidPattern = assertValidPattern;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js
+var require_brace_expressions = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/brace-expressions.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.parseClass = void 0;
+    var posixClasses = {
+      "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true],
+      "[:alpha:]": ["\\p{L}\\p{Nl}", true],
+      "[:ascii:]": ["\\x00-\\x7f", false],
+      "[:blank:]": ["\\p{Zs}\\t", true],
+      "[:cntrl:]": ["\\p{Cc}", true],
+      "[:digit:]": ["\\p{Nd}", true],
+      "[:graph:]": ["\\p{Z}\\p{C}", true, true],
+      "[:lower:]": ["\\p{Ll}", true],
+      "[:print:]": ["\\p{C}", true],
+      "[:punct:]": ["\\p{P}", true],
+      "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true],
+      "[:upper:]": ["\\p{Lu}", true],
+      "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true],
+      "[:xdigit:]": ["A-Fa-f0-9", false]
+    };
+    var braceEscape = (s) => s.replace(/[[\]\\-]/g, "\\$&");
+    var regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var rangesToString = (ranges) => ranges.join("");
+    var parseClass = (glob2, position) => {
+      const pos = position;
+      if (glob2.charAt(pos) !== "[") {
+        throw new Error("not in a brace expression");
+      }
+      const ranges = [];
+      const negs = [];
+      let i = pos + 1;
+      let sawStart = false;
+      let uflag = false;
+      let escaping = false;
+      let negate = false;
+      let endPos = pos;
+      let rangeStart = "";
+      WHILE: while (i < glob2.length) {
+        const c = glob2.charAt(i);
+        if ((c === "!" || c === "^") && i === pos + 1) {
+          negate = true;
+          i++;
+          continue;
+        }
+        if (c === "]" && sawStart && !escaping) {
+          endPos = i + 1;
+          break;
+        }
+        sawStart = true;
+        if (c === "\\") {
+          if (!escaping) {
+            escaping = true;
+            i++;
+            continue;
+          }
+        }
+        if (c === "[" && !escaping) {
+          for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) {
+            if (glob2.startsWith(cls, i)) {
+              if (rangeStart) {
+                return ["$.", false, glob2.length - pos, true];
+              }
+              i += cls.length;
+              if (neg)
+                negs.push(unip);
+              else
+                ranges.push(unip);
+              uflag = uflag || u;
+              continue WHILE;
+            }
+          }
+        }
+        escaping = false;
+        if (rangeStart) {
+          if (c > rangeStart) {
+            ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c));
+          } else if (c === rangeStart) {
+            ranges.push(braceEscape(c));
+          }
+          rangeStart = "";
+          i++;
+          continue;
+        }
+        if (glob2.startsWith("-]", i + 1)) {
+          ranges.push(braceEscape(c + "-"));
+          i += 2;
+          continue;
+        }
+        if (glob2.startsWith("-", i + 1)) {
+          rangeStart = c;
+          i += 2;
+          continue;
+        }
+        ranges.push(braceEscape(c));
+        i++;
+      }
+      if (endPos < i) {
+        return ["", false, 0, false];
+      }
+      if (!ranges.length && !negs.length) {
+        return ["$.", false, glob2.length - pos, true];
+      }
+      if (negs.length === 0 && ranges.length === 1 && /^\\?.$/.test(ranges[0]) && !negate) {
+        const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0];
+        return [regexpEscape(r), false, endPos - pos, false];
+      }
+      const sranges = "[" + (negate ? "^" : "") + rangesToString(ranges) + "]";
+      const snegs = "[" + (negate ? "" : "^") + rangesToString(negs) + "]";
+      const comb = ranges.length && negs.length ? "(" + sranges + "|" + snegs + ")" : ranges.length ? sranges : snegs;
+      return [comb, uflag, endPos - pos, true];
+    };
+    exports2.parseClass = parseClass;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js
+var require_unescape = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/unescape.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.unescape = void 0;
+    var unescape2 = (s, { windowsPathsNoEscape = false, magicalBraces = true } = {}) => {
+      if (magicalBraces) {
+        return windowsPathsNoEscape ? s.replace(/\[([^/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\])\]/g, "$1$2").replace(/\\([^/])/g, "$1");
+      }
+      return windowsPathsNoEscape ? s.replace(/\[([^/\\{}])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\{}])\]/g, "$1$2").replace(/\\([^/{}])/g, "$1");
+    };
+    exports2.unescape = unescape2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js
+var require_ast = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/ast.js"(exports2) {
+    "use strict";
+    var _a7;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.AST = void 0;
+    var brace_expressions_js_1 = require_brace_expressions();
+    var unescape_js_1 = require_unescape();
+    var types2 = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
+    var isExtglobType = (c) => types2.has(c);
+    var isExtglobAST = (c) => isExtglobType(c.type);
+    var adoptionMap = /* @__PURE__ */ new Map([
+      ["!", ["@"]],
+      ["?", ["?", "@"]],
+      ["@", ["@"]],
+      ["*", ["*", "+", "?", "@"]],
+      ["+", ["+", "@"]]
+    ]);
+    var adoptionWithSpaceMap = /* @__PURE__ */ new Map([
+      ["!", ["?"]],
+      ["@", ["?"]],
+      ["+", ["?", "*"]]
+    ]);
+    var adoptionAnyMap = /* @__PURE__ */ new Map([
+      ["!", ["?", "@"]],
+      ["?", ["?", "@"]],
+      ["@", ["?", "@"]],
+      ["*", ["*", "+", "?", "@"]],
+      ["+", ["+", "@", "?", "*"]]
+    ]);
+    var usurpMap = /* @__PURE__ */ new Map([
+      ["!", /* @__PURE__ */ new Map([["!", "@"]])],
+      [
+        "?",
+        /* @__PURE__ */ new Map([
+          ["*", "*"],
+          ["+", "*"]
+        ])
+      ],
+      [
+        "@",
+        /* @__PURE__ */ new Map([
+          ["!", "!"],
+          ["?", "?"],
+          ["@", "@"],
+          ["*", "*"],
+          ["+", "+"]
+        ])
+      ],
+      [
+        "+",
+        /* @__PURE__ */ new Map([
+          ["?", "*"],
+          ["*", "*"]
+        ])
+      ]
+    ]);
+    var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
+    var startNoDot = "(?!\\.)";
+    var addPatternStart = /* @__PURE__ */ new Set(["[", "."]);
+    var justDots = /* @__PURE__ */ new Set(["..", "."]);
+    var reSpecials = new Set("().*{}+?[]^$\\!");
+    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var qmark = "[^/]";
+    var star = qmark + "*?";
+    var starNoEmpty = qmark + "+?";
+    var ID = 0;
+    var AST = class {
+      type;
+      #root;
+      #hasMagic;
+      #uflag = false;
+      #parts = [];
+      #parent;
+      #parentIndex;
+      #negs;
+      #filledNegs = false;
+      #options;
+      #toString;
+      // set to true if it's an extglob with no children
+      // (which really means one child of '')
+      #emptyExt = false;
+      id = ++ID;
+      get depth() {
+        return (this.#parent?.depth ?? -1) + 1;
+      }
+      [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")]() {
+        return {
+          "@@type": "AST",
+          id: this.id,
+          type: this.type,
+          root: this.#root.id,
+          parent: this.#parent?.id,
+          depth: this.depth,
+          partsLength: this.#parts.length,
+          parts: this.#parts
+        };
+      }
+      constructor(type, parent, options = {}) {
+        this.type = type;
+        if (type)
+          this.#hasMagic = true;
+        this.#parent = parent;
+        this.#root = this.#parent ? this.#parent.#root : this;
+        this.#options = this.#root === this ? options : this.#root.#options;
+        this.#negs = this.#root === this ? [] : this.#root.#negs;
+        if (type === "!" && !this.#root.#filledNegs)
+          this.#negs.push(this);
+        this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0;
+      }
+      get hasMagic() {
+        if (this.#hasMagic !== void 0)
+          return this.#hasMagic;
+        for (const p of this.#parts) {
+          if (typeof p === "string")
+            continue;
+          if (p.type || p.hasMagic)
+            return this.#hasMagic = true;
+        }
+        return this.#hasMagic;
+      }
+      // reconstructs the pattern
+      toString() {
+        return this.#toString !== void 0 ? this.#toString : !this.type ? this.#toString = this.#parts.map((p) => String(p)).join("") : this.#toString = this.type + "(" + this.#parts.map((p) => String(p)).join("|") + ")";
+      }
+      #fillNegs() {
+        if (this !== this.#root)
+          throw new Error("should only call on root");
+        if (this.#filledNegs)
+          return this;
+        this.toString();
+        this.#filledNegs = true;
+        let n;
+        while (n = this.#negs.pop()) {
+          if (n.type !== "!")
+            continue;
+          let p = n;
+          let pp = p.#parent;
+          while (pp) {
+            for (let i = p.#parentIndex + 1; !pp.type && i < pp.#parts.length; i++) {
+              for (const part of n.#parts) {
+                if (typeof part === "string") {
+                  throw new Error("string part in extglob AST??");
+                }
+                part.copyIn(pp.#parts[i]);
+              }
+            }
+            p = pp;
+            pp = p.#parent;
+          }
+        }
+        return this;
+      }
+      push(...parts) {
+        for (const p of parts) {
+          if (p === "")
+            continue;
+          if (typeof p !== "string" && !(p instanceof _a7 && p.#parent === this)) {
+            throw new Error("invalid part: " + p);
+          }
+          this.#parts.push(p);
+        }
+      }
+      toJSON() {
+        const ret = this.type === null ? this.#parts.slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...this.#parts.map((p) => p.toJSON())];
+        if (this.isStart() && !this.type)
+          ret.unshift([]);
+        if (this.isEnd() && (this === this.#root || this.#root.#filledNegs && this.#parent?.type === "!")) {
+          ret.push({});
+        }
+        return ret;
+      }
+      isStart() {
+        if (this.#root === this)
+          return true;
+        if (!this.#parent?.isStart())
+          return false;
+        if (this.#parentIndex === 0)
+          return true;
+        const p = this.#parent;
+        for (let i = 0; i < this.#parentIndex; i++) {
+          const pp = p.#parts[i];
+          if (!(pp instanceof _a7 && pp.type === "!")) {
+            return false;
+          }
+        }
+        return true;
+      }
+      isEnd() {
+        if (this.#root === this)
+          return true;
+        if (this.#parent?.type === "!")
+          return true;
+        if (!this.#parent?.isEnd())
+          return false;
+        if (!this.type)
+          return this.#parent?.isEnd();
+        const pl = this.#parent ? this.#parent.#parts.length : 0;
+        return this.#parentIndex === pl - 1;
+      }
+      copyIn(part) {
+        if (typeof part === "string")
+          this.push(part);
+        else
+          this.push(part.clone(this));
+      }
+      clone(parent) {
+        const c = new _a7(this.type, parent);
+        for (const p of this.#parts) {
+          c.copyIn(p);
+        }
+        return c;
+      }
+      static #parseAST(str, ast, pos, opt, extDepth) {
+        const maxDepth = opt.maxExtglobRecursion ?? 2;
+        let escaping = false;
+        let inBrace = false;
+        let braceStart = -1;
+        let braceNeg = false;
+        if (ast.type === null) {
+          let i2 = pos;
+          let acc2 = "";
+          while (i2 < str.length) {
+            const c = str.charAt(i2++);
+            if (escaping || c === "\\") {
+              escaping = !escaping;
+              acc2 += c;
+              continue;
+            }
+            if (inBrace) {
+              if (i2 === braceStart + 1) {
+                if (c === "^" || c === "!") {
+                  braceNeg = true;
+                }
+              } else if (c === "]" && !(i2 === braceStart + 2 && braceNeg)) {
+                inBrace = false;
+              }
+              acc2 += c;
+              continue;
+            } else if (c === "[") {
+              inBrace = true;
+              braceStart = i2;
+              braceNeg = false;
+              acc2 += c;
+              continue;
+            }
+            const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i2) === "(" && extDepth <= maxDepth;
+            if (doRecurse) {
+              ast.push(acc2);
+              acc2 = "";
+              const ext = new _a7(c, ast);
+              i2 = _a7.#parseAST(str, ext, i2, opt, extDepth + 1);
+              ast.push(ext);
+              continue;
+            }
+            acc2 += c;
+          }
+          ast.push(acc2);
+          return i2;
+        }
+        let i = pos + 1;
+        let part = new _a7(null, ast);
+        const parts = [];
+        let acc = "";
+        while (i < str.length) {
+          const c = str.charAt(i++);
+          if (escaping || c === "\\") {
+            escaping = !escaping;
+            acc += c;
+            continue;
+          }
+          if (inBrace) {
+            if (i === braceStart + 1) {
+              if (c === "^" || c === "!") {
+                braceNeg = true;
+              }
+            } else if (c === "]" && !(i === braceStart + 2 && braceNeg)) {
+              inBrace = false;
+            }
+            acc += c;
+            continue;
+          } else if (c === "[") {
+            inBrace = true;
+            braceStart = i;
+            braceNeg = false;
+            acc += c;
+            continue;
+          }
+          const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i) === "(" && /* c8 ignore start - the maxDepth is sufficient here */
+          (extDepth <= maxDepth || ast && ast.#canAdoptType(c));
+          if (doRecurse) {
+            const depthAdd = ast && ast.#canAdoptType(c) ? 0 : 1;
+            part.push(acc);
+            acc = "";
+            const ext = new _a7(c, part);
+            part.push(ext);
+            i = _a7.#parseAST(str, ext, i, opt, extDepth + depthAdd);
+            continue;
+          }
+          if (c === "|") {
+            part.push(acc);
+            acc = "";
+            parts.push(part);
+            part = new _a7(null, ast);
+            continue;
+          }
+          if (c === ")") {
+            if (acc === "" && ast.#parts.length === 0) {
+              ast.#emptyExt = true;
+            }
+            part.push(acc);
+            acc = "";
+            ast.push(...parts, part);
+            return i;
+          }
+          acc += c;
+        }
+        ast.type = null;
+        ast.#hasMagic = void 0;
+        ast.#parts = [str.substring(pos - 1)];
+        return i;
+      }
+      #canAdoptWithSpace(child) {
+        return this.#canAdopt(child, adoptionWithSpaceMap);
+      }
+      #canAdopt(child, map = adoptionMap) {
+        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null) {
+          return false;
+        }
+        const gc = child.#parts[0];
+        if (!gc || typeof gc !== "object" || gc.type === null) {
+          return false;
+        }
+        return this.#canAdoptType(gc.type, map);
+      }
+      #canAdoptType(c, map = adoptionAnyMap) {
+        return !!map.get(this.type)?.includes(c);
+      }
+      #adoptWithSpace(child, index) {
+        const gc = child.#parts[0];
+        const blank = new _a7(null, gc, this.options);
+        blank.#parts.push("");
+        gc.push(blank);
+        this.#adopt(child, index);
+      }
+      #adopt(child, index) {
+        const gc = child.#parts[0];
+        this.#parts.splice(index, 1, ...gc.#parts);
+        for (const p of gc.#parts) {
+          if (typeof p === "object")
+            p.#parent = this;
+        }
+        this.#toString = void 0;
+      }
+      #canUsurpType(c) {
+        const m = usurpMap.get(this.type);
+        return !!m?.has(c);
+      }
+      #canUsurp(child) {
+        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null || this.#parts.length !== 1) {
+          return false;
+        }
+        const gc = child.#parts[0];
+        if (!gc || typeof gc !== "object" || gc.type === null) {
+          return false;
+        }
+        return this.#canUsurpType(gc.type);
+      }
+      #usurp(child) {
+        const m = usurpMap.get(this.type);
+        const gc = child.#parts[0];
+        const nt = m?.get(gc.type);
+        if (!nt)
+          return false;
+        this.#parts = gc.#parts;
+        for (const p of this.#parts) {
+          if (typeof p === "object") {
+            p.#parent = this;
+          }
+        }
+        this.type = nt;
+        this.#toString = void 0;
+        this.#emptyExt = false;
+      }
+      static fromGlob(pattern, options = {}) {
+        const ast = new _a7(null, void 0, options);
+        _a7.#parseAST(pattern, ast, 0, options, 0);
+        return ast;
+      }
+      // returns the regular expression if there's magic, or the unescaped
+      // string if not.
+      toMMPattern() {
+        if (this !== this.#root)
+          return this.#root.toMMPattern();
+        const glob2 = this.toString();
+        const [re, body, hasMagic, uflag] = this.toRegExpSource();
+        const anyMagic = hasMagic || this.#hasMagic || this.#options.nocase && !this.#options.nocaseMagicOnly && glob2.toUpperCase() !== glob2.toLowerCase();
+        if (!anyMagic) {
+          return body;
+        }
+        const flags = (this.#options.nocase ? "i" : "") + (uflag ? "u" : "");
+        return Object.assign(new RegExp(`^${re}$`, flags), {
+          _src: re,
+          _glob: glob2
+        });
+      }
+      get options() {
+        return this.#options;
+      }
+      // returns the string match, the regexp source, whether there's magic
+      // in the regexp (so a regular expression is required) and whether or
+      // not the uflag is needed for the regular expression (for posix classes)
+      // TODO: instead of injecting the start/end at this point, just return
+      // the BODY of the regexp, along with the start/end portions suitable
+      // for binding the start/end in either a joined full-path makeRe context
+      // (where we bind to (^|/), or a standalone matchPart context (where
+      // we bind to ^, and not /).  Otherwise slashes get duped!
+      //
+      // In part-matching mode, the start is:
+      // - if not isStart: nothing
+      // - if traversal possible, but not allowed: ^(?!\.\.?$)
+      // - if dots allowed or not possible: ^
+      // - if dots possible and not allowed: ^(?!\.)
+      // end is:
+      // - if not isEnd(): nothing
+      // - else: $
+      //
+      // In full-path matching mode, we put the slash at the START of the
+      // pattern, so start is:
+      // - if first pattern: same as part-matching mode
+      // - if not isStart(): nothing
+      // - if traversal possible, but not allowed: /(?!\.\.?(?:$|/))
+      // - if dots allowed or not possible: /
+      // - if dots possible and not allowed: /(?!\.)
+      // end is:
+      // - if last pattern, same as part-matching mode
+      // - else nothing
+      //
+      // Always put the (?:$|/) on negated tails, though, because that has to be
+      // there to bind the end of the negated pattern portion, and it's easier to
+      // just stick it in now rather than try to inject it later in the middle of
+      // the pattern.
+      //
+      // We can just always return the same end, and leave it up to the caller
+      // to know whether it's going to be used joined or in parts.
+      // And, if the start is adjusted slightly, can do the same there:
+      // - if not isStart: nothing
+      // - if traversal possible, but not allowed: (?:/|^)(?!\.\.?$)
+      // - if dots allowed or not possible: (?:/|^)
+      // - if dots possible and not allowed: (?:/|^)(?!\.)
+      //
+      // But it's better to have a simpler binding without a conditional, for
+      // performance, so probably better to return both start options.
+      //
+      // Then the caller just ignores the end if it's not the first pattern,
+      // and the start always gets applied.
+      //
+      // But that's always going to be $ if it's the ending pattern, or nothing,
+      // so the caller can just attach $ at the end of the pattern when building.
+      //
+      // So the todo is:
+      // - better detect what kind of start is needed
+      // - return both flavors of starting pattern
+      // - attach $ at the end of the pattern when creating the actual RegExp
+      //
+      // Ah, but wait, no, that all only applies to the root when the first pattern
+      // is not an extglob. If the first pattern IS an extglob, then we need all
+      // that dot prevention biz to live in the extglob portions, because eg
+      // +(*|.x*) can match .xy but not .yx.
+      //
+      // So, return the two flavors if it's #root and the first child is not an
+      // AST, otherwise leave it to the child AST to handle it, and there,
+      // use the (?:^|/) style of start binding.
+      //
+      // Even simplified further:
+      // - Since the start for a join is eg /(?!\.) and the start for a part
+      // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root
+      // or start or whatever) and prepend ^ or / at the Regexp construction.
+      toRegExpSource(allowDot) {
+        const dot = allowDot ?? !!this.#options.dot;
+        if (this.#root === this) {
+          this.#flatten();
+          this.#fillNegs();
+        }
+        if (!isExtglobAST(this)) {
+          const noEmpty = this.isStart() && this.isEnd() && !this.#parts.some((s) => typeof s !== "string");
+          const src = this.#parts.map((p) => {
+            const [re, _, hasMagic, uflag] = typeof p === "string" ? _a7.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot);
+            this.#hasMagic = this.#hasMagic || hasMagic;
+            this.#uflag = this.#uflag || uflag;
+            return re;
+          }).join("");
+          let start2 = "";
+          if (this.isStart()) {
+            if (typeof this.#parts[0] === "string") {
+              const dotTravAllowed = this.#parts.length === 1 && justDots.has(this.#parts[0]);
+              if (!dotTravAllowed) {
+                const aps = addPatternStart;
+                const needNoTrav = (
+                  // dots are allowed, and the pattern starts with [ or .
+                  dot && aps.has(src.charAt(0)) || // the pattern starts with \., and then [ or .
+                  src.startsWith("\\.") && aps.has(src.charAt(2)) || // the pattern starts with \.\., and then [ or .
+                  src.startsWith("\\.\\.") && aps.has(src.charAt(4))
+                );
+                const needNoDot = !dot && !allowDot && aps.has(src.charAt(0));
+                start2 = needNoTrav ? startNoTraversal : needNoDot ? startNoDot : "";
+              }
+            }
+          }
+          let end = "";
+          if (this.isEnd() && this.#root.#filledNegs && this.#parent?.type === "!") {
+            end = "(?:$|\\/)";
+          }
+          const final2 = start2 + src + end;
+          return [
+            final2,
+            (0, unescape_js_1.unescape)(src),
+            this.#hasMagic = !!this.#hasMagic,
+            this.#uflag
+          ];
+        }
+        const repeated = this.type === "*" || this.type === "+";
+        const start = this.type === "!" ? "(?:(?!(?:" : "(?:";
+        let body = this.#partsToRegExp(dot);
+        if (this.isStart() && this.isEnd() && !body && this.type !== "!") {
+          const s = this.toString();
+          const me = this;
+          me.#parts = [s];
+          me.type = null;
+          me.#hasMagic = void 0;
+          return [s, (0, unescape_js_1.unescape)(this.toString()), false, false];
+        }
+        let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : this.#partsToRegExp(true);
+        if (bodyDotAllowed === body) {
+          bodyDotAllowed = "";
+        }
+        if (bodyDotAllowed) {
+          body = `(?:${body})(?:${bodyDotAllowed})*?`;
+        }
+        let final = "";
+        if (this.type === "!" && this.#emptyExt) {
+          final = (this.isStart() && !dot ? startNoDot : "") + starNoEmpty;
+        } else {
+          const close = this.type === "!" ? (
+            // !() must match something,but !(x) can match ''
+            "))" + (this.isStart() && !dot && !allowDot ? startNoDot : "") + star + ")"
+          ) : this.type === "@" ? ")" : this.type === "?" ? ")?" : this.type === "+" && bodyDotAllowed ? ")" : this.type === "*" && bodyDotAllowed ? `)?` : `)${this.type}`;
+          final = start + body + close;
+        }
+        return [
+          final,
+          (0, unescape_js_1.unescape)(body),
+          this.#hasMagic = !!this.#hasMagic,
+          this.#uflag
+        ];
+      }
+      #flatten() {
+        if (!isExtglobAST(this)) {
+          for (const p of this.#parts) {
+            if (typeof p === "object") {
+              p.#flatten();
+            }
+          }
+        } else {
+          let iterations = 0;
+          let done = false;
+          do {
+            done = true;
+            for (let i = 0; i < this.#parts.length; i++) {
+              const c = this.#parts[i];
+              if (typeof c === "object") {
+                c.#flatten();
+                if (this.#canAdopt(c)) {
+                  done = false;
+                  this.#adopt(c, i);
+                } else if (this.#canAdoptWithSpace(c)) {
+                  done = false;
+                  this.#adoptWithSpace(c, i);
+                } else if (this.#canUsurp(c)) {
+                  done = false;
+                  this.#usurp(c);
+                }
+              }
+            }
+          } while (!done && ++iterations < 10);
+        }
+        this.#toString = void 0;
+      }
+      #partsToRegExp(dot) {
+        return this.#parts.map((p) => {
+          if (typeof p === "string") {
+            throw new Error("string type in extglob ast??");
+          }
+          const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot);
+          this.#uflag = this.#uflag || uflag;
+          return re;
+        }).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|");
+      }
+      static #parseGlob(glob2, hasMagic, noEmpty = false) {
+        let escaping = false;
+        let re = "";
+        let uflag = false;
+        let inStar = false;
+        for (let i = 0; i < glob2.length; i++) {
+          const c = glob2.charAt(i);
+          if (escaping) {
+            escaping = false;
+            re += (reSpecials.has(c) ? "\\" : "") + c;
+            continue;
+          }
+          if (c === "*") {
+            if (inStar)
+              continue;
+            inStar = true;
+            re += noEmpty && /^[*]+$/.test(glob2) ? starNoEmpty : star;
+            hasMagic = true;
+            continue;
+          } else {
+            inStar = false;
+          }
+          if (c === "\\") {
+            if (i === glob2.length - 1) {
+              re += "\\\\";
+            } else {
+              escaping = true;
+            }
+            continue;
+          }
+          if (c === "[") {
+            const [src, needUflag, consumed, magic] = (0, brace_expressions_js_1.parseClass)(glob2, i);
+            if (consumed) {
+              re += src;
+              uflag = uflag || needUflag;
+              i += consumed - 1;
+              hasMagic = hasMagic || magic;
+              continue;
+            }
+          }
+          if (c === "?") {
+            re += qmark;
+            hasMagic = true;
+            continue;
+          }
+          re += regExpEscape(c);
+        }
+        return [re, (0, unescape_js_1.unescape)(glob2), !!hasMagic, uflag];
+      }
+    };
+    exports2.AST = AST;
+    _a7 = AST;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js
+var require_escape = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/escape.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.escape = void 0;
+    var escape = (s, { windowsPathsNoEscape = false, magicalBraces = false } = {}) => {
+      if (magicalBraces) {
+        return windowsPathsNoEscape ? s.replace(/[?*()[\]{}]/g, "[$&]") : s.replace(/[?*()[\]\\{}]/g, "\\$&");
+      }
+      return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&");
+    };
+    exports2.escape = escape;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js
+var require_commonjs3 = __commonJS({
+  "../../aws-cdk-lib/node_modules/minimatch/dist/commonjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.unescape = exports2.escape = exports2.AST = exports2.Minimatch = exports2.match = exports2.makeRe = exports2.braceExpand = exports2.defaults = exports2.filter = exports2.GLOBSTAR = exports2.sep = exports2.minimatch = void 0;
+    var brace_expansion_1 = require_commonjs2();
+    var assert_valid_pattern_js_1 = require_assert_valid_pattern();
+    var ast_js_1 = require_ast();
+    var escape_js_1 = require_escape();
+    var unescape_js_1 = require_unescape();
+    var minimatch4 = (p, pattern, options = {}) => {
+      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+      if (!options.nocomment && pattern.charAt(0) === "#") {
+        return false;
+      }
+      return new Minimatch(pattern, options).match(p);
+    };
+    exports2.minimatch = minimatch4;
+    var starDotExtRE = /^\*+([^+@!?*[(]*)$/;
+    var starDotExtTest = (ext2) => (f) => !f.startsWith(".") && f.endsWith(ext2);
+    var starDotExtTestDot = (ext2) => (f) => f.endsWith(ext2);
+    var starDotExtTestNocase = (ext2) => {
+      ext2 = ext2.toLowerCase();
+      return (f) => !f.startsWith(".") && f.toLowerCase().endsWith(ext2);
+    };
+    var starDotExtTestNocaseDot = (ext2) => {
+      ext2 = ext2.toLowerCase();
+      return (f) => f.toLowerCase().endsWith(ext2);
+    };
+    var starDotStarRE = /^\*+\.\*+$/;
+    var starDotStarTest = (f) => !f.startsWith(".") && f.includes(".");
+    var starDotStarTestDot = (f) => f !== "." && f !== ".." && f.includes(".");
+    var dotStarRE = /^\.\*+$/;
+    var dotStarTest = (f) => f !== "." && f !== ".." && f.startsWith(".");
+    var starRE = /^\*+$/;
+    var starTest = (f) => f.length !== 0 && !f.startsWith(".");
+    var starTestDot = (f) => f.length !== 0 && f !== "." && f !== "..";
+    var qmarksRE = /^\?+([^+@!?*[(]*)?$/;
+    var qmarksTestNocase = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExt([$0]);
+      if (!ext2)
+        return noext;
+      ext2 = ext2.toLowerCase();
+      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
+    };
+    var qmarksTestNocaseDot = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExtDot([$0]);
+      if (!ext2)
+        return noext;
+      ext2 = ext2.toLowerCase();
+      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
+    };
+    var qmarksTestDot = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExtDot([$0]);
+      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
+    };
+    var qmarksTest = ([$0, ext2 = ""]) => {
+      const noext = qmarksTestNoExt([$0]);
+      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
+    };
+    var qmarksTestNoExt = ([$0]) => {
+      const len = $0.length;
+      return (f) => f.length === len && !f.startsWith(".");
+    };
+    var qmarksTestNoExtDot = ([$0]) => {
+      const len = $0.length;
+      return (f) => f.length === len && f !== "." && f !== "..";
+    };
+    var defaultPlatform = typeof process === "object" && process ? typeof process.env === "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix";
+    var path23 = {
+      win32: { sep: "\\" },
+      posix: { sep: "/" }
+    };
+    exports2.sep = defaultPlatform === "win32" ? path23.win32.sep : path23.posix.sep;
+    exports2.minimatch.sep = exports2.sep;
+    exports2.GLOBSTAR = /* @__PURE__ */ Symbol("globstar **");
+    exports2.minimatch.GLOBSTAR = exports2.GLOBSTAR;
+    var qmark = "[^/]";
+    var star = qmark + "*?";
+    var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
+    var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
+    var filter = (pattern, options = {}) => (p) => (0, exports2.minimatch)(p, pattern, options);
+    exports2.filter = filter;
+    exports2.minimatch.filter = exports2.filter;
+    var ext = (a, b = {}) => Object.assign({}, a, b);
+    var defaults = (def) => {
+      if (!def || typeof def !== "object" || !Object.keys(def).length) {
+        return exports2.minimatch;
+      }
+      const orig = exports2.minimatch;
+      const m = (p, pattern, options = {}) => orig(p, pattern, ext(def, options));
+      return Object.assign(m, {
+        Minimatch: class Minimatch extends orig.Minimatch {
+          constructor(pattern, options = {}) {
+            super(pattern, ext(def, options));
+          }
+          static defaults(options) {
+            return orig.defaults(ext(def, options)).Minimatch;
+          }
+        },
+        AST: class AST extends orig.AST {
+          /* c8 ignore start */
+          constructor(type, parent, options = {}) {
+            super(type, parent, ext(def, options));
+          }
+          /* c8 ignore stop */
+          static fromGlob(pattern, options = {}) {
+            return orig.AST.fromGlob(pattern, ext(def, options));
+          }
+        },
+        unescape: (s, options = {}) => orig.unescape(s, ext(def, options)),
+        escape: (s, options = {}) => orig.escape(s, ext(def, options)),
+        filter: (pattern, options = {}) => orig.filter(pattern, ext(def, options)),
+        defaults: (options) => orig.defaults(ext(def, options)),
+        makeRe: (pattern, options = {}) => orig.makeRe(pattern, ext(def, options)),
+        braceExpand: (pattern, options = {}) => orig.braceExpand(pattern, ext(def, options)),
+        match: (list, pattern, options = {}) => orig.match(list, pattern, ext(def, options)),
+        sep: orig.sep,
+        GLOBSTAR: exports2.GLOBSTAR
+      });
+    };
+    exports2.defaults = defaults;
+    exports2.minimatch.defaults = exports2.defaults;
+    var braceExpand = (pattern, options = {}) => {
+      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+      if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
+        return [pattern];
+      }
+      return (0, brace_expansion_1.expand)(pattern, { max: options.braceExpandMax });
+    };
+    exports2.braceExpand = braceExpand;
+    exports2.minimatch.braceExpand = exports2.braceExpand;
+    var makeRe = (pattern, options = {}) => new Minimatch(pattern, options).makeRe();
+    exports2.makeRe = makeRe;
+    exports2.minimatch.makeRe = exports2.makeRe;
+    var match = (list, pattern, options = {}) => {
+      const mm = new Minimatch(pattern, options);
+      list = list.filter((f) => mm.match(f));
+      if (mm.options.nonull && !list.length) {
+        list.push(pattern);
+      }
+      return list;
+    };
+    exports2.match = match;
+    exports2.minimatch.match = exports2.match;
+    var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
+    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
+    var Minimatch = class {
+      options;
+      set;
+      pattern;
+      windowsPathsNoEscape;
+      nonegate;
+      negate;
+      comment;
+      empty;
+      preserveMultipleSlashes;
+      partial;
+      globSet;
+      globParts;
+      nocase;
+      isWindows;
+      platform;
+      windowsNoMagicRoot;
+      maxGlobstarRecursion;
+      regexp;
+      constructor(pattern, options = {}) {
+        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+        options = options || {};
+        this.options = options;
+        this.maxGlobstarRecursion = options.maxGlobstarRecursion ?? 200;
+        this.pattern = pattern;
+        this.platform = options.platform || defaultPlatform;
+        this.isWindows = this.platform === "win32";
+        const awe = "allowWindowsEscape";
+        this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options[awe] === false;
+        if (this.windowsPathsNoEscape) {
+          this.pattern = this.pattern.replace(/\\/g, "/");
+        }
+        this.preserveMultipleSlashes = !!options.preserveMultipleSlashes;
+        this.regexp = null;
+        this.negate = false;
+        this.nonegate = !!options.nonegate;
+        this.comment = false;
+        this.empty = false;
+        this.partial = !!options.partial;
+        this.nocase = !!this.options.nocase;
+        this.windowsNoMagicRoot = options.windowsNoMagicRoot !== void 0 ? options.windowsNoMagicRoot : !!(this.isWindows && this.nocase);
+        this.globSet = [];
+        this.globParts = [];
+        this.set = [];
+        this.make();
+      }
+      hasMagic() {
+        if (this.options.magicalBraces && this.set.length > 1) {
+          return true;
+        }
+        for (const pattern of this.set) {
+          for (const part of pattern) {
+            if (typeof part !== "string")
+              return true;
+          }
+        }
+        return false;
+      }
+      debug(..._) {
+      }
+      make() {
+        const pattern = this.pattern;
+        const options = this.options;
+        if (!options.nocomment && pattern.charAt(0) === "#") {
+          this.comment = true;
+          return;
+        }
+        if (!pattern) {
+          this.empty = true;
+          return;
+        }
+        this.parseNegate();
+        this.globSet = [...new Set(this.braceExpand())];
+        if (options.debug) {
+          this.debug = (...args) => console.error(...args);
+        }
+        this.debug(this.pattern, this.globSet);
+        const rawGlobParts = this.globSet.map((s) => this.slashSplit(s));
+        this.globParts = this.preprocess(rawGlobParts);
+        this.debug(this.pattern, this.globParts);
+        let set = this.globParts.map((s, _, __) => {
+          if (this.isWindows && this.windowsNoMagicRoot) {
+            const isUNC = s[0] === "" && s[1] === "" && (s[2] === "?" || !globMagic.test(s[2])) && !globMagic.test(s[3]);
+            const isDrive = /^[a-z]:/i.test(s[0]);
+            if (isUNC) {
+              return [
+                ...s.slice(0, 4),
+                ...s.slice(4).map((ss) => this.parse(ss))
+              ];
+            } else if (isDrive) {
+              return [s[0], ...s.slice(1).map((ss) => this.parse(ss))];
+            }
+          }
+          return s.map((ss) => this.parse(ss));
+        });
+        this.debug(this.pattern, set);
+        this.set = set.filter((s) => s.indexOf(false) === -1);
+        if (this.isWindows) {
+          for (let i = 0; i < this.set.length; i++) {
+            const p = this.set[i];
+            if (p[0] === "" && p[1] === "" && this.globParts[i][2] === "?" && typeof p[3] === "string" && /^[a-z]:$/i.test(p[3])) {
+              p[2] = "?";
+            }
+          }
+        }
+        this.debug(this.pattern, this.set);
+      }
+      // various transforms to equivalent pattern sets that are
+      // faster to process in a filesystem walk.  The goal is to
+      // eliminate what we can, and push all ** patterns as far
+      // to the right as possible, even if it increases the number
+      // of patterns that we have to process.
+      preprocess(globParts) {
+        if (this.options.noglobstar) {
+          for (const partset of globParts) {
+            for (let j = 0; j < partset.length; j++) {
+              if (partset[j] === "**") {
+                partset[j] = "*";
+              }
+            }
+          }
+        }
+        const { optimizationLevel = 1 } = this.options;
+        if (optimizationLevel >= 2) {
+          globParts = this.firstPhasePreProcess(globParts);
+          globParts = this.secondPhasePreProcess(globParts);
+        } else if (optimizationLevel >= 1) {
+          globParts = this.levelOneOptimize(globParts);
+        } else {
+          globParts = this.adjascentGlobstarOptimize(globParts);
+        }
+        return globParts;
+      }
+      // just get rid of adjascent ** portions
+      adjascentGlobstarOptimize(globParts) {
+        return globParts.map((parts) => {
+          let gs = -1;
+          while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+            let i = gs;
+            while (parts[i + 1] === "**") {
+              i++;
+            }
+            if (i !== gs) {
+              parts.splice(gs, i - gs);
+            }
+          }
+          return parts;
+        });
+      }
+      // get rid of adjascent ** and resolve .. portions
+      levelOneOptimize(globParts) {
+        return globParts.map((parts) => {
+          parts = parts.reduce((set, part) => {
+            const prev = set[set.length - 1];
+            if (part === "**" && prev === "**") {
+              return set;
+            }
+            if (part === "..") {
+              if (prev && prev !== ".." && prev !== "." && prev !== "**") {
+                set.pop();
+                return set;
+              }
+            }
+            set.push(part);
+            return set;
+          }, []);
+          return parts.length === 0 ? [""] : parts;
+        });
+      }
+      levelTwoFileOptimize(parts) {
+        if (!Array.isArray(parts)) {
+          parts = this.slashSplit(parts);
+        }
+        let didSomething = false;
+        do {
+          didSomething = false;
+          if (!this.preserveMultipleSlashes) {
+            for (let i = 1; i < parts.length - 1; i++) {
+              const p = parts[i];
+              if (i === 1 && p === "" && parts[0] === "")
+                continue;
+              if (p === "." || p === "") {
+                didSomething = true;
+                parts.splice(i, 1);
+                i--;
+              }
+            }
+            if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+              didSomething = true;
+              parts.pop();
+            }
+          }
+          let dd = 0;
+          while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+            const p = parts[dd - 1];
+            if (p && p !== "." && p !== ".." && p !== "**" && !(this.isWindows && /^[a-z]:$/i.test(p))) {
+              didSomething = true;
+              parts.splice(dd - 1, 2);
+              dd -= 2;
+            }
+          }
+        } while (didSomething);
+        return parts.length === 0 ? [""] : parts;
+      }
+      // First phase: single-pattern processing
+      // 
 is 1 or more portions
+      //  is 1 or more portions
+      // 

is any portion other than ., .., '', or ** + // is . or '' + // + // **/.. is *brutal* for filesystem walking performance, because + // it effectively resets the recursive walk each time it occurs, + // and ** cannot be reduced out by a .. pattern part like a regexp + // or most strings (other than .., ., and '') can be. + // + //

/**/../

/

/ -> {

/../

/

/,

/**/

/

/} + //

// -> 
/
+      // 
/

/../ ->

/
+      // **/**/ -> **/
+      //
+      // **/*/ -> */**/ <== not valid because ** doesn't follow
+      // this WOULD be allowed if ** did follow symlinks, or * didn't
+      firstPhasePreProcess(globParts) {
+        let didSomething = false;
+        do {
+          didSomething = false;
+          for (let parts of globParts) {
+            let gs = -1;
+            while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+              let gss = gs;
+              while (parts[gss + 1] === "**") {
+                gss++;
+              }
+              if (gss > gs) {
+                parts.splice(gs + 1, gss - gs);
+              }
+              let next = parts[gs + 1];
+              const p = parts[gs + 2];
+              const p2 = parts[gs + 3];
+              if (next !== "..")
+                continue;
+              if (!p || p === "." || p === ".." || !p2 || p2 === "." || p2 === "..") {
+                continue;
+              }
+              didSomething = true;
+              parts.splice(gs, 1);
+              const other = parts.slice(0);
+              other[gs] = "**";
+              globParts.push(other);
+              gs--;
+            }
+            if (!this.preserveMultipleSlashes) {
+              for (let i = 1; i < parts.length - 1; i++) {
+                const p = parts[i];
+                if (i === 1 && p === "" && parts[0] === "")
+                  continue;
+                if (p === "." || p === "") {
+                  didSomething = true;
+                  parts.splice(i, 1);
+                  i--;
+                }
+              }
+              if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+                didSomething = true;
+                parts.pop();
+              }
+            }
+            let dd = 0;
+            while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+              const p = parts[dd - 1];
+              if (p && p !== "." && p !== ".." && p !== "**") {
+                didSomething = true;
+                const needDot = dd === 1 && parts[dd + 1] === "**";
+                const splin = needDot ? ["."] : [];
+                parts.splice(dd - 1, 2, ...splin);
+                if (parts.length === 0)
+                  parts.push("");
+                dd -= 2;
+              }
+            }
+          }
+        } while (didSomething);
+        return globParts;
+      }
+      // second phase: multi-pattern dedupes
+      // {
/*/,
/

/} ->

/*/
+      // {
/,
/} -> 
/
+      // {
/**/,
/} -> 
/**/
+      //
+      // {
/**/,
/**/

/} ->

/**/
+      // ^-- not valid because ** doens't follow symlinks
+      secondPhasePreProcess(globParts) {
+        for (let i = 0; i < globParts.length - 1; i++) {
+          for (let j = i + 1; j < globParts.length; j++) {
+            const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
+            if (matched) {
+              globParts[i] = [];
+              globParts[j] = matched;
+              break;
+            }
+          }
+        }
+        return globParts.filter((gs) => gs.length);
+      }
+      partsMatch(a, b, emptyGSMatch = false) {
+        let ai = 0;
+        let bi = 0;
+        let result = [];
+        let which = "";
+        while (ai < a.length && bi < b.length) {
+          if (a[ai] === b[bi]) {
+            result.push(which === "b" ? b[bi] : a[ai]);
+            ai++;
+            bi++;
+          } else if (emptyGSMatch && a[ai] === "**" && b[bi] === a[ai + 1]) {
+            result.push(a[ai]);
+            ai++;
+          } else if (emptyGSMatch && b[bi] === "**" && a[ai] === b[bi + 1]) {
+            result.push(b[bi]);
+            bi++;
+          } else if (a[ai] === "*" && b[bi] && (this.options.dot || !b[bi].startsWith(".")) && b[bi] !== "**") {
+            if (which === "b")
+              return false;
+            which = "a";
+            result.push(a[ai]);
+            ai++;
+            bi++;
+          } else if (b[bi] === "*" && a[ai] && (this.options.dot || !a[ai].startsWith(".")) && a[ai] !== "**") {
+            if (which === "a")
+              return false;
+            which = "b";
+            result.push(b[bi]);
+            ai++;
+            bi++;
+          } else {
+            return false;
+          }
+        }
+        return a.length === b.length && result;
+      }
+      parseNegate() {
+        if (this.nonegate)
+          return;
+        const pattern = this.pattern;
+        let negate = false;
+        let negateOffset = 0;
+        for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) {
+          negate = !negate;
+          negateOffset++;
+        }
+        if (negateOffset)
+          this.pattern = pattern.slice(negateOffset);
+        this.negate = negate;
+      }
+      // set partial to true to test if, for example,
+      // "/a/b" matches the start of "/*/b/*/d"
+      // Partial means, if you run out of file before you run
+      // out of pattern, then that's fine, as long as all
+      // the parts match.
+      matchOne(file, pattern, partial = false) {
+        let fileStartIndex = 0;
+        let patternStartIndex = 0;
+        if (this.isWindows) {
+          const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
+          const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
+          const patternDrive = typeof pattern[0] === "string" && /^[a-z]:$/i.test(pattern[0]);
+          const patternUNC = !patternDrive && pattern[0] === "" && pattern[1] === "" && pattern[2] === "?" && typeof pattern[3] === "string" && /^[a-z]:$/i.test(pattern[3]);
+          const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
+          const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
+          if (typeof fdi === "number" && typeof pdi === "number") {
+            const [fd, pd] = [
+              file[fdi],
+              pattern[pdi]
+            ];
+            if (fd.toLowerCase() === pd.toLowerCase()) {
+              pattern[pdi] = fd;
+              patternStartIndex = pdi;
+              fileStartIndex = fdi;
+            }
+          }
+        }
+        const { optimizationLevel = 1 } = this.options;
+        if (optimizationLevel >= 2) {
+          file = this.levelTwoFileOptimize(file);
+        }
+        if (pattern.includes(exports2.GLOBSTAR)) {
+          return this.#matchGlobstar(file, pattern, partial, fileStartIndex, patternStartIndex);
+        }
+        return this.#matchOne(file, pattern, partial, fileStartIndex, patternStartIndex);
+      }
+      #matchGlobstar(file, pattern, partial, fileIndex, patternIndex) {
+        const firstgs = pattern.indexOf(exports2.GLOBSTAR, patternIndex);
+        const lastgs = pattern.lastIndexOf(exports2.GLOBSTAR);
+        const [head, body, tail] = partial ? [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1),
+          []
+        ] : [
+          pattern.slice(patternIndex, firstgs),
+          pattern.slice(firstgs + 1, lastgs),
+          pattern.slice(lastgs + 1)
+        ];
+        if (head.length) {
+          const fileHead = file.slice(fileIndex, fileIndex + head.length);
+          if (!this.#matchOne(fileHead, head, partial, 0, 0)) {
+            return false;
+          }
+          fileIndex += head.length;
+          patternIndex += head.length;
+        }
+        let fileTailMatch = 0;
+        if (tail.length) {
+          if (tail.length + fileIndex > file.length)
+            return false;
+          let tailStart = file.length - tail.length;
+          if (this.#matchOne(file, tail, partial, tailStart, 0)) {
+            fileTailMatch = tail.length;
+          } else {
+            if (file[file.length - 1] !== "" || fileIndex + tail.length === file.length) {
+              return false;
+            }
+            tailStart--;
+            if (!this.#matchOne(file, tail, partial, tailStart, 0)) {
+              return false;
+            }
+            fileTailMatch = tail.length + 1;
+          }
+        }
+        if (!body.length) {
+          let sawSome = !!fileTailMatch;
+          for (let i2 = fileIndex; i2 < file.length - fileTailMatch; i2++) {
+            const f = String(file[i2]);
+            sawSome = true;
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return partial || sawSome;
+        }
+        const bodySegments = [[[], 0]];
+        let currentBody = bodySegments[0];
+        let nonGsParts = 0;
+        const nonGsPartsSums = [0];
+        for (const b of body) {
+          if (b === exports2.GLOBSTAR) {
+            nonGsPartsSums.push(nonGsParts);
+            currentBody = [[], 0];
+            bodySegments.push(currentBody);
+          } else {
+            currentBody[0].push(b);
+            nonGsParts++;
+          }
+        }
+        let i = bodySegments.length - 1;
+        const fileLength = file.length - fileTailMatch;
+        for (const b of bodySegments) {
+          b[1] = fileLength - (nonGsPartsSums[i--] + b[0].length);
+        }
+        return !!this.#matchGlobStarBodySections(file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
+      }
+      // return false for "nope, not matching"
+      // return null for "not matching, cannot keep trying"
+      #matchGlobStarBodySections(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
+        const bs = bodySegments[bodyIndex];
+        if (!bs) {
+          for (let i = fileIndex; i < file.length; i++) {
+            sawTail = true;
+            const f = file[i];
+            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+              return false;
+            }
+          }
+          return sawTail;
+        }
+        const [body, after] = bs;
+        while (fileIndex <= after) {
+          const m = this.#matchOne(file.slice(0, fileIndex + body.length), body, partial, fileIndex, 0);
+          if (m && globStarDepth < this.maxGlobstarRecursion) {
+            const sub = this.#matchGlobStarBodySections(file, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
+            if (sub !== false) {
+              return sub;
+            }
+          }
+          const f = file[fileIndex];
+          if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
+            return false;
+          }
+          fileIndex++;
+        }
+        return partial || null;
+      }
+      #matchOne(file, pattern, partial, fileIndex, patternIndex) {
+        let fi;
+        let pi;
+        let pl;
+        let fl;
+        for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
+          this.debug("matchOne loop");
+          let p = pattern[pi];
+          let f = file[fi];
+          this.debug(pattern, p, f);
+          if (p === false || p === exports2.GLOBSTAR) {
+            return false;
+          }
+          let hit;
+          if (typeof p === "string") {
+            hit = f === p;
+            this.debug("string match", p, f, hit);
+          } else {
+            hit = p.test(f);
+            this.debug("pattern match", p, f, hit);
+          }
+          if (!hit)
+            return false;
+        }
+        if (fi === fl && pi === pl) {
+          return true;
+        } else if (fi === fl) {
+          return partial;
+        } else if (pi === pl) {
+          return fi === fl - 1 && file[fi] === "";
+        } else {
+          throw new Error("wtf?");
+        }
+      }
+      braceExpand() {
+        return (0, exports2.braceExpand)(this.pattern, this.options);
+      }
+      parse(pattern) {
+        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
+        const options = this.options;
+        if (pattern === "**")
+          return exports2.GLOBSTAR;
+        if (pattern === "")
+          return "";
+        let m;
+        let fastTest = null;
+        if (m = pattern.match(starRE)) {
+          fastTest = options.dot ? starTestDot : starTest;
+        } else if (m = pattern.match(starDotExtRE)) {
+          fastTest = (options.nocase ? options.dot ? starDotExtTestNocaseDot : starDotExtTestNocase : options.dot ? starDotExtTestDot : starDotExtTest)(m[1]);
+        } else if (m = pattern.match(qmarksRE)) {
+          fastTest = (options.nocase ? options.dot ? qmarksTestNocaseDot : qmarksTestNocase : options.dot ? qmarksTestDot : qmarksTest)(m);
+        } else if (m = pattern.match(starDotStarRE)) {
+          fastTest = options.dot ? starDotStarTestDot : starDotStarTest;
+        } else if (m = pattern.match(dotStarRE)) {
+          fastTest = dotStarTest;
+        }
+        const re = ast_js_1.AST.fromGlob(pattern, this.options).toMMPattern();
+        if (fastTest && typeof re === "object") {
+          Reflect.defineProperty(re, "test", { value: fastTest });
+        }
+        return re;
+      }
+      makeRe() {
+        if (this.regexp || this.regexp === false)
+          return this.regexp;
+        const set = this.set;
+        if (!set.length) {
+          this.regexp = false;
+          return this.regexp;
+        }
+        const options = this.options;
+        const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
+        const flags = new Set(options.nocase ? ["i"] : []);
+        let re = set.map((pattern) => {
+          const pp = pattern.map((p) => {
+            if (p instanceof RegExp) {
+              for (const f of p.flags.split(""))
+                flags.add(f);
+            }
+            return typeof p === "string" ? regExpEscape(p) : p === exports2.GLOBSTAR ? exports2.GLOBSTAR : p._src;
+          });
+          pp.forEach((p, i) => {
+            const next = pp[i + 1];
+            const prev = pp[i - 1];
+            if (p !== exports2.GLOBSTAR || prev === exports2.GLOBSTAR) {
+              return;
+            }
+            if (prev === void 0) {
+              if (next !== void 0 && next !== exports2.GLOBSTAR) {
+                pp[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + next;
+              } else {
+                pp[i] = twoStar;
+              }
+            } else if (next === void 0) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + ")?";
+            } else if (next !== exports2.GLOBSTAR) {
+              pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next;
+              pp[i + 1] = exports2.GLOBSTAR;
+            }
+          });
+          const filtered = pp.filter((p) => p !== exports2.GLOBSTAR);
+          if (this.partial && filtered.length >= 1) {
+            const prefixes = [];
+            for (let i = 1; i <= filtered.length; i++) {
+              prefixes.push(filtered.slice(0, i).join("/"));
+            }
+            return "(?:" + prefixes.join("|") + ")";
+          }
+          return filtered.join("/");
+        }).join("|");
+        const [open, close] = set.length > 1 ? ["(?:", ")"] : ["", ""];
+        re = "^" + open + re + close + "$";
+        if (this.partial) {
+          re = "^(?:\\/|" + open + re.slice(1, -1) + close + ")$";
+        }
+        if (this.negate)
+          re = "^(?!" + re + ").+$";
+        try {
+          this.regexp = new RegExp(re, [...flags].join(""));
+        } catch {
+          this.regexp = false;
+        }
+        return this.regexp;
+      }
+      slashSplit(p) {
+        if (this.preserveMultipleSlashes) {
+          return p.split("/");
+        } else if (this.isWindows && /^\/\/[^/]+/.test(p)) {
+          return ["", ...p.split(/\/+/)];
+        } else {
+          return p.split(/\/+/);
+        }
+      }
+      match(f, partial = this.partial) {
+        this.debug("match", f, this.pattern);
+        if (this.comment) {
+          return false;
+        }
+        if (this.empty) {
+          return f === "";
+        }
+        if (f === "/" && partial) {
+          return true;
+        }
+        const options = this.options;
+        if (this.isWindows) {
+          f = f.split("\\").join("/");
+        }
+        const ff = this.slashSplit(f);
+        this.debug(this.pattern, "split", ff);
+        const set = this.set;
+        this.debug(this.pattern, "set", set);
+        let filename = ff[ff.length - 1];
+        if (!filename) {
+          for (let i = ff.length - 2; !filename && i >= 0; i--) {
+            filename = ff[i];
+          }
+        }
+        for (const pattern of set) {
+          let file = ff;
+          if (options.matchBase && pattern.length === 1) {
+            file = [filename];
+          }
+          const hit = this.matchOne(file, pattern, partial);
+          if (hit) {
+            if (options.flipNegate) {
+              return true;
+            }
+            return !this.negate;
+          }
+        }
+        if (options.flipNegate) {
+          return false;
+        }
+        return this.negate;
+      }
+      static defaults(def) {
+        return exports2.minimatch.defaults(def).Minimatch;
+      }
+    };
+    exports2.Minimatch = Minimatch;
+    var ast_js_2 = require_ast();
+    Object.defineProperty(exports2, "AST", { enumerable: true, get: function() {
+      return ast_js_2.AST;
+    } });
+    var escape_js_2 = require_escape();
+    Object.defineProperty(exports2, "escape", { enumerable: true, get: function() {
+      return escape_js_2.escape;
+    } });
+    var unescape_js_2 = require_unescape();
+    Object.defineProperty(exports2, "unescape", { enumerable: true, get: function() {
+      return unescape_js_2.unescape;
+    } });
+    exports2.minimatch.AST = ast_js_1.AST;
+    exports2.minimatch.Minimatch = Minimatch;
+    exports2.minimatch.escape = escape_js_1.escape;
+    exports2.minimatch.unescape = unescape_js_1.unescape;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/ignore.ts
+var path, import_dockerignore, import_ignore, minimatch, IgnoreStrategy, GlobIgnoreStrategy, GitIgnoreStrategy, DockerIgnoreStrategy;
+var init_ignore = __esm({
+  "../../aws-cdk-lib/core/lib/fs/ignore.ts"() {
+    "use strict";
+    path = __toESM(require("path"));
+    import_dockerignore = __toESM(require_ignore());
+    import_ignore = __toESM(require_ignore2());
+    init_options();
+    init_errors();
+    init_literal_string();
+    ({ minimatch } = require_commonjs3());
+    IgnoreStrategy = class {
+      /**
+       * Ignores file paths based on simple glob patterns.
+       *
+       * @returns `GlobIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static glob(absoluteRootPath, patterns) {
+        return new GlobIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.gitignore specification`](https://git-scm.com/docs/gitignore).
+       *
+       * @returns `GitIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static git(absoluteRootPath, patterns) {
+        return new GitIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Ignores file paths based on the [`.dockerignore specification`](https://docs.docker.com/engine/reference/builder/#dockerignore-file).
+       *
+       * @returns `DockerIgnorePattern` associated with the given patterns.
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       */
+      static docker(absoluteRootPath, patterns) {
+        return new DockerIgnoreStrategy(absoluteRootPath, patterns);
+      }
+      /**
+       * Creates an IgnoreStrategy based on the `ignoreMode` and `exclude` in a `CopyOptions`.
+       *
+       * @returns `IgnoreStrategy` based on the `CopyOptions`
+       * @param absoluteRootPath the absolute path to the root directory of the paths to be considered
+       * @param options the `CopyOptions` to create the `IgnoreStrategy` from
+       */
+      static fromCopyOptions(options, absoluteRootPath) {
+        const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+        const exclude = options.exclude || [];
+        switch (ignoreMode) {
+          case "glob" /* GLOB */:
+            return this.glob(absoluteRootPath, exclude);
+          case "git" /* GIT */:
+            return this.git(absoluteRootPath, exclude);
+          case "docker" /* DOCKER */:
+            return this.docker(absoluteRootPath, exclude);
+        }
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        return this.ignores(absoluteDirectoryPath);
+      }
+    };
+    GlobIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      patterns;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyExpectsAbsolute`, "GlobIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.patterns = patterns;
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.patterns.push(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GlobIgnoreStrategyIgnoresExpects`, "GlobIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        let excludeOutput = false;
+        for (const pattern of this.patterns) {
+          const negate = pattern.startsWith("!");
+          const match = minimatch(relativePath, pattern, { matchBase: true, flipNegate: true });
+          if (!negate && match) {
+            excludeOutput = true;
+          }
+          if (negate && match) {
+            excludeOutput = false;
+          }
+        }
+        return excludeOutput;
+      }
+    };
+    GitIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyExpectsAbsolute`, "GitIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.ignore = (0, import_ignore.default)().add(patterns);
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyIgnoresExpects`, "GitIgnoreStrategy.ignores() expects an absolute path");
+        }
+        let relativePath = path.relative(this.absoluteRootPath, absoluteFilePath);
+        return this.ignore.ignores(relativePath);
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        if (!path.isAbsolute(absoluteDirectoryPath)) {
+          throw new UnscopedValidationError(lit`GitIgnoreStrategyCompletelyIgnores`, "GitIgnoreStrategy.completelyIgnores() expects an absolute path");
+        }
+        const relativePath = path.relative(this.absoluteRootPath, absoluteDirectoryPath);
+        const relativePathWithSep = relativePath.endsWith(path.sep) ? relativePath : relativePath + path.sep;
+        return this.ignore.ignores(relativePathWithSep);
+      }
+    };
+    DockerIgnoreStrategy = class extends IgnoreStrategy {
+      absoluteRootPath;
+      ignore;
+      completeIgnore;
+      // Follows negation rules as describe in @balena/dockerignore
+      // See https://www.npmjs.com/package/@balena/dockerignore#exclusion-patterns
+      negativeIgnoreRegex = /^\s*(\!|\/\!)(.*)/;
+      constructor(absoluteRootPath, patterns) {
+        super();
+        if (!path.isAbsolute(absoluteRootPath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyExpectsAbsolute`, "DockerIgnoreStrategy expects an absolute file path");
+        }
+        this.absoluteRootPath = absoluteRootPath;
+        this.completeIgnore = (0, import_dockerignore.default)();
+        this.ignore = (0, import_dockerignore.default)();
+        for (const pattern of patterns) {
+          this.add(pattern);
+        }
+      }
+      /**
+       * Adds the pattern to completeIgnore. If its an exclude pattern, it also adds an entry for each parent directory.
+       * This is useful in detecting folders that are ignored, but that could have children files which are not ignored.
+       *
+       * @param pattern pattern to add
+       */
+      completelyAdd(pattern) {
+        this.completeIgnore.add(pattern);
+        const negativeMatch = pattern.match(this.negativeIgnoreRegex);
+        if (negativeMatch !== null) {
+          let dirname6 = negativeMatch[2];
+          while (true) {
+            dirname6 = path.dirname(dirname6);
+            if (dirname6 === "/" || dirname6 === ".") {
+              break;
+            }
+            this.completeIgnore.add(negativeMatch[1] + dirname6);
+          }
+        }
+      }
+      /**
+       * Adds another pattern.
+       * @params pattern the pattern to add
+       */
+      add(pattern) {
+        this.ignore.add(pattern);
+        this.completelyAdd(pattern);
+      }
+      getRelativePath(absoluteFilePath) {
+        if (!path.isAbsolute(absoluteFilePath)) {
+          throw new UnscopedValidationError(lit`DockerIgnoreStrategyIgnoresExpects`, "DockerIgnoreStrategy.ignores() expects an absolute path");
+        }
+        return path.relative(this.absoluteRootPath, absoluteFilePath);
+      }
+      /**
+       * Determines whether a given file path should be ignored or not.
+       *
+       * @param absoluteFilePath absolute file path to be assessed against the pattern
+       * @returns `true` if the file should be ignored
+       */
+      ignores(absoluteFilePath) {
+        return this.ignore.ignores(this.getRelativePath(absoluteFilePath));
+      }
+      /**
+       * Determines whether a given directory path should be ignored and have all of its children ignored.
+       *
+       * @param absoluteDirectoryPath absolute directory path to be assessed against the pattern
+       * @returns `true` if the directory and all of its children should be ignored
+       */
+      completelyIgnores(absoluteDirectoryPath) {
+        const relativePath = this.getRelativePath(absoluteDirectoryPath);
+        return this.ignore.ignores(relativePath) && this.completeIgnore.ignores(relativePath);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/utils.ts
+function isInternalPath(rootPath, targetPath) {
+  return rootPath === targetPath || targetPath.startsWith(rootPath + path2.sep);
+}
+function resolveLinkTarget(realPath, linkTarget) {
+  return path2.isAbsolute(linkTarget) ? path2.resolve(linkTarget) : path2.resolve(path2.dirname(realPath), linkTarget);
+}
+function walkDirectory(directory, options, visitor) {
+  const { follow, ignoreStrategy } = options;
+  const canonicalRoot = realPathOrSelf(options.root ?? directory);
+  const ancestors = /* @__PURE__ */ new Set();
+  walk(directory, directory, realPathOrSelf(directory));
+  function walk(symbolicPath, realPath, canonicalPath) {
+    if (ancestors.has(canonicalPath)) {
+      return;
+    }
+    ancestors.add(canonicalPath);
+    const entries = fs2.readdirSync(realPath, { withFileTypes: true });
+    entries.sort((a, b) => a.name < b.name ? -1 : a.name > b.name ? 1 : 0);
+    for (const entry of entries) {
+      const childPath = path2.join(symbolicPath, entry.name);
+      const childRealPath = path2.join(realPath, entry.name);
+      if (entry.isSymbolicLink()) {
+        visitSymlink(childPath, childRealPath);
+      } else if (entry.isDirectory()) {
+        visitDirectory(childPath, childRealPath, path2.join(canonicalPath, entry.name));
+      } else if (entry.isFile()) {
+        visitFile({ path: childPath, realPath: childRealPath });
+      }
+    }
+    ancestors.delete(canonicalPath);
+  }
+  function visitDirectory(symbolicPath, realPath, canonicalPath) {
+    if (ignoreStrategy.completelyIgnores(symbolicPath)) {
+      return;
+    }
+    if (visitor.onDirectory) {
+      visitor.onDirectory({ path: symbolicPath, realPath, ignored: ignoreStrategy.ignores(symbolicPath) });
+    }
+    walk(symbolicPath, realPath, canonicalPath);
+  }
+  function visitFile(entry) {
+    if (!ignoreStrategy.ignores(entry.path)) {
+      visitor.onFile?.(entry);
+    }
+  }
+  function visitSymlink(symbolicPath, realPath) {
+    const linkTarget = fs2.readlinkSync(realPath);
+    const resolvedLinkTarget = canonicalLinkTarget(resolveLinkTarget(realPath, linkTarget));
+    const internal = isInternalPath(canonicalRoot, resolvedLinkTarget);
+    const targetStats = shouldFollow(internal) ? tryStat(resolvedLinkTarget) : void 0;
+    if (!targetStats) {
+      if (!ignoreStrategy.ignores(symbolicPath)) {
+        visitor.onSymlink?.({ path: symbolicPath, realPath, linkTarget, resolvedLinkTarget, internal });
+      }
+      return;
+    }
+    if (targetStats.isDirectory()) {
+      visitDirectory(symbolicPath, resolvedLinkTarget, realPathOrSelf(resolvedLinkTarget));
+    } else if (targetStats.isFile()) {
+      visitFile({ path: symbolicPath, realPath: resolvedLinkTarget, stats: targetStats });
+    } else if (!ignoreStrategy.ignores(symbolicPath)) {
+      visitor.onUnsupported?.({ path: symbolicPath, realPath: resolvedLinkTarget });
+    }
+  }
+  function shouldFollow(internal) {
+    switch (follow) {
+      case "always" /* ALWAYS */:
+        return true;
+      case "external" /* EXTERNAL */:
+        return !internal;
+      case "internal-only" /* BLOCK_EXTERNAL */:
+        return internal;
+      case "never" /* NEVER */:
+      default:
+        return false;
+    }
+  }
+}
+function canonicalLinkTarget(target) {
+  return path2.join(realPathOrSelf(path2.dirname(target)), path2.basename(target));
+}
+function realPathOrSelf(target) {
+  try {
+    return fs2.realpathSync(target);
+  } catch {
+    return target;
+  }
+}
+function tryStat(target) {
+  try {
+    return fs2.statSync(target, { bigint: true });
+  } catch {
+    return void 0;
+  }
+}
+var fs2, path2;
+var init_utils = __esm({
+  "../../aws-cdk-lib/core/lib/fs/utils.ts"() {
+    "use strict";
+    fs2 = __toESM(require("fs"));
+    path2 = __toESM(require("path"));
+    init_options();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/copy.ts
+function copyDirectory(srcDir, destDir, options = {}, rootDir) {
+  const follow = options.follow ?? "external" /* EXTERNAL */;
+  const root = rootDir || srcDir;
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  if (!fs3.statSync(srcDir).isDirectory()) {
+    throw new UnscopedValidationError(lit`Directory`, `${srcDir} is not a directory`);
+  }
+  const canonicalSrcDir = fs3.realpathSync(srcDir);
+  walkDirectory(srcDir, { follow, ignoreStrategy, root }, {
+    onDirectory: (entry) => {
+      if (!entry.ignored) {
+        fs3.mkdirSync(destinationOf(entry.path), { recursive: true });
+      }
+    },
+    onFile: (entry) => {
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.copyFileSync(entry.realPath, destination);
+    },
+    onSymlink: (entry) => {
+      if (follow === "internal-only" /* BLOCK_EXTERNAL */ && !entry.internal) {
+        throw new UnscopedValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${follow}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`
+        );
+      }
+      const destination = destinationOf(entry.path);
+      fs3.mkdirSync(path3.dirname(destination), { recursive: true });
+      fs3.symlinkSync(linkTextFor(entry, destination), destination);
+    }
+  });
+  function destinationOf(sourcePath) {
+    return path3.join(destDir, path3.relative(srcDir, sourcePath));
+  }
+  function linkTextFor(entry, destination) {
+    if (!isInternalPath(canonicalSrcDir, entry.resolvedLinkTarget)) {
+      return entry.linkTarget;
+    }
+    const copiedTarget = path3.join(destDir, path3.relative(canonicalSrcDir, entry.resolvedLinkTarget));
+    return path3.relative(path3.dirname(destination), copiedTarget) || ".";
+  }
+}
+var fs3, path3;
+var init_copy = __esm({
+  "../../aws-cdk-lib/core/lib/fs/copy.ts"() {
+    "use strict";
+    fs3 = __toESM(require("fs"));
+    path3 = __toESM(require("path"));
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts
+var crypto3, fs4, os, path4, CACHE_DIR, MAX_ENTRIES, MAX_CACHE_FILES, FingerprintDiskCache;
+var init_fingerprint_disk_cache = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint-disk-cache.ts"() {
+    "use strict";
+    crypto3 = __toESM(require("crypto"));
+    fs4 = __toESM(require("fs"));
+    os = __toESM(require("os"));
+    path4 = __toESM(require("path"));
+    CACHE_DIR = path4.join(os.homedir(), ".cdk", "cache", "fingerprints");
+    MAX_ENTRIES = 1e5;
+    MAX_CACHE_FILES = 50;
+    FingerprintDiskCache = class {
+      cache;
+      dirty = false;
+      cacheFile;
+      /**
+       * Create a FingerprintDiskCache
+       *
+       * The `directoryPath` argument is expected to be pre-resolved to an absolute path.
+       */
+      constructor(directoryPath) {
+        const dirHash = crypto3.createHash("sha256").update(directoryPath).digest("hex").slice(0, 16);
+        this.cacheFile = path4.join(CACHE_DIR, `${dirHash}.json`);
+      }
+      /**
+       * Look up a cached fingerprint or compute it.
+       */
+      obtain(cacheKey, calcFn) {
+        const map = this._load();
+        const existing = map.get(cacheKey);
+        if (existing !== void 0) {
+          return existing;
+        }
+        const value = calcFn();
+        map.set(cacheKey, value);
+        this.dirty = true;
+        return value;
+      }
+      /**
+       * Persist the cache to disk.
+       */
+      save() {
+        if (!this.dirty || !this.cache) {
+          return;
+        }
+        this._evict();
+        try {
+          fs4.mkdirSync(CACHE_DIR, { recursive: true });
+          const entries = Array.from(this.cache.entries());
+          let tempFile = `${this.cacheFile}.${Date.now()}.${Math.random()}`;
+          try {
+            fs4.writeFileSync(tempFile, JSON.stringify(entries));
+            fs4.renameSync(tempFile, this.cacheFile);
+            tempFile = void 0;
+            this.dirty = false;
+            this._evictCacheDir();
+          } finally {
+            if (tempFile) {
+              fs4.rmSync(tempFile, { force: true });
+            }
+          }
+        } catch {
+        }
+      }
+      _load() {
+        if (this.cache) {
+          return this.cache;
+        }
+        this.cache = /* @__PURE__ */ new Map();
+        try {
+          const data = fs4.readFileSync(this.cacheFile, "utf-8");
+          const entries = JSON.parse(data);
+          if (Array.isArray(entries)) {
+            for (const [k, v] of entries) {
+              this.cache.set(k, v);
+            }
+          }
+        } catch {
+        }
+        return this.cache;
+      }
+      _evict() {
+        if (!this.cache || this.cache.size <= MAX_ENTRIES) {
+          return;
+        }
+        const entries = Array.from(this.cache.entries());
+        this.cache = new Map(entries.slice(entries.length - MAX_ENTRIES));
+      }
+      /** Remove oldest cache files if the directory exceeds MAX_CACHE_FILES */
+      _evictCacheDir() {
+        try {
+          const files = fs4.readdirSync(CACHE_DIR).filter((f) => f.endsWith(".json")).map((f) => ({ name: f, mtime: fs4.statSync(path4.join(CACHE_DIR, f)).mtimeMs }));
+          if (files.length <= MAX_CACHE_FILES) return;
+          files.sort((a, b) => a.mtime - b.mtime);
+          const toDelete = files.slice(0, files.length - MAX_CACHE_FILES);
+          for (const f of toDelete) {
+            fs4.unlinkSync(path4.join(CACHE_DIR, f.name));
+          }
+        } catch {
+        }
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/fingerprint.ts
+function clearLargeFileFingerprintCache() {
+}
+function fingerprint(fileOrDirectory, options = {}) {
+  const hash = crypto4.createHash("sha256");
+  _hashField(hash, "options.extra", options.extraHash || "");
+  const follow = options.follow || "external" /* EXTERNAL */;
+  _hashField(hash, "options.follow", follow);
+  const root = fs5.realpathSync(fileOrDirectory);
+  const isDir = fs5.statSync(root).isDirectory();
+  const rootDirectory = isDir ? root : path5.dirname(root);
+  const ignoreMode = options.ignoreMode || "glob" /* GLOB */;
+  if (ignoreMode != "glob" /* GLOB */) {
+    _hashField(hash, "options.ignoreMode", ignoreMode);
+  }
+  const resolvedRoot = path5.resolve(rootDirectory);
+  const ignoreStrategy = IgnoreStrategy.fromCopyOptions(options, root);
+  const cache = new FingerprintDiskCache(resolvedRoot);
+  if (isDir) {
+    walkDirectory(root, { follow, ignoreStrategy }, {
+      onFile: (entry) => hashFileContent(entry.path, entry.stats ? contentFingerprintWithStats(entry.realPath, entry.stats, cache) : contentFingerprintOf(entry.realPath)),
+      onSymlink: (entry) => hashLinkTarget(entry),
+      onUnsupported: (entry) => {
+        throw new UnscopedValidationError(
+          lit`UnableToUnableHashNeither`,
+          `Unable to hash ${entry.path}: it is neither a file nor a directory`
+        );
+      }
+    });
+  } else {
+    hashFileContent(root, contentFingerprintOf(root));
+  }
+  cache.save();
+  return hash.digest("hex");
+  function hashKey(symbolicPath) {
+    return path5.relative(root, symbolicPath).replace(/\\/g, "/");
+  }
+  function hashFileContent(symbolicPath, contentHash2) {
+    _hashField(hash, `file:${hashKey(symbolicPath)}`, contentHash2);
+  }
+  function hashLinkTarget(entry) {
+    const target = entry.internal && path5.isAbsolute(entry.linkTarget) ? hashKey(entry.resolvedLinkTarget) : entry.linkTarget;
+    _hashField(hash, `link:${hashKey(entry.path)}`, target);
+  }
+  function contentFingerprintOf(file) {
+    return contentFingerprintWithStats(file, fs5.statSync(file, { bigint: true }), cache);
+  }
+}
+function contentFingerprintWithStats(file, stats, cache) {
+  const cacheKey = `${stats.ino}|${stats.mtimeMs}|${stats.size}`;
+  return cache?.obtain(cacheKey, () => contentFingerprintMiss(file)) ?? contentFingerprintMiss(file);
+}
+function contentFingerprintMiss(file) {
+  const hash = crypto4.createHash("sha256");
+  const buffer = Buffer.alloc(BUFFER_SIZE);
+  const fd = fs5.openSync(file, fs5.constants.O_RDONLY);
+  let size = 0;
+  let isBinary = false;
+  let lastStr = "";
+  let read = 0;
+  try {
+    while ((read = fs5.readSync(fd, buffer, 0, BUFFER_SIZE, null)) !== 0) {
+      const slicedBuffer = buffer.subarray(0, read);
+      if (size === 0) {
+        isBinary = slicedBuffer.indexOf(0) !== -1;
+      }
+      if (isBinary) {
+        size += read;
+        hash.update(slicedBuffer);
+      } else {
+        const str = slicedBuffer.toString();
+        if (TRAILING_CR_RE.test(str)) {
+          lastStr += str;
+          continue;
+        }
+        const data = lastStr + str;
+        lastStr = "";
+        const normalizedData = data.replace(CRLF_RE, "\n");
+        const dataBuffer = Buffer.from(normalizedData);
+        size += dataBuffer.length;
+        hash.update(dataBuffer);
+      }
+    }
+    if (lastStr) {
+      hash.update(Buffer.from(lastStr));
+    }
+  } finally {
+    fs5.closeSync(fd);
+  }
+  return `${size}:${hash.digest("hex")}`;
+}
+function _hashField(hash, header, value) {
+  hash.update(CTRL_SOH).update(header).update(CTRL_SOT).update(value).update(CTRL_ETX);
+}
+var crypto4, fs5, path5, CTRL_SOH, CTRL_SOT, CTRL_ETX, CRLF_RE, TRAILING_CR_RE, BUFFER_SIZE;
+var init_fingerprint = __esm({
+  "../../aws-cdk-lib/core/lib/fs/fingerprint.ts"() {
+    "use strict";
+    crypto4 = __toESM(require("crypto"));
+    fs5 = __toESM(require("fs"));
+    path5 = __toESM(require("path"));
+    init_fingerprint_disk_cache();
+    init_ignore();
+    init_options();
+    init_utils();
+    init_errors();
+    init_literal_string();
+    CTRL_SOH = "";
+    CTRL_SOT = "";
+    CTRL_ETX = "";
+    CRLF_RE = /\r\n/g;
+    TRAILING_CR_RE = /\r$/;
+    BUFFER_SIZE = 8 * 1024;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts
+var init_dispose_polyfill = __esm({
+  "../../aws-cdk-lib/core/lib/private/dispose-polyfill.ts"() {
+    "use strict";
+    Symbol.dispose ??= /* @__PURE__ */ Symbol("Symbol.dispose");
+    Symbol.asyncDispose ??= /* @__PURE__ */ Symbol("Symbol.asyncDispose");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/perf.ts
+function profileFn(key, options) {
+  return function(fn) {
+    const ret = function() {
+      STATE.nesting++;
+      const start = import_perf_hooks.performance.now();
+      try {
+        return fn.apply(this, arguments);
+      } finally {
+        const end = import_perf_hooks.performance.now();
+        STATE.nesting--;
+        if (STATE.nesting === 0) {
+          recordPerformanceEntry(key, {
+            durationMs: end - start,
+            count: options?.skipCount ? 0 : 1,
+            telemetry: !!options?.telemetry
+          });
+        }
+      }
+    };
+    Object.defineProperties(ret, Object.getOwnPropertyDescriptors(fn));
+    return ret;
+  };
+}
+function profileSpan(key, options) {
+  const start = import_perf_hooks.performance.now();
+  return {
+    [Symbol.dispose]() {
+      recordPerformanceEntry(key, {
+        durationMs: import_perf_hooks.performance.now() - start,
+        count: options?.skipCount ? 0 : 1,
+        telemetry: !!options?.telemetry
+      });
+    }
+  };
+}
+function recordPerformanceEntry(key, options) {
+  bumpPerfCounter(STATE.allCounters, key, options?.durationMs, options?.count);
+  if (options?.telemetry) {
+    bumpPerfCounter(STATE.telemetryCounters, key, options?.durationMs, options?.count);
+  }
+}
+function resetCounters() {
+  STATE.allCounters = {};
+  STATE.telemetryCounters = {};
+}
+function bumpPerfCounter(counters, key, durationMs, count2) {
+  const ctr = counters[key];
+  if (ctr) {
+    ctr.count += count2 ?? 1;
+    ctr.total += durationMs ?? 0;
+  } else {
+    counters[key] = {
+      count: count2 ?? 1,
+      total: durationMs ?? 0
+    };
+  }
+}
+function profileObj(objName, options) {
+  return function(obj) {
+    for (const [name, { value }] of Object.entries(Object.getOwnPropertyDescriptors(obj))) {
+      if (typeof value === "function") {
+        const key = `${objName}.${name}`;
+        obj[name] = profileFn(key, options)(value);
+      }
+    }
+    return obj;
+  };
+}
+function readPerfCounters(options) {
+  const counters = options?.telemetry ? STATE.telemetryCounters : STATE.allCounters;
+  let ret = Object.entries(counters).map(([key, { count: count2, total }]) => [key, { count: count2, total: Math.floor(total) }]).sort((a, b) => b[1].total - a[1].total);
+  if (options?.n !== void 0) {
+    ret = ret.slice(0, options.n);
+  }
+  return Object.fromEntries(ret);
+}
+function initializeBuiltinProfiling() {
+  const envYes = ["1", "yes", "true"];
+  if (STATE.builtinsHooked || process.env.NODE_ENV === "test" || envYes.includes(process.env.CDK_NO_PERF_BUILTINS)) {
+    return;
+  }
+  STATE.builtinsHooked = true;
+  profileObj("fs", { telemetry: true })(require("fs"));
+  profileObj("child_process", { telemetry: true })(require("child_process"));
+}
+var import_perf_hooks, STATE;
+var init_perf = __esm({
+  "../../aws-cdk-lib/core/lib/private/perf.ts"() {
+    "use strict";
+    import_perf_hooks = require("perf_hooks");
+    init_dispose_polyfill();
+    STATE = globalThis[/* @__PURE__ */ Symbol.for("@aws-cdk/core:performanceProfilingState")] ??= {
+      builtinsHooked: false,
+      nesting: 0,
+      telemetryCounters: {},
+      allCounters: {}
+    };
+    initializeBuiltinProfiling();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/fs/index.ts
+var fs6, os2, path6, _FileSystem_decorators, _init3, _FileSystem, FileSystem;
+var init_fs = __esm({
+  "../../aws-cdk-lib/core/lib/fs/index.ts"() {
+    "use strict";
+    fs6 = __toESM(require("fs"));
+    os2 = __toESM(require("os"));
+    path6 = __toESM(require("path"));
+    init_copy();
+    init_fingerprint();
+    init_perf();
+    init_ignore();
+    init_options();
+    _FileSystem_decorators = [profileObj("FileSystem", { telemetry: true })];
+    _FileSystem = class _FileSystem {
+      /**
+       * Copies an entire directory structure.
+       * @param srcDir Source directory
+       * @param destDir Destination directory
+       * @param options options
+       * @param rootDir Root directory to calculate exclusions from
+       */
+      static copyDirectory(srcDir, destDir, options = {}, rootDir) {
+        return copyDirectory(srcDir, destDir, options, rootDir);
+      }
+      /**
+       * Produces fingerprint based on the contents of a single file or an entire directory tree.
+       *
+       * Line endings are converted from CRLF to LF.
+       *
+       * The fingerprint will also include:
+       * 1. An extra string if defined in `options.extra`.
+       * 2. The symlink follow mode value.
+       *
+       * @param fileOrDirectory The directory or file to fingerprint
+       * @param options Fingerprinting options
+       */
+      static fingerprint(fileOrDirectory, options = {}) {
+        return fingerprint(fileOrDirectory, options);
+      }
+      /**
+       * Checks whether a directory is empty
+       *
+       * @param dir The directory to check
+       */
+      static isEmpty(dir) {
+        return fs6.readdirSync(dir).length === 0;
+      }
+      /**
+       * The real path of the system temp directory
+       */
+      static get tmpdir() {
+        if (_FileSystem._tmpdir) {
+          return _FileSystem._tmpdir;
+        }
+        _FileSystem._tmpdir = fs6.realpathSync(os2.tmpdir());
+        return _FileSystem._tmpdir;
+      }
+      /**
+       * Creates a unique temporary directory in the **system temp directory**.
+       *
+       * @param prefix A prefix for the directory name. Six random characters
+       * will be generated and appended behind this prefix.
+       */
+      static mkdtemp(prefix) {
+        return fs6.mkdtempSync(path6.join(_FileSystem.tmpdir, prefix));
+      }
+      /**
+       * Deletes a directory
+       */
+      static rmrf(dirname6) {
+        fs6.rmSync(dirname6, { force: true, recursive: true });
+      }
+      static _tmpdir;
+    };
+    _init3 = __decoratorStart(null);
+    _FileSystem = __decorateElement(_init3, 0, "FileSystem", _FileSystem_decorators, _FileSystem);
+    __runInitializers(_init3, 1, _FileSystem);
+    FileSystem = _FileSystem;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-staging.ts
+function dockerExec(args, options) {
+  const prog = process.env.CDK_DOCKER ?? "docker";
+  const proc = (0, import_child_process.spawnSync)(prog, args, options ?? {
+    encoding: "utf-8",
+    stdio: [
+      // show Docker output
+      "ignore",
+      // ignore stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    throw proc.error;
+  }
+  if (proc.status !== 0) {
+    let prependLines2 = function(firstLine, text) {
+      if (!text || text.length === 0) {
+        return [];
+      }
+      const padding = " ".repeat(firstLine.length);
+      return text.toString("utf-8").split("\n").map((line, idx) => `${idx === 0 ? firstLine : padding}${line}`);
+    };
+    var prependLines = prependLines2;
+    const reason = proc.signal != null ? `signal ${proc.signal}` : `status ${proc.status}`;
+    const command = [prog, ...args.map((arg) => /[^a-z0-9_-]/i.test(arg) ? JSON.stringify(arg) : arg)].join(" ");
+    throw new ExecutionError(lit`CommandExecutionFailed`, [
+      `${prog} exited with ${reason}`,
+      ...prependLines2("--> STDOUT:  ", proc.stdout) ?? [],
+      ...prependLines2("--> STDERR:  ", proc.stderr) ?? [],
+      `--> Command: ${command}`
+    ].join("\n"));
+  }
+  return proc;
+}
+var import_child_process, crypto5, os3, AssetBundlingBase, _run_dec, _a3, _init4, AssetBundlingBindMount, _run_dec2, _a4, _init5, AssetBundlingVolumeCopy;
+var init_asset_staging = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-staging.ts"() {
+    "use strict";
+    import_child_process = require("child_process");
+    crypto5 = __toESM(require("crypto"));
+    os3 = __toESM(require("os"));
+    init_asset_staging2();
+    init_errors();
+    init_literal_string();
+    init_perf();
+    AssetBundlingBase = class {
+      options;
+      constructor(options) {
+        this.options = options;
+      }
+      /**
+       * Determines a useful default user if not given otherwise
+       */
+      determineUser() {
+        let user;
+        if (this.options.user) {
+          user = this.options.user;
+        } else {
+          const userInfo2 = os3.userInfo();
+          user = userInfo2.uid !== -1 ? `${userInfo2.uid}:${userInfo2.gid}` : "1000:1000";
+        }
+        return user;
+      }
+    };
+    AssetBundlingBindMount = class extends (_a3 = AssetBundlingBase, _run_dec = [profileFn("AssetBundlingBindMount.run", { telemetry: true })], _a3) {
+      constructor() {
+        super(...arguments);
+        __runInitializers(_init4, 5, this);
+      }
+      run() {
+        this.options.image.run({
+          command: this.options.command,
+          user: this.determineUser(),
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumesFrom: this.options.volumesFrom,
+          volumes: [
+            {
+              hostPath: this.options.sourcePath,
+              containerPath: AssetStaging.BUNDLING_INPUT_DIR
+            },
+            {
+              hostPath: this.options.bundleDir,
+              containerPath: AssetStaging.BUNDLING_OUTPUT_DIR
+            },
+            ...this.options.volumes ?? []
+          ],
+          network: this.options.network,
+          platform: this.options.platform
+        });
+      }
+    };
+    _init4 = __decoratorStart(_a3);
+    __decorateElement(_init4, 1, "run", _run_dec, AssetBundlingBindMount);
+    __decoratorMetadata(_init4, AssetBundlingBindMount);
+    AssetBundlingVolumeCopy = class extends (_a4 = AssetBundlingBase, _run_dec2 = [profileFn("AssetBundlingVolumeCopy.run", { telemetry: true })], _a4) {
+      constructor(options) {
+        super(options);
+        __runInitializers(_init5, 5, this);
+        /**
+         * Name of the Docker volume that is used for the asset input
+         */
+        __publicField(this, "inputVolumeName");
+        /**
+         * Name of the Docker volume that is used for the asset output
+         */
+        __publicField(this, "outputVolumeName");
+        /**
+         * Name of the Docker helper container to copy files into the volume
+         */
+        __publicField(this, "copyContainerName");
+        const copySuffix = crypto5.randomBytes(12).toString("hex");
+        this.inputVolumeName = `assetInput${copySuffix}`;
+        this.outputVolumeName = `assetOutput${copySuffix}`;
+        this.copyContainerName = `copyContainer${copySuffix}`;
+      }
+      /**
+       * Creates volumes for asset input and output
+       */
+      prepareVolumes() {
+        dockerExec(["volume", "create", this.inputVolumeName]);
+        dockerExec(["volume", "create", this.outputVolumeName]);
+      }
+      /**
+       * Removes volumes for asset input and output
+       */
+      cleanVolumes() {
+        dockerExec(["volume", "rm", this.inputVolumeName]);
+        dockerExec(["volume", "rm", this.outputVolumeName]);
+      }
+      /**
+       * runs a helper container that holds volumes and does some preparation tasks
+       * @param user The user that will later access these files and needs permissions to do so
+       */
+      startHelperContainer(user) {
+        dockerExec([
+          "run",
+          "--name",
+          this.copyContainerName,
+          "-v",
+          `${this.inputVolumeName}:${AssetStaging.BUNDLING_INPUT_DIR}`,
+          "-v",
+          `${this.outputVolumeName}:${AssetStaging.BUNDLING_OUTPUT_DIR}`,
+          "public.ecr.aws/docker/library/alpine",
+          "sh",
+          "-c",
+          `mkdir -p ${AssetStaging.BUNDLING_INPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_OUTPUT_DIR} && chown -R ${user} ${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * removes the Docker helper container
+       */
+      cleanHelperContainer() {
+        dockerExec(["rm", this.copyContainerName]);
+      }
+      /**
+       * copy files from the host where this is executed into the input volume
+       * @param sourcePath - path to folder where files should be copied from - without trailing slash
+       */
+      copyInputFrom(sourcePath) {
+        dockerExec([
+          "cp",
+          `${sourcePath}/.`,
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_INPUT_DIR}`
+        ]);
+      }
+      /**
+       * copy files from the output volume to the host where this is executed
+       * @param outputPath - path to folder where files should be copied to - without trailing slash
+       */
+      copyOutputTo(outputPath) {
+        dockerExec([
+          "cp",
+          `${this.copyContainerName}:${AssetStaging.BUNDLING_OUTPUT_DIR}/.`,
+          outputPath
+        ]);
+      }
+      run() {
+        const user = this.determineUser();
+        this.prepareVolumes();
+        this.startHelperContainer(user);
+        this.copyInputFrom(this.options.sourcePath);
+        this.options.image.run({
+          command: this.options.command,
+          user,
+          environment: this.options.environment,
+          entrypoint: this.options.entrypoint,
+          workingDirectory: this.options.workingDirectory ?? AssetStaging.BUNDLING_INPUT_DIR,
+          securityOpt: this.options.securityOpt ?? "",
+          volumes: this.options.volumes,
+          volumesFrom: [
+            this.copyContainerName,
+            ...this.options.volumesFrom ?? []
+          ],
+          platform: this.options.platform
+        });
+        this.copyOutputTo(this.options.bundleDir);
+        this.cleanHelperContainer();
+        this.cleanVolumes();
+      }
+    };
+    _init5 = __decoratorStart(_a4);
+    __decorateElement(_init5, 1, "run", _run_dec2, AssetBundlingVolumeCopy);
+    __decoratorMetadata(_init5, AssetBundlingVolumeCopy);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts
+function quiet() {
+  const deprecated = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  return deprecated;
+}
+function reset(deprecated) {
+  if (deprecated === void 0) {
+    delete process.env.JSII_DEPRECATED;
+  } else {
+    process.env.JSII_DEPRECATED = deprecated;
+  }
+}
+var init_jsii_deprecated = __esm({
+  "../../aws-cdk-lib/core/lib/private/jsii-deprecated.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bundling.ts
+function flatten(x) {
+  return Array.prototype.concat([], ...x);
+}
+function isSeLinux() {
+  if (process.platform != "linux") {
+    return false;
+  }
+  const prog = "selinuxenabled";
+  const proc = (0, import_child_process2.spawnSync)(prog, [], {
+    stdio: [
+      // show selinux status output
+      "pipe",
+      // get value of stdio
+      process.stderr,
+      // redirect stdout to stderr
+      "inherit"
+      // inherit stderr
+    ]
+  });
+  if (proc.error) {
+    return false;
+  }
+  if (proc.status == 0) {
+    return true;
+  } else {
+    return false;
+  }
+}
+var import_child_process2, import_path, _cp_dec, _run_dec3, _init6, BundlingDockerImage, _fromBuild_dec, _a5, _init7, _DockerImage, DockerImage, PERF_BUNDLING_SRC_SYM;
+var init_bundling = __esm({
+  "../../aws-cdk-lib/core/lib/bundling.ts"() {
+    "use strict";
+    import_child_process2 = require("child_process");
+    import_path = require("path");
+    init_errors();
+    init_fs();
+    init_asset_staging();
+    init_jsii_deprecated();
+    init_literal_string();
+    init_perf();
+    _run_dec3 = [profileFn("BundlingDockerImage.run", { telemetry: true })], _cp_dec = [profileFn("BundlingDockerImage.cp", { telemetry: true })];
+    BundlingDockerImage = class {
+      /** @param image The Docker image */
+      constructor(image, _imageHash) {
+        this.image = image;
+        this._imageHash = _imageHash;
+        __runInitializers(_init6, 5, this);
+      }
+      image;
+      _imageHash;
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new DockerImage(image);
+      }
+      /**
+       * Reference an image that's built directly from sources on disk.
+       *
+       * @param path The path to the directory containing the Docker file
+       * @param options Docker build options
+       *
+       * @deprecated use DockerImage.fromBuild()
+       */
+      static fromAsset(path23, options = {}) {
+        return DockerImage.fromBuild(path23, options);
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        return this._imageHash ?? this.image;
+      }
+      run(options = {}) {
+        const volumes = options.volumes || [];
+        const environment = options.environment || {};
+        const entrypoint = options.entrypoint?.[0] || null;
+        const command = [
+          ...options.entrypoint?.[1] ? [...options.entrypoint.slice(1)] : [],
+          ...options.command ? [...options.command] : []
+        ];
+        const dockerArgs = [
+          "run",
+          "--rm",
+          ...options.securityOpt ? ["--security-opt", options.securityOpt] : [],
+          ...options.network ? ["--network", options.network] : [],
+          ...options.platform ? ["--platform", options.platform] : [],
+          ...options.user ? ["-u", options.user] : [],
+          ...options.volumesFrom ? flatten(options.volumesFrom.map((v) => ["--volumes-from", v])) : [],
+          ...flatten(volumes.map((v) => ["-v", `${v.hostPath}:${v.containerPath}:${isSeLinux() ? "z," : ""}${v.consistency ?? "delegated" /* DELEGATED */}`])),
+          ...flatten(Object.entries(environment).map(([k, v]) => ["--env", `${k}=${v}`])),
+          ...options.workingDirectory ? ["-w", options.workingDirectory] : [],
+          ...entrypoint ? ["--entrypoint", entrypoint] : [],
+          this.image,
+          ...command
+        ];
+        dockerExec(dockerArgs);
+      }
+      cp(imagePath, outputPath) {
+        const { stdout } = dockerExec(["create", this.image], {});
+        const match = stdout.toString().match(/([0-9a-f]{16,})/);
+        if (!match) {
+          throw new ExecutionError(lit`FailedToFailedExtractContainer`, "Failed to extract container ID from Docker create output");
+        }
+        const containerId = match[1];
+        const containerPath = `${containerId}:${imagePath}`;
+        const destPath = outputPath ?? FileSystem.mkdtemp("cdk-docker-cp-");
+        try {
+          dockerExec(["cp", containerPath, destPath]);
+          return destPath;
+        } catch (err) {
+          throw new ExecutionError(lit`FailedToFailedCopyFiles`, `Failed to copy files from ${containerPath} to ${destPath}: ${err}`);
+        } finally {
+          dockerExec(["rm", "-v", containerId]);
+        }
+      }
+    };
+    _init6 = __decoratorStart(null);
+    __decorateElement(_init6, 1, "run", _run_dec3, BundlingDockerImage);
+    __decorateElement(_init6, 1, "cp", _cp_dec, BundlingDockerImage);
+    __decoratorMetadata(_init6, BundlingDockerImage);
+    _DockerImage = class _DockerImage extends (_a5 = BundlingDockerImage, _fromBuild_dec = [profileFn("DockerImage.fromBuild", { telemetry: true })], _a5) {
+      constructor(image, _imageHash) {
+        const deprecated = quiet();
+        super(image, _imageHash);
+        /** The Docker image */
+        __publicField(this, "image");
+        reset(deprecated);
+        this.image = image;
+      }
+      static fromBuild(path23, options = {}) {
+        const buildArgs = options.buildArgs || {};
+        if (options.file && (0, import_path.isAbsolute)(options.file)) {
+          throw new UnscopedValidationError(lit`MustBeFileRelativeDocker`, `"file" must be relative to the docker build directory. Got ${options.file}`);
+        }
+        const hash = FileSystem.fingerprint(path23, { extraHash: JSON.stringify(options) });
+        const tag = `cdk-${hash}`;
+        const usingBuildContexts = Object.keys(options.buildContexts ?? {}).length > 0;
+        if (usingBuildContexts || !this.imageAlreadyExists(tag)) {
+          const dockerArgs = [
+            "build",
+            "-t",
+            tag,
+            ...options.file ? ["-f", (0, import_path.join)(path23, options.file)] : [],
+            ...options.platform ? ["--platform", options.platform] : [],
+            ...options.network ? ["--network", options.network] : [],
+            ...options.targetStage ? ["--target", options.targetStage] : [],
+            ...options.cacheFrom ? [...options.cacheFrom.map((cacheFrom) => ["--cache-from", this.cacheOptionToFlag(cacheFrom)]).flat()] : [],
+            ...options.cacheTo ? ["--cache-to", this.cacheOptionToFlag(options.cacheTo)] : [],
+            ...options.cacheDisabled ? ["--no-cache"] : [],
+            ...flatten(Object.entries(buildArgs).map(([k, v]) => ["--build-arg", `${k}=${v}`])),
+            ...flatten(Object.entries(options.buildContexts || {}).map(([k, v]) => ["--build-context", `${k}=${v}`])),
+            path23
+          ];
+          dockerExec(dockerArgs);
+        }
+        return new _DockerImage(tag, hash);
+      }
+      /**
+       * Reference an image on DockerHub or another online registry.
+       *
+       * @param image the image name
+       */
+      static fromRegistry(image) {
+        return new _DockerImage(image);
+      }
+      static imageAlreadyExists(tag) {
+        const prog = process.env.CDK_DOCKER ?? "docker";
+        const proc = (0, import_child_process2.spawnSync)(prog, ["image", "inspect", tag], {
+          stdio: "ignore"
+        });
+        return proc.status === 0;
+      }
+      static cacheOptionToFlag(option) {
+        let flag = `type=${option.type}`;
+        if (option.params) {
+          flag += "," + Object.entries(option.params).map(([k, v]) => `${k}=${v}`).join(",");
+        }
+        return flag;
+      }
+      /**
+       * Provides a stable representation of this image for JSON serialization.
+       *
+       * @return The overridden image name if set or image hash name in that order
+       */
+      toJSON() {
+        const deprecated = quiet();
+        const json = super.toJSON();
+        reset(deprecated);
+        return json;
+      }
+      /**
+       * Runs a Docker image
+       */
+      run(options = {}) {
+        const deprecated = quiet();
+        const result = super.run(options);
+        reset(deprecated);
+        return result;
+      }
+      /**
+       * Copies a file or directory out of the Docker image to the local filesystem.
+       *
+       * If `outputPath` is omitted the destination path is a temporary directory.
+       *
+       * @param imagePath the path in the Docker image
+       * @param outputPath the destination path for the copy operation
+       * @returns the destination path
+       */
+      cp(imagePath, outputPath) {
+        const deprecated = quiet();
+        const result = super.cp(imagePath, outputPath);
+        reset(deprecated);
+        return result;
+      }
+    };
+    _init7 = __decoratorStart(_a5);
+    __decorateElement(_init7, 9, "fromBuild", _fromBuild_dec, _DockerImage);
+    __decoratorMetadata(_init7, _DockerImage);
+    __runInitializers(_init7, 3, _DockerImage);
+    DockerImage = _DockerImage;
+    PERF_BUNDLING_SRC_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.bundlingSource");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cache.ts
+var Cache;
+var init_cache = __esm({
+  "../../aws-cdk-lib/core/lib/private/cache.ts"() {
+    "use strict";
+    Cache = class {
+      cache = /* @__PURE__ */ new Map();
+      /**
+       * Clears the cache
+       */
+      clear() {
+        this.cache.clear();
+      }
+      /**
+       * Get a value from the cache or calculate it
+       */
+      obtain(cacheKey, calcFn) {
+        let value = this.cache.get(cacheKey);
+        if (value) {
+          return value;
+        }
+        value = calcFn();
+        this.cache.set(cacheKey, value);
+        return value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/asset-staging.ts
+function renderAssetFilename(assetHash, extension = "") {
+  return `asset.${assetHash}${extension}`;
+}
+function determineHashType(scope, assetHashType, customSourceFingerprint) {
+  const hashType = customSourceFingerprint ? assetHashType ?? "custom" /* CUSTOM */ : assetHashType ?? "source" /* SOURCE */;
+  if (customSourceFingerprint && hashType !== "custom" /* CUSTOM */) {
+    throw new ValidationError(lit`CannotSpecifyAssetHashTypeWithAssetHash`, `Cannot specify \`${assetHashType}\` for \`assetHashType\` when \`assetHash\` is specified. Use \`CUSTOM\` or leave \`undefined\`.`, scope);
+  }
+  if (hashType === "custom" /* CUSTOM */ && !customSourceFingerprint) {
+    throw new ValidationError(lit`MustBeSpecified`, "`assetHash` must be specified when `assetHashType` is set to `AssetHashType.CUSTOM`.", scope);
+  }
+  return hashType;
+}
+function validateInternalSymlinks(root, scope, followMode, ignoreStrat) {
+  walkDirectory(root, { follow: followMode, ignoreStrategy: ignoreStrat }, {
+    onSymlink: (entry) => {
+      if (!entry.internal) {
+        throw new ValidationError(
+          lit`BundlingFileSymlinkForbidden`,
+          `The file ${entry.resolvedLinkTarget} is an external symbolic link which is forbidden due to follow mode ${followMode}. Set \`follow\` to a mode that will follow symlinks (ALWAYS or EXTERNAL) or emit a regular file`,
+          scope
+        );
+      }
+    }
+  });
+}
+function calculateCacheKey(props) {
+  return crypto6.createHash("sha256").update(JSON.stringify(sortObject(props), sanitizeHashValue)).digest("hex");
+}
+function sortObject(object) {
+  if (typeof object !== "object" || object instanceof Array) {
+    return object;
+  }
+  const ret = {};
+  for (const key of Object.keys(object).sort()) {
+    ret[key] = sortObject(object[key]);
+  }
+  return ret;
+}
+function sanitizeHashValue(key, value) {
+  if (key === "PIP_INDEX_URL" || key === "PIP_EXTRA_INDEX_URL") {
+    try {
+      let url2 = new URL(value);
+      if (url2.password) {
+        url2.password = "";
+        return url2.toString();
+      }
+    } catch (e) {
+      if (e.name === "TypeError") {
+        throw new AssumptionError(lit`MustBeValid`, `${key} must be a valid URL, got ${value}.`);
+      }
+      throw e;
+    }
+  }
+  return value;
+}
+function findSingleFile(scope, directory, archiveOnly) {
+  if (!fs7.existsSync(directory)) {
+    throw new ValidationError(lit`DirectoryDoesNotExist`, `Directory ${directory} does not exist.`, scope);
+  }
+  if (!fs7.statSync(directory).isDirectory()) {
+    throw new ValidationError(lit`PathIsNotDirectory`, `${directory} is not a directory.`, scope);
+  }
+  const content = fs7.readdirSync(directory);
+  if (content.length === 1) {
+    const file = path7.join(directory, content[0]);
+    const extension = getExtension(content[0]).toLowerCase();
+    if (fs7.statSync(file).isFile() && (!archiveOnly || ARCHIVE_EXTENSIONS.includes(extension))) {
+      return file;
+    }
+  }
+  return void 0;
+}
+function determineBundledAsset(scope, bundleDir, outputType, ignore, followMode) {
+  const archiveFile = findSingleFile(scope, bundleDir, outputType !== "single-file" /* SINGLE_FILE */);
+  if (outputType === "auto-discover" /* AUTO_DISCOVER */) {
+    outputType = archiveFile ? "archived" /* ARCHIVED */ : "not-archived" /* NOT_ARCHIVED */;
+  }
+  switch (outputType) {
+    case "not-archived" /* NOT_ARCHIVED */:
+      if (followMode == "internal-only" /* BLOCK_EXTERNAL */) {
+        validateInternalSymlinks(bundleDir, scope, followMode, ignore);
+      }
+      return { path: bundleDir, packaging: "zip" /* ZIP_DIRECTORY */ };
+    case "archived" /* ARCHIVED */:
+    case "single-file" /* SINGLE_FILE */:
+      if (!archiveFile) {
+        throw new ValidationError(lit`BundlingOutputDirectoryExpectedSingleFile`, "Bundling output directory is expected to include only a single file when `output` is set to `ARCHIVED` or `SINGLE_FILE`", scope);
+      } else if (fs7.lstatSync(archiveFile).isSymbolicLink()) {
+        throw new ValidationError(lit`SymlinkInBundlingOutput`, "The output from bundling is not allowed to be a symlink.", scope);
+      }
+      return { path: archiveFile, packaging: "file" /* FILE */, extension: getExtension(archiveFile) };
+  }
+}
+function getExtension(source) {
+  for (const ext of ARCHIVE_EXTENSIONS) {
+    if (source.toLowerCase().endsWith(ext)) {
+      return ext;
+    }
+  }
+  return path7.extname(source);
+}
+function timerSpanFromOptions(x) {
+  const src = bundlingSourceFromOptions(x);
+  return src ? profileSpan(`bundle:${src}`, { telemetry: true }) : void 0;
+}
+function bundlingSourceFromOptions(x) {
+  const value = x[PERF_BUNDLING_SRC_SYM];
+  return typeof value === "string" ? value : void 0;
+}
+var crypto6, path7, import_constructs7, fs7, ARCHIVE_EXTENSIONS, ASSET_SALT_CONTEXT_KEY, AssetStaging;
+var init_asset_staging2 = __esm({
+  "../../aws-cdk-lib/core/lib/asset-staging.ts"() {
+    "use strict";
+    crypto6 = __toESM(require("crypto"));
+    path7 = __toESM(require("path"));
+    import_constructs7 = __toESM(require_lib4());
+    fs7 = __toESM(require_lib5());
+    init_assets();
+    init_bundling();
+    init_errors();
+    init_fs();
+    init_fingerprint();
+    init_names();
+    init_asset_staging();
+    init_cache();
+    init_core_construct_finders();
+    init_literal_string();
+    init_perf();
+    init_cx_api();
+    init_utils();
+    ARCHIVE_EXTENSIONS = [".tar.gz", ".zip", ".jar", ".tar", ".tgz"];
+    ASSET_SALT_CONTEXT_KEY = "@aws-cdk/core:assetHashSalt";
+    AssetStaging = class _AssetStaging extends import_constructs7.Construct {
+      /**
+       * The directory inside the bundling container into which the asset sources will be mounted.
+       */
+      static BUNDLING_INPUT_DIR = "/asset-input";
+      /**
+       * The directory inside the bundling container into which the bundled output should be written.
+       */
+      static BUNDLING_OUTPUT_DIR = "/asset-output";
+      /**
+       * Clears the asset hash cache
+       */
+      static clearAssetHashCache() {
+        this.assetCache.clear();
+        clearLargeFileFingerprintCache();
+      }
+      /**
+       * Cache of asset hashes based on asset configuration to avoid repeated file
+       * system and bundling operations.
+       */
+      static assetCache = new Cache();
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       *
+       * @deprecated - Use `absoluteStagedPath` instead.
+       */
+      stagedPath;
+      /**
+       * Absolute path to the asset data.
+       *
+       * If asset staging is disabled, this will just be the source path or
+       * a temporary directory used for bundling.
+       *
+       * If asset staging is enabled it will be the staged path.
+       *
+       * IMPORTANT: If you are going to call `addFileAsset()`, use
+       * `relativeStagedPath()` instead.
+       */
+      absoluteStagedPath;
+      /**
+       * The absolute path of the asset as it was referenced by the user.
+       */
+      sourcePath;
+      /**
+       * A cryptographic hash of the asset.
+       */
+      assetHash;
+      /**
+       * How this asset should be packaged.
+       */
+      packaging;
+      /**
+       * Whether this asset is an archive (zip or jar).
+       */
+      isArchive;
+      fingerprintOptions;
+      hashType;
+      assetOutdir;
+      /**
+       * A custom source fingerprint given by the user
+       *
+       * Will not be used literally, always hashed later on.
+       */
+      customSourceFingerprint;
+      cacheKey;
+      _sourceStats;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const salt = this.node.tryGetContext(ASSET_SALT_CONTEXT_KEY);
+        this.sourcePath = path7.resolve(props.sourcePath);
+        this.fingerprintOptions = {
+          ...props,
+          exclude: [".is_custom_resource", ...props.exclude ?? []],
+          extraHash: props.extraHash || salt ? `${props.extraHash ?? ""}${salt ?? ""}` : void 0
+        };
+        if (!fs7.existsSync(this.sourcePath)) {
+          throw new ValidationError(lit`CannotFindAsset`, `Cannot find asset at ${this.sourcePath}`, this);
+        }
+        const ignoreStrategy = IgnoreStrategy.fromCopyOptions(props, this.sourcePath);
+        if (props.follow == "internal-only" /* BLOCK_EXTERNAL */ && fs7.statSync(this.sourcePath).isDirectory()) {
+          validateInternalSymlinks(this.sourcePath, scope, props.follow, ignoreStrategy);
+        }
+        this._sourceStats = fs7.statSync(this.sourcePath);
+        const outdir = stageOf(this)?.assetOutdir;
+        if (!outdir) {
+          throw new ValidationError(lit`UnableToDetermineCloudAssembly`, 'unable to determine cloud assembly asset output directory. Assets must be defined indirectly within a "Stage" or an "App" scope', this);
+        }
+        this.assetOutdir = outdir;
+        this.customSourceFingerprint = props.assetHash;
+        this.hashType = determineHashType(this, props.assetHashType, this.customSourceFingerprint);
+        let stageThisAsset;
+        let skip = false;
+        if (props.bundling) {
+          skip = !stackOf(this).bundlingRequired;
+          const bundling = props.bundling;
+          stageThisAsset = () => this.stageByBundling(bundling, skip, props);
+        } else {
+          stageThisAsset = () => this.stageByCopying();
+        }
+        this.cacheKey = calculateCacheKey({
+          outdir: this.assetOutdir,
+          sourcePath: path7.resolve(props.sourcePath),
+          bundling: props.bundling,
+          assetHashType: this.hashType,
+          customFingerprint: this.customSourceFingerprint,
+          extraHash: props.extraHash,
+          exclude: props.exclude,
+          ignoreMode: props.ignoreMode,
+          skip
+        });
+        const staged = _AssetStaging.assetCache.obtain(this.cacheKey, stageThisAsset);
+        this.stagedPath = staged.stagedPath;
+        this.absoluteStagedPath = staged.stagedPath;
+        this.assetHash = staged.assetHash;
+        this.packaging = staged.packaging;
+        this.isArchive = staged.isArchive;
+        this._sourceStats = void 0;
+      }
+      get sourceStats() {
+        if (!this._sourceStats) {
+          throw new AssumptionError(lit`SourceStatusUnset`, "_sourceStats has been unset");
+        }
+        return this._sourceStats;
+      }
+      /**
+       * A cryptographic hash of the asset.
+       *
+       * @deprecated see `assetHash`.
+       */
+      get sourceHash() {
+        return this.assetHash;
+      }
+      /**
+       * Return the path to the staged asset, relative to the Cloud Assembly (manifest) directory of the given stack
+       *
+       * Only returns a relative path if the asset was staged, returns an absolute path if
+       * it was not staged.
+       *
+       * A bundled asset might end up in the outDir and still not count as
+       * "staged"; if asset staging is disabled we're technically expected to
+       * reference source directories, but we don't have a source directory for the
+       * bundled outputs (as the bundle output is written to a temporary
+       * directory). Nevertheless, we will still return an absolute path.
+       *
+       * A non-obvious directory layout may look like this:
+       *
+       * ```
+       *   CLOUD ASSEMBLY ROOT
+       *     +-- asset.12345abcdef/
+       *     +-- assembly-Stage
+       *           +-- MyStack.template.json
+       *           +-- MyStack.assets.json <- will contain { "path": "../asset.12345abcdef" }
+       * ```
+       */
+      relativeStagedPath(stack) {
+        const asmManifestDir = stageOf(stack)?.outdir;
+        if (!asmManifestDir) {
+          return this.stagedPath;
+        }
+        const isOutsideAssetDir = path7.relative(this.assetOutdir, this.stagedPath).startsWith("..");
+        if (isOutsideAssetDir || this.stagingDisabled) {
+          return this.stagedPath;
+        }
+        return path7.relative(asmManifestDir, this.stagedPath);
+      }
+      /**
+       * Stage the source to the target by copying
+       *
+       * Optionally skip if staging is disabled, in which case we pretend we did something but we don't really.
+       */
+      stageByCopying() {
+        const assetHash = this.calculateHash(this.hashType);
+        const targetPath = this.stagingDisabled ? this.sourcePath : path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, getExtension(this.sourcePath)));
+        const stagedPath = this.renderStagedPath(this.sourcePath, targetPath);
+        if (!this.sourceStats.isDirectory() && !this.sourceStats.isFile()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryOrFile`, `Asset ${this.sourcePath} is expected to be either a directory or a regular file`, this);
+        }
+        this.stageAsset(this.sourcePath, stagedPath, "copy");
+        return {
+          assetHash,
+          stagedPath,
+          packaging: this.sourceStats.isDirectory() ? "zip" /* ZIP_DIRECTORY */ : "file" /* FILE */,
+          isArchive: this.sourceStats.isDirectory() || ARCHIVE_EXTENSIONS.includes(getExtension(this.sourcePath).toLowerCase())
+        };
+      }
+      /**
+       * Stage the source to the target by bundling
+       *
+       * Optionally skip, in which case we pretend we did something but we don't really.
+       */
+      stageByBundling(bundling, skip, props) {
+        if (!this.sourceStats.isDirectory()) {
+          throw new ValidationError(lit`AssetExpectedDirectoryForBundling`, `Asset ${this.sourcePath} is expected to be a directory when bundling`, this);
+        }
+        if (skip) {
+          let hashType = this.hashType;
+          if (hashType === "output" /* OUTPUT */ || hashType === "bundle" /* BUNDLE */) {
+            this.customSourceFingerprint = Names.uniqueId(this);
+            hashType = "custom" /* CUSTOM */;
+          }
+          return {
+            assetHash: this.calculateHash(hashType, bundling),
+            stagedPath: this.sourcePath,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            isArchive: true
+          };
+        }
+        let assetHash = this.hashType === "source" /* SOURCE */ || this.hashType === "custom" /* CUSTOM */ ? this.calculateHash(this.hashType, bundling) : void 0;
+        const bundleDir = this.determineBundleDir(this.assetOutdir, assetHash);
+        this.bundle(bundling, bundleDir);
+        const bundlingOutputType = bundling.outputType ?? "auto-discover" /* AUTO_DISCOVER */;
+        const ignore = IgnoreStrategy.fromCopyOptions(props, bundleDir);
+        const bundledAsset = determineBundledAsset(this, bundleDir, bundlingOutputType, ignore, props.follow);
+        assetHash = assetHash ?? this.calculateHash(this.hashType, bundling, bundledAsset.path);
+        const stagedPath = this.renderStagedPath(
+          bundledAsset.path,
+          path7.resolve(this.assetOutdir, renderAssetFilename(assetHash, bundledAsset.extension))
+        );
+        this.stageAsset(bundledAsset.path, stagedPath, "move");
+        if (bundledAsset.packaging === "file" /* FILE */) {
+          if (this.hashType === "output" /* OUTPUT */ || this.hashType === "bundle" /* BUNDLE */) {
+            fs7.removeSync(path7.dirname(bundledAsset.path));
+          } else {
+            fs7.closeSync(fs7.openSync(bundledAsset.path, "w"));
+          }
+        }
+        return {
+          assetHash,
+          stagedPath,
+          packaging: bundledAsset.packaging,
+          isArchive: bundlingOutputType !== "single-file" /* SINGLE_FILE */
+        };
+      }
+      /**
+       * Whether staging has been disabled
+       */
+      get stagingDisabled() {
+        return !!this.node.tryGetContext(DISABLE_ASSET_STAGING_CONTEXT);
+      }
+      /**
+       * Copies or moves the files from sourcePath to targetPath.
+       *
+       * Moving implies the source directory is temporary and can be trashed.
+       *
+       * Will not do anything if source and target are the same.
+       */
+      stageAsset(sourcePath, targetPath, style) {
+        const isAlreadyStaged = fs7.existsSync(targetPath);
+        if (isAlreadyStaged) {
+          if (style === "move" && sourcePath !== targetPath) {
+            fs7.removeSync(sourcePath);
+          }
+          return;
+        }
+        if (style === "move") {
+          fs7.renameSync(sourcePath, targetPath);
+          return;
+        }
+        if (this.sourceStats.isFile()) {
+          fs7.copyFileSync(sourcePath, targetPath);
+        } else if (this.sourceStats.isDirectory()) {
+          fs7.mkdirSync(targetPath);
+          FileSystem.copyDirectory(sourcePath, targetPath, this.fingerprintOptions);
+        } else {
+          throw new ValidationError(lit`UnknownFileType`, `Unknown file type: ${sourcePath}`, this);
+        }
+      }
+      /**
+       * Determine the directory where we're going to write the bundling output
+       *
+       * This is the target directory where we're going to write the staged output
+       * files if we can (if the hash is fully known), or a temporary directory
+       * otherwise.
+       */
+      determineBundleDir(outdir, sourceHash) {
+        if (sourceHash) {
+          return path7.resolve(outdir, renderAssetFilename(sourceHash));
+        }
+        return path7.resolve(outdir, `bundling-temp-${this.cacheKey}`);
+      }
+      /**
+       * Bundles an asset to the given directory
+       *
+       * If the given directory already exists, assume that everything's already
+       * in order and don't do anything.
+       *
+       * @param options Bundling options
+       * @param bundleDir Where to create the bundle directory
+       * @returns The fully resolved bundle output directory.
+       */
+      bundle(options, bundleDir) {
+        if (fs7.existsSync(bundleDir)) {
+          return;
+        }
+        const tempDir = `${bundleDir}-building`;
+        fs7.rmSync(tempDir, { recursive: true, force: true });
+        fs7.ensureDirSync(tempDir);
+        fs7.chmodSync(tempDir, 511);
+        let localBundling;
+        try {
+          var _stack = [];
+          try {
+            process.stderr.write(`Bundling asset ${this.node.path}...
+`);
+            const _span = __using(_stack, timerSpanFromOptions(options));
+            localBundling = options.local?.tryBundle(tempDir, options);
+            if (!localBundling) {
+              const assetStagingOptions = {
+                sourcePath: this.sourcePath,
+                bundleDir: tempDir,
+                ...options
+              };
+              switch (options.bundlingFileAccess) {
+                case "VOLUME_COPY" /* VOLUME_COPY */:
+                  new AssetBundlingVolumeCopy(assetStagingOptions).run();
+                  break;
+                case "BIND_MOUNT" /* BIND_MOUNT */:
+                default:
+                  new AssetBundlingBindMount(assetStagingOptions).run();
+                  break;
+              }
+            }
+            fs7.renameSync(tempDir, bundleDir);
+          } catch (_) {
+            var _error = _, _hasError = true;
+          } finally {
+            __callDispose(_stack, _error, _hasError);
+          }
+        } catch (err) {
+          throw new ValidationError(lit`FailedToBundleAsset`, `Failed to bundle asset ${this.node.path}, bundle output is located at ${tempDir}: ${err}`, this);
+        }
+        if (FileSystem.isEmpty(bundleDir)) {
+          const outputDir = localBundling ? bundleDir : _AssetStaging.BUNDLING_OUTPUT_DIR;
+          throw new ValidationError(lit`BundlingProducedNoOutput`, `Bundling did not produce any output. Check that content is written to ${outputDir}.`, this);
+        }
+      }
+      calculateHash(hashType, bundling, outputDir) {
+        if (hashType == "custom" /* CUSTOM */ || hashType == "source" /* SOURCE */ && bundling) {
+          const hash = crypto6.createHash("sha256");
+          hash.update(this.customSourceFingerprint ?? FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions));
+          if (bundling) {
+            hash.update(JSON.stringify(bundling, sanitizeHashValue));
+          }
+          return hash.digest("hex");
+        }
+        switch (hashType) {
+          case "source" /* SOURCE */:
+            return FileSystem.fingerprint(this.sourcePath, this.fingerprintOptions);
+          case "bundle" /* BUNDLE */:
+          case "output" /* OUTPUT */:
+            if (!outputDir) {
+              throw new ValidationError(lit`CannotUseHashTypeWithoutBundling`, `Cannot use \`${hashType}\` hash type when \`bundling\` is not specified.`, this);
+            }
+            return FileSystem.fingerprint(outputDir, this.fingerprintOptions);
+          default:
+            throw new ValidationError(lit`UnknownAssetHashType`, "Unknown asset hash type.", this);
+        }
+      }
+      renderStagedPath(sourcePath, targetPath) {
+        if (this.hashType !== "output" /* OUTPUT */ && path7.dirname(sourcePath) === targetPath) {
+          targetPath = targetPath + "_noext";
+        }
+        return targetPath;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/duration.ts
+function convert(amount, fromUnit, toUnit, { integral = true }) {
+  if (fromUnit.inMillis === toUnit.inMillis) {
+    if (integral && !Token.isUnresolved(amount) && !Number.isInteger(amount)) {
+      throw new UnscopedValidationError(lit`MustBeWholeNumber`, `${amount} must be a whole number of ${toUnit}.`);
+    }
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeDurationSpecifiedDuration`, `Duration must be specified as 'Duration.${toUnit}()' here since its value comes from a token and cannot be converted (got Duration.${fromUnit})`);
+  }
+  const value = amount * fromUnit.inMillis / toUnit.inMillis;
+  if (!Number.isInteger(value) && integral) {
+    throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+  }
+  return value;
+}
+function finestUnit(a, b) {
+  return a.inMillis < b.inMillis ? a : b;
+}
+var Duration, TimeUnit;
+var init_duration = __esm({
+  "../../aws-cdk-lib/core/lib/duration.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Duration = class _Duration {
+      /**
+       * Create a Duration representing an amount of milliseconds
+       *
+       * @param amount the amount of Milliseconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` ms.
+       */
+      static millis(amount) {
+        return new _Duration(amount, TimeUnit.Milliseconds);
+      }
+      /**
+       * Create a Duration representing an amount of seconds
+       *
+       * @param amount the amount of Seconds the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Seconds.
+       */
+      static seconds(amount) {
+        return new _Duration(amount, TimeUnit.Seconds);
+      }
+      /**
+       * Create a Duration representing an amount of minutes
+       *
+       * @param amount the amount of Minutes the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Minutes.
+       */
+      static minutes(amount) {
+        return new _Duration(amount, TimeUnit.Minutes);
+      }
+      /**
+       * Create a Duration representing an amount of hours
+       *
+       * @param amount the amount of Hours the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Hours.
+       */
+      static hours(amount) {
+        return new _Duration(amount, TimeUnit.Hours);
+      }
+      /**
+       * Create a Duration representing an amount of days
+       *
+       * @param amount the amount of Days the `Duration` will represent.
+       * @returns a new `Duration` representing `amount` Days.
+       */
+      static days(amount) {
+        return new _Duration(amount, TimeUnit.Days);
+      }
+      /**
+       * Parse a period formatted according to the ISO 8601 standard
+       *
+       * Days are the largest ISO duration supported, i.e.,
+       * weeks, months, and years are not supported.
+       *
+       * @example
+       * // This represents 1 day, 2 hours, 3 minutes, 4 seconds, and 567 milliseconds.
+       * 'P1DT2H3M4.567S'
+       *
+       * @see https://www.iso.org/standard/70907.html
+       * @param duration an ISO-formatted duration to be parsed.
+       * @returns the parsed `Duration`.
+       */
+      static parse(duration) {
+        const matches = duration.match(/^P(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)\.?(\d{1,3})?S)?)?$/);
+        if (!matches) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const [, days, hours, minutes, seconds, milliseconds] = matches;
+        if (!days && !hours && !minutes && !seconds && !milliseconds) {
+          throw new UnscopedValidationError(lit`ValidDuration`, `Not a valid ISO duration: ${duration}`);
+        }
+        const millis = milliseconds ? milliseconds.padEnd(3, "0") : "";
+        return _Duration.millis(
+          _toInt(millis) + _toInt(seconds) * TimeUnit.Seconds.inMillis + _toInt(minutes) * TimeUnit.Minutes.inMillis + _toInt(hours) * TimeUnit.Hours.inMillis + _toInt(days) * TimeUnit.Days.inMillis
+        );
+        function _toInt(str) {
+          if (!str) {
+            return 0;
+          }
+          return Number(str);
+        }
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`DurationAmountsCannotNegative`, `Duration amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Add two Durations together
+       */
+      plus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) + convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Substract two Durations together
+       */
+      minus(rhs) {
+        const targetUnit = finestUnit(this.unit, rhs.unit);
+        const res = convert(this.amount, this.unit, targetUnit, {}) - convert(rhs.amount, rhs.unit, targetUnit, {});
+        return new _Duration(res, targetUnit);
+      }
+      /**
+       * Return the total number of milliseconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Milliseconds.
+       */
+      toMilliseconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Milliseconds, opts);
+      }
+      /**
+       * Return the total number of seconds in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Seconds.
+       */
+      toSeconds(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Seconds, opts);
+      }
+      /**
+       * Return the total number of minutes in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Minutes.
+       */
+      toMinutes(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Minutes, opts);
+      }
+      /**
+       * Return the total number of hours in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Hours.
+       */
+      toHours(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Hours, opts);
+      }
+      /**
+       * Return the total number of days in this Duration
+       *
+       * @returns the value of this `Duration` expressed in Days.
+       */
+      toDays(opts = {}) {
+        return convert(this.amount, this.unit, TimeUnit.Days, opts);
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       */
+      toIsoString() {
+        if (this.amount === 0) {
+          return "PT0S";
+        }
+        const ret = ["P"];
+        let tee = false;
+        for (const [amount, unit] of this.components(true)) {
+          if ([TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours].includes(unit) && !tee) {
+            ret.push("T");
+            tee = true;
+          }
+          ret.push(`${amount}${unit.isoLabel}`);
+        }
+        return ret.join("");
+      }
+      /**
+       * Return an ISO 8601 representation of this period
+       *
+       * @returns a string starting with 'P' describing the period
+       * @see https://www.iso.org/standard/70907.html
+       * @deprecated Use `toIsoString()` instead.
+       */
+      toISOString() {
+        return this.toIsoString();
+      }
+      /**
+       * Turn this duration into a human-readable string
+       */
+      toHumanString() {
+        if (this.amount === 0) {
+          return fmtUnit(0, this.unit);
+        }
+        if (Token.isUnresolved(this.amount)) {
+          return ` ${this.unit.label}`;
+        }
+        return this.components(false).slice(0, 2).map(([amount, unit]) => fmtUnit(amount, unit)).join(" ");
+        function fmtUnit(amount, unit) {
+          if (amount === 1) {
+            return `${amount} ${unit.label.substring(0, unit.label.length - 1)}`;
+          }
+          return `${amount} ${unit.label}`;
+        }
+      }
+      /**
+       * Returns a string representation of this `Duration`
+       *
+       * This is never the right function to use when you want to use the `Duration`
+       * object in a template. Use `toSeconds()`, `toMinutes()`, `toDays()`, etc. instead.
+       */
+      toString() {
+        return `Duration.${this.unit.label}(${this.amount})`;
+      }
+      /**
+       * Return the duration in a set of whole numbered time components, ordered from largest to smallest
+       *
+       * Only components != 0 will be returned.
+       *
+       * Can combine millis and seconds together for the benefit of toIsoString,
+       * makes the logic in there simpler.
+       */
+      components(combineMillisWithSeconds) {
+        const ret = new Array();
+        let millis = convert(this.amount, this.unit, TimeUnit.Milliseconds, { integral: false });
+        for (const unit of [TimeUnit.Days, TimeUnit.Hours, TimeUnit.Minutes, TimeUnit.Seconds]) {
+          const count2 = convert(millis, TimeUnit.Milliseconds, unit, { integral: false });
+          const wholeCount = unit === TimeUnit.Seconds && combineMillisWithSeconds ? count2 : Math.floor(count2);
+          if (wholeCount > 0) {
+            ret.push([wholeCount, unit]);
+            millis -= wholeCount * unit.inMillis;
+          }
+        }
+        if (millis > 1e-4) {
+          ret.push([millis, TimeUnit.Milliseconds]);
+        }
+        return ret;
+      }
+      /**
+       * Checks if duration is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Returns unit of the duration
+       */
+      unitLabel() {
+        return this.unit.label;
+      }
+      /**
+       * Returns stringified number of duration
+       */
+      formatTokenToNumber() {
+        const number = Tokenization.stringifyNumber(this.amount);
+        return `${number} ${this.unit.label}`;
+      }
+    };
+    TimeUnit = class _TimeUnit {
+      constructor(label, isoLabel, inMillis) {
+        this.label = label;
+        this.isoLabel = isoLabel;
+        this.inMillis = inMillis;
+      }
+      label;
+      isoLabel;
+      inMillis;
+      static Milliseconds = new _TimeUnit("millis", "", 1);
+      static Seconds = new _TimeUnit("seconds", "S", 1e3);
+      static Minutes = new _TimeUnit("minutes", "M", 6e4);
+      static Hours = new _TimeUnit("hours", "H", 36e5);
+      static Days = new _TimeUnit("days", "D", 864e5);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/size.ts
+function allStorageUnits() {
+  return [
+    StorageUnit.Pebibytes,
+    StorageUnit.Tebibytes,
+    StorageUnit.Gibibytes,
+    StorageUnit.Mebibytes,
+    StorageUnit.Kibibytes,
+    StorageUnit.Bytes
+  ];
+}
+function convert2(amount, fromUnit, toUnit, options = {}) {
+  const rounding = options.rounding ?? 0 /* FAIL */;
+  if (fromUnit.inBytes === toUnit.inBytes) {
+    return amount;
+  }
+  if (Token.isUnresolved(amount)) {
+    throw new UnscopedValidationError(lit`MustBeSizeSpecifiedSize`, `Size must be specified as 'Size.${toUnit}()' here since its value comes from a token and cannot be converted (got Size.${fromUnit})`);
+  }
+  const multiplier = fromUnit.inBytes / toUnit.inBytes;
+  const value = amount * multiplier;
+  switch (rounding) {
+    case 2 /* NONE */:
+      return value;
+    case 1 /* FLOOR */:
+      return Math.floor(value);
+    default:
+    case 0 /* FAIL */:
+      if (!Number.isInteger(value)) {
+        throw new UnscopedValidationError(lit`CannotConvertedIntoWhole`, `'${amount} ${fromUnit}' cannot be converted into a whole number of ${toUnit}.`);
+      }
+      return value;
+  }
+}
+var Size, StorageUnit;
+var init_size = __esm({
+  "../../aws-cdk-lib/core/lib/size.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    Size = class _Size {
+      /**
+       * Create a Storage representing an amount bytes.
+       *
+       * @param amount the amount of bytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static bytes(amount) {
+        return new _Size(amount, StorageUnit.Bytes);
+      }
+      /**
+       * Create a Storage representing an amount kibibytes.
+       * 1 KiB = 1024 bytes
+       *
+       * @param amount the amount of kibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static kibibytes(amount) {
+        return new _Size(amount, StorageUnit.Kibibytes);
+      }
+      /**
+       * Create a Storage representing an amount mebibytes.
+       * 1 MiB = 1024 KiB
+       *
+       * @param amount the amount of mebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static mebibytes(amount) {
+        return new _Size(amount, StorageUnit.Mebibytes);
+      }
+      /**
+       * Create a Storage representing an amount gibibytes.
+       * 1 GiB = 1024 MiB
+       *
+       * @param amount the amount of gibibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static gibibytes(amount) {
+        return new _Size(amount, StorageUnit.Gibibytes);
+      }
+      /**
+       * Create a Storage representing an amount tebibytes.
+       * 1 TiB = 1024 GiB
+       *
+       * @param amount the amount of tebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static tebibytes(amount) {
+        return new _Size(amount, StorageUnit.Tebibytes);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @deprecated use `pebibytes` instead
+       */
+      static pebibyte(amount) {
+        return _Size.pebibytes(amount);
+      }
+      /**
+       * Create a Storage representing an amount pebibytes.
+       * 1 PiB = 1024 TiB
+       *
+       * @param amount the amount of pebibytes to be represented
+       *
+       * @returns a new `Size` instance
+       */
+      static pebibytes(amount) {
+        return new _Size(amount, StorageUnit.Pebibytes);
+      }
+      amount;
+      unit;
+      constructor(amount, unit) {
+        if (!Token.isUnresolved(amount) && amount < 0) {
+          throw new UnscopedValidationError(lit`StorageAmountsCannotNegative`, `Storage amounts cannot be negative. Received: ${amount}`);
+        }
+        this.amount = amount;
+        this.unit = unit;
+      }
+      /**
+       * Return this storage as a total number of bytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity expressed in bytes
+       */
+      toBytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Bytes, opts);
+      }
+      /**
+       * Return this storage as a total number of kibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in kibibytes
+       */
+      toKibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Kibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of mebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in mebibytes
+       */
+      toMebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Mebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of gibibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in gibibytes
+       */
+      toGibibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Gibibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of tebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in tebibytes
+       */
+      toTebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Tebibytes, opts);
+      }
+      /**
+       * Return this storage as a total number of pebibytes.
+       *
+       * @param opts the conversion options
+       *
+       * @returns the quantity of bytes expressed in pebibytes
+       */
+      toPebibytes(opts = {}) {
+        return convert2(this.amount, this.unit, StorageUnit.Pebibytes, opts);
+      }
+      /**
+       * Checks if size is a token or a resolvable object
+       */
+      isUnresolved() {
+        return Token.isUnresolved(this.amount);
+      }
+      /**
+       * Convert this Size object to the most appropriate readable number.
+       */
+      toHumanString() {
+        if (this.isUnresolved()) {
+          return `${Token.asString(this.amount)} ${this.unit.shortLabel}`;
+        }
+        const bytes = this.toBytes();
+        for (const unit of allStorageUnits()) {
+          if (bytes >= unit.inBytes) {
+            const am = convert2(bytes, StorageUnit.Bytes, unit, { rounding: 2 /* NONE */ });
+            return `${am.toFixed(2).replace(/\.?0+$/, "")} ${unit.shortLabel}`;
+          }
+        }
+        return `${bytes} bytes`;
+      }
+      /**
+       * Convert this Size object to its constructor form
+       */
+      toString() {
+        return `Size.${this.unit.label}(${this.amount})`;
+      }
+    };
+    StorageUnit = class _StorageUnit {
+      constructor(label, shortLabel, inBytes) {
+        this.label = label;
+        this.shortLabel = shortLabel;
+        this.inBytes = inBytes;
+      }
+      label;
+      shortLabel;
+      inBytes;
+      static Bytes = new _StorageUnit("bytes", "bytes", 1);
+      static Kibibytes = new _StorageUnit("kibibytes", "KiB", 1024);
+      static Mebibytes = new _StorageUnit("mebibytes", "MiB", 1024 * 1024);
+      static Gibibytes = new _StorageUnit("gibibytes", "GiB", 1024 * 1024 * 1024);
+      static Tebibytes = new _StorageUnit("tebibytes", "TiB", 1024 * 1024 * 1024 * 1024);
+      static Pebibytes = new _StorageUnit("pebibytes", "PiB", 1024 * 1024 * 1024 * 1024 * 1024);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts
+var path8, import_constructs8, fs8, ENTRYPOINT_FILENAME, ENTRYPOINT_NODEJS_SOURCE, CustomResourceProviderBase;
+var init_custom_resource_provider_base = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider-base.ts"() {
+    "use strict";
+    path8 = __toESM(require("path"));
+    import_constructs8 = __toESM(require_lib4());
+    fs8 = __toESM(require_lib5());
+    init_shared();
+    init_cx_api();
+    init_asset_staging2();
+    init_assets();
+    init_cfn_resource();
+    init_duration();
+    init_errors();
+    init_fs();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_literal_string();
+    init_size();
+    init_token();
+    ENTRYPOINT_FILENAME = "__entrypoint__";
+    ENTRYPOINT_NODEJS_SOURCE = path8.join(__dirname, "..", "..", "..", "custom-resource-handlers", "dist", "core", "nodejs-entrypoint-handler", "index.js");
+    CustomResourceProviderBase = class extends import_constructs8.Construct {
+      /**
+       * The hash of the lambda code backing this provider. Can be used to trigger updates
+       * on code changes, even when the properties of a custom resource remain unchanged.
+       */
+      get codeHash() {
+        if (!this._codeHash) {
+          throw new ValidationError(lit`CustomResourceUsesInlineCode`, "This custom resource uses inlineCode: true and does not have a codeHash", this);
+        }
+        return this._codeHash;
+      }
+      _codeHash;
+      policyStatements = Box.fromArray();
+      role;
+      handler;
+      /**
+       * The ARN of the provider's AWS Lambda function which should be used as the `serviceToken` when defining a custom
+       * resource.
+       */
+      get serviceToken() {
+        return Token.asString(this.handler.getAtt("Arn"));
+      }
+      _roleArn = "";
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(scope);
+        if (!fs8.existsSync(path8.join(props.codeDirectory, "index.js"))) {
+          throw new ValidationError(lit`CannotFind`, `cannot find ${props.codeDirectory}/index.js`, this);
+        }
+        if (props.policyStatements) {
+          for (const statement of props.policyStatements) {
+            this.addToRolePolicy(statement);
+          }
+        }
+        const { code, codeHandler, metadata } = this.createCodePropAndMetadata(props, stack);
+        const config = getPrecreatedRoleConfig(this, `${this.node.path}/Role`);
+        const assumeRolePolicyDoc = [{ Action: "sts:AssumeRole", Effect: "Allow", Principal: { Service: "lambda.amazonaws.com" } }];
+        const managedPolicyArn = "arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole";
+        if (config.enabled) {
+          this.node.addValidation({
+            validate: () => {
+              PolicySynthesizer.getOrCreate(this).addRole(`${this.node.path}/Role`, {
+                missing: !config.precreatedRoleName,
+                roleName: config.precreatedRoleName ?? id + "Role",
+                managedPolicies: [{ managedPolicyArn }],
+                policyStatements: [...this.policyStatements.get()],
+                assumeRolePolicy: assumeRolePolicyDoc
+              });
+              return [];
+            }
+          });
+          this._roleArn = stackOf(this).formatArn({
+            region: "",
+            service: "iam",
+            resource: "role",
+            resourceName: config.precreatedRoleName
+          });
+        }
+        if (!config.preventSynthesis) {
+          this.role = new CfnResource(this, "Role", {
+            type: "AWS::IAM::Role",
+            properties: {
+              AssumeRolePolicyDocument: {
+                Version: "2012-10-17",
+                Statement: assumeRolePolicyDoc
+              },
+              ManagedPolicyArns: [
+                { "Fn::Sub": managedPolicyArn }
+              ],
+              Policies: this.policyStatements.derive((stmts) => stmts.length === 0 ? void 0 : [{
+                PolicyName: "Inline",
+                PolicyDocument: {
+                  Version: "2012-10-17",
+                  Statement: stmts
+                }
+              }])
+            }
+          });
+        }
+        const timeout = props.timeout ?? Duration.minutes(15);
+        const memory = props.memorySize ?? Size.mebibytes(128);
+        this.handler = new CfnResource(this, "Handler", {
+          type: "AWS::Lambda::Function",
+          properties: {
+            Code: code,
+            Timeout: timeout.toSeconds(),
+            MemorySize: memory.toMebibytes(),
+            Handler: codeHandler,
+            Role: this.roleArn,
+            Runtime: props.runtimeName,
+            Environment: this.renderEnvironmentVariables(props.environment),
+            Description: props.description ?? void 0
+          }
+        });
+        if (this.role) {
+          this.handler.addResourceDependency(this.role);
+        }
+        if (metadata) {
+          Object.entries(metadata).forEach(([k, v]) => this.handler.addMetadata(k, v));
+        }
+      }
+      /**
+       * The ARN of the provider's AWS Lambda function role.
+       */
+      get roleArn() {
+        if (this.role) {
+          return Token.asString(this.role.getAtt("Arn"));
+        }
+        return this._roleArn;
+      }
+      /**
+       * Add an IAM policy statement to the inline policy of the
+       * provider's lambda function's role.
+       *
+       * **Please note**: this is a direct IAM JSON policy blob, *not* a `iam.PolicyStatement`
+       * object like you will see in the rest of the CDK.
+       *
+       *
+       * @example
+       * declare const myProvider: CustomResourceProvider;
+       *
+       * myProvider.addToRolePolicy({
+       *   Effect: 'Allow',
+       *   Action: 's3:GetObject',
+       *   Resource: '*',
+       * });
+       */
+      addToRolePolicy(statement) {
+        this.policyStatements.push(statement);
+      }
+      renderEnvironmentVariables(env2) {
+        if (!env2 || Object.keys(env2).length === 0) {
+          return void 0;
+        }
+        env2 = { ...env2 };
+        env2.AWS_STS_REGIONAL_ENDPOINTS = "regional";
+        const variables = {};
+        const keys = Object.keys(env2).sort();
+        for (const key of keys) {
+          variables[key] = env2[key];
+        }
+        return { Variables: variables };
+      }
+      /**
+       * Returns the code property for the custom resource as well as any metadata.
+       * If the code is to be uploaded as an asset, the asset gets created in this function.
+       */
+      createCodePropAndMetadata(props, stack) {
+        let codeHandler = "index.handler";
+        const inlineCode = this.node.tryGetContext(INLINE_CUSTOM_RESOURCE_CONTEXT);
+        if (!inlineCode) {
+          const stagingDirectory = FileSystem.mkdtemp("cdk-custom-resource");
+          fs8.copySync(props.codeDirectory, stagingDirectory, { filter: (src, _dest) => !src.endsWith(".ts") });
+          if (props.useCfnResponseWrapper ?? true) {
+            fs8.copyFileSync(ENTRYPOINT_NODEJS_SOURCE, path8.join(stagingDirectory, `${ENTRYPOINT_FILENAME}.js`));
+            codeHandler = `${ENTRYPOINT_FILENAME}.handler`;
+          }
+          const staging = new AssetStaging(this, "Staging", {
+            sourcePath: stagingDirectory
+          });
+          const assetFileName = staging.relativeStagedPath(stack);
+          const asset = stack.synthesizer.addFileAsset({
+            fileName: assetFileName,
+            sourceHash: staging.assetHash,
+            packaging: "zip" /* ZIP_DIRECTORY */,
+            displayName: `${this.node.path} Code`
+          });
+          this._codeHash = staging.assetHash;
+          fs8.rmSync(stagingDirectory, { recursive: true, force: true });
+          return {
+            code: {
+              S3Bucket: asset.bucketName,
+              S3Key: asset.objectKey
+            },
+            codeHandler,
+            metadata: this.node.tryGetContext(import_cloud_assembly_api.ASSET_RESOURCE_METADATA_ENABLED_CONTEXT) ? {
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PATH_KEY]: assetFileName,
+              [import_cloud_assembly_api.ASSET_RESOURCE_METADATA_PROPERTY_KEY]: "Code"
+            } : void 0
+          };
+        }
+        return {
+          code: {
+            ZipFile: fs8.readFileSync(path8.join(props.codeDirectory, "index.js"), "utf-8")
+          },
+          codeHandler
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/default.ts
+var init_default = __esm({
+  "../../aws-cdk-lib/region-info/lib/default.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/aws-entities.ts
+function partitionInformation(region) {
+  for (const [prefix, info] of Object.entries(PARTITION_MAP)) {
+    if (region.startsWith(prefix)) {
+      return info;
+    }
+  }
+  return PARTITION_MAP.default;
+}
+var RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN, RULE_CLASSIC_PARTITION_BECOMES_OPT_IN, AWS_REGIONS_AND_RULES, AWS_REGIONS, PARTITION_MAP;
+var init_aws_entities = __esm({
+  "../../aws-cdk-lib/region-info/lib/aws-entities.ts"() {
+    "use strict";
+    RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN = /* @__PURE__ */ Symbol("S3_WEBSITE_REGIONAL_SUBDOMAIN");
+    RULE_CLASSIC_PARTITION_BECOMES_OPT_IN = /* @__PURE__ */ Symbol("CLASSIC_PARTITION_BECOMES_OPT_IN");
+    AWS_REGIONS_AND_RULES = [
+      "us-east-1",
+      // US East (N. Virginia)
+      "eu-west-1",
+      // Europe (Ireland)
+      "us-west-1",
+      // US West (N. California)
+      "ap-southeast-1",
+      // Asia Pacific (Singapore)
+      "ap-northeast-1",
+      // Asia Pacific (Tokyo)
+      "us-gov-west-1",
+      // AWS GovCloud (US-West)
+      "us-west-2",
+      // US West (Oregon)
+      "sa-east-1",
+      // South America (São Paulo)
+      "ap-southeast-2",
+      // Asia Pacific (Sydney)
+      RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN,
+      "cn-north-1",
+      // China (Beijing)
+      "us-iso-east-1",
+      // AWS ISO
+      "eu-central-1",
+      // Europe (Frankfurt)
+      "ap-northeast-2",
+      // Asia Pacific (Seoul)
+      "ap-south-1",
+      // Asia Pacific (Mumbai)
+      "us-east-2",
+      // US East (Ohio)
+      "ca-central-1",
+      // Canada (Central)
+      "eu-west-2",
+      // Europe (London)
+      "us-isob-east-1",
+      // AWS ISO-B
+      "cn-northwest-1",
+      // China (Ningxia)
+      "eu-west-3",
+      // Europe (Paris)
+      "ap-northeast-3",
+      // Asia Pacific (Osaka)
+      "us-gov-east-1",
+      // AWS GovCloud (US-East)
+      "eu-north-1",
+      // Europe (Stockholm)
+      RULE_CLASSIC_PARTITION_BECOMES_OPT_IN,
+      "ap-east-1",
+      // Asia Pacific (Hong Kong)
+      "me-south-1",
+      // Middle East (Bahrain)
+      "af-south-1",
+      // Africa (Cape Town)
+      "eu-south-1",
+      // Europe (Milan)
+      "us-iso-west-1",
+      // US ISO West
+      "ap-southeast-3",
+      // Asia Pacific (Jakarta)
+      "me-central-1",
+      // Middle East (UAE)
+      "eu-central-2",
+      // Europe (Zurich)
+      "eu-south-2",
+      // Europe (Spain)
+      "ap-south-2",
+      // Asia Pacific (Hyderabad)
+      "ap-southeast-4",
+      // Asia Pacific (Melbourne)
+      "il-central-1",
+      // Israel (Tel Aviv)
+      "ca-west-1",
+      // Canada West (Calgary)
+      "ap-southeast-5",
+      // Asia Pacific (Malaysia)
+      "ap-southeast-7",
+      // Asia Pacific (Thailand)
+      "mx-central-1",
+      // Mexico (Central)
+      "eu-isoe-west-1",
+      // EU ISO-E West
+      "us-isob-west-1",
+      // US ISOB West
+      "ap-east-2",
+      // Asia Pacific (Taipei)
+      "eusc-de-east-1",
+      // EU (Germany)
+      "ap-southeast-6",
+      // Asia Pacific (New Zealand)
+      "us-isof-south-1",
+      // US ISOF SOUTH
+      "us-isof-east-1"
+      // US ISOF EAST
+    ];
+    AWS_REGIONS = AWS_REGIONS_AND_RULES.filter((x) => typeof x === "string").sort();
+    PARTITION_MAP = {
+      "default": { partition: "aws", domainSuffix: "amazonaws.com" },
+      "cn-": { partition: "aws-cn", domainSuffix: "amazonaws.com.cn" },
+      "us-gov-": { partition: "aws-us-gov", domainSuffix: "amazonaws.com" },
+      "us-iso-": { partition: "aws-iso", domainSuffix: "c2s.ic.gov" },
+      "us-isob-": { partition: "aws-iso-b", domainSuffix: "sc2s.sgov.gov" },
+      "us-isof-": { partition: "aws-iso-f", domainSuffix: "csp.hci.ic.gov" },
+      "eu-isoe-": { partition: "aws-iso-e", domainSuffix: "cloud.adc-e.uk" },
+      "eusc-de-": { partition: "aws-eusc", domainSuffix: "amazonaws.eu" }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/fact.ts
+var CONSTRUCT_ERROR_SYMBOL2, RegionFactError, Fact, FactName;
+var init_fact = __esm({
+  "../../aws-cdk-lib/region-info/lib/fact.ts"() {
+    "use strict";
+    init_aws_entities();
+    CONSTRUCT_ERROR_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SynthesisError");
+    RegionFactError = class _RegionFactError extends Error {
+      constructor(msg) {
+        super(msg);
+        Object.setPrototypeOf(this, _RegionFactError.prototype);
+        Object.defineProperty(this, CONSTRUCT_ERROR_SYMBOL2, { value: true });
+        this.name = "RegionFactError";
+      }
+    };
+    Fact = class {
+      /**
+       * @returns the list of names of AWS Regions for which there is at least one registered fact. This
+       *          includes Regions defined in AWS_REGIONS plus custom defined regions.
+       */
+      static get regions() {
+        return [.../* @__PURE__ */ new Set([...AWS_REGIONS, ...Object.keys(this.database)])];
+      }
+      /**
+       * Returns the list of names of registered facts.
+       *
+       * All facts will be present in at least one region.
+       */
+      static get names() {
+        return [...new Set(Object.values(this.database).flatMap((regionFacts) => Object.keys(regionFacts)))];
+      }
+      /**
+       * Return all pairs of (region, factName) that are defined
+       */
+      static definedFacts() {
+        return Object.entries(this.database).flatMap(([regionName, regionFacts]) => Object.keys(regionFacts).map((factName) => [regionName, factName]));
+      }
+      /**
+       * Retrieves a fact from this Fact database.
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name   the name of the fact being looked up (see the `FactName` class for details)
+       *
+       * @returns the fact value if it is known, and `undefined` otherwise.
+       */
+      static find(region, name) {
+        const regionFacts = this.database[region];
+        return regionFacts && regionFacts[name];
+      }
+      /**
+       * Retrieve a fact from the Fact database. (retrieval will fail if the specified region or
+       * fact name does not exist.)
+       *
+       * @param region the name of the region (e.g: `us-east-1`)
+       * @param name the name of the fact being looked up (see the `FactName` class for details)
+       */
+      static requireFact(region, name) {
+        const foundFact = this.find(region, name);
+        if (!foundFact) {
+          throw new RegionFactError(`No fact ${name} could be found for region: ${region} and name: ${name}.`);
+        }
+        return foundFact;
+      }
+      /**
+       * Registers a new fact in this Fact database.
+       *
+       * @param fact           the new fact to be registered.
+       * @param allowReplacing whether new facts can replace existing facts or not.
+       */
+      static register(fact, allowReplacing = false) {
+        const regionFacts = this.database[fact.region] || (this.database[fact.region] = /* @__PURE__ */ Object.create(null));
+        if (fact.name in regionFacts && regionFacts[fact.name] !== fact.value && !allowReplacing) {
+          throw new RegionFactError(`Region ${fact.region} already has a fact ${fact.name}, with value ${regionFacts[fact.name]}`);
+        }
+        if (fact.value !== void 0) {
+          regionFacts[fact.name] = fact.value;
+        }
+      }
+      /**
+       * Removes a fact from the database.
+       * @param region the region for which the fact is to be removed.
+       * @param name   the name of the fact to remove.
+       * @param value  the value that should be removed (removal will fail if the value is specified, but does not match the
+       *               current stored value).
+       */
+      static unregister(region, name, value) {
+        const regionFacts = this.database[region] || /* @__PURE__ */ Object.create(null);
+        if (name in regionFacts && value && regionFacts[name] !== value) {
+          throw new RegionFactError(`Attempted to remove ${name} from ${region} with value ${value}, but the fact's value is ${regionFacts[name]}`);
+        }
+        delete regionFacts[name];
+      }
+      static database = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      constructor() {
+        throw new Error("Use the static methods of Fact instead!");
+      }
+    };
+    FactName = class {
+      /**
+       * The name of the partition for a region (e.g: 'aws', 'aws-cn', ...)
+       */
+      static PARTITION = "partition";
+      /**
+       * The domain suffix for a region (e.g: 'amazonaws.com`)
+       */
+      static DOMAIN_SUFFIX = "domainSuffix";
+      /**
+       * Whether the AWS::CDK::Metadata CloudFormation Resource is available in-region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static CDK_METADATA_RESOURCE_AVAILABLE = "cdk:metadata-resource:available";
+      /**
+       * Whether the given region is an opt-in region or not. The value is a boolean
+       * modelled as `YES` or `NO`.
+       */
+      static IS_OPT_IN_REGION = "aws:is-opt-in-region";
+      /**
+       * The endpoint used for hosting S3 static websites
+       */
+      static S3_STATIC_WEBSITE_ENDPOINT = "s3-static-website:endpoint";
+      /**
+       * The endpoint used for aliasing S3 static websites in Route 53
+       */
+      static S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID = "s3-static-website:route-53-hosted-zone-id";
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      static EBS_ENV_ENDPOINT_HOSTED_ZONE_ID = "ebs-environment:route-53-hosted-zone-id";
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      static VPC_ENDPOINT_SERVICE_NAME_PREFIX = "vpcEndpointServiceNamePrefix";
+      /**
+       * The account for ELBv2 in this region
+       */
+      static ELBV2_ACCOUNT = "elbv2Account";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS Deep Learning Containers images in a given region.
+       */
+      static DLC_REPOSITORY_ACCOUNT = "dlcRepositoryAccount";
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      static APPMESH_ECR_ACCOUNT = "appMeshRepositoryAccount";
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      static FIREHOSE_CIDR_BLOCK = "firehoseCidrBlock";
+      /**
+       * The SAML Sign On URL for partition used by IAM SAML Principal
+       */
+      static SAML_SIGN_ON_URL = "samlSignOnUrl";
+      /**
+       * The latest Lambda NodeJS runtime available in a given region.
+       */
+      static LATEST_NODE_RUNTIME = "latestNodeRuntime";
+      /**
+       * The ARN of CloudWatch Lambda Insights for a version (e.g. 1.0.98.0)
+       */
+      static cloudwatchLambdaInsightsVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `cloudwatch-lambda-insights-version:${suffix}`;
+      }
+      /**
+       * The ARN of AppConfig Lambda Layer for a given version (e.g. 2.0.181)
+       * @param version The layer version.
+       * @param arch The architecture (optional), defaults to x86_64.
+       */
+      static appConfigLambdaLayerVersion(version3, arch) {
+        const suffix = version3.split(".").join("_") + `_${arch ?? "x86_64"}`;
+        return `appconfig-lambda-layer:${suffix}`;
+      }
+      /**
+       * The name of the regional service principal for a given service.
+       *
+       * @param service the service name, either simple (e.g: `s3`, `codedeploy`) or qualified (e.g: `s3.amazonaws.com`).
+       *                The `.amazonaws.com` and `.amazonaws.com.cn` domains are stripped from service names, so they are
+       *                canonicalized in that respect.
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      static servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The ARN of Amazon Distro for OpenTelemetry (ADOT) Lambda layer for a given lambda type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static adotLambdaLayer(type, version3, architecture) {
+        const suffix = type + "_" + version3.split(".").join("_") + "_" + architecture;
+        return `adot-lambda-layer:${suffix}`;
+      }
+      /**
+       * The ARN of Parameters and Secrets Lambda layer for a given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      static paramsAndSecretsLambdaLayer(version3, architecture) {
+        const suffix = version3.split(".").join("_") + `_${architecture}`;
+        return `params-and-secrets-layer:${suffix}`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/region-info.ts
+var RegionInfo;
+var init_region_info = __esm({
+  "../../aws-cdk-lib/region-info/lib/region-info.ts"() {
+    "use strict";
+    init_aws_entities();
+    init_fact();
+    RegionInfo = class _RegionInfo {
+      constructor(name) {
+        this.name = name;
+      }
+      name;
+      /**
+       * @returns the list of names of AWS regions for which there is at least one registered fact. This
+       *          may not be an exaustive list of all available AWS regions.
+       */
+      static get regions() {
+        return Fact.regions.map((x) => _RegionInfo.get(x));
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions that fact is defined in.
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static regionMap(factName) {
+        const ret = {};
+        for (const regionInfo of _RegionInfo.regions) {
+          const fact = Fact.find(regionInfo.name, factName);
+          if (fact) {
+            ret[regionInfo.name] = fact;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Retrieves a collection of all fact values for all regions, limited to some partitions
+       *
+       * @param factName the name of the fact to retrieve values for.
+       *   For a list of common fact names, see the FactName class
+       * @param partitions list of partitions to retrieve facts for. Defaults
+       *   to `['aws', 'aws-cn']`.
+       * @returns a mapping with AWS region codes as the keys,
+       *   and the fact in the given region as the value for that key
+       */
+      static limitedRegionMap(factName, partitions) {
+        const ret = {};
+        for (const [region, value] of Object.entries(_RegionInfo.regionMap(factName))) {
+          if (partitions.includes(partitionInformation(region).partition)) {
+            ret[region] = value;
+          }
+        }
+        return ret;
+      }
+      /**
+       * Obtain region info for a given region name.
+       *
+       * @param name the name of the region (e.g: us-east-1)
+       */
+      static get(name) {
+        return new _RegionInfo(name);
+      }
+      /**
+       * Whether the `AWS::CDK::Metadata` CloudFormation Resource is available in this region or not.
+       */
+      get cdkMetadataResourceAvailable() {
+        return Fact.find(this.name, FactName.CDK_METADATA_RESOURCE_AVAILABLE) === "YES";
+      }
+      /**
+       * Whether the given region is an opt-in region
+       */
+      get isOptInRegion() {
+        return Fact.find(this.name, FactName.IS_OPT_IN_REGION) === "YES";
+      }
+      /**
+       * The domain name suffix (e.g: amazonaws.com) for this region.
+       */
+      get domainSuffix() {
+        return Fact.find(this.name, FactName.DOMAIN_SUFFIX);
+      }
+      /**
+       * The name of the ARN partition for this region (e.g: aws).
+       */
+      get partition() {
+        return Fact.find(this.name, FactName.PARTITION);
+      }
+      /**
+       * The endpoint used by S3 static website hosting in this region (e.g: s3-static-website-us-east-1.amazonaws.com)
+       */
+      get s3StaticWebsiteEndpoint() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ENDPOINT);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a S3 static website in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get s3StaticWebsiteHostedZoneId() {
+        return Fact.find(this.name, FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID);
+      }
+      /**
+       * The hosted zone ID used by Route 53 to alias a EBS environment endpoint in this region (e.g: Z2O1EMRO9K5GLX)
+       */
+      get ebsEnvEndpointHostedZoneId() {
+        return Fact.find(this.name, FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID);
+      }
+      /**
+       * The prefix for VPC Endpoint Service names,
+       * cn.com.amazonaws.vpce for China regions,
+       * com.amazonaws.vpce otherwise.
+       */
+      get vpcEndpointServiceNamePrefix() {
+        return Fact.find(this.name, FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX);
+      }
+      /**
+       * The name of the service principal for a given service in this region.
+       * @param service the service name (e.g: s3.amazonaws.com)
+       *
+       * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
+       */
+      servicePrincipal(service) {
+        return `${service.replace(/\.amazonaws\.com(\.cn)?$/, "")}.amazonaws.com`;
+      }
+      /**
+       * The account ID for ELBv2 in this region
+       */
+      get elbv2Account() {
+        return Fact.find(this.name, FactName.ELBV2_ACCOUNT);
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository containing the
+       * AWS Deep Learning Containers images in this region.
+       */
+      get dlcRepositoryAccount() {
+        return Fact.find(this.name, FactName.DLC_REPOSITORY_ACCOUNT);
+      }
+      /**
+       * The ARN of the CloudWatch Lambda Insights extension, for the given version.
+       * @param insightsVersion the version (e.g. 1.0.98.0)
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      cloudwatchLambdaInsightsArn(insightsVersion, architecture) {
+        return Fact.find(this.name, FactName.cloudwatchLambdaInsightsVersion(insightsVersion, architecture));
+      }
+      /**
+       * The ARN of the AppConfig Lambda Layer, for the given version.
+       * @param layerVersion The layer version (e.g. 2.0.181)
+       * @param architecture The Lambda Function architecture (e.g. 'x86_64' or 'arm64'), defaults to x86_64
+       */
+      appConfigLambdaArn(layerVersion, architecture) {
+        return Fact.find(this.name, FactName.appConfigLambdaLayerVersion(layerVersion, architecture));
+      }
+      /**
+       * The ID of the AWS account that owns the public ECR repository that contains the
+       * AWS App Mesh Envoy Proxy images in a given region.
+       */
+      get appMeshRepositoryAccount() {
+        return Fact.find(this.name, FactName.APPMESH_ECR_ACCOUNT);
+      }
+      /**
+       * The CIDR block used by Amazon Data Firehose servers.
+       */
+      get firehoseCidrBlock() {
+        return Fact.find(this.name, FactName.FIREHOSE_CIDR_BLOCK);
+      }
+      /**
+       * The ARN of the ADOT Lambda layer, for the given layer type, version and architecture.
+       *
+       * @param type the type of the ADOT lambda layer
+       * @param version the layer version.
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      adotLambdaLayerArn(type, version3, architecture) {
+        return Fact.find(this.name, FactName.adotLambdaLayer(type, version3, architecture));
+      }
+      /**
+       * The ARN of the Parameters and Secrets Lambda layer for the given lambda architecture.
+       *
+       * @param version the layer version
+       * @param architecture the Lambda Function architecture (e.g. 'x86_64' or 'arm64')
+       */
+      paramsAndSecretsLambdaLayerArn(version3, architecture) {
+        return Fact.find(this.name, FactName.paramsAndSecretsLambdaLayer(version3, architecture));
+      }
+      /**
+       * SAML Sign On URL used by IAM SAML Principals.
+       */
+      get samlSignOnUrl() {
+        return Fact.find(this.name, FactName.SAML_SIGN_ON_URL);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/built-ins.generated.ts
+var BuiltIns;
+var init_built_ins_generated = __esm({
+  "../../aws-cdk-lib/region-info/lib/built-ins.generated.ts"() {
+    "use strict";
+    init_fact();
+    BuiltIns = class {
+      /**
+       * Registers all the built in regional data in the RegionInfo database.
+       */
+      static register() {
+        Fact.register({ region: "af-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "af-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.af-south-1.amazonaws.com" });
+        Fact.register({ region: "af-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11KHD8FBVPUYU" });
+        Fact.register({ region: "af-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1EI3BVKMKK4AM" });
+        Fact.register({ region: "af-south-1", name: FactName.ELBV2_ACCOUNT, value: "098369216593" });
+        Fact.register({ region: "af-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "924023996002" });
+        Fact.register({ region: "af-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "af-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "af-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.244.121.224/27" });
+        Fact.register({ region: "af-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:456" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:af-south-1:012438385374:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "af-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:af-south-1:574348263942:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:af-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "af-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:af-south-1:317013901791:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-1.amazonaws.com" });
+        Fact.register({ region: "ap-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "ZNB98KWMFR0R6" });
+        Fact.register({ region: "ap-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZPWYUBWRU171A" });
+        Fact.register({ region: "ap-east-1", name: FactName.ELBV2_ACCOUNT, value: "754344448648" });
+        Fact.register({ region: "ap-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "871362719292" });
+        Fact.register({ region: "ap-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "856666278305" });
+        Fact.register({ region: "ap-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.162.221.32/27" });
+        Fact.register({ region: "ap-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:519774774795:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-east-1:630222743974:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-east-1:768336418462:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-east-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-east-2.amazonaws.com" });
+        Fact.register({ region: "ap-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z064739330DAH7WJVOO93" });
+        Fact.register({ region: "ap-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-east-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "975050140332" });
+        Fact.register({ region: "ap-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "058264503299" });
+        Fact.register({ region: "ap-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.212.53.160/27" });
+        Fact.register({ region: "ap-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-east-2:145023102084:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-northeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2M4EHUR26P7ZW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.ELBV2_ACCOUNT, value: "582318560864" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.113.196.224/27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:87" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:34" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:83" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:33" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:31" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:80" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:30" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:79" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:29" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:78" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:27" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:76" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:72" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:37" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:35" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:62" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-1:133490724326:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3W03O7B5YMIYP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z3JE5OI70TWKCP" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.ELBV2_ACCOUNT, value: "600734575887" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.209.1.64/27" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:826293736237:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-northeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-northeast-2:738900069198:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-northeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2YQB5RD63NC85" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZNE5GEY1TIAGY" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.ELBV2_ACCOUNT, value: "383597477331" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.208.177.192/27" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:15" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:13" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:194566237122:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:84" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:706869817123:layer:AWS-AppConfig-Extension:42" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-northeast-3:576959938190:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-northeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-1.amazonaws.com" });
+        Fact.register({ region: "ap-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z11RGJOFQNVJUP" });
+        Fact.register({ region: "ap-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z18NTBI3Y7N9TZ" });
+        Fact.register({ region: "ap-south-1", name: FactName.ELBV2_ACCOUNT, value: "718504428378" });
+        Fact.register({ region: "ap-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.232.67.32/27" });
+        Fact.register({ region: "ap-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:58" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:94" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:92" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension:55" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-south-1:176022468876:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-south-2.amazonaws.com" });
+        Fact.register({ region: "ap-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z02976202B4EZMXIPMXF7" });
+        Fact.register({ region: "ap-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10223522IBWPBF2C2FJS" });
+        Fact.register({ region: "ap-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "772153158452" });
+        Fact.register({ region: "ap-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.60.192.128/27" });
+        Fact.register({ region: "ap-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:34" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:22" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:891564319516:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-south-2:489524808438:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-south-2:070087711984:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "ap-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-1.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3O0J2DXBE1FTB" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z16FZ9L249IFLT" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.ELBV2_ACCOUNT, value: "114774131450" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.228.64.192/27" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:41" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-1:044395824272:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-ap-southeast-2.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1WCIGYICN2BYD" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2PCDNR3VC2G1N" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.ELBV2_ACCOUNT, value: "783225319266" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.210.67.224/27" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ap-southeast-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-2:665172237481:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-3.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z01846753K324LI26A3VV" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z05913172VM7EAZB40TA8" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.ELBV2_ACCOUNT, value: "589379963580" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "907027046896" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "909464085924" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "108.136.221.64/27" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:439286490199:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:64" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:37" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:24" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:418787028745:layer:AWS-AppConfig-Extension:13" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ap-southeast-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ap-southeast-3:490737872127:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-4.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0312387243XT5FE14WFO" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z0666869LC74UHAO5YE4" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "457447274322" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.50.161.128/27" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ap-southeast-4:605207715842:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:158895979263:layer:LambdaInsightsExtension:5" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ap-southeast-4:307021474294:layer:AWS-AppConfig-Extension:2" });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-4", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-5.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z08660063OXLMA7F1FJHU" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01812971H0QCYWSL7WOH" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.216.58.0/27" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-5:590183865173:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-5", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-6.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z01144401H1NECCLJDD4D" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "633930458069" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.APPMESH_ECR_ACCOUNT, value: "637423513210" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-6:727646510379:layer:LambdaInsightsExtension:1" });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-6", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ap-southeast-7.amazonaws.com" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0031014GXUMRZG6I14G" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1R25G3KIG2GBW" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.FIREHOSE_CIDR_BLOCK, value: "43.208.112.96/27" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ap-southeast-7:761018874580:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ap-southeast-7", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-central-1.amazonaws.com" });
+        Fact.register({ region: "ca-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1QDHH18159H29" });
+        Fact.register({ region: "ca-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "ZJFCZL7SSZB5I" });
+        Fact.register({ region: "ca-central-1", name: FactName.ELBV2_ACCOUNT, value: "985666609251" });
+        Fact.register({ region: "ca-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "ca-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "ca-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.183.92.128/27" });
+        Fact.register({ region: "ca-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "ca-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:ca-central-1:039592058896:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:ca-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "ca-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:ca-central-1:200266452380:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "ca-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "ca-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.ca-west-1.amazonaws.com" });
+        Fact.register({ region: "ca-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03565811Z33SLEZTHOUL" });
+        Fact.register({ region: "ca-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1021028356Y0CYS11DQI" });
+        Fact.register({ region: "ca-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "ca-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "ca-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "40.176.98.192/27" });
+        Fact.register({ region: "ca-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:ca-west-1:761377655185:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:15" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:ca-west-1:946466191631:layer:LambdaInsightsExtension:4" });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "ca-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-north-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z5CN8UMXT92WN" });
+        Fact.register({ region: "cn-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-north-1", name: FactName.ELBV2_ACCOUNT, value: "638102146993" });
+        Fact.register({ region: "cn-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919366029133" });
+        Fact.register({ region: "cn-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.81.151.32/27" });
+        Fact.register({ region: "cn-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:615057806174:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-north-1:287114880934:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.PARTITION, value: "aws-cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.cn-northwest-1.amazonaws.com.cn" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z282HJ1KT0DH03" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.ELBV2_ACCOUNT, value: "037604701340" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "727897471807" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "919830735681" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws.cn/saml" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "161.189.23.64/27" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "cn.com.amazonaws.vpce" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:41" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:39" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:488211338238:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:66" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:52" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:45" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:615084187847:layer:AWS-AppConfig-Extension:43" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws-cn:lambda:cn-northwest-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-cn:lambda:cn-northwest-1:287310001119:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "cn-northwest-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-1.amazonaws.com" });
+        Fact.register({ region: "eu-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z21DNDUVLTQW6Q" });
+        Fact.register({ region: "eu-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1FRNW7UH4DEZJ" });
+        Fact.register({ region: "eu-central-1", name: FactName.ELBV2_ACCOUNT, value: "054676820928" });
+        Fact.register({ region: "eu-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.158.127.160/27" });
+        Fact.register({ region: "eu-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:36" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:34" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:91" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:13" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:70" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:58" });
+        Fact.register({ region: "eu-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-central-1:187925254637:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-central-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-central-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-central-2.amazonaws.com" });
+        Fact.register({ region: "eu-central-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z030506016YDQGETNASS" });
+        Fact.register({ region: "eu-central-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z00227012FSHBMZNNSJJI" });
+        Fact.register({ region: "eu-central-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "380420809688" });
+        Fact.register({ region: "eu-central-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-central-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-central-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "16.62.183.32/27" });
+        Fact.register({ region: "eu-central-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:033019950311:layer:LambdaInsightsExtension:7" });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:32" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-central-2:758369105281:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-central-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-central-2:772501565639:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-central-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.PARTITION, value: "aws-iso-e" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DOMAIN_SUFFIX, value: "cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-isoe-west-1.cloud.adc-e.uk" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "uk.adc-e.cloud.vpce" });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-isoe-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-north-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-north-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-north-1.amazonaws.com" });
+        Fact.register({ region: "eu-north-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BAZG2TWCNX0D" });
+        Fact.register({ region: "eu-north-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-north-1", name: FactName.ELBV2_ACCOUNT, value: "897822967062" });
+        Fact.register({ region: "eu-north-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-north-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-north-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-north-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-north-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.53.63.224/27" });
+        Fact.register({ region: "eu-north-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:57" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-north-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:142" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:139" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:111" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:98" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:97" });
+        Fact.register({ region: "eu-north-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-north-1:646970417810:layer:AWS-AppConfig-Extension:86" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-north-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-north-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-north-1:427196147048:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-1.amazonaws.com" });
+        Fact.register({ region: "eu-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3IXVV8C73GIO3" });
+        Fact.register({ region: "eu-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10VDYYOA2JFKM" });
+        Fact.register({ region: "eu-south-1", name: FactName.ELBV2_ACCOUNT, value: "635631232127" });
+        Fact.register({ region: "eu-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "692866216735" });
+        Fact.register({ region: "eu-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "422531588944" });
+        Fact.register({ region: "eu-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.161.135.128/27" });
+        Fact.register({ region: "eu-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:339249233099:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "eu-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-south-1:203683718741:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-south-1:325218067255:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-south-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-south-2.amazonaws.com" });
+        Fact.register({ region: "eu-south-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z0081959F7139GRJC19J" });
+        Fact.register({ region: "eu-south-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z23GO28BZ5AETM" });
+        Fact.register({ region: "eu-south-2", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "503227376785" });
+        Fact.register({ region: "eu-south-2", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-south-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-south-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.100.71.96/27" });
+        Fact.register({ region: "eu-south-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:36" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:31" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:8" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:4" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:352183217350:layer:LambdaInsightsExtension:10" });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-south-2:586093569114:layer:AWS-AppConfig-Extension:26" });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-south-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-south-2:524103009944:layer:AWS-Parameters-and-Secrets-Lambda-Extension:1" });
+        Fact.register({ region: "eu-south-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-eu-west-1.amazonaws.com" });
+        Fact.register({ region: "eu-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1BKCTXD74EZPE" });
+        Fact.register({ region: "eu-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2NYPWQ7DFZAZH" });
+        Fact.register({ region: "eu-west-1", name: FactName.ELBV2_ACCOUNT, value: "156460612806" });
+        Fact.register({ region: "eu-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.19.239.192/27" });
+        Fact.register({ region: "eu-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:108" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:20" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:7" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:6" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "eu-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-1:015030872274:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-2.amazonaws.com" });
+        Fact.register({ region: "eu-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3GKZC51ZF0DB4" });
+        Fact.register({ region: "eu-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1GKAAAUGATPF1" });
+        Fact.register({ region: "eu-west-2", name: FactName.ELBV2_ACCOUNT, value: "652711504416" });
+        Fact.register({ region: "eu-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.130.1.96/27" });
+        Fact.register({ region: "eu-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "eu-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-2:133256977650:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "eu-west-3", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "eu-west-3", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eu-west-3.amazonaws.com" });
+        Fact.register({ region: "eu-west-3", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3R1K369G5AVDG" });
+        Fact.register({ region: "eu-west-3", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z5WN6GAYWG5OB" });
+        Fact.register({ region: "eu-west-3", name: FactName.ELBV2_ACCOUNT, value: "009996457667" });
+        Fact.register({ region: "eu-west-3", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "eu-west-3", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "eu-west-3", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "eu-west-3", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eu-west-3", name: FactName.FIREHOSE_CIDR_BLOCK, value: "35.180.1.96/27" });
+        Fact.register({ region: "eu-west-3", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "eu-west-3", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:80" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:60" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:51" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "eu-west-3", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:eu-west-3:493207061005:layer:AWS-AppConfig-Extension:48" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:eu-west-3:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "eu-west-3", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:eu-west-3:780235371811:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.PARTITION, value: "aws-eusc" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.eusc-de-east-1.amazonaws.eu" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "204133271717" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "eu.amazonaws.vpce" });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "eusc-de-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "il-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.il-central-1.amazonaws.com" });
+        Fact.register({ region: "il-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z09640613K4A3MN55U7GU" });
+        Fact.register({ region: "il-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z02941091PERNCB1MI5H7" });
+        Fact.register({ region: "il-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "564877687649" });
+        Fact.register({ region: "il-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "il-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "il-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "51.16.102.0/27" });
+        Fact.register({ region: "il-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:il-central-1:066549572091:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:17" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:il-central-1:459530977127:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "il-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-central-1.amazonaws.com" });
+        Fact.register({ region: "me-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z06143092I8HRXZRUZROF" });
+        Fact.register({ region: "me-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "me-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "914824155844" });
+        Fact.register({ region: "me-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-central-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "3.28.159.32/27" });
+        Fact.register({ region: "me-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:30" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:29" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:27" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:26" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-central-1:732604637566:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:34" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-central-1:662846165436:layer:AWS-AppConfig-Extension:31" });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:me-central-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-central-1:858974508948:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "me-south-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.me-south-1.amazonaws.com" });
+        Fact.register({ region: "me-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z1MPMWCPA7YB62" });
+        Fact.register({ region: "me-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z2BBTEKR2I36N2" });
+        Fact.register({ region: "me-south-1", name: FactName.ELBV2_ACCOUNT, value: "076674570225" });
+        Fact.register({ region: "me-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "217643126080" });
+        Fact.register({ region: "me-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "772975370895" });
+        Fact.register({ region: "me-south-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "me-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "me-south-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "15.185.91.0/27" });
+        Fact.register({ region: "me-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:43" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:42" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:40" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:28" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:25" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:13" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:9" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:me-south-1:285320876703:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:73" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:71" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:54" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "me-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:me-south-1:559955524753:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:me-south-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "me-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:me-south-1:832021897121:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "mx-central-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "mx-central-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "mx-central-1", name: FactName.IS_OPT_IN_REGION, value: "YES" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.mx-central-1.amazonaws.com" });
+        Fact.register({ region: "mx-central-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "mx-central-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "mx-central-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "mx-central-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:8" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:mx-central-1:879381266642:layer:LambdaInsightsExtension:3" });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "mx-central-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "sa-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "sa-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-sa-east-1.amazonaws.com" });
+        Fact.register({ region: "sa-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z7KQH4QJS55SO" });
+        Fact.register({ region: "sa-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z10X7K2B4QSOFV" });
+        Fact.register({ region: "sa-east-1", name: FactName.ELBV2_ACCOUNT, value: "507241528517" });
+        Fact.register({ region: "sa-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "sa-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "sa-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "sa-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "sa-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.228.1.128/27" });
+        Fact.register({ region: "sa-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:59" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:54" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:50" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:48" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:10" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:44" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:37" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:32" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "sa-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "sa-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:sa-east-1:000010852771:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:sa-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "sa-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:sa-east-1:933737806257:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-east-1.amazonaws.com" });
+        Fact.register({ region: "us-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3AQBSTGFYJSTF" });
+        Fact.register({ region: "us-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z117KPS5GTRQ2G" });
+        Fact.register({ region: "us-east-1", name: FactName.ELBV2_ACCOUNT, value: "127311923021" });
+        Fact.register({ region: "us-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.70.63.192/27" });
+        Fact.register({ region: "us-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:35" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:46" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:113" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:43" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:110" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:15" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:82" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:69" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:68" });
+        Fact.register({ region: "us-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-1:177933569100:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-east-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-east-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-east-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-east-2.amazonaws.com" });
+        Fact.register({ region: "us-east-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2O1EMRO9K5GLX" });
+        Fact.register({ region: "us-east-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z14LCN19Q5QHIC" });
+        Fact.register({ region: "us-east-2", name: FactName.ELBV2_ACCOUNT, value: "033677994240" });
+        Fact.register({ region: "us-east-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-east-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-east-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-east-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-east-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.58.135.96/27" });
+        Fact.register({ region: "us-east-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:24" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:7" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-east-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-east-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:33" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:81" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:31" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:79" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:11" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:59" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:50" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:49" });
+        Fact.register({ region: "us-east-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension:47" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-east-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-east-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-gov-east-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2NIFVYYW2VKV1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z35TSARG0EJ4VU" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.ELBV2_ACCOUNT, value: "190560391635" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "18.253.138.96/27" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:122132214140:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:946561847325:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-east-1:129776340158:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.PARTITION, value: "aws-us-gov" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-gov-west-1.amazonaws.com" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z31GFT0UA1I2HV" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z4KAURWC4UUUG" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.ELBV2_ACCOUNT, value: "048591011584" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.amazonaws-us-gov.com/saml" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.61.204.160/27" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:198461476570:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:6" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:24" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:751350123760:layer:LambdaInsightsExtension:19" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:46" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:44" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:29" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:23" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:22" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:946746059096:layer:AWS-AppConfig-Extension:20" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws-us-gov:lambda:us-gov-west-1:127562683043:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-gov-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-east-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.ELBV2_ACCOUNT, value: "770363063475" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.PARTITION, value: "aws-iso" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DOMAIN_SUFFIX, value: "c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-iso-west-1.c2s.ic.gov" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.ELBV2_ACCOUNT, value: "121062877647" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.c2shome.ic.gov/saml" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.c2s.vpce" });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-iso-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-east-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.ELBV2_ACCOUNT, value: "740734521339" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.PARTITION, value: "aws-iso-b" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DOMAIN_SUFFIX, value: "sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isob-west-1.sc2s.sgov.gov" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.ELBV2_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.sc2shome.sgov.gov/saml" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.sgov.sc2s.vpce" });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isob-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-east-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03373031FTGQH4MNG6ST" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.ELBV2_ACCOUNT, value: "091100254016" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "303241398832" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-east-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.PARTITION, value: "aws-iso-f" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DOMAIN_SUFFIX, value: "csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website.us-isof-south-1.csp.hci.ic.gov" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z03376072I8GXC2DXUFXI" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.ELBV2_ACCOUNT, value: "412137745753" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "454834333376" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.APPMESH_ECR_ACCOUNT, value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.SAML_SIGN_ON_URL, value: "" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "gov.ic.hci.csp.vpce" });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: void 0 });
+        Fact.register({ region: "us-isof-south-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-1", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-1", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-1.amazonaws.com" });
+        Fact.register({ region: "us-west-1", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z2F56UZL2M1ACD" });
+        Fact.register({ region: "us-west-1", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z1LQECGX5PH1X" });
+        Fact.register({ region: "us-west-1", name: FactName.ELBV2_ACCOUNT, value: "027434742980" });
+        Fact.register({ region: "us-west-1", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-1", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-1", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-1", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-1", name: FactName.FIREHOSE_CIDR_BLOCK, value: "13.57.135.192/27" });
+        Fact.register({ region: "us-west-1", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:21" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:17" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:9" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension-Arm64:3" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:20" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-1", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-1:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:124" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:121" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:93" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:78" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: void 0 });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:77" });
+        Fact.register({ region: "us-west-1", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-1:958113053741:layer:AWS-AppConfig-Extension:61" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-1:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-1", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-1:997803712105:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.PARTITION, value: "aws" });
+        Fact.register({ region: "us-west-2", name: FactName.DOMAIN_SUFFIX, value: "amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.CDK_METADATA_RESOURCE_AVAILABLE, value: "YES" });
+        Fact.register({ region: "us-west-2", name: FactName.IS_OPT_IN_REGION, value: "NO" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ENDPOINT, value: "s3-website-us-west-2.amazonaws.com" });
+        Fact.register({ region: "us-west-2", name: FactName.S3_STATIC_WEBSITE_ZONE_53_HOSTED_ZONE_ID, value: "Z3BJ6K6RIION7M" });
+        Fact.register({ region: "us-west-2", name: FactName.EBS_ENV_ENDPOINT_HOSTED_ZONE_ID, value: "Z38NKT9BP95V3O" });
+        Fact.register({ region: "us-west-2", name: FactName.ELBV2_ACCOUNT, value: "797873946194" });
+        Fact.register({ region: "us-west-2", name: FactName.DLC_REPOSITORY_ACCOUNT, value: "763104351884" });
+        Fact.register({ region: "us-west-2", name: FactName.APPMESH_ECR_ACCOUNT, value: "840364872350" });
+        Fact.register({ region: "us-west-2", name: FactName.SAML_SIGN_ON_URL, value: "https://signin.aws.amazon.com/saml" });
+        Fact.register({ region: "us-west-2", name: FactName.LATEST_NODE_RUNTIME, value: "nodejs24.x" });
+        Fact.register({ region: "us-west-2", name: FactName.FIREHOSE_CIDR_BLOCK, value: "52.89.255.224/27" });
+        Fact.register({ region: "us-west-2", name: FactName.VPC_ENDPOINT_SERVICE_NAME_PREFIX, value: "com.amazonaws.vpce" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:25" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.498.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:60" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:23" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.404.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:56" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:22" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.391.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:55" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:20" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.333.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:53" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:19" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.317.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:52" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.295.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:51" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.275.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:49" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.273.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:45" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:5" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.229.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:38" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.178.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:33" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.143.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:21" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.135.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:18" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "arm64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension-Arm64:1" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.119.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:16" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:14" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.89.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:12" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.86.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:11" });
+        Fact.register({ region: "us-west-2", name: FactName.cloudwatchLambdaInsightsVersion("1.0.54.0", "x86_64"), value: "arn:aws:lambda:us-west-2:580247275435:layer:LambdaInsightsExtension:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:48" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.181", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:146" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:45" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.165", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:143" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:16" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.122", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:114" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:3" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.58", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:101" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "arm64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:2" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.45", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:100" });
+        Fact.register({ region: "us-west-2", name: FactName.appConfigLambdaLayerVersion("2.0.30", "x86_64"), value: "arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension:89" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-wrapper-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.32.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-32-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.31.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-31-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-30-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.28.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-28-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.26.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-26-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.23.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-23-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-amd64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVA_AUTO_INSTRUMENTATION", "1.19.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-java-agent-arm64-ver-1-19-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.30.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.18.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-18-1:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.17.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-17-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-15-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-13-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.12.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-12-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.9.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-9-1:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.8.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-8-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-amd64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("JAVASCRIPT_SDK", "1.7.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-nodejs-arm64-ver-1-7-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.29.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-29-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.25.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-25-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.24.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-24-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.21.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-21-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:3" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.20.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-20-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0-1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.19.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-19-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.18.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-18-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.17.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-17-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.16.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-16-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.15.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-15-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-amd64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("PYTHON_SDK", "1.13.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-python-arm64-ver-1-13-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.115.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-115-0:2" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.102.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-102-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.98.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-98-0:5" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.90.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-90-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.88.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-88-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.84.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-84-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.82.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-82-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.80.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-80-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.78.2", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-78-2:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.74.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-74-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.72.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-72-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.70.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-70-0:4" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.68.0", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-68-0:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "x86_64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-amd64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.adotLambdaLayer("GENERIC", "0.62.1", "arm64"), value: "arn:aws:lambda:us-west-2:901920570463:layer:aws-otel-collector-arm64-ver-0-62-1:1" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "x86_64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4" });
+        Fact.register({ region: "us-west-2", name: FactName.paramsAndSecretsLambdaLayer("1.0.103", "arm64"), value: "arn:aws:lambda:us-west-2:345057560386:layer:AWS-Parameters-and-Secrets-Lambda-Extension-Arm64:4" });
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/region-info/lib/index.ts
+var init_lib2 = __esm({
+  "../../aws-cdk-lib/region-info/lib/index.ts"() {
+    "use strict";
+    init_default();
+    init_fact();
+    init_region_info();
+    init_built_ins_generated();
+    BuiltIns.register();
+  }
+});
+
+// ../../aws-cdk-lib/region-info/index.ts
+var init_region_info2 = __esm({
+  "../../aws-cdk-lib/region-info/index.ts"() {
+    "use strict";
+    init_lib2();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts
+function determineLatestNodeRuntimeName(scope) {
+  return stackOf(scope).regionalFact(FactName.LATEST_NODE_RUNTIME, "nodejs24.x");
+}
+var init_custom_resource_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/custom-resource-provider.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_region_info2();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts
+var init_custom_resource_provider2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/index.ts"() {
+    "use strict";
+    init_custom_resource_provider_base();
+    init_custom_resource_provider();
+    init_shared();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts
+var path9, CfnUtilsProvider;
+var init_cfn_utils_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cfn-utils-provider.generated.ts"() {
+    "use strict";
+    path9 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CfnUtilsProvider = class _CfnUtilsProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CfnUtilsProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path9.join(__dirname, "cfn-utils-provider"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts
+var import_constructs9, CfnUtilsProvider2, CfnUtils;
+var init_cfn_utils_provider = __esm({
+  "../../aws-cdk-lib/core/lib/private/cfn-utils-provider.ts"() {
+    "use strict";
+    import_constructs9 = __toESM(require_lib4());
+    init_custom_resource();
+    init_consts();
+    init_cfn_utils_provider_generated();
+    CfnUtilsProvider2 = class extends import_constructs9.Construct {
+      static getOrCreate(scope) {
+        return CfnUtilsProvider.getOrCreate(scope, "AWSCDKCfnUtilsProvider");
+      }
+    };
+    CfnUtils = class {
+      /**
+       * Encode a structure to JSON at CloudFormation deployment time
+       *
+       * This would have been suitable for the JSON-encoding of arbitrary structures, however:
+       *
+       * - It uses a custom resource to do the encoding, and we'd rather not use a custom
+       *   resource if we can avoid it.
+       * - It cannot be used to encode objects where the keys of the objects can contain
+       *   tokens--because those cannot be represented in the JSON encoding that CloudFormation
+       *   templates use.
+       *
+       * This helper is used by `CloudFormationLang.toJSON()` if and only if it encounters
+       * objects that cannot be stringified any other way.
+       */
+      static stringify(scope, id, value) {
+        const resource = new CustomResource(scope, id, {
+          serviceToken: CfnUtilsProvider2.getOrCreate(scope),
+          resourceType: "Custom::AWSCDKCfnJsonStringify" /* CFN_JSON_STRINGIFY */,
+          properties: {
+            Value: value
+          }
+        });
+        return resource.getAttString("Value");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js
+var require_PlainValue_516d5bc2 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/PlainValue-516d5bc2.js"(exports2) {
+    "use strict";
+    var Char = {
+      ANCHOR: "&",
+      COMMENT: "#",
+      TAG: "!",
+      DIRECTIVES_END: "-",
+      DOCUMENT_END: "."
+    };
+    var Type = {
+      ALIAS: "ALIAS",
+      BLANK_LINE: "BLANK_LINE",
+      BLOCK_FOLDED: "BLOCK_FOLDED",
+      BLOCK_LITERAL: "BLOCK_LITERAL",
+      COMMENT: "COMMENT",
+      DIRECTIVE: "DIRECTIVE",
+      DOCUMENT: "DOCUMENT",
+      FLOW_MAP: "FLOW_MAP",
+      FLOW_SEQ: "FLOW_SEQ",
+      MAP: "MAP",
+      MAP_KEY: "MAP_KEY",
+      MAP_VALUE: "MAP_VALUE",
+      PLAIN: "PLAIN",
+      QUOTE_DOUBLE: "QUOTE_DOUBLE",
+      QUOTE_SINGLE: "QUOTE_SINGLE",
+      SEQ: "SEQ",
+      SEQ_ITEM: "SEQ_ITEM"
+    };
+    var defaultTagPrefix = "tag:yaml.org,2002:";
+    var defaultTags = {
+      MAP: "tag:yaml.org,2002:map",
+      SEQ: "tag:yaml.org,2002:seq",
+      STR: "tag:yaml.org,2002:str"
+    };
+    function findLineStarts(src) {
+      const ls = [0];
+      let offset = src.indexOf("\n");
+      while (offset !== -1) {
+        offset += 1;
+        ls.push(offset);
+        offset = src.indexOf("\n", offset);
+      }
+      return ls;
+    }
+    function getSrcInfo(cst) {
+      let lineStarts, src;
+      if (typeof cst === "string") {
+        lineStarts = findLineStarts(cst);
+        src = cst;
+      } else {
+        if (Array.isArray(cst)) cst = cst[0];
+        if (cst && cst.context) {
+          if (!cst.lineStarts) cst.lineStarts = findLineStarts(cst.context.src);
+          lineStarts = cst.lineStarts;
+          src = cst.context.src;
+        }
+      }
+      return {
+        lineStarts,
+        src
+      };
+    }
+    function getLinePos(offset, cst) {
+      if (typeof offset !== "number" || offset < 0) return null;
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !src || offset > src.length) return null;
+      for (let i = 0; i < lineStarts.length; ++i) {
+        const start = lineStarts[i];
+        if (offset < start) {
+          return {
+            line: i,
+            col: offset - lineStarts[i - 1] + 1
+          };
+        }
+        if (offset === start) return {
+          line: i + 1,
+          col: 1
+        };
+      }
+      const line = lineStarts.length;
+      return {
+        line,
+        col: offset - lineStarts[line - 1] + 1
+      };
+    }
+    function getLine(line, cst) {
+      const {
+        lineStarts,
+        src
+      } = getSrcInfo(cst);
+      if (!lineStarts || !(line >= 1) || line > lineStarts.length) return null;
+      const start = lineStarts[line - 1];
+      let end = lineStarts[line];
+      while (end && end > start && src[end - 1] === "\n") --end;
+      return src.slice(start, end);
+    }
+    function getPrettyContext({
+      start,
+      end
+    }, cst, maxWidth = 80) {
+      let src = getLine(start.line, cst);
+      if (!src) return null;
+      let {
+        col
+      } = start;
+      if (src.length > maxWidth) {
+        if (col <= maxWidth - 10) {
+          src = src.substr(0, maxWidth - 1) + "\u2026";
+        } else {
+          const halfWidth = Math.round(maxWidth / 2);
+          if (src.length > col + halfWidth) src = src.substr(0, col + halfWidth - 1) + "\u2026";
+          col -= src.length - maxWidth;
+          src = "\u2026" + src.substr(1 - maxWidth);
+        }
+      }
+      let errLen = 1;
+      let errEnd = "";
+      if (end) {
+        if (end.line === start.line && col + (end.col - start.col) <= maxWidth + 1) {
+          errLen = end.col - start.col;
+        } else {
+          errLen = Math.min(src.length + 1, maxWidth) - col;
+          errEnd = "\u2026";
+        }
+      }
+      const offset = col > 1 ? " ".repeat(col - 1) : "";
+      const err = "^".repeat(errLen);
+      return `${src}
+${offset}${err}${errEnd}`;
+    }
+    var Range = class _Range {
+      static copy(orig) {
+        return new _Range(orig.start, orig.end);
+      }
+      constructor(start, end) {
+        this.start = start;
+        this.end = end || start;
+      }
+      isEmpty() {
+        return typeof this.start !== "number" || !this.end || this.end <= this.start;
+      }
+      /**
+       * Set `origStart` and `origEnd` to point to the original source range for
+       * this node, which may differ due to dropped CR characters.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRange(cr, offset) {
+        const {
+          start,
+          end
+        } = this;
+        if (cr.length === 0 || end <= cr[0]) {
+          this.origStart = start;
+          this.origEnd = end;
+          return offset;
+        }
+        let i = offset;
+        while (i < cr.length) {
+          if (cr[i] > start) break;
+          else ++i;
+        }
+        this.origStart = start + i;
+        const nextOffset = i;
+        while (i < cr.length) {
+          if (cr[i] >= end) break;
+          else ++i;
+        }
+        this.origEnd = end + i;
+        return nextOffset;
+      }
+    };
+    var Node11 = class _Node {
+      static addStringTerminator(src, offset, str) {
+        if (str[str.length - 1] === "\n") return str;
+        const next = _Node.endOfWhiteSpace(src, offset);
+        return next >= src.length || src[next] === "\n" ? str + "\n" : str;
+      }
+      // ^(---|...)
+      static atDocumentBoundary(src, offset, sep3) {
+        const ch0 = src[offset];
+        if (!ch0) return true;
+        const prev = src[offset - 1];
+        if (prev && prev !== "\n") return false;
+        if (sep3) {
+          if (ch0 !== sep3) return false;
+        } else {
+          if (ch0 !== Char.DIRECTIVES_END && ch0 !== Char.DOCUMENT_END) return false;
+        }
+        const ch1 = src[offset + 1];
+        const ch2 = src[offset + 2];
+        if (ch1 !== ch0 || ch2 !== ch0) return false;
+        const ch3 = src[offset + 3];
+        return !ch3 || ch3 === "\n" || ch3 === "	" || ch3 === " ";
+      }
+      static endOfIdentifier(src, offset) {
+        let ch = src[offset];
+        const isVerbatim = ch === "<";
+        const notOk = isVerbatim ? ["\n", "	", " ", ">"] : ["\n", "	", " ", "[", "]", "{", "}", ","];
+        while (ch && notOk.indexOf(ch) === -1) ch = src[offset += 1];
+        if (isVerbatim && ch === ">") offset += 1;
+        return offset;
+      }
+      static endOfIndent(src, offset) {
+        let ch = src[offset];
+        while (ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfLine(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== "\n") ch = src[offset += 1];
+        return offset;
+      }
+      static endOfWhiteSpace(src, offset) {
+        let ch = src[offset];
+        while (ch === "	" || ch === " ") ch = src[offset += 1];
+        return offset;
+      }
+      static startOfLine(src, offset) {
+        let ch = src[offset - 1];
+        if (ch === "\n") return offset;
+        while (ch && ch !== "\n") ch = src[offset -= 1];
+        return offset + 1;
+      }
+      /**
+       * End of indentation, or null if the line's indent level is not more
+       * than `indent`
+       *
+       * @param {string} src
+       * @param {number} indent
+       * @param {number} lineStart
+       * @returns {?number}
+       */
+      static endOfBlockIndent(src, indent, lineStart) {
+        const inEnd = _Node.endOfIndent(src, lineStart);
+        if (inEnd > lineStart + indent) {
+          return inEnd;
+        } else {
+          const wsEnd = _Node.endOfWhiteSpace(src, inEnd);
+          const ch = src[wsEnd];
+          if (!ch || ch === "\n") return wsEnd;
+        }
+        return null;
+      }
+      static atBlank(src, offset, endAsBlank) {
+        const ch = src[offset];
+        return ch === "\n" || ch === "	" || ch === " " || endAsBlank && !ch;
+      }
+      static nextNodeIsIndented(ch, indentDiff, indicatorAsIndent) {
+        if (!ch || indentDiff < 0) return false;
+        if (indentDiff > 0) return true;
+        return indicatorAsIndent && ch === "-";
+      }
+      // should be at line or string end, or at next non-whitespace char
+      static normalizeOffset(src, offset) {
+        const ch = src[offset];
+        return !ch ? offset : ch !== "\n" && src[offset - 1] === "\n" ? offset - 1 : _Node.endOfWhiteSpace(src, offset);
+      }
+      // fold single newline into space, multiple newlines to N - 1 newlines
+      // presumes src[offset] === '\n'
+      static foldNewline(src, offset, indent) {
+        let inCount = 0;
+        let error = false;
+        let fold = "";
+        let ch = src[offset + 1];
+        while (ch === " " || ch === "	" || ch === "\n") {
+          switch (ch) {
+            case "\n":
+              inCount = 0;
+              offset += 1;
+              fold += "\n";
+              break;
+            case "	":
+              if (inCount <= indent) error = true;
+              offset = _Node.endOfWhiteSpace(src, offset + 2) - 1;
+              break;
+            case " ":
+              inCount += 1;
+              offset += 1;
+              break;
+          }
+          ch = src[offset + 1];
+        }
+        if (!fold) fold = " ";
+        if (ch && inCount <= indent) error = true;
+        return {
+          fold,
+          offset,
+          error
+        };
+      }
+      constructor(type, props, context) {
+        Object.defineProperty(this, "context", {
+          value: context || null,
+          writable: true
+        });
+        this.error = null;
+        this.range = null;
+        this.valueRange = null;
+        this.props = props || [];
+        this.type = type;
+        this.value = null;
+      }
+      getPropValue(idx, key, skipKey) {
+        if (!this.context) return null;
+        const {
+          src
+        } = this.context;
+        const prop = this.props[idx];
+        return prop && src[prop.start] === key ? src.slice(prop.start + (skipKey ? 1 : 0), prop.end) : null;
+      }
+      get anchor() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const anchor = this.getPropValue(i, Char.ANCHOR, true);
+          if (anchor != null) return anchor;
+        }
+        return null;
+      }
+      get comment() {
+        const comments = [];
+        for (let i = 0; i < this.props.length; ++i) {
+          const comment = this.getPropValue(i, Char.COMMENT, true);
+          if (comment != null) comments.push(comment);
+        }
+        return comments.length > 0 ? comments.join("\n") : null;
+      }
+      commentHasRequiredWhitespace(start) {
+        const {
+          src
+        } = this.context;
+        if (this.header && start === this.header.end) return false;
+        if (!this.valueRange) return false;
+        const {
+          end
+        } = this.valueRange;
+        return start !== end || _Node.atBlank(src, end - 1);
+      }
+      get hasComment() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] === Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get hasProps() {
+        if (this.context) {
+          const {
+            src
+          } = this.context;
+          for (let i = 0; i < this.props.length; ++i) {
+            if (src[this.props[i].start] !== Char.COMMENT) return true;
+          }
+        }
+        return false;
+      }
+      get includesTrailingLines() {
+        return false;
+      }
+      get jsonLike() {
+        const jsonLikeTypes = [Type.FLOW_MAP, Type.FLOW_SEQ, Type.QUOTE_DOUBLE, Type.QUOTE_SINGLE];
+        return jsonLikeTypes.indexOf(this.type) !== -1;
+      }
+      get rangeAsLinePos() {
+        if (!this.range || !this.context) return void 0;
+        const start = getLinePos(this.range.start, this.context.root);
+        if (!start) return void 0;
+        const end = getLinePos(this.range.end, this.context.root);
+        return {
+          start,
+          end
+        };
+      }
+      get rawValue() {
+        if (!this.valueRange || !this.context) return null;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        return this.context.src.slice(start, end);
+      }
+      get tag() {
+        for (let i = 0; i < this.props.length; ++i) {
+          const tag = this.getPropValue(i, Char.TAG, false);
+          if (tag != null) {
+            if (tag[1] === "<") {
+              return {
+                verbatim: tag.slice(2, -1)
+              };
+            } else {
+              const [_, handle, suffix] = tag.match(/^(.*!)([^!]*)$/);
+              return {
+                handle,
+                suffix
+              };
+            }
+          }
+        }
+        return null;
+      }
+      get valueRangeContainsNewline() {
+        if (!this.valueRange || !this.context) return false;
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        for (let i = start; i < end; ++i) {
+          if (src[i] === "\n") return true;
+        }
+        return false;
+      }
+      parseComment(start) {
+        const {
+          src
+        } = this.context;
+        if (src[start] === Char.COMMENT) {
+          const end = _Node.endOfLine(src, start + 1);
+          const commentRange = new Range(start, end);
+          this.props.push(commentRange);
+          return end;
+        }
+        return start;
+      }
+      /**
+       * Populates the `origStart` and `origEnd` values of all ranges for this
+       * node. Extended by child classes to handle descendant nodes.
+       *
+       * @param {number[]} cr - Positions of dropped CR characters
+       * @param {number} offset - Starting index of `cr` from the last call
+       * @returns {number} - The next offset, matching the one found for `origStart`
+       */
+      setOrigRanges(cr, offset) {
+        if (this.range) offset = this.range.setOrigRange(cr, offset);
+        if (this.valueRange) this.valueRange.setOrigRange(cr, offset);
+        this.props.forEach((prop) => prop.setOrigRange(cr, offset));
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = src.slice(range4.start, range4.end);
+        return _Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var YAMLError = class extends Error {
+      constructor(name, source, message) {
+        if (!message || !(source instanceof Node11)) throw new Error(`Invalid arguments for new ${name}`);
+        super();
+        this.name = name;
+        this.message = message;
+        this.source = source;
+      }
+      makePretty() {
+        if (!this.source) return;
+        this.nodeType = this.source.type;
+        const cst = this.source.context && this.source.context.root;
+        if (typeof this.offset === "number") {
+          this.range = new Range(this.offset, this.offset + 1);
+          const start = cst && getLinePos(this.offset, cst);
+          if (start) {
+            const end = {
+              line: start.line,
+              col: start.col + 1
+            };
+            this.linePos = {
+              start,
+              end
+            };
+          }
+          delete this.offset;
+        } else {
+          this.range = this.source.range;
+          this.linePos = this.source.rangeAsLinePos;
+        }
+        if (this.linePos) {
+          const {
+            line,
+            col
+          } = this.linePos.start;
+          this.message += ` at line ${line}, column ${col}`;
+          const ctx = cst && getPrettyContext(this.linePos, cst);
+          if (ctx) this.message += `:
+
+${ctx}
+`;
+        }
+        delete this.source;
+      }
+    };
+    var YAMLReferenceError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLReferenceError", source, message);
+      }
+    };
+    var YAMLSemanticError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSemanticError", source, message);
+      }
+    };
+    var YAMLSyntaxError = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLSyntaxError", source, message);
+      }
+    };
+    var YAMLWarning = class extends YAMLError {
+      constructor(source, message) {
+        super("YAMLWarning", source, message);
+      }
+    };
+    function _defineProperty(e, r, t) {
+      return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
+        value: t,
+        enumerable: true,
+        configurable: true,
+        writable: true
+      }) : e[r] = t, e;
+    }
+    function _toPrimitive(t, r) {
+      if ("object" != typeof t || !t) return t;
+      var e = t[Symbol.toPrimitive];
+      if (void 0 !== e) {
+        var i = e.call(t, r || "default");
+        if ("object" != typeof i) return i;
+        throw new TypeError("@@toPrimitive must return a primitive value.");
+      }
+      return ("string" === r ? String : Number)(t);
+    }
+    function _toPropertyKey(t) {
+      var i = _toPrimitive(t, "string");
+      return "symbol" == typeof i ? i : i + "";
+    }
+    var PlainValue = class _PlainValue extends Node11 {
+      static endOfLine(src, start, inFlow) {
+        let ch = src[start];
+        let offset = start;
+        while (ch && ch !== "\n") {
+          if (inFlow && (ch === "[" || ch === "]" || ch === "{" || ch === "}" || ch === ",")) break;
+          const next = src[offset + 1];
+          if (ch === ":" && (!next || next === "\n" || next === "	" || next === " " || inFlow && next === ",")) break;
+          if ((ch === " " || ch === "	") && next === "#") break;
+          offset += 1;
+          ch = next;
+        }
+        return offset;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          src
+        } = this.context;
+        let ch = src[end - 1];
+        while (start < end && (ch === "\n" || ch === "	" || ch === " ")) ch = src[--end - 1];
+        let str = "";
+        for (let i = start; i < end; ++i) {
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            const {
+              fold,
+              offset
+            } = Node11.foldNewline(src, i, -1);
+            str += fold;
+            i = offset;
+          } else if (ch2 === " " || ch2 === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (i < end && (next === " " || next === "	")) {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch2;
+          } else {
+            str += ch2;
+          }
+        }
+        const ch0 = src[start];
+        switch (ch0) {
+          case "	": {
+            const msg = "Plain value cannot start with a tab character";
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          case "@":
+          case "`": {
+            const msg = `Plain value cannot start with reserved character ${ch0}`;
+            const errors = [new YAMLSemanticError(this, msg)];
+            return {
+              errors,
+              str
+            };
+          }
+          default:
+            return str;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          inFlow,
+          src
+        } = this.context;
+        let offset = start;
+        let valueEnd = start;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          if (Node11.atDocumentBoundary(src, offset + 1)) break;
+          const end = Node11.endOfBlockIndent(src, indent, offset + 1);
+          if (end === null || src[end] === "#") break;
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            valueEnd = _PlainValue.endOfLine(src, end, inFlow);
+            offset = valueEnd;
+          }
+        }
+        if (this.valueRange.isEmpty()) this.valueRange.start = start;
+        this.valueRange.end = valueEnd;
+        return valueEnd;
+      }
+      /**
+       * Parses a plain value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * #comment
+       *
+       * first line
+       *
+       * first line #comment
+       *
+       * first line
+       * block
+       * lines
+       *
+       * #comment
+       * block
+       * lines
+       * ```
+       * where block lines are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar, may be `\n`
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          inFlow,
+          src
+        } = context;
+        let offset = start;
+        const ch = src[offset];
+        if (ch && ch !== "#" && ch !== "\n") {
+          offset = _PlainValue.endOfLine(src, start, inFlow);
+        }
+        this.valueRange = new Range(start, offset);
+        offset = Node11.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        if (!this.hasComment || this.valueRange.isEmpty()) {
+          offset = this.parseBlockValue(offset);
+        }
+        return offset;
+      }
+    };
+    exports2.Char = Char;
+    exports2.Node = Node11;
+    exports2.PlainValue = PlainValue;
+    exports2.Range = Range;
+    exports2.Type = Type;
+    exports2.YAMLError = YAMLError;
+    exports2.YAMLReferenceError = YAMLReferenceError;
+    exports2.YAMLSemanticError = YAMLSemanticError;
+    exports2.YAMLSyntaxError = YAMLSyntaxError;
+    exports2.YAMLWarning = YAMLWarning;
+    exports2._defineProperty = _defineProperty;
+    exports2.defaultTagPrefix = defaultTagPrefix;
+    exports2.defaultTags = defaultTags;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js
+var require_parse_cst = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/parse-cst.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var BlankLine = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.BLANK_LINE);
+      }
+      /* istanbul ignore next */
+      get includesTrailingLines() {
+        return true;
+      }
+      /**
+       * Parses a blank line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first \n character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        this.range = new PlainValue.Range(start, start + 1);
+        return start + 1;
+      }
+    };
+    var CollectionItem = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.node = null;
+      }
+      get includesTrailingLines() {
+        return !!this.node && this.node.includesTrailingLines;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          atLineStart,
+          lineStart
+        } = context;
+        if (!atLineStart && this.type === PlainValue.Type.SEQ_ITEM) this.error = new PlainValue.YAMLSemanticError(this, "Sequence items must not have preceding content on the same line");
+        const indent = atLineStart ? start - lineStart : context.indent;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        let ch = src[offset];
+        const inlineComment = ch === "#";
+        const comments = [];
+        let blankLine = null;
+        while (ch === "\n" || ch === "#") {
+          if (ch === "#") {
+            const end2 = PlainValue.Node.endOfLine(src, offset + 1);
+            comments.push(new PlainValue.Range(offset, end2));
+            offset = end2;
+          } else {
+            atLineStart = true;
+            lineStart = offset + 1;
+            const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+            if (src[wsEnd] === "\n" && comments.length === 0) {
+              blankLine = new BlankLine();
+              lineStart = blankLine.parse({
+                src
+              }, lineStart);
+            }
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+          }
+          ch = src[offset];
+        }
+        if (PlainValue.Node.nextNodeIsIndented(ch, offset - (lineStart + indent), this.type !== PlainValue.Type.SEQ_ITEM)) {
+          this.node = parseNode({
+            atLineStart,
+            inCollection: false,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+        } else if (ch && lineStart > start + 1) {
+          offset = lineStart - 1;
+        }
+        if (this.node) {
+          if (blankLine) {
+            const items = context.parent.items || context.parent.contents;
+            if (items) items.push(blankLine);
+          }
+          if (comments.length) Array.prototype.push.apply(this.props, comments);
+          offset = this.node.range.end;
+        } else {
+          if (inlineComment) {
+            const c = comments[0];
+            this.props.push(c);
+            offset = c.end;
+          } else {
+            offset = PlainValue.Node.endOfLine(src, start + 1);
+          }
+        }
+        const end = this.node ? this.node.valueRange.end : offset;
+        this.valueRange = new PlainValue.Range(start, end);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.node ? this.node.setOrigRanges(cr, offset) : offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          node,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const str = node ? src.slice(range4.start, node.range.start) + String(node) : src.slice(range4.start, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Comment = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.COMMENT);
+      }
+      /**
+       * Parses a comment line from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const offset = this.parseComment(start);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    function grabCollectionEndComments(node) {
+      let cnode = node;
+      while (cnode instanceof CollectionItem) cnode = cnode.node;
+      if (!(cnode instanceof Collection2)) return null;
+      const len = cnode.items.length;
+      let ci = -1;
+      for (let i = len - 1; i >= 0; --i) {
+        const n = cnode.items[i];
+        if (n.type === PlainValue.Type.COMMENT) {
+          const {
+            indent,
+            lineStart
+          } = n.context;
+          if (indent > 0 && n.range.start >= lineStart + indent) break;
+          ci = i;
+        } else if (n.type === PlainValue.Type.BLANK_LINE) ci = i;
+        else break;
+      }
+      if (ci === -1) return null;
+      const ca = cnode.items.splice(ci, len - ci);
+      const prevEnd = ca[0].range.start;
+      while (true) {
+        cnode.range.end = prevEnd;
+        if (cnode.valueRange && cnode.valueRange.end > prevEnd) cnode.valueRange.end = prevEnd;
+        if (cnode === node) break;
+        cnode = cnode.context.parent;
+      }
+      return ca;
+    }
+    var Collection2 = class _Collection extends PlainValue.Node {
+      static nextContentHasIndent(src, offset, indent) {
+        const lineStart = PlainValue.Node.endOfLine(src, offset) + 1;
+        offset = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+        const ch = src[offset];
+        if (!ch) return false;
+        if (offset >= lineStart + indent) return true;
+        if (ch !== "#" && ch !== "\n") return false;
+        return _Collection.nextContentHasIndent(src, offset, indent);
+      }
+      constructor(firstItem) {
+        super(firstItem.type === PlainValue.Type.SEQ_ITEM ? PlainValue.Type.SEQ : PlainValue.Type.MAP);
+        for (let i = firstItem.props.length - 1; i >= 0; --i) {
+          if (firstItem.props[i].start < firstItem.context.lineStart) {
+            this.props = firstItem.props.slice(0, i + 1);
+            firstItem.props = firstItem.props.slice(i + 1);
+            const itemRange = firstItem.props[0] || firstItem.valueRange;
+            firstItem.range.start = itemRange.start;
+            break;
+          }
+        }
+        this.items = [firstItem];
+        const ec = grabCollectionEndComments(firstItem);
+        if (ec) Array.prototype.push.apply(this.items, ec);
+      }
+      get includesTrailingLines() {
+        return this.items.length > 0;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let lineStart = PlainValue.Node.startOfLine(src, start);
+        const firstItem = this.items[0];
+        firstItem.context.parent = this;
+        this.valueRange = PlainValue.Range.copy(firstItem.valueRange);
+        const indent = firstItem.range.start - firstItem.context.lineStart;
+        let offset = start;
+        offset = PlainValue.Node.normalizeOffset(src, offset);
+        let ch = src[offset];
+        let atLineStart = PlainValue.Node.endOfWhiteSpace(src, lineStart) === offset;
+        let prevIncludesTrailingLines = false;
+        while (ch) {
+          while (ch === "\n" || ch === "#") {
+            if (atLineStart && ch === "\n" && !prevIncludesTrailingLines) {
+              const blankLine = new BlankLine();
+              offset = blankLine.parse({
+                src
+              }, offset);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+              this.items.push(blankLine);
+              offset -= 1;
+            } else if (ch === "#") {
+              if (offset < lineStart + indent && !_Collection.nextContentHasIndent(src, offset, indent)) {
+                return offset;
+              }
+              const comment = new Comment();
+              offset = comment.parse({
+                indent,
+                lineStart,
+                src
+              }, offset);
+              this.items.push(comment);
+              this.valueRange.end = offset;
+              if (offset >= src.length) {
+                ch = null;
+                break;
+              }
+            }
+            lineStart = offset + 1;
+            offset = PlainValue.Node.endOfIndent(src, lineStart);
+            if (PlainValue.Node.atBlank(src, offset)) {
+              const wsEnd = PlainValue.Node.endOfWhiteSpace(src, offset);
+              const next = src[wsEnd];
+              if (!next || next === "\n" || next === "#") {
+                offset = wsEnd;
+              }
+            }
+            ch = src[offset];
+            atLineStart = true;
+          }
+          if (!ch) {
+            break;
+          }
+          if (offset !== lineStart + indent && (atLineStart || ch !== ":")) {
+            if (offset < lineStart + indent) {
+              if (lineStart > start) offset = lineStart;
+              break;
+            } else if (!this.error) {
+              const msg = "All collection items must start at the same column";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          if (firstItem.type === PlainValue.Type.SEQ_ITEM) {
+            if (ch !== "-") {
+              if (lineStart > start) offset = lineStart;
+              break;
+            }
+          } else if (ch === "-" && !this.error) {
+            const next = src[offset + 1];
+            if (!next || next === "\n" || next === "	" || next === " ") {
+              const msg = "A collection cannot be both a mapping and a sequence";
+              this.error = new PlainValue.YAMLSyntaxError(this, msg);
+            }
+          }
+          const node = parseNode({
+            atLineStart,
+            inCollection: true,
+            indent,
+            lineStart,
+            parent: this
+          }, offset);
+          if (!node) return offset;
+          this.items.push(node);
+          this.valueRange.end = node.valueRange.end;
+          offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+          ch = src[offset];
+          atLineStart = false;
+          prevIncludesTrailingLines = node.includesTrailingLines;
+          if (ch) {
+            let ls = offset - 1;
+            let prev = src[ls];
+            while (prev === " " || prev === "	") prev = src[--ls];
+            if (prev === "\n") {
+              lineStart = ls + 1;
+              atLineStart = true;
+            }
+          }
+          const ec = grabCollectionEndComments(node);
+          if (ec) Array.prototype.push.apply(this.items, ec);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = src.slice(range4.start, items[0].range.start) + String(items[0]);
+        for (let i = 1; i < items.length; ++i) {
+          const item = items[i];
+          const {
+            atLineStart,
+            indent
+          } = item.context;
+          if (atLineStart) for (let i2 = 0; i2 < indent; ++i2) str += " ";
+          str += String(item);
+        }
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var Directive = class extends PlainValue.Node {
+      constructor() {
+        super(PlainValue.Type.DIRECTIVE);
+        this.name = null;
+      }
+      get parameters() {
+        const raw = this.rawValue;
+        return raw ? raw.trim().split(/[ \t]+/) : [];
+      }
+      parseName(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "	" && ch !== " ") ch = src[offset += 1];
+        this.name = src.slice(start, offset);
+        return offset;
+      }
+      parseParameters(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start;
+        let ch = src[offset];
+        while (ch && ch !== "\n" && ch !== "#") ch = src[offset += 1];
+        this.valueRange = new PlainValue.Range(start, offset);
+        return offset;
+      }
+      parse(context, start) {
+        this.context = context;
+        let offset = this.parseName(start + 1);
+        offset = this.parseParameters(offset);
+        offset = this.parseComment(offset);
+        this.range = new PlainValue.Range(start, offset);
+        return offset;
+      }
+    };
+    var Document = class _Document extends PlainValue.Node {
+      static startCommentOrEndBlankLine(src, start) {
+        const offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        const ch = src[offset];
+        return ch === "#" || ch === "\n" ? offset : start;
+      }
+      constructor() {
+        super(PlainValue.Type.DOCUMENT);
+        this.directives = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.documentEndMarker = null;
+      }
+      parseDirectives(start) {
+        const {
+          src
+        } = this.context;
+        this.directives = [];
+        let atLineStart = true;
+        let hasDirectives = false;
+        let offset = start;
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DIRECTIVES_END)) {
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.directives.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.directives.push(comment);
+                atLineStart = false;
+              }
+              break;
+            case "%":
+              {
+                const directive = new Directive();
+                offset = directive.parse({
+                  parent: this,
+                  src
+                }, offset);
+                this.directives.push(directive);
+                hasDirectives = true;
+                atLineStart = false;
+              }
+              break;
+            default:
+              if (hasDirectives) {
+                this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+              } else if (this.directives.length > 0) {
+                this.contents = this.directives;
+                this.directives = [];
+              }
+              return offset;
+          }
+        }
+        if (src[offset]) {
+          this.directivesEndMarker = new PlainValue.Range(offset, offset + 3);
+          return offset + 3;
+        }
+        if (hasDirectives) {
+          this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line");
+        } else if (this.directives.length > 0) {
+          this.contents = this.directives;
+          this.directives = [];
+        }
+        return offset;
+      }
+      parseContents(start) {
+        const {
+          parseNode,
+          src
+        } = this.context;
+        if (!this.contents) this.contents = [];
+        let lineStart = start;
+        while (src[lineStart - 1] === "-") lineStart -= 1;
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start);
+        let atLineStart = lineStart === start;
+        this.valueRange = new PlainValue.Range(offset);
+        while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DOCUMENT_END)) {
+          switch (src[offset]) {
+            case "\n":
+              if (atLineStart) {
+                const blankLine = new BlankLine();
+                offset = blankLine.parse({
+                  src
+                }, offset);
+                if (offset < src.length) {
+                  this.contents.push(blankLine);
+                }
+              } else {
+                offset += 1;
+                atLineStart = true;
+              }
+              lineStart = offset;
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.contents.push(comment);
+                atLineStart = false;
+              }
+              break;
+            default: {
+              const iEnd = PlainValue.Node.endOfIndent(src, offset);
+              const context = {
+                atLineStart,
+                indent: -1,
+                inFlow: false,
+                inCollection: false,
+                lineStart,
+                parent: this
+              };
+              const node = parseNode(context, iEnd);
+              if (!node) return this.valueRange.end = iEnd;
+              this.contents.push(node);
+              offset = node.range.end;
+              atLineStart = false;
+              const ec = grabCollectionEndComments(node);
+              if (ec) Array.prototype.push.apply(this.contents, ec);
+            }
+          }
+          offset = _Document.startCommentOrEndBlankLine(src, offset);
+        }
+        this.valueRange.end = offset;
+        if (src[offset]) {
+          this.documentEndMarker = new PlainValue.Range(offset, offset + 3);
+          offset += 3;
+          if (src[offset]) {
+            offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+            if (src[offset] === "#") {
+              const comment = new Comment();
+              offset = comment.parse({
+                src
+              }, offset);
+              this.contents.push(comment);
+            }
+            switch (src[offset]) {
+              case "\n":
+                offset += 1;
+                break;
+              case void 0:
+                break;
+              default:
+                this.error = new PlainValue.YAMLSyntaxError(this, "Document end marker line cannot have a non-comment suffix");
+            }
+          }
+        }
+        return offset;
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        context.root = this;
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = src.charCodeAt(start) === 65279 ? start + 1 : start;
+        offset = this.parseDirectives(offset);
+        offset = this.parseContents(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.directives.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.directivesEndMarker) offset = this.directivesEndMarker.setOrigRange(cr, offset);
+        this.contents.forEach((node) => {
+          offset = node.setOrigRanges(cr, offset);
+        });
+        if (this.documentEndMarker) offset = this.documentEndMarker.setOrigRange(cr, offset);
+        return offset;
+      }
+      toString() {
+        const {
+          contents,
+          directives,
+          value
+        } = this;
+        if (value != null) return value;
+        let str = directives.join("");
+        if (contents.length > 0) {
+          if (directives.length > 0 || contents[0].type === PlainValue.Type.COMMENT) str += "---\n";
+          str += contents.join("");
+        }
+        if (str[str.length - 1] !== "\n") str += "\n";
+        return str;
+      }
+    };
+    var Alias2 = class extends PlainValue.Node {
+      /**
+       * Parses an *alias from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = PlainValue.Node.endOfIdentifier(src, start + 1);
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var Chomp = {
+      CLIP: "CLIP",
+      KEEP: "KEEP",
+      STRIP: "STRIP"
+    };
+    var BlockValue = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.blockIndent = null;
+        this.chomping = Chomp.CLIP;
+        this.header = null;
+      }
+      get includesTrailingLines() {
+        return this.chomping === Chomp.KEEP;
+      }
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        let {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (this.valueRange.isEmpty()) return "";
+        let lastNewLine = null;
+        let ch = src[end - 1];
+        while (ch === "\n" || ch === "	" || ch === " ") {
+          end -= 1;
+          if (end <= start) {
+            if (this.chomping === Chomp.KEEP) break;
+            else return "";
+          }
+          if (ch === "\n") lastNewLine = end;
+          ch = src[end - 1];
+        }
+        let keepStart = end + 1;
+        if (lastNewLine) {
+          if (this.chomping === Chomp.KEEP) {
+            keepStart = lastNewLine;
+            end = this.valueRange.end;
+          } else {
+            end = lastNewLine;
+          }
+        }
+        const bi = indent + this.blockIndent;
+        const folded = this.type === PlainValue.Type.BLOCK_FOLDED;
+        let atStart = true;
+        let str = "";
+        let sep3 = "";
+        let prevMoreIndented = false;
+        for (let i = start; i < end; ++i) {
+          for (let j = 0; j < bi; ++j) {
+            if (src[i] !== " ") break;
+            i += 1;
+          }
+          const ch2 = src[i];
+          if (ch2 === "\n") {
+            if (sep3 === "\n") str += "\n";
+            else sep3 = "\n";
+          } else {
+            const lineEnd = PlainValue.Node.endOfLine(src, i);
+            const line = src.slice(i, lineEnd);
+            i = lineEnd;
+            if (folded && (ch2 === " " || ch2 === "	") && i < keepStart) {
+              if (sep3 === " ") sep3 = "\n";
+              else if (!prevMoreIndented && !atStart && sep3 === "\n") sep3 = "\n\n";
+              str += sep3 + line;
+              sep3 = lineEnd < end && src[lineEnd] || "";
+              prevMoreIndented = true;
+            } else {
+              str += sep3 + line;
+              sep3 = folded && i < keepStart ? " " : "\n";
+              prevMoreIndented = false;
+            }
+            if (atStart && line !== "") atStart = false;
+          }
+        }
+        return this.chomping === Chomp.STRIP ? str : str + "\n";
+      }
+      parseBlockHeader(start) {
+        const {
+          src
+        } = this.context;
+        let offset = start + 1;
+        let bi = "";
+        while (true) {
+          const ch = src[offset];
+          switch (ch) {
+            case "-":
+              this.chomping = Chomp.STRIP;
+              break;
+            case "+":
+              this.chomping = Chomp.KEEP;
+              break;
+            case "0":
+            case "1":
+            case "2":
+            case "3":
+            case "4":
+            case "5":
+            case "6":
+            case "7":
+            case "8":
+            case "9":
+              bi += ch;
+              break;
+            default:
+              this.blockIndent = Number(bi) || null;
+              this.header = new PlainValue.Range(start, offset);
+              return offset;
+          }
+          offset += 1;
+        }
+      }
+      parseBlockValue(start) {
+        const {
+          indent,
+          src
+        } = this.context;
+        const explicit = !!this.blockIndent;
+        let offset = start;
+        let valueEnd = start;
+        let minBlockIndent = 1;
+        for (let ch = src[offset]; ch === "\n"; ch = src[offset]) {
+          offset += 1;
+          if (PlainValue.Node.atDocumentBoundary(src, offset)) break;
+          const end = PlainValue.Node.endOfBlockIndent(src, indent, offset);
+          if (end === null) break;
+          const ch2 = src[end];
+          const lineIndent = end - (offset + indent);
+          if (!this.blockIndent) {
+            if (src[end] !== "\n") {
+              if (lineIndent < minBlockIndent) {
+                const msg = "Block scalars with more-indented leading empty lines must use an explicit indentation indicator";
+                this.error = new PlainValue.YAMLSemanticError(this, msg);
+              }
+              this.blockIndent = lineIndent;
+            } else if (lineIndent > minBlockIndent) {
+              minBlockIndent = lineIndent;
+            }
+          } else if (ch2 && ch2 !== "\n" && lineIndent < this.blockIndent) {
+            if (src[end] === "#") break;
+            if (!this.error) {
+              const src2 = explicit ? "explicit indentation indicator" : "first line";
+              const msg = `Block scalars must not be less indented than their ${src2}`;
+              this.error = new PlainValue.YAMLSemanticError(this, msg);
+            }
+          }
+          if (src[end] === "\n") {
+            offset = end;
+          } else {
+            offset = valueEnd = PlainValue.Node.endOfLine(src, end);
+          }
+        }
+        if (this.chomping !== Chomp.KEEP) {
+          offset = src[valueEnd] ? valueEnd + 1 : valueEnd;
+        }
+        this.valueRange = new PlainValue.Range(start + 1, offset);
+        return offset;
+      }
+      /**
+       * Parses a block value from the source
+       *
+       * Accepted forms are:
+       * ```
+       * BS
+       * block
+       * lines
+       *
+       * BS #comment
+       * block
+       * lines
+       * ```
+       * where the block style BS matches the regexp `[|>][-+1-9]*` and block lines
+       * are empty or have an indent level greater than `indent`.
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this block
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = this.parseBlockHeader(start);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        offset = this.parseBlockValue(offset);
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        return this.header ? this.header.setOrigRange(cr, offset) : offset;
+      }
+    };
+    var FlowCollection = class extends PlainValue.Node {
+      constructor(type, props) {
+        super(type, props);
+        this.items = null;
+      }
+      prevNodeIsJsonLike(idx = this.items.length) {
+        const node = this.items[idx - 1];
+        return !!node && (node.jsonLike || node.type === PlainValue.Type.COMMENT && this.prevNodeIsJsonLike(idx - 1));
+      }
+      /**
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          parseNode,
+          src
+        } = context;
+        let {
+          indent,
+          lineStart
+        } = context;
+        let char = src[start];
+        this.items = [{
+          char,
+          offset: start
+        }];
+        let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1);
+        char = src[offset];
+        while (char && char !== "]" && char !== "}") {
+          switch (char) {
+            case "\n":
+              {
+                lineStart = offset + 1;
+                const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart);
+                if (src[wsEnd] === "\n") {
+                  const blankLine = new BlankLine();
+                  lineStart = blankLine.parse({
+                    src
+                  }, lineStart);
+                  this.items.push(blankLine);
+                }
+                offset = PlainValue.Node.endOfIndent(src, lineStart);
+                if (offset <= lineStart + indent) {
+                  char = src[offset];
+                  if (offset < lineStart + indent || char !== "]" && char !== "}") {
+                    const msg = "Insufficient indentation in flow collection";
+                    this.error = new PlainValue.YAMLSemanticError(this, msg);
+                  }
+                }
+              }
+              break;
+            case ",":
+              {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+              }
+              break;
+            case "#":
+              {
+                const comment = new Comment();
+                offset = comment.parse({
+                  src
+                }, offset);
+                this.items.push(comment);
+              }
+              break;
+            case "?":
+            case ":": {
+              const next = src[offset + 1];
+              if (next === "\n" || next === "	" || next === " " || next === "," || // in-flow : after JSON-like key does not need to be followed by whitespace
+              char === ":" && this.prevNodeIsJsonLike()) {
+                this.items.push({
+                  char,
+                  offset
+                });
+                offset += 1;
+                break;
+              }
+            }
+            // fallthrough
+            default: {
+              const node = parseNode({
+                atLineStart: false,
+                inCollection: false,
+                inFlow: true,
+                indent: -1,
+                lineStart,
+                parent: this
+              }, offset);
+              if (!node) {
+                this.valueRange = new PlainValue.Range(start, offset);
+                return offset;
+              }
+              this.items.push(node);
+              offset = PlainValue.Node.normalizeOffset(src, node.range.end);
+            }
+          }
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+          char = src[offset];
+        }
+        this.valueRange = new PlainValue.Range(start, offset + 1);
+        if (char) {
+          this.items.push({
+            char,
+            offset
+          });
+          offset = PlainValue.Node.endOfWhiteSpace(src, offset + 1);
+          offset = this.parseComment(offset);
+        }
+        return offset;
+      }
+      setOrigRanges(cr, offset) {
+        offset = super.setOrigRanges(cr, offset);
+        this.items.forEach((node) => {
+          if (node instanceof PlainValue.Node) {
+            offset = node.setOrigRanges(cr, offset);
+          } else if (cr.length === 0) {
+            node.origOffset = node.offset;
+          } else {
+            let i = offset;
+            while (i < cr.length) {
+              if (cr[i] > node.offset) break;
+              else ++i;
+            }
+            node.origOffset = node.offset + i;
+            offset = i;
+          }
+        });
+        return offset;
+      }
+      toString() {
+        const {
+          context: {
+            src
+          },
+          items,
+          range: range4,
+          value
+        } = this;
+        if (value != null) return value;
+        const nodes = items.filter((item) => item instanceof PlainValue.Node);
+        let str = "";
+        let prevEnd = range4.start;
+        nodes.forEach((node) => {
+          const prefix = src.slice(prevEnd, node.range.start);
+          prevEnd = node.range.end;
+          str += prefix + String(node);
+          if (str[str.length - 1] === "\n" && src[prevEnd - 1] !== "\n" && src[prevEnd] === "\n") {
+            prevEnd += 1;
+          }
+        });
+        str += src.slice(prevEnd, range4.end);
+        return PlainValue.Node.addStringTerminator(src, range4.end, str);
+      }
+    };
+    var QuoteDouble = class _QuoteDouble extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch && ch !== '"') {
+          offset += ch === "\\" ? 2 : 1;
+          ch = src[offset];
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== '"') errors.push(new PlainValue.YAMLSyntaxError(this, 'Missing closing "quote'));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line double-quoted string needs to be sufficiently indented"));
+          } else if (ch === "\\") {
+            i += 1;
+            switch (src[i]) {
+              case "0":
+                str += "\0";
+                break;
+              // null character
+              case "a":
+                str += "\x07";
+                break;
+              // bell character
+              case "b":
+                str += "\b";
+                break;
+              // backspace
+              case "e":
+                str += "\x1B";
+                break;
+              // escape character
+              case "f":
+                str += "\f";
+                break;
+              // form feed
+              case "n":
+                str += "\n";
+                break;
+              // line feed
+              case "r":
+                str += "\r";
+                break;
+              // carriage return
+              case "t":
+                str += "	";
+                break;
+              // horizontal tab
+              case "v":
+                str += "\v";
+                break;
+              // vertical tab
+              case "N":
+                str += "\x85";
+                break;
+              // Unicode next line
+              case "_":
+                str += "\xA0";
+                break;
+              // Unicode non-breaking space
+              case "L":
+                str += "\u2028";
+                break;
+              // Unicode line separator
+              case "P":
+                str += "\u2029";
+                break;
+              // Unicode paragraph separator
+              case " ":
+                str += " ";
+                break;
+              case '"':
+                str += '"';
+                break;
+              case "/":
+                str += "/";
+                break;
+              case "\\":
+                str += "\\";
+                break;
+              case "	":
+                str += "	";
+                break;
+              case "x":
+                str += this.parseCharCode(i + 1, 2, errors);
+                i += 2;
+                break;
+              case "u":
+                str += this.parseCharCode(i + 1, 4, errors);
+                i += 4;
+                break;
+              case "U":
+                str += this.parseCharCode(i + 1, 8, errors);
+                i += 8;
+                break;
+              case "\n":
+                while (src[i + 1] === " " || src[i + 1] === "	") i += 1;
+                break;
+              default:
+                errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(i - 1, 2)}`));
+                str += "\\" + src[i];
+            }
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      parseCharCode(offset, length, errors) {
+        const {
+          src
+        } = this.context;
+        const cc = src.substr(offset, length);
+        const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc);
+        const code = ok ? parseInt(cc, 16) : NaN;
+        if (isNaN(code)) {
+          errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(offset - 2, length + 2)}`));
+          return src.substr(offset - 2, length + 2);
+        }
+        return String.fromCodePoint(code);
+      }
+      /**
+       * Parses a "double quoted" value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteDouble.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    var QuoteSingle = class _QuoteSingle extends PlainValue.Node {
+      static endOfQuote(src, offset) {
+        let ch = src[offset];
+        while (ch) {
+          if (ch === "'") {
+            if (src[offset + 1] !== "'") break;
+            ch = src[offset += 2];
+          } else {
+            ch = src[offset += 1];
+          }
+        }
+        return offset + 1;
+      }
+      /**
+       * @returns {string | { str: string, errors: YAMLSyntaxError[] }}
+       */
+      get strValue() {
+        if (!this.valueRange || !this.context) return null;
+        const errors = [];
+        const {
+          start,
+          end
+        } = this.valueRange;
+        const {
+          indent,
+          src
+        } = this.context;
+        if (src[end - 1] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Missing closing 'quote"));
+        let str = "";
+        for (let i = start + 1; i < end - 1; ++i) {
+          const ch = src[i];
+          if (ch === "\n") {
+            if (PlainValue.Node.atDocumentBoundary(src, i + 1)) errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values"));
+            const {
+              fold,
+              offset,
+              error
+            } = PlainValue.Node.foldNewline(src, i, indent);
+            str += fold;
+            i = offset;
+            if (error) errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line single-quoted string needs to be sufficiently indented"));
+          } else if (ch === "'") {
+            str += ch;
+            i += 1;
+            if (src[i] !== "'") errors.push(new PlainValue.YAMLSyntaxError(this, "Unescaped single quote? This should not happen."));
+          } else if (ch === " " || ch === "	") {
+            const wsStart = i;
+            let next = src[i + 1];
+            while (next === " " || next === "	") {
+              i += 1;
+              next = src[i + 1];
+            }
+            if (next !== "\n") str += i > wsStart ? src.slice(wsStart, i + 1) : ch;
+          } else {
+            str += ch;
+          }
+        }
+        return errors.length > 0 ? {
+          errors,
+          str
+        } : str;
+      }
+      /**
+       * Parses a 'single quoted' value from the source
+       *
+       * @param {ParseContext} context
+       * @param {number} start - Index of first character
+       * @returns {number} - Index of the character after this scalar
+       */
+      parse(context, start) {
+        this.context = context;
+        const {
+          src
+        } = context;
+        let offset = _QuoteSingle.endOfQuote(src, start + 1);
+        this.valueRange = new PlainValue.Range(start, offset);
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        offset = this.parseComment(offset);
+        return offset;
+      }
+    };
+    function createNewNode(type, props) {
+      switch (type) {
+        case PlainValue.Type.ALIAS:
+          return new Alias2(type, props);
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+          return new BlockValue(type, props);
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.FLOW_SEQ:
+          return new FlowCollection(type, props);
+        case PlainValue.Type.MAP_KEY:
+        case PlainValue.Type.MAP_VALUE:
+        case PlainValue.Type.SEQ_ITEM:
+          return new CollectionItem(type, props);
+        case PlainValue.Type.COMMENT:
+        case PlainValue.Type.PLAIN:
+          return new PlainValue.PlainValue(type, props);
+        case PlainValue.Type.QUOTE_DOUBLE:
+          return new QuoteDouble(type, props);
+        case PlainValue.Type.QUOTE_SINGLE:
+          return new QuoteSingle(type, props);
+        /* istanbul ignore next */
+        default:
+          return null;
+      }
+    }
+    var ParseContext = class _ParseContext {
+      static parseType(src, offset, inFlow) {
+        switch (src[offset]) {
+          case "*":
+            return PlainValue.Type.ALIAS;
+          case ">":
+            return PlainValue.Type.BLOCK_FOLDED;
+          case "|":
+            return PlainValue.Type.BLOCK_LITERAL;
+          case "{":
+            return PlainValue.Type.FLOW_MAP;
+          case "[":
+            return PlainValue.Type.FLOW_SEQ;
+          case "?":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_KEY : PlainValue.Type.PLAIN;
+          case ":":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_VALUE : PlainValue.Type.PLAIN;
+          case "-":
+            return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.SEQ_ITEM : PlainValue.Type.PLAIN;
+          case '"':
+            return PlainValue.Type.QUOTE_DOUBLE;
+          case "'":
+            return PlainValue.Type.QUOTE_SINGLE;
+          default:
+            return PlainValue.Type.PLAIN;
+        }
+      }
+      constructor(orig = {}, {
+        atLineStart,
+        inCollection,
+        inFlow,
+        indent,
+        lineStart,
+        parent
+      } = {}) {
+        PlainValue._defineProperty(this, "parseNode", (overlay, start) => {
+          if (PlainValue.Node.atDocumentBoundary(this.src, start)) return null;
+          const context = new _ParseContext(this, overlay);
+          const {
+            props,
+            type,
+            valueStart
+          } = context.parseProps(start);
+          const node = createNewNode(type, props);
+          let offset = start;
+          try {
+            offset = node.parse(context, valueStart);
+          } catch (error) {
+            const msg = error instanceof Error ? error.message : String(error);
+            if (!node.error) node.error = new PlainValue.YAMLSyntaxError(node, msg);
+          }
+          node.range = new PlainValue.Range(start, offset);
+          if (offset <= start) {
+            if (!node.error) node.error = new Error(`Node#parse consumed no characters`);
+            node.error.parseEnd = offset;
+            node.error.source = node;
+            node.range.end = start + 1;
+          }
+          if (context.nodeStartsCollection(node)) {
+            if (!node.error && !context.atLineStart && context.parent.type === PlainValue.Type.DOCUMENT) {
+              node.error = new PlainValue.YAMLSyntaxError(node, "Block collection must not have preceding content here (e.g. directives-end indicator)");
+            }
+            const collection = new Collection2(node);
+            offset = collection.parse(new _ParseContext(context), offset);
+            collection.range = new PlainValue.Range(start, offset);
+            return collection;
+          }
+          return node;
+        });
+        this.atLineStart = atLineStart != null ? atLineStart : orig.atLineStart || false;
+        this.inCollection = inCollection != null ? inCollection : orig.inCollection || false;
+        this.inFlow = inFlow != null ? inFlow : orig.inFlow || false;
+        this.indent = indent != null ? indent : orig.indent;
+        this.lineStart = lineStart != null ? lineStart : orig.lineStart;
+        this.parent = parent != null ? parent : orig.parent || {};
+        this.root = orig.root;
+        this.src = orig.src;
+      }
+      nodeStartsCollection(node) {
+        const {
+          inCollection,
+          inFlow,
+          src
+        } = this;
+        if (inCollection || inFlow) return false;
+        if (node instanceof CollectionItem) return true;
+        let offset = node.range.end;
+        if (src[offset] === "\n" || src[offset - 1] === "\n") return false;
+        offset = PlainValue.Node.endOfWhiteSpace(src, offset);
+        return src[offset] === ":";
+      }
+      // Anchor and tag are before type, which determines the node implementation
+      // class; hence this intermediate step.
+      parseProps(offset) {
+        const {
+          inFlow,
+          parent,
+          src
+        } = this;
+        const props = [];
+        let lineHasProps = false;
+        offset = this.atLineStart ? PlainValue.Node.endOfIndent(src, offset) : PlainValue.Node.endOfWhiteSpace(src, offset);
+        let ch = src[offset];
+        while (ch === PlainValue.Char.ANCHOR || ch === PlainValue.Char.COMMENT || ch === PlainValue.Char.TAG || ch === "\n") {
+          if (ch === "\n") {
+            let inEnd = offset;
+            let lineStart;
+            do {
+              lineStart = inEnd + 1;
+              inEnd = PlainValue.Node.endOfIndent(src, lineStart);
+            } while (src[inEnd] === "\n");
+            const indentDiff = inEnd - (lineStart + this.indent);
+            const noIndicatorAsIndent = parent.type === PlainValue.Type.SEQ_ITEM && parent.context.atLineStart;
+            if (src[inEnd] !== "#" && !PlainValue.Node.nextNodeIsIndented(src[inEnd], indentDiff, !noIndicatorAsIndent)) break;
+            this.atLineStart = true;
+            this.lineStart = lineStart;
+            lineHasProps = false;
+            offset = inEnd;
+          } else if (ch === PlainValue.Char.COMMENT) {
+            const end = PlainValue.Node.endOfLine(src, offset + 1);
+            props.push(new PlainValue.Range(offset, end));
+            offset = end;
+          } else {
+            let end = PlainValue.Node.endOfIdentifier(src, offset + 1);
+            if (ch === PlainValue.Char.TAG && src[end] === "," && /^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(src.slice(offset + 1, end + 13))) {
+              end = PlainValue.Node.endOfIdentifier(src, end + 5);
+            }
+            props.push(new PlainValue.Range(offset, end));
+            lineHasProps = true;
+            offset = PlainValue.Node.endOfWhiteSpace(src, end);
+          }
+          ch = src[offset];
+        }
+        if (lineHasProps && ch === ":" && PlainValue.Node.atBlank(src, offset + 1, true)) offset -= 1;
+        const type = _ParseContext.parseType(src, offset, inFlow);
+        return {
+          props,
+          type,
+          valueStart: offset
+        };
+      }
+    };
+    function parse3(src) {
+      const cr = [];
+      if (src.indexOf("\r") !== -1) {
+        src = src.replace(/\r\n?/g, (match, offset2) => {
+          if (match.length > 1) cr.push(offset2);
+          return "\n";
+        });
+      }
+      const documents = [];
+      let offset = 0;
+      do {
+        const doc = new Document();
+        const context = new ParseContext({
+          src
+        });
+        offset = doc.parse(context, offset);
+        documents.push(doc);
+      } while (offset < src.length);
+      documents.setOrigRanges = () => {
+        if (cr.length === 0) return false;
+        for (let i = 1; i < cr.length; ++i) cr[i] -= i;
+        let crOffset = 0;
+        for (let i = 0; i < documents.length; ++i) {
+          crOffset = documents[i].setOrigRanges(cr, crOffset);
+        }
+        cr.splice(0, cr.length);
+        return true;
+      };
+      documents.toString = () => documents.join("...\n");
+      return documents;
+    }
+    exports2.parse = parse3;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js
+var require_resolveSeq_95613e94 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/resolveSeq-95613e94.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    function addCommentBefore(str, indent, comment) {
+      if (!comment) return str;
+      const cc = comment.replace(/[\s\S]^/gm, `$&${indent}#`);
+      return `#${cc}
+${indent}${str}`;
+    }
+    function addComment(str, indent, comment) {
+      return !comment ? str : comment.indexOf("\n") === -1 ? `${str} #${comment}` : `${str}
+` + comment.replace(/^/gm, `${indent || ""}#`);
+    }
+    var Node11 = class {
+    };
+    function toJSON(value, arg, ctx) {
+      if (Array.isArray(value)) return value.map((v, i) => toJSON(v, String(i), ctx));
+      if (value && typeof value.toJSON === "function") {
+        const anchor = ctx && ctx.anchors && ctx.anchors.get(value);
+        if (anchor) ctx.onCreate = (res2) => {
+          anchor.res = res2;
+          delete ctx.onCreate;
+        };
+        const res = value.toJSON(arg, ctx);
+        if (anchor && ctx.onCreate) ctx.onCreate(res);
+        return res;
+      }
+      if ((!ctx || !ctx.keep) && typeof value === "bigint") return Number(value);
+      return value;
+    }
+    var Scalar2 = class extends Node11 {
+      constructor(value) {
+        super();
+        this.value = value;
+      }
+      toJSON(arg, ctx) {
+        return ctx && ctx.keep ? this.value : toJSON(this.value, arg, ctx);
+      }
+      toString() {
+        return String(this.value);
+      }
+    };
+    function collectionFromPath(schema, path23, value) {
+      let v = value;
+      for (let i = path23.length - 1; i >= 0; --i) {
+        const k = path23[i];
+        if (Number.isInteger(k) && k >= 0) {
+          const a = [];
+          a[k] = v;
+          v = a;
+        } else {
+          const o = {};
+          Object.defineProperty(o, k, {
+            value: v,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          v = o;
+        }
+      }
+      return schema.createNode(v, false);
+    }
+    var isEmptyPath = (path23) => path23 == null || typeof path23 === "object" && path23[Symbol.iterator]().next().done;
+    var Collection2 = class _Collection extends Node11 {
+      constructor(schema) {
+        super();
+        PlainValue._defineProperty(this, "items", []);
+        this.schema = schema;
+      }
+      addIn(path23, value) {
+        if (isEmptyPath(path23)) this.add(value);
+        else {
+          const [key, ...rest] = path23;
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.addIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      deleteIn([key, ...rest]) {
+        if (rest.length === 0) return this.delete(key);
+        const node = this.get(key, true);
+        if (node instanceof _Collection) return node.deleteIn(rest);
+        else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+      }
+      getIn([key, ...rest], keepScalar) {
+        const node = this.get(key, true);
+        if (rest.length === 0) return !keepScalar && node instanceof Scalar2 ? node.value : node;
+        else return node instanceof _Collection ? node.getIn(rest, keepScalar) : void 0;
+      }
+      hasAllNullValues() {
+        return this.items.every((node) => {
+          if (!node || node.type !== "PAIR") return false;
+          const n = node.value;
+          return n == null || n instanceof Scalar2 && n.value == null && !n.commentBefore && !n.comment && !n.tag;
+        });
+      }
+      hasIn([key, ...rest]) {
+        if (rest.length === 0) return this.has(key);
+        const node = this.get(key, true);
+        return node instanceof _Collection ? node.hasIn(rest) : false;
+      }
+      setIn([key, ...rest], value) {
+        if (rest.length === 0) {
+          this.set(key, value);
+        } else {
+          const node = this.get(key, true);
+          if (node instanceof _Collection) node.setIn(rest, value);
+          else if (node === void 0 && this.schema) this.set(key, collectionFromPath(this.schema, rest, value));
+          else throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
+        }
+      }
+      // overridden in implementations
+      /* istanbul ignore next */
+      toJSON() {
+        return null;
+      }
+      toString(ctx, {
+        blockItem,
+        flowChars,
+        isMap,
+        itemIndent
+      }, onComment, onChompKeep) {
+        const {
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        const inFlow = this.type === PlainValue.Type.FLOW_MAP || this.type === PlainValue.Type.FLOW_SEQ || ctx.inFlow;
+        if (inFlow) itemIndent += indentStep;
+        const allNullValues = isMap && this.hasAllNullValues();
+        ctx = Object.assign({}, ctx, {
+          allNullValues,
+          indent: itemIndent,
+          inFlow,
+          type: null
+        });
+        let chompKeep = false;
+        let hasItemWithNewLine = false;
+        const nodes = this.items.reduce((nodes2, item, i) => {
+          let comment;
+          if (item) {
+            if (!chompKeep && item.spaceBefore) nodes2.push({
+              type: "comment",
+              str: ""
+            });
+            if (item.commentBefore) item.commentBefore.match(/^.*$/gm).forEach((line) => {
+              nodes2.push({
+                type: "comment",
+                str: `#${line}`
+              });
+            });
+            if (item.comment) comment = item.comment;
+            if (inFlow && (!chompKeep && item.spaceBefore || item.commentBefore || item.comment || item.key && (item.key.commentBefore || item.key.comment) || item.value && (item.value.commentBefore || item.value.comment))) hasItemWithNewLine = true;
+          }
+          chompKeep = false;
+          let str2 = stringify3(item, ctx, () => comment = null, () => chompKeep = true);
+          if (inFlow && !hasItemWithNewLine && str2.includes("\n")) hasItemWithNewLine = true;
+          if (inFlow && i < this.items.length - 1) str2 += ",";
+          str2 = addComment(str2, itemIndent, comment);
+          if (chompKeep && (comment || inFlow)) chompKeep = false;
+          nodes2.push({
+            type: "item",
+            str: str2
+          });
+          return nodes2;
+        }, []);
+        let str;
+        if (nodes.length === 0) {
+          str = flowChars.start + flowChars.end;
+        } else if (inFlow) {
+          const {
+            start,
+            end
+          } = flowChars;
+          const strings = nodes.map((n) => n.str);
+          if (hasItemWithNewLine || strings.reduce((sum, str2) => sum + str2.length + 2, 2) > _Collection.maxFlowStringSingleLineLength) {
+            str = start;
+            for (const s of strings) {
+              str += s ? `
+${indentStep}${indent}${s}` : "\n";
+            }
+            str += `
+${indent}${end}`;
+          } else {
+            str = `${start} ${strings.join(" ")} ${end}`;
+          }
+        } else {
+          const strings = nodes.map(blockItem);
+          str = strings.shift();
+          for (const s of strings) str += s ? `
+${indent}${s}` : "\n";
+        }
+        if (this.comment) {
+          str += "\n" + this.comment.replace(/^/gm, `${indent}#`);
+          if (onComment) onComment();
+        } else if (chompKeep && onChompKeep) onChompKeep();
+        return str;
+      }
+    };
+    PlainValue._defineProperty(Collection2, "maxFlowStringSingleLineLength", 60);
+    function asItemIndex(key) {
+      let idx = key instanceof Scalar2 ? key.value : key;
+      if (idx && typeof idx === "string") idx = Number(idx);
+      return Number.isInteger(idx) && idx >= 0 ? idx : null;
+    }
+    var YAMLSeq2 = class extends Collection2 {
+      add(value) {
+        this.items.push(value);
+      }
+      delete(key) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return false;
+        const del = this.items.splice(idx, 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") return void 0;
+        const it = this.items[idx];
+        return !keepScalar && it instanceof Scalar2 ? it.value : it;
+      }
+      has(key) {
+        const idx = asItemIndex(key);
+        return typeof idx === "number" && idx < this.items.length;
+      }
+      set(key, value) {
+        const idx = asItemIndex(key);
+        if (typeof idx !== "number") throw new Error(`Expected a valid index, not ${key}.`);
+        this.items[idx] = value;
+      }
+      toJSON(_, ctx) {
+        const seq = [];
+        if (ctx && ctx.onCreate) ctx.onCreate(seq);
+        let i = 0;
+        for (const item of this.items) seq.push(toJSON(item, String(i++), ctx));
+        return seq;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        return super.toString(ctx, {
+          blockItem: (n) => n.type === "comment" ? n.str : `- ${n.str}`,
+          flowChars: {
+            start: "[",
+            end: "]"
+          },
+          isMap: false,
+          itemIndent: (ctx.indent || "") + "  "
+        }, onComment, onChompKeep);
+      }
+    };
+    var stringifyKey = (key, jsKey, ctx) => {
+      if (jsKey === null) return "";
+      if (typeof jsKey !== "object") return String(jsKey);
+      if (key instanceof Node11 && ctx && ctx.doc) return key.toString({
+        anchors: /* @__PURE__ */ Object.create(null),
+        doc: ctx.doc,
+        indent: "",
+        indentStep: ctx.indentStep,
+        inFlow: true,
+        inStringifyKey: true,
+        stringify: ctx.stringify
+      });
+      return JSON.stringify(jsKey);
+    };
+    var Pair2 = class _Pair extends Node11 {
+      constructor(key, value = null) {
+        super();
+        this.key = key;
+        this.value = value;
+        this.type = _Pair.Type.PAIR;
+      }
+      get commentBefore() {
+        return this.key instanceof Node11 ? this.key.commentBefore : void 0;
+      }
+      set commentBefore(cb) {
+        if (this.key == null) this.key = new Scalar2(null);
+        if (this.key instanceof Node11) this.key.commentBefore = cb;
+        else {
+          const msg = "Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";
+          throw new Error(msg);
+        }
+      }
+      addToJSMap(ctx, map) {
+        const key = toJSON(this.key, "", ctx);
+        if (map instanceof Map) {
+          const value = toJSON(this.value, key, ctx);
+          map.set(key, value);
+        } else if (map instanceof Set) {
+          map.add(key);
+        } else {
+          const stringKey = stringifyKey(this.key, key, ctx);
+          const value = toJSON(this.value, stringKey, ctx);
+          if (stringKey in map) Object.defineProperty(map, stringKey, {
+            value,
+            writable: true,
+            enumerable: true,
+            configurable: true
+          });
+          else map[stringKey] = value;
+        }
+        return map;
+      }
+      toJSON(_, ctx) {
+        const pair = ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        return this.addToJSMap(ctx, pair);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx || !ctx.doc) return JSON.stringify(this);
+        const {
+          indent: indentSize,
+          indentSeq,
+          simpleKeys
+        } = ctx.doc.options;
+        let {
+          key,
+          value
+        } = this;
+        let keyComment = key instanceof Node11 && key.comment;
+        if (simpleKeys) {
+          if (keyComment) {
+            throw new Error("With simple keys, key nodes cannot have comments");
+          }
+          if (key instanceof Collection2) {
+            const msg = "With simple keys, collection cannot be used as a key value";
+            throw new Error(msg);
+          }
+        }
+        let explicitKey = !simpleKeys && (!key || keyComment || (key instanceof Node11 ? key instanceof Collection2 || key.type === PlainValue.Type.BLOCK_FOLDED || key.type === PlainValue.Type.BLOCK_LITERAL : typeof key === "object"));
+        const {
+          doc,
+          indent,
+          indentStep,
+          stringify: stringify3
+        } = ctx;
+        ctx = Object.assign({}, ctx, {
+          implicitKey: !explicitKey,
+          indent: indent + indentStep
+        });
+        let chompKeep = false;
+        let str = stringify3(key, ctx, () => keyComment = null, () => chompKeep = true);
+        str = addComment(str, ctx.indent, keyComment);
+        if (!explicitKey && str.length > 1024) {
+          if (simpleKeys) throw new Error("With simple keys, single line scalar must not span more than 1024 characters");
+          explicitKey = true;
+        }
+        if (ctx.allNullValues && !simpleKeys) {
+          if (this.comment) {
+            str = addComment(str, ctx.indent, this.comment);
+            if (onComment) onComment();
+          } else if (chompKeep && !keyComment && onChompKeep) onChompKeep();
+          return ctx.inFlow && !explicitKey ? str : `? ${str}`;
+        }
+        str = explicitKey ? `? ${str}
+${indent}:` : `${str}:`;
+        if (this.comment) {
+          str = addComment(str, ctx.indent, this.comment);
+          if (onComment) onComment();
+        }
+        let vcb = "";
+        let valueComment = null;
+        if (value instanceof Node11) {
+          if (value.spaceBefore) vcb = "\n";
+          if (value.commentBefore) {
+            const cs = value.commentBefore.replace(/^/gm, `${ctx.indent}#`);
+            vcb += `
+${cs}`;
+          }
+          valueComment = value.comment;
+        } else if (value && typeof value === "object") {
+          value = doc.schema.createNode(value, true);
+        }
+        ctx.implicitKey = false;
+        if (!explicitKey && !this.comment && value instanceof Scalar2) ctx.indentAtStart = str.length + 1;
+        chompKeep = false;
+        if (!indentSeq && indentSize >= 2 && !ctx.inFlow && !explicitKey && value instanceof YAMLSeq2 && value.type !== PlainValue.Type.FLOW_SEQ && !value.tag && !doc.anchors.getName(value)) {
+          ctx.indent = ctx.indent.substr(2);
+        }
+        const valueStr = stringify3(value, ctx, () => valueComment = null, () => chompKeep = true);
+        let ws = " ";
+        if (vcb || this.comment) {
+          ws = `${vcb}
+${ctx.indent}`;
+        } else if (!explicitKey && value instanceof Collection2) {
+          const flow = valueStr[0] === "[" || valueStr[0] === "{";
+          if (!flow || valueStr.includes("\n")) ws = `
+${ctx.indent}`;
+        } else if (valueStr[0] === "\n") ws = "";
+        if (chompKeep && !valueComment && onChompKeep) onChompKeep();
+        return addComment(str + ws + valueStr, ctx.indent, valueComment);
+      }
+    };
+    PlainValue._defineProperty(Pair2, "Type", {
+      PAIR: "PAIR",
+      MERGE_PAIR: "MERGE_PAIR"
+    });
+    var getAliasCount = (node, anchors) => {
+      if (node instanceof Alias2) {
+        const anchor = anchors.get(node.source);
+        return anchor.count * anchor.aliasCount;
+      } else if (node instanceof Collection2) {
+        let count2 = 0;
+        for (const item of node.items) {
+          const c = getAliasCount(item, anchors);
+          if (c > count2) count2 = c;
+        }
+        return count2;
+      } else if (node instanceof Pair2) {
+        const kc = getAliasCount(node.key, anchors);
+        const vc = getAliasCount(node.value, anchors);
+        return Math.max(kc, vc);
+      }
+      return 1;
+    };
+    var Alias2 = class _Alias extends Node11 {
+      static stringify({
+        range: range4,
+        source
+      }, {
+        anchors,
+        doc,
+        implicitKey,
+        inStringifyKey
+      }) {
+        let anchor = Object.keys(anchors).find((a) => anchors[a] === source);
+        if (!anchor && inStringifyKey) anchor = doc.anchors.getName(source) || doc.anchors.newName();
+        if (anchor) return `*${anchor}${implicitKey ? " " : ""}`;
+        const msg = doc.anchors.getName(source) ? "Alias node must be after source node" : "Source node not found for alias node";
+        throw new Error(`${msg} [${range4}]`);
+      }
+      constructor(source) {
+        super();
+        this.source = source;
+        this.type = PlainValue.Type.ALIAS;
+      }
+      set tag(t) {
+        throw new Error("Alias nodes cannot have tags");
+      }
+      toJSON(arg, ctx) {
+        if (!ctx) return toJSON(this.source, arg, ctx);
+        const {
+          anchors,
+          maxAliasCount
+        } = ctx;
+        const anchor = anchors.get(this.source);
+        if (!anchor || anchor.res === void 0) {
+          const msg = "This should not happen: Alias anchor was not resolved?";
+          if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+          else throw new ReferenceError(msg);
+        }
+        if (maxAliasCount >= 0) {
+          anchor.count += 1;
+          if (anchor.aliasCount === 0) anchor.aliasCount = getAliasCount(this.source, anchors);
+          if (anchor.count * anchor.aliasCount > maxAliasCount) {
+            const msg = "Excessive alias count indicates a resource exhaustion attack";
+            if (this.cstNode) throw new PlainValue.YAMLReferenceError(this.cstNode, msg);
+            else throw new ReferenceError(msg);
+          }
+        }
+        return anchor.res;
+      }
+      // Only called when stringifying an alias mapping key while constructing
+      // Object output.
+      toString(ctx) {
+        return _Alias.stringify(this, ctx);
+      }
+    };
+    PlainValue._defineProperty(Alias2, "default", true);
+    function findPair(items, key) {
+      const k = key instanceof Scalar2 ? key.value : key;
+      for (const it of items) {
+        if (it instanceof Pair2) {
+          if (it.key === key || it.key === k) return it;
+          if (it.key && it.key.value === k) return it;
+        }
+      }
+      return void 0;
+    }
+    var YAMLMap2 = class extends Collection2 {
+      add(pair, overwrite) {
+        if (!pair) pair = new Pair2(pair);
+        else if (!(pair instanceof Pair2)) pair = new Pair2(pair.key || pair, pair.value);
+        const prev = findPair(this.items, pair.key);
+        const sortEntries = this.schema && this.schema.sortMapEntries;
+        if (prev) {
+          if (overwrite) prev.value = pair.value;
+          else throw new Error(`Key ${pair.key} already set`);
+        } else if (sortEntries) {
+          const i = this.items.findIndex((item) => sortEntries(pair, item) < 0);
+          if (i === -1) this.items.push(pair);
+          else this.items.splice(i, 0, pair);
+        } else {
+          this.items.push(pair);
+        }
+      }
+      delete(key) {
+        const it = findPair(this.items, key);
+        if (!it) return false;
+        const del = this.items.splice(this.items.indexOf(it), 1);
+        return del.length > 0;
+      }
+      get(key, keepScalar) {
+        const it = findPair(this.items, key);
+        const node = it && it.value;
+        return !keepScalar && node instanceof Scalar2 ? node.value : node;
+      }
+      has(key) {
+        return !!findPair(this.items, key);
+      }
+      set(key, value) {
+        this.add(new Pair2(key, value), true);
+      }
+      /**
+       * @param {*} arg ignored
+       * @param {*} ctx Conversion context, originally set in Document#toJSON()
+       * @param {Class} Type If set, forces the returned collection type
+       * @returns {*} Instance of Type, Map, or Object
+       */
+      toJSON(_, ctx, Type) {
+        const map = Type ? new Type() : ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {};
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const item of this.items) item.addToJSMap(ctx, map);
+        return map;
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        for (const item of this.items) {
+          if (!(item instanceof Pair2)) throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`);
+        }
+        return super.toString(ctx, {
+          blockItem: (n) => n.str,
+          flowChars: {
+            start: "{",
+            end: "}"
+          },
+          isMap: true,
+          itemIndent: ctx.indent || ""
+        }, onComment, onChompKeep);
+      }
+    };
+    var MERGE_KEY = "<<";
+    var Merge2 = class extends Pair2 {
+      constructor(pair) {
+        if (pair instanceof Pair2) {
+          let seq = pair.value;
+          if (!(seq instanceof YAMLSeq2)) {
+            seq = new YAMLSeq2();
+            seq.items.push(pair.value);
+            seq.range = pair.value.range;
+          }
+          super(pair.key, seq);
+          this.range = pair.range;
+        } else {
+          super(new Scalar2(MERGE_KEY), new YAMLSeq2());
+        }
+        this.type = Pair2.Type.MERGE_PAIR;
+      }
+      // If the value associated with a merge key is a single mapping node, each of
+      // its key/value pairs is inserted into the current mapping, unless the key
+      // already exists in it. If the value associated with the merge key is a
+      // sequence, then this sequence is expected to contain mapping nodes and each
+      // of these nodes is merged in turn according to its order in the sequence.
+      // Keys in mapping nodes earlier in the sequence override keys specified in
+      // later mapping nodes. -- http://yaml.org/type/merge.html
+      addToJSMap(ctx, map) {
+        for (const {
+          source
+        } of this.value.items) {
+          if (!(source instanceof YAMLMap2)) throw new Error("Merge sources must be maps");
+          const srcMap = source.toJSON(null, ctx, Map);
+          for (const [key, value] of srcMap) {
+            if (map instanceof Map) {
+              if (!map.has(key)) map.set(key, value);
+            } else if (map instanceof Set) {
+              map.add(key);
+            } else if (!Object.prototype.hasOwnProperty.call(map, key)) {
+              Object.defineProperty(map, key, {
+                value,
+                writable: true,
+                enumerable: true,
+                configurable: true
+              });
+            }
+          }
+        }
+        return map;
+      }
+      toString(ctx, onComment) {
+        const seq = this.value;
+        if (seq.items.length > 1) return super.toString(ctx, onComment);
+        this.value = seq.items[0];
+        const str = super.toString(ctx, onComment);
+        this.value = seq;
+        return str;
+      }
+    };
+    var binaryOptions2 = {
+      defaultType: PlainValue.Type.BLOCK_LITERAL,
+      lineWidth: 76
+    };
+    var boolOptions2 = {
+      trueStr: "true",
+      falseStr: "false"
+    };
+    var intOptions2 = {
+      asBigInt: false
+    };
+    var nullOptions2 = {
+      nullStr: "null"
+    };
+    var strOptions2 = {
+      defaultType: PlainValue.Type.PLAIN,
+      doubleQuoted: {
+        jsonEncoding: false,
+        minMultiLineLength: 40
+      },
+      fold: {
+        lineWidth: 80,
+        minContentWidth: 20
+      }
+    };
+    function resolveScalar(str, tags, scalarFallback) {
+      for (const {
+        format,
+        test,
+        resolve: resolve6
+      } of tags) {
+        if (test) {
+          const match = str.match(test);
+          if (match) {
+            let res = resolve6.apply(null, match);
+            if (!(res instanceof Scalar2)) res = new Scalar2(res);
+            if (format) res.format = format;
+            return res;
+          }
+        }
+      }
+      if (scalarFallback) str = scalarFallback(str);
+      return new Scalar2(str);
+    }
+    var FOLD_FLOW = "flow";
+    var FOLD_BLOCK = "block";
+    var FOLD_QUOTED = "quoted";
+    var consumeMoreIndentedLines = (text, i) => {
+      let ch = text[i + 1];
+      while (ch === " " || ch === "	") {
+        do {
+          ch = text[i += 1];
+        } while (ch && ch !== "\n");
+        ch = text[i + 1];
+      }
+      return i;
+    };
+    function foldFlowLines(text, indent, mode, {
+      indentAtStart,
+      lineWidth = 80,
+      minContentWidth = 20,
+      onFold,
+      onOverflow
+    }) {
+      if (!lineWidth || lineWidth < 0) return text;
+      const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length);
+      if (text.length <= endStep) return text;
+      const folds = [];
+      const escapedFolds = {};
+      let end = lineWidth - indent.length;
+      if (typeof indentAtStart === "number") {
+        if (indentAtStart > lineWidth - Math.max(2, minContentWidth)) folds.push(0);
+        else end = lineWidth - indentAtStart;
+      }
+      let split = void 0;
+      let prev = void 0;
+      let overflow = false;
+      let i = -1;
+      let escStart = -1;
+      let escEnd = -1;
+      if (mode === FOLD_BLOCK) {
+        i = consumeMoreIndentedLines(text, i);
+        if (i !== -1) end = i + endStep;
+      }
+      for (let ch; ch = text[i += 1]; ) {
+        if (mode === FOLD_QUOTED && ch === "\\") {
+          escStart = i;
+          switch (text[i + 1]) {
+            case "x":
+              i += 3;
+              break;
+            case "u":
+              i += 5;
+              break;
+            case "U":
+              i += 9;
+              break;
+            default:
+              i += 1;
+          }
+          escEnd = i;
+        }
+        if (ch === "\n") {
+          if (mode === FOLD_BLOCK) i = consumeMoreIndentedLines(text, i);
+          end = i + endStep;
+          split = void 0;
+        } else {
+          if (ch === " " && prev && prev !== " " && prev !== "\n" && prev !== "	") {
+            const next = text[i + 1];
+            if (next && next !== " " && next !== "\n" && next !== "	") split = i;
+          }
+          if (i >= end) {
+            if (split) {
+              folds.push(split);
+              end = split + endStep;
+              split = void 0;
+            } else if (mode === FOLD_QUOTED) {
+              while (prev === " " || prev === "	") {
+                prev = ch;
+                ch = text[i += 1];
+                overflow = true;
+              }
+              const j = i > escEnd + 1 ? i - 2 : escStart - 1;
+              if (escapedFolds[j]) return text;
+              folds.push(j);
+              escapedFolds[j] = true;
+              end = j + endStep;
+              split = void 0;
+            } else {
+              overflow = true;
+            }
+          }
+        }
+        prev = ch;
+      }
+      if (overflow && onOverflow) onOverflow();
+      if (folds.length === 0) return text;
+      if (onFold) onFold();
+      let res = text.slice(0, folds[0]);
+      for (let i2 = 0; i2 < folds.length; ++i2) {
+        const fold = folds[i2];
+        const end2 = folds[i2 + 1] || text.length;
+        if (fold === 0) res = `
+${indent}${text.slice(0, end2)}`;
+        else {
+          if (mode === FOLD_QUOTED && escapedFolds[fold]) res += `${text[fold]}\\`;
+          res += `
+${indent}${text.slice(fold + 1, end2)}`;
+        }
+      }
+      return res;
+    }
+    var getFoldOptions = ({
+      indentAtStart
+    }) => indentAtStart ? Object.assign({
+      indentAtStart
+    }, strOptions2.fold) : strOptions2.fold;
+    var containsDocumentMarker = (str) => /^(%|---|\.\.\.)/m.test(str);
+    function lineLengthOverLimit(str, lineWidth, indentLength) {
+      if (!lineWidth || lineWidth < 0) return false;
+      const limit = lineWidth - indentLength;
+      const strLen = str.length;
+      if (strLen <= limit) return false;
+      for (let i = 0, start = 0; i < strLen; ++i) {
+        if (str[i] === "\n") {
+          if (i - start > limit) return true;
+          start = i + 1;
+          if (strLen - start <= limit) return false;
+        }
+      }
+      return true;
+    }
+    function doubleQuotedString(value, ctx) {
+      const {
+        implicitKey
+      } = ctx;
+      const {
+        jsonEncoding,
+        minMultiLineLength
+      } = strOptions2.doubleQuoted;
+      const json = JSON.stringify(value);
+      if (jsonEncoding) return json;
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      let str = "";
+      let start = 0;
+      for (let i = 0, ch = json[i]; ch; ch = json[++i]) {
+        if (ch === " " && json[i + 1] === "\\" && json[i + 2] === "n") {
+          str += json.slice(start, i) + "\\ ";
+          i += 1;
+          start = i;
+          ch = "\\";
+        }
+        if (ch === "\\") switch (json[i + 1]) {
+          case "u":
+            {
+              str += json.slice(start, i);
+              const code = json.substr(i + 2, 4);
+              switch (code) {
+                case "0000":
+                  str += "\\0";
+                  break;
+                case "0007":
+                  str += "\\a";
+                  break;
+                case "000b":
+                  str += "\\v";
+                  break;
+                case "001b":
+                  str += "\\e";
+                  break;
+                case "0085":
+                  str += "\\N";
+                  break;
+                case "00a0":
+                  str += "\\_";
+                  break;
+                case "2028":
+                  str += "\\L";
+                  break;
+                case "2029":
+                  str += "\\P";
+                  break;
+                default:
+                  if (code.substr(0, 2) === "00") str += "\\x" + code.substr(2);
+                  else str += json.substr(i, 6);
+              }
+              i += 5;
+              start = i + 1;
+            }
+            break;
+          case "n":
+            if (implicitKey || json[i + 2] === '"' || json.length < minMultiLineLength) {
+              i += 1;
+            } else {
+              str += json.slice(start, i) + "\n\n";
+              while (json[i + 2] === "\\" && json[i + 3] === "n" && json[i + 4] !== '"') {
+                str += "\n";
+                i += 2;
+              }
+              str += indent;
+              if (json[i + 2] === " ") str += "\\";
+              i += 1;
+              start = i + 1;
+            }
+            break;
+          default:
+            i += 1;
+        }
+      }
+      str = start ? str + json.slice(start) : json;
+      return implicitKey ? str : foldFlowLines(str, indent, FOLD_QUOTED, getFoldOptions(ctx));
+    }
+    function singleQuotedString(value, ctx) {
+      if (ctx.implicitKey) {
+        if (/\n/.test(value)) return doubleQuotedString(value, ctx);
+      } else {
+        if (/[ \t]\n|\n[ \t]/.test(value)) return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
+      const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$&
+${indent}`) + "'";
+      return ctx.implicitKey ? res : foldFlowLines(res, indent, FOLD_FLOW, getFoldOptions(ctx));
+    }
+    function blockString({
+      comment,
+      type,
+      value
+    }, ctx, onComment, onChompKeep) {
+      if (/\n[\t ]+$/.test(value) || /^\s*$/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      const indent = ctx.indent || (ctx.forceBlockIndent || containsDocumentMarker(value) ? "  " : "");
+      const indentSize = indent ? "2" : "1";
+      const literal = type === PlainValue.Type.BLOCK_FOLDED ? false : type === PlainValue.Type.BLOCK_LITERAL ? true : !lineLengthOverLimit(value, strOptions2.fold.lineWidth, indent.length);
+      let header = literal ? "|" : ">";
+      if (!value) return header + "\n";
+      let wsStart = "";
+      let wsEnd = "";
+      value = value.replace(/[\n\t ]*$/, (ws) => {
+        const n = ws.indexOf("\n");
+        if (n === -1) {
+          header += "-";
+        } else if (value === ws || n !== ws.length - 1) {
+          header += "+";
+          if (onChompKeep) onChompKeep();
+        }
+        wsEnd = ws.replace(/\n$/, "");
+        return "";
+      }).replace(/^[\n ]*/, (ws) => {
+        if (ws.indexOf(" ") !== -1) header += indentSize;
+        const m = ws.match(/ +$/);
+        if (m) {
+          wsStart = ws.slice(0, -m[0].length);
+          return m[0];
+        } else {
+          wsStart = ws;
+          return "";
+        }
+      });
+      if (wsEnd) wsEnd = wsEnd.replace(/\n+(?!\n|$)/g, `$&${indent}`);
+      if (wsStart) wsStart = wsStart.replace(/\n+/g, `$&${indent}`);
+      if (comment) {
+        header += " #" + comment.replace(/ ?[\r\n]+/g, " ");
+        if (onComment) onComment();
+      }
+      if (!value) return `${header}${indentSize}
+${indent}${wsEnd}`;
+      if (literal) {
+        value = value.replace(/\n+/g, `$&${indent}`);
+        return `${header}
+${indent}${wsStart}${value}${wsEnd}`;
+      }
+      value = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`);
+      const body = foldFlowLines(`${wsStart}${value}${wsEnd}`, indent, FOLD_BLOCK, strOptions2.fold);
+      return `${header}
+${indent}${body}`;
+    }
+    function plainString(item, ctx, onComment, onChompKeep) {
+      const {
+        comment,
+        type,
+        value
+      } = item;
+      const {
+        actualString,
+        implicitKey,
+        indent,
+        inFlow
+      } = ctx;
+      if (implicitKey && /[\n[\]{},]/.test(value) || inFlow && /[[\]{},]/.test(value)) {
+        return doubleQuotedString(value, ctx);
+      }
+      if (!value || /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
+        return implicitKey || inFlow || value.indexOf("\n") === -1 ? value.indexOf('"') !== -1 && value.indexOf("'") === -1 ? singleQuotedString(value, ctx) : doubleQuotedString(value, ctx) : blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (!implicitKey && !inFlow && type !== PlainValue.Type.PLAIN && value.indexOf("\n") !== -1) {
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      if (indent === "" && containsDocumentMarker(value)) {
+        ctx.forceBlockIndent = true;
+        return blockString(item, ctx, onComment, onChompKeep);
+      }
+      const str = value.replace(/\n+/g, `$&
+${indent}`);
+      if (actualString) {
+        const {
+          tags
+        } = ctx.doc.schema;
+        const resolved = resolveScalar(str, tags, tags.scalarFallback).value;
+        if (typeof resolved !== "string") return doubleQuotedString(value, ctx);
+      }
+      const body = implicitKey ? str : foldFlowLines(str, indent, FOLD_FLOW, getFoldOptions(ctx));
+      if (comment && !inFlow && (body.indexOf("\n") !== -1 || comment.indexOf("\n") !== -1)) {
+        if (onComment) onComment();
+        return addCommentBefore(body, indent, comment);
+      }
+      return body;
+    }
+    function stringifyString(item, ctx, onComment, onChompKeep) {
+      const {
+        defaultType
+      } = strOptions2;
+      const {
+        implicitKey,
+        inFlow
+      } = ctx;
+      let {
+        type,
+        value
+      } = item;
+      if (typeof value !== "string") {
+        value = String(value);
+        item = Object.assign({}, item, {
+          value
+        });
+      }
+      const _stringify = (_type) => {
+        switch (_type) {
+          case PlainValue.Type.BLOCK_FOLDED:
+          case PlainValue.Type.BLOCK_LITERAL:
+            return blockString(item, ctx, onComment, onChompKeep);
+          case PlainValue.Type.QUOTE_DOUBLE:
+            return doubleQuotedString(value, ctx);
+          case PlainValue.Type.QUOTE_SINGLE:
+            return singleQuotedString(value, ctx);
+          case PlainValue.Type.PLAIN:
+            return plainString(item, ctx, onComment, onChompKeep);
+          default:
+            return null;
+        }
+      };
+      if (type !== PlainValue.Type.QUOTE_DOUBLE && /[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(value)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      } else if ((implicitKey || inFlow) && (type === PlainValue.Type.BLOCK_FOLDED || type === PlainValue.Type.BLOCK_LITERAL)) {
+        type = PlainValue.Type.QUOTE_DOUBLE;
+      }
+      let res = _stringify(type);
+      if (res === null) {
+        res = _stringify(defaultType);
+        if (res === null) throw new Error(`Unsupported default string type ${defaultType}`);
+      }
+      return res;
+    }
+    function stringifyNumber({
+      format,
+      minFractionDigits,
+      tag,
+      value
+    }) {
+      if (typeof value === "bigint") return String(value);
+      if (!isFinite(value)) return isNaN(value) ? ".nan" : value < 0 ? "-.inf" : ".inf";
+      let n = JSON.stringify(value);
+      if (!format && minFractionDigits && (!tag || tag === "tag:yaml.org,2002:float") && /^\d/.test(n)) {
+        let i = n.indexOf(".");
+        if (i < 0) {
+          i = n.length;
+          n += ".";
+        }
+        let d = minFractionDigits - (n.length - i - 1);
+        while (d-- > 0) n += "0";
+      }
+      return n;
+    }
+    function checkFlowCollectionEnd(errors, cst) {
+      let char, name;
+      switch (cst.type) {
+        case PlainValue.Type.FLOW_MAP:
+          char = "}";
+          name = "flow map";
+          break;
+        case PlainValue.Type.FLOW_SEQ:
+          char = "]";
+          name = "flow sequence";
+          break;
+        default:
+          errors.push(new PlainValue.YAMLSemanticError(cst, "Not a flow collection!?"));
+          return;
+      }
+      let lastItem;
+      for (let i = cst.items.length - 1; i >= 0; --i) {
+        const item = cst.items[i];
+        if (!item || item.type !== PlainValue.Type.COMMENT) {
+          lastItem = item;
+          break;
+        }
+      }
+      if (lastItem && lastItem.char !== char) {
+        const msg = `Expected ${name} to end with ${char}`;
+        let err;
+        if (typeof lastItem.offset === "number") {
+          err = new PlainValue.YAMLSemanticError(cst, msg);
+          err.offset = lastItem.offset + 1;
+        } else {
+          err = new PlainValue.YAMLSemanticError(lastItem, msg);
+          if (lastItem.range && lastItem.range.end) err.offset = lastItem.range.end - lastItem.range.start;
+        }
+        errors.push(err);
+      }
+    }
+    function checkFlowCommentSpace(errors, comment) {
+      const prev = comment.context.src[comment.range.start - 1];
+      if (prev !== "\n" && prev !== "	" && prev !== " ") {
+        const msg = "Comments must be separated from other tokens by white space characters";
+        errors.push(new PlainValue.YAMLSemanticError(comment, msg));
+      }
+    }
+    function getLongKeyError(source, key) {
+      const sk = String(key);
+      const k = sk.substr(0, 8) + "..." + sk.substr(-8);
+      return new PlainValue.YAMLSemanticError(source, `The "${k}" key is too long`);
+    }
+    function resolveComments(collection, comments) {
+      for (const {
+        afterKey,
+        before,
+        comment
+      } of comments) {
+        let item = collection.items[before];
+        if (!item) {
+          if (comment !== void 0) {
+            if (collection.comment) collection.comment += "\n" + comment;
+            else collection.comment = comment;
+          }
+        } else {
+          if (afterKey && item.value) item = item.value;
+          if (comment === void 0) {
+            if (afterKey || !item.commentBefore) item.spaceBefore = true;
+          } else {
+            if (item.commentBefore) item.commentBefore += "\n" + comment;
+            else item.commentBefore = comment;
+          }
+        }
+      }
+    }
+    function resolveString(doc, node) {
+      const res = node.strValue;
+      if (!res) return "";
+      if (typeof res === "string") return res;
+      res.errors.forEach((error) => {
+        if (!error.source) error.source = node;
+        doc.errors.push(error);
+      });
+      return res.str;
+    }
+    function resolveTagHandle(doc, node) {
+      const {
+        handle,
+        suffix
+      } = node.tag;
+      let prefix = doc.tagPrefixes.find((p) => p.handle === handle);
+      if (!prefix) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        if (dtp) prefix = dtp.find((p) => p.handle === handle);
+        if (!prefix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag handle is non-default and was not declared.`);
+      }
+      if (!suffix) throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag has no suffix.`);
+      if (handle === "!" && (doc.version || doc.options.version) === "1.0") {
+        if (suffix[0] === "^") {
+          doc.warnings.push(new PlainValue.YAMLWarning(node, "YAML 1.0 ^ tag expansion is not supported"));
+          return suffix;
+        }
+        if (/[:/]/.test(suffix)) {
+          const vocab = suffix.match(/^([a-z0-9-]+)\/(.*)/i);
+          return vocab ? `tag:${vocab[1]}.yaml.org,2002:${vocab[2]}` : `tag:${suffix}`;
+        }
+      }
+      return prefix.prefix + decodeURIComponent(suffix);
+    }
+    function resolveTagName(doc, node) {
+      const {
+        tag,
+        type
+      } = node;
+      let nonSpecific = false;
+      if (tag) {
+        const {
+          handle,
+          suffix,
+          verbatim
+        } = tag;
+        if (verbatim) {
+          if (verbatim !== "!" && verbatim !== "!!") return verbatim;
+          const msg = `Verbatim tags aren't resolved, so ${verbatim} is invalid.`;
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        } else if (handle === "!" && !suffix) {
+          nonSpecific = true;
+        } else {
+          try {
+            return resolveTagHandle(doc, node);
+          } catch (error) {
+            doc.errors.push(error);
+          }
+        }
+      }
+      switch (type) {
+        case PlainValue.Type.BLOCK_FOLDED:
+        case PlainValue.Type.BLOCK_LITERAL:
+        case PlainValue.Type.QUOTE_DOUBLE:
+        case PlainValue.Type.QUOTE_SINGLE:
+          return PlainValue.defaultTags.STR;
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        case PlainValue.Type.PLAIN:
+          return nonSpecific ? PlainValue.defaultTags.STR : null;
+        default:
+          return null;
+      }
+    }
+    function resolveByTagName(doc, node, tagName) {
+      const {
+        tags
+      } = doc.schema;
+      const matchWithTest = [];
+      for (const tag of tags) {
+        if (tag.tag === tagName) {
+          if (tag.test) matchWithTest.push(tag);
+          else {
+            const res = tag.resolve(doc, node);
+            return res instanceof Collection2 ? res : new Scalar2(res);
+          }
+        }
+      }
+      const str = resolveString(doc, node);
+      if (typeof str === "string" && matchWithTest.length > 0) return resolveScalar(str, matchWithTest, tags.scalarFallback);
+      return null;
+    }
+    function getFallbackTagName({
+      type
+    }) {
+      switch (type) {
+        case PlainValue.Type.FLOW_MAP:
+        case PlainValue.Type.MAP:
+          return PlainValue.defaultTags.MAP;
+        case PlainValue.Type.FLOW_SEQ:
+        case PlainValue.Type.SEQ:
+          return PlainValue.defaultTags.SEQ;
+        default:
+          return PlainValue.defaultTags.STR;
+      }
+    }
+    function resolveTag(doc, node, tagName) {
+      try {
+        const res = resolveByTagName(doc, node, tagName);
+        if (res) {
+          if (tagName && node.tag) res.tag = tagName;
+          return res;
+        }
+      } catch (error) {
+        if (error instanceof PlainValue.YAMLError) {
+          if (!error.source) error.source = node;
+          doc.errors.push(error);
+        } else {
+          const msg = error instanceof Error ? error.message : String(error);
+          doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+        }
+        return null;
+      }
+      try {
+        const fallback = getFallbackTagName(node);
+        if (!fallback) throw new Error(`The tag ${tagName} is unavailable`);
+        const msg = `The tag ${tagName} is unavailable, falling back to ${fallback}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(node, msg));
+        const res = resolveByTagName(doc, node, fallback);
+        res.tag = tagName;
+        return res;
+      } catch (error) {
+        const refError = new PlainValue.YAMLReferenceError(node, error.message);
+        refError.stack = error.stack;
+        doc.errors.push(refError);
+        return null;
+      }
+    }
+    var isCollectionItem = (node) => {
+      if (!node) return false;
+      const {
+        type
+      } = node;
+      return type === PlainValue.Type.MAP_KEY || type === PlainValue.Type.MAP_VALUE || type === PlainValue.Type.SEQ_ITEM;
+    };
+    function resolveNodeProps(errors, node) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let hasAnchor = false;
+      let hasTag = false;
+      const props = isCollectionItem(node.context.parent) ? node.context.parent.props.concat(node.props) : node.props;
+      for (const {
+        start,
+        end
+      } of props) {
+        switch (node.context.src[start]) {
+          case PlainValue.Char.COMMENT: {
+            if (!node.commentHasRequiredWhitespace(start)) {
+              const msg = "Comments must be separated from other tokens by white space characters";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            const {
+              header,
+              valueRange
+            } = node;
+            const cc = valueRange && (start > valueRange.start || header && start > header.start) ? comments.after : comments.before;
+            cc.push(node.context.src.slice(start + 1, end));
+            break;
+          }
+          // Actual anchor & tag resolution is handled by schema, here we just complain
+          case PlainValue.Char.ANCHOR:
+            if (hasAnchor) {
+              const msg = "A node can have at most one anchor";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasAnchor = true;
+            break;
+          case PlainValue.Char.TAG:
+            if (hasTag) {
+              const msg = "A node can have at most one tag";
+              errors.push(new PlainValue.YAMLSemanticError(node, msg));
+            }
+            hasTag = true;
+            break;
+        }
+      }
+      return {
+        comments,
+        hasAnchor,
+        hasTag
+      };
+    }
+    function resolveNodeValue(doc, node) {
+      const {
+        anchors,
+        errors,
+        schema
+      } = doc;
+      if (node.type === PlainValue.Type.ALIAS) {
+        const name = node.rawValue;
+        const src = anchors.getNode(name);
+        if (!src) {
+          const msg = `Aliased anchor not found: ${name}`;
+          errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+        const res = new Alias2(src);
+        anchors._cstAliases.push(res);
+        return res;
+      }
+      const tagName = resolveTagName(doc, node);
+      if (tagName) return resolveTag(doc, node, tagName);
+      if (node.type !== PlainValue.Type.PLAIN) {
+        const msg = `Failed to resolve ${node.type} node here`;
+        errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+        return null;
+      }
+      try {
+        const str = resolveString(doc, node);
+        return resolveScalar(str, schema.tags, schema.tags.scalarFallback);
+      } catch (error) {
+        if (!error.source) error.source = node;
+        errors.push(error);
+        return null;
+      }
+    }
+    function resolveNode(doc, node) {
+      if (!node) return null;
+      if (node.error) doc.errors.push(node.error);
+      const {
+        comments,
+        hasAnchor,
+        hasTag
+      } = resolveNodeProps(doc.errors, node);
+      if (hasAnchor) {
+        const {
+          anchors
+        } = doc;
+        const name = node.anchor;
+        const prev = anchors.getNode(name);
+        if (prev) anchors.map[anchors.newName(name)] = prev;
+        anchors.map[name] = node;
+      }
+      if (node.type === PlainValue.Type.ALIAS && (hasAnchor || hasTag)) {
+        const msg = "An alias node must not specify any properties";
+        doc.errors.push(new PlainValue.YAMLSemanticError(node, msg));
+      }
+      const res = resolveNodeValue(doc, node);
+      if (res) {
+        res.range = [node.range.start, node.range.end];
+        if (doc.options.keepCstNodes) res.cstNode = node;
+        if (doc.options.keepNodeTypes) res.type = node.type;
+        const cb = comments.before.join("\n");
+        if (cb) {
+          res.commentBefore = res.commentBefore ? `${res.commentBefore}
+${cb}` : cb;
+        }
+        const ca = comments.after.join("\n");
+        if (ca) res.comment = res.comment ? `${res.comment}
+${ca}` : ca;
+      }
+      return node.resolved = res;
+    }
+    function resolveMap(doc, cst) {
+      if (cst.type !== PlainValue.Type.MAP && cst.type !== PlainValue.Type.FLOW_MAP) {
+        const msg = `A ${cst.type} node cannot be resolved as a mapping`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_MAP ? resolveFlowMapItems(doc, cst) : resolveBlockMapItems(doc, cst);
+      const map = new YAMLMap2();
+      map.items = items;
+      resolveComments(map, comments);
+      let hasCollectionKey = false;
+      for (let i = 0; i < items.length; ++i) {
+        const {
+          key: iKey
+        } = items[i];
+        if (iKey instanceof Collection2) hasCollectionKey = true;
+        if (doc.schema.merge && iKey && iKey.value === MERGE_KEY) {
+          items[i] = new Merge2(items[i]);
+          const sources = items[i].value.items;
+          let error = null;
+          sources.some((node) => {
+            if (node instanceof Alias2) {
+              const {
+                type
+              } = node.source;
+              if (type === PlainValue.Type.MAP || type === PlainValue.Type.FLOW_MAP) return false;
+              return error = "Merge nodes aliases can only point to maps";
+            }
+            return error = "Merge nodes can only have Alias nodes as values";
+          });
+          if (error) doc.errors.push(new PlainValue.YAMLSemanticError(cst, error));
+        } else {
+          for (let j = i + 1; j < items.length; ++j) {
+            const {
+              key: jKey
+            } = items[j];
+            if (iKey === jKey || iKey && jKey && Object.prototype.hasOwnProperty.call(iKey, "value") && iKey.value === jKey.value) {
+              const msg = `Map keys must be unique; "${iKey}" is repeated`;
+              doc.errors.push(new PlainValue.YAMLSemanticError(cst, msg));
+              break;
+            }
+          }
+        }
+      }
+      if (hasCollectionKey && !doc.options.mapAsMap) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = map;
+      return map;
+    }
+    var valueHasPairComment = ({
+      context: {
+        lineStart,
+        node,
+        src
+      },
+      props
+    }) => {
+      if (props.length === 0) return false;
+      const {
+        start
+      } = props[0];
+      if (node && start > node.valueRange.start) return false;
+      if (src[start] !== PlainValue.Char.COMMENT) return false;
+      for (let i = lineStart; i < start; ++i) if (src[i] === "\n") return false;
+      return true;
+    };
+    function resolvePairComment(item, pair) {
+      if (!valueHasPairComment(item)) return;
+      const comment = item.getPropValue(0, PlainValue.Char.COMMENT, true);
+      let found = false;
+      const cb = pair.value.commentBefore;
+      if (cb && cb.startsWith(comment)) {
+        pair.value.commentBefore = cb.substr(comment.length + 1);
+        found = true;
+      } else {
+        const cc = pair.value.comment;
+        if (!item.node && cc && cc.startsWith(comment)) {
+          pair.value.comment = cc.substr(comment.length + 1);
+          found = true;
+        }
+      }
+      if (found) pair.comment = comment;
+    }
+    function resolveBlockMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let keyStart = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              afterKey: !!key,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              afterKey: !!key,
+              before: items.length,
+              comment: item.comment
+            });
+            break;
+          case PlainValue.Type.MAP_KEY:
+            if (key !== void 0) items.push(new Pair2(key));
+            if (item.error) doc.errors.push(item.error);
+            key = resolveNode(doc, item.node);
+            keyStart = null;
+            break;
+          case PlainValue.Type.MAP_VALUE:
+            {
+              if (key === void 0) key = null;
+              if (item.error) doc.errors.push(item.error);
+              if (!item.context.atLineStart && item.node && item.node.type === PlainValue.Type.MAP && !item.node.context.atLineStart) {
+                const msg = "Nested mappings are not allowed in compact mappings";
+                doc.errors.push(new PlainValue.YAMLSemanticError(item.node, msg));
+              }
+              let valueNode = item.node;
+              if (!valueNode && item.props.length > 0) {
+                valueNode = new PlainValue.PlainValue(PlainValue.Type.PLAIN, []);
+                valueNode.context = {
+                  parent: item,
+                  src: item.context.src
+                };
+                const pos = item.range.start + 1;
+                valueNode.range = {
+                  start: pos,
+                  end: pos
+                };
+                valueNode.valueRange = {
+                  start: pos,
+                  end: pos
+                };
+                if (typeof item.range.origStart === "number") {
+                  const origPos = item.range.origStart + 1;
+                  valueNode.range.origStart = valueNode.range.origEnd = origPos;
+                  valueNode.valueRange.origStart = valueNode.valueRange.origEnd = origPos;
+                }
+              }
+              const pair = new Pair2(key, resolveNode(doc, valueNode));
+              resolvePairComment(item, pair);
+              items.push(pair);
+              if (key && typeof keyStart === "number") {
+                if (item.range.start > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+              }
+              key = void 0;
+              keyStart = null;
+            }
+            break;
+          default:
+            if (key !== void 0) items.push(new Pair2(key));
+            key = resolveNode(doc, item);
+            keyStart = item.range.start;
+            if (item.error) doc.errors.push(item.error);
+            next: for (let j = i + 1; ; ++j) {
+              const nextItem = cst.items[j];
+              switch (nextItem && nextItem.type) {
+                case PlainValue.Type.BLANK_LINE:
+                case PlainValue.Type.COMMENT:
+                  continue next;
+                case PlainValue.Type.MAP_VALUE:
+                  break next;
+                default: {
+                  const msg = "Implicit map keys need to be followed by map values";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+                  break next;
+                }
+              }
+            }
+            if (item.valueRangeContainsNewline) {
+              const msg = "Implicit map keys need to be on a single line";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+        }
+      }
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowMapItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let key = void 0;
+      let explicitKey = false;
+      let next = "{";
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char === "?" && key === void 0 && !explicitKey) {
+            explicitKey = true;
+            next = ":";
+            continue;
+          }
+          if (char === ":") {
+            if (key === void 0) key = null;
+            if (next === ":") {
+              next = ",";
+              continue;
+            }
+          } else {
+            if (explicitKey) {
+              if (key === void 0 && char !== ",") key = null;
+              explicitKey = false;
+            }
+            if (key !== void 0) {
+              items.push(new Pair2(key));
+              key = void 0;
+              if (char === ",") {
+                next = ":";
+                continue;
+              }
+            }
+          }
+          if (char === "}") {
+            if (i === cst.items.length - 1) continue;
+          } else if (char === next) {
+            next = ":";
+            continue;
+          }
+          const msg = `Flow map contains an unexpected ${char}`;
+          const err = new PlainValue.YAMLSyntaxError(cst, msg);
+          err.offset = offset;
+          doc.errors.push(err);
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            afterKey: !!key,
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            afterKey: !!key,
+            before: items.length,
+            comment: item.comment
+          });
+        } else if (key === void 0) {
+          if (next === ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Separator , missing in flow map"));
+          key = resolveNode(doc, item);
+        } else {
+          if (next !== ",") doc.errors.push(new PlainValue.YAMLSemanticError(item, "Indicator : missing in flow map entry"));
+          items.push(new Pair2(key, resolveNode(doc, item)));
+          key = void 0;
+          explicitKey = false;
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveSeq(doc, cst) {
+      if (cst.type !== PlainValue.Type.SEQ && cst.type !== PlainValue.Type.FLOW_SEQ) {
+        const msg = `A ${cst.type} node cannot be resolved as a sequence`;
+        doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg));
+        return null;
+      }
+      const {
+        comments,
+        items
+      } = cst.type === PlainValue.Type.FLOW_SEQ ? resolveFlowSeqItems(doc, cst) : resolveBlockSeqItems(doc, cst);
+      const seq = new YAMLSeq2();
+      seq.items = items;
+      resolveComments(seq, comments);
+      if (!doc.options.mapAsMap && items.some((it) => it instanceof Pair2 && it.key instanceof Collection2)) {
+        const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";
+        doc.warnings.push(new PlainValue.YAMLWarning(cst, warn));
+      }
+      cst.resolved = seq;
+      return seq;
+    }
+    function resolveBlockSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        switch (item.type) {
+          case PlainValue.Type.BLANK_LINE:
+            comments.push({
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.COMMENT:
+            comments.push({
+              comment: item.comment,
+              before: items.length
+            });
+            break;
+          case PlainValue.Type.SEQ_ITEM:
+            if (item.error) doc.errors.push(item.error);
+            items.push(resolveNode(doc, item.node));
+            if (item.hasProps) {
+              const msg = "Sequence items cannot have tags or anchors before the - indicator";
+              doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+            }
+            break;
+          default:
+            if (item.error) doc.errors.push(item.error);
+            doc.errors.push(new PlainValue.YAMLSyntaxError(item, `Unexpected ${item.type} node in sequence`));
+        }
+      }
+      return {
+        comments,
+        items
+      };
+    }
+    function resolveFlowSeqItems(doc, cst) {
+      const comments = [];
+      const items = [];
+      let explicitKey = false;
+      let key = void 0;
+      let keyStart = null;
+      let next = "[";
+      let prevItem = null;
+      for (let i = 0; i < cst.items.length; ++i) {
+        const item = cst.items[i];
+        if (typeof item.char === "string") {
+          const {
+            char,
+            offset
+          } = item;
+          if (char !== ":" && (explicitKey || key !== void 0)) {
+            if (explicitKey && key === void 0) key = next ? items.pop() : null;
+            items.push(new Pair2(key));
+            explicitKey = false;
+            key = void 0;
+            keyStart = null;
+          }
+          if (char === next) {
+            next = null;
+          } else if (!next && char === "?") {
+            explicitKey = true;
+          } else if (next !== "[" && char === ":" && key === void 0) {
+            if (next === ",") {
+              key = items.pop();
+              if (key instanceof Pair2) {
+                const msg = "Chaining flow sequence pairs is invalid";
+                const err = new PlainValue.YAMLSemanticError(cst, msg);
+                err.offset = offset;
+                doc.errors.push(err);
+              }
+              if (!explicitKey && typeof keyStart === "number") {
+                const keyEnd = item.range ? item.range.start : item.offset;
+                if (keyEnd > keyStart + 1024) doc.errors.push(getLongKeyError(cst, key));
+                const {
+                  src
+                } = prevItem.context;
+                for (let i2 = keyStart; i2 < keyEnd; ++i2) if (src[i2] === "\n") {
+                  const msg = "Implicit keys of flow sequence pairs need to be on a single line";
+                  doc.errors.push(new PlainValue.YAMLSemanticError(prevItem, msg));
+                  break;
+                }
+              }
+            } else {
+              key = null;
+            }
+            keyStart = null;
+            explicitKey = false;
+            next = null;
+          } else if (next === "[" || char !== "]" || i < cst.items.length - 1) {
+            const msg = `Flow sequence contains an unexpected ${char}`;
+            const err = new PlainValue.YAMLSyntaxError(cst, msg);
+            err.offset = offset;
+            doc.errors.push(err);
+          }
+        } else if (item.type === PlainValue.Type.BLANK_LINE) {
+          comments.push({
+            before: items.length
+          });
+        } else if (item.type === PlainValue.Type.COMMENT) {
+          checkFlowCommentSpace(doc.errors, item);
+          comments.push({
+            comment: item.comment,
+            before: items.length
+          });
+        } else {
+          if (next) {
+            const msg = `Expected a ${next} in flow sequence`;
+            doc.errors.push(new PlainValue.YAMLSemanticError(item, msg));
+          }
+          const value = resolveNode(doc, item);
+          if (key === void 0) {
+            items.push(value);
+            prevItem = item;
+          } else {
+            items.push(new Pair2(key, value));
+            key = void 0;
+          }
+          keyStart = item.range.start;
+          next = ",";
+        }
+      }
+      checkFlowCollectionEnd(doc.errors, cst);
+      if (key !== void 0) items.push(new Pair2(key));
+      return {
+        comments,
+        items
+      };
+    }
+    exports2.Alias = Alias2;
+    exports2.Collection = Collection2;
+    exports2.Merge = Merge2;
+    exports2.Node = Node11;
+    exports2.Pair = Pair2;
+    exports2.Scalar = Scalar2;
+    exports2.YAMLMap = YAMLMap2;
+    exports2.YAMLSeq = YAMLSeq2;
+    exports2.addComment = addComment;
+    exports2.binaryOptions = binaryOptions2;
+    exports2.boolOptions = boolOptions2;
+    exports2.findPair = findPair;
+    exports2.intOptions = intOptions2;
+    exports2.isEmptyPath = isEmptyPath;
+    exports2.nullOptions = nullOptions2;
+    exports2.resolveMap = resolveMap;
+    exports2.resolveNode = resolveNode;
+    exports2.resolveSeq = resolveSeq;
+    exports2.resolveString = resolveString;
+    exports2.strOptions = strOptions2;
+    exports2.stringifyNumber = stringifyNumber;
+    exports2.stringifyString = stringifyString;
+    exports2.toJSON = toJSON;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js
+var require_warnings_793925ce = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/warnings-793925ce.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var binary = {
+      identify: (value) => value instanceof Uint8Array,
+      // Buffer inherits from Uint8Array
+      default: false,
+      tag: "tag:yaml.org,2002:binary",
+      /**
+       * Returns a Buffer in node and an Uint8Array in browsers
+       *
+       * To use the resulting buffer as an image, you'll want to do something like:
+       *
+       *   const blob = new Blob([buffer], { type: 'image/jpeg' })
+       *   document.querySelector('#photo').src = URL.createObjectURL(blob)
+       */
+      resolve: (doc, node) => {
+        const src = resolveSeq.resolveString(doc, node);
+        if (typeof Buffer === "function") {
+          return Buffer.from(src, "base64");
+        } else if (typeof atob === "function") {
+          const str = atob(src.replace(/[\n\r]/g, ""));
+          const buffer = new Uint8Array(str.length);
+          for (let i = 0; i < str.length; ++i) buffer[i] = str.charCodeAt(i);
+          return buffer;
+        } else {
+          const msg = "This environment does not support reading binary tags; either Buffer or atob is required";
+          doc.errors.push(new PlainValue.YAMLReferenceError(node, msg));
+          return null;
+        }
+      },
+      options: resolveSeq.binaryOptions,
+      stringify: ({
+        comment,
+        type,
+        value
+      }, ctx, onComment, onChompKeep) => {
+        let src;
+        if (typeof Buffer === "function") {
+          src = value instanceof Buffer ? value.toString("base64") : Buffer.from(value.buffer).toString("base64");
+        } else if (typeof btoa === "function") {
+          let s = "";
+          for (let i = 0; i < value.length; ++i) s += String.fromCharCode(value[i]);
+          src = btoa(s);
+        } else {
+          throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");
+        }
+        if (!type) type = resolveSeq.binaryOptions.defaultType;
+        if (type === PlainValue.Type.QUOTE_DOUBLE) {
+          value = src;
+        } else {
+          const {
+            lineWidth
+          } = resolveSeq.binaryOptions;
+          const n = Math.ceil(src.length / lineWidth);
+          const lines = new Array(n);
+          for (let i = 0, o = 0; i < n; ++i, o += lineWidth) {
+            lines[i] = src.substr(o, lineWidth);
+          }
+          value = lines.join(type === PlainValue.Type.BLOCK_LITERAL ? "\n" : " ");
+        }
+        return resolveSeq.stringifyString({
+          comment,
+          type,
+          value
+        }, ctx, onComment, onChompKeep);
+      }
+    };
+    function parsePairs(doc, cst) {
+      const seq = resolveSeq.resolveSeq(doc, cst);
+      for (let i = 0; i < seq.items.length; ++i) {
+        let item = seq.items[i];
+        if (item instanceof resolveSeq.Pair) continue;
+        else if (item instanceof resolveSeq.YAMLMap) {
+          if (item.items.length > 1) {
+            const msg = "Each pair must have its own sequence indicator";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          }
+          const pair = item.items[0] || new resolveSeq.Pair();
+          if (item.commentBefore) pair.commentBefore = pair.commentBefore ? `${item.commentBefore}
+${pair.commentBefore}` : item.commentBefore;
+          if (item.comment) pair.comment = pair.comment ? `${item.comment}
+${pair.comment}` : item.comment;
+          item = pair;
+        }
+        seq.items[i] = item instanceof resolveSeq.Pair ? item : new resolveSeq.Pair(item);
+      }
+      return seq;
+    }
+    function createPairs(schema, iterable, ctx) {
+      const pairs2 = new resolveSeq.YAMLSeq(schema);
+      pairs2.tag = "tag:yaml.org,2002:pairs";
+      for (const it of iterable) {
+        let key, value;
+        if (Array.isArray(it)) {
+          if (it.length === 2) {
+            key = it[0];
+            value = it[1];
+          } else throw new TypeError(`Expected [key, value] tuple: ${it}`);
+        } else if (it && it instanceof Object) {
+          const keys = Object.keys(it);
+          if (keys.length === 1) {
+            key = keys[0];
+            value = it[key];
+          } else throw new TypeError(`Expected { key: value } tuple: ${it}`);
+        } else {
+          key = it;
+        }
+        const pair = schema.createPair(key, value, ctx);
+        pairs2.items.push(pair);
+      }
+      return pairs2;
+    }
+    var pairs = {
+      default: false,
+      tag: "tag:yaml.org,2002:pairs",
+      resolve: parsePairs,
+      createNode: createPairs
+    };
+    var YAMLOMap = class _YAMLOMap extends resolveSeq.YAMLSeq {
+      constructor() {
+        super();
+        PlainValue._defineProperty(this, "add", resolveSeq.YAMLMap.prototype.add.bind(this));
+        PlainValue._defineProperty(this, "delete", resolveSeq.YAMLMap.prototype.delete.bind(this));
+        PlainValue._defineProperty(this, "get", resolveSeq.YAMLMap.prototype.get.bind(this));
+        PlainValue._defineProperty(this, "has", resolveSeq.YAMLMap.prototype.has.bind(this));
+        PlainValue._defineProperty(this, "set", resolveSeq.YAMLMap.prototype.set.bind(this));
+        this.tag = _YAMLOMap.tag;
+      }
+      toJSON(_, ctx) {
+        const map = /* @__PURE__ */ new Map();
+        if (ctx && ctx.onCreate) ctx.onCreate(map);
+        for (const pair of this.items) {
+          let key, value;
+          if (pair instanceof resolveSeq.Pair) {
+            key = resolveSeq.toJSON(pair.key, "", ctx);
+            value = resolveSeq.toJSON(pair.value, key, ctx);
+          } else {
+            key = resolveSeq.toJSON(pair, "", ctx);
+          }
+          if (map.has(key)) throw new Error("Ordered maps must not include duplicate keys");
+          map.set(key, value);
+        }
+        return map;
+      }
+    };
+    PlainValue._defineProperty(YAMLOMap, "tag", "tag:yaml.org,2002:omap");
+    function parseOMap(doc, cst) {
+      const pairs2 = parsePairs(doc, cst);
+      const seenKeys = [];
+      for (const {
+        key
+      } of pairs2.items) {
+        if (key instanceof resolveSeq.Scalar) {
+          if (seenKeys.includes(key.value)) {
+            const msg = "Ordered maps must not include duplicate keys";
+            throw new PlainValue.YAMLSemanticError(cst, msg);
+          } else {
+            seenKeys.push(key.value);
+          }
+        }
+      }
+      return Object.assign(new YAMLOMap(), pairs2);
+    }
+    function createOMap(schema, iterable, ctx) {
+      const pairs2 = createPairs(schema, iterable, ctx);
+      const omap2 = new YAMLOMap();
+      omap2.items = pairs2.items;
+      return omap2;
+    }
+    var omap = {
+      identify: (value) => value instanceof Map,
+      nodeClass: YAMLOMap,
+      default: false,
+      tag: "tag:yaml.org,2002:omap",
+      resolve: parseOMap,
+      createNode: createOMap
+    };
+    var YAMLSet = class _YAMLSet extends resolveSeq.YAMLMap {
+      constructor() {
+        super();
+        this.tag = _YAMLSet.tag;
+      }
+      add(key) {
+        const pair = key instanceof resolveSeq.Pair ? key : new resolveSeq.Pair(key);
+        const prev = resolveSeq.findPair(this.items, pair.key);
+        if (!prev) this.items.push(pair);
+      }
+      get(key, keepPair) {
+        const pair = resolveSeq.findPair(this.items, key);
+        return !keepPair && pair instanceof resolveSeq.Pair ? pair.key instanceof resolveSeq.Scalar ? pair.key.value : pair.key : pair;
+      }
+      set(key, value) {
+        if (typeof value !== "boolean") throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`);
+        const prev = resolveSeq.findPair(this.items, key);
+        if (prev && !value) {
+          this.items.splice(this.items.indexOf(prev), 1);
+        } else if (!prev && value) {
+          this.items.push(new resolveSeq.Pair(key));
+        }
+      }
+      toJSON(_, ctx) {
+        return super.toJSON(_, ctx, Set);
+      }
+      toString(ctx, onComment, onChompKeep) {
+        if (!ctx) return JSON.stringify(this);
+        if (this.hasAllNullValues()) return super.toString(ctx, onComment, onChompKeep);
+        else throw new Error("Set items must all have null values");
+      }
+    };
+    PlainValue._defineProperty(YAMLSet, "tag", "tag:yaml.org,2002:set");
+    function parseSet(doc, cst) {
+      const map = resolveSeq.resolveMap(doc, cst);
+      if (!map.hasAllNullValues()) throw new PlainValue.YAMLSemanticError(cst, "Set items must all have null values");
+      return Object.assign(new YAMLSet(), map);
+    }
+    function createSet(schema, iterable, ctx) {
+      const set2 = new YAMLSet();
+      for (const value of iterable) set2.items.push(schema.createPair(value, null, ctx));
+      return set2;
+    }
+    var set = {
+      identify: (value) => value instanceof Set,
+      nodeClass: YAMLSet,
+      default: false,
+      tag: "tag:yaml.org,2002:set",
+      resolve: parseSet,
+      createNode: createSet
+    };
+    var parseSexagesimal = (sign, parts) => {
+      const n = parts.split(":").reduce((n2, p) => n2 * 60 + Number(p), 0);
+      return sign === "-" ? -n : n;
+    };
+    var stringifySexagesimal = ({
+      value
+    }) => {
+      if (isNaN(value) || !isFinite(value)) return resolveSeq.stringifyNumber(value);
+      let sign = "";
+      if (value < 0) {
+        sign = "-";
+        value = Math.abs(value);
+      }
+      const parts = [value % 60];
+      if (value < 60) {
+        parts.unshift(0);
+      } else {
+        value = Math.round((value - parts[0]) / 60);
+        parts.unshift(value % 60);
+        if (value >= 60) {
+          value = Math.round((value - parts[0]) / 60);
+          parts.unshift(value);
+        }
+      }
+      return sign + parts.map((n) => n < 10 ? "0" + String(n) : String(n)).join(":").replace(/000000\d*$/, "");
+    };
+    var intTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var floatTime = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "TIME",
+      test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,
+      resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")),
+      stringify: stringifySexagesimal
+    };
+    var timestamp = {
+      identify: (value) => value instanceof Date,
+      default: true,
+      tag: "tag:yaml.org,2002:timestamp",
+      // If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part
+      // may be omitted altogether, resulting in a date format. In such a case, the time part is
+      // assumed to be 00:00:00Z (start of day, UTC).
+      test: RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),
+      resolve: (str, year, month, day, hour, minute, second, millisec, tz) => {
+        if (millisec) millisec = (millisec + "00").substr(1, 3);
+        let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec || 0);
+        if (tz && tz !== "Z") {
+          let d = parseSexagesimal(tz[0], tz.slice(1));
+          if (Math.abs(d) < 30) d *= 60;
+          date -= 6e4 * d;
+        }
+        return new Date(date);
+      },
+      stringify: ({
+        value
+      }) => value.toISOString().replace(/((T00:00)?:00)?\.000Z$/, "")
+    };
+    function shouldWarn(deprecation) {
+      const env2 = typeof process !== "undefined" && process.env || {};
+      if (deprecation) {
+        if (typeof YAML_SILENCE_DEPRECATION_WARNINGS !== "undefined") return !YAML_SILENCE_DEPRECATION_WARNINGS;
+        return !env2.YAML_SILENCE_DEPRECATION_WARNINGS;
+      }
+      if (typeof YAML_SILENCE_WARNINGS !== "undefined") return !YAML_SILENCE_WARNINGS;
+      return !env2.YAML_SILENCE_WARNINGS;
+    }
+    function warn(warning, type) {
+      if (shouldWarn(false)) {
+        const emit = typeof process !== "undefined" && process.emitWarning;
+        if (emit) emit(warning, type);
+        else {
+          console.warn(type ? `${type}: ${warning}` : warning);
+        }
+      }
+    }
+    function warnFileDeprecation(filename) {
+      if (shouldWarn(true)) {
+        const path23 = filename.replace(/.*yaml[/\\]/i, "").replace(/\.js$/, "").replace(/\\/g, "/");
+        warn(`The endpoint 'yaml/${path23}' will be removed in a future release.`, "DeprecationWarning");
+      }
+    }
+    var warned = {};
+    function warnOptionDeprecation(name, alternative) {
+      if (!warned[name] && shouldWarn(true)) {
+        warned[name] = true;
+        let msg = `The option '${name}' will be removed in a future release`;
+        msg += alternative ? `, use '${alternative}' instead.` : ".";
+        warn(msg, "DeprecationWarning");
+      }
+    }
+    exports2.binary = binary;
+    exports2.floatTime = floatTime;
+    exports2.intTime = intTime;
+    exports2.omap = omap;
+    exports2.pairs = pairs;
+    exports2.set = set;
+    exports2.timestamp = timestamp;
+    exports2.warn = warn;
+    exports2.warnFileDeprecation = warnFileDeprecation;
+    exports2.warnOptionDeprecation = warnOptionDeprecation;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js
+var require_Schema_bcc6c2d7 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Schema-bcc6c2d7.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var warnings = require_warnings_793925ce();
+    function createMap(schema, obj, ctx) {
+      const map2 = new resolveSeq.YAMLMap(schema);
+      if (obj instanceof Map) {
+        for (const [key, value] of obj) map2.items.push(schema.createPair(key, value, ctx));
+      } else if (obj && typeof obj === "object") {
+        for (const key of Object.keys(obj)) map2.items.push(schema.createPair(key, obj[key], ctx));
+      }
+      if (typeof schema.sortMapEntries === "function") {
+        map2.items.sort(schema.sortMapEntries);
+      }
+      return map2;
+    }
+    var map = {
+      createNode: createMap,
+      default: true,
+      nodeClass: resolveSeq.YAMLMap,
+      tag: "tag:yaml.org,2002:map",
+      resolve: resolveSeq.resolveMap
+    };
+    function createSeq(schema, obj, ctx) {
+      const seq2 = new resolveSeq.YAMLSeq(schema);
+      if (obj && obj[Symbol.iterator]) {
+        for (const it of obj) {
+          const v = schema.createNode(it, ctx.wrapScalars, null, ctx);
+          seq2.items.push(v);
+        }
+      }
+      return seq2;
+    }
+    var seq = {
+      createNode: createSeq,
+      default: true,
+      nodeClass: resolveSeq.YAMLSeq,
+      tag: "tag:yaml.org,2002:seq",
+      resolve: resolveSeq.resolveSeq
+    };
+    var string = {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify(item, ctx, onComment, onChompKeep) {
+        ctx = Object.assign({
+          actualString: true
+        }, ctx);
+        return resolveSeq.stringifyString(item, ctx, onComment, onChompKeep);
+      },
+      options: resolveSeq.strOptions
+    };
+    var failsafe = [map, seq, string];
+    var intIdentify$2 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var intResolve$1 = (src, part, radix) => resolveSeq.intOptions.asBigInt ? BigInt(src) : parseInt(part, radix);
+    function intStringify$1(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify$2(value) && value >= 0) return prefix + value.toString(radix);
+      return resolveSeq.stringifyNumber(node);
+    }
+    var nullObj = {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    };
+    var boolObj = {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,
+      resolve: (str) => str[0] === "t" || str[0] === "T",
+      options: resolveSeq.boolOptions,
+      stringify: ({
+        value
+      }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr
+    };
+    var octObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^0o([0-7]+)$/,
+      resolve: (str, oct) => intResolve$1(str, oct, 8),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 8, "0o")
+    };
+    var intObj = {
+      identify: intIdentify$2,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^[-+]?[0-9]+$/,
+      resolve: (str) => intResolve$1(str, str, 10),
+      options: resolveSeq.intOptions,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var hexObj = {
+      identify: (value) => intIdentify$2(value) && value >= 0,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^0x([0-9a-fA-F]+)$/,
+      resolve: (str, hex2) => intResolve$1(str, hex2, 16),
+      options: resolveSeq.intOptions,
+      stringify: (node) => intStringify$1(node, 16, "0x")
+    };
+    var nanObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    };
+    var expObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    };
+    var floatObj = {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,
+      resolve(str, frac1, frac2) {
+        const frac = frac1 || frac2;
+        const node = new resolveSeq.Scalar(parseFloat(str));
+        if (frac && frac[frac.length - 1] === "0") node.minFractionDigits = frac.length;
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    };
+    var core = failsafe.concat([nullObj, boolObj, octObj, intObj, hexObj, nanObj, expObj, floatObj]);
+    var intIdentify$1 = (value) => typeof value === "bigint" || Number.isInteger(value);
+    var stringifyJSON = ({
+      value
+    }) => JSON.stringify(value);
+    var json = [map, seq, {
+      identify: (value) => typeof value === "string",
+      default: true,
+      tag: "tag:yaml.org,2002:str",
+      resolve: resolveSeq.resolveString,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^null$/,
+      resolve: () => null,
+      stringify: stringifyJSON
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^true|false$/,
+      resolve: (str) => str === "true",
+      stringify: stringifyJSON
+    }, {
+      identify: intIdentify$1,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^-?(?:0|[1-9][0-9]*)$/,
+      resolve: (str) => resolveSeq.intOptions.asBigInt ? BigInt(str) : parseInt(str, 10),
+      stringify: ({
+        value
+      }) => intIdentify$1(value) ? value.toString() : JSON.stringify(value)
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,
+      resolve: (str) => parseFloat(str),
+      stringify: stringifyJSON
+    }];
+    json.scalarFallback = (str) => {
+      throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(str)}`);
+    };
+    var boolStringify = ({
+      value
+    }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr;
+    var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
+    function intResolve(sign, src, radix) {
+      let str = src.replace(/_/g, "");
+      if (resolveSeq.intOptions.asBigInt) {
+        switch (radix) {
+          case 2:
+            str = `0b${str}`;
+            break;
+          case 8:
+            str = `0o${str}`;
+            break;
+          case 16:
+            str = `0x${str}`;
+            break;
+        }
+        const n2 = BigInt(str);
+        return sign === "-" ? BigInt(-1) * n2 : n2;
+      }
+      const n = parseInt(str, radix);
+      return sign === "-" ? -1 * n : n;
+    }
+    function intStringify(node, radix, prefix) {
+      const {
+        value
+      } = node;
+      if (intIdentify(value)) {
+        const str = value.toString(radix);
+        return value < 0 ? "-" + prefix + str.substr(1) : prefix + str;
+      }
+      return resolveSeq.stringifyNumber(node);
+    }
+    var yaml11 = failsafe.concat([{
+      identify: (value) => value == null,
+      createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null,
+      default: true,
+      tag: "tag:yaml.org,2002:null",
+      test: /^(?:~|[Nn]ull|NULL)?$/,
+      resolve: () => null,
+      options: resolveSeq.nullOptions,
+      stringify: () => resolveSeq.nullOptions.nullStr
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,
+      resolve: () => true,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: (value) => typeof value === "boolean",
+      default: true,
+      tag: "tag:yaml.org,2002:bool",
+      test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,
+      resolve: () => false,
+      options: resolveSeq.boolOptions,
+      stringify: boolStringify
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "BIN",
+      test: /^([-+]?)0b([0-1_]+)$/,
+      resolve: (str, sign, bin) => intResolve(sign, bin, 2),
+      stringify: (node) => intStringify(node, 2, "0b")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "OCT",
+      test: /^([-+]?)0([0-7_]+)$/,
+      resolve: (str, sign, oct) => intResolve(sign, oct, 8),
+      stringify: (node) => intStringify(node, 8, "0")
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      test: /^([-+]?)([0-9][0-9_]*)$/,
+      resolve: (str, sign, abs) => intResolve(sign, abs, 10),
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: intIdentify,
+      default: true,
+      tag: "tag:yaml.org,2002:int",
+      format: "HEX",
+      test: /^([-+]?)0x([0-9a-fA-F_]+)$/,
+      resolve: (str, sign, hex2) => intResolve(sign, hex2, 16),
+      stringify: (node) => intStringify(node, 16, "0x")
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^(?:[-+]?\.inf|(\.nan))$/i,
+      resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
+      stringify: resolveSeq.stringifyNumber
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      format: "EXP",
+      test: /^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,
+      resolve: (str) => parseFloat(str.replace(/_/g, "")),
+      stringify: ({
+        value
+      }) => Number(value).toExponential()
+    }, {
+      identify: (value) => typeof value === "number",
+      default: true,
+      tag: "tag:yaml.org,2002:float",
+      test: /^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,
+      resolve(str, frac) {
+        const node = new resolveSeq.Scalar(parseFloat(str.replace(/_/g, "")));
+        if (frac) {
+          const f = frac.replace(/_/g, "");
+          if (f[f.length - 1] === "0") node.minFractionDigits = f.length;
+        }
+        return node;
+      },
+      stringify: resolveSeq.stringifyNumber
+    }], warnings.binary, warnings.omap, warnings.pairs, warnings.set, warnings.intTime, warnings.floatTime, warnings.timestamp);
+    var schemas = {
+      core,
+      failsafe,
+      json,
+      yaml11
+    };
+    var tags = {
+      binary: warnings.binary,
+      bool: boolObj,
+      float: floatObj,
+      floatExp: expObj,
+      floatNaN: nanObj,
+      floatTime: warnings.floatTime,
+      int: intObj,
+      intHex: hexObj,
+      intOct: octObj,
+      intTime: warnings.intTime,
+      map,
+      null: nullObj,
+      omap: warnings.omap,
+      pairs: warnings.pairs,
+      seq,
+      set: warnings.set,
+      timestamp: warnings.timestamp
+    };
+    function findTagObject(value, tagName, tags2) {
+      if (tagName) {
+        const match = tags2.filter((t) => t.tag === tagName);
+        const tagObj = match.find((t) => !t.format) || match[0];
+        if (!tagObj) throw new Error(`Tag ${tagName} not found`);
+        return tagObj;
+      }
+      return tags2.find((t) => (t.identify && t.identify(value) || t.class && value instanceof t.class) && !t.format);
+    }
+    function createNode(value, tagName, ctx) {
+      if (value instanceof resolveSeq.Node) return value;
+      const {
+        defaultPrefix,
+        onTagObj,
+        prevObjects,
+        schema,
+        wrapScalars
+      } = ctx;
+      if (tagName && tagName.startsWith("!!")) tagName = defaultPrefix + tagName.slice(2);
+      let tagObj = findTagObject(value, tagName, schema.tags);
+      if (!tagObj) {
+        if (typeof value.toJSON === "function") value = value.toJSON();
+        if (!value || typeof value !== "object") return wrapScalars ? new resolveSeq.Scalar(value) : value;
+        tagObj = value instanceof Map ? map : value[Symbol.iterator] ? seq : map;
+      }
+      if (onTagObj) {
+        onTagObj(tagObj);
+        delete ctx.onTagObj;
+      }
+      const obj = {
+        value: void 0,
+        node: void 0
+      };
+      if (value && typeof value === "object" && prevObjects) {
+        const prev = prevObjects.get(value);
+        if (prev) {
+          const alias = new resolveSeq.Alias(prev);
+          ctx.aliasNodes.push(alias);
+          return alias;
+        }
+        obj.value = value;
+        prevObjects.set(value, obj);
+      }
+      obj.node = tagObj.createNode ? tagObj.createNode(ctx.schema, value, ctx) : wrapScalars ? new resolveSeq.Scalar(value) : value;
+      if (tagName && obj.node instanceof resolveSeq.Node) obj.node.tag = tagName;
+      return obj.node;
+    }
+    function getSchemaTags(schemas2, knownTags, customTags, schemaId) {
+      let tags2 = schemas2[schemaId.replace(/\W/g, "")];
+      if (!tags2) {
+        const keys = Object.keys(schemas2).map((key) => JSON.stringify(key)).join(", ");
+        throw new Error(`Unknown schema "${schemaId}"; use one of ${keys}`);
+      }
+      if (Array.isArray(customTags)) {
+        for (const tag of customTags) tags2 = tags2.concat(tag);
+      } else if (typeof customTags === "function") {
+        tags2 = customTags(tags2.slice());
+      }
+      for (let i = 0; i < tags2.length; ++i) {
+        const tag = tags2[i];
+        if (typeof tag === "string") {
+          const tagObj = knownTags[tag];
+          if (!tagObj) {
+            const keys = Object.keys(knownTags).map((key) => JSON.stringify(key)).join(", ");
+            throw new Error(`Unknown custom tag "${tag}"; use one of ${keys}`);
+          }
+          tags2[i] = tagObj;
+        }
+      }
+      return tags2;
+    }
+    var sortMapEntriesByKey = (a, b) => a.key < b.key ? -1 : a.key > b.key ? 1 : 0;
+    var Schema2 = class _Schema {
+      // TODO: remove in v2
+      constructor({
+        customTags,
+        merge: merge2,
+        schema,
+        sortMapEntries,
+        tags: deprecatedCustomTags
+      }) {
+        this.merge = !!merge2;
+        this.name = schema;
+        this.sortMapEntries = sortMapEntries === true ? sortMapEntriesByKey : sortMapEntries || null;
+        if (!customTags && deprecatedCustomTags) warnings.warnOptionDeprecation("tags", "customTags");
+        this.tags = getSchemaTags(schemas, tags, customTags || deprecatedCustomTags, schema);
+      }
+      createNode(value, wrapScalars, tagName, ctx) {
+        const baseCtx = {
+          defaultPrefix: _Schema.defaultPrefix,
+          schema: this,
+          wrapScalars
+        };
+        const createCtx = ctx ? Object.assign(ctx, baseCtx) : baseCtx;
+        return createNode(value, tagName, createCtx);
+      }
+      createPair(key, value, ctx) {
+        if (!ctx) ctx = {
+          wrapScalars: true
+        };
+        const k = this.createNode(key, ctx.wrapScalars, null, ctx);
+        const v = this.createNode(value, ctx.wrapScalars, null, ctx);
+        return new resolveSeq.Pair(k, v);
+      }
+    };
+    PlainValue._defineProperty(Schema2, "defaultPrefix", PlainValue.defaultTagPrefix);
+    PlainValue._defineProperty(Schema2, "defaultTags", PlainValue.defaultTags);
+    exports2.Schema = Schema2;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js
+var require_Document_a8d0fbf9 = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/Document-a8d0fbf9.js"(exports2) {
+    "use strict";
+    var PlainValue = require_PlainValue_516d5bc2();
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var defaultOptions = {
+      anchorPrefix: "a",
+      customTags: null,
+      indent: 2,
+      indentSeq: true,
+      keepCstNodes: false,
+      keepNodeTypes: true,
+      keepBlobsInJSON: true,
+      mapAsMap: false,
+      maxAliasCount: 100,
+      prettyErrors: false,
+      // TODO Set true in v2
+      simpleKeys: false,
+      version: "1.2"
+    };
+    var scalarOptions = {
+      get binary() {
+        return resolveSeq.binaryOptions;
+      },
+      set binary(opt) {
+        Object.assign(resolveSeq.binaryOptions, opt);
+      },
+      get bool() {
+        return resolveSeq.boolOptions;
+      },
+      set bool(opt) {
+        Object.assign(resolveSeq.boolOptions, opt);
+      },
+      get int() {
+        return resolveSeq.intOptions;
+      },
+      set int(opt) {
+        Object.assign(resolveSeq.intOptions, opt);
+      },
+      get null() {
+        return resolveSeq.nullOptions;
+      },
+      set null(opt) {
+        Object.assign(resolveSeq.nullOptions, opt);
+      },
+      get str() {
+        return resolveSeq.strOptions;
+      },
+      set str(opt) {
+        Object.assign(resolveSeq.strOptions, opt);
+      }
+    };
+    var documentOptions = {
+      "1.0": {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: PlainValue.defaultTagPrefix
+        }, {
+          handle: "!!",
+          prefix: "tag:private.yaml.org,2002:"
+        }]
+      },
+      1.1: {
+        schema: "yaml-1.1",
+        merge: true,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      },
+      1.2: {
+        schema: "core",
+        merge: false,
+        tagPrefixes: [{
+          handle: "!",
+          prefix: "!"
+        }, {
+          handle: "!!",
+          prefix: PlainValue.defaultTagPrefix
+        }]
+      }
+    };
+    function stringifyTag(doc, tag) {
+      if ((doc.version || doc.options.version) === "1.0") {
+        const priv = tag.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);
+        if (priv) return "!" + priv[1];
+        const vocab = tag.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);
+        return vocab ? `!${vocab[1]}/${vocab[2]}` : `!${tag.replace(/^tag:/, "")}`;
+      }
+      let p = doc.tagPrefixes.find((p2) => tag.indexOf(p2.prefix) === 0);
+      if (!p) {
+        const dtp = doc.getDefaults().tagPrefixes;
+        p = dtp && dtp.find((p2) => tag.indexOf(p2.prefix) === 0);
+      }
+      if (!p) return tag[0] === "!" ? tag : `!<${tag}>`;
+      const suffix = tag.substr(p.prefix.length).replace(/[!,[\]{}]/g, (ch) => ({
+        "!": "%21",
+        ",": "%2C",
+        "[": "%5B",
+        "]": "%5D",
+        "{": "%7B",
+        "}": "%7D"
+      })[ch]);
+      return p.handle + suffix;
+    }
+    function getTagObject(tags, item) {
+      if (item instanceof resolveSeq.Alias) return resolveSeq.Alias;
+      if (item.tag) {
+        const match = tags.filter((t) => t.tag === item.tag);
+        if (match.length > 0) return match.find((t) => t.format === item.format) || match[0];
+      }
+      let tagObj, obj;
+      if (item instanceof resolveSeq.Scalar) {
+        obj = item.value;
+        const match = tags.filter((t) => t.identify && t.identify(obj) || t.class && obj instanceof t.class);
+        tagObj = match.find((t) => t.format === item.format) || match.find((t) => !t.format);
+      } else {
+        obj = item;
+        tagObj = tags.find((t) => t.nodeClass && obj instanceof t.nodeClass);
+      }
+      if (!tagObj) {
+        const name = obj && obj.constructor ? obj.constructor.name : typeof obj;
+        throw new Error(`Tag not resolved for ${name} value`);
+      }
+      return tagObj;
+    }
+    function stringifyProps(node, tagObj, {
+      anchors,
+      doc
+    }) {
+      const props = [];
+      const anchor = doc.anchors.getName(node);
+      if (anchor) {
+        anchors[anchor] = node;
+        props.push(`&${anchor}`);
+      }
+      if (node.tag) {
+        props.push(stringifyTag(doc, node.tag));
+      } else if (!tagObj.default) {
+        props.push(stringifyTag(doc, tagObj.tag));
+      }
+      return props.join(" ");
+    }
+    function stringify3(item, ctx, onComment, onChompKeep) {
+      const {
+        anchors,
+        schema
+      } = ctx.doc;
+      let tagObj;
+      if (!(item instanceof resolveSeq.Node)) {
+        const createCtx = {
+          aliasNodes: [],
+          onTagObj: (o) => tagObj = o,
+          prevObjects: /* @__PURE__ */ new Map()
+        };
+        item = schema.createNode(item, true, null, createCtx);
+        for (const alias of createCtx.aliasNodes) {
+          alias.source = alias.source.node;
+          let name = anchors.getName(alias.source);
+          if (!name) {
+            name = anchors.newName();
+            anchors.map[name] = alias.source;
+          }
+        }
+      }
+      if (item instanceof resolveSeq.Pair) return item.toString(ctx, onComment, onChompKeep);
+      if (!tagObj) tagObj = getTagObject(schema.tags, item);
+      const props = stringifyProps(item, tagObj, ctx);
+      if (props.length > 0) ctx.indentAtStart = (ctx.indentAtStart || 0) + props.length + 1;
+      const str = typeof tagObj.stringify === "function" ? tagObj.stringify(item, ctx, onComment, onChompKeep) : item instanceof resolveSeq.Scalar ? resolveSeq.stringifyString(item, ctx, onComment, onChompKeep) : item.toString(ctx, onComment, onChompKeep);
+      if (!props) return str;
+      return item instanceof resolveSeq.Scalar || str[0] === "{" || str[0] === "[" ? `${props} ${str}` : `${props}
+${ctx.indent}${str}`;
+    }
+    var Anchors = class _Anchors {
+      static validAnchorNode(node) {
+        return node instanceof resolveSeq.Scalar || node instanceof resolveSeq.YAMLSeq || node instanceof resolveSeq.YAMLMap;
+      }
+      constructor(prefix) {
+        PlainValue._defineProperty(this, "map", /* @__PURE__ */ Object.create(null));
+        this.prefix = prefix;
+      }
+      createAlias(node, name) {
+        this.setAnchor(node, name);
+        return new resolveSeq.Alias(node);
+      }
+      createMergePair(...sources) {
+        const merge2 = new resolveSeq.Merge();
+        merge2.value.items = sources.map((s) => {
+          if (s instanceof resolveSeq.Alias) {
+            if (s.source instanceof resolveSeq.YAMLMap) return s;
+          } else if (s instanceof resolveSeq.YAMLMap) {
+            return this.createAlias(s);
+          }
+          throw new Error("Merge sources must be Map nodes or their Aliases");
+        });
+        return merge2;
+      }
+      getName(node) {
+        const {
+          map
+        } = this;
+        return Object.keys(map).find((a) => map[a] === node);
+      }
+      getNames() {
+        return Object.keys(this.map);
+      }
+      getNode(name) {
+        return this.map[name];
+      }
+      newName(prefix) {
+        if (!prefix) prefix = this.prefix;
+        const names = Object.keys(this.map);
+        for (let i = 1; true; ++i) {
+          const name = `${prefix}${i}`;
+          if (!names.includes(name)) return name;
+        }
+      }
+      // During parsing, map & aliases contain CST nodes
+      resolveNodes() {
+        const {
+          map,
+          _cstAliases
+        } = this;
+        Object.keys(map).forEach((a) => {
+          map[a] = map[a].resolved;
+        });
+        _cstAliases.forEach((a) => {
+          a.source = a.source.resolved;
+        });
+        delete this._cstAliases;
+      }
+      setAnchor(node, name) {
+        if (node != null && !_Anchors.validAnchorNode(node)) {
+          throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");
+        }
+        if (name && /[\x00-\x19\s,[\]{}]/.test(name)) {
+          throw new Error("Anchor names must not contain whitespace or control characters");
+        }
+        const {
+          map
+        } = this;
+        const prev = node && Object.keys(map).find((a) => map[a] === node);
+        if (prev) {
+          if (!name) {
+            return prev;
+          } else if (prev !== name) {
+            delete map[prev];
+            map[name] = node;
+          }
+        } else {
+          if (!name) {
+            if (!node) return null;
+            name = this.newName();
+          }
+          map[name] = node;
+        }
+        return name;
+      }
+    };
+    var visit2 = (node, tags) => {
+      if (node && typeof node === "object") {
+        const {
+          tag
+        } = node;
+        if (node instanceof resolveSeq.Collection) {
+          if (tag) tags[tag] = true;
+          node.items.forEach((n) => visit2(n, tags));
+        } else if (node instanceof resolveSeq.Pair) {
+          visit2(node.key, tags);
+          visit2(node.value, tags);
+        } else if (node instanceof resolveSeq.Scalar) {
+          if (tag) tags[tag] = true;
+        }
+      }
+      return tags;
+    };
+    var listTagNames = (node) => Object.keys(visit2(node, {}));
+    function parseContents(doc, contents) {
+      const comments = {
+        before: [],
+        after: []
+      };
+      let body = void 0;
+      let spaceBefore = false;
+      for (const node of contents) {
+        if (node.valueRange) {
+          if (body !== void 0) {
+            const msg = "Document contains trailing content not separated by a ... or --- line";
+            doc.errors.push(new PlainValue.YAMLSyntaxError(node, msg));
+            break;
+          }
+          const res = resolveSeq.resolveNode(doc, node);
+          if (spaceBefore) {
+            res.spaceBefore = true;
+            spaceBefore = false;
+          }
+          body = res;
+        } else if (node.comment !== null) {
+          const cc = body === void 0 ? comments.before : comments.after;
+          cc.push(node.comment);
+        } else if (node.type === PlainValue.Type.BLANK_LINE) {
+          spaceBefore = true;
+          if (body === void 0 && comments.before.length > 0 && !doc.commentBefore) {
+            doc.commentBefore = comments.before.join("\n");
+            comments.before = [];
+          }
+        }
+      }
+      doc.contents = body || null;
+      if (!body) {
+        doc.comment = comments.before.concat(comments.after).join("\n") || null;
+      } else {
+        const cb = comments.before.join("\n");
+        if (cb) {
+          const cbNode = body instanceof resolveSeq.Collection && body.items[0] ? body.items[0] : body;
+          cbNode.commentBefore = cbNode.commentBefore ? `${cb}
+${cbNode.commentBefore}` : cb;
+        }
+        doc.comment = comments.after.join("\n") || null;
+      }
+    }
+    function resolveTagDirective({
+      tagPrefixes
+    }, directive) {
+      const [handle, prefix] = directive.parameters;
+      if (!handle || !prefix) {
+        const msg = "Insufficient parameters given for %TAG directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (tagPrefixes.some((p) => p.handle === handle)) {
+        const msg = "The %TAG directive must only be given at most once per handle in the same document.";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      return {
+        handle,
+        prefix
+      };
+    }
+    function resolveYamlDirective(doc, directive) {
+      let [version3] = directive.parameters;
+      if (directive.name === "YAML:1.0") version3 = "1.0";
+      if (!version3) {
+        const msg = "Insufficient parameters given for %YAML directive";
+        throw new PlainValue.YAMLSemanticError(directive, msg);
+      }
+      if (!documentOptions[version3]) {
+        const v0 = doc.version || doc.options.version;
+        const msg = `Document will be parsed as YAML ${v0} rather than YAML ${version3}`;
+        doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+      }
+      return version3;
+    }
+    function parseDirectives(doc, directives, prevDoc) {
+      const directiveComments = [];
+      let hasDirectives = false;
+      for (const directive of directives) {
+        const {
+          comment,
+          name
+        } = directive;
+        switch (name) {
+          case "TAG":
+            try {
+              doc.tagPrefixes.push(resolveTagDirective(doc, directive));
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          case "YAML":
+          case "YAML:1.0":
+            if (doc.version) {
+              const msg = "The %YAML directive must only be given at most once per document.";
+              doc.errors.push(new PlainValue.YAMLSemanticError(directive, msg));
+            }
+            try {
+              doc.version = resolveYamlDirective(doc, directive);
+            } catch (error) {
+              doc.errors.push(error);
+            }
+            hasDirectives = true;
+            break;
+          default:
+            if (name) {
+              const msg = `YAML only supports %TAG and %YAML directives, and not %${name}`;
+              doc.warnings.push(new PlainValue.YAMLWarning(directive, msg));
+            }
+        }
+        if (comment) directiveComments.push(comment);
+      }
+      if (prevDoc && !hasDirectives && "1.1" === (doc.version || prevDoc.version || doc.options.version)) {
+        const copyTagPrefix = ({
+          handle,
+          prefix
+        }) => ({
+          handle,
+          prefix
+        });
+        doc.tagPrefixes = prevDoc.tagPrefixes.map(copyTagPrefix);
+        doc.version = prevDoc.version;
+      }
+      doc.commentBefore = directiveComments.join("\n") || null;
+    }
+    function assertCollection(contents) {
+      if (contents instanceof resolveSeq.Collection) return true;
+      throw new Error("Expected a YAML collection as document contents");
+    }
+    var Document = class _Document {
+      constructor(options) {
+        this.anchors = new Anchors(options.anchorPrefix);
+        this.commentBefore = null;
+        this.comment = null;
+        this.contents = null;
+        this.directivesEndMarker = null;
+        this.errors = [];
+        this.options = options;
+        this.schema = null;
+        this.tagPrefixes = [];
+        this.version = null;
+        this.warnings = [];
+      }
+      add(value) {
+        assertCollection(this.contents);
+        return this.contents.add(value);
+      }
+      addIn(path23, value) {
+        assertCollection(this.contents);
+        this.contents.addIn(path23, value);
+      }
+      delete(key) {
+        assertCollection(this.contents);
+        return this.contents.delete(key);
+      }
+      deleteIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) {
+          if (this.contents == null) return false;
+          this.contents = null;
+          return true;
+        }
+        assertCollection(this.contents);
+        return this.contents.deleteIn(path23);
+      }
+      getDefaults() {
+        return _Document.defaults[this.version] || _Document.defaults[this.options.version] || {};
+      }
+      get(key, keepScalar) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.get(key, keepScalar) : void 0;
+      }
+      getIn(path23, keepScalar) {
+        if (resolveSeq.isEmptyPath(path23)) return !keepScalar && this.contents instanceof resolveSeq.Scalar ? this.contents.value : this.contents;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.getIn(path23, keepScalar) : void 0;
+      }
+      has(key) {
+        return this.contents instanceof resolveSeq.Collection ? this.contents.has(key) : false;
+      }
+      hasIn(path23) {
+        if (resolveSeq.isEmptyPath(path23)) return this.contents !== void 0;
+        return this.contents instanceof resolveSeq.Collection ? this.contents.hasIn(path23) : false;
+      }
+      set(key, value) {
+        assertCollection(this.contents);
+        this.contents.set(key, value);
+      }
+      setIn(path23, value) {
+        if (resolveSeq.isEmptyPath(path23)) this.contents = value;
+        else {
+          assertCollection(this.contents);
+          this.contents.setIn(path23, value);
+        }
+      }
+      setSchema(id, customTags) {
+        if (!id && !customTags && this.schema) return;
+        if (typeof id === "number") id = id.toFixed(1);
+        if (id === "1.0" || id === "1.1" || id === "1.2") {
+          if (this.version) this.version = id;
+          else this.options.version = id;
+          delete this.options.schema;
+        } else if (id && typeof id === "string") {
+          this.options.schema = id;
+        }
+        if (Array.isArray(customTags)) this.options.customTags = customTags;
+        const opt = Object.assign({}, this.getDefaults(), this.options);
+        this.schema = new Schema2.Schema(opt);
+      }
+      parse(node, prevDoc) {
+        if (this.options.keepCstNodes) this.cstNode = node;
+        if (this.options.keepNodeTypes) this.type = "DOCUMENT";
+        const {
+          directives = [],
+          contents = [],
+          directivesEndMarker,
+          error,
+          valueRange
+        } = node;
+        if (error) {
+          if (!error.source) error.source = this;
+          this.errors.push(error);
+        }
+        parseDirectives(this, directives, prevDoc);
+        if (directivesEndMarker) this.directivesEndMarker = true;
+        this.range = valueRange ? [valueRange.start, valueRange.end] : null;
+        this.setSchema();
+        this.anchors._cstAliases = [];
+        parseContents(this, contents);
+        this.anchors.resolveNodes();
+        if (this.options.prettyErrors) {
+          for (const error2 of this.errors) if (error2 instanceof PlainValue.YAMLError) error2.makePretty();
+          for (const warn of this.warnings) if (warn instanceof PlainValue.YAMLError) warn.makePretty();
+        }
+        return this;
+      }
+      listNonDefaultTags() {
+        return listTagNames(this.contents).filter((t) => t.indexOf(Schema2.Schema.defaultPrefix) !== 0);
+      }
+      setTagPrefix(handle, prefix) {
+        if (handle[0] !== "!" || handle[handle.length - 1] !== "!") throw new Error("Handle must start and end with !");
+        if (prefix) {
+          const prev = this.tagPrefixes.find((p) => p.handle === handle);
+          if (prev) prev.prefix = prefix;
+          else this.tagPrefixes.push({
+            handle,
+            prefix
+          });
+        } else {
+          this.tagPrefixes = this.tagPrefixes.filter((p) => p.handle !== handle);
+        }
+      }
+      toJSON(arg, onAnchor) {
+        const {
+          keepBlobsInJSON,
+          mapAsMap,
+          maxAliasCount
+        } = this.options;
+        const keep = keepBlobsInJSON && (typeof arg !== "string" || !(this.contents instanceof resolveSeq.Scalar));
+        const ctx = {
+          doc: this,
+          indentStep: "  ",
+          keep,
+          mapAsMap: keep && !!mapAsMap,
+          maxAliasCount,
+          stringify: stringify3
+          // Requiring directly in Pair would create circular dependencies
+        };
+        const anchorNames = Object.keys(this.anchors.map);
+        if (anchorNames.length > 0) ctx.anchors = new Map(anchorNames.map((name) => [this.anchors.map[name], {
+          alias: [],
+          aliasCount: 0,
+          count: 1
+        }]));
+        const res = resolveSeq.toJSON(this.contents, arg, ctx);
+        if (typeof onAnchor === "function" && ctx.anchors) for (const {
+          count: count2,
+          res: res2
+        } of ctx.anchors.values()) onAnchor(res2, count2);
+        return res;
+      }
+      toString() {
+        if (this.errors.length > 0) throw new Error("Document with errors cannot be stringified");
+        const indentSize = this.options.indent;
+        if (!Number.isInteger(indentSize) || indentSize <= 0) {
+          const s = JSON.stringify(indentSize);
+          throw new Error(`"indent" option must be a positive integer, not ${s}`);
+        }
+        this.setSchema();
+        const lines = [];
+        let hasDirectives = false;
+        if (this.version) {
+          let vd = "%YAML 1.2";
+          if (this.schema.name === "yaml-1.1") {
+            if (this.version === "1.0") vd = "%YAML:1.0";
+            else if (this.version === "1.1") vd = "%YAML 1.1";
+          }
+          lines.push(vd);
+          hasDirectives = true;
+        }
+        const tagNames = this.listNonDefaultTags();
+        this.tagPrefixes.forEach(({
+          handle,
+          prefix
+        }) => {
+          if (tagNames.some((t) => t.indexOf(prefix) === 0)) {
+            lines.push(`%TAG ${handle} ${prefix}`);
+            hasDirectives = true;
+          }
+        });
+        if (hasDirectives || this.directivesEndMarker) lines.push("---");
+        if (this.commentBefore) {
+          if (hasDirectives || !this.directivesEndMarker) lines.unshift("");
+          lines.unshift(this.commentBefore.replace(/^/gm, "#"));
+        }
+        const ctx = {
+          anchors: /* @__PURE__ */ Object.create(null),
+          doc: this,
+          indent: "",
+          indentStep: " ".repeat(indentSize),
+          stringify: stringify3
+          // Requiring directly in nodes would create circular dependencies
+        };
+        let chompKeep = false;
+        let contentComment = null;
+        if (this.contents) {
+          if (this.contents instanceof resolveSeq.Node) {
+            if (this.contents.spaceBefore && (hasDirectives || this.directivesEndMarker)) lines.push("");
+            if (this.contents.commentBefore) lines.push(this.contents.commentBefore.replace(/^/gm, "#"));
+            ctx.forceBlockIndent = !!this.comment;
+            contentComment = this.contents.comment;
+          }
+          const onChompKeep = contentComment ? null : () => chompKeep = true;
+          const body = stringify3(this.contents, ctx, () => contentComment = null, onChompKeep);
+          lines.push(resolveSeq.addComment(body, "", contentComment));
+        } else if (this.contents !== void 0) {
+          lines.push(stringify3(this.contents, ctx));
+        }
+        if (this.comment) {
+          if ((!chompKeep || contentComment) && lines[lines.length - 1] !== "") lines.push("");
+          lines.push(this.comment.replace(/^/gm, "#"));
+        }
+        return lines.join("\n") + "\n";
+      }
+    };
+    PlainValue._defineProperty(Document, "defaults", documentOptions);
+    exports2.Document = Document;
+    exports2.defaultOptions = defaultOptions;
+    exports2.scalarOptions = scalarOptions;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/index.js
+var require_dist = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/index.js"(exports2) {
+    "use strict";
+    var parseCst = require_parse_cst();
+    var Document$1 = require_Document_a8d0fbf9();
+    var Schema2 = require_Schema_bcc6c2d7();
+    var PlainValue = require_PlainValue_516d5bc2();
+    var warnings = require_warnings_793925ce();
+    require_resolveSeq_95613e94();
+    function createNode(value, wrapScalars = true, tag) {
+      if (tag === void 0 && typeof wrapScalars === "string") {
+        tag = wrapScalars;
+        wrapScalars = true;
+      }
+      const options = Object.assign({}, Document$1.Document.defaults[Document$1.defaultOptions.version], Document$1.defaultOptions);
+      const schema = new Schema2.Schema(options);
+      return schema.createNode(value, wrapScalars, tag);
+    }
+    var Document = class extends Document$1.Document {
+      constructor(options) {
+        super(Object.assign({}, Document$1.defaultOptions, options));
+      }
+    };
+    function parseAllDocuments(src, options) {
+      const stream = [];
+      let prev;
+      for (const cstDoc of parseCst.parse(src)) {
+        const doc = new Document(options);
+        doc.parse(cstDoc, prev);
+        stream.push(doc);
+        prev = doc;
+      }
+      return stream;
+    }
+    function parseDocument(src, options) {
+      const cst = parseCst.parse(src);
+      const doc = new Document(options).parse(cst[0]);
+      if (cst.length > 1) {
+        const errMsg = "Source contains multiple documents; please use YAML.parseAllDocuments()";
+        doc.errors.unshift(new PlainValue.YAMLSemanticError(cst[1], errMsg));
+      }
+      return doc;
+    }
+    function parse3(src, options) {
+      const doc = parseDocument(src, options);
+      doc.warnings.forEach((warning) => warnings.warn(warning));
+      if (doc.errors.length > 0) throw doc.errors[0];
+      return doc.toJSON();
+    }
+    function stringify3(value, options) {
+      const doc = new Document(options);
+      doc.contents = value;
+      return String(doc);
+    }
+    var YAML = {
+      createNode,
+      defaultOptions: Document$1.defaultOptions,
+      Document,
+      parse: parse3,
+      parseAllDocuments,
+      parseCST: parseCst.parse,
+      parseDocument,
+      scalarOptions: Document$1.scalarOptions,
+      stringify: stringify3
+    };
+    exports2.YAML = YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/index.js
+var require_yaml = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/index.js"(exports2, module2) {
+    module2.exports = require_dist().YAML;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/dist/types.js
+var require_types = __commonJS({
+  "../../aws-cdk-lib/node_modules/yaml/dist/types.js"(exports2) {
+    "use strict";
+    var resolveSeq = require_resolveSeq_95613e94();
+    var Schema2 = require_Schema_bcc6c2d7();
+    require_PlainValue_516d5bc2();
+    require_warnings_793925ce();
+    exports2.Alias = resolveSeq.Alias;
+    exports2.Collection = resolveSeq.Collection;
+    exports2.Merge = resolveSeq.Merge;
+    exports2.Node = resolveSeq.Node;
+    exports2.Pair = resolveSeq.Pair;
+    exports2.Scalar = resolveSeq.Scalar;
+    exports2.YAMLMap = resolveSeq.YAMLMap;
+    exports2.YAMLSeq = resolveSeq.YAMLSeq;
+    exports2.binaryOptions = resolveSeq.binaryOptions;
+    exports2.boolOptions = resolveSeq.boolOptions;
+    exports2.intOptions = resolveSeq.intOptions;
+    exports2.nullOptions = resolveSeq.nullOptions;
+    exports2.strOptions = resolveSeq.strOptions;
+    exports2.Schema = Schema2.Schema;
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/yaml/types.mjs
+var import_types, binaryOptions, boolOptions, intOptions, nullOptions, strOptions, Schema, Alias, Collection, Merge, Node5, Pair, Scalar, YAMLMap, YAMLSeq;
+var init_types = __esm({
+  "../../aws-cdk-lib/node_modules/yaml/types.mjs"() {
+    import_types = __toESM(require_types(), 1);
+    binaryOptions = import_types.default.binaryOptions;
+    boolOptions = import_types.default.boolOptions;
+    intOptions = import_types.default.intOptions;
+    nullOptions = import_types.default.nullOptions;
+    strOptions = import_types.default.strOptions;
+    Schema = import_types.default.Schema;
+    Alias = import_types.default.Alias;
+    Collection = import_types.default.Collection;
+    Merge = import_types.default.Merge;
+    Node5 = import_types.default.Node;
+    Pair = import_types.default.Pair;
+    Scalar = import_types.default.Scalar;
+    YAMLMap = import_types.default.YAMLMap;
+    YAMLSeq = import_types.default.YAMLSeq;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/yaml-cfn.ts
+function serialize(obj) {
+  const oldFold = strOptions.fold.lineWidth;
+  try {
+    strOptions.fold.lineWidth = 0;
+    return yaml.stringify(obj, { schema: "yaml-1.1" });
+  } finally {
+    strOptions.fold.lineWidth = oldFold;
+  }
+}
+var yaml;
+var init_yaml_cfn = __esm({
+  "../../aws-cdk-lib/core/lib/private/yaml-cfn.ts"() {
+    "use strict";
+    yaml = __toESM(require_yaml());
+    init_types();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts
+function fnJoinConcat(parts) {
+  return { "Fn::Join": ["", minimalCloudFormationJoin("", parts)] };
+}
+function tokenAwareStringify(root, space, ctx) {
+  let indent = 0;
+  const ret = new Array();
+  recurse(ctx.resolve(root, { allowIntrinsicKeys: true }));
+  switch (ret.length) {
+    case 0:
+      return void 0;
+    case 1:
+      return renderSegment(ret[0]);
+    default:
+      return fnJoinConcat(ret.map(renderSegment));
+  }
+  function recurse(obj) {
+    if (obj === void 0) {
+      return;
+    }
+    if (Token.isUnresolved(obj)) {
+      throw new UnscopedValidationError(lit`ShouldNotHappenAnymore`, "This shouldn't happen anymore");
+    }
+    if (Array.isArray(obj)) {
+      return renderCollection("[", "]", obj, recurse);
+    }
+    if (typeof obj === "object" && obj != null && !(obj instanceof Date)) {
+      if (isIntrinsic(obj) && resolvedTypeHint(obj)) {
+        renderIntrinsic(obj);
+        return;
+      }
+      return renderCollection("{", "}", definedEntries(obj), ([key, value]) => {
+        if (key.startsWith(INTRINSIC_KEY_PREFIX)) {
+          [key, value] = value;
+        }
+        recurse(key);
+        pushLiteral(prettyPunctuation(":"));
+        recurse(value);
+      });
+    }
+    pushLiteral(JSON.stringify(obj));
+  }
+  function renderCollection(pre, post, xs, each) {
+    pushLiteral(pre);
+    indent += space;
+    let atLeastOne = false;
+    for (const [comma, item] of sepIter(xs)) {
+      if (comma) {
+        pushLiteral(",");
+      }
+      pushLineBreak();
+      each(item);
+      atLeastOne = true;
+    }
+    indent -= space;
+    if (atLeastOne) {
+      pushLineBreak();
+    }
+    pushLiteral(post);
+  }
+  function renderIntrinsic(intrinsic) {
+    switch (resolvedTypeHint(intrinsic)) {
+      case "string" /* STRING */:
+        pushLiteral('"');
+        pushIntrinsic(deepQuoteStringLiterals(intrinsic));
+        pushLiteral('"');
+        return;
+      case "string-list" /* STRING_LIST */:
+        const stack = stackOf(ctx.scope);
+        const stringifyResponse = stringifyCache.obtain(stack, JSON.stringify(intrinsic), () => {
+          const id = makeUniqueId(["CdkJsonStringify", JSON.stringify(intrinsic)]);
+          return CfnUtils.stringify(stack, id, intrinsic);
+        });
+        pushIntrinsic(stringifyResponse);
+        return;
+      case "number" /* NUMBER */:
+        pushIntrinsic(intrinsic);
+        return;
+    }
+    throw new UnscopedValidationError(lit`UnexpectedTypeHint`, `Unexpected type hint: ${resolvedTypeHint(intrinsic)}`);
+  }
+  function pushLiteral(literal) {
+    let last2 = ret[ret.length - 1];
+    if (last2?.type !== "literal") {
+      last2 = { type: "literal", parts: [] };
+      ret.push(last2);
+    }
+    last2.parts.push(literal);
+  }
+  function pushIntrinsic(intrinsic) {
+    ret.push({ type: "intrinsic", intrinsic });
+  }
+  function pushLineBreak() {
+    if (space > 0) {
+      pushLiteral(`
+${" ".repeat(indent)}`);
+    }
+  }
+  function prettyPunctuation(punc) {
+    return space > 0 ? `${punc} ` : punc;
+  }
+}
+function renderSegment(s) {
+  switch (s.type) {
+    case "literal":
+      return s.parts.join("");
+    case "intrinsic":
+      return s.intrinsic;
+  }
+}
+function minimalCloudFormationJoin(delimiter, values) {
+  let i = 0;
+  while (i < values.length) {
+    const el = values[i];
+    if (isSplicableFnJoinIntrinsic(el)) {
+      values.splice(i, 1, ...el["Fn::Join"][1]);
+    } else if (i > 0 && isConcatable(values[i - 1]) && isConcatable(values[i])) {
+      values[i - 1] = `${values[i - 1]}${delimiter}${values[i]}`;
+      values.splice(i, 1);
+    } else {
+      i += 1;
+    }
+  }
+  return values;
+  function isSplicableFnJoinIntrinsic(obj) {
+    if (!isIntrinsic(obj)) {
+      return false;
+    }
+    if (Object.keys(obj)[0] !== "Fn::Join") {
+      return false;
+    }
+    const [delim, list] = obj["Fn::Join"];
+    if (delim !== delimiter) {
+      return false;
+    }
+    if (Token.isUnresolved(list)) {
+      return false;
+    }
+    if (!Array.isArray(list)) {
+      return false;
+    }
+    return true;
+  }
+}
+function isConcatable(obj) {
+  return ["string", "number"].includes(typeof obj) && !Token.isUnresolved(obj);
+}
+function isIntrinsic(x) {
+  if (Array.isArray(x) || x === null || typeof x !== "object") {
+    return false;
+  }
+  const keys = Object.keys(x);
+  if (keys.length !== 1) {
+    return false;
+  }
+  return keys[0] === "Ref" || isNameOfCloudFormationIntrinsic(keys[0]);
+}
+function isNameOfCloudFormationIntrinsic(name) {
+  if (!name.startsWith("Fn::")) {
+    return false;
+  }
+  return name !== "Fn::GetArtifactAtt" && name !== "Fn::GetParam";
+}
+function* sepIter(xs) {
+  let comma = false;
+  for (const item of xs) {
+    yield [comma, item];
+    comma = true;
+  }
+}
+function* definedEntries(xs) {
+  for (const [key, value] of Object.entries(xs)) {
+    if (value !== void 0) {
+      yield [key, value];
+    }
+  }
+}
+function deepQuoteStringLiterals(x) {
+  if (Array.isArray(x)) {
+    return x.map(deepQuoteStringLiterals);
+  }
+  if (typeof x === "object" && x != null) {
+    const ret = {};
+    for (const [key, value] of Object.entries(x)) {
+      ret[deepQuoteStringLiterals(key)] = deepQuoteStringLiterals(value);
+    }
+    return ret;
+  }
+  if (typeof x === "string") {
+    return quoteString(x);
+  }
+  return x;
+}
+function quoteString(s) {
+  s = JSON.stringify(s);
+  return s.substring(1, s.length - 1);
+}
+var CloudFormationLang, CLOUDFORMATION_CONCAT, CLOUDFORMATION_TOKEN_RESOLVER, ScopedCache, stringifyCache;
+var init_cloudformation_lang = __esm({
+  "../../aws-cdk-lib/core/lib/private/cloudformation-lang.ts"() {
+    "use strict";
+    init_cfn_utils_provider();
+    init_resolve();
+    init_yaml_cfn();
+    init_lazy();
+    init_resolvable();
+    init_token();
+    init_type_hints();
+    init_uniqueid();
+    init_errors();
+    init_literal_string();
+    init_helpers_internal();
+    init_core_construct_finders();
+    CloudFormationLang = class {
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a JSON string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the JSON representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       * @param space Indentation to use (default: no pretty-printing)
+       */
+      static toJSON(obj, space) {
+        return Lazy.uncachedString({
+          // We used to do this by hooking into `JSON.stringify()` by adding in objects
+          // with custom `toJSON()` functions, but it's ultimately simpler just to
+          // reimplement the `stringify()` function from scratch.
+          produce: (ctx) => tokenAwareStringify(obj, space ?? 0, ctx)
+        });
+      }
+      /**
+       * Turn an arbitrary structure potentially containing Tokens into a YAML string.
+       *
+       * Returns a Token which will evaluate to CloudFormation expression that
+       * will be evaluated by CloudFormation to the YAML representation of the
+       * input structure.
+       *
+       * All Tokens substituted in this way must return strings, or the evaluation
+       * in CloudFormation will fail.
+       *
+       * @param obj The object to stringify
+       */
+      static toYAML(obj) {
+        return Token.asString(Box.fromValue(obj).derive((data) => serialize(data)));
+      }
+      /**
+       * Produce a CloudFormation expression to concat two arbitrary expressions when resolving
+       */
+      static concat(left, right) {
+        if (left === void 0 && right === void 0) {
+          return "";
+        }
+        const parts = new Array();
+        if (left !== void 0) {
+          parts.push(left);
+        }
+        if (right !== void 0) {
+          parts.push(right);
+        }
+        if (parts.length === 1) {
+          return parts[0];
+        }
+        if (parts.length === 2 && isConcatable(parts[0]) && isConcatable(parts[1])) {
+          return `${parts[0]}${parts[1]}`;
+        }
+        return fnJoinConcat(parts);
+      }
+    };
+    CLOUDFORMATION_CONCAT = {
+      join(left, right) {
+        return CloudFormationLang.concat(left, right);
+      }
+    };
+    CLOUDFORMATION_TOKEN_RESOLVER = new DefaultTokenResolver(CLOUDFORMATION_CONCAT);
+    ScopedCache = class {
+      cache = /* @__PURE__ */ new WeakMap();
+      obtain(object, key, init) {
+        let kvMap = this.cache.get(object);
+        if (!kvMap) {
+          kvMap = /* @__PURE__ */ new Map();
+          this.cache.set(object, kvMap);
+        }
+        let ret = kvMap.get(key);
+        if (ret === void 0) {
+          ret = init();
+          kvMap.set(key, ret);
+        }
+        return ret;
+      }
+    };
+    stringifyCache = new ScopedCache();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-fn.ts
+function _inGroupsOf(array, maxGroup) {
+  const result = new Array();
+  for (let i = 0; i < array.length; i += maxGroup) {
+    result.push(array.slice(i, i + maxGroup));
+  }
+  return result;
+}
+function range2(n) {
+  const ret = [];
+  for (let i = 0; i < n; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+var Fn, FN_BASE_SYMBOL, FnBase, FnRef, FnFindInMap, FnTransform, FnGetAtt, FnGetAZs, FnImportValue, FnGetStackOutput, FnSelect, FnSplit, FnSub, FnBase64, FnCidr, FnConditionBase, FnAnd, FnEquals, FnIf, FnNot, FnOr, FnContains, FnEachMemberEquals, FnEachMemberIn, FnRefAll, FnValueOf, FnValueOfAll, FnJoin, FnToJsonString, FnLength;
+var init_cfn_fn = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-fn.ts"() {
+    "use strict";
+    init_errors();
+    init_cloudformation_lang();
+    init_core_construct_finders();
+    init_intrinsic();
+    init_literal_string();
+    init_reference();
+    init_token();
+    Fn = class _Fn {
+      /**
+       * The ``Ref`` intrinsic function returns the value of the specified parameter or resource.
+       * Note that it doesn't validate the logicalName, it mainly serves parameter/resource reference defined in a ``CfnInclude`` template.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      static ref(logicalName) {
+        return new FnRef(logicalName).toString();
+      }
+      /**
+       * The ``Fn::GetAtt`` intrinsic function returns the value of an attribute
+       * from a resource in the template.
+       * @param logicalNameOfResource The logical name (also called logical ID) of
+       * the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose
+       * value you want. See the resource's reference page for details about the
+       * attributes available for that resource type.
+       * @returns an IResolvable object
+       */
+      static getAtt(logicalNameOfResource, attributeName) {
+        return new FnGetAtt(logicalNameOfResource, attributeName);
+      }
+      /**
+       * The intrinsic function ``Fn::Join`` appends a set of values into a single
+       * value, separated by the specified delimiter. If a delimiter is the empty
+       * string, the set of values are concatenated with no delimiter.
+       * @param delimiter The value you want to occur between fragments. The
+       * delimiter will occur between fragments only. It will not terminate the
+       * final value.
+       * @param listOfValues The list of values you want combined.
+       * @returns a token represented as a string
+       */
+      static join(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        return new FnJoin(delimiter, listOfValues).toString();
+      }
+      /**
+       * Split a string token into a token list of string values.
+       *
+       * Specify the location of splits with a delimiter such as ',' (a comma).
+       * Renders to the `Fn::Split` intrinsic function.
+       *
+       * Lists with unknown lengths (default)
+       * -------------------------------------
+       *
+       * Since this function is used to work with deploy-time values, if `assumedLength`
+       * is not given the CDK cannot know the length of the resulting list at synthesis time.
+       * This brings the following restrictions:
+       *
+       * - You must use `Fn.select(i, list)` to pick elements out of the list (you must not use
+       *   `list[i]`).
+       * - You cannot add elements to the list, remove elements from the list,
+       *   combine two such lists together, or take a slice of the list.
+       * - You cannot pass the list to constructs that do any of the above.
+       *
+       * The only valid operation with such a tokenized list is to pass it unmodified to a
+       * CloudFormation Resource construct.
+       *
+       * Lists with assumed lengths
+       * --------------------------
+       *
+       * Pass `assumedLength` if you know the length of the list that will be
+       * produced by splitting. The actual list length at deploy time may be
+       * *longer* than the number you pass, but not *shorter*.
+       *
+       * The returned list will look like:
+       *
+       * ```
+       * [Fn.select(0, split), Fn.select(1, split), Fn.select(2, split), ...]
+       * ```
+       *
+       * The restrictions from the section "Lists with unknown lengths" will now be lifted,
+       * at the expense of having to know and fix the length of the list.
+       *
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       * @param assumedLength The length of the list that will be produced by splitting
+       * @returns a token represented as a string array
+       */
+      static split(delimiter, source, assumedLength) {
+        if (!Token.isUnresolved(source)) {
+          return source.split(delimiter);
+        }
+        if (Token.isUnresolved(delimiter)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'delimiter' may not be a token value");
+        }
+        const split = Token.asList(new FnSplit(delimiter, source));
+        if (assumedLength === void 0) {
+          return split;
+        }
+        if (Token.isUnresolved(assumedLength)) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.split: 'assumedLength' may not be a token value");
+        }
+        return range2(assumedLength).map((i) => _Fn.select(i, split));
+      }
+      /**
+       * The intrinsic function ``Fn::Select`` returns a single object from a list of objects by index.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       * @returns a token represented as a string
+       */
+      static select(index, array) {
+        if (!Token.isUnresolved(index) && !Token.isUnresolved(array) && !array.some(Token.isUnresolved)) {
+          return array[index];
+        }
+        return new FnSelect(index, array).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Sub`` substitutes variables in an input string
+       * with values that you specify. In your templates, you can use this function
+       * to construct commands or outputs that include values that aren't available
+       * until you create or update a stack.
+       * @param body A string with variables that AWS CloudFormation substitutes
+       * with their associated values at runtime. Write variables as ${MyVarName}.
+       * Variables can be template parameter names, resource logical IDs, resource
+       * attributes, or a variable in a key-value map. If you specify only template
+       * parameter names, resource logical IDs, and resource attributes, don't
+       * specify a key-value map.
+       * @param variables The name of a variable that you included in the String
+       * parameter. The value that AWS CloudFormation substitutes for the associated
+       * variable name at runtime.
+       * @returns a token represented as a string
+       */
+      static sub(body, variables) {
+        return new FnSub(body, variables).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Base64`` returns the Base64 representation of
+       * the input string. This function is typically used to pass encoded data to
+       * Amazon EC2 instances by way of the UserData property.
+       * @param data The string value you want to convert to Base64.
+       * @returns a token represented as a string
+       */
+      static base64(data) {
+        return new FnBase64(data).toString();
+      }
+      /**
+       * The intrinsic function ``Fn::Cidr`` returns the specified Cidr address block.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       * @returns a token represented as a string
+       */
+      static cidr(ipBlock, count2, sizeMask) {
+        return Token.asList(new FnCidr(ipBlock, count2, sizeMask));
+      }
+      /**
+       * Given an url, parse the domain name
+       * @param url the url to parse
+       */
+      static parseDomainName(url2) {
+        const noHttps = _Fn.select(1, _Fn.split("//", url2));
+        return _Fn.select(0, _Fn.split("/", noHttps));
+      }
+      /**
+       * The intrinsic function ``Fn::GetAZs`` returns an array that lists
+       * Availability Zones for a specified region. Because customers have access to
+       * different Availability Zones, the intrinsic function ``Fn::GetAZs`` enables
+       * template authors to write templates that adapt to the calling user's
+       * access. That way you don't have to hard-code a full list of Availability
+       * Zones for a specified region.
+       * @param region The name of the region for which you want to get the
+       * Availability Zones. You can use the AWS::Region pseudo parameter to specify
+       * the region in which the stack is created. Specifying an empty string is
+       * equivalent to specifying AWS::Region.
+       * @returns a token represented as a string array
+       */
+      static getAzs(region) {
+        return Token.asList(new FnGetAZs(region));
+      }
+      /**
+       * The intrinsic function ``Fn::ImportValue`` returns the value of an output
+       * exported by another stack. You typically use this function to create
+       * cross-stack references. In the following example template snippets, Stack A
+       * exports VPC security group values and Stack B imports them.
+       * @param sharedValueToImport The stack output value that you want to import.
+       * @returns a token represented as a string
+       */
+      static importValue(sharedValueToImport) {
+        return new FnImportValue(sharedValueToImport).toString();
+      }
+      /**
+       * The intrinsic function `Fn::GetStackOutput` returns the value of an output
+       * from another stack. This is similar to `Fn::ImportValue`, but it can reference
+       * a normal output, without the need to export anything. As with `Fn::ImportValue`,
+       * you typically use this function to create cross-stack references.
+       * @param stackName The name of the producer stack.
+       * @param outputName The name of the output to get the value from.
+       * @param region The region where the producer stack is deployed. If not provided,
+       * it will default to the same region as the consumer stack.
+       * @param roleArn The role to be used when describing the producer stack. If not
+       * provided, it will default to the role used to create the producer stack.
+       */
+      static getStackOutput(stackName, outputName, region, roleArn) {
+        return new FnGetStackOutput(stackName, outputName, region, roleArn).toString();
+      }
+      /**
+       * Like `Fn.importValue`, but import a list with a known length
+       *
+       * If you explicitly want a list with an unknown length, call `Fn.split(',',
+       * Fn.importValue(exportName))`. See the documentation of `Fn.split` to read
+       * more about the limitations of using lists of unknown length.
+       *
+       * `Fn.importListValue(exportName, assumedLength)` is the same as
+       * `Fn.split(',', Fn.importValue(exportName), assumedLength)`,
+       * but easier to read and impossible to forget to pass `assumedLength`.
+       */
+      static importListValue(sharedValueToImport, assumedLength, delimiter = ",") {
+        return _Fn.split(delimiter, _Fn.importValue(sharedValueToImport), assumedLength);
+      }
+      /**
+       * The intrinsic function ``Fn::FindInMap`` returns the value corresponding to
+       * keys in a two-level map that is declared in the Mappings section.
+       * Warning: do not use with lazy mappings as this function will not guarantee a lazy mapping to render in the template.
+       * Prefer to use `CfnMapping.findInMap` in general.
+       * @returns a token represented as a string
+       */
+      static findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return _Fn._findInMap(mapName, topLevelKey, secondLevelKey, defaultValue).toString();
+      }
+      /**
+       * An additional function used in CfnParser,
+       * as Fn::FindInMap does not always return a string.
+       *
+       * @internal
+       */
+      static _findInMap(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        return new FnFindInMap(mapName, topLevelKey, secondLevelKey, defaultValue);
+      }
+      /**
+       * Creates a token representing the ``Fn::Transform`` expression
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-transform.html
+       * @param macroName The name of the macro to perform the processing
+       * @param parameters The parameters to be passed to the macro
+       * @returns a token representing the transform expression
+       */
+      static transform(macroName, parameters) {
+        return new FnTransform(macroName, parameters);
+      }
+      /**
+       * Returns true if all the specified conditions evaluate to true, or returns
+       * false if any one of the conditions evaluates to false. ``Fn::And`` acts as
+       * an AND operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions to AND
+       * @returns an FnCondition token
+       */
+      static conditionAnd(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionAnd() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnAnd(...conditions);
+        }
+        return _Fn.conditionAnd(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionAnd(...group)));
+      }
+      /**
+       * Compares if two values are equal. Returns true if the two values are equal
+       * or false if they aren't.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       * @returns an FnCondition token
+       */
+      static conditionEquals(lhs, rhs) {
+        return new FnEquals(lhs, rhs);
+      }
+      /**
+       * Returns one value if the specified condition evaluates to true and another
+       * value if the specified condition evaluates to false. Currently, AWS
+       * CloudFormation supports the ``Fn::If`` intrinsic function in the metadata
+       * attribute, update policy attribute, and property values in the Resources
+       * section and Outputs sections of a template. You can use the AWS::NoValue
+       * pseudo parameter as a return value to remove the corresponding property.
+       * @param conditionId A reference to a condition in the Conditions section. Use
+       * the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition
+       * evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition
+       * evaluates to false.
+       * @returns an FnCondition token
+       */
+      static conditionIf(conditionId, valueIfTrue, valueIfFalse) {
+        return new FnIf(conditionId, valueIfTrue, valueIfFalse);
+      }
+      /**
+       * Returns true for a condition that evaluates to false or returns false for a
+       * condition that evaluates to true. ``Fn::Not`` acts as a NOT operator.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true
+       * or false.
+       * @returns an FnCondition token
+       */
+      static conditionNot(condition) {
+        return new FnNot(condition);
+      }
+      /**
+       * Returns true if any one of the specified conditions evaluate to true, or
+       * returns false if all of the conditions evaluates to false. ``Fn::Or`` acts
+       * as an OR operator. The minimum number of conditions that you can include is
+       * 1.
+       * @param conditions conditions that evaluates to true or false.
+       * @returns an FnCondition token
+       */
+      static conditionOr(...conditions) {
+        if (conditions.length === 0) {
+          throw new UnscopedValidationError(lit`ValidationError`, "Fn.conditionOr() needs at least one argument");
+        }
+        if (conditions.length === 1) {
+          return conditions[0];
+        }
+        if (conditions.length <= 10) {
+          return new FnOr(...conditions);
+        }
+        return _Fn.conditionOr(..._inGroupsOf(conditions, 10).map((group) => _Fn.conditionOr(...group)));
+      }
+      /**
+       * Returns true if a specified string matches at least one value in a list of
+       * strings.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       * @returns an FnCondition token
+       */
+      static conditionContains(listOfStrings, value) {
+        return new FnContains(listOfStrings, value);
+      }
+      /**
+       * Returns true if a specified string matches all values in a list.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list
+       * of strings.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberEquals(listOfStrings, value) {
+        return new FnEachMemberEquals(listOfStrings, value);
+      }
+      /**
+       * Returns true if each member in a list of strings matches at least one value
+       * in a second list of strings.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS
+       * CloudFormation checks whether each member in the strings_to_check parameter
+       * is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member
+       * in the strings_to_match parameter is compared against the members of the
+       * strings_to_check parameter.
+       * @returns an FnCondition token
+       */
+      static conditionEachMemberIn(stringsToCheck, stringsToMatch) {
+        return new FnEachMemberIn(stringsToCheck, stringsToMatch);
+      }
+      /**
+       * Returns all values for a specified parameter type.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @returns a token represented as a string array
+       */
+      static refAll(parameterType) {
+        return Token.asList(new FnRefAll(parameterType));
+      }
+      /**
+       * Returns an attribute value or list of values for a specific parameter and
+       * attribute.
+       * @param parameterOrLogicalId The name of a parameter for which you want to
+       * retrieve attribute values. The parameter must be declared in the Parameters
+       * section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value.
+       * @returns a token represented as a string
+       */
+      static valueOf(parameterOrLogicalId, attribute) {
+        return new FnValueOf(parameterOrLogicalId, attribute).toString();
+      }
+      /**
+       * Returns a list of all attribute values for a given parameter type and
+       * attribute.
+       * @param parameterType An AWS-specific parameter type, such as
+       * AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see
+       * Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a
+       * value. For more information about attributes, see Supported Attributes.
+       * @returns a token represented as a string array
+       */
+      static valueOfAll(parameterType, attribute) {
+        return Token.asList(new FnValueOfAll(parameterType, attribute));
+      }
+      /**
+       * The `Fn::ToJsonString` intrinsic function converts an object or array to its
+       * corresponding JSON string.
+       *
+       * @param object The object or array to stringify
+       */
+      static toJsonString(object) {
+        if (!Token.isUnresolved(object)) {
+          return JSON.stringify(object);
+        }
+        return new FnToJsonString(object).toString();
+      }
+      /**
+       * The intrinsic function `Fn::Length` returns the number of elements within an array
+       * or an intrinsic function that returns an array.
+       *
+       * @param array The array you want to return the number of elements from
+       */
+      static len(array) {
+        if (!Token.isUnresolved(array)) {
+          if (!Array.isArray(array)) {
+            throw new UnscopedValidationError(lit`ValidationError`, "Fn.length() needs an array");
+          }
+          return array.length;
+        }
+        return Token.asNumber(new FnLength(array));
+      }
+      /**
+       * Test whether the given object extends FnBase class.
+       *
+       * @internal
+       */
+      static _isFnBase(x) {
+        return x !== null && typeof x === "object" && FN_BASE_SYMBOL in x;
+      }
+      constructor() {
+      }
+    };
+    FN_BASE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnFnBase");
+    FnBase = class extends Intrinsic {
+      constructor(name, value) {
+        super({ [name]: value });
+        Object.defineProperty(this, FN_BASE_SYMBOL, { value: true });
+      }
+    };
+    FnRef = class extends FnBase {
+      /**
+       * Creates an ``Ref`` function.
+       * @param logicalName The logical name of a parameter/resource for which you want to retrieve its value.
+       */
+      constructor(logicalName) {
+        super("Ref", logicalName);
+      }
+    };
+    FnFindInMap = class extends FnBase {
+      /**
+       * Creates an ``Fn::FindInMap`` function.
+       * @param mapName The logical name of a mapping declared in the Mappings section that contains the keys and values.
+       * @param topLevelKey The top-level key name. Its value is a list of key-value pairs.
+       * @param secondLevelKey The second-level key name, which is set to one of the keys from the list assigned to TopLevelKey.
+       * @param defaultValue The value of the default value returned if either the key is not found in the map
+       */
+      mapName;
+      topLevelKey;
+      secondLevelKey;
+      defaultValue;
+      constructor(mapName, topLevelKey, secondLevelKey, defaultValue) {
+        super("Fn::FindInMap", [mapName, topLevelKey, secondLevelKey, defaultValue !== void 0 ? { DefaultValue: defaultValue } : void 0]);
+        this.mapName = mapName;
+        this.topLevelKey = topLevelKey;
+        this.secondLevelKey = secondLevelKey;
+        this.defaultValue = defaultValue;
+      }
+      resolve(context) {
+        if (this.defaultValue !== void 0) {
+          stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        }
+        return { "Fn::FindInMap": [this.mapName, this.topLevelKey, this.secondLevelKey, this.defaultValue !== void 0 ? { DefaultValue: this.defaultValue } : void 0] };
+      }
+    };
+    FnTransform = class extends FnBase {
+      /**
+       * creates an ``Fn::Transform`` function.
+       * @param macroName The name of the macro to be invoked
+       * @param parameters the parameters to pass to it
+       */
+      constructor(macroName, parameters) {
+        super("Fn::Transform", { Name: macroName, Parameters: parameters });
+      }
+    };
+    FnGetAtt = class extends FnBase {
+      /**
+       * Creates a ``Fn::GetAtt`` function.
+       * @param logicalNameOfResource The logical name (also called logical ID) of the resource that contains the attribute that you want.
+       * @param attributeName The name of the resource-specific attribute whose value you want. See the resource's reference page for details about the attributes available for that resource type.
+       */
+      constructor(logicalNameOfResource, attributeName) {
+        super("Fn::GetAtt", [logicalNameOfResource, attributeName]);
+      }
+    };
+    FnGetAZs = class extends FnBase {
+      /**
+       * Creates an ``Fn::GetAZs`` function.
+       * @param region The name of the region for which you want to get the Availability Zones.
+       *         You can use the AWS::Region pseudo parameter to specify the region in
+       *         which the stack is created. Specifying an empty string is equivalent to
+       *         specifying AWS::Region.
+       */
+      constructor(region) {
+        super("Fn::GetAZs", region || "");
+      }
+    };
+    FnImportValue = class extends FnBase {
+      /**
+       * Creates an ``Fn::ImportValue`` function.
+       * @param sharedValueToImport The stack output value that you want to import.
+       */
+      constructor(sharedValueToImport) {
+        super("Fn::ImportValue", sharedValueToImport);
+      }
+    };
+    FnGetStackOutput = class extends FnBase {
+      constructor(stackName, outputName, region, roleArn) {
+        super("Fn::GetStackOutput", {
+          StackName: stackName,
+          Region: region,
+          RoleArn: roleArn,
+          OutputName: outputName
+        });
+      }
+    };
+    FnSelect = class extends FnBase {
+      /**
+       * Creates an ``Fn::Select`` function.
+       * @param index The index of the object to retrieve. This must be a value from zero to N-1, where N represents the number of elements in the array.
+       * @param array The list of objects to select from. This list must not be null, nor can it have null entries.
+       */
+      constructor(index, array) {
+        super("Fn::Select", [index, array]);
+      }
+    };
+    FnSplit = class extends FnBase {
+      /**
+       * Create an ``Fn::Split`` function.
+       * @param delimiter A string value that determines where the source string is divided.
+       * @param source The string value that you want to split.
+       */
+      constructor(delimiter, source) {
+        super("Fn::Split", [delimiter, source]);
+      }
+    };
+    FnSub = class extends FnBase {
+      /**
+       * Creates an ``Fn::Sub`` function.
+       * @param body A string with variables that AWS CloudFormation substitutes with their
+       *       associated values at runtime. Write variables as ${MyVarName}. Variables
+       *       can be template parameter names, resource logical IDs, resource attributes,
+       *       or a variable in a key-value map. If you specify only template parameter names,
+       *       resource logical IDs, and resource attributes, don't specify a key-value map.
+       * @param variables The name of a variable that you included in the String parameter.
+       *          The value that AWS CloudFormation substitutes for the associated variable name at runtime.
+       */
+      constructor(body, variables) {
+        super("Fn::Sub", variables ? [body, variables] : body);
+      }
+    };
+    FnBase64 = class extends FnBase {
+      /**
+       * Creates an ``Fn::Base64`` function.
+       * @param data The string value you want to convert to Base64.
+       */
+      constructor(data) {
+        super("Fn::Base64", data);
+      }
+    };
+    FnCidr = class extends FnBase {
+      /**
+       * Creates an ``Fn::Cidr`` function.
+       * @param ipBlock  The user-specified default Cidr address block.
+       * @param count  The number of subnets' Cidr block wanted. Count can be 1 to 256.
+       * @param sizeMask The digit covered in the subnet.
+       */
+      constructor(ipBlock, count2, sizeMask) {
+        if (count2 < 1 || count2 > 256) {
+          throw new UnscopedValidationError(lit`MustBeFnCidrSCountAttribute`, `Fn::Cidr's count attribute must be between 1 and 256, ${count2} was provided.`);
+        }
+        super("Fn::Cidr", [ipBlock, count2, sizeMask]);
+      }
+    };
+    FnConditionBase = class extends Intrinsic {
+      disambiguator = true;
+      constructor(type, value) {
+        super({ [type]: value });
+      }
+    };
+    FnAnd = class extends FnConditionBase {
+      constructor(...condition) {
+        super("Fn::And", condition);
+      }
+    };
+    FnEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Equals`` condition function.
+       * @param lhs A value of any type that you want to compare.
+       * @param rhs A value of any type that you want to compare.
+       */
+      constructor(lhs, rhs) {
+        super("Fn::Equals", [lhs, rhs]);
+      }
+    };
+    FnIf = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::If`` condition function.
+       * @param condition A reference to a condition in the Conditions section. Use the condition's name to reference it.
+       * @param valueIfTrue A value to be returned if the specified condition evaluates to true.
+       * @param valueIfFalse A value to be returned if the specified condition evaluates to false.
+       */
+      constructor(condition, valueIfTrue, valueIfFalse) {
+        super("Fn::If", [condition, valueIfTrue, valueIfFalse]);
+      }
+    };
+    FnNot = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Not`` condition function.
+       * @param condition A condition such as ``Fn::Equals`` that evaluates to true or false.
+       */
+      constructor(condition) {
+        super("Fn::Not", [condition]);
+      }
+    };
+    FnOr = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Or`` condition function.
+       * @param condition A condition that evaluates to true or false.
+       */
+      constructor(...condition) {
+        super("Fn::Or", condition);
+      }
+    };
+    FnContains = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::Contains`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::Contains", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberEquals = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberEquals`` function.
+       * @param listOfStrings A list of strings, such as "A", "B", "C".
+       * @param value A string, such as "A", that you want to compare against a list of strings.
+       */
+      constructor(listOfStrings, value) {
+        super("Fn::EachMemberEquals", [listOfStrings, value]);
+      }
+    };
+    FnEachMemberIn = class extends FnConditionBase {
+      /**
+       * Creates an ``Fn::EachMemberIn`` function.
+       * @param stringsToCheck A list of strings, such as "A", "B", "C". AWS CloudFormation checks whether each member in the strings_to_check parameter is in the strings_to_match parameter.
+       * @param stringsToMatch A list of strings, such as "A", "B", "C". Each member in the strings_to_match parameter is compared against the members of the strings_to_check parameter.
+       */
+      constructor(stringsToCheck, stringsToMatch) {
+        super("Fn::EachMemberIn", [stringsToCheck, stringsToMatch]);
+      }
+    };
+    FnRefAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::RefAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or
+       *            AWS::EC2::VPC::Id. For more information, see Parameters in the AWS
+       *            CloudFormation User Guide.
+       */
+      constructor(parameterType) {
+        super("Fn::RefAll", parameterType);
+      }
+    };
+    FnValueOf = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOf`` function.
+       * @param parameterOrLogicalId The name of a parameter for which you want to retrieve attribute values. The parameter must be declared in the Parameters section of the template.
+       * @param attribute The name of an attribute from which you want to retrieve a value.
+       */
+      constructor(parameterOrLogicalId, attribute) {
+        super("Fn::ValueOf", [parameterOrLogicalId, attribute]);
+      }
+    };
+    FnValueOfAll = class extends FnBase {
+      /**
+       * Creates an ``Fn::ValueOfAll`` function.
+       * @param parameterType An AWS-specific parameter type, such as AWS::EC2::SecurityGroup::Id or AWS::EC2::VPC::Id. For more information, see Parameters in the AWS CloudFormation User Guide.
+       * @param attribute The name of an attribute from which you want to retrieve a value. For more information about attributes, see Supported Attributes.
+       */
+      constructor(parameterType, attribute) {
+        super("Fn::ValueOfAll", [parameterType, attribute]);
+      }
+    };
+    FnJoin = class {
+      creationStack;
+      delimiter;
+      listOfValues;
+      /**
+       * Creates an ``Fn::Join`` function.
+       * @param delimiter The value you want to occur between fragments. The delimiter will occur between fragments only.
+       *          It will not terminate the final value.
+       * @param listOfValues The list of values you want combined.
+       */
+      constructor(delimiter, listOfValues) {
+        if (listOfValues.length === 0) {
+          throw new UnscopedValidationError(lit`RequiresFnjoinRequiresLeast`, "FnJoin requires at least one value to be provided");
+        }
+        this.delimiter = delimiter;
+        this.listOfValues = listOfValues;
+      }
+      resolve(context) {
+        if (Token.isUnresolved(this.listOfValues)) {
+          return { "Fn::Join": [this.delimiter, this.listOfValues] };
+        }
+        const resolved = this.resolveValues(context);
+        if (resolved.length === 1) {
+          return resolved[0];
+        }
+        return { "Fn::Join": [this.delimiter, resolved] };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Join" });
+      }
+      toJSON() {
+        return "";
+      }
+      /**
+       * Optimization: if a Fn::Join is nested in another one and they share the same delimiter, then flatten it up. Also,
+       * if two concatenated elements are literal strings (not tokens), then pre-concatenate them with the delimiter, to
+       * generate shorter output.
+       */
+      resolveValues(context) {
+        const resolvedValues = this.listOfValues.map((x) => Reference.isReference(x) ? x : context.resolve(x));
+        return minimalCloudFormationJoin(this.delimiter, resolvedValues);
+      }
+    };
+    FnJoin.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnToJsonString = class {
+      creationStack;
+      object;
+      constructor(object) {
+        this.object = object;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::ToJsonString": this.object };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::ToJsonString" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnToJsonString.prototype.creationStack = ["Token stack traces are no longer captured"];
+    FnLength = class {
+      creationStack;
+      array;
+      constructor(array) {
+        this.array = array;
+      }
+      resolve(context) {
+        stackOf(context.scope).addTransform("AWS::LanguageExtensions");
+        return { "Fn::Length": this.array };
+      }
+      toString() {
+        return Token.asString(this, { displayHint: "Fn::Length" });
+      }
+      toJSON() {
+        return "";
+      }
+    };
+    FnLength.prototype.creationStack = ["Token stack traces are no longer captured"];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-pseudo.ts
+function pseudoString(name) {
+  return Token.asString({ Ref: name }, { displayHint: name.replace("::", ".") });
+}
+var AWS_ACCOUNTID, AWS_URLSUFFIX, AWS_NOTIFICATIONARNS, AWS_PARTITION, AWS_REGION, AWS_STACKID, AWS_STACKNAME, AWS_NOVALUE, Aws, ScopedAws;
+var init_cfn_pseudo = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-pseudo.ts"() {
+    "use strict";
+    init_cfn_reference();
+    init_token();
+    AWS_ACCOUNTID = "AWS::AccountId";
+    AWS_URLSUFFIX = "AWS::URLSuffix";
+    AWS_NOTIFICATIONARNS = "AWS::NotificationARNs";
+    AWS_PARTITION = "AWS::Partition";
+    AWS_REGION = "AWS::Region";
+    AWS_STACKID = "AWS::StackId";
+    AWS_STACKNAME = "AWS::StackName";
+    AWS_NOVALUE = "AWS::NoValue";
+    Aws = class {
+      static ACCOUNT_ID = pseudoString(AWS_ACCOUNTID);
+      static URL_SUFFIX = pseudoString(AWS_URLSUFFIX);
+      static NOTIFICATION_ARNS = Token.asList({ Ref: AWS_NOTIFICATIONARNS }, { displayHint: AWS_NOTIFICATIONARNS });
+      static PARTITION = pseudoString(AWS_PARTITION);
+      static REGION = pseudoString(AWS_REGION);
+      static STACK_ID = pseudoString(AWS_STACKID);
+      static STACK_NAME = pseudoString(AWS_STACKNAME);
+      static NO_VALUE = pseudoString(AWS_NOVALUE);
+      constructor() {
+      }
+    };
+    ScopedAws = class {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      get accountId() {
+        return this.asString(AWS_ACCOUNTID);
+      }
+      get urlSuffix() {
+        return this.asString(AWS_URLSUFFIX);
+      }
+      get notificationArns() {
+        return Token.asList(CfnReference.forPseudo(AWS_NOTIFICATIONARNS, this.scope), {
+          displayHint: AWS_NOTIFICATIONARNS
+        });
+      }
+      get partition() {
+        return this.asString(AWS_PARTITION);
+      }
+      get region() {
+        return this.asString(AWS_REGION);
+      }
+      get stackId() {
+        return this.asString(AWS_STACKID);
+      }
+      get stackName() {
+        return this.asString(AWS_STACKNAME);
+      }
+      asString(name) {
+        return Token.asString(CfnReference.forPseudo(name, this.scope), { displayHint: name });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource-policy.ts
+var init_cfn_resource_policy = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource-policy.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts
+var init_cfn_parse = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-parse.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource_policy();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_cfn_reference();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts
+function getPrecreatedRoleConfig(scope, rolePath) {
+  const precreatedRolePath = rolePath ?? scope.node.path;
+  const customizeRolesContext = scope.node.tryGetContext(CUSTOMIZE_ROLES_CONTEXT_KEY);
+  if (customizeRolesContext !== void 0) {
+    const customizeRoles = customizeRolesContext;
+    if (customizeRoles.preventSynthesis === false) {
+      return {
+        preventSynthesis: false,
+        enabled: true
+      };
+    }
+    if (customizeRoles.usePrecreatedRoles?.hasOwnProperty(precreatedRolePath)) {
+      if (Token.isUnresolved(customizeRoles.usePrecreatedRoles[precreatedRolePath])) {
+        Annotations.of(scope)._addTrackableError(
+          lit`UnresolvablePrecreatedRoleName`,
+          `Cannot resolve precreated role name at path "${precreatedRolePath}". The value may be a token.`
+        );
+      } else {
+        return {
+          enabled: true,
+          preventSynthesis: true,
+          precreatedRoleName: customizeRoles.usePrecreatedRoles[precreatedRolePath]
+        };
+      }
+    } else {
+      Annotations.of(scope)._addTrackableError(
+        lit`MissingPrecreatedRoleName`,
+        `IAM Role is being created at path "${precreatedRolePath}" and customizeRoles.preventSynthesis is enabled. You must provide a precreated role name in customizeRoles.precreatedRoles`
+      );
+    }
+    return {
+      enabled: true,
+      preventSynthesis: true
+    };
+  }
+  return { enabled: false };
+}
+var fs9, path10, import_constructs10, POLICY_SYNTHESIZER_ID, PolicySynthesizerTokenResolver, PolicySynthesizer, CUSTOMIZE_ROLES_CONTEXT_KEY;
+var init_customize_roles = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/customize-roles.ts"() {
+    "use strict";
+    fs9 = __toESM(require("fs"));
+    path10 = __toESM(require("path"));
+    import_constructs10 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_errors();
+    init_literal_string();
+    init_reference();
+    init_resolvable();
+    init_token();
+    POLICY_SYNTHESIZER_ID = "PolicySynthesizer";
+    PolicySynthesizerTokenResolver = class extends DefaultTokenResolver {
+      constructor(concat) {
+        super(concat);
+      }
+      /**
+       * PolicySynthesizer Token resolution
+       *
+       * Resolve the Token until the token can be resolved into
+       * "(Path/To/SomeResource.Arn)" format. Otherwise, recurse
+       * into whatever it returns,
+       */
+      resolveToken(t, context, postProcessor) {
+        try {
+          let resolved = t.resolve(context);
+          const resolvable = Tokenization.reverseString(resolved);
+          if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+            return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+          }
+          resolved = context.resolve(resolved);
+          resolved = postProcessor.postProcess(resolved, context);
+          return resolved;
+        } catch (e) {
+          let message = `Resolution error: ${e.message}.`;
+          if (t.creationStack && t.creationStack.length > 0) {
+            message += `
+Object creation stack:
+  at ${t.creationStack.join("\n  at ")}`;
+          }
+          e.message = message;
+          throw e;
+        }
+      }
+    };
+    PolicySynthesizer = class _PolicySynthesizer extends import_constructs10.Construct {
+      static getOrCreate(scope) {
+        const synthesizer = scope.node.root.node.tryFindChild(POLICY_SYNTHESIZER_ID);
+        if (synthesizer) {
+          return synthesizer;
+        }
+        return new _PolicySynthesizer(scope);
+      }
+      _scope;
+      roleReport = {};
+      managedPolicyReport = {};
+      constructor(scope) {
+        super(scope.node.root, POLICY_SYNTHESIZER_ID);
+        this._scope = scope;
+        attachCustomSynthesis(this, {
+          onSynthesize: (session) => {
+            const report = this.createJsonReport();
+            if (report.roles?.length > 0) {
+              const filePath = path10.join(session.outdir, "iam-policy-report");
+              fs9.writeFileSync(filePath + ".txt", this.createHumanReport(report));
+              fs9.writeFileSync(filePath + ".json", JSON.stringify(report, void 0, 2));
+            }
+          }
+        });
+      }
+      createJsonReport() {
+        return Object.entries(this.roleReport).reduce((acc, [key, value]) => {
+          const { policyArns, policyStatements } = this.renderManagedPoliciesForRole(key, value.managedPolicies);
+          acc = {
+            roles: [
+              ...acc.roles ?? [],
+              {
+                roleConstructPath: key,
+                roleName: value.missing ? "missing role" : value.roleName,
+                missing: value.missing,
+                assumeRolePolicy: this.resolveReferences(value.assumeRolePolicy),
+                managedPolicyArns: this.resolveReferences(policyArns),
+                managedPolicyStatements: this.resolveReferences(policyStatements),
+                identityPolicyStatements: this.resolveReferences(value.policyStatements)
+              }
+            ]
+          };
+          return acc;
+        }, {});
+      }
+      createHumanReport(report) {
+        return report.roles.map((role) => [
+          `<${role.missing ? "missing role" : role.roleName}> (${role.roleConstructPath})`,
+          "",
+          "AssumeRole Policy:",
+          ...this.toJsonString(role.assumeRolePolicy),
+          "",
+          "Managed Policy ARNs:",
+          ...this.toJsonString(role.managedPolicyArns),
+          "",
+          "Managed Policies Statements:",
+          this.toJsonString(role.managedPolicyStatements),
+          "",
+          "Identity Policy Statements:",
+          this.toJsonString(role.identityPolicyStatements)
+        ].join("\n")).join("\n\n");
+      }
+      /**
+       * Takes a value and returns a formatted JSON string
+       */
+      toJsonString(value) {
+        if (Array.isArray(value) && value.length === 0 || !value) {
+          return ["NONE"];
+        }
+        return [JSON.stringify({ values: value }.values, void 0, 2)];
+      }
+      /**
+       * IAM managed policies can be attached to a role using a couple different methods.
+       *
+       * 1. You can use an existing managed policy, i.e. ManagedPolicy.fromManagedPolicyName()
+       * 2. You can create a managed policy and attach the role, i.e.
+       *   new ManagedPolicy(scope, 'ManagedPolicy', { roles: [myRole] });
+       * 3. You can create a managed policy and attach it to the role, i.e.
+       *   const role = new Role(...);
+       *   role.addManagedPolicy(new ManagedPolicy(...));
+       *
+       * For 1, CDK is not creating the managed policy so we just need to report the ARN
+       * of the policy that needs to be attached to the role.
+       *
+       * For 2 & 3, CDK _is_ creating the managed policy so instead of reporting the name or ARN of the
+       * policy (that we prevented being created) we should instead report the policy statements
+       * that are part of that document. It doesn't really matter if the admins creating the roles then
+       * decide to use managed policies or inline policies, etc.
+       *
+       * There could be managed policies that are created and _not_ attached to any roles, in that case
+       * we do not report anything. That managed policy is not being created automatically by our constructs.
+       */
+      renderManagedPoliciesForRole(rolePath, managedPolicies) {
+        const policyStatements = [];
+        Object.values(this.managedPolicyReport).forEach((value) => {
+          if (value.roles?.includes(rolePath)) {
+            policyStatements.push(...value.policyStatements);
+          }
+        });
+        const policyArns = [];
+        managedPolicies.forEach((policy) => {
+          if (import_constructs10.Construct.isConstruct(policy)) {
+            if (this.managedPolicyReport.hasOwnProperty(policy.node.path)) {
+              policyStatements.push(...this.managedPolicyReport[policy.node.path].policyStatements);
+            } else {
+              policyArns.push(policy.managedPolicyArn);
+            }
+          } else {
+            policyArns.push(policy.managedPolicyArn);
+          }
+        });
+        return {
+          policyArns,
+          policyStatements
+        };
+      }
+      /**
+       * Resolve any references and replace with a more user friendly value. This is the value
+       * that will appear in the report, so instead of getting something like this (not very useful):
+       *
+       *     "Resource": {
+       *       "Fn::Join": [
+       *         "",
+       *         [
+       *           "arn:",
+       *           {
+       *             "Ref": "AWS::Partition"
+       *           },
+       *           ":iam::",
+       *           {
+       *             "Ref": "AWS::AccountId"
+       *           },
+       *           ":role/Role"
+       *         ]
+       *       ]
+       *     }
+       *
+       * We will instead get:
+       *
+       *     "Resource": "arn:(PARTITION):iam::(ACCOUNT):role/Role"
+       *
+       * Or if referencing a resource attribute
+       *
+       *     "Resource": {
+       *       "Fn::GetAtt": [
+       *         "SomeResource",
+       *         "Arn"
+       *       ]
+       *     }
+       *
+       * Becomes
+       *
+       *     "(Path/To/SomeResource.Arn)"
+       */
+      resolveReferences(ref) {
+        if (Array.isArray(ref) && ref.length === 0 || !ref) {
+          return [];
+        }
+        if (Array.isArray(ref)) {
+          return ref.map((r) => this.resolveReferences(r));
+        } else if (typeof ref === "object") {
+          return this.resolveJsonObject(ref);
+        }
+        const resolvable = Tokenization.reverseString(ref);
+        if (resolvable.length === 1 && Reference.isReference(resolvable.firstToken)) {
+          return `(${resolvable.firstToken.target.node.path}.${resolvable.firstToken.displayName})`;
+        } else {
+          const resolvedTokens = resolvable.mapTokens({
+            mapToken: (r) => {
+              if (Reference.isReference(r)) {
+                return `(${r.target.node.path}.${r.displayName})`;
+              }
+              const resolved = Tokenization.resolve(r, {
+                scope: this._scope,
+                resolver: new PolicySynthesizerTokenResolver(new StringConcat())
+              });
+              if (typeof resolved === "object" && resolved.hasOwnProperty("Ref")) {
+                switch (resolved.Ref) {
+                  case "AWS::AccountId":
+                    return "(ACCOUNT)";
+                  case "AWS::Partition":
+                    return "(PARTITION)";
+                  case "AWS::Region":
+                    return "(REGION)";
+                  case "AWS::NoValue":
+                    return "(NOVALUE)";
+                  default:
+                    return r;
+                }
+              }
+              if (Token.isUnresolved(r) && typeof resolved === "string" && resolved) {
+                return resolved;
+              }
+              return r;
+            }
+          });
+          return resolvedTokens.join(new StringConcat());
+        }
+      }
+      resolveJsonObject(statement) {
+        const newStatement = statement;
+        for (const [key, value] of Object.entries(statement)) {
+          newStatement[key] = this.resolveReferences(value);
+        }
+        return newStatement;
+      }
+      /**
+       * Add an IAM role to the report
+       *
+       * @param rolePath the construct path of the role
+       * @param options the values associated with the role
+       */
+      addRole(rolePath, options) {
+        if (this.roleReport.hasOwnProperty(rolePath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryRole`, `IAM Policy Report already has an entry for role: ${rolePath}`, this);
+        }
+        this.roleReport[rolePath] = options;
+      }
+      /**
+       * Add an IAM Managed Policy to the report
+       *
+       * @param policyPath the construct path of the managed policy
+       * @param options the values associated with the managed policy
+       */
+      addManagedPolicy(policyPath, options) {
+        if (this.managedPolicyReport.hasOwnProperty(policyPath)) {
+          throw new ValidationError(lit`PolicyReportAlreadyEntryManaged`, `IAM Policy Report already has an entry for managed policy: ${policyPath}`, this);
+        }
+        this.managedPolicyReport[policyPath] = options;
+      }
+    };
+    CUSTOMIZE_ROLES_CONTEXT_KEY = "@aws-cdk/iam:customizeRoles";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts
+function replaceAll(s, search, replace) {
+  return s.split(search).join(replace);
+}
+function resolvedOr(x, def) {
+  return Token.isUnresolved(x) ? def : x;
+}
+var StringSpecializer, CFN_TOKENS;
+var init_string_specializer = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/string-specializer.ts"() {
+    "use strict";
+    init_cx_api();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+    init_token();
+    StringSpecializer = class _StringSpecializer {
+      constructor(stack, qualifier) {
+        this.stack = stack;
+        this.qualifier = qualifier;
+      }
+      stack;
+      qualifier;
+      /**
+       * Validate that the given string does not contain tokens
+       */
+      static validateNoTokens(s, what) {
+        if (Token.isUnresolved(s)) {
+          throw new UnscopedValidationError(lit`TokensNotAllowed`, `${what} may not contain tokens; only the following literal placeholder strings are allowed: ` + [
+            "${Qualifier}",
+            (void 0).CURRENT_REGION,
+            (void 0).CURRENT_ACCOUNT,
+            (void 0).CURRENT_PARTITION
+          ].join(", ") + `. Got: ${s}`);
+        }
+      }
+      /**
+       * Function to replace placeholders in the input string as much as possible
+       *
+       * We replace:
+       * - ${Qualifier}: always
+       * - ${AWS::AccountId}, ${AWS::Region}: only if we have the actual values available
+       * - ${AWS::Partition}: never, since we never have the actual partition value.
+       */
+      specialize(s) {
+        s = replaceAll(s, "${Qualifier}", this.qualifier);
+        return (void 0).replace(s, {
+          region: resolvedOr(this.stack.region, (void 0).CURRENT_REGION),
+          accountId: resolvedOr(this.stack.account, (void 0).CURRENT_ACCOUNT),
+          partition: (void 0).CURRENT_PARTITION
+        });
+      }
+      /**
+       * Specialize the given string, make sure it doesn't contain tokens
+       */
+      specializeNoTokens(s, what) {
+        _StringSpecializer.validateNoTokens(s, what);
+        return this.specialize(s);
+      }
+      /**
+       * Specialize only the qualifier
+       */
+      qualifierOnly(s) {
+        return replaceAll(s, "${Qualifier}", this.qualifier);
+      }
+    };
+    CFN_TOKENS = [Aws.PARTITION, Aws.REGION, Aws.ACCOUNT_ID];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts
+var init_validate_all_props = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/validate-all-props.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/strings.ts
+var init_strings = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/strings.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/feature-flag-report.ts
+function parseFeatureFlagInfo(flagName, info, root) {
+  const userValue = root.node.tryGetContext(flagName) ?? void 0;
+  let parsedFlag = {
+    userValue,
+    recommendedValue: info.recommendedValue,
+    explanation: info.summary,
+    // This is a historical accident. We used to copy all `unconfiguredBehavesLike` data
+    // into the feature flag report, but we only needed to copy the behavior of the current library version.
+    // In order to not break existing reports, we keep the same structure, but we baptize the 'v2' field as
+    // the canonical name of the "current version" field, even for v3, v4, etc.
+    // It looks weird, but it's safe & backwards compatible.
+    unconfiguredBehavesLike: info.unconfiguredBehavesLike?.[CURRENT_MV] ? {
+      v2: info.unconfiguredBehavesLike?.[CURRENT_MV]
+    } : void 0
+  };
+  return parsedFlag;
+}
+function generateFeatureFlagReport(builder, root) {
+  const featureFlags = {};
+  for (const [flagName, flagInfo] of Object.entries(FLAGS)) {
+    if (CURRENT_VERSION_EXPIRED_FLAGS.includes(flagName)) {
+      continue;
+    }
+    featureFlags[flagName] = parseFeatureFlagInfo(flagName, flagInfo, root);
+  }
+  builder.addArtifact("aws-cdk-lib/feature-flag-report", {
+    type: import_cloud_assembly_schema.ArtifactType.FEATURE_FLAG_REPORT,
+    properties: {
+      module: "aws-cdk-lib",
+      flags: featureFlags
+    }
+  });
+}
+var import_cloud_assembly_schema;
+var init_feature_flag_report = __esm({
+  "../../aws-cdk-lib/core/lib/private/feature-flag-report.ts"() {
+    "use strict";
+    import_cloud_assembly_schema = __toESM(require_lib2());
+    init_features();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-condition.ts
+var CfnCondition;
+var init_cfn_condition = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-condition.ts"() {
+    "use strict";
+    init_cfn_element();
+    CfnCondition = class extends CfnElement {
+      /**
+       * The condition statement.
+       */
+      expression;
+      /**
+       * Build a new condition. The condition must be constructed with a condition token,
+       * that the condition is based on.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.expression = props && props.expression;
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.expression) {
+          return {};
+        }
+        return {
+          Conditions: {
+            [this.logicalId]: this.expression
+          }
+        };
+      }
+      /**
+       * Synthesizes the condition.
+       */
+      resolve(_context) {
+        return { Condition: this.logicalId };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/metadata-resource.ts
+function filteredConstructAnalyticsFromStack(scope) {
+  const includeAdditionalTelemetry = FeatureFlags.of(scope).isEnabled(ENABLE_ADDITIONAL_METADATA_COLLECTION) ?? false;
+  const constructAnalytics = constructAnalyticsFromScope(scope);
+  if (includeAdditionalTelemetry) {
+    return constructAnalytics;
+  }
+  return constructAnalytics.map(retainAlwaysReportedAnalytics);
+  function retainAlwaysReportedAnalytics(analytics) {
+    return {
+      fqn: analytics.fqn,
+      version: analytics.version,
+      metadata: analytics.metadata
+    };
+  }
+}
+function makeCdkMetadataAvailableCondition() {
+  return Fn.conditionOr(...RegionInfo.regions.filter((ri) => ri.cdkMetadataResourceAvailable).map((ri) => Fn.conditionEquals(Aws.REGION, ri.name)));
+}
+function formatAnalytics(infos) {
+  const trie = new Trie();
+  infos.forEach((info) => insertFqnInTrie(`${info.version}!${info.fqn}`, trie, [info.metadata, info.additionalTelemetry].flatMap((a) => a ?? [])));
+  const plaintextEncodedConstructs = prefixEncodeTrie(trie);
+  const compressedConstructsBuffer = zlib.gzipSync(Buffer.from(plaintextEncodedConstructs));
+  setGzipOperatingSystemToUnknown(compressedConstructsBuffer);
+  const compressedConstructs = compressedConstructsBuffer.toString("base64");
+  const analyticsString = `v2:deflate64:${compressedConstructs}`;
+  if (process.env.CDK_CONTEXT_JSON && JSON.parse(process.env.CDK_CONTEXT_JSON)["cdk-migrate"]) {
+    const compressedAppInfoBuffer = zlib.gzipSync(Buffer.from("cdk-migrate"));
+    const compressedAppInfo = compressedAppInfoBuffer.toString("base64");
+    analyticsString.concat(":", compressedAppInfo);
+  }
+  return analyticsString;
+}
+function insertFqnInTrie(fqn, trie, metadata) {
+  for (const fqnPart of fqn.replace(/[^a-z0-9]/gi, "$& ").split(" ")) {
+    const nextLevelTreeRef = trie.get(fqnPart) ?? new Trie();
+    trie.set(fqnPart, nextLevelTreeRef);
+    trie = nextLevelTreeRef;
+  }
+  if (metadata?.length) {
+    trie.set(JSON.stringify(metadata), new Trie());
+  }
+  return trie;
+}
+function prefixEncodeTrie(trie) {
+  let prefixEncoded = "";
+  let isFirstEntryAtLevel = true;
+  [...trie.entries()].forEach(([key, value]) => {
+    if (!isFirstEntryAtLevel) {
+      prefixEncoded += ",";
+    }
+    isFirstEntryAtLevel = false;
+    prefixEncoded += key;
+    if (value.size > 1) {
+      prefixEncoded += "{";
+      prefixEncoded += prefixEncodeTrie(value);
+      prefixEncoded += "}";
+    } else {
+      prefixEncoded += prefixEncodeTrie(value);
+    }
+  });
+  return prefixEncoded;
+}
+function setGzipOperatingSystemToUnknown(gzipBuffer) {
+  if (gzipBuffer[0] !== 31 || gzipBuffer[1] !== 139) {
+    throw new AssumptionError(lit`ExpectingGzipBufferMust`, "Expecting a gzip buffer (must start with 0x1f8b)");
+  }
+  gzipBuffer[9] = 255;
+}
+var zlib, import_constructs11, MetadataResource, Trie;
+var init_metadata_resource2 = __esm({
+  "../../aws-cdk-lib/core/lib/private/metadata-resource.ts"() {
+    "use strict";
+    zlib = __toESM(require("zlib"));
+    import_constructs11 = __toESM(require_lib4());
+    init_cx_api();
+    init_region_info2();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_lazy();
+    init_token();
+    init_literal_string();
+    init_stack_metadata();
+    MetadataResource = class extends import_constructs11.Construct {
+      constructor(scope, id) {
+        super(scope, id);
+        const metadataServiceExists = Token.isUnresolved(scope.region) || RegionInfo.get(scope.region).cdkMetadataResourceAvailable;
+        if (metadataServiceExists) {
+          const constructAnalytics = filteredConstructAnalyticsFromStack(scope);
+          const resource = new CfnResource(this, "Default", {
+            type: "AWS::CDK::Metadata",
+            properties: {
+              Analytics: Lazy.string({ produce: () => formatAnalytics(constructAnalytics) })
+            }
+          });
+          if (Token.isUnresolved(scope.region)) {
+            const condition = new CfnCondition(this, "Condition", {
+              expression: makeCdkMetadataAvailableCondition()
+            });
+            condition.overrideLogicalId("CDKMetadataAvailable");
+            resource.cfnOptions.condition = condition;
+          }
+        }
+      }
+    };
+    Trie = class extends Map {
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-output.ts
+var CfnOutput;
+var init_cfn_output = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-output.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_cfn_fn();
+    init_lazy();
+    init_token();
+    init_errors();
+    init_literal_string();
+    init_core_construct_finders();
+    CfnOutput = class extends CfnElement {
+      _description;
+      _condition;
+      _key;
+      _value;
+      _exportName;
+      /**
+       * Creates a CfnOutput value for this stack.
+       * @param scope The parent construct.
+       * @param props CfnOutput properties.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (props.value === void 0) {
+          throw new ValidationError(lit`MissingValueCloudFormationOutput`, `Missing value for CloudFormation output at path "${this.node.path}"`, this);
+        } else if (Array.isArray(props.value)) {
+          throw new ValidationError(lit`CloudformationOutputGivenString`, `CloudFormation output was given a string list instead of a string at path "${this.node.path}"`, this);
+        }
+        this._description = props.description;
+        this._key = props.key;
+        this._value = props.value;
+        this._condition = props.condition;
+        this._exportName = props.exportName;
+        this.node.addValidation({ validate: () => this.validateOutput() });
+      }
+      /**
+       * A String type that describes the output value.
+       * The description can be a maximum of 4 K in length.
+       *
+       * @default - No description.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(description) {
+        this._description = description;
+      }
+      /**
+       * The value of the property returned by the aws cloudformation describe-stacks command.
+       * The value of an output can include literals, parameter references, pseudo-parameters,
+       * a mapping value, or intrinsic functions.
+       */
+      get value() {
+        return this._value;
+      }
+      set value(value) {
+        this._value = value;
+      }
+      /**
+       * A condition to associate with this output value. If the condition evaluates
+       * to `false`, this output value will not be included in the stack.
+       *
+       * @default - No condition is associated with the output.
+       */
+      get condition() {
+        return this._condition;
+      }
+      set condition(condition) {
+        this._condition = condition;
+      }
+      /**
+       * The name used to export the value of this output across stacks.
+       *
+       * To use the value in another stack, pass the value of
+       * `output.importValue` to it.
+       *
+       * @default - the output is not exported
+       */
+      get exportName() {
+        return this._exportName;
+      }
+      set exportName(exportName) {
+        this._exportName = exportName;
+      }
+      /**
+       * Return the `Fn.importValue` expression to import this value into another stack
+       *
+       * The returned value should not be used in the same stack, but in a
+       * different one. It must be deployed to the same environment, as
+       * CloudFormation exports can only be imported in the same Region and
+       * account.
+       *
+       * The is no automatic registration of dependencies between stacks when using
+       * this mechanism, so you should make sure to deploy them in the right order
+       * yourself.
+       *
+       * You can use this mechanism to share values across Stacks in different
+       * Stages. If you intend to share the value to another Stack inside the same
+       * Stage, the automatic cross-stack referencing mechanism is more convenient.
+       */
+      get importValue() {
+        return Fn.importValue(Lazy.uncachedString({
+          produce: (ctx) => {
+            if (stackOf(ctx.scope) === this.stack) {
+              throw new ValidationError(lit`ImportvaluePropertyShouldOnly`, `'importValue' property of '${this.node.path}' should only be used in a different Stack`, this);
+            }
+            if (!this._exportName) {
+              throw new ValidationError(lit`ExportnameCfnoutputOrderOutput`, `Add an exportName to the CfnOutput at '${this.node.path}' in order to use 'output.importValue'`, this);
+            }
+            return this._exportName;
+          }
+        }));
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Outputs: {
+            [this._key ?? this.logicalId]: {
+              Description: this._description,
+              Value: this._value,
+              Export: this._exportName != null ? { Name: this._exportName } : void 0,
+              Condition: this._condition ? this._condition.logicalId : void 0
+            }
+          }
+        };
+      }
+      validateOutput() {
+        const errors = [];
+        if (this._exportName !== void 0 && !Token.isUnresolved(this._exportName)) {
+          if (this._exportName.length === 0) {
+            errors.push("Export name cannot be empty");
+          }
+          if (this._exportName.length > 255) {
+            errors.push(`Export name cannot exceed 255 characters (got ${this._exportName.length} characters)`);
+          }
+          if (!/^[A-Za-z0-9-:]*$/.test(this._exportName)) {
+            errors.push(`Export name must only include alphanumeric characters, colons, or hyphens (got '${this._exportName}')`);
+          }
+        }
+        return errors;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-parameter.ts
+function isListType(type) {
+  return type.indexOf("List<") >= 0 || type.indexOf("CommaDelimitedList") >= 0;
+}
+function isNumberType(type) {
+  return type === "Number";
+}
+function isStringType(type) {
+  return !isListType(type) && !isNumberType(type);
+}
+function typeToTypeHint(type) {
+  if (isListType(type)) {
+    return "string-list" /* STRING_LIST */;
+  } else if (isNumberType(type)) {
+    return "number" /* NUMBER */;
+  }
+  return "string" /* STRING */;
+}
+var CfnParameter;
+var init_cfn_parameter = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-parameter.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_errors();
+    init_cfn_reference();
+    init_literal_string();
+    init_token();
+    init_type_hints();
+    CfnParameter = class extends CfnElement {
+      _type;
+      _default;
+      _allowedPattern;
+      _allowedValues;
+      _constraintDescription;
+      _description;
+      _maxLength;
+      _maxValue;
+      _minLength;
+      _minValue;
+      _noEcho;
+      typeHint;
+      /**
+       * Creates a parameter construct.
+       * Note that the name (logical ID) of the parameter will derive from its `coname` and location
+       * within the stack. Therefore, it is recommended that parameters are defined at the stack level.
+       *
+       * @param scope The parent construct.
+       * @param props The parameter properties.
+       */
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this._type = props.type || "String";
+        this._default = props.default;
+        this._allowedPattern = props.allowedPattern;
+        this._allowedValues = props.allowedValues;
+        this._constraintDescription = props.constraintDescription;
+        this._description = props.description;
+        this._maxLength = props.maxLength;
+        this._maxValue = props.maxValue;
+        this._minLength = props.minLength;
+        this._minValue = props.minValue;
+        this._noEcho = props.noEcho;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * The data type for the parameter (DataType).
+       *
+       * @default String
+       */
+      get type() {
+        return this._type;
+      }
+      set type(type) {
+        this._type = type;
+        this.typeHint = typeToTypeHint(this._type);
+      }
+      /**
+       * A value of the appropriate type for the template to use if no value is specified
+       * when a stack is created. If you define constraints for the parameter, you must specify
+       * a value that adheres to those constraints.
+       *
+       * @default - No default value for parameter.
+       */
+      get default() {
+        return this._default;
+      }
+      set default(value) {
+        this._default = value;
+      }
+      /**
+       * A regular expression that represents the patterns to allow for String types.
+       *
+       * @default - No constraints on patterns allowed for parameter.
+       */
+      get allowedPattern() {
+        return this._allowedPattern;
+      }
+      set allowedPattern(pattern) {
+        this._allowedPattern = pattern;
+      }
+      /**
+       * An array containing the list of values allowed for the parameter.
+       *
+       * @default - No constraints on values allowed for parameter.
+       */
+      get allowedValues() {
+        return this._allowedValues;
+      }
+      set allowedValues(values) {
+        this._allowedValues = values;
+      }
+      /**
+       * A string that explains a constraint when the constraint is violated.
+       * For example, without a constraint description, a parameter that has an allowed
+       * pattern of [A-Za-z0-9]+ displays the following error message when the user specifies
+       * an invalid value:
+       *
+       * @default - No description with customized error message when user specifies invalid values.
+       */
+      get constraintDescription() {
+        return this._constraintDescription;
+      }
+      set constraintDescription(desc) {
+        this._constraintDescription = desc;
+      }
+      /**
+       * A string of up to 4000 characters that describes the parameter.
+       *
+       * @default - No description for the parameter.
+       */
+      get description() {
+        return this._description;
+      }
+      set description(desc) {
+        this._description = desc;
+      }
+      /**
+       * An integer value that determines the largest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get maxLength() {
+        return this._maxLength;
+      }
+      set maxLength(len) {
+        this._maxLength = len;
+      }
+      /**
+       * An integer value that determines the smallest number of characters you want to allow for String types.
+       *
+       * @default - None.
+       */
+      get minLength() {
+        return this._minLength;
+      }
+      set minLength(len) {
+        this._minLength = len;
+      }
+      /**
+       * A numeric value that determines the largest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get maxValue() {
+        return this._maxValue;
+      }
+      set maxValue(len) {
+        this._maxValue = len;
+      }
+      /**
+       * A numeric value that determines the smallest numeric value you want to allow for Number types.
+       *
+       * @default - None.
+       */
+      get minValue() {
+        return this._minValue;
+      }
+      set minValue(len) {
+        this._minValue = len;
+      }
+      /**
+       * Indicates if this parameter is configured with "NoEcho" enabled.
+       */
+      get noEcho() {
+        return !!this._noEcho;
+      }
+      set noEcho(echo) {
+        this._noEcho = echo;
+      }
+      /**
+       * The parameter value as a Token
+       */
+      get value() {
+        return CfnReference.for(this, "Ref", void 0, this.typeHint);
+      }
+      /**
+       * The parameter value, if it represents a string.
+       */
+      get valueAsString() {
+        if (!isStringType(this.type) && !isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string or number type`, this);
+        }
+        return Token.asString(this.value);
+      }
+      /**
+       * The parameter value, if it represents a string list.
+       */
+      get valueAsList() {
+        if (!isListType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a string list type`, this);
+        }
+        return Token.asList(this.value);
+      }
+      /**
+       * The parameter value, if it represents a number.
+       */
+      get valueAsNumber() {
+        if (!isNumberType(this.type)) {
+          throw new ValidationError(lit`ParameterType`, `Parameter type (${this.type}) is not a number type`, this);
+        }
+        return Token.asNumber(this.value);
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Parameters: {
+            [this.logicalId]: {
+              Type: this.type,
+              Default: this.default,
+              AllowedPattern: this.allowedPattern,
+              AllowedValues: this.allowedValues,
+              ConstraintDescription: this.constraintDescription,
+              Description: this.description,
+              MaxLength: this.maxLength,
+              MaxValue: this.maxValue,
+              MinLength: this.minLength,
+              MinValue: this.minValue,
+              NoEcho: this._noEcho
+            }
+          }
+        };
+      }
+      resolve(_context) {
+        return this.value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts
+var SSM_EXPORT_PATH_PREFIX;
+var init_types2 = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/types.ts"() {
+    "use strict";
+    SSM_EXPORT_PATH_PREFIX = "cdk/exports/";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts
+var path11, CrossRegionSsmReaderProvider;
+var init_cross_region_ssm_reader_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-reader-provider.generated.ts"() {
+    "use strict";
+    path11 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmReaderProvider = class _CrossRegionSsmReaderProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmReaderProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path11.join(__dirname, "cross-region-ssm-reader-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts
+var import_constructs12, ExportReader;
+var init_export_reader_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-reader-provider.ts"() {
+    "use strict";
+    import_constructs12 = __toESM(require_lib4());
+    init_types2();
+    init_cfn_resource();
+    init_custom_resource();
+    init_cross_region_ssm_reader_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    ExportReader = class _ExportReader extends import_constructs12.Construct {
+      static getOrCreate(scope, uniqueId, _props = {}) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportReader(stack, uniqueId);
+      }
+      importParameters = Box.fromMap();
+      customResource;
+      constructor(scope, id, _props = {}) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const resourceType = "Custom::CrossRegionExportReader";
+        const serviceToken = CrossRegionSsmReaderProvider.getOrCreate(this, resourceType, {
+          policyStatements: [{
+            Effect: "Allow",
+            Resource: stack.formatArn({
+              service: "ssm",
+              resource: "parameter",
+              resourceName: `${SSM_EXPORT_PATH_PREFIX}${stack.stackName}/*`
+            }),
+            Action: [
+              "ssm:AddTagsToResource",
+              "ssm:RemoveTagsFromResource",
+              "ssm:GetParameters"
+            ]
+          }]
+        });
+        const properties = {
+          region: stack.region,
+          prefix: stack.stackName,
+          imports: this.importParameters.derive((m) => Object.fromEntries(m))
+        };
+        this.customResource = new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken,
+          properties: {
+            ReaderProps: properties
+          }
+        });
+      }
+      /**
+       * This is the only way to add a dependency on a custom resource currently
+       */
+      addDependency(resource) {
+        const customResource = this.customResource.node.tryFindChild("Default");
+        if (customResource && CfnResource.isCfnResource(customResource)) {
+          customResource.addDependsOn(resource);
+        }
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exports map of unique name associated with the export to SSM Dynamic reference
+       */
+      importValue(name, value) {
+        this.importParameters.put(name, value.toString());
+        return this.customResource.getAtt(name);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts
+var CfnDynamicReference;
+var init_cfn_dynamic_reference = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-dynamic-reference.ts"() {
+    "use strict";
+    init_intrinsic();
+    CfnDynamicReference = class extends Intrinsic {
+      constructor(service, key) {
+        super("{{resolve:" + service + ":" + key + "}}");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts
+var path12, CrossRegionSsmWriterProvider;
+var init_cross_region_ssm_writer_provider_generated = __esm({
+  "../../aws-cdk-lib/core/lib/dist/core/cross-region-ssm-writer-provider.generated.ts"() {
+    "use strict";
+    path12 = __toESM(require("path"));
+    init_stack();
+    init_custom_resource_provider2();
+    CrossRegionSsmWriterProvider = class _CrossRegionSsmWriterProvider extends CustomResourceProviderBase {
+      /**
+       * Returns a stack-level singleton ARN (service token) for the custom resource provider.
+       */
+      static getOrCreate(scope, uniqueid, props) {
+        return this.getOrCreateProvider(scope, uniqueid, props).serviceToken;
+      }
+      /**
+       * Returns a stack-level singleton for the custom resource provider.
+       */
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = Stack.of(scope);
+        const existing = stack.node.tryFindChild(id);
+        return existing ?? new _CrossRegionSsmWriterProvider(stack, id, props);
+      }
+      constructor(scope, id, props) {
+        super(scope, id, {
+          ...props,
+          codeDirectory: path12.join(__dirname, "cross-region-ssm-writer-handler"),
+          runtimeName: determineLatestNodeRuntimeName(scope)
+        });
+        this.node.addMetadata("aws:cdk:is-custom-resource-handler-customResourceProvider", true);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts
+var import_constructs13, CRProvider, ExportWriter;
+var init_export_writer_provider = __esm({
+  "../../aws-cdk-lib/core/lib/custom-resource-provider/cross-region-export-providers/export-writer-provider.ts"() {
+    "use strict";
+    import_constructs13 = __toESM(require_lib4());
+    init_export_reader_provider();
+    init_types2();
+    init_cfn_dynamic_reference();
+    init_custom_resource();
+    init_cross_region_ssm_writer_provider_generated();
+    init_helpers_internal();
+    init_core_construct_finders();
+    init_uniqueid();
+    init_token();
+    CRProvider = class _CRProvider extends CrossRegionSsmWriterProvider {
+      static getOrCreateProvider(scope, uniqueid, props) {
+        const id = `${uniqueid}CustomResourceProvider`;
+        const stack = stackOf(scope);
+        const provider = stack.node.tryFindChild(id) ?? new _CRProvider(stack, id, props);
+        return provider;
+      }
+      resourceArns = Box.fromSet();
+      constructor(scope, id, props) {
+        super(scope, id, props);
+        this.addToRolePolicy({
+          Effect: "Allow",
+          Resource: this.resourceArns.derive(Array.from),
+          Action: [
+            "ssm:DeleteParameters",
+            "ssm:ListTagsForResource",
+            "ssm:GetParameters",
+            "ssm:PutParameter"
+          ]
+        });
+      }
+      /**
+       * Add a resource ARN to the existing policy statement
+       */
+      addResourceArn(arn) {
+        this.resourceArns.add(arn);
+      }
+    };
+    ExportWriter = class _ExportWriter extends import_constructs13.Construct {
+      static getOrCreate(scope, uniqueId, props) {
+        const stack = stackOf(scope);
+        const existing = stack.node.tryFindChild(uniqueId);
+        return existing ? existing : new _ExportWriter(stack, uniqueId, {
+          region: props.region
+        });
+      }
+      _references = Box.fromMap();
+      provider;
+      constructor(scope, id, props) {
+        super(scope, id);
+        const stack = stackOf(this);
+        const region = props.region ?? stack.region;
+        const resourceType = "Custom::CrossRegionExportWriter";
+        this.provider = CRProvider.getOrCreateProvider(this, resourceType);
+        this.addRegionToPolicy(region);
+        const properties = {
+          region,
+          exports: this._references.derive((m) => Object.fromEntries(m))
+        };
+        new CustomResource(this, "Resource", {
+          resourceType,
+          serviceToken: this.provider.serviceToken,
+          properties: {
+            WriterProps: properties
+          }
+        });
+      }
+      /**
+       * Register a reference with the writer and returns a CloudFormation Stack export by name
+       *
+       * The value will be "exported" via the ExportWriter. It will perform
+       * the export by creating an SSM parameter in the region that the consuming
+       * stack is created.
+       *
+       * @param exportName the unique name associated with the export
+       * @param reference the value that will be exported
+       * @returns a reference to the reader custom resource
+       */
+      exportValue(exportName, reference, importStack) {
+        const parameterName = this.registerExport(exportName, reference, importStack);
+        const ref = new CfnDynamicReference("ssm" /* SSM */, parameterName);
+        return this.addToExportReader(parameterName, ref, importStack);
+      }
+      /**
+       * Register a reference with the writer without creating an ExportReader in the consumer stack.
+       * Used during the "both" transitional state where the producer still writes to SSM
+       * but the consumer reads via Fn::GetStackOutput instead of the ExportReader.
+       */
+      exportValueWriteOnly(exportName, reference, importStack) {
+        this.registerExport(exportName, reference, importStack);
+      }
+      registerExport(exportName, reference, importStack) {
+        const stack = stackOf(this);
+        const parameterName = `/${SSM_EXPORT_PATH_PREFIX}${exportName}`;
+        this._references.put(parameterName, stack.resolve(reference.toString()));
+        this.addRegionToPolicy(importStack.region);
+        return parameterName;
+      }
+      /**
+       * Add a resource arn for the consuming stack region
+       * Each writer could be writing to multiple regions and needs
+       * permissions to each region.
+       *
+       * If the region is not resolved then do not add anything.
+       */
+      addRegionToPolicy(region) {
+        if (!Token.isUnresolved(region)) {
+          this.provider.addResourceArn(stackOf(this).formatArn({
+            service: "ssm",
+            resource: "parameter",
+            region,
+            resourceName: `${SSM_EXPORT_PATH_PREFIX}*`
+          }));
+        }
+      }
+      /**
+       * Add the export to the export reader which is created in the importing stack
+       */
+      addToExportReader(exportName, exportValueRef, importStack) {
+        const readerConstructName = makeUniqueId(["ExportsReader"]);
+        const exportReader = ExportReader.getOrCreate(importStack.nestedStackParent ?? importStack, readerConstructName);
+        this.addRegionToPolicy(importStack.region);
+        return exportReader.importValue(exportName, exportValueRef);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/linked-queue.ts
+var LinkedQueue;
+var init_linked_queue = __esm({
+  "../../aws-cdk-lib/core/lib/private/linked-queue.ts"() {
+    "use strict";
+    LinkedQueue = class {
+      head;
+      last;
+      constructor(items) {
+        if (items) {
+          for (const x of items) {
+            this.push(x);
+          }
+        }
+      }
+      push(value) {
+        const node = { value };
+        if (this.head && this.last) {
+          this.last.next = node;
+          this.last = node;
+        } else {
+          this.head = node;
+          this.last = node;
+        }
+      }
+      shift() {
+        if (!this.head) {
+          return void 0;
+        }
+        const ret = this.head.value;
+        this.head = this.head.next;
+        if (!this.head) {
+          this.last = void 0;
+        }
+        return ret;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/construct-iteration.ts
+function* iterateDfsPreorder(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    stack.push(...next.node.children.reverse());
+    yield next;
+    next = stack.pop();
+  }
+}
+function* iterateTemplateCfnResources(root) {
+  const stack = [root];
+  let next = stack.pop();
+  while (next) {
+    if (NESTED_STACK_TYPE.isMarked(next)) {
+      if (next.nestedStackResource) {
+        yield next.nestedStackResource;
+      }
+    } else if (STACK_TYPE.isMarked(next) || STAGE_TYPE.isMarked(next)) {
+    } else {
+      if (isCfnResource(next)) {
+        yield next;
+      }
+      stack.push(...next.node.children.reverse());
+    }
+    next = stack.pop();
+  }
+}
+function* iterateDfsPostorder(root) {
+  const stack = [{ visit: root }];
+  let next = stack.pop();
+  while (next) {
+    if ("yield" in next) {
+      yield next.yield;
+    } else {
+      stack.push({ yield: next.visit });
+      stack.push(...next.visit.node.children.reverse().map((visit2) => ({ visit: visit2 })));
+    }
+    next = stack.pop();
+  }
+}
+function* iterateBfs(root) {
+  const queue = new LinkedQueue([{ construct: root, parent: void 0 }]);
+  let next = queue.shift();
+  while (next) {
+    for (const child of next.construct.node.children) {
+      queue.push({ construct: child, parent: next.construct });
+    }
+    yield next;
+    next = queue.shift();
+  }
+}
+var init_construct_iteration = __esm({
+  "../../aws-cdk-lib/core/lib/private/construct-iteration.ts"() {
+    "use strict";
+    init_core_construct_finders();
+    init_linked_queue();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts
+var ReferenceStrength;
+var init_cross_stack_reference_strength = __esm({
+  "../../aws-cdk-lib/core/lib/cross-stack-reference-strength.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_cx_api();
+    init_literal_string();
+    ReferenceStrength = /* @__PURE__ */ ((ReferenceStrength2) => {
+      ReferenceStrength2["STRONG"] = "strong";
+      ReferenceStrength2["WEAK"] = "weak";
+      ReferenceStrength2["BOTH"] = "both";
+      return ReferenceStrength2;
+    })(ReferenceStrength || {});
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/refs.ts
+function crossStackReferenceStrength(scope) {
+  const value = scope.node.tryGetContext(DEFAULT_CROSS_STACK_REFERENCES);
+  if (value === void 0 || value === null) {
+    return void 0;
+  }
+  if (Object.values(ReferenceStrength).includes(value)) {
+    return value;
+  }
+  throw new UnscopedValidationError(
+    lit`InvalidReferenceStrength`,
+    `Invalid value for ${DEFAULT_CROSS_STACK_REFERENCES}: "${value}". Must be "strong", "weak", or "both".`
+  );
+}
+function resolveReferences(scope) {
+  resolveReferencesInElements(iterateDfsPreorder(scope));
+}
+function resolveReferencesInElements(elements) {
+  const { refs, overrides } = findAllReferences(elements);
+  for (const { source, value } of refs) {
+    const consumer = stackOf(source);
+    if (!value.hasValueForStack(consumer)) {
+      const resolved = resolveValue(consumer, value);
+      value.assignValueForStack(consumer, resolved);
+    }
+  }
+  for (const { source, override } of overrides) {
+    const consumer = stackOf(source);
+    const resolved = resolveValue(consumer, override.reference, override.strength);
+    override.assignValue(resolved);
+  }
+}
+function resolveValue(consumer, reference, strengthOverride) {
+  const producer = stackOf(reference.target);
+  const producerAccount = !Token.isUnresolved(producer.account) ? producer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const producerRegion = !Token.isUnresolved(producer.region) ? producer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const consumerAccount = !Token.isUnresolved(consumer.account) ? consumer.account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+  const consumerRegion = !Token.isUnresolved(consumer.region) ? consumer.region : import_cloud_assembly_api.UNKNOWN_REGION;
+  const resourceStrength = CfnResource.isCfnResource(reference.target) ? reference.target._crossStackReferenceStrengthOverride : void 0;
+  const strength = strengthOverride ?? resourceStrength ?? crossStackReferenceStrength(consumer) ?? "strong";
+  if (producer === consumer) {
+    return reference;
+  }
+  if (producer.node.root !== consumer.node.root) {
+    throw new UnscopedValidationError(lit`CannotReferenceAcrossApps`, "Cannot reference across apps. Consuming and producing stacks must be defined within the same CDK app.");
+  }
+  if (consumer.nestedStackParent && isNested(consumer, producer)) {
+    const parameterValue = resolveValue(consumer.nestedStackParent, reference);
+    return createNestedStackParameter(consumer, reference, parameterValue);
+  }
+  if (producer.nested) {
+    const outputValue = createNestedStackOutput(producer, reference);
+    const resolvedValue = resolveValue(consumer, outputValue);
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(resolvedValue)));
+    } else {
+      return resolvedValue;
+    }
+  }
+  const appRoot = consumer.node.root;
+  if (!appRoot[WEAK_REFS_WARNING_EMITTED]) {
+    const contextStrength = crossStackReferenceStrength(consumer);
+    if (contextStrength === void 0) {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesDefaultStrong",
+        `No cross-stack-reference strength configured, defaulting to "strong". We recommend you set feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" to "both", then deploy everywhere, then set it to "weak". Alternatively, set it to "strong" explicitly to lock in the current producer-protecting behavior. (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    } else if (contextStrength === "both") {
+      appRoot[WEAK_REFS_WARNING_EMITTED] = true;
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossStackReferencesBothTransitional",
+        `Feature flag "${DEFAULT_CROSS_STACK_REFERENCES}" currently set to "both". This is a transitory state. After you have finished deploying this application everywhere, set it to "weak". (See: https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/README.md#reference-strength)`
+      );
+    }
+  }
+  if (producerAccount !== consumerAccount) {
+    if (strength === "strong") {
+      Annotations.of(consumer).addWarningV2(
+        "@aws-cdk/core:crossAccountRefsAreAlwaysWeak",
+        `Strong references requested, but cross-account references can only be weak. Acknowledge this warning or set "${DEFAULT_CROSS_STACK_REFERENCES}" to "weak" to remove this message.`
+      );
+    }
+    if (consumer.synthesizer.cloudFormationExecutionRole == null) {
+      throw new UnscopedValidationError(
+        lit`NoCfnExecutionRoleForCrossAccountRefs`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Could not find a CloudFormation execution role for the consumer stack. Use a stack synthesizer that provides a CloudFormation execution role, such as DefaultStackSynthesizer (that uses the role from the bootstrap stack), or one that you can customize, such as BootstraplessSynthesizer.`
+      );
+    }
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    const producerStackArn = stackOf(reference.target).formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      consumerRoleArn: consumer.synthesizer.cloudFormationExecutionRole,
+      producerAccount,
+      producerRegion,
+      producerStackArn
+    });
+  }
+  if (producerRegion !== consumerRegion) {
+    if (producerRegion === import_cloud_assembly_api.UNKNOWN_REGION || consumerRegion === import_cloud_assembly_api.UNKNOWN_REGION) {
+      throw new UnscopedValidationError(
+        lit`CrossRegionReferencesRequireExplicitRegion`,
+        `Stack "${consumer.node.path}" cannot reference ${renderReference(reference)} in stack "${producer.node.path}". Cross stack/region references are only supported for stacks with an explicit region defined. `
+      );
+    }
+    consumer.addStackDependency(
+      producer,
+      `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+    );
+    if (strength === "strong") {
+      return createCrossRegionImportValue(reference, consumer);
+    }
+    if (strength === "both") {
+      createCrossRegionExportOnly(reference, consumer);
+    }
+    const producerStackArn = producer.formatArn({
+      service: "cloudformation",
+      resource: "stack",
+      resourceName: `${producer.stackName}/*`,
+      region: producerRegion,
+      account: producerAccount
+    });
+    return createGetStackOutput(reference, {
+      producerStackArn
+    });
+  }
+  consumer.addStackDependency(
+    producer,
+    `${consumer.node.path} -> ${reference.target.node.path}.${reference.displayName}`
+  );
+  if (strength === "strong") {
+    return createImportValue(reference);
+  }
+  if (strength === "both") {
+    createImportValue(reference);
+  }
+  return createGetStackOutput(reference, {});
+}
+function renderReference(ref) {
+  return `{${ref.target.node.path}[${ref.displayName}]}`;
+}
+function findAllReferences(elements) {
+  const refs = new Array();
+  const overrides = new Array();
+  for (const consumer of elements) {
+    if (!CfnElement.isCfnElement(consumer)) {
+      continue;
+    }
+    try {
+      const tokens = findTokens(consumer, () => consumer._toCloudFormation());
+      for (const token of tokens) {
+        if (CustomCoupledReference.isCustomCoupledReference(token)) {
+          overrides.push({ source: consumer, override: token });
+        } else if (CfnReference.isCfnReference(token)) {
+          refs.push({ source: consumer, value: token });
+        }
+      }
+    } catch (e) {
+      if (e.type === "CfnSynthesisError") {
+        continue;
+      }
+      throw e;
+    }
+  }
+  return { refs, overrides };
+}
+function createImportValue(reference) {
+  const exportingStack = stackOf(reference.target);
+  let importExpr;
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    importExpr = exportingStack.exportStringListValue(reference);
+    return Tokenization.reverseList(importExpr);
+  }
+  importExpr = exportingStack.exportValue(reference);
+  return Tokenization.reverseCompleteString(importExpr);
+}
+function getOrCreateExportWriter(reference, importStack) {
+  const referenceStack = stackOf(reference.target);
+  const exportingStack = referenceStack.nestedStackParent ?? referenceStack;
+  const exportable = getExportable(exportingStack, reference);
+  const id = JSON.stringify(exportingStack.resolve(exportable));
+  const exportName = generateExportName(importStack, reference, id);
+  if (Token.isUnresolved(exportName)) {
+    throw new UnscopedValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(exportingStack.resolve(exportName))}`);
+  }
+  const writerConstructName = makeUniqueId(["ExportsWriter", importStack.region]);
+  const exportWriter = ExportWriter.getOrCreate(exportingStack, writerConstructName, {
+    region: importStack.region
+  });
+  return { exportWriter, exportName };
+}
+function createCrossRegionImportValue(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  const exported = exportWriter.exportValue(exportName, reference, importStack);
+  if (importStack.nestedStackParent) {
+    return createNestedStackParameter(importStack, exported, exported);
+  }
+  return exported;
+}
+function createCrossRegionExportOnly(reference, importStack) {
+  const { exportWriter, exportName } = getOrCreateExportWriter(reference, importStack);
+  exportWriter.exportValueWriteOnly(exportName, reference, importStack);
+}
+function generateExportName(importStack, reference, id) {
+  const referenceStack = stackOf(reference.target);
+  const components = [
+    referenceStack.stackName ?? "",
+    referenceStack.region,
+    id
+  ];
+  const prefix = `${importStack.nestedStackParent?.stackName ?? importStack.stackName}/`;
+  const localPart = makeUniqueId(components);
+  const maxLength = 900;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function createGetStackOutputRole(scope, id, props) {
+  const consumers = /* @__PURE__ */ new Set([props.consumerRoleArn]);
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Role",
+    properties: {
+      AssumeRolePolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Principal: {
+              AWS: Lazy.any({
+                produce: () => {
+                  const arns = [...consumers].map((arn) => ({ "Fn::Sub": arn }));
+                  return arns.length === 1 ? arns[0] : arns;
+                }
+              })
+            },
+            Action: [
+              "sts:AssumeRole"
+            ]
+          }
+        ]
+      }
+    }
+  });
+  ROLE_CONSUMERS.set(resource, consumers);
+  const roleName = Names.uniqueResourceName(resource, {
+    maxLength: 64
+  });
+  resource.addPropertyOverride("RoleName", roleName);
+  const roleArn = stackOf(scope).formatArn({
+    service: "iam",
+    resource: "role",
+    resourceName: roleName,
+    account: props.producerAccount,
+    arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+    region: ""
+  });
+  return { resource, roleRef: { roleArn, roleName } };
+}
+function addConsumerToRole(roleResource, consumerRoleArn) {
+  const consumers = ROLE_CONSUMERS.get(roleResource);
+  if (consumers) {
+    consumers.add(consumerRoleArn);
+  }
+}
+function createGetStackOutputPolicy(scope, id, props) {
+  const resource = new CfnResource(scope, id, {
+    type: "AWS::IAM::Policy",
+    properties: {
+      Roles: [Fn.ref(props.role.logicalId)],
+      PolicyDocument: {
+        Version: "2012-10-17",
+        Statement: [
+          {
+            Effect: "Allow",
+            Action: "cloudformation:DescribeStacks",
+            Resource: props.producerStackArn
+          }
+        ]
+      }
+    }
+  });
+  const policyName = Names.uniqueResourceName(resource, {
+    maxLength: 128
+  });
+  resource.addPropertyOverride("PolicyName", policyName);
+  return { resource, policyRef: { policyId: policyName } };
+}
+function createGetStackOutput(reference, options = {}) {
+  const exportingStack = stackOf(reference.target);
+  const resolved = JSON.stringify(exportingStack.resolve(reference));
+  const outputId = "Output" + resolved;
+  const roleId = "GetStackOutputRole";
+  const policyId = "GetStackOutputPolicy";
+  function createScope(stack) {
+    const scopeName = "Publish";
+    let scope2 = stack.node.tryFindChild(scopeName);
+    if (scope2 === void 0) {
+      scope2 = new import_constructs14.Construct(stack, scopeName);
+    }
+    return scope2;
+  }
+  const scope = createScope(exportingStack);
+  let output = scope.node.tryFindChild(outputId);
+  if (output == null) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(scope, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(scope, outputId, {
+        value: Token.asString(reference)
+      });
+    }
+  }
+  let roleArn = void 0;
+  if (options.consumerRoleArn) {
+    let roleResource = scope.node.tryFindChild(roleId);
+    if (roleResource == null) {
+      const { resource, roleRef } = createGetStackOutputRole(scope, roleId, {
+        consumerRoleArn: options.consumerRoleArn,
+        producerAccount: options.producerAccount
+      });
+      roleResource = resource;
+      roleArn = roleRef.roleArn;
+    } else {
+      addConsumerToRole(roleResource, options.consumerRoleArn);
+      const roleName = Names.uniqueResourceName(roleResource, { maxLength: 64 });
+      roleArn = exportingStack.formatArn({
+        service: "iam",
+        resource: "role",
+        resourceName: roleName,
+        account: options.producerAccount,
+        arnFormat: "arn:aws:service:region:account:resource/resourceName" /* SLASH_RESOURCE_NAME */,
+        region: ""
+      });
+    }
+    let policy = scope.node.tryFindChild(policyId);
+    if (policy == null) {
+      createGetStackOutputPolicy(scope, policyId, {
+        role: roleResource,
+        producerStackArn: options.producerStackArn
+      });
+    }
+  }
+  const getStackOutput = Fn.getStackOutput(exportingStack.stackName, output.logicalId, exportingStack.region, roleArn);
+  if (reference.typeHint === "string-list" /* STRING_LIST */) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, getStackOutput));
+  }
+  return Tokenization.reverseCompleteString(getStackOutput);
+}
+function getExportable(stack, reference) {
+  if (CfnElement.isCfnElement(reference.target)) {
+    reference.target._lockLogicalId();
+  }
+  return referenceNestedStackValueInParent(reference, stack);
+}
+function createNestedStackParameter(nested, reference, value) {
+  const paramId = generateUniqueId(nested, reference, "reference-to-");
+  let param = nested.node.tryFindChild(paramId);
+  if (!param) {
+    param = new CfnParameter(nested, paramId, { type: "String" });
+    if (!("setParameter" in nested)) {
+      throw new UnscopedValidationError(lit`NestedStackMustHaveSetParameter`, 'assertion failed: nested stack should have a "setParameter" method');
+    }
+    nested.setParameter(param.logicalId, Token.asString(value));
+  }
+  return param.value;
+}
+function createNestedStackOutput(producer, reference) {
+  const outputId = generateUniqueId(producer, reference);
+  let output = producer.node.tryFindChild(outputId);
+  if (!output) {
+    if (reference.typeHint === "string-list" /* STRING_LIST */) {
+      output = new CfnOutput(producer, outputId, { value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(reference)) });
+    } else {
+      output = new CfnOutput(producer, outputId, { value: Token.asString(reference) });
+    }
+  }
+  if (!producer.nestedStackResource) {
+    throw new AssumptionError(lit`AssertionFailed`, "assertion failed");
+  }
+  return producer.nestedStackResource.getAtt(`Outputs.${output.logicalId}`);
+}
+function referenceNestedStackValueInParent(reference, targetStack) {
+  let currentStack = stackOf(reference.target);
+  if (currentStack !== targetStack && !isNested(currentStack, targetStack)) {
+    throw new UnscopedValidationError(lit`ReferencedResourceMustBeInTargetStack`, `Referenced resource must be in stack '${targetStack.node.path}', got '${reference.target.node.path}'`);
+  }
+  const isNestedListReference = currentStack !== targetStack && reference.typeHint === "string-list" /* STRING_LIST */;
+  while (currentStack !== targetStack) {
+    reference = createNestedStackOutput(stackOf(reference.target), reference);
+    currentStack = stackOf(reference.target);
+  }
+  if (isNestedListReference) {
+    return Tokenization.reverseList(Fn.split(STRING_LIST_REFERENCE_DELIMITER, Token.asString(reference)));
+  }
+  return reference;
+}
+function isNested(nested, parent) {
+  if (nested.nestedStackParent === parent) {
+    return true;
+  }
+  if (!nested.nestedStackParent) {
+    return false;
+  }
+  return isNested(nested.nestedStackParent, parent);
+}
+function generateUniqueId(stack, ref, prefix = "") {
+  return stack.resolve(`${prefix}${Names.nodeUniqueId(ref.target.node)}${ref.displayName}`);
+}
+var import_constructs14, STRING_LIST_REFERENCE_DELIMITER, WEAK_REFS_WARNING_EMITTED, OVERRIDDEN_REFERENCE_SYMBOL, CustomCoupledReference, ROLE_CONSUMERS;
+var init_refs = __esm({
+  "../../aws-cdk-lib/core/lib/private/refs.ts"() {
+    "use strict";
+    import_constructs14 = __toESM(require_lib4());
+    init_cfn_reference();
+    init_intrinsic();
+    init_resolve();
+    init_uniqueid();
+    init_cx_api();
+    init_annotations();
+    init_arn();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_export_writer_provider();
+    init_errors();
+    init_lazy();
+    init_names();
+    init_token();
+    init_type_hints();
+    init_construct_iteration();
+    init_cfn_resource();
+    init_literal_string();
+    init_cross_stack_reference_strength();
+    init_core_construct_finders();
+    STRING_LIST_REFERENCE_DELIMITER = "||";
+    WEAK_REFS_WARNING_EMITTED = /* @__PURE__ */ Symbol.for("@aws-cdk/core.WeakRefsWarningEmitted");
+    OVERRIDDEN_REFERENCE_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CustomCoupledReference");
+    CustomCoupledReference = class extends Intrinsic {
+      static isCustomCoupledReference(x) {
+        return OVERRIDDEN_REFERENCE_SYMBOL in x;
+      }
+      reference;
+      strength;
+      resolvedValue;
+      constructor(reference, strength) {
+        super(reference, { typeHint: reference.typeHint });
+        this.reference = reference;
+        this.strength = strength;
+        Object.defineProperty(this, OVERRIDDEN_REFERENCE_SYMBOL, { value: true });
+      }
+      assignValue(value) {
+        this.resolvedValue = value;
+      }
+      resolve(context) {
+        if (this.resolvedValue) {
+          return this.resolvedValue.resolve(context);
+        }
+        return this.reference.resolve(context);
+      }
+    };
+    ROLE_CONSUMERS = /* @__PURE__ */ new WeakMap();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deps.ts
+function reifyConstructDependencies(root) {
+  for (const dependency of registeredConstructDependencies(root)) {
+    dispatchDependencyOperation(dependency);
+  }
+}
+function dispatchDependencyOperation(op) {
+  if (op.source === op.target) {
+    return;
+  }
+  if (process.env.CDK_DEBUG_DEPS) {
+    if (op.kind === "add") {
+      console.error(`[CDK_DEBUG_DEPS] applying dependency ${op.reason}`);
+    } else {
+      console.error(`[CDK_DEBUG_DEPS] removing construct dependency ${op.source.node.path} -> ${op.target.node.path}`);
+    }
+  }
+  const sourcePath = dependencyContainerPath(op.source);
+  const targetPath = dependencyContainerPath(op.target);
+  const parentI = sharedDependencyContainerIndex(sourcePath, targetPath);
+  validateNoStagesCrossed(sourcePath, targetPath, op);
+  validateNoParentChildDependency(sourcePath, targetPath, parentI, op);
+  if (parentI < sourcePath.length - 1 && parentI < targetPath.length - 1) {
+    doDispatch(sourcePath[parentI + 1], targetPath[parentI + 1], op);
+  }
+}
+function validateNoStagesCrossed(sourcePath, targetPath, op) {
+  const sourceStage = last(sourcePath.filter((c) => c.type === "stage"))?.construct;
+  const targetStage = last(targetPath.filter((c) => c.type === "stage"))?.construct;
+  if (sourceStage !== targetStage) {
+    throw new UnscopedValidationError(lit`NoCrossStageDependency`, `You cannot have a dependency from '${op.source.node.path}' (in ${describeStage(sourceStage)}) to '${op.target.node.path}' (in ${describeStage(targetStage)}): dependency cannot cross stage boundaries`);
+  }
+}
+function validateNoParentChildDependency(sourcePath, targetPath, parentI, op) {
+  if (parentI === targetPath.length - 1) {
+    throw new UnscopedValidationError(lit`CannotDependOnParent`, `'${op.source.node.path}' cannot depend on parent ${targetPath[parentI].type} '${op.target.node.path}'`);
+  }
+  void sourcePath;
+}
+function doDispatch(source, target, op) {
+  switch (source.type) {
+    case "stage":
+      break;
+    case "stack":
+      if (target.type === "stack") {
+        if (op.kind === "add") {
+          source.construct._addStackDependency(target.construct, op);
+        } else {
+          source.construct._removeStackDependency(target.construct, op);
+        }
+      }
+      break;
+    case "nested-stack":
+    case "construct":
+      for (const sourceResource of dependingResourcesFor(source)) {
+        for (const targetResource of dependingResourcesFor(target)) {
+          if (sourceResource === targetResource) {
+            continue;
+          }
+          if (op.kind === "add") {
+            sourceResource._addResourceDependency(targetResource);
+          } else {
+            sourceResource._removeResourceDependency(targetResource);
+          }
+        }
+      }
+      break;
+  }
+}
+function* dependingResourcesFor(construct) {
+  if (construct.type === "nested-stack" && construct.construct.nestedStackResource) {
+    yield construct.construct.nestedStackResource;
+  }
+  if (construct.type === "construct") {
+    yield* iterateTemplateCfnResources(construct.construct);
+  }
+}
+function dependencyContainerPath(start) {
+  const ret = [];
+  let construct = start;
+  while (construct) {
+    let candidate;
+    if (STAGE_TYPE.isMarked(construct)) {
+      candidate = { type: "stage", construct };
+    } else if (NESTED_STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "nested-stack", construct };
+    } else if (STACK_TYPE.isMarked(construct)) {
+      candidate = { type: "stack", construct };
+    } else {
+      if (ret.length === 0) {
+        candidate = { type: "construct", construct };
+      }
+    }
+    if (candidate && (ret.length === 0 || contains(candidate, ret[ret.length - 1]))) {
+      ret.push(candidate);
+    }
+    construct = construct.node.scope;
+  }
+  return ret.reverse();
+  function contains(container, child) {
+    switch (child.type) {
+      case "stage":
+        return container.type == "stage";
+      case "nested-stack":
+        return container.type == "nested-stack" || container.type == "stack";
+      case "stack":
+        return container.type == "stage";
+      case "construct":
+        return true;
+    }
+  }
+}
+function sharedDependencyContainerIndex(as, bs) {
+  const minLength = Math.min(as.length, bs.length);
+  for (let i = minLength - 1; i >= 0; i--) {
+    if (as[i].construct === bs[i].construct) {
+      return i;
+    }
+  }
+  return -1;
+}
+function* registeredConstructDependencies(root) {
+  const found = /* @__PURE__ */ new Map();
+  for (const source of iterateDfsPreorder(root)) {
+    for (const dependable of source.node.dependencies) {
+      for (const target of import_constructs15.Dependable.of(dependable).dependencyRoots) {
+        if (source === target) {
+          continue;
+        }
+        let foundTargets = found.get(source);
+        if (!foundTargets) {
+          found.set(source, foundTargets = /* @__PURE__ */ new Set());
+        }
+        if (!foundTargets.has(target)) {
+          yield { kind: "add", source, target, reason: `<${source.node.path}>.node.addDependency(<${target.node.path}>)` };
+          foundTargets.add(target);
+        }
+      }
+    }
+  }
+}
+function describeStage(assembly) {
+  if (!assembly) {
+    return "an unrooted construct tree";
+  }
+  if (!assembly.parentStage) {
+    return "the App";
+  }
+  return `Stage '${assembly.node.path}'`;
+}
+function last(xs) {
+  return xs[xs.length - 1];
+}
+var import_constructs15;
+var init_deps = __esm({
+  "../../aws-cdk-lib/core/lib/private/deps.ts"() {
+    "use strict";
+    import_constructs15 = __toESM(require_lib4());
+    init_errors();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/prepare-app.ts
+function writePropertyAssignmentMetadata(root) {
+  if (!debugModeEnabled()) return;
+  const lookupTableFor = (c) => ({
+    cfnPropertyName: (cdkPropertyName) => c.cfnPropertyName(cdkPropertyName)
+  });
+  for (const consumer of iterateDfsPreorder(root)) {
+    if (CfnResource.isCfnResource(consumer)) {
+      writePropertyAssignmentMetadataForConstruct(consumer, () => consumer._toCloudFormation(), lookupTableFor(consumer));
+    }
+  }
+}
+function prepareApp(root) {
+  reifyConstructDependencies(root);
+  resolveReferences(root);
+  writePropertyAssignmentMetadata(root);
+  const nestedStacks = findAllNestedStacks(root);
+  if (nestedStacks.length > 0) {
+    for (const nested of nestedStacks) {
+      defineNestedStackAsset(nested);
+    }
+    resolveReferencesInElements(nestedStacks.map((s) => s.nestedStackResource));
+  }
+}
+function defineNestedStackAsset(nestedStack) {
+  const nested = nestedStack;
+  nested._prepareTemplateAsset();
+}
+function findAllNestedStacks(root) {
+  const result = new Array();
+  const includeStack = (stack) => {
+    if (!STACK_TYPE.isMarked(stack)) {
+      return false;
+    }
+    if (!stack.nested) {
+      return false;
+    }
+    if (!stageOf(stack)) {
+      return true;
+    }
+    return stageOf(stack) === root;
+  };
+  for (const node of iterateDfsPostorder(root)) {
+    if (includeStack(node)) {
+      result.push(node);
+    }
+  }
+  return result;
+}
+var init_prepare_app = __esm({
+  "../../aws-cdk-lib/core/lib/private/prepare-app.ts"() {
+    "use strict";
+    init_refs();
+    init_cfn_resource();
+    init_debug();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_deps();
+    init_resolve();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/validation-id.ts
+function parseValidationId(id) {
+  let nsSeparator = void 0;
+  const braceStack = [];
+  for (let i = 0; i < id.length; i++) {
+    const c = id[i];
+    if (c === ":" && id[i + 1] === ":" && braceStack.length === 0) {
+      if (nsSeparator !== void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. The '::' delimiter is reserved for separating the prefix from the rule name (e.g. 'prefix::RuleName').`);
+      }
+      nsSeparator = i;
+      i += 1;
+    } else if (["]", ")", "}"].includes(c)) {
+      const lastBrace = braceStack.pop();
+      if (lastBrace === void 0) {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Unmatched closing brace '${c}' at position ${i}.`);
+      }
+      if (lastBrace === "(" && c !== ")" || lastBrace === "[" && c !== "]" || lastBrace === "{" && c !== "}") {
+        throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Mismatched closing brace '${c}' at position ${i}. Expected '${lastBrace === "(" ? ")" : lastBrace === "[" ? "]" : "}"}'.`);
+      }
+    } else if (["[", "(", "{"].includes(c)) {
+      braceStack.push(c);
+    }
+  }
+  if (nsSeparator === void 0) {
+    return { ruleId: id };
+  }
+  if (nsSeparator === 0) {
+    throw new UnscopedValidationError(lit`InvalidValidationId`, `Invalid validation rule ID '${id}'. Missing plugin name before '::'.`);
+  }
+  const namespace = id.substring(0, nsSeparator);
+  const ruleId = id.substring(nsSeparator + 2);
+  return { namespace, ruleId };
+}
+function normalizeValidationId(id, defaultNamespace) {
+  const p = typeof id === "string" ? parseValidationId(id) : id;
+  const parsed = {
+    namespace: p.namespace?.replaceAll(/ /g, "-"),
+    ruleId: p.ruleId.replaceAll(/ /g, "-")
+  };
+  if (parsed.namespace && ["annotation", "Construct-Annotations"].includes(parsed.namespace)) {
+    return `${ANNOTATION_PLUGIN_NAMESPACE}::${parsed.ruleId}`;
+  }
+  return `${parsed.namespace ?? defaultNamespace}::${parsed.ruleId}`;
+}
+function normalizeValidationIdForAnnotations(id) {
+  return normalizeValidationId(id, ANNOTATION_PLUGIN_NAMESPACE);
+}
+function namespaceFromPluginName(pluginName) {
+  if (pluginName === ANNOTATION_PLUGIN_NAME) {
+    return ANNOTATION_PLUGIN_NAMESPACE;
+  }
+  return pluginName.replace(/ /g, "-");
+}
+function pluginNameFromNamespace(namespace) {
+  return namespace.replace(/-/g, " ");
+}
+var ANNOTATION_PLUGIN_NAME, ANNOTATION_PLUGIN_NAMESPACE;
+var init_validation_id = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/validation-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    ANNOTATION_PLUGIN_NAME = "Construct Annotations";
+    ANNOTATION_PLUGIN_NAMESPACE = namespaceFromPluginName("Annotation");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/annotation-plugin.ts
+function collectAnnotationReport(root) {
+  const myNamespace = namespaceFromPluginName(AnnotationPlugin.NAME);
+  const violationMap = /* @__PURE__ */ new Map();
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN && entry.type !== cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR) {
+        continue;
+      }
+      const severity = entry.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR ? "error" : "warning";
+      let { message, ruleName } = splitDescriptionAndId(String(entry.data));
+      if (ruleName && !ruleName.includes("::")) {
+        ruleName = `${myNamespace}::${ruleName}`;
+      }
+      let templatePath;
+      try {
+        templatePath = path13.join(stageOf(construct)?.outdir ?? ".", stackOf(construct).templateFile);
+      } catch (e) {
+      }
+      const resourceLogicalId = CfnResource.isCfnResource(construct) ? stackOf(construct).resolve(construct.logicalId) : void 0;
+      const violatingResource = {
+        constructPath: construct.node.path,
+        resourceLogicalId,
+        templatePath,
+        locations: []
+      };
+      const key = `${ruleName}|${severity}|${message}`;
+      const existing = violationMap.get(key);
+      if (existing) {
+        existing.violatingResources.push(violatingResource);
+      } else {
+        violationMap.set(key, {
+          ruleName: ruleName ?? `${myNamespace}::${severity}-annotation`,
+          description: message,
+          severity,
+          violatingResources: [violatingResource],
+          ruleMetadata: {
+            "cdk:annotation": "true"
+          }
+        });
+      }
+    }
+  }
+  const violations = Array.from(violationMap.values());
+  if (violations.length === 0) {
+    return void 0;
+  }
+  const hasErrors = violations.some((v) => v.severity === "error");
+  return new AnnotationPlugin({
+    pluginName: AnnotationPlugin.NAME,
+    success: !hasErrors,
+    violations,
+    metadata: {
+      "cdk:annotations": "true"
+    }
+  });
+}
+function splitDescriptionAndId(message) {
+  const ackMatch = message.match(/\[ack: ([^\]]+)\]/);
+  if (ackMatch) {
+    return { message: message.replace(ackMatch[0], "").trim(), ruleName: ackMatch[1] };
+  }
+  const idMatch = message.match(/\(([^()]+::[^()]+)\)$/);
+  if (idMatch) {
+    return { message: message.replace(idMatch[0], "").trim(), ruleName: idMatch[1] };
+  }
+  return { message };
+}
+var path13, AnnotationPlugin;
+var init_annotation_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/private/annotation-plugin.ts"() {
+    "use strict";
+    path13 = __toESM(require("path"));
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_cloud_assembly_schema();
+    init_cfn_resource();
+    init_validation_id();
+    AnnotationPlugin = class _AnnotationPlugin {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      static NAME = "Construct Annotations";
+      name = _AnnotationPlugin.NAME;
+      validate(_context) {
+        return this.report;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts
+function collectAcknowledgedRules(root) {
+  const rules = {};
+  for (const construct of iterateDfsPreorder(root)) {
+    for (const entry of construct.node.metadata) {
+      if (entry.type === "aws:cdk:acknowledged-rules" && entry.data) {
+        for (const [id, reason] of Object.entries(entry.data)) {
+          const rule = { reason, acknowledgedId: id, acknowledgedAt: construct.node.path, acknowledgedStackTrace: entry.trace?.join("\n") };
+          const pathMap = rules[id] ??= {};
+          pathMap[rule.acknowledgedAt] = rule;
+        }
+      }
+    }
+  }
+  return rules;
+}
+var init_collect_acknowledged_rule_ids = __esm({
+  "../../aws-cdk-lib/core/lib/private/collect-acknowledged-rule-ids.ts"() {
+    "use strict";
+    init_construct_iteration();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js
+var require_bindings_wasm = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/bindings_wasm.js"(exports2) {
+    var WasmCelEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCelEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcelengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcelengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcelengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcelengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCelEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcelengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcelengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCelEngine.prototype[Symbol.dispose] = WasmCelEngine.prototype.free;
+    exports2.WasmCelEngine = WasmCelEngine;
+    var WasmCompositeEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmCompositeEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmcompositeengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmcompositeengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmcompositeengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {CompositeEngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmcompositeengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmCompositeEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmcompositeengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmcompositeengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmCompositeEngine.prototype[Symbol.dispose] = WasmCompositeEngine.prototype.free;
+    exports2.WasmCompositeEngine = WasmCompositeEngine;
+    var WasmRegoEngine = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmRegoEngineFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmregoengine_free(ptr, 0);
+      }
+      /**
+       * @returns {string}
+       */
+      engineName() {
+        let deferred1_0;
+        let deferred1_1;
+        try {
+          const ret = wasm.wasmregoengine_engineName(this.__wbg_ptr);
+          deferred1_0 = ret[0];
+          deferred1_1 = ret[1];
+          return getStringFromWasm0(ret[0], ret[1]);
+        } finally {
+          wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+        }
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmregoengine_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {EngineConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmregoengine_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmRegoEngineFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @param {any} request
+       * @returns {any}
+       */
+      validateAwsCliCommand(request2) {
+        const ret = wasm.wasmregoengine_validateAwsCliCommand(this.__wbg_ptr, request2);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @param {ValidateConfig} options
+       * @param {string} file_path
+       * @returns {any}
+       */
+      validateTemplate(template, options, file_path) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ptr1 = passStringToWasm0(file_path, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len1 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmregoengine_validateTemplate(this.__wbg_ptr, ptr0, len0, options, ptr1, len1);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmRegoEngine.prototype[Symbol.dispose] = WasmRegoEngine.prototype.free;
+    exports2.WasmRegoEngine = WasmRegoEngine;
+    var WasmSchemaValidator = class {
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSchemaValidatorFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmschemavalidator_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      listRules() {
+        const ret = wasm.wasmschemavalidator_listRules(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {SchemaValidatorConfig} config
+       */
+      constructor(config) {
+        const ret = wasm.wasmschemavalidator_new(config);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        this.__wbg_ptr = ret[0];
+        WasmSchemaValidatorFinalization.register(this, this.__wbg_ptr, this);
+        return this;
+      }
+      /**
+       * @returns {number}
+       */
+      schemaCount() {
+        const ret = wasm.wasmschemavalidator_schemaCount(this.__wbg_ptr);
+        return ret >>> 0;
+      }
+      /**
+       * @param {WasmSemanticModel} model
+       * @param {string | null} [region]
+       * @returns {any}
+       */
+      validate(model, region) {
+        _assertClass(model, WasmSemanticModel);
+        var ptr0 = isLikeNone(region) ? 0 : passStringToWasm0(region, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        var len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmschemavalidator_validate(this.__wbg_ptr, model.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSchemaValidator.prototype[Symbol.dispose] = WasmSchemaValidator.prototype.free;
+    exports2.WasmSchemaValidator = WasmSchemaValidator;
+    var WasmSemanticModel = class _WasmSemanticModel {
+      static __wrap(ptr) {
+        const obj = Object.create(_WasmSemanticModel.prototype);
+        obj.__wbg_ptr = ptr;
+        WasmSemanticModelFinalization.register(obj, obj.__wbg_ptr, obj);
+        return obj;
+      }
+      __destroy_into_raw() {
+        const ptr = this.__wbg_ptr;
+        this.__wbg_ptr = 0;
+        WasmSemanticModelFinalization.unregister(this);
+        return ptr;
+      }
+      free() {
+        const ptr = this.__destroy_into_raw();
+        wasm.__wbg_wasmsemanticmodel_free(ptr, 0);
+      }
+      /**
+       * @returns {any}
+       */
+      conditions() {
+        const ret = wasm.wasmsemanticmodel_conditions(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      description() {
+        const ret = wasm.wasmsemanticmodel_description(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {string | undefined}
+       */
+      formatVersion() {
+        const ret = wasm.wasmsemanticmodel_formatVersion(this.__wbg_ptr);
+        let v12;
+        if (ret[0] !== 0) {
+          v12 = getStringFromWasm0(ret[0], ret[1]).slice();
+          wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
+        }
+        return v12;
+      }
+      /**
+       * @returns {any}
+       */
+      outputs() {
+        const ret = wasm.wasmsemanticmodel_outputs(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      parameters() {
+        const ret = wasm.wasmsemanticmodel_parameters(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {Uint8Array} template
+       * @returns {WasmSemanticModel}
+       */
+      static parse(template) {
+        const ptr0 = passArray8ToWasm0(template, wasm.__wbindgen_malloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_parse(ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return _WasmSemanticModel.__wrap(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      resources() {
+        const ret = wasm.wasmsemanticmodel_resources(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @param {string} path
+       * @returns {any}
+       */
+      sourceLocation(path23) {
+        const ptr0 = passStringToWasm0(path23, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+        const len0 = WASM_VECTOR_LEN;
+        const ret = wasm.wasmsemanticmodel_sourceLocation(this.__wbg_ptr, ptr0, len0);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      toDiagnosticModel() {
+        const ret = wasm.wasmsemanticmodel_toDiagnosticModel(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+      /**
+       * @returns {any}
+       */
+      transforms() {
+        const ret = wasm.wasmsemanticmodel_transforms(this.__wbg_ptr);
+        if (ret[2]) {
+          throw takeFromExternrefTable0(ret[1]);
+        }
+        return takeFromExternrefTable0(ret[0]);
+      }
+    };
+    if (Symbol.dispose) WasmSemanticModel.prototype[Symbol.dispose] = WasmSemanticModel.prototype.free;
+    exports2.WasmSemanticModel = WasmSemanticModel;
+    function init() {
+      wasm.init();
+    }
+    exports2.init = init;
+    function version3() {
+      let deferred1_0;
+      let deferred1_1;
+      try {
+        const ret = wasm.version();
+        deferred1_0 = ret[0];
+        deferred1_1 = ret[1];
+        return getStringFromWasm0(ret[0], ret[1]);
+      } finally {
+        wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
+      }
+    }
+    exports2.version = version3;
+    function __wbg_get_imports() {
+      const import0 = {
+        __proto__: null,
+        __wbg_Error_92b29b0548f8b746: function(arg0, arg1) {
+          const ret = Error(getStringFromWasm0(arg0, arg1));
+          return ret;
+        },
+        __wbg_Number_9a4e0ecb0fa16705: function(arg0) {
+          const ret = Number(arg0);
+          return ret;
+        },
+        __wbg_String_8564e559799eccda: function(arg0, arg1) {
+          const ret = String(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_bigint_get_as_i64_d968e41184ae354f: function(arg0, arg1) {
+          const v = arg1;
+          const ret = typeof v === "bigint" ? v : void 0;
+          getDataViewMemory0().setBigInt64(arg0 + 8 * 1, isLikeNone(ret) ? BigInt(0) : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_boolean_get_fa956cfa2d1bd751: function(arg0) {
+          const v = arg0;
+          const ret = typeof v === "boolean" ? v : void 0;
+          return isLikeNone(ret) ? 16777215 : ret ? 1 : 0;
+        },
+        __wbg___wbindgen_debug_string_c25d447a39f5578f: function(arg0, arg1) {
+          const ret = debugString(arg1);
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_in_aca499c5de7ff5e5: function(arg0, arg1) {
+          const ret = arg0 in arg1;
+          return ret;
+        },
+        __wbg___wbindgen_is_bigint_2f76dc55065b4273: function(arg0) {
+          const ret = typeof arg0 === "bigint";
+          return ret;
+        },
+        __wbg___wbindgen_is_function_1ff95bcc5517c252: function(arg0) {
+          const ret = typeof arg0 === "function";
+          return ret;
+        },
+        __wbg___wbindgen_is_object_a27215656b807791: function(arg0) {
+          const val2 = arg0;
+          const ret = typeof val2 === "object" && val2 !== null;
+          return ret;
+        },
+        __wbg___wbindgen_is_string_ea5e6cc2e4141dfe: function(arg0) {
+          const ret = typeof arg0 === "string";
+          return ret;
+        },
+        __wbg___wbindgen_is_undefined_c05833b95a3cf397: function(arg0) {
+          const ret = arg0 === void 0;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_eq_e659fcf7b0e32763: function(arg0, arg1) {
+          const ret = arg0 === arg1;
+          return ret;
+        },
+        __wbg___wbindgen_jsval_loose_eq_db4c3b15f63fc170: function(arg0, arg1) {
+          const ret = arg0 == arg1;
+          return ret;
+        },
+        __wbg___wbindgen_number_get_394265ed1e1b84ee: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "number" ? obj : void 0;
+          getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
+        },
+        __wbg___wbindgen_string_get_b0ca35b86a603356: function(arg0, arg1) {
+          const obj = arg1;
+          const ret = typeof obj === "string" ? obj : void 0;
+          var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          var len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg___wbindgen_throw_344f42d3211c4765: function(arg0, arg1) {
+          throw new Error(getStringFromWasm0(arg0, arg1));
+        },
+        __wbg_call_8a2dd23819f8a60a: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = arg0.call(arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_done_89b2b13e91a60321: function(arg0) {
+          const ret = arg0.done;
+          return ret;
+        },
+        __wbg_entries_015dc610cd81ede0: function(arg0) {
+          const ret = Object.entries(arg0);
+          return ret;
+        },
+        __wbg_error_a6fa202b58aa1cd3: function(arg0, arg1) {
+          let deferred0_0;
+          let deferred0_1;
+          try {
+            deferred0_0 = arg0;
+            deferred0_1 = arg1;
+            console.error(getStringFromWasm0(arg0, arg1));
+          } finally {
+            wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
+          }
+        },
+        __wbg_getRandomValues_3f44b700395062e5: function() {
+          return handleError(function(arg0, arg1) {
+            globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
+          }, arguments);
+        },
+        __wbg_getTime_d6f070c088c9b5ed: function(arg0) {
+          const ret = arg0.getTime();
+          return ret;
+        },
+        __wbg_get_507a50627bffa49b: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_c7eb1f358a7654df: function() {
+          return handleError(function(arg0, arg1) {
+            const ret = Reflect.get(arg0, arg1);
+            return ret;
+          }, arguments);
+        },
+        __wbg_get_unchecked_6e0ad6d2a41b06f6: function(arg0, arg1) {
+          const ret = arg0[arg1 >>> 0];
+          return ret;
+        },
+        __wbg_get_with_ref_key_6412cf3094599694: function(arg0, arg1) {
+          const ret = arg0[arg1];
+          return ret;
+        },
+        __wbg_instanceof_ArrayBuffer_4480b9e0068a8adb: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof ArrayBuffer;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Map_e5b5e3db98422fcc: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Map;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_instanceof_Uint8Array_309b927aaf7a3fc7: function(arg0) {
+          let result;
+          try {
+            result = arg0 instanceof Uint8Array;
+          } catch (_) {
+            result = false;
+          }
+          const ret = result;
+          return ret;
+        },
+        __wbg_isArray_0677c962b281d01a: function(arg0) {
+          const ret = Array.isArray(arg0);
+          return ret;
+        },
+        __wbg_isSafeInteger_04f36e4056f1b851: function(arg0) {
+          const ret = Number.isSafeInteger(arg0);
+          return ret;
+        },
+        __wbg_iterator_6f722e4a93058b71: function() {
+          const ret = Symbol.iterator;
+          return ret;
+        },
+        __wbg_length_1f0964f4a5e2c6d8: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_length_370319915dc99107: function(arg0) {
+          const ret = arg0.length;
+          return ret;
+        },
+        __wbg_new_0_3da9e97f24fc69be: function() {
+          const ret = /* @__PURE__ */ new Date();
+          return ret;
+        },
+        __wbg_new_227d7c05414eb861: function() {
+          const ret = new Error();
+          return ret;
+        },
+        __wbg_new_32b398fb48b6d94a: function() {
+          const ret = new Array();
+          return ret;
+        },
+        __wbg_new_7796ffc7ed656783: function() {
+          const ret = /* @__PURE__ */ new Map();
+          return ret;
+        },
+        __wbg_new_cd45aabdf6073e84: function(arg0) {
+          const ret = new Uint8Array(arg0);
+          return ret;
+        },
+        __wbg_new_da52cf8fe3429cb2: function() {
+          const ret = new Object();
+          return ret;
+        },
+        __wbg_next_6dbf2c0ac8cde20f: function(arg0) {
+          const ret = arg0.next;
+          return ret;
+        },
+        __wbg_next_71f2aa1cb3d1e37e: function() {
+          return handleError(function(arg0) {
+            const ret = arg0.next();
+            return ret;
+          }, arguments);
+        },
+        __wbg_now_e7c6795a7f81e10f: function(arg0) {
+          const ret = arg0.now();
+          return ret;
+        },
+        __wbg_performance_3fcf6e32a7e1ed0a: function(arg0) {
+          const ret = arg0.performance;
+          return ret;
+        },
+        __wbg_prototypesetcall_4770620bbe4688a0: function(arg0, arg1, arg2) {
+          Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), arg2);
+        },
+        __wbg_set_575dd786d51585f8: function(arg0, arg1, arg2) {
+          const ret = arg0.set(arg1, arg2);
+          return ret;
+        },
+        __wbg_set_6be42768c690e380: function(arg0, arg1, arg2) {
+          arg0[arg1] = arg2;
+        },
+        __wbg_set_8a16b38e4805b298: function(arg0, arg1, arg2) {
+          arg0[arg1 >>> 0] = arg2;
+        },
+        __wbg_stack_3b0d974bbf31e44f: function(arg0, arg1) {
+          const ret = arg1.stack;
+          const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
+          const len1 = WASM_VECTOR_LEN;
+          getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
+          getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
+        },
+        __wbg_static_accessor_GLOBAL_4ef717fb391d88b7: function() {
+          const ret = typeof global === "undefined" ? null : global;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_GLOBAL_THIS_8d1badc68b5a74f4: function() {
+          const ret = typeof globalThis === "undefined" ? null : globalThis;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_SELF_146583524fe1469b: function() {
+          const ret = typeof self === "undefined" ? null : self;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_static_accessor_WINDOW_f2829a2234d7819e: function() {
+          const ret = typeof window === "undefined" ? null : window;
+          return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
+        },
+        __wbg_value_a5d5488a9589444a: function(arg0) {
+          const ret = arg0.value;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000001: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000002: function(arg0) {
+          const ret = arg0;
+          return ret;
+        },
+        __wbindgen_cast_0000000000000003: function(arg0, arg1) {
+          const ret = getStringFromWasm0(arg0, arg1);
+          return ret;
+        },
+        __wbindgen_cast_0000000000000004: function(arg0) {
+          const ret = BigInt.asUintN(64, arg0);
+          return ret;
+        },
+        __wbindgen_init_externref_table: function() {
+          const table = wasm.__wbindgen_externrefs;
+          const offset = table.grow(4);
+          table.set(0, void 0);
+          table.set(offset + 0, void 0);
+          table.set(offset + 1, null);
+          table.set(offset + 2, true);
+          table.set(offset + 3, false);
+        }
+      };
+      return {
+        __proto__: null,
+        "./bindings_wasm_bg.js": import0
+      };
+    }
+    var WasmCelEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcelengine_free(ptr, 1));
+    var WasmCompositeEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmcompositeengine_free(ptr, 1));
+    var WasmRegoEngineFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmregoengine_free(ptr, 1));
+    var WasmSchemaValidatorFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmschemavalidator_free(ptr, 1));
+    var WasmSemanticModelFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
+    }, unregister: () => {
+    } } : new FinalizationRegistry((ptr) => wasm.__wbg_wasmsemanticmodel_free(ptr, 1));
+    function addToExternrefTable0(obj) {
+      const idx = wasm.__externref_table_alloc();
+      wasm.__wbindgen_externrefs.set(idx, obj);
+      return idx;
+    }
+    function _assertClass(instance, klass) {
+      if (!(instance instanceof klass)) {
+        throw new Error(`expected instance of ${klass.name}`);
+      }
+    }
+    function debugString(val2) {
+      const type = typeof val2;
+      if (type == "number" || type == "boolean" || val2 == null) {
+        return `${val2}`;
+      }
+      if (type == "string") {
+        return `"${val2}"`;
+      }
+      if (type == "symbol") {
+        const description = val2.description;
+        if (description == null) {
+          return "Symbol";
+        } else {
+          return `Symbol(${description})`;
+        }
+      }
+      if (type == "function") {
+        const name = val2.name;
+        if (typeof name == "string" && name.length > 0) {
+          return `Function(${name})`;
+        } else {
+          return "Function";
+        }
+      }
+      if (Array.isArray(val2)) {
+        const length = val2.length;
+        let debug = "[";
+        if (length > 0) {
+          debug += debugString(val2[0]);
+        }
+        for (let i = 1; i < length; i++) {
+          debug += ", " + debugString(val2[i]);
+        }
+        debug += "]";
+        return debug;
+      }
+      const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val2));
+      let className;
+      if (builtInMatches && builtInMatches.length > 1) {
+        className = builtInMatches[1];
+      } else {
+        return toString.call(val2);
+      }
+      if (className == "Object") {
+        try {
+          return "Object(" + JSON.stringify(val2) + ")";
+        } catch (_) {
+          return "Object";
+        }
+      }
+      if (val2 instanceof Error) {
+        return `${val2.name}: ${val2.message}
+${val2.stack}`;
+      }
+      return className;
+    }
+    function getArrayU8FromWasm0(ptr, len) {
+      ptr = ptr >>> 0;
+      return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
+    }
+    var cachedDataViewMemory0 = null;
+    function getDataViewMemory0() {
+      if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || cachedDataViewMemory0.buffer.detached === void 0 && cachedDataViewMemory0.buffer !== wasm.memory.buffer) {
+        cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
+      }
+      return cachedDataViewMemory0;
+    }
+    function getStringFromWasm0(ptr, len) {
+      return decodeText(ptr >>> 0, len);
+    }
+    var cachedUint8ArrayMemory0 = null;
+    function getUint8ArrayMemory0() {
+      if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
+        cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
+      }
+      return cachedUint8ArrayMemory0;
+    }
+    function handleError(f, args) {
+      try {
+        return f.apply(this, args);
+      } catch (e) {
+        const idx = addToExternrefTable0(e);
+        wasm.__wbindgen_exn_store(idx);
+      }
+    }
+    function isLikeNone(x) {
+      return x === void 0 || x === null;
+    }
+    function passArray8ToWasm0(arg, malloc) {
+      const ptr = malloc(arg.length * 1, 1) >>> 0;
+      getUint8ArrayMemory0().set(arg, ptr / 1);
+      WASM_VECTOR_LEN = arg.length;
+      return ptr;
+    }
+    function passStringToWasm0(arg, malloc, realloc) {
+      if (realloc === void 0) {
+        const buf = cachedTextEncoder.encode(arg);
+        const ptr2 = malloc(buf.length, 1) >>> 0;
+        getUint8ArrayMemory0().subarray(ptr2, ptr2 + buf.length).set(buf);
+        WASM_VECTOR_LEN = buf.length;
+        return ptr2;
+      }
+      let len = arg.length;
+      let ptr = malloc(len, 1) >>> 0;
+      const mem = getUint8ArrayMemory0();
+      let offset = 0;
+      for (; offset < len; offset++) {
+        const code = arg.charCodeAt(offset);
+        if (code > 127) break;
+        mem[ptr + offset] = code;
+      }
+      if (offset !== len) {
+        if (offset !== 0) {
+          arg = arg.slice(offset);
+        }
+        ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
+        const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
+        const ret = cachedTextEncoder.encodeInto(arg, view);
+        offset += ret.written;
+        ptr = realloc(ptr, len, offset, 1) >>> 0;
+      }
+      WASM_VECTOR_LEN = offset;
+      return ptr;
+    }
+    function takeFromExternrefTable0(idx) {
+      const value = wasm.__wbindgen_externrefs.get(idx);
+      wasm.__externref_table_dealloc(idx);
+      return value;
+    }
+    var cachedTextDecoder = new TextDecoder("utf-8", { ignoreBOM: true, fatal: true });
+    cachedTextDecoder.decode();
+    function decodeText(ptr, len) {
+      return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
+    }
+    var cachedTextEncoder = new TextEncoder();
+    if (!("encodeInto" in cachedTextEncoder)) {
+      cachedTextEncoder.encodeInto = function(arg, view) {
+        const buf = cachedTextEncoder.encode(arg);
+        view.set(buf);
+        return {
+          read: arg.length,
+          written: buf.length
+        };
+      };
+    }
+    var WASM_VECTOR_LEN = 0;
+    var wasmPath = `${__dirname}/bindings_wasm_bg.wasm`;
+    var wasmBytes = require("fs").readFileSync(wasmPath);
+    var wasmModule = new WebAssembly.Module(wasmBytes);
+    var wasmInstance = new WebAssembly.Instance(wasmModule, __wbg_get_imports());
+    var wasm = wasmInstance.exports;
+    wasm.__wbindgen_start();
+  }
+});
+
+// ../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js
+var require_cloudformation_validate = __commonJS({
+  "../../aws-cdk-lib/node_modules/@aws/cloudformation-validate/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.CompositeEngine = exports2.CelEngine = exports2.RegoEngine = exports2.SchemaValidator = exports2.TemplateModel = exports2.SchemaFile = exports2.RuleFile = exports2.TemplateContent = exports2.TemplateFile = exports2.DEFAULT_TEMPLATE_NAME = exports2.AwsCliCommand = void 0;
+    exports2.version = version3;
+    var fs_1 = require("fs");
+    var AwsCliCommand = class {
+      constructor(serviceName, operationName, parameters, options = {}) {
+        this.serviceName = serviceName;
+        this.operationName = operationName;
+        if (!isPlainRecord(parameters)) {
+          throw new TypeError("parameters must be a plain object with string keys");
+        }
+        const copiedParameters = /* @__PURE__ */ Object.create(null);
+        for (const key of Reflect.ownKeys(parameters)) {
+          if (typeof key !== "string") {
+            throw new TypeError("request parameter names must be strings");
+          }
+          const descriptor = Object.getOwnPropertyDescriptor(parameters, key);
+          if (descriptor === void 0 || !("value" in descriptor)) {
+            throw new TypeError(`request parameter ${JSON.stringify(key)} must be a value property`);
+          }
+          copiedParameters[key] = descriptor.value;
+        }
+        this.parameters = copiedParameters;
+        this.servicePrefix = options.servicePrefix;
+        this.httpMethod = options.httpMethod;
+        this.isReadOnly = options.isReadOnly;
+      }
+    };
+    exports2.AwsCliCommand = AwsCliCommand;
+    var MIN_SIGNED_64 = -(1n << 63n);
+    var MAX_SIGNED_64 = (1n << 63n) - 1n;
+    var MAX_UNSIGNED_64 = (1n << 64n) - 1n;
+    var MAX_REQUEST_VALUE_DEPTH = 64;
+    var DATE_GET_TIME = Date.prototype.getTime;
+    var DATE_TO_ISO_STRING = Date.prototype.toISOString;
+    var UINT8_ARRAY_FOR_EACH = Uint8Array.prototype.forEach;
+    function isPlainRecord(value) {
+      if (value === null || typeof value !== "object" || Array.isArray(value)) {
+        return false;
+      }
+      const prototype = Object.getPrototypeOf(value);
+      return prototype === Object.prototype || prototype === null;
+    }
+    function unsupportedValue(typeName) {
+      return { type: "UNSUPPORTED", type_name: typeName };
+    }
+    function encodeAwsCliValue(value, depth = 0, ancestors = /* @__PURE__ */ new Set()) {
+      if (depth > MAX_REQUEST_VALUE_DEPTH) {
+        return unsupportedValue("recursion depth exceeded");
+      }
+      if (value === null) {
+        return { type: "NULL" };
+      }
+      if (typeof value === "boolean") {
+        return { type: "BOOLEAN", value };
+      }
+      if (typeof value === "number") {
+        if (!Number.isFinite(value)) {
+          return unsupportedValue("non-finite floating-point number");
+        }
+        if (Number.isInteger(value)) {
+          return Number.isSafeInteger(value) ? { type: "INTEGER", value } : unsupportedValue("integer outside the JavaScript safe range");
+        }
+        return { type: "NUMBER", value };
+      }
+      if (typeof value === "bigint") {
+        if (value >= MIN_SIGNED_64 && value <= MAX_SIGNED_64) {
+          return { type: "INTEGER", value };
+        }
+        if (value >= 0n && value <= MAX_UNSIGNED_64) {
+          return { type: "UNSIGNED_INTEGER", value };
+        }
+        return unsupportedValue("integer outside the 64-bit request range");
+      }
+      if (typeof value === "string") {
+        return { type: "STRING", value };
+      }
+      if (value instanceof Uint8Array) {
+        const bytes = [];
+        try {
+          UINT8_ARRAY_FOR_EACH.call(value, (byte) => {
+            bytes.push(byte);
+          });
+        } catch {
+          return unsupportedValue("invalid Uint8Array");
+        }
+        return { type: "BYTES", value: bytes };
+      }
+      if (value instanceof Date) {
+        try {
+          const timestamp = DATE_GET_TIME.call(value);
+          return Number.isFinite(timestamp) ? { type: "STRING", value: DATE_TO_ISO_STRING.call(value) } : unsupportedValue("invalid Date");
+        } catch {
+          return unsupportedValue("invalid Date");
+        }
+      }
+      if (Array.isArray(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic array");
+        }
+        ancestors.add(value);
+        try {
+          const lengthDescriptor = Object.getOwnPropertyDescriptor(value, "length");
+          if (lengthDescriptor === void 0 || !("value" in lengthDescriptor) || !Number.isSafeInteger(lengthDescriptor.value) || lengthDescriptor.value < 0) {
+            return unsupportedValue("array with invalid length");
+          }
+          const items = [];
+          for (let index = 0; index < lengthDescriptor.value; index += 1) {
+            const descriptor = Object.getOwnPropertyDescriptor(value, String(index));
+            if (descriptor === void 0) {
+              return unsupportedValue("sparse array");
+            }
+            if (!("value" in descriptor)) {
+              return unsupportedValue("array with accessor elements");
+            }
+            items.push(encodeAwsCliValue(descriptor.value, depth + 1, ancestors));
+          }
+          return { type: "ARRAY", items };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      if (isPlainRecord(value)) {
+        if (ancestors.has(value)) {
+          return unsupportedValue("cyclic object");
+        }
+        ancestors.add(value);
+        try {
+          const entries = /* @__PURE__ */ Object.create(null);
+          for (const key of Reflect.ownKeys(value)) {
+            if (typeof key !== "string") {
+              return unsupportedValue("mapping with non-string keys");
+            }
+            const descriptor = Object.getOwnPropertyDescriptor(value, key);
+            if (descriptor === void 0 || !("value" in descriptor)) {
+              return unsupportedValue("mapping with accessor properties");
+            }
+            entries[key] = encodeAwsCliValue(descriptor.value, depth + 1, ancestors);
+          }
+          return { type: "OBJECT", entries };
+        } finally {
+          ancestors.delete(value);
+        }
+      }
+      return unsupportedValue(typeof value);
+    }
+    function toWireAwsCliCommand(request2) {
+      const parameters = /* @__PURE__ */ Object.create(null);
+      for (const [name, value] of Object.entries(request2.parameters)) {
+        try {
+          parameters[name] = encodeAwsCliValue(value);
+        } catch {
+          parameters[name] = unsupportedValue("request value inspection failed");
+        }
+      }
+      return {
+        serviceName: request2.serviceName,
+        operationName: request2.operationName,
+        parameters,
+        ...request2.servicePrefix === void 0 ? {} : { servicePrefix: request2.servicePrefix },
+        ...request2.httpMethod === void 0 ? {} : { httpMethod: request2.httpMethod },
+        ...request2.isReadOnly === void 0 ? {} : { isReadOnly: request2.isReadOnly }
+      };
+    }
+    function fromWireAwsCliCommandValidation(validation) {
+      const template = validation.template;
+      return {
+        ...validation,
+        templateSource: validation.templateSource ?? null,
+        report: validation.report ?? null,
+        template: template == null ? null : Uint8Array.from(template)
+      };
+    }
+    var bridge = require_bindings_wasm();
+    exports2.DEFAULT_TEMPLATE_NAME = "template";
+    var TemplateFile2 = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readBytes() {
+        return (0, fs_1.readFileSync)(this.path);
+      }
+    };
+    exports2.TemplateFile = TemplateFile2;
+    var TemplateContent = class {
+      constructor(content, name = exports2.DEFAULT_TEMPLATE_NAME) {
+        this.content = content;
+        this.name = name;
+        if (typeof content !== "string" && !(content instanceof Uint8Array)) {
+          throw new TypeError("template content must be a string or a Uint8Array");
+        }
+      }
+      readBytes() {
+        return typeof this.content === "string" ? new TextEncoder().encode(this.content) : this.content;
+      }
+    };
+    exports2.TemplateContent = TemplateContent;
+    function templateLabel(template) {
+      return template instanceof TemplateContent ? template.name : template.path;
+    }
+    var RuleFile = class {
+      constructor(path23) {
+        this.path = path23;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.RuleFile = RuleFile;
+    var SchemaFile = class {
+      constructor(path23, typeName) {
+        this.path = path23;
+        this.typeName = typeName;
+      }
+      readContent() {
+        return (0, fs_1.readFileSync)(this.path, "utf8");
+      }
+    };
+    exports2.SchemaFile = SchemaFile;
+    function toExternalRuleSources(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof RuleFile ? { name: source.path, content: source.readContent() } : source
+      );
+    }
+    function toAdditionalSchemas(sources) {
+      return (sources ?? []).map(
+        (source) => source instanceof SchemaFile ? { typeName: source.typeName, schema: source.readContent() } : source
+      );
+    }
+    function toWasmEngineConfig(config) {
+      return {
+        customRules: toExternalRuleSources(config?.customRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmCompositeEngineConfig(config) {
+      return {
+        regoRules: toExternalRuleSources(config?.regoRules),
+        celRules: toExternalRuleSources(config?.celRules),
+        guardRules: toExternalRuleSources(config?.guardRules),
+        schemaValidatorConfig: config?.schemaValidatorConfig ? toWasmSchemaValidatorConfig(config.schemaValidatorConfig) : void 0
+      };
+    }
+    function toWasmSchemaValidatorConfig(config) {
+      return {
+        additionalSchemas: toAdditionalSchemas(config?.additionalSchemas)
+      };
+    }
+    var TemplateModel = class {
+      constructor(template) {
+        this.inner = bridge.WasmSemanticModel.parse(template.readBytes());
+      }
+      resources() {
+        return this.inner.resources();
+      }
+      parameters() {
+        return this.inner.parameters();
+      }
+      outputs() {
+        return this.inner.outputs();
+      }
+      conditions() {
+        return this.inner.conditions();
+      }
+      transforms() {
+        return this.inner.transforms();
+      }
+      formatVersion() {
+        return this.inner.formatVersion();
+      }
+      description() {
+        return this.inner.description();
+      }
+      toDiagnosticModel() {
+        return this.inner.toDiagnosticModel();
+      }
+      sourceLocation(path23) {
+        return this.inner.sourceLocation(path23);
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.TemplateModel = TemplateModel;
+    var SchemaValidator = class {
+      constructor(config) {
+        this.inner = new bridge.WasmSchemaValidator(toWasmSchemaValidatorConfig(config));
+      }
+      listRules() {
+        return this.inner.listRules();
+      }
+      schemaCount() {
+        return this.inner.schemaCount();
+      }
+      validate(template, region) {
+        const model = bridge.WasmSemanticModel.parse(template.readBytes());
+        try {
+          return this.inner.validate(model, region).diagnostics;
+        } finally {
+          model.free();
+        }
+      }
+      free() {
+        this.inner.free();
+      }
+    };
+    exports2.SchemaValidator = SchemaValidator;
+    function createEngineClass(WasmClass, toWasmConfig) {
+      return class {
+        constructor(config) {
+          this.inner = new WasmClass(toWasmConfig(config));
+        }
+        validateTemplate(template, config) {
+          return this.inner.validateTemplate(template.readBytes(), config ?? {}, templateLabel(template));
+        }
+        validateStandard(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "STANDARD" });
+        }
+        validateDetailed(template, config) {
+          return this.validateTemplate(template, { ...config, detailLevel: "DETAILED" });
+        }
+        validateAwsCliCommand(request2) {
+          if (!(request2 instanceof AwsCliCommand)) {
+            throw new TypeError("request must be an AwsCliCommand");
+          }
+          return fromWireAwsCliCommandValidation(this.inner.validateAwsCliCommand(toWireAwsCliCommand(request2)));
+        }
+        listRules() {
+          return this.inner.listRules();
+        }
+        engineName() {
+          return this.inner.engineName();
+        }
+        free() {
+          this.inner.free();
+        }
+      };
+    }
+    exports2.RegoEngine = createEngineClass(bridge.WasmRegoEngine, toWasmEngineConfig);
+    exports2.CelEngine = createEngineClass(bridge.WasmCelEngine, toWasmEngineConfig);
+    exports2.CompositeEngine = createEngineClass(bridge.WasmCompositeEngine, toWasmCompositeEngineConfig);
+    function version3() {
+      return bridge.version();
+    }
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts
+function mapSeverity(severity) {
+  switch (severity) {
+    // FIXME: Temporarily map FATAL to ERROR; FATALs are not suppressible but there are still a lot
+    // of false positives in the engine, and we cannot afford to accidentally present a customer with
+    // an accidentally unsupressible fatal.
+    case "FATAL":
+      return "error";
+    case "ERROR":
+      return "error";
+    case "WARN":
+      return "warning";
+    case "INFO":
+      return "informational";
+    case "DEBUG":
+      return "debug";
+    default:
+      return "warning";
+  }
+}
+function defaultRegoRules() {
+  const rulesDir = path14.join(__dirname, "rules");
+  return fs10.readdirSync(rulesDir).filter((f) => f.endsWith(".rego")).sort().map((f) => ({
+    name: f,
+    content: fs10.readFileSync(path14.join(rulesDir, f), "utf-8")
+  }));
+}
+function isContainedWithin(root, child) {
+  const rel = path14.relative(root, child);
+  return !rel.startsWith("..") && !path14.isAbsolute(rel);
+}
+function loadSchemasFromDirectory(dir) {
+  const schemas = [];
+  if (!fs10.existsSync(dir)) {
+    return schemas;
+  }
+  const rootReal = fs10.realpathSync(dir);
+  function walk(currentDir, depth) {
+    if (depth > MAX_SCHEMA_DIRECTORY_DEPTH) {
+      throw new UnscopedValidationError(
+        lit`SchemaLoadError`,
+        `[CloudFormation Validate] Schema directory exceeds maximum depth of ${MAX_SCHEMA_DIRECTORY_DEPTH}: ${currentDir}`
+      );
+    }
+    const entries = fs10.readdirSync(currentDir, { withFileTypes: true });
+    for (const entry of entries) {
+      const fullPath = path14.join(currentDir, entry.name);
+      if (entry.isSymbolicLink()) {
+        throw new UnscopedValidationError(
+          lit`SchemaLoadError`,
+          `[CloudFormation Validate] Symbolic link found in schema directory (not allowed): ${fullPath}`
+        );
+      }
+      if (entry.isDirectory()) {
+        const resolved = fs10.realpathSync(fullPath);
+        if (!isContainedWithin(rootReal, resolved)) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Path escapes schema root directory: ${fullPath} resolves to ${resolved}`
+          );
+        }
+        walk(fullPath, depth + 1);
+      } else if (entry.isFile() && entry.name.endsWith(".json")) {
+        const content = fs10.readFileSync(fullPath, "utf-8");
+        let parsed;
+        try {
+          parsed = JSON.parse(content);
+        } catch (e) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Invalid JSON in schema file: ${fullPath}: ${e}`
+          );
+        }
+        if (!parsed.typeName) {
+          throw new UnscopedValidationError(
+            lit`SchemaLoadError`,
+            `[CloudFormation Validate] Schema file missing required "typeName" field: ${fullPath}`
+          );
+        }
+        schemas.push({
+          typeName: parsed.typeName,
+          schema: content
+        });
+      }
+    }
+  }
+  walk(rootReal, 0);
+  if (schemas.length > 0) {
+    const typeNames = schemas.map((s) => s.typeName).join(", ");
+    process.stderr.write(`[CloudFormation Validate] Loaded ${schemas.length} schema overlay(s): ${typeNames}
+`);
+  }
+  return schemas;
+}
+var fs10, path14, import_cloudformation_validate, VALIDATE_METRIC, DIAGNOSTICS_METRIC, CloudFormationValidatePlugin, IGNORE_RULES, MAX_SCHEMA_DIRECTORY_DEPTH;
+var init_cloudformation_validate_plugin = __esm({
+  "../../aws-cdk-lib/core/lib/validation/cloudformation-validate-plugin.ts"() {
+    "use strict";
+    fs10 = __toESM(require("fs"));
+    path14 = __toESM(require("path"));
+    import_cloudformation_validate = __toESM(require_cloudformation_validate());
+    init_errors();
+    init_literal_string();
+    init_perf();
+    VALIDATE_METRIC = "CloudFormationValidate.validate";
+    DIAGNOSTICS_METRIC = "CloudFormationValidate.diagnostics";
+    CloudFormationValidatePlugin = class _CloudFormationValidatePlugin {
+      /**
+       * The default name of this plugin
+       */
+      static PLUGIN_NAME = "CloudFormation Validate";
+      /**
+       * Return a global singleton instance of this plugin.
+       *
+       * This is used because initializing the engine is somewhat expensive, which makes
+       * a noticeable difference in tests.
+       *
+       * @internal
+       */
+      static _singletonInstance() {
+        if (!_CloudFormationValidatePlugin._instance) {
+          _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin();
+        }
+        return _CloudFormationValidatePlugin._instance;
+      }
+      /**
+       * Pre-configure the singleton with specific props before first access.
+       * Used by test infrastructure to inject schema overlays without per-App registration.
+       *
+       * Must be called before any App synthesis triggers `_singletonInstance()`.
+       * Calling this when a singleton already exists replaces it.
+       *
+       * @internal
+       */
+      static _configureSingleton(props) {
+        _CloudFormationValidatePlugin._disposeSingleton();
+        _CloudFormationValidatePlugin._instance = new _CloudFormationValidatePlugin(props);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory and forget the instance
+       *
+       * @internal
+       */
+      static _disposeSingleton() {
+        _CloudFormationValidatePlugin._instance?._dispose();
+        _CloudFormationValidatePlugin._instance = void 0;
+      }
+      static _instance;
+      name = _CloudFormationValidatePlugin.PLUGIN_NAME;
+      engine;
+      disposed = false;
+      constructor(props = {}) {
+        const config = {};
+        const regoRules = [
+          ...props.includeDefaultRules ?? true ? defaultRegoRules() : [],
+          ...props.regoRules ?? []
+        ];
+        if (regoRules.length > 0) {
+          config.regoRules = regoRules;
+        }
+        if (props.guardRules) {
+          config.guardRules = props.guardRules;
+        }
+        if (props._additionalSchemasDirectory) {
+          config.schemaValidatorConfig = {
+            additionalSchemas: loadSchemasFromDirectory(props._additionalSchemasDirectory)
+          };
+        }
+        this.engine = new import_cloudformation_validate.CompositeEngine(config);
+      }
+      /**
+       * Release the validator engine’s off-heap WASM memory
+       *
+       * @internal
+       */
+      _dispose() {
+        if (this.disposed) {
+          return;
+        }
+        this.disposed = true;
+        this.engine.free();
+      }
+      get version() {
+        return (0, import_cloudformation_validate.version)();
+      }
+      get ruleIds() {
+        return this.engine.listRules().filter((r) => !IGNORE_RULES.has(r.id) && r.severity !== "INFO" && r.severity !== "DEBUG").map((r) => r.id);
+      }
+      validate(context) {
+        const violations = [];
+        for (const { stackConstructPath, templatePath, accountId, region } of context.stackTemplates) {
+          const templateFile = new import_cloudformation_validate.TemplateFile(templatePath);
+          const report = (() => {
+            var _stack = [];
+            try {
+              const _span = __using(_stack, profileSpan(VALIDATE_METRIC, { telemetry: true }));
+              return this.engine.validateTemplate(templateFile, {
+                detailLevel: "STANDARD",
+                pseudoParameterOverrides: {
+                  accountId,
+                  region
+                },
+                exclude: {
+                  ids: [...IGNORE_RULES],
+                  services: [{
+                    // CDK still synthesizes AWS::AutoScaling::LaunchConfiguration for applications using
+                    // the legacy launch-configuration behavior. Auto Scaling remains deployable despite
+                    // its maintenance-mode classification, so suppress only its W3697 lifecycle warning
+                    // rather than hiding lifecycle findings for every service.
+                    // 
+                    ruleId: "W3697",
+                    service: "AWS::AutoScaling"
+                  }]
+                },
+                severityLevel: "WARN"
+              });
+            } catch (_) {
+              var _error = _, _hasError = true;
+            } finally {
+              __callDispose(_stack, _error, _hasError);
+            }
+          })();
+          recordPerformanceEntry(DIAGNOSTICS_METRIC, {
+            count: report.diagnostics.length,
+            telemetry: true
+          });
+          const diagnosticsBySeverity = /* @__PURE__ */ new Map();
+          for (const diagnostic of report.diagnostics) {
+            diagnosticsBySeverity.set(diagnostic.severity, (diagnosticsBySeverity.get(diagnostic.severity) ?? 0) + 1);
+          }
+          for (const [severity, count2] of diagnosticsBySeverity) {
+            recordPerformanceEntry(`${DIAGNOSTICS_METRIC}.${severity}`, {
+              count: count2,
+              telemetry: true
+            });
+          }
+          for (const diagnostic of report.diagnostics) {
+            const severity = mapSeverity(diagnostic.severity);
+            const resourceLogicalId = diagnostic.entity?.entityType === "Resource" ? diagnostic.entity.logicalId : void 0;
+            const violatingResource = {
+              resourceLogicalId,
+              // If this is not about any resources, best we can do is point it to the stack
+              constructPath: !resourceLogicalId ? stackConstructPath : void 0,
+              templatePath,
+              locations: diagnostic.propertyPath ? [diagnostic.propertyPath] : []
+            };
+            const propertyPathPefix = diagnostic.propertyPath ? `${diagnostic.propertyPath.replace(/^Properties\./, "")}: ` : "";
+            const description = `${propertyPathPefix}${diagnostic.message}`;
+            const existing = violations.find(
+              (v) => v.ruleName === diagnostic.ruleId && v.severity === severity && v.description === description
+            );
+            if (existing) {
+              existing.violatingResources.push(violatingResource);
+            } else {
+              violations.push({
+                ruleName: diagnostic.ruleId,
+                description,
+                severity,
+                fix: diagnostic.suggestedFix,
+                violatingResources: [violatingResource],
+                ruleMetadata: diagnostic.category ? { category: diagnostic.category } : void 0
+              });
+            }
+          }
+        }
+        return {
+          success: violations.every((v) => v.severity !== "error" && v.severity !== "fatal"),
+          violations
+        };
+      }
+    };
+    IGNORE_RULES = /* @__PURE__ */ new Set([
+      // WHAT: 'DependsOn' already implied by a 'GetAtt', remove the DependsOn.
+      // WHY: CDK adds both. It doesn't hurt to have both, and it's more effort to remove them.
+      // Will be silenced forever.
+      "W3005",
+      // WHAT: Optimize the format string of Fn::Sub
+      // WHY: CDK is generating these, humans are not authoring them.
+      // Will be silenced forever.
+      "W1020",
+      // WHAT: Fn::GetStackOutput is not an allowed direct source for Fn::Split.
+      // WHY: CDK generates this nesting when deserializing weak string-list cross-stack references,
+      // and customers cannot control the generated expression.
+      // https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-split.html
+      "E1018",
+      // WHAT: Hardcoded ARNs
+      // WHY: Hardcoding an ARN is part of the behavior of some constructs (e.g., setting up multi-account DynamoDB table replicas)
+      "W9002",
+      // WHAT: Hardcoded account IDs in ARNs
+      // WHY: Hardcoding an account ID in ARNs is commonly done in CDK when we are setting up large applications that
+      // span accounts.
+      "W9013",
+      // WHAT: built-in function not recognized
+      // WHY: there are intrinsic functions that the plugin doesn't know about that are nevertheless valid.
+      // This diagnostic is intended to protect against typos in templates, but since the intrinsics
+      // are generated by CDK the chances of mistyping them is tiny, and so this diagnostic is more verbose
+      // than it's worth.
+      "W1103"
+    ]);
+    MAX_SCHEMA_DIRECTORY_DEPTH = 5;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts
+function propertyAssignmentMatchesPropertyPath(meta, propertyPath) {
+  return propertyPath === `Properties.${meta.data.propertyName}` || propertyPath.startsWith(`Properties.${meta.data.propertyName}.`);
+}
+function isPropertyMutationMetadataEntry(entry) {
+  return entry.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT;
+}
+var import_cloud_assembly_schema2, ConstructTree, STACK_TRACE_HINT;
+var init_construct_tree = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/construct-tree.ts"() {
+    "use strict";
+    import_cloud_assembly_schema2 = __toESM(require_lib2());
+    init_app2();
+    init_cfn_resource();
+    init_construct_iteration();
+    init_core_construct_finders();
+    init_runtime_info();
+    ConstructTree = class {
+      /**
+       * A cache of the ConstructTrace by node.path. Each construct
+       */
+      _constructByPath = /* @__PURE__ */ new Map();
+      _constructByTemplatePathAndLogicalId = /* @__PURE__ */ new Map();
+      root;
+      constructor(root) {
+        this.root = App.of(root) ?? root;
+        this._constructByPath.set(this.root.node.path, root);
+        for (const child of iterateDfsPreorder(this.root)) {
+          this._constructByPath.set(child.node.path, child);
+          const defaultChild = child.node.defaultChild;
+          if (defaultChild && CfnResource.isCfnResource(defaultChild)) {
+            const stack = stackOf(defaultChild);
+            const logicalId = stack.resolve(defaultChild.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+        for (const child of iterateDfsPreorder(this.root)) {
+          if (CfnResource.isCfnResource(child)) {
+            const stack = stackOf(child);
+            const logicalId = stackOf(child).resolve(child.logicalId);
+            this.setLogicalId(stack, logicalId, child);
+          }
+        }
+      }
+      setLogicalId(stack, logicalId, child) {
+        if (!this._constructByTemplatePathAndLogicalId.has(stack.templateFile)) {
+          this._constructByTemplatePathAndLogicalId.set(stack.templateFile, /* @__PURE__ */ new Map([[logicalId, child]]));
+        } else {
+          this._constructByTemplatePathAndLogicalId.get(stack.templateFile)?.set(logicalId, child);
+        }
+      }
+      /**
+       * Turn a construct path into a trace
+       *
+       * The trace contains all constructs from the root to the construct indicated
+       * by the given path. It does not include the root itself.
+       */
+      traceFromPath(constructPath) {
+        const components = constructPath.replace(/^\//, "").split("/");
+        const rootPath = [];
+        const stackTraces = [];
+        let node = this.root;
+        while (node) {
+          rootPath.push(this.constructTraceLevelFromTreeNode(node));
+          stackTraces.push(this.creationTrace(node)?.split("\n"));
+          const component = components.shift();
+          node = component !== void 0 ? node.node.tryFindChild(component) : void 0;
+        }
+        rootPath.shift();
+        stackTraces.shift();
+        let ret = {
+          ...rootPath[rootPath.length - 1],
+          location: stackLocationAt(rootPath.length - 1)
+        };
+        for (let i = rootPath.length - 2; i >= 0; i--) {
+          ret = {
+            ...rootPath[i],
+            child: ret,
+            location: stackLocationAt(i)
+          };
+        }
+        return ret;
+        function stackLocationAt(i) {
+          let j = i;
+          while (j < rootPath.length && !stackTraces[j]) {
+            j++;
+          }
+          if (j === rootPath.length) {
+            return STACK_TRACE_HINT;
+          }
+          return stackTraces[j]?.[0 + j - i] ?? STACK_TRACE_HINT;
+        }
+      }
+      constructTraceLevelFromConstructPath(constructPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return void 0;
+        }
+        return this.constructTraceLevelFromTreeNode(construct);
+      }
+      /**
+       * Convert a Tree Metadata Node into a ConstructTrace object, except its child and stack trace info
+       *
+       * FIXME: This could probably use the construct tree directly.
+       */
+      constructTraceLevelFromTreeNode(node) {
+        const constructInfo = constructInfoFromConstruct(node);
+        return {
+          id: node.node.id,
+          path: node.node.path,
+          construct: constructInfo?.fqn,
+          libraryVersion: constructInfo?.version
+        };
+      }
+      creationTraceByPath(path23) {
+        const construct = this.getConstructByPath(path23);
+        if (!construct) {
+          return void 0;
+        }
+        return this.creationTrace(construct);
+      }
+      /**
+       * Return the stack trace for a given construct path
+       *
+       * Returns a stack trace if stack trace information is found, or `undefined` if not.
+       */
+      creationTrace(construct) {
+        return construct?.node.metadata.find((meta) => meta.type === import_cloud_assembly_schema2.ArtifactMetadataEntryType.CREATION_STACK)?.data?.join("\n");
+      }
+      mutationTracesByPath(constructPath, propertyPath) {
+        const construct = this.getConstructByPath(constructPath);
+        if (!construct) {
+          return [];
+        }
+        return this.mutationTraces(construct, propertyPath);
+      }
+      /**
+       * Return mutation traces for the given construct and property path
+       *
+       * The `propertyPath` must start with `Properties.`, and can contain nested properties, e.g. `Properties.MyProperty.NestedProperty`.
+       * We will report the best information that we have.
+       */
+      mutationTraces(construct, propertyPath) {
+        return construct?.node.metadata.filter(isPropertyMutationMetadataEntry).filter((meta) => propertyAssignmentMatchesPropertyPath(meta, propertyPath)).map((meta) => meta.data.stackTrace.join("\n"));
+      }
+      /**
+       * Get a specific Construct by the node.addr
+       *
+       * @param path the node.addr of the construct
+       * @returns the Construct
+       */
+      getConstructByPath(path23) {
+        return this._constructByPath.get(path23);
+      }
+      /**
+       * Get a specific Construct by the CfnResource logical ID. This will
+       * be the construct.node.defaultChild with the given ID
+       *
+       * @param logicalId the ID of the CfnResource
+       * @returns the Construct
+       */
+      getConstructByLogicalId(templateFile, logicalId) {
+        return this._constructByTemplatePathAndLogicalId.get(templateFile)?.get(logicalId);
+      }
+    };
+    STACK_TRACE_HINT = "Run with '--debug' to include location info";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/color.ts
+var Col, Colorize;
+var init_color = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/color.ts"() {
+    "use strict";
+    Col = class {
+      static RED = "31";
+      static ORANGE = "38;5;208";
+      static YELLOW = "33";
+      static BLUE = "34";
+      static BOLD = "1";
+      static UNDERLINE = "4";
+      static GREY = "90";
+    };
+    Colorize = class _Colorize {
+      static red(str) {
+        return _Colorize.colorize(Col.RED, str);
+      }
+      static orange(str) {
+        return _Colorize.colorize(Col.ORANGE, str);
+      }
+      static yellow(str) {
+        return _Colorize.colorize(Col.YELLOW, str);
+      }
+      static blue(str) {
+        return _Colorize.colorize(Col.BLUE, str);
+      }
+      static grey(str) {
+        return _Colorize.colorize(Col.GREY, str);
+      }
+      static bold(str) {
+        return _Colorize.colorize(Col.BOLD, str);
+      }
+      static underline(str) {
+        return _Colorize.colorize(Col.UNDERLINE, str);
+      }
+      static colorize(col, str) {
+        if (process.env.FORCE_COLOR === "0" || process.env.NO_COLOR || !process.stdout.isTTY || !process.stderr.isTTY) {
+          return str;
+        }
+        return `\x1B[${col}m${str}\x1B[0m`;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/trace.ts
+var STARTER_LINE, VERTICAL_LINE, ReportTrace;
+var init_trace = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/trace.ts"() {
+    "use strict";
+    STARTER_LINE = "\u2514\u2500\u2500 ";
+    VERTICAL_LINE = "\u2502";
+    ReportTrace = class {
+      constructor(tree) {
+        this.tree = tree;
+      }
+      tree;
+      /**
+       * Return a JSON representation of the construct trace
+       */
+      formatJson(constructPath) {
+        return this.tree.traceFromPath(constructPath);
+      }
+      /**
+       * This will render something like this:
+       *
+       *   Creation Stack:
+       *     └──  MyStack (MyStack)
+       *          │ Library: aws-cdk-lib.Stack
+       *          │ Library Version: 2.50.0
+       *          │ Location: Object. (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:25:20)
+       *          └──  MyCustomL3Construct (MyStack/MyCustomL3Construct)
+       *               │ Library: N/A - (Local Construct)
+       *               │ Library Version: N/A
+       *               │ Location: new MyStack (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:15:20)
+       *               └──  Bucket (MyStack/MyCustomL3Construct/Bucket)
+       *                    │ Library: aws-cdk-lib/aws-s3.Bucket
+       *                    │ Library Version: 2.50.0
+       *                    │ Location: new MyCustomL3Construct (/home/hallcor/tmp/cdk-tmp-app/src/main.ts:9:20)/
+       */
+      formatPrettyPrinted(constructPath) {
+        const trace = constructPath ? this.formatJson(constructPath) : void 0;
+        return this.renderPrettyPrintedTraceInfo(trace);
+      }
+      renderPrettyPrintedTraceInfo(info, indent, start = STARTER_LINE) {
+        const notAvailableMessage = "	Construct trace not available. Rerun with `--debug` to see trace information";
+        if (info) {
+          const indentation = indent ?? " ".repeat(STARTER_LINE.length + 1);
+          const result = [
+            `${start} ${info?.id} (${info?.path})`,
+            `${indentation}${VERTICAL_LINE} Construct: ${info?.construct}`,
+            `${indentation}${VERTICAL_LINE} Library Version: ${info?.libraryVersion}`,
+            `${indentation}${VERTICAL_LINE} Location: ${info?.location}`,
+            ...info?.child ? [this.renderPrettyPrintedTraceInfo(info?.child, " ".repeat(indentation.length + STARTER_LINE.length + 1), indentation + STARTER_LINE)] : []
+          ];
+          return result.join("\n	");
+        }
+        return notAvailableMessage;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/report.ts
+var init_report = __esm({
+  "../../aws-cdk-lib/core/lib/validation/report.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/report.ts
+function normalizeSeverity(severity) {
+  if (!severity) {
+    return { severity: "error" };
+  }
+  const lower = severity.toLowerCase();
+  if (KNOWN_SEVERITIES.has(lower)) {
+    return { severity: lower };
+  }
+  return { severity: "custom", customSeverity: severity };
+}
+function mkPluginFailure(plugin, e) {
+  return {
+    success: false,
+    pluginName: plugin.name,
+    pluginVersion: plugin.version,
+    violations: [],
+    metadata: {
+      error: `Validation plugin '${plugin.name}' failed: ${e.message}`
+    }
+  };
+}
+function isSuppressibleViolation(violation) {
+  const isFatal = violation.severity?.toLowerCase() === "fatal";
+  const isErrorAnnotation = violation.ruleMetadata?.["cdk:annotation"] && violation.severity?.toLowerCase() === "error";
+  return !isFatal && !isErrorAnnotation;
+}
+var PolicyValidationReportFormatter, KNOWN_SEVERITIES, ExtraObjectData;
+var init_report2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/report.ts"() {
+    "use strict";
+    init_trace();
+    init_report();
+    PolicyValidationReportFormatter = class {
+      constructor(tree) {
+        this.tree = tree;
+        this.reportTrace = new ReportTrace(tree);
+      }
+      tree;
+      reportTrace;
+      formatLegacyJson(reps) {
+        return {
+          title: "Validation Report",
+          pluginReports: reps.filter((rep) => !rep.success || rep.violations.length > 0).map((rep) => ({
+            version: rep.pluginVersion,
+            summary: {
+              pluginName: rep.pluginName,
+              status: rep.success ? "success" /* SUCCESS */ : "failure" /* FAILURE */,
+              metadata: rep.metadata
+            },
+            violations: rep.violations.map((violation) => ({
+              ruleName: violation.ruleName,
+              description: violation.description,
+              fix: violation.fix,
+              ruleMetadata: violation.ruleMetadata,
+              severity: violation.severity,
+              violatingResources: violation.violatingResources,
+              violatingConstructs: violation.violatingResources.map((resource) => {
+                const constructPath = resource.constructPath;
+                return {
+                  constructStack: constructPath ? this.reportTrace.formatJson(constructPath) : void 0,
+                  constructPath,
+                  locations: resource.locations,
+                  resourceLogicalId: resource.resourceLogicalId ?? "N/A",
+                  templatePath: resource.templatePath ?? "N/A"
+                };
+              })
+            }))
+          }))
+        };
+      }
+      formatJson(reps, schemaVersion, stackTraces, suppressedByReport) {
+        return {
+          version: schemaVersion,
+          title: "Validation Report",
+          pluginReports: this.buildPluginReports(reps, stackTraces, suppressedByReport)
+        };
+      }
+      buildPluginReports(reps, stackTraces, suppressedByReport) {
+        const results = [];
+        for (let idx = 0; idx < reps.length; idx++) {
+          const rep = reps[idx];
+          const suppressed = suppressedByReport?.get(idx);
+          if (rep.success && rep.violations.length === 0 && !suppressed) continue;
+          results.push({
+            pluginName: rep.pluginName,
+            pluginVersion: rep.pluginVersion,
+            conclusion: rep.success ? "success" : "failure",
+            metadata: rep.metadata,
+            violations: rep.violations.map((violation) => this.formatViolationJson(violation, stackTraces)),
+            suppressedViolations: suppressed ? suppressed.map((sv) => this.formatSuppressedViolationJson(sv, stackTraces)) : void 0
+          });
+        }
+        return results;
+      }
+      formatViolationJson(violation, stackTraces) {
+        const severity = normalizeSeverity(violation.severity);
+        return {
+          ruleName: violation.ruleName,
+          description: violation.description,
+          suggestedFix: violation.fix,
+          severity: severity.severity,
+          customSeverity: severity.customSeverity,
+          ruleMetadata: violation.ruleMetadata,
+          violatingConstructs: violation.violatingResources.map((resource) => {
+            let constructPath = resource.constructPath;
+            const constructInfo = constructPath ? this.tree.constructTraceLevelFromConstructPath(constructPath) : void 0;
+            const result = {
+              // The constructPath is not optional in the output JSON, so put an empty string here if we don't have it.
+              constructPath: constructPath ?? "",
+              constructFqn: constructInfo?.construct,
+              libraryVersion: constructInfo?.libraryVersion,
+              cloudFormationResource: resource.resourceLogicalId && resource.templatePath ? {
+                templatePath: resource.templatePath,
+                logicalId: resource.resourceLogicalId,
+                propertyPaths: resource.locations.length > 0 ? resource.locations : void 0
+              } : void 0,
+              stackTraces: stackTraces.get(resource)
+            };
+            return result;
+          })
+        };
+      }
+      formatSuppressedViolationJson(sv, stackTraces) {
+        const base = this.formatViolationJson(sv, stackTraces);
+        return {
+          ...base,
+          acknowledgedId: sv.acknowledgedId,
+          reason: sv.reason || void 0,
+          acknowledgedAt: sv.acknowledgedAt || void 0,
+          acknowledgedStackTrace: sv.acknowledgedStackTrace || void 0
+        };
+      }
+    };
+    KNOWN_SEVERITIES = /* @__PURE__ */ new Set(["fatal", "error", "warning", "info"]);
+    ExtraObjectData = class {
+      extra = /* @__PURE__ */ new WeakMap();
+      constructor() {
+      }
+      attach(obj, data) {
+        this.extra.set(obj, data);
+      }
+      get(obj) {
+        return this.extra.get(obj);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts
+function formatValidationReports(fileRoot, reports, frameFinder) {
+  const successfullyExecutedPlugins = reports.filter((r) => isPluginFailure(r) === void 0);
+  const pluginFailures = reports.map(isPluginFailure).filter((e) => e !== void 0);
+  const violations = flattenViolations(successfullyExecutedPlugins);
+  violations.sort((a, b) => {
+    const aOrder = SEVERITY_ORDER[a.severity.toLowerCase()] ?? 4;
+    const bOrder = SEVERITY_ORDER[b.severity.toLowerCase()] ?? 4;
+    return aOrder - bOrder;
+  });
+  return [
+    ...pluginFailures.map(formatPluginFailure),
+    ...violations.map((v) => formatViolationBlock(fileRoot, v, frameFinder))
+  ];
+}
+function flattenViolations(reports) {
+  return reports.flatMap((report) => {
+    const pluginName = report.pluginName;
+    return report.violations.flatMap((violation) => {
+      return violation.violatingConstructs.map((construct) => ({
+        severity: normalizeSeverity2(violation.severity),
+        description: violation.description,
+        ruleName: violation.ruleName,
+        pluginName,
+        construct,
+        suggestedFix: violation.suggestedFix,
+        ruleMetadata: violation.ruleMetadata
+      }));
+    });
+  });
+}
+function normalizeSeverity2(severity) {
+  switch (severity?.toLowerCase()) {
+    case "fatal":
+      return "FATAL";
+    case "error":
+      return "ERROR";
+    case "warning":
+      return "WARNING";
+    case "info":
+      return "INFO";
+  }
+  if (!severity) return "WARNING";
+  return sanitize(severity);
+}
+function formatViolationBlock(fileRoot, v, frameFinder) {
+  const lines = [];
+  const locations = sourceLocations(fileRoot, v.construct.stackTraces, frameFinder);
+  const maxTraces = 5;
+  let additional = false;
+  for (const location of locations.slice(0, maxTraces)) {
+    lines.push(`${additional ? "or " : ""}${Colorize.underline(sanitize(location))}`);
+    additional = true;
+  }
+  if (locations.length > maxTraces) {
+    lines.push(Colorize.grey(`(and ${locations.length - maxTraces} more...)`));
+  }
+  const pluginNs = namespaceFromPluginName(v.pluginName);
+  const parsed = parseValidationId(v.ruleName);
+  lines.push([
+    Colorize.bold(getSeverityColor(v.severity)(sanitize(v.severity))),
+    Colorize.bold(stripAckTag(sanitize(v.description))),
+    Colorize.grey(`(${sanitize(parsed.namespace ? pluginNameFromNamespace(parsed.namespace) : v.pluginName)})`)
+  ].join(" "));
+  const constructInfo = formatConstructInfo(fileRoot, v.construct);
+  lines.push(`   ${constructInfo}`);
+  if (v.suggestedFix) {
+    lines.push(`   Suggested fix: ${sanitize(v.suggestedFix).replace(/\n/g, "\n   ")}`);
+  }
+  const ackId = normalizeValidationId(v.ruleName, pluginNs);
+  if (isSuppressibleViolation(v)) {
+    lines.push(`   ${Colorize.grey(`Acknowledge with '${sanitize(ackId)}'`)}`);
+  } else {
+    lines.push(`   ${Colorize.grey(`Rule ${sanitize(ackId)}`)}`);
+  }
+  return lines.join("\n");
+}
+function getSeverityColor(severity) {
+  switch (severity.toLowerCase()) {
+    case "fatal":
+      return Colorize.red;
+    case "error":
+      return Colorize.orange;
+    case "warning":
+      return Colorize.yellow;
+    default:
+      return Colorize.blue;
+  }
+}
+function formatConstructInfo(fileRoot, construct) {
+  const parts = [];
+  const logicalId = sanitize(construct.cloudFormationResource?.logicalId);
+  if (construct.constructPath) {
+    const cPath = sanitize(construct.constructPath);
+    parts.push(logicalId ? `${Colorize.bold(cPath)} (${logicalId})` : Colorize.bold(cPath));
+  } else {
+    if (construct.cloudFormationResource?.templatePath) {
+      parts.push(humanFriendlyFilename(fileRoot, sanitize(construct.cloudFormationResource.templatePath)));
+    }
+    if (logicalId) {
+      parts.push(Colorize.bold(logicalId));
+    }
+  }
+  if (construct.constructFqn) {
+    parts.push(Colorize.grey(sanitize(construct.constructFqn)));
+  }
+  return parts.join(" ");
+}
+function stripAckTag(description) {
+  return description.replace(/\s*\[ack:\s*[^\]]+\]\s*/g, "").trim();
+}
+function sourceLocations(fileRoot, stackTraces, frameFinder) {
+  const ret = [];
+  for (const trace of stackTraces ?? []) {
+    const frame = topUserFrame(trace.split("\n"), frameFinder);
+    if (frame && frame.fileName) {
+      const candidate = `${humanFriendlyFilename(fileRoot, frame.fileName)}:${frame.sourceLocation}`;
+      if (!ret.includes(candidate)) {
+        ret.push(candidate);
+      }
+    }
+  }
+  return ret;
+}
+function formatPluginFailure(f) {
+  return `${Colorize.orange("ERROR")} ${sanitize(f.error)}`;
+}
+function sanitize(s) {
+  return (s ?? "").replace(CONTROL_CHARS, "\uFFFD");
+}
+function humanFriendlyFilename(root, filename) {
+  const absPath = filename;
+  const relPath = import_path2.default.relative(root, filename);
+  return relPath.length < absPath.length ? relPath : absPath;
+}
+function isPluginFailure(r) {
+  if (r.conclusion === "success" || r.violations.length > 0 || !r.metadata?.error) {
+    return void 0;
+  }
+  return { error: r.metadata.error };
+}
+function stripAnsi(x) {
+  const pattern = [
+    "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
+    "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
+  ].join("|");
+  const re = new RegExp(pattern, "g");
+  return x.replaceAll(re, "");
+}
+var import_path2, CONTROL_CHARS, SEVERITY_ORDER;
+var init_modern_formatter = __esm({
+  "../../aws-cdk-lib/core/lib/validation/private/modern-formatter.ts"() {
+    "use strict";
+    import_path2 = __toESM(require("path"));
+    init_color();
+    init_report2();
+    init_validation_id();
+    init_stack_trace();
+    CONTROL_CHARS = /[\x00-\x08\x0B-\x1F\x7F\x9B]/g;
+    SEVERITY_ORDER = {
+      fatal: 0,
+      error: 1,
+      warning: 2,
+      info: 3
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis-validation.ts
+function validateTemplates(root, outdir, assembly) {
+  var _stack = [];
+  try {
+    if (!App.isApp(root)) return;
+    const _span = __using(_stack, profileSpan("validateTemplates", { telemetry: true }));
+    const assemblies = getAssemblies(root, assembly);
+    const stacksByPlugin = /* @__PURE__ */ new Map();
+    visitAssemblies(root, "post", (construct) => {
+      if (STAGE_TYPE.isMarked(construct)) {
+        const stageAssembly = assemblies.get(construct.artifactId);
+        if (!stageAssembly) throw new AssumptionError(lit`ValidationFailed`, `Validation failed, cannot find cloud assembly for stage ${construct.stageName}`);
+        const plugins = pluginsToEvaluate(root, construct);
+        for (const plugin of plugins) {
+          if (!stacksByPlugin.has(plugin)) {
+            stacksByPlugin.set(plugin, /* @__PURE__ */ new Set());
+          }
+          for (const stack of stageAssembly.stacksRecursively) {
+            stacksByPlugin.get(plugin).add(stack);
+          }
+        }
+      }
+    });
+    if (stacksByPlugin.size === 0) return;
+    const reports = doInvokeValidationPlugins(outdir, Array.from(stacksByPlugin), root);
+    const validateFlagExplicitlyEnabled = getBooleanContext(root, VALIDATE_AGAINST_DEFAULT_RULES, false);
+    let warningifiedAnyErrors = false;
+    if (!validateFlagExplicitlyEnabled) {
+      warningifiedAnyErrors = downgradeCfnValidateErrorsToWarnings(reports);
+    }
+    const tree = new ConstructTree(root);
+    inferConstructPathsFromLogicalIds(reports, tree);
+    const stackTraces = collectViolationStackTraces(reports, tree);
+    const suppressedByReport = collectSuppressions(root, reports);
+    const formatter = new PolicyValidationReportFormatter(new ConstructTree(root));
+    const reportJson = formatter.formatJson(reports, assembly.version, stackTraces, suppressedByReport);
+    const reportFile = path16.join(assembly.directory, VALIDATION_REPORT_FILE);
+    fs11.writeFileSync(reportFile, JSON.stringify(reportJson, void 0, 2));
+    if (getBooleanContext(root, VALIDATION_REPORT_JSON_CONTEXT, false)) {
+      fs11.writeFileSync(
+        path16.join(assembly.directory, LEGACY_POLICY_VALIDATION_FILE_PATH),
+        JSON.stringify(formatter.formatLegacyJson(reports), void 0, 2)
+      );
+    }
+    const cdkAppHandlesValidationReporting = getBooleanContext(root, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true);
+    const appMode = cdkAppMode(root);
+    const constructLibStrictMode = getBooleanContext(root, STRICT_CFN_VALIDATE_ERRORS, false);
+    const validationFails = reports.some((r) => !r.success) || constructLibStrictMode && reports.some((r) => r.violations.some((v) => v.severity === "warning"));
+    const reportText = formatValidationReports(process.cwd(), reportJson.pluginReports, DEFAULT_STACK_FRAME_FINDER);
+    const reportPath = humanFriendlyFilename(process.cwd(), reportFile);
+    let preamble = "";
+    if (warningifiedAnyErrors) {
+      if (constructLibStrictMode) {
+        preamble = "[Warning] Template validation found issues in your templates. Construct library strict mode considers these errors.";
+      } else {
+        preamble = `[Warning] Template validation found issues in your templates (reported as warnings).
+Set feature flag "${VALIDATE_AGAINST_DEFAULT_RULES}" to true to turn these into errors.`;
+      }
+    }
+    if (reportText.length === 0) {
+      return;
+    }
+    if (cdkAppHandlesValidationReporting) {
+      const throwException = validationFails && (appMode === "inmemory" || appMode === "unknown");
+      const exceptionContainsReport = appMode === "inmemory";
+      const fullMessage = [];
+      if (preamble) {
+        fullMessage.push(preamble);
+      }
+      fullMessage.push(...reportText);
+      fullMessage.push(`A copy of this report can be found in: ${reportPath}`);
+      if (throwException && exceptionContainsReport) {
+        throw new UnscopedValidationError(lit`ValidationFailed`, stripAnsi(fullMessage.join("\n\n")));
+      } else if (throwException && !exceptionContainsReport) {
+        console.error([
+          ...preamble ? [preamble] : [],
+          ...reportText
+        ].join("\n\n"));
+        throw new UnscopedValidationError(lit`ValidationFailed`, `Validation failed. A copy of this report can be found in: ${reportPath}`);
+      } else {
+        console.error(fullMessage.join("\n\n"));
+        if (validationFails) {
+          process.exitCode = 1;
+        }
+      }
+    } else {
+      if (preamble) {
+        console.error(preamble);
+      }
+    }
+  } catch (_) {
+    var _error = _, _hasError = true;
+  } finally {
+    __callDispose(_stack, _error, _hasError);
+  }
+}
+function getAssemblies(root, rootAssembly) {
+  const assemblies = /* @__PURE__ */ new Map();
+  assemblies.set(root.artifactId, rootAssembly);
+  visitAssemblies(root, "pre", (construct) => {
+    const stage = construct;
+    if (stage.parentStage && assemblies.has(stage.parentStage.artifactId)) {
+      assemblies.set(
+        stage.artifactId,
+        assemblies.get(stage.parentStage.artifactId).getNestedAssembly(stage.artifactId)
+      );
+    }
+  });
+  return assemblies;
+}
+function pluginsToEvaluate(root, stage) {
+  const ret = [];
+  ret.push(...stage._validationPlugins);
+  if (defaultValidationEnabled() && !hasUserRegisteredCloudFormationValidatePlugin(root)) {
+    ret.push(CloudFormationValidatePlugin._singletonInstance());
+  }
+  if (stage === root && FeatureFlags.of(root).isEnabled(ANNOTATIONS_IN_VALIDATION_REPORT)) {
+    const annotationsPlugin = collectAnnotationReport(stage);
+    if (annotationsPlugin) {
+      ret.push(annotationsPlugin);
+    }
+  }
+  return ret;
+}
+function defaultValidationEnabled() {
+  return process.env.CDK_VALIDATION !== "false";
+}
+function downgradeCfnValidateErrorsToWarnings(reports) {
+  let warningifiedAnyErrors = false;
+  for (const report of reports) {
+    if (report.pluginName !== CloudFormationValidatePlugin.PLUGIN_NAME) {
+      continue;
+    }
+    for (const v of report.violations) {
+      if (v.severity === "error" || v.severity === "fatal") {
+        mutable(v).severity = "warning";
+        warningifiedAnyErrors = true;
+      }
+    }
+    mutable(report).success = true;
+  }
+  return warningifiedAnyErrors;
+}
+function inferConstructPathsFromLogicalIds(reports, tree) {
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        if (!resource.constructPath && resource.templatePath && resource.resourceLogicalId) {
+          mutable(resource).constructPath = tree.getConstructByLogicalId(
+            path16.basename(resource.templatePath),
+            resource.resourceLogicalId
+          )?.node.path;
+        }
+      }
+    }
+  }
+}
+function collectSuppressions(root, reports) {
+  const suppressedByReport = /* @__PURE__ */ new Map();
+  const acknowledgedRules = collectAcknowledgedRules(root);
+  if (Object.keys(acknowledgedRules).length > 0) {
+    for (let i = 0; i < reports.length; i++) {
+      const suppressed = suppressInReport(reports[i]);
+      if (suppressed.length > 0) {
+        suppressedByReport.set(i, suppressed);
+        mutable(reports[i]).success = reports[i].violations.every((v) => v.severity !== "error" && v.severity !== "fatal");
+      }
+    }
+  }
+  return suppressedByReport;
+  function suppressInReport(report) {
+    const ruleNamespace = namespaceFromPluginName(report.pluginName);
+    const ret = [];
+    for (let i = 0; i < report.violations.length; i++) {
+      const v = report.violations[i];
+      if (!isSuppressibleViolation(v)) {
+        continue;
+      }
+      const ruleName = normalizeValidationId(v.ruleName, ruleNamespace);
+      const pathBasedSuppressions = acknowledgedRules[ruleName];
+      if (!pathBasedSuppressions) {
+        continue;
+      }
+      const { suppressedGroups, unsuppressed } = groupResourcesBySuppressions(v.violatingResources, pathBasedSuppressions);
+      mutable(v).violatingResources = unsuppressed;
+      for (const suppressedGroup of suppressedGroups) {
+        ret.push({
+          ...v,
+          ...suppressedGroup.acknowledgement,
+          violatingResources: suppressedGroup.resources
+        });
+      }
+      if (v.violatingResources.length === 0) {
+        report.violations.splice(i, 1);
+        i--;
+      }
+    }
+    return ret;
+  }
+}
+function groupResourcesBySuppressions(resources, pathBasedSuppressions) {
+  const unsuppressed = [];
+  const suppressed = {};
+  for (const r of resources) {
+    const ack = findClosestAck(r);
+    if (ack) {
+      suppressed[ack.acknowledgedAt] ??= { acknowledgement: ack, resources: [] };
+      suppressed[ack.acknowledgedAt].resources.push(r);
+    } else {
+      unsuppressed.push(r);
+    }
+  }
+  return {
+    suppressedGroups: Object.values(suppressed),
+    unsuppressed
+  };
+  function findClosestAck(r) {
+    let constructPath = r.constructPath ?? "";
+    let ret = pathBasedSuppressions[constructPath];
+    while (ret === void 0 && constructPath !== "") {
+      const lastDot = constructPath.lastIndexOf("/");
+      if (lastDot === -1) {
+        constructPath = "";
+      } else {
+        constructPath = constructPath.substring(0, lastDot);
+      }
+      ret = pathBasedSuppressions[constructPath];
+    }
+    return ret;
+  }
+}
+function collectViolationStackTraces(reports, tree) {
+  const ret = new ExtraObjectData();
+  for (const report of reports) {
+    for (const violation of report.violations) {
+      for (const resource of violation.violatingResources) {
+        const constructPath = resource.constructPath;
+        if (!constructPath) {
+          continue;
+        }
+        const stacks = [];
+        const creationTrace = tree.creationTraceByPath(constructPath);
+        if (creationTrace) {
+          stacks.push(creationTrace);
+        }
+        stacks.push(...resource.locations.flatMap((location) => tree.mutationTracesByPath(constructPath, location)));
+        if (stacks.length > 0) {
+          ret.attach(resource, stacks);
+        }
+      }
+    }
+  }
+  return ret;
+}
+function doInvokeValidationPlugins(outdir, plugins, root) {
+  const untrustedPlugins = new Set(Array.from(plugins.values()).map((p) => p[0]).filter((p) => !isTrustedPlugin(p)));
+  const preExistingFileHashes = untrustedPlugins.size > 0 ? snapshotFileHashes(outdir) : void 0;
+  const ret = plugins.flatMap(([plugin, stacks]) => invokeSinglePlugin(plugin, Array.from(stacks)));
+  if (preExistingFileHashes) {
+    if (hasModifiedPreExistingFiles(preExistingFileHashes)) {
+      const pluginNames = Array.from(untrustedPlugins).map((p) => p.name);
+      throw new AssumptionError(lit`IllegalPluginOperation`, `One of the validation plugins (${pluginNames.join(", ")}) modified the cloud assembly`);
+    }
+  }
+  return ret;
+  function invokeSinglePlugin(plugin, stackArtifacts) {
+    if (stackArtifacts.length === 0) {
+      return [];
+    }
+    const stackTemplates = stackArtifacts.map((s) => ({
+      stackConstructPath: s.hierarchicalId,
+      templatePath: s.templateFullPath,
+      accountId: s.environment.account !== import_cloud_assembly_api.UNKNOWN_ACCOUNT ? s.environment.account : void 0,
+      region: s.environment.region !== import_cloud_assembly_api.UNKNOWN_REGION ? s.environment.region : void 0
+    }));
+    const accountId = stackTemplates.every((s) => s.accountId === stackTemplates[0].accountId) ? stackTemplates[0].accountId : void 0;
+    const region = stackTemplates.every((s) => s.region === stackTemplates[0].region) ? stackTemplates[0].region : void 0;
+    try {
+      const report = makeTemplatePathsRelative(plugin.validate({
+        templatePaths: stackTemplates.map((s) => s.templatePath),
+        stackTemplates,
+        appConstruct: root,
+        accountId,
+        region
+      }));
+      return [{ ...report, pluginName: plugin.name, pluginVersion: plugin.version }];
+    } catch (e) {
+      if (e instanceof AssumptionError && e.name === "IllegalPluginOperation") {
+        throw e;
+      }
+      return [mkPluginFailure(plugin, e)];
+    }
+  }
+  function makeTemplatePathsRelative(report) {
+    for (const v of report.violations) {
+      for (const r of v.violatingResources) {
+        if (r.templatePath) {
+          mutable(r).templatePath = path16.relative(outdir, path16.resolve(r.templatePath));
+        }
+      }
+    }
+    return report;
+  }
+}
+function isTrustedPlugin(x) {
+  return x instanceof CloudFormationValidatePlugin;
+}
+function visitAssemblies(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (!STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visitAssemblies(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+function getBooleanContext(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+function snapshotFileHashes(dir) {
+  const hashes = /* @__PURE__ */ new Map();
+  for (const filePath of collectFilePaths(dir)) {
+    hashes.set(filePath, hashFile(filePath));
+  }
+  return hashes;
+}
+function hasModifiedPreExistingFiles(snapshot) {
+  for (const [filePath, originalHash] of snapshot) {
+    if (!fileOrSymlinkExists(filePath) || hashFile(filePath) !== originalHash) {
+      return true;
+    }
+  }
+  return false;
+}
+function collectFilePaths(dir) {
+  const results = [];
+  function walk(current) {
+    for (const entry of fs11.readdirSync(current, { withFileTypes: true })) {
+      const full = path16.join(current, entry.name);
+      if (entry.isDirectory()) {
+        walk(full);
+      } else if (entry.isFile()) {
+        results.push(full);
+      } else if (entry.isSymbolicLink()) {
+        let st;
+        try {
+          st = fs11.lstatSync(full);
+        } catch {
+          continue;
+        }
+        if (st.isFile() || st.isSymbolicLink()) {
+          results.push(full);
+        }
+      }
+    }
+  }
+  walk(dir);
+  return results;
+}
+function hashFile(filePath) {
+  const content = fs11.lstatSync(filePath).isSymbolicLink() ? Buffer.from(fs11.readlinkSync(filePath)) : fs11.readFileSync(filePath);
+  return crypto7.createHash("sha256").update(content).digest("hex");
+}
+function fileOrSymlinkExists(p) {
+  try {
+    fs11.lstatSync(p);
+    return true;
+  } catch {
+    return false;
+  }
+}
+function hasUserRegisteredCloudFormationValidatePlugin(root) {
+  let count2 = 0;
+  visitAssemblies(root, "post", (construct) => {
+    if (!STAGE_TYPE.isMarked(construct)) return;
+    for (const plugin of construct._validationPlugins) {
+      if (!(plugin instanceof CloudFormationValidatePlugin)) continue;
+      if (construct !== root) {
+        throw new UnscopedValidationError(lit`CloudFormationValidatePluginNotAtApp`, "CloudFormationValidatePlugin can only be registered at the App level, not on a Stage");
+      }
+      count2++;
+    }
+  });
+  if (count2 > 1) {
+    throw new UnscopedValidationError(lit`DuplicateCloudFormationValidatePlugin`, "only one instance of CloudFormationValidatePlugin can be registered");
+  }
+  return count2 === 1;
+}
+function mutable(obj) {
+  return obj;
+}
+function cdkAppMode(root) {
+  const contextMode = root.node.tryGetContext(CDK_APP_MODE_CONTEXT);
+  if (contextMode === "process" || contextMode === "inmemory") {
+    return contextMode;
+  }
+  const envMode = process.env[CDK_APP_MODE_ENV];
+  if (envMode === "process" || envMode === "inmemory") {
+    return envMode;
+  }
+  if (process.env.NODE_ENV === "test" || process.env.PYTEST_VERSION || process.env.PYTEST_CURRENT_TEST) {
+    return "inmemory";
+  }
+  return "unknown";
+}
+var crypto7, fs11, path16, LEGACY_POLICY_VALIDATION_FILE_PATH;
+var init_synthesis_validation = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis-validation.ts"() {
+    "use strict";
+    crypto7 = __toESM(require("crypto"));
+    fs11 = __toESM(require("fs"));
+    path16 = __toESM(require("path"));
+    init_annotation_plugin();
+    init_collect_acknowledged_rule_ids();
+    init_literal_string();
+    init_cx_api();
+    init_app2();
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_perf();
+    init_stack_trace();
+    init_cloudformation_validate_plugin();
+    init_construct_tree();
+    init_modern_formatter();
+    init_report2();
+    init_validation_id();
+    LEGACY_POLICY_VALIDATION_FILE_PATH = "policy-validation-report.json";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tree.ts
+var TreeInspector;
+var init_tree = __esm({
+  "../../aws-cdk-lib/core/lib/tree.ts"() {
+    "use strict";
+    TreeInspector = class {
+      /**
+       * Represents the bag of attributes as key-value pairs.
+       */
+      attributes = {};
+      /**
+       * Adds attribute to bag. Keys should be added by convention to prevent conflicts
+       * i.e. L1 constructs will contain attributes with keys prefixed with aws:cdk:cloudformation
+       *
+       * @param key - key for metadata
+       * @param value - value of metadata.
+       */
+      addAttribute(key, value) {
+        this.attributes[key] = value;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/tree-metadata.ts
+function nodeCount(root) {
+  let count2 = 0;
+  const stack = [root];
+  while (stack.length > 0) {
+    const current = stack.pop();
+    count2 += 1;
+    if (current.children) {
+      for (const child of Object.values(current.children)) {
+        stack.push(child);
+      }
+    }
+  }
+  return count2;
+}
+function setChild(parent, node) {
+  if (!parent.children) {
+    parent.children = {};
+  }
+  parent.children[node.id] = node;
+}
+var fs12, path17, import_constructs16, FILE_PATH, TreeMetadata, FragmentedTreeWriter;
+var init_tree_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/tree-metadata.ts"() {
+    "use strict";
+    fs12 = __toESM(require("fs"));
+    path17 = __toESM(require("path"));
+    import_constructs16 = __toESM(require_lib4());
+    init_runtime_info();
+    init_cloud_assembly_schema();
+    init_annotations();
+    init_tree();
+    init_construct_iteration();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    FILE_PATH = "tree.json";
+    TreeMetadata = class extends import_constructs16.Construct {
+      constructor(scope) {
+        super(scope, "Tree");
+      }
+      /**
+       * Create tree.json
+       * @internal
+       */
+      _synthesizeTree(session) {
+        const maxNodesPerTree = this.node.tryGetContext("@aws-cdk/core.TreeMetadata:maxNodes");
+        const builder = session.assembly;
+        const writer = new FragmentedTreeWriter(builder.outdir, FILE_PATH, { maxNodesPerTree });
+        for (const { construct, parent } of iterateBfs(this.node.root)) {
+          const node = {
+            id: construct.node.id || "App",
+            path: construct.node.path,
+            constructInfo: constructInfoFromConstruct(construct)
+          };
+          try {
+            node.attributes = this.synthAttributes(construct);
+          } catch (e) {
+            Annotations.of(this).addWarningV2(`@aws-cdk/core:failedToRenderTreeMetadata-${construct.node.id}`, `Failed to render tree metadata for node [${construct.node.id}]. Reason: ${e}`);
+          }
+          writer.addNode(construct, parent, node);
+        }
+        const rootFilename = writer.writeForest();
+        builder.addArtifact("Tree", {
+          type: cloud_assembly_schema_exports.ArtifactType.CDK_TREE,
+          properties: {
+            file: rootFilename
+          }
+        });
+      }
+      synthAttributes(construct) {
+        function canInspect2(inspectable) {
+          return inspectable.inspect !== void 0;
+        }
+        const inspector = new TreeInspector();
+        if (canInspect2(construct)) {
+          construct.inspect(inspector);
+          return stackOf(construct).resolve(inspector.attributes);
+        }
+        return void 0;
+      }
+    };
+    FragmentedTreeWriter = class {
+      constructor(outdir, rootFilename, options) {
+        this.outdir = outdir;
+        this.rootFilename = rootFilename;
+        this.maxNodes = options?.maxNodesPerTree ?? 5e5;
+      }
+      outdir;
+      rootFilename;
+      /**
+       * We only care about the identify of this object.
+       *
+       * Whatever tree in the forest is "pointed to" by this pointer is the main tree.
+       */
+      mainTreePointer = {
+        fileName: "yyy",
+        id: "id",
+        path: "path"
+      };
+      forest = new Array();
+      /**
+       * Maps a Construct to its respective Node
+       */
+      constructMap = /* @__PURE__ */ new Map();
+      /**
+       * Map a root Node to its containing Tree
+       */
+      subtreeRoots = /* @__PURE__ */ new Map();
+      /**
+       * Map a Node to its parent Node
+       */
+      parent = /* @__PURE__ */ new Map();
+      maxNodes;
+      /**
+       * Write the forest to disk, return the root file name
+       */
+      writeForest() {
+        const forestFiles = this.allocateSubTreesToForestFiles();
+        const mainTree = this.forest.find((t) => t.referencingNode === this.mainTreePointer);
+        if (mainTree) {
+          const treeFile = { version: "tree-0.1", tree: mainTree.root };
+          fs12.writeFileSync(path17.join(this.outdir, this.rootFilename), JSON.stringify(treeFile), { encoding: "utf-8" });
+        }
+        for (const forestFile of forestFiles) {
+          fs12.writeFileSync(path17.join(this.outdir, forestFile.fileName), JSON.stringify(forestFile.file), { encoding: "utf-8" });
+        }
+        return this.rootFilename;
+      }
+      /**
+       * Find all non-main tree and combine them into forest files
+       *
+       * This will mutate the pointing nodes as a side effect.
+       */
+      allocateSubTreesToForestFiles() {
+        const ret = new Array();
+        for (const tree of this.forest) {
+          if (tree.referencingNode === this.mainTreePointer) {
+            continue;
+          }
+          let targetForest;
+          if (ret.length === 0 || ret[ret.length - 1].nodeCount + tree.nodes > this.maxNodes) {
+            targetForest = {
+              fileName: `trees-${ret.length + 1}.json`,
+              file: { version: "forest-0.1", forest: {} },
+              nodeCount: 0,
+              treeCount: 0
+            };
+            ret.push(targetForest);
+          } else {
+            targetForest = ret[ret.length - 1];
+          }
+          const treeId = `t${targetForest.treeCount++}`;
+          targetForest.file.forest[treeId] = tree.root;
+          targetForest.nodeCount += tree.nodes;
+          tree.referencingNode.fileName = targetForest.fileName;
+          tree.referencingNode.treeId = treeId;
+        }
+        return ret;
+      }
+      addNode(construct, parent, node) {
+        if (parent === void 0) {
+          if (this.forest.length > 0) {
+            throw new AssumptionError(lit`OnlyOneNodeWithoutParent`, "Can only add exactly one node without a parent");
+          }
+          this.addNewTree(node, this.mainTreePointer);
+        } else {
+          const parentNode = this.constructMap.get(parent);
+          if (!parentNode) {
+            return;
+          }
+          this.addToExistingTree(node, parentNode);
+        }
+        this.constructMap.set(construct, node);
+      }
+      /**
+       * Add a new tree with the given Node as root
+       */
+      addNewTree(root, referencingNode) {
+        const tree = {
+          root,
+          referencingNode,
+          nodes: nodeCount(root)
+        };
+        this.forest.push(tree);
+        this.subtreeRoots.set(root, tree);
+        return tree;
+      }
+      /**
+       * Add the given node to an existing tree, potentially splitting it
+       */
+      addToExistingTree(node, parent) {
+        let tree = this.treeForNode(parent);
+        if (this.isTreeFull(tree)) {
+          const grandParent = this.parent.get(parent);
+          if (!grandParent) {
+            throw new AssumptionError(lit`CouldNotFindParent`, `Could not find parent of ${JSON.stringify(parent)}`);
+          }
+          const subtreeReference = {
+            id: parent.id,
+            path: parent.path,
+            fileName: "xxx"
+            // Will be replaced later
+          };
+          tree = this.addNewTree(parent, subtreeReference);
+          setChild(grandParent, subtreeReference);
+          this.subtreeRoots.set(parent, tree);
+        }
+        setChild(parent, node);
+        this.parent.set(node, parent);
+        tree.nodes += 1;
+      }
+      /**
+       * Whether the given tree is full
+       */
+      isTreeFull(t) {
+        return t.nodes >= this.maxNodes;
+      }
+      /**
+       * Return the Tree that contains the given Node
+       */
+      treeForNode(node) {
+        const tried = new Array();
+        let cur = node;
+        tried.push(cur.path);
+        let tree = this.subtreeRoots.get(cur);
+        while (!tree && cur) {
+          cur = this.parent.get(cur);
+          tried.push(cur?.path);
+          tree = cur && this.subtreeRoots.get(cur);
+        }
+        if (tree) {
+          return tree;
+        }
+        throw new AssumptionError(lit`CouldNotFindTreeForNode`, `Could not find tree for node: ${JSON.stringify(node)}, tried ${tried}`);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/synthesis.ts
+function synthesize(root, options = {}) {
+  injectTreeMetadata(root);
+  synthNestedAssemblies(root, options);
+  if (options.aspectStabilization) {
+    invokeAspectsV2(root);
+  } else {
+    invokeAspects(root);
+  }
+  injectMetadataResources(root);
+  prepareApp(root);
+  if (!options.skipValidation) {
+    validateTree(root);
+  }
+  const builder = STAGE_TYPE.isMarked(root) ? _convertCloudAssemblyBuilder(root._assemblyBuilder) : new private_cxapi.CloudAssemblyBuilder(options.outdir);
+  synthesizeTree(root, builder, options.validateOnSynthesis);
+  generateFeatureFlagReport(builder, root);
+  const assembly = builder.buildAssembly();
+  validateTemplates(root, builder.outdir, assembly);
+  return assembly;
+}
+function addCustomSynthesis(construct, synthesis) {
+  Object.defineProperty(construct, CUSTOM_SYNTHESIS_SYM, {
+    value: synthesis,
+    enumerable: false
+  });
+}
+function getCustomSynthesis(construct) {
+  return construct[CUSTOM_SYNTHESIS_SYM];
+}
+function synthNestedAssemblies(root, options) {
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      child.synth(options);
+    } else {
+      synthNestedAssemblies(child, options);
+    }
+  }
+}
+function invokeAspects(root) {
+  const invokedByPath = {};
+  let nestedAspectWarning = false;
+  recurse(root, []);
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    const aspects = Aspects.of(construct);
+    let localAspects = getAspectApplications(construct);
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, localAspects);
+    const nodeAspectsCount = aspects.all.length;
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath[node.path];
+      if (!invoked) {
+        invoked = invokedByPath[node.path] = [];
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      aspectApplication.aspect.visit(construct);
+      if (!nestedAspectWarning && nodeAspectsCount !== aspects.all.length) {
+        Annotations.of(construct).addWarningV2("@aws-cdk/core:ignoredAspect", "We detected an Aspect was added via another Aspect, and will not be applied");
+        nestedAspectWarning = true;
+      }
+      invoked.push(aspectApplication);
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        recurse(child, allAspectsHere);
+      }
+    }
+  }
+}
+function invokeAspectsV2(root) {
+  const invokedByPath = /* @__PURE__ */ new Map();
+  recurse(root, []);
+  for (let i = 0; i <= 100; i++) {
+    const didAnythingToTree = recurse(root, []);
+    if (didAnythingToTree === "nothing") {
+      return;
+    }
+  }
+  throw new UnscopedValidationError(lit`PossibleInfiniteLoopDetected`, "We have detected a possible infinite loop while invoking Aspects. Please check your Aspects and verify there is no configuration that would cause infinite Aspect or Node creation.");
+  function recurse(construct, inheritedAspects) {
+    const node = construct.node;
+    let ret = "nothing";
+    const currentAspectTreeRevision = _aspectTreeRevisionReader(construct);
+    const versionAtStart = currentAspectTreeRevision();
+    const allAspectsHere = sortAspectsByPriority(inheritedAspects, getAspectApplications(construct));
+    for (const aspectApplication of allAspectsHere) {
+      let invoked = invokedByPath.get(node.path);
+      if (!invoked) {
+        invokedByPath.set(node.path, invoked = []);
+      }
+      if (invoked.some((invokedApp) => invokedApp.aspect === aspectApplication.aspect)) {
+        continue;
+      }
+      const lastInvokedAspect = invoked[invoked.length - 1];
+      if (lastInvokedAspect && lastInvokedAspect.priority > aspectApplication.priority) {
+        throw new UnscopedValidationError(
+          lit`CannotInvokeAspectWithLowerPriority`,
+          `Cannot invoke Aspect ${aspectApplication.aspect.constructor.name} with priority ${aspectApplication.priority} on node ${node.path}: an Aspect ${lastInvokedAspect.aspect.constructor.name} with a lower priority (added at ${lastInvokedAspect.construct.node.path} with priority ${lastInvokedAspect.priority}) was already invoked on this node.`
+        );
+      }
+      aspectApplication.aspect.visit(construct);
+      ret = "invoked";
+      invoked.push(aspectApplication);
+      if (currentAspectTreeRevision() !== versionAtStart) {
+        return "abort-recursion";
+      }
+    }
+    for (const child of construct.node.children) {
+      if (!STAGE_TYPE.isMarked(child)) {
+        const childDidSomething = recurse(child, allAspectsHere);
+        ret = childDidSomething !== "nothing" ? childDidSomething : ret;
+        if (ret === "abort-recursion") {
+          break;
+        }
+      }
+    }
+    return ret;
+  }
+}
+function sortAspectsByPriority(inheritedAspects, localAspects) {
+  const allAspects = [...inheritedAspects, ...localAspects].sort((a, b) => {
+    if (a.priority !== b.priority) {
+      return a.priority - b.priority;
+    }
+    const isAInherited = inheritedAspects.includes(a);
+    const isBInherited = inheritedAspects.includes(b);
+    if (isAInherited && !isBInherited) return -1;
+    if (!isAInherited && isBInherited) return 1;
+    return 0;
+  });
+  return allAspects;
+}
+function getAspectApplications(node) {
+  const aspects = Aspects.of(node);
+  if (aspects.applied !== void 0) {
+    return aspects.applied;
+  }
+  const typedAspects = aspects;
+  return typedAspects.all.map((aspect) => new AspectApplication(node, aspect, AspectPriority.DEFAULT));
+}
+function injectMetadataResources(root) {
+  visit(root, "post", (construct) => {
+    if (!STACK_TYPE.isMarked(construct) || !construct._versionReportingEnabled) {
+      return;
+    }
+    const CDKMetadata = "CDKMetadata";
+    if (construct.node.tryFindChild(CDKMetadata)) {
+      return;
+    }
+    new MetadataResource(construct, CDKMetadata);
+  });
+}
+function injectTreeMetadata(root) {
+  visit(root, "post", (construct) => {
+    if (!App.isApp(construct) || !construct._treeMetadata) return;
+    const CDKTreeMetadata = "Tree";
+    if (construct.node.tryFindChild(CDKTreeMetadata)) return;
+    new TreeMetadata(construct);
+  });
+}
+function synthesizeTree(root, builder, validateOnSynth = false) {
+  visit(root, "post", (construct) => {
+    const session = {
+      outdir: builder.outdir,
+      assembly: _convertCloudAssemblyBuilder(builder),
+      validateOnSynth
+    };
+    if (STACK_TYPE.isMarked(construct)) {
+      construct.synthesizer.synthesize(session);
+    } else if (construct instanceof TreeMetadata) {
+      construct._synthesizeTree(session);
+    } else {
+      const custom = getCustomSynthesis(construct);
+      custom?.onSynthesize(session);
+    }
+  });
+}
+function validateTree(root) {
+  const errors = new Array();
+  visit(root, "pre", (construct) => {
+    for (const message of construct.node.validate()) {
+      errors.push({ message, source: construct });
+    }
+  });
+  if (errors.length > 0) {
+    const errorList = errors.map((e) => `[${e.source.node.path}] ${e.message}`).join("\n  ");
+    throw new UnscopedValidationError(lit`ValidationFailedWithErrors`, `Validation failed with the following errors:
+  ${errorList}`);
+  }
+}
+function visit(root, order, cb) {
+  if (order === "pre") {
+    cb(root);
+  }
+  for (const child of root.node.children) {
+    if (STAGE_TYPE.isMarked(child)) {
+      continue;
+    }
+    visit(child, order, cb);
+  }
+  if (order === "post") {
+    cb(root);
+  }
+}
+var private_cxapi, CUSTOM_SYNTHESIS_SYM;
+var init_synthesis = __esm({
+  "../../aws-cdk-lib/core/lib/private/synthesis.ts"() {
+    "use strict";
+    private_cxapi = __toESM(require_lib3());
+    init_core_construct_finders();
+    init_feature_flag_report();
+    init_literal_string();
+    init_metadata_resource2();
+    init_prepare_app();
+    init_synthesis_validation();
+    init_tree_metadata();
+    init_legacy_moved();
+    init_annotations();
+    init_app2();
+    init_aspect();
+    init_errors();
+    CUSTOM_SYNTHESIS_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core:customSynthesis");
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validation.ts
+function _toBeta1Plugin(plugin) {
+  return {
+    name: plugin.name,
+    version: plugin.version,
+    ruleIds: plugin.ruleIds,
+    validate(context) {
+      const report = plugin.validate({
+        ...context,
+        // This is incorrect information -- it doesn't matter, this function shouldn't be used regardless.
+        stackTemplates: [],
+        accountId: void 0,
+        region: void 0
+      });
+      return {
+        success: report.success,
+        pluginVersion: report.pluginVersion,
+        metadata: report.metadata,
+        violations: report.violations.map((v) => ({
+          ruleName: v.ruleName,
+          description: v.description,
+          fix: v.fix,
+          severity: v.severity,
+          ruleMetadata: v.ruleMetadata,
+          violatingResources: v.violatingResources.map((r) => ({
+            resourceLogicalId: r.resourceLogicalId ?? "",
+            templatePath: r.templatePath ?? "",
+            locations: r.locations
+          }))
+        }))
+      };
+    }
+  };
+}
+var init_validation = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validation.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/validations.ts
+var Validations;
+var init_validations = __esm({
+  "../../aws-cdk-lib/core/lib/validation/validations.ts"() {
+    "use strict";
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_stack_trace();
+    init_validation_id();
+    Validations = class _Validations {
+      constructor(scope) {
+        this.scope = scope;
+      }
+      scope;
+      /**
+       * Metadata key used to store acknowledged rules on construct nodes.
+       *
+       * Plugin authors can read this metadata to build audit trails from
+       * acknowledgments recorded via `acknowledge()`.
+       */
+      static ACKNOWLEDGED_RULES_METADATA_KEY = "aws:cdk:acknowledged-rules";
+      /**
+       * Returns the Validations for the given construct scope.
+       *
+       * @param scope any construct
+       */
+      static of(scope) {
+        return new _Validations(scope);
+      }
+      /**
+       * Register one or more validation plugins that will be executed during synthesis.
+       *
+       * Plugins can only be registered within a Stage or App scope.
+       * If any plugin reports a violation, synthesis will be interrupted and the
+       * report displayed to the user.
+       *
+       * @param plugins the validation plugins to add
+       */
+      addPlugins(...plugins) {
+        const stage = STAGE_TYPE.isMarked(this.scope) ? this.scope : stageOf(this.scope);
+        if (!stage) {
+          throw new UnscopedValidationError(lit`NoStageForValidationPlugins`, "Cannot add validation plugins on a construct without an enclosing Stage");
+        }
+        stage._addValidationPlugins(...plugins);
+      }
+      /**
+       * Adds a warning metadata entry to this construct that can be acknowledged.
+       *
+       * The CLI will display the warning when an app is synthesized, or fail if run
+       * in `--strict` mode.
+       *
+       * The ID will be stored with the `annotation` prefix (e.g. `annotation::MyWarning`).
+       * Use this prefixed ID when calling `acknowledge()` to suppress the warning.
+       *
+       * @param id unique identifier for the warning, used for acknowledgement
+       * @param message the warning message
+       */
+      addWarning(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addWarningV2(id, message);
+      }
+      /**
+       * Adds an error metadata entry to this construct.
+       *
+       * Synthesis will be interrupted when errors are reported.
+       *
+       * Note: Annotation errors are not currently acknowledgeable. The ID is
+       * recorded for identification purposes but `acknowledge()` will not
+       * suppress errors added via this method.
+       *
+       * @param id unique identifier for the error
+       * @param message the error message
+       */
+      addError(id, message) {
+        id = normalizeValidationIdForAnnotations(id);
+        Annotations.of(this.scope).addError(`${message} (${id})`);
+      }
+      /**
+       * Acknowledge one or more rules, suppressing them from validation output.
+       *
+       * Acknowledgments are recorded to construct metadata so that downstream
+       * plugins (e.g. CDK Nag) can read them for audit trails.
+       *
+       * Currently only annotation warnings can be suppressed. Annotation errors
+       * are not yet acknowledgeable.
+       *
+       * If an ID has no well-known prefix, it is assumed to be an annotation rule
+       * for backwards compatibility.
+       *
+       * @param rules the rules to acknowledge
+       */
+      acknowledge(...rules) {
+        for (const rule of rules) {
+          const parsed = parseValidationId(rule.id);
+          const qualifiedId = normalizeValidationIdForAnnotations(parsed);
+          this.recordAcknowledgment(qualifiedId, rule.reason);
+          Annotations.of(this.scope).acknowledgeWarning(qualifiedId);
+          if (qualifiedId.startsWith(`${ANNOTATION_PLUGIN_NAMESPACE}::`)) {
+            const annotationId = qualifiedId.substring(`${ANNOTATION_PLUGIN_NAMESPACE}::`.length);
+            Annotations.of(this.scope).acknowledgeWarning(annotationId);
+          }
+        }
+      }
+      recordAcknowledgment(id, reason) {
+        this.scope.node.addMetadata(
+          _Validations.ACKNOWLEDGED_RULES_METADATA_KEY,
+          { [id]: reason },
+          // eslint-disable-next-line @typescript-eslint/unbound-method
+          { stackTraceOverride: enhancedStackTrace(this.recordAcknowledgment) }
+        );
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/validation/index.ts
+var init_validation2 = __esm({
+  "../../aws-cdk-lib/core/lib/validation/index.ts"() {
+    "use strict";
+    init_validation();
+    init_validations();
+    init_report();
+    init_cloudformation_validate_plugin();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stage.ts
+function stripInPlace(arr, startIndex, predicate) {
+  for (let i = startIndex; i < arr.length; i++) {
+    if (predicate(arr[i])) {
+      arr.splice(i, 1);
+      i--;
+    }
+  }
+}
+var private_cxapi2, import_constructs17, Stage;
+var init_stage = __esm({
+  "../../aws-cdk-lib/core/lib/stage.ts"() {
+    "use strict";
+    private_cxapi2 = __toESM(require_lib3());
+    import_constructs17 = __toESM(require_lib4());
+    init_errors();
+    init_feature_flags();
+    init_core_construct_finders();
+    init_synthesis();
+    init_prop_injectors();
+    init_validation2();
+    init_cx_api();
+    init_cx_api();
+    init_literal_string();
+    Stage = class _Stage extends import_constructs17.Construct {
+      /**
+       * Return the stage this construct is contained with, if available. If called
+       * on a nested stage, returns its parent.
+       *
+       */
+      static of(construct) {
+        return stageOf(construct);
+      }
+      /**
+       * Test whether the given construct is a stage.
+       *
+       */
+      static isStage(x) {
+        return STAGE_TYPE.isMarked(x);
+      }
+      /**
+       * The default region for all resources defined within this stage.
+       *
+       */
+      region;
+      /**
+       * The default account for all resources defined within this stage.
+       *
+       */
+      account;
+      /**
+       * The cloud assembly builder that is being used for this App
+       *
+       * @internal
+       */
+      _assemblyBuilder;
+      /**
+       * The name of the stage. Based on names of the parent stages separated by
+       * hypens.
+       *
+       */
+      stageName;
+      /**
+       * The parent stage or `undefined` if this is the app.
+       * *
+       */
+      parentStage;
+      /**
+       * The cached assembly if it was already built
+       */
+      assembly;
+      /**
+       * The cached set of construct paths. Empty if assembly was not yet built.
+       */
+      constructPathsCache;
+      /**
+       * Validation plugins to run during synthesis. If any plugin reports any violation,
+       * synthesis will be interrupted and the report displayed to the user.
+       *
+       * @default - no validation plugins are used
+       * @deprecated Do not use this function to look up validation plugins. Use `Validations.of(stage).plugins` instead.
+       */
+      get policyValidationBeta1() {
+        return this._policyValidation.map(_toBeta1Plugin);
+      }
+      _policyValidation = [];
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        if (id !== "" && !/^[a-z][a-z0-9\-\_\.]*$/i.test(id)) {
+          throw new ValidationError(lit`InvalidStageName`, `invalid stage name "${id}". Stage name must start with a letter and contain only alphanumeric characters, hypens ('-'), underscores ('_') and periods ('.')`, this);
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        STAGE_TYPE.mark(this);
+        this.constructPathsCache = /* @__PURE__ */ new Set();
+        this.parentStage = _Stage.of(this);
+        this.region = props.env?.region ?? this.parentStage?.region;
+        this.account = props.env?.account ?? this.parentStage?.account;
+        props.permissionsBoundary?._bind(this);
+        this._assemblyBuilder = this.createBuilder(props.outdir);
+        this.stageName = [this.parentStage?.stageName, props.stageName ?? id].filter((x) => x).join("-");
+        if (props.policyValidationBeta1) {
+          this._policyValidation.push(...props.policyValidationBeta1);
+        }
+      }
+      /**
+       * Register a validation plugin on this stage.
+       *
+       * @internal
+       */
+      _addValidationPlugins(...plugins) {
+        this._policyValidation.push(...plugins);
+      }
+      /**
+       * Returns the raw validation plugins without Beta1 wrapping.
+       *
+       * @internal
+       */
+      get _validationPlugins() {
+        return [...this._policyValidation];
+      }
+      /**
+       * The cloud assembly output directory.
+       */
+      get outdir() {
+        return this._assemblyBuilder.outdir;
+      }
+      /**
+       * The cloud assembly asset output directory.
+       */
+      get assetOutdir() {
+        return this._assemblyBuilder.assetOutdir;
+      }
+      /**
+       * Artifact ID of the assembly if it is a nested stage. The root stage (app)
+       * will return an empty string.
+       *
+       * Derived from the construct path.
+       */
+      get artifactId() {
+        if (!this.node.path) {
+          return "";
+        }
+        return `assembly-${this.node.path.replace(/\//g, "-").replace(/^-+|-+$/g, "")}`;
+      }
+      /**
+       * Synthesize this stage into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        let newConstructPaths = this.listAllConstructPaths(this);
+        if (this.constructPathsCache.size == 0 || !this.assembly || options.force) {
+          this.assembly = _convertCloudAssembly(synthesize(this, {
+            skipValidation: options.skipValidation,
+            validateOnSynthesis: options.validateOnSynthesis,
+            aspectStabilization: options.aspectStabilization ?? FeatureFlags.of(this).isEnabled(ASPECT_STABILIZATION) ?? false
+          }));
+          newConstructPaths = this.listAllConstructPaths(this);
+          this.constructPathsCache = newConstructPaths;
+        }
+        if (!this.constructPathSetsAreEqual(this.constructPathsCache, newConstructPaths)) {
+          const diff = this.constructPathSetsDiff(this.constructPathsCache, newConstructPaths).join(", ");
+          const errorMessage = `Synthesis has been called multiple times and the construct tree was modified after the first synthesis (${diff})`;
+          if (options.errorOnDuplicateSynth ?? true) {
+            throw new ValidationError(lit`ConstructTreeModifiedAfterSynth`, errorMessage + " This is not allowed. Remove multple synth() calls and do not modify the construct tree after the first synth().", this);
+          } else {
+            console.error(errorMessage + " Only the results of the first synth() call are used, and modifications done after it are ignored. Avoid construct tree mutations after synth() has been called unless this is intentional.");
+          }
+        }
+        this.constructPathsCache = newConstructPaths;
+        return this.assembly;
+      }
+      // Function that lists all construct paths and returns them as a set
+      listAllConstructPaths(construct) {
+        const paths = /* @__PURE__ */ new Set();
+        function recurse(root) {
+          paths.add(root.node.path);
+          for (const child of root.node.children) {
+            if (!STAGE_TYPE.isMarked(child)) {
+              recurse(child);
+            }
+          }
+        }
+        recurse(construct);
+        return paths;
+      }
+      // Checks if sets of construct paths are equal
+      constructPathSetsAreEqual(set1, set2) {
+        if (set1.size !== set2.size) return false;
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      /**
+       * Returns a list of +/- marked construct paths that have been added or removed between the 2 sets
+       */
+      constructPathSetsDiff(set1, set2) {
+        const ret = [];
+        for (const id of set1) {
+          if (!set2.has(id)) {
+            ret.push(`-${id}`);
+          }
+        }
+        for (const id of set2) {
+          if (!set1.has(id)) {
+            ret.push(`+${id}`);
+          }
+        }
+        ret.sort((a, b) => a.length - b.length);
+        for (let i = 0; i < ret.length; i++) {
+          const prefix = ret[i] + "/";
+          stripInPlace(ret, i + 1, (x) => x.startsWith(prefix));
+        }
+        return ret;
+      }
+      createBuilder(outdir) {
+        if (this.parentStage && outdir) {
+          throw new ValidationError(lit`OutdirCannotBeSpecifiedForNestedStage`, '"outdir" cannot be specified for nested stages', this);
+        }
+        return this.parentStage ? this.parentStage._assemblyBuilder.createNestedAssembly(this.artifactId, this.node.path) : _convertCloudAssemblyBuilder(new private_cxapi2.CloudAssemblyBuilder(outdir));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/stack-metadata.ts
+function constructAnalyticsFromScope(scope) {
+  const isDefined = (value) => value !== void 0;
+  const allConstructInfos = constructsInScope(scope).map((construct) => [construct, constructInfoFromConstruct(construct)]).filter((c) => {
+    const [_, info] = c;
+    return isDefined(info) && ALLOWED_FQN_PREFIXES.find((prefix) => info.fqn.startsWith(prefix)) != null;
+  }).map(([construct, info]) => injectAnalytics(construct, info));
+  allConstructInfos.push({
+    fqn: "jsii-runtime.Runtime",
+    version: getJsiiAgentVersion()
+  });
+  addValidationPluginInfo(scope, allConstructInfos);
+  const uniqueMap = /* @__PURE__ */ new Map();
+  allConstructInfos.forEach((info) => {
+    const key = `${info.fqn}@${info.version}`;
+    if (uniqueMap.has(key)) {
+      const existingInfo = uniqueMap.get(key);
+      if (existingInfo && existingInfo.additionalTelemetry && info.additionalTelemetry) {
+        existingInfo.additionalTelemetry.push(...info.additionalTelemetry);
+      }
+      if (existingInfo && existingInfo.metadata && info.metadata) {
+        existingInfo.metadata.push(...info.metadata);
+      }
+    } else {
+      uniqueMap.set(key, info);
+    }
+  });
+  return Array.from(uniqueMap.values());
+}
+function injectAnalytics(construct, info) {
+  const metadata = new Array();
+  const additionalTelemetry = new Array();
+  for (const entry of construct.node.metadata) {
+    if (isResource(construct) && ADDITIONAL_TELEMETRY_METADATA_TYPES.has(entry.type)) {
+      additionalTelemetry.push(entry.data);
+    } else if (ALLOWED_METADATA_TYPES.has(entry.type)) {
+      metadata.push(entry.data);
+    }
+  }
+  return {
+    ...info,
+    metadata: metadata.length ? metadata : void 0,
+    additionalTelemetry: additionalTelemetry.length ? additionalTelemetry : void 0
+  };
+}
+function constructsInScope(construct) {
+  const constructs = [construct];
+  construct.node.children.filter((child) => !STAGE_TYPE.isMarked(child) && !STACK_TYPE.isMarked(child)).forEach((child) => constructs.push(...constructsInScope(child)));
+  return constructs;
+}
+function getJsiiAgentVersion() {
+  let jsiiAgent = process.env.JSII_AGENT;
+  if (!jsiiAgent) {
+    jsiiAgent = `node.js/${process.version}`;
+  }
+  jsiiAgent = jsiiAgent.replace(/[^a-z0-9.-/=_]/gi, "-");
+  return jsiiAgent;
+}
+function addValidationPluginInfo(scope, allConstructInfos) {
+  let stage = Stage.of(scope);
+  let done = false;
+  do {
+    if (App.isApp(stage)) {
+      done = true;
+    }
+    if (stage) {
+      allConstructInfos.push(...stage._validationPlugins.map(
+        (plugin) => {
+          return {
+            fqn: pluginFqn(plugin),
+            version: plugin.version ?? "0.0.0"
+          };
+        }
+      ));
+      stage = Stage.of(stage);
+    }
+  } while (!done && stage);
+}
+function pluginFqn(plugin) {
+  let components = [
+    "policyValidation",
+    plugin.name,
+    plugin.ruleIds?.join("|")
+  ];
+  return components.filter((x) => x != null).join(".");
+}
+function isResource(construct) {
+  return construct !== null && typeof construct === "object" && RESOURCE_SYMBOL in construct;
+}
+var ALLOWED_METADATA_TYPES, ADDITIONAL_TELEMETRY_METADATA_TYPES;
+var init_stack_metadata = __esm({
+  "../../aws-cdk-lib/core/lib/private/stack-metadata.ts"() {
+    "use strict";
+    init_runtime_info();
+    init_app2();
+    init_constants();
+    init_metadata_type();
+    init_stage();
+    init_constants2();
+    init_core_construct_finders();
+    ALLOWED_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:mixin" /* MIXIN */
+    ]);
+    ADDITIONAL_TELEMETRY_METADATA_TYPES = /* @__PURE__ */ new Set([
+      "aws:cdk:analytics:construct" /* CONSTRUCT */,
+      "aws:cdk:analytics:method" /* METHOD */,
+      "aws:cdk:analytics:featureflag" /* FEATURE_FLAG */
+    ]);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts
+var _defaultChildOwner_dec, _init8, _ConstructReflection, ConstructReflection;
+var init_construct_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/construct-reflection.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_memoize();
+    _defaultChildOwner_dec = [memoizedGetter];
+    _ConstructReflection = class _ConstructReflection {
+      constructor(construct) {
+        __runInitializers(_init8, 5, this);
+        __publicField(this, "construct");
+        this.construct = construct;
+      }
+      /**
+       * Create a reflection for the given construct.
+       */
+      static of(construct) {
+        return new _ConstructReflection(construct);
+      }
+      get defaultChildOwner() {
+        if (this.construct.node.scope && (this.construct.node.id === "Resource" || this.construct.node.id === "Default")) {
+          return this.construct.node.scope;
+        }
+        return void 0;
+      }
+      /**
+       * Finds the CfnResource backing this construct.
+       *
+       * Checks in order: the construct itself, its default child, then searches
+       * the broader construct tree for the closest match.
+       */
+      findCfnResource(matcher) {
+        const isCfnType = (c) => {
+          return CfnResource.isCfnResource(c) && c.cfnResourceType === matcher.cfnResourceType;
+        };
+        if (isCfnType(this.construct)) {
+          return this.construct;
+        }
+        if (this.construct.node.defaultChild && isCfnType(this.construct.node.defaultChild)) {
+          return this.construct.node.defaultChild;
+        }
+        return this.findRelatedCfnResource(matcher);
+      }
+      /**
+       * Finds the closest related CfnResource in the construct tree.
+       *
+       * Searches children first (depth-first), then ancestors (breadth-first).
+       */
+      findRelatedCfnResource(matcher) {
+        let closestMatch;
+        let closestDistance = Infinity;
+        const visited = /* @__PURE__ */ new Set();
+        const isMatch = (child) => {
+          return CfnResource.isCfnResource(child) && child.cfnResourceType === matcher.cfnResourceType;
+        };
+        const checkCandidate = (candidate, distance) => {
+          if (isMatch(candidate) && matcher.matches(candidate) && distance < closestDistance) {
+            closestMatch = candidate;
+            closestDistance = distance;
+          }
+        };
+        const searchChildren = (parent, distance) => {
+          if (distance >= closestDistance) {
+            return;
+          }
+          for (const child of parent.node.children) {
+            if (visited.has(child)) {
+              continue;
+            }
+            visited.add(child);
+            checkCandidate(child, distance);
+            searchChildren(child, distance + 1);
+          }
+        };
+        searchChildren(this.construct, 1);
+        let ancestor = this.construct.node.scope;
+        let ancestorDistance = 1;
+        while (ancestor && ancestorDistance < closestDistance) {
+          for (const sibling of ancestor.node.children) {
+            searchChildren(sibling, ancestorDistance);
+          }
+          ancestor = ancestor.node.scope;
+          ancestorDistance++;
+        }
+        return closestMatch;
+      }
+    };
+    _init8 = __decoratorStart(null);
+    __decorateElement(_init8, 2, "defaultChildOwner", _defaultChildOwner_dec, _ConstructReflection);
+    __decoratorMetadata(_init8, _ConstructReflection);
+    ConstructReflection = _ConstructReflection;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts
+var init_property_reflection = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/property-reflection.ts"() {
+    "use strict";
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/traits.ts
+var init_traits = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/traits.ts"() {
+    "use strict";
+    init_cx_api();
+    init_errors();
+    init_feature_flags();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/deep-merge.ts
+function deepMerge(target, ...sources) {
+  for (const source of sources) {
+    if (typeof source !== "object" || typeof target !== "object") {
+      throw new AssumptionError(lit`InvalidDeepMergeArguments`, `Invalid usage. Both source (${JSON.stringify(source)}) and target (${JSON.stringify(target)}) must be objects`);
+    }
+    for (const key of Object.keys(source)) {
+      if (key === "__proto__" || key === "constructor" || key === "prototype") {
+        continue;
+      }
+      const value = source[key];
+      if (typeof value === "object" && value != null && !Array.isArray(value)) {
+        if (typeof target[key] !== "object") {
+          target[key] = {};
+        } else if (Object.keys(target[key]).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(target[key])[0])) {
+            target[key] = {};
+          }
+        }
+        if (Object.keys(value).length === 1) {
+          if (MERGE_EXCLUDE_KEYS.includes(Object.keys(value)[0])) {
+            target[key] = {};
+          }
+        }
+        deepMerge(target[key], value);
+        const output = target[key];
+        if (typeof output === "object" && Object.keys(output).length === 0) {
+          delete target[key];
+        }
+      } else if (value === void 0) {
+        delete target[key];
+      } else {
+        target[key] = value;
+      }
+    }
+  }
+  return target;
+}
+var MERGE_EXCLUDE_KEYS;
+var init_deep_merge = __esm({
+  "../../aws-cdk-lib/core/lib/private/deep-merge.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    MERGE_EXCLUDE_KEYS = [
+      "Ref",
+      "Fn::Base64",
+      "Fn::Cidr",
+      "Fn::FindInMap",
+      "Fn::GetAtt",
+      "Fn::GetAZs",
+      "Fn::ImportValue",
+      "Fn::Join",
+      "Fn::Select",
+      "Fn::Split",
+      "Fn::Sub",
+      "Fn::Transform",
+      "Fn::And",
+      "Fn::Equals",
+      "Fn::If",
+      "Fn::Not",
+      "Fn::Or"
+    ];
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts
+var init_property_merge_strategy = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/property-merge-strategy.ts"() {
+    "use strict";
+    init_box();
+    init_deep_merge();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts
+var init_cfn_props_mixin = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/cfn-props-mixin.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_property_merge_strategy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/shell-escape.ts
+var init_shell_escape = __esm({
+  "../../aws-cdk-lib/core/lib/private/shell-escape.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/helpers-internal/index.ts
+var init_helpers_internal = __esm({
+  "../../aws-cdk-lib/core/lib/helpers-internal/index.ts"() {
+    "use strict";
+    init_cfn_parse();
+    init_md5();
+    init_customize_roles();
+    init_string_specializer();
+    init_validate_all_props();
+    init_strings();
+    init_runtime_info();
+    init_stack_metadata();
+    init_memoize();
+    init_construct_reflection();
+    init_property_reflection();
+    init_traits();
+    init_cfn_props_mixin();
+    init_literal_string();
+    init_box();
+    init_no_box_stack_traces();
+    init_perf();
+    init_shell_escape();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/private-context.ts
+var PREFIX, PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER;
+var init_private_context = __esm({
+  "../../aws-cdk-lib/core/lib/private/private-context.ts"() {
+    "use strict";
+    PREFIX = `aws-cdk-private:${Math.random()}:`;
+    PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER = `${PREFIX}core/defaultStackSynthesizer`;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/app.ts
+function countConstructs(construct) {
+  let ret = 0;
+  for (const _ of iterateDfsPreorder(construct)) {
+    ret++;
+  }
+  return ret;
+}
+function attachCustomSynthesis(construct, synthesis) {
+  addCustomSynthesis(construct, synthesis);
+}
+function emitPerformanceCountersFile() {
+  const filename = process.env[PERF_COUNTERS_FILE_ENV];
+  if (!filename) {
+    return;
+  }
+  const counters = {};
+  for (const [name, ctr] of Object.entries(readPerfCounters({ telemetry: true }))) {
+    counters[name] = ctr.total;
+    counters[`${name}(cnt)`] = ctr.count;
+  }
+  fs13.writeFileSync(filename, JSON.stringify({ counters }, void 0, 2), "utf-8");
+}
+function parseAsNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  const r = parseInt(`${x}`, 10);
+  return isNaN(r) ? void 0 : r;
+}
+var import_perf_hooks2, fs13, APP_INIT_HOOK_SYMBOL, DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS, SLOW_SYNTH_THRESHOLD_CTX, App, PERF_STATE;
+var init_app2 = __esm({
+  "../../aws-cdk-lib/core/lib/app.ts"() {
+    "use strict";
+    import_perf_hooks2 = require("perf_hooks");
+    fs13 = __toESM(require_lib5());
+    init_helpers_internal();
+    init_construct_iteration();
+    init_private_context();
+    init_synthesis();
+    init_prop_injectors();
+    init_stage();
+    init_cx_api();
+    init_core_construct_finders();
+    APP_INIT_HOOK_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+    DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS = 1e4;
+    SLOW_SYNTH_THRESHOLD_CTX = "@aws-cdk/core.slowSynthThreshold";
+    App = class extends Stage {
+      /**
+       * Return the app that is the root of the construct tree, if available.
+       */
+      static of(construct) {
+        return appOf(construct);
+      }
+      /**
+       * Checks if an object is an instance of the `App` class.
+       * @returns `true` if `obj` is an `App`.
+       * @param obj The object to evaluate
+       */
+      static isApp(obj) {
+        return APP_TYPE.isMarked(obj);
+      }
+      /**
+       * Include construct tree metadata as part of the Cloud Assembly.
+       *
+       * @internal
+       */
+      _treeMetadata;
+      initMark;
+      performanceReporting;
+      alreadySynthed = false;
+      /**
+       * Initializes a CDK application.
+       * @param props initialization properties
+       */
+      constructor(props = {}) {
+        super(void 0, "", {
+          outdir: props.outdir ?? process.env[OUTDIR_ENV]
+        });
+        this.initMark = import_perf_hooks2.performance.now();
+        if (!PERF_STATE.loadTimeMeasured) {
+          recordPerformanceEntry("phase:Load", {
+            durationMs: this.initMark,
+            telemetry: true
+          });
+          PERF_STATE.loadTimeMeasured = true;
+        }
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        if (props.policyValidationBeta1) {
+          this._addValidationPlugins(...props.policyValidationBeta1);
+        }
+        APP_TYPE.mark(this);
+        this.loadContext(props.context, props.postCliContext);
+        if (props.stackTraces === false) {
+          this.node.setContext(DISABLE_METADATA_STACK_TRACE, true);
+        }
+        if (props.defaultStackSynthesizer) {
+          this.node.setContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER, props.defaultStackSynthesizer);
+        }
+        const analyticsReporting = props.analyticsReporting ?? props.runtimeInfo;
+        if (analyticsReporting !== void 0) {
+          this.node.setContext(ANALYTICS_REPORTING_ENABLED_CONTEXT, analyticsReporting);
+        }
+        const autoSynth = props.autoSynth ?? OUTDIR_ENV in process.env;
+        if (autoSynth) {
+          process.once("beforeExit", () => this.synth({ errorOnDuplicateSynth: false }));
+        }
+        this._treeMetadata = props.treeMetadata ?? true;
+        this.performanceReporting = props.performanceReporting ?? this.node.tryGetContext(PERFORMANCE_REPORTING_ENABLED_CONTEXT) ?? true;
+        if (globalThis[APP_INIT_HOOK_SYMBOL]) {
+          globalThis[APP_INIT_HOOK_SYMBOL](this);
+        }
+      }
+      loadContext(defaults = {}, final = {}) {
+        for (const [k, v] of Object.entries(defaults)) {
+          this.node.setContext(k, v);
+        }
+        const context = {
+          ...this.readContextFromEnvironment(),
+          ...this.readContextFromTempFile()
+        };
+        for (const [k, v] of Object.entries(context)) {
+          this.node.setContext(k, v);
+        }
+        for (const [k, v] of Object.entries(final)) {
+          this.node.setContext(k, v);
+        }
+      }
+      /**
+       * Synthesize this App into a cloud assembly.
+       *
+       * Once an assembly has been synthesized, it cannot be modified. Subsequent
+       * calls will return the same assembly.
+       */
+      synth(options = {}) {
+        if (this.alreadySynthed) {
+          return super.synth(options);
+        }
+        this.alreadySynthed = true;
+        const startSynthMark = import_perf_hooks2.performance.now();
+        recordPerformanceEntry("phase:Construction", {
+          durationMs: startSynthMark - this.initMark,
+          telemetry: true
+        });
+        const ret = super.synth(options);
+        recordPerformanceEntry("phase:Synthesis", {
+          durationMs: import_perf_hooks2.performance.now() - startSynthMark,
+          telemetry: true
+        });
+        const totalAppTimeMs = import_perf_hooks2.performance.now() - this.initMark;
+        const stackCount = ret.stacksRecursively.length;
+        recordPerformanceEntry("count:Constructs", {
+          count: countConstructs(this),
+          durationMs: 0,
+          telemetry: true
+        });
+        if (this.shouldReportSlowSynth(totalAppTimeMs / stackCount)) {
+          emitPerformanceCountersFile();
+        }
+        resetCounters();
+        return ret;
+      }
+      readContextFromTempFile() {
+        const location = process.env[CONTEXT_OVERFLOW_LOCATION_ENV];
+        return location ? fs13.readJSONSync(location) : {};
+      }
+      readContextFromEnvironment() {
+        const contextJson = process.env[CONTEXT_ENV];
+        return contextJson ? JSON.parse(contextJson) : {};
+      }
+      shouldReportSlowSynth(perStackTime) {
+        if (!this.performanceReporting) {
+          return false;
+        }
+        const threshold = parseAsNumber(this.node.tryGetContext(SLOW_SYNTH_THRESHOLD_CTX)) ?? DEFAULT_SLOW_SYNTH_PER_STACK_THRESHOLD_MS;
+        return perStackTime >= threshold;
+      }
+    };
+    PERF_STATE = global[/* @__PURE__ */ Symbol.for("@aws-cdk/core.AppPerfState")] ??= {
+      loadTimeMeasured: false
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/context-provider.ts
+function extractProviderError(value) {
+  if (typeof value === "object" && value !== null) {
+    return value[import_cloud_assembly_api.PROVIDER_ERROR_KEY];
+  }
+  return void 0;
+}
+function colonQuote(xs) {
+  return xs.replace(/\$/g, "$$").replace(/:/g, "$:");
+}
+function propsToArray(props, keyPrefix = "") {
+  const ret = [];
+  for (const key of Object.keys(props)) {
+    if (props[key] === void 0) {
+      continue;
+    }
+    switch (typeof props[key]) {
+      case "object": {
+        ret.push(...propsToArray(props[key], `${keyPrefix}${key}.`));
+        break;
+      }
+      case "string": {
+        ret.push(`${keyPrefix}${key}=${colonQuote(props[key])}`);
+        break;
+      }
+      default: {
+        ret.push(`${keyPrefix}${key}=${JSON.stringify(props[key])}`);
+        break;
+      }
+    }
+  }
+  ret.sort();
+  return ret;
+}
+var import_constructs18, ContextProvider;
+var init_context_provider = __esm({
+  "../../aws-cdk-lib/core/lib/context-provider.ts"() {
+    "use strict";
+    import_constructs18 = __toESM(require_lib4());
+    init_annotations();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    init_cx_api();
+    ContextProvider = class {
+      /**
+       * @returns the context key or undefined if a key cannot be rendered (due to tokens used in any of the props)
+       */
+      static getKey(scope, options) {
+        const stack = stackOf(scope);
+        const props = {
+          ...options.includeEnvironment ?? true ? { account: stack.account, region: stack.region } : {},
+          ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+          ...options.props
+        };
+        if (Object.values(props).find((x) => Token.isUnresolved(x))) {
+          throw new ValidationError(
+            lit`ContextProviderPropsContainTokens`,
+            `Cannot determine scope for context provider ${options.provider}.
+This usually happens when one or more of the provider props have unresolved tokens`,
+            scope
+          );
+        }
+        const propStrings = propsToArray(props);
+        return {
+          key: `${options.provider}:${propStrings.join(":")}`,
+          props
+        };
+      }
+      static getValue(scope, options) {
+        if (options.mustExist !== void 0 && options.ignoreErrorOnMissingContext !== void 0) {
+          throw new ValidationError(lit`ConflictingMustExistOptions`, "Only supply one of 'mustExist' and 'ignoreErrorOnMissingContext'", scope);
+        }
+        const stack = stackOf(scope);
+        if (Token.isUnresolved(stack.account) || Token.isUnresolved(stack.region)) {
+          throw new ValidationError(lit`StackAccountRegionNotSpecified`, `Cannot retrieve value from context provider ${options.provider} since account/region are not specified at the stack level. Configure "env" with an account and region when you define your stack.See https://docs.aws.amazon.com/cdk/latest/guide/environments.html for more details.`, scope);
+        }
+        const { key, props } = this.getKey(scope, options);
+        const value = import_constructs18.Node.of(scope).tryGetContext(key);
+        const providerError = extractProviderError(value);
+        if (value === void 0 || providerError !== void 0) {
+          const ignoreErrorOnMissingContext = options.mustExist !== void 0 || options.ignoreErrorOnMissingContext !== void 0 ? options.mustExist !== void 0 ? !options.mustExist : options.ignoreErrorOnMissingContext : void 0;
+          const extendedProps = {
+            dummyValue: options.dummyValue,
+            // Even though we renamed the user-facing property, the field in the
+            // cloud assembly still has the original name, which is somewhat wrong
+            // because it's not about missing context.
+            ignoreErrorOnMissingContext,
+            ...options.additionalCacheKey ? { additionalCacheKey: options.additionalCacheKey } : {},
+            ...props
+          };
+          stack.reportMissingContextKey({
+            key,
+            provider: options.provider,
+            props: extendedProps
+          });
+          if (providerError !== void 0) {
+            Annotations.of(scope)._addTrackableError(lit`ContextProviderError`, providerError);
+          }
+          return { value: options.dummyValue };
+        }
+        return { value };
+      }
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/permissions-boundary.ts
+var PERMISSIONS_BOUNDARY_CONTEXT_KEY;
+var init_permissions_boundary = __esm({
+  "../../aws-cdk-lib/core/lib/permissions-boundary.ts"() {
+    "use strict";
+    PERMISSIONS_BOUNDARY_CONTEXT_KEY = "@aws-cdk/core:permissionsBoundary";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/logical-id.ts
+function validateLogicalId(logicalId) {
+  if (!VALID_LOGICALID_REGEX.test(logicalId)) {
+    throw new UnscopedValidationError(lit`LogicalAdhereRegularExpression`, `Logical ID must adhere to the regular expression: ${VALID_LOGICALID_REGEX.toString()}, got '${logicalId}'`);
+  }
+}
+var LogicalIDs, VALID_LOGICALID_REGEX;
+var init_logical_id = __esm({
+  "../../aws-cdk-lib/core/lib/private/logical-id.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    LogicalIDs = class {
+      /**
+       * The rename table (old to new)
+       */
+      renames = {};
+      /**
+       * All assigned names (new to old, may be identical)
+       *
+       * This is used to ensure that:
+       *
+       * - No 2 resources end up with the same final logical ID, unless they were the same to begin with.
+       * - All renames have been used at the end of renaming.
+       */
+      reverse = {};
+      /**
+       * Rename a logical ID from an old ID to a new ID
+       */
+      addRename(oldId, newId) {
+        if (oldId in this.renames) {
+          throw new UnscopedValidationError(lit`RenameAlreadyRegistered`, `A rename has already been registered for '${oldId}'`);
+        }
+        this.renames[oldId] = newId;
+      }
+      /**
+       * Return the renamed version of an ID or the original ID.
+       */
+      applyRename(oldId) {
+        let newId = oldId;
+        if (oldId in this.renames) {
+          newId = this.renames[oldId];
+        }
+        if (newId in this.reverse && this.reverse[newId] !== oldId) {
+          throw new UnscopedValidationError(lit`ObjectsAssignedSameLogical`, `Two objects have been assigned the same Logical ID: '${this.reverse[newId]}' and '${oldId}' are now both named '${newId}'.`);
+        }
+        this.reverse[newId] = oldId;
+        validateLogicalId(newId);
+        return newId;
+      }
+      /**
+       * Throw an error if not all renames have been used
+       *
+       * This is to assure that users didn't make typos when registering renames.
+       */
+      assertAllRenamesApplied() {
+        const keys = /* @__PURE__ */ new Set();
+        Object.keys(this.renames).forEach(keys.add.bind(keys));
+        Object.keys(this.reverse).map((newId) => {
+          keys.delete(this.reverse[newId]);
+        });
+        if (keys.size !== 0) {
+          const unusedRenames = Array.from(keys.values());
+          throw new UnscopedValidationError(lit`FollowingLogicalWereAttempted`, `The following Logical IDs were attempted to be renamed, but not found: ${unusedRenames.join(", ")}`);
+        }
+      }
+    };
+    VALID_LOGICALID_REGEX = /^[A-Za-z0-9]{1,255}$/;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts
+function isReusableStackSynthesizer(x) {
+  return !!x.reusableBind;
+}
+var init_types3 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/types.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts
+function addStackArtifactToAssembly(session, stack, stackProps, additionalStackDependencies) {
+  const stackTags = stack.tags.tagValues();
+  if (Object.entries(stackTags).length > 0) {
+    const resolvedTags = Object.entries(stackTags).filter(([k, v]) => !(Token.isUnresolved(k) || Token.isUnresolved(v)));
+    const unresolvedTags = Object.entries(stackTags).filter(([k, v]) => Token.isUnresolved(k) || Token.isUnresolved(v));
+    if (unresolvedTags.length > 0) {
+      const rendered = unresolvedTags.map(([k, v]) => `${Token.isUnresolved(k) ? "" : k}=${Token.isUnresolved(v) ? "" : v}`).join(", ");
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+        `Ignoring stack tags that contain deploy-time values (found: ${rendered}). Apply tags containing deploy-time values to resources only, avoid tagging stacks (for example using { excludeResourceTypes: ['aws:cdk:stack'] }).`
+      );
+    }
+    if (resolvedTags.length > 0) {
+      stack.node.addMetadata(
+        cloud_assembly_schema_exports.ArtifactMetadataEntryType.STACK_TAGS,
+        resolvedTags.map(([key, value]) => ({ key, value }))
+      );
+    }
+  }
+  const deps = [
+    ...stack.dependencies.map((s) => s.artifactId),
+    ...additionalStackDependencies
+  ];
+  const meta = collectStackMetadata(stack);
+  const stackNameProperty = stack.stackName === stack.artifactId ? {} : { stackName: stack.stackName };
+  const properties = {
+    templateFile: stack.templateFile,
+    terminationProtection: stack.terminationProtection,
+    tags: nonEmptyDict(stackTags),
+    validateOnSynth: session.validateOnSynth,
+    notificationArns: stack._notificationArns,
+    ...stackProps,
+    ...stackNameProperty
+  };
+  const metaFile = `${stack.artifactId}.metadata.json`;
+  const hasMeta = Object.keys(meta).length > 0;
+  if (hasMeta) {
+    fs14.writeFileSync(path18.join(session.assembly.outdir, metaFile), JSON.stringify(meta, void 0, 2), "utf-8");
+  }
+  session.assembly.addArtifact(stack.artifactId, {
+    type: cloud_assembly_schema_exports.ArtifactType.AWS_CLOUDFORMATION_STACK,
+    environment: stack.environment,
+    properties,
+    dependencies: deps.length > 0 ? deps : void 0,
+    additionalMetadataFile: hasMeta ? metaFile : void 0,
+    displayName: stack.node.path
+  });
+}
+function collectStackMetadata(stack) {
+  const output = {};
+  const queue = [stack];
+  let next;
+  while (next = queue.shift()) {
+    if (STACK_TYPE.isMarked(next) && next._isTopLevelStack && next !== stack) {
+      continue;
+    }
+    handleNode(next);
+    queue.push(...next.node.children);
+  }
+  return output;
+  function handleNode(node) {
+    if (node.node.metadata.length > 0) {
+      output[import_constructs19.Node.PATH_SEP + node.node.path] = node.node.metadata.map((md) => {
+        if ([
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.ERROR,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.WARN,
+          cloud_assembly_schema_exports.ArtifactMetadataEntryType.INFO
+        ].includes(md.type)) {
+          return md;
+        }
+        const resolved = stack.resolve(md);
+        return resolved;
+      });
+    }
+  }
+}
+function contentHash(content) {
+  return crypto8.createHash("sha256").update(content).digest("hex");
+}
+function assertBound(x) {
+  if (x === null && x === void 0) {
+    throw new UnscopedValidationError(lit`CallBindstackFirst`, "You must call bindStack() first");
+  }
+}
+function nonEmptyDict(xs) {
+  return Object.keys(xs).length > 0 ? xs : void 0;
+}
+var crypto8, fs14, path18, import_constructs19;
+var init_shared2 = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/_shared.ts"() {
+    "use strict";
+    crypto8 = __toESM(require("crypto"));
+    fs14 = __toESM(require("fs"));
+    path18 = __toESM(require("path"));
+    import_constructs19 = __toESM(require_lib4());
+    init_cloud_assembly_schema();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts
+function validateFileAssetSource(asset) {
+  if (!!asset.executable === !!asset.fileName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyFilenameExecutable`, `Exactly one of 'fileName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (!!asset.packaging !== !!asset.fileName) {
+    throw new UnscopedValidationError(lit`PackagingExpectedCombinationFilename`, `'packaging' is expected in combination with 'fileName', got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+}
+function validateDockerImageAssetSource(asset) {
+  if (!!asset.executable === !!asset.directoryName) {
+    throw new UnscopedValidationError(lit`IsRequiredExactlyDirectorynameExecutable`, `Exactly one of 'directoryName' or 'executable' is required, got: ${JSON.stringify(asset)}`);
+  }
+  if (Token.isUnresolved(asset.displayName)) {
+    throw new UnscopedValidationError(lit`DisplaynameContainToken`, `'displayName' may not contain a Token, got: ${JSON.stringify(asset.displayName)}`);
+  }
+  check("dockerBuildArgs");
+  check("dockerBuildContexts");
+  check("dockerBuildTarget");
+  check("dockerOutputs");
+  check("dockerFile");
+  function check(key) {
+    if (asset[key] && !asset.directoryName) {
+      throw new UnscopedValidationError(lit`OnlyAllowedCombinationDirectoryname`, `'${key}' is only allowed in combination with 'directoryName', got: ${JSON.stringify(asset)}`);
+    }
+  }
+}
+var fs15, path19, AssetManifestBuilder;
+var init_asset_manifest_builder = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts"() {
+    "use strict";
+    fs15 = __toESM(require("fs"));
+    path19 = __toESM(require("path"));
+    init_cloud_assembly_schema();
+    init_assets();
+    init_errors();
+    init_string_specializer();
+    init_token();
+    init_shared2();
+    init_literal_string();
+    AssetManifestBuilder = class {
+      files = {};
+      dockerImages = {};
+      /**
+       * Add a file asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, copy the
+       * file extension over, and set the prefix.
+       */
+      defaultAddFileAsset(stack, asset, target, options) {
+        validateFileAssetSource(asset);
+        const extension = asset.fileName != void 0 ? path19.extname(asset.fileName) : "";
+        const objectKey = (target.bucketPrefix ?? "") + asset.sourceHash + (asset.packaging === "zip" /* ZIP_DIRECTORY */ ? ".zip" : extension);
+        return this.addFileAsset(stack, asset.sourceHash, {
+          path: asset.fileName,
+          executable: asset.executable,
+          packaging: asset.packaging
+        }, {
+          bucketName: target.bucketName,
+          objectKey,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a docker image asset to the manifest with default settings
+       *
+       * Derive the region from the stack, use the asset hash as the key, and set the prefix.
+       */
+      defaultAddDockerImageAsset(stack, asset, target, options) {
+        validateDockerImageAssetSource(asset);
+        const imageTag = `${target.dockerTagPrefix ?? ""}${asset.sourceHash}`;
+        const sourceHash = asset.assetName ? `${asset.assetName}-${asset.sourceHash}` : asset.sourceHash;
+        return this.addDockerImageAsset(stack, sourceHash, {
+          executable: asset.executable,
+          directory: asset.directoryName,
+          dockerBuildArgs: asset.dockerBuildArgs,
+          dockerBuildContexts: asset.dockerBuildContexts,
+          dockerBuildSecrets: asset.dockerBuildSecrets,
+          dockerBuildSsh: asset.dockerBuildSsh,
+          dockerBuildTarget: asset.dockerBuildTarget,
+          dockerFile: asset.dockerFile,
+          networkMode: asset.networkMode,
+          platform: asset.platform,
+          dockerOutputs: asset.dockerOutputs,
+          cacheFrom: asset.dockerCacheFrom,
+          cacheTo: asset.dockerCacheTo,
+          cacheDisabled: asset.dockerCacheDisabled
+        }, {
+          repositoryName: target.repositoryName,
+          imageTag,
+          region: resolvedOr(stack.region, void 0),
+          assumeRoleArn: target.role?.assumeRoleArn,
+          assumeRoleExternalId: target.role?.assumeRoleExternalId,
+          assumeRoleAdditionalOptions: target.role?.assumeRoleAdditionalOptions
+        }, options);
+      }
+      /**
+       * Add a file asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addFileAsset(stack, sourceHash, source, dest, options) {
+        if (!this.files[sourceHash]) {
+          this.files[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.files[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Add a docker asset source and destination to the manifest
+       *
+       * sourceHash should be unique for every source.
+       */
+      addDockerImageAsset(stack, sourceHash, source, dest, options) {
+        if (!this.dockerImages[sourceHash]) {
+          this.dockerImages[sourceHash] = {
+            displayName: options?.displayName,
+            source,
+            destinations: {}
+          };
+        }
+        const baseEnvName = this.manifestEnvName(stack);
+        const destHash = contentHash(JSON.stringify(dest)).slice(0, 8);
+        const destinationKey = `${baseEnvName}-${destHash}`;
+        this.dockerImages[sourceHash].destinations[destinationKey] = dest;
+        return dest;
+      }
+      /**
+       * Whether there are any assets registered in the manifest
+       */
+      get hasAssets() {
+        return Object.keys(this.files).length + Object.keys(this.dockerImages).length > 0;
+      }
+      /**
+       * Write the manifest to disk, and add it to the synthesis session
+       *
+       * Return the artifact id, which should be added to the `additionalDependencies`
+       * field of the stack artifact.
+       */
+      emitManifest(stack, session, options = {}, dependencies = []) {
+        const artifactId = `${stack.artifactId}.assets`;
+        const manifestFile = `${artifactId}.json`;
+        const outPath = path19.join(session.assembly.outdir, manifestFile);
+        const manifest = {
+          version: cloud_assembly_schema_exports.Manifest.version(),
+          files: this.files,
+          dockerImages: this.dockerImages
+        };
+        fs15.writeFileSync(outPath, JSON.stringify(manifest, void 0, 2));
+        session.assembly.addArtifact(artifactId, {
+          type: cloud_assembly_schema_exports.ArtifactType.ASSET_MANIFEST,
+          properties: {
+            file: manifestFile,
+            ...options
+          },
+          dependencies: dependencies.length > 0 ? dependencies : void 0
+        });
+        return artifactId;
+      }
+      manifestEnvName(stack) {
+        return [
+          resolvedOr(stack.account, "current_account"),
+          resolvedOr(stack.region, "current_region")
+        ].join("-");
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-rule.ts
+var CfnRule;
+var init_cfn_rule = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-rule.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+    CfnRule = class extends CfnRefElement {
+      ruleCondition;
+      assertions;
+      /**
+       * Creates and adds a rule.
+       * @param scope The parent construct.
+       * @param props The rule props.
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        this.ruleCondition = props && props.ruleCondition;
+        this.assertions = props && props.assertions;
+      }
+      /**
+       * Adds an assertion to the rule.
+       * @param condition The expression to evaluation.
+       * @param description The description of the assertion.
+       */
+      addAssertion(condition, description) {
+        if (!this.assertions) {
+          this.assertions = [];
+        }
+        this.assertions.push({
+          assert: condition,
+          assertDescription: description
+        });
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        return {
+          Rules: {
+            [this.logicalId]: {
+              RuleCondition: this.ruleCondition,
+              Assertions: capitalizePropertyNames(this, this.assertions)
+            }
+          }
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts
+function stackTemplateFileAsset(stack, session) {
+  const templatePath = path20.join(session.assembly.outdir, stack.templateFile);
+  if (!fs16.existsSync(templatePath)) {
+    throw new ValidationError(lit`StackTemplate`, `Stack template ${stack.stackName} not written yet: ${templatePath}`, stack);
+  }
+  const template = fs16.readFileSync(templatePath, { encoding: "utf-8" });
+  const sourceHash = contentHash(template);
+  return {
+    fileName: stack.templateFile,
+    packaging: "file" /* FILE */,
+    sourceHash,
+    deployTime: true,
+    displayName: `${stack.stackName} Template`
+  };
+}
+function addBootstrapVersionRule(stack, requiredVersion, bootstrapStackVersionSsmParameter) {
+  if (stack.node.tryFindChild("BootstrapVersion")) {
+    return;
+  }
+  const param = new CfnParameter(stack, "BootstrapVersion", {
+    type: "AWS::SSM::Parameter::Value",
+    description: `Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. ${import_cloud_assembly_api.SSMPARAM_NO_INVALIDATE}`,
+    default: bootstrapStackVersionSsmParameter
+  });
+  const oldVersions = range3(1, requiredVersion).map((n) => `${n}`);
+  new CfnRule(stack, "CheckBootstrapVersion", {
+    assertions: [
+      {
+        assert: Fn.conditionNot(Fn.conditionContains(oldVersions, param.valueAsString)),
+        assertDescription: `CDK bootstrap stack version ${requiredVersion} required. Please run 'cdk bootstrap' with a recent version of the CDK CLI.`
+      }
+    ]
+  });
+}
+function range3(startIncl, endExcl) {
+  const ret = new Array();
+  for (let i = startIncl; i < endExcl; i++) {
+    ret.push(i);
+  }
+  return ret;
+}
+function stackLocationOrInstrinsics(stack) {
+  return {
+    account: resolvedOr(stack.account, "${AWS::AccountId}"),
+    region: resolvedOr(stack.region, "${AWS::Region}"),
+    urlSuffix: resolvedOr(stack.urlSuffix, "${AWS::URLSuffix}")
+  };
+}
+function cfnify(s) {
+  return s.indexOf("${") > -1 ? Fn.sub(s) : s;
+}
+var fs16, path20, StackSynthesizer;
+var init_stack_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/stack-synthesizer.ts"() {
+    "use strict";
+    fs16 = __toESM(require("fs"));
+    path20 = __toESM(require("path"));
+    init_shared2();
+    init_cx_api();
+    init_assets();
+    init_cfn_fn();
+    init_cfn_parameter();
+    init_cfn_rule();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    StackSynthesizer = class {
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return void 0;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return void 0;
+      }
+      get cloudFormationExecutionRole() {
+        return void 0;
+      }
+      _boundStack;
+      /**
+       * Bind to the stack this environment is going to be used on
+       *
+       * Must be called before any of the other methods are called.
+       */
+      bind(stack) {
+        if (this._boundStack !== void 0) {
+          throw new ValidationError(lit`StackSynthesizerOneStackCreate`, "A StackSynthesizer can only be used for one Stack: create a new instance to use with a different Stack", stack);
+        }
+        this._boundStack = stack;
+      }
+      /**
+       * Have the stack write out its template
+       *
+       * @deprecated Use `synthesizeTemplate` instead
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session);
+      }
+      /**
+       * Write the stack template to the given session
+       *
+       * Return a descriptor that represents the stack template as a file asset
+       * source, for adding to an asset manifest (if desired). This can be used to
+       * have the asset manifest system (`cdk-assets`) upload the template to S3
+       * using the appropriate role, so that afterwards only a CloudFormation
+       * deployment is necessary.
+       *
+       * If the template is uploaded as an asset, the `stackTemplateAssetObjectUrl`
+       * property should be set when calling `emitArtifact.`
+       *
+       * If the template is *NOT* uploaded as an asset first and the template turns
+       * out to be >50KB, it will need to be uploaded to S3 anyway. At that point
+       * the credentials will be the same identity that is doing the `UpdateStack`
+       * call, which may not have the right permissions to write to S3.
+       */
+      synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        this.boundStack._synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions);
+        return stackTemplateFileAsset(this.boundStack, session);
+      }
+      /**
+       * Write the stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session.
+       *
+       * @deprecated Use `emitArtifact` instead
+       */
+      emitStackArtifact(stack, session, options = {}) {
+        addStackArtifactToAssembly(session, stack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Write the CloudFormation stack artifact to the session
+       *
+       * Use default settings to add a CloudFormationStackArtifact artifact to
+       * the given synthesis session. The Stack artifact will control the settings for the
+       * CloudFormation deployment.
+       */
+      emitArtifact(session, options = {}) {
+        addStackArtifactToAssembly(session, this.boundStack, options ?? {}, options.additionalDependencies ?? []);
+      }
+      /**
+       * Add a CfnRule to the bound stack that checks whether an SSM parameter exceeds a given version
+       *
+       * This will modify the template, so must be called before the stack is synthesized.
+       */
+      addBootstrapVersionRule(requiredVersion, bootstrapStackVersionSsmParameter) {
+        addBootstrapVersionRule(this.boundStack, requiredVersion, bootstrapStackVersionSsmParameter);
+      }
+      /**
+       * Retrieve the bound stack
+       *
+       * Fails if the stack hasn't been bound yet.
+       */
+      get boundStack() {
+        if (!this._boundStack) {
+          throw new UnscopedValidationError(lit`StackSynthesizerBoundStackFirst`, "The StackSynthesizer must be bound to a Stack first before boundStack() can be called");
+        }
+        return this._boundStack;
+      }
+      /**
+       * Turn a file asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromFileAsset(location) {
+        const { region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        const httpUrl = cfnify(
+          `https://s3.${region}.${urlSuffix2}/${location.bucketName}/${location.objectKey}`
+        );
+        const s3ObjectUrlWithPlaceholders = `s3://${location.bucketName}/${location.objectKey}`;
+        return {
+          bucketName: cfnify(location.bucketName),
+          objectKey: cfnify(location.objectKey),
+          httpUrl,
+          s3ObjectUrl: cfnify(s3ObjectUrlWithPlaceholders),
+          s3ObjectUrlWithPlaceholders,
+          s3Url: httpUrl
+        };
+      }
+      /**
+       * Turn a docker asset location into a CloudFormation representation of that location
+       *
+       * If any of the fields contain placeholders, the result will be wrapped in a `Fn.sub`.
+       */
+      cloudFormationLocationFromDockerImageAsset(dest) {
+        const { account, region, urlSuffix: urlSuffix2 } = stackLocationOrInstrinsics(this.boundStack);
+        return {
+          repositoryName: cfnify(dest.repositoryName),
+          imageUri: cfnify(
+            `${account}.dkr.ecr.${region}.${urlSuffix2}/${dest.repositoryName}:${dest.imageTag}`
+          ),
+          imageTag: cfnify(dest.imageTag)
+        };
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts
+var BOOTSTRAP_QUALIFIER_CONTEXT, MIN_BOOTSTRAP_STACK_VERSION, MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION, MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION, DefaultStackSynthesizer;
+var init_default_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/default-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+    BOOTSTRAP_QUALIFIER_CONTEXT = "@aws-cdk/core:bootstrapQualifier";
+    MIN_BOOTSTRAP_STACK_VERSION = 6;
+    MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION = 8;
+    MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION = 22;
+    DefaultStackSynthesizer = class _DefaultStackSynthesizer extends StackSynthesizer {
+      constructor(props = {}) {
+        super();
+        this.props = props;
+        this.useLookupRoleForStackOperations = props.useLookupRoleForStackOperations ?? true;
+        for (const key in props) {
+          if (props.hasOwnProperty(key)) {
+            validateNoToken(key);
+          }
+        }
+        function validateNoToken(key) {
+          const prop = props[key];
+          if (typeof prop === "string" && Token.isUnresolved(prop)) {
+            throw new UnscopedValidationError(lit`DefaultSynthesizerTokenInProperty`, `DefaultStackSynthesizer property '${key}' cannot contain tokens; only the following placeholder strings are allowed: ` + [
+              "${Qualifier}",
+              (void 0).CURRENT_REGION,
+              (void 0).CURRENT_ACCOUNT,
+              (void 0).CURRENT_PARTITION
+            ].join(", "));
+          }
+        }
+      }
+      props;
+      /**
+       * Default ARN qualifier
+       */
+      static DEFAULT_QUALIFIER = "hnb659fds";
+      /**
+       * Default CloudFormation role ARN.
+       */
+      static DEFAULT_CLOUDFORMATION_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-cfn-exec-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default deploy role ARN.
+       */
+      static DEFAULT_DEPLOY_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-deploy-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for file (S3) assets.
+       */
+      static DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-file-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default asset publishing role ARN for image (ECR) assets.
+       */
+      static DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-image-publishing-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default lookup role ARN for missing values.
+       */
+      static DEFAULT_LOOKUP_ROLE_ARN = "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-${Qualifier}-lookup-role-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default image assets repository name
+       */
+      static DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME = "cdk-${Qualifier}-container-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Default file assets bucket name
+       */
+      static DEFAULT_FILE_ASSETS_BUCKET_NAME = "cdk-${Qualifier}-assets-${AWS::AccountId}-${AWS::Region}";
+      /**
+       * Name of the CloudFormation Export with the asset key name
+       */
+      static DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME = "CdkBootstrap-${Qualifier}-FileAssetKeyArn";
+      /**
+       * Default file asset prefix
+       */
+      static DEFAULT_FILE_ASSET_PREFIX = "";
+      /**
+       * Default Docker asset prefix
+       */
+      static DEFAULT_DOCKER_ASSET_PREFIX = "";
+      /**
+       * Default bootstrap stack version SSM parameter.
+       */
+      static DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER = "/cdk-bootstrap/${Qualifier}/version";
+      bucketName;
+      repositoryName;
+      _deployRoleArn;
+      _cloudFormationExecutionRoleArn;
+      fileAssetPublishingRoleArn;
+      imageAssetPublishingRoleArn;
+      lookupRoleArn;
+      useLookupRoleForStackOperations;
+      qualifier;
+      bucketPrefix;
+      dockerTagPrefix;
+      bootstrapStackVersionSsmParameter;
+      assetManifest = new AssetManifestBuilder();
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      /**
+       * The qualifier used to bootstrap this stack
+       */
+      get bootstrapQualifier() {
+        return this.qualifier;
+      }
+      /**
+       * The role used to lookup for this stack
+       */
+      get lookupRole() {
+        return this.lookupRoleArn;
+      }
+      get cloudFormationExecutionRole() {
+        return this._cloudFormationExecutionRoleArn;
+      }
+      bind(stack) {
+        super.bind(stack);
+        const qualifier = this.props.qualifier ?? stack.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? _DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        this.qualifier = qualifier;
+        const spec = new StringSpecializer(stack, qualifier);
+        this.bucketName = spec.specialize(this.props.fileAssetsBucketName ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSETS_BUCKET_NAME);
+        this.repositoryName = spec.specialize(this.props.imageAssetsRepositoryName ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME);
+        this._deployRoleArn = spec.specialize(this.props.deployRoleArn ?? _DefaultStackSynthesizer.DEFAULT_DEPLOY_ROLE_ARN);
+        this._cloudFormationExecutionRoleArn = spec.specialize(this.props.cloudFormationExecutionRole ?? _DefaultStackSynthesizer.DEFAULT_CLOUDFORMATION_ROLE_ARN);
+        this.fileAssetPublishingRoleArn = spec.specialize(this.props.fileAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN);
+        this.imageAssetPublishingRoleArn = spec.specialize(this.props.imageAssetPublishingRoleArn ?? _DefaultStackSynthesizer.DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN);
+        this.lookupRoleArn = spec.specialize(this.props.lookupRoleArn ?? _DefaultStackSynthesizer.DEFAULT_LOOKUP_ROLE_ARN);
+        this.bucketPrefix = spec.specialize(this.props.bucketPrefix ?? _DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PREFIX);
+        this.dockerTagPrefix = spec.specialize(this.props.dockerTagPrefix ?? _DefaultStackSynthesizer.DEFAULT_DOCKER_ASSET_PREFIX);
+        this.bootstrapStackVersionSsmParameter = spec.qualifierOnly(this.props.bootstrapStackVersionSsmParameter ?? _DefaultStackSynthesizer.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER);
+      }
+      addFileAsset(asset) {
+        assertBound(this.bucketName);
+        const location = this.assetManifest.defaultAddFileAsset(this.boundStack, asset, {
+          bucketName: this.bucketName,
+          bucketPrefix: this.bucketPrefix,
+          role: this.fileAssetPublishingRoleArn ? {
+            assumeRoleArn: this.fileAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.fileAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.fileAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromFileAsset(location);
+      }
+      addDockerImageAsset(asset) {
+        assertBound(this.repositoryName);
+        const location = this.assetManifest.defaultAddDockerImageAsset(this.boundStack, asset, {
+          repositoryName: this.repositoryName,
+          dockerTagPrefix: this.dockerTagPrefix,
+          role: this.imageAssetPublishingRoleArn ? {
+            assumeRoleArn: this.imageAssetPublishingRoleArn,
+            assumeRoleExternalId: this.props.imageAssetPublishingExternalId,
+            assumeRoleAdditionalOptions: this.props.imageAssetPublishingRoleAdditionalOptions
+          } : void 0
+        }, {
+          displayName: asset.displayName
+        });
+        return this.cloudFormationLocationFromDockerImageAsset(location);
+      }
+      /**
+       * Synthesize the stack template to the given session, passing the configured lookup role ARN
+       */
+      synthesizeStackTemplate(stack, session) {
+        stack._synthesizeTemplate(session, this.lookupRoleArn, this.props.lookupRoleExternalId, this.props.lookupRoleAdditionalOptions);
+      }
+      /**
+       * Return the currently bound stack
+       *
+       * @deprecated Use `boundStack` instead.
+       */
+      get stack() {
+        return this.boundStack;
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        assertBound(this.qualifier);
+        if (this.props.generateBootstrapVersionRule ?? true) {
+          this.addBootstrapVersionRule(this._requiredBootstrapVersionForDeployment, this.bootstrapStackVersionSsmParameter);
+        }
+        const templateAssetSource = this.synthesizeTemplate(
+          session,
+          this.lookupRoleArn,
+          this.props.lookupRoleExternalId,
+          this.props.lookupRoleAdditionalOptions
+        );
+        const templateAsset = this.addFileAsset(templateAssetSource);
+        const assetManifestId = this.assetManifest.emitManifest(this.boundStack, session, {
+          requiresBootstrapStackVersion: this._requiredBoostrapVersionForAssets,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+        });
+        this.emitArtifact(session, {
+          assumeRoleExternalId: this.props.deployRoleExternalId,
+          assumeRoleArn: this._deployRoleArn,
+          assumeRoleAdditionalOptions: this.props.deployRoleAdditionalOptions,
+          cloudFormationExecutionRoleArn: this._cloudFormationExecutionRoleArn,
+          stackTemplateAssetObjectUrl: templateAsset.s3ObjectUrlWithPlaceholders,
+          requiresBootstrapStackVersion: this._requiredBootstrapVersionForDeployment,
+          bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter,
+          additionalDependencies: [assetManifestId],
+          lookupRole: this.useLookupRoleForStackOperations && this.lookupRoleArn ? {
+            arn: this.lookupRoleArn,
+            assumeRoleExternalId: this.props.lookupRoleExternalId,
+            assumeRoleAdditionalOptions: this.props.lookupRoleAdditionalOptions,
+            requiresBootstrapStackVersion: this._requiredBootstrapVersionForLookup,
+            bootstrapStackVersionSsmParameter: this.bootstrapStackVersionSsmParameter
+          } : void 0
+        });
+      }
+      get _requiredBoostrapVersionForAssets() {
+        if (this.props.fileAssetPublishingRoleAdditionalOptions?.Tags || this.props.imageAssetPublishingRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForDeployment() {
+        if (this.props.deployRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_BOOTSTRAP_STACK_VERSION;
+      }
+      get _requiredBootstrapVersionForLookup() {
+        if (this.props.lookupRoleAdditionalOptions?.Tags) {
+          return MIN_SESSION_TAGS_BOOTSTRAP_STACK_VERSION;
+        }
+        return MIN_LOOKUP_ROLE_BOOTSTRAP_STACK_VERSION;
+      }
+      /**
+       * Returns the ARN of the deploy Role.
+       */
+      get deployRoleArn() {
+        if (!this._deployRoleArn) {
+          throw new UnscopedValidationError(lit`DeployRoleArnGetterOnlyCalled`, "deployRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._deployRoleArn;
+      }
+      /**
+       * Returns the ARN of the CFN execution Role.
+       */
+      get cloudFormationExecutionRoleArn() {
+        if (!this._cloudFormationExecutionRoleArn) {
+          throw new UnscopedValidationError(lit`CloudFormationExecutionRoleArnGetterOnlyCalled`, "cloudFormationExecutionRoleArn getter can only be called after the synthesizer has been bound to a Stack");
+        }
+        return this._cloudFormationExecutionRoleArn;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/asset-parameters.ts
+var import_constructs20, FileAssetParameters;
+var init_asset_parameters = __esm({
+  "../../aws-cdk-lib/core/lib/private/asset-parameters.ts"() {
+    "use strict";
+    import_constructs20 = __toESM(require_lib4());
+    init_cfn_parameter();
+    FileAssetParameters = class extends import_constructs20.Construct {
+      bucketNameParameter;
+      objectKeyParameter;
+      artifactHashParameter;
+      constructor(scope, id) {
+        super(scope, id);
+        this.bucketNameParameter = new CfnParameter(this, "S3Bucket", {
+          type: "String",
+          description: `S3 bucket for asset "${id}"`
+        });
+        this.objectKeyParameter = new CfnParameter(this, "S3VersionKey", {
+          type: "String",
+          description: `S3 key for asset version "${id}"`
+        });
+        this.artifactHashParameter = new CfnParameter(this, "ArtifactHash", {
+          description: `Artifact hash for asset "${id}"`,
+          type: "String"
+        });
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts
+function withoutDeprecationWarnings(block) {
+  const orig = process.env.JSII_DEPRECATED;
+  process.env.JSII_DEPRECATED = "quiet";
+  try {
+    return block();
+  } finally {
+    process.env.JSII_DEPRECATED = orig;
+  }
+}
+var import_constructs21, ASSETS_ECR_REPOSITORY_NAME, ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY, LegacyStackSynthesizer;
+var init_legacy = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/legacy.ts"() {
+    "use strict";
+    import_constructs21 = __toESM(require_lib4());
+    init_shared2();
+    init_stack_synthesizer();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_fn();
+    init_errors();
+    init_asset_parameters();
+    init_literal_string();
+    ASSETS_ECR_REPOSITORY_NAME = "aws-cdk/assets";
+    ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY = "assets-ecr-repository-name";
+    LegacyStackSynthesizer = class extends StackSynthesizer {
+      cycle = false;
+      /**
+       * Includes all parameters synthesized for assets (lazy).
+       */
+      _assetParameters;
+      /**
+       * The image ID of all the docker image assets that were already added to this
+       * stack (to avoid duplication).
+       */
+      addedImageAssets = /* @__PURE__ */ new Set();
+      addFileAsset(asset) {
+        if (this.cycle) {
+          return this.doAddFileAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addFileAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      addDockerImageAsset(asset) {
+        if (this.cycle) {
+          return this.doAddDockerImageAsset(asset);
+        }
+        this.cycle = true;
+        try {
+          const stack = this.boundStack;
+          return withoutDeprecationWarnings(() => stack.addDockerImageAsset(asset));
+        } finally {
+          this.cycle = false;
+        }
+      }
+      /**
+       * Synthesize the associated stack to the session
+       */
+      synthesize(session) {
+        this.synthesizeTemplate(session);
+        this.emitArtifact(session);
+      }
+      /**
+       * Produce a bound Stack Synthesizer for the given stack.
+       *
+       * This method may be called more than once on the same object.
+       */
+      reusableBind(stack) {
+        const copy = Object.create(this);
+        copy.bind(stack);
+        return copy;
+      }
+      doAddDockerImageAsset(asset) {
+        const repositoryNameOverride = this.boundStack.node.tryGetContext(ASSETS_ECR_REPOSITORY_NAME_OVERRIDE_CONTEXT_KEY);
+        const repositoryName = asset.repositoryName ?? repositoryNameOverride ?? ASSETS_ECR_REPOSITORY_NAME;
+        const imageTag = asset.sourceHash;
+        const assetId = asset.sourceHash;
+        if (!this.addedImageAssets.has(assetId)) {
+          if (!asset.directoryName) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            repositoryName,
+            imageTag,
+            id: assetId,
+            packaging: "container-image",
+            path: asset.directoryName,
+            sourceHash: asset.sourceHash,
+            buildArgs: asset.dockerBuildArgs,
+            buildContexts: asset.dockerBuildContexts,
+            buildSecrets: asset.dockerBuildSecrets,
+            buildSsh: asset.dockerBuildSsh,
+            target: asset.dockerBuildTarget,
+            file: asset.dockerFile,
+            networkMode: asset.networkMode,
+            platform: asset.platform,
+            outputs: asset.dockerOutputs,
+            cacheFrom: asset.dockerCacheFrom,
+            cacheTo: asset.dockerCacheTo,
+            cacheDisabled: asset.dockerCacheDisabled
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+          this.addedImageAssets.add(assetId);
+        }
+        return {
+          imageUri: `${this.boundStack.account}.dkr.ecr.${this.boundStack.region}.${this.boundStack.urlSuffix}/${repositoryName}:${imageTag}`,
+          repositoryName
+        };
+      }
+      doAddFileAsset(asset) {
+        let params = this.assetParameters.node.tryFindChild(asset.sourceHash);
+        if (!params) {
+          params = new FileAssetParameters(this.assetParameters, asset.sourceHash);
+          if (!asset.fileName || !asset.packaging) {
+            throw new UnscopedValidationError(lit`LegacyStackSynthesizerSupportType`, `LegacyStackSynthesizer does not support this type of file asset: ${JSON.stringify(asset)}`);
+          }
+          const metadata = {
+            path: asset.fileName,
+            id: asset.sourceHash,
+            packaging: asset.packaging,
+            sourceHash: asset.sourceHash,
+            s3BucketParameter: params.bucketNameParameter.logicalId,
+            s3KeyParameter: params.objectKeyParameter.logicalId,
+            artifactHashParameter: params.artifactHashParameter.logicalId
+          };
+          this.boundStack.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.ASSET, metadata);
+        }
+        const bucketName = params.bucketNameParameter.valueAsString;
+        const encodedKey = params.objectKeyParameter.valueAsString;
+        const s3Prefix = Fn.select(0, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const s3Filename = Fn.select(1, Fn.split(import_cloud_assembly_api.ASSET_PREFIX_SEPARATOR, encodedKey));
+        const objectKey = `${s3Prefix}${s3Filename}`;
+        const httpUrl = `https://s3.${this.boundStack.region}.${this.boundStack.urlSuffix}/${bucketName}/${objectKey}`;
+        const s3ObjectUrl = `s3://${bucketName}/${objectKey}`;
+        return { bucketName, objectKey, httpUrl, s3ObjectUrl, s3Url: httpUrl };
+      }
+      get assetParameters() {
+        assertBound(this.boundStack);
+        if (!this._assetParameters) {
+          this._assetParameters = new import_constructs21.Construct(this.boundStack, "AssetParameters");
+        }
+        return this._assetParameters;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts
+var init_bootstrapless_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/bootstrapless-synthesizer.ts"() {
+    "use strict";
+    init_default_synthesizer();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts
+var init_nested = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/nested.ts"() {
+    "use strict";
+    init_stack_synthesizer();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts
+var init_cli_credentials_synthesizer = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/cli-credentials-synthesizer.ts"() {
+    "use strict";
+    init_shared2();
+    init_asset_manifest_builder();
+    init_default_synthesizer();
+    init_stack_synthesizer();
+    init_cx_api();
+    init_errors();
+    init_string_specializer();
+    init_literal_string();
+    init_token();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts
+var init_stack_synthesizers = __esm({
+  "../../aws-cdk-lib/core/lib/stack-synthesizers/index.ts"() {
+    "use strict";
+    init_types3();
+    init_default_synthesizer();
+    init_legacy();
+    init_bootstrapless_synthesizer();
+    init_nested();
+    init_stack_synthesizer();
+    init_cli_credentials_synthesizer();
+    init_asset_manifest_builder();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-mapping.ts
+var CfnMapping, CfnMappingEmbedder;
+var init_cfn_mapping = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-mapping.ts"() {
+    "use strict";
+    init_annotations();
+    init_cfn_element();
+    init_cfn_fn();
+    init_errors();
+    init_core_construct_finders();
+    init_literal_string();
+    init_token();
+    CfnMapping = class extends CfnRefElement {
+      mapping;
+      lazy;
+      lazyRender = false;
+      // prescribes `_toCloudFormation()` to pass nothing if value from map is returned lazily.
+      lazyInformed = false;
+      // keeps track if user has been sent a message informing them of the possibility to use lazy synthesis.
+      constructor(scope, id, props = {}) {
+        super(scope, id);
+        this.mapping = props.mapping ? this.validateMapping(props.mapping) : {};
+        this.lazy = props.lazy;
+      }
+      /**
+       * Sets a value in the map based on the two keys.
+       */
+      setValue(key1, key2, value) {
+        if ([key1, key2].some((k) => ["__proto__", "constructor"].includes(k))) {
+          throw new ValidationError(lit`CannotProtoConstructorKeys`, "Cannot use '__proto__' or 'constructor' as keys", this);
+        }
+        this.validateAlphanumeric(key2);
+        if (!(key1 in this.mapping)) {
+          this.mapping[key1] = {};
+        }
+        this.mapping[key1][key2] = value;
+      }
+      /**
+       * @returns A reference to a value in the map based on the two keys.
+       *          If mapping is lazy, the value from the map or default value is returned instead of the reference and the mapping is not rendered in the template.
+       */
+      findInMap(key1, key2, defaultValue) {
+        let fullyResolved = false;
+        let notInMap = false;
+        if (!Token.isUnresolved(key1)) {
+          if (!(key1 in this.mapping)) {
+            if (defaultValue === void 0) {
+              throw new ValidationError(lit`MappingDoesnTContainTopLevel`, `Mapping doesn't contain top-level key '${key1}'`, this);
+            } else {
+              notInMap = true;
+            }
+          } else if (!Token.isUnresolved(key2)) {
+            if (!(key2 in this.mapping[key1])) {
+              if (defaultValue === void 0) {
+                throw new ValidationError(lit`MappingDoesnTContainSecondLevel`, `Mapping doesn't contain second-level key '${key2}'`, this);
+              } else {
+                notInMap = true;
+              }
+            }
+            fullyResolved = true;
+          }
+        }
+        if (this.lazy) {
+          if (notInMap && defaultValue !== void 0) {
+            return defaultValue;
+          } else if (fullyResolved) {
+            return this.mapping[key1][key2];
+          }
+        }
+        this.lazyRender = !fullyResolved;
+        return new CfnMappingEmbedder(this, this.mapping, key1, key2, defaultValue).toString();
+      }
+      /**
+       * @internal
+       */
+      _toCloudFormation() {
+        if (this.lazy === void 0 && !this.lazyRender) {
+          this.informLazyUse();
+        }
+        if (!this.lazy || this.lazy && this.lazyRender) {
+          return {
+            Mappings: {
+              [this.logicalId]: this.mapping
+            }
+          };
+        } else {
+          return {};
+        }
+      }
+      informLazyUse() {
+        if (!this.lazyInformed) {
+          Annotations.of(this).addInfo("Consider making this CfnMapping a lazy mapping by providing `lazy: true`: either no findInMap was called or every findInMap could be immediately resolved without using Fn::FindInMap");
+        }
+        this.lazyInformed = true;
+      }
+      validateMapping(mapping) {
+        Object.keys(mapping).forEach((m) => Object.keys(mapping[m]).forEach(this.validateAlphanumeric));
+        return mapping;
+      }
+      validateAlphanumeric(value) {
+        if (value.match(/[^a-zA-Z0-9]/g)) {
+          throw new UnscopedValidationError(lit`AttributeNameContainOnly`, `Attribute name '${value}' must contain only alphanumeric characters.`);
+        }
+      }
+    };
+    CfnMappingEmbedder = class {
+      constructor(cfnMapping, mapping, key1, key2, defaultValue) {
+        this.cfnMapping = cfnMapping;
+        this.mapping = mapping;
+        this.key1 = key1;
+        this.key2 = key2;
+        this.defaultValue = defaultValue;
+      }
+      cfnMapping;
+      mapping;
+      key1;
+      key2;
+      defaultValue;
+      creationStack = ["Token stack traces are no longer captured"];
+      resolve(context) {
+        const consumingStack = stackOf(context.scope);
+        if (consumingStack === stackOf(this.cfnMapping)) {
+          return Fn.findInMap(this.cfnMapping.logicalId, this.key1, this.key2, this.defaultValue);
+        }
+        const constructScope = consumingStack;
+        const constructId = `MappingCopy-${this.cfnMapping.node.id}-${this.cfnMapping.node.addr}`;
+        let mappingCopy = constructScope.node.tryFindChild(constructId);
+        if (!mappingCopy) {
+          mappingCopy = new CfnMapping(constructScope, constructId, {
+            mapping: this.mapping
+          });
+        }
+        return Fn.findInMap(mappingCopy.logicalId, this.key1, this.key2, this.defaultValue);
+      }
+      toString() {
+        return Token.asString(this);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/private/region-lookup.ts
+function deployTimeLookup(stack, factName, lookupMap, defaultValue) {
+  if (Object.values(lookupMap).length === 0) {
+    if (defaultValue === void 0) {
+      throw new UnscopedValidationError(lit`RegionInfoDonTInformation`, `region-info: don't have any information for ${factName}. Use 'Fact.register' to provide values, or add partitions to the '${TARGET_PARTITIONS}' context value.`);
+    }
+    return defaultValue;
+  }
+  const pattern = findValuePattern(lookupMap);
+  if (pattern !== void 0) {
+    return pattern;
+  }
+  const [factClass, factParam] = factName.includes(":") ? factName.split(":") : [factName, "value"];
+  const mapId = `${ucfirst(factClass)}Map`;
+  const factKey = factParam.replace(/[^a-zA-Z0-9]/g, "x");
+  let mapping = stack.node.tryFindChild(mapId);
+  if (!mapping) {
+    mapping = new CfnMapping(stack, mapId);
+  }
+  for (const [region, value] of Object.entries(lookupMap)) {
+    mapping.setValue(region, factKey, value);
+  }
+  return mapping.findInMap(Aws.REGION, factKey);
+}
+function ucfirst(x) {
+  return `${x.slice(0, 1).toUpperCase()}${x.slice(1)}`;
+}
+function findValuePattern(regionMap) {
+  const simplified = { ...regionMap };
+  const urlSuffixes = Object.keys(simplified).map(urlSuffix);
+  if (!allSame(urlSuffixes) && Object.entries(simplified).every(([region, value]) => value.includes(urlSuffix(region)))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], urlSuffix(region), Aws.URL_SUFFIX);
+    }
+  }
+  if (Object.entries(simplified).every(([region, value]) => value.includes(region))) {
+    for (const region in simplified) {
+      simplified[region] = replaceAll2(simplified[region], region, Aws.REGION);
+    }
+  }
+  const values = Object.values(simplified);
+  if (allSame(values)) {
+    return values[0];
+  }
+  return void 0;
+}
+function allSame(xs) {
+  return xs.every((x) => x === xs[0]);
+}
+function urlSuffix(region) {
+  return RegionInfo.get(region)?.domainSuffix ?? "amazonaws.com";
+}
+function replaceAll2(x, pat, replacement) {
+  return x.split(pat).join(replacement);
+}
+var init_region_lookup = __esm({
+  "../../aws-cdk-lib/core/lib/private/region-lookup.ts"() {
+    "use strict";
+    init_cx_api();
+    init_region_info2();
+    init_cfn_mapping();
+    init_cfn_pseudo();
+    init_errors();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/stack.ts
+function merge(template, fragment) {
+  for (const section of Object.keys(fragment)) {
+    const src = fragment[section];
+    const dest = template[section];
+    if (!dest) {
+      template[section] = src;
+    } else {
+      template[section] = mergeSection(section, dest, src);
+    }
+  }
+}
+function mergeSection(section, val1, val2) {
+  switch (section) {
+    case "Description":
+      return `${val1}
+${val2}`;
+    case "AWSTemplateFormatVersion":
+      if (val1 != null && val2 != null && val1 !== val2) {
+        throw new AssumptionError(lit`ConflictingCloudformationTemplateVersions`, `Conflicting CloudFormation template versions provided: '${val1}' and '${val2}`);
+      }
+      return val1 ?? val2;
+    case "Transform":
+      return mergeSets(val1, val2);
+    default:
+      return mergeObjectsWithoutDuplicates(section, val1, val2);
+  }
+}
+function mergeSets(val1, val2) {
+  const array1 = val1 == null ? [] : Array.isArray(val1) ? val1 : [val1];
+  const array2 = val2 == null ? [] : Array.isArray(val2) ? val2 : [val2];
+  for (const value of array2) {
+    if (!array1.includes(value)) {
+      array1.push(value);
+    }
+  }
+  return array1.length === 1 ? array1[0] : array1;
+}
+function mergeObjectsWithoutDuplicates(section, dest, src) {
+  if (typeof dest !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(dest)} to be an object`);
+  }
+  if (typeof src !== "object") {
+    throw new AssumptionError(lit`ExpectingObject`, `Expecting ${JSON.stringify(src)} to be an object`);
+  }
+  for (const id of Object.keys(src)) {
+    if (id in dest) {
+      throw new AssumptionError(lit`SectionAlreadyContains`, `section '${section}' already contains '${id}'`);
+    }
+    dest[id] = src[id];
+  }
+  return dest;
+}
+function cfnElements(node, into = []) {
+  if (CfnElement.isCfnElement(node)) {
+    into.push(node);
+  }
+  for (const child of import_constructs22.Node.of(node).children) {
+    if (STACK_TYPE.isMarked(child)) {
+      continue;
+    }
+    cfnElements(child, into);
+  }
+  return into;
+}
+function rootPathTo(construct, ancestor) {
+  const scopes = import_constructs22.Node.of(construct).scopes;
+  for (let i = scopes.length - 2; i >= 0; i--) {
+    if (scopes[i] === ancestor) {
+      return scopes.slice(i + 1);
+    }
+  }
+  return scopes;
+}
+function makeStackName(components, prefix = "") {
+  if (components.length === 1) {
+    const stack_name = prefix + components[0];
+    if (stack_name.length <= 128) {
+      return stack_name;
+    }
+  }
+  return makeUniqueResourceName(components, { maxLength: 128, prefix });
+}
+function getCreateExportsScope(stack) {
+  const exportsName = "Exports";
+  let stackExports = stack.node.tryFindChild(exportsName);
+  if (stackExports === void 0) {
+    stackExports = new import_constructs22.Construct(stack, exportsName);
+  }
+  return stackExports;
+}
+function generateExportName2(stackExports, id) {
+  const stackRelativeExports = FeatureFlags.of(stackExports).isEnabled(STACK_RELATIVE_EXPORTS_CONTEXT);
+  const stack = Stack.of(stackExports);
+  const components = [
+    ...stackExports.node.scopes.slice(stackRelativeExports ? stack.node.scopes.length : 2).map((c) => c.node.id),
+    id
+  ];
+  const prefix = stack.stackName ? stack.stackName + ":" : "";
+  const localPart = makeUniqueId(components);
+  const maxLength = 255;
+  return prefix + localPart.slice(Math.max(0, localPart.length - maxLength + prefix.length));
+}
+function count(xs) {
+  const ret = {};
+  for (const x of xs) {
+    if (x in ret) {
+      ret[x] += 1;
+    } else {
+      ret[x] = 1;
+    }
+  }
+  return ret;
+}
+function sameReason(a) {
+  return (b) => a.source === b.source && a.target === b.target;
+}
+function makeCustomCoupledReference(value, strength) {
+  const resolvable = Tokenization.reverse(value);
+  if (!resolvable || !CfnReference.isCfnReference(resolvable)) {
+    throw new UnscopedValidationError(
+      lit`ConsumeReferenceRequiresResourceAttribute`,
+      "consumeReference: the value must be a resource attribute reference (like 'bucket.bucketArn')"
+    );
+  }
+  return new CustomCoupledReference(resolvable, strength);
+}
+var fs17, path21, import_constructs22, minimatch2, STACK_RESOURCE_LIMIT_CONTEXT, SUPPRESS_TEMPLATE_INDENTATION_CONTEXT, TEMPLATE_BODY_MAXIMUM_SIZE, VALID_STACK_NAME_REGEX, MAX_RESOURCES, _resolve_dec, _a6, _init9, _Stack, Stack, firstTwoAgnosticAzs;
+var init_stack = __esm({
+  "../../aws-cdk-lib/core/lib/stack.ts"() {
+    "use strict";
+    fs17 = __toESM(require("fs"));
+    path21 = __toESM(require("path"));
+    import_constructs22 = __toESM(require_lib4());
+    init_annotations();
+    init_app2();
+    init_arn();
+    init_aspect();
+    init_cfn_element();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_context_provider();
+    init_feature_flags();
+    init_mixin_metadata();
+    init_permissions_boundary();
+    init_cloudformation_lang();
+    init_logical_id();
+    init_resolve();
+    init_uniqueid();
+    init_prop_injectors();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cx_api();
+    init_perf();
+    init_cfn_output();
+    init_cross_stack_reference_strength();
+    init_names();
+    init_reference();
+    init_stack_synthesizers();
+    init_string_specializer();
+    init_stage();
+    init_tag_manager();
+    init_token();
+    init_refs();
+    init_cfn_reference();
+    init_region_info2();
+    init_region_lookup();
+    init_unique_resource_name();
+    init_private_context();
+    init_aspect_prio();
+    init_errors();
+    init_literal_string();
+    init_debug();
+    init_stack_trace();
+    init_core_construct_finders();
+    init_deps();
+    init_validation2();
+    ({ minimatch: minimatch2 } = require_commonjs3());
+    STACK_RESOURCE_LIMIT_CONTEXT = "@aws-cdk/core:stackResourceLimit";
+    SUPPRESS_TEMPLATE_INDENTATION_CONTEXT = "@aws-cdk/core:suppressTemplateIndentation";
+    TEMPLATE_BODY_MAXIMUM_SIZE = 1e6;
+    VALID_STACK_NAME_REGEX = /^[A-Za-z][A-Za-z0-9-]*$/;
+    MAX_RESOURCES = 500;
+    _Stack = class _Stack extends (_a6 = import_constructs22.Construct, _resolve_dec = [profileFn("Stack.resolve", { telemetry: true })], _a6) {
+      /**
+       * Creates a new stack.
+       *
+       * @param scope Parent of this stack, usually an `App` or a `Stage`, but could be any construct.
+       * @param id The construct ID of this stack. If `stackName` is not explicitly
+       * defined, this id (and any parent IDs) will be used to determine the
+       * physical ID of the stack.
+       * @param props Stack properties.
+       */
+      constructor(scope, id, props = {}) {
+        scope = scope ?? new App({
+          autoSynth: false
+        });
+        id = id ?? "Default";
+        super(scope, id);
+        __runInitializers(_init9, 5, this);
+        /**
+         * Tags to be applied to the stack.
+         */
+        __publicField(this, "tags");
+        /**
+         * Options for CloudFormation template (like version, transform, description).
+         */
+        __publicField(this, "templateOptions");
+        /**
+         * The AWS region into which this stack will be deployed (e.g. `us-west-2`).
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.region` when the stack is defined. This can
+         *    either be a concrete region (e.g. `us-west-2`) or the `Aws.REGION`
+         *    token.
+         * 3. `Aws.REGION`, which is represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::Region" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.region)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into a **region-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other region-agnostic behavior.
+         */
+        __publicField(this, "region");
+        /**
+         * The AWS account into which this stack will be deployed.
+         *
+         * This value is resolved according to the following rules:
+         *
+         * 1. The value provided to `env.account` when the stack is defined. This can
+         *    either be a concrete account (e.g. `585695031111`) or the
+         *    `Aws.ACCOUNT_ID` token.
+         * 3. `Aws.ACCOUNT_ID`, which represents the CloudFormation intrinsic reference
+         *    `{ "Ref": "AWS::AccountId" }` encoded as a string token.
+         *
+         * Preferably, you should use the return value as an opaque string and not
+         * attempt to parse it to implement your logic. If you do, you must first
+         * check that it is a concrete value an not an unresolved token. If this
+         * value is an unresolved token (`Token.isUnresolved(stack.account)` returns
+         * `true`), this implies that the user wishes that this stack will synthesize
+         * into an **account-agnostic template**. In this case, your code should either
+         * fail (throw an error, emit a synth error using `Annotations.of(construct).addError()`) or
+         * implement some other account-agnostic behavior.
+         */
+        __publicField(this, "account");
+        /**
+         * The environment coordinates in which this stack is deployed. In the form
+         * `aws://account/region`. Use `stack.account` and `stack.region` to obtain
+         * the specific values, no need to parse.
+         *
+         * You can use this value to determine if two stacks are targeting the same
+         * environment.
+         *
+         * If either `stack.account` or `stack.region` are not concrete values (e.g.
+         * `Aws.ACCOUNT_ID` or `Aws.REGION`) the special strings `unknown-account` and/or
+         * `unknown-region` will be used respectively to indicate this stack is
+         * region/account-agnostic.
+         */
+        __publicField(this, "environment");
+        /**
+         * If this is a nested stack, this represents its `AWS::CloudFormation::Stack`
+         * resource. `undefined` for top-level (non-nested) stacks.
+         *
+         */
+        __publicField(this, "nestedStackResource");
+        /**
+         * The name of the CloudFormation template file emitted to the output
+         * directory during synthesis.
+         *
+         * Example value: `MyStack.template.json`
+         */
+        __publicField(this, "templateFile");
+        /**
+         * The ID of the cloud assembly artifact for this stack.
+         */
+        __publicField(this, "artifactId");
+        /**
+         * Synthesis method for this stack
+         *
+         */
+        __publicField(this, "synthesizer");
+        /**
+         * Whether version reporting is enabled for this stack
+         *
+         * Controls whether the CDK Metadata resource is injected
+         *
+         * @internal
+         */
+        __publicField(this, "_versionReportingEnabled");
+        /**
+         * Whether cross region references are enabled for this stack
+         *
+         * @internal
+         */
+        __publicField(this, "_crossRegionReferences");
+        /**
+         * SNS Notification ARNs to receive stack events.
+         *
+         * @internal
+         */
+        __publicField(this, "_notificationArns");
+        /**
+         * Logical ID generation strategy
+         */
+        __publicField(this, "_logicalIds");
+        /**
+         * Other stacks this stack depends on
+         */
+        __publicField(this, "_stackDependencies");
+        /**
+         * Lists all missing contextual information.
+         * This is returned when the stack is synthesized under the 'missing' attribute
+         * and allows tooling to obtain the context and re-synthesize.
+         */
+        __publicField(this, "_missingContext");
+        __publicField(this, "_stackName");
+        /**
+         * Enable this flag to suppress indentation in generated
+         * CloudFormation templates.
+         *
+         * If not specified, the value of the `@aws-cdk/core:suppressTemplateIndentation`
+         * context key will be used. If that is not specified, then the
+         * default value `false` will be used.
+         *
+         * @default - the value of `@aws-cdk/core:suppressTemplateIndentation`, or `false` if that is not set.
+         */
+        __publicField(this, "_suppressTemplateIndentation");
+        __publicField(this, "_terminationProtection");
+        /**
+         * Silencing a specific diagnostic, should only do this once.
+         */
+        __publicField(this, "azLiteralWarningSilenced", false);
+        if (props.propertyInjectors) {
+          const injectors = PropertyInjectors.of(this);
+          injectors.add(...props.propertyInjectors);
+        }
+        this._missingContext = new Array();
+        this._stackDependencies = {};
+        this.templateOptions = {};
+        this._crossRegionReferences = !!props.crossRegionReferences;
+        this._suppressTemplateIndentation = props.suppressTemplateIndentation ?? this.node.tryGetContext(SUPPRESS_TEMPLATE_INDENTATION_CONTEXT) ?? false;
+        STACK_TYPE.mark(this);
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+        this._logicalIds = new LogicalIDs();
+        const { account, region, environment } = this.parseEnvironment(props.env);
+        this.account = account;
+        this.region = region;
+        this.environment = environment;
+        this._terminationProtection = props.terminationProtection ?? false;
+        if (props.description !== void 0) {
+          if (props.description.length > 512) {
+            throw new ValidationError(lit`StackDescriptionTooLong`, `Stack description must be <= 1024 bytes. Received description: '${props.description}'`, this);
+          }
+          this.templateOptions.description = props.description;
+        }
+        this._stackName = props.stackName ?? this.generateStackName();
+        if (this._stackName.length > 128) {
+          throw new ValidationError(lit`StackNameTooLong`, `Stack name must be <= 128 characters. Stack name: '${this._stackName}'`, this);
+        }
+        this.tags = new TagManager("KeyValue" /* KEY_VALUE */, "aws:cdk:stack", props.tags);
+        for (const notificationArn of props.notificationArns ?? []) {
+          if (Token.isUnresolved(notificationArn)) {
+            throw new ValidationError(lit`StackNotificationArnsContainTokens`, `Stack '${id}' includes one or more tokens in its notification ARNs: ${props.notificationArns}`, this);
+          }
+        }
+        this._notificationArns = props.notificationArns;
+        if (!VALID_STACK_NAME_REGEX.test(this.stackName)) {
+          throw new ValidationError(lit`StackNameInvalidFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${this.stackName}'`, this);
+        }
+        const featureFlags = FeatureFlags.of(this);
+        const stackNameDupeContext = featureFlags.isEnabled(ENABLE_STACK_NAME_DUPLICATES_CONTEXT);
+        const newStyleSynthesisContext = featureFlags.isEnabled(NEW_STYLE_STACK_SYNTHESIS_CONTEXT);
+        const artifactId = stackNameDupeContext || newStyleSynthesisContext ? this.generateStackArtifactId() : this.stackName;
+        this.artifactId = artifactId.replace(/[^A-Za-z0-9_\-\.]/g, "_");
+        this.templateFile = `${this.artifactId}.template.json`;
+        this._versionReportingEnabled = (props.analyticsReporting ?? this.node.tryGetContext(ANALYTICS_REPORTING_ENABLED_CONTEXT)) && !this.nestedStackParent;
+        const synthesizer = props.synthesizer ?? this.node.tryGetContext(PRIVATE_CONTEXT_DEFAULT_STACK_SYNTHESIZER) ?? (newStyleSynthesisContext ? new DefaultStackSynthesizer() : new LegacyStackSynthesizer());
+        if (isReusableStackSynthesizer(synthesizer)) {
+          this.synthesizer = synthesizer.reusableBind(this);
+        } else {
+          this.synthesizer = synthesizer;
+          this.synthesizer.bind(this);
+        }
+        props.permissionsBoundary?._bind(this);
+        this.addPermissionsBoundaryAspect();
+      }
+      /**
+       * Return whether the given object is a Stack.
+       *
+       * We do attribute detection since we can't reliably use 'instanceof'.
+       */
+      static isStack(x) {
+        return STACK_TYPE.isMarked(x);
+      }
+      /**
+       * Looks up the first stack scope in which `construct` is defined. Fails if there is no stack up the tree.
+       *
+       * Will return the closest containing `Stack` or `NestedStack`.
+       *
+       * @param construct The construct to start the search from.
+       */
+      static of(construct) {
+        return stackOf(construct);
+      }
+      /**
+       * Override the reference strength for a specific cross-stack reference value.
+       *
+       * Use this to weaken (or strengthen) an individual reference without
+       * affecting other references to the same resource. For example:
+       *
+       * ```ts
+       * // producerStack defines an SNS topic
+       * declare const topic: sns.Topic;
+       *
+       * // consumerStack subscribes to it with a weak reference,
+       * // so the producer can be torn down without blocking on this consumer
+       * const consumerStack = new Stack(app, 'Consumer', {
+       *   env: { account: '123456789012', region: 'us-east-1' },
+       * });
+       * new sns.Subscription(consumerStack, 'Subscription', {
+       *   topic: sns.Topic.fromTopicArn(consumerStack, 'Topic', Stack.consumeReference(topic.topicArn)),
+       *   endpoint: 'https://example.com/webhook',
+       *   protocol: sns.SubscriptionProtocol.HTTPS,
+       * });
+       * ```
+       *
+       * @param value A tokenized string reference (e.g. `bucket.bucketArn`).
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeReference(value, strength = "both" /* BOTH */) {
+        return Token.asString(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Override the reference strength for a specific cross-stack string list reference.
+       *
+       * This is the string list equivalent of `consumeReference`.
+       *
+       * @param value A tokenized string list reference.
+       * @param strength The reference strength to use. Defaults to `BOTH`.
+       * @returns A token that resolves to the same value but uses the overridden strength.
+       */
+      static consumeListReference(value, strength = "both" /* BOTH */) {
+        return Token.asList(makeCustomCoupledReference(value, strength));
+      }
+      /**
+       * Whether termination protection is enabled for this stack.
+       */
+      get terminationProtection() {
+        return this._terminationProtection;
+      }
+      set terminationProtection(value) {
+        this._terminationProtection = value;
+      }
+      /**
+       * If a permissions boundary has been applied on this scope or any parent scope
+       * then this will return the ARN of the permissions boundary.
+       *
+       * This will return the permissions boundary that has been applied to the most
+       * specific scope.
+       *
+       * For example:
+       *
+       * const stage = new Stage(app, 'stage', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('stage-pb'),
+       * });
+       *
+       * const stack = new Stack(stage, 'Stack', {
+       *   permissionsBoundary: PermissionsBoundary.fromName('some-other-pb'),
+       * });
+       *
+       *  Stack.permissionsBoundaryArn === 'arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/some-other-pb';
+       *
+       * @param scope the construct scope to retrieve the permissions boundary name from
+       * @returns the name of the permissions boundary or undefined if not set
+       */
+      get permissionsBoundaryArn() {
+        const qualifier = this.synthesizer.bootstrapQualifier ?? this.node.tryGetContext(BOOTSTRAP_QUALIFIER_CONTEXT) ?? DefaultStackSynthesizer.DEFAULT_QUALIFIER;
+        const spec = new StringSpecializer(this, qualifier);
+        const context = this.node.tryGetContext(PERMISSIONS_BOUNDARY_CONTEXT_KEY);
+        let arn;
+        if (context && context.arn) {
+          arn = spec.specialize(context.arn);
+        } else if (context && context.name) {
+          arn = spec.specialize(this.formatArn({
+            service: "iam",
+            resource: "policy",
+            region: "",
+            resourceName: context.name
+          }));
+        }
+        if (arn && (arn.includes("${Qualifier}") || arn.includes("${AWS::AccountId}") || arn.includes("${AWS::Region}") || arn.includes("${AWS::Partition}"))) {
+          throw new ValidationError(lit`PermissionsBoundaryContainsPseudoParameter`, `The permissions boundary ${arn} includes a pseudo parameter, which is not supported for environment agnostic stacks`, this);
+        }
+        return arn;
+      }
+      /**
+       * Adds an aspect to the stack that will apply the permissions boundary.
+       * This will only add the aspect if the permissions boundary has been set
+       */
+      addPermissionsBoundaryAspect() {
+        const permissionsBoundaryArn = this.permissionsBoundaryArn;
+        if (permissionsBoundaryArn) {
+          Aspects.of(this).add({
+            visit(node) {
+              if (CfnResource.isCfnResource(node) && (node.cfnResourceType == "AWS::IAM::Role" || node.cfnResourceType == "AWS::IAM::User")) {
+                node.addPropertyOverride("PermissionsBoundary", permissionsBoundaryArn);
+              }
+            }
+          }, {
+            priority: mutatingAspectPrio32333(this)
+          });
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      resolve(obj) {
+        return resolve(obj, {
+          scope: this,
+          prefix: [],
+          resolver: CLOUDFORMATION_TOKEN_RESOLVER,
+          preparing: false
+        });
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a JSON string
+       */
+      toJsonString(obj, space) {
+        return CloudFormationLang.toJSON(obj, space).toString();
+      }
+      /**
+       * Convert an object, potentially containing tokens, to a YAML string
+       */
+      toYamlString(obj) {
+        return CloudFormationLang.toYAML(obj).toString();
+      }
+      /**
+       * DEPRECATED
+       * @deprecated use `reportMissingContextKey()`
+       */
+      reportMissingContext(report) {
+        if (!Object.values(cloud_assembly_schema_exports.ContextProvider).includes(report.provider)) {
+          throw new ValidationError(lit`UnknownContextProvider`, `Unknown context provider requested in: ${JSON.stringify(report)}`, this);
+        }
+        this.reportMissingContextKey(report);
+      }
+      /**
+       * Indicate that a context key was expected
+       *
+       * Contains instructions which will be emitted into the cloud assembly on how
+       * the key should be supplied.
+       *
+       * @param report The set of parameters needed to obtain the context
+       */
+      reportMissingContextKey(report) {
+        this._missingContext.push(report);
+      }
+      /**
+       * Rename a generated logical identities
+       *
+       * To modify the naming scheme strategy, extend the `Stack` class and
+       * override the `allocateLogicalId` method.
+       */
+      renameLogicalId(oldId, newId) {
+        this._logicalIds.addRename(oldId, newId);
+      }
+      /**
+       * Allocates a stack-unique CloudFormation-compatible logical identity for a
+       * specific resource.
+       *
+       * This method is called when a `CfnElement` is created and used to render the
+       * initial logical identity of resources. Logical ID renames are applied at
+       * this stage.
+       *
+       * This method uses the protected method `allocateLogicalId` to render the
+       * logical ID for an element. To modify the naming scheme, extend the `Stack`
+       * class and override this method.
+       *
+       * @param element The CloudFormation element for which a logical identity is
+       * needed.
+       */
+      getLogicalId(element) {
+        const logicalId = this.allocateLogicalId(element);
+        return this._logicalIds.applyRename(logicalId);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method has been renamed to `addStackDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addStackDependency` instead.
+       */
+      addDependency(target, reason) {
+        this.addStackDependency(target, reason);
+      }
+      /**
+       * Add a dependency between this stack and another stack.
+       *
+       * This can be used to define dependencies between any two stacks within an
+       * app, and also supports nested stacks.
+       *
+       * Stack dependencies may not cross Stage boundaries.
+       *
+       * This method only adds dependencies between stacks. If you are looking
+       * for a generic construct-to-construct dependency mechanism, use
+       * `construct.node.addDependency` instead.
+       */
+      addStackDependency(target, reason) {
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addStackDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Return the stacks this stack depends on
+       */
+      get dependencies() {
+        return Object.values(this._stackDependencies).map((x) => x.stack);
+      }
+      /**
+       * The concrete CloudFormation physical stack name.
+       *
+       * This is either the name defined explicitly in the `stackName` prop or
+       * allocated based on the stack's location in the construct tree. Stacks that
+       * are directly defined under the app use their construct `id` as their stack
+       * name. Stacks that are defined deeper within the tree will use a hashed naming
+       * scheme based on the construct path to ensure uniqueness.
+       *
+       * If you wish to obtain the deploy-time AWS::StackName intrinsic,
+       * you can use `Aws.STACK_NAME` directly.
+       */
+      get stackName() {
+        return this._stackName;
+      }
+      /**
+       * The partition in which this stack is defined
+       */
+      get partition() {
+        if (!FeatureFlags.of(this).isEnabled(ENABLE_PARTITION_LITERALS) || Token.isUnresolved(this.region)) {
+          return Aws.PARTITION;
+        } else {
+          const partition = RegionInfo.get(this.region).partition;
+          return partition ?? Aws.PARTITION;
+        }
+      }
+      /**
+       * The Amazon domain suffix for the region in which this stack is defined
+       */
+      get urlSuffix() {
+        return Aws.URL_SUFFIX;
+      }
+      /**
+       * The ID of the stack
+       *
+       * @example
+       * // After resolving, looks like
+       * 'arn:aws:cloudformation:us-west-2:123456789012:stack/teststack/51af3dc0-da77-11e4-872e-1234567db123'
+       */
+      get stackId() {
+        return new ScopedAws(this).stackId;
+      }
+      /**
+       * Returns the list of notification Amazon Resource Names (ARNs) for the current stack.
+       */
+      get notificationArns() {
+        return new ScopedAws(this).notificationArns;
+      }
+      /**
+       * Indicates if this is a nested stack, in which case `parentStack` will include a reference to its parent.
+       */
+      get nested() {
+        return this.nestedStackResource !== void 0;
+      }
+      /**
+       * Creates an ARN from components.
+       *
+       * If `partition`, `region` or `account` are not specified, the stack's
+       * partition, region and account will be used.
+       *
+       * If any component is the empty string, an empty string will be inserted
+       * into the generated ARN at the location that component corresponds to.
+       *
+       * The ARN will be formatted as follows:
+       *
+       *   arn:{partition}:{service}:{region}:{account}:{resource}{sep}{resource-name}
+       *
+       * The required ARN pieces that are omitted will be taken from the stack that
+       * the 'scope' is attached to. If all ARN pieces are supplied, the supplied scope
+       * can be 'undefined'.
+       */
+      formatArn(components) {
+        return Arn.format(components, this);
+      }
+      /**
+       * Given an ARN, parses it and returns components.
+       *
+       * IF THE ARN IS A CONCRETE STRING...
+       *
+       * ...it will be parsed and validated. The separator (`sep`) will be set to '/'
+       * if the 6th component includes a '/', in which case, `resource` will be set
+       * to the value before the '/' and `resourceName` will be the rest. In case
+       * there is no '/', `resource` will be set to the 6th components and
+       * `resourceName` will be set to the rest of the string.
+       *
+       * IF THE ARN IS A TOKEN...
+       *
+       * ...it cannot be validated, since we don't have the actual value yet at the
+       * time of this function call. You will have to supply `sepIfToken` and
+       * whether or not ARNs of the expected format usually have resource names
+       * in order to parse it properly. The resulting `ArnComponents` object will
+       * contain tokens for the subexpressions of the ARN, not string literals.
+       *
+       * If the resource name could possibly contain the separator char, the actual
+       * resource name cannot be properly parsed. This only occurs if the separator
+       * char is '/', and happens for example for S3 object ARNs, IAM Role ARNs,
+       * IAM OIDC Provider ARNs, etc. To properly extract the resource name from a
+       * Tokenized ARN, you must know the resource type and call
+       * `Arn.extractResourceName`.
+       *
+       * @param arn The ARN string to parse
+       * @param sepIfToken The separator used to separate resource from resourceName
+       * @param hasName Whether there is a name component in the ARN at all. For
+       * example, SNS Topics ARNs have the 'resource' component contain the topic
+       * name, and no 'resourceName' component.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       * components of the ARN.
+       *
+       * @returns an ArnComponents object which allows access to the various
+       *      components of the ARN.
+       *
+       * @deprecated use splitArn instead
+       */
+      parseArn(arn, sepIfToken = "/", hasName = true) {
+        return Arn.parse(arn, sepIfToken, hasName);
+      }
+      /**
+       * Splits the provided ARN into its components.
+       * Works both if 'arn' is a string like 'arn:aws:s3:::bucket',
+       * and a Token representing a dynamic CloudFormation expression
+       * (in which case the returned components will also be dynamic CloudFormation expressions,
+       * encoded as Tokens).
+       *
+       * @param arn the ARN to split into its components
+       * @param arnFormat the expected format of 'arn' - depends on what format the service 'arn' represents uses
+       */
+      splitArn(arn, arnFormat) {
+        return Arn.split(arn, arnFormat);
+      }
+      /**
+       * Returns the list of AZs that are available in the AWS environment
+       * (account/region) associated with this stack.
+       *
+       * If the stack is environment-agnostic (either account and/or region are
+       * tokens), this property will return an array with 2 tokens that will resolve
+       * at deploy-time to the first two availability zones returned from CloudFormation's
+       * `Fn::GetAZs` intrinsic function.
+       *
+       * If they are not available in the context, returns a set of dummy values and
+       * reports them as missing, and let the CLI resolve them by calling EC2
+       * `DescribeAvailabilityZones` on the target environment.
+       *
+       * To specify a different strategy for selecting availability zones override this method.
+       */
+      get availabilityZones() {
+        this._silenceLiteralAzWarning();
+        const agnostic = Token.isUnresolved(this.account) || Token.isUnresolved(this.region);
+        if (agnostic) {
+          return this.node.tryGetContext(import_cloud_assembly_api.AVAILABILITY_ZONE_FALLBACK_CONTEXT_KEY) || firstTwoAgnosticAzs();
+        }
+        const value = ContextProvider.getValue(this, {
+          provider: cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER,
+          dummyValue: ["dummy1a", "dummy1b", "dummy1c"]
+        }).value;
+        if (!Array.isArray(value)) {
+          throw new ValidationError(lit`ProviderExpectedList`, `Provider ${cloud_assembly_schema_exports.ContextProvider.AVAILABILITY_ZONE_PROVIDER} expects a list`, this);
+        }
+        return value;
+      }
+      /**
+       * Register a file asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addFileAsset()` if you are calling,
+       * and a different IStackSynthesizer class if you are implementing.
+       */
+      addFileAsset(asset) {
+        return this.synthesizer.addFileAsset(asset);
+      }
+      /**
+       * Register a docker image asset on this Stack
+       *
+       * @deprecated Use `stack.synthesizer.addDockerImageAsset()` if you are calling,
+       * and a different `IStackSynthesizer` class if you are implementing.
+       */
+      addDockerImageAsset(asset) {
+        return this.synthesizer.addDockerImageAsset(asset);
+      }
+      /**
+       * If this is a nested stack, returns its parent stack.
+       */
+      get nestedStackParent() {
+        return this.nestedStackResource && _Stack.of(this.nestedStackResource);
+      }
+      /**
+       * Returns the parent of a nested stack.
+       *
+       * @deprecated use `nestedStackParent`
+       */
+      get parentStack() {
+        return this.nestedStackParent;
+      }
+      /**
+       * Add a Transform to this stack. A Transform is a macro that AWS
+       * CloudFormation uses to process your template.
+       *
+       * Duplicate values are removed when stack is synthesized.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html
+       * @param transform The transform to add
+       *
+       * @example
+       * declare const stack: Stack;
+       *
+       * stack.addTransform('AWS::Serverless-2016-10-31')
+       */
+      addTransform(transform) {
+        if (!this.templateOptions.transforms) {
+          this.templateOptions.transforms = [];
+        }
+        this.templateOptions.transforms.push(transform);
+      }
+      /**
+       * Adds an arbitrary key-value pair, with information you want to record about the stack.
+       * These get translated to the Metadata section of the generated template.
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       */
+      addMetadata(key, value) {
+        if (!this.templateOptions.metadata) {
+          this.templateOptions.metadata = {};
+        }
+        this.templateOptions.metadata[key] = value;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two top-level stacks.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addStackDependency(target, reason) {
+        if (!reason.reason) {
+          throw new ValidationError(lit`MissingDependencyReason`, "A stack dependency reason must be provided", this);
+        }
+        const cycle = target.stackDependencyReasons(this);
+        if (cycle !== void 0) {
+          const cycleDescription = cycle.map((cycleReason) => {
+            return cycleReason.reason;
+          }).join(", ");
+          throw new ValidationError(lit`DependencyCycle`, `'${target.node.path}' depends on '${this.node.path}' (${cycleDescription}). Adding this dependency (${reason.reason}) would create a cyclic reference.`, this);
+        }
+        const dep = this._stackDependencies[Names.uniqueId(target)] ?? (this._stackDependencies[Names.uniqueId(target)] = { stack: target, reasons: [] });
+        if (dep.reasons.find(sameReason(reason))) {
+          return;
+        }
+        dep.reasons.push(reason);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] stack "${reason.source.node.path}" depends on "${reason.target.node.path}"`);
+        }
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two top-level stacks.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeStackDependency(target, reason) {
+        let dep = this._stackDependencies[Names.uniqueId(target)];
+        if (!dep) {
+          return;
+        }
+        const matchedReasons = dep.reasons.filter(sameReason(reason));
+        if (matchedReasons.length === 0) {
+          return;
+        }
+        if (matchedReasons.length > 1) {
+          throw new ValidationError(lit`TooManyDependencyReasons`, `There cannot be more than one reason for dependency removal, found: ${matchedReasons}`, this);
+        }
+        let index = dep.reasons.indexOf(matchedReasons[0]);
+        dep.reasons.splice(index, 1);
+        if (dep.reasons.length == 0) {
+          delete this._stackDependencies[Names.uniqueId(target)];
+        }
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.log(`[CDK_DEBUG_DEPS] stack "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Return the stacks dependencies caused by the given construct.
+       *
+       * Returns the target resources that the dependency has been added for.
+       *
+       * I'm not sure this method is useful in any way, but we are keeping it in
+       * to maintain exact behavior as guaranteed by unit tests.
+       *
+       * @internal
+       */
+      _stackDependenciesCausedBy(source) {
+        return Array.from(new Set(Object.values(this._stackDependencies).flatMap((dep) => dep.reasons).filter((reason) => reason.source === source).map((reason) => reason.target)));
+      }
+      /**
+       * Synthesizes the cloudformation template into a cloud assembly.
+       * @internal
+       */
+      _synthesizeTemplate(session, lookupRoleArn, lookupRoleExternalId, lookupRoleAdditionalOptions) {
+        const builder = session.assembly;
+        this.node.addMetadata(CDK_TEMPLATE_FILE_KEY, this.templateFile);
+        const template = this._toCloudFormation();
+        const outPath = path21.join(builder.outdir, this.templateFile);
+        if (this.maxResources > 0) {
+          const resources = template.Resources || {};
+          const numberOfResources = Object.keys(resources).length;
+          if (numberOfResources > this.maxResources) {
+            const counts = Object.entries(count(Object.values(resources).map((r) => `${r?.Type}`))).map(([type, c]) => `${type} (${c})`).join(", ");
+            throw new ValidationError(lit`TooManyResourcesInStack`, `Number of resources in stack '${this.node.path}': ${numberOfResources} is greater than allowed maximum of ${this.maxResources}: ${counts}`, this);
+          } else if (numberOfResources >= this.maxResources * 0.8) {
+            Annotations.of(this).addInfo(`Number of resources: ${numberOfResources} is approaching allowed maximum of ${this.maxResources}`);
+          }
+        }
+        const indent = this._suppressTemplateIndentation ? void 0 : 1;
+        const templateData = JSON.stringify(template, void 0, indent);
+        if (templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE * 0.8) {
+          const verb = templateData.length > TEMPLATE_BODY_MAXIMUM_SIZE ? "exceeds" : "is approaching";
+          const advice = this._suppressTemplateIndentation ? "Split resources into multiple stacks to reduce template size" : "Split resources into multiple stacks or set suppressTemplateIndentation to reduce template size";
+          const message = `Template size ${verb} limit: ${templateData.length}/${TEMPLATE_BODY_MAXIMUM_SIZE}. ${advice}.`;
+          Annotations.of(this).addWarningV2("@aws-cdk/core:Stack.templateSize", message);
+        }
+        fs17.writeFileSync(outPath, templateData);
+        for (const ctx of this._missingContext) {
+          const queryLookupOptions = {
+            lookupRoleArn,
+            lookupRoleExternalId,
+            assumeRoleAdditionalOptions: lookupRoleAdditionalOptions
+          };
+          builder.addMissing({ ...ctx, props: { ...ctx.props, ...queryLookupOptions } });
+        }
+      }
+      /**
+       * Look up a fact value for the given fact for the region of this stack
+       *
+       * Will return a definite value only if the region of the current stack is resolved.
+       * If not, a lookup map will be added to the stack and the lookup will be done at
+       * CDK deployment time.
+       *
+       * What regions will be included in the lookup map is controlled by the
+       * `@aws-cdk/core:target-partitions` context value: it must be set to a list
+       * of partitions, and only regions from the given partitions will be included.
+       * If no such context key is set, all regions will be included.
+       *
+       * This function is intended to be used by construct library authors. Application
+       * builders can rely on the abstractions offered by construct libraries and do
+       * not have to worry about regional facts.
+       *
+       * If `defaultValue` is not given, it is an error if the fact is unknown for
+       * the given region.
+       */
+      regionalFact(factName, defaultValue) {
+        if (!Token.isUnresolved(this.region)) {
+          const ret = Fact.find(this.region, factName) ?? defaultValue;
+          if (ret === void 0) {
+            throw new ValidationError(lit`RegionFactNotFound`, `region-info: don't know ${factName} for region ${this.region}. Use 'Fact.register' to provide this value.`, this);
+          }
+          return ret;
+        }
+        const partitions = import_constructs22.Node.of(this).tryGetContext(TARGET_PARTITIONS);
+        if (partitions !== void 0 && partitions !== "undefined" && !Array.isArray(partitions)) {
+          throw new ValidationError(lit`TargetPartitionsContextValueInvalid`, `Context value '${TARGET_PARTITIONS}' should be a list of strings, got: ${JSON.stringify(partitions)}`, this);
+        }
+        const lookupMap = partitions !== void 0 && partitions !== "undefined" ? RegionInfo.limitedRegionMap(factName, partitions) : RegionInfo.regionMap(factName);
+        return deployTimeLookup(this, factName, lookupMap, defaultValue);
+      }
+      /**
+       * Create a CloudFormation Export for a string value
+       *
+       * Returns a string representing the corresponding `Fn.importValue()`
+       * expression for this Export. You can control the name for the export by
+       * passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * Here is how the process works. Let's say there are two stacks,
+       * `producerStack` and `consumerStack`, and `producerStack` has a bucket
+       * called `bucket`, which is referenced by `consumerStack` (perhaps because
+       * an AWS Lambda Function writes into it, or something like that).
+       *
+       * It is not safe to remove `producerStack.bucket` because as the bucket is being
+       * deleted, `consumerStack` might still be using it.
+       *
+       * Instead, the process takes two deployments:
+       *
+       * **Deployment 1: break the relationship**:
+       *
+       * - Make sure `consumerStack` no longer references `bucket.bucketName` (maybe the consumer
+       *   stack now uses its own bucket, or it writes to an AWS DynamoDB table, or maybe you just
+       *   remove the Lambda Function altogether).
+       * - In the `ProducerStack` class, call `this.exportValue(this.bucket.bucketName)`. This
+       *   will make sure the CloudFormation Export continues to exist while the relationship
+       *   between the two stacks is being broken.
+       * - Deploy (this will effectively only change the `consumerStack`, but it's safe to deploy both).
+       *
+       * **Deployment 2: remove the bucket resource**:
+       *
+       * - You are now free to remove the `bucket` resource from `producerStack`.
+       * - Don't forget to remove the `exportValue()` call as well.
+       * - Deploy again (this time only the `producerStack` will be changed -- the bucket will be deleted).
+       */
+      exportValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: exportedValue,
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.importValue(options.name);
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            value: Token.asString(exportable),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.importValue(exportName);
+        if (Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedListValueFromExportValue`, "Attempted to export a list value from `exportValue()`: use `exportStringListValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Create a CloudFormation Export for a string list value
+       *
+       * Returns a string list representing the corresponding `Fn.importValue()`
+       * expression for this Export. The export expression is automatically wrapped with an
+       * `Fn::Join` and the import value with an `Fn::Split`, since CloudFormation can only
+       * export strings. You can control the name for the export by passing the `name` option.
+       *
+       * If you don't supply a value for `name`, the value you're exporting must be
+       * a Resource attribute (for example: `bucket.bucketName`) and it will be
+       * given the same name as the automatic cross-stack reference that would be created
+       * if you used the attribute in another Stack.
+       *
+       * One of the uses for this method is to *remove* the relationship between
+       * two Stacks established by automatic cross-stack references. It will
+       * temporarily ensure that the CloudFormation Export still exists while you
+       * remove the reference from the consuming stack. After that, you can remove
+       * the resource and the manual export.
+       *
+       * See `exportValue` for an example of this process.
+       */
+      exportStringListValue(exportedValue, options = {}) {
+        if (options.name) {
+          new CfnOutput(this, `Export${options.name}`, {
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, exportedValue),
+            exportName: options.name,
+            description: options.description
+          });
+          return Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(options.name));
+        }
+        const { exportName, exportsScope, id, exportable } = this.resolveExportedValue(exportedValue);
+        const output = exportsScope.node.tryFindChild(id);
+        if (!output) {
+          new CfnOutput(exportsScope, id, {
+            // this is a list so export an Fn::Join expression
+            // and import an Fn::Split expression,
+            // since CloudFormation Outputs can only be strings
+            // (string lists are invalid)
+            value: Fn.join(STRING_LIST_REFERENCE_DELIMITER, Token.asList(exportable)),
+            exportName,
+            description: options.description
+          });
+        }
+        const importValue = Fn.split(STRING_LIST_REFERENCE_DELIMITER, Fn.importValue(exportName));
+        if (!Array.isArray(importValue)) {
+          throw new ValidationError(lit`ExportedStringValueFromExportStringListValue`, "Attempted to export a string value from `exportStringListValue()`: use `exportValue()` instead", this);
+        }
+        return importValue;
+      }
+      /**
+       * Returns `true` if this stack is a top-level stack (i.e., not a nested stack).
+       *
+       * For better or worse, `Stack` is being subclassed by other constructs to mean "template producer".
+       * For example, `NestedStack` is a subclass of `Stack` but is not a top-level stack, and so
+       * is `CloudFormationProduct`.
+       *
+       * This indicates whether the current class represents a top-level stack
+       * (should only be true for instances of the main `Stack` class), or false for
+       * a construct that simply produces a template and happens to reuse `Stack`
+       * for that purpose.
+       *
+       * Here is the class hierarchy we should have had:
+       *
+       * ```
+       * TemplateProducer
+       * ├── Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * Here is the class hierarchy we actually have:
+       *
+       * ```
+       * Stack
+       * ├── NestedStack
+       * └── CloudFormationProduct
+       * ```
+       *
+       * @internal
+       */
+      get _isTopLevelStack() {
+        return true;
+      }
+      /**
+       * Returns the naming scheme used to allocate logical IDs. By default, uses
+       * the `HashedAddressingScheme` but this method can be overridden to customize
+       * this behavior.
+       *
+       * In order to make sure logical IDs are unique and stable, we hash the resource
+       * construct tree path (i.e. toplevel/secondlevel/.../myresource) and add it as
+       * a suffix to the path components joined without a separator (CloudFormation
+       * IDs only allow alphanumeric characters).
+       *
+       * The result will be:
+       *
+       *   
+       *     "human"      "hash"
+       *
+       * If the "human" part of the ID exceeds 240 characters, we simply trim it so
+       * the total ID doesn't exceed CloudFormation's 255 character limit.
+       *
+       * We only take 8 characters from the md5 hash (0.000005 chance of collision).
+       *
+       * Special cases:
+       *
+       * - If the path only contains a single component (i.e. it's a top-level
+       *   resource), we won't add the hash to it. The hash is not needed for
+       *   disambiguation and also, it allows for a more straightforward migration an
+       *   existing CloudFormation template to a CDK stack without logical ID changes
+       *   (or renames).
+       * - For aesthetic reasons, if the last components of the path are the same
+       *   (i.e. `L1/L2/Pipeline/Pipeline`), they will be de-duplicated to make the
+       *   resulting human portion of the ID more pleasing: `L1L2Pipeline`
+       *   instead of `L1L2PipelinePipeline`
+       * - If a component is named "Default" it will be omitted from the path. This
+       *   allows refactoring higher level abstractions around constructs without affecting
+       *   the IDs of already deployed resources.
+       * - If a component is named "Resource" it will be omitted from the user-visible
+       *   path, but included in the hash. This reduces visual noise in the human readable
+       *   part of the identifier.
+       *
+       * @param cfnElement The element for which the logical ID is allocated.
+       */
+      allocateLogicalId(cfnElement) {
+        const scopes = cfnElement.node.scopes;
+        const stackIndex = scopes.indexOf(cfnElement.stack);
+        const pathComponents = scopes.slice(stackIndex + 1).map((x) => x.node.id);
+        return makeUniqueId(pathComponents);
+      }
+      /**
+       * Validate stack name
+       *
+       * CloudFormation stack names can include dashes in addition to the regular identifier
+       * character classes, and we don't allow one of the magic markers.
+       *
+       * @internal
+       */
+      _validateId(name) {
+        if (name && !VALID_STACK_NAME_REGEX.test(name)) {
+          throw new ValidationError(lit`InvalidStackNameFormat`, `Stack name must match the regular expression: ${VALID_STACK_NAME_REGEX.toString()}, got '${name}'`, this);
+        }
+      }
+      /**
+       * Returns the CloudFormation template for this stack by traversing
+       * the tree and invoking _toCloudFormation() on all Entity objects.
+       *
+       * @internal
+       */
+      _toCloudFormation() {
+        let transform;
+        if (this.templateOptions.transform) {
+          Annotations.of(this).addWarningV2("@aws-cdk/core:stackDeprecatedTransform", "This stack is using the deprecated `templateOptions.transform` property. Consider switching to `addTransform()`.");
+          this.addTransform(this.templateOptions.transform);
+        }
+        if (this.templateOptions.transforms) {
+          if (this.templateOptions.transforms.length === 1) {
+            transform = this.templateOptions.transforms[0];
+          } else {
+            transform = Array.from(new Set(this.templateOptions.transforms));
+          }
+        }
+        const template = {
+          Description: this.templateOptions.description,
+          Transform: transform,
+          AWSTemplateFormatVersion: this.templateOptions.templateFormatVersion,
+          Metadata: this.templateOptions.metadata
+        };
+        const elements = cfnElements(this);
+        const fragments = elements.map((e) => this.resolve(e._toCloudFormation()));
+        for (const fragment of fragments) {
+          merge(template, fragment);
+        }
+        const ret = this.resolve(template) || {};
+        this._logicalIds.assertAllRenamesApplied();
+        return ret;
+      }
+      /**
+       * Deprecated.
+       *
+       * @see https://github.com/aws/aws-cdk/pull/7187
+       * @returns reference itself without any change
+       * @deprecated cross reference handling has been moved to `App.prepare()`.
+       */
+      prepareCrossReference(_sourceStack, reference) {
+        return reference;
+      }
+      /**
+       * Determine the various stack environment attributes.
+       *
+       */
+      parseEnvironment(env2 = {}) {
+        const containingAssembly = Stage.of(this);
+        if (env2.account && typeof env2.account !== "string") {
+          throw new ValidationError(lit`AccountIdMustBeString`, `Account id of stack environment must be a 'string' but received '${typeof env2.account}'`, this);
+        }
+        if (env2.region && typeof env2.region !== "string") {
+          throw new ValidationError(lit`RegionMustBeString`, `Region of stack environment must be a 'string' but received '${typeof env2.region}'`, this);
+        }
+        const account = env2.account ?? containingAssembly?.account ?? Aws.ACCOUNT_ID;
+        const region = env2.region ?? containingAssembly?.region ?? Aws.REGION;
+        const envAccount = !Token.isUnresolved(account) ? account : import_cloud_assembly_api.UNKNOWN_ACCOUNT;
+        const envRegion = !Token.isUnresolved(region) ? region : import_cloud_assembly_api.UNKNOWN_REGION;
+        return {
+          account,
+          region,
+          environment: (void 0).format(envAccount, envRegion)
+        };
+      }
+      /**
+       * Maximum number of resources in the stack
+       *
+       * Set to 0 to mean "unlimited".
+       */
+      get maxResources() {
+        const contextLimit = this.node.tryGetContext(STACK_RESOURCE_LIMIT_CONTEXT);
+        return contextLimit !== void 0 ? parseInt(contextLimit, 10) : MAX_RESOURCES;
+      }
+      /**
+       * Check whether this stack has a (transitive) dependency on another stack
+       *
+       * Returns the list of reasons on the dependency path, or undefined
+       * if there is no dependency.
+       */
+      stackDependencyReasons(other) {
+        if (this === other) {
+          return [];
+        }
+        for (const dep of Object.values(this._stackDependencies)) {
+          const ret = dep.stack.stackDependencyReasons(other);
+          if (ret !== void 0) {
+            return [...dep.reasons, ...ret];
+          }
+        }
+        return void 0;
+      }
+      /**
+       * Calculate the stack name based on the construct path
+       *
+       * The stack name is the name under which we'll deploy the stack,
+       * and incorporates containing Stage names by default.
+       *
+       * Generally this looks a lot like how logical IDs are calculated.
+       * The stack name is calculated based on the construct root path,
+       * as follows:
+       *
+       * - Path is calculated with respect to containing App or Stage (if any)
+       * - If the path is one component long just use that component, otherwise
+       *   combine them with a hash.
+       *
+       * Since the hash is quite ugly and we'd like to avoid it if possible -- but
+       * we can't anymore in the general case since it has been written into legacy
+       * stacks. The introduction of Stages makes it possible to make this nicer however.
+       * When a Stack is nested inside a Stage, we use the path components below the
+       * Stage, and prefix the path components of the Stage before it.
+       */
+      generateStackName() {
+        const assembly = Stage.of(this);
+        const prefix = assembly && assembly.stageName ? `${assembly.stageName}-` : "";
+        if (FeatureFlags.of(this).isEnabled(INCLUDE_PREFIX_IN_UNIQUE_NAME_GENERATION)) {
+          return `${this.generateStackId(assembly, prefix)}`;
+        } else {
+          return `${prefix}${this.generateStackId(assembly)}`;
+        }
+      }
+      /**
+       * The artifact ID for this stack
+       *
+       * Stack artifact ID is unique within the App's Cloud Assembly.
+       */
+      generateStackArtifactId() {
+        return this.generateStackId(this.node.root);
+      }
+      /**
+       * Generate an ID with respect to the given container construct.
+       */
+      generateStackId(container, prefix = "") {
+        const rootPath = rootPathTo(this, container);
+        const ids = rootPath.map((c) => import_constructs22.Node.of(c).id);
+        if (ids.length === 1 && !ids[0]) {
+          throw new ValidationError(lit`StackIdMustBeDefined`, "unexpected: stack id must always be defined", this);
+        }
+        return makeStackName(ids, prefix);
+      }
+      /**
+       * Silence CloudFormation validate warning W3010 ("literal AZs limit portability")
+       *
+       * This is true! But the Validation Plugin is looking at the template and cannot tell
+       * the difference between a literal AZ in the template because a user typed it in the
+       * CDK code, vs a user using CDK's facilities to reflect on AZs and using those.
+       *
+       * So once a user calls `stack.availabilityZones`, we will take that as a signal
+       * they are "doing the right thing" and silencing this warning for them.
+       *
+       * @internal
+       */
+      _silenceLiteralAzWarning() {
+        if (this.azLiteralWarningSilenced) {
+          return;
+        }
+        this.azLiteralWarningSilenced = true;
+        Validations.of(this).acknowledge({
+          id: "CloudFormation-Validate::W3010",
+          reason: "Literal AZs in template are the result of accessing stack.availabilityZones, this is expected and safe"
+        });
+      }
+      resolveExportedValue(exportedValue) {
+        const resolvable = Tokenization.reverse(exportedValue);
+        if (!resolvable || !Reference.isReference(resolvable)) {
+          throw new ValidationError(lit`ExportValueRequiresNameOrResourceAttribute`, "exportValue: either supply 'name' or make sure to export a resource attribute (like 'bucket.bucketName')", this);
+        }
+        const exportable = getExportable(this, resolvable);
+        const exportsScope = getCreateExportsScope(this);
+        const resolved = this.resolve(exportable);
+        const id = "Output" + JSON.stringify(resolved);
+        const exportName = generateExportName2(exportsScope, id);
+        if (Token.isUnresolved(exportName)) {
+          throw new ValidationError(lit`UnresolvedTokenInExportName`, `unresolved token in generated export name: ${JSON.stringify(this.resolve(exportName))}`, this);
+        }
+        return {
+          exportable,
+          exportsScope,
+          id,
+          exportName
+        };
+      }
+      /**
+       * Indicates whether the stack requires bundling or not
+       */
+      get bundlingRequired() {
+        const bundlingStacks = this.node.tryGetContext(BUNDLING_STACKS) ?? ["**"];
+        return bundlingStacks.some((pattern) => minimatch2(
+          this.node.path,
+          // use the same value for pattern matching as the aws-cdk CLI (displayName / hierarchicalId)
+          pattern
+        ));
+      }
+      /**
+       * Configure a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      addStackTag(tagName, tagValue) {
+        this.tags.setTag(tagName, tagValue);
+      }
+      /**
+       * Remove a stack tag
+       *
+       * At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
+       */
+      removeStackTag(tagName) {
+        this.tags.removeTag(tagName, 0);
+      }
+      /**
+       * The environment this Stack deploys to
+       */
+      get env() {
+        return {
+          account: this.account,
+          region: this.region
+        };
+      }
+    };
+    _init9 = __decoratorStart(_a6);
+    __decorateElement(_init9, 1, "resolve", _resolve_dec, _Stack);
+    __decoratorMetadata(_init9, _Stack);
+    Stack = _Stack;
+    firstTwoAgnosticAzs = /* @__PURE__ */ (() => {
+      let cache;
+      return () => {
+        if (!cache) {
+          cache = [
+            Fn.select(0, Fn.getAzs()),
+            Fn.select(1, Fn.getAzs())
+          ];
+        }
+        return cache;
+      };
+    })();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-element.ts
+function notTooLong(x) {
+  if (x.length < 100) {
+    return x;
+  }
+  return x.slice(0, 47) + "..." + x.slice(-47);
+}
+var import_constructs23, CFN_ELEMENT_SYMBOL, CfnElement, CfnRefElement;
+var init_cfn_element = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-element.ts"() {
+    "use strict";
+    import_constructs23 = __toESM(require_lib4());
+    init_lazy();
+    init_cloud_assembly_schema();
+    init_cx_api();
+    init_cfn_reference();
+    init_stack();
+    init_token();
+    init_errors();
+    init_mixin_metadata();
+    init_literal_string();
+    init_stack_trace();
+    init_debug();
+    CFN_ELEMENT_SYMBOL = /* @__PURE__ */ Symbol.for("@aws-cdk/core.CfnElement");
+    CfnElement = class extends import_constructs23.Construct {
+      /**
+       * Returns `true` if a construct is a stack element (i.e. part of the
+       * synthesized cloudformation template).
+       *
+       * Uses duck-typing instead of `instanceof` to allow stack elements from different
+       * versions of this library to be included in the same stack.
+       *
+       * @returns The construct as a stack element or undefined if it is not a stack element.
+       */
+      static isCfnElement(x) {
+        return CFN_ELEMENT_SYMBOL in x;
+      }
+      /**
+       * The logical ID for this CloudFormation stack element. The logical ID of the element
+       * is calculated from the path of the resource node in the construct tree.
+       *
+       * To override this value, use `overrideLogicalId(newLogicalId)`.
+       *
+       * @returns the logical ID as a stringified token. This value will only get
+       * resolved during synthesis.
+       */
+      logicalId;
+      /**
+       * The stack in which this element is defined. CfnElements must be defined within a stack scope (directly or indirectly).
+       */
+      stack;
+      /**
+       * An explicit logical ID provided by `overrideLogicalId`.
+       */
+      _logicalIdOverride;
+      /**
+       * If the logicalId is locked then it can no longer be overridden.
+       * This is needed for cases where the logicalId is consumed prior to synthesis
+       * (i.e. Stack.exportValue).
+       */
+      _logicalIdLocked;
+      /**
+       * Creates an entity and binds it to a tree.
+       * Note that the root of the tree must be a Stack object (not just any Root).
+       *
+       * @param scope The parent construct
+       * @param props Construct properties
+       */
+      constructor(scope, id) {
+        super(scope, id);
+        Object.defineProperty(this, CFN_ELEMENT_SYMBOL, { value: true });
+        this.stack = Stack.of(this);
+        this.logicalId = Lazy.uncachedString({ produce: () => this._synthesizeLogicalId() }, {
+          displayHint: `${notTooLong(import_constructs23.Node.of(this).path)}.LogicalID`
+        });
+        if (!this.node.tryGetContext(DISABLE_LOGICAL_ID_METADATA)) {
+          import_constructs23.Node.of(this).addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.LOGICAL_ID, this.logicalId);
+        }
+        if (!this.node.tryGetContext(DISABLE_CREATION_STACK_TRACES) || debugModeEnabled()) {
+          this.node.addMetadata(cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK, captureStackTrace(new.target));
+        }
+      }
+      with(...mixins) {
+        return withMixins(this, ...mixins);
+      }
+      /**
+       * Overrides the auto-generated logical ID with a specific ID.
+       * @param newLogicalId The new logical ID to use for this stack element.
+       */
+      overrideLogicalId(newLogicalId) {
+        if (this._logicalIdLocked) {
+          throw new ValidationError(lit`LogicalIdLocked`, `The logicalId for resource at path ${import_constructs23.Node.of(this).path} has been locked and cannot be overridden
+Make sure you are calling "overrideLogicalId" before Stack.exportValue`, this);
+        } else {
+          this._logicalIdOverride = newLogicalId;
+        }
+      }
+      /**
+       * Lock the logicalId of the element and do not allow
+       * any updates (e.g. via overrideLogicalId)
+       *
+       * This is needed in cases where you are consuming the LogicalID
+       * of an element prior to synthesis and you need to not allow future
+       * changes to the id since doing so would cause the value you just
+       * consumed to differ from the synth time value of the logicalId.
+       *
+       * For example:
+       *
+       * const bucket = new Bucket(stack, 'Bucket');
+       * stack.exportValue(bucket.bucketArn) <--- consuming the logicalId
+       * bucket.overrideLogicalId('NewLogicalId') <--- updating logicalId
+       *
+       * You should most likely never need to use this method, and if
+       * you are implementing a feature that requires this, make sure
+       * you actually require it.
+       *
+       * @internal
+       */
+      _lockLogicalId() {
+        this._logicalIdLocked = true;
+      }
+      /**
+       * @returns the stack trace of the point where this Resource was created from, sourced
+       *      from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
+       *      node +internal+ entries filtered.
+       */
+      get creationStack() {
+        const trace = import_constructs23.Node.of(this).metadata.find((md) => md.type === cloud_assembly_schema_exports.ArtifactMetadataEntryType.CREATION_STACK)?.data;
+        return trace ?? [];
+      }
+      /**
+       * Called during synthesize to render the logical ID of this element. If
+       * `overrideLogicalId` was it will be used, otherwise, we will allocate the
+       * logical ID through the stack.
+       *
+       * @internal
+       */
+      _synthesizeLogicalId() {
+        if (this._logicalIdOverride) {
+          return this._logicalIdOverride;
+        } else {
+          return this.stack.getLogicalId(this);
+        }
+      }
+    };
+    CfnRefElement = class extends CfnElement {
+      /**
+       * Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
+       *
+       * If, by any chance, the intrinsic reference of a resource is not a string, you could
+       * coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
+       */
+      get ref() {
+        return Token.asString(CfnReference.for(this, "Ref"));
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-resource.ts
+function splitOnPeriods(x) {
+  const ret = [""];
+  for (let i = 0; i < x.length; i++) {
+    if (x[i] === "\\" && i + 1 < x.length) {
+      ret[0] += x[i + 1];
+      i++;
+    } else if (x[i] === ".") {
+      ret.unshift("");
+    } else {
+      ret[0] += x[i];
+    }
+  }
+  ret.reverse();
+  return ret;
+}
+function traceProperty(node, propertyName) {
+  if (debugModeEnabled()) {
+    node.addMetadata(cxschema.ArtifactMetadataEntryType.PROPERTY_ASSIGNMENT, {
+      propertyName,
+      stackTrace: captureStackTrace(traceProperty)
+    });
+  }
+}
+var cxschema, CfnResource;
+var init_cfn_resource = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-resource.ts"() {
+    "use strict";
+    cxschema = __toESM(require_lib2());
+    init_annotations();
+    init_cfn_element();
+    init_cfn_resource_policy();
+    init_deps();
+    init_cfn_reference();
+    init_removal_policy();
+    init_debug();
+    init_tag_manager();
+    init_util();
+    init_feature_flags();
+    init_cx_api();
+    init_errors();
+    init_deep_merge();
+    init_literal_string();
+    init_stack_trace();
+    init_stack();
+    init_core_construct_finders();
+    CfnResource = class _CfnResource extends CfnRefElement {
+      /**
+       * Check whether the given object is a CfnResource
+       */
+      static isCfnResource(x) {
+        return isCfnResource(x);
+      }
+      // MAINTAINERS NOTE: this class serves as the base class for the generated L1
+      // ("CFN") resources (such as `s3.CfnBucket`). These resources will have a
+      // property for each CloudFormation property of the resource. This means that
+      // if at some point in the future a property is introduced with a name similar
+      // to one of the properties here, it will be "masked" by the derived class. To
+      // that end, we prefix all properties in this class with `cfnXxx` with the
+      // hope to avoid those conflicts in the future.
+      /**
+       * Options for this resource, such as condition, update policy etc.
+       */
+      cfnOptions = {};
+      /**
+       * AWS resource type.
+       */
+      cfnResourceType;
+      /**
+       * AWS CloudFormation resource properties.
+       *
+       * This object is returned via cfnProperties
+       * @internal
+       */
+      _cfnProperties;
+      /**
+       * An object to be merged on top of the entire resource definition.
+       */
+      rawOverrides = /* @__PURE__ */ Object.create(null);
+      // Prevent prototype pollution
+      /**
+       * Logical IDs of dependencies.
+       *
+       * Is filled during prepare().
+       */
+      dependsOn;
+      _crossStackReferenceStrength;
+      cfnPropertyNames = {};
+      /**
+       * Creates a resource construct.
+       * @param cfnResourceType The CloudFormation type of this resource (e.g. AWS::DynamoDB::Table)
+       */
+      constructor(scope, id, props) {
+        super(scope, id);
+        if (!props.type) {
+          throw new ValidationError(lit`IsRequiredPropertyRequired`, "The `type` property is required", this);
+        }
+        this.cfnResourceType = props.type;
+        this._cfnProperties = props.properties || {};
+        if (this.node.tryGetContext(PATH_METADATA_ENABLE_CONTEXT)) {
+          this.addMetadata(import_cloud_assembly_api.PATH_METADATA_KEY, this.node.path);
+        }
+      }
+      get env() {
+        return {
+          account: this.stack.account,
+          region: this.stack.region
+        };
+      }
+      /**
+       * Sets the deletion policy of the resource based on the removal policy specified.
+       *
+       * The Removal Policy controls what happens to this resource when it stops
+       * being managed by CloudFormation, either because you've removed it from the
+       * CDK application or because you've made a change that requires the resource
+       * to be replaced.
+       *
+       * The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
+       * account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
+       * cases, a snapshot can be taken of the resource prior to deletion
+       * (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
+       * can be found in the following link:
+       *
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
+       */
+      applyRemovalPolicy(policy, options = {}) {
+        policy = policy || options.default || "retain" /* RETAIN */;
+        let deletionPolicy;
+        let updateReplacePolicy;
+        switch (policy) {
+          case "destroy" /* DESTROY */:
+            deletionPolicy = "Delete" /* DELETE */;
+            updateReplacePolicy = "Delete" /* DELETE */;
+            break;
+          case "retain" /* RETAIN */:
+            deletionPolicy = "Retain" /* RETAIN */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "retain-on-update-or-delete" /* RETAIN_ON_UPDATE_OR_DELETE */:
+            deletionPolicy = "RetainExceptOnCreate" /* RETAIN_EXCEPT_ON_CREATE */;
+            updateReplacePolicy = "Retain" /* RETAIN */;
+            break;
+          case "snapshot" /* SNAPSHOT */:
+            const snapshottableResourceTypes = [
+              "AWS::DocDB::DBCluster",
+              "AWS::EC2::Volume",
+              "AWS::ElastiCache::CacheCluster",
+              "AWS::ElastiCache::ReplicationGroup",
+              "AWS::Neptune::DBCluster",
+              "AWS::RDS::DBCluster",
+              "AWS::RDS::DBInstance",
+              "AWS::Redshift::Cluster"
+            ];
+            const problematicSnapshotPolicy = !snapshottableResourceTypes.includes(this.cfnResourceType);
+            if (problematicSnapshotPolicy) {
+              if (FeatureFlags.of(this).isEnabled(VALIDATE_SNAPSHOT_REMOVAL_POLICY)) {
+                throw new ValidationError(lit`SnapshotRemovalNotSupported`, `${this.cfnResourceType} does not support snapshot removal policy`, this);
+              } else {
+                Annotations.of(this).addWarningV2(`@aws-cdk/core:${this.cfnResourceType}SnapshotRemovalPolicyIgnored`, `${this.cfnResourceType} does not support snapshot removal policy. This policy will be ignored.`);
+              }
+            }
+            deletionPolicy = "Snapshot" /* SNAPSHOT */;
+            updateReplacePolicy = "Snapshot" /* SNAPSHOT */;
+            break;
+          default:
+            throw new ValidationError(lit`InvalidRemovalPolicy`, `Invalid removal policy: ${policy}`, this);
+        }
+        this.cfnOptions.deletionPolicy = deletionPolicy;
+        if (options.applyToUpdateReplacePolicy !== false) {
+          this.cfnOptions.updateReplacePolicy = updateReplacePolicy;
+        }
+      }
+      /**
+       * Sets the cross-stack reference strength for this resource.
+       *
+       * When set, any cross-stack reference to this resource will use the specified
+       * strength instead of the global default from the consuming stack's context.
+       *
+       * @param strength - The reference strength to use for this resource.
+       */
+      applyCrossStackReferenceStrength(strength) {
+        this._crossStackReferenceStrength = strength;
+      }
+      /**
+       * @internal
+       */
+      get _crossStackReferenceStrengthOverride() {
+        return this._crossStackReferenceStrength;
+      }
+      /**
+       * Returns a token for an runtime attribute of this resource.
+       * Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
+       * in case there is no generated attribute.
+       * @param attributeName The name of the attribute.
+       */
+      getAtt(attributeName, typeHint) {
+        return CfnReference.for(this, attributeName, void 0, typeHint);
+      }
+      /**
+       * Adds an override to the synthesized CloudFormation resource. To add a
+       * property override, either use `addPropertyOverride` or prefix `path` with
+       * "Properties." (i.e. `Properties.TopicName`).
+       *
+       * If the override is nested, separate each nested level using a dot (.) in the path parameter.
+       * If there is an array as part of the nesting, specify the index in the path.
+       *
+       * To include a literal `.` in the property name, prefix with a `\`. In most
+       * programming languages you will need to write this as `"\\."` because the
+       * `\` itself will need to be escaped.
+       *
+       * For example,
+       * ```typescript
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
+       * cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
+       * ```
+       * would add the overrides
+       * ```json
+       * "Properties": {
+       *   "GlobalSecondaryIndexes": [
+       *     {
+       *       "Projection": {
+       *         "NonKeyAttributes": [ "myattribute" ]
+       *         ...
+       *       }
+       *       ...
+       *     },
+       *     {
+       *       "ProjectionType": "INCLUDE"
+       *       ...
+       *     },
+       *   ]
+       *   ...
+       * }
+       * ```
+       *
+       * The `value` argument to `addOverride` will not be processed or translated
+       * in any way. Pass raw JSON values in here with the correct capitalization
+       * for CloudFormation. If you pass CDK classes or structs, they will be
+       * rendered with lowercased key names, and CloudFormation will reject the
+       * template.
+       *
+       * @param path - The path of the property, you can use dot notation to
+       *        override values in complex types. Any intermediate keys
+       *        will be created as needed.
+       * @param value - The value. Could be primitive or complex.
+       */
+      addOverride(path23, value) {
+        const parts = splitOnPeriods(path23);
+        let curr = this.rawOverrides;
+        while (parts.length > 1) {
+          const key = parts.shift();
+          const isObject = curr[key] != null && typeof curr[key] === "object" && !Array.isArray(curr[key]);
+          if (!isObject) {
+            curr[key] = /* @__PURE__ */ Object.create(null);
+          }
+          curr = curr[key];
+        }
+        const lastKey = parts.shift();
+        curr[lastKey] = value;
+      }
+      /**
+       * Syntactic sugar for `addOverride(path, undefined)`.
+       * @param path The path of the value to delete
+       */
+      addDeletionOverride(path23) {
+        this.addOverride(path23, void 0);
+      }
+      /**
+       * Adds an override to a resource property.
+       *
+       * Syntactic sugar for `addOverride("Properties.<...>", value)`.
+       *
+       * @param propertyPath The path of the property
+       * @param value The value
+       */
+      addPropertyOverride(propertyPath, value) {
+        const parts = splitOnPeriods(propertyPath);
+        traceProperty(this.node, parts[0]);
+        this.addOverride(`Properties.${propertyPath}`, value);
+      }
+      /**
+       * Adds an override that deletes the value of a property from the resource definition.
+       * @param propertyPath The path to the property.
+       */
+      addPropertyDeletionOverride(propertyPath) {
+        this.addPropertyOverride(propertyPath, void 0);
+      }
+      cfnPropertyName(cdkPropertyName) {
+        return this.cfnPropertyNames[cdkPropertyName];
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method has been renamed to `addResourceDependency`, which makes it
+       * more clear that this method operates at a different level from the
+       * construct-level `construct.node.addDependency()` mechanism.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependsOn(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This can be used for resources across stacks (or nested stack) boundaries
+       * and the dependency will automatically be transferred to the relevant scope.
+       *
+       * This method only adds dependencies between L1 resources. If you are
+       * looking for a generic construct-to-construct dependency mechanism that works
+       * for all constructs including L2s, use `construct.node.addDependency` instead.
+       */
+      addResourceDependency(target, reason) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "add",
+          source: this,
+          target,
+          reason: reason ?? `<${this.node.path}>.addResourceDependency(<${target.node.path}>)`
+        });
+      }
+      /**
+       * Indicates that this resource depends on another resource and cannot be
+       * provisioned unless the other resource has been successfully provisioned.
+       *
+       * This method has been renamed to `addResourceDependency` to more clearly
+       * set it apart from `construct.node.addDependency`. See the documentation
+       * of that function for more details.
+       *
+       * @deprecated Use `addResourceDependency` instead.
+       */
+      addDependency(target) {
+        return this.addResourceDependency(target);
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       */
+      removeResourceDependency(target) {
+        if (!target.shouldSynthesize()) {
+          return;
+        }
+        dispatchDependencyOperation({
+          kind: "remove",
+          source: this,
+          target
+        });
+      }
+      /**
+       * Indicates that this resource no longer depends on another resource.
+       *
+       * This can be used for resources across stacks (including nested stacks)
+       * and the dependency will automatically be removed from the relevant scope.
+       *
+       * @deprecated Use `removeResourceDependency` instead
+       */
+      removeDependency(target) {
+        return this.removeResourceDependency(target);
+      }
+      /**
+       * Retrieves an array of resources and stacks this resource depends on.
+       *
+       * For resources depended on directly, returns the `CfnResource` object. For
+       * dependencies on other stacks, returns the `Stack` object. The order of the
+       * array is not guaranteed.
+       */
+      obtainDependencies() {
+        const ret = [];
+        ret.push(...this._directResourceDependencies());
+        let stack = Stack.of(this);
+        while (stack) {
+          ret.push(...stack._stackDependenciesCausedBy(this).filter((x) => STACK_TYPE.isMarked(x) || _CfnResource.isCfnResource(x)));
+          stack = stack.nestedStackParent;
+        }
+        return ret;
+      }
+      /**
+       * Replaces one dependency with another.
+       * @param target The dependency to replace
+       * @param newTarget The new dependency to add
+       */
+      replaceDependency(target, newTarget) {
+        if (this.obtainDependencies().includes(target)) {
+          this.removeResourceDependency(target);
+          this.addResourceDependency(newTarget);
+        } else {
+          throw new ValidationError(lit`CannotReplaceDependency`, `"${this.node.path}" does not depend on "${target.node.path}"`, this);
+        }
+      }
+      /**
+       * Add a value to the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      addMetadata(key, value) {
+        if (!this.cfnOptions.metadata) {
+          this.cfnOptions.metadata = {};
+        }
+        this.cfnOptions.metadata[key] = value;
+      }
+      /**
+       * Retrieve a value value from the CloudFormation Resource Metadata
+       * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
+       *
+       * Note that this is a different set of metadata from CDK node metadata; this
+       * metadata ends up in the stack template under the resource, whereas CDK
+       * node metadata ends up in the Cloud Assembly.
+       */
+      getMetadata(key) {
+        return this.cfnOptions.metadata?.[key];
+      }
+      /**
+       * @returns a string representation of this resource
+       */
+      toString() {
+        return `${super.toString()} [${this.cfnResourceType}]`;
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to realize a dependency between two resources.
+       *
+       * All validation for appropriate scope has already been done, cycle detection has not been done yet.
+       *
+       * @internal
+       */
+      _addResourceDependency(target) {
+        if (!this.dependsOn) {
+          this.dependsOn = /* @__PURE__ */ new Set();
+        }
+        this.dependsOn.add(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Get a shallow copy of dependencies between this resource and other resources
+       * in the same stack.
+       *
+       * @internal
+       */
+      _directResourceDependencies() {
+        return Array.from(this.dependsOn?.values() ?? []);
+      }
+      /**
+       * Called by `dispatchDependencyOperation` to remove a dependency between two resources.
+       *
+       * All validation for appropriateness has already been done.
+       *
+       * @internal
+       */
+      _removeResourceDependency(target) {
+        this.dependsOn?.delete(target);
+        if (process.env.CDK_DEBUG_DEPS) {
+          console.error(`[CDK_DEBUG_DEPS] resource "${this.node.path}" no longer depends on "${target.node.path}"`);
+        }
+      }
+      /**
+       * Emits CloudFormation for this resource.
+       * @internal
+       */
+      _toCloudFormation() {
+        if (!this.shouldSynthesize()) {
+          return {};
+        }
+        try {
+          const ret = {
+            Resources: {
+              // Post-Resolve operation since otherwise deepMerge is going to mix values into
+              // the Token objects returned by ignoreEmpty.
+              [this.logicalId]: new PostResolveToken({
+                Type: this.cfnResourceType,
+                Properties: ignoreEmpty(this.cfnProperties),
+                DependsOn: ignoreEmpty(renderDependsOn(this.dependsOn)),
+                CreationPolicy: capitalizePropertyNames(this, renderCreationPolicy(this.cfnOptions.creationPolicy)),
+                UpdatePolicy: capitalizePropertyNames(this, this.cfnOptions.updatePolicy),
+                UpdateReplacePolicy: capitalizePropertyNames(this, this.cfnOptions.updateReplacePolicy),
+                DeletionPolicy: capitalizePropertyNames(this, this.cfnOptions.deletionPolicy),
+                Version: this.cfnOptions.version,
+                Description: this.cfnOptions.description,
+                Metadata: ignoreEmpty(this.cfnOptions.metadata),
+                Condition: this.cfnOptions.condition && this.cfnOptions.condition.logicalId
+              }, (resourceDef, context) => {
+                const renderedProps = this.renderProperties(resourceDef.Properties || {});
+                if (renderedProps) {
+                  const hasDefined = Object.values(renderedProps).find((v) => v !== void 0);
+                  resourceDef.Properties = hasDefined !== void 0 ? renderedProps : void 0;
+                }
+                const resolvedRawOverrides = context.resolve(this.rawOverrides, {
+                  // we need to preserve the empty elements here,
+                  // as that's how removing overrides are represented as
+                  removeEmpty: false
+                });
+                return deepMerge(resourceDef, resolvedRawOverrides);
+              })
+            }
+          };
+          return ret;
+        } catch (e) {
+          e.message = `While synthesizing ${this.node.path}: ${e.message}`;
+          const trace = this.creationStack;
+          if (trace) {
+            const creationStack = ["--- resource created at ---", ...trace].join("\n  at ");
+            const problemTrace = e.stack.slice(e.stack.indexOf(e.message) + e.message.length);
+            e.stack = `${e.message}
+  ${creationStack}
+  --- problem discovered at ---${problemTrace}`;
+          }
+          throw e;
+        }
+        function renderDependsOn(dependsOn) {
+          if (!dependsOn) {
+            return [];
+          }
+          return Array.from(dependsOn).filter((r) => r.shouldSynthesize()).sort((x, y) => x.node.path.localeCompare(y.node.path)).map((r) => r.logicalId);
+        }
+        function renderCreationPolicy(policy) {
+          if (!policy) {
+            return void 0;
+          }
+          const result = { ...policy };
+          if (policy.resourceSignal && policy.resourceSignal.timeout) {
+            result.resourceSignal = policy.resourceSignal;
+          }
+          return result;
+        }
+      }
+      get cfnProperties() {
+        const props = this._cfnProperties || {};
+        const tagMgr = TagManager.of(this);
+        if (tagMgr) {
+          const tagsProp = {};
+          tagsProp[tagMgr.tagPropertyName] = tagMgr.renderTags();
+          return deepMerge(props, tagsProp);
+        }
+        return props;
+      }
+      renderProperties(props) {
+        return props;
+      }
+      /**
+       * Deprecated
+       * @deprecated use `updatedProperties`
+       *
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperites() {
+        return this.updatedProperties;
+      }
+      /**
+       * Return properties modified after initiation
+       *
+       * Resources that expose mutable properties should override this function to
+       * collect and return the properties object for this resource.
+       */
+      get updatedProperties() {
+        return this._cfnProperties;
+      }
+      validateProperties(_properties) {
+      }
+      /**
+       * Can be overridden by subclasses to determine if this resource will be rendered
+       * into the cloudformation template.
+       *
+       * @returns `true` if the resource should be included or `false` is the resource
+       * should be omitted.
+       */
+      shouldSynthesize() {
+        return true;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-manager.ts
+function TAG_FORMATTERS() {
+  return _tagFormattersCache ?? (_tagFormattersCache = {
+    ["AutoScalingGroupTag" /* AUTOSCALING_GROUP */]: new AsgFormatter(),
+    ["StandardTag" /* STANDARD */]: new StandardFormatter(),
+    ["StringToStringMap" /* MAP */]: new MapFormatter(),
+    ["KeyValue" /* KEY_VALUE */]: new KeyValueFormatter(),
+    ["NotTaggable" /* NOT_TAGGABLE */]: new NoFormat()
+  });
+}
+var TAG_MANAGER_SYM, StandardFormatter, AsgFormatter, MapFormatter, KeyValueFormatter, NoFormat, _tagFormattersCache, TagManager;
+var init_tag_manager = __esm({
+  "../../aws-cdk-lib/core/lib/tag-manager.ts"() {
+    "use strict";
+    init_cfn_resource();
+    init_errors();
+    init_lazy();
+    init_literal_string();
+    init_token();
+    TAG_MANAGER_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.TagManager");
+    StandardFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value
+          });
+        }
+        return cfnTags;
+      }
+    };
+    AsgFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (!Array.isArray(cfnPropertyTags)) {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedArray`, `Invalid tag input expected array of {key, value, propagateAtLaunch} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        const dynamicTags = [];
+        for (const tag of cfnPropertyTags) {
+          if (tag.key === void 0 || tag.value === void 0 || tag.propagateAtLaunch === void 0) {
+            dynamicTags.push(tag);
+          } else {
+            tags.push({
+              key: `${tag.key}`,
+              value: `${tag.value}`,
+              priority,
+              applyToLaunchedInstances: !!tag.propagateAtLaunch
+            });
+          }
+        }
+        return { tags, dynamicTags };
+      }
+      formatTags(tags) {
+        const cfnTags = [];
+        for (const tag of tags) {
+          cfnTags.push({
+            key: tag.key,
+            value: tag.value,
+            propagateAtLaunch: tag.applyToLaunchedInstances !== false
+          });
+        }
+        return cfnTags;
+      }
+    };
+    MapFormatter = class {
+      parseTags(cfnPropertyTags, priority) {
+        if (Array.isArray(cfnPropertyTags) || typeof cfnPropertyTags !== "object") {
+          throw new UnscopedValidationError(lit`InvalidTagInputExpectedMap`, `Invalid tag input expected map of {key: value} have ${JSON.stringify(cfnPropertyTags)}`);
+        }
+        const tags = [];
+        for (const [key, value] of Object.entries(cfnPropertyTags)) {
+          tags.push({
+            key,
+            value: `${value}`,
+            priority
+          });
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(tags) {
+        const cfnTags = {};
+        for (const tag of tags) {
+          cfnTags[`${tag.key}`] = `${tag.value}`;
+        }
+        return cfnTags;
+      }
+    };
+    KeyValueFormatter = class {
+      parseTags(keyValueTags, priority) {
+        const tags = [];
+        for (const key in keyValueTags) {
+          if (keyValueTags.hasOwnProperty(key)) {
+            const value = keyValueTags[key];
+            tags.push({
+              key,
+              value,
+              priority
+            });
+          }
+        }
+        return { tags, dynamicTags: void 0 };
+      }
+      formatTags(unformattedTags) {
+        const tags = [];
+        unformattedTags.forEach((tag) => {
+          tags.push({
+            Key: tag.key,
+            Value: tag.value
+          });
+        });
+        return tags;
+      }
+    };
+    NoFormat = class {
+      parseTags(_cfnPropertyTags) {
+        return { tags: [], dynamicTags: void 0 };
+      }
+      formatTags(_tags) {
+        return void 0;
+      }
+    };
+    TagManager = class _TagManager {
+      /**
+       * Check whether the given construct is Taggable
+       */
+      static isTaggable(construct) {
+        const tags = construct.tags;
+        return tags !== void 0 && tags !== null && typeof tags === "object" && tags[TAG_MANAGER_SYM];
+      }
+      /**
+       * Check whether the given construct is ITaggableV2
+       */
+      static isTaggableV2(construct) {
+        return construct.cdkTagManager !== void 0;
+      }
+      /**
+       * Return the TagManager associated with the given construct, if any
+       */
+      static of(construct) {
+        return _TagManager.isTaggableV2(construct) ? construct.cdkTagManager : _TagManager.isTaggable(construct) ? construct.tags : void 0;
+      }
+      /**
+       * The property name for tag values
+       *
+       * Normally this is `tags` but some resources choose a different name. Cognito
+       * UserPool uses UserPoolTags
+       */
+      tagPropertyName;
+      /**
+       * A lazy value that represents the rendered tags at synthesis time
+       *
+       * If you need to make a custom construct taggable, use the value of this
+       * property to pass to the `tags` property of the underlying construct.
+       */
+      renderedTags;
+      tags = /* @__PURE__ */ new Map();
+      dynamicTags;
+      priorities = /* @__PURE__ */ new Map();
+      tagFormatter;
+      resourceTypeName;
+      externalTagPriority = 50;
+      didHaveInitialTags;
+      constructor(tagType, resourceTypeName, initialTags, options = {}) {
+        this.resourceTypeName = resourceTypeName;
+        this.tagFormatter = TAG_FORMATTERS()[tagType];
+        this.tagPropertyName = options.tagPropertyName || "tags";
+        this.parseExternalTags(initialTags);
+        this.didHaveInitialTags = initialTags !== void 0;
+        this.renderedTags = Lazy.any({ produce: () => this.renderTags() });
+      }
+      /**
+       * Adds the specified tag to the array of tags
+       *
+       */
+      setTag(key, value, priority = 0, applyToLaunchedInstances = true) {
+        this._setTag({ key, value, priority, applyToLaunchedInstances });
+      }
+      /**
+       * Removes the specified tag from the array if it exists
+       *
+       * @param key The tag to remove
+       * @param priority The priority of the remove operation
+       */
+      removeTag(key, priority) {
+        if (priority >= (this.priorities.get(key) || 0)) {
+          this.tags.delete(key);
+          this.priorities.set(key, priority);
+        }
+      }
+      /**
+       * Renders tags into the proper format based on TagType
+       *
+       * This method will eagerly render the tags currently applied. In
+       * most cases, you should be using `tagManager.renderedTags` instead,
+       * which will return a `Lazy` value that will resolve to the correct
+       * tags at synthesis time.
+       */
+      renderTags(combineWithTags) {
+        if (combineWithTags !== void 0 && this.didHaveInitialTags) {
+          throw new UnscopedValidationError(lit`SpecifyExternalTagsEither`, "Specify external tags either during the creation of TagManager, or as a parameter to renderTags(), but not both");
+        }
+        this.parseExternalTags(combineWithTags);
+        const formattedTags = this.tagFormatter.formatTags(this.sortedTags);
+        if (isResolvableObject(this.dynamicTags)) {
+          if (this.tags.size > 0) {
+            throw new UnscopedValidationError(
+              lit`CombineTagsIntrinsicWithLiteral`,
+              "Cannot combine literal tags with a Tags property that is a single unresolved intrinsic (e.g. Fn::If). Remove the literal tags or resolve the intrinsic at the property level."
+            );
+          }
+          return this.dynamicTags;
+        }
+        if (Array.isArray(formattedTags) || Array.isArray(this.dynamicTags)) {
+          const ret = [...formattedTags ?? [], ...this.dynamicTags ?? []];
+          return ret.length > 0 ? ret : void 0;
+        } else {
+          const ret = { ...formattedTags ?? {}, ...this.dynamicTags ?? {} };
+          return Object.keys(ret).length > 0 ? ret : void 0;
+        }
+      }
+      /**
+       * Render the tags in a readable format
+       */
+      tagValues() {
+        const ret = {};
+        for (const tag of this.sortedTags) {
+          ret[tag.key] = tag.value;
+        }
+        return ret;
+      }
+      /**
+       * Determine if the aspect applies here
+       *
+       * Looks at the include and exclude resourceTypeName arrays to determine if
+       * the aspect applies here
+       */
+      applyTagAspectHere(include, exclude) {
+        if (exclude && exclude.length > 0 && exclude.indexOf(this.resourceTypeName) !== -1) {
+          return false;
+        }
+        if (include && include.length > 0 && include.indexOf(this.resourceTypeName) === -1) {
+          return false;
+        }
+        return true;
+      }
+      /**
+       * Returns true if there are any tags defined
+       */
+      hasTags() {
+        return this.tags.size > 0;
+      }
+      _setTag(...tags) {
+        for (const tag of tags) {
+          if (tag.priority >= (this.priorities.get(tag.key) || 0)) {
+            this.tags.set(tag.key, tag);
+            this.priorities.set(tag.key, tag.priority);
+          }
+        }
+      }
+      get sortedTags() {
+        return Array.from(this.tags.values()).sort((a, b) => a.key.localeCompare(b.key));
+      }
+      /**
+       * Parse external tags.
+       *
+       * Set the parseable ones into this tag manager. Save the rest (tokens, lazies) in `this.dynamicTags`.
+       */
+      parseExternalTags(initialTags) {
+        if (initialTags !== void 0) {
+          if (isResolvableObject(initialTags)) {
+            this.dynamicTags = initialTags;
+            return;
+          }
+          const parseTagsResult = this.tagFormatter.parseTags(initialTags, this.externalTagPriority);
+          this.dynamicTags = parseTagsResult.dynamicTags;
+          this._setTag(...parseTagsResult.tags);
+        }
+      }
+    };
+    TagManager.prototype[TAG_MANAGER_SYM] = true;
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/tag-aspect.ts
+var init_tag_aspect = __esm({
+  "../../aws-cdk-lib/core/lib/tag-aspect.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_errors();
+    init_feature_flags();
+    init_cx_api();
+    init_aspect_prio();
+    init_literal_string();
+    init_tag_manager();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/selectors.ts
+var ConstructSelector, AllConstructsSelector, CfnResourceSelector, ResourceTypeSelector, minimatch3, IdPatternSelector, OnlyItselfSelector;
+var init_selectors = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/selectors.ts"() {
+    "use strict";
+    init_cfn_resource();
+    ConstructSelector = class {
+      /**
+       * Selects all constructs in the tree.
+       */
+      static all() {
+        return new AllConstructsSelector();
+      }
+      /**
+       * Selects CfnResource constructs or the default CfnResource child.
+       */
+      static cfnResource() {
+        return new CfnResourceSelector();
+      }
+      /**
+       * Selects only the provided construct.
+       */
+      static onlyItself() {
+        return new OnlyItselfSelector();
+      }
+      /**
+       * Selects constructs of a specific type.
+       */
+      static resourcesOfType(...types2) {
+        return new ResourceTypeSelector(types2);
+      }
+      /**
+       * Selects constructs whose construct IDs match a pattern.
+       * Uses glob like matching.
+       */
+      static byId(pattern) {
+        return new IdPatternSelector(pattern, "id");
+      }
+      /**
+       * Selects constructs whose construct paths match a pattern.
+       * Uses glob like matching.
+       */
+      static byPath(pattern) {
+        return new IdPatternSelector(pattern, "path");
+      }
+    };
+    AllConstructsSelector = class {
+      select(scope) {
+        return scope.node.findAll();
+      }
+    };
+    CfnResourceSelector = class {
+      select(scope) {
+        if (CfnResource.isCfnResource(scope)) {
+          return [scope];
+        }
+        const defaultChild = scope.node.defaultChild;
+        if (CfnResource.isCfnResource(defaultChild)) {
+          return [defaultChild];
+        }
+        return [];
+      }
+    };
+    ResourceTypeSelector = class {
+      constructor(types2) {
+        this.types = types2;
+      }
+      types;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (CfnResource.isCfnResource(node) && this.types.includes(node.cfnResourceType)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    ({ minimatch: minimatch3 } = require_commonjs3());
+    IdPatternSelector = class {
+      constructor(pattern, field) {
+        this.pattern = pattern;
+        this.field = field;
+      }
+      pattern;
+      field;
+      select(scope) {
+        const result = [];
+        const visit2 = (node) => {
+          if (minimatch3(node.node[this.field], this.pattern)) {
+            result.push(node);
+          }
+          for (const child of node.node.children) {
+            visit2(child);
+          }
+        };
+        visit2(scope);
+        return result;
+      }
+    };
+    OnlyItselfSelector = class {
+      select(scope) {
+        return [scope];
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/applicator.ts
+var _selectedConstructs_dec, _init10, MixinApplicator;
+var init_applicator = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/applicator.ts"() {
+    "use strict";
+    init_errors();
+    init_mixin_metadata();
+    init_selectors();
+    init_helpers_internal();
+    init_literal_string();
+    _selectedConstructs_dec = [memoizedGetter];
+    MixinApplicator = class {
+      constructor(scope, selector = ConstructSelector.all()) {
+        __runInitializers(_init10, 5, this);
+        __publicField(this, "scope");
+        __publicField(this, "selector");
+        __publicField(this, "applications", []);
+        __publicField(this, "expectAll", false);
+        __publicField(this, "expectAny", false);
+        this.scope = scope;
+        this.selector = selector;
+      }
+      get selectedConstructs() {
+        return this.selector.select(this.scope);
+      }
+      /**
+       * Returns the successful mixin applications.
+       */
+      get report() {
+        return this.applications;
+      }
+      /**
+       * Applies a mixin to selected constructs.
+       */
+      apply(...mixins) {
+        const applications = [];
+        const allConstructs = Array.from(this.selectedConstructs);
+        for (const mixin of mixins) {
+          for (const construct of allConstructs) {
+            if (mixin.supports(construct)) {
+              applyMixin(construct, mixin);
+              applications.push({ construct, mixin });
+            } else if (this.expectAll) {
+              throw new ValidationError(lit`Mixin`, `Mixin ${mixin.constructor.name} could not be applied to ${construct.constructor.name} but was required to.`, this.scope);
+            }
+          }
+        }
+        if (this.expectAny && applications.length <= 0) {
+          throw new ValidationError(lit`LeastOneMixinApplicationRequired`, "At least one mixin application was required, but none of the provided mixins could be applied to any selected construct.", this.scope);
+        }
+        this.applications.push(...applications);
+        return this;
+      }
+      /**
+       * Requires all selected constructs to support the applied mixins.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAll()
+       *   .apply(new MyMixin());
+       */
+      requireAll() {
+        this.expectAll = true;
+        return this;
+      }
+      /**
+       * Requires at least one mixin to be successfully applied.
+       *
+       * Will only check for future call of `apply()`.
+       * Set this before calling `apply()` to take effect.
+       *
+       * @example
+       * Mixins.of(scope)
+       *   .requireAny()
+       *   .apply(new MyMixin());
+       */
+      requireAny() {
+        this.expectAny = true;
+        return this;
+      }
+    };
+    _init10 = __decoratorStart(null);
+    __decorateElement(_init10, 2, "selectedConstructs", _selectedConstructs_dec, MixinApplicator);
+    __decoratorMetadata(_init10, MixinApplicator);
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/mixins.ts
+var init_mixins = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/mixins.ts"() {
+    "use strict";
+    init_applicator();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/shims.ts
+var init_shims = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/shims.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/mixins/index.ts
+var init_mixins2 = __esm({
+  "../../aws-cdk-lib/core/lib/mixins/index.ts"() {
+    "use strict";
+    init_mixins();
+    init_selectors();
+    init_applicator();
+    init_property_merge_strategy();
+    init_shims();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-hook.ts
+var init_cfn_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-hook.ts"() {
+    "use strict";
+    init_cfn_element();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts
+var init_cfn_codedeploy_blue_green_hook = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-codedeploy-blue-green-hook.ts"() {
+    "use strict";
+    init_cfn_hook();
+    init_errors();
+    init_literal_string();
+    init_util();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-include.ts
+var init_cfn_include = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-include.ts"() {
+    "use strict";
+    init_cfn_element();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-tag.ts
+var init_cfn_tag = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-tag.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-json.ts
+var import_constructs24;
+var init_cfn_json = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-json.ts"() {
+    "use strict";
+    import_constructs24 = __toESM(require_lib4());
+    init_custom_resource();
+    init_cfn_utils_provider();
+    init_consts();
+    init_core_construct_finders();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/removal-policies.ts
+var init_removal_policies = __esm({
+  "../../aws-cdk-lib/core/lib/removal-policies.ts"() {
+    "use strict";
+    init_annotations();
+    init_aspect();
+    init_cfn_resource();
+    init_aspect_prio();
+    init_removal_policy();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/bitrate.ts
+var BitrateUnit;
+var init_bitrate = __esm({
+  "../../aws-cdk-lib/core/lib/bitrate.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    BitrateUnit = class _BitrateUnit {
+      constructor(label, inBps) {
+        this.label = label;
+        this.inBps = inBps;
+      }
+      label;
+      inBps;
+      static Bps = new _BitrateUnit("bps", 1);
+      static Kbps = new _BitrateUnit("kbps", 1e3);
+      static Mbps = new _BitrateUnit("mbps", 1e6);
+      static Gbps = new _BitrateUnit("gbps", 1e9);
+      toString() {
+        return this.label;
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/expiration.ts
+var init_expiration = __esm({
+  "../../aws-cdk-lib/core/lib/expiration.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/environment.ts
+var init_environment = __esm({
+  "../../aws-cdk-lib/core/lib/environment.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/runtime.ts
+var ValidationResult, ValidationResults, VALIDATION_SUCCESS, CfnSynthesisError;
+var init_runtime = __esm({
+  "../../aws-cdk-lib/core/lib/runtime.ts"() {
+    "use strict";
+    init_errors();
+    init_literal_string();
+    init_token();
+    ValidationResult = class _ValidationResult {
+      constructor(errorMessage = "", results = new ValidationResults()) {
+        this.errorMessage = errorMessage;
+        this.results = results;
+      }
+      errorMessage;
+      results;
+      get isSuccess() {
+        return !this.errorMessage && this.results.isSuccess;
+      }
+      /**
+       * Turn a failed validation into an exception
+       */
+      assertSuccess() {
+        if (!this.isSuccess) {
+          let message = this.errorTree();
+          message = message.slice(0, 1).toUpperCase() + message.slice(1);
+          throw new CfnSynthesisError(message);
+        }
+      }
+      /**
+       * Return a string rendering of the tree of validation failures
+       */
+      errorTree() {
+        const childMessages = this.results.errorTreeList();
+        return this.errorMessage + (childMessages.length ? `
+  ${childMessages.replace(/\n/g, "\n  ")}` : "");
+      }
+      /**
+       * Wrap this result with an error message, if it concerns an error
+       */
+      prefix(message) {
+        if (this.isSuccess) {
+          return this;
+        }
+        return new _ValidationResult(`${message}: ${this.errorMessage}`, this.results);
+      }
+    };
+    ValidationResults = class {
+      constructor(results = []) {
+        this.results = results;
+      }
+      results;
+      collect(result) {
+        if (!result.isSuccess) {
+          this.results.push(result);
+        }
+      }
+      get isSuccess() {
+        return this.results.every((x) => x.isSuccess);
+      }
+      errorTreeList() {
+        return this.results.map((child) => child.errorTree()).join("\n");
+      }
+      /**
+       * Wrap up all validation results into a single tree node
+       *
+       * If there are failures in the collection, add a message, otherwise
+       * return a success.
+       */
+      wrap(message) {
+        if (this.isSuccess) {
+          return VALIDATION_SUCCESS;
+        }
+        return new ValidationResult(message, this);
+      }
+    };
+    VALIDATION_SUCCESS = new ValidationResult();
+    CfnSynthesisError = class extends Error {
+      type = "CfnSynthesisError";
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/secret-value.ts
+var SecretValue, SECRET_VALUE_SYM;
+var init_secret_value = __esm({
+  "../../aws-cdk-lib/core/lib/secret-value.ts"() {
+    "use strict";
+    init_cfn_dynamic_reference();
+    init_cfn_resource();
+    init_errors();
+    init_feature_flags();
+    init_cfn_reference();
+    init_intrinsic();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+    SecretValue = class _SecretValue extends Intrinsic {
+      /**
+       * Test whether an object is a SecretValue
+       */
+      static isSecretValue(x) {
+        return typeof x === "object" && x && SECRET_VALUE_SYM in x;
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The only reasonable use case for using this method is when you are testing.
+       *
+       * @deprecated Use `unsafePlainText()` instead.
+       */
+      static plainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Construct a literal secret value for use with secret-aware constructs
+       *
+       * Do not use this method for any secrets that you care about! The value
+       * will be visible to anyone who has access to the CloudFormation template
+       * (via the AWS Console, SDKs, or CLI).
+       *
+       * The primary use case for using this method is when you are testing.
+       *
+       * The other use case where this is appropriate is when constructing a JSON secret.
+       * For example, a JSON secret might have multiple fields where only some are actual
+       * secret values.
+       *
+       * @example
+       * declare const secret: SecretValue;
+       * const jsonSecret = {
+       *   username: SecretValue.unsafePlainText('myUsername'),
+       *   password: secret,
+       * };
+       */
+      static unsafePlainText(secret) {
+        return new _SecretValue(secret);
+      }
+      /**
+       * Creates a `SecretValue` with a value which is dynamically loaded from AWS Secrets Manager.
+       *
+       * If you rotate the value in the Secret, you must also change at least one property
+       * on the resource where you are using the secret, to force CloudFormation to re-read the secret.
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static secretsManager(secretId, options = {}) {
+        const dyref = new CfnDynamicReference("secretsmanager" /* SECRETS_MANAGER */, _SecretValue.cfnDynamicReferenceKey(secretId, options));
+        return this.cfnDynamicReference(dyref);
+      }
+      /**
+       * Returns a key which can be used within an AWS CloudFormation dynamic reference to dynamically load a
+       * secret from AWS Secrets Manager
+       *
+       * @see https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html
+       *
+       * @param secretId The ID or ARN of the secret
+       * @param options Options
+       */
+      static cfnDynamicReferenceKey(secretId, options = {}) {
+        if (!secretId) {
+          throw new UnscopedValidationError(lit`SecretIdCannotBeEmpty`, "secretId cannot be empty");
+        }
+        if (!Token.isUnresolved(secretId) && !secretId.startsWith("arn:") && secretId.includes(":")) {
+          throw new UnscopedValidationError(lit`SecretIdContainsColon`, `secret id "${secretId}" is not an ARN but contains ":"`);
+        }
+        if (options.versionStage && options.versionId) {
+          throw new UnscopedValidationError(lit`VersionStageAndVersionIdBothProvided`, `versionStage: '${options.versionStage}' and versionId: '${options.versionId}' were both provided but only one is allowed`);
+        }
+        const parts = [
+          secretId,
+          "SecretString",
+          options.jsonField || "",
+          options.versionStage || "",
+          options.versionId || ""
+        ];
+        return parts.join(":");
+      }
+      /**
+       * Use a secret value stored from a Systems Manager (SSM) parameter.
+       *
+       * This secret source in only supported in a limited set of resources and
+       * properties. [Click here for the list of supported
+       * properties](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html#template-parameters-dynamic-patterns-resources).
+       *
+       * @param parameterName The name of the parameter in the Systems Manager
+       * Parameter Store. The parameter name is case-sensitive.
+       *
+       * @param version An integer that specifies the version of the parameter to
+       * use. If you don't specify the exact version, AWS CloudFormation uses the
+       * latest version of the parameter.
+       */
+      static ssmSecure(parameterName, version3) {
+        return this.cfnDynamicReference(
+          new CfnDynamicReference(
+            "ssm-secure" /* SSM_SECURE */,
+            version3 ? `${parameterName}:${version3}` : parameterName
+          )
+        );
+      }
+      /**
+       * Obtain the secret value through a CloudFormation dynamic reference.
+       *
+       * If possible, use `SecretValue.ssmSecure` or `SecretValue.secretsManager` directly.
+       *
+       * @param ref The dynamic reference to use.
+       */
+      static cfnDynamicReference(ref) {
+        return new _SecretValue(ref);
+      }
+      /**
+       * Obtain the secret value through a CloudFormation parameter.
+       *
+       * Generally, this is not a recommended approach. AWS Secrets Manager is the
+       * recommended way to reference secrets.
+       *
+       * @param param The CloudFormation parameter to use.
+       */
+      static cfnParameter(param) {
+        if (!param.noEcho) {
+          throw new UnscopedValidationError(lit`CloudFormationParameterMustHaveNoEcho`, 'CloudFormation parameter must be configured with "NoEcho"');
+        }
+        return new _SecretValue(param.value);
+      }
+      /**
+       * Use a resource's output as secret value
+       */
+      static resourceAttribute(attr) {
+        const resolved = Tokenization.reverseCompleteString(attr);
+        if (!resolved || !CfnReference.isCfnReference(resolved) || !CfnResource.isCfnResource(resolved.target)) {
+          throw new UnscopedValidationError(lit`SecretValueMustUseResourceAttribute`, "SecretValue.resourceAttribute() must be used with a resource attribute");
+        }
+        return new _SecretValue(attr);
+      }
+      rawValue;
+      /**
+       * Construct a SecretValue (do not use!)
+       *
+       * Do not use the constructor directly: use one of the factory functions on the class
+       * instead.
+       */
+      constructor(protectedValue, options) {
+        super(protectedValue, options);
+        this.rawValue = protectedValue;
+      }
+      /**
+       * Disable usage protection on this secret
+       *
+       * Call this to indicate that you want to use the secret value held by this
+       * object in an unchecked way. If you don't call this method, using the secret
+       * value directly in a string context or as a property value somewhere will
+       * produce an error.
+       *
+       * This method has 'unsafe' in the name on purpose! Make sure that the
+       * construct property you are using the returned value in is does not end up
+       * in a place in your AWS infrastructure where it could be read by anyone
+       * unexpected.
+       *
+       * When in doubt, don't call this method and only pass the object to constructs that
+       * accept `SecretValue` parameters.
+       */
+      unsafeUnwrap() {
+        return Token.asString(this.rawValue);
+      }
+      /**
+       * Resolve the secret
+       *
+       * If the feature flag is not set, resolve as normal. Otherwise, throw a descriptive
+       * error that the usage guard is missing.
+       */
+      resolve(context) {
+        if (FeatureFlags.of(context.scope).isEnabled(CHECK_SECRET_USAGE)) {
+          throw new UnscopedValidationError(
+            lit`SecretValueExposureRisk`,
+            `Synthing a secret value to ${context.documentPath.join("/")}. Using a SecretValue here risks exposing your secret. Only pass SecretValues to constructs that accept a SecretValue property, or call AWS Secrets Manager directly in your runtime code. Call 'secretValue.unsafeUnwrap()' if you understand and accept the risks.`
+          );
+        }
+        return super.resolve(context);
+      }
+    };
+    SECRET_VALUE_SYM = /* @__PURE__ */ Symbol.for("@aws-cdk/core.SecretValue");
+    Object.defineProperty(SecretValue.prototype, SECRET_VALUE_SYM, {
+      value: true,
+      configurable: false,
+      enumerable: false,
+      writable: false
+    });
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/physical-name.ts
+var PhysicalName;
+var init_physical_name = __esm({
+  "../../aws-cdk-lib/core/lib/physical-name.ts"() {
+    "use strict";
+    init_physical_name_generator();
+    init_token();
+    PhysicalName = class {
+      /**
+       * Use this to automatically generate a physical name for an AWS resource only
+       * if the resource is referenced across environments (account/region).
+       * Otherwise, the name will be allocated during deployment by CloudFormation.
+       *
+       * If you are certain that a resource will be referenced across environments,
+       * you may also specify an explicit physical name for it. This option is
+       * mostly designed for reusable constructs which may or may not be referenced
+       * across environments.
+       */
+      static GENERATE_IF_NEEDED = Token.asString(new GeneratedWhenNeededMarker());
+      constructor() {
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cloudformation.generated.ts
+var init_cloudformation_generated = __esm({
+  "../../aws-cdk-lib/core/lib/cloudformation.generated.ts"() {
+    "use strict";
+    init_lib3();
+    init_helpers_internal();
+    init_errors();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/nested-stack.ts
+var import_constructs25;
+var init_nested_stack = __esm({
+  "../../aws-cdk-lib/core/lib/nested-stack.ts"() {
+    "use strict";
+    import_constructs25 = __toESM(require_lib4());
+    init_assets();
+    init_cfn_fn();
+    init_cfn_pseudo();
+    init_cloudformation_generated();
+    init_errors();
+    init_box();
+    init_lazy();
+    init_names();
+    init_core_construct_finders();
+    init_removal_policy();
+    init_stack();
+    init_stack_synthesizers();
+    init_token();
+    init_cx_api();
+    init_literal_string();
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/cfn-capabilities.ts
+var init_cfn_capabilities = __esm({
+  "../../aws-cdk-lib/core/lib/cfn-capabilities.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/eventbridge.ts
+var init_eventbridge = __esm({
+  "../../aws-cdk-lib/core/lib/eventbridge.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/grants.ts
+var init_grants = __esm({
+  "../../aws-cdk-lib/core/lib/grants.ts"() {
+    "use strict";
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/time-zone.ts
+var TimeZone;
+var init_time_zone = __esm({
+  "../../aws-cdk-lib/core/lib/time-zone.ts"() {
+    "use strict";
+    TimeZone = class _TimeZone {
+      /**
+       *
+       * @param timezoneName The name of the timezone
+       */
+      constructor(timezoneName) {
+        this.timezoneName = timezoneName;
+      }
+      timezoneName;
+      /** IANA Time Zone database entry for Africa/Abidjan.  UTC offset +00:00/+00:00. */
+      static AFRICA_ABIDJAN = new _TimeZone("Africa/Abidjan");
+      /** IANA Time Zone database entry for Africa/Algiers.  UTC offset +01:00/+01:00. */
+      static AFRICA_ALGIERS = new _TimeZone("Africa/Algiers");
+      /** IANA Time Zone database entry for Africa/Bissau.  UTC offset +00:00/+00:00. */
+      static AFRICA_BISSAU = new _TimeZone("Africa/Bissau");
+      /** IANA Time Zone database entry for Africa/Cairo.  UTC offset +02:00/+02:00. */
+      static AFRICA_CAIRO = new _TimeZone("Africa/Cairo");
+      /** IANA Time Zone database entry for Africa/Casablanca.  UTC offset +01:00/+00:00. */
+      static AFRICA_CASABLANCA = new _TimeZone("Africa/Casablanca");
+      /** IANA Time Zone database entry for Africa/Ceuta.  UTC offset +01:00/+02:00. */
+      static AFRICA_CEUTA = new _TimeZone("Africa/Ceuta");
+      /** IANA Time Zone database entry for Africa/El_Aaiun.  UTC offset +01:00/+00:00. */
+      static AFRICA_EL_AAIUN = new _TimeZone("Africa/El_Aaiun");
+      /** IANA Time Zone database entry for Africa/Johannesburg.  UTC offset +02:00/+02:00. */
+      static AFRICA_JOHANNESBURG = new _TimeZone("Africa/Johannesburg");
+      /** IANA Time Zone database entry for Africa/Juba.  UTC offset +02:00/+02:00. */
+      static AFRICA_JUBA = new _TimeZone("Africa/Juba");
+      /** IANA Time Zone database entry for Africa/Khartoum.  UTC offset +02:00/+02:00. */
+      static AFRICA_KHARTOUM = new _TimeZone("Africa/Khartoum");
+      /** IANA Time Zone database entry for Africa/Lagos.  UTC offset +01:00/+01:00. */
+      static AFRICA_LAGOS = new _TimeZone("Africa/Lagos");
+      /** IANA Time Zone database entry for Africa/Maputo.  UTC offset +02:00/+02:00. */
+      static AFRICA_MAPUTO = new _TimeZone("Africa/Maputo");
+      /** IANA Time Zone database entry for Africa/Monrovia.  UTC offset +00:00/+00:00. */
+      static AFRICA_MONROVIA = new _TimeZone("Africa/Monrovia");
+      /** IANA Time Zone database entry for Africa/Nairobi.  UTC offset +03:00/+03:00. */
+      static AFRICA_NAIROBI = new _TimeZone("Africa/Nairobi");
+      /** IANA Time Zone database entry for Africa/Ndjamena.  UTC offset +01:00/+01:00. */
+      static AFRICA_NDJAMENA = new _TimeZone("Africa/Ndjamena");
+      /** IANA Time Zone database entry for Africa/Sao_Tome.  UTC offset +00:00/+00:00. */
+      static AFRICA_SAO_TOME = new _TimeZone("Africa/Sao_Tome");
+      /** IANA Time Zone database entry for Africa/Tripoli.  UTC offset +02:00/+02:00. */
+      static AFRICA_TRIPOLI = new _TimeZone("Africa/Tripoli");
+      /** IANA Time Zone database entry for Africa/Tunis.  UTC offset +01:00/+01:00. */
+      static AFRICA_TUNIS = new _TimeZone("Africa/Tunis");
+      /** IANA Time Zone database entry for Africa/Windhoek.  UTC offset +02:00/+02:00. */
+      static AFRICA_WINDHOEK = new _TimeZone("Africa/Windhoek");
+      /** IANA Time Zone database entry for America/Adak.  UTC offset −10:00/−09:00. */
+      static AMERICA_ADAK = new _TimeZone("America/Adak");
+      /** IANA Time Zone database entry for America/Anchorage.  UTC offset −09:00/−08:00. */
+      static AMERICA_ANCHORAGE = new _TimeZone("America/Anchorage");
+      /** IANA Time Zone database entry for America/Araguaina.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARAGUAINA = new _TimeZone("America/Araguaina");
+      /** IANA Time Zone database entry for America/Argentina/Buenos_Aires.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_BUENOS_AIRES = new _TimeZone("America/Argentina/Buenos_Aires");
+      /** IANA Time Zone database entry for America/Argentina/Catamarca.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CATAMARCA = new _TimeZone("America/Argentina/Catamarca");
+      /** IANA Time Zone database entry for America/Argentina/Cordoba.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_CORDOBA = new _TimeZone("America/Argentina/Cordoba");
+      /** IANA Time Zone database entry for America/Argentina/Jujuy.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_JUJUY = new _TimeZone("America/Argentina/Jujuy");
+      /** IANA Time Zone database entry for America/Argentina/La_Rioja.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_LA_RIOJA = new _TimeZone("America/Argentina/La_Rioja");
+      /** IANA Time Zone database entry for America/Argentina/Mendoza.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_MENDOZA = new _TimeZone("America/Argentina/Mendoza");
+      /** IANA Time Zone database entry for America/Argentina/Rio_Gallegos.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_RIO_GALLEGOS = new _TimeZone("America/Argentina/Rio_Gallegos");
+      /** IANA Time Zone database entry for America/Argentina/Salta.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SALTA = new _TimeZone("America/Argentina/Salta");
+      /** IANA Time Zone database entry for America/Argentina/San_Juan.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_JUAN = new _TimeZone("America/Argentina/San_Juan");
+      /** IANA Time Zone database entry for America/Argentina/San_Luis.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_SAN_LUIS = new _TimeZone("America/Argentina/San_Luis");
+      /** IANA Time Zone database entry for America/Argentina/Tucuman.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_TUCUMAN = new _TimeZone("America/Argentina/Tucuman");
+      /** IANA Time Zone database entry for America/Argentina/Ushuaia.  UTC offset −03:00/−03:00. */
+      static AMERICA_ARGENTINA_USHUAIA = new _TimeZone("America/Argentina/Ushuaia");
+      /** IANA Time Zone database entry for America/Asuncion.  UTC offset −04:00/−03:00. */
+      static AMERICA_ASUNCION = new _TimeZone("America/Asuncion");
+      /** IANA Time Zone database entry for America/Bahia.  UTC offset −03:00/−03:00. */
+      static AMERICA_BAHIA = new _TimeZone("America/Bahia");
+      /** IANA Time Zone database entry for America/Bahia_Banderas.  UTC offset −06:00/−06:00. */
+      static AMERICA_BAHIA_BANDERAS = new _TimeZone("America/Bahia_Banderas");
+      /** IANA Time Zone database entry for America/Barbados.  UTC offset −04:00/−04:00. */
+      static AMERICA_BARBADOS = new _TimeZone("America/Barbados");
+      /** IANA Time Zone database entry for America/Belem.  UTC offset −03:00/−03:00. */
+      static AMERICA_BELEM = new _TimeZone("America/Belem");
+      /** IANA Time Zone database entry for America/Belize.  UTC offset −06:00/−06:00. */
+      static AMERICA_BELIZE = new _TimeZone("America/Belize");
+      /** IANA Time Zone database entry for America/Boa_Vista.  UTC offset −04:00/−04:00. */
+      static AMERICA_BOA_VISTA = new _TimeZone("America/Boa_Vista");
+      /** IANA Time Zone database entry for America/Bogota.  UTC offset −05:00/−05:00. */
+      static AMERICA_BOGOTA = new _TimeZone("America/Bogota");
+      /** IANA Time Zone database entry for America/Boise.  UTC offset −07:00/−06:00. */
+      static AMERICA_BOISE = new _TimeZone("America/Boise");
+      /** IANA Time Zone database entry for America/Cambridge_Bay.  UTC offset −07:00/−06:00. */
+      static AMERICA_CAMBRIDGE_BAY = new _TimeZone("America/Cambridge_Bay");
+      /** IANA Time Zone database entry for America/Campo_Grande.  UTC offset −04:00/−04:00. */
+      static AMERICA_CAMPO_GRANDE = new _TimeZone("America/Campo_Grande");
+      /** IANA Time Zone database entry for America/Cancun.  UTC offset −05:00/−05:00. */
+      static AMERICA_CANCUN = new _TimeZone("America/Cancun");
+      /** IANA Time Zone database entry for America/Caracas.  UTC offset −04:00/−04:00. */
+      static AMERICA_CARACAS = new _TimeZone("America/Caracas");
+      /** IANA Time Zone database entry for America/Cayenne.  UTC offset −03:00/−03:00. */
+      static AMERICA_CAYENNE = new _TimeZone("America/Cayenne");
+      /** IANA Time Zone database entry for America/Chicago.  UTC offset −06:00/−05:00. */
+      static AMERICA_CHICAGO = new _TimeZone("America/Chicago");
+      /** IANA Time Zone database entry for America/Chihuahua.  UTC offset −06:00/−06:00. */
+      static AMERICA_CHIHUAHUA = new _TimeZone("America/Chihuahua");
+      /** IANA Time Zone database entry for America/Ciudad_Juarez.  UTC offset −07:00/−06:00. */
+      static AMERICA_CIUDAD_JUAREZ = new _TimeZone("America/Ciudad_Juarez");
+      /** IANA Time Zone database entry for America/Costa_Rica.  UTC offset −06:00/−06:00. */
+      static AMERICA_COSTA_RICA = new _TimeZone("America/Costa_Rica");
+      /** IANA Time Zone database entry for America/Cuiaba.  UTC offset −04:00/−04:00. */
+      static AMERICA_CUIABA = new _TimeZone("America/Cuiaba");
+      /** IANA Time Zone database entry for America/Danmarkshavn.  UTC offset +00:00/+00:00. */
+      static AMERICA_DANMARKSHAVN = new _TimeZone("America/Danmarkshavn");
+      /** IANA Time Zone database entry for America/Dawson.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON = new _TimeZone("America/Dawson");
+      /** IANA Time Zone database entry for America/Dawson_Creek.  UTC offset −07:00/−07:00. */
+      static AMERICA_DAWSON_CREEK = new _TimeZone("America/Dawson_Creek");
+      /** IANA Time Zone database entry for America/Denver.  UTC offset −07:00/−06:00. */
+      static AMERICA_DENVER = new _TimeZone("America/Denver");
+      /** IANA Time Zone database entry for America/Detroit.  UTC offset −05:00/−04:00. */
+      static AMERICA_DETROIT = new _TimeZone("America/Detroit");
+      /** IANA Time Zone database entry for America/Edmonton.  UTC offset −07:00/−06:00. */
+      static AMERICA_EDMONTON = new _TimeZone("America/Edmonton");
+      /** IANA Time Zone database entry for America/Eirunepe.  UTC offset −05:00/−05:00. */
+      static AMERICA_EIRUNEPE = new _TimeZone("America/Eirunepe");
+      /** IANA Time Zone database entry for America/El_Salvador.  UTC offset −06:00/−06:00. */
+      static AMERICA_EL_SALVADOR = new _TimeZone("America/El_Salvador");
+      /** IANA Time Zone database entry for America/Fort_Nelson.  UTC offset −07:00/−07:00. */
+      static AMERICA_FORT_NELSON = new _TimeZone("America/Fort_Nelson");
+      /** IANA Time Zone database entry for America/Fortaleza.  UTC offset −03:00/−03:00. */
+      static AMERICA_FORTALEZA = new _TimeZone("America/Fortaleza");
+      /** IANA Time Zone database entry for America/Glace_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GLACE_BAY = new _TimeZone("America/Glace_Bay");
+      /** IANA Time Zone database entry for America/Goose_Bay.  UTC offset −04:00/−03:00. */
+      static AMERICA_GOOSE_BAY = new _TimeZone("America/Goose_Bay");
+      /** IANA Time Zone database entry for America/Grand_Turk.  UTC offset −05:00/−04:00. */
+      static AMERICA_GRAND_TURK = new _TimeZone("America/Grand_Turk");
+      /** IANA Time Zone database entry for America/Guatemala.  UTC offset −06:00/−06:00. */
+      static AMERICA_GUATEMALA = new _TimeZone("America/Guatemala");
+      /** IANA Time Zone database entry for America/Guayaquil.  UTC offset −05:00/−05:00. */
+      static AMERICA_GUAYAQUIL = new _TimeZone("America/Guayaquil");
+      /** IANA Time Zone database entry for America/Guyana.  UTC offset −04:00/−04:00. */
+      static AMERICA_GUYANA = new _TimeZone("America/Guyana");
+      /** IANA Time Zone database entry for America/Halifax.  UTC offset −04:00/−03:00. */
+      static AMERICA_HALIFAX = new _TimeZone("America/Halifax");
+      /** IANA Time Zone database entry for America/Havana.  UTC offset −05:00/−04:00. */
+      static AMERICA_HAVANA = new _TimeZone("America/Havana");
+      /** IANA Time Zone database entry for America/Hermosillo.  UTC offset −07:00/−07:00. */
+      static AMERICA_HERMOSILLO = new _TimeZone("America/Hermosillo");
+      /** IANA Time Zone database entry for America/Indiana/Indianapolis.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_INDIANAPOLIS = new _TimeZone("America/Indiana/Indianapolis");
+      /** IANA Time Zone database entry for America/Indiana/Knox.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_KNOX = new _TimeZone("America/Indiana/Knox");
+      /** IANA Time Zone database entry for America/Indiana/Marengo.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_MARENGO = new _TimeZone("America/Indiana/Marengo");
+      /** IANA Time Zone database entry for America/Indiana/Petersburg.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_PETERSBURG = new _TimeZone("America/Indiana/Petersburg");
+      /** IANA Time Zone database entry for America/Indiana/Tell_City.  UTC offset −06:00/−05:00. */
+      static AMERICA_INDIANA_TELL_CITY = new _TimeZone("America/Indiana/Tell_City");
+      /** IANA Time Zone database entry for America/Indiana/Vevay.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VEVAY = new _TimeZone("America/Indiana/Vevay");
+      /** IANA Time Zone database entry for America/Indiana/Vincennes.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_VINCENNES = new _TimeZone("America/Indiana/Vincennes");
+      /** IANA Time Zone database entry for America/Indiana/Winamac.  UTC offset −05:00/−04:00. */
+      static AMERICA_INDIANA_WINAMAC = new _TimeZone("America/Indiana/Winamac");
+      /** IANA Time Zone database entry for America/Inuvik.  UTC offset −07:00/−06:00. */
+      static AMERICA_INUVIK = new _TimeZone("America/Inuvik");
+      /** IANA Time Zone database entry for America/Iqaluit.  UTC offset −05:00/−04:00. */
+      static AMERICA_IQALUIT = new _TimeZone("America/Iqaluit");
+      /** IANA Time Zone database entry for America/Jamaica.  UTC offset −05:00/−05:00. */
+      static AMERICA_JAMAICA = new _TimeZone("America/Jamaica");
+      /** IANA Time Zone database entry for America/Juneau.  UTC offset −09:00/−08:00. */
+      static AMERICA_JUNEAU = new _TimeZone("America/Juneau");
+      /** IANA Time Zone database entry for America/Kentucky/Louisville.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_LOUISVILLE = new _TimeZone("America/Kentucky/Louisville");
+      /** IANA Time Zone database entry for America/Kentucky/Monticello.  UTC offset −05:00/−04:00. */
+      static AMERICA_KENTUCKY_MONTICELLO = new _TimeZone("America/Kentucky/Monticello");
+      /** IANA Time Zone database entry for America/La_Paz.  UTC offset −04:00/−04:00. */
+      static AMERICA_LA_PAZ = new _TimeZone("America/La_Paz");
+      /** IANA Time Zone database entry for America/Lima.  UTC offset −05:00/−05:00. */
+      static AMERICA_LIMA = new _TimeZone("America/Lima");
+      /** IANA Time Zone database entry for America/Los_Angeles.  UTC offset −08:00/−07:00. */
+      static AMERICA_LOS_ANGELES = new _TimeZone("America/Los_Angeles");
+      /** IANA Time Zone database entry for America/Maceio.  UTC offset −03:00/−03:00. */
+      static AMERICA_MACEIO = new _TimeZone("America/Maceio");
+      /** IANA Time Zone database entry for America/Managua.  UTC offset −06:00/−06:00. */
+      static AMERICA_MANAGUA = new _TimeZone("America/Managua");
+      /** IANA Time Zone database entry for America/Manaus.  UTC offset −04:00/−04:00. */
+      static AMERICA_MANAUS = new _TimeZone("America/Manaus");
+      /** IANA Time Zone database entry for America/Martinique.  UTC offset −04:00/−04:00. */
+      static AMERICA_MARTINIQUE = new _TimeZone("America/Martinique");
+      /** IANA Time Zone database entry for America/Matamoros.  UTC offset −06:00/−05:00. */
+      static AMERICA_MATAMOROS = new _TimeZone("America/Matamoros");
+      /** IANA Time Zone database entry for America/Mazatlan.  UTC offset −07:00/−07:00. */
+      static AMERICA_MAZATLAN = new _TimeZone("America/Mazatlan");
+      /** IANA Time Zone database entry for America/Menominee.  UTC offset −06:00/−05:00. */
+      static AMERICA_MENOMINEE = new _TimeZone("America/Menominee");
+      /** IANA Time Zone database entry for America/Merida.  UTC offset −06:00/−06:00. */
+      static AMERICA_MERIDA = new _TimeZone("America/Merida");
+      /** IANA Time Zone database entry for America/Metlakatla.  UTC offset −09:00/−08:00. */
+      static AMERICA_METLAKATLA = new _TimeZone("America/Metlakatla");
+      /** IANA Time Zone database entry for America/Mexico_City.  UTC offset −06:00/−06:00. */
+      static AMERICA_MEXICO_CITY = new _TimeZone("America/Mexico_City");
+      /** IANA Time Zone database entry for America/Miquelon.  UTC offset −03:00/−02:00. */
+      static AMERICA_MIQUELON = new _TimeZone("America/Miquelon");
+      /** IANA Time Zone database entry for America/Moncton.  UTC offset −04:00/−03:00. */
+      static AMERICA_MONCTON = new _TimeZone("America/Moncton");
+      /** IANA Time Zone database entry for America/Monterrey.  UTC offset −06:00/−06:00. */
+      static AMERICA_MONTERREY = new _TimeZone("America/Monterrey");
+      /** IANA Time Zone database entry for America/Montevideo.  UTC offset −03:00/−03:00. */
+      static AMERICA_MONTEVIDEO = new _TimeZone("America/Montevideo");
+      /** IANA Time Zone database entry for America/New_York.  UTC offset −05:00/−04:00. */
+      static AMERICA_NEW_YORK = new _TimeZone("America/New_York");
+      /** IANA Time Zone database entry for America/Nome.  UTC offset −09:00/−08:00. */
+      static AMERICA_NOME = new _TimeZone("America/Nome");
+      /** IANA Time Zone database entry for America/Noronha.  UTC offset −02:00/−02:00. */
+      static AMERICA_NORONHA = new _TimeZone("America/Noronha");
+      /** IANA Time Zone database entry for America/North_Dakota/Beulah.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_BEULAH = new _TimeZone("America/North_Dakota/Beulah");
+      /** IANA Time Zone database entry for America/North_Dakota/Center.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_CENTER = new _TimeZone("America/North_Dakota/Center");
+      /** IANA Time Zone database entry for America/North_Dakota/New_Salem.  UTC offset −06:00/−05:00. */
+      static AMERICA_NORTH_DAKOTA_NEW_SALEM = new _TimeZone("America/North_Dakota/New_Salem");
+      /** IANA Time Zone database entry for America/Nuuk.  UTC offset −03:00/−03:00. */
+      static AMERICA_NUUK = new _TimeZone("America/Nuuk");
+      /** IANA Time Zone database entry for America/Ojinaga.  UTC offset −06:00/−05:00. */
+      static AMERICA_OJINAGA = new _TimeZone("America/Ojinaga");
+      /** IANA Time Zone database entry for America/Panama.  UTC offset −05:00/−05:00. */
+      static AMERICA_PANAMA = new _TimeZone("America/Panama");
+      /** IANA Time Zone database entry for America/Paramaribo.  UTC offset −03:00/−03:00. */
+      static AMERICA_PARAMARIBO = new _TimeZone("America/Paramaribo");
+      /** IANA Time Zone database entry for America/Phoenix.  UTC offset −07:00/−07:00. */
+      static AMERICA_PHOENIX = new _TimeZone("America/Phoenix");
+      /** IANA Time Zone database entry for America/Port-au-Prince.  UTC offset −05:00/−04:00. */
+      static AMERICA_PORT_MINUS_AU_MINUS_PRINCE = new _TimeZone("America/Port-au-Prince");
+      /** IANA Time Zone database entry for America/Porto_Velho.  UTC offset −04:00/−04:00. */
+      static AMERICA_PORTO_VELHO = new _TimeZone("America/Porto_Velho");
+      /** IANA Time Zone database entry for America/Puerto_Rico.  UTC offset −04:00/−04:00. */
+      static AMERICA_PUERTO_RICO = new _TimeZone("America/Puerto_Rico");
+      /** IANA Time Zone database entry for America/Punta_Arenas.  UTC offset −03:00/−03:00. */
+      static AMERICA_PUNTA_ARENAS = new _TimeZone("America/Punta_Arenas");
+      /** IANA Time Zone database entry for America/Rankin_Inlet.  UTC offset −06:00/−05:00. */
+      static AMERICA_RANKIN_INLET = new _TimeZone("America/Rankin_Inlet");
+      /** IANA Time Zone database entry for America/Recife.  UTC offset −03:00/−03:00. */
+      static AMERICA_RECIFE = new _TimeZone("America/Recife");
+      /** IANA Time Zone database entry for America/Regina.  UTC offset −06:00/−06:00. */
+      static AMERICA_REGINA = new _TimeZone("America/Regina");
+      /** IANA Time Zone database entry for America/Resolute.  UTC offset −06:00/−05:00. */
+      static AMERICA_RESOLUTE = new _TimeZone("America/Resolute");
+      /** IANA Time Zone database entry for America/Rio_Branco.  UTC offset −05:00/−05:00. */
+      static AMERICA_RIO_BRANCO = new _TimeZone("America/Rio_Branco");
+      /** IANA Time Zone database entry for America/Santarem.  UTC offset −03:00/−03:00. */
+      static AMERICA_SANTAREM = new _TimeZone("America/Santarem");
+      /** IANA Time Zone database entry for America/Santiago.  UTC offset −04:00/−03:00. */
+      static AMERICA_SANTIAGO = new _TimeZone("America/Santiago");
+      /** IANA Time Zone database entry for America/Santo_Domingo.  UTC offset −04:00/−04:00. */
+      static AMERICA_SANTO_DOMINGO = new _TimeZone("America/Santo_Domingo");
+      /** IANA Time Zone database entry for America/Sao_Paulo.  UTC offset −03:00/−03:00. */
+      static AMERICA_SAO_PAULO = new _TimeZone("America/Sao_Paulo");
+      /** IANA Time Zone database entry for America/Scoresbysund.  UTC offset −01:00/+00:00. */
+      static AMERICA_SCORESBYSUND = new _TimeZone("America/Scoresbysund");
+      /** IANA Time Zone database entry for America/Sitka.  UTC offset −09:00/−08:00. */
+      static AMERICA_SITKA = new _TimeZone("America/Sitka");
+      /** IANA Time Zone database entry for America/St_Johns.  UTC offset −03:30/−02:30. */
+      static AMERICA_ST_JOHNS = new _TimeZone("America/St_Johns");
+      /** IANA Time Zone database entry for America/Swift_Current.  UTC offset −06:00/−06:00. */
+      static AMERICA_SWIFT_CURRENT = new _TimeZone("America/Swift_Current");
+      /** IANA Time Zone database entry for America/Tegucigalpa.  UTC offset −06:00/−06:00. */
+      static AMERICA_TEGUCIGALPA = new _TimeZone("America/Tegucigalpa");
+      /** IANA Time Zone database entry for America/Thule.  UTC offset −04:00/−03:00. */
+      static AMERICA_THULE = new _TimeZone("America/Thule");
+      /** IANA Time Zone database entry for America/Tijuana.  UTC offset −08:00/−07:00. */
+      static AMERICA_TIJUANA = new _TimeZone("America/Tijuana");
+      /** IANA Time Zone database entry for America/Toronto.  UTC offset −05:00/−04:00. */
+      static AMERICA_TORONTO = new _TimeZone("America/Toronto");
+      /** IANA Time Zone database entry for America/Vancouver.  UTC offset −08:00/−07:00. */
+      static AMERICA_VANCOUVER = new _TimeZone("America/Vancouver");
+      /** IANA Time Zone database entry for America/Whitehorse.  UTC offset −07:00/−07:00. */
+      static AMERICA_WHITEHORSE = new _TimeZone("America/Whitehorse");
+      /** IANA Time Zone database entry for America/Winnipeg.  UTC offset −06:00/−05:00. */
+      static AMERICA_WINNIPEG = new _TimeZone("America/Winnipeg");
+      /** IANA Time Zone database entry for America/Yakutat.  UTC offset −09:00/−08:00. */
+      static AMERICA_YAKUTAT = new _TimeZone("America/Yakutat");
+      /** IANA Time Zone database entry for America/Yellowknife.  UTC offset −07:00/−06:00. */
+      static AMERICA_YELLOWKNIFE = new _TimeZone("America/Yellowknife");
+      /** IANA Time Zone database entry for Antarctica/Casey.  UTC offset +11:00/+11:00. */
+      static ANTARCTICA_CASEY = new _TimeZone("Antarctica/Casey");
+      /** IANA Time Zone database entry for Antarctica/Davis.  UTC offset +07:00/+07:00. */
+      static ANTARCTICA_DAVIS = new _TimeZone("Antarctica/Davis");
+      /** IANA Time Zone database entry for Antarctica/Macquarie.  UTC offset +10:00/+11:00. */
+      static ANTARCTICA_MACQUARIE = new _TimeZone("Antarctica/Macquarie");
+      /** IANA Time Zone database entry for Antarctica/Mawson.  UTC offset +05:00/+05:00. */
+      static ANTARCTICA_MAWSON = new _TimeZone("Antarctica/Mawson");
+      /** IANA Time Zone database entry for Antarctica/Palmer.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_PALMER = new _TimeZone("Antarctica/Palmer");
+      /** IANA Time Zone database entry for Antarctica/Rothera.  UTC offset −03:00/−03:00. */
+      static ANTARCTICA_ROTHERA = new _TimeZone("Antarctica/Rothera");
+      /** IANA Time Zone database entry for Antarctica/Troll.  UTC offset +00:00/+02:00. */
+      static ANTARCTICA_TROLL = new _TimeZone("Antarctica/Troll");
+      /** IANA Time Zone database entry for Asia/Almaty.  UTC offset +06:00/+06:00. */
+      static ASIA_ALMATY = new _TimeZone("Asia/Almaty");
+      /** IANA Time Zone database entry for Asia/Amman.  UTC offset +03:00/+03:00. */
+      static ASIA_AMMAN = new _TimeZone("Asia/Amman");
+      /** IANA Time Zone database entry for Asia/Anadyr.  UTC offset +12:00/+12:00. */
+      static ASIA_ANADYR = new _TimeZone("Asia/Anadyr");
+      /** IANA Time Zone database entry for Asia/Aqtau.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTAU = new _TimeZone("Asia/Aqtau");
+      /** IANA Time Zone database entry for Asia/Aqtobe.  UTC offset +05:00/+05:00. */
+      static ASIA_AQTOBE = new _TimeZone("Asia/Aqtobe");
+      /** IANA Time Zone database entry for Asia/Ashgabat.  UTC offset +05:00/+05:00. */
+      static ASIA_ASHGABAT = new _TimeZone("Asia/Ashgabat");
+      /** IANA Time Zone database entry for Asia/Atyrau.  UTC offset +05:00/+05:00. */
+      static ASIA_ATYRAU = new _TimeZone("Asia/Atyrau");
+      /** IANA Time Zone database entry for Asia/Baghdad.  UTC offset +03:00/+03:00. */
+      static ASIA_BAGHDAD = new _TimeZone("Asia/Baghdad");
+      /** IANA Time Zone database entry for Asia/Baku.  UTC offset +04:00/+04:00. */
+      static ASIA_BAKU = new _TimeZone("Asia/Baku");
+      /** IANA Time Zone database entry for Asia/Bangkok.  UTC offset +07:00/+07:00. */
+      static ASIA_BANGKOK = new _TimeZone("Asia/Bangkok");
+      /** IANA Time Zone database entry for Asia/Barnaul.  UTC offset +07:00/+07:00. */
+      static ASIA_BARNAUL = new _TimeZone("Asia/Barnaul");
+      /** IANA Time Zone database entry for Asia/Beirut.  UTC offset +02:00/+03:00. */
+      static ASIA_BEIRUT = new _TimeZone("Asia/Beirut");
+      /** IANA Time Zone database entry for Asia/Bishkek.  UTC offset +06:00/+06:00. */
+      static ASIA_BISHKEK = new _TimeZone("Asia/Bishkek");
+      /** IANA Time Zone database entry for Asia/Chita.  UTC offset +09:00/+09:00. */
+      static ASIA_CHITA = new _TimeZone("Asia/Chita");
+      /** IANA Time Zone database entry for Asia/Choibalsan.  UTC offset +08:00/+08:00. */
+      static ASIA_CHOIBALSAN = new _TimeZone("Asia/Choibalsan");
+      /** IANA Time Zone database entry for Asia/Colombo.  UTC offset +05:30/+05:30. */
+      static ASIA_COLOMBO = new _TimeZone("Asia/Colombo");
+      /** IANA Time Zone database entry for Asia/Damascus.  UTC offset +03:00/+03:00. */
+      static ASIA_DAMASCUS = new _TimeZone("Asia/Damascus");
+      /** IANA Time Zone database entry for Asia/Dhaka.  UTC offset +06:00/+06:00. */
+      static ASIA_DHAKA = new _TimeZone("Asia/Dhaka");
+      /** IANA Time Zone database entry for Asia/Dili.  UTC offset +09:00/+09:00. */
+      static ASIA_DILI = new _TimeZone("Asia/Dili");
+      /** IANA Time Zone database entry for Asia/Dubai.  UTC offset +04:00/+04:00. */
+      static ASIA_DUBAI = new _TimeZone("Asia/Dubai");
+      /** IANA Time Zone database entry for Asia/Dushanbe.  UTC offset +05:00/+05:00. */
+      static ASIA_DUSHANBE = new _TimeZone("Asia/Dushanbe");
+      /** IANA Time Zone database entry for Asia/Famagusta.  UTC offset +02:00/+03:00. */
+      static ASIA_FAMAGUSTA = new _TimeZone("Asia/Famagusta");
+      /** IANA Time Zone database entry for Asia/Gaza.  UTC offset +02:00/+03:00. */
+      static ASIA_GAZA = new _TimeZone("Asia/Gaza");
+      /** IANA Time Zone database entry for Asia/Hebron.  UTC offset +02:00/+03:00. */
+      static ASIA_HEBRON = new _TimeZone("Asia/Hebron");
+      /** IANA Time Zone database entry for Asia/Ho_Chi_Minh.  UTC offset +07:00/+07:00. */
+      static ASIA_HO_CHI_MINH = new _TimeZone("Asia/Ho_Chi_Minh");
+      /** IANA Time Zone database entry for Asia/Hong_Kong.  UTC offset +08:00/+08:00. */
+      static ASIA_HONG_KONG = new _TimeZone("Asia/Hong_Kong");
+      /** IANA Time Zone database entry for Asia/Hovd.  UTC offset +07:00/+07:00. */
+      static ASIA_HOVD = new _TimeZone("Asia/Hovd");
+      /** IANA Time Zone database entry for Asia/Irkutsk.  UTC offset +08:00/+08:00. */
+      static ASIA_IRKUTSK = new _TimeZone("Asia/Irkutsk");
+      /** IANA Time Zone database entry for Asia/Jakarta.  UTC offset +07:00/+07:00. */
+      static ASIA_JAKARTA = new _TimeZone("Asia/Jakarta");
+      /** IANA Time Zone database entry for Asia/Jayapura.  UTC offset +09:00/+09:00. */
+      static ASIA_JAYAPURA = new _TimeZone("Asia/Jayapura");
+      /** IANA Time Zone database entry for Asia/Jerusalem.  UTC offset +02:00/+03:00. */
+      static ASIA_JERUSALEM = new _TimeZone("Asia/Jerusalem");
+      /** IANA Time Zone database entry for Asia/Kabul.  UTC offset +04:30/+04:30. */
+      static ASIA_KABUL = new _TimeZone("Asia/Kabul");
+      /** IANA Time Zone database entry for Asia/Kamchatka.  UTC offset +12:00/+12:00. */
+      static ASIA_KAMCHATKA = new _TimeZone("Asia/Kamchatka");
+      /** IANA Time Zone database entry for Asia/Karachi.  UTC offset +05:00/+05:00. */
+      static ASIA_KARACHI = new _TimeZone("Asia/Karachi");
+      /** IANA Time Zone database entry for Asia/Kathmandu.  UTC offset +05:45/+05:45. */
+      static ASIA_KATHMANDU = new _TimeZone("Asia/Kathmandu");
+      /** IANA Time Zone database entry for Asia/Khandyga.  UTC offset +09:00/+09:00. */
+      static ASIA_KHANDYGA = new _TimeZone("Asia/Khandyga");
+      /** IANA Time Zone database entry for Asia/Kolkata.  UTC offset +05:30/+05:30. */
+      static ASIA_KOLKATA = new _TimeZone("Asia/Kolkata");
+      /** IANA Time Zone database entry for Asia/Krasnoyarsk.  UTC offset +07:00/+07:00. */
+      static ASIA_KRASNOYARSK = new _TimeZone("Asia/Krasnoyarsk");
+      /** IANA Time Zone database entry for Asia/Kuching.  UTC offset +08:00/+08:00. */
+      static ASIA_KUCHING = new _TimeZone("Asia/Kuching");
+      /** IANA Time Zone database entry for Asia/Macau.  UTC offset +08:00/+08:00. */
+      static ASIA_MACAU = new _TimeZone("Asia/Macau");
+      /** IANA Time Zone database entry for Asia/Magadan.  UTC offset +11:00/+11:00. */
+      static ASIA_MAGADAN = new _TimeZone("Asia/Magadan");
+      /** IANA Time Zone database entry for Asia/Makassar.  UTC offset +08:00/+08:00. */
+      static ASIA_MAKASSAR = new _TimeZone("Asia/Makassar");
+      /** IANA Time Zone database entry for Asia/Manila.  UTC offset +08:00/+08:00. */
+      static ASIA_MANILA = new _TimeZone("Asia/Manila");
+      /** IANA Time Zone database entry for Asia/Nicosia.  UTC offset +02:00/+03:00. */
+      static ASIA_NICOSIA = new _TimeZone("Asia/Nicosia");
+      /** IANA Time Zone database entry for Asia/Novokuznetsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOKUZNETSK = new _TimeZone("Asia/Novokuznetsk");
+      /** IANA Time Zone database entry for Asia/Novosibirsk.  UTC offset +07:00/+07:00. */
+      static ASIA_NOVOSIBIRSK = new _TimeZone("Asia/Novosibirsk");
+      /** IANA Time Zone database entry for Asia/Omsk.  UTC offset +06:00/+06:00. */
+      static ASIA_OMSK = new _TimeZone("Asia/Omsk");
+      /** IANA Time Zone database entry for Asia/Oral.  UTC offset +05:00/+05:00. */
+      static ASIA_ORAL = new _TimeZone("Asia/Oral");
+      /** IANA Time Zone database entry for Asia/Pontianak.  UTC offset +07:00/+07:00. */
+      static ASIA_PONTIANAK = new _TimeZone("Asia/Pontianak");
+      /** IANA Time Zone database entry for Asia/Pyongyang.  UTC offset +09:00/+09:00. */
+      static ASIA_PYONGYANG = new _TimeZone("Asia/Pyongyang");
+      /** IANA Time Zone database entry for Asia/Qatar.  UTC offset +03:00/+03:00. */
+      static ASIA_QATAR = new _TimeZone("Asia/Qatar");
+      /** IANA Time Zone database entry for Asia/Qostanay.  UTC offset +06:00/+06:00. */
+      static ASIA_QOSTANAY = new _TimeZone("Asia/Qostanay");
+      /** IANA Time Zone database entry for Asia/Qyzylorda.  UTC offset +05:00/+05:00. */
+      static ASIA_QYZYLORDA = new _TimeZone("Asia/Qyzylorda");
+      /** IANA Time Zone database entry for Asia/Riyadh.  UTC offset +03:00/+03:00. */
+      static ASIA_RIYADH = new _TimeZone("Asia/Riyadh");
+      /** IANA Time Zone database entry for Asia/Sakhalin.  UTC offset +11:00/+11:00. */
+      static ASIA_SAKHALIN = new _TimeZone("Asia/Sakhalin");
+      /** IANA Time Zone database entry for Asia/Samarkand.  UTC offset +05:00/+05:00. */
+      static ASIA_SAMARKAND = new _TimeZone("Asia/Samarkand");
+      /** IANA Time Zone database entry for Asia/Seoul.  UTC offset +09:00/+09:00. */
+      static ASIA_SEOUL = new _TimeZone("Asia/Seoul");
+      /** IANA Time Zone database entry for Asia/Shanghai.  UTC offset +08:00/+08:00. */
+      static ASIA_SHANGHAI = new _TimeZone("Asia/Shanghai");
+      /** IANA Time Zone database entry for Asia/Singapore.  UTC offset +08:00/+08:00. */
+      static ASIA_SINGAPORE = new _TimeZone("Asia/Singapore");
+      /** IANA Time Zone database entry for Asia/Srednekolymsk.  UTC offset +11:00/+11:00. */
+      static ASIA_SREDNEKOLYMSK = new _TimeZone("Asia/Srednekolymsk");
+      /** IANA Time Zone database entry for Asia/Taipei.  UTC offset +08:00/+08:00. */
+      static ASIA_TAIPEI = new _TimeZone("Asia/Taipei");
+      /** IANA Time Zone database entry for Asia/Tashkent.  UTC offset +05:00/+05:00. */
+      static ASIA_TASHKENT = new _TimeZone("Asia/Tashkent");
+      /** IANA Time Zone database entry for Asia/Tbilisi.  UTC offset +04:00/+04:00. */
+      static ASIA_TBILISI = new _TimeZone("Asia/Tbilisi");
+      /** IANA Time Zone database entry for Asia/Tehran.  UTC offset +03:30/+03:30. */
+      static ASIA_TEHRAN = new _TimeZone("Asia/Tehran");
+      /** IANA Time Zone database entry for Asia/Thimphu.  UTC offset +06:00/+06:00. */
+      static ASIA_THIMPHU = new _TimeZone("Asia/Thimphu");
+      /** IANA Time Zone database entry for Asia/Tokyo.  UTC offset +09:00/+09:00. */
+      static ASIA_TOKYO = new _TimeZone("Asia/Tokyo");
+      /** IANA Time Zone database entry for Asia/Tomsk.  UTC offset +07:00/+07:00. */
+      static ASIA_TOMSK = new _TimeZone("Asia/Tomsk");
+      /** IANA Time Zone database entry for Asia/Ulaanbaatar.  UTC offset +08:00/+08:00. */
+      static ASIA_ULAANBAATAR = new _TimeZone("Asia/Ulaanbaatar");
+      /** IANA Time Zone database entry for Asia/Urumqi.  UTC offset +06:00/+06:00. */
+      static ASIA_URUMQI = new _TimeZone("Asia/Urumqi");
+      /** IANA Time Zone database entry for Asia/Ust-Nera.  UTC offset +10:00/+10:00. */
+      static ASIA_UST_MINUS_NERA = new _TimeZone("Asia/Ust-Nera");
+      /** IANA Time Zone database entry for Asia/Vladivostok.  UTC offset +10:00/+10:00. */
+      static ASIA_VLADIVOSTOK = new _TimeZone("Asia/Vladivostok");
+      /** IANA Time Zone database entry for Asia/Yakutsk.  UTC offset +09:00/+09:00. */
+      static ASIA_YAKUTSK = new _TimeZone("Asia/Yakutsk");
+      /** IANA Time Zone database entry for Asia/Yangon.  UTC offset +06:30/+06:30. */
+      static ASIA_YANGON = new _TimeZone("Asia/Yangon");
+      /** IANA Time Zone database entry for Asia/Yekaterinburg.  UTC offset +05:00/+05:00. */
+      static ASIA_YEKATERINBURG = new _TimeZone("Asia/Yekaterinburg");
+      /** IANA Time Zone database entry for Asia/Yerevan.  UTC offset +04:00/+04:00. */
+      static ASIA_YEREVAN = new _TimeZone("Asia/Yerevan");
+      /** IANA Time Zone database entry for Atlantic/Azores.  UTC offset −01:00/+00:00. */
+      static ATLANTIC_AZORES = new _TimeZone("Atlantic/Azores");
+      /** IANA Time Zone database entry for Atlantic/Bermuda.  UTC offset −04:00/−03:00. */
+      static ATLANTIC_BERMUDA = new _TimeZone("Atlantic/Bermuda");
+      /** IANA Time Zone database entry for Atlantic/Canary.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_CANARY = new _TimeZone("Atlantic/Canary");
+      /** IANA Time Zone database entry for Atlantic/Cape_Verde.  UTC offset −01:00/−01:00. */
+      static ATLANTIC_CAPE_VERDE = new _TimeZone("Atlantic/Cape_Verde");
+      /** IANA Time Zone database entry for Atlantic/Faroe.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_FAROE = new _TimeZone("Atlantic/Faroe");
+      /** IANA Time Zone database entry for Atlantic/Madeira.  UTC offset +00:00/+01:00. */
+      static ATLANTIC_MADEIRA = new _TimeZone("Atlantic/Madeira");
+      /** IANA Time Zone database entry for Atlantic/South_Georgia.  UTC offset −02:00/−02:00. */
+      static ATLANTIC_SOUTH_GEORGIA = new _TimeZone("Atlantic/South_Georgia");
+      /** IANA Time Zone database entry for Atlantic/Stanley.  UTC offset −03:00/−03:00. */
+      static ATLANTIC_STANLEY = new _TimeZone("Atlantic/Stanley");
+      /** IANA Time Zone database entry for Australia/Adelaide.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_ADELAIDE = new _TimeZone("Australia/Adelaide");
+      /** IANA Time Zone database entry for Australia/Brisbane.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_BRISBANE = new _TimeZone("Australia/Brisbane");
+      /** IANA Time Zone database entry for Australia/Broken_Hill.  UTC offset +09:30/+10:30. */
+      static AUSTRALIA_BROKEN_HILL = new _TimeZone("Australia/Broken_Hill");
+      /** IANA Time Zone database entry for Australia/Darwin.  UTC offset +09:30/+09:30. */
+      static AUSTRALIA_DARWIN = new _TimeZone("Australia/Darwin");
+      /** IANA Time Zone database entry for Australia/Eucla.  UTC offset +08:45/+08:45. */
+      static AUSTRALIA_EUCLA = new _TimeZone("Australia/Eucla");
+      /** IANA Time Zone database entry for Australia/Hobart.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_HOBART = new _TimeZone("Australia/Hobart");
+      /** IANA Time Zone database entry for Australia/Lindeman.  UTC offset +10:00/+10:00. */
+      static AUSTRALIA_LINDEMAN = new _TimeZone("Australia/Lindeman");
+      /** IANA Time Zone database entry for Australia/Lord_Howe.  UTC offset +10:30/+11:00. */
+      static AUSTRALIA_LORD_HOWE = new _TimeZone("Australia/Lord_Howe");
+      /** IANA Time Zone database entry for Australia/Melbourne.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_MELBOURNE = new _TimeZone("Australia/Melbourne");
+      /** IANA Time Zone database entry for Australia/Perth.  UTC offset +08:00/+08:00. */
+      static AUSTRALIA_PERTH = new _TimeZone("Australia/Perth");
+      /** IANA Time Zone database entry for Australia/Sydney.  UTC offset +10:00/+11:00. */
+      static AUSTRALIA_SYDNEY = new _TimeZone("Australia/Sydney");
+      /** IANA Time Zone database entry for CET.  UTC offset +01:00/+02:00. */
+      static CET = new _TimeZone("CET");
+      /** IANA Time Zone database entry for CST6CDT.  UTC offset −06:00/−05:00. */
+      static CST6CDT = new _TimeZone("CST6CDT");
+      /** IANA Time Zone database entry for EET.  UTC offset +02:00/+03:00. */
+      static EET = new _TimeZone("EET");
+      /** IANA Time Zone database entry for EST.  UTC offset −05:00/−05:00. */
+      static EST = new _TimeZone("EST");
+      /** IANA Time Zone database entry for EST5EDT.  UTC offset −05:00/−04:00. */
+      static EST5EDT = new _TimeZone("EST5EDT");
+      /** IANA Time Zone database entry for Etc/GMT.  UTC offset +00:00/+00:00. */
+      static ETC_GMT = new _TimeZone("Etc/GMT");
+      /** IANA Time Zone database entry for Etc/GMT+1.  UTC offset −01:00/−01:00. */
+      static ETC_GMT_PLUS_1 = new _TimeZone("Etc/GMT+1");
+      /** IANA Time Zone database entry for Etc/GMT+10.  UTC offset −10:00/−10:00. */
+      static ETC_GMT_PLUS_10 = new _TimeZone("Etc/GMT+10");
+      /** IANA Time Zone database entry for Etc/GMT+11.  UTC offset −11:00/−11:00. */
+      static ETC_GMT_PLUS_11 = new _TimeZone("Etc/GMT+11");
+      /** IANA Time Zone database entry for Etc/GMT+12.  UTC offset −12:00/−12:00. */
+      static ETC_GMT_PLUS_12 = new _TimeZone("Etc/GMT+12");
+      /** IANA Time Zone database entry for Etc/GMT+2.  UTC offset −02:00/−02:00. */
+      static ETC_GMT_PLUS_2 = new _TimeZone("Etc/GMT+2");
+      /** IANA Time Zone database entry for Etc/GMT+3.  UTC offset −03:00/−03:00. */
+      static ETC_GMT_PLUS_3 = new _TimeZone("Etc/GMT+3");
+      /** IANA Time Zone database entry for Etc/GMT+4.  UTC offset −04:00/−04:00. */
+      static ETC_GMT_PLUS_4 = new _TimeZone("Etc/GMT+4");
+      /** IANA Time Zone database entry for Etc/GMT+5.  UTC offset −05:00/−05:00. */
+      static ETC_GMT_PLUS_5 = new _TimeZone("Etc/GMT+5");
+      /** IANA Time Zone database entry for Etc/GMT+6.  UTC offset −06:00/−06:00. */
+      static ETC_GMT_PLUS_6 = new _TimeZone("Etc/GMT+6");
+      /** IANA Time Zone database entry for Etc/GMT+7.  UTC offset −07:00/−07:00. */
+      static ETC_GMT_PLUS_7 = new _TimeZone("Etc/GMT+7");
+      /** IANA Time Zone database entry for Etc/GMT+8.  UTC offset −08:00/−08:00. */
+      static ETC_GMT_PLUS_8 = new _TimeZone("Etc/GMT+8");
+      /** IANA Time Zone database entry for Etc/GMT+9.  UTC offset −09:00/−09:00. */
+      static ETC_GMT_PLUS_9 = new _TimeZone("Etc/GMT+9");
+      /** IANA Time Zone database entry for Etc/GMT-1.  UTC offset +01:00/+01:00. */
+      static ETC_GMT_MINUS_1 = new _TimeZone("Etc/GMT-1");
+      /** IANA Time Zone database entry for Etc/GMT-10.  UTC offset +10:00/+10:00. */
+      static ETC_GMT_MINUS_10 = new _TimeZone("Etc/GMT-10");
+      /** IANA Time Zone database entry for Etc/GMT-11.  UTC offset +11:00/+11:00. */
+      static ETC_GMT_MINUS_11 = new _TimeZone("Etc/GMT-11");
+      /** IANA Time Zone database entry for Etc/GMT-12.  UTC offset +12:00/+12:00. */
+      static ETC_GMT_MINUS_12 = new _TimeZone("Etc/GMT-12");
+      /** IANA Time Zone database entry for Etc/GMT-13.  UTC offset +13:00/+13:00. */
+      static ETC_GMT_MINUS_13 = new _TimeZone("Etc/GMT-13");
+      /** IANA Time Zone database entry for Etc/GMT-14.  UTC offset +14:00/+14:00. */
+      static ETC_GMT_MINUS_14 = new _TimeZone("Etc/GMT-14");
+      /** IANA Time Zone database entry for Etc/GMT-2.  UTC offset +02:00/+02:00. */
+      static ETC_GMT_MINUS_2 = new _TimeZone("Etc/GMT-2");
+      /** IANA Time Zone database entry for Etc/GMT-3.  UTC offset +03:00/+03:00. */
+      static ETC_GMT_MINUS_3 = new _TimeZone("Etc/GMT-3");
+      /** IANA Time Zone database entry for Etc/GMT-4.  UTC offset +04:00/+04:00. */
+      static ETC_GMT_MINUS_4 = new _TimeZone("Etc/GMT-4");
+      /** IANA Time Zone database entry for Etc/GMT-5.  UTC offset +05:00/+05:00. */
+      static ETC_GMT_MINUS_5 = new _TimeZone("Etc/GMT-5");
+      /** IANA Time Zone database entry for Etc/GMT-6.  UTC offset +06:00/+06:00. */
+      static ETC_GMT_MINUS_6 = new _TimeZone("Etc/GMT-6");
+      /** IANA Time Zone database entry for Etc/GMT-7.  UTC offset +07:00/+07:00. */
+      static ETC_GMT_MINUS_7 = new _TimeZone("Etc/GMT-7");
+      /** IANA Time Zone database entry for Etc/GMT-8.  UTC offset +08:00/+08:00. */
+      static ETC_GMT_MINUS_8 = new _TimeZone("Etc/GMT-8");
+      /** IANA Time Zone database entry for Etc/GMT-9.  UTC offset +09:00/+09:00. */
+      static ETC_GMT_MINUS_9 = new _TimeZone("Etc/GMT-9");
+      /** IANA Time Zone database entry for Etc/UTC.  UTC offset +00:00/+00:00. */
+      static ETC_UTC = new _TimeZone("Etc/UTC");
+      /** IANA Time Zone database entry for Europe/Andorra.  UTC offset +01:00/+02:00. */
+      static EUROPE_ANDORRA = new _TimeZone("Europe/Andorra");
+      /** IANA Time Zone database entry for Europe/Astrakhan.  UTC offset +04:00/+04:00. */
+      static EUROPE_ASTRAKHAN = new _TimeZone("Europe/Astrakhan");
+      /** IANA Time Zone database entry for Europe/Athens.  UTC offset +02:00/+03:00. */
+      static EUROPE_ATHENS = new _TimeZone("Europe/Athens");
+      /** IANA Time Zone database entry for Europe/Belgrade.  UTC offset +01:00/+02:00. */
+      static EUROPE_BELGRADE = new _TimeZone("Europe/Belgrade");
+      /** IANA Time Zone database entry for Europe/Berlin.  UTC offset +01:00/+02:00. */
+      static EUROPE_BERLIN = new _TimeZone("Europe/Berlin");
+      /** IANA Time Zone database entry for Europe/Brussels.  UTC offset +01:00/+02:00. */
+      static EUROPE_BRUSSELS = new _TimeZone("Europe/Brussels");
+      /** IANA Time Zone database entry for Europe/Bucharest.  UTC offset +02:00/+03:00. */
+      static EUROPE_BUCHAREST = new _TimeZone("Europe/Bucharest");
+      /** IANA Time Zone database entry for Europe/Budapest.  UTC offset +01:00/+02:00. */
+      static EUROPE_BUDAPEST = new _TimeZone("Europe/Budapest");
+      /** IANA Time Zone database entry for Europe/Chisinau.  UTC offset +02:00/+03:00. */
+      static EUROPE_CHISINAU = new _TimeZone("Europe/Chisinau");
+      /** IANA Time Zone database entry for Europe/Dublin.  UTC offset +01:00/+00:00. */
+      static EUROPE_DUBLIN = new _TimeZone("Europe/Dublin");
+      /** IANA Time Zone database entry for Europe/Gibraltar.  UTC offset +01:00/+02:00. */
+      static EUROPE_GIBRALTAR = new _TimeZone("Europe/Gibraltar");
+      /** IANA Time Zone database entry for Europe/Helsinki.  UTC offset +02:00/+03:00. */
+      static EUROPE_HELSINKI = new _TimeZone("Europe/Helsinki");
+      /** IANA Time Zone database entry for Europe/Istanbul.  UTC offset +03:00/+03:00. */
+      static EUROPE_ISTANBUL = new _TimeZone("Europe/Istanbul");
+      /** IANA Time Zone database entry for Europe/Kaliningrad.  UTC offset +02:00/+02:00. */
+      static EUROPE_KALININGRAD = new _TimeZone("Europe/Kaliningrad");
+      /** IANA Time Zone database entry for Europe/Kirov.  UTC offset +03:00/+03:00. */
+      static EUROPE_KIROV = new _TimeZone("Europe/Kirov");
+      /** IANA Time Zone database entry for Europe/Kyiv.  UTC offset +02:00/+03:00. */
+      static EUROPE_KYIV = new _TimeZone("Europe/Kyiv");
+      /** IANA Time Zone database entry for Europe/Lisbon.  UTC offset +00:00/+01:00. */
+      static EUROPE_LISBON = new _TimeZone("Europe/Lisbon");
+      /** IANA Time Zone database entry for Europe/London.  UTC offset +00:00/+01:00. */
+      static EUROPE_LONDON = new _TimeZone("Europe/London");
+      /** IANA Time Zone database entry for Europe/Madrid.  UTC offset +01:00/+02:00. */
+      static EUROPE_MADRID = new _TimeZone("Europe/Madrid");
+      /** IANA Time Zone database entry for Europe/Malta.  UTC offset +01:00/+02:00. */
+      static EUROPE_MALTA = new _TimeZone("Europe/Malta");
+      /** IANA Time Zone database entry for Europe/Minsk.  UTC offset +03:00/+03:00. */
+      static EUROPE_MINSK = new _TimeZone("Europe/Minsk");
+      /** IANA Time Zone database entry for Europe/Moscow.  UTC offset +03:00/+03:00. */
+      static EUROPE_MOSCOW = new _TimeZone("Europe/Moscow");
+      /** IANA Time Zone database entry for Europe/Paris.  UTC offset +01:00/+02:00. */
+      static EUROPE_PARIS = new _TimeZone("Europe/Paris");
+      /** IANA Time Zone database entry for Europe/Prague.  UTC offset +01:00/+02:00. */
+      static EUROPE_PRAGUE = new _TimeZone("Europe/Prague");
+      /** IANA Time Zone database entry for Europe/Riga.  UTC offset +02:00/+03:00. */
+      static EUROPE_RIGA = new _TimeZone("Europe/Riga");
+      /** IANA Time Zone database entry for Europe/Rome.  UTC offset +01:00/+02:00. */
+      static EUROPE_ROME = new _TimeZone("Europe/Rome");
+      /** IANA Time Zone database entry for Europe/Samara.  UTC offset +04:00/+04:00. */
+      static EUROPE_SAMARA = new _TimeZone("Europe/Samara");
+      /** IANA Time Zone database entry for Europe/Saratov.  UTC offset +04:00/+04:00. */
+      static EUROPE_SARATOV = new _TimeZone("Europe/Saratov");
+      /** IANA Time Zone database entry for Europe/Simferopol.  UTC offset +03:00/+03:00. */
+      static EUROPE_SIMFEROPOL = new _TimeZone("Europe/Simferopol");
+      /** IANA Time Zone database entry for Europe/Sofia.  UTC offset +02:00/+03:00. */
+      static EUROPE_SOFIA = new _TimeZone("Europe/Sofia");
+      /** IANA Time Zone database entry for Europe/Tallinn.  UTC offset +02:00/+03:00. */
+      static EUROPE_TALLINN = new _TimeZone("Europe/Tallinn");
+      /** IANA Time Zone database entry for Europe/Tirane.  UTC offset +01:00/+02:00. */
+      static EUROPE_TIRANE = new _TimeZone("Europe/Tirane");
+      /** IANA Time Zone database entry for Europe/Ulyanovsk.  UTC offset +04:00/+04:00. */
+      static EUROPE_ULYANOVSK = new _TimeZone("Europe/Ulyanovsk");
+      /** IANA Time Zone database entry for Europe/Vienna.  UTC offset +01:00/+02:00. */
+      static EUROPE_VIENNA = new _TimeZone("Europe/Vienna");
+      /** IANA Time Zone database entry for Europe/Vilnius.  UTC offset +02:00/+03:00. */
+      static EUROPE_VILNIUS = new _TimeZone("Europe/Vilnius");
+      /** IANA Time Zone database entry for Europe/Volgograd.  UTC offset +03:00/+03:00. */
+      static EUROPE_VOLGOGRAD = new _TimeZone("Europe/Volgograd");
+      /** IANA Time Zone database entry for Europe/Warsaw.  UTC offset +01:00/+02:00. */
+      static EUROPE_WARSAW = new _TimeZone("Europe/Warsaw");
+      /** IANA Time Zone database entry for Europe/Zurich.  UTC offset +01:00/+02:00. */
+      static EUROPE_ZURICH = new _TimeZone("Europe/Zurich");
+      /** IANA Time Zone database entry for Factory.  UTC offset +00:00/+00:00. */
+      static FACTORY = new _TimeZone("Factory");
+      /** IANA Time Zone database entry for HST.  UTC offset −10:00/−10:00. */
+      static HST = new _TimeZone("HST");
+      /** IANA Time Zone database entry for Indian/Chagos.  UTC offset +06:00/+06:00. */
+      static INDIAN_CHAGOS = new _TimeZone("Indian/Chagos");
+      /** IANA Time Zone database entry for Indian/Maldives.  UTC offset +05:00/+05:00. */
+      static INDIAN_MALDIVES = new _TimeZone("Indian/Maldives");
+      /** IANA Time Zone database entry for Indian/Mauritius.  UTC offset +04:00/+04:00. */
+      static INDIAN_MAURITIUS = new _TimeZone("Indian/Mauritius");
+      /** IANA Time Zone database entry for MET.  UTC offset +01:00/+02:00. */
+      static MET = new _TimeZone("MET");
+      /** IANA Time Zone database entry for MST.  UTC offset −07:00/−07:00. */
+      static MST = new _TimeZone("MST");
+      /** IANA Time Zone database entry for MST7MDT.  UTC offset −07:00/−06:00. */
+      static MST7MDT = new _TimeZone("MST7MDT");
+      /** IANA Time Zone database entry for Pacific/Apia.  UTC offset +13:00/+13:00. */
+      static PACIFIC_APIA = new _TimeZone("Pacific/Apia");
+      /** IANA Time Zone database entry for Pacific/Auckland.  UTC offset +12:00/+13:00. */
+      static PACIFIC_AUCKLAND = new _TimeZone("Pacific/Auckland");
+      /** IANA Time Zone database entry for Pacific/Bougainville.  UTC offset +11:00/+11:00. */
+      static PACIFIC_BOUGAINVILLE = new _TimeZone("Pacific/Bougainville");
+      /** IANA Time Zone database entry for Pacific/Chatham.  UTC offset +12:45/+13:45. */
+      static PACIFIC_CHATHAM = new _TimeZone("Pacific/Chatham");
+      /** IANA Time Zone database entry for Pacific/Easter.  UTC offset −06:00/−05:00. */
+      static PACIFIC_EASTER = new _TimeZone("Pacific/Easter");
+      /** IANA Time Zone database entry for Pacific/Efate.  UTC offset +11:00/+11:00. */
+      static PACIFIC_EFATE = new _TimeZone("Pacific/Efate");
+      /** IANA Time Zone database entry for Pacific/Fakaofo.  UTC offset +13:00/+13:00. */
+      static PACIFIC_FAKAOFO = new _TimeZone("Pacific/Fakaofo");
+      /** IANA Time Zone database entry for Pacific/Fiji.  UTC offset +12:00/+12:00. */
+      static PACIFIC_FIJI = new _TimeZone("Pacific/Fiji");
+      /** IANA Time Zone database entry for Pacific/Galapagos.  UTC offset −06:00/−06:00. */
+      static PACIFIC_GALAPAGOS = new _TimeZone("Pacific/Galapagos");
+      /** IANA Time Zone database entry for Pacific/Gambier.  UTC offset −09:00/−09:00. */
+      static PACIFIC_GAMBIER = new _TimeZone("Pacific/Gambier");
+      /** IANA Time Zone database entry for Pacific/Guadalcanal.  UTC offset +11:00/+11:00. */
+      static PACIFIC_GUADALCANAL = new _TimeZone("Pacific/Guadalcanal");
+      /** IANA Time Zone database entry for Pacific/Guam.  UTC offset +10:00/+10:00. */
+      static PACIFIC_GUAM = new _TimeZone("Pacific/Guam");
+      /** IANA Time Zone database entry for Pacific/Honolulu.  UTC offset −10:00/−10:00. */
+      static PACIFIC_HONOLULU = new _TimeZone("Pacific/Honolulu");
+      /** IANA Time Zone database entry for Pacific/Kanton.  UTC offset +13:00/+13:00. */
+      static PACIFIC_KANTON = new _TimeZone("Pacific/Kanton");
+      /** IANA Time Zone database entry for Pacific/Kiritimati.  UTC offset +14:00/+14:00. */
+      static PACIFIC_KIRITIMATI = new _TimeZone("Pacific/Kiritimati");
+      /** IANA Time Zone database entry for Pacific/Kosrae.  UTC offset +11:00/+11:00. */
+      static PACIFIC_KOSRAE = new _TimeZone("Pacific/Kosrae");
+      /** IANA Time Zone database entry for Pacific/Kwajalein.  UTC offset +12:00/+12:00. */
+      static PACIFIC_KWAJALEIN = new _TimeZone("Pacific/Kwajalein");
+      /** IANA Time Zone database entry for Pacific/Marquesas.  UTC offset −09:30/−09:30. */
+      static PACIFIC_MARQUESAS = new _TimeZone("Pacific/Marquesas");
+      /** IANA Time Zone database entry for Pacific/Nauru.  UTC offset +12:00/+12:00. */
+      static PACIFIC_NAURU = new _TimeZone("Pacific/Nauru");
+      /** IANA Time Zone database entry for Pacific/Niue.  UTC offset −11:00/−11:00. */
+      static PACIFIC_NIUE = new _TimeZone("Pacific/Niue");
+      /** IANA Time Zone database entry for Pacific/Norfolk.  UTC offset +11:00/+12:00. */
+      static PACIFIC_NORFOLK = new _TimeZone("Pacific/Norfolk");
+      /** IANA Time Zone database entry for Pacific/Noumea.  UTC offset +11:00/+11:00. */
+      static PACIFIC_NOUMEA = new _TimeZone("Pacific/Noumea");
+      /** IANA Time Zone database entry for Pacific/Pago_Pago.  UTC offset −11:00/−11:00. */
+      static PACIFIC_PAGO_PAGO = new _TimeZone("Pacific/Pago_Pago");
+      /** IANA Time Zone database entry for Pacific/Palau.  UTC offset +09:00/+09:00. */
+      static PACIFIC_PALAU = new _TimeZone("Pacific/Palau");
+      /** IANA Time Zone database entry for Pacific/Pitcairn.  UTC offset −08:00/−08:00. */
+      static PACIFIC_PITCAIRN = new _TimeZone("Pacific/Pitcairn");
+      /** IANA Time Zone database entry for Pacific/Port_Moresby.  UTC offset +10:00/+10:00. */
+      static PACIFIC_PORT_MORESBY = new _TimeZone("Pacific/Port_Moresby");
+      /** IANA Time Zone database entry for Pacific/Rarotonga.  UTC offset −10:00/−10:00. */
+      static PACIFIC_RAROTONGA = new _TimeZone("Pacific/Rarotonga");
+      /** IANA Time Zone database entry for Pacific/Tahiti.  UTC offset −10:00/−10:00. */
+      static PACIFIC_TAHITI = new _TimeZone("Pacific/Tahiti");
+      /** IANA Time Zone database entry for Pacific/Tarawa.  UTC offset +12:00/+12:00. */
+      static PACIFIC_TARAWA = new _TimeZone("Pacific/Tarawa");
+      /** IANA Time Zone database entry for Pacific/Tongatapu.  UTC offset +13:00/+13:00. */
+      static PACIFIC_TONGATAPU = new _TimeZone("Pacific/Tongatapu");
+      /** IANA Time Zone database entry for PST8PDT.  UTC offset −08:00/−07:00. */
+      static PST8PDT = new _TimeZone("PST8PDT");
+      /** IANA Time Zone database entry for WET.  UTC offset +00:00/+01:00. */
+      static WET = new _TimeZone("WET");
+      /**
+       * Use this to add a timezone not in this class.
+       *
+       * @param timezoneName the name of the timezone
+       * @returns a new Timezone
+       */
+      static of(timezoneName) {
+        return new _TimeZone(timezoneName);
+      }
+    };
+  }
+});
+
+// ../../aws-cdk-lib/core/lib/index.ts
+var init_lib3 = __esm({
+  "../../aws-cdk-lib/core/lib/index.ts"() {
+    "use strict";
+    init_aspect();
+    init_tag_aspect();
+    init_mixins2();
+    init_token();
+    init_resolvable();
+    init_type_hints();
+    init_lazy();
+    init_prop_injectors();
+    init_tag_manager();
+    init_string_fragments();
+    init_stack_synthesizers();
+    init_reference();
+    init_cfn_condition();
+    init_cfn_fn();
+    init_cfn_hook();
+    init_cfn_codedeploy_blue_green_hook();
+    init_cfn_include();
+    init_cfn_mapping();
+    init_cfn_output();
+    init_cfn_parameter();
+    init_cfn_pseudo();
+    init_cfn_resource();
+    init_cfn_resource_policy();
+    init_cfn_rule();
+    init_stack();
+    init_stage();
+    init_cfn_element();
+    init_cfn_dynamic_reference();
+    init_cfn_tag();
+    init_cfn_json();
+    init_removal_policy();
+    init_removal_policies();
+    init_cross_stack_reference_strength();
+    init_arn();
+    init_duration();
+    init_bitrate();
+    init_expiration();
+    init_size();
+    init_errors();
+    init_app2();
+    init_context_provider();
+    init_environment();
+    init_annotations();
+    init_runtime();
+    init_secret_value();
+    init_resource();
+    init_physical_name();
+    init_assets();
+    init_tree();
+    init_asset_staging2();
+    init_bundling();
+    init_fs();
+    init_custom_resource();
+    init_nested_stack();
+    init_custom_resource_provider2();
+    init_cfn_capabilities();
+    init_cloudformation_generated();
+    init_feature_flags();
+    init_permissions_boundary();
+    init_validation2();
+    init_eventbridge();
+    init_grants();
+    init_intrinsic();
+    init_names();
+    init_time_zone();
+  }
+});
+
+// ../../aws-cdk-lib/core/index.ts
+var init_core = __esm({
+  "../../aws-cdk-lib/core/index.ts"() {
+    "use strict";
+    init_lib3();
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts
+var assembly_validation_report_exports = {};
+__export(assembly_validation_report_exports, {
+  AssemblyValidationReport: () => AssemblyValidationReport
+});
+function getBooleanContext2(root, key, defaultValue) {
+  const raw = root.node.tryGetContext(key);
+  if (raw === void 0) return defaultValue;
+  return raw !== false && raw !== "false";
+}
+var fs18, path22, AssemblyValidationReport, APP_INIT_HOOK_SYMBOL2;
+var init_assembly_validation_report = __esm({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/assembly-validation-report.ts"() {
+    "use strict";
+    fs18 = __toESM(require("fs"));
+    path22 = __toESM(require("path"));
+    init_core();
+    init_literal_string();
+    init_cx_api();
+    init_match();
+    init_error();
+    AssemblyValidationReport = class _AssemblyValidationReport {
+      constructor(report) {
+        this.report = report;
+      }
+      report;
+      /**
+       * During testing, create an App() with this as `postCliContext` in order to be able to use `AssemblyValidationReport.fromApp(app)`.
+       */
+      static APP_CONTEXT = {
+        [FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT]: false,
+        [STRICT_CFN_VALIDATE_ERRORS]: false
+      };
+      /**
+       * Disable the test suppressions that are automatically applied to all tests via the global App init hook (jest-global-app-testhook.ts).
+       *
+       * Returns a function that must be called to restore the global App init hook to its previous state.
+       */
+      static disableTestSuppressions() {
+        const previousAppHook = globalThis[APP_INIT_HOOK_SYMBOL2];
+        globalThis[APP_INIT_HOOK_SYMBOL2] = () => {
+        };
+        return () => {
+          globalThis[APP_INIT_HOOK_SYMBOL2] = previousAppHook;
+        };
+      }
+      /**
+       * Synthesize the given app and return its validation report.
+       */
+      static fromApp(app) {
+        if (getBooleanContext2(app, FAIL_SYNTH_ON_VALIDATION_ERRORS_CONTEXT, true) || getBooleanContext2(app, STRICT_CFN_VALIDATE_ERRORS, false)) {
+          throw new AssumptionError(lit`MissingAppContext`, "In order to assert on validations with AssemblyValidationReport, create your App with { postCliContext: AssemblyValidationReport.APP_CONTEXT }");
+        }
+        const asm = app.synth();
+        const newFile = path22.join(asm.directory, "validation-report.json");
+        const newReport = JSON.parse(fs18.readFileSync(newFile, "utf-8"));
+        return new _AssemblyValidationReport(newReport);
+      }
+      pluginReport(pluginName) {
+        const report = this.report.pluginReports.find((r) => r.pluginName === pluginName);
+        if (!report) {
+          throw new AssertionError(`No report found for plugin ${pluginName}`);
+        }
+        return report;
+      }
+      /**
+       * All violations in all reports
+       */
+      allViolations() {
+        return this.report.pluginReports.flatMap((r) => r.violations);
+      }
+      hasViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (r.hasFailed()) {
+          throw new AssertionError("Expected policy violation not found:\n" + r.renderMismatch());
+        }
+      }
+      hasNoViolation(pattern) {
+        const matcher = Match.arrayWith([Match.objectLike(pattern ?? {})]);
+        const r = matcher.test(this.allViolations());
+        r.finished();
+        if (!r.hasFailed()) {
+          throw new AssertionError("Expected no policy violations, but found:\n" + JSON.stringify(this.allViolations(), void 0, 2));
+        }
+      }
+    };
+    APP_INIT_HOOK_SYMBOL2 = /* @__PURE__ */ Symbol.for("@aws-cdk/core.App#initHook");
+  }
+});
+
+// ../../aws-cdk-lib/assertions/lib/helpers-internal/index.js
+var require_helpers_internal = __commonJS({
+  "../../aws-cdk-lib/assertions/lib/helpers-internal/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0)
+        k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m)
+        if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p))
+          __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    var _noFold;
+    exports2.Match = void 0;
+    Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, get: () => {
+      var value = (init_match(), __toCommonJS(match_exports)).Match;
+      Object.defineProperty(exports2, _noFold = "Match", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.Matcher = void 0;
+    Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).Matcher;
+      Object.defineProperty(exports2, _noFold = "Matcher", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.MatchResult = void 0;
+    Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, get: () => {
+      var value = (init_matcher(), __toCommonJS(matcher_exports)).MatchResult;
+      Object.defineProperty(exports2, _noFold = "MatchResult", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+    exports2.AssemblyValidationReport = void 0;
+    Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, get: () => {
+      var value = (init_assembly_validation_report(), __toCommonJS(assembly_validation_report_exports)).AssemblyValidationReport;
+      Object.defineProperty(exports2, _noFold = "AssemblyValidationReport", { enumerable: true, configurable: true, value });
+      return value;
+    } });
+  }
+});
+
+// ../../../node_modules/@smithy/types/dist-cjs/index.js
+var require_dist_cjs = __commonJS({
+  "../../../node_modules/@smithy/types/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AlgorithmId: () => AlgorithmId,
+      EndpointURLScheme: () => EndpointURLScheme,
+      FieldPosition: () => FieldPosition,
+      HttpApiKeyAuthLocation: () => HttpApiKeyAuthLocation2,
+      HttpAuthLocation: () => HttpAuthLocation,
+      IniSectionType: () => IniSectionType,
+      RequestHandlerProtocol: () => RequestHandlerProtocol,
+      SMITHY_CONTEXT_KEY: () => SMITHY_CONTEXT_KEY4,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var HttpAuthLocation = /* @__PURE__ */ ((HttpAuthLocation2) => {
+      HttpAuthLocation2["HEADER"] = "header";
+      HttpAuthLocation2["QUERY"] = "query";
+      return HttpAuthLocation2;
+    })(HttpAuthLocation || {});
+    var HttpApiKeyAuthLocation2 = /* @__PURE__ */ ((HttpApiKeyAuthLocation22) => {
+      HttpApiKeyAuthLocation22["HEADER"] = "header";
+      HttpApiKeyAuthLocation22["QUERY"] = "query";
+      return HttpApiKeyAuthLocation22;
+    })(HttpApiKeyAuthLocation2 || {});
+    var EndpointURLScheme = /* @__PURE__ */ ((EndpointURLScheme2) => {
+      EndpointURLScheme2["HTTP"] = "http";
+      EndpointURLScheme2["HTTPS"] = "https";
+      return EndpointURLScheme2;
+    })(EndpointURLScheme || {});
+    var AlgorithmId = /* @__PURE__ */ ((AlgorithmId2) => {
+      AlgorithmId2["MD5"] = "md5";
+      AlgorithmId2["CRC32"] = "crc32";
+      AlgorithmId2["CRC32C"] = "crc32c";
+      AlgorithmId2["SHA1"] = "sha1";
+      AlgorithmId2["SHA256"] = "sha256";
+      return AlgorithmId2;
+    })(AlgorithmId || {});
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      if (runtimeConfig.sha256 !== void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "sha256",
+          checksumConstructor: () => runtimeConfig.sha256
+        });
+      }
+      if (runtimeConfig.md5 != void 0) {
+        checksumAlgorithms.push({
+          algorithmId: () => "md5",
+          checksumConstructor: () => runtimeConfig.md5
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getDefaultClientConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig)
+      };
+    }, "getDefaultClientConfiguration");
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var FieldPosition = /* @__PURE__ */ ((FieldPosition2) => {
+      FieldPosition2[FieldPosition2["HEADER"] = 0] = "HEADER";
+      FieldPosition2[FieldPosition2["TRAILER"] = 1] = "TRAILER";
+      return FieldPosition2;
+    })(FieldPosition || {});
+    var SMITHY_CONTEXT_KEY4 = "__smithy_context";
+    var IniSectionType = /* @__PURE__ */ ((IniSectionType2) => {
+      IniSectionType2["PROFILE"] = "profile";
+      IniSectionType2["SSO_SESSION"] = "sso-session";
+      IniSectionType2["SERVICES"] = "services";
+      return IniSectionType2;
+    })(IniSectionType || {});
+    var RequestHandlerProtocol = /* @__PURE__ */ ((RequestHandlerProtocol2) => {
+      RequestHandlerProtocol2["HTTP_0_9"] = "http/0.9";
+      RequestHandlerProtocol2["HTTP_1_0"] = "http/1.0";
+      RequestHandlerProtocol2["TDS_8_0"] = "tds/8.0";
+      return RequestHandlerProtocol2;
+    })(RequestHandlerProtocol || {});
+  }
+});
+
+// ../../../node_modules/@smithy/protocol-http/dist-cjs/index.js
+var require_dist_cjs2 = __commonJS({
+  "../../../node_modules/@smithy/protocol-http/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Field: () => Field,
+      Fields: () => Fields,
+      HttpRequest: () => HttpRequest7,
+      HttpResponse: () => HttpResponse2,
+      IHttpRequest: () => import_types8.HttpRequest,
+      getHttpHandlerExtensionConfiguration: () => getHttpHandlerExtensionConfiguration,
+      isValidHostname: () => isValidHostname,
+      resolveHttpHandlerRuntimeConfig: () => resolveHttpHandlerRuntimeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let httpHandler = runtimeConfig.httpHandler;
+      return {
+        setHttpHandler(handler2) {
+          httpHandler = handler2;
+        },
+        httpHandler() {
+          return httpHandler;
+        },
+        updateHttpClientConfig(key, value) {
+          httpHandler.updateHttpClientConfig(key, value);
+        },
+        httpHandlerConfigs() {
+          return httpHandler.httpHandlerConfigs();
+        }
+      };
+    }, "getHttpHandlerExtensionConfiguration");
+    var resolveHttpHandlerRuntimeConfig = /* @__PURE__ */ __name2((httpHandlerExtensionConfiguration) => {
+      return {
+        httpHandler: httpHandlerExtensionConfiguration.httpHandler()
+      };
+    }, "resolveHttpHandlerRuntimeConfig");
+    var import_types8 = require_dist_cjs();
+    var _Field = class _Field {
+      constructor({ name, kind = import_types8.FieldPosition.HEADER, values = [] }) {
+        this.name = name;
+        this.kind = kind;
+        this.values = values;
+      }
+      /**
+       * Appends a value to the field.
+       *
+       * @param value The value to append.
+       */
+      add(value) {
+        this.values.push(value);
+      }
+      /**
+       * Overwrite existing field values.
+       *
+       * @param values The new field values.
+       */
+      set(values) {
+        this.values = values;
+      }
+      /**
+       * Remove all matching entries from list.
+       *
+       * @param value Value to remove.
+       */
+      remove(value) {
+        this.values = this.values.filter((v) => v !== value);
+      }
+      /**
+       * Get comma-delimited string.
+       *
+       * @returns String representation of {@link Field}.
+       */
+      toString() {
+        return this.values.map((v) => v.includes(",") || v.includes(" ") ? `"${v}"` : v).join(", ");
+      }
+      /**
+       * Get string values as a list
+       *
+       * @returns Values in {@link Field} as a list.
+       */
+      get() {
+        return this.values;
+      }
+    };
+    __name2(_Field, "Field");
+    var Field = _Field;
+    var _Fields = class _Fields {
+      constructor({ fields = [], encoding = "utf-8" }) {
+        this.entries = {};
+        fields.forEach(this.setField.bind(this));
+        this.encoding = encoding;
+      }
+      /**
+       * Set entry for a {@link Field} name. The `name`
+       * attribute will be used to key the collection.
+       *
+       * @param field The {@link Field} to set.
+       */
+      setField(field) {
+        this.entries[field.name.toLowerCase()] = field;
+      }
+      /**
+       *  Retrieve {@link Field} entry by name.
+       *
+       * @param name The name of the {@link Field} entry
+       *  to retrieve
+       * @returns The {@link Field} if it exists.
+       */
+      getField(name) {
+        return this.entries[name.toLowerCase()];
+      }
+      /**
+       * Delete entry from collection.
+       *
+       * @param name Name of the entry to delete.
+       */
+      removeField(name) {
+        delete this.entries[name.toLowerCase()];
+      }
+      /**
+       * Helper function for retrieving specific types of fields.
+       * Used to grab all headers or all trailers.
+       *
+       * @param kind {@link FieldPosition} of entries to retrieve.
+       * @returns The {@link Field} entries with the specified
+       *  {@link FieldPosition}.
+       */
+      getByType(kind) {
+        return Object.values(this.entries).filter((field) => field.kind === kind);
+      }
+    };
+    __name2(_Fields, "Fields");
+    var Fields = _Fields;
+    var _HttpRequest = class _HttpRequest2 {
+      constructor(options) {
+        this.method = options.method || "GET";
+        this.hostname = options.hostname || "localhost";
+        this.port = options.port;
+        this.query = options.query || {};
+        this.headers = options.headers || {};
+        this.body = options.body;
+        this.protocol = options.protocol ? options.protocol.slice(-1) !== ":" ? `${options.protocol}:` : options.protocol : "https:";
+        this.path = options.path ? options.path.charAt(0) !== "/" ? `/${options.path}` : options.path : "/";
+        this.username = options.username;
+        this.password = options.password;
+        this.fragment = options.fragment;
+      }
+      /**
+       * Note: this does not deep-clone the body.
+       */
+      static clone(request2) {
+        const cloned = new _HttpRequest2({
+          ...request2,
+          headers: { ...request2.headers }
+        });
+        if (cloned.query) {
+          cloned.query = cloneQuery(cloned.query);
+        }
+        return cloned;
+      }
+      /**
+       * This method only actually asserts that request is the interface {@link IHttpRequest},
+       * and not necessarily this concrete class. Left in place for API stability.
+       *
+       * Do not call instance methods on the input of this function, and
+       * do not assume it has the HttpRequest prototype.
+       */
+      static isInstance(request2) {
+        if (!request2) {
+          return false;
+        }
+        const req = request2;
+        return "method" in req && "protocol" in req && "hostname" in req && "path" in req && typeof req["query"] === "object" && typeof req["headers"] === "object";
+      }
+      /**
+       * @deprecated use static HttpRequest.clone(request) instead. It's not safe to call
+       * this method because {@link HttpRequest.isInstance} incorrectly
+       * asserts that IHttpRequest (interface) objects are of type HttpRequest (class).
+       */
+      clone() {
+        return _HttpRequest2.clone(this);
+      }
+    };
+    __name2(_HttpRequest, "HttpRequest");
+    var HttpRequest7 = _HttpRequest;
+    function cloneQuery(query) {
+      return Object.keys(query).reduce((carry, paramName) => {
+        const param = query[paramName];
+        return {
+          ...carry,
+          [paramName]: Array.isArray(param) ? [...param] : param
+        };
+      }, {});
+    }
+    __name2(cloneQuery, "cloneQuery");
+    var _HttpResponse = class _HttpResponse {
+      constructor(options) {
+        this.statusCode = options.statusCode;
+        this.reason = options.reason;
+        this.headers = options.headers || {};
+        this.body = options.body;
+      }
+      static isInstance(response) {
+        if (!response)
+          return false;
+        const resp = response;
+        return typeof resp.statusCode === "number" && typeof resp.headers === "object";
+      }
+    };
+    __name2(_HttpResponse, "HttpResponse");
+    var HttpResponse2 = _HttpResponse;
+    function isValidHostname(hostname) {
+      const hostPattern = /^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/;
+      return hostPattern.test(hostname);
+    }
+    __name2(isValidHostname, "isValidHostname");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js
+var require_dist_cjs3 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-host-header/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getHostHeaderPlugin: () => getHostHeaderPlugin,
+      hostHeaderMiddleware: () => hostHeaderMiddleware,
+      hostHeaderMiddlewareOptions: () => hostHeaderMiddlewareOptions,
+      resolveHostHeaderConfig: () => resolveHostHeaderConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    function resolveHostHeaderConfig(input) {
+      return input;
+    }
+    __name2(resolveHostHeaderConfig, "resolveHostHeaderConfig");
+    var hostHeaderMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      if (!import_protocol_http8.HttpRequest.isInstance(args.request))
+        return next(args);
+      const { request: request2 } = args;
+      const { handlerProtocol = "" } = options.requestHandler.metadata || {};
+      if (handlerProtocol.indexOf("h2") >= 0 && !request2.headers[":authority"]) {
+        delete request2.headers["host"];
+        request2.headers[":authority"] = request2.hostname + (request2.port ? ":" + request2.port : "");
+      } else if (!request2.headers["host"]) {
+        let host = request2.hostname;
+        if (request2.port != null)
+          host += `:${request2.port}`;
+        request2.headers["host"] = host;
+      }
+      return next(args);
+    }, "hostHeaderMiddleware");
+    var hostHeaderMiddlewareOptions = {
+      name: "hostHeaderMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["HOST"],
+      override: true
+    };
+    var getHostHeaderPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);
+      }
+    }), "getHostHeaderPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js
+var require_dist_cjs4 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-logger/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getLoggerPlugin: () => getLoggerPlugin,
+      loggerMiddleware: () => loggerMiddleware,
+      loggerMiddlewareOptions: () => loggerMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var loggerMiddleware = /* @__PURE__ */ __name2(() => (next, context) => async (args) => {
+      var _a7, _b;
+      try {
+        const response = await next(args);
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;
+        const { $metadata, ...outputWithoutMetadata } = response.output;
+        (_a7 = logger == null ? void 0 : logger.info) == null ? void 0 : _a7.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          output: outputFilterSensitiveLog(outputWithoutMetadata),
+          metadata: $metadata
+        });
+        return response;
+      } catch (error) {
+        const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;
+        const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;
+        const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;
+        (_b = logger == null ? void 0 : logger.error) == null ? void 0 : _b.call(logger, {
+          clientName,
+          commandName,
+          input: inputFilterSensitiveLog(args.input),
+          error,
+          metadata: error.$metadata
+        });
+        throw error;
+      }
+    }, "loggerMiddleware");
+    var loggerMiddlewareOptions = {
+      name: "loggerMiddleware",
+      tags: ["LOGGER"],
+      step: "initialize",
+      override: true
+    };
+    var getLoggerPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);
+      }
+    }), "getLoggerPlugin");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js
+var require_dist_cjs5 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      addRecursionDetectionMiddlewareOptions: () => addRecursionDetectionMiddlewareOptions,
+      getRecursionDetectionPlugin: () => getRecursionDetectionPlugin,
+      recursionDetectionMiddleware: () => recursionDetectionMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var TRACE_ID_HEADER_NAME = "X-Amzn-Trace-Id";
+    var ENV_LAMBDA_FUNCTION_NAME = "AWS_LAMBDA_FUNCTION_NAME";
+    var ENV_TRACE_ID = "_X_AMZN_TRACE_ID";
+    var recursionDetectionMiddleware = /* @__PURE__ */ __name2((options) => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2) || options.runtime !== "node" || request2.headers.hasOwnProperty(TRACE_ID_HEADER_NAME)) {
+        return next(args);
+      }
+      const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];
+      const traceId = process.env[ENV_TRACE_ID];
+      const nonEmptyString = /* @__PURE__ */ __name2((str) => typeof str === "string" && str.length > 0, "nonEmptyString");
+      if (nonEmptyString(functionName) && nonEmptyString(traceId)) {
+        request2.headers[TRACE_ID_HEADER_NAME] = traceId;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "recursionDetectionMiddleware");
+    var addRecursionDetectionMiddlewareOptions = {
+      step: "build",
+      tags: ["RECURSION_DETECTION"],
+      name: "recursionDetectionMiddleware",
+      override: true,
+      priority: "low"
+    };
+    var getRecursionDetectionPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(recursionDetectionMiddleware(options), addRecursionDetectionMiddlewareOptions);
+      }
+    }), "getRecursionDetectionPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js
+var require_dist_cjs6 = __commonJS({
+  "../../../node_modules/@smithy/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      EndpointCache: () => EndpointCache,
+      EndpointError: () => EndpointError2,
+      customEndpointFunctions: () => customEndpointFunctions,
+      isIpAddress: () => isIpAddress2,
+      isValidHostLabel: () => isValidHostLabel,
+      resolveEndpoint: () => resolveEndpoint2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _EndpointCache = class _EndpointCache {
+      /**
+       * @param [size] - desired average maximum capacity. A buffer of 10 additional keys will be allowed
+       *                 before keys are dropped.
+       * @param [params] - list of params to consider as part of the cache key.
+       *
+       * If the params list is not populated, no caching will happen.
+       * This may be out of order depending on how the object is created and arrives to this class.
+       */
+      constructor({ size, params }) {
+        this.data = /* @__PURE__ */ new Map();
+        this.parameters = [];
+        this.capacity = size ?? 50;
+        if (params) {
+          this.parameters = params;
+        }
+      }
+      /**
+       * @param endpointParams - query for endpoint.
+       * @param resolver - provider of the value if not present.
+       * @returns endpoint corresponding to the query.
+       */
+      get(endpointParams, resolver) {
+        const key = this.hash(endpointParams);
+        if (key === false) {
+          return resolver();
+        }
+        if (!this.data.has(key)) {
+          if (this.data.size > this.capacity + 10) {
+            const keys = this.data.keys();
+            let i = 0;
+            while (true) {
+              const { value, done } = keys.next();
+              this.data.delete(value);
+              if (done || ++i > 10) {
+                break;
+              }
+            }
+          }
+          this.data.set(key, resolver());
+        }
+        return this.data.get(key);
+      }
+      size() {
+        return this.data.size;
+      }
+      /**
+       * @returns cache key or false if not cachable.
+       */
+      hash(endpointParams) {
+        let buffer = "";
+        const { parameters } = this;
+        if (parameters.length === 0) {
+          return false;
+        }
+        for (const param of parameters) {
+          const val2 = String(endpointParams[param] ?? "");
+          if (val2.includes("|;")) {
+            return false;
+          }
+          buffer += val2 + "|;";
+        }
+        return buffer;
+      }
+    };
+    __name2(_EndpointCache, "EndpointCache");
+    var EndpointCache = _EndpointCache;
+    var IP_V4_REGEX = new RegExp(
+      `^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$`
+    );
+    var isIpAddress2 = /* @__PURE__ */ __name2((value) => IP_V4_REGEX.test(value) || value.startsWith("[") && value.endsWith("]"), "isIpAddress");
+    var VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);
+    var isValidHostLabel = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (!allowSubDomains) {
+        return VALID_HOST_LABEL_REGEX.test(value);
+      }
+      const labels = value.split(".");
+      for (const label of labels) {
+        if (!isValidHostLabel(label)) {
+          return false;
+        }
+      }
+      return true;
+    }, "isValidHostLabel");
+    var customEndpointFunctions = {};
+    var debugId = "endpoints";
+    function toDebugString(input) {
+      if (typeof input !== "object" || input == null) {
+        return input;
+      }
+      if ("ref" in input) {
+        return `$${toDebugString(input.ref)}`;
+      }
+      if ("fn" in input) {
+        return `${input.fn}(${(input.argv || []).map(toDebugString).join(", ")})`;
+      }
+      return JSON.stringify(input, null, 2);
+    }
+    __name2(toDebugString, "toDebugString");
+    var _EndpointError = class _EndpointError extends Error {
+      constructor(message) {
+        super(message);
+        this.name = "EndpointError";
+      }
+    };
+    __name2(_EndpointError, "EndpointError");
+    var EndpointError2 = _EndpointError;
+    var booleanEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "booleanEquals");
+    var getAttrPathList = /* @__PURE__ */ __name2((path23) => {
+      const parts = path23.split(".");
+      const pathList = [];
+      for (const part of parts) {
+        const squareBracketIndex = part.indexOf("[");
+        if (squareBracketIndex !== -1) {
+          if (part.indexOf("]") !== part.length - 1) {
+            throw new EndpointError2(`Path: '${path23}' does not end with ']'`);
+          }
+          const arrayIndex = part.slice(squareBracketIndex + 1, -1);
+          if (Number.isNaN(parseInt(arrayIndex))) {
+            throw new EndpointError2(`Invalid array index: '${arrayIndex}' in path: '${path23}'`);
+          }
+          if (squareBracketIndex !== 0) {
+            pathList.push(part.slice(0, squareBracketIndex));
+          }
+          pathList.push(arrayIndex);
+        } else {
+          pathList.push(part);
+        }
+      }
+      return pathList;
+    }, "getAttrPathList");
+    var getAttr = /* @__PURE__ */ __name2((value, path23) => getAttrPathList(path23).reduce((acc, index) => {
+      if (typeof acc !== "object") {
+        throw new EndpointError2(`Index '${index}' in '${path23}' not found in '${JSON.stringify(value)}'`);
+      } else if (Array.isArray(acc)) {
+        return acc[parseInt(index)];
+      }
+      return acc[index];
+    }, value), "getAttr");
+    var isSet = /* @__PURE__ */ __name2((value) => value != null, "isSet");
+    var not = /* @__PURE__ */ __name2((value) => !value, "not");
+    var import_types32 = require_dist_cjs();
+    var DEFAULT_PORTS = {
+      [import_types32.EndpointURLScheme.HTTP]: 80,
+      [import_types32.EndpointURLScheme.HTTPS]: 443
+    };
+    var parseURL = /* @__PURE__ */ __name2((value) => {
+      const whatwgURL = (() => {
+        try {
+          if (value instanceof URL) {
+            return value;
+          }
+          if (typeof value === "object" && "hostname" in value) {
+            const { hostname: hostname2, port, protocol: protocol2 = "", path: path23 = "", query = {} } = value;
+            const url2 = new URL(`${protocol2}//${hostname2}${port ? `:${port}` : ""}${path23}`);
+            url2.search = Object.entries(query).map(([k, v]) => `${k}=${v}`).join("&");
+            return url2;
+          }
+          return new URL(value);
+        } catch (error) {
+          return null;
+        }
+      })();
+      if (!whatwgURL) {
+        console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);
+        return null;
+      }
+      const urlString = whatwgURL.href;
+      const { host, hostname, pathname, protocol, search } = whatwgURL;
+      if (search) {
+        return null;
+      }
+      const scheme = protocol.slice(0, -1);
+      if (!Object.values(import_types32.EndpointURLScheme).includes(scheme)) {
+        return null;
+      }
+      const isIp = isIpAddress2(hostname);
+      const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) || typeof value === "string" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`);
+      const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;
+      return {
+        scheme,
+        authority,
+        path: pathname,
+        normalizedPath: pathname.endsWith("/") ? pathname : `${pathname}/`,
+        isIp
+      };
+    }, "parseURL");
+    var stringEquals = /* @__PURE__ */ __name2((value1, value2) => value1 === value2, "stringEquals");
+    var substring = /* @__PURE__ */ __name2((input, start, stop, reverse) => {
+      if (start >= stop || input.length < stop) {
+        return null;
+      }
+      if (!reverse) {
+        return input.substring(start, stop);
+      }
+      return input.substring(input.length - stop, input.length - start);
+    }, "substring");
+    var uriEncode = /* @__PURE__ */ __name2((value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`), "uriEncode");
+    var endpointFunctions = {
+      booleanEquals,
+      getAttr,
+      isSet,
+      isValidHostLabel,
+      not,
+      parseURL,
+      stringEquals,
+      substring,
+      uriEncode
+    };
+    var evaluateTemplate = /* @__PURE__ */ __name2((template, options) => {
+      const evaluatedTemplateArr = [];
+      const templateContext = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      let currentIndex = 0;
+      while (currentIndex < template.length) {
+        const openingBraceIndex = template.indexOf("{", currentIndex);
+        if (openingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(currentIndex));
+          break;
+        }
+        evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));
+        const closingBraceIndex = template.indexOf("}", openingBraceIndex);
+        if (closingBraceIndex === -1) {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex));
+          break;
+        }
+        if (template[openingBraceIndex + 1] === "{" && template[closingBraceIndex + 1] === "}") {
+          evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));
+          currentIndex = closingBraceIndex + 2;
+        }
+        const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);
+        if (parameterName.includes("#")) {
+          const [refName, attrName] = parameterName.split("#");
+          evaluatedTemplateArr.push(getAttr(templateContext[refName], attrName));
+        } else {
+          evaluatedTemplateArr.push(templateContext[parameterName]);
+        }
+        currentIndex = closingBraceIndex + 1;
+      }
+      return evaluatedTemplateArr.join("");
+    }, "evaluateTemplate");
+    var getReferenceValue = /* @__PURE__ */ __name2(({ ref }, options) => {
+      const referenceRecord = {
+        ...options.endpointParams,
+        ...options.referenceRecord
+      };
+      return referenceRecord[ref];
+    }, "getReferenceValue");
+    var evaluateExpression = /* @__PURE__ */ __name2((obj, keyName, options) => {
+      if (typeof obj === "string") {
+        return evaluateTemplate(obj, options);
+      } else if (obj["fn"]) {
+        return callFunction(obj, options);
+      } else if (obj["ref"]) {
+        return getReferenceValue(obj, options);
+      }
+      throw new EndpointError2(`'${keyName}': ${String(obj)} is not a string, function or reference.`);
+    }, "evaluateExpression");
+    var callFunction = /* @__PURE__ */ __name2(({ fn, argv }, options) => {
+      const evaluatedArgs = argv.map(
+        (arg) => ["boolean", "number"].includes(typeof arg) ? arg : evaluateExpression(arg, "arg", options)
+      );
+      const fnSegments = fn.split(".");
+      if (fnSegments[0] in customEndpointFunctions && fnSegments[1] != null) {
+        return customEndpointFunctions[fnSegments[0]][fnSegments[1]](...evaluatedArgs);
+      }
+      return endpointFunctions[fn](...evaluatedArgs);
+    }, "callFunction");
+    var evaluateCondition = /* @__PURE__ */ __name2(({ assign, ...fnArgs }, options) => {
+      var _a7, _b;
+      if (assign && assign in options.referenceRecord) {
+        throw new EndpointError2(`'${assign}' is already defined in Reference Record.`);
+      }
+      const value = callFunction(fnArgs, options);
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} evaluateCondition: ${toDebugString(fnArgs)} = ${toDebugString(value)}`);
+      return {
+        result: value === "" ? true : !!value,
+        ...assign != null && { toAssign: { name: assign, value } }
+      };
+    }, "evaluateCondition");
+    var evaluateConditions = /* @__PURE__ */ __name2((conditions = [], options) => {
+      var _a7, _b;
+      const conditionsReferenceRecord = {};
+      for (const condition of conditions) {
+        const { result, toAssign } = evaluateCondition(condition, {
+          ...options,
+          referenceRecord: {
+            ...options.referenceRecord,
+            ...conditionsReferenceRecord
+          }
+        });
+        if (!result) {
+          return { result };
+        }
+        if (toAssign) {
+          conditionsReferenceRecord[toAssign.name] = toAssign.value;
+          (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);
+        }
+      }
+      return { result: true, referenceRecord: conditionsReferenceRecord };
+    }, "evaluateConditions");
+    var getEndpointHeaders = /* @__PURE__ */ __name2((headers, options) => Object.entries(headers).reduce(
+      (acc, [headerKey, headerVal]) => ({
+        ...acc,
+        [headerKey]: headerVal.map((headerValEntry) => {
+          const processedExpr = evaluateExpression(headerValEntry, "Header value entry", options);
+          if (typeof processedExpr !== "string") {
+            throw new EndpointError2(`Header '${headerKey}' value '${processedExpr}' is not a string`);
+          }
+          return processedExpr;
+        })
+      }),
+      {}
+    ), "getEndpointHeaders");
+    var getEndpointProperty = /* @__PURE__ */ __name2((property, options) => {
+      if (Array.isArray(property)) {
+        return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));
+      }
+      switch (typeof property) {
+        case "string":
+          return evaluateTemplate(property, options);
+        case "object":
+          if (property === null) {
+            throw new EndpointError2(`Unexpected endpoint property: ${property}`);
+          }
+          return getEndpointProperties(property, options);
+        case "boolean":
+          return property;
+        default:
+          throw new EndpointError2(`Unexpected endpoint property type: ${typeof property}`);
+      }
+    }, "getEndpointProperty");
+    var getEndpointProperties = /* @__PURE__ */ __name2((properties, options) => Object.entries(properties).reduce(
+      (acc, [propertyKey, propertyVal]) => ({
+        ...acc,
+        [propertyKey]: getEndpointProperty(propertyVal, options)
+      }),
+      {}
+    ), "getEndpointProperties");
+    var getEndpointUrl = /* @__PURE__ */ __name2((endpointUrl, options) => {
+      const expression = evaluateExpression(endpointUrl, "Endpoint URL", options);
+      if (typeof expression === "string") {
+        try {
+          return new URL(expression);
+        } catch (error) {
+          console.error(`Failed to construct URL with ${expression}`, error);
+          throw error;
+        }
+      }
+      throw new EndpointError2(`Endpoint URL must be a string, got ${typeof expression}`);
+    }, "getEndpointUrl");
+    var evaluateEndpointRule = /* @__PURE__ */ __name2((endpointRule, options) => {
+      var _a7, _b;
+      const { conditions, endpoint } = endpointRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      const endpointRuleOptions = {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      };
+      const { url: url2, properties, headers } = endpoint;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);
+      return {
+        ...headers != void 0 && {
+          headers: getEndpointHeaders(headers, endpointRuleOptions)
+        },
+        ...properties != void 0 && {
+          properties: getEndpointProperties(properties, endpointRuleOptions)
+        },
+        url: getEndpointUrl(url2, endpointRuleOptions)
+      };
+    }, "evaluateEndpointRule");
+    var evaluateErrorRule = /* @__PURE__ */ __name2((errorRule, options) => {
+      const { conditions, error } = errorRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      throw new EndpointError2(
+        evaluateExpression(error, "Error", {
+          ...options,
+          referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+        })
+      );
+    }, "evaluateErrorRule");
+    var evaluateTreeRule = /* @__PURE__ */ __name2((treeRule, options) => {
+      const { conditions, rules } = treeRule;
+      const { result, referenceRecord } = evaluateConditions(conditions, options);
+      if (!result) {
+        return;
+      }
+      return evaluateRules(rules, {
+        ...options,
+        referenceRecord: { ...options.referenceRecord, ...referenceRecord }
+      });
+    }, "evaluateTreeRule");
+    var evaluateRules = /* @__PURE__ */ __name2((rules, options) => {
+      for (const rule of rules) {
+        if (rule.type === "endpoint") {
+          const endpointOrUndefined = evaluateEndpointRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else if (rule.type === "error") {
+          evaluateErrorRule(rule, options);
+        } else if (rule.type === "tree") {
+          const endpointOrUndefined = evaluateTreeRule(rule, options);
+          if (endpointOrUndefined) {
+            return endpointOrUndefined;
+          }
+        } else {
+          throw new EndpointError2(`Unknown endpoint rule: ${rule}`);
+        }
+      }
+      throw new EndpointError2(`Rules evaluation failed`);
+    }, "evaluateRules");
+    var resolveEndpoint2 = /* @__PURE__ */ __name2((ruleSetObject, options) => {
+      var _a7, _b, _c, _d;
+      const { endpointParams, logger } = options;
+      const { parameters, rules } = ruleSetObject;
+      (_b = (_a7 = options.logger) == null ? void 0 : _a7.debug) == null ? void 0 : _b.call(_a7, `${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);
+      const paramsWithDefault = Object.entries(parameters).filter(([, v]) => v.default != null).map(([k, v]) => [k, v.default]);
+      if (paramsWithDefault.length > 0) {
+        for (const [paramKey, paramDefaultValue] of paramsWithDefault) {
+          endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;
+        }
+      }
+      const requiredParams = Object.entries(parameters).filter(([, v]) => v.required).map(([k]) => k);
+      for (const requiredParam of requiredParams) {
+        if (endpointParams[requiredParam] == null) {
+          throw new EndpointError2(`Missing required parameter: '${requiredParam}'`);
+        }
+      }
+      const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });
+      (_d = (_c = options.logger) == null ? void 0 : _c.debug) == null ? void 0 : _d.call(_c, `${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);
+      return endpoint;
+    }, "resolveEndpoint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js
+var require_dist_cjs7 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-endpoints/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ConditionObject: () => import_util_endpoints.ConditionObject,
+      DeprecatedObject: () => import_util_endpoints.DeprecatedObject,
+      EndpointError: () => import_util_endpoints.EndpointError,
+      EndpointObject: () => import_util_endpoints.EndpointObject,
+      EndpointObjectHeaders: () => import_util_endpoints.EndpointObjectHeaders,
+      EndpointObjectProperties: () => import_util_endpoints.EndpointObjectProperties,
+      EndpointParams: () => import_util_endpoints.EndpointParams,
+      EndpointResolverOptions: () => import_util_endpoints.EndpointResolverOptions,
+      EndpointRuleObject: () => import_util_endpoints.EndpointRuleObject,
+      ErrorRuleObject: () => import_util_endpoints.ErrorRuleObject,
+      EvaluateOptions: () => import_util_endpoints.EvaluateOptions,
+      Expression: () => import_util_endpoints.Expression,
+      FunctionArgv: () => import_util_endpoints.FunctionArgv,
+      FunctionObject: () => import_util_endpoints.FunctionObject,
+      FunctionReturn: () => import_util_endpoints.FunctionReturn,
+      ParameterObject: () => import_util_endpoints.ParameterObject,
+      ReferenceObject: () => import_util_endpoints.ReferenceObject,
+      ReferenceRecord: () => import_util_endpoints.ReferenceRecord,
+      RuleSetObject: () => import_util_endpoints.RuleSetObject,
+      RuleSetRules: () => import_util_endpoints.RuleSetRules,
+      TreeRuleObject: () => import_util_endpoints.TreeRuleObject,
+      awsEndpointFunctions: () => awsEndpointFunctions,
+      getUserAgentPrefix: () => getUserAgentPrefix,
+      isIpAddress: () => import_util_endpoints.isIpAddress,
+      partition: () => partition,
+      resolveEndpoint: () => import_util_endpoints.resolveEndpoint,
+      setPartitionInfo: () => setPartitionInfo,
+      useDefaultPartitionInfo: () => useDefaultPartitionInfo
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_endpoints = require_dist_cjs6();
+    var isVirtualHostableS3Bucket = /* @__PURE__ */ __name2((value, allowSubDomains = false) => {
+      if (allowSubDomains) {
+        for (const label of value.split(".")) {
+          if (!isVirtualHostableS3Bucket(label)) {
+            return false;
+          }
+        }
+        return true;
+      }
+      if (!(0, import_util_endpoints.isValidHostLabel)(value)) {
+        return false;
+      }
+      if (value.length < 3 || value.length > 63) {
+        return false;
+      }
+      if (value !== value.toLowerCase()) {
+        return false;
+      }
+      if ((0, import_util_endpoints.isIpAddress)(value)) {
+        return false;
+      }
+      return true;
+    }, "isVirtualHostableS3Bucket");
+    var ARN_DELIMITER = ":";
+    var RESOURCE_DELIMITER = "/";
+    var parseArn = /* @__PURE__ */ __name2((value) => {
+      const segments = value.split(ARN_DELIMITER);
+      if (segments.length < 6)
+        return null;
+      const [arn, partition2, service, region, accountId, ...resourcePath] = segments;
+      if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "")
+        return null;
+      const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();
+      return {
+        partition: partition2,
+        service,
+        region,
+        accountId,
+        resourceId
+      };
+    }, "parseArn");
+    var partitions_default = {
+      partitions: [{
+        id: "aws",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-east-1",
+          name: "aws",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$",
+        regions: {
+          "af-south-1": {
+            description: "Africa (Cape Town)"
+          },
+          "ap-east-1": {
+            description: "Asia Pacific (Hong Kong)"
+          },
+          "ap-northeast-1": {
+            description: "Asia Pacific (Tokyo)"
+          },
+          "ap-northeast-2": {
+            description: "Asia Pacific (Seoul)"
+          },
+          "ap-northeast-3": {
+            description: "Asia Pacific (Osaka)"
+          },
+          "ap-south-1": {
+            description: "Asia Pacific (Mumbai)"
+          },
+          "ap-south-2": {
+            description: "Asia Pacific (Hyderabad)"
+          },
+          "ap-southeast-1": {
+            description: "Asia Pacific (Singapore)"
+          },
+          "ap-southeast-2": {
+            description: "Asia Pacific (Sydney)"
+          },
+          "ap-southeast-3": {
+            description: "Asia Pacific (Jakarta)"
+          },
+          "ap-southeast-4": {
+            description: "Asia Pacific (Melbourne)"
+          },
+          "aws-global": {
+            description: "AWS Standard global region"
+          },
+          "ca-central-1": {
+            description: "Canada (Central)"
+          },
+          "ca-west-1": {
+            description: "Canada West (Calgary)"
+          },
+          "eu-central-1": {
+            description: "Europe (Frankfurt)"
+          },
+          "eu-central-2": {
+            description: "Europe (Zurich)"
+          },
+          "eu-north-1": {
+            description: "Europe (Stockholm)"
+          },
+          "eu-south-1": {
+            description: "Europe (Milan)"
+          },
+          "eu-south-2": {
+            description: "Europe (Spain)"
+          },
+          "eu-west-1": {
+            description: "Europe (Ireland)"
+          },
+          "eu-west-2": {
+            description: "Europe (London)"
+          },
+          "eu-west-3": {
+            description: "Europe (Paris)"
+          },
+          "il-central-1": {
+            description: "Israel (Tel Aviv)"
+          },
+          "me-central-1": {
+            description: "Middle East (UAE)"
+          },
+          "me-south-1": {
+            description: "Middle East (Bahrain)"
+          },
+          "sa-east-1": {
+            description: "South America (Sao Paulo)"
+          },
+          "us-east-1": {
+            description: "US East (N. Virginia)"
+          },
+          "us-east-2": {
+            description: "US East (Ohio)"
+          },
+          "us-west-1": {
+            description: "US West (N. California)"
+          },
+          "us-west-2": {
+            description: "US West (Oregon)"
+          }
+        }
+      }, {
+        id: "aws-cn",
+        outputs: {
+          dnsSuffix: "amazonaws.com.cn",
+          dualStackDnsSuffix: "api.amazonwebservices.com.cn",
+          implicitGlobalRegion: "cn-northwest-1",
+          name: "aws-cn",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^cn\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-cn-global": {
+            description: "AWS China global region"
+          },
+          "cn-north-1": {
+            description: "China (Beijing)"
+          },
+          "cn-northwest-1": {
+            description: "China (Ningxia)"
+          }
+        }
+      }, {
+        id: "aws-us-gov",
+        outputs: {
+          dnsSuffix: "amazonaws.com",
+          dualStackDnsSuffix: "api.aws",
+          implicitGlobalRegion: "us-gov-west-1",
+          name: "aws-us-gov",
+          supportsDualStack: true,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-gov\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-us-gov-global": {
+            description: "AWS GovCloud (US) global region"
+          },
+          "us-gov-east-1": {
+            description: "AWS GovCloud (US-East)"
+          },
+          "us-gov-west-1": {
+            description: "AWS GovCloud (US-West)"
+          }
+        }
+      }, {
+        id: "aws-iso",
+        outputs: {
+          dnsSuffix: "c2s.ic.gov",
+          dualStackDnsSuffix: "c2s.ic.gov",
+          implicitGlobalRegion: "us-iso-east-1",
+          name: "aws-iso",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-iso\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-global": {
+            description: "AWS ISO (US) global region"
+          },
+          "us-iso-east-1": {
+            description: "US ISO East"
+          },
+          "us-iso-west-1": {
+            description: "US ISO WEST"
+          }
+        }
+      }, {
+        id: "aws-iso-b",
+        outputs: {
+          dnsSuffix: "sc2s.sgov.gov",
+          dualStackDnsSuffix: "sc2s.sgov.gov",
+          implicitGlobalRegion: "us-isob-east-1",
+          name: "aws-iso-b",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isob\\-\\w+\\-\\d+$",
+        regions: {
+          "aws-iso-b-global": {
+            description: "AWS ISOB (US) global region"
+          },
+          "us-isob-east-1": {
+            description: "US ISOB East (Ohio)"
+          }
+        }
+      }, {
+        id: "aws-iso-e",
+        outputs: {
+          dnsSuffix: "cloud.adc-e.uk",
+          dualStackDnsSuffix: "cloud.adc-e.uk",
+          implicitGlobalRegion: "eu-isoe-west-1",
+          name: "aws-iso-e",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$",
+        regions: {
+          "eu-isoe-west-1": {
+            description: "EU ISOE West"
+          }
+        }
+      }, {
+        id: "aws-iso-f",
+        outputs: {
+          dnsSuffix: "csp.hci.ic.gov",
+          dualStackDnsSuffix: "csp.hci.ic.gov",
+          implicitGlobalRegion: "us-isof-south-1",
+          name: "aws-iso-f",
+          supportsDualStack: false,
+          supportsFIPS: true
+        },
+        regionRegex: "^us\\-isof\\-\\w+\\-\\d+$",
+        regions: {}
+      }],
+      version: "1.1"
+    };
+    var selectedPartitionsInfo = partitions_default;
+    var selectedUserAgentPrefix = "";
+    var partition = /* @__PURE__ */ __name2((value) => {
+      const { partitions } = selectedPartitionsInfo;
+      for (const partition2 of partitions) {
+        const { regions, outputs } = partition2;
+        for (const [region, regionData] of Object.entries(regions)) {
+          if (region === value) {
+            return {
+              ...outputs,
+              ...regionData
+            };
+          }
+        }
+      }
+      for (const partition2 of partitions) {
+        const { regionRegex, outputs } = partition2;
+        if (new RegExp(regionRegex).test(value)) {
+          return {
+            ...outputs
+          };
+        }
+      }
+      const DEFAULT_PARTITION = partitions.find((partition2) => partition2.id === "aws");
+      if (!DEFAULT_PARTITION) {
+        throw new Error(
+          "Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist."
+        );
+      }
+      return {
+        ...DEFAULT_PARTITION.outputs
+      };
+    }, "partition");
+    var setPartitionInfo = /* @__PURE__ */ __name2((partitionsInfo, userAgentPrefix = "") => {
+      selectedPartitionsInfo = partitionsInfo;
+      selectedUserAgentPrefix = userAgentPrefix;
+    }, "setPartitionInfo");
+    var useDefaultPartitionInfo = /* @__PURE__ */ __name2(() => {
+      setPartitionInfo(partitions_default, "");
+    }, "useDefaultPartitionInfo");
+    var getUserAgentPrefix = /* @__PURE__ */ __name2(() => selectedUserAgentPrefix, "getUserAgentPrefix");
+    var awsEndpointFunctions = {
+      isVirtualHostableS3Bucket,
+      parseArn,
+      partition
+    };
+    import_util_endpoints.customEndpointFunctions.aws = awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js
+var require_dist_cjs8 = __commonJS({
+  "../../../node_modules/@aws-sdk/middleware-user-agent/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getUserAgentMiddlewareOptions: () => getUserAgentMiddlewareOptions,
+      getUserAgentPlugin: () => getUserAgentPlugin,
+      resolveUserAgentConfig: () => resolveUserAgentConfig,
+      userAgentMiddleware: () => userAgentMiddleware
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function resolveUserAgentConfig(input) {
+      return {
+        ...input,
+        customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent
+      };
+    }
+    __name2(resolveUserAgentConfig, "resolveUserAgentConfig");
+    var import_util_endpoints = require_dist_cjs7();
+    var import_protocol_http8 = require_dist_cjs2();
+    var USER_AGENT = "user-agent";
+    var X_AMZ_USER_AGENT = "x-amz-user-agent";
+    var SPACE = " ";
+    var UA_NAME_SEPARATOR = "/";
+    var UA_NAME_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w]/g;
+    var UA_VALUE_ESCAPE_REGEX = /[^\!\$\%\&\'\*\+\-\.\^\_\`\|\~\d\w\#]/g;
+    var UA_ESCAPE_CHAR = "-";
+    var userAgentMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7, _b;
+      const { request: request2 } = args;
+      if (!import_protocol_http8.HttpRequest.isInstance(request2))
+        return next(args);
+      const { headers } = request2;
+      const userAgent = ((_a7 = context == null ? void 0 : context.userAgent) == null ? void 0 : _a7.map(escapeUserAgent)) || [];
+      const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);
+      const customUserAgent = ((_b = options == null ? void 0 : options.customUserAgent) == null ? void 0 : _b.map(escapeUserAgent)) || [];
+      const prefix = (0, import_util_endpoints.getUserAgentPrefix)();
+      const sdkUserAgentValue = (prefix ? [prefix] : []).concat([...defaultUserAgent, ...userAgent, ...customUserAgent]).join(SPACE);
+      const normalUAValue = [
+        ...defaultUserAgent.filter((section) => section.startsWith("aws-sdk-")),
+        ...customUserAgent
+      ].join(SPACE);
+      if (options.runtime !== "browser") {
+        if (normalUAValue) {
+          headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT] ? `${headers[USER_AGENT]} ${normalUAValue}` : normalUAValue;
+        }
+        headers[USER_AGENT] = sdkUserAgentValue;
+      } else {
+        headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;
+      }
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "userAgentMiddleware");
+    var escapeUserAgent = /* @__PURE__ */ __name2((userAgentPair) => {
+      var _a7;
+      const name = userAgentPair[0].split(UA_NAME_SEPARATOR).map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR)).join(UA_NAME_SEPARATOR);
+      const version3 = (_a7 = userAgentPair[1]) == null ? void 0 : _a7.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);
+      const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);
+      const prefix = name.substring(0, prefixSeparatorIndex);
+      let uaName = name.substring(prefixSeparatorIndex + 1);
+      if (prefix === "api") {
+        uaName = uaName.toLowerCase();
+      }
+      return [prefix, uaName, version3].filter((item) => item && item.length > 0).reduce((acc, item, index) => {
+        switch (index) {
+          case 0:
+            return item;
+          case 1:
+            return `${acc}/${item}`;
+          default:
+            return `${acc}#${item}`;
+        }
+      }, "");
+    }, "escapeUserAgent");
+    var getUserAgentMiddlewareOptions = {
+      name: "getUserAgentMiddleware",
+      step: "build",
+      priority: "low",
+      tags: ["SET_USER_AGENT", "USER_AGENT"],
+      override: true
+    };
+    var getUserAgentPlugin = /* @__PURE__ */ __name2((config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);
+      }
+    }), "getUserAgentPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js
+var require_dist_cjs9 = __commonJS({
+  "../../../node_modules/@smithy/util-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SelectorType: () => SelectorType,
+      booleanSelector: () => booleanSelector,
+      numberSelector: () => numberSelector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var booleanSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      if (obj[key] === "true")
+        return true;
+      if (obj[key] === "false")
+        return false;
+      throw new Error(`Cannot load ${type} "${key}". Expected "true" or "false", got ${obj[key]}.`);
+    }, "booleanSelector");
+    var numberSelector = /* @__PURE__ */ __name2((obj, key, type) => {
+      if (!(key in obj))
+        return void 0;
+      const numberValue = parseInt(obj[key], 10);
+      if (Number.isNaN(numberValue)) {
+        throw new TypeError(`Cannot load ${type} '${key}'. Expected number, got '${obj[key]}'.`);
+      }
+      return numberValue;
+    }, "numberSelector");
+    var SelectorType = /* @__PURE__ */ ((SelectorType2) => {
+      SelectorType2["ENV"] = "env";
+      SelectorType2["CONFIG"] = "shared config entry";
+      return SelectorType2;
+    })(SelectorType || {});
+  }
+});
+
+// ../../../node_modules/@smithy/util-middleware/dist-cjs/index.js
+var require_dist_cjs10 = __commonJS({
+  "../../../node_modules/@smithy/util-middleware/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      getSmithyContext: () => getSmithyContext4,
+      normalizeProvider: () => normalizeProvider2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_types8 = require_dist_cjs();
+    var getSmithyContext4 = /* @__PURE__ */ __name2((context) => context[import_types8.SMITHY_CONTEXT_KEY] || (context[import_types8.SMITHY_CONTEXT_KEY] = {}), "getSmithyContext");
+    var normalizeProvider2 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    }, "normalizeProvider");
+  }
+});
+
+// ../../../node_modules/@smithy/config-resolver/dist-cjs/index.js
+var require_dist_cjs11 = __commonJS({
+  "../../../node_modules/@smithy/config-resolver/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_USE_DUALSTACK_ENDPOINT: () => CONFIG_USE_DUALSTACK_ENDPOINT,
+      CONFIG_USE_FIPS_ENDPOINT: () => CONFIG_USE_FIPS_ENDPOINT,
+      DEFAULT_USE_DUALSTACK_ENDPOINT: () => DEFAULT_USE_DUALSTACK_ENDPOINT,
+      DEFAULT_USE_FIPS_ENDPOINT: () => DEFAULT_USE_FIPS_ENDPOINT,
+      ENV_USE_DUALSTACK_ENDPOINT: () => ENV_USE_DUALSTACK_ENDPOINT,
+      ENV_USE_FIPS_ENDPOINT: () => ENV_USE_FIPS_ENDPOINT,
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,
+      NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: () => NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getRegionInfo: () => getRegionInfo,
+      resolveCustomEndpointsConfig: () => resolveCustomEndpointsConfig,
+      resolveEndpointsConfig: () => resolveEndpointsConfig,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_config_provider = require_dist_cjs9();
+    var ENV_USE_DUALSTACK_ENDPOINT = "AWS_USE_DUALSTACK_ENDPOINT";
+    var CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint";
+    var DEFAULT_USE_DUALSTACK_ENDPOINT = false;
+    var NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_DUALSTACK_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var ENV_USE_FIPS_ENDPOINT = "AWS_USE_FIPS_ENDPOINT";
+    var CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint";
+    var DEFAULT_USE_FIPS_ENDPOINT = false;
+    var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => (0, import_util_config_provider.booleanSelector)(env2, ENV_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.ENV),
+      configFileSelector: (profile) => (0, import_util_config_provider.booleanSelector)(profile, CONFIG_USE_FIPS_ENDPOINT, import_util_config_provider.SelectorType.CONFIG),
+      default: false
+    };
+    var import_util_middleware3 = require_dist_cjs10();
+    var resolveCustomEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const { endpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint),
+        isCustomEndpoint: true,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false)
+      };
+    }, "resolveCustomEndpointsConfig");
+    var getEndpointFromRegion = /* @__PURE__ */ __name2(async (input) => {
+      const { tls = true } = input;
+      const region = await input.region();
+      const dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/);
+      if (!dnsHostRegex.test(region)) {
+        throw new Error("Invalid region in client config");
+      }
+      const useDualstackEndpoint = await input.useDualstackEndpoint();
+      const useFipsEndpoint = await input.useFipsEndpoint();
+      const { hostname } = await input.regionInfoProvider(region, { useDualstackEndpoint, useFipsEndpoint }) ?? {};
+      if (!hostname) {
+        throw new Error("Cannot resolve hostname from client config");
+      }
+      return input.urlParser(`${tls ? "https:" : "http:"}//${hostname}`);
+    }, "getEndpointFromRegion");
+    var resolveEndpointsConfig = /* @__PURE__ */ __name2((input) => {
+      const useDualstackEndpoint = (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false);
+      const { endpoint, useFipsEndpoint, urlParser } = input;
+      return {
+        ...input,
+        tls: input.tls ?? true,
+        endpoint: endpoint ? (0, import_util_middleware3.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint) : () => getEndpointFromRegion({ ...input, useDualstackEndpoint, useFipsEndpoint }),
+        isCustomEndpoint: !!endpoint,
+        useDualstackEndpoint
+      };
+    }, "resolveEndpointsConfig");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+    var getHostnameFromVariants = /* @__PURE__ */ __name2((variants = [], { useFipsEndpoint, useDualstackEndpoint }) => {
+      var _a7;
+      return (_a7 = variants.find(
+        ({ tags }) => useFipsEndpoint === tags.includes("fips") && useDualstackEndpoint === tags.includes("dualstack")
+      )) == null ? void 0 : _a7.hostname;
+    }, "getHostnameFromVariants");
+    var getResolvedHostname = /* @__PURE__ */ __name2((resolvedRegion, { regionHostname, partitionHostname }) => regionHostname ? regionHostname : partitionHostname ? partitionHostname.replace("{region}", resolvedRegion) : void 0, "getResolvedHostname");
+    var getResolvedPartition = /* @__PURE__ */ __name2((region, { partitionHash }) => Object.keys(partitionHash || {}).find((key) => partitionHash[key].regions.includes(region)) ?? "aws", "getResolvedPartition");
+    var getResolvedSigningRegion = /* @__PURE__ */ __name2((hostname, { signingRegion, regionRegex, useFipsEndpoint }) => {
+      if (signingRegion) {
+        return signingRegion;
+      } else if (useFipsEndpoint) {
+        const regionRegexJs = regionRegex.replace("\\\\", "\\").replace(/^\^/g, "\\.").replace(/\$$/g, "\\.");
+        const regionRegexmatchArray = hostname.match(regionRegexJs);
+        if (regionRegexmatchArray) {
+          return regionRegexmatchArray[0].slice(1, -1);
+        }
+      }
+    }, "getResolvedSigningRegion");
+    var getRegionInfo = /* @__PURE__ */ __name2((region, {
+      useFipsEndpoint = false,
+      useDualstackEndpoint = false,
+      signingService,
+      regionHash,
+      partitionHash
+    }) => {
+      var _a7, _b, _c, _d, _e;
+      const partition = getResolvedPartition(region, { partitionHash });
+      const resolvedRegion = region in regionHash ? region : ((_a7 = partitionHash[partition]) == null ? void 0 : _a7.endpoint) ?? region;
+      const hostnameOptions = { useFipsEndpoint, useDualstackEndpoint };
+      const regionHostname = getHostnameFromVariants((_b = regionHash[resolvedRegion]) == null ? void 0 : _b.variants, hostnameOptions);
+      const partitionHostname = getHostnameFromVariants((_c = partitionHash[partition]) == null ? void 0 : _c.variants, hostnameOptions);
+      const hostname = getResolvedHostname(resolvedRegion, { regionHostname, partitionHostname });
+      if (hostname === void 0) {
+        throw new Error(`Endpoint resolution failed for: ${{ resolvedRegion, useFipsEndpoint, useDualstackEndpoint }}`);
+      }
+      const signingRegion = getResolvedSigningRegion(hostname, {
+        signingRegion: (_d = regionHash[resolvedRegion]) == null ? void 0 : _d.signingRegion,
+        regionRegex: partitionHash[partition].regionRegex,
+        useFipsEndpoint
+      });
+      return {
+        partition,
+        signingService,
+        hostname,
+        ...signingRegion && { signingRegion },
+        ...((_e = regionHash[resolvedRegion]) == null ? void 0 : _e.signingService) && {
+          signingService: regionHash[resolvedRegion].signingService
+        }
+      };
+    }, "getRegionInfo");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/getSmithyContext.js
+var import_types4, getSmithyContext;
+var init_getSmithyContext = __esm({
+  "../../../node_modules/@smithy/core/dist-es/getSmithyContext.js"() {
+    import_types4 = __toESM(require_dist_cjs());
+    getSmithyContext = (context) => context[import_types4.SMITHY_CONTEXT_KEY] || (context[import_types4.SMITHY_CONTEXT_KEY] = {});
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js
+function convertHttpAuthSchemesToMap(httpAuthSchemes) {
+  const map = /* @__PURE__ */ new Map();
+  for (const scheme of httpAuthSchemes) {
+    map.set(scheme.schemeId, scheme);
+  }
+  return map;
+}
+var import_types5, import_util_middleware, httpAuthSchemeMiddleware;
+var init_httpAuthSchemeMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js"() {
+    import_types5 = __toESM(require_dist_cjs());
+    import_util_middleware = __toESM(require_dist_cjs10());
+    httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {
+      const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));
+      const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);
+      const smithyContext = (0, import_util_middleware.getSmithyContext)(context);
+      const failureReasons = [];
+      for (const option of options) {
+        const scheme = authSchemes.get(option.schemeId);
+        if (!scheme) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` was not enabled for this service.`);
+          continue;
+        }
+        const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));
+        if (!identityProvider) {
+          failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` did not have an IdentityProvider configured.`);
+          continue;
+        }
+        const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};
+        option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);
+        option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);
+        smithyContext.selectedHttpAuthScheme = {
+          httpAuthOption: option,
+          identity: await identityProvider(option.identityProperties),
+          signer: scheme.signer
+        };
+        break;
+      }
+      if (!smithyContext.selectedHttpAuthScheme) {
+        throw new Error(failureReasons.join("\n"));
+      }
+      return next(args);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js
+var httpAuthSchemeEndpointRuleSetMiddlewareOptions, getHttpAuthSchemeEndpointRuleSetPlugin;
+var init_getHttpAuthSchemeEndpointRuleSetPlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js"() {
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeEndpointRuleSetMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: "endpointV2Middleware"
+    };
+    getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js
+var require_dist_cjs12 = __commonJS({
+  "../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      deserializerMiddleware: () => deserializerMiddleware,
+      deserializerMiddlewareOption: () => deserializerMiddlewareOption,
+      getSerdePlugin: () => getSerdePlugin,
+      serializerMiddleware: () => serializerMiddleware,
+      serializerMiddlewareOption: () => serializerMiddlewareOption2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var deserializerMiddleware = /* @__PURE__ */ __name2((options, deserializer) => (next) => async (args) => {
+      const { response } = await next(args);
+      try {
+        const parsed = await deserializer(response, options);
+        return {
+          response,
+          output: parsed
+        };
+      } catch (error) {
+        Object.defineProperty(error, "$response", {
+          value: response
+        });
+        if (!("$metadata" in error)) {
+          const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;
+          error.message += "\n  " + hint;
+          if (typeof error.$responseBodyText !== "undefined") {
+            if (error.$response) {
+              error.$response.body = error.$responseBodyText;
+            }
+          }
+        }
+        throw error;
+      }
+    }, "deserializerMiddleware");
+    var serializerMiddleware = /* @__PURE__ */ __name2((options, serializer) => (next, context) => async (args) => {
+      var _a7;
+      const endpoint = ((_a7 = context.endpointV2) == null ? void 0 : _a7.url) && options.urlParser ? async () => options.urlParser(context.endpointV2.url) : options.endpoint;
+      if (!endpoint) {
+        throw new Error("No valid endpoint provider available.");
+      }
+      const request2 = await serializer(args.input, { ...options, endpoint });
+      return next({
+        ...args,
+        request: request2
+      });
+    }, "serializerMiddleware");
+    var deserializerMiddlewareOption = {
+      name: "deserializerMiddleware",
+      step: "deserialize",
+      tags: ["DESERIALIZER"],
+      override: true
+    };
+    var serializerMiddlewareOption2 = {
+      name: "serializerMiddleware",
+      step: "serialize",
+      tags: ["SERIALIZER"],
+      override: true
+    };
+    function getSerdePlugin(config, serializer, deserializer) {
+      return {
+        applyToStack: (commandStack) => {
+          commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);
+          commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption2);
+        }
+      };
+    }
+    __name2(getSerdePlugin, "getSerdePlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js
+var import_middleware_serde, httpAuthSchemeMiddlewareOptions, getHttpAuthSchemePlugin;
+var init_getHttpAuthSchemePlugin = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js"() {
+    import_middleware_serde = __toESM(require_dist_cjs12());
+    init_httpAuthSchemeMiddleware();
+    httpAuthSchemeMiddlewareOptions = {
+      step: "serialize",
+      tags: ["HTTP_AUTH_SCHEME"],
+      name: "httpAuthSchemeMiddleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde.serializerMiddlewareOption.name
+    };
+    getHttpAuthSchemePlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
+          httpAuthSchemeParametersProvider,
+          identityProviderConfigProvider
+        }), httpAuthSchemeMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js
+var init_middleware_http_auth_scheme = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js"() {
+    init_httpAuthSchemeMiddleware();
+    init_getHttpAuthSchemeEndpointRuleSetPlugin();
+    init_getHttpAuthSchemePlugin();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js
+var import_protocol_http, import_types6, import_util_middleware2, defaultErrorHandler, defaultSuccessHandler, httpSigningMiddleware;
+var init_httpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js"() {
+    import_protocol_http = __toESM(require_dist_cjs2());
+    import_types6 = __toESM(require_dist_cjs());
+    import_util_middleware2 = __toESM(require_dist_cjs10());
+    defaultErrorHandler = (signingProperties) => (error) => {
+      throw error;
+    };
+    defaultSuccessHandler = (httpResponse, signingProperties) => {
+    };
+    httpSigningMiddleware = (config) => (next, context) => async (args) => {
+      if (!import_protocol_http.HttpRequest.isInstance(args.request)) {
+        return next(args);
+      }
+      const smithyContext = (0, import_util_middleware2.getSmithyContext)(context);
+      const scheme = smithyContext.selectedHttpAuthScheme;
+      if (!scheme) {
+        throw new Error(`No HttpAuthScheme was selected: unable to sign request`);
+      }
+      const { httpAuthOption: { signingProperties = {} }, identity, signer } = scheme;
+      const output = await next({
+        ...args,
+        request: await signer.sign(args.request, identity, signingProperties)
+      }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));
+      (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);
+      return output;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js
+var httpSigningMiddlewareOptions, getHttpSigningPlugin;
+var init_getHttpSigningMiddleware = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js"() {
+    init_httpSigningMiddleware();
+    httpSigningMiddlewareOptions = {
+      step: "finalizeRequest",
+      tags: ["HTTP_SIGNING"],
+      name: "httpSigningMiddleware",
+      aliases: ["apiKeyMiddleware", "tokenMiddleware", "awsAuthMiddleware"],
+      override: true,
+      relation: "after",
+      toMiddleware: "retryMiddleware"
+    };
+    getHttpSigningPlugin = (config) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);
+      }
+    });
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js
+var init_middleware_http_signing = __esm({
+  "../../../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js"() {
+    init_httpSigningMiddleware();
+    init_getHttpSigningMiddleware();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/normalizeProvider.js
+var normalizeProvider;
+var init_normalizeProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/normalizeProvider.js"() {
+    normalizeProvider = (input) => {
+      if (typeof input === "function")
+        return input;
+      const promisified = Promise.resolve(input);
+      return () => promisified;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js
+function createPaginator(ClientCtor, CommandCtor, inputTokenName, outputTokenName, pageSizeTokenName) {
+  return async function* paginateOperation(config, input, ...additionalArguments) {
+    let token = config.startingToken || void 0;
+    let hasNext = true;
+    let page;
+    while (hasNext) {
+      input[inputTokenName] = token;
+      if (pageSizeTokenName) {
+        input[pageSizeTokenName] = input[pageSizeTokenName] ?? config.pageSize;
+      }
+      if (config.client instanceof ClientCtor) {
+        page = await makePagedClientRequest(CommandCtor, config.client, input, ...additionalArguments);
+      } else {
+        throw new Error(`Invalid client, expected instance of ${ClientCtor.name}`);
+      }
+      yield page;
+      const prevToken = token;
+      token = get(page, outputTokenName);
+      hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
+    }
+    return void 0;
+  };
+}
+var makePagedClientRequest, get;
+var init_createPaginator = __esm({
+  "../../../node_modules/@smithy/core/dist-es/pagination/createPaginator.js"() {
+    makePagedClientRequest = async (CommandCtor, client, input, ...args) => {
+      return await client.send(new CommandCtor(input), ...args);
+    };
+    get = (fromObject, path23) => {
+      let cursor = fromObject;
+      const pathComponents = path23.split(".");
+      for (const step of pathComponents) {
+        if (!cursor || typeof cursor !== "object") {
+          return void 0;
+        }
+        cursor = cursor[step];
+      }
+      return cursor;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js
+var require_dist_cjs13 = __commonJS({
+  "../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isArrayBuffer: () => isArrayBuffer
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isArrayBuffer = /* @__PURE__ */ __name2((arg) => typeof ArrayBuffer === "function" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === "[object ArrayBuffer]", "isArrayBuffer");
+  }
+});
+
+// ../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js
+var require_dist_cjs14 = __commonJS({
+  "../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromArrayBuffer: () => fromArrayBuffer,
+      fromString: () => fromString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_buffer = require("buffer");
+    var fromArrayBuffer = /* @__PURE__ */ __name2((input, offset = 0, length = input.byteLength - offset) => {
+      if (!(0, import_is_array_buffer.isArrayBuffer)(input)) {
+        throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);
+      }
+      return import_buffer.Buffer.from(input, offset, length);
+    }, "fromArrayBuffer");
+    var fromString = /* @__PURE__ */ __name2((input, encoding) => {
+      if (typeof input !== "string") {
+        throw new TypeError(`The "input" argument must be of type string. Received type ${typeof input} (${input})`);
+      }
+      return encoding ? import_buffer.Buffer.from(input, encoding) : import_buffer.Buffer.from(input);
+    }, "fromString");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js
+var require_fromBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;
+    var fromBase642 = (input) => {
+      if (input.length * 3 % 4 !== 0) {
+        throw new TypeError(`Incorrect padding on base64 string.`);
+      }
+      if (!BASE64_REGEX.exec(input)) {
+        throw new TypeError(`Invalid base64 string.`);
+      }
+      const buffer = (0, util_buffer_from_1.fromString)(input, "base64");
+      return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
+    };
+    exports2.fromBase64 = fromBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-utf8/dist-cjs/index.js
+var require_dist_cjs15 = __commonJS({
+  "../../../node_modules/@smithy/util-utf8/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromUtf8: () => fromUtf8,
+      toUint8Array: () => toUint8Array,
+      toUtf8: () => toUtf8
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var fromUtf8 = /* @__PURE__ */ __name2((input) => {
+      const buf = (0, import_util_buffer_from.fromString)(input, "utf8");
+      return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+    }, "fromUtf8");
+    var toUint8Array = /* @__PURE__ */ __name2((data) => {
+      if (typeof data === "string") {
+        return fromUtf8(data);
+      }
+      if (ArrayBuffer.isView(data)) {
+        return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
+      }
+      return new Uint8Array(data);
+    }, "toUint8Array");
+    var toUtf8 = /* @__PURE__ */ __name2((input) => {
+      if (typeof input === "string") {
+        return input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("utf8");
+    }, "toUtf8");
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js
+var require_toBase64 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.toBase64 = void 0;
+    var util_buffer_from_1 = require_dist_cjs14();
+    var util_utf8_1 = require_dist_cjs15();
+    var toBase642 = (_input) => {
+      let input;
+      if (typeof _input === "string") {
+        input = (0, util_utf8_1.fromUtf8)(_input);
+      } else {
+        input = _input;
+      }
+      if (typeof input !== "object" || typeof input.byteOffset !== "number" || typeof input.byteLength !== "number") {
+        throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");
+      }
+      return (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString("base64");
+    };
+    exports2.toBase64 = toBase642;
+  }
+});
+
+// ../../../node_modules/@smithy/util-base64/dist-cjs/index.js
+var require_dist_cjs16 = __commonJS({
+  "../../../node_modules/@smithy/util-base64/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromBase64(), module2.exports);
+    __reExport2(src_exports, require_toBase64(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js
+var require_getAwsChunkedEncodingStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getAwsChunkedEncodingStream = void 0;
+    var stream_1 = require("stream");
+    var getAwsChunkedEncodingStream2 = (readableStream, options) => {
+      const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;
+      const checksumRequired = base64Encoder !== void 0 && checksumAlgorithmFn !== void 0 && checksumLocationName !== void 0 && streamHasher !== void 0;
+      const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : void 0;
+      const awsChunkedEncodingStream = new stream_1.Readable({ read: () => {
+      } });
+      readableStream.on("data", (data) => {
+        const length = bodyLengthChecker(data) || 0;
+        awsChunkedEncodingStream.push(`${length.toString(16)}\r
+`);
+        awsChunkedEncodingStream.push(data);
+        awsChunkedEncodingStream.push("\r\n");
+      });
+      readableStream.on("end", async () => {
+        awsChunkedEncodingStream.push(`0\r
+`);
+        if (checksumRequired) {
+          const checksum = base64Encoder(await digest);
+          awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\r
+`);
+          awsChunkedEncodingStream.push(`\r
+`);
+        }
+        awsChunkedEncodingStream.push(null);
+      });
+      return awsChunkedEncodingStream;
+    };
+    exports2.getAwsChunkedEncodingStream = getAwsChunkedEncodingStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js
+var require_dist_cjs17 = __commonJS({
+  "../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      escapeUri: () => escapeUri,
+      escapeUriPath: () => escapeUriPath
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var escapeUri = /* @__PURE__ */ __name2((uri) => (
+      // AWS percent-encodes some extra non-standard characters in a URI
+      encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode)
+    ), "escapeUri");
+    var hexEncode = /* @__PURE__ */ __name2((c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, "hexEncode");
+    var escapeUriPath = /* @__PURE__ */ __name2((uri) => uri.split("/").map(escapeUri).join("/"), "escapeUriPath");
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js
+var require_dist_cjs18 = __commonJS({
+  "../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      buildQueryString: () => buildQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_uri_escape = require_dist_cjs17();
+    function buildQueryString(query) {
+      const parts = [];
+      for (let key of Object.keys(query).sort()) {
+        const value = query[key];
+        key = (0, import_util_uri_escape.escapeUri)(key);
+        if (Array.isArray(value)) {
+          for (let i = 0, iLen = value.length; i < iLen; i++) {
+            parts.push(`${key}=${(0, import_util_uri_escape.escapeUri)(value[i])}`);
+          }
+        } else {
+          let qsEntry = key;
+          if (value || typeof value === "string") {
+            qsEntry += `=${(0, import_util_uri_escape.escapeUri)(value)}`;
+          }
+          parts.push(qsEntry);
+        }
+      }
+      return parts.join("&");
+    }
+    __name2(buildQueryString, "buildQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js
+var require_dist_cjs19 = __commonJS({
+  "../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_REQUEST_TIMEOUT: () => DEFAULT_REQUEST_TIMEOUT,
+      NodeHttp2Handler: () => NodeHttp2Handler,
+      NodeHttpHandler: () => NodeHttpHandler,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    var import_http2 = require("http");
+    var import_https = require("https");
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "EPIPE", "ETIMEDOUT"];
+    var getTransformedHeaders = /* @__PURE__ */ __name2((headers) => {
+      const transformedHeaders = {};
+      for (const name of Object.keys(headers)) {
+        const headerValues = headers[name];
+        transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(",") : headerValues;
+      }
+      return transformedHeaders;
+    }, "getTransformedHeaders");
+    var timing = {
+      setTimeout: (cb, ms) => setTimeout(cb, ms),
+      clearTimeout: (timeoutId) => clearTimeout(timeoutId)
+    };
+    var DEFER_EVENT_LISTENER_TIME = 1e3;
+    var setConnectionTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      if (!timeoutInMs) {
+        return -1;
+      }
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeoutId = timing.setTimeout(() => {
+          request2.destroy();
+          reject(
+            Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {
+              name: "TimeoutError"
+            })
+          );
+        }, timeoutInMs - offset);
+        const doWithSocket = /* @__PURE__ */ __name2((socket) => {
+          if (socket == null ? void 0 : socket.connecting) {
+            socket.on("connect", () => {
+              timing.clearTimeout(timeoutId);
+            });
+          } else {
+            timing.clearTimeout(timeoutId);
+          }
+        }, "doWithSocket");
+        if (request2.socket) {
+          doWithSocket(request2.socket);
+        } else {
+          request2.on("socket", doWithSocket);
+        }
+      }, "registerTimeout");
+      if (timeoutInMs < 2e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(registerTimeout.bind(null, DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);
+    }, "setConnectionTimeout");
+    var DEFER_EVENT_LISTENER_TIME2 = 3e3;
+    var setSocketKeepAlive = /* @__PURE__ */ __name2((request2, { keepAlive, keepAliveMsecs }, deferTimeMs = DEFER_EVENT_LISTENER_TIME2) => {
+      if (keepAlive !== true) {
+        return -1;
+      }
+      const registerListener = /* @__PURE__ */ __name2(() => {
+        if (request2.socket) {
+          request2.socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+        } else {
+          request2.on("socket", (socket) => {
+            socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);
+          });
+        }
+      }, "registerListener");
+      if (deferTimeMs === 0) {
+        registerListener();
+        return 0;
+      }
+      return timing.setTimeout(registerListener, deferTimeMs);
+    }, "setSocketKeepAlive");
+    var DEFER_EVENT_LISTENER_TIME3 = 3e3;
+    var setSocketTimeout = /* @__PURE__ */ __name2((request2, reject, timeoutInMs = 0) => {
+      const registerTimeout = /* @__PURE__ */ __name2((offset) => {
+        const timeout = timeoutInMs - offset;
+        const onTimeout2 = /* @__PURE__ */ __name2(() => {
+          request2.destroy();
+          reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: "TimeoutError" }));
+        }, "onTimeout");
+        if (request2.socket) {
+          request2.socket.setTimeout(timeout, onTimeout2);
+        } else {
+          request2.setTimeout(timeout, onTimeout2);
+        }
+      }, "registerTimeout");
+      if (0 < timeoutInMs && timeoutInMs < 6e3) {
+        registerTimeout(0);
+        return 0;
+      }
+      return timing.setTimeout(
+        registerTimeout.bind(null, timeoutInMs === 0 ? 0 : DEFER_EVENT_LISTENER_TIME3),
+        DEFER_EVENT_LISTENER_TIME3
+      );
+    }, "setSocketTimeout");
+    var import_stream = require("stream");
+    var MIN_WAIT_TIME = 1e3;
+    async function writeRequestBody(httpRequest, request2, maxContinueTimeoutMs = MIN_WAIT_TIME) {
+      const headers = request2.headers ?? {};
+      const expect = headers["Expect"] || headers["expect"];
+      let timeoutId = -1;
+      let sendBody = true;
+      if (expect === "100-continue") {
+        sendBody = await Promise.race([
+          new Promise((resolve6) => {
+            timeoutId = Number(timing.setTimeout(resolve6, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));
+          }),
+          new Promise((resolve6) => {
+            httpRequest.on("continue", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(true);
+            });
+            httpRequest.on("response", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+            httpRequest.on("error", () => {
+              timing.clearTimeout(timeoutId);
+              resolve6(false);
+            });
+          })
+        ]);
+      }
+      if (sendBody) {
+        writeBody(httpRequest, request2.body);
+      }
+    }
+    __name2(writeRequestBody, "writeRequestBody");
+    function writeBody(httpRequest, body) {
+      if (body instanceof import_stream.Readable) {
+        body.pipe(httpRequest);
+        return;
+      }
+      if (body) {
+        if (Buffer.isBuffer(body) || typeof body === "string") {
+          httpRequest.end(body);
+          return;
+        }
+        const uint8 = body;
+        if (typeof uint8 === "object" && uint8.buffer && typeof uint8.byteOffset === "number" && typeof uint8.byteLength === "number") {
+          httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));
+          return;
+        }
+        httpRequest.end(Buffer.from(body));
+        return;
+      }
+      httpRequest.end();
+    }
+    __name2(writeBody, "writeBody");
+    var DEFAULT_REQUEST_TIMEOUT = 0;
+    var _NodeHttpHandler = class _NodeHttpHandler2 {
+      constructor(options) {
+        this.socketWarningTimestamp = 0;
+        this.metadata = { handlerProtocol: "http/1.1" };
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((_options) => {
+              resolve6(this.resolveDefaultConfig(_options));
+            }).catch(reject);
+          } else {
+            resolve6(this.resolveDefaultConfig(options));
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttpHandler2(instanceOrOptions);
+      }
+      /**
+       * @internal
+       *
+       * @param agent - http(s) agent in use by the NodeHttpHandler instance.
+       * @param socketWarningTimestamp - last socket usage check timestamp.
+       * @param logger - channel for the warning.
+       * @returns timestamp of last emitted warning.
+       */
+      static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {
+        var _a7, _b, _c;
+        const { sockets, requests, maxSockets } = agent;
+        if (typeof maxSockets !== "number" || maxSockets === Infinity) {
+          return socketWarningTimestamp;
+        }
+        const interval = 15e3;
+        if (Date.now() - interval < socketWarningTimestamp) {
+          return socketWarningTimestamp;
+        }
+        if (sockets && requests) {
+          for (const origin in sockets) {
+            const socketsInUse = ((_a7 = sockets[origin]) == null ? void 0 : _a7.length) ?? 0;
+            const requestsEnqueued = ((_b = requests[origin]) == null ? void 0 : _b.length) ?? 0;
+            if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {
+              (_c = logger == null ? void 0 : logger.warn) == null ? void 0 : _c.call(
+                logger,
+                `@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.
+See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html
+or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`
+              );
+              return Date.now();
+            }
+          }
+        }
+        return socketWarningTimestamp;
+      }
+      resolveDefaultConfig(options) {
+        const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {};
+        const keepAlive = true;
+        const maxSockets = 50;
+        return {
+          connectionTimeout,
+          requestTimeout: requestTimeout ?? socketTimeout,
+          httpAgent: (() => {
+            if (httpAgent instanceof import_http2.Agent || typeof (httpAgent == null ? void 0 : httpAgent.destroy) === "function") {
+              return httpAgent;
+            }
+            return new import_http2.Agent({ keepAlive, maxSockets, ...httpAgent });
+          })(),
+          httpsAgent: (() => {
+            if (httpsAgent instanceof import_https.Agent || typeof (httpsAgent == null ? void 0 : httpsAgent.destroy) === "function") {
+              return httpsAgent;
+            }
+            return new import_https.Agent({ keepAlive, maxSockets, ...httpsAgent });
+          })(),
+          logger: console
+        };
+      }
+      destroy() {
+        var _a7, _b, _c, _d;
+        (_b = (_a7 = this.config) == null ? void 0 : _a7.httpAgent) == null ? void 0 : _b.destroy();
+        (_d = (_c = this.config) == null ? void 0 : _c.httpsAgent) == null ? void 0 : _d.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        return new Promise((_resolve2, _reject) => {
+          let writeRequestBodyPromise = void 0;
+          const timeouts = [];
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            timeouts.forEach(timing.clearTimeout);
+            _reject(arg);
+          }, "reject");
+          if (!this.config) {
+            throw new Error("Node HTTP request handler config is not resolved");
+          }
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const isSSL = request2.protocol === "https:";
+          const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;
+          timeouts.push(
+            timing.setTimeout(
+              () => {
+                this.socketWarningTimestamp = _NodeHttpHandler2.checkSocketUsage(
+                  agent,
+                  this.socketWarningTimestamp,
+                  this.config.logger
+                );
+              },
+              this.config.socketAcquisitionWarningTimeout ?? (this.config.requestTimeout ?? 2e3) + (this.config.connectionTimeout ?? 1e3)
+            )
+          );
+          const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+          let auth = void 0;
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}`;
+          }
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          let hostname = request2.hostname ?? "";
+          if (hostname[0] === "[" && hostname.endsWith("]")) {
+            hostname = request2.hostname.slice(1, -1);
+          } else {
+            hostname = request2.hostname;
+          }
+          const nodeHttpsOptions = {
+            headers: request2.headers,
+            host: hostname,
+            method: request2.method,
+            path: path23,
+            port: request2.port,
+            agent,
+            auth
+          };
+          const requestFunc = isSSL ? import_https.request : import_http2.request;
+          const req = requestFunc(nodeHttpsOptions, (res) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: res.statusCode || -1,
+              reason: res.statusMessage,
+              headers: getTransformedHeaders(res.headers),
+              body: res
+            });
+            resolve6({ response: httpResponse });
+          });
+          req.on("error", (err) => {
+            if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) {
+              reject(Object.assign(err, { name: "TimeoutError" }));
+            } else {
+              reject(err);
+            }
+          });
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.destroy();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              reject(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          timeouts.push(setConnectionTimeout(req, reject, this.config.connectionTimeout));
+          timeouts.push(setSocketTimeout(req, reject, this.config.requestTimeout));
+          const httpAgent = nodeHttpsOptions.agent;
+          if (typeof httpAgent === "object" && "keepAlive" in httpAgent) {
+            timeouts.push(
+              setSocketKeepAlive(req, {
+                // @ts-expect-error keepAlive is not public on httpAgent.
+                keepAlive: httpAgent.keepAlive,
+                // @ts-expect-error keepAliveMsecs is not public on httpAgent.
+                keepAliveMsecs: httpAgent.keepAliveMsecs
+              })
+            );
+          }
+          writeRequestBodyPromise = writeRequestBody(req, request2, this.config.requestTimeout).catch((e) => {
+            timeouts.forEach(timing.clearTimeout);
+            return _reject(e);
+          });
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_NodeHttpHandler, "NodeHttpHandler");
+    var NodeHttpHandler = _NodeHttpHandler;
+    var import_http22 = require("http2");
+    var import_http23 = __toESM2(require("http2"));
+    var _NodeHttp2ConnectionPool = class _NodeHttp2ConnectionPool {
+      constructor(sessions) {
+        this.sessions = [];
+        this.sessions = sessions ?? [];
+      }
+      poll() {
+        if (this.sessions.length > 0) {
+          return this.sessions.shift();
+        }
+      }
+      offerLast(session) {
+        this.sessions.push(session);
+      }
+      contains(session) {
+        return this.sessions.includes(session);
+      }
+      remove(session) {
+        this.sessions = this.sessions.filter((s) => s !== session);
+      }
+      [Symbol.iterator]() {
+        return this.sessions[Symbol.iterator]();
+      }
+      destroy(connection) {
+        for (const session of this.sessions) {
+          if (session === connection) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+          }
+        }
+      }
+    };
+    __name2(_NodeHttp2ConnectionPool, "NodeHttp2ConnectionPool");
+    var NodeHttp2ConnectionPool = _NodeHttp2ConnectionPool;
+    var _NodeHttp2ConnectionManager = class _NodeHttp2ConnectionManager {
+      constructor(config) {
+        this.sessionCache = /* @__PURE__ */ new Map();
+        this.config = config;
+        if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {
+          throw new RangeError("maxConcurrency must be greater than zero.");
+        }
+      }
+      lease(requestContext, connectionConfiguration) {
+        const url2 = this.getUrlString(requestContext);
+        const existingPool = this.sessionCache.get(url2);
+        if (existingPool) {
+          const existingSession = existingPool.poll();
+          if (existingSession && !this.config.disableConcurrency) {
+            return existingSession;
+          }
+        }
+        const session = import_http23.default.connect(url2);
+        if (this.config.maxConcurrency) {
+          session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => {
+            if (err) {
+              throw new Error(
+                "Fail to set maxConcurrentStreams to " + this.config.maxConcurrency + "when creating new session for " + requestContext.destination.toString()
+              );
+            }
+          });
+        }
+        session.unref();
+        const destroySessionCb = /* @__PURE__ */ __name2(() => {
+          session.destroy();
+          this.deleteSession(url2, session);
+        }, "destroySessionCb");
+        session.on("goaway", destroySessionCb);
+        session.on("error", destroySessionCb);
+        session.on("frameError", destroySessionCb);
+        session.on("close", () => this.deleteSession(url2, session));
+        if (connectionConfiguration.requestTimeout) {
+          session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb);
+        }
+        const connectionPool = this.sessionCache.get(url2) || new NodeHttp2ConnectionPool();
+        connectionPool.offerLast(session);
+        this.sessionCache.set(url2, connectionPool);
+        return session;
+      }
+      /**
+       * Delete a session from the connection pool.
+       * @param authority The authority of the session to delete.
+       * @param session The session to delete.
+       */
+      deleteSession(authority, session) {
+        const existingConnectionPool = this.sessionCache.get(authority);
+        if (!existingConnectionPool) {
+          return;
+        }
+        if (!existingConnectionPool.contains(session)) {
+          return;
+        }
+        existingConnectionPool.remove(session);
+        this.sessionCache.set(authority, existingConnectionPool);
+      }
+      release(requestContext, session) {
+        var _a7;
+        const cacheKey = this.getUrlString(requestContext);
+        (_a7 = this.sessionCache.get(cacheKey)) == null ? void 0 : _a7.offerLast(session);
+      }
+      destroy() {
+        for (const [key, connectionPool] of this.sessionCache) {
+          for (const session of connectionPool) {
+            if (!session.destroyed) {
+              session.destroy();
+            }
+            connectionPool.remove(session);
+          }
+          this.sessionCache.delete(key);
+        }
+      }
+      setMaxConcurrentStreams(maxConcurrentStreams) {
+        if (maxConcurrentStreams && maxConcurrentStreams <= 0) {
+          throw new RangeError("maxConcurrentStreams must be greater than zero.");
+        }
+        this.config.maxConcurrency = maxConcurrentStreams;
+      }
+      setDisableConcurrentStreams(disableConcurrentStreams) {
+        this.config.disableConcurrency = disableConcurrentStreams;
+      }
+      getUrlString(request2) {
+        return request2.destination.toString();
+      }
+    };
+    __name2(_NodeHttp2ConnectionManager, "NodeHttp2ConnectionManager");
+    var NodeHttp2ConnectionManager = _NodeHttp2ConnectionManager;
+    var _NodeHttp2Handler = class _NodeHttp2Handler2 {
+      constructor(options) {
+        this.metadata = { handlerProtocol: "h2" };
+        this.connectionManager = new NodeHttp2ConnectionManager({});
+        this.configProvider = new Promise((resolve6, reject) => {
+          if (typeof options === "function") {
+            options().then((opts) => {
+              resolve6(opts || {});
+            }).catch(reject);
+          } else {
+            resolve6(options || {});
+          }
+        });
+      }
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _NodeHttp2Handler2(instanceOrOptions);
+      }
+      destroy() {
+        this.connectionManager.destroy();
+      }
+      async handle(request2, { abortSignal } = {}) {
+        if (!this.config) {
+          this.config = await this.configProvider;
+          this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false);
+          if (this.config.maxConcurrentStreams) {
+            this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams);
+          }
+        }
+        const { requestTimeout, disableConcurrentStreams } = this.config;
+        return new Promise((_resolve2, _reject) => {
+          var _a7;
+          let fulfilled = false;
+          let writeRequestBodyPromise = void 0;
+          const resolve6 = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _resolve2(arg);
+          }, "resolve");
+          const reject = /* @__PURE__ */ __name2(async (arg) => {
+            await writeRequestBodyPromise;
+            _reject(arg);
+          }, "reject");
+          if (abortSignal == null ? void 0 : abortSignal.aborted) {
+            fulfilled = true;
+            const abortError = new Error("Request aborted");
+            abortError.name = "AbortError";
+            reject(abortError);
+            return;
+          }
+          const { hostname, method, port, protocol, query } = request2;
+          let auth = "";
+          if (request2.username != null || request2.password != null) {
+            const username = request2.username ?? "";
+            const password = request2.password ?? "";
+            auth = `${username}:${password}@`;
+          }
+          const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : ""}`;
+          const requestContext = { destination: new URL(authority) };
+          const session = this.connectionManager.lease(requestContext, {
+            requestTimeout: (_a7 = this.config) == null ? void 0 : _a7.sessionTimeout,
+            disableConcurrentStreams: disableConcurrentStreams || false
+          });
+          const rejectWithDestroy = /* @__PURE__ */ __name2((err) => {
+            if (disableConcurrentStreams) {
+              this.destroySession(session);
+            }
+            fulfilled = true;
+            reject(err);
+          }, "rejectWithDestroy");
+          const queryString = (0, import_querystring_builder.buildQueryString)(query || {});
+          let path23 = request2.path;
+          if (queryString) {
+            path23 += `?${queryString}`;
+          }
+          if (request2.fragment) {
+            path23 += `#${request2.fragment}`;
+          }
+          const req = session.request({
+            ...request2.headers,
+            [import_http22.constants.HTTP2_HEADER_PATH]: path23,
+            [import_http22.constants.HTTP2_HEADER_METHOD]: method
+          });
+          session.ref();
+          req.on("response", (headers) => {
+            const httpResponse = new import_protocol_http8.HttpResponse({
+              statusCode: headers[":status"] || -1,
+              headers: getTransformedHeaders(headers),
+              body: req
+            });
+            fulfilled = true;
+            resolve6({ response: httpResponse });
+            if (disableConcurrentStreams) {
+              session.close();
+              this.connectionManager.deleteSession(authority, session);
+            }
+          });
+          if (requestTimeout) {
+            req.setTimeout(requestTimeout, () => {
+              req.close();
+              const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`);
+              timeoutError.name = "TimeoutError";
+              rejectWithDestroy(timeoutError);
+            });
+          }
+          if (abortSignal) {
+            const onAbort = /* @__PURE__ */ __name2(() => {
+              req.close();
+              const abortError = new Error("Request aborted");
+              abortError.name = "AbortError";
+              rejectWithDestroy(abortError);
+            }, "onAbort");
+            if (typeof abortSignal.addEventListener === "function") {
+              const signal = abortSignal;
+              signal.addEventListener("abort", onAbort, { once: true });
+              req.once("close", () => signal.removeEventListener("abort", onAbort));
+            } else {
+              abortSignal.onabort = onAbort;
+            }
+          }
+          req.on("frameError", (type, code, id) => {
+            rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`));
+          });
+          req.on("error", rejectWithDestroy);
+          req.on("aborted", () => {
+            rejectWithDestroy(
+              new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`)
+            );
+          });
+          req.on("close", () => {
+            session.unref();
+            if (disableConcurrentStreams) {
+              session.destroy();
+            }
+            if (!fulfilled) {
+              rejectWithDestroy(new Error("Unexpected error: http2 request did not get a response"));
+            }
+          });
+          writeRequestBodyPromise = writeRequestBody(req, request2, requestTimeout);
+        });
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          return {
+            ...config,
+            [key]: value
+          };
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+      /**
+       * Destroys a session.
+       * @param session The session to destroy.
+       */
+      destroySession(session) {
+        if (!session.destroyed) {
+          session.destroy();
+        }
+      }
+    };
+    __name2(_NodeHttp2Handler, "NodeHttp2Handler");
+    var NodeHttp2Handler = _NodeHttp2Handler;
+    var _Collector = class _Collector extends import_stream.Writable {
+      constructor() {
+        super(...arguments);
+        this.bufferedBytes = [];
+      }
+      _write(chunk, encoding, callback) {
+        this.bufferedBytes.push(chunk);
+        callback();
+      }
+    };
+    __name2(_Collector, "Collector");
+    var Collector = _Collector;
+    var streamCollector = /* @__PURE__ */ __name2((stream) => {
+      if (isReadableStreamInstance(stream)) {
+        return collectReadableStream(stream);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));
+          resolve6(bytes);
+        });
+      });
+    }, "streamCollector");
+    var isReadableStreamInstance = /* @__PURE__ */ __name2((stream) => typeof ReadableStream === "function" && stream instanceof ReadableStream, "isReadableStreamInstance");
+    async function collectReadableStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectReadableStream, "collectReadableStream");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js
+var require_dist_cjs20 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/node_modules/@smithy/fetch-http-handler/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      FetchHttpHandler: () => FetchHttpHandler,
+      keepAliveSupport: () => keepAliveSupport,
+      streamCollector: () => streamCollector
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_querystring_builder = require_dist_cjs18();
+    function createRequest(url2, requestOptions) {
+      return new Request(url2, requestOptions);
+    }
+    __name2(createRequest, "createRequest");
+    function requestTimeout(timeoutInMs = 0) {
+      return new Promise((resolve6, reject) => {
+        if (timeoutInMs) {
+          setTimeout(() => {
+            const timeoutError = new Error(`Request did not complete within ${timeoutInMs} ms`);
+            timeoutError.name = "TimeoutError";
+            reject(timeoutError);
+          }, timeoutInMs);
+        }
+      });
+    }
+    __name2(requestTimeout, "requestTimeout");
+    var keepAliveSupport = {
+      supported: void 0
+    };
+    var _FetchHttpHandler = class _FetchHttpHandler2 {
+      /**
+       * @returns the input if it is an HttpHandler of any class,
+       * or instantiates a new instance of this handler.
+       */
+      static create(instanceOrOptions) {
+        if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === "function") {
+          return instanceOrOptions;
+        }
+        return new _FetchHttpHandler2(instanceOrOptions);
+      }
+      constructor(options) {
+        if (typeof options === "function") {
+          this.configProvider = options().then((opts) => opts || {});
+        } else {
+          this.config = options ?? {};
+          this.configProvider = Promise.resolve(this.config);
+        }
+        if (keepAliveSupport.supported === void 0) {
+          keepAliveSupport.supported = Boolean(
+            typeof Request !== "undefined" && "keepalive" in createRequest("https://[::1]")
+          );
+        }
+      }
+      destroy() {
+      }
+      async handle(request2, { abortSignal } = {}) {
+        var _a7;
+        if (!this.config) {
+          this.config = await this.configProvider;
+        }
+        const requestTimeoutInMs = this.config.requestTimeout;
+        const keepAlive = this.config.keepAlive === true;
+        const credentials = this.config.credentials;
+        if (abortSignal == null ? void 0 : abortSignal.aborted) {
+          const abortError = new Error("Request aborted");
+          abortError.name = "AbortError";
+          return Promise.reject(abortError);
+        }
+        let path23 = request2.path;
+        const queryString = (0, import_querystring_builder.buildQueryString)(request2.query || {});
+        if (queryString) {
+          path23 += `?${queryString}`;
+        }
+        if (request2.fragment) {
+          path23 += `#${request2.fragment}`;
+        }
+        let auth = "";
+        if (request2.username != null || request2.password != null) {
+          const username = request2.username ?? "";
+          const password = request2.password ?? "";
+          auth = `${username}:${password}@`;
+        }
+        const { port, method } = request2;
+        const url2 = `${request2.protocol}//${auth}${request2.hostname}${port ? `:${port}` : ""}${path23}`;
+        const body = method === "GET" || method === "HEAD" ? void 0 : request2.body;
+        const requestOptions = {
+          body,
+          headers: new Headers(request2.headers),
+          method,
+          credentials
+        };
+        if ((_a7 = this.config) == null ? void 0 : _a7.cache) {
+          requestOptions.cache = this.config.cache;
+        }
+        if (body) {
+          requestOptions.duplex = "half";
+        }
+        if (typeof AbortController !== "undefined") {
+          requestOptions.signal = abortSignal;
+        }
+        if (keepAliveSupport.supported) {
+          requestOptions.keepalive = keepAlive;
+        }
+        if (typeof this.config.requestInit === "function") {
+          Object.assign(requestOptions, this.config.requestInit(request2));
+        }
+        let removeSignalEventListener = /* @__PURE__ */ __name2(() => {
+        }, "removeSignalEventListener");
+        const fetchRequest = createRequest(url2, requestOptions);
+        const raceOfPromises = [
+          fetch(fetchRequest).then((response) => {
+            const fetchHeaders = response.headers;
+            const transformedHeaders = {};
+            for (const pair of fetchHeaders.entries()) {
+              transformedHeaders[pair[0]] = pair[1];
+            }
+            const hasReadableStream = response.body != void 0;
+            if (!hasReadableStream) {
+              return response.blob().then((body2) => ({
+                response: new import_protocol_http8.HttpResponse({
+                  headers: transformedHeaders,
+                  reason: response.statusText,
+                  statusCode: response.status,
+                  body: body2
+                })
+              }));
+            }
+            return {
+              response: new import_protocol_http8.HttpResponse({
+                headers: transformedHeaders,
+                reason: response.statusText,
+                statusCode: response.status,
+                body: response.body
+              })
+            };
+          }),
+          requestTimeout(requestTimeoutInMs)
+        ];
+        if (abortSignal) {
+          raceOfPromises.push(
+            new Promise((resolve6, reject) => {
+              const onAbort = /* @__PURE__ */ __name2(() => {
+                const abortError = new Error("Request aborted");
+                abortError.name = "AbortError";
+                reject(abortError);
+              }, "onAbort");
+              if (typeof abortSignal.addEventListener === "function") {
+                const signal = abortSignal;
+                signal.addEventListener("abort", onAbort, { once: true });
+                removeSignalEventListener = /* @__PURE__ */ __name2(() => signal.removeEventListener("abort", onAbort), "removeSignalEventListener");
+              } else {
+                abortSignal.onabort = onAbort;
+              }
+            })
+          );
+        }
+        return Promise.race(raceOfPromises).finally(removeSignalEventListener);
+      }
+      updateHttpClientConfig(key, value) {
+        this.config = void 0;
+        this.configProvider = this.configProvider.then((config) => {
+          config[key] = value;
+          return config;
+        });
+      }
+      httpHandlerConfigs() {
+        return this.config ?? {};
+      }
+    };
+    __name2(_FetchHttpHandler, "FetchHttpHandler");
+    var FetchHttpHandler = _FetchHttpHandler;
+    var import_util_base64 = require_dist_cjs16();
+    var streamCollector = /* @__PURE__ */ __name2(async (stream) => {
+      var _a7;
+      if (typeof Blob === "function" && stream instanceof Blob || ((_a7 = stream.constructor) == null ? void 0 : _a7.name) === "Blob") {
+        if (Blob.prototype.arrayBuffer !== void 0) {
+          return new Uint8Array(await stream.arrayBuffer());
+        }
+        return collectBlob(stream);
+      }
+      return collectStream(stream);
+    }, "streamCollector");
+    async function collectBlob(blob) {
+      const base64 = await readToBase64(blob);
+      const arrayBuffer = (0, import_util_base64.fromBase64)(base64);
+      return new Uint8Array(arrayBuffer);
+    }
+    __name2(collectBlob, "collectBlob");
+    async function collectStream(stream) {
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      let length = 0;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          length += value.length;
+        }
+        isDone = done;
+      }
+      const collected = new Uint8Array(length);
+      let offset = 0;
+      for (const chunk of chunks) {
+        collected.set(chunk, offset);
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    __name2(collectStream, "collectStream");
+    function readToBase64(blob) {
+      return new Promise((resolve6, reject) => {
+        const reader = new FileReader();
+        reader.onloadend = () => {
+          if (reader.readyState !== 2) {
+            return reject(new Error("Reader aborted too early"));
+          }
+          const result = reader.result ?? "";
+          const commaIndex = result.indexOf(",");
+          const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;
+          resolve6(result.substring(dataOffset));
+        };
+        reader.onabort = () => reject(new Error("Read aborted"));
+        reader.onerror = () => reject(reader.error);
+        reader.readAsDataURL(blob);
+      });
+    }
+    __name2(readToBase64, "readToBase64");
+  }
+});
+
+// ../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js
+var require_dist_cjs21 = __commonJS({
+  "../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromHex: () => fromHex,
+      toHex: () => toHex
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var SHORT_TO_HEX = {};
+    var HEX_TO_SHORT = {};
+    for (let i = 0; i < 256; i++) {
+      let encodedByte = i.toString(16).toLowerCase();
+      if (encodedByte.length === 1) {
+        encodedByte = `0${encodedByte}`;
+      }
+      SHORT_TO_HEX[i] = encodedByte;
+      HEX_TO_SHORT[encodedByte] = i;
+    }
+    function fromHex(encoded) {
+      if (encoded.length % 2 !== 0) {
+        throw new Error("Hex encoded strings must have an even number length");
+      }
+      const out = new Uint8Array(encoded.length / 2);
+      for (let i = 0; i < encoded.length; i += 2) {
+        const encodedByte = encoded.slice(i, i + 2).toLowerCase();
+        if (encodedByte in HEX_TO_SHORT) {
+          out[i / 2] = HEX_TO_SHORT[encodedByte];
+        } else {
+          throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);
+        }
+      }
+      return out;
+    }
+    __name2(fromHex, "fromHex");
+    function toHex(bytes) {
+      let out = "";
+      for (let i = 0; i < bytes.byteLength; i++) {
+        out += SHORT_TO_HEX[bytes[i]];
+      }
+      return out;
+    }
+    __name2(toHex, "toHex");
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js
+var require_stream_type_check = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isBlob = exports2.isReadableStream = void 0;
+    var isReadableStream2 = (stream) => {
+      var _a7;
+      return typeof ReadableStream === "function" && (((_a7 = stream === null || stream === void 0 ? void 0 : stream.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === ReadableStream.name || stream instanceof ReadableStream);
+    };
+    exports2.isReadableStream = isReadableStream2;
+    var isBlob2 = (blob) => {
+      var _a7;
+      return typeof Blob === "function" && (((_a7 = blob === null || blob === void 0 ? void 0 : blob.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) === Blob.name || blob instanceof Blob);
+    };
+    exports2.isBlob = isBlob2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js
+var require_sdk_stream_mixin_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var fetch_http_handler_1 = require_dist_cjs20();
+    var util_base64_1 = require_dist_cjs16();
+    var util_hex_encoding_1 = require_dist_cjs21();
+    var util_utf8_1 = require_dist_cjs15();
+    var stream_type_check_1 = require_stream_type_check();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!isBlobInstance(stream) && !(0, stream_type_check_1.isReadableStream)(stream)) {
+        const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+        throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, fetch_http_handler_1.streamCollector)(stream);
+      };
+      const blobToWebStream = (blob) => {
+        if (typeof blob.stream !== "function") {
+          throw new Error("Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\nIf you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body");
+        }
+        return blob.stream();
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === "base64") {
+            return (0, util_base64_1.toBase64)(buf);
+          } else if (encoding === "hex") {
+            return (0, util_hex_encoding_1.toHex)(buf);
+          } else if (encoding === void 0 || encoding === "utf8" || encoding === "utf-8") {
+            return (0, util_utf8_1.toUtf8)(buf);
+          } else if (typeof TextDecoder === "function") {
+            return new TextDecoder(encoding).decode(buf);
+          } else {
+            throw new Error("TextDecoder is not available, please make sure polyfill is provided.");
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          transformed = true;
+          if (isBlobInstance(stream)) {
+            return blobToWebStream(stream);
+          } else if ((0, stream_type_check_1.isReadableStream)(stream)) {
+            return stream;
+          } else {
+            throw new Error(`Cannot transform payload to web stream, got ${stream}`);
+          }
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+    var isBlobInstance = (stream) => typeof Blob === "function" && stream instanceof Blob;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js
+var require_sdk_stream_mixin = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.sdkStreamMixin = void 0;
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_buffer_from_1 = require_dist_cjs14();
+    var stream_1 = require("stream");
+    var sdk_stream_mixin_browser_1 = require_sdk_stream_mixin_browser();
+    var ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = "The stream has already been transformed.";
+    var sdkStreamMixin2 = (stream) => {
+      var _a7, _b;
+      if (!(stream instanceof stream_1.Readable)) {
+        try {
+          return (0, sdk_stream_mixin_browser_1.sdkStreamMixin)(stream);
+        } catch (e) {
+          const name = ((_b = (_a7 = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a7 === void 0 ? void 0 : _a7.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;
+          throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);
+        }
+      }
+      let transformed = false;
+      const transformToByteArray = async () => {
+        if (transformed) {
+          throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+        }
+        transformed = true;
+        return await (0, node_http_handler_1.streamCollector)(stream);
+      };
+      return Object.assign(stream, {
+        transformToByteArray,
+        transformToString: async (encoding) => {
+          const buf = await transformToByteArray();
+          if (encoding === void 0 || Buffer.isEncoding(encoding)) {
+            return (0, util_buffer_from_1.fromArrayBuffer)(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);
+          } else {
+            const decoder2 = new TextDecoder(encoding);
+            return decoder2.decode(buf);
+          }
+        },
+        transformToWebStream: () => {
+          if (transformed) {
+            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);
+          }
+          if (stream.readableFlowing !== null) {
+            throw new Error("The stream has been consumed by other callbacks.");
+          }
+          if (typeof stream_1.Readable.toWeb !== "function") {
+            throw new Error("Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.");
+          }
+          transformed = true;
+          return stream_1.Readable.toWeb(stream);
+        }
+      });
+    };
+    exports2.sdkStreamMixin = sdkStreamMixin2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js
+var require_splitStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    async function splitStream2(stream) {
+      if (typeof stream.stream === "function") {
+        stream = stream.stream();
+      }
+      const readableStream = stream;
+      return readableStream.tee();
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js
+var require_splitStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.splitStream = void 0;
+    var stream_1 = require("stream");
+    var splitStream_browser_1 = require_splitStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    async function splitStream2(stream) {
+      if ((0, stream_type_check_1.isReadableStream)(stream) || (0, stream_type_check_1.isBlob)(stream)) {
+        return (0, splitStream_browser_1.splitStream)(stream);
+      }
+      const stream1 = new stream_1.PassThrough();
+      const stream2 = new stream_1.PassThrough();
+      stream.pipe(stream1);
+      stream.pipe(stream2);
+      return [stream1, stream2];
+    }
+    exports2.splitStream = splitStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js
+var require_headStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    async function headStream2(stream, bytes) {
+      var _a7;
+      let byteLengthCounter = 0;
+      const chunks = [];
+      const reader = stream.getReader();
+      let isDone = false;
+      while (!isDone) {
+        const { done, value } = await reader.read();
+        if (value) {
+          chunks.push(value);
+          byteLengthCounter += (_a7 = value === null || value === void 0 ? void 0 : value.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        }
+        if (byteLengthCounter >= bytes) {
+          break;
+        }
+        isDone = done;
+      }
+      reader.releaseLock();
+      const collected = new Uint8Array(Math.min(bytes, byteLengthCounter));
+      let offset = 0;
+      for (const chunk of chunks) {
+        if (chunk.byteLength > collected.byteLength - offset) {
+          collected.set(chunk.subarray(0, collected.byteLength - offset), offset);
+          break;
+        } else {
+          collected.set(chunk, offset);
+        }
+        offset += chunk.length;
+      }
+      return collected;
+    }
+    exports2.headStream = headStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js
+var require_headStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.headStream = void 0;
+    var stream_1 = require("stream");
+    var headStream_browser_1 = require_headStream_browser();
+    var stream_type_check_1 = require_stream_type_check();
+    var headStream2 = (stream, bytes) => {
+      if ((0, stream_type_check_1.isReadableStream)(stream)) {
+        return (0, headStream_browser_1.headStream)(stream, bytes);
+      }
+      return new Promise((resolve6, reject) => {
+        const collector = new Collector();
+        collector.limit = bytes;
+        stream.pipe(collector);
+        stream.on("error", (err) => {
+          collector.end();
+          reject(err);
+        });
+        collector.on("error", reject);
+        collector.on("finish", function() {
+          const bytes2 = new Uint8Array(Buffer.concat(this.buffers));
+          resolve6(bytes2);
+        });
+      });
+    };
+    exports2.headStream = headStream2;
+    var Collector = class extends stream_1.Writable {
+      constructor() {
+        super(...arguments);
+        this.buffers = [];
+        this.limit = Infinity;
+        this.bytesBuffered = 0;
+      }
+      _write(chunk, encoding, callback) {
+        var _a7;
+        this.buffers.push(chunk);
+        this.bytesBuffered += (_a7 = chunk.byteLength) !== null && _a7 !== void 0 ? _a7 : 0;
+        if (this.bytesBuffered >= this.limit) {
+          const excess = this.bytesBuffered - this.limit;
+          const tailBuffer = this.buffers[this.buffers.length - 1];
+          this.buffers[this.buffers.length - 1] = tailBuffer.subarray(0, tailBuffer.byteLength - excess);
+          this.emit("finish");
+        }
+        callback();
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js
+var require_ChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_1 = require("stream");
+    var ChecksumStream2 = class extends stream_1.Duplex {
+      constructor({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) {
+        var _a7, _b;
+        super();
+        if (typeof source.pipe === "function") {
+          this.source = source;
+        } else {
+          throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+        }
+        this.base64Encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+        this.expectedChecksum = expectedChecksum;
+        this.checksum = checksum;
+        this.checksumSourceLocation = checksumSourceLocation;
+        this.source.pipe(this);
+      }
+      _read(size) {
+      }
+      _write(chunk, encoding, callback) {
+        try {
+          this.checksum.update(chunk);
+          this.push(chunk);
+        } catch (e) {
+          return callback(e);
+        }
+        return callback();
+      }
+      async _final(callback) {
+        try {
+          const digest = await this.checksum.digest();
+          const received = this.base64Encoder(digest);
+          if (this.expectedChecksum !== received) {
+            return callback(new Error(`Checksum mismatch: expected "${this.expectedChecksum}" but received "${received}" in response header "${this.checksumSourceLocation}".`));
+          }
+        } catch (e) {
+          return callback(e);
+        }
+        this.push(null);
+        return callback();
+      }
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js
+var require_ChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/ChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ChecksumStream = void 0;
+    var ReadableStreamRef = typeof ReadableStream === "function" ? ReadableStream : function() {
+    };
+    var ChecksumStream2 = class extends ReadableStreamRef {
+    };
+    exports2.ChecksumStream = ChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js
+var require_createChecksumStream_browser = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.browser.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var util_base64_1 = require_dist_cjs16();
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_browser_1 = require_ChecksumStream_browser();
+    var createChecksumStream2 = ({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder }) => {
+      var _a7, _b;
+      if (!(0, stream_type_check_1.isReadableStream)(source)) {
+        throw new Error(`@smithy/util-stream: unsupported source type ${(_b = (_a7 = source === null || source === void 0 ? void 0 : source.constructor) === null || _a7 === void 0 ? void 0 : _a7.name) !== null && _b !== void 0 ? _b : source} in ChecksumStream.`);
+      }
+      const encoder = base64Encoder !== null && base64Encoder !== void 0 ? base64Encoder : util_base64_1.toBase64;
+      if (typeof TransformStream !== "function") {
+        throw new Error("@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.");
+      }
+      const transform = new TransformStream({
+        start() {
+        },
+        async transform(chunk, controller) {
+          checksum.update(chunk);
+          controller.enqueue(chunk);
+        },
+        async flush(controller) {
+          const digest = await checksum.digest();
+          const received = encoder(digest);
+          if (expectedChecksum !== received) {
+            const error = new Error(`Checksum mismatch: expected "${expectedChecksum}" but received "${received}" in response header "${checksumSourceLocation}".`);
+            controller.error(error);
+          } else {
+            controller.terminate();
+          }
+        }
+      });
+      source.pipeThrough(transform);
+      const readable = transform.readable;
+      Object.setPrototypeOf(readable, ChecksumStream_browser_1.ChecksumStream.prototype);
+      return readable;
+    };
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js
+var require_createChecksumStream = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/checksum/createChecksumStream.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.createChecksumStream = void 0;
+    var stream_type_check_1 = require_stream_type_check();
+    var ChecksumStream_1 = require_ChecksumStream();
+    var createChecksumStream_browser_1 = require_createChecksumStream_browser();
+    function createChecksumStream2(init) {
+      if (typeof ReadableStream === "function" && (0, stream_type_check_1.isReadableStream)(init.source)) {
+        return (0, createChecksumStream_browser_1.createChecksumStream)(init);
+      }
+      return new ChecksumStream_1.ChecksumStream(init);
+    }
+    exports2.createChecksumStream = createChecksumStream2;
+  }
+});
+
+// ../../../node_modules/@smithy/util-stream/dist-cjs/index.js
+var require_dist_cjs22 = __commonJS({
+  "../../../node_modules/@smithy/util-stream/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Uint8ArrayBlobAdapter: () => Uint8ArrayBlobAdapter2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_base64 = require_dist_cjs16();
+    var import_util_utf8 = require_dist_cjs15();
+    function transformToString(payload, encoding = "utf-8") {
+      if (encoding === "base64") {
+        return (0, import_util_base64.toBase64)(payload);
+      }
+      return (0, import_util_utf8.toUtf8)(payload);
+    }
+    __name2(transformToString, "transformToString");
+    function transformFromString(str, encoding) {
+      if (encoding === "base64") {
+        return Uint8ArrayBlobAdapter2.mutate((0, import_util_base64.fromBase64)(str));
+      }
+      return Uint8ArrayBlobAdapter2.mutate((0, import_util_utf8.fromUtf8)(str));
+    }
+    __name2(transformFromString, "transformFromString");
+    var _Uint8ArrayBlobAdapter = class _Uint8ArrayBlobAdapter2 extends Uint8Array {
+      /**
+       * @param source - such as a string or Stream.
+       * @returns a new Uint8ArrayBlobAdapter extending Uint8Array.
+       */
+      static fromString(source, encoding = "utf-8") {
+        switch (typeof source) {
+          case "string":
+            return transformFromString(source, encoding);
+          default:
+            throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);
+        }
+      }
+      /**
+       * @param source - Uint8Array to be mutated.
+       * @returns the same Uint8Array but with prototype switched to Uint8ArrayBlobAdapter.
+       */
+      static mutate(source) {
+        Object.setPrototypeOf(source, _Uint8ArrayBlobAdapter2.prototype);
+        return source;
+      }
+      /**
+       * @param encoding - default 'utf-8'.
+       * @returns the blob as string.
+       */
+      transformToString(encoding = "utf-8") {
+        return transformToString(this, encoding);
+      }
+    };
+    __name2(_Uint8ArrayBlobAdapter, "Uint8ArrayBlobAdapter");
+    var Uint8ArrayBlobAdapter2 = _Uint8ArrayBlobAdapter;
+    __reExport2(src_exports, require_getAwsChunkedEncodingStream(), module2.exports);
+    __reExport2(src_exports, require_sdk_stream_mixin(), module2.exports);
+    __reExport2(src_exports, require_splitStream(), module2.exports);
+    __reExport2(src_exports, require_headStream(), module2.exports);
+    __reExport2(src_exports, require_stream_type_check(), module2.exports);
+    __reExport2(src_exports, require_createChecksumStream(), module2.exports);
+    __reExport2(src_exports, require_ChecksumStream(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js
+var import_util_stream, collectBody2;
+var init_collect_stream_body = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js"() {
+    import_util_stream = __toESM(require_dist_cjs22());
+    collectBody2 = async (streamBody = new Uint8Array(), context) => {
+      if (streamBody instanceof Uint8Array) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(streamBody);
+      }
+      if (!streamBody) {
+        return import_util_stream.Uint8ArrayBlobAdapter.mutate(new Uint8Array());
+      }
+      const fromContext = context.streamCollector(streamBody);
+      return import_util_stream.Uint8ArrayBlobAdapter.mutate(await fromContext);
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js
+function extendedEncodeURIComponent2(str) {
+  return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
+    return "%" + c.charCodeAt(0).toString(16).toUpperCase();
+  });
+}
+var init_extended_encode_uri_component = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js
+var resolvedPath2;
+var init_resolve_path = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js"() {
+    init_extended_encode_uri_component();
+    resolvedPath2 = (resolvedPath3, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => {
+      if (input != null && input[memberName] !== void 0) {
+        const labelValue = labelValueProvider();
+        if (labelValue.length <= 0) {
+          throw new Error("Empty value provided for input HTTP label: " + memberName + ".");
+        }
+        resolvedPath3 = resolvedPath3.replace(uriLabel, isGreedyLabel ? labelValue.split("/").map((segment) => extendedEncodeURIComponent2(segment)).join("/") : extendedEncodeURIComponent2(labelValue));
+      } else {
+        throw new Error("No value provided for input HTTP label: " + memberName + ".");
+      }
+      return resolvedPath3;
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js
+function requestBuilder(input, context) {
+  return new RequestBuilder(input, context);
+}
+var import_protocol_http2, RequestBuilder;
+var init_requestBuilder = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js"() {
+    import_protocol_http2 = __toESM(require_dist_cjs2());
+    init_resolve_path();
+    RequestBuilder = class {
+      constructor(input, context) {
+        this.input = input;
+        this.context = context;
+        this.query = {};
+        this.method = "";
+        this.headers = {};
+        this.path = "";
+        this.body = null;
+        this.hostname = "";
+        this.resolvePathStack = [];
+      }
+      async build() {
+        const { hostname, protocol = "https", port, path: basePath } = await this.context.endpoint();
+        this.path = basePath;
+        for (const resolvePath of this.resolvePathStack) {
+          resolvePath(this.path);
+        }
+        return new import_protocol_http2.HttpRequest({
+          protocol,
+          hostname: this.hostname || hostname,
+          port,
+          method: this.method,
+          path: this.path,
+          query: this.query,
+          body: this.body,
+          headers: this.headers
+        });
+      }
+      hn(hostname) {
+        this.hostname = hostname;
+        return this;
+      }
+      bp(uriLabel) {
+        this.resolvePathStack.push((basePath) => {
+          this.path = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + uriLabel;
+        });
+        return this;
+      }
+      p(memberName, labelValueProvider, uriLabel, isGreedyLabel) {
+        this.resolvePathStack.push((path23) => {
+          this.path = resolvedPath2(path23, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);
+        });
+        return this;
+      }
+      h(headers) {
+        this.headers = headers;
+        return this;
+      }
+      q(query) {
+        this.query = query;
+        return this;
+      }
+      b(body) {
+        this.body = body;
+        return this;
+      }
+      m(method) {
+        this.method = method;
+        return this;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js
+var protocols_exports = {};
+__export(protocols_exports, {
+  RequestBuilder: () => RequestBuilder,
+  collectBody: () => collectBody2,
+  extendedEncodeURIComponent: () => extendedEncodeURIComponent2,
+  requestBuilder: () => requestBuilder,
+  resolvedPath: () => resolvedPath2
+});
+var init_protocols = __esm({
+  "../../../node_modules/@smithy/core/dist-es/submodules/protocols/index.js"() {
+    init_collect_stream_body();
+    init_extended_encode_uri_component();
+    init_requestBuilder();
+    init_resolve_path();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js
+var init_requestBuilder2 = __esm({
+  "../../../node_modules/@smithy/core/dist-es/protocols/requestBuilder.js"() {
+    init_protocols();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/setFeature.js
+function setFeature(context, feature, value) {
+  if (!context.__smithy_context) {
+    context.__smithy_context = {
+      features: {}
+    };
+  } else if (!context.__smithy_context.features) {
+    context.__smithy_context.features = {};
+  }
+  context.__smithy_context.features[feature] = value;
+}
+var init_setFeature = __esm({
+  "../../../node_modules/@smithy/core/dist-es/setFeature.js"() {
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js
+var DefaultIdentityProviderConfig;
+var init_DefaultIdentityProviderConfig = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js"() {
+    DefaultIdentityProviderConfig = class {
+      constructor(config) {
+        this.authSchemes = /* @__PURE__ */ new Map();
+        for (const [key, value] of Object.entries(config)) {
+          if (value !== void 0) {
+            this.authSchemes.set(key, value);
+          }
+        }
+      }
+      getIdentityProvider(schemeId) {
+        return this.authSchemes.get(schemeId);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js
+var import_protocol_http3, import_types7, HttpApiKeyAuthSigner;
+var init_httpApiKeyAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js"() {
+    import_protocol_http3 = __toESM(require_dist_cjs2());
+    import_types7 = __toESM(require_dist_cjs());
+    HttpApiKeyAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!signingProperties) {
+          throw new Error("request could not be signed with `apiKey` since the `name` and `in` signer properties are missing");
+        }
+        if (!signingProperties.name) {
+          throw new Error("request could not be signed with `apiKey` since the `name` signer property is missing");
+        }
+        if (!signingProperties.in) {
+          throw new Error("request could not be signed with `apiKey` since the `in` signer property is missing");
+        }
+        if (!identity.apiKey) {
+          throw new Error("request could not be signed with `apiKey` since the `apiKey` is not defined");
+        }
+        const clonedRequest = import_protocol_http3.HttpRequest.clone(httpRequest);
+        if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.QUERY) {
+          clonedRequest.query[signingProperties.name] = identity.apiKey;
+        } else if (signingProperties.in === import_types7.HttpApiKeyAuthLocation.HEADER) {
+          clonedRequest.headers[signingProperties.name] = signingProperties.scheme ? `${signingProperties.scheme} ${identity.apiKey}` : identity.apiKey;
+        } else {
+          throw new Error("request can only be signed with `apiKey` locations `query` or `header`, but found: `" + signingProperties.in + "`");
+        }
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js
+var import_protocol_http4, HttpBearerAuthSigner;
+var init_httpBearerAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js"() {
+    import_protocol_http4 = __toESM(require_dist_cjs2());
+    HttpBearerAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        const clonedRequest = import_protocol_http4.HttpRequest.clone(httpRequest);
+        if (!identity.token) {
+          throw new Error("request could not be signed with `token` since the `token` is not defined");
+        }
+        clonedRequest.headers["Authorization"] = `Bearer ${identity.token}`;
+        return clonedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js
+var NoAuthSigner;
+var init_noAuth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js"() {
+    NoAuthSigner = class {
+      async sign(httpRequest, identity, signingProperties) {
+        return httpRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js
+var init_httpAuthSchemes = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js"() {
+    init_httpApiKeyAuth();
+    init_httpBearerAuth();
+    init_noAuth();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js
+var createIsIdentityExpiredFunction, EXPIRATION_MS, isIdentityExpired, doesIdentityRequireRefresh, memoizeIdentityProvider;
+var init_memoizeIdentityProvider = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js"() {
+    createIsIdentityExpiredFunction = (expirationMs) => (identity) => doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;
+    EXPIRATION_MS = 3e5;
+    isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);
+    doesIdentityRequireRefresh = (identity) => identity.expiration !== void 0;
+    memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {
+      if (provider === void 0) {
+        return void 0;
+      }
+      const normalizedProvider = typeof provider !== "function" ? async () => Promise.resolve(provider) : provider;
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = async (options) => {
+        if (!pending) {
+          pending = normalizedProvider(options);
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      };
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || options?.forceRefresh) {
+            resolved = await coalesceProvider(options);
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || options?.forceRefresh) {
+          resolved = await coalesceProvider(options);
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (!requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider(options);
+          return resolved;
+        }
+        return resolved;
+      };
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js
+var init_util_identity_and_auth = __esm({
+  "../../../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js"() {
+    init_DefaultIdentityProviderConfig();
+    init_httpAuthSchemes();
+    init_memoizeIdentityProvider();
+  }
+});
+
+// ../../../node_modules/@smithy/core/dist-es/index.js
+var dist_es_exports = {};
+__export(dist_es_exports, {
+  DefaultIdentityProviderConfig: () => DefaultIdentityProviderConfig,
+  EXPIRATION_MS: () => EXPIRATION_MS,
+  HttpApiKeyAuthSigner: () => HttpApiKeyAuthSigner,
+  HttpBearerAuthSigner: () => HttpBearerAuthSigner,
+  NoAuthSigner: () => NoAuthSigner,
+  createIsIdentityExpiredFunction: () => createIsIdentityExpiredFunction,
+  createPaginator: () => createPaginator,
+  doesIdentityRequireRefresh: () => doesIdentityRequireRefresh,
+  getHttpAuthSchemeEndpointRuleSetPlugin: () => getHttpAuthSchemeEndpointRuleSetPlugin,
+  getHttpAuthSchemePlugin: () => getHttpAuthSchemePlugin,
+  getHttpSigningPlugin: () => getHttpSigningPlugin,
+  getSmithyContext: () => getSmithyContext,
+  httpAuthSchemeEndpointRuleSetMiddlewareOptions: () => httpAuthSchemeEndpointRuleSetMiddlewareOptions,
+  httpAuthSchemeMiddleware: () => httpAuthSchemeMiddleware,
+  httpAuthSchemeMiddlewareOptions: () => httpAuthSchemeMiddlewareOptions,
+  httpSigningMiddleware: () => httpSigningMiddleware,
+  httpSigningMiddlewareOptions: () => httpSigningMiddlewareOptions,
+  isIdentityExpired: () => isIdentityExpired,
+  memoizeIdentityProvider: () => memoizeIdentityProvider,
+  normalizeProvider: () => normalizeProvider,
+  requestBuilder: () => requestBuilder,
+  setFeature: () => setFeature
+});
+var init_dist_es = __esm({
+  "../../../node_modules/@smithy/core/dist-es/index.js"() {
+    init_getSmithyContext();
+    init_middleware_http_auth_scheme();
+    init_middleware_http_signing();
+    init_normalizeProvider();
+    init_createPaginator();
+    init_requestBuilder2();
+    init_setFeature();
+    init_util_identity_and_auth();
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js
+var require_dist_cjs23 = __commonJS({
+  "../../../node_modules/@smithy/middleware-content-length/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      contentLengthMiddleware: () => contentLengthMiddleware,
+      contentLengthMiddlewareOptions: () => contentLengthMiddlewareOptions,
+      getContentLengthPlugin: () => getContentLengthPlugin
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var CONTENT_LENGTH_HEADER = "content-length";
+    function contentLengthMiddleware(bodyLengthChecker) {
+      return (next) => async (args) => {
+        const request2 = args.request;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          const { body, headers } = request2;
+          if (body && Object.keys(headers).map((str) => str.toLowerCase()).indexOf(CONTENT_LENGTH_HEADER) === -1) {
+            try {
+              const length = bodyLengthChecker(body);
+              request2.headers = {
+                ...request2.headers,
+                [CONTENT_LENGTH_HEADER]: String(length)
+              };
+            } catch (error) {
+            }
+          }
+        }
+        return next({
+          ...args,
+          request: request2
+        });
+      };
+    }
+    __name2(contentLengthMiddleware, "contentLengthMiddleware");
+    var contentLengthMiddlewareOptions = {
+      step: "build",
+      tags: ["SET_CONTENT_LENGTH", "CONTENT_LENGTH"],
+      name: "contentLengthMiddleware",
+      override: true
+    };
+    var getContentLengthPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);
+      }
+    }), "getContentLengthPlugin");
+  }
+});
+
+// ../../../node_modules/@smithy/property-provider/dist-cjs/index.js
+var require_dist_cjs24 = __commonJS({
+  "../../../node_modules/@smithy/property-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CredentialsProviderError: () => CredentialsProviderError,
+      ProviderError: () => ProviderError2,
+      TokenProviderError: () => TokenProviderError,
+      chain: () => chain,
+      fromStatic: () => fromStatic,
+      memoize: () => memoize
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var _ProviderError = class _ProviderError2 extends Error {
+      constructor(message, options = true) {
+        var _a7;
+        let logger;
+        let tryNextLink = true;
+        if (typeof options === "boolean") {
+          logger = void 0;
+          tryNextLink = options;
+        } else if (options != null && typeof options === "object") {
+          logger = options.logger;
+          tryNextLink = options.tryNextLink ?? true;
+        }
+        super(message);
+        this.name = "ProviderError";
+        this.tryNextLink = tryNextLink;
+        Object.setPrototypeOf(this, _ProviderError2.prototype);
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `@smithy/property-provider ${tryNextLink ? "->" : "(!)"} ${message}`);
+      }
+      /**
+       * @deprecated use new operator.
+       */
+      static from(error, options = true) {
+        return Object.assign(new this(error.message, options), error);
+      }
+    };
+    __name2(_ProviderError, "ProviderError");
+    var ProviderError2 = _ProviderError;
+    var _CredentialsProviderError = class _CredentialsProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "CredentialsProviderError";
+        Object.setPrototypeOf(this, _CredentialsProviderError2.prototype);
+      }
+    };
+    __name2(_CredentialsProviderError, "CredentialsProviderError");
+    var CredentialsProviderError = _CredentialsProviderError;
+    var _TokenProviderError = class _TokenProviderError2 extends ProviderError2 {
+      /**
+       * @override
+       */
+      constructor(message, options = true) {
+        super(message, options);
+        this.name = "TokenProviderError";
+        Object.setPrototypeOf(this, _TokenProviderError2.prototype);
+      }
+    };
+    __name2(_TokenProviderError, "TokenProviderError");
+    var TokenProviderError = _TokenProviderError;
+    var chain = /* @__PURE__ */ __name2((...providers) => async () => {
+      if (providers.length === 0) {
+        throw new ProviderError2("No providers in chain");
+      }
+      let lastProviderError;
+      for (const provider of providers) {
+        try {
+          const credentials = await provider();
+          return credentials;
+        } catch (err) {
+          lastProviderError = err;
+          if (err == null ? void 0 : err.tryNextLink) {
+            continue;
+          }
+          throw err;
+        }
+      }
+      throw lastProviderError;
+    }, "chain");
+    var fromStatic = /* @__PURE__ */ __name2((staticValue) => () => Promise.resolve(staticValue), "fromStatic");
+    var memoize = /* @__PURE__ */ __name2((provider, isExpired, requiresRefresh) => {
+      let resolved;
+      let pending;
+      let hasResult;
+      let isConstant = false;
+      const coalesceProvider = /* @__PURE__ */ __name2(async () => {
+        if (!pending) {
+          pending = provider();
+        }
+        try {
+          resolved = await pending;
+          hasResult = true;
+          isConstant = false;
+        } finally {
+          pending = void 0;
+        }
+        return resolved;
+      }, "coalesceProvider");
+      if (isExpired === void 0) {
+        return async (options) => {
+          if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+            resolved = await coalesceProvider();
+          }
+          return resolved;
+        };
+      }
+      return async (options) => {
+        if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {
+          resolved = await coalesceProvider();
+        }
+        if (isConstant) {
+          return resolved;
+        }
+        if (requiresRefresh && !requiresRefresh(resolved)) {
+          isConstant = true;
+          return resolved;
+        }
+        if (isExpired(resolved)) {
+          await coalesceProvider();
+          return resolved;
+        }
+        return resolved;
+      };
+    }, "memoize");
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js
+var require_getHomeDir = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getHomeDir = void 0;
+    var os_1 = require("os");
+    var path_1 = require("path");
+    var homeDirCache = {};
+    var getHomeDirCacheKey = () => {
+      if (process && process.geteuid) {
+        return `${process.geteuid()}`;
+      }
+      return "DEFAULT";
+    };
+    var getHomeDir2 = () => {
+      const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env;
+      if (HOME)
+        return HOME;
+      if (USERPROFILE)
+        return USERPROFILE;
+      if (HOMEPATH)
+        return `${HOMEDRIVE}${HOMEPATH}`;
+      const homeDirCacheKey = getHomeDirCacheKey();
+      if (!homeDirCache[homeDirCacheKey])
+        homeDirCache[homeDirCacheKey] = (0, os_1.homedir)();
+      return homeDirCache[homeDirCacheKey];
+    };
+    exports2.getHomeDir = getHomeDir2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js
+var require_getSSOTokenFilepath = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFilepath = void 0;
+    var crypto_1 = require("crypto");
+    var path_1 = require("path");
+    var getHomeDir_1 = require_getHomeDir();
+    var getSSOTokenFilepath2 = (id) => {
+      const hasher = (0, crypto_1.createHash)("sha1");
+      const cacheName = hasher.update(id).digest("hex");
+      return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), ".aws", "sso", "cache", `${cacheName}.json`);
+    };
+    exports2.getSSOTokenFilepath = getSSOTokenFilepath2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js
+var require_getSSOTokenFromFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getSSOTokenFromFile = void 0;
+    var fs_1 = require("fs");
+    var getSSOTokenFilepath_1 = require_getSSOTokenFilepath();
+    var { readFile } = fs_1.promises;
+    var getSSOTokenFromFile2 = async (id) => {
+      const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id);
+      const ssoTokenText = await readFile(ssoTokenFilepath, "utf8");
+      return JSON.parse(ssoTokenText);
+    };
+    exports2.getSSOTokenFromFile = getSSOTokenFromFile2;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js
+var require_slurpFile = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.slurpFile = void 0;
+    var fs_1 = require("fs");
+    var { readFile } = fs_1.promises;
+    var filePromisesHash = {};
+    var slurpFile = (path23, options) => {
+      if (!filePromisesHash[path23] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) {
+        filePromisesHash[path23] = readFile(path23, "utf8");
+      }
+      return filePromisesHash[path23];
+    };
+    exports2.slurpFile = slurpFile;
+  }
+});
+
+// ../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js
+var require_dist_cjs25 = __commonJS({
+  "../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR,
+      DEFAULT_PROFILE: () => DEFAULT_PROFILE,
+      ENV_PROFILE: () => ENV_PROFILE,
+      getProfileName: () => getProfileName,
+      loadSharedConfigFiles: () => loadSharedConfigFiles,
+      loadSsoSessionData: () => loadSsoSessionData,
+      parseKnownFiles: () => parseKnownFiles
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_getHomeDir(), module2.exports);
+    var ENV_PROFILE = "AWS_PROFILE";
+    var DEFAULT_PROFILE = "default";
+    var getProfileName = /* @__PURE__ */ __name2((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, "getProfileName");
+    __reExport2(src_exports, require_getSSOTokenFilepath(), module2.exports);
+    __reExport2(src_exports, require_getSSOTokenFromFile(), module2.exports);
+    var import_types8 = require_dist_cjs();
+    var getConfigData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => {
+      const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+      if (indexOfSeparator === -1) {
+        return false;
+      }
+      return Object.values(import_types8.IniSectionType).includes(key.substring(0, indexOfSeparator));
+    }).reduce(
+      (acc, [key, value]) => {
+        const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);
+        const updatedKey = key.substring(0, indexOfSeparator) === import_types8.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;
+        acc[updatedKey] = value;
+        return acc;
+      },
+      {
+        // Populate default profile, if present.
+        ...data.default && { default: data.default }
+      }
+    ), "getConfigData");
+    var import_path3 = require("path");
+    var import_getHomeDir = require_getHomeDir();
+    var ENV_CONFIG_PATH = "AWS_CONFIG_FILE";
+    var getConfigFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CONFIG_PATH] || (0, import_path3.join)((0, import_getHomeDir.getHomeDir)(), ".aws", "config"), "getConfigFilepath");
+    var import_getHomeDir2 = require_getHomeDir();
+    var ENV_CREDENTIALS_PATH = "AWS_SHARED_CREDENTIALS_FILE";
+    var getCredentialsFilepath = /* @__PURE__ */ __name2(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path3.join)((0, import_getHomeDir2.getHomeDir)(), ".aws", "credentials"), "getCredentialsFilepath");
+    var import_getHomeDir3 = require_getHomeDir();
+    var prefixKeyRegex = /^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/;
+    var profileNameBlockList = ["__proto__", "profile __proto__"];
+    var parseIni = /* @__PURE__ */ __name2((iniData) => {
+      const map = {};
+      let currentSection;
+      let currentSubSection;
+      for (const iniLine of iniData.split(/\r?\n/)) {
+        const trimmedLine = iniLine.split(/(^|\s)[;#]/)[0].trim();
+        const isSection = trimmedLine[0] === "[" && trimmedLine[trimmedLine.length - 1] === "]";
+        if (isSection) {
+          currentSection = void 0;
+          currentSubSection = void 0;
+          const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);
+          const matches = prefixKeyRegex.exec(sectionName);
+          if (matches) {
+            const [, prefix, , name] = matches;
+            if (Object.values(import_types8.IniSectionType).includes(prefix)) {
+              currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);
+            }
+          } else {
+            currentSection = sectionName;
+          }
+          if (profileNameBlockList.includes(sectionName)) {
+            throw new Error(`Found invalid profile name "${sectionName}"`);
+          }
+        } else if (currentSection) {
+          const indexOfEqualsSign = trimmedLine.indexOf("=");
+          if (![0, -1].includes(indexOfEqualsSign)) {
+            const [name, value] = [
+              trimmedLine.substring(0, indexOfEqualsSign).trim(),
+              trimmedLine.substring(indexOfEqualsSign + 1).trim()
+            ];
+            if (value === "") {
+              currentSubSection = name;
+            } else {
+              if (currentSubSection && iniLine.trimStart() === iniLine) {
+                currentSubSection = void 0;
+              }
+              map[currentSection] = map[currentSection] || {};
+              const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;
+              map[currentSection][key] = value;
+            }
+          }
+        }
+      }
+      return map;
+    }, "parseIni");
+    var import_slurpFile = require_slurpFile();
+    var swallowError = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var CONFIG_PREFIX_SEPARATOR = ".";
+    var loadSharedConfigFiles = /* @__PURE__ */ __name2(async (init = {}) => {
+      const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;
+      const homeDir = (0, import_getHomeDir3.getHomeDir)();
+      const relativeHomeDirPrefix = "~/";
+      let resolvedFilepath = filepath;
+      if (filepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedFilepath = (0, import_path3.join)(homeDir, filepath.slice(2));
+      }
+      let resolvedConfigFilepath = configFilepath;
+      if (configFilepath.startsWith(relativeHomeDirPrefix)) {
+        resolvedConfigFilepath = (0, import_path3.join)(homeDir, configFilepath.slice(2));
+      }
+      const parsedFiles = await Promise.all([
+        (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).then(getConfigData).catch(swallowError),
+        (0, import_slurpFile.slurpFile)(resolvedFilepath, {
+          ignoreCache: init.ignoreCache
+        }).then(parseIni).catch(swallowError)
+      ]);
+      return {
+        configFile: parsedFiles[0],
+        credentialsFile: parsedFiles[1]
+      };
+    }, "loadSharedConfigFiles");
+    var getSsoSessionData = /* @__PURE__ */ __name2((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types8.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), "getSsoSessionData");
+    var import_slurpFile2 = require_slurpFile();
+    var swallowError2 = /* @__PURE__ */ __name2(() => ({}), "swallowError");
+    var loadSsoSessionData = /* @__PURE__ */ __name2(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), "loadSsoSessionData");
+    var mergeConfigFiles = /* @__PURE__ */ __name2((...files) => {
+      const merged = {};
+      for (const file of files) {
+        for (const [key, values] of Object.entries(file)) {
+          if (merged[key] !== void 0) {
+            Object.assign(merged[key], values);
+          } else {
+            merged[key] = values;
+          }
+        }
+      }
+      return merged;
+    }, "mergeConfigFiles");
+    var parseKnownFiles = /* @__PURE__ */ __name2(async (init) => {
+      const parsedFiles = await loadSharedConfigFiles(init);
+      return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);
+    }, "parseKnownFiles");
+  }
+});
+
+// ../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js
+var require_dist_cjs26 = __commonJS({
+  "../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      loadConfig: () => loadConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    function getSelectorName(functionString) {
+      try {
+        const constants2 = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? []));
+        constants2.delete("CONFIG");
+        constants2.delete("CONFIG_PREFIX_SEPARATOR");
+        constants2.delete("ENV");
+        return [...constants2].join(", ");
+      } catch (e) {
+        return functionString;
+      }
+    }
+    __name2(getSelectorName, "getSelectorName");
+    var fromEnv = /* @__PURE__ */ __name2((envVarSelector, logger) => async () => {
+      try {
+        const config = envVarSelector(process.env);
+        if (config === void 0) {
+          throw new Error();
+        }
+        return config;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`,
+          { logger }
+        );
+      }
+    }, "fromEnv");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var fromSharedConfigFiles = /* @__PURE__ */ __name2((configSelector, { preferredFile = "config", ...init } = {}) => async () => {
+      const profile = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init);
+      const profileFromCredentials = credentialsFile[profile] || {};
+      const profileFromConfig = configFile[profile] || {};
+      const mergedProfile = preferredFile === "config" ? { ...profileFromCredentials, ...profileFromConfig } : { ...profileFromConfig, ...profileFromCredentials };
+      try {
+        const cfgFile = preferredFile === "config" ? configFile : credentialsFile;
+        const configValue = configSelector(mergedProfile, cfgFile);
+        if (configValue === void 0) {
+          throw new Error();
+        }
+        return configValue;
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(
+          e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`,
+          { logger: init.logger }
+        );
+      }
+    }, "fromSharedConfigFiles");
+    var isFunction2 = /* @__PURE__ */ __name2((func) => typeof func === "function", "isFunction");
+    var fromStatic = /* @__PURE__ */ __name2((defaultValue) => isFunction2(defaultValue) ? async () => await defaultValue() : (0, import_property_provider2.fromStatic)(defaultValue), "fromStatic");
+    var loadConfig = /* @__PURE__ */ __name2(({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        fromEnv(environmentVariableSelector),
+        fromSharedConfigFiles(configFileSelector, configuration),
+        fromStatic(defaultValue)
+      )
+    ), "loadConfig");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js
+var require_getEndpointUrlConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointUrlConfig = void 0;
+    var shared_ini_file_loader_1 = require_dist_cjs25();
+    var ENV_ENDPOINT_URL = "AWS_ENDPOINT_URL";
+    var CONFIG_ENDPOINT_URL = "endpoint_url";
+    var getEndpointUrlConfig = (serviceId) => ({
+      environmentVariableSelector: (env2) => {
+        const serviceSuffixParts = serviceId.split(" ").map((w) => w.toUpperCase());
+        const serviceEndpointUrl = env2[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join("_")];
+        if (serviceEndpointUrl)
+          return serviceEndpointUrl;
+        const endpointUrl = env2[ENV_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      configFileSelector: (profile, config) => {
+        if (config && profile.services) {
+          const servicesSection = config[["services", profile.services].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+          if (servicesSection) {
+            const servicePrefixParts = serviceId.split(" ").map((w) => w.toLowerCase());
+            const endpointUrl2 = servicesSection[[servicePrefixParts.join("_"), CONFIG_ENDPOINT_URL].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];
+            if (endpointUrl2)
+              return endpointUrl2;
+          }
+        }
+        const endpointUrl = profile[CONFIG_ENDPOINT_URL];
+        if (endpointUrl)
+          return endpointUrl;
+        return void 0;
+      },
+      default: void 0
+    });
+    exports2.getEndpointUrlConfig = getEndpointUrlConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js
+var require_getEndpointFromConfig = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getEndpointFromConfig = void 0;
+    var node_config_provider_1 = require_dist_cjs26();
+    var getEndpointUrlConfig_1 = require_getEndpointUrlConfig();
+    var getEndpointFromConfig = async (serviceId) => (0, node_config_provider_1.loadConfig)((0, getEndpointUrlConfig_1.getEndpointUrlConfig)(serviceId !== null && serviceId !== void 0 ? serviceId : ""))();
+    exports2.getEndpointFromConfig = getEndpointFromConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js
+var require_dist_cjs27 = __commonJS({
+  "../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseQueryString: () => parseQueryString
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    function parseQueryString(querystring) {
+      const query = {};
+      querystring = querystring.replace(/^\?/, "");
+      if (querystring) {
+        for (const pair of querystring.split("&")) {
+          let [key, value = null] = pair.split("=");
+          key = decodeURIComponent(key);
+          if (value) {
+            value = decodeURIComponent(value);
+          }
+          if (!(key in query)) {
+            query[key] = value;
+          } else if (Array.isArray(query[key])) {
+            query[key].push(value);
+          } else {
+            query[key] = [query[key], value];
+          }
+        }
+      }
+      return query;
+    }
+    __name2(parseQueryString, "parseQueryString");
+  }
+});
+
+// ../../../node_modules/@smithy/url-parser/dist-cjs/index.js
+var require_dist_cjs28 = __commonJS({
+  "../../../node_modules/@smithy/url-parser/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      parseUrl: () => parseUrl
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_querystring_parser = require_dist_cjs27();
+    var parseUrl = /* @__PURE__ */ __name2((url2) => {
+      if (typeof url2 === "string") {
+        return parseUrl(new URL(url2));
+      }
+      const { hostname, pathname, port, protocol, search } = url2;
+      let query;
+      if (search) {
+        query = (0, import_querystring_parser.parseQueryString)(search);
+      }
+      return {
+        hostname,
+        port: port ? parseInt(port) : void 0,
+        protocol,
+        path: pathname,
+        query
+      };
+    }, "parseUrl");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js
+var require_dist_cjs29 = __commonJS({
+  "../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      endpointMiddleware: () => endpointMiddleware,
+      endpointMiddlewareOptions: () => endpointMiddlewareOptions,
+      getEndpointFromInstructions: () => getEndpointFromInstructions,
+      getEndpointPlugin: () => getEndpointPlugin,
+      resolveEndpointConfig: () => resolveEndpointConfig,
+      resolveParams: () => resolveParams,
+      toEndpointV1: () => toEndpointV1
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var resolveParamsForS3 = /* @__PURE__ */ __name2(async (endpointParams) => {
+      const bucket = (endpointParams == null ? void 0 : endpointParams.Bucket) || "";
+      if (typeof endpointParams.Bucket === "string") {
+        endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent("#")).replace(/\?/g, encodeURIComponent("?"));
+      }
+      if (isArnBucketName(bucket)) {
+        if (endpointParams.ForcePathStyle === true) {
+          throw new Error("Path-style addressing cannot be used with ARN buckets");
+        }
+      } else if (!isDnsCompatibleBucketName(bucket) || bucket.indexOf(".") !== -1 && !String(endpointParams.Endpoint).startsWith("http:") || bucket.toLowerCase() !== bucket || bucket.length < 3) {
+        endpointParams.ForcePathStyle = true;
+      }
+      if (endpointParams.DisableMultiRegionAccessPoints) {
+        endpointParams.disableMultiRegionAccessPoints = true;
+        endpointParams.DisableMRAP = true;
+      }
+      return endpointParams;
+    }, "resolveParamsForS3");
+    var DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/;
+    var IP_ADDRESS_PATTERN = /(\d+\.){3}\d+/;
+    var DOTS_PATTERN = /\.\./;
+    var isDnsCompatibleBucketName = /* @__PURE__ */ __name2((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), "isDnsCompatibleBucketName");
+    var isArnBucketName = /* @__PURE__ */ __name2((bucketName) => {
+      const [arn, partition, service, , , bucket] = bucketName.split(":");
+      const isArn = arn === "arn" && bucketName.split(":").length >= 6;
+      const isValidArn = Boolean(isArn && partition && service && bucket);
+      if (isArn && !isValidArn) {
+        throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);
+      }
+      return isValidArn;
+    }, "isArnBucketName");
+    var createConfigValueProvider = /* @__PURE__ */ __name2((configKey, canonicalEndpointParamKey, config) => {
+      const configProvider = /* @__PURE__ */ __name2(async () => {
+        const configValue = config[configKey] ?? config[canonicalEndpointParamKey];
+        if (typeof configValue === "function") {
+          return configValue();
+        }
+        return configValue;
+      }, "configProvider");
+      if (configKey === "credentialScope" || canonicalEndpointParamKey === "CredentialScope") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.credentialScope) ?? (credentials == null ? void 0 : credentials.CredentialScope);
+          return configValue;
+        };
+      }
+      if (configKey === "accountId" || canonicalEndpointParamKey === "AccountId") {
+        return async () => {
+          const credentials = typeof config.credentials === "function" ? await config.credentials() : config.credentials;
+          const configValue = (credentials == null ? void 0 : credentials.accountId) ?? (credentials == null ? void 0 : credentials.AccountId);
+          return configValue;
+        };
+      }
+      if (configKey === "endpoint" || canonicalEndpointParamKey === "endpoint") {
+        return async () => {
+          const endpoint = await configProvider();
+          if (endpoint && typeof endpoint === "object") {
+            if ("url" in endpoint) {
+              return endpoint.url.href;
+            }
+            if ("hostname" in endpoint) {
+              const { protocol, hostname, port, path: path23 } = endpoint;
+              return `${protocol}//${hostname}${port ? ":" + port : ""}${path23}`;
+            }
+          }
+          return endpoint;
+        };
+      }
+      return configProvider;
+    }, "createConfigValueProvider");
+    var import_getEndpointFromConfig = require_getEndpointFromConfig();
+    var import_url_parser = require_dist_cjs28();
+    var toEndpointV1 = /* @__PURE__ */ __name2((endpoint) => {
+      if (typeof endpoint === "object") {
+        if ("url" in endpoint) {
+          return (0, import_url_parser.parseUrl)(endpoint.url);
+        }
+        return endpoint;
+      }
+      return (0, import_url_parser.parseUrl)(endpoint);
+    }, "toEndpointV1");
+    var getEndpointFromInstructions = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig, context) => {
+      if (!clientConfig.endpoint) {
+        let endpointFromConfig;
+        if (clientConfig.serviceConfiguredEndpoint) {
+          endpointFromConfig = await clientConfig.serviceConfiguredEndpoint();
+        } else {
+          endpointFromConfig = await (0, import_getEndpointFromConfig.getEndpointFromConfig)(clientConfig.serviceId);
+        }
+        if (endpointFromConfig) {
+          clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));
+        }
+      }
+      const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);
+      if (typeof clientConfig.endpointProvider !== "function") {
+        throw new Error("config.endpointProvider is not set.");
+      }
+      const endpoint = clientConfig.endpointProvider(endpointParams, context);
+      return endpoint;
+    }, "getEndpointFromInstructions");
+    var resolveParams = /* @__PURE__ */ __name2(async (commandInput, instructionsSupplier, clientConfig) => {
+      var _a7;
+      const endpointParams = {};
+      const instructions = ((_a7 = instructionsSupplier == null ? void 0 : instructionsSupplier.getEndpointParameterInstructions) == null ? void 0 : _a7.call(instructionsSupplier)) || {};
+      for (const [name, instruction] of Object.entries(instructions)) {
+        switch (instruction.type) {
+          case "staticContextParams":
+            endpointParams[name] = instruction.value;
+            break;
+          case "contextParams":
+            endpointParams[name] = commandInput[instruction.name];
+            break;
+          case "clientContextParams":
+          case "builtInParams":
+            endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();
+            break;
+          case "operationContextParams":
+            endpointParams[name] = instruction.get(commandInput);
+            break;
+          default:
+            throw new Error("Unrecognized endpoint parameter instruction: " + JSON.stringify(instruction));
+        }
+      }
+      if (Object.keys(instructions).length === 0) {
+        Object.assign(endpointParams, clientConfig);
+      }
+      if (String(clientConfig.serviceId).toLowerCase() === "s3") {
+        await resolveParamsForS3(endpointParams);
+      }
+      return endpointParams;
+    }, "resolveParams");
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_util_middleware3 = require_dist_cjs10();
+    var endpointMiddleware = /* @__PURE__ */ __name2(({
+      config,
+      instructions
+    }) => {
+      return (next, context) => async (args) => {
+        var _a7, _b, _c;
+        if (config.endpoint) {
+          (0, import_core4.setFeature)(context, "ENDPOINT_OVERRIDE", "N");
+        }
+        const endpoint = await getEndpointFromInstructions(
+          args.input,
+          {
+            getEndpointParameterInstructions() {
+              return instructions;
+            }
+          },
+          { ...config },
+          context
+        );
+        context.endpointV2 = endpoint;
+        context.authSchemes = (_a7 = endpoint.properties) == null ? void 0 : _a7.authSchemes;
+        const authScheme = (_b = context.authSchemes) == null ? void 0 : _b[0];
+        if (authScheme) {
+          context["signing_region"] = authScheme.signingRegion;
+          context["signing_service"] = authScheme.signingName;
+          const smithyContext = (0, import_util_middleware3.getSmithyContext)(context);
+          const httpAuthOption = (_c = smithyContext == null ? void 0 : smithyContext.selectedHttpAuthScheme) == null ? void 0 : _c.httpAuthOption;
+          if (httpAuthOption) {
+            httpAuthOption.signingProperties = Object.assign(
+              httpAuthOption.signingProperties || {},
+              {
+                signing_region: authScheme.signingRegion,
+                signingRegion: authScheme.signingRegion,
+                signing_service: authScheme.signingName,
+                signingName: authScheme.signingName,
+                signingRegionSet: authScheme.signingRegionSet
+              },
+              authScheme.properties
+            );
+          }
+        }
+        return next({
+          ...args
+        });
+      };
+    }, "endpointMiddleware");
+    var import_middleware_serde2 = require_dist_cjs12();
+    var endpointMiddlewareOptions = {
+      step: "serialize",
+      tags: ["ENDPOINT_PARAMETERS", "ENDPOINT_V2", "ENDPOINT"],
+      name: "endpointV2Middleware",
+      override: true,
+      relation: "before",
+      toMiddleware: import_middleware_serde2.serializerMiddlewareOption.name
+    };
+    var getEndpointPlugin = /* @__PURE__ */ __name2((config, instructions) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(
+          endpointMiddleware({
+            config,
+            instructions
+          }),
+          endpointMiddlewareOptions
+        );
+      }
+    }), "getEndpointPlugin");
+    var import_getEndpointFromConfig2 = require_getEndpointFromConfig();
+    var resolveEndpointConfig = /* @__PURE__ */ __name2((input) => {
+      const tls = input.tls ?? true;
+      const { endpoint } = input;
+      const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await (0, import_util_middleware3.normalizeProvider)(endpoint)()) : void 0;
+      const isCustomEndpoint = !!endpoint;
+      const resolvedConfig = {
+        ...input,
+        endpoint: customEndpointProvider,
+        tls,
+        isCustomEndpoint,
+        useDualstackEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useDualstackEndpoint ?? false),
+        useFipsEndpoint: (0, import_util_middleware3.normalizeProvider)(input.useFipsEndpoint ?? false)
+      };
+      let configuredEndpointPromise = void 0;
+      resolvedConfig.serviceConfiguredEndpoint = async () => {
+        if (input.serviceId && !configuredEndpointPromise) {
+          configuredEndpointPromise = (0, import_getEndpointFromConfig2.getEndpointFromConfig)(input.serviceId);
+        }
+        return configuredEndpointPromise;
+      };
+      return resolvedConfig;
+    }, "resolveEndpointConfig");
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/rng.js
+function rng() {
+  if (poolPtr > rnds8Pool.length - 16) {
+    import_crypto.default.randomFillSync(rnds8Pool);
+    poolPtr = 0;
+  }
+  return rnds8Pool.slice(poolPtr, poolPtr += 16);
+}
+var import_crypto, rnds8Pool, poolPtr;
+var init_rng = __esm({
+  "../../../node_modules/uuid/dist/esm-node/rng.js"() {
+    import_crypto = __toESM(require("crypto"));
+    rnds8Pool = new Uint8Array(256);
+    poolPtr = rnds8Pool.length;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/regex.js
+var regex_default;
+var init_regex = __esm({
+  "../../../node_modules/uuid/dist/esm-node/regex.js"() {
+    regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/validate.js
+function validate(uuid) {
+  return typeof uuid === "string" && regex_default.test(uuid);
+}
+var validate_default;
+var init_validate = __esm({
+  "../../../node_modules/uuid/dist/esm-node/validate.js"() {
+    init_regex();
+    validate_default = validate;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/stringify.js
+function unsafeStringify(arr, offset = 0) {
+  return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
+}
+function stringify2(arr, offset = 0) {
+  const uuid = unsafeStringify(arr, offset);
+  if (!validate_default(uuid)) {
+    throw TypeError("Stringified UUID is invalid");
+  }
+  return uuid;
+}
+var byteToHex, stringify_default;
+var init_stringify = __esm({
+  "../../../node_modules/uuid/dist/esm-node/stringify.js"() {
+    init_validate();
+    byteToHex = [];
+    for (let i = 0; i < 256; ++i) {
+      byteToHex.push((i + 256).toString(16).slice(1));
+    }
+    stringify_default = stringify2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v1.js
+function v1(options, buf, offset) {
+  let i = buf && offset || 0;
+  const b = buf || new Array(16);
+  options = options || {};
+  let node = options.node || _nodeId;
+  let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq;
+  if (node == null || clockseq == null) {
+    const seedBytes = options.random || (options.rng || rng)();
+    if (node == null) {
+      node = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]];
+    }
+    if (clockseq == null) {
+      clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383;
+    }
+  }
+  let msecs = options.msecs !== void 0 ? options.msecs : Date.now();
+  let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1;
+  const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4;
+  if (dt < 0 && options.clockseq === void 0) {
+    clockseq = clockseq + 1 & 16383;
+  }
+  if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) {
+    nsecs = 0;
+  }
+  if (nsecs >= 1e4) {
+    throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");
+  }
+  _lastMSecs = msecs;
+  _lastNSecs = nsecs;
+  _clockseq = clockseq;
+  msecs += 122192928e5;
+  const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296;
+  b[i++] = tl >>> 24 & 255;
+  b[i++] = tl >>> 16 & 255;
+  b[i++] = tl >>> 8 & 255;
+  b[i++] = tl & 255;
+  const tmh = msecs / 4294967296 * 1e4 & 268435455;
+  b[i++] = tmh >>> 8 & 255;
+  b[i++] = tmh & 255;
+  b[i++] = tmh >>> 24 & 15 | 16;
+  b[i++] = tmh >>> 16 & 255;
+  b[i++] = clockseq >>> 8 | 128;
+  b[i++] = clockseq & 255;
+  for (let n = 0; n < 6; ++n) {
+    b[i + n] = node[n];
+  }
+  return buf || unsafeStringify(b);
+}
+var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default;
+var init_v1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v1.js"() {
+    init_rng();
+    init_stringify();
+    _lastMSecs = 0;
+    _lastNSecs = 0;
+    v1_default = v1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/parse.js
+function parse(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  let v;
+  const arr = new Uint8Array(16);
+  arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;
+  arr[1] = v >>> 16 & 255;
+  arr[2] = v >>> 8 & 255;
+  arr[3] = v & 255;
+  arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8;
+  arr[5] = v & 255;
+  arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8;
+  arr[7] = v & 255;
+  arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8;
+  arr[9] = v & 255;
+  arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255;
+  arr[11] = v / 4294967296 & 255;
+  arr[12] = v >>> 24 & 255;
+  arr[13] = v >>> 16 & 255;
+  arr[14] = v >>> 8 & 255;
+  arr[15] = v & 255;
+  return arr;
+}
+var parse_default;
+var init_parse = __esm({
+  "../../../node_modules/uuid/dist/esm-node/parse.js"() {
+    init_validate();
+    parse_default = parse;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v35.js
+function stringToBytes(str) {
+  str = unescape(encodeURIComponent(str));
+  const bytes = [];
+  for (let i = 0; i < str.length; ++i) {
+    bytes.push(str.charCodeAt(i));
+  }
+  return bytes;
+}
+function v35(name, version3, hashfunc) {
+  function generateUUID(value, namespace, buf, offset) {
+    var _namespace;
+    if (typeof value === "string") {
+      value = stringToBytes(value);
+    }
+    if (typeof namespace === "string") {
+      namespace = parse_default(namespace);
+    }
+    if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) {
+      throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");
+    }
+    let bytes = new Uint8Array(16 + value.length);
+    bytes.set(namespace);
+    bytes.set(value, namespace.length);
+    bytes = hashfunc(bytes);
+    bytes[6] = bytes[6] & 15 | version3;
+    bytes[8] = bytes[8] & 63 | 128;
+    if (buf) {
+      offset = offset || 0;
+      for (let i = 0; i < 16; ++i) {
+        buf[offset + i] = bytes[i];
+      }
+      return buf;
+    }
+    return unsafeStringify(bytes);
+  }
+  try {
+    generateUUID.name = name;
+  } catch (err) {
+  }
+  generateUUID.DNS = DNS;
+  generateUUID.URL = URL2;
+  return generateUUID;
+}
+var DNS, URL2;
+var init_v35 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v35.js"() {
+    init_stringify();
+    init_parse();
+    DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8";
+    URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/md5.js
+function md5(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto2.default.createHash("md5").update(bytes).digest();
+}
+var import_crypto2, md5_default;
+var init_md52 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/md5.js"() {
+    import_crypto2 = __toESM(require("crypto"));
+    md5_default = md5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v3.js
+var v3, v3_default;
+var init_v3 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v3.js"() {
+    init_v35();
+    init_md52();
+    v3 = v35("v3", 48, md5_default);
+    v3_default = v3;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/native.js
+var import_crypto3, native_default;
+var init_native = __esm({
+  "../../../node_modules/uuid/dist/esm-node/native.js"() {
+    import_crypto3 = __toESM(require("crypto"));
+    native_default = {
+      randomUUID: import_crypto3.default.randomUUID
+    };
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v4.js
+function v4(options, buf, offset) {
+  if (native_default.randomUUID && !buf && !options) {
+    return native_default.randomUUID();
+  }
+  options = options || {};
+  const rnds = options.random || (options.rng || rng)();
+  rnds[6] = rnds[6] & 15 | 64;
+  rnds[8] = rnds[8] & 63 | 128;
+  if (buf) {
+    offset = offset || 0;
+    for (let i = 0; i < 16; ++i) {
+      buf[offset + i] = rnds[i];
+    }
+    return buf;
+  }
+  return unsafeStringify(rnds);
+}
+var v4_default;
+var init_v4 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v4.js"() {
+    init_native();
+    init_rng();
+    init_stringify();
+    v4_default = v4;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/sha1.js
+function sha1(bytes) {
+  if (Array.isArray(bytes)) {
+    bytes = Buffer.from(bytes);
+  } else if (typeof bytes === "string") {
+    bytes = Buffer.from(bytes, "utf8");
+  }
+  return import_crypto4.default.createHash("sha1").update(bytes).digest();
+}
+var import_crypto4, sha1_default;
+var init_sha1 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/sha1.js"() {
+    import_crypto4 = __toESM(require("crypto"));
+    sha1_default = sha1;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/v5.js
+var v5, v5_default;
+var init_v5 = __esm({
+  "../../../node_modules/uuid/dist/esm-node/v5.js"() {
+    init_v35();
+    init_sha1();
+    v5 = v35("v5", 80, sha1_default);
+    v5_default = v5;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/nil.js
+var nil_default;
+var init_nil = __esm({
+  "../../../node_modules/uuid/dist/esm-node/nil.js"() {
+    nil_default = "00000000-0000-0000-0000-000000000000";
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/version.js
+function version2(uuid) {
+  if (!validate_default(uuid)) {
+    throw TypeError("Invalid UUID");
+  }
+  return parseInt(uuid.slice(14, 15), 16);
+}
+var version_default;
+var init_version = __esm({
+  "../../../node_modules/uuid/dist/esm-node/version.js"() {
+    init_validate();
+    version_default = version2;
+  }
+});
+
+// ../../../node_modules/uuid/dist/esm-node/index.js
+var esm_node_exports = {};
+__export(esm_node_exports, {
+  NIL: () => nil_default,
+  parse: () => parse_default,
+  stringify: () => stringify_default,
+  v1: () => v1_default,
+  v3: () => v3_default,
+  v4: () => v4_default,
+  v5: () => v5_default,
+  validate: () => validate_default,
+  version: () => version_default
+});
+var init_esm_node = __esm({
+  "../../../node_modules/uuid/dist/esm-node/index.js"() {
+    init_v1();
+    init_v3();
+    init_v4();
+    init_v5();
+    init_nil();
+    init_version();
+    init_validate();
+    init_stringify();
+    init_parse();
+  }
+});
+
+// ../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js
+var require_dist_cjs30 = __commonJS({
+  "../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      isClockSkewCorrectedError: () => isClockSkewCorrectedError,
+      isClockSkewError: () => isClockSkewError,
+      isRetryableByTrait: () => isRetryableByTrait,
+      isServerError: () => isServerError,
+      isThrottlingError: () => isThrottlingError,
+      isTransientError: () => isTransientError
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var CLOCK_SKEW_ERROR_CODES = [
+      "AuthFailure",
+      "InvalidSignatureException",
+      "RequestExpired",
+      "RequestInTheFuture",
+      "RequestTimeTooSkewed",
+      "SignatureDoesNotMatch"
+    ];
+    var THROTTLING_ERROR_CODES = [
+      "BandwidthLimitExceeded",
+      "EC2ThrottledException",
+      "LimitExceededException",
+      "PriorRequestNotComplete",
+      "ProvisionedThroughputExceededException",
+      "RequestLimitExceeded",
+      "RequestThrottled",
+      "RequestThrottledException",
+      "SlowDown",
+      "ThrottledException",
+      "Throttling",
+      "ThrottlingException",
+      "TooManyRequestsException",
+      "TransactionInProgressException"
+      // DynamoDB
+    ];
+    var TRANSIENT_ERROR_CODES = ["TimeoutError", "RequestTimeout", "RequestTimeoutException"];
+    var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];
+    var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"];
+    var isRetryableByTrait = /* @__PURE__ */ __name2((error) => error.$retryable !== void 0, "isRetryableByTrait");
+    var isClockSkewError = /* @__PURE__ */ __name2((error) => CLOCK_SKEW_ERROR_CODES.includes(error.name), "isClockSkewError");
+    var isClockSkewCorrectedError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      return (_a7 = error.$metadata) == null ? void 0 : _a7.clockSkewCorrected;
+    }, "isClockSkewCorrectedError");
+    var isThrottlingError = /* @__PURE__ */ __name2((error) => {
+      var _a7, _b;
+      return ((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) === 429 || THROTTLING_ERROR_CODES.includes(error.name) || ((_b = error.$retryable) == null ? void 0 : _b.throttling) == true;
+    }, "isThrottlingError");
+    var isTransientError = /* @__PURE__ */ __name2((error, depth = 0) => {
+      var _a7;
+      return isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || "") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) || 0) || error.cause !== void 0 && depth <= 10 && isTransientError(error.cause, depth + 1);
+    }, "isTransientError");
+    var isServerError = /* @__PURE__ */ __name2((error) => {
+      var _a7;
+      if (((_a7 = error.$metadata) == null ? void 0 : _a7.httpStatusCode) !== void 0) {
+        const statusCode = error.$metadata.httpStatusCode;
+        if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {
+          return true;
+        }
+        return false;
+      }
+      return false;
+    }, "isServerError");
+  }
+});
+
+// ../../../node_modules/@smithy/util-retry/dist-cjs/index.js
+var require_dist_cjs31 = __commonJS({
+  "../../../node_modules/@smithy/util-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      ConfiguredRetryStrategy: () => ConfiguredRetryStrategy,
+      DEFAULT_MAX_ATTEMPTS: () => DEFAULT_MAX_ATTEMPTS,
+      DEFAULT_RETRY_DELAY_BASE: () => DEFAULT_RETRY_DELAY_BASE,
+      DEFAULT_RETRY_MODE: () => DEFAULT_RETRY_MODE,
+      DefaultRateLimiter: () => DefaultRateLimiter,
+      INITIAL_RETRY_TOKENS: () => INITIAL_RETRY_TOKENS,
+      INVOCATION_ID_HEADER: () => INVOCATION_ID_HEADER,
+      MAXIMUM_RETRY_DELAY: () => MAXIMUM_RETRY_DELAY,
+      NO_RETRY_INCREMENT: () => NO_RETRY_INCREMENT,
+      REQUEST_HEADER: () => REQUEST_HEADER,
+      RETRY_COST: () => RETRY_COST,
+      RETRY_MODES: () => RETRY_MODES,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      THROTTLING_RETRY_DELAY_BASE: () => THROTTLING_RETRY_DELAY_BASE,
+      TIMEOUT_RETRY_COST: () => TIMEOUT_RETRY_COST
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var RETRY_MODES = /* @__PURE__ */ ((RETRY_MODES2) => {
+      RETRY_MODES2["STANDARD"] = "standard";
+      RETRY_MODES2["ADAPTIVE"] = "adaptive";
+      return RETRY_MODES2;
+    })(RETRY_MODES || {});
+    var DEFAULT_MAX_ATTEMPTS = 3;
+    var DEFAULT_RETRY_MODE = "standard";
+    var import_service_error_classification = require_dist_cjs30();
+    var _DefaultRateLimiter = class _DefaultRateLimiter2 {
+      constructor(options) {
+        this.currentCapacity = 0;
+        this.enabled = false;
+        this.lastMaxRate = 0;
+        this.measuredTxRate = 0;
+        this.requestCount = 0;
+        this.lastTimestamp = 0;
+        this.timeWindow = 0;
+        this.beta = (options == null ? void 0 : options.beta) ?? 0.7;
+        this.minCapacity = (options == null ? void 0 : options.minCapacity) ?? 1;
+        this.minFillRate = (options == null ? void 0 : options.minFillRate) ?? 0.5;
+        this.scaleConstant = (options == null ? void 0 : options.scaleConstant) ?? 0.4;
+        this.smooth = (options == null ? void 0 : options.smooth) ?? 0.8;
+        const currentTimeInSeconds = this.getCurrentTimeInSeconds();
+        this.lastThrottleTime = currentTimeInSeconds;
+        this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());
+        this.fillRate = this.minFillRate;
+        this.maxCapacity = this.minCapacity;
+      }
+      getCurrentTimeInSeconds() {
+        return Date.now() / 1e3;
+      }
+      async getSendToken() {
+        return this.acquireTokenBucket(1);
+      }
+      async acquireTokenBucket(amount) {
+        if (!this.enabled) {
+          return;
+        }
+        this.refillTokenBucket();
+        if (amount > this.currentCapacity) {
+          const delay = (amount - this.currentCapacity) / this.fillRate * 1e3;
+          await new Promise((resolve6) => _DefaultRateLimiter2.setTimeoutFn(resolve6, delay));
+        }
+        this.currentCapacity = this.currentCapacity - amount;
+      }
+      refillTokenBucket() {
+        const timestamp = this.getCurrentTimeInSeconds();
+        if (!this.lastTimestamp) {
+          this.lastTimestamp = timestamp;
+          return;
+        }
+        const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;
+        this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);
+        this.lastTimestamp = timestamp;
+      }
+      updateClientSendingRate(response) {
+        let calculatedRate;
+        this.updateMeasuredRate();
+        if ((0, import_service_error_classification.isThrottlingError)(response)) {
+          const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);
+          this.lastMaxRate = rateToUse;
+          this.calculateTimeWindow();
+          this.lastThrottleTime = this.getCurrentTimeInSeconds();
+          calculatedRate = this.cubicThrottle(rateToUse);
+          this.enableTokenBucket();
+        } else {
+          this.calculateTimeWindow();
+          calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());
+        }
+        const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);
+        this.updateTokenBucketRate(newRate);
+      }
+      calculateTimeWindow() {
+        this.timeWindow = this.getPrecise(Math.pow(this.lastMaxRate * (1 - this.beta) / this.scaleConstant, 1 / 3));
+      }
+      cubicThrottle(rateToUse) {
+        return this.getPrecise(rateToUse * this.beta);
+      }
+      cubicSuccess(timestamp) {
+        return this.getPrecise(
+          this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate
+        );
+      }
+      enableTokenBucket() {
+        this.enabled = true;
+      }
+      updateTokenBucketRate(newRate) {
+        this.refillTokenBucket();
+        this.fillRate = Math.max(newRate, this.minFillRate);
+        this.maxCapacity = Math.max(newRate, this.minCapacity);
+        this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);
+      }
+      updateMeasuredRate() {
+        const t = this.getCurrentTimeInSeconds();
+        const timeBucket = Math.floor(t * 2) / 2;
+        this.requestCount++;
+        if (timeBucket > this.lastTxRateBucket) {
+          const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);
+          this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));
+          this.requestCount = 0;
+          this.lastTxRateBucket = timeBucket;
+        }
+      }
+      getPrecise(num) {
+        return parseFloat(num.toFixed(8));
+      }
+    };
+    __name2(_DefaultRateLimiter, "DefaultRateLimiter");
+    _DefaultRateLimiter.setTimeoutFn = setTimeout;
+    var DefaultRateLimiter = _DefaultRateLimiter;
+    var DEFAULT_RETRY_DELAY_BASE = 100;
+    var MAXIMUM_RETRY_DELAY = 20 * 1e3;
+    var THROTTLING_RETRY_DELAY_BASE = 500;
+    var INITIAL_RETRY_TOKENS = 500;
+    var RETRY_COST = 5;
+    var TIMEOUT_RETRY_COST = 10;
+    var NO_RETRY_INCREMENT = 1;
+    var INVOCATION_ID_HEADER = "amz-sdk-invocation-id";
+    var REQUEST_HEADER = "amz-sdk-request";
+    var getDefaultRetryBackoffStrategy = /* @__PURE__ */ __name2(() => {
+      let delayBase = DEFAULT_RETRY_DELAY_BASE;
+      const computeNextBackoffDelay = /* @__PURE__ */ __name2((attempts) => {
+        return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));
+      }, "computeNextBackoffDelay");
+      const setDelayBase = /* @__PURE__ */ __name2((delay) => {
+        delayBase = delay;
+      }, "setDelayBase");
+      return {
+        computeNextBackoffDelay,
+        setDelayBase
+      };
+    }, "getDefaultRetryBackoffStrategy");
+    var createDefaultRetryToken = /* @__PURE__ */ __name2(({
+      retryDelay,
+      retryCount,
+      retryCost
+    }) => {
+      const getRetryCount = /* @__PURE__ */ __name2(() => retryCount, "getRetryCount");
+      const getRetryDelay = /* @__PURE__ */ __name2(() => Math.min(MAXIMUM_RETRY_DELAY, retryDelay), "getRetryDelay");
+      const getRetryCost = /* @__PURE__ */ __name2(() => retryCost, "getRetryCost");
+      return {
+        getRetryCount,
+        getRetryDelay,
+        getRetryCost
+      };
+    }, "createDefaultRetryToken");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttempts) {
+        this.maxAttempts = maxAttempts;
+        this.mode = "standard";
+        this.capacity = INITIAL_RETRY_TOKENS;
+        this.retryBackoffStrategy = getDefaultRetryBackoffStrategy();
+        this.maxAttemptsProvider = typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts;
+      }
+      // eslint-disable-next-line @typescript-eslint/no-unused-vars
+      async acquireInitialRetryToken(retryTokenScope) {
+        return createDefaultRetryToken({
+          retryDelay: DEFAULT_RETRY_DELAY_BASE,
+          retryCount: 0
+        });
+      }
+      async refreshRetryTokenForRetry(token, errorInfo) {
+        const maxAttempts = await this.getMaxAttempts();
+        if (this.shouldRetry(token, errorInfo, maxAttempts)) {
+          const errorType = errorInfo.errorType;
+          this.retryBackoffStrategy.setDelayBase(
+            errorType === "THROTTLING" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE
+          );
+          const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());
+          const retryDelay = errorInfo.retryAfterHint ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType) : delayFromErrorType;
+          const capacityCost = this.getCapacityCost(errorType);
+          this.capacity -= capacityCost;
+          return createDefaultRetryToken({
+            retryDelay,
+            retryCount: token.getRetryCount() + 1,
+            retryCost: capacityCost
+          });
+        }
+        throw new Error("No retry token available");
+      }
+      recordSuccess(token) {
+        this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));
+      }
+      /**
+       * @returns the current available retry capacity.
+       *
+       * This number decreases when retries are executed and refills when requests or retries succeed.
+       */
+      getCapacity() {
+        return this.capacity;
+      }
+      async getMaxAttempts() {
+        try {
+          return await this.maxAttemptsProvider();
+        } catch (error) {
+          console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);
+          return DEFAULT_MAX_ATTEMPTS;
+        }
+      }
+      shouldRetry(tokenToRenew, errorInfo, maxAttempts) {
+        const attempts = tokenToRenew.getRetryCount() + 1;
+        return attempts < maxAttempts && this.capacity >= this.getCapacityCost(errorInfo.errorType) && this.isRetryableError(errorInfo.errorType);
+      }
+      getCapacityCost(errorType) {
+        return errorType === "TRANSIENT" ? TIMEOUT_RETRY_COST : RETRY_COST;
+      }
+      isRetryableError(errorType) {
+        return errorType === "THROTTLING" || errorType === "TRANSIENT";
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = "adaptive";
+        const { rateLimiter } = options ?? {};
+        this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();
+        this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);
+      }
+      async acquireInitialRetryToken(retryTokenScope) {
+        await this.rateLimiter.getSendToken();
+        return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        this.rateLimiter.updateClientSendingRate(errorInfo);
+        return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+      }
+      recordSuccess(token) {
+        this.rateLimiter.updateClientSendingRate({});
+        this.standardRetryStrategy.recordSuccess(token);
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var _ConfiguredRetryStrategy = class _ConfiguredRetryStrategy extends StandardRetryStrategy {
+      /**
+       * @param maxAttempts - the maximum number of retry attempts allowed.
+       *                      e.g., if set to 3, then 4 total requests are possible.
+       * @param computeNextBackoffDelay - a millisecond delay for each retry or a function that takes the retry attempt
+       *                                  and returns the delay.
+       *
+       * @example exponential backoff.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, (attempt) => attempt ** 2)
+       * });
+       * ```
+       * @example constant delay.
+       * ```js
+       * new Client({
+       *   retryStrategy: new ConfiguredRetryStrategy(3, 2000)
+       * });
+       * ```
+       */
+      constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) {
+        super(typeof maxAttempts === "function" ? maxAttempts : async () => maxAttempts);
+        if (typeof computeNextBackoffDelay === "number") {
+          this.computeNextBackoffDelay = () => computeNextBackoffDelay;
+        } else {
+          this.computeNextBackoffDelay = computeNextBackoffDelay;
+        }
+      }
+      async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
+        const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
+        token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount());
+        return token;
+      }
+    };
+    __name2(_ConfiguredRetryStrategy, "ConfiguredRetryStrategy");
+    var ConfiguredRetryStrategy = _ConfiguredRetryStrategy;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js
+var require_dist_cjs32 = __commonJS({
+  "../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      constructStack: () => constructStack
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAllAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      const _aliases = [];
+      if (name) {
+        _aliases.push(name);
+      }
+      if (aliases) {
+        for (const alias of aliases) {
+          _aliases.push(alias);
+        }
+      }
+      return _aliases;
+    }, "getAllAliases");
+    var getMiddlewareNameWithAliases = /* @__PURE__ */ __name2((name, aliases) => {
+      return `${name || "anonymous"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(",")})` : ""}`;
+    }, "getMiddlewareNameWithAliases");
+    var constructStack = /* @__PURE__ */ __name2(() => {
+      let absoluteEntries = [];
+      let relativeEntries = [];
+      let identifyOnResolve = false;
+      const entriesNameSet = /* @__PURE__ */ new Set();
+      const sort = /* @__PURE__ */ __name2((entries) => entries.sort(
+        (a, b) => stepWeights[b.step] - stepWeights[a.step] || priorityWeights[b.priority || "normal"] - priorityWeights[a.priority || "normal"]
+      ), "sort");
+      const removeByName = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          const aliases = getAllAliases(entry.name, entry.aliases);
+          if (aliases.includes(toRemove)) {
+            isRemoved = true;
+            for (const alias of aliases) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByName");
+      const removeByReference = /* @__PURE__ */ __name2((toRemove) => {
+        let isRemoved = false;
+        const filterCb = /* @__PURE__ */ __name2((entry) => {
+          if (entry.middleware === toRemove) {
+            isRemoved = true;
+            for (const alias of getAllAliases(entry.name, entry.aliases)) {
+              entriesNameSet.delete(alias);
+            }
+            return false;
+          }
+          return true;
+        }, "filterCb");
+        absoluteEntries = absoluteEntries.filter(filterCb);
+        relativeEntries = relativeEntries.filter(filterCb);
+        return isRemoved;
+      }, "removeByReference");
+      const cloneTo = /* @__PURE__ */ __name2((toStack) => {
+        var _a7;
+        absoluteEntries.forEach((entry) => {
+          toStack.add(entry.middleware, { ...entry });
+        });
+        relativeEntries.forEach((entry) => {
+          toStack.addRelativeTo(entry.middleware, { ...entry });
+        });
+        (_a7 = toStack.identifyOnResolve) == null ? void 0 : _a7.call(toStack, stack.identifyOnResolve());
+        return toStack;
+      }, "cloneTo");
+      const expandRelativeMiddlewareList = /* @__PURE__ */ __name2((from) => {
+        const expandedMiddlewareList = [];
+        from.before.forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        expandedMiddlewareList.push(from);
+        from.after.reverse().forEach((entry) => {
+          if (entry.before.length === 0 && entry.after.length === 0) {
+            expandedMiddlewareList.push(entry);
+          } else {
+            expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));
+          }
+        });
+        return expandedMiddlewareList;
+      }, "expandRelativeMiddlewareList");
+      const getMiddlewareList = /* @__PURE__ */ __name2((debug = false) => {
+        const normalizedAbsoluteEntries = [];
+        const normalizedRelativeEntries = [];
+        const normalizedEntriesNameMap = {};
+        absoluteEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedAbsoluteEntries.push(normalizedEntry);
+        });
+        relativeEntries.forEach((entry) => {
+          const normalizedEntry = {
+            ...entry,
+            before: [],
+            after: []
+          };
+          for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {
+            normalizedEntriesNameMap[alias] = normalizedEntry;
+          }
+          normalizedRelativeEntries.push(normalizedEntry);
+        });
+        normalizedRelativeEntries.forEach((entry) => {
+          if (entry.toMiddleware) {
+            const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];
+            if (toMiddleware === void 0) {
+              if (debug) {
+                return;
+              }
+              throw new Error(
+                `${entry.toMiddleware} is not found when adding ${getMiddlewareNameWithAliases(entry.name, entry.aliases)} middleware ${entry.relation} ${entry.toMiddleware}`
+              );
+            }
+            if (entry.relation === "after") {
+              toMiddleware.after.push(entry);
+            }
+            if (entry.relation === "before") {
+              toMiddleware.before.push(entry);
+            }
+          }
+        });
+        const mainChain = sort(normalizedAbsoluteEntries).map(expandRelativeMiddlewareList).reduce(
+          (wholeList, expandedMiddlewareList) => {
+            wholeList.push(...expandedMiddlewareList);
+            return wholeList;
+          },
+          []
+        );
+        return mainChain;
+      }, "getMiddlewareList");
+      const stack = {
+        add: (middleware, options = {}) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            step: "initialize",
+            priority: "normal",
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = absoluteEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = absoluteEntries[toOverrideIndex];
+                if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware with ${toOverride.priority} priority in ${toOverride.step} step cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware with ${entry.priority} priority in ${entry.step} step.`
+                  );
+                }
+                absoluteEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          absoluteEntries.push(entry);
+        },
+        addRelativeTo: (middleware, options) => {
+          const { name, override, aliases: _aliases } = options;
+          const entry = {
+            middleware,
+            ...options
+          };
+          const aliases = getAllAliases(name, _aliases);
+          if (aliases.length > 0) {
+            if (aliases.some((alias) => entriesNameSet.has(alias))) {
+              if (!override)
+                throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);
+              for (const alias of aliases) {
+                const toOverrideIndex = relativeEntries.findIndex(
+                  (entry2) => {
+                    var _a7;
+                    return entry2.name === alias || ((_a7 = entry2.aliases) == null ? void 0 : _a7.some((a) => a === alias));
+                  }
+                );
+                if (toOverrideIndex === -1) {
+                  continue;
+                }
+                const toOverride = relativeEntries[toOverrideIndex];
+                if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {
+                  throw new Error(
+                    `"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}" middleware ${toOverride.relation} "${toOverride.toMiddleware}" middleware cannot be overridden by "${getMiddlewareNameWithAliases(name, _aliases)}" middleware ${entry.relation} "${entry.toMiddleware}" middleware.`
+                  );
+                }
+                relativeEntries.splice(toOverrideIndex, 1);
+              }
+            }
+            for (const alias of aliases) {
+              entriesNameSet.add(alias);
+            }
+          }
+          relativeEntries.push(entry);
+        },
+        clone: () => cloneTo(constructStack()),
+        use: (plugin) => {
+          plugin.applyToStack(stack);
+        },
+        remove: (toRemove) => {
+          if (typeof toRemove === "string")
+            return removeByName(toRemove);
+          else
+            return removeByReference(toRemove);
+        },
+        removeByTag: (toRemove) => {
+          let isRemoved = false;
+          const filterCb = /* @__PURE__ */ __name2((entry) => {
+            const { tags, name, aliases: _aliases } = entry;
+            if (tags && tags.includes(toRemove)) {
+              const aliases = getAllAliases(name, _aliases);
+              for (const alias of aliases) {
+                entriesNameSet.delete(alias);
+              }
+              isRemoved = true;
+              return false;
+            }
+            return true;
+          }, "filterCb");
+          absoluteEntries = absoluteEntries.filter(filterCb);
+          relativeEntries = relativeEntries.filter(filterCb);
+          return isRemoved;
+        },
+        concat: (from) => {
+          var _a7;
+          const cloned = cloneTo(constructStack());
+          cloned.use(from);
+          cloned.identifyOnResolve(
+            identifyOnResolve || cloned.identifyOnResolve() || (((_a7 = from.identifyOnResolve) == null ? void 0 : _a7.call(from)) ?? false)
+          );
+          return cloned;
+        },
+        applyToStack: cloneTo,
+        identify: () => {
+          return getMiddlewareList(true).map((mw) => {
+            const step = mw.step ?? mw.relation + " " + mw.toMiddleware;
+            return getMiddlewareNameWithAliases(mw.name, mw.aliases) + " - " + step;
+          });
+        },
+        identifyOnResolve(toggle) {
+          if (typeof toggle === "boolean")
+            identifyOnResolve = toggle;
+          return identifyOnResolve;
+        },
+        resolve: (handler2, context) => {
+          for (const middleware of getMiddlewareList().map((entry) => entry.middleware).reverse()) {
+            handler2 = middleware(handler2, context);
+          }
+          if (identifyOnResolve) {
+            console.log(stack.identify());
+          }
+          return handler2;
+        }
+      };
+      return stack;
+    }, "constructStack");
+    var stepWeights = {
+      initialize: 5,
+      serialize: 4,
+      build: 3,
+      finalizeRequest: 2,
+      deserialize: 1
+    };
+    var priorityWeights = {
+      high: 3,
+      normal: 2,
+      low: 1
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/smithy-client/dist-cjs/index.js
+var require_dist_cjs33 = __commonJS({
+  "../../../node_modules/@smithy/smithy-client/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Client: () => Client,
+      Command: () => Command,
+      LazyJsonString: () => LazyJsonString,
+      NoOpLogger: () => NoOpLogger,
+      SENSITIVE_STRING: () => SENSITIVE_STRING,
+      ServiceException: () => ServiceException,
+      _json: () => _json,
+      collectBody: () => import_protocols2.collectBody,
+      convertMap: () => convertMap,
+      createAggregatedClient: () => createAggregatedClient,
+      dateToUtcString: () => dateToUtcString,
+      decorateServiceException: () => decorateServiceException,
+      emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion2,
+      expectBoolean: () => expectBoolean,
+      expectByte: () => expectByte,
+      expectFloat32: () => expectFloat32,
+      expectInt: () => expectInt,
+      expectInt32: () => expectInt32,
+      expectLong: () => expectLong,
+      expectNonNull: () => expectNonNull,
+      expectNumber: () => expectNumber,
+      expectObject: () => expectObject,
+      expectShort: () => expectShort,
+      expectString: () => expectString,
+      expectUnion: () => expectUnion2,
+      extendedEncodeURIComponent: () => import_protocols2.extendedEncodeURIComponent,
+      getArrayIfSingleItem: () => getArrayIfSingleItem,
+      getDefaultClientConfiguration: () => getDefaultClientConfiguration,
+      getDefaultExtensionConfiguration: () => getDefaultExtensionConfiguration,
+      getValueFromTextNode: () => getValueFromTextNode2,
+      handleFloat: () => handleFloat,
+      isSerializableHeaderValue: () => isSerializableHeaderValue,
+      limitedParseDouble: () => limitedParseDouble,
+      limitedParseFloat: () => limitedParseFloat,
+      limitedParseFloat32: () => limitedParseFloat32,
+      loadConfigsForDefaultMode: () => loadConfigsForDefaultMode,
+      logger: () => logger,
+      map: () => map,
+      parseBoolean: () => parseBoolean,
+      parseEpochTimestamp: () => parseEpochTimestamp,
+      parseRfc3339DateTime: () => parseRfc3339DateTime,
+      parseRfc3339DateTimeWithOffset: () => parseRfc3339DateTimeWithOffset,
+      parseRfc7231DateTime: () => parseRfc7231DateTime,
+      quoteHeader: () => quoteHeader,
+      resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig,
+      resolvedPath: () => import_protocols2.resolvedPath,
+      serializeDateTime: () => serializeDateTime,
+      serializeFloat: () => serializeFloat,
+      splitEvery: () => splitEvery,
+      splitHeader: () => splitHeader,
+      strictParseByte: () => strictParseByte,
+      strictParseDouble: () => strictParseDouble,
+      strictParseFloat: () => strictParseFloat,
+      strictParseFloat32: () => strictParseFloat32,
+      strictParseInt: () => strictParseInt,
+      strictParseInt32: () => strictParseInt32,
+      strictParseLong: () => strictParseLong,
+      strictParseShort: () => strictParseShort,
+      take: () => take,
+      throwDefaultError: () => throwDefaultError,
+      withBaseException: () => withBaseException
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_stack = require_dist_cjs32();
+    var _Client = class _Client {
+      constructor(config) {
+        this.config = config;
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      send(command, optionsOrCb, cb) {
+        const options = typeof optionsOrCb !== "function" ? optionsOrCb : void 0;
+        const callback = typeof optionsOrCb === "function" ? optionsOrCb : cb;
+        const useHandlerCache = options === void 0 && this.config.cacheMiddleware === true;
+        let handler2;
+        if (useHandlerCache) {
+          if (!this.handlers) {
+            this.handlers = /* @__PURE__ */ new WeakMap();
+          }
+          const handlers = this.handlers;
+          if (handlers.has(command.constructor)) {
+            handler2 = handlers.get(command.constructor);
+          } else {
+            handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+            handlers.set(command.constructor, handler2);
+          }
+        } else {
+          delete this.handlers;
+          handler2 = command.resolveMiddleware(this.middlewareStack, this.config, options);
+        }
+        if (callback) {
+          handler2(command).then(
+            (result) => callback(null, result.output),
+            (err) => callback(err)
+          ).catch(
+            // prevent any errors thrown in the callback from triggering an
+            // unhandled promise rejection
+            () => {
+            }
+          );
+        } else {
+          return handler2(command).then((result) => result.output);
+        }
+      }
+      destroy() {
+        var _a7, _b, _c;
+        (_c = (_b = (_a7 = this.config) == null ? void 0 : _a7.requestHandler) == null ? void 0 : _b.destroy) == null ? void 0 : _c.call(_b);
+        delete this.handlers;
+      }
+    };
+    __name2(_Client, "Client");
+    var Client = _Client;
+    var import_protocols2 = (init_protocols(), __toCommonJS(protocols_exports));
+    var import_types8 = require_dist_cjs();
+    var _Command = class _Command {
+      constructor() {
+        this.middlewareStack = (0, import_middleware_stack.constructStack)();
+      }
+      /**
+       * Factory for Command ClassBuilder.
+       * @internal
+       */
+      static classBuilder() {
+        return new ClassBuilder();
+      }
+      /**
+       * @internal
+       */
+      resolveMiddlewareWithContext(clientStack, configuration, options, {
+        middlewareFn,
+        clientName,
+        commandName,
+        inputFilterSensitiveLog,
+        outputFilterSensitiveLog,
+        smithyContext,
+        additionalContext,
+        CommandCtor
+      }) {
+        for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {
+          this.middlewareStack.use(mw);
+        }
+        const stack = clientStack.concat(this.middlewareStack);
+        const { logger: logger2 } = configuration;
+        const handlerExecutionContext = {
+          logger: logger2,
+          clientName,
+          commandName,
+          inputFilterSensitiveLog,
+          outputFilterSensitiveLog,
+          [import_types8.SMITHY_CONTEXT_KEY]: {
+            commandInstance: this,
+            ...smithyContext
+          },
+          ...additionalContext
+        };
+        const { requestHandler } = configuration;
+        return stack.resolve(
+          (request2) => requestHandler.handle(request2.request, options || {}),
+          handlerExecutionContext
+        );
+      }
+    };
+    __name2(_Command, "Command");
+    var Command = _Command;
+    var _ClassBuilder = class _ClassBuilder {
+      constructor() {
+        this._init = () => {
+        };
+        this._ep = {};
+        this._middlewareFn = () => [];
+        this._commandName = "";
+        this._clientName = "";
+        this._additionalContext = {};
+        this._smithyContext = {};
+        this._inputFilterSensitiveLog = (_) => _;
+        this._outputFilterSensitiveLog = (_) => _;
+        this._serializer = null;
+        this._deserializer = null;
+      }
+      /**
+       * Optional init callback.
+       */
+      init(cb) {
+        this._init = cb;
+      }
+      /**
+       * Set the endpoint parameter instructions.
+       */
+      ep(endpointParameterInstructions) {
+        this._ep = endpointParameterInstructions;
+        return this;
+      }
+      /**
+       * Add any number of middleware.
+       */
+      m(middlewareSupplier) {
+        this._middlewareFn = middlewareSupplier;
+        return this;
+      }
+      /**
+       * Set the initial handler execution context Smithy field.
+       */
+      s(service, operation, smithyContext = {}) {
+        this._smithyContext = {
+          service,
+          operation,
+          ...smithyContext
+        };
+        return this;
+      }
+      /**
+       * Set the initial handler execution context.
+       */
+      c(additionalContext = {}) {
+        this._additionalContext = additionalContext;
+        return this;
+      }
+      /**
+       * Set constant string identifiers for the operation.
+       */
+      n(clientName, commandName) {
+        this._clientName = clientName;
+        this._commandName = commandName;
+        return this;
+      }
+      /**
+       * Set the input and output sensistive log filters.
+       */
+      f(inputFilter = (_) => _, outputFilter = (_) => _) {
+        this._inputFilterSensitiveLog = inputFilter;
+        this._outputFilterSensitiveLog = outputFilter;
+        return this;
+      }
+      /**
+       * Sets the serializer.
+       */
+      ser(serializer) {
+        this._serializer = serializer;
+        return this;
+      }
+      /**
+       * Sets the deserializer.
+       */
+      de(deserializer) {
+        this._deserializer = deserializer;
+        return this;
+      }
+      /**
+       * @returns a Command class with the classBuilder properties.
+       */
+      build() {
+        var _a7;
+        const closure = this;
+        let CommandRef;
+        return CommandRef = (_a7 = class extends Command {
+          /**
+           * @public
+           */
+          constructor(...[input]) {
+            super();
+            this.serialize = closure._serializer;
+            this.deserialize = closure._deserializer;
+            this.input = input ?? {};
+            closure._init(this);
+          }
+          /**
+           * @public
+           */
+          static getEndpointParameterInstructions() {
+            return closure._ep;
+          }
+          /**
+           * @internal
+           */
+          resolveMiddleware(stack, configuration, options) {
+            return this.resolveMiddlewareWithContext(stack, configuration, options, {
+              CommandCtor: CommandRef,
+              middlewareFn: closure._middlewareFn,
+              clientName: closure._clientName,
+              commandName: closure._commandName,
+              inputFilterSensitiveLog: closure._inputFilterSensitiveLog,
+              outputFilterSensitiveLog: closure._outputFilterSensitiveLog,
+              smithyContext: closure._smithyContext,
+              additionalContext: closure._additionalContext
+            });
+          }
+        }, __name2(_a7, "CommandRef"), _a7);
+      }
+    };
+    __name2(_ClassBuilder, "ClassBuilder");
+    var ClassBuilder = _ClassBuilder;
+    var SENSITIVE_STRING = "***SensitiveInformation***";
+    var createAggregatedClient = /* @__PURE__ */ __name2((commands, Client2) => {
+      for (const command of Object.keys(commands)) {
+        const CommandCtor = commands[command];
+        const methodImpl = /* @__PURE__ */ __name2(async function(args, optionsOrCb, cb) {
+          const command2 = new CommandCtor(args);
+          if (typeof optionsOrCb === "function") {
+            this.send(command2, optionsOrCb);
+          } else if (typeof cb === "function") {
+            if (typeof optionsOrCb !== "object")
+              throw new Error(`Expected http options but got ${typeof optionsOrCb}`);
+            this.send(command2, optionsOrCb || {}, cb);
+          } else {
+            return this.send(command2, optionsOrCb);
+          }
+        }, "methodImpl");
+        const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
+        Client2.prototype[methodName] = methodImpl;
+      }
+    }, "createAggregatedClient");
+    var parseBoolean = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "true":
+          return true;
+        case "false":
+          return false;
+        default:
+          throw new Error(`Unable to parse boolean value "${value}"`);
+      }
+    }, "parseBoolean");
+    var expectBoolean = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "number") {
+        if (value === 0 || value === 1) {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (value === 0) {
+          return false;
+        }
+        if (value === 1) {
+          return true;
+        }
+      }
+      if (typeof value === "string") {
+        const lower = value.toLowerCase();
+        if (lower === "false" || lower === "true") {
+          logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));
+        }
+        if (lower === "false") {
+          return false;
+        }
+        if (lower === "true") {
+          return true;
+        }
+      }
+      if (typeof value === "boolean") {
+        return value;
+      }
+      throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);
+    }, "expectBoolean");
+    var expectNumber = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        const parsed = parseFloat(value);
+        if (!Number.isNaN(parsed)) {
+          if (String(parsed) !== String(value)) {
+            logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));
+          }
+          return parsed;
+        }
+      }
+      if (typeof value === "number") {
+        return value;
+      }
+      throw new TypeError(`Expected number, got ${typeof value}: ${value}`);
+    }, "expectNumber");
+    var MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));
+    var expectFloat32 = /* @__PURE__ */ __name2((value) => {
+      const expected = expectNumber(value);
+      if (expected !== void 0 && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {
+        if (Math.abs(expected) > MAX_FLOAT) {
+          throw new TypeError(`Expected 32-bit float, got ${value}`);
+        }
+      }
+      return expected;
+    }, "expectFloat32");
+    var expectLong = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (Number.isInteger(value) && !Number.isNaN(value)) {
+        return value;
+      }
+      throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);
+    }, "expectLong");
+    var expectInt = expectLong;
+    var expectInt32 = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 32), "expectInt32");
+    var expectShort = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 16), "expectShort");
+    var expectByte = /* @__PURE__ */ __name2((value) => expectSizedInt(value, 8), "expectByte");
+    var expectSizedInt = /* @__PURE__ */ __name2((value, size) => {
+      const expected = expectLong(value);
+      if (expected !== void 0 && castInt(expected, size) !== expected) {
+        throw new TypeError(`Expected ${size}-bit integer, got ${value}`);
+      }
+      return expected;
+    }, "expectSizedInt");
+    var castInt = /* @__PURE__ */ __name2((value, size) => {
+      switch (size) {
+        case 32:
+          return Int32Array.of(value)[0];
+        case 16:
+          return Int16Array.of(value)[0];
+        case 8:
+          return Int8Array.of(value)[0];
+      }
+    }, "castInt");
+    var expectNonNull = /* @__PURE__ */ __name2((value, location) => {
+      if (value === null || value === void 0) {
+        if (location) {
+          throw new TypeError(`Expected a non-null value for ${location}`);
+        }
+        throw new TypeError("Expected a non-null value");
+      }
+      return value;
+    }, "expectNonNull");
+    var expectObject = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "object" && !Array.isArray(value)) {
+        return value;
+      }
+      const receivedType = Array.isArray(value) ? "array" : typeof value;
+      throw new TypeError(`Expected object, got ${receivedType}: ${value}`);
+    }, "expectObject");
+    var expectString = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value === "string") {
+        return value;
+      }
+      if (["boolean", "number", "bigint"].includes(typeof value)) {
+        logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));
+        return String(value);
+      }
+      throw new TypeError(`Expected string, got ${typeof value}: ${value}`);
+    }, "expectString");
+    var expectUnion2 = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      const asObject = expectObject(value);
+      const setKeys = Object.entries(asObject).filter(([, v]) => v != null).map(([k]) => k);
+      if (setKeys.length === 0) {
+        throw new TypeError(`Unions must have exactly one non-null member. None were found.`);
+      }
+      if (setKeys.length > 1) {
+        throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);
+      }
+      return asObject;
+    }, "expectUnion");
+    var strictParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectNumber(parseNumber(value));
+      }
+      return expectNumber(value);
+    }, "strictParseDouble");
+    var strictParseFloat = strictParseDouble;
+    var strictParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return expectFloat32(parseNumber(value));
+      }
+      return expectFloat32(value);
+    }, "strictParseFloat32");
+    var NUMBER_REGEX = /(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g;
+    var parseNumber = /* @__PURE__ */ __name2((value) => {
+      const matches = value.match(NUMBER_REGEX);
+      if (matches === null || matches[0].length !== value.length) {
+        throw new TypeError(`Expected real number, got implicit NaN`);
+      }
+      return parseFloat(value);
+    }, "parseNumber");
+    var limitedParseDouble = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectNumber(value);
+    }, "limitedParseDouble");
+    var handleFloat = limitedParseDouble;
+    var limitedParseFloat = limitedParseDouble;
+    var limitedParseFloat32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value == "string") {
+        return parseFloatString(value);
+      }
+      return expectFloat32(value);
+    }, "limitedParseFloat32");
+    var parseFloatString = /* @__PURE__ */ __name2((value) => {
+      switch (value) {
+        case "NaN":
+          return NaN;
+        case "Infinity":
+          return Infinity;
+        case "-Infinity":
+          return -Infinity;
+        default:
+          throw new Error(`Unable to parse float value: ${value}`);
+      }
+    }, "parseFloatString");
+    var strictParseLong = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectLong(parseNumber(value));
+      }
+      return expectLong(value);
+    }, "strictParseLong");
+    var strictParseInt = strictParseLong;
+    var strictParseInt32 = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectInt32(parseNumber(value));
+      }
+      return expectInt32(value);
+    }, "strictParseInt32");
+    var strictParseShort = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectShort(parseNumber(value));
+      }
+      return expectShort(value);
+    }, "strictParseShort");
+    var strictParseByte = /* @__PURE__ */ __name2((value) => {
+      if (typeof value === "string") {
+        return expectByte(parseNumber(value));
+      }
+      return expectByte(value);
+    }, "strictParseByte");
+    var stackTraceWarning = /* @__PURE__ */ __name2((message) => {
+      return String(new TypeError(message).stack || message).split("\n").slice(0, 5).filter((s) => !s.includes("stackTraceWarning")).join("\n");
+    }, "stackTraceWarning");
+    var logger = {
+      warn: console.warn
+    };
+    var DAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
+    var MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
+    function dateToUtcString(date) {
+      const year = date.getUTCFullYear();
+      const month = date.getUTCMonth();
+      const dayOfWeek = date.getUTCDay();
+      const dayOfMonthInt = date.getUTCDate();
+      const hoursInt = date.getUTCHours();
+      const minutesInt = date.getUTCMinutes();
+      const secondsInt = date.getUTCSeconds();
+      const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;
+      const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;
+      const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;
+      const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;
+      return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;
+    }
+    __name2(dateToUtcString, "dateToUtcString");
+    var RFC3339 = new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/);
+    var parseRfc3339DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+    }, "parseRfc3339DateTime");
+    var RFC3339_WITH_OFFSET = new RegExp(
+      /^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/
+    );
+    var parseRfc3339DateTimeWithOffset = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-3339 date-times must be expressed as strings");
+      }
+      const match = RFC3339_WITH_OFFSET.exec(value);
+      if (!match) {
+        throw new TypeError("Invalid RFC-3339 date-time value");
+      }
+      const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;
+      const year = strictParseShort(stripLeadingZeroes(yearStr));
+      const month = parseDateValue(monthStr, "month", 1, 12);
+      const day = parseDateValue(dayStr, "day", 1, 31);
+      const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });
+      if (offsetStr.toUpperCase() != "Z") {
+        date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));
+      }
+      return date;
+    }, "parseRfc3339DateTimeWithOffset");
+    var IMF_FIXDATE = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var RFC_850_DATE = new RegExp(
+      /^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/
+    );
+    var ASC_TIME = new RegExp(
+      /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/
+    );
+    var parseRfc7231DateTime = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      if (typeof value !== "string") {
+        throw new TypeError("RFC-7231 date-times must be expressed as strings");
+      }
+      let match = IMF_FIXDATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr, "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      match = RFC_850_DATE.exec(value);
+      if (match) {
+        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;
+        return adjustRfc850Year(
+          buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, "day", 1, 31), {
+            hours,
+            minutes,
+            seconds,
+            fractionalMilliseconds
+          })
+        );
+      }
+      match = ASC_TIME.exec(value);
+      if (match) {
+        const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;
+        return buildDate(
+          strictParseShort(stripLeadingZeroes(yearStr)),
+          parseMonthByShortName(monthStr),
+          parseDateValue(dayStr.trimLeft(), "day", 1, 31),
+          { hours, minutes, seconds, fractionalMilliseconds }
+        );
+      }
+      throw new TypeError("Invalid RFC-7231 date-time value");
+    }, "parseRfc7231DateTime");
+    var parseEpochTimestamp = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return void 0;
+      }
+      let valueAsDouble;
+      if (typeof value === "number") {
+        valueAsDouble = value;
+      } else if (typeof value === "string") {
+        valueAsDouble = strictParseDouble(value);
+      } else if (typeof value === "object" && value.tag === 1) {
+        valueAsDouble = value.value;
+      } else {
+        throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");
+      }
+      if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {
+        throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");
+      }
+      return new Date(Math.round(valueAsDouble * 1e3));
+    }, "parseEpochTimestamp");
+    var buildDate = /* @__PURE__ */ __name2((year, month, day, time) => {
+      const adjustedMonth = month - 1;
+      validateDayOfMonth(year, adjustedMonth, day);
+      return new Date(
+        Date.UTC(
+          year,
+          adjustedMonth,
+          day,
+          parseDateValue(time.hours, "hour", 0, 23),
+          parseDateValue(time.minutes, "minute", 0, 59),
+          // seconds can go up to 60 for leap seconds
+          parseDateValue(time.seconds, "seconds", 0, 60),
+          parseMilliseconds(time.fractionalMilliseconds)
+        )
+      );
+    }, "buildDate");
+    var parseTwoDigitYear = /* @__PURE__ */ __name2((value) => {
+      const thisYear = (/* @__PURE__ */ new Date()).getUTCFullYear();
+      const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));
+      if (valueInThisCentury < thisYear) {
+        return valueInThisCentury + 100;
+      }
+      return valueInThisCentury;
+    }, "parseTwoDigitYear");
+    var FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1e3;
+    var adjustRfc850Year = /* @__PURE__ */ __name2((input) => {
+      if (input.getTime() - (/* @__PURE__ */ new Date()).getTime() > FIFTY_YEARS_IN_MILLIS) {
+        return new Date(
+          Date.UTC(
+            input.getUTCFullYear() - 100,
+            input.getUTCMonth(),
+            input.getUTCDate(),
+            input.getUTCHours(),
+            input.getUTCMinutes(),
+            input.getUTCSeconds(),
+            input.getUTCMilliseconds()
+          )
+        );
+      }
+      return input;
+    }, "adjustRfc850Year");
+    var parseMonthByShortName = /* @__PURE__ */ __name2((value) => {
+      const monthIdx = MONTHS.indexOf(value);
+      if (monthIdx < 0) {
+        throw new TypeError(`Invalid month: ${value}`);
+      }
+      return monthIdx + 1;
+    }, "parseMonthByShortName");
+    var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+    var validateDayOfMonth = /* @__PURE__ */ __name2((year, month, day) => {
+      let maxDays = DAYS_IN_MONTH[month];
+      if (month === 1 && isLeapYear(year)) {
+        maxDays = 29;
+      }
+      if (day > maxDays) {
+        throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);
+      }
+    }, "validateDayOfMonth");
+    var isLeapYear = /* @__PURE__ */ __name2((year) => {
+      return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
+    }, "isLeapYear");
+    var parseDateValue = /* @__PURE__ */ __name2((value, type, lower, upper) => {
+      const dateVal = strictParseByte(stripLeadingZeroes(value));
+      if (dateVal < lower || dateVal > upper) {
+        throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);
+      }
+      return dateVal;
+    }, "parseDateValue");
+    var parseMilliseconds = /* @__PURE__ */ __name2((value) => {
+      if (value === null || value === void 0) {
+        return 0;
+      }
+      return strictParseFloat32("0." + value) * 1e3;
+    }, "parseMilliseconds");
+    var parseOffsetToMilliseconds = /* @__PURE__ */ __name2((value) => {
+      const directionStr = value[0];
+      let direction = 1;
+      if (directionStr == "+") {
+        direction = 1;
+      } else if (directionStr == "-") {
+        direction = -1;
+      } else {
+        throw new TypeError(`Offset direction, ${directionStr}, must be "+" or "-"`);
+      }
+      const hour = Number(value.substring(1, 3));
+      const minute = Number(value.substring(4, 6));
+      return direction * (hour * 60 + minute) * 60 * 1e3;
+    }, "parseOffsetToMilliseconds");
+    var stripLeadingZeroes = /* @__PURE__ */ __name2((value) => {
+      let idx = 0;
+      while (idx < value.length - 1 && value.charAt(idx) === "0") {
+        idx++;
+      }
+      if (idx === 0) {
+        return value;
+      }
+      return value.slice(idx);
+    }, "stripLeadingZeroes");
+    var _ServiceException = class _ServiceException2 extends Error {
+      constructor(options) {
+        super(options.message);
+        Object.setPrototypeOf(this, _ServiceException2.prototype);
+        this.name = options.name;
+        this.$fault = options.$fault;
+        this.$metadata = options.$metadata;
+      }
+      /**
+       * Checks if a value is an instance of ServiceException (duck typed)
+       */
+      static isInstance(value) {
+        if (!value)
+          return false;
+        const candidate = value;
+        return Boolean(candidate.$fault) && Boolean(candidate.$metadata) && (candidate.$fault === "client" || candidate.$fault === "server");
+      }
+    };
+    __name2(_ServiceException, "ServiceException");
+    var ServiceException = _ServiceException;
+    var decorateServiceException = /* @__PURE__ */ __name2((exception, additions = {}) => {
+      Object.entries(additions).filter(([, v]) => v !== void 0).forEach(([k, v]) => {
+        if (exception[k] == void 0 || exception[k] === "") {
+          exception[k] = v;
+        }
+      });
+      const message = exception.message || exception.Message || "UnknownError";
+      exception.message = message;
+      delete exception.Message;
+      return exception;
+    }, "decorateServiceException");
+    var throwDefaultError = /* @__PURE__ */ __name2(({ output, parsedBody, exceptionCtor, errorCode }) => {
+      const $metadata = deserializeMetadata(output);
+      const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + "" : void 0;
+      const response = new exceptionCtor({
+        name: (parsedBody == null ? void 0 : parsedBody.code) || (parsedBody == null ? void 0 : parsedBody.Code) || errorCode || statusCode || "UnknownError",
+        $fault: "client",
+        $metadata
+      });
+      throw decorateServiceException(response, parsedBody);
+    }, "throwDefaultError");
+    var withBaseException = /* @__PURE__ */ __name2((ExceptionCtor) => {
+      return ({ output, parsedBody, errorCode }) => {
+        throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });
+      };
+    }, "withBaseException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var loadConfigsForDefaultMode = /* @__PURE__ */ __name2((mode) => {
+      switch (mode) {
+        case "standard":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "in-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 1100
+          };
+        case "cross-region":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3100
+          };
+        case "mobile":
+          return {
+            retryMode: "standard",
+            connectionTimeout: 3e4
+          };
+        default:
+          return {};
+      }
+    }, "loadConfigsForDefaultMode");
+    var warningEmitted2 = false;
+    var emitWarningIfUnsupportedVersion2 = /* @__PURE__ */ __name2((version3) => {
+      if (version3 && !warningEmitted2 && parseInt(version3.substring(1, version3.indexOf("."))) < 16) {
+        warningEmitted2 = true;
+      }
+    }, "emitWarningIfUnsupportedVersion");
+    var getChecksumConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const checksumAlgorithms = [];
+      for (const id in import_types8.AlgorithmId) {
+        const algorithmId = import_types8.AlgorithmId[id];
+        if (runtimeConfig[algorithmId] === void 0) {
+          continue;
+        }
+        checksumAlgorithms.push({
+          algorithmId: () => algorithmId,
+          checksumConstructor: () => runtimeConfig[algorithmId]
+        });
+      }
+      return {
+        _checksumAlgorithms: checksumAlgorithms,
+        addChecksumAlgorithm(algo) {
+          this._checksumAlgorithms.push(algo);
+        },
+        checksumAlgorithms() {
+          return this._checksumAlgorithms;
+        }
+      };
+    }, "getChecksumConfiguration");
+    var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name2((clientConfig) => {
+      const runtimeConfig = {};
+      clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {
+        runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();
+      });
+      return runtimeConfig;
+    }, "resolveChecksumRuntimeConfig");
+    var getRetryConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let _retryStrategy = runtimeConfig.retryStrategy;
+      return {
+        setRetryStrategy(retryStrategy) {
+          _retryStrategy = retryStrategy;
+        },
+        retryStrategy() {
+          return _retryStrategy;
+        }
+      };
+    }, "getRetryConfiguration");
+    var resolveRetryRuntimeConfig = /* @__PURE__ */ __name2((retryStrategyConfiguration) => {
+      const runtimeConfig = {};
+      runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();
+      return runtimeConfig;
+    }, "resolveRetryRuntimeConfig");
+    var getDefaultExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      return {
+        ...getChecksumConfiguration(runtimeConfig),
+        ...getRetryConfiguration(runtimeConfig)
+      };
+    }, "getDefaultExtensionConfiguration");
+    var getDefaultClientConfiguration = getDefaultExtensionConfiguration;
+    var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        ...resolveChecksumRuntimeConfig(config),
+        ...resolveRetryRuntimeConfig(config)
+      };
+    }, "resolveDefaultRuntimeConfig");
+    var getArrayIfSingleItem = /* @__PURE__ */ __name2((mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray], "getArrayIfSingleItem");
+    var getValueFromTextNode2 = /* @__PURE__ */ __name2((obj) => {
+      const textNodeName = "#text";
+      for (const key in obj) {
+        if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== void 0) {
+          obj[key] = obj[key][textNodeName];
+        } else if (typeof obj[key] === "object" && obj[key] !== null) {
+          obj[key] = getValueFromTextNode2(obj[key]);
+        }
+      }
+      return obj;
+    }, "getValueFromTextNode");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => {
+      return value != null;
+    }, "isSerializableHeaderValue");
+    var LazyJsonString = /* @__PURE__ */ __name2(function LazyJsonString2(val2) {
+      const str = Object.assign(new String(val2), {
+        deserializeJSON() {
+          return JSON.parse(String(val2));
+        },
+        toString() {
+          return String(val2);
+        },
+        toJSON() {
+          return String(val2);
+        }
+      });
+      return str;
+    }, "LazyJsonString");
+    LazyJsonString.from = (object) => {
+      if (object && typeof object === "object" && (object instanceof LazyJsonString || "deserializeJSON" in object)) {
+        return object;
+      } else if (typeof object === "string" || Object.getPrototypeOf(object) === String.prototype) {
+        return LazyJsonString(String(object));
+      }
+      return LazyJsonString(JSON.stringify(object));
+    };
+    LazyJsonString.fromObject = LazyJsonString.from;
+    var _NoOpLogger = class _NoOpLogger {
+      trace() {
+      }
+      debug() {
+      }
+      info() {
+      }
+      warn() {
+      }
+      error() {
+      }
+    };
+    __name2(_NoOpLogger, "NoOpLogger");
+    var NoOpLogger = _NoOpLogger;
+    function map(arg0, arg1, arg2) {
+      let target;
+      let filter;
+      let instructions;
+      if (typeof arg1 === "undefined" && typeof arg2 === "undefined") {
+        target = {};
+        instructions = arg0;
+      } else {
+        target = arg0;
+        if (typeof arg1 === "function") {
+          filter = arg1;
+          instructions = arg2;
+          return mapWithFilter(target, filter, instructions);
+        } else {
+          instructions = arg1;
+        }
+      }
+      for (const key of Object.keys(instructions)) {
+        if (!Array.isArray(instructions[key])) {
+          target[key] = instructions[key];
+          continue;
+        }
+        applyInstruction(target, null, instructions, key);
+      }
+      return target;
+    }
+    __name2(map, "map");
+    var convertMap = /* @__PURE__ */ __name2((target) => {
+      const output = {};
+      for (const [k, v] of Object.entries(target || {})) {
+        output[k] = [, v];
+      }
+      return output;
+    }, "convertMap");
+    var take = /* @__PURE__ */ __name2((source, instructions) => {
+      const out = {};
+      for (const key in instructions) {
+        applyInstruction(out, source, instructions, key);
+      }
+      return out;
+    }, "take");
+    var mapWithFilter = /* @__PURE__ */ __name2((target, filter, instructions) => {
+      return map(
+        target,
+        Object.entries(instructions).reduce(
+          (_instructions, [key, value]) => {
+            if (Array.isArray(value)) {
+              _instructions[key] = value;
+            } else {
+              if (typeof value === "function") {
+                _instructions[key] = [filter, value()];
+              } else {
+                _instructions[key] = [filter, value];
+              }
+            }
+            return _instructions;
+          },
+          {}
+        )
+      );
+    }, "mapWithFilter");
+    var applyInstruction = /* @__PURE__ */ __name2((target, source, instructions, targetKey) => {
+      if (source !== null) {
+        let instruction = instructions[targetKey];
+        if (typeof instruction === "function") {
+          instruction = [, instruction];
+        }
+        const [filter2 = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;
+        if (typeof filter2 === "function" && filter2(source[sourceKey]) || typeof filter2 !== "function" && !!filter2) {
+          target[targetKey] = valueFn(source[sourceKey]);
+        }
+        return;
+      }
+      let [filter, value] = instructions[targetKey];
+      if (typeof value === "function") {
+        let _value;
+        const defaultFilterPassed = filter === void 0 && (_value = value()) != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(void 0) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed) {
+          target[targetKey] = _value;
+        } else if (customFilterPassed) {
+          target[targetKey] = value();
+        }
+      } else {
+        const defaultFilterPassed = filter === void 0 && value != null;
+        const customFilterPassed = typeof filter === "function" && !!filter(value) || typeof filter !== "function" && !!filter;
+        if (defaultFilterPassed || customFilterPassed) {
+          target[targetKey] = value;
+        }
+      }
+    }, "applyInstruction");
+    var nonNullish = /* @__PURE__ */ __name2((_) => _ != null, "nonNullish");
+    var pass = /* @__PURE__ */ __name2((_) => _, "pass");
+    function quoteHeader(part) {
+      if (part.includes(",") || part.includes('"')) {
+        part = `"${part.replace(/"/g, '\\"')}"`;
+      }
+      return part;
+    }
+    __name2(quoteHeader, "quoteHeader");
+    var serializeFloat = /* @__PURE__ */ __name2((value) => {
+      if (value !== value) {
+        return "NaN";
+      }
+      switch (value) {
+        case Infinity:
+          return "Infinity";
+        case -Infinity:
+          return "-Infinity";
+        default:
+          return value;
+      }
+    }, "serializeFloat");
+    var serializeDateTime = /* @__PURE__ */ __name2((date) => date.toISOString().replace(".000Z", "Z"), "serializeDateTime");
+    var _json = /* @__PURE__ */ __name2((obj) => {
+      if (obj == null) {
+        return {};
+      }
+      if (Array.isArray(obj)) {
+        return obj.filter((_) => _ != null).map(_json);
+      }
+      if (typeof obj === "object") {
+        const target = {};
+        for (const key of Object.keys(obj)) {
+          if (obj[key] == null) {
+            continue;
+          }
+          target[key] = _json(obj[key]);
+        }
+        return target;
+      }
+      return obj;
+    }, "_json");
+    function splitEvery(value, delimiter, numDelimiters) {
+      if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) {
+        throw new Error("Invalid number of delimiters (" + numDelimiters + ") for splitEvery.");
+      }
+      const segments = value.split(delimiter);
+      if (numDelimiters === 1) {
+        return segments;
+      }
+      const compoundSegments = [];
+      let currentSegment = "";
+      for (let i = 0; i < segments.length; i++) {
+        if (currentSegment === "") {
+          currentSegment = segments[i];
+        } else {
+          currentSegment += delimiter + segments[i];
+        }
+        if ((i + 1) % numDelimiters === 0) {
+          compoundSegments.push(currentSegment);
+          currentSegment = "";
+        }
+      }
+      if (currentSegment !== "") {
+        compoundSegments.push(currentSegment);
+      }
+      return compoundSegments;
+    }
+    __name2(splitEvery, "splitEvery");
+    var splitHeader = /* @__PURE__ */ __name2((value) => {
+      const z = value.length;
+      const values = [];
+      let withinQuotes = false;
+      let prevChar = void 0;
+      let anchor = 0;
+      for (let i = 0; i < z; ++i) {
+        const char = value[i];
+        switch (char) {
+          case `"`:
+            if (prevChar !== "\\") {
+              withinQuotes = !withinQuotes;
+            }
+            break;
+          case ",":
+            if (!withinQuotes) {
+              values.push(value.slice(anchor, i));
+              anchor = i + 1;
+            }
+            break;
+          default:
+        }
+        prevChar = char;
+      }
+      values.push(value.slice(anchor));
+      return values.map((v) => {
+        v = v.trim();
+        const z2 = v.length;
+        if (z2 < 2) {
+          return v;
+        }
+        if (v[0] === `"` && v[z2 - 1] === `"`) {
+          v = v.slice(1, z2 - 1);
+        }
+        return v.replace(/\\"/g, '"');
+      });
+    }, "splitHeader");
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js
+var require_isStreamingPayload = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.isStreamingPayload = void 0;
+    var stream_1 = require("stream");
+    var isStreamingPayload = (request2) => (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof stream_1.Readable || typeof ReadableStream !== "undefined" && (request2 === null || request2 === void 0 ? void 0 : request2.body) instanceof ReadableStream;
+    exports2.isStreamingPayload = isStreamingPayload;
+  }
+});
+
+// ../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js
+var require_dist_cjs34 = __commonJS({
+  "../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,
+      CONFIG_MAX_ATTEMPTS: () => CONFIG_MAX_ATTEMPTS,
+      CONFIG_RETRY_MODE: () => CONFIG_RETRY_MODE,
+      ENV_MAX_ATTEMPTS: () => ENV_MAX_ATTEMPTS,
+      ENV_RETRY_MODE: () => ENV_RETRY_MODE,
+      NODE_MAX_ATTEMPT_CONFIG_OPTIONS: () => NODE_MAX_ATTEMPT_CONFIG_OPTIONS,
+      NODE_RETRY_MODE_CONFIG_OPTIONS: () => NODE_RETRY_MODE_CONFIG_OPTIONS,
+      StandardRetryStrategy: () => StandardRetryStrategy,
+      defaultDelayDecider: () => defaultDelayDecider,
+      defaultRetryDecider: () => defaultRetryDecider,
+      getOmitRetryHeadersPlugin: () => getOmitRetryHeadersPlugin,
+      getRetryAfterHint: () => getRetryAfterHint,
+      getRetryPlugin: () => getRetryPlugin,
+      omitRetryHeadersMiddleware: () => omitRetryHeadersMiddleware,
+      omitRetryHeadersMiddlewareOptions: () => omitRetryHeadersMiddlewareOptions,
+      resolveRetryConfig: () => resolveRetryConfig,
+      retryMiddleware: () => retryMiddleware,
+      retryMiddlewareOptions: () => retryMiddlewareOptions
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var import_util_retry = require_dist_cjs31();
+    var getDefaultRetryQuota = /* @__PURE__ */ __name2((initialRetryTokens, options) => {
+      const MAX_CAPACITY = initialRetryTokens;
+      const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT;
+      const retryCost = (options == null ? void 0 : options.retryCost) ?? import_util_retry.RETRY_COST;
+      const timeoutRetryCost = (options == null ? void 0 : options.timeoutRetryCost) ?? import_util_retry.TIMEOUT_RETRY_COST;
+      let availableCapacity = initialRetryTokens;
+      const getCapacityAmount = /* @__PURE__ */ __name2((error) => error.name === "TimeoutError" ? timeoutRetryCost : retryCost, "getCapacityAmount");
+      const hasRetryTokens = /* @__PURE__ */ __name2((error) => getCapacityAmount(error) <= availableCapacity, "hasRetryTokens");
+      const retrieveRetryTokens = /* @__PURE__ */ __name2((error) => {
+        if (!hasRetryTokens(error)) {
+          throw new Error("No retry token available");
+        }
+        const capacityAmount = getCapacityAmount(error);
+        availableCapacity -= capacityAmount;
+        return capacityAmount;
+      }, "retrieveRetryTokens");
+      const releaseRetryTokens = /* @__PURE__ */ __name2((capacityReleaseAmount) => {
+        availableCapacity += capacityReleaseAmount ?? noRetryIncrement;
+        availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);
+      }, "releaseRetryTokens");
+      return Object.freeze({
+        hasRetryTokens,
+        retrieveRetryTokens,
+        releaseRetryTokens
+      });
+    }, "getDefaultRetryQuota");
+    var defaultDelayDecider = /* @__PURE__ */ __name2((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), "defaultDelayDecider");
+    var import_service_error_classification = require_dist_cjs30();
+    var defaultRetryDecider = /* @__PURE__ */ __name2((error) => {
+      if (!error) {
+        return false;
+      }
+      return (0, import_service_error_classification.isRetryableByTrait)(error) || (0, import_service_error_classification.isClockSkewError)(error) || (0, import_service_error_classification.isThrottlingError)(error) || (0, import_service_error_classification.isTransientError)(error);
+    }, "defaultRetryDecider");
+    var asSdkError = /* @__PURE__ */ __name2((error) => {
+      if (error instanceof Error)
+        return error;
+      if (error instanceof Object)
+        return Object.assign(new Error(), error);
+      if (typeof error === "string")
+        return new Error(error);
+      return new Error(`AWS SDK error wrapper for ${error}`);
+    }, "asSdkError");
+    var _StandardRetryStrategy = class _StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        this.maxAttemptsProvider = maxAttemptsProvider;
+        this.mode = import_util_retry.RETRY_MODES.STANDARD;
+        this.retryDecider = (options == null ? void 0 : options.retryDecider) ?? defaultRetryDecider;
+        this.delayDecider = (options == null ? void 0 : options.delayDecider) ?? defaultDelayDecider;
+        this.retryQuota = (options == null ? void 0 : options.retryQuota) ?? getDefaultRetryQuota(import_util_retry.INITIAL_RETRY_TOKENS);
+      }
+      shouldRetry(error, attempts, maxAttempts) {
+        return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);
+      }
+      async getMaxAttempts() {
+        let maxAttempts;
+        try {
+          maxAttempts = await this.maxAttemptsProvider();
+        } catch (error) {
+          maxAttempts = import_util_retry.DEFAULT_MAX_ATTEMPTS;
+        }
+        return maxAttempts;
+      }
+      async retry(next, args, options) {
+        let retryTokenAmount;
+        let attempts = 0;
+        let totalDelay = 0;
+        const maxAttempts = await this.getMaxAttempts();
+        const { request: request2 } = args;
+        if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            if (options == null ? void 0 : options.beforeRequest) {
+              await options.beforeRequest();
+            }
+            const { response, output } = await next(args);
+            if (options == null ? void 0 : options.afterRequest) {
+              options.afterRequest(response);
+            }
+            this.retryQuota.releaseRetryTokens(retryTokenAmount);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalDelay;
+            return { response, output };
+          } catch (e) {
+            const err = asSdkError(e);
+            attempts++;
+            if (this.shouldRetry(err, attempts, maxAttempts)) {
+              retryTokenAmount = this.retryQuota.retrieveRetryTokens(err);
+              const delayFromDecider = this.delayDecider(
+                (0, import_service_error_classification.isThrottlingError)(err) ? import_util_retry.THROTTLING_RETRY_DELAY_BASE : import_util_retry.DEFAULT_RETRY_DELAY_BASE,
+                attempts
+              );
+              const delayFromResponse = getDelayFromRetryAfterHeader(err.$response);
+              const delay = Math.max(delayFromResponse || 0, delayFromDecider);
+              totalDelay += delay;
+              await new Promise((resolve6) => setTimeout(resolve6, delay));
+              continue;
+            }
+            if (!err.$metadata) {
+              err.$metadata = {};
+            }
+            err.$metadata.attempts = attempts;
+            err.$metadata.totalRetryDelay = totalDelay;
+            throw err;
+          }
+        }
+      }
+    };
+    __name2(_StandardRetryStrategy, "StandardRetryStrategy");
+    var StandardRetryStrategy = _StandardRetryStrategy;
+    var getDelayFromRetryAfterHeader = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return retryAfterSeconds * 1e3;
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate.getTime() - Date.now();
+    }, "getDelayFromRetryAfterHeader");
+    var _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy extends StandardRetryStrategy {
+      constructor(maxAttemptsProvider, options) {
+        const { rateLimiter, ...superOptions } = options ?? {};
+        super(maxAttemptsProvider, superOptions);
+        this.rateLimiter = rateLimiter ?? new import_util_retry.DefaultRateLimiter();
+        this.mode = import_util_retry.RETRY_MODES.ADAPTIVE;
+      }
+      async retry(next, args) {
+        return super.retry(next, args, {
+          beforeRequest: async () => {
+            return this.rateLimiter.getSendToken();
+          },
+          afterRequest: (response) => {
+            this.rateLimiter.updateClientSendingRate(response);
+          }
+        });
+      }
+    };
+    __name2(_AdaptiveRetryStrategy, "AdaptiveRetryStrategy");
+    var AdaptiveRetryStrategy = _AdaptiveRetryStrategy;
+    var import_util_middleware3 = require_dist_cjs10();
+    var ENV_MAX_ATTEMPTS = "AWS_MAX_ATTEMPTS";
+    var CONFIG_MAX_ATTEMPTS = "max_attempts";
+    var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        const value = env2[ENV_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      configFileSelector: (profile) => {
+        const value = profile[CONFIG_MAX_ATTEMPTS];
+        if (!value)
+          return void 0;
+        const maxAttempt = parseInt(value);
+        if (Number.isNaN(maxAttempt)) {
+          throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got "${value}"`);
+        }
+        return maxAttempt;
+      },
+      default: import_util_retry.DEFAULT_MAX_ATTEMPTS
+    };
+    var resolveRetryConfig = /* @__PURE__ */ __name2((input) => {
+      const { retryStrategy } = input;
+      const maxAttempts = (0, import_util_middleware3.normalizeProvider)(input.maxAttempts ?? import_util_retry.DEFAULT_MAX_ATTEMPTS);
+      return {
+        ...input,
+        maxAttempts,
+        retryStrategy: async () => {
+          if (retryStrategy) {
+            return retryStrategy;
+          }
+          const retryMode = await (0, import_util_middleware3.normalizeProvider)(input.retryMode)();
+          if (retryMode === import_util_retry.RETRY_MODES.ADAPTIVE) {
+            return new import_util_retry.AdaptiveRetryStrategy(maxAttempts);
+          }
+          return new import_util_retry.StandardRetryStrategy(maxAttempts);
+        }
+      };
+    }, "resolveRetryConfig");
+    var ENV_RETRY_MODE = "AWS_RETRY_MODE";
+    var CONFIG_RETRY_MODE = "retry_mode";
+    var NODE_RETRY_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_RETRY_MODE],
+      configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],
+      default: import_util_retry.DEFAULT_RETRY_MODE
+    };
+    var omitRetryHeadersMiddleware = /* @__PURE__ */ __name2(() => (next) => async (args) => {
+      const { request: request2 } = args;
+      if (import_protocol_http8.HttpRequest.isInstance(request2)) {
+        delete request2.headers[import_util_retry.INVOCATION_ID_HEADER];
+        delete request2.headers[import_util_retry.REQUEST_HEADER];
+      }
+      return next(args);
+    }, "omitRetryHeadersMiddleware");
+    var omitRetryHeadersMiddlewareOptions = {
+      name: "omitRetryHeadersMiddleware",
+      tags: ["RETRY", "HEADERS", "OMIT_RETRY_HEADERS"],
+      relation: "before",
+      toMiddleware: "awsAuthMiddleware",
+      override: true
+    };
+    var getOmitRetryHeadersPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions);
+      }
+    }), "getOmitRetryHeadersPlugin");
+    var import_smithy_client4 = require_dist_cjs33();
+    var import_isStreamingPayload = require_isStreamingPayload();
+    var retryMiddleware = /* @__PURE__ */ __name2((options) => (next, context) => async (args) => {
+      var _a7;
+      let retryStrategy = await options.retryStrategy();
+      const maxAttempts = await options.maxAttempts();
+      if (isRetryStrategyV2(retryStrategy)) {
+        retryStrategy = retryStrategy;
+        let retryToken = await retryStrategy.acquireInitialRetryToken(context["partition_id"]);
+        let lastError = new Error();
+        let attempts = 0;
+        let totalRetryDelay = 0;
+        const { request: request2 } = args;
+        const isRequest = import_protocol_http8.HttpRequest.isInstance(request2);
+        if (isRequest) {
+          request2.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();
+        }
+        while (true) {
+          try {
+            if (isRequest) {
+              request2.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;
+            }
+            const { response, output } = await next(args);
+            retryStrategy.recordSuccess(retryToken);
+            output.$metadata.attempts = attempts + 1;
+            output.$metadata.totalRetryDelay = totalRetryDelay;
+            return { response, output };
+          } catch (e) {
+            const retryErrorInfo = getRetryErrorInfo(e);
+            lastError = asSdkError(e);
+            if (isRequest && (0, import_isStreamingPayload.isStreamingPayload)(request2)) {
+              (_a7 = context.logger instanceof import_smithy_client4.NoOpLogger ? console : context.logger) == null ? void 0 : _a7.warn(
+                "An error was encountered in a non-retryable streaming request."
+              );
+              throw lastError;
+            }
+            try {
+              retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);
+            } catch (refreshError) {
+              if (!lastError.$metadata) {
+                lastError.$metadata = {};
+              }
+              lastError.$metadata.attempts = attempts + 1;
+              lastError.$metadata.totalRetryDelay = totalRetryDelay;
+              throw lastError;
+            }
+            attempts = retryToken.getRetryCount();
+            const delay = retryToken.getRetryDelay();
+            totalRetryDelay += delay;
+            await new Promise((resolve6) => setTimeout(resolve6, delay));
+          }
+        }
+      } else {
+        retryStrategy = retryStrategy;
+        if (retryStrategy == null ? void 0 : retryStrategy.mode)
+          context.userAgent = [...context.userAgent || [], ["cfg/retry-mode", retryStrategy.mode]];
+        return retryStrategy.retry(next, args);
+      }
+    }, "retryMiddleware");
+    var isRetryStrategyV2 = /* @__PURE__ */ __name2((retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== "undefined" && typeof retryStrategy.refreshRetryTokenForRetry !== "undefined" && typeof retryStrategy.recordSuccess !== "undefined", "isRetryStrategyV2");
+    var getRetryErrorInfo = /* @__PURE__ */ __name2((error) => {
+      const errorInfo = {
+        error,
+        errorType: getRetryErrorType(error)
+      };
+      const retryAfterHint = getRetryAfterHint(error.$response);
+      if (retryAfterHint) {
+        errorInfo.retryAfterHint = retryAfterHint;
+      }
+      return errorInfo;
+    }, "getRetryErrorInfo");
+    var getRetryErrorType = /* @__PURE__ */ __name2((error) => {
+      if ((0, import_service_error_classification.isThrottlingError)(error))
+        return "THROTTLING";
+      if ((0, import_service_error_classification.isTransientError)(error))
+        return "TRANSIENT";
+      if ((0, import_service_error_classification.isServerError)(error))
+        return "SERVER_ERROR";
+      return "CLIENT_ERROR";
+    }, "getRetryErrorType");
+    var retryMiddlewareOptions = {
+      name: "retryMiddleware",
+      tags: ["RETRY"],
+      step: "finalizeRequest",
+      priority: "high",
+      override: true
+    };
+    var getRetryPlugin = /* @__PURE__ */ __name2((options) => ({
+      applyToStack: (clientStack) => {
+        clientStack.add(retryMiddleware(options), retryMiddlewareOptions);
+      }
+    }), "getRetryPlugin");
+    var getRetryAfterHint = /* @__PURE__ */ __name2((response) => {
+      if (!import_protocol_http8.HttpResponse.isInstance(response))
+        return;
+      const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === "retry-after");
+      if (!retryAfterHeaderName)
+        return;
+      const retryAfter = response.headers[retryAfterHeaderName];
+      const retryAfterSeconds = Number(retryAfter);
+      if (!Number.isNaN(retryAfterSeconds))
+        return new Date(retryAfterSeconds * 1e3);
+      const retryAfterDate = new Date(retryAfter);
+      return retryAfterDate;
+    }, "getRetryAfterHint");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js
+var warningEmitted, emitWarningIfUnsupportedVersion;
+var init_emitWarningIfUnsupportedVersion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js"() {
+    warningEmitted = false;
+    emitWarningIfUnsupportedVersion = (version3) => {
+      if (version3 && !warningEmitted && parseInt(version3.substring(1, version3.indexOf("."))) < 18) {
+        warningEmitted = true;
+        process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
+no longer support Node.js 16.x on January 6, 2025.
+
+To continue receiving updates to AWS services, bug fixes, and security
+updates please upgrade to a supported Node.js LTS version.
+
+More information can be found at: https://a.co/74kJMmI`);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js
+var init_client = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js"() {
+    init_emitWarningIfUnsupportedVersion();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js
+var import_protocol_http5, getDateHeader;
+var init_getDateHeader = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js"() {
+    import_protocol_http5 = __toESM(require_dist_cjs2());
+    getDateHeader = (response) => import_protocol_http5.HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : void 0;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js
+var getSkewCorrectedDate;
+var init_getSkewCorrectedDate = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js"() {
+    getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js
+var isClockSkewed;
+var init_isClockSkewed = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js"() {
+    init_getSkewCorrectedDate();
+    isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 3e5;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js
+var getUpdatedSystemClockOffset;
+var init_getUpdatedSystemClockOffset = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js"() {
+    init_isClockSkewed();
+    getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {
+      const clockTimeInMs = Date.parse(clockTime);
+      if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {
+        return clockTimeInMs - Date.now();
+      }
+      return currentSystemClockOffset;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js
+var init_utils2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js"() {
+    init_getDateHeader();
+    init_getSkewCorrectedDate();
+    init_getUpdatedSystemClockOffset();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js
+var import_protocol_http6, throwSigningPropertyError, validateSigningProperties, AwsSdkSigV4Signer, AWSSDKSigV4Signer;
+var init_AwsSdkSigV4Signer = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js"() {
+    import_protocol_http6 = __toESM(require_dist_cjs2());
+    init_utils2();
+    throwSigningPropertyError = (name, property) => {
+      if (!property) {
+        throw new Error(`Property \`${name}\` is not resolved for AWS SDK SigV4Auth`);
+      }
+      return property;
+    };
+    validateSigningProperties = async (signingProperties) => {
+      const context = throwSigningPropertyError("context", signingProperties.context);
+      const config = throwSigningPropertyError("config", signingProperties.config);
+      const authScheme = context.endpointV2?.properties?.authSchemes?.[0];
+      const signerFunction = throwSigningPropertyError("signer", config.signer);
+      const signer = await signerFunction(authScheme);
+      const signingRegion = signingProperties?.signingRegion;
+      const signingRegionSet = signingProperties?.signingRegionSet;
+      const signingName = signingProperties?.signingName;
+      return {
+        config,
+        signer,
+        signingRegion,
+        signingRegionSet,
+        signingName
+      };
+    };
+    AwsSdkSigV4Signer = class {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http6.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const validatedProps = await validateSigningProperties(signingProperties);
+        const { config, signer } = validatedProps;
+        let { signingRegion, signingName } = validatedProps;
+        const handlerExecutionContext = signingProperties.context;
+        if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {
+          const [first, second] = handlerExecutionContext.authSchemes;
+          if (first?.name === "sigv4a" && second?.name === "sigv4") {
+            signingRegion = second?.signingRegion ?? signingRegion;
+            signingName = second?.signingName ?? signingName;
+          }
+        }
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+      errorHandler(signingProperties) {
+        return (error) => {
+          const serverTime = error.ServerTime ?? getDateHeader(error.$response);
+          if (serverTime) {
+            const config = throwSigningPropertyError("config", signingProperties.config);
+            const initialSystemClockOffset = config.systemClockOffset;
+            config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);
+            const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;
+            if (clockSkewCorrected && error.$metadata) {
+              error.$metadata.clockSkewCorrected = true;
+            }
+          }
+          throw error;
+        };
+      }
+      successHandler(httpResponse, signingProperties) {
+        const dateHeader = getDateHeader(httpResponse);
+        if (dateHeader) {
+          const config = throwSigningPropertyError("config", signingProperties.config);
+          config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);
+        }
+      }
+    };
+    AWSSDKSigV4Signer = AwsSdkSigV4Signer;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js
+var import_protocol_http7, AwsSdkSigV4ASigner;
+var init_AwsSdkSigV4ASigner = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js"() {
+    import_protocol_http7 = __toESM(require_dist_cjs2());
+    init_utils2();
+    init_AwsSdkSigV4Signer();
+    AwsSdkSigV4ASigner = class extends AwsSdkSigV4Signer {
+      async sign(httpRequest, identity, signingProperties) {
+        if (!import_protocol_http7.HttpRequest.isInstance(httpRequest)) {
+          throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
+        }
+        const { config, signer, signingRegion, signingRegionSet, signingName } = await validateSigningProperties(signingProperties);
+        const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();
+        const multiRegionOverride = (configResolvedSigningRegionSet ?? signingRegionSet ?? [signingRegion]).join(",");
+        const signedRequest = await signer.sign(httpRequest, {
+          signingDate: getSkewCorrectedDate(config.systemClockOffset),
+          signingRegion: multiRegionOverride,
+          signingService: signingName
+        });
+        return signedRequest;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js
+var import_property_provider, resolveAwsSdkSigV4AConfig, NODE_SIGV4A_CONFIG_OPTIONS;
+var init_resolveAwsSdkSigV4AConfig = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js"() {
+    init_dist_es();
+    import_property_provider = __toESM(require_dist_cjs24());
+    resolveAwsSdkSigV4AConfig = (config) => {
+      config.sigv4aSigningRegionSet = normalizeProvider(config.sigv4aSigningRegionSet);
+      return config;
+    };
+    NODE_SIGV4A_CONFIG_OPTIONS = {
+      environmentVariableSelector(env2) {
+        if (env2.AWS_SIGV4A_SIGNING_REGION_SET) {
+          return env2.AWS_SIGV4A_SIGNING_REGION_SET.split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("AWS_SIGV4A_SIGNING_REGION_SET not set in env.", {
+          tryNextLink: true
+        });
+      },
+      configFileSelector(profile) {
+        if (profile.sigv4a_signing_region_set) {
+          return (profile.sigv4a_signing_region_set ?? "").split(",").map((_) => _.trim());
+        }
+        throw new import_property_provider.ProviderError("sigv4a_signing_region_set not set in profile.", {
+          tryNextLink: true
+        });
+      },
+      default: void 0
+    };
+  }
+});
+
+// ../../../node_modules/@smithy/signature-v4/dist-cjs/index.js
+var require_dist_cjs35 = __commonJS({
+  "../../../node_modules/@smithy/signature-v4/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      SignatureV4: () => SignatureV42,
+      clearCredentialCache: () => clearCredentialCache,
+      createScope: () => createScope,
+      getCanonicalHeaders: () => getCanonicalHeaders,
+      getCanonicalQuery: () => getCanonicalQuery,
+      getPayloadHash: () => getPayloadHash,
+      getSigningKey: () => getSigningKey,
+      moveHeadersToQuery: () => moveHeadersToQuery,
+      prepareRequest: () => prepareRequest
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_middleware3 = require_dist_cjs10();
+    var import_util_utf84 = require_dist_cjs15();
+    var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm";
+    var CREDENTIAL_QUERY_PARAM = "X-Amz-Credential";
+    var AMZ_DATE_QUERY_PARAM = "X-Amz-Date";
+    var SIGNED_HEADERS_QUERY_PARAM = "X-Amz-SignedHeaders";
+    var EXPIRES_QUERY_PARAM = "X-Amz-Expires";
+    var SIGNATURE_QUERY_PARAM = "X-Amz-Signature";
+    var TOKEN_QUERY_PARAM = "X-Amz-Security-Token";
+    var AUTH_HEADER = "authorization";
+    var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();
+    var DATE_HEADER = "date";
+    var GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];
+    var SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();
+    var SHA256_HEADER = "x-amz-content-sha256";
+    var TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();
+    var ALWAYS_UNSIGNABLE_HEADERS = {
+      authorization: true,
+      "cache-control": true,
+      connection: true,
+      expect: true,
+      from: true,
+      "keep-alive": true,
+      "max-forwards": true,
+      pragma: true,
+      referer: true,
+      te: true,
+      trailer: true,
+      "transfer-encoding": true,
+      upgrade: true,
+      "user-agent": true,
+      "x-amzn-trace-id": true
+    };
+    var PROXY_HEADER_PATTERN = /^proxy-/;
+    var SEC_HEADER_PATTERN = /^sec-/;
+    var ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256";
+    var EVENT_ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256-PAYLOAD";
+    var UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD";
+    var MAX_CACHE_SIZE = 50;
+    var KEY_TYPE_IDENTIFIER = "aws4_request";
+    var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;
+    var import_util_hex_encoding = require_dist_cjs21();
+    var import_util_utf8 = require_dist_cjs15();
+    var signingKeyCache = {};
+    var cacheQueue = [];
+    var createScope = /* @__PURE__ */ __name2((shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`, "createScope");
+    var getSigningKey = /* @__PURE__ */ __name2(async (sha256Constructor, credentials, shortDate, region, service) => {
+      const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);
+      const cacheKey = `${shortDate}:${region}:${service}:${(0, import_util_hex_encoding.toHex)(credsHash)}:${credentials.sessionToken}`;
+      if (cacheKey in signingKeyCache) {
+        return signingKeyCache[cacheKey];
+      }
+      cacheQueue.push(cacheKey);
+      while (cacheQueue.length > MAX_CACHE_SIZE) {
+        delete signingKeyCache[cacheQueue.shift()];
+      }
+      let key = `AWS4${credentials.secretAccessKey}`;
+      for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {
+        key = await hmac(sha256Constructor, key, signable);
+      }
+      return signingKeyCache[cacheKey] = key;
+    }, "getSigningKey");
+    var clearCredentialCache = /* @__PURE__ */ __name2(() => {
+      cacheQueue.length = 0;
+      Object.keys(signingKeyCache).forEach((cacheKey) => {
+        delete signingKeyCache[cacheKey];
+      });
+    }, "clearCredentialCache");
+    var hmac = /* @__PURE__ */ __name2((ctor, secret, data) => {
+      const hash = new ctor(secret);
+      hash.update((0, import_util_utf8.toUint8Array)(data));
+      return hash.digest();
+    }, "hmac");
+    var getCanonicalHeaders = /* @__PURE__ */ __name2(({ headers }, unsignableHeaders, signableHeaders) => {
+      const canonical = {};
+      for (const headerName of Object.keys(headers).sort()) {
+        if (headers[headerName] == void 0) {
+          continue;
+        }
+        const canonicalHeaderName = headerName.toLowerCase();
+        if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS || (unsignableHeaders == null ? void 0 : unsignableHeaders.has(canonicalHeaderName)) || PROXY_HEADER_PATTERN.test(canonicalHeaderName) || SEC_HEADER_PATTERN.test(canonicalHeaderName)) {
+          if (!signableHeaders || signableHeaders && !signableHeaders.has(canonicalHeaderName)) {
+            continue;
+          }
+        }
+        canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\s+/g, " ");
+      }
+      return canonical;
+    }, "getCanonicalHeaders");
+    var import_util_uri_escape = require_dist_cjs17();
+    var getCanonicalQuery = /* @__PURE__ */ __name2(({ query = {} }) => {
+      const keys = [];
+      const serialized = {};
+      for (const key of Object.keys(query)) {
+        if (key.toLowerCase() === SIGNATURE_HEADER) {
+          continue;
+        }
+        const encodedKey = (0, import_util_uri_escape.escapeUri)(key);
+        keys.push(encodedKey);
+        const value = query[key];
+        if (typeof value === "string") {
+          serialized[encodedKey] = `${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value)}`;
+        } else if (Array.isArray(value)) {
+          serialized[encodedKey] = value.slice(0).reduce((encoded, value2) => encoded.concat([`${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value2)}`]), []).sort().join("&");
+        }
+      }
+      return keys.sort().map((key) => serialized[key]).filter((serialized2) => serialized2).join("&");
+    }, "getCanonicalQuery");
+    var import_is_array_buffer = require_dist_cjs13();
+    var import_util_utf82 = require_dist_cjs15();
+    var getPayloadHash = /* @__PURE__ */ __name2(async ({ headers, body }, hashConstructor) => {
+      for (const headerName of Object.keys(headers)) {
+        if (headerName.toLowerCase() === SHA256_HEADER) {
+          return headers[headerName];
+        }
+      }
+      if (body == void 0) {
+        return "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
+      } else if (typeof body === "string" || ArrayBuffer.isView(body) || (0, import_is_array_buffer.isArrayBuffer)(body)) {
+        const hashCtor = new hashConstructor();
+        hashCtor.update((0, import_util_utf82.toUint8Array)(body));
+        return (0, import_util_hex_encoding.toHex)(await hashCtor.digest());
+      }
+      return UNSIGNED_PAYLOAD;
+    }, "getPayloadHash");
+    var import_util_utf83 = require_dist_cjs15();
+    var _HeaderFormatter = class _HeaderFormatter {
+      format(headers) {
+        const chunks = [];
+        for (const headerName of Object.keys(headers)) {
+          const bytes = (0, import_util_utf83.fromUtf8)(headerName);
+          chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));
+        }
+        const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));
+        let position = 0;
+        for (const chunk of chunks) {
+          out.set(chunk, position);
+          position += chunk.byteLength;
+        }
+        return out;
+      }
+      formatHeaderValue(header) {
+        switch (header.type) {
+          case "boolean":
+            return Uint8Array.from([
+              header.value ? 0 : 1
+              /* boolFalse */
+            ]);
+          case "byte":
+            return Uint8Array.from([2, header.value]);
+          case "short":
+            const shortView = new DataView(new ArrayBuffer(3));
+            shortView.setUint8(
+              0,
+              3
+              /* short */
+            );
+            shortView.setInt16(1, header.value, false);
+            return new Uint8Array(shortView.buffer);
+          case "integer":
+            const intView = new DataView(new ArrayBuffer(5));
+            intView.setUint8(
+              0,
+              4
+              /* integer */
+            );
+            intView.setInt32(1, header.value, false);
+            return new Uint8Array(intView.buffer);
+          case "long":
+            const longBytes = new Uint8Array(9);
+            longBytes[0] = 5;
+            longBytes.set(header.value.bytes, 1);
+            return longBytes;
+          case "binary":
+            const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));
+            binView.setUint8(
+              0,
+              6
+              /* byteArray */
+            );
+            binView.setUint16(1, header.value.byteLength, false);
+            const binBytes = new Uint8Array(binView.buffer);
+            binBytes.set(header.value, 3);
+            return binBytes;
+          case "string":
+            const utf8Bytes = (0, import_util_utf83.fromUtf8)(header.value);
+            const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));
+            strView.setUint8(
+              0,
+              7
+              /* string */
+            );
+            strView.setUint16(1, utf8Bytes.byteLength, false);
+            const strBytes = new Uint8Array(strView.buffer);
+            strBytes.set(utf8Bytes, 3);
+            return strBytes;
+          case "timestamp":
+            const tsBytes = new Uint8Array(9);
+            tsBytes[0] = 8;
+            tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);
+            return tsBytes;
+          case "uuid":
+            if (!UUID_PATTERN.test(header.value)) {
+              throw new Error(`Invalid UUID received: ${header.value}`);
+            }
+            const uuidBytes = new Uint8Array(17);
+            uuidBytes[0] = 9;
+            uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\-/g, "")), 1);
+            return uuidBytes;
+        }
+      }
+    };
+    __name2(_HeaderFormatter, "HeaderFormatter");
+    var HeaderFormatter = _HeaderFormatter;
+    var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
+    var _Int64 = class _Int642 {
+      constructor(bytes) {
+        this.bytes = bytes;
+        if (bytes.byteLength !== 8) {
+          throw new Error("Int64 buffers must be exactly 8 bytes");
+        }
+      }
+      static fromNumber(number) {
+        if (number > 9223372036854776e3 || number < -9223372036854776e3) {
+          throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);
+        }
+        const bytes = new Uint8Array(8);
+        for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {
+          bytes[i] = remaining;
+        }
+        if (number < 0) {
+          negate(bytes);
+        }
+        return new _Int642(bytes);
+      }
+      /**
+       * Called implicitly by infix arithmetic operators.
+       */
+      valueOf() {
+        const bytes = this.bytes.slice(0);
+        const negative = bytes[0] & 128;
+        if (negative) {
+          negate(bytes);
+        }
+        return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1);
+      }
+      toString() {
+        return String(this.valueOf());
+      }
+    };
+    __name2(_Int64, "Int64");
+    var Int64 = _Int64;
+    function negate(bytes) {
+      for (let i = 0; i < 8; i++) {
+        bytes[i] ^= 255;
+      }
+      for (let i = 7; i > -1; i--) {
+        bytes[i]++;
+        if (bytes[i] !== 0)
+          break;
+      }
+    }
+    __name2(negate, "negate");
+    var hasHeader = /* @__PURE__ */ __name2((soughtHeader, headers) => {
+      soughtHeader = soughtHeader.toLowerCase();
+      for (const headerName of Object.keys(headers)) {
+        if (soughtHeader === headerName.toLowerCase()) {
+          return true;
+        }
+      }
+      return false;
+    }, "hasHeader");
+    var import_protocol_http8 = require_dist_cjs2();
+    var moveHeadersToQuery = /* @__PURE__ */ __name2((request2, options = {}) => {
+      var _a7, _b;
+      const { headers, query = {} } = import_protocol_http8.HttpRequest.clone(request2);
+      for (const name of Object.keys(headers)) {
+        const lname = name.toLowerCase();
+        if (lname.slice(0, 6) === "x-amz-" && !((_a7 = options.unhoistableHeaders) == null ? void 0 : _a7.has(lname)) || ((_b = options.hoistableHeaders) == null ? void 0 : _b.has(lname))) {
+          query[name] = headers[name];
+          delete headers[name];
+        }
+      }
+      return {
+        ...request2,
+        headers,
+        query
+      };
+    }, "moveHeadersToQuery");
+    var prepareRequest = /* @__PURE__ */ __name2((request2) => {
+      request2 = import_protocol_http8.HttpRequest.clone(request2);
+      for (const headerName of Object.keys(request2.headers)) {
+        if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {
+          delete request2.headers[headerName];
+        }
+      }
+      return request2;
+    }, "prepareRequest");
+    var iso8601 = /* @__PURE__ */ __name2((time) => toDate(time).toISOString().replace(/\.\d{3}Z$/, "Z"), "iso8601");
+    var toDate = /* @__PURE__ */ __name2((time) => {
+      if (typeof time === "number") {
+        return new Date(time * 1e3);
+      }
+      if (typeof time === "string") {
+        if (Number(time)) {
+          return new Date(Number(time) * 1e3);
+        }
+        return new Date(time);
+      }
+      return time;
+    }, "toDate");
+    var _SignatureV4 = class _SignatureV4 {
+      constructor({
+        applyChecksum,
+        credentials,
+        region,
+        service,
+        sha256,
+        uriEscapePath = true
+      }) {
+        this.headerFormatter = new HeaderFormatter();
+        this.service = service;
+        this.sha256 = sha256;
+        this.uriEscapePath = uriEscapePath;
+        this.applyChecksum = typeof applyChecksum === "boolean" ? applyChecksum : true;
+        this.regionProvider = (0, import_util_middleware3.normalizeProvider)(region);
+        this.credentialProvider = (0, import_util_middleware3.normalizeProvider)(credentials);
+      }
+      async presign(originalRequest, options = {}) {
+        const {
+          signingDate = /* @__PURE__ */ new Date(),
+          expiresIn = 3600,
+          unsignableHeaders,
+          unhoistableHeaders,
+          signableHeaders,
+          hoistableHeaders,
+          signingRegion,
+          signingService
+        } = options;
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { longDate, shortDate } = formatDate(signingDate);
+        if (expiresIn > MAX_PRESIGNED_TTL) {
+          return Promise.reject(
+            "Signature version 4 presigned URLs must have an expiration date less than one week in the future"
+          );
+        }
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const request2 = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders, hoistableHeaders });
+        if (credentials.sessionToken) {
+          request2.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;
+        }
+        request2.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;
+        request2.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;
+        request2.query[AMZ_DATE_QUERY_PARAM] = longDate;
+        request2.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        request2.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders);
+        request2.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256))
+        );
+        return request2;
+      }
+      async sign(toSign, options) {
+        if (typeof toSign === "string") {
+          return this.signString(toSign, options);
+        } else if (toSign.headers && toSign.payload) {
+          return this.signEvent(toSign, options);
+        } else if (toSign.message) {
+          return this.signMessage(toSign, options);
+        } else {
+          return this.signRequest(toSign, options);
+        }
+      }
+      async signEvent({ headers, payload }, { signingDate = /* @__PURE__ */ new Date(), priorSignature, signingRegion, signingService }) {
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate, longDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);
+        const hash = new this.sha256();
+        hash.update(headers);
+        const hashedHeaders = (0, import_util_hex_encoding.toHex)(await hash.digest());
+        const stringToSign = [
+          EVENT_ALGORITHM_IDENTIFIER,
+          longDate,
+          scope,
+          priorSignature,
+          hashedHeaders,
+          hashedPayload
+        ].join("\n");
+        return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });
+      }
+      async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) {
+        const promise = this.signEvent(
+          {
+            headers: this.headerFormatter.format(signableMessage.message.headers),
+            payload: signableMessage.message.body
+          },
+          {
+            signingDate,
+            signingRegion,
+            signingService,
+            priorSignature: signableMessage.priorSignature
+          }
+        );
+        return promise.then((signature) => {
+          return { message: signableMessage.message, signature };
+        });
+      }
+      async signString(stringToSign, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const { shortDate } = formatDate(signingDate);
+        const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      async signRequest(requestToSign, {
+        signingDate = /* @__PURE__ */ new Date(),
+        signableHeaders,
+        unsignableHeaders,
+        signingRegion,
+        signingService
+      } = {}) {
+        const credentials = await this.credentialProvider();
+        this.validateResolvedCredentials(credentials);
+        const region = signingRegion ?? await this.regionProvider();
+        const request2 = prepareRequest(requestToSign);
+        const { longDate, shortDate } = formatDate(signingDate);
+        const scope = createScope(shortDate, region, signingService ?? this.service);
+        request2.headers[AMZ_DATE_HEADER] = longDate;
+        if (credentials.sessionToken) {
+          request2.headers[TOKEN_HEADER] = credentials.sessionToken;
+        }
+        const payloadHash = await getPayloadHash(request2, this.sha256);
+        if (!hasHeader(SHA256_HEADER, request2.headers) && this.applyChecksum) {
+          request2.headers[SHA256_HEADER] = payloadHash;
+        }
+        const canonicalHeaders = getCanonicalHeaders(request2, unsignableHeaders, signableHeaders);
+        const signature = await this.getSignature(
+          longDate,
+          scope,
+          this.getSigningKey(credentials, region, shortDate, signingService),
+          this.createCanonicalRequest(request2, canonicalHeaders, payloadHash)
+        );
+        request2.headers[AUTH_HEADER] = `${ALGORITHM_IDENTIFIER} Credential=${credentials.accessKeyId}/${scope}, SignedHeaders=${getCanonicalHeaderList(canonicalHeaders)}, Signature=${signature}`;
+        return request2;
+      }
+      createCanonicalRequest(request2, canonicalHeaders, payloadHash) {
+        const sortedHeaders = Object.keys(canonicalHeaders).sort();
+        return `${request2.method}
+${this.getCanonicalPath(request2)}
+${getCanonicalQuery(request2)}
+${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join("\n")}
+
+${sortedHeaders.join(";")}
+${payloadHash}`;
+      }
+      async createStringToSign(longDate, credentialScope, canonicalRequest) {
+        const hash = new this.sha256();
+        hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest));
+        const hashedRequest = await hash.digest();
+        return `${ALGORITHM_IDENTIFIER}
+${longDate}
+${credentialScope}
+${(0, import_util_hex_encoding.toHex)(hashedRequest)}`;
+      }
+      getCanonicalPath({ path: path23 }) {
+        if (this.uriEscapePath) {
+          const normalizedPathSegments = [];
+          for (const pathSegment of path23.split("/")) {
+            if ((pathSegment == null ? void 0 : pathSegment.length) === 0)
+              continue;
+            if (pathSegment === ".")
+              continue;
+            if (pathSegment === "..") {
+              normalizedPathSegments.pop();
+            } else {
+              normalizedPathSegments.push(pathSegment);
+            }
+          }
+          const normalizedPath = `${(path23 == null ? void 0 : path23.startsWith("/")) ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && (path23 == null ? void 0 : path23.endsWith("/")) ? "/" : ""}`;
+          const doubleEncoded = (0, import_util_uri_escape.escapeUri)(normalizedPath);
+          return doubleEncoded.replace(/%2F/g, "/");
+        }
+        return path23;
+      }
+      async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {
+        const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest);
+        const hash = new this.sha256(await keyPromise);
+        hash.update((0, import_util_utf84.toUint8Array)(stringToSign));
+        return (0, import_util_hex_encoding.toHex)(await hash.digest());
+      }
+      getSigningKey(credentials, region, shortDate, service) {
+        return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);
+      }
+      validateResolvedCredentials(credentials) {
+        if (typeof credentials !== "object" || // @ts-expect-error: Property 'accessKeyId' does not exist on type 'object'.ts(2339)
+        typeof credentials.accessKeyId !== "string" || // @ts-expect-error: Property 'secretAccessKey' does not exist on type 'object'.ts(2339)
+        typeof credentials.secretAccessKey !== "string") {
+          throw new Error("Resolved credential object is not valid");
+        }
+      }
+    };
+    __name2(_SignatureV4, "SignatureV4");
+    var SignatureV42 = _SignatureV4;
+    var formatDate = /* @__PURE__ */ __name2((now) => {
+      const longDate = iso8601(now).replace(/[\-:]/g, "");
+      return {
+        longDate,
+        shortDate: longDate.slice(0, 8)
+      };
+    }, "formatDate");
+    var getCanonicalHeaderList = /* @__PURE__ */ __name2((headers) => Object.keys(headers).sort().join(";"), "getCanonicalHeaderList");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js
+var import_signature_v4, resolveAwsSdkSigV4Config, resolveAWSSDKSigV4Config;
+var init_resolveAwsSdkSigV4Config = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js"() {
+    init_dist_es();
+    import_signature_v4 = __toESM(require_dist_cjs35());
+    resolveAwsSdkSigV4Config = (config) => {
+      let normalizedCreds;
+      if (config.credentials) {
+        normalizedCreds = memoizeIdentityProvider(config.credentials, isIdentityExpired, doesIdentityRequireRefresh);
+      }
+      if (!normalizedCreds) {
+        if (config.credentialDefaultProvider) {
+          normalizedCreds = normalizeProvider(config.credentialDefaultProvider(Object.assign({}, config, {
+            parentClientConfig: config
+          })));
+        } else {
+          normalizedCreds = async () => {
+            throw new Error("`credentials` is missing");
+          };
+        }
+      }
+      const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256 } = config;
+      let signer;
+      if (config.signer) {
+        signer = normalizeProvider(config.signer);
+      } else if (config.regionInfoProvider) {
+        signer = () => normalizeProvider(config.region)().then(async (region) => [
+          await config.regionInfoProvider(region, {
+            useFipsEndpoint: await config.useFipsEndpoint(),
+            useDualstackEndpoint: await config.useDualstackEndpoint()
+          }) || {},
+          region
+        ]).then(([regionInfo, region]) => {
+          const { signingRegion, signingService } = regionInfo;
+          config.signingRegion = config.signingRegion || signingRegion || region;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        });
+      } else {
+        signer = async (authScheme) => {
+          authScheme = Object.assign({}, {
+            name: "sigv4",
+            signingName: config.signingName || config.defaultSigningName,
+            signingRegion: await normalizeProvider(config.region)(),
+            properties: {}
+          }, authScheme);
+          const signingRegion = authScheme.signingRegion;
+          const signingService = authScheme.signingName;
+          config.signingRegion = config.signingRegion || signingRegion;
+          config.signingName = config.signingName || signingService || config.serviceId;
+          const params = {
+            ...config,
+            credentials: normalizedCreds,
+            region: config.signingRegion,
+            service: config.signingName,
+            sha256,
+            uriEscapePath: signingEscapePath
+          };
+          const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;
+          return new SignerCtor(params);
+        };
+      }
+      return {
+        ...config,
+        systemClockOffset,
+        signingEscapePath,
+        credentials: normalizedCreds,
+        signer
+      };
+    };
+    resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js
+var init_aws_sdk = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js"() {
+    init_AwsSdkSigV4Signer();
+    init_AwsSdkSigV4ASigner();
+    init_resolveAwsSdkSigV4AConfig();
+    init_resolveAwsSdkSigV4Config();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js
+var init_httpAuthSchemes2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js"() {
+    init_aws_sdk();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js
+var _toStr, _toBool, _toNum;
+var init_coercing_serializers = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js"() {
+    _toStr = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number" || typeof val2 === "bigint") {
+        const warning = new Error(`Received number ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      if (typeof val2 === "boolean") {
+        const warning = new Error(`Received boolean ${val2} where a string was expected.`);
+        warning.name = "Warning";
+        console.warn(warning);
+        return String(val2);
+      }
+      return val2;
+    };
+    _toBool = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "number") {
+      }
+      if (typeof val2 === "string") {
+        const lowercase = val2.toLowerCase();
+        if (val2 !== "" && lowercase !== "false" && lowercase !== "true") {
+          const warning = new Error(`Received string "${val2}" where a boolean was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+        }
+        return val2 !== "" && lowercase !== "false";
+      }
+      return val2;
+    };
+    _toNum = (val2) => {
+      if (val2 == null) {
+        return val2;
+      }
+      if (typeof val2 === "boolean") {
+      }
+      if (typeof val2 === "string") {
+        const num = Number(val2);
+        if (num.toString() !== val2) {
+          const warning = new Error(`Received string "${val2}" where a number was expected.`);
+          warning.name = "Warning";
+          console.warn(warning);
+          return val2;
+        }
+        return num;
+      }
+      return val2;
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js
+var import_smithy_client, awsExpectUnion;
+var init_awsExpectUnion = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js"() {
+    import_smithy_client = __toESM(require_dist_cjs33());
+    awsExpectUnion = (value) => {
+      if (value == null) {
+        return void 0;
+      }
+      if (typeof value === "object" && "__type" in value) {
+        delete value.__type;
+      }
+      return (0, import_smithy_client.expectUnion)(value);
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js
+var import_smithy_client2, collectBodyString;
+var init_common = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js"() {
+    import_smithy_client2 = __toESM(require_dist_cjs33());
+    collectBodyString = (streamBody, context) => (0, import_smithy_client2.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body));
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js
+var parseJsonBody, parseJsonErrorBody, loadRestJsonErrorCode;
+var init_parseJsonBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js"() {
+    init_common();
+    parseJsonBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        try {
+          return JSON.parse(encoded);
+        } catch (e) {
+          if (e?.name === "SyntaxError") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+      }
+      return {};
+    });
+    parseJsonErrorBody = async (errorBody, context) => {
+      const value = await parseJsonBody(errorBody, context);
+      value.message = value.message ?? value.Message;
+      return value;
+    };
+    loadRestJsonErrorCode = (output, data) => {
+      const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase());
+      const sanitizeErrorCode = (rawValue) => {
+        let cleanValue = rawValue;
+        if (typeof cleanValue === "number") {
+          cleanValue = cleanValue.toString();
+        }
+        if (cleanValue.indexOf(",") >= 0) {
+          cleanValue = cleanValue.split(",")[0];
+        }
+        if (cleanValue.indexOf(":") >= 0) {
+          cleanValue = cleanValue.split(":")[0];
+        }
+        if (cleanValue.indexOf("#") >= 0) {
+          cleanValue = cleanValue.split("#")[1];
+        }
+        return cleanValue;
+      };
+      const headerKey = findKey(output.headers, "x-amzn-errortype");
+      if (headerKey !== void 0) {
+        return sanitizeErrorCode(output.headers[headerKey]);
+      }
+      if (data.code !== void 0) {
+        return sanitizeErrorCode(data.code);
+      }
+      if (data["__type"] !== void 0) {
+        return sanitizeErrorCode(data["__type"]);
+      }
+    };
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/util.js
+var require_util = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/util.js"(exports2) {
+    "use strict";
+    var nameStartChar = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD";
+    var nameChar = nameStartChar + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040";
+    var nameRegexp = "[" + nameStartChar + "][" + nameChar + "]*";
+    var regexName = new RegExp("^" + nameRegexp + "$");
+    var getAllMatches = function(string, regex) {
+      const matches = [];
+      let match = regex.exec(string);
+      while (match) {
+        const allmatches = [];
+        allmatches.startIndex = regex.lastIndex - match[0].length;
+        const len = match.length;
+        for (let index = 0; index < len; index++) {
+          allmatches.push(match[index]);
+        }
+        matches.push(allmatches);
+        match = regex.exec(string);
+      }
+      return matches;
+    };
+    var isName = function(string) {
+      const match = regexName.exec(string);
+      return !(match === null || typeof match === "undefined");
+    };
+    exports2.isExist = function(v) {
+      return typeof v !== "undefined";
+    };
+    exports2.isEmptyObject = function(obj) {
+      return Object.keys(obj).length === 0;
+    };
+    exports2.merge = function(target, a, arrayMode) {
+      if (a) {
+        const keys = Object.keys(a);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          if (arrayMode === "strict") {
+            target[keys[i]] = [a[keys[i]]];
+          } else {
+            target[keys[i]] = a[keys[i]];
+          }
+        }
+      }
+    };
+    exports2.getValue = function(v) {
+      if (exports2.isExist(v)) {
+        return v;
+      } else {
+        return "";
+      }
+    };
+    exports2.isName = isName;
+    exports2.getAllMatches = getAllMatches;
+    exports2.nameRegexp = nameRegexp;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/validator.js
+var require_validator2 = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/validator.js"(exports2) {
+    "use strict";
+    var util = require_util();
+    var defaultOptions = {
+      allowBooleanAttributes: false,
+      //A tag can have attributes without any value
+      unpairedTags: []
+    };
+    exports2.validate = function(xmlData, options) {
+      options = Object.assign({}, defaultOptions, options);
+      const tags = [];
+      let tagFound = false;
+      let reachedRoot = false;
+      if (xmlData[0] === "\uFEFF") {
+        xmlData = xmlData.substr(1);
+      }
+      for (let i = 0; i < xmlData.length; i++) {
+        if (xmlData[i] === "<" && xmlData[i + 1] === "?") {
+          i += 2;
+          i = readPI(xmlData, i);
+          if (i.err) return i;
+        } else if (xmlData[i] === "<") {
+          let tagStartPos = i;
+          i++;
+          if (xmlData[i] === "!") {
+            i = readCommentAndCDATA(xmlData, i);
+            continue;
+          } else {
+            let closingTag = false;
+            if (xmlData[i] === "/") {
+              closingTag = true;
+              i++;
+            }
+            let tagName = "";
+            for (; i < xmlData.length && xmlData[i] !== ">" && xmlData[i] !== " " && xmlData[i] !== "	" && xmlData[i] !== "\n" && xmlData[i] !== "\r"; i++) {
+              tagName += xmlData[i];
+            }
+            tagName = tagName.trim();
+            if (tagName[tagName.length - 1] === "/") {
+              tagName = tagName.substring(0, tagName.length - 1);
+              i--;
+            }
+            if (!validateTagName(tagName)) {
+              let msg;
+              if (tagName.trim().length === 0) {
+                msg = "Invalid space after '<'.";
+              } else {
+                msg = "Tag '" + tagName + "' is an invalid name.";
+              }
+              return getErrorObject("InvalidTag", msg, getLineNumberForPosition(xmlData, i));
+            }
+            const result = readAttributeStr(xmlData, i);
+            if (result === false) {
+              return getErrorObject("InvalidAttr", "Attributes for '" + tagName + "' have open quote.", getLineNumberForPosition(xmlData, i));
+            }
+            let attrStr = result.value;
+            i = result.index;
+            if (attrStr[attrStr.length - 1] === "/") {
+              const attrStrStart = i - attrStr.length;
+              attrStr = attrStr.substring(0, attrStr.length - 1);
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid === true) {
+                tagFound = true;
+              } else {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));
+              }
+            } else if (closingTag) {
+              if (!result.tagClosed) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' doesn't have proper closing.", getLineNumberForPosition(xmlData, i));
+              } else if (attrStr.trim().length > 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' can't have attributes or invalid starting.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else if (tags.length === 0) {
+                return getErrorObject("InvalidTag", "Closing tag '" + tagName + "' has not been opened.", getLineNumberForPosition(xmlData, tagStartPos));
+              } else {
+                const otg = tags.pop();
+                if (tagName !== otg.tagName) {
+                  let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);
+                  return getErrorObject(
+                    "InvalidTag",
+                    "Expected closing tag '" + otg.tagName + "' (opened in line " + openPos.line + ", col " + openPos.col + ") instead of closing tag '" + tagName + "'.",
+                    getLineNumberForPosition(xmlData, tagStartPos)
+                  );
+                }
+                if (tags.length == 0) {
+                  reachedRoot = true;
+                }
+              }
+            } else {
+              const isValid = validateAttributeString(attrStr, options);
+              if (isValid !== true) {
+                return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));
+              }
+              if (reachedRoot === true) {
+                return getErrorObject("InvalidXml", "Multiple possible root nodes found.", getLineNumberForPosition(xmlData, i));
+              } else if (options.unpairedTags.indexOf(tagName) !== -1) {
+              } else {
+                tags.push({ tagName, tagStartPos });
+              }
+              tagFound = true;
+            }
+            for (i++; i < xmlData.length; i++) {
+              if (xmlData[i] === "<") {
+                if (xmlData[i + 1] === "!") {
+                  i++;
+                  i = readCommentAndCDATA(xmlData, i);
+                  continue;
+                } else if (xmlData[i + 1] === "?") {
+                  i = readPI(xmlData, ++i);
+                  if (i.err) return i;
+                } else {
+                  break;
+                }
+              } else if (xmlData[i] === "&") {
+                const afterAmp = validateAmpersand(xmlData, i);
+                if (afterAmp == -1)
+                  return getErrorObject("InvalidChar", "char '&' is not expected.", getLineNumberForPosition(xmlData, i));
+                i = afterAmp;
+              } else {
+                if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {
+                  return getErrorObject("InvalidXml", "Extra text at the end", getLineNumberForPosition(xmlData, i));
+                }
+              }
+            }
+            if (xmlData[i] === "<") {
+              i--;
+            }
+          }
+        } else {
+          if (isWhiteSpace(xmlData[i])) {
+            continue;
+          }
+          return getErrorObject("InvalidChar", "char '" + xmlData[i] + "' is not expected.", getLineNumberForPosition(xmlData, i));
+        }
+      }
+      if (!tagFound) {
+        return getErrorObject("InvalidXml", "Start tag expected.", 1);
+      } else if (tags.length == 1) {
+        return getErrorObject("InvalidTag", "Unclosed tag '" + tags[0].tagName + "'.", getLineNumberForPosition(xmlData, tags[0].tagStartPos));
+      } else if (tags.length > 0) {
+        return getErrorObject("InvalidXml", "Invalid '" + JSON.stringify(tags.map((t) => t.tagName), null, 4).replace(/\r?\n/g, "") + "' found.", { line: 1, col: 1 });
+      }
+      return true;
+    };
+    function isWhiteSpace(char) {
+      return char === " " || char === "	" || char === "\n" || char === "\r";
+    }
+    function readPI(xmlData, i) {
+      const start = i;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] == "?" || xmlData[i] == " ") {
+          const tagname = xmlData.substr(start, i - start);
+          if (i > 5 && tagname === "xml") {
+            return getErrorObject("InvalidXml", "XML declaration allowed only at the start of the document.", getLineNumberForPosition(xmlData, i));
+          } else if (xmlData[i] == "?" && xmlData[i + 1] == ">") {
+            i++;
+            break;
+          } else {
+            continue;
+          }
+        }
+      }
+      return i;
+    }
+    function readCommentAndCDATA(xmlData, i) {
+      if (xmlData.length > i + 5 && xmlData[i + 1] === "-" && xmlData[i + 2] === "-") {
+        for (i += 3; i < xmlData.length; i++) {
+          if (xmlData[i] === "-" && xmlData[i + 1] === "-" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      } else if (xmlData.length > i + 8 && xmlData[i + 1] === "D" && xmlData[i + 2] === "O" && xmlData[i + 3] === "C" && xmlData[i + 4] === "T" && xmlData[i + 5] === "Y" && xmlData[i + 6] === "P" && xmlData[i + 7] === "E") {
+        let angleBracketsCount = 1;
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "<") {
+            angleBracketsCount++;
+          } else if (xmlData[i] === ">") {
+            angleBracketsCount--;
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          }
+        }
+      } else if (xmlData.length > i + 9 && xmlData[i + 1] === "[" && xmlData[i + 2] === "C" && xmlData[i + 3] === "D" && xmlData[i + 4] === "A" && xmlData[i + 5] === "T" && xmlData[i + 6] === "A" && xmlData[i + 7] === "[") {
+        for (i += 8; i < xmlData.length; i++) {
+          if (xmlData[i] === "]" && xmlData[i + 1] === "]" && xmlData[i + 2] === ">") {
+            i += 2;
+            break;
+          }
+        }
+      }
+      return i;
+    }
+    var doubleQuote = '"';
+    var singleQuote = "'";
+    function readAttributeStr(xmlData, i) {
+      let attrStr = "";
+      let startChar = "";
+      let tagClosed = false;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {
+          if (startChar === "") {
+            startChar = xmlData[i];
+          } else if (startChar !== xmlData[i]) {
+          } else {
+            startChar = "";
+          }
+        } else if (xmlData[i] === ">") {
+          if (startChar === "") {
+            tagClosed = true;
+            break;
+          }
+        }
+        attrStr += xmlData[i];
+      }
+      if (startChar !== "") {
+        return false;
+      }
+      return {
+        value: attrStr,
+        index: i,
+        tagClosed
+      };
+    }
+    var validAttrStrRegxp = new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`, "g");
+    function validateAttributeString(attrStr, options) {
+      const matches = util.getAllMatches(attrStr, validAttrStrRegxp);
+      const attrNames = {};
+      for (let i = 0; i < matches.length; i++) {
+        if (matches[i][1].length === 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' has no space in starting.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] !== void 0 && matches[i][4] === void 0) {
+          return getErrorObject("InvalidAttr", "Attribute '" + matches[i][2] + "' is without value.", getPositionFromMatch(matches[i]));
+        } else if (matches[i][3] === void 0 && !options.allowBooleanAttributes) {
+          return getErrorObject("InvalidAttr", "boolean attribute '" + matches[i][2] + "' is not allowed.", getPositionFromMatch(matches[i]));
+        }
+        const attrName = matches[i][2];
+        if (!validateAttrName(attrName)) {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is an invalid name.", getPositionFromMatch(matches[i]));
+        }
+        if (!attrNames.hasOwnProperty(attrName)) {
+          attrNames[attrName] = 1;
+        } else {
+          return getErrorObject("InvalidAttr", "Attribute '" + attrName + "' is repeated.", getPositionFromMatch(matches[i]));
+        }
+      }
+      return true;
+    }
+    function validateNumberAmpersand(xmlData, i) {
+      let re = /\d/;
+      if (xmlData[i] === "x") {
+        i++;
+        re = /[\da-fA-F]/;
+      }
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === ";")
+          return i;
+        if (!xmlData[i].match(re))
+          break;
+      }
+      return -1;
+    }
+    function validateAmpersand(xmlData, i) {
+      i++;
+      if (xmlData[i] === ";")
+        return -1;
+      if (xmlData[i] === "#") {
+        i++;
+        return validateNumberAmpersand(xmlData, i);
+      }
+      let count2 = 0;
+      for (; i < xmlData.length; i++, count2++) {
+        if (xmlData[i].match(/\w/) && count2 < 20)
+          continue;
+        if (xmlData[i] === ";")
+          break;
+        return -1;
+      }
+      return i;
+    }
+    function getErrorObject(code, message, lineNumber) {
+      return {
+        err: {
+          code,
+          msg: message,
+          line: lineNumber.line || lineNumber,
+          col: lineNumber.col
+        }
+      };
+    }
+    function validateAttrName(attrName) {
+      return util.isName(attrName);
+    }
+    function validateTagName(tagname) {
+      return util.isName(tagname);
+    }
+    function getLineNumberForPosition(xmlData, index) {
+      const lines = xmlData.substring(0, index).split(/\r?\n/);
+      return {
+        line: lines.length,
+        // column number is last line's length + 1, because column numbering starts at 1:
+        col: lines[lines.length - 1].length + 1
+      };
+    }
+    function getPositionFromMatch(match) {
+      return match.startIndex + match[1].length;
+    }
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js
+var require_OptionsBuilder = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js"(exports2) {
+    var defaultOptions = {
+      preserveOrder: false,
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      removeNSPrefix: false,
+      // remove NS from tag name or attribute name if true
+      allowBooleanAttributes: false,
+      //a tag can have attributes without any value
+      //ignoreRootElement : false,
+      parseTagValue: true,
+      parseAttributeValue: false,
+      trimValues: true,
+      //Trim string values of tag and attributes
+      cdataPropName: false,
+      numberParseOptions: {
+        hex: true,
+        leadingZeros: true,
+        eNotation: true
+      },
+      tagValueProcessor: function(tagName, val2) {
+        return val2;
+      },
+      attributeValueProcessor: function(attrName, val2) {
+        return val2;
+      },
+      stopNodes: [],
+      //nested tags will not be parsed even for errors
+      alwaysCreateTextNode: false,
+      isArray: () => false,
+      commentPropName: false,
+      unpairedTags: [],
+      processEntities: true,
+      htmlEntities: false,
+      ignoreDeclaration: false,
+      ignorePiTags: false,
+      transformTagName: false,
+      transformAttributeName: false,
+      updateTag: function(tagName, jPath, attrs) {
+        return tagName;
+      }
+      // skipEmptyListItem: false
+    };
+    var buildOptions = function(options) {
+      return Object.assign({}, defaultOptions, options);
+    };
+    exports2.buildOptions = buildOptions;
+    exports2.defaultOptions = defaultOptions;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js
+var require_xmlNode = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js"(exports2, module2) {
+    "use strict";
+    var XmlNode = class {
+      constructor(tagname) {
+        this.tagname = tagname;
+        this.child = [];
+        this[":@"] = {};
+      }
+      add(key, val2) {
+        if (key === "__proto__") key = "#__proto__";
+        this.child.push({ [key]: val2 });
+      }
+      addChild(node) {
+        if (node.tagname === "__proto__") node.tagname = "#__proto__";
+        if (node[":@"] && Object.keys(node[":@"]).length > 0) {
+          this.child.push({ [node.tagname]: node.child, [":@"]: node[":@"] });
+        } else {
+          this.child.push({ [node.tagname]: node.child });
+        }
+      }
+    };
+    module2.exports = XmlNode;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js
+var require_DocTypeReader = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js"(exports2, module2) {
+    var util = require_util();
+    function readDocType(xmlData, i) {
+      const entities = {};
+      if (xmlData[i + 3] === "O" && xmlData[i + 4] === "C" && xmlData[i + 5] === "T" && xmlData[i + 6] === "Y" && xmlData[i + 7] === "P" && xmlData[i + 8] === "E") {
+        i = i + 9;
+        let angleBracketsCount = 1;
+        let hasBody = false, comment = false;
+        let exp = "";
+        for (; i < xmlData.length; i++) {
+          if (xmlData[i] === "<" && !comment) {
+            if (hasBody && isEntity(xmlData, i)) {
+              i += 7;
+              [entityName, val, i] = readEntityExp(xmlData, i + 1);
+              if (val.indexOf("&") === -1)
+                entities[validateEntityName(entityName)] = {
+                  regx: RegExp(`&${entityName};`, "g"),
+                  val
+                };
+            } else if (hasBody && isElement(xmlData, i)) i += 8;
+            else if (hasBody && isAttlist(xmlData, i)) i += 8;
+            else if (hasBody && isNotation(xmlData, i)) i += 9;
+            else if (isComment) comment = true;
+            else throw new Error("Invalid DOCTYPE");
+            angleBracketsCount++;
+            exp = "";
+          } else if (xmlData[i] === ">") {
+            if (comment) {
+              if (xmlData[i - 1] === "-" && xmlData[i - 2] === "-") {
+                comment = false;
+                angleBracketsCount--;
+              }
+            } else {
+              angleBracketsCount--;
+            }
+            if (angleBracketsCount === 0) {
+              break;
+            }
+          } else if (xmlData[i] === "[") {
+            hasBody = true;
+          } else {
+            exp += xmlData[i];
+          }
+        }
+        if (angleBracketsCount !== 0) {
+          throw new Error(`Unclosed DOCTYPE`);
+        }
+      } else {
+        throw new Error(`Invalid Tag instead of DOCTYPE`);
+      }
+      return { entities, i };
+    }
+    function readEntityExp(xmlData, i) {
+      let entityName2 = "";
+      for (; i < xmlData.length && (xmlData[i] !== "'" && xmlData[i] !== '"'); i++) {
+        entityName2 += xmlData[i];
+      }
+      entityName2 = entityName2.trim();
+      if (entityName2.indexOf(" ") !== -1) throw new Error("External entites are not supported");
+      const startChar = xmlData[i++];
+      let val2 = "";
+      for (; i < xmlData.length && xmlData[i] !== startChar; i++) {
+        val2 += xmlData[i];
+      }
+      return [entityName2, val2, i];
+    }
+    function isComment(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "-" && xmlData[i + 3] === "-") return true;
+      return false;
+    }
+    function isEntity(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "N" && xmlData[i + 4] === "T" && xmlData[i + 5] === "I" && xmlData[i + 6] === "T" && xmlData[i + 7] === "Y") return true;
+      return false;
+    }
+    function isElement(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "E" && xmlData[i + 3] === "L" && xmlData[i + 4] === "E" && xmlData[i + 5] === "M" && xmlData[i + 6] === "E" && xmlData[i + 7] === "N" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isAttlist(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "A" && xmlData[i + 3] === "T" && xmlData[i + 4] === "T" && xmlData[i + 5] === "L" && xmlData[i + 6] === "I" && xmlData[i + 7] === "S" && xmlData[i + 8] === "T") return true;
+      return false;
+    }
+    function isNotation(xmlData, i) {
+      if (xmlData[i + 1] === "!" && xmlData[i + 2] === "N" && xmlData[i + 3] === "O" && xmlData[i + 4] === "T" && xmlData[i + 5] === "A" && xmlData[i + 6] === "T" && xmlData[i + 7] === "I" && xmlData[i + 8] === "O" && xmlData[i + 9] === "N") return true;
+      return false;
+    }
+    function validateEntityName(name) {
+      if (util.isName(name))
+        return name;
+      else
+        throw new Error(`Invalid entity name ${name}`);
+    }
+    module2.exports = readDocType;
+  }
+});
+
+// ../../../node_modules/strnum/strnum.js
+var require_strnum = __commonJS({
+  "../../../node_modules/strnum/strnum.js"(exports2, module2) {
+    var hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;
+    var numRegex = /^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/;
+    var consider = {
+      hex: true,
+      // oct: false,
+      leadingZeros: true,
+      decimalPoint: ".",
+      eNotation: true
+      //skipLike: /regex/
+    };
+    function toNumber(str, options = {}) {
+      options = Object.assign({}, consider, options);
+      if (!str || typeof str !== "string") return str;
+      let trimmedStr = str.trim();
+      if (options.skipLike !== void 0 && options.skipLike.test(trimmedStr)) return str;
+      else if (str === "0") return 0;
+      else if (options.hex && hexRegex.test(trimmedStr)) {
+        return parse_int(trimmedStr, 16);
+      } else if (trimmedStr.search(/[eE]/) !== -1) {
+        const notation = trimmedStr.match(/^([-\+])?(0*)([0-9]*(\.[0-9]*)?[eE][-\+]?[0-9]+)$/);
+        if (notation) {
+          if (options.leadingZeros) {
+            trimmedStr = (notation[1] || "") + notation[3];
+          } else {
+            if (notation[2] === "0" && notation[3][0] === ".") {
+            } else {
+              return str;
+            }
+          }
+          return options.eNotation ? Number(trimmedStr) : str;
+        } else {
+          return str;
+        }
+      } else {
+        const match = numRegex.exec(trimmedStr);
+        if (match) {
+          const sign = match[1];
+          const leadingZeros = match[2];
+          let numTrimmedByZeros = trimZeros(match[3]);
+          if (!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== ".") return str;
+          else if (!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== ".") return str;
+          else if (options.leadingZeros && leadingZeros === str) return 0;
+          else {
+            const num = Number(trimmedStr);
+            const numStr = "" + num;
+            if (numStr.search(/[eE]/) !== -1) {
+              if (options.eNotation) return num;
+              else return str;
+            } else if (trimmedStr.indexOf(".") !== -1) {
+              if (numStr === "0" && numTrimmedByZeros === "") return num;
+              else if (numStr === numTrimmedByZeros) return num;
+              else if (sign && numStr === "-" + numTrimmedByZeros) return num;
+              else return str;
+            }
+            if (leadingZeros) {
+              return numTrimmedByZeros === numStr || sign + numTrimmedByZeros === numStr ? num : str;
+            } else {
+              return trimmedStr === numStr || trimmedStr === sign + numStr ? num : str;
+            }
+          }
+        } else {
+          return str;
+        }
+      }
+    }
+    function trimZeros(numStr) {
+      if (numStr && numStr.indexOf(".") !== -1) {
+        numStr = numStr.replace(/0+$/, "");
+        if (numStr === ".") numStr = "0";
+        else if (numStr[0] === ".") numStr = "0" + numStr;
+        else if (numStr[numStr.length - 1] === ".") numStr = numStr.substr(0, numStr.length - 1);
+        return numStr;
+      }
+      return numStr;
+    }
+    function parse_int(numStr, base) {
+      if (parseInt) return parseInt(numStr, base);
+      else if (Number.parseInt) return Number.parseInt(numStr, base);
+      else if (window && window.parseInt) return window.parseInt(numStr, base);
+      else throw new Error("parseInt, Number.parseInt, window.parseInt are not supported");
+    }
+    module2.exports = toNumber;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js
+var require_OrderedObjParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js"(exports2, module2) {
+    "use strict";
+    var util = require_util();
+    var xmlNode = require_xmlNode();
+    var readDocType = require_DocTypeReader();
+    var toNumber = require_strnum();
+    var OrderedObjParser = class {
+      constructor(options) {
+        this.options = options;
+        this.currentNode = null;
+        this.tagsNodeStack = [];
+        this.docTypeEntities = {};
+        this.lastEntities = {
+          "apos": { regex: /&(apos|#39|#x27);/g, val: "'" },
+          "gt": { regex: /&(gt|#62|#x3E);/g, val: ">" },
+          "lt": { regex: /&(lt|#60|#x3C);/g, val: "<" },
+          "quot": { regex: /&(quot|#34|#x22);/g, val: '"' }
+        };
+        this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: "&" };
+        this.htmlEntities = {
+          "space": { regex: /&(nbsp|#160);/g, val: " " },
+          // "lt" : { regex: /&(lt|#60);/g, val: "<" },
+          // "gt" : { regex: /&(gt|#62);/g, val: ">" },
+          // "amp" : { regex: /&(amp|#38);/g, val: "&" },
+          // "quot" : { regex: /&(quot|#34);/g, val: "\"" },
+          // "apos" : { regex: /&(apos|#39);/g, val: "'" },
+          "cent": { regex: /&(cent|#162);/g, val: "\xA2" },
+          "pound": { regex: /&(pound|#163);/g, val: "\xA3" },
+          "yen": { regex: /&(yen|#165);/g, val: "\xA5" },
+          "euro": { regex: /&(euro|#8364);/g, val: "\u20AC" },
+          "copyright": { regex: /&(copy|#169);/g, val: "\xA9" },
+          "reg": { regex: /&(reg|#174);/g, val: "\xAE" },
+          "inr": { regex: /&(inr|#8377);/g, val: "\u20B9" },
+          "num_dec": { regex: /&#([0-9]{1,7});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 10)) },
+          "num_hex": { regex: /&#x([0-9a-fA-F]{1,6});/g, val: (_, str) => String.fromCharCode(Number.parseInt(str, 16)) }
+        };
+        this.addExternalEntities = addExternalEntities;
+        this.parseXml = parseXml;
+        this.parseTextData = parseTextData;
+        this.resolveNameSpace = resolveNameSpace;
+        this.buildAttributesMap = buildAttributesMap;
+        this.isItStopNode = isItStopNode;
+        this.replaceEntitiesValue = replaceEntitiesValue;
+        this.readStopNodeData = readStopNodeData;
+        this.saveTextToParentTag = saveTextToParentTag;
+        this.addChild = addChild;
+      }
+    };
+    function addExternalEntities(externalEntities) {
+      const entKeys = Object.keys(externalEntities);
+      for (let i = 0; i < entKeys.length; i++) {
+        const ent = entKeys[i];
+        this.lastEntities[ent] = {
+          regex: new RegExp("&" + ent + ";", "g"),
+          val: externalEntities[ent]
+        };
+      }
+    }
+    function parseTextData(val2, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {
+      if (val2 !== void 0) {
+        if (this.options.trimValues && !dontTrim) {
+          val2 = val2.trim();
+        }
+        if (val2.length > 0) {
+          if (!escapeEntities) val2 = this.replaceEntitiesValue(val2);
+          const newval = this.options.tagValueProcessor(tagName, val2, jPath, hasAttributes, isLeafNode);
+          if (newval === null || newval === void 0) {
+            return val2;
+          } else if (typeof newval !== typeof val2 || newval !== val2) {
+            return newval;
+          } else if (this.options.trimValues) {
+            return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+          } else {
+            const trimmedVal = val2.trim();
+            if (trimmedVal === val2) {
+              return parseValue(val2, this.options.parseTagValue, this.options.numberParseOptions);
+            } else {
+              return val2;
+            }
+          }
+        }
+      }
+    }
+    function resolveNameSpace(tagname) {
+      if (this.options.removeNSPrefix) {
+        const tags = tagname.split(":");
+        const prefix = tagname.charAt(0) === "/" ? "/" : "";
+        if (tags[0] === "xmlns") {
+          return "";
+        }
+        if (tags.length === 2) {
+          tagname = prefix + tags[1];
+        }
+      }
+      return tagname;
+    }
+    var attrsRegx = new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`, "gm");
+    function buildAttributesMap(attrStr, jPath, tagName) {
+      if (!this.options.ignoreAttributes && typeof attrStr === "string") {
+        const matches = util.getAllMatches(attrStr, attrsRegx);
+        const len = matches.length;
+        const attrs = {};
+        for (let i = 0; i < len; i++) {
+          const attrName = this.resolveNameSpace(matches[i][1]);
+          let oldVal = matches[i][4];
+          let aName = this.options.attributeNamePrefix + attrName;
+          if (attrName.length) {
+            if (this.options.transformAttributeName) {
+              aName = this.options.transformAttributeName(aName);
+            }
+            if (aName === "__proto__") aName = "#__proto__";
+            if (oldVal !== void 0) {
+              if (this.options.trimValues) {
+                oldVal = oldVal.trim();
+              }
+              oldVal = this.replaceEntitiesValue(oldVal);
+              const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);
+              if (newVal === null || newVal === void 0) {
+                attrs[aName] = oldVal;
+              } else if (typeof newVal !== typeof oldVal || newVal !== oldVal) {
+                attrs[aName] = newVal;
+              } else {
+                attrs[aName] = parseValue(
+                  oldVal,
+                  this.options.parseAttributeValue,
+                  this.options.numberParseOptions
+                );
+              }
+            } else if (this.options.allowBooleanAttributes) {
+              attrs[aName] = true;
+            }
+          }
+        }
+        if (!Object.keys(attrs).length) {
+          return;
+        }
+        if (this.options.attributesGroupName) {
+          const attrCollection = {};
+          attrCollection[this.options.attributesGroupName] = attrs;
+          return attrCollection;
+        }
+        return attrs;
+      }
+    }
+    var parseXml = function(xmlData) {
+      xmlData = xmlData.replace(/\r\n?/g, "\n");
+      const xmlObj = new xmlNode("!xml");
+      let currentNode = xmlObj;
+      let textData = "";
+      let jPath = "";
+      for (let i = 0; i < xmlData.length; i++) {
+        const ch = xmlData[i];
+        if (ch === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, "Closing Tag is not closed.");
+            let tagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (this.options.removeNSPrefix) {
+              const colonIndex = tagName.indexOf(":");
+              if (colonIndex !== -1) {
+                tagName = tagName.substr(colonIndex + 1);
+              }
+            }
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode) {
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            }
+            const lastTagName = jPath.substring(jPath.lastIndexOf(".") + 1);
+            if (tagName && this.options.unpairedTags.indexOf(tagName) !== -1) {
+              throw new Error(`Unpaired tag can not be used as closing tag: `);
+            }
+            let propIndex = 0;
+            if (lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1) {
+              propIndex = jPath.lastIndexOf(".", jPath.lastIndexOf(".") - 1);
+              this.tagsNodeStack.pop();
+            } else {
+              propIndex = jPath.lastIndexOf(".");
+            }
+            jPath = jPath.substring(0, propIndex);
+            currentNode = this.tagsNodeStack.pop();
+            textData = "";
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            let tagData = readTagExp(xmlData, i, false, "?>");
+            if (!tagData) throw new Error("Pi Tag is not closed.");
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            if (this.options.ignoreDeclaration && tagData.tagName === "?xml" || this.options.ignorePiTags) {
+            } else {
+              const childNode = new xmlNode(tagData.tagName);
+              childNode.add(this.options.textNodeName, "");
+              if (tagData.tagName !== tagData.tagExp && tagData.attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName);
+              }
+              this.addChild(currentNode, childNode, jPath);
+            }
+            i = tagData.closeIndex + 1;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const endIndex = findClosingIndex(xmlData, "-->", i + 4, "Comment is not closed.");
+            if (this.options.commentPropName) {
+              const comment = xmlData.substring(i + 4, endIndex - 2);
+              textData = this.saveTextToParentTag(textData, currentNode, jPath);
+              currentNode.add(this.options.commentPropName, [{ [this.options.textNodeName]: comment }]);
+            }
+            i = endIndex;
+          } else if (xmlData.substr(i + 1, 2) === "!D") {
+            const result = readDocType(xmlData, i);
+            this.docTypeEntities = result.entities;
+            i = result.i;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "CDATA is not closed.") - 2;
+            const tagExp = xmlData.substring(i + 9, closeIndex);
+            textData = this.saveTextToParentTag(textData, currentNode, jPath);
+            let val2 = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);
+            if (val2 == void 0) val2 = "";
+            if (this.options.cdataPropName) {
+              currentNode.add(this.options.cdataPropName, [{ [this.options.textNodeName]: tagExp }]);
+            } else {
+              currentNode.add(this.options.textNodeName, val2);
+            }
+            i = closeIndex + 2;
+          } else {
+            let result = readTagExp(xmlData, i, this.options.removeNSPrefix);
+            let tagName = result.tagName;
+            const rawTagName = result.rawTagName;
+            let tagExp = result.tagExp;
+            let attrExpPresent = result.attrExpPresent;
+            let closeIndex = result.closeIndex;
+            if (this.options.transformTagName) {
+              tagName = this.options.transformTagName(tagName);
+            }
+            if (currentNode && textData) {
+              if (currentNode.tagname !== "!xml") {
+                textData = this.saveTextToParentTag(textData, currentNode, jPath, false);
+              }
+            }
+            const lastTag = currentNode;
+            if (lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1) {
+              currentNode = this.tagsNodeStack.pop();
+              jPath = jPath.substring(0, jPath.lastIndexOf("."));
+            }
+            if (tagName !== xmlObj.tagname) {
+              jPath += jPath ? "." + tagName : tagName;
+            }
+            if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) {
+              let tagContent = "";
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                i = result.closeIndex;
+              } else if (this.options.unpairedTags.indexOf(tagName) !== -1) {
+                i = result.closeIndex;
+              } else {
+                const result2 = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);
+                if (!result2) throw new Error(`Unexpected end of ${rawTagName}`);
+                i = result2.i;
+                tagContent = result2.tagContent;
+              }
+              const childNode = new xmlNode(tagName);
+              if (tagName !== tagExp && attrExpPresent) {
+                childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+              }
+              if (tagContent) {
+                tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);
+              }
+              jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              childNode.add(this.options.textNodeName, tagContent);
+              this.addChild(currentNode, childNode, jPath);
+            } else {
+              if (tagExp.length > 0 && tagExp.lastIndexOf("/") === tagExp.length - 1) {
+                if (tagName[tagName.length - 1] === "/") {
+                  tagName = tagName.substr(0, tagName.length - 1);
+                  jPath = jPath.substr(0, jPath.length - 1);
+                  tagExp = tagName;
+                } else {
+                  tagExp = tagExp.substr(0, tagExp.length - 1);
+                }
+                if (this.options.transformTagName) {
+                  tagName = this.options.transformTagName(tagName);
+                }
+                const childNode = new xmlNode(tagName);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                jPath = jPath.substr(0, jPath.lastIndexOf("."));
+              } else {
+                const childNode = new xmlNode(tagName);
+                this.tagsNodeStack.push(currentNode);
+                if (tagName !== tagExp && attrExpPresent) {
+                  childNode[":@"] = this.buildAttributesMap(tagExp, jPath, tagName);
+                }
+                this.addChild(currentNode, childNode, jPath);
+                currentNode = childNode;
+              }
+              textData = "";
+              i = closeIndex;
+            }
+          }
+        } else {
+          textData += xmlData[i];
+        }
+      }
+      return xmlObj.child;
+    };
+    function addChild(currentNode, childNode, jPath) {
+      const result = this.options.updateTag(childNode.tagname, jPath, childNode[":@"]);
+      if (result === false) {
+      } else if (typeof result === "string") {
+        childNode.tagname = result;
+        currentNode.addChild(childNode);
+      } else {
+        currentNode.addChild(childNode);
+      }
+    }
+    var replaceEntitiesValue = function(val2) {
+      if (this.options.processEntities) {
+        for (let entityName2 in this.docTypeEntities) {
+          const entity = this.docTypeEntities[entityName2];
+          val2 = val2.replace(entity.regx, entity.val);
+        }
+        for (let entityName2 in this.lastEntities) {
+          const entity = this.lastEntities[entityName2];
+          val2 = val2.replace(entity.regex, entity.val);
+        }
+        if (this.options.htmlEntities) {
+          for (let entityName2 in this.htmlEntities) {
+            const entity = this.htmlEntities[entityName2];
+            val2 = val2.replace(entity.regex, entity.val);
+          }
+        }
+        val2 = val2.replace(this.ampEntity.regex, this.ampEntity.val);
+      }
+      return val2;
+    };
+    function saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {
+      if (textData) {
+        if (isLeafNode === void 0) isLeafNode = Object.keys(currentNode.child).length === 0;
+        textData = this.parseTextData(
+          textData,
+          currentNode.tagname,
+          jPath,
+          false,
+          currentNode[":@"] ? Object.keys(currentNode[":@"]).length !== 0 : false,
+          isLeafNode
+        );
+        if (textData !== void 0 && textData !== "")
+          currentNode.add(this.options.textNodeName, textData);
+        textData = "";
+      }
+      return textData;
+    }
+    function isItStopNode(stopNodes, jPath, currentTagName) {
+      const allNodesExp = "*." + currentTagName;
+      for (const stopNodePath in stopNodes) {
+        const stopNodeExp = stopNodes[stopNodePath];
+        if (allNodesExp === stopNodeExp || jPath === stopNodeExp) return true;
+      }
+      return false;
+    }
+    function tagExpWithClosingIndex(xmlData, i, closingChar = ">") {
+      let attrBoundary;
+      let tagExp = "";
+      for (let index = i; index < xmlData.length; index++) {
+        let ch = xmlData[index];
+        if (attrBoundary) {
+          if (ch === attrBoundary) attrBoundary = "";
+        } else if (ch === '"' || ch === "'") {
+          attrBoundary = ch;
+        } else if (ch === closingChar[0]) {
+          if (closingChar[1]) {
+            if (xmlData[index + 1] === closingChar[1]) {
+              return {
+                data: tagExp,
+                index
+              };
+            }
+          } else {
+            return {
+              data: tagExp,
+              index
+            };
+          }
+        } else if (ch === "	") {
+          ch = " ";
+        }
+        tagExp += ch;
+      }
+    }
+    function findClosingIndex(xmlData, str, i, errMsg) {
+      const closingIndex = xmlData.indexOf(str, i);
+      if (closingIndex === -1) {
+        throw new Error(errMsg);
+      } else {
+        return closingIndex + str.length - 1;
+      }
+    }
+    function readTagExp(xmlData, i, removeNSPrefix, closingChar = ">") {
+      const result = tagExpWithClosingIndex(xmlData, i + 1, closingChar);
+      if (!result) return;
+      let tagExp = result.data;
+      const closeIndex = result.index;
+      const separatorIndex = tagExp.search(/\s/);
+      let tagName = tagExp;
+      let attrExpPresent = true;
+      if (separatorIndex !== -1) {
+        tagName = tagExp.substring(0, separatorIndex);
+        tagExp = tagExp.substring(separatorIndex + 1).trimStart();
+      }
+      const rawTagName = tagName;
+      if (removeNSPrefix) {
+        const colonIndex = tagName.indexOf(":");
+        if (colonIndex !== -1) {
+          tagName = tagName.substr(colonIndex + 1);
+          attrExpPresent = tagName !== result.data.substr(colonIndex + 1);
+        }
+      }
+      return {
+        tagName,
+        tagExp,
+        closeIndex,
+        attrExpPresent,
+        rawTagName
+      };
+    }
+    function readStopNodeData(xmlData, tagName, i) {
+      const startIndex = i;
+      let openTagCount = 1;
+      for (; i < xmlData.length; i++) {
+        if (xmlData[i] === "<") {
+          if (xmlData[i + 1] === "/") {
+            const closeIndex = findClosingIndex(xmlData, ">", i, `${tagName} is not closed`);
+            let closeTagName = xmlData.substring(i + 2, closeIndex).trim();
+            if (closeTagName === tagName) {
+              openTagCount--;
+              if (openTagCount === 0) {
+                return {
+                  tagContent: xmlData.substring(startIndex, i),
+                  i: closeIndex
+                };
+              }
+            }
+            i = closeIndex;
+          } else if (xmlData[i + 1] === "?") {
+            const closeIndex = findClosingIndex(xmlData, "?>", i + 1, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 3) === "!--") {
+            const closeIndex = findClosingIndex(xmlData, "-->", i + 3, "StopNode is not closed.");
+            i = closeIndex;
+          } else if (xmlData.substr(i + 1, 2) === "![") {
+            const closeIndex = findClosingIndex(xmlData, "]]>", i, "StopNode is not closed.") - 2;
+            i = closeIndex;
+          } else {
+            const tagData = readTagExp(xmlData, i, ">");
+            if (tagData) {
+              const openTagName = tagData && tagData.tagName;
+              if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length - 1] !== "/") {
+                openTagCount++;
+              }
+              i = tagData.closeIndex;
+            }
+          }
+        }
+      }
+    }
+    function parseValue(val2, shouldParse, options) {
+      if (shouldParse && typeof val2 === "string") {
+        const newval = val2.trim();
+        if (newval === "true") return true;
+        else if (newval === "false") return false;
+        else return toNumber(val2, options);
+      } else {
+        if (util.isExist(val2)) {
+          return val2;
+        } else {
+          return "";
+        }
+      }
+    }
+    module2.exports = OrderedObjParser;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js
+var require_node2json = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js"(exports2) {
+    "use strict";
+    function prettify(node, options) {
+      return compress(node, options);
+    }
+    function compress(arr, options, jPath) {
+      let text;
+      const compressedObj = {};
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const property = propName(tagObj);
+        let newJpath = "";
+        if (jPath === void 0) newJpath = property;
+        else newJpath = jPath + "." + property;
+        if (property === options.textNodeName) {
+          if (text === void 0) text = tagObj[property];
+          else text += "" + tagObj[property];
+        } else if (property === void 0) {
+          continue;
+        } else if (tagObj[property]) {
+          let val2 = compress(tagObj[property], options, newJpath);
+          const isLeaf = isLeafTag(val2, options);
+          if (tagObj[":@"]) {
+            assignAttributes(val2, tagObj[":@"], newJpath, options);
+          } else if (Object.keys(val2).length === 1 && val2[options.textNodeName] !== void 0 && !options.alwaysCreateTextNode) {
+            val2 = val2[options.textNodeName];
+          } else if (Object.keys(val2).length === 0) {
+            if (options.alwaysCreateTextNode) val2[options.textNodeName] = "";
+            else val2 = "";
+          }
+          if (compressedObj[property] !== void 0 && compressedObj.hasOwnProperty(property)) {
+            if (!Array.isArray(compressedObj[property])) {
+              compressedObj[property] = [compressedObj[property]];
+            }
+            compressedObj[property].push(val2);
+          } else {
+            if (options.isArray(property, newJpath, isLeaf)) {
+              compressedObj[property] = [val2];
+            } else {
+              compressedObj[property] = val2;
+            }
+          }
+        }
+      }
+      if (typeof text === "string") {
+        if (text.length > 0) compressedObj[options.textNodeName] = text;
+      } else if (text !== void 0) compressedObj[options.textNodeName] = text;
+      return compressedObj;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (key !== ":@") return key;
+      }
+    }
+    function assignAttributes(obj, attrMap, jpath, options) {
+      if (attrMap) {
+        const keys = Object.keys(attrMap);
+        const len = keys.length;
+        for (let i = 0; i < len; i++) {
+          const atrrName = keys[i];
+          if (options.isArray(atrrName, jpath + "." + atrrName, true, true)) {
+            obj[atrrName] = [attrMap[atrrName]];
+          } else {
+            obj[atrrName] = attrMap[atrrName];
+          }
+        }
+      }
+    }
+    function isLeafTag(obj, options) {
+      const { textNodeName } = options;
+      const propCount = Object.keys(obj).length;
+      if (propCount === 0) {
+        return true;
+      }
+      if (propCount === 1 && (obj[textNodeName] || typeof obj[textNodeName] === "boolean" || obj[textNodeName] === 0)) {
+        return true;
+      }
+      return false;
+    }
+    exports2.prettify = prettify;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js
+var require_XMLParser = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js"(exports2, module2) {
+    var { buildOptions } = require_OptionsBuilder();
+    var OrderedObjParser = require_OrderedObjParser();
+    var { prettify } = require_node2json();
+    var validator = require_validator2();
+    var XMLParser2 = class {
+      constructor(options) {
+        this.externalEntities = {};
+        this.options = buildOptions(options);
+      }
+      /**
+       * Parse XML dats to JS object 
+       * @param {string|Buffer} xmlData 
+       * @param {boolean|Object} validationOption 
+       */
+      parse(xmlData, validationOption) {
+        if (typeof xmlData === "string") {
+        } else if (xmlData.toString) {
+          xmlData = xmlData.toString();
+        } else {
+          throw new Error("XML data is accepted in String or Bytes[] form.");
+        }
+        if (validationOption) {
+          if (validationOption === true) validationOption = {};
+          const result = validator.validate(xmlData, validationOption);
+          if (result !== true) {
+            throw Error(`${result.err.msg}:${result.err.line}:${result.err.col}`);
+          }
+        }
+        const orderedObjParser = new OrderedObjParser(this.options);
+        orderedObjParser.addExternalEntities(this.externalEntities);
+        const orderedResult = orderedObjParser.parseXml(xmlData);
+        if (this.options.preserveOrder || orderedResult === void 0) return orderedResult;
+        else return prettify(orderedResult, this.options);
+      }
+      /**
+       * Add Entity which is not by default supported by this library
+       * @param {string} key 
+       * @param {string} value 
+       */
+      addEntity(key, value) {
+        if (value.indexOf("&") !== -1) {
+          throw new Error("Entity value can't have '&'");
+        } else if (key.indexOf("&") !== -1 || key.indexOf(";") !== -1) {
+          throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '
'");
+        } else if (value === "&") {
+          throw new Error("An entity with value '&' is not permitted");
+        } else {
+          this.externalEntities[key] = value;
+        }
+      }
+    };
+    module2.exports = XMLParser2;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js
+var require_orderedJs2Xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js"(exports2, module2) {
+    var EOL = "\n";
+    function toXml(jArray, options) {
+      let indentation = "";
+      if (options.format && options.indentBy.length > 0) {
+        indentation = EOL;
+      }
+      return arrToStr(jArray, options, "", indentation);
+    }
+    function arrToStr(arr, options, jPath, indentation) {
+      let xmlStr = "";
+      let isPreviousElementTag = false;
+      for (let i = 0; i < arr.length; i++) {
+        const tagObj = arr[i];
+        const tagName = propName(tagObj);
+        if (tagName === void 0) continue;
+        let newJPath = "";
+        if (jPath.length === 0) newJPath = tagName;
+        else newJPath = `${jPath}.${tagName}`;
+        if (tagName === options.textNodeName) {
+          let tagText = tagObj[tagName];
+          if (!isStopNode(newJPath, options)) {
+            tagText = options.tagValueProcessor(tagName, tagText);
+            tagText = replaceEntitiesValue(tagText, options);
+          }
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += tagText;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.cdataPropName) {
+          if (isPreviousElementTag) {
+            xmlStr += indentation;
+          }
+          xmlStr += ``;
+          isPreviousElementTag = false;
+          continue;
+        } else if (tagName === options.commentPropName) {
+          xmlStr += indentation + ``;
+          isPreviousElementTag = true;
+          continue;
+        } else if (tagName[0] === "?") {
+          const attStr2 = attr_to_str(tagObj[":@"], options);
+          const tempInd = tagName === "?xml" ? "" : indentation;
+          let piTextNodeName = tagObj[tagName][0][options.textNodeName];
+          piTextNodeName = piTextNodeName.length !== 0 ? " " + piTextNodeName : "";
+          xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr2}?>`;
+          isPreviousElementTag = true;
+          continue;
+        }
+        let newIdentation = indentation;
+        if (newIdentation !== "") {
+          newIdentation += options.indentBy;
+        }
+        const attStr = attr_to_str(tagObj[":@"], options);
+        const tagStart = indentation + `<${tagName}${attStr}`;
+        const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);
+        if (options.unpairedTags.indexOf(tagName) !== -1) {
+          if (options.suppressUnpairedNode) xmlStr += tagStart + ">";
+          else xmlStr += tagStart + "/>";
+        } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {
+          xmlStr += tagStart + "/>";
+        } else if (tagValue && tagValue.endsWith(">")) {
+          xmlStr += tagStart + `>${tagValue}${indentation}`;
+        } else {
+          xmlStr += tagStart + ">";
+          if (tagValue && indentation !== "" && (tagValue.includes("/>") || tagValue.includes("`;
+        }
+        isPreviousElementTag = true;
+      }
+      return xmlStr;
+    }
+    function propName(obj) {
+      const keys = Object.keys(obj);
+      for (let i = 0; i < keys.length; i++) {
+        const key = keys[i];
+        if (!obj.hasOwnProperty(key)) continue;
+        if (key !== ":@") return key;
+      }
+    }
+    function attr_to_str(attrMap, options) {
+      let attrStr = "";
+      if (attrMap && !options.ignoreAttributes) {
+        for (let attr in attrMap) {
+          if (!attrMap.hasOwnProperty(attr)) continue;
+          let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);
+          attrVal = replaceEntitiesValue(attrVal, options);
+          if (attrVal === true && options.suppressBooleanAttributes) {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;
+          } else {
+            attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}="${attrVal}"`;
+          }
+        }
+      }
+      return attrStr;
+    }
+    function isStopNode(jPath, options) {
+      jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);
+      let tagName = jPath.substr(jPath.lastIndexOf(".") + 1);
+      for (let index in options.stopNodes) {
+        if (options.stopNodes[index] === jPath || options.stopNodes[index] === "*." + tagName) return true;
+      }
+      return false;
+    }
+    function replaceEntitiesValue(textValue, options) {
+      if (textValue && textValue.length > 0 && options.processEntities) {
+        for (let i = 0; i < options.entities.length; i++) {
+          const entity = options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    }
+    module2.exports = toXml;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js
+var require_json2xml = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js"(exports2, module2) {
+    "use strict";
+    var buildFromOrderedJs = require_orderedJs2Xml();
+    var defaultOptions = {
+      attributeNamePrefix: "@_",
+      attributesGroupName: false,
+      textNodeName: "#text",
+      ignoreAttributes: true,
+      cdataPropName: false,
+      format: false,
+      indentBy: "  ",
+      suppressEmptyNode: false,
+      suppressUnpairedNode: true,
+      suppressBooleanAttributes: true,
+      tagValueProcessor: function(key, a) {
+        return a;
+      },
+      attributeValueProcessor: function(attrName, a) {
+        return a;
+      },
+      preserveOrder: false,
+      commentPropName: false,
+      unpairedTags: [],
+      entities: [
+        { regex: new RegExp("&", "g"), val: "&" },
+        //it must be on top
+        { regex: new RegExp(">", "g"), val: ">" },
+        { regex: new RegExp("<", "g"), val: "<" },
+        { regex: new RegExp("'", "g"), val: "'" },
+        { regex: new RegExp('"', "g"), val: """ }
+      ],
+      processEntities: true,
+      stopNodes: [],
+      // transformTagName: false,
+      // transformAttributeName: false,
+      oneListGroup: false
+    };
+    function Builder(options) {
+      this.options = Object.assign({}, defaultOptions, options);
+      if (this.options.ignoreAttributes || this.options.attributesGroupName) {
+        this.isAttribute = function() {
+          return false;
+        };
+      } else {
+        this.attrPrefixLen = this.options.attributeNamePrefix.length;
+        this.isAttribute = isAttribute;
+      }
+      this.processTextOrObjNode = processTextOrObjNode;
+      if (this.options.format) {
+        this.indentate = indentate;
+        this.tagEndChar = ">\n";
+        this.newLine = "\n";
+      } else {
+        this.indentate = function() {
+          return "";
+        };
+        this.tagEndChar = ">";
+        this.newLine = "";
+      }
+    }
+    Builder.prototype.build = function(jObj) {
+      if (this.options.preserveOrder) {
+        return buildFromOrderedJs(jObj, this.options);
+      } else {
+        if (Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1) {
+          jObj = {
+            [this.options.arrayNodeName]: jObj
+          };
+        }
+        return this.j2x(jObj, 0).val;
+      }
+    };
+    Builder.prototype.j2x = function(jObj, level) {
+      let attrStr = "";
+      let val2 = "";
+      for (let key in jObj) {
+        if (!Object.prototype.hasOwnProperty.call(jObj, key)) continue;
+        if (typeof jObj[key] === "undefined") {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          }
+        } else if (jObj[key] === null) {
+          if (this.isAttribute(key)) {
+            val2 += "";
+          } else if (key[0] === "?") {
+            val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+          } else {
+            val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+          }
+        } else if (jObj[key] instanceof Date) {
+          val2 += this.buildTextValNode(jObj[key], key, "", level);
+        } else if (typeof jObj[key] !== "object") {
+          const attr = this.isAttribute(key);
+          if (attr) {
+            attrStr += this.buildAttrPairStr(attr, "" + jObj[key]);
+          } else {
+            if (key === this.options.textNodeName) {
+              let newval = this.options.tagValueProcessor(key, "" + jObj[key]);
+              val2 += this.replaceEntitiesValue(newval);
+            } else {
+              val2 += this.buildTextValNode(jObj[key], key, "", level);
+            }
+          }
+        } else if (Array.isArray(jObj[key])) {
+          const arrLen = jObj[key].length;
+          let listTagVal = "";
+          let listTagAttr = "";
+          for (let j = 0; j < arrLen; j++) {
+            const item = jObj[key][j];
+            if (typeof item === "undefined") {
+            } else if (item === null) {
+              if (key[0] === "?") val2 += this.indentate(level) + "<" + key + "?" + this.tagEndChar;
+              else val2 += this.indentate(level) + "<" + key + "/" + this.tagEndChar;
+            } else if (typeof item === "object") {
+              if (this.options.oneListGroup) {
+                const result = this.j2x(item, level + 1);
+                listTagVal += result.val;
+                if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {
+                  listTagAttr += result.attrStr;
+                }
+              } else {
+                listTagVal += this.processTextOrObjNode(item, key, level);
+              }
+            } else {
+              if (this.options.oneListGroup) {
+                let textValue = this.options.tagValueProcessor(key, item);
+                textValue = this.replaceEntitiesValue(textValue);
+                listTagVal += textValue;
+              } else {
+                listTagVal += this.buildTextValNode(item, key, "", level);
+              }
+            }
+          }
+          if (this.options.oneListGroup) {
+            listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);
+          }
+          val2 += listTagVal;
+        } else {
+          if (this.options.attributesGroupName && key === this.options.attributesGroupName) {
+            const Ks = Object.keys(jObj[key]);
+            const L = Ks.length;
+            for (let j = 0; j < L; j++) {
+              attrStr += this.buildAttrPairStr(Ks[j], "" + jObj[key][Ks[j]]);
+            }
+          } else {
+            val2 += this.processTextOrObjNode(jObj[key], key, level);
+          }
+        }
+      }
+      return { attrStr, val: val2 };
+    };
+    Builder.prototype.buildAttrPairStr = function(attrName, val2) {
+      val2 = this.options.attributeValueProcessor(attrName, "" + val2);
+      val2 = this.replaceEntitiesValue(val2);
+      if (this.options.suppressBooleanAttributes && val2 === "true") {
+        return " " + attrName;
+      } else return " " + attrName + '="' + val2 + '"';
+    };
+    function processTextOrObjNode(object, key, level) {
+      const result = this.j2x(object, level + 1);
+      if (object[this.options.textNodeName] !== void 0 && Object.keys(object).length === 1) {
+        return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);
+      } else {
+        return this.buildObjectNode(result.val, key, result.attrStr, level);
+      }
+    }
+    Builder.prototype.buildObjectNode = function(val2, key, attrStr, level) {
+      if (val2 === "") {
+        if (key[0] === "?") return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+        else {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        }
+      } else {
+        let tagEndExp = "" + val2 + tagEndExp;
+        } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {
+          return this.indentate(level) + `` + this.newLine;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + piClosingChar + this.tagEndChar + val2 + this.indentate(level) + tagEndExp;
+        }
+      }
+    };
+    Builder.prototype.closeTag = function(key) {
+      let closeTag = "";
+      if (this.options.unpairedTags.indexOf(key) !== -1) {
+        if (!this.options.suppressUnpairedNode) closeTag = "/";
+      } else if (this.options.suppressEmptyNode) {
+        closeTag = "/";
+      } else {
+        closeTag = `>` + this.newLine;
+      } else if (this.options.commentPropName !== false && key === this.options.commentPropName) {
+        return this.indentate(level) + `` + this.newLine;
+      } else if (key[0] === "?") {
+        return this.indentate(level) + "<" + key + attrStr + "?" + this.tagEndChar;
+      } else {
+        let textValue = this.options.tagValueProcessor(key, val2);
+        textValue = this.replaceEntitiesValue(textValue);
+        if (textValue === "") {
+          return this.indentate(level) + "<" + key + attrStr + this.closeTag(key) + this.tagEndChar;
+        } else {
+          return this.indentate(level) + "<" + key + attrStr + ">" + textValue + " 0 && this.options.processEntities) {
+        for (let i = 0; i < this.options.entities.length; i++) {
+          const entity = this.options.entities[i];
+          textValue = textValue.replace(entity.regex, entity.val);
+        }
+      }
+      return textValue;
+    };
+    function indentate(level) {
+      return this.options.indentBy.repeat(level);
+    }
+    function isAttribute(name) {
+      if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {
+        return name.substr(this.attrPrefixLen);
+      } else {
+        return false;
+      }
+    }
+    module2.exports = Builder;
+  }
+});
+
+// ../../../node_modules/fast-xml-parser/src/fxp.js
+var require_fxp = __commonJS({
+  "../../../node_modules/fast-xml-parser/src/fxp.js"(exports2, module2) {
+    "use strict";
+    var validator = require_validator2();
+    var XMLParser2 = require_XMLParser();
+    var XMLBuilder = require_json2xml();
+    module2.exports = {
+      XMLParser: XMLParser2,
+      XMLValidator: validator,
+      XMLBuilder
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js
+var import_smithy_client3, import_fast_xml_parser, parseXmlBody, parseXmlErrorBody, loadRestXmlErrorCode;
+var init_parseXmlBody = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js"() {
+    import_smithy_client3 = __toESM(require_dist_cjs33());
+    import_fast_xml_parser = __toESM(require_fxp());
+    init_common();
+    parseXmlBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {
+      if (encoded.length) {
+        const parser = new import_fast_xml_parser.XMLParser({
+          attributeNamePrefix: "",
+          htmlEntities: true,
+          ignoreAttributes: false,
+          ignoreDeclaration: true,
+          parseTagValue: false,
+          trimValues: false,
+          tagValueProcessor: (_, val2) => val2.trim() === "" && val2.includes("\n") ? "" : void 0
+        });
+        parser.addEntity("#xD", "\r");
+        parser.addEntity("#10", "\n");
+        let parsedObj;
+        try {
+          parsedObj = parser.parse(encoded, true);
+        } catch (e) {
+          if (e && typeof e === "object") {
+            Object.defineProperty(e, "$responseBodyText", {
+              value: encoded
+            });
+          }
+          throw e;
+        }
+        const textNodeName = "#text";
+        const key = Object.keys(parsedObj)[0];
+        const parsedObjToReturn = parsedObj[key];
+        if (parsedObjToReturn[textNodeName]) {
+          parsedObjToReturn[key] = parsedObjToReturn[textNodeName];
+          delete parsedObjToReturn[textNodeName];
+        }
+        return (0, import_smithy_client3.getValueFromTextNode)(parsedObjToReturn);
+      }
+      return {};
+    });
+    parseXmlErrorBody = async (errorBody, context) => {
+      const value = await parseXmlBody(errorBody, context);
+      if (value.Error) {
+        value.Error.message = value.Error.message ?? value.Error.Message;
+      }
+      return value;
+    };
+    loadRestXmlErrorCode = (output, data) => {
+      if (data?.Error?.Code !== void 0) {
+        return data.Error.Code;
+      }
+      if (data?.Code !== void 0) {
+        return data.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js
+var init_protocols2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js"() {
+    init_coercing_serializers();
+    init_awsExpectUnion();
+    init_parseJsonBody();
+    init_parseXmlBody();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/core/dist-es/index.js
+var dist_es_exports2 = {};
+__export(dist_es_exports2, {
+  AWSSDKSigV4Signer: () => AWSSDKSigV4Signer,
+  AwsSdkSigV4ASigner: () => AwsSdkSigV4ASigner,
+  AwsSdkSigV4Signer: () => AwsSdkSigV4Signer,
+  NODE_SIGV4A_CONFIG_OPTIONS: () => NODE_SIGV4A_CONFIG_OPTIONS,
+  _toBool: () => _toBool,
+  _toNum: () => _toNum,
+  _toStr: () => _toStr,
+  awsExpectUnion: () => awsExpectUnion,
+  emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion,
+  loadRestJsonErrorCode: () => loadRestJsonErrorCode,
+  loadRestXmlErrorCode: () => loadRestXmlErrorCode,
+  parseJsonBody: () => parseJsonBody,
+  parseJsonErrorBody: () => parseJsonErrorBody,
+  parseXmlBody: () => parseXmlBody,
+  parseXmlErrorBody: () => parseXmlErrorBody,
+  resolveAWSSDKSigV4Config: () => resolveAWSSDKSigV4Config,
+  resolveAwsSdkSigV4AConfig: () => resolveAwsSdkSigV4AConfig,
+  resolveAwsSdkSigV4Config: () => resolveAwsSdkSigV4Config,
+  validateSigningProperties: () => validateSigningProperties
+});
+var init_dist_es2 = __esm({
+  "../../../node_modules/@aws-sdk/core/dist-es/index.js"() {
+    init_client();
+    init_httpAuthSchemes2();
+    init_protocols2();
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSFNHttpAuthSchemeProvider = exports2.defaultSFNHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSFNHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSFNHttpAuthSchemeParametersProvider = defaultSFNHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "states",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    var defaultSFNHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSFNHttpAuthSchemeProvider = defaultSFNHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/tslib/tslib.es6.mjs
+var tslib_es6_exports = {};
+__export(tslib_es6_exports, {
+  __addDisposableResource: () => __addDisposableResource,
+  __assign: () => __assign,
+  __asyncDelegator: () => __asyncDelegator,
+  __asyncGenerator: () => __asyncGenerator,
+  __asyncValues: () => __asyncValues,
+  __await: () => __await,
+  __awaiter: () => __awaiter,
+  __classPrivateFieldGet: () => __classPrivateFieldGet,
+  __classPrivateFieldIn: () => __classPrivateFieldIn,
+  __classPrivateFieldSet: () => __classPrivateFieldSet,
+  __createBinding: () => __createBinding,
+  __decorate: () => __decorate,
+  __disposeResources: () => __disposeResources,
+  __esDecorate: () => __esDecorate,
+  __exportStar: () => __exportStar,
+  __extends: () => __extends,
+  __generator: () => __generator,
+  __importDefault: () => __importDefault,
+  __importStar: () => __importStar,
+  __makeTemplateObject: () => __makeTemplateObject,
+  __metadata: () => __metadata,
+  __param: () => __param,
+  __propKey: () => __propKey,
+  __read: () => __read,
+  __rest: () => __rest,
+  __rewriteRelativeImportExtension: () => __rewriteRelativeImportExtension,
+  __runInitializers: () => __runInitializers2,
+  __setFunctionName: () => __setFunctionName,
+  __spread: () => __spread,
+  __spreadArray: () => __spreadArray,
+  __spreadArrays: () => __spreadArrays,
+  __values: () => __values,
+  default: () => tslib_es6_default
+});
+function __extends(d, b) {
+  if (typeof b !== "function" && b !== null)
+    throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+  extendStatics(d, b);
+  function __() {
+    this.constructor = d;
+  }
+  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+}
+function __rest(s, e) {
+  var t = {};
+  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+    t[p] = s[p];
+  if (s != null && typeof Object.getOwnPropertySymbols === "function")
+    for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+      if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+        t[p[i]] = s[p[i]];
+    }
+  return t;
+}
+function __decorate(decorators, target, key, desc) {
+  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+  return c > 3 && r && Object.defineProperty(target, key, r), r;
+}
+function __param(paramIndex, decorator) {
+  return function(target, key) {
+    decorator(target, key, paramIndex);
+  };
+}
+function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
+  function accept(f) {
+    if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected");
+    return f;
+  }
+  var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
+  var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
+  var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
+  var _, done = false;
+  for (var i = decorators.length - 1; i >= 0; i--) {
+    var context = {};
+    for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
+    for (var p in contextIn.access) context.access[p] = contextIn.access[p];
+    context.addInitializer = function(f) {
+      if (done) throw new TypeError("Cannot add initializers after decoration has completed");
+      extraInitializers.push(accept(f || null));
+    };
+    var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
+    if (kind === "accessor") {
+      if (result === void 0) continue;
+      if (result === null || typeof result !== "object") throw new TypeError("Object expected");
+      if (_ = accept(result.get)) descriptor.get = _;
+      if (_ = accept(result.set)) descriptor.set = _;
+      if (_ = accept(result.init)) initializers.unshift(_);
+    } else if (_ = accept(result)) {
+      if (kind === "field") initializers.unshift(_);
+      else descriptor[key] = _;
+    }
+  }
+  if (target) Object.defineProperty(target, contextIn.name, descriptor);
+  done = true;
+}
+function __runInitializers2(thisArg, initializers, value) {
+  var useValue = arguments.length > 2;
+  for (var i = 0; i < initializers.length; i++) {
+    value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
+  }
+  return useValue ? value : void 0;
+}
+function __propKey(x) {
+  return typeof x === "symbol" ? x : "".concat(x);
+}
+function __setFunctionName(f, name, prefix) {
+  if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
+  return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
+}
+function __metadata(metadataKey, metadataValue) {
+  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
+}
+function __awaiter(thisArg, _arguments, P, generator) {
+  function adopt(value) {
+    return value instanceof P ? value : new P(function(resolve6) {
+      resolve6(value);
+    });
+  }
+  return new (P || (P = Promise))(function(resolve6, reject) {
+    function fulfilled(value) {
+      try {
+        step(generator.next(value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function rejected(value) {
+      try {
+        step(generator["throw"](value));
+      } catch (e) {
+        reject(e);
+      }
+    }
+    function step(result) {
+      result.done ? resolve6(result.value) : adopt(result.value).then(fulfilled, rejected);
+    }
+    step((generator = generator.apply(thisArg, _arguments || [])).next());
+  });
+}
+function __generator(thisArg, body) {
+  var _ = { label: 0, sent: function() {
+    if (t[0] & 1) throw t[1];
+    return t[1];
+  }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
+  return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
+    return this;
+  }), g;
+  function verb(n) {
+    return function(v) {
+      return step([n, v]);
+    };
+  }
+  function step(op) {
+    if (f) throw new TypeError("Generator is already executing.");
+    while (g && (g = 0, op[0] && (_ = 0)), _) try {
+      if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
+      if (y = 0, t) op = [op[0] & 2, t.value];
+      switch (op[0]) {
+        case 0:
+        case 1:
+          t = op;
+          break;
+        case 4:
+          _.label++;
+          return { value: op[1], done: false };
+        case 5:
+          _.label++;
+          y = op[1];
+          op = [0];
+          continue;
+        case 7:
+          op = _.ops.pop();
+          _.trys.pop();
+          continue;
+        default:
+          if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
+            _ = 0;
+            continue;
+          }
+          if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
+            _.label = op[1];
+            break;
+          }
+          if (op[0] === 6 && _.label < t[1]) {
+            _.label = t[1];
+            t = op;
+            break;
+          }
+          if (t && _.label < t[2]) {
+            _.label = t[2];
+            _.ops.push(op);
+            break;
+          }
+          if (t[2]) _.ops.pop();
+          _.trys.pop();
+          continue;
+      }
+      op = body.call(thisArg, _);
+    } catch (e) {
+      op = [6, e];
+      y = 0;
+    } finally {
+      f = t = 0;
+    }
+    if (op[0] & 5) throw op[1];
+    return { value: op[0] ? op[1] : void 0, done: true };
+  }
+}
+function __exportStar(m, o) {
+  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
+}
+function __values(o) {
+  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
+  if (m) return m.call(o);
+  if (o && typeof o.length === "number") return {
+    next: function() {
+      if (o && i >= o.length) o = void 0;
+      return { value: o && o[i++], done: !o };
+    }
+  };
+  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
+}
+function __read(o, n) {
+  var m = typeof Symbol === "function" && o[Symbol.iterator];
+  if (!m) return o;
+  var i = m.call(o), r, ar = [], e;
+  try {
+    while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
+  } catch (error) {
+    e = { error };
+  } finally {
+    try {
+      if (r && !r.done && (m = i["return"])) m.call(i);
+    } finally {
+      if (e) throw e.error;
+    }
+  }
+  return ar;
+}
+function __spread() {
+  for (var ar = [], i = 0; i < arguments.length; i++)
+    ar = ar.concat(__read(arguments[i]));
+  return ar;
+}
+function __spreadArrays() {
+  for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
+  for (var r = Array(s), k = 0, i = 0; i < il; i++)
+    for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
+      r[k] = a[j];
+  return r;
+}
+function __spreadArray(to, from, pack) {
+  if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
+    if (ar || !(i in from)) {
+      if (!ar) ar = Array.prototype.slice.call(from, 0, i);
+      ar[i] = from[i];
+    }
+  }
+  return to.concat(ar || Array.prototype.slice.call(from));
+}
+function __await(v) {
+  return this instanceof __await ? (this.v = v, this) : new __await(v);
+}
+function __asyncGenerator(thisArg, _arguments, generator) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var g = generator.apply(thisArg, _arguments || []), i, q = [];
+  return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i;
+  function awaitReturn(f) {
+    return function(v) {
+      return Promise.resolve(v).then(f, reject);
+    };
+  }
+  function verb(n, f) {
+    if (g[n]) {
+      i[n] = function(v) {
+        return new Promise(function(a, b) {
+          q.push([n, v, a, b]) > 1 || resume(n, v);
+        });
+      };
+      if (f) i[n] = f(i[n]);
+    }
+  }
+  function resume(n, v) {
+    try {
+      step(g[n](v));
+    } catch (e) {
+      settle(q[0][3], e);
+    }
+  }
+  function step(r) {
+    r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r);
+  }
+  function fulfill(value) {
+    resume("next", value);
+  }
+  function reject(value) {
+    resume("throw", value);
+  }
+  function settle(f, v) {
+    if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);
+  }
+}
+function __asyncDelegator(o) {
+  var i, p;
+  return i = {}, verb("next"), verb("throw", function(e) {
+    throw e;
+  }), verb("return"), i[Symbol.iterator] = function() {
+    return this;
+  }, i;
+  function verb(n, f) {
+    i[n] = o[n] ? function(v) {
+      return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v;
+    } : f;
+  }
+}
+function __asyncValues(o) {
+  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+  var m = o[Symbol.asyncIterator], i;
+  return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() {
+    return this;
+  }, i);
+  function verb(n) {
+    i[n] = o[n] && function(v) {
+      return new Promise(function(resolve6, reject) {
+        v = o[n](v), settle(resolve6, reject, v.done, v.value);
+      });
+    };
+  }
+  function settle(resolve6, reject, d, v) {
+    Promise.resolve(v).then(function(v2) {
+      resolve6({ value: v2, done: d });
+    }, reject);
+  }
+}
+function __makeTemplateObject(cooked, raw) {
+  if (Object.defineProperty) {
+    Object.defineProperty(cooked, "raw", { value: raw });
+  } else {
+    cooked.raw = raw;
+  }
+  return cooked;
+}
+function __importStar(mod) {
+  if (mod && mod.__esModule) return mod;
+  var result = {};
+  if (mod != null) {
+    for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
+  }
+  __setModuleDefault(result, mod);
+  return result;
+}
+function __importDefault(mod) {
+  return mod && mod.__esModule ? mod : { default: mod };
+}
+function __classPrivateFieldGet(receiver, state, kind, f) {
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+}
+function __classPrivateFieldSet(receiver, state, value, kind, f) {
+  if (kind === "m") throw new TypeError("Private method is not writable");
+  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+  return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
+}
+function __classPrivateFieldIn(state, receiver) {
+  if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") throw new TypeError("Cannot use 'in' operator on non-object");
+  return typeof state === "function" ? receiver === state : state.has(receiver);
+}
+function __addDisposableResource(env2, value, async) {
+  if (value !== null && value !== void 0) {
+    if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
+    var dispose, inner;
+    if (async) {
+      if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
+      dispose = value[Symbol.asyncDispose];
+    }
+    if (dispose === void 0) {
+      if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
+      dispose = value[Symbol.dispose];
+      if (async) inner = dispose;
+    }
+    if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
+    if (inner) dispose = function() {
+      try {
+        inner.call(this);
+      } catch (e) {
+        return Promise.reject(e);
+      }
+    };
+    env2.stack.push({ value, dispose, async });
+  } else if (async) {
+    env2.stack.push({ async: true });
+  }
+  return value;
+}
+function __disposeResources(env2) {
+  function fail(e) {
+    env2.error = env2.hasError ? new _SuppressedError(e, env2.error, "An error was suppressed during disposal.") : e;
+    env2.hasError = true;
+  }
+  var r, s = 0;
+  function next() {
+    while (r = env2.stack.pop()) {
+      try {
+        if (!r.async && s === 1) return s = 0, env2.stack.push(r), Promise.resolve().then(next);
+        if (r.dispose) {
+          var result = r.dispose.call(r.value);
+          if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) {
+            fail(e);
+            return next();
+          });
+        } else s |= 1;
+      } catch (e) {
+        fail(e);
+      }
+    }
+    if (s === 1) return env2.hasError ? Promise.reject(env2.error) : Promise.resolve();
+    if (env2.hasError) throw env2.error;
+  }
+  return next();
+}
+function __rewriteRelativeImportExtension(path23, preserveJsx) {
+  if (typeof path23 === "string" && /^\.\.?\//.test(path23)) {
+    return path23.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d, ext, cm) {
+      return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : d + ext + "." + cm.toLowerCase() + "js";
+    });
+  }
+  return path23;
+}
+var extendStatics, __assign, __createBinding, __setModuleDefault, ownKeys, _SuppressedError, tslib_es6_default;
+var init_tslib_es6 = __esm({
+  "../../../node_modules/tslib/tslib.es6.mjs"() {
+    extendStatics = function(d, b) {
+      extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
+        d2.__proto__ = b2;
+      } || function(d2, b2) {
+        for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
+      };
+      return extendStatics(d, b);
+    };
+    __assign = function() {
+      __assign = Object.assign || function __assign2(t) {
+        for (var s, i = 1, n = arguments.length; i < n; i++) {
+          s = arguments[i];
+          for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+        }
+        return t;
+      };
+      return __assign.apply(this, arguments);
+    };
+    __createBinding = Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    });
+    __setModuleDefault = Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    };
+    ownKeys = function(o) {
+      ownKeys = Object.getOwnPropertyNames || function(o2) {
+        var ar = [];
+        for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
+        return ar;
+      };
+      return ownKeys(o);
+    };
+    _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
+      var e = new Error(message);
+      return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
+    };
+    tslib_es6_default = {
+      __extends,
+      __assign,
+      __rest,
+      __decorate,
+      __param,
+      __esDecorate,
+      __runInitializers: __runInitializers2,
+      __propKey,
+      __setFunctionName,
+      __metadata,
+      __awaiter,
+      __generator,
+      __createBinding,
+      __exportStar,
+      __values,
+      __read,
+      __spread,
+      __spreadArrays,
+      __spreadArray,
+      __await,
+      __asyncGenerator,
+      __asyncDelegator,
+      __asyncValues,
+      __makeTemplateObject,
+      __importStar,
+      __importDefault,
+      __classPrivateFieldGet,
+      __classPrivateFieldSet,
+      __classPrivateFieldIn,
+      __addDisposableResource,
+      __disposeResources,
+      __rewriteRelativeImportExtension
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/package.json
+var require_package = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sfn",
+      description: "AWS SDK for JavaScript Sfn Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sfn",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sfn"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/client-sts": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2",
+        uuid: "^9.0.1"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        "@types/uuid": "^9.0.4",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sfn",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sfn"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js
+var require_dist_cjs36 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ENV_ACCOUNT_ID: () => ENV_ACCOUNT_ID,
+      ENV_CREDENTIAL_SCOPE: () => ENV_CREDENTIAL_SCOPE,
+      ENV_EXPIRATION: () => ENV_EXPIRATION,
+      ENV_KEY: () => ENV_KEY,
+      ENV_SECRET: () => ENV_SECRET,
+      ENV_SESSION: () => ENV_SESSION,
+      fromEnv: () => fromEnv
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_KEY = "AWS_ACCESS_KEY_ID";
+    var ENV_SECRET = "AWS_SECRET_ACCESS_KEY";
+    var ENV_SESSION = "AWS_SESSION_TOKEN";
+    var ENV_EXPIRATION = "AWS_CREDENTIAL_EXPIRATION";
+    var ENV_CREDENTIAL_SCOPE = "AWS_CREDENTIAL_SCOPE";
+    var ENV_ACCOUNT_ID = "AWS_ACCOUNT_ID";
+    var fromEnv = /* @__PURE__ */ __name2((init) => async () => {
+      var _a7;
+      (_a7 = init == null ? void 0 : init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-env - fromEnv");
+      const accessKeyId = process.env[ENV_KEY];
+      const secretAccessKey = process.env[ENV_SECRET];
+      const sessionToken = process.env[ENV_SESSION];
+      const expiry = process.env[ENV_EXPIRATION];
+      const credentialScope = process.env[ENV_CREDENTIAL_SCOPE];
+      const accountId = process.env[ENV_ACCOUNT_ID];
+      if (accessKeyId && secretAccessKey) {
+        return {
+          accessKeyId,
+          secretAccessKey,
+          ...sessionToken && { sessionToken },
+          ...expiry && { expiration: new Date(expiry) },
+          ...credentialScope && { credentialScope },
+          ...accountId && { accountId }
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError("Unable to find environment variable credentials.", { logger: init == null ? void 0 : init.logger });
+    }, "fromEnv");
+  }
+});
+
+// ../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js
+var require_dist_cjs37 = __commonJS({
+  "../../../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      DEFAULT_MAX_RETRIES: () => DEFAULT_MAX_RETRIES,
+      DEFAULT_TIMEOUT: () => DEFAULT_TIMEOUT,
+      ENV_CMDS_AUTH_TOKEN: () => ENV_CMDS_AUTH_TOKEN,
+      ENV_CMDS_FULL_URI: () => ENV_CMDS_FULL_URI,
+      ENV_CMDS_RELATIVE_URI: () => ENV_CMDS_RELATIVE_URI,
+      Endpoint: () => Endpoint,
+      fromContainerMetadata: () => fromContainerMetadata,
+      fromInstanceMetadata: () => fromInstanceMetadata,
+      getInstanceMetadataEndpoint: () => getInstanceMetadataEndpoint,
+      httpRequest: () => httpRequest,
+      providerConfigFromInit: () => providerConfigFromInit
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_url = require("url");
+    var import_property_provider2 = require_dist_cjs24();
+    var import_buffer = require("buffer");
+    var import_http2 = require("http");
+    function httpRequest(options) {
+      return new Promise((resolve6, reject) => {
+        var _a7;
+        const req = (0, import_http2.request)({
+          method: "GET",
+          ...options,
+          // Node.js http module doesn't accept hostname with square brackets
+          // Refs: https://github.com/nodejs/node/issues/39738
+          hostname: (_a7 = options.hostname) == null ? void 0 : _a7.replace(/^\[(.+)\]$/, "$1")
+        });
+        req.on("error", (err) => {
+          reject(Object.assign(new import_property_provider2.ProviderError("Unable to connect to instance metadata service"), err));
+          req.destroy();
+        });
+        req.on("timeout", () => {
+          reject(new import_property_provider2.ProviderError("TimeoutError from instance metadata service"));
+          req.destroy();
+        });
+        req.on("response", (res) => {
+          const { statusCode = 400 } = res;
+          if (statusCode < 200 || 300 <= statusCode) {
+            reject(
+              Object.assign(new import_property_provider2.ProviderError("Error response received from instance metadata service"), { statusCode })
+            );
+            req.destroy();
+          }
+          const chunks = [];
+          res.on("data", (chunk) => {
+            chunks.push(chunk);
+          });
+          res.on("end", () => {
+            resolve6(import_buffer.Buffer.concat(chunks));
+            req.destroy();
+          });
+        });
+        req.end();
+      });
+    }
+    __name2(httpRequest, "httpRequest");
+    var isImdsCredentials = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.AccessKeyId === "string" && typeof arg.SecretAccessKey === "string" && typeof arg.Token === "string" && typeof arg.Expiration === "string", "isImdsCredentials");
+    var fromImdsCredentials = /* @__PURE__ */ __name2((creds) => ({
+      accessKeyId: creds.AccessKeyId,
+      secretAccessKey: creds.SecretAccessKey,
+      sessionToken: creds.Token,
+      expiration: new Date(creds.Expiration),
+      ...creds.AccountId && { accountId: creds.AccountId }
+    }), "fromImdsCredentials");
+    var DEFAULT_TIMEOUT = 1e3;
+    var DEFAULT_MAX_RETRIES = 0;
+    var providerConfigFromInit = /* @__PURE__ */ __name2(({
+      maxRetries = DEFAULT_MAX_RETRIES,
+      timeout = DEFAULT_TIMEOUT
+    }) => ({ maxRetries, timeout }), "providerConfigFromInit");
+    var retry = /* @__PURE__ */ __name2((toRetry, maxRetries) => {
+      let promise = toRetry();
+      for (let i = 0; i < maxRetries; i++) {
+        promise = promise.catch(toRetry);
+      }
+      return promise;
+    }, "retry");
+    var ENV_CMDS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var ENV_CMDS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var ENV_CMDS_AUTH_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromContainerMetadata = /* @__PURE__ */ __name2((init = {}) => {
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      return () => retry(async () => {
+        const requestOptions = await getCmdsUri({ logger: init.logger });
+        const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions));
+        if (!isImdsCredentials(credsResponse)) {
+          throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+            logger: init.logger
+          });
+        }
+        return fromImdsCredentials(credsResponse);
+      }, maxRetries);
+    }, "fromContainerMetadata");
+    var requestFromEcsImds = /* @__PURE__ */ __name2(async (timeout, options) => {
+      if (process.env[ENV_CMDS_AUTH_TOKEN]) {
+        options.headers = {
+          ...options.headers,
+          Authorization: process.env[ENV_CMDS_AUTH_TOKEN]
+        };
+      }
+      const buffer = await httpRequest({
+        ...options,
+        timeout
+      });
+      return buffer.toString();
+    }, "requestFromEcsImds");
+    var CMDS_IP = "169.254.170.2";
+    var GREENGRASS_HOSTS = {
+      localhost: true,
+      "127.0.0.1": true
+    };
+    var GREENGRASS_PROTOCOLS = {
+      "http:": true,
+      "https:": true
+    };
+    var getCmdsUri = /* @__PURE__ */ __name2(async ({ logger }) => {
+      if (process.env[ENV_CMDS_RELATIVE_URI]) {
+        return {
+          hostname: CMDS_IP,
+          path: process.env[ENV_CMDS_RELATIVE_URI]
+        };
+      }
+      if (process.env[ENV_CMDS_FULL_URI]) {
+        const parsed = (0, import_url.parse)(process.env[ENV_CMDS_FULL_URI]);
+        if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {
+          throw new import_property_provider2.CredentialsProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, {
+            tryNextLink: false,
+            logger
+          });
+        }
+        return {
+          ...parsed,
+          port: parsed.port ? parseInt(parsed.port, 10) : void 0
+        };
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `The container metadata credential provider cannot be used unless the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment variable is set`,
+        {
+          tryNextLink: false,
+          logger
+        }
+      );
+    }, "getCmdsUri");
+    var _InstanceMetadataV1FallbackError = class _InstanceMetadataV1FallbackError2 extends import_property_provider2.CredentialsProviderError {
+      constructor(message, tryNextLink = true) {
+        super(message, tryNextLink);
+        this.tryNextLink = tryNextLink;
+        this.name = "InstanceMetadataV1FallbackError";
+        Object.setPrototypeOf(this, _InstanceMetadataV1FallbackError2.prototype);
+      }
+    };
+    __name2(_InstanceMetadataV1FallbackError, "InstanceMetadataV1FallbackError");
+    var InstanceMetadataV1FallbackError = _InstanceMetadataV1FallbackError;
+    var import_node_config_provider = require_dist_cjs26();
+    var import_url_parser = require_dist_cjs28();
+    var Endpoint = /* @__PURE__ */ ((Endpoint2) => {
+      Endpoint2["IPv4"] = "http://169.254.169.254";
+      Endpoint2["IPv6"] = "http://[fd00:ec2::254]";
+      return Endpoint2;
+    })(Endpoint || {});
+    var ENV_ENDPOINT_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT";
+    var CONFIG_ENDPOINT_NAME = "ec2_metadata_service_endpoint";
+    var ENDPOINT_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME],
+      default: void 0
+    };
+    var EndpointMode = /* @__PURE__ */ ((EndpointMode2) => {
+      EndpointMode2["IPv4"] = "IPv4";
+      EndpointMode2["IPv6"] = "IPv6";
+      return EndpointMode2;
+    })(EndpointMode || {});
+    var ENV_ENDPOINT_MODE_NAME = "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE";
+    var CONFIG_ENDPOINT_MODE_NAME = "ec2_metadata_service_endpoint_mode";
+    var ENDPOINT_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[ENV_ENDPOINT_MODE_NAME],
+      configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME],
+      default: "IPv4"
+      /* IPv4 */
+    };
+    var getInstanceMetadataEndpoint = /* @__PURE__ */ __name2(async () => (0, import_url_parser.parseUrl)(await getFromEndpointConfig() || await getFromEndpointModeConfig()), "getInstanceMetadataEndpoint");
+    var getFromEndpointConfig = /* @__PURE__ */ __name2(async () => (0, import_node_config_provider.loadConfig)(ENDPOINT_CONFIG_OPTIONS)(), "getFromEndpointConfig");
+    var getFromEndpointModeConfig = /* @__PURE__ */ __name2(async () => {
+      const endpointMode = await (0, import_node_config_provider.loadConfig)(ENDPOINT_MODE_CONFIG_OPTIONS)();
+      switch (endpointMode) {
+        case "IPv4":
+          return "http://169.254.169.254";
+        case "IPv6":
+          return "http://[fd00:ec2::254]";
+        default:
+          throw new Error(`Unsupported endpoint mode: ${endpointMode}. Select from ${Object.values(EndpointMode)}`);
+      }
+    }, "getFromEndpointModeConfig");
+    var STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60;
+    var STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60;
+    var STATIC_STABILITY_DOC_URL = "https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html";
+    var getExtendedInstanceMetadataCredentials = /* @__PURE__ */ __name2((credentials, logger) => {
+      const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS + Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS);
+      const newExpiration = new Date(Date.now() + refreshInterval * 1e3);
+      logger.warn(
+        `Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(newExpiration)}.
+For more information, please visit: ` + STATIC_STABILITY_DOC_URL
+      );
+      const originalExpiration = credentials.originalExpiration ?? credentials.expiration;
+      return {
+        ...credentials,
+        ...originalExpiration ? { originalExpiration } : {},
+        expiration: newExpiration
+      };
+    }, "getExtendedInstanceMetadataCredentials");
+    var staticStabilityProvider = /* @__PURE__ */ __name2((provider, options = {}) => {
+      const logger = (options == null ? void 0 : options.logger) || console;
+      let pastCredentials;
+      return async () => {
+        let credentials;
+        try {
+          credentials = await provider();
+          if (credentials.expiration && credentials.expiration.getTime() < Date.now()) {
+            credentials = getExtendedInstanceMetadataCredentials(credentials, logger);
+          }
+        } catch (e) {
+          if (pastCredentials) {
+            logger.warn("Credential renew failed: ", e);
+            credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger);
+          } else {
+            throw e;
+          }
+        }
+        pastCredentials = credentials;
+        return credentials;
+      };
+    }, "staticStabilityProvider");
+    var IMDS_PATH = "/latest/meta-data/iam/security-credentials/";
+    var IMDS_TOKEN_PATH = "/latest/api/token";
+    var AWS_EC2_METADATA_V1_DISABLED = "AWS_EC2_METADATA_V1_DISABLED";
+    var PROFILE_AWS_EC2_METADATA_V1_DISABLED = "ec2_metadata_v1_disabled";
+    var X_AWS_EC2_METADATA_TOKEN = "x-aws-ec2-metadata-token";
+    var fromInstanceMetadata = /* @__PURE__ */ __name2((init = {}) => staticStabilityProvider(getInstanceMetadataProvider(init), { logger: init.logger }), "fromInstanceMetadata");
+    var getInstanceMetadataProvider = /* @__PURE__ */ __name2((init = {}) => {
+      let disableFetchToken = false;
+      const { logger, profile } = init;
+      const { timeout, maxRetries } = providerConfigFromInit(init);
+      const getCredentials = /* @__PURE__ */ __name2(async (maxRetries2, options) => {
+        var _a7;
+        const isImdsV1Fallback = disableFetchToken || ((_a7 = options.headers) == null ? void 0 : _a7[X_AWS_EC2_METADATA_TOKEN]) == null;
+        if (isImdsV1Fallback) {
+          let fallbackBlockedFromProfile = false;
+          let fallbackBlockedFromProcessEnv = false;
+          const configValue = await (0, import_node_config_provider.loadConfig)(
+            {
+              environmentVariableSelector: (env2) => {
+                const envValue = env2[AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProcessEnv = !!envValue && envValue !== "false";
+                if (envValue === void 0) {
+                  throw new import_property_provider2.CredentialsProviderError(
+                    `${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.`,
+                    { logger: init.logger }
+                  );
+                }
+                return fallbackBlockedFromProcessEnv;
+              },
+              configFileSelector: (profile2) => {
+                const profileValue = profile2[PROFILE_AWS_EC2_METADATA_V1_DISABLED];
+                fallbackBlockedFromProfile = !!profileValue && profileValue !== "false";
+                return fallbackBlockedFromProfile;
+              },
+              default: false
+            },
+            {
+              profile
+            }
+          )();
+          if (init.ec2MetadataV1Disabled || configValue) {
+            const causes = [];
+            if (init.ec2MetadataV1Disabled)
+              causes.push("credential provider initialization (runtime option ec2MetadataV1Disabled)");
+            if (fallbackBlockedFromProfile)
+              causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`);
+            if (fallbackBlockedFromProcessEnv)
+              causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`);
+            throw new InstanceMetadataV1FallbackError(
+              `AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join(
+                ", "
+              )}].`
+            );
+          }
+        }
+        const imdsProfile = (await retry(async () => {
+          let profile2;
+          try {
+            profile2 = await getProfile(options);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return profile2;
+        }, maxRetries2)).trim();
+        return retry(async () => {
+          let creds;
+          try {
+            creds = await getCredentialsFromProfile(imdsProfile, options, init);
+          } catch (err) {
+            if (err.statusCode === 401) {
+              disableFetchToken = false;
+            }
+            throw err;
+          }
+          return creds;
+        }, maxRetries2);
+      }, "getCredentials");
+      return async () => {
+        const endpoint = await getInstanceMetadataEndpoint();
+        if (disableFetchToken) {
+          logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (no token fetch)");
+          return getCredentials(maxRetries, { ...endpoint, timeout });
+        } else {
+          let token;
+          try {
+            token = (await getMetadataToken({ ...endpoint, timeout })).toString();
+          } catch (error) {
+            if ((error == null ? void 0 : error.statusCode) === 400) {
+              throw Object.assign(error, {
+                message: "EC2 Metadata token request returned error"
+              });
+            } else if (error.message === "TimeoutError" || [403, 404, 405].includes(error.statusCode)) {
+              disableFetchToken = true;
+            }
+            logger == null ? void 0 : logger.debug("AWS SDK Instance Metadata", "using v1 fallback (initial)");
+            return getCredentials(maxRetries, { ...endpoint, timeout });
+          }
+          return getCredentials(maxRetries, {
+            ...endpoint,
+            headers: {
+              [X_AWS_EC2_METADATA_TOKEN]: token
+            },
+            timeout
+          });
+        }
+      };
+    }, "getInstanceMetadataProvider");
+    var getMetadataToken = /* @__PURE__ */ __name2(async (options) => httpRequest({
+      ...options,
+      path: IMDS_TOKEN_PATH,
+      method: "PUT",
+      headers: {
+        "x-aws-ec2-metadata-token-ttl-seconds": "21600"
+      }
+    }), "getMetadataToken");
+    var getProfile = /* @__PURE__ */ __name2(async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString(), "getProfile");
+    var getCredentialsFromProfile = /* @__PURE__ */ __name2(async (profile, options, init) => {
+      const credentialsResponse = JSON.parse(
+        (await httpRequest({
+          ...options,
+          path: IMDS_PATH + profile
+        })).toString()
+      );
+      if (!isImdsCredentials(credentialsResponse)) {
+        throw new import_property_provider2.CredentialsProviderError("Invalid response received from instance metadata service.", {
+          logger: init.logger
+        });
+      }
+      return fromImdsCredentials(credentialsResponse);
+    }, "getCredentialsFromProfile");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js
+var require_checkUrl = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.checkUrl = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var ECS_CONTAINER_HOST = "169.254.170.2";
+    var EKS_CONTAINER_HOST_IPv4 = "169.254.170.23";
+    var EKS_CONTAINER_HOST_IPv6 = "[fd00:ec2::23]";
+    var checkUrl = (url2, logger) => {
+      if (url2.protocol === "https:") {
+        return;
+      }
+      if (url2.hostname === ECS_CONTAINER_HOST || url2.hostname === EKS_CONTAINER_HOST_IPv4 || url2.hostname === EKS_CONTAINER_HOST_IPv6) {
+        return;
+      }
+      if (url2.hostname.includes("[")) {
+        if (url2.hostname === "[::1]" || url2.hostname === "[0000:0000:0000:0000:0000:0000:0000:0001]") {
+          return;
+        }
+      } else {
+        if (url2.hostname === "localhost") {
+          return;
+        }
+        const ipComponents = url2.hostname.split(".");
+        const inRange = (component) => {
+          const num = parseInt(component, 10);
+          return 0 <= num && num <= 255;
+        };
+        if (ipComponents[0] === "127" && inRange(ipComponents[1]) && inRange(ipComponents[2]) && inRange(ipComponents[3]) && ipComponents.length === 4) {
+          return;
+        }
+      }
+      throw new property_provider_1.CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following:
+  - loopback CIDR 127.0.0.0/8 or [::1/128]
+  - ECS container host 169.254.170.2
+  - EKS container host 169.254.170.23 or [fd00:ec2::23]`, { logger });
+    };
+    exports2.checkUrl = checkUrl;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js
+var require_requestHelpers = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getCredentials = exports2.createGetRequest = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_stream_1 = require_dist_cjs22();
+    function createGetRequest(url2) {
+      return new protocol_http_1.HttpRequest({
+        protocol: url2.protocol,
+        hostname: url2.hostname,
+        port: Number(url2.port),
+        path: url2.pathname,
+        query: Array.from(url2.searchParams.entries()).reduce((acc, [k, v]) => {
+          acc[k] = v;
+          return acc;
+        }, {}),
+        fragment: url2.hash
+      });
+    }
+    exports2.createGetRequest = createGetRequest;
+    async function getCredentials(response, logger) {
+      const stream = (0, util_stream_1.sdkStreamMixin)(response.body);
+      const str = await stream.transformToString();
+      if (response.statusCode === 200) {
+        const parsed = JSON.parse(str);
+        if (typeof parsed.AccessKeyId !== "string" || typeof parsed.SecretAccessKey !== "string" || typeof parsed.Token !== "string" || typeof parsed.Expiration !== "string") {
+          throw new property_provider_1.CredentialsProviderError("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }", { logger });
+        }
+        return {
+          accessKeyId: parsed.AccessKeyId,
+          secretAccessKey: parsed.SecretAccessKey,
+          sessionToken: parsed.Token,
+          expiration: (0, smithy_client_1.parseRfc3339DateTime)(parsed.Expiration)
+        };
+      }
+      if (response.statusCode >= 400 && response.statusCode < 500) {
+        let parsedBody = {};
+        try {
+          parsedBody = JSON.parse(str);
+        } catch (e) {
+        }
+        throw Object.assign(new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger }), {
+          Code: parsedBody.Code,
+          Message: parsedBody.Message
+        });
+      }
+      throw new property_provider_1.CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger });
+    }
+    exports2.getCredentials = getCredentials;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js
+var require_retry_wrapper = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.retryWrapper = void 0;
+    var retryWrapper = (toRetry, maxRetries, delayMs) => {
+      return async () => {
+        for (let i = 0; i < maxRetries; ++i) {
+          try {
+            return await toRetry();
+          } catch (e) {
+            await new Promise((resolve6) => setTimeout(resolve6, delayMs));
+          }
+        }
+        return await toRetry();
+      };
+    };
+    exports2.retryWrapper = retryWrapper;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js
+var require_fromHttp = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var node_http_handler_1 = require_dist_cjs19();
+    var property_provider_1 = require_dist_cjs24();
+    var promises_1 = tslib_1.__importDefault(require("fs/promises"));
+    var checkUrl_1 = require_checkUrl();
+    var requestHelpers_1 = require_requestHelpers();
+    var retry_wrapper_1 = require_retry_wrapper();
+    var AWS_CONTAINER_CREDENTIALS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI";
+    var DEFAULT_LINK_LOCAL_HOST = "http://169.254.170.2";
+    var AWS_CONTAINER_CREDENTIALS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE = "AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE";
+    var AWS_CONTAINER_AUTHORIZATION_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
+    var fromHttp = (options = {}) => {
+      options.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");
+      let host;
+      const relative7 = options.awsContainerCredentialsRelativeUri ?? process.env[AWS_CONTAINER_CREDENTIALS_RELATIVE_URI];
+      const full = options.awsContainerCredentialsFullUri ?? process.env[AWS_CONTAINER_CREDENTIALS_FULL_URI];
+      const token = options.awsContainerAuthorizationToken ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN];
+      const tokenFile = options.awsContainerAuthorizationTokenFile ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE];
+      const warn = options.logger?.constructor?.name === "NoOpLogger" || !options.logger ? console.warn : options.logger.warn;
+      if (relative7 && full) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri.");
+        warn("awsContainerCredentialsFullUri will take precedence.");
+      }
+      if (token && tokenFile) {
+        warn("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile.");
+        warn("awsContainerAuthorizationToken will take precedence.");
+      }
+      if (full) {
+        host = full;
+      } else if (relative7) {
+        host = `${DEFAULT_LINK_LOCAL_HOST}${relative7}`;
+      } else {
+        throw new property_provider_1.CredentialsProviderError(`No HTTP credential provider host provided.
+Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`, { logger: options.logger });
+      }
+      const url2 = new URL(host);
+      (0, checkUrl_1.checkUrl)(url2, options.logger);
+      const requestHandler = new node_http_handler_1.NodeHttpHandler({
+        requestTimeout: options.timeout ?? 1e3,
+        connectionTimeout: options.timeout ?? 1e3
+      });
+      return (0, retry_wrapper_1.retryWrapper)(async () => {
+        const request2 = (0, requestHelpers_1.createGetRequest)(url2);
+        if (token) {
+          request2.headers.Authorization = token;
+        } else if (tokenFile) {
+          request2.headers.Authorization = (await promises_1.default.readFile(tokenFile)).toString();
+        }
+        try {
+          const result = await requestHandler.handle(request2);
+          return (0, requestHelpers_1.getCredentials)(result.response);
+        } catch (e) {
+          throw new property_provider_1.CredentialsProviderError(String(e), { logger: options.logger });
+        }
+      }, options.maxRetries ?? 3, options.timeout ?? 1e3);
+    };
+    exports2.fromHttp = fromHttp;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js
+var require_dist_cjs38 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromHttp = void 0;
+    var fromHttp_1 = require_fromHttp();
+    Object.defineProperty(exports2, "fromHttp", { enumerable: true, get: function() {
+      return fromHttp_1.fromHttp;
+    } });
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOHttpAuthSchemeProvider = exports2.defaultSSOHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOHttpAuthSchemeParametersProvider = defaultSSOHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "awsssoportal",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "GetRoleCredentials": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccountRoles": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "ListAccounts": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "Logout": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOHttpAuthSchemeProvider = defaultSSOHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/package.json
+var require_package2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso",
+      description: "AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js
+var require_dist_cjs39 = __commonJS({
+  "../../../node_modules/@aws-sdk/util-user-agent-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      UA_APP_ID_ENV_NAME: () => UA_APP_ID_ENV_NAME,
+      UA_APP_ID_INI_NAME: () => UA_APP_ID_INI_NAME,
+      crtAvailability: () => crtAvailability,
+      defaultUserAgent: () => defaultUserAgent
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_node_config_provider = require_dist_cjs26();
+    var import_os = require("os");
+    var import_process2 = require("process");
+    var crtAvailability = {
+      isCrtAvailable: false
+    };
+    var isCrtAvailable = /* @__PURE__ */ __name2(() => {
+      if (crtAvailability.isCrtAvailable) {
+        return ["md/crt-avail"];
+      }
+      return null;
+    }, "isCrtAvailable");
+    var UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
+    var UA_APP_ID_INI_NAME = "sdk-ua-app-id";
+    var defaultUserAgent = /* @__PURE__ */ __name2(({ serviceId, clientVersion }) => {
+      const sections = [
+        // sdk-metadata
+        ["aws-sdk-js", clientVersion],
+        // ua-metadata
+        ["ua", "2.0"],
+        // os-metadata
+        [`os/${(0, import_os.platform)()}`, (0, import_os.release)()],
+        // language-metadata
+        // ECMAScript edition doesn't matter in JS, so no version needed.
+        ["lang/js"],
+        ["md/nodejs", `${import_process2.versions.node}`]
+      ];
+      const crtAvailable = isCrtAvailable();
+      if (crtAvailable) {
+        sections.push(crtAvailable);
+      }
+      if (serviceId) {
+        sections.push([`api/${serviceId}`, clientVersion]);
+      }
+      if (import_process2.env.AWS_EXECUTION_ENV) {
+        sections.push([`exec-env/${import_process2.env.AWS_EXECUTION_ENV}`]);
+      }
+      const appIdPromise = (0, import_node_config_provider.loadConfig)({
+        environmentVariableSelector: (env2) => env2[UA_APP_ID_ENV_NAME],
+        configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME],
+        default: void 0
+      })();
+      let resolvedUserAgent = void 0;
+      return async () => {
+        if (!resolvedUserAgent) {
+          const appId = await appIdPromise;
+          resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
+        }
+        return resolvedUserAgent;
+      };
+    }, "defaultUserAgent");
+  }
+});
+
+// ../../../node_modules/@smithy/hash-node/dist-cjs/index.js
+var require_dist_cjs40 = __commonJS({
+  "../../../node_modules/@smithy/hash-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      Hash: () => Hash
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_util_buffer_from = require_dist_cjs14();
+    var import_util_utf8 = require_dist_cjs15();
+    var import_buffer = require("buffer");
+    var import_crypto5 = require("crypto");
+    var _Hash = class _Hash {
+      constructor(algorithmIdentifier, secret) {
+        this.algorithmIdentifier = algorithmIdentifier;
+        this.secret = secret;
+        this.reset();
+      }
+      update(toHash, encoding) {
+        this.hash.update((0, import_util_utf8.toUint8Array)(castSourceData(toHash, encoding)));
+      }
+      digest() {
+        return Promise.resolve(this.hash.digest());
+      }
+      reset() {
+        this.hash = this.secret ? (0, import_crypto5.createHmac)(this.algorithmIdentifier, castSourceData(this.secret)) : (0, import_crypto5.createHash)(this.algorithmIdentifier);
+      }
+    };
+    __name2(_Hash, "Hash");
+    var Hash = _Hash;
+    function castSourceData(toCast, encoding) {
+      if (import_buffer.Buffer.isBuffer(toCast)) {
+        return toCast;
+      }
+      if (typeof toCast === "string") {
+        return (0, import_util_buffer_from.fromString)(toCast, encoding);
+      }
+      if (ArrayBuffer.isView(toCast)) {
+        return (0, import_util_buffer_from.fromArrayBuffer)(toCast.buffer, toCast.byteOffset, toCast.byteLength);
+      }
+      return (0, import_util_buffer_from.fromArrayBuffer)(toCast);
+    }
+    __name2(castSourceData, "castSourceData");
+  }
+});
+
+// ../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js
+var require_dist_cjs41 = __commonJS({
+  "../../../node_modules/@smithy/util-body-length-node/dist-cjs/index.js"(exports2, module2) {
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      calculateBodyLength: () => calculateBodyLength
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_fs4 = require("fs");
+    var calculateBodyLength = /* @__PURE__ */ __name2((body) => {
+      if (!body) {
+        return 0;
+      }
+      if (typeof body === "string") {
+        return Buffer.byteLength(body);
+      } else if (typeof body.byteLength === "number") {
+        return body.byteLength;
+      } else if (typeof body.size === "number") {
+        return body.size;
+      } else if (typeof body.start === "number" && typeof body.end === "number") {
+        return body.end + 1 - body.start;
+      } else if (typeof body.path === "string" || Buffer.isBuffer(body.path)) {
+        return (0, import_fs4.lstatSync)(body.path).size;
+      } else if (typeof body.fd === "number") {
+        return (0, import_fs4.fstatSync)(body.fd).size;
+      }
+      throw new Error(`Body Length computation failed for ${body}`);
+    }, "calculateBodyLength");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js
+var require_ruleset = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://portal.sso.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://portal.sso.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider2();
+    var endpointResolver_1 = require_endpointResolver();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js
+var require_dist_cjs42 = __commonJS({
+  "../../../node_modules/@smithy/util-defaults-mode-node/dist-cjs/index.js"(exports2, module2) {
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      resolveDefaultsModeConfig: () => resolveDefaultsModeConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_config_resolver = require_dist_cjs11();
+    var import_node_config_provider = require_dist_cjs26();
+    var import_property_provider2 = require_dist_cjs24();
+    var AWS_EXECUTION_ENV = "AWS_EXECUTION_ENV";
+    var AWS_REGION_ENV = "AWS_REGION";
+    var AWS_DEFAULT_REGION_ENV = "AWS_DEFAULT_REGION";
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var DEFAULTS_MODE_OPTIONS = ["in-region", "cross-region", "mobile", "standard", "legacy"];
+    var IMDS_REGION_PATH = "/latest/meta-data/placement/region";
+    var AWS_DEFAULTS_MODE_ENV = "AWS_DEFAULTS_MODE";
+    var AWS_DEFAULTS_MODE_CONFIG = "defaults_mode";
+    var NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => {
+        return env2[AWS_DEFAULTS_MODE_ENV];
+      },
+      configFileSelector: (profile) => {
+        return profile[AWS_DEFAULTS_MODE_CONFIG];
+      },
+      default: "legacy"
+    };
+    var resolveDefaultsModeConfig = /* @__PURE__ */ __name2(({
+      region = (0, import_node_config_provider.loadConfig)(import_config_resolver.NODE_REGION_CONFIG_OPTIONS),
+      defaultsMode = (0, import_node_config_provider.loadConfig)(NODE_DEFAULTS_MODE_CONFIG_OPTIONS)
+    } = {}) => (0, import_property_provider2.memoize)(async () => {
+      const mode = typeof defaultsMode === "function" ? await defaultsMode() : defaultsMode;
+      switch (mode == null ? void 0 : mode.toLowerCase()) {
+        case "auto":
+          return resolveNodeDefaultsModeAuto(region);
+        case "in-region":
+        case "cross-region":
+        case "mobile":
+        case "standard":
+        case "legacy":
+          return Promise.resolve(mode == null ? void 0 : mode.toLocaleLowerCase());
+        case void 0:
+          return Promise.resolve("legacy");
+        default:
+          throw new Error(
+            `Invalid parameter for "defaultsMode", expect ${DEFAULTS_MODE_OPTIONS.join(", ")}, got ${mode}`
+          );
+      }
+    }), "resolveDefaultsModeConfig");
+    var resolveNodeDefaultsModeAuto = /* @__PURE__ */ __name2(async (clientRegion) => {
+      if (clientRegion) {
+        const resolvedRegion = typeof clientRegion === "function" ? await clientRegion() : clientRegion;
+        const inferredRegion = await inferPhysicalRegion();
+        if (!inferredRegion) {
+          return "standard";
+        }
+        if (resolvedRegion === inferredRegion) {
+          return "in-region";
+        } else {
+          return "cross-region";
+        }
+      }
+      return "standard";
+    }, "resolveNodeDefaultsModeAuto");
+    var inferPhysicalRegion = /* @__PURE__ */ __name2(async () => {
+      if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {
+        return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];
+      }
+      if (!process.env[ENV_IMDS_DISABLED]) {
+        try {
+          const { getInstanceMetadataEndpoint, httpRequest } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          const endpoint = await getInstanceMetadataEndpoint();
+          return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString();
+        } catch (e) {
+        }
+      }
+    }, "inferPhysicalRegion");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js
+var require_runtimeConfig = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package2());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js
+var require_dist_cjs43 = __commonJS({
+  "../../../node_modules/@aws-sdk/region-config-resolver/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS,
+      NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS,
+      REGION_ENV_NAME: () => REGION_ENV_NAME,
+      REGION_INI_NAME: () => REGION_INI_NAME,
+      getAwsRegionExtensionConfiguration: () => getAwsRegionExtensionConfiguration,
+      resolveAwsRegionExtensionConfiguration: () => resolveAwsRegionExtensionConfiguration,
+      resolveRegionConfig: () => resolveRegionConfig
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var getAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      let runtimeConfigRegion = /* @__PURE__ */ __name2(async () => {
+        if (runtimeConfig.region === void 0) {
+          throw new Error("Region is missing from runtimeConfig");
+        }
+        const region = runtimeConfig.region;
+        if (typeof region === "string") {
+          return region;
+        }
+        return region();
+      }, "runtimeConfigRegion");
+      return {
+        setRegion(region) {
+          runtimeConfigRegion = region;
+        },
+        region() {
+          return runtimeConfigRegion;
+        }
+      };
+    }, "getAwsRegionExtensionConfiguration");
+    var resolveAwsRegionExtensionConfiguration = /* @__PURE__ */ __name2((awsRegionExtensionConfiguration) => {
+      return {
+        region: awsRegionExtensionConfiguration.region()
+      };
+    }, "resolveAwsRegionExtensionConfiguration");
+    var REGION_ENV_NAME = "AWS_REGION";
+    var REGION_INI_NAME = "region";
+    var NODE_REGION_CONFIG_OPTIONS = {
+      environmentVariableSelector: (env2) => env2[REGION_ENV_NAME],
+      configFileSelector: (profile) => profile[REGION_INI_NAME],
+      default: () => {
+        throw new Error("Region is missing");
+      }
+    };
+    var NODE_REGION_CONFIG_FILE_OPTIONS = {
+      preferredFile: "credentials"
+    };
+    var isFipsRegion = /* @__PURE__ */ __name2((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion");
+    var getRealRegion = /* @__PURE__ */ __name2((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion");
+    var resolveRegionConfig = /* @__PURE__ */ __name2((input) => {
+      const { region, useFipsEndpoint } = input;
+      if (!region) {
+        throw new Error("Region is missing");
+      }
+      return {
+        ...input,
+        region: async () => {
+          if (typeof region === "string") {
+            return getRealRegion(region);
+          }
+          const providedRegion = await region();
+          return getRealRegion(providedRegion);
+        },
+        useFipsEndpoint: async () => {
+          const providedRegion = typeof region === "string" ? region : await region();
+          if (isFipsRegion(providedRegion)) {
+            return true;
+          }
+          return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();
+        }
+      };
+    }, "resolveRegionConfig");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js
+var require_dist_cjs44 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      GetRoleCredentialsCommand: () => GetRoleCredentialsCommand,
+      GetRoleCredentialsRequestFilterSensitiveLog: () => GetRoleCredentialsRequestFilterSensitiveLog,
+      GetRoleCredentialsResponseFilterSensitiveLog: () => GetRoleCredentialsResponseFilterSensitiveLog,
+      InvalidRequestException: () => InvalidRequestException,
+      ListAccountRolesCommand: () => ListAccountRolesCommand,
+      ListAccountRolesRequestFilterSensitiveLog: () => ListAccountRolesRequestFilterSensitiveLog,
+      ListAccountsCommand: () => ListAccountsCommand,
+      ListAccountsRequestFilterSensitiveLog: () => ListAccountsRequestFilterSensitiveLog,
+      LogoutCommand: () => LogoutCommand,
+      LogoutRequestFilterSensitiveLog: () => LogoutRequestFilterSensitiveLog,
+      ResourceNotFoundException: () => ResourceNotFoundException,
+      RoleCredentialsFilterSensitiveLog: () => RoleCredentialsFilterSensitiveLog,
+      SSO: () => SSO,
+      SSOClient: () => SSOClient,
+      SSOServiceException: () => SSOServiceException,
+      TooManyRequestsException: () => TooManyRequestsException,
+      UnauthorizedException: () => UnauthorizedException,
+      __Client: () => import_smithy_client4.Client,
+      paginateListAccountRoles: () => paginateListAccountRoles,
+      paginateListAccounts: () => paginateListAccounts
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider2();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "awsssoportal"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOClient = class _SSOClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOClient, "SSOClient");
+    var SSOClient = _SSOClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOServiceException = class _SSOServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOServiceException2.prototype);
+      }
+    };
+    __name2(_SSOServiceException, "SSOServiceException");
+    var SSOServiceException = _SSOServiceException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _ResourceNotFoundException = class _ResourceNotFoundException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFoundException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFoundException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFoundException2.prototype);
+      }
+    };
+    __name2(_ResourceNotFoundException, "ResourceNotFoundException");
+    var ResourceNotFoundException = _ResourceNotFoundException;
+    var _TooManyRequestsException = class _TooManyRequestsException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyRequestsException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyRequestsException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyRequestsException2.prototype);
+      }
+    };
+    __name2(_TooManyRequestsException, "TooManyRequestsException");
+    var TooManyRequestsException = _TooManyRequestsException;
+    var _UnauthorizedException = class _UnauthorizedException2 extends SSOServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedException2.prototype);
+      }
+    };
+    __name2(_UnauthorizedException, "UnauthorizedException");
+    var UnauthorizedException = _UnauthorizedException;
+    var GetRoleCredentialsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetRoleCredentialsRequestFilterSensitiveLog");
+    var RoleCredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.secretAccessKey && { secretAccessKey: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.sessionToken && { sessionToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "RoleCredentialsFilterSensitiveLog");
+    var GetRoleCredentialsResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.roleCredentials && { roleCredentials: RoleCredentialsFilterSensitiveLog(obj.roleCredentials) }
+    }), "GetRoleCredentialsResponseFilterSensitiveLog");
+    var ListAccountRolesRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountRolesRequestFilterSensitiveLog");
+    var ListAccountsRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "ListAccountsRequestFilterSensitiveLog");
+    var LogoutRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "LogoutRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/federation/credentials");
+      const query = (0, import_smithy_client4.map)({
+        [_rn]: [, (0, import_smithy_client4.expectNonNull)(input[_rN], `roleName`)],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_GetRoleCredentialsCommand");
+    var se_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/roles");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()],
+        [_ai]: [, (0, import_smithy_client4.expectNonNull)(input[_aI], `accountId`)]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountRolesCommand");
+    var se_ListAccountsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/assignment/accounts");
+      const query = (0, import_smithy_client4.map)({
+        [_nt]: [, input[_nT]],
+        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()]
+      });
+      let body;
+      b.m("GET").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_ListAccountsCommand");
+    var se_LogoutCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = (0, import_smithy_client4.map)({}, isSerializableHeaderValue, {
+        [_xasbt]: input[_aT]
+      });
+      b.bp("/logout");
+      let body;
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_LogoutCommand");
+    var de_GetRoleCredentialsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        roleCredentials: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_GetRoleCredentialsCommand");
+    var de_ListAccountRolesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        nextToken: import_smithy_client4.expectString,
+        roleList: import_smithy_client4._json
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountRolesCommand");
+    var de_ListAccountsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accountList: import_smithy_client4._json,
+        nextToken: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_ListAccountsCommand");
+    var de_LogoutCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      await (0, import_smithy_client4.collectBody)(output.body, context);
+      return contents;
+    }, "de_LogoutCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "InvalidRequestException":
+        case "com.amazonaws.sso#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "ResourceNotFoundException":
+        case "com.amazonaws.sso#ResourceNotFoundException":
+          throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+        case "TooManyRequestsException":
+        case "com.amazonaws.sso#TooManyRequestsException":
+          throw await de_TooManyRequestsExceptionRes(parsedOutput, context);
+        case "UnauthorizedException":
+        case "com.amazonaws.sso#UnauthorizedException":
+          throw await de_UnauthorizedExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOServiceException);
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_ResourceNotFoundExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ResourceNotFoundException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ResourceNotFoundExceptionRes");
+    var de_TooManyRequestsExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new TooManyRequestsException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_TooManyRequestsExceptionRes");
+    var de_UnauthorizedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        message: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var isSerializableHeaderValue = /* @__PURE__ */ __name2((value) => value !== void 0 && value !== null && value !== "" && (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) && (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0), "isSerializableHeaderValue");
+    var _aI = "accountId";
+    var _aT = "accessToken";
+    var _ai = "account_id";
+    var _mR = "maxResults";
+    var _mr = "max_result";
+    var _nT = "nextToken";
+    var _nt = "next_token";
+    var _rN = "roleName";
+    var _rn = "role_name";
+    var _xasbt = "x-amz-sso_bearer_token";
+    var _GetRoleCredentialsCommand = class _GetRoleCredentialsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "GetRoleCredentials", {}).n("SSOClient", "GetRoleCredentialsCommand").f(GetRoleCredentialsRequestFilterSensitiveLog, GetRoleCredentialsResponseFilterSensitiveLog).ser(se_GetRoleCredentialsCommand).de(de_GetRoleCredentialsCommand).build() {
+    };
+    __name2(_GetRoleCredentialsCommand, "GetRoleCredentialsCommand");
+    var GetRoleCredentialsCommand = _GetRoleCredentialsCommand;
+    var _ListAccountRolesCommand = class _ListAccountRolesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccountRoles", {}).n("SSOClient", "ListAccountRolesCommand").f(ListAccountRolesRequestFilterSensitiveLog, void 0).ser(se_ListAccountRolesCommand).de(de_ListAccountRolesCommand).build() {
+    };
+    __name2(_ListAccountRolesCommand, "ListAccountRolesCommand");
+    var ListAccountRolesCommand = _ListAccountRolesCommand;
+    var _ListAccountsCommand = class _ListAccountsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "ListAccounts", {}).n("SSOClient", "ListAccountsCommand").f(ListAccountsRequestFilterSensitiveLog, void 0).ser(se_ListAccountsCommand).de(de_ListAccountsCommand).build() {
+    };
+    __name2(_ListAccountsCommand, "ListAccountsCommand");
+    var ListAccountsCommand = _ListAccountsCommand;
+    var _LogoutCommand = class _LogoutCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("SWBPortalService", "Logout", {}).n("SSOClient", "LogoutCommand").f(LogoutRequestFilterSensitiveLog, void 0).ser(se_LogoutCommand).de(de_LogoutCommand).build() {
+    };
+    __name2(_LogoutCommand, "LogoutCommand");
+    var LogoutCommand = _LogoutCommand;
+    var commands = {
+      GetRoleCredentialsCommand,
+      ListAccountRolesCommand,
+      ListAccountsCommand,
+      LogoutCommand
+    };
+    var _SSO = class _SSO extends SSOClient {
+    };
+    __name2(_SSO, "SSO");
+    var SSO = _SSO;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSO);
+    var paginateListAccountRoles = (0, import_core4.createPaginator)(SSOClient, ListAccountRolesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListAccounts = (0, import_core4.createPaginator)(SSOClient, ListAccountsCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.defaultSSOOIDCHttpAuthSchemeProvider = exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var defaultSSOOIDCHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeParametersProvider = defaultSSOOIDCHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sso-oauth",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSSOOIDCHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "CreateToken": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "RegisterClient": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "StartDeviceAuthorization": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSSOOIDCHttpAuthSchemeProvider = defaultSSOOIDCHttpAuthSchemeProvider;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config);
+      return {
+        ...config_0
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/package.json
+var require_package3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sso-oidc",
+      description: "AWS SDK for JavaScript Sso Oidc Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sso-oidc",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sso-oidc"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      peerDependencies: {
+        "@aws-sdk/client-sts": "^3.632.0"
+      },
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso-oidc",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sso-oidc"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js
+var require_ruleset2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var u = "required";
+    var v = "fn";
+    var w = "argv";
+    var x = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = "getAttr";
+    var i = { [u]: false, "type": "String" };
+    var j = { [u]: true, "default": false, "type": "Boolean" };
+    var k = { [x]: "Endpoint" };
+    var l = { [v]: c, [w]: [{ [x]: "UseFIPS" }, true] };
+    var m = { [v]: c, [w]: [{ [x]: "UseDualStack" }, true] };
+    var n = {};
+    var o = { [v]: h, [w]: [{ [x]: g }, "supportsFIPS"] };
+    var p = { [x]: g };
+    var q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, "supportsDualStack"] }] };
+    var r = [l];
+    var s = [m];
+    var t = [{ [x]: "Region" }];
+    var _data = { version: "1.0", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: "aws.partition", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: "stringEquals", [w]: [{ [v]: h, [w]: [p, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://oidc.{Region}.amazonaws.com", properties: n, headers: n }, type: e }, { endpoint: { url: "https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: "https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: n, headers: n }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://oidc.{Region}.{PartitionResult#dnsSuffix}", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset2();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider3();
+    var endpointResolver_1 = require_endpointResolver2();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2019-06-10",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSSOOIDCHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SSO OIDC",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js
+var require_runtimeConfig2 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package3());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared2();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js
+var require_dist_cjs45 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sso-oidc/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AccessDeniedException: () => AccessDeniedException,
+      AuthorizationPendingException: () => AuthorizationPendingException,
+      CreateTokenCommand: () => CreateTokenCommand,
+      CreateTokenRequestFilterSensitiveLog: () => CreateTokenRequestFilterSensitiveLog,
+      CreateTokenResponseFilterSensitiveLog: () => CreateTokenResponseFilterSensitiveLog,
+      CreateTokenWithIAMCommand: () => CreateTokenWithIAMCommand,
+      CreateTokenWithIAMRequestFilterSensitiveLog: () => CreateTokenWithIAMRequestFilterSensitiveLog,
+      CreateTokenWithIAMResponseFilterSensitiveLog: () => CreateTokenWithIAMResponseFilterSensitiveLog,
+      ExpiredTokenException: () => ExpiredTokenException,
+      InternalServerException: () => InternalServerException,
+      InvalidClientException: () => InvalidClientException,
+      InvalidClientMetadataException: () => InvalidClientMetadataException,
+      InvalidGrantException: () => InvalidGrantException,
+      InvalidRedirectUriException: () => InvalidRedirectUriException,
+      InvalidRequestException: () => InvalidRequestException,
+      InvalidRequestRegionException: () => InvalidRequestRegionException,
+      InvalidScopeException: () => InvalidScopeException,
+      RegisterClientCommand: () => RegisterClientCommand,
+      RegisterClientResponseFilterSensitiveLog: () => RegisterClientResponseFilterSensitiveLog,
+      SSOOIDC: () => SSOOIDC,
+      SSOOIDCClient: () => SSOOIDCClient,
+      SSOOIDCServiceException: () => SSOOIDCServiceException,
+      SlowDownException: () => SlowDownException,
+      StartDeviceAuthorizationCommand: () => StartDeviceAuthorizationCommand,
+      StartDeviceAuthorizationRequestFilterSensitiveLog: () => StartDeviceAuthorizationRequestFilterSensitiveLog,
+      UnauthorizedClientException: () => UnauthorizedClientException,
+      UnsupportedGrantTypeException: () => UnsupportedGrantTypeException,
+      __Client: () => import_smithy_client4.Client
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider3();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "sso-oauth"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig2();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SSOOIDCClient = class _SSOOIDCClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSSOOIDCHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SSOOIDCClient, "SSOOIDCClient");
+    var SSOOIDCClient = _SSOOIDCClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var _SSOOIDCServiceException = class _SSOOIDCServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SSOOIDCServiceException2.prototype);
+      }
+    };
+    __name2(_SSOOIDCServiceException, "SSOOIDCServiceException");
+    var SSOOIDCServiceException = _SSOOIDCServiceException;
+    var _AccessDeniedException = class _AccessDeniedException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AccessDeniedException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AccessDeniedException, "AccessDeniedException");
+    var AccessDeniedException = _AccessDeniedException;
+    var _AuthorizationPendingException = class _AuthorizationPendingException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "AuthorizationPendingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "AuthorizationPendingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _AuthorizationPendingException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_AuthorizationPendingException, "AuthorizationPendingException");
+    var AuthorizationPendingException = _AuthorizationPendingException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _InternalServerException = class _InternalServerException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InternalServerException",
+          $fault: "server",
+          ...opts
+        });
+        this.name = "InternalServerException";
+        this.$fault = "server";
+        Object.setPrototypeOf(this, _InternalServerException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InternalServerException, "InternalServerException");
+    var InternalServerException = _InternalServerException;
+    var _InvalidClientException = class _InvalidClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientException, "InvalidClientException");
+    var InvalidClientException = _InvalidClientException;
+    var _InvalidGrantException = class _InvalidGrantException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidGrantException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidGrantException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidGrantException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidGrantException, "InvalidGrantException");
+    var InvalidGrantException = _InvalidGrantException;
+    var _InvalidRequestException = class _InvalidRequestException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRequestException, "InvalidRequestException");
+    var InvalidRequestException = _InvalidRequestException;
+    var _InvalidScopeException = class _InvalidScopeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidScopeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidScopeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidScopeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidScopeException, "InvalidScopeException");
+    var InvalidScopeException = _InvalidScopeException;
+    var _SlowDownException = class _SlowDownException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "SlowDownException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "SlowDownException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _SlowDownException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_SlowDownException, "SlowDownException");
+    var SlowDownException = _SlowDownException;
+    var _UnauthorizedClientException = class _UnauthorizedClientException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnauthorizedClientException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnauthorizedClientException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnauthorizedClientException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnauthorizedClientException, "UnauthorizedClientException");
+    var UnauthorizedClientException = _UnauthorizedClientException;
+    var _UnsupportedGrantTypeException = class _UnsupportedGrantTypeException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "UnsupportedGrantTypeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "UnsupportedGrantTypeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _UnsupportedGrantTypeException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_UnsupportedGrantTypeException, "UnsupportedGrantTypeException");
+    var UnsupportedGrantTypeException = _UnsupportedGrantTypeException;
+    var _InvalidRequestRegionException = class _InvalidRequestRegionException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRequestRegionException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRequestRegionException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRequestRegionException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+        this.endpoint = opts.endpoint;
+        this.region = opts.region;
+      }
+    };
+    __name2(_InvalidRequestRegionException, "InvalidRequestRegionException");
+    var InvalidRequestRegionException = _InvalidRequestRegionException;
+    var _InvalidClientMetadataException = class _InvalidClientMetadataException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidClientMetadataException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidClientMetadataException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidClientMetadataException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidClientMetadataException, "InvalidClientMetadataException");
+    var InvalidClientMetadataException = _InvalidClientMetadataException;
+    var _InvalidRedirectUriException = class _InvalidRedirectUriException2 extends SSOOIDCServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidRedirectUriException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidRedirectUriException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidRedirectUriException2.prototype);
+        this.error = opts.error;
+        this.error_description = opts.error_description;
+      }
+    };
+    __name2(_InvalidRedirectUriException, "InvalidRedirectUriException");
+    var InvalidRedirectUriException = _InvalidRedirectUriException;
+    var CreateTokenRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenRequestFilterSensitiveLog");
+    var CreateTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenResponseFilterSensitiveLog");
+    var CreateTokenWithIAMRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.assertion && { assertion: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.subjectToken && { subjectToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.codeVerifier && { codeVerifier: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMRequestFilterSensitiveLog");
+    var CreateTokenWithIAMResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.accessToken && { accessToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.refreshToken && { refreshToken: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.idToken && { idToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateTokenWithIAMResponseFilterSensitiveLog");
+    var RegisterClientResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "RegisterClientResponseFilterSensitiveLog");
+    var StartDeviceAuthorizationRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.clientSecret && { clientSecret: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartDeviceAuthorizationRequestFilterSensitiveLog");
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var se_CreateTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          code: [],
+          codeVerifier: [],
+          deviceCode: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          scope: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_CreateTokenCommand");
+    var se_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/token");
+      const query = (0, import_smithy_client4.map)({
+        [_ai]: [, "t"]
+      });
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          assertion: [],
+          clientId: [],
+          code: [],
+          codeVerifier: [],
+          grantType: [],
+          redirectUri: [],
+          refreshToken: [],
+          requestedTokenType: [],
+          scope: (_) => (0, import_smithy_client4._json)(_),
+          subjectToken: [],
+          subjectTokenType: []
+        })
+      );
+      b.m("POST").h(headers).q(query).b(body);
+      return b.build();
+    }, "se_CreateTokenWithIAMCommand");
+    var se_RegisterClientCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/client/register");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientName: [],
+          clientType: [],
+          entitledApplicationArn: [],
+          grantTypes: (_) => (0, import_smithy_client4._json)(_),
+          issuerUrl: [],
+          redirectUris: (_) => (0, import_smithy_client4._json)(_),
+          scopes: (_) => (0, import_smithy_client4._json)(_)
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_RegisterClientCommand");
+    var se_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const b = (0, import_core4.requestBuilder)(input, context);
+      const headers = {
+        "content-type": "application/json"
+      };
+      b.bp("/device_authorization");
+      let body;
+      body = JSON.stringify(
+        (0, import_smithy_client4.take)(input, {
+          clientId: [],
+          clientSecret: [],
+          startUrl: []
+        })
+      );
+      b.m("POST").h(headers).b(body);
+      return b.build();
+    }, "se_StartDeviceAuthorizationCommand");
+    var de_CreateTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenCommand");
+    var de_CreateTokenWithIAMCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        accessToken: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        idToken: import_smithy_client4.expectString,
+        issuedTokenType: import_smithy_client4.expectString,
+        refreshToken: import_smithy_client4.expectString,
+        scope: import_smithy_client4._json,
+        tokenType: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_CreateTokenWithIAMCommand");
+    var de_RegisterClientCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        authorizationEndpoint: import_smithy_client4.expectString,
+        clientId: import_smithy_client4.expectString,
+        clientIdIssuedAt: import_smithy_client4.expectLong,
+        clientSecret: import_smithy_client4.expectString,
+        clientSecretExpiresAt: import_smithy_client4.expectLong,
+        tokenEndpoint: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_RegisterClientCommand");
+    var de_StartDeviceAuthorizationCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode !== 200 && output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const contents = (0, import_smithy_client4.map)({
+        $metadata: deserializeMetadata(output)
+      });
+      const data = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.expectObject)(await (0, import_core22.parseJsonBody)(output.body, context)), "body");
+      const doc = (0, import_smithy_client4.take)(data, {
+        deviceCode: import_smithy_client4.expectString,
+        expiresIn: import_smithy_client4.expectInt32,
+        interval: import_smithy_client4.expectInt32,
+        userCode: import_smithy_client4.expectString,
+        verificationUri: import_smithy_client4.expectString,
+        verificationUriComplete: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      return contents;
+    }, "de_StartDeviceAuthorizationCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "AccessDeniedException":
+        case "com.amazonaws.ssooidc#AccessDeniedException":
+          throw await de_AccessDeniedExceptionRes(parsedOutput, context);
+        case "AuthorizationPendingException":
+        case "com.amazonaws.ssooidc#AuthorizationPendingException":
+          throw await de_AuthorizationPendingExceptionRes(parsedOutput, context);
+        case "ExpiredTokenException":
+        case "com.amazonaws.ssooidc#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "InternalServerException":
+        case "com.amazonaws.ssooidc#InternalServerException":
+          throw await de_InternalServerExceptionRes(parsedOutput, context);
+        case "InvalidClientException":
+        case "com.amazonaws.ssooidc#InvalidClientException":
+          throw await de_InvalidClientExceptionRes(parsedOutput, context);
+        case "InvalidGrantException":
+        case "com.amazonaws.ssooidc#InvalidGrantException":
+          throw await de_InvalidGrantExceptionRes(parsedOutput, context);
+        case "InvalidRequestException":
+        case "com.amazonaws.ssooidc#InvalidRequestException":
+          throw await de_InvalidRequestExceptionRes(parsedOutput, context);
+        case "InvalidScopeException":
+        case "com.amazonaws.ssooidc#InvalidScopeException":
+          throw await de_InvalidScopeExceptionRes(parsedOutput, context);
+        case "SlowDownException":
+        case "com.amazonaws.ssooidc#SlowDownException":
+          throw await de_SlowDownExceptionRes(parsedOutput, context);
+        case "UnauthorizedClientException":
+        case "com.amazonaws.ssooidc#UnauthorizedClientException":
+          throw await de_UnauthorizedClientExceptionRes(parsedOutput, context);
+        case "UnsupportedGrantTypeException":
+        case "com.amazonaws.ssooidc#UnsupportedGrantTypeException":
+          throw await de_UnsupportedGrantTypeExceptionRes(parsedOutput, context);
+        case "InvalidRequestRegionException":
+        case "com.amazonaws.ssooidc#InvalidRequestRegionException":
+          throw await de_InvalidRequestRegionExceptionRes(parsedOutput, context);
+        case "InvalidClientMetadataException":
+        case "com.amazonaws.ssooidc#InvalidClientMetadataException":
+          throw await de_InvalidClientMetadataExceptionRes(parsedOutput, context);
+        case "InvalidRedirectUriException":
+        case "com.amazonaws.ssooidc#InvalidRedirectUriException":
+          throw await de_InvalidRedirectUriExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SSOOIDCServiceException);
+    var de_AccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AccessDeniedExceptionRes");
+    var de_AuthorizationPendingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new AuthorizationPendingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_AuthorizationPendingExceptionRes");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_InternalServerExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InternalServerException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InternalServerExceptionRes");
+    var de_InvalidClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientExceptionRes");
+    var de_InvalidClientMetadataExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidClientMetadataException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidClientMetadataExceptionRes");
+    var de_InvalidGrantExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidGrantException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidGrantExceptionRes");
+    var de_InvalidRedirectUriExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRedirectUriException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRedirectUriExceptionRes");
+    var de_InvalidRequestExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestExceptionRes");
+    var de_InvalidRequestRegionExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        endpoint: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString,
+        region: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidRequestRegionException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidRequestRegionExceptionRes");
+    var de_InvalidScopeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new InvalidScopeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_InvalidScopeExceptionRes");
+    var de_SlowDownExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new SlowDownException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_SlowDownExceptionRes");
+    var de_UnauthorizedClientExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnauthorizedClientException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnauthorizedClientExceptionRes");
+    var de_UnsupportedGrantTypeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const contents = (0, import_smithy_client4.map)({});
+      const data = parsedOutput.body;
+      const doc = (0, import_smithy_client4.take)(data, {
+        error: import_smithy_client4.expectString,
+        error_description: import_smithy_client4.expectString
+      });
+      Object.assign(contents, doc);
+      const exception = new UnsupportedGrantTypeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...contents
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, parsedOutput.body);
+    }, "de_UnsupportedGrantTypeExceptionRes");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var _ai = "aws_iam";
+    var _CreateTokenCommand = class _CreateTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateToken", {}).n("SSOOIDCClient", "CreateTokenCommand").f(CreateTokenRequestFilterSensitiveLog, CreateTokenResponseFilterSensitiveLog).ser(se_CreateTokenCommand).de(de_CreateTokenCommand).build() {
+    };
+    __name2(_CreateTokenCommand, "CreateTokenCommand");
+    var CreateTokenCommand = _CreateTokenCommand;
+    var _CreateTokenWithIAMCommand = class _CreateTokenWithIAMCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "CreateTokenWithIAM", {}).n("SSOOIDCClient", "CreateTokenWithIAMCommand").f(CreateTokenWithIAMRequestFilterSensitiveLog, CreateTokenWithIAMResponseFilterSensitiveLog).ser(se_CreateTokenWithIAMCommand).de(de_CreateTokenWithIAMCommand).build() {
+    };
+    __name2(_CreateTokenWithIAMCommand, "CreateTokenWithIAMCommand");
+    var CreateTokenWithIAMCommand = _CreateTokenWithIAMCommand;
+    var _RegisterClientCommand = class _RegisterClientCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "RegisterClient", {}).n("SSOOIDCClient", "RegisterClientCommand").f(void 0, RegisterClientResponseFilterSensitiveLog).ser(se_RegisterClientCommand).de(de_RegisterClientCommand).build() {
+    };
+    __name2(_RegisterClientCommand, "RegisterClientCommand");
+    var RegisterClientCommand = _RegisterClientCommand;
+    var _StartDeviceAuthorizationCommand = class _StartDeviceAuthorizationCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSSOOIDCService", "StartDeviceAuthorization", {}).n("SSOOIDCClient", "StartDeviceAuthorizationCommand").f(StartDeviceAuthorizationRequestFilterSensitiveLog, void 0).ser(se_StartDeviceAuthorizationCommand).de(de_StartDeviceAuthorizationCommand).build() {
+    };
+    __name2(_StartDeviceAuthorizationCommand, "StartDeviceAuthorizationCommand");
+    var StartDeviceAuthorizationCommand = _StartDeviceAuthorizationCommand;
+    var commands = {
+      CreateTokenCommand,
+      CreateTokenWithIAMCommand,
+      RegisterClientCommand,
+      StartDeviceAuthorizationCommand
+    };
+    var _SSOOIDC = class _SSOOIDC extends SSOOIDCClient {
+    };
+    __name2(_SSOOIDC, "SSOOIDC");
+    var SSOOIDC = _SSOOIDC;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SSOOIDC);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js
+var require_dist_cjs46 = __commonJS({
+  "../../../node_modules/@aws-sdk/token-providers/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSso: () => fromSso,
+      fromStatic: () => fromStatic,
+      nodeProvider: () => nodeProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var EXPIRE_WINDOW_MS = 5 * 60 * 1e3;
+    var REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;
+    var ssoOidcClientsHash = {};
+    var getSsoOidcClient = /* @__PURE__ */ __name2(async (ssoRegion) => {
+      const { SSOOIDCClient } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      if (ssoOidcClientsHash[ssoRegion]) {
+        return ssoOidcClientsHash[ssoRegion];
+      }
+      const ssoOidcClient = new SSOOIDCClient({ region: ssoRegion });
+      ssoOidcClientsHash[ssoRegion] = ssoOidcClient;
+      return ssoOidcClient;
+    }, "getSsoOidcClient");
+    var getNewSsoOidcToken = /* @__PURE__ */ __name2(async (ssoToken, ssoRegion) => {
+      const { CreateTokenCommand } = await Promise.resolve().then(() => __toESM2(require_dist_cjs45()));
+      const ssoOidcClient = await getSsoOidcClient(ssoRegion);
+      return ssoOidcClient.send(
+        new CreateTokenCommand({
+          clientId: ssoToken.clientId,
+          clientSecret: ssoToken.clientSecret,
+          refreshToken: ssoToken.refreshToken,
+          grantType: "refresh_token"
+        })
+      );
+    }, "getNewSsoOidcToken");
+    var import_property_provider2 = require_dist_cjs24();
+    var validateTokenExpiry = /* @__PURE__ */ __name2((token) => {
+      if (token.expiration && token.expiration.getTime() < Date.now()) {
+        throw new import_property_provider2.TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);
+      }
+    }, "validateTokenExpiry");
+    var validateTokenKey = /* @__PURE__ */ __name2((key, value, forRefresh = false) => {
+      if (typeof value === "undefined") {
+        throw new import_property_provider2.TokenProviderError(
+          `Value not present for '${key}' in SSO Token${forRefresh ? ". Cannot refresh" : ""}. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+    }, "validateTokenKey");
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_fs4 = require("fs");
+    var { writeFile } = import_fs4.promises;
+    var writeSSOTokenToFile = /* @__PURE__ */ __name2((id, ssoToken) => {
+      const tokenFilepath = (0, import_shared_ini_file_loader.getSSOTokenFilepath)(id);
+      const tokenString = JSON.stringify(ssoToken, null, 2);
+      return writeFile(tokenFilepath, tokenString);
+    }, "writeSSOTokenToFile");
+    var lastRefreshAttemptTime = /* @__PURE__ */ new Date(0);
+    var fromSso = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/token-providers - fromSso");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      const profile = profiles[profileName];
+      if (!profile) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);
+      } else if (!profile["sso_session"]) {
+        throw new import_property_provider2.TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);
+      }
+      const ssoSessionName = profile["sso_session"];
+      const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+      const ssoSession = ssoSessions[ssoSessionName];
+      if (!ssoSession) {
+        throw new import_property_provider2.TokenProviderError(
+          `Sso session '${ssoSessionName}' could not be found in shared credentials file.`,
+          false
+        );
+      }
+      for (const ssoSessionRequiredKey of ["sso_start_url", "sso_region"]) {
+        if (!ssoSession[ssoSessionRequiredKey]) {
+          throw new import_property_provider2.TokenProviderError(
+            `Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`,
+            false
+          );
+        }
+      }
+      const ssoStartUrl = ssoSession["sso_start_url"];
+      const ssoRegion = ssoSession["sso_region"];
+      let ssoToken;
+      try {
+        ssoToken = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoSessionName);
+      } catch (e) {
+        throw new import_property_provider2.TokenProviderError(
+          `The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`,
+          false
+        );
+      }
+      validateTokenKey("accessToken", ssoToken.accessToken);
+      validateTokenKey("expiresAt", ssoToken.expiresAt);
+      const { accessToken, expiresAt } = ssoToken;
+      const existingToken = { token: accessToken, expiration: new Date(expiresAt) };
+      if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {
+        return existingToken;
+      }
+      if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1e3) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+      validateTokenKey("clientId", ssoToken.clientId, true);
+      validateTokenKey("clientSecret", ssoToken.clientSecret, true);
+      validateTokenKey("refreshToken", ssoToken.refreshToken, true);
+      try {
+        lastRefreshAttemptTime.setTime(Date.now());
+        const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion);
+        validateTokenKey("accessToken", newSsoOidcToken.accessToken);
+        validateTokenKey("expiresIn", newSsoOidcToken.expiresIn);
+        const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1e3);
+        try {
+          await writeSSOTokenToFile(ssoSessionName, {
+            ...ssoToken,
+            accessToken: newSsoOidcToken.accessToken,
+            expiresAt: newTokenExpiration.toISOString(),
+            refreshToken: newSsoOidcToken.refreshToken
+          });
+        } catch (error) {
+        }
+        return {
+          token: newSsoOidcToken.accessToken,
+          expiration: newTokenExpiration
+        };
+      } catch (error) {
+        validateTokenExpiry(existingToken);
+        return existingToken;
+      }
+    }, "fromSso");
+    var fromStatic = /* @__PURE__ */ __name2(({ token, logger }) => async () => {
+      logger == null ? void 0 : logger.debug("@aws-sdk/token-providers - fromStatic");
+      if (!token || !token.token) {
+        throw new import_property_provider2.TokenProviderError(`Please pass a valid token to fromStatic`, false);
+      }
+      return token;
+    }, "fromStatic");
+    var nodeProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(fromSso(init), async () => {
+        throw new import_property_provider2.TokenProviderError("Could not load token from any providers", false);
+      }),
+      (token) => token.expiration !== void 0 && token.expiration.getTime() - Date.now() < 3e5,
+      (token) => token.expiration !== void 0
+    ), "nodeProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js
+var require_dist_cjs47 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __esm2 = (fn, res) => function __init() {
+      return fn && (res = (0, fn[__getOwnPropNames2(fn)[0]])(fn = 0)), res;
+    };
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var loadSso_exports = {};
+    __export2(loadSso_exports, {
+      GetRoleCredentialsCommand: () => import_client_sso.GetRoleCredentialsCommand,
+      SSOClient: () => import_client_sso.SSOClient
+    });
+    var import_client_sso;
+    var init_loadSso = __esm2({
+      "src/loadSso.ts"() {
+        "use strict";
+        import_client_sso = require_dist_cjs44();
+      }
+    });
+    var src_exports = {};
+    __export2(src_exports, {
+      fromSSO: () => fromSSO,
+      isSsoProfile: () => isSsoProfile,
+      validateSsoProfile: () => validateSsoProfile
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var import_token_providers = require_dist_cjs46();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var SHOULD_FAIL_CREDENTIAL_CHAIN = false;
+    var resolveSSOCredentials = /* @__PURE__ */ __name2(async ({
+      ssoStartUrl,
+      ssoSession,
+      ssoAccountId,
+      ssoRegion,
+      ssoRoleName,
+      ssoClient,
+      clientConfig,
+      profile,
+      logger
+    }) => {
+      let token;
+      const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;
+      if (ssoSession) {
+        try {
+          const _token = await (0, import_token_providers.fromSso)({ profile })();
+          token = {
+            accessToken: _token.token,
+            expiresAt: new Date(_token.expiration).toISOString()
+          };
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(e.message, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      } else {
+        try {
+          token = await (0, import_shared_ini_file_loader.getSSOTokenFromFile)(ssoStartUrl);
+        } catch (e) {
+          throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {
+            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+            logger
+          });
+        }
+      }
+      if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {
+        throw new import_property_provider2.CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const { accessToken } = token;
+      const { SSOClient: SSOClient2, GetRoleCredentialsCommand: GetRoleCredentialsCommand2 } = await Promise.resolve().then(() => (init_loadSso(), loadSso_exports));
+      const sso = ssoClient || new SSOClient2(
+        Object.assign({}, clientConfig ?? {}, {
+          region: (clientConfig == null ? void 0 : clientConfig.region) ?? ssoRegion
+        })
+      );
+      let ssoResp;
+      try {
+        ssoResp = await sso.send(
+          new GetRoleCredentialsCommand2({
+            accountId: ssoAccountId,
+            roleName: ssoRoleName,
+            accessToken
+          })
+        );
+      } catch (e) {
+        throw new import_property_provider2.CredentialsProviderError(e, {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      const {
+        roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}
+      } = ssoResp;
+      if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {
+        throw new import_property_provider2.CredentialsProviderError("SSO returns an invalid temporary credential.", {
+          tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
+          logger
+        });
+      }
+      return {
+        accessKeyId,
+        secretAccessKey,
+        sessionToken,
+        expiration: new Date(expiration),
+        ...credentialScope && { credentialScope },
+        ...accountId && { accountId }
+      };
+    }, "resolveSSOCredentials");
+    var validateSsoProfile = /* @__PURE__ */ __name2((profile, logger) => {
+      const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;
+      if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(
+            ", "
+          )}
+Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,
+          { tryNextLink: false, logger }
+        );
+      }
+      return profile;
+    }, "validateSsoProfile");
+    var fromSSO = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-sso - fromSSO");
+      const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+      const { ssoClient } = init;
+      const profileName = (0, import_shared_ini_file_loader.getProfileName)(init);
+      if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+        const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+        const profile = profiles[profileName];
+        if (!profile) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });
+        }
+        if (!isSsoProfile(profile)) {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {
+            logger: init.logger
+          });
+        }
+        if (profile == null ? void 0 : profile.sso_session) {
+          const ssoSessions = await (0, import_shared_ini_file_loader.loadSsoSessionData)(init);
+          const session = ssoSessions[profile.sso_session];
+          const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;
+          if (ssoRegion && ssoRegion !== session.sso_region) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {
+            throw new import_property_provider2.CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {
+              tryNextLink: false,
+              logger: init.logger
+            });
+          }
+          profile.sso_region = session.sso_region;
+          profile.sso_start_url = session.sso_start_url;
+        }
+        const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(
+          profile,
+          init.logger
+        );
+        return resolveSSOCredentials({
+          ssoStartUrl: sso_start_url,
+          ssoSession: sso_session,
+          ssoAccountId: sso_account_id,
+          ssoRegion: sso_region,
+          ssoRoleName: sso_role_name,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      } else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {
+        throw new import_property_provider2.CredentialsProviderError(
+          'Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',
+          { tryNextLink: false, logger: init.logger }
+        );
+      } else {
+        return resolveSSOCredentials({
+          ssoStartUrl,
+          ssoSession,
+          ssoAccountId,
+          ssoRegion,
+          ssoRoleName,
+          ssoClient,
+          clientConfig: init.clientConfig,
+          profile: profileName
+        });
+      }
+    }, "fromSSO");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js
+var require_httpAuthSchemeProvider4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthSchemeProvider.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthSchemeConfig = exports2.resolveStsAuthConfig = exports2.defaultSTSHttpAuthSchemeProvider = exports2.defaultSTSHttpAuthSchemeParametersProvider = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var util_middleware_1 = require_dist_cjs10();
+    var STSClient_1 = require_STSClient();
+    var defaultSTSHttpAuthSchemeParametersProvider = async (config, context, input) => {
+      return {
+        operation: (0, util_middleware_1.getSmithyContext)(context).operation,
+        region: await (0, util_middleware_1.normalizeProvider)(config.region)() || (() => {
+          throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
+        })()
+      };
+    };
+    exports2.defaultSTSHttpAuthSchemeParametersProvider = defaultSTSHttpAuthSchemeParametersProvider;
+    function createAwsAuthSigv4HttpAuthOption(authParameters) {
+      return {
+        schemeId: "aws.auth#sigv4",
+        signingProperties: {
+          name: "sts",
+          region: authParameters.region
+        },
+        propertiesExtractor: (config, context) => ({
+          signingProperties: {
+            config,
+            context
+          }
+        })
+      };
+    }
+    function createSmithyApiNoAuthHttpAuthOption(authParameters) {
+      return {
+        schemeId: "smithy.api#noAuth"
+      };
+    }
+    var defaultSTSHttpAuthSchemeProvider = (authParameters) => {
+      const options = [];
+      switch (authParameters.operation) {
+        case "AssumeRoleWithSAML": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        case "AssumeRoleWithWebIdentity": {
+          options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
+          break;
+        }
+        default: {
+          options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
+        }
+      }
+      return options;
+    };
+    exports2.defaultSTSHttpAuthSchemeProvider = defaultSTSHttpAuthSchemeProvider;
+    var resolveStsAuthConfig = (input) => ({
+      ...input,
+      stsClientCtor: STSClient_1.STSClient
+    });
+    exports2.resolveStsAuthConfig = resolveStsAuthConfig;
+    var resolveHttpAuthSchemeConfig = (config) => {
+      const config_0 = (0, exports2.resolveStsAuthConfig)(config);
+      const config_1 = (0, core_1.resolveAwsSdkSigV4Config)(config_0);
+      return {
+        ...config_1
+      };
+    };
+    exports2.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js
+var require_EndpointParameters = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/EndpointParameters.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.commonParams = exports2.resolveClientEndpointParameters = void 0;
+    var resolveClientEndpointParameters = (options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        useGlobalEndpoint: options.useGlobalEndpoint ?? false,
+        defaultSigningName: "sts"
+      };
+    };
+    exports2.resolveClientEndpointParameters = resolveClientEndpointParameters;
+    exports2.commonParams = {
+      UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" },
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/package.json
+var require_package4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/package.json"(exports2, module2) {
+    module2.exports = {
+      name: "@aws-sdk/client-sts",
+      description: "AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native",
+      version: "3.632.0",
+      scripts: {
+        build: "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
+        "build:cjs": "node ../../scripts/compilation/inline client-sts",
+        "build:es": "tsc -p tsconfig.es.json",
+        "build:include:deps": "lerna run --scope $npm_package_name --include-dependencies build",
+        "build:types": "rimraf ./dist-types tsconfig.types.tsbuildinfo && tsc -p tsconfig.types.json",
+        "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
+        clean: "rimraf ./dist-* && rimraf *.tsbuildinfo",
+        "extract:docs": "api-extractor run --local",
+        "generate:client": "node ../../scripts/generate-clients/single-service --solo sts",
+        test: "yarn test:unit",
+        "test:unit": "jest"
+      },
+      main: "./dist-cjs/index.js",
+      types: "./dist-types/index.d.ts",
+      module: "./dist-es/index.js",
+      sideEffects: false,
+      dependencies: {
+        "@aws-crypto/sha256-browser": "5.2.0",
+        "@aws-crypto/sha256-js": "5.2.0",
+        "@aws-sdk/client-sso-oidc": "3.632.0",
+        "@aws-sdk/core": "3.629.0",
+        "@aws-sdk/credential-provider-node": "3.632.0",
+        "@aws-sdk/middleware-host-header": "3.620.0",
+        "@aws-sdk/middleware-logger": "3.609.0",
+        "@aws-sdk/middleware-recursion-detection": "3.620.0",
+        "@aws-sdk/middleware-user-agent": "3.632.0",
+        "@aws-sdk/region-config-resolver": "3.614.0",
+        "@aws-sdk/types": "3.609.0",
+        "@aws-sdk/util-endpoints": "3.632.0",
+        "@aws-sdk/util-user-agent-browser": "3.609.0",
+        "@aws-sdk/util-user-agent-node": "3.614.0",
+        "@smithy/config-resolver": "^3.0.5",
+        "@smithy/core": "^2.3.2",
+        "@smithy/fetch-http-handler": "^3.2.4",
+        "@smithy/hash-node": "^3.0.3",
+        "@smithy/invalid-dependency": "^3.0.3",
+        "@smithy/middleware-content-length": "^3.0.5",
+        "@smithy/middleware-endpoint": "^3.1.0",
+        "@smithy/middleware-retry": "^3.0.14",
+        "@smithy/middleware-serde": "^3.0.3",
+        "@smithy/middleware-stack": "^3.0.3",
+        "@smithy/node-config-provider": "^3.1.4",
+        "@smithy/node-http-handler": "^3.1.4",
+        "@smithy/protocol-http": "^4.1.0",
+        "@smithy/smithy-client": "^3.1.12",
+        "@smithy/types": "^3.3.0",
+        "@smithy/url-parser": "^3.0.3",
+        "@smithy/util-base64": "^3.0.0",
+        "@smithy/util-body-length-browser": "^3.0.0",
+        "@smithy/util-body-length-node": "^3.0.0",
+        "@smithy/util-defaults-mode-browser": "^3.0.14",
+        "@smithy/util-defaults-mode-node": "^3.0.14",
+        "@smithy/util-endpoints": "^2.0.5",
+        "@smithy/util-middleware": "^3.0.3",
+        "@smithy/util-retry": "^3.0.3",
+        "@smithy/util-utf8": "^3.0.0",
+        tslib: "^2.6.2"
+      },
+      devDependencies: {
+        "@tsconfig/node16": "16.1.3",
+        "@types/node": "^16.18.96",
+        concurrently: "7.0.0",
+        "downlevel-dts": "0.10.1",
+        rimraf: "3.0.2",
+        typescript: "~4.9.5"
+      },
+      engines: {
+        node: ">=16.0.0"
+      },
+      typesVersions: {
+        "<4.0": {
+          "dist-types/*": [
+            "dist-types/ts3.4/*"
+          ]
+        }
+      },
+      files: [
+        "dist-*/**"
+      ],
+      author: {
+        name: "AWS SDK for JavaScript Team",
+        url: "https://aws.amazon.com/javascript/"
+      },
+      license: "Apache-2.0",
+      browser: {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.browser"
+      },
+      "react-native": {
+        "./dist-es/runtimeConfig": "./dist-es/runtimeConfig.native"
+      },
+      homepage: "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sts",
+      repository: {
+        type: "git",
+        url: "https://github.com/aws/aws-sdk-js-v3.git",
+        directory: "clients/client-sts"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js
+var require_ruleset3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var F2 = "required";
+    var G2 = "type";
+    var H2 = "fn";
+    var I2 = "argv";
+    var J = "ref";
+    var a = false;
+    var b = true;
+    var c = "booleanEquals";
+    var d = "stringEquals";
+    var e = "sigv4";
+    var f = "sts";
+    var g = "us-east-1";
+    var h = "endpoint";
+    var i = "https://sts.{Region}.{PartitionResult#dnsSuffix}";
+    var j = "tree";
+    var k = "error";
+    var l = "getAttr";
+    var m = { [F2]: false, [G2]: "String" };
+    var n = { [F2]: true, "default": false, [G2]: "Boolean" };
+    var o = { [J]: "Endpoint" };
+    var p = { [H2]: "isSet", [I2]: [{ [J]: "Region" }] };
+    var q = { [J]: "Region" };
+    var r = { [H2]: "aws.partition", [I2]: [q], "assign": "PartitionResult" };
+    var s = { [J]: "UseFIPS" };
+    var t = { [J]: "UseDualStack" };
+    var u = { "url": "https://sts.amazonaws.com", "properties": { "authSchemes": [{ "name": e, "signingName": f, "signingRegion": g }] }, "headers": {} };
+    var v = {};
+    var w = { "conditions": [{ [H2]: d, [I2]: [q, "aws-global"] }], [h]: u, [G2]: h };
+    var x = { [H2]: c, [I2]: [s, true] };
+    var y = { [H2]: c, [I2]: [t, true] };
+    var z = { [H2]: l, [I2]: [{ [J]: "PartitionResult" }, "supportsFIPS"] };
+    var A = { [J]: "PartitionResult" };
+    var B = { [H2]: c, [I2]: [true, { [H2]: l, [I2]: [A, "supportsDualStack"] }] };
+    var C = [{ [H2]: "isSet", [I2]: [o] }];
+    var D = [x];
+    var E = [y];
+    var _data = { version: "1.0", parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n }, rules: [{ conditions: [{ [H2]: c, [I2]: [{ [J]: "UseGlobalEndpoint" }, b] }, { [H2]: "not", [I2]: C }, p, r, { [H2]: c, [I2]: [s, a] }, { [H2]: c, [I2]: [t, a] }], rules: [{ conditions: [{ [H2]: d, [I2]: [q, "ap-northeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-south-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "ap-southeast-2"] }], endpoint: u, [G2]: h }, w, { conditions: [{ [H2]: d, [I2]: [q, "ca-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-central-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-north-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "eu-west-3"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "sa-east-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, g] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-east-2"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-1"] }], endpoint: u, [G2]: h }, { conditions: [{ [H2]: d, [I2]: [q, "us-west-2"] }], endpoint: u, [G2]: h }, { endpoint: { url: i, properties: { authSchemes: [{ name: e, signingName: f, signingRegion: "{Region}" }] }, headers: v }, [G2]: h }], [G2]: j }, { conditions: C, rules: [{ conditions: D, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [G2]: k }, { conditions: E, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [G2]: k }, { endpoint: { url: o, properties: v, headers: v }, [G2]: h }], [G2]: j }, { conditions: [p], rules: [{ conditions: [r], rules: [{ conditions: [x, y], rules: [{ conditions: [{ [H2]: c, [I2]: [b, z] }, B], rules: [{ endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", [G2]: k }], [G2]: j }, { conditions: D, rules: [{ conditions: [{ [H2]: c, [I2]: [z, b] }], rules: [{ conditions: [{ [H2]: d, [I2]: [{ [H2]: l, [I2]: [A, "name"] }, "aws-us-gov"] }], endpoint: { url: "https://sts.{Region}.amazonaws.com", properties: v, headers: v }, [G2]: h }, { endpoint: { url: "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "FIPS is enabled but this partition does not support FIPS", [G2]: k }], [G2]: j }, { conditions: E, rules: [{ conditions: [B], rules: [{ endpoint: { url: "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: v, headers: v }, [G2]: h }], [G2]: j }, { error: "DualStack is enabled but this partition does not support DualStack", [G2]: k }], [G2]: j }, w, { endpoint: { url: i, properties: v, headers: v }, [G2]: h }], [G2]: j }], [G2]: j }, { error: "Invalid Configuration: Missing Region", [G2]: k }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset3();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var endpointResolver_1 = require_endpointResolver3();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2011-06-15",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "STS",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js
+var require_runtimeConfig3 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package4());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_2 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared3();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4") || (async (idProps) => await (0, credential_provider_node_1.defaultProvider)(idProps?.__config || {})()),
+            signer: new core_1.AwsSdkSigV4Signer()
+          },
+          {
+            schemeId: "smithy.api#noAuth",
+            identityProvider: (ipc) => ipc.getIdentityProvider("smithy.api#noAuth") || (async () => ({})),
+            signer: new core_2.NoAuthSigner()
+          }
+        ],
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js
+var require_httpAuthExtensionConfiguration = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/auth/httpAuthExtensionConfiguration.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveHttpAuthRuntimeConfig = exports2.getHttpAuthExtensionConfiguration = void 0;
+    var getHttpAuthExtensionConfiguration = (runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    };
+    exports2.getHttpAuthExtensionConfiguration = getHttpAuthExtensionConfiguration;
+    var resolveHttpAuthRuntimeConfig = (config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    };
+    exports2.resolveHttpAuthRuntimeConfig = resolveHttpAuthRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js
+var require_runtimeExtensions = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/runtimeExtensions.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.resolveRuntimeExtensions = void 0;
+    var region_config_resolver_1 = require_dist_cjs43();
+    var protocol_http_1 = require_dist_cjs2();
+    var smithy_client_1 = require_dist_cjs33();
+    var httpAuthExtensionConfiguration_1 = require_httpAuthExtensionConfiguration();
+    var asPartial = (t) => t;
+    var resolveRuntimeExtensions = (runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...(0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration)
+      };
+    };
+    exports2.resolveRuntimeExtensions = resolveRuntimeExtensions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js
+var require_STSClient = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/STSClient.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.STSClient = exports2.__Client = void 0;
+    var middleware_host_header_1 = require_dist_cjs3();
+    var middleware_logger_1 = require_dist_cjs4();
+    var middleware_recursion_detection_1 = require_dist_cjs5();
+    var middleware_user_agent_1 = require_dist_cjs8();
+    var config_resolver_1 = require_dist_cjs11();
+    var core_1 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var middleware_content_length_1 = require_dist_cjs23();
+    var middleware_endpoint_1 = require_dist_cjs29();
+    var middleware_retry_1 = require_dist_cjs34();
+    var smithy_client_1 = require_dist_cjs33();
+    Object.defineProperty(exports2, "__Client", { enumerable: true, get: function() {
+      return smithy_client_1.Client;
+    } });
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider4();
+    var EndpointParameters_1 = require_EndpointParameters();
+    var runtimeConfig_1 = require_runtimeConfig3();
+    var runtimeExtensions_1 = require_runtimeExtensions();
+    var STSClient2 = class extends smithy_client_1.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {});
+        const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0);
+        const _config_2 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, middleware_retry_1.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, config_resolver_1.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, httpAuthSchemeProvider_1.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_7, configuration?.extensions || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_logger_1.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, middleware_recursion_detection_1.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use((0, core_1.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+          httpAuthSchemeParametersProvider: httpAuthSchemeProvider_1.defaultSTSHttpAuthSchemeParametersProvider,
+          identityProviderConfigProvider: async (config) => new core_1.DefaultIdentityProviderConfig({
+            "aws.auth#sigv4": config.credentials
+          })
+        }));
+        this.middlewareStack.use((0, core_1.getHttpSigningPlugin)(this.config));
+      }
+      destroy() {
+        super.destroy();
+      }
+    };
+    exports2.STSClient = STSClient2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js
+var require_dist_cjs48 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sts/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      AssumeRoleCommand: () => AssumeRoleCommand,
+      AssumeRoleResponseFilterSensitiveLog: () => AssumeRoleResponseFilterSensitiveLog,
+      AssumeRoleWithSAMLCommand: () => AssumeRoleWithSAMLCommand,
+      AssumeRoleWithSAMLRequestFilterSensitiveLog: () => AssumeRoleWithSAMLRequestFilterSensitiveLog,
+      AssumeRoleWithSAMLResponseFilterSensitiveLog: () => AssumeRoleWithSAMLResponseFilterSensitiveLog,
+      AssumeRoleWithWebIdentityCommand: () => AssumeRoleWithWebIdentityCommand,
+      AssumeRoleWithWebIdentityRequestFilterSensitiveLog: () => AssumeRoleWithWebIdentityRequestFilterSensitiveLog,
+      AssumeRoleWithWebIdentityResponseFilterSensitiveLog: () => AssumeRoleWithWebIdentityResponseFilterSensitiveLog,
+      ClientInputEndpointParameters: () => import_EndpointParameters9.ClientInputEndpointParameters,
+      CredentialsFilterSensitiveLog: () => CredentialsFilterSensitiveLog,
+      DecodeAuthorizationMessageCommand: () => DecodeAuthorizationMessageCommand,
+      ExpiredTokenException: () => ExpiredTokenException,
+      GetAccessKeyInfoCommand: () => GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand: () => GetCallerIdentityCommand,
+      GetFederationTokenCommand: () => GetFederationTokenCommand,
+      GetFederationTokenResponseFilterSensitiveLog: () => GetFederationTokenResponseFilterSensitiveLog,
+      GetSessionTokenCommand: () => GetSessionTokenCommand,
+      GetSessionTokenResponseFilterSensitiveLog: () => GetSessionTokenResponseFilterSensitiveLog,
+      IDPCommunicationErrorException: () => IDPCommunicationErrorException,
+      IDPRejectedClaimException: () => IDPRejectedClaimException,
+      InvalidAuthorizationMessageException: () => InvalidAuthorizationMessageException,
+      InvalidIdentityTokenException: () => InvalidIdentityTokenException,
+      MalformedPolicyDocumentException: () => MalformedPolicyDocumentException,
+      PackedPolicyTooLargeException: () => PackedPolicyTooLargeException,
+      RegionDisabledException: () => RegionDisabledException,
+      STS: () => STS,
+      STSServiceException: () => STSServiceException,
+      decorateDefaultCredentialProvider: () => decorateDefaultCredentialProvider,
+      getDefaultRoleAssumer: () => getDefaultRoleAssumer2,
+      getDefaultRoleAssumerWithWebIdentity: () => getDefaultRoleAssumerWithWebIdentity2
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_STSClient(), module2.exports);
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_EndpointParameters = require_EndpointParameters();
+    var import_smithy_client4 = require_dist_cjs33();
+    var _STSServiceException = class _STSServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _STSServiceException2.prototype);
+      }
+    };
+    __name2(_STSServiceException, "STSServiceException");
+    var STSServiceException = _STSServiceException;
+    var _ExpiredTokenException = class _ExpiredTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExpiredTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExpiredTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExpiredTokenException2.prototype);
+      }
+    };
+    __name2(_ExpiredTokenException, "ExpiredTokenException");
+    var ExpiredTokenException = _ExpiredTokenException;
+    var _MalformedPolicyDocumentException = class _MalformedPolicyDocumentException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MalformedPolicyDocumentException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MalformedPolicyDocumentException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MalformedPolicyDocumentException2.prototype);
+      }
+    };
+    __name2(_MalformedPolicyDocumentException, "MalformedPolicyDocumentException");
+    var MalformedPolicyDocumentException = _MalformedPolicyDocumentException;
+    var _PackedPolicyTooLargeException = class _PackedPolicyTooLargeException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "PackedPolicyTooLargeException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "PackedPolicyTooLargeException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _PackedPolicyTooLargeException2.prototype);
+      }
+    };
+    __name2(_PackedPolicyTooLargeException, "PackedPolicyTooLargeException");
+    var PackedPolicyTooLargeException = _PackedPolicyTooLargeException;
+    var _RegionDisabledException = class _RegionDisabledException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "RegionDisabledException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "RegionDisabledException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _RegionDisabledException2.prototype);
+      }
+    };
+    __name2(_RegionDisabledException, "RegionDisabledException");
+    var RegionDisabledException = _RegionDisabledException;
+    var _IDPRejectedClaimException = class _IDPRejectedClaimException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPRejectedClaimException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPRejectedClaimException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPRejectedClaimException2.prototype);
+      }
+    };
+    __name2(_IDPRejectedClaimException, "IDPRejectedClaimException");
+    var IDPRejectedClaimException = _IDPRejectedClaimException;
+    var _InvalidIdentityTokenException = class _InvalidIdentityTokenException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidIdentityTokenException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidIdentityTokenException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidIdentityTokenException2.prototype);
+      }
+    };
+    __name2(_InvalidIdentityTokenException, "InvalidIdentityTokenException");
+    var InvalidIdentityTokenException = _InvalidIdentityTokenException;
+    var _IDPCommunicationErrorException = class _IDPCommunicationErrorException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "IDPCommunicationErrorException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "IDPCommunicationErrorException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _IDPCommunicationErrorException2.prototype);
+      }
+    };
+    __name2(_IDPCommunicationErrorException, "IDPCommunicationErrorException");
+    var IDPCommunicationErrorException = _IDPCommunicationErrorException;
+    var _InvalidAuthorizationMessageException = class _InvalidAuthorizationMessageException2 extends STSServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidAuthorizationMessageException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidAuthorizationMessageException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidAuthorizationMessageException2.prototype);
+      }
+    };
+    __name2(_InvalidAuthorizationMessageException, "InvalidAuthorizationMessageException");
+    var InvalidAuthorizationMessageException = _InvalidAuthorizationMessageException;
+    var CredentialsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SecretAccessKey && { SecretAccessKey: import_smithy_client4.SENSITIVE_STRING }
+    }), "CredentialsFilterSensitiveLog");
+    var AssumeRoleResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleResponseFilterSensitiveLog");
+    var AssumeRoleWithSAMLRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.SAMLAssertion && { SAMLAssertion: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithSAMLRequestFilterSensitiveLog");
+    var AssumeRoleWithSAMLResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithSAMLResponseFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityRequestFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.WebIdentityToken && { WebIdentityToken: import_smithy_client4.SENSITIVE_STRING }
+    }), "AssumeRoleWithWebIdentityRequestFilterSensitiveLog");
+    var AssumeRoleWithWebIdentityResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "AssumeRoleWithWebIdentityResponseFilterSensitiveLog");
+    var GetFederationTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetFederationTokenResponseFilterSensitiveLog");
+    var GetSessionTokenResponseFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }
+    }), "GetSessionTokenResponseFilterSensitiveLog");
+    var import_core4 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_protocol_http8 = require_dist_cjs2();
+    var se_AssumeRoleCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleRequest(input, context),
+        [_A]: _AR,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleCommand");
+    var se_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithSAMLRequest(input, context),
+        [_A]: _ARWSAML,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithSAMLCommand");
+    var se_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_AssumeRoleWithWebIdentityRequest(input, context),
+        [_A]: _ARWWI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_AssumeRoleWithWebIdentityCommand");
+    var se_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_DecodeAuthorizationMessageRequest(input, context),
+        [_A]: _DAM,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DecodeAuthorizationMessageCommand");
+    var se_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetAccessKeyInfoRequest(input, context),
+        [_A]: _GAKI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetAccessKeyInfoCommand");
+    var se_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetCallerIdentityRequest(input, context),
+        [_A]: _GCI,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetCallerIdentityCommand");
+    var se_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetFederationTokenRequest(input, context),
+        [_A]: _GFT,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetFederationTokenCommand");
+    var se_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = SHARED_HEADERS;
+      let body;
+      body = buildFormUrlencodedString({
+        ...se_GetSessionTokenRequest(input, context),
+        [_A]: _GST,
+        [_V]: _
+      });
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetSessionTokenCommand");
+    var de_AssumeRoleCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleResponse(data.AssumeRoleResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleCommand");
+    var de_AssumeRoleWithSAMLCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithSAMLCommand");
+    var de_AssumeRoleWithWebIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_AssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_AssumeRoleWithWebIdentityCommand");
+    var de_DecodeAuthorizationMessageCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_DecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DecodeAuthorizationMessageCommand");
+    var de_GetAccessKeyInfoCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetAccessKeyInfoCommand");
+    var de_GetCallerIdentityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetCallerIdentityResponse(data.GetCallerIdentityResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetCallerIdentityCommand");
+    var de_GetFederationTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetFederationTokenResponse(data.GetFederationTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetFederationTokenCommand");
+    var de_GetSessionTokenCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core4.parseXmlBody)(output.body, context);
+      let contents = {};
+      contents = de_GetSessionTokenResponse(data.GetSessionTokenResult, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetSessionTokenCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core4.parseXmlErrorBody)(output.body, context)
+      };
+      const errorCode = loadQueryErrorCode(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ExpiredTokenException":
+        case "com.amazonaws.sts#ExpiredTokenException":
+          throw await de_ExpiredTokenExceptionRes(parsedOutput, context);
+        case "MalformedPolicyDocument":
+        case "com.amazonaws.sts#MalformedPolicyDocumentException":
+          throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context);
+        case "PackedPolicyTooLarge":
+        case "com.amazonaws.sts#PackedPolicyTooLargeException":
+          throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context);
+        case "RegionDisabledException":
+        case "com.amazonaws.sts#RegionDisabledException":
+          throw await de_RegionDisabledExceptionRes(parsedOutput, context);
+        case "IDPRejectedClaim":
+        case "com.amazonaws.sts#IDPRejectedClaimException":
+          throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context);
+        case "InvalidIdentityToken":
+        case "com.amazonaws.sts#InvalidIdentityTokenException":
+          throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context);
+        case "IDPCommunicationError":
+        case "com.amazonaws.sts#IDPCommunicationErrorException":
+          throw await de_IDPCommunicationErrorExceptionRes(parsedOutput, context);
+        case "InvalidAuthorizationMessageException":
+        case "com.amazonaws.sts#InvalidAuthorizationMessageException":
+          throw await de_InvalidAuthorizationMessageExceptionRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody: parsedBody.Error,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ExpiredTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_ExpiredTokenException(body.Error, context);
+      const exception = new ExpiredTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExpiredTokenExceptionRes");
+    var de_IDPCommunicationErrorExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPCommunicationErrorException(body.Error, context);
+      const exception = new IDPCommunicationErrorException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPCommunicationErrorExceptionRes");
+    var de_IDPRejectedClaimExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_IDPRejectedClaimException(body.Error, context);
+      const exception = new IDPRejectedClaimException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_IDPRejectedClaimExceptionRes");
+    var de_InvalidAuthorizationMessageExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidAuthorizationMessageException(body.Error, context);
+      const exception = new InvalidAuthorizationMessageException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidAuthorizationMessageExceptionRes");
+    var de_InvalidIdentityTokenExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_InvalidIdentityTokenException(body.Error, context);
+      const exception = new InvalidIdentityTokenException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidIdentityTokenExceptionRes");
+    var de_MalformedPolicyDocumentExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_MalformedPolicyDocumentException(body.Error, context);
+      const exception = new MalformedPolicyDocumentException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MalformedPolicyDocumentExceptionRes");
+    var de_PackedPolicyTooLargeExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_PackedPolicyTooLargeException(body.Error, context);
+      const exception = new PackedPolicyTooLargeException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_PackedPolicyTooLargeExceptionRes");
+    var de_RegionDisabledExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = de_RegionDisabledException(body.Error, context);
+      const exception = new RegionDisabledException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_RegionDisabledExceptionRes");
+    var se_AssumeRoleRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b, _c, _d;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_TTK] != null) {
+        const memberEntries = se_tagKeyListType(input[_TTK], context);
+        if (((_c = input[_TTK]) == null ? void 0 : _c.length) === 0) {
+          entries.TransitiveTagKeys = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `TransitiveTagKeys.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_EI] != null) {
+        entries[_EI] = input[_EI];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      if (input[_SI] != null) {
+        entries[_SI] = input[_SI];
+      }
+      if (input[_PC] != null) {
+        const memberEntries = se_ProvidedContextsListType(input[_PC], context);
+        if (((_d = input[_PC]) == null ? void 0 : _d.length) === 0) {
+          entries.ProvidedContexts = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `ProvidedContexts.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_AssumeRoleRequest");
+    var se_AssumeRoleWithSAMLRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_PAr] != null) {
+        entries[_PAr] = input[_PAr];
+      }
+      if (input[_SAMLA] != null) {
+        entries[_SAMLA] = input[_SAMLA];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithSAMLRequest");
+    var se_AssumeRoleWithWebIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22;
+      const entries = {};
+      if (input[_RA] != null) {
+        entries[_RA] = input[_RA];
+      }
+      if (input[_RSN] != null) {
+        entries[_RSN] = input[_RSN];
+      }
+      if (input[_WIT] != null) {
+        entries[_WIT] = input[_WIT];
+      }
+      if (input[_PI] != null) {
+        entries[_PI] = input[_PI];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      return entries;
+    }, "se_AssumeRoleWithWebIdentityRequest");
+    var se_DecodeAuthorizationMessageRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_EM] != null) {
+        entries[_EM] = input[_EM];
+      }
+      return entries;
+    }, "se_DecodeAuthorizationMessageRequest");
+    var se_GetAccessKeyInfoRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_AKI] != null) {
+        entries[_AKI] = input[_AKI];
+      }
+      return entries;
+    }, "se_GetAccessKeyInfoRequest");
+    var se_GetCallerIdentityRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      return entries;
+    }, "se_GetCallerIdentityRequest");
+    var se_GetFederationTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      var _a22, _b;
+      const entries = {};
+      if (input[_N] != null) {
+        entries[_N] = input[_N];
+      }
+      if (input[_P] != null) {
+        entries[_P] = input[_P];
+      }
+      if (input[_PA] != null) {
+        const memberEntries = se_policyDescriptorListType(input[_PA], context);
+        if (((_a22 = input[_PA]) == null ? void 0 : _a22.length) === 0) {
+          entries.PolicyArns = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `PolicyArns.${key}`;
+          entries[loc] = value;
+        });
+      }
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_T] != null) {
+        const memberEntries = se_tagListType(input[_T], context);
+        if (((_b = input[_T]) == null ? void 0 : _b.length) === 0) {
+          entries.Tags = [];
+        }
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          const loc = `Tags.${key}`;
+          entries[loc] = value;
+        });
+      }
+      return entries;
+    }, "se_GetFederationTokenRequest");
+    var se_GetSessionTokenRequest = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_DS] != null) {
+        entries[_DS] = input[_DS];
+      }
+      if (input[_SN] != null) {
+        entries[_SN] = input[_SN];
+      }
+      if (input[_TC] != null) {
+        entries[_TC] = input[_TC];
+      }
+      return entries;
+    }, "se_GetSessionTokenRequest");
+    var se_policyDescriptorListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_PolicyDescriptorType(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_policyDescriptorListType");
+    var se_PolicyDescriptorType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_a7] != null) {
+        entries[_a7] = input[_a7];
+      }
+      return entries;
+    }, "se_PolicyDescriptorType");
+    var se_ProvidedContext = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_PAro] != null) {
+        entries[_PAro] = input[_PAro];
+      }
+      if (input[_CA] != null) {
+        entries[_CA] = input[_CA];
+      }
+      return entries;
+    }, "se_ProvidedContext");
+    var se_ProvidedContextsListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_ProvidedContext(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_ProvidedContextsListType");
+    var se_Tag = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      if (input[_K] != null) {
+        entries[_K] = input[_K];
+      }
+      if (input[_Va] != null) {
+        entries[_Va] = input[_Va];
+      }
+      return entries;
+    }, "se_Tag");
+    var se_tagKeyListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        entries[`member.${counter}`] = entry;
+        counter++;
+      }
+      return entries;
+    }, "se_tagKeyListType");
+    var se_tagListType = /* @__PURE__ */ __name2((input, context) => {
+      const entries = {};
+      let counter = 1;
+      for (const entry of input) {
+        if (entry === null) {
+          continue;
+        }
+        const memberEntries = se_Tag(entry, context);
+        Object.entries(memberEntries).forEach(([key, value]) => {
+          entries[`member.${counter}.${key}`] = value;
+        });
+        counter++;
+      }
+      return entries;
+    }, "se_tagListType");
+    var de_AssumedRoleUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_ARI] != null) {
+        contents[_ARI] = (0, import_smithy_client4.expectString)(output[_ARI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_AssumedRoleUser");
+    var de_AssumeRoleResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleResponse");
+    var de_AssumeRoleWithSAMLResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_S] != null) {
+        contents[_S] = (0, import_smithy_client4.expectString)(output[_S]);
+      }
+      if (output[_ST] != null) {
+        contents[_ST] = (0, import_smithy_client4.expectString)(output[_ST]);
+      }
+      if (output[_I] != null) {
+        contents[_I] = (0, import_smithy_client4.expectString)(output[_I]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_NQ] != null) {
+        contents[_NQ] = (0, import_smithy_client4.expectString)(output[_NQ]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithSAMLResponse");
+    var de_AssumeRoleWithWebIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_SFWIT] != null) {
+        contents[_SFWIT] = (0, import_smithy_client4.expectString)(output[_SFWIT]);
+      }
+      if (output[_ARU] != null) {
+        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      if (output[_Pr] != null) {
+        contents[_Pr] = (0, import_smithy_client4.expectString)(output[_Pr]);
+      }
+      if (output[_Au] != null) {
+        contents[_Au] = (0, import_smithy_client4.expectString)(output[_Au]);
+      }
+      if (output[_SI] != null) {
+        contents[_SI] = (0, import_smithy_client4.expectString)(output[_SI]);
+      }
+      return contents;
+    }, "de_AssumeRoleWithWebIdentityResponse");
+    var de_Credentials = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_AKI] != null) {
+        contents[_AKI] = (0, import_smithy_client4.expectString)(output[_AKI]);
+      }
+      if (output[_SAK] != null) {
+        contents[_SAK] = (0, import_smithy_client4.expectString)(output[_SAK]);
+      }
+      if (output[_STe] != null) {
+        contents[_STe] = (0, import_smithy_client4.expectString)(output[_STe]);
+      }
+      if (output[_E] != null) {
+        contents[_E] = (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseRfc3339DateTimeWithOffset)(output[_E]));
+      }
+      return contents;
+    }, "de_Credentials");
+    var de_DecodeAuthorizationMessageResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_DM] != null) {
+        contents[_DM] = (0, import_smithy_client4.expectString)(output[_DM]);
+      }
+      return contents;
+    }, "de_DecodeAuthorizationMessageResponse");
+    var de_ExpiredTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_ExpiredTokenException");
+    var de_FederatedUser = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_FUI] != null) {
+        contents[_FUI] = (0, import_smithy_client4.expectString)(output[_FUI]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_FederatedUser");
+    var de_GetAccessKeyInfoResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      return contents;
+    }, "de_GetAccessKeyInfoResponse");
+    var de_GetCallerIdentityResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_UI] != null) {
+        contents[_UI] = (0, import_smithy_client4.expectString)(output[_UI]);
+      }
+      if (output[_Ac] != null) {
+        contents[_Ac] = (0, import_smithy_client4.expectString)(output[_Ac]);
+      }
+      if (output[_Ar] != null) {
+        contents[_Ar] = (0, import_smithy_client4.expectString)(output[_Ar]);
+      }
+      return contents;
+    }, "de_GetCallerIdentityResponse");
+    var de_GetFederationTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      if (output[_FU] != null) {
+        contents[_FU] = de_FederatedUser(output[_FU], context);
+      }
+      if (output[_PPS] != null) {
+        contents[_PPS] = (0, import_smithy_client4.strictParseInt32)(output[_PPS]);
+      }
+      return contents;
+    }, "de_GetFederationTokenResponse");
+    var de_GetSessionTokenResponse = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_C] != null) {
+        contents[_C] = de_Credentials(output[_C], context);
+      }
+      return contents;
+    }, "de_GetSessionTokenResponse");
+    var de_IDPCommunicationErrorException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPCommunicationErrorException");
+    var de_IDPRejectedClaimException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_IDPRejectedClaimException");
+    var de_InvalidAuthorizationMessageException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidAuthorizationMessageException");
+    var de_InvalidIdentityTokenException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_InvalidIdentityTokenException");
+    var de_MalformedPolicyDocumentException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_MalformedPolicyDocumentException");
+    var de_PackedPolicyTooLargeException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_PackedPolicyTooLargeException");
+    var de_RegionDisabledException = /* @__PURE__ */ __name2((output, context) => {
+      const contents = {};
+      if (output[_m] != null) {
+        contents[_m] = (0, import_smithy_client4.expectString)(output[_m]);
+      }
+      return contents;
+    }, "de_RegionDisabledException");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(STSServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    var SHARED_HEADERS = {
+      "content-type": "application/x-www-form-urlencoded"
+    };
+    var _ = "2011-06-15";
+    var _A = "Action";
+    var _AKI = "AccessKeyId";
+    var _AR = "AssumeRole";
+    var _ARI = "AssumedRoleId";
+    var _ARU = "AssumedRoleUser";
+    var _ARWSAML = "AssumeRoleWithSAML";
+    var _ARWWI = "AssumeRoleWithWebIdentity";
+    var _Ac = "Account";
+    var _Ar = "Arn";
+    var _Au = "Audience";
+    var _C = "Credentials";
+    var _CA = "ContextAssertion";
+    var _DAM = "DecodeAuthorizationMessage";
+    var _DM = "DecodedMessage";
+    var _DS = "DurationSeconds";
+    var _E = "Expiration";
+    var _EI = "ExternalId";
+    var _EM = "EncodedMessage";
+    var _FU = "FederatedUser";
+    var _FUI = "FederatedUserId";
+    var _GAKI = "GetAccessKeyInfo";
+    var _GCI = "GetCallerIdentity";
+    var _GFT = "GetFederationToken";
+    var _GST = "GetSessionToken";
+    var _I = "Issuer";
+    var _K = "Key";
+    var _N = "Name";
+    var _NQ = "NameQualifier";
+    var _P = "Policy";
+    var _PA = "PolicyArns";
+    var _PAr = "PrincipalArn";
+    var _PAro = "ProviderArn";
+    var _PC = "ProvidedContexts";
+    var _PI = "ProviderId";
+    var _PPS = "PackedPolicySize";
+    var _Pr = "Provider";
+    var _RA = "RoleArn";
+    var _RSN = "RoleSessionName";
+    var _S = "Subject";
+    var _SAK = "SecretAccessKey";
+    var _SAMLA = "SAMLAssertion";
+    var _SFWIT = "SubjectFromWebIdentityToken";
+    var _SI = "SourceIdentity";
+    var _SN = "SerialNumber";
+    var _ST = "SubjectType";
+    var _STe = "SessionToken";
+    var _T = "Tags";
+    var _TC = "TokenCode";
+    var _TTK = "TransitiveTagKeys";
+    var _UI = "UserId";
+    var _V = "Version";
+    var _Va = "Value";
+    var _WIT = "WebIdentityToken";
+    var _a7 = "arn";
+    var _m = "message";
+    var buildFormUrlencodedString = /* @__PURE__ */ __name2((formEntries) => Object.entries(formEntries).map(([key, value]) => (0, import_smithy_client4.extendedEncodeURIComponent)(key) + "=" + (0, import_smithy_client4.extendedEncodeURIComponent)(value)).join("&"), "buildFormUrlencodedString");
+    var loadQueryErrorCode = /* @__PURE__ */ __name2((output, data) => {
+      var _a22;
+      if (((_a22 = data.Error) == null ? void 0 : _a22.Code) !== void 0) {
+        return data.Error.Code;
+      }
+      if (output.statusCode == 404) {
+        return "NotFound";
+      }
+    }, "loadQueryErrorCode");
+    var _AssumeRoleCommand = class _AssumeRoleCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRole", {}).n("STSClient", "AssumeRoleCommand").f(void 0, AssumeRoleResponseFilterSensitiveLog).ser(se_AssumeRoleCommand).de(de_AssumeRoleCommand).build() {
+    };
+    __name2(_AssumeRoleCommand, "AssumeRoleCommand");
+    var AssumeRoleCommand = _AssumeRoleCommand;
+    var import_EndpointParameters2 = require_EndpointParameters();
+    var _AssumeRoleWithSAMLCommand = class _AssumeRoleWithSAMLCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters2.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithSAML", {}).n("STSClient", "AssumeRoleWithSAMLCommand").f(AssumeRoleWithSAMLRequestFilterSensitiveLog, AssumeRoleWithSAMLResponseFilterSensitiveLog).ser(se_AssumeRoleWithSAMLCommand).de(de_AssumeRoleWithSAMLCommand).build() {
+    };
+    __name2(_AssumeRoleWithSAMLCommand, "AssumeRoleWithSAMLCommand");
+    var AssumeRoleWithSAMLCommand = _AssumeRoleWithSAMLCommand;
+    var import_EndpointParameters3 = require_EndpointParameters();
+    var _AssumeRoleWithWebIdentityCommand = class _AssumeRoleWithWebIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters3.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithWebIdentity", {}).n("STSClient", "AssumeRoleWithWebIdentityCommand").f(AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog).ser(se_AssumeRoleWithWebIdentityCommand).de(de_AssumeRoleWithWebIdentityCommand).build() {
+    };
+    __name2(_AssumeRoleWithWebIdentityCommand, "AssumeRoleWithWebIdentityCommand");
+    var AssumeRoleWithWebIdentityCommand = _AssumeRoleWithWebIdentityCommand;
+    var import_EndpointParameters4 = require_EndpointParameters();
+    var _DecodeAuthorizationMessageCommand = class _DecodeAuthorizationMessageCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters4.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "DecodeAuthorizationMessage", {}).n("STSClient", "DecodeAuthorizationMessageCommand").f(void 0, void 0).ser(se_DecodeAuthorizationMessageCommand).de(de_DecodeAuthorizationMessageCommand).build() {
+    };
+    __name2(_DecodeAuthorizationMessageCommand, "DecodeAuthorizationMessageCommand");
+    var DecodeAuthorizationMessageCommand = _DecodeAuthorizationMessageCommand;
+    var import_EndpointParameters5 = require_EndpointParameters();
+    var _GetAccessKeyInfoCommand = class _GetAccessKeyInfoCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters5.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetAccessKeyInfo", {}).n("STSClient", "GetAccessKeyInfoCommand").f(void 0, void 0).ser(se_GetAccessKeyInfoCommand).de(de_GetAccessKeyInfoCommand).build() {
+    };
+    __name2(_GetAccessKeyInfoCommand, "GetAccessKeyInfoCommand");
+    var GetAccessKeyInfoCommand = _GetAccessKeyInfoCommand;
+    var import_EndpointParameters6 = require_EndpointParameters();
+    var _GetCallerIdentityCommand = class _GetCallerIdentityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters6.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetCallerIdentity", {}).n("STSClient", "GetCallerIdentityCommand").f(void 0, void 0).ser(se_GetCallerIdentityCommand).de(de_GetCallerIdentityCommand).build() {
+    };
+    __name2(_GetCallerIdentityCommand, "GetCallerIdentityCommand");
+    var GetCallerIdentityCommand = _GetCallerIdentityCommand;
+    var import_EndpointParameters7 = require_EndpointParameters();
+    var _GetFederationTokenCommand = class _GetFederationTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters7.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetFederationToken", {}).n("STSClient", "GetFederationTokenCommand").f(void 0, GetFederationTokenResponseFilterSensitiveLog).ser(se_GetFederationTokenCommand).de(de_GetFederationTokenCommand).build() {
+    };
+    __name2(_GetFederationTokenCommand, "GetFederationTokenCommand");
+    var GetFederationTokenCommand = _GetFederationTokenCommand;
+    var import_EndpointParameters8 = require_EndpointParameters();
+    var _GetSessionTokenCommand = class _GetSessionTokenCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...import_EndpointParameters8.commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSSecurityTokenServiceV20110615", "GetSessionToken", {}).n("STSClient", "GetSessionTokenCommand").f(void 0, GetSessionTokenResponseFilterSensitiveLog).ser(se_GetSessionTokenCommand).de(de_GetSessionTokenCommand).build() {
+    };
+    __name2(_GetSessionTokenCommand, "GetSessionTokenCommand");
+    var GetSessionTokenCommand = _GetSessionTokenCommand;
+    var import_STSClient = require_STSClient();
+    var commands = {
+      AssumeRoleCommand,
+      AssumeRoleWithSAMLCommand,
+      AssumeRoleWithWebIdentityCommand,
+      DecodeAuthorizationMessageCommand,
+      GetAccessKeyInfoCommand,
+      GetCallerIdentityCommand,
+      GetFederationTokenCommand,
+      GetSessionTokenCommand
+    };
+    var _STS = class _STS extends import_STSClient.STSClient {
+    };
+    __name2(_STS, "STS");
+    var STS = _STS;
+    (0, import_smithy_client4.createAggregatedClient)(commands, STS);
+    var import_EndpointParameters9 = require_EndpointParameters();
+    var ASSUME_ROLE_DEFAULT_REGION = "us-east-1";
+    var getAccountIdFromAssumedRoleUser = /* @__PURE__ */ __name2((assumedRoleUser) => {
+      if (typeof (assumedRoleUser == null ? void 0 : assumedRoleUser.Arn) === "string") {
+        const arnComponents = assumedRoleUser.Arn.split(":");
+        if (arnComponents.length > 4 && arnComponents[4] !== "") {
+          return arnComponents[4];
+        }
+      }
+      return void 0;
+    }, "getAccountIdFromAssumedRoleUser");
+    var resolveRegion = /* @__PURE__ */ __name2(async (_region, _parentRegion, credentialProviderLogger) => {
+      var _a22;
+      const region = typeof _region === "function" ? await _region() : _region;
+      const parentRegion = typeof _parentRegion === "function" ? await _parentRegion() : _parentRegion;
+      (_a22 = credentialProviderLogger == null ? void 0 : credentialProviderLogger.debug) == null ? void 0 : _a22.call(
+        credentialProviderLogger,
+        "@aws-sdk/client-sts::resolveRegion",
+        "accepting first of:",
+        `${region} (provider)`,
+        `${parentRegion} (parent client)`,
+        `${ASSUME_ROLE_DEFAULT_REGION} (STS default)`
+      );
+      return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION;
+    }, "resolveRegion");
+    var getDefaultRoleAssumer = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      let closureSourceCreds;
+      return async (sourceCreds, params) => {
+        var _a22, _b, _c;
+        closureSourceCreds = sourceCreds;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            // A hack to make sts client uses the credential in current closure.
+            credentialDefaultProvider: () => async () => closureSourceCreds,
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity = /* @__PURE__ */ __name2((stsOptions, stsClientCtor) => {
+      let stsClient;
+      return async (params) => {
+        var _a22, _b, _c;
+        if (!stsClient) {
+          const {
+            logger = (_a22 = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _a22.logger,
+            region,
+            requestHandler = (_b = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _b.requestHandler,
+            credentialProviderLogger
+          } = stsOptions;
+          const resolvedRegion = await resolveRegion(
+            region,
+            (_c = stsOptions == null ? void 0 : stsOptions.parentClientConfig) == null ? void 0 : _c.region,
+            credentialProviderLogger
+          );
+          const isCompatibleRequestHandler = !isH2(requestHandler);
+          stsClient = new stsClientCtor({
+            region: resolvedRegion,
+            requestHandler: isCompatibleRequestHandler ? requestHandler : void 0,
+            logger
+          });
+        }
+        const { Credentials: Credentials2, AssumedRoleUser: AssumedRoleUser2 } = await stsClient.send(new AssumeRoleWithWebIdentityCommand(params));
+        if (!Credentials2 || !Credentials2.AccessKeyId || !Credentials2.SecretAccessKey) {
+          throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`);
+        }
+        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser2);
+        return {
+          accessKeyId: Credentials2.AccessKeyId,
+          secretAccessKey: Credentials2.SecretAccessKey,
+          sessionToken: Credentials2.SessionToken,
+          expiration: Credentials2.Expiration,
+          // TODO(credentialScope): access normally when shape is updated.
+          ...Credentials2.CredentialScope && { credentialScope: Credentials2.CredentialScope },
+          ...accountId && { accountId }
+        };
+      };
+    }, "getDefaultRoleAssumerWithWebIdentity");
+    var isH2 = /* @__PURE__ */ __name2((requestHandler) => {
+      var _a22;
+      return ((_a22 = requestHandler == null ? void 0 : requestHandler.metadata) == null ? void 0 : _a22.handlerProtocol) === "h2";
+    }, "isH2");
+    var import_STSClient2 = require_STSClient();
+    var getCustomizableStsClientCtor = /* @__PURE__ */ __name2((baseCtor, customizations) => {
+      var _a22;
+      if (!customizations)
+        return baseCtor;
+      else
+        return _a22 = class extends baseCtor {
+          constructor(config) {
+            super(config);
+            for (const customization of customizations) {
+              this.middlewareStack.use(customization);
+            }
+          }
+        }, __name2(_a22, "CustomizableSTSClient"), _a22;
+    }, "getCustomizableStsClientCtor");
+    var getDefaultRoleAssumer2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumer(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumer");
+    var getDefaultRoleAssumerWithWebIdentity2 = /* @__PURE__ */ __name2((stsOptions = {}, stsPlugins) => getDefaultRoleAssumerWithWebIdentity(stsOptions, getCustomizableStsClientCtor(import_STSClient2.STSClient, stsPlugins)), "getDefaultRoleAssumerWithWebIdentity");
+    var decorateDefaultCredentialProvider = /* @__PURE__ */ __name2((provider) => (input) => provider({
+      roleAssumer: getDefaultRoleAssumer2(input),
+      roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity2(input),
+      ...input
+    }), "decorateDefaultCredentialProvider");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js
+var require_dist_cjs49 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromProcess: () => fromProcess
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var import_child_process3 = require("child_process");
+    var import_util7 = require("util");
+    var getValidatedProcessCredentials = /* @__PURE__ */ __name2((profileName, data, profiles) => {
+      var _a7;
+      if (data.Version !== 1) {
+        throw Error(`Profile ${profileName} credential_process did not return Version 1.`);
+      }
+      if (data.AccessKeyId === void 0 || data.SecretAccessKey === void 0) {
+        throw Error(`Profile ${profileName} credential_process returned invalid credentials.`);
+      }
+      if (data.Expiration) {
+        const currentTime = /* @__PURE__ */ new Date();
+        const expireTime = new Date(data.Expiration);
+        if (expireTime < currentTime) {
+          throw Error(`Profile ${profileName} credential_process returned expired credentials.`);
+        }
+      }
+      let accountId = data.AccountId;
+      if (!accountId && ((_a7 = profiles == null ? void 0 : profiles[profileName]) == null ? void 0 : _a7.aws_account_id)) {
+        accountId = profiles[profileName].aws_account_id;
+      }
+      return {
+        accessKeyId: data.AccessKeyId,
+        secretAccessKey: data.SecretAccessKey,
+        ...data.SessionToken && { sessionToken: data.SessionToken },
+        ...data.Expiration && { expiration: new Date(data.Expiration) },
+        ...data.CredentialScope && { credentialScope: data.CredentialScope },
+        ...accountId && { accountId }
+      };
+    }, "getValidatedProcessCredentials");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, logger) => {
+      const profile = profiles[profileName];
+      if (profiles[profileName]) {
+        const credentialProcess = profile["credential_process"];
+        if (credentialProcess !== void 0) {
+          const execPromise = (0, import_util7.promisify)(import_child_process3.exec);
+          try {
+            const { stdout } = await execPromise(credentialProcess);
+            let data;
+            try {
+              data = JSON.parse(stdout.trim());
+            } catch {
+              throw Error(`Profile ${profileName} credential_process returned invalid JSON.`);
+            }
+            return getValidatedProcessCredentials(profileName, data, profiles);
+          } catch (error) {
+            throw new import_property_provider2.CredentialsProviderError(error.message, { logger });
+          }
+        } else {
+          throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} did not contain credential_process.`, { logger });
+        }
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(`Profile ${profileName} could not be found in shared credentials file.`, {
+          logger
+        });
+      }
+    }, "resolveProcessCredentials");
+    var fromProcess = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-process - fromProcess");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProcessCredentials((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init.logger);
+    }, "fromProcess");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js
+var require_fromWebToken = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
+      Object.defineProperty(o, "default", { enumerable: true, value: v });
+    }) : function(o, v) {
+      o["default"] = v;
+    });
+    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
+      if (mod && mod.__esModule) return mod;
+      var result = {};
+      if (mod != null) {
+        for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k);
+      }
+      __setModuleDefault2(result, mod);
+      return result;
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromWebToken = void 0;
+    var fromWebToken2 = (init) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromWebToken");
+      const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds } = init;
+      let { roleAssumerWithWebIdentity } = init;
+      if (!roleAssumerWithWebIdentity) {
+        const { getDefaultRoleAssumerWithWebIdentity } = await Promise.resolve().then(() => __importStar2(require_dist_cjs48()));
+        roleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity({
+          ...init.clientConfig,
+          credentialProviderLogger: init.logger,
+          parentClientConfig: init.parentClientConfig
+        }, init.clientPlugins);
+      }
+      return roleAssumerWithWebIdentity({
+        RoleArn: roleArn,
+        RoleSessionName: roleSessionName ?? `aws-sdk-js-session-${Date.now()}`,
+        WebIdentityToken: webIdentityToken,
+        ProviderId: providerId,
+        PolicyArns: policyArns,
+        Policy: policy,
+        DurationSeconds: durationSeconds
+      });
+    };
+    exports2.fromWebToken = fromWebToken2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js
+var require_fromTokenFile = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.fromTokenFile = void 0;
+    var property_provider_1 = require_dist_cjs24();
+    var fs_1 = require("fs");
+    var fromWebToken_1 = require_fromWebToken();
+    var ENV_TOKEN_FILE = "AWS_WEB_IDENTITY_TOKEN_FILE";
+    var ENV_ROLE_ARN = "AWS_ROLE_ARN";
+    var ENV_ROLE_SESSION_NAME = "AWS_ROLE_SESSION_NAME";
+    var fromTokenFile2 = (init = {}) => async () => {
+      init.logger?.debug("@aws-sdk/credential-provider-web-identity - fromTokenFile");
+      const webIdentityTokenFile = init?.webIdentityTokenFile ?? process.env[ENV_TOKEN_FILE];
+      const roleArn = init?.roleArn ?? process.env[ENV_ROLE_ARN];
+      const roleSessionName = init?.roleSessionName ?? process.env[ENV_ROLE_SESSION_NAME];
+      if (!webIdentityTokenFile || !roleArn) {
+        throw new property_provider_1.CredentialsProviderError("Web identity configuration not specified", {
+          logger: init.logger
+        });
+      }
+      return (0, fromWebToken_1.fromWebToken)({
+        ...init,
+        webIdentityToken: (0, fs_1.readFileSync)(webIdentityTokenFile, { encoding: "ascii" }),
+        roleArn,
+        roleSessionName
+      })();
+    };
+    exports2.fromTokenFile = fromTokenFile2;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js
+var require_dist_cjs50 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __reExport2 = (target, mod, secondTarget) => (__copyProps2(target, mod, "default"), secondTarget && __copyProps2(secondTarget, mod, "default"));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    module2.exports = __toCommonJS2(src_exports);
+    __reExport2(src_exports, require_fromTokenFile(), module2.exports);
+    __reExport2(src_exports, require_fromWebToken(), module2.exports);
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js
+var require_dist_cjs51 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      fromIni: () => fromIni
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var resolveCredentialSource = /* @__PURE__ */ __name2((credentialSource, profileName, logger) => {
+      const sourceProvidersMap = {
+        EcsContainer: async (options) => {
+          const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+          const { fromContainerMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer");
+          return (0, import_property_provider2.chain)(fromHttp(options ?? {}), fromContainerMetadata(options));
+        },
+        Ec2InstanceMetadata: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata");
+          const { fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+          return fromInstanceMetadata(options);
+        },
+        Environment: async (options) => {
+          logger == null ? void 0 : logger.debug("@aws-sdk/credential-provider-ini - credential_source is Environment");
+          const { fromEnv } = await Promise.resolve().then(() => __toESM2(require_dist_cjs36()));
+          return fromEnv(options);
+        }
+      };
+      if (credentialSource in sourceProvidersMap) {
+        return sourceProvidersMap[credentialSource];
+      } else {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Unsupported credential source in profile ${profileName}. Got ${credentialSource}, expected EcsContainer or Ec2InstanceMetadata or Environment.`,
+          { logger }
+        );
+      }
+    }, "resolveCredentialSource");
+    var isAssumeRoleProfile = /* @__PURE__ */ __name2((arg, { profile = "default", logger } = {}) => {
+      return Boolean(arg) && typeof arg === "object" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 && ["undefined", "string"].indexOf(typeof arg.external_id) > -1 && ["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 && (isAssumeRoleWithSourceProfile(arg, { profile, logger }) || isCredentialSourceProfile(arg, { profile, logger }));
+    }, "isAssumeRoleProfile");
+    var isAssumeRoleWithSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withSourceProfile = typeof arg.source_profile === "string" && typeof arg.credential_source === "undefined";
+      if (withSourceProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isAssumeRoleWithSourceProfile source_profile=${arg.source_profile}`);
+      }
+      return withSourceProfile;
+    }, "isAssumeRoleWithSourceProfile");
+    var isCredentialSourceProfile = /* @__PURE__ */ __name2((arg, { profile, logger }) => {
+      var _a7;
+      const withProviderProfile = typeof arg.credential_source === "string" && typeof arg.source_profile === "undefined";
+      if (withProviderProfile) {
+        (_a7 = logger == null ? void 0 : logger.debug) == null ? void 0 : _a7.call(logger, `    ${profile} isCredentialSourceProfile credential_source=${arg.credential_source}`);
+      }
+      return withProviderProfile;
+    }, "isCredentialSourceProfile");
+    var resolveAssumeRoleCredentials = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      var _a7, _b;
+      (_a7 = options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)");
+      const data = profiles[profileName];
+      if (!options.roleAssumer) {
+        const { getDefaultRoleAssumer } = await Promise.resolve().then(() => __toESM2(require_dist_cjs48()));
+        options.roleAssumer = getDefaultRoleAssumer(
+          {
+            ...options.clientConfig,
+            credentialProviderLogger: options.logger,
+            parentClientConfig: options == null ? void 0 : options.parentClientConfig
+          },
+          options.clientPlugins
+        );
+      }
+      const { source_profile } = data;
+      if (source_profile && source_profile in visitedProfiles) {
+        throw new import_property_provider2.CredentialsProviderError(
+          `Detected a cycle attempting to resolve credentials for profile ${(0, import_shared_ini_file_loader.getProfileName)(options)}. Profiles visited: ` + Object.keys(visitedProfiles).join(", "),
+          { logger: options.logger }
+        );
+      }
+      (_b = options.logger) == null ? void 0 : _b.debug(
+        `@aws-sdk/credential-provider-ini - finding credential resolver using ${source_profile ? `source_profile=[${source_profile}]` : `profile=[${profileName}]`}`
+      );
+      const sourceCredsProvider = source_profile ? resolveProfileData(
+        source_profile,
+        {
+          ...profiles,
+          [source_profile]: {
+            ...profiles[source_profile],
+            // This assigns the role_arn of the "root" profile
+            // to the credential_source profile so this recursive call knows
+            // what role to assume.
+            role_arn: data.role_arn ?? profiles[source_profile].role_arn
+          }
+        },
+        options,
+        {
+          ...visitedProfiles,
+          [source_profile]: true
+        }
+      ) : (await resolveCredentialSource(data.credential_source, profileName, options.logger)(options))();
+      const params = {
+        RoleArn: data.role_arn,
+        RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`,
+        ExternalId: data.external_id,
+        DurationSeconds: parseInt(data.duration_seconds || "3600", 10)
+      };
+      const { mfa_serial } = data;
+      if (mfa_serial) {
+        if (!options.mfaCodeProvider) {
+          throw new import_property_provider2.CredentialsProviderError(
+            `Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`,
+            { logger: options.logger, tryNextLink: false }
+          );
+        }
+        params.SerialNumber = mfa_serial;
+        params.TokenCode = await options.mfaCodeProvider(mfa_serial);
+      }
+      const sourceCreds = await sourceCredsProvider;
+      return options.roleAssumer(sourceCreds, params);
+    }, "resolveAssumeRoleCredentials");
+    var isProcessProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string", "isProcessProfile");
+    var resolveProcessCredentials = /* @__PURE__ */ __name2(async (options, profile) => Promise.resolve().then(() => __toESM2(require_dist_cjs49())).then(
+      ({ fromProcess }) => fromProcess({
+        ...options,
+        profile
+      })()
+    ), "resolveProcessCredentials");
+    var resolveSsoCredentials = /* @__PURE__ */ __name2(async (profile, options = {}) => {
+      const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+      return fromSSO({
+        profile,
+        logger: options.logger
+      })();
+    }, "resolveSsoCredentials");
+    var isSsoProfile = /* @__PURE__ */ __name2((arg) => arg && (typeof arg.sso_start_url === "string" || typeof arg.sso_account_id === "string" || typeof arg.sso_session === "string" || typeof arg.sso_region === "string" || typeof arg.sso_role_name === "string"), "isSsoProfile");
+    var isStaticCredsProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.aws_access_key_id === "string" && typeof arg.aws_secret_access_key === "string" && ["undefined", "string"].indexOf(typeof arg.aws_session_token) > -1 && ["undefined", "string"].indexOf(typeof arg.aws_account_id) > -1, "isStaticCredsProfile");
+    var resolveStaticCredentials = /* @__PURE__ */ __name2((profile, options) => {
+      var _a7;
+      (_a7 = options == null ? void 0 : options.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - resolveStaticCredentials");
+      return Promise.resolve({
+        accessKeyId: profile.aws_access_key_id,
+        secretAccessKey: profile.aws_secret_access_key,
+        sessionToken: profile.aws_session_token,
+        ...profile.aws_credential_scope && { credentialScope: profile.aws_credential_scope },
+        ...profile.aws_account_id && { accountId: profile.aws_account_id }
+      });
+    }, "resolveStaticCredentials");
+    var isWebIdentityProfile = /* @__PURE__ */ __name2((arg) => Boolean(arg) && typeof arg === "object" && typeof arg.web_identity_token_file === "string" && typeof arg.role_arn === "string" && ["undefined", "string"].indexOf(typeof arg.role_session_name) > -1, "isWebIdentityProfile");
+    var resolveWebIdentityCredentials = /* @__PURE__ */ __name2(async (profile, options) => Promise.resolve().then(() => __toESM2(require_dist_cjs50())).then(
+      ({ fromTokenFile: fromTokenFile2 }) => fromTokenFile2({
+        webIdentityTokenFile: profile.web_identity_token_file,
+        roleArn: profile.role_arn,
+        roleSessionName: profile.role_session_name,
+        roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,
+        logger: options.logger,
+        parentClientConfig: options.parentClientConfig
+      })()
+    ), "resolveWebIdentityCredentials");
+    var resolveProfileData = /* @__PURE__ */ __name2(async (profileName, profiles, options, visitedProfiles = {}) => {
+      const data = profiles[profileName];
+      if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {
+        return resolveAssumeRoleCredentials(profileName, profiles, options, visitedProfiles);
+      }
+      if (isStaticCredsProfile(data)) {
+        return resolveStaticCredentials(data, options);
+      }
+      if (isWebIdentityProfile(data)) {
+        return resolveWebIdentityCredentials(data, options);
+      }
+      if (isProcessProfile(data)) {
+        return resolveProcessCredentials(options, profileName);
+      }
+      if (isSsoProfile(data)) {
+        return await resolveSsoCredentials(profileName, options);
+      }
+      throw new import_property_provider2.CredentialsProviderError(
+        `Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`,
+        { logger: options.logger }
+      );
+    }, "resolveProfileData");
+    var fromIni = /* @__PURE__ */ __name2((init = {}) => async () => {
+      var _a7;
+      (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-ini - fromIni");
+      const profiles = await (0, import_shared_ini_file_loader.parseKnownFiles)(init);
+      return resolveProfileData((0, import_shared_ini_file_loader.getProfileName)(init), profiles, init);
+    }, "fromIni");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js
+var require_dist_cjs52 = __commonJS({
+  "../../../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __create2 = Object.create;
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __getProtoOf2 = Object.getPrototypeOf;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
+      // If the importer is in node compatibility mode or this is not an ESM
+      // file that has been converted to a CommonJS file using a Babel-
+      // compatible transform (i.e. "__esModule" has not been set), then set
+      // "default" to the CommonJS "module.exports" for node compatibility.
+      isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
+      mod
+    ));
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      credentialsTreatedAsExpired: () => credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh: () => credentialsWillNeedRefresh,
+      defaultProvider: () => defaultProvider
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_credential_provider_env = require_dist_cjs36();
+    var import_shared_ini_file_loader = require_dist_cjs25();
+    var import_property_provider2 = require_dist_cjs24();
+    var ENV_IMDS_DISABLED = "AWS_EC2_METADATA_DISABLED";
+    var remoteProvider = /* @__PURE__ */ __name2(async (init) => {
+      var _a7, _b;
+      const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await Promise.resolve().then(() => __toESM2(require_dist_cjs37()));
+      if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {
+        (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");
+        const { fromHttp } = await Promise.resolve().then(() => __toESM2(require_dist_cjs38()));
+        return (0, import_property_provider2.chain)(fromHttp(init), fromContainerMetadata(init));
+      }
+      if (process.env[ENV_IMDS_DISABLED]) {
+        return async () => {
+          throw new import_property_provider2.CredentialsProviderError("EC2 Instance Metadata Service access disabled", { logger: init.logger });
+        };
+      }
+      (_b = init.logger) == null ? void 0 : _b.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata");
+      return fromInstanceMetadata(init);
+    }, "remoteProvider");
+    var multipleCredentialSourceWarningEmitted = false;
+    var defaultProvider = /* @__PURE__ */ __name2((init = {}) => (0, import_property_provider2.memoize)(
+      (0, import_property_provider2.chain)(
+        async () => {
+          var _a7, _b, _c, _d;
+          const profile = init.profile ?? process.env[import_shared_ini_file_loader.ENV_PROFILE];
+          if (profile) {
+            const envStaticCredentialsAreSet = process.env[import_credential_provider_env.ENV_KEY] && process.env[import_credential_provider_env.ENV_SECRET];
+            if (envStaticCredentialsAreSet) {
+              if (!multipleCredentialSourceWarningEmitted) {
+                const warnFn = ((_a7 = init.logger) == null ? void 0 : _a7.warn) && ((_c = (_b = init.logger) == null ? void 0 : _b.constructor) == null ? void 0 : _c.name) !== "NoOpLogger" ? init.logger.warn : console.warn;
+                warnFn(
+                  `@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:
+    Multiple credential sources detected: 
+    Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.
+    This SDK will proceed with the AWS_PROFILE value.
+    
+    However, a future version may change this behavior to prefer the ENV static credentials.
+    Please ensure that your environment only sets either the AWS_PROFILE or the
+    AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
+`
+                );
+                multipleCredentialSourceWarningEmitted = true;
+              }
+            }
+            throw new import_property_provider2.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.", {
+              logger: init.logger,
+              tryNextLink: true
+            });
+          }
+          (_d = init.logger) == null ? void 0 : _d.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv");
+          return (0, import_credential_provider_env.fromEnv)(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");
+          const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;
+          if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {
+            throw new import_property_provider2.CredentialsProviderError(
+              "Skipping SSO provider in default chain (inputs do not include SSO fields).",
+              { logger: init.logger }
+            );
+          }
+          const { fromSSO } = await Promise.resolve().then(() => __toESM2(require_dist_cjs47()));
+          return fromSSO(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");
+          const { fromIni } = await Promise.resolve().then(() => __toESM2(require_dist_cjs51()));
+          return fromIni(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");
+          const { fromProcess } = await Promise.resolve().then(() => __toESM2(require_dist_cjs49()));
+          return fromProcess(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");
+          const { fromTokenFile: fromTokenFile2 } = await Promise.resolve().then(() => __toESM2(require_dist_cjs50()));
+          return fromTokenFile2(init)();
+        },
+        async () => {
+          var _a7;
+          (_a7 = init.logger) == null ? void 0 : _a7.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider");
+          return (await remoteProvider(init))();
+        },
+        async () => {
+          throw new import_property_provider2.CredentialsProviderError("Could not load credentials from any providers", {
+            tryNextLink: false,
+            logger: init.logger
+          });
+        }
+      ),
+      credentialsTreatedAsExpired,
+      credentialsWillNeedRefresh
+    ), "defaultProvider");
+    var credentialsWillNeedRefresh = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0, "credentialsWillNeedRefresh");
+    var credentialsTreatedAsExpired = /* @__PURE__ */ __name2((credentials) => (credentials == null ? void 0 : credentials.expiration) !== void 0 && credentials.expiration.getTime() - Date.now() < 3e5, "credentialsTreatedAsExpired");
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js
+var require_ruleset4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/ruleset.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.ruleSet = void 0;
+    var t = "required";
+    var u = "fn";
+    var v = "argv";
+    var w = "ref";
+    var a = true;
+    var b = "isSet";
+    var c = "booleanEquals";
+    var d = "error";
+    var e = "endpoint";
+    var f = "tree";
+    var g = "PartitionResult";
+    var h = { [t]: false, "type": "String" };
+    var i = { [t]: true, "default": false, "type": "Boolean" };
+    var j = { [w]: "Endpoint" };
+    var k = { [u]: c, [v]: [{ [w]: "UseFIPS" }, true] };
+    var l = { [u]: c, [v]: [{ [w]: "UseDualStack" }, true] };
+    var m = {};
+    var n = { [w]: "Region" };
+    var o = { [u]: "getAttr", [v]: [{ [w]: g }, "supportsFIPS"] };
+    var p = { [u]: c, [v]: [true, { [u]: "getAttr", [v]: [{ [w]: g }, "supportsDualStack"] }] };
+    var q = [k];
+    var r = [l];
+    var s = [n];
+    var _data = { version: "1.0", parameters: { Region: h, UseDualStack: i, UseFIPS: i, Endpoint: h }, rules: [{ conditions: [{ [u]: b, [v]: [j] }], rules: [{ conditions: q, error: "Invalid Configuration: FIPS and custom endpoint are not supported", type: d }, { conditions: r, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", type: d }, { endpoint: { url: j, properties: m, headers: m }, type: e }], type: f }, { conditions: [{ [u]: b, [v]: s }], rules: [{ conditions: [{ [u]: "aws.partition", [v]: s, assign: g }], rules: [{ conditions: [k, l], rules: [{ conditions: [{ [u]: c, [v]: [a, o] }, p], rules: [{ endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS and DualStack are enabled, but this partition does not support one or both", type: d }], type: f }, { conditions: q, rules: [{ conditions: [{ [u]: c, [v]: [o, a] }], rules: [{ conditions: [{ [u]: "stringEquals", [v]: [n, "us-gov-west-1"] }], endpoint: { url: "https://states.us-gov-west-1.amazonaws.com", properties: m, headers: m }, type: e }, { endpoint: { url: "https://states-fips.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "FIPS is enabled but this partition does not support FIPS", type: d }], type: f }, { conditions: r, rules: [{ conditions: [p], rules: [{ endpoint: { url: "https://states.{Region}.{PartitionResult#dualStackDnsSuffix}", properties: m, headers: m }, type: e }], type: f }, { error: "DualStack is enabled but this partition does not support DualStack", type: d }], type: f }, { endpoint: { url: "https://states.{Region}.{PartitionResult#dnsSuffix}", properties: m, headers: m }, type: e }], type: f }], type: f }, { error: "Invalid Configuration: Missing Region", type: d }] };
+    exports2.ruleSet = _data;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js
+var require_endpointResolver4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/endpoint/endpointResolver.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.defaultEndpointResolver = void 0;
+    var util_endpoints_1 = require_dist_cjs7();
+    var util_endpoints_2 = require_dist_cjs6();
+    var ruleset_1 = require_ruleset4();
+    var defaultEndpointResolver = (endpointParams, context = {}) => {
+      return (0, util_endpoints_2.resolveEndpoint)(ruleset_1.ruleSet, {
+        endpointParams,
+        logger: context.logger
+      });
+    };
+    exports2.defaultEndpointResolver = defaultEndpointResolver;
+    util_endpoints_2.customEndpointFunctions.aws = util_endpoints_1.awsEndpointFunctions;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js
+var require_runtimeConfig_shared4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.shared.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var smithy_client_1 = require_dist_cjs33();
+    var url_parser_1 = require_dist_cjs28();
+    var util_base64_1 = require_dist_cjs16();
+    var util_utf8_1 = require_dist_cjs15();
+    var httpAuthSchemeProvider_1 = require_httpAuthSchemeProvider();
+    var endpointResolver_1 = require_endpointResolver4();
+    var getRuntimeConfig = (config) => {
+      return {
+        apiVersion: "2016-11-23",
+        base64Decoder: config?.base64Decoder ?? util_base64_1.fromBase64,
+        base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
+        disableHostPrefix: config?.disableHostPrefix ?? false,
+        endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
+        extensions: config?.extensions ?? [],
+        httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? httpAuthSchemeProvider_1.defaultSFNHttpAuthSchemeProvider,
+        httpAuthSchemes: config?.httpAuthSchemes ?? [
+          {
+            schemeId: "aws.auth#sigv4",
+            identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"),
+            signer: new core_1.AwsSdkSigV4Signer()
+          }
+        ],
+        logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
+        serviceId: config?.serviceId ?? "SFN",
+        urlParser: config?.urlParser ?? url_parser_1.parseUrl,
+        utf8Decoder: config?.utf8Decoder ?? util_utf8_1.fromUtf8,
+        utf8Encoder: config?.utf8Encoder ?? util_utf8_1.toUtf8
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js
+var require_runtimeConfig4 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/runtimeConfig.js"(exports2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.getRuntimeConfig = void 0;
+    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
+    var package_json_1 = tslib_1.__importDefault(require_package());
+    var core_1 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var credential_provider_node_1 = require_dist_cjs52();
+    var util_user_agent_node_1 = require_dist_cjs39();
+    var config_resolver_1 = require_dist_cjs11();
+    var hash_node_1 = require_dist_cjs40();
+    var middleware_retry_1 = require_dist_cjs34();
+    var node_config_provider_1 = require_dist_cjs26();
+    var node_http_handler_1 = require_dist_cjs19();
+    var util_body_length_node_1 = require_dist_cjs41();
+    var util_retry_1 = require_dist_cjs31();
+    var runtimeConfig_shared_1 = require_runtimeConfig_shared4();
+    var smithy_client_1 = require_dist_cjs33();
+    var util_defaults_mode_node_1 = require_dist_cjs42();
+    var smithy_client_2 = require_dist_cjs33();
+    var getRuntimeConfig = (config) => {
+      (0, smithy_client_2.emitWarningIfUnsupportedVersion)(process.version);
+      const defaultsMode = (0, util_defaults_mode_node_1.resolveDefaultsModeConfig)(config);
+      const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
+      const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
+      (0, core_1.emitWarningIfUnsupportedVersion)(process.version);
+      return {
+        ...clientSharedValues,
+        ...config,
+        runtime: "node",
+        defaultsMode,
+        bodyLengthChecker: config?.bodyLengthChecker ?? util_body_length_node_1.calculateBodyLength,
+        credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
+        defaultUserAgentProvider: config?.defaultUserAgentProvider ?? (0, util_user_agent_node_1.defaultUserAgent)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
+        maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
+        region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
+        requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
+        retryMode: config?.retryMode ?? (0, node_config_provider_1.loadConfig)({
+          ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
+          default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE
+        }),
+        sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
+        streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
+        useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
+        useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)
+      };
+    };
+    exports2.getRuntimeConfig = getRuntimeConfig;
+  }
+});
+
+// ../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js
+var require_dist_cjs53 = __commonJS({
+  "../../../node_modules/@aws-sdk/client-sfn/dist-cjs/index.js"(exports2, module2) {
+    "use strict";
+    var __defProp2 = Object.defineProperty;
+    var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
+    var __getOwnPropNames2 = Object.getOwnPropertyNames;
+    var __hasOwnProp2 = Object.prototype.hasOwnProperty;
+    var __name2 = (target, value) => __defProp2(target, "name", { value, configurable: true });
+    var __export2 = (target, all) => {
+      for (var name in all)
+        __defProp2(target, name, { get: all[name], enumerable: true });
+    };
+    var __copyProps2 = (to, from, except, desc) => {
+      if (from && typeof from === "object" || typeof from === "function") {
+        for (let key of __getOwnPropNames2(from))
+          if (!__hasOwnProp2.call(to, key) && key !== except)
+            __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
+      }
+      return to;
+    };
+    var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
+    var src_exports = {};
+    __export2(src_exports, {
+      ActivityAlreadyExists: () => ActivityAlreadyExists,
+      ActivityDoesNotExist: () => ActivityDoesNotExist,
+      ActivityFailedEventDetailsFilterSensitiveLog: () => ActivityFailedEventDetailsFilterSensitiveLog,
+      ActivityLimitExceeded: () => ActivityLimitExceeded,
+      ActivityScheduleFailedEventDetailsFilterSensitiveLog: () => ActivityScheduleFailedEventDetailsFilterSensitiveLog,
+      ActivityScheduledEventDetailsFilterSensitiveLog: () => ActivityScheduledEventDetailsFilterSensitiveLog,
+      ActivitySucceededEventDetailsFilterSensitiveLog: () => ActivitySucceededEventDetailsFilterSensitiveLog,
+      ActivityTimedOutEventDetailsFilterSensitiveLog: () => ActivityTimedOutEventDetailsFilterSensitiveLog,
+      ActivityWorkerLimitExceeded: () => ActivityWorkerLimitExceeded,
+      ConflictException: () => ConflictException,
+      CreateActivityCommand: () => CreateActivityCommand,
+      CreateStateMachineAliasCommand: () => CreateStateMachineAliasCommand,
+      CreateStateMachineAliasInputFilterSensitiveLog: () => CreateStateMachineAliasInputFilterSensitiveLog,
+      CreateStateMachineCommand: () => CreateStateMachineCommand,
+      CreateStateMachineInputFilterSensitiveLog: () => CreateStateMachineInputFilterSensitiveLog,
+      DeleteActivityCommand: () => DeleteActivityCommand,
+      DeleteStateMachineAliasCommand: () => DeleteStateMachineAliasCommand,
+      DeleteStateMachineCommand: () => DeleteStateMachineCommand,
+      DeleteStateMachineVersionCommand: () => DeleteStateMachineVersionCommand,
+      DescribeActivityCommand: () => DescribeActivityCommand,
+      DescribeExecutionCommand: () => DescribeExecutionCommand,
+      DescribeExecutionOutputFilterSensitiveLog: () => DescribeExecutionOutputFilterSensitiveLog,
+      DescribeMapRunCommand: () => DescribeMapRunCommand,
+      DescribeStateMachineAliasCommand: () => DescribeStateMachineAliasCommand,
+      DescribeStateMachineAliasOutputFilterSensitiveLog: () => DescribeStateMachineAliasOutputFilterSensitiveLog,
+      DescribeStateMachineCommand: () => DescribeStateMachineCommand,
+      DescribeStateMachineForExecutionCommand: () => DescribeStateMachineForExecutionCommand,
+      DescribeStateMachineForExecutionOutputFilterSensitiveLog: () => DescribeStateMachineForExecutionOutputFilterSensitiveLog,
+      DescribeStateMachineOutputFilterSensitiveLog: () => DescribeStateMachineOutputFilterSensitiveLog,
+      EncryptionType: () => EncryptionType,
+      ExecutionAbortedEventDetailsFilterSensitiveLog: () => ExecutionAbortedEventDetailsFilterSensitiveLog,
+      ExecutionAlreadyExists: () => ExecutionAlreadyExists,
+      ExecutionDoesNotExist: () => ExecutionDoesNotExist,
+      ExecutionFailedEventDetailsFilterSensitiveLog: () => ExecutionFailedEventDetailsFilterSensitiveLog,
+      ExecutionLimitExceeded: () => ExecutionLimitExceeded,
+      ExecutionNotRedrivable: () => ExecutionNotRedrivable,
+      ExecutionRedriveFilter: () => ExecutionRedriveFilter,
+      ExecutionRedriveStatus: () => ExecutionRedriveStatus,
+      ExecutionStartedEventDetailsFilterSensitiveLog: () => ExecutionStartedEventDetailsFilterSensitiveLog,
+      ExecutionStatus: () => ExecutionStatus,
+      ExecutionSucceededEventDetailsFilterSensitiveLog: () => ExecutionSucceededEventDetailsFilterSensitiveLog,
+      ExecutionTimedOutEventDetailsFilterSensitiveLog: () => ExecutionTimedOutEventDetailsFilterSensitiveLog,
+      GetActivityTaskCommand: () => GetActivityTaskCommand,
+      GetActivityTaskOutputFilterSensitiveLog: () => GetActivityTaskOutputFilterSensitiveLog,
+      GetExecutionHistoryCommand: () => GetExecutionHistoryCommand,
+      GetExecutionHistoryOutputFilterSensitiveLog: () => GetExecutionHistoryOutputFilterSensitiveLog,
+      HistoryEventFilterSensitiveLog: () => HistoryEventFilterSensitiveLog,
+      HistoryEventType: () => HistoryEventType,
+      IncludedData: () => IncludedData,
+      InspectionDataFilterSensitiveLog: () => InspectionDataFilterSensitiveLog,
+      InspectionLevel: () => InspectionLevel,
+      InvalidArn: () => InvalidArn,
+      InvalidDefinition: () => InvalidDefinition,
+      InvalidEncryptionConfiguration: () => InvalidEncryptionConfiguration,
+      InvalidExecutionInput: () => InvalidExecutionInput,
+      InvalidLoggingConfiguration: () => InvalidLoggingConfiguration,
+      InvalidName: () => InvalidName,
+      InvalidOutput: () => InvalidOutput,
+      InvalidToken: () => InvalidToken,
+      InvalidTracingConfiguration: () => InvalidTracingConfiguration,
+      KmsAccessDeniedException: () => KmsAccessDeniedException,
+      KmsInvalidStateException: () => KmsInvalidStateException,
+      KmsKeyState: () => KmsKeyState,
+      KmsThrottlingException: () => KmsThrottlingException,
+      LambdaFunctionFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionScheduledEventDetailsFilterSensitiveLog: () => LambdaFunctionScheduledEventDetailsFilterSensitiveLog,
+      LambdaFunctionStartFailedEventDetailsFilterSensitiveLog: () => LambdaFunctionStartFailedEventDetailsFilterSensitiveLog,
+      LambdaFunctionSucceededEventDetailsFilterSensitiveLog: () => LambdaFunctionSucceededEventDetailsFilterSensitiveLog,
+      LambdaFunctionTimedOutEventDetailsFilterSensitiveLog: () => LambdaFunctionTimedOutEventDetailsFilterSensitiveLog,
+      ListActivitiesCommand: () => ListActivitiesCommand,
+      ListExecutionsCommand: () => ListExecutionsCommand,
+      ListMapRunsCommand: () => ListMapRunsCommand,
+      ListStateMachineAliasesCommand: () => ListStateMachineAliasesCommand,
+      ListStateMachineVersionsCommand: () => ListStateMachineVersionsCommand,
+      ListStateMachinesCommand: () => ListStateMachinesCommand,
+      ListTagsForResourceCommand: () => ListTagsForResourceCommand,
+      LogLevel: () => LogLevel,
+      MapRunFailedEventDetailsFilterSensitiveLog: () => MapRunFailedEventDetailsFilterSensitiveLog,
+      MapRunStatus: () => MapRunStatus,
+      MissingRequiredParameter: () => MissingRequiredParameter,
+      PublishStateMachineVersionCommand: () => PublishStateMachineVersionCommand,
+      PublishStateMachineVersionInputFilterSensitiveLog: () => PublishStateMachineVersionInputFilterSensitiveLog,
+      RedriveExecutionCommand: () => RedriveExecutionCommand,
+      ResourceNotFound: () => ResourceNotFound,
+      SFN: () => SFN2,
+      SFNClient: () => SFNClient,
+      SFNServiceException: () => SFNServiceException,
+      SendTaskFailureCommand: () => SendTaskFailureCommand,
+      SendTaskFailureInputFilterSensitiveLog: () => SendTaskFailureInputFilterSensitiveLog,
+      SendTaskHeartbeatCommand: () => SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand: () => SendTaskSuccessCommand,
+      SendTaskSuccessInputFilterSensitiveLog: () => SendTaskSuccessInputFilterSensitiveLog,
+      ServiceQuotaExceededException: () => ServiceQuotaExceededException,
+      StartExecutionCommand: () => StartExecutionCommand,
+      StartExecutionInputFilterSensitiveLog: () => StartExecutionInputFilterSensitiveLog,
+      StartSyncExecutionCommand: () => StartSyncExecutionCommand,
+      StartSyncExecutionInputFilterSensitiveLog: () => StartSyncExecutionInputFilterSensitiveLog,
+      StartSyncExecutionOutputFilterSensitiveLog: () => StartSyncExecutionOutputFilterSensitiveLog,
+      StateEnteredEventDetailsFilterSensitiveLog: () => StateEnteredEventDetailsFilterSensitiveLog,
+      StateExitedEventDetailsFilterSensitiveLog: () => StateExitedEventDetailsFilterSensitiveLog,
+      StateMachineAlreadyExists: () => StateMachineAlreadyExists,
+      StateMachineDeleting: () => StateMachineDeleting,
+      StateMachineDoesNotExist: () => StateMachineDoesNotExist,
+      StateMachineLimitExceeded: () => StateMachineLimitExceeded,
+      StateMachineStatus: () => StateMachineStatus,
+      StateMachineType: () => StateMachineType,
+      StateMachineTypeNotSupported: () => StateMachineTypeNotSupported,
+      StopExecutionCommand: () => StopExecutionCommand,
+      StopExecutionInputFilterSensitiveLog: () => StopExecutionInputFilterSensitiveLog,
+      SyncExecutionStatus: () => SyncExecutionStatus,
+      TagResourceCommand: () => TagResourceCommand,
+      TaskDoesNotExist: () => TaskDoesNotExist,
+      TaskFailedEventDetailsFilterSensitiveLog: () => TaskFailedEventDetailsFilterSensitiveLog,
+      TaskScheduledEventDetailsFilterSensitiveLog: () => TaskScheduledEventDetailsFilterSensitiveLog,
+      TaskStartFailedEventDetailsFilterSensitiveLog: () => TaskStartFailedEventDetailsFilterSensitiveLog,
+      TaskSubmitFailedEventDetailsFilterSensitiveLog: () => TaskSubmitFailedEventDetailsFilterSensitiveLog,
+      TaskSubmittedEventDetailsFilterSensitiveLog: () => TaskSubmittedEventDetailsFilterSensitiveLog,
+      TaskSucceededEventDetailsFilterSensitiveLog: () => TaskSucceededEventDetailsFilterSensitiveLog,
+      TaskTimedOut: () => TaskTimedOut,
+      TaskTimedOutEventDetailsFilterSensitiveLog: () => TaskTimedOutEventDetailsFilterSensitiveLog,
+      TestExecutionStatus: () => TestExecutionStatus,
+      TestStateCommand: () => TestStateCommand,
+      TestStateInputFilterSensitiveLog: () => TestStateInputFilterSensitiveLog,
+      TestStateOutputFilterSensitiveLog: () => TestStateOutputFilterSensitiveLog,
+      TooManyTags: () => TooManyTags,
+      UntagResourceCommand: () => UntagResourceCommand,
+      UpdateMapRunCommand: () => UpdateMapRunCommand,
+      UpdateStateMachineAliasCommand: () => UpdateStateMachineAliasCommand,
+      UpdateStateMachineAliasInputFilterSensitiveLog: () => UpdateStateMachineAliasInputFilterSensitiveLog,
+      UpdateStateMachineCommand: () => UpdateStateMachineCommand,
+      UpdateStateMachineInputFilterSensitiveLog: () => UpdateStateMachineInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionCommand: () => ValidateStateMachineDefinitionCommand,
+      ValidateStateMachineDefinitionInputFilterSensitiveLog: () => ValidateStateMachineDefinitionInputFilterSensitiveLog,
+      ValidateStateMachineDefinitionResultCode: () => ValidateStateMachineDefinitionResultCode,
+      ValidateStateMachineDefinitionSeverity: () => ValidateStateMachineDefinitionSeverity,
+      ValidationException: () => ValidationException,
+      ValidationExceptionReason: () => ValidationExceptionReason,
+      __Client: () => import_smithy_client4.Client,
+      paginateGetExecutionHistory: () => paginateGetExecutionHistory,
+      paginateListActivities: () => paginateListActivities,
+      paginateListExecutions: () => paginateListExecutions,
+      paginateListMapRuns: () => paginateListMapRuns,
+      paginateListStateMachines: () => paginateListStateMachines
+    });
+    module2.exports = __toCommonJS2(src_exports);
+    var import_middleware_host_header = require_dist_cjs3();
+    var import_middleware_logger = require_dist_cjs4();
+    var import_middleware_recursion_detection = require_dist_cjs5();
+    var import_middleware_user_agent = require_dist_cjs8();
+    var import_config_resolver = require_dist_cjs11();
+    var import_core4 = (init_dist_es(), __toCommonJS(dist_es_exports));
+    var import_middleware_content_length = require_dist_cjs23();
+    var import_middleware_endpoint = require_dist_cjs29();
+    var import_middleware_retry = require_dist_cjs34();
+    var import_httpAuthSchemeProvider = require_httpAuthSchemeProvider();
+    var resolveClientEndpointParameters = /* @__PURE__ */ __name2((options) => {
+      return {
+        ...options,
+        useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+        useFipsEndpoint: options.useFipsEndpoint ?? false,
+        defaultSigningName: "states"
+      };
+    }, "resolveClientEndpointParameters");
+    var commonParams = {
+      UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+      Endpoint: { type: "builtInParams", name: "endpoint" },
+      Region: { type: "builtInParams", name: "region" },
+      UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }
+    };
+    var import_runtimeConfig = require_runtimeConfig4();
+    var import_region_config_resolver = require_dist_cjs43();
+    var import_protocol_http8 = require_dist_cjs2();
+    var import_smithy_client4 = require_dist_cjs33();
+    var getHttpAuthExtensionConfiguration = /* @__PURE__ */ __name2((runtimeConfig) => {
+      const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
+      let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
+      let _credentials = runtimeConfig.credentials;
+      return {
+        setHttpAuthScheme(httpAuthScheme) {
+          const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
+          if (index === -1) {
+            _httpAuthSchemes.push(httpAuthScheme);
+          } else {
+            _httpAuthSchemes.splice(index, 1, httpAuthScheme);
+          }
+        },
+        httpAuthSchemes() {
+          return _httpAuthSchemes;
+        },
+        setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
+          _httpAuthSchemeProvider = httpAuthSchemeProvider;
+        },
+        httpAuthSchemeProvider() {
+          return _httpAuthSchemeProvider;
+        },
+        setCredentials(credentials) {
+          _credentials = credentials;
+        },
+        credentials() {
+          return _credentials;
+        }
+      };
+    }, "getHttpAuthExtensionConfiguration");
+    var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name2((config) => {
+      return {
+        httpAuthSchemes: config.httpAuthSchemes(),
+        httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
+        credentials: config.credentials()
+      };
+    }, "resolveHttpAuthRuntimeConfig");
+    var asPartial = /* @__PURE__ */ __name2((t) => t, "asPartial");
+    var resolveRuntimeExtensions = /* @__PURE__ */ __name2((runtimeConfig, extensions) => {
+      const extensionConfiguration = {
+        ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_smithy_client4.getDefaultExtensionConfiguration)(runtimeConfig)),
+        ...asPartial((0, import_protocol_http8.getHttpHandlerExtensionConfiguration)(runtimeConfig)),
+        ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig))
+      };
+      extensions.forEach((extension) => extension.configure(extensionConfiguration));
+      return {
+        ...runtimeConfig,
+        ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration),
+        ...(0, import_smithy_client4.resolveDefaultRuntimeConfig)(extensionConfiguration),
+        ...(0, import_protocol_http8.resolveHttpHandlerRuntimeConfig)(extensionConfiguration),
+        ...resolveHttpAuthRuntimeConfig(extensionConfiguration)
+      };
+    }, "resolveRuntimeExtensions");
+    var _SFNClient = class _SFNClient extends import_smithy_client4.Client {
+      constructor(...[configuration]) {
+        const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
+        const _config_1 = resolveClientEndpointParameters(_config_0);
+        const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
+        const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
+        const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
+        const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
+        const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
+        const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6);
+        const _config_8 = resolveRuntimeExtensions(_config_7, (configuration == null ? void 0 : configuration.extensions) || []);
+        super(_config_8);
+        this.config = _config_8;
+        this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_host_header.getHostHeaderPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_logger.getLoggerPlugin)(this.config));
+        this.middlewareStack.use((0, import_middleware_recursion_detection.getRecursionDetectionPlugin)(this.config));
+        this.middlewareStack.use(
+          (0, import_core4.getHttpAuthSchemeEndpointRuleSetPlugin)(this.config, {
+            httpAuthSchemeParametersProvider: import_httpAuthSchemeProvider.defaultSFNHttpAuthSchemeParametersProvider,
+            identityProviderConfigProvider: async (config) => new import_core4.DefaultIdentityProviderConfig({
+              "aws.auth#sigv4": config.credentials
+            })
+          })
+        );
+        this.middlewareStack.use((0, import_core4.getHttpSigningPlugin)(this.config));
+      }
+      /**
+       * Destroy underlying resources, like sockets. It's usually not necessary to do this.
+       * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed.
+       * Otherwise, sockets might stay open for quite a long time before the server terminates them.
+       */
+      destroy() {
+        super.destroy();
+      }
+    };
+    __name2(_SFNClient, "SFNClient");
+    var SFNClient = _SFNClient;
+    var import_middleware_serde2 = require_dist_cjs12();
+    var import_core22 = (init_dist_es2(), __toCommonJS(dist_es_exports2));
+    var import_uuid = (init_esm_node(), __toCommonJS(esm_node_exports));
+    var _SFNServiceException = class _SFNServiceException2 extends import_smithy_client4.ServiceException {
+      /**
+       * @internal
+       */
+      constructor(options) {
+        super(options);
+        Object.setPrototypeOf(this, _SFNServiceException2.prototype);
+      }
+    };
+    __name2(_SFNServiceException, "SFNServiceException");
+    var SFNServiceException = _SFNServiceException;
+    var _ActivityAlreadyExists = class _ActivityAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ActivityAlreadyExists, "ActivityAlreadyExists");
+    var ActivityAlreadyExists = _ActivityAlreadyExists;
+    var _ActivityDoesNotExist = class _ActivityDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ActivityDoesNotExist, "ActivityDoesNotExist");
+    var ActivityDoesNotExist = _ActivityDoesNotExist;
+    var _ActivityLimitExceeded = class _ActivityLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityLimitExceeded, "ActivityLimitExceeded");
+    var ActivityLimitExceeded = _ActivityLimitExceeded;
+    var _ActivityWorkerLimitExceeded = class _ActivityWorkerLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ActivityWorkerLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ActivityWorkerLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ActivityWorkerLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ActivityWorkerLimitExceeded, "ActivityWorkerLimitExceeded");
+    var ActivityWorkerLimitExceeded = _ActivityWorkerLimitExceeded;
+    var EncryptionType = {
+      AWS_OWNED_KEY: "AWS_OWNED_KEY",
+      CUSTOMER_MANAGED_KMS_KEY: "CUSTOMER_MANAGED_KMS_KEY"
+    };
+    var _InvalidEncryptionConfiguration = class _InvalidEncryptionConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidEncryptionConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidEncryptionConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidEncryptionConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidEncryptionConfiguration, "InvalidEncryptionConfiguration");
+    var InvalidEncryptionConfiguration = _InvalidEncryptionConfiguration;
+    var _InvalidName = class _InvalidName2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidName",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidName";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidName2.prototype);
+      }
+    };
+    __name2(_InvalidName, "InvalidName");
+    var InvalidName = _InvalidName;
+    var _KmsAccessDeniedException = class _KmsAccessDeniedException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsAccessDeniedException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsAccessDeniedException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsAccessDeniedException2.prototype);
+      }
+    };
+    __name2(_KmsAccessDeniedException, "KmsAccessDeniedException");
+    var KmsAccessDeniedException = _KmsAccessDeniedException;
+    var _KmsThrottlingException = class _KmsThrottlingException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsThrottlingException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsThrottlingException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsThrottlingException2.prototype);
+      }
+    };
+    __name2(_KmsThrottlingException, "KmsThrottlingException");
+    var KmsThrottlingException = _KmsThrottlingException;
+    var _TooManyTags = class _TooManyTags2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TooManyTags",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TooManyTags";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TooManyTags2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_TooManyTags, "TooManyTags");
+    var TooManyTags = _TooManyTags;
+    var _ConflictException = class _ConflictException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ConflictException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ConflictException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ConflictException2.prototype);
+      }
+    };
+    __name2(_ConflictException, "ConflictException");
+    var ConflictException = _ConflictException;
+    var LogLevel = {
+      ALL: "ALL",
+      ERROR: "ERROR",
+      FATAL: "FATAL",
+      OFF: "OFF"
+    };
+    var StateMachineType = {
+      EXPRESS: "EXPRESS",
+      STANDARD: "STANDARD"
+    };
+    var _InvalidArn = class _InvalidArn2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidArn",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidArn";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidArn2.prototype);
+      }
+    };
+    __name2(_InvalidArn, "InvalidArn");
+    var InvalidArn = _InvalidArn;
+    var _InvalidDefinition = class _InvalidDefinition2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidDefinition",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidDefinition";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidDefinition2.prototype);
+      }
+    };
+    __name2(_InvalidDefinition, "InvalidDefinition");
+    var InvalidDefinition = _InvalidDefinition;
+    var _InvalidLoggingConfiguration = class _InvalidLoggingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidLoggingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidLoggingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidLoggingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidLoggingConfiguration, "InvalidLoggingConfiguration");
+    var InvalidLoggingConfiguration = _InvalidLoggingConfiguration;
+    var _InvalidTracingConfiguration = class _InvalidTracingConfiguration2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidTracingConfiguration",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidTracingConfiguration";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidTracingConfiguration2.prototype);
+      }
+    };
+    __name2(_InvalidTracingConfiguration, "InvalidTracingConfiguration");
+    var InvalidTracingConfiguration = _InvalidTracingConfiguration;
+    var _StateMachineAlreadyExists = class _StateMachineAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineAlreadyExists2.prototype);
+      }
+    };
+    __name2(_StateMachineAlreadyExists, "StateMachineAlreadyExists");
+    var StateMachineAlreadyExists = _StateMachineAlreadyExists;
+    var _StateMachineDeleting = class _StateMachineDeleting2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDeleting",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDeleting";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDeleting2.prototype);
+      }
+    };
+    __name2(_StateMachineDeleting, "StateMachineDeleting");
+    var StateMachineDeleting = _StateMachineDeleting;
+    var _StateMachineLimitExceeded = class _StateMachineLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineLimitExceeded2.prototype);
+      }
+    };
+    __name2(_StateMachineLimitExceeded, "StateMachineLimitExceeded");
+    var StateMachineLimitExceeded = _StateMachineLimitExceeded;
+    var _StateMachineTypeNotSupported = class _StateMachineTypeNotSupported2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineTypeNotSupported",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineTypeNotSupported";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineTypeNotSupported2.prototype);
+      }
+    };
+    __name2(_StateMachineTypeNotSupported, "StateMachineTypeNotSupported");
+    var StateMachineTypeNotSupported = _StateMachineTypeNotSupported;
+    var ValidationExceptionReason = {
+      API_DOES_NOT_SUPPORT_LABELED_ARNS: "API_DOES_NOT_SUPPORT_LABELED_ARNS",
+      CANNOT_UPDATE_COMPLETED_MAP_RUN: "CANNOT_UPDATE_COMPLETED_MAP_RUN",
+      INVALID_ROUTING_CONFIGURATION: "INVALID_ROUTING_CONFIGURATION",
+      MISSING_REQUIRED_PARAMETER: "MISSING_REQUIRED_PARAMETER"
+    };
+    var _ValidationException = class _ValidationException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ValidationException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ValidationException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ValidationException2.prototype);
+        this.reason = opts.reason;
+      }
+    };
+    __name2(_ValidationException, "ValidationException");
+    var ValidationException = _ValidationException;
+    var _ResourceNotFound = class _ResourceNotFound2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ResourceNotFound",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ResourceNotFound";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ResourceNotFound2.prototype);
+        this.resourceName = opts.resourceName;
+      }
+    };
+    __name2(_ResourceNotFound, "ResourceNotFound");
+    var ResourceNotFound = _ResourceNotFound;
+    var _ServiceQuotaExceededException = class _ServiceQuotaExceededException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ServiceQuotaExceededException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ServiceQuotaExceededException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ServiceQuotaExceededException2.prototype);
+      }
+    };
+    __name2(_ServiceQuotaExceededException, "ServiceQuotaExceededException");
+    var ServiceQuotaExceededException = _ServiceQuotaExceededException;
+    var IncludedData = {
+      ALL_DATA: "ALL_DATA",
+      METADATA_ONLY: "METADATA_ONLY"
+    };
+    var ExecutionRedriveStatus = {
+      NOT_REDRIVABLE: "NOT_REDRIVABLE",
+      REDRIVABLE: "REDRIVABLE",
+      REDRIVABLE_BY_MAP_RUN: "REDRIVABLE_BY_MAP_RUN"
+    };
+    var ExecutionStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      PENDING_REDRIVE: "PENDING_REDRIVE",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var _ExecutionDoesNotExist = class _ExecutionDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionDoesNotExist2.prototype);
+      }
+    };
+    __name2(_ExecutionDoesNotExist, "ExecutionDoesNotExist");
+    var ExecutionDoesNotExist = _ExecutionDoesNotExist;
+    var KmsKeyState = {
+      CREATING: "CREATING",
+      DISABLED: "DISABLED",
+      PENDING_DELETION: "PENDING_DELETION",
+      PENDING_IMPORT: "PENDING_IMPORT",
+      UNAVAILABLE: "UNAVAILABLE"
+    };
+    var _KmsInvalidStateException = class _KmsInvalidStateException2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "KmsInvalidStateException",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "KmsInvalidStateException";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _KmsInvalidStateException2.prototype);
+        this.kmsKeyState = opts.kmsKeyState;
+      }
+    };
+    __name2(_KmsInvalidStateException, "KmsInvalidStateException");
+    var KmsInvalidStateException = _KmsInvalidStateException;
+    var MapRunStatus = {
+      ABORTED: "ABORTED",
+      FAILED: "FAILED",
+      RUNNING: "RUNNING",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var StateMachineStatus = {
+      ACTIVE: "ACTIVE",
+      DELETING: "DELETING"
+    };
+    var _StateMachineDoesNotExist = class _StateMachineDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "StateMachineDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "StateMachineDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _StateMachineDoesNotExist2.prototype);
+      }
+    };
+    __name2(_StateMachineDoesNotExist, "StateMachineDoesNotExist");
+    var StateMachineDoesNotExist = _StateMachineDoesNotExist;
+    var HistoryEventType = {
+      ActivityFailed: "ActivityFailed",
+      ActivityScheduleFailed: "ActivityScheduleFailed",
+      ActivityScheduled: "ActivityScheduled",
+      ActivityStarted: "ActivityStarted",
+      ActivitySucceeded: "ActivitySucceeded",
+      ActivityTimedOut: "ActivityTimedOut",
+      ChoiceStateEntered: "ChoiceStateEntered",
+      ChoiceStateExited: "ChoiceStateExited",
+      ExecutionAborted: "ExecutionAborted",
+      ExecutionFailed: "ExecutionFailed",
+      ExecutionRedriven: "ExecutionRedriven",
+      ExecutionStarted: "ExecutionStarted",
+      ExecutionSucceeded: "ExecutionSucceeded",
+      ExecutionTimedOut: "ExecutionTimedOut",
+      FailStateEntered: "FailStateEntered",
+      LambdaFunctionFailed: "LambdaFunctionFailed",
+      LambdaFunctionScheduleFailed: "LambdaFunctionScheduleFailed",
+      LambdaFunctionScheduled: "LambdaFunctionScheduled",
+      LambdaFunctionStartFailed: "LambdaFunctionStartFailed",
+      LambdaFunctionStarted: "LambdaFunctionStarted",
+      LambdaFunctionSucceeded: "LambdaFunctionSucceeded",
+      LambdaFunctionTimedOut: "LambdaFunctionTimedOut",
+      MapIterationAborted: "MapIterationAborted",
+      MapIterationFailed: "MapIterationFailed",
+      MapIterationStarted: "MapIterationStarted",
+      MapIterationSucceeded: "MapIterationSucceeded",
+      MapRunAborted: "MapRunAborted",
+      MapRunFailed: "MapRunFailed",
+      MapRunRedriven: "MapRunRedriven",
+      MapRunStarted: "MapRunStarted",
+      MapRunSucceeded: "MapRunSucceeded",
+      MapStateAborted: "MapStateAborted",
+      MapStateEntered: "MapStateEntered",
+      MapStateExited: "MapStateExited",
+      MapStateFailed: "MapStateFailed",
+      MapStateStarted: "MapStateStarted",
+      MapStateSucceeded: "MapStateSucceeded",
+      ParallelStateAborted: "ParallelStateAborted",
+      ParallelStateEntered: "ParallelStateEntered",
+      ParallelStateExited: "ParallelStateExited",
+      ParallelStateFailed: "ParallelStateFailed",
+      ParallelStateStarted: "ParallelStateStarted",
+      ParallelStateSucceeded: "ParallelStateSucceeded",
+      PassStateEntered: "PassStateEntered",
+      PassStateExited: "PassStateExited",
+      SucceedStateEntered: "SucceedStateEntered",
+      SucceedStateExited: "SucceedStateExited",
+      TaskFailed: "TaskFailed",
+      TaskScheduled: "TaskScheduled",
+      TaskStartFailed: "TaskStartFailed",
+      TaskStarted: "TaskStarted",
+      TaskStateAborted: "TaskStateAborted",
+      TaskStateEntered: "TaskStateEntered",
+      TaskStateExited: "TaskStateExited",
+      TaskSubmitFailed: "TaskSubmitFailed",
+      TaskSubmitted: "TaskSubmitted",
+      TaskSucceeded: "TaskSucceeded",
+      TaskTimedOut: "TaskTimedOut",
+      WaitStateAborted: "WaitStateAborted",
+      WaitStateEntered: "WaitStateEntered",
+      WaitStateExited: "WaitStateExited"
+    };
+    var _InvalidToken = class _InvalidToken2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidToken",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidToken";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidToken2.prototype);
+      }
+    };
+    __name2(_InvalidToken, "InvalidToken");
+    var InvalidToken = _InvalidToken;
+    var ExecutionRedriveFilter = {
+      NOT_REDRIVEN: "NOT_REDRIVEN",
+      REDRIVEN: "REDRIVEN"
+    };
+    var _ExecutionLimitExceeded = class _ExecutionLimitExceeded2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionLimitExceeded",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionLimitExceeded";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionLimitExceeded2.prototype);
+      }
+    };
+    __name2(_ExecutionLimitExceeded, "ExecutionLimitExceeded");
+    var ExecutionLimitExceeded = _ExecutionLimitExceeded;
+    var _ExecutionNotRedrivable = class _ExecutionNotRedrivable2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionNotRedrivable",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionNotRedrivable";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionNotRedrivable2.prototype);
+      }
+    };
+    __name2(_ExecutionNotRedrivable, "ExecutionNotRedrivable");
+    var ExecutionNotRedrivable = _ExecutionNotRedrivable;
+    var _TaskDoesNotExist = class _TaskDoesNotExist2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskDoesNotExist",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskDoesNotExist";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskDoesNotExist2.prototype);
+      }
+    };
+    __name2(_TaskDoesNotExist, "TaskDoesNotExist");
+    var TaskDoesNotExist = _TaskDoesNotExist;
+    var _TaskTimedOut = class _TaskTimedOut2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "TaskTimedOut",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "TaskTimedOut";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _TaskTimedOut2.prototype);
+      }
+    };
+    __name2(_TaskTimedOut, "TaskTimedOut");
+    var TaskTimedOut = _TaskTimedOut;
+    var _InvalidOutput = class _InvalidOutput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidOutput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidOutput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidOutput2.prototype);
+      }
+    };
+    __name2(_InvalidOutput, "InvalidOutput");
+    var InvalidOutput = _InvalidOutput;
+    var _ExecutionAlreadyExists = class _ExecutionAlreadyExists2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "ExecutionAlreadyExists",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "ExecutionAlreadyExists";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _ExecutionAlreadyExists2.prototype);
+      }
+    };
+    __name2(_ExecutionAlreadyExists, "ExecutionAlreadyExists");
+    var ExecutionAlreadyExists = _ExecutionAlreadyExists;
+    var _InvalidExecutionInput = class _InvalidExecutionInput2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "InvalidExecutionInput",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "InvalidExecutionInput";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _InvalidExecutionInput2.prototype);
+      }
+    };
+    __name2(_InvalidExecutionInput, "InvalidExecutionInput");
+    var InvalidExecutionInput = _InvalidExecutionInput;
+    var SyncExecutionStatus = {
+      FAILED: "FAILED",
+      SUCCEEDED: "SUCCEEDED",
+      TIMED_OUT: "TIMED_OUT"
+    };
+    var InspectionLevel = {
+      DEBUG: "DEBUG",
+      INFO: "INFO",
+      TRACE: "TRACE"
+    };
+    var TestExecutionStatus = {
+      CAUGHT_ERROR: "CAUGHT_ERROR",
+      FAILED: "FAILED",
+      RETRIABLE: "RETRIABLE",
+      SUCCEEDED: "SUCCEEDED"
+    };
+    var _MissingRequiredParameter = class _MissingRequiredParameter2 extends SFNServiceException {
+      /**
+       * @internal
+       */
+      constructor(opts) {
+        super({
+          name: "MissingRequiredParameter",
+          $fault: "client",
+          ...opts
+        });
+        this.name = "MissingRequiredParameter";
+        this.$fault = "client";
+        Object.setPrototypeOf(this, _MissingRequiredParameter2.prototype);
+      }
+    };
+    __name2(_MissingRequiredParameter, "MissingRequiredParameter");
+    var MissingRequiredParameter = _MissingRequiredParameter;
+    var ValidateStateMachineDefinitionSeverity = {
+      ERROR: "ERROR"
+    };
+    var ValidateStateMachineDefinitionResultCode = {
+      FAIL: "FAIL",
+      OK: "OK"
+    };
+    var ActivityFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityFailedEventDetailsFilterSensitiveLog");
+    var ActivityScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduledEventDetailsFilterSensitiveLog");
+    var ActivityScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityScheduleFailedEventDetailsFilterSensitiveLog");
+    var ActivitySucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivitySucceededEventDetailsFilterSensitiveLog");
+    var ActivityTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ActivityTimedOutEventDetailsFilterSensitiveLog");
+    var CreateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineInputFilterSensitiveLog");
+    var CreateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "CreateStateMachineAliasInputFilterSensitiveLog");
+    var DescribeExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.redriveStatusReason && { redriveStatusReason: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeExecutionOutputFilterSensitiveLog");
+    var DescribeStateMachineOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineOutputFilterSensitiveLog");
+    var DescribeStateMachineAliasOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineAliasOutputFilterSensitiveLog");
+    var DescribeStateMachineForExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "DescribeStateMachineForExecutionOutputFilterSensitiveLog");
+    var GetActivityTaskOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "GetActivityTaskOutputFilterSensitiveLog");
+    var ExecutionAbortedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionAbortedEventDetailsFilterSensitiveLog");
+    var ExecutionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionFailedEventDetailsFilterSensitiveLog");
+    var ExecutionStartedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionStartedEventDetailsFilterSensitiveLog");
+    var ExecutionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionSucceededEventDetailsFilterSensitiveLog");
+    var ExecutionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "ExecutionTimedOutEventDetailsFilterSensitiveLog");
+    var LambdaFunctionFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduledEventDetailsFilterSensitiveLog");
+    var LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionStartFailedEventDetailsFilterSensitiveLog");
+    var LambdaFunctionSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionSucceededEventDetailsFilterSensitiveLog");
+    var LambdaFunctionTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "LambdaFunctionTimedOutEventDetailsFilterSensitiveLog");
+    var MapRunFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "MapRunFailedEventDetailsFilterSensitiveLog");
+    var StateEnteredEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateEnteredEventDetailsFilterSensitiveLog");
+    var StateExitedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StateExitedEventDetailsFilterSensitiveLog");
+    var TaskFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskFailedEventDetailsFilterSensitiveLog");
+    var TaskScheduledEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.parameters && { parameters: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskScheduledEventDetailsFilterSensitiveLog");
+    var TaskStartFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskStartFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmitFailedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmitFailedEventDetailsFilterSensitiveLog");
+    var TaskSubmittedEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSubmittedEventDetailsFilterSensitiveLog");
+    var TaskSucceededEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskSucceededEventDetailsFilterSensitiveLog");
+    var TaskTimedOutEventDetailsFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "TaskTimedOutEventDetailsFilterSensitiveLog");
+    var HistoryEventFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.activityFailedEventDetails && {
+        activityFailedEventDetails: ActivityFailedEventDetailsFilterSensitiveLog(obj.activityFailedEventDetails)
+      },
+      ...obj.activityScheduleFailedEventDetails && {
+        activityScheduleFailedEventDetails: ActivityScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.activityScheduleFailedEventDetails
+        )
+      },
+      ...obj.activityScheduledEventDetails && {
+        activityScheduledEventDetails: ActivityScheduledEventDetailsFilterSensitiveLog(obj.activityScheduledEventDetails)
+      },
+      ...obj.activitySucceededEventDetails && {
+        activitySucceededEventDetails: ActivitySucceededEventDetailsFilterSensitiveLog(obj.activitySucceededEventDetails)
+      },
+      ...obj.activityTimedOutEventDetails && {
+        activityTimedOutEventDetails: ActivityTimedOutEventDetailsFilterSensitiveLog(obj.activityTimedOutEventDetails)
+      },
+      ...obj.taskFailedEventDetails && {
+        taskFailedEventDetails: TaskFailedEventDetailsFilterSensitiveLog(obj.taskFailedEventDetails)
+      },
+      ...obj.taskScheduledEventDetails && {
+        taskScheduledEventDetails: TaskScheduledEventDetailsFilterSensitiveLog(obj.taskScheduledEventDetails)
+      },
+      ...obj.taskStartFailedEventDetails && {
+        taskStartFailedEventDetails: TaskStartFailedEventDetailsFilterSensitiveLog(obj.taskStartFailedEventDetails)
+      },
+      ...obj.taskSubmitFailedEventDetails && {
+        taskSubmitFailedEventDetails: TaskSubmitFailedEventDetailsFilterSensitiveLog(obj.taskSubmitFailedEventDetails)
+      },
+      ...obj.taskSubmittedEventDetails && {
+        taskSubmittedEventDetails: TaskSubmittedEventDetailsFilterSensitiveLog(obj.taskSubmittedEventDetails)
+      },
+      ...obj.taskSucceededEventDetails && {
+        taskSucceededEventDetails: TaskSucceededEventDetailsFilterSensitiveLog(obj.taskSucceededEventDetails)
+      },
+      ...obj.taskTimedOutEventDetails && {
+        taskTimedOutEventDetails: TaskTimedOutEventDetailsFilterSensitiveLog(obj.taskTimedOutEventDetails)
+      },
+      ...obj.executionFailedEventDetails && {
+        executionFailedEventDetails: ExecutionFailedEventDetailsFilterSensitiveLog(obj.executionFailedEventDetails)
+      },
+      ...obj.executionStartedEventDetails && {
+        executionStartedEventDetails: ExecutionStartedEventDetailsFilterSensitiveLog(obj.executionStartedEventDetails)
+      },
+      ...obj.executionSucceededEventDetails && {
+        executionSucceededEventDetails: ExecutionSucceededEventDetailsFilterSensitiveLog(
+          obj.executionSucceededEventDetails
+        )
+      },
+      ...obj.executionAbortedEventDetails && {
+        executionAbortedEventDetails: ExecutionAbortedEventDetailsFilterSensitiveLog(obj.executionAbortedEventDetails)
+      },
+      ...obj.executionTimedOutEventDetails && {
+        executionTimedOutEventDetails: ExecutionTimedOutEventDetailsFilterSensitiveLog(obj.executionTimedOutEventDetails)
+      },
+      ...obj.lambdaFunctionFailedEventDetails && {
+        lambdaFunctionFailedEventDetails: LambdaFunctionFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduleFailedEventDetails && {
+        lambdaFunctionScheduleFailedEventDetails: LambdaFunctionScheduleFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduleFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionScheduledEventDetails && {
+        lambdaFunctionScheduledEventDetails: LambdaFunctionScheduledEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionScheduledEventDetails
+        )
+      },
+      ...obj.lambdaFunctionStartFailedEventDetails && {
+        lambdaFunctionStartFailedEventDetails: LambdaFunctionStartFailedEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionStartFailedEventDetails
+        )
+      },
+      ...obj.lambdaFunctionSucceededEventDetails && {
+        lambdaFunctionSucceededEventDetails: LambdaFunctionSucceededEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionSucceededEventDetails
+        )
+      },
+      ...obj.lambdaFunctionTimedOutEventDetails && {
+        lambdaFunctionTimedOutEventDetails: LambdaFunctionTimedOutEventDetailsFilterSensitiveLog(
+          obj.lambdaFunctionTimedOutEventDetails
+        )
+      },
+      ...obj.stateEnteredEventDetails && {
+        stateEnteredEventDetails: StateEnteredEventDetailsFilterSensitiveLog(obj.stateEnteredEventDetails)
+      },
+      ...obj.stateExitedEventDetails && {
+        stateExitedEventDetails: StateExitedEventDetailsFilterSensitiveLog(obj.stateExitedEventDetails)
+      },
+      ...obj.mapRunFailedEventDetails && {
+        mapRunFailedEventDetails: MapRunFailedEventDetailsFilterSensitiveLog(obj.mapRunFailedEventDetails)
+      }
+    }), "HistoryEventFilterSensitiveLog");
+    var GetExecutionHistoryOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.events && { events: obj.events.map((item) => HistoryEventFilterSensitiveLog(item)) }
+    }), "GetExecutionHistoryOutputFilterSensitiveLog");
+    var PublishStateMachineVersionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "PublishStateMachineVersionInputFilterSensitiveLog");
+    var SendTaskFailureInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskFailureInputFilterSensitiveLog");
+    var SendTaskSuccessInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "SendTaskSuccessInputFilterSensitiveLog");
+    var StartExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionInputFilterSensitiveLog");
+    var StartSyncExecutionOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING }
+    }), "StartSyncExecutionOutputFilterSensitiveLog");
+    var StopExecutionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING }
+    }), "StopExecutionInputFilterSensitiveLog");
+    var TestStateInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateInputFilterSensitiveLog");
+    var InspectionDataFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.input && { input: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterInputPath && { afterInputPath: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterParameters && { afterParameters: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.result && { result: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultSelector && { afterResultSelector: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.afterResultPath && { afterResultPath: import_smithy_client4.SENSITIVE_STRING }
+    }), "InspectionDataFilterSensitiveLog");
+    var TestStateOutputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.output && { output: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.error && { error: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.cause && { cause: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.inspectionData && { inspectionData: import_smithy_client4.SENSITIVE_STRING }
+    }), "TestStateOutputFilterSensitiveLog");
+    var UpdateStateMachineInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING },
+      ...obj.versionDescription && { versionDescription: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineInputFilterSensitiveLog");
+    var UpdateStateMachineAliasInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.description && { description: import_smithy_client4.SENSITIVE_STRING }
+    }), "UpdateStateMachineAliasInputFilterSensitiveLog");
+    var ValidateStateMachineDefinitionInputFilterSensitiveLog = /* @__PURE__ */ __name2((obj) => ({
+      ...obj,
+      ...obj.definition && { definition: import_smithy_client4.SENSITIVE_STRING }
+    }), "ValidateStateMachineDefinitionInputFilterSensitiveLog");
+    var se_CreateActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateActivityCommand");
+    var se_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineCommand");
+    var se_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("CreateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_CreateStateMachineAliasCommand");
+    var se_DeleteActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteActivityCommand");
+    var se_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineCommand");
+    var se_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineAliasCommand");
+    var se_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DeleteStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DeleteStateMachineVersionCommand");
+    var se_DescribeActivityCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeActivity");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeActivityCommand");
+    var se_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeExecutionCommand");
+    var se_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeMapRun");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeMapRunCommand");
+    var se_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineCommand");
+    var se_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineAliasCommand");
+    var se_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("DescribeStateMachineForExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_DescribeStateMachineForExecutionCommand");
+    var se_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetActivityTask");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetActivityTaskCommand");
+    var se_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("GetExecutionHistory");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_GetExecutionHistoryCommand");
+    var se_ListActivitiesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListActivities");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListActivitiesCommand");
+    var se_ListExecutionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListExecutions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListExecutionsCommand");
+    var se_ListMapRunsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListMapRuns");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListMapRunsCommand");
+    var se_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineAliases");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineAliasesCommand");
+    var se_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachines");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachinesCommand");
+    var se_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListStateMachineVersions");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListStateMachineVersionsCommand");
+    var se_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ListTagsForResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ListTagsForResourceCommand");
+    var se_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("PublishStateMachineVersion");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_PublishStateMachineVersionCommand");
+    var se_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("RedriveExecution");
+      let body;
+      body = JSON.stringify(se_RedriveExecutionInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_RedriveExecutionCommand");
+    var se_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskFailure");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskFailureCommand");
+    var se_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskHeartbeat");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskHeartbeatCommand");
+    var se_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("SendTaskSuccess");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_SendTaskSuccessCommand");
+    var se_StartExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StartExecutionCommand");
+    var se_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StartSyncExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_StartSyncExecutionCommand");
+    var se_StopExecutionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("StopExecution");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_StopExecutionCommand");
+    var se_TagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_TagResourceCommand");
+    var se_TestStateCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("TestState");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      let { hostname: resolvedHostname } = await context.endpoint();
+      if (context.disableHostPrefix !== true) {
+        resolvedHostname = "sync-" + resolvedHostname;
+        if (!(0, import_protocol_http8.isValidHostname)(resolvedHostname)) {
+          throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
+        }
+      }
+      return buildHttpRpcRequest(context, headers, "/", resolvedHostname, body);
+    }, "se_TestStateCommand");
+    var se_UntagResourceCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UntagResource");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UntagResourceCommand");
+    var se_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateMapRun");
+      let body;
+      body = JSON.stringify(se_UpdateMapRunInput(input, context));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateMapRunCommand");
+    var se_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachine");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineCommand");
+    var se_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("UpdateStateMachineAlias");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_UpdateStateMachineAliasCommand");
+    var se_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (input, context) => {
+      const headers = sharedHeaders("ValidateStateMachineDefinition");
+      let body;
+      body = JSON.stringify((0, import_smithy_client4._json)(input));
+      return buildHttpRpcRequest(context, headers, "/", void 0, body);
+    }, "se_ValidateStateMachineDefinitionCommand");
+    var de_CreateActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateActivityCommand");
+    var de_CreateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineCommand");
+    var de_CreateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_CreateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_CreateStateMachineAliasCommand");
+    var de_DeleteActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteActivityCommand");
+    var de_DeleteStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineCommand");
+    var de_DeleteStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineAliasCommand");
+    var de_DeleteStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DeleteStateMachineVersionCommand");
+    var de_DescribeActivityCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeActivityOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeActivityCommand");
+    var de_DescribeExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeExecutionCommand");
+    var de_DescribeMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeMapRunOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeMapRunCommand");
+    var de_DescribeStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineCommand");
+    var de_DescribeStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineAliasCommand");
+    var de_DescribeStateMachineForExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_DescribeStateMachineForExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_DescribeStateMachineForExecutionCommand");
+    var de_GetActivityTaskCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetActivityTaskCommand");
+    var de_GetExecutionHistoryCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_GetExecutionHistoryOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_GetExecutionHistoryCommand");
+    var de_ListActivitiesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListActivitiesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListActivitiesCommand");
+    var de_ListExecutionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListExecutionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListExecutionsCommand");
+    var de_ListMapRunsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListMapRunsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListMapRunsCommand");
+    var de_ListStateMachineAliasesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineAliasesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineAliasesCommand");
+    var de_ListStateMachinesCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachinesOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachinesCommand");
+    var de_ListStateMachineVersionsCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_ListStateMachineVersionsOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListStateMachineVersionsCommand");
+    var de_ListTagsForResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ListTagsForResourceCommand");
+    var de_PublishStateMachineVersionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_PublishStateMachineVersionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_PublishStateMachineVersionCommand");
+    var de_RedriveExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_RedriveExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_RedriveExecutionCommand");
+    var de_SendTaskFailureCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskFailureCommand");
+    var de_SendTaskHeartbeatCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskHeartbeatCommand");
+    var de_SendTaskSuccessCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_SendTaskSuccessCommand");
+    var de_StartExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartExecutionCommand");
+    var de_StartSyncExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StartSyncExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StartSyncExecutionCommand");
+    var de_StopExecutionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_StopExecutionOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_StopExecutionCommand");
+    var de_TagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TagResourceCommand");
+    var de_TestStateCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_TestStateCommand");
+    var de_UntagResourceCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UntagResourceCommand");
+    var de_UpdateMapRunCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateMapRunCommand");
+    var de_UpdateStateMachineCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineCommand");
+    var de_UpdateStateMachineAliasCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = de_UpdateStateMachineAliasOutput(data, context);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_UpdateStateMachineAliasCommand");
+    var de_ValidateStateMachineDefinitionCommand = /* @__PURE__ */ __name2(async (output, context) => {
+      if (output.statusCode >= 300) {
+        return de_CommandError(output, context);
+      }
+      const data = await (0, import_core22.parseJsonBody)(output.body, context);
+      let contents = {};
+      contents = (0, import_smithy_client4._json)(data);
+      const response = {
+        $metadata: deserializeMetadata(output),
+        ...contents
+      };
+      return response;
+    }, "de_ValidateStateMachineDefinitionCommand");
+    var de_CommandError = /* @__PURE__ */ __name2(async (output, context) => {
+      const parsedOutput = {
+        ...output,
+        body: await (0, import_core22.parseJsonErrorBody)(output.body, context)
+      };
+      const errorCode = (0, import_core22.loadRestJsonErrorCode)(output, parsedOutput.body);
+      switch (errorCode) {
+        case "ActivityAlreadyExists":
+        case "com.amazonaws.sfn#ActivityAlreadyExists":
+          throw await de_ActivityAlreadyExistsRes(parsedOutput, context);
+        case "ActivityLimitExceeded":
+        case "com.amazonaws.sfn#ActivityLimitExceeded":
+          throw await de_ActivityLimitExceededRes(parsedOutput, context);
+        case "InvalidEncryptionConfiguration":
+        case "com.amazonaws.sfn#InvalidEncryptionConfiguration":
+          throw await de_InvalidEncryptionConfigurationRes(parsedOutput, context);
+        case "InvalidName":
+        case "com.amazonaws.sfn#InvalidName":
+          throw await de_InvalidNameRes(parsedOutput, context);
+        case "KmsAccessDeniedException":
+        case "com.amazonaws.sfn#KmsAccessDeniedException":
+          throw await de_KmsAccessDeniedExceptionRes(parsedOutput, context);
+        case "KmsThrottlingException":
+        case "com.amazonaws.sfn#KmsThrottlingException":
+          throw await de_KmsThrottlingExceptionRes(parsedOutput, context);
+        case "TooManyTags":
+        case "com.amazonaws.sfn#TooManyTags":
+          throw await de_TooManyTagsRes(parsedOutput, context);
+        case "ConflictException":
+        case "com.amazonaws.sfn#ConflictException":
+          throw await de_ConflictExceptionRes(parsedOutput, context);
+        case "InvalidArn":
+        case "com.amazonaws.sfn#InvalidArn":
+          throw await de_InvalidArnRes(parsedOutput, context);
+        case "InvalidDefinition":
+        case "com.amazonaws.sfn#InvalidDefinition":
+          throw await de_InvalidDefinitionRes(parsedOutput, context);
+        case "InvalidLoggingConfiguration":
+        case "com.amazonaws.sfn#InvalidLoggingConfiguration":
+          throw await de_InvalidLoggingConfigurationRes(parsedOutput, context);
+        case "InvalidTracingConfiguration":
+        case "com.amazonaws.sfn#InvalidTracingConfiguration":
+          throw await de_InvalidTracingConfigurationRes(parsedOutput, context);
+        case "StateMachineAlreadyExists":
+        case "com.amazonaws.sfn#StateMachineAlreadyExists":
+          throw await de_StateMachineAlreadyExistsRes(parsedOutput, context);
+        case "StateMachineDeleting":
+        case "com.amazonaws.sfn#StateMachineDeleting":
+          throw await de_StateMachineDeletingRes(parsedOutput, context);
+        case "StateMachineLimitExceeded":
+        case "com.amazonaws.sfn#StateMachineLimitExceeded":
+          throw await de_StateMachineLimitExceededRes(parsedOutput, context);
+        case "StateMachineTypeNotSupported":
+        case "com.amazonaws.sfn#StateMachineTypeNotSupported":
+          throw await de_StateMachineTypeNotSupportedRes(parsedOutput, context);
+        case "ValidationException":
+        case "com.amazonaws.sfn#ValidationException":
+          throw await de_ValidationExceptionRes(parsedOutput, context);
+        case "ResourceNotFound":
+        case "com.amazonaws.sfn#ResourceNotFound":
+          throw await de_ResourceNotFoundRes(parsedOutput, context);
+        case "ServiceQuotaExceededException":
+        case "com.amazonaws.sfn#ServiceQuotaExceededException":
+          throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context);
+        case "ActivityDoesNotExist":
+        case "com.amazonaws.sfn#ActivityDoesNotExist":
+          throw await de_ActivityDoesNotExistRes(parsedOutput, context);
+        case "ExecutionDoesNotExist":
+        case "com.amazonaws.sfn#ExecutionDoesNotExist":
+          throw await de_ExecutionDoesNotExistRes(parsedOutput, context);
+        case "KmsInvalidStateException":
+        case "com.amazonaws.sfn#KmsInvalidStateException":
+          throw await de_KmsInvalidStateExceptionRes(parsedOutput, context);
+        case "StateMachineDoesNotExist":
+        case "com.amazonaws.sfn#StateMachineDoesNotExist":
+          throw await de_StateMachineDoesNotExistRes(parsedOutput, context);
+        case "ActivityWorkerLimitExceeded":
+        case "com.amazonaws.sfn#ActivityWorkerLimitExceeded":
+          throw await de_ActivityWorkerLimitExceededRes(parsedOutput, context);
+        case "InvalidToken":
+        case "com.amazonaws.sfn#InvalidToken":
+          throw await de_InvalidTokenRes(parsedOutput, context);
+        case "ExecutionLimitExceeded":
+        case "com.amazonaws.sfn#ExecutionLimitExceeded":
+          throw await de_ExecutionLimitExceededRes(parsedOutput, context);
+        case "ExecutionNotRedrivable":
+        case "com.amazonaws.sfn#ExecutionNotRedrivable":
+          throw await de_ExecutionNotRedrivableRes(parsedOutput, context);
+        case "TaskDoesNotExist":
+        case "com.amazonaws.sfn#TaskDoesNotExist":
+          throw await de_TaskDoesNotExistRes(parsedOutput, context);
+        case "TaskTimedOut":
+        case "com.amazonaws.sfn#TaskTimedOut":
+          throw await de_TaskTimedOutRes(parsedOutput, context);
+        case "InvalidOutput":
+        case "com.amazonaws.sfn#InvalidOutput":
+          throw await de_InvalidOutputRes(parsedOutput, context);
+        case "ExecutionAlreadyExists":
+        case "com.amazonaws.sfn#ExecutionAlreadyExists":
+          throw await de_ExecutionAlreadyExistsRes(parsedOutput, context);
+        case "InvalidExecutionInput":
+        case "com.amazonaws.sfn#InvalidExecutionInput":
+          throw await de_InvalidExecutionInputRes(parsedOutput, context);
+        case "MissingRequiredParameter":
+        case "com.amazonaws.sfn#MissingRequiredParameter":
+          throw await de_MissingRequiredParameterRes(parsedOutput, context);
+        default:
+          const parsedBody = parsedOutput.body;
+          return throwDefaultError({
+            output,
+            parsedBody,
+            errorCode
+          });
+      }
+    }, "de_CommandError");
+    var de_ActivityAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityAlreadyExistsRes");
+    var de_ActivityDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityDoesNotExistRes");
+    var de_ActivityLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityLimitExceededRes");
+    var de_ActivityWorkerLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ActivityWorkerLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ActivityWorkerLimitExceededRes");
+    var de_ConflictExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ConflictException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ConflictExceptionRes");
+    var de_ExecutionAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionAlreadyExistsRes");
+    var de_ExecutionDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionDoesNotExistRes");
+    var de_ExecutionLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionLimitExceededRes");
+    var de_ExecutionNotRedrivableRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ExecutionNotRedrivable({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ExecutionNotRedrivableRes");
+    var de_InvalidArnRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidArn({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidArnRes");
+    var de_InvalidDefinitionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidDefinition({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidDefinitionRes");
+    var de_InvalidEncryptionConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidEncryptionConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidEncryptionConfigurationRes");
+    var de_InvalidExecutionInputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidExecutionInput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidExecutionInputRes");
+    var de_InvalidLoggingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidLoggingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidLoggingConfigurationRes");
+    var de_InvalidNameRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidName({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidNameRes");
+    var de_InvalidOutputRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidOutput({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidOutputRes");
+    var de_InvalidTokenRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidToken({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTokenRes");
+    var de_InvalidTracingConfigurationRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new InvalidTracingConfiguration({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_InvalidTracingConfigurationRes");
+    var de_KmsAccessDeniedExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsAccessDeniedException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsAccessDeniedExceptionRes");
+    var de_KmsInvalidStateExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsInvalidStateException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsInvalidStateExceptionRes");
+    var de_KmsThrottlingExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new KmsThrottlingException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_KmsThrottlingExceptionRes");
+    var de_MissingRequiredParameterRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new MissingRequiredParameter({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_MissingRequiredParameterRes");
+    var de_ResourceNotFoundRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ResourceNotFound({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ResourceNotFoundRes");
+    var de_ServiceQuotaExceededExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ServiceQuotaExceededException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ServiceQuotaExceededExceptionRes");
+    var de_StateMachineAlreadyExistsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineAlreadyExists({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineAlreadyExistsRes");
+    var de_StateMachineDeletingRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDeleting({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDeletingRes");
+    var de_StateMachineDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineDoesNotExistRes");
+    var de_StateMachineLimitExceededRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineLimitExceeded({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineLimitExceededRes");
+    var de_StateMachineTypeNotSupportedRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new StateMachineTypeNotSupported({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_StateMachineTypeNotSupportedRes");
+    var de_TaskDoesNotExistRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskDoesNotExist({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskDoesNotExistRes");
+    var de_TaskTimedOutRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TaskTimedOut({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TaskTimedOutRes");
+    var de_TooManyTagsRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new TooManyTags({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_TooManyTagsRes");
+    var de_ValidationExceptionRes = /* @__PURE__ */ __name2(async (parsedOutput, context) => {
+      const body = parsedOutput.body;
+      const deserialized = (0, import_smithy_client4._json)(body);
+      const exception = new ValidationException({
+        $metadata: deserializeMetadata(parsedOutput),
+        ...deserialized
+      });
+      return (0, import_smithy_client4.decorateServiceException)(exception, body);
+    }, "de_ValidationExceptionRes");
+    var se_RedriveExecutionInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        clientToken: [true, (_) => _ ?? (0, import_uuid.v4)()],
+        executionArn: []
+      });
+    }, "se_RedriveExecutionInput");
+    var se_UpdateMapRunInput = /* @__PURE__ */ __name2((input, context) => {
+      return (0, import_smithy_client4.take)(input, {
+        mapRunArn: [],
+        maxConcurrency: [],
+        toleratedFailureCount: [],
+        toleratedFailurePercentage: import_smithy_client4.serializeFloat
+      });
+    }, "se_UpdateMapRunInput");
+    var de_ActivityList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ActivityListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ActivityList");
+    var de_ActivityListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString
+      });
+    }, "de_ActivityListItem");
+    var de_CreateActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_CreateActivityOutput");
+    var de_CreateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineAliasOutput");
+    var de_CreateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_CreateStateMachineOutput");
+    var de_DescribeActivityOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityArn: import_smithy_client4.expectString,
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        encryptionConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString
+      });
+    }, "de_DescribeActivityOutput");
+    var de_DescribeExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        redriveStatus: import_smithy_client4.expectString,
+        redriveStatusReason: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_DescribeExecutionOutput");
+    var de_DescribeMapRunOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        executionCounts: import_smithy_client4._json,
+        itemCounts: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        maxConcurrency: import_smithy_client4.expectInt32,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        toleratedFailureCount: import_smithy_client4.expectLong,
+        toleratedFailurePercentage: import_smithy_client4.limitedParseFloat32
+      });
+    }, "de_DescribeMapRunOutput");
+    var de_DescribeStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        description: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        routingConfiguration: import_smithy_client4._json,
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineAliasOutput");
+    var de_DescribeStateMachineForExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        definition: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_DescribeStateMachineForExecutionOutput");
+    var de_DescribeStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        definition: import_smithy_client4.expectString,
+        description: import_smithy_client4.expectString,
+        encryptionConfiguration: import_smithy_client4._json,
+        label: import_smithy_client4.expectString,
+        loggingConfiguration: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        revisionId: import_smithy_client4.expectString,
+        roleArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        tracingConfiguration: import_smithy_client4._json,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_DescribeStateMachineOutput");
+    var de_ExecutionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_ExecutionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_ExecutionList");
+    var de_ExecutionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        itemCount: import_smithy_client4.expectInt32,
+        mapRunArn: import_smithy_client4.expectString,
+        name: import_smithy_client4.expectString,
+        redriveCount: import_smithy_client4.expectInt32,
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_ExecutionListItem");
+    var de_GetExecutionHistoryOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        events: (_) => de_HistoryEventList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_GetExecutionHistoryOutput");
+    var de_HistoryEvent = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activityFailedEventDetails: import_smithy_client4._json,
+        activityScheduleFailedEventDetails: import_smithy_client4._json,
+        activityScheduledEventDetails: import_smithy_client4._json,
+        activityStartedEventDetails: import_smithy_client4._json,
+        activitySucceededEventDetails: import_smithy_client4._json,
+        activityTimedOutEventDetails: import_smithy_client4._json,
+        executionAbortedEventDetails: import_smithy_client4._json,
+        executionFailedEventDetails: import_smithy_client4._json,
+        executionRedrivenEventDetails: import_smithy_client4._json,
+        executionStartedEventDetails: import_smithy_client4._json,
+        executionSucceededEventDetails: import_smithy_client4._json,
+        executionTimedOutEventDetails: import_smithy_client4._json,
+        id: import_smithy_client4.expectLong,
+        lambdaFunctionFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduleFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionScheduledEventDetails: import_smithy_client4._json,
+        lambdaFunctionStartFailedEventDetails: import_smithy_client4._json,
+        lambdaFunctionSucceededEventDetails: import_smithy_client4._json,
+        lambdaFunctionTimedOutEventDetails: import_smithy_client4._json,
+        mapIterationAbortedEventDetails: import_smithy_client4._json,
+        mapIterationFailedEventDetails: import_smithy_client4._json,
+        mapIterationStartedEventDetails: import_smithy_client4._json,
+        mapIterationSucceededEventDetails: import_smithy_client4._json,
+        mapRunFailedEventDetails: import_smithy_client4._json,
+        mapRunRedrivenEventDetails: import_smithy_client4._json,
+        mapRunStartedEventDetails: import_smithy_client4._json,
+        mapStateStartedEventDetails: import_smithy_client4._json,
+        previousEventId: import_smithy_client4.expectLong,
+        stateEnteredEventDetails: import_smithy_client4._json,
+        stateExitedEventDetails: import_smithy_client4._json,
+        taskFailedEventDetails: import_smithy_client4._json,
+        taskScheduledEventDetails: import_smithy_client4._json,
+        taskStartFailedEventDetails: import_smithy_client4._json,
+        taskStartedEventDetails: import_smithy_client4._json,
+        taskSubmitFailedEventDetails: import_smithy_client4._json,
+        taskSubmittedEventDetails: import_smithy_client4._json,
+        taskSucceededEventDetails: import_smithy_client4._json,
+        taskTimedOutEventDetails: import_smithy_client4._json,
+        timestamp: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        type: import_smithy_client4.expectString
+      });
+    }, "de_HistoryEvent");
+    var de_HistoryEventList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_HistoryEvent(entry, context);
+      });
+      return retVal;
+    }, "de_HistoryEventList");
+    var de_ListActivitiesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        activities: (_) => de_ActivityList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListActivitiesOutput");
+    var de_ListExecutionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executions: (_) => de_ExecutionList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListExecutionsOutput");
+    var de_ListMapRunsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        mapRuns: (_) => de_MapRunList(_, context),
+        nextToken: import_smithy_client4.expectString
+      });
+    }, "de_ListMapRunsOutput");
+    var de_ListStateMachineAliasesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineAliases: (_) => de_StateMachineAliasList(_, context)
+      });
+    }, "de_ListStateMachineAliasesOutput");
+    var de_ListStateMachinesOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachines: (_) => de_StateMachineList(_, context)
+      });
+    }, "de_ListStateMachinesOutput");
+    var de_ListStateMachineVersionsOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        nextToken: import_smithy_client4.expectString,
+        stateMachineVersions: (_) => de_StateMachineVersionList(_, context)
+      });
+    }, "de_ListStateMachineVersionsOutput");
+    var de_MapRunList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_MapRunListItem(entry, context);
+      });
+      return retVal;
+    }, "de_MapRunList");
+    var de_MapRunListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        mapRunArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_MapRunListItem");
+    var de_PublishStateMachineVersionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_PublishStateMachineVersionOutput");
+    var de_RedriveExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        redriveDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_RedriveExecutionOutput");
+    var de_StartExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        executionArn: import_smithy_client4.expectString,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StartExecutionOutput");
+    var de_StartSyncExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        billingDetails: import_smithy_client4._json,
+        cause: import_smithy_client4.expectString,
+        error: import_smithy_client4.expectString,
+        executionArn: import_smithy_client4.expectString,
+        input: import_smithy_client4.expectString,
+        inputDetails: import_smithy_client4._json,
+        name: import_smithy_client4.expectString,
+        output: import_smithy_client4.expectString,
+        outputDetails: import_smithy_client4._json,
+        startDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineArn: import_smithy_client4.expectString,
+        status: import_smithy_client4.expectString,
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        traceHeader: import_smithy_client4.expectString
+      });
+    }, "de_StartSyncExecutionOutput");
+    var de_StateMachineAliasList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineAliasListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineAliasList");
+    var de_StateMachineAliasListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineAliasArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineAliasListItem");
+    var de_StateMachineList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineList");
+    var de_StateMachineListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        name: import_smithy_client4.expectString,
+        stateMachineArn: import_smithy_client4.expectString,
+        type: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineListItem");
+    var de_StateMachineVersionList = /* @__PURE__ */ __name2((output, context) => {
+      const retVal = (output || []).filter((e) => e != null).map((entry) => {
+        return de_StateMachineVersionListItem(entry, context);
+      });
+      return retVal;
+    }, "de_StateMachineVersionList");
+    var de_StateMachineVersionListItem = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        creationDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_))),
+        stateMachineVersionArn: import_smithy_client4.expectString
+      });
+    }, "de_StateMachineVersionListItem");
+    var de_StopExecutionOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        stopDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_StopExecutionOutput");
+    var de_UpdateStateMachineAliasOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineAliasOutput");
+    var de_UpdateStateMachineOutput = /* @__PURE__ */ __name2((output, context) => {
+      return (0, import_smithy_client4.take)(output, {
+        revisionId: import_smithy_client4.expectString,
+        stateMachineVersionArn: import_smithy_client4.expectString,
+        updateDate: (_) => (0, import_smithy_client4.expectNonNull)((0, import_smithy_client4.parseEpochTimestamp)((0, import_smithy_client4.expectNumber)(_)))
+      });
+    }, "de_UpdateStateMachineOutput");
+    var deserializeMetadata = /* @__PURE__ */ __name2((output) => ({
+      httpStatusCode: output.statusCode,
+      requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
+      extendedRequestId: output.headers["x-amz-id-2"],
+      cfId: output.headers["x-amz-cf-id"]
+    }), "deserializeMetadata");
+    var throwDefaultError = (0, import_smithy_client4.withBaseException)(SFNServiceException);
+    var buildHttpRpcRequest = /* @__PURE__ */ __name2(async (context, headers, path23, resolvedHostname, body) => {
+      const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+      const contents = {
+        protocol,
+        hostname,
+        port,
+        method: "POST",
+        path: basePath.endsWith("/") ? basePath.slice(0, -1) + path23 : basePath + path23,
+        headers
+      };
+      if (resolvedHostname !== void 0) {
+        contents.hostname = resolvedHostname;
+      }
+      if (body !== void 0) {
+        contents.body = body;
+      }
+      return new import_protocol_http8.HttpRequest(contents);
+    }, "buildHttpRpcRequest");
+    function sharedHeaders(operation) {
+      return {
+        "content-type": "application/x-amz-json-1.0",
+        "x-amz-target": `AWSStepFunctions.${operation}`
+      };
+    }
+    __name2(sharedHeaders, "sharedHeaders");
+    var _CreateActivityCommand = class _CreateActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateActivity", {}).n("SFNClient", "CreateActivityCommand").f(void 0, void 0).ser(se_CreateActivityCommand).de(de_CreateActivityCommand).build() {
+    };
+    __name2(_CreateActivityCommand, "CreateActivityCommand");
+    var CreateActivityCommand = _CreateActivityCommand;
+    var _CreateStateMachineAliasCommand = class _CreateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachineAlias", {}).n("SFNClient", "CreateStateMachineAliasCommand").f(CreateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineAliasCommand).de(de_CreateStateMachineAliasCommand).build() {
+    };
+    __name2(_CreateStateMachineAliasCommand, "CreateStateMachineAliasCommand");
+    var CreateStateMachineAliasCommand = _CreateStateMachineAliasCommand;
+    var _CreateStateMachineCommand = class _CreateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "CreateStateMachine", {}).n("SFNClient", "CreateStateMachineCommand").f(CreateStateMachineInputFilterSensitiveLog, void 0).ser(se_CreateStateMachineCommand).de(de_CreateStateMachineCommand).build() {
+    };
+    __name2(_CreateStateMachineCommand, "CreateStateMachineCommand");
+    var CreateStateMachineCommand = _CreateStateMachineCommand;
+    var _DeleteActivityCommand = class _DeleteActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteActivity", {}).n("SFNClient", "DeleteActivityCommand").f(void 0, void 0).ser(se_DeleteActivityCommand).de(de_DeleteActivityCommand).build() {
+    };
+    __name2(_DeleteActivityCommand, "DeleteActivityCommand");
+    var DeleteActivityCommand = _DeleteActivityCommand;
+    var _DeleteStateMachineAliasCommand = class _DeleteStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineAlias", {}).n("SFNClient", "DeleteStateMachineAliasCommand").f(void 0, void 0).ser(se_DeleteStateMachineAliasCommand).de(de_DeleteStateMachineAliasCommand).build() {
+    };
+    __name2(_DeleteStateMachineAliasCommand, "DeleteStateMachineAliasCommand");
+    var DeleteStateMachineAliasCommand = _DeleteStateMachineAliasCommand;
+    var _DeleteStateMachineCommand = class _DeleteStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachine", {}).n("SFNClient", "DeleteStateMachineCommand").f(void 0, void 0).ser(se_DeleteStateMachineCommand).de(de_DeleteStateMachineCommand).build() {
+    };
+    __name2(_DeleteStateMachineCommand, "DeleteStateMachineCommand");
+    var DeleteStateMachineCommand = _DeleteStateMachineCommand;
+    var _DeleteStateMachineVersionCommand = class _DeleteStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DeleteStateMachineVersion", {}).n("SFNClient", "DeleteStateMachineVersionCommand").f(void 0, void 0).ser(se_DeleteStateMachineVersionCommand).de(de_DeleteStateMachineVersionCommand).build() {
+    };
+    __name2(_DeleteStateMachineVersionCommand, "DeleteStateMachineVersionCommand");
+    var DeleteStateMachineVersionCommand = _DeleteStateMachineVersionCommand;
+    var _DescribeActivityCommand = class _DescribeActivityCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeActivity", {}).n("SFNClient", "DescribeActivityCommand").f(void 0, void 0).ser(se_DescribeActivityCommand).de(de_DescribeActivityCommand).build() {
+    };
+    __name2(_DescribeActivityCommand, "DescribeActivityCommand");
+    var DescribeActivityCommand = _DescribeActivityCommand;
+    var _DescribeExecutionCommand = class _DescribeExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeExecution", {}).n("SFNClient", "DescribeExecutionCommand").f(void 0, DescribeExecutionOutputFilterSensitiveLog).ser(se_DescribeExecutionCommand).de(de_DescribeExecutionCommand).build() {
+    };
+    __name2(_DescribeExecutionCommand, "DescribeExecutionCommand");
+    var DescribeExecutionCommand = _DescribeExecutionCommand;
+    var _DescribeMapRunCommand = class _DescribeMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeMapRun", {}).n("SFNClient", "DescribeMapRunCommand").f(void 0, void 0).ser(se_DescribeMapRunCommand).de(de_DescribeMapRunCommand).build() {
+    };
+    __name2(_DescribeMapRunCommand, "DescribeMapRunCommand");
+    var DescribeMapRunCommand = _DescribeMapRunCommand;
+    var _DescribeStateMachineAliasCommand = class _DescribeStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineAlias", {}).n("SFNClient", "DescribeStateMachineAliasCommand").f(void 0, DescribeStateMachineAliasOutputFilterSensitiveLog).ser(se_DescribeStateMachineAliasCommand).de(de_DescribeStateMachineAliasCommand).build() {
+    };
+    __name2(_DescribeStateMachineAliasCommand, "DescribeStateMachineAliasCommand");
+    var DescribeStateMachineAliasCommand = _DescribeStateMachineAliasCommand;
+    var _DescribeStateMachineCommand = class _DescribeStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachine", {}).n("SFNClient", "DescribeStateMachineCommand").f(void 0, DescribeStateMachineOutputFilterSensitiveLog).ser(se_DescribeStateMachineCommand).de(de_DescribeStateMachineCommand).build() {
+    };
+    __name2(_DescribeStateMachineCommand, "DescribeStateMachineCommand");
+    var DescribeStateMachineCommand = _DescribeStateMachineCommand;
+    var _DescribeStateMachineForExecutionCommand = class _DescribeStateMachineForExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "DescribeStateMachineForExecution", {}).n("SFNClient", "DescribeStateMachineForExecutionCommand").f(void 0, DescribeStateMachineForExecutionOutputFilterSensitiveLog).ser(se_DescribeStateMachineForExecutionCommand).de(de_DescribeStateMachineForExecutionCommand).build() {
+    };
+    __name2(_DescribeStateMachineForExecutionCommand, "DescribeStateMachineForExecutionCommand");
+    var DescribeStateMachineForExecutionCommand = _DescribeStateMachineForExecutionCommand;
+    var _GetActivityTaskCommand = class _GetActivityTaskCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetActivityTask", {}).n("SFNClient", "GetActivityTaskCommand").f(void 0, GetActivityTaskOutputFilterSensitiveLog).ser(se_GetActivityTaskCommand).de(de_GetActivityTaskCommand).build() {
+    };
+    __name2(_GetActivityTaskCommand, "GetActivityTaskCommand");
+    var GetActivityTaskCommand = _GetActivityTaskCommand;
+    var _GetExecutionHistoryCommand = class _GetExecutionHistoryCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "GetExecutionHistory", {}).n("SFNClient", "GetExecutionHistoryCommand").f(void 0, GetExecutionHistoryOutputFilterSensitiveLog).ser(se_GetExecutionHistoryCommand).de(de_GetExecutionHistoryCommand).build() {
+    };
+    __name2(_GetExecutionHistoryCommand, "GetExecutionHistoryCommand");
+    var GetExecutionHistoryCommand = _GetExecutionHistoryCommand;
+    var _ListActivitiesCommand = class _ListActivitiesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListActivities", {}).n("SFNClient", "ListActivitiesCommand").f(void 0, void 0).ser(se_ListActivitiesCommand).de(de_ListActivitiesCommand).build() {
+    };
+    __name2(_ListActivitiesCommand, "ListActivitiesCommand");
+    var ListActivitiesCommand = _ListActivitiesCommand;
+    var _ListExecutionsCommand = class _ListExecutionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListExecutions", {}).n("SFNClient", "ListExecutionsCommand").f(void 0, void 0).ser(se_ListExecutionsCommand).de(de_ListExecutionsCommand).build() {
+    };
+    __name2(_ListExecutionsCommand, "ListExecutionsCommand");
+    var ListExecutionsCommand = _ListExecutionsCommand;
+    var _ListMapRunsCommand = class _ListMapRunsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListMapRuns", {}).n("SFNClient", "ListMapRunsCommand").f(void 0, void 0).ser(se_ListMapRunsCommand).de(de_ListMapRunsCommand).build() {
+    };
+    __name2(_ListMapRunsCommand, "ListMapRunsCommand");
+    var ListMapRunsCommand = _ListMapRunsCommand;
+    var _ListStateMachineAliasesCommand = class _ListStateMachineAliasesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineAliases", {}).n("SFNClient", "ListStateMachineAliasesCommand").f(void 0, void 0).ser(se_ListStateMachineAliasesCommand).de(de_ListStateMachineAliasesCommand).build() {
+    };
+    __name2(_ListStateMachineAliasesCommand, "ListStateMachineAliasesCommand");
+    var ListStateMachineAliasesCommand = _ListStateMachineAliasesCommand;
+    var _ListStateMachinesCommand = class _ListStateMachinesCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachines", {}).n("SFNClient", "ListStateMachinesCommand").f(void 0, void 0).ser(se_ListStateMachinesCommand).de(de_ListStateMachinesCommand).build() {
+    };
+    __name2(_ListStateMachinesCommand, "ListStateMachinesCommand");
+    var ListStateMachinesCommand = _ListStateMachinesCommand;
+    var _ListStateMachineVersionsCommand = class _ListStateMachineVersionsCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListStateMachineVersions", {}).n("SFNClient", "ListStateMachineVersionsCommand").f(void 0, void 0).ser(se_ListStateMachineVersionsCommand).de(de_ListStateMachineVersionsCommand).build() {
+    };
+    __name2(_ListStateMachineVersionsCommand, "ListStateMachineVersionsCommand");
+    var ListStateMachineVersionsCommand = _ListStateMachineVersionsCommand;
+    var _ListTagsForResourceCommand = class _ListTagsForResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ListTagsForResource", {}).n("SFNClient", "ListTagsForResourceCommand").f(void 0, void 0).ser(se_ListTagsForResourceCommand).de(de_ListTagsForResourceCommand).build() {
+    };
+    __name2(_ListTagsForResourceCommand, "ListTagsForResourceCommand");
+    var ListTagsForResourceCommand = _ListTagsForResourceCommand;
+    var _PublishStateMachineVersionCommand = class _PublishStateMachineVersionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "PublishStateMachineVersion", {}).n("SFNClient", "PublishStateMachineVersionCommand").f(PublishStateMachineVersionInputFilterSensitiveLog, void 0).ser(se_PublishStateMachineVersionCommand).de(de_PublishStateMachineVersionCommand).build() {
+    };
+    __name2(_PublishStateMachineVersionCommand, "PublishStateMachineVersionCommand");
+    var PublishStateMachineVersionCommand = _PublishStateMachineVersionCommand;
+    var _RedriveExecutionCommand = class _RedriveExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "RedriveExecution", {}).n("SFNClient", "RedriveExecutionCommand").f(void 0, void 0).ser(se_RedriveExecutionCommand).de(de_RedriveExecutionCommand).build() {
+    };
+    __name2(_RedriveExecutionCommand, "RedriveExecutionCommand");
+    var RedriveExecutionCommand = _RedriveExecutionCommand;
+    var _SendTaskFailureCommand = class _SendTaskFailureCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskFailure", {}).n("SFNClient", "SendTaskFailureCommand").f(SendTaskFailureInputFilterSensitiveLog, void 0).ser(se_SendTaskFailureCommand).de(de_SendTaskFailureCommand).build() {
+    };
+    __name2(_SendTaskFailureCommand, "SendTaskFailureCommand");
+    var SendTaskFailureCommand = _SendTaskFailureCommand;
+    var _SendTaskHeartbeatCommand = class _SendTaskHeartbeatCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskHeartbeat", {}).n("SFNClient", "SendTaskHeartbeatCommand").f(void 0, void 0).ser(se_SendTaskHeartbeatCommand).de(de_SendTaskHeartbeatCommand).build() {
+    };
+    __name2(_SendTaskHeartbeatCommand, "SendTaskHeartbeatCommand");
+    var SendTaskHeartbeatCommand = _SendTaskHeartbeatCommand;
+    var _SendTaskSuccessCommand = class _SendTaskSuccessCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "SendTaskSuccess", {}).n("SFNClient", "SendTaskSuccessCommand").f(SendTaskSuccessInputFilterSensitiveLog, void 0).ser(se_SendTaskSuccessCommand).de(de_SendTaskSuccessCommand).build() {
+    };
+    __name2(_SendTaskSuccessCommand, "SendTaskSuccessCommand");
+    var SendTaskSuccessCommand = _SendTaskSuccessCommand;
+    var _StartExecutionCommand = class _StartExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartExecution", {}).n("SFNClient", "StartExecutionCommand").f(StartExecutionInputFilterSensitiveLog, void 0).ser(se_StartExecutionCommand).de(de_StartExecutionCommand).build() {
+    };
+    __name2(_StartExecutionCommand, "StartExecutionCommand");
+    var StartExecutionCommand = _StartExecutionCommand;
+    var _StartSyncExecutionCommand = class _StartSyncExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StartSyncExecution", {}).n("SFNClient", "StartSyncExecutionCommand").f(StartSyncExecutionInputFilterSensitiveLog, StartSyncExecutionOutputFilterSensitiveLog).ser(se_StartSyncExecutionCommand).de(de_StartSyncExecutionCommand).build() {
+    };
+    __name2(_StartSyncExecutionCommand, "StartSyncExecutionCommand");
+    var StartSyncExecutionCommand = _StartSyncExecutionCommand;
+    var _StopExecutionCommand = class _StopExecutionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "StopExecution", {}).n("SFNClient", "StopExecutionCommand").f(StopExecutionInputFilterSensitiveLog, void 0).ser(se_StopExecutionCommand).de(de_StopExecutionCommand).build() {
+    };
+    __name2(_StopExecutionCommand, "StopExecutionCommand");
+    var StopExecutionCommand = _StopExecutionCommand;
+    var _TagResourceCommand = class _TagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TagResource", {}).n("SFNClient", "TagResourceCommand").f(void 0, void 0).ser(se_TagResourceCommand).de(de_TagResourceCommand).build() {
+    };
+    __name2(_TagResourceCommand, "TagResourceCommand");
+    var TagResourceCommand = _TagResourceCommand;
+    var _TestStateCommand = class _TestStateCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "TestState", {}).n("SFNClient", "TestStateCommand").f(TestStateInputFilterSensitiveLog, TestStateOutputFilterSensitiveLog).ser(se_TestStateCommand).de(de_TestStateCommand).build() {
+    };
+    __name2(_TestStateCommand, "TestStateCommand");
+    var TestStateCommand = _TestStateCommand;
+    var _UntagResourceCommand = class _UntagResourceCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UntagResource", {}).n("SFNClient", "UntagResourceCommand").f(void 0, void 0).ser(se_UntagResourceCommand).de(de_UntagResourceCommand).build() {
+    };
+    __name2(_UntagResourceCommand, "UntagResourceCommand");
+    var UntagResourceCommand = _UntagResourceCommand;
+    var _UpdateMapRunCommand = class _UpdateMapRunCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateMapRun", {}).n("SFNClient", "UpdateMapRunCommand").f(void 0, void 0).ser(se_UpdateMapRunCommand).de(de_UpdateMapRunCommand).build() {
+    };
+    __name2(_UpdateMapRunCommand, "UpdateMapRunCommand");
+    var UpdateMapRunCommand = _UpdateMapRunCommand;
+    var _UpdateStateMachineAliasCommand = class _UpdateStateMachineAliasCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachineAlias", {}).n("SFNClient", "UpdateStateMachineAliasCommand").f(UpdateStateMachineAliasInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineAliasCommand).de(de_UpdateStateMachineAliasCommand).build() {
+    };
+    __name2(_UpdateStateMachineAliasCommand, "UpdateStateMachineAliasCommand");
+    var UpdateStateMachineAliasCommand = _UpdateStateMachineAliasCommand;
+    var _UpdateStateMachineCommand = class _UpdateStateMachineCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "UpdateStateMachine", {}).n("SFNClient", "UpdateStateMachineCommand").f(UpdateStateMachineInputFilterSensitiveLog, void 0).ser(se_UpdateStateMachineCommand).de(de_UpdateStateMachineCommand).build() {
+    };
+    __name2(_UpdateStateMachineCommand, "UpdateStateMachineCommand");
+    var UpdateStateMachineCommand = _UpdateStateMachineCommand;
+    var _ValidateStateMachineDefinitionCommand = class _ValidateStateMachineDefinitionCommand extends import_smithy_client4.Command.classBuilder().ep({
+      ...commonParams
+    }).m(function(Command, cs, config, o) {
+      return [
+        (0, import_middleware_serde2.getSerdePlugin)(config, this.serialize, this.deserialize),
+        (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions())
+      ];
+    }).s("AWSStepFunctions", "ValidateStateMachineDefinition", {}).n("SFNClient", "ValidateStateMachineDefinitionCommand").f(ValidateStateMachineDefinitionInputFilterSensitiveLog, void 0).ser(se_ValidateStateMachineDefinitionCommand).de(de_ValidateStateMachineDefinitionCommand).build() {
+    };
+    __name2(_ValidateStateMachineDefinitionCommand, "ValidateStateMachineDefinitionCommand");
+    var ValidateStateMachineDefinitionCommand = _ValidateStateMachineDefinitionCommand;
+    var commands = {
+      CreateActivityCommand,
+      CreateStateMachineCommand,
+      CreateStateMachineAliasCommand,
+      DeleteActivityCommand,
+      DeleteStateMachineCommand,
+      DeleteStateMachineAliasCommand,
+      DeleteStateMachineVersionCommand,
+      DescribeActivityCommand,
+      DescribeExecutionCommand,
+      DescribeMapRunCommand,
+      DescribeStateMachineCommand,
+      DescribeStateMachineAliasCommand,
+      DescribeStateMachineForExecutionCommand,
+      GetActivityTaskCommand,
+      GetExecutionHistoryCommand,
+      ListActivitiesCommand,
+      ListExecutionsCommand,
+      ListMapRunsCommand,
+      ListStateMachineAliasesCommand,
+      ListStateMachinesCommand,
+      ListStateMachineVersionsCommand,
+      ListTagsForResourceCommand,
+      PublishStateMachineVersionCommand,
+      RedriveExecutionCommand,
+      SendTaskFailureCommand,
+      SendTaskHeartbeatCommand,
+      SendTaskSuccessCommand,
+      StartExecutionCommand,
+      StartSyncExecutionCommand,
+      StopExecutionCommand,
+      TagResourceCommand,
+      TestStateCommand,
+      UntagResourceCommand,
+      UpdateMapRunCommand,
+      UpdateStateMachineCommand,
+      UpdateStateMachineAliasCommand,
+      ValidateStateMachineDefinitionCommand
+    };
+    var _SFN = class _SFN extends SFNClient {
+    };
+    __name2(_SFN, "SFN");
+    var SFN2 = _SFN;
+    (0, import_smithy_client4.createAggregatedClient)(commands, SFN2);
+    var paginateGetExecutionHistory = (0, import_core4.createPaginator)(SFNClient, GetExecutionHistoryCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListActivities = (0, import_core4.createPaginator)(SFNClient, ListActivitiesCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListExecutions = (0, import_core4.createPaginator)(SFNClient, ListExecutionsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListMapRuns = (0, import_core4.createPaginator)(SFNClient, ListMapRunsCommand, "nextToken", "nextToken", "maxResults");
+    var paginateListStateMachines = (0, import_core4.createPaginator)(SFNClient, ListStateMachinesCommand, "nextToken", "nextToken", "maxResults");
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/parameter-types.ts
+var zlib2, typeCoercionStateMachine;
+var init_parameter_types = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/parameter-types.ts"() {
+    "use strict";
+    zlib2 = __toESM(require("zlib"));
+    typeCoercionStateMachine = () => {
+      const encoded = "Wyh0NiJJL6a5QDm2R+wa3nasIiZ8rauGeZab052kM0x6bT8EU0/HwbGSGrFuzuBbg02JZCzlwCgshy6qvkrFpm00Rthzgqs8/isVpWM0Rti0Dkzk+gC1msuWI3d05cm3trr8vSo57d7/ci3JNiKBbZ5RCeB2xaKj+ntgSfPFW9e2q7AoEuIRCMspciESLNZrqX2UbxDJ2n+lPCSbvuQv0lcIoDHwPDYKvdU9w6F8M1+r030Ot3Zmf0fZStLq2G2NpaR39gaRTxLKlMAQgNPca5rZ9S5TpuPTcwKJYcH2peOzrAtGMqB4Anqw1IXm+wE24MgH7/L/f1oaFrXxSlpNcwcwOADZfTQpjZHVfe99Hf8/2vLHVdri2gelS251dpELSjqhjYaS4FAW//u+Uuvf7I0uPC4cwUAkgYSUeCyl8jXT7o//rDwioCwShDqSqrQqSu9Npomz1jnbBA93N2NEIOwz0JiJFGlWUuZrlJW/6fbe51z36w3AaEBmRABSkpTqfaWy7Fvma9rh78d/OPzjSQTIZ0a9Vlmj/E3nf5lZSbN3+iNr4tDbTTk8CsOj41RlFW4klbK823wv86+ACBJoIHjAAFTS2qMl82fWLLsbiCOA2YsAMHvapTQMj7a59vypnLVRo82/7Hs1ybIizyFcEVxUq9fUxex7gQNw/pORyUnLcddWGIwUbQfCYGbORgfkpnnWWjlokQ8ISicsFRgsomt7/yzGyW1vVr/pq+ol6enPF8RhzCGEELZjY7/8T22ceC/baT6bB+i6EcjdZawqWnt69qmn6+4vk4AIiKgQktQuS5PaSdu9TMo3lgTGmG6KLLjF32fVVic9O1eVSv5ugyT7DRgwfsjy4pvW4zqZ3b7a4+SvjQCQt6ib4gEiy/75TC1g/I9+xZfzUWlv4+9bMQMt+XxPn6brewz4xhqOS2fE29IUqrR0k2Ws90++ahPMHnOi1N3i9cHHfX810RD7cp4VHB149M+svX7cOruD3sWT73oQHgrmuj6PGl3Ea5Kw2le4QVYzj6ECYZI5hvT9a4rQbc9Y4lnmhA18DwPdlUA+5FoA2Q5zVvni+HeWZHvi7TUiB1p3hpYbJGcW1gxLLBvvNucqXDcBBkk1w6GA3rr9nEvCVqmeyLo/RDdVaHBnYqVzYF+EBWungdUBcXOYbUNr8tTFE9nhoEM2GB3kBP6hX0bG5XFt8rQts9cR8YDuz8Gf8QNpqYZ/Jj3PpKmhWAoopciPuKAdXW9viWwuw9wjp0TOd7EZsDnwqXHyv2p7IcYFajl3WIBazW3znW2HJRPNLm3hzB4NKn+kLGzJUPP1D2UEA0XL1lE8wkN7hrxAxn9m3hvBvkFPWLgy2UA6J7cLC3mqU83unWGEfBPYhJv/hAU8tlL3gRm4FQ8TLNPGS0GubqefcExWfBoA2DTkLYjqa0KCwo0/CRuctiUNr0eyOPP7rWsO5fqJ2Vd0HvGGFttFbId2VuWa32lZM5/CSOwEnKh/c6ZgWGpTt2p2Z8mjKRcDLDzIUWXMDm4KuP8rMPSQzEi5b6BfYKy9PvDu8m6fWealr8lIEBhxaYRoo/aMmrSqMgVAiUcdGvu/cvciCrsq6BXoWROwE3Iw9a7tRVbRbAExTbbP8lati6c/cmyvohiQJJWeWr4uh1DrLJs70E+FFl4B8eb9WqRGmYsN8xr/HwNkSrgf30ynxwyoK3w/9JrtXykksA78yIgimD/IIXcLWSTa1CrenZLKpdqfV1uCwn3yV/yNhmBqjxshdHArh1ZypY9tXD5mefPIm9Qek8Sz8VBjdD9ClgA+tnVQdPSmfvz8Ky0gf3Ljn1UUUI8kO+CBGplNgZ9hRL74Z+FYWeYWMQ/MULYMG9eOd1zKxgB0Q/aZ9RPf67SU7pVAjR+NQieW9IH8JLMx5CDC7OS8b+VOSYHrihxngHxecdlHGIlvEGdPzKrwN6xbUd3gotyZQicnOSouTy9eIEQxI6oIZ/WphPuQ8yGPBw3c5LG+c9c4uyWq1nvrMpX3GFZoYwY8jvW5v5obJfLxzOYUBMLjUdvrA/FK9LSQ1NnqGZW3hIo0Hddwh0lT1DsS0nGU0Fdqatcwq5Aukb4Z6mVIRCyVOmPxu2OccxVKUZwr9cdjfEQ0Z9rHnCtINM5ssy+YqqGqAWn7kaIRfGqPDANMAGTgd3IhMVXlBXezmXx5zVdy4DsjE9WzG2jgr68mkreGQPxyDUBncoisCnhyWNUUo7Nnrkio1RVlbCtQ58bIQPtTxNPrvlQLvLDwbim1iXC2g/QMDcL15YPWg6ptgnEFaUfZ0+jsjyGfvC5QkcQUl+bNKzrmyIfMTSuzQ7ePIbAc3Q1M6GAdaYUqLWi+kQkqUA0aMc2IFkOZXCPywHr69IOi5uQboBg53QpTPdJUeFDFmke1SiEayAe74u3lTEClez/lddOv3xsNfvTundQkC9D5AIcvDarwj6EiqKPh3oDB4t2+vMOAhihKw3SNIenaOLNyCLRb8xuj5eia6sC4Po2HcGHb4Tbkk/rpPCql9OfjsIoZ76bU5rTXlBWGa7TEIAAcnrk2TVXYBdRuIRrSSGUeI9EN3tNQPIBaIiMze1i1cnJyXUUaGdqDiU9yWPtknKPUJTkGyMB46yXeOmNEx6omRoRd4Sxv2NuP07iE0bYjuPMH4oOacBWatduJJLXh30FWKtn7SWVf9ziP+RmWyzXCs0uvhBymy4TGI9CeugwH42SEXE9Gdl08MOULwRA/xXChbxf689YLv+dUVL2zX3RYPT1Ndsw8u/zOnMx4T7vC9NCI0XgvD9AunyQ3YO7pEZv68siqL4VHRUwngrtZNukUBvgUHvNeEA0giXU6NkOqAY+pD2yyyYohkBtCk33lVWNJfhapnLxvUh9OjWLIvKlzopZ35igI9Cv5ELRKGb2s6mugt78CpP2kOASe5il8hRJJmm/jnukMpmy8corKgGsGbPDdcmxRFSfMt1MH4z2YOABTd00p10nh5fTI0R9CQ/9/NwndXSpWFtjonk6KfNYP+6oAZw1IOCEmG3FzcAn3ae//vlXrU487dlB6jMrsjgSfcdRXDuY1Zt2nMqOMbM5bc9QkecqvJw/AJBzzKMqjJehuykMAYvVLoabSqwSm2MM8vRH4gQCHX08jaTPxMyBTA64rKYM8ABs3GKgufW9+qnzCe9CBtpFsKoZrAaY7pHsXc00k25OhvVVWXzqWmEw3kMojAbtHYZ/77txiPN1uyYuaIPh4XMs/OzMkxrk072AHM+dBj5qwIUrxKpENltITNi5j3brNlCIlJubd3DDvW1/5nDDsbGhQzJEHQ0iPucbzUawDDGcUKzf7eQAYAJgAN6k31TBUnUFJ6a1QTtbyZQw9ogUowKFHaFQxG03Y3i7BR1vIy1Ode85hBRpjyUAslXF9EIWCnt9/Zt/b38urinE9RHjNuZ5Hu0jd+veID6jgwwiYYi9pRDfm80XUF2nbMoZiruhAktdKUasm9EjIMmgysXxoFFtgFigb+gcKl1/xwAF6Jqd6+8DtEETNECBoOTyZaDD+Wl+497Xac5fUajlEV5Kexgf6jEhZHTQ9QgXKxBjFoPEDaDqPmi8I6p7dSyW8cjV7TuSV9XzqR4GlzBH4qo0DLducyiithlpG61aF8/z1XGGUqdVAGNqbDrUS3ot5NHVAGJy9PsSRvAazVjAt6+wZg3B6mkcNLqEQaUCJrQiSH5ybX43h0wjNNpCl76obxYaj8VMiczK4//+1p3BzS21FLDYkxGSlZQbI8EqxFz0zaIqIYz7P07sV/mBfVEHKZhvdGCWra3l3vpangq/q2AyW1dSQH/31v5Yj+x0yv6cmdrtbXNmo1FWNTQGq922jNld8ttOi999qHaDd9jfiG7vleW8d2WmkJGBn32VbZuVbHf6hRXsrB5d0j/9BC4U0nEzPxBSZy0+U+4Maix0AEAZ3tBjAMgDo6da8vvdTojEzgKE5WjZlOvcFbW2R4wI0DBI2xjiRNZ3IFuDMi0PEXNX7h0eT34zg/pZeKN4n1/XAS0g0DTQCYzv9vU+4f3IGsfQC/Ej07dRnSrKvkAtdxLCknhhNrctskmQrxUAJ7W2yXK+ZWiwCUCu2RerWzSCqrd+dReDrkLTRrfFBUt/tv3xCve6/6wt5lZHFb/NybhCHd+Y1ztfTryg/jwC23eTwTQwyEIensR+sv3DzBod9rNFl4+SKAExvNDAIR8YMdqkJpwQTh/rO84khgeUhTFQGmGIx+H7jhDyN28J9fYwXCXZ7wo7h5bcRNJizqFAYG3xl3Ow0SNl4p5ehsGDDil8SvkGlO7ejM1FXEbXvFFq7GG/5+qG54Sdw/LrxbVzJFFJ1Y9nqbuaDC3ucbrkbwELnF0m6EwLC3y80dPXC4qFXexv1k22uknGoqbdnr8S9ALGRTywKgelBmGcA9sUtdr2mA8J3zYeA+GnyS1SZiNjLCdsEcEGphljZqddHd6grNtpHAog/0gFUPBsA+6CpQVz4KxwaSvCkFcIDSvLiOhDHMh6+JzTerWa8H26LRxsuivCsDqqin6N8g3swAPwpHzlwr+DvebQzeUo5x593iVDgNjHPEONT81PnzMiI7xoFZdxa6nP2vzZa6qBTrJY1f0cg1uIcZ4UpTVRpvSucQ3XBQZCWc4827asrayyeB1T6pg7MGN7/E762FglL+OtMpROndXDwBH/FOdVECZHlmHaYClyB4NGEY1afJuJ/589rTqQPcq+P/0LjjrFEhwtrYjeM6YIpE52Jy6+9lmNBJJysWyP9fdvP5zW7v7l/yLBNbJrERh/PeeQvPvIG1voNF/iWEsAapgSq15ZQakrZ66eE7zShpp87j3C0r2km88jIRh2bVyttLbwt77zKwWHvbibV2h1rKboni+iEiq09hHepwhumuj3AXr9nC4vhbTLrWO40YtatBNKPizVmJh8VZyWMMhZ7MAsbjoCZnXLit+Rq6h1zIEQK4+VtdvN50gwS3Z14AB0ZZkiTSqIhupHW7sHCmhidxcY9vPq6WbvYMDb4Ffv/hv8xAOuzZtIMZHjWVR4IsJviKc7egKxHj0kArJGNTmDXWYJqlgWNNJUCw6qNp7twqU88rTH3BEw3+RxRgd/2trUviwr53dbH6FEnZSxfkLL3gyNdkctdFDVlUuOmZE6qvow8smS0lYeIAyxARlZZjk3LrRkPzAZxUlb43frJAxpHy+NnZ4NwpxmXqPSVGWIFpwBUY+q8zmSWyT9SEU/NpZSt5UXE/MTkiAmgev8RY4HTabZpYHspoC+UxumsRWPPY0dY+wSHpH8QuZ6XOfYwsQ41g3OUDgvwpcIm2U9AlvFAMHCdJqawFL7FFbPeAFQj2IYr6X64HguomhKQviNR6Oo+jWyf2ntIJe0yEHT6LjRy6aJda75TD2HO1YkaxIPSiSBiMxi5h6/lVIgQXdWLLPcKkjoypzXX0tHJm8Z/l8k7Tz/8sT5ja1ibPUTfrk8KhanIV1xZoUXnA+2O8E7I2h9Ej8rYptiuG28MeoH3D9NE8IrAjXLWpjD5r485c4x9gw6Y5cM2B/GsQIRcvhnlnic6FjGs4a9OsJVBROMGEahxQi7kMAhCvdviZDSc+PnBWuCbKGKdMqi2TT3N5QmM6pY9wl/v80RfeYE5Wznddpj8/soC7lJddFgP50Akb3RmaQSxmgdehLx5Em08fM5D63bGAVLD/i94IKWcUFDhn4P8cMcYy+6cgF1fWG2KH71OpWBETPFxKihuKLvLq3nFhYr7icPD4jsVWNex8fa8cGk/kROWgPpCNdqcIpgpZSMZsPrMaU1viPZ23zP6IWAk1VI9epKn3IB4YB8nUc3xfUSrfhaW+R2ZQ8HIznzVVbCW9DLznBqRlQM94iwtBanbYadWcuIHjEY2cYUOlAjHBoqhVU84PaL9HdGHSe42ZFFDvnWy2yJf491yjBrlQPIj4KfgBK9yYtgpL0t8ezOZj/OYyGhu1KTDOZccbGyoILLq5mYs3ZbZndSir91eltpOiYU5YntAmB2YgWDdDTsWAe/hK+feo7jIOuhSVsb2WPWSu0Ofugrwwa1IKUfDfW5bk/MP8NfT1E5IbLub+1bYTonlIO/qEO3N3JnbcZ99xymzOeS/B3wf7F+lr2BebcFl9vf67PdV2m7PQD+HzWEA1pJNpwBlkzVu4AzIOmI77Zl9sE3YVTdu/Qy/Ls8D22OYZgNE5hOtr/sTziATf2J1tov2yuw5stSGhdse03zGtZCcO2oRJzHRIseSaD3bC1xxG1/fMGuLvbay6znnzivxZIsubmsHgAHWQIfPFl36tTzimR7yqFj9X9OY8HDvJA3Bz0OfCIHiPjO9LRwbkcrHw2FLa7y7XAz34Y8kRla4t1J3cjeasDIOtapfYiEopnf4K7B6LH9wxmQNm56v3AVgHT7TLPRQuC8pLM+ZcfdDraHx5Jaz1Mec3LNxc3evNbwr2KmupoowLpPm0Y7SePwMbKqfeUqD1qFn1sFV6k3wIk15x8fpBqsZP/c8twDNI0aWi/p5S8NteBrfB4p7n4TV7m1nouoCG4bCdXdly1TOUFsLSnSua5dQzQe5PkkXHpvMk+nRA7nBALoG0iwiVK79s5dQED2UXZUsLUD2SG/hAOKSbcThuV4Uvxu+1zuAerrroHyZ3wuLs7qT7TeJaM1sgZD1cLhR1A9ckyTxGV7kyOQac0u4rqUywpY9jNoTN+1AFHghDIt3NLNYAjZLVu5alzDLyWXS16n62H9a5Ee5isrYw9rip5IEElt7DU0dksKk6wc9qDFIPQOfTGr3MoGIpwhKhqKVCWgdyoc52K3W5x6IaX+HrHYN303eDlvFPHcBZi118vY+v3NUPkdYFoL35fuuZG9zuBNEFpzw6ipMlnECLwC7TnJiAqhb7P7Z/kwOvXgvbaUIIDIkKSvtge0feIZVg+t/RGagcH3JuKgTBdAETgRwUgNTn1hOWF1hXcBttS8FA6961AOwGumBz/X27lStCfea9MHt9GrW1SrwVeGq1/unShvug4xFuUcDEUq4Zd4Iibm6pmsf8B5ECpfuCKFdDUVhqtdQoJqGNtG/MHlgbpTPkN2GZbtK2tbu6HP4qqqVDDfAKk4HMbwdbH7b6Y6rBQr+6MvPlUjujyMvQve2FD8S9bBZekQRSOkhwg+Uk51AINfHznUP0M4FRkKoPxOnFKGFxiHIneMQ0XZ8py336X3A2lsTc38ON19s/SHHXg2o1rOMYTH9IFxLgVP6fPMOIRc+ZCywpxy/kNtksOOzz04AGaqS9T1bliaRYZ93ea15RrGr17FlVidwTdWVLGCHWSjsTwwwcqvCQ8MS56czb/Ls7Zhd3hlw9WghfLKGja8urC/kUW+SPANID+P+NnzXohy4yGWDr9p0dUt4rwMJcCE4mDPq8t4ugSOdvo0gRwJinaohxDLALUmiE7FuQNWDOLMBvwhjT72Q/6adXgZzXGPhUUtSCZYM3NY5Tob7IHB8ADDals1PAWK7MDlh3+4SyMfb7H63A+prvP5fh6vBh0DYIScPmeYeVPqZ6z1+Ngfw6lfesDgS4TAc+ufsa9NoWmUkzXAD8YRlrokw0Rb72qHbLp11a5ZLY/+nGBkUwjZ7RSSbQsgPIKhsJ1+yWeOcx8OTQebOY2AGDFUbRVXFCmW4+xQGyoIB0FKSiMe7uf7en2ROBnz3BIqurRLCGUi+psr+6B1YvfiYKObw9qV4yc55MLDuiEDKO4q8MUA8ZdzsAML1llPCxKxHwmpZH9GjxN6gbfgDZZ2GwZ2+X3ClbhRnG+pN21MfKFI9cXRPQ9Ox+GwLYG8hzohz/9AuYhh2oHqCznzJRppAsHEDYtM7YnLGEt9EbDRHHqE5jm8Zq+CEaE3ScDWtwS+j5ivRczA5FDEdCCsUF8k99gKXu0EqM/HZJXeSlIPL7FfQ173jZtVkV/kTd8XdRLyqRU3PB48yz1iQ++W+ipMyb4VdXjRcNMwq6OEMaei+bPrrWiAIqG4opdhbCdrHTWL7hoP3ju5gk/g/fPcgQbcIOcj8vLRZL+Czl/cliZziPjE3IPIMKW/22NSWGZd6EhmhAFz82KiemZZR6qTf47AAoHe4B4xVAFA9CEKsf5BlKLDaKPubnFTh1yORB+tLfgpSmCFOOmwxDsAlR2plXZUmWWrPc0/tseXp/YoQiz8K1ctdg43CS/qAYO2Wz5gnDTFfsjMEqdejpnTsWttv255Mdyo3UySLVx3z3+zauXVNhOUrrbwPzJLdj18LFXCsR1SyRavgT/tn7zBVO+TJduGDZfkig+UebqiSLYG6FXVyPrzyc3tbfBA3dzL1XlxkVX8kzGJHASIlx0oeDjbwYEKaAxcCcdAcECAYuofvwJTpAAEBhKHa9oJTS4azCDhxKwjlExxoIEf3ELIkWti+rFr/cGaBvcJSlkdpQpeS6PWZEEDU8QjJveRsRgAfyAfESQp4jMu3L7zHVhe89r9LGXjKeiREqex7lynbysQMPsXZC/btPFg/eJmu1mYONcTAx7DRher1tvsHH6fD6+/qGYeXb6IkeXG0ft09IOSUCCk8+27jeO9Cm5PKSyHmAnvfpvtWx/RYKBFBOExCPMJm/71XK4ZQiB9Sh0blQXw9d2FQi8DDeMYzm1K6521PnDZJf6JaD+jLjSt3WyxT9psz7w9Ty6NmlVFmd+BBQB22ij9llnuPQz485YPY6hn3ZjzfALZWN+hcVT5Bd/pYl4PwjFj+1XLOUuuB8urQaV+adIzL+XItKjDpFvXxvXmQZ/A7pts8s++ze6a3H/CPeRmYv0O/vq7nCe4LC+ZjKjz5dH6D+J9hXoBjEdIi3ipJ66893eP459kTADNDZy7OUH+HlG5pQXcrHVHEuiH2lPrEQt3MEWaPLe/sNWPLOyRpq170ALpTkPCIY6T4MGl0aPtT+ZWmSXVz+Pv57yWevQ6g+TNthJYY1nu7xoCROj44I/HAOKAhfXEVFUn970uVZi5kGWL4ziN6Al33ODkXLX1xG0UfRo1AEXkLHDntFihalBV01+0+y6D4/ja2uKLqqOABtu4lHTfArVu1gHPCeg/xGhDdkbgAsEZQBxQ9fEALsK9VUaZAAaoFNT53ITIwUSqArS2pBVAd0WqUJqaAuqHbP1Xfh3td66RPcwt+4p/wuoFJDodHDWabGFcXrfISYDXjI1HOFuzwqQYxkK1nmwarTiafAte97IMEdeP8wHLegcPzBURUe5XoTmZ0LRk5gGowq/AlLBy21I5ys/ErMwWBoCt+JHNdu8ElcuPIExSbXdMJW/HY4/LE6vWxR+t+E7RbrnF9d1+zubKTTi0n/OjOVu5wrB6ZNTjuxZA6XA3YDmYMihOddYzI/vQ+TslDf7NG/V+UFRc5iMbBjIdmmBnZnV5O5xNsXfLtwIF8wnUnYZ9pgKV2eiQ/Sp/17QCsMN44nAGk40jIyCUGEfvhwQ3Mu9fp9D+anGlYX2KCPDkRkIPcWMWRguRvISOKfss7ZS0ciYER+T9r7w6uWYGRzujSsCheUZ7kcBNKAzKPc7tE+rwKWs7+sxx1Zz5QfCGD2afA8s/zn3B0yBbJ5OWDLblcTHRu8j0VJgaWkQPPUomOtUpL0ZipxMdW23uE+VbIJ8lXqGW15jcjV14z3vI9yzRFvmYtKigYls0f6c3phdRIXZ+AvMjQ68HxHwHqiqsFdh2h1TWPnHt3FH+JwU7F+QbUJYmDgMY+mO9H4urcTlz03BFTNRDudT3/b3PV1aH2o1v/BUw11JGJDtb17MuENSC7zngi3Oqa2N0NLczcNrNDIrrUfo2B5dudE4pNDjxOHCanO5YRLpdsNBkY7uzFIQxLoBw0HY5MYNEjWmcsTgEW/FP57R/JsxoYvWPKUXXHlu+Splfb6Vq59Hc7LDRtKw5WuZy+QdkrmECUFFIvnoQ7jIED6S8fUehukUDt+sQDFz5Y6VIzKoUEPU/4GSSP1a8ix4b5uoIoKHPglU7GopDOrHNdxgsKfJ2/Kv1xQZR6uLVwq07l3qk+mYfkJAaiBepprnHdz9t4v5bHme/M9z8ebUUHVxACHWqKY/DtKG0BNowSmuiD/im3DqGs3r5/Id9Tly7gSPbAFvoXTnjlfbx/YvgiyzCbst6ip1i+X/VB1jzBMO9tefbI6ILU6bCaSMCVmaDZ1/DPBiXMvLKUnb0XJ532t/NtAdmheodObz1DW0uAH+uFloRt+06yj2x3J5JhgHqS++LcRpuY7zSfGjYBKE9phuSq2eP2MhDq4ukTSNx6ASvKKeKbGAjQDn9UHI1PbjJCeRm2zsgHxCkOZFqdGR0DMsdX3zd/yzvVtCfFR4oUwfEVvGB1VC6fXJXLuDXI/xsKp60tz77zeTCtiboejVDasImYsZDHsnWA2J+vC2xpMCVWyigRphaart5YhImzsppwyAsa4NfPJrbl0i79LclemxzaVxFLFZeX3J7tF/PdYpc3vMK+Hs3eC/ep1UC3yTqOy/niGQ/wL5THHxSLTSlxtofHbZQOoNPNnJ+uR++3NLbKXRFEEXpY9A+wEPi3ZdgPVDf1ds/2Bcd2NqyJuPV3mOb9kzvDCjeIj0a8xGpuKJGBOMNiyjNaOXu63hPrf8i5DCdLIoCp4XsAGOrcv30+jF94UuaICr6hjz6YmsLuuQALWUCThPtj2r7Qzgr7yV90N8jMcLCF+awEDb80zm92gEXF5OFenQEkFqoHicHCjxZv3RMd+ncIHJQX1aW+ew9sbys3vBKHRdoLa/8nOFCEmI7yWwPNDS6u8FiX4smMdetKHxYgSqMJX+saPu6JdcD65dLpOAkEbtTJoEtMjvoyQQ3g7nhWvFjY+Of4YITzQdWp2bvheJWtwWvQlhfFPW/KwjPlH76dPKaoHbd3gOIs18oS4WbEz6mTfgr/yL1kjCt75Vt5UK1120XHcHbMMP0hB7kkzrJhGHaHaCerxJXQhDmAOsrI4GDToqGvl8Qsq+dsnizIL9N+JE+mpTm7Vi8ifPtxy4BlsUw63/z/dr5FY7xJicMZCKI6G5fF9ltS3fGzWcRt3Bmy9RzkVESVzltc8evFqOEaZu5HzlSBg2GUuTW/tJHoLcjF7f268571GD5//WdflRUIk1hwg1eDB2MfTMOhZw6eny3MXpaAr28Au7GO7AFxQREEGx8QlAipH0PO8CoJ4idmHo04IHp2DOGMVcHTGhAvf+QU8vlIiIfIMjNpCl7vwKVM5s88uoPs7Hd5UJn+0NEbTw+iTkfwiRl96LRHST9vHet1eXdniUX3sEiS0na+ci/BoxZt3Ck+iCzmJ4egJkbblgYQ2UDecWydhiEAbX1NfYbnRg3gofjf46lpqMQ3TLME1MWBEsP3QoAzmCS0rNo39HMgvsTmEbot5bYwiboT728HyVUQtzlszkkRmo8cZunlJ8Q5IKe9DdDOhTP6hkOt+GY6VSfF5dtJcmnCDGM6t24Jvhq4t7OL87YEEEWc7rDyL/OVveYbV/rlceVyn5zjW276+I2EB9ebUxTCqf75Jgfx5clfNl+VrPr+q5gx2cBAXPDfosbDKW/JPIA7kjMXRwaB+wN3wwRu+mMWxGopZA2+26ljrxS8gIPSwA0xKbkyiPBYKbXbgeC12efD7+hfu/PxE0S0vGDz/oXJ/Z0scL2V1Mc4wbEbMfuXTCC/M6vhqGBDbM6BIXypjpY4hVSgTd0exVcmwtmGRV65a/kTc0oAI883MVxVP1KZH9aBRYIKsnaHgVxiOloxrRUWwrPWXJXl23AWZvffmUrOCdjQMAMURmmzXl3OW0KmaTBwy32QcOwd838JA9kisaDZD/bSSZ5OuRysYv860oX73otWW+vUzY3vu8U+a7DvFn6QMGcVoAWhSJ9MbGc/PXk5JYDdyc7/A9QQYBBf7kRKEnE6ulCAe3gksiEGX13hs+sVPUJSSJBCWD3ZU5t/FGSq/pPj/IR6dow9zvjI9yHDzAqba21qdLMAjoe2DnUwTwgSy4CbO5/B+npp+22BbfcHz6Y1y0MAq3Na+9PF5DlX6O/rUrbgXtrplQOGwydS+S9Z5pQ5M3zGO8ocyQqjCi8UQ8qZ76aXJ5GhzUeeFNpfsiJbPRGA4qH4dzhbcZ09gy6g9JMxCxmwMevijE08WFPossChQzsYAmsYt/Gs93aidygybyKyZvQZALVyD3xuZD7agUeNLFrN/5zDAcoC6VjG807F8vO0fY8AwQyojSgySFNfWSzaSOmPkEAIhin+cpApE9MBz/lDP6Xv7Tyw3AKkO/nbsR2oMnZXbqKAeifBhrc6e3luplyQwcnPpdcSVCbDULdX+p7HIiFnLJnjzjyhug5pk1aDL++Tte6REMcLvsc9d0NHlAxTkB5DyFbrnhr2QWboTIYK49lJVmGW484Z5cmPApj0tIW8l3ZKbMrFAqp2gFnXBNYJB51SnQbAew5XdeP0z5cWz53zAeKRpgT+swHKi7kpm8sLc+r6PM2dVbl49OiYxTjpY2HNBKLb86CpmU1oC5bTqHnah5+CfCY/tiVG1wlEG1081xts38G2PwO0X0tlxTB+fz37QPLrMJJiLG/f2ygHl9UimUE5hWB1qdEAIvuKT/5SywVNAMLBDzfycYYOvseL5cII6RHwy0kDQZAXdPm6tBJ7hC+HyWAD2eUf4/u0iPuq1QxJjDusoNBnpwuSzLUiAkE8sldEybusX9X5LXzG3UUnpcW1veJCdzvwdXifCWMXoKvL4O+oCgfV08QdIyypQpM0T6cbkRHnzroTZ0oAcZIgnIUwrB78bKcOkh4xRLvTlcHI2auv/1aYk4ltSjQsoBQw7nSxQHQ2yWQXwB1ScrwwCDqcXCIMoF2zmSzuW/nhSyyyHnJsuJpJqgeMVGXMs2v19nlNQAJcRhdTivBA4Adjnji2wAg9oWJTlZObJ+jCvFMxU53fHEKjPH9KK1n39PCqLPilZyzZwvFnlnN3CdkffnK5n8IMYoXEkUcnFL088aXHRernx/53ox6rwg4gbM6I17JHiP3X9AznshHUotlcvI7hAYouJ3ujd8artZgwF+ROkQDCdX4IpUMEwLsNazo66nPrW9Z4EXT35S+6tyhTM6yJZfpppiGMa8o0/ASA6t0piPvYITzKzBIQSeMKWUskgaRNtqil/qRCjtO8iMaKPjGTbEWKJ4RfXKnkjieD1Wz+sJsLundF121UArqrW8w6PTMVqMlHRlOAn/VfdHfyxr/5X3mhghjlZX+0nGFWkJQOsCH6Oymyam9OUZHtN5xtKiC6ym0OHyotLizxLVNN8qk8ERYu/En90TO+puOSrQvCbd75aDJffnF37/l66M2KiN8B14PmS+DXJU4LZS5qHN/zEaD1qzxeh131ZHaX+mLf0R2fS9OlHOFn7OfaxlhewjxX1+bMA/Ibye/c+ORNCJixx78p57fFkqW/iHklkIBmcA6CywpQIMqvWiB6WRkqDB4U5rvRFiYBoRKilKeV7WvGZ6op/p0Ungy/PyIY4nGqCET4VgE0OC1N8HjF2rOKhJpzfXjolkdUrwNBsNMIIFGPLLbHgErsulZW67KjAbjdJDiZMiV8fKwgAZZJcfB9tIQM2U/OiqDyQMchA3d1EgxZoDwEJB8WwwiRCkzLmGuSM0y/f7xBiMK8azmGbuohmOLcFqChT5HnZlAV6PaJht76yYMzjY2w7IjyTd3KWGUZJ1JLsdxyrh0alX/+w3xbwZe6yDgbRq4Y5blT010ObH6aBciWXg2px+rVZ0VAeWaaWJRLc8GXUAP9iC2xbxON6ykajCujB80TJaiOWpsVFko09xqxcAO4t+GCLxmhnPzzHlLlYsDLA3Rf4znMQDTYKhXAgz8YwCiA3C1ndAYh+KWYu7MwqOTG9LHROvKaFc++aRQ8eSiJx3ih0sI/35cEuqGwwwfq+vadkfUKcfmu5+LrkTqnztYcAgt0BVgsUm3ag3izYJX0b3G9/ZaeCCFLnyjJjrSIBWE9Se7gwEX3XeXkqJkYCRPXxIDobj53SThqmgnQjXRwquv3FgvZxtaZnY8biAQ7nI0Oj/lHtXfHfb3C9/ziMzmHi311v2xGOtrzyucq+rwxJGOQZOO988VTaDP91MxsG3cUd0MKsRc566Xt7oA9ZlfMMfSkTmFhAJr6Sm+41023AFnNk1uCbjRFU2pEk1IbzkcLub03nZUDwDXNlhPHAgCyViZfbLLj2pSpde+OO6iOnzuAqi+TH8THuvlSJKBX70kOAaiafQ2RGR7SO0ZvRwHa3fxmLURdmimAazXZK1Rnf+WncO/GhLy+ouJcug/lJ+lJVDZJl6KySfoW2UKat0NGa1QG3dGMQAGQak6fbeDoY7GCp9++jKG6Zr/Vwbsgd9n9BlHv+3cho1xwDz53HO0MIMsLpSNF3taQqhithFKDK/B+jwe3uxWdz1qCvgX0q/oZr0GzMYYkm13x1outgRsXQmhNw/zhh+2uPy8dLFtRdCflar6XR5X+2bZAUXYSb+8MxqV9to6S2dccAYPTSArFZmKcJdoEVLyJpzLTLvbqZZCiSZ03gC4ARS/E10i8gQNi+RgzjnUUEFWYDdCLHrTDA4T3y5XRQy5U0ArSJLZJ+NTLfiieYFgJo2kIoukDAvAIfdlacilOKoGoStJqTgsqjvCGaw0Y2qwIvfBsKNDi7pcgb7jHwAjA/iBFIkCj3TZN4Od5Ze2ss2GczH1bgd2e0nYKMtThoXodBUlPuTa/aU1+VlLwVk4rZ+SvzdMgbzYiCU7cFp77iS3xcSO923f8HthAJdUDAziEga0GwvtUHL0d7tEDyBT8f9Vuw5S6lXqlUer8RTtG1KrBdoD1WISoDHq3B2GZIIVSuOx94poDLJQNG0+QaV+12sJMG37Ti6AJIfoZSXg06vu3yEIfDJpUGETZtOEbu/e8eNoeZV/43mDzpXboFjwYD3wfRQU79CyEwoXC0EVHZzvSKoWzviK9S0IPrgQ5teGCeYJ5ThGo+V0R6xHpXnUmH2h/8Z1V2NbzYeT+YSZ+Az96+OMlJc0cA2xuAiQFBkogXl0XgASo0+0J1+ChUqNTfDzD421v+nABY1kGwg7iBeyf5WOdxXzH2qhTgznyUSt7lccbeNzrPWp3PmV1LvQrut3LM7xSnSK694K7utDhOrhbnBj48KSQ8KeqSd9IF7PCt8UHP/nTGQsWAaAOCVEFA+x/IlXwu2IGy70Tpg3FVMK0nv/K5y2Lw/v1wqEMTz+jlORneNZ8YkSi9WWK0BBH9ZQHMZ/80lY2W5ad+mQ1Nb9XzXuTLzc/EnqRshsaPPdUVthFb+/TdEdihdT83HsW4oumViQfptwRffND2QnWHsa0px7TDrThrmtSu5DJb/ByHTky7L9NDcuKKI4ygCM3T8TMB5erOUnk6ztfO472DN7acoVTIw9RvwPA6eGQFjuS4yeB5S7OJFdRqxC0LcVZMfg3c0eclDNBQHLEoeDg0guik4YBgUqzkekMMDv64AbUt5gmPmU/QPMz65rJcF0mDJIxFe2q7Z83WMltoW9Ngcw10YjZvaGThTyNwIN75KsOJPBSrjRhEPd7kUJ2cmBmazxyAJ0+kPypIz7zWZ9zI6IuGzVEDVFwewUeAfUk3gIUIzp4B9xMnFgGrF4OPs6fIdvTIjiEVGKepnItmlhG+WY48C3nX20UjvDMTHFQAI4pGAcOAnhlVvTkBaBDZgS/74T0Cpcnarbn43pucyGEGMTs2D2NR58q93uy5KUrhJ2aGy4HVJyG+SSyUm1o+dOCG3WNNArqD1DMxQ5xX3/HrBwfhMzkxUi+2tri7k/upG3D2DiHzzpRmxqNjJ2uSHNDx6+61k6I3PZW+UKnQjRn355qoxygeoa0NUhw+xXg+K52+/Awk67PWQmGQDuhc84LUxOGKXyPfKkjkx6ViTHTtrEzSZIpi2yc93qQdWmTLk4gff68f8BgpZy0v9/u99vkeEvWc+u3rWN+NNOKgNMCzr4sXDA/jRUFVf6xQpRabcKDDVUtY1hS1hQOrnh2ZEf9khODaTYxo0gSRFjX9/LxfJC9pqyHiM8Ri5bpz9WPdL0DZQaG97esuhMS4fUDBCe2JCPAKb0mmRVZ3Fjxx44/c/yrP02QTlo18gDW1ClNEx5pYgiaHkeVrgYMXz/tut2RYoPTZUtlQboOr+Tp1SLi0oQXLm8TvBa8psl7z7KCQS2R+LrEWEUgcB21KhtSYi9ZmkXGC9j86omRisgstzrOHEvSCrwoz7CFxEdaW1SaCY4FLhN4myuoRibhiaw3+UXQetybhWsNlC/kMGB8OsHsF2LiOHwfUnSx5TVowNsSuYLzcs2cQSeoTlFuprxvQTEoYS0rf0ZipRU5N7tzL9Rv826Vefc5WeIuZMEYSb3HTzlqbye6OtNFkmvkETzf3Q3QV2vODd+5+aW0ez9Je85u0rlhu99v0QtMqJkVHZVB6bJnO5wbjtgkCBwibPxRqQyFKPVILLFzaIszjpzKBuiZzH9s3jz/KClxY2ULzHruK2y9IGYQT0BeOndpdNxTHrtJnW97pqjSQLIzBmZp1GEeQL1QaoQBMb09T/0FscyKDlngE8zyygs44EvWlkTjqofbCl70SMHqscFtY6DXoD3+ZrOQ3rb9CKp2m/6/YwFCMt3yPDv0KiCPpPsugxzJZeMPCzo7iYeTO0RkS22e55IhyMd5rEhPQvSQVSddFMVaQ694n6RAfq5IlJCnuGlaQzS9LUFo2JEHTqVuvTzT9FA5crofDCXGrlD2XbtuPlHQ+N9LVBWt90bZZWi4VHYDILkT6xLXZmk5rsm4KtqqKRUcXYA3P9Lar4CFyI6RjRCAZURZYQNFMoHVxSE/lAUAYhBdLoRwEzHaPXtcuhV8w/BK3pNXIYKU7hFjfTASviNaocBdWFQSqS/qlyfKaPyQq8/sd0BUQ3EeSxrzATe1DVIJqBmJ4A3Ba0XIWscuK1QoD9gNQ0R9OtiEbtBtRvDC9y4f5zP/tcyJ3e7t8ugMm9K8MJSIrV48fwGIby3FM0BW9L33esjfUSk+gKZ6uLYpA7iltDXy4P3jAbdADqYgNtz7IvJ/ZAWIiJjekA8PPDKig5kHRS6NAQG+blSNUEbXCET/SiXESbZVP6xVX+fr0YEhtBeRcM0Gf7UTfNeMi9vEc1ogN9irNodKimA6m8rdD10UMZQxgvluJY4C8GCeXHoAdEcHg6zWZzspIdKYKP7uZ5mKl0UyGJSZwWRe9MIZrKY6mezoLW52EwxWFsDNdJSyeYU3u40wT+YxOPthBopCvHSO9Az5pnoj37nrzhFvHGjONKCtgOHoZkv/NFKLCoiRkyqcVNuvM/iuuFDr3GZUVQTpOqPoouKNCO5A2wYKqjDFJOJWxP+5leOUBJBKy/gczNeQzPvgdpQzRYgMvlNAXlzq/FH2fp0scJWhev4D/GzoDfBkI99iijKZkOQzmyBTplusOWbg/A3COq8esG4QztE6nJ1S6XldMqBAV2cMj3NBJ6DdHqEFjdaIct9d0LFxIC6FpLpCT82gOEGP0NjjQ06uDUaCwaiVp+hmCkQvsb/0LOrCZYNiXall8GfJWstQwJaSC22sKSSVS8NRuZw+xq+ZrdJmCUMwlI5G4SbyEe6wRh1PZxBVjw55X6E1vPp1dnkgrhYrlDRn2Znqx+e05StqfUKl0e0bBWCgp75bx3ONta8qDw7xlPATCxRrz582wZAUcYSZ4eziYxLhQxyXvcidS3iOfXAMrh7cRpL3e+Ld1UoSfPVrqvGljrtA3WnUujb+Ax+v3Fu5meF9s4E6g7sE//Dej6Azv3cqj7oziREjPXK+akzQZBQPBipHlE/33BXpY3irrwFna6ptGYzYgKgVdJi015uIO1OsnHwlILhELOnQ+3ByVPF0jHRgEK5qWRf7MdqYRKE9Rt8jpGoUs6m6qUEu4Gf1ghLBbQXM3lPC2EfBUCX9k0YnINo3HzBUBrcSpxYUP/Ek0iUoV1fsJ7ceLUGZiULIByOPkN9EiTigc8XF2z3oDKEMhWux80wUfN+VsAaJanDoVjguY1T6wGQlu1dDPsjHY/kOVPIV4UPaVz+j8dhAjgOen/+hOXhqRK845HmGxGZDOSOI7NJ5ozh6WbeOcz25QW4LVE/FdBGOfrxJV17gNySdztTGm3bb8utsbaUPVoT6xzzqjs1Toua/WOTixw6VnbdZESLDn/ca+34bVVs39zKDASSmL3SszmQAM+WSwMPzMJhUdZKvnh8zDkfQqA1lPOIFxHcSiOlR14m/NqFR3m1j4FYLwKWFwsXQxlhQFzjwlU3qLQO8pEDF7M92gUAsxXrlk+gmODYdpPmNnShAF/j4ptF9RATfdxs7igGWoPQBOc/K2gLHaeBhFrmyu1PtpNlVLOWso24Qcg0rrgXpKlPXZRi4BYDqdnbwuQmPFa4uO/aR3nWyv/gwBqWHHqLeMjy5sl3lG2gWag28g3H5l4dIXJzLA/h8+ZCXwjMPYnpN3fJ02zUBKV/jIaYle3jfZqjz2hGqcxGTPYn9wF9j95bhHY5bCtIwyduJ+Sfbbxu5YmZRcVxm0zdwYptNvvp3M+fWfLfs/kbl/SGNIkM5xCXMgdyKsikdyLZUJOCD4+IxoGHwkPqxctrnDyrNbJbdgetNAIXrSVgDOpVqK34A6DZeH4ee3XtTof1pwL94L3gXBl8DbN2lxlkBc9M+uaRzDYVdoeWurAvnayYlaJPqyUS5DOkegA9E7bDQu9w5tmOq4wSViHWOoG7p8bfse3vKCCmgaocaYvqdPRQEeTupowq/qiJ8ZhAz1aIJi08DAvIpAXwtNQFW252AqZObnnnfNQUtGy6mAiTnFADNSog8oXYnnaPsn3L8F5VST9KDxEECQBu6J4ZsS3a0O99dTluiqiT+x5izMoiIpXqIaWn58z08yD9m4A4JSJIoW5rlZJRBg0clzxFKDl1sBGcQ4/0kgvyS2BsRw5wnLF1DdyZy2XDhR45CHVugA/HwJlHPP6Rz94XoxrlVLbOVexAV7SAJ9d8NS8HxZp3JAyayYKgYH07VMC82zMdnKLue/4QuT8j+yuHyB2Axhw9noQ76RjXw9khc7TPeaIB1Z7+Wouc76FdT94unKhDSL4mSBSpDNxPyHTsKGkSOB0ocFfsBQAtM8/xWXb48IzcBq7WCVCVieyoYPCnGoVbTtxcUsi94lqxZlDfaUv/Vu8xIuPu1vxy80U5cHM04wvaXn6xJwxloom4LyceCNv1h5wqaATmqRA4qD9Hj0mc71kbCxzAF/BnOfGGzRVohgoTpVnEjZh5QYwnsEjXgbPDWqGlNxfsZ53RO1bQE9zmgpwYoPEtnB+KsRkUjaz7rCYKrzas3Y/d1JNEy/oamhvp5IXSyNNxABRnbXNfu+NINyOS5t+gqBCpHfrxadPEdvIFYSmV1jew08SiBniJnFzMCn4Haofisj/1Hwx8U/yRM7OWPb/o+371dwBdpA/wFU6T+Jm3++GL3j282YXz7gnH6TaN9PEv5v9YZ+XWWUqXWGZn+XlvGnabJPPlns2Iyv9u7+zj8ter3v8Ilfnv4s7EXgq1xel65oJd2dMu/94xDefwH2aVDgqFnKI6+6Z5i387Fl3TespdB1FBxcMiGD66YuI4D0i3dPWQVQChLUHe3HBjqZ54v5jmo2HhwG9IRgZQXZ6CarzR1cOMgRb0/QhFNF0DBAA5tKYxC36Bc4tNZkj9Logz3ibVplqo2lXrPopfyoESVaL7pii56LuS+VM8vab0Dile7Z+uVv8k3KiKZZvhWO6TxkZ750/dnPySy5YqxOPS/uAiQFSMqypLO6y7vNaSOIsCEtuh0si4x2Qb+JLsk62U6uwmKXkvQlPE2uHWBbpH0yk0h2BZSfY3Hk6va5zW1K6yCHchura+v2BscWdbLClNkeElTt5SIHkbaG6QfxkfXw3re400zTYdO+djsinQ96VPiCRCI6TpIsvHJtSAdVSyDcnkzWrHDZGno/jfjkQtOO4zXz0G8/uQT37pYB8rAHilj8yo9KJe2YaCXmFu4dYRpSc3DueTy4C2lIH8lQ4ZIanyJ70rvORdLlSXDc3Xi4MucVxqdfaeqx27UyRaDm8TXKIyZ29boVb1FS6oZQbpAIrJWWANR9wHgha6JwoAaWXv+xK6VyTAjCofvpdUbiF1zOl9S0ZZ2GHcQZ+se6GooAqhEv5NQIOkihxns/isTVUDO4FnszwHeP55EF22MomsepySKuebXG5oHg0cW3BAqO4SVjoJAAvtI6fHZfOmz2NYk1+kuE8kEdhmJS5Ix5JR7/HoEummpzWzOaVNsednTEdMh8uUkzeh4o4hZ7DxuzoZninvV6iTo5tedgtTQULLA028UfWbI0tuD5VXjnhtYcS3U8fp5bJLJa3dhx8MQ809GkWuiwV9YjmUb2OlB7aTU6WAs++Hg4r4G9unIksr6m+JrtTS7bIkah6CgiJOBZEHwijN+0qfDIFV7OZykdmQIsLu4bgB5Cv1JYyOjgJ1piysFjCOsAnMi0xBu4flK9op0aHnNPBqsIQGONgqIabTn83KMizCxFj0yLVg5fqtihYEV1F26vbdydWLqvbUnqko6lnhYFwCn5vaSczAAppOwZgqfXol4U0Ewv8m53lZp8pMEAMupASqCi7wtKUn6Gsx5kF/A+mnNS8az4TgkRGycziUxvonbgtUvJyY18bLLSeiFearRuDTE+UWouJLWREoia5HM+JV77KdcIUn5urQI89rGwxKLUTvDjNo2SDIARMmm8kTHGSfOQ4JE9SKIeOeqpqO8S/KTRorYumNsSXY7Kg8EoC/Zd/g4wLdmWWAQncJ6zRYUjo8AWRQhsKwE28FFXJucF1UIxW+yG4jBlNSKak6XHpaIraa8O+NLYkme3XGHeoZeGIXkSNQP1SAu3vqXmCnBx0v7fQEsin0kzBhEONVKkh04tfP6WTHoBA9Ic/9PrlxJDGv1WVrd2d2RHoqzMqF45tTAbvbHWgak5bLxc4tyZZDAqVwW8afPhPtCmDuYKkPtJgrM3G9UUUGiQUOkQ22z4sstnwQ54smbk9l8iHBOR2FnQe3WxG4NfLnTnGnurmMyyI28FwFuigX6XrgF2L0xmSgDudXzsNIuI0Dfv4fkMfetOZUlbDVUdCbAhmVu+ysmbgTZ49UVDW6W506A3dV3nCBwzZeWDTlWn/QnIWMihV09sD6sKDfWEz+nhX0hMA7FXIln39qsDRrH+o4LP065pXHuFdHJGTn5bqdtAzzxhLKQPVeKjpIg6l96SG8axsiZj2rFI9C2iSmKmizQc0y1AHzAwGFNULm52PgssuPJtG3+HHzyVyl6jZ83B16OqDIw96RiRnGd3GskjfT9tqGoGAvBP3hp2YNOwF5eXERbM+Gw2JN8pkiZ72itbRmFHAu5oteSOSWiKc0NO6K9L2Qks0AdLTAVVFd2dLgxrcnkEFbGpIHzlnzqOBlJEvP9jFOSfg5YaI61Y3S6nqXh4Hh9+x2QC64qR5mjpGjwL8mRiJVTHJXMjGK1vo+OpsrN3MGclhIQ40vPdmjobNT4q6My5D7Hi/adtcHssHeZwl2yK0PK1Pe9vZK5WXCz7K1nGUMxd2hIOFuTzo5IZn/m+NuGVhKrJKm0a5aIvZLGMfn/F1y57UMiEoCHI4tEMNSlvlG+iMyEyA2QU8+JOjdOUVVksPsXzl0tqrN8+5qNFQmhHhYArpyhn+iHKgOWjmR0m7vDzpgqMVf60M4hpkIwPGZ4mFNBTUrM/Abe3NnP8sqV/p5hKsKkk+3EGP9pST8Vv7ifXu/xae9fKKdHEE8A1kLSrTE3eBOGBbnIDdQybtEsXS3vv6wLOKD64H9YiRfnZ54oIQdmNQbooEWBPYYQjWgKYBRpR274rnjoQjKWqeKRh+xRyy0mHU8XTU2weOWSoQC2T2h7Tnele79g3tVxV+xLEBPzLx7sSm5sQExjzCM6e27pEEeYaae+Tlj5cQ4PwXa4dGZy+/SMLTSsdDqirhES1k5rCmS5hkQOKSYvrnRhflfMjLiqKxWTFXPH/JmRFfNY+xIOI8zhHvnD+9bN5sfNClFciDp0oUcqmJ2oI9FBPeTkCsfiaOSR+7JkzPx5eD7rNKkSTjkeyh0C2SOX0sP7rLCJWJNhtgO871xLnjQJYRzRWgOkkGOMyx5MKR8/1TMeqHSd2AFS4YkG/xgIFpqVKIDNjLY1zt22KvBQvLHveNamdSvYae76dN5J/vCj/PQGL1gmY3mFv+PVGs+wXmyrsxw5Nm5LrEyveBN9oNkHnjQiUwDC9Jp3hBOKvzLBtUUe86cznH+rkoy8lv0a3vJCCeEKHzp0eoXtNsrQijl9wvSFLVFBmIyEi0iRI/3L3vmxyUE22vLJ9mqraY4RJVfbXBux9dloSk4bmxQGcsnx9GIZzczmgzRA3C97tppPIx4q0JkzuGQuGV3Ww6XD8trQLhFnwoG8kP62Sst7w7bJYbZfb01KNfy6q9b23kVkeZ0nWZOQqcmOvC2MjNMIM3lr2kjATa67wtwqL6b1vBcPrujdmqY4BcNP5iktE2Kv1j1Lj2R/oU0DxWH5NKVcM/kZWncWI9bkE6s7eMAa5T1x+0gOVB1AlmbqjW5L85xO96MWsjV/l5E6IqczkB+CD2PGBgKaLWRlPB9Aalu/CK8v8yByqUGmeGULa4Cv5CWFDQFcGmWv61B7iORL0DrOJgbkwK27yazXXo8LUK7LZKZuQdfCiJB/SJ/GWLxYsjEokw3N7CBL77OPVN9ji2SQLTVebpyyjWlMFKYhmawtr9OSeZGf0VldpHnoRqXE20aNTdsPZ9bUchiUN7L0p0tJYz1YFQlqNYwOZfAjuIobZNma1MzuwoVZOtqThaj2ZVugJMIps22R1vZMr3hxM2vwcMVqolG/qPjHD8ABrqYinpwpKSZ9ws8Yb+LuAEtFVtTH6IexIMfkKSa/CpP0tPk0IhntYn9x5x9jrNxtQpbu9A0drNsfjbKTmEXVvm+phkaFicHM5jxsYJlOc/CujOfiqlvau+wPzjXqcbsLlInWrTKmJ7OVjNrUMUdoFHH4ZOeN8W8ImeaQw9HKHoB3T9dPg8T0oc1KQL84iA2gnGXVUMhk4UP8OWoXzb/TwWUz88MMX5d3okEVMb+EaEtDrnuEL20K1btqMGhFLbCqXgEia5XHGOluzC1PB0zWiEt0asZc5khXhNY1MY77IXx8U5S9zNE1GPh63PWZplCXoYYnX8TWG4NLIsLXJ50TdyMyzcGOhW65BgMtMumIqePnET7rk/QDaF7HLrwWvUw4gJGGPSZvyKFNw01DZGfnREjNzHRQOkOa+PFzu+80nSCqQ70XevNSFg/6SqmlFDScbJRXnc0PWp6R1RkX3fohPAtcbukThRzshy14GEUiAlfvBBqY/VYcOkOZoRrX6B8+C0nVbiLewjKw5wk0shgGJ0vie8TRnhnZuDjLuBkVo1bVjl4GotHsEZYzDJYaqfWB9jBMCh16cantXs3dEHzheSWad1HjgemwhXP78ihcHp5uc9e+SZge2dcw4srrILQPaBt8nJqp/Vl2AoENCu5C6YUha1uWDcGcWKZ4M1hkB3putKt8EKw0EtmjjpV9s+WMLcl6svhtdypMGJA93G66b7z5WvbOnwsAohgpdlBEfvkDIZZtSSXF3WDbtr0yNB+sfPE7+fK0SRkm/YKs5REHUYJf75p5BmWBKpl/3oZG3ydDm0un434fIrH1xG3e8ilrpzeNEl0h23q28F3pItOZTDz7FIe4Xktn7cxcnJmxMnPtykHcxJhxjJj2KYdb3pqa2ODr1997+uKtGX0R3AfyJiTWv6ia8KdFq7Q/722FHEOYz+bwnPh20nCTq9k0F0rWHAc5i4YfjIbv3JMVv0JpEiMO3F5h3uukdG6BzwFDeX2Zu2NncBAPBv1rbcpssaJHbEM1JwAFldYMRaohykzlLxjiqIXSEXlSgHIHOTRh/sZpyG1zB0WrmnPJLYXoZ/DQxTxsQ7WtkaSbh0FCbsJPMrMmWYPS+aXcNqCY+leRDSslCF+NRgb66n6G8mSZxLP+EDPgXnvedf4mUX+pYJQZ3djIDlos37KMRhb7pN7xHDn+HoZqEUkXw5bYFvPN6ZlVdSUvs03XAJ4kfdRb67VgxdOd+cHNNf2E72M+WDmTAOmm9oOnH1xroLTrf3YD1LHmYk3cwIKp2+M+nwOSheFvcyNXXcRTKd02bmuJlrwE8HlQrNZsfYgNX0+WdgL+2/SNeUOfPHw+b8+uv/3t6lVg8nrPm+p8c4nfGz6TUEsWf6GfIljE2Qt5/UqvQdX8tQupJPyuEMw2cupSQF3tQFkg0D6nKV/9+Xzrx/pyPMUMd2lRVf4z+5AvdfiLQ6v7a8e9oO4Aq3pnMlakue2/lxjwxJ1e/Wb54C92+XZztjKiBc5lGi2fZNUluVz/+pkOsoNmXxoSWvUAPM2/0Hen1hUsrJqRNvaehQ+QBsd1FNPWSwB1QkVp81rRpyPSBLPS/2JnScI+AFWnYId8GS9JjhRSw7M4H+29BM/4eQTN1YAASUYBOY9kvv92SfLtHhzSiEAT/TDaPbWWtqfSo41gT/lC2yXNt3HIpr/fj1iGn68brnP8SIgk9JOLiHyaFMYHyMwBmTWhHGQ9AafsP27h1kVYERSWzPdRzJaVWYaHAjtUwmELAunIsgVIltAmnWK9lf7LG99u+IdvAgrm7Ydu5pY1hhfbsAr/1lQ7PTnaacstnyCi/rdIpZOP1/I8UCZ7XXCebMJPM5dFfW6IbZq/m2fkH5IYLmO+OHEC+GEM/0JSyZWlCLjOxQxLjz8a2y6U7CmY0r8sjLclnPiREQRycZQ+gwDJwEZFegsypl5RB8SzqLw4+YRK+z8LlJ/YzGQAtX9tlDXSR/35BXDicKKqt39u/qVt9xY+RIMRxsEcZ4Xeq55/TlRNzBa84ytIxwcyFq1pOU/dHDOPeOKJvPcfOq30BwA56b8ACkq5Fm5F0dtb/IaBAET4wa2z4rg14pw4LpMQCW+8tc+eeFwzx5G41FleahFI0GT+sgJxOWwxnxtjS6+zxhUASGgiCy+RTgA564SnxE6UFZ92JMu6E//Z8T4JGXPAUiPkxx9CZ77C4nORoDjxJOH1Qtsdhcq1ALeHO4D6OPuSLGYGKG7w2/0X6rvv4uo2RirLxpT7tdGoN/aaxjXj6lxyS2KgfwEP6hVJnfUZqqRWZzXqk0YzAHT2udfVkh1QkMyMIXTChcLiyEOd5YeSxevrUmE0MygVSJM8EuBto/oZW46cfO6xGWbyecTmAFv+wSbPAZzkOBZQX39PT/GVBiklZi0IaW/7F30GunVFHudqJTM2e8usnRa2S+77ZkorLtGOHghkYhTw/0C0iV6DajjI1hl4kJ3xAyTsNX+JwgrWJPzwUxKjbtyAzIDDlqykcaxg9qXuIo8Wqd9Z46yeH8YPHi/ocO8LgnWzp9sE7l4655oG/lPWDUsj/IlDgOaDfy0Q9Qb/FKdmwHvIWRlFx1ACLrsfs7KAd5OfQFCfnQCuK9OJzpu3AdidMfeEPoD9vzCBEyj+hrtRRmvc22X6R20oPoPsvlGB3UHLVCznuLXi0VK6H14fC/OEZMbgmoQawjGFy2P88bDvDTUkEpOdi+0rNRixgTnjsX7eYteftTVU1XAxmZ/uLErPKO0YoM55ic7neroyKTC3qFI0/XXB0cZaXOk+HWaGu1e8UcFglm1CK1Yr5F6DOD/CkOywTjZf/o2rz4efhK6pCk6AGMPt/1VDXSnXAz6HiH6ywMmZHREdrVXhHd213eu+qn2uGhJxbkxSEtEFIbKmCUG+oI3EKed8PntEsM92kPX3u5DvC4zI96NwS8RSWAobkYAqa7fwfs6He1pRINxEMwgS5pDaX9wrlxec9YCHKPWtglcDNUudI3y2ytc7PKUjSQbYSzvTxPvzMkDMj7/h5RKweS5j8S02zv3tLt8KAE75pX+o50H0nBNFFdCeRi63VnzT06rX+oiwnhFqbJREbgTCe1Y3veCz4pNuWAU2ti7ZoVIZ3TyqeZ2g+TlrSz15liPNQ767wmZKqnGGHt4EUROLWOFKiijfgex9Gb/tY3brWraM+N6ytY83KYaj4dAM891Brwvcu0Z9G1M30UbpAEV2mw1X7jfK3cpYvYl8H2TdKnxyC/SGzzOPbk66ZqR419UdBIkxZAyzq7WQxzVgBELJO5MJ0Plz2LxHtFfF01KNHWiM5sX5GumzfNoWwuq1NmIn/BL3cwDrsJpEQH1mTBiM1a8FKh2VtatdTvj+s76nKJDmivKkzWCf5AICmtQ74K0O5fVBXrsIOKDJBQ8fKI4t5wgoOw+OsZHjEPit2oAhWq9ZV5vm3enwb+nxbheL2sbNH+iu3gpkj3dZnAtiZ1+1dGsyeeBZeMW7NCMMiNXCazPKe71paTGsxKxDe8ab+I0ldsDFc2MTM4pKFHpAMMFVl/rtJoPTA1o1/nuBpUAf03uPEcMeHQ9hEKtiDdCabqoBU0smgFJHRo6Nrab0Qa/uY1gHZ3S86i0YtHqYeYH9+/7BYeDvB2dx++WICvx57wmXh4XIQ+7ZhxYd8ll+SNaA3yZJ+CanJsZm/5samQE0jFkvXTN7CcODQv9eva//CfgjJJ05kSiMN/NuEixzk9gfju+5iB/l9gb80P5BKAVgiYqXnLdEQH42H6uD708xe4VrAr2H70HMjyxukc30839yy2exLUSq9HGHmgy+j/hb4EbzsxQ30HRyV9nFP9ny/JN68wRoRTfcKGUmkGvmoSwuHytu5roD52vSg/isE9l22CHYfo4eUKswbkc412BhXZa5Gsp6JyGqZZK35bjmu3176IJrXGGptz5oUL1hbOXqNdIByi7o99cD6kxwYfimcA9bqG/v9fuwIxGBnZdfQVapLOw3AROh+eA1j/fxkUU+Irq7U8g+Jww0+XwVUon5YoUW2J6Ln9dA/KgV5CMfAFFPKc139vaynWgtiuwvbcbjn1hyRiWoK+pFyUAmOwUD382eUputrzzc1ZKk9FGRt+LHgAM72amiFFfZpz5oTp8zQl9d/f6Y1F9LhP8Rb1/DkYR1ZHdVUdnWpp0Uca1/OC15VjgkEADDOiUTBLNdeH5q9gO4UUiuh4nwbd++m3HrU7T+0e0UQ67gy8q+bevfsMY5/3/GM6R9k9sl5H3YHPNGk/tjYYDeO75KmfcHdiJYfjwMf+XAgp3fk1bk5jpLeYxJ5p1gPNGH8ccOHTaNE6LPxenwpzc4j1drm2PqdSmgXfN3VoyfA3qWZGaCpnNsIIgnIQDtLeZf7hcqL6QFop7gJSnlWoZ2be8ETFO4HUy1VPiodhA+yKsZzbZJnup4Q/azstJ52nPYNCIfkGKwPvF9GleMKqc6786Q3NuipSsRlxo5g/gfcRTj3Qq+/csaydRb+6SkospzonvxJ3cyXSXAPYuPgIKwivwkJl4iCePP2TK0NqF1/pityPKlLPRpLtkRU5d9BKVDMTALnIhjuMkOIep9PHuKJBB1ocL9N+B2yF1q5z81pErLUN2PgbPSYEq/ePBzhoIlIkawdXKzwLKwEYML8XoxYpHbeR51bN6dYvQ6YfQlSWxxBG8q08hClk6x1SVNlaxvvkPLPgTTblHMDC5U98T1U0ENlhcCeFSKlT56GlqmAYKbXYSi7mzsEyT3IQMr853YxQ5u4dud18AqkgNUbfgkxqJFbeQ55BrLfCV8iBzKt3legWkNoxRD+7sXrgS9Yf/jr6obwdiK+bh0K61r5pGcDPSehPUIc2cysVChYVrkwz55FEPWyZZBaWoJJp/N4xHJaLrI+pJmXgKms8i4LzDsKYDpgXjlXDEl1Q0vCdalwDdU3IkQv8aW9wQfvZFVI2LN6Wu2fPWUnsYzRfkVmImLyYQtOiwuiO8BPz8Gs/JHYNkg6HVoD18ekTwQSDZUl3KJTQAv2ab/MhKt1iTUQaT5lAKg2OC2TBrBhP/a7N60aj0gb3y1fCe/d4t02ab/JlZ2k3r+dxKbdJxbAlOVYIo7Z5OMDaUPzUmgtq9qdmjgOp0t+yuPv4Xie1yGTcEG4p+3ZV8b+BSZ+KbIGUkGbVIQ8BhTwaE80uzgKvZihDe7/bhc7nFg+Y763wkmhj0nnwoAkoVThGTZyi5kNw9qPt5EwKshgxZ46m+QoaatQzYKQwwJw8HEWlsA1LWf87ScmQZy9R6Xyl/1sHCDz4TW4BIJqFeTQDZICeHOiYMU3o5c6oA8lEoMZ/g+0IfLrfxy550aCO8qpLiLEdJXaM8yweQ5J/oaqkhq4RqkWWnWd4muTQ/D/KUBKe5rG5sOaclvAknS9CfmCIRtl68uscIR3TeI7EFnB7jp7RYepqAQNh7hpDf+H4+eQWMd2jeRbfuwi6F9PHRSFgzgK3ofRuPFPi3lJe6TTI4V6QH8a/xJj/lBFqsWFTzG96xbMD9yGPkc76QD1cc0fkafU7aFA7yCfIp5M4GqNpi6zIOplVjxnCF/Wf4PExN93Vc7wNGT3dzlGVxkO3jjkX3yjnlp425c+HDe0+e/h+Da0XE8ncCBrmqTjpHWiUN87zP7VB1mTQbNvjG97bMbR+Kg4GxXV4JXz3IFp4VJzjsjQvFhmxRjbeUWnL0s8i7XEOTtZG2UwJyiSSArJzi/gbl87UegXMyxBoabCvBv/W55MoL5CQcFi5xM7vJKA/kk/1Ajk0geQy4VZosALV9SyIQlpFxDa81ZgGeeu+zsEOWTMvX5KExQwWcTNv/69dlFSW1y6th2cHLpYaM+GAzT3GQgM8OSPwIk30kRIDujK+VOpRk+3s7wNpl32XOdSmaBmeNQKage92l435+dGX4GGLSWYKTM+JTmcHPytHk/M2atIeatfldeI4wwesHhZbyEzDNBQpeJoC/rSFPxora0A/mUaDdpo7jQU3TkOz+nw403G3/G6s8ZnUYTlVzDu8mYp5Eh7E1FeN23uAArjWtt1M4bi+CuQf+Bj5SqaTsrs9Eex3Cud4cWry1HEjlNLbVcsVitNWRHE9lZw73k7z+90p91vlTVNcyBpkGaWO/4A0HyQezWaPUITC4vA1ICii0bKFY4Q4nps6YZD2I9rfGT76TYfhogMe53CPQY9pmmc5PX0c9/NM9knIfDbeqal3ebBsL5UMJoMpLVrizHqaNS23HUvpHJF06A1XxfnRuz0jTfTbpUeBsciyoBIJFmQONrnIwnPPr6XkPo5cmbM8toJH2d2r3Sa1HvpaNz/QcQ2FyDOoQhfJ4kJQAyiQXTdixdwjns38aR/SzvTosOQUbWSdANxD9SkJPO+NSF63qDerCOR/kECGxRLqd6Kk1PlF4aSTM9hNmbgvINrXGHM3JNAB3NJkafPwssBfPegiODv2J7/JOxEyAcUcMNKi3WpxNQjTBQ8WPVPCHxwk3YM5wFsO2E3ocP7rW2gGzfA2sOKvcryY3YfsAqfOynchZOjJvEhfqAswaKQXON8T4hZaGfrB2wiYKoAiHvaGzKGff9Bd1P6rsB/ap5n5qq5sSpD1AOHTSlA40Da5q8fuS9p2MindJUJMUzBpRzppkVrX6ado6bb4RsDYBDtCNeRqNMv4EWZ04QMFdeTkiD+QTMK8xT1pZ+QAt17rGnR1Ks/we6HRtnHsSbwhw1p0MrhHlAyhk3D6hrdJCfppIAK6gX7VPJGJ1SrGjfWvO75a0yPO5Qwza7S9yfU0YwExmaP4LAXTkUiU3WQbNWBqf4+zHBLyOWGSjZ5MEBESlbKd+0MYuwqV/oQgsk/Y5tk/Cz4erHGrsWljGxwmky27aG7ga8j7DBV/IVoHBLOwuQhd9hDputWdnrMgPRRm7Agwi6q+YcTJUsDVm1sirwfqTZZflEv9q7vOkecsl0kekqczGbqlr821xltmCV8EYayiC81VpYsX4uSHfk1DSMOg9Jgaa5ephIiYfFXiFIP7QMGUn26vdI0ZkLFg4giWwhTm9ZaLGiPgkUrdUwOMUyyjo6Cb20DosUfUpOl199hi/lT1/YO0Z0LyRq3zdkthCa4FbzBd1xsN6zHge3Bd2zfd+3hiwO7pkO498w12Jp2saMBbf7Xp3Y2ZIdUZYWfYh+EMIR2+LxRNeuQcGXrjQxysuP8bVlOJzo3IHxRc86vn1HWFMThd7le99neSEz4rsZJOIyB6q+iVTDQKxnCWrxoTn1xqgpqaUatJQbb80wexKI9UWtOfttXzRBdPXqsEHV0zjTb6YcEpSLedU0CCn8g8PSMVBA0gOq7VkM1UlcD/Ol+/VJfelR6BhGTylIBpioTqzH4W/7/qlRn6ok3+GeJnYaU/1ZM+lqYAMcui3wNNFGsGeSJvkcPpNoBzCNTUjuWYJ8DG3DCe/o2uOfpmtcSjsS2RObtCRNc/YX4Squ85NoR60nMosH/u3t0+T2HJQMGKIGoG4Y0n8NlqRdnt8hfpzIlsJkRy3FoV2bSYHTsGGxqSS/iW8d5wRO00/4aZon0IFY8OW/fHhHv5hghLuLI3GTfscg4bC1+vVScwmk8Ep/c7baSDjQRLcSZwTpLFFDtK5k+c+wOgF5ezzNa+H7GT0WcfwV2+NP3/mMpp5hIU2Dyq8NMxdakz2xEclCLGZhiO0XMR1bz/8WRZDCakYz43b496pHipeFUSiQQIoR+CEkbohqYcfCTiLQD0nZul9/i9M8hOCe+zPjyliR+HYfzhLppncx78EEfkp8gWjgUJcudBeWwrOYLjzzaPNdRmrDrTDZWEj83Bp3MUVgK3vhwVoZlUsm1fCCYnGvnpnmc8gwN8DXLt4B5baeJGt2ZAacz52QNIOEGe07KTSoNWgH+TAjXCiadVDYRAUemi/9Z6Pi8sT0ZppfvUr087fEPiIHTfC/hQNaFKWy06JHX3THFIKQaBAzty+t/STPFvo5KMquigp3ZBINCtqf6UCZoGwdIw8C/TXpjEDxG+o9hljAtOcwh0IKxmLRzlDVRfVZB21eLDCJcR6jQNXdZPHlGQS4nERZqYD23an0g6U0/SamPzFSsCeS1ANP0yD6M7ggeH5e9MAl4z8/Q8h7OGa3wfpViHPNtlbMCgUAdUQAviJdUgNHTjFU433JYaCwDHhJteQt5CVBMb1acRPYvwCBNJa5KHQbLxUa5OPQx9wKaaajbXhr+wHRVDZLGWpip00zF4agFr826vYY40igmmQMIqfezIDuO/ofTaeDqq8pl6i2vL0v5UAzRjaI606mpkFFv+kW8xZlnzjZOlWcy0YQTPVG+YUl+91KUcnUb3BJD2SSLD2aM794lslJpqcJleQQQrl1QEovssSlA3L6HHAzPr04lzsboqcYlRLI1rRbTiw7Ov4uWrJwXKxcpt6BeHJI2Gs9jcqwO0kltei7boirH3HZXqYdEf0y/QWqmZ4pCUYnUvCzJJhMXvIGgEN0S/x1DDeZ8Q2a+Tn3Swl2wNzoNRCVaiT28efOKK16TzMDJ5v0qPxOGGJOuxNt2VYLp4AeaiT5QeNSLBMn0l1G71rmSzY8bs17fV2yF2Dj6WDLFtmL/xF3HdzWyh/x9FHLHWOrRe7oSqIxpvFavTaQLilYBMxdOUDDq2uxrMBaVHPl4AuvDnmgBbBTJWcLrHMxdxe+5n0MqYyBnvhpRDaKJM7V/BF+mlgvDYy7cdcRTzwm5AOQJgpuO+9T2BdPInCdm7tejzJWetV4MhGXJqYDqnec4hYhGKEfx8KyFJD1bL6I4pghGcMiWACoc3CA3qVO4JaqgyZJal/1vniS5aQDunasAVpsNeY741iEC6IubNEEEJ196irXyiFAb0z+8HlBhziM1TekwNoUY7duAS+xL/qVxJ3YPwk3HKtVhQ93oopOyzPS43tJM/Wbu2jkXzu1Ne1aVZL9PsX3Ca3MaqS76zO1wXIiv7gzp8oO8/uQmj8e7fHP3bHpJvwAclFbyFsiHv35LZ9Scy/2a/SHHtHQKC3HYYcFJtzuy9yQsabYX0iETtRs8Oei9GJfj6ay2j0G4kpNTCOSEg+TcS6E0pMfa5vFvUz3eberMHa14OVMHe5VK2ST0jkOngdc35v9p7864SCxrMYujRwH4K9D9xkiVWXhQM/tX6kpXhj2cRuHWz4xfDeav4PuvEsu0Scw0eoKmPuHQrbRS/Q9MZZwTsVK2EBAdJE1v1hP0XCJevKa9zPwx3jJjR8z/0zztS4UjtTT6adp2tZVApahX94VagmbG0AVe0h+65L7+95UswnTKHEL89eOd2UDsyoX9feFe7gnuZFiOT6PxCc0dX5Wast01VVUeXt+Asip2bkVgjn+fMx8+jJbhzaL+gn0gnni84twT2jV7hN2tMB7ArPIPPH89cITO23vE5v/NYFPEQ6G08NToCgJU6zQ4T85yncP5bREv9WM3cPKnvQ+LdPmzg1iz4eCWZUun2LN2DR2yGnIs54D54NLyyGQDO7g9LtTGECM9ubrV7X0zX8f9ikuY49dfpPVQqFnl5a41L+V/S5dH9wumxhHtmQgWloks5S51IQm+WkutKFvxsjHAKw+/6zaCWdf2DlGsscBD3fE64Lc5JAO1UjRcujMuZY1yhe+oDsnn/ifo8ULfgieMUH9wwWtfv/sSf8NG/5zkgj9GIf9D2FygJNIjNKJTVN4kevDnZ6FXEInH42Wi1te9nwIMKi/tDJ04+5lbPO0aUEivGFKvjh5O8bP4zrk2d/35uFmWzJfAj7QbOZC2ebeJPTEapJbsmmSXJJPkA/EX1aVbNunhHgitwsCxmItPxjLlpOllJDKu9qdzogQOmFzE+wHeQcMahorKLYZAgmiBaYn41/lFkTKaRqH/bWI4PjphLnaWDNWIqUHbJiFae7MJ+6AG58Q68YssDS44Ws+v4J0keka8fryXVuOTTodA7dYxvYULBxwvavsJs7GFOiYbIUOnu6Srp//TSD7W3jGl5kk4hqQ+s407yK+ToYscFjTxcyV1Tt2SJwiGuUbtR0cpWeTedt6VeEThKWQbJJvirg8TixiTuI8g6zuhIq6jfhDrIaQkRzHh5WtSeC+LmNDelEtI80xxrqTcl7aQla8fV2Ga4AqkbBi3aM9jRo8NnWxjAv23h0HbjDoUqh8aEwShX1O1UaPF+8GHv/TFK64v/jb/zNFBs6lmzJvVBRY/CVPImLV6gAN5+MWvEHz7tp6w7Pfa7NkPZAcEsk4pADKFIaUKs0QS6EQXG5hyVBJc1SrLmfwzyMAZ51ha6fo0HxK7jwRfF5xmj9v+k0cdor/w6J9Z7jpo0RYy+PUW3pyzWt63kVkP/kAxUYz5zGcIXuHnz4kifGCTqdqGmwGWjUGhnfHCoWoHQUOrKH1pnmaxP1b7Xd7r7jZzPVUrpbpw+BY7Va4zSiLLvKH9+G9Jnh+OKLzP/9g/2UgwMO2UNia5SxaGNhC+d8APyJfi7W7LLb9GkEJ2bsxgtrtyhC4fRznKHPKhonux1l2ewu44Yhs6zt1pNXksiC8K6cJXIBSKSr1VzG3/7MJpkpN5U0O+EwzQZv8hJoHMHYAeGpMgTzr7AlLt0G/aYTlJv88BXCQ60Su/jFpJVWEeI0qYaXIw+7CgzCEMXgE0+HMUEeXxfKboTFqplqRYQdfg3DA+Nq89+Lc9v64gg0AQHzwwRvuQ+OCgja5uSyf7LgC76+RoddpXuGB3a7SUZBUuiWrXJSmWNwm/zteGZly+ZeGUi2yGf4pKFcysq9Ux9YcaHc1cb75uHHDXrmu37J13tqa45Fnt29GwTZr+RvlDoniapq33wSLtmGyES7dpyvYli6f8ho0iMjOXwNbd3STg27F4flnCF/zy35vnkavqlMuWpEDiZcOLSStjqmr9xnXEt3fSdJTm8We8qio2uk+yy1LBf0gv+7f691m/Drlp3Drx4vQ4+eddyGG8KTthk/UMtjm182tfpRnaA+bPGr2GC657sEfjGfpSrnmBD6ybXL/T4mnDXGFSHJck40587C8evbFnwKNvu79I3FG78iaaKrvUyjSPUFA5cju5XBkZw1r202k7klTtrYRav7RS0IN46rZKttaOO1t12n/92LE8kqR2ZR6+Lzq3eaxcMlOG1aBLKqO+YI399946lQ/o5en6Bf26ovk8zXsntHr6F6qV8rO/+tFaprlK8Hesre8El/eD+fzjD+dOae9+FwXns+y1Hla6CVukYVIyUFGE/nI79poZBIKyoMdr37qd2bmDZr3bNZzXVbO5tmaqnsWEjSGpshTuVn5cVYpfcNmaZYv1jzG5nwXVli0kFznru4A98lVeK9bKaySSzVz28yq6JQ2DwXOaqlz1u2XAqXjYJGjzqmy5/yw77D1Grsx+hbnRRnYbnOFXxrZgXxzKEm13zi9cMH5AztcIfJheRi8k4kGhAuIlBdbjr50u+1LadT/7+2TZIap8juF4S708nhLmRWXRUPJG94I2T3TG/XLWPLN4jD8oe474hQn4v6Jq+EAsipNTamf1Tl7n1fMsDLRYrpKTPeq4g3oLfdJMdJNqyjTH304a3/zbxkQm+zpsp2wi4xCcHwH9fHGRdCcm4XLE+6wHwgOl44p76z7mofHKPfGa+eql4i60iQesNV50TD8qkfmh0MaKANXI5pUsZHGl7VLyDraner8FgJZOxyluteJtMgTgN8wRPQcN3lLFvFo8lbUxgy4+EcIdM84e8TPBb7lAIeNIW+hVL6Hd2+kovWumoiIge82qPBQwqeGf36BqyUuBaA6fKiVqwBMfdYVRQmxqFFAOCtOxpkiDozt5iMJoJ1Mb/O/ZMvkoxBYooLA1yajSqJukTG3lSUKYzeFIrhrSfTrfb0Xi9xuca9J8Ft5wehA4xGmMMRE5POfE9zk5M/bqdClrzpVG08f8y25nY1EMPUaXb6Qx54j/OLmlbx0BmIZQl5sPgajrK5DcbM2Jay98zHXCpaCaz6UdCXx9+9r3B/0KJgSExi39TSaXfaUfv4mCeUy9w8wV55DJv2eIQ9H07YPoWzTud973kMyD/CORlsK0MyYCw/GrV5+Y/+au8Ei13IvkBpnsbgLEW7QOZpkuj1pIuStmKNoW9aaRu4i1Jk3W/OQQ2b/JtWlYBQhZZmXg3a460/+xvVrEQHC65T6sW5vRhttHQlNNMz7yuYdG60zRMdP8dmDHSBnZ2JoAJy+Z/rTThmOeAidU9pM1yqI19iZAkDV4sNp5naymrzL5MdABX2PU7luqnCuQQ0lEjEBxOTnpOZ9BbXEw/d9E1oWVISOqW1IGFcBRVikOKHQkcc4omXFu47PzIiX3dmjexZsTFBjFS/cibH5xRW+9+ZhUNvHcXK3ztB6QcQ/K5Q/tTDELLQuXo7qAOnEmztcpXIhB+C/Ucw/Y7WOQXQpUfNBvvinMmytdHFTp7lDFBLq0F5GweKK9dppIuANuUCUcrsQS6WM8Jho6vKU5K1Fn4nSY8Jnm9uRjInSJTKNDOelDsMexPP17sSKBWgBqMoLGgV9fZ8OJtiNEj0G8ZdO60pET090WToeXE7yN83hH/bhmc6snykBczbXk7WHKHfgsOU8S6QwXIX3lYxY4xgAgerUnqV87TbgIVV7pJlD4zTeeljOGKCDf8VS6xHduGFU5wepDKf3o865rC4vRNPxKrEUzU0oLu5BvepCzHDusO2AMq0zIxkBbSqFR8eSxNtSCagrN6mgw35HZ0BHy644CV6zKEhKz5rYEbdn6h79c2pqRxPwu07JAfNR38dm4sIXOBELVAZF9AAgONjHqRsh9YgN8rtGlaNuZsQT/tRLv8HPityQb+4bb3C8UeAhtkc0yigrUKwkM0NFoxOBnbFgK381KBp2rwrC/pNiIKyUIr1m8/2ukJ3uvoMTUCGxoHLxw32W+xrXiaHHNXfdH76XGx+sekU0txGUw/f1vYeaJdgYy5uZ2elX4o1FjXo9WmHRl6Zl2BEFpkbMOmeNJRahzZ1iGimkDnQcCV1m5SkitP2t9OKFySxWz89mrHF37N67ZCeQ1lA5Y9/Lr2xCQHE2GQH1+MyJJC7PLEw+ekgLbohsCdwRZmJ2RkkGnoPZ6Gtu13SU7EEb0f3yjRWdw7+gw+hpcQQYrlaKbiXVcvphk0PMoAJ1ybJbzSYRKTYIwd2zE/YYUZcql10cwb7vaIqtiLg05sD4XBdM5+LhMuGFK+YmIgHNhrxKrPptQxHBvq+zCqP03UCz6HXODHS35hzf5cDCA9tdeI9lbu5jmeQSDSw8tAt8uyL0j1O9FK19iuLR320K+fKs37HltRvqCWbdxmHZc4hT/uSNPvTHX2YJuJHF/KxBVYQZ51xN83KgVEIevTqX5TkNyQjl+mM6vCPq1OsQsujysbUfW1fXn9Pj1KzSZr8MOlu+606HssneydnIz4Bytl42PeKIBzobPYcILyLnadOarqGCtmWPsN2Jj2RRfNkOLL2AIrcQpjZoKiOFX+i87Oj+zX2IxZxZxzABF1BigyGqnvEtSBjFwazwfFcu841BAwxCWey+09DUg2nVoojf4+Vx0HRhog3AN1wb66zIT6wgWDRR3pOqsdbInZQbhL1yvHn9S8+Pfe/XFHuCdH3DFsgVaVzLCOwGHsQ3lgMyxRn7fa5L7P6LNjMqTblBqzZHXunuNLd2FdIsSSqFqoDL+DwCy/TxKYlY8Px9ftNqMqM5k1pS0HtnaYCpbRVTtcszCF9Dzf7dtbM+yTqHHeuEqxX+uAvJW0je8sppZVLfgoFW8rCkm7CxPd8HTLuSpbw9W5ieMWKWIDXYHmjiN+/efbhUh/mK9ejkpBVWMkrO+Lrqx/y7jT1J5qiCF7UAKaAeqKqJp3JVprDNYFQqq9m+W/qIRZAAjEoZWiP2FbVeLH9uJFjnPLbL+byhAnmzPtt5PAnWG4/btzdyhbejWZvfJKyHBXZIoh4VoOd4WMpgVpwk4m80MtYCCS+d6waIvaHaYRhP73tjOTKPTFzvWEU9MFK442fP7ix+oglfRwRV/kg2uFfQ18k9Wh1sw3wB3m1WxyeawYWris7yIAB1F57lAqWGwig9jaBLLG7IvcgBVum0Bn8b3M0AQVDSvF8Hk/C1/QMIO3DOZcOgBol+vyDhYfLpHNd/Hv8HoKiyO7T874SawULU1CwSCnYuapGT8jyW+RRUMax4tKdpqGMZLyOCvpr32UEaXrUAegQI4rQhTo7UbUYz+3YkYkO+ncud9C/rcoo/m3K9V34JZWKa0+AMB5e+m257rvXRHPcEDvMsuZ9cmEAejEDNcKaZtyF9SqHZ2vlE5IrexxLaTN5bywF6ekWeRAI8yTk7std1veMTneTum6uTq2Dmpvo4El0gMOPcExaud98LR9zZu9szJGkS2PaMMRL1coaqPNnFuNrjUHJphVt9QOcwNWEPJFXYTPER1fx+iLQcJs+I1VXK94FdypbbwrAx4Km74+SQ24s6AFU3v1eZS+6j+GiiAYiuJ+obdqHOXZsDWzW3GyiR69E5FyEX266VTGtJK7XBV81h9oopBvwLcnEAWO0JtoftCzE7ilGz8tYvw2llrND0CWgE12sOygn9awbSJND273y94IlCkQG2Bw4Fpb6I6c513COXyJrn4tL6E/+eb7dGfpzMVpD8JFY+ly3XvFbULGmuQOYEJlF4RHchVioDJeTimc8mgJwdT8BBr1J/9xu6Tst+jR5hb9AhOj14HMLPymHwE6rmxmkIuARp5gJovZ6uxNRM+VWbhSB+Wjxt67z1qNIJoBHwNjvc4puKdFGm52o99bhJhZNlK4c9OEuTB59PuKI3eN042FujiIVfVQgoE3DEHD+bl/P8R/f12Upd+cljBdgotezMCbl4vtyvd62MF5hGQbxaPw1VWfAr2VAYFkaJBvRlx7joerBAeoCJrtQ4z+rsXHtLDUPi6hh9CJbsuc6ZXzr/KKoahP2Ncp7WLHPyG5hL0XLz1Nil84do9/L57/DeI4ve2+4FSLb7ifaIbdtpwej5dEwNEJ0TSNWgp9doukpMdVwWiBnM3bxreampf74znvDIN5m/Vu/TMEuPNrmubEILWN9ZfjRmxzxBtW6Fa46/JRN1zCSBPWCgpLcwM230+U4/WJs3vV3Sto1yRvtGw9/EVFMOZQeeyp0wvFUT9lqERPqsdAdNX5KVtN77eJVyW4pm9oxhDRCL+eyWJAbM/5NEhhTdbSedavDPx3SrRIHmWuqw7HT5XrwDbWzAXriAE8s5E1zuxc7hwposazjXve8kWWT5l0FmzWyRITp1tkCAzc0k1tx80lAnNeGoZmCcblg43E+eSKPDCPQjH1h9DT1rAVLe3V7prpT54TN/aS2MuzMelH9YtTSL7OU80YEHoFVN+4gl0rCKSz1PQmh1Wuu5vb4lIQ07T5QJJ/BiIJwKWSJqpPS7dmNvSKBmMyX8MVjHAJzygbJhRP1ojwhq27p1SRbVABg4GlQyi5B1viC9HDgFqDm2KQXxrEIgXQeUY24yg2hyEhDEhZriDDyISLywKAejWTJRxOoSz0t1hady8c8E85ptzZIbqFru4J/Q80+jf03eACogCBwi4hPnWjIGAjTL/0l6ltkhTo9yxDY3VAgP4N0RWGQIoh6w7by9A9wisd1sEdEZR/8w3s53weNAMgsE6NdjyYSPc/3Ppf89HvymPESaXeqT7CPQyxbzlgC3SQLNCr0Jj48tZ4kAfWCmN+ftQfBf/SU8guFjW1yPpVoVm2yRRLTpx/QwzZyx+UUerYNuRJgk6KdfcskMvqTaBBVe+gXmFfT+aKoewMuEJSpYwesDV0kdPhDl/sr6deKNQO3syr/DyIh9+e/uPrn+Pnz/Kk9KQN7zFp5vMTomiLfw685CWM0s1RhXywH3mTCX1KoRvtxpAOPhWrTNPM9wXZEINxqyW0nuJEiP67KA1Ty2jATe0W+NBc28dpJ+yi8UA6LqQLyibdF0alVSneqM4qo/qLSCDVvzayhe8NPNNDM/g3EIzrW3IWHHMx6VNj0uzXRlEtcLckaVV9wMToK1w3XNs6fzLiwy21iYEUt5Y/echj8nk3+zi8Hu67nfBEk3CN985fHBP9qVSHHuEvtKe0pTEqGKpZcyvXXE+RIv1z2wWXVOeezz0i+IDAOblbl++UmSoEomBCCyi/8+7/CZwcmiRnHgfX13hBGYU8m+hsiIfth8OR4YxAdMkndOuu/YgJ33jq5Cyx8NlYx058P+Ed+//dRdkCWNtbrKf6pLK+GO/RP7BMsdNq19pt7jOQvXdYr3uNxN4w0/+fBEVzn0BZgu0JdSXp3H//DHggwuRFVOE8N0FILT94xfrkfVBga/cGGB6t2ZxUxX/NOfQsFfPDnuNJtsChavRw+/57B2jqlMXisj5I6MljOPGdZK0n+2xPSIy7HKj0NXYojHFp3z6uf0MH6T+/6xNUJU5j4YqZFpX608d/ww8nauvSKfJswDkVuRqkQR9pR6GSTJYeJ1B+xaRIk7rESc+Ka0rlG6gTGugMQREfl++Gy1MKN6f5UkfnqND6cbuZqrTgG0PXoF3hAPviQbfFpc+SKdkmisw9+Q0z/K4agMF1YEpu4w7x+sTKrw6yEGa+RsJwdPUWcNk+z2VrkbZX6W8zbEr86Tr8evnyOeb4kb3T2FVIywzxIOX5MnnxcFS0wYqy++yuCbOzteS1T64+GZID+IuiGdlReripxlz2Kgj72zQirNM3uEvIYoWDhV7yVkzVM7zI8JJYspmZOn9rOcFNDMvxSJ/Z7RpEj+fWBfGiSHbU/yIv+qcHTJeExQ8O+1KQn+9E1CwEPaBnjuzVFHzz0rqqy2OwTDXbfM+BG/OdU3mmCYaLh9Y4gqU27B0ARJlWM3JdpfqgFzI7r3Em88AaA+IU9iizGQ0/AgWa8ErvJljCKyHmqTlQEifk+BSHgGuFPzH54kKnMRs40ekST67Wzg7Oz4r/UP1mnnrXjr1N0Voyov7CiFmniobXq36jL/FVS919fsOPcZCznQF7tluXnS0HtVT/MrVMx9Is2DyCn0yjUaQ3i98e5T/qmZ5EVMW8BnQvWMMGW2sYTWUawQT9IXlf6/NR0XnMTp+OwXIHmVlsf4ihYUspVQfxH2X/muBHPyo5m7o2d/OtxvWXiRJ34g41hsQVKphVWrkkGzXIeRQOuRIJxSzW7xVhUiwx4PBCMriJtYwDpRJ+8os6xa2xmHBffJtwfYctQqu9XFtuEM2bEFiLWXYuriAayFBxcf7zb8RGrZEl9ciZqGgi1uJjptJclSWolJibza2hJ+SDvCLfDFmyBLZgd4kleug9drUXKN4eR0wcKNbqLWkpBaUV7SeOy7zRWzkTdrw6eJrpMsRoQYNn0/8TWjXQqV3FDh49vxHiH1RK/hzfz7DWaRaD0QVi89MDZ0l/A1dOxP9IYigu0OiYA4Jrs6Sx9EsjHsj9GLmS3iGrFy70eU7tdJwhgjtbkbwGQOMxeKr86hwLB7Q7/sOkE03H5c3R/ho+FuerAsHKAIBJdMbZ3ETMn/c8ocR84oRxBS9pFDiFncKCvxhz4zR46EX/OxsrKwuXCGyQTGXunb18kPiKX/CgT3Fs6xgNxYYQizDV5+INCbo4BiuyJxPUI2OIC/bN4os+ZKcEuTTCFkCSyrEIldwDrLzDJKF8B7qIjrxFZmw7oEL92DRHmxLu79UmLcsYsHHGrTF/FaGqXdZSAKjxsBS3u/uC4tUSSnDS9uWlznELOYxb/jbyCSQE/e2LnI6Yo/pqB9CsiU5/pLYO66ygyTkmpwnvOAEKZJQMjQZlYE0Ia1+VHybOoPKp++8xGFqjWAnUJJvbiSD+AcFeCL1wZnej/2KYDtd0CA3ETPoTel+hCGwN/1exU6kHQbjfyQoAfyQ3jvyg+HxI/oDUnEHJVAQXCvma0h3kQVxSSMNJdCb4nAxW5VHbmcyPIgPyKvZGJA6zEhw8Ql5Sv3Lcj9VO8cVsfVAz+/184oEo8bn/F390D7JHYLYttmsH6c2YeBzo0C01/G3a3oNPIQp2RavRY3ohklFNuGkOk2qszcX5HVs9waVX/1AiODv8D5D2DA/14AM2ctT6+LyST/scITNuHyTFlOCANKQ2xB/vL18kmm4zHYAzX8BxUZsyr8qaGRdiahehjPyIPv9aDKs2crdgcnbAQyuIqSozr3WkyOSFknpfIDuawQYBc/9VWSv9cgZmcKAqu5Ra6tZE+5DMbS7/z4AwU0YeI+4Tum+bpwtmJ8ybp1o+pLlQjKZgZ7Kj4+1sm1pU+gUYa9vZNdN81oUW3olqLklgcIwaOlejPc7yXWsMGC+zxi3RpQGCJXCh8NXEwsCBNaUI2cFTYDfTVGRtcojcTJaCweT/V4x3GQZ21QyDFdDm92DNEpgG+aTavUR8EO5sbwodG9sb4T+bPZ/+Tfb1Dzs2+kpUhz4Y1TR7Hbxuup76av4OZnLfCYRMsciPd1fxUcShi8snoVQeOiyubVaaNul/j6QPp1+56RoJbLFgyOQQDnCO6/UV757MU90LiwXghAdLBOxzpidduyPp6qwqMuLZATSN+kXN/48oE3IwHh29RqjpLmPuaMCcRPo9zntTggEHh94srWQD790YDgs/+IadWausAbF4Ak65/IoRsStEBB8DMW+LxYcVI6gC/+2cEtnjrIPVwWx5GOwcvFrCaklRv1JMkOmp/3u7E7WD5ZVUrEtIfLgtK6Rox3CRSmSEaQiGsOv2rSWQKo8t2iGPz7y/GIHKwN2A7o9/kQtIm7hYA3q4EeoNnYqBZ8Hpj21F+gcVtaY4FytF9AdHWRhZXzAumcOxVgl+qWTCt3HfcAjWuUm7UyfuZntnW8EjkGf9hTBytYkp90XjOSvENCWi/VqMT7wWQ3tv+2cAG5nVSuD4Kgh5ungtR0leTAp0Hg16YFu0SBY7Y9ac6LUlV5yzTkiPFDncnyXjOj3aFVF0VtMIfv6w6ugm6gCvzr4xdkTiwQ+85HyP6PzcucSYZ0KmaJ1/I5eq77OjskcwtwB2jINq0EKT3NWrnIbn+IgzOKeojtdGl8NlQLuZ5+Jnb4FUdG34Xfkri4XGeHKx6YDzhRTCscNfIzFa1fKjw/eUWJjnFNBDIVFm1dQBWxsnthLc3gF2bfiNRHI9F2KZebEWheJqFP8bibAnIYnezclEVEaCrbxxFqv+tdfspnN0t+cXyfDVCypmr1Y6neVGuDtLDei70Ac38+HIVPXNEQc2dcgwqLT/5hG4WKmJ8KysN54rAy89lYfraa59+1mX2Iyebz+TyA4+jZcmXyhdXYVcpflQ7fK30mv2qJ4c1XtGn/xBVMhoFllY2rTHiYt11Rqa6H64jYoY2TWgj4qmPX4hXecPasrVaAWqXLG10yxjXhtSw8P1I10w3z90F8o0rVl8i3rtDFF+6ScSZVsLu8N7IhyZqIMe6kNclCMu2zfLzZ5L2p9lT59yd6yoZJf29zz0q8rRWHPPZYbtVLLI9AInxD70w1+ywIRMR9zAtwDjNKVozjqLXahCyZ8mb9JFc0fWcSUgOgVte878dwZruIXA/erGJ/xMrMj62kB7WjDHBjLNIFoC5Fjta3iIXJABFrpBLVo+FzFBZG8IkDWaYkMW9aM1lO27VSXCl1i9zX2Lx18zH2GCX2eSKg1ei+2FfSAlEEVBsj1dADgq4yartnyFnHxxOh2qzVymOlhTWA1is9FiSsJorWjtFS3d9OgvVlM23/1tbaxze8TqF3kai+/JP4jRo2vUqe3/5J4HskU9O4+YG+HsdCgNcQOwAk5zny9gRBl1ZHfA6FsOQxkzlJMyv8ldyM1EaXb40XVKze5Cgy2l+5/ZDHw1/ZgVNpj7+2lDvy8X01omkTTGsqoNPyNVfvmYzmbeB0bolM25zYPlsqM6QGqnKvKA4Ofzv7fAf4jn+uBXDeusjlWYXEa3LZMlQn8p3lYZZHlJsXYVgAgLLljgJ6KawRQi6xeGoTdJf6bqFb2hAUxzEe6FywbjwCWJYVeGHRzUlPYlsZwHOdte0tngs3gDTQ5Md9WvwaAKBrFUNIYJpDSaUAzcPEGlK8Nl91EIYTpiBot4SJLepR1lAti0OnE1sYRIBAR86FP7K1YFGdhJr2IUzEUGKJPwR3QsD0tDgmvKRZgOLnel+OYZaNQuh0WOw5lx24MN0bW7K4NI8LBE6tXwRNrzKSimfoWYls5IhXTADtmY915MKAkq0X8w70lLqiADIVIhSWWqaSlbyieYTKMbYRMO2eD/jiCcS1eSboL6R5NOv61weYb/Gyrx3kvLyyTR/IKVPMj+GjHO3X+EuYeGykvEQc20KOcSDkYgwkpF38s45UUZZHnaic/2dRXjTJA0nierDRhx8k/AFpP687mBOvz0Em0n/qNZlga4LwFfcRLcjXP0JlsVqFJWG+ChEq0jZaESbmGsFviV1JCN+6a3CItLBNTb4z44tvfsgg13ZsfgHBU2iMIwi1sFmr2LVhSTKcYSR+X3VHj3zlXIPaz3aJB7ejojQo5N4oWpFUOvahz1WJ1V8EmGuY1johgHUTALqh0A2VduVn/D4eHyJ9ACTGrhyLEvsA2NXacZ7HQAHEjVpyHhTiFzBu+UWQY4pFeK27HaOoJzTedHjCV9roNifLgp2dQyeIQuEJBI7kLflqtKjqbwk16Yzc8FV5C3fawq0iMaEg/j4gTsAhGADAwQwpc2f/xbYdBpWsXTxT6OoVzjLH9wLl5kNG4etcvjrrQLyCQXkLJ+R4BIfcZydcGKBK8tI/LMbALI7OiivY4zVQq1wEY87WbY1lRd5POjp6Qvb7knl1rQk6XRmbQKK0o2dYqeicvcLNsIe8x6EqdEPSt4JcxEsCYYI/i5sXd1kJ6rCKZ8eauQus4vyV3Sjp6WQXJlJTwOzyg5Mr+xozTElyrpJRwe5zmc/OVYEdiK4aVc37Xy0m8p+gEdW+J7uRDlQNICyfy9ejb+D++gB0AslE1qBOwZc/9VjRC/FXPzsThA35f7iDWOaV/qmWzF4KJw+U5JACc4E/ytwkfh+qVJ3Nb41pU0VoXOVKxgXXQCvnWoIZOGwZh2ODz5g3MEL9C0W8JTWcXky1Msj5ddks6NhuYxyMShWO5XlOKTBcZfSHiWPcbt74BvTo6lecV2LMZyCF80fxPQ15UEPzbAyLJt9FhNWTgjdACw8XlDtKSC3c1BRg3vHib+fBjzb25D1aXaTQlLxmGOVu3owZXgQ0Vd+hZkWFeJsfCS1XKszuafA8Qvhu1R0CbeKCwh+2Evf4kRDOcORuB9Bk3f8BnuncyFv2YwY5ZKaIoJ5hgyes1qlhIpT9Jydad+0OtZlngkgzO7JUQqZ2snKV8TAqsWjfaG/6fwrVvWUQH+YoZ/MOKUsTSULa/M5J3KST+cGYZp3fLSh89fGThTThihNkDym11IIqYuQazXc5Aw4pq3k/m4xonjIgwzrELh+pkyiWnOvQrziRTIOGL6l695LmNbr/rp15JfxfkrQ+n4xyZElDczis65tbQjTzZ8YYUTi6J+V6TC3DlFLdh7M0i8+gQhuY0EIn7qqwkP7BkcW/wpUM4KSIhxWmOFnoBzL0U1fZucRdQNkqOMlKnifN0jScjaxcfsXXHjmdc3k+863/qhUTBLbGqASwD6tPnbHXPWUHB4KUPrRRRVdpXL5ZC4LHh3xYz/BFWTZYeZ5+ZHUvOw7+xdBD9jiWclSmKrUjqwydtYY9RrZuHpvXjCmyUGXMpiByYfM+mkE1K7hrQVpkgqiM8vl13U9WhD9vYVcp6lPr73adv9u/1l3N5TBFWWnfzg1pVluBTEDLsW9QN8zzCTC2Dc/CaMelUdnpveapwuY0+dNh+bTo5M9h8ZSpEr5antP9F5D2msTsqVtREw6U8WhJfCmob47ijo/x/umGIuHJkmsXw3d1cTYHlP0ZdkCyi57LniDP2GUfmyj6vPQPfCiKVb9ttXo8cWohckL0y67JxAcU5j7PCV1IEMdsn+MpIhYW8jAAUbnZSiBG3zB5o/LawqXt9xLI+F+GmbtvG+jvI+m9QdZNG+Tf33xmtW0aBSbyLl4/m19pIK9KpUzh/wcr3xn3s35yIn8KodGeIX+U3/xwPJ47VoHyUUYHreVHlp7UK9gbNa8qV4TVmT10DtQ7YlMhIW6d5jWYUaFdjEIU/A5jlj+syzao+ZakH/vTIknoezCveiJ93licXv5o4R3zBm+jwc9A2xdtMxeB7jDpaUMKyI60yPwAFKK6tLA0G019O22U5q7L+85K3y6XDAG7HeesFJBTdtorT9cmQdHtWtJB+jCQIruNUiJogiaYcyP8eZuK3NmwHbzsibUr7Cv3hAAH8tWpGHFHYVfwrMFE1aO0IbCGsg4f9YqU87rYmiIUvp49FlV8PmZYJH7++BWFjTmkU0kSBehfiOKidf+Mttuoh35PioribY3AEtOfhhWk85X+YICq/k2N/C+haNS9jrcsCLykgPq5DWjbz6At1ILoDrFsj31vR2rrh8uPytfj/SCEU3hmT/0heVXc9cTxa356uzh6VYPFjlkAnWpH305nwwapDG/a/2asxo2xkrUscNnE2ELJXJMi4U4i70/l4F2bbwOGJgfxyfXQX6c30SQLfqTg0KD+fUUuRcaUwYqHPrUyfPBi7Bap/xZE2MklmNOln1xu2e24+U0YdYnbG1ru99eYZt7eK58hy2Mgc+CxuUohuIVLmklYOZPwlCdmS8KAqZwLZsLBsbKg4tRysH+5GkZmw0jkfh7VJZrZGl83cs249Q/k9IRrUgmeX/I+XUbzqf+RNt/M0QjiKRQD8q5+EQUSA5gFPZpndq08wfnGlFRlgwJqCbCeB5cRVmDCGZCaUqouXrVoaX7VjibyNTNsxeTPxXvXFLE8q4zG/B6wHknqUUJRrO8i4XeNOIFTbp+7UCOlcAzt95tKetAFJuKfsvtJGGJE0bdHe/PXZW+cMA1B4s8Z5GZ560q5RU/gof2PrJPvcrgqlIXMd5fXPM8gzTfDGyGzTui5VilMCvfp5nObWLD41FDeTyd/cuv5YmZzQPNYJmt7ktzjwnpIrlr2iGWEI4G9sWQ1m2lOssmYofUduR4IW495fXslJW0DXlQitV5Bj7wPPZ1EtCg6VzJBXrZbjzZJ1K2ZYa/uPRBhyCKf4THDq15uqrVFL2yz6SzztEB5crFUYFk+Ma/MIey/ii1wqRkBj5dlXsl9Gqeuv815E219hoykoHkI6CypFf7gbCncUVFqVzJDnC0FiIFmSUrA42Z7AOUiJxXYeXxQLCVxrGNEzQyeEm0f5UjCIZtZzwf5EsFkBuzyPXGEFAR2im8ksQUOiHefEL0OgrfY5zr7D7qDNdXGhs9+/adWxsy2wVyuY0cNFeAFjiWl+Nm4QXEK3qP7HqEYbiDrOb7NdDBbV8GEuF6ORScTksLpCyGpGZ1LSK9GlW7Kb3OUvdrowCD00sXFbsVJX8577yn1ZDXBaNmEtM2LJe5GIIrrjZLh7P+taZiGRHAtHXn47DEXeyJGTl+jlSRMiKrqTIcmuUNYYt+xzMMIA1D0z6yRq9Ekl82aoIsYnUYRwDVvEHE+HxdGhTO5mEZy9bCmXWtJ4PzQsELu/5TA2wPXJHrLRtqRYCD+jhUk21W+XMGsZF436GdGVkWyx74nA7B0CYC1F8eIAYhX7lNmvbjjyFO0/996M6xiBGoGz5KysE29CT8tHDxhXVhPIKbesidpauKZMbMlnLTODuDa1pvwK5EbhfDeM3atq3S4ome7A0NUPaVeTqoa8pSGXqXbZ0l0Q0vkejQ7nVUpSlC1GRIRYmsnsPFioteJZ/KM+yaorjHKUSQJe3Hlu0aBnQ+wsrcqix0g6q4NSCBqNov3chdd9nHA7n6Je+b4WubmuM4PASXHbZeDrZihu5jOEZR3hsBeejWeQD1aq3eHgZEmS2drSZL2qOPFXv3g3LBCWSeLtgdCALLAn1G6VL9VfM1VlXuvBI3XUafwXtl9lGdnl9oHEyCpSPnV0gpzWVLpQOg1hhzfxs4/3LOdMcM7ko8e2xfYnPYVJE5inT/VxBnJQ76oNyGfswAyYT5yAlmaYmgCvXAtLY/gzeNwPo5KKkPG/sFUeDzIkPKIK0baR6SvEtcONsRdavvto/KQhK873CDwp1bGNnzX9nk6yWd9tK3A6pqd6/57bUoye/3lQ3SicsmRt+3qmwB7mPFRIYdWwsktrRoFbbXJZAVKTZP1CbEXJA/OPAw2gyfQuPedDyPi79HW/uhty2Jzl22YrPXH7m83v5EYnPkaa6N5tCny7YxINjCRtTPb7DI0E/RpxXVqumeXdLOEiKuHanOp1dXCat7SkcLcmmqLtUn5Na1T0TlUrCV1ma3rXaekhtgrZA/vvRa40CD3ktRv3aOPEtCFO56eRK5dQqZ4QYzPtgqZQC9wCNw0Y96Dq3gkxron96JU5IV8i4kF2OHzLn1du1ku6eeDnC91SvxStbA+zN26ZRjpvJlXMAdQpPt521nn7bFAV+C9WEo/zEKu8p/s8O7YBW112DWFCU+wCwEh9UJxcRSQeNZKOyeyInrjmrfiWXLz8nkymkWBg2I8FEdevve2Z9/9c78bVKxxiHGdSYMLheUO+lEgTbi2MypRnMQtQAs4+EFS+LEsMXsOXHgs29jTSol+uAViLbPLUdLCBVIeqcPWktJr/SMs4PgvV2IDpLM7DjfVSNDLr/nLKCKFlJQbcZSEEq6AQ6uYHGAi+QAkkHangkcQFkbYEEAttQKYISMNM28WBTgqUdLbNDTHPea12n0LrYFbWVrUkeIe9gP+WHcZb/KpgNfF0Lq6SuHhFTYEyr4u1040/JmZOHsFXIEce4ssNQDdcQD4wrxLezKvaCzqlpr3XKtk/tkyx46jUbKyQMoGC8M1P9L1cEljT6Bxh09fRm3E0C3lJpUPQUQ2+1ho4gyQKqPqyycqXQlcV/GUCXFeoGlV8wK3P/VhtMBjEaAE9xbLcg4l6wLieRbF9xQ5jsk8YgusTmJFw/sTVedii7F+eJywhZHCJs9VLvQsO+6d3ya/hc1tI7Ksx3zR/DMa7qpTmx51rJqjoboKcBE9ixxpxszGoZy2dinyK5Td4BZoS+5YkjX+fB+eNw+Z8YelacWqEaDMe2f9FaFBsKiL/uGOzdjp6iuXUqdcOBu3IACTJc1AC/qnZvK37jvHjCU/wN0s8EipMJKU5Udt+Z5usNx8WTtRaRLKdNvBzlJtLMvE5fIsXK4lSmdvBNVuHYBdOQzHAcY0Vd/VrNsk+90wD5ib3kQO5OB1I3W75fcJrhT2CCwvJUlruhrZp330eMNmbPutrvUOwnsXV7mtQ7QQyoK2JlZo56AMyFritYTVdp5EbJzdqarHZ32xJXJJONVzpjttatTHWamh1eJnGaX7ODx4lyQQ4TVs8MdXvUVeRpINSURXNhLwVbs8gpBOj7fCISFeCeya82PqqNItZj29EmGOduq48Eptlal9nvMCprspHADrMh2DW1zXjsWBqZNdye41uH3iX36ln838pcv+xUSux4JCCFnnFKcOzo/6AsdAoKRbt/YufIV5KYG5H6H75H1/Zv79HclYOHowo/xAI+9t64LaUr8l0qqi0eMyinppffveLAVZqY+g5ZxDL7BEOMWk8KV6ELDbBKz/bAVxRELoTKHrjdMZXbqQdBq8RlwgO2fmq0QyPKtVbJ/GqPRkOvzGt0/Ywf88yvnj2++H3xtgZ79/+u/+qTjsiuy+dqed7tTGRz7zy1omr6jujqNEaCLXg7oHDwtxPIV0itjpHaNrPKRqXUI+Fqluihz39f1kv6tK91jW6St9nC450ZCDnTjHPGqY9RXAIbKnqBQ/9XS5AAVTXrl4I/e2rVytPWL7L+80pqLulqAgSv48h5cxlKWQjFB+8RG2IlD2DoGm6WqB7dzdNz7Vp4ndrhbv3viZy+gBE0dBFUWfbC9upP4CtnT7pco1blie/aGOGkiW54a3d7wACPrYzJEfOj5TsPP3l+/LgbN1S6bPYHQ/PCy/Sx//7n3dyrfuvO1INgrh3+Dm9NQSdhTaex6BFN75qCi5USQJjBq193aYKGfUzlvVqrdWKdewc3+yBwkn1gv+bNzd73J8bs37nUIeE1tlLp3gHZaVbBT+t7NzU+e0OfY9HMLq+acoF0s90QxBYpRpkvoo0M6G5uIgYzOrf4ensCWI9hvcvTVaTo++f88+8q49piX/cvGzrW3xp1jiHPbAOSyw9WaHQuxqVeSNsvp0Whw2HG+P98/iqsXlkGX10p6yiweLHrOLWc56TttYWjYOvIUt4elIa+mjAMK8Pa0WeRNFxw+MHmEf3NJYX9kURL54R+dBDbY7LCYLdeIZSSV51z1RTP/lzPo52CjL6wlq98myZTROcx8pgNMupzLhjC2NfWPhKfP0xofPwoA0ZzrS5Wwk9md0Z31q9dIfkjR7GBcJ3qxONxNQyuvbLJg8RWHJS9ssJk14rWJcjgnpq5XyyUQbTaK4qEUu3KcEjGGXwJ27M1DMqK7hUt4xue26BN5ki5ByCVY8uzQl4T8UTYn3mMfRapqAclbl7KfOzZoqjVOXfdqdUarvjP70unX4zEtpf1vdb23eH1Qz+dSzTdgqOaf0zmftb2RntGNcCIfwkEScUzyTBpDl+Wc8txLA128qacFiG3mmj/M24LMRdAAKoBxzd+O2CYiRqNqwNJ62QDVC0j9A5gDGnJ6td55YpT/cSEFfgM/3RRHfv2krUsa6F2AH46t4uc34L3YTC8sYI5mw7rSDtS+sA4BzyYb5PWdlqxwc5s3ezHmQRKEfJ9yTPPTrMOEFshkfC6jPL7QDNZ0oughLVgXpIgXKHsimDwwxG3xfS8wdSowE8TNeuie4fX++cbD58fy3egApBzecfAHRQs+uC0S1J1PgoGLXDaCsiWl8C68Hul2DL1EZ6jcktgkYSfFUN5WtH4oQW5EcYzLAN/wu+oz0TJIOH33NDB3lQ8KsiInYs4nECvOVjVARRViMALGJ8bsqoQ5ADghWHbybo26XtqcXv98vr4yUoVWRP5JQQdF/iJLVTSBhGyhmYsW4sB6ZG4mQ+oMISVyf+NG+g3orDjFShRllt91DwReJ6J/Dx+GPoLrtoVrZsRsnUglLAogVAtRsHEAo0j1JNEf8VzpJFzuhmLGJaImyYw3aEiFX2lDzNaD7M6MUA8nNvrpRAZDhn+yGPWC8KOmND9lsb0BdNxKosR7Itgrh//Yacfg4oNoxwosVVnjmYKMWVz0q4tsNy79u3rvB2HAC6xk6TL/awI3OgMlqOiC/ukO0j4SJlo8DZxIhUU9EiHX3xUu0QByEn3GqGT51RJAhijwAxHuWR28/A9XjeUcNmVjWrwLrfeGZv8WdFXCOxhcBd9LEjkWK7QNgCR5YdFdda4F31ZUwAOd4pegMlBtN0E3G5p0BoFlr+ccgV+uy3ilRQxsgTV+9PFoYjcxS5tVTRLquYS7mXjTJhxMWIgvRAIeGZp60vwDWrw3Tr40v/+YkmkOGvD5fqs5r9RYHeBq7qEvd4bvfrMqcZwfH3pngBwpJZ9TQOVtOz+u1vt7jH2hPvtY9mbrCdEyBebkCfmDZL/R7/IG2Y0dqQ0CaM/CxZUIwS/lz1VwL4xsXG3R241iZtQtjX1ks+/djb/pDcmPH5ZbgMmu85/dAMt0bKdiuotdoRGVJCOx78SUdK4HgdgG/fJGmcCpo+cXdBwz4wjHmNo949LXhtRA9zogqgDbr+6nm+ABZHdj2ZPKgZ8ZJLYsxC+ENUeUDoDXF2aW52SBbXXWiQbJyt3EdSfVNoKjFGGY39PCNXXZ5ov16ZU5PN4cSOYspIsBEhqn/mBfsEvdCMKjuyQUWiuZX2jfsvCWd90SYa6CyOuxi3XcU6F1IKl24xRNqIDOZ6bC4nS+3MrN+AtA6XTu3U5DfFn86lQyxmV39BKCl+b/icQrddf7My2e9i6doehquEO/5EbIFYnCAD1YrUwWhkkcNBvwqVWhykwGYMfQNBXfgHOsg7mju1uaLzXNPTtz6E/Wzxl/nEDBxd03Aqec/CpR/PIdNe/4/Jh9Ry/eMeb3ljETnWRhWJXKW+hHMCNr9/U+zKlygpLOpNB6mgcoOkCe/w/t1dmCbP7CQg/hoz4ml9/x82dkk05j90jclf9vPp3kQ+ToMoBf3xbYG49GFlFsX3ofxhN6Ez5kV66ZTPGrccDyBQcRaElJLzOK7dnryWeVBcXym2XoBRHUUxqZokaBZ+JG7UZKafcQMIHvY8zT+It/mIZlx7WM0L/vYb90NhS+Vcn3qoHdrzSiVvCEo7EkDW+lbbUET/DuyjC9sNgC6wLx+IpcmWfm2jTewgM5yAiMmwQFOI3egATMrjENWz3AFUxpWi0UYwhJFbL/NlNmzj+ES9n5AunD0qC9zfgA12q4B0AFlwN6um6Kiw3DGNuML09Is5kbgeYoMaceLtmKX4yrLV3lIpxik5pwPIrdy5pJYxjqWRljhx7n/ldN5poxGA3v/iiuLdJzYPlBiOp1ysJ8jZQ2Wo8oF3H4zjjdi8+RuHpv38zO7Kk0moDlUXbPmQZ59yeMIZocOeiwXDLbtH3HCewT1B/K+LJzFdXBZmtI+sMTNJCDoGHj4Rd1ZmXjZQ4KeXZ/MQZ26vgSSlk5583rEk8SK4tmwp0xSoo2146Xe/B7Ha5cWnf0haA5/Sst83TXfE164UFYlAfhchOps+gPvgegSo4hyHfiU8CQLcu8iprOHFNhAS1TJE8GXYi9NA9lv9b1aduClWY2ctLcfa7xxq8BeAZAKhVYC/tLmbYP3Er25/NWX678Zauo1T0xjINz2G4CAOtAJGV5EZI/wO0nWvWhm0nVmsQC+fJ5D//IZM5VAiOsFv2Yucxs0pmaYcSNSWDDhtfSMBsmYNMuid0WY03sqftUX7xPioy7DH89pDAEaXUDw2iFkFgbbjG+23sIMjb8VrV4msmy0YxZesg6C0TxXhLWs7J2ycBq7g5AlT6tb7HxDixZVdpQicPfj2NQEncgN8gC07rzt8lQSNn9Nh58EqcTE+bc540pIRH8Ns+dIROIE8ZwpK+naR9lh7nfQUgh6IuTZ+l8icN6LX8zZOkNioUzOWVyZRbIGE5x/Wz/6/ACQSU6hoeZBcpf/spErb8j5PojKgfJrATTo3PRjfZCtcmxgzFAyKpzAPp7Yp9wRgHeHFfjYt25Ue9wkbu63r8dsAmX06oBdUs6AKYPzCuMuwJaqGY9iiS5oSzcQMhpyxgV3+WBWR2K6Y1zCZxe0ayqMjqh11lHXJYKDEMkA4/rkXRqe8Sym34VVPe6ZFzUhVT6IrwTlmqdQkQtA+RWiOd0EAbPZcCInN8++jSYfKJIKzqQ0l1lbPRzr2QiIy4psEQLkCE/i+LLP6gxot/nU8KHZEo0Bq2XtQnhtrowRUic1aidxCz+lHldzTspVjbjQNrC8757M1QSVgPRM2iwQPB+bDLzrVVJuCpgk9qybgKhlfPiQc2rrOvReH5rrEL4dWsZlef4sICah6A4sQdUssQMHK0jLsC2bP4O/iG11EwuBah3VsImywcVflv1svjPRKwoIlDgdFvsrMtwgSgOZE6+WDTkwmnFAKJuveCW2ENnDjtRpDH74nkvKRaJR8+3BZhOVBqlYifF26nkmK1EhWE5X1LDWkdSp3rjJUWhyxFHhFi9vkE7N2o2hnz59/icdyyOvXwch4AcuES2LHjWwDtwZIBQ2zj1x30M20RBxIP9Qc9RLIFocG8DzeuCcyfoAgD3kFteKDOBkjSF6ClNjIPesV9uCmY+BWp+E1pI6QAirDStzeU0ewvVdX+5QnA/Jy6ydGz6l9EvxmLcX80wzjyS2JPdjjqMUsgAhT9ZLU09mOlz6mHyMVi6b9Mjti/iazj6FaGXtTZAsGiGR6LnSPuWZVHWVYdF7eKsSlcePzj8yv2QyOmg5h4rtachfPRSSbJPxUgRf2Sf+kVsXn28AL2f+b+8MRCIVv4/OoSuDrfr01dmFSjA/fYcBICbMdfji9XgUNrTSIyaY3lkLy4OXPLA6DB/4xCsZmSzhHTlKIX94gkE9yGSKca8EkrTF6hvnlQ5XfcUpE1hTzvSKV68bZkGw1wBRjHmBeDRHpnITs061oEzpU7bSYu0CY0kwNTfWpE3cgQWMgGzLRQmv2MgLWPYj0fVAZ8iO5ogFQbrc59UwqXo0NNENyYdZRL3zv4aP21ckj4Lsbc3QVezJ6MutkyiygqhRN5BjUaSOWHTg9eIY4qWDLbZCW7zyaOvwsYiUzZoh0Pxz8kbkBtvxJS/XgrYeB2C3/lpsuO1vUTyxEEmmUMO5SNO++PmqNhopwnBB1I2QNjsovalgrRNdnbwlqaq+TKy4KMzOFn2X4bH1Y80PF+tJ/MHYFgJr/FhDoT6jSPiqN+MlKncIZ8dmn7mtAV5HMamFd20JPesO4NeruCc+r+S5Kl/MaAN5ANTH9hA+PoQKmhFtKtrtj4Db110lUTnTO4QixAN1Ct6FLmZWFQE5P0xDIEAITWOCqUuWCUaIA1+451JplrccuR4oZ5nPUBx8ZcMs8r5l8YQLq6aSV0tpqcvecUUNlYuoKAibIPKvCRjvzUeI8JXu9BaQs4WceUjCpnT/PicYEH90NVnZQ0sRnQDHCgfumC4FS1UyulaPOq454XPWdmAYii9Yec7USd/U0SI2UcO2z+Bg8IVDGRTSlWARveFjm3QhWMPonoPZe6lu755qjHYtNOvzr0TIlRuGxlKPzxHOxGdP4p+5tJUNw6OuIXNrfVe6f/dftfM3oviPHKp835eqjk7kbjuuRFlsX/9Wid9Y4K3Ohfqdzjcs0oEy9tORSgyufHOZbjmjBnKq6xrfS/OEyEgeR95gkyFoEDWUTFsP+TZ7j+AAnVvB6H9oTm83pFSA2LTkgNu3T9jz9NwnAmJ6RgyHkOj9VhAg7TaLRLWVPQhcN/q6wwwK6VCccTGAr/KpKTtEYD33ZvpnqUaaFkSxeIh7ikBaSWSCaMi/ZythfhhtsZBMs7ASAGq5PoTa4wKYNFL+wktwWgAhRxuyvr7Mw7/4tWpsezYCbCTe0yXJrAKMqUU/eFU+51ROQYtfrpUZUqCYSoQN+894u+t1Pp7CJ4kBBaRlpGIQMhY6F06Pm9b8tPjFE8vFkWTwH55PL1zWFr4j5lYvEcHkpeHkebS0xG3OUIPHaQIJ/h0fMa56gjGdjwYacWRrpNRCcCJnHvhZy8Ou8BDSJXeIZxoa2wt3zyBljbkJjD/clg2CGXd8ZP08POnwVvL1zEfv4vU8OocaYETqUBptBnmBT0lU/BoFQN5DPjU5NfORji2O2Cpm0RmK7gxtZ5P1RU0TzUXcjG3nkCzvmPJG7eVzkLRFVAnGWyzpLoiIwA61vuV4fRPG8BBGtIK9/86kN4NDb1XYcbkLMMXarH2JGl3sOhT1SJEBGn3fjMS+0XmrckVPWws7Gozs361aXlqDgv6Cfwmx0XTB7SqXadK73d7c3GjAi6g4/3RH/3LJNMLC/ZHzVUNFpPNYZilLdWKWsHHg8pP7Lf74m7jLvV9t/rkWUI62qDHZr/Jo5nh6mjRwfiRva2cReuGGgnRjE7xzH8sCROOUv1cOq5mticPnvREnGmXG3MG4idhtiNvQC4VTA51jxwFyT0chBUqizZLE7gB0qOZvnJElA/mhpKBUruVo2Yl1aTYA8r49Tg9t7IWYA05pisbBJ8JTRP2kNokkKk98x5ZNbh+j6cB816543ZmUIzWbz+qS63iTRSh3zXfgSr8f0rkWGBCG9mnkjcJKBECYoygsPjhL20OlDLE2O6RtIHnleA7VzlWhlKsINFwuyCcIxFIln9JhvDGeA0TOUqrnLBzgurLKTqG8iR6YQY2YPSZEjGMX+VynYjzNa1XQEWyAUcHoSQG9N9+Q0pU99Rl+CVQeVLuAqdotFyjt4HG0sfoCfWfn18cN1A2ada6xn3FnNopWaehZvtZn69TIZGJJ2joxtpTHComwTsUK5zKCHrAynSHUrHWK18juiplQnUeK6tuA2Fjqjlk5Whet1r0HssTfdSsMyHMOQg/tI+NlFMcgxRBL+YjgjSD3elcOiWWXMn01CcBdNPM8Une3qSeJknUpP0B21eAHlBs5nWcBupsG3vmsesfiN+LjZlrj7Anr0zXvh9B6chYktkbGUD6rHRRJQPUCS5Vy6ILb4jBqq/nJ3LxfTsGS+GR1wMYMC3qalQBuuKvfUNvzRyGo3NHl4V38EQKaUENQKEa+XKPQlOon/0wEw/b6OB69AjRSL1R8oWDTMi+f0ep4vrDIYGeccq/Zz/+DgtHT4kKldhxGbyoxyz/Rg2+9gUrUQJxNZb1JrNGiFky75Tpdb1vvY/cjz58IJVyplgrSx27fLGoiHASZ/Pogt/aihwLj1eeJBHrNz9qTJ5zTdSj/dRiwJmkdZt76JLj8WpXXfOZbt/I0C8waRnyz9UyI6JX+umU0MTgNlTVPHWEpTmLX9rfb2vojbb2Nlp+2r2QUJWSewnHakWrRkV3adFAHvoZpnwLXRW/wvYK21zC5oXFzouDHiP+0Cu1c8q3v4VrC7otWV7Tsc3EH42/T5cNsez48dxPtbx2ukF8HdUs0p9FP30hS/0d2fZV11ZijMB50VAr4Z1qTfnYorbj5qqXI/IokaHDntGaaCFXDEnP6gprH+F4/lzYw6L4jMFvbXF/4X7kQeIIbuXPwnbfM7996Bj59OIPNNmWXH0A4dY/qo0tsod835+mYTxszA3ERZa+8SP6mTYfmjYjsg6NmYu28s5fa0IXfKD/GbjXVq4ao9UlMBrDevGruflC4bnBxzBkORV7dPYDYkbzaZ7mOB38nUhnfVyHL7FarMgjqumYDNTuVMQx1YxZ0tJpxVwIKWxiY3H0ORLdYe5WEm/g237lHl/eWfQe5ao080PKd3rbQNRx2sbzeedFsPovynDkUprLA/VM7rXE0dMRmPbcJG5qn5fYxPF1z1pdhqwgXAbSKgSwHDNb9xOMKV3JljJoGQjuTp/e9lk1hMfYTHperCaboh97KTWZTkd8yZDcCzaOHv3KtHAPsokv0TSUuTll6zY3CKY+yKZaXAibJbXP0ewtQMHu2kRFcMakWmjmVo6QphEbEGhAwvVcTlC33lxxXwWKvqLKyCLL5VogF8ClrLwApa/ae33h2gNiEXF6miJofmtqNZDON/P0HbSJX1h6oU/lx4WG4Xc7qWa5BuXsKmb3xu1aDX2YemXRkIlVhB7+e9ywrGV8yYYDovFVzOPFc7H3yOmrBzJIPuI7SzKkZLlelEiaX/eLAPt2G7xcJssudvJX21XGrzq3/bS+A65X3OAXEzeelibD5Tk40F7IKop7Z61QAPeDEWAOsveNzlCajGn6czscCUAtjps/nkoPKeIMVgd2I0/m6dFyqq0ViCdAX8d4Oph8q88g8Ye2BI9QdAq8exF0FEBd2m9tvFTmv2vB7V9FrouiN/CO2FfRBzZdjmbuQCJchmSy06a6ypflb5sWXKPYj+rKSsv4XjGSQulLcIBly8ib4gLw6vcsfq+6R6bOHQdg0Lz1dxy2wZvJG/Y0YpbOX+XCkZ7KNFs5l6Lw32KWwKZPqHAS7QwXjquMMf1MzZ5ntbgxraGizIWIaVnnVcmJpc1HkXdxWrDRLfWiUBVUlAFf3JfZlH1uSd2hIFRxMyg0GurlUI3SyKjRshplTCTezL+RdaNLyUYGoZSdoWDiRswl1tZfT3Gqz5I2Y3nC5vugRQuZtHQBa5YM74j1G0h8j4uvRI11LqBT6I30K25qqFYjsLjW2mCnK+2aaRnCAy41WbkBNMzXYXH6NmvfZIK+fDy3vdsEvau/23SBkxw8XzvOZp563ALpy0IeZ9oMVOu/JHJ1YJfPOIO7fC78M+qKInQTAip47X0zQqcp48VFFblDLdWXsYQHormZEVcybDaw/m1gAW7cPnSk79a59BdrYBHCeHPKB60tqEbxqm9XH4fduMM/XAOhe2OQlOe6V9PTpdpMVo7RLm/NmTk7yEldPxkP4qpGeIKLxRosZS0PQejx8qhbAZy3fc/msjSeX6xj/I7g+fc+MlqIoo2NdKIW1THDv3msMkhiQEJ0Re2q9gbu0eY8CxRJLLcgf6c9YYfwWSQLmA4A62Qew9alHCA/A1693jHrCfQR594GoO/m1ZdH25sOThcTTbM2Cq6iI/YqEeyXbY76zK9K8fQB1yiTPTyseB42J31b28tbMN+EaMEMYip467QedNUrXcTWoOvcQyz3t95dr71Nyhu07AE1r69uCLGVW0J8GJFIs+81gXD8m9BGnefF+J1WFkPpfps7bKRc14QnM5Fb43h/j6Ls7LgrIENi2gT5PF1W+jKf54PEio+vZ3kVPnutcEtNLTRjfav+8X5XLV9VcGE1gPZtouNnVEPXET0naYbkkKJ7y1vy1ILorLnQdd1mE1flJn9UYHFf5s+buaZJ8xXgvVZEez3vLUXOCl4Z82BTQEkRHPNeu1QH75WBt/N4RDcLPgXkCIst3tmqf5/qD9ffIiBvTKyp/widivyi2e0ZUfW+ThGY/HDryqPdOTn7yQyUFNW4PqG1tK9fzci3vcONmpnxUZ9XNaaAmiV/GLeHPUdyenEV++94NNhrBY4xHNn2FVYiThTyre4heJEolQooBhYrE0Suzo5aH2PVQzIVAnb1YKevIzoSBWFjjnaezh7PDtWWNjzO9AlaT8y+Usg9TTIdTC4kUp3/jOrUfXMQomfUB7IprG7673vak9FCOrLzd8zDWQPUdW1e2XoDdRIgZsYmpV6xC2CU6fXwkris5bRLP+gr+krlUR20QrQ1mHo6vunZ7CfgVP/Piu55scBA9hbHBJqDel3GvSTNZqTjBaxROpRG4xgSsTThJZXSpT8/hQKOybsxrYQUBLWBfmad1Xc3IypcOXq0frWaXDaaJvHuu9gOKjUh4j4Z6hY2PtSakjkTUjFtmHd68pVRuVZGEEo8kEOzce/mRFbjp2WcBUCdZUsXd8KmO3W4fLHYl6wiAXTPY8F1HVthj915hG2qKn4aUa7znXJq1u/rbhhNyjVS+DNhgS/dKxDZ/bz4GbaG/EfVl2qPAOJyYEaVxR6Im3MTR2X3Gwa2OUkqqey+JnnVr0tRcABdpdzeSvxvSnX01YR1Bd6fLrK3NIbiv8i20spj56soMadOuOKNGcnVezmLWGP7kDrEdRZeDK6NgU3O8rQQ3Oj18DDJEPsW2GZyivPRs0RaDLiApuI0FuY2DSP7JGSBu/4j5dul71fPA5KhIdQSxOzdIRpqgwt5pBIwKhyUW67K4okH/k3/MBw3i5GD1P7Zp37jPmuZbtImXT8pEwJL4PXnrpJSDZOcn6mi9+mLSdElcZKdmOOH5X/N+NLNYCt1uVqeAIckqy/5MxMQzrdNkPp6XITTBh08UWvPo9AxS0jOxn6V6KzS4woNZs/mskQz4GasBs9kA3uHPTdhGVEfDMD5TGvzYHCHjAUBmY7Nydzt4tT6DfavfP8gAtwgofjP60jAqiRcy9Ci/WynMJGz8tLM0pdCN4MXSo7DCxudU0ouH5YZP0L/r9PDLVA+eJ7oPppSWprTx1XsIgGAZfMdK0+hDWB5F/jmldXxLjs0w0i5pXVlN9alkBSCPz0mNYiNcKz7sJ0qPySX7hyA5jAFcWvipYxjAsB+15WkQwBZ49tidceyrDL7Bs3mD834fhykR51aJAHUnmAO1SKYCCfCsK4VUvdqdskv2sYwnyWEFq2YgS9uWkQ3USir8wzQ2G23qGMyWiZloWPCvXExymmpbipvLm8rpz/CfKP4kB3xr8bepYOrqQXka4mqrmSppvlOvL0g4OflZLpJ2za/6UGvn1X3k/bs3xrHE1xOl7sN3V3t52ZhOFgjm12NndkO0Psw8qA/k3xVw2nHwbLNTEuxZ7rO2hITrIXwnTbpEyeMAeAymj9m/yqzhCtv4NiRTJFB1ouQqZ3Wxd9dTSX1ZOqLXLd0jzS768umV+wzp1g4h68AkLkyhLqDsrvFYajJN+XihpxC+vjK92wHZOrZ2nB9MXpP6krVlss7vCeurLoIff/b7NQ68NOBVNfJl+BpN4yivoek5tTvzpNXyus1maBUgg07/hacUuZG3c+3xCFJsakOcKnTELQu/HCn71QU4OxA2uYsdEMWGVlqoB8WelKpOyBvyE6DPbnI+wwImEXCYIJlpl8QKiAIdV6XZYgJPbCcucBvHDjFIoHoxA9HEDctrYMQaAbi8lK4DPpc8Nsejm1R38l3S/Ki+7qNrGZ0RY0AgliqueTtJA165ZxzpqPytm5GLJBYeSzAO8VQtbQoAD7VE41gPvaSMm5kTDAQ34uMqjeZG4pm2eTWkl8QXSv0xW7Qdli73ldDKVYd87Dqy24EPwLssGUxTkAxVNWwsMP7a2TMeHKBYpzkRd8dXBJdgaf/IRAhSLNaxf1C8gghkK3kZbqXbGo7zZ0Qd0BEndCi3m4xJxWj69BenvGiVKwah991+aAraIH6XZnZYCRiPZaXpxSuMqH/KtOpmYpm3cQpdyumahGxL5s9TnFutzj5pvtVYZ8n6+RVqkdDkpUUi/1xmtmgrOnK95QU+0Z0r4AQiapOem0j+g1h0hci6CWwhuxTwNg2A7v1OF+l2l2iJo9bkGfoem9eA0dxtYJWCkZVrQDkCrkNIvWJfbr+BWI/2AvZv9WVcSmRtPJH1hsDecLk+OISPusZpAK/Oy3kLsfX8FQqosIMRwEjim6eFXH+7O4vNOAePmmWBMpqu+qP90bFGeLviNBdoa4nhQSNL62H8qe4T7SSq8vCMeSPlmty4mgU/mkDXuNPdzNYiAms6ynbaFbZ9IvZLHlaH82TR4u64zQgtBZh7iVc3GBLASYWIr7BphC2PHnJvzG+Ddr2TmP1kE8ASoW8OEdnZppBXc6bqAhGJHBhBEm6XXCFsJmatsN2JjYekhUizgaW5o0BvEGmvBF/1iTMJkxsgxEfu7gPYx+byOy/Q/HgAlBvCkpM6NCiR6yiQTR2vTdEnVAvMLYUtWo/plD5m/pRi74LO6XDjlXtGcx0n76mMVQz/GOQztnFDrHCc8DZ3WWyWJ7saQFyvuOzIxBHfMXsJifApd9rkzOPZHuHxjMgN4KEFg6LGrWcGfKZCMSOEotxg5aBKtAPkVor8dOH6J3E5otppONcnSoy0akj5YUTkBR6Sjx7t6ymopI0ICYbPDyw3P6Min0yk5KbTF6ZVmDajfLYJjvLntTITIIcKnczh5VZgtMNi++AAnGqXRs3n67omPD5QrXz4H8IuMjHVXEZxnb0LiDS1fBcSVzv75E+d+CSke8bNRMxrX0k/4eZ1A4eAR5iekZJkCueOpX8Dsiujq/VZb0tTn3cZmr9MSSWuNEk7AmOT8BeF8iiR0T6I6cazIV48ryvmN+N3MlhamzU79a5VLw5S2MGAB7gz06GxFO3dTMNMmcZaNB9S6wuUGp3RT04nu1ypAfI6z4/ku1X7fMmV5RbkXvEwuWK/TzGgc8N1f8ruauU2SIClJHqIIfN9bhf1/Po95S44B03MW26BHN35B+Sj03gjhJ4XkfJKPu/mQGvs9GJ1IntKlQ7eaxhpnvhO+NqJ5R/haxppzH6ZNAc2tlGY1ZPwLs0Djw9SPY8x/qOxsToZMH4qd3GL69xH9yWyN++sFlE/Qlp7811+1RTOdAFoHd1/SNDGJiSfihsnXOtdGrXXkpBodKcDqVdBb0KKIpNSPjcOzTxcEYN5FMV6hHdI8XMFQ+jj6RznN6/zJ/PeFCaEkMcGix4DuB4LxSmSxy4wDwjMAvxOJ9e9S2dElj3O2mva+S6T0T/M2JWDNkVnYGC98eGGaBvGfgoW6kwvD3mah/mGze6YiZjzFWCD9zgqj0vs/So4ULXq1z7q0IPprcA8aN0+bh6HjoRm1EpOSN4+AQln44s3MqYU6G+eN/14Rm5ET4b/IWMu6gRAr53LmSsAq6Jfc6obMYTQ+vgkoC6eeB7My7yBbymNTjJA5fyo3wB3ly9AuhSXMJPC+4NYKxlJeByO14zuccczkSoKrGA8ynAyvLuTZgtJW/fbciJgmGurFpH9i09HbrQpoV2O95z6656+4e/PbWKT5TFJK//ERDDiyNj+wUa8A5c9HLT/yAGRQg9gC0RU+FUzV9WiVuB1SdXP0EYdrq5Ds4EUm2ULkFF8RWfvzfwQQyOmVD7CugEVZ5E+98Uj56hl7d+laMKJKeoEvZQBKv2iuii3ACz0hc3bReynXbrBaTPKlxmeMJwGPHe0s++J+9gy3ydN4yjb9fqL72OC8f48kh/mCbAoQgH6+qdesQwerbq3UxuL7kkWp42eucKvPJL/2InOW8xa3sEdi6I6m8MGvVOP3FxM2cp0WIK0y9t5xp9jDRxhyAiwU7QD0X69HiRkxEhwKByt+1sbsyz+EH2g/7kXBi4OoOa7WLSiYefsmel8bfb2hcuBn0Ks6Ds8p/Mve0yDZ8z3Z/wH6xMkQt59RK95gA82YHKvlmwpdoqudTPHmMmDzuUp/3k4whYUTHRbXyMV/gRmb3IRiUaYyRD84AjIDKzyUxAEOFExgvmVMyrbUSP8aXD/f2d8h9kSvb2CmDGRkRjmU85R1XsIsbTWDkaqALZxHe1WNC5rmH2CBKcfUzSdwbowbOrX58XfGB7hKcnjnaXyvVEicZkoxxbj9GU+zZiLsc7sMCWDy1Js3gGTjF2QGmLh9MbHllAqJxRzogKZcqyZOszZsRY0fi+Wbw939QvATVe92lvIyGyQTZPZgMw7XqXSQLS9AaQQBGc+WyIL4cveAhYDUZxRTBAIpthGD1ms2DwBbso4TUEsIU/5i9iN+/SSwkxLyCDt0bNOWnmI55M9wUmSgGVvUvO/mTzzb3Z2sWPga+8qyxUhXiIm1ooRZMnSVxBpjJebRPOgu6piEJeCic1L7g/mQpHOmbxNp45l4wmQKNgIvGDcvaGUS/Ly1aIEk9B+NG65HLBEUKIHae7sCmBwP3uKyMP1ZQSH0rAgwh4FfC7lKaMYonVGL8o5VtHcqCeE+HSy0RQ4/bsl9V/ia+eCqfCUISm04n8BocMmI9bX1GXYP/O8Xkc2vPvPHguXe5/orq4/HugNEjBA+i83/58DDe2HuFMGubn1C4GlA9vum54VQQ9YoVYmFXoyLvyv0P0nruCnIUPMFc3okEeUWxeOu4DJfMtCJF0naKvMUuo9cYDMJM7dMfschrIQO3mSJ81k5wFWuLKtescZcumiX8g6+LmObGK5I/s2KfqKGM1mmvf47XlO51nqULs7s9Wk6cOffVjzLoEy4iAeMTKBv9wFXoqkznbnmC4k87npFDPV2iybWAdeaWUyFR/gvfN91smfLF6/IV2PMR4FjkWiGcnMSidReQJc8Ml5mv+t8p/NUnnatU0cXJ99VD3YJVOuznsnRT48O7P2qcInF3P/CBupnyKc+A3OIplev+7oSxZ72ZXSDDq0mNkvvgs3anPnfbPi3Fj7d7m8ynBGvnvhWlIJeO/sHBq+7vtUu5kKAecf1hpx8mRGHdxn5a4/f3advC+fMWruQtmZyurWRIybhAHNvcCmeafNSwu82Zli6f6pnDuDYNg9CyV/983bvVD0iXRKjbNlZ+Pz0zuBTVuWApdvnTFhFBoK+pNSPEHrI+/Wfzcv5FH/3XwzsNjuH6NR/zuU4RWo5+/JuZKLu7Pj5AlsB+uQLdiDY/DVv9gO0X73XJ88/NU2kDACpXfy6b//QS70QP7z6wW8V/6eR1O0onKHDZmQZQUBGhmSD2ao3Dadf8U6mgnl/cXH9JPDM33BbjLEoXOFmgbUs0ZTS9kboX3YhQsghIqQt9xh7EeEsiba055zBoWd4sIjhOr4/TRJYe64DIXzMHvTvLJZGokAiQoUcJ6PnEJS0tcfBcPf/24neDBz6uSGEKCyGpks5anMynnYwI7wBzrhXydDlofqv++7efMhZjoCImQDrWdGpjThxJaP4vMfa/yceGScTsyO0+cP77SGwWxoM/AAz70GQWDbSB64JPDywLaZ4CSuf0ozRTTpNoTg+dcy73D1s2zoORtbTh0uM+AkWr95oNJ/JlpDBysErYI0Ed+sm9Wp7mTPE6DqJ4aD+X1531pV+Isiox2++4zVk4Q/Ku03uJRfHIToVD55DU//LuSV+d+dW/ufqiHizINdd8fOBD6lF1vCsoO4mEQ3j1krrgxYOOWAyaowph98Me7K9Kk0Vq1gIMMR84HSNDOBRoTJ2OHcM6nITEVvTdInNkgnEkschFRvn0hCPh9594YSuTPgWpzywrpvAa0B8vSb/OYThhYOFuw31rTCfzkdLobbBIuATIBk09uLO9J49SmT7XjjfZG/bmdkrMny85RIvbifl8Ri05iy+WsyyLH5pCbg9rlH2MSezTFqeUA8Vz03fu/YpEQK56g/r+TpNkfrVb9H0K7ZsjI/ixaxTNBeFNjaJAcfPsE25mzpdPIWgOjtDNqm7/1M7ttFTmrof8css+MV4gXSmXgtlBBZK0rO3Btt9SCszIdMI8DIW8WYCVWBijWRg9PMiVdKl445auebzp9x8NoQfQIopBEaiVPI+igOfcWHdyHCj/39fiUxigy+yJBuOu1/enp3uP+RplIje5ukxES8LI4/0MN+8pHOtlC7q2hMioMEyU4mYsrVGs3IIc8+kFitFFk6TTlpFDWkg4A+GcVSfXetqgt9QOg02tj8j2dsi6+llkc41/Fhm6vLkbvlh41fVPJv/SjCj/+PYnT//T/CUYUSxyd+aGP1I/e06H1zjGcfLzfdgb1pdTWTDupmcg43MLROmNbwpvpnQZLMnSY4t/nhNBmPMTcASVefBdTM1FgmgK6UUkAN5AykT8x+sAMS5MIJQHfTmCO/swE3QOx6GODmiBVTAHUqPeMw280dxTfr+X2EyIyxdq706iAjRaGgrYQI8zG5Haq2UtP+6iLjQwz/Yw3CCfUnlR+d2PZxul3bnXNAzvjU+3cBlCmGClGFC4gIyR/8Emp3hwEkWilRkt/iM418xSRhaylKwnIj+9b4nQ2vTa1ITgDNNOOjqzuVSpFEHpUEIP4McJfiMQB2LxuPR9Y+eA6mu6s9AuCRs66IV0lMXbEIpNW2WqlJSR2Hws7mKzdcRCYxYYBlSWzd4mmQDrHTmpIHY2eU/f6WpLt3ft0DJy6ULL5LVOAGAWixA7Xq2WLFHgf7CJ56RCJZO1xe5/WaB7ISHefv+GKlQ5FDb9w/7xMt4j/6g2pUP3pAy+E3NzT23TlzjEdRlatav9a6FiGW9p/h9Jn882PvxnJujW47PGdypFx1JFU/N4QCyTLkv/Mrr22dpp3nmJcgG+vQXcP2mrAnntLPDXLkHS1UBjXvks1Px5Dwg4YM6SXfzuEQLX0MSG2XxgPsCJtIhGFNen+4RvLrd6ZnKtlWe05FwV4HD9fw6gl8BUCsPoj702qn/Qz8Z/6k6t389eunM08ELCH2Zbw1gFmUBhNwLQsZWfJL7jMjvPUHhncNNSXxPxgLK5NsEn/Pv3iU74nm4lJ5fa9XFHPGo78Hk/epmOn+BB/SnQq275RnsbPv9zSj/pwxyJxt0sDKKFbFn4px6Q74nJTq9xoTFxY4NsA4YZyLJ8SrCT4ARrLqRrrvAMBvA/tPlf1irfYHxud5E6R6vnpW9k2bJ5UVYYEno8tNvY/agNbdFB7eSXxaiiRib8nfTwus6o99UZQj/HccKWA23XWuoC/JK4HjoAaSmW90eV/o8tDvFgSZ0Zw/nRtuFcsdNv8U2zK42qOMfA15Yhc9lBWSMU3F658JC2H3XcTRYtdIwF0C9Yhd+fXmfugrjE6e4v5TBesfGv6kGGU4Ju5WAzxPZfxvFRuC4K9trtRp/l//wgabB1v1VmOp3DSfT5gQv5f5/tpfyJFW8IzZCNvsYOUcdkecwdK/+b0pyhUuyYFS/xzBZbc/RuMoyOdfOeKHxp183DXP6Pto/GlTVju4MqfJlJwBY9xLJrZKTnPzEGIGvux5GhT76gNV5m54ZNnXTwMrYvsM0JNcbC79eh0aC1vCeiPIlTt5S1Fx0uwfdVFZ17FLsEoEZv9Mi4KVaYzLagh7ieagG0Irl0fNSzrm5UtfW8GaQ4gpbcChkE7XjgdXq+MkJi2w+YnVyYdis4DIp74lSS5wk+GN2nqueQw2R0sW09ijLaQprfycPPB+e6Sc9vL5aoyuPa1Dyc0t7dlE1tnkCCR5vdjCLs7w++wQm634fFbBQZev48vBlku7Ph15Uq3Umb0irK+N8DoiA5qdSmwIw0hdS6ssdt2gtfVBjvxJc/HC5vdicT5ZLoD1+aNBRiAGsvVIPpggSXkwWLidQYnP274oxDWBgCTgwF85L44m5yYbzsVSmJNIYF8oB+CkAmvyIdO482x5ij0v6Umw2cH06D2g7pxOGiPjv517FWsLGmVEp+LNTh8c+TO5IpvBzt/RTHrl4BuyE2itaEXFM5CE9h+r+xY8EOMYNX4Ln2nnBM/b2r84WqCJB/dusFNOmKlmLOblRG4B9wyoxD+EOvKi4/R96mbiC3cc25fg7zRpaXf4pp2kt40sXwoa2/OBudQiqzETyyKCCbo32onulhpijODF7JtHyKKZ3hh6r4tWgqx+Rz0+6Fycjf5bIfU2y/3+Ou2ym+TecBKkjP6lG4oRBSnmvGWBhKsrheXgPV2LdWsUKjuTGhGbMrIaoi1ScR5fpnTfC8sE8uXI1X0nCcZAFy2mtXkCIfOrsvM+KIn0zU5v5gSiPMZ9Lq40P5CJ/8uwZcPju3nX/JOZ5Oft7bBOawBPiGeRNobKbas7M6KLXkYbREupDU0pGVjhhq9WXR11KE7bNYMHn+LKebHJO707Glv7gW0oN1UCW9mx89qm9Cn8wrRFhoapxOSrWYZGyNbB8tAkQGasWu/FZGF92XGZRJ412Em62lqYSVBo4ZDN57/3fJrHBxWfjnOfszydHch/ErgJxvDt8SQwTY6/af85gZmIkLm71ux8hm6V8/+AgwWzREocLBNojMw3eIKL0v2CV1o66jDluGTwjQiJVremA7VEy4erOhc5LPfJmW4bKcFlOyk/WA9ZYtS5nuoWZEweY2Uz8YDF42qIYUFsfVXPt6f0iG/jCns6j69fMykf44RLXDIVPHPk9rDXsbm8P3lzvDmEHXytW4PUQQm4SBjjDRa15imhwnxGAVRZY4x7wkWesr53hvtV9l6BDRpYb5TE5d3DotBa/Unzv+0uBE0DtrLMcHOv/Eqhg9Bg0fPG4MJ2L2wa9qDtK2zGuwpWwCh77gJNqn+0Z1y4/7VCaic7oiyGFoBjHUv/frAjW4ZZc6uO35sOE6rgcZwVO83bY2K7DjsXxBTT7n8Oe8zyvFr9aCU+UEw3gbUdLYhg5SV5/Y/qxdqbn27ad9NiWM08M5+HPQCZmrdJHrTOCOp0Ru8UDK/sBumtX/KRY3h8tZdKmllW8z/Qdi4Vdjhn+cZz1KRmHd8Tljv8X94y+TlFECzWc66X9sfuiX8IRb5xGOHAkQ/Ics/OO7LaSfr5GY0YnvdP3MjxJxHnfhYNwRML4bQDO/WVpb7E5LyxtH8rNdtMiNSms7dRGu1geCxEH7ht6ull63eZT8qqV8R4m3tQKeRuqiehu0qwwif3RMS0YfzwKOleGg7NJxY7exMaqDaZjECpJSxwrSiKN9shtI162WNytC5tTRGBiOiRFFfYMKTA7JMRYDmNs5R3z6hkCVMM6sjtjE90ZBGwTlH6xeARqt5DCN5oTAaerVDfJyHmOiEOuH+DNb1lv1eSQno2EhJaymXLrwlB2CXnzCfBQmF5UyI3OsLntA+Q00U0z8J9KHNVzTNyp2ex3wQuCC5gtlNiZrD7sAlq6cqbvF3wx608H0B1ioJPhour9HC1be71AMfEmLvhWtTl5sTzy/ynzy+A3/PP+U6RRrhWB+/NwB+hQZPviux8qZ/LtA9PaSUcw99Yvxgk7qtkC69P0gxfvxK6jljtRiJqg52fOF2H8198f8EvqHz3DG2+l+64YxIvHEcKTPHnFbiPWzvSEL7Rcs4mtmZq/TzTtDBE16JZjpmV+7nF2F3X4M8wOGuyev9Xw809XAzagibF6/M3DeGtRqH1aV6CaolCNtaJz3mhkkQHcfkQE1UZXAm/IPTctoyFk5GWLvwq9LLV0sKSmQREZYaFudQjmOhawi7ShE172Fi9zYoAA7yOMYG9qge6j4ny4JgEIs/j6D9PHdV/9w2SR+TeqyQP420DZjtgZ4ap3B67bsKRksFNMQ+BMjuYpsgMrUyMLvKlpKsxopKSyqJ4BtJycSRc1h/OBQwKU2fYIvkRBZDAELvXSfiKmB0JUvtN2FmvDRDGtSMUuQ/odeWwUCRJYnjzk4AmVQZ9bRiB15VVECnIvbY3Ty7wFw//DAjrf5m3l/CNXpQJQwe4jEUKOKm9zJVnSe5/cXDJK77lmnw1+K7JVFZpMPBsr6zdUGRpstchjAPo5X3BHIPpjrWNfMdFRt5s6RuU9wTuIloC4Jq3XZzqCooLzKmd9TlqUcdXS1x9bBjKkM6J0VOFcyMzFvZaHPJlvccQIHv1Abpm0H61Wbu3NK4FVJt+aL3lo0Apb42Va0CCPEgKK65ZqFkFjtAoSMnAv8HJQulmntjkd9GxoRyy5Va15kl2jOIwhzFNdmFr8qxC4yzi607c8uOxz9jcl06vihIAB/Y2JznkLXC6htv+HKRQ52H4U0oreZ4tv/HHUCNnpNoZ8CCWfPALefVDQpJ17dS7RzMkr2RI1gvx62xr7TOf5pui11cgITe7/B+DWFDz60O3hL4u9HWgW0M3QVmLr6lj41fgebtBrgtTzL+aolPj3u9/TQTC1qEtHBjxXWXYXPPfAAR/7wh5M4R7U4R+T2jf94Z2vne04A+q+0Kf4OPQs7v/HqF5PWSdZxTmhe1iukJbjdhAcyKbte9znC03n//9mn/WItf4o80+emz+8sYxqTj6jN/K5ZzIOT5tYrGm2JQJscqzI7o5RRCE1epvpZJSNVcSbNeynAKwG9tSZqJm+pDSuyXyGrURPr2qeQ6PH/IDX0uK6T3+SVlYp47klENXJ8RhrAgscgDs9lgkLbmEPxRo48jfVk2UecyEVVP4KrItOiLqeJ3bydc6R1CrDVORGZaHPw/lYQmvRxxIWEGTNABRb9bpRtd473oYGEdnKqC9+tGc3FcYVwT9QACmG3kAWF+jxzDdtQlNL/UtchTnvcl1uIi3XhbBy9yEundzzTxAslslwUWFua/oNQz7o8eCWBE2IM9k6a6myJ7JcJQ4GnMEs/F5C1CxVVDwgh4AsT9J8O6Mdca73iBW/jLmaAaq9UHoaC10RbTm69H2CKKOUF4JdXQR4GynCfGlOUqHk1XpAk2hrPHI13tjcj3EwzOM0Wfd09Eejk+2VJwFRzB918ubvUT08AOVC/3tt+cXgKc7h/hvSs3eHFs627qxunkgSkpveRzxOjow8B6mW9uVdUMW78K2hTVo/NX9SIdHdWzaDKuFFBoCBDPTyUCA1aesmHYzCr6up6neVjmy70OMXe24TgOmhsPijK4F9nfZ+ZfTSwwe6JOOhODfJUeD7bhBIXbDmJZ6IdGGR8Sa6sapfQe/94CYFApT84YL5Qq8ntQbQRp1TWjSwRo57ZvAmlp3vmoVRTaSrG9C56RsNvEoJ4shgtU9Eko9VeT0hDgYZ/NRYdezxVg8H5zwzMDZxPRMMODW66OTK5FA0GESjR0mO+1DjE2r/sCSiq3lUqHxEjYHzNRsvGSNlX8W/xQRjdDcw/PRT8+3HM2deF8cNVnrkn5gtrYtOpFNsJbn8iivBJ+gfDw1zuMk/l8UY/g44U3wnl1wnfSWaxOyBEfy8WjCm2COy3gIJLtBEL3wcmLCm2CS4DmqPSGedmQy6j1xxC0S/k3Asz7DsgnqkP6zmOXLhPC5qucOMXM86zELh0XFonTpD6hSuXriEiLJ8Rtpzut/AYumUQIB78qzE/4sHs44+AcxIMCKHusbrGBhlwNGrWrB5kyDVBFjg2nxZCYDnB3eT/g3BWN/D0P/EAx/DxgZKzMn4DQvY+1HL38nwNkj2PKFfdBIIzujvoqZQWH8XKtgQwnmdcQp2W0I8CIedhvPfT5UqF/PGQZWkB6Dk5AgePxz72+q/E/5rFjsjLxoaqBt7cBlkNv0qPbKx/XRehw6/HKH68FwbgrP8TYob4GqD7rI0FOItVcCwHD0yf6iB4muOkQhf7neDoAaGsn8MszicdwhXH8ApOwtE9OeLGX7oPexN6FomTPfXgvbzuQ+xxCEMo27W9zH7AzFama67hPczdPW351y2bm9eQUG7dQ6u45agRmTHtoazUjOBpns4v/E6hHlZoXFhslyxayDWc+wffihmMf9JM2SCU2TEmWRmYx2haVKLCTlNlF7COU797STCJCD2S8MFkZrj6O1gzNIfoEjXONuVae60bgwmRrqKMw6N5HCMn5HeB9+07GzALpdRsBnz1IDAguGrj4QstqjDZznw1T0yjOXipcbI42gndxXnYGwe7Nu3wPqYg/edC9BbmMiFl1MRhIrIPUwAJL+sofhyKK5srlzZFtIsN4aaWVA3UBUEwK35PSVrtj1lLd/bQP9VaQO9pLVhtO0ZH3x6Asha2qbNPJ3yPtRkRH6VfIXmOyVpp8dAX6rqn2VPKYX/VhmTUuYtsW94jaWtzZFUwW0E0/hwBd3QpL/J812Hq12YAYpMt7Ep7JtnJVwhPcup2vi3EY9BusNAyvGE7m/nJGBUovasb/ccEEgoHXgPE7XF9981017UUcZ+/PGGIC7I/sBAJT+VxqezJU+BFsmUkC0zwj5oniDUb5F9VouYpN0nxuXcjxY5e6uYDywIkaB5jyJP0Lc9Sj9RMoNYrH1cdc/AWsbj+jvz7Ycy8OpyH2dBNsznJzG7hApZSBQr9wl5NefYTvmct59rBBjk3uKBP2YdrU3AejJPmO66asB5nuEmNQ0h3BHCbjhxFSx4awyrerpag/OonIPR0rWIYgentsc5t1934SRRjvYCwIs1rS9vyffcI/T5Z95K+estTsNfIccSlr6UWVoyarhs4QJahnzYUa0qYC+VfZZwCSPrRM/qyOV9npaJbNbZVChTRw63ceipR4RZ87iPV6BXVQ4SaVgkCh9mSgLT11zYtxsAab+Oi1R1TrLtduKilFAO82Tc3NYiFUzSpqC2hOeDxkHJ0T6W0MNig7AuivO2QLBFym33AAsppm+4XDGboITswVTX3oSpLu9O9XzNJHPOPahZzkPBTV/+sv7uyAHPtYuIdMcthJXqdwJtv1rQkDtODj7ZkWR2klxIyHOci09Ad2K7wN6oK/D7PhZTwoPvteB3v99aroD4QOwLrWJAHdlQvxD15Fa+A3aNH3Mbg9wbZDsEbsfS4mRKw/SdOe5bESSrbQGnTDV0LC/4r5nlsndDJFqnNGUOlxxb5LnbeK71X2SMeN7+veaO8sbunWguEW4jGq0LYRVRjCSHaX58m1jYdnO9BbCG7e/V/YzOWD8EV9iMy+iVbhFGqdV8q9ZA9M5XRKK9UFHaVxb1tF3mzvbQ55MpgifBa47TxSiA4nWU1aj2mWW5PMxZ9g+4hSnrWNVnGUXNemwIkXBM5jlTKrmnZbafLDHSFtcw5yvfWXGvHaP1jWT3jXgnHi6hdD2kH7srhAPau03jAPv0fXeeDwit8emwJo8mCsFO9aqYmxwzaXaGA1ETzKlJjF1iqxEkvpoukNoViVWbzhueewwyR4cny1oG/S/+iM2LZwjTT3WAGn1PF6OAqpNtPo4jMEk5mQlNYLU4ZrWdf0fxF+QcOeaqUIlqPDYU3T7ccZWhNoWxzbPgWq2pOXjL+Gtr6FFNteffTybK/qsjPLuLWmDkH492tlgCWZkhRizsj4lcd2cZaZOLIOWGW7G8QJ7sWN3nG/lkI/VJqebKKMMCO2Z/4VhBpEl2o2OyLW4LYUIS8SlNcMwiK8eYuYBqFfsPX9rUZJccolX8X0DwRhvVM1xRsobPebdBKIbKFC3wse9YZ55N+fINcYu4YbgSrFQ9Cxm43tkAfcq7C1S0WEemU1Ut0iXDql09ksIJT12myU9Ikl92VCL3bdIDYVznKCmrnGWdzLmvdNLm1Ap/1hBSUDrCRm3mmcN9IOAgXa2HXpo/4hWItkSqWnxc0k0pfxzhrmuTXJZK18OPv8Bfm/tnmndGad4Kv559QJVTZxxAqI4xOJq25jf/t6Q66eT3Q0B+GL0xzPI8k5bILqJ8m0GoHndqeJeiHNan4YTCUDYuWklMgPr9/6PFlwz4y+PkqX9ryVHu/jPGdnNdr9zqQXnSEAu4r5EBgbY6hpZmxjiajOtKaFPL3la+fZCnFpud7ACti77ujcJmNqZQNipDJAHQPUUPkBTwz64m5BMG0wbp50SiCQzWklkkSBGmJ1QdJV/H6JRluCqLTmx5uGFtUx3j/SfOCMDfHtJPZDCxcqWN85kXWrFU6y1rxdbB8gZjC7bR6EBaar9NPRtBsBfxDSL/ys3w/Xeh/Ynzf7CiMby53zO4Xa9b5/lxo5jMVO3j+ayKtzuMhC/V7kAHN3w93YHujdOv0iVs/sULm+QhwASPVg2dncDa83LUDKA9Mq1hY2xZ99ITDA7vEybh5uOzVPWRPpU/dDRciUuiBz08NRGmUbJ7PNlifpRaGfpP5fvSUN0AjI1UftgG8Pu983Wg9w9CTDlYysHwW2Ryg8kwEc7I0HfAe6sKZSAVUvZoCWquMvS0hw8AmjrlmwwctBbRSZ7ZhsFjryLFqaPekFzRL9ostf3UPRZ2LN+qYSAIMIYfGO7MShhsyun81umib/5eG4LjKJjK+o9opuPqHxptql7Mu90lwg+OrVJXKoEUP/GO6cEF0dzzPaD6faCiBuDF9kxFb+VJlJFq6a7jxikueg3Z2f2N9THyG3hajGy7omnVwhexuYJXcyHzFYxRqnHUX1fp9x9Q9IEZJ2qKVWO9LrySeQQF01GfQhrbcRvneoOJdlo6r2Tx2JdRHtEa05kZKsWHaNwYgcSwcLfClEL/DxL8+D1Yol+VM5EskIshnZsNZHkGR95SZ+R4rt2W4XC5TOb1d9b1l7vjoZUgMzGMRBZ0srfTXnkSDIPaLpizT1R0Bo6zOTuqNwLd2k+5XqRrrVDHf94N4UJ9kdV7bTcz1lEtQV3qVpD0FhFGW/9GpezHpuBxBahQGuywonLPVmonVJi/S2X6DVPw8pXKSVSG9s0j82iDjONUdxJmouu8D4sq2vxSkOzdQQe1ShOMb/ZWuxBQzlWKc5b4gBShwuK+HrdzYGapDxxTXYTYl8W4UtVAxDgq9QPPH9baYRNcBe+CBqmfLVbmpx28ez19i1IlGI6A44Id61XkPIw+MMtxzSRzrPXqvoKrR2enIxVkeFLJYgqSwrREDHudmmXMATYPBGu1YEw28GEirVL7r9b+QA6Lj2nTaEAXhqnua9eokGPB6BeefAxig9+tdaHfGYfRIzSw075VMP8gVc1h+60Lj/EQYiVmOhwVmgIsbUp593F4yd0jKGTaSC0v0Nvtlb6abXLxkTY99cL9yIyd459Ibe3Gdq55Xf/HoK6lD+w3WoHRfaC8it/uvafBC+iRkEjrnZyBkGmr7P4VV/c+8F3XbaK3C4V8/bPA2NftUGtN1KNOLzmYXgqAIy7SkiVlwBQ9YJhc0+lOqACNeXxD4vI1HMrt/awyG/32KCRq0DUih7TipLfgPP8rXXNXqJ3X9PxEi3qo5xGWdKOOEPihq9Bo/Dz7HGF/5qztZ0ZFLpVOQWoQxU7sYIK8Cz1oJ16TUcBIbPcpq75pO7Vezdvb366yenmp1s73eR0C6ebnV6lt9qKg9y5u5q845WiRd1ah8+hFqWWq4vJ+pH08nNRZ+O0trzf+M4qEUbxKRblBg3rMZK4UU5Iy6Kj8RrLudSxzfmhYeuYpFWPYBIgRh3aJbra+h/7w1Ow3fIosY1zhdnYGL71wfFDB/fGgV6YFHLu5I+C3+cdE38iLRwuQBIwjh963hMANTH9O8gC0nV1pE+60ezLjSkpl3CaqiZHk9RSNJ+49bJHeLESahH4Jb2bx2dvNlcSTLcbUFD1/L0Q9MsbtLFj9TShAJuxdkjUPniqNaIBsg8u3wN0HkbpKxEv1AdqXsVjCYR5g4r8A9H0YkWHPtF7cB4A3amYfazpWwR1MmAO+sBLNrMSYELahl8m71qr/hKD82P7IGiFcu0ib8IRoL2XOCmkSNbUWvcteNCCDRaYzEmraO2W09qnltq6mIXrkOGYFKj6N6t7r752ypAnei41fxLb+6rXJWXATB2XOhYeZ/HErxqAmNt0kiWw9YAj0f4+N/fZPoztRE7bthjIQoMogdqcMN/G0yT4WWiDa0LK69AEihkhWIMjgjshoHNmCxY4abHjygLmWT5Oyyw59SZblpk/sQMR+y4ORLIppHNe6+VaGrUqSqcVwkTaxrR8rLiHCYpukNiUJarZcAiCPDUBNNPLkqJdQNvD6TasBqYXBPghVCa9IqwlTl7mdqwk/CDD6+nok3LdJPS92/fYFJNDbcFXEmj7E5h55diEaTTl2ynqSFhjjaMEu/BNkDu6FE/XzE/2czlfdX4EemvUhjEj6fSh9wLRxB4wB33g5V8dJegx8EDkGN0PUCN9AiouLgiJkuiDMHf2AYS0+JiUUD4AkBn5uFkM36qV82HP1k8F80cI8i6/o76U9WcBNOT96OVqi3azDjHaMkpwYtSTiHkBwPt/nN2e+Jwm20tSTWr8JQDwJ+Vuox+BghIQDVNuhWDEQfv43NYKrI0xcWXH3QhwnU39UBzFHuws1bMjJaisODiPAf8w/nTNsgSjeLeStlb8v1TVOmM7sWOjH5WcsWvjx8hXuhlnox/UwwkjBA0g+w0dtAS4wicOzG6vmOUfzhu7rAg5DpQBqrPphlVFJENmZ1GCvuvXDapFj/aMeayS7xUpybErEzg5yqHt04SqOnV0tskntiRil7FSOKZlKNaNxLjm6hp/lHpOcw9kmK949Vy+z8R0lOSeESkADX6K2/8qyHJeNHLw3KPeGnVpMc9reJUk7rBC3Gr7K3asaUaz7Ru4fEXgBWyL1Z1FP9o8lYWPODjtMpGvk4jTc/p+nwYUHGvm4zG1O1gtQwbyKNHxHXTy1Hi4i3qccIduD4XUX6DQ5SPh9587Ko5iGD4Rqca8/lW6KSQSCXIdW60nb1nEiBgSUDo8yMsYKQtqb2B1jcmQOF5oeYzVxx9yL06LETm2jRxzOHyRgkWtj+EBcHdvxsj43cwQeuxDcXdR9VGdwtHjbjCoXtyRRFFN3bIquyDEn6oxmS0iONhl6pP8Y2aGDHLfgYMXXEHKav3oHYp4TsHnhJKLYPFF5pmeD2ytZD6139hdbZRvJG90rz/vfQ0FDoo7sEHfV+hgi8nJnytTdA/gtW9ubcaq2VmuyUSQVrG8Uetcx4bPAh0yDcfUB6XEm/ppkYNA27cO01Pc0VFIrswbzmCjUet9Qok/HQgK9vHnrYcz+9CjFhkTMxQk3hoFCNY1YFOZjUx8lRnHxDGZVWy8ECt16pt7F0/mEzDwABnNSHdDxX80HO5KooQL07LBc3mQGaIv/Ahil8vjTh71lVByj/poOA3oUccsW2LGIdM5jcxiqU3PdRqLCJ0W9wUKEZurF0njErj06bOcfkiMB8eeUII1ruw8+SJJHZ9GMzRjfVPXR+/FmFfdipoB68vSp1jwks1dsJPNX4ll65OAWEbUU/okpFfxwrmBp/hqxPIAQrhLA6qlmII7fiEDXiDaJt7TG2ecfRotDdAX+O5heBnFrU4XFESIlwO6cHvsVigG9b7gzZE1+hRoOT429ePkTl/JYo2GW/tO2JoFe13d1aGSYSvM3irRVb3q/YKAQ/QKshWNoQY3UPpbjmDIf50oK+MU4oUi5AexC4YZwVUcA6/y7Sd0QXXKVeKh7K5BEjJp4IXsCWMWg+px2CIdDzs4YVc/At5lUpXB9zGHxz1xx6YvFi7EpP8K9XXTKX2412ysfPu+kQ73zi9oml72k7vGhNADbDkLqeqVSuLS8u0WiiGZeeK05ZsoHuQwMdCKgJgtBc/Rer3AboY2RWwTuiwHOfsFEfFloO1uTwR9Dabz0g6ie6NpuR/+GHdrBTYmxVRT7lNj4c9BC97cbTXZIrrFBTASQ19J1YEuz6GjUA7Jy3jVilP+a6deo2Dzb8zV2D3e9X6DJbkqKCth48MgcWyrh1APsCVuQ31tYxswqTzwU5VB+7yOoVYnZQomCgObPIDOOfhIlfq8NSTrMj5Pqdatigf8/C4vZnU24tVKTn5W83xoe56+1geIZ1kd+VG/eRtFfNjPncE6MlMG3j6iIqM39AZSZzTaOfGqjDdjiJSTB6oYl9clnlu4IZbo8Ji1iFxlyREClcPsbjICFvcUyZR/63P44AG/ATLYbOIbJND8sxmIJjMo0s9oYh+p0kzEUDQrR85aMr+yQKoDuWtQLzJRVEKfmLsV53oumgpThka7iTBTT/626aRyrF81uEf6sONEHHAo8OU0AXQ0mPb2Cutg8VJMxWPTnWKHRazCk1Px9gQ4x8nMsnooTJHuAij0Tjm8OQnwxvBe8yL7Kt6kt30YzETGsylTF7lCPV9uvxaegi9I8RaVKMfxsEQVKNtbWDw7HtGtn8NG8rKLk/EborDBLkgdU9D/Pb2/V2WHyXJ7+eh5tRmpfZT97cyjDUwh/igfGRD8a0yfSWzpR1he2TxKb2009XV1ZAHCHbnylQPrhdciDv+b4aWD7a8iL258tFTnyuKkE1VbA2Tqss43bCoHsp9e6KDF3u8Hrt7WssmA8urYDV7C5IPIzJhk5muAcF0ng0KTa3jMyNZGI84B3jx08WMSrjDYqWgPlke4JTbBKzujPSF9dNVfHPKafJunl1tbZpLErayO2mZK1tvLHwfW8Qj1VGL/VvbGmRHHExhPysklr8IeIPgQOpnscj9MjVEPjlwHE5nXcRuA4UjF20VEwldBqZZ2qAcxa+tBUvW7CjpumR8h5cPNVTut0vEK74y1AzfObVf09mtCZVcoexBugAw2/81FfsNOhPEAzVPERyVlkA8vI0eL9UoR5JJsqaStUZ1LOc1n6obLKSaewanwK/wXMgX1ao74/x48214MH0tk7BqRPNsYTkbs4aIRTm3XCqjsizEtrxROuSVbpkFXBLHkKy+OSXUXcOCSN7RPY+PGVPTuccxIWLMTS1Xc5LjgneQqo8bihMDgwbOa2x22dRO3+TiX3OxTrBt+uKMvrNiiSO5Ex+TLotkNOGHi+r/7ksGE1qJfKW1OIB2gRUF9995FCihsyj4+RrNojVhlAmwIsS4HT49uWY1hi2T4/4B2yWtMCCBtyWKEq1vIFhXY63DAoDdhHxluOqQKAK2Ol5I9FVz7rg1VvA7tof6oqQkZzAigz50zAy0QM+FS1mdhHCiMcvfPoDfdUZlZTsZCgp0CfSDxSKelXmNsuyYLNcg91AAZg772JpbLnSrXsFWJahFnvt+bW2TXB3m4psv/xoQ9PvJOVeFVqq2iYURjoYVaNjxRSf7c1wWDtmYRLdWydI+2ZBBoQ7LiSr3ThNjAm2MBmjo6S/3OLtVxbN87nRL2jkTA3KE3mt/KKZh8PA53XLVt2qXBD59v8VOiC1O4x933DI2WEghNVg7XojUrSfnCDlzzgD6DRFxdJK011/fdd7yvmGekMEywmk0qZ3zsDXfgiAbVskeEwXd3p56NWDLgxbbwLxffBDsA4QE3tv2dXxSiXkH+La2LAMKaGy5BWrAyjCu8hvgp8PDqyym639npZy4VsKctzKIHqPVqf1C1VhjFvp0F0lzOiVr1pS88rwzxXq32y3ULncfpKhuAhOpTO6S/fo6+k3kVtXgopv1fyQwJfm1VIy1V61d/932BGWcoA3BDmI5k/LCyiDHsPVZ2xz/BHNeiOf7+Ge26XnJsNwPAybpDvUa8vO98qby9cbeh/oyWJltT2ilmNfyt2b2mvxPLRx6qPTIPHbS3/gRA5KFCjJ5JqkoTcVTnaCuenv7vUHQTyrJe29lPA+wBexuyecOcVtyNlwftm/QaqKcZFcWVpOac1bytybdCNc+G3yjeR85mhptpuKqcBgn+lXrlSXxijO7zEtBPqCVNX3vznmnF8BycCIxGVEMPEhgDQZGthHTKgnqG+A///MrfuvIbXAVOBu9qD8gG9taPUmRQtWaaqiX0GIEWTLvetIkzPUyD4T1MDweaxIX7ptUCLKGa5ub9xzfrI7sJTBurFC/FghqEYo81Wao2P3F+dY3KsEBeljIEhA3xTq9w/bfjN+vHynXnSpOhW45P9WzRLHnYTwD9BkbeBuCZf2qxbQxCPz5gwYUxhXi3M+JQ43rR9c3sbpISXg+3skJbgCzGNo7+Z7B59eWIONfeSrLvnu+8pRcSv4nMBVVggYwoy8KWyk0rQyNqhyyO5TxF5HRtbwqLms4qFt4jr/xCc1T30Z6aaBHaRumE6a2ch11eqtuK8AgiUfVae/mdvcPLqaK9V+uzzy98G1nLg/yIblK8lXKlttKXRcE0sxsdg7mV5WTytYx5eKRbz7g3h2LRg4oTY5/1sdExVfNh8reCDyxnI72qK75PkmoYY1tqtQ3m+7yxrCQgpcLSHfw3REP0fXrZ8z0JJ9ZgFmaziHgaSxw+Ix9JpH+eIxXWp/EJUbwBvjudA7LptTl7jcO4lfCnOsTG6DHgnsqXngcyiBfKonpQfxRG8iHzhHPybEVRncaZcqFcGieH8/1COEtBMaDGXDJf5/g6J3hNKgT/PuAW0s3T2J8Zpv3wDRB4PcJRMr0oHexiJ0jVgN3t+dxULowapqwxJZBMA/aaVC2jwTFj2FsnBJcUoktvxpuLYeXDmcxJke8vLuUfct9OiTgW5UZpqYuNXTZvWRtnRlDjZ8TdcuqNcLl/ryODzmYrW4GXBckM4ZaHXOP7vwXc0DdaPJ+9//USi/MdNeGxFvuYeeA2O2Xam/j2FBJIcT+3i6UYWU9d9+b1bp3atoX/e6Nm8Q3x6Uw1cBlw6cRjdSBk9ABcNtMV+M5Ad/Pm94AYJa7T+BopYvKao4ue7O1IT3/TI6muq9epVCFvacO+6HcD+dWNeRv/IzP7ZYSN0WjLBqYyGKvdWTbNQ/fpG/dIGQ9NNdQzwSAhnplVCe2y2Rn+bNAcPdHqxxiMkm3d9HGf2ZDhKTaDQjlxHgxuu9V8XzojaYZAb+49mCNH/Q4A7VgkTl6ZYjUrp1osfhqFRHK3H1QGnp6DH16POITGo5ilGIyNmFPJRcUIY2jPA1/YOdUEGWh5HrRSma0q92WhqLyPVpoVyntX96sgE+/AqjKg9xxErF5nn4K9ykNUs6fBnHO95wV8WmEIsNookhk9sDOG957HP3L5ZC8smYIMD0eeH9ACUKbsxrllwG92L8VPWcsX3PkMcmGvBCEZLY7A4KHUVwnMlsH/5dVAss5AEtmhw4nWqWg7nbUbbD+lXrJoog432rzEF/jENdPu0ZK9qhoUM6apkyfWeLVnVsxOTd4UKZCSFGN2hO/nBVrc/bk7AKnXAx1FRsATI+lYTB7s0ezj8ks53C0olurPjD2eSAbMED3McWFiOgLoaNvK9/xHajuStvvHbBaXTrKyV2n0raDaJfipytbNwC4VDoTreARU9hJiQtXC4MNGYSKkdYpXJEn2CF0OF/F1+leum9ymWfMc+Jpv5uUT5TOyfTb21W9/JSa/pjL5lYnyhbMUczvmWsvWBDdNpfzwaq7MCqoz7YwFQPRULGLuExr+wxpnbvyL95yjkCaWis8NGsAi1lVi8XqVIiEETT3K0sYGwK+FALtrfEJws9g9tITVip3mmjcRsp4MpF0by9bJBpK86zMcucd31WKDQbI8727FqArOhvOmI4x6mtuqjBN+1jrrrNyEyas9pwA2tuCYPdeyj+/H71l2HcDkZoahhaAlg1yZTvfVcu5GAkSGB8cA3PT4fwq6ojjZeM0SqFx4J5SzP12pbQIi/y4d6Uov3ZgslPulpfzQcaHbcsZWtfmDqu8HJkYS1DKjD8hf7c8lyYL/w+9ds/z9jkQPmt6KIoEM7y1/W7VYvoGWrMv4v86GtSmUHUWXO3rf3T+S/2k5eW0FFS18CHR3HVVzWDZuQDfI7WYgjfsLgp6DRC4BqKdouvgkXE1M2ROzNuwrRdmAkHrdm9Kiayx1GMk2WvEzEjwCS/79vd0UqW7Y/Fg3An+E+/yub/ZNbz3PT0i34RCxBv9YkjazwtcsRGlczgZr6PgQ0RuLmB4zEg3Y4JkBy+CHJHbdM8wYzO8bKXCv8HOK2MPvNWNriM9nDySqy9ealRAFYkOijH3CskwkW1DFL/836La/19t5k9v3Pdzuk93yK2H1zpXMnLj5YDYnYnq2P0yC29ti6Hzi+XoMKvP593jHJMsxR67SjwQ3flKYTlBeqpSydthMetm9XMx44SaW1FXm2ODrcUmrRjJHbPkCSV1SCcFA011BAniJYnG8uoozE0BdZ2ZCYLuRWSTBu5WQ4/NuX7GV3CXO7HI1bt5zQbgIS9zef8I9ksrj/r3cNUh6ItYI+siMzff8IxLLzCvSNWkUYXlVmNBrztEFfTUUGXRhf25uoQsSKVI8lo+HjdLQ/SWFNycqFspQJkv5BK5AFzFW9hFNvkzxlh9Iye3ODcuzni/F+c+5V6U9z1M9BhelPl04E4WmmRR50SDAiOahvJfoqA5gxqm1r37yZbg/lLbnmQsHW4r3CBlXtDqXls5bUDhbiDyIb8JaM7ap6hNybeF9BxPE/NEtsv1nEQAvqAMLNkTZqJnncOGsqvMPEDY+tPxHIkD7LnbEZ5c6CTz/AVIUUVwYKbCGqf1np6XipOuAcH6S9PziJ+zi+lMdz66pgsD90eaZcpR2MksAw5pn6bYOWD+ecTi2oW2GQ5IELZVgEgyMdLETXPbEExC2R2mMMa4Ey9nTR7gs5JgP4YQ74nl4KXm9o/800itWckPqz0n1bcxrP5E5RRjOMK5bdbhGm3TtlQfS/I8baJ8fF2wwQkoj76JfLw/lcUCUAjRRnXST5TUVHpZvtwiQU6WESWEIpq/NO30G8qPjUfNm1QT67BV89gD1OO7tqO3o5YCwvVUMA0Sx3/wAcqzSi8pFBQfKOSlIJMCtV8ivxbIaXDy4fXBuhUvATt8ncaq/FvAt1Heik2bgEu0noX7Z/bQk8VvdDaw/Zl8rvv2H1Jcof/Pd40+yz8ouLz2+q1Ql/lbEEWTCe3E+C/umBCRDluXIiI+Go/cWP5xVWyeyVNTE9djySQxILsue5N9q9vjV6rv/6CYb2h4I36dZuBB95WF0Mr5bKGNa+yBEmsI5o7qM+5ijfxqilpJUoXuAJRR2/itPtVKLaXDdoJzHpBsQ3b0MkgFH1HhRGnXn0b+aSoTUCQXkJr5nkj58bsISgTs46QjiO0s7L8Q8ASJiX31jYuwDOM9mif6ed1IHUEOCO24fpk4xvaqfV0MeCobVBIK2aX7lCNOj2AUCQD7kxyKA9W3yCnw5loIUDyfzVeoTF5A5FxYBn8Op52T6A4rJUYjA2mWV7v3GPu+qtXE4nKJ/dIYGAzS/dtKYJl92+fz3o2llyhvuszx0c/s0L9vQcF+7WkrzvG145JpDnr+/pBqFerTmFt07Ec1nFTUst/HzX7pA2ffnSvvTnieh3zwtyMHG2rsm47fiOUvXeNLrfrAWAM4eYR9pQ9N/2ueZTjbzOtmU0Fbo9Pz5barcAoiCcAbv90LR6JBD0rldeIbN1BWM/UagiyJ0glsfxJSkxJi2PhpQ+TpgVAjzrt9BrYZE7lcgD3BzBq2mDPi8D3YHwE1O5IAKXyI+5bgtKa+WnqwQYHxAO58ZtmmuvRVEym8mEgdihDi7N0jekpAmKuYRYFvoqNBmWTwDgB6R7ijQTsU+PkzSfBDgR9YBPGxVPApcUIBODh1fCJMxnUtxG1IB+LZ5zf5LeGdoWz4FqvH1WYH6E8uKgEKEAyWMMSCeJU6EqBSn+DIsvIPJ1bShfAqipI2WiSGz0XoB+9N49Xrgh4GJjo/OCMKSDvDhhzpw9erwBbCm9wailu9TeF+0M7cAUTcfBXb2fXreiGetTARRYmwpE/IVIyan4V3uAK6oLtnmGIxSN9VvnGLJcyj67YNkE14NyIhBAn2B9G5SfX2q8HLJilK6Rw5/fCkJw+7SBYj6CttXP8oj1bvXSQJfIt2qnrGPysb4YW7yY72t7R1lA42Qty8m5m7DMOgmYcg3BgM17zDTTpwiRzGDBDEE2ab78I9V3cD0ILduVI5NikHnhOM490qa0HSx8420KrIaIBukwqfj/61+2quc1MiQHbQC1oCZvGSt0NSWg4+1OQ7yW5HUo0HF3iu3OPtE2k/D0ijGvEWoEKn34GmvI5eJQx5CIo/re8+Pa+Yax6UQOV3y55edS+cozznFdA19wfSCYGFa7OrSXNH4U4o8ucrNXVLkh4fwprl+coYHdu7pNv6meLbz3s5t50epQl299FuI0Es8fvIKRziqFs5x7WJbwAfkR/L7z1od/V5lvY4fZcLpwu+jrp0fp4NOGwQ+dm/6gPJ8ZVQwJ9q4G18aTcdYzK0Aat4DP1q+FIttIU21HVAEtkL8b8oS3tdv90VYK8tZ4hrw6Ucu/hzsgopIXG/LbwwNrwWkCY5F+KPHApk6rUzJhLMoIWGleGQgGrSVFmS6L2UifzfxGr7ZKonmzb0GsX1THaLR5FImQo4T0BHanzXoAMBQK1XyHMYahyCGfIT6HR5mOzUNZkKXag3EVWTHvYR9JjnP6bYcw9YrxptC/forUCdPdmHianXH2DGvVOVNMdpvd/DE1LZGOb8rJi7xUr/rDiQQdI8kqIIipu2ZJ/crLaHIhMA4GKDw3QbjxGQOHew7V5mrz8pGPMpitFFs2ZCsz7wG1f7tC+HNsWrb1hgS9LRm40Ueyi9HGxDRDKcaxA0pozMJvHuzoFuI+D2IRHpFoK2AAQES6yptOGsSuJMUG5oDxnVL02VcLmW86eI9VcU+6xGhyVhg2uqhsrmmR727jpqxlPiQFPwoH025BaWmVN5Z1878RMlyYuaP3WIfz5VLeMEPcBL3i4te9wRNKM93ee/OP8CPDE9bEcKs4Hd/FyeyPcoJzz6vkqqVlun8eKO8/+vclGa4NFa1gekdsQbgvcC06e2zvbqHi9wA9VvMG0+p5oTYY/O+ktQAPR8VrMkb6PMMGPdk6ea/B6s8IcEg4nrfg8RxRKnWDFZ2SBod+wpvg506OF0vZMOjORUCqF7yo5ayka+itrUzz1gjdqMQXh+cxAsYBVHXdy2RL8fjdO+YhcOouyMz1gNyxnbNgNrkStwKJjLOTCj8xo2M/Tgh2yg+Gt6plJfxf6QwBujOy+1gT/0heSNDtJzVBMbyg3Knj2Obh/9y9u/gO0MaBRYuO9Ku9W078XASYB2GcIu3z8FZp4LrKlXADLCWtexExyc5TAMmTpCfFfmCtQMCPt0zM5aUGIIW8mROxN2WScJB3iYIyeELST5lff4DENmH/cJBS3Kc0TnUVUGzOdMMpJHtzany3pRhAP0NgaOxHMhTggCN8q1w2+RsP1infRWcsJ3TO/qQpSWKgHqk3sCEtVEYXE7rgQegjNpZjnVUDWhJ1BNq2CzXOZEDyR2IKqH4jJF5OwBArI98a2H3ol4rKvJ2NG1jHU/UzrgVNyPGN+8IKsvRWWA0WTzyilSwQkyOutvCZFuggKCueepyXa4KlF6DYE/DWCUjqKF8B9gqWcRzy46xlGN6Qc/7nA8jtW/l0f+4zJS+AjHM3Q/wrBuWdlwD0xdw71bn8FoCIHiANAONcS2nIw7MaTopRZ62FsBd2keU8x14zhfeWpxrTeJR/ujih4cN90vSigKip42YKBygViUjO6puIRAD36I79DpuWO60apmVX3oZ6fwHlwconxVzEh9zUGwkSY+7E5H0Lkwvgpge5hqSlf611Bs/EZuCSOC5qXJNym0sbhT6xk7Jm97cEUb+E6j2fPhuXh1nB0r+yZhlkpSmWSXYURYl6lgLPWe4d7gJqRXNhmyiJLi2tVt811GWIFAyc/JsN2yOhH3WUSgBA+vc3CGdZXq49TFWUQy3khHRaKLbMcwJi4bKzsVWiXWl7Po93jy3GihWpXLWzIK42WmkJ2VmL8hyE88cGSXZpai2T7/UUBCIHIYdqzZdj3ki0sjaMWtdbmlmzWJEgV2obM7xgKY91Z40dR3DgVi9Zw3mc/Yw/TGhNSSaHnUbcs93AFyYH0F4V98zyOQ/PlEyXRPyHxcrJQO0OuZa9XJorRfnGGSAz/tYVTwVmHJAuUkwVRRDOmkWiyAKhEdcNQzTRPaaCEnZAcb3QDbkiOvpB/gXfe+V3EmMTHrSOUR48H/EXRUF3V3NESwbRIQkGkCiPEK376ms4jHOB+1gk0Biwq2siecyf7pKq1X5i755NiIR7mZ08IHOoRQQQLlNL9W+Ull1rSVpymn3C10stdFS/WrhdCZSjDi6B3q7vad8PQeBNotX0ijAL9BcQpFeWh/50b5RqNp2vZ8o0Y5j/wsFNLn8Kx/CDJrp8rUDZY4Mp3FBE6E90g0doHusLZqPRydMEwD1X5gbtbH02PUNJOwvmwmHLHYRiGZ8kL6aG+mOFfIPPqcEeSvDFC0440bcqlooiisZTiv3d9nLokDUFjOiUsy2Lg+gsuJju4+463bUFmX5fl+2+fNTlyYB7FyNCTeS5ujJG6T+zDcslJtZ5W2Y+PufgKcfe1adM9Ebnt+qx9qC7AhC9NN6Vuhx7UVHi2ZHTuuX2oqH15eBS8BJDmuQ2SMPzwBgrJEB2F09eR2Yq6ufciKzDXIvTMZ+83RJuEEPvrVBdKDfPl0Q8oUlOykid6r8ruFf7yZJxdrKWaC2UffIB9mxP05tHa4c53ScM9T0Bv2/9RnQ1zRj1gVmbA37fpw9q4eTqOigvaYB1h0JKrwq9BcdVnbHpSzJVkafA+MA87kwDhHCpyTQvsZpieZd0fj8BThj/cKmY21zOerv+hj80DnwdYuSsq7DL1yTyntCgWqn3wwk6V/1GJ/wczWj+WhO3Nvhkc9bAt0s9eG1LLqAoaMNUp2YLpgdLXqek/lax+4nERKkorRI9J2EopBkHA46NKV9Cix2lcBYkcrxC8bBdlgc+1HgleoVv8M9d/Rd9mXX63jyCLDVimGs6TKAI1VLRfbPANphlu/yBWcSLt/u+x2R8IGKMQPWOfY4l3p2ytGiI4/9efprRxzMiJWz1OBGQKQiBUqD8vEVtUA6lDtB8qASSZj08IXevBKVs5Op9fHS5Fx6f09YnHXks+qFpDk5h1y599CqLFOlaWHyxNJrzvo9wxA4M575oGj2dSZ1FeKAqBCas0aTxrU1vZZWFYDsSuVq5VmXmNp8ErA2W48DqHvmejDA6wZtw+TxeW9N8F4QgnpHC4vPn2dcKTeofup5Wut8Y/P6pQHE047Pvklf1KcB3ztybTzgKtNYrd0wQrSC37zUiIiq9OTb3wqmX8EJUQqwAXowW4I+9SIQcLw+oj8tm0VYxzoXUe7PvtDmbJdbJMmtXGLsG2E2u3sL94fD2I7Vy36mp9UzpqUW+7R3bPi4chZ/Ll8JhHljpBZvycuJhiFOfEUN7FM4unPtZYYc1UNW+ko0tboV+EuJb7hePOrsB+PsmIwyoM64KZa9YgiQYYySwzA+2U8OvtSmX3l3/WpyVUBm6iEQaQl8fd4+4zy2VpWWQ7ORaY0zWncccXz2ZHgrUA3XFL9t5l2fme98Bq81s986w+9oRt/ZTF5z5v4AB+//Mc74nz/Hmar+s8CsR37bYK8P+DoDvfGBX3eQ1x/0jQ1OcHIPszkb2eNMweP4XGWh9OxeCq3M96AXF/h57vLFM+AdalZads7NcCjLt/rjjpJ4UB3U/kyPcX2aJHDUkw2lEUBDDzxzS1Zfy7GGo122RUCU1cdh5w0VFAe2WMFyOaKI0CJ9em6myvTmmMnqUKo5jl6P7T/BrRSbcZRMuA/TIKBH300yTLvHWqkUQg8rqHnKcB2E7kHjXY04TdDz8bKgTsSkFoBWRKcYkWak1GJFmxf7NTmJ3OjlxSFQLxcO0brlNryQq/GoNMLYprOiLlrROidoIL0cDEDndrV1ZQvepjxjHs+oGPmaORrOMLBAJAGmWrQEjuCQJ/XOqFYk21x3/CXHWpzPlftz7KzWFCOh/LD7YOjdViDWbbaXWz/p5M3EwkYDeTYttuzWe2DkUF8Pbq5KPZJhkumi9l3uXJVRQgNmfsY9JgLTPgXgizuHjwO4MoiEfph4AGnfRKkxTzDIhXwpzXqCcTyHE7J6EnCXnCFdS7KD7QEBqS0JyHzf3SrLqe+nORH25SQ7ehKvrdNwBMzbzIFzKXLyQToicRMeqqAFq8+ju39qzqBxad64NyBx1Upy6zVSAfviQhl/nS9viqfI0Jz7+9xPWGqBW3Z6C+uHTpw8GO4vhuJOIJ5kD2x3C5xjXtGry1grecC7HhMrnuy+bLBKpIgJrEMaXBDxKCBxLkZojkZ3zPcSF4vdsNzr86DYWMa1CbA5n1IzzkY1txPYTzah6JVym2H7KCRa/xZdkugcbYPzAOGEKxkBcMXRmYxyrmgD80T4M94LTho78XbKBxc4wNo740iW4r4mwEvZrdYTlYvNo7FJBzDN1JIA4BuUTV9ks7gMME8Uq4p8RDtDUY91sQAMABJNoQlbu27P5ae0kGYDsbjHqQ0jYjMJ2owOxCNUVhN2woQq/lBDyCoB/ojMoBkAtGtCXKrhRoKtuyEyBJSIcTVLCjwXffok2A16XZAQwahlB0ksc53huiVCOyRAxPmVD3ElfhHZiumZKf6VKyxJiPA0gG7n4x15vmXMQodvQeHJt+zp6tm7kkYbCYwzBHGNOOV81Kkl1HZnqGTM8owUhrkAOd2uMXQ2r7LkI1Km+NSXYOyTVDvcM4NRCvNFJKF+hbmIjWRzmDqBHR3neVjNJtXEnmi5EYtfvqWVJ5AvwiPMN8brZ8D45bWStjdVPw7gNq3o3AGuRwS3XZ19SdMOp+WypT6aqi+2RQvw/YXaF+7TfgIjVqayTsGnoPgsHdkg5YAlSlha++BTlD0JLHGvT8naVwpuaVDtOZ11QxxWYtB5CsUzPruCQXiBG2sIKXVoVWwoCWJksT7CaSHWz7MU+X2Swou16sW6b0HrDZ7mRiIlSyNiuXy9h9BOdc4eudL+APXosUwAWMasQfHhYJ58t5fTwnyNitBcEhSG7OMjTGxdrhLVIKZFgKQBwlGOJAGXDQNG/OzGuFAzxgZBuhp2hGaTDfG7lnQDqdcUFdaBgBHpRidA4uqWqCrzJbXQDFDuzPoF4K66kfmYKdUuGTDvLL8wmkKTPP875ep0DmbRDbi4vF6sbQBX3RQEduBYHswGaUt1/5+fC8k4Sop6kk43Zncl98aLa1QMYIu+qroc9NjgGAA45IYJuFlrTZA458YDeEOYT5NOlHq184c4WfRKP+OtzEkNbmgfVVr9sEJxC+XNlyLz+LjWdQKRKuU+FLXDWtgCW76HsXRkWFgU4NbaZnDNsnJ8mpPCrRT406PK+LAYvl9kX50buaVKQUMFLHJlsyEong+D5MAhb9G7wNjgbOQu6CycbaViXnkekRV/1wpj6/BLN77r0En+TWcvrLOatwVCY3qvsZyrmw6iKv83+nKrBp4pYzGgdn/IHcp8Zd7H3b47JpKh2LQ6Uwkj4cTRNHnxvVBtOZxyj2F45hZQWmQKo9XRnh50b7qlrkDdmbWCdCBXNCsMQhHBwX6Ah2imZyhHpTNT+hyWS2OjeJ0mp+iL1Ra1jRkItsfQrFewvh3o3VsHGktfVqywXwKeZOwjfxvvCRPbp9KIwuGGZuEJinOFybMifn7UdVwX7w2JJxA7qiSo+FB9Um1Q+8mCN5y8gE1jrQtJlFHG1N8mXLmDLpq80yhHrB3uFn1HzLvcUq7nLevwamlWG6ipJskjrQKsf1xF/KFFex2YPXMuSsNqgGUhtYLxLnIuXJLIvQTBfefanIP3wXk1R3gcCqiRpBTfVdNklODVSs9djCXngbcJeKNEL3Pht2mmLjPgHszbsR2LkWpsZ7fb/4hfZy10FLIoBVjVIlqWC0qflmqprUCIYnrgMMgRe8lRQezXnMZtB6Bl4c825cvesoWnXoB4Dc77MbGzLDnhIGIfp8jZMlSalOUOWyzyrKaz9svFslRXMudbzNyynarwbYGcyKNEtizU7PCzKdJ06jP0fTut7h3l5ZiiLJGKcbfGkCi9u1m65AsQk7eohJFiZhUbGjMegY0DM6ZKw2eQ+bUYq/lvKr6gHqiMOl0jF95YMInwLnncBZuSiuisirl0tKwDOT+1WPe1yi88YktfJwHJ4y4+ljUlS5b94tNtXaFMAwJauc7jI4047/HPo7sGgbK6Jy2C7mu/yuOEI+kGVr64k4VWfuEnOjR3VOkysrlFIGKO5RwIHSJxbZDNZm3A1UXxoW2i/bKq5HJtlIPZ+F/l2DrwRViVS63WLcN5sOrkgPyAVIlZry4wdK8eTED/Z8+rduclDzlP2PJYvW3TiAXIBlpKcpnddrK3bdeLJLOME+X2DtuwvySislUqM6LbRuV9O8ddZ1FSEk2i92QWk4KIgaJXG2SMlSQ10hpIPxTWaTEhlqQGFcuabG9TrP1xYS+fPUvKAsUHFgqFS80jrvXF9gG5Q2/vzDB93Ll+FT6KsnMkvjpyTIeP5TW0xbCa0ex8NAlLBIWTjzXMqW8+7eWfV/TayDYc+cpjGeLMkOfIQYIna0u13F9xw1/7VEO7dSJLKOCjMHYyrXxV0GKOdlSNyJTIWRGHVG5lBDZ17EdzmD21bk5Iyv1t0fs276+bvsys+05DKFo5rcFy6ujYlnyGe98uK6A2skQT3h48tpyBalk0h1dgoUk1iduitLkVxDr5jcu7uOVdSiu0VaLrzbgGzODy677WZ4Kc28jZbLDGJqeoOdJOY0H+EG7CU/nO1w40FiFoTm0k328hcIXfYakDjV7lvWSE+gzCq7iMj5toTygTRG4DFqNgJlU9X75rWi+x2H3lOi475ceGnQ7O9ogkx9xUa1m7AA0psuuy9ex1ac/sIktYuq+vIJJ4IHhgHxIbR1uhkGxNCahMJ6UAfUK/xdOnPhn1jOFUyZtFzbEXl42LNntkNw1Jc6C3wx7ecx9IoGBQwr+93J+V1u4QUmNs6l3I5DJ0ytP3TZppvrcQ6C87C/jr8to+FVJWzFbaL1n+AZx84tHI/f5t92UXW5lFpHBt9Aj3eFHWAqw1Hl9qnvxw0czT4IZCDZhX7Y8knrQ1CMztma9VaC06ZxmHEFtpomZdJx+DTLcxVV3sRLIbKh5mTSmBNBbBXv/admFTdtyR0sJq4Tz0WI0SmNygYxc6AWW5RPwtTQ/Ho+gNGWBmCa4GKoNzE7IgywqamjAZ0pTsoE/hj3jhEPevuhhB25zIN1K43HeEDXEpx2JjHITlKWp+3N+iBXhvnMbDE3H8gjXz0PSzjIv12hdG/5U3Mr6xRa4vrr/TLW9HLJ/TDEf0b9XuhL+0DNeDRtuH7Opb3+O+DuFyX+H79UHHxcBlsH3063nJEiHlDHPp6urlvXGN0JDSESfyFZej0bUwTBRmnLAfJm9/fDMsAkQmXt/A0qcvjzkO4BclN5cr/syrxyp9xtVwQ/98VmR9P/tKLM+nrcDQfuOrbexghuMMndpFvGRc9KJlMaSW3KlUVCkhujNRuc8PVuDYn7mnMiMY4knV/E5/6M0GydEI4s4tGeMXTCDq9piGP9WaEgtCBrlDutjoZMj8PB1tqzmnr01Zy5y3wt5zKrkFTUlOMS1Z2mveNGbcBsamR6jWGCgnEuyQd5EqO8TzRx4o93YI+Uhrc54AdYdE3cmcJdWLvCgkRvdw1Pf3TY5JrCWNoX2A4i3HtTOxWvBiR1ywQnUskw73TYgLXYdn/c8WU29vQTa6K88LgcVwKDa/9J/aeo/5FhN9/y7saCr8PZl0qylwG2kfXvfBWme4w624EO7o1t1axQuvgvl4RzB+uvv2+1eQF7gSSm4Pf6KECzqgFcZg3TiMHThLczITVBJl1ifc4ofh+ej4fhQWYh7ow2dwkSQKxuwtudzXyqldi7HDHzwh2X0x9/wpE+4q0NGVdhfU+rmRExBV76/n34/t3RQCO03JvUGkQ0KeoujYX8zOUgOkhfI4Q9PZ2LcO+fLoXq/JpzASKB+f7Dj3Yhmfb4DJ6zP3Wkx9ue+zI+ndNK38e8PDJzpa2A/0WXjb2eUPlkc6MrZ+N5JgcjM2UZFO/9iLvBHQAGwqIpRvOm+KxRrql4p1+PIHf/9Z/qxYyQu4C1WYeDN8HvvIanMF9RCgMLCpynfPIG6PKLX+5j8sMRuPlNlbafEIICMJQj0VRfAsSNkkHVTPoseOFZfMg00nEWxSxRwPUoJ/mHp5M/WOcCn4lib+zZjH3zKSxy450ibWh2CfyoKVYECkFYD0I94LF9dxKGZcHDm0DkhIS08ZEN24zYJBQRJ9O1T3GkVCMoJRjyfClOcUBKbhjRrVZyfHCtE5ncdnWLB+Yodk2LXzrPDTFkm12UAjNTBupBPZod30sqjIIOkrIzT+kx4Gr5WOrsYHnipg5osX03gvdqC7Fpkh8QmPat5CLcY0gOoJCyIaoT0nIjIa4I2q7qW94w0z7ig2o63KafFCeMzRDeA1IOXSRlcQEPPMynln+s74yoDRN2TTgNckrBPtn/zk3iwMaFDMPy4y3haqz3Yf/Gt6/k48k8STdkPRr1VOeqSp1w0S13GSLVdRFFq2nFgJWG2JWHh249kMKOZNY2YLucxgv1DbZUzdTrcYYqZEJLI+vBtQsbyJmqdhsJUq9PS+4nU9ESYuNTDwawCgrjNYCePdvQGpHM9exYS+worv6kbAhb4/9GZyKmE4XZj3rq57o0Ey6qWBP/ifftPG+ECaHD2KpVQpoBUyjUvUcOVtG0DoRul+v3Myli7Gc3ClI0iFIgAI0kCHsUvUx3vnSGmOTF47s3w4MAfztRHPsPhMTkCX+tG2ulp0nlExUjz5aNfWuG2XIjGBLFWekHPnslbOEGdUqcBOqeHEyGZPsejCmJw1Yg1DXEHqziqxa85smQA/wS9QlinrCzb/iHzQiBGd6O1E2dWRpsie+g9R8T6M0x+JxPybisMutimfGctHWDPu1GrGsccnlF6DnYtaDtFg2SXiuDGetXy3lVkR9YbXE57pAA1pCn+2A5qCilrSvvMoHfP9XIsWUhDkMUQeHvM9+9U3ZBnf/RvnrRgd5VYe/jBsPgD0d85M9hWRnSFO7lQBExYwekZYCleKgNQZvgTluud48Hl7iFQ+Dy/osMm7aSWjWtUykhbjQ6o8a11DG6+YArZDJZhKh6o2JSc2nT+FCrW7vu69diA7kn68m8c7Rny3YLSqxaZuKxfPenN7PwpfSo44SlYyYkv86dYAbOtQWPWdpaUlTwWNnCNPvsX460+4HOLuu5xgpKx+UEPxLf0wyAMlwF90b/lxUHH78ZG9t/xx7qUw9OHi8V9JlVzG81r5D9hrGGhe2K3xBja+p2a5uY2k8vx+/QZhxY0nvqeH6kSqwEf/g8Gs4ePZeT9QBCYQefDtxgwRtgCfYU9FMDgfozi/xmvK1+2myyDCnPN7R6WdgkBLODYeJtNRTtDpnT2Xw0UF9z7yruvxBmm0OlgldgjBAjPny4Z6UoAuvKX29wXOnR14agGxyEPBrQFxu34ZXV7AOHLHET4bXTv2VSUgtrynlxsE0Pw2diwHHs7h+kl7tdrSNdIOAqqUW+zrvMOtTSPIMMBjBLjoUt9heB4IMrl9gump47B1YGHnAJX8+aZvUDi9gnzWA7hdVGWee0CB2l7cuejdA2bZGFSpwegLDUcPql5pQ9KDYFoz/KrgpZn3bAv/cIvaTjYA0Cst0jCQrUuRE9BWDfXMiIW0zo3Z9u4NDFsCgBy6Zg+8RMeMbI0xR/couFckSnh+/gykzOGncgY9ALKHum07ILeLA9Zsym/6RdONoou3gy8C0STewb9C4D0bBHI58uwX8px5kQJjFMyrWx4HcOugI9Hj+j1qSLw9XbmAP15LkLxXw1ansjDWPiAv+I+5BNNCos8XYrUfiHwx9sWKMcxp6Q6V5aLAGKSjvA1oUjLP+BGR1KF9SwX4Ivy16SCvDa9LIgi19rPSNxk9msteY5I8GO281rud4keiikX6aV74nsLoxSglWYH8YksisuabBhwmZ0XU6sf0e16e3vhRXhMSSqveKs0MQGL60XK2HD87P4oEUyho64XJR8gLFC2/RNHkXnSUPyp6PBP+3rXoMlpPmP+9rwf/YmJ0lQjHQ/l2NTk55gf4LIkuP4Dafv2CevKvpRrVuBW8jGTxA2Y0MUo2yjHxBVOZ4QfTpvA6k51MJhv21wzN74XYmrgvW3mHJhJHATpHCddgtqJKOHnvY3pnhCtiKtXC2uErYAmypYVZDn58Jppc94Yto05B9LxT5dgFOgQt9wjrMx9mKWsVQNKybh2Ng9638piHz3E2Tf6Q29RVFvt+Zq5yb80cPD8Cw69q5hccewMC6Q1W8u9AM6kqfL8xzTfTem+i1WjQQb/372njWzTfoObERyT5d6T5xjRLB3zxd68136UWgJ2zY7cY0JpKm8U0Pov//03L//wDWgmT/xV7j+Yjy/zTtWec7Z7/IfubH/zKdoSFfEybjpip0bIFWMsPTn6gGTnlttV1oeGcel9+TPD+Cp35QNx9T4Q45EMG3ZAhovbT9bryEQBukxmdRNxJbD+2fI29h/BJfTO+i4Wwdbaks584x6FevM7ze9b3sqrO0WPGZSZZOSS5OI9NXc+/kX1G6qche55iozEzW3mMn5SelzwN8wOxIP7yLAh76ARqrDlS00XlS3pXbokqJYM8B8hO/dHh+rUO6/DK6s2Cod9KcAsO+RpurhiVt1+TqOzMxoToG1jvkGR24OZA8VDL9TBxLE/aLvmI7B4HJFpBzY44WgCrmxKPGxFr5a5pUlqvmm7+4KKtDVR80DuGhKbFxw3AulDr67pfMk/UKOhCCKDR8GmpO5SRNaT7v1GmNGnH89lYoAW2k4X1o3SQNkL9427HLuR7beGf0MzriIVNPBxAlwbTDbdQPhPx8GGGI5YmQ1wpP+49iatOS9HJ1FjxQMzfked51kYWKA3rOLkB048xIwfUjt/P78JMvwuD92+iwWxOgyRUjTRT67OX9kOBIyrUrraYSKXXRlL7i4CzKYSimIXyy/kubG7HbxmeCRFQagWYf0Kzj7Ge6ODVnV0BXWkuW6GU3FDTYTEfNeaOACEeFffaC2hasdhYe9nldQy/c8PXN7xu+B0bvgHDN2L4Goavafgxo2eNsT2o4OvU+Ansb6R2KFR+T0Ycf8W+5BhglOyIeFbOLMyOVMRSR7mxcUXIilEJajxBC+cSU318/UT8agMmibFLMPaKjPGEonQ5mogIyj+/eGpLJztJJ19Fs6YaCXF5II23kicxJpmx+o+d7PShWQykD0K1QikPhpFrdqbN/SBTV5mxe4Vva1uu2mjDY68UrH/oNr4xdkE+3RQs0ypjeYkN/quOKrlkKVDFEH94ioclmYtTxd4qK8nPLxr3K6LM9SR9n1Cp8YfPFPTnegKvXHW5wvs0p/IL+fOayb7xROKEIYk86PpOZxM8Sa6YNm8waf56rfyVE99pDlvTxtZFoS/6ngGLCwY2nocNDTtS51TEc7OBWOOhnY1qFmWCCtJ5Pw/WVQkoUfj0s9yg/HXekEfsvkO4qvNDqJEUyv0quvZPdMr/xEj+TzTyf/KX/5MYEYmFQrVktpelS7VUmBgMRSNMtNbwDRKfPX70kJxir9uT9153g6v3pmADN6HXQsNq4iwD2tmkJkM174OgOGZh7Zz88J6YZNoPs+PXH499c1xr/+Ri3gqDM61X4mlxbt+9me9MZnbTcaiOIr2yJjTRptXOmsZJozVUBSXb7yF06th+6Kuqy8xkOFJqF4ZZjXHsmnH3ZnxlBNlaw5ERlVi9i8dAs+5GeXZiJkFZ5goDAqstuOLs5I6XPFA34t87XFTpsyFHbLbV04VdUDhxaD26hemdfiUfHokdcZPTmW5HgE96O0+aiJ0D0rXSX5k7khMsyMxhVgzIU0owrOx7UvbPGVXhnywVYnMaF31bALyVhY0/GMcfqZa2kErytdvIxZVxyzNozaWd+Wjtw9BGJYaxrNDdIyJdPTqaPVChA4W+2GRhPmQPajivIwq+73u5Thz+gJyk8h2xMg7lDU02hbIRzqu40yHRk9q6gHMJW3p/sWE/B5buGXRDoBk119tp3ZbOZI48tp2UNUUZYnLoMBrYF4BrwiT2HZK8IKgk+VLgglMIZH82bKTbsLtwzRSEuhd05/rSkJjtPW/T9rzPwc8YgHLMZUPDV2ZxjXSmj1h4eShmZJ3ZT+Gl5iSOrG6XvnaCugw7J5rO+QDB+iR0femL9J/tYrmQCeSCK6U0J8cMZ1auO+iyHD/L5VxRV6mRUkVKEVu+dPdyGhNZT1bdfCCOz0JrgOwcDqJsuY5c+k4QpUijzeeJIcnlYuyY4cW33FmKNJYqrZFRRM6cou4pQOLR7qwFYthQAsJ65XMeXWmGUklogRdN8LIC7wRMCwZgTsbGiCoUqJdE9WYR65Gw9QTrqJT90Lp1HXzr1inwbhox57gwPJVdKegm/SaTYtaBli9b1TX/wk35hkHDd4zYxhDoeqyGfYVvCLrVtxPI56106JSHcSf/1qRlxMxKQm3+27Q0OcnoREVSgTYLW7db5Bf+B9SVeQU6qiJgF1j/8EHPLHw+MakjnBYjnPjmtkL4+6wDQkh1llGY83wsmZPLl9Uojzd/rTvOptP/mTX7T+zlHVayNqUiUiKtL3eUhB7glOC5DqPTsY9kTLs1VQiU1DGUMmp1qc2ucvWFQF9fxq7TBQPCrq4o1vv2nJL/s4whIquGBOexZ3biCVnczC0HWRE681B2bYtlWH4GxeeMj80MqvDftpvykZLlBsBcxxAIT9RAlQKIjYHlKIkBJabiXdGpSAhhcyZQZdiHZl0IdL3mYZ/12QdzWjD1uxs6iGcP2xXY8R5c0Y+dSP0fMjps3JvsIwXX0oF1ztXR4LXirhONHFgjlQ3A9e4+7NKupfWmyIPPbaeG2rCbQy9+derldIvBlNd0g7663s01bYhGszcob00sCqt8J4JAJ8voQUa+cKAPPlJaRso60t8WhNXnEGJN7E8gTrLAFdt+03uFbvri/cFomFX7X31szlAYMFDYIRWmjKZ3BPaOuk+PGINXDFF1W+b+M2BGO5KK4Dqn4zziL/sOgcS23Zf2tf+Etd+5Ml/GIqFdra+ok0m+F5shTZemnIlH9vqe5Lu3p+/GnoGajlBUCz8QuvYIeUyNYE/U16cl35vtfO+2eFPbJaJmznK1xHsJq/1K7rNTAH1Tfr2ntle5MiLqKhGU7/Bo77AhMuuGTHTtsSpG94jTQSffc+/hq723geOh4TkA1ZZJXt6uyil6ve5P3bw+NhlQZ3SvL9nAdgSKgFNeskmJOQ7euI9Qfs9G+HHH36CHxauKzsjj9N6boW2PO69aOnVQXcWkYgXsdQhpphka1gETFDklySOQngVwwW16dPneXUE3Cplz0GEq56uPVc6/lfJRePxdwPJ7vcfvrfck15owjkJNJ36092cZLm80G3h/rDevehK3RxwbhoBvCJTyEkjmTyklXJOtwRd7SvwTAVZH6Pmo7482suKAur6h1OUIPCTBG0zcKU6sbDnQKEC6a16Ad5l3/C7EQvEWbcpxOqhqB0rOhMqe+IRemXm0vycINdYj1uwng1ORa2lYpLvnRLW7CqvPtS3K/UTcGpF9JlmMmdUm7l95O0o3C2zeo4DtvRZpJRJgbrqPQLdSO4cx1OKPkWk8MGehLgsUPp0/7Y7njMD4rOZrorxzpLh9mJv6sO40x1lLWKkCcK3SyOMmZh0zb3I+Y+7L9gnw6MTHhY9Z5guwyFV7+JoepnW3pSXON+SOUKZSqMuNJ3KYx34cl+uihdurE0f2BheJcFOjHNLNMg6fPxiisS3xlR5X80YvQEt0aAlfVylBXqal83E5rapjyb8yujJzEjwa6G617j7Ni0JMWvNP7sHJO/igweB0HrfFU9aEPWw6D9lghvk0BHrmuanBIj0UV4gUjPuT3+3p4YfO0H/N6TpWF+2OnFY926KyBip6tLHliDmpP4iEgPX2PWt5Dimy0qVe9tvVjdqzzofyDD6LvHWPYzMXHnrzQVdQ7qBsnzj/Cz0zxVadnbiuxdFXe5mo9LaZwLUgpF5h0WoWvJKYmqK61t9JgmW0iT37VhzyX7EezHJA2F31dp1qNSeOBKiuPHbvFfVK6vZveJdmiBKKQXd/cbxinTa/ABkwGJZeWXCVp+rXG7x9FbFwS2F36qLG7yJRobJu/pUHNXXY3if9W/Kt/Uovz/mNmmBlt8HzrH+am7t6gn4jnSHu9jzQV3uH+7qp9ImUfiRK+NFymiMmLhH7+wB5LHGpbO/LxXQ0QaWZ1WVEdyy3QGmm6aoQ5n1BDXruUWoMj7JtdrT6vSPwzz1T50OKY2VH3H0k+eUigLVTMn8T8LWoA4eM+D3yO6a2pq0SOcstfgNmO1mHX2ubrDMacd7kmQYMm29O3OBeOqo98Er36FLN5ON+uvTIYbj0nFGEprJ+uv/5/fI9P8AfzntgZrDuIcXJx+ZNxBueOS2bJEfhi5DCTuqi/PeP1u+PzbMuX6Q4L+/rRZzeLHWGbCfxdxITbwK2blRfHJ1ssJ9cumsdiLUFZHXffWAphwqB9Xw/I8wZA4P27H2fqj6Ar6Xoxu9acay0JFsjX1jqWtt1D1HrFKBVvoxOMykw5gDqwnjkDrej1emtrSlOIKZGiBArs/mOyZB2M6CKHrbFqxkgwKEjIDq2/CiQ5cuxlB84FLgiHl368EaycgVRVXackQW2Idx8wwDbk/E4pc2IrcqpG4oneGiqkTc1qZa/ZVKs1mrG2cHrCkdy3bjtDsc/7AMUL0W9AMZkaJAdHNvT7FDoKeQt/pCKeUWC6DkudSe+bmeTP35161GHhAaGfT2Ls3ua9fQyI1XxY5VcKyhWyltRfPQ3bU94f07+DHI7Izeffzz55Tow1UdTzToGRNy8SDJRn+dKEjF941kBne8CaLemr5WAWNUzxhNcD0T06jajjUcIj2V9FvMBkn3Djq2AqZlxJDeWE73aJ/+VhuZvgJtzu/PVGm8nstaePiFzZ3F/WqOw0zhhM64dXfic1RN9VAAc5ocg7IxfVGGPishC7K73Hc87F/BGlLXWyhGnG0aEsmoEyO69NEy530HdbtqgfGSeiwFhqgmgbNdXRAYbmm/u5FCSodJboZGwbb1qsKTZJaFgIcxLVO2L+djRabvAthr72MW2Advd5pyt+0DTmWTmnl4g7ZsDE5iYZT9dHOo6crc26Ho2H+0vIPAzmQzkEAUj+PnKZ7U/Dg7gqydZ72EA35xy654ykSk/mlbiaSEov+0+wrBppp0CE5V9TYbEQ0H84I13XwXZYGrfPOI9VCSiyUOduaBJmr8JrXYlPd/5w0TT8Pq14WVRgAjf2L8P40FepBO6utKtXmfK1NgpJ7Oc4wnSKTUCAeIx7wQK+DQnYuNlDzB3sSKpeE6rHsGDx0C8YN4v1almivXyWX/AYwLUXUBVxX2UeEy2WKEIQP2kmohc1+Cw0LgdcV0TsjGjaRbhD4T36BnJ9iXBrpj8L/eWCSzBJwryjLH9DNCAYjNcEGOY/wWTbcZwAlQU4zKX1gB3bdbOgHTRwGxcqGAPf5Z4Rg0hkl+6B7cV1pEs68OzVgoZhCrM+HMqyKq1HTCzGxjJjTvK4ongkkaBoLonOxHHVKtnyJvgV+PjEgbI7uRtWlEeuUQHBF3GL4C6cpd+sVTAmf3J3lgwcfZjmzzh8iIFzd330+PazdVTtI2TorECaSZnu1kTIe62V/wdDSOEBuS+bG4RhjHOYgYT7zeZrFsURO3eqCJq5BYMudXQz9cBKVf2uBOCC+qFFEHPf0SzvR3BFPNzg9lAFZ1RLbcPLuB2/4xN2VieTpblzj92fgzL2ydhqq8MqtunBedcs3Vp5iB7KVDSdSdhFqB8lMejsSws1DK4Z5hC/dnGvRwas6+e7wWXHYVV0iE4p4aC9ZPq8oTcoLSPGylwt6KHTdx0WTbo1o57qbLsKUgShDeTl4Jr8Ox9Fhs+m7TCSo7Ari9Ca6duko5MTsC7i6vrQ49g2H9WrpYDqD6jyQKsuK4B22vUVQAd5UdI+IajfX3HJDRAW2PTRPQrGIDx9p2Be9BcV8v7My3AxPg4aK6+EiyBEjIuHjhN2xx2LM62kwLv+F+4xvOu8rCcrRo+5B5mVXdvJcK78xq+Td3dC7IuOgRsDfsOWKOwlfbjiRhkRUbvhwQyMfQcMOvEyqxu4tc5gnr6cLVUC5uXwr19PyItR78absRdpBoAJj7o7ks4eDvyBwgp6DpcILqiP5G6ZRAn6zBU+K7OKVrDnUKcEm2mNCDrVqSg3b1C0WBOAXuLRdqXBqru5p0OgnnZRBUx7gJ8fTYyEV7Xf4jUevcbg4u40dwp054c8BAu+J/ybKSQIfLwUvdGe2V63vlOQEN1Q4L14lUYwLTS3wrTnfg74M+FGtq81UOurvZ3i4HcGP9PjmTwUXK/in8DJGdxFzrZInnk/U6Izu7PkrFqcFHKVD6twKiBWVqX7guSfKvcl2RYxqVCYkvWnrddwr0V1CARfojvRmZ7DVv+plMRaOMefgFlB9b88q3rdEYBTOk7G2jn7AEAzLc59iuEBlRytkF53M6ehcBJWg3P4tMaJjg35pXYI9iWJYlNL023M8vz7lBSm337TQvv8wK+Lh98IfehE9A92hoxzX3o8RfckYiIHcBH6T8pC1zsqjp9Tl9ZUcov+4ev7rwc2g5qApI9rlmV2S+xJ8S2TdZ+zRB+pbA5BKjH9leSBXFeH5MRJLPn8k6zUZyQB3DwM99L4vW1yrl2ux/JLyAGEMQxGSyozFV237pAGrGTANdbbIED4JXXBNQqtZI3zrSUeaPIOc/0q+gi7pmOJb6GRQxDje+2HQPsAhGrcFWd3it9Ytc4GT7ySjXv+7mXd+ahhVbLE3/QZk5eE7/zJrdBccI06Bpge1wduoH6qcjyfSB7zLpWmZP8k8x4pyG3VYJmXsZ8cmzyGXbbbCn/QMuH6cH4BjXvx/8LsKye8gWIDIdlGFINr/8rHViG3FuFM8uhQvf9I6aqjbLiM6tDIdvY8h42qmzL+RUlm3jmh3m0spf0WrBl0Jpz/5iwjzf14XMZrFKJ0+NGW5+CMgK2lLnDIDUlriWKs0faW3Vb+SVs6BlcI68EVyHYJ4A1M3bh1Ve3ce8N49A54JZosuxQ10w8ZRmFwufHxMvFBpeX8cLKp62eICKd4Blo4lrVdf40aErddCfzWkM3x3GblNRBp7v3AeV3GRL03/V7bs0yKS3AlZSy2ba+0noFmJrUCoi1tC1gBeySoqlW3ZI30w1VLFwG+vSPyQyErD2TIMeVa+PcOW3gKh8r02E5Qm1GCPV50vFMJSKW4Rpfb+RuwWdSB67YqOalU7/EHuKMbOFxGVrGAQUrrdKhYrajyfnyyjQ+iROWcUqUJ6psR2O7KGKC5cGj5XiIJsPY9kC10pYNokuuq43DdmdarTssHQmio2r3aSn7Cp+DU0GnV+hFcZqeZnUcqPbpPPOWRNLDlJnSp6p03pwMdWJvBMLbsw8mS5W4YM8STZZPqJtbk2OPWrZcCedZ5uIFnfP7PpR0iX9U74oyA3GsnaTU//2lto8Usf/+c8/2ZHJRrlMLZMXaCU+zMlUf149x9XBXEyPfslLCwoGuKeGdajuI3bY7PDr9afENNq/J7/Cl6NE6FsHBGyZX9gTr9a/4ANr/WQoHleAG8cxwrKrARW+n4ZbyYva6Fffj1yUil6+3xZ5/3/jwRvj27xsfv4VPG3isPlooXrAnr4mkfTbajULTyo+q4mkWvcfVCTZqvBz7d4hHLkpijW0Jr8dGYlE0DZSNm0Kxdo1odASyZoHKWr6SWYYOasdA4yPOML478WfuzZQRdWUn6xpSXFT+g0cfisNpijWhvxJXI/bSbhXXk5vkwLCZG/ZG0h3zGlxZRE22BlbJ8L3sV+Jc+q0dI1czATFi34J54LkqBIYc/peSbpkybuWu4RFFkkNOY6Ue6aTtPn4dxq3ieSn7TkqTySvozfaVK9tdNGgXp1rUZt0VK8Xf6EbSOGoElyaX1oCB9dC/i0L45wPWuX+t61NZnG0/6q1RZKQeRGtTgAMvNbDSxAKwGZS6FPw7T/mYPSR9dFj4u0vLQOYRxbMpGAWbEG+wBOmz2Z+J7GbGiCPYVBrSIXbGH1A8ldg6YVcQCBaxCJjQf/EV/xVvEslzOYfYDGQL3cI8PfUvPxE4fpoLWPruqpx+eSiEzRJA6ygdBky+dNjQR+hK7Z6JrJqAZh9EbBn5lrbQsDUHqZTs4Jj8MK180+jnjTk+Lhay447PuQzaOKKDrCBqxS8Zj4+rgbuqxFOWTUtCWK0oDr2VmBYURdNG828dMAQYUIDFlYoyS+DPoCQZ44g+++fImn1XsstywO7BSHbPNnCeLMDF0lrxJUg52TSus5+u2O96cZenaq9pEDti5yNuw5WJ1aGPx1spqPp7Mf5YTDouHVN5WWEeSr6U7iYJmqrxtwsJNO+8US04kChrN7EtATK1Kldd0xwO5QrlbQq5Jpg8IGa0zKERk8QvIk0wmVpuUyh46IzWpwFJfTtTHV7IOwq1dU8uGNDVvl226QVnqEYQXcPanPCL+ylo2Axp8yG/ww/iu5Y4g7Aec7IOGs9S7vkjWtT3R/qZGGy27Jg/s3VZtqY9Xe8t7oCohyKGmbQ1TvxWNUPzYYnxf8C7tL6GV/fEQgB26zs4IF+cpa0AmZe7xPqtBWXF0uZrxvvsNZiIlVSRbmkPQUfcoc2mwdtxCzC9u5L9TyBLJPH7P2Wjxsk8f2aB5mXt1gFPcBb3Zh1SnGSh71KLwHRQ25uVp+6aWmHLBIoRRiiAENguqEmwQAgjHCOU07427TRowWpXoKVAK2ydvQH2oC3GpyZxSsEWrP0nhf0n4QBECdyEVjO5eIkeoIGFRFSPTyo90JBPqdWuQTsv3BFyPVXFw2fxe6nYi37y2wDjND/2tnu8IELMIM3Xonj4lB9uqvb1+P2Wn9ZUVNblb8GU+x7vsl0BqAUnZbuph7Cyw4zLHpPSAMDzBRxLGZeOJpnIU/TR7mDhA6T5taFVjw3BEXapMtL0XN24+n+a/G4KD1C10hSB+p2RZi7S863Ajnzbd0zMnbvVv3kyCu8y/ybJbK7gFIRowX35UgQHPmrtTKV0KBa9FdyZ2UL6lXMZzrM6KUGjhb9wG+JZxuidDiJWuvDhgCjhikNWQSxXQlCtk6o4yAt82mdiK1R62l0VjFAVACJUbRXoLH+lTk9ZE21nrLRD4ZW8+SmSgR8KjIBUurnOZ/w12X3d0408fcM52260FPMYKfb/BBP+kTeHTv5/e2fEo5KLn7r8OXAv/io2BoHSGS5VHyCdSGb50ba7ubOg1Ofctut7sVniLtPnJxDXLJy51RwYJdDzCR1LuifMKMS3XrI29ct9p7LvYGroTizB31ZEWPPI5wFHqjEDUPWeIRey4CupryjqPGdRhbHVLui/kIb7QZefk/OllZBFx7iWEH55Ij4tv9HNLiPKV3Kh+Hn+SM0FszNKtsJYaMs8dMKT7kG6CylmmSddN/3bJJzpEHqwInpA970M3LNgW+V0kigFfIFa2uUEZnoK0HrU1EvCL2yXd0yAP1zriwbidRFYmSUjdhDaeyZ7mouGkZy+si9awvz2dgF+3SGwB7zaEM96xeJ8zKGwwSPYaRKyDHatCVkbbXJ9tGK6pxp9i+gNC8Qqn9ftBnzVI+Ri3iHEbw0JgtZZTczTpJPHNOyYC59w/FBf40clmyDgC22R5//Dymu26Rq+X92DCvCeiy18R2hPcxlpnWq97v6Np7QRd2n0BlylvJSCN43KTLKeTZt5cgF+JOjlPRlhAyJ6dHdx0LTPTo7Zp33JCtUKyOsvBzyryu/eM9c3UlMytROtSlbltEXYJ6bbujtC3H1w3AxICs0k12h+Vhhv23LUlFfv+oMKgDhTdxnzkoOw9hJWe9iXnl7BM5OG4bwY4KtNRlhQ0FdNzqJQlrwU5NFcbEvmg9tpK5Tfy44uaFdmr8t8C2C318p+zRxeggmECFUXtoMuNEcWC8DVCHfFfDjJds9QotauN2tWkZe6mm7Fkf1B+wQMtSH5sIMox4gaBNeJdt1UlbgclF9eRnqJazaIWluCVu9JIkG+ive5Zdp6P6jyQiMZcNktHX0G90wHPHv/jM+QgIEMVy3PamefPH7GcjGQI9RlkIz790a67tNTfZYxxwyp+q8ibvyB4lltS5av5o6mI7RGbJQO2S8qmUe4Oh9djsgvINqvvTn11elxmleImwsphcpA5D3JLLPL7WjHbTNgi/uEA+/3BEp1LjTmmrJIJIqJOQUDRBuLmB7Hu8BFiQl3XyITrBsYgQSa6Bs7lQySzopELUmSlzMCFUcqcQlHig3G/eVIQbIbApEbLeHrUbyaHzemNswWWbFGX0wyJReY6eTSk0Sf+dODd0wizASQDVNhuUsyaXFtGfkKkqUv0V2I/bwHq6mRj0y8acP0LfLJZQOrRZD2mpTLeY74lzjlPefyiobq9KCo+keZDJ5Bqel2Rr3ZJwSzRnslbToRFEBTYaSgj/vrkWLyv5knyn/BTkx8XAOfKxXlP/PuW6FEtPH3yA2icXUKvHcaDlpTlGE0Q3nUi4Ne7ycyc+ImODL0yUiOj8qP/f/2P26P+u8x+YUMyWQnRh+GrV8QYXLccyXIDdXb8rlkfDGZ6X5iLuF4qP9E0Lq/SG4aJ7ID5V0bIG35gFoD2VMFxNImQ3jqHOE1ebaf0qkTPdycIloVPAA09YUCwTqm8U6fwo4y6ro9Ef0yVCNjQByIaQ2slegbgNfO+NNBVkxUR9jmnlCJUwsz7HRmmazxgMx3IWySLemZuz+LWH00+Ky5JPt6VseybjuO3IgmNwBoeQDysNuUY3XIWAUJszhJSp77cwufKk/0EcQI8/J6G8H9+7kFXVWFMQVfw5GyRZbvI7ubWS8QjNRGJPcIl/TkoduZ2fGvgZ8qS8Vf2GBCHOUGdjgA99R//boD1/m3V9USSUUMIP7C7Qoloh1j4wGkWeUA04YfiH8Atm9JW9qAABFhm8HyZ1s0/9HWdwI=";
+      const decoded = JSON.parse(zlib2.brotliDecompressSync(Buffer.from(encoded, "base64")).toString());
+      typeCoercionStateMachine = () => decoded;
+      return decoded;
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts
+var coerce_api_parameters_exports = {};
+__export(coerce_api_parameters_exports, {
+  Coercer: () => Coercer,
+  coerceApiParameters: () => coerceApiParameters
+});
+function coerceApiParameters(v3service, action, parameters = {}) {
+  const typeMachine = typeCoercionStateMachine();
+  return new Coercer(typeMachine).coerceApiParameters(v3service, action, parameters);
+}
+function coerceValueToUint8Array(x) {
+  if (x instanceof Uint8Array) {
+    return x;
+  }
+  if (typeof x === "string" || typeof x === "number") {
+    return new TextEncoder().encode(x.toString());
+  }
+  return x;
+}
+function coerceValueToNumber(x) {
+  if (typeof x === "number") {
+    return x;
+  }
+  if (typeof x === "string") {
+    const n = Number(x);
+    return isNaN(n) ? x : n;
+  }
+  return x;
+}
+function coerceValueToDate(x) {
+  if (typeof x === "string" || typeof x === "number") {
+    const date = new Date(x);
+    if (isNaN(date.getTime())) {
+      return x;
+    }
+    return date;
+  }
+  return x;
+}
+var Coercer;
+var init_coerce_api_parameters = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/coerce-api-parameters.ts"() {
+    "use strict";
+    init_parameter_types();
+    Coercer = class {
+      constructor(typeMachine) {
+        this.typeMachine = typeMachine;
+      }
+      typeMachine;
+      coerceApiParameters(v3service, action, parameters = {}) {
+        const actionState = this.progress(action.toLowerCase(), this.progress(v3service.toLowerCase(), 0));
+        return this.recurse(parameters, actionState);
+      }
+      testCoerce(value) {
+        return this.recurse(value, 0);
+      }
+      recurse(value, state) {
+        switch (state) {
+          case void 0:
+            return value;
+          case "b":
+            return coerceValueToUint8Array(value);
+          case "n":
+            return coerceValueToNumber(value);
+          case "d":
+            return coerceValueToDate(value);
+        }
+        if (Array.isArray(value)) {
+          const elState = this.progress("*", state);
+          return elState !== void 0 ? value.map((e) => this.recurse(e, elState)) : value;
+        }
+        if (value && typeof value === "object") {
+          const mapState = this.progress("*", state);
+          for (const key of Object.keys(value)) {
+            const fieldState = this.progress(key, state) ?? mapState;
+            if (fieldState !== void 0) {
+              value[key] = this.recurse(value[key], fieldState);
+            }
+          }
+          return value;
+        }
+        return value;
+      }
+      /**
+       * From a given state, return the state we would end up in if we followed this field
+       */
+      progress(field, s) {
+        if (s === void 0 || typeof s !== "number") {
+          return void 0;
+        }
+        return this.typeMachine[s][field];
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts
+var find_client_constructor_exports = {};
+__export(find_client_constructor_exports, {
+  findV3ClientConstructor: () => findV3ClientConstructor
+});
+function findV3ClientConstructor(pkg) {
+  const [_clientName, ServiceClient] = Object.entries(pkg).find(
+    ([name]) => {
+      return name.endsWith("Client") && name !== "__Client";
+    }
+  );
+  return ServiceClient;
+}
+var init_find_client_constructor = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/find-client-constructor.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json
+var require_sdk_v2_to_v3 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v2-to-v3.json"(exports2, module2) {
+    module2.exports = {
+      acmpca: "acm-pca",
+      apigateway: "api-gateway",
+      arczonalshift: "arc-zonal-shift",
+      appmesh: "app-mesh",
+      applicationautoscaling: "application-auto-scaling",
+      applicationinsights: "application-insights",
+      applicationsignals: "application-signals",
+      augmentedairuntime: "sagemaker-a2i-runtime",
+      autoscaling: "auto-scaling",
+      autoscalingplans: "auto-scaling-plans",
+      bcmdataexports: "bcm-data-exports",
+      backupgateway: "backup-gateway",
+      bedrockagent: "bedrock-agent",
+      bedrockagentruntime: "bedrock-agent-runtime",
+      bedrockruntime: "bedrock-runtime",
+      cur: "cost-and-usage-report-service",
+      chimesdkidentity: "chime-sdk-identity",
+      chimesdkmediapipelines: "chime-sdk-media-pipelines",
+      chimesdkmeetings: "chime-sdk-meetings",
+      chimesdkmessaging: "chime-sdk-messaging",
+      chimesdkvoice: "chime-sdk-voice",
+      cloudhsmv2: "cloudhsm-v2",
+      cloudsearchdomain: "cloudsearch-domain",
+      cloudtraildata: "cloudtrail-data",
+      cloudwatchevents: "cloudwatch-events",
+      cloudwatchlogs: "cloudwatch-logs",
+      codegurureviewer: "codeguru-reviewer",
+      codegurusecurity: "codeguru-security",
+      codestarnotifications: "codestar-notifications",
+      codestarconnections: "codestar-connections",
+      cognitoidentity: "cognito-identity",
+      cognitoidentityserviceprovider: "cognito-identity-provider",
+      cognitosync: "cognito-sync",
+      computeoptimizer: "compute-optimizer",
+      configservice: "config-service",
+      connectcontactlens: "connect-contact-lens",
+      costexplorer: "cost-explorer",
+      costoptimizationhub: "cost-optimization-hub",
+      customerprofiles: "customer-profiles",
+      dms: "database-migration-service",
+      datapipeline: "data-pipeline",
+      devopsguru: "devops-guru",
+      devicefarm: "device-farm",
+      directconnect: "direct-connect",
+      directoryservice: "directory-service",
+      discovery: "application-discovery-service",
+      docdbelastic: "docdb-elastic",
+      dynamodbstreams: "dynamodb-streams",
+      ec2instanceconnect: "ec2-instance-connect",
+      ecrpublic: "ecr-public",
+      eksauth: "eks-auth",
+      elb: "elastic-load-balancing",
+      elbv2: "elastic-load-balancing-v2",
+      emrserverless: "emr-serverless",
+      emrcontainers: "emr-containers",
+      es: "elasticsearch-service",
+      elasticbeanstalk: "elastic-beanstalk",
+      elasticinference: "elastic-inference",
+      elastictranscoder: "elastic-transcoder",
+      finspacedata: "finspace-data",
+      forecastqueryservice: "forecastquery",
+      forecastservice: "forecast",
+      globalaccelerator: "global-accelerator",
+      ivsrealtime: "ivs-realtime",
+      inspectorscan: "inspector-scan",
+      iot1clickdevicesservice: "iot-1click-devices-service",
+      iot1clickprojects: "iot-1click-projects",
+      iotevents: "iot-events",
+      ioteventsdata: "iot-events-data",
+      iotjobsdataplane: "iot-jobs-data-plane",
+      iotwireless: "iot-wireless",
+      iotdata: "iot-data-plane",
+      kendraranking: "kendra-ranking",
+      kinesisanalytics: "kinesis-analytics",
+      kinesisanalyticsv2: "kinesis-analytics-v2",
+      kinesisvideo: "kinesis-video",
+      kinesisvideoarchivedmedia: "kinesis-video-archived-media",
+      kinesisvideomedia: "kinesis-video-media",
+      kinesisvideosignalingchannels: "kinesis-video-signaling",
+      kinesisvideowebrtcstorage: "kinesis-video-webrtc-storage",
+      launchwizard: "launch-wizard",
+      lexmodelbuildingservice: "lex-model-building-service",
+      lexmodelsv2: "lex-models-v2",
+      lexruntime: "lex-runtime-service",
+      lexruntimev2: "lex-runtime-v2",
+      licensemanager: "license-manager",
+      licensemanagerlinuxsubscriptions: "license-manager-linux-subscriptions",
+      licensemanagerusersubscriptions: "license-manager-user-subscriptions",
+      machinelearning: "machine-learning",
+      managedblockchainquery: "managedblockchain-query",
+      marketplaceagreement: "marketplace-agreement",
+      marketplacecatalog: "marketplace-catalog",
+      marketplacecommerceanalytics: "marketplace-commerce-analytics",
+      marketplacedeployment: "marketplace-deployment",
+      marketplaceentitlementservice: "marketplace-entitlement-service",
+      marketplacemetering: "marketplace-metering",
+      mediapackagevod: "mediapackage-vod",
+      mediastoredata: "mediastore-data",
+      medicalimaging: "medical-imaging",
+      migrationhub: "migration-hub",
+      migrationhubconfig: "migrationhub-config",
+      migrationhubrefactorspaces: "migration-hub-refactor-spaces",
+      networkfirewall: "network-firewall",
+      paymentcryptography: "payment-cryptography",
+      paymentcryptographydata: "payment-cryptography-data",
+      pcaconnectorad: "pca-connector-ad",
+      pcaconnectorscep: "pca-connector-scep",
+      personalizeevents: "personalize-events",
+      personalizeruntime: "personalize-runtime",
+      pinpointemail: "pinpoint-email",
+      pinpointsmsvoice: "pinpoint-sms-voice",
+      pinpointsmsvoicev2: "pinpoint-sms-voice-v2",
+      qldbsession: "qldb-session",
+      rdsdataservice: "rds-data",
+      redshiftdata: "redshift-data",
+      redshiftserverless: "redshift-serverless",
+      resourceexplorer2: "resource-explorer-2",
+      resourcegroups: "resource-groups",
+      resourcegroupstaggingapi: "resource-groups-tagging-api",
+      route53: "route-53",
+      route53domains: "route-53-domains",
+      route53recoverycluster: "route53-recovery-cluster",
+      route53recoverycontrolconfig: "route53-recovery-control-config",
+      route53recoveryreadiness: "route53-recovery-readiness",
+      s3control: "s3-control",
+      ssmcontacts: "ssm-contacts",
+      ssmincidents: "ssm-incidents",
+      ssmquicksetup: "ssm-quicksetup",
+      ssoadmin: "sso-admin",
+      ssooidc: "sso-oidc",
+      sagemakerfeaturestoreruntime: "sagemaker-featurestore-runtime",
+      sagemakergeospatial: "sagemaker-geospatial",
+      sagemakermetrics: "sagemaker-metrics",
+      sagemakerruntime: "sagemaker-runtime",
+      sagemakeredge: "sagemaker-edge",
+      secretsmanager: "secrets-manager",
+      servicecatalog: "service-catalog",
+      servicecatalogappregistry: "service-catalog-appregistry",
+      servicequotas: "service-quotas",
+      snowdevicemanagement: "snow-device-management",
+      ssmsap: "ssm-sap",
+      stepfunctions: "sfn",
+      storagegateway: "storage-gateway",
+      supportapp: "support-app",
+      timestreaminfluxdb: "timestream-influxdb",
+      timestreamquery: "timestream-query",
+      timestreamwrite: "timestream-write",
+      transcribeservice: "transcribe",
+      vpclattice: "vpc-lattice",
+      voiceid: "voice-id",
+      wafregional: "waf-regional",
+      workspacesthinclient: "workspaces-thin-client",
+      workspacesweb: "workspaces-web"
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json
+var require_sdk_v3_metadata = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-v3-metadata.json"(exports2, module2) {
+    module2.exports = {
+      accessanalyzer: {
+        iamPrefix: "access-analyzer"
+      },
+      account: {
+        iamPrefix: "account"
+      },
+      "acm-pca": {
+        iamPrefix: "acm-pca"
+      },
+      acm: {
+        iamPrefix: "acm"
+      },
+      amp: {
+        iamPrefix: "aps"
+      },
+      amplify: {
+        iamPrefix: "amplify"
+      },
+      amplifybackend: {
+        iamPrefix: "amplifybackend"
+      },
+      amplifyuibuilder: {
+        iamPrefix: "amplifyuibuilder"
+      },
+      "api-gateway": {
+        iamPrefix: "apigateway"
+      },
+      apigatewaymanagementapi: {
+        iamPrefix: "execute-api"
+      },
+      apigatewayv2: {
+        iamPrefix: "apigateway"
+      },
+      "app-mesh": {
+        iamPrefix: "appmesh"
+      },
+      appconfig: {
+        iamPrefix: "appconfig"
+      },
+      appconfigdata: {
+        iamPrefix: "appconfig"
+      },
+      appfabric: {
+        iamPrefix: "appfabric"
+      },
+      appflow: {
+        iamPrefix: "appflow"
+      },
+      appintegrations: {
+        iamPrefix: "app-integrations"
+      },
+      "application-auto-scaling": {
+        iamPrefix: "application-autoscaling"
+      },
+      "application-discovery-service": {
+        iamPrefix: "discovery"
+      },
+      "application-insights": {
+        iamPrefix: "applicationinsights"
+      },
+      "application-signals": {
+        iamPrefix: "application-signals"
+      },
+      applicationcostprofiler: {
+        iamPrefix: "application-cost-profiler"
+      },
+      apprunner: {
+        iamPrefix: "apprunner"
+      },
+      appstream: {
+        iamPrefix: "appstream"
+      },
+      appsync: {
+        iamPrefix: "appsync"
+      },
+      apptest: {
+        iamPrefix: "apptest"
+      },
+      "arc-zonal-shift": {
+        iamPrefix: "arc-zonal-shift"
+      },
+      artifact: {
+        iamPrefix: "artifact"
+      },
+      athena: {
+        iamPrefix: "athena"
+      },
+      auditmanager: {
+        iamPrefix: "auditmanager"
+      },
+      "auto-scaling-plans": {
+        iamPrefix: "autoscaling-plans"
+      },
+      "auto-scaling": {
+        iamPrefix: "autoscaling"
+      },
+      b2bi: {
+        iamPrefix: "b2bi"
+      },
+      "backup-gateway": {
+        iamPrefix: "backup-gateway"
+      },
+      backup: {
+        iamPrefix: "backup"
+      },
+      backupsearch: {
+        iamPrefix: "backup-search"
+      },
+      batch: {
+        iamPrefix: "batch"
+      },
+      "bcm-data-exports": {
+        iamPrefix: "bcm-data-exports"
+      },
+      "bcm-pricing-calculator": {
+        iamPrefix: "bcm-pricing-calculator"
+      },
+      "bedrock-agent-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-agent": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation-runtime": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-data-automation": {
+        iamPrefix: "bedrock"
+      },
+      "bedrock-runtime": {
+        iamPrefix: "bedrock"
+      },
+      bedrock: {
+        iamPrefix: "bedrock"
+      },
+      billing: {
+        iamPrefix: "billing"
+      },
+      billingconductor: {
+        iamPrefix: "billingconductor"
+      },
+      braket: {
+        iamPrefix: "braket"
+      },
+      budgets: {
+        iamPrefix: "budgets"
+      },
+      chatbot: {
+        iamPrefix: "chatbot"
+      },
+      "chime-sdk-identity": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-media-pipelines": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-meetings": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-messaging": {
+        iamPrefix: "chime"
+      },
+      "chime-sdk-voice": {
+        iamPrefix: "chime"
+      },
+      chime: {
+        iamPrefix: "chime"
+      },
+      cleanrooms: {
+        iamPrefix: "cleanrooms"
+      },
+      cleanroomsml: {
+        iamPrefix: "cleanrooms-ml"
+      },
+      cloud9: {
+        iamPrefix: "cloud9"
+      },
+      cloudcontrol: {
+        iamPrefix: "cloudcontrolapi"
+      },
+      clouddirectory: {
+        iamPrefix: "clouddirectory"
+      },
+      cloudformation: {
+        iamPrefix: "cloudformation"
+      },
+      "cloudfront-keyvaluestore": {
+        iamPrefix: "cloudfront-keyvaluestore"
+      },
+      cloudfront: {
+        iamPrefix: "cloudfront"
+      },
+      "cloudhsm-v2": {
+        iamPrefix: "cloudhsm"
+      },
+      cloudhsm: {
+        iamPrefix: "cloudhsm"
+      },
+      "cloudsearch-domain": {
+        iamPrefix: "cloudsearch"
+      },
+      cloudsearch: {
+        iamPrefix: "cloudsearch"
+      },
+      "cloudtrail-data": {
+        iamPrefix: "cloudtrail-data"
+      },
+      cloudtrail: {
+        iamPrefix: "cloudtrail"
+      },
+      "cloudwatch-events": {
+        iamPrefix: "events"
+      },
+      "cloudwatch-logs": {
+        iamPrefix: "logs"
+      },
+      cloudwatch: {
+        iamPrefix: "cloudwatch"
+      },
+      codeartifact: {
+        iamPrefix: "codeartifact"
+      },
+      codebuild: {
+        iamPrefix: "codebuild"
+      },
+      codecatalyst: {},
+      codecommit: {
+        iamPrefix: "codecommit"
+      },
+      codeconnections: {
+        iamPrefix: "codeconnections"
+      },
+      codedeploy: {
+        iamPrefix: "codedeploy"
+      },
+      "codeguru-reviewer": {
+        iamPrefix: "codeguru-reviewer"
+      },
+      "codeguru-security": {
+        iamPrefix: "codeguru-security"
+      },
+      codeguruprofiler: {
+        iamPrefix: "codeguru-profiler"
+      },
+      codepipeline: {
+        iamPrefix: "codepipeline"
+      },
+      "codestar-connections": {
+        iamPrefix: "codestar-connections"
+      },
+      "codestar-notifications": {
+        iamPrefix: "codestar-notifications"
+      },
+      "cognito-identity-provider": {
+        iamPrefix: "cognito-idp"
+      },
+      "cognito-identity": {
+        iamPrefix: "cognito-identity"
+      },
+      "cognito-sync": {
+        iamPrefix: "cognito-sync"
+      },
+      comprehend: {
+        iamPrefix: "comprehend"
+      },
+      comprehendmedical: {
+        iamPrefix: "comprehendmedical"
+      },
+      "compute-optimizer": {
+        iamPrefix: "compute-optimizer"
+      },
+      "config-service": {
+        iamPrefix: "config"
+      },
+      "connect-contact-lens": {
+        iamPrefix: "connect"
+      },
+      connect: {
+        iamPrefix: "connect"
+      },
+      connectcampaigns: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcampaignsv2: {
+        iamPrefix: "connect-campaigns"
+      },
+      connectcases: {
+        iamPrefix: "cases"
+      },
+      connectparticipant: {
+        iamPrefix: "execute-api"
+      },
+      controlcatalog: {
+        iamPrefix: "controlcatalog"
+      },
+      controltower: {
+        iamPrefix: "controltower"
+      },
+      "cost-and-usage-report-service": {
+        iamPrefix: "cur"
+      },
+      "cost-explorer": {
+        iamPrefix: "ce"
+      },
+      "cost-optimization-hub": {
+        iamPrefix: "cost-optimization-hub"
+      },
+      "customer-profiles": {
+        iamPrefix: "profile"
+      },
+      "data-pipeline": {
+        iamPrefix: "datapipeline"
+      },
+      "database-migration-service": {
+        iamPrefix: "dms"
+      },
+      databrew: {
+        iamPrefix: "databrew"
+      },
+      dataexchange: {
+        iamPrefix: "dataexchange"
+      },
+      datasync: {
+        iamPrefix: "datasync"
+      },
+      datazone: {
+        iamPrefix: "datazone"
+      },
+      dax: {
+        iamPrefix: "dax"
+      },
+      deadline: {
+        iamPrefix: "deadline"
+      },
+      detective: {
+        iamPrefix: "detective"
+      },
+      "device-farm": {
+        iamPrefix: "devicefarm"
+      },
+      "devops-guru": {
+        iamPrefix: "devops-guru"
+      },
+      "direct-connect": {
+        iamPrefix: "directconnect"
+      },
+      "directory-service-data": {
+        iamPrefix: "ds-data"
+      },
+      "directory-service": {
+        iamPrefix: "ds"
+      },
+      dlm: {
+        iamPrefix: "dlm"
+      },
+      "docdb-elastic": {
+        iamPrefix: "docdb-elastic"
+      },
+      docdb: {
+        iamPrefix: "rds"
+      },
+      drs: {
+        iamPrefix: "drs"
+      },
+      dsql: {
+        iamPrefix: "dsql"
+      },
+      "dynamodb-streams": {
+        iamPrefix: "dynamodb"
+      },
+      dynamodb: {
+        iamPrefix: "dynamodb"
+      },
+      ebs: {
+        iamPrefix: "ebs"
+      },
+      "ec2-instance-connect": {
+        iamPrefix: "ec2-instance-connect"
+      },
+      ec2: {
+        iamPrefix: "ec2"
+      },
+      "ecr-public": {
+        iamPrefix: "ecr-public"
+      },
+      ecr: {
+        iamPrefix: "ecr"
+      },
+      ecs: {
+        iamPrefix: "ecs",
+        commands: [
+          "ExecuteCommand"
+        ]
+      },
+      efs: {
+        iamPrefix: "elasticfilesystem"
+      },
+      "eks-auth": {
+        iamPrefix: "eks-auth"
+      },
+      eks: {
+        iamPrefix: "eks"
+      },
+      "elastic-beanstalk": {
+        iamPrefix: "elasticbeanstalk"
+      },
+      "elastic-load-balancing-v2": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-load-balancing": {
+        iamPrefix: "elasticloadbalancing"
+      },
+      "elastic-transcoder": {
+        iamPrefix: "elastictranscoder"
+      },
+      elasticache: {
+        iamPrefix: "elasticache"
+      },
+      "elasticsearch-service": {
+        iamPrefix: "es"
+      },
+      "emr-containers": {
+        iamPrefix: "emr-containers"
+      },
+      "emr-serverless": {
+        iamPrefix: "emr-serverless"
+      },
+      emr: {
+        iamPrefix: "elasticmapreduce"
+      },
+      entityresolution: {
+        iamPrefix: "entityresolution"
+      },
+      eventbridge: {
+        iamPrefix: "events"
+      },
+      evidently: {
+        iamPrefix: "evidently"
+      },
+      "finspace-data": {
+        iamPrefix: "finspace-api"
+      },
+      finspace: {
+        iamPrefix: "finspace"
+      },
+      firehose: {
+        iamPrefix: "firehose"
+      },
+      fis: {
+        iamPrefix: "fis"
+      },
+      fms: {
+        iamPrefix: "fms"
+      },
+      forecast: {
+        iamPrefix: "forecast"
+      },
+      forecastquery: {
+        iamPrefix: "forecast"
+      },
+      frauddetector: {
+        iamPrefix: "frauddetector"
+      },
+      freetier: {
+        iamPrefix: "freetier"
+      },
+      fsx: {
+        iamPrefix: "fsx"
+      },
+      gamelift: {
+        iamPrefix: "gamelift"
+      },
+      gameliftstreams: {
+        iamPrefix: "gameliftstreams"
+      },
+      "geo-maps": {
+        iamPrefix: "geo-maps"
+      },
+      "geo-places": {
+        iamPrefix: "geo-places"
+      },
+      "geo-routes": {
+        iamPrefix: "geo-routes"
+      },
+      glacier: {
+        iamPrefix: "glacier"
+      },
+      "global-accelerator": {
+        iamPrefix: "globalaccelerator"
+      },
+      glue: {
+        iamPrefix: "glue"
+      },
+      grafana: {
+        iamPrefix: "grafana"
+      },
+      greengrass: {
+        iamPrefix: "greengrass"
+      },
+      greengrassv2: {
+        iamPrefix: "greengrass"
+      },
+      groundstation: {
+        iamPrefix: "groundstation"
+      },
+      guardduty: {
+        iamPrefix: "guardduty"
+      },
+      health: {
+        iamPrefix: "health"
+      },
+      healthlake: {
+        iamPrefix: "healthlake"
+      },
+      iam: {
+        iamPrefix: "iam"
+      },
+      identitystore: {
+        iamPrefix: "identitystore"
+      },
+      imagebuilder: {
+        iamPrefix: "imagebuilder"
+      },
+      "inspector-scan": {
+        iamPrefix: "inspector-scan"
+      },
+      inspector: {
+        iamPrefix: "inspector"
+      },
+      inspector2: {
+        iamPrefix: "inspector2"
+      },
+      internetmonitor: {
+        iamPrefix: "internetmonitor"
+      },
+      invoicing: {
+        iamPrefix: "invoicing"
+      },
+      "iot-data-plane": {
+        iamPrefix: "iotdata"
+      },
+      "iot-events-data": {
+        iamPrefix: "ioteventsdata"
+      },
+      "iot-events": {
+        iamPrefix: "iotevents"
+      },
+      "iot-jobs-data-plane": {
+        iamPrefix: "iot-jobs-data"
+      },
+      "iot-managed-integrations": {
+        iamPrefix: "iotmanagedintegrations"
+      },
+      "iot-wireless": {
+        iamPrefix: "iotwireless"
+      },
+      iot: {
+        iamPrefix: "iot",
+        commands: [
+          "CreateCommand",
+          "DeleteCommand",
+          "GetCommand",
+          "UpdateCommand"
+        ]
+      },
+      iotanalytics: {
+        iamPrefix: "iotanalytics"
+      },
+      iotdeviceadvisor: {
+        iamPrefix: "iotdeviceadvisor"
+      },
+      iotfleethub: {
+        iamPrefix: "iotfleethub"
+      },
+      iotfleetwise: {
+        iamPrefix: "iotfleetwise"
+      },
+      iotsecuretunneling: {
+        iamPrefix: "IoTSecuredTunneling"
+      },
+      iotsitewise: {
+        iamPrefix: "iotsitewise"
+      },
+      iotthingsgraph: {
+        iamPrefix: "iotthingsgraph"
+      },
+      iottwinmaker: {
+        iamPrefix: "iottwinmaker"
+      },
+      "ivs-realtime": {
+        iamPrefix: "ivs"
+      },
+      ivs: {
+        iamPrefix: "ivs"
+      },
+      ivschat: {
+        iamPrefix: "ivschat"
+      },
+      kafka: {
+        iamPrefix: "kafka"
+      },
+      kafkaconnect: {
+        iamPrefix: "kafkaconnect"
+      },
+      "kendra-ranking": {
+        iamPrefix: "kendra-ranking"
+      },
+      kendra: {
+        iamPrefix: "kendra"
+      },
+      keyspaces: {
+        iamPrefix: "cassandra"
+      },
+      "kinesis-analytics-v2": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-analytics": {
+        iamPrefix: "kinesisanalytics"
+      },
+      "kinesis-video-archived-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-media": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-signaling": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video-webrtc-storage": {
+        iamPrefix: "kinesisvideo"
+      },
+      "kinesis-video": {
+        iamPrefix: "kinesisvideo"
+      },
+      kinesis: {
+        iamPrefix: "kinesis"
+      },
+      kms: {
+        iamPrefix: "kms"
+      },
+      lakeformation: {
+        iamPrefix: "lakeformation"
+      },
+      lambda: {
+        iamPrefix: "lambda"
+      },
+      "launch-wizard": {
+        iamPrefix: "launchwizard"
+      },
+      "lex-model-building-service": {
+        iamPrefix: "lex"
+      },
+      "lex-models-v2": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-service": {
+        iamPrefix: "lex"
+      },
+      "lex-runtime-v2": {
+        iamPrefix: "lex"
+      },
+      "license-manager-linux-subscriptions": {
+        iamPrefix: "license-manager-linux-subscriptions"
+      },
+      "license-manager-user-subscriptions": {
+        iamPrefix: "license-manager-user-subscriptions"
+      },
+      "license-manager": {
+        iamPrefix: "license-manager"
+      },
+      lightsail: {
+        iamPrefix: "lightsail"
+      },
+      location: {
+        iamPrefix: "geo"
+      },
+      lookoutequipment: {
+        iamPrefix: "lookoutequipment"
+      },
+      lookoutmetrics: {
+        iamPrefix: "lookoutmetrics"
+      },
+      lookoutvision: {
+        iamPrefix: "lookoutvision"
+      },
+      m2: {
+        iamPrefix: "m2"
+      },
+      "machine-learning": {
+        iamPrefix: "machinelearning"
+      },
+      macie2: {
+        iamPrefix: "macie2"
+      },
+      mailmanager: {
+        iamPrefix: "ses"
+      },
+      "managedblockchain-query": {
+        iamPrefix: "managedblockchain-query"
+      },
+      managedblockchain: {
+        iamPrefix: "managedblockchain"
+      },
+      "marketplace-agreement": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-catalog": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-commerce-analytics": {
+        iamPrefix: "marketplacecommerceanalytics"
+      },
+      "marketplace-deployment": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-entitlement-service": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-metering": {
+        iamPrefix: "aws-marketplace"
+      },
+      "marketplace-reporting": {
+        iamPrefix: "aws-marketplace"
+      },
+      mediaconnect: {
+        iamPrefix: "mediaconnect"
+      },
+      mediaconvert: {
+        iamPrefix: "mediaconvert"
+      },
+      medialive: {
+        iamPrefix: "medialive"
+      },
+      "mediapackage-vod": {
+        iamPrefix: "mediapackage-vod"
+      },
+      mediapackage: {
+        iamPrefix: "mediapackage"
+      },
+      mediapackagev2: {
+        iamPrefix: "mediapackagev2"
+      },
+      "mediastore-data": {
+        iamPrefix: "mediastore"
+      },
+      mediastore: {
+        iamPrefix: "mediastore"
+      },
+      mediatailor: {
+        iamPrefix: "mediatailor"
+      },
+      "medical-imaging": {
+        iamPrefix: "medical-imaging"
+      },
+      memorydb: {
+        iamPrefix: "memorydb"
+      },
+      mgn: {
+        iamPrefix: "mgn"
+      },
+      "migration-hub-refactor-spaces": {
+        iamPrefix: "refactor-spaces"
+      },
+      "migration-hub": {
+        iamPrefix: "mgh"
+      },
+      "migrationhub-config": {
+        iamPrefix: "mgh"
+      },
+      migrationhuborchestrator: {
+        iamPrefix: "migrationhub-orchestrator"
+      },
+      migrationhubstrategy: {
+        iamPrefix: "migrationhub-strategy"
+      },
+      mq: {
+        iamPrefix: "mq"
+      },
+      mturk: {
+        iamPrefix: "mturk-requester"
+      },
+      mwaa: {
+        iamPrefix: "airflow"
+      },
+      "neptune-graph": {
+        iamPrefix: "neptune-graph"
+      },
+      neptune: {
+        iamPrefix: "rds"
+      },
+      neptunedata: {
+        iamPrefix: "neptune-db"
+      },
+      "network-firewall": {
+        iamPrefix: "network-firewall"
+      },
+      networkflowmonitor: {
+        iamPrefix: "networkflowmonitor"
+      },
+      networkmanager: {
+        iamPrefix: "networkmanager"
+      },
+      networkmonitor: {
+        iamPrefix: "networkmonitor"
+      },
+      notifications: {
+        iamPrefix: "notifications"
+      },
+      notificationscontacts: {
+        iamPrefix: "notifications-contacts"
+      },
+      oam: {
+        iamPrefix: "oam"
+      },
+      observabilityadmin: {
+        iamPrefix: "observabilityadmin"
+      },
+      omics: {
+        iamPrefix: "omics"
+      },
+      opensearch: {
+        iamPrefix: "es"
+      },
+      opensearchserverless: {
+        iamPrefix: "aoss"
+      },
+      opsworks: {
+        iamPrefix: "opsworks"
+      },
+      opsworkscm: {
+        iamPrefix: "opsworks-cm"
+      },
+      organizations: {
+        iamPrefix: "organizations"
+      },
+      osis: {
+        iamPrefix: "osis"
+      },
+      outposts: {
+        iamPrefix: "outposts"
+      },
+      panorama: {
+        iamPrefix: "panorama"
+      },
+      "partnercentral-selling": {
+        iamPrefix: "partnercentral-selling"
+      },
+      "payment-cryptography-data": {
+        iamPrefix: "payment-cryptography"
+      },
+      "payment-cryptography": {
+        iamPrefix: "payment-cryptography"
+      },
+      "pca-connector-ad": {
+        iamPrefix: "pca-connector-ad"
+      },
+      "pca-connector-scep": {
+        iamPrefix: "pca-connector-scep"
+      },
+      pcs: {
+        iamPrefix: "pcs"
+      },
+      "personalize-events": {
+        iamPrefix: "personalize"
+      },
+      "personalize-runtime": {
+        iamPrefix: "personalize"
+      },
+      personalize: {
+        iamPrefix: "personalize"
+      },
+      pi: {
+        iamPrefix: "pi"
+      },
+      "pinpoint-email": {
+        iamPrefix: "ses"
+      },
+      "pinpoint-sms-voice-v2": {
+        iamPrefix: "sms-voice"
+      },
+      "pinpoint-sms-voice": {
+        iamPrefix: "sms-voice"
+      },
+      pinpoint: {
+        iamPrefix: "mobiletargeting"
+      },
+      pipes: {
+        iamPrefix: "pipes"
+      },
+      polly: {
+        iamPrefix: "polly"
+      },
+      pricing: {
+        iamPrefix: "pricing"
+      },
+      proton: {
+        iamPrefix: "proton"
+      },
+      qapps: {
+        iamPrefix: "qapps"
+      },
+      qbusiness: {
+        iamPrefix: "qbusiness"
+      },
+      qconnect: {
+        iamPrefix: "wisdom"
+      },
+      "qldb-session": {
+        iamPrefix: "qldb",
+        commands: [
+          "SendCommand"
+        ]
+      },
+      qldb: {
+        iamPrefix: "qldb"
+      },
+      quicksight: {
+        iamPrefix: "quicksight"
+      },
+      ram: {
+        iamPrefix: "ram"
+      },
+      rbin: {
+        iamPrefix: "rbin"
+      },
+      "rds-data": {
+        iamPrefix: "rds-data"
+      },
+      rds: {
+        iamPrefix: "rds"
+      },
+      "redshift-data": {
+        iamPrefix: "redshift-data"
+      },
+      "redshift-serverless": {
+        iamPrefix: "redshift-serverless"
+      },
+      redshift: {
+        iamPrefix: "redshift"
+      },
+      rekognition: {
+        iamPrefix: "rekognition"
+      },
+      rekognitionstreaming: {
+        iamPrefix: "rekognition"
+      },
+      repostspace: {
+        iamPrefix: "repostspace"
+      },
+      resiliencehub: {
+        iamPrefix: "resiliencehub"
+      },
+      "resource-explorer-2": {
+        iamPrefix: "resource-explorer-2"
+      },
+      "resource-groups-tagging-api": {
+        iamPrefix: "tagging"
+      },
+      "resource-groups": {
+        iamPrefix: "resource-groups"
+      },
+      robomaker: {
+        iamPrefix: "robomaker"
+      },
+      rolesanywhere: {
+        iamPrefix: "rolesanywhere"
+      },
+      "route-53-domains": {
+        iamPrefix: "route53domains"
+      },
+      "route-53": {
+        iamPrefix: "route53"
+      },
+      "route53-recovery-cluster": {
+        iamPrefix: "route53-recovery-cluster"
+      },
+      "route53-recovery-control-config": {
+        iamPrefix: "route53-recovery-control-config"
+      },
+      "route53-recovery-readiness": {
+        iamPrefix: "route53-recovery-readiness"
+      },
+      route53profiles: {
+        iamPrefix: "route53profiles"
+      },
+      route53resolver: {
+        iamPrefix: "route53resolver"
+      },
+      rum: {
+        iamPrefix: "rum"
+      },
+      "s3-control": {
+        iamPrefix: "s3"
+      },
+      s3: {
+        iamPrefix: "s3"
+      },
+      s3outposts: {
+        iamPrefix: "s3-outposts"
+      },
+      s3tables: {
+        iamPrefix: "s3tables"
+      },
+      "sagemaker-a2i-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-edge": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-featurestore-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-geospatial": {
+        iamPrefix: "sagemaker-geospatial"
+      },
+      "sagemaker-metrics": {
+        iamPrefix: "sagemaker"
+      },
+      "sagemaker-runtime": {
+        iamPrefix: "sagemaker"
+      },
+      sagemaker: {
+        iamPrefix: "sagemaker"
+      },
+      savingsplans: {
+        iamPrefix: "savingsplans"
+      },
+      scheduler: {
+        iamPrefix: "scheduler"
+      },
+      schemas: {
+        iamPrefix: "schemas"
+      },
+      "secrets-manager": {
+        iamPrefix: "secretsmanager"
+      },
+      "security-ir": {
+        iamPrefix: "security-ir"
+      },
+      securityhub: {
+        iamPrefix: "securityhub"
+      },
+      securitylake: {
+        iamPrefix: "securitylake"
+      },
+      serverlessapplicationrepository: {
+        iamPrefix: "serverlessrepo"
+      },
+      "service-catalog-appregistry": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-catalog": {
+        iamPrefix: "servicecatalog"
+      },
+      "service-quotas": {
+        iamPrefix: "servicequotas"
+      },
+      servicediscovery: {
+        iamPrefix: "servicediscovery"
+      },
+      ses: {
+        iamPrefix: "ses"
+      },
+      sesv2: {
+        iamPrefix: "ses"
+      },
+      sfn: {
+        iamPrefix: "states"
+      },
+      shield: {
+        iamPrefix: "shield"
+      },
+      signer: {
+        iamPrefix: "signer"
+      },
+      simspaceweaver: {
+        iamPrefix: "simspaceweaver"
+      },
+      sms: {
+        iamPrefix: "sms"
+      },
+      "snow-device-management": {
+        iamPrefix: "snow-device-management"
+      },
+      snowball: {
+        iamPrefix: "snowball"
+      },
+      sns: {
+        iamPrefix: "sns"
+      },
+      socialmessaging: {
+        iamPrefix: "social-messaging"
+      },
+      sqs: {
+        iamPrefix: "sqs"
+      },
+      "ssm-contacts": {
+        iamPrefix: "ssm-contacts"
+      },
+      "ssm-guiconnect": {
+        iamPrefix: "ssm-guiconnect"
+      },
+      "ssm-incidents": {
+        iamPrefix: "ssm-incidents"
+      },
+      "ssm-quicksetup": {
+        iamPrefix: "ssm-quicksetup"
+      },
+      "ssm-sap": {
+        iamPrefix: "ssm-sap"
+      },
+      ssm: {
+        iamPrefix: "ssm",
+        commands: [
+          "CancelCommand",
+          "SendCommand"
+        ]
+      },
+      "sso-admin": {
+        iamPrefix: "sso"
+      },
+      "sso-oidc": {
+        iamPrefix: "sso-oauth"
+      },
+      sso: {
+        iamPrefix: "awsssoportal"
+      },
+      "storage-gateway": {
+        iamPrefix: "storagegateway"
+      },
+      sts: {
+        iamPrefix: "sts"
+      },
+      supplychain: {
+        iamPrefix: "scn"
+      },
+      "support-app": {
+        iamPrefix: "supportapp"
+      },
+      support: {
+        iamPrefix: "support"
+      },
+      swf: {
+        iamPrefix: "swf"
+      },
+      synthetics: {
+        iamPrefix: "synthetics"
+      },
+      taxsettings: {
+        iamPrefix: "tax"
+      },
+      textract: {
+        iamPrefix: "textract"
+      },
+      "timestream-influxdb": {
+        iamPrefix: "timestream-influxdb"
+      },
+      "timestream-query": {
+        iamPrefix: "timestream"
+      },
+      "timestream-write": {
+        iamPrefix: "timestream"
+      },
+      tnb: {
+        iamPrefix: "tnb"
+      },
+      "transcribe-streaming": {
+        iamPrefix: "transcribe"
+      },
+      transcribe: {
+        iamPrefix: "transcribe"
+      },
+      transfer: {
+        iamPrefix: "transfer"
+      },
+      translate: {
+        iamPrefix: "translate"
+      },
+      trustedadvisor: {
+        iamPrefix: "trustedadvisor"
+      },
+      verifiedpermissions: {
+        iamPrefix: "verifiedpermissions"
+      },
+      "voice-id": {
+        iamPrefix: "voiceid"
+      },
+      "vpc-lattice": {
+        iamPrefix: "vpc-lattice"
+      },
+      "waf-regional": {
+        iamPrefix: "waf-regional"
+      },
+      waf: {
+        iamPrefix: "waf"
+      },
+      wafv2: {
+        iamPrefix: "wafv2"
+      },
+      wellarchitected: {
+        iamPrefix: "wellarchitected"
+      },
+      wisdom: {
+        iamPrefix: "wisdom"
+      },
+      workdocs: {
+        iamPrefix: "workdocs"
+      },
+      workmail: {
+        iamPrefix: "workmail"
+      },
+      workmailmessageflow: {
+        iamPrefix: "workmailmessageflow"
+      },
+      "workspaces-thin-client": {
+        iamPrefix: "thinclient"
+      },
+      "workspaces-web": {
+        iamPrefix: "workspaces-web"
+      },
+      workspaces: {
+        iamPrefix: "workspaces"
+      },
+      xray: {
+        iamPrefix: "xray"
+      }
+    };
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/sdk-info.ts
+var sdk_info_exports = {};
+__export(sdk_info_exports, {
+  normalizeActionName: () => normalizeActionName,
+  normalizeServiceName: () => normalizeServiceName
+});
+function normalizeServiceName(service) {
+  service = service.toLowerCase();
+  service = service.replace(/^@aws-sdk\/client-/, "");
+  service = v2ToV3Mapping()?.[service] ?? service;
+  return service;
+}
+function normalizeActionName(v3Service, action) {
+  if (action.charAt(0).toLowerCase() === action.charAt(0)) {
+    return action.charAt(0).toUpperCase() + action.slice(1);
+  }
+  if (v3Metadata()[v3Service]?.commands?.includes(action)) {
+    return action;
+  }
+  return action.replace(/Command$/, "");
+}
+function v2ToV3Mapping() {
+  return require_sdk_v2_to_v3();
+}
+function v3Metadata() {
+  return require_sdk_v3_metadata();
+}
+var init_sdk_info = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/sdk-info.ts"() {
+    "use strict";
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/api-call.ts
+var api_call_exports = {};
+__export(api_call_exports, {
+  ApiCall: () => ApiCall,
+  coerceSdkv3Response: () => coerceSdkv3Response,
+  flatten: () => flatten2
+});
+function flatten2(root) {
+  const ret = {};
+  recurse(root);
+  return ret;
+  function recurse(x, path23 = []) {
+    if (x && typeof x === "object") {
+      for (const [key, value] of Object.entries(x)) {
+        recurse(value, [...path23, key]);
+      }
+      return;
+    }
+    ret[path23.join(".")] = x;
+  }
+}
+async function coerceSdkv3Response(value) {
+  if (value && typeof value === "object" && typeof value.transformToString === "function") {
+    return value.transformToString();
+  }
+  if (Buffer.isBuffer(value)) {
+    return value.toString("utf8");
+  }
+  if (ArrayBuffer.isView(value)) {
+    return decoder.decode(value.buffer);
+  }
+  if (Array.isArray(value)) {
+    const ret = [];
+    for (const x of value) {
+      ret.push(await coerceSdkv3Response(x));
+    }
+    return ret;
+  }
+  if (value && typeof value === "object") {
+    for (const key of Object.keys(value)) {
+      value[key] = await coerceSdkv3Response(value[key]);
+    }
+    return value;
+  }
+  return value;
+}
+var ApiCall, decoder;
+var init_api_call = __esm({
+  "../aws-custom-resource-sdk-adapter/lib/api-call.ts"() {
+    "use strict";
+    init_coerce_api_parameters();
+    init_find_client_constructor();
+    init_sdk_info();
+    ApiCall = class {
+      service;
+      action;
+      v3PackageName;
+      v3Package;
+      // For testing purposes
+      client;
+      // For testing purposes
+      constructor(service, action) {
+        this.service = normalizeServiceName(service);
+        this.action = normalizeActionName(this.service, action);
+        this.v3PackageName = `@aws-sdk/client-${this.service}`;
+      }
+      async invoke(options) {
+        this.initializePackage(options.sdkPackage);
+        this.initializeClient(options);
+        const Command = this.findCommandClass();
+        const response = await this.client.send(
+          new Command(coerceApiParameters(this.service, this.action, options.parameters ?? {}))
+        );
+        delete response.$metadata;
+        const coerced = await coerceSdkv3Response(response);
+        return options.flattenResponse ? flatten2(coerced) : coerced;
+      }
+      initializePackage(packageOverride) {
+        if (this.v3Package) {
+          return;
+        }
+        if (packageOverride) {
+          this.v3Package = packageOverride;
+          return;
+        }
+        try {
+          this.v3Package = require(this.v3PackageName);
+        } catch (e) {
+          throw Error(`Service ${this.service} client package with name '${this.v3PackageName}' does not exist.`);
+        }
+      }
+      initializeClient(options) {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const ServiceClient = this.findConstructor(this.v3Package);
+        this.client = new ServiceClient({
+          apiVersion: options.apiVersion,
+          credentials: options.credentials,
+          region: options.region
+        });
+        return this.client;
+      }
+      findCommandClass() {
+        if (!this.v3Package) {
+          this.initializePackage();
+        }
+        const commandName = `${this.action}Command`;
+        const Command = Object.entries(this.v3Package ?? {}).find(
+          ([name]) => name.toLowerCase() === commandName.toLowerCase()
+        )?.[1];
+        if (!Command) {
+          throw new Error(`Unable to find command named: ${commandName} for action: ${this.action} in service package ${this.v3PackageName}`);
+        }
+        return Command;
+      }
+      findConstructor(pkg) {
+        try {
+          const ret = findV3ClientConstructor(pkg);
+          if (!ret) {
+            throw new Error("findV3ClientConstructor returned undefined");
+          }
+          return ret;
+        } catch (e) {
+          console.error(e);
+          throw Error(`No client constructor found within package: ${this.v3PackageName}`);
+        }
+      }
+    };
+    decoder = new TextDecoder();
+  }
+});
+
+// ../aws-custom-resource-sdk-adapter/lib/index.js
+var require_lib6 = __commonJS({
+  "../aws-custom-resource-sdk-adapter/lib/index.js"(exports2) {
+    "use strict";
+    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      var desc = Object.getOwnPropertyDescriptor(m, k);
+      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+        desc = { enumerable: true, get: function() {
+          return m[k];
+        } };
+      }
+      Object.defineProperty(o, k2, desc);
+    }) : (function(o, m, k, k2) {
+      if (k2 === void 0) k2 = k;
+      o[k2] = m[k];
+    }));
+    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
+      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
+    };
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.normalizeActionName = exports2.normalizeServiceName = exports2.findV3ClientConstructor = exports2.coerceApiParameters = void 0;
+    var coerce_api_parameters_1 = (init_coerce_api_parameters(), __toCommonJS(coerce_api_parameters_exports));
+    Object.defineProperty(exports2, "coerceApiParameters", { enumerable: true, get: function() {
+      return coerce_api_parameters_1.coerceApiParameters;
+    } });
+    var find_client_constructor_1 = (init_find_client_constructor(), __toCommonJS(find_client_constructor_exports));
+    Object.defineProperty(exports2, "findV3ClientConstructor", { enumerable: true, get: function() {
+      return find_client_constructor_1.findV3ClientConstructor;
+    } });
+    var sdk_info_1 = (init_sdk_info(), __toCommonJS(sdk_info_exports));
+    Object.defineProperty(exports2, "normalizeServiceName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeServiceName;
+    } });
+    Object.defineProperty(exports2, "normalizeActionName", { enumerable: true, get: function() {
+      return sdk_info_1.normalizeActionName;
+    } });
+    __exportStar2((init_api_call(), __toCommonJS(api_call_exports)), exports2);
+  }
+});
+
+// ../../../node_modules/webidl-conversions/lib/index.js
+var require_lib7 = __commonJS({
+  "../../../node_modules/webidl-conversions/lib/index.js"(exports2, module2) {
+    "use strict";
+    var conversions = {};
+    module2.exports = conversions;
+    function sign(x) {
+      return x < 0 ? -1 : 1;
+    }
+    function evenRound(x) {
+      if (x % 1 === 0.5 && (x & 1) === 0) {
+        return Math.floor(x);
+      } else {
+        return Math.round(x);
+      }
+    }
+    function createNumberConversion(bitLength, typeOpts) {
+      if (!typeOpts.unsigned) {
+        --bitLength;
+      }
+      const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength);
+      const upperBound = Math.pow(2, bitLength) - 1;
+      const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength);
+      const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1);
+      return function(V, opts) {
+        if (!opts) opts = {};
+        let x = +V;
+        if (opts.enforceRange) {
+          if (!Number.isFinite(x)) {
+            throw new TypeError("Argument is not a finite number");
+          }
+          x = sign(x) * Math.floor(Math.abs(x));
+          if (x < lowerBound || x > upperBound) {
+            throw new TypeError("Argument is not in byte range");
+          }
+          return x;
+        }
+        if (!isNaN(x) && opts.clamp) {
+          x = evenRound(x);
+          if (x < lowerBound) x = lowerBound;
+          if (x > upperBound) x = upperBound;
+          return x;
+        }
+        if (!Number.isFinite(x) || x === 0) {
+          return 0;
+        }
+        x = sign(x) * Math.floor(Math.abs(x));
+        x = x % moduloVal;
+        if (!typeOpts.unsigned && x >= moduloBound) {
+          return x - moduloVal;
+        } else if (typeOpts.unsigned) {
+          if (x < 0) {
+            x += moduloVal;
+          } else if (x === -0) {
+            return 0;
+          }
+        }
+        return x;
+      };
+    }
+    conversions["void"] = function() {
+      return void 0;
+    };
+    conversions["boolean"] = function(val2) {
+      return !!val2;
+    };
+    conversions["byte"] = createNumberConversion(8, { unsigned: false });
+    conversions["octet"] = createNumberConversion(8, { unsigned: true });
+    conversions["short"] = createNumberConversion(16, { unsigned: false });
+    conversions["unsigned short"] = createNumberConversion(16, { unsigned: true });
+    conversions["long"] = createNumberConversion(32, { unsigned: false });
+    conversions["unsigned long"] = createNumberConversion(32, { unsigned: true });
+    conversions["long long"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 });
+    conversions["unsigned long long"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 });
+    conversions["double"] = function(V) {
+      const x = +V;
+      if (!Number.isFinite(x)) {
+        throw new TypeError("Argument is not a finite floating-point value");
+      }
+      return x;
+    };
+    conversions["unrestricted double"] = function(V) {
+      const x = +V;
+      if (isNaN(x)) {
+        throw new TypeError("Argument is NaN");
+      }
+      return x;
+    };
+    conversions["float"] = conversions["double"];
+    conversions["unrestricted float"] = conversions["unrestricted double"];
+    conversions["DOMString"] = function(V, opts) {
+      if (!opts) opts = {};
+      if (opts.treatNullAsEmptyString && V === null) {
+        return "";
+      }
+      return String(V);
+    };
+    conversions["ByteString"] = function(V, opts) {
+      const x = String(V);
+      let c = void 0;
+      for (let i = 0; (c = x.codePointAt(i)) !== void 0; ++i) {
+        if (c > 255) {
+          throw new TypeError("Argument is not a valid bytestring");
+        }
+      }
+      return x;
+    };
+    conversions["USVString"] = function(V) {
+      const S = String(V);
+      const n = S.length;
+      const U = [];
+      for (let i = 0; i < n; ++i) {
+        const c = S.charCodeAt(i);
+        if (c < 55296 || c > 57343) {
+          U.push(String.fromCodePoint(c));
+        } else if (56320 <= c && c <= 57343) {
+          U.push(String.fromCodePoint(65533));
+        } else {
+          if (i === n - 1) {
+            U.push(String.fromCodePoint(65533));
+          } else {
+            const d = S.charCodeAt(i + 1);
+            if (56320 <= d && d <= 57343) {
+              const a = c & 1023;
+              const b = d & 1023;
+              U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b));
+              ++i;
+            } else {
+              U.push(String.fromCodePoint(65533));
+            }
+          }
+        }
+      }
+      return U.join("");
+    };
+    conversions["Date"] = function(V, opts) {
+      if (!(V instanceof Date)) {
+        throw new TypeError("Argument is not a Date object");
+      }
+      if (isNaN(V)) {
+        return void 0;
+      }
+      return V;
+    };
+    conversions["RegExp"] = function(V, opts) {
+      if (!(V instanceof RegExp)) {
+        V = new RegExp(V);
+      }
+      return V;
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/utils.js
+var require_utils3 = __commonJS({
+  "../../../node_modules/whatwg-url/lib/utils.js"(exports2, module2) {
+    "use strict";
+    module2.exports.mixin = function mixin(target, source) {
+      const keys = Object.getOwnPropertyNames(source);
+      for (let i = 0; i < keys.length; ++i) {
+        Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));
+      }
+    };
+    module2.exports.wrapperSymbol = /* @__PURE__ */ Symbol("wrapper");
+    module2.exports.implSymbol = /* @__PURE__ */ Symbol("impl");
+    module2.exports.wrapperForImpl = function(impl) {
+      return impl[module2.exports.wrapperSymbol];
+    };
+    module2.exports.implForWrapper = function(wrapper) {
+      return wrapper[module2.exports.implSymbol];
+    };
+  }
+});
+
+// ../../../node_modules/tr46/lib/mappingTable.json
+var require_mappingTable = __commonJS({
+  "../../../node_modules/tr46/lib/mappingTable.json"(exports2, module2) {
+    module2.exports = [[[0, 44], "disallowed_STD3_valid"], [[45, 46], "valid"], [[47, 47], "disallowed_STD3_valid"], [[48, 57], "valid"], [[58, 64], "disallowed_STD3_valid"], [[65, 65], "mapped", [97]], [[66, 66], "mapped", [98]], [[67, 67], "mapped", [99]], [[68, 68], "mapped", [100]], [[69, 69], "mapped", [101]], [[70, 70], "mapped", [102]], [[71, 71], "mapped", [103]], [[72, 72], "mapped", [104]], [[73, 73], "mapped", [105]], [[74, 74], "mapped", [106]], [[75, 75], "mapped", [107]], [[76, 76], "mapped", [108]], [[77, 77], "mapped", [109]], [[78, 78], "mapped", [110]], [[79, 79], "mapped", [111]], [[80, 80], "mapped", [112]], [[81, 81], "mapped", [113]], [[82, 82], "mapped", [114]], [[83, 83], "mapped", [115]], [[84, 84], "mapped", [116]], [[85, 85], "mapped", [117]], [[86, 86], "mapped", [118]], [[87, 87], "mapped", [119]], [[88, 88], "mapped", [120]], [[89, 89], "mapped", [121]], [[90, 90], "mapped", [122]], [[91, 96], "disallowed_STD3_valid"], [[97, 122], "valid"], [[123, 127], "disallowed_STD3_valid"], [[128, 159], "disallowed"], [[160, 160], "disallowed_STD3_mapped", [32]], [[161, 167], "valid", [], "NV8"], [[168, 168], "disallowed_STD3_mapped", [32, 776]], [[169, 169], "valid", [], "NV8"], [[170, 170], "mapped", [97]], [[171, 172], "valid", [], "NV8"], [[173, 173], "ignored"], [[174, 174], "valid", [], "NV8"], [[175, 175], "disallowed_STD3_mapped", [32, 772]], [[176, 177], "valid", [], "NV8"], [[178, 178], "mapped", [50]], [[179, 179], "mapped", [51]], [[180, 180], "disallowed_STD3_mapped", [32, 769]], [[181, 181], "mapped", [956]], [[182, 182], "valid", [], "NV8"], [[183, 183], "valid"], [[184, 184], "disallowed_STD3_mapped", [32, 807]], [[185, 185], "mapped", [49]], [[186, 186], "mapped", [111]], [[187, 187], "valid", [], "NV8"], [[188, 188], "mapped", [49, 8260, 52]], [[189, 189], "mapped", [49, 8260, 50]], [[190, 190], "mapped", [51, 8260, 52]], [[191, 191], "valid", [], "NV8"], [[192, 192], "mapped", [224]], [[193, 193], "mapped", [225]], [[194, 194], "mapped", [226]], [[195, 195], "mapped", [227]], [[196, 196], "mapped", [228]], [[197, 197], "mapped", [229]], [[198, 198], "mapped", [230]], [[199, 199], "mapped", [231]], [[200, 200], "mapped", [232]], [[201, 201], "mapped", [233]], [[202, 202], "mapped", [234]], [[203, 203], "mapped", [235]], [[204, 204], "mapped", [236]], [[205, 205], "mapped", [237]], [[206, 206], "mapped", [238]], [[207, 207], "mapped", [239]], [[208, 208], "mapped", [240]], [[209, 209], "mapped", [241]], [[210, 210], "mapped", [242]], [[211, 211], "mapped", [243]], [[212, 212], "mapped", [244]], [[213, 213], "mapped", [245]], [[214, 214], "mapped", [246]], [[215, 215], "valid", [], "NV8"], [[216, 216], "mapped", [248]], [[217, 217], "mapped", [249]], [[218, 218], "mapped", [250]], [[219, 219], "mapped", [251]], [[220, 220], "mapped", [252]], [[221, 221], "mapped", [253]], [[222, 222], "mapped", [254]], [[223, 223], "deviation", [115, 115]], [[224, 246], "valid"], [[247, 247], "valid", [], "NV8"], [[248, 255], "valid"], [[256, 256], "mapped", [257]], [[257, 257], "valid"], [[258, 258], "mapped", [259]], [[259, 259], "valid"], [[260, 260], "mapped", [261]], [[261, 261], "valid"], [[262, 262], "mapped", [263]], [[263, 263], "valid"], [[264, 264], "mapped", [265]], [[265, 265], "valid"], [[266, 266], "mapped", [267]], [[267, 267], "valid"], [[268, 268], "mapped", [269]], [[269, 269], "valid"], [[270, 270], "mapped", [271]], [[271, 271], "valid"], [[272, 272], "mapped", [273]], [[273, 273], "valid"], [[274, 274], "mapped", [275]], [[275, 275], "valid"], [[276, 276], "mapped", [277]], [[277, 277], "valid"], [[278, 278], "mapped", [279]], [[279, 279], "valid"], [[280, 280], "mapped", [281]], [[281, 281], "valid"], [[282, 282], "mapped", [283]], [[283, 283], "valid"], [[284, 284], "mapped", [285]], [[285, 285], "valid"], [[286, 286], "mapped", [287]], [[287, 287], "valid"], [[288, 288], "mapped", [289]], [[289, 289], "valid"], [[290, 290], "mapped", [291]], [[291, 291], "valid"], [[292, 292], "mapped", [293]], [[293, 293], "valid"], [[294, 294], "mapped", [295]], [[295, 295], "valid"], [[296, 296], "mapped", [297]], [[297, 297], "valid"], [[298, 298], "mapped", [299]], [[299, 299], "valid"], [[300, 300], "mapped", [301]], [[301, 301], "valid"], [[302, 302], "mapped", [303]], [[303, 303], "valid"], [[304, 304], "mapped", [105, 775]], [[305, 305], "valid"], [[306, 307], "mapped", [105, 106]], [[308, 308], "mapped", [309]], [[309, 309], "valid"], [[310, 310], "mapped", [311]], [[311, 312], "valid"], [[313, 313], "mapped", [314]], [[314, 314], "valid"], [[315, 315], "mapped", [316]], [[316, 316], "valid"], [[317, 317], "mapped", [318]], [[318, 318], "valid"], [[319, 320], "mapped", [108, 183]], [[321, 321], "mapped", [322]], [[322, 322], "valid"], [[323, 323], "mapped", [324]], [[324, 324], "valid"], [[325, 325], "mapped", [326]], [[326, 326], "valid"], [[327, 327], "mapped", [328]], [[328, 328], "valid"], [[329, 329], "mapped", [700, 110]], [[330, 330], "mapped", [331]], [[331, 331], "valid"], [[332, 332], "mapped", [333]], [[333, 333], "valid"], [[334, 334], "mapped", [335]], [[335, 335], "valid"], [[336, 336], "mapped", [337]], [[337, 337], "valid"], [[338, 338], "mapped", [339]], [[339, 339], "valid"], [[340, 340], "mapped", [341]], [[341, 341], "valid"], [[342, 342], "mapped", [343]], [[343, 343], "valid"], [[344, 344], "mapped", [345]], [[345, 345], "valid"], [[346, 346], "mapped", [347]], [[347, 347], "valid"], [[348, 348], "mapped", [349]], [[349, 349], "valid"], [[350, 350], "mapped", [351]], [[351, 351], "valid"], [[352, 352], "mapped", [353]], [[353, 353], "valid"], [[354, 354], "mapped", [355]], [[355, 355], "valid"], [[356, 356], "mapped", [357]], [[357, 357], "valid"], [[358, 358], "mapped", [359]], [[359, 359], "valid"], [[360, 360], "mapped", [361]], [[361, 361], "valid"], [[362, 362], "mapped", [363]], [[363, 363], "valid"], [[364, 364], "mapped", [365]], [[365, 365], "valid"], [[366, 366], "mapped", [367]], [[367, 367], "valid"], [[368, 368], "mapped", [369]], [[369, 369], "valid"], [[370, 370], "mapped", [371]], [[371, 371], "valid"], [[372, 372], "mapped", [373]], [[373, 373], "valid"], [[374, 374], "mapped", [375]], [[375, 375], "valid"], [[376, 376], "mapped", [255]], [[377, 377], "mapped", [378]], [[378, 378], "valid"], [[379, 379], "mapped", [380]], [[380, 380], "valid"], [[381, 381], "mapped", [382]], [[382, 382], "valid"], [[383, 383], "mapped", [115]], [[384, 384], "valid"], [[385, 385], "mapped", [595]], [[386, 386], "mapped", [387]], [[387, 387], "valid"], [[388, 388], "mapped", [389]], [[389, 389], "valid"], [[390, 390], "mapped", [596]], [[391, 391], "mapped", [392]], [[392, 392], "valid"], [[393, 393], "mapped", [598]], [[394, 394], "mapped", [599]], [[395, 395], "mapped", [396]], [[396, 397], "valid"], [[398, 398], "mapped", [477]], [[399, 399], "mapped", [601]], [[400, 400], "mapped", [603]], [[401, 401], "mapped", [402]], [[402, 402], "valid"], [[403, 403], "mapped", [608]], [[404, 404], "mapped", [611]], [[405, 405], "valid"], [[406, 406], "mapped", [617]], [[407, 407], "mapped", [616]], [[408, 408], "mapped", [409]], [[409, 411], "valid"], [[412, 412], "mapped", [623]], [[413, 413], "mapped", [626]], [[414, 414], "valid"], [[415, 415], "mapped", [629]], [[416, 416], "mapped", [417]], [[417, 417], "valid"], [[418, 418], "mapped", [419]], [[419, 419], "valid"], [[420, 420], "mapped", [421]], [[421, 421], "valid"], [[422, 422], "mapped", [640]], [[423, 423], "mapped", [424]], [[424, 424], "valid"], [[425, 425], "mapped", [643]], [[426, 427], "valid"], [[428, 428], "mapped", [429]], [[429, 429], "valid"], [[430, 430], "mapped", [648]], [[431, 431], "mapped", [432]], [[432, 432], "valid"], [[433, 433], "mapped", [650]], [[434, 434], "mapped", [651]], [[435, 435], "mapped", [436]], [[436, 436], "valid"], [[437, 437], "mapped", [438]], [[438, 438], "valid"], [[439, 439], "mapped", [658]], [[440, 440], "mapped", [441]], [[441, 443], "valid"], [[444, 444], "mapped", [445]], [[445, 451], "valid"], [[452, 454], "mapped", [100, 382]], [[455, 457], "mapped", [108, 106]], [[458, 460], "mapped", [110, 106]], [[461, 461], "mapped", [462]], [[462, 462], "valid"], [[463, 463], "mapped", [464]], [[464, 464], "valid"], [[465, 465], "mapped", [466]], [[466, 466], "valid"], [[467, 467], "mapped", [468]], [[468, 468], "valid"], [[469, 469], "mapped", [470]], [[470, 470], "valid"], [[471, 471], "mapped", [472]], [[472, 472], "valid"], [[473, 473], "mapped", [474]], [[474, 474], "valid"], [[475, 475], "mapped", [476]], [[476, 477], "valid"], [[478, 478], "mapped", [479]], [[479, 479], "valid"], [[480, 480], "mapped", [481]], [[481, 481], "valid"], [[482, 482], "mapped", [483]], [[483, 483], "valid"], [[484, 484], "mapped", [485]], [[485, 485], "valid"], [[486, 486], "mapped", [487]], [[487, 487], "valid"], [[488, 488], "mapped", [489]], [[489, 489], "valid"], [[490, 490], "mapped", [491]], [[491, 491], "valid"], [[492, 492], "mapped", [493]], [[493, 493], "valid"], [[494, 494], "mapped", [495]], [[495, 496], "valid"], [[497, 499], "mapped", [100, 122]], [[500, 500], "mapped", [501]], [[501, 501], "valid"], [[502, 502], "mapped", [405]], [[503, 503], "mapped", [447]], [[504, 504], "mapped", [505]], [[505, 505], "valid"], [[506, 506], "mapped", [507]], [[507, 507], "valid"], [[508, 508], "mapped", [509]], [[509, 509], "valid"], [[510, 510], "mapped", [511]], [[511, 511], "valid"], [[512, 512], "mapped", [513]], [[513, 513], "valid"], [[514, 514], "mapped", [515]], [[515, 515], "valid"], [[516, 516], "mapped", [517]], [[517, 517], "valid"], [[518, 518], "mapped", [519]], [[519, 519], "valid"], [[520, 520], "mapped", [521]], [[521, 521], "valid"], [[522, 522], "mapped", [523]], [[523, 523], "valid"], [[524, 524], "mapped", [525]], [[525, 525], "valid"], [[526, 526], "mapped", [527]], [[527, 527], "valid"], [[528, 528], "mapped", [529]], [[529, 529], "valid"], [[530, 530], "mapped", [531]], [[531, 531], "valid"], [[532, 532], "mapped", [533]], [[533, 533], "valid"], [[534, 534], "mapped", [535]], [[535, 535], "valid"], [[536, 536], "mapped", [537]], [[537, 537], "valid"], [[538, 538], "mapped", [539]], [[539, 539], "valid"], [[540, 540], "mapped", [541]], [[541, 541], "valid"], [[542, 542], "mapped", [543]], [[543, 543], "valid"], [[544, 544], "mapped", [414]], [[545, 545], "valid"], [[546, 546], "mapped", [547]], [[547, 547], "valid"], [[548, 548], "mapped", [549]], [[549, 549], "valid"], [[550, 550], "mapped", [551]], [[551, 551], "valid"], [[552, 552], "mapped", [553]], [[553, 553], "valid"], [[554, 554], "mapped", [555]], [[555, 555], "valid"], [[556, 556], "mapped", [557]], [[557, 557], "valid"], [[558, 558], "mapped", [559]], [[559, 559], "valid"], [[560, 560], "mapped", [561]], [[561, 561], "valid"], [[562, 562], "mapped", [563]], [[563, 563], "valid"], [[564, 566], "valid"], [[567, 569], "valid"], [[570, 570], "mapped", [11365]], [[571, 571], "mapped", [572]], [[572, 572], "valid"], [[573, 573], "mapped", [410]], [[574, 574], "mapped", [11366]], [[575, 576], "valid"], [[577, 577], "mapped", [578]], [[578, 578], "valid"], [[579, 579], "mapped", [384]], [[580, 580], "mapped", [649]], [[581, 581], "mapped", [652]], [[582, 582], "mapped", [583]], [[583, 583], "valid"], [[584, 584], "mapped", [585]], [[585, 585], "valid"], [[586, 586], "mapped", [587]], [[587, 587], "valid"], [[588, 588], "mapped", [589]], [[589, 589], "valid"], [[590, 590], "mapped", [591]], [[591, 591], "valid"], [[592, 680], "valid"], [[681, 685], "valid"], [[686, 687], "valid"], [[688, 688], "mapped", [104]], [[689, 689], "mapped", [614]], [[690, 690], "mapped", [106]], [[691, 691], "mapped", [114]], [[692, 692], "mapped", [633]], [[693, 693], "mapped", [635]], [[694, 694], "mapped", [641]], [[695, 695], "mapped", [119]], [[696, 696], "mapped", [121]], [[697, 705], "valid"], [[706, 709], "valid", [], "NV8"], [[710, 721], "valid"], [[722, 727], "valid", [], "NV8"], [[728, 728], "disallowed_STD3_mapped", [32, 774]], [[729, 729], "disallowed_STD3_mapped", [32, 775]], [[730, 730], "disallowed_STD3_mapped", [32, 778]], [[731, 731], "disallowed_STD3_mapped", [32, 808]], [[732, 732], "disallowed_STD3_mapped", [32, 771]], [[733, 733], "disallowed_STD3_mapped", [32, 779]], [[734, 734], "valid", [], "NV8"], [[735, 735], "valid", [], "NV8"], [[736, 736], "mapped", [611]], [[737, 737], "mapped", [108]], [[738, 738], "mapped", [115]], [[739, 739], "mapped", [120]], [[740, 740], "mapped", [661]], [[741, 745], "valid", [], "NV8"], [[746, 747], "valid", [], "NV8"], [[748, 748], "valid"], [[749, 749], "valid", [], "NV8"], [[750, 750], "valid"], [[751, 767], "valid", [], "NV8"], [[768, 831], "valid"], [[832, 832], "mapped", [768]], [[833, 833], "mapped", [769]], [[834, 834], "valid"], [[835, 835], "mapped", [787]], [[836, 836], "mapped", [776, 769]], [[837, 837], "mapped", [953]], [[838, 846], "valid"], [[847, 847], "ignored"], [[848, 855], "valid"], [[856, 860], "valid"], [[861, 863], "valid"], [[864, 865], "valid"], [[866, 866], "valid"], [[867, 879], "valid"], [[880, 880], "mapped", [881]], [[881, 881], "valid"], [[882, 882], "mapped", [883]], [[883, 883], "valid"], [[884, 884], "mapped", [697]], [[885, 885], "valid"], [[886, 886], "mapped", [887]], [[887, 887], "valid"], [[888, 889], "disallowed"], [[890, 890], "disallowed_STD3_mapped", [32, 953]], [[891, 893], "valid"], [[894, 894], "disallowed_STD3_mapped", [59]], [[895, 895], "mapped", [1011]], [[896, 899], "disallowed"], [[900, 900], "disallowed_STD3_mapped", [32, 769]], [[901, 901], "disallowed_STD3_mapped", [32, 776, 769]], [[902, 902], "mapped", [940]], [[903, 903], "mapped", [183]], [[904, 904], "mapped", [941]], [[905, 905], "mapped", [942]], [[906, 906], "mapped", [943]], [[907, 907], "disallowed"], [[908, 908], "mapped", [972]], [[909, 909], "disallowed"], [[910, 910], "mapped", [973]], [[911, 911], "mapped", [974]], [[912, 912], "valid"], [[913, 913], "mapped", [945]], [[914, 914], "mapped", [946]], [[915, 915], "mapped", [947]], [[916, 916], "mapped", [948]], [[917, 917], "mapped", [949]], [[918, 918], "mapped", [950]], [[919, 919], "mapped", [951]], [[920, 920], "mapped", [952]], [[921, 921], "mapped", [953]], [[922, 922], "mapped", [954]], [[923, 923], "mapped", [955]], [[924, 924], "mapped", [956]], [[925, 925], "mapped", [957]], [[926, 926], "mapped", [958]], [[927, 927], "mapped", [959]], [[928, 928], "mapped", [960]], [[929, 929], "mapped", [961]], [[930, 930], "disallowed"], [[931, 931], "mapped", [963]], [[932, 932], "mapped", [964]], [[933, 933], "mapped", [965]], [[934, 934], "mapped", [966]], [[935, 935], "mapped", [967]], [[936, 936], "mapped", [968]], [[937, 937], "mapped", [969]], [[938, 938], "mapped", [970]], [[939, 939], "mapped", [971]], [[940, 961], "valid"], [[962, 962], "deviation", [963]], [[963, 974], "valid"], [[975, 975], "mapped", [983]], [[976, 976], "mapped", [946]], [[977, 977], "mapped", [952]], [[978, 978], "mapped", [965]], [[979, 979], "mapped", [973]], [[980, 980], "mapped", [971]], [[981, 981], "mapped", [966]], [[982, 982], "mapped", [960]], [[983, 983], "valid"], [[984, 984], "mapped", [985]], [[985, 985], "valid"], [[986, 986], "mapped", [987]], [[987, 987], "valid"], [[988, 988], "mapped", [989]], [[989, 989], "valid"], [[990, 990], "mapped", [991]], [[991, 991], "valid"], [[992, 992], "mapped", [993]], [[993, 993], "valid"], [[994, 994], "mapped", [995]], [[995, 995], "valid"], [[996, 996], "mapped", [997]], [[997, 997], "valid"], [[998, 998], "mapped", [999]], [[999, 999], "valid"], [[1e3, 1e3], "mapped", [1001]], [[1001, 1001], "valid"], [[1002, 1002], "mapped", [1003]], [[1003, 1003], "valid"], [[1004, 1004], "mapped", [1005]], [[1005, 1005], "valid"], [[1006, 1006], "mapped", [1007]], [[1007, 1007], "valid"], [[1008, 1008], "mapped", [954]], [[1009, 1009], "mapped", [961]], [[1010, 1010], "mapped", [963]], [[1011, 1011], "valid"], [[1012, 1012], "mapped", [952]], [[1013, 1013], "mapped", [949]], [[1014, 1014], "valid", [], "NV8"], [[1015, 1015], "mapped", [1016]], [[1016, 1016], "valid"], [[1017, 1017], "mapped", [963]], [[1018, 1018], "mapped", [1019]], [[1019, 1019], "valid"], [[1020, 1020], "valid"], [[1021, 1021], "mapped", [891]], [[1022, 1022], "mapped", [892]], [[1023, 1023], "mapped", [893]], [[1024, 1024], "mapped", [1104]], [[1025, 1025], "mapped", [1105]], [[1026, 1026], "mapped", [1106]], [[1027, 1027], "mapped", [1107]], [[1028, 1028], "mapped", [1108]], [[1029, 1029], "mapped", [1109]], [[1030, 1030], "mapped", [1110]], [[1031, 1031], "mapped", [1111]], [[1032, 1032], "mapped", [1112]], [[1033, 1033], "mapped", [1113]], [[1034, 1034], "mapped", [1114]], [[1035, 1035], "mapped", [1115]], [[1036, 1036], "mapped", [1116]], [[1037, 1037], "mapped", [1117]], [[1038, 1038], "mapped", [1118]], [[1039, 1039], "mapped", [1119]], [[1040, 1040], "mapped", [1072]], [[1041, 1041], "mapped", [1073]], [[1042, 1042], "mapped", [1074]], [[1043, 1043], "mapped", [1075]], [[1044, 1044], "mapped", [1076]], [[1045, 1045], "mapped", [1077]], [[1046, 1046], "mapped", [1078]], [[1047, 1047], "mapped", [1079]], [[1048, 1048], "mapped", [1080]], [[1049, 1049], "mapped", [1081]], [[1050, 1050], "mapped", [1082]], [[1051, 1051], "mapped", [1083]], [[1052, 1052], "mapped", [1084]], [[1053, 1053], "mapped", [1085]], [[1054, 1054], "mapped", [1086]], [[1055, 1055], "mapped", [1087]], [[1056, 1056], "mapped", [1088]], [[1057, 1057], "mapped", [1089]], [[1058, 1058], "mapped", [1090]], [[1059, 1059], "mapped", [1091]], [[1060, 1060], "mapped", [1092]], [[1061, 1061], "mapped", [1093]], [[1062, 1062], "mapped", [1094]], [[1063, 1063], "mapped", [1095]], [[1064, 1064], "mapped", [1096]], [[1065, 1065], "mapped", [1097]], [[1066, 1066], "mapped", [1098]], [[1067, 1067], "mapped", [1099]], [[1068, 1068], "mapped", [1100]], [[1069, 1069], "mapped", [1101]], [[1070, 1070], "mapped", [1102]], [[1071, 1071], "mapped", [1103]], [[1072, 1103], "valid"], [[1104, 1104], "valid"], [[1105, 1116], "valid"], [[1117, 1117], "valid"], [[1118, 1119], "valid"], [[1120, 1120], "mapped", [1121]], [[1121, 1121], "valid"], [[1122, 1122], "mapped", [1123]], [[1123, 1123], "valid"], [[1124, 1124], "mapped", [1125]], [[1125, 1125], "valid"], [[1126, 1126], "mapped", [1127]], [[1127, 1127], "valid"], [[1128, 1128], "mapped", [1129]], [[1129, 1129], "valid"], [[1130, 1130], "mapped", [1131]], [[1131, 1131], "valid"], [[1132, 1132], "mapped", [1133]], [[1133, 1133], "valid"], [[1134, 1134], "mapped", [1135]], [[1135, 1135], "valid"], [[1136, 1136], "mapped", [1137]], [[1137, 1137], "valid"], [[1138, 1138], "mapped", [1139]], [[1139, 1139], "valid"], [[1140, 1140], "mapped", [1141]], [[1141, 1141], "valid"], [[1142, 1142], "mapped", [1143]], [[1143, 1143], "valid"], [[1144, 1144], "mapped", [1145]], [[1145, 1145], "valid"], [[1146, 1146], "mapped", [1147]], [[1147, 1147], "valid"], [[1148, 1148], "mapped", [1149]], [[1149, 1149], "valid"], [[1150, 1150], "mapped", [1151]], [[1151, 1151], "valid"], [[1152, 1152], "mapped", [1153]], [[1153, 1153], "valid"], [[1154, 1154], "valid", [], "NV8"], [[1155, 1158], "valid"], [[1159, 1159], "valid"], [[1160, 1161], "valid", [], "NV8"], [[1162, 1162], "mapped", [1163]], [[1163, 1163], "valid"], [[1164, 1164], "mapped", [1165]], [[1165, 1165], "valid"], [[1166, 1166], "mapped", [1167]], [[1167, 1167], "valid"], [[1168, 1168], "mapped", [1169]], [[1169, 1169], "valid"], [[1170, 1170], "mapped", [1171]], [[1171, 1171], "valid"], [[1172, 1172], "mapped", [1173]], [[1173, 1173], "valid"], [[1174, 1174], "mapped", [1175]], [[1175, 1175], "valid"], [[1176, 1176], "mapped", [1177]], [[1177, 1177], "valid"], [[1178, 1178], "mapped", [1179]], [[1179, 1179], "valid"], [[1180, 1180], "mapped", [1181]], [[1181, 1181], "valid"], [[1182, 1182], "mapped", [1183]], [[1183, 1183], "valid"], [[1184, 1184], "mapped", [1185]], [[1185, 1185], "valid"], [[1186, 1186], "mapped", [1187]], [[1187, 1187], "valid"], [[1188, 1188], "mapped", [1189]], [[1189, 1189], "valid"], [[1190, 1190], "mapped", [1191]], [[1191, 1191], "valid"], [[1192, 1192], "mapped", [1193]], [[1193, 1193], "valid"], [[1194, 1194], "mapped", [1195]], [[1195, 1195], "valid"], [[1196, 1196], "mapped", [1197]], [[1197, 1197], "valid"], [[1198, 1198], "mapped", [1199]], [[1199, 1199], "valid"], [[1200, 1200], "mapped", [1201]], [[1201, 1201], "valid"], [[1202, 1202], "mapped", [1203]], [[1203, 1203], "valid"], [[1204, 1204], "mapped", [1205]], [[1205, 1205], "valid"], [[1206, 1206], "mapped", [1207]], [[1207, 1207], "valid"], [[1208, 1208], "mapped", [1209]], [[1209, 1209], "valid"], [[1210, 1210], "mapped", [1211]], [[1211, 1211], "valid"], [[1212, 1212], "mapped", [1213]], [[1213, 1213], "valid"], [[1214, 1214], "mapped", [1215]], [[1215, 1215], "valid"], [[1216, 1216], "disallowed"], [[1217, 1217], "mapped", [1218]], [[1218, 1218], "valid"], [[1219, 1219], "mapped", [1220]], [[1220, 1220], "valid"], [[1221, 1221], "mapped", [1222]], [[1222, 1222], "valid"], [[1223, 1223], "mapped", [1224]], [[1224, 1224], "valid"], [[1225, 1225], "mapped", [1226]], [[1226, 1226], "valid"], [[1227, 1227], "mapped", [1228]], [[1228, 1228], "valid"], [[1229, 1229], "mapped", [1230]], [[1230, 1230], "valid"], [[1231, 1231], "valid"], [[1232, 1232], "mapped", [1233]], [[1233, 1233], "valid"], [[1234, 1234], "mapped", [1235]], [[1235, 1235], "valid"], [[1236, 1236], "mapped", [1237]], [[1237, 1237], "valid"], [[1238, 1238], "mapped", [1239]], [[1239, 1239], "valid"], [[1240, 1240], "mapped", [1241]], [[1241, 1241], "valid"], [[1242, 1242], "mapped", [1243]], [[1243, 1243], "valid"], [[1244, 1244], "mapped", [1245]], [[1245, 1245], "valid"], [[1246, 1246], "mapped", [1247]], [[1247, 1247], "valid"], [[1248, 1248], "mapped", [1249]], [[1249, 1249], "valid"], [[1250, 1250], "mapped", [1251]], [[1251, 1251], "valid"], [[1252, 1252], "mapped", [1253]], [[1253, 1253], "valid"], [[1254, 1254], "mapped", [1255]], [[1255, 1255], "valid"], [[1256, 1256], "mapped", [1257]], [[1257, 1257], "valid"], [[1258, 1258], "mapped", [1259]], [[1259, 1259], "valid"], [[1260, 1260], "mapped", [1261]], [[1261, 1261], "valid"], [[1262, 1262], "mapped", [1263]], [[1263, 1263], "valid"], [[1264, 1264], "mapped", [1265]], [[1265, 1265], "valid"], [[1266, 1266], "mapped", [1267]], [[1267, 1267], "valid"], [[1268, 1268], "mapped", [1269]], [[1269, 1269], "valid"], [[1270, 1270], "mapped", [1271]], [[1271, 1271], "valid"], [[1272, 1272], "mapped", [1273]], [[1273, 1273], "valid"], [[1274, 1274], "mapped", [1275]], [[1275, 1275], "valid"], [[1276, 1276], "mapped", [1277]], [[1277, 1277], "valid"], [[1278, 1278], "mapped", [1279]], [[1279, 1279], "valid"], [[1280, 1280], "mapped", [1281]], [[1281, 1281], "valid"], [[1282, 1282], "mapped", [1283]], [[1283, 1283], "valid"], [[1284, 1284], "mapped", [1285]], [[1285, 1285], "valid"], [[1286, 1286], "mapped", [1287]], [[1287, 1287], "valid"], [[1288, 1288], "mapped", [1289]], [[1289, 1289], "valid"], [[1290, 1290], "mapped", [1291]], [[1291, 1291], "valid"], [[1292, 1292], "mapped", [1293]], [[1293, 1293], "valid"], [[1294, 1294], "mapped", [1295]], [[1295, 1295], "valid"], [[1296, 1296], "mapped", [1297]], [[1297, 1297], "valid"], [[1298, 1298], "mapped", [1299]], [[1299, 1299], "valid"], [[1300, 1300], "mapped", [1301]], [[1301, 1301], "valid"], [[1302, 1302], "mapped", [1303]], [[1303, 1303], "valid"], [[1304, 1304], "mapped", [1305]], [[1305, 1305], "valid"], [[1306, 1306], "mapped", [1307]], [[1307, 1307], "valid"], [[1308, 1308], "mapped", [1309]], [[1309, 1309], "valid"], [[1310, 1310], "mapped", [1311]], [[1311, 1311], "valid"], [[1312, 1312], "mapped", [1313]], [[1313, 1313], "valid"], [[1314, 1314], "mapped", [1315]], [[1315, 1315], "valid"], [[1316, 1316], "mapped", [1317]], [[1317, 1317], "valid"], [[1318, 1318], "mapped", [1319]], [[1319, 1319], "valid"], [[1320, 1320], "mapped", [1321]], [[1321, 1321], "valid"], [[1322, 1322], "mapped", [1323]], [[1323, 1323], "valid"], [[1324, 1324], "mapped", [1325]], [[1325, 1325], "valid"], [[1326, 1326], "mapped", [1327]], [[1327, 1327], "valid"], [[1328, 1328], "disallowed"], [[1329, 1329], "mapped", [1377]], [[1330, 1330], "mapped", [1378]], [[1331, 1331], "mapped", [1379]], [[1332, 1332], "mapped", [1380]], [[1333, 1333], "mapped", [1381]], [[1334, 1334], "mapped", [1382]], [[1335, 1335], "mapped", [1383]], [[1336, 1336], "mapped", [1384]], [[1337, 1337], "mapped", [1385]], [[1338, 1338], "mapped", [1386]], [[1339, 1339], "mapped", [1387]], [[1340, 1340], "mapped", [1388]], [[1341, 1341], "mapped", [1389]], [[1342, 1342], "mapped", [1390]], [[1343, 1343], "mapped", [1391]], [[1344, 1344], "mapped", [1392]], [[1345, 1345], "mapped", [1393]], [[1346, 1346], "mapped", [1394]], [[1347, 1347], "mapped", [1395]], [[1348, 1348], "mapped", [1396]], [[1349, 1349], "mapped", [1397]], [[1350, 1350], "mapped", [1398]], [[1351, 1351], "mapped", [1399]], [[1352, 1352], "mapped", [1400]], [[1353, 1353], "mapped", [1401]], [[1354, 1354], "mapped", [1402]], [[1355, 1355], "mapped", [1403]], [[1356, 1356], "mapped", [1404]], [[1357, 1357], "mapped", [1405]], [[1358, 1358], "mapped", [1406]], [[1359, 1359], "mapped", [1407]], [[1360, 1360], "mapped", [1408]], [[1361, 1361], "mapped", [1409]], [[1362, 1362], "mapped", [1410]], [[1363, 1363], "mapped", [1411]], [[1364, 1364], "mapped", [1412]], [[1365, 1365], "mapped", [1413]], [[1366, 1366], "mapped", [1414]], [[1367, 1368], "disallowed"], [[1369, 1369], "valid"], [[1370, 1375], "valid", [], "NV8"], [[1376, 1376], "disallowed"], [[1377, 1414], "valid"], [[1415, 1415], "mapped", [1381, 1410]], [[1416, 1416], "disallowed"], [[1417, 1417], "valid", [], "NV8"], [[1418, 1418], "valid", [], "NV8"], [[1419, 1420], "disallowed"], [[1421, 1422], "valid", [], "NV8"], [[1423, 1423], "valid", [], "NV8"], [[1424, 1424], "disallowed"], [[1425, 1441], "valid"], [[1442, 1442], "valid"], [[1443, 1455], "valid"], [[1456, 1465], "valid"], [[1466, 1466], "valid"], [[1467, 1469], "valid"], [[1470, 1470], "valid", [], "NV8"], [[1471, 1471], "valid"], [[1472, 1472], "valid", [], "NV8"], [[1473, 1474], "valid"], [[1475, 1475], "valid", [], "NV8"], [[1476, 1476], "valid"], [[1477, 1477], "valid"], [[1478, 1478], "valid", [], "NV8"], [[1479, 1479], "valid"], [[1480, 1487], "disallowed"], [[1488, 1514], "valid"], [[1515, 1519], "disallowed"], [[1520, 1524], "valid"], [[1525, 1535], "disallowed"], [[1536, 1539], "disallowed"], [[1540, 1540], "disallowed"], [[1541, 1541], "disallowed"], [[1542, 1546], "valid", [], "NV8"], [[1547, 1547], "valid", [], "NV8"], [[1548, 1548], "valid", [], "NV8"], [[1549, 1551], "valid", [], "NV8"], [[1552, 1557], "valid"], [[1558, 1562], "valid"], [[1563, 1563], "valid", [], "NV8"], [[1564, 1564], "disallowed"], [[1565, 1565], "disallowed"], [[1566, 1566], "valid", [], "NV8"], [[1567, 1567], "valid", [], "NV8"], [[1568, 1568], "valid"], [[1569, 1594], "valid"], [[1595, 1599], "valid"], [[1600, 1600], "valid", [], "NV8"], [[1601, 1618], "valid"], [[1619, 1621], "valid"], [[1622, 1624], "valid"], [[1625, 1630], "valid"], [[1631, 1631], "valid"], [[1632, 1641], "valid"], [[1642, 1645], "valid", [], "NV8"], [[1646, 1647], "valid"], [[1648, 1652], "valid"], [[1653, 1653], "mapped", [1575, 1652]], [[1654, 1654], "mapped", [1608, 1652]], [[1655, 1655], "mapped", [1735, 1652]], [[1656, 1656], "mapped", [1610, 1652]], [[1657, 1719], "valid"], [[1720, 1721], "valid"], [[1722, 1726], "valid"], [[1727, 1727], "valid"], [[1728, 1742], "valid"], [[1743, 1743], "valid"], [[1744, 1747], "valid"], [[1748, 1748], "valid", [], "NV8"], [[1749, 1756], "valid"], [[1757, 1757], "disallowed"], [[1758, 1758], "valid", [], "NV8"], [[1759, 1768], "valid"], [[1769, 1769], "valid", [], "NV8"], [[1770, 1773], "valid"], [[1774, 1775], "valid"], [[1776, 1785], "valid"], [[1786, 1790], "valid"], [[1791, 1791], "valid"], [[1792, 1805], "valid", [], "NV8"], [[1806, 1806], "disallowed"], [[1807, 1807], "disallowed"], [[1808, 1836], "valid"], [[1837, 1839], "valid"], [[1840, 1866], "valid"], [[1867, 1868], "disallowed"], [[1869, 1871], "valid"], [[1872, 1901], "valid"], [[1902, 1919], "valid"], [[1920, 1968], "valid"], [[1969, 1969], "valid"], [[1970, 1983], "disallowed"], [[1984, 2037], "valid"], [[2038, 2042], "valid", [], "NV8"], [[2043, 2047], "disallowed"], [[2048, 2093], "valid"], [[2094, 2095], "disallowed"], [[2096, 2110], "valid", [], "NV8"], [[2111, 2111], "disallowed"], [[2112, 2139], "valid"], [[2140, 2141], "disallowed"], [[2142, 2142], "valid", [], "NV8"], [[2143, 2207], "disallowed"], [[2208, 2208], "valid"], [[2209, 2209], "valid"], [[2210, 2220], "valid"], [[2221, 2226], "valid"], [[2227, 2228], "valid"], [[2229, 2274], "disallowed"], [[2275, 2275], "valid"], [[2276, 2302], "valid"], [[2303, 2303], "valid"], [[2304, 2304], "valid"], [[2305, 2307], "valid"], [[2308, 2308], "valid"], [[2309, 2361], "valid"], [[2362, 2363], "valid"], [[2364, 2381], "valid"], [[2382, 2382], "valid"], [[2383, 2383], "valid"], [[2384, 2388], "valid"], [[2389, 2389], "valid"], [[2390, 2391], "valid"], [[2392, 2392], "mapped", [2325, 2364]], [[2393, 2393], "mapped", [2326, 2364]], [[2394, 2394], "mapped", [2327, 2364]], [[2395, 2395], "mapped", [2332, 2364]], [[2396, 2396], "mapped", [2337, 2364]], [[2397, 2397], "mapped", [2338, 2364]], [[2398, 2398], "mapped", [2347, 2364]], [[2399, 2399], "mapped", [2351, 2364]], [[2400, 2403], "valid"], [[2404, 2405], "valid", [], "NV8"], [[2406, 2415], "valid"], [[2416, 2416], "valid", [], "NV8"], [[2417, 2418], "valid"], [[2419, 2423], "valid"], [[2424, 2424], "valid"], [[2425, 2426], "valid"], [[2427, 2428], "valid"], [[2429, 2429], "valid"], [[2430, 2431], "valid"], [[2432, 2432], "valid"], [[2433, 2435], "valid"], [[2436, 2436], "disallowed"], [[2437, 2444], "valid"], [[2445, 2446], "disallowed"], [[2447, 2448], "valid"], [[2449, 2450], "disallowed"], [[2451, 2472], "valid"], [[2473, 2473], "disallowed"], [[2474, 2480], "valid"], [[2481, 2481], "disallowed"], [[2482, 2482], "valid"], [[2483, 2485], "disallowed"], [[2486, 2489], "valid"], [[2490, 2491], "disallowed"], [[2492, 2492], "valid"], [[2493, 2493], "valid"], [[2494, 2500], "valid"], [[2501, 2502], "disallowed"], [[2503, 2504], "valid"], [[2505, 2506], "disallowed"], [[2507, 2509], "valid"], [[2510, 2510], "valid"], [[2511, 2518], "disallowed"], [[2519, 2519], "valid"], [[2520, 2523], "disallowed"], [[2524, 2524], "mapped", [2465, 2492]], [[2525, 2525], "mapped", [2466, 2492]], [[2526, 2526], "disallowed"], [[2527, 2527], "mapped", [2479, 2492]], [[2528, 2531], "valid"], [[2532, 2533], "disallowed"], [[2534, 2545], "valid"], [[2546, 2554], "valid", [], "NV8"], [[2555, 2555], "valid", [], "NV8"], [[2556, 2560], "disallowed"], [[2561, 2561], "valid"], [[2562, 2562], "valid"], [[2563, 2563], "valid"], [[2564, 2564], "disallowed"], [[2565, 2570], "valid"], [[2571, 2574], "disallowed"], [[2575, 2576], "valid"], [[2577, 2578], "disallowed"], [[2579, 2600], "valid"], [[2601, 2601], "disallowed"], [[2602, 2608], "valid"], [[2609, 2609], "disallowed"], [[2610, 2610], "valid"], [[2611, 2611], "mapped", [2610, 2620]], [[2612, 2612], "disallowed"], [[2613, 2613], "valid"], [[2614, 2614], "mapped", [2616, 2620]], [[2615, 2615], "disallowed"], [[2616, 2617], "valid"], [[2618, 2619], "disallowed"], [[2620, 2620], "valid"], [[2621, 2621], "disallowed"], [[2622, 2626], "valid"], [[2627, 2630], "disallowed"], [[2631, 2632], "valid"], [[2633, 2634], "disallowed"], [[2635, 2637], "valid"], [[2638, 2640], "disallowed"], [[2641, 2641], "valid"], [[2642, 2648], "disallowed"], [[2649, 2649], "mapped", [2582, 2620]], [[2650, 2650], "mapped", [2583, 2620]], [[2651, 2651], "mapped", [2588, 2620]], [[2652, 2652], "valid"], [[2653, 2653], "disallowed"], [[2654, 2654], "mapped", [2603, 2620]], [[2655, 2661], "disallowed"], [[2662, 2676], "valid"], [[2677, 2677], "valid"], [[2678, 2688], "disallowed"], [[2689, 2691], "valid"], [[2692, 2692], "disallowed"], [[2693, 2699], "valid"], [[2700, 2700], "valid"], [[2701, 2701], "valid"], [[2702, 2702], "disallowed"], [[2703, 2705], "valid"], [[2706, 2706], "disallowed"], [[2707, 2728], "valid"], [[2729, 2729], "disallowed"], [[2730, 2736], "valid"], [[2737, 2737], "disallowed"], [[2738, 2739], "valid"], [[2740, 2740], "disallowed"], [[2741, 2745], "valid"], [[2746, 2747], "disallowed"], [[2748, 2757], "valid"], [[2758, 2758], "disallowed"], [[2759, 2761], "valid"], [[2762, 2762], "disallowed"], [[2763, 2765], "valid"], [[2766, 2767], "disallowed"], [[2768, 2768], "valid"], [[2769, 2783], "disallowed"], [[2784, 2784], "valid"], [[2785, 2787], "valid"], [[2788, 2789], "disallowed"], [[2790, 2799], "valid"], [[2800, 2800], "valid", [], "NV8"], [[2801, 2801], "valid", [], "NV8"], [[2802, 2808], "disallowed"], [[2809, 2809], "valid"], [[2810, 2816], "disallowed"], [[2817, 2819], "valid"], [[2820, 2820], "disallowed"], [[2821, 2828], "valid"], [[2829, 2830], "disallowed"], [[2831, 2832], "valid"], [[2833, 2834], "disallowed"], [[2835, 2856], "valid"], [[2857, 2857], "disallowed"], [[2858, 2864], "valid"], [[2865, 2865], "disallowed"], [[2866, 2867], "valid"], [[2868, 2868], "disallowed"], [[2869, 2869], "valid"], [[2870, 2873], "valid"], [[2874, 2875], "disallowed"], [[2876, 2883], "valid"], [[2884, 2884], "valid"], [[2885, 2886], "disallowed"], [[2887, 2888], "valid"], [[2889, 2890], "disallowed"], [[2891, 2893], "valid"], [[2894, 2901], "disallowed"], [[2902, 2903], "valid"], [[2904, 2907], "disallowed"], [[2908, 2908], "mapped", [2849, 2876]], [[2909, 2909], "mapped", [2850, 2876]], [[2910, 2910], "disallowed"], [[2911, 2913], "valid"], [[2914, 2915], "valid"], [[2916, 2917], "disallowed"], [[2918, 2927], "valid"], [[2928, 2928], "valid", [], "NV8"], [[2929, 2929], "valid"], [[2930, 2935], "valid", [], "NV8"], [[2936, 2945], "disallowed"], [[2946, 2947], "valid"], [[2948, 2948], "disallowed"], [[2949, 2954], "valid"], [[2955, 2957], "disallowed"], [[2958, 2960], "valid"], [[2961, 2961], "disallowed"], [[2962, 2965], "valid"], [[2966, 2968], "disallowed"], [[2969, 2970], "valid"], [[2971, 2971], "disallowed"], [[2972, 2972], "valid"], [[2973, 2973], "disallowed"], [[2974, 2975], "valid"], [[2976, 2978], "disallowed"], [[2979, 2980], "valid"], [[2981, 2983], "disallowed"], [[2984, 2986], "valid"], [[2987, 2989], "disallowed"], [[2990, 2997], "valid"], [[2998, 2998], "valid"], [[2999, 3001], "valid"], [[3002, 3005], "disallowed"], [[3006, 3010], "valid"], [[3011, 3013], "disallowed"], [[3014, 3016], "valid"], [[3017, 3017], "disallowed"], [[3018, 3021], "valid"], [[3022, 3023], "disallowed"], [[3024, 3024], "valid"], [[3025, 3030], "disallowed"], [[3031, 3031], "valid"], [[3032, 3045], "disallowed"], [[3046, 3046], "valid"], [[3047, 3055], "valid"], [[3056, 3058], "valid", [], "NV8"], [[3059, 3066], "valid", [], "NV8"], [[3067, 3071], "disallowed"], [[3072, 3072], "valid"], [[3073, 3075], "valid"], [[3076, 3076], "disallowed"], [[3077, 3084], "valid"], [[3085, 3085], "disallowed"], [[3086, 3088], "valid"], [[3089, 3089], "disallowed"], [[3090, 3112], "valid"], [[3113, 3113], "disallowed"], [[3114, 3123], "valid"], [[3124, 3124], "valid"], [[3125, 3129], "valid"], [[3130, 3132], "disallowed"], [[3133, 3133], "valid"], [[3134, 3140], "valid"], [[3141, 3141], "disallowed"], [[3142, 3144], "valid"], [[3145, 3145], "disallowed"], [[3146, 3149], "valid"], [[3150, 3156], "disallowed"], [[3157, 3158], "valid"], [[3159, 3159], "disallowed"], [[3160, 3161], "valid"], [[3162, 3162], "valid"], [[3163, 3167], "disallowed"], [[3168, 3169], "valid"], [[3170, 3171], "valid"], [[3172, 3173], "disallowed"], [[3174, 3183], "valid"], [[3184, 3191], "disallowed"], [[3192, 3199], "valid", [], "NV8"], [[3200, 3200], "disallowed"], [[3201, 3201], "valid"], [[3202, 3203], "valid"], [[3204, 3204], "disallowed"], [[3205, 3212], "valid"], [[3213, 3213], "disallowed"], [[3214, 3216], "valid"], [[3217, 3217], "disallowed"], [[3218, 3240], "valid"], [[3241, 3241], "disallowed"], [[3242, 3251], "valid"], [[3252, 3252], "disallowed"], [[3253, 3257], "valid"], [[3258, 3259], "disallowed"], [[3260, 3261], "valid"], [[3262, 3268], "valid"], [[3269, 3269], "disallowed"], [[3270, 3272], "valid"], [[3273, 3273], "disallowed"], [[3274, 3277], "valid"], [[3278, 3284], "disallowed"], [[3285, 3286], "valid"], [[3287, 3293], "disallowed"], [[3294, 3294], "valid"], [[3295, 3295], "disallowed"], [[3296, 3297], "valid"], [[3298, 3299], "valid"], [[3300, 3301], "disallowed"], [[3302, 3311], "valid"], [[3312, 3312], "disallowed"], [[3313, 3314], "valid"], [[3315, 3328], "disallowed"], [[3329, 3329], "valid"], [[3330, 3331], "valid"], [[3332, 3332], "disallowed"], [[3333, 3340], "valid"], [[3341, 3341], "disallowed"], [[3342, 3344], "valid"], [[3345, 3345], "disallowed"], [[3346, 3368], "valid"], [[3369, 3369], "valid"], [[3370, 3385], "valid"], [[3386, 3386], "valid"], [[3387, 3388], "disallowed"], [[3389, 3389], "valid"], [[3390, 3395], "valid"], [[3396, 3396], "valid"], [[3397, 3397], "disallowed"], [[3398, 3400], "valid"], [[3401, 3401], "disallowed"], [[3402, 3405], "valid"], [[3406, 3406], "valid"], [[3407, 3414], "disallowed"], [[3415, 3415], "valid"], [[3416, 3422], "disallowed"], [[3423, 3423], "valid"], [[3424, 3425], "valid"], [[3426, 3427], "valid"], [[3428, 3429], "disallowed"], [[3430, 3439], "valid"], [[3440, 3445], "valid", [], "NV8"], [[3446, 3448], "disallowed"], [[3449, 3449], "valid", [], "NV8"], [[3450, 3455], "valid"], [[3456, 3457], "disallowed"], [[3458, 3459], "valid"], [[3460, 3460], "disallowed"], [[3461, 3478], "valid"], [[3479, 3481], "disallowed"], [[3482, 3505], "valid"], [[3506, 3506], "disallowed"], [[3507, 3515], "valid"], [[3516, 3516], "disallowed"], [[3517, 3517], "valid"], [[3518, 3519], "disallowed"], [[3520, 3526], "valid"], [[3527, 3529], "disallowed"], [[3530, 3530], "valid"], [[3531, 3534], "disallowed"], [[3535, 3540], "valid"], [[3541, 3541], "disallowed"], [[3542, 3542], "valid"], [[3543, 3543], "disallowed"], [[3544, 3551], "valid"], [[3552, 3557], "disallowed"], [[3558, 3567], "valid"], [[3568, 3569], "disallowed"], [[3570, 3571], "valid"], [[3572, 3572], "valid", [], "NV8"], [[3573, 3584], "disallowed"], [[3585, 3634], "valid"], [[3635, 3635], "mapped", [3661, 3634]], [[3636, 3642], "valid"], [[3643, 3646], "disallowed"], [[3647, 3647], "valid", [], "NV8"], [[3648, 3662], "valid"], [[3663, 3663], "valid", [], "NV8"], [[3664, 3673], "valid"], [[3674, 3675], "valid", [], "NV8"], [[3676, 3712], "disallowed"], [[3713, 3714], "valid"], [[3715, 3715], "disallowed"], [[3716, 3716], "valid"], [[3717, 3718], "disallowed"], [[3719, 3720], "valid"], [[3721, 3721], "disallowed"], [[3722, 3722], "valid"], [[3723, 3724], "disallowed"], [[3725, 3725], "valid"], [[3726, 3731], "disallowed"], [[3732, 3735], "valid"], [[3736, 3736], "disallowed"], [[3737, 3743], "valid"], [[3744, 3744], "disallowed"], [[3745, 3747], "valid"], [[3748, 3748], "disallowed"], [[3749, 3749], "valid"], [[3750, 3750], "disallowed"], [[3751, 3751], "valid"], [[3752, 3753], "disallowed"], [[3754, 3755], "valid"], [[3756, 3756], "disallowed"], [[3757, 3762], "valid"], [[3763, 3763], "mapped", [3789, 3762]], [[3764, 3769], "valid"], [[3770, 3770], "disallowed"], [[3771, 3773], "valid"], [[3774, 3775], "disallowed"], [[3776, 3780], "valid"], [[3781, 3781], "disallowed"], [[3782, 3782], "valid"], [[3783, 3783], "disallowed"], [[3784, 3789], "valid"], [[3790, 3791], "disallowed"], [[3792, 3801], "valid"], [[3802, 3803], "disallowed"], [[3804, 3804], "mapped", [3755, 3737]], [[3805, 3805], "mapped", [3755, 3745]], [[3806, 3807], "valid"], [[3808, 3839], "disallowed"], [[3840, 3840], "valid"], [[3841, 3850], "valid", [], "NV8"], [[3851, 3851], "valid"], [[3852, 3852], "mapped", [3851]], [[3853, 3863], "valid", [], "NV8"], [[3864, 3865], "valid"], [[3866, 3871], "valid", [], "NV8"], [[3872, 3881], "valid"], [[3882, 3892], "valid", [], "NV8"], [[3893, 3893], "valid"], [[3894, 3894], "valid", [], "NV8"], [[3895, 3895], "valid"], [[3896, 3896], "valid", [], "NV8"], [[3897, 3897], "valid"], [[3898, 3901], "valid", [], "NV8"], [[3902, 3906], "valid"], [[3907, 3907], "mapped", [3906, 4023]], [[3908, 3911], "valid"], [[3912, 3912], "disallowed"], [[3913, 3916], "valid"], [[3917, 3917], "mapped", [3916, 4023]], [[3918, 3921], "valid"], [[3922, 3922], "mapped", [3921, 4023]], [[3923, 3926], "valid"], [[3927, 3927], "mapped", [3926, 4023]], [[3928, 3931], "valid"], [[3932, 3932], "mapped", [3931, 4023]], [[3933, 3944], "valid"], [[3945, 3945], "mapped", [3904, 4021]], [[3946, 3946], "valid"], [[3947, 3948], "valid"], [[3949, 3952], "disallowed"], [[3953, 3954], "valid"], [[3955, 3955], "mapped", [3953, 3954]], [[3956, 3956], "valid"], [[3957, 3957], "mapped", [3953, 3956]], [[3958, 3958], "mapped", [4018, 3968]], [[3959, 3959], "mapped", [4018, 3953, 3968]], [[3960, 3960], "mapped", [4019, 3968]], [[3961, 3961], "mapped", [4019, 3953, 3968]], [[3962, 3968], "valid"], [[3969, 3969], "mapped", [3953, 3968]], [[3970, 3972], "valid"], [[3973, 3973], "valid", [], "NV8"], [[3974, 3979], "valid"], [[3980, 3983], "valid"], [[3984, 3986], "valid"], [[3987, 3987], "mapped", [3986, 4023]], [[3988, 3989], "valid"], [[3990, 3990], "valid"], [[3991, 3991], "valid"], [[3992, 3992], "disallowed"], [[3993, 3996], "valid"], [[3997, 3997], "mapped", [3996, 4023]], [[3998, 4001], "valid"], [[4002, 4002], "mapped", [4001, 4023]], [[4003, 4006], "valid"], [[4007, 4007], "mapped", [4006, 4023]], [[4008, 4011], "valid"], [[4012, 4012], "mapped", [4011, 4023]], [[4013, 4013], "valid"], [[4014, 4016], "valid"], [[4017, 4023], "valid"], [[4024, 4024], "valid"], [[4025, 4025], "mapped", [3984, 4021]], [[4026, 4028], "valid"], [[4029, 4029], "disallowed"], [[4030, 4037], "valid", [], "NV8"], [[4038, 4038], "valid"], [[4039, 4044], "valid", [], "NV8"], [[4045, 4045], "disallowed"], [[4046, 4046], "valid", [], "NV8"], [[4047, 4047], "valid", [], "NV8"], [[4048, 4049], "valid", [], "NV8"], [[4050, 4052], "valid", [], "NV8"], [[4053, 4056], "valid", [], "NV8"], [[4057, 4058], "valid", [], "NV8"], [[4059, 4095], "disallowed"], [[4096, 4129], "valid"], [[4130, 4130], "valid"], [[4131, 4135], "valid"], [[4136, 4136], "valid"], [[4137, 4138], "valid"], [[4139, 4139], "valid"], [[4140, 4146], "valid"], [[4147, 4149], "valid"], [[4150, 4153], "valid"], [[4154, 4159], "valid"], [[4160, 4169], "valid"], [[4170, 4175], "valid", [], "NV8"], [[4176, 4185], "valid"], [[4186, 4249], "valid"], [[4250, 4253], "valid"], [[4254, 4255], "valid", [], "NV8"], [[4256, 4293], "disallowed"], [[4294, 4294], "disallowed"], [[4295, 4295], "mapped", [11559]], [[4296, 4300], "disallowed"], [[4301, 4301], "mapped", [11565]], [[4302, 4303], "disallowed"], [[4304, 4342], "valid"], [[4343, 4344], "valid"], [[4345, 4346], "valid"], [[4347, 4347], "valid", [], "NV8"], [[4348, 4348], "mapped", [4316]], [[4349, 4351], "valid"], [[4352, 4441], "valid", [], "NV8"], [[4442, 4446], "valid", [], "NV8"], [[4447, 4448], "disallowed"], [[4449, 4514], "valid", [], "NV8"], [[4515, 4519], "valid", [], "NV8"], [[4520, 4601], "valid", [], "NV8"], [[4602, 4607], "valid", [], "NV8"], [[4608, 4614], "valid"], [[4615, 4615], "valid"], [[4616, 4678], "valid"], [[4679, 4679], "valid"], [[4680, 4680], "valid"], [[4681, 4681], "disallowed"], [[4682, 4685], "valid"], [[4686, 4687], "disallowed"], [[4688, 4694], "valid"], [[4695, 4695], "disallowed"], [[4696, 4696], "valid"], [[4697, 4697], "disallowed"], [[4698, 4701], "valid"], [[4702, 4703], "disallowed"], [[4704, 4742], "valid"], [[4743, 4743], "valid"], [[4744, 4744], "valid"], [[4745, 4745], "disallowed"], [[4746, 4749], "valid"], [[4750, 4751], "disallowed"], [[4752, 4782], "valid"], [[4783, 4783], "valid"], [[4784, 4784], "valid"], [[4785, 4785], "disallowed"], [[4786, 4789], "valid"], [[4790, 4791], "disallowed"], [[4792, 4798], "valid"], [[4799, 4799], "disallowed"], [[4800, 4800], "valid"], [[4801, 4801], "disallowed"], [[4802, 4805], "valid"], [[4806, 4807], "disallowed"], [[4808, 4814], "valid"], [[4815, 4815], "valid"], [[4816, 4822], "valid"], [[4823, 4823], "disallowed"], [[4824, 4846], "valid"], [[4847, 4847], "valid"], [[4848, 4878], "valid"], [[4879, 4879], "valid"], [[4880, 4880], "valid"], [[4881, 4881], "disallowed"], [[4882, 4885], "valid"], [[4886, 4887], "disallowed"], [[4888, 4894], "valid"], [[4895, 4895], "valid"], [[4896, 4934], "valid"], [[4935, 4935], "valid"], [[4936, 4954], "valid"], [[4955, 4956], "disallowed"], [[4957, 4958], "valid"], [[4959, 4959], "valid"], [[4960, 4960], "valid", [], "NV8"], [[4961, 4988], "valid", [], "NV8"], [[4989, 4991], "disallowed"], [[4992, 5007], "valid"], [[5008, 5017], "valid", [], "NV8"], [[5018, 5023], "disallowed"], [[5024, 5108], "valid"], [[5109, 5109], "valid"], [[5110, 5111], "disallowed"], [[5112, 5112], "mapped", [5104]], [[5113, 5113], "mapped", [5105]], [[5114, 5114], "mapped", [5106]], [[5115, 5115], "mapped", [5107]], [[5116, 5116], "mapped", [5108]], [[5117, 5117], "mapped", [5109]], [[5118, 5119], "disallowed"], [[5120, 5120], "valid", [], "NV8"], [[5121, 5740], "valid"], [[5741, 5742], "valid", [], "NV8"], [[5743, 5750], "valid"], [[5751, 5759], "valid"], [[5760, 5760], "disallowed"], [[5761, 5786], "valid"], [[5787, 5788], "valid", [], "NV8"], [[5789, 5791], "disallowed"], [[5792, 5866], "valid"], [[5867, 5872], "valid", [], "NV8"], [[5873, 5880], "valid"], [[5881, 5887], "disallowed"], [[5888, 5900], "valid"], [[5901, 5901], "disallowed"], [[5902, 5908], "valid"], [[5909, 5919], "disallowed"], [[5920, 5940], "valid"], [[5941, 5942], "valid", [], "NV8"], [[5943, 5951], "disallowed"], [[5952, 5971], "valid"], [[5972, 5983], "disallowed"], [[5984, 5996], "valid"], [[5997, 5997], "disallowed"], [[5998, 6e3], "valid"], [[6001, 6001], "disallowed"], [[6002, 6003], "valid"], [[6004, 6015], "disallowed"], [[6016, 6067], "valid"], [[6068, 6069], "disallowed"], [[6070, 6099], "valid"], [[6100, 6102], "valid", [], "NV8"], [[6103, 6103], "valid"], [[6104, 6107], "valid", [], "NV8"], [[6108, 6108], "valid"], [[6109, 6109], "valid"], [[6110, 6111], "disallowed"], [[6112, 6121], "valid"], [[6122, 6127], "disallowed"], [[6128, 6137], "valid", [], "NV8"], [[6138, 6143], "disallowed"], [[6144, 6149], "valid", [], "NV8"], [[6150, 6150], "disallowed"], [[6151, 6154], "valid", [], "NV8"], [[6155, 6157], "ignored"], [[6158, 6158], "disallowed"], [[6159, 6159], "disallowed"], [[6160, 6169], "valid"], [[6170, 6175], "disallowed"], [[6176, 6263], "valid"], [[6264, 6271], "disallowed"], [[6272, 6313], "valid"], [[6314, 6314], "valid"], [[6315, 6319], "disallowed"], [[6320, 6389], "valid"], [[6390, 6399], "disallowed"], [[6400, 6428], "valid"], [[6429, 6430], "valid"], [[6431, 6431], "disallowed"], [[6432, 6443], "valid"], [[6444, 6447], "disallowed"], [[6448, 6459], "valid"], [[6460, 6463], "disallowed"], [[6464, 6464], "valid", [], "NV8"], [[6465, 6467], "disallowed"], [[6468, 6469], "valid", [], "NV8"], [[6470, 6509], "valid"], [[6510, 6511], "disallowed"], [[6512, 6516], "valid"], [[6517, 6527], "disallowed"], [[6528, 6569], "valid"], [[6570, 6571], "valid"], [[6572, 6575], "disallowed"], [[6576, 6601], "valid"], [[6602, 6607], "disallowed"], [[6608, 6617], "valid"], [[6618, 6618], "valid", [], "XV8"], [[6619, 6621], "disallowed"], [[6622, 6623], "valid", [], "NV8"], [[6624, 6655], "valid", [], "NV8"], [[6656, 6683], "valid"], [[6684, 6685], "disallowed"], [[6686, 6687], "valid", [], "NV8"], [[6688, 6750], "valid"], [[6751, 6751], "disallowed"], [[6752, 6780], "valid"], [[6781, 6782], "disallowed"], [[6783, 6793], "valid"], [[6794, 6799], "disallowed"], [[6800, 6809], "valid"], [[6810, 6815], "disallowed"], [[6816, 6822], "valid", [], "NV8"], [[6823, 6823], "valid"], [[6824, 6829], "valid", [], "NV8"], [[6830, 6831], "disallowed"], [[6832, 6845], "valid"], [[6846, 6846], "valid", [], "NV8"], [[6847, 6911], "disallowed"], [[6912, 6987], "valid"], [[6988, 6991], "disallowed"], [[6992, 7001], "valid"], [[7002, 7018], "valid", [], "NV8"], [[7019, 7027], "valid"], [[7028, 7036], "valid", [], "NV8"], [[7037, 7039], "disallowed"], [[7040, 7082], "valid"], [[7083, 7085], "valid"], [[7086, 7097], "valid"], [[7098, 7103], "valid"], [[7104, 7155], "valid"], [[7156, 7163], "disallowed"], [[7164, 7167], "valid", [], "NV8"], [[7168, 7223], "valid"], [[7224, 7226], "disallowed"], [[7227, 7231], "valid", [], "NV8"], [[7232, 7241], "valid"], [[7242, 7244], "disallowed"], [[7245, 7293], "valid"], [[7294, 7295], "valid", [], "NV8"], [[7296, 7359], "disallowed"], [[7360, 7367], "valid", [], "NV8"], [[7368, 7375], "disallowed"], [[7376, 7378], "valid"], [[7379, 7379], "valid", [], "NV8"], [[7380, 7410], "valid"], [[7411, 7414], "valid"], [[7415, 7415], "disallowed"], [[7416, 7417], "valid"], [[7418, 7423], "disallowed"], [[7424, 7467], "valid"], [[7468, 7468], "mapped", [97]], [[7469, 7469], "mapped", [230]], [[7470, 7470], "mapped", [98]], [[7471, 7471], "valid"], [[7472, 7472], "mapped", [100]], [[7473, 7473], "mapped", [101]], [[7474, 7474], "mapped", [477]], [[7475, 7475], "mapped", [103]], [[7476, 7476], "mapped", [104]], [[7477, 7477], "mapped", [105]], [[7478, 7478], "mapped", [106]], [[7479, 7479], "mapped", [107]], [[7480, 7480], "mapped", [108]], [[7481, 7481], "mapped", [109]], [[7482, 7482], "mapped", [110]], [[7483, 7483], "valid"], [[7484, 7484], "mapped", [111]], [[7485, 7485], "mapped", [547]], [[7486, 7486], "mapped", [112]], [[7487, 7487], "mapped", [114]], [[7488, 7488], "mapped", [116]], [[7489, 7489], "mapped", [117]], [[7490, 7490], "mapped", [119]], [[7491, 7491], "mapped", [97]], [[7492, 7492], "mapped", [592]], [[7493, 7493], "mapped", [593]], [[7494, 7494], "mapped", [7426]], [[7495, 7495], "mapped", [98]], [[7496, 7496], "mapped", [100]], [[7497, 7497], "mapped", [101]], [[7498, 7498], "mapped", [601]], [[7499, 7499], "mapped", [603]], [[7500, 7500], "mapped", [604]], [[7501, 7501], "mapped", [103]], [[7502, 7502], "valid"], [[7503, 7503], "mapped", [107]], [[7504, 7504], "mapped", [109]], [[7505, 7505], "mapped", [331]], [[7506, 7506], "mapped", [111]], [[7507, 7507], "mapped", [596]], [[7508, 7508], "mapped", [7446]], [[7509, 7509], "mapped", [7447]], [[7510, 7510], "mapped", [112]], [[7511, 7511], "mapped", [116]], [[7512, 7512], "mapped", [117]], [[7513, 7513], "mapped", [7453]], [[7514, 7514], "mapped", [623]], [[7515, 7515], "mapped", [118]], [[7516, 7516], "mapped", [7461]], [[7517, 7517], "mapped", [946]], [[7518, 7518], "mapped", [947]], [[7519, 7519], "mapped", [948]], [[7520, 7520], "mapped", [966]], [[7521, 7521], "mapped", [967]], [[7522, 7522], "mapped", [105]], [[7523, 7523], "mapped", [114]], [[7524, 7524], "mapped", [117]], [[7525, 7525], "mapped", [118]], [[7526, 7526], "mapped", [946]], [[7527, 7527], "mapped", [947]], [[7528, 7528], "mapped", [961]], [[7529, 7529], "mapped", [966]], [[7530, 7530], "mapped", [967]], [[7531, 7531], "valid"], [[7532, 7543], "valid"], [[7544, 7544], "mapped", [1085]], [[7545, 7578], "valid"], [[7579, 7579], "mapped", [594]], [[7580, 7580], "mapped", [99]], [[7581, 7581], "mapped", [597]], [[7582, 7582], "mapped", [240]], [[7583, 7583], "mapped", [604]], [[7584, 7584], "mapped", [102]], [[7585, 7585], "mapped", [607]], [[7586, 7586], "mapped", [609]], [[7587, 7587], "mapped", [613]], [[7588, 7588], "mapped", [616]], [[7589, 7589], "mapped", [617]], [[7590, 7590], "mapped", [618]], [[7591, 7591], "mapped", [7547]], [[7592, 7592], "mapped", [669]], [[7593, 7593], "mapped", [621]], [[7594, 7594], "mapped", [7557]], [[7595, 7595], "mapped", [671]], [[7596, 7596], "mapped", [625]], [[7597, 7597], "mapped", [624]], [[7598, 7598], "mapped", [626]], [[7599, 7599], "mapped", [627]], [[7600, 7600], "mapped", [628]], [[7601, 7601], "mapped", [629]], [[7602, 7602], "mapped", [632]], [[7603, 7603], "mapped", [642]], [[7604, 7604], "mapped", [643]], [[7605, 7605], "mapped", [427]], [[7606, 7606], "mapped", [649]], [[7607, 7607], "mapped", [650]], [[7608, 7608], "mapped", [7452]], [[7609, 7609], "mapped", [651]], [[7610, 7610], "mapped", [652]], [[7611, 7611], "mapped", [122]], [[7612, 7612], "mapped", [656]], [[7613, 7613], "mapped", [657]], [[7614, 7614], "mapped", [658]], [[7615, 7615], "mapped", [952]], [[7616, 7619], "valid"], [[7620, 7626], "valid"], [[7627, 7654], "valid"], [[7655, 7669], "valid"], [[7670, 7675], "disallowed"], [[7676, 7676], "valid"], [[7677, 7677], "valid"], [[7678, 7679], "valid"], [[7680, 7680], "mapped", [7681]], [[7681, 7681], "valid"], [[7682, 7682], "mapped", [7683]], [[7683, 7683], "valid"], [[7684, 7684], "mapped", [7685]], [[7685, 7685], "valid"], [[7686, 7686], "mapped", [7687]], [[7687, 7687], "valid"], [[7688, 7688], "mapped", [7689]], [[7689, 7689], "valid"], [[7690, 7690], "mapped", [7691]], [[7691, 7691], "valid"], [[7692, 7692], "mapped", [7693]], [[7693, 7693], "valid"], [[7694, 7694], "mapped", [7695]], [[7695, 7695], "valid"], [[7696, 7696], "mapped", [7697]], [[7697, 7697], "valid"], [[7698, 7698], "mapped", [7699]], [[7699, 7699], "valid"], [[7700, 7700], "mapped", [7701]], [[7701, 7701], "valid"], [[7702, 7702], "mapped", [7703]], [[7703, 7703], "valid"], [[7704, 7704], "mapped", [7705]], [[7705, 7705], "valid"], [[7706, 7706], "mapped", [7707]], [[7707, 7707], "valid"], [[7708, 7708], "mapped", [7709]], [[7709, 7709], "valid"], [[7710, 7710], "mapped", [7711]], [[7711, 7711], "valid"], [[7712, 7712], "mapped", [7713]], [[7713, 7713], "valid"], [[7714, 7714], "mapped", [7715]], [[7715, 7715], "valid"], [[7716, 7716], "mapped", [7717]], [[7717, 7717], "valid"], [[7718, 7718], "mapped", [7719]], [[7719, 7719], "valid"], [[7720, 7720], "mapped", [7721]], [[7721, 7721], "valid"], [[7722, 7722], "mapped", [7723]], [[7723, 7723], "valid"], [[7724, 7724], "mapped", [7725]], [[7725, 7725], "valid"], [[7726, 7726], "mapped", [7727]], [[7727, 7727], "valid"], [[7728, 7728], "mapped", [7729]], [[7729, 7729], "valid"], [[7730, 7730], "mapped", [7731]], [[7731, 7731], "valid"], [[7732, 7732], "mapped", [7733]], [[7733, 7733], "valid"], [[7734, 7734], "mapped", [7735]], [[7735, 7735], "valid"], [[7736, 7736], "mapped", [7737]], [[7737, 7737], "valid"], [[7738, 7738], "mapped", [7739]], [[7739, 7739], "valid"], [[7740, 7740], "mapped", [7741]], [[7741, 7741], "valid"], [[7742, 7742], "mapped", [7743]], [[7743, 7743], "valid"], [[7744, 7744], "mapped", [7745]], [[7745, 7745], "valid"], [[7746, 7746], "mapped", [7747]], [[7747, 7747], "valid"], [[7748, 7748], "mapped", [7749]], [[7749, 7749], "valid"], [[7750, 7750], "mapped", [7751]], [[7751, 7751], "valid"], [[7752, 7752], "mapped", [7753]], [[7753, 7753], "valid"], [[7754, 7754], "mapped", [7755]], [[7755, 7755], "valid"], [[7756, 7756], "mapped", [7757]], [[7757, 7757], "valid"], [[7758, 7758], "mapped", [7759]], [[7759, 7759], "valid"], [[7760, 7760], "mapped", [7761]], [[7761, 7761], "valid"], [[7762, 7762], "mapped", [7763]], [[7763, 7763], "valid"], [[7764, 7764], "mapped", [7765]], [[7765, 7765], "valid"], [[7766, 7766], "mapped", [7767]], [[7767, 7767], "valid"], [[7768, 7768], "mapped", [7769]], [[7769, 7769], "valid"], [[7770, 7770], "mapped", [7771]], [[7771, 7771], "valid"], [[7772, 7772], "mapped", [7773]], [[7773, 7773], "valid"], [[7774, 7774], "mapped", [7775]], [[7775, 7775], "valid"], [[7776, 7776], "mapped", [7777]], [[7777, 7777], "valid"], [[7778, 7778], "mapped", [7779]], [[7779, 7779], "valid"], [[7780, 7780], "mapped", [7781]], [[7781, 7781], "valid"], [[7782, 7782], "mapped", [7783]], [[7783, 7783], "valid"], [[7784, 7784], "mapped", [7785]], [[7785, 7785], "valid"], [[7786, 7786], "mapped", [7787]], [[7787, 7787], "valid"], [[7788, 7788], "mapped", [7789]], [[7789, 7789], "valid"], [[7790, 7790], "mapped", [7791]], [[7791, 7791], "valid"], [[7792, 7792], "mapped", [7793]], [[7793, 7793], "valid"], [[7794, 7794], "mapped", [7795]], [[7795, 7795], "valid"], [[7796, 7796], "mapped", [7797]], [[7797, 7797], "valid"], [[7798, 7798], "mapped", [7799]], [[7799, 7799], "valid"], [[7800, 7800], "mapped", [7801]], [[7801, 7801], "valid"], [[7802, 7802], "mapped", [7803]], [[7803, 7803], "valid"], [[7804, 7804], "mapped", [7805]], [[7805, 7805], "valid"], [[7806, 7806], "mapped", [7807]], [[7807, 7807], "valid"], [[7808, 7808], "mapped", [7809]], [[7809, 7809], "valid"], [[7810, 7810], "mapped", [7811]], [[7811, 7811], "valid"], [[7812, 7812], "mapped", [7813]], [[7813, 7813], "valid"], [[7814, 7814], "mapped", [7815]], [[7815, 7815], "valid"], [[7816, 7816], "mapped", [7817]], [[7817, 7817], "valid"], [[7818, 7818], "mapped", [7819]], [[7819, 7819], "valid"], [[7820, 7820], "mapped", [7821]], [[7821, 7821], "valid"], [[7822, 7822], "mapped", [7823]], [[7823, 7823], "valid"], [[7824, 7824], "mapped", [7825]], [[7825, 7825], "valid"], [[7826, 7826], "mapped", [7827]], [[7827, 7827], "valid"], [[7828, 7828], "mapped", [7829]], [[7829, 7833], "valid"], [[7834, 7834], "mapped", [97, 702]], [[7835, 7835], "mapped", [7777]], [[7836, 7837], "valid"], [[7838, 7838], "mapped", [115, 115]], [[7839, 7839], "valid"], [[7840, 7840], "mapped", [7841]], [[7841, 7841], "valid"], [[7842, 7842], "mapped", [7843]], [[7843, 7843], "valid"], [[7844, 7844], "mapped", [7845]], [[7845, 7845], "valid"], [[7846, 7846], "mapped", [7847]], [[7847, 7847], "valid"], [[7848, 7848], "mapped", [7849]], [[7849, 7849], "valid"], [[7850, 7850], "mapped", [7851]], [[7851, 7851], "valid"], [[7852, 7852], "mapped", [7853]], [[7853, 7853], "valid"], [[7854, 7854], "mapped", [7855]], [[7855, 7855], "valid"], [[7856, 7856], "mapped", [7857]], [[7857, 7857], "valid"], [[7858, 7858], "mapped", [7859]], [[7859, 7859], "valid"], [[7860, 7860], "mapped", [7861]], [[7861, 7861], "valid"], [[7862, 7862], "mapped", [7863]], [[7863, 7863], "valid"], [[7864, 7864], "mapped", [7865]], [[7865, 7865], "valid"], [[7866, 7866], "mapped", [7867]], [[7867, 7867], "valid"], [[7868, 7868], "mapped", [7869]], [[7869, 7869], "valid"], [[7870, 7870], "mapped", [7871]], [[7871, 7871], "valid"], [[7872, 7872], "mapped", [7873]], [[7873, 7873], "valid"], [[7874, 7874], "mapped", [7875]], [[7875, 7875], "valid"], [[7876, 7876], "mapped", [7877]], [[7877, 7877], "valid"], [[7878, 7878], "mapped", [7879]], [[7879, 7879], "valid"], [[7880, 7880], "mapped", [7881]], [[7881, 7881], "valid"], [[7882, 7882], "mapped", [7883]], [[7883, 7883], "valid"], [[7884, 7884], "mapped", [7885]], [[7885, 7885], "valid"], [[7886, 7886], "mapped", [7887]], [[7887, 7887], "valid"], [[7888, 7888], "mapped", [7889]], [[7889, 7889], "valid"], [[7890, 7890], "mapped", [7891]], [[7891, 7891], "valid"], [[7892, 7892], "mapped", [7893]], [[7893, 7893], "valid"], [[7894, 7894], "mapped", [7895]], [[7895, 7895], "valid"], [[7896, 7896], "mapped", [7897]], [[7897, 7897], "valid"], [[7898, 7898], "mapped", [7899]], [[7899, 7899], "valid"], [[7900, 7900], "mapped", [7901]], [[7901, 7901], "valid"], [[7902, 7902], "mapped", [7903]], [[7903, 7903], "valid"], [[7904, 7904], "mapped", [7905]], [[7905, 7905], "valid"], [[7906, 7906], "mapped", [7907]], [[7907, 7907], "valid"], [[7908, 7908], "mapped", [7909]], [[7909, 7909], "valid"], [[7910, 7910], "mapped", [7911]], [[7911, 7911], "valid"], [[7912, 7912], "mapped", [7913]], [[7913, 7913], "valid"], [[7914, 7914], "mapped", [7915]], [[7915, 7915], "valid"], [[7916, 7916], "mapped", [7917]], [[7917, 7917], "valid"], [[7918, 7918], "mapped", [7919]], [[7919, 7919], "valid"], [[7920, 7920], "mapped", [7921]], [[7921, 7921], "valid"], [[7922, 7922], "mapped", [7923]], [[7923, 7923], "valid"], [[7924, 7924], "mapped", [7925]], [[7925, 7925], "valid"], [[7926, 7926], "mapped", [7927]], [[7927, 7927], "valid"], [[7928, 7928], "mapped", [7929]], [[7929, 7929], "valid"], [[7930, 7930], "mapped", [7931]], [[7931, 7931], "valid"], [[7932, 7932], "mapped", [7933]], [[7933, 7933], "valid"], [[7934, 7934], "mapped", [7935]], [[7935, 7935], "valid"], [[7936, 7943], "valid"], [[7944, 7944], "mapped", [7936]], [[7945, 7945], "mapped", [7937]], [[7946, 7946], "mapped", [7938]], [[7947, 7947], "mapped", [7939]], [[7948, 7948], "mapped", [7940]], [[7949, 7949], "mapped", [7941]], [[7950, 7950], "mapped", [7942]], [[7951, 7951], "mapped", [7943]], [[7952, 7957], "valid"], [[7958, 7959], "disallowed"], [[7960, 7960], "mapped", [7952]], [[7961, 7961], "mapped", [7953]], [[7962, 7962], "mapped", [7954]], [[7963, 7963], "mapped", [7955]], [[7964, 7964], "mapped", [7956]], [[7965, 7965], "mapped", [7957]], [[7966, 7967], "disallowed"], [[7968, 7975], "valid"], [[7976, 7976], "mapped", [7968]], [[7977, 7977], "mapped", [7969]], [[7978, 7978], "mapped", [7970]], [[7979, 7979], "mapped", [7971]], [[7980, 7980], "mapped", [7972]], [[7981, 7981], "mapped", [7973]], [[7982, 7982], "mapped", [7974]], [[7983, 7983], "mapped", [7975]], [[7984, 7991], "valid"], [[7992, 7992], "mapped", [7984]], [[7993, 7993], "mapped", [7985]], [[7994, 7994], "mapped", [7986]], [[7995, 7995], "mapped", [7987]], [[7996, 7996], "mapped", [7988]], [[7997, 7997], "mapped", [7989]], [[7998, 7998], "mapped", [7990]], [[7999, 7999], "mapped", [7991]], [[8e3, 8005], "valid"], [[8006, 8007], "disallowed"], [[8008, 8008], "mapped", [8e3]], [[8009, 8009], "mapped", [8001]], [[8010, 8010], "mapped", [8002]], [[8011, 8011], "mapped", [8003]], [[8012, 8012], "mapped", [8004]], [[8013, 8013], "mapped", [8005]], [[8014, 8015], "disallowed"], [[8016, 8023], "valid"], [[8024, 8024], "disallowed"], [[8025, 8025], "mapped", [8017]], [[8026, 8026], "disallowed"], [[8027, 8027], "mapped", [8019]], [[8028, 8028], "disallowed"], [[8029, 8029], "mapped", [8021]], [[8030, 8030], "disallowed"], [[8031, 8031], "mapped", [8023]], [[8032, 8039], "valid"], [[8040, 8040], "mapped", [8032]], [[8041, 8041], "mapped", [8033]], [[8042, 8042], "mapped", [8034]], [[8043, 8043], "mapped", [8035]], [[8044, 8044], "mapped", [8036]], [[8045, 8045], "mapped", [8037]], [[8046, 8046], "mapped", [8038]], [[8047, 8047], "mapped", [8039]], [[8048, 8048], "valid"], [[8049, 8049], "mapped", [940]], [[8050, 8050], "valid"], [[8051, 8051], "mapped", [941]], [[8052, 8052], "valid"], [[8053, 8053], "mapped", [942]], [[8054, 8054], "valid"], [[8055, 8055], "mapped", [943]], [[8056, 8056], "valid"], [[8057, 8057], "mapped", [972]], [[8058, 8058], "valid"], [[8059, 8059], "mapped", [973]], [[8060, 8060], "valid"], [[8061, 8061], "mapped", [974]], [[8062, 8063], "disallowed"], [[8064, 8064], "mapped", [7936, 953]], [[8065, 8065], "mapped", [7937, 953]], [[8066, 8066], "mapped", [7938, 953]], [[8067, 8067], "mapped", [7939, 953]], [[8068, 8068], "mapped", [7940, 953]], [[8069, 8069], "mapped", [7941, 953]], [[8070, 8070], "mapped", [7942, 953]], [[8071, 8071], "mapped", [7943, 953]], [[8072, 8072], "mapped", [7936, 953]], [[8073, 8073], "mapped", [7937, 953]], [[8074, 8074], "mapped", [7938, 953]], [[8075, 8075], "mapped", [7939, 953]], [[8076, 8076], "mapped", [7940, 953]], [[8077, 8077], "mapped", [7941, 953]], [[8078, 8078], "mapped", [7942, 953]], [[8079, 8079], "mapped", [7943, 953]], [[8080, 8080], "mapped", [7968, 953]], [[8081, 8081], "mapped", [7969, 953]], [[8082, 8082], "mapped", [7970, 953]], [[8083, 8083], "mapped", [7971, 953]], [[8084, 8084], "mapped", [7972, 953]], [[8085, 8085], "mapped", [7973, 953]], [[8086, 8086], "mapped", [7974, 953]], [[8087, 8087], "mapped", [7975, 953]], [[8088, 8088], "mapped", [7968, 953]], [[8089, 8089], "mapped", [7969, 953]], [[8090, 8090], "mapped", [7970, 953]], [[8091, 8091], "mapped", [7971, 953]], [[8092, 8092], "mapped", [7972, 953]], [[8093, 8093], "mapped", [7973, 953]], [[8094, 8094], "mapped", [7974, 953]], [[8095, 8095], "mapped", [7975, 953]], [[8096, 8096], "mapped", [8032, 953]], [[8097, 8097], "mapped", [8033, 953]], [[8098, 8098], "mapped", [8034, 953]], [[8099, 8099], "mapped", [8035, 953]], [[8100, 8100], "mapped", [8036, 953]], [[8101, 8101], "mapped", [8037, 953]], [[8102, 8102], "mapped", [8038, 953]], [[8103, 8103], "mapped", [8039, 953]], [[8104, 8104], "mapped", [8032, 953]], [[8105, 8105], "mapped", [8033, 953]], [[8106, 8106], "mapped", [8034, 953]], [[8107, 8107], "mapped", [8035, 953]], [[8108, 8108], "mapped", [8036, 953]], [[8109, 8109], "mapped", [8037, 953]], [[8110, 8110], "mapped", [8038, 953]], [[8111, 8111], "mapped", [8039, 953]], [[8112, 8113], "valid"], [[8114, 8114], "mapped", [8048, 953]], [[8115, 8115], "mapped", [945, 953]], [[8116, 8116], "mapped", [940, 953]], [[8117, 8117], "disallowed"], [[8118, 8118], "valid"], [[8119, 8119], "mapped", [8118, 953]], [[8120, 8120], "mapped", [8112]], [[8121, 8121], "mapped", [8113]], [[8122, 8122], "mapped", [8048]], [[8123, 8123], "mapped", [940]], [[8124, 8124], "mapped", [945, 953]], [[8125, 8125], "disallowed_STD3_mapped", [32, 787]], [[8126, 8126], "mapped", [953]], [[8127, 8127], "disallowed_STD3_mapped", [32, 787]], [[8128, 8128], "disallowed_STD3_mapped", [32, 834]], [[8129, 8129], "disallowed_STD3_mapped", [32, 776, 834]], [[8130, 8130], "mapped", [8052, 953]], [[8131, 8131], "mapped", [951, 953]], [[8132, 8132], "mapped", [942, 953]], [[8133, 8133], "disallowed"], [[8134, 8134], "valid"], [[8135, 8135], "mapped", [8134, 953]], [[8136, 8136], "mapped", [8050]], [[8137, 8137], "mapped", [941]], [[8138, 8138], "mapped", [8052]], [[8139, 8139], "mapped", [942]], [[8140, 8140], "mapped", [951, 953]], [[8141, 8141], "disallowed_STD3_mapped", [32, 787, 768]], [[8142, 8142], "disallowed_STD3_mapped", [32, 787, 769]], [[8143, 8143], "disallowed_STD3_mapped", [32, 787, 834]], [[8144, 8146], "valid"], [[8147, 8147], "mapped", [912]], [[8148, 8149], "disallowed"], [[8150, 8151], "valid"], [[8152, 8152], "mapped", [8144]], [[8153, 8153], "mapped", [8145]], [[8154, 8154], "mapped", [8054]], [[8155, 8155], "mapped", [943]], [[8156, 8156], "disallowed"], [[8157, 8157], "disallowed_STD3_mapped", [32, 788, 768]], [[8158, 8158], "disallowed_STD3_mapped", [32, 788, 769]], [[8159, 8159], "disallowed_STD3_mapped", [32, 788, 834]], [[8160, 8162], "valid"], [[8163, 8163], "mapped", [944]], [[8164, 8167], "valid"], [[8168, 8168], "mapped", [8160]], [[8169, 8169], "mapped", [8161]], [[8170, 8170], "mapped", [8058]], [[8171, 8171], "mapped", [973]], [[8172, 8172], "mapped", [8165]], [[8173, 8173], "disallowed_STD3_mapped", [32, 776, 768]], [[8174, 8174], "disallowed_STD3_mapped", [32, 776, 769]], [[8175, 8175], "disallowed_STD3_mapped", [96]], [[8176, 8177], "disallowed"], [[8178, 8178], "mapped", [8060, 953]], [[8179, 8179], "mapped", [969, 953]], [[8180, 8180], "mapped", [974, 953]], [[8181, 8181], "disallowed"], [[8182, 8182], "valid"], [[8183, 8183], "mapped", [8182, 953]], [[8184, 8184], "mapped", [8056]], [[8185, 8185], "mapped", [972]], [[8186, 8186], "mapped", [8060]], [[8187, 8187], "mapped", [974]], [[8188, 8188], "mapped", [969, 953]], [[8189, 8189], "disallowed_STD3_mapped", [32, 769]], [[8190, 8190], "disallowed_STD3_mapped", [32, 788]], [[8191, 8191], "disallowed"], [[8192, 8202], "disallowed_STD3_mapped", [32]], [[8203, 8203], "ignored"], [[8204, 8205], "deviation", []], [[8206, 8207], "disallowed"], [[8208, 8208], "valid", [], "NV8"], [[8209, 8209], "mapped", [8208]], [[8210, 8214], "valid", [], "NV8"], [[8215, 8215], "disallowed_STD3_mapped", [32, 819]], [[8216, 8227], "valid", [], "NV8"], [[8228, 8230], "disallowed"], [[8231, 8231], "valid", [], "NV8"], [[8232, 8238], "disallowed"], [[8239, 8239], "disallowed_STD3_mapped", [32]], [[8240, 8242], "valid", [], "NV8"], [[8243, 8243], "mapped", [8242, 8242]], [[8244, 8244], "mapped", [8242, 8242, 8242]], [[8245, 8245], "valid", [], "NV8"], [[8246, 8246], "mapped", [8245, 8245]], [[8247, 8247], "mapped", [8245, 8245, 8245]], [[8248, 8251], "valid", [], "NV8"], [[8252, 8252], "disallowed_STD3_mapped", [33, 33]], [[8253, 8253], "valid", [], "NV8"], [[8254, 8254], "disallowed_STD3_mapped", [32, 773]], [[8255, 8262], "valid", [], "NV8"], [[8263, 8263], "disallowed_STD3_mapped", [63, 63]], [[8264, 8264], "disallowed_STD3_mapped", [63, 33]], [[8265, 8265], "disallowed_STD3_mapped", [33, 63]], [[8266, 8269], "valid", [], "NV8"], [[8270, 8274], "valid", [], "NV8"], [[8275, 8276], "valid", [], "NV8"], [[8277, 8278], "valid", [], "NV8"], [[8279, 8279], "mapped", [8242, 8242, 8242, 8242]], [[8280, 8286], "valid", [], "NV8"], [[8287, 8287], "disallowed_STD3_mapped", [32]], [[8288, 8288], "ignored"], [[8289, 8291], "disallowed"], [[8292, 8292], "ignored"], [[8293, 8293], "disallowed"], [[8294, 8297], "disallowed"], [[8298, 8303], "disallowed"], [[8304, 8304], "mapped", [48]], [[8305, 8305], "mapped", [105]], [[8306, 8307], "disallowed"], [[8308, 8308], "mapped", [52]], [[8309, 8309], "mapped", [53]], [[8310, 8310], "mapped", [54]], [[8311, 8311], "mapped", [55]], [[8312, 8312], "mapped", [56]], [[8313, 8313], "mapped", [57]], [[8314, 8314], "disallowed_STD3_mapped", [43]], [[8315, 8315], "mapped", [8722]], [[8316, 8316], "disallowed_STD3_mapped", [61]], [[8317, 8317], "disallowed_STD3_mapped", [40]], [[8318, 8318], "disallowed_STD3_mapped", [41]], [[8319, 8319], "mapped", [110]], [[8320, 8320], "mapped", [48]], [[8321, 8321], "mapped", [49]], [[8322, 8322], "mapped", [50]], [[8323, 8323], "mapped", [51]], [[8324, 8324], "mapped", [52]], [[8325, 8325], "mapped", [53]], [[8326, 8326], "mapped", [54]], [[8327, 8327], "mapped", [55]], [[8328, 8328], "mapped", [56]], [[8329, 8329], "mapped", [57]], [[8330, 8330], "disallowed_STD3_mapped", [43]], [[8331, 8331], "mapped", [8722]], [[8332, 8332], "disallowed_STD3_mapped", [61]], [[8333, 8333], "disallowed_STD3_mapped", [40]], [[8334, 8334], "disallowed_STD3_mapped", [41]], [[8335, 8335], "disallowed"], [[8336, 8336], "mapped", [97]], [[8337, 8337], "mapped", [101]], [[8338, 8338], "mapped", [111]], [[8339, 8339], "mapped", [120]], [[8340, 8340], "mapped", [601]], [[8341, 8341], "mapped", [104]], [[8342, 8342], "mapped", [107]], [[8343, 8343], "mapped", [108]], [[8344, 8344], "mapped", [109]], [[8345, 8345], "mapped", [110]], [[8346, 8346], "mapped", [112]], [[8347, 8347], "mapped", [115]], [[8348, 8348], "mapped", [116]], [[8349, 8351], "disallowed"], [[8352, 8359], "valid", [], "NV8"], [[8360, 8360], "mapped", [114, 115]], [[8361, 8362], "valid", [], "NV8"], [[8363, 8363], "valid", [], "NV8"], [[8364, 8364], "valid", [], "NV8"], [[8365, 8367], "valid", [], "NV8"], [[8368, 8369], "valid", [], "NV8"], [[8370, 8373], "valid", [], "NV8"], [[8374, 8376], "valid", [], "NV8"], [[8377, 8377], "valid", [], "NV8"], [[8378, 8378], "valid", [], "NV8"], [[8379, 8381], "valid", [], "NV8"], [[8382, 8382], "valid", [], "NV8"], [[8383, 8399], "disallowed"], [[8400, 8417], "valid", [], "NV8"], [[8418, 8419], "valid", [], "NV8"], [[8420, 8426], "valid", [], "NV8"], [[8427, 8427], "valid", [], "NV8"], [[8428, 8431], "valid", [], "NV8"], [[8432, 8432], "valid", [], "NV8"], [[8433, 8447], "disallowed"], [[8448, 8448], "disallowed_STD3_mapped", [97, 47, 99]], [[8449, 8449], "disallowed_STD3_mapped", [97, 47, 115]], [[8450, 8450], "mapped", [99]], [[8451, 8451], "mapped", [176, 99]], [[8452, 8452], "valid", [], "NV8"], [[8453, 8453], "disallowed_STD3_mapped", [99, 47, 111]], [[8454, 8454], "disallowed_STD3_mapped", [99, 47, 117]], [[8455, 8455], "mapped", [603]], [[8456, 8456], "valid", [], "NV8"], [[8457, 8457], "mapped", [176, 102]], [[8458, 8458], "mapped", [103]], [[8459, 8462], "mapped", [104]], [[8463, 8463], "mapped", [295]], [[8464, 8465], "mapped", [105]], [[8466, 8467], "mapped", [108]], [[8468, 8468], "valid", [], "NV8"], [[8469, 8469], "mapped", [110]], [[8470, 8470], "mapped", [110, 111]], [[8471, 8472], "valid", [], "NV8"], [[8473, 8473], "mapped", [112]], [[8474, 8474], "mapped", [113]], [[8475, 8477], "mapped", [114]], [[8478, 8479], "valid", [], "NV8"], [[8480, 8480], "mapped", [115, 109]], [[8481, 8481], "mapped", [116, 101, 108]], [[8482, 8482], "mapped", [116, 109]], [[8483, 8483], "valid", [], "NV8"], [[8484, 8484], "mapped", [122]], [[8485, 8485], "valid", [], "NV8"], [[8486, 8486], "mapped", [969]], [[8487, 8487], "valid", [], "NV8"], [[8488, 8488], "mapped", [122]], [[8489, 8489], "valid", [], "NV8"], [[8490, 8490], "mapped", [107]], [[8491, 8491], "mapped", [229]], [[8492, 8492], "mapped", [98]], [[8493, 8493], "mapped", [99]], [[8494, 8494], "valid", [], "NV8"], [[8495, 8496], "mapped", [101]], [[8497, 8497], "mapped", [102]], [[8498, 8498], "disallowed"], [[8499, 8499], "mapped", [109]], [[8500, 8500], "mapped", [111]], [[8501, 8501], "mapped", [1488]], [[8502, 8502], "mapped", [1489]], [[8503, 8503], "mapped", [1490]], [[8504, 8504], "mapped", [1491]], [[8505, 8505], "mapped", [105]], [[8506, 8506], "valid", [], "NV8"], [[8507, 8507], "mapped", [102, 97, 120]], [[8508, 8508], "mapped", [960]], [[8509, 8510], "mapped", [947]], [[8511, 8511], "mapped", [960]], [[8512, 8512], "mapped", [8721]], [[8513, 8516], "valid", [], "NV8"], [[8517, 8518], "mapped", [100]], [[8519, 8519], "mapped", [101]], [[8520, 8520], "mapped", [105]], [[8521, 8521], "mapped", [106]], [[8522, 8523], "valid", [], "NV8"], [[8524, 8524], "valid", [], "NV8"], [[8525, 8525], "valid", [], "NV8"], [[8526, 8526], "valid"], [[8527, 8527], "valid", [], "NV8"], [[8528, 8528], "mapped", [49, 8260, 55]], [[8529, 8529], "mapped", [49, 8260, 57]], [[8530, 8530], "mapped", [49, 8260, 49, 48]], [[8531, 8531], "mapped", [49, 8260, 51]], [[8532, 8532], "mapped", [50, 8260, 51]], [[8533, 8533], "mapped", [49, 8260, 53]], [[8534, 8534], "mapped", [50, 8260, 53]], [[8535, 8535], "mapped", [51, 8260, 53]], [[8536, 8536], "mapped", [52, 8260, 53]], [[8537, 8537], "mapped", [49, 8260, 54]], [[8538, 8538], "mapped", [53, 8260, 54]], [[8539, 8539], "mapped", [49, 8260, 56]], [[8540, 8540], "mapped", [51, 8260, 56]], [[8541, 8541], "mapped", [53, 8260, 56]], [[8542, 8542], "mapped", [55, 8260, 56]], [[8543, 8543], "mapped", [49, 8260]], [[8544, 8544], "mapped", [105]], [[8545, 8545], "mapped", [105, 105]], [[8546, 8546], "mapped", [105, 105, 105]], [[8547, 8547], "mapped", [105, 118]], [[8548, 8548], "mapped", [118]], [[8549, 8549], "mapped", [118, 105]], [[8550, 8550], "mapped", [118, 105, 105]], [[8551, 8551], "mapped", [118, 105, 105, 105]], [[8552, 8552], "mapped", [105, 120]], [[8553, 8553], "mapped", [120]], [[8554, 8554], "mapped", [120, 105]], [[8555, 8555], "mapped", [120, 105, 105]], [[8556, 8556], "mapped", [108]], [[8557, 8557], "mapped", [99]], [[8558, 8558], "mapped", [100]], [[8559, 8559], "mapped", [109]], [[8560, 8560], "mapped", [105]], [[8561, 8561], "mapped", [105, 105]], [[8562, 8562], "mapped", [105, 105, 105]], [[8563, 8563], "mapped", [105, 118]], [[8564, 8564], "mapped", [118]], [[8565, 8565], "mapped", [118, 105]], [[8566, 8566], "mapped", [118, 105, 105]], [[8567, 8567], "mapped", [118, 105, 105, 105]], [[8568, 8568], "mapped", [105, 120]], [[8569, 8569], "mapped", [120]], [[8570, 8570], "mapped", [120, 105]], [[8571, 8571], "mapped", [120, 105, 105]], [[8572, 8572], "mapped", [108]], [[8573, 8573], "mapped", [99]], [[8574, 8574], "mapped", [100]], [[8575, 8575], "mapped", [109]], [[8576, 8578], "valid", [], "NV8"], [[8579, 8579], "disallowed"], [[8580, 8580], "valid"], [[8581, 8584], "valid", [], "NV8"], [[8585, 8585], "mapped", [48, 8260, 51]], [[8586, 8587], "valid", [], "NV8"], [[8588, 8591], "disallowed"], [[8592, 8682], "valid", [], "NV8"], [[8683, 8691], "valid", [], "NV8"], [[8692, 8703], "valid", [], "NV8"], [[8704, 8747], "valid", [], "NV8"], [[8748, 8748], "mapped", [8747, 8747]], [[8749, 8749], "mapped", [8747, 8747, 8747]], [[8750, 8750], "valid", [], "NV8"], [[8751, 8751], "mapped", [8750, 8750]], [[8752, 8752], "mapped", [8750, 8750, 8750]], [[8753, 8799], "valid", [], "NV8"], [[8800, 8800], "disallowed_STD3_valid"], [[8801, 8813], "valid", [], "NV8"], [[8814, 8815], "disallowed_STD3_valid"], [[8816, 8945], "valid", [], "NV8"], [[8946, 8959], "valid", [], "NV8"], [[8960, 8960], "valid", [], "NV8"], [[8961, 8961], "valid", [], "NV8"], [[8962, 9e3], "valid", [], "NV8"], [[9001, 9001], "mapped", [12296]], [[9002, 9002], "mapped", [12297]], [[9003, 9082], "valid", [], "NV8"], [[9083, 9083], "valid", [], "NV8"], [[9084, 9084], "valid", [], "NV8"], [[9085, 9114], "valid", [], "NV8"], [[9115, 9166], "valid", [], "NV8"], [[9167, 9168], "valid", [], "NV8"], [[9169, 9179], "valid", [], "NV8"], [[9180, 9191], "valid", [], "NV8"], [[9192, 9192], "valid", [], "NV8"], [[9193, 9203], "valid", [], "NV8"], [[9204, 9210], "valid", [], "NV8"], [[9211, 9215], "disallowed"], [[9216, 9252], "valid", [], "NV8"], [[9253, 9254], "valid", [], "NV8"], [[9255, 9279], "disallowed"], [[9280, 9290], "valid", [], "NV8"], [[9291, 9311], "disallowed"], [[9312, 9312], "mapped", [49]], [[9313, 9313], "mapped", [50]], [[9314, 9314], "mapped", [51]], [[9315, 9315], "mapped", [52]], [[9316, 9316], "mapped", [53]], [[9317, 9317], "mapped", [54]], [[9318, 9318], "mapped", [55]], [[9319, 9319], "mapped", [56]], [[9320, 9320], "mapped", [57]], [[9321, 9321], "mapped", [49, 48]], [[9322, 9322], "mapped", [49, 49]], [[9323, 9323], "mapped", [49, 50]], [[9324, 9324], "mapped", [49, 51]], [[9325, 9325], "mapped", [49, 52]], [[9326, 9326], "mapped", [49, 53]], [[9327, 9327], "mapped", [49, 54]], [[9328, 9328], "mapped", [49, 55]], [[9329, 9329], "mapped", [49, 56]], [[9330, 9330], "mapped", [49, 57]], [[9331, 9331], "mapped", [50, 48]], [[9332, 9332], "disallowed_STD3_mapped", [40, 49, 41]], [[9333, 9333], "disallowed_STD3_mapped", [40, 50, 41]], [[9334, 9334], "disallowed_STD3_mapped", [40, 51, 41]], [[9335, 9335], "disallowed_STD3_mapped", [40, 52, 41]], [[9336, 9336], "disallowed_STD3_mapped", [40, 53, 41]], [[9337, 9337], "disallowed_STD3_mapped", [40, 54, 41]], [[9338, 9338], "disallowed_STD3_mapped", [40, 55, 41]], [[9339, 9339], "disallowed_STD3_mapped", [40, 56, 41]], [[9340, 9340], "disallowed_STD3_mapped", [40, 57, 41]], [[9341, 9341], "disallowed_STD3_mapped", [40, 49, 48, 41]], [[9342, 9342], "disallowed_STD3_mapped", [40, 49, 49, 41]], [[9343, 9343], "disallowed_STD3_mapped", [40, 49, 50, 41]], [[9344, 9344], "disallowed_STD3_mapped", [40, 49, 51, 41]], [[9345, 9345], "disallowed_STD3_mapped", [40, 49, 52, 41]], [[9346, 9346], "disallowed_STD3_mapped", [40, 49, 53, 41]], [[9347, 9347], "disallowed_STD3_mapped", [40, 49, 54, 41]], [[9348, 9348], "disallowed_STD3_mapped", [40, 49, 55, 41]], [[9349, 9349], "disallowed_STD3_mapped", [40, 49, 56, 41]], [[9350, 9350], "disallowed_STD3_mapped", [40, 49, 57, 41]], [[9351, 9351], "disallowed_STD3_mapped", [40, 50, 48, 41]], [[9352, 9371], "disallowed"], [[9372, 9372], "disallowed_STD3_mapped", [40, 97, 41]], [[9373, 9373], "disallowed_STD3_mapped", [40, 98, 41]], [[9374, 9374], "disallowed_STD3_mapped", [40, 99, 41]], [[9375, 9375], "disallowed_STD3_mapped", [40, 100, 41]], [[9376, 9376], "disallowed_STD3_mapped", [40, 101, 41]], [[9377, 9377], "disallowed_STD3_mapped", [40, 102, 41]], [[9378, 9378], "disallowed_STD3_mapped", [40, 103, 41]], [[9379, 9379], "disallowed_STD3_mapped", [40, 104, 41]], [[9380, 9380], "disallowed_STD3_mapped", [40, 105, 41]], [[9381, 9381], "disallowed_STD3_mapped", [40, 106, 41]], [[9382, 9382], "disallowed_STD3_mapped", [40, 107, 41]], [[9383, 9383], "disallowed_STD3_mapped", [40, 108, 41]], [[9384, 9384], "disallowed_STD3_mapped", [40, 109, 41]], [[9385, 9385], "disallowed_STD3_mapped", [40, 110, 41]], [[9386, 9386], "disallowed_STD3_mapped", [40, 111, 41]], [[9387, 9387], "disallowed_STD3_mapped", [40, 112, 41]], [[9388, 9388], "disallowed_STD3_mapped", [40, 113, 41]], [[9389, 9389], "disallowed_STD3_mapped", [40, 114, 41]], [[9390, 9390], "disallowed_STD3_mapped", [40, 115, 41]], [[9391, 9391], "disallowed_STD3_mapped", [40, 116, 41]], [[9392, 9392], "disallowed_STD3_mapped", [40, 117, 41]], [[9393, 9393], "disallowed_STD3_mapped", [40, 118, 41]], [[9394, 9394], "disallowed_STD3_mapped", [40, 119, 41]], [[9395, 9395], "disallowed_STD3_mapped", [40, 120, 41]], [[9396, 9396], "disallowed_STD3_mapped", [40, 121, 41]], [[9397, 9397], "disallowed_STD3_mapped", [40, 122, 41]], [[9398, 9398], "mapped", [97]], [[9399, 9399], "mapped", [98]], [[9400, 9400], "mapped", [99]], [[9401, 9401], "mapped", [100]], [[9402, 9402], "mapped", [101]], [[9403, 9403], "mapped", [102]], [[9404, 9404], "mapped", [103]], [[9405, 9405], "mapped", [104]], [[9406, 9406], "mapped", [105]], [[9407, 9407], "mapped", [106]], [[9408, 9408], "mapped", [107]], [[9409, 9409], "mapped", [108]], [[9410, 9410], "mapped", [109]], [[9411, 9411], "mapped", [110]], [[9412, 9412], "mapped", [111]], [[9413, 9413], "mapped", [112]], [[9414, 9414], "mapped", [113]], [[9415, 9415], "mapped", [114]], [[9416, 9416], "mapped", [115]], [[9417, 9417], "mapped", [116]], [[9418, 9418], "mapped", [117]], [[9419, 9419], "mapped", [118]], [[9420, 9420], "mapped", [119]], [[9421, 9421], "mapped", [120]], [[9422, 9422], "mapped", [121]], [[9423, 9423], "mapped", [122]], [[9424, 9424], "mapped", [97]], [[9425, 9425], "mapped", [98]], [[9426, 9426], "mapped", [99]], [[9427, 9427], "mapped", [100]], [[9428, 9428], "mapped", [101]], [[9429, 9429], "mapped", [102]], [[9430, 9430], "mapped", [103]], [[9431, 9431], "mapped", [104]], [[9432, 9432], "mapped", [105]], [[9433, 9433], "mapped", [106]], [[9434, 9434], "mapped", [107]], [[9435, 9435], "mapped", [108]], [[9436, 9436], "mapped", [109]], [[9437, 9437], "mapped", [110]], [[9438, 9438], "mapped", [111]], [[9439, 9439], "mapped", [112]], [[9440, 9440], "mapped", [113]], [[9441, 9441], "mapped", [114]], [[9442, 9442], "mapped", [115]], [[9443, 9443], "mapped", [116]], [[9444, 9444], "mapped", [117]], [[9445, 9445], "mapped", [118]], [[9446, 9446], "mapped", [119]], [[9447, 9447], "mapped", [120]], [[9448, 9448], "mapped", [121]], [[9449, 9449], "mapped", [122]], [[9450, 9450], "mapped", [48]], [[9451, 9470], "valid", [], "NV8"], [[9471, 9471], "valid", [], "NV8"], [[9472, 9621], "valid", [], "NV8"], [[9622, 9631], "valid", [], "NV8"], [[9632, 9711], "valid", [], "NV8"], [[9712, 9719], "valid", [], "NV8"], [[9720, 9727], "valid", [], "NV8"], [[9728, 9747], "valid", [], "NV8"], [[9748, 9749], "valid", [], "NV8"], [[9750, 9751], "valid", [], "NV8"], [[9752, 9752], "valid", [], "NV8"], [[9753, 9753], "valid", [], "NV8"], [[9754, 9839], "valid", [], "NV8"], [[9840, 9841], "valid", [], "NV8"], [[9842, 9853], "valid", [], "NV8"], [[9854, 9855], "valid", [], "NV8"], [[9856, 9865], "valid", [], "NV8"], [[9866, 9873], "valid", [], "NV8"], [[9874, 9884], "valid", [], "NV8"], [[9885, 9885], "valid", [], "NV8"], [[9886, 9887], "valid", [], "NV8"], [[9888, 9889], "valid", [], "NV8"], [[9890, 9905], "valid", [], "NV8"], [[9906, 9906], "valid", [], "NV8"], [[9907, 9916], "valid", [], "NV8"], [[9917, 9919], "valid", [], "NV8"], [[9920, 9923], "valid", [], "NV8"], [[9924, 9933], "valid", [], "NV8"], [[9934, 9934], "valid", [], "NV8"], [[9935, 9953], "valid", [], "NV8"], [[9954, 9954], "valid", [], "NV8"], [[9955, 9955], "valid", [], "NV8"], [[9956, 9959], "valid", [], "NV8"], [[9960, 9983], "valid", [], "NV8"], [[9984, 9984], "valid", [], "NV8"], [[9985, 9988], "valid", [], "NV8"], [[9989, 9989], "valid", [], "NV8"], [[9990, 9993], "valid", [], "NV8"], [[9994, 9995], "valid", [], "NV8"], [[9996, 10023], "valid", [], "NV8"], [[10024, 10024], "valid", [], "NV8"], [[10025, 10059], "valid", [], "NV8"], [[10060, 10060], "valid", [], "NV8"], [[10061, 10061], "valid", [], "NV8"], [[10062, 10062], "valid", [], "NV8"], [[10063, 10066], "valid", [], "NV8"], [[10067, 10069], "valid", [], "NV8"], [[10070, 10070], "valid", [], "NV8"], [[10071, 10071], "valid", [], "NV8"], [[10072, 10078], "valid", [], "NV8"], [[10079, 10080], "valid", [], "NV8"], [[10081, 10087], "valid", [], "NV8"], [[10088, 10101], "valid", [], "NV8"], [[10102, 10132], "valid", [], "NV8"], [[10133, 10135], "valid", [], "NV8"], [[10136, 10159], "valid", [], "NV8"], [[10160, 10160], "valid", [], "NV8"], [[10161, 10174], "valid", [], "NV8"], [[10175, 10175], "valid", [], "NV8"], [[10176, 10182], "valid", [], "NV8"], [[10183, 10186], "valid", [], "NV8"], [[10187, 10187], "valid", [], "NV8"], [[10188, 10188], "valid", [], "NV8"], [[10189, 10189], "valid", [], "NV8"], [[10190, 10191], "valid", [], "NV8"], [[10192, 10219], "valid", [], "NV8"], [[10220, 10223], "valid", [], "NV8"], [[10224, 10239], "valid", [], "NV8"], [[10240, 10495], "valid", [], "NV8"], [[10496, 10763], "valid", [], "NV8"], [[10764, 10764], "mapped", [8747, 8747, 8747, 8747]], [[10765, 10867], "valid", [], "NV8"], [[10868, 10868], "disallowed_STD3_mapped", [58, 58, 61]], [[10869, 10869], "disallowed_STD3_mapped", [61, 61]], [[10870, 10870], "disallowed_STD3_mapped", [61, 61, 61]], [[10871, 10971], "valid", [], "NV8"], [[10972, 10972], "mapped", [10973, 824]], [[10973, 11007], "valid", [], "NV8"], [[11008, 11021], "valid", [], "NV8"], [[11022, 11027], "valid", [], "NV8"], [[11028, 11034], "valid", [], "NV8"], [[11035, 11039], "valid", [], "NV8"], [[11040, 11043], "valid", [], "NV8"], [[11044, 11084], "valid", [], "NV8"], [[11085, 11087], "valid", [], "NV8"], [[11088, 11092], "valid", [], "NV8"], [[11093, 11097], "valid", [], "NV8"], [[11098, 11123], "valid", [], "NV8"], [[11124, 11125], "disallowed"], [[11126, 11157], "valid", [], "NV8"], [[11158, 11159], "disallowed"], [[11160, 11193], "valid", [], "NV8"], [[11194, 11196], "disallowed"], [[11197, 11208], "valid", [], "NV8"], [[11209, 11209], "disallowed"], [[11210, 11217], "valid", [], "NV8"], [[11218, 11243], "disallowed"], [[11244, 11247], "valid", [], "NV8"], [[11248, 11263], "disallowed"], [[11264, 11264], "mapped", [11312]], [[11265, 11265], "mapped", [11313]], [[11266, 11266], "mapped", [11314]], [[11267, 11267], "mapped", [11315]], [[11268, 11268], "mapped", [11316]], [[11269, 11269], "mapped", [11317]], [[11270, 11270], "mapped", [11318]], [[11271, 11271], "mapped", [11319]], [[11272, 11272], "mapped", [11320]], [[11273, 11273], "mapped", [11321]], [[11274, 11274], "mapped", [11322]], [[11275, 11275], "mapped", [11323]], [[11276, 11276], "mapped", [11324]], [[11277, 11277], "mapped", [11325]], [[11278, 11278], "mapped", [11326]], [[11279, 11279], "mapped", [11327]], [[11280, 11280], "mapped", [11328]], [[11281, 11281], "mapped", [11329]], [[11282, 11282], "mapped", [11330]], [[11283, 11283], "mapped", [11331]], [[11284, 11284], "mapped", [11332]], [[11285, 11285], "mapped", [11333]], [[11286, 11286], "mapped", [11334]], [[11287, 11287], "mapped", [11335]], [[11288, 11288], "mapped", [11336]], [[11289, 11289], "mapped", [11337]], [[11290, 11290], "mapped", [11338]], [[11291, 11291], "mapped", [11339]], [[11292, 11292], "mapped", [11340]], [[11293, 11293], "mapped", [11341]], [[11294, 11294], "mapped", [11342]], [[11295, 11295], "mapped", [11343]], [[11296, 11296], "mapped", [11344]], [[11297, 11297], "mapped", [11345]], [[11298, 11298], "mapped", [11346]], [[11299, 11299], "mapped", [11347]], [[11300, 11300], "mapped", [11348]], [[11301, 11301], "mapped", [11349]], [[11302, 11302], "mapped", [11350]], [[11303, 11303], "mapped", [11351]], [[11304, 11304], "mapped", [11352]], [[11305, 11305], "mapped", [11353]], [[11306, 11306], "mapped", [11354]], [[11307, 11307], "mapped", [11355]], [[11308, 11308], "mapped", [11356]], [[11309, 11309], "mapped", [11357]], [[11310, 11310], "mapped", [11358]], [[11311, 11311], "disallowed"], [[11312, 11358], "valid"], [[11359, 11359], "disallowed"], [[11360, 11360], "mapped", [11361]], [[11361, 11361], "valid"], [[11362, 11362], "mapped", [619]], [[11363, 11363], "mapped", [7549]], [[11364, 11364], "mapped", [637]], [[11365, 11366], "valid"], [[11367, 11367], "mapped", [11368]], [[11368, 11368], "valid"], [[11369, 11369], "mapped", [11370]], [[11370, 11370], "valid"], [[11371, 11371], "mapped", [11372]], [[11372, 11372], "valid"], [[11373, 11373], "mapped", [593]], [[11374, 11374], "mapped", [625]], [[11375, 11375], "mapped", [592]], [[11376, 11376], "mapped", [594]], [[11377, 11377], "valid"], [[11378, 11378], "mapped", [11379]], [[11379, 11379], "valid"], [[11380, 11380], "valid"], [[11381, 11381], "mapped", [11382]], [[11382, 11383], "valid"], [[11384, 11387], "valid"], [[11388, 11388], "mapped", [106]], [[11389, 11389], "mapped", [118]], [[11390, 11390], "mapped", [575]], [[11391, 11391], "mapped", [576]], [[11392, 11392], "mapped", [11393]], [[11393, 11393], "valid"], [[11394, 11394], "mapped", [11395]], [[11395, 11395], "valid"], [[11396, 11396], "mapped", [11397]], [[11397, 11397], "valid"], [[11398, 11398], "mapped", [11399]], [[11399, 11399], "valid"], [[11400, 11400], "mapped", [11401]], [[11401, 11401], "valid"], [[11402, 11402], "mapped", [11403]], [[11403, 11403], "valid"], [[11404, 11404], "mapped", [11405]], [[11405, 11405], "valid"], [[11406, 11406], "mapped", [11407]], [[11407, 11407], "valid"], [[11408, 11408], "mapped", [11409]], [[11409, 11409], "valid"], [[11410, 11410], "mapped", [11411]], [[11411, 11411], "valid"], [[11412, 11412], "mapped", [11413]], [[11413, 11413], "valid"], [[11414, 11414], "mapped", [11415]], [[11415, 11415], "valid"], [[11416, 11416], "mapped", [11417]], [[11417, 11417], "valid"], [[11418, 11418], "mapped", [11419]], [[11419, 11419], "valid"], [[11420, 11420], "mapped", [11421]], [[11421, 11421], "valid"], [[11422, 11422], "mapped", [11423]], [[11423, 11423], "valid"], [[11424, 11424], "mapped", [11425]], [[11425, 11425], "valid"], [[11426, 11426], "mapped", [11427]], [[11427, 11427], "valid"], [[11428, 11428], "mapped", [11429]], [[11429, 11429], "valid"], [[11430, 11430], "mapped", [11431]], [[11431, 11431], "valid"], [[11432, 11432], "mapped", [11433]], [[11433, 11433], "valid"], [[11434, 11434], "mapped", [11435]], [[11435, 11435], "valid"], [[11436, 11436], "mapped", [11437]], [[11437, 11437], "valid"], [[11438, 11438], "mapped", [11439]], [[11439, 11439], "valid"], [[11440, 11440], "mapped", [11441]], [[11441, 11441], "valid"], [[11442, 11442], "mapped", [11443]], [[11443, 11443], "valid"], [[11444, 11444], "mapped", [11445]], [[11445, 11445], "valid"], [[11446, 11446], "mapped", [11447]], [[11447, 11447], "valid"], [[11448, 11448], "mapped", [11449]], [[11449, 11449], "valid"], [[11450, 11450], "mapped", [11451]], [[11451, 11451], "valid"], [[11452, 11452], "mapped", [11453]], [[11453, 11453], "valid"], [[11454, 11454], "mapped", [11455]], [[11455, 11455], "valid"], [[11456, 11456], "mapped", [11457]], [[11457, 11457], "valid"], [[11458, 11458], "mapped", [11459]], [[11459, 11459], "valid"], [[11460, 11460], "mapped", [11461]], [[11461, 11461], "valid"], [[11462, 11462], "mapped", [11463]], [[11463, 11463], "valid"], [[11464, 11464], "mapped", [11465]], [[11465, 11465], "valid"], [[11466, 11466], "mapped", [11467]], [[11467, 11467], "valid"], [[11468, 11468], "mapped", [11469]], [[11469, 11469], "valid"], [[11470, 11470], "mapped", [11471]], [[11471, 11471], "valid"], [[11472, 11472], "mapped", [11473]], [[11473, 11473], "valid"], [[11474, 11474], "mapped", [11475]], [[11475, 11475], "valid"], [[11476, 11476], "mapped", [11477]], [[11477, 11477], "valid"], [[11478, 11478], "mapped", [11479]], [[11479, 11479], "valid"], [[11480, 11480], "mapped", [11481]], [[11481, 11481], "valid"], [[11482, 11482], "mapped", [11483]], [[11483, 11483], "valid"], [[11484, 11484], "mapped", [11485]], [[11485, 11485], "valid"], [[11486, 11486], "mapped", [11487]], [[11487, 11487], "valid"], [[11488, 11488], "mapped", [11489]], [[11489, 11489], "valid"], [[11490, 11490], "mapped", [11491]], [[11491, 11492], "valid"], [[11493, 11498], "valid", [], "NV8"], [[11499, 11499], "mapped", [11500]], [[11500, 11500], "valid"], [[11501, 11501], "mapped", [11502]], [[11502, 11505], "valid"], [[11506, 11506], "mapped", [11507]], [[11507, 11507], "valid"], [[11508, 11512], "disallowed"], [[11513, 11519], "valid", [], "NV8"], [[11520, 11557], "valid"], [[11558, 11558], "disallowed"], [[11559, 11559], "valid"], [[11560, 11564], "disallowed"], [[11565, 11565], "valid"], [[11566, 11567], "disallowed"], [[11568, 11621], "valid"], [[11622, 11623], "valid"], [[11624, 11630], "disallowed"], [[11631, 11631], "mapped", [11617]], [[11632, 11632], "valid", [], "NV8"], [[11633, 11646], "disallowed"], [[11647, 11647], "valid"], [[11648, 11670], "valid"], [[11671, 11679], "disallowed"], [[11680, 11686], "valid"], [[11687, 11687], "disallowed"], [[11688, 11694], "valid"], [[11695, 11695], "disallowed"], [[11696, 11702], "valid"], [[11703, 11703], "disallowed"], [[11704, 11710], "valid"], [[11711, 11711], "disallowed"], [[11712, 11718], "valid"], [[11719, 11719], "disallowed"], [[11720, 11726], "valid"], [[11727, 11727], "disallowed"], [[11728, 11734], "valid"], [[11735, 11735], "disallowed"], [[11736, 11742], "valid"], [[11743, 11743], "disallowed"], [[11744, 11775], "valid"], [[11776, 11799], "valid", [], "NV8"], [[11800, 11803], "valid", [], "NV8"], [[11804, 11805], "valid", [], "NV8"], [[11806, 11822], "valid", [], "NV8"], [[11823, 11823], "valid"], [[11824, 11824], "valid", [], "NV8"], [[11825, 11825], "valid", [], "NV8"], [[11826, 11835], "valid", [], "NV8"], [[11836, 11842], "valid", [], "NV8"], [[11843, 11903], "disallowed"], [[11904, 11929], "valid", [], "NV8"], [[11930, 11930], "disallowed"], [[11931, 11934], "valid", [], "NV8"], [[11935, 11935], "mapped", [27597]], [[11936, 12018], "valid", [], "NV8"], [[12019, 12019], "mapped", [40863]], [[12020, 12031], "disallowed"], [[12032, 12032], "mapped", [19968]], [[12033, 12033], "mapped", [20008]], [[12034, 12034], "mapped", [20022]], [[12035, 12035], "mapped", [20031]], [[12036, 12036], "mapped", [20057]], [[12037, 12037], "mapped", [20101]], [[12038, 12038], "mapped", [20108]], [[12039, 12039], "mapped", [20128]], [[12040, 12040], "mapped", [20154]], [[12041, 12041], "mapped", [20799]], [[12042, 12042], "mapped", [20837]], [[12043, 12043], "mapped", [20843]], [[12044, 12044], "mapped", [20866]], [[12045, 12045], "mapped", [20886]], [[12046, 12046], "mapped", [20907]], [[12047, 12047], "mapped", [20960]], [[12048, 12048], "mapped", [20981]], [[12049, 12049], "mapped", [20992]], [[12050, 12050], "mapped", [21147]], [[12051, 12051], "mapped", [21241]], [[12052, 12052], "mapped", [21269]], [[12053, 12053], "mapped", [21274]], [[12054, 12054], "mapped", [21304]], [[12055, 12055], "mapped", [21313]], [[12056, 12056], "mapped", [21340]], [[12057, 12057], "mapped", [21353]], [[12058, 12058], "mapped", [21378]], [[12059, 12059], "mapped", [21430]], [[12060, 12060], "mapped", [21448]], [[12061, 12061], "mapped", [21475]], [[12062, 12062], "mapped", [22231]], [[12063, 12063], "mapped", [22303]], [[12064, 12064], "mapped", [22763]], [[12065, 12065], "mapped", [22786]], [[12066, 12066], "mapped", [22794]], [[12067, 12067], "mapped", [22805]], [[12068, 12068], "mapped", [22823]], [[12069, 12069], "mapped", [22899]], [[12070, 12070], "mapped", [23376]], [[12071, 12071], "mapped", [23424]], [[12072, 12072], "mapped", [23544]], [[12073, 12073], "mapped", [23567]], [[12074, 12074], "mapped", [23586]], [[12075, 12075], "mapped", [23608]], [[12076, 12076], "mapped", [23662]], [[12077, 12077], "mapped", [23665]], [[12078, 12078], "mapped", [24027]], [[12079, 12079], "mapped", [24037]], [[12080, 12080], "mapped", [24049]], [[12081, 12081], "mapped", [24062]], [[12082, 12082], "mapped", [24178]], [[12083, 12083], "mapped", [24186]], [[12084, 12084], "mapped", [24191]], [[12085, 12085], "mapped", [24308]], [[12086, 12086], "mapped", [24318]], [[12087, 12087], "mapped", [24331]], [[12088, 12088], "mapped", [24339]], [[12089, 12089], "mapped", [24400]], [[12090, 12090], "mapped", [24417]], [[12091, 12091], "mapped", [24435]], [[12092, 12092], "mapped", [24515]], [[12093, 12093], "mapped", [25096]], [[12094, 12094], "mapped", [25142]], [[12095, 12095], "mapped", [25163]], [[12096, 12096], "mapped", [25903]], [[12097, 12097], "mapped", [25908]], [[12098, 12098], "mapped", [25991]], [[12099, 12099], "mapped", [26007]], [[12100, 12100], "mapped", [26020]], [[12101, 12101], "mapped", [26041]], [[12102, 12102], "mapped", [26080]], [[12103, 12103], "mapped", [26085]], [[12104, 12104], "mapped", [26352]], [[12105, 12105], "mapped", [26376]], [[12106, 12106], "mapped", [26408]], [[12107, 12107], "mapped", [27424]], [[12108, 12108], "mapped", [27490]], [[12109, 12109], "mapped", [27513]], [[12110, 12110], "mapped", [27571]], [[12111, 12111], "mapped", [27595]], [[12112, 12112], "mapped", [27604]], [[12113, 12113], "mapped", [27611]], [[12114, 12114], "mapped", [27663]], [[12115, 12115], "mapped", [27668]], [[12116, 12116], "mapped", [27700]], [[12117, 12117], "mapped", [28779]], [[12118, 12118], "mapped", [29226]], [[12119, 12119], "mapped", [29238]], [[12120, 12120], "mapped", [29243]], [[12121, 12121], "mapped", [29247]], [[12122, 12122], "mapped", [29255]], [[12123, 12123], "mapped", [29273]], [[12124, 12124], "mapped", [29275]], [[12125, 12125], "mapped", [29356]], [[12126, 12126], "mapped", [29572]], [[12127, 12127], "mapped", [29577]], [[12128, 12128], "mapped", [29916]], [[12129, 12129], "mapped", [29926]], [[12130, 12130], "mapped", [29976]], [[12131, 12131], "mapped", [29983]], [[12132, 12132], "mapped", [29992]], [[12133, 12133], "mapped", [3e4]], [[12134, 12134], "mapped", [30091]], [[12135, 12135], "mapped", [30098]], [[12136, 12136], "mapped", [30326]], [[12137, 12137], "mapped", [30333]], [[12138, 12138], "mapped", [30382]], [[12139, 12139], "mapped", [30399]], [[12140, 12140], "mapped", [30446]], [[12141, 12141], "mapped", [30683]], [[12142, 12142], "mapped", [30690]], [[12143, 12143], "mapped", [30707]], [[12144, 12144], "mapped", [31034]], [[12145, 12145], "mapped", [31160]], [[12146, 12146], "mapped", [31166]], [[12147, 12147], "mapped", [31348]], [[12148, 12148], "mapped", [31435]], [[12149, 12149], "mapped", [31481]], [[12150, 12150], "mapped", [31859]], [[12151, 12151], "mapped", [31992]], [[12152, 12152], "mapped", [32566]], [[12153, 12153], "mapped", [32593]], [[12154, 12154], "mapped", [32650]], [[12155, 12155], "mapped", [32701]], [[12156, 12156], "mapped", [32769]], [[12157, 12157], "mapped", [32780]], [[12158, 12158], "mapped", [32786]], [[12159, 12159], "mapped", [32819]], [[12160, 12160], "mapped", [32895]], [[12161, 12161], "mapped", [32905]], [[12162, 12162], "mapped", [33251]], [[12163, 12163], "mapped", [33258]], [[12164, 12164], "mapped", [33267]], [[12165, 12165], "mapped", [33276]], [[12166, 12166], "mapped", [33292]], [[12167, 12167], "mapped", [33307]], [[12168, 12168], "mapped", [33311]], [[12169, 12169], "mapped", [33390]], [[12170, 12170], "mapped", [33394]], [[12171, 12171], "mapped", [33400]], [[12172, 12172], "mapped", [34381]], [[12173, 12173], "mapped", [34411]], [[12174, 12174], "mapped", [34880]], [[12175, 12175], "mapped", [34892]], [[12176, 12176], "mapped", [34915]], [[12177, 12177], "mapped", [35198]], [[12178, 12178], "mapped", [35211]], [[12179, 12179], "mapped", [35282]], [[12180, 12180], "mapped", [35328]], [[12181, 12181], "mapped", [35895]], [[12182, 12182], "mapped", [35910]], [[12183, 12183], "mapped", [35925]], [[12184, 12184], "mapped", [35960]], [[12185, 12185], "mapped", [35997]], [[12186, 12186], "mapped", [36196]], [[12187, 12187], "mapped", [36208]], [[12188, 12188], "mapped", [36275]], [[12189, 12189], "mapped", [36523]], [[12190, 12190], "mapped", [36554]], [[12191, 12191], "mapped", [36763]], [[12192, 12192], "mapped", [36784]], [[12193, 12193], "mapped", [36789]], [[12194, 12194], "mapped", [37009]], [[12195, 12195], "mapped", [37193]], [[12196, 12196], "mapped", [37318]], [[12197, 12197], "mapped", [37324]], [[12198, 12198], "mapped", [37329]], [[12199, 12199], "mapped", [38263]], [[12200, 12200], "mapped", [38272]], [[12201, 12201], "mapped", [38428]], [[12202, 12202], "mapped", [38582]], [[12203, 12203], "mapped", [38585]], [[12204, 12204], "mapped", [38632]], [[12205, 12205], "mapped", [38737]], [[12206, 12206], "mapped", [38750]], [[12207, 12207], "mapped", [38754]], [[12208, 12208], "mapped", [38761]], [[12209, 12209], "mapped", [38859]], [[12210, 12210], "mapped", [38893]], [[12211, 12211], "mapped", [38899]], [[12212, 12212], "mapped", [38913]], [[12213, 12213], "mapped", [39080]], [[12214, 12214], "mapped", [39131]], [[12215, 12215], "mapped", [39135]], [[12216, 12216], "mapped", [39318]], [[12217, 12217], "mapped", [39321]], [[12218, 12218], "mapped", [39340]], [[12219, 12219], "mapped", [39592]], [[12220, 12220], "mapped", [39640]], [[12221, 12221], "mapped", [39647]], [[12222, 12222], "mapped", [39717]], [[12223, 12223], "mapped", [39727]], [[12224, 12224], "mapped", [39730]], [[12225, 12225], "mapped", [39740]], [[12226, 12226], "mapped", [39770]], [[12227, 12227], "mapped", [40165]], [[12228, 12228], "mapped", [40565]], [[12229, 12229], "mapped", [40575]], [[12230, 12230], "mapped", [40613]], [[12231, 12231], "mapped", [40635]], [[12232, 12232], "mapped", [40643]], [[12233, 12233], "mapped", [40653]], [[12234, 12234], "mapped", [40657]], [[12235, 12235], "mapped", [40697]], [[12236, 12236], "mapped", [40701]], [[12237, 12237], "mapped", [40718]], [[12238, 12238], "mapped", [40723]], [[12239, 12239], "mapped", [40736]], [[12240, 12240], "mapped", [40763]], [[12241, 12241], "mapped", [40778]], [[12242, 12242], "mapped", [40786]], [[12243, 12243], "mapped", [40845]], [[12244, 12244], "mapped", [40860]], [[12245, 12245], "mapped", [40864]], [[12246, 12271], "disallowed"], [[12272, 12283], "disallowed"], [[12284, 12287], "disallowed"], [[12288, 12288], "disallowed_STD3_mapped", [32]], [[12289, 12289], "valid", [], "NV8"], [[12290, 12290], "mapped", [46]], [[12291, 12292], "valid", [], "NV8"], [[12293, 12295], "valid"], [[12296, 12329], "valid", [], "NV8"], [[12330, 12333], "valid"], [[12334, 12341], "valid", [], "NV8"], [[12342, 12342], "mapped", [12306]], [[12343, 12343], "valid", [], "NV8"], [[12344, 12344], "mapped", [21313]], [[12345, 12345], "mapped", [21316]], [[12346, 12346], "mapped", [21317]], [[12347, 12347], "valid", [], "NV8"], [[12348, 12348], "valid"], [[12349, 12349], "valid", [], "NV8"], [[12350, 12350], "valid", [], "NV8"], [[12351, 12351], "valid", [], "NV8"], [[12352, 12352], "disallowed"], [[12353, 12436], "valid"], [[12437, 12438], "valid"], [[12439, 12440], "disallowed"], [[12441, 12442], "valid"], [[12443, 12443], "disallowed_STD3_mapped", [32, 12441]], [[12444, 12444], "disallowed_STD3_mapped", [32, 12442]], [[12445, 12446], "valid"], [[12447, 12447], "mapped", [12424, 12426]], [[12448, 12448], "valid", [], "NV8"], [[12449, 12542], "valid"], [[12543, 12543], "mapped", [12467, 12488]], [[12544, 12548], "disallowed"], [[12549, 12588], "valid"], [[12589, 12589], "valid"], [[12590, 12592], "disallowed"], [[12593, 12593], "mapped", [4352]], [[12594, 12594], "mapped", [4353]], [[12595, 12595], "mapped", [4522]], [[12596, 12596], "mapped", [4354]], [[12597, 12597], "mapped", [4524]], [[12598, 12598], "mapped", [4525]], [[12599, 12599], "mapped", [4355]], [[12600, 12600], "mapped", [4356]], [[12601, 12601], "mapped", [4357]], [[12602, 12602], "mapped", [4528]], [[12603, 12603], "mapped", [4529]], [[12604, 12604], "mapped", [4530]], [[12605, 12605], "mapped", [4531]], [[12606, 12606], "mapped", [4532]], [[12607, 12607], "mapped", [4533]], [[12608, 12608], "mapped", [4378]], [[12609, 12609], "mapped", [4358]], [[12610, 12610], "mapped", [4359]], [[12611, 12611], "mapped", [4360]], [[12612, 12612], "mapped", [4385]], [[12613, 12613], "mapped", [4361]], [[12614, 12614], "mapped", [4362]], [[12615, 12615], "mapped", [4363]], [[12616, 12616], "mapped", [4364]], [[12617, 12617], "mapped", [4365]], [[12618, 12618], "mapped", [4366]], [[12619, 12619], "mapped", [4367]], [[12620, 12620], "mapped", [4368]], [[12621, 12621], "mapped", [4369]], [[12622, 12622], "mapped", [4370]], [[12623, 12623], "mapped", [4449]], [[12624, 12624], "mapped", [4450]], [[12625, 12625], "mapped", [4451]], [[12626, 12626], "mapped", [4452]], [[12627, 12627], "mapped", [4453]], [[12628, 12628], "mapped", [4454]], [[12629, 12629], "mapped", [4455]], [[12630, 12630], "mapped", [4456]], [[12631, 12631], "mapped", [4457]], [[12632, 12632], "mapped", [4458]], [[12633, 12633], "mapped", [4459]], [[12634, 12634], "mapped", [4460]], [[12635, 12635], "mapped", [4461]], [[12636, 12636], "mapped", [4462]], [[12637, 12637], "mapped", [4463]], [[12638, 12638], "mapped", [4464]], [[12639, 12639], "mapped", [4465]], [[12640, 12640], "mapped", [4466]], [[12641, 12641], "mapped", [4467]], [[12642, 12642], "mapped", [4468]], [[12643, 12643], "mapped", [4469]], [[12644, 12644], "disallowed"], [[12645, 12645], "mapped", [4372]], [[12646, 12646], "mapped", [4373]], [[12647, 12647], "mapped", [4551]], [[12648, 12648], "mapped", [4552]], [[12649, 12649], "mapped", [4556]], [[12650, 12650], "mapped", [4558]], [[12651, 12651], "mapped", [4563]], [[12652, 12652], "mapped", [4567]], [[12653, 12653], "mapped", [4569]], [[12654, 12654], "mapped", [4380]], [[12655, 12655], "mapped", [4573]], [[12656, 12656], "mapped", [4575]], [[12657, 12657], "mapped", [4381]], [[12658, 12658], "mapped", [4382]], [[12659, 12659], "mapped", [4384]], [[12660, 12660], "mapped", [4386]], [[12661, 12661], "mapped", [4387]], [[12662, 12662], "mapped", [4391]], [[12663, 12663], "mapped", [4393]], [[12664, 12664], "mapped", [4395]], [[12665, 12665], "mapped", [4396]], [[12666, 12666], "mapped", [4397]], [[12667, 12667], "mapped", [4398]], [[12668, 12668], "mapped", [4399]], [[12669, 12669], "mapped", [4402]], [[12670, 12670], "mapped", [4406]], [[12671, 12671], "mapped", [4416]], [[12672, 12672], "mapped", [4423]], [[12673, 12673], "mapped", [4428]], [[12674, 12674], "mapped", [4593]], [[12675, 12675], "mapped", [4594]], [[12676, 12676], "mapped", [4439]], [[12677, 12677], "mapped", [4440]], [[12678, 12678], "mapped", [4441]], [[12679, 12679], "mapped", [4484]], [[12680, 12680], "mapped", [4485]], [[12681, 12681], "mapped", [4488]], [[12682, 12682], "mapped", [4497]], [[12683, 12683], "mapped", [4498]], [[12684, 12684], "mapped", [4500]], [[12685, 12685], "mapped", [4510]], [[12686, 12686], "mapped", [4513]], [[12687, 12687], "disallowed"], [[12688, 12689], "valid", [], "NV8"], [[12690, 12690], "mapped", [19968]], [[12691, 12691], "mapped", [20108]], [[12692, 12692], "mapped", [19977]], [[12693, 12693], "mapped", [22235]], [[12694, 12694], "mapped", [19978]], [[12695, 12695], "mapped", [20013]], [[12696, 12696], "mapped", [19979]], [[12697, 12697], "mapped", [30002]], [[12698, 12698], "mapped", [20057]], [[12699, 12699], "mapped", [19993]], [[12700, 12700], "mapped", [19969]], [[12701, 12701], "mapped", [22825]], [[12702, 12702], "mapped", [22320]], [[12703, 12703], "mapped", [20154]], [[12704, 12727], "valid"], [[12728, 12730], "valid"], [[12731, 12735], "disallowed"], [[12736, 12751], "valid", [], "NV8"], [[12752, 12771], "valid", [], "NV8"], [[12772, 12783], "disallowed"], [[12784, 12799], "valid"], [[12800, 12800], "disallowed_STD3_mapped", [40, 4352, 41]], [[12801, 12801], "disallowed_STD3_mapped", [40, 4354, 41]], [[12802, 12802], "disallowed_STD3_mapped", [40, 4355, 41]], [[12803, 12803], "disallowed_STD3_mapped", [40, 4357, 41]], [[12804, 12804], "disallowed_STD3_mapped", [40, 4358, 41]], [[12805, 12805], "disallowed_STD3_mapped", [40, 4359, 41]], [[12806, 12806], "disallowed_STD3_mapped", [40, 4361, 41]], [[12807, 12807], "disallowed_STD3_mapped", [40, 4363, 41]], [[12808, 12808], "disallowed_STD3_mapped", [40, 4364, 41]], [[12809, 12809], "disallowed_STD3_mapped", [40, 4366, 41]], [[12810, 12810], "disallowed_STD3_mapped", [40, 4367, 41]], [[12811, 12811], "disallowed_STD3_mapped", [40, 4368, 41]], [[12812, 12812], "disallowed_STD3_mapped", [40, 4369, 41]], [[12813, 12813], "disallowed_STD3_mapped", [40, 4370, 41]], [[12814, 12814], "disallowed_STD3_mapped", [40, 44032, 41]], [[12815, 12815], "disallowed_STD3_mapped", [40, 45208, 41]], [[12816, 12816], "disallowed_STD3_mapped", [40, 45796, 41]], [[12817, 12817], "disallowed_STD3_mapped", [40, 46972, 41]], [[12818, 12818], "disallowed_STD3_mapped", [40, 47560, 41]], [[12819, 12819], "disallowed_STD3_mapped", [40, 48148, 41]], [[12820, 12820], "disallowed_STD3_mapped", [40, 49324, 41]], [[12821, 12821], "disallowed_STD3_mapped", [40, 50500, 41]], [[12822, 12822], "disallowed_STD3_mapped", [40, 51088, 41]], [[12823, 12823], "disallowed_STD3_mapped", [40, 52264, 41]], [[12824, 12824], "disallowed_STD3_mapped", [40, 52852, 41]], [[12825, 12825], "disallowed_STD3_mapped", [40, 53440, 41]], [[12826, 12826], "disallowed_STD3_mapped", [40, 54028, 41]], [[12827, 12827], "disallowed_STD3_mapped", [40, 54616, 41]], [[12828, 12828], "disallowed_STD3_mapped", [40, 51452, 41]], [[12829, 12829], "disallowed_STD3_mapped", [40, 50724, 51204, 41]], [[12830, 12830], "disallowed_STD3_mapped", [40, 50724, 54980, 41]], [[12831, 12831], "disallowed"], [[12832, 12832], "disallowed_STD3_mapped", [40, 19968, 41]], [[12833, 12833], "disallowed_STD3_mapped", [40, 20108, 41]], [[12834, 12834], "disallowed_STD3_mapped", [40, 19977, 41]], [[12835, 12835], "disallowed_STD3_mapped", [40, 22235, 41]], [[12836, 12836], "disallowed_STD3_mapped", [40, 20116, 41]], [[12837, 12837], "disallowed_STD3_mapped", [40, 20845, 41]], [[12838, 12838], "disallowed_STD3_mapped", [40, 19971, 41]], [[12839, 12839], "disallowed_STD3_mapped", [40, 20843, 41]], [[12840, 12840], "disallowed_STD3_mapped", [40, 20061, 41]], [[12841, 12841], "disallowed_STD3_mapped", [40, 21313, 41]], [[12842, 12842], "disallowed_STD3_mapped", [40, 26376, 41]], [[12843, 12843], "disallowed_STD3_mapped", [40, 28779, 41]], [[12844, 12844], "disallowed_STD3_mapped", [40, 27700, 41]], [[12845, 12845], "disallowed_STD3_mapped", [40, 26408, 41]], [[12846, 12846], "disallowed_STD3_mapped", [40, 37329, 41]], [[12847, 12847], "disallowed_STD3_mapped", [40, 22303, 41]], [[12848, 12848], "disallowed_STD3_mapped", [40, 26085, 41]], [[12849, 12849], "disallowed_STD3_mapped", [40, 26666, 41]], [[12850, 12850], "disallowed_STD3_mapped", [40, 26377, 41]], [[12851, 12851], "disallowed_STD3_mapped", [40, 31038, 41]], [[12852, 12852], "disallowed_STD3_mapped", [40, 21517, 41]], [[12853, 12853], "disallowed_STD3_mapped", [40, 29305, 41]], [[12854, 12854], "disallowed_STD3_mapped", [40, 36001, 41]], [[12855, 12855], "disallowed_STD3_mapped", [40, 31069, 41]], [[12856, 12856], "disallowed_STD3_mapped", [40, 21172, 41]], [[12857, 12857], "disallowed_STD3_mapped", [40, 20195, 41]], [[12858, 12858], "disallowed_STD3_mapped", [40, 21628, 41]], [[12859, 12859], "disallowed_STD3_mapped", [40, 23398, 41]], [[12860, 12860], "disallowed_STD3_mapped", [40, 30435, 41]], [[12861, 12861], "disallowed_STD3_mapped", [40, 20225, 41]], [[12862, 12862], "disallowed_STD3_mapped", [40, 36039, 41]], [[12863, 12863], "disallowed_STD3_mapped", [40, 21332, 41]], [[12864, 12864], "disallowed_STD3_mapped", [40, 31085, 41]], [[12865, 12865], "disallowed_STD3_mapped", [40, 20241, 41]], [[12866, 12866], "disallowed_STD3_mapped", [40, 33258, 41]], [[12867, 12867], "disallowed_STD3_mapped", [40, 33267, 41]], [[12868, 12868], "mapped", [21839]], [[12869, 12869], "mapped", [24188]], [[12870, 12870], "mapped", [25991]], [[12871, 12871], "mapped", [31631]], [[12872, 12879], "valid", [], "NV8"], [[12880, 12880], "mapped", [112, 116, 101]], [[12881, 12881], "mapped", [50, 49]], [[12882, 12882], "mapped", [50, 50]], [[12883, 12883], "mapped", [50, 51]], [[12884, 12884], "mapped", [50, 52]], [[12885, 12885], "mapped", [50, 53]], [[12886, 12886], "mapped", [50, 54]], [[12887, 12887], "mapped", [50, 55]], [[12888, 12888], "mapped", [50, 56]], [[12889, 12889], "mapped", [50, 57]], [[12890, 12890], "mapped", [51, 48]], [[12891, 12891], "mapped", [51, 49]], [[12892, 12892], "mapped", [51, 50]], [[12893, 12893], "mapped", [51, 51]], [[12894, 12894], "mapped", [51, 52]], [[12895, 12895], "mapped", [51, 53]], [[12896, 12896], "mapped", [4352]], [[12897, 12897], "mapped", [4354]], [[12898, 12898], "mapped", [4355]], [[12899, 12899], "mapped", [4357]], [[12900, 12900], "mapped", [4358]], [[12901, 12901], "mapped", [4359]], [[12902, 12902], "mapped", [4361]], [[12903, 12903], "mapped", [4363]], [[12904, 12904], "mapped", [4364]], [[12905, 12905], "mapped", [4366]], [[12906, 12906], "mapped", [4367]], [[12907, 12907], "mapped", [4368]], [[12908, 12908], "mapped", [4369]], [[12909, 12909], "mapped", [4370]], [[12910, 12910], "mapped", [44032]], [[12911, 12911], "mapped", [45208]], [[12912, 12912], "mapped", [45796]], [[12913, 12913], "mapped", [46972]], [[12914, 12914], "mapped", [47560]], [[12915, 12915], "mapped", [48148]], [[12916, 12916], "mapped", [49324]], [[12917, 12917], "mapped", [50500]], [[12918, 12918], "mapped", [51088]], [[12919, 12919], "mapped", [52264]], [[12920, 12920], "mapped", [52852]], [[12921, 12921], "mapped", [53440]], [[12922, 12922], "mapped", [54028]], [[12923, 12923], "mapped", [54616]], [[12924, 12924], "mapped", [52280, 44256]], [[12925, 12925], "mapped", [51452, 51032]], [[12926, 12926], "mapped", [50864]], [[12927, 12927], "valid", [], "NV8"], [[12928, 12928], "mapped", [19968]], [[12929, 12929], "mapped", [20108]], [[12930, 12930], "mapped", [19977]], [[12931, 12931], "mapped", [22235]], [[12932, 12932], "mapped", [20116]], [[12933, 12933], "mapped", [20845]], [[12934, 12934], "mapped", [19971]], [[12935, 12935], "mapped", [20843]], [[12936, 12936], "mapped", [20061]], [[12937, 12937], "mapped", [21313]], [[12938, 12938], "mapped", [26376]], [[12939, 12939], "mapped", [28779]], [[12940, 12940], "mapped", [27700]], [[12941, 12941], "mapped", [26408]], [[12942, 12942], "mapped", [37329]], [[12943, 12943], "mapped", [22303]], [[12944, 12944], "mapped", [26085]], [[12945, 12945], "mapped", [26666]], [[12946, 12946], "mapped", [26377]], [[12947, 12947], "mapped", [31038]], [[12948, 12948], "mapped", [21517]], [[12949, 12949], "mapped", [29305]], [[12950, 12950], "mapped", [36001]], [[12951, 12951], "mapped", [31069]], [[12952, 12952], "mapped", [21172]], [[12953, 12953], "mapped", [31192]], [[12954, 12954], "mapped", [30007]], [[12955, 12955], "mapped", [22899]], [[12956, 12956], "mapped", [36969]], [[12957, 12957], "mapped", [20778]], [[12958, 12958], "mapped", [21360]], [[12959, 12959], "mapped", [27880]], [[12960, 12960], "mapped", [38917]], [[12961, 12961], "mapped", [20241]], [[12962, 12962], "mapped", [20889]], [[12963, 12963], "mapped", [27491]], [[12964, 12964], "mapped", [19978]], [[12965, 12965], "mapped", [20013]], [[12966, 12966], "mapped", [19979]], [[12967, 12967], "mapped", [24038]], [[12968, 12968], "mapped", [21491]], [[12969, 12969], "mapped", [21307]], [[12970, 12970], "mapped", [23447]], [[12971, 12971], "mapped", [23398]], [[12972, 12972], "mapped", [30435]], [[12973, 12973], "mapped", [20225]], [[12974, 12974], "mapped", [36039]], [[12975, 12975], "mapped", [21332]], [[12976, 12976], "mapped", [22812]], [[12977, 12977], "mapped", [51, 54]], [[12978, 12978], "mapped", [51, 55]], [[12979, 12979], "mapped", [51, 56]], [[12980, 12980], "mapped", [51, 57]], [[12981, 12981], "mapped", [52, 48]], [[12982, 12982], "mapped", [52, 49]], [[12983, 12983], "mapped", [52, 50]], [[12984, 12984], "mapped", [52, 51]], [[12985, 12985], "mapped", [52, 52]], [[12986, 12986], "mapped", [52, 53]], [[12987, 12987], "mapped", [52, 54]], [[12988, 12988], "mapped", [52, 55]], [[12989, 12989], "mapped", [52, 56]], [[12990, 12990], "mapped", [52, 57]], [[12991, 12991], "mapped", [53, 48]], [[12992, 12992], "mapped", [49, 26376]], [[12993, 12993], "mapped", [50, 26376]], [[12994, 12994], "mapped", [51, 26376]], [[12995, 12995], "mapped", [52, 26376]], [[12996, 12996], "mapped", [53, 26376]], [[12997, 12997], "mapped", [54, 26376]], [[12998, 12998], "mapped", [55, 26376]], [[12999, 12999], "mapped", [56, 26376]], [[13e3, 13e3], "mapped", [57, 26376]], [[13001, 13001], "mapped", [49, 48, 26376]], [[13002, 13002], "mapped", [49, 49, 26376]], [[13003, 13003], "mapped", [49, 50, 26376]], [[13004, 13004], "mapped", [104, 103]], [[13005, 13005], "mapped", [101, 114, 103]], [[13006, 13006], "mapped", [101, 118]], [[13007, 13007], "mapped", [108, 116, 100]], [[13008, 13008], "mapped", [12450]], [[13009, 13009], "mapped", [12452]], [[13010, 13010], "mapped", [12454]], [[13011, 13011], "mapped", [12456]], [[13012, 13012], "mapped", [12458]], [[13013, 13013], "mapped", [12459]], [[13014, 13014], "mapped", [12461]], [[13015, 13015], "mapped", [12463]], [[13016, 13016], "mapped", [12465]], [[13017, 13017], "mapped", [12467]], [[13018, 13018], "mapped", [12469]], [[13019, 13019], "mapped", [12471]], [[13020, 13020], "mapped", [12473]], [[13021, 13021], "mapped", [12475]], [[13022, 13022], "mapped", [12477]], [[13023, 13023], "mapped", [12479]], [[13024, 13024], "mapped", [12481]], [[13025, 13025], "mapped", [12484]], [[13026, 13026], "mapped", [12486]], [[13027, 13027], "mapped", [12488]], [[13028, 13028], "mapped", [12490]], [[13029, 13029], "mapped", [12491]], [[13030, 13030], "mapped", [12492]], [[13031, 13031], "mapped", [12493]], [[13032, 13032], "mapped", [12494]], [[13033, 13033], "mapped", [12495]], [[13034, 13034], "mapped", [12498]], [[13035, 13035], "mapped", [12501]], [[13036, 13036], "mapped", [12504]], [[13037, 13037], "mapped", [12507]], [[13038, 13038], "mapped", [12510]], [[13039, 13039], "mapped", [12511]], [[13040, 13040], "mapped", [12512]], [[13041, 13041], "mapped", [12513]], [[13042, 13042], "mapped", [12514]], [[13043, 13043], "mapped", [12516]], [[13044, 13044], "mapped", [12518]], [[13045, 13045], "mapped", [12520]], [[13046, 13046], "mapped", [12521]], [[13047, 13047], "mapped", [12522]], [[13048, 13048], "mapped", [12523]], [[13049, 13049], "mapped", [12524]], [[13050, 13050], "mapped", [12525]], [[13051, 13051], "mapped", [12527]], [[13052, 13052], "mapped", [12528]], [[13053, 13053], "mapped", [12529]], [[13054, 13054], "mapped", [12530]], [[13055, 13055], "disallowed"], [[13056, 13056], "mapped", [12450, 12497, 12540, 12488]], [[13057, 13057], "mapped", [12450, 12523, 12501, 12449]], [[13058, 13058], "mapped", [12450, 12531, 12506, 12450]], [[13059, 13059], "mapped", [12450, 12540, 12523]], [[13060, 13060], "mapped", [12452, 12491, 12531, 12464]], [[13061, 13061], "mapped", [12452, 12531, 12481]], [[13062, 13062], "mapped", [12454, 12457, 12531]], [[13063, 13063], "mapped", [12456, 12473, 12463, 12540, 12489]], [[13064, 13064], "mapped", [12456, 12540, 12459, 12540]], [[13065, 13065], "mapped", [12458, 12531, 12473]], [[13066, 13066], "mapped", [12458, 12540, 12512]], [[13067, 13067], "mapped", [12459, 12452, 12522]], [[13068, 13068], "mapped", [12459, 12521, 12483, 12488]], [[13069, 13069], "mapped", [12459, 12525, 12522, 12540]], [[13070, 13070], "mapped", [12460, 12525, 12531]], [[13071, 13071], "mapped", [12460, 12531, 12510]], [[13072, 13072], "mapped", [12462, 12460]], [[13073, 13073], "mapped", [12462, 12491, 12540]], [[13074, 13074], "mapped", [12461, 12517, 12522, 12540]], [[13075, 13075], "mapped", [12462, 12523, 12480, 12540]], [[13076, 13076], "mapped", [12461, 12525]], [[13077, 13077], "mapped", [12461, 12525, 12464, 12521, 12512]], [[13078, 13078], "mapped", [12461, 12525, 12513, 12540, 12488, 12523]], [[13079, 13079], "mapped", [12461, 12525, 12527, 12483, 12488]], [[13080, 13080], "mapped", [12464, 12521, 12512]], [[13081, 13081], "mapped", [12464, 12521, 12512, 12488, 12531]], [[13082, 13082], "mapped", [12463, 12523, 12476, 12452, 12525]], [[13083, 13083], "mapped", [12463, 12525, 12540, 12493]], [[13084, 13084], "mapped", [12465, 12540, 12473]], [[13085, 13085], "mapped", [12467, 12523, 12490]], [[13086, 13086], "mapped", [12467, 12540, 12509]], [[13087, 13087], "mapped", [12469, 12452, 12463, 12523]], [[13088, 13088], "mapped", [12469, 12531, 12481, 12540, 12512]], [[13089, 13089], "mapped", [12471, 12522, 12531, 12464]], [[13090, 13090], "mapped", [12475, 12531, 12481]], [[13091, 13091], "mapped", [12475, 12531, 12488]], [[13092, 13092], "mapped", [12480, 12540, 12473]], [[13093, 13093], "mapped", [12487, 12471]], [[13094, 13094], "mapped", [12489, 12523]], [[13095, 13095], "mapped", [12488, 12531]], [[13096, 13096], "mapped", [12490, 12494]], [[13097, 13097], "mapped", [12494, 12483, 12488]], [[13098, 13098], "mapped", [12495, 12452, 12484]], [[13099, 13099], "mapped", [12497, 12540, 12475, 12531, 12488]], [[13100, 13100], "mapped", [12497, 12540, 12484]], [[13101, 13101], "mapped", [12496, 12540, 12524, 12523]], [[13102, 13102], "mapped", [12500, 12450, 12473, 12488, 12523]], [[13103, 13103], "mapped", [12500, 12463, 12523]], [[13104, 13104], "mapped", [12500, 12467]], [[13105, 13105], "mapped", [12499, 12523]], [[13106, 13106], "mapped", [12501, 12449, 12521, 12483, 12489]], [[13107, 13107], "mapped", [12501, 12451, 12540, 12488]], [[13108, 13108], "mapped", [12502, 12483, 12471, 12455, 12523]], [[13109, 13109], "mapped", [12501, 12521, 12531]], [[13110, 13110], "mapped", [12504, 12463, 12479, 12540, 12523]], [[13111, 13111], "mapped", [12506, 12477]], [[13112, 13112], "mapped", [12506, 12491, 12498]], [[13113, 13113], "mapped", [12504, 12523, 12484]], [[13114, 13114], "mapped", [12506, 12531, 12473]], [[13115, 13115], "mapped", [12506, 12540, 12472]], [[13116, 13116], "mapped", [12505, 12540, 12479]], [[13117, 13117], "mapped", [12509, 12452, 12531, 12488]], [[13118, 13118], "mapped", [12508, 12523, 12488]], [[13119, 13119], "mapped", [12507, 12531]], [[13120, 13120], "mapped", [12509, 12531, 12489]], [[13121, 13121], "mapped", [12507, 12540, 12523]], [[13122, 13122], "mapped", [12507, 12540, 12531]], [[13123, 13123], "mapped", [12510, 12452, 12463, 12525]], [[13124, 13124], "mapped", [12510, 12452, 12523]], [[13125, 13125], "mapped", [12510, 12483, 12495]], [[13126, 13126], "mapped", [12510, 12523, 12463]], [[13127, 13127], "mapped", [12510, 12531, 12471, 12519, 12531]], [[13128, 13128], "mapped", [12511, 12463, 12525, 12531]], [[13129, 13129], "mapped", [12511, 12522]], [[13130, 13130], "mapped", [12511, 12522, 12496, 12540, 12523]], [[13131, 13131], "mapped", [12513, 12460]], [[13132, 13132], "mapped", [12513, 12460, 12488, 12531]], [[13133, 13133], "mapped", [12513, 12540, 12488, 12523]], [[13134, 13134], "mapped", [12516, 12540, 12489]], [[13135, 13135], "mapped", [12516, 12540, 12523]], [[13136, 13136], "mapped", [12518, 12450, 12531]], [[13137, 13137], "mapped", [12522, 12483, 12488, 12523]], [[13138, 13138], "mapped", [12522, 12521]], [[13139, 13139], "mapped", [12523, 12500, 12540]], [[13140, 13140], "mapped", [12523, 12540, 12502, 12523]], [[13141, 13141], "mapped", [12524, 12512]], [[13142, 13142], "mapped", [12524, 12531, 12488, 12466, 12531]], [[13143, 13143], "mapped", [12527, 12483, 12488]], [[13144, 13144], "mapped", [48, 28857]], [[13145, 13145], "mapped", [49, 28857]], [[13146, 13146], "mapped", [50, 28857]], [[13147, 13147], "mapped", [51, 28857]], [[13148, 13148], "mapped", [52, 28857]], [[13149, 13149], "mapped", [53, 28857]], [[13150, 13150], "mapped", [54, 28857]], [[13151, 13151], "mapped", [55, 28857]], [[13152, 13152], "mapped", [56, 28857]], [[13153, 13153], "mapped", [57, 28857]], [[13154, 13154], "mapped", [49, 48, 28857]], [[13155, 13155], "mapped", [49, 49, 28857]], [[13156, 13156], "mapped", [49, 50, 28857]], [[13157, 13157], "mapped", [49, 51, 28857]], [[13158, 13158], "mapped", [49, 52, 28857]], [[13159, 13159], "mapped", [49, 53, 28857]], [[13160, 13160], "mapped", [49, 54, 28857]], [[13161, 13161], "mapped", [49, 55, 28857]], [[13162, 13162], "mapped", [49, 56, 28857]], [[13163, 13163], "mapped", [49, 57, 28857]], [[13164, 13164], "mapped", [50, 48, 28857]], [[13165, 13165], "mapped", [50, 49, 28857]], [[13166, 13166], "mapped", [50, 50, 28857]], [[13167, 13167], "mapped", [50, 51, 28857]], [[13168, 13168], "mapped", [50, 52, 28857]], [[13169, 13169], "mapped", [104, 112, 97]], [[13170, 13170], "mapped", [100, 97]], [[13171, 13171], "mapped", [97, 117]], [[13172, 13172], "mapped", [98, 97, 114]], [[13173, 13173], "mapped", [111, 118]], [[13174, 13174], "mapped", [112, 99]], [[13175, 13175], "mapped", [100, 109]], [[13176, 13176], "mapped", [100, 109, 50]], [[13177, 13177], "mapped", [100, 109, 51]], [[13178, 13178], "mapped", [105, 117]], [[13179, 13179], "mapped", [24179, 25104]], [[13180, 13180], "mapped", [26157, 21644]], [[13181, 13181], "mapped", [22823, 27491]], [[13182, 13182], "mapped", [26126, 27835]], [[13183, 13183], "mapped", [26666, 24335, 20250, 31038]], [[13184, 13184], "mapped", [112, 97]], [[13185, 13185], "mapped", [110, 97]], [[13186, 13186], "mapped", [956, 97]], [[13187, 13187], "mapped", [109, 97]], [[13188, 13188], "mapped", [107, 97]], [[13189, 13189], "mapped", [107, 98]], [[13190, 13190], "mapped", [109, 98]], [[13191, 13191], "mapped", [103, 98]], [[13192, 13192], "mapped", [99, 97, 108]], [[13193, 13193], "mapped", [107, 99, 97, 108]], [[13194, 13194], "mapped", [112, 102]], [[13195, 13195], "mapped", [110, 102]], [[13196, 13196], "mapped", [956, 102]], [[13197, 13197], "mapped", [956, 103]], [[13198, 13198], "mapped", [109, 103]], [[13199, 13199], "mapped", [107, 103]], [[13200, 13200], "mapped", [104, 122]], [[13201, 13201], "mapped", [107, 104, 122]], [[13202, 13202], "mapped", [109, 104, 122]], [[13203, 13203], "mapped", [103, 104, 122]], [[13204, 13204], "mapped", [116, 104, 122]], [[13205, 13205], "mapped", [956, 108]], [[13206, 13206], "mapped", [109, 108]], [[13207, 13207], "mapped", [100, 108]], [[13208, 13208], "mapped", [107, 108]], [[13209, 13209], "mapped", [102, 109]], [[13210, 13210], "mapped", [110, 109]], [[13211, 13211], "mapped", [956, 109]], [[13212, 13212], "mapped", [109, 109]], [[13213, 13213], "mapped", [99, 109]], [[13214, 13214], "mapped", [107, 109]], [[13215, 13215], "mapped", [109, 109, 50]], [[13216, 13216], "mapped", [99, 109, 50]], [[13217, 13217], "mapped", [109, 50]], [[13218, 13218], "mapped", [107, 109, 50]], [[13219, 13219], "mapped", [109, 109, 51]], [[13220, 13220], "mapped", [99, 109, 51]], [[13221, 13221], "mapped", [109, 51]], [[13222, 13222], "mapped", [107, 109, 51]], [[13223, 13223], "mapped", [109, 8725, 115]], [[13224, 13224], "mapped", [109, 8725, 115, 50]], [[13225, 13225], "mapped", [112, 97]], [[13226, 13226], "mapped", [107, 112, 97]], [[13227, 13227], "mapped", [109, 112, 97]], [[13228, 13228], "mapped", [103, 112, 97]], [[13229, 13229], "mapped", [114, 97, 100]], [[13230, 13230], "mapped", [114, 97, 100, 8725, 115]], [[13231, 13231], "mapped", [114, 97, 100, 8725, 115, 50]], [[13232, 13232], "mapped", [112, 115]], [[13233, 13233], "mapped", [110, 115]], [[13234, 13234], "mapped", [956, 115]], [[13235, 13235], "mapped", [109, 115]], [[13236, 13236], "mapped", [112, 118]], [[13237, 13237], "mapped", [110, 118]], [[13238, 13238], "mapped", [956, 118]], [[13239, 13239], "mapped", [109, 118]], [[13240, 13240], "mapped", [107, 118]], [[13241, 13241], "mapped", [109, 118]], [[13242, 13242], "mapped", [112, 119]], [[13243, 13243], "mapped", [110, 119]], [[13244, 13244], "mapped", [956, 119]], [[13245, 13245], "mapped", [109, 119]], [[13246, 13246], "mapped", [107, 119]], [[13247, 13247], "mapped", [109, 119]], [[13248, 13248], "mapped", [107, 969]], [[13249, 13249], "mapped", [109, 969]], [[13250, 13250], "disallowed"], [[13251, 13251], "mapped", [98, 113]], [[13252, 13252], "mapped", [99, 99]], [[13253, 13253], "mapped", [99, 100]], [[13254, 13254], "mapped", [99, 8725, 107, 103]], [[13255, 13255], "disallowed"], [[13256, 13256], "mapped", [100, 98]], [[13257, 13257], "mapped", [103, 121]], [[13258, 13258], "mapped", [104, 97]], [[13259, 13259], "mapped", [104, 112]], [[13260, 13260], "mapped", [105, 110]], [[13261, 13261], "mapped", [107, 107]], [[13262, 13262], "mapped", [107, 109]], [[13263, 13263], "mapped", [107, 116]], [[13264, 13264], "mapped", [108, 109]], [[13265, 13265], "mapped", [108, 110]], [[13266, 13266], "mapped", [108, 111, 103]], [[13267, 13267], "mapped", [108, 120]], [[13268, 13268], "mapped", [109, 98]], [[13269, 13269], "mapped", [109, 105, 108]], [[13270, 13270], "mapped", [109, 111, 108]], [[13271, 13271], "mapped", [112, 104]], [[13272, 13272], "disallowed"], [[13273, 13273], "mapped", [112, 112, 109]], [[13274, 13274], "mapped", [112, 114]], [[13275, 13275], "mapped", [115, 114]], [[13276, 13276], "mapped", [115, 118]], [[13277, 13277], "mapped", [119, 98]], [[13278, 13278], "mapped", [118, 8725, 109]], [[13279, 13279], "mapped", [97, 8725, 109]], [[13280, 13280], "mapped", [49, 26085]], [[13281, 13281], "mapped", [50, 26085]], [[13282, 13282], "mapped", [51, 26085]], [[13283, 13283], "mapped", [52, 26085]], [[13284, 13284], "mapped", [53, 26085]], [[13285, 13285], "mapped", [54, 26085]], [[13286, 13286], "mapped", [55, 26085]], [[13287, 13287], "mapped", [56, 26085]], [[13288, 13288], "mapped", [57, 26085]], [[13289, 13289], "mapped", [49, 48, 26085]], [[13290, 13290], "mapped", [49, 49, 26085]], [[13291, 13291], "mapped", [49, 50, 26085]], [[13292, 13292], "mapped", [49, 51, 26085]], [[13293, 13293], "mapped", [49, 52, 26085]], [[13294, 13294], "mapped", [49, 53, 26085]], [[13295, 13295], "mapped", [49, 54, 26085]], [[13296, 13296], "mapped", [49, 55, 26085]], [[13297, 13297], "mapped", [49, 56, 26085]], [[13298, 13298], "mapped", [49, 57, 26085]], [[13299, 13299], "mapped", [50, 48, 26085]], [[13300, 13300], "mapped", [50, 49, 26085]], [[13301, 13301], "mapped", [50, 50, 26085]], [[13302, 13302], "mapped", [50, 51, 26085]], [[13303, 13303], "mapped", [50, 52, 26085]], [[13304, 13304], "mapped", [50, 53, 26085]], [[13305, 13305], "mapped", [50, 54, 26085]], [[13306, 13306], "mapped", [50, 55, 26085]], [[13307, 13307], "mapped", [50, 56, 26085]], [[13308, 13308], "mapped", [50, 57, 26085]], [[13309, 13309], "mapped", [51, 48, 26085]], [[13310, 13310], "mapped", [51, 49, 26085]], [[13311, 13311], "mapped", [103, 97, 108]], [[13312, 19893], "valid"], [[19894, 19903], "disallowed"], [[19904, 19967], "valid", [], "NV8"], [[19968, 40869], "valid"], [[40870, 40891], "valid"], [[40892, 40899], "valid"], [[40900, 40907], "valid"], [[40908, 40908], "valid"], [[40909, 40917], "valid"], [[40918, 40959], "disallowed"], [[40960, 42124], "valid"], [[42125, 42127], "disallowed"], [[42128, 42145], "valid", [], "NV8"], [[42146, 42147], "valid", [], "NV8"], [[42148, 42163], "valid", [], "NV8"], [[42164, 42164], "valid", [], "NV8"], [[42165, 42176], "valid", [], "NV8"], [[42177, 42177], "valid", [], "NV8"], [[42178, 42180], "valid", [], "NV8"], [[42181, 42181], "valid", [], "NV8"], [[42182, 42182], "valid", [], "NV8"], [[42183, 42191], "disallowed"], [[42192, 42237], "valid"], [[42238, 42239], "valid", [], "NV8"], [[42240, 42508], "valid"], [[42509, 42511], "valid", [], "NV8"], [[42512, 42539], "valid"], [[42540, 42559], "disallowed"], [[42560, 42560], "mapped", [42561]], [[42561, 42561], "valid"], [[42562, 42562], "mapped", [42563]], [[42563, 42563], "valid"], [[42564, 42564], "mapped", [42565]], [[42565, 42565], "valid"], [[42566, 42566], "mapped", [42567]], [[42567, 42567], "valid"], [[42568, 42568], "mapped", [42569]], [[42569, 42569], "valid"], [[42570, 42570], "mapped", [42571]], [[42571, 42571], "valid"], [[42572, 42572], "mapped", [42573]], [[42573, 42573], "valid"], [[42574, 42574], "mapped", [42575]], [[42575, 42575], "valid"], [[42576, 42576], "mapped", [42577]], [[42577, 42577], "valid"], [[42578, 42578], "mapped", [42579]], [[42579, 42579], "valid"], [[42580, 42580], "mapped", [42581]], [[42581, 42581], "valid"], [[42582, 42582], "mapped", [42583]], [[42583, 42583], "valid"], [[42584, 42584], "mapped", [42585]], [[42585, 42585], "valid"], [[42586, 42586], "mapped", [42587]], [[42587, 42587], "valid"], [[42588, 42588], "mapped", [42589]], [[42589, 42589], "valid"], [[42590, 42590], "mapped", [42591]], [[42591, 42591], "valid"], [[42592, 42592], "mapped", [42593]], [[42593, 42593], "valid"], [[42594, 42594], "mapped", [42595]], [[42595, 42595], "valid"], [[42596, 42596], "mapped", [42597]], [[42597, 42597], "valid"], [[42598, 42598], "mapped", [42599]], [[42599, 42599], "valid"], [[42600, 42600], "mapped", [42601]], [[42601, 42601], "valid"], [[42602, 42602], "mapped", [42603]], [[42603, 42603], "valid"], [[42604, 42604], "mapped", [42605]], [[42605, 42607], "valid"], [[42608, 42611], "valid", [], "NV8"], [[42612, 42619], "valid"], [[42620, 42621], "valid"], [[42622, 42622], "valid", [], "NV8"], [[42623, 42623], "valid"], [[42624, 42624], "mapped", [42625]], [[42625, 42625], "valid"], [[42626, 42626], "mapped", [42627]], [[42627, 42627], "valid"], [[42628, 42628], "mapped", [42629]], [[42629, 42629], "valid"], [[42630, 42630], "mapped", [42631]], [[42631, 42631], "valid"], [[42632, 42632], "mapped", [42633]], [[42633, 42633], "valid"], [[42634, 42634], "mapped", [42635]], [[42635, 42635], "valid"], [[42636, 42636], "mapped", [42637]], [[42637, 42637], "valid"], [[42638, 42638], "mapped", [42639]], [[42639, 42639], "valid"], [[42640, 42640], "mapped", [42641]], [[42641, 42641], "valid"], [[42642, 42642], "mapped", [42643]], [[42643, 42643], "valid"], [[42644, 42644], "mapped", [42645]], [[42645, 42645], "valid"], [[42646, 42646], "mapped", [42647]], [[42647, 42647], "valid"], [[42648, 42648], "mapped", [42649]], [[42649, 42649], "valid"], [[42650, 42650], "mapped", [42651]], [[42651, 42651], "valid"], [[42652, 42652], "mapped", [1098]], [[42653, 42653], "mapped", [1100]], [[42654, 42654], "valid"], [[42655, 42655], "valid"], [[42656, 42725], "valid"], [[42726, 42735], "valid", [], "NV8"], [[42736, 42737], "valid"], [[42738, 42743], "valid", [], "NV8"], [[42744, 42751], "disallowed"], [[42752, 42774], "valid", [], "NV8"], [[42775, 42778], "valid"], [[42779, 42783], "valid"], [[42784, 42785], "valid", [], "NV8"], [[42786, 42786], "mapped", [42787]], [[42787, 42787], "valid"], [[42788, 42788], "mapped", [42789]], [[42789, 42789], "valid"], [[42790, 42790], "mapped", [42791]], [[42791, 42791], "valid"], [[42792, 42792], "mapped", [42793]], [[42793, 42793], "valid"], [[42794, 42794], "mapped", [42795]], [[42795, 42795], "valid"], [[42796, 42796], "mapped", [42797]], [[42797, 42797], "valid"], [[42798, 42798], "mapped", [42799]], [[42799, 42801], "valid"], [[42802, 42802], "mapped", [42803]], [[42803, 42803], "valid"], [[42804, 42804], "mapped", [42805]], [[42805, 42805], "valid"], [[42806, 42806], "mapped", [42807]], [[42807, 42807], "valid"], [[42808, 42808], "mapped", [42809]], [[42809, 42809], "valid"], [[42810, 42810], "mapped", [42811]], [[42811, 42811], "valid"], [[42812, 42812], "mapped", [42813]], [[42813, 42813], "valid"], [[42814, 42814], "mapped", [42815]], [[42815, 42815], "valid"], [[42816, 42816], "mapped", [42817]], [[42817, 42817], "valid"], [[42818, 42818], "mapped", [42819]], [[42819, 42819], "valid"], [[42820, 42820], "mapped", [42821]], [[42821, 42821], "valid"], [[42822, 42822], "mapped", [42823]], [[42823, 42823], "valid"], [[42824, 42824], "mapped", [42825]], [[42825, 42825], "valid"], [[42826, 42826], "mapped", [42827]], [[42827, 42827], "valid"], [[42828, 42828], "mapped", [42829]], [[42829, 42829], "valid"], [[42830, 42830], "mapped", [42831]], [[42831, 42831], "valid"], [[42832, 42832], "mapped", [42833]], [[42833, 42833], "valid"], [[42834, 42834], "mapped", [42835]], [[42835, 42835], "valid"], [[42836, 42836], "mapped", [42837]], [[42837, 42837], "valid"], [[42838, 42838], "mapped", [42839]], [[42839, 42839], "valid"], [[42840, 42840], "mapped", [42841]], [[42841, 42841], "valid"], [[42842, 42842], "mapped", [42843]], [[42843, 42843], "valid"], [[42844, 42844], "mapped", [42845]], [[42845, 42845], "valid"], [[42846, 42846], "mapped", [42847]], [[42847, 42847], "valid"], [[42848, 42848], "mapped", [42849]], [[42849, 42849], "valid"], [[42850, 42850], "mapped", [42851]], [[42851, 42851], "valid"], [[42852, 42852], "mapped", [42853]], [[42853, 42853], "valid"], [[42854, 42854], "mapped", [42855]], [[42855, 42855], "valid"], [[42856, 42856], "mapped", [42857]], [[42857, 42857], "valid"], [[42858, 42858], "mapped", [42859]], [[42859, 42859], "valid"], [[42860, 42860], "mapped", [42861]], [[42861, 42861], "valid"], [[42862, 42862], "mapped", [42863]], [[42863, 42863], "valid"], [[42864, 42864], "mapped", [42863]], [[42865, 42872], "valid"], [[42873, 42873], "mapped", [42874]], [[42874, 42874], "valid"], [[42875, 42875], "mapped", [42876]], [[42876, 42876], "valid"], [[42877, 42877], "mapped", [7545]], [[42878, 42878], "mapped", [42879]], [[42879, 42879], "valid"], [[42880, 42880], "mapped", [42881]], [[42881, 42881], "valid"], [[42882, 42882], "mapped", [42883]], [[42883, 42883], "valid"], [[42884, 42884], "mapped", [42885]], [[42885, 42885], "valid"], [[42886, 42886], "mapped", [42887]], [[42887, 42888], "valid"], [[42889, 42890], "valid", [], "NV8"], [[42891, 42891], "mapped", [42892]], [[42892, 42892], "valid"], [[42893, 42893], "mapped", [613]], [[42894, 42894], "valid"], [[42895, 42895], "valid"], [[42896, 42896], "mapped", [42897]], [[42897, 42897], "valid"], [[42898, 42898], "mapped", [42899]], [[42899, 42899], "valid"], [[42900, 42901], "valid"], [[42902, 42902], "mapped", [42903]], [[42903, 42903], "valid"], [[42904, 42904], "mapped", [42905]], [[42905, 42905], "valid"], [[42906, 42906], "mapped", [42907]], [[42907, 42907], "valid"], [[42908, 42908], "mapped", [42909]], [[42909, 42909], "valid"], [[42910, 42910], "mapped", [42911]], [[42911, 42911], "valid"], [[42912, 42912], "mapped", [42913]], [[42913, 42913], "valid"], [[42914, 42914], "mapped", [42915]], [[42915, 42915], "valid"], [[42916, 42916], "mapped", [42917]], [[42917, 42917], "valid"], [[42918, 42918], "mapped", [42919]], [[42919, 42919], "valid"], [[42920, 42920], "mapped", [42921]], [[42921, 42921], "valid"], [[42922, 42922], "mapped", [614]], [[42923, 42923], "mapped", [604]], [[42924, 42924], "mapped", [609]], [[42925, 42925], "mapped", [620]], [[42926, 42927], "disallowed"], [[42928, 42928], "mapped", [670]], [[42929, 42929], "mapped", [647]], [[42930, 42930], "mapped", [669]], [[42931, 42931], "mapped", [43859]], [[42932, 42932], "mapped", [42933]], [[42933, 42933], "valid"], [[42934, 42934], "mapped", [42935]], [[42935, 42935], "valid"], [[42936, 42998], "disallowed"], [[42999, 42999], "valid"], [[43e3, 43e3], "mapped", [295]], [[43001, 43001], "mapped", [339]], [[43002, 43002], "valid"], [[43003, 43007], "valid"], [[43008, 43047], "valid"], [[43048, 43051], "valid", [], "NV8"], [[43052, 43055], "disallowed"], [[43056, 43065], "valid", [], "NV8"], [[43066, 43071], "disallowed"], [[43072, 43123], "valid"], [[43124, 43127], "valid", [], "NV8"], [[43128, 43135], "disallowed"], [[43136, 43204], "valid"], [[43205, 43213], "disallowed"], [[43214, 43215], "valid", [], "NV8"], [[43216, 43225], "valid"], [[43226, 43231], "disallowed"], [[43232, 43255], "valid"], [[43256, 43258], "valid", [], "NV8"], [[43259, 43259], "valid"], [[43260, 43260], "valid", [], "NV8"], [[43261, 43261], "valid"], [[43262, 43263], "disallowed"], [[43264, 43309], "valid"], [[43310, 43311], "valid", [], "NV8"], [[43312, 43347], "valid"], [[43348, 43358], "disallowed"], [[43359, 43359], "valid", [], "NV8"], [[43360, 43388], "valid", [], "NV8"], [[43389, 43391], "disallowed"], [[43392, 43456], "valid"], [[43457, 43469], "valid", [], "NV8"], [[43470, 43470], "disallowed"], [[43471, 43481], "valid"], [[43482, 43485], "disallowed"], [[43486, 43487], "valid", [], "NV8"], [[43488, 43518], "valid"], [[43519, 43519], "disallowed"], [[43520, 43574], "valid"], [[43575, 43583], "disallowed"], [[43584, 43597], "valid"], [[43598, 43599], "disallowed"], [[43600, 43609], "valid"], [[43610, 43611], "disallowed"], [[43612, 43615], "valid", [], "NV8"], [[43616, 43638], "valid"], [[43639, 43641], "valid", [], "NV8"], [[43642, 43643], "valid"], [[43644, 43647], "valid"], [[43648, 43714], "valid"], [[43715, 43738], "disallowed"], [[43739, 43741], "valid"], [[43742, 43743], "valid", [], "NV8"], [[43744, 43759], "valid"], [[43760, 43761], "valid", [], "NV8"], [[43762, 43766], "valid"], [[43767, 43776], "disallowed"], [[43777, 43782], "valid"], [[43783, 43784], "disallowed"], [[43785, 43790], "valid"], [[43791, 43792], "disallowed"], [[43793, 43798], "valid"], [[43799, 43807], "disallowed"], [[43808, 43814], "valid"], [[43815, 43815], "disallowed"], [[43816, 43822], "valid"], [[43823, 43823], "disallowed"], [[43824, 43866], "valid"], [[43867, 43867], "valid", [], "NV8"], [[43868, 43868], "mapped", [42791]], [[43869, 43869], "mapped", [43831]], [[43870, 43870], "mapped", [619]], [[43871, 43871], "mapped", [43858]], [[43872, 43875], "valid"], [[43876, 43877], "valid"], [[43878, 43887], "disallowed"], [[43888, 43888], "mapped", [5024]], [[43889, 43889], "mapped", [5025]], [[43890, 43890], "mapped", [5026]], [[43891, 43891], "mapped", [5027]], [[43892, 43892], "mapped", [5028]], [[43893, 43893], "mapped", [5029]], [[43894, 43894], "mapped", [5030]], [[43895, 43895], "mapped", [5031]], [[43896, 43896], "mapped", [5032]], [[43897, 43897], "mapped", [5033]], [[43898, 43898], "mapped", [5034]], [[43899, 43899], "mapped", [5035]], [[43900, 43900], "mapped", [5036]], [[43901, 43901], "mapped", [5037]], [[43902, 43902], "mapped", [5038]], [[43903, 43903], "mapped", [5039]], [[43904, 43904], "mapped", [5040]], [[43905, 43905], "mapped", [5041]], [[43906, 43906], "mapped", [5042]], [[43907, 43907], "mapped", [5043]], [[43908, 43908], "mapped", [5044]], [[43909, 43909], "mapped", [5045]], [[43910, 43910], "mapped", [5046]], [[43911, 43911], "mapped", [5047]], [[43912, 43912], "mapped", [5048]], [[43913, 43913], "mapped", [5049]], [[43914, 43914], "mapped", [5050]], [[43915, 43915], "mapped", [5051]], [[43916, 43916], "mapped", [5052]], [[43917, 43917], "mapped", [5053]], [[43918, 43918], "mapped", [5054]], [[43919, 43919], "mapped", [5055]], [[43920, 43920], "mapped", [5056]], [[43921, 43921], "mapped", [5057]], [[43922, 43922], "mapped", [5058]], [[43923, 43923], "mapped", [5059]], [[43924, 43924], "mapped", [5060]], [[43925, 43925], "mapped", [5061]], [[43926, 43926], "mapped", [5062]], [[43927, 43927], "mapped", [5063]], [[43928, 43928], "mapped", [5064]], [[43929, 43929], "mapped", [5065]], [[43930, 43930], "mapped", [5066]], [[43931, 43931], "mapped", [5067]], [[43932, 43932], "mapped", [5068]], [[43933, 43933], "mapped", [5069]], [[43934, 43934], "mapped", [5070]], [[43935, 43935], "mapped", [5071]], [[43936, 43936], "mapped", [5072]], [[43937, 43937], "mapped", [5073]], [[43938, 43938], "mapped", [5074]], [[43939, 43939], "mapped", [5075]], [[43940, 43940], "mapped", [5076]], [[43941, 43941], "mapped", [5077]], [[43942, 43942], "mapped", [5078]], [[43943, 43943], "mapped", [5079]], [[43944, 43944], "mapped", [5080]], [[43945, 43945], "mapped", [5081]], [[43946, 43946], "mapped", [5082]], [[43947, 43947], "mapped", [5083]], [[43948, 43948], "mapped", [5084]], [[43949, 43949], "mapped", [5085]], [[43950, 43950], "mapped", [5086]], [[43951, 43951], "mapped", [5087]], [[43952, 43952], "mapped", [5088]], [[43953, 43953], "mapped", [5089]], [[43954, 43954], "mapped", [5090]], [[43955, 43955], "mapped", [5091]], [[43956, 43956], "mapped", [5092]], [[43957, 43957], "mapped", [5093]], [[43958, 43958], "mapped", [5094]], [[43959, 43959], "mapped", [5095]], [[43960, 43960], "mapped", [5096]], [[43961, 43961], "mapped", [5097]], [[43962, 43962], "mapped", [5098]], [[43963, 43963], "mapped", [5099]], [[43964, 43964], "mapped", [5100]], [[43965, 43965], "mapped", [5101]], [[43966, 43966], "mapped", [5102]], [[43967, 43967], "mapped", [5103]], [[43968, 44010], "valid"], [[44011, 44011], "valid", [], "NV8"], [[44012, 44013], "valid"], [[44014, 44015], "disallowed"], [[44016, 44025], "valid"], [[44026, 44031], "disallowed"], [[44032, 55203], "valid"], [[55204, 55215], "disallowed"], [[55216, 55238], "valid", [], "NV8"], [[55239, 55242], "disallowed"], [[55243, 55291], "valid", [], "NV8"], [[55292, 55295], "disallowed"], [[55296, 57343], "disallowed"], [[57344, 63743], "disallowed"], [[63744, 63744], "mapped", [35912]], [[63745, 63745], "mapped", [26356]], [[63746, 63746], "mapped", [36554]], [[63747, 63747], "mapped", [36040]], [[63748, 63748], "mapped", [28369]], [[63749, 63749], "mapped", [20018]], [[63750, 63750], "mapped", [21477]], [[63751, 63752], "mapped", [40860]], [[63753, 63753], "mapped", [22865]], [[63754, 63754], "mapped", [37329]], [[63755, 63755], "mapped", [21895]], [[63756, 63756], "mapped", [22856]], [[63757, 63757], "mapped", [25078]], [[63758, 63758], "mapped", [30313]], [[63759, 63759], "mapped", [32645]], [[63760, 63760], "mapped", [34367]], [[63761, 63761], "mapped", [34746]], [[63762, 63762], "mapped", [35064]], [[63763, 63763], "mapped", [37007]], [[63764, 63764], "mapped", [27138]], [[63765, 63765], "mapped", [27931]], [[63766, 63766], "mapped", [28889]], [[63767, 63767], "mapped", [29662]], [[63768, 63768], "mapped", [33853]], [[63769, 63769], "mapped", [37226]], [[63770, 63770], "mapped", [39409]], [[63771, 63771], "mapped", [20098]], [[63772, 63772], "mapped", [21365]], [[63773, 63773], "mapped", [27396]], [[63774, 63774], "mapped", [29211]], [[63775, 63775], "mapped", [34349]], [[63776, 63776], "mapped", [40478]], [[63777, 63777], "mapped", [23888]], [[63778, 63778], "mapped", [28651]], [[63779, 63779], "mapped", [34253]], [[63780, 63780], "mapped", [35172]], [[63781, 63781], "mapped", [25289]], [[63782, 63782], "mapped", [33240]], [[63783, 63783], "mapped", [34847]], [[63784, 63784], "mapped", [24266]], [[63785, 63785], "mapped", [26391]], [[63786, 63786], "mapped", [28010]], [[63787, 63787], "mapped", [29436]], [[63788, 63788], "mapped", [37070]], [[63789, 63789], "mapped", [20358]], [[63790, 63790], "mapped", [20919]], [[63791, 63791], "mapped", [21214]], [[63792, 63792], "mapped", [25796]], [[63793, 63793], "mapped", [27347]], [[63794, 63794], "mapped", [29200]], [[63795, 63795], "mapped", [30439]], [[63796, 63796], "mapped", [32769]], [[63797, 63797], "mapped", [34310]], [[63798, 63798], "mapped", [34396]], [[63799, 63799], "mapped", [36335]], [[63800, 63800], "mapped", [38706]], [[63801, 63801], "mapped", [39791]], [[63802, 63802], "mapped", [40442]], [[63803, 63803], "mapped", [30860]], [[63804, 63804], "mapped", [31103]], [[63805, 63805], "mapped", [32160]], [[63806, 63806], "mapped", [33737]], [[63807, 63807], "mapped", [37636]], [[63808, 63808], "mapped", [40575]], [[63809, 63809], "mapped", [35542]], [[63810, 63810], "mapped", [22751]], [[63811, 63811], "mapped", [24324]], [[63812, 63812], "mapped", [31840]], [[63813, 63813], "mapped", [32894]], [[63814, 63814], "mapped", [29282]], [[63815, 63815], "mapped", [30922]], [[63816, 63816], "mapped", [36034]], [[63817, 63817], "mapped", [38647]], [[63818, 63818], "mapped", [22744]], [[63819, 63819], "mapped", [23650]], [[63820, 63820], "mapped", [27155]], [[63821, 63821], "mapped", [28122]], [[63822, 63822], "mapped", [28431]], [[63823, 63823], "mapped", [32047]], [[63824, 63824], "mapped", [32311]], [[63825, 63825], "mapped", [38475]], [[63826, 63826], "mapped", [21202]], [[63827, 63827], "mapped", [32907]], [[63828, 63828], "mapped", [20956]], [[63829, 63829], "mapped", [20940]], [[63830, 63830], "mapped", [31260]], [[63831, 63831], "mapped", [32190]], [[63832, 63832], "mapped", [33777]], [[63833, 63833], "mapped", [38517]], [[63834, 63834], "mapped", [35712]], [[63835, 63835], "mapped", [25295]], [[63836, 63836], "mapped", [27138]], [[63837, 63837], "mapped", [35582]], [[63838, 63838], "mapped", [20025]], [[63839, 63839], "mapped", [23527]], [[63840, 63840], "mapped", [24594]], [[63841, 63841], "mapped", [29575]], [[63842, 63842], "mapped", [30064]], [[63843, 63843], "mapped", [21271]], [[63844, 63844], "mapped", [30971]], [[63845, 63845], "mapped", [20415]], [[63846, 63846], "mapped", [24489]], [[63847, 63847], "mapped", [19981]], [[63848, 63848], "mapped", [27852]], [[63849, 63849], "mapped", [25976]], [[63850, 63850], "mapped", [32034]], [[63851, 63851], "mapped", [21443]], [[63852, 63852], "mapped", [22622]], [[63853, 63853], "mapped", [30465]], [[63854, 63854], "mapped", [33865]], [[63855, 63855], "mapped", [35498]], [[63856, 63856], "mapped", [27578]], [[63857, 63857], "mapped", [36784]], [[63858, 63858], "mapped", [27784]], [[63859, 63859], "mapped", [25342]], [[63860, 63860], "mapped", [33509]], [[63861, 63861], "mapped", [25504]], [[63862, 63862], "mapped", [30053]], [[63863, 63863], "mapped", [20142]], [[63864, 63864], "mapped", [20841]], [[63865, 63865], "mapped", [20937]], [[63866, 63866], "mapped", [26753]], [[63867, 63867], "mapped", [31975]], [[63868, 63868], "mapped", [33391]], [[63869, 63869], "mapped", [35538]], [[63870, 63870], "mapped", [37327]], [[63871, 63871], "mapped", [21237]], [[63872, 63872], "mapped", [21570]], [[63873, 63873], "mapped", [22899]], [[63874, 63874], "mapped", [24300]], [[63875, 63875], "mapped", [26053]], [[63876, 63876], "mapped", [28670]], [[63877, 63877], "mapped", [31018]], [[63878, 63878], "mapped", [38317]], [[63879, 63879], "mapped", [39530]], [[63880, 63880], "mapped", [40599]], [[63881, 63881], "mapped", [40654]], [[63882, 63882], "mapped", [21147]], [[63883, 63883], "mapped", [26310]], [[63884, 63884], "mapped", [27511]], [[63885, 63885], "mapped", [36706]], [[63886, 63886], "mapped", [24180]], [[63887, 63887], "mapped", [24976]], [[63888, 63888], "mapped", [25088]], [[63889, 63889], "mapped", [25754]], [[63890, 63890], "mapped", [28451]], [[63891, 63891], "mapped", [29001]], [[63892, 63892], "mapped", [29833]], [[63893, 63893], "mapped", [31178]], [[63894, 63894], "mapped", [32244]], [[63895, 63895], "mapped", [32879]], [[63896, 63896], "mapped", [36646]], [[63897, 63897], "mapped", [34030]], [[63898, 63898], "mapped", [36899]], [[63899, 63899], "mapped", [37706]], [[63900, 63900], "mapped", [21015]], [[63901, 63901], "mapped", [21155]], [[63902, 63902], "mapped", [21693]], [[63903, 63903], "mapped", [28872]], [[63904, 63904], "mapped", [35010]], [[63905, 63905], "mapped", [35498]], [[63906, 63906], "mapped", [24265]], [[63907, 63907], "mapped", [24565]], [[63908, 63908], "mapped", [25467]], [[63909, 63909], "mapped", [27566]], [[63910, 63910], "mapped", [31806]], [[63911, 63911], "mapped", [29557]], [[63912, 63912], "mapped", [20196]], [[63913, 63913], "mapped", [22265]], [[63914, 63914], "mapped", [23527]], [[63915, 63915], "mapped", [23994]], [[63916, 63916], "mapped", [24604]], [[63917, 63917], "mapped", [29618]], [[63918, 63918], "mapped", [29801]], [[63919, 63919], "mapped", [32666]], [[63920, 63920], "mapped", [32838]], [[63921, 63921], "mapped", [37428]], [[63922, 63922], "mapped", [38646]], [[63923, 63923], "mapped", [38728]], [[63924, 63924], "mapped", [38936]], [[63925, 63925], "mapped", [20363]], [[63926, 63926], "mapped", [31150]], [[63927, 63927], "mapped", [37300]], [[63928, 63928], "mapped", [38584]], [[63929, 63929], "mapped", [24801]], [[63930, 63930], "mapped", [20102]], [[63931, 63931], "mapped", [20698]], [[63932, 63932], "mapped", [23534]], [[63933, 63933], "mapped", [23615]], [[63934, 63934], "mapped", [26009]], [[63935, 63935], "mapped", [27138]], [[63936, 63936], "mapped", [29134]], [[63937, 63937], "mapped", [30274]], [[63938, 63938], "mapped", [34044]], [[63939, 63939], "mapped", [36988]], [[63940, 63940], "mapped", [40845]], [[63941, 63941], "mapped", [26248]], [[63942, 63942], "mapped", [38446]], [[63943, 63943], "mapped", [21129]], [[63944, 63944], "mapped", [26491]], [[63945, 63945], "mapped", [26611]], [[63946, 63946], "mapped", [27969]], [[63947, 63947], "mapped", [28316]], [[63948, 63948], "mapped", [29705]], [[63949, 63949], "mapped", [30041]], [[63950, 63950], "mapped", [30827]], [[63951, 63951], "mapped", [32016]], [[63952, 63952], "mapped", [39006]], [[63953, 63953], "mapped", [20845]], [[63954, 63954], "mapped", [25134]], [[63955, 63955], "mapped", [38520]], [[63956, 63956], "mapped", [20523]], [[63957, 63957], "mapped", [23833]], [[63958, 63958], "mapped", [28138]], [[63959, 63959], "mapped", [36650]], [[63960, 63960], "mapped", [24459]], [[63961, 63961], "mapped", [24900]], [[63962, 63962], "mapped", [26647]], [[63963, 63963], "mapped", [29575]], [[63964, 63964], "mapped", [38534]], [[63965, 63965], "mapped", [21033]], [[63966, 63966], "mapped", [21519]], [[63967, 63967], "mapped", [23653]], [[63968, 63968], "mapped", [26131]], [[63969, 63969], "mapped", [26446]], [[63970, 63970], "mapped", [26792]], [[63971, 63971], "mapped", [27877]], [[63972, 63972], "mapped", [29702]], [[63973, 63973], "mapped", [30178]], [[63974, 63974], "mapped", [32633]], [[63975, 63975], "mapped", [35023]], [[63976, 63976], "mapped", [35041]], [[63977, 63977], "mapped", [37324]], [[63978, 63978], "mapped", [38626]], [[63979, 63979], "mapped", [21311]], [[63980, 63980], "mapped", [28346]], [[63981, 63981], "mapped", [21533]], [[63982, 63982], "mapped", [29136]], [[63983, 63983], "mapped", [29848]], [[63984, 63984], "mapped", [34298]], [[63985, 63985], "mapped", [38563]], [[63986, 63986], "mapped", [40023]], [[63987, 63987], "mapped", [40607]], [[63988, 63988], "mapped", [26519]], [[63989, 63989], "mapped", [28107]], [[63990, 63990], "mapped", [33256]], [[63991, 63991], "mapped", [31435]], [[63992, 63992], "mapped", [31520]], [[63993, 63993], "mapped", [31890]], [[63994, 63994], "mapped", [29376]], [[63995, 63995], "mapped", [28825]], [[63996, 63996], "mapped", [35672]], [[63997, 63997], "mapped", [20160]], [[63998, 63998], "mapped", [33590]], [[63999, 63999], "mapped", [21050]], [[64e3, 64e3], "mapped", [20999]], [[64001, 64001], "mapped", [24230]], [[64002, 64002], "mapped", [25299]], [[64003, 64003], "mapped", [31958]], [[64004, 64004], "mapped", [23429]], [[64005, 64005], "mapped", [27934]], [[64006, 64006], "mapped", [26292]], [[64007, 64007], "mapped", [36667]], [[64008, 64008], "mapped", [34892]], [[64009, 64009], "mapped", [38477]], [[64010, 64010], "mapped", [35211]], [[64011, 64011], "mapped", [24275]], [[64012, 64012], "mapped", [20800]], [[64013, 64013], "mapped", [21952]], [[64014, 64015], "valid"], [[64016, 64016], "mapped", [22618]], [[64017, 64017], "valid"], [[64018, 64018], "mapped", [26228]], [[64019, 64020], "valid"], [[64021, 64021], "mapped", [20958]], [[64022, 64022], "mapped", [29482]], [[64023, 64023], "mapped", [30410]], [[64024, 64024], "mapped", [31036]], [[64025, 64025], "mapped", [31070]], [[64026, 64026], "mapped", [31077]], [[64027, 64027], "mapped", [31119]], [[64028, 64028], "mapped", [38742]], [[64029, 64029], "mapped", [31934]], [[64030, 64030], "mapped", [32701]], [[64031, 64031], "valid"], [[64032, 64032], "mapped", [34322]], [[64033, 64033], "valid"], [[64034, 64034], "mapped", [35576]], [[64035, 64036], "valid"], [[64037, 64037], "mapped", [36920]], [[64038, 64038], "mapped", [37117]], [[64039, 64041], "valid"], [[64042, 64042], "mapped", [39151]], [[64043, 64043], "mapped", [39164]], [[64044, 64044], "mapped", [39208]], [[64045, 64045], "mapped", [40372]], [[64046, 64046], "mapped", [37086]], [[64047, 64047], "mapped", [38583]], [[64048, 64048], "mapped", [20398]], [[64049, 64049], "mapped", [20711]], [[64050, 64050], "mapped", [20813]], [[64051, 64051], "mapped", [21193]], [[64052, 64052], "mapped", [21220]], [[64053, 64053], "mapped", [21329]], [[64054, 64054], "mapped", [21917]], [[64055, 64055], "mapped", [22022]], [[64056, 64056], "mapped", [22120]], [[64057, 64057], "mapped", [22592]], [[64058, 64058], "mapped", [22696]], [[64059, 64059], "mapped", [23652]], [[64060, 64060], "mapped", [23662]], [[64061, 64061], "mapped", [24724]], [[64062, 64062], "mapped", [24936]], [[64063, 64063], "mapped", [24974]], [[64064, 64064], "mapped", [25074]], [[64065, 64065], "mapped", [25935]], [[64066, 64066], "mapped", [26082]], [[64067, 64067], "mapped", [26257]], [[64068, 64068], "mapped", [26757]], [[64069, 64069], "mapped", [28023]], [[64070, 64070], "mapped", [28186]], [[64071, 64071], "mapped", [28450]], [[64072, 64072], "mapped", [29038]], [[64073, 64073], "mapped", [29227]], [[64074, 64074], "mapped", [29730]], [[64075, 64075], "mapped", [30865]], [[64076, 64076], "mapped", [31038]], [[64077, 64077], "mapped", [31049]], [[64078, 64078], "mapped", [31048]], [[64079, 64079], "mapped", [31056]], [[64080, 64080], "mapped", [31062]], [[64081, 64081], "mapped", [31069]], [[64082, 64082], "mapped", [31117]], [[64083, 64083], "mapped", [31118]], [[64084, 64084], "mapped", [31296]], [[64085, 64085], "mapped", [31361]], [[64086, 64086], "mapped", [31680]], [[64087, 64087], "mapped", [32244]], [[64088, 64088], "mapped", [32265]], [[64089, 64089], "mapped", [32321]], [[64090, 64090], "mapped", [32626]], [[64091, 64091], "mapped", [32773]], [[64092, 64092], "mapped", [33261]], [[64093, 64094], "mapped", [33401]], [[64095, 64095], "mapped", [33879]], [[64096, 64096], "mapped", [35088]], [[64097, 64097], "mapped", [35222]], [[64098, 64098], "mapped", [35585]], [[64099, 64099], "mapped", [35641]], [[64100, 64100], "mapped", [36051]], [[64101, 64101], "mapped", [36104]], [[64102, 64102], "mapped", [36790]], [[64103, 64103], "mapped", [36920]], [[64104, 64104], "mapped", [38627]], [[64105, 64105], "mapped", [38911]], [[64106, 64106], "mapped", [38971]], [[64107, 64107], "mapped", [24693]], [[64108, 64108], "mapped", [148206]], [[64109, 64109], "mapped", [33304]], [[64110, 64111], "disallowed"], [[64112, 64112], "mapped", [20006]], [[64113, 64113], "mapped", [20917]], [[64114, 64114], "mapped", [20840]], [[64115, 64115], "mapped", [20352]], [[64116, 64116], "mapped", [20805]], [[64117, 64117], "mapped", [20864]], [[64118, 64118], "mapped", [21191]], [[64119, 64119], "mapped", [21242]], [[64120, 64120], "mapped", [21917]], [[64121, 64121], "mapped", [21845]], [[64122, 64122], "mapped", [21913]], [[64123, 64123], "mapped", [21986]], [[64124, 64124], "mapped", [22618]], [[64125, 64125], "mapped", [22707]], [[64126, 64126], "mapped", [22852]], [[64127, 64127], "mapped", [22868]], [[64128, 64128], "mapped", [23138]], [[64129, 64129], "mapped", [23336]], [[64130, 64130], "mapped", [24274]], [[64131, 64131], "mapped", [24281]], [[64132, 64132], "mapped", [24425]], [[64133, 64133], "mapped", [24493]], [[64134, 64134], "mapped", [24792]], [[64135, 64135], "mapped", [24910]], [[64136, 64136], "mapped", [24840]], [[64137, 64137], "mapped", [24974]], [[64138, 64138], "mapped", [24928]], [[64139, 64139], "mapped", [25074]], [[64140, 64140], "mapped", [25140]], [[64141, 64141], "mapped", [25540]], [[64142, 64142], "mapped", [25628]], [[64143, 64143], "mapped", [25682]], [[64144, 64144], "mapped", [25942]], [[64145, 64145], "mapped", [26228]], [[64146, 64146], "mapped", [26391]], [[64147, 64147], "mapped", [26395]], [[64148, 64148], "mapped", [26454]], [[64149, 64149], "mapped", [27513]], [[64150, 64150], "mapped", [27578]], [[64151, 64151], "mapped", [27969]], [[64152, 64152], "mapped", [28379]], [[64153, 64153], "mapped", [28363]], [[64154, 64154], "mapped", [28450]], [[64155, 64155], "mapped", [28702]], [[64156, 64156], "mapped", [29038]], [[64157, 64157], "mapped", [30631]], [[64158, 64158], "mapped", [29237]], [[64159, 64159], "mapped", [29359]], [[64160, 64160], "mapped", [29482]], [[64161, 64161], "mapped", [29809]], [[64162, 64162], "mapped", [29958]], [[64163, 64163], "mapped", [30011]], [[64164, 64164], "mapped", [30237]], [[64165, 64165], "mapped", [30239]], [[64166, 64166], "mapped", [30410]], [[64167, 64167], "mapped", [30427]], [[64168, 64168], "mapped", [30452]], [[64169, 64169], "mapped", [30538]], [[64170, 64170], "mapped", [30528]], [[64171, 64171], "mapped", [30924]], [[64172, 64172], "mapped", [31409]], [[64173, 64173], "mapped", [31680]], [[64174, 64174], "mapped", [31867]], [[64175, 64175], "mapped", [32091]], [[64176, 64176], "mapped", [32244]], [[64177, 64177], "mapped", [32574]], [[64178, 64178], "mapped", [32773]], [[64179, 64179], "mapped", [33618]], [[64180, 64180], "mapped", [33775]], [[64181, 64181], "mapped", [34681]], [[64182, 64182], "mapped", [35137]], [[64183, 64183], "mapped", [35206]], [[64184, 64184], "mapped", [35222]], [[64185, 64185], "mapped", [35519]], [[64186, 64186], "mapped", [35576]], [[64187, 64187], "mapped", [35531]], [[64188, 64188], "mapped", [35585]], [[64189, 64189], "mapped", [35582]], [[64190, 64190], "mapped", [35565]], [[64191, 64191], "mapped", [35641]], [[64192, 64192], "mapped", [35722]], [[64193, 64193], "mapped", [36104]], [[64194, 64194], "mapped", [36664]], [[64195, 64195], "mapped", [36978]], [[64196, 64196], "mapped", [37273]], [[64197, 64197], "mapped", [37494]], [[64198, 64198], "mapped", [38524]], [[64199, 64199], "mapped", [38627]], [[64200, 64200], "mapped", [38742]], [[64201, 64201], "mapped", [38875]], [[64202, 64202], "mapped", [38911]], [[64203, 64203], "mapped", [38923]], [[64204, 64204], "mapped", [38971]], [[64205, 64205], "mapped", [39698]], [[64206, 64206], "mapped", [40860]], [[64207, 64207], "mapped", [141386]], [[64208, 64208], "mapped", [141380]], [[64209, 64209], "mapped", [144341]], [[64210, 64210], "mapped", [15261]], [[64211, 64211], "mapped", [16408]], [[64212, 64212], "mapped", [16441]], [[64213, 64213], "mapped", [152137]], [[64214, 64214], "mapped", [154832]], [[64215, 64215], "mapped", [163539]], [[64216, 64216], "mapped", [40771]], [[64217, 64217], "mapped", [40846]], [[64218, 64255], "disallowed"], [[64256, 64256], "mapped", [102, 102]], [[64257, 64257], "mapped", [102, 105]], [[64258, 64258], "mapped", [102, 108]], [[64259, 64259], "mapped", [102, 102, 105]], [[64260, 64260], "mapped", [102, 102, 108]], [[64261, 64262], "mapped", [115, 116]], [[64263, 64274], "disallowed"], [[64275, 64275], "mapped", [1396, 1398]], [[64276, 64276], "mapped", [1396, 1381]], [[64277, 64277], "mapped", [1396, 1387]], [[64278, 64278], "mapped", [1406, 1398]], [[64279, 64279], "mapped", [1396, 1389]], [[64280, 64284], "disallowed"], [[64285, 64285], "mapped", [1497, 1460]], [[64286, 64286], "valid"], [[64287, 64287], "mapped", [1522, 1463]], [[64288, 64288], "mapped", [1506]], [[64289, 64289], "mapped", [1488]], [[64290, 64290], "mapped", [1491]], [[64291, 64291], "mapped", [1492]], [[64292, 64292], "mapped", [1499]], [[64293, 64293], "mapped", [1500]], [[64294, 64294], "mapped", [1501]], [[64295, 64295], "mapped", [1512]], [[64296, 64296], "mapped", [1514]], [[64297, 64297], "disallowed_STD3_mapped", [43]], [[64298, 64298], "mapped", [1513, 1473]], [[64299, 64299], "mapped", [1513, 1474]], [[64300, 64300], "mapped", [1513, 1468, 1473]], [[64301, 64301], "mapped", [1513, 1468, 1474]], [[64302, 64302], "mapped", [1488, 1463]], [[64303, 64303], "mapped", [1488, 1464]], [[64304, 64304], "mapped", [1488, 1468]], [[64305, 64305], "mapped", [1489, 1468]], [[64306, 64306], "mapped", [1490, 1468]], [[64307, 64307], "mapped", [1491, 1468]], [[64308, 64308], "mapped", [1492, 1468]], [[64309, 64309], "mapped", [1493, 1468]], [[64310, 64310], "mapped", [1494, 1468]], [[64311, 64311], "disallowed"], [[64312, 64312], "mapped", [1496, 1468]], [[64313, 64313], "mapped", [1497, 1468]], [[64314, 64314], "mapped", [1498, 1468]], [[64315, 64315], "mapped", [1499, 1468]], [[64316, 64316], "mapped", [1500, 1468]], [[64317, 64317], "disallowed"], [[64318, 64318], "mapped", [1502, 1468]], [[64319, 64319], "disallowed"], [[64320, 64320], "mapped", [1504, 1468]], [[64321, 64321], "mapped", [1505, 1468]], [[64322, 64322], "disallowed"], [[64323, 64323], "mapped", [1507, 1468]], [[64324, 64324], "mapped", [1508, 1468]], [[64325, 64325], "disallowed"], [[64326, 64326], "mapped", [1510, 1468]], [[64327, 64327], "mapped", [1511, 1468]], [[64328, 64328], "mapped", [1512, 1468]], [[64329, 64329], "mapped", [1513, 1468]], [[64330, 64330], "mapped", [1514, 1468]], [[64331, 64331], "mapped", [1493, 1465]], [[64332, 64332], "mapped", [1489, 1471]], [[64333, 64333], "mapped", [1499, 1471]], [[64334, 64334], "mapped", [1508, 1471]], [[64335, 64335], "mapped", [1488, 1500]], [[64336, 64337], "mapped", [1649]], [[64338, 64341], "mapped", [1659]], [[64342, 64345], "mapped", [1662]], [[64346, 64349], "mapped", [1664]], [[64350, 64353], "mapped", [1658]], [[64354, 64357], "mapped", [1663]], [[64358, 64361], "mapped", [1657]], [[64362, 64365], "mapped", [1700]], [[64366, 64369], "mapped", [1702]], [[64370, 64373], "mapped", [1668]], [[64374, 64377], "mapped", [1667]], [[64378, 64381], "mapped", [1670]], [[64382, 64385], "mapped", [1671]], [[64386, 64387], "mapped", [1677]], [[64388, 64389], "mapped", [1676]], [[64390, 64391], "mapped", [1678]], [[64392, 64393], "mapped", [1672]], [[64394, 64395], "mapped", [1688]], [[64396, 64397], "mapped", [1681]], [[64398, 64401], "mapped", [1705]], [[64402, 64405], "mapped", [1711]], [[64406, 64409], "mapped", [1715]], [[64410, 64413], "mapped", [1713]], [[64414, 64415], "mapped", [1722]], [[64416, 64419], "mapped", [1723]], [[64420, 64421], "mapped", [1728]], [[64422, 64425], "mapped", [1729]], [[64426, 64429], "mapped", [1726]], [[64430, 64431], "mapped", [1746]], [[64432, 64433], "mapped", [1747]], [[64434, 64449], "valid", [], "NV8"], [[64450, 64466], "disallowed"], [[64467, 64470], "mapped", [1709]], [[64471, 64472], "mapped", [1735]], [[64473, 64474], "mapped", [1734]], [[64475, 64476], "mapped", [1736]], [[64477, 64477], "mapped", [1735, 1652]], [[64478, 64479], "mapped", [1739]], [[64480, 64481], "mapped", [1733]], [[64482, 64483], "mapped", [1737]], [[64484, 64487], "mapped", [1744]], [[64488, 64489], "mapped", [1609]], [[64490, 64491], "mapped", [1574, 1575]], [[64492, 64493], "mapped", [1574, 1749]], [[64494, 64495], "mapped", [1574, 1608]], [[64496, 64497], "mapped", [1574, 1735]], [[64498, 64499], "mapped", [1574, 1734]], [[64500, 64501], "mapped", [1574, 1736]], [[64502, 64504], "mapped", [1574, 1744]], [[64505, 64507], "mapped", [1574, 1609]], [[64508, 64511], "mapped", [1740]], [[64512, 64512], "mapped", [1574, 1580]], [[64513, 64513], "mapped", [1574, 1581]], [[64514, 64514], "mapped", [1574, 1605]], [[64515, 64515], "mapped", [1574, 1609]], [[64516, 64516], "mapped", [1574, 1610]], [[64517, 64517], "mapped", [1576, 1580]], [[64518, 64518], "mapped", [1576, 1581]], [[64519, 64519], "mapped", [1576, 1582]], [[64520, 64520], "mapped", [1576, 1605]], [[64521, 64521], "mapped", [1576, 1609]], [[64522, 64522], "mapped", [1576, 1610]], [[64523, 64523], "mapped", [1578, 1580]], [[64524, 64524], "mapped", [1578, 1581]], [[64525, 64525], "mapped", [1578, 1582]], [[64526, 64526], "mapped", [1578, 1605]], [[64527, 64527], "mapped", [1578, 1609]], [[64528, 64528], "mapped", [1578, 1610]], [[64529, 64529], "mapped", [1579, 1580]], [[64530, 64530], "mapped", [1579, 1605]], [[64531, 64531], "mapped", [1579, 1609]], [[64532, 64532], "mapped", [1579, 1610]], [[64533, 64533], "mapped", [1580, 1581]], [[64534, 64534], "mapped", [1580, 1605]], [[64535, 64535], "mapped", [1581, 1580]], [[64536, 64536], "mapped", [1581, 1605]], [[64537, 64537], "mapped", [1582, 1580]], [[64538, 64538], "mapped", [1582, 1581]], [[64539, 64539], "mapped", [1582, 1605]], [[64540, 64540], "mapped", [1587, 1580]], [[64541, 64541], "mapped", [1587, 1581]], [[64542, 64542], "mapped", [1587, 1582]], [[64543, 64543], "mapped", [1587, 1605]], [[64544, 64544], "mapped", [1589, 1581]], [[64545, 64545], "mapped", [1589, 1605]], [[64546, 64546], "mapped", [1590, 1580]], [[64547, 64547], "mapped", [1590, 1581]], [[64548, 64548], "mapped", [1590, 1582]], [[64549, 64549], "mapped", [1590, 1605]], [[64550, 64550], "mapped", [1591, 1581]], [[64551, 64551], "mapped", [1591, 1605]], [[64552, 64552], "mapped", [1592, 1605]], [[64553, 64553], "mapped", [1593, 1580]], [[64554, 64554], "mapped", [1593, 1605]], [[64555, 64555], "mapped", [1594, 1580]], [[64556, 64556], "mapped", [1594, 1605]], [[64557, 64557], "mapped", [1601, 1580]], [[64558, 64558], "mapped", [1601, 1581]], [[64559, 64559], "mapped", [1601, 1582]], [[64560, 64560], "mapped", [1601, 1605]], [[64561, 64561], "mapped", [1601, 1609]], [[64562, 64562], "mapped", [1601, 1610]], [[64563, 64563], "mapped", [1602, 1581]], [[64564, 64564], "mapped", [1602, 1605]], [[64565, 64565], "mapped", [1602, 1609]], [[64566, 64566], "mapped", [1602, 1610]], [[64567, 64567], "mapped", [1603, 1575]], [[64568, 64568], "mapped", [1603, 1580]], [[64569, 64569], "mapped", [1603, 1581]], [[64570, 64570], "mapped", [1603, 1582]], [[64571, 64571], "mapped", [1603, 1604]], [[64572, 64572], "mapped", [1603, 1605]], [[64573, 64573], "mapped", [1603, 1609]], [[64574, 64574], "mapped", [1603, 1610]], [[64575, 64575], "mapped", [1604, 1580]], [[64576, 64576], "mapped", [1604, 1581]], [[64577, 64577], "mapped", [1604, 1582]], [[64578, 64578], "mapped", [1604, 1605]], [[64579, 64579], "mapped", [1604, 1609]], [[64580, 64580], "mapped", [1604, 1610]], [[64581, 64581], "mapped", [1605, 1580]], [[64582, 64582], "mapped", [1605, 1581]], [[64583, 64583], "mapped", [1605, 1582]], [[64584, 64584], "mapped", [1605, 1605]], [[64585, 64585], "mapped", [1605, 1609]], [[64586, 64586], "mapped", [1605, 1610]], [[64587, 64587], "mapped", [1606, 1580]], [[64588, 64588], "mapped", [1606, 1581]], [[64589, 64589], "mapped", [1606, 1582]], [[64590, 64590], "mapped", [1606, 1605]], [[64591, 64591], "mapped", [1606, 1609]], [[64592, 64592], "mapped", [1606, 1610]], [[64593, 64593], "mapped", [1607, 1580]], [[64594, 64594], "mapped", [1607, 1605]], [[64595, 64595], "mapped", [1607, 1609]], [[64596, 64596], "mapped", [1607, 1610]], [[64597, 64597], "mapped", [1610, 1580]], [[64598, 64598], "mapped", [1610, 1581]], [[64599, 64599], "mapped", [1610, 1582]], [[64600, 64600], "mapped", [1610, 1605]], [[64601, 64601], "mapped", [1610, 1609]], [[64602, 64602], "mapped", [1610, 1610]], [[64603, 64603], "mapped", [1584, 1648]], [[64604, 64604], "mapped", [1585, 1648]], [[64605, 64605], "mapped", [1609, 1648]], [[64606, 64606], "disallowed_STD3_mapped", [32, 1612, 1617]], [[64607, 64607], "disallowed_STD3_mapped", [32, 1613, 1617]], [[64608, 64608], "disallowed_STD3_mapped", [32, 1614, 1617]], [[64609, 64609], "disallowed_STD3_mapped", [32, 1615, 1617]], [[64610, 64610], "disallowed_STD3_mapped", [32, 1616, 1617]], [[64611, 64611], "disallowed_STD3_mapped", [32, 1617, 1648]], [[64612, 64612], "mapped", [1574, 1585]], [[64613, 64613], "mapped", [1574, 1586]], [[64614, 64614], "mapped", [1574, 1605]], [[64615, 64615], "mapped", [1574, 1606]], [[64616, 64616], "mapped", [1574, 1609]], [[64617, 64617], "mapped", [1574, 1610]], [[64618, 64618], "mapped", [1576, 1585]], [[64619, 64619], "mapped", [1576, 1586]], [[64620, 64620], "mapped", [1576, 1605]], [[64621, 64621], "mapped", [1576, 1606]], [[64622, 64622], "mapped", [1576, 1609]], [[64623, 64623], "mapped", [1576, 1610]], [[64624, 64624], "mapped", [1578, 1585]], [[64625, 64625], "mapped", [1578, 1586]], [[64626, 64626], "mapped", [1578, 1605]], [[64627, 64627], "mapped", [1578, 1606]], [[64628, 64628], "mapped", [1578, 1609]], [[64629, 64629], "mapped", [1578, 1610]], [[64630, 64630], "mapped", [1579, 1585]], [[64631, 64631], "mapped", [1579, 1586]], [[64632, 64632], "mapped", [1579, 1605]], [[64633, 64633], "mapped", [1579, 1606]], [[64634, 64634], "mapped", [1579, 1609]], [[64635, 64635], "mapped", [1579, 1610]], [[64636, 64636], "mapped", [1601, 1609]], [[64637, 64637], "mapped", [1601, 1610]], [[64638, 64638], "mapped", [1602, 1609]], [[64639, 64639], "mapped", [1602, 1610]], [[64640, 64640], "mapped", [1603, 1575]], [[64641, 64641], "mapped", [1603, 1604]], [[64642, 64642], "mapped", [1603, 1605]], [[64643, 64643], "mapped", [1603, 1609]], [[64644, 64644], "mapped", [1603, 1610]], [[64645, 64645], "mapped", [1604, 1605]], [[64646, 64646], "mapped", [1604, 1609]], [[64647, 64647], "mapped", [1604, 1610]], [[64648, 64648], "mapped", [1605, 1575]], [[64649, 64649], "mapped", [1605, 1605]], [[64650, 64650], "mapped", [1606, 1585]], [[64651, 64651], "mapped", [1606, 1586]], [[64652, 64652], "mapped", [1606, 1605]], [[64653, 64653], "mapped", [1606, 1606]], [[64654, 64654], "mapped", [1606, 1609]], [[64655, 64655], "mapped", [1606, 1610]], [[64656, 64656], "mapped", [1609, 1648]], [[64657, 64657], "mapped", [1610, 1585]], [[64658, 64658], "mapped", [1610, 1586]], [[64659, 64659], "mapped", [1610, 1605]], [[64660, 64660], "mapped", [1610, 1606]], [[64661, 64661], "mapped", [1610, 1609]], [[64662, 64662], "mapped", [1610, 1610]], [[64663, 64663], "mapped", [1574, 1580]], [[64664, 64664], "mapped", [1574, 1581]], [[64665, 64665], "mapped", [1574, 1582]], [[64666, 64666], "mapped", [1574, 1605]], [[64667, 64667], "mapped", [1574, 1607]], [[64668, 64668], "mapped", [1576, 1580]], [[64669, 64669], "mapped", [1576, 1581]], [[64670, 64670], "mapped", [1576, 1582]], [[64671, 64671], "mapped", [1576, 1605]], [[64672, 64672], "mapped", [1576, 1607]], [[64673, 64673], "mapped", [1578, 1580]], [[64674, 64674], "mapped", [1578, 1581]], [[64675, 64675], "mapped", [1578, 1582]], [[64676, 64676], "mapped", [1578, 1605]], [[64677, 64677], "mapped", [1578, 1607]], [[64678, 64678], "mapped", [1579, 1605]], [[64679, 64679], "mapped", [1580, 1581]], [[64680, 64680], "mapped", [1580, 1605]], [[64681, 64681], "mapped", [1581, 1580]], [[64682, 64682], "mapped", [1581, 1605]], [[64683, 64683], "mapped", [1582, 1580]], [[64684, 64684], "mapped", [1582, 1605]], [[64685, 64685], "mapped", [1587, 1580]], [[64686, 64686], "mapped", [1587, 1581]], [[64687, 64687], "mapped", [1587, 1582]], [[64688, 64688], "mapped", [1587, 1605]], [[64689, 64689], "mapped", [1589, 1581]], [[64690, 64690], "mapped", [1589, 1582]], [[64691, 64691], "mapped", [1589, 1605]], [[64692, 64692], "mapped", [1590, 1580]], [[64693, 64693], "mapped", [1590, 1581]], [[64694, 64694], "mapped", [1590, 1582]], [[64695, 64695], "mapped", [1590, 1605]], [[64696, 64696], "mapped", [1591, 1581]], [[64697, 64697], "mapped", [1592, 1605]], [[64698, 64698], "mapped", [1593, 1580]], [[64699, 64699], "mapped", [1593, 1605]], [[64700, 64700], "mapped", [1594, 1580]], [[64701, 64701], "mapped", [1594, 1605]], [[64702, 64702], "mapped", [1601, 1580]], [[64703, 64703], "mapped", [1601, 1581]], [[64704, 64704], "mapped", [1601, 1582]], [[64705, 64705], "mapped", [1601, 1605]], [[64706, 64706], "mapped", [1602, 1581]], [[64707, 64707], "mapped", [1602, 1605]], [[64708, 64708], "mapped", [1603, 1580]], [[64709, 64709], "mapped", [1603, 1581]], [[64710, 64710], "mapped", [1603, 1582]], [[64711, 64711], "mapped", [1603, 1604]], [[64712, 64712], "mapped", [1603, 1605]], [[64713, 64713], "mapped", [1604, 1580]], [[64714, 64714], "mapped", [1604, 1581]], [[64715, 64715], "mapped", [1604, 1582]], [[64716, 64716], "mapped", [1604, 1605]], [[64717, 64717], "mapped", [1604, 1607]], [[64718, 64718], "mapped", [1605, 1580]], [[64719, 64719], "mapped", [1605, 1581]], [[64720, 64720], "mapped", [1605, 1582]], [[64721, 64721], "mapped", [1605, 1605]], [[64722, 64722], "mapped", [1606, 1580]], [[64723, 64723], "mapped", [1606, 1581]], [[64724, 64724], "mapped", [1606, 1582]], [[64725, 64725], "mapped", [1606, 1605]], [[64726, 64726], "mapped", [1606, 1607]], [[64727, 64727], "mapped", [1607, 1580]], [[64728, 64728], "mapped", [1607, 1605]], [[64729, 64729], "mapped", [1607, 1648]], [[64730, 64730], "mapped", [1610, 1580]], [[64731, 64731], "mapped", [1610, 1581]], [[64732, 64732], "mapped", [1610, 1582]], [[64733, 64733], "mapped", [1610, 1605]], [[64734, 64734], "mapped", [1610, 1607]], [[64735, 64735], "mapped", [1574, 1605]], [[64736, 64736], "mapped", [1574, 1607]], [[64737, 64737], "mapped", [1576, 1605]], [[64738, 64738], "mapped", [1576, 1607]], [[64739, 64739], "mapped", [1578, 1605]], [[64740, 64740], "mapped", [1578, 1607]], [[64741, 64741], "mapped", [1579, 1605]], [[64742, 64742], "mapped", [1579, 1607]], [[64743, 64743], "mapped", [1587, 1605]], [[64744, 64744], "mapped", [1587, 1607]], [[64745, 64745], "mapped", [1588, 1605]], [[64746, 64746], "mapped", [1588, 1607]], [[64747, 64747], "mapped", [1603, 1604]], [[64748, 64748], "mapped", [1603, 1605]], [[64749, 64749], "mapped", [1604, 1605]], [[64750, 64750], "mapped", [1606, 1605]], [[64751, 64751], "mapped", [1606, 1607]], [[64752, 64752], "mapped", [1610, 1605]], [[64753, 64753], "mapped", [1610, 1607]], [[64754, 64754], "mapped", [1600, 1614, 1617]], [[64755, 64755], "mapped", [1600, 1615, 1617]], [[64756, 64756], "mapped", [1600, 1616, 1617]], [[64757, 64757], "mapped", [1591, 1609]], [[64758, 64758], "mapped", [1591, 1610]], [[64759, 64759], "mapped", [1593, 1609]], [[64760, 64760], "mapped", [1593, 1610]], [[64761, 64761], "mapped", [1594, 1609]], [[64762, 64762], "mapped", [1594, 1610]], [[64763, 64763], "mapped", [1587, 1609]], [[64764, 64764], "mapped", [1587, 1610]], [[64765, 64765], "mapped", [1588, 1609]], [[64766, 64766], "mapped", [1588, 1610]], [[64767, 64767], "mapped", [1581, 1609]], [[64768, 64768], "mapped", [1581, 1610]], [[64769, 64769], "mapped", [1580, 1609]], [[64770, 64770], "mapped", [1580, 1610]], [[64771, 64771], "mapped", [1582, 1609]], [[64772, 64772], "mapped", [1582, 1610]], [[64773, 64773], "mapped", [1589, 1609]], [[64774, 64774], "mapped", [1589, 1610]], [[64775, 64775], "mapped", [1590, 1609]], [[64776, 64776], "mapped", [1590, 1610]], [[64777, 64777], "mapped", [1588, 1580]], [[64778, 64778], "mapped", [1588, 1581]], [[64779, 64779], "mapped", [1588, 1582]], [[64780, 64780], "mapped", [1588, 1605]], [[64781, 64781], "mapped", [1588, 1585]], [[64782, 64782], "mapped", [1587, 1585]], [[64783, 64783], "mapped", [1589, 1585]], [[64784, 64784], "mapped", [1590, 1585]], [[64785, 64785], "mapped", [1591, 1609]], [[64786, 64786], "mapped", [1591, 1610]], [[64787, 64787], "mapped", [1593, 1609]], [[64788, 64788], "mapped", [1593, 1610]], [[64789, 64789], "mapped", [1594, 1609]], [[64790, 64790], "mapped", [1594, 1610]], [[64791, 64791], "mapped", [1587, 1609]], [[64792, 64792], "mapped", [1587, 1610]], [[64793, 64793], "mapped", [1588, 1609]], [[64794, 64794], "mapped", [1588, 1610]], [[64795, 64795], "mapped", [1581, 1609]], [[64796, 64796], "mapped", [1581, 1610]], [[64797, 64797], "mapped", [1580, 1609]], [[64798, 64798], "mapped", [1580, 1610]], [[64799, 64799], "mapped", [1582, 1609]], [[64800, 64800], "mapped", [1582, 1610]], [[64801, 64801], "mapped", [1589, 1609]], [[64802, 64802], "mapped", [1589, 1610]], [[64803, 64803], "mapped", [1590, 1609]], [[64804, 64804], "mapped", [1590, 1610]], [[64805, 64805], "mapped", [1588, 1580]], [[64806, 64806], "mapped", [1588, 1581]], [[64807, 64807], "mapped", [1588, 1582]], [[64808, 64808], "mapped", [1588, 1605]], [[64809, 64809], "mapped", [1588, 1585]], [[64810, 64810], "mapped", [1587, 1585]], [[64811, 64811], "mapped", [1589, 1585]], [[64812, 64812], "mapped", [1590, 1585]], [[64813, 64813], "mapped", [1588, 1580]], [[64814, 64814], "mapped", [1588, 1581]], [[64815, 64815], "mapped", [1588, 1582]], [[64816, 64816], "mapped", [1588, 1605]], [[64817, 64817], "mapped", [1587, 1607]], [[64818, 64818], "mapped", [1588, 1607]], [[64819, 64819], "mapped", [1591, 1605]], [[64820, 64820], "mapped", [1587, 1580]], [[64821, 64821], "mapped", [1587, 1581]], [[64822, 64822], "mapped", [1587, 1582]], [[64823, 64823], "mapped", [1588, 1580]], [[64824, 64824], "mapped", [1588, 1581]], [[64825, 64825], "mapped", [1588, 1582]], [[64826, 64826], "mapped", [1591, 1605]], [[64827, 64827], "mapped", [1592, 1605]], [[64828, 64829], "mapped", [1575, 1611]], [[64830, 64831], "valid", [], "NV8"], [[64832, 64847], "disallowed"], [[64848, 64848], "mapped", [1578, 1580, 1605]], [[64849, 64850], "mapped", [1578, 1581, 1580]], [[64851, 64851], "mapped", [1578, 1581, 1605]], [[64852, 64852], "mapped", [1578, 1582, 1605]], [[64853, 64853], "mapped", [1578, 1605, 1580]], [[64854, 64854], "mapped", [1578, 1605, 1581]], [[64855, 64855], "mapped", [1578, 1605, 1582]], [[64856, 64857], "mapped", [1580, 1605, 1581]], [[64858, 64858], "mapped", [1581, 1605, 1610]], [[64859, 64859], "mapped", [1581, 1605, 1609]], [[64860, 64860], "mapped", [1587, 1581, 1580]], [[64861, 64861], "mapped", [1587, 1580, 1581]], [[64862, 64862], "mapped", [1587, 1580, 1609]], [[64863, 64864], "mapped", [1587, 1605, 1581]], [[64865, 64865], "mapped", [1587, 1605, 1580]], [[64866, 64867], "mapped", [1587, 1605, 1605]], [[64868, 64869], "mapped", [1589, 1581, 1581]], [[64870, 64870], "mapped", [1589, 1605, 1605]], [[64871, 64872], "mapped", [1588, 1581, 1605]], [[64873, 64873], "mapped", [1588, 1580, 1610]], [[64874, 64875], "mapped", [1588, 1605, 1582]], [[64876, 64877], "mapped", [1588, 1605, 1605]], [[64878, 64878], "mapped", [1590, 1581, 1609]], [[64879, 64880], "mapped", [1590, 1582, 1605]], [[64881, 64882], "mapped", [1591, 1605, 1581]], [[64883, 64883], "mapped", [1591, 1605, 1605]], [[64884, 64884], "mapped", [1591, 1605, 1610]], [[64885, 64885], "mapped", [1593, 1580, 1605]], [[64886, 64887], "mapped", [1593, 1605, 1605]], [[64888, 64888], "mapped", [1593, 1605, 1609]], [[64889, 64889], "mapped", [1594, 1605, 1605]], [[64890, 64890], "mapped", [1594, 1605, 1610]], [[64891, 64891], "mapped", [1594, 1605, 1609]], [[64892, 64893], "mapped", [1601, 1582, 1605]], [[64894, 64894], "mapped", [1602, 1605, 1581]], [[64895, 64895], "mapped", [1602, 1605, 1605]], [[64896, 64896], "mapped", [1604, 1581, 1605]], [[64897, 64897], "mapped", [1604, 1581, 1610]], [[64898, 64898], "mapped", [1604, 1581, 1609]], [[64899, 64900], "mapped", [1604, 1580, 1580]], [[64901, 64902], "mapped", [1604, 1582, 1605]], [[64903, 64904], "mapped", [1604, 1605, 1581]], [[64905, 64905], "mapped", [1605, 1581, 1580]], [[64906, 64906], "mapped", [1605, 1581, 1605]], [[64907, 64907], "mapped", [1605, 1581, 1610]], [[64908, 64908], "mapped", [1605, 1580, 1581]], [[64909, 64909], "mapped", [1605, 1580, 1605]], [[64910, 64910], "mapped", [1605, 1582, 1580]], [[64911, 64911], "mapped", [1605, 1582, 1605]], [[64912, 64913], "disallowed"], [[64914, 64914], "mapped", [1605, 1580, 1582]], [[64915, 64915], "mapped", [1607, 1605, 1580]], [[64916, 64916], "mapped", [1607, 1605, 1605]], [[64917, 64917], "mapped", [1606, 1581, 1605]], [[64918, 64918], "mapped", [1606, 1581, 1609]], [[64919, 64920], "mapped", [1606, 1580, 1605]], [[64921, 64921], "mapped", [1606, 1580, 1609]], [[64922, 64922], "mapped", [1606, 1605, 1610]], [[64923, 64923], "mapped", [1606, 1605, 1609]], [[64924, 64925], "mapped", [1610, 1605, 1605]], [[64926, 64926], "mapped", [1576, 1582, 1610]], [[64927, 64927], "mapped", [1578, 1580, 1610]], [[64928, 64928], "mapped", [1578, 1580, 1609]], [[64929, 64929], "mapped", [1578, 1582, 1610]], [[64930, 64930], "mapped", [1578, 1582, 1609]], [[64931, 64931], "mapped", [1578, 1605, 1610]], [[64932, 64932], "mapped", [1578, 1605, 1609]], [[64933, 64933], "mapped", [1580, 1605, 1610]], [[64934, 64934], "mapped", [1580, 1581, 1609]], [[64935, 64935], "mapped", [1580, 1605, 1609]], [[64936, 64936], "mapped", [1587, 1582, 1609]], [[64937, 64937], "mapped", [1589, 1581, 1610]], [[64938, 64938], "mapped", [1588, 1581, 1610]], [[64939, 64939], "mapped", [1590, 1581, 1610]], [[64940, 64940], "mapped", [1604, 1580, 1610]], [[64941, 64941], "mapped", [1604, 1605, 1610]], [[64942, 64942], "mapped", [1610, 1581, 1610]], [[64943, 64943], "mapped", [1610, 1580, 1610]], [[64944, 64944], "mapped", [1610, 1605, 1610]], [[64945, 64945], "mapped", [1605, 1605, 1610]], [[64946, 64946], "mapped", [1602, 1605, 1610]], [[64947, 64947], "mapped", [1606, 1581, 1610]], [[64948, 64948], "mapped", [1602, 1605, 1581]], [[64949, 64949], "mapped", [1604, 1581, 1605]], [[64950, 64950], "mapped", [1593, 1605, 1610]], [[64951, 64951], "mapped", [1603, 1605, 1610]], [[64952, 64952], "mapped", [1606, 1580, 1581]], [[64953, 64953], "mapped", [1605, 1582, 1610]], [[64954, 64954], "mapped", [1604, 1580, 1605]], [[64955, 64955], "mapped", [1603, 1605, 1605]], [[64956, 64956], "mapped", [1604, 1580, 1605]], [[64957, 64957], "mapped", [1606, 1580, 1581]], [[64958, 64958], "mapped", [1580, 1581, 1610]], [[64959, 64959], "mapped", [1581, 1580, 1610]], [[64960, 64960], "mapped", [1605, 1580, 1610]], [[64961, 64961], "mapped", [1601, 1605, 1610]], [[64962, 64962], "mapped", [1576, 1581, 1610]], [[64963, 64963], "mapped", [1603, 1605, 1605]], [[64964, 64964], "mapped", [1593, 1580, 1605]], [[64965, 64965], "mapped", [1589, 1605, 1605]], [[64966, 64966], "mapped", [1587, 1582, 1610]], [[64967, 64967], "mapped", [1606, 1580, 1610]], [[64968, 64975], "disallowed"], [[64976, 65007], "disallowed"], [[65008, 65008], "mapped", [1589, 1604, 1746]], [[65009, 65009], "mapped", [1602, 1604, 1746]], [[65010, 65010], "mapped", [1575, 1604, 1604, 1607]], [[65011, 65011], "mapped", [1575, 1603, 1576, 1585]], [[65012, 65012], "mapped", [1605, 1581, 1605, 1583]], [[65013, 65013], "mapped", [1589, 1604, 1593, 1605]], [[65014, 65014], "mapped", [1585, 1587, 1608, 1604]], [[65015, 65015], "mapped", [1593, 1604, 1610, 1607]], [[65016, 65016], "mapped", [1608, 1587, 1604, 1605]], [[65017, 65017], "mapped", [1589, 1604, 1609]], [[65018, 65018], "disallowed_STD3_mapped", [1589, 1604, 1609, 32, 1575, 1604, 1604, 1607, 32, 1593, 1604, 1610, 1607, 32, 1608, 1587, 1604, 1605]], [[65019, 65019], "disallowed_STD3_mapped", [1580, 1604, 32, 1580, 1604, 1575, 1604, 1607]], [[65020, 65020], "mapped", [1585, 1740, 1575, 1604]], [[65021, 65021], "valid", [], "NV8"], [[65022, 65023], "disallowed"], [[65024, 65039], "ignored"], [[65040, 65040], "disallowed_STD3_mapped", [44]], [[65041, 65041], "mapped", [12289]], [[65042, 65042], "disallowed"], [[65043, 65043], "disallowed_STD3_mapped", [58]], [[65044, 65044], "disallowed_STD3_mapped", [59]], [[65045, 65045], "disallowed_STD3_mapped", [33]], [[65046, 65046], "disallowed_STD3_mapped", [63]], [[65047, 65047], "mapped", [12310]], [[65048, 65048], "mapped", [12311]], [[65049, 65049], "disallowed"], [[65050, 65055], "disallowed"], [[65056, 65059], "valid"], [[65060, 65062], "valid"], [[65063, 65069], "valid"], [[65070, 65071], "valid"], [[65072, 65072], "disallowed"], [[65073, 65073], "mapped", [8212]], [[65074, 65074], "mapped", [8211]], [[65075, 65076], "disallowed_STD3_mapped", [95]], [[65077, 65077], "disallowed_STD3_mapped", [40]], [[65078, 65078], "disallowed_STD3_mapped", [41]], [[65079, 65079], "disallowed_STD3_mapped", [123]], [[65080, 65080], "disallowed_STD3_mapped", [125]], [[65081, 65081], "mapped", [12308]], [[65082, 65082], "mapped", [12309]], [[65083, 65083], "mapped", [12304]], [[65084, 65084], "mapped", [12305]], [[65085, 65085], "mapped", [12298]], [[65086, 65086], "mapped", [12299]], [[65087, 65087], "mapped", [12296]], [[65088, 65088], "mapped", [12297]], [[65089, 65089], "mapped", [12300]], [[65090, 65090], "mapped", [12301]], [[65091, 65091], "mapped", [12302]], [[65092, 65092], "mapped", [12303]], [[65093, 65094], "valid", [], "NV8"], [[65095, 65095], "disallowed_STD3_mapped", [91]], [[65096, 65096], "disallowed_STD3_mapped", [93]], [[65097, 65100], "disallowed_STD3_mapped", [32, 773]], [[65101, 65103], "disallowed_STD3_mapped", [95]], [[65104, 65104], "disallowed_STD3_mapped", [44]], [[65105, 65105], "mapped", [12289]], [[65106, 65106], "disallowed"], [[65107, 65107], "disallowed"], [[65108, 65108], "disallowed_STD3_mapped", [59]], [[65109, 65109], "disallowed_STD3_mapped", [58]], [[65110, 65110], "disallowed_STD3_mapped", [63]], [[65111, 65111], "disallowed_STD3_mapped", [33]], [[65112, 65112], "mapped", [8212]], [[65113, 65113], "disallowed_STD3_mapped", [40]], [[65114, 65114], "disallowed_STD3_mapped", [41]], [[65115, 65115], "disallowed_STD3_mapped", [123]], [[65116, 65116], "disallowed_STD3_mapped", [125]], [[65117, 65117], "mapped", [12308]], [[65118, 65118], "mapped", [12309]], [[65119, 65119], "disallowed_STD3_mapped", [35]], [[65120, 65120], "disallowed_STD3_mapped", [38]], [[65121, 65121], "disallowed_STD3_mapped", [42]], [[65122, 65122], "disallowed_STD3_mapped", [43]], [[65123, 65123], "mapped", [45]], [[65124, 65124], "disallowed_STD3_mapped", [60]], [[65125, 65125], "disallowed_STD3_mapped", [62]], [[65126, 65126], "disallowed_STD3_mapped", [61]], [[65127, 65127], "disallowed"], [[65128, 65128], "disallowed_STD3_mapped", [92]], [[65129, 65129], "disallowed_STD3_mapped", [36]], [[65130, 65130], "disallowed_STD3_mapped", [37]], [[65131, 65131], "disallowed_STD3_mapped", [64]], [[65132, 65135], "disallowed"], [[65136, 65136], "disallowed_STD3_mapped", [32, 1611]], [[65137, 65137], "mapped", [1600, 1611]], [[65138, 65138], "disallowed_STD3_mapped", [32, 1612]], [[65139, 65139], "valid"], [[65140, 65140], "disallowed_STD3_mapped", [32, 1613]], [[65141, 65141], "disallowed"], [[65142, 65142], "disallowed_STD3_mapped", [32, 1614]], [[65143, 65143], "mapped", [1600, 1614]], [[65144, 65144], "disallowed_STD3_mapped", [32, 1615]], [[65145, 65145], "mapped", [1600, 1615]], [[65146, 65146], "disallowed_STD3_mapped", [32, 1616]], [[65147, 65147], "mapped", [1600, 1616]], [[65148, 65148], "disallowed_STD3_mapped", [32, 1617]], [[65149, 65149], "mapped", [1600, 1617]], [[65150, 65150], "disallowed_STD3_mapped", [32, 1618]], [[65151, 65151], "mapped", [1600, 1618]], [[65152, 65152], "mapped", [1569]], [[65153, 65154], "mapped", [1570]], [[65155, 65156], "mapped", [1571]], [[65157, 65158], "mapped", [1572]], [[65159, 65160], "mapped", [1573]], [[65161, 65164], "mapped", [1574]], [[65165, 65166], "mapped", [1575]], [[65167, 65170], "mapped", [1576]], [[65171, 65172], "mapped", [1577]], [[65173, 65176], "mapped", [1578]], [[65177, 65180], "mapped", [1579]], [[65181, 65184], "mapped", [1580]], [[65185, 65188], "mapped", [1581]], [[65189, 65192], "mapped", [1582]], [[65193, 65194], "mapped", [1583]], [[65195, 65196], "mapped", [1584]], [[65197, 65198], "mapped", [1585]], [[65199, 65200], "mapped", [1586]], [[65201, 65204], "mapped", [1587]], [[65205, 65208], "mapped", [1588]], [[65209, 65212], "mapped", [1589]], [[65213, 65216], "mapped", [1590]], [[65217, 65220], "mapped", [1591]], [[65221, 65224], "mapped", [1592]], [[65225, 65228], "mapped", [1593]], [[65229, 65232], "mapped", [1594]], [[65233, 65236], "mapped", [1601]], [[65237, 65240], "mapped", [1602]], [[65241, 65244], "mapped", [1603]], [[65245, 65248], "mapped", [1604]], [[65249, 65252], "mapped", [1605]], [[65253, 65256], "mapped", [1606]], [[65257, 65260], "mapped", [1607]], [[65261, 65262], "mapped", [1608]], [[65263, 65264], "mapped", [1609]], [[65265, 65268], "mapped", [1610]], [[65269, 65270], "mapped", [1604, 1570]], [[65271, 65272], "mapped", [1604, 1571]], [[65273, 65274], "mapped", [1604, 1573]], [[65275, 65276], "mapped", [1604, 1575]], [[65277, 65278], "disallowed"], [[65279, 65279], "ignored"], [[65280, 65280], "disallowed"], [[65281, 65281], "disallowed_STD3_mapped", [33]], [[65282, 65282], "disallowed_STD3_mapped", [34]], [[65283, 65283], "disallowed_STD3_mapped", [35]], [[65284, 65284], "disallowed_STD3_mapped", [36]], [[65285, 65285], "disallowed_STD3_mapped", [37]], [[65286, 65286], "disallowed_STD3_mapped", [38]], [[65287, 65287], "disallowed_STD3_mapped", [39]], [[65288, 65288], "disallowed_STD3_mapped", [40]], [[65289, 65289], "disallowed_STD3_mapped", [41]], [[65290, 65290], "disallowed_STD3_mapped", [42]], [[65291, 65291], "disallowed_STD3_mapped", [43]], [[65292, 65292], "disallowed_STD3_mapped", [44]], [[65293, 65293], "mapped", [45]], [[65294, 65294], "mapped", [46]], [[65295, 65295], "disallowed_STD3_mapped", [47]], [[65296, 65296], "mapped", [48]], [[65297, 65297], "mapped", [49]], [[65298, 65298], "mapped", [50]], [[65299, 65299], "mapped", [51]], [[65300, 65300], "mapped", [52]], [[65301, 65301], "mapped", [53]], [[65302, 65302], "mapped", [54]], [[65303, 65303], "mapped", [55]], [[65304, 65304], "mapped", [56]], [[65305, 65305], "mapped", [57]], [[65306, 65306], "disallowed_STD3_mapped", [58]], [[65307, 65307], "disallowed_STD3_mapped", [59]], [[65308, 65308], "disallowed_STD3_mapped", [60]], [[65309, 65309], "disallowed_STD3_mapped", [61]], [[65310, 65310], "disallowed_STD3_mapped", [62]], [[65311, 65311], "disallowed_STD3_mapped", [63]], [[65312, 65312], "disallowed_STD3_mapped", [64]], [[65313, 65313], "mapped", [97]], [[65314, 65314], "mapped", [98]], [[65315, 65315], "mapped", [99]], [[65316, 65316], "mapped", [100]], [[65317, 65317], "mapped", [101]], [[65318, 65318], "mapped", [102]], [[65319, 65319], "mapped", [103]], [[65320, 65320], "mapped", [104]], [[65321, 65321], "mapped", [105]], [[65322, 65322], "mapped", [106]], [[65323, 65323], "mapped", [107]], [[65324, 65324], "mapped", [108]], [[65325, 65325], "mapped", [109]], [[65326, 65326], "mapped", [110]], [[65327, 65327], "mapped", [111]], [[65328, 65328], "mapped", [112]], [[65329, 65329], "mapped", [113]], [[65330, 65330], "mapped", [114]], [[65331, 65331], "mapped", [115]], [[65332, 65332], "mapped", [116]], [[65333, 65333], "mapped", [117]], [[65334, 65334], "mapped", [118]], [[65335, 65335], "mapped", [119]], [[65336, 65336], "mapped", [120]], [[65337, 65337], "mapped", [121]], [[65338, 65338], "mapped", [122]], [[65339, 65339], "disallowed_STD3_mapped", [91]], [[65340, 65340], "disallowed_STD3_mapped", [92]], [[65341, 65341], "disallowed_STD3_mapped", [93]], [[65342, 65342], "disallowed_STD3_mapped", [94]], [[65343, 65343], "disallowed_STD3_mapped", [95]], [[65344, 65344], "disallowed_STD3_mapped", [96]], [[65345, 65345], "mapped", [97]], [[65346, 65346], "mapped", [98]], [[65347, 65347], "mapped", [99]], [[65348, 65348], "mapped", [100]], [[65349, 65349], "mapped", [101]], [[65350, 65350], "mapped", [102]], [[65351, 65351], "mapped", [103]], [[65352, 65352], "mapped", [104]], [[65353, 65353], "mapped", [105]], [[65354, 65354], "mapped", [106]], [[65355, 65355], "mapped", [107]], [[65356, 65356], "mapped", [108]], [[65357, 65357], "mapped", [109]], [[65358, 65358], "mapped", [110]], [[65359, 65359], "mapped", [111]], [[65360, 65360], "mapped", [112]], [[65361, 65361], "mapped", [113]], [[65362, 65362], "mapped", [114]], [[65363, 65363], "mapped", [115]], [[65364, 65364], "mapped", [116]], [[65365, 65365], "mapped", [117]], [[65366, 65366], "mapped", [118]], [[65367, 65367], "mapped", [119]], [[65368, 65368], "mapped", [120]], [[65369, 65369], "mapped", [121]], [[65370, 65370], "mapped", [122]], [[65371, 65371], "disallowed_STD3_mapped", [123]], [[65372, 65372], "disallowed_STD3_mapped", [124]], [[65373, 65373], "disallowed_STD3_mapped", [125]], [[65374, 65374], "disallowed_STD3_mapped", [126]], [[65375, 65375], "mapped", [10629]], [[65376, 65376], "mapped", [10630]], [[65377, 65377], "mapped", [46]], [[65378, 65378], "mapped", [12300]], [[65379, 65379], "mapped", [12301]], [[65380, 65380], "mapped", [12289]], [[65381, 65381], "mapped", [12539]], [[65382, 65382], "mapped", [12530]], [[65383, 65383], "mapped", [12449]], [[65384, 65384], "mapped", [12451]], [[65385, 65385], "mapped", [12453]], [[65386, 65386], "mapped", [12455]], [[65387, 65387], "mapped", [12457]], [[65388, 65388], "mapped", [12515]], [[65389, 65389], "mapped", [12517]], [[65390, 65390], "mapped", [12519]], [[65391, 65391], "mapped", [12483]], [[65392, 65392], "mapped", [12540]], [[65393, 65393], "mapped", [12450]], [[65394, 65394], "mapped", [12452]], [[65395, 65395], "mapped", [12454]], [[65396, 65396], "mapped", [12456]], [[65397, 65397], "mapped", [12458]], [[65398, 65398], "mapped", [12459]], [[65399, 65399], "mapped", [12461]], [[65400, 65400], "mapped", [12463]], [[65401, 65401], "mapped", [12465]], [[65402, 65402], "mapped", [12467]], [[65403, 65403], "mapped", [12469]], [[65404, 65404], "mapped", [12471]], [[65405, 65405], "mapped", [12473]], [[65406, 65406], "mapped", [12475]], [[65407, 65407], "mapped", [12477]], [[65408, 65408], "mapped", [12479]], [[65409, 65409], "mapped", [12481]], [[65410, 65410], "mapped", [12484]], [[65411, 65411], "mapped", [12486]], [[65412, 65412], "mapped", [12488]], [[65413, 65413], "mapped", [12490]], [[65414, 65414], "mapped", [12491]], [[65415, 65415], "mapped", [12492]], [[65416, 65416], "mapped", [12493]], [[65417, 65417], "mapped", [12494]], [[65418, 65418], "mapped", [12495]], [[65419, 65419], "mapped", [12498]], [[65420, 65420], "mapped", [12501]], [[65421, 65421], "mapped", [12504]], [[65422, 65422], "mapped", [12507]], [[65423, 65423], "mapped", [12510]], [[65424, 65424], "mapped", [12511]], [[65425, 65425], "mapped", [12512]], [[65426, 65426], "mapped", [12513]], [[65427, 65427], "mapped", [12514]], [[65428, 65428], "mapped", [12516]], [[65429, 65429], "mapped", [12518]], [[65430, 65430], "mapped", [12520]], [[65431, 65431], "mapped", [12521]], [[65432, 65432], "mapped", [12522]], [[65433, 65433], "mapped", [12523]], [[65434, 65434], "mapped", [12524]], [[65435, 65435], "mapped", [12525]], [[65436, 65436], "mapped", [12527]], [[65437, 65437], "mapped", [12531]], [[65438, 65438], "mapped", [12441]], [[65439, 65439], "mapped", [12442]], [[65440, 65440], "disallowed"], [[65441, 65441], "mapped", [4352]], [[65442, 65442], "mapped", [4353]], [[65443, 65443], "mapped", [4522]], [[65444, 65444], "mapped", [4354]], [[65445, 65445], "mapped", [4524]], [[65446, 65446], "mapped", [4525]], [[65447, 65447], "mapped", [4355]], [[65448, 65448], "mapped", [4356]], [[65449, 65449], "mapped", [4357]], [[65450, 65450], "mapped", [4528]], [[65451, 65451], "mapped", [4529]], [[65452, 65452], "mapped", [4530]], [[65453, 65453], "mapped", [4531]], [[65454, 65454], "mapped", [4532]], [[65455, 65455], "mapped", [4533]], [[65456, 65456], "mapped", [4378]], [[65457, 65457], "mapped", [4358]], [[65458, 65458], "mapped", [4359]], [[65459, 65459], "mapped", [4360]], [[65460, 65460], "mapped", [4385]], [[65461, 65461], "mapped", [4361]], [[65462, 65462], "mapped", [4362]], [[65463, 65463], "mapped", [4363]], [[65464, 65464], "mapped", [4364]], [[65465, 65465], "mapped", [4365]], [[65466, 65466], "mapped", [4366]], [[65467, 65467], "mapped", [4367]], [[65468, 65468], "mapped", [4368]], [[65469, 65469], "mapped", [4369]], [[65470, 65470], "mapped", [4370]], [[65471, 65473], "disallowed"], [[65474, 65474], "mapped", [4449]], [[65475, 65475], "mapped", [4450]], [[65476, 65476], "mapped", [4451]], [[65477, 65477], "mapped", [4452]], [[65478, 65478], "mapped", [4453]], [[65479, 65479], "mapped", [4454]], [[65480, 65481], "disallowed"], [[65482, 65482], "mapped", [4455]], [[65483, 65483], "mapped", [4456]], [[65484, 65484], "mapped", [4457]], [[65485, 65485], "mapped", [4458]], [[65486, 65486], "mapped", [4459]], [[65487, 65487], "mapped", [4460]], [[65488, 65489], "disallowed"], [[65490, 65490], "mapped", [4461]], [[65491, 65491], "mapped", [4462]], [[65492, 65492], "mapped", [4463]], [[65493, 65493], "mapped", [4464]], [[65494, 65494], "mapped", [4465]], [[65495, 65495], "mapped", [4466]], [[65496, 65497], "disallowed"], [[65498, 65498], "mapped", [4467]], [[65499, 65499], "mapped", [4468]], [[65500, 65500], "mapped", [4469]], [[65501, 65503], "disallowed"], [[65504, 65504], "mapped", [162]], [[65505, 65505], "mapped", [163]], [[65506, 65506], "mapped", [172]], [[65507, 65507], "disallowed_STD3_mapped", [32, 772]], [[65508, 65508], "mapped", [166]], [[65509, 65509], "mapped", [165]], [[65510, 65510], "mapped", [8361]], [[65511, 65511], "disallowed"], [[65512, 65512], "mapped", [9474]], [[65513, 65513], "mapped", [8592]], [[65514, 65514], "mapped", [8593]], [[65515, 65515], "mapped", [8594]], [[65516, 65516], "mapped", [8595]], [[65517, 65517], "mapped", [9632]], [[65518, 65518], "mapped", [9675]], [[65519, 65528], "disallowed"], [[65529, 65531], "disallowed"], [[65532, 65532], "disallowed"], [[65533, 65533], "disallowed"], [[65534, 65535], "disallowed"], [[65536, 65547], "valid"], [[65548, 65548], "disallowed"], [[65549, 65574], "valid"], [[65575, 65575], "disallowed"], [[65576, 65594], "valid"], [[65595, 65595], "disallowed"], [[65596, 65597], "valid"], [[65598, 65598], "disallowed"], [[65599, 65613], "valid"], [[65614, 65615], "disallowed"], [[65616, 65629], "valid"], [[65630, 65663], "disallowed"], [[65664, 65786], "valid"], [[65787, 65791], "disallowed"], [[65792, 65794], "valid", [], "NV8"], [[65795, 65798], "disallowed"], [[65799, 65843], "valid", [], "NV8"], [[65844, 65846], "disallowed"], [[65847, 65855], "valid", [], "NV8"], [[65856, 65930], "valid", [], "NV8"], [[65931, 65932], "valid", [], "NV8"], [[65933, 65935], "disallowed"], [[65936, 65947], "valid", [], "NV8"], [[65948, 65951], "disallowed"], [[65952, 65952], "valid", [], "NV8"], [[65953, 65999], "disallowed"], [[66e3, 66044], "valid", [], "NV8"], [[66045, 66045], "valid"], [[66046, 66175], "disallowed"], [[66176, 66204], "valid"], [[66205, 66207], "disallowed"], [[66208, 66256], "valid"], [[66257, 66271], "disallowed"], [[66272, 66272], "valid"], [[66273, 66299], "valid", [], "NV8"], [[66300, 66303], "disallowed"], [[66304, 66334], "valid"], [[66335, 66335], "valid"], [[66336, 66339], "valid", [], "NV8"], [[66340, 66351], "disallowed"], [[66352, 66368], "valid"], [[66369, 66369], "valid", [], "NV8"], [[66370, 66377], "valid"], [[66378, 66378], "valid", [], "NV8"], [[66379, 66383], "disallowed"], [[66384, 66426], "valid"], [[66427, 66431], "disallowed"], [[66432, 66461], "valid"], [[66462, 66462], "disallowed"], [[66463, 66463], "valid", [], "NV8"], [[66464, 66499], "valid"], [[66500, 66503], "disallowed"], [[66504, 66511], "valid"], [[66512, 66517], "valid", [], "NV8"], [[66518, 66559], "disallowed"], [[66560, 66560], "mapped", [66600]], [[66561, 66561], "mapped", [66601]], [[66562, 66562], "mapped", [66602]], [[66563, 66563], "mapped", [66603]], [[66564, 66564], "mapped", [66604]], [[66565, 66565], "mapped", [66605]], [[66566, 66566], "mapped", [66606]], [[66567, 66567], "mapped", [66607]], [[66568, 66568], "mapped", [66608]], [[66569, 66569], "mapped", [66609]], [[66570, 66570], "mapped", [66610]], [[66571, 66571], "mapped", [66611]], [[66572, 66572], "mapped", [66612]], [[66573, 66573], "mapped", [66613]], [[66574, 66574], "mapped", [66614]], [[66575, 66575], "mapped", [66615]], [[66576, 66576], "mapped", [66616]], [[66577, 66577], "mapped", [66617]], [[66578, 66578], "mapped", [66618]], [[66579, 66579], "mapped", [66619]], [[66580, 66580], "mapped", [66620]], [[66581, 66581], "mapped", [66621]], [[66582, 66582], "mapped", [66622]], [[66583, 66583], "mapped", [66623]], [[66584, 66584], "mapped", [66624]], [[66585, 66585], "mapped", [66625]], [[66586, 66586], "mapped", [66626]], [[66587, 66587], "mapped", [66627]], [[66588, 66588], "mapped", [66628]], [[66589, 66589], "mapped", [66629]], [[66590, 66590], "mapped", [66630]], [[66591, 66591], "mapped", [66631]], [[66592, 66592], "mapped", [66632]], [[66593, 66593], "mapped", [66633]], [[66594, 66594], "mapped", [66634]], [[66595, 66595], "mapped", [66635]], [[66596, 66596], "mapped", [66636]], [[66597, 66597], "mapped", [66637]], [[66598, 66598], "mapped", [66638]], [[66599, 66599], "mapped", [66639]], [[66600, 66637], "valid"], [[66638, 66717], "valid"], [[66718, 66719], "disallowed"], [[66720, 66729], "valid"], [[66730, 66815], "disallowed"], [[66816, 66855], "valid"], [[66856, 66863], "disallowed"], [[66864, 66915], "valid"], [[66916, 66926], "disallowed"], [[66927, 66927], "valid", [], "NV8"], [[66928, 67071], "disallowed"], [[67072, 67382], "valid"], [[67383, 67391], "disallowed"], [[67392, 67413], "valid"], [[67414, 67423], "disallowed"], [[67424, 67431], "valid"], [[67432, 67583], "disallowed"], [[67584, 67589], "valid"], [[67590, 67591], "disallowed"], [[67592, 67592], "valid"], [[67593, 67593], "disallowed"], [[67594, 67637], "valid"], [[67638, 67638], "disallowed"], [[67639, 67640], "valid"], [[67641, 67643], "disallowed"], [[67644, 67644], "valid"], [[67645, 67646], "disallowed"], [[67647, 67647], "valid"], [[67648, 67669], "valid"], [[67670, 67670], "disallowed"], [[67671, 67679], "valid", [], "NV8"], [[67680, 67702], "valid"], [[67703, 67711], "valid", [], "NV8"], [[67712, 67742], "valid"], [[67743, 67750], "disallowed"], [[67751, 67759], "valid", [], "NV8"], [[67760, 67807], "disallowed"], [[67808, 67826], "valid"], [[67827, 67827], "disallowed"], [[67828, 67829], "valid"], [[67830, 67834], "disallowed"], [[67835, 67839], "valid", [], "NV8"], [[67840, 67861], "valid"], [[67862, 67865], "valid", [], "NV8"], [[67866, 67867], "valid", [], "NV8"], [[67868, 67870], "disallowed"], [[67871, 67871], "valid", [], "NV8"], [[67872, 67897], "valid"], [[67898, 67902], "disallowed"], [[67903, 67903], "valid", [], "NV8"], [[67904, 67967], "disallowed"], [[67968, 68023], "valid"], [[68024, 68027], "disallowed"], [[68028, 68029], "valid", [], "NV8"], [[68030, 68031], "valid"], [[68032, 68047], "valid", [], "NV8"], [[68048, 68049], "disallowed"], [[68050, 68095], "valid", [], "NV8"], [[68096, 68099], "valid"], [[68100, 68100], "disallowed"], [[68101, 68102], "valid"], [[68103, 68107], "disallowed"], [[68108, 68115], "valid"], [[68116, 68116], "disallowed"], [[68117, 68119], "valid"], [[68120, 68120], "disallowed"], [[68121, 68147], "valid"], [[68148, 68151], "disallowed"], [[68152, 68154], "valid"], [[68155, 68158], "disallowed"], [[68159, 68159], "valid"], [[68160, 68167], "valid", [], "NV8"], [[68168, 68175], "disallowed"], [[68176, 68184], "valid", [], "NV8"], [[68185, 68191], "disallowed"], [[68192, 68220], "valid"], [[68221, 68223], "valid", [], "NV8"], [[68224, 68252], "valid"], [[68253, 68255], "valid", [], "NV8"], [[68256, 68287], "disallowed"], [[68288, 68295], "valid"], [[68296, 68296], "valid", [], "NV8"], [[68297, 68326], "valid"], [[68327, 68330], "disallowed"], [[68331, 68342], "valid", [], "NV8"], [[68343, 68351], "disallowed"], [[68352, 68405], "valid"], [[68406, 68408], "disallowed"], [[68409, 68415], "valid", [], "NV8"], [[68416, 68437], "valid"], [[68438, 68439], "disallowed"], [[68440, 68447], "valid", [], "NV8"], [[68448, 68466], "valid"], [[68467, 68471], "disallowed"], [[68472, 68479], "valid", [], "NV8"], [[68480, 68497], "valid"], [[68498, 68504], "disallowed"], [[68505, 68508], "valid", [], "NV8"], [[68509, 68520], "disallowed"], [[68521, 68527], "valid", [], "NV8"], [[68528, 68607], "disallowed"], [[68608, 68680], "valid"], [[68681, 68735], "disallowed"], [[68736, 68736], "mapped", [68800]], [[68737, 68737], "mapped", [68801]], [[68738, 68738], "mapped", [68802]], [[68739, 68739], "mapped", [68803]], [[68740, 68740], "mapped", [68804]], [[68741, 68741], "mapped", [68805]], [[68742, 68742], "mapped", [68806]], [[68743, 68743], "mapped", [68807]], [[68744, 68744], "mapped", [68808]], [[68745, 68745], "mapped", [68809]], [[68746, 68746], "mapped", [68810]], [[68747, 68747], "mapped", [68811]], [[68748, 68748], "mapped", [68812]], [[68749, 68749], "mapped", [68813]], [[68750, 68750], "mapped", [68814]], [[68751, 68751], "mapped", [68815]], [[68752, 68752], "mapped", [68816]], [[68753, 68753], "mapped", [68817]], [[68754, 68754], "mapped", [68818]], [[68755, 68755], "mapped", [68819]], [[68756, 68756], "mapped", [68820]], [[68757, 68757], "mapped", [68821]], [[68758, 68758], "mapped", [68822]], [[68759, 68759], "mapped", [68823]], [[68760, 68760], "mapped", [68824]], [[68761, 68761], "mapped", [68825]], [[68762, 68762], "mapped", [68826]], [[68763, 68763], "mapped", [68827]], [[68764, 68764], "mapped", [68828]], [[68765, 68765], "mapped", [68829]], [[68766, 68766], "mapped", [68830]], [[68767, 68767], "mapped", [68831]], [[68768, 68768], "mapped", [68832]], [[68769, 68769], "mapped", [68833]], [[68770, 68770], "mapped", [68834]], [[68771, 68771], "mapped", [68835]], [[68772, 68772], "mapped", [68836]], [[68773, 68773], "mapped", [68837]], [[68774, 68774], "mapped", [68838]], [[68775, 68775], "mapped", [68839]], [[68776, 68776], "mapped", [68840]], [[68777, 68777], "mapped", [68841]], [[68778, 68778], "mapped", [68842]], [[68779, 68779], "mapped", [68843]], [[68780, 68780], "mapped", [68844]], [[68781, 68781], "mapped", [68845]], [[68782, 68782], "mapped", [68846]], [[68783, 68783], "mapped", [68847]], [[68784, 68784], "mapped", [68848]], [[68785, 68785], "mapped", [68849]], [[68786, 68786], "mapped", [68850]], [[68787, 68799], "disallowed"], [[68800, 68850], "valid"], [[68851, 68857], "disallowed"], [[68858, 68863], "valid", [], "NV8"], [[68864, 69215], "disallowed"], [[69216, 69246], "valid", [], "NV8"], [[69247, 69631], "disallowed"], [[69632, 69702], "valid"], [[69703, 69709], "valid", [], "NV8"], [[69710, 69713], "disallowed"], [[69714, 69733], "valid", [], "NV8"], [[69734, 69743], "valid"], [[69744, 69758], "disallowed"], [[69759, 69759], "valid"], [[69760, 69818], "valid"], [[69819, 69820], "valid", [], "NV8"], [[69821, 69821], "disallowed"], [[69822, 69825], "valid", [], "NV8"], [[69826, 69839], "disallowed"], [[69840, 69864], "valid"], [[69865, 69871], "disallowed"], [[69872, 69881], "valid"], [[69882, 69887], "disallowed"], [[69888, 69940], "valid"], [[69941, 69941], "disallowed"], [[69942, 69951], "valid"], [[69952, 69955], "valid", [], "NV8"], [[69956, 69967], "disallowed"], [[69968, 70003], "valid"], [[70004, 70005], "valid", [], "NV8"], [[70006, 70006], "valid"], [[70007, 70015], "disallowed"], [[70016, 70084], "valid"], [[70085, 70088], "valid", [], "NV8"], [[70089, 70089], "valid", [], "NV8"], [[70090, 70092], "valid"], [[70093, 70093], "valid", [], "NV8"], [[70094, 70095], "disallowed"], [[70096, 70105], "valid"], [[70106, 70106], "valid"], [[70107, 70107], "valid", [], "NV8"], [[70108, 70108], "valid"], [[70109, 70111], "valid", [], "NV8"], [[70112, 70112], "disallowed"], [[70113, 70132], "valid", [], "NV8"], [[70133, 70143], "disallowed"], [[70144, 70161], "valid"], [[70162, 70162], "disallowed"], [[70163, 70199], "valid"], [[70200, 70205], "valid", [], "NV8"], [[70206, 70271], "disallowed"], [[70272, 70278], "valid"], [[70279, 70279], "disallowed"], [[70280, 70280], "valid"], [[70281, 70281], "disallowed"], [[70282, 70285], "valid"], [[70286, 70286], "disallowed"], [[70287, 70301], "valid"], [[70302, 70302], "disallowed"], [[70303, 70312], "valid"], [[70313, 70313], "valid", [], "NV8"], [[70314, 70319], "disallowed"], [[70320, 70378], "valid"], [[70379, 70383], "disallowed"], [[70384, 70393], "valid"], [[70394, 70399], "disallowed"], [[70400, 70400], "valid"], [[70401, 70403], "valid"], [[70404, 70404], "disallowed"], [[70405, 70412], "valid"], [[70413, 70414], "disallowed"], [[70415, 70416], "valid"], [[70417, 70418], "disallowed"], [[70419, 70440], "valid"], [[70441, 70441], "disallowed"], [[70442, 70448], "valid"], [[70449, 70449], "disallowed"], [[70450, 70451], "valid"], [[70452, 70452], "disallowed"], [[70453, 70457], "valid"], [[70458, 70459], "disallowed"], [[70460, 70468], "valid"], [[70469, 70470], "disallowed"], [[70471, 70472], "valid"], [[70473, 70474], "disallowed"], [[70475, 70477], "valid"], [[70478, 70479], "disallowed"], [[70480, 70480], "valid"], [[70481, 70486], "disallowed"], [[70487, 70487], "valid"], [[70488, 70492], "disallowed"], [[70493, 70499], "valid"], [[70500, 70501], "disallowed"], [[70502, 70508], "valid"], [[70509, 70511], "disallowed"], [[70512, 70516], "valid"], [[70517, 70783], "disallowed"], [[70784, 70853], "valid"], [[70854, 70854], "valid", [], "NV8"], [[70855, 70855], "valid"], [[70856, 70863], "disallowed"], [[70864, 70873], "valid"], [[70874, 71039], "disallowed"], [[71040, 71093], "valid"], [[71094, 71095], "disallowed"], [[71096, 71104], "valid"], [[71105, 71113], "valid", [], "NV8"], [[71114, 71127], "valid", [], "NV8"], [[71128, 71133], "valid"], [[71134, 71167], "disallowed"], [[71168, 71232], "valid"], [[71233, 71235], "valid", [], "NV8"], [[71236, 71236], "valid"], [[71237, 71247], "disallowed"], [[71248, 71257], "valid"], [[71258, 71295], "disallowed"], [[71296, 71351], "valid"], [[71352, 71359], "disallowed"], [[71360, 71369], "valid"], [[71370, 71423], "disallowed"], [[71424, 71449], "valid"], [[71450, 71452], "disallowed"], [[71453, 71467], "valid"], [[71468, 71471], "disallowed"], [[71472, 71481], "valid"], [[71482, 71487], "valid", [], "NV8"], [[71488, 71839], "disallowed"], [[71840, 71840], "mapped", [71872]], [[71841, 71841], "mapped", [71873]], [[71842, 71842], "mapped", [71874]], [[71843, 71843], "mapped", [71875]], [[71844, 71844], "mapped", [71876]], [[71845, 71845], "mapped", [71877]], [[71846, 71846], "mapped", [71878]], [[71847, 71847], "mapped", [71879]], [[71848, 71848], "mapped", [71880]], [[71849, 71849], "mapped", [71881]], [[71850, 71850], "mapped", [71882]], [[71851, 71851], "mapped", [71883]], [[71852, 71852], "mapped", [71884]], [[71853, 71853], "mapped", [71885]], [[71854, 71854], "mapped", [71886]], [[71855, 71855], "mapped", [71887]], [[71856, 71856], "mapped", [71888]], [[71857, 71857], "mapped", [71889]], [[71858, 71858], "mapped", [71890]], [[71859, 71859], "mapped", [71891]], [[71860, 71860], "mapped", [71892]], [[71861, 71861], "mapped", [71893]], [[71862, 71862], "mapped", [71894]], [[71863, 71863], "mapped", [71895]], [[71864, 71864], "mapped", [71896]], [[71865, 71865], "mapped", [71897]], [[71866, 71866], "mapped", [71898]], [[71867, 71867], "mapped", [71899]], [[71868, 71868], "mapped", [71900]], [[71869, 71869], "mapped", [71901]], [[71870, 71870], "mapped", [71902]], [[71871, 71871], "mapped", [71903]], [[71872, 71913], "valid"], [[71914, 71922], "valid", [], "NV8"], [[71923, 71934], "disallowed"], [[71935, 71935], "valid"], [[71936, 72383], "disallowed"], [[72384, 72440], "valid"], [[72441, 73727], "disallowed"], [[73728, 74606], "valid"], [[74607, 74648], "valid"], [[74649, 74649], "valid"], [[74650, 74751], "disallowed"], [[74752, 74850], "valid", [], "NV8"], [[74851, 74862], "valid", [], "NV8"], [[74863, 74863], "disallowed"], [[74864, 74867], "valid", [], "NV8"], [[74868, 74868], "valid", [], "NV8"], [[74869, 74879], "disallowed"], [[74880, 75075], "valid"], [[75076, 77823], "disallowed"], [[77824, 78894], "valid"], [[78895, 82943], "disallowed"], [[82944, 83526], "valid"], [[83527, 92159], "disallowed"], [[92160, 92728], "valid"], [[92729, 92735], "disallowed"], [[92736, 92766], "valid"], [[92767, 92767], "disallowed"], [[92768, 92777], "valid"], [[92778, 92781], "disallowed"], [[92782, 92783], "valid", [], "NV8"], [[92784, 92879], "disallowed"], [[92880, 92909], "valid"], [[92910, 92911], "disallowed"], [[92912, 92916], "valid"], [[92917, 92917], "valid", [], "NV8"], [[92918, 92927], "disallowed"], [[92928, 92982], "valid"], [[92983, 92991], "valid", [], "NV8"], [[92992, 92995], "valid"], [[92996, 92997], "valid", [], "NV8"], [[92998, 93007], "disallowed"], [[93008, 93017], "valid"], [[93018, 93018], "disallowed"], [[93019, 93025], "valid", [], "NV8"], [[93026, 93026], "disallowed"], [[93027, 93047], "valid"], [[93048, 93052], "disallowed"], [[93053, 93071], "valid"], [[93072, 93951], "disallowed"], [[93952, 94020], "valid"], [[94021, 94031], "disallowed"], [[94032, 94078], "valid"], [[94079, 94094], "disallowed"], [[94095, 94111], "valid"], [[94112, 110591], "disallowed"], [[110592, 110593], "valid"], [[110594, 113663], "disallowed"], [[113664, 113770], "valid"], [[113771, 113775], "disallowed"], [[113776, 113788], "valid"], [[113789, 113791], "disallowed"], [[113792, 113800], "valid"], [[113801, 113807], "disallowed"], [[113808, 113817], "valid"], [[113818, 113819], "disallowed"], [[113820, 113820], "valid", [], "NV8"], [[113821, 113822], "valid"], [[113823, 113823], "valid", [], "NV8"], [[113824, 113827], "ignored"], [[113828, 118783], "disallowed"], [[118784, 119029], "valid", [], "NV8"], [[119030, 119039], "disallowed"], [[119040, 119078], "valid", [], "NV8"], [[119079, 119080], "disallowed"], [[119081, 119081], "valid", [], "NV8"], [[119082, 119133], "valid", [], "NV8"], [[119134, 119134], "mapped", [119127, 119141]], [[119135, 119135], "mapped", [119128, 119141]], [[119136, 119136], "mapped", [119128, 119141, 119150]], [[119137, 119137], "mapped", [119128, 119141, 119151]], [[119138, 119138], "mapped", [119128, 119141, 119152]], [[119139, 119139], "mapped", [119128, 119141, 119153]], [[119140, 119140], "mapped", [119128, 119141, 119154]], [[119141, 119154], "valid", [], "NV8"], [[119155, 119162], "disallowed"], [[119163, 119226], "valid", [], "NV8"], [[119227, 119227], "mapped", [119225, 119141]], [[119228, 119228], "mapped", [119226, 119141]], [[119229, 119229], "mapped", [119225, 119141, 119150]], [[119230, 119230], "mapped", [119226, 119141, 119150]], [[119231, 119231], "mapped", [119225, 119141, 119151]], [[119232, 119232], "mapped", [119226, 119141, 119151]], [[119233, 119261], "valid", [], "NV8"], [[119262, 119272], "valid", [], "NV8"], [[119273, 119295], "disallowed"], [[119296, 119365], "valid", [], "NV8"], [[119366, 119551], "disallowed"], [[119552, 119638], "valid", [], "NV8"], [[119639, 119647], "disallowed"], [[119648, 119665], "valid", [], "NV8"], [[119666, 119807], "disallowed"], [[119808, 119808], "mapped", [97]], [[119809, 119809], "mapped", [98]], [[119810, 119810], "mapped", [99]], [[119811, 119811], "mapped", [100]], [[119812, 119812], "mapped", [101]], [[119813, 119813], "mapped", [102]], [[119814, 119814], "mapped", [103]], [[119815, 119815], "mapped", [104]], [[119816, 119816], "mapped", [105]], [[119817, 119817], "mapped", [106]], [[119818, 119818], "mapped", [107]], [[119819, 119819], "mapped", [108]], [[119820, 119820], "mapped", [109]], [[119821, 119821], "mapped", [110]], [[119822, 119822], "mapped", [111]], [[119823, 119823], "mapped", [112]], [[119824, 119824], "mapped", [113]], [[119825, 119825], "mapped", [114]], [[119826, 119826], "mapped", [115]], [[119827, 119827], "mapped", [116]], [[119828, 119828], "mapped", [117]], [[119829, 119829], "mapped", [118]], [[119830, 119830], "mapped", [119]], [[119831, 119831], "mapped", [120]], [[119832, 119832], "mapped", [121]], [[119833, 119833], "mapped", [122]], [[119834, 119834], "mapped", [97]], [[119835, 119835], "mapped", [98]], [[119836, 119836], "mapped", [99]], [[119837, 119837], "mapped", [100]], [[119838, 119838], "mapped", [101]], [[119839, 119839], "mapped", [102]], [[119840, 119840], "mapped", [103]], [[119841, 119841], "mapped", [104]], [[119842, 119842], "mapped", [105]], [[119843, 119843], "mapped", [106]], [[119844, 119844], "mapped", [107]], [[119845, 119845], "mapped", [108]], [[119846, 119846], "mapped", [109]], [[119847, 119847], "mapped", [110]], [[119848, 119848], "mapped", [111]], [[119849, 119849], "mapped", [112]], [[119850, 119850], "mapped", [113]], [[119851, 119851], "mapped", [114]], [[119852, 119852], "mapped", [115]], [[119853, 119853], "mapped", [116]], [[119854, 119854], "mapped", [117]], [[119855, 119855], "mapped", [118]], [[119856, 119856], "mapped", [119]], [[119857, 119857], "mapped", [120]], [[119858, 119858], "mapped", [121]], [[119859, 119859], "mapped", [122]], [[119860, 119860], "mapped", [97]], [[119861, 119861], "mapped", [98]], [[119862, 119862], "mapped", [99]], [[119863, 119863], "mapped", [100]], [[119864, 119864], "mapped", [101]], [[119865, 119865], "mapped", [102]], [[119866, 119866], "mapped", [103]], [[119867, 119867], "mapped", [104]], [[119868, 119868], "mapped", [105]], [[119869, 119869], "mapped", [106]], [[119870, 119870], "mapped", [107]], [[119871, 119871], "mapped", [108]], [[119872, 119872], "mapped", [109]], [[119873, 119873], "mapped", [110]], [[119874, 119874], "mapped", [111]], [[119875, 119875], "mapped", [112]], [[119876, 119876], "mapped", [113]], [[119877, 119877], "mapped", [114]], [[119878, 119878], "mapped", [115]], [[119879, 119879], "mapped", [116]], [[119880, 119880], "mapped", [117]], [[119881, 119881], "mapped", [118]], [[119882, 119882], "mapped", [119]], [[119883, 119883], "mapped", [120]], [[119884, 119884], "mapped", [121]], [[119885, 119885], "mapped", [122]], [[119886, 119886], "mapped", [97]], [[119887, 119887], "mapped", [98]], [[119888, 119888], "mapped", [99]], [[119889, 119889], "mapped", [100]], [[119890, 119890], "mapped", [101]], [[119891, 119891], "mapped", [102]], [[119892, 119892], "mapped", [103]], [[119893, 119893], "disallowed"], [[119894, 119894], "mapped", [105]], [[119895, 119895], "mapped", [106]], [[119896, 119896], "mapped", [107]], [[119897, 119897], "mapped", [108]], [[119898, 119898], "mapped", [109]], [[119899, 119899], "mapped", [110]], [[119900, 119900], "mapped", [111]], [[119901, 119901], "mapped", [112]], [[119902, 119902], "mapped", [113]], [[119903, 119903], "mapped", [114]], [[119904, 119904], "mapped", [115]], [[119905, 119905], "mapped", [116]], [[119906, 119906], "mapped", [117]], [[119907, 119907], "mapped", [118]], [[119908, 119908], "mapped", [119]], [[119909, 119909], "mapped", [120]], [[119910, 119910], "mapped", [121]], [[119911, 119911], "mapped", [122]], [[119912, 119912], "mapped", [97]], [[119913, 119913], "mapped", [98]], [[119914, 119914], "mapped", [99]], [[119915, 119915], "mapped", [100]], [[119916, 119916], "mapped", [101]], [[119917, 119917], "mapped", [102]], [[119918, 119918], "mapped", [103]], [[119919, 119919], "mapped", [104]], [[119920, 119920], "mapped", [105]], [[119921, 119921], "mapped", [106]], [[119922, 119922], "mapped", [107]], [[119923, 119923], "mapped", [108]], [[119924, 119924], "mapped", [109]], [[119925, 119925], "mapped", [110]], [[119926, 119926], "mapped", [111]], [[119927, 119927], "mapped", [112]], [[119928, 119928], "mapped", [113]], [[119929, 119929], "mapped", [114]], [[119930, 119930], "mapped", [115]], [[119931, 119931], "mapped", [116]], [[119932, 119932], "mapped", [117]], [[119933, 119933], "mapped", [118]], [[119934, 119934], "mapped", [119]], [[119935, 119935], "mapped", [120]], [[119936, 119936], "mapped", [121]], [[119937, 119937], "mapped", [122]], [[119938, 119938], "mapped", [97]], [[119939, 119939], "mapped", [98]], [[119940, 119940], "mapped", [99]], [[119941, 119941], "mapped", [100]], [[119942, 119942], "mapped", [101]], [[119943, 119943], "mapped", [102]], [[119944, 119944], "mapped", [103]], [[119945, 119945], "mapped", [104]], [[119946, 119946], "mapped", [105]], [[119947, 119947], "mapped", [106]], [[119948, 119948], "mapped", [107]], [[119949, 119949], "mapped", [108]], [[119950, 119950], "mapped", [109]], [[119951, 119951], "mapped", [110]], [[119952, 119952], "mapped", [111]], [[119953, 119953], "mapped", [112]], [[119954, 119954], "mapped", [113]], [[119955, 119955], "mapped", [114]], [[119956, 119956], "mapped", [115]], [[119957, 119957], "mapped", [116]], [[119958, 119958], "mapped", [117]], [[119959, 119959], "mapped", [118]], [[119960, 119960], "mapped", [119]], [[119961, 119961], "mapped", [120]], [[119962, 119962], "mapped", [121]], [[119963, 119963], "mapped", [122]], [[119964, 119964], "mapped", [97]], [[119965, 119965], "disallowed"], [[119966, 119966], "mapped", [99]], [[119967, 119967], "mapped", [100]], [[119968, 119969], "disallowed"], [[119970, 119970], "mapped", [103]], [[119971, 119972], "disallowed"], [[119973, 119973], "mapped", [106]], [[119974, 119974], "mapped", [107]], [[119975, 119976], "disallowed"], [[119977, 119977], "mapped", [110]], [[119978, 119978], "mapped", [111]], [[119979, 119979], "mapped", [112]], [[119980, 119980], "mapped", [113]], [[119981, 119981], "disallowed"], [[119982, 119982], "mapped", [115]], [[119983, 119983], "mapped", [116]], [[119984, 119984], "mapped", [117]], [[119985, 119985], "mapped", [118]], [[119986, 119986], "mapped", [119]], [[119987, 119987], "mapped", [120]], [[119988, 119988], "mapped", [121]], [[119989, 119989], "mapped", [122]], [[119990, 119990], "mapped", [97]], [[119991, 119991], "mapped", [98]], [[119992, 119992], "mapped", [99]], [[119993, 119993], "mapped", [100]], [[119994, 119994], "disallowed"], [[119995, 119995], "mapped", [102]], [[119996, 119996], "disallowed"], [[119997, 119997], "mapped", [104]], [[119998, 119998], "mapped", [105]], [[119999, 119999], "mapped", [106]], [[12e4, 12e4], "mapped", [107]], [[120001, 120001], "mapped", [108]], [[120002, 120002], "mapped", [109]], [[120003, 120003], "mapped", [110]], [[120004, 120004], "disallowed"], [[120005, 120005], "mapped", [112]], [[120006, 120006], "mapped", [113]], [[120007, 120007], "mapped", [114]], [[120008, 120008], "mapped", [115]], [[120009, 120009], "mapped", [116]], [[120010, 120010], "mapped", [117]], [[120011, 120011], "mapped", [118]], [[120012, 120012], "mapped", [119]], [[120013, 120013], "mapped", [120]], [[120014, 120014], "mapped", [121]], [[120015, 120015], "mapped", [122]], [[120016, 120016], "mapped", [97]], [[120017, 120017], "mapped", [98]], [[120018, 120018], "mapped", [99]], [[120019, 120019], "mapped", [100]], [[120020, 120020], "mapped", [101]], [[120021, 120021], "mapped", [102]], [[120022, 120022], "mapped", [103]], [[120023, 120023], "mapped", [104]], [[120024, 120024], "mapped", [105]], [[120025, 120025], "mapped", [106]], [[120026, 120026], "mapped", [107]], [[120027, 120027], "mapped", [108]], [[120028, 120028], "mapped", [109]], [[120029, 120029], "mapped", [110]], [[120030, 120030], "mapped", [111]], [[120031, 120031], "mapped", [112]], [[120032, 120032], "mapped", [113]], [[120033, 120033], "mapped", [114]], [[120034, 120034], "mapped", [115]], [[120035, 120035], "mapped", [116]], [[120036, 120036], "mapped", [117]], [[120037, 120037], "mapped", [118]], [[120038, 120038], "mapped", [119]], [[120039, 120039], "mapped", [120]], [[120040, 120040], "mapped", [121]], [[120041, 120041], "mapped", [122]], [[120042, 120042], "mapped", [97]], [[120043, 120043], "mapped", [98]], [[120044, 120044], "mapped", [99]], [[120045, 120045], "mapped", [100]], [[120046, 120046], "mapped", [101]], [[120047, 120047], "mapped", [102]], [[120048, 120048], "mapped", [103]], [[120049, 120049], "mapped", [104]], [[120050, 120050], "mapped", [105]], [[120051, 120051], "mapped", [106]], [[120052, 120052], "mapped", [107]], [[120053, 120053], "mapped", [108]], [[120054, 120054], "mapped", [109]], [[120055, 120055], "mapped", [110]], [[120056, 120056], "mapped", [111]], [[120057, 120057], "mapped", [112]], [[120058, 120058], "mapped", [113]], [[120059, 120059], "mapped", [114]], [[120060, 120060], "mapped", [115]], [[120061, 120061], "mapped", [116]], [[120062, 120062], "mapped", [117]], [[120063, 120063], "mapped", [118]], [[120064, 120064], "mapped", [119]], [[120065, 120065], "mapped", [120]], [[120066, 120066], "mapped", [121]], [[120067, 120067], "mapped", [122]], [[120068, 120068], "mapped", [97]], [[120069, 120069], "mapped", [98]], [[120070, 120070], "disallowed"], [[120071, 120071], "mapped", [100]], [[120072, 120072], "mapped", [101]], [[120073, 120073], "mapped", [102]], [[120074, 120074], "mapped", [103]], [[120075, 120076], "disallowed"], [[120077, 120077], "mapped", [106]], [[120078, 120078], "mapped", [107]], [[120079, 120079], "mapped", [108]], [[120080, 120080], "mapped", [109]], [[120081, 120081], "mapped", [110]], [[120082, 120082], "mapped", [111]], [[120083, 120083], "mapped", [112]], [[120084, 120084], "mapped", [113]], [[120085, 120085], "disallowed"], [[120086, 120086], "mapped", [115]], [[120087, 120087], "mapped", [116]], [[120088, 120088], "mapped", [117]], [[120089, 120089], "mapped", [118]], [[120090, 120090], "mapped", [119]], [[120091, 120091], "mapped", [120]], [[120092, 120092], "mapped", [121]], [[120093, 120093], "disallowed"], [[120094, 120094], "mapped", [97]], [[120095, 120095], "mapped", [98]], [[120096, 120096], "mapped", [99]], [[120097, 120097], "mapped", [100]], [[120098, 120098], "mapped", [101]], [[120099, 120099], "mapped", [102]], [[120100, 120100], "mapped", [103]], [[120101, 120101], "mapped", [104]], [[120102, 120102], "mapped", [105]], [[120103, 120103], "mapped", [106]], [[120104, 120104], "mapped", [107]], [[120105, 120105], "mapped", [108]], [[120106, 120106], "mapped", [109]], [[120107, 120107], "mapped", [110]], [[120108, 120108], "mapped", [111]], [[120109, 120109], "mapped", [112]], [[120110, 120110], "mapped", [113]], [[120111, 120111], "mapped", [114]], [[120112, 120112], "mapped", [115]], [[120113, 120113], "mapped", [116]], [[120114, 120114], "mapped", [117]], [[120115, 120115], "mapped", [118]], [[120116, 120116], "mapped", [119]], [[120117, 120117], "mapped", [120]], [[120118, 120118], "mapped", [121]], [[120119, 120119], "mapped", [122]], [[120120, 120120], "mapped", [97]], [[120121, 120121], "mapped", [98]], [[120122, 120122], "disallowed"], [[120123, 120123], "mapped", [100]], [[120124, 120124], "mapped", [101]], [[120125, 120125], "mapped", [102]], [[120126, 120126], "mapped", [103]], [[120127, 120127], "disallowed"], [[120128, 120128], "mapped", [105]], [[120129, 120129], "mapped", [106]], [[120130, 120130], "mapped", [107]], [[120131, 120131], "mapped", [108]], [[120132, 120132], "mapped", [109]], [[120133, 120133], "disallowed"], [[120134, 120134], "mapped", [111]], [[120135, 120137], "disallowed"], [[120138, 120138], "mapped", [115]], [[120139, 120139], "mapped", [116]], [[120140, 120140], "mapped", [117]], [[120141, 120141], "mapped", [118]], [[120142, 120142], "mapped", [119]], [[120143, 120143], "mapped", [120]], [[120144, 120144], "mapped", [121]], [[120145, 120145], "disallowed"], [[120146, 120146], "mapped", [97]], [[120147, 120147], "mapped", [98]], [[120148, 120148], "mapped", [99]], [[120149, 120149], "mapped", [100]], [[120150, 120150], "mapped", [101]], [[120151, 120151], "mapped", [102]], [[120152, 120152], "mapped", [103]], [[120153, 120153], "mapped", [104]], [[120154, 120154], "mapped", [105]], [[120155, 120155], "mapped", [106]], [[120156, 120156], "mapped", [107]], [[120157, 120157], "mapped", [108]], [[120158, 120158], "mapped", [109]], [[120159, 120159], "mapped", [110]], [[120160, 120160], "mapped", [111]], [[120161, 120161], "mapped", [112]], [[120162, 120162], "mapped", [113]], [[120163, 120163], "mapped", [114]], [[120164, 120164], "mapped", [115]], [[120165, 120165], "mapped", [116]], [[120166, 120166], "mapped", [117]], [[120167, 120167], "mapped", [118]], [[120168, 120168], "mapped", [119]], [[120169, 120169], "mapped", [120]], [[120170, 120170], "mapped", [121]], [[120171, 120171], "mapped", [122]], [[120172, 120172], "mapped", [97]], [[120173, 120173], "mapped", [98]], [[120174, 120174], "mapped", [99]], [[120175, 120175], "mapped", [100]], [[120176, 120176], "mapped", [101]], [[120177, 120177], "mapped", [102]], [[120178, 120178], "mapped", [103]], [[120179, 120179], "mapped", [104]], [[120180, 120180], "mapped", [105]], [[120181, 120181], "mapped", [106]], [[120182, 120182], "mapped", [107]], [[120183, 120183], "mapped", [108]], [[120184, 120184], "mapped", [109]], [[120185, 120185], "mapped", [110]], [[120186, 120186], "mapped", [111]], [[120187, 120187], "mapped", [112]], [[120188, 120188], "mapped", [113]], [[120189, 120189], "mapped", [114]], [[120190, 120190], "mapped", [115]], [[120191, 120191], "mapped", [116]], [[120192, 120192], "mapped", [117]], [[120193, 120193], "mapped", [118]], [[120194, 120194], "mapped", [119]], [[120195, 120195], "mapped", [120]], [[120196, 120196], "mapped", [121]], [[120197, 120197], "mapped", [122]], [[120198, 120198], "mapped", [97]], [[120199, 120199], "mapped", [98]], [[120200, 120200], "mapped", [99]], [[120201, 120201], "mapped", [100]], [[120202, 120202], "mapped", [101]], [[120203, 120203], "mapped", [102]], [[120204, 120204], "mapped", [103]], [[120205, 120205], "mapped", [104]], [[120206, 120206], "mapped", [105]], [[120207, 120207], "mapped", [106]], [[120208, 120208], "mapped", [107]], [[120209, 120209], "mapped", [108]], [[120210, 120210], "mapped", [109]], [[120211, 120211], "mapped", [110]], [[120212, 120212], "mapped", [111]], [[120213, 120213], "mapped", [112]], [[120214, 120214], "mapped", [113]], [[120215, 120215], "mapped", [114]], [[120216, 120216], "mapped", [115]], [[120217, 120217], "mapped", [116]], [[120218, 120218], "mapped", [117]], [[120219, 120219], "mapped", [118]], [[120220, 120220], "mapped", [119]], [[120221, 120221], "mapped", [120]], [[120222, 120222], "mapped", [121]], [[120223, 120223], "mapped", [122]], [[120224, 120224], "mapped", [97]], [[120225, 120225], "mapped", [98]], [[120226, 120226], "mapped", [99]], [[120227, 120227], "mapped", [100]], [[120228, 120228], "mapped", [101]], [[120229, 120229], "mapped", [102]], [[120230, 120230], "mapped", [103]], [[120231, 120231], "mapped", [104]], [[120232, 120232], "mapped", [105]], [[120233, 120233], "mapped", [106]], [[120234, 120234], "mapped", [107]], [[120235, 120235], "mapped", [108]], [[120236, 120236], "mapped", [109]], [[120237, 120237], "mapped", [110]], [[120238, 120238], "mapped", [111]], [[120239, 120239], "mapped", [112]], [[120240, 120240], "mapped", [113]], [[120241, 120241], "mapped", [114]], [[120242, 120242], "mapped", [115]], [[120243, 120243], "mapped", [116]], [[120244, 120244], "mapped", [117]], [[120245, 120245], "mapped", [118]], [[120246, 120246], "mapped", [119]], [[120247, 120247], "mapped", [120]], [[120248, 120248], "mapped", [121]], [[120249, 120249], "mapped", [122]], [[120250, 120250], "mapped", [97]], [[120251, 120251], "mapped", [98]], [[120252, 120252], "mapped", [99]], [[120253, 120253], "mapped", [100]], [[120254, 120254], "mapped", [101]], [[120255, 120255], "mapped", [102]], [[120256, 120256], "mapped", [103]], [[120257, 120257], "mapped", [104]], [[120258, 120258], "mapped", [105]], [[120259, 120259], "mapped", [106]], [[120260, 120260], "mapped", [107]], [[120261, 120261], "mapped", [108]], [[120262, 120262], "mapped", [109]], [[120263, 120263], "mapped", [110]], [[120264, 120264], "mapped", [111]], [[120265, 120265], "mapped", [112]], [[120266, 120266], "mapped", [113]], [[120267, 120267], "mapped", [114]], [[120268, 120268], "mapped", [115]], [[120269, 120269], "mapped", [116]], [[120270, 120270], "mapped", [117]], [[120271, 120271], "mapped", [118]], [[120272, 120272], "mapped", [119]], [[120273, 120273], "mapped", [120]], [[120274, 120274], "mapped", [121]], [[120275, 120275], "mapped", [122]], [[120276, 120276], "mapped", [97]], [[120277, 120277], "mapped", [98]], [[120278, 120278], "mapped", [99]], [[120279, 120279], "mapped", [100]], [[120280, 120280], "mapped", [101]], [[120281, 120281], "mapped", [102]], [[120282, 120282], "mapped", [103]], [[120283, 120283], "mapped", [104]], [[120284, 120284], "mapped", [105]], [[120285, 120285], "mapped", [106]], [[120286, 120286], "mapped", [107]], [[120287, 120287], "mapped", [108]], [[120288, 120288], "mapped", [109]], [[120289, 120289], "mapped", [110]], [[120290, 120290], "mapped", [111]], [[120291, 120291], "mapped", [112]], [[120292, 120292], "mapped", [113]], [[120293, 120293], "mapped", [114]], [[120294, 120294], "mapped", [115]], [[120295, 120295], "mapped", [116]], [[120296, 120296], "mapped", [117]], [[120297, 120297], "mapped", [118]], [[120298, 120298], "mapped", [119]], [[120299, 120299], "mapped", [120]], [[120300, 120300], "mapped", [121]], [[120301, 120301], "mapped", [122]], [[120302, 120302], "mapped", [97]], [[120303, 120303], "mapped", [98]], [[120304, 120304], "mapped", [99]], [[120305, 120305], "mapped", [100]], [[120306, 120306], "mapped", [101]], [[120307, 120307], "mapped", [102]], [[120308, 120308], "mapped", [103]], [[120309, 120309], "mapped", [104]], [[120310, 120310], "mapped", [105]], [[120311, 120311], "mapped", [106]], [[120312, 120312], "mapped", [107]], [[120313, 120313], "mapped", [108]], [[120314, 120314], "mapped", [109]], [[120315, 120315], "mapped", [110]], [[120316, 120316], "mapped", [111]], [[120317, 120317], "mapped", [112]], [[120318, 120318], "mapped", [113]], [[120319, 120319], "mapped", [114]], [[120320, 120320], "mapped", [115]], [[120321, 120321], "mapped", [116]], [[120322, 120322], "mapped", [117]], [[120323, 120323], "mapped", [118]], [[120324, 120324], "mapped", [119]], [[120325, 120325], "mapped", [120]], [[120326, 120326], "mapped", [121]], [[120327, 120327], "mapped", [122]], [[120328, 120328], "mapped", [97]], [[120329, 120329], "mapped", [98]], [[120330, 120330], "mapped", [99]], [[120331, 120331], "mapped", [100]], [[120332, 120332], "mapped", [101]], [[120333, 120333], "mapped", [102]], [[120334, 120334], "mapped", [103]], [[120335, 120335], "mapped", [104]], [[120336, 120336], "mapped", [105]], [[120337, 120337], "mapped", [106]], [[120338, 120338], "mapped", [107]], [[120339, 120339], "mapped", [108]], [[120340, 120340], "mapped", [109]], [[120341, 120341], "mapped", [110]], [[120342, 120342], "mapped", [111]], [[120343, 120343], "mapped", [112]], [[120344, 120344], "mapped", [113]], [[120345, 120345], "mapped", [114]], [[120346, 120346], "mapped", [115]], [[120347, 120347], "mapped", [116]], [[120348, 120348], "mapped", [117]], [[120349, 120349], "mapped", [118]], [[120350, 120350], "mapped", [119]], [[120351, 120351], "mapped", [120]], [[120352, 120352], "mapped", [121]], [[120353, 120353], "mapped", [122]], [[120354, 120354], "mapped", [97]], [[120355, 120355], "mapped", [98]], [[120356, 120356], "mapped", [99]], [[120357, 120357], "mapped", [100]], [[120358, 120358], "mapped", [101]], [[120359, 120359], "mapped", [102]], [[120360, 120360], "mapped", [103]], [[120361, 120361], "mapped", [104]], [[120362, 120362], "mapped", [105]], [[120363, 120363], "mapped", [106]], [[120364, 120364], "mapped", [107]], [[120365, 120365], "mapped", [108]], [[120366, 120366], "mapped", [109]], [[120367, 120367], "mapped", [110]], [[120368, 120368], "mapped", [111]], [[120369, 120369], "mapped", [112]], [[120370, 120370], "mapped", [113]], [[120371, 120371], "mapped", [114]], [[120372, 120372], "mapped", [115]], [[120373, 120373], "mapped", [116]], [[120374, 120374], "mapped", [117]], [[120375, 120375], "mapped", [118]], [[120376, 120376], "mapped", [119]], [[120377, 120377], "mapped", [120]], [[120378, 120378], "mapped", [121]], [[120379, 120379], "mapped", [122]], [[120380, 120380], "mapped", [97]], [[120381, 120381], "mapped", [98]], [[120382, 120382], "mapped", [99]], [[120383, 120383], "mapped", [100]], [[120384, 120384], "mapped", [101]], [[120385, 120385], "mapped", [102]], [[120386, 120386], "mapped", [103]], [[120387, 120387], "mapped", [104]], [[120388, 120388], "mapped", [105]], [[120389, 120389], "mapped", [106]], [[120390, 120390], "mapped", [107]], [[120391, 120391], "mapped", [108]], [[120392, 120392], "mapped", [109]], [[120393, 120393], "mapped", [110]], [[120394, 120394], "mapped", [111]], [[120395, 120395], "mapped", [112]], [[120396, 120396], "mapped", [113]], [[120397, 120397], "mapped", [114]], [[120398, 120398], "mapped", [115]], [[120399, 120399], "mapped", [116]], [[120400, 120400], "mapped", [117]], [[120401, 120401], "mapped", [118]], [[120402, 120402], "mapped", [119]], [[120403, 120403], "mapped", [120]], [[120404, 120404], "mapped", [121]], [[120405, 120405], "mapped", [122]], [[120406, 120406], "mapped", [97]], [[120407, 120407], "mapped", [98]], [[120408, 120408], "mapped", [99]], [[120409, 120409], "mapped", [100]], [[120410, 120410], "mapped", [101]], [[120411, 120411], "mapped", [102]], [[120412, 120412], "mapped", [103]], [[120413, 120413], "mapped", [104]], [[120414, 120414], "mapped", [105]], [[120415, 120415], "mapped", [106]], [[120416, 120416], "mapped", [107]], [[120417, 120417], "mapped", [108]], [[120418, 120418], "mapped", [109]], [[120419, 120419], "mapped", [110]], [[120420, 120420], "mapped", [111]], [[120421, 120421], "mapped", [112]], [[120422, 120422], "mapped", [113]], [[120423, 120423], "mapped", [114]], [[120424, 120424], "mapped", [115]], [[120425, 120425], "mapped", [116]], [[120426, 120426], "mapped", [117]], [[120427, 120427], "mapped", [118]], [[120428, 120428], "mapped", [119]], [[120429, 120429], "mapped", [120]], [[120430, 120430], "mapped", [121]], [[120431, 120431], "mapped", [122]], [[120432, 120432], "mapped", [97]], [[120433, 120433], "mapped", [98]], [[120434, 120434], "mapped", [99]], [[120435, 120435], "mapped", [100]], [[120436, 120436], "mapped", [101]], [[120437, 120437], "mapped", [102]], [[120438, 120438], "mapped", [103]], [[120439, 120439], "mapped", [104]], [[120440, 120440], "mapped", [105]], [[120441, 120441], "mapped", [106]], [[120442, 120442], "mapped", [107]], [[120443, 120443], "mapped", [108]], [[120444, 120444], "mapped", [109]], [[120445, 120445], "mapped", [110]], [[120446, 120446], "mapped", [111]], [[120447, 120447], "mapped", [112]], [[120448, 120448], "mapped", [113]], [[120449, 120449], "mapped", [114]], [[120450, 120450], "mapped", [115]], [[120451, 120451], "mapped", [116]], [[120452, 120452], "mapped", [117]], [[120453, 120453], "mapped", [118]], [[120454, 120454], "mapped", [119]], [[120455, 120455], "mapped", [120]], [[120456, 120456], "mapped", [121]], [[120457, 120457], "mapped", [122]], [[120458, 120458], "mapped", [97]], [[120459, 120459], "mapped", [98]], [[120460, 120460], "mapped", [99]], [[120461, 120461], "mapped", [100]], [[120462, 120462], "mapped", [101]], [[120463, 120463], "mapped", [102]], [[120464, 120464], "mapped", [103]], [[120465, 120465], "mapped", [104]], [[120466, 120466], "mapped", [105]], [[120467, 120467], "mapped", [106]], [[120468, 120468], "mapped", [107]], [[120469, 120469], "mapped", [108]], [[120470, 120470], "mapped", [109]], [[120471, 120471], "mapped", [110]], [[120472, 120472], "mapped", [111]], [[120473, 120473], "mapped", [112]], [[120474, 120474], "mapped", [113]], [[120475, 120475], "mapped", [114]], [[120476, 120476], "mapped", [115]], [[120477, 120477], "mapped", [116]], [[120478, 120478], "mapped", [117]], [[120479, 120479], "mapped", [118]], [[120480, 120480], "mapped", [119]], [[120481, 120481], "mapped", [120]], [[120482, 120482], "mapped", [121]], [[120483, 120483], "mapped", [122]], [[120484, 120484], "mapped", [305]], [[120485, 120485], "mapped", [567]], [[120486, 120487], "disallowed"], [[120488, 120488], "mapped", [945]], [[120489, 120489], "mapped", [946]], [[120490, 120490], "mapped", [947]], [[120491, 120491], "mapped", [948]], [[120492, 120492], "mapped", [949]], [[120493, 120493], "mapped", [950]], [[120494, 120494], "mapped", [951]], [[120495, 120495], "mapped", [952]], [[120496, 120496], "mapped", [953]], [[120497, 120497], "mapped", [954]], [[120498, 120498], "mapped", [955]], [[120499, 120499], "mapped", [956]], [[120500, 120500], "mapped", [957]], [[120501, 120501], "mapped", [958]], [[120502, 120502], "mapped", [959]], [[120503, 120503], "mapped", [960]], [[120504, 120504], "mapped", [961]], [[120505, 120505], "mapped", [952]], [[120506, 120506], "mapped", [963]], [[120507, 120507], "mapped", [964]], [[120508, 120508], "mapped", [965]], [[120509, 120509], "mapped", [966]], [[120510, 120510], "mapped", [967]], [[120511, 120511], "mapped", [968]], [[120512, 120512], "mapped", [969]], [[120513, 120513], "mapped", [8711]], [[120514, 120514], "mapped", [945]], [[120515, 120515], "mapped", [946]], [[120516, 120516], "mapped", [947]], [[120517, 120517], "mapped", [948]], [[120518, 120518], "mapped", [949]], [[120519, 120519], "mapped", [950]], [[120520, 120520], "mapped", [951]], [[120521, 120521], "mapped", [952]], [[120522, 120522], "mapped", [953]], [[120523, 120523], "mapped", [954]], [[120524, 120524], "mapped", [955]], [[120525, 120525], "mapped", [956]], [[120526, 120526], "mapped", [957]], [[120527, 120527], "mapped", [958]], [[120528, 120528], "mapped", [959]], [[120529, 120529], "mapped", [960]], [[120530, 120530], "mapped", [961]], [[120531, 120532], "mapped", [963]], [[120533, 120533], "mapped", [964]], [[120534, 120534], "mapped", [965]], [[120535, 120535], "mapped", [966]], [[120536, 120536], "mapped", [967]], [[120537, 120537], "mapped", [968]], [[120538, 120538], "mapped", [969]], [[120539, 120539], "mapped", [8706]], [[120540, 120540], "mapped", [949]], [[120541, 120541], "mapped", [952]], [[120542, 120542], "mapped", [954]], [[120543, 120543], "mapped", [966]], [[120544, 120544], "mapped", [961]], [[120545, 120545], "mapped", [960]], [[120546, 120546], "mapped", [945]], [[120547, 120547], "mapped", [946]], [[120548, 120548], "mapped", [947]], [[120549, 120549], "mapped", [948]], [[120550, 120550], "mapped", [949]], [[120551, 120551], "mapped", [950]], [[120552, 120552], "mapped", [951]], [[120553, 120553], "mapped", [952]], [[120554, 120554], "mapped", [953]], [[120555, 120555], "mapped", [954]], [[120556, 120556], "mapped", [955]], [[120557, 120557], "mapped", [956]], [[120558, 120558], "mapped", [957]], [[120559, 120559], "mapped", [958]], [[120560, 120560], "mapped", [959]], [[120561, 120561], "mapped", [960]], [[120562, 120562], "mapped", [961]], [[120563, 120563], "mapped", [952]], [[120564, 120564], "mapped", [963]], [[120565, 120565], "mapped", [964]], [[120566, 120566], "mapped", [965]], [[120567, 120567], "mapped", [966]], [[120568, 120568], "mapped", [967]], [[120569, 120569], "mapped", [968]], [[120570, 120570], "mapped", [969]], [[120571, 120571], "mapped", [8711]], [[120572, 120572], "mapped", [945]], [[120573, 120573], "mapped", [946]], [[120574, 120574], "mapped", [947]], [[120575, 120575], "mapped", [948]], [[120576, 120576], "mapped", [949]], [[120577, 120577], "mapped", [950]], [[120578, 120578], "mapped", [951]], [[120579, 120579], "mapped", [952]], [[120580, 120580], "mapped", [953]], [[120581, 120581], "mapped", [954]], [[120582, 120582], "mapped", [955]], [[120583, 120583], "mapped", [956]], [[120584, 120584], "mapped", [957]], [[120585, 120585], "mapped", [958]], [[120586, 120586], "mapped", [959]], [[120587, 120587], "mapped", [960]], [[120588, 120588], "mapped", [961]], [[120589, 120590], "mapped", [963]], [[120591, 120591], "mapped", [964]], [[120592, 120592], "mapped", [965]], [[120593, 120593], "mapped", [966]], [[120594, 120594], "mapped", [967]], [[120595, 120595], "mapped", [968]], [[120596, 120596], "mapped", [969]], [[120597, 120597], "mapped", [8706]], [[120598, 120598], "mapped", [949]], [[120599, 120599], "mapped", [952]], [[120600, 120600], "mapped", [954]], [[120601, 120601], "mapped", [966]], [[120602, 120602], "mapped", [961]], [[120603, 120603], "mapped", [960]], [[120604, 120604], "mapped", [945]], [[120605, 120605], "mapped", [946]], [[120606, 120606], "mapped", [947]], [[120607, 120607], "mapped", [948]], [[120608, 120608], "mapped", [949]], [[120609, 120609], "mapped", [950]], [[120610, 120610], "mapped", [951]], [[120611, 120611], "mapped", [952]], [[120612, 120612], "mapped", [953]], [[120613, 120613], "mapped", [954]], [[120614, 120614], "mapped", [955]], [[120615, 120615], "mapped", [956]], [[120616, 120616], "mapped", [957]], [[120617, 120617], "mapped", [958]], [[120618, 120618], "mapped", [959]], [[120619, 120619], "mapped", [960]], [[120620, 120620], "mapped", [961]], [[120621, 120621], "mapped", [952]], [[120622, 120622], "mapped", [963]], [[120623, 120623], "mapped", [964]], [[120624, 120624], "mapped", [965]], [[120625, 120625], "mapped", [966]], [[120626, 120626], "mapped", [967]], [[120627, 120627], "mapped", [968]], [[120628, 120628], "mapped", [969]], [[120629, 120629], "mapped", [8711]], [[120630, 120630], "mapped", [945]], [[120631, 120631], "mapped", [946]], [[120632, 120632], "mapped", [947]], [[120633, 120633], "mapped", [948]], [[120634, 120634], "mapped", [949]], [[120635, 120635], "mapped", [950]], [[120636, 120636], "mapped", [951]], [[120637, 120637], "mapped", [952]], [[120638, 120638], "mapped", [953]], [[120639, 120639], "mapped", [954]], [[120640, 120640], "mapped", [955]], [[120641, 120641], "mapped", [956]], [[120642, 120642], "mapped", [957]], [[120643, 120643], "mapped", [958]], [[120644, 120644], "mapped", [959]], [[120645, 120645], "mapped", [960]], [[120646, 120646], "mapped", [961]], [[120647, 120648], "mapped", [963]], [[120649, 120649], "mapped", [964]], [[120650, 120650], "mapped", [965]], [[120651, 120651], "mapped", [966]], [[120652, 120652], "mapped", [967]], [[120653, 120653], "mapped", [968]], [[120654, 120654], "mapped", [969]], [[120655, 120655], "mapped", [8706]], [[120656, 120656], "mapped", [949]], [[120657, 120657], "mapped", [952]], [[120658, 120658], "mapped", [954]], [[120659, 120659], "mapped", [966]], [[120660, 120660], "mapped", [961]], [[120661, 120661], "mapped", [960]], [[120662, 120662], "mapped", [945]], [[120663, 120663], "mapped", [946]], [[120664, 120664], "mapped", [947]], [[120665, 120665], "mapped", [948]], [[120666, 120666], "mapped", [949]], [[120667, 120667], "mapped", [950]], [[120668, 120668], "mapped", [951]], [[120669, 120669], "mapped", [952]], [[120670, 120670], "mapped", [953]], [[120671, 120671], "mapped", [954]], [[120672, 120672], "mapped", [955]], [[120673, 120673], "mapped", [956]], [[120674, 120674], "mapped", [957]], [[120675, 120675], "mapped", [958]], [[120676, 120676], "mapped", [959]], [[120677, 120677], "mapped", [960]], [[120678, 120678], "mapped", [961]], [[120679, 120679], "mapped", [952]], [[120680, 120680], "mapped", [963]], [[120681, 120681], "mapped", [964]], [[120682, 120682], "mapped", [965]], [[120683, 120683], "mapped", [966]], [[120684, 120684], "mapped", [967]], [[120685, 120685], "mapped", [968]], [[120686, 120686], "mapped", [969]], [[120687, 120687], "mapped", [8711]], [[120688, 120688], "mapped", [945]], [[120689, 120689], "mapped", [946]], [[120690, 120690], "mapped", [947]], [[120691, 120691], "mapped", [948]], [[120692, 120692], "mapped", [949]], [[120693, 120693], "mapped", [950]], [[120694, 120694], "mapped", [951]], [[120695, 120695], "mapped", [952]], [[120696, 120696], "mapped", [953]], [[120697, 120697], "mapped", [954]], [[120698, 120698], "mapped", [955]], [[120699, 120699], "mapped", [956]], [[120700, 120700], "mapped", [957]], [[120701, 120701], "mapped", [958]], [[120702, 120702], "mapped", [959]], [[120703, 120703], "mapped", [960]], [[120704, 120704], "mapped", [961]], [[120705, 120706], "mapped", [963]], [[120707, 120707], "mapped", [964]], [[120708, 120708], "mapped", [965]], [[120709, 120709], "mapped", [966]], [[120710, 120710], "mapped", [967]], [[120711, 120711], "mapped", [968]], [[120712, 120712], "mapped", [969]], [[120713, 120713], "mapped", [8706]], [[120714, 120714], "mapped", [949]], [[120715, 120715], "mapped", [952]], [[120716, 120716], "mapped", [954]], [[120717, 120717], "mapped", [966]], [[120718, 120718], "mapped", [961]], [[120719, 120719], "mapped", [960]], [[120720, 120720], "mapped", [945]], [[120721, 120721], "mapped", [946]], [[120722, 120722], "mapped", [947]], [[120723, 120723], "mapped", [948]], [[120724, 120724], "mapped", [949]], [[120725, 120725], "mapped", [950]], [[120726, 120726], "mapped", [951]], [[120727, 120727], "mapped", [952]], [[120728, 120728], "mapped", [953]], [[120729, 120729], "mapped", [954]], [[120730, 120730], "mapped", [955]], [[120731, 120731], "mapped", [956]], [[120732, 120732], "mapped", [957]], [[120733, 120733], "mapped", [958]], [[120734, 120734], "mapped", [959]], [[120735, 120735], "mapped", [960]], [[120736, 120736], "mapped", [961]], [[120737, 120737], "mapped", [952]], [[120738, 120738], "mapped", [963]], [[120739, 120739], "mapped", [964]], [[120740, 120740], "mapped", [965]], [[120741, 120741], "mapped", [966]], [[120742, 120742], "mapped", [967]], [[120743, 120743], "mapped", [968]], [[120744, 120744], "mapped", [969]], [[120745, 120745], "mapped", [8711]], [[120746, 120746], "mapped", [945]], [[120747, 120747], "mapped", [946]], [[120748, 120748], "mapped", [947]], [[120749, 120749], "mapped", [948]], [[120750, 120750], "mapped", [949]], [[120751, 120751], "mapped", [950]], [[120752, 120752], "mapped", [951]], [[120753, 120753], "mapped", [952]], [[120754, 120754], "mapped", [953]], [[120755, 120755], "mapped", [954]], [[120756, 120756], "mapped", [955]], [[120757, 120757], "mapped", [956]], [[120758, 120758], "mapped", [957]], [[120759, 120759], "mapped", [958]], [[120760, 120760], "mapped", [959]], [[120761, 120761], "mapped", [960]], [[120762, 120762], "mapped", [961]], [[120763, 120764], "mapped", [963]], [[120765, 120765], "mapped", [964]], [[120766, 120766], "mapped", [965]], [[120767, 120767], "mapped", [966]], [[120768, 120768], "mapped", [967]], [[120769, 120769], "mapped", [968]], [[120770, 120770], "mapped", [969]], [[120771, 120771], "mapped", [8706]], [[120772, 120772], "mapped", [949]], [[120773, 120773], "mapped", [952]], [[120774, 120774], "mapped", [954]], [[120775, 120775], "mapped", [966]], [[120776, 120776], "mapped", [961]], [[120777, 120777], "mapped", [960]], [[120778, 120779], "mapped", [989]], [[120780, 120781], "disallowed"], [[120782, 120782], "mapped", [48]], [[120783, 120783], "mapped", [49]], [[120784, 120784], "mapped", [50]], [[120785, 120785], "mapped", [51]], [[120786, 120786], "mapped", [52]], [[120787, 120787], "mapped", [53]], [[120788, 120788], "mapped", [54]], [[120789, 120789], "mapped", [55]], [[120790, 120790], "mapped", [56]], [[120791, 120791], "mapped", [57]], [[120792, 120792], "mapped", [48]], [[120793, 120793], "mapped", [49]], [[120794, 120794], "mapped", [50]], [[120795, 120795], "mapped", [51]], [[120796, 120796], "mapped", [52]], [[120797, 120797], "mapped", [53]], [[120798, 120798], "mapped", [54]], [[120799, 120799], "mapped", [55]], [[120800, 120800], "mapped", [56]], [[120801, 120801], "mapped", [57]], [[120802, 120802], "mapped", [48]], [[120803, 120803], "mapped", [49]], [[120804, 120804], "mapped", [50]], [[120805, 120805], "mapped", [51]], [[120806, 120806], "mapped", [52]], [[120807, 120807], "mapped", [53]], [[120808, 120808], "mapped", [54]], [[120809, 120809], "mapped", [55]], [[120810, 120810], "mapped", [56]], [[120811, 120811], "mapped", [57]], [[120812, 120812], "mapped", [48]], [[120813, 120813], "mapped", [49]], [[120814, 120814], "mapped", [50]], [[120815, 120815], "mapped", [51]], [[120816, 120816], "mapped", [52]], [[120817, 120817], "mapped", [53]], [[120818, 120818], "mapped", [54]], [[120819, 120819], "mapped", [55]], [[120820, 120820], "mapped", [56]], [[120821, 120821], "mapped", [57]], [[120822, 120822], "mapped", [48]], [[120823, 120823], "mapped", [49]], [[120824, 120824], "mapped", [50]], [[120825, 120825], "mapped", [51]], [[120826, 120826], "mapped", [52]], [[120827, 120827], "mapped", [53]], [[120828, 120828], "mapped", [54]], [[120829, 120829], "mapped", [55]], [[120830, 120830], "mapped", [56]], [[120831, 120831], "mapped", [57]], [[120832, 121343], "valid", [], "NV8"], [[121344, 121398], "valid"], [[121399, 121402], "valid", [], "NV8"], [[121403, 121452], "valid"], [[121453, 121460], "valid", [], "NV8"], [[121461, 121461], "valid"], [[121462, 121475], "valid", [], "NV8"], [[121476, 121476], "valid"], [[121477, 121483], "valid", [], "NV8"], [[121484, 121498], "disallowed"], [[121499, 121503], "valid"], [[121504, 121504], "disallowed"], [[121505, 121519], "valid"], [[121520, 124927], "disallowed"], [[124928, 125124], "valid"], [[125125, 125126], "disallowed"], [[125127, 125135], "valid", [], "NV8"], [[125136, 125142], "valid"], [[125143, 126463], "disallowed"], [[126464, 126464], "mapped", [1575]], [[126465, 126465], "mapped", [1576]], [[126466, 126466], "mapped", [1580]], [[126467, 126467], "mapped", [1583]], [[126468, 126468], "disallowed"], [[126469, 126469], "mapped", [1608]], [[126470, 126470], "mapped", [1586]], [[126471, 126471], "mapped", [1581]], [[126472, 126472], "mapped", [1591]], [[126473, 126473], "mapped", [1610]], [[126474, 126474], "mapped", [1603]], [[126475, 126475], "mapped", [1604]], [[126476, 126476], "mapped", [1605]], [[126477, 126477], "mapped", [1606]], [[126478, 126478], "mapped", [1587]], [[126479, 126479], "mapped", [1593]], [[126480, 126480], "mapped", [1601]], [[126481, 126481], "mapped", [1589]], [[126482, 126482], "mapped", [1602]], [[126483, 126483], "mapped", [1585]], [[126484, 126484], "mapped", [1588]], [[126485, 126485], "mapped", [1578]], [[126486, 126486], "mapped", [1579]], [[126487, 126487], "mapped", [1582]], [[126488, 126488], "mapped", [1584]], [[126489, 126489], "mapped", [1590]], [[126490, 126490], "mapped", [1592]], [[126491, 126491], "mapped", [1594]], [[126492, 126492], "mapped", [1646]], [[126493, 126493], "mapped", [1722]], [[126494, 126494], "mapped", [1697]], [[126495, 126495], "mapped", [1647]], [[126496, 126496], "disallowed"], [[126497, 126497], "mapped", [1576]], [[126498, 126498], "mapped", [1580]], [[126499, 126499], "disallowed"], [[126500, 126500], "mapped", [1607]], [[126501, 126502], "disallowed"], [[126503, 126503], "mapped", [1581]], [[126504, 126504], "disallowed"], [[126505, 126505], "mapped", [1610]], [[126506, 126506], "mapped", [1603]], [[126507, 126507], "mapped", [1604]], [[126508, 126508], "mapped", [1605]], [[126509, 126509], "mapped", [1606]], [[126510, 126510], "mapped", [1587]], [[126511, 126511], "mapped", [1593]], [[126512, 126512], "mapped", [1601]], [[126513, 126513], "mapped", [1589]], [[126514, 126514], "mapped", [1602]], [[126515, 126515], "disallowed"], [[126516, 126516], "mapped", [1588]], [[126517, 126517], "mapped", [1578]], [[126518, 126518], "mapped", [1579]], [[126519, 126519], "mapped", [1582]], [[126520, 126520], "disallowed"], [[126521, 126521], "mapped", [1590]], [[126522, 126522], "disallowed"], [[126523, 126523], "mapped", [1594]], [[126524, 126529], "disallowed"], [[126530, 126530], "mapped", [1580]], [[126531, 126534], "disallowed"], [[126535, 126535], "mapped", [1581]], [[126536, 126536], "disallowed"], [[126537, 126537], "mapped", [1610]], [[126538, 126538], "disallowed"], [[126539, 126539], "mapped", [1604]], [[126540, 126540], "disallowed"], [[126541, 126541], "mapped", [1606]], [[126542, 126542], "mapped", [1587]], [[126543, 126543], "mapped", [1593]], [[126544, 126544], "disallowed"], [[126545, 126545], "mapped", [1589]], [[126546, 126546], "mapped", [1602]], [[126547, 126547], "disallowed"], [[126548, 126548], "mapped", [1588]], [[126549, 126550], "disallowed"], [[126551, 126551], "mapped", [1582]], [[126552, 126552], "disallowed"], [[126553, 126553], "mapped", [1590]], [[126554, 126554], "disallowed"], [[126555, 126555], "mapped", [1594]], [[126556, 126556], "disallowed"], [[126557, 126557], "mapped", [1722]], [[126558, 126558], "disallowed"], [[126559, 126559], "mapped", [1647]], [[126560, 126560], "disallowed"], [[126561, 126561], "mapped", [1576]], [[126562, 126562], "mapped", [1580]], [[126563, 126563], "disallowed"], [[126564, 126564], "mapped", [1607]], [[126565, 126566], "disallowed"], [[126567, 126567], "mapped", [1581]], [[126568, 126568], "mapped", [1591]], [[126569, 126569], "mapped", [1610]], [[126570, 126570], "mapped", [1603]], [[126571, 126571], "disallowed"], [[126572, 126572], "mapped", [1605]], [[126573, 126573], "mapped", [1606]], [[126574, 126574], "mapped", [1587]], [[126575, 126575], "mapped", [1593]], [[126576, 126576], "mapped", [1601]], [[126577, 126577], "mapped", [1589]], [[126578, 126578], "mapped", [1602]], [[126579, 126579], "disallowed"], [[126580, 126580], "mapped", [1588]], [[126581, 126581], "mapped", [1578]], [[126582, 126582], "mapped", [1579]], [[126583, 126583], "mapped", [1582]], [[126584, 126584], "disallowed"], [[126585, 126585], "mapped", [1590]], [[126586, 126586], "mapped", [1592]], [[126587, 126587], "mapped", [1594]], [[126588, 126588], "mapped", [1646]], [[126589, 126589], "disallowed"], [[126590, 126590], "mapped", [1697]], [[126591, 126591], "disallowed"], [[126592, 126592], "mapped", [1575]], [[126593, 126593], "mapped", [1576]], [[126594, 126594], "mapped", [1580]], [[126595, 126595], "mapped", [1583]], [[126596, 126596], "mapped", [1607]], [[126597, 126597], "mapped", [1608]], [[126598, 126598], "mapped", [1586]], [[126599, 126599], "mapped", [1581]], [[126600, 126600], "mapped", [1591]], [[126601, 126601], "mapped", [1610]], [[126602, 126602], "disallowed"], [[126603, 126603], "mapped", [1604]], [[126604, 126604], "mapped", [1605]], [[126605, 126605], "mapped", [1606]], [[126606, 126606], "mapped", [1587]], [[126607, 126607], "mapped", [1593]], [[126608, 126608], "mapped", [1601]], [[126609, 126609], "mapped", [1589]], [[126610, 126610], "mapped", [1602]], [[126611, 126611], "mapped", [1585]], [[126612, 126612], "mapped", [1588]], [[126613, 126613], "mapped", [1578]], [[126614, 126614], "mapped", [1579]], [[126615, 126615], "mapped", [1582]], [[126616, 126616], "mapped", [1584]], [[126617, 126617], "mapped", [1590]], [[126618, 126618], "mapped", [1592]], [[126619, 126619], "mapped", [1594]], [[126620, 126624], "disallowed"], [[126625, 126625], "mapped", [1576]], [[126626, 126626], "mapped", [1580]], [[126627, 126627], "mapped", [1583]], [[126628, 126628], "disallowed"], [[126629, 126629], "mapped", [1608]], [[126630, 126630], "mapped", [1586]], [[126631, 126631], "mapped", [1581]], [[126632, 126632], "mapped", [1591]], [[126633, 126633], "mapped", [1610]], [[126634, 126634], "disallowed"], [[126635, 126635], "mapped", [1604]], [[126636, 126636], "mapped", [1605]], [[126637, 126637], "mapped", [1606]], [[126638, 126638], "mapped", [1587]], [[126639, 126639], "mapped", [1593]], [[126640, 126640], "mapped", [1601]], [[126641, 126641], "mapped", [1589]], [[126642, 126642], "mapped", [1602]], [[126643, 126643], "mapped", [1585]], [[126644, 126644], "mapped", [1588]], [[126645, 126645], "mapped", [1578]], [[126646, 126646], "mapped", [1579]], [[126647, 126647], "mapped", [1582]], [[126648, 126648], "mapped", [1584]], [[126649, 126649], "mapped", [1590]], [[126650, 126650], "mapped", [1592]], [[126651, 126651], "mapped", [1594]], [[126652, 126703], "disallowed"], [[126704, 126705], "valid", [], "NV8"], [[126706, 126975], "disallowed"], [[126976, 127019], "valid", [], "NV8"], [[127020, 127023], "disallowed"], [[127024, 127123], "valid", [], "NV8"], [[127124, 127135], "disallowed"], [[127136, 127150], "valid", [], "NV8"], [[127151, 127152], "disallowed"], [[127153, 127166], "valid", [], "NV8"], [[127167, 127167], "valid", [], "NV8"], [[127168, 127168], "disallowed"], [[127169, 127183], "valid", [], "NV8"], [[127184, 127184], "disallowed"], [[127185, 127199], "valid", [], "NV8"], [[127200, 127221], "valid", [], "NV8"], [[127222, 127231], "disallowed"], [[127232, 127232], "disallowed"], [[127233, 127233], "disallowed_STD3_mapped", [48, 44]], [[127234, 127234], "disallowed_STD3_mapped", [49, 44]], [[127235, 127235], "disallowed_STD3_mapped", [50, 44]], [[127236, 127236], "disallowed_STD3_mapped", [51, 44]], [[127237, 127237], "disallowed_STD3_mapped", [52, 44]], [[127238, 127238], "disallowed_STD3_mapped", [53, 44]], [[127239, 127239], "disallowed_STD3_mapped", [54, 44]], [[127240, 127240], "disallowed_STD3_mapped", [55, 44]], [[127241, 127241], "disallowed_STD3_mapped", [56, 44]], [[127242, 127242], "disallowed_STD3_mapped", [57, 44]], [[127243, 127244], "valid", [], "NV8"], [[127245, 127247], "disallowed"], [[127248, 127248], "disallowed_STD3_mapped", [40, 97, 41]], [[127249, 127249], "disallowed_STD3_mapped", [40, 98, 41]], [[127250, 127250], "disallowed_STD3_mapped", [40, 99, 41]], [[127251, 127251], "disallowed_STD3_mapped", [40, 100, 41]], [[127252, 127252], "disallowed_STD3_mapped", [40, 101, 41]], [[127253, 127253], "disallowed_STD3_mapped", [40, 102, 41]], [[127254, 127254], "disallowed_STD3_mapped", [40, 103, 41]], [[127255, 127255], "disallowed_STD3_mapped", [40, 104, 41]], [[127256, 127256], "disallowed_STD3_mapped", [40, 105, 41]], [[127257, 127257], "disallowed_STD3_mapped", [40, 106, 41]], [[127258, 127258], "disallowed_STD3_mapped", [40, 107, 41]], [[127259, 127259], "disallowed_STD3_mapped", [40, 108, 41]], [[127260, 127260], "disallowed_STD3_mapped", [40, 109, 41]], [[127261, 127261], "disallowed_STD3_mapped", [40, 110, 41]], [[127262, 127262], "disallowed_STD3_mapped", [40, 111, 41]], [[127263, 127263], "disallowed_STD3_mapped", [40, 112, 41]], [[127264, 127264], "disallowed_STD3_mapped", [40, 113, 41]], [[127265, 127265], "disallowed_STD3_mapped", [40, 114, 41]], [[127266, 127266], "disallowed_STD3_mapped", [40, 115, 41]], [[127267, 127267], "disallowed_STD3_mapped", [40, 116, 41]], [[127268, 127268], "disallowed_STD3_mapped", [40, 117, 41]], [[127269, 127269], "disallowed_STD3_mapped", [40, 118, 41]], [[127270, 127270], "disallowed_STD3_mapped", [40, 119, 41]], [[127271, 127271], "disallowed_STD3_mapped", [40, 120, 41]], [[127272, 127272], "disallowed_STD3_mapped", [40, 121, 41]], [[127273, 127273], "disallowed_STD3_mapped", [40, 122, 41]], [[127274, 127274], "mapped", [12308, 115, 12309]], [[127275, 127275], "mapped", [99]], [[127276, 127276], "mapped", [114]], [[127277, 127277], "mapped", [99, 100]], [[127278, 127278], "mapped", [119, 122]], [[127279, 127279], "disallowed"], [[127280, 127280], "mapped", [97]], [[127281, 127281], "mapped", [98]], [[127282, 127282], "mapped", [99]], [[127283, 127283], "mapped", [100]], [[127284, 127284], "mapped", [101]], [[127285, 127285], "mapped", [102]], [[127286, 127286], "mapped", [103]], [[127287, 127287], "mapped", [104]], [[127288, 127288], "mapped", [105]], [[127289, 127289], "mapped", [106]], [[127290, 127290], "mapped", [107]], [[127291, 127291], "mapped", [108]], [[127292, 127292], "mapped", [109]], [[127293, 127293], "mapped", [110]], [[127294, 127294], "mapped", [111]], [[127295, 127295], "mapped", [112]], [[127296, 127296], "mapped", [113]], [[127297, 127297], "mapped", [114]], [[127298, 127298], "mapped", [115]], [[127299, 127299], "mapped", [116]], [[127300, 127300], "mapped", [117]], [[127301, 127301], "mapped", [118]], [[127302, 127302], "mapped", [119]], [[127303, 127303], "mapped", [120]], [[127304, 127304], "mapped", [121]], [[127305, 127305], "mapped", [122]], [[127306, 127306], "mapped", [104, 118]], [[127307, 127307], "mapped", [109, 118]], [[127308, 127308], "mapped", [115, 100]], [[127309, 127309], "mapped", [115, 115]], [[127310, 127310], "mapped", [112, 112, 118]], [[127311, 127311], "mapped", [119, 99]], [[127312, 127318], "valid", [], "NV8"], [[127319, 127319], "valid", [], "NV8"], [[127320, 127326], "valid", [], "NV8"], [[127327, 127327], "valid", [], "NV8"], [[127328, 127337], "valid", [], "NV8"], [[127338, 127338], "mapped", [109, 99]], [[127339, 127339], "mapped", [109, 100]], [[127340, 127343], "disallowed"], [[127344, 127352], "valid", [], "NV8"], [[127353, 127353], "valid", [], "NV8"], [[127354, 127354], "valid", [], "NV8"], [[127355, 127356], "valid", [], "NV8"], [[127357, 127358], "valid", [], "NV8"], [[127359, 127359], "valid", [], "NV8"], [[127360, 127369], "valid", [], "NV8"], [[127370, 127373], "valid", [], "NV8"], [[127374, 127375], "valid", [], "NV8"], [[127376, 127376], "mapped", [100, 106]], [[127377, 127386], "valid", [], "NV8"], [[127387, 127461], "disallowed"], [[127462, 127487], "valid", [], "NV8"], [[127488, 127488], "mapped", [12411, 12363]], [[127489, 127489], "mapped", [12467, 12467]], [[127490, 127490], "mapped", [12469]], [[127491, 127503], "disallowed"], [[127504, 127504], "mapped", [25163]], [[127505, 127505], "mapped", [23383]], [[127506, 127506], "mapped", [21452]], [[127507, 127507], "mapped", [12487]], [[127508, 127508], "mapped", [20108]], [[127509, 127509], "mapped", [22810]], [[127510, 127510], "mapped", [35299]], [[127511, 127511], "mapped", [22825]], [[127512, 127512], "mapped", [20132]], [[127513, 127513], "mapped", [26144]], [[127514, 127514], "mapped", [28961]], [[127515, 127515], "mapped", [26009]], [[127516, 127516], "mapped", [21069]], [[127517, 127517], "mapped", [24460]], [[127518, 127518], "mapped", [20877]], [[127519, 127519], "mapped", [26032]], [[127520, 127520], "mapped", [21021]], [[127521, 127521], "mapped", [32066]], [[127522, 127522], "mapped", [29983]], [[127523, 127523], "mapped", [36009]], [[127524, 127524], "mapped", [22768]], [[127525, 127525], "mapped", [21561]], [[127526, 127526], "mapped", [28436]], [[127527, 127527], "mapped", [25237]], [[127528, 127528], "mapped", [25429]], [[127529, 127529], "mapped", [19968]], [[127530, 127530], "mapped", [19977]], [[127531, 127531], "mapped", [36938]], [[127532, 127532], "mapped", [24038]], [[127533, 127533], "mapped", [20013]], [[127534, 127534], "mapped", [21491]], [[127535, 127535], "mapped", [25351]], [[127536, 127536], "mapped", [36208]], [[127537, 127537], "mapped", [25171]], [[127538, 127538], "mapped", [31105]], [[127539, 127539], "mapped", [31354]], [[127540, 127540], "mapped", [21512]], [[127541, 127541], "mapped", [28288]], [[127542, 127542], "mapped", [26377]], [[127543, 127543], "mapped", [26376]], [[127544, 127544], "mapped", [30003]], [[127545, 127545], "mapped", [21106]], [[127546, 127546], "mapped", [21942]], [[127547, 127551], "disallowed"], [[127552, 127552], "mapped", [12308, 26412, 12309]], [[127553, 127553], "mapped", [12308, 19977, 12309]], [[127554, 127554], "mapped", [12308, 20108, 12309]], [[127555, 127555], "mapped", [12308, 23433, 12309]], [[127556, 127556], "mapped", [12308, 28857, 12309]], [[127557, 127557], "mapped", [12308, 25171, 12309]], [[127558, 127558], "mapped", [12308, 30423, 12309]], [[127559, 127559], "mapped", [12308, 21213, 12309]], [[127560, 127560], "mapped", [12308, 25943, 12309]], [[127561, 127567], "disallowed"], [[127568, 127568], "mapped", [24471]], [[127569, 127569], "mapped", [21487]], [[127570, 127743], "disallowed"], [[127744, 127776], "valid", [], "NV8"], [[127777, 127788], "valid", [], "NV8"], [[127789, 127791], "valid", [], "NV8"], [[127792, 127797], "valid", [], "NV8"], [[127798, 127798], "valid", [], "NV8"], [[127799, 127868], "valid", [], "NV8"], [[127869, 127869], "valid", [], "NV8"], [[127870, 127871], "valid", [], "NV8"], [[127872, 127891], "valid", [], "NV8"], [[127892, 127903], "valid", [], "NV8"], [[127904, 127940], "valid", [], "NV8"], [[127941, 127941], "valid", [], "NV8"], [[127942, 127946], "valid", [], "NV8"], [[127947, 127950], "valid", [], "NV8"], [[127951, 127955], "valid", [], "NV8"], [[127956, 127967], "valid", [], "NV8"], [[127968, 127984], "valid", [], "NV8"], [[127985, 127991], "valid", [], "NV8"], [[127992, 127999], "valid", [], "NV8"], [[128e3, 128062], "valid", [], "NV8"], [[128063, 128063], "valid", [], "NV8"], [[128064, 128064], "valid", [], "NV8"], [[128065, 128065], "valid", [], "NV8"], [[128066, 128247], "valid", [], "NV8"], [[128248, 128248], "valid", [], "NV8"], [[128249, 128252], "valid", [], "NV8"], [[128253, 128254], "valid", [], "NV8"], [[128255, 128255], "valid", [], "NV8"], [[128256, 128317], "valid", [], "NV8"], [[128318, 128319], "valid", [], "NV8"], [[128320, 128323], "valid", [], "NV8"], [[128324, 128330], "valid", [], "NV8"], [[128331, 128335], "valid", [], "NV8"], [[128336, 128359], "valid", [], "NV8"], [[128360, 128377], "valid", [], "NV8"], [[128378, 128378], "disallowed"], [[128379, 128419], "valid", [], "NV8"], [[128420, 128420], "disallowed"], [[128421, 128506], "valid", [], "NV8"], [[128507, 128511], "valid", [], "NV8"], [[128512, 128512], "valid", [], "NV8"], [[128513, 128528], "valid", [], "NV8"], [[128529, 128529], "valid", [], "NV8"], [[128530, 128532], "valid", [], "NV8"], [[128533, 128533], "valid", [], "NV8"], [[128534, 128534], "valid", [], "NV8"], [[128535, 128535], "valid", [], "NV8"], [[128536, 128536], "valid", [], "NV8"], [[128537, 128537], "valid", [], "NV8"], [[128538, 128538], "valid", [], "NV8"], [[128539, 128539], "valid", [], "NV8"], [[128540, 128542], "valid", [], "NV8"], [[128543, 128543], "valid", [], "NV8"], [[128544, 128549], "valid", [], "NV8"], [[128550, 128551], "valid", [], "NV8"], [[128552, 128555], "valid", [], "NV8"], [[128556, 128556], "valid", [], "NV8"], [[128557, 128557], "valid", [], "NV8"], [[128558, 128559], "valid", [], "NV8"], [[128560, 128563], "valid", [], "NV8"], [[128564, 128564], "valid", [], "NV8"], [[128565, 128576], "valid", [], "NV8"], [[128577, 128578], "valid", [], "NV8"], [[128579, 128580], "valid", [], "NV8"], [[128581, 128591], "valid", [], "NV8"], [[128592, 128639], "valid", [], "NV8"], [[128640, 128709], "valid", [], "NV8"], [[128710, 128719], "valid", [], "NV8"], [[128720, 128720], "valid", [], "NV8"], [[128721, 128735], "disallowed"], [[128736, 128748], "valid", [], "NV8"], [[128749, 128751], "disallowed"], [[128752, 128755], "valid", [], "NV8"], [[128756, 128767], "disallowed"], [[128768, 128883], "valid", [], "NV8"], [[128884, 128895], "disallowed"], [[128896, 128980], "valid", [], "NV8"], [[128981, 129023], "disallowed"], [[129024, 129035], "valid", [], "NV8"], [[129036, 129039], "disallowed"], [[129040, 129095], "valid", [], "NV8"], [[129096, 129103], "disallowed"], [[129104, 129113], "valid", [], "NV8"], [[129114, 129119], "disallowed"], [[129120, 129159], "valid", [], "NV8"], [[129160, 129167], "disallowed"], [[129168, 129197], "valid", [], "NV8"], [[129198, 129295], "disallowed"], [[129296, 129304], "valid", [], "NV8"], [[129305, 129407], "disallowed"], [[129408, 129412], "valid", [], "NV8"], [[129413, 129471], "disallowed"], [[129472, 129472], "valid", [], "NV8"], [[129473, 131069], "disallowed"], [[131070, 131071], "disallowed"], [[131072, 173782], "valid"], [[173783, 173823], "disallowed"], [[173824, 177972], "valid"], [[177973, 177983], "disallowed"], [[177984, 178205], "valid"], [[178206, 178207], "disallowed"], [[178208, 183969], "valid"], [[183970, 194559], "disallowed"], [[194560, 194560], "mapped", [20029]], [[194561, 194561], "mapped", [20024]], [[194562, 194562], "mapped", [20033]], [[194563, 194563], "mapped", [131362]], [[194564, 194564], "mapped", [20320]], [[194565, 194565], "mapped", [20398]], [[194566, 194566], "mapped", [20411]], [[194567, 194567], "mapped", [20482]], [[194568, 194568], "mapped", [20602]], [[194569, 194569], "mapped", [20633]], [[194570, 194570], "mapped", [20711]], [[194571, 194571], "mapped", [20687]], [[194572, 194572], "mapped", [13470]], [[194573, 194573], "mapped", [132666]], [[194574, 194574], "mapped", [20813]], [[194575, 194575], "mapped", [20820]], [[194576, 194576], "mapped", [20836]], [[194577, 194577], "mapped", [20855]], [[194578, 194578], "mapped", [132380]], [[194579, 194579], "mapped", [13497]], [[194580, 194580], "mapped", [20839]], [[194581, 194581], "mapped", [20877]], [[194582, 194582], "mapped", [132427]], [[194583, 194583], "mapped", [20887]], [[194584, 194584], "mapped", [20900]], [[194585, 194585], "mapped", [20172]], [[194586, 194586], "mapped", [20908]], [[194587, 194587], "mapped", [20917]], [[194588, 194588], "mapped", [168415]], [[194589, 194589], "mapped", [20981]], [[194590, 194590], "mapped", [20995]], [[194591, 194591], "mapped", [13535]], [[194592, 194592], "mapped", [21051]], [[194593, 194593], "mapped", [21062]], [[194594, 194594], "mapped", [21106]], [[194595, 194595], "mapped", [21111]], [[194596, 194596], "mapped", [13589]], [[194597, 194597], "mapped", [21191]], [[194598, 194598], "mapped", [21193]], [[194599, 194599], "mapped", [21220]], [[194600, 194600], "mapped", [21242]], [[194601, 194601], "mapped", [21253]], [[194602, 194602], "mapped", [21254]], [[194603, 194603], "mapped", [21271]], [[194604, 194604], "mapped", [21321]], [[194605, 194605], "mapped", [21329]], [[194606, 194606], "mapped", [21338]], [[194607, 194607], "mapped", [21363]], [[194608, 194608], "mapped", [21373]], [[194609, 194611], "mapped", [21375]], [[194612, 194612], "mapped", [133676]], [[194613, 194613], "mapped", [28784]], [[194614, 194614], "mapped", [21450]], [[194615, 194615], "mapped", [21471]], [[194616, 194616], "mapped", [133987]], [[194617, 194617], "mapped", [21483]], [[194618, 194618], "mapped", [21489]], [[194619, 194619], "mapped", [21510]], [[194620, 194620], "mapped", [21662]], [[194621, 194621], "mapped", [21560]], [[194622, 194622], "mapped", [21576]], [[194623, 194623], "mapped", [21608]], [[194624, 194624], "mapped", [21666]], [[194625, 194625], "mapped", [21750]], [[194626, 194626], "mapped", [21776]], [[194627, 194627], "mapped", [21843]], [[194628, 194628], "mapped", [21859]], [[194629, 194630], "mapped", [21892]], [[194631, 194631], "mapped", [21913]], [[194632, 194632], "mapped", [21931]], [[194633, 194633], "mapped", [21939]], [[194634, 194634], "mapped", [21954]], [[194635, 194635], "mapped", [22294]], [[194636, 194636], "mapped", [22022]], [[194637, 194637], "mapped", [22295]], [[194638, 194638], "mapped", [22097]], [[194639, 194639], "mapped", [22132]], [[194640, 194640], "mapped", [20999]], [[194641, 194641], "mapped", [22766]], [[194642, 194642], "mapped", [22478]], [[194643, 194643], "mapped", [22516]], [[194644, 194644], "mapped", [22541]], [[194645, 194645], "mapped", [22411]], [[194646, 194646], "mapped", [22578]], [[194647, 194647], "mapped", [22577]], [[194648, 194648], "mapped", [22700]], [[194649, 194649], "mapped", [136420]], [[194650, 194650], "mapped", [22770]], [[194651, 194651], "mapped", [22775]], [[194652, 194652], "mapped", [22790]], [[194653, 194653], "mapped", [22810]], [[194654, 194654], "mapped", [22818]], [[194655, 194655], "mapped", [22882]], [[194656, 194656], "mapped", [136872]], [[194657, 194657], "mapped", [136938]], [[194658, 194658], "mapped", [23020]], [[194659, 194659], "mapped", [23067]], [[194660, 194660], "mapped", [23079]], [[194661, 194661], "mapped", [23e3]], [[194662, 194662], "mapped", [23142]], [[194663, 194663], "mapped", [14062]], [[194664, 194664], "disallowed"], [[194665, 194665], "mapped", [23304]], [[194666, 194667], "mapped", [23358]], [[194668, 194668], "mapped", [137672]], [[194669, 194669], "mapped", [23491]], [[194670, 194670], "mapped", [23512]], [[194671, 194671], "mapped", [23527]], [[194672, 194672], "mapped", [23539]], [[194673, 194673], "mapped", [138008]], [[194674, 194674], "mapped", [23551]], [[194675, 194675], "mapped", [23558]], [[194676, 194676], "disallowed"], [[194677, 194677], "mapped", [23586]], [[194678, 194678], "mapped", [14209]], [[194679, 194679], "mapped", [23648]], [[194680, 194680], "mapped", [23662]], [[194681, 194681], "mapped", [23744]], [[194682, 194682], "mapped", [23693]], [[194683, 194683], "mapped", [138724]], [[194684, 194684], "mapped", [23875]], [[194685, 194685], "mapped", [138726]], [[194686, 194686], "mapped", [23918]], [[194687, 194687], "mapped", [23915]], [[194688, 194688], "mapped", [23932]], [[194689, 194689], "mapped", [24033]], [[194690, 194690], "mapped", [24034]], [[194691, 194691], "mapped", [14383]], [[194692, 194692], "mapped", [24061]], [[194693, 194693], "mapped", [24104]], [[194694, 194694], "mapped", [24125]], [[194695, 194695], "mapped", [24169]], [[194696, 194696], "mapped", [14434]], [[194697, 194697], "mapped", [139651]], [[194698, 194698], "mapped", [14460]], [[194699, 194699], "mapped", [24240]], [[194700, 194700], "mapped", [24243]], [[194701, 194701], "mapped", [24246]], [[194702, 194702], "mapped", [24266]], [[194703, 194703], "mapped", [172946]], [[194704, 194704], "mapped", [24318]], [[194705, 194706], "mapped", [140081]], [[194707, 194707], "mapped", [33281]], [[194708, 194709], "mapped", [24354]], [[194710, 194710], "mapped", [14535]], [[194711, 194711], "mapped", [144056]], [[194712, 194712], "mapped", [156122]], [[194713, 194713], "mapped", [24418]], [[194714, 194714], "mapped", [24427]], [[194715, 194715], "mapped", [14563]], [[194716, 194716], "mapped", [24474]], [[194717, 194717], "mapped", [24525]], [[194718, 194718], "mapped", [24535]], [[194719, 194719], "mapped", [24569]], [[194720, 194720], "mapped", [24705]], [[194721, 194721], "mapped", [14650]], [[194722, 194722], "mapped", [14620]], [[194723, 194723], "mapped", [24724]], [[194724, 194724], "mapped", [141012]], [[194725, 194725], "mapped", [24775]], [[194726, 194726], "mapped", [24904]], [[194727, 194727], "mapped", [24908]], [[194728, 194728], "mapped", [24910]], [[194729, 194729], "mapped", [24908]], [[194730, 194730], "mapped", [24954]], [[194731, 194731], "mapped", [24974]], [[194732, 194732], "mapped", [25010]], [[194733, 194733], "mapped", [24996]], [[194734, 194734], "mapped", [25007]], [[194735, 194735], "mapped", [25054]], [[194736, 194736], "mapped", [25074]], [[194737, 194737], "mapped", [25078]], [[194738, 194738], "mapped", [25104]], [[194739, 194739], "mapped", [25115]], [[194740, 194740], "mapped", [25181]], [[194741, 194741], "mapped", [25265]], [[194742, 194742], "mapped", [25300]], [[194743, 194743], "mapped", [25424]], [[194744, 194744], "mapped", [142092]], [[194745, 194745], "mapped", [25405]], [[194746, 194746], "mapped", [25340]], [[194747, 194747], "mapped", [25448]], [[194748, 194748], "mapped", [25475]], [[194749, 194749], "mapped", [25572]], [[194750, 194750], "mapped", [142321]], [[194751, 194751], "mapped", [25634]], [[194752, 194752], "mapped", [25541]], [[194753, 194753], "mapped", [25513]], [[194754, 194754], "mapped", [14894]], [[194755, 194755], "mapped", [25705]], [[194756, 194756], "mapped", [25726]], [[194757, 194757], "mapped", [25757]], [[194758, 194758], "mapped", [25719]], [[194759, 194759], "mapped", [14956]], [[194760, 194760], "mapped", [25935]], [[194761, 194761], "mapped", [25964]], [[194762, 194762], "mapped", [143370]], [[194763, 194763], "mapped", [26083]], [[194764, 194764], "mapped", [26360]], [[194765, 194765], "mapped", [26185]], [[194766, 194766], "mapped", [15129]], [[194767, 194767], "mapped", [26257]], [[194768, 194768], "mapped", [15112]], [[194769, 194769], "mapped", [15076]], [[194770, 194770], "mapped", [20882]], [[194771, 194771], "mapped", [20885]], [[194772, 194772], "mapped", [26368]], [[194773, 194773], "mapped", [26268]], [[194774, 194774], "mapped", [32941]], [[194775, 194775], "mapped", [17369]], [[194776, 194776], "mapped", [26391]], [[194777, 194777], "mapped", [26395]], [[194778, 194778], "mapped", [26401]], [[194779, 194779], "mapped", [26462]], [[194780, 194780], "mapped", [26451]], [[194781, 194781], "mapped", [144323]], [[194782, 194782], "mapped", [15177]], [[194783, 194783], "mapped", [26618]], [[194784, 194784], "mapped", [26501]], [[194785, 194785], "mapped", [26706]], [[194786, 194786], "mapped", [26757]], [[194787, 194787], "mapped", [144493]], [[194788, 194788], "mapped", [26766]], [[194789, 194789], "mapped", [26655]], [[194790, 194790], "mapped", [26900]], [[194791, 194791], "mapped", [15261]], [[194792, 194792], "mapped", [26946]], [[194793, 194793], "mapped", [27043]], [[194794, 194794], "mapped", [27114]], [[194795, 194795], "mapped", [27304]], [[194796, 194796], "mapped", [145059]], [[194797, 194797], "mapped", [27355]], [[194798, 194798], "mapped", [15384]], [[194799, 194799], "mapped", [27425]], [[194800, 194800], "mapped", [145575]], [[194801, 194801], "mapped", [27476]], [[194802, 194802], "mapped", [15438]], [[194803, 194803], "mapped", [27506]], [[194804, 194804], "mapped", [27551]], [[194805, 194805], "mapped", [27578]], [[194806, 194806], "mapped", [27579]], [[194807, 194807], "mapped", [146061]], [[194808, 194808], "mapped", [138507]], [[194809, 194809], "mapped", [146170]], [[194810, 194810], "mapped", [27726]], [[194811, 194811], "mapped", [146620]], [[194812, 194812], "mapped", [27839]], [[194813, 194813], "mapped", [27853]], [[194814, 194814], "mapped", [27751]], [[194815, 194815], "mapped", [27926]], [[194816, 194816], "mapped", [27966]], [[194817, 194817], "mapped", [28023]], [[194818, 194818], "mapped", [27969]], [[194819, 194819], "mapped", [28009]], [[194820, 194820], "mapped", [28024]], [[194821, 194821], "mapped", [28037]], [[194822, 194822], "mapped", [146718]], [[194823, 194823], "mapped", [27956]], [[194824, 194824], "mapped", [28207]], [[194825, 194825], "mapped", [28270]], [[194826, 194826], "mapped", [15667]], [[194827, 194827], "mapped", [28363]], [[194828, 194828], "mapped", [28359]], [[194829, 194829], "mapped", [147153]], [[194830, 194830], "mapped", [28153]], [[194831, 194831], "mapped", [28526]], [[194832, 194832], "mapped", [147294]], [[194833, 194833], "mapped", [147342]], [[194834, 194834], "mapped", [28614]], [[194835, 194835], "mapped", [28729]], [[194836, 194836], "mapped", [28702]], [[194837, 194837], "mapped", [28699]], [[194838, 194838], "mapped", [15766]], [[194839, 194839], "mapped", [28746]], [[194840, 194840], "mapped", [28797]], [[194841, 194841], "mapped", [28791]], [[194842, 194842], "mapped", [28845]], [[194843, 194843], "mapped", [132389]], [[194844, 194844], "mapped", [28997]], [[194845, 194845], "mapped", [148067]], [[194846, 194846], "mapped", [29084]], [[194847, 194847], "disallowed"], [[194848, 194848], "mapped", [29224]], [[194849, 194849], "mapped", [29237]], [[194850, 194850], "mapped", [29264]], [[194851, 194851], "mapped", [149e3]], [[194852, 194852], "mapped", [29312]], [[194853, 194853], "mapped", [29333]], [[194854, 194854], "mapped", [149301]], [[194855, 194855], "mapped", [149524]], [[194856, 194856], "mapped", [29562]], [[194857, 194857], "mapped", [29579]], [[194858, 194858], "mapped", [16044]], [[194859, 194859], "mapped", [29605]], [[194860, 194861], "mapped", [16056]], [[194862, 194862], "mapped", [29767]], [[194863, 194863], "mapped", [29788]], [[194864, 194864], "mapped", [29809]], [[194865, 194865], "mapped", [29829]], [[194866, 194866], "mapped", [29898]], [[194867, 194867], "mapped", [16155]], [[194868, 194868], "mapped", [29988]], [[194869, 194869], "mapped", [150582]], [[194870, 194870], "mapped", [30014]], [[194871, 194871], "mapped", [150674]], [[194872, 194872], "mapped", [30064]], [[194873, 194873], "mapped", [139679]], [[194874, 194874], "mapped", [30224]], [[194875, 194875], "mapped", [151457]], [[194876, 194876], "mapped", [151480]], [[194877, 194877], "mapped", [151620]], [[194878, 194878], "mapped", [16380]], [[194879, 194879], "mapped", [16392]], [[194880, 194880], "mapped", [30452]], [[194881, 194881], "mapped", [151795]], [[194882, 194882], "mapped", [151794]], [[194883, 194883], "mapped", [151833]], [[194884, 194884], "mapped", [151859]], [[194885, 194885], "mapped", [30494]], [[194886, 194887], "mapped", [30495]], [[194888, 194888], "mapped", [30538]], [[194889, 194889], "mapped", [16441]], [[194890, 194890], "mapped", [30603]], [[194891, 194891], "mapped", [16454]], [[194892, 194892], "mapped", [16534]], [[194893, 194893], "mapped", [152605]], [[194894, 194894], "mapped", [30798]], [[194895, 194895], "mapped", [30860]], [[194896, 194896], "mapped", [30924]], [[194897, 194897], "mapped", [16611]], [[194898, 194898], "mapped", [153126]], [[194899, 194899], "mapped", [31062]], [[194900, 194900], "mapped", [153242]], [[194901, 194901], "mapped", [153285]], [[194902, 194902], "mapped", [31119]], [[194903, 194903], "mapped", [31211]], [[194904, 194904], "mapped", [16687]], [[194905, 194905], "mapped", [31296]], [[194906, 194906], "mapped", [31306]], [[194907, 194907], "mapped", [31311]], [[194908, 194908], "mapped", [153980]], [[194909, 194910], "mapped", [154279]], [[194911, 194911], "disallowed"], [[194912, 194912], "mapped", [16898]], [[194913, 194913], "mapped", [154539]], [[194914, 194914], "mapped", [31686]], [[194915, 194915], "mapped", [31689]], [[194916, 194916], "mapped", [16935]], [[194917, 194917], "mapped", [154752]], [[194918, 194918], "mapped", [31954]], [[194919, 194919], "mapped", [17056]], [[194920, 194920], "mapped", [31976]], [[194921, 194921], "mapped", [31971]], [[194922, 194922], "mapped", [32e3]], [[194923, 194923], "mapped", [155526]], [[194924, 194924], "mapped", [32099]], [[194925, 194925], "mapped", [17153]], [[194926, 194926], "mapped", [32199]], [[194927, 194927], "mapped", [32258]], [[194928, 194928], "mapped", [32325]], [[194929, 194929], "mapped", [17204]], [[194930, 194930], "mapped", [156200]], [[194931, 194931], "mapped", [156231]], [[194932, 194932], "mapped", [17241]], [[194933, 194933], "mapped", [156377]], [[194934, 194934], "mapped", [32634]], [[194935, 194935], "mapped", [156478]], [[194936, 194936], "mapped", [32661]], [[194937, 194937], "mapped", [32762]], [[194938, 194938], "mapped", [32773]], [[194939, 194939], "mapped", [156890]], [[194940, 194940], "mapped", [156963]], [[194941, 194941], "mapped", [32864]], [[194942, 194942], "mapped", [157096]], [[194943, 194943], "mapped", [32880]], [[194944, 194944], "mapped", [144223]], [[194945, 194945], "mapped", [17365]], [[194946, 194946], "mapped", [32946]], [[194947, 194947], "mapped", [33027]], [[194948, 194948], "mapped", [17419]], [[194949, 194949], "mapped", [33086]], [[194950, 194950], "mapped", [23221]], [[194951, 194951], "mapped", [157607]], [[194952, 194952], "mapped", [157621]], [[194953, 194953], "mapped", [144275]], [[194954, 194954], "mapped", [144284]], [[194955, 194955], "mapped", [33281]], [[194956, 194956], "mapped", [33284]], [[194957, 194957], "mapped", [36766]], [[194958, 194958], "mapped", [17515]], [[194959, 194959], "mapped", [33425]], [[194960, 194960], "mapped", [33419]], [[194961, 194961], "mapped", [33437]], [[194962, 194962], "mapped", [21171]], [[194963, 194963], "mapped", [33457]], [[194964, 194964], "mapped", [33459]], [[194965, 194965], "mapped", [33469]], [[194966, 194966], "mapped", [33510]], [[194967, 194967], "mapped", [158524]], [[194968, 194968], "mapped", [33509]], [[194969, 194969], "mapped", [33565]], [[194970, 194970], "mapped", [33635]], [[194971, 194971], "mapped", [33709]], [[194972, 194972], "mapped", [33571]], [[194973, 194973], "mapped", [33725]], [[194974, 194974], "mapped", [33767]], [[194975, 194975], "mapped", [33879]], [[194976, 194976], "mapped", [33619]], [[194977, 194977], "mapped", [33738]], [[194978, 194978], "mapped", [33740]], [[194979, 194979], "mapped", [33756]], [[194980, 194980], "mapped", [158774]], [[194981, 194981], "mapped", [159083]], [[194982, 194982], "mapped", [158933]], [[194983, 194983], "mapped", [17707]], [[194984, 194984], "mapped", [34033]], [[194985, 194985], "mapped", [34035]], [[194986, 194986], "mapped", [34070]], [[194987, 194987], "mapped", [160714]], [[194988, 194988], "mapped", [34148]], [[194989, 194989], "mapped", [159532]], [[194990, 194990], "mapped", [17757]], [[194991, 194991], "mapped", [17761]], [[194992, 194992], "mapped", [159665]], [[194993, 194993], "mapped", [159954]], [[194994, 194994], "mapped", [17771]], [[194995, 194995], "mapped", [34384]], [[194996, 194996], "mapped", [34396]], [[194997, 194997], "mapped", [34407]], [[194998, 194998], "mapped", [34409]], [[194999, 194999], "mapped", [34473]], [[195e3, 195e3], "mapped", [34440]], [[195001, 195001], "mapped", [34574]], [[195002, 195002], "mapped", [34530]], [[195003, 195003], "mapped", [34681]], [[195004, 195004], "mapped", [34600]], [[195005, 195005], "mapped", [34667]], [[195006, 195006], "mapped", [34694]], [[195007, 195007], "disallowed"], [[195008, 195008], "mapped", [34785]], [[195009, 195009], "mapped", [34817]], [[195010, 195010], "mapped", [17913]], [[195011, 195011], "mapped", [34912]], [[195012, 195012], "mapped", [34915]], [[195013, 195013], "mapped", [161383]], [[195014, 195014], "mapped", [35031]], [[195015, 195015], "mapped", [35038]], [[195016, 195016], "mapped", [17973]], [[195017, 195017], "mapped", [35066]], [[195018, 195018], "mapped", [13499]], [[195019, 195019], "mapped", [161966]], [[195020, 195020], "mapped", [162150]], [[195021, 195021], "mapped", [18110]], [[195022, 195022], "mapped", [18119]], [[195023, 195023], "mapped", [35488]], [[195024, 195024], "mapped", [35565]], [[195025, 195025], "mapped", [35722]], [[195026, 195026], "mapped", [35925]], [[195027, 195027], "mapped", [162984]], [[195028, 195028], "mapped", [36011]], [[195029, 195029], "mapped", [36033]], [[195030, 195030], "mapped", [36123]], [[195031, 195031], "mapped", [36215]], [[195032, 195032], "mapped", [163631]], [[195033, 195033], "mapped", [133124]], [[195034, 195034], "mapped", [36299]], [[195035, 195035], "mapped", [36284]], [[195036, 195036], "mapped", [36336]], [[195037, 195037], "mapped", [133342]], [[195038, 195038], "mapped", [36564]], [[195039, 195039], "mapped", [36664]], [[195040, 195040], "mapped", [165330]], [[195041, 195041], "mapped", [165357]], [[195042, 195042], "mapped", [37012]], [[195043, 195043], "mapped", [37105]], [[195044, 195044], "mapped", [37137]], [[195045, 195045], "mapped", [165678]], [[195046, 195046], "mapped", [37147]], [[195047, 195047], "mapped", [37432]], [[195048, 195048], "mapped", [37591]], [[195049, 195049], "mapped", [37592]], [[195050, 195050], "mapped", [37500]], [[195051, 195051], "mapped", [37881]], [[195052, 195052], "mapped", [37909]], [[195053, 195053], "mapped", [166906]], [[195054, 195054], "mapped", [38283]], [[195055, 195055], "mapped", [18837]], [[195056, 195056], "mapped", [38327]], [[195057, 195057], "mapped", [167287]], [[195058, 195058], "mapped", [18918]], [[195059, 195059], "mapped", [38595]], [[195060, 195060], "mapped", [23986]], [[195061, 195061], "mapped", [38691]], [[195062, 195062], "mapped", [168261]], [[195063, 195063], "mapped", [168474]], [[195064, 195064], "mapped", [19054]], [[195065, 195065], "mapped", [19062]], [[195066, 195066], "mapped", [38880]], [[195067, 195067], "mapped", [168970]], [[195068, 195068], "mapped", [19122]], [[195069, 195069], "mapped", [169110]], [[195070, 195071], "mapped", [38923]], [[195072, 195072], "mapped", [38953]], [[195073, 195073], "mapped", [169398]], [[195074, 195074], "mapped", [39138]], [[195075, 195075], "mapped", [19251]], [[195076, 195076], "mapped", [39209]], [[195077, 195077], "mapped", [39335]], [[195078, 195078], "mapped", [39362]], [[195079, 195079], "mapped", [39422]], [[195080, 195080], "mapped", [19406]], [[195081, 195081], "mapped", [170800]], [[195082, 195082], "mapped", [39698]], [[195083, 195083], "mapped", [4e4]], [[195084, 195084], "mapped", [40189]], [[195085, 195085], "mapped", [19662]], [[195086, 195086], "mapped", [19693]], [[195087, 195087], "mapped", [40295]], [[195088, 195088], "mapped", [172238]], [[195089, 195089], "mapped", [19704]], [[195090, 195090], "mapped", [172293]], [[195091, 195091], "mapped", [172558]], [[195092, 195092], "mapped", [172689]], [[195093, 195093], "mapped", [40635]], [[195094, 195094], "mapped", [19798]], [[195095, 195095], "mapped", [40697]], [[195096, 195096], "mapped", [40702]], [[195097, 195097], "mapped", [40709]], [[195098, 195098], "mapped", [40719]], [[195099, 195099], "mapped", [40726]], [[195100, 195100], "mapped", [40763]], [[195101, 195101], "mapped", [173568]], [[195102, 196605], "disallowed"], [[196606, 196607], "disallowed"], [[196608, 262141], "disallowed"], [[262142, 262143], "disallowed"], [[262144, 327677], "disallowed"], [[327678, 327679], "disallowed"], [[327680, 393213], "disallowed"], [[393214, 393215], "disallowed"], [[393216, 458749], "disallowed"], [[458750, 458751], "disallowed"], [[458752, 524285], "disallowed"], [[524286, 524287], "disallowed"], [[524288, 589821], "disallowed"], [[589822, 589823], "disallowed"], [[589824, 655357], "disallowed"], [[655358, 655359], "disallowed"], [[655360, 720893], "disallowed"], [[720894, 720895], "disallowed"], [[720896, 786429], "disallowed"], [[786430, 786431], "disallowed"], [[786432, 851965], "disallowed"], [[851966, 851967], "disallowed"], [[851968, 917501], "disallowed"], [[917502, 917503], "disallowed"], [[917504, 917504], "disallowed"], [[917505, 917505], "disallowed"], [[917506, 917535], "disallowed"], [[917536, 917631], "disallowed"], [[917632, 917759], "disallowed"], [[917760, 917999], "ignored"], [[918e3, 983037], "disallowed"], [[983038, 983039], "disallowed"], [[983040, 1048573], "disallowed"], [[1048574, 1048575], "disallowed"], [[1048576, 1114109], "disallowed"], [[1114110, 1114111], "disallowed"]];
+  }
+});
+
+// ../../../node_modules/tr46/index.js
+var require_tr46 = __commonJS({
+  "../../../node_modules/tr46/index.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var mappingTable = require_mappingTable();
+    var PROCESSING_OPTIONS = {
+      TRANSITIONAL: 0,
+      NONTRANSITIONAL: 1
+    };
+    function normalize(str) {
+      return str.split("\0").map(function(s) {
+        return s.normalize("NFC");
+      }).join("\0");
+    }
+    function findStatus(val2) {
+      var start = 0;
+      var end = mappingTable.length - 1;
+      while (start <= end) {
+        var mid = Math.floor((start + end) / 2);
+        var target = mappingTable[mid];
+        if (target[0][0] <= val2 && target[0][1] >= val2) {
+          return target;
+        } else if (target[0][0] > val2) {
+          end = mid - 1;
+        } else {
+          start = mid + 1;
+        }
+      }
+      return null;
+    }
+    var regexAstralSymbols = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
+    function countSymbols(string) {
+      return string.replace(regexAstralSymbols, "_").length;
+    }
+    function mapChars(domain_name, useSTD3, processing_option) {
+      var hasError = false;
+      var processed = "";
+      var len = countSymbols(domain_name);
+      for (var i = 0; i < len; ++i) {
+        var codePoint = domain_name.codePointAt(i);
+        var status = findStatus(codePoint);
+        switch (status[1]) {
+          case "disallowed":
+            hasError = true;
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "ignored":
+            break;
+          case "mapped":
+            processed += String.fromCodePoint.apply(String, status[2]);
+            break;
+          case "deviation":
+            if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            } else {
+              processed += String.fromCodePoint(codePoint);
+            }
+            break;
+          case "valid":
+            processed += String.fromCodePoint(codePoint);
+            break;
+          case "disallowed_STD3_mapped":
+            if (useSTD3) {
+              hasError = true;
+              processed += String.fromCodePoint(codePoint);
+            } else {
+              processed += String.fromCodePoint.apply(String, status[2]);
+            }
+            break;
+          case "disallowed_STD3_valid":
+            if (useSTD3) {
+              hasError = true;
+            }
+            processed += String.fromCodePoint(codePoint);
+            break;
+        }
+      }
+      return {
+        string: processed,
+        error: hasError
+      };
+    }
+    var combiningMarksRegex = /[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/;
+    function validateLabel(label, processing_option) {
+      if (label.substr(0, 4) === "xn--") {
+        label = punycode.toUnicode(label);
+        processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL;
+      }
+      var error = false;
+      if (normalize(label) !== label || label[3] === "-" && label[4] === "-" || label[0] === "-" || label[label.length - 1] === "-" || label.indexOf(".") !== -1 || label.search(combiningMarksRegex) === 0) {
+        error = true;
+      }
+      var len = countSymbols(label);
+      for (var i = 0; i < len; ++i) {
+        var status = findStatus(label.codePointAt(i));
+        if (processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== "valid" || processing === PROCESSING_OPTIONS.NONTRANSITIONAL && status[1] !== "valid" && status[1] !== "deviation") {
+          error = true;
+          break;
+        }
+      }
+      return {
+        label,
+        error
+      };
+    }
+    function processing(domain_name, useSTD3, processing_option) {
+      var result = mapChars(domain_name, useSTD3, processing_option);
+      result.string = normalize(result.string);
+      var labels = result.string.split(".");
+      for (var i = 0; i < labels.length; ++i) {
+        try {
+          var validation = validateLabel(labels[i]);
+          labels[i] = validation.label;
+          result.error = result.error || validation.error;
+        } catch (e) {
+          result.error = true;
+        }
+      }
+      return {
+        string: labels.join("."),
+        error: result.error
+      };
+    }
+    module2.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) {
+      var result = processing(domain_name, useSTD3, processing_option);
+      var labels = result.string.split(".");
+      labels = labels.map(function(l) {
+        try {
+          return punycode.toASCII(l);
+        } catch (e) {
+          result.error = true;
+          return l;
+        }
+      });
+      if (verifyDnsLength) {
+        var total = labels.slice(0, labels.length - 1).join(".").length;
+        if (total.length > 253 || total.length === 0) {
+          result.error = true;
+        }
+        for (var i = 0; i < labels.length; ++i) {
+          if (labels.length > 63 || labels.length === 0) {
+            result.error = true;
+            break;
+          }
+        }
+      }
+      if (result.error) return null;
+      return labels.join(".");
+    };
+    module2.exports.toUnicode = function(domain_name, useSTD3) {
+      var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL);
+      return {
+        domain: result.string,
+        error: result.error
+      };
+    };
+    module2.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS;
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/url-state-machine.js
+var require_url_state_machine = __commonJS({
+  "../../../node_modules/whatwg-url/lib/url-state-machine.js"(exports2, module2) {
+    "use strict";
+    var punycode = require("punycode");
+    var tr46 = require_tr46();
+    var specialSchemes = {
+      ftp: 21,
+      file: null,
+      gopher: 70,
+      http: 80,
+      https: 443,
+      ws: 80,
+      wss: 443
+    };
+    var failure = /* @__PURE__ */ Symbol("failure");
+    function countSymbols(str) {
+      return punycode.ucs2.decode(str).length;
+    }
+    function at(input, idx) {
+      const c = input[idx];
+      return isNaN(c) ? void 0 : String.fromCodePoint(c);
+    }
+    function isASCIIDigit(c) {
+      return c >= 48 && c <= 57;
+    }
+    function isASCIIAlpha(c) {
+      return c >= 65 && c <= 90 || c >= 97 && c <= 122;
+    }
+    function isASCIIAlphanumeric(c) {
+      return isASCIIAlpha(c) || isASCIIDigit(c);
+    }
+    function isASCIIHex(c) {
+      return isASCIIDigit(c) || c >= 65 && c <= 70 || c >= 97 && c <= 102;
+    }
+    function isSingleDot(buffer) {
+      return buffer === "." || buffer.toLowerCase() === "%2e";
+    }
+    function isDoubleDot(buffer) {
+      buffer = buffer.toLowerCase();
+      return buffer === ".." || buffer === "%2e." || buffer === ".%2e" || buffer === "%2e%2e";
+    }
+    function isWindowsDriveLetterCodePoints(cp1, cp2) {
+      return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124);
+    }
+    function isWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === ":" || string[1] === "|");
+    }
+    function isNormalizedWindowsDriveLetterString(string) {
+      return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === ":";
+    }
+    function containsForbiddenHostCodePoint(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function containsForbiddenHostCodePointExcludingPercent(string) {
+      return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/) !== -1;
+    }
+    function isSpecialScheme(scheme) {
+      return specialSchemes[scheme] !== void 0;
+    }
+    function isSpecial(url2) {
+      return isSpecialScheme(url2.scheme);
+    }
+    function defaultPort(scheme) {
+      return specialSchemes[scheme];
+    }
+    function percentEncode(c) {
+      let hex2 = c.toString(16).toUpperCase();
+      if (hex2.length === 1) {
+        hex2 = "0" + hex2;
+      }
+      return "%" + hex2;
+    }
+    function utf8PercentEncode(c) {
+      const buf = new Buffer(c);
+      let str = "";
+      for (let i = 0; i < buf.length; ++i) {
+        str += percentEncode(buf[i]);
+      }
+      return str;
+    }
+    function utf8PercentDecode(str) {
+      const input = new Buffer(str);
+      const output = [];
+      for (let i = 0; i < input.length; ++i) {
+        if (input[i] !== 37) {
+          output.push(input[i]);
+        } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) {
+          output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16));
+          i += 2;
+        } else {
+          output.push(input[i]);
+        }
+      }
+      return new Buffer(output).toString();
+    }
+    function isC0ControlPercentEncode(c) {
+      return c <= 31 || c > 126;
+    }
+    var extraPathPercentEncodeSet = /* @__PURE__ */ new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]);
+    function isPathPercentEncode(c) {
+      return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c);
+    }
+    var extraUserinfoPercentEncodeSet = /* @__PURE__ */ new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]);
+    function isUserinfoPercentEncode(c) {
+      return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c);
+    }
+    function percentEncodeChar(c, encodeSetPredicate) {
+      const cStr = String.fromCodePoint(c);
+      if (encodeSetPredicate(c)) {
+        return utf8PercentEncode(cStr);
+      }
+      return cStr;
+    }
+    function parseIPv4Number(input) {
+      let R = 10;
+      if (input.length >= 2 && input.charAt(0) === "0" && input.charAt(1).toLowerCase() === "x") {
+        input = input.substring(2);
+        R = 16;
+      } else if (input.length >= 2 && input.charAt(0) === "0") {
+        input = input.substring(1);
+        R = 8;
+      }
+      if (input === "") {
+        return 0;
+      }
+      const regex = R === 10 ? /[^0-9]/ : R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/;
+      if (regex.test(input)) {
+        return failure;
+      }
+      return parseInt(input, R);
+    }
+    function parseIPv4(input) {
+      const parts = input.split(".");
+      if (parts[parts.length - 1] === "") {
+        if (parts.length > 1) {
+          parts.pop();
+        }
+      }
+      if (parts.length > 4) {
+        return input;
+      }
+      const numbers = [];
+      for (const part of parts) {
+        if (part === "") {
+          return input;
+        }
+        const n = parseIPv4Number(part);
+        if (n === failure) {
+          return input;
+        }
+        numbers.push(n);
+      }
+      for (let i = 0; i < numbers.length - 1; ++i) {
+        if (numbers[i] > 255) {
+          return failure;
+        }
+      }
+      if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) {
+        return failure;
+      }
+      let ipv4 = numbers.pop();
+      let counter = 0;
+      for (const n of numbers) {
+        ipv4 += n * Math.pow(256, 3 - counter);
+        ++counter;
+      }
+      return ipv4;
+    }
+    function serializeIPv4(address) {
+      let output = "";
+      let n = address;
+      for (let i = 1; i <= 4; ++i) {
+        output = String(n % 256) + output;
+        if (i !== 4) {
+          output = "." + output;
+        }
+        n = Math.floor(n / 256);
+      }
+      return output;
+    }
+    function parseIPv6(input) {
+      const address = [0, 0, 0, 0, 0, 0, 0, 0];
+      let pieceIndex = 0;
+      let compress = null;
+      let pointer = 0;
+      input = punycode.ucs2.decode(input);
+      if (input[pointer] === 58) {
+        if (input[pointer + 1] !== 58) {
+          return failure;
+        }
+        pointer += 2;
+        ++pieceIndex;
+        compress = pieceIndex;
+      }
+      while (pointer < input.length) {
+        if (pieceIndex === 8) {
+          return failure;
+        }
+        if (input[pointer] === 58) {
+          if (compress !== null) {
+            return failure;
+          }
+          ++pointer;
+          ++pieceIndex;
+          compress = pieceIndex;
+          continue;
+        }
+        let value = 0;
+        let length = 0;
+        while (length < 4 && isASCIIHex(input[pointer])) {
+          value = value * 16 + parseInt(at(input, pointer), 16);
+          ++pointer;
+          ++length;
+        }
+        if (input[pointer] === 46) {
+          if (length === 0) {
+            return failure;
+          }
+          pointer -= length;
+          if (pieceIndex > 6) {
+            return failure;
+          }
+          let numbersSeen = 0;
+          while (input[pointer] !== void 0) {
+            let ipv4Piece = null;
+            if (numbersSeen > 0) {
+              if (input[pointer] === 46 && numbersSeen < 4) {
+                ++pointer;
+              } else {
+                return failure;
+              }
+            }
+            if (!isASCIIDigit(input[pointer])) {
+              return failure;
+            }
+            while (isASCIIDigit(input[pointer])) {
+              const number = parseInt(at(input, pointer));
+              if (ipv4Piece === null) {
+                ipv4Piece = number;
+              } else if (ipv4Piece === 0) {
+                return failure;
+              } else {
+                ipv4Piece = ipv4Piece * 10 + number;
+              }
+              if (ipv4Piece > 255) {
+                return failure;
+              }
+              ++pointer;
+            }
+            address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;
+            ++numbersSeen;
+            if (numbersSeen === 2 || numbersSeen === 4) {
+              ++pieceIndex;
+            }
+          }
+          if (numbersSeen !== 4) {
+            return failure;
+          }
+          break;
+        } else if (input[pointer] === 58) {
+          ++pointer;
+          if (input[pointer] === void 0) {
+            return failure;
+          }
+        } else if (input[pointer] !== void 0) {
+          return failure;
+        }
+        address[pieceIndex] = value;
+        ++pieceIndex;
+      }
+      if (compress !== null) {
+        let swaps = pieceIndex - compress;
+        pieceIndex = 7;
+        while (pieceIndex !== 0 && swaps > 0) {
+          const temp = address[compress + swaps - 1];
+          address[compress + swaps - 1] = address[pieceIndex];
+          address[pieceIndex] = temp;
+          --pieceIndex;
+          --swaps;
+        }
+      } else if (compress === null && pieceIndex !== 8) {
+        return failure;
+      }
+      return address;
+    }
+    function serializeIPv6(address) {
+      let output = "";
+      const seqResult = findLongestZeroSequence(address);
+      const compress = seqResult.idx;
+      let ignore0 = false;
+      for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) {
+        if (ignore0 && address[pieceIndex] === 0) {
+          continue;
+        } else if (ignore0) {
+          ignore0 = false;
+        }
+        if (compress === pieceIndex) {
+          const separator = pieceIndex === 0 ? "::" : ":";
+          output += separator;
+          ignore0 = true;
+          continue;
+        }
+        output += address[pieceIndex].toString(16);
+        if (pieceIndex !== 7) {
+          output += ":";
+        }
+      }
+      return output;
+    }
+    function parseHost(input, isSpecialArg) {
+      if (input[0] === "[") {
+        if (input[input.length - 1] !== "]") {
+          return failure;
+        }
+        return parseIPv6(input.substring(1, input.length - 1));
+      }
+      if (!isSpecialArg) {
+        return parseOpaqueHost(input);
+      }
+      const domain = utf8PercentDecode(input);
+      const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false);
+      if (asciiDomain === null) {
+        return failure;
+      }
+      if (containsForbiddenHostCodePoint(asciiDomain)) {
+        return failure;
+      }
+      const ipv4Host = parseIPv4(asciiDomain);
+      if (typeof ipv4Host === "number" || ipv4Host === failure) {
+        return ipv4Host;
+      }
+      return asciiDomain;
+    }
+    function parseOpaqueHost(input) {
+      if (containsForbiddenHostCodePointExcludingPercent(input)) {
+        return failure;
+      }
+      let output = "";
+      const decoded = punycode.ucs2.decode(input);
+      for (let i = 0; i < decoded.length; ++i) {
+        output += percentEncodeChar(decoded[i], isC0ControlPercentEncode);
+      }
+      return output;
+    }
+    function findLongestZeroSequence(arr) {
+      let maxIdx = null;
+      let maxLen = 1;
+      let currStart = null;
+      let currLen = 0;
+      for (let i = 0; i < arr.length; ++i) {
+        if (arr[i] !== 0) {
+          if (currLen > maxLen) {
+            maxIdx = currStart;
+            maxLen = currLen;
+          }
+          currStart = null;
+          currLen = 0;
+        } else {
+          if (currStart === null) {
+            currStart = i;
+          }
+          ++currLen;
+        }
+      }
+      if (currLen > maxLen) {
+        maxIdx = currStart;
+        maxLen = currLen;
+      }
+      return {
+        idx: maxIdx,
+        len: maxLen
+      };
+    }
+    function serializeHost(host) {
+      if (typeof host === "number") {
+        return serializeIPv4(host);
+      }
+      if (host instanceof Array) {
+        return "[" + serializeIPv6(host) + "]";
+      }
+      return host;
+    }
+    function trimControlChars(url2) {
+      return url2.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g, "");
+    }
+    function trimTabAndNewline(url2) {
+      return url2.replace(/\u0009|\u000A|\u000D/g, "");
+    }
+    function shortenPath(url2) {
+      const path23 = url2.path;
+      if (path23.length === 0) {
+        return;
+      }
+      if (url2.scheme === "file" && path23.length === 1 && isNormalizedWindowsDriveLetter(path23[0])) {
+        return;
+      }
+      path23.pop();
+    }
+    function includesCredentials(url2) {
+      return url2.username !== "" || url2.password !== "";
+    }
+    function cannotHaveAUsernamePasswordPort(url2) {
+      return url2.host === null || url2.host === "" || url2.cannotBeABaseURL || url2.scheme === "file";
+    }
+    function isNormalizedWindowsDriveLetter(string) {
+      return /^[A-Za-z]:$/.test(string);
+    }
+    function URLStateMachine(input, base, encodingOverride, url2, stateOverride) {
+      this.pointer = 0;
+      this.input = input;
+      this.base = base || null;
+      this.encodingOverride = encodingOverride || "utf-8";
+      this.stateOverride = stateOverride;
+      this.url = url2;
+      this.failure = false;
+      this.parseError = false;
+      if (!this.url) {
+        this.url = {
+          scheme: "",
+          username: "",
+          password: "",
+          host: null,
+          port: null,
+          path: [],
+          query: null,
+          fragment: null,
+          cannotBeABaseURL: false
+        };
+        const res2 = trimControlChars(this.input);
+        if (res2 !== this.input) {
+          this.parseError = true;
+        }
+        this.input = res2;
+      }
+      const res = trimTabAndNewline(this.input);
+      if (res !== this.input) {
+        this.parseError = true;
+      }
+      this.input = res;
+      this.state = stateOverride || "scheme start";
+      this.buffer = "";
+      this.atFlag = false;
+      this.arrFlag = false;
+      this.passwordTokenSeenFlag = false;
+      this.input = punycode.ucs2.decode(this.input);
+      for (; this.pointer <= this.input.length; ++this.pointer) {
+        const c = this.input[this.pointer];
+        const cStr = isNaN(c) ? void 0 : String.fromCodePoint(c);
+        const ret = this["parse " + this.state](c, cStr);
+        if (!ret) {
+          break;
+        } else if (ret === failure) {
+          this.failure = true;
+          break;
+        }
+      }
+    }
+    URLStateMachine.prototype["parse scheme start"] = function parseSchemeStart(c, cStr) {
+      if (isASCIIAlpha(c)) {
+        this.buffer += cStr.toLowerCase();
+        this.state = "scheme";
+      } else if (!this.stateOverride) {
+        this.state = "no scheme";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse scheme"] = function parseScheme(c, cStr) {
+      if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) {
+        this.buffer += cStr.toLowerCase();
+      } else if (c === 58) {
+        if (this.stateOverride) {
+          if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) {
+            return false;
+          }
+          if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === "file") {
+            return false;
+          }
+          if (this.url.scheme === "file" && (this.url.host === "" || this.url.host === null)) {
+            return false;
+          }
+        }
+        this.url.scheme = this.buffer;
+        this.buffer = "";
+        if (this.stateOverride) {
+          return false;
+        }
+        if (this.url.scheme === "file") {
+          if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) {
+            this.parseError = true;
+          }
+          this.state = "file";
+        } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) {
+          this.state = "special relative or authority";
+        } else if (isSpecial(this.url)) {
+          this.state = "special authority slashes";
+        } else if (this.input[this.pointer + 1] === 47) {
+          this.state = "path or authority";
+          ++this.pointer;
+        } else {
+          this.url.cannotBeABaseURL = true;
+          this.url.path.push("");
+          this.state = "cannot-be-a-base-URL path";
+        }
+      } else if (!this.stateOverride) {
+        this.buffer = "";
+        this.state = "no scheme";
+        this.pointer = -1;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse no scheme"] = function parseNoScheme(c) {
+      if (this.base === null || this.base.cannotBeABaseURL && c !== 35) {
+        return failure;
+      } else if (this.base.cannotBeABaseURL && c === 35) {
+        this.url.scheme = this.base.scheme;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.url.cannotBeABaseURL = true;
+        this.state = "fragment";
+      } else if (this.base.scheme === "file") {
+        this.state = "file";
+        --this.pointer;
+      } else {
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special relative or authority"] = function parseSpecialRelativeOrAuthority(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "relative";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path or authority"] = function parsePathOrAuthority(c) {
+      if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative"] = function parseRelative(c) {
+      this.url.scheme = this.base.scheme;
+      if (isNaN(c)) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+      } else if (c === 47) {
+        this.state = "relative slash";
+      } else if (c === 63) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice();
+        this.url.query = this.base.query;
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (isSpecial(this.url) && c === 92) {
+        this.parseError = true;
+        this.state = "relative slash";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.url.path = this.base.path.slice(0, this.base.path.length - 1);
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse relative slash"] = function parseRelativeSlash(c) {
+      if (isSpecial(this.url) && (c === 47 || c === 92)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "special authority ignore slashes";
+      } else if (c === 47) {
+        this.state = "authority";
+      } else {
+        this.url.username = this.base.username;
+        this.url.password = this.base.password;
+        this.url.host = this.base.host;
+        this.url.port = this.base.port;
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority slashes"] = function parseSpecialAuthoritySlashes(c) {
+      if (c === 47 && this.input[this.pointer + 1] === 47) {
+        this.state = "special authority ignore slashes";
+        ++this.pointer;
+      } else {
+        this.parseError = true;
+        this.state = "special authority ignore slashes";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse special authority ignore slashes"] = function parseSpecialAuthorityIgnoreSlashes(c) {
+      if (c !== 47 && c !== 92) {
+        this.state = "authority";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse authority"] = function parseAuthority(c, cStr) {
+      if (c === 64) {
+        this.parseError = true;
+        if (this.atFlag) {
+          this.buffer = "%40" + this.buffer;
+        }
+        this.atFlag = true;
+        const len = countSymbols(this.buffer);
+        for (let pointer = 0; pointer < len; ++pointer) {
+          const codePoint = this.buffer.codePointAt(pointer);
+          if (codePoint === 58 && !this.passwordTokenSeenFlag) {
+            this.passwordTokenSeenFlag = true;
+            continue;
+          }
+          const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode);
+          if (this.passwordTokenSeenFlag) {
+            this.url.password += encodedCodePoints;
+          } else {
+            this.url.username += encodedCodePoints;
+          }
+        }
+        this.buffer = "";
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        if (this.atFlag && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        this.pointer -= countSymbols(this.buffer) + 1;
+        this.buffer = "";
+        this.state = "host";
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse hostname"] = URLStateMachine.prototype["parse host"] = function parseHostName(c, cStr) {
+      if (this.stateOverride && this.url.scheme === "file") {
+        --this.pointer;
+        this.state = "file host";
+      } else if (c === 58 && !this.arrFlag) {
+        if (this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "port";
+        if (this.stateOverride === "hostname") {
+          return false;
+        }
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) {
+        --this.pointer;
+        if (isSpecial(this.url) && this.buffer === "") {
+          this.parseError = true;
+          return failure;
+        } else if (this.stateOverride && this.buffer === "" && (includesCredentials(this.url) || this.url.port !== null)) {
+          this.parseError = true;
+          return false;
+        }
+        const host = parseHost(this.buffer, isSpecial(this.url));
+        if (host === failure) {
+          return failure;
+        }
+        this.url.host = host;
+        this.buffer = "";
+        this.state = "path start";
+        if (this.stateOverride) {
+          return false;
+        }
+      } else {
+        if (c === 91) {
+          this.arrFlag = true;
+        } else if (c === 93) {
+          this.arrFlag = false;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse port"] = function parsePort(c, cStr) {
+      if (isASCIIDigit(c)) {
+        this.buffer += cStr;
+      } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92 || this.stateOverride) {
+        if (this.buffer !== "") {
+          const port = parseInt(this.buffer);
+          if (port > Math.pow(2, 16) - 1) {
+            this.parseError = true;
+            return failure;
+          }
+          this.url.port = port === defaultPort(this.url.scheme) ? null : port;
+          this.buffer = "";
+        }
+        if (this.stateOverride) {
+          return false;
+        }
+        this.state = "path start";
+        --this.pointer;
+      } else {
+        this.parseError = true;
+        return failure;
+      }
+      return true;
+    };
+    var fileOtherwiseCodePoints = /* @__PURE__ */ new Set([47, 92, 63, 35]);
+    URLStateMachine.prototype["parse file"] = function parseFile(c) {
+      this.url.scheme = "file";
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file slash";
+      } else if (this.base !== null && this.base.scheme === "file") {
+        if (isNaN(c)) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+        } else if (c === 63) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = "";
+          this.state = "query";
+        } else if (c === 35) {
+          this.url.host = this.base.host;
+          this.url.path = this.base.path.slice();
+          this.url.query = this.base.query;
+          this.url.fragment = "";
+          this.state = "fragment";
+        } else {
+          if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points
+          !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) || this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points
+          !fileOtherwiseCodePoints.has(this.input[this.pointer + 2])) {
+            this.url.host = this.base.host;
+            this.url.path = this.base.path.slice();
+            shortenPath(this.url);
+          } else {
+            this.parseError = true;
+          }
+          this.state = "path";
+          --this.pointer;
+        }
+      } else {
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file slash"] = function parseFileSlash(c) {
+      if (c === 47 || c === 92) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "file host";
+      } else {
+        if (this.base !== null && this.base.scheme === "file") {
+          if (isNormalizedWindowsDriveLetterString(this.base.path[0])) {
+            this.url.path.push(this.base.path[0]);
+          } else {
+            this.url.host = this.base.host;
+          }
+        }
+        this.state = "path";
+        --this.pointer;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse file host"] = function parseFileHost(c, cStr) {
+      if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) {
+        --this.pointer;
+        if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) {
+          this.parseError = true;
+          this.state = "path";
+        } else if (this.buffer === "") {
+          this.url.host = "";
+          if (this.stateOverride) {
+            return false;
+          }
+          this.state = "path start";
+        } else {
+          let host = parseHost(this.buffer, isSpecial(this.url));
+          if (host === failure) {
+            return failure;
+          }
+          if (host === "localhost") {
+            host = "";
+          }
+          this.url.host = host;
+          if (this.stateOverride) {
+            return false;
+          }
+          this.buffer = "";
+          this.state = "path start";
+        }
+      } else {
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path start"] = function parsePathStart(c) {
+      if (isSpecial(this.url)) {
+        if (c === 92) {
+          this.parseError = true;
+        }
+        this.state = "path";
+        if (c !== 47 && c !== 92) {
+          --this.pointer;
+        }
+      } else if (!this.stateOverride && c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (!this.stateOverride && c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else if (c !== void 0) {
+        this.state = "path";
+        if (c !== 47) {
+          --this.pointer;
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse path"] = function parsePath(c) {
+      if (isNaN(c) || c === 47 || isSpecial(this.url) && c === 92 || !this.stateOverride && (c === 63 || c === 35)) {
+        if (isSpecial(this.url) && c === 92) {
+          this.parseError = true;
+        }
+        if (isDoubleDot(this.buffer)) {
+          shortenPath(this.url);
+          if (c !== 47 && !(isSpecial(this.url) && c === 92)) {
+            this.url.path.push("");
+          }
+        } else if (isSingleDot(this.buffer) && c !== 47 && !(isSpecial(this.url) && c === 92)) {
+          this.url.path.push("");
+        } else if (!isSingleDot(this.buffer)) {
+          if (this.url.scheme === "file" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) {
+            if (this.url.host !== "" && this.url.host !== null) {
+              this.parseError = true;
+              this.url.host = "";
+            }
+            this.buffer = this.buffer[0] + ":";
+          }
+          this.url.path.push(this.buffer);
+        }
+        this.buffer = "";
+        if (this.url.scheme === "file" && (c === void 0 || c === 63 || c === 35)) {
+          while (this.url.path.length > 1 && this.url.path[0] === "") {
+            this.parseError = true;
+            this.url.path.shift();
+          }
+        }
+        if (c === 63) {
+          this.url.query = "";
+          this.state = "query";
+        }
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += percentEncodeChar(c, isPathPercentEncode);
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse cannot-be-a-base-URL path"] = function parseCannotBeABaseURLPath(c) {
+      if (c === 63) {
+        this.url.query = "";
+        this.state = "query";
+      } else if (c === 35) {
+        this.url.fragment = "";
+        this.state = "fragment";
+      } else {
+        if (!isNaN(c) && c !== 37) {
+          this.parseError = true;
+        }
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        if (!isNaN(c)) {
+          this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode);
+        }
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse query"] = function parseQuery(c, cStr) {
+      if (isNaN(c) || !this.stateOverride && c === 35) {
+        if (!isSpecial(this.url) || this.url.scheme === "ws" || this.url.scheme === "wss") {
+          this.encodingOverride = "utf-8";
+        }
+        const buffer = new Buffer(this.buffer);
+        for (let i = 0; i < buffer.length; ++i) {
+          if (buffer[i] < 33 || buffer[i] > 126 || buffer[i] === 34 || buffer[i] === 35 || buffer[i] === 60 || buffer[i] === 62) {
+            this.url.query += percentEncode(buffer[i]);
+          } else {
+            this.url.query += String.fromCodePoint(buffer[i]);
+          }
+        }
+        this.buffer = "";
+        if (c === 35) {
+          this.url.fragment = "";
+          this.state = "fragment";
+        }
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.buffer += cStr;
+      }
+      return true;
+    };
+    URLStateMachine.prototype["parse fragment"] = function parseFragment(c) {
+      if (isNaN(c)) {
+      } else if (c === 0) {
+        this.parseError = true;
+      } else {
+        if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) {
+          this.parseError = true;
+        }
+        this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode);
+      }
+      return true;
+    };
+    function serializeURL(url2, excludeFragment) {
+      let output = url2.scheme + ":";
+      if (url2.host !== null) {
+        output += "//";
+        if (url2.username !== "" || url2.password !== "") {
+          output += url2.username;
+          if (url2.password !== "") {
+            output += ":" + url2.password;
+          }
+          output += "@";
+        }
+        output += serializeHost(url2.host);
+        if (url2.port !== null) {
+          output += ":" + url2.port;
+        }
+      } else if (url2.host === null && url2.scheme === "file") {
+        output += "//";
+      }
+      if (url2.cannotBeABaseURL) {
+        output += url2.path[0];
+      } else {
+        for (const string of url2.path) {
+          output += "/" + string;
+        }
+      }
+      if (url2.query !== null) {
+        output += "?" + url2.query;
+      }
+      if (!excludeFragment && url2.fragment !== null) {
+        output += "#" + url2.fragment;
+      }
+      return output;
+    }
+    function serializeOrigin(tuple) {
+      let result = tuple.scheme + "://";
+      result += serializeHost(tuple.host);
+      if (tuple.port !== null) {
+        result += ":" + tuple.port;
+      }
+      return result;
+    }
+    module2.exports.serializeURL = serializeURL;
+    module2.exports.serializeURLOrigin = function(url2) {
+      switch (url2.scheme) {
+        case "blob":
+          try {
+            return module2.exports.serializeURLOrigin(module2.exports.parseURL(url2.path[0]));
+          } catch (e) {
+            return "null";
+          }
+        case "ftp":
+        case "gopher":
+        case "http":
+        case "https":
+        case "ws":
+        case "wss":
+          return serializeOrigin({
+            scheme: url2.scheme,
+            host: url2.host,
+            port: url2.port
+          });
+        case "file":
+          return "file://";
+        default:
+          return "null";
+      }
+    };
+    module2.exports.basicURLParse = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride);
+      if (usm.failure) {
+        return "failure";
+      }
+      return usm.url;
+    };
+    module2.exports.setTheUsername = function(url2, username) {
+      url2.username = "";
+      const decoded = punycode.ucs2.decode(username);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.setThePassword = function(url2, password) {
+      url2.password = "";
+      const decoded = punycode.ucs2.decode(password);
+      for (let i = 0; i < decoded.length; ++i) {
+        url2.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
+      }
+    };
+    module2.exports.serializeHost = serializeHost;
+    module2.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort;
+    module2.exports.serializeInteger = function(integer) {
+      return String(integer);
+    };
+    module2.exports.parseURL = function(input, options) {
+      if (options === void 0) {
+        options = {};
+      }
+      return module2.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride });
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL-impl.js
+var require_URL_impl = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL-impl.js"(exports2) {
+    "use strict";
+    var usm = require_url_state_machine();
+    exports2.implementation = class URLImpl {
+      constructor(constructorArgs) {
+        const url2 = constructorArgs[0];
+        const base = constructorArgs[1];
+        let parsedBase = null;
+        if (base !== void 0) {
+          parsedBase = usm.basicURLParse(base);
+          if (parsedBase === "failure") {
+            throw new TypeError("Invalid base URL");
+          }
+        }
+        const parsedURL = usm.basicURLParse(url2, { baseURL: parsedBase });
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get href() {
+        return usm.serializeURL(this._url);
+      }
+      set href(v) {
+        const parsedURL = usm.basicURLParse(v);
+        if (parsedURL === "failure") {
+          throw new TypeError("Invalid URL");
+        }
+        this._url = parsedURL;
+      }
+      get origin() {
+        return usm.serializeURLOrigin(this._url);
+      }
+      get protocol() {
+        return this._url.scheme + ":";
+      }
+      set protocol(v) {
+        usm.basicURLParse(v + ":", { url: this._url, stateOverride: "scheme start" });
+      }
+      get username() {
+        return this._url.username;
+      }
+      set username(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setTheUsername(this._url, v);
+      }
+      get password() {
+        return this._url.password;
+      }
+      set password(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        usm.setThePassword(this._url, v);
+      }
+      get host() {
+        const url2 = this._url;
+        if (url2.host === null) {
+          return "";
+        }
+        if (url2.port === null) {
+          return usm.serializeHost(url2.host);
+        }
+        return usm.serializeHost(url2.host) + ":" + usm.serializeInteger(url2.port);
+      }
+      set host(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "host" });
+      }
+      get hostname() {
+        if (this._url.host === null) {
+          return "";
+        }
+        return usm.serializeHost(this._url.host);
+      }
+      set hostname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        usm.basicURLParse(v, { url: this._url, stateOverride: "hostname" });
+      }
+      get port() {
+        if (this._url.port === null) {
+          return "";
+        }
+        return usm.serializeInteger(this._url.port);
+      }
+      set port(v) {
+        if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
+          return;
+        }
+        if (v === "") {
+          this._url.port = null;
+        } else {
+          usm.basicURLParse(v, { url: this._url, stateOverride: "port" });
+        }
+      }
+      get pathname() {
+        if (this._url.cannotBeABaseURL) {
+          return this._url.path[0];
+        }
+        if (this._url.path.length === 0) {
+          return "";
+        }
+        return "/" + this._url.path.join("/");
+      }
+      set pathname(v) {
+        if (this._url.cannotBeABaseURL) {
+          return;
+        }
+        this._url.path = [];
+        usm.basicURLParse(v, { url: this._url, stateOverride: "path start" });
+      }
+      get search() {
+        if (this._url.query === null || this._url.query === "") {
+          return "";
+        }
+        return "?" + this._url.query;
+      }
+      set search(v) {
+        const url2 = this._url;
+        if (v === "") {
+          url2.query = null;
+          return;
+        }
+        const input = v[0] === "?" ? v.substring(1) : v;
+        url2.query = "";
+        usm.basicURLParse(input, { url: url2, stateOverride: "query" });
+      }
+      get hash() {
+        if (this._url.fragment === null || this._url.fragment === "") {
+          return "";
+        }
+        return "#" + this._url.fragment;
+      }
+      set hash(v) {
+        if (v === "") {
+          this._url.fragment = null;
+          return;
+        }
+        const input = v[0] === "#" ? v.substring(1) : v;
+        this._url.fragment = "";
+        usm.basicURLParse(input, { url: this._url, stateOverride: "fragment" });
+      }
+      toJSON() {
+        return this.href;
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/URL.js
+var require_URL = __commonJS({
+  "../../../node_modules/whatwg-url/lib/URL.js"(exports2, module2) {
+    "use strict";
+    var conversions = require_lib7();
+    var utils = require_utils3();
+    var Impl = require_URL_impl();
+    var impl = utils.implSymbol;
+    function URL3(url2) {
+      if (!this || this[impl] || !(this instanceof URL3)) {
+        throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");
+      }
+      if (arguments.length < 1) {
+        throw new TypeError("Failed to construct 'URL': 1 argument required, but only " + arguments.length + " present.");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 2; ++i) {
+        args[i] = arguments[i];
+      }
+      args[0] = conversions["USVString"](args[0]);
+      if (args[1] !== void 0) {
+        args[1] = conversions["USVString"](args[1]);
+      }
+      module2.exports.setup(this, args);
+    }
+    URL3.prototype.toJSON = function toJSON() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      const args = [];
+      for (let i = 0; i < arguments.length && i < 0; ++i) {
+        args[i] = arguments[i];
+      }
+      return this[impl].toJSON.apply(this[impl], args);
+    };
+    Object.defineProperty(URL3.prototype, "href", {
+      get() {
+        return this[impl].href;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].href = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    URL3.prototype.toString = function() {
+      if (!this || !module2.exports.is(this)) {
+        throw new TypeError("Illegal invocation");
+      }
+      return this.href;
+    };
+    Object.defineProperty(URL3.prototype, "origin", {
+      get() {
+        return this[impl].origin;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "protocol", {
+      get() {
+        return this[impl].protocol;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].protocol = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "username", {
+      get() {
+        return this[impl].username;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].username = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "password", {
+      get() {
+        return this[impl].password;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].password = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "host", {
+      get() {
+        return this[impl].host;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].host = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hostname", {
+      get() {
+        return this[impl].hostname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hostname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "port", {
+      get() {
+        return this[impl].port;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].port = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "pathname", {
+      get() {
+        return this[impl].pathname;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].pathname = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "search", {
+      get() {
+        return this[impl].search;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].search = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    Object.defineProperty(URL3.prototype, "hash", {
+      get() {
+        return this[impl].hash;
+      },
+      set(V) {
+        V = conversions["USVString"](V);
+        this[impl].hash = V;
+      },
+      enumerable: true,
+      configurable: true
+    });
+    module2.exports = {
+      is(obj) {
+        return !!obj && obj[impl] instanceof Impl.implementation;
+      },
+      create(constructorArgs, privateData) {
+        let obj = Object.create(URL3.prototype);
+        this.setup(obj, constructorArgs, privateData);
+        return obj;
+      },
+      setup(obj, constructorArgs, privateData) {
+        if (!privateData) privateData = {};
+        privateData.wrapper = obj;
+        obj[impl] = new Impl.implementation(constructorArgs, privateData);
+        obj[impl][utils.wrapperSymbol] = obj;
+      },
+      interface: URL3,
+      expose: {
+        Window: { URL: URL3 },
+        Worker: { URL: URL3 }
+      }
+    };
+  }
+});
+
+// ../../../node_modules/whatwg-url/lib/public-api.js
+var require_public_api = __commonJS({
+  "../../../node_modules/whatwg-url/lib/public-api.js"(exports2) {
+    "use strict";
+    exports2.URL = require_URL().interface;
+    exports2.serializeURL = require_url_state_machine().serializeURL;
+    exports2.serializeURLOrigin = require_url_state_machine().serializeURLOrigin;
+    exports2.basicURLParse = require_url_state_machine().basicURLParse;
+    exports2.setTheUsername = require_url_state_machine().setTheUsername;
+    exports2.setThePassword = require_url_state_machine().setThePassword;
+    exports2.serializeHost = require_url_state_machine().serializeHost;
+    exports2.serializeInteger = require_url_state_machine().serializeInteger;
+    exports2.parseURL = require_url_state_machine().parseURL;
+  }
+});
+
+// ../../../node_modules/safer-buffer/safer.js
+var require_safer = __commonJS({
+  "../../../node_modules/safer-buffer/safer.js"(exports2, module2) {
+    "use strict";
+    var buffer = require("buffer");
+    var Buffer2 = buffer.Buffer;
+    var safer = {};
+    var key;
+    for (key in buffer) {
+      if (!buffer.hasOwnProperty(key)) continue;
+      if (key === "SlowBuffer" || key === "Buffer") continue;
+      safer[key] = buffer[key];
+    }
+    var Safer = safer.Buffer = {};
+    for (key in Buffer2) {
+      if (!Buffer2.hasOwnProperty(key)) continue;
+      if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue;
+      Safer[key] = Buffer2[key];
+    }
+    safer.Buffer.prototype = Buffer2.prototype;
+    if (!Safer.from || Safer.from === Uint8Array.from) {
+      Safer.from = function(value, encodingOrOffset, length) {
+        if (typeof value === "number") {
+          throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value);
+        }
+        if (value && typeof value.length === "undefined") {
+          throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value);
+        }
+        return Buffer2(value, encodingOrOffset, length);
+      };
+    }
+    if (!Safer.alloc) {
+      Safer.alloc = function(size, fill, encoding) {
+        if (typeof size !== "number") {
+          throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size);
+        }
+        if (size < 0 || size >= 2 * (1 << 30)) {
+          throw new RangeError('The value "' + size + '" is invalid for option "size"');
+        }
+        var buf = Buffer2(size);
+        if (!fill || fill.length === 0) {
+          buf.fill(0);
+        } else if (typeof encoding === "string") {
+          buf.fill(fill, encoding);
+        } else {
+          buf.fill(fill);
+        }
+        return buf;
+      };
+    }
+    if (!safer.kStringMaxLength) {
+      try {
+        safer.kStringMaxLength = process.binding("buffer").kStringMaxLength;
+      } catch (e) {
+      }
+    }
+    if (!safer.constants) {
+      safer.constants = {
+        MAX_LENGTH: safer.kMaxLength
+      };
+      if (safer.kStringMaxLength) {
+        safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength;
+      }
+    }
+    module2.exports = safer;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js
+var require_bom_handling = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/bom-handling.js"(exports2) {
+    "use strict";
+    var BOMChar = "\uFEFF";
+    exports2.PrependBOM = PrependBOMWrapper;
+    function PrependBOMWrapper(encoder, options) {
+      this.encoder = encoder;
+      this.addBOM = true;
+    }
+    PrependBOMWrapper.prototype.write = function(str) {
+      if (this.addBOM) {
+        str = BOMChar + str;
+        this.addBOM = false;
+      }
+      return this.encoder.write(str);
+    };
+    PrependBOMWrapper.prototype.end = function() {
+      return this.encoder.end();
+    };
+    exports2.StripBOM = StripBOMWrapper;
+    function StripBOMWrapper(decoder2, options) {
+      this.decoder = decoder2;
+      this.pass = false;
+      this.options = options || {};
+    }
+    StripBOMWrapper.prototype.write = function(buf) {
+      var res = this.decoder.write(buf);
+      if (this.pass || !res)
+        return res;
+      if (res[0] === BOMChar) {
+        res = res.slice(1);
+        if (typeof this.options.stripBOM === "function")
+          this.options.stripBOM();
+      }
+      this.pass = true;
+      return res;
+    };
+    StripBOMWrapper.prototype.end = function() {
+      return this.decoder.end();
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js
+var require_internal = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = {
+      // Encodings
+      utf8: { type: "_internal", bomAware: true },
+      cesu8: { type: "_internal", bomAware: true },
+      unicode11utf8: "utf8",
+      ucs2: { type: "_internal", bomAware: true },
+      utf16le: "ucs2",
+      binary: { type: "_internal" },
+      base64: { type: "_internal" },
+      hex: { type: "_internal" },
+      // Codec.
+      _internal: InternalCodec
+    };
+    function InternalCodec(codecOptions, iconv) {
+      this.enc = codecOptions.encodingName;
+      this.bomAware = codecOptions.bomAware;
+      if (this.enc === "base64")
+        this.encoder = InternalEncoderBase64;
+      else if (this.enc === "cesu8") {
+        this.enc = "utf8";
+        this.encoder = InternalEncoderCesu8;
+        if (Buffer2.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") {
+          this.decoder = InternalDecoderCesu8;
+          this.defaultCharUnicode = iconv.defaultCharUnicode;
+        }
+      }
+    }
+    InternalCodec.prototype.encoder = InternalEncoder;
+    InternalCodec.prototype.decoder = InternalDecoder;
+    var StringDecoder = require("string_decoder").StringDecoder;
+    if (!StringDecoder.prototype.end)
+      StringDecoder.prototype.end = function() {
+      };
+    function InternalDecoder(options, codec) {
+      this.decoder = new StringDecoder(codec.enc);
+    }
+    InternalDecoder.prototype.write = function(buf) {
+      if (!Buffer2.isBuffer(buf)) {
+        buf = Buffer2.from(buf);
+      }
+      return this.decoder.write(buf);
+    };
+    InternalDecoder.prototype.end = function() {
+      return this.decoder.end();
+    };
+    function InternalEncoder(options, codec) {
+      this.enc = codec.enc;
+    }
+    InternalEncoder.prototype.write = function(str) {
+      return Buffer2.from(str, this.enc);
+    };
+    InternalEncoder.prototype.end = function() {
+    };
+    function InternalEncoderBase64(options, codec) {
+      this.prevStr = "";
+    }
+    InternalEncoderBase64.prototype.write = function(str) {
+      str = this.prevStr + str;
+      var completeQuads = str.length - str.length % 4;
+      this.prevStr = str.slice(completeQuads);
+      str = str.slice(0, completeQuads);
+      return Buffer2.from(str, "base64");
+    };
+    InternalEncoderBase64.prototype.end = function() {
+      return Buffer2.from(this.prevStr, "base64");
+    };
+    function InternalEncoderCesu8(options, codec) {
+    }
+    InternalEncoderCesu8.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length * 3), bufIdx = 0;
+      for (var i = 0; i < str.length; i++) {
+        var charCode = str.charCodeAt(i);
+        if (charCode < 128)
+          buf[bufIdx++] = charCode;
+        else if (charCode < 2048) {
+          buf[bufIdx++] = 192 + (charCode >>> 6);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        } else {
+          buf[bufIdx++] = 224 + (charCode >>> 12);
+          buf[bufIdx++] = 128 + (charCode >>> 6 & 63);
+          buf[bufIdx++] = 128 + (charCode & 63);
+        }
+      }
+      return buf.slice(0, bufIdx);
+    };
+    InternalEncoderCesu8.prototype.end = function() {
+    };
+    function InternalDecoderCesu8(options, codec) {
+      this.acc = 0;
+      this.contBytes = 0;
+      this.accBytes = 0;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+    }
+    InternalDecoderCesu8.prototype.write = function(buf) {
+      var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes, res = "";
+      for (var i = 0; i < buf.length; i++) {
+        var curByte = buf[i];
+        if ((curByte & 192) !== 128) {
+          if (contBytes > 0) {
+            res += this.defaultCharUnicode;
+            contBytes = 0;
+          }
+          if (curByte < 128) {
+            res += String.fromCharCode(curByte);
+          } else if (curByte < 224) {
+            acc = curByte & 31;
+            contBytes = 1;
+            accBytes = 1;
+          } else if (curByte < 240) {
+            acc = curByte & 15;
+            contBytes = 2;
+            accBytes = 1;
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        } else {
+          if (contBytes > 0) {
+            acc = acc << 6 | curByte & 63;
+            contBytes--;
+            accBytes++;
+            if (contBytes === 0) {
+              if (accBytes === 2 && acc < 128 && acc > 0)
+                res += this.defaultCharUnicode;
+              else if (accBytes === 3 && acc < 2048)
+                res += this.defaultCharUnicode;
+              else
+                res += String.fromCharCode(acc);
+            }
+          } else {
+            res += this.defaultCharUnicode;
+          }
+        }
+      }
+      this.acc = acc;
+      this.contBytes = contBytes;
+      this.accBytes = accBytes;
+      return res;
+    };
+    InternalDecoderCesu8.prototype.end = function() {
+      var res = 0;
+      if (this.contBytes > 0)
+        res += this.defaultCharUnicode;
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js
+var require_utf32 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf32.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._utf32 = Utf32Codec;
+    function Utf32Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+      this.bomAware = true;
+      this.isLE = codecOptions.isLE;
+    }
+    exports2.utf32le = { type: "_utf32", isLE: true };
+    exports2.utf32be = { type: "_utf32", isLE: false };
+    exports2.ucs4le = "utf32le";
+    exports2.ucs4be = "utf32be";
+    Utf32Codec.prototype.encoder = Utf32Encoder;
+    Utf32Codec.prototype.decoder = Utf32Decoder;
+    function Utf32Encoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.highSurrogate = 0;
+    }
+    Utf32Encoder.prototype.write = function(str) {
+      var src = Buffer2.from(str, "ucs2");
+      var dst = Buffer2.alloc(src.length * 2);
+      var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE;
+      var offset = 0;
+      for (var i = 0; i < src.length; i += 2) {
+        var code = src.readUInt16LE(i);
+        var isHighSurrogate = 55296 <= code && code < 56320;
+        var isLowSurrogate = 56320 <= code && code < 57344;
+        if (this.highSurrogate) {
+          if (isHighSurrogate || !isLowSurrogate) {
+            write32.call(dst, this.highSurrogate, offset);
+            offset += 4;
+          } else {
+            var codepoint = (this.highSurrogate - 55296 << 10 | code - 56320) + 65536;
+            write32.call(dst, codepoint, offset);
+            offset += 4;
+            this.highSurrogate = 0;
+            continue;
+          }
+        }
+        if (isHighSurrogate)
+          this.highSurrogate = code;
+        else {
+          write32.call(dst, code, offset);
+          offset += 4;
+          this.highSurrogate = 0;
+        }
+      }
+      if (offset < dst.length)
+        dst = dst.slice(0, offset);
+      return dst;
+    };
+    Utf32Encoder.prototype.end = function() {
+      if (!this.highSurrogate)
+        return;
+      var buf = Buffer2.alloc(4);
+      if (this.isLE)
+        buf.writeUInt32LE(this.highSurrogate, 0);
+      else
+        buf.writeUInt32BE(this.highSurrogate, 0);
+      this.highSurrogate = 0;
+      return buf;
+    };
+    function Utf32Decoder(options, codec) {
+      this.isLE = codec.isLE;
+      this.badChar = codec.iconv.defaultCharUnicode.charCodeAt(0);
+      this.overflow = [];
+    }
+    Utf32Decoder.prototype.write = function(src) {
+      if (src.length === 0)
+        return "";
+      var i = 0;
+      var codepoint = 0;
+      var dst = Buffer2.alloc(src.length + 4);
+      var offset = 0;
+      var isLE = this.isLE;
+      var overflow = this.overflow;
+      var badChar = this.badChar;
+      if (overflow.length > 0) {
+        for (; i < src.length && overflow.length < 4; i++)
+          overflow.push(src[i]);
+        if (overflow.length === 4) {
+          if (isLE) {
+            codepoint = overflow[i] | overflow[i + 1] << 8 | overflow[i + 2] << 16 | overflow[i + 3] << 24;
+          } else {
+            codepoint = overflow[i + 3] | overflow[i + 2] << 8 | overflow[i + 1] << 16 | overflow[i] << 24;
+          }
+          overflow.length = 0;
+          offset = _writeCodepoint(dst, offset, codepoint, badChar);
+        }
+      }
+      for (; i < src.length - 3; i += 4) {
+        if (isLE) {
+          codepoint = src[i] | src[i + 1] << 8 | src[i + 2] << 16 | src[i + 3] << 24;
+        } else {
+          codepoint = src[i + 3] | src[i + 2] << 8 | src[i + 1] << 16 | src[i] << 24;
+        }
+        offset = _writeCodepoint(dst, offset, codepoint, badChar);
+      }
+      for (; i < src.length; i++) {
+        overflow.push(src[i]);
+      }
+      return dst.slice(0, offset).toString("ucs2");
+    };
+    function _writeCodepoint(dst, offset, codepoint, badChar) {
+      if (codepoint < 0 || codepoint > 1114111) {
+        codepoint = badChar;
+      }
+      if (codepoint >= 65536) {
+        codepoint -= 65536;
+        var high = 55296 | codepoint >> 10;
+        dst[offset++] = high & 255;
+        dst[offset++] = high >> 8;
+        var codepoint = 56320 | codepoint & 1023;
+      }
+      dst[offset++] = codepoint & 255;
+      dst[offset++] = codepoint >> 8;
+      return offset;
+    }
+    Utf32Decoder.prototype.end = function() {
+      this.overflow.length = 0;
+    };
+    exports2.utf32 = Utf32AutoCodec;
+    exports2.ucs4 = "utf32";
+    function Utf32AutoCodec(options, iconv) {
+      this.iconv = iconv;
+    }
+    Utf32AutoCodec.prototype.encoder = Utf32AutoEncoder;
+    Utf32AutoCodec.prototype.decoder = Utf32AutoDecoder;
+    function Utf32AutoEncoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder(options.defaultEncoding || "utf-32le", options);
+    }
+    Utf32AutoEncoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf32AutoEncoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf32AutoDecoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf32AutoDecoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 32)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf32AutoDecoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var invalidLE = 0, invalidBE = 0;
+      var bmpCharsLE = 0, bmpCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 4) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254 && b[2] === 0 && b[3] === 0) {
+                  return "utf-32le";
+                }
+                if (b[0] === 0 && b[1] === 0 && b[2] === 254 && b[3] === 255) {
+                  return "utf-32be";
+                }
+              }
+              if (b[0] !== 0 || b[1] > 16) invalidBE++;
+              if (b[3] !== 0 || b[2] > 16) invalidLE++;
+              if (b[0] === 0 && b[1] === 0 && (b[2] !== 0 || b[3] !== 0)) bmpCharsBE++;
+              if ((b[0] !== 0 || b[1] !== 0) && b[2] === 0 && b[3] === 0) bmpCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (bmpCharsBE - invalidBE > bmpCharsLE - invalidLE) return "utf-32be";
+      if (bmpCharsBE - invalidBE < bmpCharsLE - invalidLE) return "utf-32le";
+      return defaultEncoding || "utf-32le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js
+var require_utf16 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf16.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf16be = Utf16BECodec;
+    function Utf16BECodec() {
+    }
+    Utf16BECodec.prototype.encoder = Utf16BEEncoder;
+    Utf16BECodec.prototype.decoder = Utf16BEDecoder;
+    Utf16BECodec.prototype.bomAware = true;
+    function Utf16BEEncoder() {
+    }
+    Utf16BEEncoder.prototype.write = function(str) {
+      var buf = Buffer2.from(str, "ucs2");
+      for (var i = 0; i < buf.length; i += 2) {
+        var tmp = buf[i];
+        buf[i] = buf[i + 1];
+        buf[i + 1] = tmp;
+      }
+      return buf;
+    };
+    Utf16BEEncoder.prototype.end = function() {
+    };
+    function Utf16BEDecoder() {
+      this.overflowByte = -1;
+    }
+    Utf16BEDecoder.prototype.write = function(buf) {
+      if (buf.length == 0)
+        return "";
+      var buf2 = Buffer2.alloc(buf.length + 1), i = 0, j = 0;
+      if (this.overflowByte !== -1) {
+        buf2[0] = buf[0];
+        buf2[1] = this.overflowByte;
+        i = 1;
+        j = 2;
+      }
+      for (; i < buf.length - 1; i += 2, j += 2) {
+        buf2[j] = buf[i + 1];
+        buf2[j + 1] = buf[i];
+      }
+      this.overflowByte = i == buf.length - 1 ? buf[buf.length - 1] : -1;
+      return buf2.slice(0, j).toString("ucs2");
+    };
+    Utf16BEDecoder.prototype.end = function() {
+      this.overflowByte = -1;
+    };
+    exports2.utf16 = Utf16Codec;
+    function Utf16Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf16Codec.prototype.encoder = Utf16Encoder;
+    Utf16Codec.prototype.decoder = Utf16Decoder;
+    function Utf16Encoder(options, codec) {
+      options = options || {};
+      if (options.addBOM === void 0)
+        options.addBOM = true;
+      this.encoder = codec.iconv.getEncoder("utf-16le", options);
+    }
+    Utf16Encoder.prototype.write = function(str) {
+      return this.encoder.write(str);
+    };
+    Utf16Encoder.prototype.end = function() {
+      return this.encoder.end();
+    };
+    function Utf16Decoder(options, codec) {
+      this.decoder = null;
+      this.initialBufs = [];
+      this.initialBufsLen = 0;
+      this.options = options || {};
+      this.iconv = codec.iconv;
+    }
+    Utf16Decoder.prototype.write = function(buf) {
+      if (!this.decoder) {
+        this.initialBufs.push(buf);
+        this.initialBufsLen += buf.length;
+        if (this.initialBufsLen < 16)
+          return "";
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.write(buf);
+    };
+    Utf16Decoder.prototype.end = function() {
+      if (!this.decoder) {
+        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
+        this.decoder = this.iconv.getDecoder(encoding, this.options);
+        var resStr = "";
+        for (var i = 0; i < this.initialBufs.length; i++)
+          resStr += this.decoder.write(this.initialBufs[i]);
+        var trail = this.decoder.end();
+        if (trail)
+          resStr += trail;
+        this.initialBufs.length = this.initialBufsLen = 0;
+        return resStr;
+      }
+      return this.decoder.end();
+    };
+    function detectEncoding(bufs, defaultEncoding) {
+      var b = [];
+      var charsProcessed = 0;
+      var asciiCharsLE = 0, asciiCharsBE = 0;
+      outer_loop:
+        for (var i = 0; i < bufs.length; i++) {
+          var buf = bufs[i];
+          for (var j = 0; j < buf.length; j++) {
+            b.push(buf[j]);
+            if (b.length === 2) {
+              if (charsProcessed === 0) {
+                if (b[0] === 255 && b[1] === 254) return "utf-16le";
+                if (b[0] === 254 && b[1] === 255) return "utf-16be";
+              }
+              if (b[0] === 0 && b[1] !== 0) asciiCharsBE++;
+              if (b[0] !== 0 && b[1] === 0) asciiCharsLE++;
+              b.length = 0;
+              charsProcessed++;
+              if (charsProcessed >= 100) {
+                break outer_loop;
+              }
+            }
+          }
+        }
+      if (asciiCharsBE > asciiCharsLE) return "utf-16be";
+      if (asciiCharsBE < asciiCharsLE) return "utf-16le";
+      return defaultEncoding || "utf-16le";
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js
+var require_utf7 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/utf7.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2.utf7 = Utf7Codec;
+    exports2.unicode11utf7 = "utf7";
+    function Utf7Codec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7Codec.prototype.encoder = Utf7Encoder;
+    Utf7Codec.prototype.decoder = Utf7Decoder;
+    Utf7Codec.prototype.bomAware = true;
+    var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;
+    function Utf7Encoder(options, codec) {
+      this.iconv = codec.iconv;
+    }
+    Utf7Encoder.prototype.write = function(str) {
+      return Buffer2.from(str.replace(nonDirectChars, function(chunk) {
+        return "+" + (chunk === "+" ? "" : this.iconv.encode(chunk, "utf16-be").toString("base64").replace(/=+$/, "")) + "-";
+      }.bind(this)));
+    };
+    Utf7Encoder.prototype.end = function() {
+    };
+    function Utf7Decoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64Regex = /[A-Za-z0-9\/+]/;
+    var base64Chars = [];
+    for (i = 0; i < 256; i++)
+      base64Chars[i] = base64Regex.test(String.fromCharCode(i));
+    var i;
+    var plusChar = "+".charCodeAt(0);
+    var minusChar = "-".charCodeAt(0);
+    var andChar = "&".charCodeAt(0);
+    Utf7Decoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == plusChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64Chars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "+";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7Decoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+    exports2.utf7imap = Utf7IMAPCodec;
+    function Utf7IMAPCodec(codecOptions, iconv) {
+      this.iconv = iconv;
+    }
+    Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder;
+    Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder;
+    Utf7IMAPCodec.prototype.bomAware = true;
+    function Utf7IMAPEncoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = Buffer2.alloc(6);
+      this.base64AccumIdx = 0;
+    }
+    Utf7IMAPEncoder.prototype.write = function(str) {
+      var inBase64 = this.inBase64, base64Accum = this.base64Accum, base64AccumIdx = this.base64AccumIdx, buf = Buffer2.alloc(str.length * 5 + 10), bufIdx = 0;
+      for (var i2 = 0; i2 < str.length; i2++) {
+        var uChar = str.charCodeAt(i2);
+        if (32 <= uChar && uChar <= 126) {
+          if (inBase64) {
+            if (base64AccumIdx > 0) {
+              bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+              base64AccumIdx = 0;
+            }
+            buf[bufIdx++] = minusChar;
+            inBase64 = false;
+          }
+          if (!inBase64) {
+            buf[bufIdx++] = uChar;
+            if (uChar === andChar)
+              buf[bufIdx++] = minusChar;
+          }
+        } else {
+          if (!inBase64) {
+            buf[bufIdx++] = andChar;
+            inBase64 = true;
+          }
+          if (inBase64) {
+            base64Accum[base64AccumIdx++] = uChar >> 8;
+            base64Accum[base64AccumIdx++] = uChar & 255;
+            if (base64AccumIdx == base64Accum.length) {
+              bufIdx += buf.write(base64Accum.toString("base64").replace(/\//g, ","), bufIdx);
+              base64AccumIdx = 0;
+            }
+          }
+        }
+      }
+      this.inBase64 = inBase64;
+      this.base64AccumIdx = base64AccumIdx;
+      return buf.slice(0, bufIdx);
+    };
+    Utf7IMAPEncoder.prototype.end = function() {
+      var buf = Buffer2.alloc(10), bufIdx = 0;
+      if (this.inBase64) {
+        if (this.base64AccumIdx > 0) {
+          bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
+          this.base64AccumIdx = 0;
+        }
+        buf[bufIdx++] = minusChar;
+        this.inBase64 = false;
+      }
+      return buf.slice(0, bufIdx);
+    };
+    function Utf7IMAPDecoder(options, codec) {
+      this.iconv = codec.iconv;
+      this.inBase64 = false;
+      this.base64Accum = "";
+    }
+    var base64IMAPChars = base64Chars.slice();
+    base64IMAPChars[",".charCodeAt(0)] = true;
+    Utf7IMAPDecoder.prototype.write = function(buf) {
+      var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum;
+      for (var i2 = 0; i2 < buf.length; i2++) {
+        if (!inBase64) {
+          if (buf[i2] == andChar) {
+            res += this.iconv.decode(buf.slice(lastI, i2), "ascii");
+            lastI = i2 + 1;
+            inBase64 = true;
+          }
+        } else {
+          if (!base64IMAPChars[buf[i2]]) {
+            if (i2 == lastI && buf[i2] == minusChar) {
+              res += "&";
+            } else {
+              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i2), "ascii").replace(/,/g, "/");
+              res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+            }
+            if (buf[i2] != minusChar)
+              i2--;
+            lastI = i2 + 1;
+            inBase64 = false;
+            base64Accum = "";
+          }
+        }
+      }
+      if (!inBase64) {
+        res += this.iconv.decode(buf.slice(lastI), "ascii");
+      } else {
+        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii").replace(/,/g, "/");
+        var canBeDecoded = b64str.length - b64str.length % 8;
+        base64Accum = b64str.slice(canBeDecoded);
+        b64str = b64str.slice(0, canBeDecoded);
+        res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be");
+      }
+      this.inBase64 = inBase64;
+      this.base64Accum = base64Accum;
+      return res;
+    };
+    Utf7IMAPDecoder.prototype.end = function() {
+      var res = "";
+      if (this.inBase64 && this.base64Accum.length > 0)
+        res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be");
+      this.inBase64 = false;
+      this.base64Accum = "";
+      return res;
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js
+var require_sbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._sbcs = SBCSCodec;
+    function SBCSCodec(codecOptions, iconv) {
+      if (!codecOptions)
+        throw new Error("SBCS codec is called without the data.");
+      if (!codecOptions.chars || codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256)
+        throw new Error("Encoding '" + codecOptions.type + "' has incorrect 'chars' (must be of len 128 or 256)");
+      if (codecOptions.chars.length === 128) {
+        var asciiString = "";
+        for (var i = 0; i < 128; i++)
+          asciiString += String.fromCharCode(i);
+        codecOptions.chars = asciiString + codecOptions.chars;
+      }
+      this.decodeBuf = Buffer2.from(codecOptions.chars, "ucs2");
+      var encodeBuf = Buffer2.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0));
+      for (var i = 0; i < codecOptions.chars.length; i++)
+        encodeBuf[codecOptions.chars.charCodeAt(i)] = i;
+      this.encodeBuf = encodeBuf;
+    }
+    SBCSCodec.prototype.encoder = SBCSEncoder;
+    SBCSCodec.prototype.decoder = SBCSDecoder;
+    function SBCSEncoder(options, codec) {
+      this.encodeBuf = codec.encodeBuf;
+    }
+    SBCSEncoder.prototype.write = function(str) {
+      var buf = Buffer2.alloc(str.length);
+      for (var i = 0; i < str.length; i++)
+        buf[i] = this.encodeBuf[str.charCodeAt(i)];
+      return buf;
+    };
+    SBCSEncoder.prototype.end = function() {
+    };
+    function SBCSDecoder(options, codec) {
+      this.decodeBuf = codec.decodeBuf;
+    }
+    SBCSDecoder.prototype.write = function(buf) {
+      var decodeBuf = this.decodeBuf;
+      var newBuf = Buffer2.alloc(buf.length * 2);
+      var idx1 = 0, idx2 = 0;
+      for (var i = 0; i < buf.length; i++) {
+        idx1 = buf[i] * 2;
+        idx2 = i * 2;
+        newBuf[idx2] = decodeBuf[idx1];
+        newBuf[idx2 + 1] = decodeBuf[idx1 + 1];
+      }
+      return newBuf.toString("ucs2");
+    };
+    SBCSDecoder.prototype.end = function() {
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js
+var require_sbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // Not supported by iconv, not sure why.
+      "10029": "maccenteuro",
+      "maccenteuro": {
+        "type": "_sbcs",
+        "chars": "\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"
+      },
+      "808": "cp808",
+      "ibm808": "cp808",
+      "cp808": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"
+      },
+      "mik": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "cp720": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      // Aliases of generated encodings.
+      "ascii8bit": "ascii",
+      "usascii": "ascii",
+      "ansix34": "ascii",
+      "ansix341968": "ascii",
+      "ansix341986": "ascii",
+      "csascii": "ascii",
+      "cp367": "ascii",
+      "ibm367": "ascii",
+      "isoir6": "ascii",
+      "iso646us": "ascii",
+      "iso646irv": "ascii",
+      "us": "ascii",
+      "latin1": "iso88591",
+      "latin2": "iso88592",
+      "latin3": "iso88593",
+      "latin4": "iso88594",
+      "latin5": "iso88599",
+      "latin6": "iso885910",
+      "latin7": "iso885913",
+      "latin8": "iso885914",
+      "latin9": "iso885915",
+      "latin10": "iso885916",
+      "csisolatin1": "iso88591",
+      "csisolatin2": "iso88592",
+      "csisolatin3": "iso88593",
+      "csisolatin4": "iso88594",
+      "csisolatincyrillic": "iso88595",
+      "csisolatinarabic": "iso88596",
+      "csisolatingreek": "iso88597",
+      "csisolatinhebrew": "iso88598",
+      "csisolatin5": "iso88599",
+      "csisolatin6": "iso885910",
+      "l1": "iso88591",
+      "l2": "iso88592",
+      "l3": "iso88593",
+      "l4": "iso88594",
+      "l5": "iso88599",
+      "l6": "iso885910",
+      "l7": "iso885913",
+      "l8": "iso885914",
+      "l9": "iso885915",
+      "l10": "iso885916",
+      "isoir14": "iso646jp",
+      "isoir57": "iso646cn",
+      "isoir100": "iso88591",
+      "isoir101": "iso88592",
+      "isoir109": "iso88593",
+      "isoir110": "iso88594",
+      "isoir144": "iso88595",
+      "isoir127": "iso88596",
+      "isoir126": "iso88597",
+      "isoir138": "iso88598",
+      "isoir148": "iso88599",
+      "isoir157": "iso885910",
+      "isoir166": "tis620",
+      "isoir179": "iso885913",
+      "isoir199": "iso885914",
+      "isoir203": "iso885915",
+      "isoir226": "iso885916",
+      "cp819": "iso88591",
+      "ibm819": "iso88591",
+      "cyrillic": "iso88595",
+      "arabic": "iso88596",
+      "arabic8": "iso88596",
+      "ecma114": "iso88596",
+      "asmo708": "iso88596",
+      "greek": "iso88597",
+      "greek8": "iso88597",
+      "ecma118": "iso88597",
+      "elot928": "iso88597",
+      "hebrew": "iso88598",
+      "hebrew8": "iso88598",
+      "turkish": "iso88599",
+      "turkish8": "iso88599",
+      "thai": "iso885911",
+      "thai8": "iso885911",
+      "celtic": "iso885914",
+      "celtic8": "iso885914",
+      "isoceltic": "iso885914",
+      "tis6200": "tis620",
+      "tis62025291": "tis620",
+      "tis62025330": "tis620",
+      "10000": "macroman",
+      "10006": "macgreek",
+      "10007": "maccyrillic",
+      "10079": "maciceland",
+      "10081": "macturkish",
+      "cspc8codepage437": "cp437",
+      "cspc775baltic": "cp775",
+      "cspc850multilingual": "cp850",
+      "cspcp852": "cp852",
+      "cspc862latinhebrew": "cp862",
+      "cpgr": "cp869",
+      "msee": "cp1250",
+      "mscyrl": "cp1251",
+      "msansi": "cp1252",
+      "msgreek": "cp1253",
+      "msturk": "cp1254",
+      "mshebr": "cp1255",
+      "msarab": "cp1256",
+      "winbaltrim": "cp1257",
+      "cp20866": "koi8r",
+      "20866": "koi8r",
+      "ibm878": "koi8r",
+      "cskoi8r": "koi8r",
+      "cp21866": "koi8u",
+      "21866": "koi8u",
+      "ibm1168": "koi8u",
+      "strk10482002": "rk1048",
+      "tcvn5712": "tcvn",
+      "tcvn57121": "tcvn",
+      "gb198880": "iso646cn",
+      "cn": "iso646cn",
+      "csiso14jisc6220ro": "iso646jp",
+      "jisc62201969ro": "iso646jp",
+      "jp": "iso646jp",
+      "cshproman8": "hproman8",
+      "r8": "hproman8",
+      "roman8": "hproman8",
+      "xroman8": "hproman8",
+      "ibm1051": "hproman8",
+      "mac": "macintosh",
+      "csmacintosh": "macintosh"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js
+var require_sbcs_data_generated = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      "437": "cp437",
+      "737": "cp737",
+      "775": "cp775",
+      "850": "cp850",
+      "852": "cp852",
+      "855": "cp855",
+      "856": "cp856",
+      "857": "cp857",
+      "858": "cp858",
+      "860": "cp860",
+      "861": "cp861",
+      "862": "cp862",
+      "863": "cp863",
+      "864": "cp864",
+      "865": "cp865",
+      "866": "cp866",
+      "869": "cp869",
+      "874": "windows874",
+      "922": "cp922",
+      "1046": "cp1046",
+      "1124": "cp1124",
+      "1125": "cp1125",
+      "1129": "cp1129",
+      "1133": "cp1133",
+      "1161": "cp1161",
+      "1162": "cp1162",
+      "1163": "cp1163",
+      "1250": "windows1250",
+      "1251": "windows1251",
+      "1252": "windows1252",
+      "1253": "windows1253",
+      "1254": "windows1254",
+      "1255": "windows1255",
+      "1256": "windows1256",
+      "1257": "windows1257",
+      "1258": "windows1258",
+      "28591": "iso88591",
+      "28592": "iso88592",
+      "28593": "iso88593",
+      "28594": "iso88594",
+      "28595": "iso88595",
+      "28596": "iso88596",
+      "28597": "iso88597",
+      "28598": "iso88598",
+      "28599": "iso88599",
+      "28600": "iso885910",
+      "28601": "iso885911",
+      "28603": "iso885913",
+      "28604": "iso885914",
+      "28605": "iso885915",
+      "28606": "iso885916",
+      "windows874": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "win874": "windows874",
+      "cp874": "windows874",
+      "windows1250": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "win1250": "windows1250",
+      "cp1250": "windows1250",
+      "windows1251": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "win1251": "windows1251",
+      "cp1251": "windows1251",
+      "windows1252": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "win1252": "windows1252",
+      "cp1252": "windows1252",
+      "windows1253": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "win1253": "windows1253",
+      "cp1253": "windows1253",
+      "windows1254": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "win1254": "windows1254",
+      "cp1254": "windows1254",
+      "windows1255": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "win1255": "windows1255",
+      "cp1255": "windows1255",
+      "windows1256": {
+        "type": "_sbcs",
+        "chars": "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"
+      },
+      "win1256": "windows1256",
+      "cp1256": "windows1256",
+      "windows1257": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"
+      },
+      "win1257": "windows1257",
+      "cp1257": "windows1257",
+      "windows1258": {
+        "type": "_sbcs",
+        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "win1258": "windows1258",
+      "cp1258": "windows1258",
+      "iso88591": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28591": "iso88591",
+      "iso88592": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
+      },
+      "cp28592": "iso88592",
+      "iso88593": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"
+      },
+      "cp28593": "iso88593",
+      "iso88594": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"
+      },
+      "cp28594": "iso88594",
+      "iso88595": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "cp28595": "iso88595",
+      "iso88596": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28596": "iso88596",
+      "iso88597": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
+      },
+      "cp28597": "iso88597",
+      "iso88598": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
+      },
+      "cp28598": "iso88598",
+      "iso88599": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
+      },
+      "cp28599": "iso88599",
+      "iso885910": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"
+      },
+      "cp28600": "iso885910",
+      "iso885911": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "cp28601": "iso885911",
+      "iso885913": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"
+      },
+      "cp28603": "iso885913",
+      "iso885914": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"
+      },
+      "cp28604": "iso885914",
+      "iso885915": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "cp28605": "iso885915",
+      "iso885916": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"
+      },
+      "cp28606": "iso885916",
+      "cp437": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm437": "cp437",
+      "csibm437": "cp437",
+      "cp737": {
+        "type": "_sbcs",
+        "chars": "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm737": "cp737",
+      "csibm737": "cp737",
+      "cp775": {
+        "type": "_sbcs",
+        "chars": "\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm775": "cp775",
+      "csibm775": "cp775",
+      "cp850": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm850": "cp850",
+      "csibm850": "cp850",
+      "cp852": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"
+      },
+      "ibm852": "cp852",
+      "csibm852": "cp852",
+      "cp855": {
+        "type": "_sbcs",
+        "chars": "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"
+      },
+      "ibm855": "cp855",
+      "csibm855": "cp855",
+      "cp856": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm856": "cp856",
+      "csibm856": "cp856",
+      "cp857": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm857": "cp857",
+      "csibm857": "cp857",
+      "cp858": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
+      },
+      "ibm858": "cp858",
+      "csibm858": "cp858",
+      "cp860": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm860": "cp860",
+      "csibm860": "cp860",
+      "cp861": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm861": "cp861",
+      "csibm861": "cp861",
+      "cp862": {
+        "type": "_sbcs",
+        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm862": "cp862",
+      "csibm862": "cp862",
+      "cp863": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm863": "cp863",
+      "csibm863": "cp863",
+      "cp864": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD"
+      },
+      "ibm864": "cp864",
+      "csibm864": "cp864",
+      "cp865": {
+        "type": "_sbcs",
+        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
+      },
+      "ibm865": "cp865",
+      "csibm865": "cp865",
+      "cp866": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm866": "cp866",
+      "csibm866": "cp866",
+      "cp869": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"
+      },
+      "ibm869": "cp869",
+      "csibm869": "cp869",
+      "cp922": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"
+      },
+      "ibm922": "cp922",
+      "csibm922": "cp922",
+      "cp1046": {
+        "type": "_sbcs",
+        "chars": "\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"
+      },
+      "ibm1046": "cp1046",
+      "csibm1046": "cp1046",
+      "cp1124": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
+      },
+      "ibm1124": "cp1124",
+      "csibm1124": "cp1124",
+      "cp1125": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"
+      },
+      "ibm1125": "cp1125",
+      "csibm1125": "cp1125",
+      "cp1129": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1129": "cp1129",
+      "csibm1129": "cp1129",
+      "cp1133": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"
+      },
+      "ibm1133": "cp1133",
+      "csibm1133": "cp1133",
+      "cp1161": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"
+      },
+      "ibm1161": "cp1161",
+      "csibm1161": "cp1161",
+      "cp1162": {
+        "type": "_sbcs",
+        "chars": "\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "ibm1162": "cp1162",
+      "csibm1162": "cp1162",
+      "cp1163": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
+      },
+      "ibm1163": "cp1163",
+      "csibm1163": "cp1163",
+      "maccroatian": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"
+      },
+      "maccyrillic": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "macgreek": {
+        "type": "_sbcs",
+        "chars": "\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"
+      },
+      "maciceland": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macroman": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macromania": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macthai": {
+        "type": "_sbcs",
+        "chars": "\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "macturkish": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "macukraine": {
+        "type": "_sbcs",
+        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
+      },
+      "koi8r": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8u": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8ru": {
+        "type": "_sbcs",
+        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "koi8t": {
+        "type": "_sbcs",
+        "chars": "\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
+      },
+      "armscii8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"
+      },
+      "rk1048": {
+        "type": "_sbcs",
+        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "tcvn": {
+        "type": "_sbcs",
+        "chars": "\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b	\n\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0"
+      },
+      "georgianacademy": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "georgianps": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
+      },
+      "pt154": {
+        "type": "_sbcs",
+        "chars": "\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
+      },
+      "viscii": {
+        "type": "_sbcs",
+        "chars": "\0\u1EB2\u1EB4\u1EAA\x07\b	\n\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE"
+      },
+      "iso646cn": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "iso646jp": {
+        "type": "_sbcs",
+        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "hproman8": {
+        "type": "_sbcs",
+        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"
+      },
+      "macintosh": {
+        "type": "_sbcs",
+        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
+      },
+      "ascii": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
+      },
+      "tis620": {
+        "type": "_sbcs",
+        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
+      }
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js
+var require_dbcs_codec = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    exports2._dbcs = DBCSCodec;
+    var UNASSIGNED = -1;
+    var GB18030_CODE = -2;
+    var SEQ_START = -10;
+    var NODE_START = -1e3;
+    var UNASSIGNED_NODE = new Array(256);
+    var DEF_CHAR = -1;
+    for (i = 0; i < 256; i++)
+      UNASSIGNED_NODE[i] = UNASSIGNED;
+    var i;
+    function DBCSCodec(codecOptions, iconv) {
+      this.encodingName = codecOptions.encodingName;
+      if (!codecOptions)
+        throw new Error("DBCS codec is called without the data.");
+      if (!codecOptions.table)
+        throw new Error("Encoding '" + this.encodingName + "' has no data.");
+      var mappingTable = codecOptions.table();
+      this.decodeTables = [];
+      this.decodeTables[0] = UNASSIGNED_NODE.slice(0);
+      this.decodeTableSeq = [];
+      for (var i2 = 0; i2 < mappingTable.length; i2++)
+        this._addDecodeChunk(mappingTable[i2]);
+      if (typeof codecOptions.gb18030 === "function") {
+        this.gb18030 = codecOptions.gb18030();
+        var commonThirdByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var commonFourthByteNodeIdx = this.decodeTables.length;
+        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
+        var firstByteNode = this.decodeTables[0];
+        for (var i2 = 129; i2 <= 254; i2++) {
+          var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i2]];
+          for (var j = 48; j <= 57; j++) {
+            if (secondByteNode[j] === UNASSIGNED) {
+              secondByteNode[j] = NODE_START - commonThirdByteNodeIdx;
+            } else if (secondByteNode[j] > NODE_START) {
+              throw new Error("gb18030 decode tables conflict at byte 2");
+            }
+            var thirdByteNode = this.decodeTables[NODE_START - secondByteNode[j]];
+            for (var k = 129; k <= 254; k++) {
+              if (thirdByteNode[k] === UNASSIGNED) {
+                thirdByteNode[k] = NODE_START - commonFourthByteNodeIdx;
+              } else if (thirdByteNode[k] === NODE_START - commonFourthByteNodeIdx) {
+                continue;
+              } else if (thirdByteNode[k] > NODE_START) {
+                throw new Error("gb18030 decode tables conflict at byte 3");
+              }
+              var fourthByteNode = this.decodeTables[NODE_START - thirdByteNode[k]];
+              for (var l = 48; l <= 57; l++) {
+                if (fourthByteNode[l] === UNASSIGNED)
+                  fourthByteNode[l] = GB18030_CODE;
+              }
+            }
+          }
+        }
+      }
+      this.defaultCharUnicode = iconv.defaultCharUnicode;
+      this.encodeTable = [];
+      this.encodeTableSeq = [];
+      var skipEncodeChars = {};
+      if (codecOptions.encodeSkipVals)
+        for (var i2 = 0; i2 < codecOptions.encodeSkipVals.length; i2++) {
+          var val2 = codecOptions.encodeSkipVals[i2];
+          if (typeof val2 === "number")
+            skipEncodeChars[val2] = true;
+          else
+            for (var j = val2.from; j <= val2.to; j++)
+              skipEncodeChars[j] = true;
+        }
+      this._fillEncodeTable(0, 0, skipEncodeChars);
+      if (codecOptions.encodeAdd) {
+        for (var uChar in codecOptions.encodeAdd)
+          if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar))
+            this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]);
+      }
+      this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]["?"];
+      if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0);
+    }
+    DBCSCodec.prototype.encoder = DBCSEncoder;
+    DBCSCodec.prototype.decoder = DBCSDecoder;
+    DBCSCodec.prototype._getDecodeTrieNode = function(addr) {
+      var bytes = [];
+      for (; addr > 0; addr >>>= 8)
+        bytes.push(addr & 255);
+      if (bytes.length == 0)
+        bytes.push(0);
+      var node = this.decodeTables[0];
+      for (var i2 = bytes.length - 1; i2 > 0; i2--) {
+        var val2 = node[bytes[i2]];
+        if (val2 == UNASSIGNED) {
+          node[bytes[i2]] = NODE_START - this.decodeTables.length;
+          this.decodeTables.push(node = UNASSIGNED_NODE.slice(0));
+        } else if (val2 <= NODE_START) {
+          node = this.decodeTables[NODE_START - val2];
+        } else
+          throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr.toString(16));
+      }
+      return node;
+    };
+    DBCSCodec.prototype._addDecodeChunk = function(chunk) {
+      var curAddr = parseInt(chunk[0], 16);
+      var writeTable = this._getDecodeTrieNode(curAddr);
+      curAddr = curAddr & 255;
+      for (var k = 1; k < chunk.length; k++) {
+        var part = chunk[k];
+        if (typeof part === "string") {
+          for (var l = 0; l < part.length; ) {
+            var code = part.charCodeAt(l++);
+            if (55296 <= code && code < 56320) {
+              var codeTrail = part.charCodeAt(l++);
+              if (56320 <= codeTrail && codeTrail < 57344)
+                writeTable[curAddr++] = 65536 + (code - 55296) * 1024 + (codeTrail - 56320);
+              else
+                throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]);
+            } else if (4080 < code && code <= 4095) {
+              var len = 4095 - code + 2;
+              var seq = [];
+              for (var m = 0; m < len; m++)
+                seq.push(part.charCodeAt(l++));
+              writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length;
+              this.decodeTableSeq.push(seq);
+            } else
+              writeTable[curAddr++] = code;
+          }
+        } else if (typeof part === "number") {
+          var charCode = writeTable[curAddr - 1] + 1;
+          for (var l = 0; l < part; l++)
+            writeTable[curAddr++] = charCode++;
+        } else
+          throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]);
+      }
+      if (curAddr > 255)
+        throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr);
+    };
+    DBCSCodec.prototype._getEncodeBucket = function(uCode) {
+      var high = uCode >> 8;
+      if (this.encodeTable[high] === void 0)
+        this.encodeTable[high] = UNASSIGNED_NODE.slice(0);
+      return this.encodeTable[high];
+    };
+    DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) {
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      if (bucket[low] <= SEQ_START)
+        this.encodeTableSeq[SEQ_START - bucket[low]][DEF_CHAR] = dbcsCode;
+      else if (bucket[low] == UNASSIGNED)
+        bucket[low] = dbcsCode;
+    };
+    DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) {
+      var uCode = seq[0];
+      var bucket = this._getEncodeBucket(uCode);
+      var low = uCode & 255;
+      var node;
+      if (bucket[low] <= SEQ_START) {
+        node = this.encodeTableSeq[SEQ_START - bucket[low]];
+      } else {
+        node = {};
+        if (bucket[low] !== UNASSIGNED) node[DEF_CHAR] = bucket[low];
+        bucket[low] = SEQ_START - this.encodeTableSeq.length;
+        this.encodeTableSeq.push(node);
+      }
+      for (var j = 1; j < seq.length - 1; j++) {
+        var oldVal = node[uCode];
+        if (typeof oldVal === "object")
+          node = oldVal;
+        else {
+          node = node[uCode] = {};
+          if (oldVal !== void 0)
+            node[DEF_CHAR] = oldVal;
+        }
+      }
+      uCode = seq[seq.length - 1];
+      node[uCode] = dbcsCode;
+    };
+    DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) {
+      var node = this.decodeTables[nodeIdx];
+      var hasValues = false;
+      var subNodeEmpty = {};
+      for (var i2 = 0; i2 < 256; i2++) {
+        var uCode = node[i2];
+        var mbCode = prefix + i2;
+        if (skipEncodeChars[mbCode])
+          continue;
+        if (uCode >= 0) {
+          this._setEncodeChar(uCode, mbCode);
+          hasValues = true;
+        } else if (uCode <= NODE_START) {
+          var subNodeIdx = NODE_START - uCode;
+          if (!subNodeEmpty[subNodeIdx]) {
+            var newPrefix = mbCode << 8 >>> 0;
+            if (this._fillEncodeTable(subNodeIdx, newPrefix, skipEncodeChars))
+              hasValues = true;
+            else
+              subNodeEmpty[subNodeIdx] = true;
+          }
+        } else if (uCode <= SEQ_START) {
+          this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode);
+          hasValues = true;
+        }
+      }
+      return hasValues;
+    };
+    function DBCSEncoder(options, codec) {
+      this.leadSurrogate = -1;
+      this.seqObj = void 0;
+      this.encodeTable = codec.encodeTable;
+      this.encodeTableSeq = codec.encodeTableSeq;
+      this.defaultCharSingleByte = codec.defCharSB;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSEncoder.prototype.write = function(str) {
+      var newBuf = Buffer2.alloc(str.length * (this.gb18030 ? 4 : 3)), leadSurrogate = this.leadSurrogate, seqObj = this.seqObj, nextChar = -1, i2 = 0, j = 0;
+      while (true) {
+        if (nextChar === -1) {
+          if (i2 == str.length) break;
+          var uCode = str.charCodeAt(i2++);
+        } else {
+          var uCode = nextChar;
+          nextChar = -1;
+        }
+        if (55296 <= uCode && uCode < 57344) {
+          if (uCode < 56320) {
+            if (leadSurrogate === -1) {
+              leadSurrogate = uCode;
+              continue;
+            } else {
+              leadSurrogate = uCode;
+              uCode = UNASSIGNED;
+            }
+          } else {
+            if (leadSurrogate !== -1) {
+              uCode = 65536 + (leadSurrogate - 55296) * 1024 + (uCode - 56320);
+              leadSurrogate = -1;
+            } else {
+              uCode = UNASSIGNED;
+            }
+          }
+        } else if (leadSurrogate !== -1) {
+          nextChar = uCode;
+          uCode = UNASSIGNED;
+          leadSurrogate = -1;
+        }
+        var dbcsCode = UNASSIGNED;
+        if (seqObj !== void 0 && uCode != UNASSIGNED) {
+          var resCode = seqObj[uCode];
+          if (typeof resCode === "object") {
+            seqObj = resCode;
+            continue;
+          } else if (typeof resCode == "number") {
+            dbcsCode = resCode;
+          } else if (resCode == void 0) {
+            resCode = seqObj[DEF_CHAR];
+            if (resCode !== void 0) {
+              dbcsCode = resCode;
+              nextChar = uCode;
+            } else {
+            }
+          }
+          seqObj = void 0;
+        } else if (uCode >= 0) {
+          var subtable = this.encodeTable[uCode >> 8];
+          if (subtable !== void 0)
+            dbcsCode = subtable[uCode & 255];
+          if (dbcsCode <= SEQ_START) {
+            seqObj = this.encodeTableSeq[SEQ_START - dbcsCode];
+            continue;
+          }
+          if (dbcsCode == UNASSIGNED && this.gb18030) {
+            var idx = findIdx(this.gb18030.uChars, uCode);
+            if (idx != -1) {
+              var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]);
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 12600);
+              dbcsCode = dbcsCode % 12600;
+              newBuf[j++] = 48 + Math.floor(dbcsCode / 1260);
+              dbcsCode = dbcsCode % 1260;
+              newBuf[j++] = 129 + Math.floor(dbcsCode / 10);
+              dbcsCode = dbcsCode % 10;
+              newBuf[j++] = 48 + dbcsCode;
+              continue;
+            }
+          }
+        }
+        if (dbcsCode === UNASSIGNED)
+          dbcsCode = this.defaultCharSingleByte;
+        if (dbcsCode < 256) {
+          newBuf[j++] = dbcsCode;
+        } else if (dbcsCode < 65536) {
+          newBuf[j++] = dbcsCode >> 8;
+          newBuf[j++] = dbcsCode & 255;
+        } else if (dbcsCode < 16777216) {
+          newBuf[j++] = dbcsCode >> 16;
+          newBuf[j++] = dbcsCode >> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        } else {
+          newBuf[j++] = dbcsCode >>> 24;
+          newBuf[j++] = dbcsCode >>> 16 & 255;
+          newBuf[j++] = dbcsCode >>> 8 & 255;
+          newBuf[j++] = dbcsCode & 255;
+        }
+      }
+      this.seqObj = seqObj;
+      this.leadSurrogate = leadSurrogate;
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.end = function() {
+      if (this.leadSurrogate === -1 && this.seqObj === void 0)
+        return;
+      var newBuf = Buffer2.alloc(10), j = 0;
+      if (this.seqObj) {
+        var dbcsCode = this.seqObj[DEF_CHAR];
+        if (dbcsCode !== void 0) {
+          if (dbcsCode < 256) {
+            newBuf[j++] = dbcsCode;
+          } else {
+            newBuf[j++] = dbcsCode >> 8;
+            newBuf[j++] = dbcsCode & 255;
+          }
+        } else {
+        }
+        this.seqObj = void 0;
+      }
+      if (this.leadSurrogate !== -1) {
+        newBuf[j++] = this.defaultCharSingleByte;
+        this.leadSurrogate = -1;
+      }
+      return newBuf.slice(0, j);
+    };
+    DBCSEncoder.prototype.findIdx = findIdx;
+    function DBCSDecoder(options, codec) {
+      this.nodeIdx = 0;
+      this.prevBytes = [];
+      this.decodeTables = codec.decodeTables;
+      this.decodeTableSeq = codec.decodeTableSeq;
+      this.defaultCharUnicode = codec.defaultCharUnicode;
+      this.gb18030 = codec.gb18030;
+    }
+    DBCSDecoder.prototype.write = function(buf) {
+      var newBuf = Buffer2.alloc(buf.length * 2), nodeIdx = this.nodeIdx, prevBytes = this.prevBytes, prevOffset = this.prevBytes.length, seqStart = -this.prevBytes.length, uCode;
+      for (var i2 = 0, j = 0; i2 < buf.length; i2++) {
+        var curByte = i2 >= 0 ? buf[i2] : prevBytes[i2 + prevOffset];
+        var uCode = this.decodeTables[nodeIdx][curByte];
+        if (uCode >= 0) {
+        } else if (uCode === UNASSIGNED) {
+          uCode = this.defaultCharUnicode.charCodeAt(0);
+          i2 = seqStart;
+        } else if (uCode === GB18030_CODE) {
+          if (i2 >= 3) {
+            var ptr = (buf[i2 - 3] - 129) * 12600 + (buf[i2 - 2] - 48) * 1260 + (buf[i2 - 1] - 129) * 10 + (curByte - 48);
+          } else {
+            var ptr = (prevBytes[i2 - 3 + prevOffset] - 129) * 12600 + ((i2 - 2 >= 0 ? buf[i2 - 2] : prevBytes[i2 - 2 + prevOffset]) - 48) * 1260 + ((i2 - 1 >= 0 ? buf[i2 - 1] : prevBytes[i2 - 1 + prevOffset]) - 129) * 10 + (curByte - 48);
+          }
+          var idx = findIdx(this.gb18030.gbChars, ptr);
+          uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx];
+        } else if (uCode <= NODE_START) {
+          nodeIdx = NODE_START - uCode;
+          continue;
+        } else if (uCode <= SEQ_START) {
+          var seq = this.decodeTableSeq[SEQ_START - uCode];
+          for (var k = 0; k < seq.length - 1; k++) {
+            uCode = seq[k];
+            newBuf[j++] = uCode & 255;
+            newBuf[j++] = uCode >> 8;
+          }
+          uCode = seq[seq.length - 1];
+        } else
+          throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte);
+        if (uCode >= 65536) {
+          uCode -= 65536;
+          var uCodeLead = 55296 | uCode >> 10;
+          newBuf[j++] = uCodeLead & 255;
+          newBuf[j++] = uCodeLead >> 8;
+          uCode = 56320 | uCode & 1023;
+        }
+        newBuf[j++] = uCode & 255;
+        newBuf[j++] = uCode >> 8;
+        nodeIdx = 0;
+        seqStart = i2 + 1;
+      }
+      this.nodeIdx = nodeIdx;
+      this.prevBytes = seqStart >= 0 ? Array.prototype.slice.call(buf, seqStart) : prevBytes.slice(seqStart + prevOffset).concat(Array.prototype.slice.call(buf));
+      return newBuf.slice(0, j).toString("ucs2");
+    };
+    DBCSDecoder.prototype.end = function() {
+      var ret = "";
+      while (this.prevBytes.length > 0) {
+        ret += this.defaultCharUnicode;
+        var bytesArr = this.prevBytes.slice(1);
+        this.prevBytes = [];
+        this.nodeIdx = 0;
+        if (bytesArr.length > 0)
+          ret += this.write(bytesArr);
+      }
+      this.prevBytes = [];
+      this.nodeIdx = 0;
+      return ret;
+    };
+    function findIdx(table, val2) {
+      if (table[0] > val2)
+        return -1;
+      var l = 0, r = table.length;
+      while (l < r - 1) {
+        var mid = l + (r - l + 1 >> 1);
+        if (table[mid] <= val2)
+          l = mid;
+        else
+          r = mid;
+      }
+      return l;
+    }
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json
+var require_shiftjis = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 128],
+      ["a1", "\uFF61", 62],
+      ["8140", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7"],
+      ["8180", "\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["81b8", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["81c8", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["81da", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["81f0", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["81fc", "\u25EF"],
+      ["824f", "\uFF10", 9],
+      ["8260", "\uFF21", 25],
+      ["8281", "\uFF41", 25],
+      ["829f", "\u3041", 82],
+      ["8340", "\u30A1", 62],
+      ["8380", "\u30E0", 22],
+      ["839f", "\u0391", 16, "\u03A3", 6],
+      ["83bf", "\u03B1", 16, "\u03C3", 6],
+      ["8440", "\u0410", 5, "\u0401\u0416", 25],
+      ["8470", "\u0430", 5, "\u0451\u0436", 7],
+      ["8480", "\u043E", 17],
+      ["849f", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["8740", "\u2460", 19, "\u2160", 9],
+      ["875f", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["877e", "\u337B"],
+      ["8780", "\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["889f", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["8940", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],
+      ["8980", "\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["8a40", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],
+      ["8a80", "\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["8b40", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],
+      ["8b80", "\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["8c40", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],
+      ["8c80", "\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["8d40", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],
+      ["8d80", "\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["8e40", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],
+      ["8e80", "\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["8f40", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],
+      ["8f80", "\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["9040", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],
+      ["9080", "\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["9140", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],
+      ["9180", "\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["9240", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],
+      ["9280", "\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["9340", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],
+      ["9380", "\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["9440", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],
+      ["9480", "\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["9540", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],
+      ["9580", "\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["9640", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],
+      ["9680", "\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["9740", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],
+      ["9780", "\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["9840", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["989f", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["9940", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],
+      ["9980", "\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["9a40", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],
+      ["9a80", "\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["9b40", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],
+      ["9b80", "\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["9c40", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],
+      ["9c80", "\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["9d40", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],
+      ["9d80", "\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["9e40", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],
+      ["9e80", "\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["9f40", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],
+      ["9f80", "\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["e040", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],
+      ["e080", "\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e140", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],
+      ["e180", "\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e240", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],
+      ["e280", "\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e340", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],
+      ["e380", "\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e440", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],
+      ["e480", "\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e540", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],
+      ["e580", "\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["e640", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],
+      ["e680", "\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["e740", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],
+      ["e780", "\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["e840", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],
+      ["e880", "\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["e940", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],
+      ["e980", "\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["ea40", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],
+      ["ea80", "\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["ed40", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],
+      ["ed80", "\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["ee40", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],
+      ["ee80", "\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["eeef", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["f040", "\uE000", 62],
+      ["f080", "\uE03F", 124],
+      ["f140", "\uE0BC", 62],
+      ["f180", "\uE0FB", 124],
+      ["f240", "\uE178", 62],
+      ["f280", "\uE1B7", 124],
+      ["f340", "\uE234", 62],
+      ["f380", "\uE273", 124],
+      ["f440", "\uE2F0", 62],
+      ["f480", "\uE32F", 124],
+      ["f540", "\uE3AC", 62],
+      ["f580", "\uE3EB", 124],
+      ["f640", "\uE468", 62],
+      ["f680", "\uE4A7", 124],
+      ["f740", "\uE524", 62],
+      ["f780", "\uE563", 124],
+      ["f840", "\uE5E0", 62],
+      ["f880", "\uE61F", 124],
+      ["f940", "\uE69C"],
+      ["fa40", "\u2170", 9, "\u2160", 9, "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],
+      ["fa80", "\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],
+      ["fb40", "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],
+      ["fb80", "\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],
+      ["fc40", "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json
+var require_eucjp = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8ea1", "\uFF61", 62],
+      ["a1a1", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],
+      ["a2a1", "\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
+      ["a2ba", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
+      ["a2ca", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
+      ["a2dc", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
+      ["a2f2", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
+      ["a2fe", "\u25EF"],
+      ["a3b0", "\uFF10", 9],
+      ["a3c1", "\uFF21", 25],
+      ["a3e1", "\uFF41", 25],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a8a1", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
+      ["ada1", "\u2460", 19, "\u2160", 9],
+      ["adc0", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
+      ["addf", "\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
+      ["b0a1", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
+      ["b1a1", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],
+      ["b2a1", "\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
+      ["b3a1", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],
+      ["b4a1", "\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
+      ["b5a1", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],
+      ["b6a1", "\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
+      ["b7a1", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],
+      ["b8a1", "\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
+      ["b9a1", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],
+      ["baa1", "\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
+      ["bba1", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],
+      ["bca1", "\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
+      ["bda1", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],
+      ["bea1", "\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
+      ["bfa1", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],
+      ["c0a1", "\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
+      ["c1a1", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],
+      ["c2a1", "\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
+      ["c3a1", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],
+      ["c4a1", "\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
+      ["c5a1", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],
+      ["c6a1", "\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
+      ["c7a1", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],
+      ["c8a1", "\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
+      ["c9a1", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],
+      ["caa1", "\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
+      ["cba1", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],
+      ["cca1", "\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
+      ["cda1", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],
+      ["cea1", "\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
+      ["cfa1", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
+      ["d0a1", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
+      ["d1a1", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],
+      ["d2a1", "\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
+      ["d3a1", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],
+      ["d4a1", "\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
+      ["d5a1", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],
+      ["d6a1", "\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
+      ["d7a1", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],
+      ["d8a1", "\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
+      ["d9a1", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],
+      ["daa1", "\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
+      ["dba1", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],
+      ["dca1", "\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
+      ["dda1", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],
+      ["dea1", "\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
+      ["dfa1", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],
+      ["e0a1", "\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
+      ["e1a1", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],
+      ["e2a1", "\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
+      ["e3a1", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],
+      ["e4a1", "\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
+      ["e5a1", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],
+      ["e6a1", "\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
+      ["e7a1", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],
+      ["e8a1", "\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
+      ["e9a1", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],
+      ["eaa1", "\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
+      ["eba1", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],
+      ["eca1", "\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
+      ["eda1", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],
+      ["eea1", "\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
+      ["efa1", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],
+      ["f0a1", "\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
+      ["f1a1", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],
+      ["f2a1", "\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
+      ["f3a1", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],
+      ["f4a1", "\u582F\u69C7\u9059\u7464\u51DC\u7199"],
+      ["f9a1", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],
+      ["faa1", "\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
+      ["fba1", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],
+      ["fca1", "\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
+      ["fcf1", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
+      ["8fa2af", "\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],
+      ["8fa2c2", "\xA1\xA6\xBF"],
+      ["8fa2eb", "\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],
+      ["8fa6e1", "\u0386\u0388\u0389\u038A\u03AA"],
+      ["8fa6e7", "\u038C"],
+      ["8fa6e9", "\u038E\u03AB"],
+      ["8fa6ec", "\u038F"],
+      ["8fa6f1", "\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],
+      ["8fa7c2", "\u0402", 10, "\u040E\u040F"],
+      ["8fa7f2", "\u0452", 10, "\u045E\u045F"],
+      ["8fa9a1", "\xC6\u0110"],
+      ["8fa9a4", "\u0126"],
+      ["8fa9a6", "\u0132"],
+      ["8fa9a8", "\u0141\u013F"],
+      ["8fa9ab", "\u014A\xD8\u0152"],
+      ["8fa9af", "\u0166\xDE"],
+      ["8fa9c1", "\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],
+      ["8faaa1", "\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],
+      ["8faaba", "\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],
+      ["8faba1", "\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],
+      ["8fabbd", "\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],
+      ["8fabc5", "\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],
+      ["8fb0a1", "\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],
+      ["8fb1a1", "\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],
+      ["8fb2a1", "\u5092\u5093\u5094\u5096\u509B\u509C\u509E", 4, "\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],
+      ["8fb3a1", "\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],
+      ["8fb4a1", "\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],
+      ["8fb5a1", "\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],
+      ["8fb6a1", "\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D", 5, "\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4", 4, "\u56F1\u56EB\u56ED"],
+      ["8fb7a1", "\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D", 4, "\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],
+      ["8fb8a1", "\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],
+      ["8fb9a1", "\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],
+      ["8fbaa1", "\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6", 4, "\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],
+      ["8fbba1", "\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],
+      ["8fbca1", "\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A", 4, "\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],
+      ["8fbda1", "\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0", 4, "\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],
+      ["8fbea1", "\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110", 4, "\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],
+      ["8fbfa1", "\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],
+      ["8fc0a1", "\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],
+      ["8fc1a1", "\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],
+      ["8fc2a1", "\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],
+      ["8fc3a1", "\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E", 4, "\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],
+      ["8fc4a1", "\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],
+      ["8fc5a1", "\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],
+      ["8fc6a1", "\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],
+      ["8fc7a1", "\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],
+      ["8fc8a1", "\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],
+      ["8fc9a1", "\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094", 4, "\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103", 4, "\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],
+      ["8fcaa1", "\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],
+      ["8fcba1", "\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],
+      ["8fcca1", "\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428", 9, "\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],
+      ["8fcda1", "\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579", 5, "\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],
+      ["8fcea1", "\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2", 6, "\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],
+      ["8fcfa1", "\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],
+      ["8fd0a1", "\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],
+      ["8fd1a1", "\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],
+      ["8fd2a1", "\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59", 5],
+      ["8fd3a1", "\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],
+      ["8fd4a1", "\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2", 4, "\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],
+      ["8fd5a1", "\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],
+      ["8fd6a1", "\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],
+      ["8fd7a1", "\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],
+      ["8fd8a1", "\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],
+      ["8fd9a1", "\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F", 4, "\u8556\u8559\u855C", 6, "\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],
+      ["8fdaa1", "\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660", 4, "\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],
+      ["8fdba1", "\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783", 6, "\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],
+      ["8fdca1", "\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA", 4, "\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],
+      ["8fdda1", "\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4", 4, "\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],
+      ["8fdea1", "\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42", 4, "\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],
+      ["8fdfa1", "\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],
+      ["8fe0a1", "\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],
+      ["8fe1a1", "\u8F43\u8F47\u8F4F\u8F51", 4, "\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],
+      ["8fe2a1", "\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],
+      ["8fe3a1", "\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC", 5, "\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275", 4, "\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],
+      ["8fe4a1", "\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF", 4, "\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],
+      ["8fe5a1", "\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9", 4, "\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],
+      ["8fe6a1", "\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],
+      ["8fe7a1", "\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],
+      ["8fe8a1", "\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931", 4, "\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],
+      ["8fe9a1", "\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF", 4],
+      ["8feaa1", "\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A", 4, "\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],
+      ["8feba1", "\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26", 4, "\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],
+      ["8feca1", "\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],
+      ["8feda1", "\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43", 4, "\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D", 4, "\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json
+var require_cp936 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127, "\u20AC"],
+      ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"],
+      ["8180", "\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02", 6, "\u4F0B\u4F0C\u4F12", 4, "\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E", 4, "\u4F44\u4F45\u4F47", 5, "\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],
+      ["8240", "\u4FA4\u4FAB\u4FAD\u4FB0", 4, "\u4FB6", 8, "\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2", 4, "\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF", 11],
+      ["8280", "\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F", 10, "\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050", 4, "\u5056\u5057\u5058\u5059\u505B\u505D", 7, "\u5066", 5, "\u506D", 8, "\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E", 20, "\u50A4\u50A6\u50AA\u50AB\u50AD", 4, "\u50B3", 6, "\u50BC"],
+      ["8340", "\u50BD", 17, "\u50D0", 5, "\u50D7\u50D8\u50D9\u50DB", 10, "\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6", 4, "\u50FC", 9, "\u5108"],
+      ["8380", "\u5109\u510A\u510C", 5, "\u5113", 13, "\u5122", 28, "\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D", 4, "\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6", 4, "\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2", 5],
+      ["8440", "\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5", 5, "\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244", 5, "\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],
+      ["8480", "\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273", 9, "\u527E\u5280\u5283", 4, "\u5289", 6, "\u5291\u5292\u5294", 6, "\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4", 9, "\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9", 5, "\u52E0\u52E1\u52E2\u52E3\u52E5", 10, "\u52F1", 7, "\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],
+      ["8540", "\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F", 9, "\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],
+      ["8580", "\u5390", 4, "\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF", 6, "\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3", 4, "\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D", 4, "\u5463\u5465\u5467\u5469", 7, "\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],
+      ["8640", "\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0", 4, "\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4", 5, "\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A", 4, "\u5512\u5513\u5515", 5, "\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],
+      ["8680", "\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B", 4, "\u5551\u5552\u5553\u5554\u5557", 4, "\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F", 5, "\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0", 6, "\u55A8", 8, "\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF", 4, "\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7", 4, "\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8", 4, "\u55FF\u5602\u5603\u5604\u5605"],
+      ["8740", "\u5606\u5607\u560A\u560B\u560D\u5610", 7, "\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640", 11, "\u564F", 4, "\u5655\u5656\u565A\u565B\u565D", 4],
+      ["8780", "\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D", 7, "\u5687", 6, "\u5690\u5691\u5692\u5694", 14, "\u56A4", 10, "\u56B0", 6, "\u56B8\u56B9\u56BA\u56BB\u56BD", 12, "\u56CB", 8, "\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5", 5, "\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B", 6],
+      ["8840", "\u5712", 9, "\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734", 4, "\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752", 4, "\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],
+      ["8880", "\u5781\u5787\u5788\u5789\u578A\u578D", 4, "\u5794", 6, "\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9", 8, "\u57C4", 6, "\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5", 7, "\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825", 4, "\u582B", 4, "\u5831\u5832\u5833\u5834\u5836", 7],
+      ["8940", "\u583E", 5, "\u5845", 6, "\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859", 4, "\u585F", 5, "\u5866", 4, "\u586D", 16, "\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],
+      ["8980", "\u588D", 4, "\u5894", 4, "\u589B\u589C\u589D\u58A0", 7, "\u58AA", 17, "\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6", 10, "\u58D2\u58D3\u58D4\u58D6", 13, "\u58E5", 5, "\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA", 7, "\u5903\u5905\u5906\u5908", 4, "\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],
+      ["8a40", "\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B", 4, "\u5961\u5963\u5964\u5966", 12, "\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],
+      ["8a80", "\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3", 5, "\u59BA\u59BC\u59BD\u59BF", 6, "\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE", 4, "\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED", 11, "\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A", 6, "\u5A33\u5A35\u5A37", 4, "\u5A3D\u5A3E\u5A3F\u5A41", 4, "\u5A47\u5A48\u5A4B", 9, "\u5A56\u5A57\u5A58\u5A59\u5A5B", 5],
+      ["8b40", "\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B", 8, "\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80", 17, "\u5A93", 6, "\u5A9C", 13, "\u5AAB\u5AAC"],
+      ["8b80", "\u5AAD", 4, "\u5AB4\u5AB6\u5AB7\u5AB9", 4, "\u5ABF\u5AC0\u5AC3", 5, "\u5ACA\u5ACB\u5ACD", 4, "\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC", 4, "\u5AF2", 22, "\u5B0A", 11, "\u5B18", 25, "\u5B33\u5B35\u5B36\u5B38", 7, "\u5B41", 6],
+      ["8c40", "\u5B48", 7, "\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],
+      ["8c80", "\u5BD1\u5BD4", 8, "\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9", 4, "\u5BEF\u5BF1", 6, "\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67", 6, "\u5C70\u5C72", 6, "\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83", 4, "\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D", 4, "\u5CA4", 4],
+      ["8d40", "\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5", 5, "\u5CCC", 5, "\u5CD3", 5, "\u5CDA", 6, "\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1", 9, "\u5CFC", 4],
+      ["8d80", "\u5D01\u5D04\u5D05\u5D08", 5, "\u5D0F", 4, "\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F", 4, "\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F", 4, "\u5D35", 7, "\u5D3F", 7, "\u5D48\u5D49\u5D4D", 10, "\u5D59\u5D5A\u5D5C\u5D5E", 10, "\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75", 12, "\u5D83", 21, "\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],
+      ["8e40", "\u5DA1", 21, "\u5DB8", 12, "\u5DC6", 6, "\u5DCE", 12, "\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],
+      ["8e80", "\u5DF0\u5DF5\u5DF6\u5DF8", 4, "\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E", 7, "\u5E28", 4, "\u5E2F\u5E30\u5E32", 4, "\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46", 5, "\u5E4D", 6, "\u5E56", 4, "\u5E5C\u5E5D\u5E5F\u5E60\u5E63", 14, "\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8", 4, "\u5EAE", 4, "\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF", 6],
+      ["8f40", "\u5EC6\u5EC7\u5EC8\u5ECB", 5, "\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC", 11, "\u5EE9\u5EEB", 8, "\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],
+      ["8f80", "\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32", 6, "\u5F3B\u5F3D\u5F3E\u5F3F\u5F41", 14, "\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2", 5, "\u5FA9\u5FAB\u5FAC\u5FAF", 5, "\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE", 4, "\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],
+      ["9040", "\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030", 4, "\u6036", 4, "\u603D\u603E\u6040\u6044", 6, "\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],
+      ["9080", "\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD", 7, "\u60C7\u60C8\u60C9\u60CC", 4, "\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1", 4, "\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB", 4, "\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110", 4, "\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C", 18, "\u6140", 6],
+      ["9140", "\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156", 6, "\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169", 6, "\u6171\u6172\u6173\u6174\u6176\u6178", 18, "\u618C\u618D\u618F", 4, "\u6195"],
+      ["9180", "\u6196", 6, "\u619E", 8, "\u61AA\u61AB\u61AD", 9, "\u61B8", 5, "\u61BF\u61C0\u61C1\u61C3", 4, "\u61C9\u61CC", 4, "\u61D3\u61D5", 16, "\u61E7", 13, "\u61F6", 8, "\u6200", 5, "\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238", 4, "\u6242\u6244\u6245\u6246\u624A"],
+      ["9240", "\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C", 6, "\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B", 5, "\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],
+      ["9280", "\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333", 5, "\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356", 7, "\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399", 6, "\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],
+      ["9340", "\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7", 6, "\u63DF\u63E2\u63E4", 4, "\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406", 4, "\u640D\u640E\u6411\u6412\u6415", 5, "\u641D\u641F\u6422\u6423\u6424"],
+      ["9380", "\u6425\u6427\u6428\u6429\u642B\u642E", 5, "\u6435", 4, "\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B", 6, "\u6453\u6455\u6456\u6457\u6459", 4, "\u645F", 7, "\u6468\u646A\u646B\u646C\u646E", 9, "\u647B", 6, "\u6483\u6486\u6488", 8, "\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F", 4, "\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6", 6, "\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],
+      ["9440", "\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7", 24, "\u6501", 7, "\u650A", 7, "\u6513", 4, "\u6519", 8],
+      ["9480", "\u6522\u6523\u6524\u6526", 4, "\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540", 4, "\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578", 14, "\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1", 7, "\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8", 7, "\u65E1\u65E3\u65E4\u65EA\u65EB"],
+      ["9540", "\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB", 4, "\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637", 4, "\u663D\u663F\u6640\u6642\u6644", 6, "\u664D\u664E\u6650\u6651\u6658"],
+      ["9580", "\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669", 4, "\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698", 4, "\u669E", 8, "\u66A9", 4, "\u66AF", 4, "\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF", 25, "\u66DA\u66DE", 7, "\u66E7\u66E8\u66EA", 5, "\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],
+      ["9640", "\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720", 5, "\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757", 4, "\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],
+      ["9680", "\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9", 7, "\u67C2\u67C5", 9, "\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5", 7, "\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818", 4, "\u681E\u681F\u6820\u6822", 6, "\u682B", 6, "\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856", 5],
+      ["9740", "\u685C\u685D\u685E\u685F\u686A\u686C", 7, "\u6875\u6878", 8, "\u6882\u6884\u6887", 7, "\u6890\u6891\u6892\u6894\u6895\u6896\u6898", 9, "\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],
+      ["9780", "\u68B9", 6, "\u68C1\u68C3", 5, "\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB", 4, "\u68E1\u68E2\u68E4", 9, "\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906", 4, "\u690C\u690F\u6911\u6913", 11, "\u6921\u6922\u6923\u6925", 7, "\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943", 16, "\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],
+      ["9840", "\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972", 4, "\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E", 5, "\u6996\u6997\u6999\u699A\u699D", 9, "\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],
+      ["9880", "\u69BE\u69BF\u69C0\u69C2", 7, "\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5", 5, "\u69DC\u69DD\u69DE\u69E1", 11, "\u69EE\u69EF\u69F0\u69F1\u69F3", 9, "\u69FE\u6A00", 9, "\u6A0B", 11, "\u6A19", 5, "\u6A20\u6A22", 5, "\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36", 6, "\u6A3F", 4, "\u6A45\u6A46\u6A48", 7, "\u6A51", 6, "\u6A5A"],
+      ["9940", "\u6A5C", 4, "\u6A62\u6A63\u6A64\u6A66", 10, "\u6A72", 6, "\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85", 8, "\u6A8F\u6A92", 4, "\u6A98", 7, "\u6AA1", 5],
+      ["9980", "\u6AA7\u6AA8\u6AAA\u6AAD", 114, "\u6B25\u6B26\u6B28", 6],
+      ["9a40", "\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D", 11, "\u6B5A", 7, "\u6B68\u6B69\u6B6B", 13, "\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],
+      ["9a80", "\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C", 4, "\u6BA2", 7, "\u6BAB", 7, "\u6BB6\u6BB8", 6, "\u6BC0\u6BC3\u6BC4\u6BC6", 4, "\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC", 4, "\u6BE2", 7, "\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE", 6, "\u6C08", 4, "\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B", 4, "\u6C51\u6C52\u6C53\u6C56\u6C58"],
+      ["9b40", "\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B", 4, "\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],
+      ["9b80", "\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F", 5, "\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D", 4, "\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96", 4, "\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9", 5, "\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],
+      ["9c40", "\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD", 7, "\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],
+      ["9c80", "\u6E36\u6E37\u6E39\u6E3B", 7, "\u6E45", 7, "\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60", 10, "\u6E6C\u6E6D\u6E6F", 14, "\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A", 4, "\u6E91", 6, "\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA", 5],
+      ["9d40", "\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA", 7, "\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A", 4, "\u6F10\u6F11\u6F12\u6F16", 9, "\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37", 6, "\u6F3F\u6F40\u6F41\u6F42"],
+      ["9d80", "\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E", 9, "\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67", 5, "\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D", 6, "\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F", 12, "\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2", 4, "\u6FA8", 10, "\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA", 5, "\u6FC1\u6FC3", 5, "\u6FCA", 6, "\u6FD3", 10, "\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],
+      ["9e40", "\u6FE6", 7, "\u6FF0", 32, "\u7012", 7, "\u701C", 6, "\u7024", 6],
+      ["9e80", "\u702B", 9, "\u7036\u7037\u7038\u703A", 17, "\u704D\u704E\u7050", 13, "\u705F", 11, "\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E", 12, "\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB", 12, "\u70DA"],
+      ["9f40", "\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0", 6, "\u70F8\u70FA\u70FB\u70FC\u70FE", 10, "\u710B", 4, "\u7111\u7112\u7114\u7117\u711B", 10, "\u7127", 7, "\u7132\u7133\u7134"],
+      ["9f80", "\u7135\u7137", 13, "\u7146\u7147\u7148\u7149\u714B\u714D\u714F", 12, "\u715D\u715F", 4, "\u7165\u7169", 4, "\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E", 5, "\u7185", 4, "\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A", 4, "\u71A1", 6, "\u71A9\u71AA\u71AB\u71AD", 5, "\u71B4\u71B6\u71B7\u71B8\u71BA", 8, "\u71C4", 9, "\u71CF", 4],
+      ["a040", "\u71D6", 9, "\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8", 5, "\u71EF", 9, "\u71FA", 11, "\u7207", 19],
+      ["a080", "\u721B\u721C\u721E", 9, "\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240", 6, "\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285", 4, "\u728C\u728E\u7290\u7291\u7293", 11, "\u72A0", 11, "\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA", 6, "\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],
+      ["a1a1", "\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 7, "\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],
+      ["a2a1", "\u2170", 9],
+      ["a2b1", "\u2488", 19, "\u2474", 19, "\u2460", 9],
+      ["a2e5", "\u3220", 9],
+      ["a2f1", "\u2160", 11],
+      ["a3a1", "\uFF01\uFF02\uFF03\uFFE5\uFF05", 88, "\uFFE3"],
+      ["a4a1", "\u3041", 82],
+      ["a5a1", "\u30A1", 85],
+      ["a6a1", "\u0391", 16, "\u03A3", 6],
+      ["a6c1", "\u03B1", 16, "\u03C3", 6],
+      ["a6e0", "\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],
+      ["a6ee", "\uFE3B\uFE3C\uFE37\uFE38\uFE31"],
+      ["a6f4", "\uFE33\uFE34"],
+      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
+      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
+      ["a840", "\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550", 35, "\u2581", 6],
+      ["a880", "\u2588", 7, "\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],
+      ["a8a1", "\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],
+      ["a8bd", "\u0144\u0148"],
+      ["a8c0", "\u0261"],
+      ["a8c5", "\u3105", 36],
+      ["a940", "\u3021", 8, "\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],
+      ["a959", "\u2121\u3231"],
+      ["a95c", "\u2010"],
+      ["a960", "\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49", 9, "\uFE54\uFE55\uFE56\uFE57\uFE59", 8],
+      ["a980", "\uFE62", 4, "\uFE68\uFE69\uFE6A\uFE6B"],
+      ["a996", "\u3007"],
+      ["a9a4", "\u2500", 75],
+      ["aa40", "\u72DC\u72DD\u72DF\u72E2", 5, "\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304", 5, "\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340", 8],
+      ["aa80", "\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358", 7, "\u7361", 10, "\u736E\u7370\u7371"],
+      ["ab40", "\u7372", 11, "\u737F", 4, "\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3", 5, "\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3", 4],
+      ["ab80", "\u73CB\u73CC\u73CE\u73D2", 6, "\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3", 4],
+      ["ac40", "\u73F8", 10, "\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411", 8, "\u741C", 5, "\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437", 4, "\u743D\u743E\u743F\u7440\u7442", 11],
+      ["ac80", "\u744E", 6, "\u7456\u7458\u745D\u7460", 12, "\u746E\u746F\u7471", 4, "\u7478\u7479\u747A"],
+      ["ad40", "\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491", 10, "\u749D\u749F", 7, "\u74AA", 15, "\u74BB", 12],
+      ["ad80", "\u74C8", 9, "\u74D3", 8, "\u74DD\u74DF\u74E1\u74E5\u74E7", 6, "\u74F0\u74F1\u74F2"],
+      ["ae40", "\u74F3\u74F5\u74F8", 6, "\u7500\u7501\u7502\u7503\u7505", 7, "\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520", 4, "\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],
+      ["ae80", "\u755D", 7, "\u7567\u7568\u7569\u756B", 6, "\u7573\u7575\u7576\u7577\u757A", 4, "\u7580\u7581\u7582\u7584\u7585\u7587"],
+      ["af40", "\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6", 4, "\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],
+      ["af80", "\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],
+      ["b040", "\u7645", 6, "\u764E", 5, "\u7655\u7657", 4, "\u765D\u765F\u7660\u7661\u7662\u7664", 6, "\u766C\u766D\u766E\u7670", 7, "\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],
+      ["b080", "\u769C", 7, "\u76A5", 8, "\u76AF\u76B0\u76B3\u76B5", 9, "\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],
+      ["b140", "\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0", 4, "\u76E6", 7, "\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E", 10, "\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],
+      ["b180", "\u772C\u772E\u7730", 4, "\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748", 7, "\u7752", 7, "\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],
+      ["b240", "\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D", 11, "\u777A\u777B\u777C\u7781\u7782\u7783\u7786", 5, "\u778F\u7790\u7793", 11, "\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6", 4],
+      ["b280", "\u77BC\u77BE\u77C0", 12, "\u77CE", 8, "\u77D8\u77D9\u77DA\u77DD", 4, "\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],
+      ["b340", "\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803", 5, "\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],
+      ["b380", "\u785B\u785C\u785E", 11, "\u786F", 7, "\u7878\u7879\u787A\u787B\u787D", 6, "\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],
+      ["b440", "\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8", 7, "\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA", 9],
+      ["b480", "\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED", 4, "\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB", 5, "\u7902\u7903\u7904\u7906", 6, "\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],
+      ["b540", "\u790D", 5, "\u7914", 9, "\u791F", 4, "\u7925", 14, "\u7935", 4, "\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A", 8, "\u7954\u7955\u7958\u7959\u7961\u7963"],
+      ["b580", "\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970", 6, "\u7979\u797B", 4, "\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],
+      ["b640", "\u7993", 6, "\u799B", 11, "\u79A8", 10, "\u79B4", 4, "\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9", 5, "\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],
+      ["b680", "\u79EC\u79EE\u79F1", 6, "\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F", 4, "\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],
+      ["b740", "\u7A1D\u7A1F\u7A21\u7A22\u7A24", 14, "\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40", 5, "\u7A47", 9, "\u7A52", 4, "\u7A58", 16],
+      ["b780", "\u7A69", 6, "\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],
+      ["b840", "\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE", 4, "\u7AB4", 10, "\u7AC0", 10, "\u7ACC", 9, "\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7", 5, "\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],
+      ["b880", "\u7AF4", 4, "\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],
+      ["b940", "\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F", 5, "\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63", 10, "\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86", 6, "\u7B8E\u7B8F"],
+      ["b980", "\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9", 7, "\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],
+      ["ba40", "\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4", 4, "\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2", 4, "\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF", 7, "\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10", 5, "\u7C17\u7C18\u7C19"],
+      ["ba80", "\u7C1A", 4, "\u7C20", 5, "\u7C28\u7C29\u7C2B", 12, "\u7C39", 5, "\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],
+      ["bb40", "\u7C43", 9, "\u7C4E", 36, "\u7C75", 5, "\u7C7E", 9],
+      ["bb80", "\u7C88\u7C8A", 6, "\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4", 4, "\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],
+      ["bc40", "\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE", 6, "\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1", 6, "\u7CE9", 5, "\u7CF0", 7, "\u7CF9\u7CFA\u7CFC", 13, "\u7D0B", 5],
+      ["bc80", "\u7D11", 14, "\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30", 6, "\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],
+      ["bd40", "\u7D37", 54, "\u7D6F", 7],
+      ["bd80", "\u7D78", 32, "\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],
+      ["be40", "\u7D99", 12, "\u7DA7", 6, "\u7DAF", 42],
+      ["be80", "\u7DDA", 32, "\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],
+      ["bf40", "\u7DFB", 62],
+      ["bf80", "\u7E3A\u7E3C", 4, "\u7E42", 4, "\u7E48", 21, "\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],
+      ["c040", "\u7E5E", 35, "\u7E83", 23, "\u7E9C\u7E9D\u7E9E"],
+      ["c080", "\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B", 6, "\u7F43\u7F46", 9, "\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],
+      ["c140", "\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63", 4, "\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82", 7, "\u7F8B\u7F8D\u7F8F", 4, "\u7F95", 4, "\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8", 6, "\u7FB1"],
+      ["c180", "\u7FB3", 4, "\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF", 4, "\u7FD6\u7FD7\u7FD9", 5, "\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],
+      ["c240", "\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4", 6, "\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B", 5, "\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],
+      ["c280", "\u8059\u805B", 13, "\u806B", 5, "\u8072", 11, "\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],
+      ["c340", "\u807E\u8081\u8082\u8085\u8088\u808A\u808D", 5, "\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7", 4, "\u80CF", 6, "\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],
+      ["c380", "\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F", 12, "\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139", 4, "\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],
+      ["c440", "\u8140", 5, "\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B", 4, "\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183", 4, "\u8189\u818B\u818C\u818D\u818E\u8190\u8192", 5, "\u8199\u819A\u819E", 4, "\u81A4\u81A5"],
+      ["c480", "\u81A7\u81A9\u81AB", 7, "\u81B4", 5, "\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD", 6, "\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],
+      ["c540", "\u81D4", 14, "\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE", 4, "\u81F5", 5, "\u81FD\u81FF\u8203\u8207", 4, "\u820E\u820F\u8211\u8213\u8215", 5, "\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],
+      ["c580", "\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250", 7, "\u8259\u825B\u825C\u825D\u825E\u8260", 7, "\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],
+      ["c640", "\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],
+      ["c680", "\u82FA\u82FC", 4, "\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D", 9, "\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],
+      ["c740", "\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A", 4, "\u8353\u8355", 4, "\u835D\u8362\u8370", 6, "\u8379\u837A\u837E", 6, "\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1", 6, "\u83AC\u83AD\u83AE"],
+      ["c780", "\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],
+      ["c840", "\u83EE\u83EF\u83F3", 4, "\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412", 5, "\u8419\u841A\u841B\u841E", 5, "\u8429", 7, "\u8432", 5, "\u8439\u843A\u843B\u843E", 7, "\u8447\u8448\u8449"],
+      ["c880", "\u844A", 6, "\u8452", 4, "\u8458\u845D\u845E\u845F\u8460\u8462\u8464", 4, "\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],
+      ["c940", "\u847D", 4, "\u8483\u8484\u8485\u8486\u848A\u848D\u848F", 7, "\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2", 12, "\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],
+      ["c980", "\u84D8", 4, "\u84DE\u84E1\u84E2\u84E4\u84E7", 4, "\u84ED\u84EE\u84EF\u84F1", 10, "\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],
+      ["ca40", "\u8503", 8, "\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522", 8, "\u852D", 9, "\u853E", 4, "\u8544\u8545\u8546\u8547\u854B", 10],
+      ["ca80", "\u8557\u8558\u855A\u855B\u855C\u855D\u855F", 4, "\u8565\u8566\u8567\u8569", 8, "\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],
+      ["cb40", "\u8582\u8583\u8586\u8588", 6, "\u8590", 10, "\u859D", 6, "\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1", 5, "\u85B8\u85BA", 6, "\u85C2", 6, "\u85CA", 4, "\u85D1\u85D2"],
+      ["cb80", "\u85D4\u85D6", 5, "\u85DD", 6, "\u85E5\u85E6\u85E7\u85E8\u85EA", 14, "\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],
+      ["cc40", "\u85F9\u85FA\u85FC\u85FD\u85FE\u8600", 4, "\u8606", 10, "\u8612\u8613\u8614\u8615\u8617", 15, "\u8628\u862A", 13, "\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],
+      ["cc80", "\u8641", 11, "\u8652\u8653\u8655", 4, "\u865B\u865C\u865D\u865F\u8660\u8661\u8663", 7, "\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],
+      ["cd40", "\u866D\u866F\u8670\u8672", 6, "\u8683", 6, "\u868E", 4, "\u8694\u8696", 5, "\u869E", 4, "\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB", 4, "\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],
+      ["cd80", "\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],
+      ["ce40", "\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740", 6, "\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A", 5, "\u8761\u8762\u8766", 7, "\u876F\u8771\u8772\u8773\u8775"],
+      ["ce80", "\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E", 4, "\u8794\u8795\u8796\u8798", 6, "\u87A0", 4, "\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],
+      ["cf40", "\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1", 4, "\u87C7\u87C8\u87C9\u87CC", 4, "\u87D4", 6, "\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF", 9],
+      ["cf80", "\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804", 5, "\u880B", 7, "\u8814\u8817\u8818\u8819\u881A\u881C", 4, "\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],
+      ["d040", "\u8824", 13, "\u8833", 5, "\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846", 5, "\u884E", 5, "\u8855\u8856\u8858\u885A", 6, "\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],
+      ["d080", "\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897", 4, "\u889D", 4, "\u88A3\u88A5", 5, "\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],
+      ["d140", "\u88AC\u88AE\u88AF\u88B0\u88B2", 4, "\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA", 4, "\u88E0\u88E1\u88E6\u88E7\u88E9", 6, "\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903", 5],
+      ["d180", "\u8909\u890B", 4, "\u8911\u8914", 4, "\u891C", 4, "\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],
+      ["d240", "\u8938", 8, "\u8942\u8943\u8945", 24, "\u8960", 5, "\u8967", 19, "\u897C"],
+      ["d280", "\u897D\u897E\u8980\u8982\u8984\u8985\u8987", 26, "\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],
+      ["d340", "\u89A2", 30, "\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4", 6],
+      ["d380", "\u89FB", 4, "\u8A01", 5, "\u8A08", 21, "\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],
+      ["d440", "\u8A1E", 31, "\u8A3F", 8, "\u8A49", 21],
+      ["d480", "\u8A5F", 25, "\u8A7A", 6, "\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],
+      ["d540", "\u8A81", 7, "\u8A8B", 7, "\u8A94", 46],
+      ["d580", "\u8AC3", 32, "\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],
+      ["d640", "\u8AE4", 34, "\u8B08", 27],
+      ["d680", "\u8B24\u8B25\u8B27", 30, "\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],
+      ["d740", "\u8B46", 31, "\u8B67", 4, "\u8B6D", 25],
+      ["d780", "\u8B87", 24, "\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],
+      ["d840", "\u8C38", 8, "\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D", 7, "\u8C56\u8C57\u8C58\u8C59\u8C5B", 5, "\u8C63", 6, "\u8C6C", 6, "\u8C74\u8C75\u8C76\u8C77\u8C7B", 6, "\u8C83\u8C84\u8C86\u8C87"],
+      ["d880", "\u8C88\u8C8B\u8C8D", 6, "\u8C95\u8C96\u8C97\u8C99", 20, "\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],
+      ["d940", "\u8CAE", 62],
+      ["d980", "\u8CED", 32, "\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],
+      ["da40", "\u8D0E", 14, "\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78", 8, "\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C", 4, "\u8D92\u8D93\u8D95", 9, "\u8DA0\u8DA1"],
+      ["da80", "\u8DA2\u8DA4", 12, "\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],
+      ["db40", "\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE", 6, "\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15", 7, "\u8E20\u8E21\u8E24", 4, "\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],
+      ["db80", "\u8E3F\u8E43\u8E45\u8E46\u8E4C", 4, "\u8E53", 5, "\u8E5A", 11, "\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],
+      ["dc40", "\u8E73\u8E75\u8E77", 4, "\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88", 6, "\u8E91\u8E92\u8E93\u8E95", 6, "\u8E9D\u8E9F", 11, "\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3", 6, "\u8EBB", 7],
+      ["dc80", "\u8EC3", 10, "\u8ECF", 21, "\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],
+      ["dd40", "\u8EE5", 62],
+      ["dd80", "\u8F24", 32, "\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],
+      ["de40", "\u8F45", 32, "\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],
+      ["de80", "\u8FC9", 4, "\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],
+      ["df40", "\u9019\u901C\u9023\u9024\u9025\u9027", 5, "\u9030", 4, "\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048", 4, "\u904E\u9054\u9055\u9056\u9059\u905A\u905C", 5, "\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F", 4, "\u9076", 6, "\u907E\u9081"],
+      ["df80", "\u9084\u9085\u9086\u9087\u9089\u908A\u908C", 4, "\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],
+      ["e040", "\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105", 19, "\u911A\u911B\u911C"],
+      ["e080", "\u911D\u911F\u9120\u9121\u9124", 10, "\u9130\u9132", 6, "\u913A", 8, "\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],
+      ["e140", "\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180", 4, "\u9186\u9188\u918A\u918E\u918F\u9193", 6, "\u919C", 5, "\u91A4", 5, "\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],
+      ["e180", "\u91BC", 10, "\u91C8\u91CB\u91D0\u91D2", 9, "\u91DD", 8, "\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],
+      ["e240", "\u91E6", 62],
+      ["e280", "\u9225", 32, "\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967", 5, "\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],
+      ["e340", "\u9246", 45, "\u9275", 16],
+      ["e380", "\u9286", 7, "\u928F", 24, "\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],
+      ["e440", "\u92A8", 5, "\u92AF", 24, "\u92C9", 31],
+      ["e480", "\u92E9", 32, "\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],
+      ["e540", "\u930A", 51, "\u933F", 10],
+      ["e580", "\u934A", 31, "\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],
+      ["e640", "\u936C", 34, "\u9390", 27],
+      ["e680", "\u93AC", 29, "\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],
+      ["e740", "\u93CE", 7, "\u93D7", 54],
+      ["e780", "\u940E", 32, "\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21", 6, "\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F", 4, "\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],
+      ["e840", "\u942F", 14, "\u943F", 43, "\u946C\u946D\u946E\u946F"],
+      ["e880", "\u9470", 20, "\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],
+      ["e940", "\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577", 7, "\u9580", 42],
+      ["e980", "\u95AB", 32, "\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],
+      ["ea40", "\u95CC", 27, "\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623", 6, "\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],
+      ["ea80", "\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D", 4, "\u9673\u9678", 12, "\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],
+      ["eb40", "\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D", 9, "\u96A8", 7, "\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6", 9, "\u96E1", 6, "\u96EB"],
+      ["eb80", "\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717", 4, "\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],
+      ["ec40", "\u9721", 8, "\u972B\u972C\u972E\u972F\u9731\u9733", 4, "\u973A\u973B\u973C\u973D\u973F", 18, "\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A", 7],
+      ["ec80", "\u9772\u9775\u9777", 4, "\u977D", 7, "\u9786", 4, "\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799", 4, "\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],
+      ["ed40", "\u979E\u979F\u97A1\u97A2\u97A4", 6, "\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5", 46],
+      ["ed80", "\u97E4\u97E5\u97E8\u97EE", 4, "\u97F4\u97F7", 23, "\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],
+      ["ee40", "\u980F", 62],
+      ["ee80", "\u984E", 32, "\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6", 4, "\u94BC\u94BD\u94BF\u94C4\u94C8", 6, "\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],
+      ["ef40", "\u986F", 5, "\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8", 37, "\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0", 4],
+      ["ef80", "\u98E5\u98E6\u98E9", 30, "\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512", 4, "\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564", 8, "\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],
+      ["f040", "\u9908", 4, "\u990E\u990F\u9911", 28, "\u992F", 26],
+      ["f080", "\u994A", 9, "\u9956", 12, "\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28", 4, "\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66", 6, "\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],
+      ["f140", "\u998C\u998E\u999A", 10, "\u99A6\u99A7\u99A9", 47],
+      ["f180", "\u99D9", 32, "\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],
+      ["f240", "\u99FA", 62],
+      ["f280", "\u9A39", 32, "\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],
+      ["f340", "\u9A5A", 17, "\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9", 6, "\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6", 4, "\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],
+      ["f380", "\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0", 8, "\u9AFA\u9AFC", 6, "\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],
+      ["f440", "\u9B07\u9B09", 5, "\u9B10\u9B11\u9B12\u9B14", 10, "\u9B20\u9B21\u9B22\u9B24", 10, "\u9B30\u9B31\u9B33", 7, "\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55", 5],
+      ["f480", "\u9B5B", 32, "\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],
+      ["f540", "\u9B7C", 62],
+      ["f580", "\u9BBB", 32, "\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],
+      ["f640", "\u9BDC", 62],
+      ["f680", "\u9C1B", 32, "\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85", 5, "\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E", 5, "\u9CA5", 4, "\u9CAB\u9CAD\u9CAE\u9CB0", 7, "\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],
+      ["f740", "\u9C3C", 62],
+      ["f780", "\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE", 4, "\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC", 4, "\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],
+      ["f840", "\u9CE3", 62],
+      ["f880", "\u9D22", 32],
+      ["f940", "\u9D43", 62],
+      ["f980", "\u9D82", 32],
+      ["fa40", "\u9DA3", 62],
+      ["fa80", "\u9DE2", 32],
+      ["fb40", "\u9E03", 27, "\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74", 9, "\u9E80"],
+      ["fb80", "\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C", 5, "\u9E94", 8, "\u9E9E\u9EA0", 5, "\u9EA7\u9EA8\u9EA9\u9EAA"],
+      ["fc40", "\u9EAB", 8, "\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF", 4, "\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0", 8, "\u9EFA\u9EFD\u9EFF", 6],
+      ["fc80", "\u9F06", 4, "\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A", 5, "\u9F21\u9F23", 8, "\u9F2D\u9F2E\u9F30\u9F31"],
+      ["fd40", "\u9F32", 4, "\u9F38\u9F3A\u9F3C\u9F3F", 4, "\u9F45", 10, "\u9F52", 38],
+      ["fd80", "\u9F79", 5, "\u9F81\u9F82\u9F8D", 11, "\u9F9C\u9F9D\u9F9E\u9FA1", 4, "\uF92C\uF979\uF995\uF9E7\uF9F1"],
+      ["fe40", "\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json
+var require_gbk_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) {
+    module2.exports = [
+      ["a140", "\uE4C6", 62],
+      ["a180", "\uE505", 32],
+      ["a240", "\uE526", 62],
+      ["a280", "\uE565", 32],
+      ["a2ab", "\uE766", 5],
+      ["a2e3", "\u20AC\uE76D"],
+      ["a2ef", "\uE76E\uE76F"],
+      ["a2fd", "\uE770\uE771"],
+      ["a340", "\uE586", 62],
+      ["a380", "\uE5C5", 31, "\u3000"],
+      ["a440", "\uE5E6", 62],
+      ["a480", "\uE625", 32],
+      ["a4f4", "\uE772", 10],
+      ["a540", "\uE646", 62],
+      ["a580", "\uE685", 32],
+      ["a5f7", "\uE77D", 7],
+      ["a640", "\uE6A6", 62],
+      ["a680", "\uE6E5", 32],
+      ["a6b9", "\uE785", 7],
+      ["a6d9", "\uE78D", 6],
+      ["a6ec", "\uE794\uE795"],
+      ["a6f3", "\uE796"],
+      ["a6f6", "\uE797", 8],
+      ["a740", "\uE706", 62],
+      ["a780", "\uE745", 32],
+      ["a7c2", "\uE7A0", 14],
+      ["a7f2", "\uE7AF", 12],
+      ["a896", "\uE7BC", 10],
+      ["a8bc", "\u1E3F"],
+      ["a8bf", "\u01F9"],
+      ["a8c1", "\uE7C9\uE7CA\uE7CB\uE7CC"],
+      ["a8ea", "\uE7CD", 20],
+      ["a958", "\uE7E2"],
+      ["a95b", "\uE7E3"],
+      ["a95d", "\uE7E4\uE7E5\uE7E6"],
+      ["a989", "\u303E\u2FF0", 11],
+      ["a997", "\uE7F4", 12],
+      ["a9f0", "\uE801", 14],
+      ["aaa1", "\uE000", 93],
+      ["aba1", "\uE05E", 93],
+      ["aca1", "\uE0BC", 93],
+      ["ada1", "\uE11A", 93],
+      ["aea1", "\uE178", 93],
+      ["afa1", "\uE1D6", 93],
+      ["d7fa", "\uE810", 4],
+      ["f8a1", "\uE234", 93],
+      ["f9a1", "\uE292", 93],
+      ["faa1", "\uE2F0", 93],
+      ["fba1", "\uE34E", 93],
+      ["fca1", "\uE3AC", 93],
+      ["fda1", "\uE40A", 93],
+      ["fe50", "\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],
+      ["fe80", "\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13", 6, "\u4DAE\uE864\uE468", 93],
+      ["8135f437", "\uE7C7"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json
+var require_gb18030_ranges = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) {
+    module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json
+var require_cp949 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"],
+      ["8161", "\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41", 9, "\uAC4C\uAC4E", 5, "\uAC55"],
+      ["8181", "\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D", 18, "\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B", 4, "\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95", 6, "\uAC9E\uACA2", 5, "\uACAB\uACAD\uACAE\uACB1", 6, "\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD", 7, "\uACD6\uACD8", 7, "\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7", 4, "\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07", 4, "\uAD0E\uAD10\uAD12\uAD13"],
+      ["8241", "\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21", 7, "\uAD2A\uAD2B\uAD2E", 5],
+      ["8261", "\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D", 6, "\uAD46\uAD48\uAD4A", 5, "\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],
+      ["8281", "\uAD59", 7, "\uAD62\uAD64", 7, "\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83", 4, "\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91", 10, "\uAD9E", 5, "\uADA5", 17, "\uADB8", 7, "\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9", 6, "\uADD2\uADD4", 7, "\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5", 18],
+      ["8341", "\uADFA\uADFB\uADFD\uADFE\uAE02", 5, "\uAE0A\uAE0C\uAE0E", 5, "\uAE15", 7],
+      ["8361", "\uAE1D", 18, "\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],
+      ["8381", "\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57", 4, "\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71", 6, "\uAE7A\uAE7E", 5, "\uAE86", 5, "\uAE8D", 46, "\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5", 6, "\uAECE\uAED2", 5, "\uAEDA\uAEDB\uAEDD", 8],
+      ["8441", "\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE", 5, "\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD", 8],
+      ["8461", "\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11", 18],
+      ["8481", "\uAF24", 7, "\uAF2E\uAF2F\uAF31\uAF33\uAF35", 6, "\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A", 5, "\uAF51", 10, "\uAF5E", 5, "\uAF66", 18, "\uAF7A", 5, "\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89", 6, "\uAF92\uAF93\uAF94\uAF96", 5, "\uAF9D", 26, "\uAFBA\uAFBB\uAFBD\uAFBE"],
+      ["8541", "\uAFBF\uAFC1", 5, "\uAFCA\uAFCC\uAFCF", 4, "\uAFD5", 6, "\uAFDD", 4],
+      ["8561", "\uAFE2", 5, "\uAFEA", 5, "\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9", 6, "\uB002\uB003"],
+      ["8581", "\uB005", 6, "\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015", 6, "\uB01E", 9, "\uB029", 26, "\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E", 29, "\uB07E\uB07F\uB081\uB082\uB083\uB085", 6, "\uB08E\uB090\uB092", 5, "\uB09B\uB09D\uB09E\uB0A3\uB0A4"],
+      ["8641", "\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD", 6, "\uB0C6\uB0CA", 5, "\uB0D2"],
+      ["8661", "\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9", 6, "\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6", 10],
+      ["8681", "\uB0F1", 22, "\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E", 4, "\uB126\uB127\uB129\uB12A\uB12B\uB12D", 6, "\uB136\uB13A", 5, "\uB142\uB143\uB145\uB146\uB147\uB149", 6, "\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161", 22, "\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183", 4, "\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],
+      ["8741", "\uB19E", 9, "\uB1A9", 15],
+      ["8761", "\uB1B9", 18, "\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],
+      ["8781", "\uB1D6", 5, "\uB1DE\uB1E0", 7, "\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1", 7, "\uB1FA\uB1FC\uB1FE", 5, "\uB206\uB207\uB209\uB20A\uB20D", 6, "\uB216\uB218\uB21A", 5, "\uB221", 18, "\uB235", 6, "\uB23D", 26, "\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261", 6, "\uB26A", 4],
+      ["8841", "\uB26F", 4, "\uB276", 5, "\uB27D", 6, "\uB286\uB287\uB288\uB28A", 4],
+      ["8861", "\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B", 4, "\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],
+      ["8881", "\uB2B8", 15, "\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3", 4, "\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309", 6, "\uB312\uB316", 5, "\uB31D", 54, "\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],
+      ["8941", "\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379", 6, "\uB382\uB386", 5, "\uB38D"],
+      ["8961", "\uB38E\uB38F\uB391\uB392\uB393\uB395", 10, "\uB3A2", 5, "\uB3A9\uB3AA\uB3AB\uB3AD"],
+      ["8981", "\uB3AE", 21, "\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9", 18, "\uB3FD", 18, "\uB411", 6, "\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421", 6, "\uB42A\uB42C", 7, "\uB435", 15],
+      ["8a41", "\uB445", 10, "\uB452\uB453\uB455\uB456\uB457\uB459", 6, "\uB462\uB464\uB466"],
+      ["8a61", "\uB467", 4, "\uB46D", 18, "\uB481\uB482"],
+      ["8a81", "\uB483", 4, "\uB489", 19, "\uB49E", 5, "\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD", 7, "\uB4B6\uB4B8\uB4BA", 5, "\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9", 6, "\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6", 5, "\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7", 4, "\uB4EE\uB4F0\uB4F2", 5, "\uB4F9", 26, "\uB516\uB517\uB519\uB51A\uB51D"],
+      ["8b41", "\uB51E", 5, "\uB526\uB52B", 4, "\uB532\uB533\uB535\uB536\uB537\uB539", 6, "\uB542\uB546"],
+      ["8b61", "\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555", 6, "\uB55E\uB562", 8],
+      ["8b81", "\uB56B", 52, "\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6", 4, "\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5", 6, "\uB5CE\uB5D2", 5, "\uB5D9", 18, "\uB5ED", 18],
+      ["8c41", "\uB600", 15, "\uB612\uB613\uB615\uB616\uB617\uB619", 4],
+      ["8c61", "\uB61E", 6, "\uB626", 5, "\uB62D", 6, "\uB635", 5],
+      ["8c81", "\uB63B", 12, "\uB649", 26, "\uB665\uB666\uB667\uB669", 50, "\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5", 5, "\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2", 16],
+      ["8d41", "\uB6C3", 16, "\uB6D5", 8],
+      ["8d61", "\uB6DE", 17, "\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],
+      ["8d81", "\uB6FB", 4, "\uB702\uB703\uB704\uB706", 33, "\uB72A\uB72B\uB72D\uB72E\uB731", 6, "\uB73A\uB73C", 7, "\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D", 6, "\uB756", 9, "\uB761\uB762\uB763\uB765\uB766\uB767\uB769", 6, "\uB772\uB774\uB776", 5, "\uB77E\uB77F\uB781\uB782\uB783\uB785", 6, "\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],
+      ["8e41", "\uB79F\uB7A1", 6, "\uB7AA\uB7AE", 5, "\uB7B6\uB7B7\uB7B9", 8],
+      ["8e61", "\uB7C2", 4, "\uB7C8\uB7CA", 19],
+      ["8e81", "\uB7DE", 13, "\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5", 6, "\uB7FE\uB802", 4, "\uB80A\uB80B\uB80D\uB80E\uB80F\uB811", 6, "\uB81A\uB81C\uB81E", 5, "\uB826\uB827\uB829\uB82A\uB82B\uB82D", 6, "\uB836\uB83A", 5, "\uB841\uB842\uB843\uB845", 11, "\uB852\uB854", 7, "\uB85E\uB85F\uB861\uB862\uB863\uB865", 6, "\uB86E\uB870\uB872", 5, "\uB879\uB87A\uB87B\uB87D", 7],
+      ["8f41", "\uB885", 7, "\uB88E", 17],
+      ["8f61", "\uB8A0", 7, "\uB8A9", 6, "\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9", 4],
+      ["8f81", "\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6", 5, "\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5", 7, "\uB8DE\uB8E0\uB8E2", 5, "\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1", 6, "\uB8FA\uB8FC\uB8FE", 5, "\uB905", 18, "\uB919", 6, "\uB921", 26, "\uB93E\uB93F\uB941\uB942\uB943\uB945", 6, "\uB94D\uB94E\uB950\uB952", 5],
+      ["9041", "\uB95A\uB95B\uB95D\uB95E\uB95F\uB961", 6, "\uB96A\uB96C\uB96E", 5, "\uB976\uB977\uB979\uB97A\uB97B\uB97D"],
+      ["9061", "\uB97E", 5, "\uB986\uB988\uB98B\uB98C\uB98F", 15],
+      ["9081", "\uB99F", 12, "\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5", 6, "\uB9BE\uB9C0\uB9C2", 5, "\uB9CA\uB9CB\uB9CD\uB9D3", 4, "\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED", 6, "\uB9F6\uB9FB", 4, "\uBA02", 5, "\uBA09", 11, "\uBA16", 33, "\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],
+      ["9141", "\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D", 6, "\uBA66\uBA6A", 5],
+      ["9161", "\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79", 9, "\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D", 5],
+      ["9181", "\uBA93", 20, "\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3", 4, "\uBABA\uBABC\uBABE", 5, "\uBAC5\uBAC6\uBAC7\uBAC9", 14, "\uBADA", 33, "\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05", 7, "\uBB0E\uBB10\uBB12", 5, "\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21", 6],
+      ["9241", "\uBB28\uBB2A\uBB2C", 7, "\uBB37\uBB39\uBB3A\uBB3F", 4, "\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],
+      ["9261", "\uBB53\uBB55\uBB56\uBB57\uBB59", 7, "\uBB62\uBB64", 7, "\uBB6D", 4],
+      ["9281", "\uBB72", 21, "\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91", 18, "\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD", 6, "\uBBB5\uBBB6\uBBB8", 7, "\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9", 6, "\uBBD1\uBBD2\uBBD4", 35, "\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],
+      ["9341", "\uBC03", 4, "\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],
+      ["9361", "\uBC36\uBC37\uBC39", 6, "\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51", 8],
+      ["9381", "\uBC5A\uBC5B\uBC5C\uBC5E", 37, "\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F", 4, "\uBC96\uBC98\uBC9B", 4, "\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9", 6, "\uBCB2\uBCB6", 5, "\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5", 7, "\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD", 22, "\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],
+      ["9441", "\uBCFE", 5, "\uBD06\uBD08\uBD0A", 5, "\uBD11\uBD12\uBD13\uBD15", 8],
+      ["9461", "\uBD1E", 5, "\uBD25", 6, "\uBD2D", 12],
+      ["9481", "\uBD3A", 5, "\uBD41", 6, "\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51", 6, "\uBD5A", 9, "\uBD65\uBD66\uBD67\uBD69", 22, "\uBD82\uBD83\uBD85\uBD86\uBD8B", 4, "\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D", 6, "\uBDA5", 10, "\uBDB1", 6, "\uBDB9", 24],
+      ["9541", "\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD", 11, "\uBDEA", 5, "\uBDF1"],
+      ["9561", "\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9", 6, "\uBE01\uBE02\uBE04\uBE06", 5, "\uBE0E\uBE0F\uBE11\uBE12\uBE13"],
+      ["9581", "\uBE15", 6, "\uBE1E\uBE20", 35, "\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F", 4, "\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B", 4, "\uBE72\uBE76", 4, "\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85", 6, "\uBE8E\uBE92", 5, "\uBE9A", 13, "\uBEA9", 14],
+      ["9641", "\uBEB8", 23, "\uBED2\uBED3"],
+      ["9661", "\uBED5\uBED6\uBED9", 6, "\uBEE1\uBEE2\uBEE6", 5, "\uBEED", 8],
+      ["9681", "\uBEF6", 10, "\uBF02", 5, "\uBF0A", 13, "\uBF1A\uBF1E", 33, "\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49", 6, "\uBF52\uBF53\uBF54\uBF56", 44],
+      ["9741", "\uBF83", 16, "\uBF95", 8],
+      ["9761", "\uBF9E", 17, "\uBFB1", 7],
+      ["9781", "\uBFB9", 11, "\uBFC6", 5, "\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5", 6, "\uBFDD\uBFDE\uBFE0\uBFE2", 89, "\uC03D\uC03E\uC03F"],
+      ["9841", "\uC040", 16, "\uC052", 5, "\uC059\uC05A\uC05B"],
+      ["9861", "\uC05D\uC05E\uC05F\uC061", 6, "\uC06A", 15],
+      ["9881", "\uC07A", 21, "\uC092\uC093\uC095\uC096\uC097\uC099", 6, "\uC0A2\uC0A4\uC0A6", 5, "\uC0AE\uC0B1\uC0B2\uC0B7", 4, "\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1", 6, "\uC0DA\uC0DE", 5, "\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED", 6, "\uC0F6\uC0F8\uC0FA", 5, "\uC101\uC102\uC103\uC105\uC106\uC107\uC109", 6, "\uC111\uC112\uC113\uC114\uC116", 5, "\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],
+      ["9941", "\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141", 6, "\uC14A\uC14E", 5, "\uC156\uC157"],
+      ["9961", "\uC159\uC15A\uC15B\uC15D", 6, "\uC166\uC16A", 5, "\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],
+      ["9981", "\uC17C", 8, "\uC186", 5, "\uC18F\uC191\uC192\uC193\uC195\uC197", 4, "\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1", 11, "\uC1BE", 5, "\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD", 6, "\uC1D5\uC1D6\uC1D9", 6, "\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9", 6, "\uC1F2\uC1F4", 7, "\uC1FE\uC1FF\uC201\uC202\uC203\uC205", 6, "\uC20E\uC210\uC212", 5, "\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],
+      ["9a41", "\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235", 16],
+      ["9a61", "\uC246\uC247\uC249", 6, "\uC252\uC253\uC255\uC256\uC257\uC259", 6, "\uC261\uC262\uC263\uC264\uC266"],
+      ["9a81", "\uC267", 4, "\uC26E\uC26F\uC271\uC272\uC273\uC275", 6, "\uC27E\uC280\uC282", 5, "\uC28A", 5, "\uC291", 6, "\uC299\uC29A\uC29C\uC29E", 5, "\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE", 5, "\uC2B6\uC2B8\uC2BA", 33, "\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5", 5, "\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301", 6, "\uC30A\uC30B\uC30E\uC30F"],
+      ["9b41", "\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D", 6, "\uC326\uC327\uC32A", 8],
+      ["9b61", "\uC333", 17, "\uC346", 7],
+      ["9b81", "\uC34E", 25, "\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373", 4, "\uC37A\uC37B\uC37E", 5, "\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D", 50, "\uC3C1", 22, "\uC3DA"],
+      ["9c41", "\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3", 4, "\uC3EA\uC3EB\uC3EC\uC3EE", 5, "\uC3F6\uC3F7\uC3F9", 5],
+      ["9c61", "\uC3FF", 8, "\uC409", 6, "\uC411", 9],
+      ["9c81", "\uC41B", 8, "\uC425", 6, "\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435", 6, "\uC43E", 9, "\uC449", 26, "\uC466\uC467\uC469\uC46A\uC46B\uC46D", 6, "\uC476\uC477\uC478\uC47A", 5, "\uC481", 18, "\uC495", 6, "\uC49D", 12],
+      ["9d41", "\uC4AA", 13, "\uC4B9\uC4BA\uC4BB\uC4BD", 8],
+      ["9d61", "\uC4C6", 25],
+      ["9d81", "\uC4E0", 8, "\uC4EA", 5, "\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502", 9, "\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515", 6, "\uC51D", 10, "\uC52A\uC52B\uC52D\uC52E\uC52F\uC531", 6, "\uC53A\uC53C\uC53E", 5, "\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569", 6, "\uC572\uC576", 5, "\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],
+      ["9e41", "\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1", 7, "\uC5AA", 9, "\uC5B6"],
+      ["9e61", "\uC5B7\uC5BA\uC5BF", 4, "\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9", 6, "\uC5E2\uC5E4\uC5E6\uC5E7"],
+      ["9e81", "\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611", 6, "\uC61A\uC61D", 6, "\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649", 6, "\uC652\uC656", 5, "\uC65E\uC65F\uC661", 10, "\uC66D\uC66E\uC670\uC672", 5, "\uC67A\uC67B\uC67D\uC67E\uC67F\uC681", 6, "\uC68A\uC68C\uC68E", 5, "\uC696\uC697\uC699\uC69A\uC69B\uC69D", 6, "\uC6A6"],
+      ["9f41", "\uC6A8\uC6AA", 5, "\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB", 4, "\uC6C2\uC6C4\uC6C6", 5, "\uC6CE"],
+      ["9f61", "\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5", 6, "\uC6DE\uC6DF\uC6E2", 5, "\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],
+      ["9f81", "\uC6F3", 4, "\uC6FA\uC6FB\uC6FC\uC6FE", 5, "\uC706\uC707\uC709\uC70A\uC70B\uC70D", 6, "\uC716\uC718\uC71A", 5, "\uC722\uC723\uC725\uC726\uC727\uC729", 6, "\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745", 4, "\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761", 6, "\uC769\uC76A\uC76C", 7, "\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B", 4, "\uC7A2\uC7A7", 4, "\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],
+      ["a041", "\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2", 5, "\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1", 6, "\uC7D9\uC7DA\uC7DB\uC7DC"],
+      ["a061", "\uC7DE", 5, "\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED", 13],
+      ["a081", "\uC7FB", 4, "\uC802\uC803\uC805\uC806\uC807\uC809\uC80B", 4, "\uC812\uC814\uC817", 4, "\uC81E\uC81F\uC821\uC822\uC823\uC825", 6, "\uC82E\uC830\uC832", 5, "\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841", 6, "\uC84A\uC84B\uC84E", 5, "\uC855", 26, "\uC872\uC873\uC875\uC876\uC877\uC879\uC87B", 4, "\uC882\uC884\uC888\uC889\uC88A\uC88E", 5, "\uC895", 7, "\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],
+      ["a141", "\uC8A5\uC8A6\uC8A7\uC8A9", 18, "\uC8BE\uC8BF\uC8C0\uC8C1"],
+      ["a161", "\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD", 6, "\uC8D6\uC8D8\uC8DA", 5, "\uC8E2\uC8E3\uC8E5"],
+      ["a181", "\uC8E6", 14, "\uC8F6", 5, "\uC8FE\uC8FF\uC901\uC902\uC903\uC907", 4, "\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 9, "\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],
+      ["a241", "\uC910\uC912", 5, "\uC919", 18],
+      ["a261", "\uC92D", 6, "\uC935", 18],
+      ["a281", "\uC948", 7, "\uC952\uC953\uC955\uC956\uC957\uC959", 6, "\uC962\uC964", 7, "\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],
+      ["a341", "\uC971\uC972\uC973\uC975", 6, "\uC97D", 10, "\uC98A\uC98B\uC98D\uC98E\uC98F"],
+      ["a361", "\uC991", 6, "\uC99A\uC99C\uC99E", 16],
+      ["a381", "\uC9AF", 16, "\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB", 4, "\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01", 58, "\uFFE6\uFF3D", 32, "\uFFE3"],
+      ["a441", "\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2", 5, "\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],
+      ["a461", "\uCA05\uCA06\uCA07\uCA0A\uCA0E", 5, "\uCA15\uCA16\uCA17\uCA19", 12],
+      ["a481", "\uCA26\uCA27\uCA28\uCA2A", 28, "\u3131", 93],
+      ["a541", "\uCA47", 4, "\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55", 6, "\uCA5E\uCA62", 5, "\uCA69\uCA6A"],
+      ["a561", "\uCA6B", 17, "\uCA7E", 5, "\uCA85\uCA86"],
+      ["a581", "\uCA87", 16, "\uCA99", 14, "\u2170", 9],
+      ["a5b0", "\u2160", 9],
+      ["a5c1", "\u0391", 16, "\u03A3", 6],
+      ["a5e1", "\u03B1", 16, "\u03C3", 6],
+      ["a641", "\uCAA8", 19, "\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],
+      ["a661", "\uCAC6", 5, "\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA", 5, "\uCAE1", 6],
+      ["a681", "\uCAE8\uCAE9\uCAEA\uCAEB\uCAED", 6, "\uCAF5", 18, "\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543", 7],
+      ["a741", "\uCB0B", 4, "\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19", 6, "\uCB22", 7],
+      ["a761", "\uCB2A", 22, "\uCB42\uCB43\uCB44"],
+      ["a781", "\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51", 6, "\uCB5A\uCB5B\uCB5C\uCB5E", 5, "\uCB65", 7, "\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399", 9, "\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0", 9, "\u3380", 4, "\u33BA", 5, "\u3390", 4, "\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],
+      ["a841", "\uCB6D", 10, "\uCB7A", 14],
+      ["a861", "\uCB89", 18, "\uCB9D", 6],
+      ["a881", "\uCBA4", 19, "\uCBB9", 11, "\xC6\xD0\xAA\u0126"],
+      ["a8a6", "\u0132"],
+      ["a8a8", "\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],
+      ["a8b1", "\u3260", 27, "\u24D0", 25, "\u2460", 14, "\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],
+      ["a941", "\uCBC5", 14, "\uCBD5", 10],
+      ["a961", "\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA", 18],
+      ["a981", "\uCBFD", 14, "\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15", 6, "\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200", 27, "\u249C", 25, "\u2474", 14, "\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],
+      ["aa41", "\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31", 6, "\uCC3A\uCC3F", 4, "\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],
+      ["aa61", "\uCC4F", 4, "\uCC56\uCC5A", 5, "\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69", 6, "\uCC71\uCC72"],
+      ["aa81", "\uCC73\uCC74\uCC76", 29, "\u3041", 82],
+      ["ab41", "\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1", 6, "\uCCAA\uCCAE", 5, "\uCCB6\uCCB7\uCCB9"],
+      ["ab61", "\uCCBA\uCCBB\uCCBD", 6, "\uCCC6\uCCC8\uCCCA", 5, "\uCCD1\uCCD2\uCCD3\uCCD5", 5],
+      ["ab81", "\uCCDB", 8, "\uCCE5", 6, "\uCCED\uCCEE\uCCEF\uCCF1", 12, "\u30A1", 85],
+      ["ac41", "\uCCFE\uCCFF\uCD00\uCD02", 5, "\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11", 6, "\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],
+      ["ac61", "\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D", 11, "\uCD3A", 4],
+      ["ac81", "\uCD3F", 28, "\uCD5D\uCD5E\uCD5F\u0410", 5, "\u0401\u0416", 25],
+      ["acd1", "\u0430", 5, "\u0451\u0436", 25],
+      ["ad41", "\uCD61\uCD62\uCD63\uCD65", 6, "\uCD6E\uCD70\uCD72", 5, "\uCD79", 7],
+      ["ad61", "\uCD81", 6, "\uCD89", 10, "\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],
+      ["ad81", "\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA", 5, "\uCDB1", 18, "\uCDC5"],
+      ["ae41", "\uCDC6", 5, "\uCDCD\uCDCE\uCDCF\uCDD1", 16],
+      ["ae61", "\uCDE2", 5, "\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1", 6, "\uCDFA\uCDFC\uCDFE", 4],
+      ["ae81", "\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D", 6, "\uCE15\uCE16\uCE17\uCE18\uCE1A", 5, "\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],
+      ["af41", "\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36", 19],
+      ["af61", "\uCE4A", 13, "\uCE5A\uCE5B\uCE5D\uCE5E\uCE62", 5, "\uCE6A\uCE6C"],
+      ["af81", "\uCE6E", 5, "\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D", 6, "\uCE86\uCE88\uCE8A", 5, "\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],
+      ["b041", "\uCE9A", 5, "\uCEA2\uCEA6", 5, "\uCEAE", 12],
+      ["b061", "\uCEBB", 5, "\uCEC2", 19],
+      ["b081", "\uCED6", 13, "\uCEE6\uCEE7\uCEE9\uCEEA\uCEED", 6, "\uCEF6\uCEFA", 5, "\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10", 7, "\uAC19", 4, "\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],
+      ["b141", "\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09", 6, "\uCF12\uCF14\uCF16", 5, "\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],
+      ["b161", "\uCF25", 6, "\uCF2E\uCF32", 5, "\uCF39", 11],
+      ["b181", "\uCF45", 14, "\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D", 6, "\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],
+      ["b241", "\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79", 6, "\uCF81\uCF82\uCF83\uCF84\uCF86", 5, "\uCF8D"],
+      ["b261", "\uCF8E", 18, "\uCFA2", 5, "\uCFA9"],
+      ["b281", "\uCFAA", 5, "\uCFB1", 18, "\uCFC5", 6, "\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],
+      ["b341", "\uCFCC", 19, "\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],
+      ["b361", "\uCFEA", 5, "\uCFF2\uCFF4\uCFF6", 5, "\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005", 5],
+      ["b381", "\uD00B", 5, "\uD012", 5, "\uD019", 19, "\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB", 4, "\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],
+      ["b441", "\uD02E", 5, "\uD036\uD037\uD039\uD03A\uD03B\uD03D", 6, "\uD046\uD048\uD04A", 5],
+      ["b461", "\uD051\uD052\uD053\uD055\uD056\uD057\uD059", 6, "\uD061", 10, "\uD06E\uD06F"],
+      ["b481", "\uD071\uD072\uD073\uD075", 6, "\uD07E\uD07F\uD080\uD082", 18, "\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB", 4, "\uB2F3\uB2F4\uB2F5\uB2F7", 4, "\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],
+      ["b541", "\uD095", 14, "\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD", 5],
+      ["b561", "\uD0B3\uD0B6\uD0B8\uD0BA", 5, "\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA", 5, "\uD0D2\uD0D6", 4],
+      ["b581", "\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5", 6, "\uD0EE\uD0F2", 5, "\uD0F9", 11, "\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],
+      ["b641", "\uD105", 7, "\uD10E", 17],
+      ["b661", "\uD120", 15, "\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],
+      ["b681", "\uD13F\uD142\uD146", 5, "\uD14E\uD14F\uD151\uD152\uD153\uD155", 6, "\uD15E\uD160\uD162", 5, "\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],
+      ["b741", "\uD16E", 13, "\uD17D", 6, "\uD185\uD186\uD187\uD189\uD18A"],
+      ["b761", "\uD18B", 20, "\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],
+      ["b781", "\uD1A9", 6, "\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1", 14, "\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],
+      ["b841", "\uD1D0", 7, "\uD1D9", 17],
+      ["b861", "\uD1EB", 8, "\uD1F5\uD1F6\uD1F7\uD1F9", 13],
+      ["b881", "\uD208\uD20A", 5, "\uD211", 24, "\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE", 4, "\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],
+      ["b941", "\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235", 6, "\uD23E\uD240\uD242", 5, "\uD249\uD24A\uD24B\uD24C"],
+      ["b961", "\uD24D", 14, "\uD25D", 6, "\uD265\uD266\uD267\uD268"],
+      ["b981", "\uD269", 22, "\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14", 4, "\uBC1B", 4, "\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],
+      ["ba41", "\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296", 5, "\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5", 6, "\uD2AD"],
+      ["ba61", "\uD2AE\uD2AF\uD2B0\uD2B2", 5, "\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3", 4, "\uD2CA\uD2CC", 5],
+      ["ba81", "\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD", 6, "\uD2E6", 9, "\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],
+      ["bb41", "\uD2FB", 4, "\uD302\uD304\uD306", 5, "\uD30F\uD311\uD312\uD313\uD315\uD317", 4, "\uD31E\uD322\uD323"],
+      ["bb61", "\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331", 6, "\uD33A\uD33E", 5, "\uD346\uD347\uD348\uD349"],
+      ["bb81", "\uD34A", 31, "\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],
+      ["bc41", "\uD36A", 17, "\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],
+      ["bc61", "\uD388\uD389\uD38A\uD38B\uD38E\uD392", 5, "\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1", 6, "\uD3AA\uD3AC\uD3AE"],
+      ["bc81", "\uD3AF", 4, "\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD", 6, "\uD3C6\uD3C7\uD3CA", 5, "\uD3D1", 5, "\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C", 4, "\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],
+      ["bd41", "\uD3D7\uD3D9", 7, "\uD3E2\uD3E4", 7, "\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],
+      ["bd61", "\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402", 5, "\uD409", 13],
+      ["bd81", "\uD417", 5, "\uD41E", 25, "\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],
+      ["be41", "\uD438", 7, "\uD441\uD442\uD443\uD445", 14],
+      ["be61", "\uD454", 7, "\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465", 7, "\uD46E\uD470\uD471\uD472"],
+      ["be81", "\uD473", 4, "\uD47A\uD47B\uD47D\uD47E\uD481\uD483", 4, "\uD48A\uD48C\uD48E", 5, "\uD495", 8, "\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4", 6, "\uC5CC\uC5CE"],
+      ["bf41", "\uD49E", 10, "\uD4AA", 14],
+      ["bf61", "\uD4B9", 18, "\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],
+      ["bf81", "\uD4D6", 5, "\uD4DD\uD4DE\uD4E0", 7, "\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1", 6, "\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC", 5, "\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],
+      ["c041", "\uD4FE", 5, "\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D", 6, "\uD516\uD518", 5],
+      ["c061", "\uD51E", 25],
+      ["c081", "\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545", 6, "\uD54E\uD550\uD552", 5, "\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751", 7, "\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],
+      ["c141", "\uD564\uD566\uD567\uD56A\uD56C\uD56E", 5, "\uD576\uD577\uD579\uD57A\uD57B\uD57D", 6, "\uD586\uD58A\uD58B"],
+      ["c161", "\uD58C\uD58D\uD58E\uD58F\uD591", 19, "\uD5A6\uD5A7"],
+      ["c181", "\uD5A8", 31, "\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],
+      ["c241", "\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3", 4, "\uD5DA\uD5DC\uD5DE", 5, "\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],
+      ["c261", "\uD5EF", 4, "\uD5F6\uD5F8\uD5FA", 5, "\uD602\uD603\uD605\uD606\uD607\uD609", 6, "\uD612"],
+      ["c281", "\uD616", 5, "\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625", 7, "\uD62E", 9, "\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],
+      ["c341", "\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D", 4],
+      ["c361", "\uD662", 4, "\uD668\uD66A", 5, "\uD672\uD673\uD675", 11],
+      ["c381", "\uD681\uD682\uD684\uD686", 5, "\uD68E\uD68F\uD691\uD692\uD693\uD695", 7, "\uD69E\uD6A0\uD6A2", 5, "\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],
+      ["c441", "\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1", 7, "\uD6BA\uD6BC", 7, "\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],
+      ["c461", "\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA", 5, "\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9", 4],
+      ["c481", "\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6", 5, "\uD6FE\uD6FF\uD701\uD702\uD703\uD705", 11, "\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],
+      ["c541", "\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721", 6, "\uD72A\uD72C\uD72E", 5, "\uD736\uD737\uD739"],
+      ["c561", "\uD73A\uD73B\uD73D", 6, "\uD745\uD746\uD748\uD74A", 5, "\uD752\uD753\uD755\uD75A", 4],
+      ["c581", "\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775", 6, "\uD77E\uD77F\uD780\uD782", 5, "\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],
+      ["c641", "\uD78D\uD78E\uD78F\uD791", 6, "\uD79A\uD79C\uD79E", 5],
+      ["c6a1", "\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],
+      ["c7a1", "\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],
+      ["c8a1", "\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],
+      ["caa1", "\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],
+      ["cba1", "\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],
+      ["cca1", "\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],
+      ["cda1", "\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],
+      ["cea1", "\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],
+      ["cfa1", "\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],
+      ["d0a1", "\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],
+      ["d1a1", "\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E", 5, "\u90A3\uF914", 4, "\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],
+      ["d2a1", "\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928", 4, "\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933", 5, "\u99D1\uF939", 10, "\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A", 7, "\u5AE9\u8A25\u677B\u7D10\uF952", 5, "\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],
+      ["d3a1", "\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],
+      ["d4a1", "\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],
+      ["d5a1", "\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],
+      ["d6a1", "\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],
+      ["d7a1", "\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],
+      ["d8a1", "\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],
+      ["d9a1", "\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],
+      ["daa1", "\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],
+      ["dba1", "\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],
+      ["dca1", "\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],
+      ["dda1", "\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],
+      ["dea1", "\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],
+      ["dfa1", "\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],
+      ["e0a1", "\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],
+      ["e1a1", "\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],
+      ["e2a1", "\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],
+      ["e3a1", "\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],
+      ["e4a1", "\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],
+      ["e5a1", "\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],
+      ["e6a1", "\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],
+      ["e7a1", "\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],
+      ["e8a1", "\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],
+      ["e9a1", "\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],
+      ["eaa1", "\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],
+      ["eba1", "\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],
+      ["eca1", "\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],
+      ["eda1", "\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],
+      ["eea1", "\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],
+      ["efa1", "\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],
+      ["f0a1", "\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],
+      ["f1a1", "\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],
+      ["f2a1", "\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],
+      ["f3a1", "\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],
+      ["f4a1", "\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],
+      ["f5a1", "\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],
+      ["f6a1", "\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],
+      ["f7a1", "\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],
+      ["f8a1", "\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],
+      ["f9a1", "\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],
+      ["faa1", "\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],
+      ["fba1", "\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],
+      ["fca1", "\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],
+      ["fda1", "\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json
+var require_cp950 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) {
+    module2.exports = [
+      ["0", "\0", 127],
+      ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],
+      ["a1a1", "\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62", 4, "\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],
+      ["a240", "\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581", 7, "\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],
+      ["a2a1", "\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10", 9, "\u2160", 9, "\u3021", 8, "\u5341\u5344\u5345\uFF21", 25, "\uFF41", 21],
+      ["a340", "\uFF57\uFF58\uFF59\uFF5A\u0391", 16, "\u03A3", 6, "\u03B1", 16, "\u03C3", 6, "\u3105", 10],
+      ["a3a1", "\u3110", 25, "\u02D9\u02C9\u02CA\u02C7\u02CB"],
+      ["a3e1", "\u20AC"],
+      ["a440", "\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],
+      ["a4a1", "\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],
+      ["a540", "\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],
+      ["a5a1", "\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],
+      ["a640", "\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],
+      ["a6a1", "\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],
+      ["a740", "\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],
+      ["a7a1", "\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],
+      ["a840", "\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],
+      ["a8a1", "\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],
+      ["a940", "\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],
+      ["a9a1", "\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],
+      ["aa40", "\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],
+      ["aaa1", "\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],
+      ["ab40", "\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],
+      ["aba1", "\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],
+      ["ac40", "\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],
+      ["aca1", "\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],
+      ["ad40", "\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],
+      ["ada1", "\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],
+      ["ae40", "\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],
+      ["aea1", "\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],
+      ["af40", "\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],
+      ["afa1", "\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],
+      ["b040", "\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],
+      ["b0a1", "\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],
+      ["b140", "\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],
+      ["b1a1", "\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],
+      ["b240", "\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],
+      ["b2a1", "\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],
+      ["b340", "\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],
+      ["b3a1", "\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],
+      ["b440", "\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],
+      ["b4a1", "\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],
+      ["b540", "\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],
+      ["b5a1", "\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],
+      ["b640", "\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],
+      ["b6a1", "\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],
+      ["b740", "\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],
+      ["b7a1", "\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],
+      ["b840", "\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],
+      ["b8a1", "\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],
+      ["b940", "\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],
+      ["b9a1", "\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],
+      ["ba40", "\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],
+      ["baa1", "\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],
+      ["bb40", "\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],
+      ["bba1", "\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],
+      ["bc40", "\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],
+      ["bca1", "\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],
+      ["bd40", "\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],
+      ["bda1", "\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],
+      ["be40", "\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],
+      ["bea1", "\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],
+      ["bf40", "\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],
+      ["bfa1", "\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],
+      ["c040", "\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],
+      ["c0a1", "\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],
+      ["c140", "\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],
+      ["c1a1", "\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],
+      ["c240", "\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],
+      ["c2a1", "\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],
+      ["c340", "\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],
+      ["c3a1", "\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],
+      ["c440", "\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],
+      ["c4a1", "\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],
+      ["c540", "\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],
+      ["c5a1", "\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],
+      ["c640", "\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],
+      ["c940", "\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],
+      ["c9a1", "\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],
+      ["ca40", "\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],
+      ["caa1", "\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],
+      ["cb40", "\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],
+      ["cba1", "\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],
+      ["cc40", "\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],
+      ["cca1", "\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],
+      ["cd40", "\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],
+      ["cda1", "\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],
+      ["ce40", "\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],
+      ["cea1", "\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],
+      ["cf40", "\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],
+      ["cfa1", "\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],
+      ["d040", "\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],
+      ["d0a1", "\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],
+      ["d140", "\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],
+      ["d1a1", "\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],
+      ["d240", "\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],
+      ["d2a1", "\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],
+      ["d340", "\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],
+      ["d3a1", "\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],
+      ["d440", "\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],
+      ["d4a1", "\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],
+      ["d540", "\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],
+      ["d5a1", "\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],
+      ["d640", "\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],
+      ["d6a1", "\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],
+      ["d740", "\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],
+      ["d7a1", "\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],
+      ["d840", "\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],
+      ["d8a1", "\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],
+      ["d940", "\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],
+      ["d9a1", "\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],
+      ["da40", "\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],
+      ["daa1", "\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],
+      ["db40", "\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],
+      ["dba1", "\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],
+      ["dc40", "\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],
+      ["dca1", "\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],
+      ["dd40", "\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],
+      ["dda1", "\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],
+      ["de40", "\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],
+      ["dea1", "\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],
+      ["df40", "\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],
+      ["dfa1", "\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],
+      ["e040", "\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],
+      ["e0a1", "\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],
+      ["e140", "\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],
+      ["e1a1", "\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],
+      ["e240", "\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],
+      ["e2a1", "\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],
+      ["e340", "\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],
+      ["e3a1", "\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],
+      ["e440", "\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],
+      ["e4a1", "\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],
+      ["e540", "\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],
+      ["e5a1", "\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],
+      ["e640", "\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],
+      ["e6a1", "\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],
+      ["e740", "\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],
+      ["e7a1", "\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],
+      ["e840", "\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],
+      ["e8a1", "\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],
+      ["e940", "\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],
+      ["e9a1", "\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],
+      ["ea40", "\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],
+      ["eaa1", "\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],
+      ["eb40", "\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],
+      ["eba1", "\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],
+      ["ec40", "\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],
+      ["eca1", "\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],
+      ["ed40", "\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],
+      ["eda1", "\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],
+      ["ee40", "\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],
+      ["eea1", "\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],
+      ["ef40", "\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],
+      ["efa1", "\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],
+      ["f040", "\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],
+      ["f0a1", "\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],
+      ["f140", "\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],
+      ["f1a1", "\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],
+      ["f240", "\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],
+      ["f2a1", "\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],
+      ["f340", "\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],
+      ["f3a1", "\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],
+      ["f440", "\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],
+      ["f4a1", "\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],
+      ["f540", "\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],
+      ["f5a1", "\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],
+      ["f640", "\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],
+      ["f6a1", "\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],
+      ["f740", "\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],
+      ["f7a1", "\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],
+      ["f840", "\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],
+      ["f8a1", "\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],
+      ["f940", "\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],
+      ["f9a1", "\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json
+var require_big5_added = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) {
+    module2.exports = [
+      ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],
+      ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],
+      ["87a1", "\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],
+      ["8840", "\u31C0", 4, "\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],
+      ["88a1", "\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],
+      ["8940", "\u{2A3A9}\u{21145}"],
+      ["8943", "\u650A"],
+      ["8946", "\u4E3D\u6EDD\u9D4E\u91DF"],
+      ["894c", "\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],
+      ["89a1", "\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],
+      ["89ab", "\u918C\u78B8\u915E\u80BC"],
+      ["89b0", "\u8D0B\u80F6\u{209E7}"],
+      ["89b5", "\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],
+      ["89c1", "\u6E9A\u823E\u7519"],
+      ["89c5", "\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],
+      ["8a40", "\u{27D84}\u5525"],
+      ["8a43", "\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],
+      ["8a64", "\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],
+      ["8a76", "\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],
+      ["8aa1", "\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],
+      ["8aac", "\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],
+      ["8ab2", "\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],
+      ["8abb", "\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],
+      ["8ac9", "\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],
+      ["8ace", "\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],
+      ["8adf", "\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],
+      ["8af6", "\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],
+      ["8b40", "\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],
+      ["8b55", "\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],
+      ["8ba1", "\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],
+      ["8bde", "\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],
+      ["8c40", "\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],
+      ["8ca1", "\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],
+      ["8ca7", "\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],
+      ["8cc9", "\u9868\u676B\u4276\u573D"],
+      ["8cce", "\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],
+      ["8ce6", "\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],
+      ["8d40", "\u{20B9F}"],
+      ["8d42", "\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],
+      ["8da1", "\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],
+      ["8e40", "\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],
+      ["8ea1", "\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],
+      ["8f40", "\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],
+      ["8fa1", "\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],
+      ["9040", "\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],
+      ["90a1", "\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],
+      ["9140", "\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],
+      ["91a1", "\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],
+      ["9240", "\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],
+      ["92a1", "\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],
+      ["9340", "\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],
+      ["93a1", "\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],
+      ["9440", "\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],
+      ["94a1", "\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],
+      ["9540", "\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],
+      ["95a1", "\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],
+      ["9640", "\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],
+      ["96a1", "\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],
+      ["9740", "\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],
+      ["97a1", "\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],
+      ["9840", "\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],
+      ["98a1", "\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],
+      ["9940", "\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],
+      ["99a1", "\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],
+      ["9a40", "\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],
+      ["9aa1", "\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],
+      ["9b40", "\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],
+      ["9b62", "\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],
+      ["9ba1", "\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],
+      ["9c40", "\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],
+      ["9ca1", "\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],
+      ["9d40", "\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],
+      ["9da1", "\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],
+      ["9e40", "\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],
+      ["9ea1", "\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],
+      ["9ead", "\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],
+      ["9ec5", "\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],
+      ["9ef5", "\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],
+      ["9f40", "\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],
+      ["9f4f", "\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],
+      ["9fa1", "\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],
+      ["9fae", "\u9159\u9681\u915C"],
+      ["9fb2", "\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],
+      ["9fc1", "\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],
+      ["9fc9", "\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],
+      ["9fdb", "\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],
+      ["9fe7", "\u6BFA\u8818\u7F78"],
+      ["9feb", "\u5620\u{2A64A}\u8E77\u9F53"],
+      ["9ff0", "\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],
+      ["a040", "\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],
+      ["a055", "\u{2183B}\u{26E05}"],
+      ["a058", "\u8A7E\u{2251B}"],
+      ["a05b", "\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],
+      ["a063", "\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],
+      ["a073", "\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],
+      ["a0a1", "\u5D57\u{28BC2}\u8FDA\u{28E39}"],
+      ["a0a6", "\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],
+      ["a0ae", "\u77FE"],
+      ["a0b0", "\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],
+      ["a0d4", "\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],
+      ["a0e2", "\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],
+      ["a3c0", "\u2400", 31, "\u2421"],
+      ["c6a1", "\u2460", 9, "\u2474", 9, "\u2170", 9, "\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041", 23],
+      ["c740", "\u3059", 58, "\u30A1\u30A2\u30A3\u30A4"],
+      ["c7a1", "\u30A5", 81, "\u0410", 5, "\u0401\u0416", 4],
+      ["c840", "\u041B", 26, "\u0451\u0436", 25, "\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],
+      ["c8a1", "\u9FB0\u5188\u9FB1\u{27607}"],
+      ["c8cd", "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],
+      ["c8f5", "\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],
+      ["f9fe", "\uFFED"],
+      ["fa40", "\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],
+      ["faa1", "\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],
+      ["fb40", "\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],
+      ["fba1", "\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],
+      ["fc40", "\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],
+      ["fca1", "\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],
+      ["fd40", "\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],
+      ["fda1", "\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],
+      ["fe40", "\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],
+      ["fea1", "\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]
+    ];
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js
+var require_dbcs_data = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) {
+    "use strict";
+    module2.exports = {
+      // == Japanese/ShiftJIS ====================================================
+      // All japanese encodings are based on JIS X set of standards:
+      // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF.
+      // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes. 
+      //              Has several variations in 1978, 1983, 1990 and 1997.
+      // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead.
+      // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233.
+      //              2 planes, first is superset of 0208, second - revised 0212.
+      //              Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx)
+      // Byte encodings are:
+      //  * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte
+      //               encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC.
+      //               Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI.
+      //  * EUC-JP:    Up to 3 bytes per character. Used mostly on *nixes.
+      //               0x00-0x7F       - lower part of 0201
+      //               0x8E, 0xA1-0xDF - upper part of 0201
+      //               (0xA1-0xFE)x2   - 0208 plane (94x94).
+      //               0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94).
+      //  * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon.
+      //               Used as-is in ISO2022 family.
+      //  * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII, 
+      //                0201-1976 Roman, 0208-1978, 0208-1983.
+      //  * ISO2022-JP-1: Adds esc seq for 0212-1990.
+      //  * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7.
+      //  * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2.
+      //  * ISO2022-JP-2004: Adds 0213-2004 Plane 1.
+      //
+      // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes.
+      //
+      // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html
+      "shiftjis": {
+        type: "_dbcs",
+        table: function() {
+          return require_shiftjis();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 },
+        encodeSkipVals: [{ from: 60736, to: 63808 }]
+      },
+      "csshiftjis": "shiftjis",
+      "mskanji": "shiftjis",
+      "sjis": "shiftjis",
+      "windows31j": "shiftjis",
+      "ms31j": "shiftjis",
+      "xsjis": "shiftjis",
+      "windows932": "shiftjis",
+      "ms932": "shiftjis",
+      "932": "shiftjis",
+      "cp932": "shiftjis",
+      "eucjp": {
+        type: "_dbcs",
+        table: function() {
+          return require_eucjp();
+        },
+        encodeAdd: { "\xA5": 92, "\u203E": 126 }
+      },
+      // TODO: KDDI extension to Shift_JIS
+      // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes.
+      // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars.
+      // == Chinese/GBK ==========================================================
+      // http://en.wikipedia.org/wiki/GBK
+      // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder
+      // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936
+      "gb2312": "cp936",
+      "gb231280": "cp936",
+      "gb23121980": "cp936",
+      "csgb2312": "cp936",
+      "csiso58gb231280": "cp936",
+      "euccn": "cp936",
+      // Microsoft's CP936 is a subset and approximation of GBK.
+      "windows936": "cp936",
+      "ms936": "cp936",
+      "936": "cp936",
+      "cp936": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936();
+        }
+      },
+      // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other.
+      "gbk": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        }
+      },
+      "xgbk": "gbk",
+      "isoir58": "gbk",
+      // GB18030 is an algorithmic extension of GBK.
+      // Main source: https://www.w3.org/TR/encoding/#gbk-encoder
+      // http://icu-project.org/docs/papers/gb18030.html
+      // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml
+      // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0
+      "gb18030": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp936().concat(require_gbk_added());
+        },
+        gb18030: function() {
+          return require_gb18030_ranges();
+        },
+        encodeSkipVals: [128],
+        encodeAdd: { "\u20AC": 41699 }
+      },
+      "chinese": "gb18030",
+      // == Korean ===============================================================
+      // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same.
+      "windows949": "cp949",
+      "ms949": "cp949",
+      "949": "cp949",
+      "cp949": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp949();
+        }
+      },
+      "cseuckr": "cp949",
+      "csksc56011987": "cp949",
+      "euckr": "cp949",
+      "isoir149": "cp949",
+      "korean": "cp949",
+      "ksc56011987": "cp949",
+      "ksc56011989": "cp949",
+      "ksc5601": "cp949",
+      // == Big5/Taiwan/Hong Kong ================================================
+      // There are lots of tables for Big5 and cp950. Please see the following links for history:
+      // http://moztw.org/docs/big5/  http://www.haible.de/bruno/charsets/conversion-tables/Big5.html
+      // Variations, in roughly number of defined chars:
+      //  * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT
+      //  * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/
+      //  * Big5-2003 (Taiwan standard) almost superset of cp950.
+      //  * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers.
+      //  * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard. 
+      //    many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years.
+      //    Plus, it has 4 combining sequences.
+      //    Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299
+      //    because big5-hkscs is the only encoding to include astral characters in non-algorithmic way.
+      //    Implementations are not consistent within browsers; sometimes labeled as just big5.
+      //    MS Internet Explorer switches from big5 to big5-hkscs when a patch applied.
+      //    Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31
+      //    In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s.
+      //    Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt
+      //                   http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt
+      // 
+      // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder
+      // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong.
+      "windows950": "cp950",
+      "ms950": "cp950",
+      "950": "cp950",
+      "cp950": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950();
+        }
+      },
+      // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus.
+      "big5": "big5hkscs",
+      "big5hkscs": {
+        type: "_dbcs",
+        table: function() {
+          return require_cp950().concat(require_big5_added());
+        },
+        encodeSkipVals: [
+          // Although Encoding Standard says we should avoid encoding to HKSCS area (See Step 1 of
+          // https://encoding.spec.whatwg.org/#index-big5-pointer), we still do it to increase compatibility with ICU.
+          // But if a single unicode point can be encoded both as HKSCS and regular Big5, we prefer the latter.
+          36457,
+          36463,
+          36478,
+          36523,
+          36532,
+          36557,
+          36560,
+          36695,
+          36713,
+          36718,
+          36811,
+          36862,
+          36973,
+          36986,
+          37060,
+          37084,
+          37105,
+          37311,
+          37551,
+          37552,
+          37553,
+          37554,
+          37585,
+          37959,
+          38090,
+          38361,
+          38652,
+          39285,
+          39798,
+          39800,
+          39803,
+          39878,
+          39902,
+          39916,
+          39926,
+          40002,
+          40019,
+          40034,
+          40040,
+          40043,
+          40055,
+          40124,
+          40125,
+          40144,
+          40279,
+          40282,
+          40388,
+          40431,
+          40443,
+          40617,
+          40687,
+          40701,
+          40800,
+          40907,
+          41079,
+          41180,
+          41183,
+          36812,
+          37576,
+          38468,
+          38637,
+          // Step 2 of https://encoding.spec.whatwg.org/#index-big5-pointer: Use last pointer for U+2550, U+255E, U+2561, U+256A, U+5341, or U+5345
+          41636,
+          41637,
+          41639,
+          41638,
+          41676,
+          41678
+        ]
+      },
+      "cnbig5": "big5hkscs",
+      "csbig5": "big5hkscs",
+      "xxbig5": "big5hkscs"
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js
+var require_encodings = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/encodings/index.js"(exports2, module2) {
+    "use strict";
+    var modules = [
+      require_internal(),
+      require_utf32(),
+      require_utf16(),
+      require_utf7(),
+      require_sbcs_codec(),
+      require_sbcs_data(),
+      require_sbcs_data_generated(),
+      require_dbcs_codec(),
+      require_dbcs_data()
+    ];
+    for (i = 0; i < modules.length; i++) {
+      module2 = modules[i];
+      for (enc in module2)
+        if (Object.prototype.hasOwnProperty.call(module2, enc))
+          exports2[enc] = module2[enc];
+    }
+    var module2;
+    var enc;
+    var i;
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js
+var require_streams = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/streams.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    module2.exports = function(stream_module) {
+      var Transform = stream_module.Transform;
+      function IconvLiteEncoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.decodeStrings = false;
+        Transform.call(this, options);
+      }
+      IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteEncoderStream }
+      });
+      IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (typeof chunk != "string")
+          return done(new Error("Iconv encoding stream needs strings as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteEncoderStream.prototype.collect = function(cb) {
+        var chunks = [];
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          chunks.push(chunk);
+        });
+        this.on("end", function() {
+          cb(null, Buffer2.concat(chunks));
+        });
+        return this;
+      };
+      function IconvLiteDecoderStream(conv, options) {
+        this.conv = conv;
+        options = options || {};
+        options.encoding = this.encoding = "utf8";
+        Transform.call(this, options);
+      }
+      IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, {
+        constructor: { value: IconvLiteDecoderStream }
+      });
+      IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) {
+        if (!Buffer2.isBuffer(chunk) && !(chunk instanceof Uint8Array))
+          return done(new Error("Iconv decoding stream needs buffers as its input."));
+        try {
+          var res = this.conv.write(chunk);
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype._flush = function(done) {
+        try {
+          var res = this.conv.end();
+          if (res && res.length) this.push(res, this.encoding);
+          done();
+        } catch (e) {
+          done(e);
+        }
+      };
+      IconvLiteDecoderStream.prototype.collect = function(cb) {
+        var res = "";
+        this.on("error", cb);
+        this.on("data", function(chunk) {
+          res += chunk;
+        });
+        this.on("end", function() {
+          cb(null, res);
+        });
+        return this;
+      };
+      return {
+        IconvLiteEncoderStream,
+        IconvLiteDecoderStream
+      };
+    };
+  }
+});
+
+// ../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js
+var require_lib8 = __commonJS({
+  "../../../node_modules/encoding/node_modules/iconv-lite/lib/index.js"(exports2, module2) {
+    "use strict";
+    var Buffer2 = require_safer().Buffer;
+    var bomHandling = require_bom_handling();
+    var iconv = module2.exports;
+    iconv.encodings = null;
+    iconv.defaultCharUnicode = "\uFFFD";
+    iconv.defaultCharSingleByte = "?";
+    iconv.encode = function encode(str, encoding, options) {
+      str = "" + (str || "");
+      var encoder = iconv.getEncoder(encoding, options);
+      var res = encoder.write(str);
+      var trail = encoder.end();
+      return trail && trail.length > 0 ? Buffer2.concat([res, trail]) : res;
+    };
+    iconv.decode = function decode(buf, encoding, options) {
+      if (typeof buf === "string") {
+        if (!iconv.skipDecodeWarning) {
+          console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding");
+          iconv.skipDecodeWarning = true;
+        }
+        buf = Buffer2.from("" + (buf || ""), "binary");
+      }
+      var decoder2 = iconv.getDecoder(encoding, options);
+      var res = decoder2.write(buf);
+      var trail = decoder2.end();
+      return trail ? res + trail : res;
+    };
+    iconv.encodingExists = function encodingExists(enc) {
+      try {
+        iconv.getCodec(enc);
+        return true;
+      } catch (e) {
+        return false;
+      }
+    };
+    iconv.toEncoding = iconv.encode;
+    iconv.fromEncoding = iconv.decode;
+    iconv._codecDataCache = {};
+    iconv.getCodec = function getCodec(encoding) {
+      if (!iconv.encodings)
+        iconv.encodings = require_encodings();
+      var enc = iconv._canonicalizeEncoding(encoding);
+      var codecOptions = {};
+      while (true) {
+        var codec = iconv._codecDataCache[enc];
+        if (codec)
+          return codec;
+        var codecDef = iconv.encodings[enc];
+        switch (typeof codecDef) {
+          case "string":
+            enc = codecDef;
+            break;
+          case "object":
+            for (var key in codecDef)
+              codecOptions[key] = codecDef[key];
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            enc = codecDef.type;
+            break;
+          case "function":
+            if (!codecOptions.encodingName)
+              codecOptions.encodingName = enc;
+            codec = new codecDef(codecOptions, iconv);
+            iconv._codecDataCache[codecOptions.encodingName] = codec;
+            return codec;
+          default:
+            throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '" + enc + "')");
+        }
+      }
+    };
+    iconv._canonicalizeEncoding = function(encoding) {
+      return ("" + encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, "");
+    };
+    iconv.getEncoder = function getEncoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), encoder = new codec.encoder(options, codec);
+      if (codec.bomAware && options && options.addBOM)
+        encoder = new bomHandling.PrependBOM(encoder, options);
+      return encoder;
+    };
+    iconv.getDecoder = function getDecoder(encoding, options) {
+      var codec = iconv.getCodec(encoding), decoder2 = new codec.decoder(options, codec);
+      if (codec.bomAware && !(options && options.stripBOM === false))
+        decoder2 = new bomHandling.StripBOM(decoder2, options);
+      return decoder2;
+    };
+    iconv.enableStreamingAPI = function enableStreamingAPI(stream_module2) {
+      if (iconv.supportsStreams)
+        return;
+      var streams = require_streams()(stream_module2);
+      iconv.IconvLiteEncoderStream = streams.IconvLiteEncoderStream;
+      iconv.IconvLiteDecoderStream = streams.IconvLiteDecoderStream;
+      iconv.encodeStream = function encodeStream(encoding, options) {
+        return new iconv.IconvLiteEncoderStream(iconv.getEncoder(encoding, options), options);
+      };
+      iconv.decodeStream = function decodeStream(encoding, options) {
+        return new iconv.IconvLiteDecoderStream(iconv.getDecoder(encoding, options), options);
+      };
+      iconv.supportsStreams = true;
+    };
+    var stream_module;
+    try {
+      stream_module = require("stream");
+    } catch (e) {
+    }
+    if (stream_module && stream_module.Transform) {
+      iconv.enableStreamingAPI(stream_module);
+    } else {
+      iconv.encodeStream = iconv.decodeStream = function() {
+        throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.");
+      };
+    }
+    if (false) {
+      console.error("iconv-lite warning: js files use non-utf8 encoding. See https://github.com/ashtuchkin/iconv-lite/wiki/Javascript-source-file-encodings for more info.");
+    }
+  }
+});
+
+// ../../../node_modules/encoding/lib/encoding.js
+var require_encoding = __commonJS({
+  "../../../node_modules/encoding/lib/encoding.js"(exports2, module2) {
+    "use strict";
+    var iconvLite = require_lib8();
+    module2.exports.convert = convert3;
+    function convert3(str, to, from) {
+      from = checkEncoding(from || "UTF-8");
+      to = checkEncoding(to || "UTF-8");
+      str = str || "";
+      var result;
+      if (from !== "UTF-8" && typeof str === "string") {
+        str = Buffer.from(str, "binary");
+      }
+      if (from === to) {
+        if (typeof str === "string") {
+          result = Buffer.from(str);
+        } else {
+          result = str;
+        }
+      } else {
+        try {
+          result = convertIconvLite(str, to, from);
+        } catch (E) {
+          console.error(E);
+          result = str;
+        }
+      }
+      if (typeof result === "string") {
+        result = Buffer.from(result, "utf-8");
+      }
+      return result;
+    }
+    function convertIconvLite(str, to, from) {
+      if (to === "UTF-8") {
+        return iconvLite.decode(str, from);
+      } else if (from === "UTF-8") {
+        return iconvLite.encode(str, to);
+      } else {
+        return iconvLite.encode(iconvLite.decode(str, from), to);
+      }
+    }
+    function checkEncoding(name) {
+      return (name || "").toString().trim().replace(/^latin[\-_]?(\d+)$/i, "ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i, "WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i, "UTF-$1").replace(/^ks_c_5601\-1987$/i, "CP949").replace(/^us[\-_]?ascii$/i, "ASCII").toUpperCase();
+    }
+  }
+});
+
+// node_modules/node-fetch/lib/index.js
+var require_lib9 = __commonJS({
+  "node_modules/node-fetch/lib/index.js"(exports2, module2) {
+    "use strict";
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    function _interopDefault(ex) {
+      return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex;
+    }
+    var Stream = _interopDefault(require("stream"));
+    var http = _interopDefault(require("http"));
+    var Url = _interopDefault(require("url"));
+    var whatwgUrl = _interopDefault(require_public_api());
+    var https2 = _interopDefault(require("https"));
+    var zlib3 = _interopDefault(require("zlib"));
+    var Readable = Stream.Readable;
+    var BUFFER = /* @__PURE__ */ Symbol("buffer");
+    var TYPE = /* @__PURE__ */ Symbol("type");
+    var Blob2 = class _Blob {
+      constructor() {
+        this[TYPE] = "";
+        const blobParts = arguments[0];
+        const options = arguments[1];
+        const buffers = [];
+        let size = 0;
+        if (blobParts) {
+          const a = blobParts;
+          const length = Number(a.length);
+          for (let i = 0; i < length; i++) {
+            const element = a[i];
+            let buffer;
+            if (element instanceof Buffer) {
+              buffer = element;
+            } else if (ArrayBuffer.isView(element)) {
+              buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);
+            } else if (element instanceof ArrayBuffer) {
+              buffer = Buffer.from(element);
+            } else if (element instanceof _Blob) {
+              buffer = element[BUFFER];
+            } else {
+              buffer = Buffer.from(typeof element === "string" ? element : String(element));
+            }
+            size += buffer.length;
+            buffers.push(buffer);
+          }
+        }
+        this[BUFFER] = Buffer.concat(buffers);
+        let type = options && options.type !== void 0 && String(options.type).toLowerCase();
+        if (type && !/[^\u0020-\u007E]/.test(type)) {
+          this[TYPE] = type;
+        }
+      }
+      get size() {
+        return this[BUFFER].length;
+      }
+      get type() {
+        return this[TYPE];
+      }
+      text() {
+        return Promise.resolve(this[BUFFER].toString());
+      }
+      arrayBuffer() {
+        const buf = this[BUFFER];
+        const ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        return Promise.resolve(ab);
+      }
+      stream() {
+        const readable = new Readable();
+        readable._read = function() {
+        };
+        readable.push(this[BUFFER]);
+        readable.push(null);
+        return readable;
+      }
+      toString() {
+        return "[object Blob]";
+      }
+      slice() {
+        const size = this.size;
+        const start = arguments[0];
+        const end = arguments[1];
+        let relativeStart, relativeEnd;
+        if (start === void 0) {
+          relativeStart = 0;
+        } else if (start < 0) {
+          relativeStart = Math.max(size + start, 0);
+        } else {
+          relativeStart = Math.min(start, size);
+        }
+        if (end === void 0) {
+          relativeEnd = size;
+        } else if (end < 0) {
+          relativeEnd = Math.max(size + end, 0);
+        } else {
+          relativeEnd = Math.min(end, size);
+        }
+        const span = Math.max(relativeEnd - relativeStart, 0);
+        const buffer = this[BUFFER];
+        const slicedBuffer = buffer.slice(relativeStart, relativeStart + span);
+        const blob = new _Blob([], { type: arguments[2] });
+        blob[BUFFER] = slicedBuffer;
+        return blob;
+      }
+    };
+    Object.defineProperties(Blob2.prototype, {
+      size: { enumerable: true },
+      type: { enumerable: true },
+      slice: { enumerable: true }
+    });
+    Object.defineProperty(Blob2.prototype, Symbol.toStringTag, {
+      value: "Blob",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function FetchError(message, type, systemError) {
+      Error.call(this, message);
+      this.message = message;
+      this.type = type;
+      if (systemError) {
+        this.code = this.errno = systemError.code;
+      }
+      Error.captureStackTrace(this, this.constructor);
+    }
+    FetchError.prototype = Object.create(Error.prototype);
+    FetchError.prototype.constructor = FetchError;
+    FetchError.prototype.name = "FetchError";
+    var convert3;
+    try {
+      convert3 = require_encoding().convert;
+    } catch (e) {
+    }
+    var INTERNALS = /* @__PURE__ */ Symbol("Body internals");
+    var PassThrough = Stream.PassThrough;
+    function Body(body) {
+      var _this = this;
+      var _ref = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, _ref$size = _ref.size;
+      let size = _ref$size === void 0 ? 0 : _ref$size;
+      var _ref$timeout = _ref.timeout;
+      let timeout = _ref$timeout === void 0 ? 0 : _ref$timeout;
+      if (body == null) {
+        body = null;
+      } else if (isURLSearchParams(body)) {
+        body = Buffer.from(body.toString());
+      } else if (isBlob2(body)) ;
+      else if (Buffer.isBuffer(body)) ;
+      else if (Object.prototype.toString.call(body) === "[object ArrayBuffer]") {
+        body = Buffer.from(body);
+      } else if (ArrayBuffer.isView(body)) {
+        body = Buffer.from(body.buffer, body.byteOffset, body.byteLength);
+      } else if (body instanceof Stream) ;
+      else {
+        body = Buffer.from(String(body));
+      }
+      this[INTERNALS] = {
+        body,
+        disturbed: false,
+        error: null
+      };
+      this.size = size;
+      this.timeout = timeout;
+      if (body instanceof Stream) {
+        body.on("error", function(err) {
+          const error = err.name === "AbortError" ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, "system", err);
+          _this[INTERNALS].error = error;
+        });
+      }
+    }
+    Body.prototype = {
+      get body() {
+        return this[INTERNALS].body;
+      },
+      get bodyUsed() {
+        return this[INTERNALS].disturbed;
+      },
+      /**
+       * Decode response as ArrayBuffer
+       *
+       * @return  Promise
+       */
+      arrayBuffer() {
+        return consumeBody.call(this).then(function(buf) {
+          return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+        });
+      },
+      /**
+       * Return raw response as Blob
+       *
+       * @return Promise
+       */
+      blob() {
+        let ct = this.headers && this.headers.get("content-type") || "";
+        return consumeBody.call(this).then(function(buf) {
+          return Object.assign(
+            // Prevent copying
+            new Blob2([], {
+              type: ct.toLowerCase()
+            }),
+            {
+              [BUFFER]: buf
+            }
+          );
+        });
+      },
+      /**
+       * Decode response as json
+       *
+       * @return  Promise
+       */
+      json() {
+        var _this2 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          try {
+            return JSON.parse(buffer.toString());
+          } catch (err) {
+            return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, "invalid-json"));
+          }
+        });
+      },
+      /**
+       * Decode response as text
+       *
+       * @return  Promise
+       */
+      text() {
+        return consumeBody.call(this).then(function(buffer) {
+          return buffer.toString();
+        });
+      },
+      /**
+       * Decode response as buffer (non-spec api)
+       *
+       * @return  Promise
+       */
+      buffer() {
+        return consumeBody.call(this);
+      },
+      /**
+       * Decode response as text, while automatically detecting the encoding and
+       * trying to decode to UTF-8 (non-spec api)
+       *
+       * @return  Promise
+       */
+      textConverted() {
+        var _this3 = this;
+        return consumeBody.call(this).then(function(buffer) {
+          return convertBody(buffer, _this3.headers);
+        });
+      }
+    };
+    Object.defineProperties(Body.prototype, {
+      body: { enumerable: true },
+      bodyUsed: { enumerable: true },
+      arrayBuffer: { enumerable: true },
+      blob: { enumerable: true },
+      json: { enumerable: true },
+      text: { enumerable: true }
+    });
+    Body.mixIn = function(proto) {
+      for (const name of Object.getOwnPropertyNames(Body.prototype)) {
+        if (!(name in proto)) {
+          const desc = Object.getOwnPropertyDescriptor(Body.prototype, name);
+          Object.defineProperty(proto, name, desc);
+        }
+      }
+    };
+    function consumeBody() {
+      var _this4 = this;
+      if (this[INTERNALS].disturbed) {
+        return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));
+      }
+      this[INTERNALS].disturbed = true;
+      if (this[INTERNALS].error) {
+        return Body.Promise.reject(this[INTERNALS].error);
+      }
+      let body = this.body;
+      if (body === null) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      if (isBlob2(body)) {
+        body = body.stream();
+      }
+      if (Buffer.isBuffer(body)) {
+        return Body.Promise.resolve(body);
+      }
+      if (!(body instanceof Stream)) {
+        return Body.Promise.resolve(Buffer.alloc(0));
+      }
+      let accum = [];
+      let accumBytes = 0;
+      let abort = false;
+      return new Body.Promise(function(resolve6, reject) {
+        let resTimeout;
+        if (_this4.timeout) {
+          resTimeout = setTimeout(function() {
+            abort = true;
+            reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, "body-timeout"));
+          }, _this4.timeout);
+        }
+        body.on("error", function(err) {
+          if (err.name === "AbortError") {
+            abort = true;
+            reject(err);
+          } else {
+            reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+        body.on("data", function(chunk) {
+          if (abort || chunk === null) {
+            return;
+          }
+          if (_this4.size && accumBytes + chunk.length > _this4.size) {
+            abort = true;
+            reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, "max-size"));
+            return;
+          }
+          accumBytes += chunk.length;
+          accum.push(chunk);
+        });
+        body.on("end", function() {
+          if (abort) {
+            return;
+          }
+          clearTimeout(resTimeout);
+          try {
+            resolve6(Buffer.concat(accum, accumBytes));
+          } catch (err) {
+            reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, "system", err));
+          }
+        });
+      });
+    }
+    function convertBody(buffer, headers) {
+      if (typeof convert3 !== "function") {
+        throw new Error("The package `encoding` must be installed to use the textConverted() function");
+      }
+      const ct = headers.get("content-type");
+      let charset = "utf-8";
+      let res, str;
+      if (ct) {
+        res = /charset=([^;]*)/i.exec(ct);
+      }
+      str = buffer.slice(0, 1024).toString();
+      if (!res && str) {
+        res = / 0 && arguments[0] !== void 0 ? arguments[0] : void 0;
+        this[MAP] = /* @__PURE__ */ Object.create(null);
+        if (init instanceof _Headers) {
+          const rawHeaders = init.raw();
+          const headerNames = Object.keys(rawHeaders);
+          for (const headerName of headerNames) {
+            for (const value of rawHeaders[headerName]) {
+              this.append(headerName, value);
+            }
+          }
+          return;
+        }
+        if (init == null) ;
+        else if (typeof init === "object") {
+          const method = init[Symbol.iterator];
+          if (method != null) {
+            if (typeof method !== "function") {
+              throw new TypeError("Header pairs must be iterable");
+            }
+            const pairs = [];
+            for (const pair of init) {
+              if (typeof pair !== "object" || typeof pair[Symbol.iterator] !== "function") {
+                throw new TypeError("Each header pair must be iterable");
+              }
+              pairs.push(Array.from(pair));
+            }
+            for (const pair of pairs) {
+              if (pair.length !== 2) {
+                throw new TypeError("Each header pair must be a name/value tuple");
+              }
+              this.append(pair[0], pair[1]);
+            }
+          } else {
+            for (const key of Object.keys(init)) {
+              const value = init[key];
+              this.append(key, value);
+            }
+          }
+        } else {
+          throw new TypeError("Provided initializer must be an object");
+        }
+      }
+      /**
+       * Return combined header value given name
+       *
+       * @param   String  name  Header name
+       * @return  Mixed
+       */
+      get(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key === void 0) {
+          return null;
+        }
+        return this[MAP][key].join(", ");
+      }
+      /**
+       * Iterate over all headers
+       *
+       * @param   Function  callback  Executed for each item with parameters (value, name, thisArg)
+       * @param   Boolean   thisArg   `this` context for callback function
+       * @return  Void
+       */
+      forEach(callback) {
+        let thisArg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : void 0;
+        let pairs = getHeaders(this);
+        let i = 0;
+        while (i < pairs.length) {
+          var _pairs$i = pairs[i];
+          const name = _pairs$i[0], value = _pairs$i[1];
+          callback.call(thisArg, value, name, this);
+          pairs = getHeaders(this);
+          i++;
+        }
+      }
+      /**
+       * Overwrite header values given name
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      set(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        this[MAP][key !== void 0 ? key : name] = [value];
+      }
+      /**
+       * Append a value onto existing header
+       *
+       * @param   String  name   Header name
+       * @param   String  value  Header value
+       * @return  Void
+       */
+      append(name, value) {
+        name = `${name}`;
+        value = `${value}`;
+        validateName(name);
+        validateValue(value);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          this[MAP][key].push(value);
+        } else {
+          this[MAP][name] = [value];
+        }
+      }
+      /**
+       * Check for header name existence
+       *
+       * @param   String   name  Header name
+       * @return  Boolean
+       */
+      has(name) {
+        name = `${name}`;
+        validateName(name);
+        return find(this[MAP], name) !== void 0;
+      }
+      /**
+       * Delete all header values given name
+       *
+       * @param   String  name  Header name
+       * @return  Void
+       */
+      delete(name) {
+        name = `${name}`;
+        validateName(name);
+        const key = find(this[MAP], name);
+        if (key !== void 0) {
+          delete this[MAP][key];
+        }
+      }
+      /**
+       * Return raw headers (non-spec api)
+       *
+       * @return  Object
+       */
+      raw() {
+        return this[MAP];
+      }
+      /**
+       * Get an iterator on keys.
+       *
+       * @return  Iterator
+       */
+      keys() {
+        return createHeadersIterator(this, "key");
+      }
+      /**
+       * Get an iterator on values.
+       *
+       * @return  Iterator
+       */
+      values() {
+        return createHeadersIterator(this, "value");
+      }
+      /**
+       * Get an iterator on entries.
+       *
+       * This is the default iterator of the Headers object.
+       *
+       * @return  Iterator
+       */
+      [Symbol.iterator]() {
+        return createHeadersIterator(this, "key+value");
+      }
+    };
+    Headers2.prototype.entries = Headers2.prototype[Symbol.iterator];
+    Object.defineProperty(Headers2.prototype, Symbol.toStringTag, {
+      value: "Headers",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Headers2.prototype, {
+      get: { enumerable: true },
+      forEach: { enumerable: true },
+      set: { enumerable: true },
+      append: { enumerable: true },
+      has: { enumerable: true },
+      delete: { enumerable: true },
+      keys: { enumerable: true },
+      values: { enumerable: true },
+      entries: { enumerable: true }
+    });
+    function getHeaders(headers) {
+      let kind = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "key+value";
+      const keys = Object.keys(headers[MAP]).sort();
+      return keys.map(kind === "key" ? function(k) {
+        return k.toLowerCase();
+      } : kind === "value" ? function(k) {
+        return headers[MAP][k].join(", ");
+      } : function(k) {
+        return [k.toLowerCase(), headers[MAP][k].join(", ")];
+      });
+    }
+    var INTERNAL = /* @__PURE__ */ Symbol("internal");
+    function createHeadersIterator(target, kind) {
+      const iterator = Object.create(HeadersIteratorPrototype);
+      iterator[INTERNAL] = {
+        target,
+        kind,
+        index: 0
+      };
+      return iterator;
+    }
+    var HeadersIteratorPrototype = Object.setPrototypeOf({
+      next() {
+        if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {
+          throw new TypeError("Value of `this` is not a HeadersIterator");
+        }
+        var _INTERNAL = this[INTERNAL];
+        const target = _INTERNAL.target, kind = _INTERNAL.kind, index = _INTERNAL.index;
+        const values = getHeaders(target, kind);
+        const len = values.length;
+        if (index >= len) {
+          return {
+            value: void 0,
+            done: true
+          };
+        }
+        this[INTERNAL].index = index + 1;
+        return {
+          value: values[index],
+          done: false
+        };
+      }
+    }, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));
+    Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {
+      value: "HeadersIterator",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    function exportNodeCompatibleHeaders(headers) {
+      const obj = Object.assign({ __proto__: null }, headers[MAP]);
+      const hostHeaderKey = find(headers[MAP], "Host");
+      if (hostHeaderKey !== void 0) {
+        obj[hostHeaderKey] = obj[hostHeaderKey][0];
+      }
+      return obj;
+    }
+    function createHeadersLenient(obj) {
+      const headers = new Headers2();
+      for (const name of Object.keys(obj)) {
+        if (invalidTokenRegex.test(name)) {
+          continue;
+        }
+        if (Array.isArray(obj[name])) {
+          for (const val2 of obj[name]) {
+            if (invalidHeaderCharRegex.test(val2)) {
+              continue;
+            }
+            if (headers[MAP][name] === void 0) {
+              headers[MAP][name] = [val2];
+            } else {
+              headers[MAP][name].push(val2);
+            }
+          }
+        } else if (!invalidHeaderCharRegex.test(obj[name])) {
+          headers[MAP][name] = [obj[name]];
+        }
+      }
+      return headers;
+    }
+    var INTERNALS$1 = /* @__PURE__ */ Symbol("Response internals");
+    var STATUS_CODES = http.STATUS_CODES;
+    var Response = class _Response {
+      constructor() {
+        let body = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
+        let opts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        Body.call(this, body, opts);
+        const status = opts.status || 200;
+        const headers = new Headers2(opts.headers);
+        if (body != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(body);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        this[INTERNALS$1] = {
+          url: opts.url,
+          status,
+          statusText: opts.statusText || STATUS_CODES[status],
+          headers,
+          counter: opts.counter
+        };
+      }
+      get url() {
+        return this[INTERNALS$1].url || "";
+      }
+      get status() {
+        return this[INTERNALS$1].status;
+      }
+      /**
+       * Convenience property representing if the request ended normally
+       */
+      get ok() {
+        return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;
+      }
+      get redirected() {
+        return this[INTERNALS$1].counter > 0;
+      }
+      get statusText() {
+        return this[INTERNALS$1].statusText;
+      }
+      get headers() {
+        return this[INTERNALS$1].headers;
+      }
+      /**
+       * Clone this response
+       *
+       * @return  Response
+       */
+      clone() {
+        return new _Response(clone(this), {
+          url: this.url,
+          status: this.status,
+          statusText: this.statusText,
+          headers: this.headers,
+          ok: this.ok,
+          redirected: this.redirected
+        });
+      }
+    };
+    Body.mixIn(Response.prototype);
+    Object.defineProperties(Response.prototype, {
+      url: { enumerable: true },
+      status: { enumerable: true },
+      ok: { enumerable: true },
+      redirected: { enumerable: true },
+      statusText: { enumerable: true },
+      headers: { enumerable: true },
+      clone: { enumerable: true }
+    });
+    Object.defineProperty(Response.prototype, Symbol.toStringTag, {
+      value: "Response",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    var INTERNALS$2 = /* @__PURE__ */ Symbol("Request internals");
+    var URL3 = Url.URL || whatwgUrl.URL;
+    var parse_url = Url.parse;
+    var format_url = Url.format;
+    function parseURL(urlStr) {
+      if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) {
+        urlStr = new URL3(urlStr).toString();
+      }
+      return parse_url(urlStr);
+    }
+    var streamDestructionSupported = "destroy" in Stream.Readable.prototype;
+    function isRequest(input) {
+      return typeof input === "object" && typeof input[INTERNALS$2] === "object";
+    }
+    function isAbortSignal(signal) {
+      const proto = signal && typeof signal === "object" && Object.getPrototypeOf(signal);
+      return !!(proto && proto.constructor.name === "AbortSignal");
+    }
+    var Request2 = class _Request {
+      constructor(input) {
+        let init = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
+        let parsedURL;
+        if (!isRequest(input)) {
+          if (input && input.href) {
+            parsedURL = parseURL(input.href);
+          } else {
+            parsedURL = parseURL(`${input}`);
+          }
+          input = {};
+        } else {
+          parsedURL = parseURL(input.url);
+        }
+        let method = init.method || input.method || "GET";
+        method = method.toUpperCase();
+        if ((init.body != null || isRequest(input) && input.body !== null) && (method === "GET" || method === "HEAD")) {
+          throw new TypeError("Request with GET/HEAD method cannot have body");
+        }
+        let inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;
+        Body.call(this, inputBody, {
+          timeout: init.timeout || input.timeout || 0,
+          size: init.size || input.size || 0
+        });
+        const headers = new Headers2(init.headers || input.headers || {});
+        if (inputBody != null && !headers.has("Content-Type")) {
+          const contentType = extractContentType(inputBody);
+          if (contentType) {
+            headers.append("Content-Type", contentType);
+          }
+        }
+        let signal = isRequest(input) ? input.signal : null;
+        if ("signal" in init) signal = init.signal;
+        if (signal != null && !isAbortSignal(signal)) {
+          throw new TypeError("Expected signal to be an instanceof AbortSignal");
+        }
+        this[INTERNALS$2] = {
+          method,
+          redirect: init.redirect || input.redirect || "follow",
+          headers,
+          parsedURL,
+          signal
+        };
+        this.follow = init.follow !== void 0 ? init.follow : input.follow !== void 0 ? input.follow : 20;
+        this.compress = init.compress !== void 0 ? init.compress : input.compress !== void 0 ? input.compress : true;
+        this.counter = init.counter || input.counter || 0;
+        this.agent = init.agent || input.agent;
+      }
+      get method() {
+        return this[INTERNALS$2].method;
+      }
+      get url() {
+        return format_url(this[INTERNALS$2].parsedURL);
+      }
+      get headers() {
+        return this[INTERNALS$2].headers;
+      }
+      get redirect() {
+        return this[INTERNALS$2].redirect;
+      }
+      get signal() {
+        return this[INTERNALS$2].signal;
+      }
+      /**
+       * Clone this request
+       *
+       * @return  Request
+       */
+      clone() {
+        return new _Request(this);
+      }
+    };
+    Body.mixIn(Request2.prototype);
+    Object.defineProperty(Request2.prototype, Symbol.toStringTag, {
+      value: "Request",
+      writable: false,
+      enumerable: false,
+      configurable: true
+    });
+    Object.defineProperties(Request2.prototype, {
+      method: { enumerable: true },
+      url: { enumerable: true },
+      headers: { enumerable: true },
+      redirect: { enumerable: true },
+      clone: { enumerable: true },
+      signal: { enumerable: true }
+    });
+    function getNodeRequestOptions(request2) {
+      const parsedURL = request2[INTERNALS$2].parsedURL;
+      const headers = new Headers2(request2[INTERNALS$2].headers);
+      if (!headers.has("Accept")) {
+        headers.set("Accept", "*/*");
+      }
+      if (!parsedURL.protocol || !parsedURL.hostname) {
+        throw new TypeError("Only absolute URLs are supported");
+      }
+      if (!/^https?:$/.test(parsedURL.protocol)) {
+        throw new TypeError("Only HTTP(S) protocols are supported");
+      }
+      if (request2.signal && request2.body instanceof Stream.Readable && !streamDestructionSupported) {
+        throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");
+      }
+      let contentLengthValue = null;
+      if (request2.body == null && /^(POST|PUT)$/i.test(request2.method)) {
+        contentLengthValue = "0";
+      }
+      if (request2.body != null) {
+        const totalBytes = getTotalBytes(request2);
+        if (typeof totalBytes === "number") {
+          contentLengthValue = String(totalBytes);
+        }
+      }
+      if (contentLengthValue) {
+        headers.set("Content-Length", contentLengthValue);
+      }
+      if (!headers.has("User-Agent")) {
+        headers.set("User-Agent", "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)");
+      }
+      if (request2.compress && !headers.has("Accept-Encoding")) {
+        headers.set("Accept-Encoding", "gzip,deflate");
+      }
+      let agent = request2.agent;
+      if (typeof agent === "function") {
+        agent = agent(parsedURL);
+      }
+      return Object.assign({}, parsedURL, {
+        method: request2.method,
+        headers: exportNodeCompatibleHeaders(headers),
+        agent
+      });
+    }
+    function AbortError(message) {
+      Error.call(this, message);
+      this.type = "aborted";
+      this.message = message;
+      Error.captureStackTrace(this, this.constructor);
+    }
+    AbortError.prototype = Object.create(Error.prototype);
+    AbortError.prototype.constructor = AbortError;
+    AbortError.prototype.name = "AbortError";
+    var URL$1 = Url.URL || whatwgUrl.URL;
+    var PassThrough$1 = Stream.PassThrough;
+    var isDomainOrSubdomain = function isDomainOrSubdomain2(destination, original) {
+      const orig = new URL$1(original).hostname;
+      const dest = new URL$1(destination).hostname;
+      return orig === dest || orig[orig.length - dest.length - 1] === "." && orig.endsWith(dest);
+    };
+    var isSameProtocol = function isSameProtocol2(destination, original) {
+      const orig = new URL$1(original).protocol;
+      const dest = new URL$1(destination).protocol;
+      return orig === dest;
+    };
+    function fetch3(url2, opts) {
+      if (!fetch3.Promise) {
+        throw new Error("native promise missing, set fetch.Promise to your favorite alternative");
+      }
+      Body.Promise = fetch3.Promise;
+      return new fetch3.Promise(function(resolve6, reject) {
+        const request2 = new Request2(url2, opts);
+        const options = getNodeRequestOptions(request2);
+        const send = (options.protocol === "https:" ? https2 : http).request;
+        const signal = request2.signal;
+        let response = null;
+        const abort = function abort2() {
+          let error = new AbortError("The user aborted a request.");
+          reject(error);
+          if (request2.body && request2.body instanceof Stream.Readable) {
+            destroyStream(request2.body, error);
+          }
+          if (!response || !response.body) return;
+          response.body.emit("error", error);
+        };
+        if (signal && signal.aborted) {
+          abort();
+          return;
+        }
+        const abortAndFinalize = function abortAndFinalize2() {
+          abort();
+          finalize();
+        };
+        const req = send(options);
+        let reqTimeout;
+        if (signal) {
+          signal.addEventListener("abort", abortAndFinalize);
+        }
+        function finalize() {
+          req.abort();
+          if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          clearTimeout(reqTimeout);
+        }
+        if (request2.timeout) {
+          req.once("socket", function(socket) {
+            reqTimeout = setTimeout(function() {
+              reject(new FetchError(`network timeout at: ${request2.url}`, "request-timeout"));
+              finalize();
+            }, request2.timeout);
+          });
+        }
+        req.on("error", function(err) {
+          reject(new FetchError(`request to ${request2.url} failed, reason: ${err.message}`, "system", err));
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+          finalize();
+        });
+        fixResponseChunkedTransferBadEnding(req, function(err) {
+          if (signal && signal.aborted) {
+            return;
+          }
+          if (response && response.body) {
+            destroyStream(response.body, err);
+          }
+        });
+        if (parseInt(process.version.substring(1)) < 14) {
+          req.on("socket", function(s) {
+            s.addListener("close", function(hadError) {
+              const hasDataListener = s.listenerCount("data") > 0;
+              if (response && hasDataListener && !hadError && !(signal && signal.aborted)) {
+                const err = new Error("Premature close");
+                err.code = "ERR_STREAM_PREMATURE_CLOSE";
+                response.body.emit("error", err);
+              }
+            });
+          });
+        }
+        req.on("response", function(res) {
+          clearTimeout(reqTimeout);
+          const headers = createHeadersLenient(res.headers);
+          if (fetch3.isRedirect(res.statusCode)) {
+            const location = headers.get("Location");
+            let locationURL = null;
+            try {
+              locationURL = location === null ? null : new URL$1(location, request2.url).toString();
+            } catch (err) {
+              if (request2.redirect !== "manual") {
+                reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, "invalid-redirect"));
+                finalize();
+                return;
+              }
+            }
+            switch (request2.redirect) {
+              case "error":
+                reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request2.url}`, "no-redirect"));
+                finalize();
+                return;
+              case "manual":
+                if (locationURL !== null) {
+                  try {
+                    headers.set("Location", locationURL);
+                  } catch (err) {
+                    reject(err);
+                  }
+                }
+                break;
+              case "follow":
+                if (locationURL === null) {
+                  break;
+                }
+                if (request2.counter >= request2.follow) {
+                  reject(new FetchError(`maximum redirect reached at: ${request2.url}`, "max-redirect"));
+                  finalize();
+                  return;
+                }
+                const requestOpts = {
+                  headers: new Headers2(request2.headers),
+                  follow: request2.follow,
+                  counter: request2.counter + 1,
+                  agent: request2.agent,
+                  compress: request2.compress,
+                  method: request2.method,
+                  body: request2.body,
+                  signal: request2.signal,
+                  timeout: request2.timeout,
+                  size: request2.size
+                };
+                if (!isDomainOrSubdomain(request2.url, locationURL) || !isSameProtocol(request2.url, locationURL)) {
+                  for (const name of ["authorization", "www-authenticate", "cookie", "cookie2"]) {
+                    requestOpts.headers.delete(name);
+                  }
+                }
+                if (res.statusCode !== 303 && request2.body && getTotalBytes(request2) === null) {
+                  reject(new FetchError("Cannot follow redirect with body being a readable stream", "unsupported-redirect"));
+                  finalize();
+                  return;
+                }
+                if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request2.method === "POST") {
+                  requestOpts.method = "GET";
+                  requestOpts.body = void 0;
+                  requestOpts.headers.delete("content-length");
+                }
+                resolve6(fetch3(new Request2(locationURL, requestOpts)));
+                finalize();
+                return;
+            }
+          }
+          res.once("end", function() {
+            if (signal) signal.removeEventListener("abort", abortAndFinalize);
+          });
+          let body = res.pipe(new PassThrough$1());
+          const response_options = {
+            url: request2.url,
+            status: res.statusCode,
+            statusText: res.statusMessage,
+            headers,
+            size: request2.size,
+            timeout: request2.timeout,
+            counter: request2.counter
+          };
+          const codings = headers.get("Content-Encoding");
+          if (!request2.compress || request2.method === "HEAD" || codings === null || res.statusCode === 204 || res.statusCode === 304) {
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          const zlibOptions = {
+            flush: zlib3.Z_SYNC_FLUSH,
+            finishFlush: zlib3.Z_SYNC_FLUSH
+          };
+          if (codings == "gzip" || codings == "x-gzip") {
+            body = body.pipe(zlib3.createGunzip(zlibOptions));
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          if (codings == "deflate" || codings == "x-deflate") {
+            const raw = res.pipe(new PassThrough$1());
+            raw.once("data", function(chunk) {
+              if ((chunk[0] & 15) === 8) {
+                body = body.pipe(zlib3.createInflate());
+              } else {
+                body = body.pipe(zlib3.createInflateRaw());
+              }
+              response = new Response(body, response_options);
+              resolve6(response);
+            });
+            raw.on("end", function() {
+              if (!response) {
+                response = new Response(body, response_options);
+                resolve6(response);
+              }
+            });
+            return;
+          }
+          if (codings == "br" && typeof zlib3.createBrotliDecompress === "function") {
+            body = body.pipe(zlib3.createBrotliDecompress());
+            response = new Response(body, response_options);
+            resolve6(response);
+            return;
+          }
+          response = new Response(body, response_options);
+          resolve6(response);
+        });
+        writeToStream(req, request2);
+      });
+    }
+    function fixResponseChunkedTransferBadEnding(request2, errorCallback) {
+      let socket;
+      request2.on("socket", function(s) {
+        socket = s;
+      });
+      request2.on("response", function(response) {
+        const headers = response.headers;
+        if (headers["transfer-encoding"] === "chunked" && !headers["content-length"]) {
+          response.once("close", function(hadError) {
+            const hasDataListener = socket && socket.listenerCount("data") > 0;
+            if (hasDataListener && !hadError) {
+              const err = new Error("Premature close");
+              err.code = "ERR_STREAM_PREMATURE_CLOSE";
+              errorCallback(err);
+            }
+          });
+        }
+      });
+    }
+    function destroyStream(stream, err) {
+      if (stream.destroy) {
+        stream.destroy(err);
+      } else {
+        stream.emit("error", err);
+        stream.end();
+      }
+    }
+    fetch3.isRedirect = function(code) {
+      return code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
+    };
+    fetch3.Promise = global.Promise;
+    module2.exports = exports2 = fetch3;
+    Object.defineProperty(exports2, "__esModule", { value: true });
+    exports2.default = exports2;
+    exports2.Headers = Headers2;
+    exports2.Request = Request2;
+    exports2.Response = Response;
+    exports2.FetchError = FetchError;
+    exports2.AbortError = AbortError;
+  }
+});
+
+// lib/assertions/providers/lambda-handler/index.ts
+var index_exports = {};
+__export(index_exports, {
+  handler: () => handler,
+  isComplete: () => isComplete,
+  onTimeout: () => onTimeout
+});
+module.exports = __toCommonJS(index_exports);
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var import_helpers_internal8 = __toESM(require_helpers_internal());
+
+// lib/assertions/providers/lambda-handler/base.ts
+var https = __toESM(require("https"));
+var url = __toESM(require("url"));
+var import_client_sfn = __toESM(require_dist_cjs53());
+var CustomResourceHandler = class {
+  constructor(event, context) {
+    this.event = event;
+    this.context = context;
+    this.timeout = setTimeout(async () => {
+      await this.respond({
+        status: "FAILED",
+        reason: "Lambda Function Timeout",
+        data: this.context.logStreamName
+      });
+      this.timedOut = true;
+    }, context.getRemainingTimeInMillis() - 1200);
+    this.event = event;
+    this.physicalResourceId = extractPhysicalResourceId(event);
+  }
+  event;
+  context;
+  physicalResourceId;
+  timeout;
+  timedOut = false;
+  /**
+   * Handles executing the custom resource event. If `stateMachineArn` is present
+   * in the props then trigger the waiter statemachine
+   */
+  async handle() {
+    try {
+      if ("stateMachineArn" in this.event.ResourceProperties) {
+        const req = {
+          stateMachineArn: this.event.ResourceProperties.stateMachineArn,
+          name: this.event.RequestId,
+          input: JSON.stringify(this.event)
+        };
+        await this.startExecution(req);
+        return;
+      } else {
+        const response = await this.processEvent(this.event.ResourceProperties);
+        return response;
+      }
+    } catch (e) {
+      console.log(e);
+      throw e;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Handle async requests from the waiter state machine
+   */
+  async handleIsComplete() {
+    try {
+      const result = await this.processEvent(this.event.ResourceProperties);
+      return result;
+    } catch (e) {
+      console.log(e);
+      return;
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  /**
+   * Start a step function state machine which will wait for the request
+   * to be successful.
+   */
+  async startExecution(req) {
+    try {
+      const sfn = new import_client_sfn.SFN({});
+      await sfn.startExecution(req);
+    } finally {
+      clearTimeout(this.timeout);
+    }
+  }
+  respond(response) {
+    if (this.timedOut) {
+      return;
+    }
+    const cfResponse = {
+      Status: response.status,
+      Reason: response.reason,
+      PhysicalResourceId: this.physicalResourceId,
+      StackId: this.event.StackId,
+      RequestId: this.event.RequestId,
+      LogicalResourceId: this.event.LogicalResourceId,
+      NoEcho: false,
+      Data: response.data
+    };
+    const responseBody = JSON.stringify(cfResponse);
+    console.log("Responding to CloudFormation", responseBody);
+    const parsedUrl = url.parse(this.event.ResponseURL);
+    const requestOptions = {
+      hostname: parsedUrl.hostname,
+      path: parsedUrl.path,
+      method: "PUT",
+      headers: {
+        "content-type": "",
+        "content-length": Buffer.byteLength(responseBody, "utf8")
+      }
+    };
+    return new Promise((resolve6, reject) => {
+      try {
+        const request2 = https.request(requestOptions, resolve6);
+        request2.on("error", reject);
+        request2.write(responseBody);
+        request2.end();
+      } catch (e) {
+        reject(e);
+      } finally {
+        clearTimeout(this.timeout);
+      }
+    });
+  }
+};
+function extractPhysicalResourceId(event) {
+  switch (event.RequestType) {
+    case "Create":
+      return event.LogicalResourceId;
+    case "Update":
+    case "Delete":
+      return event.PhysicalResourceId;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/assertion.ts
+var AssertionHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    let actual = decodeCall(request2.actual);
+    const expected = decodeCall(request2.expected);
+    let result;
+    const matcher = new MatchCreator(expected).getMatcher();
+    console.log(`Testing equality between ${JSON.stringify(request2.actual)} and ${JSON.stringify(request2.expected)}`);
+    const matchResult = matcher.test(actual);
+    matchResult.finished();
+    if (matchResult.hasFailed()) {
+      result = {
+        failed: true,
+        assertion: JSON.stringify({
+          status: "fail",
+          message: matchResult.renderMismatch()
+        })
+      };
+      if (request2.failDeployment) {
+        throw new Error(result.assertion);
+      }
+    } else {
+      result = {
+        assertion: JSON.stringify({
+          status: "success"
+        })
+      };
+    }
+    return result;
+  }
+};
+var MatchCreator = class {
+  parsedObj;
+  constructor(obj) {
+    this.parsedObj = {
+      matcher: obj
+    };
+  }
+  /**
+   * Return a Matcher that can be tested against the actual results.
+   * This will convert the encoded matchers into their corresponding
+   * assertions matcher.
+   *
+   * For example:
+   *
+   * ExpectedResult.objectLike({
+   *   Messages: [{
+   *     Body: Match.objectLike({
+   *       Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *       Payload: Match.serializedJson({ key: 'value' }),
+   *     }),
+   *   }],
+   * });
+   *
+   * Will be encoded as:
+   * {
+   *   $ObjectLike: {
+   *     Messages: [{
+   *       Body: {
+   *         $ObjectLike: {
+   *           Elements: {
+   *             $ArrayWith: [{ Asdf: 3 }],
+   *           },
+   *           Payload: {
+   *             $SerializedJson: { key: 'value' }
+   *           }
+   *         },
+   *       },
+   *     }],
+   *   },
+   * }
+   *
+   * Which can then be parsed by this function. For each key (recursively)
+   * the parser will check if the value has one of the encoded matchers as a key
+   * and if so, it will set the value as the Matcher. So,
+   *
+   * {
+   *   Body: {
+   *     $ObjectLike: {
+   *       Elements: {
+   *         $ArrayWith: [{ Asdf: 3 }],
+   *       },
+   *       Payload: {
+   *         $SerializedJson: { key: 'value' }
+   *       }
+   *     },
+   *   },
+   * }
+   *
+   * Will be converted to
+   * {
+   *   Body: Match.objectLike({
+   *     Elements: Match.arrayWith([{ Asdf: 3 }]),
+   *     Payload: Match.serializedJson({ key: 'value' }),
+   *   }),
+   * }
+   */
+  getMatcher() {
+    try {
+      const final = JSON.parse(JSON.stringify(this.parsedObj), function(_k, v) {
+        const nested = Object.keys(v)[0];
+        switch (nested) {
+          case "$ArrayWith":
+            return import_helpers_internal8.Match.arrayWith(v[nested]);
+          case "$ObjectLike":
+            return import_helpers_internal8.Match.objectLike(v[nested]);
+          case "$StringLike":
+            return import_helpers_internal8.Match.stringLikeRegexp(v[nested]);
+          case "$SerializedJson":
+            return import_helpers_internal8.Match.serializedJson(v[nested]);
+          default:
+            return v;
+        }
+      });
+      if (import_helpers_internal8.Matcher.isMatcher(final.matcher)) {
+        return final.matcher;
+      }
+      return import_helpers_internal8.Match.exact(final.matcher);
+    } catch {
+      return import_helpers_internal8.Match.exact(this.parsedObj.matcher);
+    }
+  }
+};
+function decodeCall(call) {
+  if (!call) {
+    return void 0;
+  }
+  try {
+    const parsed = JSON.parse(call);
+    return parsed;
+  } catch {
+    return call;
+  }
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var import_aws_custom_resource_sdk_adapter = __toESM(require_lib6());
+var import_node_fetch = __toESM(require_lib9());
+
+// lib/assertions/providers/lambda-handler/utils.ts
+function deepParseJson(x) {
+  if (typeof x === "string") {
+    return tryJsonParse(x);
+  }
+  if (Array.isArray(x)) {
+    return x.map(deepParseJson);
+  }
+  if (x && typeof x === "object") {
+    for (const [key, value] of Object.entries(x)) {
+      x[key] = deepParseJson(value);
+    }
+    return x;
+  }
+  return x;
+}
+function tryJsonParse(v) {
+  if (typeof v !== "string") {
+    return v;
+  }
+  try {
+    return JSON.parse(v);
+  } catch {
+    return v;
+  }
+}
+function decodeParameters(obj) {
+  return Object.fromEntries(Object.entries(obj).map(([key, value]) => {
+    try {
+      return [key, decodeValue(value)];
+    } catch {
+      return [key, value];
+    }
+  }));
+}
+function decodeValue(value) {
+  if (value != null && !Array.isArray(value) && typeof value === "object") {
+    if (value.$type === "ArrayBufferView") {
+      return new TextEncoder().encode(value.string);
+    }
+  }
+  return JSON.parse(value);
+}
+
+// lib/assertions/providers/lambda-handler/http.ts
+var HttpHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    console.log("request", request2);
+    const response = await (0, import_node_fetch.default)(request2.parameters.url, request2.parameters.fetchOptions);
+    const result = {
+      ok: response.ok,
+      status: response.status,
+      statusText: response.statusText,
+      headers: response.headers.raw()
+    };
+    result.body = await response.text();
+    try {
+      result.body = JSON.parse(result.body);
+    } catch (e) {
+    }
+    let resp;
+    if (request2.flattenResponse === "true") {
+      resp = (0, import_aws_custom_resource_sdk_adapter.flatten)(deepParseJson({ apiCallResponse: result }));
+    } else {
+      resp = { apiCallResponse: result };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+
+// lib/assertions/providers/lambda-handler/sdk.ts
+var import_aws_custom_resource_sdk_adapter2 = __toESM(require_lib6());
+var AwsApiCallHandler = class extends CustomResourceHandler {
+  async processEvent(request2) {
+    const apiCall = new import_aws_custom_resource_sdk_adapter2.ApiCall(request2.service, request2.api);
+    const parameters = request2.parameters ? decodeParameters(request2.parameters) : {};
+    console.log(`SDK request to ${apiCall.service}.${apiCall.action} with parameters ${JSON.stringify(parameters)}`);
+    const response = await apiCall.invoke({ parameters });
+    console.log(`SDK response received ${JSON.stringify(response)}`);
+    delete response.$metadata;
+    let resp;
+    if (request2.outputPaths || request2.flattenResponse === "true") {
+      const flattened = (0, import_aws_custom_resource_sdk_adapter2.flatten)(deepParseJson({ apiCallResponse: response }));
+      resp = request2.outputPaths ? filterKeys(flattened, request2.outputPaths) : flattened;
+    } else {
+      resp = { apiCallResponse: response };
+    }
+    console.log(`Returning result ${JSON.stringify(resp)}`);
+    return resp;
+  }
+};
+function filterKeys(object, searchStrings) {
+  return Object.entries(object).reduce((filteredObject, [key, value]) => {
+    for (const searchString of searchStrings) {
+      if (key.startsWith(`apiCallResponse.${searchString}`)) {
+        filteredObject[key] = value;
+      }
+    }
+    return filteredObject;
+  }, {});
+}
+
+// lib/assertions/providers/lambda-handler/types.ts
+var ASSERT_RESOURCE_TYPE = "Custom::DeployAssert@AssertEquals";
+var SDK_RESOURCE_TYPE_PREFIX = "Custom::DeployAssert@SdkCall";
+var HTTP_RESOURCE_TYPE = "Custom::DeployAssert@HttpCall";
+
+// lib/assertions/providers/lambda-handler/index.ts
+async function handler(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    if (event.RequestType === "Delete") {
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK"
+      });
+      return;
+    }
+    const result = await provider.handle();
+    if ("stateMachineArn" in event.ResourceProperties) {
+      console.info('Found "stateMachineArn", waiter statemachine started');
+      return;
+    } else if ("expected" in event.ResourceProperties) {
+      console.info('Found "expected", testing assertions');
+      const actualPath = event.ResourceProperties.actualPath;
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      const assertion = new AssertionHandler({
+        ...event,
+        ResourceProperties: {
+          ServiceToken: event.ServiceToken,
+          actual,
+          expected: event.ResourceProperties.expected
+        }
+      }, context);
+      try {
+        const assertionResult = await assertion.handle();
+        await provider.respond({
+          status: "SUCCESS",
+          reason: "OK",
+          // return both the result of the API call _and_ the assertion results
+          data: {
+            ...assertionResult,
+            ...result
+          }
+        });
+        return;
+      } catch (e) {
+        await provider.respond({
+          status: "FAILED",
+          reason: e.message ?? "Internal Error"
+        });
+        return;
+      }
+    }
+    await provider.respond({
+      status: "SUCCESS",
+      reason: "OK",
+      data: result
+    });
+  } catch (e) {
+    await provider.respond({
+      status: "FAILED",
+      reason: e.message ?? "Internal Error"
+    });
+    return;
+  }
+  return;
+}
+async function onTimeout(timeoutEvent) {
+  const eventPayload = JSON.parse(JSON.parse(timeoutEvent.Cause).errorMessage);
+  const provider = createResourceHandler(eventPayload, standardContext);
+  await provider.respond({
+    status: "FAILED",
+    // Only the properties to the IsComplete Resource need to be included.
+    reason: "Operation timed out: " + JSON.stringify(eventPayload.ResourceProperties)
+  });
+}
+async function isComplete(event, context) {
+  console.log(`Event: ${JSON.stringify({ ...event, ResponseURL: "..." })}`);
+  const provider = createResourceHandler(event, context);
+  try {
+    const result = await provider.handleIsComplete();
+    const actualPath = event.ResourceProperties.actualPath;
+    if (result) {
+      const actual = actualPath ? result[`apiCallResponse.${actualPath}`] : result.apiCallResponse;
+      if ("expected" in event.ResourceProperties) {
+        const assertion = new AssertionHandler({
+          ...event,
+          ResourceProperties: {
+            ServiceToken: event.ServiceToken,
+            actual,
+            expected: event.ResourceProperties.expected
+          }
+        }, context);
+        const assertionResult = await assertion.handleIsComplete();
+        if (!assertionResult?.failed) {
+          await provider.respond({
+            status: "SUCCESS",
+            reason: "OK",
+            data: {
+              ...assertionResult,
+              ...result
+            }
+          });
+          return;
+        } else {
+          console.log(`Assertion Failed: ${JSON.stringify(assertionResult)}`);
+          throw new Error(JSON.stringify(event));
+        }
+      }
+      await provider.respond({
+        status: "SUCCESS",
+        reason: "OK",
+        data: result
+      });
+    } else {
+      console.log("No result");
+      throw new Error(JSON.stringify(event));
+    }
+    return;
+  } catch (e) {
+    console.log(e);
+    throw new Error(JSON.stringify(event));
+  }
+}
+function createResourceHandler(event, context) {
+  if (event.ResourceType.startsWith(SDK_RESOURCE_TYPE_PREFIX)) {
+    return new AwsApiCallHandler(event, context);
+  } else if (event.ResourceType.startsWith(ASSERT_RESOURCE_TYPE)) {
+    return new AssertionHandler(event, context);
+  } else if (event.ResourceType.startsWith(HTTP_RESOURCE_TYPE)) {
+    return new HttpHandler(event, context);
+  } else {
+    throw new Error(`Unsupported resource type "${event.ResourceType}`);
+  }
+}
+var standardContext = {
+  getRemainingTimeInMillis: () => 9e4
+};
+// Annotate the CommonJS export names for ESM import in node:
+0 && (module.exports = {
+  handler,
+  isComplete,
+  onTimeout
+});
+/*! Bundled license information:
+
+@balena/dockerignore/ignore.js:
+  (**
+   * @license
+   * Copyright 2020 Balena Ltd.
+   *
+   * Licensed under the Apache License, Version 2.0 (the "License");
+   * you may not use this file except in compliance with the License.
+   * You may obtain a copy of the License at
+   *
+   *    http://www.apache.org/licenses/LICENSE-2.0
+   *
+   * Unless required by applicable law or agreed to in writing, software
+   * distributed under the License is distributed on an "AS IS" BASIS,
+   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   * See the License for the specific language governing permissions and
+   * limitations under the License.
+   *
+   * ------------------------------------------------------------------------
+   *
+   * Copyright 2018 Zeit, Inc.
+   * Licensed under the MIT License. See file LICENSE.md for a full copy.
+   *
+   * ------------------------------------------------------------------------
+   *)
+*/
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d/index.js
new file mode 100644
index 0000000000000..ed5892d7e6e42
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d/index.js
@@ -0,0 +1 @@
+"use strict";var k=Object.create;var a=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var O=Object.getPrototypeOf,x=Object.prototype.hasOwnProperty;var L=(e,t)=>{for(var o in t)a(e,o,{get:t[o],enumerable:!0})},R=(e,t,o,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of D(t))!x.call(e,n)&&n!==o&&a(e,n,{get:()=>t[n],enumerable:!(s=A(t,n))||s.enumerable});return e};var p=(e,t,o)=>(o=e!=null?k(O(e)):{},R(t||!e||!e.__esModule?a(o,"default",{value:e,enumerable:!0}):o,e)),B=e=>R(a({},"__esModule",{value:!0}),e);var U={};L(U,{destinationKey:()=>m,handler:()=>j,s3:()=>y,s3ObjectCopyHandler:()=>w});module.exports=B(U);var C=require("crypto"),E=require("@aws-sdk/client-s3");var f=p(require("https")),I=p(require("url")),i={sendHttpRequest:N,log:K,includeStackTraces:!0,userHandlerIndex:"./index"},h="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",$="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";function g(e){return async(t,o)=>{let s={...t,ResponseURL:"..."};if(i.log(JSON.stringify(s,void 0,2)),t.RequestType==="Delete"&&t.PhysicalResourceId===h){i.log("ignoring DELETE event caused by a failed CREATE event"),await c("SUCCESS",t);return}try{let n=await e(s,o),r=H(t,n);await c("SUCCESS",r)}catch(n){let r={...t,Reason:i.includeStackTraces?n.stack:n.message};r.PhysicalResourceId||(t.RequestType==="Create"?(i.log("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),r.PhysicalResourceId=h):i.log(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify(t)}`)),await c("FAILED",r)}}}function H(e,t={}){let o=t.PhysicalResourceId??e.PhysicalResourceId??e.RequestId;if(e.RequestType==="Delete"&&o!==e.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${e.PhysicalResourceId}" to "${t.PhysicalResourceId}" during deletion`);return{...e,...t,PhysicalResourceId:o}}async function c(e,t){let o={Status:e,Reason:t.Reason??e,StackId:t.StackId,RequestId:t.RequestId,PhysicalResourceId:t.PhysicalResourceId||$,LogicalResourceId:t.LogicalResourceId,NoEcho:t.NoEcho,Data:t.Data},s=I.parse(t.ResponseURL),n=`${s.protocol}//${s.hostname}/${s.pathname}?***`;i.log("submit response to cloudformation",n,o);let r=JSON.stringify(o),b={hostname:s.hostname,path:s.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(r,"utf8")}};await T({attempts:5,sleep:1e3},i.sendHttpRequest)(b,r)}async function N(e,t){return new Promise((o,s)=>{try{let n=f.request(e,r=>{r.resume(),!r.statusCode||r.statusCode>=400?s(new Error(`Unsuccessful HTTP response: ${r.statusCode}`)):o()});n.on("error",s),n.write(t),n.end()}catch(n){s(n)}})}function K(e,...t){console.log(e,...t)}function T(e,t){return async(...o)=>{let s=e.attempts,n=e.sleep;for(;;)try{return await t(...o)}catch(r){if(s--<=0)throw r;await V(Math.floor(Math.random()*n)),n*=2}}}async function V(e){return new Promise(t=>setTimeout(t,e))}var y=new E.S3({followRegionRedirects:!0}),j=g(w);async function w(e){let t=e.ResourceProperties;switch(e.RequestType){case"Create":return u(await P(t));case"Update":{let o=S(e.PhysicalResourceId);return o&&o.Bucket===t.DestinationBucketName&&o.Key===m(t)?u(o):u(await P(t))}case"Delete":{let o=S(e.PhysicalResourceId);return o?await q(o):console.log(`Physical resource ID '${e.PhysicalResourceId}' names no object version; nothing to delete`),{PhysicalResourceId:e.PhysicalResourceId}}}}function m(e){let t=d([e.ContentHash,e.Configuration??null]),o=(0,C.createHash)("sha256").update(t).digest("hex").slice(0,32);return`${e.DestinationKeyPrefix}${o}.zip`}function d(e){return Array.isArray(e)?`[${e.map(d).join(",")}]`:e!==null&&typeof e=="object"?`{${Object.keys(e).sort().map(o=>`${JSON.stringify(o)}:${d(e[o])}`).join(",")}}`:JSON.stringify(e)}var l="?versionId=";function u(e){return{PhysicalResourceId:`${e.Bucket}/${e.Key}${l}${e.VersionId}`,Data:e}}function S(e){let t=e.lastIndexOf(l),o=e.indexOf("/");if(t<0||o<=0||o+1>=t)return;let s=e.slice(t+l.length);if(s)return{Bucket:e.slice(0,o),Key:e.slice(o+1,t),VersionId:s}}function F(e){return e.split("/").map(encodeURIComponent).join("/")}async function P(e){let t=m(e),o=await y.copyObject({Bucket:e.DestinationBucketName,Key:t,CopySource:`${e.SourceBucketName}/${F(e.SourceObjectKey)}`});if(!o.VersionId)throw new Error(`Copied s3://${e.DestinationBucketName}/${t} but S3 returned no VersionId. Enable versioning on the destination bucket.`);return{Bucket:e.DestinationBucketName,Key:t,VersionId:o.VersionId}}async function q(e){try{await y.deleteObject({Bucket:e.Bucket,Key:e.Key,VersionId:e.VersionId})}catch(t){if(t.name==="NoSuchBucket"){console.log(`Bucket '${e.Bucket}' does not exist; nothing to delete.`);return}throw t}}0&&(module.exports={destinationKey,handler,s3,s3ObjectCopyHandler});
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a/index.js
new file mode 100644
index 0000000000000..1d3414315e86f
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/asset.a12bf578b0a39229104c4fad3c6e0c69c7433b72bf79241076b96637e727b21a/index.js
@@ -0,0 +1,7 @@
+// A WebFunction runs this file as a long-lived server process: it must listen on PORT.
+const http = require('http');
+
+http.createServer((req, res) => {
+  res.writeHead(200, { 'Content-Type': 'application/json' });
+  res.end(JSON.stringify({ status: 'ok', source: 'staged-asset' }));
+}).listen(process.env.PORT || 3000);
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/cdk.out b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/cdk.out
new file mode 100644
index 0000000000000..a130d293db2dd
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/cdk.out
@@ -0,0 +1 @@
+{"version":"55.0.0"}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/integ.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/integ.json
new file mode 100644
index 0000000000000..42c8b7085d641
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/integ.json
@@ -0,0 +1,15 @@
+{
+  "version": "55.0.0",
+  "testCases": {
+    "WebFunctionStagedAssetTest/DefaultTest": {
+      "stacks": [
+        "WebFunctionStagedAssetStack"
+      ],
+      "diffAssets": false,
+      "assertionStack": "WebFunctionStagedAssetTest/DefaultTest/DeployAssert",
+      "assertionStackName": "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5"
+    }
+  },
+  "enableLookups": true,
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/manifest.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/manifest.json
new file mode 100644
index 0000000000000..aaff4678ad799
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/manifest.json
@@ -0,0 +1,640 @@
+{
+  "version": "55.0.0",
+  "artifacts": {
+    "WebFunctionStagedAssetStack.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionStagedAssetStack.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionStagedAssetStack": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionStagedAssetStack.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/4396ab2ae7ba183c10424cf7ef726f4cc8087ece11868aed1bcffb051a836d64.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionStagedAssetStack.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionStagedAssetStack.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionStagedAssetStack.metadata.json",
+      "displayName": "WebFunctionStagedAssetStack"
+    },
+    "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.assets": {
+      "type": "cdk:asset-manifest",
+      "properties": {
+        "file": "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.assets.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+      }
+    },
+    "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5": {
+      "type": "aws:cloudformation:stack",
+      "environment": "aws://unknown-account/unknown-region",
+      "properties": {
+        "templateFile": "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.template.json",
+        "terminationProtection": false,
+        "validateOnSynth": false,
+        "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
+        "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
+        "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/49f7db91eb25673d4d0a81bd3537fc1b5213ff58b3be731b1fe9390b302c5141.json",
+        "requiresBootstrapStackVersion": 6,
+        "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
+        "additionalDependencies": [
+          "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.assets"
+        ],
+        "lookupRole": {
+          "arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
+          "requiresBootstrapStackVersion": 8,
+          "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
+        }
+      },
+      "dependencies": [
+        "WebFunctionStagedAssetStack",
+        "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.assets"
+      ],
+      "additionalMetadataFile": "WebFunctionStagedAssetTestDefaultTestDeployAssert64B155E5.metadata.json",
+      "displayName": "WebFunctionStagedAssetTest/DefaultTest/DeployAssert"
+    },
+    "Tree": {
+      "type": "cdk:tree",
+      "properties": {
+        "file": "tree.json"
+      }
+    },
+    "aws-cdk-lib/feature-flag-report": {
+      "type": "cdk:feature-flag-report",
+      "properties": {
+        "module": "aws-cdk-lib",
+        "flags": {
+          "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Pass signingProfileName to CfnSigningProfile"
+          },
+          "@aws-cdk/core:newStyleStackSynthesis": {
+            "recommendedValue": true,
+            "explanation": "Switch to new stack synthesis method which enables CI/CD",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:stackRelativeExports": {
+            "recommendedValue": true,
+            "explanation": "Name exports based on the construct paths relative to the stack, rather than the global construct path",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Disable implicit openListener when custom security groups are provided"
+          },
+          "@aws-cdk/aws-rds:lowercaseDbIdentifier": {
+            "recommendedValue": true,
+            "explanation": "Force lowercasing of RDS Cluster names in CDK",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": {
+            "recommendedValue": true,
+            "explanation": "Allow adding/removing multiple UsagePlanKeys independently",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeVersionProps": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the  `fn.currentVersion`.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-lambda:recognizeLayerVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to opt in to the updated logical id calculation for Lambda Version created using the `fn.currentVersion`."
+          },
+          "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": {
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:checkSecretUsage": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this flag to make it impossible to accidentally use SecretValues in unsafe locations"
+          },
+          "@aws-cdk/core:target-partitions": {
+            "recommendedValue": [
+              "aws",
+              "aws-cn"
+            ],
+            "explanation": "What regions to include in lookup tables of environment agnostic stacks"
+          },
+          "@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ECS extensions will automatically add an `awslogs` driver if no logging is specified"
+          },
+          "@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to have Launch Templates generated by the `InstanceRequireImdsv2Aspect` use unique names."
+          },
+          "@aws-cdk/aws-ecs:arnFormatIncludesClusterName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "ARN format used by ECS. In the new ARN format, the cluster name is part of the resource ID."
+          },
+          "@aws-cdk/aws-iam:minimizePolicies": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Minimize IAM policies by combining Statements"
+          },
+          "@aws-cdk/core:validateSnapshotRemovalPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Error on snapshot removal policies on resources that do not support it."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate key aliases that include the stack name"
+          },
+          "@aws-cdk/aws-s3:createDefaultLoggingPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature flag to create an S3 bucket policy by default in cases where an AWS service would automatically create the Policy if one does not exist."
+          },
+          "@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict KMS key policy for encrypted Queues a bit more"
+          },
+          "@aws-cdk/aws-apigateway:disableCloudWatchRole": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make default CloudWatch Role behavior safe for multiple API Gateways in one environment"
+          },
+          "@aws-cdk/core:enablePartitionLiterals": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Make ARNs concrete if AWS partition is known"
+          },
+          "@aws-cdk/aws-events:eventsTargetQueueSameAccount": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Event Rules may only push to encrypted SQS queues in the same account"
+          },
+          "@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Avoid setting the \"ECS\" deployment controller when adding a circuit breaker"
+          },
+          "@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable this feature to create default policy names for imported roles that depend on the stack the role is in."
+          },
+          "@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use S3 Bucket Policy instead of ACLs for Server Access Logging"
+          },
+          "@aws-cdk/aws-route53-patters:useCertificate": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the official `Certificate` resource instead of `DnsValidatedCertificate`"
+          },
+          "@aws-cdk/customresources:installLatestAwsSdkDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "Whether to install the latest SDK by default in AwsCustomResource"
+          },
+          "@aws-cdk/aws-rds:databaseProxyUniqueResourceName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use unique resource name for Database Proxy"
+          },
+          "@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Remove CloudWatch alarms from deployment group"
+          },
+          "@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include authorizer configuration in the calculation of the API deployment logical ID."
+          },
+          "@aws-cdk/aws-ec2:launchTemplateDefaultUserData": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Define user data for a launch template by default when a machine image is provided."
+          },
+          "@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "SecretTargetAttachments uses the ResourcePolicy of the attached Secret."
+          },
+          "@aws-cdk/aws-redshift:columnId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Whether to use an ID to track Redshift column changes"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable AmazonEMRServicePolicy_v2 managed policies"
+          },
+          "@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Restrict access to the VPC default security group"
+          },
+          "@aws-cdk/aws-apigateway:requestValidatorUniqueId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a unique id for each RequestValidator added to a method"
+          },
+          "@aws-cdk/aws-kms:aliasNameRef": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "KMS Alias name and keyArn will have implicit reference to KMS Key"
+          },
+          "@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition"
+          },
+          "@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Generate a launch template when creating an AutoScalingGroup"
+          },
+          "@aws-cdk/core:includePrefixInUniqueNameGeneration": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Include the stack prefix in the stack name generation process"
+          },
+          "@aws-cdk/aws-efs:denyAnonymousAccess": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "EFS denies anonymous clients accesses"
+          },
+          "@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables support for Multi-AZ with Standby deployment for opensearch domains"
+          },
+          "@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables aws-lambda-nodejs.Function to use the latest available NodeJs runtime as the default"
+          },
+          "@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, mount targets will have a stable logicalId that is linked to the associated subnet."
+          },
+          "@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a scope of InstanceParameterGroup for AuroraClusterInstance with each parameters will change."
+          },
+          "@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, will always use the arn for identifiers for CfnSourceApiAssociation in the GraphqlApi construct rather than id."
+          },
+          "@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, creating an RDS database cluster from a snapshot will only render credentials for snapshot credentials."
+          },
+          "@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the CodeCommit source action is using the default branch name 'main'."
+          },
+          "@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the logical ID of a Lambda permission for a Lambda action includes an alarm ID."
+          },
+          "@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default value for crossAccountKeys to false."
+          },
+          "@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Enables Pipeline to set the default pipeline type to V2."
+          },
+          "@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, IAM Policy created from KMS key grant will reduce the resource scope to this key only."
+          },
+          "@aws-cdk/pipelines:reduceAssetRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from PipelineAssetsFileRole trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-eks:nodegroupNameAttribute": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, nodegroupName attribute of the provisioned EKS NodeGroup will not have the cluster name prefix."
+          },
+          "@aws-cdk/aws-eks:useNativeOidcProvider": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, EKS V2 clusters will use the native OIDC provider resource AWS::IAM::OIDCProvider instead of creating the OIDCProvider with a custom resource (iam.OpenIDConnectProvider)."
+          },
+          "@aws-cdk/aws-ec2:ebsDefaultGp3Volume": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default volume type of the EBS volume will be GP3"
+          },
+          "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, remove default deployment alarm settings"
+          },
+          "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, the custom resource used for `AwsCustomResource` will configure the `logApiResponseData` property as true by default"
+          },
+          "@aws-cdk/aws-s3:keepNotificationInImportedBucket": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "When enabled, Adding notifications to a bucket in the current stack will not remove notification from imported stack."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:useNewS3UriParametersForBedrockInvokeModelTask": {
+            "recommendedValue": true,
+            "explanation": "When enabled, use new props for S3 URI field in task definition of state machine for bedrock invoke model.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/core:explicitStackTags": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, stack tags need to be assigned explicitly on a Stack."
+          },
+          "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, we will only grant the necessary permissions when users specify cloudwatch log group through logConfiguration"
+          },
+          "@aws-cdk/aws-dynamodb:resourcePolicyPerReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled will allow you to specify a resource policy per replica, and not copy the source table policy to all replicas"
+          },
+          "@aws-cdk/aws-ec2:ec2SumTImeoutEnabled": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, initOptions.timeout and resourceSignalTimeout values will be summed together."
+          },
+          "@aws-cdk/aws-appsync:appSyncGraphQLAPIScopeLambdaPermission": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, a Lambda authorizer Permission created when using GraphqlApi will be properly scoped with a SourceArn."
+          },
+          "@aws-cdk/aws-rds:setCorrectValueForDatabaseInstanceReadReplicaInstanceResourceId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the value of property `instanceResourceId` in construct `DatabaseInstanceReadReplica` will be set to the correct value which is `DbiResourceId` instead of currently `DbInstanceArn`"
+          },
+          "@aws-cdk/core:cfnIncludeRejectComplexResourceUpdateCreatePolicyIntrinsics": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CFN templates added with `cfn-include` will error if the template contains Resource Update or Create policies with CFN Intrinsics that include non-primitive values."
+          },
+          "@aws-cdk/aws-lambda-nodejs:sdkV3ExcludeSmithyPackages": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, both `@aws-sdk` and `@smithy` packages will be excluded from the Lambda Node.js 18.x runtime to prevent version mismatches in bundled applications."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:fixRunEcsTaskPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resource of IAM Run Ecs policy generated by SFN EcsRunTask will reference the definition, instead of constructing ARN."
+          },
+          "@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the BastionHost construct will use the latest Amazon Linux 2023 AMI, instead of Amazon Linux 2."
+          },
+          "@aws-cdk/core:aspectStabilization": {
+            "recommendedValue": true,
+            "explanation": "When enabled, a stabilization loop will be run when invoking Aspects during synthesis.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-route53-targets:userPoolDomainNameMethodWithoutCustomResource": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, use a new method for DNS Name of user pool domain target without creating a custom resource."
+          },
+          "@aws-cdk/aws-elasticloadbalancingV2:albDualstackWithoutPublicIpv4SecurityGroupRulesDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default security group ingress rules will allow IPv6 ingress from anywhere"
+          },
+          "@aws-cdk/aws-iam:oidcRejectUnauthorizedConnections": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the default behaviour of OIDC provider will reject unauthorized connections"
+          },
+          "@aws-cdk/core:enableAdditionalMetadataCollection": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will expand the scope of usage data collected to better inform CDK development and improve communication for security concerns and emerging issues."
+          },
+          "@aws-cdk/aws-lambda:createNewPoliciesWithAddToRolePolicy": {
+            "userValue": false,
+            "recommendedValue": false,
+            "explanation": "[Deprecated] When enabled, Lambda will create new inline policies with AddToRolePolicy instead of adding to the Default Policy Statement"
+          },
+          "@aws-cdk/aws-s3:setUniqueReplicationRoleName": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK will automatically generate a unique role name that is used for s3 object replication."
+          },
+          "@aws-cdk/pipelines:reduceStageRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "Remove the root account principal from Stage addActions trust policy",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-events:requireEventBusPolicySid": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, grantPutEventsTo() will use resource policies with Statement IDs for service principals."
+          },
+          "@aws-cdk/core:aspectPrioritiesMutating": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When set to true, Aspects added by the construct library on your behalf will be given a priority of MUTATING."
+          },
+          "@aws-cdk/aws-dynamodb:retainTableReplica": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, table replica will be default to the removal policy of source table unless specified otherwise."
+          },
+          "@aws-cdk/cognito:logUserPoolClientSecretValue": {
+            "recommendedValue": false,
+            "explanation": "When disabled, the value of the user pool client secret will not be logged in the custom resource lambda function logs."
+          },
+          "@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope": {
+            "recommendedValue": true,
+            "explanation": "When enabled, scopes down the trust policy for the cross-account action role",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the resultWriterV2 property of DistributedMap will be used insted of resultWriter"
+          },
+          "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Add an S3 trust policy to a KMS key resource policy for SNS subscriptions."
+          },
+          "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, the EgressOnlyGateway resource is only created if private subnets are defined in the dual-stack VPC."
+          },
+          "@aws-cdk/aws-ec2-alpha:useResourceIdForVpcV2Migration": {
+            "recommendedValue": false,
+            "explanation": "When enabled, use resource IDs for VPC V2 migration"
+          },
+          "@aws-cdk/aws-s3:publicAccessBlockedByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined."
+          },
+          "@aws-cdk/aws-lambda:useCdkManagedLogGroup": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, CDK creates and manages loggroup for the lambda function"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, Network Load Balancer will be created with a security group by default."
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": {
+            "recommendedValue": true,
+            "explanation": "When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement"
+          },
+          "@aws-cdk/aws-route53-patterns:useDistribution": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use the `Distribution` resource instead of `CloudFrontWebDistribution`"
+          },
+          "@aws-cdk/aws-cloudfront:defaultFunctionRuntimeV2_0": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use cloudfront-js-2.0 as the default runtime for CloudFront Functions"
+          },
+          "@aws-cdk/aws-elasticloadbalancingv2:usePostQuantumTlsPolicy": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "When enabled, HTTPS/TLS listeners use post-quantum TLS policy by default"
+          },
+          "@aws-cdk/core:automaticL1Traits": {
+            "recommendedValue": true,
+            "explanation": "Automatically use the default L1 traits for L1 constructs`",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          },
+          "@aws-cdk/aws-batch:defaultToAL2023": {
+            "userValue": true,
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default imageType for EC2 Batch compute environments instead of the deprecated AL2"
+          },
+          "@aws-cdk/aws-eks:defaultToAL2023": {
+            "recommendedValue": true,
+            "explanation": "Use AL2023 as the default AMI type for EKS managed node groups using non-GPU instance types instead of the deprecated AL2"
+          },
+          "@aws-cdk/core:annotationsInValidationReport": {
+            "recommendedValue": true,
+            "explanation": "Include construct annotations (warnings and errors) in the policy validation report"
+          },
+          "@aws-cdk/core:defaultCrossStackReferences": {
+            "recommendedValue": "weak",
+            "explanation": "Controls whether cross-stack references are strong, weak, or both",
+            "unconfiguredBehavesLike": {
+              "v2": "strong"
+            }
+          },
+          "@aws-cdk/core:validateAgainstDefaultRules": {
+            "recommendedValue": true,
+            "explanation": "Treat CloudFormation Validate findings as errors"
+          },
+          "@aws-cdk/aws-ecs:removeEmptyLoadBalancers": {
+            "recommendedValue": true,
+            "explanation": "Render an empty `LoadBalancers` array on an ECS service that has no target groups"
+          },
+          "@aws-cdk/aws-cloudfront:defaultViewerProtocolPolicyRedirectToHttps": {
+            "recommendedValue": true,
+            "explanation": "Default Distribution cache behaviors to redirect HTTP viewer requests to HTTPS"
+          },
+          "@aws-cdk/aws-apigateway:logGroupDestinationArnWithoutWildcard": {
+            "recommendedValue": true,
+            "explanation": "Render the API Gateway access log destination ARN without the trailing `:*`"
+          },
+          "@aws-cdk/aws-stepfunctions-tasks:evaluateExpressionDedicatedFunction": {
+            "recommendedValue": true,
+            "explanation": "When enabled, each EvaluateExpression task gets its own Lambda function",
+            "unconfiguredBehavesLike": {
+              "v2": true
+            }
+          }
+        }
+      }
+    }
+  },
+  "minimumCliVersion": "2.1145.0"
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/tree.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/tree.json
new file mode 100644
index 0000000000000..a77782f2d35e5
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/tree.json
@@ -0,0 +1 @@
+{"version":"tree-0.1","tree":{"id":"App","path":"","constructInfo":{"fqn":"aws-cdk-lib.App","version":"0.0.0"},"children":{"WebFunctionStagedAssetStack":{"id":"WebFunctionStagedAssetStack","path":"WebFunctionStagedAssetStack","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"Automatic":{"id":"Automatic","path":"WebFunctionStagedAssetStack/Automatic","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunction","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionStagedAssetStack/Automatic/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Automatic/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"AutomaticServiceRole73715D6D","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}}}},"Code":{"id":"Code","path":"WebFunctionStagedAssetStack/Automatic/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionStagedAssetStack/Automatic/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionStagedAssetStack/Automatic/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"CodeCopyd6190910":{"id":"CodeCopyd6190910","path":"WebFunctionStagedAssetStack/Automatic/CodeCopyd6190910","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"CustomResourceHandler":{"id":"CustomResourceHandler","path":"WebFunctionStagedAssetStack/Automatic/CodeCopyd6190910/CustomResourceHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.SingletonFunction","version":"0.0.0"}},"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Automatic/CodeCopyd6190910/Resource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetStack/Automatic/CodeCopyd6190910/Resource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionStagedAssetStack/Automatic/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Automatic/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"AutomaticLogGroupC4AD0641","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"Function":{"id":"Function","path":"WebFunctionStagedAssetStack/Automatic/Function","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunction","aws:cdk:cloudformation:logicalId":"AutomaticFunctionB47C23F8","aws:cdk:cloudformation:props":{"functionName":"WebFunctionStageetStackAutomaticA68429D7"}}},"Revision":{"id":"Revision","path":"WebFunctionStagedAssetStack/Automatic/Revision","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionRevision","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionRevision","aws:cdk:cloudformation:logicalId":"AutomaticRevision65EF45A7","aws:cdk:cloudformation:props":{"buildConfig":{"codeConfig":{"s3Object":{"bucket":{"Fn::GetAtt":["AutomaticCodeCopyd6190910DFE30AB1","Bucket"]},"key":{"Fn::GetAtt":["AutomaticCodeCopyd6190910DFE30AB1","Key"]},"versionId":{"Fn::GetAtt":["AutomaticCodeCopyd6190910DFE30AB1","VersionId"]}}},"runtimeConfig":{"runtime":"nodejs24.x"}},"functionName":{"Ref":"AutomaticFunctionB47C23F8"},"serviceConfig":{"executionRoleArn":{"Fn::GetAtt":["AutomaticServiceRole73715D6D","Arn"]},"telemetryConfig":{"loggingConfig":{"logGroup":{"Ref":"AutomaticLogGroupC4AD0641"}}},"timeoutSeconds":30}}}},"Endpoint":{"id":"Endpoint","path":"WebFunctionStagedAssetStack/Automatic/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunctionEndpoint","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetStack/Automatic/Endpoint/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionEndpoint","aws:cdk:cloudformation:logicalId":"AutomaticEndpointC59D3C8A","aws:cdk:cloudformation:props":{"authType":"IamAuth","endpointName":"prod","endpointType":"HomeRegion","functionName":{"Fn::GetAtt":["AutomaticFunctionB47C23F8","FunctionArn"]},"revisionWeights":[{"revisionId":{"Fn::GetAtt":["AutomaticRevision65EF45A7","RevisionId"]},"weight":100}]}}}}}}},"AWSCDKWebFunctionAssetBucket":{"id":"AWSCDKWebFunctionAssetBucket","path":"WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:logicalId":"AWSCDKWebFunctionAssetBucket5B596593","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"publicAccessBlockConfiguration":{"blockPublicAcls":true,"blockPublicPolicy":true,"ignorePublicAcls":true,"restrictPublicBuckets":true},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:logicalId":"AWSCDKWebFunctionAssetBucketPolicy406CF5E7","aws:cdk:cloudformation:props":{"bucket":{"Ref":"AWSCDKWebFunctionAssetBucket5B596593"},"policyDocument":{"Statement":[{"Action":"s3:*","Condition":{"Bool":{"aws:SecureTransport":"false"}},"Effect":"Deny","Principal":{"AWS":"*"},"Resource":[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/*"]]}]},{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/*"]]}]},{"Action":["s3:GetObject","s3:GetObjectVersion"],"Condition":{"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}},"ArnLike":{"aws:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":lambda:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":web-function/*/revision/*"]]}}},"Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/web-function/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetStack/AWSCDKWebFunctionAssetBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Custom::S3AutoDeleteObjectsCustomResourceProvider":{"id":"Custom::S3AutoDeleteObjectsCustomResourceProvider","path":"WebFunctionStagedAssetStack/Custom::S3AutoDeleteObjectsCustomResourceProvider","constructInfo":{"fqn":"aws-cdk-lib.CustomResourceProviderBase","version":"0.0.0"},"children":{"Staging":{"id":"Staging","path":"WebFunctionStagedAssetStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionStagedAssetStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionStagedAssetStack/Custom::S3AutoDeleteObjectsCustomResourceProvider/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312":{"id":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","path":"WebFunctionStagedAssetStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312":{"id":"Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["s3:GetObject","s3:GetObjectVersion"],"Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":s3:::",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/*"]]}},{"Action":["s3:Abort*","s3:DeleteObject*","s3:PutObject","s3:PutObjectLegalHold","s3:PutObjectRetention","s3:PutObjectTagging","s3:PutObjectVersionTagging"],"Effect":"Allow","Resource":{"Fn::Join":["",[{"Fn::GetAtt":["AWSCDKWebFunctionAssetBucket5B596593","Arn"]},"/web-function/*"]]}}],"Version":"2012-10-17"},"policyName":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleDefaultPolicy05646207","roles":[{"Ref":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE"}]}}}}}}},"Code":{"id":"Code","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312E813A085","aws:cdk:cloudformation:props":{"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip"},"handler":"index.handler","loggingConfig":{"logGroup":{"Ref":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312A8C41E5C"}},"role":{"Fn::GetAtt":["CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71dest438c09a9673f2abad1d402b3095f4312ServiceRoleFA1CFFCE","Arn"]},"runtime":"nodejs24.x","timeout":900}}}}},"AutomaticSecond":{"id":"AutomaticSecond","path":"WebFunctionStagedAssetStack/AutomaticSecond","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunction","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionStagedAssetStack/AutomaticSecond/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/AutomaticSecond/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"AutomaticSecondServiceRoleCA7814FD","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}}}},"Code":{"id":"Code","path":"WebFunctionStagedAssetStack/AutomaticSecond/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionStagedAssetStack/AutomaticSecond/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionStagedAssetStack/AutomaticSecond/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"CodeCopyd6190910":{"id":"CodeCopyd6190910","path":"WebFunctionStagedAssetStack/AutomaticSecond/CodeCopyd6190910","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"CustomResourceHandler":{"id":"CustomResourceHandler","path":"WebFunctionStagedAssetStack/AutomaticSecond/CodeCopyd6190910/CustomResourceHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.SingletonFunction","version":"0.0.0"}},"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/AutomaticSecond/CodeCopyd6190910/Resource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetStack/AutomaticSecond/CodeCopyd6190910/Resource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionStagedAssetStack/AutomaticSecond/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/AutomaticSecond/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"AutomaticSecondLogGroup7FE94734","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"Function":{"id":"Function","path":"WebFunctionStagedAssetStack/AutomaticSecond/Function","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunction","aws:cdk:cloudformation:logicalId":"AutomaticSecondFunctionAB53D7F9","aws:cdk:cloudformation:props":{"functionName":"WebFunctionStagekAutomaticSecondB3C75A59"}}},"Revision":{"id":"Revision","path":"WebFunctionStagedAssetStack/AutomaticSecond/Revision","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionRevision","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionRevision","aws:cdk:cloudformation:logicalId":"AutomaticSecondRevision59068325","aws:cdk:cloudformation:props":{"buildConfig":{"codeConfig":{"s3Object":{"bucket":{"Fn::GetAtt":["AutomaticSecondCodeCopyd6190910A8C0FF92","Bucket"]},"key":{"Fn::GetAtt":["AutomaticSecondCodeCopyd6190910A8C0FF92","Key"]},"versionId":{"Fn::GetAtt":["AutomaticSecondCodeCopyd6190910A8C0FF92","VersionId"]}}},"runtimeConfig":{"runtime":"nodejs24.x"}},"functionName":{"Ref":"AutomaticSecondFunctionAB53D7F9"},"serviceConfig":{"executionRoleArn":{"Fn::GetAtt":["AutomaticSecondServiceRoleCA7814FD","Arn"]},"telemetryConfig":{"loggingConfig":{"logGroup":{"Ref":"AutomaticSecondLogGroup7FE94734"}}},"timeoutSeconds":30}}}},"Endpoint":{"id":"Endpoint","path":"WebFunctionStagedAssetStack/AutomaticSecond/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunctionEndpoint","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetStack/AutomaticSecond/Endpoint/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionEndpoint","aws:cdk:cloudformation:logicalId":"AutomaticSecondEndpointA57E8247","aws:cdk:cloudformation:props":{"authType":"IamAuth","endpointName":"prod","endpointType":"HomeRegion","functionName":{"Fn::GetAtt":["AutomaticSecondFunctionAB53D7F9","FunctionArn"]},"revisionWeights":[{"revisionId":{"Fn::GetAtt":["AutomaticSecondRevision59068325","RevisionId"]},"weight":100}]}}}}}}},"CallerCodeBucket":{"id":"CallerCodeBucket","path":"WebFunctionStagedAssetStack/CallerCodeBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.Bucket","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/CallerCodeBucket/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucket","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::Bucket","aws:cdk:cloudformation:logicalId":"CallerCodeBucketFB907A2B","aws:cdk:cloudformation:props":{"bucketEncryption":{"serverSideEncryptionConfiguration":[{"serverSideEncryptionByDefault":{"sseAlgorithm":"AES256"}}]},"tags":[{"key":"aws-cdk:auto-delete-objects","value":"true"}],"versioningConfiguration":{"status":"Enabled"}}}},"Policy":{"id":"Policy","path":"WebFunctionStagedAssetStack/CallerCodeBucket/Policy","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketPolicy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/CallerCodeBucket/Policy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.CfnBucketPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::S3::BucketPolicy","aws:cdk:cloudformation:logicalId":"CallerCodeBucketPolicy2C433922","aws:cdk:cloudformation:props":{"bucket":{"Ref":"CallerCodeBucketFB907A2B"},"policyDocument":{"Statement":[{"Action":["s3:DeleteObject*","s3:GetBucket*","s3:List*","s3:PutBucketPolicy"],"Effect":"Allow","Principal":{"AWS":{"Fn::GetAtt":["CustomS3AutoDeleteObjectsCustomResourceProviderRole3B1BD092","Arn"]}},"Resource":[{"Fn::GetAtt":["CallerCodeBucketFB907A2B","Arn"]},{"Fn::Join":["",[{"Fn::GetAtt":["CallerCodeBucketFB907A2B","Arn"]},"/*"]]}]},{"Action":["s3:GetObject","s3:GetObjectVersion"],"Condition":{"StringEquals":{"aws:SourceAccount":{"Ref":"AWS::AccountId"}},"ArnLike":{"aws:SourceArn":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":lambda:",{"Ref":"AWS::Region"},":",{"Ref":"AWS::AccountId"},":web-function/WebFunctionStagesetStackSpecificD983D53C/revision/*"]]}}},"Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"},"Resource":{"Fn::Join":["",[{"Fn::GetAtt":["CallerCodeBucketFB907A2B","Arn"]},"/webfunctions/web-function/WebFunctionStagedAssetStackSpecificD983D53C/*"]]}}],"Version":"2012-10-17"}}}}}},"AutoDeleteObjectsCustomResource":{"id":"AutoDeleteObjectsCustomResource","path":"WebFunctionStagedAssetStack/CallerCodeBucket/AutoDeleteObjectsCustomResource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetStack/CallerCodeBucket/AutoDeleteObjectsCustomResource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"Specific":{"id":"Specific","path":"WebFunctionStagedAssetStack/Specific","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunction","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionStagedAssetStack/Specific/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Specific/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"SpecificServiceRole381077C9","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}}}},"Code":{"id":"Code","path":"WebFunctionStagedAssetStack/Specific/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionStagedAssetStack/Specific/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionStagedAssetStack/Specific/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"CodeCopy8a875a7a":{"id":"CodeCopy8a875a7a","path":"WebFunctionStagedAssetStack/Specific/CodeCopy8a875a7a","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"CustomResourceHandler":{"id":"CustomResourceHandler","path":"WebFunctionStagedAssetStack/Specific/CodeCopy8a875a7a/CustomResourceHandler","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.SingletonFunction","version":"0.0.0"}},"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Specific/CodeCopy8a875a7a/Resource","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetStack/Specific/CodeCopy8a875a7a/Resource/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}}}},"LogGroup":{"id":"LogGroup","path":"WebFunctionStagedAssetStack/Specific/LogGroup","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Specific/LogGroup/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"SpecificLogGroup92FAE761","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"Function":{"id":"Function","path":"WebFunctionStagedAssetStack/Specific/Function","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunction","aws:cdk:cloudformation:logicalId":"SpecificFunction2B9945D8","aws:cdk:cloudformation:props":{"functionName":"WebFunctionStagesetStackSpecificD983D53C"}}},"Revision":{"id":"Revision","path":"WebFunctionStagedAssetStack/Specific/Revision","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionRevision","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionRevision","aws:cdk:cloudformation:logicalId":"SpecificRevisionF768306C","aws:cdk:cloudformation:props":{"buildConfig":{"codeConfig":{"s3Object":{"bucket":{"Fn::GetAtt":["SpecificCodeCopy8a875a7aD278F5D7","Bucket"]},"key":{"Fn::GetAtt":["SpecificCodeCopy8a875a7aD278F5D7","Key"]},"versionId":{"Fn::GetAtt":["SpecificCodeCopy8a875a7aD278F5D7","VersionId"]}}},"runtimeConfig":{"runtime":"nodejs24.x"}},"functionName":{"Ref":"SpecificFunction2B9945D8"},"serviceConfig":{"executionRoleArn":{"Fn::GetAtt":["SpecificServiceRole381077C9","Arn"]},"telemetryConfig":{"loggingConfig":{"logGroup":{"Ref":"SpecificLogGroup92FAE761"}}},"timeoutSeconds":30}}}},"Endpoint":{"id":"Endpoint","path":"WebFunctionStagedAssetStack/Specific/Endpoint","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.WebFunctionEndpoint","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetStack/Specific/Endpoint/Default","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnWebFunctionEndpoint","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::WebFunctionEndpoint","aws:cdk:cloudformation:logicalId":"SpecificEndpoint6806C68C","aws:cdk:cloudformation:props":{"authType":"IamAuth","endpointName":"prod","endpointType":"HomeRegion","functionName":{"Fn::GetAtt":["SpecificFunction2B9945D8","FunctionArn"]},"revisionWeights":[{"revisionId":{"Fn::GetAtt":["SpecificRevisionF768306C","RevisionId"]},"weight":100}]}}}}}}},"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f":{"id":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f","path":"WebFunctionStagedAssetStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.LogGroup","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_logs.CfnLogGroup","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Logs::LogGroup","aws:cdk:cloudformation:logicalId":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f0A314486","aws:cdk:cloudformation:props":{"retentionInDays":731}}}}},"Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f":{"id":"Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.Function","version":"0.0.0"},"children":{"ServiceRole":{"id":"ServiceRole","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/ServiceRole","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Role","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/ServiceRole/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnRole","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Role","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRole0A9D2289","aws:cdk:cloudformation:props":{"assumeRolePolicyDocument":{"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"Service":"lambda.amazonaws.com"}}],"Version":"2012-10-17"},"managedPolicyArns":[{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]]}]}}},"DefaultPolicy":{"id":"DefaultPolicy","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/ServiceRole/DefaultPolicy","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.Policy","version":"0.0.0"},"children":{"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/ServiceRole/DefaultPolicy/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_iam.CfnPolicy","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::IAM::Policy","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRoleDefaultPolicyCCD65154","aws:cdk:cloudformation:props":{"policyDocument":{"Statement":[{"Action":["s3:GetObject","s3:GetObjectVersion"],"Effect":"Allow","Resource":{"Fn::Join":["",["arn:",{"Ref":"AWS::Partition"},":s3:::",{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"/*"]]}},{"Action":["s3:Abort*","s3:DeleteObject*","s3:PutObject","s3:PutObjectLegalHold","s3:PutObjectRetention","s3:PutObjectTagging","s3:PutObjectVersionTagging"],"Effect":"Allow","Resource":{"Fn::Join":["",[{"Fn::GetAtt":["CallerCodeBucketFB907A2B","Arn"]},"/webfunctions/web-function/*"]]}}],"Version":"2012-10-17"},"policyName":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRoleDefaultPolicyCCD65154","roles":[{"Ref":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRole0A9D2289"}]}}}}}}},"Code":{"id":"Code","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/Code","constructInfo":{"fqn":"aws-cdk-lib.aws_s3_assets.Asset","version":"0.0.0"},"children":{"Stage":{"id":"Stage","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/Code/Stage","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"AssetBucket":{"id":"AssetBucket","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/Code/AssetBucket","constructInfo":{"fqn":"aws-cdk-lib.aws_s3.BucketBase","version":"0.0.0"}}}},"Resource":{"id":"Resource","path":"WebFunctionStagedAssetStack/Custom::S3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f/Resource","constructInfo":{"fqn":"aws-cdk-lib.aws_lambda.CfnFunction","version":"0.0.0"},"attributes":{"aws:cdk:cloudformation:type":"AWS::Lambda::Function","aws:cdk:cloudformation:logicalId":"CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f8D1137DB","aws:cdk:cloudformation:props":{"code":{"s3Bucket":{"Fn::Sub":"cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"},"s3Key":"965d74011d2d81904552e2dfcbccddea0b3749ab4cbfd8a3828f52eb5292d46d.zip"},"handler":"index.handler","loggingConfig":{"logGroup":{"Ref":"S3ObjectCopyLogGroupe2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565f0A314486"}},"role":{"Fn::GetAtt":["CustomS3ObjectCopye2f8cf6b1b0f4b3f9a2c6f1f5b6d4a71destb0df12e147489a5bf23e813b8a44565fServiceRole0A9D2289","Arn"]},"runtime":"nodejs24.x","timeout":900}}}}},"Exports":{"id":"Exports","path":"WebFunctionStagedAssetStack/Exports","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Output{\"Fn::GetAtt\":[\"AutomaticEndpointC59D3C8A\",\"DomainName\"]}":{"id":"Output{\"Fn::GetAtt\":[\"AutomaticEndpointC59D3C8A\",\"DomainName\"]}","path":"WebFunctionStagedAssetStack/Exports/Output{\"Fn::GetAtt\":[\"AutomaticEndpointC59D3C8A\",\"DomainName\"]}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Fn::GetAtt\":[\"AutomaticSecondEndpointA57E8247\",\"DomainName\"]}":{"id":"Output{\"Fn::GetAtt\":[\"AutomaticSecondEndpointA57E8247\",\"DomainName\"]}","path":"WebFunctionStagedAssetStack/Exports/Output{\"Fn::GetAtt\":[\"AutomaticSecondEndpointA57E8247\",\"DomainName\"]}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}},"Output{\"Fn::GetAtt\":[\"SpecificEndpoint6806C68C\",\"DomainName\"]}":{"id":"Output{\"Fn::GetAtt\":[\"SpecificEndpoint6806C68C\",\"DomainName\"]}","path":"WebFunctionStagedAssetStack/Exports/Output{\"Fn::GetAtt\":[\"SpecificEndpoint6806C68C\",\"DomainName\"]}","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionStagedAssetStack/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionStagedAssetStack/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}},"WebFunctionStagedAssetTest":{"id":"WebFunctionStagedAssetTest","path":"WebFunctionStagedAssetTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTest","version":"0.0.0"},"children":{"DefaultTest":{"id":"DefaultTest","path":"WebFunctionStagedAssetTest/DefaultTest","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.IntegTestCase","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetTest/DefaultTest/Default","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}},"DeployAssert":{"id":"DeployAssert","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert","constructInfo":{"fqn":"aws-cdk-lib.Stack","version":"0.0.0"},"children":{"HttpApiCallf5247841c099f14e599f1096f222023a":{"id":"HttpApiCallf5247841c099f14e599f1096f222023a","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCallf5247841c099f14e599f1096f222023a","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.HttpApiCall","version":"0.0.0"},"children":{"HttpProvider":{"id":"HttpProvider","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCallf5247841c099f14e599f1096f222023a/HttpProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCallf5247841c099f14e599f1096f222023a/HttpProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCallf5247841c099f14e599f1096f222023a/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCallf5247841c099f14e599f1096f222023a/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCallf5247841c099f14e599f1096f222023a/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"SingletonFunction1488541a7b23466481b69b4408076b81":{"id":"SingletonFunction1488541a7b23466481b69b4408076b81","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"},"children":{"Staging":{"id":"Staging","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Staging","constructInfo":{"fqn":"aws-cdk-lib.AssetStaging","version":"0.0.0"}},"Role":{"id":"Role","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Role","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}},"Handler":{"id":"Handler","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/SingletonFunction1488541a7b23466481b69b4408076b81/Handler","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594":{"id":"HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.HttpApiCall","version":"0.0.0"},"children":{"HttpProvider":{"id":"HttpProvider","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594/HttpProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594/HttpProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall78edc3d6d5268ebc8bb6e483a00e2594/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"HttpApiCall2b2e3be73503121aacc94303204a9ff2":{"id":"HttpApiCall2b2e3be73503121aacc94303204a9ff2","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall2b2e3be73503121aacc94303204a9ff2","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.HttpApiCall","version":"0.0.0"},"children":{"HttpProvider":{"id":"HttpProvider","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall2b2e3be73503121aacc94303204a9ff2/HttpProvider","constructInfo":{"fqn":"@aws-cdk/integ-tests-alpha.AssertionsProvider","version":"0.0.0"},"children":{"AssertionsProvider":{"id":"AssertionsProvider","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall2b2e3be73503121aacc94303204a9ff2/HttpProvider/AssertionsProvider","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}},"Default":{"id":"Default","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall2b2e3be73503121aacc94303204a9ff2/Default","constructInfo":{"fqn":"aws-cdk-lib.CustomResource","version":"0.0.0"},"children":{"Default":{"id":"Default","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall2b2e3be73503121aacc94303204a9ff2/Default/Default","constructInfo":{"fqn":"aws-cdk-lib.CfnResource","version":"0.0.0"}}}},"AssertionResults":{"id":"AssertionResults","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/HttpApiCall2b2e3be73503121aacc94303204a9ff2/AssertionResults","constructInfo":{"fqn":"aws-cdk-lib.CfnOutput","version":"0.0.0"}}}},"BootstrapVersion":{"id":"BootstrapVersion","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/BootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnParameter","version":"0.0.0"}},"CheckBootstrapVersion":{"id":"CheckBootstrapVersion","path":"WebFunctionStagedAssetTest/DefaultTest/DeployAssert/CheckBootstrapVersion","constructInfo":{"fqn":"aws-cdk-lib.CfnRule","version":"0.0.0"}}}}}}}},"Tree":{"id":"Tree","path":"Tree","constructInfo":{"fqn":"constructs.Construct","version":"10.8.1"}}}}}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/validation-report.json b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/validation-report.json
new file mode 100644
index 0000000000000..6e40fa68c963a
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.js.snapshot/validation-report.json
@@ -0,0 +1,5 @@
+{
+  "version": "55.0.0",
+  "title": "Validation Report",
+  "pluginReports": []
+}
\ No newline at end of file
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.ts b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.ts
new file mode 100644
index 0000000000000..47e628d56a394
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/integ.webfunction-staged-asset.ts
@@ -0,0 +1,73 @@
+import * as path from 'path';
+import * as s3 from 'aws-cdk-lib/aws-s3';
+import * as cdk from 'aws-cdk-lib/core';
+import * as integ from '@aws-cdk/integ-tests-alpha';
+import { WebFunction, WebFunctionCode, WebFunctionRuntime, WebFunctionAuthType } from 'aws-cdk-lib/aws-lambda';
+
+/**
+ * Deploys WebFunctions whose code comes from a local asset rather than a bucket the caller
+ * populated themselves.
+ *
+ * Contrast with `integ.webfunction-minimal`, where using `fromBucket` means the template has to
+ * carry a `BucketDeployment` plus an `AwsCustomResource` doing `headObject` just to learn the
+ * object version. Here each factory call is a single line: CDK stages the asset, copies it into
+ * a compliant bucket, and pins the version that copy wrote.
+ *
+ * Three functions are deployed to cover behaviour that only shows up on a real deployment:
+ *
+ * - `Automatic` / `AutomaticSecond` share one CDK-created bucket, each with its own copy custom
+ *   resource writing a distinct key. This is the part unit tests cannot prove: that two copies
+ *   into a single bucket really do produce two independently pinned object versions.
+ * - `Specific` copies into a bucket the caller owns.
+ */
+const ASSET_PATH = path.join(__dirname, 'webfunction-staged-code');
+
+const app = new cdk.App({ analyticsReporting: false });
+const stack = new cdk.Stack(app, 'WebFunctionStagedAssetStack');
+
+// Code staged into a bucket CDK creates and configures (versioning, AES256, Lambda read policy).
+const automatic = new WebFunction(stack, 'Automatic', {
+  code: WebFunctionCode.fromAssetToManagedBucket(ASSET_PATH),
+  runtime: WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+});
+
+// A second function in the same stack: reuses the bucket above, gets its own copy and version.
+const automaticSecond = new WebFunction(stack, 'AutomaticSecond', {
+  code: WebFunctionCode.fromAssetToManagedBucket(ASSET_PATH),
+  runtime: WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+});
+
+// Code staged into a bucket the caller owns. The caller is responsible for the bucket meeting
+// WebFunction's requirements; CDK validates what it can see at synthesis.
+const callerBucket = new s3.Bucket(stack, 'CallerCodeBucket', {
+  versioned: true,
+  encryption: s3.BucketEncryption.S3_MANAGED,
+  removalPolicy: cdk.RemovalPolicy.DESTROY,
+  autoDeleteObjects: true,
+});
+
+const specific = new WebFunction(stack, 'Specific', {
+  code: WebFunctionCode.fromAssetToProvidedBucket(callerBucket, ASSET_PATH, {
+    keyPrefix: 'webfunctions/',
+  }),
+  runtime: WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+});
+
+const testCase = new integ.IntegTest(app, 'WebFunctionStagedAssetTest', {
+  testCases: [stack],
+  diffAssets: false,
+});
+
+// Each endpoint uses IAM_AUTH, so an unsigned request is rejected with 403. Asserting 403 —
+// rather than a connection error or 5xx — confirms the endpoint is live, reachable over TLS,
+// and enforcing auth. It does not exercise the code: the signature check rejects the request
+// before anything is invoked. The read grant on the copied object is exercised earlier, when
+// the service reads the object to create each revision — a broken grant fails the deployment.
+for (const fn of [automatic, automaticSecond, specific]) {
+  testCase.assertions
+    .httpApiCall(`https://${fn.endpoint.domainName}/`)
+    .expect(integ.ExpectedResult.objectLike({ status: 403 }));
+}
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-egress-handler/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-egress-handler/index.js
new file mode 100644
index 0000000000000..e6ae5c0940030
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-egress-handler/index.js
@@ -0,0 +1,39 @@
+// A WebFunction runs this file as a long-lived HTTP server. The platform passes the address
+// to listen on in AWS_LAMBDA_HTTP_ENDPOINT (for example "0.0.0.0:3000").
+//
+// Each request fetches OBJECT_URL and returns its body. The bucket only serves that object
+// through the VPC's S3 gateway endpoint, so a 200 here shows both that the handler runs and
+// that its egress goes through the network connector into the VPC.
+const http = require('http');
+const https = require('https');
+
+function fetchObject(url) {
+  return new Promise((resolve, reject) => {
+    const req = https.get(url, { timeout: 5000 }, (res) => {
+      let body = '';
+      res.on('data', (chunk) => { body += chunk; });
+      res.on('end', () => resolve({ status: res.statusCode, body }));
+    });
+    req.on('timeout', () => req.destroy(new Error('timed out')));
+    req.on('error', reject);
+  });
+}
+
+const server = http.createServer(async (_req, res) => {
+  let status;
+  let result;
+  try {
+    const object = await fetchObject(process.env.OBJECT_URL);
+    status = object.status === 200 ? 200 : 502;
+    result = { objectStatus: object.status, object: object.body };
+  } catch (err) {
+    status = 502;
+    result = { error: err.message };
+  }
+  res.writeHead(status, { 'Content-Type': 'application/json' });
+  res.end(JSON.stringify(result));
+});
+
+const endpoint = (process.env.AWS_LAMBDA_HTTP_ENDPOINT || '0.0.0.0:3000').replace(/^[a-z]+:\/\//, '');
+const sep = endpoint.lastIndexOf(':');
+server.listen(Number(endpoint.slice(sep + 1)) || 3000, endpoint.slice(0, sep) || '0.0.0.0');
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-handler/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-handler/index.js
new file mode 100644
index 0000000000000..089e0b243c16b
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-handler/index.js
@@ -0,0 +1,7 @@
+// A WebFunction runs this file as a long-lived server process: it must listen on PORT.
+const http = require('http');
+
+http.createServer((req, res) => {
+  res.writeHead(200, { 'Content-Type': 'application/json' });
+  res.end(JSON.stringify({ status: 'ok' }));
+}).listen(process.env.PORT || 3000);
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-ok-handler/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-ok-handler/index.js
new file mode 100644
index 0000000000000..c4ad7210c52f8
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-ok-handler/index.js
@@ -0,0 +1,12 @@
+// A WebFunction runs this file as a long-lived HTTP server. The platform passes the address
+// to listen on in AWS_LAMBDA_HTTP_ENDPOINT (for example "0.0.0.0:3000").
+const http = require('http');
+
+const server = http.createServer((_req, res) => {
+  res.writeHead(200, { 'Content-Type': 'application/json' });
+  res.end(JSON.stringify({ status: 'ok' }));
+});
+
+const endpoint = (process.env.AWS_LAMBDA_HTTP_ENDPOINT || '0.0.0.0:3000').replace(/^[a-z]+:\/\//, '');
+const sep = endpoint.lastIndexOf(':');
+server.listen(Number(endpoint.slice(sep + 1)) || 3000, endpoint.slice(0, sep) || '0.0.0.0');
diff --git a/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-staged-code/index.js b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-staged-code/index.js
new file mode 100644
index 0000000000000..1d3414315e86f
--- /dev/null
+++ b/packages/@aws-cdk-testing/framework-integ/test/aws-lambda/test/webfunction-staged-code/index.js
@@ -0,0 +1,7 @@
+// A WebFunction runs this file as a long-lived server process: it must listen on PORT.
+const http = require('http');
+
+http.createServer((req, res) => {
+  res.writeHead(200, { 'Content-Type': 'application/json' });
+  res.end(JSON.stringify({ status: 'ok', source: 'staged-asset' }));
+}).listen(process.env.PORT || 3000);
diff --git a/packages/@aws-cdk/custom-resource-handlers/README.md b/packages/@aws-cdk/custom-resource-handlers/README.md
index 49312227ad2be..4515f4fccbb03 100644
--- a/packages/@aws-cdk/custom-resource-handlers/README.md
+++ b/packages/@aws-cdk/custom-resource-handlers/README.md
@@ -22,6 +22,7 @@ This package contains the following custom resource handlers:
 - aws-s3/auto-delete-objects-handler
 - aws-s3/notifications-resource-handler
 - aws-s3-deployment/bucket-deployment-handler
+- aws-s3-deployment/s3-object-copy-handler
 - aws-ses/drop-spam-handler
 - aws-stepfunctions-tasks/cross-region-aws-sdk-handler
 - aws-stepfunctions-tasks/eval-nodejs-handler
diff --git a/packages/@aws-cdk/custom-resource-handlers/lib/aws-s3-deployment/s3-object-copy-handler/index.ts b/packages/@aws-cdk/custom-resource-handlers/lib/aws-s3-deployment/s3-object-copy-handler/index.ts
new file mode 100644
index 0000000000000..aab30e7410777
--- /dev/null
+++ b/packages/@aws-cdk/custom-resource-handlers/lib/aws-s3-deployment/s3-object-copy-handler/index.ts
@@ -0,0 +1,173 @@
+import { createHash } from 'crypto';
+import { S3 } from '@aws-sdk/client-s3';
+import { makeHandler } from '../../nodejs-entrypoint';
+
+// The copy function runs in the stack's Region, and a provided bucket may be in another one.
+export const s3 = new S3({ followRegionRedirects: true });
+
+interface ResourceProperties {
+  readonly SourceBucketName: string;
+  readonly SourceObjectKey: string;
+  readonly DestinationBucketName: string;
+  /** Prefix of the destination key. The rest of the key is computed from the identity below. */
+  readonly DestinationKeyPrefix: string;
+  /** Identifies the content to copy, independent of where the source object is stored. */
+  readonly ContentHash: string;
+  /**
+   * Configuration of the consumer of the copy, if any. A change gives a new key, so each
+   * configuration has an object of its own.
+   */
+  readonly Configuration?: unknown;
+}
+
+/** The address of one version of the destination object. */
+interface ObjectVersion {
+  readonly Bucket: string;
+  readonly Key: string;
+  readonly VersionId: string;
+}
+
+export const handler = makeHandler(s3ObjectCopyHandler);
+
+export async function s3ObjectCopyHandler(event: AWSLambda.CloudFormationCustomResourceEvent) {
+  const props = event.ResourceProperties as unknown as ResourceProperties;
+
+  switch (event.RequestType) {
+    case 'Create':
+      return written(await copyObject(props));
+
+    case 'Update': {
+      // The physical ID names the object version this resource wrote. If the content and the
+      // configuration still give the same key, that object is still the right one: only the
+      // location of the source changed, so nothing is copied. Otherwise the new object gets a
+      // new physical ID, which CloudFormation treats as a replacement: it deletes the old ID in
+      // the cleanup phase, or keeps it under an UpdateReplacePolicy of Retain.
+      const current = parsePhysicalResourceId(event.PhysicalResourceId);
+      if (current && current.Bucket === props.DestinationBucketName && current.Key === destinationKey(props)) {
+        return written(current);
+      }
+      return written(await copyObject(props));
+    }
+
+    case 'Delete': {
+      // Removes exactly the version this resource wrote. The ID comes from CloudFormation
+      // rather than the current properties: on a replacement the two differ, and it is the
+      // old object that has to go.
+      const target = parsePhysicalResourceId(event.PhysicalResourceId);
+      if (!target) {
+        // CloudFormation generates an ID of its own when a Create is cancelled before this
+        // handler responds, and then rolls that Create back with a Delete carrying that ID.
+        console.log(`Physical resource ID '${event.PhysicalResourceId}' names no object version; nothing to delete`);
+      } else {
+        await deleteVersion(target);
+      }
+      return { PhysicalResourceId: event.PhysicalResourceId };
+    }
+  }
+}
+
+/**
+ * The destination key: the prefix, followed by a hash of the content and the configuration.
+ *
+ * The configuration is serialized with sorted keys, so that the hash does not depend on the
+ * order CloudFormation sends the properties in.
+ */
+export function destinationKey(props: ResourceProperties): string {
+  const identity = canonicalJson([props.ContentHash, props.Configuration ?? null]);
+  const hash = createHash('sha256').update(identity).digest('hex').slice(0, 32);
+  return `${props.DestinationKeyPrefix}${hash}.zip`;
+}
+
+function canonicalJson(value: unknown): string {
+  if (Array.isArray(value)) {
+    return `[${value.map(canonicalJson).join(',')}]`;
+  }
+  if (value !== null && typeof value === 'object') {
+    const entries = Object.keys(value as object).sort()
+      .map((k) => `${JSON.stringify(k)}:${canonicalJson((value as any)[k])}`);
+    return `{${entries.join(',')}}`;
+  }
+  return JSON.stringify(value);
+}
+
+const VERSION_SEPARATOR = '?versionId=';
+
+/**
+ * The physical ID: `/?versionId=`.
+ *
+ * CloudFormation has no schema for a custom resource, so the ID is the only thing that decides
+ * replacement versus in-place update. It names the exact version written, so that a Delete
+ * removes that version and nothing else. The key never contains `?`: the prefix is validated
+ * to exclude it and the rest is a hex hash.
+ */
+function written(object: ObjectVersion) {
+  return {
+    PhysicalResourceId: `${object.Bucket}/${object.Key}${VERSION_SEPARATOR}${object.VersionId}`,
+    Data: object,
+  };
+}
+
+function parsePhysicalResourceId(physicalResourceId: string): ObjectVersion | undefined {
+  const separator = physicalResourceId.lastIndexOf(VERSION_SEPARATOR);
+  const slash = physicalResourceId.indexOf('/');
+  if (separator < 0 || slash <= 0 || slash + 1 >= separator) {
+    return undefined;
+  }
+  const versionId = physicalResourceId.slice(separator + VERSION_SEPARATOR.length);
+  if (!versionId) {
+    return undefined;
+  }
+  return {
+    Bucket: physicalResourceId.slice(0, slash),
+    Key: physicalResourceId.slice(slash + 1, separator),
+    VersionId: versionId,
+  };
+}
+
+function encodeSourceKey(key: string): string {
+  return key.split('/').map(encodeURIComponent).join('/');
+}
+
+async function copyObject(props: ResourceProperties): Promise {
+  const key = destinationKey(props);
+  const response = await s3.copyObject({
+    Bucket: props.DestinationBucketName,
+    Key: key,
+    // `CopySource` has to be URL-encoded, but the separators between path segments must stay
+    // literal slashes. Encoding the key as a whole turns them into `%2F`, and S3 then looks
+    // for an object whose name really does contain `%2F` and fails with NoSuchKey.
+    CopySource: `${props.SourceBucketName}/${encodeSourceKey(props.SourceObjectKey)}`,
+  });
+
+  if (!response.VersionId) {
+    // S3 only returns a VersionId when the destination bucket has versioning enabled. Fail
+    // loudly rather than reporting success with an empty version, which would leave whatever
+    // consumes this resource pointing at a mutable object.
+    throw new Error(
+      `Copied s3://${props.DestinationBucketName}/${key} but S3 returned no VersionId. ` +
+      'Enable versioning on the destination bucket.',
+    );
+  }
+
+  // Return the full address of the written object, not just the version, so consumers can
+  // read the location entirely through this resource's outputs.
+  return { Bucket: props.DestinationBucketName, Key: key, VersionId: response.VersionId };
+}
+
+/**
+ * Delete one object version.
+ *
+ * A bucket that no longer exists counts as cleaned up: the bucket's own removal already took
+ * the object with it.
+ */
+async function deleteVersion(target: ObjectVersion): Promise {
+  try {
+    await s3.deleteObject({ Bucket: target.Bucket, Key: target.Key, VersionId: target.VersionId });
+  } catch (error: any) {
+    if (error.name === 'NoSuchBucket') {
+      console.log(`Bucket '${target.Bucket}' does not exist; nothing to delete.`);
+      return;
+    }
+    throw error;
+  }
+}
diff --git a/packages/@aws-cdk/custom-resource-handlers/lib/custom-resources-framework/config.ts b/packages/@aws-cdk/custom-resource-handlers/lib/custom-resources-framework/config.ts
index 5897b79c73b0a..19b1cb4410fff 100644
--- a/packages/@aws-cdk/custom-resource-handlers/lib/custom-resources-framework/config.ts
+++ b/packages/@aws-cdk/custom-resource-handlers/lib/custom-resources-framework/config.ts
@@ -347,6 +347,12 @@ export const config: HandlerFrameworkConfig = {
         minifyAndBundle: false,
       },
     ],
+    's3-object-copy-provider': [
+      {
+        type: ComponentType.SINGLETON_FUNCTION,
+        sourceCode: path.resolve(__dirname, '..', 'aws-s3-deployment', 's3-object-copy-handler', 'index.ts'),
+      },
+    ],
   },
   'aws-ses': {
     'drop-spam-provider': [
diff --git a/packages/@aws-cdk/custom-resource-handlers/test/aws-s3-deployment/s3-object-copy-handler/index.test.ts b/packages/@aws-cdk/custom-resource-handlers/test/aws-s3-deployment/s3-object-copy-handler/index.test.ts
new file mode 100644
index 0000000000000..6716bf949f77f
--- /dev/null
+++ b/packages/@aws-cdk/custom-resource-handlers/test/aws-s3-deployment/s3-object-copy-handler/index.test.ts
@@ -0,0 +1,202 @@
+import { CopyObjectCommand, DeleteObjectCommand, S3Client } from '@aws-sdk/client-s3';
+import { mockClient } from 'aws-sdk-client-mock';
+import { destinationKey, s3, s3ObjectCopyHandler } from '../../../lib/aws-s3-deployment/s3-object-copy-handler/index';
+
+const s3Mock = mockClient(S3Client);
+
+afterEach(() => {
+  s3Mock.reset();
+});
+
+const properties = {
+  ServiceToken: 'token',
+  SourceBucketName: 'source-bucket',
+  SourceObjectKey: 'assets/handler code.zip',
+  DestinationBucketName: 'destination-bucket',
+  DestinationKeyPrefix: 'web-function/Fn/',
+  ContentHash: 'abc123',
+  Configuration: { Runtime: 'nodejs24.x', ServiceConfig: { TimeoutSeconds: '30', ExecutionRoleArn: 'arn:role' } },
+};
+const KEY = destinationKey(properties as any);
+
+const baseEvent = {
+  ServiceToken: 'token',
+  ResponseURL: 'url',
+  StackId: 'stack-id',
+  RequestId: 'request-id',
+  LogicalResourceId: 'logical-id',
+  ResourceType: 'Custom::S3ObjectCopy',
+  ResourceProperties: properties,
+};
+
+function physicalId(key: string, version: string, bucket = 'destination-bucket') {
+  return `${bucket}/${key}?versionId=${version}`;
+}
+
+describe('destination key', () => {
+  test('is the prefix followed by a hash and .zip', () => {
+    expect(KEY).toMatch(/^web-function\/Fn\/[0-9a-f]{32}\.zip$/);
+  });
+
+  test('changes with the content', () => {
+    expect(destinationKey({ ...properties, ContentHash: 'def456' } as any)).not.toEqual(KEY);
+  });
+
+  test('changes with the configuration', () => {
+    expect(destinationKey({ ...properties, Configuration: { Runtime: 'nodejs22.x' } } as any)).not.toEqual(KEY);
+  });
+
+  test('does not depend on the order of the configuration\'s keys', () => {
+    const reordered = { ServiceConfig: { ExecutionRoleArn: 'arn:role', TimeoutSeconds: '30' }, Runtime: 'nodejs24.x' };
+    expect(destinationKey({ ...properties, Configuration: reordered } as any)).toEqual(KEY);
+  });
+
+  test('does not depend on where the source object is stored', () => {
+    expect(destinationKey({ ...properties, SourceBucketName: 'other', SourceObjectKey: 'x.zip' } as any)).toEqual(KEY);
+  });
+});
+
+test('create copies the object and names the version written in the physical ID', async () => {
+  s3Mock.on(CopyObjectCommand).resolves({ VersionId: 'v1' });
+
+  const response = await s3ObjectCopyHandler({ ...baseEvent, RequestType: 'Create' } as any);
+
+  expect(s3Mock.commandCalls(CopyObjectCommand)[0].args[0].input).toEqual({
+    Bucket: 'destination-bucket',
+    Key: KEY,
+    // Reserved characters in the source key are encoded so the key survives the CopySource
+    // header format, but the path separators stay literal: S3 does not decode `%2F` back to
+    // `/` and would look for an object whose name contains `%2F`.
+    CopySource: 'source-bucket/assets/handler%20code.zip',
+  });
+  expect(response).toEqual({
+    PhysicalResourceId: physicalId(KEY, 'v1'),
+    Data: { Bucket: 'destination-bucket', Key: KEY, VersionId: 'v1' },
+  });
+});
+
+test('update with an unchanged key copies nothing and keeps the physical ID', async () => {
+  const response = await s3ObjectCopyHandler({
+    ...baseEvent,
+    RequestType: 'Update',
+    PhysicalResourceId: physicalId(KEY, 'v1'),
+    // Only the source location changed, as with a new bootstrap qualifier.
+    ResourceProperties: { ...properties, SourceBucketName: 'new-source-bucket' },
+    OldResourceProperties: properties,
+  } as any);
+
+  expect(s3Mock.commandCalls(CopyObjectCommand)).toHaveLength(0);
+  expect(response).toEqual({
+    PhysicalResourceId: physicalId(KEY, 'v1'),
+    Data: { Bucket: 'destination-bucket', Key: KEY, VersionId: 'v1' },
+  });
+});
+
+test('update with a changed configuration copies to a new key and returns a new physical ID', async () => {
+  s3Mock.on(CopyObjectCommand).resolves({ VersionId: 'v2' });
+  const changed = { ...properties, Configuration: { Runtime: 'nodejs22.x' } };
+  const newKey = destinationKey(changed as any);
+
+  const response = await s3ObjectCopyHandler({
+    ...baseEvent,
+    RequestType: 'Update',
+    PhysicalResourceId: physicalId(KEY, 'v1'),
+    ResourceProperties: changed,
+    OldResourceProperties: properties,
+  } as any);
+
+  expect(s3Mock.commandCalls(CopyObjectCommand)[0].args[0].input.Key).toEqual(newKey);
+  expect(s3Mock.commandCalls(DeleteObjectCommand)).toHaveLength(0);
+  expect(response.PhysicalResourceId).toEqual(physicalId(newKey, 'v2'));
+});
+
+test('update with a changed bucket copies even when the key is the same', async () => {
+  s3Mock.on(CopyObjectCommand).resolves({ VersionId: 'v2' });
+
+  const response = await s3ObjectCopyHandler({
+    ...baseEvent,
+    RequestType: 'Update',
+    PhysicalResourceId: physicalId(KEY, 'v1', 'old-bucket'),
+    OldResourceProperties: { ...properties, DestinationBucketName: 'old-bucket' },
+  } as any);
+
+  expect(s3Mock.commandCalls(CopyObjectCommand)).toHaveLength(1);
+  expect(response.PhysicalResourceId).toEqual(physicalId(KEY, 'v2'));
+});
+
+test('update of a physical ID without a version copies', async () => {
+  s3Mock.on(CopyObjectCommand).resolves({ VersionId: 'v2' });
+
+  const response = await s3ObjectCopyHandler({
+    ...baseEvent,
+    RequestType: 'Update',
+    PhysicalResourceId: `destination-bucket/${KEY}`,
+    OldResourceProperties: properties,
+  } as any);
+
+  expect(s3Mock.commandCalls(CopyObjectCommand)).toHaveLength(1);
+  expect(response.PhysicalResourceId).toEqual(physicalId(KEY, 'v2'));
+});
+
+test('delete removes exactly the version in the physical ID', async () => {
+  s3Mock.on(DeleteObjectCommand).resolves({});
+
+  const response = await s3ObjectCopyHandler({
+    ...baseEvent,
+    RequestType: 'Delete',
+    // The properties may describe the replacement; the physical ID decides what goes.
+    PhysicalResourceId: physicalId('web-function/Fn/old.zip', 'v1'),
+  } as any);
+
+  expect(s3Mock.commandCalls(DeleteObjectCommand)).toHaveLength(1);
+  expect(s3Mock.commandCalls(DeleteObjectCommand)[0].args[0].input).toEqual({
+    Bucket: 'destination-bucket',
+    Key: 'web-function/Fn/old.zip',
+    VersionId: 'v1',
+  });
+  expect(response).toEqual({ PhysicalResourceId: physicalId('web-function/Fn/old.zip', 'v1') });
+});
+
+test.each(['request-id', `destination-bucket/${KEY}`, 'destination-bucket/key?versionId='])(
+  'delete of a physical ID that names no version deletes nothing: %s', async (id) => {
+    const response = await s3ObjectCopyHandler({ ...baseEvent, RequestType: 'Delete', PhysicalResourceId: id } as any);
+
+    expect(s3Mock.commandCalls(DeleteObjectCommand)).toHaveLength(0);
+    expect(response).toEqual({ PhysicalResourceId: id });
+  });
+
+test('follows a redirect to a bucket in another Region', async () => {
+  expect(await s3.config.followRegionRedirects).toBe(true);
+});
+
+test('delete succeeds without removing anything when the bucket is gone', async () => {
+  const name = 'NoSuchBucket';
+  const error = new Error(name);
+  error.name = name;
+  s3Mock.on(DeleteObjectCommand).rejects(error);
+
+  await expect(s3ObjectCopyHandler({
+    ...baseEvent,
+    RequestType: 'Delete',
+    PhysicalResourceId: physicalId(KEY, 'v1'),
+  } as any)).resolves.toEqual({ PhysicalResourceId: physicalId(KEY, 'v1') });
+});
+
+test.each(['AccessDenied', 'SlowDown'])('delete fails on %s', async (name) => {
+  const error = new Error(`${name} error`);
+  error.name = name;
+  s3Mock.on(DeleteObjectCommand).rejects(error);
+
+  await expect(s3ObjectCopyHandler({
+    ...baseEvent,
+    RequestType: 'Delete',
+    PhysicalResourceId: physicalId(KEY, 'v1'),
+  } as any)).rejects.toThrow(`${name} error`);
+});
+
+test('fails when S3 returns no version', async () => {
+  s3Mock.on(CopyObjectCommand).resolves({});
+
+  await expect(s3ObjectCopyHandler({ ...baseEvent, RequestType: 'Create' } as any))
+    .rejects.toThrow(/returned no VersionId/);
+});
diff --git a/packages/aws-cdk-lib/aws-lambda/README.md b/packages/aws-cdk-lib/aws-lambda/README.md
index 4fe92a2eadba9..1a80be1cf170d 100644
--- a/packages/aws-cdk-lib/aws-lambda/README.md
+++ b/packages/aws-cdk-lib/aws-lambda/README.md
@@ -2042,3 +2042,578 @@ new lambda.Function(this, 'Function', {
   handler: 'index.handler',
 });
 ```
+
+## WebFunction
+
+`WebFunction` is a serverless compute resource that lets you build and deploy low-latency web applications on AWS infrastructure. Each WebFunction gets its own HTTPS endpoint, in one Region by default or across several.
+
+### Basic Usage
+
+```ts
+import * as s3 from 'aws-cdk-lib/aws-s3';
+
+const codeBucket = s3.Bucket.fromBucketName(this, 'CodeBucket', 'my-code-bucket');
+
+const webFunction = new lambda.WebFunction(this, 'MyWebFunction', {
+  code: lambda.WebFunctionCode.fromBucket(codeBucket, 'app.zip', 'version-id'),
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+});
+```
+
+### Code Bucket Requirements
+
+WebFunction reads its code from S3 at runtime, as the Lambda service principal
+(`lambda.amazonaws.com`). That puts three requirements on the code bucket:
+
+1. **Versioning enabled** — each revision pins one version of the code object.
+2. **A bucket policy** granting `lambda.amazonaws.com` `s3:GetObject` and
+   `s3:GetObjectVersion` on the code object.
+3. **If the bucket is encrypted with a KMS key, a key policy** granting
+   `lambda.amazonaws.com` `kms:Decrypt`.
+
+`WebFunctionCode.fromBucket()` meets these on a best-effort basis:
+
+- **Bucket policy**: the statement is added automatically, scoped to the code
+  object, the deploying account, and the revisions of this WebFunction.
+- **Key policy**: for a customer managed key, `kms:Decrypt` is granted
+  automatically. An AWS-managed key (`BucketEncryption.KMS_MANAGED` or
+  `BucketEncryption.DSSE_MANAGED`) cannot work, since its policy cannot be
+  modified; a bucket defined in the same app with one fails at synthesis.
+- **Versioning**: `fromBucket()` does not change the bucket's versioning
+  setting, so it is asserted instead: a bucket defined in the same app without
+  `versioned: true` fails at synthesis.
+- **Imported buckets** (like `Bucket.fromBucketName` above): none of this can be
+  applied or checked from this app. Make sure yourself that versioning is
+  enabled, that the key policy grants `kms:Decrypt` if a customer managed key is
+  used, and that the bucket carries a policy statement like:
+
+```json
+{
+  "Effect": "Allow",
+  "Principal": { "Service": "lambda.amazonaws.com" },
+  "Action": ["s3:GetObject", "s3:GetObjectVersion"],
+  "Resource": "arn:aws:s3:::my-code-bucket/app.zip",
+  "Condition": {
+    "StringEquals": { "aws:SourceAccount": "123456789012" },
+    "ArnLike": {
+      "aws:SourceArn": "arn:aws:lambda:us-east-1:123456789012:web-function/my-function/revision/*"
+    }
+  }
+}
+```
+
+### Staging Local Code
+
+`fromBucket()` expects the code to already sit in a bucket that meets the
+requirements above. To deploy code from your local filesystem, use one of the asset
+factories instead. They stage the code the usual way and then copy it into a
+destination bucket that satisfies those requirements — the CDK bootstrap bucket
+cannot be used directly, since it has no versioning and its policy does not grant
+the Lambda service principal read access.
+
+Staging does not work in an environment bootstrapped with a customer managed KMS key.
+The copy function reads the staged asset from the bootstrap bucket and is not granted
+`kms:Decrypt` on that key, so the deployment fails with `AccessDenied` on `CopyObject`.
+In that case, upload the code to a bucket yourself and use `fromBucket()`.
+
+#### Into a bucket CDK creates
+
+```ts
+new lambda.WebFunction(this, 'MyWebFunction', {
+  code: lambda.WebFunctionCode.fromAssetToManagedBucket(path.join(__dirname, 'my-app')),
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+});
+```
+
+One bucket is created per stack and shared by every WebFunction in it that uses this
+factory, configured with everything WebFunction requires: versioning, AES256 (SSE-S3)
+encryption, and a policy granting `lambda.amazonaws.com` read access. It is removed and
+emptied together with the stack that owns it, unless a revision whose code it holds is
+retained (see *Retaining revisions* below).
+
+The read grant covers every object in the bucket and matches any WebFunction revision in
+the account, rather than one statement per function, so that the policy does not grow with
+the number of functions. It does not isolate the functions sharing the bucket from each
+other. That isolation comes from the service: when a revision is created, it reads the code
+object with the caller's own credentials and rejects the request if the caller cannot, so
+creating a revision requires read access to its code.
+
+#### Into a bucket you own
+
+```ts
+import * as s3 from 'aws-cdk-lib/aws-s3';
+
+const codeBucket = new s3.Bucket(this, 'CodeBucket', { versioned: true });
+
+new lambda.WebFunction(this, 'MyWebFunction', {
+  code: lambda.WebFunctionCode.fromAssetToProvidedBucket(codeBucket, path.join(__dirname, 'my-app'), {
+    keyPrefix: 'apps/',
+  }),
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+});
+```
+
+The code is written to `web-function//.zip` —
+`apps/web-function/…` above. CDK only ever writes and deletes objects under that
+`web-function/` segment, never elsewhere in your bucket.
+
+The bucket must meet the same requirements as for `fromBucket()` (see *Code Bucket
+Requirements* above). Since the bucket is yours, CDK makes only the changes it has to and
+leaves the rest to you:
+
+- **Bucket policy** — handled by CDK. Each WebFunction adds its own statement granting
+  `lambda.amazonaws.com` read access to its own objects, on behalf of its own revisions
+  only.
+- **Key policy** — handled by CDK for a customer managed key: `kms:Decrypt` is granted in a
+  single statement shared by all functions. An AWS-managed key
+  (`BucketEncryption.KMS_MANAGED` or `BucketEncryption.DSSE_MANAGED`) cannot work, since its
+  policy cannot be modified; for a bucket defined in the same app this fails at synthesis.
+  SSE-S3 needs nothing.
+- **Versioning** — yours to enable. It is validated at synthesis for a bucket defined in the
+  same app.
+
+For an imported bucket or key, CDK can neither change nor inspect any of this. The policy
+grants become no-ops and a warning is emitted, a bucket without versioning is rejected at
+deployment, and an AWS-managed key surfaces as a read failure at runtime.
+
+The bucket can be in another Region than the stack.
+
+Because the bucket-policy statements accumulate, the 20 KB policy limit fits roughly 40–45
+WebFunctions per bucket, fewer if the policy already carries statements of your own. To
+serve more, you can:
+
+- spread them across several buckets;
+- use `fromAssetToManagedBucket()`, whose bucket policy does not grow with the number of
+  functions; or
+- import the bucket (for example with `s3.Bucket.fromBucketName`) and grant
+  `lambda.amazonaws.com` read access yourself with a single statement covering all your
+  functions. Note that a single statement no longer confines each function to its own code
+  object.
+
+
+#### Configuring the copy step
+
+Both asset factories move the staged code into the destination bucket with a
+CloudFormation custom resource: a small Lambda function that CloudFormation invokes
+during deployment to copy the object. It returns the S3 version ID of the object it
+wrote, and the WebFunction revision refers to exactly that version.
+
+Each revision has a code object of its own. A revision is replaced whenever any of its
+properties changes, so a new object is written whenever the code or any other revision
+setting changes, at a key derived from both, and the copy that wrote the previous one is
+replaced. The previous revision keeps serving from its own object while the deployment is in
+progress, and if the deployment rolls back, the new object is removed and traffic returns to
+it. Once the deployment succeeds, the previous object is deleted with the previous revision.
+The same happens when the destination or `copyOptions` change, and when a WebFunction is
+removed from the stack its object is deleted as well.
+
+#### Retaining revisions
+
+A revision can be retained with `resourceRevision.applyRemovalPolicy(RemovalPolicy.RETAIN)`, a
+`RemovalPolicies` aspect or an override of its `DeletionPolicy`. Its code object is retained
+with it: the copy that wrote it takes the revision's `UpdateReplacePolicy`, and as its
+`DeletionPolicy` the stronger of the revision's two policies, so `RetainExceptOnCreate` stays
+`RetainExceptOnCreate`. With `fromAssetToManagedBucket()`, the bucket, its policy and its
+auto-delete resource are retained as strongly as the most strongly retained revision using
+them, and a warning says so: the bucket and the code of every retained revision are then
+yours to clean up. To manage them yourself, use `fromAssetToProvidedBucket()` with a bucket
+you own. With a provided bucket defined in your app, its bucket policy, which holds the
+service's read grant, is retained the same way; the bucket keeps its own removal policy. For
+an imported bucket, keep the read grant in place yourself.
+
+Change retention in a deployment that does not also change `copyOptions` or the destination
+bucket. Such a change replaces the copy function, and the old copy is removed under its
+previous policy.
+
+One copy function is created for each destination bucket and set of `copyOptions`, and shared
+by every WebFunction in the stack that uses them. Pass
+`copyOptions` if your organization requires it to run inside a VPC, or to give it an
+execution role, security groups or log group of your own:
+
+```ts
+import * as ec2 from 'aws-cdk-lib/aws-ec2';
+
+declare const vpc: ec2.IVpc;
+
+lambda.WebFunctionCode.fromAssetToManagedBucket(path.join(__dirname, 'my-app'), {
+  copyOptions: {
+    vpc,
+    vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS },
+  },
+});
+```
+
+WebFunctions that pass different `copyOptions` get separate copy functions, since one
+Lambda function cannot carry two configurations.
+
+Without `logGroup`, CDK creates a log group for the copy function in the stack, with the
+default retention. Pass a log group of your own to control its retention or encryption.
+
+### Authentication
+
+`defaultEndpointAuth`, the auth type of the endpoint a WebFunction creates, is required with
+no default — you must choose explicitly:
+
+- `WebFunctionAuthType.IAM_AUTH` — Lambda authorizes requests using SigV4/IAM.
+- `WebFunctionAuthType.APPLICATION_MANAGED` — The endpoint is public; your handler code must validate every request.
+
+With `IAM_AUTH`, sign requests with SigV4 and include the `X-Amz-Content-SHA256` header, the
+SHA-256 hash of the request body, also for a request without a body. Without the header the
+endpoint returns `403 Forbidden`, even when the signature is valid. A `MULTI_REGION` endpoint
+has one global domain, so its requests are signed with SigV4a for the Region set `*`.
+
+### Endpoints
+
+A WebFunction creates one endpoint. Its auth type is `defaultEndpointAuth`, and its other
+settings (`endpointLocation`, `endpointName`, `rateLimit`, ...) go in `defaultEndpoint`. It is
+available as `endpoint`, with the domain clients send requests to and grants for invoking it:
+
+```ts
+declare const fn: lambda.WebFunction;
+declare const caller: iam.IGrantable;
+
+new CfnOutput(this, 'Url', { value: `https://${fn.endpoint.domainName}` });
+fn.endpoint.grants.invoke(caller);
+```
+
+Add more endpoints with `addEndpoint()`, for example to serve the same function under a
+different auth type or endpoint type. Each endpoint has its own settings, auth type included,
+and its own domain and grants, and serves the function's revision:
+
+```ts
+declare const fn: lambda.WebFunction;
+
+const internal = fn.addEndpoint('Internal', {
+  authType: lambda.WebFunctionAuthType.IAM_AUTH,
+});
+```
+
+To reference an endpoint defined elsewhere, import it with its ARN, domain name and type.
+The domain name is assigned by the service, so it cannot be derived from the ARN:
+
+```ts
+const endpoint = lambda.WebFunctionEndpoint.fromWebFunctionEndpointAttributes(this, 'Endpoint', {
+  endpointArn: 'arn:aws:lambda:us-west-2:123456789012:web-function/my-function/endpoint/prod',
+  domainName: 'abcd1234.lambda-web.us-west-2.on.aws',
+  endpointType: lambda.WebFunctionEndpointType.HOME_REGION,
+});
+```
+
+### Granting Access to Other Accounts and Services
+
+`grants.invoke()` gives a role or user in the same account the permission in its own policy.
+Any other grantee, such as another account or a service principal, gets a statement in the
+WebFunction's resource-based policy instead. For example, to let a CloudFront distribution
+with origin access control call an endpoint:
+
+```ts
+declare const fn: lambda.WebFunction;
+declare const distributionArn: string;
+
+fn.endpoint.grants.invoke(new iam.ServicePrincipal('cloudfront.amazonaws.com', {
+  conditions: { ArnLike: { 'aws:SourceArn': distributionArn } },
+}));
+```
+
+A web function has a single resource-based policy, so every statement for it, from any of its
+endpoints or from `addToResourcePolicy()`, goes into one `AWS::Lambda::ResourcePolicy`. Do not
+define another policy for the same function: a second `AWS::Lambda::ResourcePolicy` fails with
+"already exists", and so does this one when the function already has a policy set outside
+CloudFormation. To move from such a policy, or from a `CfnResourcePolicy` of your own, to
+`grants.invoke()`, deploy twice: first remove the old policy, then add the grants. For the same
+reason the policy of an imported WebFunction cannot be added to; CDK warns instead.
+
+The policy is in the WebFunction's stack. If the distribution is in another stack, the
+condition on its ARN makes the function's stack depend on the distribution's, while the
+distribution reads the endpoint's domain name from the function's stack, so the two
+reference each other. Define the distribution in the function's stack, or in another stack
+condition the statement on `aws:SourceAccount` and an `ArnLike` on
+`arn::cloudfront:::distribution/*` instead, which names no single
+distribution.
+
+An endpoint created with `new WebFunctionEndpoint()` in another stack from its function can
+be granted on as well: the statement names it by the function's ARN and the endpoint name, so
+that the function's stack does not depend on the endpoint's. Its `endpointName` must then be
+a literal.
+
+### Multi-Region Deployment
+
+Deploy globally with latency-based routing:
+
+```ts
+import * as s3 from 'aws-cdk-lib/aws-s3';
+
+declare const codeBucket: s3.IBucket;
+
+new lambda.WebFunction(this, 'GlobalApi', {
+  code: lambda.WebFunctionCode.fromBucket(codeBucket, 'app.zip', 'version-id'),
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+  defaultEndpoint: {
+    endpointLocation: lambda.WebFunctionEndpointLocation.multiRegion(['us-east-1', 'eu-west-1', 'ap-northeast-1']),
+  },
+});
+```
+
+The stack's own region always serves traffic, so listing it has no effect, and at least one
+other region is required. The list is treated as a set, so order and duplicates do not
+matter. Adding or removing a region replaces the endpoint, which gives it a new `domainName`.
+
+For a separate regional endpoint per region (instead of managed latency-based
+routing), use `WebFunctionEndpointLocation.perRegion()`, which takes replica regions the
+same way:
+
+```ts
+import * as s3 from 'aws-cdk-lib/aws-s3';
+
+declare const codeBucket: s3.IBucket;
+
+new lambda.WebFunction(this, 'PerRegionApi', {
+  code: lambda.WebFunctionCode.fromBucket(codeBucket, 'app.zip', 'version-id'),
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+  defaultEndpoint: {
+    endpointLocation: lambda.WebFunctionEndpointLocation.perRegion(['us-east-1', 'us-west-2']),
+  },
+});
+```
+
+### Changing an endpoint
+
+An endpoint's `endpointName` and `endpointLocation`, its type and replica regions, are
+create-only on the underlying endpoint resource. Changing either replaces the endpoint, and the
+replacement gets a new `domainName`, so every client that uses the old hostname
+breaks. Adding a replica region later therefore means a new URL; decide the
+region set up front where you can. Changing `webFunctionName` replaces the whole
+WebFunction, with the same effect.
+
+CloudFormation cannot replace a resource that keeps the same name. When you leave
+`endpointName` unset, the name is derived from `endpointLocation` (`prod` for a
+home-Region endpoint), so changing it renames the endpoint too and the replacement goes
+through. If you set `endpointName`, change it together with the location, or the
+deployment fails. The same applies to a list of replica regions that is only known at
+deployment, such as a `CfnParameter`, since its value cannot feed the name.
+
+Renaming the construct id has the same effect as changing `webFunctionName`: the
+generated name derives from the construct's path, so CloudFormation creates a new
+WebFunction with a new URL and deletes the old one. With a fixed `webFunctionName` the
+rename fails instead, because the old function still holds that name. Keep the construct
+id stable once an endpoint is in use.
+
+Changes to the revision (code, runtime, environment variables, `kmsKey`,
+`timeout`, `role`, logging) create a new revision and repoint the existing
+endpoint to it in place, and the auth type is updated in place. `domainName` does
+not change in either case.
+
+The new revision receives all traffic as soon as the endpoint is repointed, and the
+previous revision is deleted when the deployment completes. Creating a revision does
+not check that its code starts, so code that fails at startup still deploys
+successfully and only fails once requests arrive.
+
+### Rolling back
+
+The construct keeps one revision. Once a deployment completes, the previous revision
+is deleted, and so is the code object it read, so there is no earlier revision left to
+point the endpoint back at. How to go back depends on when:
+
+- **During the deployment.** If any resource in the stack fails, CloudFormation rolls
+  back: the endpoint returns to the previous revision, which is untouched, as is its code.
+- **Shortly after it.** Deploy with CloudFormation
+  [rollback triggers](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-rollback-triggers.html):
+  a CloudWatch alarm and a monitoring period. CloudFormation keeps the previous revision
+  until the monitoring period ends, so an alarm in that window rolls the stack back and
+  returns traffic to it.
+- **Later.** Deploy the previous code again, for example by reverting the change and
+  running `cdk deploy`. This creates a new revision from that code rather than restoring
+  the old one.
+
+Repointing the endpoint outside CloudFormation, for example in the console, is not a
+supported way back: the previous revision no longer exists, and the next deployment would
+overwrite the change.
+
+The construct does not model more than one live revision or weighted traffic between
+revisions. `resourceRevision` and `endpoint.resource` are for overriding properties of the
+resources the construct creates; they do not add revisions. To keep several revisions
+addressable or split traffic between them, use the L1 constructs directly (see
+[Escape Hatches](#escape-hatches)).
+
+### Environment Variables and Logging
+
+```ts
+import * as s3 from 'aws-cdk-lib/aws-s3';
+
+declare const codeBucket: s3.IBucket;
+
+new lambda.WebFunction(this, 'MyWebFunction', {
+  code: lambda.WebFunctionCode.fromBucket(codeBucket, 'app.zip', 'version-id'),
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+  environment: {
+    TABLE_NAME: 'my-table',
+  },
+  applicationLogLevel: lambda.ApplicationLogLevel.INFO,
+  systemLogLevel: lambda.SystemLogLevel.WARN,
+});
+```
+
+Logs go to the log group passed in `logGroup`. Without one, the construct creates a log
+group, named by CloudFormation and retained when the stack is deleted. The `logGroup`
+attribute returns whichever is used, for example to output its name:
+
+```ts
+declare const fn: lambda.WebFunction;
+
+new CfnOutput(this, 'LogGroupName', { value: fn.logGroup.logGroupRef.logGroupName });
+```
+
+By default the runtime executes `index.js` at the root of the deployment
+package. Use `entryPoint` to point it at a different file (surfaced to the
+runtime via the reserved `AWS_LAMBDA_NODEJS_ENTRYPOINT` environment variable):
+
+```ts
+import * as s3 from 'aws-cdk-lib/aws-s3';
+
+declare const codeBucket: s3.IBucket;
+
+new lambda.WebFunction(this, 'MyWebFunction', {
+  code: lambda.WebFunctionCode.fromBucket(codeBucket, 'app.zip', 'version-id'),
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+  entryPoint: 'src/server.js',
+});
+```
+
+### VPC Access with a Network Connector
+
+A WebFunction reaches resources in a VPC through a `NetworkConnector`: a Lambda resource
+that holds the network configuration and owns the network interfaces in your VPC. The
+interfaces are provisioned when the connector is created, so creating or updating the
+function does not wait on them.
+
+```ts
+import * as ec2 from 'aws-cdk-lib/aws-ec2';
+
+declare const vpc: ec2.Vpc;
+declare const code: lambda.WebFunctionCode;
+
+const securityGroup = new ec2.SecurityGroup(this, 'EgressSecurityGroup', { vpc });
+
+const connector = new lambda.NetworkConnector(this, 'Egress', {
+  configuration: lambda.NetworkConnectorConfiguration.vpcEgress({
+    computeType: lambda.NetworkConnectorComputeType.WEB_FUNCTION,
+    vpc,
+    vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS },
+    securityGroups: [securityGroup],
+  }),
+});
+
+new lambda.WebFunction(this, 'MyWebFunction', {
+  code,
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+  egressNetworkConnector: connector,
+});
+```
+
+A connector serves one compute type, so a WebFunction needs one created for
+`NetworkConnectorComputeType.WEB_FUNCTION`. The connector only initiates connections; the
+security groups' outbound rules decide what the function can reach.
+
+A function with a connector can only be served by home-Region endpoints: its default
+endpoint, any endpoint added with `addEndpoint()` and any `WebFunctionEndpoint` for it must
+use `WebFunctionEndpointLocation.homeRegion()`, and synthesis fails otherwise.
+
+The Lambda service manages the network interfaces through the connector's `operatorRole`.
+By default a role with the AWS managed policy `AWSLambdaNetworkConnectorOperatorPolicy` is
+created. If you pass your own role, that policy is attached to it when the role is defined in
+the same app; a role imported by ARN or name cannot be modified, so a warning is emitted and
+it must already carry the policy or equivalent permissions.
+
+Use a role dedicated to the connector. The service assumes it without presenting a source
+account or ARN, so its trust policy cannot be conditioned, and whatever else uses the role
+gains the permissions to manage network interfaces in the VPC. A function's execution role,
+for example, already trusts `lambda.amazonaws.com`, so passing it as the operator role would
+give that function's code those permissions.
+
+#### Connector versions and how the function follows them
+
+Every update to a connector produces a new, immutable version, and a WebFunction revision
+pins to exactly one version. There are two ways to reference a connector, and they differ
+in who decides when the function moves to a new version.
+
+**A connector in the same stack** — as above — pins the revision to the connector's latest
+version at deployment time. When you later update the connector, the same deployment
+replaces the revision and shifts traffic to it, so the function moves to the new version
+as part of that change, with CloudFormation's usual rollback if it fails. Nothing changes
+outside of a deployment.
+
+**A fixed version, imported by its ARN** — pins the function until you change the ARN in
+your code. Updates to the connector do not touch the function.
+
+```ts
+declare const code: lambda.WebFunctionCode;
+
+const connector = lambda.NetworkConnector.fromNetworkConnectorVersionArn(
+  this, 'Egress', 'arn:aws:lambda:us-west-2:123456789012:network-connector:nc-0123abcd:3',
+);
+
+new lambda.WebFunction(this, 'MyWebFunction', {
+  code,
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+  egressNetworkConnector: connector,
+});
+```
+
+This is also the only way to use a connector that lives in another stack. A connector's
+latest version ARN changes on every update, and CloudFormation does not let a stack change
+an exported value while another stack imports it, so referencing a connector *defined* in
+another stack is rejected at synthesis.
+
+`NetworkConnector.fromNetworkConnectorArn()` imports a connector by its unqualified ARN,
+which names the connector as a whole rather than a version. Use it for IAM policies; a
+WebFunction cannot pin to it and refuses it.
+
+#### Removing a subnet or security group
+
+Earlier connector versions keep their network interfaces, and an update does not delete
+them. A subnet or security group you remove from the connector is therefore still in use by
+the previous version, and cannot be deleted in the same deployment.
+
+### Importing an Existing WebFunction
+
+```ts
+const imported = lambda.WebFunction.fromWebFunctionArn(
+  this, 'Imported', 'arn:aws:lambda:us-west-2:123456789012:web-function/my-function',
+);
+```
+
+### Escape Hatches
+
+The construct exposes its underlying L1 resources for advanced configuration:
+
+```ts
+import * as s3 from 'aws-cdk-lib/aws-s3';
+
+declare const codeBucket: s3.IBucket;
+
+const wf = new lambda.WebFunction(this, 'MyWebFunction', {
+  code: lambda.WebFunctionCode.fromBucket(codeBucket, 'app.zip', 'version-id'),
+  runtime: lambda.WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: lambda.WebFunctionAuthType.IAM_AUTH,
+});
+
+wf.resource.addOverride('Properties.SomeField', 'value');
+wf.resourceRevision.addOverride('Properties.SomeField', 'value');
+wf.endpoint.resource.addOverride('Properties.SomeField', 'value');
+```
+
+For configurations the construct does not model, such as splitting traffic across multiple
+revisions, use the L1 constructs (`CfnWebFunction`, `CfnWebFunctionRevision` and
+`CfnWebFunctionEndpoint`) directly.
+
+Metrics are not modeled yet. The endpoint publishes them in the `AWS/Lambda/Web` namespace with
+the `FunctionName` and `EndpointName` dimensions; use `cloudwatch.Metric` to reference them.
diff --git a/packages/aws-cdk-lib/aws-lambda/lib/index.ts b/packages/aws-cdk-lib/aws-lambda/lib/index.ts
index 52c7bd0cb2c86..99726551b2bef 100644
--- a/packages/aws-cdk-lib/aws-lambda/lib/index.ts
+++ b/packages/aws-cdk-lib/aws-lambda/lib/index.ts
@@ -30,6 +30,12 @@ export * from './params-and-secrets-layers';
 export * from './snapstart-config';
 export * from './schema-registry';
 export * from './capacity-provider';
+export * from './webfunction';
+export * from './webfunction-code';
+export * from './webfunction-endpoint';
+export * from './webfunction-endpoint-grants';
+export * from './network-connector';
+export * from './webfunction-runtime';
 
 // AWS::Lambda CloudFormation Resources:
 export * from './lambda.generated';
diff --git a/packages/aws-cdk-lib/aws-lambda/lib/network-connector.ts b/packages/aws-cdk-lib/aws-lambda/lib/network-connector.ts
new file mode 100644
index 0000000000000..cefea90ced10e
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/lib/network-connector.ts
@@ -0,0 +1,444 @@
+import type { Construct } from 'constructs';
+import { CfnNetworkConnector } from './lambda.generated';
+import type * as ec2 from '../../aws-ec2';
+import * as iam from '../../aws-iam';
+import type { IResource } from '../../core';
+import { Annotations, Arn, ArnFormat, Resource, Stack, Token, UnscopedValidationError, ValidationError } from '../../core';
+import { memoizedGetter } from '../../core/lib/helpers-internal';
+import { addConstructMetadata } from '../../core/lib/metadata-resource';
+import { lit } from '../../core/lib/private/literal-string';
+import { propertyInjectable } from '../../core/lib/prop-injectable';
+import type { INetworkConnectorRef, NetworkConnectorReference } from '../../interfaces/generated/aws-lambda-interfaces.generated';
+
+/**
+ * A Lambda Network Connector.
+ */
+// Deliberately not `ec2.IConnectable`: an imported connector (`fromNetworkConnectorArn`) does
+// not know its security groups, so the interface cannot promise `connections` without another
+// throwing getter. If demand shows up, adding `connections` to the class alone is additive.
+export interface INetworkConnector extends IResource, INetworkConnectorRef {
+  /**
+   * The unqualified ARN of the network connector.
+   *
+   * Identifies the connector as a whole, across its versions: use it in IAM policies and for
+   * consumers that resolve the current version at run time. It does not name a version, so
+   * WebFunction — which pins a revision to one version — does not accept it.
+   *
+   * @attribute
+   */
+  readonly networkConnectorArn: string;
+
+  /**
+   * The qualified ARN of the connector's latest version.
+   *
+   * WebFunction pins a revision to this. For a connector defined in this app the value changes
+   * on every update to the connector, which replaces the revision that references it.
+   *
+   * @attribute
+   */
+  readonly latestVersionArn: string;
+}
+
+/**
+ * The compute resource type a network connector is provisioned for.
+ *
+ * A connector serves exactly one type; a WebFunction can only use a connector created for
+ * `WEB_FUNCTION`.
+ */
+export enum NetworkConnectorComputeType {
+  /** Lambda WebFunction. */
+  WEB_FUNCTION = 'WebFunction',
+
+  /** Lambda MicroVM. */
+  MICRO_VM = 'MicroVm',
+}
+
+/**
+ * The IP protocol the connector's network interfaces use.
+ */
+export enum NetworkConnectorProtocol {
+  /** IPv4 only. */
+  IPV4 = 'IPv4',
+
+  /** IPv4 and IPv6. */
+  DUAL_STACK = 'DualStack',
+}
+
+/**
+ * Configuration for a connector that gives the compute egress into a VPC.
+ */
+export interface VpcEgressConfiguration {
+  /**
+   * The Lambda compute resource type this connector serves.
+   *
+   * The compute type cannot be changed after the connector is created.
+   */
+  readonly computeType: NetworkConnectorComputeType;
+
+  /**
+   * The VPC to create network interfaces in.
+   */
+  readonly vpc: ec2.IVpc;
+
+  /**
+   * Which subnets of the VPC to create network interfaces in.
+   *
+   * The selection must yield between 1 and 16 subnets.
+   *
+   * @default - the VPC's default selection: its private subnets, if it has any
+   */
+  readonly vpcSubnets?: ec2.SubnetSelection;
+
+  /**
+   * The security groups to attach to the network interfaces.
+   *
+   * Between 1 and 5 security groups, in the same VPC as the subnets. At least one is required,
+   * so the interfaces never fall back to the VPC's default security group. The connector only
+   * initiates connections, so inbound rules are irrelevant; the outbound rules decide what the
+   * compute can reach.
+   */
+  readonly securityGroups: ec2.ISecurityGroupRef[];
+
+  /**
+   * The IP protocol the network interfaces use.
+   *
+   * The protocol cannot be changed after the connector is created.
+   *
+   * @default NetworkConnectorProtocol.IPV4
+   */
+  readonly networkProtocol?: NetworkConnectorProtocol;
+}
+
+/**
+ * The network configuration of a connector.
+ *
+ * Exactly one kind of configuration applies to a connector; pick it with one of the static
+ * factories.
+ */
+export abstract class NetworkConnectorConfiguration {
+  /**
+   * Egress from the compute into a VPC, through network interfaces the connector manages.
+   */
+  public static vpcEgress(config: VpcEgressConfiguration): NetworkConnectorConfiguration {
+    return new VpcEgressNetworkConnectorConfiguration(config);
+  }
+
+  /**
+   * Render the configuration for the L1.
+   *
+   * @internal
+   */
+  public abstract _render(scope: Construct): CfnNetworkConnector.ConfigProperty;
+}
+
+class VpcEgressNetworkConnectorConfiguration extends NetworkConnectorConfiguration {
+  constructor(private readonly config: VpcEgressConfiguration) {
+    super();
+  }
+
+  public _render(scope: Construct): CfnNetworkConnector.ConfigProperty {
+    const { securityGroups } = this.config;
+    const { subnetIds } = this.config.vpc.selectSubnets(this.config.vpcSubnets);
+    if (!Token.isUnresolved(subnetIds) && (subnetIds.length < 1 || subnetIds.length > 16)) {
+      throw new ValidationError(lit`NetworkConnectorSubnetCount`,
+        `vpcSubnets must select between 1 and 16 subnets, got ${subnetIds.length}`, scope);
+    }
+    // The schema allows an empty list, in which case the interfaces land in the VPC's default
+    // security group. Require at least one on purpose: CDK never places an interface in the
+    // default group implicitly (other L2s either take groups or create one), and this
+    // construct does not create one, so the caller has to say which group applies.
+    if (securityGroups.length < 1 || securityGroups.length > 5) {
+      throw new ValidationError(lit`NetworkConnectorSecurityGroupCount`,
+        `securityGroups must contain between 1 and 5 items, got ${securityGroups.length}`, scope);
+    }
+
+    return {
+      vpcEgressConfiguration: {
+        subnetIds,
+        securityGroupIds: securityGroups.map((group) => group.securityGroupRef.securityGroupId),
+        networkProtocol: this.config.networkProtocol ?? NetworkConnectorProtocol.IPV4,
+        associatedComputeResourceTypes: [this.config.computeType],
+      },
+    };
+  }
+}
+
+/**
+ * Attributes of an existing network connector, for importing it.
+ */
+export interface NetworkConnectorAttributes {
+  /**
+   * The unqualified ARN of the connector.
+   */
+  readonly networkConnectorArn: string;
+
+  /**
+   * The qualified ARN of the version a WebFunction should pin to.
+   *
+   * @default - not known; reading `latestVersionArn` on the imported connector throws
+   */
+  readonly latestVersionArn?: string;
+}
+
+/**
+ * Properties for a network connector.
+ */
+export interface NetworkConnectorProps {
+  /**
+   * The network configuration.
+   */
+  readonly configuration: NetworkConnectorConfiguration;
+
+  /**
+   * A name for the connector, unique within the account and region.
+   *
+   * Changing it replaces the connector.
+   *
+   * @default - a name is generated by CloudFormation
+   */
+  readonly networkConnectorName?: string;
+
+  /**
+   * The role the Lambda service assumes to manage the connector's network interfaces in the VPC.
+   *
+   * The `AWSLambdaNetworkConnectorOperatorPolicy` managed policy is attached to a provided role
+   * defined in this app, as it is to the default one. A role imported by ARN or name cannot be
+   * modified from this app, so a warning is emitted instead: make sure it already carries that
+   * policy, or equivalent permissions to manage the connector's network interfaces.
+   *
+   * Use a role dedicated to this connector. The service assumes it without presenting a source
+   * account or ARN, so its trust policy cannot be conditioned, and whatever else uses the role
+   * gains the permissions to manage network interfaces in the VPC. A function's execution role,
+   * for example, already trusts `lambda.amazonaws.com`, so passing it here would give that
+   * function's code those permissions.
+   *
+   * @default - a role is created with the `AWSLambdaNetworkConnectorOperatorPolicy` managed policy
+   */
+  readonly operatorRole?: iam.IRoleRef;
+
+  /**
+   * Tags to apply to the connector.
+   *
+   * @default - No tags.
+   */
+  readonly tags?: { [key: string]: string };
+}
+
+abstract class NetworkConnectorBase extends Resource implements INetworkConnector {
+  public abstract readonly networkConnectorArn: string;
+  public abstract readonly latestVersionArn: string;
+
+  public get networkConnectorRef(): NetworkConnectorReference {
+    return { networkConnectorArn: this.networkConnectorArn };
+  }
+}
+
+/** The AWS managed policy that lets the service manage a connector's network interfaces. */
+const OPERATOR_MANAGED_POLICY = 'AWSLambdaNetworkConnectorOperatorPolicy';
+
+function isRoleWithManagedPolicies(role: iam.IRoleRef): role is iam.IRole {
+  return typeof (role as Partial).addManagedPolicy === 'function';
+}
+
+/**
+ * The index of the `:` before a numeric version at the end of a connector's resource name,
+ * or `undefined` if the name carries no version.
+ */
+function versionSeparator(resourceName: string): number | undefined {
+  const separator = resourceName.lastIndexOf(':');
+  return separator >= 0 && /^\d+$/.test(resourceName.slice(separator + 1)) ? separator : undefined;
+}
+
+const NETWORK_CONNECTOR_SYMBOL = Symbol.for('@aws-cdk/aws-lambda.NetworkConnector');
+
+/**
+ * A Lambda Network Connector: network configuration that Lambda compute attaches to.
+ *
+ * The connector owns the network interfaces in the VPC. Compute references a connector rather
+ * than carrying subnets and security groups itself, so the interfaces are provisioned when the
+ * connector is created, not when each function is.
+ *
+ * Every update to the connector produces a new immutable version. A WebFunction pins its
+ * revision to one version (`latestVersionArn`), so when the connector in the same stack is
+ * updated, the revision is replaced and moves to the new version as part of that deployment.
+ * To hold a WebFunction on a fixed version instead — or to reference a connector from another
+ * stack — import the version with `fromNetworkConnectorVersionArn`.
+ */
+@propertyInjectable
+export class NetworkConnector extends NetworkConnectorBase {
+  /** Uniquely identifies this class. */
+  public static readonly PROPERTY_INJECTION_ID: string = 'aws-cdk-lib.aws-lambda.NetworkConnector';
+
+  /**
+   * Return whether the given object is a NetworkConnector.
+   */
+  public static isNetworkConnector(x: any): x is NetworkConnector {
+    return x !== null && typeof x === 'object' && NETWORK_CONNECTOR_SYMBOL in x;
+  }
+
+  /**
+   * Import a specific version of a connector by its qualified ARN.
+   *
+   * This is the form a WebFunction can reference. The revision stays on this version until the
+   * ARN in your code changes, regardless of updates to the connector.
+   *
+   * A literal ARN is checked for a version suffix at synthesis. A deploy-time value — an SSM
+   * parameter, an imported value — cannot be inspected until deployment, where an unqualified
+   * ARN is rejected by the service when the revision is created.
+   *
+   * Do not pass the `latestVersionArn` of a connector in another stack. It changes on every
+   * update to the connector, and CloudFormation does not allow an exported value that another
+   * stack imports to change; a WebFunction rejects such an import at synthesis.
+   *
+   * @param networkConnectorVersionArn A qualified ARN, `arn:...:network-connector:nc-:`
+   */
+  public static fromNetworkConnectorVersionArn(scope: Construct, id: string, networkConnectorVersionArn: string): INetworkConnector {
+    const parsed = Arn.split(networkConnectorVersionArn, ArnFormat.COLON_RESOURCE_NAME);
+    let connectorId: string;
+    if (Token.isUnresolved(networkConnectorVersionArn)) {
+      // Split on a token selects the segment right after the resource type, which is the connector id;
+      // the version is the segment after that and is dropped.
+      connectorId = parsed.resourceName ?? '';
+    } else {
+      const resourceName = parsed.resourceName ?? '';
+      const separator = versionSeparator(resourceName);
+      if (separator === undefined) {
+        throw new UnscopedValidationError(lit`NetworkConnectorVersionArnUnqualified`,
+          `Expected a qualified network connector ARN ending in ':', got '${networkConnectorVersionArn}'. ` +
+          'To import a connector without a version, use fromNetworkConnectorArn().');
+      }
+      connectorId = resourceName.slice(0, separator);
+    }
+    const networkConnectorArn = Stack.of(scope).formatArn({
+      ...parsed,
+      resourceName: connectorId,
+      arnFormat: ArnFormat.COLON_RESOURCE_NAME,
+    });
+    return NetworkConnector.fromNetworkConnectorAttributes(scope, id, { networkConnectorArn, latestVersionArn: networkConnectorVersionArn });
+  }
+
+  /**
+   * Import a connector by its unqualified ARN.
+   *
+   * The result names the connector as a whole, not a version, so it can be used in IAM
+   * policies but not as a WebFunction's `egressNetworkConnector`; reading `latestVersionArn`
+   * on it throws. Use `fromNetworkConnectorVersionArn` for that.
+   *
+   * @param networkConnectorArn An unqualified ARN, `arn:...:network-connector:nc-`
+   */
+  public static fromNetworkConnectorArn(scope: Construct, id: string, networkConnectorArn: string): INetworkConnector {
+    if (!Token.isUnresolved(networkConnectorArn)) {
+      const resourceName = Arn.split(networkConnectorArn, ArnFormat.COLON_RESOURCE_NAME).resourceName ?? '';
+      if (versionSeparator(resourceName) !== undefined) {
+        throw new UnscopedValidationError(lit`NetworkConnectorArnQualified`,
+          `Expected an unqualified network connector ARN, got '${networkConnectorArn}', which ends in a version. ` +
+          'To import a connector version, use fromNetworkConnectorVersionArn().');
+      }
+    }
+    return NetworkConnector.fromNetworkConnectorAttributes(scope, id, { networkConnectorArn });
+  }
+
+  /**
+   * Import a connector from its attributes.
+   */
+  public static fromNetworkConnectorAttributes(scope: Construct, id: string, attrs: NetworkConnectorAttributes): INetworkConnector {
+    class Import extends NetworkConnectorBase {
+      public readonly networkConnectorArn = attrs.networkConnectorArn;
+
+      public get latestVersionArn(): string {
+        if (attrs.latestVersionArn === undefined) {
+          throw new ValidationError(lit`NetworkConnectorImportedWithoutVersion`,
+            `The network connector '${attrs.networkConnectorArn}' was imported without a version, so its latest ` +
+            'version ARN is not known. WebFunction pins a revision to a version: import the connector with ' +
+            'NetworkConnector.fromNetworkConnectorVersionArn() instead.', this);
+        }
+        return attrs.latestVersionArn;
+      }
+    }
+    return new Import(scope, id, { environmentFromArn: attrs.networkConnectorArn });
+  }
+
+  /**
+   * The role the Lambda service assumes to manage the connector's network interfaces.
+   */
+  public readonly operatorRole: iam.IRoleRef;
+
+  /** The underlying L1 CfnNetworkConnector resource. Use for escape hatches. */
+  public readonly resource: CfnNetworkConnector;
+
+  constructor(scope: Construct, id: string, props: NetworkConnectorProps) {
+    super(scope, id, { physicalName: props.networkConnectorName });
+    addConstructMetadata(this, props);
+
+    // No confused-deputy condition on the trust policy: verified by deployment, the service
+    // presents no source keys when it assumes this role, so adding `aws:SourceAccount` makes
+    // CreateNetworkConnector fail with "The service is unable to assume the provided
+    // NetworkConnectorOperatorRole". This matches the trust policy the LNC developer guide
+    // instructs customers to create.
+    const operatorPolicy = iam.ManagedPolicy.fromAwsManagedPolicyName(OPERATOR_MANAGED_POLICY);
+    if (props.operatorRole) {
+      this.operatorRole = props.operatorRole;
+      this.attachOperatorPolicy(props.operatorRole, operatorPolicy);
+    } else {
+      this.operatorRole = new iam.Role(this, 'OperatorRole', {
+        assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'),
+        managedPolicies: [operatorPolicy],
+      });
+    }
+
+    this.resource = new CfnNetworkConnector(this, 'Resource', {
+      name: this.physicalName,
+      configuration: props.configuration._render(this),
+      operatorRole: this.operatorRole.roleRef.roleArn,
+      tags: props.tags
+        ? Object.entries(props.tags).map(([key, value]) => ({ key, value }))
+        : undefined,
+    });
+  }
+
+  /**
+   * Give a caller-provided operator role the managed policy the service needs.
+   *
+   * Only a role defined in this app can be changed. An imported role's `addManagedPolicy` is
+   * a no-op for an AWS managed policy and emits an IAM warning that does not say what the
+   * connector needs, so it is not called; this construct warns instead.
+   */
+  private attachOperatorPolicy(role: iam.IRoleRef, policy: iam.IManagedPolicy): void {
+    const roleArn = role.roleRef.roleArn;
+    const roleName = Token.isUnresolved(roleArn) ? `'${role.node.path}'` : `'${roleArn}' (${role.node.path})`;
+    if (Resource.isOwnedResource(role) && isRoleWithManagedPolicies(role)) {
+      role.addManagedPolicy(policy);
+      Annotations.of(this).addWarningV2(
+        '@aws-cdk/aws-lambda:networkConnectorOperatorRoleShared',
+        `The ${OPERATOR_MANAGED_POLICY} managed policy was attached to the operator role ${roleName}. ` +
+        'The service assumes this role without a source account or ARN, so its trust cannot be ' +
+        'conditioned: use a role dedicated to this connector.',
+      );
+      return;
+    }
+    Annotations.of(this).addWarningV2(
+      '@aws-cdk/aws-lambda:networkConnectorOperatorRoleNotModified',
+      `The operator role ${roleName} cannot be modified from this app, so the ` +
+      `${OPERATOR_MANAGED_POLICY} managed policy was not attached to it. Make sure the role ` +
+      'carries that policy, or equivalent permissions to manage the connector\'s network interfaces, ' +
+      'and that it is dedicated to this connector, since the service assumes it without a source ' +
+      'account or ARN.',
+    );
+  }
+
+  @memoizedGetter
+  public get networkConnectorArn(): string {
+    return this.resource.attrArn;
+  }
+
+  @memoizedGetter
+  public get latestVersionArn(): string {
+    return this.resource.attrLatestVersionArn;
+  }
+}
+
+Object.defineProperty(NetworkConnector.prototype, NETWORK_CONNECTOR_SYMBOL, {
+  value: true,
+  enumerable: false,
+  writable: false,
+});
diff --git a/packages/aws-cdk-lib/aws-lambda/lib/private/s3-object-copy.ts b/packages/aws-cdk-lib/aws-lambda/lib/private/s3-object-copy.ts
new file mode 100644
index 0000000000000..d478ed7deeb12
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/lib/private/s3-object-copy.ts
@@ -0,0 +1,299 @@
+import { Construct } from 'constructs';
+import type * as ec2 from '../../../aws-ec2';
+import * as iam from '../../../aws-iam';
+import * as logs from '../../../aws-logs';
+import type * as s3 from '../../../aws-s3';
+import * as cdk from '../../../core';
+import { ValidationError } from '../../../core/lib/errors';
+import { md5hash } from '../../../core/lib/helpers-internal';
+import { lit } from '../../../core/lib/private/literal-string';
+import { propertyInjectable } from '../../../core/lib/prop-injectable';
+import type { S3ObjectCopySingletonFunction as S3ObjectCopySingletonFunctionType } from '../../../custom-resource-handlers/dist/aws-s3-deployment/s3-object-copy-provider.generated';
+import type { WebFunctionCodeCopyOptions } from '../webfunction-code';
+
+const RESOURCE_TYPE = 'Custom::S3ObjectCopy';
+
+/**
+ * Properties for `S3ObjectCopy`.
+ */
+export interface S3ObjectCopyProps extends WebFunctionCodeCopyOptions {
+  /**
+   * The bucket holding the object to copy from.
+   */
+  readonly sourceBucket: s3.IBucket;
+
+  /**
+   * The key of the object to copy from.
+   */
+  readonly sourceKey: string;
+
+  /**
+   * The bucket to copy the object into.
+   *
+   * Must have versioning enabled — the copied object's version is this construct's whole
+   * output, and S3 only reports a version for a versioned bucket. If versioning is off, the
+   * deployment fails with an actionable error.
+   */
+  readonly destinationBucket: s3.IBucket;
+
+  /**
+   * Prefix of the key to copy the object to.
+   *
+   * The rest of the key is a hash of `contentHash` and `configuration`, computed by the copy
+   * function at deploy time, so that values only known then can feed it.
+   */
+  readonly destinationKeyPrefix: string;
+
+  /**
+   * Identifies the content of the source object, independent of where it is stored.
+   *
+   * A source that moves without its content changing, for example to a bucket with another
+   * bootstrap qualifier, keeps the destination key and is not copied again.
+   */
+  readonly contentHash: string;
+
+  /**
+   * Configuration of whatever reads the copied object.
+   *
+   * A change gives the object a new key and replaces this resource, so every configuration
+   * has an object of its own, with the removal policy of its own consumer.
+   *
+   * @default - the key depends on the content only
+   */
+  readonly configuration?: any;
+
+  /**
+   * Object key pattern the copy function may write to and delete from in the destination
+   * bucket.
+   *
+   * The copy function is shared by every copy in the stack, so its role's policy is shared
+   * too. Granting each copy its exact key would add a statement per copy and the policy would
+   * grow with the number of copies; a pattern shared by all copies into one bucket keeps it
+   * to one set of statements per bucket. The pattern also has to be wider than `destinationKey`
+   * for cleanup: when the resource is replaced, CloudFormation deletes the old object after
+   * the policy has already moved on to the new key.
+   */
+  readonly destinationKeyPattern: string;
+}
+
+/**
+ * Copies a single S3 object from one bucket to another at deploy time, and reports the version
+ * of the object it wrote.
+ *
+ * Unlike `BucketDeployment`, which mirrors a directory tree, this copies exactly one object and
+ * never prunes:
+ *
+ * - **The key** is the prefix followed by a hash of the content and the configuration. A change
+ *   to either copies to a new key and returns a new physical ID, so CloudFormation replaces the
+ *   resource, and deletes the old one in the cleanup phase unless its `UpdateReplacePolicy` is
+ *   `Retain`. Any other update copies nothing.
+ * - **On delete** the one version this resource wrote is removed, named by its physical ID.
+ *
+ * The copy is a server-side `CopyObject`, so the object's bytes never pass through Lambda. That
+ * avoids the AWS CLI layer, the `/tmp` size ceiling and the long timeouts that
+ * `BucketDeployment` needs. It also caps the source object at 5 GB, the limit of a single
+ * `CopyObject` call.
+ */
+@propertyInjectable
+export class S3ObjectCopy extends Construct {
+  /** Uniquely identifies this class. */
+  public static readonly PROPERTY_INJECTION_ID: string = 'aws-cdk-lib.aws-lambda.S3ObjectCopy';
+
+  /**
+   * The version of the destination object written by this copy.
+   *
+   * Resolved at deploy time. Because the copy reports the version it wrote itself, this is the
+   * exact version of this object's contents — not merely whichever version happened to be
+   * current afterwards.
+   */
+  public readonly versionId: string;
+
+  /**
+   * The bucket the object was written to, as reported by the copy.
+   *
+   * Resolved at deploy time. Together with `destinationObjectKey` and `versionId` this forms
+   * the full address of the written object, so consumers can read the location entirely
+   * through this resource's outputs.
+   */
+  public readonly destinationBucketName: string;
+
+  /**
+   * The key the object was written to, as reported by the copy.
+   *
+   * Resolved at deploy time.
+   */
+  public readonly destinationObjectKey: string;
+
+  /** The execution role of the Lambda function performing the copy. */
+  public readonly handlerRole: iam.IRole;
+
+  /** The custom resource that performs the copy. */
+  public readonly resource: cdk.CfnResource;
+
+  constructor(scope: Construct, id: string, props: S3ObjectCopyProps) {
+    super(scope, id);
+
+    // The generated provider class extends `lambda.SingletonFunction`, so its module
+    // evaluates `extends` against the `aws-lambda` module root at load time. Because this
+    // file is itself reached while `aws-lambda` is still initialising, a top-level import
+    // would see a half-populated module and fail with "Class extends value undefined".
+    // Requiring it here defers the load until synthesis, when the module is fully loaded.
+    const { S3ObjectCopySingletonFunction } =
+      // eslint-disable-next-line @typescript-eslint/no-require-imports
+      require('../../../custom-resource-handlers/dist/aws-s3-deployment/s3-object-copy-provider.generated') as
+        { S3ObjectCopySingletonFunction: typeof S3ObjectCopySingletonFunctionType };
+
+    const uuid = renderSingletonUuid(props);
+    const handler = new S3ObjectCopySingletonFunction(this, 'CustomResourceHandler', {
+      uuid,
+      lambdaPurpose: RESOURCE_TYPE,
+      // Not exposed as an option yet. lambda.Function defaults to 3 seconds, which is too
+      // short for copying a large object, so a usable value has to be set here.
+      timeout: cdk.Duration.minutes(15),
+      role: props.role,
+      vpc: props.vpc,
+      vpcSubnets: props.vpcSubnets,
+      securityGroups: props.securityGroups,
+      logGroup: props.logGroup ?? singletonLogGroup(this, uuid),
+    });
+
+    if (!handler.role) {
+      throw new ValidationError(lit`S3ObjectCopyHandlerRoleMissing`, 'S3ObjectCopySingletonFunction should have created a Role', this);
+    }
+    this.handlerRole = handler.role;
+
+    // CopyObject only reads the source object. The source is the CDK asset bucket, where objects
+    // are keyed by content hash at the root, so there is no prefix to narrow the read to; a grant
+    // per key would grow this shared role's policy with every asset. Bucket-wide object reads are
+    // the deliberate trade between blast radius and policy size.
+    iam.Grant.addToPrincipal({
+      grantee: handler,
+      actions: ['s3:GetObject', 's3:GetObjectVersion'],
+      resourceArns: [props.sourceBucket.arnForObjects('*')],
+    });
+    const keyPattern = props.destinationKeyPattern;
+    props.destinationBucket.grantPut(handler, keyPattern);
+    // Deletion removes one version of the object, which takes DeleteObjectVersion.
+    props.destinationBucket.grantDelete(handler, keyPattern);
+
+    const cr = new cdk.CustomResource(this, 'Resource', {
+      serviceToken: handler.functionArn,
+      resourceType: RESOURCE_TYPE,
+      properties: {
+        SourceBucketName: props.sourceBucket.bucketName,
+        SourceObjectKey: props.sourceKey,
+        DestinationBucketName: props.destinationBucket.bucketName,
+        DestinationKeyPrefix: props.destinationKeyPrefix,
+        ContentHash: props.contentHash,
+        Configuration: props.configuration,
+      },
+    });
+    this.resource = cr.node.defaultChild as cdk.CfnResource;
+
+    this.destinationBucketName = cr.getAttString('Bucket');
+    this.destinationObjectKey = cr.getAttString('Key');
+    this.versionId = cr.getAttString('VersionId');
+  }
+}
+
+/**
+ * The log group for the singleton function, shared like the function itself.
+ *
+ * Every copy with the same uuid gets the same function, so the log group is keyed by the uuid
+ * too: one log group per function, instead of one per copy that only the first would use.
+ */
+function singletonLogGroup(scope: Construct, uuid: string): logs.ILogGroup {
+  const stack = cdk.Stack.of(scope);
+  const id = `S3ObjectCopyLogGroup${uuid.replace(/[^a-zA-Z0-9]/g, '')}`;
+  return (stack.node.tryFindChild(id) as logs.ILogGroup | undefined) ?? new logs.LogGroup(stack, id);
+}
+
+/**
+ * Build the singleton function's identity.
+ *
+ * Anything that changes the function itself has to feed the uuid, otherwise two
+ * differently-configured copies would silently share one function and the second
+ * configuration would be dropped.
+ *
+ * A value is only appended when it is actually set, so adding a new option later leaves the
+ * uuid — and therefore the logical ID — unchanged for consumers who do not use it.
+ *
+ * The destination is always part of it. The function's role is scoped to the destination, so
+ * if a moved destination kept the same function, its role would be narrowed in place and the
+ * Delete of the old object, which runs in the cleanup phase, would no longer be allowed. A new
+ * function instead leaves the old one, with its grants, to delete the old object.
+ */
+export function renderSingletonUuid(props: S3ObjectCopyFunctionProps): string {
+  // A fixed, arbitrary seed for the function's logical ID. Do not change it: a new value
+  // replaces the copy function in every stack that has one.
+  let uuid = 'e2f8cf6b-1b0f-4b3f-9a2c-6f1f5b6d4a71';
+  uuid += `-dest-${destinationIdentity(props.destinationBucket, props.destinationKeyPattern)}`;
+
+  if (props.role) { uuid += `-role-${props.role.node.addr}`; }
+  if (props.vpc) {
+    uuid += `-vpc-${props.vpc.node.addr}`;
+    if (props.vpcSubnets) { uuid += `-subnets-${renderSubnetSelectionIdentity(props.vpcSubnets)}`; }
+  }
+  if (props.securityGroups) { uuid += `-sg-${props.securityGroups.map(sg => sg.node.addr).sort().join('-')}`; }
+  if (props.logGroup) { uuid += `-lg-${props.logGroup.node.addr}`; }
+
+  return uuid;
+}
+
+/**
+ * The properties that decide which copy function a copy uses: everything except the object.
+ */
+export type S3ObjectCopyFunctionProps = Pick;
+
+/**
+ * A hex identity for the function that performs a copy.
+ *
+ * `WebFunctionCode` derives the copy's construct id from it, and only from it. A resource's
+ * ServiceToken cannot change, so a copy that needs another function has to be a new resource;
+ * the old one keeps its ServiceToken, so the old function, with the grants it had, performs its
+ * Delete. The content is deliberately left out: a code change updates the same resource, which
+ * then replaces itself through a new physical ID under the removal policy of its consumer.
+ */
+export function copyFunctionIdentity(props: S3ObjectCopyFunctionProps): string {
+  return md5hash(renderSingletonUuid(props));
+}
+
+/**
+ * A hex identity for where a copy writes to. It feeds the function's uuid here, and the copy's
+ * construct id in `WebFunctionCode`, so the two change together.
+ *
+ * The bucket is identified by its name as CloudFormation sees it — a literal for an imported
+ * bucket, a `Ref` for one defined in the app — rather than by construct path. The copy's id has
+ * to change only when the object it writes changes; a path that moves without the bucket would
+ * give a new copy resource for the same object, and deleting the old one would remove the new
+ * copy's object as well.
+ *
+ * Hashed because `SingletonFunction` drops the non-alphanumeric characters of the uuid, which
+ * would make patterns such as `a/b/*` and `ab/*` the same identity.
+ */
+export function destinationIdentity(bucket: s3.IBucket, keyPattern: string): string {
+  const bucketName = JSON.stringify(cdk.Stack.of(bucket).resolve(bucket.bucketName));
+  return md5hash(`${bucketName}/${keyPattern}`);
+}
+
+/**
+ * Reduce a subnet selection to a hex identity that is stable across synths and distinct for
+ * distinct selections.
+ *
+ * Two details make the obvious `JSON.stringify(selection)` wrong here:
+ *
+ * - `subnets` holds constructs, which carry circular references through the construct tree, so
+ *   stringifying them throws. They are identified by node address instead, like every other
+ *   construct feeding this uuid.
+ * - `SingletonFunction` slugifies the uuid by dropping every non-alphanumeric character, which
+ *   would strip a raw JSON string of its delimiters and let distinct selections collapse onto
+ *   one identifier. Hashing to hex survives that intact.
+ */
+function renderSubnetSelectionIdentity(selection: ec2.SubnetSelection): string {
+  const { subnets, ...rest } = selection;
+  return md5hash(JSON.stringify({
+    ...rest,
+    subnets: subnets?.map(subnet => subnet.node.addr).sort(),
+  }));
+}
diff --git a/packages/aws-cdk-lib/aws-lambda/lib/private/webfunction-util.ts b/packages/aws-cdk-lib/aws-lambda/lib/private/webfunction-util.ts
new file mode 100644
index 0000000000000..d4dafd0342d4e
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/lib/private/webfunction-util.ts
@@ -0,0 +1,46 @@
+import type { Construct } from 'constructs';
+import { Stack, Token } from '../../../core';
+import { ValidationError } from '../../../core/lib/errors';
+import { md5hash } from '../../../core/lib/helpers-internal';
+import { lit } from '../../../core/lib/private/literal-string';
+
+/**
+ * A short hash of an endpoint's type and replica regions.
+ *
+ * Both are create-only, like the endpoint name, so changing them replaces the endpoint, which
+ * CloudFormation cannot do under the same name. A default name includes this hash so that it
+ * changes with them. `regions` is the normalized list the endpoint renders (see
+ * `WebFunctionEndpointLocation._regionList`), so listing the same Regions differently changes
+ * neither.
+ */
+export function endpointShapeHash(scope: Construct, endpointType: string, regions: string[] | undefined): string {
+  return md5hash(JSON.stringify([endpointType, Stack.of(scope).resolve(regions) ?? null])).slice(0, 8);
+}
+
+/**
+ * The names the service accepts for a WebFunction and for its endpoint.
+ *
+ * Both are validated with the same rule: 2–64 characters of letters, numbers, hyphens and
+ * underscores, starting and ending with a letter or number.
+ */
+const RESOURCE_NAME_REGEX = /^[a-zA-Z0-9][a-zA-Z0-9_-]{0,62}[a-zA-Z0-9]$/;
+
+export function validateResourceName(name: string, label: string, scope: Construct): void {
+  if (!RESOURCE_NAME_REGEX.test(name)) {
+    throw new ValidationError(lit`WebFunctionNameInvalid`,
+      `${label} '${name}' must be 2 to 64 characters of letters, numbers, hyphens or underscores, ` +
+      'starting and ending with a letter or number.', scope);
+  }
+}
+
+/**
+ * The WebFunctions in this app that have an egress network connector. The service only accepts
+ * a `HOME_REGION` endpoint for them, which `WebFunctionEndpoint` checks for every endpoint,
+ * however it is created.
+ */
+export const FUNCTIONS_WITH_EGRESS_CONNECTOR = new WeakSet();
+
+/** A list token has `length === 1`, so both the list and its elements must be checked. */
+export function hasTokens(list: string[]): boolean {
+  return Token.isUnresolved(list) || list.some((r) => Token.isUnresolved(r));
+}
diff --git a/packages/aws-cdk-lib/aws-lambda/lib/webfunction-code.ts b/packages/aws-cdk-lib/aws-lambda/lib/webfunction-code.ts
new file mode 100644
index 0000000000000..cfb430932f4f7
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/lib/webfunction-code.ts
@@ -0,0 +1,1138 @@
+import type { Construct } from 'constructs';
+import { CfnWebFunctionRevision } from './lambda.generated';
+import type * as ec2 from '../../aws-ec2';
+import * as iam from '../../aws-iam';
+import type * as logs from '../../aws-logs';
+import * as s3 from '../../aws-s3';
+import * as s3_assets from '../../aws-s3-assets';
+import * as cdk from '../../core';
+import { S3ObjectCopy, copyFunctionIdentity } from './private/s3-object-copy';
+import { ValidationError } from '../../core/lib/errors';
+import { md5hash } from '../../core/lib/helpers-internal';
+import { lit } from '../../core/lib/private/literal-string';
+
+/**
+ * S3 location for WebFunction code
+ */
+export interface WebFunctionS3Location {
+  /**
+   * The S3 bucket name
+   */
+  readonly bucketName: string;
+
+  /**
+   * The S3 object key
+   */
+  readonly objectKey: string;
+
+  /**
+   * The S3 object version (optional)
+   *
+   * @default - the version that is latest when the revision is created
+   */
+  readonly objectVersion?: string;
+}
+
+/**
+ * WebFunction code configuration result
+ */
+export interface WebFunctionCodeConfig {
+  /**
+   * The S3 location of the code
+   */
+  readonly s3Location: WebFunctionS3Location;
+}
+
+/**
+ * Options passed by `WebFunction` when binding code.
+ */
+export interface WebFunctionCodeBindOptions {
+  /**
+   * The ARN of the WebFunction the code is bound to.
+   *
+   * Used to scope the code-read policy to this function's revisions.
+   */
+  readonly webFunctionArn: string;
+}
+
+/**
+ * Code for a `WebFunction`.
+ *
+ * WebFunction always reads its code from S3 at runtime, on every sandbox start, using the
+ * Lambda service principal. The bucket holding the code must therefore have S3 versioning
+ * enabled — enforced at synth time for buckets defined in the same app — and grant
+ * `lambda.amazonaws.com` read access to the code object. The construct adds that grant
+ * automatically on owned buckets (best-effort — imported buckets emit a warning instead).
+ *
+ * Bucket encryption compatibility:
+ *
+ * - `BucketEncryption.S3_MANAGED` (SSE-S3, AES256) — works, no key policy needed
+ * - `BucketEncryption.KMS` or `BucketEncryption.DSSE` with a customer managed key —
+ *   works; `kms:Decrypt` is granted to the Lambda service principal automatically
+ *   (best-effort for imported keys)
+ * - `BucketEncryption.KMS_MANAGED` (SSE-KMS with `aws/s3`) and
+ *   `BucketEncryption.DSSE_MANAGED` — do not work: an AWS-managed key policy cannot
+ *   be modified to authorize the Lambda service principal. For a bucket defined in
+ *   this app this fails at synthesis; an imported bucket exposes no encryption
+ *   settings, so there it surfaces as a read failure at runtime
+ *
+ * Use one of the static factory methods to create an instance.
+ *
+ * Unlike `lambda.Code`, there is deliberately no plain `fromAsset()`: each asset factory
+ * names the bucket the code is staged to, so the choice is explicit at the call site.
+ */
+export abstract class WebFunctionCode {
+  /**
+   * Create WebFunction code from an S3 bucket.
+   *
+   * This method configures the bucket on a best-effort basis so it satisfies
+   * WebFunction's runtime requirements:
+   *
+   * - It adds a resource policy statement granting `lambda.amazonaws.com`
+   *   `s3:GetObject` and `s3:GetObjectVersion`, scoped to the given object key,
+   *   to the deploying account and to the revisions of the bound WebFunction.
+   *   For buckets imported by attributes (e.g.
+   *   `Bucket.fromBucketName`) the policy cannot be modified from this app;
+   *   ensure the bucket already carries an equivalent statement.
+   * - This method does not change the bucket's versioning setting, so it is
+   *   validated instead: a bucket defined in this app without
+   *   `versioned: true` fails at synthesis. Imported buckets cannot be
+   *   inspected, so for those the requirement is only enforced at deployment
+   *   time, where WebFunction rejects a bucket that reports no object version.
+   * - Encryption with an AWS-managed KMS key is asserted against for the same
+   *   reason: a bucket defined in this app using `BucketEncryption.KMS_MANAGED`
+   *   or `BucketEncryption.DSSE_MANAGED` fails at synthesis, since that key's
+   *   policy cannot be modified to authorize the service principal. Imported
+   *   buckets cannot be inspected and are assumed to be compatible.
+   */
+  public static fromBucket(bucket: s3.IBucket, key: string, objectVersion?: string): WebFunctionCode {
+    return new BucketCode(bucket, key, objectVersion);
+  }
+
+  /**
+   * Create WebFunction code from a local file or directory, staged into a bucket that CDK
+   * creates and configures for you.
+   *
+   * One bucket is created per stack and shared by every WebFunction in it that uses this
+   * factory. It is configured with everything WebFunction requires: versioning, AES256
+   * (SSE-S3) encryption, and a bucket policy granting `lambda.amazonaws.com` read access.
+   *
+   * The bucket is removed and emptied along with the stack that owns it. If a revision whose
+   * code it holds is retained, the bucket is retained as well, with a warning.
+   *
+   * Not supported in an environment bootstrapped with a customer managed KMS key; see the README.
+   */
+  public static fromAssetToManagedBucket(path: string, options?: WebFunctionManagedBucketAssetOptions): WebFunctionCode {
+    return new ManagedBucketAssetCode(path, options ?? {});
+  }
+
+  /**
+   * Create WebFunction code from a local file or directory, staged into a bucket you own.
+   *
+   * You own the bucket, so CDK only makes the narrowest change it needs: it adds a resource
+   * policy statement granting `lambda.amazonaws.com` read access to this function's code, and
+   * `kms:Decrypt` on the bucket's key if it is encrypted with a customer managed key. Both
+   * are best-effort — on an imported bucket or key they are no-ops and a warning is emitted
+   * instead, since the policy cannot be modified from this app.
+   *
+   * You are responsible for the bucket settings CDK cannot change:
+   *
+   * - S3 versioning must be enabled. This is validated at synth time for a bucket defined in
+   *   the same app; an imported bucket is only caught at deployment time, where WebFunction
+   *   rejects a bucket that reports no object version.
+   * - Encryption must not be `BucketEncryption.KMS_MANAGED` (SSE-KMS with `aws/s3`) or
+   *   `BucketEncryption.DSSE_MANAGED`, whose key policy cannot be modified to authorize the
+   *   Lambda service principal. SSE-S3 and a customer managed key both work.
+   *
+   * Not supported in an environment bootstrapped with a customer managed KMS key; see the README.
+   */
+  public static fromAssetToProvidedBucket(
+    bucket: s3.IBucket,
+    path: string,
+    options?: WebFunctionProvidedBucketAssetOptions,
+  ): WebFunctionCode {
+    return new ProvidedBucketAssetCode(bucket, path, options ?? {});
+  }
+
+  /**
+   * Binds the code to a construct and returns the S3 location.
+   *
+   * @param scope - The construct scope to bind to
+   * @param options - Identity of the WebFunction, used to scope the read policy
+   * @returns The S3 location configuration for the code
+   */
+  public abstract bind(scope: Construct, options: WebFunctionCodeBindOptions): WebFunctionCodeConfig;
+
+  /**
+   * Called after the CloudFormation resource has been created, to let the code object bind
+   * to it. A no-op for every current code source.
+   *
+   * `lambda.Code` has the same hook, and its `AssetCode` uses it to attach asset metadata
+   * (`aws:asset:path` etc.) for tooling. That is deliberately not done here: of the consumers
+   * of that metadata, SAM CLI local invoke does not support WebFunction, and
+   * `cdk deploy --hotswap` would be semantically wrong — it performs an in-place code
+   * update, whereas WebFunction's model is "create a new revision, then shift traffic".
+   * An override can be added once a consumer is verified to handle WebFunction correctly.
+   */
+  public bindToResource(_resource: cdk.CfnResource): void {
+    return;
+  }
+}
+
+/**
+ * Code that already lives in a compliant S3 bucket. No staging is performed.
+ *
+ * Not exported: consumers reach this through `WebFunctionCode.fromBucket()`, which declares
+ * `WebFunctionCode` as its return type. This class adds no API beyond the base class.
+ */
+class BucketCode extends WebFunctionCode {
+  constructor(
+    private readonly bucket: s3.IBucket,
+    private readonly key: string,
+    private readonly objectVersion?: string,
+  ) {
+    super();
+  }
+
+  /**
+   * Binds the code to a construct and returns the S3 location.
+   *
+   * Grants the Lambda service principal read access to the code object and, for a
+   * bucket defined in this app, asserts that it has versioning enabled and is not
+   * encrypted with an AWS-managed KMS key.
+   *
+   * @param scope - The construct scope to bind to
+   * @param options - Identity of the WebFunction, used to scope the read policy
+   * @returns The S3 location configuration for the code
+   */
+  public bind(scope: Construct, options: WebFunctionCodeBindOptions): WebFunctionCodeConfig {
+    scope.node.addValidation({
+      validate: () => [
+        ...validateBucketVersioned(this.bucket, 'fromBucket'),
+        ...validateBucketEncryption(this.bucket, 'fromBucket'),
+      ],
+    });
+    validateCodeKey(this.key, scope);
+    grantServiceRead(this.bucket, this.key, scope, options);
+
+    return {
+      s3Location: {
+        bucketName: this.bucket.bucketName,
+        objectKey: this.key,
+        objectVersion: this.objectVersion,
+      },
+    };
+  }
+}
+
+/**
+ * Configuration for the Lambda function that copies staged code into its destination bucket.
+ *
+ * The function is a stack-level singleton: every copy whose options resolve to the same
+ * configuration shares one function. Supplying different options produces a separate
+ * function, since a single Lambda cannot hold two conflicting configurations.
+ */
+export interface WebFunctionCodeCopyOptions {
+  /**
+   * Execution role for the Lambda function that performs the copy.
+   *
+   * @default - a role is created with permissions to read the source object and write the
+   * destination object
+   */
+  readonly role?: iam.IRole;
+
+  /**
+   * The VPC to run the Lambda function in.
+   *
+   * Only needed if your organization requires all functions to run inside a VPC. The function
+   * calls S3, so the VPC needs either a NAT gateway or an S3 VPC endpoint.
+   *
+   * @default - the function is not placed in a VPC
+   */
+  readonly vpc?: ec2.IVpc;
+
+  /**
+   * Which subnets to place the Lambda function in.
+   *
+   * Only used if `vpc` is supplied.
+   *
+   * @default - the VPC's private subnets
+   */
+  readonly vpcSubnets?: ec2.SubnetSelection;
+
+  /**
+   * Security groups for the Lambda function.
+   *
+   * Only used if `vpc` is supplied.
+   *
+   * @default - a dedicated security group is created
+   */
+  readonly securityGroups?: ec2.ISecurityGroup[];
+
+  /**
+   * The log group the Lambda function sends logs to.
+   *
+   * @default - a log group is created in the stack, shared by every copy that uses the same function
+   */
+  readonly logGroup?: logs.ILogGroupRef;
+}
+
+/**
+ * Options common to the asset-based factories.
+ *
+ * The asset is a staging copy in the CDK asset bucket; the function serves the object the copy
+ * writes to the destination bucket. So `readers` and `deployTime` apply to that staged object
+ * only — read access to the code the function runs is granted on the destination bucket.
+ */
+export interface WebFunctionAssetOptions extends s3_assets.AssetOptions {
+  /**
+   * Configuration for the custom resource that copies the staged asset into the destination
+   * bucket. Use this if your organization requires the copy to run in a VPC, or to supply
+   * your own execution role.
+   *
+   * @default - the copy runs outside a VPC with a role created for it
+   */
+  readonly copyOptions?: WebFunctionCodeCopyOptions;
+}
+
+/**
+ * Options for `WebFunctionCode.fromAssetToManagedBucket()`.
+ */
+export interface WebFunctionManagedBucketAssetOptions extends WebFunctionAssetOptions {
+}
+
+/**
+ * Options for `WebFunctionCode.fromAssetToProvidedBucket()`.
+ */
+export interface WebFunctionProvidedBucketAssetOptions extends WebFunctionAssetOptions {
+  /**
+   * Prefix for the object key written into your bucket.
+   *
+   * The object is written at `web-function//.zip`. The prefix is
+   * used as given, so include a trailing `/` to place the object under a folder-like prefix.
+   *
+   * The prefix also scopes the copy function's write and delete permissions on your bucket, so
+   * it must not start with `/` or contain `*`, `?` or `${`, which IAM would read as a wildcard
+   * or a policy variable. For the same reason it must be a literal string: a deploy-time value
+   * cannot be checked, and is rejected.
+   *
+   * @default - objects are written under `web-function/` at the root of the bucket
+   */
+  readonly keyPrefix?: string;
+}
+
+/**
+ * Shared implementation for code staged from a local asset.
+ *
+ * Both subclasses stage the asset the normal CDK way, which lands it in the bootstrap bucket,
+ * and then copy it into a bucket that satisfies WebFunction's runtime requirements. The
+ * bootstrap copy is a plain deploy-time asset; only the destination copy is read at runtime.
+ */
+abstract class StagedAssetCode extends WebFunctionCode {
+  private asset?: s3_assets.Asset;
+  /**
+   * The copy made by the last `bind()`, waiting for the revision that reads it, and the holder
+   * that revision is put in.
+   *
+   * The holder belongs to that one copy, not to this code object: one code object can be bound to
+   * several functions, and each copy has to read its own function's revision.
+   */
+  private pending?: { readonly copy: S3ObjectCopy; readonly holder: { revision?: cdk.CfnResource } };
+
+  constructor(private readonly path: string, private readonly options: WebFunctionAssetOptions) {
+    super();
+  }
+
+  public bind(scope: Construct, options: WebFunctionCodeBindOptions): WebFunctionCodeConfig {
+    // The asset belongs to this one function, so it hangs off `scope` rather than the stack.
+    this.asset = new s3_assets.Asset(scope, 'Code', {
+      path: this.path,
+      ...this.options,
+    });
+    if (!this.asset.isZipArchive) {
+      throw new ValidationError(lit`WebFunctionAssetMustBeZipFile`, `Asset must be a .zip file or a directory (${this.path})`, scope);
+    }
+
+    const destination = this.destinationBucket(scope);
+    const prefix = this.destinationPrefix();
+    // Everything this function's code is ever written to, across deployments.
+    const functionPrefix = `${prefix}${cdk.Names.uniqueId(scope)}/`;
+
+    // Let the subclass make sure the service principal can read the object it is about to
+    // write, and that nothing reading it is created before that grant exists. The managed
+    // bucket carries a wildcard statement already and only needs the ordering; a caller-provided
+    // bucket gets a statement scoped to this function's objects. The grant covers the folder
+    // rather than the one key so that it stays the same when the code changes: the revision
+    // being replaced keeps reading its own object until the deployment completes.
+    this.grantDestinationRead(destination, `${functionPrefix}*`, scope, options);
+
+    // The copy represents the code object of one revision. A revision is replaced whenever any
+    // of its properties changes, since they are all create-only, so the destination key is a
+    // hash of the content and of the revision's other configuration. The copy function computes
+    // it at deploy time, because some of that configuration (a connector's latest version, a
+    // replaced role or key) is only known then. A changed key gives the copy a new physical ID,
+    // so it is replaced in the same deployment as the revision, under the same removal policy.
+    //
+    // The construct id depends on the copy function only, not on the content: a resource's
+    // ServiceToken cannot change, so a copy that needs another function has to be a new
+    // resource, while a code change updates this one.
+    const holder: { revision?: cdk.CfnResource } = {};
+    const copyProps = {
+      destinationBucket: destination,
+      destinationKeyPattern: `${prefix}*`,
+      ...this.options.copyOptions,
+    };
+    const copy = new S3ObjectCopy(scope, `CodeCopy${copyFunctionIdentity(copyProps).slice(0, 8)}`, {
+      ...copyProps,
+      sourceBucket: this.asset.bucket,
+      sourceKey: this.asset.s3ObjectKey,
+      destinationKeyPrefix: functionPrefix,
+      contentHash: this.asset.assetHash,
+      configuration: cdk.Lazy.any({ produce: () => holder.revision && revisionConfiguration(holder.revision) }),
+    });
+    this.pending = { copy, holder };
+
+    return {
+      // The full address comes from the copy's outputs — what was actually written — rather
+      // than being reassembled from this method's inputs.
+      s3Location: {
+        bucketName: copy.destinationBucketName,
+        objectKey: copy.destinationObjectKey,
+        objectVersion: copy.versionId,
+      },
+    };
+  }
+
+  /**
+   * Ties the copy made by `bind()` to the revision that reads it: the revision's configuration
+   * feeds the copy's key, and its removal policy decides the copy's.
+   */
+  public bindToResource(resource: cdk.CfnResource): void {
+    const pending = this.pending;
+    this.pending = undefined;
+    if (!pending) {
+      return;
+    }
+    const copy = pending.copy;
+    pending.holder.revision = resource;
+    // The copy's policies follow the revision's. They are resolved at synthesis, after every
+    // aspect has run and wherever the revision's policy was set: an aspect visits one node at a
+    // time, in tree order, and the copy is visited before the revision it belongs to.
+    copy.resource.addOverride('UpdateReplacePolicy',
+      cdk.Lazy.string({ produce: () => replacePolicyName(retentionOf(resource).onReplace) }));
+    copy.resource.addOverride('DeletionPolicy',
+      cdk.Lazy.string({ produce: () => deletionPolicyName(retentionOf(resource).any) }));
+    this.retainDestinationFor(resource);
+  }
+
+  /**
+   * Lets the destination follow a revision that may be retained. The default does nothing,
+   * for destinations whose lifecycle is the caller's.
+   */
+  protected retainDestinationFor(_revision: cdk.CfnResource): void {
+    return;
+  }
+
+  /** The bucket the code is copied into. */
+  protected abstract destinationBucket(scope: Construct): s3.IBucket;
+
+  /**
+   * The key prefix everything this module writes to the destination bucket lives under.
+   *
+   * The copy function may write, delete and list under it. It is shared by every function
+   * copying into the bucket, so the copy function's policy has one set of statements per
+   * bucket rather than one per function.
+   */
+  protected abstract destinationPrefix(): string;
+
+  /**
+   * Grant the Lambda service principal read access to the copied objects matching `keyPattern`.
+   *
+   * The default does nothing, for destinations that already carry a suitable statement.
+   */
+  protected grantDestinationRead(
+    _bucket: s3.IBucket, _keyPattern: string, _scope: Construct, _options: WebFunctionCodeBindOptions,
+  ): void {
+    return;
+  }
+}
+
+/**
+ * Code staged into a per-stack bucket that CDK creates and configures.
+ */
+class ManagedBucketAssetCode extends StagedAssetCode {
+  constructor(path: string, options: WebFunctionManagedBucketAssetOptions) {
+    super(path, options);
+  }
+
+  protected destinationBucket(scope: Construct): s3.IBucket {
+    return getOrCreateAssetBucket(scope);
+  }
+
+  protected grantDestinationRead(bucket: s3.IBucket, _keyPattern: string, scope: Construct): void {
+    // The statement is already on the bucket, added once when the bucket was created. What
+    // each function still needs is the ordering: the service reads the code through that
+    // policy when the revision is created, so the revision must not exist before the policy
+    // does. The bucket is always one this module created, so its policy is always present.
+    if (bucket.policy) {
+      scope.node.addDependency(bucket.policy);
+    }
+  }
+
+  protected destinationPrefix(): string {
+    // The bucket is CDK-owned and holds only WebFunction code, so this covers all of it.
+    return CODE_KEY_SEGMENT;
+  }
+
+  protected retainDestinationFor(revision: cdk.CfnResource): void {
+    const bucket = getOrCreateAssetBucket(revision);
+    managedBucketRevisions(bucket).push(revision);
+    // A validation rather than an aspect: it runs after every aspect, so rendering the revision
+    // here cannot resolve, and cache, a value a later aspect would still change.
+    revision.node.addValidation({
+      validate: () => {
+        if (retentionOf(revision).any > Retention.DELETE) {
+          cdk.Annotations.of(revision).addWarningV2('@aws-cdk/aws-lambda:webFunctionManagedBucketRetained',
+            `This revision is retained, so the code bucket ${bucket.node.path} and its policy are retained too, with the ` +
+            'code of every retained revision in it. Deleting the stack leaves them in place, and they are ' +
+            'yours to clean up. To manage them yourself, stage the code with ' +
+            'WebFunctionCode.fromAssetToProvidedBucket() into a bucket you own.');
+        }
+        return [];
+      },
+    });
+  }
+}
+
+/**
+ * Code staged into a bucket supplied by the customer.
+ */
+class ProvidedBucketAssetCode extends StagedAssetCode {
+  constructor(
+    private readonly bucket: s3.IBucket,
+    path: string,
+    private readonly providedOptions: WebFunctionProvidedBucketAssetOptions,
+  ) {
+    super(path, providedOptions);
+  }
+
+  protected destinationBucket(scope: Construct): s3.IBucket {
+    validateKeyPrefix(this.providedOptions.keyPrefix, scope);
+    scope.node.addValidation({
+      validate: () => [
+        ...validateBucketVersioned(this.bucket, 'fromAssetToProvidedBucket'),
+        ...validateBucketEncryption(this.bucket, 'fromAssetToProvidedBucket'),
+      ],
+    });
+    return this.bucket;
+  }
+
+  protected destinationPrefix(): string {
+    // Only what this module writes under the caller's prefix; the caller's own objects under
+    // the same prefix stay out of reach.
+    return `${this.providedOptions.keyPrefix ?? ''}${CODE_KEY_SEGMENT}`;
+  }
+
+  /**
+   * A retained revision keeps reading its code through the bucket policy, so the policy is
+   * retained with it. Otherwise the policy keeps its own removal policy. An imported bucket has
+   * no policy resource here, and its policy is the caller's to keep.
+   */
+  protected retainDestinationFor(revision: cdk.CfnResource): void {
+    const policy = this.bucket.policy?.node.defaultChild;
+    if (!(policy instanceof cdk.CfnResource)) {
+      return;
+    }
+    let revisions = PROVIDED_POLICY_REVISIONS.get(policy);
+    if (!revisions) {
+      revisions = [];
+      PROVIDED_POLICY_REVISIONS.set(policy, revisions);
+      retainWithRevisions(policy, revisions);
+    }
+    revisions.push(revision);
+  }
+
+  /**
+   * The caller owns this bucket, so CDK adds only the one statement the service needs to read
+   * this function's code — scoped to its objects, not to the whole bucket.
+   */
+  protected grantDestinationRead(
+    bucket: s3.IBucket, keyPattern: string, scope: Construct, options: WebFunctionCodeBindOptions,
+  ): void {
+    grantServiceRead(bucket, keyPattern, scope, options);
+  }
+}
+
+/**
+ * Grant the Lambda service principal read access to code objects.
+ *
+ * The statement is scoped to `key` — one object key, or a pattern such as a function's folder —
+ * and conditioned on `aws:SourceAccount`
+ * and `aws:SourceArn`. The service reads the object on behalf
+ * of a revision and presents the revision ARN as the source, so the condition matches
+ * `/revision/*`. For imported buckets `addToResourcePolicy` is a no-op, so this
+ * is best-effort by construction: for those the caller has to carry an equivalent statement
+ * already, otherwise `CreateWebFunctionRevision` rejects the deployment.
+ */
+function grantServiceRead(
+  bucket: s3.IBucket, key: string, scope: Construct, options: WebFunctionCodeBindOptions,
+): void {
+  const result = bucket.addToResourcePolicy(new iam.PolicyStatement({
+    principals: [new iam.ServicePrincipal('lambda.amazonaws.com')],
+    actions: ['s3:GetObject', 's3:GetObjectVersion'],
+    resources: [bucket.arnForObjects(key)],
+    conditions: {
+      StringEquals: {
+        'aws:SourceAccount': cdk.Stack.of(scope).account,
+      },
+      ArnLike: { 'aws:SourceArn': `${options.webFunctionArn}/revision/*` },
+    },
+  }));
+
+  // Make sure the revision is not created before the policy exists,
+  // since the service reads the code object through this policy.
+  if (result.policyDependable) {
+    scope.node.addDependency(result.policyDependable);
+  }
+
+  if (!result.statementAdded) {
+    cdk.Annotations.of(scope).addWarningV2(
+      '@aws-cdk/aws-lambda:webFunctionImportedCodeBucketPolicy',
+      `Cannot inspect or modify the imported bucket '${bucket.node.path}', so none of the ` +
+      'requirements WebFunction places on a code bucket are checked for it. Ensure yourself ' +
+      'that it has versioning enabled, that it is not encrypted with an AWS managed KMS key ' +
+      '(the key policy cannot be changed to let Lambda decrypt), and that it grants ' +
+      'lambda.amazonaws.com s3:GetObject and s3:GetObjectVersion on the code object.',
+    );
+  }
+
+  // For a CMK-encrypted bucket, the Lambda service principal also needs
+  // kms:Decrypt on the bucket's key. The service reads the object every
+  // time a sandbox starts, so this is a permanent dependency, not a
+  // create-time one. `encryptionKey` is undefined for SSE-S3 and SSE-KMS
+  // (aws/s3), so this only runs on CMK buckets.
+  const encryptionKey = bucket.encryptionKey;
+  if (encryptionKey !== undefined) {
+    encryptionKey.grantDecrypt(new iam.ServicePrincipal('lambda.amazonaws.com', {
+      conditions: {
+        StringEquals: {
+          'aws:SourceAccount': cdk.Stack.of(scope).account,
+        },
+        // Scope to WebFunction revisions in this account, matching the S3 code-read grant.
+        // Use the account-wide `web-function/*/revision/*` wildcard rather than this
+        // function's concrete ARN: a per-function condition would add one distinct statement
+        // per function to a shared key's policy (growth toward the size limit), whereas the
+        // wildcard is identical across functions and collapses to a single statement.
+        ArnLike: {
+          'aws:SourceArn': cdk.Stack.of(scope).formatArn({
+            service: 'lambda',
+            resource: 'web-function',
+            resourceName: '*/revision/*',
+            arnFormat: cdk.ArnFormat.SLASH_RESOURCE_NAME,
+          }),
+        },
+      },
+    }));
+    if (!cdk.Resource.isOwnedResource(encryptionKey)) {
+      cdk.Annotations.of(scope).addWarningV2(
+        '@aws-cdk/aws-lambda:webFunctionImportedCodeBucketKmsKey',
+        'Cannot grant kms:Decrypt to lambda.amazonaws.com on the imported KMS key ' +
+        'used by the code bucket. Grant it manually on the key policy.',
+      );
+    }
+  }
+}
+
+/**
+ * How strongly a resource is kept, ordered so that the strongest of several can be taken.
+ */
+enum Retention {
+  DELETE = 0,
+  RETAIN_EXCEPT_ON_CREATE = 1,
+  RETAIN = 2,
+}
+
+function retentionLevel(policy: unknown): Retention {
+  switch (policy) {
+    case cdk.CfnDeletionPolicy.RETAIN: return Retention.RETAIN;
+    case cdk.CfnDeletionPolicy.RETAIN_EXCEPT_ON_CREATE: return Retention.RETAIN_EXCEPT_ON_CREATE;
+    default: return Retention.DELETE;
+  }
+}
+
+function deletionPolicyName(level: Retention): string {
+  return [cdk.CfnDeletionPolicy.DELETE, cdk.CfnDeletionPolicy.RETAIN_EXCEPT_ON_CREATE, cdk.CfnDeletionPolicy.RETAIN][level];
+}
+
+/** `UpdateReplacePolicy` has no `RetainExceptOnCreate`: a replacement is never a first create. */
+function replacePolicyName(level: Retention): string {
+  return level > Retention.DELETE ? cdk.CfnDeletionPolicy.RETAIN : cdk.CfnDeletionPolicy.DELETE;
+}
+
+/**
+ * The revision as it is rendered, escape-hatch overrides included.
+ */
+function renderedRevision(resource: cdk.CfnResource): { properties: any; deletionPolicy?: string; updateReplacePolicy?: string } {
+  const template = cdk.Stack.of(resource).resolve(resource._toCloudFormation());
+  const rendered: any = Object.values(template.Resources)[0];
+  return {
+    properties: rendered.Properties ?? {},
+    deletionPolicy: rendered.DeletionPolicy,
+    updateReplacePolicy: rendered.UpdateReplacePolicy,
+  };
+}
+
+/**
+ * How strongly a revision is retained on replacement, and at all, read from its rendered form
+ * when the template is resolved.
+ *
+ * `any` is what resources the revision depends on take as their `DeletionPolicy`. A revision
+ * retained only on replacement makes that `RetainExceptOnCreate` rather than `Retain`: a
+ * replacement never happens on a first create, so nothing has to survive a failed one.
+ */
+function retentionOf(resource: cdk.CfnResource): { onReplace: Retention; any: Retention } {
+  const { deletionPolicy, updateReplacePolicy } = renderedRevision(resource);
+  const onReplace = retentionLevel(updateReplacePolicy);
+  const forReplace = onReplace > Retention.DELETE ? Retention.RETAIN_EXCEPT_ON_CREATE : Retention.DELETE;
+  return { onReplace, any: Math.max(forReplace, retentionLevel(deletionPolicy)) };
+}
+
+/**
+ * The configuration of a revision that the copy's key is derived from: every rendered property
+ * except the code location, which comes from the copy itself.
+ *
+ * The key only has to depend on the configuration, not carry it, so it is passed as a
+ * fingerprint (see `fingerprint`): the copy's properties, its invocation event and its log
+ * hold no environment values or dynamic references.
+ */
+function revisionConfiguration(resource: cdk.CfnResource): any {
+  if (!CfnWebFunctionRevision.isCfnWebFunctionRevision(resource)) {
+    return undefined;
+  }
+  const properties = { ...renderedRevision(resource).properties };
+  if (properties.BuildConfig) {
+    const { CodeConfig: _code, ...buildConfig } = properties.BuildConfig;
+    properties.BuildConfig = buildConfig;
+  }
+  const references: any[] = [];
+  const result = { Properties: fingerprint(properties, references), References: references };
+  if (JSON.stringify(result).includes('{{resolve:')) {
+    throw new ValidationError(lit`WebFunctionCodeCopyDynamicReference`,
+      'A dynamic reference in the revision\'s configuration would reach the code copy. Please report this as a bug.',
+      resource);
+  }
+  return result;
+}
+
+const REFERENCE_INTRINSICS = ['Ref', 'Fn::GetAtt', 'Fn::ImportValue'];
+
+function intrinsicName(value: any): string | undefined {
+  if (value === null || typeof value !== 'object' || Array.isArray(value)) {
+    return undefined;
+  }
+  const keys = Object.keys(value);
+  return keys.length === 1 && (keys[0] === 'Ref' || keys[0].startsWith('Fn::')) ? keys[0] : undefined;
+}
+
+/**
+ * Replaces every literal string in a resolved template value with its hash.
+ *
+ * CloudFormation rejects secure dynamic references (`{{resolve:secretsmanager:...}}`,
+ * `{{resolve:ssm-secure:...}}`) in a custom resource's properties, and plain values would be
+ * copied into its invocation event. Both are literal strings at synthesis, so hashing them keeps
+ * the key's dependency on them without passing them on.
+ *
+ * Only references are kept: `Ref`, `Fn::GetAtt` and `Fn::ImportValue`, so a value only known at
+ * deployment, such as a replaced role, still changes the key. `Fn::Join`, `Fn::Sub` and `Fn::If`
+ * keep their shape, with their literals hashed (an `Fn::Sub` keeps its `${...}` placeholders,
+ * and an `Fn::If` its condition, so a conditional reference stays conditional). Any other
+ * intrinsic is replaced by the hash of its whole value, and the references inside it are added
+ * to `references`, so they still count without being evaluated in place.
+ */
+function fingerprint(value: any, references: any[]): any {
+  if (typeof value === 'string') {
+    return md5hash(value);
+  }
+  if (Array.isArray(value)) {
+    return value.map((v) => fingerprint(v, references));
+  }
+  if (value === null || typeof value !== 'object') {
+    return value;
+  }
+  const name = intrinsicName(value);
+  if (name === undefined) {
+    return Object.fromEntries(Object.keys(value).map((k) => [k, fingerprint(value[k], references)]));
+  }
+  const args = value[name];
+  if (REFERENCE_INTRINSICS.includes(name)) {
+    return value;
+  }
+  switch (name) {
+    case 'Fn::Join':
+      return { 'Fn::Join': [args[0], fingerprint(args[1], references)] };
+    case 'Fn::Sub':
+      return {
+        'Fn::Sub': Array.isArray(args)
+          ? [fingerprintSubTemplate(args[0], references), fingerprint(args[1], references)]
+          : fingerprintSubTemplate(args, references),
+      };
+    case 'Fn::If': {
+      const whenTrue: any[] = [];
+      const whenFalse: any[] = [];
+      const result = { 'Fn::If': [args[0], fingerprint(args[1], whenTrue), fingerprint(args[2], whenFalse)] };
+      addConditional(references, args[0], whenTrue, whenFalse);
+      return result;
+    }
+    default:
+      collectReferences(value, references);
+      return md5hash(JSON.stringify(value));
+  }
+}
+
+/** Adds the references found inside an intrinsic that is replaced by its hash. */
+function collectReferences(value: any, references: any[]): void {
+  if (Array.isArray(value)) {
+    value.forEach((v) => collectReferences(v, references));
+    return;
+  }
+  if (value === null || typeof value !== 'object') {
+    return;
+  }
+  const name = intrinsicName(value);
+  if (name !== undefined && REFERENCE_INTRINSICS.includes(name)) {
+    references.push(value);
+  } else if (name === 'Fn::Sub') {
+    references.push(fingerprint(value, references));
+  } else if (name === 'Fn::If') {
+    const [condition, a, b] = value[name];
+    const whenTrue: any[] = [];
+    const whenFalse: any[] = [];
+    collectReferences(a, whenTrue);
+    collectReferences(b, whenFalse);
+    addConditional(references, condition, whenTrue, whenFalse);
+  } else {
+    Object.values(value).forEach((v) => collectReferences(v, references));
+  }
+}
+
+function addConditional(references: any[], condition: any, whenTrue: any[], whenFalse: any[]): void {
+  if (whenTrue.length > 0 || whenFalse.length > 0) {
+    references.push({ 'Fn::If': [condition, whenTrue, whenFalse] });
+  }
+}
+
+/**
+ * Replaces the literal segments of an `Fn::Sub` template with their hashes and keeps its
+ * placeholders. `${!Literal}` is an escaped literal, so it is hashed with its segment.
+ */
+function fingerprintSubTemplate(template: any, references: any[]): any {
+  if (typeof template !== 'string') {
+    return fingerprint(template, references);
+  }
+  return template.split(/(\$\{(?!!)[^}]*\})/)
+    .map((segment, i) => (i % 2 === 1 || segment === '' ? segment : md5hash(segment)))
+    .join('');
+}
+
+const MANAGED_BUCKET_REVISIONS = new WeakMap();
+
+/**
+ * The revisions whose code is in the managed bucket. If any of them is retained, so is the
+ * bucket: deleting it, or emptying it, would take their code.
+ */
+function managedBucketRevisions(bucket: s3.IBucket): cdk.CfnResource[] {
+  let revisions = MANAGED_BUCKET_REVISIONS.get(bucket);
+  if (!revisions) {
+    revisions = [];
+    MANAGED_BUCKET_REVISIONS.set(bucket, revisions);
+    // The auto-delete resource is retained with the bucket, so it is never sent the Delete
+    // that would empty it, and so is the bucket policy, which holds the service's read grant.
+    const autoDelete = bucket.node.tryFindChild('AutoDeleteObjectsCustomResource')?.node.defaultChild;
+    for (const resource of [bucket.node.defaultChild, autoDelete]) {
+      if (resource instanceof cdk.CfnResource) {
+        retainWithRevisions(resource, revisions);
+      }
+    }
+    const policy = bucket.policy?.node.defaultChild;
+    if (policy instanceof cdk.CfnResource) {
+      retainWithRevisions(policy, revisions);
+    }
+  }
+  return revisions;
+}
+
+const PROVIDED_POLICY_REVISIONS = new WeakMap();
+
+/**
+ * Makes `resource` retained as strongly as the most strongly retained of `revisions`, and
+ * otherwise leaves its own policy. Resolved at synthesis, so revisions added later and policies
+ * set by aspects are seen.
+ */
+function retainWithRevisions(resource: cdk.CfnResource, revisions: cdk.CfnResource[]): void {
+  const strongest = () => Math.max(Retention.DELETE, ...revisions.map((r) => retentionOf(r).any));
+  const policy = (own: unknown, name: (level: Retention) => string) => {
+    const level = strongest();
+    return level === Retention.DELETE ? own : name(Math.max(level, retentionLevel(own)));
+  };
+  // The resource's own policy is an override already on it, if any, or else its `cfnOptions`.
+  // Overrides are read before this one replaces them; CfnResource exposes no getter for them.
+  const existing = (resource as unknown as { rawOverrides?: Record }).rawOverrides ?? {};
+  for (const [key, name, option] of [
+    ['DeletionPolicy', deletionPolicyName, () => resource.cfnOptions.deletionPolicy],
+    ['UpdateReplacePolicy', replacePolicyName, () => resource.cfnOptions.updateReplacePolicy],
+  ] as const) {
+    const overridden = existing[key];
+    resource.addOverride(key, cdk.Lazy.any({
+      produce: () => policy(overridden !== undefined ? cdk.Stack.of(resource).resolve(overridden) : option(), name),
+    }));
+  }
+}
+
+// Namespaced like other stack-level singletons (`AWSCDKCfnUtilsProvider`) so a customer
+// construct is unlikely to occupy it. The id feeds the bucket's logical ID, so it is permanent.
+const ASSET_BUCKET_ID = 'AWSCDKWebFunctionAssetBucket';
+
+/**
+ * Segment that every code object is written under, whichever bucket it goes to. It gives the
+ * copy function's delete grant something narrower than the whole bucket to attach to, while
+ * still covering every key this module has ever written there — including the one a renamed
+ * construct leaves behind, which the grant must be able to remove.
+ */
+const CODE_KEY_SEGMENT = 'web-function/';
+
+/**
+ * Stamped on buckets created by `getOrCreateAssetBucket`, so adoption can verify identity rather
+ * than type. A customer construct occupying
+ * the reserved id — even an `s3.Bucket` — would skip the configuration (versioning, encryption,
+ * service-principal policy) this module relies on. `Symbol.for` makes the marker shared across
+ * copies of this library in one app, so a second copy recognizes the bucket instead of
+ * reporting a collision.
+ */
+const ASSET_BUCKET_SYMBOL = Symbol.for('@aws-cdk/aws-lambda.WebFunctionAssetBucket');
+
+/**
+ * Get or create the stack's code bucket.
+ *
+ * The bucket is created under the stack, not under whichever WebFunction happened to need it
+ * first. If it hung off a function, its logical ID would depend on declaration order, and
+ * reordering or removing that function would make CloudFormation read the change as "delete
+ * one bucket, create another" - breaking every revision that pins an object version in it.
+ */
+function getOrCreateAssetBucket(scope: Construct): s3.IBucket {
+  const stack = cdk.Stack.of(scope);
+
+  const existing = stack.node.tryFindChild(ASSET_BUCKET_ID);
+  if (existing) {
+    if (!(existing as any)[ASSET_BUCKET_SYMBOL]) {
+      throw new ValidationError(
+        lit`WebFunctionAssetBucketIdCollision`,
+        `The construct id '${ASSET_BUCKET_ID}' at the stack root is reserved for the code bucket ` +
+        'created by WebFunctionCode.fromAssetToManagedBucket(). Rename the conflicting construct, ' +
+        'or use WebFunctionCode.fromAssetToProvidedBucket() to stage code into your own bucket.',
+        scope,
+      );
+    }
+    return existing as s3.Bucket;
+  }
+
+  const bucket = new s3.Bucket(stack, ASSET_BUCKET_ID, {
+    // Each revision pins one object version for its lifetime.
+    versioned: true,
+    // The AWS managed key (aws/s3) is unusable: its key policy cannot be changed to grant the
+    // Lambda service principal, and the service reads the code at runtime.
+    encryption: s3.BucketEncryption.S3_MANAGED,
+    blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL,
+    enforceSSL: true,
+    // Not configurable: the bucket follows the revisions whose code it holds. It is retained,
+    // auto-delete included, when any of them is (see managedBucketRevisions).
+    removalPolicy: cdk.RemovalPolicy.DESTROY,
+    autoDeleteObjects: true,
+  });
+
+  // Granted on the whole code segment rather than per function: a shared bucket would
+  // otherwise accumulate one statement per function and approach the 20 KB bucket policy
+  // limit. The source condition is widened to match, to any WebFunction revision in this
+  // account, so the statement still refuses reads the service performs on behalf of anything
+  // else.
+  //
+  // It does not isolate functions from each other: any revision in the account matches, and
+  // the bucket uses SSE-S3, so there is no key policy behind it. What keeps one function from
+  // using another's code is a check the service makes when a revision is created: it reads the
+  // object with the caller's own credentials (a forward access session) and rejects the request
+  // if the caller cannot, before it checks the service principal's access. A principal can
+  // therefore only create a revision on code it can already read.
+  bucket.addToResourcePolicy(new iam.PolicyStatement({
+    actions: ['s3:GetObject', 's3:GetObjectVersion'],
+    principals: [new iam.ServicePrincipal('lambda.amazonaws.com')],
+    resources: [bucket.arnForObjects(`${CODE_KEY_SEGMENT}*`)],
+    conditions: {
+      StringEquals: {
+        'aws:SourceAccount': cdk.Aws.ACCOUNT_ID,
+      },
+      ArnLike: {
+        'aws:SourceArn': stack.formatArn({
+          service: 'lambda',
+          resource: 'web-function',
+          resourceName: '*/revision/*',
+          arnFormat: cdk.ArnFormat.SLASH_RESOURCE_NAME,
+        }),
+      },
+    },
+  }));
+
+  Object.defineProperty(bucket, ASSET_BUCKET_SYMBOL, { value: true });
+
+  return bucket;
+}
+
+/**
+ * Rejects a `fromBucket()` key that would widen the Lambda service principal's read grant.
+ *
+ * The key goes into the grant's resource ARN, where `*` and `?` are wildcards and `${` starts a
+ * policy variable. A deploy-time key cannot be checked and is passed through.
+ */
+function validateCodeKey(key: string, scope: Construct): void {
+  if (cdk.Token.isUnresolved(key)) {
+    return;
+  }
+  if (key.startsWith('/') || /[*?]|\$\{/.test(key)) {
+    throw new ValidationError(lit`WebFunctionCodeKeyInvalid`,
+      `The code object key '${key}' must not start with '/' or contain '*', '?' or '\${'. It scopes ` +
+      'the Lambda service principal\'s read access to your bucket, where these would widen it.', scope);
+  }
+}
+
+/**
+ * Reject a key prefix that would widen the copy function's grants on the caller's bucket.
+ *
+ * The prefix is used verbatim in the IAM resource ARNs and the `s3:prefix` condition that scope
+ * the copy function's writes, deletes and version listing. There, `*` and `?` are wildcards and
+ * `${` starts a policy variable, so any of them reaches beyond `web-function/`. A leading `/`
+ * gives keys that start with an empty path segment, which is never intended.
+ *
+ * A token is rejected as well. Its value is only known at deployment, when the grants are
+ * already in the template, and nothing at that point can check it: CloudFormation Rules apply
+ * only to parameters and cannot inspect characters, and IAM wildcard escapes need the value at
+ * synthesis.
+ */
+function validateKeyPrefix(keyPrefix: string | undefined, scope: Construct): void {
+  if (keyPrefix === undefined) {
+    return;
+  }
+  if (cdk.Token.isUnresolved(keyPrefix)) {
+    throw new ValidationError(lit`WebFunctionKeyPrefixUnresolved`,
+      'keyPrefix must be a literal string, not a deploy-time value. It scopes the copy function\'s ' +
+      'permissions on your bucket, and a value that cannot be checked at synthesis could widen them.', scope);
+  }
+  if (keyPrefix.startsWith('/') || /[*?]|\$\{/.test(keyPrefix)) {
+    throw new ValidationError(lit`WebFunctionKeyPrefixInvalid`,
+      `keyPrefix '${keyPrefix}' must not start with '/' or contain '*', '?' or '\${'. It scopes the copy ` +
+      'function\'s permissions on your bucket, where these would widen them.', scope);
+  }
+}
+
+/**
+ * Whether a bucket's KMS key id names the AWS-managed `aws/s3` key by its alias, either as
+ * `alias/aws/s3` or as an alias ARN.
+ *
+ * An alias ARN built from the stack's partition, Region or account is a token, as it is for
+ * `kms.Alias.fromAliasName()`. It resolves to an `Fn::Join` whose literal tail still ends with
+ * the alias name, so that tail is checked instead.
+ */
+function namesAwsManagedS3Key(bucket: s3.IBucket, kmsMasterKeyId: string): boolean {
+  const AWS_MANAGED_ALIAS = 'alias/aws/s3';
+  if (!cdk.Token.isUnresolved(kmsMasterKeyId)) {
+    return kmsMasterKeyId.endsWith(AWS_MANAGED_ALIAS);
+  }
+  const resolved = cdk.Stack.of(bucket).resolve(kmsMasterKeyId);
+  const parts = resolved?.['Fn::Join']?.[1];
+  const last = Array.isArray(parts) ? parts[parts.length - 1] : undefined;
+  return typeof last === 'string' && last.endsWith(AWS_MANAGED_ALIAS);
+}
+
+function validateBucketEncryption(bucket: s3.IBucket, factory: string): string[] {
+  const cfnBucket = bucket.node.defaultChild;
+  if (!s3.CfnBucket.isCfnBucket(cfnBucket)) {
+    // Imported bucket (or an exotic construct tree): nothing to inspect.
+    return [];
+  }
+
+  const encryption = cfnBucket.bucketEncryption;
+  if (encryption === undefined || !cdk.Token.isResolved(encryption)) {
+    return [];
+  }
+
+  const rules = encryption.serverSideEncryptionConfiguration;
+  if (rules === undefined || !cdk.Token.isResolved(rules)) {
+    return [];
+  }
+
+  for (const rule of rules) {
+    if (!cdk.Token.isResolved(rule)) {
+      continue;
+    }
+    const applied = rule.serverSideEncryptionByDefault;
+    if (applied === undefined || !cdk.Token.isResolved(applied)) {
+      continue;
+    }
+
+    const { sseAlgorithm, kmsMasterKeyId } = applied;
+    if (!cdk.Token.isResolved(sseAlgorithm)) {
+      continue;
+    }
+
+    // Under a KMS algorithm, no key id means the AWS-managed key, covering both `KMS_MANAGED`
+    // (`aws:kms`) and `DSSE_MANAGED` (`aws:kms:dsse`). The same key can also be named
+    // explicitly through its alias. Any other key id is taken to be a customer managed key,
+    // whose policy can be granted on; the AWS-managed key's own key ARN cannot be recognized.
+    if (sseAlgorithm.startsWith('aws:kms') &&
+      (kmsMasterKeyId === undefined || namesAwsManagedS3Key(bucket, kmsMasterKeyId))) {
+      return [
+        `The bucket '${bucket.node.path}' used with WebFunctionCode.${factory}() is encrypted with an ` +
+        'AWS-managed KMS key, whose key policy cannot be modified to authorize lambda.amazonaws.com to read ' +
+        'the code object. Use `BucketEncryption.S3_MANAGED`, or a customer managed key.',
+      ];
+    }
+  }
+
+  return [];
+}
+
+/**
+ * Validate that a code bucket defined in this app has versioning enabled.
+ *
+ * Versioning is a create-time bucket setting that cannot be changed through
+ * `IBucket`, so it is validated rather than configured. Imported buckets
+ * expose no versioning information and are skipped; for those the requirement
+ * is only enforced at deployment time, where WebFunction rejects a bucket that
+ * reports no object version.
+ *
+ * @param factory the `WebFunctionCode` factory to name in the error message
+ */
+function validateBucketVersioned(bucket: s3.IBucket, factory: string): string[] {
+  const cfnBucket = bucket.node.defaultChild;
+  if (!s3.CfnBucket.isCfnBucket(cfnBucket)) {
+    // Imported bucket (or an exotic construct tree): nothing to inspect.
+    return [];
+  }
+
+  const versioning = cfnBucket.versioningConfiguration;
+  if (cdk.Token.isUnresolved(versioning)) {
+    // Configuration is a token; cannot be inspected at synth time.
+    return [];
+  }
+
+  const status = (versioning as s3.CfnBucket.VersioningConfigurationProperty | undefined)?.status;
+  if (cdk.Token.isUnresolved(status)) {
+    return [];
+  }
+
+  if (status !== 'Enabled') {
+    return [
+      `The bucket '${bucket.node.path}' used with WebFunctionCode.${factory}() must have versioning enabled ` +
+      '(set `versioned: true` on the Bucket).',
+    ];
+  }
+
+  return [];
+}
diff --git a/packages/aws-cdk-lib/aws-lambda/lib/webfunction-endpoint-grants.ts b/packages/aws-cdk-lib/aws-lambda/lib/webfunction-endpoint-grants.ts
new file mode 100644
index 0000000000000..a74577621a308
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/lib/webfunction-endpoint-grants.ts
@@ -0,0 +1,44 @@
+import type { IWebFunctionEndpointRef } from './lambda.generated';
+import * as iam from '../../aws-iam';
+
+/**
+ * Collection of grant methods for a WebFunction endpoint.
+ */
+export class WebFunctionEndpointGrants {
+  /**
+   * Creates grants for a WebFunction endpoint.
+   */
+  public static fromWebFunctionEndpoint(endpoint: IWebFunctionEndpointRef): WebFunctionEndpointGrants {
+    return new WebFunctionEndpointGrants(endpoint);
+  }
+
+  private constructor(private readonly endpoint: IWebFunctionEndpointRef) {}
+
+  /**
+   * Grants permission to invoke the endpoint over HTTP.
+   *
+   * Only meaningful for an endpoint with `WebFunctionAuthType.IAM_AUTH`; requests to it must be
+   * signed by the grantee.
+   *
+   * A role or user in this account gets the permission in its own policy. Any other grantee, such
+   * as a service principal or another account, gets a statement in the resource-based policy of
+   * the WebFunction the endpoint serves, which requires that function to be defined in this app.
+   */
+  public invoke(grantee: iam.IGrantable): iam.Grant {
+    const options = {
+      grantee,
+      actions: ['lambda:InvokeWebFunctionEndpoint'],
+      resourceArns: [this.endpoint.webFunctionEndpointRef.endpointArn],
+    };
+    if (iam.GrantableResources.isResourceWithPolicy(this.endpoint)) {
+      const policyArn = (this.endpoint as { _arnForResourcePolicy?: () => string })._arnForResourcePolicy?.();
+      return iam.Grant.addToPrincipalOrResource({
+        ...options,
+        resource: this.endpoint,
+        // How the function's resource-based policy names the endpoint; see `_arnForResourcePolicy`.
+        resourceSelfArns: policyArn ? [policyArn] : undefined,
+      });
+    }
+    return iam.Grant.addToPrincipal(options);
+  }
+}
diff --git a/packages/aws-cdk-lib/aws-lambda/lib/webfunction-endpoint.ts b/packages/aws-cdk-lib/aws-lambda/lib/webfunction-endpoint.ts
new file mode 100644
index 0000000000000..66d8e15a0eeae
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/lib/webfunction-endpoint.ts
@@ -0,0 +1,619 @@
+import type { Construct } from 'constructs';
+import { CfnWebFunctionEndpoint } from './lambda.generated';
+import type { IWebFunctionEndpointRef, IWebFunctionRef, WebFunctionEndpointReference } from './lambda.generated';
+import { endpointShapeHash, FUNCTIONS_WITH_EGRESS_CONNECTOR, hasTokens, validateResourceName } from './private/webfunction-util';
+import { WebFunctionEndpointGrants } from './webfunction-endpoint-grants';
+import * as iam from '../../aws-iam';
+import type { IResource } from '../../core';
+import { Annotations, Fn, Names, Resource, Stack, Token } from '../../core';
+import { ValidationError } from '../../core/lib/errors';
+import { addConstructMetadata } from '../../core/lib/metadata-resource';
+import { lit } from '../../core/lib/private/literal-string';
+import { propertyInjectable } from '../../core/lib/prop-injectable';
+
+/**
+ * The endpoint type for a WebFunction endpoint.
+ *
+ * Choose it with `WebFunctionEndpointLocation` when defining an endpoint.
+ */
+export enum WebFunctionEndpointType {
+  /**
+   * Single-region endpoint deployed in the stack's region only.
+   * The function is accessible from a URL in this region.
+   */
+  HOME_REGION = 'HomeRegion',
+  /**
+   * Multi-region endpoint with managed latency-based routing.
+   * The function is replicated to the specified replica regions
+   * and users are routed to the nearest region.
+   */
+  MULTI_REGION = 'MultiRegion',
+  /**
+   * Per-region endpoint: a separate regional endpoint is exposed for each
+   * replica region (no managed cross-region routing).
+   */
+  PER_REGION = 'PerRegion',
+}
+/**
+ * Authentication type for WebFunction domain configuration
+ */
+export enum WebFunctionAuthType {
+  /**
+   * Authentication is managed by the application itself.
+   * The Lambda service will not enforce authentication; ensure your handler code validates every request.
+   */
+  APPLICATION_MANAGED = 'ApplicationManaged',
+  /**
+   * Authentication using AWS IAM.
+   *
+   * Requests must be signed with SigV4 and carry the `X-Amz-Content-SHA256` header, also for a
+   * request without a body. A `MULTI_REGION` endpoint is signed with SigV4a, for the Region set `*`.
+   */
+  IAM_AUTH = 'IamAuth',
+}
+
+/**
+ * Where a WebFunction endpoint serves traffic.
+ *
+ * A regional location carries its replica Regions, and a home-Region one has none, so a
+ * combination the service rejects cannot be expressed.
+ */
+export class WebFunctionEndpointLocation {
+  /**
+   * Serve from the stack's Region only, under one regional domain name.
+   */
+  public static homeRegion(): WebFunctionEndpointLocation {
+    return new WebFunctionEndpointLocation(WebFunctionEndpointType.HOME_REGION);
+  }
+
+  /**
+   * Serve from the stack's Region and the replica Regions under one global domain name, with
+   * requests routed to the nearest Region.
+   *
+   * The stack's own Region always serves traffic, so listing it has no effect, and
+   * `replicaRegions` must hold at least one other Region. The list is treated as a set: order
+   * and duplicates do not matter. Adding or removing a Region replaces the endpoint; a
+   * deploy-time list (for example from a `CfnParameter`) cannot feed the default endpoint
+   * name, so changing its value at deployment also needs a new `endpointName`.
+   *
+   * @param replicaRegions the Regions to replicate to, for example `['us-east-1', 'eu-west-1']`
+   */
+  public static multiRegion(replicaRegions: string[]): WebFunctionEndpointLocation {
+    return new WebFunctionEndpointLocation(WebFunctionEndpointType.MULTI_REGION, replicaRegions);
+  }
+
+  /**
+   * Serve from the stack's Region and the replica Regions, with a separate domain name in each
+   * Region and no managed routing between them.
+   *
+   * The same rules for `replicaRegions` apply as for `multiRegion()`.
+   */
+  public static perRegion(replicaRegions: string[]): WebFunctionEndpointLocation {
+    return new WebFunctionEndpointLocation(WebFunctionEndpointType.PER_REGION, replicaRegions);
+  }
+
+  /** The endpoint type this location maps to. */
+  public readonly endpointType: WebFunctionEndpointType;
+
+  /** The replica Regions, for a regional location, as given. */
+  public readonly replicaRegions?: string[];
+
+  private constructor(endpointType: WebFunctionEndpointType, replicaRegions?: string[]) {
+    this.endpointType = endpointType;
+    this.replicaRegions = replicaRegions;
+  }
+
+  /**
+   * The endpoint's `Regions`, as a set: sorted, without duplicates, and without the stack's
+   * Region, which always serves traffic. Normalizing it keeps the default name, and the
+   * create-only property, from changing when the same Regions are listed differently. A list
+   * holding a deploy-time value is used as it is.
+   *
+   * @internal
+   */
+  public _regionList(scope: Construct): string[] | undefined {
+    const regions = this.replicaRegions;
+    if (regions === undefined || hasTokens(regions)) {
+      return regions;
+    }
+    // In an environment-agnostic stack the Region is a token, which matches no listed Region.
+    const home = Stack.of(scope).region;
+    return [...new Set(regions)].filter((r) => r !== home).sort();
+  }
+}
+
+/**
+ * Settings of a WebFunction endpoint other than its auth type.
+ *
+ * Used for the endpoint a WebFunction creates for itself, whose auth type is set by
+ * `WebFunctionProps.defaultEndpointAuth`.
+ */
+export interface WebFunctionDefaultEndpointOptions {
+  /**
+   * The name of the WebFunction endpoint.
+   *
+   * Must be 2 to 64 characters of letters, numbers, hyphens or underscores, starting and
+   * ending with a letter or number.
+   *
+   * Changing this property replaces the endpoint, which yields a new `domainName`.
+   *
+   * `endpointLocation` also replaces the endpoint when it changes, and CloudFormation cannot
+   * replace a resource that keeps its name. Without this property the name is derived from the
+   * location, so that works. With it, change the name together with the location, or the
+   * deployment fails.
+   *
+   * @default - for the endpoint a WebFunction creates, `prod` in the home Region and, for a
+   * regional endpoint, `prod-` followed by a hash of its location; for any other endpoint, a
+   * name derived from its construct path and location
+   */
+  readonly endpointName?: string;
+
+  /**
+   * Where the endpoint serves traffic: the home Region only, or a set of replica Regions.
+   *
+   * Changing it replaces the endpoint, which yields a new `domainName`. If you set
+   * `endpointName`, change it at the same time.
+   *
+   * @default WebFunctionEndpointLocation.homeRegion()
+   */
+  readonly endpointLocation?: WebFunctionEndpointLocation;
+
+  /**
+   * A description of the endpoint.
+   *
+   * Up to 256 characters.
+   *
+   * @default - No description.
+   */
+  readonly endpointDescription?: string;
+
+  /**
+   * The maximum number of concurrent execution environments for the endpoint.
+   *
+   * This is an optional cap on top of your account's vCPU quota, not a reservation:
+   * it further constrains how far the endpoint scales. Must be 2 or greater.
+   *
+   * @default - Scaling is limited only by your account's vCPU quota.
+   */
+  readonly maxEnvironments?: number;
+
+  /**
+   * The maximum request rate per second for the endpoint, up to 10000.
+   *
+   * This is an optional cap on top of your account's rate limit quota. Specify 0 to
+   * reject all new requests.
+   *
+   * The service accepts only certain values: 0, 100 through 1000 in increments of 100,
+   * and 2000 through 10000 in increments of 1000. Which of those are available varies by
+   * Region, and an unsupported value is rejected at deploy time with the values that
+   * Region does accept. Only the lower bound is checked at synth, since the schema
+   * declares nothing more.
+   *
+   * @default - The request rate is limited only by your account's rate limit quota.
+   */
+  readonly rateLimit?: number;
+}
+
+/**
+ * Settings of a WebFunction endpoint.
+ */
+export interface WebFunctionEndpointOptions extends WebFunctionDefaultEndpointOptions {
+  /**
+   * The authentication type for the WebFunction endpoint.
+   *
+   * There is no default: you must choose explicitly so an endpoint is never accidentally public or
+   * accidentally locked down. Specify `WebFunctionAuthType.IAM_AUTH` (Lambda authorizes requests with SigV4/IAM)
+   * or `WebFunctionAuthType.APPLICATION_MANAGED` (the endpoint is public and your function handles authorization).
+   *
+   * With `IAM_AUTH`, requests must be signed with SigV4 and carry the `X-Amz-Content-SHA256`
+   * header, also for a request without a body; without it the endpoint returns 403 even for a
+   * valid signature. A `MULTI_REGION` endpoint is signed with SigV4a, for the Region set `*`.
+   */
+  readonly authType: WebFunctionAuthType;
+}
+
+/**
+ * How a WebFunction endpoint splits its traffic between revisions.
+ */
+export class WebFunctionTraffic {
+  /**
+   * Send all of the endpoint's traffic to one revision.
+   *
+   * @param revisionId the ID of the revision. For a `WebFunction` defined in this app, use its
+   * `revisionId`.
+   */
+  public static single(revisionId: string): WebFunctionTraffic {
+    return new WebFunctionTraffic([{ revisionId, weight: 100 }]);
+  }
+
+  private constructor(private readonly weights: CfnWebFunctionEndpoint.RevisionWeightProperty[]) {}
+
+  /**
+   * The endpoint's `RevisionWeights`.
+   *
+   * @internal
+   */
+  public _toRevisionWeights(): CfnWebFunctionEndpoint.RevisionWeightProperty[] {
+    return this.weights;
+  }
+}
+
+/**
+ * Properties for defining a `WebFunctionEndpoint`.
+ */
+export interface WebFunctionEndpointProps extends WebFunctionEndpointOptions {
+  /**
+   * The WebFunction the endpoint serves.
+   */
+  readonly webFunction: IWebFunctionRef;
+
+  /**
+   * The revisions that receive the endpoint's traffic.
+   *
+   * For a `WebFunction` defined in this app, `WebFunction.addEndpoint()` sets this to the
+   * function's revision.
+   */
+  readonly traffic: WebFunctionTraffic;
+}
+
+/**
+ * Represents a WebFunction endpoint, either created in this stack or imported.
+ */
+export interface IWebFunctionEndpoint extends IResource, IWebFunctionEndpointRef, iam.IResourceWithPolicyV2 {
+  /**
+   * The ARN of the endpoint.
+   *
+   * @attribute
+   */
+  readonly endpointArn: string;
+
+  /**
+   * The domain name of the endpoint: the host clients send requests to.
+   *
+   * @attribute
+   */
+  readonly domainName: string;
+
+  /**
+   * The ARN of the WebFunction the endpoint serves.
+   *
+   * @attribute
+   */
+  readonly webFunctionArn: string;
+
+  /**
+   * The endpoint type.
+   */
+  readonly endpointType: WebFunctionEndpointType;
+
+  /**
+   * Grant methods for the endpoint.
+   */
+  readonly grants: WebFunctionEndpointGrants;
+}
+
+/**
+ * Attributes for importing an existing WebFunction endpoint.
+ */
+export interface WebFunctionEndpointAttributes {
+  /**
+   * The ARN of the endpoint, `arn::lambda:::web-function//endpoint/`.
+   */
+  readonly endpointArn: string;
+
+  /**
+   * The domain name of the endpoint.
+   *
+   * The service assigns it, so it cannot be derived from the ARN.
+   */
+  readonly domainName: string;
+
+  /**
+   * The endpoint type.
+   */
+  readonly endpointType: WebFunctionEndpointType;
+}
+
+/**
+ * Base class for WebFunctionEndpoint, shared between real and imported instances.
+ */
+export abstract class WebFunctionEndpointBase extends Resource implements IWebFunctionEndpoint {
+  public abstract readonly endpointArn: string;
+  public abstract readonly domainName: string;
+  public abstract readonly webFunctionArn: string;
+  public abstract readonly endpointType: WebFunctionEndpointType;
+
+  /** Grant methods for the endpoint. */
+  public readonly grants: WebFunctionEndpointGrants = WebFunctionEndpointGrants.fromWebFunctionEndpoint(this);
+
+  /**
+   * The WebFunction whose resource-based policy holds statements about this endpoint, when it
+   * is defined in this app.
+   *
+   * @internal
+   */
+  protected _resourcePolicyTarget?: iam.IResourceWithPolicyV2;
+
+  /**
+   * Adds a statement to the resource-based policy of the WebFunction the endpoint serves.
+   *
+   * Only an endpoint created for a `WebFunction` defined in this app can do so, since a web
+   * function has a single policy; otherwise this adds a warning and returns
+   * `statementAdded: false`.
+   */
+  public addToResourcePolicy(statement: iam.PolicyStatement): iam.AddToResourcePolicyResult {
+    if (!this._resourcePolicyTarget) {
+      Annotations.of(this).addWarningV2(
+        '@aws-cdk/aws-lambda:webFunctionEndpointResourcePolicyNotModified',
+        'The resource-based policy of the WebFunction this endpoint serves cannot be added to from ' +
+        'here, because the function is not defined in this app. Add this statement where the ' +
+        `function is defined: ${JSON.stringify(statement.toStatementJson())}`,
+      );
+      return { statementAdded: false };
+    }
+    return this._resourcePolicyTarget.addToResourcePolicy(statement);
+  }
+
+  /**
+   * The ARN that names this endpoint in the resource-based policy of its WebFunction.
+   *
+   * @internal
+   */
+  public _arnForResourcePolicy(): string {
+    return this.endpointArn;
+  }
+
+  public get webFunctionEndpointRef(): WebFunctionEndpointReference {
+    return { endpointArn: this.endpointArn };
+  }
+}
+
+/**
+ * The ARN of the function an endpoint ARN belongs to.
+ *
+ * The endpoint ARN is the function ARN followed by `/endpoint/`.
+ */
+function functionArnOfEndpoint(endpointArn: string): string {
+  if (!Token.isUnresolved(endpointArn)) {
+    return endpointArn.split('/endpoint/')[0];
+  }
+  return Fn.select(0, Fn.split('/endpoint/', endpointArn));
+}
+
+const WEB_FUNCTION_ENDPOINT_SYMBOL = Symbol.for('@aws-cdk/aws-lambda.WebFunctionEndpoint');
+
+/**
+ * An endpoint of a Lambda WebFunction: a domain that serves HTTP traffic for one of the
+ * function's revisions.
+ *
+ * A `WebFunction` creates one, `fn.endpoint`. Create more with `fn.addEndpoint()`, for example
+ * to serve the same function with a different auth type or endpoint type.
+ */
+@propertyInjectable
+export class WebFunctionEndpoint extends WebFunctionEndpointBase {
+  /**
+   * Uniquely identifies this class.
+   */
+  public static readonly PROPERTY_INJECTION_ID: string = 'aws-cdk-lib.aws-lambda.WebFunctionEndpoint';
+
+  /**
+   * Return whether the given object is a WebFunctionEndpoint.
+   */
+  public static isWebFunctionEndpoint(x: any): x is WebFunctionEndpoint {
+    return x !== null && typeof x === 'object' && WEB_FUNCTION_ENDPOINT_SYMBOL in x;
+  }
+
+  /**
+   * Import an existing WebFunction endpoint by its attributes.
+   */
+  public static fromWebFunctionEndpointAttributes(
+    scope: Construct,
+    id: string,
+    attrs: WebFunctionEndpointAttributes,
+  ): IWebFunctionEndpoint {
+    class Import extends WebFunctionEndpointBase {
+      public readonly endpointArn = attrs.endpointArn;
+      public readonly domainName = attrs.domainName;
+      public readonly webFunctionArn = functionArnOfEndpoint(attrs.endpointArn);
+      public readonly endpointType = attrs.endpointType;
+    }
+    return new Import(scope, id, { environmentFromArn: attrs.endpointArn });
+  }
+
+  /**
+   * The ARN of the endpoint.
+   *
+   * @attribute
+   */
+  public readonly endpointArn: string;
+
+  /**
+   * The domain name of the endpoint: the host clients send requests to.
+   *
+   * @attribute
+   */
+  public readonly domainName: string;
+
+  /**
+   * The ARN of the WebFunction the endpoint serves.
+   *
+   * @attribute
+   */
+  public readonly webFunctionArn: string;
+
+  /** The endpoint type. */
+  public readonly endpointType: WebFunctionEndpointType;
+
+  /** The underlying L1 CfnWebFunctionEndpoint resource. Use for escape hatches. */
+  public readonly resource: CfnWebFunctionEndpoint;
+
+  /**
+   * Set when the function is in another stack. The policy statement then names the endpoint by
+   * the function's ARN and the endpoint name: the endpoint's own ARN attribute would make the
+   * function's stack depend on this one, which already depends on it.
+   */
+  private readonly crossStackPolicyArn?: { readonly webFunctionArn: string; readonly endpointName: string };
+
+  constructor(scope: Construct, id: string, props: WebFunctionEndpointProps) {
+    super(scope, id);
+    // Enhanced CDK Analytics Telemetry
+    addConstructMetadata(this, props);
+
+    if (props.endpointName !== undefined && !Token.isUnresolved(props.endpointName)) {
+      validateResourceName(props.endpointName, 'Endpoint name', this);
+    }
+
+    if (
+      props.endpointDescription &&
+      !Token.isUnresolved(props.endpointDescription) &&
+      props.endpointDescription.length > 256
+    ) {
+      throw new ValidationError(
+        lit`WebFunctionEndpointDescriptionTooLong`,
+        `Endpoint description cannot be longer than 256 characters. Endpoint description currently has ${props.endpointDescription.length} characters.`,
+        this,
+      );
+    }
+
+    const location = props.endpointLocation ?? WebFunctionEndpointLocation.homeRegion();
+    const endpointType = location.endpointType;
+
+    // The service only accepts a home-Region endpoint for a function with an egress network
+    // connector. An imported function's connector is unknown, so it is not checked.
+    if (FUNCTIONS_WITH_EGRESS_CONNECTOR.has(props.webFunction) && endpointType !== WebFunctionEndpointType.HOME_REGION) {
+      throw new ValidationError(
+        lit`WebFunctionEgressConnectorRequiresHomeRegion`,
+        `egressNetworkConnector is only supported with a ${WebFunctionEndpointType.HOME_REGION} endpoint, got ${endpointType}`,
+        this,
+      );
+    }
+
+    // The schema declares a lower bound for both of these but no upper bound, so only the
+    // lower bound is enforced here. An over-large value is left to the service to reject.
+    const maxEnvironments = props.maxEnvironments;
+    if (
+      maxEnvironments !== undefined &&
+      !Token.isUnresolved(maxEnvironments) &&
+      (maxEnvironments < 2 || !Number.isInteger(maxEnvironments))
+    ) {
+      throw new ValidationError(
+        lit`WebFunctionMaxEnvironmentsOutOfRange`,
+        `maxEnvironments must be an integer of 2 or greater, got ${maxEnvironments}`,
+        this,
+      );
+    }
+
+    const rateLimit = props.rateLimit;
+    if (
+      rateLimit !== undefined &&
+      !Token.isUnresolved(rateLimit) &&
+      (rateLimit < 0 || !Number.isInteger(rateLimit))
+    ) {
+      throw new ValidationError(
+        lit`WebFunctionRateLimitOutOfRange`,
+        `rateLimit must be an integer of 0 or greater, got ${rateLimit}`,
+        this,
+      );
+    }
+
+    const regions = location._regionList(this);
+    if (regions !== undefined && !Token.isUnresolved(regions) && regions.length === 0) {
+      throw new ValidationError(
+        lit`WebFunctionRegionalEndpointEmptyRegions`,
+        `A ${endpointType} endpoint needs at least one replica Region other than the stack's own Region`,
+        this,
+      );
+    }
+
+    if (props.authType === WebFunctionAuthType.APPLICATION_MANAGED) {
+      Annotations.of(this).addWarningV2(
+        '@aws-cdk/aws-lambda:webFunctionPublicEndpoint',
+        'WebFunction endpoint uses APPLICATION_MANAGED auth. The Lambda service will not enforce authentication; ensure your handler code validates every request.',
+      );
+    }
+
+    // Named 'Default' rather than 'Resource': CDK leaves a 'Default' child out of the logical
+    // ID, so the endpoint a WebFunction creates keeps the logical ID it had when the
+    // WebFunction created the L1 directly. A changed logical ID would replace the endpoint and
+    // give it a new domain name.
+    const endpointName = props.endpointName ?? this.defaultEndpointName(endpointType, regions);
+    this.resource = new CfnWebFunctionEndpoint(this, 'Default', {
+      // An ARN is accepted here. Unlike the name, it is a `GetAtt` for a function defined in the
+      // app, so the endpoint depends on the function.
+      functionName: props.webFunction.webFunctionRef.functionArn,
+      endpointName,
+      endpointType,
+      authType: props.authType,
+      revisionWeights: props.traffic._toRevisionWeights(),
+      regions: regions, // note: regional (MULTI_REGION / PER_REGION) property only
+      description: props.endpointDescription,
+      // Only emit the wrapper objects when their single member is set, so that an
+      // unconfigured endpoint keeps the service defaults instead of sending empty structs.
+      scalingConfig: props.maxEnvironments !== undefined
+        ? { maxEnvironments: props.maxEnvironments }
+        : undefined,
+      throttleConfig: props.rateLimit !== undefined
+        ? { rateLimit: props.rateLimit }
+        : undefined,
+    });
+
+    if (iam.GrantableResources.isResourceWithPolicy(props.webFunction)) {
+      this._resourcePolicyTarget = props.webFunction;
+      if (Stack.of(props.webFunction) !== Stack.of(this)) {
+        this.crossStackPolicyArn = { webFunctionArn: props.webFunction.webFunctionRef.functionArn, endpointName };
+      }
+    }
+
+    this.endpointArn = this.resource.attrEndpointArn;
+    this.domainName = this.resource.attrDomainName;
+    this.webFunctionArn = this.resource.attrFunctionArn;
+    this.endpointType = endpointType;
+  }
+
+  /** @internal */
+  public _arnForResourcePolicy(): string {
+    if (!this.crossStackPolicyArn) {
+      return this.endpointArn;
+    }
+    const { webFunctionArn, endpointName } = this.crossStackPolicyArn;
+    return `${webFunctionArn}/endpoint/${endpointName}`;
+  }
+
+  /**
+   * Adds a statement to the resource-based policy of the WebFunction the endpoint serves.
+   *
+   * For an endpoint in another stack than its function, the statement names the endpoint by the
+   * function's ARN and the endpoint name, so the name must be a literal.
+   */
+  public addToResourcePolicy(statement: iam.PolicyStatement): iam.AddToResourcePolicyResult {
+    if (this.crossStackPolicyArn && Token.isUnresolved(this.crossStackPolicyArn.endpointName)) {
+      throw new ValidationError(lit`WebFunctionEndpointCrossStackGrantName`,
+        'Cannot add to the resource-based policy for an endpoint in a different stack from its WebFunction ' +
+        'when the endpoint name is a deploy-time value: the function\'s policy names the endpoint by its ' +
+        'name. Use a literal endpointName, or define the endpoint in the function\'s stack.', this);
+    }
+    return super.addToResourcePolicy(statement);
+  }
+
+  /**
+   * The endpoint name used when none is given.
+   *
+   * The name is create-only, and so are the endpoint type and regions, so changing either of
+   * those replaces the endpoint. CloudFormation cannot replace a resource under the same name,
+   * so the name is derived from them: whatever replaces the endpoint also renames it.
+   *
+   * The endpoint a WebFunction creates for itself is named `prod` in the common case, a
+   * home-Region endpoint. Any other endpoint is named after its construct path, so several
+   * endpoints of one function do not collide.
+   */
+  private defaultEndpointName(endpointType: WebFunctionEndpointType, regions: string[] | undefined): string {
+    return `${Names.uniqueResourceName(this, { maxLength: 55 })}-${endpointShapeHash(this, endpointType, regions)}`;
+  }
+}
+
+Object.defineProperty(WebFunctionEndpoint.prototype, WEB_FUNCTION_ENDPOINT_SYMBOL, {
+  value: true,
+  enumerable: false,
+  writable: false,
+});
+
diff --git a/packages/aws-cdk-lib/aws-lambda/lib/webfunction-runtime.ts b/packages/aws-cdk-lib/aws-lambda/lib/webfunction-runtime.ts
new file mode 100644
index 0000000000000..5e724d937743d
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/lib/webfunction-runtime.ts
@@ -0,0 +1,49 @@
+/**
+ * Runtime environment for WebFunction
+ */
+export class WebFunctionRuntime {
+  /**
+   * Node.js 24.x runtime
+   */
+  public static readonly NODEJS_24_X = new WebFunctionRuntime('nodejs24.x');
+
+  /**
+   * The latest NodeJS version currently available in ALL regions (not necessarily the latest NodeJS version
+   * available in YOUR region).
+   *
+   * This value changes as new Node.js runtimes become available; it currently resolves to
+   * Node.js 24.x. The runtime is part of a revision's build configuration, so when an
+   * upgrade of the CDK library moves this to a newer runtime, the next deployment creates a
+   * new revision on it and shifts the endpoint's traffic there — without any change to your
+   * code. Use a specific version such as `NODEJS_24_X` to control when that happens.
+   */
+  public static readonly NODEJS_LATEST = new WebFunctionRuntime('nodejs24.x');
+
+  /**
+   * Use a custom runtime string not yet supported by the CDK.
+   *
+   * This allows customers to use a newly released runtime without waiting
+   * for a CDK library update.
+   *
+   * @param name The runtime identifier (e.g. 'nodejs26.x')
+   */
+  public static of(name: string): WebFunctionRuntime {
+    return new WebFunctionRuntime(name);
+  }
+
+  /**
+   * The name of this runtime, as expected by the WebFunction resource.
+   */
+  public readonly name: string;
+
+  private constructor(name: string) {
+    this.name = name;
+  }
+
+  /**
+   * Returns the runtime name
+   */
+  public toString(): string {
+    return this.name;
+  }
+}
diff --git a/packages/aws-cdk-lib/aws-lambda/lib/webfunction.ts b/packages/aws-cdk-lib/aws-lambda/lib/webfunction.ts
new file mode 100644
index 0000000000000..f2ea2190af3af
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/lib/webfunction.ts
@@ -0,0 +1,859 @@
+import type { Construct, IConstruct } from 'constructs';
+import type { ApplicationLogLevel, SystemLogLevel } from './function';
+import {
+  CfnNetworkConnector,
+  CfnResourcePolicy,
+  CfnWebFunction,
+  CfnWebFunctionRevision,
+} from './lambda.generated';
+import type { IWebFunctionRef, WebFunctionReference } from './lambda.generated';
+import { NetworkConnectorComputeType } from './network-connector';
+import type { INetworkConnector } from './network-connector';
+import { endpointShapeHash, FUNCTIONS_WITH_EGRESS_CONNECTOR, hasTokens, validateResourceName } from './private/webfunction-util';
+import type { WebFunctionCode } from './webfunction-code';
+import { WebFunctionEndpoint, WebFunctionEndpointLocation, WebFunctionEndpointType, WebFunctionTraffic } from './webfunction-endpoint';
+import type { WebFunctionAuthType, WebFunctionDefaultEndpointOptions, WebFunctionEndpointOptions } from './webfunction-endpoint';
+import type {
+  WebFunctionRuntime,
+} from './webfunction-runtime';
+import * as iam from '../../aws-iam';
+import type * as kms from '../../aws-kms';
+import { KeyGrants } from '../../aws-kms';
+import * as logs from '../../aws-logs';
+import type { Duration, IResource } from '../../core';
+import { Annotations, Arn, ArnFormat, Names, PhysicalName, Reference, Resource, Stack, Token } from '../../core';
+import { ValidationError } from '../../core/lib/errors';
+import { memoizedGetter } from '../../core/lib/helpers-internal';
+import { addConstructMetadata } from '../../core/lib/metadata-resource';
+import { lit } from '../../core/lib/private/literal-string';
+import { findTokens } from '../../core/lib/private/resolve';
+import { propertyInjectable } from '../../core/lib/prop-injectable';
+
+/**
+ * The compute types an owned connector was created for, read from its L1.
+ *
+ * `undefined` when they cannot be known at synthesis: an imported connector, or a
+ * configuration that is (or contains) a token.
+ */
+function connectorComputeTypes(connector: INetworkConnector): string[] | undefined {
+  const cfn = connector.node.defaultChild;
+  if (!CfnNetworkConnector.isCfnNetworkConnector(cfn)) {
+    return undefined;
+  }
+  const config = cfn.configuration;
+  if (!Token.isResolved(config)) {
+    return undefined;
+  }
+  const vpcEgress = config.vpcEgressConfiguration;
+  if (!Token.isResolved(vpcEgress)) {
+    return undefined;
+  }
+  const types = vpcEgress.associatedComputeResourceTypes;
+  return hasTokens(types) ? undefined : types;
+}
+
+/**
+ * The top-level stack a stack is nested in, or the stack itself.
+ *
+ * CDK passes references within one top-level stack through nested-stack parameters and
+ * outputs, and creates an Export only between different top-level stacks.
+ */
+function topLevelStack(stack: Stack): Stack {
+  let current = stack;
+  while (current.nestedStackParent !== undefined) {
+    current = current.nestedStackParent;
+  }
+  return current;
+}
+
+/**
+ * Properties for defining a `WebFunction`.
+ */
+export interface WebFunctionProps {
+  /**
+   * The name of the WebFunction.
+   *
+   * Must be 2 to 64 characters of letters, numbers, hyphens or underscores, starting and
+   * ending with a letter or number.
+   *
+   * @default - A unique name is generated by CDK.
+   */
+  readonly webFunctionName?: string;
+
+  /**
+   * Tags to apply to the WebFunction.
+   *
+   * Only the WebFunction resource carries tags. Its revision and endpoint are not
+   * taggable, so nothing is applied to them.
+   *
+   * @default - No tags.
+   */
+  readonly tags?: { [key: string]: string };
+
+  /**
+   * A description of the WebFunction revision.
+   *
+   * Must be 256 characters or fewer.
+   *
+   * @default - No description.
+   */
+  readonly revisionDescription?: string;
+
+  /**
+   * The deployment package for the WebFunction.
+   */
+  readonly code: WebFunctionCode;
+
+  /**
+   * The runtime environment for the WebFunction.
+   */
+  readonly runtime: WebFunctionRuntime;
+
+  /**
+   * The entry file the runtime executes, relative to the root of the deployment
+   * package.
+   *
+   * Only supported for Node.js runtimes. When set, it is passed to the runtime via the reserved
+   * `AWS_LAMBDA_NODEJS_ENTRYPOINT` environment variable. Do not set that
+   * variable through `environment` as well.
+   *
+   * @default - the runtime's default entry point, `index.js`
+   */
+  readonly entryPoint?: string;
+
+  /**
+   * The IAM execution role for the WebFunction.
+   *
+   * @default - A new role with `AWSLambdaBasicExecutionRole` is created.
+   */
+  readonly role?: iam.IRoleRef & iam.IGrantable;
+
+  /**
+   * The network connector that gives the function egress into a VPC.
+   *
+   * The revision pins to the connector's latest version at the time it is created. For a
+   * connector defined in the same stack, every update to the connector therefore replaces the
+   * revision as part of that deployment, and traffic moves to the new version with it. To hold
+   * the function on a fixed version instead — or to use a connector from another stack, whose
+   * changing version cannot be exported — import the version with
+   * `NetworkConnector.fromNetworkConnectorVersionArn()`.
+   *
+   * The connector must have been created for `NetworkConnectorComputeType.WEB_FUNCTION`, and
+   * the endpoint must be `WebFunctionEndpointType.HOME_REGION`.
+   *
+   * The full `INetworkConnector` is required (rather than a ref) because the revision pins to
+   * `latestVersionArn`, which `INetworkConnectorRef` does not carry.
+   *
+   * [disable-awslint:prefer-ref-interface]
+   *
+   * @default - no VPC egress
+   */
+  readonly egressNetworkConnector?: INetworkConnector;
+
+  /**
+   * Key-value pairs of environment variables to pass to the WebFunction.
+   *
+   * @default - No environment variables.
+   */
+  readonly environment?: Record;
+
+  /**
+   * The KMS key used to encrypt environment variables.
+   *
+   * The Lambda service principal is granted the key usage it needs to encrypt
+   * and decrypt the revision's environment variables.
+   *
+   * @default - AWS managed key.
+   */
+  readonly kmsKey?: kms.IKeyRef;
+
+  /**
+   * The minimum log level for application logs (logs emitted by your code, e.g.
+   * `console.log()`, `console.warn()`). Only logs at this level or above will
+   * be captured in CloudWatch.
+   *
+   * For example, setting this to `INFO` will capture `console.info()` and
+   * `console.warn()` but filter out `console.debug()`.
+   *
+   * @default - No application log level filtering.
+   */
+  readonly applicationLogLevel?: ApplicationLogLevel;
+
+  /**
+   * The minimum log level for system logs (logs emitted by the Lambda runtime,
+   * e.g. start/end/report lines and runtime errors). Only logs at this level
+   * or above will be captured in CloudWatch.
+   *
+   * @default - No system log level filtering.
+   */
+  readonly systemLogLevel?: SystemLogLevel;
+
+  /**
+   * The CloudWatch log group to send logs to.
+   *
+   * @default - A log group is created, named by CloudFormation and retained when the stack is
+   * deleted. Read its name from the `logGroup` attribute.
+   */
+  readonly logGroup?: logs.ILogGroupRef;
+
+  /**
+   * The function execution time (in seconds) after which the WebFunction is terminated.
+   *
+   * Must be an integer between 3 and 900 seconds.
+   *
+   * @default Duration.seconds(30)
+   */
+  readonly timeout?: Duration;
+
+  /**
+   * The maximum number of concurrent requests handled by a single execution environment.
+   *
+   * Must be an integer between 1 and 128. When omitted, nothing is sent and the service
+   * applies its default.
+   *
+   * @default - the service default of 64 is applied
+   */
+  readonly maxConcurrencyPerEnvironment?: number;
+
+  /**
+   * The authentication type of the endpoint the WebFunction creates, `endpoint`.
+   *
+   * There is no default: you must choose explicitly so an endpoint is never accidentally public or
+   * accidentally locked down. Specify `WebFunctionAuthType.IAM_AUTH` (Lambda authorizes requests with SigV4/IAM)
+   * or `WebFunctionAuthType.APPLICATION_MANAGED` (the endpoint is public and your function handles authorization).
+   *
+   * With `IAM_AUTH`, requests must be signed with SigV4 and carry the `X-Amz-Content-SHA256`
+   * header, also for a request without a body; without it the endpoint returns 403 even for a
+   * valid signature. A `MULTI_REGION` endpoint is signed with SigV4a, for the Region set `*`.
+   */
+  readonly defaultEndpointAuth: WebFunctionAuthType;
+
+  /**
+   * The other settings of the endpoint the WebFunction creates, `endpoint`.
+   *
+   * Endpoints added with `addEndpoint()` take their own settings, auth type included.
+   *
+   * @default - a home-Region endpoint named `prod`, with no description and no scaling or rate
+   * limit beyond your account's quotas
+   */
+  readonly defaultEndpoint?: WebFunctionDefaultEndpointOptions;
+}
+
+/**
+ * Represents a WebFunction resource, either created in this stack or imported.
+ */
+export interface IWebFunction extends IResource, IWebFunctionRef, iam.IGrantable, iam.IResourceWithPolicyV2 {
+  /**
+   * The ARN of the WebFunction.
+   *
+   * @attribute
+   */
+  readonly webFunctionArn: string;
+
+  /**
+   * The name of the WebFunction.
+   *
+   * @attribute
+   */
+  readonly webFunctionName: string;
+
+  /**
+   * The execution role of the WebFunction.
+   *
+   * Undefined for an imported WebFunction.
+   */
+  readonly role?: iam.IRoleRef;
+
+  /**
+   * Adds a statement to the WebFunction's execution role.
+   *
+   * For an imported WebFunction the role is unknown, so this adds a warning asking for the
+   * permission to be granted manually instead.
+   */
+  addToRolePolicy(statement: iam.PolicyStatement): void;
+}
+
+/**
+ * Attributes for importing an existing WebFunction.
+ */
+export interface WebFunctionAttributes {
+  /** The ARN of the WebFunction. */
+  readonly webFunctionArn: string;
+}
+
+/**
+ * Base class for WebFunction, shared between real and imported instances.
+ */
+export abstract class WebFunctionBase extends Resource implements IWebFunction {
+  /** The ARN of the WebFunction. */
+  public abstract readonly webFunctionArn: string;
+
+  /** The name of the WebFunction. */
+  public abstract readonly webFunctionName: string;
+
+  /** The execution role of the WebFunction. Undefined for an imported WebFunction. */
+  public abstract readonly role?: iam.IRoleRef;
+
+  /** The principal to grant permissions to. */
+  public abstract readonly grantPrincipal: iam.IPrincipal;
+
+  /**
+   * Whether this construct owns the WebFunction's resource-based policy.
+   *
+   * A web function has one policy, and `AWS::Lambda::ResourcePolicy` replaces all of it, so only
+   * the construct that defines the function can add to it.
+   */
+  protected abstract readonly canCreateResourcePolicy: boolean;
+
+  private resourcePolicy?: CfnResourcePolicy;
+  private resourcePolicyDocument?: iam.PolicyDocument;
+
+  /**
+   * Adds a statement to the WebFunction's execution role.
+   *
+   * For an imported WebFunction the role is unknown, so this adds a warning asking for the
+   * permission to be granted manually instead.
+   */
+  public addToRolePolicy(statement: iam.PolicyStatement): void {
+    this.grantPrincipal.addToPrincipalPolicy(statement);
+  }
+
+  /**
+   * Adds a statement to the WebFunction's resource-based policy.
+   *
+   * A web function has a single resource-based policy, so all statements are rendered into one
+   * `AWS::Lambda::ResourcePolicy`. Use it to allow another account, or a service such as
+   * CloudFront, to invoke the function's endpoints.
+   *
+   * For an imported WebFunction the policy cannot be changed without replacing it, so this adds
+   * a warning instead and returns `statementAdded: false`.
+   */
+  public addToResourcePolicy(statement: iam.PolicyStatement): iam.AddToResourcePolicyResult {
+    if (!this.canCreateResourcePolicy) {
+      Annotations.of(this).addWarningV2(
+        '@aws-cdk/aws-lambda:webFunctionResourcePolicyNotModified',
+        'The resource-based policy of an imported WebFunction cannot be added to: a web function has a ' +
+        'single policy, and defining it here would replace the existing one. Add this statement where ' +
+        `the function is defined: ${JSON.stringify(statement.toStatementJson())}`,
+      );
+      return { statementAdded: false };
+    }
+    if (!this.resourcePolicy) {
+      // Sids are assigned because the service identifies statements by them.
+      this.resourcePolicyDocument = new iam.PolicyDocument({ assignSids: true });
+      const document = this.resourcePolicyDocument;
+      this.resourcePolicy = new CfnResourcePolicy(this, 'ResourcePolicy', {
+        resourceArn: this.webFunctionArn,
+        policyDocument: document,
+      });
+      this.node.addValidation({ validate: () => document.validateForResourcePolicy() });
+    }
+    this.resourcePolicyDocument!.addStatements(statement);
+    return { statementAdded: true, policyDependable: this.resourcePolicy };
+  }
+
+  public get webFunctionRef(): WebFunctionReference {
+    return { functionArn: this.webFunctionArn, functionName: this.webFunctionName };
+  }
+}
+
+const WEB_FUNCTION_SYMBOL = Symbol.for('@aws-cdk/aws-lambda.WebFunction');
+
+/**
+ * A Lambda WebFunction L2 construct.
+ *
+ * Creates a WebFunction with a revision and endpoint for serving HTTP traffic.
+ */
+@propertyInjectable
+export class WebFunction extends WebFunctionBase {
+  /**
+   * Uniquely identifies this class.
+   */
+  public static readonly PROPERTY_INJECTION_ID: string = 'aws-cdk-lib.aws-lambda.WebFunction';
+
+  /**
+   * Return whether the given object is a WebFunction.
+   */
+  public static isWebFunction(x: any): x is WebFunction {
+    return x !== null && typeof x === 'object' && WEB_FUNCTION_SYMBOL in x;
+  }
+
+  /**
+   * Import an existing WebFunction by its ARN.
+   */
+  public static fromWebFunctionArn(scope: Construct, id: string, webFunctionArn: string): IWebFunction {
+    return WebFunction.fromWebFunctionAttributes(scope, id, { webFunctionArn });
+  }
+
+  /**
+   * Import an existing WebFunction by its attributes.
+   */
+  public static fromWebFunctionAttributes(scope: Construct, id: string, attrs: WebFunctionAttributes): IWebFunction {
+    const arn = attrs.webFunctionArn;
+
+    // The ARN is `arn::lambda:::web-function/`.
+    const name = Arn.split(arn, ArnFormat.SLASH_RESOURCE_NAME).resourceName!;
+
+    class Import extends WebFunctionBase {
+      public readonly webFunctionArn = arn;
+      public readonly webFunctionName = name;
+      public readonly role = undefined;
+      public readonly grantPrincipal: iam.IPrincipal = new iam.UnknownPrincipal({ resource: this });
+      protected readonly canCreateResourcePolicy = false;
+    }
+
+    return new Import(scope, id, {
+      environmentFromArn: arn,
+    });
+  }
+
+  /**
+   * The ARN of the WebFunction.
+   *
+   * @attribute
+   */
+  @memoizedGetter
+  public get webFunctionArn(): string {
+    return this.getResourceArnAttribute(this.resource.attrFunctionArn, {
+      service: 'lambda',
+      resource: 'web-function',
+      resourceName: this.physicalName,
+      arnFormat: ArnFormat.SLASH_RESOURCE_NAME,
+    });
+  }
+
+  /**
+   * The name of the WebFunction.
+   *
+   * @attribute
+   */
+  public readonly webFunctionName: string;
+
+  /**
+   * The execution role of the WebFunction: the one passed in `role`, or the one created
+   * for it.
+   */
+  public readonly role?: iam.IRoleRef;
+
+  /** The principal to grant permissions to: the execution role. */
+  public readonly grantPrincipal: iam.IPrincipal;
+
+  /**
+   * The log group the WebFunction sends its logs to: the one passed in `logGroup`, or the one
+   * created for it.
+   */
+  public readonly logGroup: logs.ILogGroupRef;
+
+  /**
+   * The endpoint the WebFunction creates for itself, configured by the endpoint properties in
+   * `WebFunctionProps`.
+   *
+   * Use its `domainName` to send requests, and its `grants` to allow invoking it. Add more
+   * endpoints with `addEndpoint()`.
+   */
+  public readonly endpoint: WebFunctionEndpoint;
+
+  /**
+   * The ARN of the WebFunction revision created by this construct.
+   *
+   * @attribute
+   */
+  public readonly revisionArn: string;
+
+  /**
+   * The ID of the WebFunction revision created by this construct.
+   *
+   * @attribute
+   */
+  public readonly revisionId: string;
+
+  protected readonly canCreateResourcePolicy = true;
+
+  /** The underlying L1 CfnWebFunction resource. Use for escape hatches. */
+  public readonly resource: CfnWebFunction;
+  /** The underlying L1 CfnWebFunctionRevision resource. Use for escape hatches. */
+  public readonly resourceRevision: CfnWebFunctionRevision;
+
+  constructor(scope: Construct, id: string, props: WebFunctionProps) {
+    super(scope, id, {
+      physicalName: props.webFunctionName ?? PhysicalName.GENERATE_IF_NEEDED,
+    });
+    // Enhanced CDK Analytics Telemetry
+    addConstructMetadata(this, props);
+
+    // WebFunction's FunctionName is required in CFN. If the user didn't provide
+    // a name, generate one deterministically using the framework's standard mechanism.
+    const functionName = props.webFunctionName !== undefined
+      ? this.physicalName
+      : this.generatePhysicalName();
+
+    if (props.webFunctionName !== undefined && !Token.isUnresolved(props.webFunctionName)) {
+      validateResourceName(props.webFunctionName, 'Function name', this);
+    }
+
+    if (
+      props.revisionDescription &&
+      !Token.isUnresolved(props.revisionDescription)
+    ) {
+      if (props.revisionDescription.length > 256) {
+        throw new ValidationError(
+          lit`WebFunctionDescriptionTooLong`,
+          `Function description cannot be longer than 256 characters. Function description currently has ${props.revisionDescription.length} characters.`,
+          this,
+        );
+      }
+    }
+
+    if (props.timeout !== undefined) {
+      const timeoutSeconds = props.timeout.toSeconds({ integral: false });
+      if (
+        !Token.isUnresolved(timeoutSeconds) &&
+        (timeoutSeconds < 3 || timeoutSeconds > 900 || !Number.isInteger(timeoutSeconds))
+      ) {
+        throw new ValidationError(
+          lit`WebFunctionTimeoutOutOfRange`,
+          `Timeout must be an integer between 3 and 900 seconds, got ${timeoutSeconds}`,
+          this,
+        );
+      }
+    }
+
+    const maxConcurrency = props.maxConcurrencyPerEnvironment;
+    if (
+      maxConcurrency !== undefined &&
+      !Token.isUnresolved(maxConcurrency) &&
+      (maxConcurrency < 1 || maxConcurrency > 128 || !Number.isInteger(maxConcurrency))
+    ) {
+      throw new ValidationError(
+        lit`WebFunctionMaxConcurrencyPerEnvironmentOutOfRange`,
+        `maxConcurrencyPerEnvironment must be an integer between 1 and 128, got ${maxConcurrency}`,
+        this,
+      );
+    }
+
+    // A connector is only supported with a HOME_REGION endpoint, which WebFunctionEndpoint
+    // checks for every endpoint of the function.
+    if (props.egressNetworkConnector) {
+      FUNCTIONS_WITH_EGRESS_CONNECTOR.add(this);
+    }
+
+    // Set up the execution role
+    const role = props.role ?? this.createDefaultRole();
+    this.role = role;
+    this.grantPrincipal = role.grantPrincipal;
+
+    // Bind the code to get S3 location. The ARN is built from the name because
+    // the L1 does not exist yet; it lets the code scope its read policy to this function.
+    const codeConfig = props.code.bind(this, {
+      webFunctionArn: Stack.of(this).formatArn({
+        service: 'lambda',
+        resource: 'web-function',
+        resourceName: functionName,
+        arnFormat: ArnFormat.SLASH_RESOURCE_NAME,
+      }),
+    });
+
+    // Prepare environment variables
+    const environment = { ...props.environment };
+
+    // `entryPoint` is surfaced to the runtime through the reserved
+    // AWS_LAMBDA_NODEJS_ENTRYPOINT env var. Reject setting it both ways.
+    if (props.entryPoint !== undefined) {
+      const runtimeName = props.runtime.name;
+      if (!Token.isUnresolved(runtimeName) && !runtimeName.startsWith('nodejs')) {
+        throw new ValidationError(
+          lit`WebFunctionEntryPointRequiresNode`,
+          `entryPoint is only supported for Node.js runtimes, got '${runtimeName}'`,
+          this,
+        );
+      }
+      if (environment.AWS_LAMBDA_NODEJS_ENTRYPOINT !== undefined) {
+        throw new ValidationError(
+          lit`WebFunctionEntryPointConflict`,
+          'entryPoint cannot be used together with an AWS_LAMBDA_NODEJS_ENTRYPOINT environment variable; set only one',
+          this,
+        );
+      }
+      environment.AWS_LAMBDA_NODEJS_ENTRYPOINT = props.entryPoint;
+    }
+
+    const logGroup = props.logGroup ?? new logs.LogGroup(this, 'LogGroup');
+    this.logGroup = logGroup;
+
+    // Create the CloudFormation resource
+    this.resource = new CfnWebFunction(this, 'Function', {
+      functionName: functionName,
+      tags: props.tags
+        ? Object.entries(props.tags).map(([key, value]) => ({ key, value }))
+        : undefined,
+    });
+    // The id is 'Function' rather than 'Resource', so the default child is not found by
+    // convention. Set it explicitly for escape hatches, Aspects and applyRemovalPolicy(). The
+    // id is kept because renaming it would change the resource's logical ID.
+    this.node.defaultChild = this.resource;
+
+    this.resourceRevision = new CfnWebFunctionRevision(this, 'Revision', {
+      functionName: this.resource.ref,
+      description: props.revisionDescription,
+      buildConfig: {
+        codeConfig: {
+          s3Object: {
+            bucket: codeConfig.s3Location.bucketName,
+            key: codeConfig.s3Location.objectKey,
+            versionId: codeConfig.s3Location.objectVersion,
+          },
+        },
+        runtimeConfig: {
+          runtime: props.runtime.name,
+        },
+      },
+      serviceConfig: {
+        executionRoleArn: role.roleRef.roleArn,
+        environmentVariables:
+          Object.keys(environment).length > 0 ? environment : undefined,
+        telemetryConfig: this.createTelemetryConfig(props, logGroup),
+        timeoutSeconds: props.timeout?.toSeconds() ?? 30,
+        maxConcurrencyPerEnvironment: props.maxConcurrencyPerEnvironment,
+        egressNetworkConnectorArn: this.resolveEgressNetworkConnectorArn(props.egressNetworkConnector),
+      },
+      kmsKeyArn: props.kmsKey !== undefined ? this.resolveKmsKeyArn(props.kmsKey) : undefined,
+    });
+
+    if (props.kmsKey !== undefined) {
+      this.grantServiceKeyUsage(props.kmsKey);
+    }
+
+    this.resourceRevision.addResourceDependency(this.resource);
+
+    this.webFunctionName = functionName;
+    this.revisionArn = this.resourceRevision.attrRevisionArn;
+    this.revisionId = this.resourceRevision.attrRevisionId;
+
+    // The default endpoint's name is resolved here and passed explicitly, so it does not depend
+    // on anything a property injector could drop from the endpoint's props.
+    this.endpoint = this.createEndpoint('Endpoint', {
+      ...props.defaultEndpoint,
+      authType: props.defaultEndpointAuth,
+      endpointName: props.defaultEndpoint?.endpointName ?? this.defaultEndpointName(props.defaultEndpoint?.endpointLocation),
+    });
+
+    // Bind the code to the resource
+    props.code.bindToResource(this.resourceRevision);
+  }
+
+  /**
+   * The function's reference.
+   *
+   * `Ref` on `AWS::Lambda::WebFunction` returns the ARN, so the name is `webFunctionName` rather
+   * than the L1's `ref`. Resources that should depend on the function take `functionArn`, a
+   * `GetAtt` on it.
+   */
+  public override get webFunctionRef(): WebFunctionReference {
+    return { functionArn: this.webFunctionArn, functionName: this.webFunctionName };
+  }
+
+  /**
+   * Adds an endpoint that serves this function's revision.
+   *
+   * Use it to serve the function under a different auth type or endpoint type than `endpoint`,
+   * for example a second, `IAM_AUTH` endpoint for a CloudFront origin.
+   */
+  public addEndpoint(id: string, options: WebFunctionEndpointOptions): WebFunctionEndpoint {
+    return this.createEndpoint(id, options);
+  }
+
+  private createEndpoint(id: string, options: WebFunctionEndpointOptions): WebFunctionEndpoint {
+    const endpoint = new WebFunctionEndpoint(this, id, {
+      ...options,
+      webFunction: this,
+      traffic: WebFunctionTraffic.single(this.revisionId),
+    });
+    endpoint.resource.addResourceDependency(this.resource);
+    endpoint.resource.addResourceDependency(this.resourceRevision);
+    return endpoint;
+  }
+
+  /**
+   * The name of the endpoint the WebFunction creates, when none is given: `prod` in the home
+   * Region, and for a regional endpoint `prod-` followed by a hash of its location, so that
+   * whatever replaces the endpoint also renames it.
+   */
+  private defaultEndpointName(location: WebFunctionEndpointLocation | undefined): string {
+    const resolved = location ?? WebFunctionEndpointLocation.homeRegion();
+    const endpointType = resolved.endpointType;
+    const regions = resolved._regionList(this);
+    if (endpointType === WebFunctionEndpointType.HOME_REGION && regions === undefined) {
+      return 'prod';
+    }
+    return `prod-${endpointShapeHash(this, endpointType, regions)}`;
+  }
+
+  /**
+   * Override to use Names.uniqueResourceName which doesn't require resolved
+   * region/account — necessary because FunctionName is CFN-required and must
+   * be generated even for env-agnostic stacks.
+   */
+  protected generatePhysicalName(): string {
+    return Names.uniqueResourceName(this, { maxLength: 40 });
+  }
+
+  /**
+   * Create a default execution role for the WebFunction
+   */
+  private createDefaultRole(): iam.IRole {
+    return new iam.Role(this, 'ServiceRole', {
+      assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'),
+      managedPolicies: [
+        iam.ManagedPolicy.fromAwsManagedPolicyName(
+          'service-role/AWSLambdaBasicExecutionRole',
+        ),
+      ],
+    });
+  }
+
+  /**
+   * Create telemetry configuration from props
+   */
+  private createTelemetryConfig(
+    props: WebFunctionProps,
+    logGroup: logs.ILogGroupRef,
+  ): CfnWebFunctionRevision.TelemetryConfigProperty {
+    return {
+      loggingConfig: {
+        applicationLogLevel: props.applicationLogLevel,
+        systemLogLevel: props.systemLogLevel,
+        logGroup: logGroup.logGroupRef.logGroupName,
+      },
+    };
+  }
+
+  /**
+   * The version ARN the revision pins to, or undefined without a connector.
+   *
+   * A connector defined in another stack is refused. Its latest version ARN would cross the
+   * stack boundary as an Export, and CloudFormation does not let an Export change value while
+   * another stack imports it — so the first update to the connector would fail to deploy. A
+   * nested stack and its parents pass values through parameters and outputs rather than
+   * Exports, so connectors within one top-level stack are fine. A connector imported by
+   * version ARN carries no Export and is fine from anywhere.
+   */
+  /**
+   * The first construct in another top-level stack that `value` references, if any.
+   *
+   * Such a reference makes CDK export the value from that stack. A nested stack in the same
+   * top-level stack is passed values as parameters instead, so it is not counted.
+   */
+  private referenceToOtherStack(value: string): IConstruct | undefined {
+    const ownStack = topLevelStack(Stack.of(this));
+    const reference = findTokens(this, () => value).find((token): token is Reference =>
+      token instanceof Reference && topLevelStack(Stack.of(token.target)) !== ownStack);
+    return reference?.target;
+  }
+
+  private resolveEgressNetworkConnectorArn(connector?: INetworkConnector): string | undefined {
+    if (connector === undefined) {
+      return undefined;
+    }
+    if (Resource.isOwnedResource(connector) && topLevelStack(Stack.of(connector)) !== topLevelStack(Stack.of(this))) {
+      throw new ValidationError(lit`WebFunctionNetworkConnectorInOtherStack`,
+        `The network connector '${connector.node.path}' is defined in stack '${Stack.of(connector).node.path}', ` +
+        `but this WebFunction is in '${Stack.of(this).node.path}'. Its latest version ARN changes on every update ` +
+        'and cannot be exported across stacks. Define the connector in this stack, or import a fixed version ' +
+        'from a literal ARN string with NetworkConnector.fromNetworkConnectorVersionArn().', this);
+    }
+    // An import is not owned, but the ARN it was given can still reference a connector in another
+    // stack, typically that connector's `latestVersionArn`. That creates the same Export, which
+    // CloudFormation will not let change on the next update to the connector.
+    const referenced = this.referenceToOtherStack(connector.latestVersionArn);
+    if (referenced !== undefined) {
+      throw new ValidationError(lit`WebFunctionNetworkConnectorVersionArnFromOtherStack`,
+        `The network connector '${connector.node.path}' was imported from a value that references ` +
+        `'${referenced.node.path}' in stack '${Stack.of(referenced).node.path}', but this WebFunction is in ` +
+        `'${Stack.of(this).node.path}'. A connector's version ARN changes on every update and cannot be ` +
+        'exported across stacks. Import the version from a literal ARN string instead.', this);
+    }
+    // A connector serves one compute type. For one defined in this app the type is in its L1,
+    // so a mismatch fails here instead of at deployment; an import carries no configuration
+    // and is left to the service.
+    const computeTypes = connectorComputeTypes(connector);
+    if (computeTypes !== undefined && !computeTypes.includes(NetworkConnectorComputeType.WEB_FUNCTION)) {
+      throw new ValidationError(lit`WebFunctionNetworkConnectorComputeType`,
+        `The network connector '${connector.node.path}' was created for ${computeTypes.join(', ')}, but a ` +
+        'WebFunction needs one created for NetworkConnectorComputeType.WEB_FUNCTION.', this);
+    }
+    return connector.latestVersionArn;
+  }
+
+  /**
+   * The ARN of the key passed as `kmsKey`.
+   *
+   * A KMS alias also implements `IKeyRef`, but its `keyRef.keyArn` is the alias ARN, which
+   * `KmsKeyArn` does not accept. It is refused rather than resolved to its target key: an
+   * imported alias has no known target, and the revision pins one key while an alias can be
+   * repointed.
+   */
+  private resolveKmsKeyArn(key: kms.IKeyRef): string {
+    if ('aliasName' in key) {
+      throw new ValidationError(lit`WebFunctionKmsKeyIsAlias`,
+        `kmsKey must be a KMS key, not an alias ('${key.node.path}'). Pass the key itself.`, this);
+    }
+    const keyArn = key.keyRef.keyArn;
+    if (!Token.isUnresolved(keyArn) && !keyArn.includes(':key/')) {
+      throw new ValidationError(lit`WebFunctionKmsKeyArnInvalid`,
+        `kmsKey must be a KMS key ARN containing ':key/', got '${keyArn}'.`, this);
+    }
+    return keyArn;
+  }
+
+  /**
+   * Let the Lambda service use the customer-managed key for this revision's
+   * environment variables. These are the only KMS operations the service
+   * performs on the key when creating a revision.
+   *
+   * Scoped with `aws:SourceAccount` so another account cannot induce the service to use
+   * this key on its behalf, and with `aws:SourceArn` so the service may only use it on
+   * behalf of a WebFunction revision — not any other Lambda-service action in the account.
+   * The ARN is an account-wide wildcard over every WebFunction's revisions rather than this
+   * function's concrete ARN on purpose: a concrete per-function condition would make every
+   * function's statement distinct, so a key shared by many functions would accumulate one
+   * statement each and grow the key policy toward its size limit. The wildcard keeps the
+   * condition identical across functions, so the grants still collapse to a single statement.
+   */
+  private grantServiceKeyUsage(key: kms.IKeyRef): void {
+    KeyGrants.fromKey(key).actions(
+      new iam.ServicePrincipal('lambda.amazonaws.com', {
+        conditions: {
+          StringEquals: {
+            'aws:SourceAccount': Stack.of(this).account,
+          },
+          ArnLike: {
+            'aws:SourceArn': Stack.of(this).formatArn({
+              service: 'lambda',
+              resource: 'web-function',
+              resourceName: '*/revision/*',
+              arnFormat: ArnFormat.SLASH_RESOURCE_NAME,
+            }),
+          },
+        },
+      }),
+      'kms:Decrypt',
+      'kms:GenerateDataKey',
+      'kms:DescribeKey',
+    );
+
+    if (!Resource.isOwnedResource(key)) {
+      Annotations.of(this).addWarningV2(
+        '@aws-cdk/aws-lambda:webFunctionImportedEnvVarKmsKey',
+        'Cannot grant the Lambda service principal usage of the imported KMS key passed as `kmsKey`. ' +
+        'Grant lambda.amazonaws.com kms:Decrypt, kms:GenerateDataKey and kms:DescribeKey ' +
+        'on the key policy manually.',
+      );
+    }
+  }
+}
+
+Object.defineProperty(WebFunction.prototype, WEB_FUNCTION_SYMBOL, {
+  value: true,
+  enumerable: false,
+  writable: false,
+});
diff --git a/packages/aws-cdk-lib/aws-lambda/test/network-connector.test.ts b/packages/aws-cdk-lib/aws-lambda/test/network-connector.test.ts
new file mode 100644
index 0000000000000..8c26bc89b273d
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/test/network-connector.test.ts
@@ -0,0 +1,386 @@
+import { Annotations, Match, Template } from '../../assertions';
+import * as ec2 from '../../aws-ec2';
+import * as iam from '../../aws-iam';
+import { App, CfnOutput, CfnParameter, Stack } from '../../core';
+import { CfnNetworkConnector } from '../lib/lambda.generated';
+import {
+  NetworkConnector,
+  NetworkConnectorComputeType,
+  NetworkConnectorConfiguration,
+  NetworkConnectorProtocol,
+} from '../lib/network-connector';
+
+const CONNECTOR_ARN = 'arn:aws:lambda:us-west-2:123456789012:network-connector:nc-0123abcd';
+const VERSION_ARN = `${CONNECTOR_ARN}:3`;
+
+describe('NetworkConnector', () => {
+  let stack: Stack;
+  let vpc: ec2.Vpc;
+  let securityGroup: ec2.SecurityGroup;
+
+  beforeEach(() => {
+    stack = new Stack(new App(), 'Stack', { env: { account: '123456789012', region: 'us-west-2' } });
+    vpc = new ec2.Vpc(stack, 'Vpc', { maxAzs: 2, natGateways: 0 });
+    securityGroup = new ec2.SecurityGroup(stack, 'Sg', { vpc });
+  });
+
+  function vpcEgress(overrides: Partial[0]> = {}) {
+    return NetworkConnectorConfiguration.vpcEgress({
+      computeType: NetworkConnectorComputeType.WEB_FUNCTION,
+      vpc,
+      vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_ISOLATED },
+      securityGroups: [securityGroup],
+      ...overrides,
+    });
+  }
+
+  test('isNetworkConnector recognizes a NetworkConnector only', () => {
+    const connector = new NetworkConnector(stack, 'Connector', { configuration: vpcEgress() });
+    const imported = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Imported', VERSION_ARN);
+
+    expect(NetworkConnector.isNetworkConnector(connector)).toBe(true);
+    expect(NetworkConnector.isNetworkConnector(imported)).toBe(false);
+    expect(NetworkConnector.isNetworkConnector(vpc)).toBe(false);
+    expect(NetworkConnector.isNetworkConnector(null)).toBe(false);
+  });
+
+  test('exposes its L1 resource for escape hatches', () => {
+    const connector = new NetworkConnector(stack, 'Connector', { configuration: vpcEgress() });
+
+    expect(CfnNetworkConnector.isCfnNetworkConnector(connector.resource)).toBe(true);
+    expect(connector.resource).toBe(connector.node.defaultChild);
+
+    connector.resource.addPropertyOverride('Name', 'overridden');
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::NetworkConnector', { Name: 'overridden' });
+  });
+
+  describe('template', () => {
+    test('renders the VPC egress configuration with the compute type', () => {
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+      });
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::NetworkConnector', {
+        Configuration: {
+          VpcEgressConfiguration: {
+            AssociatedComputeResourceTypes: ['WebFunction'],
+            NetworkProtocol: 'IPv4',
+            SecurityGroupIds: [{ 'Fn::GetAtt': [Match.stringLikeRegexp('^Sg'), 'GroupId'] }],
+            SubnetIds: [
+              { Ref: Match.stringLikeRegexp('^VpcIsolatedSubnet1') },
+              { Ref: Match.stringLikeRegexp('^VpcIsolatedSubnet2') },
+            ],
+          },
+        },
+      });
+    });
+
+    test('defaults the network protocol to IPv4', () => {
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+      });
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::NetworkConnector', {
+        Configuration: {
+          VpcEgressConfiguration: Match.objectLike({ NetworkProtocol: 'IPv4' }),
+        },
+      });
+    });
+
+    test('selects subnets through the VPC', () => {
+      // Two public and two isolated subnets exist; only the isolated ones are selected.
+      const vpcWithPublic = new ec2.Vpc(stack, 'Vpc2', {
+        maxAzs: 2,
+        natGateways: 0,
+        subnetConfiguration: [
+          { name: 'public', subnetType: ec2.SubnetType.PUBLIC },
+          { name: 'isolated', subnetType: ec2.SubnetType.PRIVATE_ISOLATED },
+        ],
+      });
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress({ vpc: vpcWithPublic, vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_ISOLATED } }),
+      });
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::NetworkConnector', {
+        Configuration: {
+          VpcEgressConfiguration: Match.objectLike({
+            SubnetIds: [
+              { Ref: Match.stringLikeRegexp('^Vpc2isolatedSubnet1') },
+              { Ref: Match.stringLikeRegexp('^Vpc2isolatedSubnet2') },
+            ],
+          }),
+        },
+      });
+    });
+
+    test('omits Name unless one is given', () => {
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+      });
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::NetworkConnector', {
+        Name: Match.absent(),
+      });
+    });
+
+    test('passes networkConnectorName through as Name', () => {
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress({
+          computeType: NetworkConnectorComputeType.MICRO_VM,
+          networkProtocol: NetworkConnectorProtocol.DUAL_STACK,
+        }),
+        networkConnectorName: 'prod-egress',
+      });
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::NetworkConnector', {
+        Name: 'prod-egress',
+        Configuration: {
+          VpcEgressConfiguration: Match.objectLike({
+            AssociatedComputeResourceTypes: ['MicroVm'],
+            NetworkProtocol: 'DualStack',
+          }),
+        },
+      });
+    });
+
+    test('accepts a security group reference that is not an L2', () => {
+      const cfnGroup = new ec2.CfnSecurityGroup(stack, 'CfnSg', {
+        groupDescription: 'reference only',
+        vpcId: vpc.vpcId,
+      });
+
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress({ securityGroups: [cfnGroup] }),
+      });
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::NetworkConnector', {
+        Configuration: {
+          VpcEgressConfiguration: Match.objectLike({
+            SecurityGroupIds: [{ Ref: stack.getLogicalId(cfnGroup) }],
+          }),
+        },
+      });
+    });
+
+    test('the tags prop tags the connector', () => {
+      new NetworkConnector(stack, 'Connector', { configuration: vpcEgress(), tags: { env: 'prod' } });
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::NetworkConnector', {
+        Tags: [{ Key: 'env', Value: 'prod' }],
+      });
+    });
+  });
+
+  describe('operator role', () => {
+    test('creates one with the operator managed policy by default', () => {
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+      });
+
+      const template = Template.fromStack(stack);
+      template.hasResourceProperties('AWS::IAM::Role', {
+        AssumeRolePolicyDocument: {
+          Statement: [{
+            Action: 'sts:AssumeRole',
+            Effect: 'Allow',
+            Principal: { Service: 'lambda.amazonaws.com' },
+          }],
+        },
+        ManagedPolicyArns: [{
+          'Fn::Join': ['', ['arn:', { Ref: 'AWS::Partition' }, ':iam::aws:policy/AWSLambdaNetworkConnectorOperatorPolicy']],
+        }],
+      });
+      template.hasResourceProperties('AWS::Lambda::NetworkConnector', {
+        OperatorRole: { 'Fn::GetAtt': [Match.stringLikeRegexp('^ConnectorOperatorRole'), 'Arn'] },
+      });
+    });
+
+    test('uses the given role and creates none', () => {
+      const role = new iam.Role(stack, 'CustomRole', { assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com') });
+      const connector = new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+        operatorRole: role,
+      });
+
+      const template = Template.fromStack(stack);
+      template.resourceCountIs('AWS::IAM::Role', 1);
+      template.hasResourceProperties('AWS::Lambda::NetworkConnector', {
+        OperatorRole: { 'Fn::GetAtt': [Match.stringLikeRegexp('^CustomRole'), 'Arn'] },
+      });
+      expect(connector.operatorRole).toBe(role);
+    });
+
+    test('attaches the operator managed policy to a given role defined in the app', () => {
+      const role = new iam.Role(stack, 'CustomRole', { assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com') });
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+        operatorRole: role,
+      });
+
+      Template.fromStack(stack).hasResourceProperties('AWS::IAM::Role', {
+        ManagedPolicyArns: [{
+          'Fn::Join': ['', ['arn:', { Ref: 'AWS::Partition' }, ':iam::aws:policy/AWSLambdaNetworkConnectorOperatorPolicy']],
+        }],
+      });
+      Annotations.fromStack(stack).hasNoWarning('*', Match.stringLikeRegexp('networkConnectorOperatorRoleNotModified'));
+      Annotations.fromStack(stack).hasWarning('*',
+        Match.stringLikeRegexp('was attached to the operator role .*use a role dedicated to this connector'));
+    });
+
+    test('does not warn about a shared role for the role it creates', () => {
+      new NetworkConnector(stack, 'Connector', { configuration: vpcEgress() });
+
+      Annotations.fromStack(stack).hasNoWarning('*', Match.stringLikeRegexp('was attached to the operator role'));
+    });
+
+    test('warns instead of modifying an imported role', () => {
+      const role = iam.Role.fromRoleArn(stack, 'ImportedRole', 'arn:aws:iam::123456789012:role/operator');
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+        operatorRole: role,
+      });
+
+      const annotations = Annotations.fromStack(stack);
+      annotations.hasWarning('/Stack/Connector', Match.stringLikeRegexp(
+        "operator role 'arn:aws:iam::123456789012:role/operator' \\(Stack/ImportedRole\\) cannot be modified.*AWSLambdaNetworkConnectorOperatorPolicy"));
+      // The IAM module's own, less specific warning is not triggered.
+      annotations.hasNoWarning('*', Match.stringLikeRegexp('IRoleCantBeUsedWithIManagedPolicy'));
+      Template.fromStack(stack).resourceCountIs('AWS::IAM::Policy', 0);
+    });
+
+    test('names a role defined in the app by path only, since its ARN is a token', () => {
+      // A LazyRole has no default child until instantiated, so it takes the warning path.
+      const role = new iam.LazyRole(stack, 'LazyRole', { assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com') });
+      new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+        operatorRole: role,
+      });
+
+      Annotations.fromStack(stack).hasWarning('/Stack/Connector', Match.stringLikeRegexp(
+        "operator role 'Stack/LazyRole' cannot be modified"));
+    });
+  });
+
+  describe('attributes', () => {
+    test('exposes both ARNs as attributes of the L1', () => {
+      const connector = new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+      });
+
+      expect(stack.resolve(connector.networkConnectorArn)).toEqual({ 'Fn::GetAtt': [expect.stringMatching(/^Connector/), 'Arn'] });
+      expect(stack.resolve(connector.latestVersionArn)).toEqual({ 'Fn::GetAtt': [expect.stringMatching(/^Connector/), 'LatestVersionArn'] });
+    });
+
+    test('networkConnectorRef carries the unqualified ARN', () => {
+      const connector = new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+      });
+
+      expect(stack.resolve(connector.networkConnectorRef.networkConnectorArn))
+        .toEqual(stack.resolve(connector.networkConnectorArn));
+    });
+
+    test('does not derive the ARN from the name in another account', () => {
+      // The ARN carries a service-assigned id, so a name-based ARN would point at nothing.
+      const connector = new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress(),
+        networkConnectorName: 'prod-egress',
+      });
+      const other = new Stack(stack.node.root as App, 'Other', { env: { account: '111111111111', region: 'us-west-2' } });
+      new CfnOutput(other, 'Arn', { value: connector.networkConnectorArn });
+
+      const output = JSON.stringify(Template.fromStack(other).findOutputs('Arn'));
+      expect(output).not.toContain('network-connector:prod-egress');
+      expect(output).toContain('Fn::GetStackOutput');
+    });
+  });
+
+  describe('import', () => {
+    test('fromNetworkConnectorVersionArn provides both ARNs', () => {
+      const imported = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Imported', VERSION_ARN);
+
+      expect(imported.latestVersionArn).toEqual(VERSION_ARN);
+      expect(stack.resolve(imported.networkConnectorArn)).toEqual(CONNECTOR_ARN);
+      expect(imported.networkConnectorRef.networkConnectorArn).toEqual(imported.networkConnectorArn);
+    });
+
+    test('fromNetworkConnectorVersionArn rejects an ARN without a version', () => {
+      expect(() => NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Imported', CONNECTOR_ARN))
+        .toThrow(/Expected a qualified network connector ARN ending in ':'/);
+    });
+
+    test('fromNetworkConnectorVersionArn accepts a deploy-time value and drops its version segment', () => {
+      // A token cannot be inspected at synth; the unqualified ARN is rebuilt from the segments
+      // before the version, which Arn.split selects for a token.
+      const versionArn = new CfnParameter(stack, 'VersionArn').valueAsString;
+      const imported = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Imported', versionArn);
+
+      expect(stack.resolve(imported.latestVersionArn)).toEqual({ Ref: 'VersionArn' });
+      const unqualified = JSON.stringify(stack.resolve(imported.networkConnectorArn));
+      expect(unqualified).toContain('"Fn::Select":[6,');
+      expect(unqualified).not.toContain('"Fn::Select":[7,');
+    });
+
+    test('fromNetworkConnectorArn provides the unqualified ARN and refuses the version ARN', () => {
+      const imported = NetworkConnector.fromNetworkConnectorArn(stack, 'Imported', CONNECTOR_ARN);
+
+      expect(imported.networkConnectorArn).toEqual(CONNECTOR_ARN);
+      expect(() => imported.latestVersionArn).toThrow(/imported without a version/);
+    });
+
+    test('fromNetworkConnectorArn rejects an ARN with a version', () => {
+      expect(() => NetworkConnector.fromNetworkConnectorArn(stack, 'Imported', VERSION_ARN))
+        .toThrow(/Expected an unqualified network connector ARN, got '.*:3', which ends in a version.*fromNetworkConnectorVersionArn/);
+    });
+
+    test('fromNetworkConnectorArn accepts a deploy-time value', () => {
+      const arn = new CfnParameter(stack, 'ConnectorArn').valueAsString;
+      const imported = NetworkConnector.fromNetworkConnectorArn(stack, 'Imported', arn);
+
+      expect(stack.resolve(imported.networkConnectorArn)).toEqual({ Ref: 'ConnectorArn' });
+    });
+
+    test('imports take their environment from the ARN', () => {
+      const other = new Stack(new App(), 'Other', { env: { account: '111111111111', region: 'eu-west-1' } });
+      const imported = NetworkConnector.fromNetworkConnectorArn(other, 'Imported', CONNECTOR_ARN);
+
+      expect(imported.env).toEqual({ account: '123456789012', region: 'us-west-2' });
+    });
+
+    test('imports add nothing to the template', () => {
+      NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Imported', VERSION_ARN);
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::NetworkConnector', 0);
+    });
+  });
+
+  describe('validation', () => {
+    test('rejects a selection with no subnets', () => {
+      expect(() => new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress({ vpcSubnets: { subnets: [] } }),
+      })).toThrow(/vpcSubnets must select between 1 and 16 subnets, got 0/);
+    });
+
+    test('rejects a selection of more than 16 subnets', () => {
+      const subnets = Array.from({ length: 17 }, (_, i) =>
+        ec2.Subnet.fromSubnetId(stack, `Subnet${i}`, `subnet-${i.toString().padStart(8, '0')}`));
+      expect(() => new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress({ vpcSubnets: { subnets } }),
+      })).toThrow(/vpcSubnets must select between 1 and 16 subnets, got 17/);
+    });
+
+    test('rejects an empty security group list', () => {
+      expect(() => new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress({ securityGroups: [] }),
+      })).toThrow(/securityGroups must contain between 1 and 5 items, got 0/);
+    });
+
+    test('rejects more than 5 security groups', () => {
+      const securityGroups = Array.from({ length: 6 }, (_, i) =>
+        ec2.SecurityGroup.fromSecurityGroupId(stack, `ExtraSg${i}`, `sg-${i.toString().padStart(8, '0')}`));
+      expect(() => new NetworkConnector(stack, 'Connector', {
+        configuration: vpcEgress({ securityGroups }),
+      })).toThrow(/securityGroups must contain between 1 and 5 items, got 6/);
+    });
+  });
+});
diff --git a/packages/aws-cdk-lib/aws-lambda/test/s3-object-copy.test.ts b/packages/aws-cdk-lib/aws-lambda/test/s3-object-copy.test.ts
new file mode 100644
index 0000000000000..6bf6a3b858d40
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/test/s3-object-copy.test.ts
@@ -0,0 +1,345 @@
+import { Match, Template } from '../../assertions';
+import * as ec2 from '../../aws-ec2';
+import * as iam from '../../aws-iam';
+import * as logs from '../../aws-logs';
+import * as s3 from '../../aws-s3';
+import * as cdk from '../../core';
+import type { S3ObjectCopyProps } from '../lib/private/s3-object-copy';
+import { S3ObjectCopy } from '../lib/private/s3-object-copy';
+
+let stack: cdk.Stack;
+let sourceBucket: s3.IBucket;
+let destinationBucket: s3.IBucket;
+
+beforeEach(() => {
+  stack = new cdk.Stack();
+  sourceBucket = new s3.Bucket(stack, 'Source');
+  destinationBucket = new s3.Bucket(stack, 'Destination', { versioned: true });
+});
+
+const minimalProps = (overrides: Partial = {}): S3ObjectCopyProps => ({
+  sourceBucket,
+  sourceKey: 'incoming/app.zip',
+  destinationBucket,
+  destinationKeyPrefix: 'code/',
+  contentHash: 'abc123',
+  destinationKeyPattern: 'code/*',
+  ...overrides,
+});
+
+describe('S3ObjectCopy', () => {
+  test('creates a custom resource carrying the source and destination', () => {
+    new S3ObjectCopy(stack, 'Copy', minimalProps());
+
+    Template.fromStack(stack).hasResourceProperties('Custom::S3ObjectCopy', {
+      SourceBucketName: { Ref: stack.getLogicalId(sourceBucket.node.defaultChild as cdk.CfnElement) },
+      SourceObjectKey: 'incoming/app.zip',
+      DestinationBucketName: { Ref: stack.getLogicalId(destinationBucket.node.defaultChild as cdk.CfnElement) },
+      DestinationKeyPrefix: 'code/',
+      ContentHash: 'abc123',
+    });
+  });
+
+  test('passes the consumer configuration that the key is derived from', () => {
+    new S3ObjectCopy(stack, 'Copy', minimalProps({ configuration: { Runtime: 'nodejs24.x' } }));
+
+    Template.fromStack(stack).hasResourceProperties('Custom::S3ObjectCopy', {
+      Configuration: { Runtime: 'nodejs24.x' },
+    });
+  });
+
+  test('versionId resolves to the custom resource attribute', () => {
+    const copy = new S3ObjectCopy(stack, 'Copy', minimalProps());
+
+    const resolved = stack.resolve(copy.versionId);
+    expect(resolved['Fn::GetAtt'][0]).toMatch(/^Copy/);
+    expect(resolved['Fn::GetAtt'][1]).toEqual('VersionId');
+  });
+
+  test('does not attach an AWS CLI layer', () => {
+    new S3ObjectCopy(stack, 'Copy', minimalProps());
+
+    Template.fromStack(stack).resourceCountIs('AWS::Lambda::LayerVersion', 0);
+  });
+
+  test('grants no bucket-level or list access on the source bucket', () => {
+    new S3ObjectCopy(stack, 'Copy', minimalProps());
+
+    const statements = Object.values(Template.fromStack(stack).findResources('AWS::IAM::Policy'))
+      .flatMap((policy: any) => policy.Properties.PolicyDocument.Statement);
+    const actions = statements.flatMap((statement: any) => [statement.Action].flat());
+    expect(actions).not.toContain('s3:GetBucket*');
+    expect(actions).not.toContain('s3:List*');
+  });
+
+  test('grants the handler object reads on the source bucket and put on the destination key', () => {
+    new S3ObjectCopy(stack, 'Copy', minimalProps());
+
+    Template.fromStack(stack).hasResourceProperties('AWS::IAM::Policy', {
+      PolicyDocument: {
+        Statement: Match.arrayWith([
+          Match.objectLike({
+            Action: ['s3:GetObject', 's3:GetObjectVersion'],
+            Effect: 'Allow',
+            Resource: { 'Fn::Join': ['', [{ 'Fn::GetAtt': [Match.stringLikeRegexp('Source.*'), 'Arn'] }, '/*']] },
+          }),
+          Match.objectLike({
+            Action: Match.arrayWith(['s3:PutObject']),
+            Effect: 'Allow',
+            Resource: {
+              'Fn::Join': ['', [{ 'Fn::GetAtt': [Match.stringLikeRegexp('Destination.*'), 'Arn'] }, '/code/*']],
+            },
+          }),
+        ]),
+      },
+    });
+  });
+
+  test('grants the handler delete on the key pattern and no version listing', () => {
+    // Deletion removes the one version the copy wrote, which takes DeleteObjectVersion only.
+    new S3ObjectCopy(stack, 'Copy', minimalProps());
+
+    const template = Template.fromStack(stack);
+    template.hasResourceProperties('AWS::IAM::Policy', {
+      PolicyDocument: {
+        Statement: Match.arrayWith([
+          Match.objectLike({
+            Action: 's3:DeleteObject*',
+            Resource: {
+              'Fn::Join': ['', [{ 'Fn::GetAtt': [Match.stringLikeRegexp('Destination.*'), 'Arn'] }, '/code/*']],
+            },
+          }),
+        ]),
+      },
+    });
+    const actions = Object.values(template.findResources('AWS::IAM::Policy'))
+      .flatMap((policy: any) => policy.Properties.PolicyDocument.Statement)
+      .flatMap((statement: any) => [statement.Action].flat());
+    expect(actions).not.toContain('s3:ListBucketVersions');
+  });
+
+  test('widens the put and delete grants to the destination key pattern', () => {
+    new S3ObjectCopy(stack, 'Copy', minimalProps({ destinationKeyPattern: 'code/*' }));
+
+    const statements = Object.values(Template.fromStack(stack).findResources('AWS::IAM::Policy'))
+      .flatMap((policy: any) => policy.Properties.PolicyDocument.Statement);
+    const resourceSuffix = (statement: any) => statement.Resource['Fn::Join'][1][1];
+
+    const deleteStatements = statements.filter((statement: any) => statement.Action === 's3:DeleteObject*');
+    expect(deleteStatements).toHaveLength(1);
+    expect(resourceSuffix(deleteStatements[0])).toEqual('/code/*');
+
+    const putStatements = statements.filter((statement: any) => [statement.Action].flat().includes('s3:PutObject'));
+    expect(putStatements).toHaveLength(1);
+    expect(resourceSuffix(putStatements[0])).toEqual('/code/*');
+  });
+
+  test('exposes the handler role', () => {
+    const copy = new S3ObjectCopy(stack, 'Copy', minimalProps());
+
+    expect(copy.handlerRole).toBeDefined();
+  });
+
+  describe('singleton handler', () => {
+    test('two copies with the same configuration share one function', () => {
+      new S3ObjectCopy(stack, 'Copy1', minimalProps());
+      new S3ObjectCopy(stack, 'Copy2', minimalProps());
+
+      const template = Template.fromStack(stack);
+      template.resourceCountIs('Custom::S3ObjectCopy', 2);
+      template.resourceCountIs('AWS::Lambda::Function', 1);
+    });
+
+    test('a copy in a VPC gets its own function', () => {
+      const vpc = new ec2.Vpc(stack, 'Vpc');
+
+      new S3ObjectCopy(stack, 'Copy1', minimalProps());
+      new S3ObjectCopy(stack, 'Copy2', minimalProps({ vpc }));
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 2);
+    });
+
+    test('a copy with a custom role gets its own function', () => {
+      const role = new iam.Role(stack, 'Role', {
+        assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'),
+      });
+
+      new S3ObjectCopy(stack, 'Copy1', minimalProps());
+      new S3ObjectCopy(stack, 'Copy2', minimalProps({ role }));
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 2);
+    });
+
+    test('a copy with different security groups gets its own function', () => {
+      const vpc = new ec2.Vpc(stack, 'Vpc');
+      const securityGroups = [new ec2.SecurityGroup(stack, 'Sg', { vpc })];
+
+      new S3ObjectCopy(stack, 'Copy1', minimalProps({ vpc }));
+      new S3ObjectCopy(stack, 'Copy2', minimalProps({ vpc, securityGroups }));
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 2);
+    });
+
+    test('the order of security groups does not affect the function identity', () => {
+      const vpc = new ec2.Vpc(stack, 'Vpc');
+      const first = new ec2.SecurityGroup(stack, 'Sg1', { vpc });
+      const second = new ec2.SecurityGroup(stack, 'Sg2', { vpc });
+
+      new S3ObjectCopy(stack, 'Copy1', minimalProps({ vpc, securityGroups: [first, second] }));
+      new S3ObjectCopy(stack, 'Copy2', minimalProps({
+        vpc,
+        securityGroups: [second, first],
+      }));
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 1);
+    });
+
+    test('a copy with a different log group gets its own function', () => {
+      const logGroup = new logs.LogGroup(stack, 'LogGroup');
+
+      new S3ObjectCopy(stack, 'Copy1', minimalProps());
+      new S3ObjectCopy(stack, 'Copy2', minimalProps({ logGroup }));
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 2);
+    });
+
+    test('a copy to a different key pattern gets its own function', () => {
+      new S3ObjectCopy(stack, 'Copy1', minimalProps());
+      new S3ObjectCopy(stack, 'Copy2', minimalProps({ destinationKeyPrefix: 'b/', destinationKeyPattern: 'b/*' }));
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 2);
+    });
+
+    test('a copy to a different bucket gets its own function', () => {
+      const otherBucket = new s3.Bucket(stack, 'Other', { versioned: true });
+
+      new S3ObjectCopy(stack, 'Copy1', minimalProps());
+      new S3ObjectCopy(stack, 'Copy2', minimalProps({ destinationBucket: otherBucket }));
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 2);
+    });
+
+    test('two references to the same bucket share a function', () => {
+      const first = s3.Bucket.fromBucketName(stack, 'First', 'my-code-bucket');
+      const second = s3.Bucket.fromBucketName(stack, 'Second', 'my-code-bucket');
+
+      new S3ObjectCopy(stack, 'Copy1', minimalProps({ destinationBucket: first }));
+      new S3ObjectCopy(stack, 'Copy2', minimalProps({ destinationBucket: second }));
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 1);
+    });
+
+    test('key patterns that differ only in punctuation get separate functions', () => {
+      new S3ObjectCopy(stack, 'Copy1', minimalProps({ destinationKeyPrefix: 'a/b/', destinationKeyPattern: 'a/b/*' }));
+      new S3ObjectCopy(stack, 'Copy2', minimalProps({ destinationKeyPrefix: 'ab/', destinationKeyPattern: 'ab/*' }));
+
+      Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 2);
+    });
+
+    test('the function logs to a log group created in the stack', () => {
+      new S3ObjectCopy(stack, 'Copy', minimalProps());
+      const template = Template.fromStack(stack);
+
+      template.resourceCountIs('AWS::Logs::LogGroup', 1);
+      const logGroupId = Object.keys(template.findResources('AWS::Logs::LogGroup'))[0];
+      template.hasResourceProperties('AWS::Lambda::Function', {
+        LoggingConfig: { LogGroup: { Ref: logGroupId } },
+      });
+    });
+
+    test('copies sharing a function share its log group', () => {
+      new S3ObjectCopy(stack, 'Copy1', minimalProps());
+      new S3ObjectCopy(stack, 'Copy2', minimalProps());
+
+      Template.fromStack(stack).resourceCountIs('AWS::Logs::LogGroup', 1);
+    });
+
+    test('a given log group is used instead of creating one', () => {
+      const logGroup = new logs.LogGroup(stack, 'LogGroup');
+      new S3ObjectCopy(stack, 'Copy', minimalProps({ logGroup }));
+      const template = Template.fromStack(stack);
+
+      template.resourceCountIs('AWS::Logs::LogGroup', 1);
+      template.hasResourceProperties('AWS::Lambda::Function', {
+        LoggingConfig: { LogGroup: { Ref: stack.getLogicalId(logGroup.node.defaultChild as cdk.CfnElement) } },
+      });
+    });
+
+    describe('vpcSubnets', () => {
+      test('a copy selecting different subnets gets its own function', () => {
+        const vpc = new ec2.Vpc(stack, 'Vpc');
+
+        new S3ObjectCopy(stack, 'Copy1', minimalProps({
+          vpc,
+          vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS },
+        }));
+        new S3ObjectCopy(stack, 'Copy2', minimalProps({
+          vpc,
+          vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS, onePerAz: true },
+        }));
+
+        Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 2);
+      });
+
+      test('a copy selecting the same subnets shares one function', () => {
+        const vpc = new ec2.Vpc(stack, 'Vpc');
+        const vpcSubnets = { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS };
+
+        new S3ObjectCopy(stack, 'Copy1', minimalProps({ vpc, vpcSubnets }));
+        new S3ObjectCopy(stack, 'Copy2', minimalProps({ vpc, vpcSubnets }));
+
+        Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 1);
+      });
+
+      test('selecting subnets explicitly does not fail to synthesize', () => {
+        // `SubnetSelection.subnets` holds constructs, so identifying the selection by
+        // stringifying it would throw on the circular construct tree.
+        const vpc = new ec2.Vpc(stack, 'Vpc');
+
+        new S3ObjectCopy(stack, 'Copy1', minimalProps({
+          vpc,
+          vpcSubnets: { subnets: vpc.privateSubnets },
+        }));
+        new S3ObjectCopy(stack, 'Copy2', minimalProps({
+          vpc,
+          vpcSubnets: { subnets: [vpc.privateSubnets[0]] },
+        }));
+
+        Template.fromStack(stack).resourceCountIs('AWS::Lambda::Function', 2);
+      });
+    });
+  });
+
+  describe('options are passed to the handler', () => {
+    test('vpc places the function in the VPC', () => {
+      const vpc = new ec2.Vpc(stack, 'Vpc');
+
+      new S3ObjectCopy(stack, 'Copy', minimalProps({ vpc }));
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::Function', {
+        VpcConfig: Match.objectLike({
+          SubnetIds: Match.anyValue(),
+        }),
+      });
+    });
+
+    test('role is used as the function execution role', () => {
+      const role = new iam.Role(stack, 'Role', {
+        assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'),
+      });
+
+      const copy = new S3ObjectCopy(stack, 'Copy', minimalProps({ role }));
+
+      expect(copy.handlerRole.roleArn).toEqual(role.roleArn);
+    });
+  });
+
+  test('the handler timeout is long enough to copy a large object', () => {
+    new S3ObjectCopy(stack, 'Copy', minimalProps());
+
+    // lambda.Function defaults to 3 seconds, which would fail on any sizeable object.
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::Function', {
+      Timeout: 900,
+    });
+  });
+});
diff --git a/packages/aws-cdk-lib/aws-lambda/test/webfunction-code.test.ts b/packages/aws-cdk-lib/aws-lambda/test/webfunction-code.test.ts
new file mode 100644
index 0000000000000..20d4923744af1
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/test/webfunction-code.test.ts
@@ -0,0 +1,1257 @@
+import * as path from 'path';
+import { Construct } from 'constructs';
+import { Annotations, Match, Template } from '../../assertions';
+import * as ec2 from '../../aws-ec2';
+import * as iam from '../../aws-iam';
+import * as kms from '../../aws-kms';
+import * as s3 from '../../aws-s3';
+import * as cdk from '../../core';
+import { WebFunction } from '../lib/webfunction';
+import { WebFunctionCode } from '../lib/webfunction-code';
+import type { WebFunctionProvidedBucketAssetOptions } from '../lib/webfunction-code';
+import { WebFunctionAuthType } from '../lib/webfunction-endpoint';
+import { WebFunctionRuntime } from '../lib/webfunction-runtime';
+
+// Any real directory works as an asset source; the handler code itself is irrelevant here.
+const ASSET_PATH = path.join(__dirname, 'my-lambda-handler');
+
+// Resources of the copy handler's s3:DeleteObject* statements, as the trailing key pattern.
+function deleteGrantKeyPatterns(stack: cdk.Stack): string[] {
+  const policies = Template.fromStack(stack).findResources('AWS::IAM::Policy');
+  return Object.values(policies)
+    .flatMap((policy: any) => policy.Properties.PolicyDocument.Statement)
+    .filter((statement: any) => statement.Action === 's3:DeleteObject*')
+    .map((statement: any) => statement.Resource['Fn::Join'][1][1]);
+}
+
+// Resources of the copy handler's s3:PutObject statements, as the trailing key pattern.
+function putGrantKeyPatterns(stack: cdk.Stack): string[] {
+  const policies = Template.fromStack(stack).findResources('AWS::IAM::Policy');
+  return Object.values(policies)
+    .flatMap((policy: any) => policy.Properties.PolicyDocument.Statement)
+    .filter((statement: any) => [statement.Action].flat().includes('s3:PutObject'))
+    .map((statement: any) => statement.Resource['Fn::Join'][1][1]);
+}
+
+/** The `s3:prefix` values the version-listing statements are conditioned on. */
+function listGrantPrefixConditions(stack: cdk.Stack): string[] {
+  const policies = Template.fromStack(stack).findResources('AWS::IAM::Policy');
+  return Object.values(policies)
+    .flatMap((policy: any) => policy.Properties.PolicyDocument.Statement)
+    .filter((statement: any) => statement.Action === 's3:ListBucketVersions')
+    .map((statement: any) => statement.Condition?.StringLike?.['s3:prefix']);
+}
+
+describe('WebFunctionCode', () => {
+  let stack: cdk.Stack;
+
+  beforeEach(() => {
+    stack = new cdk.Stack();
+  });
+
+  describe('WebFunctionCode.fromBucket', () => {
+    test('creates bucket code with version', () => {
+      const bucket = new s3.Bucket(stack, 'TestBucket', { versioned: true });
+      const key = 'my-function.zip';
+      const version = 'v1.0.0';
+      const webFunctionCode = WebFunctionCode.fromBucket(bucket, key, version);
+      const config = webFunctionCode.bind(stack, { webFunctionArn: 'arn:aws:lambda:us-east-1:123456789012:web-function/my-func' });
+
+      expect(config.s3Location).toBeDefined();
+      expect(config.s3Location.bucketName).toEqual(bucket.bucketName);
+      expect(config.s3Location.objectKey).toEqual(key);
+      expect(config.s3Location.objectVersion).toEqual(version);
+    });
+
+    test.each(['code/*.zip', 'code?.zip', 'code/${aws:username}.zip', '/code.zip'])(
+      'rejects a key that would widen the read grant: %s', (key) => {
+        const bucket = new s3.Bucket(stack, 'TestBucket', { versioned: true });
+        expect(() => WebFunctionCode.fromBucket(bucket, key).bind(stack, {
+          webFunctionArn: 'arn:aws:lambda:us-east-1:123456789012:web-function/my-func',
+        })).toThrow(/must not start with '\/' or contain/);
+      });
+
+    test('accepts a deploy-time key without checking it', () => {
+      const bucket = new s3.Bucket(stack, 'TestBucket', { versioned: true });
+      const key = new cdk.CfnParameter(stack, 'Key').valueAsString;
+      expect(() => WebFunctionCode.fromBucket(bucket, key).bind(stack, {
+        webFunctionArn: 'arn:aws:lambda:us-east-1:123456789012:web-function/my-func',
+      })).not.toThrow();
+    });
+
+    test('creates WebFunction with bucket code', () => {
+      const bucket = new s3.Bucket(stack, 'TestBucket', { versioned: true });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      const template = Template.fromStack(stack);
+      template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+        BuildConfig: {
+          CodeConfig: {
+            S3Object: {
+              Bucket: {
+                Ref: Match.stringLikeRegexp('TestBucket.*'),
+              },
+              Key: 'my-function.zip',
+            },
+          },
+        },
+      });
+    });
+
+    test('grants the Lambda service principal read access scoped to the object key and the function revisions', () => {
+      const bucket = new s3.Bucket(stack, 'TestBucket', { versioned: true });
+      new WebFunction(stack, 'TestFunction', {
+        webFunctionName: 'my-fn',
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      const template = Template.fromStack(stack);
+      template.hasResourceProperties('AWS::S3::BucketPolicy', {
+        PolicyDocument: {
+          Statement: Match.arrayWith([
+            Match.objectLike({
+              Effect: 'Allow',
+              Principal: { Service: 'lambda.amazonaws.com' },
+              Action: ['s3:GetObject', 's3:GetObjectVersion'],
+              Resource: {
+                'Fn::Join': ['', [
+                  { 'Fn::GetAtt': [Match.stringLikeRegexp('TestBucket.*'), 'Arn'] },
+                  '/my-function.zip',
+                ]],
+              },
+              Condition: Match.exact({
+                StringEquals: {
+                  'aws:SourceAccount': { Ref: 'AWS::AccountId' },
+                },
+                ArnLike: {
+                  // The service presents the revision ARN as aws:SourceArn; the
+                  // revision id is generated server-side, so only it is wildcarded.
+                  'aws:SourceArn': {
+                    'Fn::Join': ['', [
+                      'arn:', { Ref: 'AWS::Partition' }, ':lambda:', { Ref: 'AWS::Region' }, ':',
+                      { Ref: 'AWS::AccountId' }, ':web-function/my-fn/revision/*',
+                    ]],
+                  },
+                },
+              }),
+            }),
+          ]),
+        },
+      });
+    });
+
+    test('validation fails at synth when an in-app bucket is not versioned', () => {
+      const bucket = new s3.Bucket(stack, 'TestBucket');
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(() => Template.fromStack(stack)).toThrow(/must have versioning enabled/);
+    });
+
+    test('validation fails at synth when an in-app bucket uses the AWS-managed KMS key', () => {
+      // `encryptionKey` is undefined here just as it is for SSE-S3, so the two are told apart
+      // on the L1: a KMS algorithm with no key id means the key policy is AWS's to control.
+      const bucket = new s3.Bucket(stack, 'TestBucket', {
+        versioned: true,
+        encryption: s3.BucketEncryption.KMS_MANAGED,
+      });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(() => Template.fromStack(stack)).toThrow(/AWS-managed KMS key/);
+    });
+
+    // The AWS-managed key can also be named explicitly by its alias, as a literal or as an
+    // alias ARN built from the stack's partition, Region and account.
+    test.each([
+      ['the literal alias', (_s: cdk.Stack) => 'alias/aws/s3'],
+      ['an imported alias', (s: cdk.Stack) => kms.Alias.fromAliasName(s, 'S3Key', 'alias/aws/s3').keyArn],
+    ])('rejects the AWS-managed key named by %s', (_name, keyId) => {
+      const bucket = new s3.Bucket(stack, 'CodeBucket', { versioned: true });
+      (bucket.node.defaultChild as s3.CfnBucket).bucketEncryption = {
+        serverSideEncryptionConfiguration: [{
+          serverSideEncryptionByDefault: { sseAlgorithm: 'aws:kms', kmsMasterKeyId: keyId(stack) },
+        }],
+      };
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'code.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(() => Template.fromStack(stack)).toThrow(/encrypted with an AWS-managed KMS key/);
+    });
+
+    test('accepts a customer managed key named by its alias', () => {
+      const bucket = new s3.Bucket(stack, 'CodeBucket', { versioned: true });
+      (bucket.node.defaultChild as s3.CfnBucket).bucketEncryption = {
+        serverSideEncryptionConfiguration: [{
+          serverSideEncryptionByDefault: { sseAlgorithm: 'aws:kms', kmsMasterKeyId: 'alias/my-s3-key' },
+        }],
+      };
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'code.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(() => Template.fromStack(stack)).not.toThrow();
+    });
+
+    test('validation fails at synth for dual-layer encryption with the AWS-managed key', () => {
+      // DSSE_MANAGED has the same problem under a different algorithm name.
+      const bucket = new s3.Bucket(stack, 'TestBucket', {
+        versioned: true,
+        encryption: s3.BucketEncryption.DSSE_MANAGED,
+      });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(() => Template.fromStack(stack)).toThrow(/AWS-managed KMS key/);
+    });
+
+    test('accepts SSE-S3 and a customer managed key', () => {
+      const s3Managed = new s3.Bucket(stack, 'S3ManagedBucket', {
+        versioned: true,
+        encryption: s3.BucketEncryption.S3_MANAGED,
+      });
+      const cmk = new s3.Bucket(stack, 'CmkBucket', {
+        versioned: true,
+        encryption: s3.BucketEncryption.KMS,
+      });
+      new WebFunction(stack, 'S3ManagedFunction', {
+        code: WebFunctionCode.fromBucket(s3Managed, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+      new WebFunction(stack, 'CmkFunction', {
+        code: WebFunctionCode.fromBucket(cmk, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(() => Template.fromStack(stack)).not.toThrow();
+    });
+
+    test('skips the encryption check for an imported bucket', () => {
+      // Nothing to inspect, so an imported bucket is assumed compatible — the risk is
+      // documented rather than validated.
+      const bucket = s3.Bucket.fromBucketName(stack, 'ImportedBucket', 'my-code-bucket');
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(() => Template.fromStack(stack)).not.toThrow();
+    });
+
+    test('does not throw or add a policy for an imported bucket, and emits a warning', () => {
+      const bucket = s3.Bucket.fromBucketName(stack, 'Imported', 'my-existing-bucket');
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      const template = Template.fromStack(stack);
+      template.resourceCountIs('AWS::S3::BucketPolicy', 0);
+      template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+        BuildConfig: {
+          CodeConfig: {
+            S3Object: {
+              Bucket: 'my-existing-bucket',
+              Key: 'my-function.zip',
+            },
+          },
+        },
+      });
+
+      // The warning must name all three requirements, because none of them are checked
+      // for an imported bucket.
+      const warning = Annotations.fromStack(stack).findWarning(
+        '*', Match.stringLikeRegexp('Cannot inspect or modify the imported bucket'),
+      );
+      expect(warning).toHaveLength(1);
+      expect(warning[0].entry.data).toMatch(/versioning enabled/);
+      expect(warning[0].entry.data).toMatch(/AWS managed KMS key/);
+      expect(warning[0].entry.data).toMatch(/s3:GetObject and s3:GetObjectVersion/);
+    });
+
+    test('grants kms:Decrypt to the Lambda service principal on a CMK-encrypted bucket', () => {
+      const key = new kms.Key(stack, 'CodeKey');
+      const bucket = new s3.Bucket(stack, 'TestBucket', {
+        versioned: true,
+        encryption: s3.BucketEncryption.KMS,
+        encryptionKey: key,
+      });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      Template.fromStack(stack).hasResourceProperties('AWS::KMS::Key', {
+        KeyPolicy: {
+          Statement: Match.arrayWith([
+            Match.objectLike({
+              Effect: 'Allow',
+              Action: 'kms:Decrypt',
+              Principal: { Service: 'lambda.amazonaws.com' },
+              Condition: Match.exact({
+                StringEquals: { 'aws:SourceAccount': { Ref: 'AWS::AccountId' } },
+                ArnLike: {
+                  'aws:SourceArn': {
+                    'Fn::Join': ['', [
+                      'arn:', { Ref: 'AWS::Partition' }, ':lambda:', { Ref: 'AWS::Region' }, ':',
+                      { Ref: 'AWS::AccountId' }, ':web-function/*/revision/*',
+                    ]],
+                  },
+                },
+              }),
+            }),
+          ]),
+        },
+      });
+    });
+
+    test('emits a warning when the CMK is imported', () => {
+      const importedKey = kms.Key.fromKeyArn(
+        stack, 'ImportedKey',
+        'arn:aws:kms:us-east-1:111111111111:key/abc-123',
+      );
+      const bucket = new s3.Bucket(stack, 'TestBucket', {
+        versioned: true,
+        encryption: s3.BucketEncryption.KMS,
+        encryptionKey: importedKey,
+      });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      Annotations.fromStack(stack).hasWarning(
+        '*',
+        Match.stringLikeRegexp('Cannot grant kms:Decrypt to lambda.amazonaws.com on the imported KMS key'),
+      );
+    });
+  });
+
+  describe('WebFunctionCode.fromAssetToManagedBucket', () => {
+    const minimalStaged = (overrides: Record = {}) => ({
+      code: WebFunctionCode.fromAssetToManagedBucket(ASSET_PATH),
+      runtime: WebFunctionRuntime.NODEJS_24_X,
+      defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      ...overrides,
+    });
+
+    test('rejects a single file that is not a .zip', () => {
+      // A raw file would be copied as-is to a .zip key and fail only at deployment.
+      const file = path.join(ASSET_PATH, 'index.py');
+
+      expect(() => new WebFunction(stack, 'TestFunction', minimalStaged({
+        code: WebFunctionCode.fromAssetToManagedBucket(file),
+      }))).toThrow(/Asset must be a .zip file or a directory \(.*index\.py\)/);
+    });
+
+    test('accepts a .zip file', () => {
+      new WebFunction(stack, 'TestFunction', minimalStaged({
+        code: WebFunctionCode.fromAssetToManagedBucket(path.join(__dirname, 'handler.zip')),
+      }));
+
+      Template.fromStack(stack).resourceCountIs('Custom::S3ObjectCopy', 1);
+    });
+
+    test('lets the copy handler write anywhere in the managed bucket\'s code segment', () => {
+      // The handler is shared by every function in the stack. A per-function put grant would
+      // add one statement per function to its role; one pattern per bucket does not grow.
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      expect(putGrantKeyPatterns(stack)).toEqual(['/web-function/*']);
+    });
+
+    test('lets the copy handler delete every code object in the managed bucket', () => {
+      // The bucket is CDK-owned and holds only WebFunction code, all of it under one segment.
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      expect(deleteGrantKeyPatterns(stack)).toEqual(['/web-function/*']);
+    });
+
+    test('grants no version listing', () => {
+      // The copy deletes the one version it wrote, named by its physical ID.
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      expect(listGrantPrefixConditions(stack)).toEqual([]);
+    });
+
+    test('writes the code object under the reserved segment', () => {
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      Template.fromStack(stack).hasResourceProperties('Custom::S3ObjectCopy', {
+        DestinationKeyPrefix: Match.stringLikeRegexp('^web-function/[A-Za-z0-9]+/$'),
+      });
+    });
+
+    test('creates a compliant per-stack code bucket', () => {
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      const template = Template.fromStack(stack);
+      template.hasResourceProperties('AWS::S3::Bucket', {
+        VersioningConfiguration: { Status: 'Enabled' },
+        BucketEncryption: {
+          ServerSideEncryptionConfiguration: [{
+            ServerSideEncryptionByDefault: { SSEAlgorithm: 'AES256' },
+          }],
+        },
+        PublicAccessBlockConfiguration: {
+          BlockPublicAcls: true,
+          BlockPublicPolicy: true,
+          IgnorePublicAcls: true,
+          RestrictPublicBuckets: true,
+        },
+      });
+
+      // enforceSSL renders as a policy statement, not a bucket property.
+      template.hasResourceProperties('AWS::S3::BucketPolicy', {
+        PolicyDocument: {
+          Statement: Match.arrayWith([
+            Match.objectLike({
+              Effect: 'Deny',
+              Action: 's3:*',
+              Principal: { AWS: '*' },
+              Condition: { Bool: { 'aws:SecureTransport': 'false' } },
+            }),
+          ]),
+        },
+      });
+    });
+
+    test('grants the Lambda service principal read access on the code segment', () => {
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      Template.fromStack(stack).hasResourceProperties('AWS::S3::BucketPolicy', {
+        PolicyDocument: {
+          Statement: Match.arrayWith([
+            Match.objectLike({
+              Effect: 'Allow',
+              Principal: { Service: 'lambda.amazonaws.com' },
+              Action: ['s3:GetObject', 's3:GetObjectVersion'],
+              Resource: {
+                'Fn::Join': ['', [
+                  { 'Fn::GetAtt': [Match.stringLikeRegexp('AWSCDKWebFunctionAssetBucket.*'), 'Arn'] },
+                  '/web-function/*',
+                ]],
+              },
+              Condition: Match.exact({
+                StringEquals: { 'aws:SourceAccount': { Ref: 'AWS::AccountId' } },
+                ArnLike: {
+                  // One statement covers every function sharing the bucket, so the source
+                  // is any WebFunction revision in this account rather than one function's.
+                  'aws:SourceArn': {
+                    'Fn::Join': ['', [
+                      'arn:', { Ref: 'AWS::Partition' }, ':lambda:', { Ref: 'AWS::Region' }, ':',
+                      { Ref: 'AWS::AccountId' }, ':web-function/*/revision/*',
+                    ]],
+                  },
+                },
+              }),
+            }),
+          ]),
+        },
+      });
+    });
+
+    test('creates a copy custom resource and pins the version it wrote', () => {
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      const template = Template.fromStack(stack);
+      template.resourceCountIs('Custom::S3ObjectCopy', 1);
+      template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+        BuildConfig: {
+          CodeConfig: {
+            // The full address resolves through the copy CR's outputs — what was actually
+            // written — not literals reassembled from the construct's inputs.
+            S3Object: {
+              Bucket: { 'Fn::GetAtt': [Match.stringLikeRegexp('.*CodeCopy.*'), 'Bucket'] },
+              Key: { 'Fn::GetAtt': [Match.stringLikeRegexp('.*CodeCopy.*'), 'Key'] },
+              VersionId: { 'Fn::GetAtt': [Match.stringLikeRegexp('.*CodeCopy.*'), 'VersionId'] },
+            },
+          },
+        },
+      });
+    });
+
+    test('two functions in one stack share a single bucket but get their own copy', () => {
+      new WebFunction(stack, 'First', minimalStaged());
+      new WebFunction(stack, 'Second', minimalStaged());
+
+      const template = Template.fromStack(stack);
+      template.resourceCountIs('AWS::S3::Bucket', 1);
+      template.resourceCountIs('Custom::S3ObjectCopy', 2);
+    });
+
+    test('the shared bucket hangs off the stack, not off whichever function needed it first', () => {
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      // A stack-level construct id keeps the logical ID independent of declaration order.
+      expect(stack.node.tryFindChild('AWSCDKWebFunctionAssetBucket')).toBeDefined();
+    });
+
+    test('destroys the bucket and its objects by default', () => {
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      const template = Template.fromStack(stack);
+      template.hasResource('AWS::S3::Bucket', { DeletionPolicy: 'Delete' });
+      template.resourceCountIs('Custom::S3AutoDeleteObjects', 1);
+    });
+
+    test('the revision is not created before the shared bucket policy exists', () => {
+      // The service reads the code through the bucket policy when the revision is created, so
+      // CloudFormation must be told about the ordering: the policy is a separate resource with
+      // no implicit edge to the revision.
+      new WebFunction(stack, 'TestFunction', minimalStaged());
+
+      const template = Template.fromStack(stack);
+      const [policyId] = Object.keys(template.findResources('AWS::S3::BucketPolicy'));
+      template.hasResource('AWS::Lambda::WebFunctionRevision', {
+        DependsOn: Match.arrayWith([policyId]),
+      });
+      template.hasResource('Custom::S3ObjectCopy', {
+        DependsOn: Match.arrayWith([policyId]),
+      });
+    });
+
+    test('throws when the reserved construct id is occupied by an unrelated construct', () => {
+      new Construct(stack, 'AWSCDKWebFunctionAssetBucket');
+
+      expect(() => {
+        new WebFunction(stack, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToManagedBucket(ASSET_PATH),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+        });
+      }).toThrow(/reserved for the code bucket/);
+    });
+
+    test('recognizes a bucket marked by another copy of the library instead of reporting a collision', () => {
+      // Two copies of aws-cdk-lib in one app share the construct tree but not module state. The
+      // marker is a `Symbol.for` key, so a bucket stamped by one copy is adopted by the other.
+      const bucket = new s3.Bucket(stack, 'AWSCDKWebFunctionAssetBucket', { versioned: true });
+      Object.defineProperty(bucket, Symbol.for('@aws-cdk/aws-lambda.WebFunctionAssetBucket'), {
+        value: cdk.RemovalPolicy.DESTROY,
+      });
+
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToManagedBucket(ASSET_PATH),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      Template.fromStack(stack).resourceCountIs('AWS::S3::Bucket', 1);
+    });
+
+    test('throws when the reserved construct id is occupied by a customer bucket', () => {
+      // A customer bucket type-checks, but skips the configuration (versioning, encryption,
+      // service-principal policy) the managed bucket relies on — so it must be rejected too.
+      new s3.Bucket(stack, 'AWSCDKWebFunctionAssetBucket');
+
+      expect(() => {
+        new WebFunction(stack, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToManagedBucket(ASSET_PATH),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+        });
+      }).toThrow(/reserved for the code bucket/);
+    });
+  });
+
+  describe('WebFunctionCode.fromAssetToProvidedBucket', () => {
+    test('copies into the supplied bucket and creates no bucket of its own', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      const template = Template.fromStack(stack);
+      // Only the customer's bucket — no AWSCDKWebFunctionAssetBucket.
+      template.resourceCountIs('AWS::S3::Bucket', 1);
+      expect(stack.node.tryFindChild('AWSCDKWebFunctionAssetBucket')).toBeUndefined();
+      template.hasResourceProperties('Custom::S3ObjectCopy', {
+        DestinationBucketName: { Ref: Match.stringLikeRegexp('MyBucket.*') },
+      });
+    });
+
+    describe('the copy resource', () => {
+      // The copy represents the code object of one revision. Its resource is replaced, through a
+      // new physical ID, whenever the content or the revision's configuration changes, and is a
+      // new resource only when it needs another copy function, whose ServiceToken it cannot
+      // take over.
+      interface Setup {
+        readonly bucket: s3.IBucket;
+        readonly assetPath?: string;
+        readonly options?: WebFunctionProvidedBucketAssetOptions;
+        readonly timeout?: cdk.Duration;
+      }
+      const copyOf = (configure: (s: cdk.Stack) => Setup, adjust?: (fn: WebFunction) => void) => {
+        const s = new cdk.Stack();
+        const { bucket, assetPath, options, timeout } = configure(s);
+        const fn = new WebFunction(s, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToProvidedBucket(bucket, assetPath ?? ASSET_PATH, options),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+          timeout,
+        });
+        adjust?.(fn);
+        const copies = Template.fromStack(s).findResources('Custom::S3ObjectCopy');
+        const [logicalId] = Object.keys(copies);
+        const { DestinationKeyPrefix, ContentHash, Configuration } = copies[logicalId].Properties;
+        return { logicalId, prefix: DestinationKeyPrefix, contentHash: ContentHash, configuration: Configuration };
+      };
+      const owned = (s: cdk.Stack) => new s3.Bucket(s, 'MyBucket', { versioned: true, bucketName: 'my-bucket' });
+      const original = () => copyOf(s => ({ bucket: owned(s) }));
+
+      test('keeps its logical ID and changes its content hash for new code', () => {
+        const before = original();
+        const after = copyOf(s => ({ bucket: owned(s), assetPath: path.join(__dirname, 'handler.zip') }));
+        expect(after.logicalId).toEqual(before.logicalId);
+        expect(after.contentHash).not.toEqual(before.contentHash);
+      });
+
+      test('keeps its logical ID and passes the new configuration when only the revision changes', () => {
+        const before = original();
+        const after = copyOf(s => ({ bucket: owned(s), timeout: cdk.Duration.seconds(60) }));
+        expect(after.logicalId).toEqual(before.logicalId);
+        expect(after.contentHash).toEqual(before.contentHash);
+        expect(after.configuration).not.toEqual(before.configuration);
+      });
+
+      test('carries the revision configuration without the code location', () => {
+        const { configuration } = original();
+        expect(Object.keys(configuration.Properties).sort()).toEqual(['BuildConfig', 'FunctionName', 'ServiceConfig']);
+        expect(Object.keys(configuration.Properties.BuildConfig)).toEqual(['RuntimeConfig']);
+      });
+
+      test('passes a fingerprint of the environment, not its values', () => {
+        const s = new cdk.Stack();
+        // The validator does not list WebFunctionRevision among the properties that accept an
+        // SSM SecureString reference; the revision itself is not what this test is about.
+        cdk.Validations.of(s).acknowledge({ id: 'CloudFormation-Validate::E1027', reason: 'ssm-secure on the revision' });
+        const role = new iam.Role(s, 'Other', { assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com') });
+        new WebFunction(s, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToProvidedBucket(owned(s), ASSET_PATH),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+          environment: {
+            SECRET: cdk.SecretValue.secretsManager('my-secret').unsafeUnwrap(),
+            SECURE: cdk.SecretValue.ssmSecure('/my/param').unsafeUnwrap(),
+            PLAIN: 'plain-value',
+            ROLE: role.roleArn,
+            JOINED: `joined-literal-${role.roleArn}`,
+          },
+        });
+        const [copy] = Object.values(Template.fromStack(s).findResources('Custom::S3ObjectCopy'));
+        const properties = JSON.stringify(copy.Properties);
+        expect(properties).not.toContain('{{resolve:');
+        expect(properties).not.toContain('plain-value');
+        expect(properties).not.toContain('joined-literal-');
+        // A value only known at deployment is kept, so it still changes the key.
+        expect(copy.Properties.Configuration.Properties.ServiceConfig.EnvironmentVariables.ROLE).toEqual(
+          { 'Fn::GetAtt': [s.getLogicalId(role.node.defaultChild as cdk.CfnElement), 'Arn'] });
+      });
+
+      test('one code object bound to two functions gives each copy its own function\'s configuration', () => {
+        cdk.Validations.of(stack).acknowledge({ id: 'CloudFormation-Validate::W3011', reason: 'the policies differ on purpose' });
+        const code = WebFunctionCode.fromAssetToProvidedBucket(owned(stack), ASSET_PATH);
+        const first = new WebFunction(stack, 'First', {
+          code,
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+          timeout: cdk.Duration.seconds(10),
+        });
+        const second = new WebFunction(stack, 'Second', {
+          code,
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+          timeout: cdk.Duration.seconds(20),
+        });
+        first.resourceRevision.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN;
+
+        const copies = Template.fromStack(stack).findResources('Custom::S3ObjectCopy');
+        const copyFor = (fn: WebFunction) => {
+          const id = Object.keys(copies).find((logicalId) => logicalId.startsWith(fn.node.id))!;
+          return copies[id];
+        };
+        const functionRef = (fn: WebFunction) => ({ Ref: stack.getLogicalId(fn.resource) });
+        const config = (fn: WebFunction) => copyFor(fn).Properties.Configuration.Properties;
+        expect(config(first).FunctionName).toEqual(functionRef(first));
+        expect(config(second).FunctionName).toEqual(functionRef(second));
+        expect(config(first).ServiceConfig.TimeoutSeconds).toEqual(10);
+        expect(config(second).ServiceConfig.TimeoutSeconds).toEqual(20);
+        expect(copyFor(first).DeletionPolicy).toEqual('Retain');
+        expect(copyFor(second).DeletionPolicy).toEqual('Delete');
+      });
+
+      test('passes no secure reference used inside Fn::Sub, Fn::If or Fn::Select', () => {
+        const s = new cdk.Stack();
+        cdk.Validations.of(s).acknowledge({ id: 'CloudFormation-Validate::E1027', reason: 'secure references on the revision' });
+        const role = new iam.Role(s, 'Other', { assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com') });
+        const param = new cdk.CfnParameter(s, 'Env');
+        const condition = new cdk.CfnCondition(s, 'IsProd', { expression: cdk.Fn.conditionEquals(param.valueAsString, 'prod') });
+        const secret = '{{resolve:secretsmanager:db:SecretString:password}}';
+        new WebFunction(s, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToProvidedBucket(owned(s), ASSET_PATH),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+          environment: {
+            SUB: cdk.Fn.sub(`postgres://\${AWS::AccountId}:${secret}@host`),
+            SUB_VARS: cdk.Fn.sub('postgres://${User}@host', { User: secret }),
+            IF: cdk.Fn.conditionIf(condition.logicalId, secret, 'none').toString(),
+            SELECT: cdk.Fn.select(0, [secret, role.roleArn]),
+          },
+        });
+        const [copy] = Object.values(Template.fromStack(s).findResources('Custom::S3ObjectCopy'));
+        expect(JSON.stringify(copy.Properties)).not.toContain('{{resolve:');
+        const env = copy.Properties.Configuration.Properties.ServiceConfig.EnvironmentVariables;
+        // Placeholders and condition names stay, so the template still resolves at deployment.
+        expect(env.SUB['Fn::Sub']).toContain('${AWS::AccountId}');
+        expect(env.SUB_VARS['Fn::Sub'][0]).toContain('${User}');
+        expect(env.IF['Fn::If'][0]).toEqual('IsProd');
+        // Any other intrinsic is replaced by a hash, with the references inside it kept apart.
+        expect(typeof env.SELECT).toEqual('string');
+        expect(copy.Properties.Configuration.References)
+          .toContainEqual({ 'Fn::GetAtt': [s.getLogicalId(role.node.defaultChild as cdk.CfnElement), 'Arn'] });
+      });
+
+      test('passes no secure reference used inside any other intrinsic, nested or not', () => {
+        const s = new cdk.Stack();
+        cdk.Validations.of(s).acknowledge({ id: 'CloudFormation-Validate::E1027', reason: 'secure references on the revision' });
+        const secret = '{{resolve:secretsmanager:db:SecretString:password}}';
+        new WebFunction(s, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToProvidedBucket(owned(s), ASSET_PATH),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+          environment: {
+            BASE64: cdk.Fn.base64(`admin:${secret}`),
+            SPLIT: cdk.Fn.select(1, cdk.Fn.split(':', `a:${secret}`)),
+            IN_JOIN: cdk.Fn.join('', ['x', cdk.Fn.base64(secret)]),
+            IN_SUB_VARS: cdk.Fn.sub('${V}', { V: cdk.Fn.base64(secret) }),
+          },
+        });
+        const [copy] = Object.values(Template.fromStack(s).findResources('Custom::S3ObjectCopy'));
+        expect(JSON.stringify(copy.Properties)).not.toContain('{{resolve:');
+        expect(JSON.stringify(copy.Properties)).not.toContain('Fn::Base64');
+      });
+
+      test('keeps a reference inside a conditional branch conditional', () => {
+        const s = new cdk.Stack();
+        const param = new cdk.CfnParameter(s, 'Env');
+        const condition = new cdk.CfnCondition(s, 'IsProd', { expression: cdk.Fn.conditionEquals(param.valueAsString, 'prod') });
+        const role = new iam.Role(s, 'Other', { assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com') });
+        new WebFunction(s, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToProvidedBucket(owned(s), ASSET_PATH),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+          environment: {
+            IF: cdk.Fn.conditionIf(condition.logicalId, cdk.Fn.base64(role.roleArn), 'none').toString(),
+          },
+        });
+        const [copy] = Object.values(Template.fromStack(s).findResources('Custom::S3ObjectCopy'));
+        expect(copy.Properties.Configuration.References).toEqual([{
+          'Fn::If': ['IsProd', [{ 'Fn::GetAtt': [s.getLogicalId(role.node.defaultChild as cdk.CfnElement), 'Arn'] }], []],
+        }]);
+      });
+
+      test('keeps a conditional reference inside a hashed intrinsic conditional', () => {
+        const s = new cdk.Stack();
+        const param = new cdk.CfnParameter(s, 'Env');
+        const condition = new cdk.CfnCondition(s, 'IsProd', { expression: cdk.Fn.conditionEquals(param.valueAsString, 'prod') });
+        const role = new iam.Role(s, 'Other', { assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com') });
+        new WebFunction(s, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToProvidedBucket(owned(s), ASSET_PATH),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+          environment: {
+            BASE64: cdk.Fn.base64(cdk.Fn.conditionIf(condition.logicalId, role.roleArn, 'none').toString()),
+          },
+        });
+        const [copy] = Object.values(Template.fromStack(s).findResources('Custom::S3ObjectCopy'));
+        expect(copy.Properties.Configuration.References).toEqual([{
+          'Fn::If': ['IsProd', [{ 'Fn::GetAtt': [s.getLogicalId(role.node.defaultChild as cdk.CfnElement), 'Arn'] }], []],
+        }]);
+      });
+
+      test('fails synthesis rather than pass on a dynamic reference it cannot hash', () => {
+        const s = new cdk.Stack();
+        new WebFunction(s, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToProvidedBucket(owned(s), ASSET_PATH),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+          environment: { IMPORTED: cdk.Fn.importValue('{{resolve:ssm:/export/name}}') },
+        });
+        expect(() => Template.fromStack(s)).toThrow(/dynamic reference .* would reach the code copy/);
+      });
+
+      test('sees property overrides on the revision', () => {
+        const before = original();
+        const after = copyOf((s) => ({ bucket: owned(s) }), (fn) => {
+          fn.resourceRevision.addPropertyOverride('ServiceConfig.TimeoutSeconds', 60);
+        });
+        expect(after.configuration).not.toEqual(before.configuration);
+      });
+
+      test('a changed environment value changes the configuration', () => {
+        const withEnv = (value: string) => {
+          const s = new cdk.Stack();
+          new WebFunction(s, 'TestFunction', {
+            code: WebFunctionCode.fromAssetToProvidedBucket(owned(s), ASSET_PATH),
+            runtime: WebFunctionRuntime.NODEJS_24_X,
+            defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+            environment: { A: value },
+          });
+          return Object.values(Template.fromStack(s).findResources('Custom::S3ObjectCopy'))[0].Properties.Configuration;
+        };
+        expect(withEnv('one')).not.toEqual(withEnv('two'));
+        expect(withEnv('one')).toEqual(withEnv('one'));
+      });
+
+      test.each<[string, (s: cdk.Stack) => Setup]>([
+        ['a new key prefix', s => ({ bucket: owned(s), options: { keyPrefix: 'b/' } })],
+        ['the same bucket imported by name', s => ({ bucket: s3.Bucket.fromBucketName(s, 'MyBucket', 'my-bucket') })],
+        ['a copy function in a VPC', s => ({
+          bucket: owned(s), options: { copyOptions: { vpc: new ec2.Vpc(s, 'Vpc') } },
+        })],
+      ])('is a new resource for %s, which needs another copy function', (_name, configure) => {
+        expect(copyOf(configure).logicalId).not.toEqual(original().logicalId);
+      });
+
+      test('nothing changes when nothing does', () => {
+        expect(original()).toEqual(original());
+      });
+    });
+
+    test('the read grant stays the same when the code changes', () => {
+      // The revision being replaced keeps reading its own object until the deployment completes,
+      // so the bucket policy must not move to the new object alone.
+      const readGrant = (assetPath: string) => {
+        const s = new cdk.Stack();
+        const bucket = new s3.Bucket(s, 'MyBucket', { versioned: true });
+        new WebFunction(s, 'TestFunction', {
+          code: WebFunctionCode.fromAssetToProvidedBucket(bucket, assetPath),
+          runtime: WebFunctionRuntime.NODEJS_24_X,
+          defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+        });
+        return Template.fromStack(s).findResources('AWS::S3::BucketPolicy');
+      };
+      expect(readGrant(path.join(__dirname, 'handler.zip'))).toEqual(readGrant(ASSET_PATH));
+    });
+
+    test('lets the copy handler delete under the key prefix only', () => {
+      // Renaming the construct replaces the copy resource and the old key must still be
+      // deletable, so the grant covers the caller's prefix rather than the single key — but
+      // nothing outside it.
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH, {
+          keyPrefix: 'webfunctions/',
+        }),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(deleteGrantKeyPatterns(stack)).toEqual(['/webfunctions/web-function/*']);
+    });
+
+    test('cannot write outside the code segment under the caller\'s prefix', () => {
+      // Wider than the single key so the shared handler role does not grow per function, but
+      // still confined to what this module writes: the caller's own objects stay out of reach.
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH, {
+          keyPrefix: 'webfunctions/',
+        }),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(putGrantKeyPatterns(stack)).toEqual(['/webfunctions/web-function/*']);
+    });
+
+    test('cannot enumerate the caller\'s bucket', () => {
+      // A version listing is bucket-level; the copy handler does not need one, so it gets none.
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH, {
+          keyPrefix: 'webfunctions/',
+        }),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(listGrantPrefixConditions(stack)).toEqual([]);
+    });
+
+    test('never grants delete on the whole of a provided bucket, even without a prefix', () => {
+      // The caller's bucket may hold unrelated data. The reserved segment bounds the grant to
+      // what this module writes, so omitting keyPrefix does not widen it to `*`.
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(deleteGrantKeyPatterns(stack)).toEqual(['/web-function/*']);
+    });
+
+    test.each(['/apps/', 'apps/*', 'app?/', 'apps/${aws:username}/'])('rejects keyPrefix %p', (keyPrefix) => {
+      // The prefix scopes the copy function's grants on the caller's bucket, where these would widen them.
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+
+      expect(() => new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH, { keyPrefix }),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      })).toThrow(/keyPrefix .* must not start with '\/' or contain/);
+    });
+
+    test('rejects a keyPrefix that cannot be checked', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+
+      expect(() => new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH, {
+          keyPrefix: new cdk.CfnParameter(stack, 'Prefix').valueAsString,
+        }),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      })).toThrow(/keyPrefix must be a literal string, not a deploy-time value/);
+    });
+
+    test('applies keyPrefix to the destination key', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH, {
+          keyPrefix: 'webfunctions/',
+        }),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      Template.fromStack(stack).hasResourceProperties('Custom::S3ObjectCopy', {
+        DestinationKeyPrefix: Match.stringLikeRegexp('^webfunctions/web-function/[A-Za-z0-9]+/$'),
+      });
+    });
+
+    test('grants the Lambda service principal read access on the copied object', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      // Scoped to this function's objects, not to the whole bucket: the caller owns the bucket
+      // and may keep unrelated objects in it.
+      Template.fromStack(stack).hasResourceProperties('AWS::S3::BucketPolicy', {
+        PolicyDocument: {
+          Statement: Match.arrayWith([
+            Match.objectLike({
+              Principal: { Service: 'lambda.amazonaws.com' },
+              Action: ['s3:GetObject', 's3:GetObjectVersion'],
+              Resource: {
+                'Fn::Join': ['', [
+                  { 'Fn::GetAtt': [Match.stringLikeRegexp('MyBucket.*'), 'Arn'] },
+                  Match.stringLikeRegexp('^/web-function/[A-Za-z0-9]+/\\*$'),
+                ]],
+              },
+              Condition: {
+                StringEquals: { 'aws:SourceAccount': { Ref: 'AWS::AccountId' } },
+              },
+            }),
+          ]),
+        },
+      });
+    });
+
+    test('validation fails at synth when an in-app bucket is not versioned', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket');
+
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      // The error names this factory, not `fromBucket()`, so the message points at the
+      // call the customer actually made.
+      expect(() => Template.fromStack(stack)).toThrow(
+        /fromAssetToProvidedBucket\(\) must have versioning enabled/,
+      );
+    });
+
+    test('rejects a bucket encrypted with the AWS-managed KMS key', () => {
+      // The same constraint as `fromBucket`: the service reads the object as
+      // lambda.amazonaws.com, which can only be authorized on a key policy we can edit.
+      const bucket = new s3.Bucket(stack, 'MyBucket', {
+        versioned: true,
+        encryption: s3.BucketEncryption.KMS_MANAGED,
+      });
+
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      expect(() => Template.fromStack(stack)).toThrow(
+        /fromAssetToProvidedBucket\(\) is encrypted with an AWS-managed KMS key/,
+      );
+    });
+
+    test('accepts an imported bucket, deferring the check to deploy time', () => {
+      const bucket = s3.Bucket.fromBucketName(stack, 'Imported', 'my-existing-bucket');
+
+      expect(() => new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      })).not.toThrow();
+
+      Template.fromStack(stack).hasResourceProperties('Custom::S3ObjectCopy', {
+        DestinationBucketName: 'my-existing-bucket',
+      });
+    });
+  });
+
+  describe('copy custom resource configuration', () => {
+    test('passes copyOptions through to the copy handler', () => {
+      const vpc = new ec2.Vpc(stack, 'Vpc');
+      new WebFunction(stack, 'TestFunction', {
+        code: WebFunctionCode.fromAssetToManagedBucket(ASSET_PATH, {
+          copyOptions: { vpc },
+        }),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      });
+
+      // The copy handler is the singleton Lambda behind Custom::S3ObjectCopy.
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::Function', {
+        VpcConfig: Match.objectLike({
+          SubnetIds: Match.anyValue(),
+        }),
+      });
+    });
+  });
+
+  describe('retention', () => {
+    const managed = (s: cdk.Stack, id = 'Fn') => new WebFunction(s, id, {
+      code: WebFunctionCode.fromAssetToManagedBucket(ASSET_PATH),
+      runtime: WebFunctionRuntime.NODEJS_24_X,
+      defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+    });
+    const policies = (resource: any) => ({ DeletionPolicy: resource.DeletionPolicy, UpdateReplacePolicy: resource.UpdateReplacePolicy });
+    const copyPolicies = (s: cdk.Stack) => Object.values(Template.fromStack(s).findResources('Custom::S3ObjectCopy')).map(policies);
+    const bucketPolicies = (s: cdk.Stack) => policies(Object.values(Template.fromStack(s).findResources('AWS::S3::Bucket'))[0]);
+    const autoDeletePolicies = (s: cdk.Stack) =>
+      Object.values(Template.fromStack(s).findResources('Custom::S3AutoDeleteObjects')).map(policies);
+    const bucketPolicyPolicies = (s: cdk.Stack) =>
+      Object.values(Template.fromStack(s).findResources('AWS::S3::BucketPolicy')).map(policies);
+    const provided = (s: cdk.Stack, bucket: s3.IBucket, id = 'Fn') => new WebFunction(s, id, {
+      code: WebFunctionCode.fromAssetToProvidedBucket(bucket, ASSET_PATH),
+      runtime: WebFunctionRuntime.NODEJS_24_X,
+      defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+    });
+    const DELETE = { DeletionPolicy: 'Delete', UpdateReplacePolicy: 'Delete' };
+    const RETAIN = { DeletionPolicy: 'Retain', UpdateReplacePolicy: 'Retain' };
+
+    test('copy, bucket and auto-delete are deleted when no revision is retained', () => {
+      managed(stack);
+
+      expect(copyPolicies(stack)).toEqual([DELETE]);
+      expect(bucketPolicies(stack)).toEqual(DELETE);
+      expect(autoDeletePolicies(stack)).toEqual([DELETE]);
+      expect(bucketPolicyPolicies(stack)).toEqual([{ DeletionPolicy: undefined, UpdateReplacePolicy: undefined }]);
+      Annotations.fromStack(stack).hasNoWarning('*', Match.stringLikeRegexp('code bucket .* are retained'));
+    });
+
+    test('a retained revision retains its copy, the bucket, its policy and the auto-delete resource, and warns', () => {
+      const fn = managed(stack);
+      fn.resourceRevision.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);
+
+      expect(copyPolicies(stack)).toEqual([RETAIN]);
+      expect(bucketPolicies(stack)).toEqual(RETAIN);
+      expect(autoDeletePolicies(stack)).toEqual([RETAIN]);
+      expect(bucketPolicyPolicies(stack)).toEqual([RETAIN]);
+      Annotations.fromStack(stack).hasWarning('*', Match.stringLikeRegexp('code bucket .* are retained'));
+    });
+
+    test.each([false, true])('follows a removal policy applied by an aspect (aspectStabilization: %s)', (stabilization) => {
+      const app = new cdk.App({ context: { '@aws-cdk/core:aspectStabilization': stabilization } });
+      const s = new cdk.Stack(app, 'Stack');
+      managed(s);
+      cdk.RemovalPolicies.of(s).retain({ applyToResourceTypes: ['AWS::Lambda::WebFunctionRevision'] });
+
+      // The warning is checked first: a second synthesis runs the aspects again, by which time the
+      // first one has already set the policy.
+      Annotations.fromStack(s).hasWarning('*', Match.stringLikeRegexp('code bucket .* are retained'));
+      expect(copyPolicies(s)).toEqual([RETAIN]);
+      expect(bucketPolicies(s)).toEqual(RETAIN);
+      expect(bucketPolicyPolicies(s)).toEqual([RETAIN]);
+    });
+
+    test('retains the bucket for a revision of a function defined after the bucket', () => {
+      managed(stack, 'First');
+      const second = managed(stack, 'Second');
+      second.resourceRevision.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);
+
+      expect(bucketPolicies(stack)).toEqual(RETAIN);
+      expect(copyPolicies(stack)).toEqual(expect.arrayContaining([DELETE, RETAIN]));
+    });
+
+    test('a revision retained on replacement only keeps its copy except after a failed first create', () => {
+      cdk.Validations.of(stack).acknowledge({ id: 'CloudFormation-Validate::W3011', reason: 'the policies differ on purpose' });
+      const fn = managed(stack);
+      fn.resourceRevision.cfnOptions.updateReplacePolicy = cdk.CfnDeletionPolicy.RETAIN;
+
+      expect(copyPolicies(stack)).toEqual([{ DeletionPolicy: 'RetainExceptOnCreate', UpdateReplacePolicy: 'Retain' }]);
+    });
+
+    test('RETAIN_ON_UPDATE_OR_DELETE keeps RetainExceptOnCreate for everything the revision depends on', () => {
+      const fn = managed(stack);
+      fn.resourceRevision.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN_ON_UPDATE_OR_DELETE);
+
+      const EXCEPT_ON_CREATE = { DeletionPolicy: 'RetainExceptOnCreate', UpdateReplacePolicy: 'Retain' };
+      expect(copyPolicies(stack)).toEqual([EXCEPT_ON_CREATE]);
+      expect(bucketPolicies(stack)).toEqual(EXCEPT_ON_CREATE);
+      expect(autoDeletePolicies(stack)).toEqual([EXCEPT_ON_CREATE]);
+      expect(bucketPolicyPolicies(stack)).toEqual([EXCEPT_ON_CREATE]);
+    });
+
+    test('a later aspect still sets a value on the revision that the retention warning has rendered', () => {
+      const app = new cdk.App();
+      const s = new cdk.Stack(app, 'Stack');
+      let value = 'before';
+      const fn = new WebFunction(s, 'Fn', {
+        code: WebFunctionCode.fromAssetToManagedBucket(ASSET_PATH),
+        runtime: WebFunctionRuntime.NODEJS_24_X,
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+        environment: { VALUE: cdk.Lazy.string({ produce: () => value }) },
+      });
+      fn.resourceRevision.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);
+      // The endpoint comes after the revision in the tree, so this runs after the revision is visited.
+      cdk.Aspects.of(s).add({ visit: (node) => { if (node === fn.endpoint) { value = 'after'; } } });
+
+      const [revision] = Object.values(Template.fromStack(s).findResources('AWS::Lambda::WebFunctionRevision'));
+      expect(revision.Properties.ServiceConfig.EnvironmentVariables.VALUE).toEqual('after');
+      Annotations.fromStack(s).hasWarning('*', Match.stringLikeRegexp('code bucket .* are retained'));
+    });
+
+    test('keeps an override already on a provided bucket policy', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      bucket.addToResourcePolicy(new iam.PolicyStatement({
+        actions: ['s3:GetObject'], principals: [new iam.AccountRootPrincipal()], resources: [bucket.arnForObjects('*')],
+      }));
+      cdk.Validations.of(stack).acknowledge({ id: 'CloudFormation-Validate::W3011', reason: 'only the deletion policy is set' });
+      (bucket.policy!.node.defaultChild as cdk.CfnResource).addOverride('DeletionPolicy', 'Retain');
+      provided(stack, bucket);
+
+      expect(Object.values(Template.fromStack(stack).findResources('AWS::S3::BucketPolicy'))[0].DeletionPolicy)
+        .toEqual('Retain');
+    });
+
+    test('a revision retained on deletion only keeps its copy on deletion, not on replacement', () => {
+      cdk.Validations.of(stack).acknowledge({ id: 'CloudFormation-Validate::W3011', reason: 'the policies differ on purpose' });
+      const fn = managed(stack);
+      fn.resourceRevision.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN;
+
+      expect(copyPolicies(stack)).toEqual([{ DeletionPolicy: 'Retain', UpdateReplacePolicy: 'Delete' }]);
+    });
+
+    test('follows a removal policy set with an escape hatch on the revision', () => {
+      const fn = managed(stack);
+      fn.resourceRevision.addOverride('DeletionPolicy', 'Retain');
+      fn.resourceRevision.addOverride('UpdateReplacePolicy', 'Retain');
+
+      expect(copyPolicies(stack)).toEqual([RETAIN]);
+      expect(bucketPolicies(stack)).toEqual(RETAIN);
+    });
+
+    test('carries RetainExceptOnCreate rather than retaining outright', () => {
+      cdk.Validations.of(stack).acknowledge({ id: 'CloudFormation-Validate::W3011', reason: 'the policies differ on purpose' });
+      const fn = managed(stack);
+      fn.resourceRevision.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN_EXCEPT_ON_CREATE;
+
+      const EXCEPT_ON_CREATE = { DeletionPolicy: 'RetainExceptOnCreate', UpdateReplacePolicy: 'Retain' };
+      expect(copyPolicies(stack)).toEqual([{ DeletionPolicy: 'RetainExceptOnCreate', UpdateReplacePolicy: 'Delete' }]);
+      expect(bucketPolicies(stack)).toEqual(EXCEPT_ON_CREATE);
+      expect(autoDeletePolicies(stack)).toEqual([EXCEPT_ON_CREATE]);
+      expect(bucketPolicyPolicies(stack)).toEqual([EXCEPT_ON_CREATE]);
+    });
+
+    test('a shared bucket takes the strongest policy of the revisions using it', () => {
+      managed(stack, 'First').resourceRevision.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN_EXCEPT_ON_CREATE;
+      managed(stack, 'Second').resourceRevision.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);
+      cdk.Validations.of(stack).acknowledge({ id: 'CloudFormation-Validate::W3011', reason: 'the policies differ on purpose' });
+
+      expect(bucketPolicies(stack)).toEqual(RETAIN);
+    });
+
+    test('a retained revision in a provided bucket retains its copy and the bucket policy, and leaves the bucket alone', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      const fn = provided(stack, bucket);
+      fn.resourceRevision.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);
+
+      expect(copyPolicies(stack)).toEqual([RETAIN]);
+      expect(bucketPolicies(stack)).toEqual(RETAIN); // the s3.Bucket default
+      expect(bucketPolicyPolicies(stack)).toEqual([RETAIN]);
+      Annotations.fromStack(stack).hasNoWarning('*', Match.stringLikeRegexp('code bucket .* are retained'));
+    });
+
+    test('a provided bucket policy keeps its own removal policy when no revision is retained', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      provided(stack, bucket);
+      expect(Object.values(Template.fromStack(stack).findResources('AWS::S3::BucketPolicy'))[0])
+        .not.toHaveProperty('DeletionPolicy');
+
+      const s = new cdk.Stack();
+      const retainedBucket = new s3.Bucket(s, 'MyBucket', { versioned: true });
+      provided(s, retainedBucket);
+      retainedBucket.policy!.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);
+      expect(bucketPolicyPolicies(s)).toEqual([RETAIN]);
+    });
+
+    test('a provided bucket policy keeps a stronger policy of its own', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      provided(stack, bucket).resourceRevision.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN_EXCEPT_ON_CREATE;
+      bucket.policy!.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);
+      cdk.Validations.of(stack).acknowledge({ id: 'CloudFormation-Validate::W3011', reason: 'the policies differ on purpose' });
+
+      expect(bucketPolicyPolicies(stack)).toEqual([RETAIN]);
+    });
+
+    test('a provided bucket policy is retained when a later function sharing it has a retained revision', () => {
+      const bucket = new s3.Bucket(stack, 'MyBucket', { versioned: true });
+      provided(stack, bucket, 'First');
+      provided(stack, bucket, 'Second').resourceRevision.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);
+
+      expect(bucketPolicyPolicies(stack)).toEqual([RETAIN]);
+    });
+  });
+});
diff --git a/packages/aws-cdk-lib/aws-lambda/test/webfunction-endpoint.test.ts b/packages/aws-cdk-lib/aws-lambda/test/webfunction-endpoint.test.ts
new file mode 100644
index 0000000000000..043299a510069
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/test/webfunction-endpoint.test.ts
@@ -0,0 +1,513 @@
+import { Annotations, Match, Template } from '../../assertions';
+import { AccountPrincipal, PolicyStatement, Role, ServicePrincipal } from '../../aws-iam';
+import { App, Fn, PropertyInjectors, Stack } from '../../core';
+import { NetworkConnector } from '../lib/network-connector';
+import { WebFunction } from '../lib/webfunction';
+import { WebFunctionCode } from '../lib/webfunction-code';
+import {
+  WebFunctionAuthType,
+  WebFunctionEndpoint,
+  WebFunctionEndpointLocation,
+  WebFunctionEndpointType,
+  WebFunctionTraffic,
+} from '../lib/webfunction-endpoint';
+import type { WebFunctionEndpointProps } from '../lib/webfunction-endpoint';
+import { WebFunctionRuntime } from '../lib/webfunction-runtime';
+
+const mockBucket = {
+  bucketName: 'my-code-bucket',
+  bucketArn: 'arn:aws:s3:::my-code-bucket',
+  arnForObjects: (key: string) => `arn:aws:s3:::my-code-bucket/${key}`,
+  addToResourcePolicy: () => ({ statementAdded: false }),
+  node: { addr: '', defaultChild: undefined },
+} as any;
+
+const minimalProps = (overrides: Record = {}) => ({
+  code: WebFunctionCode.fromBucket(mockBucket, 'code.zip'),
+  runtime: WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+  ...overrides,
+});
+
+function endpoints(stack: Stack) {
+  return Template.fromStack(stack).findResources('AWS::Lambda::WebFunctionEndpoint');
+}
+
+describe('default endpoint', () => {
+  test('keeps the logical ID it had when the WebFunction created the L1 directly', () => {
+    const stack = new Stack();
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+
+    expect(Object.keys(endpoints(stack))).toEqual(['FnEndpointAA26FDCA']);
+    expect(stack.resolve(fn.endpoint.endpointArn)).toEqual({ 'Fn::GetAtt': ['FnEndpointAA26FDCA', 'EndpointArn'] });
+    expect(fn.endpoint.node.defaultChild).toBe(fn.endpoint.resource);
+  });
+
+  test('is configured by the endpoint properties of the WebFunction', () => {
+    const stack = new Stack();
+    const fn = new WebFunction(stack, 'Fn', minimalProps({ defaultEndpoint: { endpointName: 'live', rateLimit: 100 } }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionEndpoint', {
+      FunctionName: { 'Fn::GetAtt': [Match.stringLikeRegexp('^FnFunction'), 'FunctionArn'] },
+      EndpointName: 'live',
+      AuthType: 'IamAuth',
+      ThrottleConfig: { RateLimit: 100 },
+      RevisionWeights: [{ RevisionId: { 'Fn::GetAtt': [Match.stringLikeRegexp('^FnRevision'), 'RevisionId'] }, Weight: 100 }],
+    });
+    expect(fn.endpoint.endpointType).toEqual(WebFunctionEndpointType.HOME_REGION);
+  });
+
+  test('keeps its name and logical ID when a property injector rebuilds the endpoint props', () => {
+    const stack = new Stack();
+    PropertyInjectors.of(stack).add({
+      constructUniqueId: WebFunctionEndpoint.PROPERTY_INJECTION_ID,
+      inject: (props: WebFunctionEndpointProps) => ({
+        webFunction: props.webFunction,
+        traffic: props.traffic,
+        authType: props.authType,
+        endpointName: props.endpointName,
+        endpointLocation: props.endpointLocation,
+        endpointDescription: props.endpointDescription,
+        maxEnvironments: props.maxEnvironments,
+        rateLimit: props.rateLimit,
+      }),
+    });
+    new WebFunction(stack, 'Fn', minimalProps());
+
+    expect(Object.keys(endpoints(stack))).toEqual(['FnEndpointAA26FDCA']);
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionEndpoint', { EndpointName: 'prod' });
+  });
+
+  test('is named prod by default', () => {
+    const stack = new Stack();
+    new WebFunction(stack, 'Fn', minimalProps());
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionEndpoint', { EndpointName: 'prod' });
+  });
+
+  test('depends on the function and its revision', () => {
+    const stack = new Stack();
+    new WebFunction(stack, 'Fn', minimalProps());
+
+    const [endpoint] = Object.values(endpoints(stack));
+    expect(endpoint.DependsOn).toEqual(expect.arrayContaining([
+      expect.stringMatching(/^FnFunction/),
+      expect.stringMatching(/^FnRevision/),
+    ]));
+  });
+});
+
+describe('function reference', () => {
+  test('names the function by its name, not by the ARN its Ref returns', () => {
+    const stack = new Stack();
+    const fn = new WebFunction(stack, 'Fn', minimalProps({ webFunctionName: 'my-fn' }));
+
+    expect(fn.webFunctionRef.functionName).toEqual('my-fn');
+    expect(fn.webFunctionRef.functionName).toEqual(fn.webFunctionName);
+  });
+
+  test('an endpoint takes the function ARN, so it depends on the function', () => {
+    const stack = new Stack();
+    const fn = new WebFunction(stack, 'Fn', minimalProps({ webFunctionName: 'my-fn' }));
+    const second = fn.addEndpoint('Second', { authType: WebFunctionAuthType.IAM_AUTH });
+
+    const functionArn = { 'Fn::GetAtt': [stack.getLogicalId(fn.resource), 'FunctionArn'] };
+    for (const endpoint of [fn.endpoint, second]) {
+      expect(stack.resolve(endpoint.resource.functionName)).toEqual(functionArn);
+    }
+  });
+});
+
+describe('addEndpoint', () => {
+  test('adds an endpoint for the same revision, named so it does not collide', () => {
+    const stack = new Stack();
+    const fn = new WebFunction(stack, 'Fn', minimalProps({ defaultEndpointAuth: WebFunctionAuthType.APPLICATION_MANAGED }));
+    const second = fn.addEndpoint('Cdn', { authType: WebFunctionAuthType.IAM_AUTH });
+
+    const all = Object.values(endpoints(stack));
+    expect(all).toHaveLength(2);
+    const names = all.map((e) => e.Properties.EndpointName);
+    expect(new Set(names).size).toBe(2);
+    expect(names).toContain('prod');
+    for (const name of names) {
+      expect(name).toMatch(/^[a-zA-Z0-9][a-zA-Z0-9_-]{0,62}[a-zA-Z0-9]$/);
+    }
+
+    const secondProps = endpoints(stack)[stack.resolve(second.endpointArn)['Fn::GetAtt'][0]].Properties;
+    expect(secondProps.AuthType).toEqual('IamAuth');
+    expect(secondProps.RevisionWeights).toEqual(endpoints(stack)[stack.resolve(fn.endpoint.endpointArn)['Fn::GetAtt'][0]].Properties.RevisionWeights);
+  });
+
+  test('takes its own settings, not those of the default endpoint', () => {
+    const stack = new Stack();
+    const fn = new WebFunction(stack, 'Fn', minimalProps({
+      defaultEndpointAuth: WebFunctionAuthType.APPLICATION_MANAGED,
+      defaultEndpoint: { endpointDescription: 'public', rateLimit: 100 },
+    }));
+    const second = fn.addEndpoint('Second', { authType: WebFunctionAuthType.IAM_AUTH });
+
+    const props = endpoints(stack)[stack.resolve(second.endpointArn)['Fn::GetAtt'][0]].Properties;
+    expect(props.AuthType).toEqual('IamAuth');
+    expect(props).not.toHaveProperty('Description');
+    expect(props).not.toHaveProperty('ThrottleConfig');
+  });
+
+  test('a second endpoint\'s default name changes with its endpoint type', () => {
+    const name = (endpointLocation?: WebFunctionEndpointLocation) => {
+      const stack = new Stack();
+      const fn = new WebFunction(stack, 'Fn', minimalProps());
+      const ep = fn.addEndpoint('Second', { authType: WebFunctionAuthType.IAM_AUTH, endpointLocation });
+      return ep.resource.endpointName;
+    };
+    expect(name()).not.toEqual(name(WebFunctionEndpointLocation.multiRegion(['us-east-1'])));
+  });
+
+  test('validates the endpoint', () => {
+    const stack = new Stack();
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+
+    expect(() => fn.addEndpoint('Bad', {
+      authType: WebFunctionAuthType.IAM_AUTH,
+      endpointDescription: 'x'.repeat(257),
+    })).toThrow(/Endpoint description cannot be longer than 256 characters/);
+  });
+
+  test('isWebFunctionEndpoint recognizes a WebFunctionEndpoint only', () => {
+    const stack = new Stack();
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    const imported = WebFunctionEndpoint.fromWebFunctionEndpointAttributes(stack, 'Imported', {
+      endpointArn: 'arn:aws:lambda:us-east-1:123456789012:web-function/other/endpoint/prod',
+      domainName: 'example.lambda-web.us-east-1.on.aws',
+      endpointType: WebFunctionEndpointType.HOME_REGION,
+    });
+
+    expect(WebFunctionEndpoint.isWebFunctionEndpoint(fn.endpoint)).toBe(true);
+    expect(WebFunctionEndpoint.isWebFunctionEndpoint(imported)).toBe(false);
+    expect(WebFunctionEndpoint.isWebFunctionEndpoint(fn)).toBe(false);
+    expect(WebFunctionEndpoint.isWebFunctionEndpoint({})).toBe(false);
+    expect(WebFunctionEndpoint.isWebFunctionEndpoint(null)).toBe(false);
+  });
+
+  test('only a home-Region endpoint can be added to a function with a network connector', () => {
+    const stack = new Stack();
+    const connector = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Connector',
+      'arn:aws:lambda:us-east-1:123456789012:network-connector:my-connector:1');
+    const fn = new WebFunction(stack, 'Fn', minimalProps({ egressNetworkConnector: connector }));
+
+    expect(() => fn.addEndpoint('Global', {
+      authType: WebFunctionAuthType.IAM_AUTH,
+      endpointLocation: WebFunctionEndpointLocation.multiRegion(['us-east-1']),
+    })).toThrow(/egressNetworkConnector is only supported with a HomeRegion endpoint/);
+    expect(() => fn.addEndpoint('Home', { authType: WebFunctionAuthType.IAM_AUTH })).not.toThrow();
+  });
+
+  test('only a home-Region standalone endpoint can serve a function with a network connector', () => {
+    const stack = new Stack();
+    const connector = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Connector',
+      'arn:aws:lambda:us-east-1:123456789012:network-connector:my-connector:1');
+    const fn = new WebFunction(stack, 'Fn', minimalProps({ egressNetworkConnector: connector }));
+    const endpoint = (id: string, endpointLocation?: WebFunctionEndpointLocation) => new WebFunctionEndpoint(stack, id, {
+      webFunction: fn,
+      authType: WebFunctionAuthType.IAM_AUTH,
+      traffic: WebFunctionTraffic.single(fn.revisionId),
+      endpointLocation,
+    });
+
+    expect(() => endpoint('Global', WebFunctionEndpointLocation.perRegion(['eu-west-1'])))
+      .toThrow(/egressNetworkConnector is only supported with a HomeRegion endpoint, got PerRegion/);
+    expect(() => endpoint('Home')).not.toThrow();
+  });
+
+  test('warns on its own path for an APPLICATION_MANAGED endpoint', () => {
+    const stack = new Stack();
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    fn.addEndpoint('Public', { authType: WebFunctionAuthType.APPLICATION_MANAGED });
+
+    Annotations.fromStack(stack).hasWarning('/Default/Fn/Public', Match.stringLikeRegexp('APPLICATION_MANAGED'));
+    Annotations.fromStack(stack).hasNoWarning('/Default/Fn/Endpoint', Match.stringLikeRegexp('APPLICATION_MANAGED'));
+  });
+});
+
+describe('grants.invoke', () => {
+  let stack: Stack;
+  let caller: Role;
+  beforeEach(() => {
+    stack = new Stack();
+    caller = new Role(stack, 'Caller', { assumedBy: new ServicePrincipal('ec2.amazonaws.com') });
+  });
+
+  test('grants InvokeWebFunctionEndpoint on the endpoint', () => {
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    fn.endpoint.grants.invoke(caller);
+
+    Template.fromStack(stack).hasResourceProperties('AWS::IAM::Policy', {
+      Roles: [{ Ref: Match.stringLikeRegexp('Caller') }],
+      PolicyDocument: {
+        Statement: [{
+          Action: 'lambda:InvokeWebFunctionEndpoint',
+          Effect: 'Allow',
+          Resource: stack.resolve(fn.endpoint.endpointArn),
+        }],
+      },
+    });
+  });
+
+  test('each endpoint grants only on itself', () => {
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    const second = fn.addEndpoint('Second', { authType: WebFunctionAuthType.IAM_AUTH });
+    second.grants.invoke(caller);
+
+    Template.fromStack(stack).hasResourceProperties('AWS::IAM::Policy', {
+      PolicyDocument: {
+        Statement: [Match.objectLike({ Resource: stack.resolve(second.endpointArn) })],
+      },
+    });
+  });
+});
+
+describe('resource-based policy', () => {
+  let stack: Stack;
+  beforeEach(() => {
+    stack = new Stack(undefined, undefined, { env: { account: '111111111111', region: 'us-east-1' } });
+  });
+
+  test('a same-account role is granted in its own policy, not in a resource policy', () => {
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    fn.endpoint.grants.invoke(new Role(stack, 'Caller', { assumedBy: new ServicePrincipal('ec2.amazonaws.com') }));
+
+    Template.fromStack(stack).resourceCountIs('AWS::Lambda::ResourcePolicy', 0);
+  });
+
+  test('a service principal is granted in the function\'s resource policy, with its conditions', () => {
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    const distributionArn = 'arn:aws:cloudfront::111111111111:distribution/EDFDVBD6EXAMPLE';
+    fn.endpoint.grants.invoke(new ServicePrincipal('cloudfront.amazonaws.com', {
+      conditions: { ArnLike: { 'aws:SourceArn': distributionArn } },
+    }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::ResourcePolicy', {
+      ResourceArn: stack.resolve(fn.webFunctionArn),
+      PolicyDocument: {
+        Statement: [{
+          Sid: Match.anyValue(),
+          Action: 'lambda:InvokeWebFunctionEndpoint',
+          Effect: 'Allow',
+          Principal: { Service: 'cloudfront.amazonaws.com' },
+          Resource: stack.resolve(fn.endpoint.endpointArn),
+          Condition: { ArnLike: { 'aws:SourceArn': distributionArn } },
+        }],
+      },
+    });
+  });
+
+  test('another account is granted in the function\'s resource policy', () => {
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    fn.endpoint.grants.invoke(new AccountPrincipal('222222222222'));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::ResourcePolicy', {
+      PolicyDocument: {
+        Statement: [Match.objectLike({
+          Principal: { AWS: { 'Fn::Join': ['', ['arn:', { Ref: 'AWS::Partition' }, ':iam::222222222222:root']] } },
+        })],
+      },
+    });
+  });
+
+  test('grants on several endpoints and direct statements share one policy', () => {
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    const second = fn.addEndpoint('Second', { authType: WebFunctionAuthType.IAM_AUTH });
+    fn.endpoint.grants.invoke(new ServicePrincipal('cloudfront.amazonaws.com'));
+    second.grants.invoke(new ServicePrincipal('cloudfront.amazonaws.com'));
+    fn.addToResourcePolicy(new PolicyStatement({
+      actions: ['lambda:InvokeWebFunctionEndpoint'],
+      principals: [new AccountPrincipal('333333333333')],
+      resources: [second.endpointArn],
+    }));
+
+    const template = Template.fromStack(stack);
+    template.resourceCountIs('AWS::Lambda::ResourcePolicy', 1);
+    template.hasResourceProperties('AWS::Lambda::ResourcePolicy', {
+      PolicyDocument: {
+        Statement: [
+          Match.objectLike({ Resource: stack.resolve(fn.endpoint.endpointArn) }),
+          Match.objectLike({ Resource: stack.resolve(second.endpointArn) }),
+          Match.objectLike({ Principal: Match.objectLike({ AWS: Match.anyValue() }) }),
+        ],
+      },
+    });
+  });
+
+  test('a standalone endpoint of a WebFunction defined in the app adds to that function\'s policy', () => {
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    const endpoint = new WebFunctionEndpoint(stack, 'Standalone', {
+      webFunction: fn,
+      traffic: WebFunctionTraffic.single(fn.revisionId),
+      authType: WebFunctionAuthType.IAM_AUTH,
+    });
+    endpoint.grants.invoke(new ServicePrincipal('cloudfront.amazonaws.com'));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::ResourcePolicy', {
+      ResourceArn: stack.resolve(fn.webFunctionArn),
+      PolicyDocument: { Statement: [Match.objectLike({ Resource: stack.resolve(endpoint.endpointArn) })] },
+    });
+  });
+
+  describe('an endpoint in a different stack from its function', () => {
+    const setup = (endpointName?: string) => {
+      const app = new App();
+      const env = { account: '111111111111', region: 'us-east-1' };
+      const functionStack = new Stack(app, 'FunctionStack', { env });
+      const endpointStack = new Stack(app, 'EndpointStack', { env });
+      const fn = new WebFunction(functionStack, 'Fn', minimalProps());
+      const endpoint = new WebFunctionEndpoint(endpointStack, 'Endpoint', {
+        webFunction: fn,
+        traffic: WebFunctionTraffic.single(fn.revisionId),
+        authType: WebFunctionAuthType.IAM_AUTH,
+        endpointName,
+      });
+      return { app, functionStack, fn, endpoint };
+    };
+
+    test('grants in the function\'s policy without a cyclic reference', () => {
+      const { app, functionStack, fn, endpoint } = setup('edge');
+      endpoint.grants.invoke(new ServicePrincipal('cloudfront.amazonaws.com'));
+
+      expect(() => app.synth()).not.toThrow();
+      Template.fromStack(functionStack).hasResourceProperties('AWS::Lambda::ResourcePolicy', {
+        PolicyDocument: {
+          Statement: [Match.objectLike({
+            Resource: { 'Fn::Join': ['', [functionStack.resolve(fn.webFunctionArn), '/endpoint/edge']] },
+          })],
+        },
+      });
+    });
+
+    test('uses the default name when none is given', () => {
+      const { app, endpoint } = setup();
+      endpoint.grants.invoke(new ServicePrincipal('cloudfront.amazonaws.com'));
+
+      expect(() => app.synth()).not.toThrow();
+    });
+
+    test('rejects a grant in the function\'s policy when the endpoint name is a deploy-time value', () => {
+      const { endpoint } = setup(Fn.importValue('Name'));
+      expect(() => endpoint.grants.invoke(new ServicePrincipal('cloudfront.amazonaws.com')))
+        .toThrow(/endpoint name is a deploy-time value/);
+    });
+
+    test('grants a role in the same account in its own policy even when the endpoint name is a deploy-time value', () => {
+      const { app, endpoint } = setup(Fn.importValue('Name'));
+      const roleStack = new Stack(app, 'RoleStack', { env: { account: '111111111111', region: 'us-east-1' } });
+      const role = new Role(roleStack, 'Role', { assumedBy: new ServicePrincipal('ec2.amazonaws.com') });
+
+      endpoint.grants.invoke(role);
+
+      expect(() => app.synth()).not.toThrow();
+      Template.fromStack(roleStack).hasResourceProperties('AWS::IAM::Policy', {
+        PolicyDocument: { Statement: [Match.objectLike({ Action: 'lambda:InvokeWebFunctionEndpoint' })] },
+      });
+    });
+
+    test('an endpoint in the function\'s stack is named by its own ARN', () => {
+      const fn = new WebFunction(stack, 'Fn', minimalProps());
+      fn.endpoint.grants.invoke(new ServicePrincipal('cloudfront.amazonaws.com'));
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::ResourcePolicy', {
+        PolicyDocument: { Statement: [Match.objectLike({ Resource: stack.resolve(fn.endpoint.endpointArn) })] },
+      });
+    });
+  });
+
+  test('an imported WebFunction does not get a resource policy and warns', () => {
+    const fn = WebFunction.fromWebFunctionArn(stack, 'Fn', 'arn:aws:lambda:us-east-1:111111111111:web-function/existing');
+    const result = fn.addToResourcePolicy(new PolicyStatement({
+      actions: ['lambda:InvokeWebFunctionEndpoint'],
+      principals: [new ServicePrincipal('cloudfront.amazonaws.com')],
+      resources: ['*'],
+    }));
+
+    expect(result.statementAdded).toBe(false);
+    Template.fromStack(stack).resourceCountIs('AWS::Lambda::ResourcePolicy', 0);
+    Annotations.fromStack(stack).hasWarning('*', Match.stringLikeRegexp('imported WebFunction cannot be added to'));
+  });
+
+  test('an imported endpoint warns when a service principal is granted', () => {
+    const imported = WebFunctionEndpoint.fromWebFunctionEndpointAttributes(stack, 'Imported', {
+      endpointArn: 'arn:aws:lambda:us-east-1:111111111111:web-function/existing/endpoint/prod',
+      domainName: 'abc.lambda-web.global.on.aws',
+      endpointType: WebFunctionEndpointType.HOME_REGION,
+    });
+    imported.grants.invoke(new ServicePrincipal('cloudfront.amazonaws.com'));
+
+    Template.fromStack(stack).resourceCountIs('AWS::Lambda::ResourcePolicy', 0);
+    Annotations.fromStack(stack).hasWarning('*', Match.stringLikeRegexp('function is not defined in this app'));
+  });
+});
+
+describe('WebFunctionEndpoint.fromWebFunctionEndpointAttributes', () => {
+  const endpointArn = 'arn:aws:lambda:us-east-1:123456789012:web-function/existing/endpoint/prod';
+
+  test('carries the given attributes and the function ARN derived from the endpoint ARN', () => {
+    const stack = new Stack();
+    const imported = WebFunctionEndpoint.fromWebFunctionEndpointAttributes(stack, 'Imported', {
+      endpointArn,
+      domainName: 'abc.lambda-web.global.on.aws',
+      endpointType: WebFunctionEndpointType.MULTI_REGION,
+    });
+
+    expect(imported.endpointArn).toEqual(endpointArn);
+    expect(imported.domainName).toEqual('abc.lambda-web.global.on.aws');
+    expect(imported.endpointType).toEqual(WebFunctionEndpointType.MULTI_REGION);
+    expect(imported.webFunctionArn).toEqual('arn:aws:lambda:us-east-1:123456789012:web-function/existing');
+    expect(imported.env).toEqual({ account: '123456789012', region: 'us-east-1' });
+  });
+
+  test('derives the function ARN at deploy time from a token endpoint ARN', () => {
+    const stack = new Stack();
+    const token = Fn.importValue('EndpointArn');
+    const imported = WebFunctionEndpoint.fromWebFunctionEndpointAttributes(stack, 'Imported', {
+      endpointArn: token,
+      domainName: 'abc.lambda-web.global.on.aws',
+      endpointType: WebFunctionEndpointType.HOME_REGION,
+    });
+
+    expect(stack.resolve(imported.webFunctionArn)).toEqual({
+      'Fn::Select': [0, { 'Fn::Split': ['/endpoint/', { 'Fn::ImportValue': 'EndpointArn' }] }],
+    });
+  });
+
+  test('can be granted on', () => {
+    const stack = new Stack();
+    const caller = new Role(stack, 'Caller', { assumedBy: new ServicePrincipal('ec2.amazonaws.com') });
+    const imported = WebFunctionEndpoint.fromWebFunctionEndpointAttributes(stack, 'Imported', {
+      endpointArn,
+      domainName: 'abc.lambda-web.global.on.aws',
+      endpointType: WebFunctionEndpointType.HOME_REGION,
+    });
+    imported.grants.invoke(caller);
+
+    Template.fromStack(stack).hasResourceProperties('AWS::IAM::Policy', {
+      PolicyDocument: {
+        Statement: [Match.objectLike({ Action: 'lambda:InvokeWebFunctionEndpoint', Resource: endpointArn })],
+      },
+    });
+  });
+});
+
+describe('a standalone WebFunctionEndpoint', () => {
+  test('serves an imported function\'s revision', () => {
+    const stack = new Stack();
+    const fn = WebFunction.fromWebFunctionArn(stack, 'Fn', 'arn:aws:lambda:us-east-1:123456789012:web-function/existing');
+    new WebFunctionEndpoint(stack, 'Endpoint', {
+      webFunction: fn,
+      traffic: WebFunctionTraffic.single('rev-abc'),
+      authType: WebFunctionAuthType.IAM_AUTH,
+    });
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionEndpoint', {
+      FunctionName: 'arn:aws:lambda:us-east-1:123456789012:web-function/existing',
+      RevisionWeights: [{ RevisionId: 'rev-abc', Weight: 100 }],
+      EndpointName: Match.stringLikeRegexp('^Endpoint.*-[0-9a-f]{8}$'),
+    });
+  });
+});
diff --git a/packages/aws-cdk-lib/aws-lambda/test/webfunction.test.ts b/packages/aws-cdk-lib/aws-lambda/test/webfunction.test.ts
new file mode 100644
index 0000000000000..bd2c6d459402c
--- /dev/null
+++ b/packages/aws-cdk-lib/aws-lambda/test/webfunction.test.ts
@@ -0,0 +1,1315 @@
+import { Annotations, Match, Template } from '../../assertions';
+import * as ec2 from '../../aws-ec2';
+import { PolicyStatement, Role, ServicePrincipal } from '../../aws-iam';
+import { Alias, Key } from '../../aws-kms';
+import { LogGroup } from '../../aws-logs';
+import { Bucket } from '../../aws-s3';
+import * as ssm from '../../aws-ssm';
+import { App, CfnParameter, Fn, NestedStack, Stack, Tags, Duration } from '../../core';
+import { ValidationError } from '../../core/lib/errors';
+import { lit } from '../../core/lib/private/literal-string';
+import { NetworkConnector, NetworkConnectorComputeType, NetworkConnectorConfiguration, NetworkConnectorProtocol } from '../lib/network-connector';
+import { WebFunction } from '../lib/webfunction';
+import type { WebFunctionProps } from '../lib/webfunction';
+import { WebFunctionCode } from '../lib/webfunction-code';
+import { WebFunctionAuthType, WebFunctionEndpointLocation, WebFunctionEndpointType } from '../lib/webfunction-endpoint';
+import { WebFunctionRuntime } from '../lib/webfunction-runtime';
+
+// Use a mock bucket object for minimal test props. It behaves like an
+// imported bucket: no inspectable versioning and a no-op resource policy.
+const mockBucket = {
+  bucketName: 'my-code-bucket',
+  bucketArn: 'arn:aws:s3:::my-code-bucket',
+  arnForObjects: (key: string) => `arn:aws:s3:::my-code-bucket/${key}`,
+  addToResourcePolicy: () => ({ statementAdded: false }),
+  node: { addr: '', defaultChild: undefined },
+} as any;
+
+const minimalProps = (overrides: Record = {}) => ({
+  code: WebFunctionCode.fromBucket(mockBucket, 'code.zip'),
+  runtime: WebFunctionRuntime.NODEJS_24_X,
+  defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+  ...overrides,
+});
+
+describe('WebFunction validation', () => {
+  let stack: Stack;
+
+  beforeEach(() => {
+    stack = new Stack();
+  });
+
+  test('isWebFunction recognizes a WebFunction only', () => {
+    const fn = new WebFunction(stack, 'Test', minimalProps());
+    const imported = WebFunction.fromWebFunctionArn(stack, 'Imported',
+      'arn:aws:lambda:us-east-1:123456789012:web-function/other');
+
+    expect(WebFunction.isWebFunction(fn)).toBe(true);
+    expect(WebFunction.isWebFunction(imported)).toBe(false);
+    expect(WebFunction.isWebFunction(stack)).toBe(false);
+    expect(WebFunction.isWebFunction({})).toBe(false);
+    expect(WebFunction.isWebFunction(null)).toBe(false);
+  });
+
+  describe('functionName', () => {
+    test('throws when name exceeds 64 characters', () => {
+      expect(() => {
+        new WebFunction(
+          stack,
+          'Test',
+          minimalProps({ webFunctionName: 'a'.repeat(65) }),
+        );
+      }).toThrow(/must be 2 to 64 characters/);
+    });
+
+    test('throws when name contains invalid characters', () => {
+      expect(() => {
+        new WebFunction(
+          stack,
+          'Test',
+          minimalProps({ webFunctionName: 'invalid name!' }),
+        );
+      }).toThrow(/must be 2 to 64 characters of letters, numbers, hyphens or underscores/);
+    });
+
+    test('throws when name starts or ends with a hyphen or underscore', () => {
+      // The service's own regex excludes them at either end.
+      for (const name of ['-leading', 'trailing-', '_leading', 'trailing_']) {
+        expect(() => new WebFunction(stack, `Test${name}`, minimalProps({ webFunctionName: name })))
+          .toThrow(/starting and ending with a letter or number/);
+      }
+    });
+
+    test('throws on a single character and on an empty name', () => {
+      // An empty name used to skip validation entirely and reach the template.
+      for (const name of ['a', '']) {
+        expect(() => new WebFunction(stack, `Test${name}`, minimalProps({ webFunctionName: name })))
+          .toThrow(/must be 2 to 64 characters/);
+      }
+    });
+
+    test('accepts valid name with hyphens and underscores', () => {
+      expect(() => {
+        new WebFunction(
+          stack,
+          'Test',
+          minimalProps({ webFunctionName: 'my-valid_function-01' }),
+        );
+      }).not.toThrow();
+    });
+
+    test('accepts name at exactly 64 characters', () => {
+      expect(() => {
+        new WebFunction(
+          stack,
+          'Test',
+          minimalProps({ webFunctionName: 'a'.repeat(64) }),
+        );
+      }).not.toThrow();
+    });
+
+    test('validates endpointName by the same rule', () => {
+      // The service uses one regex for both names.
+      for (const name of ['-leading', 'a', 'a'.repeat(65), 'bad name']) {
+        expect(() => new WebFunction(stack, `Test${name}`, minimalProps({ defaultEndpoint: { endpointName: name } })))
+          .toThrow(/Endpoint name .* must be 2 to 64 characters/);
+      }
+      expect(() => new WebFunction(stack, 'Ok', minimalProps({ defaultEndpoint: { endpointName: 'my-endpoint_01' } })))
+        .not.toThrow();
+    });
+
+    test('auto-generated name obeys the CFN FunctionName contract', () => {
+      // No webFunctionName — the construct calls generatePhysicalName() so an
+      // env-agnostic stack still produces the CFN-required FunctionName.
+      // Guards the { maxLength: 40 } + charset contract stated on the override.
+      new WebFunction(stack, 'MyLongLogicalIdWebFunction', minimalProps());
+      const resources = Template.fromStack(stack).findResources('AWS::Lambda::WebFunction');
+      const generatedName = Object.values(resources)[0].Properties.FunctionName;
+      expect(typeof generatedName).toBe('string');
+      expect(generatedName.length).toBeLessThanOrEqual(40);
+      expect(generatedName).toMatch(/^[a-zA-Z0-9][a-zA-Z0-9_-]{0,62}[a-zA-Z0-9]$/);
+    });
+  });
+
+  describe('revisionDescription', () => {
+    test('throws when description exceeds 256 characters', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ revisionDescription: 'a'.repeat(257) }));
+      }).toThrow(/cannot be longer than 256 characters/);
+    });
+
+    test('accepts description at exactly 256 characters', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ revisionDescription: 'a'.repeat(256) }));
+      }).not.toThrow(/cannot be longer than 256 characters/);
+    });
+  });
+
+  describe('timeout', () => {
+    test('throws when timeout is less than 1 second', () => {
+      expect(() => {
+        new WebFunction(
+          stack,
+          'Test',
+          minimalProps({ timeout: Duration.seconds(0) }),
+        );
+      }).toThrow(/Timeout must be an integer between 3 and 900 seconds/);
+    });
+
+    test('throws when timeout exceeds 900 seconds', () => {
+      expect(() => {
+        new WebFunction(
+          stack,
+          'Test',
+          minimalProps({ timeout: Duration.seconds(901) }),
+        );
+      }).toThrow(/Timeout must be an integer between 3 and 900 seconds/);
+    });
+
+    test('throws when timeout is not an integer', () => {
+      expect(() => {
+        new WebFunction(
+          stack,
+          'Test',
+          minimalProps({ timeout: Duration.millis(1500) }),
+        );
+      }).toThrow(/Timeout must be an integer between 3 and 900 seconds/);
+    });
+
+    test('accepts timeout at min boundary', () => {
+      expect(() => {
+        new WebFunction(
+          stack,
+          'Test',
+          minimalProps({ timeout: Duration.seconds(3) }),
+        );
+      }).not.toThrow(/Timeout must be/);
+    });
+
+    test('accepts timeout at max boundary', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ timeout: Duration.seconds(900) }));
+      }).not.toThrow(/Timeout must be/);
+    });
+
+    test('passes a deploy-time value in seconds through unchecked', () => {
+      const seconds = new CfnParameter(stack, 'Timeout', { type: 'Number' });
+      new WebFunction(stack, 'Test', minimalProps({ timeout: Duration.seconds(seconds.valueAsNumber) }));
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+        ServiceConfig: { TimeoutSeconds: { Ref: 'Timeout' } },
+      });
+    });
+
+    // TimeoutSeconds is a number of seconds and CloudFormation has no arithmetic, so a
+    // deploy-time value in another unit cannot be converted. Duration rejects it and names the fix.
+    test('rejects a deploy-time value in another unit', () => {
+      const minutes = new CfnParameter(stack, 'Timeout', { type: 'Number' });
+
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ timeout: Duration.minutes(minutes.valueAsNumber) }));
+      }).toThrow(/Duration must be specified as 'Duration.seconds\(\)'/);
+    });
+  });
+
+  describe('maxConcurrencyPerEnvironment', () => {
+    test.each([0, 129, 1.5])('throws when value is %p', (value) => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ maxConcurrencyPerEnvironment: value }));
+      }).toThrow(/maxConcurrencyPerEnvironment must be an integer between 1 and 128/);
+    });
+
+    test.each([1, 128])('accepts boundary value %p', (value) => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ maxConcurrencyPerEnvironment: value }));
+      }).not.toThrow();
+    });
+
+    test('accepts a deploy-time value it cannot check', () => {
+      const value = new CfnParameter(stack, 'Concurrency', { type: 'Number' }).valueAsNumber;
+
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ maxConcurrencyPerEnvironment: value }));
+      }).not.toThrow();
+    });
+  });
+
+  describe('endpointDescription', () => {
+    test('throws when longer than 256 characters', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ defaultEndpoint: { endpointDescription: 'a'.repeat(257) } }));
+      }).toThrow(/Endpoint description cannot be longer than 256 characters/);
+    });
+
+    test('accepts 256 characters', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ defaultEndpoint: { endpointDescription: 'a'.repeat(256) } }));
+      }).not.toThrow();
+    });
+  });
+
+  describe('maxEnvironments', () => {
+    test.each([1, 2.5])('throws when value is %p', (value) => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ defaultEndpoint: { maxEnvironments: value } }));
+      }).toThrow(/maxEnvironments must be an integer of 2 or greater/);
+    });
+
+    test('accepts the lower boundary', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ defaultEndpoint: { maxEnvironments: 2 } }));
+      }).not.toThrow();
+    });
+
+    test('accepts a large value, since the schema declares no upper bound', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ defaultEndpoint: { maxEnvironments: 100000 } }));
+      }).not.toThrow();
+    });
+  });
+
+  describe('rateLimit', () => {
+    test.each([-1, 0.5])('throws when value is %p', (value) => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ defaultEndpoint: { rateLimit: value } }));
+      }).toThrow(/rateLimit must be an integer of 0 or greater/);
+    });
+
+    test('accepts zero, which the schema allows', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({ defaultEndpoint: { rateLimit: 0 } }));
+      }).not.toThrow();
+    });
+  });
+
+  describe('endpointLocation', () => {
+    test('maps each location to its endpoint type and regions', () => {
+      const props = (location?: WebFunctionEndpointLocation) => {
+        const s = new Stack();
+        new WebFunction(s, 'Test', minimalProps({ defaultEndpoint: { endpointLocation: location } }));
+        const [endpoint] = Object.values(Template.fromStack(s).findResources('AWS::Lambda::WebFunctionEndpoint'));
+        return endpoint.Properties;
+      };
+      const regions = ['us-east-1', 'us-west-2'];
+
+      expect(props()).toMatchObject({ EndpointType: 'HomeRegion' });
+      expect(props()).not.toHaveProperty('Regions');
+      expect(props(WebFunctionEndpointLocation.homeRegion())).toMatchObject({ EndpointType: 'HomeRegion' });
+      expect(props(WebFunctionEndpointLocation.multiRegion(regions)))
+        .toMatchObject({ EndpointType: 'MultiRegion', Regions: ['us-east-1', 'us-west-2'] });
+      expect(props(WebFunctionEndpointLocation.perRegion(regions)))
+        .toMatchObject({ EndpointType: 'PerRegion', Regions: ['us-east-1', 'us-west-2'] });
+    });
+
+    test('exposes the endpoint type and replica regions', () => {
+      const regions = ['us-east-1'];
+      const location = WebFunctionEndpointLocation.perRegion(regions);
+      expect(location.endpointType).toEqual(WebFunctionEndpointType.PER_REGION);
+      expect(location.replicaRegions).toBe(regions);
+      expect(WebFunctionEndpointLocation.homeRegion().replicaRegions).toBeUndefined();
+    });
+
+    test('throws when MULTI_REGION replicaRegions resolves to empty list', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({
+          defaultEndpoint: {
+            endpointLocation: WebFunctionEndpointLocation.multiRegion(
+              []),
+          },
+        }));
+      }).toThrow(/at least one replica Region other than the stack's own Region/);
+    });
+
+    test('throws when PER_REGION replicaRegions resolves to empty list', () => {
+      expect(() => {
+        new WebFunction(stack, 'Test', minimalProps({
+          defaultEndpoint: {
+            endpointLocation: WebFunctionEndpointLocation.perRegion(
+              []),
+          },
+        }));
+      }).toThrow(/at least one replica Region other than the stack's own Region/);
+    });
+
+    test('passes a deploy-time replicaRegions list through to the endpoint without validating it', () => {
+      const regions = Fn.split(',', new CfnParameter(stack, 'Regions').valueAsString);
+      new WebFunction(stack, 'Test', minimalProps({
+        defaultEndpoint: { endpointLocation: WebFunctionEndpointLocation.multiRegion(regions) },
+      }));
+
+      Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionEndpoint', {
+        Regions: { 'Fn::Split': [',', { Ref: 'Regions' }] },
+      });
+    });
+  });
+});
+
+describe('WebFunctionEndpointLocation regions', () => {
+  const inRegion = (region?: string) => new Stack(undefined, 'S', region ? { env: { region, account: '123456789012' } } : {});
+
+  test('drops duplicates and sorts', () => {
+    expect(WebFunctionEndpointLocation.multiRegion(['us-west-2', 'eu-west-1', 'us-west-2'])._regionList(inRegion('us-east-1')))
+      .toEqual(['eu-west-1', 'us-west-2']);
+  });
+
+  test("drops the stack's Region", () => {
+    expect(WebFunctionEndpointLocation.perRegion(['us-east-1', 'eu-west-1'])._regionList(inRegion('us-east-1')))
+      .toEqual(['eu-west-1']);
+  });
+
+  test("keeps every Region when the stack's Region is not known", () => {
+    expect(WebFunctionEndpointLocation.perRegion(['us-east-1', 'eu-west-1'])._regionList(inRegion()))
+      .toEqual(['eu-west-1', 'us-east-1']);
+  });
+
+  test('passes a deploy-time list, or one holding a deploy-time Region, through unchanged', () => {
+    const stack = inRegion('us-east-1');
+    const list = Fn.split(',', new CfnParameter(stack, 'Regions').valueAsString);
+    expect(WebFunctionEndpointLocation.multiRegion(list)._regionList(stack)).toBe(list);
+    const mixed = ['us-east-1', new CfnParameter(stack, 'Region').valueAsString];
+    expect(WebFunctionEndpointLocation.multiRegion(mixed)._regionList(stack)).toBe(mixed);
+  });
+
+  test.each(['multiRegion', 'perRegion'] as const)("%s rejects a list of only the stack's Region", (factory) => {
+    const stack = inRegion('us-east-1');
+    expect(() => new WebFunction(stack, 'Fn', minimalProps({
+      defaultEndpoint: { endpointLocation: WebFunctionEndpointLocation[factory](['us-east-1']) },
+    }))).toThrow(/at least one replica Region other than the stack's own Region/);
+  });
+
+  test('the default name and Regions do not change with order, duplicates or the home Region', () => {
+    const rendered = (regions: string[]) => {
+      const stack = inRegion('us-east-1');
+      new WebFunction(stack, 'Fn', minimalProps({
+        defaultEndpoint: { endpointLocation: WebFunctionEndpointLocation.multiRegion(regions) },
+      }));
+      const [endpoint] = Object.values(Template.fromStack(stack).findResources('AWS::Lambda::WebFunctionEndpoint'));
+      return { name: endpoint.Properties.EndpointName, regions: endpoint.Properties.Regions };
+    };
+    const base = rendered(['eu-west-1', 'us-west-2']);
+    expect(base.regions).toEqual(['eu-west-1', 'us-west-2']);
+    expect(rendered(['us-west-2', 'eu-west-1'])).toEqual(base);
+    expect(rendered(['us-east-1', 'us-west-2', 'eu-west-1', 'eu-west-1'])).toEqual(base);
+    expect(rendered(['eu-west-1'])).not.toEqual(base);
+  });
+});
+
+describe('WebFunction template', () => {
+  let stack: Stack;
+
+  beforeEach(() => {
+    stack = new Stack();
+  });
+
+  test('creates all three CFN resources', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func' }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.resourceCountIs('AWS::Lambda::WebFunction', 1);
+    template.resourceCountIs('AWS::Lambda::WebFunctionRevision', 1);
+    template.resourceCountIs('AWS::Lambda::WebFunctionEndpoint', 1);
+  });
+
+  test('WebFunction resource carries the function name, and Tags.of tags it', () => {
+    // Only AWS::Lambda::WebFunction is taggable; the revision and endpoint are not.
+    const fn = new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func' }),
+    );
+    Tags.of(fn).add('env', 'prod');
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunction', {
+      FunctionName: 'my-func',
+      Tags: Match.arrayWith([
+        Match.objectLike({ Key: 'env', Value: 'prod' }),
+      ]),
+    });
+  });
+
+  test('the tags prop tags the WebFunction resource', () => {
+    new WebFunction(stack, 'Test', minimalProps({ webFunctionName: 'my-func', tags: { env: 'prod' } }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunction', {
+      Tags: [{ Key: 'env', Value: 'prod' }],
+    });
+  });
+
+  test('WebFunctionRevision carries maxConcurrencyPerEnvironment in ServiceConfig', () => {
+    new WebFunction(stack, 'Test', minimalProps({ maxConcurrencyPerEnvironment: 32 }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: Match.objectLike({ MaxConcurrencyPerEnvironment: 32 }),
+    });
+  });
+
+  test('WebFunctionEndpoint carries the description, scaling and throttle settings', () => {
+    new WebFunction(stack, 'Test', minimalProps({
+      defaultEndpoint: {
+        endpointDescription: 'my endpoint',
+        maxEnvironments: 50,
+        rateLimit: 500,
+      },
+    }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionEndpoint', {
+      Description: 'my endpoint',
+      ScalingConfig: { MaxEnvironments: 50 },
+      ThrottleConfig: { RateLimit: 500 },
+    });
+  });
+
+  test('omits the optional revision and endpoint settings when not configured', () => {
+    // ScalingConfig and ThrottleConfig each wrap a single member, so they must be left out
+    // entirely rather than emitted as empty objects — an empty struct would override the
+    // service defaults with nothing.
+    new WebFunction(stack, 'Test', minimalProps());
+    const template = Template.fromStack(stack);
+
+    const revision = Object.values(template.findResources('AWS::Lambda::WebFunctionRevision'))[0] as any;
+    expect(revision.Properties.ServiceConfig).not.toHaveProperty('MaxConcurrencyPerEnvironment');
+
+    const endpoint = Object.values(template.findResources('AWS::Lambda::WebFunctionEndpoint'))[0] as any;
+    expect(endpoint.Properties).not.toHaveProperty('Description');
+    expect(endpoint.Properties).not.toHaveProperty('ScalingConfig');
+    expect(endpoint.Properties).not.toHaveProperty('ThrottleConfig');
+  });
+
+  test('WebFunctionRevision sets KmsKeyArn from a customer-managed key', () => {
+    const key = new Key(stack, 'Key');
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func', kmsKey: key }),
+    );
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      KmsKeyArn: { 'Fn::GetAtt': [Match.stringLikeRegexp('Key'), 'Arn'] },
+    });
+  });
+
+  test('grants the Lambda service principal usage of the environment variable key', () => {
+    const key = new Key(stack, 'Key');
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func', kmsKey: key }),
+    );
+
+    Template.fromStack(stack).hasResourceProperties('AWS::KMS::Key', {
+      KeyPolicy: {
+        Statement: Match.arrayWith([
+          Match.objectLike({
+            Effect: 'Allow',
+            Principal: { Service: 'lambda.amazonaws.com' },
+            Action: [
+              'kms:Decrypt',
+              'kms:GenerateDataKey',
+              'kms:DescribeKey',
+            ],
+            // Scoped so another account cannot induce the service to use this key, and so the
+            // service may only use it on behalf of a WebFunction revision in this account.
+            Condition: Match.exact({
+              StringEquals: { 'aws:SourceAccount': { Ref: 'AWS::AccountId' } },
+              ArnLike: {
+                'aws:SourceArn': {
+                  'Fn::Join': ['', [
+                    'arn:', { Ref: 'AWS::Partition' }, ':lambda:', { Ref: 'AWS::Region' }, ':',
+                    { Ref: 'AWS::AccountId' }, ':web-function/*/revision/*',
+                  ]],
+                },
+              },
+            }),
+          }),
+        ]),
+      },
+    });
+  });
+
+  test('functions sharing one key contribute a single key policy statement', () => {
+    const key = new Key(stack, 'Key');
+    new WebFunction(stack, 'First', minimalProps({ kmsKey: key }));
+    new WebFunction(stack, 'Second', minimalProps({ kmsKey: key }));
+    new WebFunction(stack, 'Third', minimalProps({ kmsKey: key }));
+
+    const keys = Template.fromStack(stack).findResources('AWS::KMS::Key');
+    const statements = Object.values(keys)[0].Properties.KeyPolicy.Statement;
+    const serviceStatements = statements.filter(
+      (s: any) => s.Principal?.Service === 'lambda.amazonaws.com',
+    );
+
+    // The condition only varies by account, so the three grants are identical
+    // and collapse. A key shared by many functions does not accumulate
+    // statements toward the key policy size limit.
+    expect(serviceStatements).toHaveLength(1);
+  });
+
+  test('warns when the environment variable key is imported', () => {
+    const imported = Key.fromKeyArn(
+      stack,
+      'Imported',
+      'arn:aws:kms:us-west-2:123456789012:key/abcd1234-1234-1234-1234-abcd1234abcd',
+    );
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func', kmsKey: imported }),
+    );
+
+    Annotations.fromStack(stack).hasWarning(
+      '/Default/Test',
+      Match.stringLikeRegexp('Cannot grant the Lambda service principal usage of the imported KMS key'),
+    );
+  });
+
+  test('rejects a KMS alias defined in the app as kmsKey', () => {
+    // An alias implements IKeyRef, but its keyRef.keyArn is the alias ARN.
+    const alias = new Key(stack, 'Key').addAlias('alias/my-key');
+
+    expect(() => new WebFunction(stack, 'Test', minimalProps({ kmsKey: alias })))
+      .toThrow(/kmsKey must be a KMS key, not an alias/);
+  });
+
+  test('rejects an imported KMS alias as kmsKey', () => {
+    const alias = Alias.fromAliasName(stack, 'Alias', 'alias/my-key');
+
+    expect(() => new WebFunction(stack, 'Test', minimalProps({ kmsKey: alias })))
+      .toThrow(/kmsKey must be a KMS key, not an alias/);
+  });
+
+  test('rejects a key ARN that does not name a key', () => {
+    const notAKey = Key.fromKeyArn(stack, 'NotAKey', 'arn:aws:kms:us-west-2:123456789012:alias/my-key');
+
+    expect(() => new WebFunction(stack, 'Test', minimalProps({ kmsKey: notAKey })))
+      .toThrow(/kmsKey must be a KMS key ARN containing ':key\/', got 'arn:aws:kms:us-west-2:123456789012:alias\/my-key'/);
+  });
+
+  test('WebFunctionRevision has build and service config', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func' }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      FunctionName: { Ref: Match.stringLikeRegexp('Function') },
+      BuildConfig: {
+        CodeConfig: {
+          S3Object: {
+            Bucket: 'my-code-bucket',
+            Key: 'code.zip',
+          },
+        },
+        RuntimeConfig: {
+          Runtime: 'nodejs24.x',
+        },
+      },
+      ServiceConfig: {
+        ExecutionRoleArn: {
+          'Fn::GetAtt': Match.arrayWith([Match.stringLikeRegexp('.*ServiceRole.*')]),
+        },
+        TimeoutSeconds: 30,
+      },
+    });
+  });
+
+  test('WebFunctionRevision uses custom timeout', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({
+        webFunctionName: 'my-func',
+        timeout: Duration.seconds(120),
+      }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: {
+        TimeoutSeconds: 120,
+      },
+    });
+  });
+
+  test('WebFunctionRevision includes environment variables', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({
+        webFunctionName: 'my-func',
+        environment: { NODE_ENV: 'production' },
+      }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: {
+        EnvironmentVariables: { NODE_ENV: 'production' },
+      },
+    });
+  });
+
+  test('entryPoint is injected as AWS_LAMBDA_NODEJS_ENTRYPOINT', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({
+        webFunctionName: 'my-func',
+        entryPoint: 'app.js',
+        environment: { NODE_ENV: 'production' },
+      }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: {
+        EnvironmentVariables: {
+          NODE_ENV: 'production',
+          AWS_LAMBDA_NODEJS_ENTRYPOINT: 'app.js',
+        },
+      },
+    });
+  });
+
+  test('throws when entryPoint is set for a non-Node.js runtime', () => {
+    expect(() => new WebFunction(stack, 'Test', minimalProps({
+      runtime: WebFunctionRuntime.of('python3.13'),
+      entryPoint: 'app.py',
+    }))).toThrow(/entryPoint is only supported for Node.js runtimes, got 'python3.13'/);
+  });
+
+  test('entryPoint is accepted for a Node.js runtime given with of()', () => {
+    new WebFunction(stack, 'Test', minimalProps({
+      runtime: WebFunctionRuntime.of('nodejs26.x'),
+      entryPoint: 'app.js',
+    }));
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: Match.objectLike({
+        EnvironmentVariables: Match.objectLike({ AWS_LAMBDA_NODEJS_ENTRYPOINT: 'app.js' }),
+      }),
+    });
+  });
+
+  test('throws when entryPoint and AWS_LAMBDA_NODEJS_ENTRYPOINT env var are both set', () => {
+    expect(() => {
+      new WebFunction(
+        stack,
+        'Test',
+        minimalProps({
+          webFunctionName: 'my-func',
+          entryPoint: 'app.js',
+          environment: { AWS_LAMBDA_NODEJS_ENTRYPOINT: 'other.js' },
+        }),
+      );
+    }).toThrow(/entryPoint cannot be used together with an AWS_LAMBDA_NODEJS_ENTRYPOINT environment variable/);
+  });
+
+  test('WebFunctionRevision includes telemetry config', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({
+        webFunctionName: 'my-func',
+        applicationLogLevel: 'INFO' as any,
+      }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: {
+        TelemetryConfig: {
+          LoggingConfig: {
+            ApplicationLogLevel: 'INFO',
+          },
+        },
+      },
+    });
+  });
+
+  test('WebFunctionRevision resolves NODEJS_LATEST', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({
+        webFunctionName: 'my-func',
+        runtime: WebFunctionRuntime.NODEJS_LATEST,
+      }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      BuildConfig: {
+        RuntimeConfig: {
+          Runtime: 'nodejs24.x',
+        },
+      },
+    });
+  });
+
+  test('WebFunctionEndpoint has defaults', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func' }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionEndpoint', {
+      FunctionName: { 'Fn::GetAtt': [Match.stringLikeRegexp('Function'), 'FunctionArn'] },
+      EndpointName: 'prod',
+      EndpointType: 'HomeRegion',
+      RevisionWeights: [
+        {
+          RevisionId: Match.anyValue(),
+          Weight: 100,
+        },
+      ],
+    });
+  });
+
+  describe('the default endpoint name follows the endpoint shape', () => {
+    // Type and regions are create-only, like the name, so changing them replaces the endpoint,
+    // which CloudFormation cannot do under the same name.
+    const nameFor = (defaultEndpoint: WebFunctionProps['defaultEndpoint']) => {
+      const s = new Stack();
+      new WebFunction(s, 'Test', minimalProps({ defaultEndpoint }));
+      const [endpoint] = Object.values(Template.fromStack(s).findResources('AWS::Lambda::WebFunctionEndpoint'));
+      return endpoint.Properties.EndpointName;
+    };
+    const multi = (regions: string[]) => ({
+      endpointLocation: WebFunctionEndpointLocation.multiRegion(regions),
+    });
+
+    test('a home-Region endpoint is named prod', () => {
+      expect(nameFor(undefined)).toEqual('prod');
+    });
+
+    test('a regional endpoint gets a name derived from its type and regions', () => {
+      const base = nameFor(multi(['us-east-1', 'us-west-2']));
+      expect(base).toMatch(/^prod-[0-9a-f]{8}$/);
+      expect(nameFor(multi(['us-east-1', 'us-west-2']))).toEqual(base);
+      expect(nameFor(multi(['us-east-1', 'eu-west-1']))).not.toEqual(base);
+      expect(nameFor(multi(['us-west-2', 'us-east-1']))).toEqual(base);
+      expect(nameFor({
+        endpointLocation: WebFunctionEndpointLocation.perRegion(['us-east-1', 'us-west-2']),
+      })).not.toEqual(base);
+    });
+
+    test('an explicit name is used as given', () => {
+      expect(nameFor({ ...multi(['us-east-1']), endpointName: 'live' })).toEqual('live');
+    });
+  });
+
+  test('WebFunctionEndpoint with custom values', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({
+        webFunctionName: 'my-func',
+        defaultEndpoint: {
+          endpointName: 'staging',
+          endpointLocation: WebFunctionEndpointLocation.multiRegion(['us-east-1', 'us-east-2', 'us-west-1', 'us-west-2']),
+        },
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionEndpoint', {
+      EndpointName: 'staging',
+      EndpointType: 'MultiRegion',
+      AuthType: 'IamAuth',
+      Regions: ['us-east-1', 'us-east-2', 'us-west-1', 'us-west-2'],
+    });
+  });
+
+  test('WebFunctionEndpoint with PerRegion type emits regions', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({
+        webFunctionName: 'my-func',
+        defaultEndpoint: {
+          endpointLocation: WebFunctionEndpointLocation.perRegion(['us-east-1', 'us-east-2', 'us-west-1', 'us-west-2']),
+        },
+        defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+      }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionEndpoint', {
+      EndpointType: 'PerRegion',
+      Regions: ['us-east-1', 'us-east-2', 'us-west-1', 'us-west-2'],
+    });
+  });
+
+  test('creates default IAM role', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func' }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::IAM::Role', {
+      AssumeRolePolicyDocument: {
+        Statement: [
+          {
+            Action: 'sts:AssumeRole',
+            Effect: 'Allow',
+            Principal: { Service: 'lambda.amazonaws.com' },
+          },
+        ],
+      },
+      ManagedPolicyArns: [
+        {
+          'Fn::Join': [
+            '',
+            [
+              'arn:',
+              { Ref: 'AWS::Partition' },
+              ':iam::aws:policy/service-role/AWSLambdaBasicExecutionRole',
+            ],
+          ],
+        },
+      ],
+    });
+  });
+
+  test('uses a caller-provided role instead of creating a default one', () => {
+    const role = new Role(stack, 'CustomRole', {
+      assumedBy: new ServicePrincipal('lambda.amazonaws.com'),
+    });
+
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func', role }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: Match.objectLike({
+        ExecutionRoleArn: { 'Fn::GetAtt': [Match.stringLikeRegexp('^CustomRole'), 'Arn'] },
+      }),
+    });
+
+    // The supplied role is the only one in the stack: asserting the ARN alone would still
+    // pass if a default `ServiceRole` were created alongside it and simply left unused.
+    template.resourceCountIs('AWS::IAM::Role', 1);
+  });
+
+  test('revision depends on function', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func' }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResource('AWS::Lambda::WebFunctionRevision', {
+      DependsOn: Match.arrayWith([Match.stringLikeRegexp('.*Function.*')]),
+    });
+  });
+
+  test('endpoint depends on function and revision', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func' }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResource('AWS::Lambda::WebFunctionEndpoint', {
+      DependsOn: Match.arrayWith([
+        Match.stringLikeRegexp('.*Function.*'),
+        Match.stringLikeRegexp('.*Revision.*'),
+      ]),
+    });
+  });
+
+  test('exposes L1 resources and webFunctionArn', () => {
+    const webFunction = new WebFunction(
+      stack,
+      'Test',
+      minimalProps({ webFunctionName: 'my-func' }),
+    );
+
+    expect(webFunction.webFunctionArn).toBeDefined();
+    expect(webFunction.resource).toBeDefined();
+    expect(webFunction.resourceRevision).toBeDefined();
+    expect(webFunction.endpoint.resource).toBeDefined();
+  });
+
+  test('with bucket code', () => {
+    const bucket = new Bucket(stack, 'CodeBucket', { versioned: true });
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({
+        webFunctionName: 'my-func',
+        code: WebFunctionCode.fromBucket(bucket, 'my-function.zip'),
+      }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      BuildConfig: {
+        CodeConfig: {
+          S3Object: {
+            Bucket: { Ref: Match.stringLikeRegexp('CodeBucket.*') },
+            Key: 'my-function.zip',
+          },
+        },
+      },
+    });
+  });
+
+  test('rejects container image code', () => {
+    const mockCode = {
+      bind: () => {
+        throw new ValidationError(lit`WebFunctionContainerImageNotSupported`, 'WebFunction does not support container images.', stack);
+      },
+      bindToResource: () => {},
+    } as any;
+
+    expect(() => {
+      new WebFunction(
+        stack,
+        'Test',
+        minimalProps({
+          webFunctionName: 'my-func',
+          code: mockCode,
+        }),
+      );
+    }).toThrow(/does not support container images/);
+  });
+
+  test('WebFunctionRevision includes full logging config', () => {
+    new WebFunction(
+      stack,
+      'Test',
+      minimalProps({
+        webFunctionName: 'my-func',
+        applicationLogLevel: 'INFO' as any,
+        systemLogLevel: 'INFO' as any,
+      }),
+    );
+    const template = Template.fromStack(stack);
+
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: {
+        TelemetryConfig: {
+          LoggingConfig: {
+            ApplicationLogLevel: 'INFO',
+            SystemLogLevel: 'INFO',
+          },
+        },
+      },
+    });
+  });
+
+  test('creates a log group when none is given', () => {
+    const fn = new WebFunction(stack, 'Test', minimalProps({ webFunctionName: 'my-func' }));
+    const template = Template.fromStack(stack);
+
+    template.resourceCountIs('AWS::Logs::LogGroup', 1);
+    template.hasResourceProperties('AWS::Logs::LogGroup', {
+      LogGroupName: Match.absent(),
+    });
+    template.hasResource('AWS::Logs::LogGroup', { DeletionPolicy: 'Retain' });
+    const logGroupId = Object.keys(template.findResources('AWS::Logs::LogGroup'))[0];
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: {
+        TelemetryConfig: {
+          LoggingConfig: { LogGroup: { Ref: logGroupId } },
+        },
+      },
+    });
+    expect(stack.resolve(fn.logGroup.logGroupRef.logGroupName)).toEqual({ Ref: logGroupId });
+  });
+
+  test('uses the given log group instead of creating one', () => {
+    const logGroup = new LogGroup(stack, 'MyLogs', { logGroupName: 'my-logs' });
+    const fn = new WebFunction(stack, 'Test', minimalProps({ webFunctionName: 'my-func', logGroup }));
+    const template = Template.fromStack(stack);
+
+    expect(fn.logGroup).toBe(logGroup);
+    template.resourceCountIs('AWS::Logs::LogGroup', 1);
+    template.hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: {
+        TelemetryConfig: {
+          LoggingConfig: { LogGroup: { Ref: stack.getLogicalId(logGroup.node.defaultChild as any) } },
+        },
+      },
+    });
+  });
+
+  test('APPLICATION_MANAGED authType emits public endpoint warning', () => {
+    const warningStack = new Stack();
+    new WebFunction(warningStack, 'Test', minimalProps({
+      defaultEndpointAuth: WebFunctionAuthType.APPLICATION_MANAGED,
+    }));
+
+    Annotations.fromStack(warningStack).hasWarning(
+      '/Default/Test/Endpoint',
+      Match.stringLikeRegexp('.*APPLICATION_MANAGED.*'),
+    );
+  });
+
+  test('IAM_AUTH authType does not emit public endpoint warning', () => {
+    const noWarningStack = new Stack();
+    new WebFunction(noWarningStack, 'Test', minimalProps({
+      defaultEndpointAuth: WebFunctionAuthType.IAM_AUTH,
+    }));
+
+    Annotations.fromStack(noWarningStack).hasNoWarning(
+      '*',
+      Match.stringLikeRegexp('APPLICATION_MANAGED'),
+    );
+  });
+});
+
+describe('WebFunction import', () => {
+  let stack: Stack;
+
+  beforeEach(() => {
+    stack = new Stack();
+  });
+
+  const arn = 'arn:aws:lambda:us-west-2:123456789012:web-function/my-function';
+
+  test('fromWebFunctionArn round-trips the ARN', () => {
+    const imported = WebFunction.fromWebFunctionArn(stack, 'Imported', arn);
+
+    expect(imported.webFunctionArn).toEqual(arn);
+    expect(imported.webFunctionRef.functionArn).toEqual(arn);
+  });
+
+  test('an imported WebFunction takes its name from the ARN', () => {
+    const imported = WebFunction.fromWebFunctionArn(stack, 'Imported', arn);
+
+    expect(imported.webFunctionName).toEqual('my-function');
+    expect(imported.webFunctionRef.functionName).toEqual('my-function');
+  });
+
+  test('fromWebFunctionAttributes round-trips the ARN', () => {
+    const imported = WebFunction.fromWebFunctionAttributes(stack, 'Imported', {
+      webFunctionArn: arn,
+    });
+
+    expect(imported.webFunctionArn).toEqual(arn);
+    expect(imported.webFunctionRef.functionArn).toEqual(arn);
+  });
+});
+
+describe('WebFunction egress network connector', () => {
+  const VERSION_ARN = 'arn:aws:lambda:us-west-2:123456789012:network-connector:nc-0123abcd:3';
+  let app: App;
+  let stack: Stack;
+
+  beforeEach(() => {
+    app = new App();
+    stack = new Stack(app, 'Stack', { env: { account: '123456789012', region: 'us-west-2' } });
+  });
+
+  function ownedConnector(
+    scope: Stack, id = 'Connector', computeType = NetworkConnectorComputeType.WEB_FUNCTION,
+  ): NetworkConnector {
+    const vpc = new ec2.Vpc(scope, `${id}Vpc`, { maxAzs: 2, natGateways: 0 });
+    return new NetworkConnector(scope, id, {
+      configuration: NetworkConnectorConfiguration.vpcEgress({
+        computeType,
+        vpc,
+        vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_ISOLATED },
+        securityGroups: [new ec2.SecurityGroup(scope, `${id}Sg`, { vpc })],
+        networkProtocol: NetworkConnectorProtocol.IPV4,
+      }),
+    });
+  }
+
+  test('is omitted from the revision by default', () => {
+    new WebFunction(stack, 'Test', minimalProps());
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: Match.objectLike({ EgressNetworkConnectorArn: Match.absent() }),
+    });
+  });
+
+  test('pins the revision to the latest version of a connector in the same stack', () => {
+    const connector = ownedConnector(stack);
+    new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: Match.objectLike({
+        EgressNetworkConnectorArn: { 'Fn::GetAtt': [Match.stringLikeRegexp('^Connector'), 'LatestVersionArn'] },
+      }),
+    });
+  });
+
+  test('pins the revision to an imported version ARN as-is', () => {
+    const connector = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Connector', VERSION_ARN);
+    new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: Match.objectLike({ EgressNetworkConnectorArn: VERSION_ARN }),
+    });
+  });
+
+  test('rejects a connector imported without a version', () => {
+    const connector = NetworkConnector.fromNetworkConnectorArn(
+      stack, 'Connector', 'arn:aws:lambda:us-west-2:123456789012:network-connector:nc-0123abcd');
+
+    expect(() => new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector })))
+      .toThrow(/imported without a version/);
+  });
+
+  test('rejects a connector defined in another stack', () => {
+    const other = new Stack(app, 'Other', { env: { account: '123456789012', region: 'us-west-2' } });
+    const connector = ownedConnector(other);
+
+    expect(() => new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector })))
+      .toThrow(/defined in stack 'Other', but this WebFunction is in 'Stack'.*from a literal ARN string/);
+  });
+
+  test('accepts a connector in a nested stack of the same top-level stack', () => {
+    const nested = new NestedStack(stack, 'Nested');
+    const connector = ownedConnector(nested);
+    new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: Match.objectLike({
+        EgressNetworkConnectorArn: { 'Fn::GetAtt': [Match.stringLikeRegexp('^Nested'), Match.stringLikeRegexp('LatestVersionArn')] },
+      }),
+    });
+  });
+
+  test('accepts a connector in the parent of a nested stack', () => {
+    const connector = ownedConnector(stack);
+    const nested = new NestedStack(stack, 'Nested');
+    new WebFunction(nested, 'Test', minimalProps({ egressNetworkConnector: connector }));
+
+    Template.fromStack(nested).resourceCountIs('AWS::Lambda::WebFunctionRevision', 1);
+  });
+
+  test('rejects a connector in a nested stack of another top-level stack', () => {
+    // A nested stack's stackName is a token, so the message must name stacks by path.
+    const other = new Stack(app, 'Other', { env: { account: '123456789012', region: 'us-west-2' } });
+    const connector = ownedConnector(new NestedStack(other, 'Nested'));
+
+    expect(() => new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector })))
+      .toThrow(/defined in stack 'Other\/Nested'/);
+  });
+
+  test('rejects a connector with a regional endpoint', () => {
+    const connector = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Connector', VERSION_ARN);
+
+    expect(() => new WebFunction(stack, 'Test', minimalProps({
+      egressNetworkConnector: connector,
+      defaultEndpoint: { endpointLocation: WebFunctionEndpointLocation.multiRegion(['us-east-1', 'us-west-2']) },
+    }))).toThrow(/egressNetworkConnector is only supported with a HomeRegion endpoint, got MultiRegion/);
+  });
+
+  test('rejects a connector in this app created for another compute type', () => {
+    const connector = ownedConnector(stack, 'Connector', NetworkConnectorComputeType.MICRO_VM);
+
+    expect(() => new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector })))
+      .toThrow(/was created for MicroVm, but a WebFunction needs one created for NetworkConnectorComputeType.WEB_FUNCTION/);
+  });
+
+  test('rejects a version ARN imported from a connector in another stack', () => {
+    const other = new Stack(app, 'Other', { env: { account: '123456789012', region: 'us-west-2' } });
+    const source = ownedConnector(other);
+    const connector = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Imported', source.latestVersionArn);
+
+    expect(() => new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector })))
+      .toThrow(/was imported from a value that references '.*' in stack 'Other'/);
+  });
+
+  test('accepts a version ARN imported from a connector in the same stack', () => {
+    const source = ownedConnector(stack);
+    const connector = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Imported', source.latestVersionArn);
+    new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector }));
+
+    Template.fromStack(stack).resourceCountIs('AWS::Lambda::WebFunctionRevision', 1);
+  });
+
+  test('accepts a version ARN read from an SSM parameter', () => {
+    const arn = ssm.StringParameter.valueForStringParameter(stack, '/connector/version-arn');
+    const connector = NetworkConnector.fromNetworkConnectorVersionArn(stack, 'Imported', arn);
+    new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector }));
+
+    Template.fromStack(stack).resourceCountIs('AWS::Lambda::WebFunctionRevision', 1);
+  });
+
+  test('accepts a version ARN imported into another stack', () => {
+    // An import carries no Export, so the cross-stack rule does not apply to it.
+    const other = new Stack(app, 'Other', { env: { account: '123456789012', region: 'us-west-2' } });
+    const connector = NetworkConnector.fromNetworkConnectorVersionArn(other, 'Connector', VERSION_ARN);
+    new WebFunction(stack, 'Test', minimalProps({ egressNetworkConnector: connector }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::Lambda::WebFunctionRevision', {
+      ServiceConfig: Match.objectLike({ EgressNetworkConnectorArn: VERSION_ARN }),
+    });
+  });
+});
+
+describe('WebFunction grants', () => {
+  let stack: Stack;
+  beforeEach(() => {
+    stack = new Stack();
+  });
+
+  test('exposes the default role, and grants and addToRolePolicy reach it', () => {
+    const fn = new WebFunction(stack, 'Fn', minimalProps());
+    expect(fn.role).toBeDefined();
+    // The default role is an iam.Role, which is its own grant principal.
+    expect(fn.grantPrincipal).toBe(fn.role);
+
+    // A grant from another construct, which needs the function to be IGrantable.
+    new Bucket(stack, 'Data').grantRead(fn);
+    fn.addToRolePolicy(new PolicyStatement({ actions: ['sqs:SendMessage'], resources: ['*'] }));
+
+    const template = Template.fromStack(stack);
+    const roleId = Object.keys(template.findResources('AWS::IAM::Role'))[0];
+    template.hasResourceProperties('AWS::IAM::Policy', {
+      Roles: [{ Ref: roleId }],
+      PolicyDocument: {
+        Statement: Match.arrayWith([
+          Match.objectLike({ Action: Match.arrayWith(['s3:GetObject*']) }),
+          Match.objectLike({ Action: 'sqs:SendMessage' }),
+        ]),
+      },
+    });
+  });
+
+  test('grants reach a provided role', () => {
+    const role = new Role(stack, 'Provided', { assumedBy: new ServicePrincipal('lambda.amazonaws.com') });
+    const fn = new WebFunction(stack, 'Fn', minimalProps({ role }));
+    expect(fn.role).toBe(role);
+
+    fn.addToRolePolicy(new PolicyStatement({ actions: ['sqs:SendMessage'], resources: ['*'] }));
+
+    Template.fromStack(stack).hasResourceProperties('AWS::IAM::Policy', {
+      Roles: [{ Ref: Match.stringLikeRegexp('Provided') }],
+      PolicyDocument: { Statement: [Match.objectLike({ Action: 'sqs:SendMessage' })] },
+    });
+  });
+
+  test('an imported WebFunction has no role, and addToRolePolicy warns instead', () => {
+    const imported = WebFunction.fromWebFunctionArn(stack, 'Imported',
+      'arn:aws:lambda:us-east-1:123456789012:web-function/existing');
+    expect(imported.role).toBeUndefined();
+
+    imported.addToRolePolicy(new PolicyStatement({ actions: ['sqs:SendMessage'], resources: ['*'] }));
+
+    Template.fromStack(stack).resourceCountIs('AWS::IAM::Policy', 0);
+    Annotations.fromStack(stack).hasWarning('*', Match.stringLikeRegexp('sqs:SendMessage'));
+  });
+});
diff --git a/packages/aws-cdk-lib/awslint.json b/packages/aws-cdk-lib/awslint.json
index d7c43d49d83ce..3d6ef3c4af68f 100644
--- a/packages/aws-cdk-lib/awslint.json
+++ b/packages/aws-cdk-lib/awslint.json
@@ -135,6 +135,7 @@
     "props-physical-name:aws-cdk-lib.aws_lambda.EventSourceMappingProps",
     "props-physical-name:aws-cdk-lib.aws_lambda.FunctionUrlProps",
     "props-physical-name:aws-cdk-lib.aws_lambda.VersionProps",
+    "props-physical-name:aws-cdk-lib.aws_lambda.WebFunctionEndpointProps",
     "props-physical-name:aws-cdk-lib.aws_logs.MetricFilterProps",
     "props-physical-name:aws-cdk-lib.aws_logs.SubscriptionFilterProps",
     "props-physical-name:aws-cdk-lib.aws_rds.DatabaseClusterProps",